From xen-devel-bounces@lists.xenproject.org Sun Oct 01 01:40:38 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 01 Oct 2023 01:40:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610919.950412 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmlRV-00052s-KK; Sun, 01 Oct 2023 01:40:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610919.950412; Sun, 01 Oct 2023 01:40: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 1qmlRV-00052l-HD; Sun, 01 Oct 2023 01:40:21 +0000
Received: by outflank-mailman (input) for mailman id 610919;
 Sun, 01 Oct 2023 01:40: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 1qmlRU-00052Z-CD; Sun, 01 Oct 2023 01:40: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 1qmlRU-00040D-3o; Sun, 01 Oct 2023 01:40: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 1qmlRT-0005hV-ET; Sun, 01 Oct 2023 01:40:19 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qmlRT-0007qS-E3; Sun, 01 Oct 2023 01:40: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=Ic0oVnOTWHggRvXyXbnrTfDeiuGniRmyjQrScHWxcmw=; b=OUH/ySX+gE8BJtME0rg9+XzYf7
	zKL0CuA2IfecvAklZrF8IBwmYwc0eQy/ya1c9oDgW+Fr5FFxj2Fz7SepSrAixQ9r+iCLaMN7vBYbJ
	sofQWtZfBQrtfDrgl6QxIWeIpkcDVySDRzJftFmcDMvnh4Bvb80Vx2i5X1v34kb2lki4=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183224-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 183224: tolerable FAIL - PUSHED
X-Osstest-Failures:
    linux-linus:test-armhf-armhf-libvirt-qcow2:guest-start:fail:heisenbug
    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-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-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-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-amd64-amd64-libvirt-qcow2: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-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=9f3ebbef746f89f860a90ced99a359202ea86fde
X-Osstest-Versions-That:
    linux=71e58659bfc02e4171345f80b13d6485e9cdf687
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sun, 01 Oct 2023 01:40:19 +0000

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

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-armhf-armhf-libvirt-qcow2 13 guest-start       fail pass in 183228-retest

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail in 183228 like 183217
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail in 183228 never pass
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183217
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183217
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183217
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183217
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183217
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183217
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183217
 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-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-amd64-amd64-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
 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-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                9f3ebbef746f89f860a90ced99a359202ea86fde
baseline version:
 linux                71e58659bfc02e4171345f80b13d6485e9cdf687

Last test of basis   183217  2023-09-29 16:44:00 Z    1 days
Testing same since   183224  2023-09-30 08:56:47 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrzej Hajda <andrzej.hajda@intel.com>
  Chandan Babu R <chandanbabu@kernel.org>
  Chia-Lin Kao (AceLan) <acelan.kao@canonical.com>
  Conor Dooley <conor.dooley@microchip.com>
  Damien Le Moal <dlemoal@kernel.org>
  Danilo Krummrich <dakr@redhat.com>
  Darrick J. Wong <djwong@kernel.org>
  Dave Airlie <airlied@redhat.com>
  David Laight <david.laight@aculab.com>
  Geert Uytterhoeven <geert+renesas@glider.be>
  Ilya Dryomov <idryomov@gmail.com>
  Jacek Lawrynowicz <jacek.lawrynowicz@linux.intel.com>
  Javier Pello <devel@otheo.eu>
  Jens Axboe <axboe@kernel.dk>
  John Harrison <John.C.Harrison@Intel.com>
  Karol Wachowski <karol.wachowski@linux.intel.com>
  Kemeng Shi <shikemeng@huaweicloud.com>
  Linus Torvalds <torvalds@linux-foundation.org>
  Luís Henriques <lhenriques@suse.de>
  Matthew Wilcox (Oracle) <willy@infradead.org>
  Matthias Schiffer <mschiffer@universe-factory.net>
  Namjae Jeon <linkinjeon@kernel.org>
  Niklas Cassel <niklas.cassel@wdc.com>
  Oleksandr Natalenko <oleksandr@natalenko.name>
  Rafael Aquini <aquini@redhat.com>
  Randy Dunlap <rdunlap@infradead.org>
  Rob Herring <robh@kernel.org>
  Rodrigo Vivi <rodrigo.vivi@intel.com>
  Stanislaw Gruszka <stanislaw.gruszka@linux.intel.com>
  Steve French <stfrench@microsoft.com>
  Tejun Heo <tj@kernel.org>
  Thomas Zimmermann <tzimmermann@suse.de>
  Umesh Nerlige Ramappa <umesh.nerlige.ramappa@intel.com>
  Vlastimil Babka <vbabka@suse.cz>

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                               fail    
 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
   71e58659bfc0..9f3ebbef746f  9f3ebbef746f89f860a90ced99a359202ea86fde -> tested/linux-linus


From xen-devel-bounces@lists.xenproject.org Sun Oct 01 03:51:43 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 01 Oct 2023 03:51:43 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610926.950423 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmnUL-0003KC-2F; Sun, 01 Oct 2023 03:51:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610926.950423; Sun, 01 Oct 2023 03: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 1qmnUK-0003K4-Sf; Sun, 01 Oct 2023 03:51:24 +0000
Received: by outflank-mailman (input) for mailman id 610926;
 Sun, 01 Oct 2023 03:51: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 1qmnUK-0003Eu-6t; Sun, 01 Oct 2023 03:51: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 1qmnUJ-0004Bu-UX; Sun, 01 Oct 2023 03:51: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 1qmnUJ-0001VO-Ci; Sun, 01 Oct 2023 03:51:23 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qmnUJ-00029R-BG; Sun, 01 Oct 2023 03:51: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=MtjbEDZRlbCKHBldLHaiEYOrPgkec73L/ak34zB0vOw=; b=1LFmYuQRXOHjK1ZZK7WMArjBgd
	HZUegWnB+Vrb2b6Kw6ns98MB4ru4Ag2vztV1Ud8EIt/i/ZTMc1+InX7LjRqlxhDZIXTD4Vwz5wKsY
	1YuD8H7LUA1RDNDQ92GXkNpNXvnT1+La2Y2oKw8d4OKuLi5bI8Yhz0/Oca86jejMwMPo=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183226-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-5.4 test] 183226: tolerable FAIL - PUSHED
X-Osstest-Failures:
    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-libvirt-raw:xen-boot:fail:heisenbug
    linux-5.4:test-armhf-armhf-libvirt-qcow2:guest-start/debian.repeat:fail:heisenbug
    linux-5.4:test-armhf-armhf-xl-rtds:guest-start.2:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-rtds: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: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-libvirt-raw:migrate-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-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-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-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-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-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm: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: Sun, 01 Oct 2023 03:51:23 +0000

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

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-armhf-armhf-xl-credit1  14 guest-start      fail in 183220 pass in 183226
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 12 debian-hvm-install fail in 183220 pass in 183226
 test-armhf-armhf-libvirt-raw  8 xen-boot                   fail pass in 183220
 test-armhf-armhf-libvirt-qcow2 17 guest-start/debian.repeat fail pass in 183220

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-xl-rtds     19 guest-start.2           fail blocked in 182613
 test-armhf-armhf-xl-rtds 18 guest-start/debian.repeat fail in 183220 like 182613
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail in 183220 like 182613
 test-armhf-armhf-libvirt-raw 17 guest-start/debian.repeat fail in 183220 like 182613
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail in 183220 never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail in 183220 never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check fail in 183220 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-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-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-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-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-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 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   28 days
Testing same since   183129  2023-09-23 09:20:22 Z    7 days   14 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                                  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                               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                                 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
   0c2544add9fc..a140610d8aff  a140610d8aff1a06d36f8e4e9e66079b561d043d -> tested/linux-5.4


From xen-devel-bounces@lists.xenproject.org Sun Oct 01 10:41:22 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 01 Oct 2023 10:41:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610998.950432 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmtsp-0000CY-RJ; Sun, 01 Oct 2023 10:41:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610998.950432; Sun, 01 Oct 2023 10:41: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 1qmtsp-0000CR-Od; Sun, 01 Oct 2023 10:41:07 +0000
Received: by outflank-mailman (input) for mailman id 610998;
 Sun, 01 Oct 2023 10:41: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=vg4g=FP=gmail.com=ubizjak@srs-se1.protection.inumbo.net>)
 id 1qmtso-0000CG-Ra
 for xen-devel@lists.xenproject.org; Sun, 01 Oct 2023 10:41:06 +0000
Received: from mail-ej1-x633.google.com (mail-ej1-x633.google.com
 [2a00:1450:4864:20::633])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 0581e699-6047-11ee-878e-cb3800f73035;
 Sun, 01 Oct 2023 12:41:04 +0200 (CEST)
Received: by mail-ej1-x633.google.com with SMTP id
 a640c23a62f3a-99c3c8adb27so2174763966b.1
 for <xen-devel@lists.xenproject.org>; Sun, 01 Oct 2023 03:41:04 -0700 (PDT)
Received: from localhost.localdomain ([46.248.82.114])
 by smtp.gmail.com with ESMTPSA id
 jx14-20020a170906ca4e00b0099caf5bed64sm15333657ejb.57.2023.10.01.03.41.02
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Sun, 01 Oct 2023 03:41: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: 0581e699-6047-11ee-878e-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1696156864; x=1696761664; 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=hd3IQ5VOgFAiZIrz9J6WO1XKlWIuJJ+vlxIzopklsp0=;
        b=LgEv3X/KiAiQ2EP9sTRdG6crDMhtnFEh+mRN1JVtnOukCD1JtJWZ9sr6dT/FZGAtI5
         /uQ3k9dv17atpZ7uaf1RpXzWbLGPtG1SQa99IsRnKxWMTqCauh4Wh2P4RJ1+vJ16URGe
         uRbxFuLJoXPNtQq7h7BouSf+1ffGN4OJYSEeDJncfOyRcHWh+MeG6CZUCAThBj4xkEun
         ctDYY5P6xer+Fg1npDrGdpZCTiUQInbWAlkBXJDluhXgdHuzZ84AgRMhSQ6qduUTL8BR
         B/TvzP1/D53Nd2HhVNC+mc4Ql5FDnKBG2DJ+/pB1U7mIp3LvAeD07/o8Ms0OgP7J5OrT
         WFpA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1696156864; x=1696761664;
        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=hd3IQ5VOgFAiZIrz9J6WO1XKlWIuJJ+vlxIzopklsp0=;
        b=NuhsdhmXowd1TuVY2GAKLw7z3GIHoStc8iwNHlhroeJe8amJoB87CZJfmmNh9tJSHV
         TDSV2rPvMVNmvvjQ6PivKkJxJltTRmPSF6hgWzESbv1Kg1Py45v/kCfz9ZeAP3Fic8+S
         ljsEIb5/8kKEDSHoD0IryC4CPaRWcLwaRKdrm+K5qOBZHTKnurTUbkJGgQmOnlgwHOLb
         AiiT8iEBBgCvnyd8lRmNV5AO3qXaU4C5BYE5q1TXJ7zBqIOi3Vh4/arUbOFQq2v3pSz9
         c8SxevBHZJJok9S2Xq/mDIrJnP0P9I4XSGMSgE5BNQ9oj1JyVNro/R0nw05IiOT9ekmb
         HqYw==
X-Gm-Message-State: AOJu0YzHZukMCnGVujhOBiPxLL1vOZw+WEW8Y0Jzk2aKVeBdPYs6qe5q
	gXANvrYpq3c4VSIgbahn4cs=
X-Google-Smtp-Source: AGHT+IG9JZc6TmvZHbVpgjX2iUva5UEpfEXoJsk9uCuk4m2g+BHUY+ApqFLeLJsTAyFlG09evitVDA==
X-Received: by 2002:a17:907:774f:b0:9ae:673a:88b9 with SMTP id kx15-20020a170907774f00b009ae673a88b9mr7550136ejc.22.1696156863846;
        Sun, 01 Oct 2023 03:41:03 -0700 (PDT)
From: Uros Bizjak <ubizjak@gmail.com>
To: linux-kernel@vger.kernel.org,
	x86@kernel.org,
	xen-devel@lists.xenproject.org
Cc: Uros Bizjak <ubizjak@gmail.com>,
	Will Deacon <will@kernel.org>,
	Peter Zijlstra <peterz@infradead.org>,
	Ingo Molnar <mingo@kernel.org>,
	Boqun Feng <boqun.feng@gmail.com>,
	Mark Rutland <mark.rutland@arm.com>
Subject: [PATCH v2 1/3] locking/generic: Add generic support for sync_try_cmpxchg and its fallback
Date: Sun,  1 Oct 2023 12:39:09 +0200
Message-ID: <20231001104053.9644-1-ubizjak@gmail.com>
X-Mailer: git-send-email 2.41.0
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Provide the generic sync_try_cmpxchg function from the
raw_ prefixed version, also adding explicit instrumentation.

The patch amends existing scripts to generate sync_try_cmpxchg
locking primitive and its raw_sync_try_cmpxchg fallback, while
leaving existing macros from try_cmpxchg family unchanged.

The target can define its own arch_sync_try_cmpxchg to override the
generic version of raw_sync_try_cmpxchg. This allows the target
to generate more optimal assembly than the generic version.

Additionally, the patch renames two scripts to better reflect
whet they really do.

Cc: Will Deacon <will@kernel.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Ingo Molnar <mingo@kernel.org>
Cc: Boqun Feng <boqun.feng@gmail.com>
Cc: Mark Rutland <mark.rutland@arm.com>
Signed-off-by: Uros Bizjak <ubizjak@gmail.com>
---
v2: Improve commit description.
---
 include/linux/atomic/atomic-arch-fallback.h | 15 +++++++++-
 include/linux/atomic/atomic-instrumented.h  | 10 ++++++-
 scripts/atomic/gen-atomic-fallback.sh       | 33 +++++++++++----------
 scripts/atomic/gen-atomic-instrumented.sh   |  3 +-
 4 files changed, 43 insertions(+), 18 deletions(-)

diff --git a/include/linux/atomic/atomic-arch-fallback.h b/include/linux/atomic/atomic-arch-fallback.h
index b83ef19da13d..5e95faa959c4 100644
--- a/include/linux/atomic/atomic-arch-fallback.h
+++ b/include/linux/atomic/atomic-arch-fallback.h
@@ -428,6 +428,19 @@ extern void raw_cmpxchg128_relaxed_not_implemented(void);
 
 #define raw_sync_cmpxchg arch_sync_cmpxchg
 
+#ifdef arch_sync_try_cmpxchg
+#define raw_sync_try_cmpxchg arch_sync_try_cmpxchg
+#else
+#define raw_sync_try_cmpxchg(_ptr, _oldp, _new) \
+({ \
+	typeof(*(_ptr)) *___op = (_oldp), ___o = *___op, ___r; \
+	___r = raw_sync_cmpxchg((_ptr), ___o, (_new)); \
+	if (unlikely(___r != ___o)) \
+		*___op = ___r; \
+	likely(___r == ___o); \
+})
+#endif
+
 /**
  * raw_atomic_read() - atomic load with relaxed ordering
  * @v: pointer to atomic_t
@@ -4649,4 +4662,4 @@ raw_atomic64_dec_if_positive(atomic64_t *v)
 }
 
 #endif /* _LINUX_ATOMIC_FALLBACK_H */
-// 2fdd6702823fa842f9cea57a002e6e4476ae780c
+// eec048affea735b8464f58e6d96992101f8f85f1
diff --git a/include/linux/atomic/atomic-instrumented.h b/include/linux/atomic/atomic-instrumented.h
index d401b406ef7c..54d7bbe0aeaa 100644
--- a/include/linux/atomic/atomic-instrumented.h
+++ b/include/linux/atomic/atomic-instrumented.h
@@ -4998,6 +4998,14 @@ atomic_long_dec_if_positive(atomic_long_t *v)
 	raw_try_cmpxchg128_local(__ai_ptr, __ai_oldp, __VA_ARGS__); \
 })
 
+#define sync_try_cmpxchg(ptr, ...) \
+({ \
+	typeof(ptr) __ai_ptr = (ptr); \
+	kcsan_mb(); \
+	instrument_atomic_read_write(__ai_ptr, sizeof(*__ai_ptr)); \
+	raw_sync_try_cmpxchg(__ai_ptr, __VA_ARGS__); \
+})
+
 
 #endif /* _LINUX_ATOMIC_INSTRUMENTED_H */
-// 1568f875fef72097413caab8339120c065a39aa4
+// 2cc4bc990fef44d3836ec108f11b610f3f438184
diff --git a/scripts/atomic/gen-atomic-fallback.sh b/scripts/atomic/gen-atomic-fallback.sh
index a45154cefa48..f80d69cfeb1f 100755
--- a/scripts/atomic/gen-atomic-fallback.sh
+++ b/scripts/atomic/gen-atomic-fallback.sh
@@ -223,14 +223,15 @@ gen_xchg_fallbacks()
 
 gen_try_cmpxchg_fallback()
 {
+	local prefix="$1"; shift
 	local cmpxchg="$1"; shift;
-	local order="$1"; shift;
+	local suffix="$1"; shift;
 
 cat <<EOF
-#define raw_try_${cmpxchg}${order}(_ptr, _oldp, _new) \\
+#define raw_${prefix}try_${cmpxchg}${suffix}(_ptr, _oldp, _new) \\
 ({ \\
 	typeof(*(_ptr)) *___op = (_oldp), ___o = *___op, ___r; \\
-	___r = raw_${cmpxchg}${order}((_ptr), ___o, (_new)); \\
+	___r = raw_${prefix}${cmpxchg}${suffix}((_ptr), ___o, (_new)); \\
 	if (unlikely(___r != ___o)) \\
 		*___op = ___r; \\
 	likely(___r == ___o); \\
@@ -259,11 +260,11 @@ gen_try_cmpxchg_order_fallback()
 	fi
 
 	printf "#else\n"
-	gen_try_cmpxchg_fallback "${cmpxchg}" "${order}"
+	gen_try_cmpxchg_fallback "" "${cmpxchg}" "${order}"
 	printf "#endif\n\n"
 }
 
-gen_try_cmpxchg_fallbacks()
+gen_try_cmpxchg_order_fallbacks()
 {
 	local cmpxchg="$1"; shift;
 
@@ -272,15 +273,17 @@ gen_try_cmpxchg_fallbacks()
 	done
 }
 
-gen_cmpxchg_local_fallbacks()
+gen_def_and_try_cmpxchg_fallback()
 {
+	local prefix="$1"; shift
 	local cmpxchg="$1"; shift
+	local suffix="$1"; shift
 
-	printf "#define raw_${cmpxchg} arch_${cmpxchg}\n\n"
-	printf "#ifdef arch_try_${cmpxchg}\n"
-	printf "#define raw_try_${cmpxchg} arch_try_${cmpxchg}\n"
+	printf "#define raw_${prefix}${cmpxchg}${suffix} arch_${prefix}${cmpxchg}${suffix}\n\n"
+	printf "#ifdef arch_${prefix}try_${cmpxchg}${suffix}\n"
+	printf "#define raw_${prefix}try_${cmpxchg}${suffix} arch_${prefix}try_${cmpxchg}${suffix}\n"
 	printf "#else\n"
-	gen_try_cmpxchg_fallback "${cmpxchg}" ""
+	gen_try_cmpxchg_fallback "${prefix}" "${cmpxchg}" "${suffix}"
 	printf "#endif\n\n"
 }
 
@@ -302,15 +305,15 @@ for xchg in "xchg" "cmpxchg" "cmpxchg64" "cmpxchg128"; do
 done
 
 for cmpxchg in "cmpxchg" "cmpxchg64" "cmpxchg128"; do
-	gen_try_cmpxchg_fallbacks "${cmpxchg}"
+	gen_try_cmpxchg_order_fallbacks "${cmpxchg}"
 done
 
-for cmpxchg in "cmpxchg_local" "cmpxchg64_local" "cmpxchg128_local"; do
-	gen_cmpxchg_local_fallbacks "${cmpxchg}" ""
+for cmpxchg in "cmpxchg" "cmpxchg64" "cmpxchg128"; do
+	gen_def_and_try_cmpxchg_fallback "" "${cmpxchg}" "_local"
 done
 
-for cmpxchg in "sync_cmpxchg"; do
-	printf "#define raw_${cmpxchg} arch_${cmpxchg}\n\n"
+for cmpxchg in "cmpxchg"; do
+	gen_def_and_try_cmpxchg_fallback "sync_" "${cmpxchg}" ""
 done
 
 grep '^[a-z]' "$1" | while read name meta args; do
diff --git a/scripts/atomic/gen-atomic-instrumented.sh b/scripts/atomic/gen-atomic-instrumented.sh
index 8f8f8e3b20f9..592f3ec89b5f 100755
--- a/scripts/atomic/gen-atomic-instrumented.sh
+++ b/scripts/atomic/gen-atomic-instrumented.sh
@@ -169,7 +169,8 @@ for xchg in "xchg" "cmpxchg" "cmpxchg64" "cmpxchg128" "try_cmpxchg" "try_cmpxchg
 	done
 done
 
-for xchg in "cmpxchg_local" "cmpxchg64_local" "cmpxchg128_local" "sync_cmpxchg" "try_cmpxchg_local" "try_cmpxchg64_local" "try_cmpxchg128_local"; do
+for xchg in "cmpxchg_local" "cmpxchg64_local" "cmpxchg128_local" "sync_cmpxchg" \
+	    "try_cmpxchg_local" "try_cmpxchg64_local" "try_cmpxchg128_local" "sync_try_cmpxchg"; do
 	gen_xchg "${xchg}" ""
 	printf "\n"
 done
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Sun Oct 01 10:41:22 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 01 Oct 2023 10:41:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610999.950439 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmtsq-0000HE-4p; Sun, 01 Oct 2023 10:41:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610999.950439; Sun, 01 Oct 2023 10:41: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 1qmtsp-0000FS-V5; Sun, 01 Oct 2023 10:41:07 +0000
Received: by outflank-mailman (input) for mailman id 610999;
 Sun, 01 Oct 2023 10:41: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=vg4g=FP=gmail.com=ubizjak@srs-se1.protection.inumbo.net>)
 id 1qmtsp-0000CG-3Z
 for xen-devel@lists.xenproject.org; Sun, 01 Oct 2023 10:41:07 +0000
Received: from mail-ej1-x62e.google.com (mail-ej1-x62e.google.com
 [2a00:1450:4864:20::62e])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 05e223a0-6047-11ee-878e-cb3800f73035;
 Sun, 01 Oct 2023 12:41:05 +0200 (CEST)
Received: by mail-ej1-x62e.google.com with SMTP id
 a640c23a62f3a-9b281a2aa94so1532197566b.2
 for <xen-devel@lists.xenproject.org>; Sun, 01 Oct 2023 03:41:05 -0700 (PDT)
Received: from localhost.localdomain ([46.248.82.114])
 by smtp.gmail.com with ESMTPSA id
 jx14-20020a170906ca4e00b0099caf5bed64sm15333657ejb.57.2023.10.01.03.41.03
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Sun, 01 Oct 2023 03:41: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: 05e223a0-6047-11ee-878e-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1696156865; x=1696761665; 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=w6ur2qb0x8q/rSGOpgVJ8elvvt/Yb95eKWrvLo4QZJM=;
        b=fLCBdRga6In0ISY52389OVu1Sef8QQrL/3vlC5+YvKN0aRwu9of1czxC2lc/pozA4u
         NVZfqdIXHXSAivZYIXfcZv3RfAuZgoDziY4VqAVxQk7nJjIzzqdCZnpIHkL+ctLJbVxW
         Zi4lis9Jbk/HKUamEc/gAc0DPHJQd3+j0SGFa0kmKsxLHjE+RChkizMPh2xRSo1g+pAM
         x69xfq+cQaBNzvQgZ9p0PEBTppCYUfCFD2DcdpLcWskLiAwxP/eQNZG+78/davFGCpan
         w4ZgM262hZqACC49H89RxBOvzwwxFVHyuCbRFPFTRgJQ4x+s5sSVV026LVt6uiCx2Vcs
         33pA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1696156865; x=1696761665;
        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=w6ur2qb0x8q/rSGOpgVJ8elvvt/Yb95eKWrvLo4QZJM=;
        b=wcoOekZpzrpQ5zwScuu4ji6C1JGwx8a/EmatnhlCGCKq7F9x4lzGliNDfLMxwdecPd
         3Zv0FNptiAQThrx+tOBk1AZMcs6diIeu3PHad2ltNOs3PtYUypFGRGnTLe4rUHZh2wKu
         ay63fGMNnvJTqbyLYFCt0+Z1XtBm2+aBMutuAQmWGpg+G0bIclRyaTQfJE/kgmiGpPSO
         yOqKj4oGT7dIC3CeoBcwnVdf0LijJ2pE29GzlHsZ8Cbirw+WLI5o8TTJH1BMM1RzTi7V
         xJHvh7//VaoEvl2+YL8gCSKXsMknX5id9R9EmpA7Wyz/lqnwZBIQYNOatZrhHzhJMSsr
         lO2g==
X-Gm-Message-State: AOJu0YyQB5W9G/VLwalE9OmrNecChjoHORquNkqMdOAC0P2lCPnsKvDT
	9S2XvqNaglLhk14kaqD6SIo=
X-Google-Smtp-Source: AGHT+IHiSe0AHyaEO3R17ZhQDfsCes5+q/9A9cLMJMLgBfw1ghBgw9I+0cdDupifN0wboisrAnr7BQ==
X-Received: by 2002:a17:906:51d5:b0:9a2:26d8:f184 with SMTP id v21-20020a17090651d500b009a226d8f184mr7068105ejk.51.1696156864627;
        Sun, 01 Oct 2023 03:41:04 -0700 (PDT)
From: Uros Bizjak <ubizjak@gmail.com>
To: linux-kernel@vger.kernel.org,
	x86@kernel.org,
	xen-devel@lists.xenproject.org
Cc: Uros Bizjak <ubizjak@gmail.com>,
	Peter Zijlstra <peterz@infradead.org>,
	Thomas Gleixner <tglx@linutronix.de>,
	Ingo Molnar <mingo@kernel.org>,
	Borislav Petkov <bp@alien8.de>,
	Dave Hansen <dave.hansen@linux.intel.com>,
	"H. Peter Anvin" <hpa@zytor.com>
Subject: [PATCH v2 2/3] locking/x86: Introduce arch_sync_try_cmpxchg
Date: Sun,  1 Oct 2023 12:39:10 +0200
Message-ID: <20231001104053.9644-2-ubizjak@gmail.com>
X-Mailer: git-send-email 2.41.0
In-Reply-To: <20231001104053.9644-1-ubizjak@gmail.com>
References: <20231001104053.9644-1-ubizjak@gmail.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Introduce arch_sync_try_cmpxchg macro to improve code using
sync_try_cmpxchg locking primitive. The new definitions use existing
__raw_try_cmpxchg macros, but use its own "lock; " prefix.

The new macros improve assembly of the cmpxchg loop in
evtchn_fifo_unmask() from drivers/xen/events/events_fifo.c from:

 57a:	85 c0                	test   %eax,%eax
 57c:	78 52                	js     5d0 <...>
 57e:	89 c1                	mov    %eax,%ecx
 580:	25 ff ff ff af       	and    $0xafffffff,%eax
 585:	c7 04 24 00 00 00 00 	movl   $0x0,(%rsp)
 58c:	81 e1 ff ff ff ef    	and    $0xefffffff,%ecx
 592:	89 4c 24 04          	mov    %ecx,0x4(%rsp)
 596:	89 44 24 08          	mov    %eax,0x8(%rsp)
 59a:	8b 74 24 08          	mov    0x8(%rsp),%esi
 59e:	8b 44 24 04          	mov    0x4(%rsp),%eax
 5a2:	f0 0f b1 32          	lock cmpxchg %esi,(%rdx)
 5a6:	89 04 24             	mov    %eax,(%rsp)
 5a9:	8b 04 24             	mov    (%rsp),%eax
 5ac:	39 c1                	cmp    %eax,%ecx
 5ae:	74 07                	je     5b7 <...>
 5b0:	a9 00 00 00 40       	test   $0x40000000,%eax
 5b5:	75 c3                	jne    57a <...>
 <...>

to:

 578:	a9 00 00 00 40       	test   $0x40000000,%eax
 57d:	74 2b                	je     5aa <...>
 57f:	85 c0                	test   %eax,%eax
 581:	78 40                	js     5c3 <...>
 583:	89 c1                	mov    %eax,%ecx
 585:	25 ff ff ff af       	and    $0xafffffff,%eax
 58a:	81 e1 ff ff ff ef    	and    $0xefffffff,%ecx
 590:	89 4c 24 04          	mov    %ecx,0x4(%rsp)
 594:	89 44 24 08          	mov    %eax,0x8(%rsp)
 598:	8b 4c 24 08          	mov    0x8(%rsp),%ecx
 59c:	8b 44 24 04          	mov    0x4(%rsp),%eax
 5a0:	f0 0f b1 0a          	lock cmpxchg %ecx,(%rdx)
 5a4:	89 44 24 04          	mov    %eax,0x4(%rsp)
 5a8:	75 30                	jne    5da <...>
 <...>
 5da:	8b 44 24 04          	mov    0x4(%rsp),%eax
 5de:	eb 98                	jmp    578 <...>

The new code removes move instructions from 585: 5a6: and 5a9:
and the compare from 5ac:. Additionally, the compiler assumes that
cmpxchg success is more probable and optimizes code flow accordingly.

Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Ingo Molnar <mingo@kernel.org>
Cc: Borislav Petkov <bp@alien8.de>
Cc: Dave Hansen <dave.hansen@linux.intel.com>
Cc: "H. Peter Anvin" <hpa@zytor.com>
Signed-off-by: Uros Bizjak <ubizjak@gmail.com>
---
v2: Improve commit description.
---
 arch/x86/include/asm/cmpxchg.h | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/arch/x86/include/asm/cmpxchg.h b/arch/x86/include/asm/cmpxchg.h
index d53636506134..5612648b0202 100644
--- a/arch/x86/include/asm/cmpxchg.h
+++ b/arch/x86/include/asm/cmpxchg.h
@@ -221,12 +221,18 @@ extern void __add_wrong_size(void)
 #define __try_cmpxchg(ptr, pold, new, size)				\
 	__raw_try_cmpxchg((ptr), (pold), (new), (size), LOCK_PREFIX)
 
+#define __sync_try_cmpxchg(ptr, pold, new, size)			\
+	__raw_try_cmpxchg((ptr), (pold), (new), (size), "lock; ")
+
 #define __try_cmpxchg_local(ptr, pold, new, size)			\
 	__raw_try_cmpxchg((ptr), (pold), (new), (size), "")
 
 #define arch_try_cmpxchg(ptr, pold, new) 				\
 	__try_cmpxchg((ptr), (pold), (new), sizeof(*(ptr)))
 
+#define arch_sync_try_cmpxchg(ptr, pold, new) 				\
+	__sync_try_cmpxchg((ptr), (pold), (new), sizeof(*(ptr)))
+
 #define arch_try_cmpxchg_local(ptr, pold, new)				\
 	__try_cmpxchg_local((ptr), (pold), (new), sizeof(*(ptr)))
 
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Sun Oct 01 10:41:22 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 01 Oct 2023 10:41:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611000.950453 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmtsu-0000kF-94; Sun, 01 Oct 2023 10:41:12 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611000.950453; Sun, 01 Oct 2023 10:41: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 1qmtsu-0000k8-60; Sun, 01 Oct 2023 10:41:12 +0000
Received: by outflank-mailman (input) for mailman id 611000;
 Sun, 01 Oct 2023 10:41: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=vg4g=FP=gmail.com=ubizjak@srs-se1.protection.inumbo.net>)
 id 1qmtss-0000j6-Rd
 for xen-devel@lists.xenproject.org; Sun, 01 Oct 2023 10:41:10 +0000
Received: from mail-ej1-x62e.google.com (mail-ej1-x62e.google.com
 [2a00:1450:4864:20::62e])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 0698bd3e-6047-11ee-9b0d-b553b5be7939;
 Sun, 01 Oct 2023 12:41:06 +0200 (CEST)
Received: by mail-ej1-x62e.google.com with SMTP id
 a640c23a62f3a-99357737980so2133592366b.2
 for <xen-devel@lists.xenproject.org>; Sun, 01 Oct 2023 03:41:06 -0700 (PDT)
Received: from localhost.localdomain ([46.248.82.114])
 by smtp.gmail.com with ESMTPSA id
 jx14-20020a170906ca4e00b0099caf5bed64sm15333657ejb.57.2023.10.01.03.41.04
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Sun, 01 Oct 2023 03:41: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: 0698bd3e-6047-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1696156866; x=1696761666; 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=Av1YVGUYjKuKpOxhCUYf9bVAmtK6lNc0JKDBqDmChEQ=;
        b=QRxPxvhT7dgDeFxDXSqCVh7uF7cc6Mhck78m3K3lj/XQZsnfvYmOpvYgH2ua5wX3yB
         L4bTiWTmg1TsSO9Bdx9dc4ya8XIBID96M+evuLRc5W3THhFIJgrUYObhOigzh63N3Kc8
         0IDd8j0em2MS8tHdPJxHmiXQXYb8pz0UUpnC8dvNHRMSe8Mn3YQLYRuE2goLye4OFGFy
         vKCmcC7+3Hlhi2XAHerHWGozQl6BhsUScciukFfW/Bb081tkpc84215SdkfHl+AoX3Tw
         IQzJyuVnOrxiWkxqlQm+HmCwG/z6Tpw1oCsIE9S34G4GbGCvS1Hn+AdrT0IXZWuDdMFa
         NNBg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1696156866; x=1696761666;
        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=Av1YVGUYjKuKpOxhCUYf9bVAmtK6lNc0JKDBqDmChEQ=;
        b=QvqGszteoMESD/WWcSBx4x9kOrvDg6EQGCY8RtwvAcPM2d1NxQNvLSIq7iPKwmhTDU
         mMYgrw5diaYc1LmgAu/ySURtD5QAjA++Rr1hcZnJTW2SvD07uoOgBoqljcf9JyMr66JX
         2eShB/d3A+1nqbmzJ8w6u4FiEjbt4cHImrllCWTtRW8V9iH779UmNN46/sTV0oTRC5Hc
         4vIkuA0ZcC+XZQLSnULHYlrC92d5cstY9fJ8N8Mdh0n7QU/zotcjr0ABddy6lPSUx4pA
         tdRIQVPSqZFlKGrUlzkveq9RPJ7x5JwLz3NW3sXL5oPb5XluhREReIv38tYcrmgWBo8u
         bVuQ==
X-Gm-Message-State: AOJu0YzY+nTE+ldvtlA+s02wmw88niaalTH1uv+YBhhVdjZfrPy7pB52
	5yg/QKoYsWemHZXKEpj6FdzLbW1ixLW10w==
X-Google-Smtp-Source: AGHT+IEaRBVRFHBq8PsqtS7Xotm/O/WCU7PUdbnpb1YCwTqlB9U799c5jGmIPkQv2u5NF0F2mavHLA==
X-Received: by 2002:a17:906:7695:b0:9ad:e17c:464e with SMTP id o21-20020a170906769500b009ade17c464emr8738266ejm.68.1696156865773;
        Sun, 01 Oct 2023 03:41:05 -0700 (PDT)
From: Uros Bizjak <ubizjak@gmail.com>
To: linux-kernel@vger.kernel.org,
	x86@kernel.org,
	xen-devel@lists.xenproject.org
Cc: Uros Bizjak <ubizjak@gmail.com>,
	Peter Zijlstra <peterz@infradead.org>,
	Ingo Molnar <mingo@kernel.org>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>,
	Juergen Gross <jgross@suse.com>
Subject: [PATCH v2 3/3] xen: Use sync_try_cmpxchg instead of sync_cmpxchg
Date: Sun,  1 Oct 2023 12:39:11 +0200
Message-ID: <20231001104053.9644-3-ubizjak@gmail.com>
X-Mailer: git-send-email 2.41.0
In-Reply-To: <20231001104053.9644-1-ubizjak@gmail.com>
References: <20231001104053.9644-1-ubizjak@gmail.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Use sync_try_cmpxchg instead of sync_cmpxchg (*ptr, old, new) == old
in clear_masked_cond(), clear_linked() and
gnttab_end_foreign_access_ref_v1(). x86 CMPXCHG instruction returns
success in ZF flag, so this change saves a compare after cmpxchg
(and related move instruction in front of cmpxchg), improving the
cmpxchg loop in gnttab_end_foreign_access_ref_v1 from:

     174:	eb 0e                	jmp    184 <...>
     176:	89 d0                	mov    %edx,%eax
     178:	f0 66 0f b1 31       	lock cmpxchg %si,(%rcx)
     17d:	66 39 c2             	cmp    %ax,%dx
     180:	74 11                	je     193 <...>
     182:	89 c2                	mov    %eax,%edx
     184:	89 d6                	mov    %edx,%esi
     186:	66 83 e6 18          	and    $0x18,%si
     18a:	74 ea                	je     176 <...>

to:

     614:	89 c1                	mov    %eax,%ecx
     616:	66 83 e1 18          	and    $0x18,%cx
     61a:	75 11                	jne    62d <...>
     61c:	f0 66 0f b1 0a       	lock cmpxchg %cx,(%rdx)
     621:	75 f1                	jne    614 <...>

No functional change intended.

Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Ingo Molnar <mingo@kernel.org>
Cc: Stefano Stabellini <sstabellini@kernel.org>
Cc: Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>
Acked-by: Juergen Gross <jgross@suse.com>
Signed-off-by: Uros Bizjak <ubizjak@gmail.com>
---
v2: Improve commit description.
---
 drivers/xen/events/events_fifo.c | 26 ++++++++++++--------------
 drivers/xen/grant-table.c        | 10 ++++------
 2 files changed, 16 insertions(+), 20 deletions(-)

diff --git a/drivers/xen/events/events_fifo.c b/drivers/xen/events/events_fifo.c
index ad9fe51d3fb3..655775db7caf 100644
--- a/drivers/xen/events/events_fifo.c
+++ b/drivers/xen/events/events_fifo.c
@@ -226,21 +226,20 @@ static bool evtchn_fifo_is_masked(evtchn_port_t port)
  */
 static bool clear_masked_cond(volatile event_word_t *word)
 {
-	event_word_t new, old, w;
+	event_word_t new, old;
 
-	w = *word;
+	old = *word;
 
 	do {
-		if (!(w & (1 << EVTCHN_FIFO_MASKED)))
+		if (!(old & (1 << EVTCHN_FIFO_MASKED)))
 			return true;
 
-		if (w & (1 << EVTCHN_FIFO_PENDING))
+		if (old & (1 << EVTCHN_FIFO_PENDING))
 			return false;
 
-		old = w & ~(1 << EVTCHN_FIFO_BUSY);
+		old = old & ~(1 << EVTCHN_FIFO_BUSY);
 		new = old & ~(1 << EVTCHN_FIFO_MASKED);
-		w = sync_cmpxchg(word, old, new);
-	} while (w != old);
+	} while (!sync_try_cmpxchg(word, &old, new));
 
 	return true;
 }
@@ -259,17 +258,16 @@ static void evtchn_fifo_unmask(evtchn_port_t port)
 
 static uint32_t clear_linked(volatile event_word_t *word)
 {
-	event_word_t new, old, w;
+	event_word_t new, old;
 
-	w = *word;
+	old = *word;
 
 	do {
-		old = w;
-		new = (w & ~((1 << EVTCHN_FIFO_LINKED)
-			     | EVTCHN_FIFO_LINK_MASK));
-	} while ((w = sync_cmpxchg(word, old, new)) != old);
+		new = (old & ~((1 << EVTCHN_FIFO_LINKED)
+			       | EVTCHN_FIFO_LINK_MASK));
+	} while (!sync_try_cmpxchg(word, &old, new));
 
-	return w & EVTCHN_FIFO_LINK_MASK;
+	return old & EVTCHN_FIFO_LINK_MASK;
 }
 
 static void consume_one_event(unsigned cpu, struct evtchn_loop_ctrl *ctrl,
diff --git a/drivers/xen/grant-table.c b/drivers/xen/grant-table.c
index 35659bf70746..04a6b470b15d 100644
--- a/drivers/xen/grant-table.c
+++ b/drivers/xen/grant-table.c
@@ -427,16 +427,14 @@ EXPORT_SYMBOL_GPL(gnttab_grant_foreign_access);
 
 static int gnttab_end_foreign_access_ref_v1(grant_ref_t ref)
 {
-	u16 flags, nflags;
-	u16 *pflags;
+	u16 *pflags = &gnttab_shared.v1[ref].flags;
+	u16 flags;
 
-	pflags = &gnttab_shared.v1[ref].flags;
-	nflags = *pflags;
+	flags = *pflags;
 	do {
-		flags = nflags;
 		if (flags & (GTF_reading|GTF_writing))
 			return 0;
-	} while ((nflags = sync_cmpxchg(pflags, flags, 0)) != flags);
+	} while (!sync_try_cmpxchg(pflags, &flags, 0));
 
 	return 1;
 }
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Sun Oct 01 10:48:59 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 01 Oct 2023 10:48:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611020.950462 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmu0N-0002iG-Ez; Sun, 01 Oct 2023 10:48:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611020.950462; Sun, 01 Oct 2023 10:48: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 1qmu0N-0002i9-CK; Sun, 01 Oct 2023 10:48:55 +0000
Received: by outflank-mailman (input) for mailman id 611020;
 Sun, 01 Oct 2023 10:48: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 1qmu0M-0002hx-I3; Sun, 01 Oct 2023 10:48: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 1qmu0M-0006ma-DG; Sun, 01 Oct 2023 10:48: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 1qmu0L-0006T7-Uo; Sun, 01 Oct 2023 10:48:54 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qmu0L-0006OB-UA; Sun, 01 Oct 2023 10:48: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=napLFNw50rlBG/TG8jr8Tge39bslsqjyvgp+MfkwkUg=; b=XpwNyWtEDwEEmR1/TKA48nlVsk
	O29WgS4RuVs/wsoC4/hLPsyb670waERrU4A/n0GE/HV3h3VKHMhAzHDZjXp9svJwZ+iqPYYVRyxEv
	90inUWpZpf6/5p2SC5txT/cANC1dDU2GyyCfsu5rROtAw32watuzXBy+UumPGkYVGIfA=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183229-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 183229: tolerable FAIL
X-Osstest-Failures:
    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-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-unstable:test-amd64-amd64-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-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-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-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=5bdfcf7fe89759321335159c8304833dc32a25cd
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sun, 01 Oct 2023 10:48:53 +0000

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

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183223
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183223
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 183223
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183223
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183223
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183223
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 183223
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 183223
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183223
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183223
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 183223
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183223
 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-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-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-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                  5bdfcf7fe89759321335159c8304833dc32a25cd

Last test of basis   183229  2023-10-01 01:54:35 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 Oct 01 15:43:14 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 01 Oct 2023 15:43:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611046.950472 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmyat-0003iR-4s; Sun, 01 Oct 2023 15:42:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611046.950472; Sun, 01 Oct 2023 15: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 1qmyat-0003iK-2E; Sun, 01 Oct 2023 15:42:55 +0000
Received: by outflank-mailman (input) for mailman id 611046;
 Sun, 01 Oct 2023 15:42: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 1qmyar-0003i8-QC; Sun, 01 Oct 2023 15:42: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 1qmyar-0005CE-Iw; Sun, 01 Oct 2023 15:42: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 1qmyaq-00050A-VW; Sun, 01 Oct 2023 15:42:53 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qmyaq-00014l-V1; Sun, 01 Oct 2023 15: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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=73pEQVka3/D8hoPVJLg8okCwp68TfcfTFFWDLgyCads=; b=oIecBTDBQb4HYHb5iNrSwRixW3
	1KXqaZ7mYTtCo5pNz0RJJvYoIKiet5Wo04SCC6WuYHzbqQg9K4KOIIRmJghD/2x1RKJrQS+0c4by4
	eBjpOg4AtpXrXRvyiy7hbJLTnT1ExRB7dB+/1YW7e2INj11n4MADYdpGqPkYyimACWx0=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183230-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 183230: tolerable FAIL - PUSHED
X-Osstest-Failures:
    linux-linus:test-armhf-armhf-libvirt:host-ping-check-xen:fail:heisenbug
    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: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-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-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-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-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-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-amd64-amd64-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-qcow2: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=e402b08634b398e9feb94902c7adcf05bb8ba47d
X-Osstest-Versions-That:
    linux=9f3ebbef746f89f860a90ced99a359202ea86fde
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sun, 01 Oct 2023 15:42:52 +0000

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

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-armhf-armhf-libvirt     10 host-ping-check-xen fail pass in 183232-retest

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail blocked in 183224
 test-armhf-armhf-libvirt 16 saverestore-support-check fail in 183232 like 183224
 test-armhf-armhf-libvirt    15 migrate-support-check fail in 183232 never pass
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183224
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183224
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183224
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183224
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183224
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183224
 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-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-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-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-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-amd64-amd64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-amd64-amd64-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
 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                e402b08634b398e9feb94902c7adcf05bb8ba47d
baseline version:
 linux                9f3ebbef746f89f860a90ced99a359202ea86fde

Last test of basis   183224  2023-09-30 08:56:47 Z    1 days
Testing same since   183230  2023-10-01 01:57:27 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Adam Ford <aford173@gmail.com>
  Alexander Stein <alexander.stein@ew.tq-group.com>
  Andrew Jeffery <andrew@codeconstruct.com.au>
  Arnd Bergmann <arnd@arndb.de>
  Atish Patra <atishp@rivosinc.com>
  Aurelien Jarno <aurelien@aurel32.net>
  Beau Belgrave <beaub@linux.microsoft.com>
  Binbin Zhou <zhoubinbin@loongson.cn>
  Christoph Hellwig <hch@lst.de>
  Christophe JAILLET <christophe.jaillet@wanadoo.fr>
  Chuck Lever <chuck.lever@oracle.com>
  Clément Léger <cleger@rivosinc.com>
  Conor Dooley <conor.dooley@microchip.com>
  Darrick J. Wong <djwong@kernel.org>
  Dhruva Gole <d-gole@ti.com>
  Dinghao Liu <dinghao.liu@zju.edu.cn>
  Dongliang Mu <dzm91@hust.edu.cn>
  Fabio Estevam <festevam@denx.de>
  Fabio Estevam <festevam@gmail.com>
  Florian Fainelli <florian.fainelli@broadcom.com>
  Geert Uytterhoeven <geert+renesas@glider.be>
  Hal Feng <hal.feng@starfivetech.com>
  Heiner Kallweit <hkallweit1@gmail.com>
  Jens Wiklander <jens.wiklander@linaro.org>
  Joel Stanley <joel@jms.id.au>
  Julia Lawall <julia.lawall@inria.fr>
  Julien Panis <jpanis@baylibre.com>
  Kevin Hilman <khilman@baylibre.com>
  Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
  Linus Torvalds <torvalds@linux-foundation.org>
  Liu Ying <victor.liu@nxp.com>
  Masami Hiramatsu (Google) <mhiramat@kernel.org>
  Michael Ellerman <mpe@ellerman.id.au>
  Mikko Rapeli <mikko.rapeli@linaro.org>
  Mingtong Bao <baomingtong001@208suo.com>
  Nathan Rossi <nathan.rossi@digi.com>
  Peter Rosin <peda@axentia.se>
  Petr Tesarik <petr@tesarici.cz>
  Quang Le <quanglex97@gmail.com>
  Rafael J. Wysocki <rafael.j.wysocki@intel.com>
  Randy Dunlap <rdunlap@infradead.org>
  Rob Herring <robh@kernel.org>
  Ross Lagerwall <ross.lagerwall@citrix.com>
  Shawn Guo <shawnguo@kernel.org>
  Sibi Sankar <quic_sibis@quicinc.com>
  Steve French <stfrench@microsoft.com>
  Steven Rostedt (Google) <rostedt@goodmis.org>
  Sudeep Holla <sudeep.holla@arm.com>
  syzbot+1fa947e7f09e136925b8@syzkaller.appspotmail.com
  Tony Lindgren <tony@atomide.com>
  Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
  William A. Kennington III <william@wkennington.com>
  Wolfram Sang <wsa@kernel.org>
  Yue Haibing <yuehaibing@huawei.com>
  Zev Weiss <zev@bewilderbeest.net>

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
   9f3ebbef746f..e402b08634b3  e402b08634b398e9feb94902c7adcf05bb8ba47d -> tested/linux-linus


From xen-devel-bounces@lists.xenproject.org Sun Oct 01 16:34:40 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 01 Oct 2023 16:34:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611055.950483 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmzOr-0005KL-2D; Sun, 01 Oct 2023 16:34:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611055.950483; Sun, 01 Oct 2023 16:34: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 1qmzOq-0005KE-UH; Sun, 01 Oct 2023 16:34:32 +0000
Received: by outflank-mailman (input) for mailman id 611055;
 Sun, 01 Oct 2023 16:34: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 1qmzOp-0005K4-Lz; Sun, 01 Oct 2023 16:34: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 1qmzOo-0006n2-QA; Sun, 01 Oct 2023 16:34: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 1qmzOo-000695-7b; Sun, 01 Oct 2023 16:34:30 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qmzOo-0005Jj-75; Sun, 01 Oct 2023 16:34: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=it0jDGllfwLIl5A7UcrFLmT2b3uBFttmxeZdptYhCvs=; b=QyigrMQ9+CshIgOQojTxkHeWJs
	iafCWWcuy0atW1uZXuW9SxcdqheCT7QNiswZ0NYWzgZZgAUiHkf8SarXsazBUiPB127LqzRk92mpz
	AKqMqy4zGa5weAiXzS3Ti3EMfhjXYaZFTTTZ5m5dJzuaq3GhzC4NR4yF8cuCnkxYq8pA=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183231-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [libvirt test] 183231: 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=5c47ac65513a7649ebbff33536401a8d0f9b0766
X-Osstest-Versions-That:
    libvirt=53fe17bb23ca6723dbaacf849bff8461a474d07a
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sun, 01 Oct 2023 16:34:30 +0000

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

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183222
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183222
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183222
 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              5c47ac65513a7649ebbff33536401a8d0f9b0766
baseline version:
 libvirt              53fe17bb23ca6723dbaacf849bff8461a474d07a

Last test of basis   183222  2023-09-30 04:18:44 Z    1 days
Testing same since   183231  2023-10-01 04:28: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                                  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
   53fe17bb23..5c47ac6551  5c47ac65513a7649ebbff33536401a8d0f9b0766 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Mon Oct 02 00:04:31 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 00:04:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611080.950493 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qn6Pw-0002fH-Nh; Mon, 02 Oct 2023 00:04:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611080.950493; Mon, 02 Oct 2023 00:04: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 1qn6Pw-0002fA-KX; Mon, 02 Oct 2023 00:04:08 +0000
Received: by outflank-mailman (input) for mailman id 611080;
 Mon, 02 Oct 2023 00:04: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 1qn6Pu-0002f0-Vj; Mon, 02 Oct 2023 00: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 1qn6Pu-0000vU-LX; Mon, 02 Oct 2023 00: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 1qn6Pu-0003L0-4V; Mon, 02 Oct 2023 00:04:06 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qn6Pu-0006RA-3y; Mon, 02 Oct 2023 00:04: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=nr9gWkTJ6hGgOcYAshZrhP0Hjr/E6n55IEjzr2GP3fw=; b=Jv8EPT6psDAnHI1G0J3BmDMBgV
	tuxyTuFc7ojndwxLypolNVlUg7nFAsDSr/pFF1ayBMisJRTOlVPdVgZNvdA3CJ6i7Y6/fp37lfvPu
	MvOhjVuAX2HGo/+uyBxp0lC/1ovFtK5OnpmmMhQOg0/XYWNyJ3VU92bH/r4eVaacSwok=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183233-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 183233: 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-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-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-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-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-amd64-amd64-libvirt-qcow2: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-amd64-amd64-libvirt-raw: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-amd64-amd64-libvirt:migrate-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-libvirt: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=ec8c298121e3616f8013d3cf1db9c7169c9b0b2d
X-Osstest-Versions-That:
    linux=e402b08634b398e9feb94902c7adcf05bb8ba47d
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 02 Oct 2023 00:04:06 +0000

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

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt   16 saverestore-support-check fail blocked in 183230
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183230
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183230
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183230
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183230
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183230
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183230
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183230
 test-amd64-amd64-libvirt-xsm 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-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-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-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-amd64-amd64-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
 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-raw 14 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-amd64-amd64-libvirt     15 migrate-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-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-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                ec8c298121e3616f8013d3cf1db9c7169c9b0b2d
baseline version:
 linux                e402b08634b398e9feb94902c7adcf05bb8ba47d

Last test of basis   183230  2023-10-01 01:57:27 Z    0 days
Testing same since   183233  2023-10-01 17:11:59 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Borislav Petkov (AMD) <bp@alien8.de>
  Breno Leitao <leitao@debian.org>
  Christophe JAILLET <christophe.jaillet@wanadoo.fr>
  Dave Hansen <dave.hansen@linux.intel.com>
  Frederic Weisbecker <frederic@kernel.org>
  Haitao Huang <haitao.huang@linux.intel.com>
  Ingo Molnar <mingo@kernel.org>
  Joel Fernandes (Google) <joel@joelfernandes.org>
  Linus Torvalds <torvalds@linux-foundation.org>
  Paul E. McKenney <paulmck@kernel.org>
  Pu Wen <puwen@hygon.cn>
  Randy Dunlap <rdunlap@infradead.org>
  Reinette Chatre <reinette.chatre@intel.com>
  Sandipan Das <sandipan.das@amd.com>
  Thomas Gleixner <tglx@linutronix.de>

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
   e402b08634b3..ec8c298121e3  ec8c298121e3616f8013d3cf1db9c7169c9b0b2d -> tested/linux-linus


From xen-devel-bounces@lists.xenproject.org Mon Oct 02 07:15:43 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 07:15:43 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611108.950503 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnD9K-0005H2-ED; Mon, 02 Oct 2023 07:15:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611108.950503; Mon, 02 Oct 2023 07:15: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 1qnD9K-0005Gv-BG; Mon, 02 Oct 2023 07:15:26 +0000
Received: by outflank-mailman (input) for mailman id 611108;
 Mon, 02 Oct 2023 07:15: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 1qnD9J-0005Gl-B9; Mon, 02 Oct 2023 07:15: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 1qnD9J-0004oj-0s; Mon, 02 Oct 2023 07:15: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 1qnD9I-0006nG-EZ; Mon, 02 Oct 2023 07:15:24 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qnD9I-0007N4-EB; Mon, 02 Oct 2023 07:15: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=Q6OPATdhid7o46XELYZkXPS+H8PpySg6HE6CbFRbDIA=; b=EPDkkmZR9Ubpxu1xuECTNFmGvi
	WjXOde1EH8g0KwE/bss1NWOjjmHFVkcUxMYjAkDC4RVHHhRAL69happn3RpfVx50UQDZ4XqUbG2U/
	9yns8PcuSwy/JUnWwcUKh9609VRfcJmkY9lqxBLlrzTBTi0dENW9XVbJVv4ii7Op/oD4=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183234-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 183234: tolerable FAIL - PUSHED
X-Osstest-Failures:
    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-armhf-armhf-libvirt: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-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-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-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-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-amd64-amd64-libvirt-qcow2: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-amd64-amd64-libvirt-raw: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-amd64-amd64-libvirt:migrate-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-libvirt: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=e81a2dabc3f3faa0d96808708a8dc2025f2bdde3
X-Osstest-Versions-That:
    linux=ec8c298121e3616f8013d3cf1db9c7169c9b0b2d
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 02 Oct 2023 07:15:24 +0000

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

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 183233
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183233
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183233
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183233
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183233
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183233
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183233
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183233
 test-amd64-amd64-libvirt-xsm 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-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-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-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-amd64-amd64-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
 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-raw 14 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-amd64-amd64-libvirt     15 migrate-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-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-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                e81a2dabc3f3faa0d96808708a8dc2025f2bdde3
baseline version:
 linux                ec8c298121e3616f8013d3cf1db9c7169c9b0b2d

Last test of basis   183233  2023-10-01 17:11:59 Z    0 days
Testing same since   183234  2023-10-02 00:13:02 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Morton <akpm@linux-foundation.org>
  Andy Shevchenko <andriy.shevchenko@linux.intel.com>
  Arnd Bergmann <arnd@arndb.de>
  Baoquan He <bhe@redhat.com>
  Daniel Starke <daniel.starke@siemens.com>
  Domenico Cerasuolo <cerasuolodomenico@gmail.com>
  Eric DeVolder <eric.devolder@oracle.com>
  Greg Kroah-Hartman <gregkh@linuxfoundation.org>
  Greg Ungerer <gerg@kernel.org>
  Jade Lovelace <lists@jade.fyi>
  Jinjie Ruan <ruanjinjie@huawei.com>
  Johannes Weiner <hannes@cmpxchg.org>
  Juntong Deng <juntong.deng@outlook.com>
  Liam R. Howlett <Liam.Howlett@oracle.com>
  Linus Torvalds <torvalds@linux-foundation.org>
  Martin Nybo Andersen <tweek@tweek.dk>
  Masahiro Yamada <masahiroy@kernel.org>
  Matthew Wilcox (Oracle) <willy@infradead.org>
  Mauricio Faria de Oliveira <mfo@canonical.com>
  Michal Hocko <mhocko@suse.com>
  Nhat Pham <nphamcs@gmail.com>
  Pan Bian <bianpan2016@163.com>
  Paul Gortmaker <paul.gortmaker@windriver.com>
  Ricky Wu <ricky_wu@realtek.com>
  Ryan Roberts <ryan.roberts@arm.com>
  Ryusuke Konishi <konishi.ryusuke@gmail.com>
  Shakeel Butt <shakeelb@google.com>
  Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
  Yang Shi <yang@os.amperecomputing.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
   ec8c298121e3..e81a2dabc3f3  e81a2dabc3f3faa0d96808708a8dc2025f2bdde3 -> tested/linux-linus


From xen-devel-bounces@lists.xenproject.org Mon Oct 02 07:35:16 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 07:35:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611117.950533 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnDSS-0001QP-HM; Mon, 02 Oct 2023 07:35:12 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611117.950533; Mon, 02 Oct 2023 07:35: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 1qnDSS-0001QH-E7; Mon, 02 Oct 2023 07:35:12 +0000
Received: by outflank-mailman (input) for mailman id 611117;
 Mon, 02 Oct 2023 07:35: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=uL8T=FQ=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qnDSQ-0000vL-U3
 for xen-devel@lists.xenproject.org; Mon, 02 Oct 2023 07:35:10 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 35fe485f-60f6-11ee-9b0d-b553b5be7939;
 Mon, 02 Oct 2023 09:35:08 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id AEA9F4EE073E;
 Mon,  2 Oct 2023 09:35: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: 35fe485f-60f6-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 v3 2/3] docs: make the docs for MISRA C:2012 Dir 4.1 visible to ECLAIR
Date: Mon,  2 Oct 2023 09:34:49 +0200
Message-Id: <fd60f0f3c777652bd305a97b559cb7ee23293e8d.1696231870.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1696231870.git.nicola.vetrini@bugseng.com>
References: <cover.1696231870.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

Changes in v3:
- Terminate the generated file with a newline
- Build it with -std=c99, so that the documentation
  for D1.1 applies.
---
 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..949458ff9e15
--- /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*/\n" >> $@.tmp
+	mv $@.tmp $@
+
+%.o: %.c
+	$(CC) -std=c99 -c $< -o $@
+
+clean:
+	rm -f C-runtime-failures.c *.o *.tmp
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Mon Oct 02 07:35:16 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 07:35:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611118.950543 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnDST-0001ft-Pu; Mon, 02 Oct 2023 07:35:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611118.950543; Mon, 02 Oct 2023 07: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 1qnDST-0001fi-Kg; Mon, 02 Oct 2023 07:35:13 +0000
Received: by outflank-mailman (input) for mailman id 611118;
 Mon, 02 Oct 2023 07:35: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=uL8T=FQ=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qnDSR-0000vL-U6
 for xen-devel@lists.xenproject.org; Mon, 02 Oct 2023 07:35:11 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 367b23e2-60f6-11ee-9b0d-b553b5be7939;
 Mon, 02 Oct 2023 09:35:08 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id 9261B4EE074E;
 Mon,  2 Oct 2023 09:35:08 +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: 367b23e2-60f6-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>,
	Simone Ballarin <simone.ballarin@bugseng.com>,
	Doug Goldstein <cardoe@cardoe.com>,
	Henry Wang <Henry.Wang@arm.com>
Subject: [XEN PATCH v3 3/3] automation/eclair: build docs/misra to address MISRA C:2012 Dir 4.1
Date: Mon,  2 Oct 2023 09:34:50 +0200
Message-Id: <ac00d0259530ac895e7260ff7f64833c58053983.1696231870.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1696231870.git.nicola.vetrini@bugseng.com>
References: <cover.1696231870.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 v3:
- amended prepare script.
---
 automation/eclair_analysis/build.sh   | 6 +++---
 automation/eclair_analysis/prepare.sh | 7 ++++---
 2 files changed, 7 insertions(+), 6 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..fe9d16e48ecc 100755
--- a/automation/eclair_analysis/prepare.sh
+++ b/automation/eclair_analysis/prepare.sh
@@ -35,11 +35,12 @@ 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
+    cd xen
+    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 Mon Oct 02 07:35:16 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 07:35:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611115.950513 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnDSQ-0000vM-0J; Mon, 02 Oct 2023 07:35:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611115.950513; Mon, 02 Oct 2023 07:35: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 1qnDSP-0000vE-TW; Mon, 02 Oct 2023 07:35:09 +0000
Received: by outflank-mailman (input) for mailman id 611115;
 Mon, 02 Oct 2023 07:35: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=uL8T=FQ=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qnDSO-0000v6-Kc
 for xen-devel@lists.xenproject.org; Mon, 02 Oct 2023 07:35:08 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 3574bc30-60f6-11ee-878e-cb3800f73035;
 Mon, 02 Oct 2023 09:35:07 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id AB3BC4EE0739;
 Mon,  2 Oct 2023 09:35: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: 3574bc30-60f6-11ee-878e-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 v3 0/3] docs/misra: add documentation skeleton to address MISRA C:2012 Dir 4.1
Date: Mon,  2 Oct 2023 09:34:47 +0200
Message-Id: <cover.1696231870.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.

Note: The previous version of this series already had a release ack from Henry,
which I didn't add in each commit message since I see in the commit history that
tag being the last.

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 |   7 +-
 docs/Makefile                         |   7 +-
 docs/misra/C-runtime-failures.rst     | 210 ++++++++++++++++++++++++++
 docs/misra/Makefile                   |  22 +++
 docs/misra/rules.rst                  |   7 +
 6 files changed, 252 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 Mon Oct 02 07:35:16 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 07:35:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611116.950523 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnDSR-0001AF-7a; Mon, 02 Oct 2023 07:35:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611116.950523; Mon, 02 Oct 2023 07: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 1qnDSR-0001A8-3R; Mon, 02 Oct 2023 07:35:11 +0000
Received: by outflank-mailman (input) for mailman id 611116;
 Mon, 02 Oct 2023 07:35: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=uL8T=FQ=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qnDSQ-0000vL-89
 for xen-devel@lists.xenproject.org; Mon, 02 Oct 2023 07:35:10 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 357a505c-60f6-11ee-9b0d-b553b5be7939;
 Mon, 02 Oct 2023 09:35:07 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id D73C94EE073D;
 Mon,  2 Oct 2023 09:35: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: 357a505c-60f6-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 v3 1/3] docs/misra: add documentation skeleton for MISRA C:2012 Dir 4.1
Date: Mon,  2 Oct 2023 09:34:48 +0200
Message-Id: <14df7c8c667f3852bcc1ffab3a3ce862284a8a0c.1696231870.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1696231870.git.nicola.vetrini@bugseng.com>
References: <cover.1696231870.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.
Changes in v3:
- Replaced two leftover entries.
---
 docs/misra/C-runtime-failures.rst | 210 ++++++++++++++++++++++++++++++
 docs/misra/rules.rst              |   7 +
 2 files changed, 217 insertions(+)
 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..77e04a2562b8
--- /dev/null
+++ b/docs/misra/C-runtime-failures.rst
@@ -0,0 +1,210 @@
+===================================================================
+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 that 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
+___________________________________________________________________
+
+This behaviour can arise, for instance, from:
+
+- incongruent declarations;
+- functions having no prototypes;
+- casts on function pointers.
+
+The project has adopted various compiler flags and MISRA rules to lessen the
+likelihood of this event.
+
+
+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
+___________________________________________________________
+
+The extensive checks in the code ensure that any violation of a compile-time
+invariant will be detected prior to release builds, and violation of run-time
+invariants is extensively tested. In release builds the number of invariants
+is greatly reduced.
+
+
+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 a2fe01464eec..3139ca7ae6dd 100644
--- a/docs/misra/rules.rst
+++ b/docs/misra/rules.rst
@@ -49,6 +49,13 @@ maintainers if you want to suggest a change.
      - 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 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
      - If a function returns error information then that error
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Mon Oct 02 07:37:29 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 07:37:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611135.950553 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnDUd-0003Dy-48; Mon, 02 Oct 2023 07:37:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611135.950553; Mon, 02 Oct 2023 07:37: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 1qnDUd-0003Dr-16; Mon, 02 Oct 2023 07:37:27 +0000
Received: by outflank-mailman (input) for mailman id 611135;
 Mon, 02 Oct 2023 07:37: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=qeMD=FQ=samsung.com=j.granados@srs-se1.protection.inumbo.net>)
 id 1qnDUb-0003DH-Ai
 for xen-devel@lists.xenproject.org; Mon, 02 Oct 2023 07:37:25 +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 85257725-60f6-11ee-9b0d-b553b5be7939;
 Mon, 02 Oct 2023 09:37:21 +0200 (CEST)
Received: from eucas1p2.samsung.com (unknown [182.198.249.207])
 by mailout1.w1.samsung.com (KnoxPortal) with ESMTP id
 20231002073720euoutp016fe876eca16495d8528d299c4c7ee324~KOjxvoWoO2433024330euoutp01V;
 Mon,  2 Oct 2023 07:37:20 +0000 (GMT)
Received: from eusmges2new.samsung.com (unknown [203.254.199.244]) by
 eucas1p1.samsung.com (KnoxPortal) with ESMTP id
 20231002073720eucas1p1f12614d17a256c78b37fa5d7de8f75c3~KOjxiX4bF3033930339eucas1p1E;
 Mon,  2 Oct 2023 07:37:20 +0000 (GMT)
Received: from eucas1p2.samsung.com ( [182.198.249.207]) by
 eusmges2new.samsung.com (EUCPMTA) with SMTP id 9E.D4.11320.0337A156; Mon,  2
 Oct 2023 08:37:20 +0100 (BST)
Received: from eusmtrp2.samsung.com (unknown [182.198.249.139]) by
 eucas1p2.samsung.com (KnoxPortal) with ESMTPA id
 20231002073720eucas1p20d4ccb4caf9670a1d718bfbbbdcef951~KOjw9Admk1616816168eucas1p2l;
 Mon,  2 Oct 2023 07:37:20 +0000 (GMT)
Received: from eusmgms2.samsung.com (unknown [182.198.249.180]) by
 eusmtrp2.samsung.com (KnoxPortal) with ESMTP id
 20231002073720eusmtrp24b41570e0cc30e17e0bd40d2480fe1cf~KOjw6I0VU0549305493eusmtrp29;
 Mon,  2 Oct 2023 07:37:20 +0000 (GMT)
Received: from eusmtip2.samsung.com ( [203.254.199.222]) by
 eusmgms2.samsung.com (EUCPMTA) with SMTP id 18.CC.25043.F237A156; Mon,  2
 Oct 2023 08:37:19 +0100 (BST)
Received: from CAMSVWEXC02.scsc.local (unknown [106.1.227.72]) by
 eusmtip2.samsung.com (KnoxPortal) with ESMTPA id
 20231002073719eusmtip246e1b150785e2296b5a160aff9b9a4f6~KOjwlh3jv1418614186eusmtip2W;
 Mon,  2 Oct 2023 07:37:19 +0000 (GMT)
Received: from localhost (106.110.32.133) by CAMSVWEXC02.scsc.local
 (2002:6a01:e348::6a01:e348) with Microsoft SMTP Server (TLS) id 15.0.1497.2;
 Mon, 2 Oct 2023 08:37:19 +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: 85257725-60f6-11ee-9b0d-b553b5be7939
DKIM-Filter: OpenDKIM Filter v2.11.0 mailout1.w1.samsung.com 20231002073720euoutp016fe876eca16495d8528d299c4c7ee324~KOjxvoWoO2433024330euoutp01V
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=samsung.com;
	s=mail20170921; t=1696232240;
	bh=GpVEgYMUf4T/XwZ7+6B8FXnwmrWJ6CC+FEbg1ZXjwco=;
	h=Date:From:To:CC:Subject:In-Reply-To:References:From;
	b=JM5sjoqxx/czuPvDtr6u6fxp8xSrPIviov2zbGPSp0LDJiiG1I74OwklyDec1Metn
	 JK2ySWc7cGMV2W67P9g/7ad97JAe2EBmR9Eyyf+onObuwLvINkT9HUNoRE67yIs40m
	 t0+muUw20JcsUQkOaroHhZQO4xt+SQ1GO4Zc/y+E=
X-AuditID: cbfec7f4-97dff70000022c38-9b-651a7330d32d
Date: Mon, 2 Oct 2023 09:39:32 +0200
From: Joel Granados <j.granados@samsung.com>
To: Phillip Potter <phil@philpotter.co.uk>
CC: Luis Chamberlain <mcgrof@kernel.org>, <willy@infradead.org>,
	<josh@joshtriplett.org>, Kees Cook <keescook@chromium.org>, 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>, Greg
	Kroah-Hartman <gregkh@linuxfoundation.org>
Subject: Re: [PATCH 01/15] cdrom: Remove now superfluous sentinel element
 from ctl_table array
Message-ID: <20231002073932.72i2ey4zvvaqioqm@localhost>
MIME-Version: 1.0
Content-Type: multipart/signed; micalg="pgp-sha512";
	protocol="application/pgp-signature"; boundary="iym4gjoiy6yoe7oi"
Content-Disposition: inline
In-Reply-To: <ZRhSQaNDJih5xABq@equinox>
X-Originating-IP: [106.110.32.133]
X-ClientProxiedBy: CAMSVWEXC01.scsc.local (2002:6a01:e347::6a01:e347) To
	CAMSVWEXC02.scsc.local (2002:6a01:e348::6a01:e348)
X-Brightmail-Tracker: H4sIAAAAAAAAA2WTe1ATVxjFvbub3UAbXYOjl8j4AEY7iKjU4leLHVsfs31M67T/aF9KYQWr
	BIcYS5nBBlDkoYgIIwQogQhEwUADIqSgTlCCqIA85DHSiqK1EApW5RUNTVhaO9P/fufbc+53
	z51ZMSntZmTiPfIDfLg8YJ877UxV1k80r1ytkPGro+MXQUNnPgEvU+sZONPQR8BU5UkSspsP
	U3DpsAHBpYzzNLQ/H6ZBbzxCwMP6+wzEaktpuHORg6yUcgKK2koR3OuQQX5XJQGZGQ0Isrt9
	4c8cN6jNs5+nCYObSaHQUpksgv7iCwykTRaQkH5yhIY2YzYNR3ONCB6ZjlOQ1FlFw03tcQas
	YzYRFJltBHSlPESQeOIognrNfBi3WkVQc68fwegNC4L0Qh/IeZZOgs6SQ8Jl9R0GCjJ1JJiL
	XtJQrN8Jl9NKSLhyI80+skXCkWMTDNQZegiwjtsXj1WcIja+xbW1f8RZJ1MRl6W6TXEVZ7sJ
	7m5BNeJqRzUUV63uZTiNQckZjdEMV67z4rQ1fxDcywQ/rmdwA2c4l0Bz47oTJJeSfwVtW/yF
	s38Qv2/PQT581bu7nEMyrg2I9mfhiLzeUZEKdbgkIicxZtfi05fi6ETkLJayOoR/etouEsQz
	hAubOklBPEVYE9NnF+LpyMlbbo60lC1COLp2978eQ46JEUQ5wh3dI8jholhP/PB8GeFgmvXG
	zZa7pIPnsV74as/j6d0ke2YOfnLm5+mAC7sLTw2niBwsYddh1ZE6SuC5+HpmP+W4BclGYFWn
	QsCFuMgmdjic2OXYOthKCdXc8XPLcZHAUbixoodwrMJs4uv41osEkVBmMy5VbRU8LnjAXMEI
	7IanqnNn/KcQvmwbYQRRbH+W6OeE4HoHH27vn0m8hxtL42deaDbuGprrGJN2TK08PTOW4Pg4
	qeBehot/tVApyEP9n2LqV8XUr4qpp8/xxppf/qL/N16BC/MGSYE3YL1+mNIg5hxawCsVocG8
	wlfOf++jCAhVKOXBPoFhoQZk/+Nu2MzPqlDRwBMfEyLEyIQ87eH7ZcUtSEbJw+S8+zxJXMt8
	XioJCvghkg8P2xmu3McrTGihmHJfIFmx4XqglA0OOMDv5fn9fPg/Xwmxk0xF7F3cpG+p/XL3
	j8l+Q/zBhKqe4RCR6/LYbL1TulIVUd3ELoxQbprnsWPywuyz2vrWQ7lb3KJ8l0iCpvb/tii/
	1bmxZk/WSlkeXvzaNkXw73Ma7vguIywF8Cbjquhbk+Hi6p0zfC0uV5xuDHVJZqxtzKwHhaak
	kAelTtra95F5fVTgh9o4/81fZ8QOHMK9sqUl9CcfPGpepf74IoyNXiW/+zQFjaTtmNjyTdO2
	jmMxGxnj596bKmQLHmd7tFaZDyjjh0L6unBS75KQXI/xvN2fRTbfHtseSUhcvrJ4rlz/ZNaL
	RbpvadJvbUxJjf9TY92q8XURUYFb1LK2+Vlvby+LeSN+qcGdUoQErPEiwxUBfwOF13L87AQA
	AA==
X-Brightmail-Tracker: H4sIAAAAAAAAA2VTe0xTVxz23Hu5t4BoRzt2VlFnIVnGXHkI+MOJWebcLjNLlo0t2RzDRi/g
	Bi1pwWyiBCfILA+L0gHlYQF5CArykEEDgoCVlwoiyEvnCJA5YMwHyLOsUJeZ7L/vfL/f98jJ
	OTzSdo4W8Q7JwjiFTBospq2oduONB+84K0Wcy/htN2i5l0PA0hkDA+dbfidguSqJhIzb0RRc
	jS5HcDX1Eg13p6doKNHHEDBqGGbgRG4pDb2/spCuriCgoLsUwcMeEeT0VRGQltqCIKPfDf7K
	tIe6bJOfTg4dcSHQWZVoASPFVxhIns8jQZP0Nw3d+gwaYs/pEYw1JlAQd6+aho7cBAYWnhst
	oOCGkYA+9SgC1elYBAadHcwuLFhA7cMRBDPtEwg0+RLIfKYhoXAik4R6bS8DeWmFJNwoWKKh
	uMQf6pMvktDQnmyijEcgJn6OgabyAQIWZk3BzyvPEu95sN1397IL82cQmx7VRbGVF/oJdiiv
	BrF1MzqKrdHeZ1hdeTir1x9n2IpCJza39hHBLp3yZAfGvdnyolM0O1t4mmTVOQ3o081fS3Yq
	5OFh3BtBcmWYt3ifK7hJXL1A4ubuJXHdtt1vh5uH2HnXzoNc8KHDnMJ5135JkCH+EhWahn+4
	16yno1C3QIV4PMx3x0k37VXIimfLz0O4abAPqZClibfHZc96LMxYgBd7VbR56THC8zUdLw4V
	CM/2VFMrWxTfEY9eukysYJq/Fd+eGCJXsJDvhJsH/lgVkPzz63HJyeXVCAF/P16eUq9G2PC3
	46iYJsrs+ozALYlaxjx4BbemjawmkPzDeKqgBq30JvkbcIGRt0Jb8t/EC+N3KHNVMZ6eSHhR
	+xh+ujSG1EigfclJ+5KT9j8nM+2E+4yPiP/Rb+P87HHSjL1xSckUpUNMERJy4cqQwBClm0Qp
	DVGGywIlB+Qh5cj07qsMc5XV6MKfjyWNiOChRuRoUg5fLu5EIkoml3Fioc3JTjvO1uag9Mcj
	nELurwgP5pSNyMN0jUmk6NUDctMnkoX5u3q6eLi6e3q5eHh5bhO/ZuMT+rPUlh8oDeO+57hQ
	TvGvjuBZiqKIYw7Kaj+nfXuuf0sMps4EWIvW7DUo4rhNdZOlAhf7yIZ1xmprm4923KQMwcRw
	hDBldDL1S2MExopp1Vs7hIuft16M7qr6ZMvFn7LUnqVbMjcyv2xyYWYiac3ZD9p6NVmGTOpB
	/x39h9eFS9neTz4rU4Snp3+Vp1F9lz7sd1/gcNQ6SzxtMbRxaq1fdOzRslvCAJ/FrWuLNnnm
	v56y8/3jVxLVJ9rXtLXrfosobNe/G3DNhRsck/Y7t37hONlTm5gS0qeMFzDd9SNWvk8eNjts
	2Oyr6HJctztmt+xaJF02sP4uk9bccUzztI3KkZ6LdJJ/o9Pu0Qt8faSdKrD7OGXulnBRTCmD
	pK5OpEIp/Qd2Xc43jAQAAA==
X-CMS-MailID: 20231002073720eucas1p20d4ccb4caf9670a1d718bfbbbdcef951
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>
	<20230929121730.bwzhrpaptf45smfy@localhost> <ZRhSQaNDJih5xABq@equinox>

--iym4gjoiy6yoe7oi
Content-Type: text/plain; charset="us-ascii"
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

On Sat, Sep 30, 2023 at 05:52:17PM +0100, Phillip Potter wrote:
> On Fri, Sep 29, 2023 at 02:17:30PM +0200, Joel Granados wrote:
> > 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 =
wrote:
> > > > 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.o=
rg/)
> > > >=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
> > >=20
> > > So your patches will just remove one line, not 2 and add 1, making it=
 a
> > > smaller diff.
> > indeed.
> >=20
> > >=20
> > > thanks,
> > >=20
> > > greg k-h
> >=20
> > --=20
> >=20
> > Joel Granados
>=20
> Hi Joel,
>=20
> Thank you for your patch. I look forward to seeing V2, and will be happy
> to review it.
Am following a reported oops. Once I straighten that out, I'll send out
a V2

Bet

>=20
> Regards,
> Phil

--=20

Joel Granados

--iym4gjoiy6yoe7oi
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQGzBAABCgAdFiEErkcJVyXmMSXOyyeQupfNUreWQU8FAmUac7QACgkQupfNUreW
QU/yCwv+ODTBSbi0ueMQdEZxBPJP69SZ4LKBMRpZjtDGBiifZrGt584PygiL6kff
CdRuYLsAGk56gt/+3JZPjEH6tCnTFH6yZzFU3luYhw759BXEHpy79DyEpzv4cBme
ZY3ghhzfhc9cilEW6/mwP4fPxj5/3QavA1Re8mqkCDHhMbGSSx60qJ7KeALt4kje
liPm3oN8g9Rspq958o3ANDvWJsBHsuQinjUc9UdUU/T8DCQ886Rig7yQNnleUbcZ
MvRchNw012YUtmPGk+0wYsu/30GiQ5hg1iodQjsFj05PCTrWIG0svFnZ3CQDKfcy
27vtkqiWYMUCX/gXf373wwxVWsIEuLyJqCz0usoSC0bzgN0yu1NXyTWL6KWivWS3
v1DBHUZV8lAGgUL95xlBfgMNgVInzu19ml5+DfvroOxkUYis2fEVGO+yaGIk6zWO
LU8IcfGU8a2NMba60gnFqizl/uNhX4g9z0D9IC1HykgQ4WJMhxdJSeLSKEclwoXK
6ILmm1E1
=6JBa
-----END PGP SIGNATURE-----

--iym4gjoiy6yoe7oi--


From xen-devel-bounces@lists.xenproject.org Mon Oct 02 07:50:08 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 07:50:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611142.950564 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnDgq-0006KI-Ad; Mon, 02 Oct 2023 07:50:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611142.950564; Mon, 02 Oct 2023 07:50: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 1qnDgq-0006Jl-4l; Mon, 02 Oct 2023 07:50:04 +0000
Received: by outflank-mailman (input) for mailman id 611142;
 Mon, 02 Oct 2023 07: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=uL8T=FQ=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qnDgp-00065N-Dk
 for xen-devel@lists.xenproject.org; Mon, 02 Oct 2023 07:50:03 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 4aec55c6-60f8-11ee-878e-cb3800f73035;
 Mon, 02 Oct 2023 09:50:02 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id B4AA14EE0739;
 Mon,  2 Oct 2023 09:50: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: 4aec55c6-60f8-11ee-878e-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,
	Henry.Wang@arm.com,
	Nicola Vetrini <nicola.vetrini@bugseng.com>,
	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>,
	Tamas K Lengyel <tamas@tklengyel.com>,
	Alexandru Isaila <aisaila@bitdefender.com>,
	Petre Pircalabu <ppircalabu@bitdefender.com>
Subject: [XEN PATCH 0/7] Fix or deviate various instances of missing declarations
Date: Mon,  2 Oct 2023 09:49:43 +0200
Message-Id: <cover.1696232393.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The patches in this series aim to fix or deviate various instances where a
function or variable do not have a declaration visible when such entity is
defined (in violation of MISRA C:2012 Rule 8.4).
An exception listed under docs/misra/rules.rst allows asm-only functions and
variables to be exempted, while the other instances are either changed
(e.g., making them static) or a missing header inclusion is added.

Some of the patches in this series are potential candidates for bug fixes, or
just general improvements that may be suited for inclusion in the next rc.

Nicola Vetrini (7):
  xen: add declarations for variables where needed
  x86: add deviations for variables only used in asm code
  x86: add deviation comments for  asm-only functions
  x86/grant: switch included header to make declarations visible
  x86/vm_event: add missing include for hvm_vm_event_do_resume
  xen/console: make function static inline
  x86/mem_access: make function static

 xen/arch/arm/include/asm/setup.h           |  3 +++
 xen/arch/arm/include/asm/smp.h             |  3 +++
 xen/arch/x86/cpu/mcheck/mce.c              |  6 +++---
 xen/arch/x86/hvm/grant_table.c             |  3 +--
 xen/arch/x86/hvm/svm/intr.c                |  1 +
 xen/arch/x86/hvm/svm/nestedsvm.c           |  1 +
 xen/arch/x86/hvm/svm/svm.c                 |  2 ++
 xen/arch/x86/hvm/vm_event.c                |  1 +
 xen/arch/x86/include/asm/asm_defns.h       |  1 +
 xen/arch/x86/include/asm/hvm/grant_table.h |  2 ++
 xen/arch/x86/include/asm/setup.h           |  3 +++
 xen/arch/x86/irq.c                         |  2 +-
 xen/arch/x86/mm/mem_access.c               |  2 +-
 xen/arch/x86/platform_hypercall.c          |  3 ---
 xen/arch/x86/setup.c                       |  1 +
 xen/arch/x86/traps.c                       |  1 +
 xen/arch/x86/x86_64/traps.c                |  1 +
 xen/common/symbols.c                       | 17 -----------------
 xen/include/xen/consoled.h                 |  2 +-
 xen/include/xen/hypercall.h                |  3 +++
 xen/include/xen/symbols.h                  | 18 ++++++++++++++++++
 21 files changed, 48 insertions(+), 28 deletions(-)

--
2.34.1


From xen-devel-bounces@lists.xenproject.org Mon Oct 02 07:50:09 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 07:50:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611147.950603 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnDgu-0007ST-OZ; Mon, 02 Oct 2023 07:50:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611147.950603; Mon, 02 Oct 2023 07:50: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 1qnDgu-0007Ql-IG; Mon, 02 Oct 2023 07:50:08 +0000
Received: by outflank-mailman (input) for mailman id 611147;
 Mon, 02 Oct 2023 07: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=uL8T=FQ=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qnDgu-0006dn-10
 for xen-devel@lists.xenproject.org; Mon, 02 Oct 2023 07:50:08 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 4cc70ec6-60f8-11ee-9b0d-b553b5be7939;
 Mon, 02 Oct 2023 09:50:05 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id DDEA64EE0C88;
 Mon,  2 Oct 2023 09:50: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: 4cc70ec6-60f8-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,
	Henry.Wang@arm.com,
	Nicola Vetrini <nicola.vetrini@bugseng.com>,
	Tamas K Lengyel <tamas@tklengyel.com>,
	Alexandru Isaila <aisaila@bitdefender.com>,
	Petre Pircalabu <ppircalabu@bitdefender.com>,
	Wei Liu <wl@xen.org>
Subject: [XEN PATCH 5/7] x86/vm_event: add missing include for hvm_vm_event_do_resume
Date: Mon,  2 Oct 2023 09:49:48 +0200
Message-Id: <5bed20248f3e86d013bdf76d208c597b0bb9fd91.1696232393.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1696232393.git.nicola.vetrini@bugseng.com>
References: <cover.1696232393.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The missing header makes the declaration visible when the function
is defined, thereby fixing a violation of MISRA C:2012 Rule 8.4.

Fixes: 1366a0e76db6 ("x86/vm_event: add hvm/vm_event.{h,c}")
Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
---
 xen/arch/x86/hvm/vm_event.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/xen/arch/x86/hvm/vm_event.c b/xen/arch/x86/hvm/vm_event.c
index 3b064bcfade5..c1af230e7aed 100644
--- a/xen/arch/x86/hvm/vm_event.c
+++ b/xen/arch/x86/hvm/vm_event.c
@@ -24,6 +24,7 @@
 #include <xen/vm_event.h>
 #include <asm/hvm/emulate.h>
 #include <asm/hvm/support.h>
+#include <asm/hvm/vm_event.h>
 #include <asm/vm_event.h>
 
 static void hvm_vm_event_set_registers(const struct vcpu *v)
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Mon Oct 02 07:50:08 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 07:50:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611143.950573 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnDgr-0006kB-GZ; Mon, 02 Oct 2023 07:50:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611143.950573; Mon, 02 Oct 2023 07: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 1qnDgr-0006jo-DL; Mon, 02 Oct 2023 07:50:05 +0000
Received: by outflank-mailman (input) for mailman id 611143;
 Mon, 02 Oct 2023 07:50: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=uL8T=FQ=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qnDgq-00065N-2r
 for xen-devel@lists.xenproject.org; Mon, 02 Oct 2023 07:50:04 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 4bc71713-60f8-11ee-878e-cb3800f73035;
 Mon, 02 Oct 2023 09:50:03 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id BF3B84EE074E;
 Mon,  2 Oct 2023 09: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: 4bc71713-60f8-11ee-878e-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,
	Henry.Wang@arm.com,
	Nicola Vetrini <nicola.vetrini@bugseng.com>,
	Wei Liu <wl@xen.org>
Subject: [XEN PATCH 2/7] x86: add deviations for variables only used in asm code
Date: Mon,  2 Oct 2023 09:49:45 +0200
Message-Id: <c533d2a73151d89a910ad42b106ccd13991713db.1696232393.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1696232393.git.nicola.vetrini@bugseng.com>
References: <cover.1696232393.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

These variables are only used by asm code, and therefore
the lack of a declaration is justified by the corresponding
SAF comment.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
---
 xen/arch/x86/include/asm/asm_defns.h | 1 +
 xen/arch/x86/setup.c                 | 1 +
 2 files changed, 2 insertions(+)

diff --git a/xen/arch/x86/include/asm/asm_defns.h b/xen/arch/x86/include/asm/asm_defns.h
index baaaccb26e17..a2516de7749b 100644
--- a/xen/arch/x86/include/asm/asm_defns.h
+++ b/xen/arch/x86/include/asm/asm_defns.h
@@ -31,6 +31,7 @@ asm ( "\t.equ CONFIG_INDIRECT_THUNK, "
  * gets set up by the containing function.
  */
 #ifdef CONFIG_FRAME_POINTER
+/* SAF-1-safe */
 register unsigned long current_stack_pointer asm("rsp");
 # define ASM_CALL_CONSTRAINT , "+r" (current_stack_pointer)
 #else
diff --git a/xen/arch/x86/setup.c b/xen/arch/x86/setup.c
index 08ba1f95d635..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 };
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Mon Oct 02 07:50:09 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 07:50:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611146.950598 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnDgu-0007MM-FT; Mon, 02 Oct 2023 07:50:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611146.950598; Mon, 02 Oct 2023 07:50: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 1qnDgu-0007LN-8k; Mon, 02 Oct 2023 07:50:08 +0000
Received: by outflank-mailman (input) for mailman id 611146;
 Mon, 02 Oct 2023 07:50: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=uL8T=FQ=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qnDgt-0006dn-0e
 for xen-devel@lists.xenproject.org; Mon, 02 Oct 2023 07:50:07 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 4c3b0e9e-60f8-11ee-9b0d-b553b5be7939;
 Mon, 02 Oct 2023 09:50:04 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id 2E6414EE0C81;
 Mon,  2 Oct 2023 09:50: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: 4c3b0e9e-60f8-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,
	Henry.Wang@arm.com,
	Nicola Vetrini <nicola.vetrini@bugseng.com>,
	Wei Liu <wl@xen.org>
Subject: [XEN PATCH 4/7] x86/grant: switch included header to make declarations visible
Date: Mon,  2 Oct 2023 09:49:47 +0200
Message-Id: <ec3179df569d3e2b392360539bddfb3adc726a5e.1696232393.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1696232393.git.nicola.vetrini@bugseng.com>
References: <cover.1696232393.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The declarations for {create,replace}_grant_p2m_mapping are
not visible when these functions are defined, therefore the right
header needs to be included to allow them to be visible.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
---
 xen/arch/x86/hvm/grant_table.c             | 3 +--
 xen/arch/x86/include/asm/hvm/grant_table.h | 2 ++
 2 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/xen/arch/x86/hvm/grant_table.c b/xen/arch/x86/hvm/grant_table.c
index 30d51d54a949..afe449d8882c 100644
--- a/xen/arch/x86/hvm/grant_table.c
+++ b/xen/arch/x86/hvm/grant_table.c
@@ -9,8 +9,7 @@
 
 #include <xen/types.h>
 
-#include <public/grant_table.h>
-
+#include <asm/hvm/grant_table.h>
 #include <asm/p2m.h>
 
 int create_grant_p2m_mapping(uint64_t addr, mfn_t frame,
diff --git a/xen/arch/x86/include/asm/hvm/grant_table.h b/xen/arch/x86/include/asm/hvm/grant_table.h
index 33c1da1a25f3..576aeb50adf4 100644
--- a/xen/arch/x86/include/asm/hvm/grant_table.h
+++ b/xen/arch/x86/include/asm/hvm/grant_table.h
@@ -10,6 +10,8 @@
 #ifndef __X86_HVM_GRANT_TABLE_H__
 #define __X86_HVM_GRANT_TABLE_H__
 
+#include <asm/paging.h>
+
 #ifdef CONFIG_HVM
 
 int create_grant_p2m_mapping(uint64_t addr, mfn_t frame,
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Mon Oct 02 07:50:09 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 07:50:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611144.950584 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnDgs-00072p-Pc; Mon, 02 Oct 2023 07:50:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611144.950584; Mon, 02 Oct 2023 07: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 1qnDgs-00072i-Jo; Mon, 02 Oct 2023 07:50:06 +0000
Received: by outflank-mailman (input) for mailman id 611144;
 Mon, 02 Oct 2023 07:50: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=uL8T=FQ=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qnDgr-0006dn-CO
 for xen-devel@lists.xenproject.org; Mon, 02 Oct 2023 07:50:05 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 4aface3c-60f8-11ee-9b0d-b553b5be7939;
 Mon, 02 Oct 2023 09:50:02 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id DC7B84EE073E;
 Mon,  2 Oct 2023 09:50: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: 4aface3c-60f8-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,
	Henry.Wang@arm.com,
	Nicola Vetrini <nicola.vetrini@bugseng.com>,
	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>
Subject: [XEN PATCH 1/7] xen: add declarations for variables where needed
Date: Mon,  2 Oct 2023 09:49:44 +0200
Message-Id: <357a35c3035d0f8659a64d767791bc41d57494d3.1696232393.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1696232393.git.nicola.vetrini@bugseng.com>
References: <cover.1696232393.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Some variables with external linkage used in C code do not have
a visible declaration where they are defined. Providing such
declaration also resolves violations of MISRA C:2012 Rule 8.4.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
---
 xen/arch/arm/include/asm/setup.h  |  3 +++
 xen/arch/arm/include/asm/smp.h    |  3 +++
 xen/arch/x86/cpu/mcheck/mce.c     |  6 +++---
 xen/arch/x86/include/asm/setup.h  |  3 +++
 xen/arch/x86/irq.c                |  2 +-
 xen/arch/x86/platform_hypercall.c |  3 ---
 xen/common/symbols.c              | 17 -----------------
 xen/include/xen/hypercall.h       |  3 +++
 xen/include/xen/symbols.h         | 18 ++++++++++++++++++
 9 files changed, 34 insertions(+), 24 deletions(-)

diff --git a/xen/arch/arm/include/asm/setup.h b/xen/arch/arm/include/asm/setup.h
index b8866c20f462..8806a74b216d 100644
--- a/xen/arch/arm/include/asm/setup.h
+++ b/xen/arch/arm/include/asm/setup.h
@@ -183,9 +183,12 @@ int map_range_to_domain(const struct dt_device_node *dev,
 extern lpae_t boot_pgtable[XEN_PT_LPAE_ENTRIES];
 
 #ifdef CONFIG_ARM_64
+extern lpae_t boot_first[XEN_PT_LPAE_ENTRIES];
 extern lpae_t boot_first_id[XEN_PT_LPAE_ENTRIES];
 #endif
+extern lpae_t boot_second[XEN_PT_LPAE_ENTRIES];
 extern lpae_t boot_second_id[XEN_PT_LPAE_ENTRIES];
+extern lpae_t boot_third[XEN_PT_LPAE_ENTRIES * XEN_NR_ENTRIES(2)];
 extern lpae_t boot_third_id[XEN_PT_LPAE_ENTRIES];
 
 /* Find where Xen will be residing at runtime and return a PT entry */
diff --git a/xen/arch/arm/include/asm/smp.h b/xen/arch/arm/include/asm/smp.h
index 4fabdf5310d8..28bf24a01d95 100644
--- a/xen/arch/arm/include/asm/smp.h
+++ b/xen/arch/arm/include/asm/smp.h
@@ -6,6 +6,9 @@
 #include <asm/current.h>
 #endif
 
+extern struct init_info init_data;
+extern unsigned long smp_up_cpu;
+
 DECLARE_PER_CPU(cpumask_var_t, cpu_sibling_mask);
 DECLARE_PER_CPU(cpumask_var_t, cpu_core_mask);
 
diff --git a/xen/arch/x86/cpu/mcheck/mce.c b/xen/arch/x86/cpu/mcheck/mce.c
index 6141b7eb9cf1..e855f958030d 100644
--- a/xen/arch/x86/cpu/mcheck/mce.c
+++ b/xen/arch/x86/cpu/mcheck/mce.c
@@ -1682,13 +1682,13 @@ long do_mca(XEN_GUEST_HANDLE_PARAM(xen_mc_t) u_xen_mc)
     return ret;
 }
 
-int mcinfo_dumpped;
+static int mcinfo_dumped;
 static int cf_check x86_mcinfo_dump_panic(mctelem_cookie_t mctc)
 {
     struct mc_info *mcip = mctelem_dataptr(mctc);
 
     x86_mcinfo_dump(mcip);
-    mcinfo_dumpped++;
+    mcinfo_dumped++;
 
     return 0;
 }
@@ -1702,7 +1702,7 @@ static void mc_panic_dump(void)
     for_each_online_cpu(cpu)
         mctelem_process_deferred(cpu, x86_mcinfo_dump_panic,
                                  mctelem_has_deferred_lmce(cpu));
-    dprintk(XENLOG_ERR, "End dump mc_info, %x mcinfo dumped\n", mcinfo_dumpped);
+    dprintk(XENLOG_ERR, "End dump mc_info, %x mcinfo dumped\n", mcinfo_dumped);
 }
 
 void mc_panic(const char *s)
diff --git a/xen/arch/x86/include/asm/setup.h b/xen/arch/x86/include/asm/setup.h
index dfdd9e555149..3c27fe915ed4 100644
--- a/xen/arch/x86/include/asm/setup.h
+++ b/xen/arch/x86/include/asm/setup.h
@@ -13,8 +13,11 @@ extern char __2M_rwdata_start[], __2M_rwdata_end[];
 extern unsigned long xenheap_initial_phys_start;
 extern uint64_t boot_tsc_stamp;
 
+extern char cpu0_stack[STACK_SIZE];
 extern void *stack_start;
 
+extern unsigned long cr4_pv32_mask;
+
 void early_cpu_init(void);
 void early_time_init(void);
 
diff --git a/xen/arch/x86/irq.c b/xen/arch/x86/irq.c
index 6abfd8162120..604dba94b052 100644
--- a/xen/arch/x86/irq.c
+++ b/xen/arch/x86/irq.c
@@ -43,7 +43,7 @@ int __read_mostly opt_irq_vector_map = OPT_IRQ_VECTOR_MAP_DEFAULT;
 static unsigned char __read_mostly irq_max_guests;
 integer_param("irq-max-guests", irq_max_guests);
 
-vmask_t global_used_vector_map;
+static vmask_t global_used_vector_map;
 
 struct irq_desc __read_mostly *irq_desc = NULL;
 
diff --git a/xen/arch/x86/platform_hypercall.c b/xen/arch/x86/platform_hypercall.c
index 9469de9045c7..e4dbec73d784 100644
--- a/xen/arch/x86/platform_hypercall.c
+++ b/xen/arch/x86/platform_hypercall.c
@@ -36,9 +36,6 @@
 #include "cpu/mtrr/mtrr.h"
 #include <xsm/xsm.h>
 
-/* Declarations for items shared with the compat mode handler. */
-extern spinlock_t xenpf_lock;
-
 #define RESOURCE_ACCESS_MAX_ENTRIES 3
 struct resource_access {
     unsigned int nr_done;
diff --git a/xen/common/symbols.c b/xen/common/symbols.c
index 691e61792506..7c3514c65f2e 100644
--- a/xen/common/symbols.c
+++ b/xen/common/symbols.c
@@ -21,23 +21,6 @@
 #include <xen/guest_access.h>
 #include <xen/errno.h>
 
-#ifdef SYMBOLS_ORIGIN
-extern const unsigned int symbols_offsets[];
-#define symbols_address(n) (SYMBOLS_ORIGIN + symbols_offsets[n])
-#else
-extern const unsigned long symbols_addresses[];
-#define symbols_address(n) symbols_addresses[n]
-#endif
-extern const unsigned int symbols_num_syms;
-extern const u8 symbols_names[];
-
-extern const struct symbol_offset symbols_sorted_offsets[];
-
-extern const u8 symbols_token_table[];
-extern const u16 symbols_token_index[];
-
-extern const unsigned int symbols_markers[];
-
 /* expand a compressed symbol data into the resulting uncompressed string,
    given the offset to where the symbol is in the compressed stream */
 static unsigned int symbols_expand_symbol(unsigned int off, char *result)
diff --git a/xen/include/xen/hypercall.h b/xen/include/xen/hypercall.h
index f307dfb59760..12de5a69b5b1 100644
--- a/xen/include/xen/hypercall.h
+++ b/xen/include/xen/hypercall.h
@@ -24,6 +24,9 @@
 /* Needs to be after asm/hypercall.h. */
 #include <xen/hypercall-defs.h>
 
+/* Declarations for items shared with the compat mode handler. */
+extern spinlock_t xenpf_lock;
+
 extern long
 arch_do_domctl(
     struct xen_domctl *domctl, struct domain *d,
diff --git a/xen/include/xen/symbols.h b/xen/include/xen/symbols.h
index 20bbb28ef226..92540409265e 100644
--- a/xen/include/xen/symbols.h
+++ b/xen/include/xen/symbols.h
@@ -33,4 +33,22 @@ struct symbol_offset {
     uint32_t stream; /* .. in the compressed stream.*/
     uint32_t addr;   /* .. and in the fixed size address array. */
 };
+
+#ifdef SYMBOLS_ORIGIN
+extern const unsigned int symbols_offsets[];
+#define symbols_address(n) (SYMBOLS_ORIGIN + symbols_offsets[n])
+#else
+extern const unsigned long symbols_addresses[];
+#define symbols_address(n) symbols_addresses[n]
+#endif
+extern const unsigned int symbols_num_syms;
+extern const u8 symbols_names[];
+
+extern const struct symbol_offset symbols_sorted_offsets[];
+
+extern const u8 symbols_token_table[];
+extern const u16 symbols_token_index[];
+
+extern const unsigned int symbols_markers[];
+
 #endif /*_XEN_SYMBOLS_H*/
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Mon Oct 02 07:50:09 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 07:50:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611145.950593 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnDgu-0007Jk-4H; Mon, 02 Oct 2023 07:50:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611145.950593; Mon, 02 Oct 2023 07:50: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 1qnDgu-0007JX-0d; Mon, 02 Oct 2023 07:50:08 +0000
Received: by outflank-mailman (input) for mailman id 611145;
 Mon, 02 Oct 2023 07:50: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=uL8T=FQ=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qnDgs-0006dn-0d
 for xen-devel@lists.xenproject.org; Mon, 02 Oct 2023 07:50:06 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 4bcd8670-60f8-11ee-9b0d-b553b5be7939;
 Mon, 02 Oct 2023 09:50:03 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id 741074EE0C87;
 Mon,  2 Oct 2023 09:50: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: 4bcd8670-60f8-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,
	Henry.Wang@arm.com,
	Nicola Vetrini <nicola.vetrini@bugseng.com>,
	Wei Liu <wl@xen.org>
Subject: [XEN PATCH 3/7] x86: add deviation comments for  asm-only functions
Date: Mon,  2 Oct 2023 09:49:46 +0200
Message-Id: <cf9012d5e4fbe514e9cce3f0074b1a87df505bc0.1696232393.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1696232393.git.nicola.vetrini@bugseng.com>
References: <cover.1696232393.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

As stated in rules.rst, functions used only in asm code
are allowed to have no prior declaration visible when being
defined, hence these functions are deviated.
This also fixes violations of MISRA C:2012 Rule 8.4.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
---
 xen/arch/x86/hvm/svm/intr.c      | 1 +
 xen/arch/x86/hvm/svm/nestedsvm.c | 1 +
 xen/arch/x86/hvm/svm/svm.c       | 2 ++
 xen/arch/x86/traps.c             | 1 +
 xen/arch/x86/x86_64/traps.c      | 1 +
 5 files changed, 6 insertions(+)

diff --git a/xen/arch/x86/hvm/svm/intr.c b/xen/arch/x86/hvm/svm/intr.c
index 192e17ebbfbb..bd9dc560bbc6 100644
--- a/xen/arch/x86/hvm/svm/intr.c
+++ b/xen/arch/x86/hvm/svm/intr.c
@@ -123,6 +123,7 @@ static void svm_enable_intr_window(struct vcpu *v, struct hvm_intack intack)
         vmcb, general1_intercepts | GENERAL1_INTERCEPT_VINTR);
 }
 
+/* SAF-1-safe */
 void svm_intr_assist(void)
 {
     struct vcpu *v = current;
diff --git a/xen/arch/x86/hvm/svm/nestedsvm.c b/xen/arch/x86/hvm/svm/nestedsvm.c
index a09b6abaaeaf..c80d59e0728e 100644
--- a/xen/arch/x86/hvm/svm/nestedsvm.c
+++ b/xen/arch/x86/hvm/svm/nestedsvm.c
@@ -1441,6 +1441,7 @@ nestedsvm_vcpu_vmexit(struct vcpu *v, struct cpu_user_regs *regs,
 }
 
 /* VCPU switch */
+/* SAF-1-safe */
 void nsvm_vcpu_switch(void)
 {
     struct cpu_user_regs *regs = guest_cpu_user_regs();
diff --git a/xen/arch/x86/hvm/svm/svm.c b/xen/arch/x86/hvm/svm/svm.c
index beb076ea8d62..b9fabd45a119 100644
--- a/xen/arch/x86/hvm/svm/svm.c
+++ b/xen/arch/x86/hvm/svm/svm.c
@@ -1044,6 +1044,7 @@ static void noreturn cf_check svm_do_resume(void)
     reset_stack_and_jump(svm_asm_do_resume);
 }
 
+/* SAF-1-safe */
 void svm_vmenter_helper(void)
 {
     const struct cpu_user_regs *regs = guest_cpu_user_regs();
@@ -2574,6 +2575,7 @@ const struct hvm_function_table * __init start_svm(void)
     return &svm_function_table;
 }
 
+/* SAF-1-safe */
 void svm_vmexit_handler(void)
 {
     struct cpu_user_regs *regs = guest_cpu_user_regs();
diff --git a/xen/arch/x86/traps.c b/xen/arch/x86/traps.c
index 0a005f088bca..f27ddb728b2c 100644
--- a/xen/arch/x86/traps.c
+++ b/xen/arch/x86/traps.c
@@ -2260,6 +2260,7 @@ void asm_domain_crash_synchronous(unsigned long addr)
 }
 
 #ifdef CONFIG_DEBUG
+/* SAF-1-safe */
 void check_ist_exit(const struct cpu_user_regs *regs, bool ist_exit)
 {
     const unsigned int ist_mask =
diff --git a/xen/arch/x86/x86_64/traps.c b/xen/arch/x86/x86_64/traps.c
index f4d17b483032..bcb7559b21c3 100644
--- a/xen/arch/x86/x86_64/traps.c
+++ b/xen/arch/x86/x86_64/traps.c
@@ -266,6 +266,7 @@ void show_page_walk(unsigned long addr)
            l1_table_offset(addr), l1e_get_intpte(l1e), pfn);
 }
 
+/* SAF-1-safe */
 void do_double_fault(struct cpu_user_regs *regs)
 {
     unsigned int cpu;
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Mon Oct 02 07:50:11 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 07:50:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611149.950628 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnDgx-0008Bz-Fr; Mon, 02 Oct 2023 07:50:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611149.950628; Mon, 02 Oct 2023 07:50: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 1qnDgx-0008B4-9U; Mon, 02 Oct 2023 07:50:11 +0000
Received: by outflank-mailman (input) for mailman id 611149;
 Mon, 02 Oct 2023 07:50: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=uL8T=FQ=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qnDgw-0006dn-1N
 for xen-devel@lists.xenproject.org; Mon, 02 Oct 2023 07:50:10 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 4dd87652-60f8-11ee-9b0d-b553b5be7939;
 Mon, 02 Oct 2023 09:50:07 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id AA5634EE073E;
 Mon,  2 Oct 2023 09:50: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: 4dd87652-60f8-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,
	Henry.Wang@arm.com,
	Nicola Vetrini <nicola.vetrini@bugseng.com>,
	Tamas K Lengyel <tamas@tklengyel.com>,
	Alexandru Isaila <aisaila@bitdefender.com>,
	Petre Pircalabu <ppircalabu@bitdefender.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Wei Liu <wl@xen.org>
Subject: [XEN PATCH 7/7] x86/mem_access: make function static
Date: Mon,  2 Oct 2023 09:49:50 +0200
Message-Id: <f51f4728afe75eda0382c902ebc703c7d386559b.1696232393.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1696232393.git.nicola.vetrini@bugseng.com>
References: <cover.1696232393.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The function is used only within this file, and therefore can be static.

No functional change.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
---
 xen/arch/x86/mm/mem_access.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/xen/arch/x86/mm/mem_access.c b/xen/arch/x86/mm/mem_access.c
index c472fa1ee58b..78633d335d72 100644
--- a/xen/arch/x86/mm/mem_access.c
+++ b/xen/arch/x86/mm/mem_access.c
@@ -249,7 +249,7 @@ bool p2m_mem_access_check(paddr_t gpa, unsigned long gla,
     return (p2ma != p2m_access_n2rwx);
 }
 
-int p2m_set_altp2m_mem_access(struct domain *d, struct p2m_domain *hp2m,
+static int p2m_set_altp2m_mem_access(struct domain *d, struct p2m_domain *hp2m,
                               struct p2m_domain *ap2m, p2m_access_t a,
                               gfn_t gfn)
 {
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Mon Oct 02 07:50:11 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 07:50:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611148.950623 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnDgx-00088l-2U; Mon, 02 Oct 2023 07:50:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611148.950623; Mon, 02 Oct 2023 07:50: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 1qnDgw-00088W-Vg; Mon, 02 Oct 2023 07:50:10 +0000
Received: by outflank-mailman (input) for mailman id 611148;
 Mon, 02 Oct 2023 07:50: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=uL8T=FQ=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qnDgv-0006dn-1o
 for xen-devel@lists.xenproject.org; Mon, 02 Oct 2023 07:50:09 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 4d4b3207-60f8-11ee-9b0d-b553b5be7939;
 Mon, 02 Oct 2023 09:50:06 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id CA0AB4EE0C89;
 Mon,  2 Oct 2023 09:50: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: 4d4b3207-60f8-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,
	Henry.Wang@arm.com,
	Nicola Vetrini <nicola.vetrini@bugseng.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Julien Grall <julien@xen.org>,
	Wei Liu <wl@xen.org>
Subject: [XEN PATCH 6/7] xen/console: make function static inline
Date: Mon,  2 Oct 2023 09:49:49 +0200
Message-Id: <c4f778440688a1e1f81cc149aca8dd5248895f68.1696232393.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1696232393.git.nicola.vetrini@bugseng.com>
References: <cover.1696232393.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The definition of 'consoled_guest_tx' can be static inline,
thereby fixing a violation of MISRA C:2012 Rule 8.4.

Fixes: 5ef49f185c2d ("x86/pv-shim: shadow PV console's page for L2 DomU")
Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
---
 xen/include/xen/consoled.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/xen/include/xen/consoled.h b/xen/include/xen/consoled.h
index fd5d220a8aca..e943d8d48f7b 100644
--- a/xen/include/xen/consoled.h
+++ b/xen/include/xen/consoled.h
@@ -12,7 +12,7 @@ size_t consoled_guest_tx(char c);
 
 #else
 
-size_t consoled_guest_tx(char c) { return 0; }
+static inline size_t consoled_guest_tx(char c) { return 0; }
 
 #endif /* !CONFIG_PV_SHIM */
 #endif /* __XEN_CONSOLED_H__ */
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Mon Oct 02 07:57:43 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 07:57:43 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611187.950644 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnDo8-0003gL-Bw; Mon, 02 Oct 2023 07:57:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611187.950644; Mon, 02 Oct 2023 07:57: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 1qnDo8-0003gE-77; Mon, 02 Oct 2023 07:57:36 +0000
Received: by outflank-mailman (input) for mailman id 611187;
 Mon, 02 Oct 2023 07:57: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=MVD8=FQ=suse.cz=jack@srs-se1.protection.inumbo.net>)
 id 1qnDo7-0003fi-8n
 for xen-devel@lists.xenproject.org; Mon, 02 Oct 2023 07:57:35 +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 5850ed9e-60f9-11ee-878e-cb3800f73035;
 Mon, 02 Oct 2023 09:57:34 +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 AB8121F459;
 Mon,  2 Oct 2023 07:57:32 +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 83FA513434;
 Mon,  2 Oct 2023 07:57:32 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap2.suse-dmz.suse.de with ESMTPSA id JLsgIOx3GmUuEgAAMHmgww
 (envelope-from <jack@suse.cz>); Mon, 02 Oct 2023 07:57:32 +0000
Received: by quack3.suse.cz (Postfix, from userid 1000)
 id 27D44A07C9; Mon,  2 Oct 2023 09:57: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: 5850ed9e-60f9-11ee-878e-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.cz; s=susede2_rsa;
	t=1696233452; 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;
	bh=HRtvvsbDRmaIGA2qlEwuFNnN4SG9to1RwhMyTnDS1Ek=;
	b=AelUG9FSlQyUcQTA9I9qRJmPzMA6mvk2OLx4Qv2PacqmgU2FkeI54uQfwuwk8GDISDrHf1
	K6okkr5Yua+jK8r2TTOukY7745vay4e4z1caiTsHAigkH18O5VWdMY9s+0PKMe8/Ta1ITc
	H4lySULw9TgNQsjwAFd513U/tj8Iifc=
DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=suse.cz;
	s=susede2_ed25519; t=1696233452;
	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;
	bh=HRtvvsbDRmaIGA2qlEwuFNnN4SG9to1RwhMyTnDS1Ek=;
	b=4yX5F6ZD5YaXQ1SgLuHClpbWfxc1xKg7esoSW59wSh/oO7HSeTROmd590v4TgEevJu81R5
	RAceDQWhH8NjA0AQ==
Date: Mon, 2 Oct 2023 09:57:32 +0200
From: Jan Kara <jack@suse.cz>
To: Christian Brauner <brauner@kernel.org>
Cc: Jan Kara <jack@suse.cz>, 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: <20231002075732.4c5oslpabrmw3niz@quack3>
References: <20230818123232.2269-1-jack@suse.cz>
 <20230927-prahlen-reintreten-93706074e58d@brauner>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <20230927-prahlen-reintreten-93706074e58d@brauner>

On Wed 27-09-23 18:21:19, Christian Brauner wrote:
> 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.

Thanks for picking patches up! I've checked the branch and it looks good to
me. 

								Honza

> 
> ---
> 
> 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
-- 
Jan Kara <jack@suse.com>
SUSE Labs, CR


From xen-devel-bounces@lists.xenproject.org Mon Oct 02 08:18:12 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 08:18:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611204.950653 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnE7n-0000VE-GW; Mon, 02 Oct 2023 08:17:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611204.950653; Mon, 02 Oct 2023 08: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 1qnE7n-0000V7-Ck; Mon, 02 Oct 2023 08:17:55 +0000
Received: by outflank-mailman (input) for mailman id 611204;
 Mon, 02 Oct 2023 08: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=ZW1X=FQ=gmail.com=jirislaby@srs-se1.protection.inumbo.net>)
 id 1qnE7m-0000Uz-2u
 for xen-devel@lists.xenproject.org; Mon, 02 Oct 2023 08:17:54 +0000
Received: from mail-wr1-f54.google.com (mail-wr1-f54.google.com
 [209.85.221.54]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 2d18bb8c-60fc-11ee-9b0d-b553b5be7939;
 Mon, 02 Oct 2023 10:17:50 +0200 (CEST)
Received: by mail-wr1-f54.google.com with SMTP id
 ffacd0b85a97d-3248ac76acbso3485536f8f.1
 for <xen-devel@lists.xenproject.org>; Mon, 02 Oct 2023 01:17:50 -0700 (PDT)
Received: from [192.168.1.58] (185-219-167-24-static.vivo.cz. [185.219.167.24])
 by smtp.gmail.com with ESMTPSA id
 q12-20020adff94c000000b003233a31a467sm7157761wrr.34.2023.10.02.01.17.47
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Mon, 02 Oct 2023 01:17: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: 2d18bb8c-60fc-11ee-9b0d-b553b5be7939
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1696234669; x=1696839469;
        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=XRQOEO20SFPJZYkkrpyqxPYtIEQ0W/EOrV8PhwlhHg8=;
        b=sLy59E5Gc8oFSpyth+gAjcs1BhpjeKMvmu3FcaVnzfYs8jaqFdCIsgxotPYODhms3s
         tL9LU9s7W81KwXloZHO+cUnOotevx7xvS0unySdB3AU3EHEucDctTkl2pfPWKN1YPQYm
         vKpTNDtp4Vz0lY+92sGjFG8fpxhMnwgVYJpvJMWcMPFUJpNezhEMexsKEJCxfgNGhhL3
         1K8sw6bdBRNADturS+2tfTZWqYY0CWCgaMeVP8WYbsePOPQVzTnuc+mlTlyIwudhklpt
         gEX2MoEv53EoUvbzxwWABNDlbZN3mE4+lkXrx0SVpencx8fkfCxByouSGMBL2MjQf56V
         7izw==
X-Gm-Message-State: AOJu0YwwMCsY8U4+gOwML3rLXiqwB5q4Uyn/SDcssTyG838LniKmGBYf
	yiAeq/Ks8ODu7yqUHAsDKa4=
X-Google-Smtp-Source: AGHT+IE6HrD1SP43omFCmnfeDuQuwJDDr5YhRWwWimOS8yZlxQzIOJV17834hBNzEEyMX4qsTnK7jw==
X-Received: by 2002:a5d:44cb:0:b0:317:df82:2868 with SMTP id z11-20020a5d44cb000000b00317df822868mr9989967wrr.26.1696234669408;
        Mon, 02 Oct 2023 01:17:49 -0700 (PDT)
Message-ID: <63e7a4fe-58c9-470e-84c2-dd92e76462ae@kernel.org>
Date: Mon, 2 Oct 2023 10:17:46 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH 04/15] tty: 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>,
 Juergen Gross <jgross@suse.com>, Stefano Stabellini
 <sstabellini@kernel.org>,
 Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>,
 "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
References: <20230928-jag-sysctl_remove_empty_elem_drivers-v1-0-e59120fca9f9@samsung.com>
 <20230928-jag-sysctl_remove_empty_elem_drivers-v1-4-e59120fca9f9@samsung.com>
From: Jiri Slaby <jirislaby@kernel.org>
Autocrypt: addr=jirislaby@kernel.org; keydata=
 xsFNBE6S54YBEACzzjLwDUbU5elY4GTg/NdotjA0jyyJtYI86wdKraekbNE0bC4zV+ryvH4j
 rrcDwGs6tFVrAHvdHeIdI07s1iIx5R/ndcHwt4fvI8CL5PzPmn5J+h0WERR5rFprRh6axhOk
 rSD5CwQl19fm4AJCS6A9GJtOoiLpWn2/IbogPc71jQVrupZYYx51rAaHZ0D2KYK/uhfc6neJ
 i0WqPlbtIlIrpvWxckucNu6ZwXjFY0f3qIRg3Vqh5QxPkojGsq9tXVFVLEkSVz6FoqCHrUTx
 wr+aw6qqQVgvT/McQtsI0S66uIkQjzPUrgAEtWUv76rM4ekqL9stHyvTGw0Fjsualwb0Gwdx
 ReTZzMgheAyoy/umIOKrSEpWouVoBt5FFSZUyjuDdlPPYyPav+hpI6ggmCTld3u2hyiHji2H
 cDpcLM2LMhlHBipu80s9anNeZhCANDhbC5E+NZmuwgzHBcan8WC7xsPXPaiZSIm7TKaVoOcL
 9tE5aN3jQmIlrT7ZUX52Ff/hSdx/JKDP3YMNtt4B0cH6ejIjtqTd+Ge8sSttsnNM0CQUkXps
 w98jwz+Lxw/bKMr3NSnnFpUZaxwji3BC9vYyxKMAwNelBCHEgS/OAa3EJoTfuYOK6wT6nadm
 YqYjwYbZE5V/SwzMbpWu7Jwlvuwyfo5mh7w5iMfnZE+vHFwp/wARAQABzSFKaXJpIFNsYWJ5
 IDxqaXJpc2xhYnlAa2VybmVsLm9yZz7CwXcEEwEIACEFAlW3RUwCGwMFCwkIBwIGFQgJCgsC
 BBYCAwECHgECF4AACgkQvSWxBAa0cEnVTg//TQpdIAr8Tn0VAeUjdVIH9XCFw+cPSU+zMSCH
 eCZoA/N6gitEcnvHoFVVM7b3hK2HgoFUNbmYC0RdcSc80pOF5gCnACSP9XWHGWzeKCARRcQR
 4s5YD8I4VV5hqXcKo2DFAtIOVbHDW+0okOzcecdasCakUTr7s2fXz97uuoc2gIBB7bmHUGAH
 XQXHvdnCLjDjR+eJN+zrtbqZKYSfj89s/ZHn5Slug6w8qOPT1sVNGG+eWPlc5s7XYhT9z66E
 l5C0rG35JE4PhC+tl7BaE5IwjJlBMHf/cMJxNHAYoQ1hWQCKOfMDQ6bsEr++kGUCbHkrEFwD
 UVA72iLnnnlZCMevwE4hc0zVhseWhPc/KMYObU1sDGqaCesRLkE3tiE7X2cikmj/qH0CoMWe
 gjnwnQ2qVJcaPSzJ4QITvchEQ+tbuVAyvn9H+9MkdT7b7b2OaqYsUP8rn/2k1Td5zknUz7iF
 oJ0Z9wPTl6tDfF8phaMIPISYrhceVOIoL+rWfaikhBulZTIT5ihieY9nQOw6vhOfWkYvv0Dl
 o4GRnb2ybPQpfEs7WtetOsUgiUbfljTgILFw3CsPW8JESOGQc0Pv8ieznIighqPPFz9g+zSu
 Ss/rpcsqag5n9rQp/H3WW5zKUpeYcKGaPDp/vSUovMcjp8USIhzBBrmI7UWAtuedG9prjqfO
 wU0ETpLnhgEQAM+cDWLL+Wvc9cLhA2OXZ/gMmu7NbYKjfth1UyOuBd5emIO+d4RfFM02XFTI
 t4MxwhAryhsKQQcA4iQNldkbyeviYrPKWjLTjRXT5cD2lpWzr+Jx7mX7InV5JOz1Qq+P+nJW
 YIBjUKhI03ux89p58CYil24Zpyn2F5cX7U+inY8lJIBwLPBnc9Z0An/DVnUOD+0wIcYVnZAK
 DiIXODkGqTg3fhZwbbi+KAhtHPFM2fGw2VTUf62IHzV+eBSnamzPOBc1XsJYKRo3FHNeLuS8
 f4wUe7bWb9O66PPFK/RkeqNX6akkFBf9VfrZ1rTEKAyJ2uqf1EI1olYnENk4+00IBa+BavGQ
 8UW9dGW3nbPrfuOV5UUvbnsSQwj67pSdrBQqilr5N/5H9z7VCDQ0dhuJNtvDSlTf2iUFBqgk
 3smln31PUYiVPrMP0V4ja0i9qtO/TB01rTfTyXTRtqz53qO5dGsYiliJO5aUmh8swVpotgK4
 /57h3zGsaXO9PGgnnAdqeKVITaFTLY1ISg+Ptb4KoliiOjrBMmQUSJVtkUXMrCMCeuPDGHo7
 39Xc75lcHlGuM3yEB//htKjyprbLeLf1y4xPyTeeF5zg/0ztRZNKZicgEmxyUNBHHnBKHQxz
 1j+mzH0HjZZtXjGu2KLJ18G07q0fpz2ZPk2D53Ww39VNI/J9ABEBAAHCwV8EGAECAAkFAk6S
 54YCGwwACgkQvSWxBAa0cEk3tRAAgO+DFpbyIa4RlnfpcW17AfnpZi9VR5+zr496n2jH/1ld
 wRO/S+QNSA8qdABqMb9WI4BNaoANgcg0AS429Mq0taaWKkAjkkGAT7mD1Q5PiLr06Y/+Kzdr
 90eUVneqM2TUQQbK+Kh7JwmGVrRGNqQrDk+gRNvKnGwFNeTkTKtJ0P8jYd7P1gZb9Fwj9YLx
 jhn/sVIhNmEBLBoI7PL+9fbILqJPHgAwW35rpnq4f/EYTykbk1sa13Tav6btJ+4QOgbcezWI
 wZ5w/JVfEJW9JXp3BFAVzRQ5nVrrLDAJZ8Y5ioWcm99JtSIIxXxt9FJaGc1Bgsi5K/+dyTKL
 wLMJgiBzbVx8G+fCJJ9YtlNOPWhbKPlrQ8+AY52Aagi9WNhe6XfJdh5g6ptiOILm330mkR4g
 W6nEgZVyIyTq3ekOuruftWL99qpP5zi+eNrMmLRQx9iecDNgFr342R9bTDlb1TLuRb+/tJ98
 f/bIWIr0cqQmqQ33FgRhrG1+Xml6UXyJ2jExmlO8JljuOGeXYh6ZkIEyzqzffzBLXZCujlYQ
 DFXpyMNVJ2ZwPmX2mWEoYuaBU0JN7wM+/zWgOf2zRwhEuD3A2cO2PxoiIfyUEfB9SSmffaK/
 S4xXoB6wvGENZ85Hg37C7WDNdaAt6Xh2uQIly5grkgvWppkNy4ZHxE+jeNsU7tg=
In-Reply-To: <20230928-jag-sysctl_remove_empty_elem_drivers-v1-4-e59120fca9f9@samsung.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 28. 09. 23, 15:21, 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 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,
> -	},
> -	{ }
> +	}

Why to remove the comma? One would need to add one when adding a new entry?

thanks,
-- 
js
suse labs



From xen-devel-bounces@lists.xenproject.org Mon Oct 02 08:27:01 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 08:27:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611210.950663 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnEGV-00038r-DH; Mon, 02 Oct 2023 08:26:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611210.950663; Mon, 02 Oct 2023 08:26: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 1qnEGV-00038k-AZ; Mon, 02 Oct 2023 08:26:55 +0000
Received: by outflank-mailman (input) for mailman id 611210;
 Mon, 02 Oct 2023 08:26: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 1qnEGU-00038e-4P
 for xen-devel@lists.xenproject.org; Mon, 02 Oct 2023 08:26: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 1qnEGT-0006zj-0T; Mon, 02 Oct 2023 08:26:53 +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 1qnEGS-0004u7-QA; Mon, 02 Oct 2023 08:26: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=tvN8a4t44Oiz+TA9crQL3Z1ZoAXMbqbnAUCR6JxBNaM=; b=U/qxIswxFHsYZmX4V1JDBsCxQA
	SxR0XiOCzu+gZRiASelNZiz+fQmQrEitqdK0fdNSDedlk/TEnQnkTyb4CDQaJBb6GElvvByJXWkSs
	1aUeu6ff1f2qR9Li3hjny9Ch70UaAW2gwesJAKYC2htclWapydQXF9UrnYgYK6Ma3oMQ=;
Message-ID: <bc2a043a-9836-429b-88bb-6bedda5343bf@xen.org>
Date: Mon, 2 Oct 2023 09:26:50 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v2 3/5] arm/dom0less: put dom0less feature code in a
 separate module
Content-Language: en-GB
To: Stefano Stabellini <sstabellini@kernel.org>,
 Luca Fancellu <Luca.Fancellu@arm.com>
Cc: Xen-devel <xen-devel@lists.xenproject.org>, Wei Chen <Wei.Chen@arm.com>,
 Bertrand Marquis <Bertrand.Marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.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>
 <725342EA-730F-4961-88A4-43EC0CBAD5BA@arm.com>
 <alpine.DEB.2.22.394.2309291242570.2348112@ubuntu-linux-20-04-desktop>
From: Julien Grall <julien@xen.org>
In-Reply-To: <alpine.DEB.2.22.394.2309291242570.2348112@ubuntu-linux-20-04-desktop>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

Hi Stefano,

On 29/09/2023 20:48, Stefano Stabellini wrote:
> 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?

Looking at the name of the functions, I would expect that we would need 
another code movement in the future to move back Arm specific function 
under arch/arm/. So we would end up with two code movement as well.

I would prefer if we wait until RISC-V/x86 needs it so we don't 
unnecessarily move Arm specific code in common/.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Mon Oct 02 08:43:41 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 08:43:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611215.950672 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnEWY-0007vS-PG; Mon, 02 Oct 2023 08:43:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611215.950672; Mon, 02 Oct 2023 08: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 1qnEWY-0007vL-MC; Mon, 02 Oct 2023 08:43:30 +0000
Received: by outflank-mailman (input) for mailman id 611215;
 Mon, 02 Oct 2023 08:43: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 1qnEWY-0007vF-2i
 for xen-devel@lists.xenproject.org; Mon, 02 Oct 2023 08:43: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 1qnEWW-0007Py-Np; Mon, 02 Oct 2023 08:43: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 1qnEWW-0005bW-GT; Mon, 02 Oct 2023 08:43: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=KZTZ5StwX/lyBxdwf/CA/WEv6ejGNlH5tmDFkA+CRUo=; b=VIU5hkhvJYwRhfc8KimJbb8CqB
	ecOMyvjW7uCAgv8RjUo/6BbaAOV8Vt69lt9phfYiCZivSZYPPSm7+4GMrFNZ8fkayLsab9CiJyH1N
	M6EeAni7hBuuUQ7PbEl+4LcfGv2B75ep9dzalCS9W+i2Q5Q0H16wjEqW+maZIGB7eLlQ=;
Message-ID: <bee6b147-214d-4f8b-9a50-e9321ea29444@xen.org>
Date: Mon, 2 Oct 2023 09:43:26 +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: Henry Wang <Henry.Wang@arm.com>, Juergen Gross <jgross@suse.com>
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>
References: <20230929075857.87092-1-julien@xen.org>
 <20230929075857.87092-3-julien@xen.org>
 <a0d6f669-1e1d-47ec-9670-a9e5c3d7f130@suse.com>
 <43F7D136-6C39-42C3-95E7-D1751A7B83D1@arm.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <43F7D136-6C39-42C3-95E7-D1751A7B83D1@arm.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

Hi,

On 29/09/2023 09:07, Henry Wang wrote:
> 
> 
>> On Sep 29, 2023, at 16:04, Juergen Gross <jgross@suse.com> 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"?
> 
> I actually had the same question, but not sure if it really matters so didn’t
> add any comments… Do we have some convention on this? So far I
> have seen “xen”, “XEN” and “Xen” in different contexts.

I don't know if there are any convention. But we usually try to keep 
consistent within the same file.

In this case, the original word was with a uppercase 'x'. So I should 
have kept as-is.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Mon Oct 02 08:45:11 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 08:45:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611219.950683 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnEYA-0008Sx-3s; Mon, 02 Oct 2023 08:45:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611219.950683; Mon, 02 Oct 2023 08:45: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 1qnEYA-0008Sq-0T; Mon, 02 Oct 2023 08:45:10 +0000
Received: by outflank-mailman (input) for mailman id 611219;
 Mon, 02 Oct 2023 08:45: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=qeMD=FQ=samsung.com=j.granados@srs-se1.protection.inumbo.net>)
 id 1qnEY8-0008Si-DY
 for xen-devel@lists.xenproject.org; Mon, 02 Oct 2023 08:45:09 +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 fc1b7dae-60ff-11ee-878e-cb3800f73035;
 Mon, 02 Oct 2023 10:45:06 +0200 (CEST)
Received: from eucas1p1.samsung.com (unknown [182.198.249.206])
 by mailout1.w1.samsung.com (KnoxPortal) with ESMTP id
 20231002084505euoutp01fb9e35bc49f515d59e33424780696c7e~KPe7KjgFR0323303233euoutp01u;
 Mon,  2 Oct 2023 08:45:05 +0000 (GMT)
Received: from eusmges2new.samsung.com (unknown [203.254.199.244]) by
 eucas1p1.samsung.com (KnoxPortal) with ESMTP id
 20231002084505eucas1p115a2ab283972a79272c9757322300ea8~KPe6yvJRk0202102021eucas1p1y;
 Mon,  2 Oct 2023 08:45:05 +0000 (GMT)
Received: from eucas1p2.samsung.com ( [182.198.249.207]) by
 eusmges2new.samsung.com (EUCPMTA) with SMTP id 01.57.11320.0138A156; Mon,  2
 Oct 2023 09:45:04 +0100 (BST)
Received: from eusmtrp2.samsung.com (unknown [182.198.249.139]) by
 eucas1p2.samsung.com (KnoxPortal) with ESMTPA id
 20231002084504eucas1p2e863940ef31a9248d26fbdac6e2f10bd~KPe6NrvJh2499424994eucas1p26;
 Mon,  2 Oct 2023 08:45:04 +0000 (GMT)
Received: from eusmgms2.samsung.com (unknown [182.198.249.180]) by
 eusmtrp2.samsung.com (KnoxPortal) with ESMTP id
 20231002084504eusmtrp2355d41d9c4268753d9081165e45db786~KPe6MOGC-1131111311eusmtrp2J;
 Mon,  2 Oct 2023 08:45:04 +0000 (GMT)
Received: from eusmtip2.samsung.com ( [203.254.199.222]) by
 eusmgms2.samsung.com (EUCPMTA) with SMTP id B4.7B.25043.0138A156; Mon,  2
 Oct 2023 09:45:04 +0100 (BST)
Received: from CAMSVWEXC02.scsc.local (unknown [106.1.227.72]) by
 eusmtip2.samsung.com (KnoxPortal) with ESMTPA id
 20231002084504eusmtip28840686475f95888ee0878a6362b3046~KPe52TrE52171321713eusmtip2Q;
 Mon,  2 Oct 2023 08:45:04 +0000 (GMT)
Received: from localhost (106.110.32.133) by CAMSVWEXC02.scsc.local
 (2002:6a01:e348::6a01:e348) with Microsoft SMTP Server (TLS) id 15.0.1497.2;
 Mon, 2 Oct 2023 09:45:03 +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: fc1b7dae-60ff-11ee-878e-cb3800f73035
DKIM-Filter: OpenDKIM Filter v2.11.0 mailout1.w1.samsung.com 20231002084505euoutp01fb9e35bc49f515d59e33424780696c7e~KPe7KjgFR0323303233euoutp01u
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=samsung.com;
	s=mail20170921; t=1696236305;
	bh=MfG6uvtWqwYS3hUjD7i3Vm3Qw+seaAzqjsgKpcpPTXc=;
	h=Date:From:To:CC:Subject:In-Reply-To:References:From;
	b=MQkPj/YYZojQfQ+LNVfnzf8jz246t0mrUSsC2ovXHcIZ1h/jCmZQNU6FJUOa2rdt4
	 flqjb07+Br/pbjes8R7Xwkc+qgANdNQpKwNTvvUoXPCh7jmyR68DpZYMygCBuqoBtS
	 GcHZmQYQrKxKkAIdZrRktzAyGOCWPDDRKQwf9J2U=
X-AuditID: cbfec7f4-97dff70000022c38-05-651a8310756d
Date: Mon, 2 Oct 2023 10:47:18 +0200
From: Joel Granados <j.granados@samsung.com>
To: Christophe Leroy <christophe.leroy@csgroup.eu>
CC: 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>,
	"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
Message-ID: <20231002084718.bmme7yi4xfs7sw4b@localhost>
MIME-Version: 1.0
Content-Type: multipart/signed; micalg="pgp-sha512";
	protocol="application/pgp-signature"; boundary="22qnx6bxaciji5uu"
Content-Disposition: inline
In-Reply-To: <5fadd85e-f2d7-878c-b709-3523e89dd93a@csgroup.eu>
X-Originating-IP: [106.110.32.133]
X-ClientProxiedBy: CAMSVWEXC01.scsc.local (2002:6a01:e347::6a01:e347) To
	CAMSVWEXC02.scsc.local (2002:6a01:e348::6a01:e348)
X-Brightmail-Tracker: H4sIAAAAAAAAA2VTe1BUdRSe372Xexdq9S4g/lrRMdKcEDel1GOiouPktabGhpwpGaUdvIEl
	i+6CkUghLm95LC9xFVlEHkKtCBsKIThoCwTxGFAegRChpGDSyAqys2tsF8uZ/vvOd77vnPP9
	cUSk4xAjFR1QhPBKhfygG+1AVRqftq1iT0j51c2TAI3d5wmwpBkZ6E8bZeBC428EPKvUkHC2
	TU1BrbocQW329zR0mR7RoK+OJuCucZiBE/mXaLh9hYMzqRUEFHVeQjB0SwrneyoJOJ3diOBs
	ryf8meMK1/Jm5+mCoSUxCNork+1gpPQHBjJmCkjI1EzQ0Fl9lobY3GoE9+qTKEjsvkpDS34S
	A+Ypqx0UNVgJ6Em9iyAhJRaBUecC02azHdQMjSB40jyOILNQBjmTmSQUj+eQUKe9zUDB6WIS
	GoosNJTq/aAu4zsSrjdnzFLWoxB98ikDN8r7CDBPzy6eMqQT3uu4zq73OfNMGuLORHZQnKm3
	leAMF3sJrr+gCnHXnugorko7wHC68lCuuvo4w1UUu3P5NfcJzhK/jusb28SVl8TT3HRxCrlr
	6R4Hr/38wQNHeOWbmz9zCDSc60aHbq4OS42/TkeisRUJyF6E2bfxCZOVTEAOIke2GOGGKTMt
	FJMIX44um+s8Rri/WcM8tww/S0JCowjh+2VJdv+q7tU9mPNXIHzyj6xZv0hEscvw5NB6m5tm
	PXDbeP8/tDPriZPHeJucZGOd8EBZJ7JpnFgOp95vJ21YzK7HEwUFdgKW4KbTI5QNk2wYHsy8
	Q9jmkOwiXGQV2Wh7djNWx6ZTwqFu2DSeZCfgCPyzoY+w7cJs2svYrL7O2LyY3Y4Ng8sFjRN+
	0GCYC+mKn1XlzunTEa6zTjBCUYpw4XETIag2YnXXyJxjK+7IzULC0Hm456FEuHMeTqs8RQq0
	GMfFOArq13HpnXEqFb2mfSGZ9oVk2v+SCbQM92Rm0P+jV+LCvDFSwJuwXv+I0iGmBC3kQ1VB
	AbzKU8F/JVPJg1ShigCZf3BQOZp9vGZrw+RVVPTgL1k9IkSoHi2bNQ+XlbYjKaUIVvBuzuKY
	dhfeUbxf/vVRXhnspww9yKvq0SIR5bZQvHJTk78jGyAP4b/k+UO88nmXENlLIwnxEunh3o5V
	b21tVe9dYPbtSFg+Y14TERVwZktMSP+WTrwrLGrHpOmbiys8pkJkn2gIX7fwtRrNsPoc1+/7
	YUrigihJ1u753nEf7xNJc53fyDHmpe0ZMvqEy7r1HU2v/hTlWlhvkesf+xvsp0v2Sn6/tS1w
	wm/tYl8XH3BqceYVfbqlA8nF4RFxXWHvemQOfuAdueGY5HM/L2n+4oygvTtHR+FyzkR+gHJi
	525J+A6Xldy+jaeWaX6psQ62Zh8+ZtFW1Orny5dEfnshSmzxufHjw8JP+frROJ/phyaPV7xf
	am074nvknWkq1mtxVcI2o6X81ysbhr94T7e2yXzzo5hCd78RPOxGqQLla9xJpUr+Nx9hMbLz
	BAAA
X-Brightmail-Tracker: H4sIAAAAAAAAA2VTe0xTdxT2d2+5LWTMK+3wBnDDhkwmrFKg5eAAx2ay60zcmNnMBsoaveEx
	2rKWOmQzYQPGS6C8HBTIilCLsIE8BwTBIQMUFRDlYRhBBBYGEwwPga6wYllmsv++33e+7zsn
	J+fHwW2MhB0nTBbFKGSSCD5hxerZ6Bp7k4yzY9wGZl+G7qFLGBizOtkwmvUHG0q7H2Gw2ZCJ
	Q2FvPAta42sQtOb9TMD95XkCKpsTMJjqnGBDXEkVAYO/0FCgrsVAP1CFYPyBHVwabsAgP68b
	QeGIOzwpcoBrxaY8rRxup0qhryHdAiYr6tmQs67DITdzgYCB5kICEn9sRjDdnsaC1KFGAm6X
	pLHB8GzDAvRdGxgMq6cQpGQkIujU2sKqwWABLeOTCFZ65hDkXhZA0VIuDmVzRTi0aQbZoMsv
	w6FLbySgojIY2nJ+wuF6T46J2oiBhAtrbLhR8xADw6qp8bO6bOxtMT1w/yhtWM9CdEFsP4te
	HrmL0XVXRjB6VNeE6GsrWhbdpPmdTWtrVHRz87dsurZsP13SMoPRxmQx/XDWl64pTybo1bIM
	/EPHzwQ+CrkqinEMlSujfPmBQnAXCL1B4O7pLRB6eJ086C7iH/DzOcNEhJ1lFAf8PheEVq2P
	EpHtbtG5PYsWsWhmXwqy5FCkJzWxmYZSkBXHhtQharp5w8JccKCqlx5sYy7192AKYRY9RdS4
	UbftqEXU3JNl04PDYZFO1NK415aBIF2p3rlRfIvmke5U+iyzJcfJRC51L6kK39JwSZpSz/Q9
	x9akF7Wg01mYMx8hypjaQpgLu6ib+ZOsLYyTZ6nH6+PPe+GkPaXf4GzRlqQfFZ+YzTIPyqeW
	59K2hz5PLRqnkRpxNS8kaV5I0vyXZKZdqab6UeJ/tAt1uXgWN2NfqrJynqVF7HLEY1RKaYhU
	6S5QSqRKlSxEcFourUGm22/oXKtrRFf+fCpoRxgHtSMnk3PiakUfsmPJ5DKGz7P+vs+WsbE+
	IzkXwyjkwQpVBKNsRyLTEjNxu1dOy00fSRYVLBS7iYSeYm83kbfYg7/b+khkksSGDJFEMV8w
	TCSj+NeHcSztYjH9W9kfkfr0PX5ueR3f3VWNBrbtPrQpOKGuj3k96MJQ6FfczYJXlyX1roIf
	hk7Jbr3n7DlwPHP+xHTMEcmenR1T2r3Bp97o5jpHRyf3hld+snLxuqjWumFl0ceWOb82WWwr
	2xE/3BjlXNqZsc/VOS/6TseNcIeg9GxuXGwp73hB7OOgq0W1rRWiozzxrhzvPteWAPuLko/L
	HKuzNAn2Bec8/KXawvCcQN5v9+q+GRODzKl0YW/FMatsf3VTmp79dXWpR+uUf/etwxFeh8rf
	ef81r7z6nccMSXXJsZYu3Ck0c/LO4TG3sIORZTv+CunnVf6Kqz4N6OcPudh+EBIwLHy3P+Cl
	m1/yWcpQiXA/rlBK/gG5K7+SkAQAAA==
X-CMS-MailID: 20231002084504eucas1p2e863940ef31a9248d26fbdac6e2f10bd
X-Msg-Generator: CA
X-RootMTR: 20230928163139eucas1p261a3b6b6cc62bafd5ace2771926911c2
X-EPHeader: CA
CMS-TYPE: 201P
X-CMS-RootMailID: 20230928163139eucas1p261a3b6b6cc62bafd5ace2771926911c2
References: <20230928-jag-sysctl_remove_empty_elem_drivers-v1-0-e59120fca9f9@samsung.com>
	<CGME20230928163139eucas1p261a3b6b6cc62bafd5ace2771926911c2@eucas1p2.samsung.com>
	<5fadd85e-f2d7-878c-b709-3523e89dd93a@csgroup.eu>

--22qnx6bxaciji5uu
Content-Type: text/plain; charset="iso-8859-1"
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

On Thu, Sep 28, 2023 at 04:31:30PM +0000, Christophe Leroy wrote:
>=20
>=20
> Le 28/09/2023 =E0 15:21, Joel Granados via B4 Relay a =E9crit=A0:
> > From: Joel Granados <j.granados@samsung.com>
>=20
> Automatic test fails on powerpc, see=20
> https://patchwork.ozlabs.org/project/linuxppc-dev/patch/20230928-jag-sysc=
tl_remove_empty_elem_drivers-v1-15-e59120fca9f9@samsung.com/
=46rom this I got to this URL
https://github.com/linuxppc/linux-snowpatch/actions/runs/6339718136/job/172=
21399242
and saw this message "sysctl table check failed: dev/tty/ No proc_handler".
This means that we hit the check for entry->proc_handler in
sysctl_check_table.

>=20
> Kernel attempted to read user page (1a111316) - exploit attempt? (uid: 0)
> BUG: Unable to handle kernel data access on read at 0x1a111316
> Faulting instruction address: 0xc0545338
> Oops: Kernel access of bad area, sig: 11 [#1]
> BE PAGE_SIZE=3D4K PowerPC 44x Platform
> Modules linked in:
> CPU: 0 PID: 1 Comm: swapper Not tainted 6.5.0-rc6-gdef13277bacb #1
> Hardware name: amcc,bamboo 440GR Rev. B 0x422218d3 PowerPC 44x Platform
> NIP:  c0545338 LR: c0548468 CTR: ffffffff
> REGS: c084fae0 TRAP: 0300   Not tainted  (6.5.0-rc6-gdef13277bacb)
> MSR:  00021000 <CE,ME>  CR: 84004288  XER: 00000000
> DEAR: 1a111316 ESR: 00000000
> GPR00: c0548468 c084fbd0 c0888000 c084fc99 00000000 c084fc7c 1a110316=20
> 000affff
> GPR08: ffffffff c084fd18 1a111316 04ffffff 22000282 00000000 c00027c0=20
> 00000000
> GPR16: 00000000 00000000 c0040000 c003d544 00000001 c003eb2c 096023d4=20
> 00000000
> GPR24: c0636502 c0636502 c084fc74 c0588510 c084fc68 c084fc7c c084fc99=20
> 00000002
> NIP [c0545338] string+0x78/0x148
> LR [c0548468] vsnprintf+0x3d8/0x824
> Call Trace:
> [c084fbd0] [c084fc7c] 0xc084fc7c (unreliable)
> [c084fbe0] [c0548468] vsnprintf+0x3d8/0x824
> [c084fc30] [c0072dec] vprintk_store+0x17c/0x4c8
> [c084fcc0] [c007322c] vprintk_emit+0xf4/0x2a0
> [c084fd00] [c0073d04] _printk+0x60/0x88
> [c084fd40] [c01ab63c] sysctl_err+0x78/0xa4
> [c084fd80] [c01ab404] __register_sysctl_table+0x6a0/0x6c4
> [c084fde0] [c06a585c] __register_sysctl_init+0x30/0x78
> [c084fe00] [c06a8cc8] tty_init+0x44/0x168
> [c084fe30] [c00023c4] do_one_initcall+0x64/0x2a0
> [c084fea0] [c068f060] kernel_init_freeable+0x184/0x230
> [c084fee0] [c00027e4] kernel_init+0x24/0x124
> [c084ff00] [c000f1fc] ret_from_kernel_user_thread+0x14/0x1c
I followed this trace and proc_handler is correctly defined in tty_table
(struct ctl_table) in drivers/tty/tty_io.c:tty_init and there is not
path that changes these values.
Additionally, we then fail trying to print instead of continuing with
the initialization. My conjecture is that this might be due to something
different than tht sysctl register call.

Does this happen consistenly or is this just a one off issue?

To what branch are these patches being applied to?

I'm going to post my V2 and keep working on this issue if it pops up
again.

Thx for the report

Best

> --- interrupt: 0 at 0x0
> NIP:  00000000 LR: 00000000 CTR: 00000000
> REGS: c084ff10 TRAP: 0000   Not tainted  (6.5.0-rc6-gdef13277bacb)
> MSR:  00000000 <>  CR: 00000000  XER: 00000000
>=20
> GPR00: 00000000 00000000 00000000 00000000 00000000 00000000 00000000=20
> 00000000
> GPR08: 00000000 00000000 00000000 00000000 00000000 00000000 00000000=20
> 00000000
> GPR16: 00000000 00000000 00000000 00000000 00000000 00000000 00000000=20
> 00000000
> GPR24: 00000000 00000000 00000000 00000000 00000000 00000000 00000000=20
> 00000000
> NIP [00000000] 0x0
> LR [00000000] 0x0
> --- interrupt: 0
> Code: 91610008 90e1000c 4bffd0b5 80010014 38210010 7c0803a6 4e800020=20
> 409d0008 99230000 38630001 38840001 4240ffd0 <7d2a20ae> 7f851840=20
> 5528063e 2c080000
> ---[ end trace 0000000000000000 ]---
>=20
> note: swapper[1] exited with irqs disabled
> Kernel panic - not syncing: Attempted to kill init! exitcode=3D0x0000000b
>=20
>=20
> >=20
> > 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.o=
rg/)
> > to mainline allows us to just remove sentinel elements without changing
> > behavior (more info here [1]).
<--- snip --->
> >   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
> >=20
> > Best regards,

--=20

Joel Granados

--22qnx6bxaciji5uu
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQGzBAABCgAdFiEErkcJVyXmMSXOyyeQupfNUreWQU8FAmUag40ACgkQupfNUreW
QU+k6Qv/eD1tR528WiSAoTELGGsaAFMefu4D6RODiEV+j4aejsVFiiZQtvCnuDld
Q7eZa99m0YuSFUId6C/idLOSE3ts/RGQVjAcK3+Xre1NgBEuDZvQXUW73NswWc0K
D/5nBlOV4wruseOy1EpqK9kZW/lQj8ndfezX/HImXDh04rS7f8o7THOTqH+odhzr
Lh63Jj6oSjGemd/L6y4TfjwVRNIQIsuY5YYQas4AqLpIna3aceEz6v3YSbeh8uCu
BuBVHVEO61MMhqXJiIQR3frh8Vl+PxVqNeroKsUoxdcJkJPBDMLk0bS+D7ZZkPyM
SYN9Z4q/LPZCgtnwa4gIqbFtG1xlSRYN2GZB0WtfGn2s52Ap1mFTsAjsChieI/gO
W/xzMyZYKnKi+amN1ZY9rF8xefnGw3Nxfec83YOxL1TKux3nYjS1s8qiunYh6qfp
p2LoIi7PGK4LC3C38mNdYCZPHdCzg1y1jqWGDt37odmd7awNTjbuk2dmzcaf+8Gt
0zl7OZ7E
=RwMQ
-----END PGP SIGNATURE-----

--22qnx6bxaciji5uu--


From xen-devel-bounces@lists.xenproject.org Mon Oct 02 08:45:28 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 08:45:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611221.950693 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnEYS-0000NK-Bu; Mon, 02 Oct 2023 08:45:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611221.950693; Mon, 02 Oct 2023 08:45: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 1qnEYS-0000ND-8U; Mon, 02 Oct 2023 08:45:28 +0000
Received: by outflank-mailman (input) for mailman id 611221;
 Mon, 02 Oct 2023 08:45: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 1qnEYR-0000Mc-0A
 for xen-devel@lists.xenproject.org; Mon, 02 Oct 2023 08:45: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 1qnEYQ-0007SB-O6; Mon, 02 Oct 2023 08:45:26 +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 1qnEYQ-0005ni-Hd; Mon, 02 Oct 2023 08:45: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=iW4QaHGyzxiCNehmVBHSpm/7yzIWTi2J7pCzG0InZcw=; b=LESsLM7VcQAJGe8rZuSAOrFULQ
	X01wiUdq/Xq5h1ZRkeVP6iqS5kdvfx8fL3/13djmZlhsEYknt5HpRgLvY0s2HT15olkNS8c7aC0Ej
	yoIcbyUzqE9CiYZUawVDzUO33HrZJvp8Z73enrJ6NbnB8eBXoGq3kLg2gBf25sPfZgJQ=;
Message-ID: <170236c7-6410-42c2-acf3-8e8cc5b7086d@xen.org>
Date: Mon, 2 Oct 2023 09:45:24 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: [for-4.18] Re: [XEN v2] 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, jgrall@amazon.com
Cc: sstabellini@kernel.org, stefano.stabellini@amd.com,
 bertrand.marquis@arm.com, Volodymyr_Babchuk@epam.com,
 Henry Wang <Henry.Wang@arm.com>
References: <20230928121243.2636484-1-ayan.kumar.halder@amd.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <20230928121243.2636484-1-ayan.kumar.halder@amd.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi,

Adding Henry to release ack the patch.

Cheers,

On 28/09/2023 13:12, Ayan Kumar Halder wrote:
> 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);
>   };
>   

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Mon Oct 02 08:48:00 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 08:48:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611228.950703 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnEas-0001E7-Tx; Mon, 02 Oct 2023 08:47:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611228.950703; Mon, 02 Oct 2023 08:47: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 1qnEas-0001E0-QU; Mon, 02 Oct 2023 08:47:58 +0000
Received: by outflank-mailman (input) for mailman id 611228;
 Mon, 02 Oct 2023 08:47: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=qnrB=FQ=csgroup.eu=christophe.leroy@srs-se1.protection.inumbo.net>)
 id 1qnEar-0001Dt-DH
 for xen-devel@lists.xenproject.org; Mon, 02 Oct 2023 08:47:57 +0000
Received: from FRA01-MR2-obe.outbound.protection.outlook.com
 (mail-mr2fra01on20607.outbound.protection.outlook.com
 [2a01:111:f400:7e19::607])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 616b1fba-6100-11ee-878e-cb3800f73035;
 Mon, 02 Oct 2023 10:47:56 +0200 (CEST)
Received: from MRZP264MB2988.FRAP264.PROD.OUTLOOK.COM (2603:10a6:501:31::15)
 by PR0P264MB1820.FRAP264.PROD.OUTLOOK.COM (2603:10a6:102:16c::5) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.28; Mon, 2 Oct
 2023 08:47:53 +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; Mon, 2 Oct 2023
 08:47: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: 616b1fba-6100-11ee-878e-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=jGRcxx7bKPq5fCKnUfxNSS9V5u1iblA+fP0qy5Anj/ygGsOM96SFE4iOP1CpcaBO+5xjvOKfy9c8H/PPm/j/gmoh3KyzHRHWv4qRtfD27p6vvf6X/wxIS5V/HDY5UDssz7NdSTeXMRrR3k1yfeiuqJxmua7l4cQKWkjinmw8LITYQQX769uG3BfcFQE0UpPtr/3bUSgLP/qFdjX3MaLkbIbRpgnGnvNoPKGArCLg0kNCPIS9ZIk8hhW7GzOyusdcn+5T4di4l/d570OT7SwwYmkgU6NGv8YPxMcjPX8JabKq4T0/8VLZa58k03Hn3BbOtONOF/QB8NBsY5Esa3Yx1A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=aaOfYvkdBZ3Bfo/eUkfPmFmruLWAm7j2/VvMCEc+cAo=;
 b=GLeanncytLR1BUKg96/81ofAmMnrTmxpiQfkjD2bNd42jIrj2TbdixwGBieWCFdr9RorBff2ouDJyiNPl9xCXxFIXRPJNJCvH5WKSoSfoMO7Ui5NW11xtQhqSLHSZL8mvETksq5iht52st0uE4Ijyd1KdY69Xu1U7NiAW1XTVpDku6fAiAM1jn388ROX7t0b9bOFOJj+kFCalABii+SaSH/92CoLHIuh6mvB7OPCM6H9PtYPnfmC6uK9lJOtgFbMwKTap3kPHROQpK1Dwnfu182mlRZ4uE5XMlOeV1bnxtTPsxzO8a4xGC265xI0G/d6bq50OtimGxzUhjy/+fZHzw==
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=aaOfYvkdBZ3Bfo/eUkfPmFmruLWAm7j2/VvMCEc+cAo=;
 b=LHjZ3z8zhOfpi+L9DEoWoQAQ9Gqh46vgc8UYKD0kXNuBZm5Kn4BWECT06r0X82FacllcM5edu/xEUXmaZtT02KrWowxKALgySJufhuuP98y6+8FricwHHJ+hkF/5sm4L8pg3lcztMzqD7kHBqWdkF8c8zlxMpduwxk3Q5n0NVvm3x5asQh4gCIkQd33NyNVoIBO5V5UAhhcGJtNuGQhVFDVYGN65yZ+kDgzQfZv0fANnH00zOD9g5CHtE3QycJ87aldOz9iMEjlVcjBN26t+4rLSC63XKZuuDaAuUqmfHB8ARwyh3qg3ABLGnr+C3vXfSAsv1hHnGKnqedWDVUr0iQ==
From: Christophe Leroy <christophe.leroy@csgroup.eu>
To: Jiri Slaby <jirislaby@kernel.org>, "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>, "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 04/15] tty: Remove now superfluous sentinel element from
 ctl_table array
Thread-Topic: [PATCH 04/15] tty: Remove now superfluous sentinel element from
 ctl_table array
Thread-Index: AQHZ8g9AJRb209jYxEO0enKoAcP5erA2LboAgAAIZgA=
Date: Mon, 2 Oct 2023 08:47:53 +0000
Message-ID: <4d7bf39e-e7f9-f497-13aa-73718456a653@csgroup.eu>
References:
 <20230928-jag-sysctl_remove_empty_elem_drivers-v1-0-e59120fca9f9@samsung.com>
 <20230928-jag-sysctl_remove_empty_elem_drivers-v1-4-e59120fca9f9@samsung.com>
 <63e7a4fe-58c9-470e-84c2-dd92e76462ae@kernel.org>
In-Reply-To: <63e7a4fe-58c9-470e-84c2-dd92e76462ae@kernel.org>
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_|PR0P264MB1820:EE_
x-ms-office365-filtering-correlation-id: a16ad653-d7ed-4682-62aa-08dbc324445c
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info:
 P/PXAiHEvO/Tn+GnKLCNPk8+ntFFKvuNVB9bpt6E112g07xqDYNXzXElO6ZhrddNkvfxaYjS4zD801Cd2iRN1CHC4JKvkGY3lOsfxzzmY69lJoYdtL/4nbHV08hLfR7+OJoOd/lJtTyauPlQOXih81i6WscUJlXf0LfVWkVIqGN1iZrwWJzXbsm/Wm02d3F8ua+h9bORvdFYGfxH0SiKAvpYg8FpSKM+JNJbt3W9szHXpbW88y9x7n42Eo/2HNZ5upk8L7stYqWXeMep625gzKpv5F6SXy3xobpj2wc4cehnm556Il/rYPJhko4w5zlWhACREVEh5UQWWoZ3JuSTtyhnO+NNKTG/LZgYRa4S5P6zRF5NoVToqPAbrMkks6KsgVf3IRMu2Dw4qiw0BCP+KrZCIn1eMKd3flrRpWMEBRJ5buXvHJ5UhfejqH7j1RPVJHcKEdS1yQiN21OJcDCKo8KjC5S/z1ONIbSbjnzPHNMvR9LzQw4ypKq816I7UA7ur92SPu7c1gZot+OpdSOT4sCxEV9XJ9IHQJfA2qUsmEBK0xVhAuh9/k6o8dmrHukNrZOukfaELkZKAHZyo5CWjadnZeRsE+dEDzqMYjQqAENKdui2q98Uoov9H8DOHrmHnhx1LRh6UKEKzN6LsU2hVHaArVx0yf4x/1EFiTmUdbD2HTJcI6Fxjw8TkiuyUicu
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)(346002)(396003)(376002)(136003)(366004)(39850400004)(230922051799003)(186009)(451199024)(1800799009)(64100799003)(4326008)(44832011)(8936002)(8676002)(66446008)(76116006)(5660300002)(66476007)(110136005)(91956017)(66556008)(66946007)(41300700001)(54906003)(64756008)(38070700005)(38100700002)(316002)(122000001)(7416002)(7406005)(7366002)(921005)(2906002)(83380400001)(71200400001)(6512007)(6506007)(26005)(2616005)(478600001)(6486002)(966005)(31696002)(86362001)(36756003)(31686004)(43740500002)(45980500001);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0:
 =?utf-8?B?ZDJoZ3VmWG5EaU9wZkpubjB6SmdFdlE1dFFENmFJVDljWWxqeExuQmIzNGRL?=
 =?utf-8?B?UUdRZ3NBdHFaZjA3VWQyOWx6MlROTDdaZkJNejlXeGNGTUJmMUsrd3JtMTlI?=
 =?utf-8?B?eWNmYUlKSUYrbHR4UVczUER4RTBIeEpHR1d1a2Vtbng5RVh2ZGZoSVdZTVFU?=
 =?utf-8?B?VXFBajltUEM4RWNSN3hmdnl2Z2FtakRnUE5MZ1FENmo2VmxkZWV0UGR6anI2?=
 =?utf-8?B?TE5mT0JTQmFHNlYzZC9PL0owTGxiNVFDOGptU3pTN1dRZGdLQnpiVEx3UUV3?=
 =?utf-8?B?dFdTRzBsbjdNOTBBWlpMbFl5VlZQL2ZrWUt3bERYNnJJcDVud2pwZjJONGhJ?=
 =?utf-8?B?OVVPTFNOYjVHU1FmcDF2dDdzbVVrT3RXZFgxVldLcVNhenl0K0tibjFXR1E1?=
 =?utf-8?B?bkpDNE1XMHRUUjdWUlYxejl3OXFGMStSVzJacGpta0JiUDE2amFLdkpYbWVq?=
 =?utf-8?B?T25jemJUUUFJYmw2TVNScWgrUDU0MGhvZlYvbVgxSnc4enJLeE5RLzMvWEdq?=
 =?utf-8?B?UzI4WUZ1b2gxc1JLTTZxYjR0S25SYlU1U2llRXZZY2Vvc0JtSXBtakllTTNv?=
 =?utf-8?B?c0RESi9iM010cUVHWnBoN0t0MDNuUWJxb1pocFdtb3hqMnI2LzdKMXduRGli?=
 =?utf-8?B?dnJLNklIakd0dHcxOWpscklHRzc3cWg2b01HZlF0eE16cmVId1JBRnlVTlFs?=
 =?utf-8?B?em9mbFJnNHNTMjJ2cjA4VkkrVlJaY0JKajRaQ04xeDRjRnNJeUNlK1p5UWxZ?=
 =?utf-8?B?dERxQWVISmpQVnZWaVVVQ1dsYXgyN2tPUWFnTUw5aGxIMGN2Tk0rRUtydVRp?=
 =?utf-8?B?VWE0NFRJc0o3Zk1ua0x6SGNYcVp6akNLSnlnRVpHMjdYc2RZaWdUUVVoWHBr?=
 =?utf-8?B?YW10SC8remhsREhBUnF0aWJjNVlRZTYrcGh2U1V4cWh6Zk9rMDVzVGtJbWpq?=
 =?utf-8?B?eUxXVm02eGVGUnFEWUpzN29vR2dvV0h4RDBhdzVYNkJNaFQwU08vaXptcjRN?=
 =?utf-8?B?anF4RGsxMkpPWkIxN0dmYzRId1M1QWxhRkgySWUzbm1aMmlFMjBoaHdEMlln?=
 =?utf-8?B?YnFLQzFyK0ZSeEZONnA4VXZZSWpYK1NycDJIbjJzUWVTQjUrcnhONkVkdk1n?=
 =?utf-8?B?SnF6cDhOcm56LzFTRTEzUHdnS3F5NTJJL1VuU2hZU0t1S0lPc3lEdTl4R3NU?=
 =?utf-8?B?RWlLdDVMbGhxWjc0N2VmR25xak1oUXRJR2cvNDFzVEZ6SDNrckIrL0plTis4?=
 =?utf-8?B?b2trVjhueWcvTGlMRmVnaVlpTko3bkVKdmR5QXJjdk52Yi93Qlk0L2VXb282?=
 =?utf-8?B?dnZQcXRyS25wdXg2MmJxY3g4d0IxWHlKTHhpUjFLeS8rNjlLbnI0Tzd1RkhF?=
 =?utf-8?B?V1ozQlY1RGQxc1lpZ214N0oyQmlmeXM5eDBjMUgvNzhra3QwRzdHQ2ZKc2Js?=
 =?utf-8?B?YUV2Q1dWc2pkWFBZOTIxc2srMDlkblIvSERuUStHekJvaXU5WDZYcWJiWVlN?=
 =?utf-8?B?bVo0cjZITFRZT01Xcnp2RFhvaHN5TkZqaG55aldHRnMxN1lCQXQ3NlVHS3lV?=
 =?utf-8?B?NnlsbjV2NTlodkVGc05uQ2VuUDhCRk1hWnVIMTRjbmlWV3I5VEYrL3ZKOURU?=
 =?utf-8?B?TTlIZVlMSmNWY2xJS1B2ZFY4a0tGbm95ZWdOYVVidkdLeENjM0ExUTZiZVAr?=
 =?utf-8?B?V3ZyUGRUUHpiYk5EYzRicDZRRnJxRTVwK3h1cDZhVUxWaWxzeVNIRkVycGhB?=
 =?utf-8?B?NE5nQVg4OEZlK2J6NFBQQlRLdmM2emRKZll2M0tjYmhxclRWcUI2eFVncWRN?=
 =?utf-8?B?QlJNQk8zeHp2WExaa0lSL3hCMmg5R1R3cWtYMy9NNzVoTGFITURrYnRteWJ2?=
 =?utf-8?B?U2M5ODkvZnk0WGZ3b1ljOGU0Tks1dG9vRmI4RHFuZms3d0JnajREYUErM09C?=
 =?utf-8?B?UnRSS0hkQkg5b0wxOHNHMklUem51SW5aL2pRRUNKeEVsWXVpOHNVbzJ0VFFY?=
 =?utf-8?B?M1hHcGJHbGRKQlFNWjhLOEZKSTlHSEQySWtscnNtYmJ0VVJia29NeGRlcDl0?=
 =?utf-8?B?dllLbExTTlVxd3FBeGdqakFpa3JGUFlGd3JSaHdTd29paHYxT2V0Vjk0TVRz?=
 =?utf-8?Q?A7xiRiprgk6Hfk2iCITtszJ5d?=
Content-Type: text/plain; charset="utf-8"
Content-ID: <C6CEEB2BB1C27C4BA014020368C97436@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: a16ad653-d7ed-4682-62aa-08dbc324445c
X-MS-Exchange-CrossTenant-originalarrivaltime: 02 Oct 2023 08:47:53.5620
 (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: EQvhxEDhEHycR1DcgrWtqiNBdfGzm4ncpqUT4DeY6z1YoofHOYKwlOSbBMY2Wfck4euNVJcdVISQ48IVp2rHCYKwU124WbmnnGa00XWZTWw=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PR0P264MB1820

DQoNCkxlIDAyLzEwLzIwMjMgw6AgMTA6MTcsIEppcmkgU2xhYnkgYSDDqWNyaXTCoDoNCj4gT24g
MjguIDA5LiAyMywgMTU6MjEsIEpvZWwgR3JhbmFkb3MgdmlhIEI0IFJlbGF5IHdyb3RlOg0KPj4g
RnJvbTogSm9lbCBHcmFuYWRvcyA8ai5ncmFuYWRvc0BzYW1zdW5nLmNvbT4NCj4+DQo+PiBUaGlz
IGNvbW1pdCBjb21lcyBhdCB0aGUgdGFpbCBlbmQgb2YgYSBncmVhdGVyIGVmZm9ydCB0byByZW1v
dmUgdGhlDQo+PiBlbXB0eSBlbGVtZW50cyBhdCB0aGUgZW5kIG9mIHRoZSBjdGxfdGFibGUgYXJy
YXlzIChzZW50aW5lbHMpIHdoaWNoDQo+PiB3aWxsIHJlZHVjZSB0aGUgb3ZlcmFsbCBidWlsZCB0
aW1lIHNpemUgb2YgdGhlIGtlcm5lbCBhbmQgcnVuIHRpbWUNCj4+IG1lbW9yeSBibG9hdCBieSB+
NjQgYnl0ZXMgcGVyIHNlbnRpbmVsIChmdXJ0aGVyIGluZm9ybWF0aW9uIExpbmsgOg0KPj4gaHR0
cHM6Ly9sb3JlLmtlcm5lbC5vcmcvYWxsL1pPNVl4NUpGb2dHaSUyRmNCb0Bib21iYWRpbC5pbmZy
YWRlYWQub3JnLykNCj4+DQo+PiBSZW1vdmUgc2VudGluZWwgZnJvbSB0dHlfdGFibGUNCj4+DQo+
PiBTaWduZWQtb2ZmLWJ5OiBKb2VsIEdyYW5hZG9zIDxqLmdyYW5hZG9zQHNhbXN1bmcuY29tPg0K
Pj4gLS0tDQo+PiDCoCBkcml2ZXJzL3R0eS90dHlfaW8uYyB8IDMgKy0tDQo+PiDCoCAxIGZpbGUg
Y2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDIgZGVsZXRpb25zKC0pDQo+Pg0KPj4gZGlmZiAtLWdp
dCBhL2RyaXZlcnMvdHR5L3R0eV9pby5jIGIvZHJpdmVycy90dHkvdHR5X2lvLmMNCj4+IGluZGV4
IDhhOTRlNWE0M2M2ZC4uMmY5MjVkYzU0YTIwIDEwMDY0NA0KPj4gLS0tIGEvZHJpdmVycy90dHkv
dHR5X2lvLmMNCj4+ICsrKyBiL2RyaXZlcnMvdHR5L3R0eV9pby5jDQo+PiBAQCAtMzYwNyw4ICsz
NjA3LDcgQEAgc3RhdGljIHN0cnVjdCBjdGxfdGFibGUgdHR5X3RhYmxlW10gPSB7DQo+PiDCoMKg
wqDCoMKgwqDCoMKgwqAgLnByb2NfaGFuZGxlcsKgwqDCoCA9IHByb2NfZG9pbnR2ZWMsDQo+PiDC
oMKgwqDCoMKgwqDCoMKgwqAgLmV4dHJhMcKgwqDCoMKgwqDCoMKgID0gU1lTQ1RMX1pFUk8sDQo+
PiDCoMKgwqDCoMKgwqDCoMKgwqAgLmV4dHJhMsKgwqDCoMKgwqDCoMKgID0gU1lTQ1RMX09ORSwN
Cj4+IC3CoMKgwqAgfSwNCj4+IC3CoMKgwqAgeyB9DQo+PiArwqDCoMKgIH0NCj4gDQo+IFdoeSB0
byByZW1vdmUgdGhlIGNvbW1hPyBPbmUgd291bGQgbmVlZCB0byBhZGQgb25lIHdoZW4gYWRkaW5n
IGEgbmV3IGVudHJ5Pw0KDQpEb2VzIGl0IG1ha2UgYW55IGRpZmZlcmVuY2UgYXQgYWxsID8NCg0K
SW4gb25lIGNhc2UgeW91IGhhdmU6DQoNCkB4eHh4DQogIAkJc29tZXRoaW5nIG9sZCwNCiAgCX0s
DQorCXsNCisJCXNvbWV0aGluZyBuZXcsDQorCX0sDQogIH0NCg0KSW4gdGhlIG90aGVyIGNhc2Ug
eW91IGhhdmU6DQoNCkB4eHh4DQogIAkJc29tZXRoaW5nIG9sZCwNCisgCX0sDQorCXsNCisJCXNv
bWV0aGluZyBuZXcsDQogIAl9DQogIH0NCg0KDQpDaHJpc3RvcGhlDQo=


From xen-devel-bounces@lists.xenproject.org Mon Oct 02 08:49:19 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 08:49:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611237.950717 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnEc7-0001uI-EY; Mon, 02 Oct 2023 08:49:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611237.950717; Mon, 02 Oct 2023 08:49: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 1qnEc7-0001uB-BO; Mon, 02 Oct 2023 08:49:15 +0000
Received: by outflank-mailman (input) for mailman id 611237;
 Mon, 02 Oct 2023 08:49: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=L3JV=FQ=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qnEc6-0001to-CA
 for xen-devel@lists.xenproject.org; Mon, 02 Oct 2023 08:49:14 +0000
Received: from EUR03-DBA-obe.outbound.protection.outlook.com
 (mail-dbaeur03on2062d.outbound.protection.outlook.com
 [2a01:111:f400:fe1a::62d])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 8f6f0323-6100-11ee-878e-cb3800f73035;
 Mon, 02 Oct 2023 10:49:13 +0200 (CEST)
Received: from DU2P250CA0010.EURP250.PROD.OUTLOOK.COM (2603:10a6:10:231::15)
 by DU0PR08MB7590.eurprd08.prod.outlook.com (2603:10a6:10:317::14) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.29; Mon, 2 Oct
 2023 08:49:04 +0000
Received: from DBAEUR03FT015.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:231:cafe::48) by DU2P250CA0010.outlook.office365.com
 (2603:10a6:10:231::15) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.30 via Frontend
 Transport; Mon, 2 Oct 2023 08:49:04 +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.21 via Frontend Transport; Mon, 2 Oct 2023 08:49:04 +0000
Received: ("Tessian outbound fdf44c93bd44:v211");
 Mon, 02 Oct 2023 08:49:04 +0000
Received: from e4bb056d3835.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 6134099B-86B5-4C9A-8A89-C58D39814B09.1; 
 Mon, 02 Oct 2023 08:48:57 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id e4bb056d3835.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Mon, 02 Oct 2023 08:48:57 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by DBBPR08MB5929.eurprd08.prod.outlook.com (2603:10a6:10:208::8) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.28; Mon, 2 Oct
 2023 08:48:55 +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.029; Mon, 2 Oct 2023
 08: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: 8f6f0323-6100-11ee-878e-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=Y4V3X3mrn/qs9ntBg0e5ODgaKaqid07T93p7ynfbkKM=;
 b=sz785gZJlw0iiSKEQdz5RZncvCO1w/OeXahDLsQAO2J9mj2kJponeCbTdtru7VhMcWTAbvo3WJF+wfFIKZ8vf27CIy7GS/xIjlRlz5GOI8p+B6gKzTiGcrh86sBpCeIjgu4+DK/DWxZti5G6JBQmX7wNtG2Vz/77Wfs8S7sFNG8=
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: 4113b1df3912da69
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=SWwN0coVjs2pMz07OXVvrB1yaZ7GnYNoLhp/t3vx1Ljy16I4JUIgC4ZS3KZPEHmFr65fDU3lak+F5XlM/ZCBeLahMPQB9gfcClpLybh1FjtxEVkVGu9IKKoT2J+m4DVnDIh2ANpN9qnME9QmVRn0N6QJlfVQYVS3B7cYQFfIVYecoENDEtyrxzQhD3eG+ibzzSqUeHzNJvIWoZJZU3G/d7DjI18E1wQ/DHb5zK93n9VplAscKvwteyOswCN6buYDxEE5NmU8zDkTKJNlo+cbpI+8H9ftFMnyzYLbXk9qx2hgh+9tc5yPQVkdf3/DMn+8OVFWbXX2LJIcWatuseJPww==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=Y4V3X3mrn/qs9ntBg0e5ODgaKaqid07T93p7ynfbkKM=;
 b=fk5rasqgpeAM2Q/KbtcIo8vCWtaD0E7n1XwXCITe4XFeHFZurm8vTeAHY/lKP0TIgpzyFyTE3cPgh86tTzF9KGqD7npcgl7ZWna20wlVenMJxOqKeTAz9NJlt5myHTAwjHdc1ZRnF/EulZQ0Nehatd28IXR+atoZDshMrOSh8stCKtKLzpYCLaAmZjPzxBAOXbx1oHlFCuaYhD5IkOJTaE8g2TlM9Zql5S4rXwLfYWz/7u+VEs3BQwt1cQLIg4Tv5ey0tp1jABUeJKP5oYIjNDkoVdyWgQsu6jbGoUpI08btwyxYIJfUyYBZxAfBO+k/eqiPdmxFaDCOwK3aIup11w==
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=Y4V3X3mrn/qs9ntBg0e5ODgaKaqid07T93p7ynfbkKM=;
 b=sz785gZJlw0iiSKEQdz5RZncvCO1w/OeXahDLsQAO2J9mj2kJponeCbTdtru7VhMcWTAbvo3WJF+wfFIKZ8vf27CIy7GS/xIjlRlz5GOI8p+B6gKzTiGcrh86sBpCeIjgu4+DK/DWxZti5G6JBQmX7wNtG2Vz/77Wfs8S7sFNG8=
From: Henry Wang <Henry.Wang@arm.com>
To: Julien Grall <julien@xen.org>
CC: Ayan Kumar Halder <ayan.kumar.halder@amd.com>, Xen-devel
	<xen-devel@lists.xenproject.org>, Julien Grall <jgrall@amazon.com>, Stefano
 Stabellini <sstabellini@kernel.org>, Stefano Stabellini
	<stefano.stabellini@amd.com>, Bertrand Marquis <Bertrand.Marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: Re: [for-4.18] [XEN v2] xen: arm: procinfo.h: Fixed a typo
Thread-Topic: [for-4.18] [XEN v2] xen: arm: procinfo.h: Fixed a typo
Thread-Index: AQHZ9Q1G9jZ9I34DJk2NrkGGKU74QQ==
Date: Mon, 2 Oct 2023 08:48:55 +0000
Message-ID: <740DFE9C-891E-41EA-AF89-87789938FB43@arm.com>
References: <20230928121243.2636484-1-ayan.kumar.halder@amd.com>
 <170236c7-6410-42c2-acf3-8e8cc5b7086d@xen.org>
In-Reply-To: <170236c7-6410-42c2-acf3-8e8cc5b7086d@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_|DBBPR08MB5929:EE_|DBAEUR03FT015:EE_|DU0PR08MB7590:EE_
X-MS-Office365-Filtering-Correlation-Id: b90c265b-6127-4e12-bcf4-08dbc3246e9a
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:
 Fy8cmDsW+hHiRhSuxOXD/Nr0+SKcnX5L+FwlKNIQTtUDuxco3fS4Zg4QaaK+cFTWln6qLNKqbT+mdvdY9GlSjBCHv4ouMmcSTLUC1Ht1hMLMSFPW6V5vvAhA1qVKJm9SL8uCes0sFny8VMZg9p0MY6vWor65ugIPbnokIxiZ5vMWpR1u+Y5fBzbhC9oTvyuss/ZUi+vevidrr4OryF2xlzrQn1FfS1N5ebzxRaqWQNEcsXnI74uldXLP0ySg5c/7qWzw8xDFzFKkKaTvFPKVdUijjFdG0N6/Ont09TYtYwJnDfK0N0vT7oPnl88n7OqZvFo+A3EK1oTXpl9fbJX+A7zqGxqc++czEDNBgy+MyyLwZCDm0DOhILArcJXB4Gh5ELsb8IgcaS3Er+eRLjWH1rF7QQsMrkk3WMdaIsEn53bAoOi/40TKywHNUjooXDv7Qq6kX+M4TQ/8ySpC+Gcu4GDQdvy+diAkNrYJ+RSq09Fd2tVxnvWuDJ1Sgn+BSNLJNnJ712ev0Sp79Rsf9ShsnTv3thVoUb0OLY4CY9Qd7LmdmdN/tvTAcSCTlFDnftsSQxwQboBW8tW7yeSTMMWlbyuDryK3ACWl9/5w6RLKXNAZTS1T1pnRli7oDLj6Ih2T/7GEQ5mTDqBZxGXXrbsE1g==
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)(346002)(396003)(136003)(230922051799003)(1800799009)(186009)(451199024)(64100799003)(91956017)(66946007)(76116006)(2906002)(8936002)(8676002)(4326008)(6916009)(5660300002)(316002)(64756008)(54906003)(66476007)(66446008)(66556008)(41300700001)(6486002)(478600001)(6512007)(6506007)(71200400001)(53546011)(26005)(2616005)(83380400001)(38100700002)(38070700005)(122000001)(33656002)(86362001)(36756003)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="us-ascii"
Content-ID: <BBC19A52BDCE5145BB4688F4F98E5EBB@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBBPR08MB5929
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:
	a16f6f37-1662-4914-1820-08dbc3246948
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	lauB3DL3atpqSc4UmDrMcwQRR7/TtG1iWS6tQdXQ2mV0EvTUSwPsiNWagvhTzy8ZHShNecbDy2I6XBDTX5+S8akG9iM8OG73f5J7iarJszc0pCFvEHgGm3ByuCeLcSOTYaFDmmyAz04JexqRx4Sn0fd/3nw76w6m23K+qij+EC8JgR6D2y87TwvwBDvsVZRUgfUFDSJKB8/FK5U41Dqr6DdL3ack9auIO3pp9Jf2JZxNPGZEa1pd0bvevsmm1/Wv4gnXcmUMXjwRWJQn4p1+eYA6uwzvawMuPzPwAWZsQLbLXaEYnK0ibereCgxLbp6fRVsF4LbsZYlcSSwvGYoINBsjXS6yjsr6bi48P/tDKlewH8ptPeGDnImMBGPB7cC1c1mlB7Li2LswG9oknuk7D0DMBR9UeV0IdDrC0ZmEQw68rtX/ffBDe2Abc9nR8VcpzHOd2OH4dO/Ehr8cxXzONGGEN4mf8KRcfCVszwQAfNAMjmNztsMyihpGGfnCuYo1C3ZDHep867Jf9yowXkWctTeZS0CjEnylHFZoCOvzn8lYDuCJBRGf5YLBG5Lnf2GoYRhiitntRywAqgsSxDbewL+V2k3LgaDfp1VS6vGeO5pt5UQNdz3uVgMX2QKMvp90xd2JG2XmeAvGJS6lQgUiUJVo1eWhVy7FIgAhzEH+b/5iUtmgBmKVsZU97vNwql2hmJNeXqnG6ca0gvA0LD+/wdfv8x/gaNKAh25n/s/ioUQ=
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)(64100799003)(451199024)(82310400011)(1800799009)(186009)(40470700004)(46966006)(36840700001)(336012)(40460700003)(6512007)(26005)(107886003)(2616005)(36860700001)(82740400003)(33656002)(86362001)(81166007)(356005)(36756003)(83380400001)(47076005)(40480700001)(54906003)(478600001)(316002)(8936002)(6862004)(8676002)(4326008)(5660300002)(70586007)(70206006)(6486002)(6506007)(41300700001)(53546011)(2906002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Oct 2023 08:49:04.4930
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: b90c265b-6127-4e12-bcf4-08dbc3246e9a
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: DU0PR08MB7590

Hi Julien,

> On Oct 2, 2023, at 16:45, Julien Grall <julien@xen.org> wrote:
>=20
> Hi,
>=20
> Adding Henry to release ack the patch.

Thanks.

>=20
> Cheers,
>=20
> On 28/09/2023 13:12, Ayan Kumar Halder wrote:
>> 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>

Release-acked-by: Henry Wang <Henry.Wang@arm.com>

Kind regards,
Henry

>> ---
>> 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);
>>  };
>> =20
>=20
> --=20
> Julien Grall



From xen-devel-bounces@lists.xenproject.org Mon Oct 02 08:53:21 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 08:53:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611247.950739 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnEg5-0004o3-Ni; Mon, 02 Oct 2023 08:53:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611247.950739; Mon, 02 Oct 2023 08:53: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 1qnEg5-0004kX-Il; Mon, 02 Oct 2023 08:53:21 +0000
Received: by outflank-mailman (input) for mailman id 611247;
 Mon, 02 Oct 2023 08:53: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=y3Nz=FQ=kernel.org=devnull+j.granados.samsung.com@srs-se1.protection.inumbo.net>)
 id 1qnEg4-0004XI-Ga
 for xen-devel@lists.xenproject.org; Mon, 02 Oct 2023 08:53: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 2187ef51-6101-11ee-878e-cb3800f73035;
 Mon, 02 Oct 2023 10:53: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 38C0260CBB;
 Mon,  2 Oct 2023 08:53:17 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPS id 2DA0CC116C9;
 Mon,  2 Oct 2023 08:53:15 +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 163D8E784A5;
 Mon,  2 Oct 2023 08:53: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: 2187ef51-6101-11ee-878e-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696236795;
	bh=Z66CnIwS9V2Vqt1u5P+8e0+LhRmcv6hD7Hd8rNzQAts=;
	h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From;
	b=FfXQ3JOVk1tvf4snBGbIYUt7cC8t2/VKZpNPl4jEoAhstHH1gU38xQcPcL0xMKtDO
	 FcJA+8XoYViss7jxu5hXH6/sywvcmYNyNhuXce15Yoll2wXw/QIPsqlT5EokBnGZ9+
	 7FFEV1Ca41aas3PCZKT26D8T9Wmcl0R/e3Ab84/+X5kKJgcdIe2GKk3NrqolXQkDz1
	 z+zFTa9JCsSpc18W0aIH7G8yYeRNygleTrpvlohi0rYBtGH9PnAGE5qXhzXsNAOMr5
	 IGQBWPcP/q4f8s/7dZVXUexQStJ2MV5DZxJ3qopwYcfFBKYzBzY4JLsZUfxyexqedC
	 4AOrRWFAq3SWw==
From: Joel Granados via B4 Relay <devnull+j.granados.samsung.com@kernel.org>
Date: Mon, 02 Oct 2023 10:55:22 +0200
Subject: [PATCH v2 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:
 <20231002-jag-sysctl_remove_empty_elem_drivers-v2-5-02dd0d46f71e@samsung.com>
References:
 <20231002-jag-sysctl_remove_empty_elem_drivers-v2-0-02dd0d46f71e@samsung.com>
In-Reply-To:
 <20231002-jag-sysctl_remove_empty_elem_drivers-v2-0-02dd0d46f71e@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: Joel Granados <j.granados@samsung.com>, 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
X-Mailer: b4 0.13-dev-86aa5
X-Developer-Signature: v=1; a=openpgp-sha256; l=1309;
 i=j.granados@samsung.com; h=from:subject:message-id;
 bh=oNupD2h3b6zB7gVtrnkT38EloH2PCHXEzMgi8iB28Z0=;
 b=owEB7QES/pANAwAKAbqXzVK3lkFPAcsmYgBlGoV9bakHas2ZtL0/2ymaNUaT4ifb9b2axOuon
 88g/ZRNm5WJAbMEAAEKAB0WIQSuRwlXJeYxJc7LJ5C6l81St5ZBTwUCZRqFfQAKCRC6l81St5ZB
 T9hGC/9BxGOk4yKvzEwHz7zhjWcMLWEMYBXIdwPBdJabd4q2HJEJDibrwMhDsBvWrF4cxPPQzS+
 NlyI9mEcGM/vbiQoSRC7ZFAAdSZ3y5OFTZUOZq7D0FglyIaDIIcphFJ0iR89tM2b4/pLUyWAlUv
 1/C649YV4KMxAx15oN3BIj6ZEEQ5GpZkROyKu6viWH7RcVvs37SL3gmNH54KSyvXNOf5JhXPO/g
 IwNAFEirUi7RoZdqvNbMuTDadvPA7F4bI1UAepsn3FNcxBMBWji4SxQSkFCjMHgLwvtlmJ1fm2d
 kC6apagB6wAeAVsPU4S8zoXak6uWuIvQSo8XLq4Qw02x0SHYJeij6Nrvb9zxicB3tROtWoVqeHH
 PoZYHaMM6RN4gSn5AJs8MZHfW/9wz+OBklxtmlWscGzvNFrbTffPKLwxfPOxCPRKTy0372aDB3d
 j2MXs6cmfFsm7eFF4lBFqmKhXNmrawahKg3MaYg8+88oh4G6w0L4jip6dRcf9CJug/Imw=
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 | 1 -
 drivers/scsi/sg.c          | 1 -
 2 files changed, 2 deletions(-)

diff --git a/drivers/scsi/scsi_sysctl.c b/drivers/scsi/scsi_sysctl.c
index 7f0914ea168f..093774d77534 100644
--- a/drivers/scsi/scsi_sysctl.c
+++ b/drivers/scsi/scsi_sysctl.c
@@ -18,7 +18,6 @@ static struct ctl_table scsi_table[] = {
 	  .maxlen	= sizeof(scsi_logging_level),
 	  .mode		= 0644,
 	  .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..86210e4dd0d3 100644
--- a/drivers/scsi/sg.c
+++ b/drivers/scsi/sg.c
@@ -1650,7 +1650,6 @@ static struct ctl_table sg_sysctls[] = {
 		.mode		= 0444,
 		.proc_handler	= proc_dointvec,
 	},
-	{}
 };
 
 static struct ctl_table_header *hdr;

-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Mon Oct 02 08:53:22 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 08:53:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611246.950733 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnEg5-0004ay-8F; Mon, 02 Oct 2023 08:53:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611246.950733; Mon, 02 Oct 2023 08:53: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 1qnEg5-0004aM-2F; Mon, 02 Oct 2023 08:53:21 +0000
Received: by outflank-mailman (input) for mailman id 611246;
 Mon, 02 Oct 2023 08:53: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=y3Nz=FQ=kernel.org=devnull+j.granados.samsung.com@srs-se1.protection.inumbo.net>)
 id 1qnEg3-0004Uc-RD
 for xen-devel@lists.xenproject.org; Mon, 02 Oct 2023 08:53:19 +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 219a4a9e-6101-11ee-9b0d-b553b5be7939;
 Mon, 02 Oct 2023 10:53:18 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by ams.source.kernel.org (Postfix) with ESMTP id 9E839B80E43;
 Mon,  2 Oct 2023 08:53:17 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPS id 1F46CC433CC;
 Mon,  2 Oct 2023 08:53:15 +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 0450BE784B1;
 Mon,  2 Oct 2023 08:53: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: 219a4a9e-6101-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696236795;
	bh=RreaA691Muoq1tBz/Pv/giyNwquLQXAxE/PNRJuaEjE=;
	h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From;
	b=sx2UpIMN8E2QXKGVQUFVNnMJ0GEtgZD0Ul+FoiWvMA4RYfG3dNoIZyjt1rKnTkOus
	 geyWn8BCmbb8IAOXXPPHU8p+gGM7OxFXK9KTqmOr7Ayx8+mkbIDznJkOD9R20ymkRh
	 urH65fP0+QOmmxKDcS+PmY1LQ6TIP4MG96NoorpTG6HVALms2t9G61U+avKtZf0APE
	 9+8GVHCSube0tamnDpXZPlQMIkWbiquO/LnJkFbiGiW3HQrAlzNKu/9DOj5yUThcuo
	 9N2zPQqenavT+rFipo4Ez0biDf4IUxN1i2hJqsdN2KDGJOm7HjbF31TLkAYu36Thep
	 T/+Z9BiGp08ew==
From: Joel Granados via B4 Relay <devnull+j.granados.samsung.com@kernel.org>
Date: Mon, 02 Oct 2023 10:55:21 +0200
Subject: [PATCH v2 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:
 <20231002-jag-sysctl_remove_empty_elem_drivers-v2-4-02dd0d46f71e@samsung.com>
References:
 <20231002-jag-sysctl_remove_empty_elem_drivers-v2-0-02dd0d46f71e@samsung.com>
In-Reply-To:
 <20231002-jag-sysctl_remove_empty_elem_drivers-v2-0-02dd0d46f71e@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: Joel Granados <j.granados@samsung.com>, 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
X-Mailer: b4 0.13-dev-86aa5
X-Developer-Signature: v=1; a=openpgp-sha256; l=820; i=j.granados@samsung.com;
 h=from:subject:message-id; bh=b0aUzVe6G3QsR0W+3zYsGPcsPzyZspe7CT2B0wHyj9o=;
 b=owEB7QES/pANAwAKAbqXzVK3lkFPAcsmYgBlGoV8JnfhmuDA3unWN1NVJZzrIz4lKZhdzp0HC
 lZ53f5+cRWJAbMEAAEKAB0WIQSuRwlXJeYxJc7LJ5C6l81St5ZBTwUCZRqFfAAKCRC6l81St5ZB
 TwWTC/9eTUpJYa6b//Qxyv7U8gNWDnOx45RNIwyZjsQma+SD8AdbjbV6+B6BSuatpSFrt18HnY+
 vYpazQWS+IMuefi8tSCcVhSh9CG3PDLzT/eoK63p5PAFwkSamtfxcz5ti6jPzxAmIld2IWdZbdg
 fBjpnYqdRq3qt1/AfkaHHXFShI6uF5rLdwHvkGMd2A6+2EAfN1H7LrxhTTixfwLWrbbFxCvzXXD
 j7JbesmcmNk2u/StA9EEJUbqF7RA4e6WzuK074sB6Gd+E/jgjDWrUC2t8evThm+fsUkSK+5PXv3
 +h+E/QZEo5ueVCoUGHCRr2cA3xjXCInSPBUmsrCjVPXkvgdz0pidGY5lS5p7mz7XYzHPqzww00q
 kO+FFkLZ7da8MHGG/74o43NlhmgY6QKnmPHp461XJInY86fF9w/gZ9o2fHQ6whRiv9XVB8hxTF/
 ITzpqyfwdwSRlC8qVn87Ha2TbGtunBEsDmBv8kYTgthTWJkYRTuIu7Gw9wf6DgNNButHs=
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 | 1 -
 1 file changed, 1 deletion(-)

diff --git a/drivers/tty/tty_io.c b/drivers/tty/tty_io.c
index 8a94e5a43c6d..b3ae062912f5 100644
--- a/drivers/tty/tty_io.c
+++ b/drivers/tty/tty_io.c
@@ -3608,7 +3608,6 @@ static struct ctl_table tty_table[] = {
 		.extra1		= SYSCTL_ZERO,
 		.extra2		= SYSCTL_ONE,
 	},
-	{ }
 };
 
 /*

-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Mon Oct 02 08:53:22 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 08:53:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611245.950727 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnEg4-0004Xa-VL; Mon, 02 Oct 2023 08:53:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611245.950727; Mon, 02 Oct 2023 08:53: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 1qnEg4-0004XS-RO; Mon, 02 Oct 2023 08:53:20 +0000
Received: by outflank-mailman (input) for mailman id 611245;
 Mon, 02 Oct 2023 08:53: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=y3Nz=FQ=kernel.org=devnull+j.granados.samsung.com@srs-se1.protection.inumbo.net>)
 id 1qnEg3-0004Uc-0v
 for xen-devel@lists.xenproject.org; Mon, 02 Oct 2023 08:53:19 +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 20878884-6101-11ee-9b0d-b553b5be7939;
 Mon, 02 Oct 2023 10:53:16 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by ams.source.kernel.org (Postfix) with ESMTP id 91F4EB80DDC;
 Mon,  2 Oct 2023 08:53:15 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPS id D7198C433C8;
 Mon,  2 Oct 2023 08:53:14 +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 B437FE784A5;
 Mon,  2 Oct 2023 08:53: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: 20878884-6101-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696236794;
	bh=IZog35uNq8vGRsNKIfEniN68FE7olg9OC5FvS2SzfCc=;
	h=From:Subject:Date:To:Cc:Reply-To:From;
	b=hufwGK8eMTwpAZzY5tjjCcSrUlENx2R+GHGSL/MRXkOFuLxlRDrpxb7L8+UmzAAMY
	 3kyrLlmdif7UJUhx8unTHOW05aoTQTW9PQR/22MMlDEvRzoawpbBHEOwCPKVSGi9hX
	 0wD8UynDxT9GxWBuVaKGJb1hefuvPbZhQSQ6hYcimLZgnX/osYq003o8rF1prmfvhi
	 LtYeFa0hAvwXxBPpAp66rx2duVRL7Q2j6tUSgp66GHPQLnypVAF+y5Z1tfYpYJ5k6j
	 /t6wPv+O/vLovGDIQr1Jl99KdgEs2bk9jJSQfzwBDj1gwVb8p3QcZWt/rbklVbQMGh
	 6tqQLbbnXv/NQ==
From: Joel Granados via B4 Relay <devnull+j.granados.samsung.com@kernel.org>
Subject: [PATCH v2 00/15] sysctl: Remove sentinel elements from drivers
Date: Mon, 02 Oct 2023 10:55:17 +0200
Message-Id:
 <20231002-jag-sysctl_remove_empty_elem_drivers-v2-0-02dd0d46f71e@samsung.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 7bit
X-B4-Tracking: v=1; b=H4sIAHWFGmUC/43NSw6DIBSF4a0YxqVB7EM66j4aQwhe9DYihmtJj
 XHvpSadd/ifwflWRhARiN2KlUVISBjGHPJQMNubsQOObW4mhayEklf+NB2nhew86Ag+JNDgp3n
 RMIDXbcQEkbgT1UldpBFtbVm+miI4fO/Mo8ndI80hLruayu/6A+r/gFRyweGsSimcNcqpOxlPr
 7E72uBZs23bB7xaV5/aAAAA
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: Joel Granados <j.granados@samsung.com>, 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
X-Mailer: b4 0.13-dev-86aa5
X-Developer-Signature: v=1; a=openpgp-sha256; l=12365;
 i=j.granados@samsung.com; h=from:subject:message-id;
 bh=odYjDIhyzOtO5Q0U203ntyluw37NErA2/ZkJretAk7g=;
 b=owEB7QES/pANAwAKAbqXzVK3lkFPAcsmYgBlGoV7hvNwCIGX3CH1hN+xorNhoD5xKwuTuTXzC
 Hr03QRHgz2JAbMEAAEKAB0WIQSuRwlXJeYxJc7LJ5C6l81St5ZBTwUCZRqFewAKCRC6l81St5ZB
 T9oDC/wKVdRDpAFA8LsfwGfmauawotop1selvIUUiWvIA6Ydbya0ucL7Chq71gwhtiD6XFgnEAm
 MYfELkOZ3OHpp+ERmRTsKo2NcA+1/OHMfAADX3brGP5OWKzGXVhkR9GYDAYD1XPo6ShiUZIT+Cu
 fIFO+s/Wg5tgnVjs4yE44jXRFPsbH3pwnqxFGbAbX26GI+GTPo+jjtUL0a+WcbJy9Mpxpu2+bDO
 TZHVixlLPOqq3YBxSBPOYQ+IYTra4MO9MYTdEdvQhfSGZgVBw+fdrG0/5caISy38c3S91WaLLFV
 pXyRzsol2P/FUrSXxdgKSkD6vBheUaywFVgt6cstLp4+/yStMgYYYcknx5Mlf4LOwuebaFLKAau
 pP1GDHZXYoR6xKI2UghYY1DX7mGloY0U16rrWh7f2hSAvTBsMHyzN1GS5nrtecfUmMpDNvqcDx6
 WIPfHqbSx6RcqFTDisa1KnzCA91No7YAHYQrpOwTMzCuakkbopEGnu34ba88MRprtuL3M=
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].

---
Changes in v2:
- Left the dangling comma in the ctl_table arrays.
- Link to v1: https://lore.kernel.org/r/20230928-jag-sysctl_remove_empty_elem_drivers-v1-0-e59120fca9f9@samsung.com

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>

To: Luis Chamberlain <mcgrof@kernel.org>
To: willy@infradead.org
To: josh@joshtriplett.org
To: Kees Cook <keescook@chromium.org>
To: Phillip Potter <phil@philpotter.co.uk>
To: Clemens Ladisch <clemens@ladisch.de>
To: Arnd Bergmann <arnd@arndb.de>
To: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
To: Juergen Gross <jgross@suse.com>
To: Stefano Stabellini <sstabellini@kernel.org>
To: Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>
To: Jiri Slaby <jirislaby@kernel.org>
To: "James E.J. Bottomley" <jejb@linux.ibm.com>
To: "Martin K. Petersen" <martin.petersen@oracle.com>
To: Doug Gilbert <dgilbert@interlog.com>
To: Sudip Mukherjee <sudipm.mukherjee@gmail.com>
To: Jason Gunthorpe <jgg@ziepe.ca>
To: Leon Romanovsky <leon@kernel.org>
To: Corey Minyard <minyard@acm.org>
To: Theodore Ts'o <tytso@mit.edu>
To: "Jason A. Donenfeld" <Jason@zx2c4.com>
To: David Ahern <dsahern@kernel.org>
To: "David S. Miller" <davem@davemloft.net>
To: Eric Dumazet <edumazet@google.com>
To: Jakub Kicinski <kuba@kernel.org>
To: Paolo Abeni <pabeni@redhat.com>
To: Robin Holt <robinmholt@gmail.com>
To: Steve Wahl <steve.wahl@hpe.com>
To: Russ Weight <russell.h.weight@intel.com>
To: "Rafael J. Wysocki" <rafael@kernel.org>
To: Song Liu <song@kernel.org>
To: "K. Y. Srinivasan" <kys@microsoft.com>
To: Haiyang Zhang <haiyangz@microsoft.com>
To: Wei Liu <wei.liu@kernel.org>
To: Dexuan Cui <decui@microsoft.com>
To: Jani Nikula <jani.nikula@linux.intel.com>
To: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
To: Rodrigo Vivi <rodrigo.vivi@intel.com>
To: Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com>
To: David Airlie <airlied@gmail.com>
To: Daniel Vetter <daniel@ffwll.ch>
Cc: linux-kernel@vger.kernel.org
Cc: xen-devel@lists.xenproject.org
Cc: linux-serial@vger.kernel.org
Cc: linux-scsi@vger.kernel.org
Cc: linuxppc-dev@lists.ozlabs.org
Cc: linux-rdma@vger.kernel.org
Cc: openipmi-developer@lists.sourceforge.net
Cc: netdev@vger.kernel.org
Cc: linux-raid@vger.kernel.org
Cc: linux-hyperv@vger.kernel.org
Cc: intel-gfx@lists.freedesktop.org
Cc: dri-devel@lists.freedesktop.org

---

---
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
      Drivers: hv: 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 |  1 -
 drivers/cdrom/cdrom.c                         |  1 -
 drivers/char/hpet.c                           |  1 -
 drivers/char/ipmi/ipmi_poweroff.c             |  1 -
 drivers/char/random.c                         |  1 -
 drivers/gpu/drm/i915/i915_perf.c              |  1 -
 drivers/hv/hv_common.c                        |  1 -
 drivers/infiniband/core/iwcm.c                |  1 -
 drivers/infiniband/core/ucma.c                |  1 -
 drivers/macintosh/mac_hid.c                   |  1 -
 drivers/md/md.c                               |  1 -
 drivers/misc/sgi-xp/xpc_main.c                |  2 --
 drivers/net/vrf.c                             |  1 -
 drivers/parport/procfs.c                      | 28 +++++++++++----------------
 drivers/scsi/scsi_sysctl.c                    |  1 -
 drivers/scsi/sg.c                             |  1 -
 drivers/tty/tty_io.c                          |  1 -
 drivers/xen/balloon.c                         |  1 -
 18 files changed, 11 insertions(+), 35 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 Mon Oct 02 08:53:22 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 08:53:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611248.950746 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnEg6-0004uW-5x; Mon, 02 Oct 2023 08:53:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611248.950746; Mon, 02 Oct 2023 08:53: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 1qnEg5-0004s4-Uu; Mon, 02 Oct 2023 08:53:21 +0000
Received: by outflank-mailman (input) for mailman id 611248;
 Mon, 02 Oct 2023 08:53: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=y3Nz=FQ=kernel.org=devnull+j.granados.samsung.com@srs-se1.protection.inumbo.net>)
 id 1qnEg4-0004Uc-NF
 for xen-devel@lists.xenproject.org; Mon, 02 Oct 2023 08:53:20 +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 21f76f51-6101-11ee-9b0d-b553b5be7939;
 Mon, 02 Oct 2023 10:53:18 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by ams.source.kernel.org (Postfix) with ESMTP id 3F059B80E53;
 Mon,  2 Oct 2023 08:53:18 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPS id F0009C32785;
 Mon,  2 Oct 2023 08:53:15 +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 CF8C0E7849A;
 Mon,  2 Oct 2023 08:53: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: 21f76f51-6101-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696236796;
	bh=BSn//RwfVMrvPoAKalhFYY/8mhovHq+kd6dT13gD9k8=;
	h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From;
	b=SSaI6BvxQjmcs4GEFZYC3EtPh56M5+I3SEdeEvMdmsRlgOl0/nTzwWXn3SVikiv79
	 1ayAq0JLHvsOpnFr5pG6EjoOpv9TTpuf0rPByflnwmE3lod1nOxMPklWlhHWdlkOwB
	 JxkBU8vSXXU2NXqSZvSYKDdDiKqUqYs7wzdyJfEl6qERmKKcNKalyNcXpDOswSgooA
	 5c+BntKi8u8CTorQZd0u0T3GHtZMlIV3DN6PTFtcnuw7TGDWyFGWM4dENwf+CLDzQv
	 Qkb7Cgk905aYCAcBgsqVot56xdPAlCTn26GtrBXNC8z8OXh3gWOgnhgFrHh2wT1dB/
	 xtNJm+wd4VwCw==
From: Joel Granados via B4 Relay <devnull+j.granados.samsung.com@kernel.org>
Date: Mon, 02 Oct 2023 10:55:29 +0200
Subject: [PATCH v2 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?=3C20231002-jag-sysctl=5Fremove=5Fempty=5Felem=5Fdrive?=
 =?utf-8?q?rs-v2-12-02dd0d46f71e=40samsung=2Ecom=3E?=
References:
 <20231002-jag-sysctl_remove_empty_elem_drivers-v2-0-02dd0d46f71e@samsung.com>
In-Reply-To:
 <20231002-jag-sysctl_remove_empty_elem_drivers-v2-0-02dd0d46f71e@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: Joel Granados <j.granados@samsung.com>, 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
X-Mailer: b4 0.13-dev-86aa5
X-Developer-Signature: v=1; a=openpgp-sha256; l=1030;
 i=j.granados@samsung.com; h=from:subject:message-id;
 bh=dSbsqoYM5F0forI6JAxGBllYsHihbal0Nnr9OSk3MCA=;
 b=owEB7QES/pANAwAKAbqXzVK3lkFPAcsmYgBlGoV/KvOoFfWIcmAF/sCqbEzd0ciPPa7ANRQeV
 5eLgFZ3QDOJAbMEAAEKAB0WIQSuRwlXJeYxJc7LJ5C6l81St5ZBTwUCZRqFfwAKCRC6l81St5ZB
 T2T1C/0Ue0/pX8RJDJSDBCMCjQ3HVnnkiI6/qCOH0fnL8+CWShqnWrkdXO6K5PzvyZvto0MaV1O
 qwtKHF0/he5rQjfT19MmMeap2SqXGkznWmnHlVdYtjAcu+eKD7lgElb+2YoOSxzCgrp66NaIHCT
 Rfn9REm0zsNr40oIeungH2jJmzpq48UW91InfOQrc8fNEs7gvVBWFN8x5lsPbgIfzkO0O9Sne0t
 o3E8YDJU+2PoW4qWEeuUOmAVROIwT110ScNs32qOQ+hWxeSXnH5vPTVt651tV9nJinTWPuPoNo8
 GklO6k76kbbl3rN3a4pHNPp5JUfxThANZaFjTs4M54UNA6XL/KY4YSE9kXWGJrE4tWHAMbXYX8M
 1wY9+Tla39Vmi6M2EY0kVNR6xj+LTfD8Qz0P5E2FqXUCFRuwdg5vabCaSNTAdr1FH077BSkS4Z3
 sTt6P68liUw7QyehRCrWLRyiEE4yxcGT9ADxewgJ9bZe1CfP0Y8NhVrZg6/OlaRWYBziM=
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 | 1 -
 1 file changed, 1 deletion(-)

diff --git a/drivers/base/firmware_loader/fallback_table.c b/drivers/base/firmware_loader/fallback_table.c
index e5ac098d0742..8432ab2c3b3c 100644
--- a/drivers/base/firmware_loader/fallback_table.c
+++ b/drivers/base/firmware_loader/fallback_table.c
@@ -44,7 +44,6 @@ static struct ctl_table firmware_config_table[] = {
 		.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 Mon Oct 02 08:53:23 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 08:53:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611249.950764 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnEg7-0005Rp-FB; Mon, 02 Oct 2023 08:53:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611249.950764; Mon, 02 Oct 2023 08:53: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 1qnEg7-0005Qy-9i; Mon, 02 Oct 2023 08:53:23 +0000
Received: by outflank-mailman (input) for mailman id 611249;
 Mon, 02 Oct 2023 08:53: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=y3Nz=FQ=kernel.org=devnull+j.granados.samsung.com@srs-se1.protection.inumbo.net>)
 id 1qnEg5-0004XI-6B
 for xen-devel@lists.xenproject.org; Mon, 02 Oct 2023 08:53:21 +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 21d55563-6101-11ee-878e-cb3800f73035;
 Mon, 02 Oct 2023 10:53: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 8147560C94;
 Mon,  2 Oct 2023 08:53:17 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPS id 475C9C116D2;
 Mon,  2 Oct 2023 08:53:15 +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 29385E784AF;
 Mon,  2 Oct 2023 08:53: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: 21d55563-6101-11ee-878e-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696236795;
	bh=9jkWNrvkT+0LBek9ukFJf+FP4eXJDtJ7tqddCAk457s=;
	h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From;
	b=mHarItBj0kfOKDXhcHyRTyxtdqNbek3gy9DO+yrzNTUJjpLPxU5bKRqHCkdOW17Ie
	 xkjq0jUNKFsuFS2t19rNxjW1x3vXKYkakaCdWfIuYHrFXtHrvD/4bfnm6FDLdjwnlo
	 5voc1dkLeKWe49cuL/zomKRMH9j951bKZs0iByI9rUHpEQ4xmK+7nJPykI4XyrFMGp
	 hBVWTvg03Gy3ikCGWQykcvc5t0tV5Mq6CMkTLxGhqPmcMmS4/zmnuv2Cu263JvWv+R
	 BfgcskbdW/nGJdhxW0T1YjF8PrpchaPtHg/O8IdSlvpoENpmGsP0W51gKChlgqBeIv
	 qAV34DsE/M6Vw==
From: Joel Granados via B4 Relay <devnull+j.granados.samsung.com@kernel.org>
Date: Mon, 02 Oct 2023 10:55:23 +0200
Subject: [PATCH v2 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:
 <20231002-jag-sysctl_remove_empty_elem_drivers-v2-6-02dd0d46f71e@samsung.com>
References:
 <20231002-jag-sysctl_remove_empty_elem_drivers-v2-0-02dd0d46f71e@samsung.com>
In-Reply-To:
 <20231002-jag-sysctl_remove_empty_elem_drivers-v2-0-02dd0d46f71e@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: Joel Granados <j.granados@samsung.com>, 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
X-Mailer: b4 0.13-dev-86aa5
X-Developer-Signature: v=1; a=openpgp-sha256; l=3837;
 i=j.granados@samsung.com; h=from:subject:message-id;
 bh=NSvTJ17Kcfm8DYFJyM6YVk1PHDjvaSDbIrsd2Gse9YE=;
 b=owEB7QES/pANAwAKAbqXzVK3lkFPAcsmYgBlGoV9bbHfdufy6tsLcPXDVXR+WNMz7RSAH58f9
 kFGXPJsJcmJAbMEAAEKAB0WIQSuRwlXJeYxJc7LJ5C6l81St5ZBTwUCZRqFfQAKCRC6l81St5ZB
 T2bgDACMcQXXhS/ofH4DCGI9Yfly1kT6RdmG9Sur8hjxuooeorZgEl/aCXeisvwUQFj4lOt8Hx0
 +gdjKSn0uN4Y8DF0k6dnFSA+h9NhuFNA65F6Wain093IqXcKXimz7qvzMw2nopuTQ+X+N3zQ0vJ
 absXFp0jssl+QlKi1hDVQz8mDWpkmDNx/bOPRh4QErCHilM/maVTlO5Fq7neDfmeOfloV1U+qLi
 dmmOgFxn9jpx2A+HY0D568WeEcE52zMiP2tSiVYzTXfI69odUkdpXAR5mAiC8wJwCKdEkveF5fD
 iBpWx5t50vj4aiid0chdBpPXmAcdBlYTLYFlwVqccnB7XAefYcefrfLqQyhwfzR7SjZj8yCcjn/
 zKe2EBbcfrFa6tHzwtj6dbrIRnfMMIjpjwrb+QsvwLtgSt9qqv9W/qEZDyl3+79NQu2Squ9v1Bk
 /EewjeRY0ixUgWq2yB2PeOCI975SunWYb3QfV1aFT07wvTzBKt9k6lYWP3VItXPoWT9RE=
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 | 28 +++++++++++-----------------
 1 file changed, 11 insertions(+), 17 deletions(-)

diff --git a/drivers/parport/procfs.c b/drivers/parport/procfs.c
index 4e5b972c3e26..532d5cbbd344 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 = {
@@ -341,7 +345,6 @@ static const struct parport_sysctl_table parport_sysctl_template = {
 			.proc_handler	= do_autoprobe
 		},
 #endif /* IEEE 1284 support */
-		{}
 	},
 	{
 		{
@@ -351,19 +354,14 @@ static const struct parport_sysctl_table parport_sysctl_template = {
 			.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
@@ -379,7 +377,6 @@ parport_device_sysctl_template = {
 			.extra1		= (void*) &parport_min_timeslice_value,
 			.extra2		= (void*) &parport_max_timeslice_value
 		},
-		{}
 	},
 	{
 		{
@@ -388,17 +385,13 @@ parport_device_sysctl_template = {
 			.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
@@ -423,7 +416,6 @@ parport_default_sysctl_table = {
 			.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 Mon Oct 02 08:53:24 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 08:53:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611250.950770 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnEg7-0005W9-V0; Mon, 02 Oct 2023 08:53:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611250.950770; Mon, 02 Oct 2023 08:53: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 1qnEg7-0005V3-OB; Mon, 02 Oct 2023 08:53:23 +0000
Received: by outflank-mailman (input) for mailman id 611250;
 Mon, 02 Oct 2023 08:53: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=y3Nz=FQ=kernel.org=devnull+j.granados.samsung.com@srs-se1.protection.inumbo.net>)
 id 1qnEg5-0004Uc-NI
 for xen-devel@lists.xenproject.org; Mon, 02 Oct 2023 08:53:21 +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 213a2963-6101-11ee-9b0d-b553b5be7939;
 Mon, 02 Oct 2023 10:53:18 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by dfw.source.kernel.org (Postfix) with ESMTP id AD2D660C90;
 Mon,  2 Oct 2023 08:53:16 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPS id F3E6DC433C7;
 Mon,  2 Oct 2023 08:53:14 +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 D7B6CE784AE;
 Mon,  2 Oct 2023 08:53: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: 213a2963-6101-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696236795;
	bh=aJvesTjncjdehvjoOzgicraxwh/rWiTjr7edG2Q6mv4=;
	h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From;
	b=rPJCnXgUng12Mon8WGDiqrOeKzLo4FZckcbZDHD68j4g1fnP9YKcXfgzclJhytoy2
	 oOW8aFHbf4p0+lhSyPbWIsBBO7PuynlLP2Y0iKKbgiKWiNQ3+H6AlZTJ4wYgN9dlgk
	 Q9wejDVQM4kbaKc2Tv+xLWx4xXubVibEp4GGIDuKpshDB5p9qCUxCCThzTUHnpaxbS
	 cc3ZbKgy2+N7QoE8P0vgp9CEl9492viaO2HInM2bUVAhdZQzIB9wL+XJK88DcYfnJj
	 ET4RubMDksXAXcizyUzFlBMwTqDl/c56ZDUwN27AbdIuXCczipjwXcox/lVGwHQuQl
	 ibKXUsjL97NtQ==
From: Joel Granados via B4 Relay <devnull+j.granados.samsung.com@kernel.org>
Date: Mon, 02 Oct 2023 10:55:19 +0200
Subject: [PATCH v2 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:
 <20231002-jag-sysctl_remove_empty_elem_drivers-v2-2-02dd0d46f71e@samsung.com>
References:
 <20231002-jag-sysctl_remove_empty_elem_drivers-v2-0-02dd0d46f71e@samsung.com>
In-Reply-To:
 <20231002-jag-sysctl_remove_empty_elem_drivers-v2-0-02dd0d46f71e@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: Joel Granados <j.granados@samsung.com>, 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
X-Mailer: b4 0.13-dev-86aa5
X-Developer-Signature: v=1; a=openpgp-sha256; l=872; i=j.granados@samsung.com;
 h=from:subject:message-id; bh=D4/jh8s1FOZmHUkzA2HIKPxBmTVEhKvdOly6Ejtyi9s=;
 b=owEB7QES/pANAwAKAbqXzVK3lkFPAcsmYgBlGoV8RaCzxdAOWtuPnRt7Wux7rupM5tB7FtyrW
 q9lIZ9XZ+CJAbMEAAEKAB0WIQSuRwlXJeYxJc7LJ5C6l81St5ZBTwUCZRqFfAAKCRC6l81St5ZB
 Ty/0C/4uqqq0dHDfGdoGvuiIuxvDhp5ZXfs4li1OUAa9vw/kKRAFFw0BHlJ83pzvScsZ12deUPj
 2Edd0uFUigRsFKLXFTi+/uSJEvha9/UaNQhJzk7mT89m0s5xBmtni5vkcDiSCWnMUv/U7+2H8Y3
 OOOQGjWxSMOZV2e2bXOSlpOLLBDTgaTXQrlHrCOx1ytKm4tYvFHLCe9HOwJKwWZq2QN4WG6Byk+
 wy5Kw93OwbxQlqaev/qEHFhZhtyb3JFmwMCUpNCg00dHkOgnVjaiYmJGZsZE6DBCn5DYoevLBAF
 GrueOiTX1qtk2NNIdj7MkIufi7Z0ardeaO9/RrZ5RlBLMoRFDydK79kGi0ANS2wc0/7vZKx/7Wq
 u9TmBsyJfFw7cevn8fkD5kdY6jEIG3mdhoiSB+9triRBP99C9cWvJoxla/GvwN6tcj9mjG3fvsX
 rXq0YzVTqo/8UPLlRfKC0CMM6mVj4hSse2wU+7FAlYPUF1kbaX8QA1SwyLdmfT5IDcfJI=
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 | 1 -
 1 file changed, 1 deletion(-)

diff --git a/drivers/char/hpet.c b/drivers/char/hpet.c
index ee71376f174b..f09c79081b01 100644
--- a/drivers/char/hpet.c
+++ b/drivers/char/hpet.c
@@ -728,7 +728,6 @@ static struct ctl_table hpet_table[] = {
 	 .mode = 0644,
 	 .proc_handler = proc_dointvec,
 	 },
-	{}
 };
 
 static struct ctl_table_header *sysctl_header;

-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Mon Oct 02 08:53:25 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 08:53:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611251.950780 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnEg8-0005mH-Sq; Mon, 02 Oct 2023 08:53:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611251.950780; Mon, 02 Oct 2023 08: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 1qnEg8-0005jN-IK; Mon, 02 Oct 2023 08:53:24 +0000
Received: by outflank-mailman (input) for mailman id 611251;
 Mon, 02 Oct 2023 08:53: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=y3Nz=FQ=kernel.org=devnull+j.granados.samsung.com@srs-se1.protection.inumbo.net>)
 id 1qnEg6-0004XI-6O
 for xen-devel@lists.xenproject.org; Mon, 02 Oct 2023 08:53: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 2223bba8-6101-11ee-878e-cb3800f73035;
 Mon, 02 Oct 2023 10:53: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 9C75C60D27;
 Mon,  2 Oct 2023 08:53:17 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPS id 5A622C116D5;
 Mon,  2 Oct 2023 08:53:15 +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 432AFE784B2;
 Mon,  2 Oct 2023 08:53: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: 2223bba8-6101-11ee-878e-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696236795;
	bh=5j54WanRwAzUcZ2uYs3SS1dM2Tn6iffizk1WPQdUlpY=;
	h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From;
	b=jj1pFlC05T6xlfv4eflK/SImNn2FxuuYJs+KnnWRcS5VNiNPnYg+9hG9hk51XOblh
	 7gPQR8KsEBR9FzTkRqdz2vhMJc6JpITY6Ukcfs2cB6e/s05tjHcyYWy/0aWibJvfVF
	 cKwgkPXi4KUI6UTLBiKB3egHptN1VxJucZ3URIMJGR8jtBq1ATU4H+3X+333BXR5YD
	 ss1AUMhfxgiBbNIshC58cVbcmr+nqWsZC/3otNokI2Tp2wpp6Vtx7QHQS3y4x0KXtE
	 AOqv+GzIhjiGBwiHl4DKq804izCB56tHwff5IfyjnR7JXjuDgb/wxRNSbccS2WUjNo
	 sl+TGPCl8ux1g==
From: Joel Granados via B4 Relay <devnull+j.granados.samsung.com@kernel.org>
Date: Mon, 02 Oct 2023 10:55:24 +0200
Subject: [PATCH v2 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:
 <20231002-jag-sysctl_remove_empty_elem_drivers-v2-7-02dd0d46f71e@samsung.com>
References:
 <20231002-jag-sysctl_remove_empty_elem_drivers-v2-0-02dd0d46f71e@samsung.com>
In-Reply-To:
 <20231002-jag-sysctl_remove_empty_elem_drivers-v2-0-02dd0d46f71e@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: Joel Granados <j.granados@samsung.com>, 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
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=c34FrDvRsuK3W5VxNHhzTVZ4EpvxmdCHO9VF2TbEJQM=;
 b=owEB7QES/pANAwAKAbqXzVK3lkFPAcsmYgBlGoV9BM0qHj8XlYlHwvsY27mE0p7Q50fHd/x3m
 mamAQ6k40OJAbMEAAEKAB0WIQSuRwlXJeYxJc7LJ5C6l81St5ZBTwUCZRqFfQAKCRC6l81St5ZB
 T+ktC/9hHJ3tzmqocKUjOWy67m0gsFX+WmzFOM1VWX4Xx68Thf2Xh9rp1PbKUomC5Wypz4sEz+/
 DH8udTCz1xwKfRQ4neRh4N91gxFjMM/bXB/33iT8dKbD2BSynm/sWAbYjtTG0u+j1G35lBAfKFl
 rTp6Tu6TxNe+RIcwAfU79Wi/FOzIBwNvsUwdviYDrLxFse3xM5Kf3rghGM/5bunNk3qmWvbxV35
 eb1ODj2kUBMjd6w5vWbsrdvRGSXiy/D8wwKkOC6+HzDkRgPxHusILte3pIBAMUilO+rWF3dktI3
 YacFGr8OQvVODccQ2G/hCi3YSkxkDjes1yBh8L/+/D9Zv/lWhU1SnXI+91LCZljVERXOj/qbZKt
 8FlI1sBruSoMxd31onJ4x9loaKtD+75XozhNKZouQsbbJj96fQPnvr3+gwgziNkXiMPElz7Bv7T
 81pALQhara797OJM8h5V1xw7n9CkuNCysxLg967rj79aFG6UaQfdNIA9PKkBSzlcXc+/k=
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 | 1 -
 1 file changed, 1 deletion(-)

diff --git a/drivers/macintosh/mac_hid.c b/drivers/macintosh/mac_hid.c
index d8c4d5664145..1ae3539beff5 100644
--- a/drivers/macintosh/mac_hid.c
+++ b/drivers/macintosh/mac_hid.c
@@ -236,7 +236,6 @@ static struct ctl_table mac_hid_files[] = {
 		.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 Mon Oct 02 08:53:25 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 08:53:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611252.950786 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnEg9-0005wR-LF; Mon, 02 Oct 2023 08:53:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611252.950786; Mon, 02 Oct 2023 08:53: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 1qnEg9-0005sF-69; Mon, 02 Oct 2023 08:53:25 +0000
Received: by outflank-mailman (input) for mailman id 611252;
 Mon, 02 Oct 2023 08:53: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=y3Nz=FQ=kernel.org=devnull+j.granados.samsung.com@srs-se1.protection.inumbo.net>)
 id 1qnEg6-0004Uc-NM
 for xen-devel@lists.xenproject.org; Mon, 02 Oct 2023 08:53:22 +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 2154869c-6101-11ee-9b0d-b553b5be7939;
 Mon, 02 Oct 2023 10:53:18 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by dfw.source.kernel.org (Postfix) with ESMTP id 0761E60A2B;
 Mon,  2 Oct 2023 08:53:17 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPS id 15E89C433B8;
 Mon,  2 Oct 2023 08:53:15 +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 E6D5AE7849A;
 Mon,  2 Oct 2023 08:53: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: 2154869c-6101-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696236795;
	bh=5V+ck7zme+riQyx1xmqb0Z0EeDR6wxHbTqGoKbjtrmQ=;
	h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From;
	b=h9YSxCOBiZI18TS8F7IFLh6Qq5+WpoHRSjCXtJkW74v79cxU+xHBab6ovMTly8LKe
	 IDFqi8nG5On9c5mUzM2nMlLg9u/xCra/9Lupu7tXNo+obgVRsiSTMsjN8q8qMhZJwW
	 OZMb4LcQIuvVtxOSe5yyZwJwU7XQJTCScPZiAEqAQ6Vkh29H2SZ2WK88rj6FFDCll8
	 DP0Rxd0R3nyUifHTS43/yIIYwnebe2P7wSqXDQ/poAMdzJ4NNjLpkUftDL2+5srhXP
	 9tiFoq42TchWR1nIGuWKvALBVYUFpStNC/KPFdeVqueWUJZ1tJWqRhEb5xnTl49iW+
	 PgMcLW7jUn/tg==
From: Joel Granados via B4 Relay <devnull+j.granados.samsung.com@kernel.org>
Date: Mon, 02 Oct 2023 10:55:20 +0200
Subject: [PATCH v2 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:
 <20231002-jag-sysctl_remove_empty_elem_drivers-v2-3-02dd0d46f71e@samsung.com>
References:
 <20231002-jag-sysctl_remove_empty_elem_drivers-v2-0-02dd0d46f71e@samsung.com>
In-Reply-To:
 <20231002-jag-sysctl_remove_empty_elem_drivers-v2-0-02dd0d46f71e@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: Joel Granados <j.granados@samsung.com>, 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
X-Mailer: b4 0.13-dev-86aa5
X-Developer-Signature: v=1; a=openpgp-sha256; l=846; i=j.granados@samsung.com;
 h=from:subject:message-id; bh=8Nedf2Lwq/OA3aANfJ6n4h5+UsWWU6lX+VhCPVGEdNQ=;
 b=owEB7QES/pANAwAKAbqXzVK3lkFPAcsmYgBlGoV8XTr6pqPXL2Smxc+bYMHo1/P6P4+Xz5jGM
 LVmxskaoPCJAbMEAAEKAB0WIQSuRwlXJeYxJc7LJ5C6l81St5ZBTwUCZRqFfAAKCRC6l81St5ZB
 T9KdC/0drEL8+dTyGyZg/6XaWVheHfUsBsgDQaWMOuKpb0rMHpDrn/Nci5oHt1wDz5sWP1TWjgs
 FKsSDVxdnNBN+9X0ckqjWyGf5rl/Xxm/E9lR6RQB6eV9u8YjlU7L3mSPq3a4ZHmjFF6Pti2XKv+
 Ca4WXU7SAKiu/C8OW/RyYQl32fKwwgcV6kONqEbCrLSbK4LveVwISI+vDPkola1wrfM+muUVDRw
 FRJxuiV6BavJ4pXOXDh7tOjva65fGwnLqIA88sPKLc7utjrUtGNWNGYrMglM8hKWZwcYObt0s7V
 C5U2+0FZ7+qLORCw2Yclx+UcLpl2pPXjwpWJu3ak3VT0hyjEXvIvIx1UYsdwlorQAitkTer2eKf
 HDMMBMPbtS8OxA+Lb35G/9PWV/3LOjSYvqo4AEH+OQHh7/7ej55TZAEbYIlQCnXXLoOatbyUZ6I
 beZVa+UQo/zcDzjjh9tSz1eY8UnBeuglio1DFA0Yfa5pbmOPP8X9qngGhl19spS4f0lqQ=
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 | 1 -
 1 file changed, 1 deletion(-)

diff --git a/drivers/xen/balloon.c b/drivers/xen/balloon.c
index 586a1673459e..976c6cdf9ee6 100644
--- a/drivers/xen/balloon.c
+++ b/drivers/xen/balloon.c
@@ -94,7 +94,6 @@ static struct ctl_table balloon_table[] = {
 		.extra1         = SYSCTL_ZERO,
 		.extra2         = SYSCTL_ONE,
 	},
-	{ }
 };
 
 #else

-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Mon Oct 02 08:53:26 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 08:53:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611253.950794 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnEgA-00066f-Dk; Mon, 02 Oct 2023 08:53:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611253.950794; Mon, 02 Oct 2023 08:53: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 1qnEg9-00063l-Pi; Mon, 02 Oct 2023 08:53:25 +0000
Received: by outflank-mailman (input) for mailman id 611253;
 Mon, 02 Oct 2023 08:53: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=y3Nz=FQ=kernel.org=devnull+j.granados.samsung.com@srs-se1.protection.inumbo.net>)
 id 1qnEg7-0004XI-6j
 for xen-devel@lists.xenproject.org; Mon, 02 Oct 2023 08:53:23 +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 22bf5f6f-6101-11ee-878e-cb3800f73035;
 Mon, 02 Oct 2023 10:53: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 D86B260D39;
 Mon,  2 Oct 2023 08:53:17 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPS id BF60FC3277B;
 Mon,  2 Oct 2023 08:53:15 +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 A6BFDE784A5;
 Mon,  2 Oct 2023 08:53: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: 22bf5f6f-6101-11ee-878e-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696236795;
	bh=UrT6qFU01UuJnw1on3XWxUGJuijnLYQO/DZrjXeRvo4=;
	h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From;
	b=REb+bphyh9qkQZyNKwrmSauRwNcqJjzzCSht5YPIFFtd0hF5HQixpMoZA+Q/GcBtZ
	 T1ZY3FGofKg8shHAVt9pHSmeSjq1opArIWx7tRZ9OwlcGG5cwHEs2uZSdgRy0s35FI
	 tXCc0YagUUKuYH5EnZR6cxM3MUgcV9gxAhg1EMW4wE4MzkEDwDsVyDCPkCJpu7pRlf
	 iBySai/SM0BQW4BLrHockZbM5wn55KwPLIIyl3Kzim4hxiGLwfN5kMCJ/idNzy6PfW
	 OS+aK5t8IiinP5Y65qHPfSYwTdmz5xSaHp9ZQkanw+rs8S9+w1va+gO8Xb4Fp+TWV2
	 aXLqCkSz754nA==
From: Joel Granados via B4 Relay <devnull+j.granados.samsung.com@kernel.org>
Date: Mon, 02 Oct 2023 10:55:27 +0200
Subject: [PATCH v2 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?=3C20231002-jag-sysctl=5Fremove=5Fempty=5Felem=5Fdrive?=
 =?utf-8?q?rs-v2-10-02dd0d46f71e=40samsung=2Ecom=3E?=
References:
 <20231002-jag-sysctl_remove_empty_elem_drivers-v2-0-02dd0d46f71e@samsung.com>
In-Reply-To:
 <20231002-jag-sysctl_remove_empty_elem_drivers-v2-0-02dd0d46f71e@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: Joel Granados <j.granados@samsung.com>, 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
X-Mailer: b4 0.13-dev-86aa5
X-Developer-Signature: v=1; a=openpgp-sha256; l=887; i=j.granados@samsung.com;
 h=from:subject:message-id; bh=XxeHsAq6JKBX5gFQdKtkOwMDqj3k6LdRrwtSDoG13Qk=;
 b=owEB7QES/pANAwAKAbqXzVK3lkFPAcsmYgBlGoV+Y6Cm3LhCKnSHOjCZ2v2gHofq/C47K5T/3
 Jb7xTkN9KiJAbMEAAEKAB0WIQSuRwlXJeYxJc7LJ5C6l81St5ZBTwUCZRqFfgAKCRC6l81St5ZB
 T6gPC/48wscQhiW7NUFTOR5UQHPuSRPo/W1iU5eo0e4HVHau6IgCW3NQNU+ljioKG8j8vjwyl0B
 eJLH8LvK98LFTDps1N4GMWDUW7M8ef27MYnRvU+2bZIsDiOmKFzjmY2cYDKTGsRvt1wKtYpbPO1
 r+H+B6TU+Np3A7wF0s30M82uN7P/OYHbVwaaX5NjK7wblqTYSu44tf+GprefUEvn2sg6+fm54jr
 hV5XFvzYAMsGRN6izfCFRaBkLZHcbmqYjOkI5EhCzxL/ZZwja2TyFKm2WQyFGgq3VYdrT7ZGDVv
 WeylYoFcNGDPKgqsyDoHi0mVwyjdzClwycDhQ5DvciuWPkt+Ly0lkWJfex7a6fge05zTF+M/zej
 Fn7WWsbDkDL/u/6r9slGqPZcUv1gZE+eaTbnIjoALtIhnaD44hrJ1DAuNJxKWOugdshBDx0uNAy
 8aLnlv5VzYQ8R+Yt/6mQDnXXVnrUe1DhXBYtQjMz54uSUSNfyV0lGXXDIxJar8WWFl34o=
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 | 1 -
 1 file changed, 1 deletion(-)

diff --git a/drivers/net/vrf.c b/drivers/net/vrf.c
index a3408e4e1491..db766941b78f 100644
--- a/drivers/net/vrf.c
+++ b/drivers/net/vrf.c
@@ -1963,7 +1963,6 @@ static const struct ctl_table vrf_table[] = {
 		/* 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 Mon Oct 02 08:53:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 08:53:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611254.950799 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnEgA-0006ET-V1; Mon, 02 Oct 2023 08:53:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611254.950799; Mon, 02 Oct 2023 08:53: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 1qnEgA-0006A2-9v; Mon, 02 Oct 2023 08:53:26 +0000
Received: by outflank-mailman (input) for mailman id 611254;
 Mon, 02 Oct 2023 08:53: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=y3Nz=FQ=kernel.org=devnull+j.granados.samsung.com@srs-se1.protection.inumbo.net>)
 id 1qnEg7-0004Uc-Ng
 for xen-devel@lists.xenproject.org; Mon, 02 Oct 2023 08:53:23 +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 221dc5f8-6101-11ee-9b0d-b553b5be7939;
 Mon, 02 Oct 2023 10:53:19 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by ams.source.kernel.org (Postfix) with ESMTP id 52642B80E58;
 Mon,  2 Oct 2023 08:53:18 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPS id 0D5DBC32789;
 Mon,  2 Oct 2023 08:53:16 +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 E3695E784B2;
 Mon,  2 Oct 2023 08:53: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: 221dc5f8-6101-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696236796;
	bh=hrtUSBUCIyA9Xh0J2iqcV4rs/NRa5ErFNI1zyion65E=;
	h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From;
	b=igvGXr7OERaYZNfGyUIFtp2Q7kMPNrHAWsrMMnl5p7MsQtKv9Po/DSZFJ5uPrgpJ3
	 v/qQil/ibb6NbmpzeMSq/8El/gUPR0ioHl8RGNv4b9t5idX2rSzd6qX6u8urBFNKNc
	 0M0ZL8l9JPtiD/iUxNsiutTpOe3P8QZ38ay43bihunK/z4g4ZahiyRoK33sPyQ9xJb
	 UTdffDYaP87PUvPbYytP7teBFUaSkwU5X8iVs9zp3r/iaUSB6UrhUBf6AlvsH097eu
	 QojU9Xh8Pl58kl0FzCcARVvO+csbyxxGFKkkpayKuL6S4NvjsZrH4wziwddy9JFjil
	 nBj4ko+yP1xAg==
From: Joel Granados via B4 Relay <devnull+j.granados.samsung.com@kernel.org>
Date: Mon, 02 Oct 2023 10:55:30 +0200
Subject: [PATCH v2 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?=3C20231002-jag-sysctl=5Fremove=5Fempty=5Felem=5Fdrive?=
 =?utf-8?q?rs-v2-13-02dd0d46f71e=40samsung=2Ecom=3E?=
References:
 <20231002-jag-sysctl_remove_empty_elem_drivers-v2-0-02dd0d46f71e@samsung.com>
In-Reply-To:
 <20231002-jag-sysctl_remove_empty_elem_drivers-v2-0-02dd0d46f71e@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: Joel Granados <j.granados@samsung.com>, 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
X-Mailer: b4 0.13-dev-86aa5
X-Developer-Signature: v=1; a=openpgp-sha256; l=829; i=j.granados@samsung.com;
 h=from:subject:message-id; bh=e2yFW2EFHsQwkB5PotCjZgXoqNEEyAhbQnmUD5zfaNQ=;
 b=owEB7QES/pANAwAKAbqXzVK3lkFPAcsmYgBlGoV/Vs6zaJYkusRcda3GvHqHD8FkD0XllyxOR
 gpkY40Yv/6JAbMEAAEKAB0WIQSuRwlXJeYxJc7LJ5C6l81St5ZBTwUCZRqFfwAKCRC6l81St5ZB
 T+5+C/9PG7Hu/Q+dsKCXDvY5Iy6CwCHH/JFsZ4t/aJUGwdfzUbDixMixD2mtLH27N3jGk6EsP+f
 TuT8qWNicQP6gZrT5r/weMxtSLFJObHVzSmm7laysrDcBw992wSR/bSaa22COnNEBPqIC8esU0Q
 pGb1W4km4w2r1wQCyP4ciYMGGrzDlkkP9Ftg7+PrhQgUzqHwcgNSiQkAYaMrHNx9aUE7pN65eqW
 S6r5qG3U+doLXvkDZyRHPifN3KC63mSs2PpDc/NX3fp5y86xBczeVNYidlNzguQK2QuZ+FROlNb
 xakkCrxK6U7rjUfK5FHvHYSSOStbsSOmjPmzhbCIYDHB/I8zWeGPGIKRJzP1C4yRCEl77u49B/h
 Suqp6Db8KacQipTzrj5zKGnSXTTwjMaoljlvWzrd0uCEgyFiJEbdb/BYb8M0GeDb+Kf8+KLxzWD
 Q6+VM9vMi9hHwjythRlXiqljd0T1YtM5HwY8rmd392dMC+XgoD9p38YjDqsyBZSkPCk04=
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 | 1 -
 1 file changed, 1 deletion(-)

diff --git a/drivers/md/md.c b/drivers/md/md.c
index a104a025084d..3bdff9e03188 100644
--- a/drivers/md/md.c
+++ b/drivers/md/md.c
@@ -305,7 +305,6 @@ static struct ctl_table raid_table[] = {
 		.mode		= S_IRUGO|S_IWUSR,
 		.proc_handler	= proc_dointvec,
 	},
-	{ }
 };
 
 static int start_readonly;

-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Mon Oct 02 08:53:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 08:53:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611255.950805 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnEgB-0006Pk-KR; Mon, 02 Oct 2023 08:53:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611255.950805; Mon, 02 Oct 2023 08:53: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 1qnEgB-0006MY-8Q; Mon, 02 Oct 2023 08:53:27 +0000
Received: by outflank-mailman (input) for mailman id 611255;
 Mon, 02 Oct 2023 08: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=y3Nz=FQ=kernel.org=devnull+j.granados.samsung.com@srs-se1.protection.inumbo.net>)
 id 1qnEg8-0004XI-6g
 for xen-devel@lists.xenproject.org; Mon, 02 Oct 2023 08:53: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 230265cf-6101-11ee-878e-cb3800f73035;
 Mon, 02 Oct 2023 10:53: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 40E8160DC5;
 Mon,  2 Oct 2023 08:53:18 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPS id 233BCC32791;
 Mon,  2 Oct 2023 08:53:16 +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 0BF3CE784B4;
 Mon,  2 Oct 2023 08:53: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: 230265cf-6101-11ee-878e-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696236796;
	bh=CWlJL9Lw1/ldMKMXIXxw/hUhoDe/0uo8LXE4rcCIDvg=;
	h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From;
	b=dr780/9OgUcsdtC82ja0MVSV0MPcrkXtIHn1pfiy0bouUWxiebn11JLyTjawcIz1B
	 ACtOMw8UJL7kZBt4+Lypa11r9YIbBL2pUR4tV7r3QIOnCIuJuaBBW/9q4JfKHjx1rO
	 6DzPgfGQxmcnE3sD8DWla26vXCXsl+oyLhwVGCFiYwBOrRxzVfX7ROfuVdzYIv7UN4
	 DLxNvEoWgw3dN2cyVkNUBQeJlZ7BFF4dfqBAUktV8qF7Fxq4p/dDrq364NaHDDdMbT
	 HPQK4lMcdLy+TTpsVeHkfkPs0w8oUjzfHoz+Rpqcu+CKTvTQz3xFFRsIiD83pD1xv0
	 sGtUhoGU9ETOw==
From: Joel Granados via B4 Relay <devnull+j.granados.samsung.com@kernel.org>
Date: Mon, 02 Oct 2023 10:55:31 +0200
Subject: [PATCH v2 14/15] Drivers: hv: 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?=3C20231002-jag-sysctl=5Fremove=5Fempty=5Felem=5Fdrive?=
 =?utf-8?q?rs-v2-14-02dd0d46f71e=40samsung=2Ecom=3E?=
References:
 <20231002-jag-sysctl_remove_empty_elem_drivers-v2-0-02dd0d46f71e@samsung.com>
In-Reply-To:
 <20231002-jag-sysctl_remove_empty_elem_drivers-v2-0-02dd0d46f71e@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: Joel Granados <j.granados@samsung.com>, 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
X-Mailer: b4 0.13-dev-86aa5
X-Developer-Signature: v=1; a=openpgp-sha256; l=895; i=j.granados@samsung.com;
 h=from:subject:message-id; bh=aRo7NVdYCvLdNgGSBgQ6l0+E6oBOdQJH07rUCLQlR94=;
 b=owEB7QES/pANAwAKAbqXzVK3lkFPAcsmYgBlGoV/RVrZ++DlZt66bGmFv2tACCjFtyc9bKCyt
 Xh72+xBYa2JAbMEAAEKAB0WIQSuRwlXJeYxJc7LJ5C6l81St5ZBTwUCZRqFfwAKCRC6l81St5ZB
 T9wCC/9S9uDWtQoaUtTyJySq/BwgMLnAny2OrneSlhO0UKqMZFvbOgUuQGiJNs8VyC7IlWrxHVm
 2gbT3WD/mQhI9WX/B0z4TarGuU+BJmzwoPPun5D3G6oUedf0JdyIZLs9TJwZyL4KbQHIhVQ8skt
 9d2ELBqWveNmV8f+e8MKgjsdagi/9I77W0Dlj2eujgXgyIiPLQ/ZS+2g+heBSUicyN16ibHEu82
 LllVj4x/NiItYuyLOncHEA6dI2/PYrOmYAHIkg5yUqWOhwDEKS4RmcYq0Y0lzUl8APdk06uQkJb
 FFdVwsBnc3/rIeI8WobAqGTPjJ+p7k6APq5wq2IG+SuGmix2X7nozc7PdKVDApIkihzXIqIdVzt
 YXt3lgmdjZI5hmlPt6RyTPvW/lX88Ru+QtyDLF7HtMgyQnjyq5zqqu1URjGJnly2oy19F7wlilb
 AGIwY7o8qjN9C7sQC6yGWy2cGGyxw/g56tiwhVyVidw8uSz1wSXK/WM5kW7C0TiW0R8hQ=
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 | 1 -
 1 file changed, 1 deletion(-)

diff --git a/drivers/hv/hv_common.c b/drivers/hv/hv_common.c
index ccad7bca3fd3..4372f5d146ab 100644
--- a/drivers/hv/hv_common.c
+++ b/drivers/hv/hv_common.c
@@ -148,7 +148,6 @@ static struct ctl_table hv_ctl_table[] = {
 		.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 Mon Oct 02 08:53:29 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 08:53:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611256.950816 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnEgD-0006qa-11; Mon, 02 Oct 2023 08:53:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611256.950816; Mon, 02 Oct 2023 08:53: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 1qnEgC-0006mp-KY; Mon, 02 Oct 2023 08:53:28 +0000
Received: by outflank-mailman (input) for mailman id 611256;
 Mon, 02 Oct 2023 08:53: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=y3Nz=FQ=kernel.org=devnull+j.granados.samsung.com@srs-se1.protection.inumbo.net>)
 id 1qnEg8-0004Uc-Ni
 for xen-devel@lists.xenproject.org; Mon, 02 Oct 2023 08:53:24 +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 22b987dd-6101-11ee-9b0d-b553b5be7939;
 Mon, 02 Oct 2023 10:53: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 E359E60D3D;
 Mon,  2 Oct 2023 08:53:17 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPS id D5543C32781;
 Mon,  2 Oct 2023 08:53:15 +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 BB085E784AF;
 Mon,  2 Oct 2023 08:53: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: 22b987dd-6101-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696236795;
	bh=7IWRTGCcHSZcJzQ9+CQB1q8u0SSRDwfa1ILU59ULK2s=;
	h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From;
	b=oGcOGSdFN01g9tO0zq1jWZxxY5eHTEK6Ieh32g8Zl/2u76GNVZiQplz+70dwM408C
	 xjGlLWU9svr3ba5PnteRqLQfz0+/I37zpSxnNv1EoOGbS4xjDcu/B9evHnXvTA8j7v
	 d7BQmq6BXC7iZHS906y/XkAV5W/lOuNd4ZfYBZNpclFo6eOLGpnNk7uNvGblazVEHf
	 os8uOGrLIInyl8EPMHRpCflKVwdVNnAKpOvp5OB+K6OLgI8MJQzgp/5rAIMjY36OfD
	 3H/N/aFfLHnF8zbVNeIF9+kNw12/GhyMqXUJ4Ex2+CIwPcnwWQrSlYs4vgLjPwpQuh
	 /R3FAf3MQKt6g==
From: Joel Granados via B4 Relay <devnull+j.granados.samsung.com@kernel.org>
Date: Mon, 02 Oct 2023 10:55:28 +0200
Subject: [PATCH v2 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?=3C20231002-jag-sysctl=5Fremove=5Fempty=5Felem=5Fdrive?=
 =?utf-8?q?rs-v2-11-02dd0d46f71e=40samsung=2Ecom=3E?=
References:
 <20231002-jag-sysctl_remove_empty_elem_drivers-v2-0-02dd0d46f71e@samsung.com>
In-Reply-To:
 <20231002-jag-sysctl_remove_empty_elem_drivers-v2-0-02dd0d46f71e@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: Joel Granados <j.granados@samsung.com>, 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
X-Mailer: b4 0.13-dev-86aa5
X-Developer-Signature: v=1; a=openpgp-sha256; l=1256;
 i=j.granados@samsung.com; h=from:subject:message-id;
 bh=ePmiIBkulMk2J0Hn3yd3SHNfMVzMlB72hhtExcVcV3k=;
 b=owEB7QES/pANAwAKAbqXzVK3lkFPAcsmYgBlGoV+aKXagxwn9FWH6ZTWvhVjY34ucdd7w4DTR
 2dN5LSnfq+JAbMEAAEKAB0WIQSuRwlXJeYxJc7LJ5C6l81St5ZBTwUCZRqFfgAKCRC6l81St5ZB
 T1upC/0f07DfBkp9sG4MGPmaJMzGlZZGiOnSzrgySbn+KY4QlvVmzeCW1RNh4/SI3qUvFnRH36B
 HBgmh4yFhDu4q+nFYCARsivwe8aPPp1SDmgVepBn+ew8CtGedybiL+3GVk+plFOmzUKyXRqAKon
 nl6r/yKeTppABClVqoKzfvgqLzNdwZ1N0/hKaxCvpE3bXE8C738wQoCchtxfzSD/xxKTcP3goQ9
 RcUh/CLFpuWwPYKkhhje8q2K9Kuag3MAUHMxqTBKjQxCHsRQoM6bMQBD2HAZv/dnO7CIzJlXrG1
 DMp+Kj8HcvmcGue1narnsl/PUBnvXc6MHPZjyHedBOfa4+ZohotYOHCdLnRsB4tbge4IwuYE0Ju
 MRVv3O66uFsRuysv/tf6I/ai86ZsmS9bXTFhF3IKs1z75FxvjZH8a228UoQ5l+88yppXQR7bEK9
 7kXy21jdGYBzOOmBMhIg6MzwCUczClJJAyH8bUbGA9Uew0qK+QE+XeevXulpo/4D6CW2o=
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 | 2 --
 1 file changed, 2 deletions(-)

diff --git a/drivers/misc/sgi-xp/xpc_main.c b/drivers/misc/sgi-xp/xpc_main.c
index 6da509d692bb..3186421e82c3 100644
--- a/drivers/misc/sgi-xp/xpc_main.c
+++ b/drivers/misc/sgi-xp/xpc_main.c
@@ -110,7 +110,6 @@ static struct ctl_table xpc_sys_xpc_hb[] = {
 	 .proc_handler = proc_dointvec_minmax,
 	 .extra1 = &xpc_hb_check_min_interval,
 	 .extra2 = &xpc_hb_check_max_interval},
-	{}
 };
 static struct ctl_table xpc_sys_xpc[] = {
 	{
@@ -121,7 +120,6 @@ static struct ctl_table xpc_sys_xpc[] = {
 	 .proc_handler = proc_dointvec_minmax,
 	 .extra1 = &xpc_disengage_min_timelimit,
 	 .extra2 = &xpc_disengage_max_timelimit},
-	{}
 };
 
 static struct ctl_table_header *xpc_sysctl;

-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Mon Oct 02 08:53:30 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 08:53:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611257.950828 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnEgE-0007Br-9x; Mon, 02 Oct 2023 08:53:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611257.950828; Mon, 02 Oct 2023 08:53: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 1qnEgD-00078w-Sd; Mon, 02 Oct 2023 08:53:29 +0000
Received: by outflank-mailman (input) for mailman id 611257;
 Mon, 02 Oct 2023 08:53: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=y3Nz=FQ=kernel.org=devnull+j.granados.samsung.com@srs-se1.protection.inumbo.net>)
 id 1qnEg9-0004XI-6z
 for xen-devel@lists.xenproject.org; Mon, 02 Oct 2023 08:53:25 +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 22410a7c-6101-11ee-878e-cb3800f73035;
 Mon, 02 Oct 2023 10:53:21 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by sin.source.kernel.org (Postfix) with ESMTP id 48118CE0EDE;
 Mon,  2 Oct 2023 08:53:18 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPS id 9E83FC4E67B;
 Mon,  2 Oct 2023 08:53:15 +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 87B1FE7849A;
 Mon,  2 Oct 2023 08:53: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: 22410a7c-6101-11ee-878e-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696236795;
	bh=vDlxMU2ggFFcgL4XVv7yaCla84NzDst78pAlmrI/LAU=;
	h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From;
	b=pR95+O9r6nUzq07c9kPGKb7Ab0VcY5+68ndSSzB+hZmwZYikEf3FKE5QZgbbuqjOX
	 gQkhguZwdsurCaU0axfIZ2F0cJCq86v09nWDCYqoJnOhNSunu1At9WlawEgkBrEmJ6
	 y18G/0sKMdEFBxdOakpL3K6ARrEuVanraUCM76n/OBLvRpO3S0uhlUJVkFeuWm+fyr
	 dbr8FI1IRqLxTOLySLXMasu08oJ1w1pZXHhh4+kaXfndJ8OZR17RetwZax4Z6ehYkJ
	 mIoVTZonmVbDcGCi8ny+uoSKjBM1DIy75fzJacAsTb3IqeKffbenQJRDWZ7+Dfqjc4
	 7r/qhjuBtwo0A==
From: Joel Granados via B4 Relay <devnull+j.granados.samsung.com@kernel.org>
Date: Mon, 02 Oct 2023 10:55:26 +0200
Subject: [PATCH v2 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:
 <20231002-jag-sysctl_remove_empty_elem_drivers-v2-9-02dd0d46f71e@samsung.com>
References:
 <20231002-jag-sysctl_remove_empty_elem_drivers-v2-0-02dd0d46f71e@samsung.com>
In-Reply-To:
 <20231002-jag-sysctl_remove_empty_elem_drivers-v2-0-02dd0d46f71e@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: Joel Granados <j.granados@samsung.com>, 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
X-Mailer: b4 0.13-dev-86aa5
X-Developer-Signature: v=1; a=openpgp-sha256; l=1339;
 i=j.granados@samsung.com; h=from:subject:message-id;
 bh=Kv0ap7oOhCIEujO7K32kNHT+ZxUGAQsjjs8+/enag5M=;
 b=owEB7QES/pANAwAKAbqXzVK3lkFPAcsmYgBlGoV+isCI8TDO6pwR+wgikdJs6dLv5S5QCOB04
 iOxWZrSGSiJAbMEAAEKAB0WIQSuRwlXJeYxJc7LJ5C6l81St5ZBTwUCZRqFfgAKCRC6l81St5ZB
 T6oTC/9qOUC9BOwrcAbb8+8X5NEMfhYEKBwZOjn0qP7z2HP9F0B0s13QbRcV+nD/AboNml1SyV1
 2bME5eSPBRhDk/FgUi2dHVoWST0piu5f+xZVAdCGk0dlm6zx066OrZgELiJpoohNDrDPt3Hw74l
 vDFg1cmFZeVWLG+9hQVfG+0ip5WPINFZL6HG5Qaf5vQovahB6Axer95+p066sCI/hydwE7wEmQW
 AaBpPNfAYpiEL3HtJ935jxFkTOmK8sqEwQTXsN1aJcHVhbXpAwOog7xO+DfU6DOBHTdb4MVBOxq
 BDdLiqegmjac+IlK2slz/WfvUKW0V+2LZN7aJ0/GqoMforwaGZwvUhwn34nmenlx7NcpDwgIKDx
 orVBtck2IN7tetdBhNLpoy3r7xDl7WRjm3f3xIxDXcUNqlOY9x1VyHKww5KiFk49KJ9UPmc8tKT
 3ACEiDi7UvwEFAfJwF4Zc34OpSkdkpY3PQGUWRU0h2+aTGNKyDRzq42XfqrCcpxTHv5xA=
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 | 1 -
 drivers/char/random.c             | 1 -
 2 files changed, 2 deletions(-)

diff --git a/drivers/char/ipmi/ipmi_poweroff.c b/drivers/char/ipmi/ipmi_poweroff.c
index 870659d91db2..941d2dcc8c9d 100644
--- a/drivers/char/ipmi/ipmi_poweroff.c
+++ b/drivers/char/ipmi/ipmi_poweroff.c
@@ -656,7 +656,6 @@ static struct ctl_table ipmi_table[] = {
 	  .maxlen	= sizeof(poweroff_powercycle),
 	  .mode		= 0644,
 	  .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..4a9c79391dee 100644
--- a/drivers/char/random.c
+++ b/drivers/char/random.c
@@ -1683,7 +1683,6 @@ static struct ctl_table random_table[] = {
 		.mode		= 0444,
 		.proc_handler	= proc_do_uuid,
 	},
-	{ }
 };
 
 /*

-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Mon Oct 02 08:53:31 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 08:53:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611258.950838 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnEgF-0007NV-Is; Mon, 02 Oct 2023 08:53:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611258.950838; Mon, 02 Oct 2023 08: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 1qnEgE-0007K0-LI; Mon, 02 Oct 2023 08:53:30 +0000
Received: by outflank-mailman (input) for mailman id 611258;
 Mon, 02 Oct 2023 08:53: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=y3Nz=FQ=kernel.org=devnull+j.granados.samsung.com@srs-se1.protection.inumbo.net>)
 id 1qnEg9-0004Uc-No
 for xen-devel@lists.xenproject.org; Mon, 02 Oct 2023 08:53:25 +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 223ca150-6101-11ee-9b0d-b553b5be7939;
 Mon, 02 Oct 2023 10:53:21 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by sin.source.kernel.org (Postfix) with ESMTP id B6F7FCE0EAA;
 Mon,  2 Oct 2023 08:53:15 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPS id E058EC433CA;
 Mon,  2 Oct 2023 08:53:14 +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 C92CBE784A4;
 Mon,  2 Oct 2023 08:53: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: 223ca150-6101-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696236795;
	bh=t9nUnlsUSGSA6KXDG9eIUL8NkaKGhkaZ+k9zMU/msOg=;
	h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From;
	b=aZC8ob0hBMVk/wW7CrMfHJAbHgX2r4sD/N1pYyMgeZPSD986C/6LQvjoHrLdt9uo/
	 AvWc8ItdH5zANDM/BWHExhTO0vMgN4wZUbYWLFbxL0fLqvO3sdGIen+rLKCRM7HalK
	 WdxkvK2kIchZghqnMFEV1uotHf/kI6qDyNQo5vyOcl9EPWFRLmXc30qj8QCOU00u/K
	 a5COzI0S1cShOdJCYZILXR2eqvaAir/yUVEohOvIFqlLF0kSv9ZkZ5rthTWWEaobE/
	 2xOp01TTELGSZ87Lfr38Nudyjn+xoH5tZ2P7iKWsnwLFrEJLkYT90+yOhMifOOt3CP
	 9rey/67aYTa8A==
From: Joel Granados via B4 Relay <devnull+j.granados.samsung.com@kernel.org>
Date: Mon, 02 Oct 2023 10:55:18 +0200
Subject: [PATCH v2 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:
 <20231002-jag-sysctl_remove_empty_elem_drivers-v2-1-02dd0d46f71e@samsung.com>
References:
 <20231002-jag-sysctl_remove_empty_elem_drivers-v2-0-02dd0d46f71e@samsung.com>
In-Reply-To:
 <20231002-jag-sysctl_remove_empty_elem_drivers-v2-0-02dd0d46f71e@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: Joel Granados <j.granados@samsung.com>, 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
X-Mailer: b4 0.13-dev-86aa5
X-Developer-Signature: v=1; a=openpgp-sha256; l=892; i=j.granados@samsung.com;
 h=from:subject:message-id; bh=HP9sX3Yq6no3LIGS7gxj0QQAPjl1kSKLH9YGL6vsrCg=;
 b=owEB7QES/pANAwAKAbqXzVK3lkFPAcsmYgBlGoV7aj+83oYeqb6g5LqMcPrlSYA/sw3XNVtGi
 Tcihv7W1e6JAbMEAAEKAB0WIQSuRwlXJeYxJc7LJ5C6l81St5ZBTwUCZRqFewAKCRC6l81St5ZB
 T11zC/4isu/2elcU5kFo1V5OSm37bxnkesh8BXCmqaU8pLDmABQPsaVAjhuaMiVbkWywdosML0J
 eP1RbZREtG8tHA6hHvcQsiGPfV9VY7ZBY1izxZ80Omx6lGmNThQ7JKoH4eUk+fXenQGzJg0YCEg
 uQ2ICUEUTlPKK4WMlEPkh3fpxrqROwTV+otJdR6avKiRPLM97uCNupakiOCqOcB/6BG7kOTc28W
 OAeIilC+3jn3ceUirFEqPijJ1Yqs0aSvHBRf+OWKgMo9rakMo0He0gazX1Q9tfIeInipcs/syO3
 HiRA8VyEZDMGLd2lcOxrko1eA04kSPUHzQSOTNTnId65w/EiSv9j0FKxPT4p5qwslYQOxp096rZ
 AKmZAryXj/h7R9EAQxxgUpLxsuEpRs8NFX9A4t/zM/kyoNJGM92xl/pFHdARq3GMzxTYav4Gl30
 ydelfjzMw2s6dE2Vc3Qy88S86774JSBNoouXG9eJuxHPAZlvzjhxjH+oXYvGmyGX71VrY=
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 | 1 -
 1 file changed, 1 deletion(-)

diff --git a/drivers/cdrom/cdrom.c b/drivers/cdrom/cdrom.c
index cc2839805983..a5e07270e0d4 100644
--- a/drivers/cdrom/cdrom.c
+++ b/drivers/cdrom/cdrom.c
@@ -3655,7 +3655,6 @@ static struct ctl_table cdrom_table[] = {
 		.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 Mon Oct 02 08:53:33 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 08:53:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611259.950842 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnEgG-0007eL-KE; Mon, 02 Oct 2023 08:53:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611259.950842; Mon, 02 Oct 2023 08:53: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 1qnEgF-0007Wn-Ri; Mon, 02 Oct 2023 08:53:31 +0000
Received: by outflank-mailman (input) for mailman id 611259;
 Mon, 02 Oct 2023 08:53: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=y3Nz=FQ=kernel.org=devnull+j.granados.samsung.com@srs-se1.protection.inumbo.net>)
 id 1qnEgA-0004XI-77
 for xen-devel@lists.xenproject.org; Mon, 02 Oct 2023 08:53:26 +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 2334ff78-6101-11ee-878e-cb3800f73035;
 Mon, 02 Oct 2023 10:53: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 57E4F60CFB;
 Mon,  2 Oct 2023 08:53:18 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPS id 35C14C4E766;
 Mon,  2 Oct 2023 08:53:16 +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 203EEE784AF;
 Mon,  2 Oct 2023 08:53: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: 2334ff78-6101-11ee-878e-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696236796;
	bh=Uls7XPBqn6bEdL1vvvSumrQjEL8zidoGeMiRdIO1DJY=;
	h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From;
	b=Znf3uRMkmmRKi1FLLfPuqGTg8TxGkA5vUnml0sGBj/lNU6zqUvRBzjrq7wi6dn8Og
	 wCyjSubCD1peM1ABs9alnKNnpygl6FEODH191I9gcvsuadwWzNddgNJLQ/JgQBBv+f
	 8csrmLrTP4RdqSuxbZr9GYMPwcXEuGmtg+LPqUoGh+DRcxC+Qy2q/ZuXv425c7elRW
	 hkQarTUdR4UlN5ftzxnKDuhuw+TtiQl8eB3UkN0Zv8gpgtXrHFXol+boWHu8rBPpUr
	 zx65s2Dja0H0a8xRbJUggKI4s2EqqSkQcPlKnKgxeHG0EWBhH9TalmbyI4rwQ0Ut/+
	 goBAiOgxVi5AA==
From: Joel Granados via B4 Relay <devnull+j.granados.samsung.com@kernel.org>
Date: Mon, 02 Oct 2023 10:55:32 +0200
Subject: [PATCH v2 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?=3C20231002-jag-sysctl=5Fremove=5Fempty=5Felem=5Fdrive?=
 =?utf-8?q?rs-v2-15-02dd0d46f71e=40samsung=2Ecom=3E?=
References:
 <20231002-jag-sysctl_remove_empty_elem_drivers-v2-0-02dd0d46f71e@samsung.com>
In-Reply-To:
 <20231002-jag-sysctl_remove_empty_elem_drivers-v2-0-02dd0d46f71e@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: Joel Granados <j.granados@samsung.com>, 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
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=XQdPHHjf+SEqXH5I2ue4u4cYp825opd75wWUwOtUAHg=;
 b=owEB7QES/pANAwAKAbqXzVK3lkFPAcsmYgBlGoWAu+BY9dasS5g5jzpwW+wb0CuXVsnRm7zPL
 9PCLIz16zuJAbMEAAEKAB0WIQSuRwlXJeYxJc7LJ5C6l81St5ZBTwUCZRqFgAAKCRC6l81St5ZB
 T4dBC/4sGw23E9mtpKFCRILNBVXTFFu7WRasCAH0c42eC8QRvWM22jnATwXrejlfZcSArtKRPCv
 wfyjPWWRmMsX2Y9QgdzQR4eDIR4OQdGxaQ4/9XSwkGOLd7l9gxEAAEi8llY4tPInfqJ8yVVRHRL
 kJdHEMgrOkdkoJVo/FH8l7kkyKTHVZqEqBuIpYMRQq0vs3giMG4Coo88yES1bFU47AyR49UdfVf
 QtcI7yfGBkHj9WuAuCZdvwlb/C7Y33lOTv/rXp5qxbGJFG/XZqtnhH8eAWrdaVnpC/lfeExJC/N
 Lm13PvtkIVR5sYCBtNXqApWpo7PjFw1K6HNYNoyRM+LXYRWZYjNM8T5OszX4OLnIjcam1EOtduK
 Z+VeE5uN753bvNh48r2JUIj/GExe1vTcY7a9da8tDlmzB+FEWZo9JbdpakNtfcKKjgKksTFXm75
 ulwZaMeS//8aNIMyrqyVcm4mjJ3q1QRxkcIptFtjcjFnbIGeIGcqc+bJIjQ8SiOblodg8=
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 | 1 -
 1 file changed, 1 deletion(-)

diff --git a/drivers/gpu/drm/i915/i915_perf.c b/drivers/gpu/drm/i915/i915_perf.c
index 04bc1f4a1115..23e769aa214c 100644
--- a/drivers/gpu/drm/i915/i915_perf.c
+++ b/drivers/gpu/drm/i915/i915_perf.c
@@ -4896,7 +4896,6 @@ static struct ctl_table oa_table[] = {
 	 .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 Mon Oct 02 08:53:36 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 08:53:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611260.950855 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnEgJ-000891-9S; Mon, 02 Oct 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 611260.950855; Mon, 02 Oct 2023 08:53: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 1qnEgI-00082b-0H; Mon, 02 Oct 2023 08:53:34 +0000
Received: by outflank-mailman (input) for mailman id 611260;
 Mon, 02 Oct 2023 08: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=y3Nz=FQ=kernel.org=devnull+j.granados.samsung.com@srs-se1.protection.inumbo.net>)
 id 1qnEgA-0004Uc-Ny
 for xen-devel@lists.xenproject.org; Mon, 02 Oct 2023 08:53:26 +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 2261e0a5-6101-11ee-9b0d-b553b5be7939;
 Mon, 02 Oct 2023 10:53:21 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by sin.source.kernel.org (Postfix) with ESMTP id 2F82CCE0EDB;
 Mon,  2 Oct 2023 08:53:18 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPS id 88FECC32776;
 Mon,  2 Oct 2023 08:53:15 +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 6E722E784A4;
 Mon,  2 Oct 2023 08:53: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: 2261e0a5-6101-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696236795;
	bh=amz0lmR6ktjSFYbXFf8SJ/rD/LGezf37esDcBUcG4VA=;
	h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From;
	b=Ivo+qQiovpQQJq0vFwPkgisug1Pppm96a/bVqga8oaV4kgvEby500kN2Dhw1ukZNg
	 +q/m0XC+RByxKFw1CgR1L/RGthyJyQCHLdTbejDTWXaxQuqYA7Zcxa4zich+rCjo53
	 Ak/b8FhOqr3Nd/0oKFNdytahECQM3W04/BwpLjss74/NFOWkqovAALiGP5i3mWn/7p
	 68dCoKFe1ZkRjyjhHlua+jyGPELXpRm/+3tI9gcKKD9fhW+wmFz/FLNZRsvjfnd1yR
	 gfZeyuxKySJXmB+tspGrEdZn4VULNRVO6fRSbJPTuJ90m/yelcjvEL0MAGNFxyf46o
	 8pYt9MzyjQQBQ==
From: Joel Granados via B4 Relay <devnull+j.granados.samsung.com@kernel.org>
Date: Mon, 02 Oct 2023 10:55:25 +0200
Subject: [PATCH v2 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:
 <20231002-jag-sysctl_remove_empty_elem_drivers-v2-8-02dd0d46f71e@samsung.com>
References:
 <20231002-jag-sysctl_remove_empty_elem_drivers-v2-0-02dd0d46f71e@samsung.com>
In-Reply-To:
 <20231002-jag-sysctl_remove_empty_elem_drivers-v2-0-02dd0d46f71e@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: Joel Granados <j.granados@samsung.com>, 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
X-Mailer: b4 0.13-dev-86aa5
X-Developer-Signature: v=1; a=openpgp-sha256; l=1292;
 i=j.granados@samsung.com; h=from:subject:message-id;
 bh=gz7T61c3mpYSXDkYtspjqyukqPQ8G3NAC15+ZhhmUg8=;
 b=owEB7QES/pANAwAKAbqXzVK3lkFPAcsmYgBlGoV9Z1pjf+iYaTcrpDqomSqDrWKWFayUHCWw9
 +AUAffywyqJAbMEAAEKAB0WIQSuRwlXJeYxJc7LJ5C6l81St5ZBTwUCZRqFfQAKCRC6l81St5ZB
 T/JFC/9TTtJdLb2PgHoU/qPORU0LWDxrdSEgO8uCjljCKGZhuFpPUKZbEd0rpHrNpki2b8pKynT
 MLcOr1s9ad+5SDCpUH/yLdJliUTWWvOtoMlXpO48uDR59mZX0//MP5HkHzjmetk/8lTfgT5BO6l
 Qn5dUfYq+irkQRBRjgRMHwVyc4A4crKuZEE9Tct8092ObCV3YvfOgQm7zQMbfR29PHrnL+uPHE5
 sNi3FYH38aLdW399HO1ONj4ssyAcOKq5nEXFzCmX/u6dgWVruM+h4AvbhaWsrIDITXM6MNBdwUf
 i5spcncMQQ11S0U8mtiKNH/7XHqmJBSGNBCVX9VtvpUNfvHMRDpShUTcduVGg4Vs9IR8Im+0yuT
 fMV19bF+hlgs7vNHYDKVGZe+h9vlbcMsvnQZWkrlFVvlUj6yUxi9sw+K1QrW4UaCo6f7vt/1i46
 Q/Fu7wsyyGFTQAHbDASRb4cCDdYx7GuUIvwS4VXhlHj3fhXILPrJcYZfg3+CsF5zKhFfA=
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 | 1 -
 drivers/infiniband/core/ucma.c | 1 -
 2 files changed, 2 deletions(-)

diff --git a/drivers/infiniband/core/iwcm.c b/drivers/infiniband/core/iwcm.c
index 2b47073c61a6..0301fcad4b48 100644
--- a/drivers/infiniband/core/iwcm.c
+++ b/drivers/infiniband/core/iwcm.c
@@ -111,7 +111,6 @@ static struct ctl_table iwcm_ctl_table[] = {
 		.mode		= 0644,
 		.proc_handler	= proc_dointvec,
 	},
-	{ }
 };
 
 /*
diff --git a/drivers/infiniband/core/ucma.c b/drivers/infiniband/core/ucma.c
index bf42650f125b..5f5ad8faf86e 100644
--- a/drivers/infiniband/core/ucma.c
+++ b/drivers/infiniband/core/ucma.c
@@ -71,7 +71,6 @@ static struct ctl_table ucma_ctl_table[] = {
 		.mode		= 0644,
 		.proc_handler	= proc_dointvec,
 	},
-	{ }
 };
 
 struct ucma_file {

-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Mon Oct 02 08:58:18 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 08:58:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611276.950886 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnEkm-0005ho-EP; Mon, 02 Oct 2023 08:58:12 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611276.950886; Mon, 02 Oct 2023 08:58: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 1qnEkm-0005hh-BV; Mon, 02 Oct 2023 08:58:12 +0000
Received: by outflank-mailman (input) for mailman id 611276;
 Mon, 02 Oct 2023 08:58: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=ZW1X=FQ=gmail.com=jirislaby@srs-se1.protection.inumbo.net>)
 id 1qnEkk-0005hb-Jh
 for xen-devel@lists.xenproject.org; Mon, 02 Oct 2023 08:58:10 +0000
Received: from mail-wr1-f51.google.com (mail-wr1-f51.google.com
 [209.85.221.51]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id ce9e10a6-6101-11ee-9b0d-b553b5be7939;
 Mon, 02 Oct 2023 10:58:08 +0200 (CEST)
Received: by mail-wr1-f51.google.com with SMTP id
 ffacd0b85a97d-32483535e51so4252646f8f.0
 for <xen-devel@lists.xenproject.org>; Mon, 02 Oct 2023 01:58:08 -0700 (PDT)
Received: from ?IPV6:2a0b:e7c0:0:107::aaaa:59? ([2a0b:e7c0:0:107::aaaa:59])
 by smtp.gmail.com with ESMTPSA id
 w11-20020adff9cb000000b00326c952716esm5441244wrr.61.2023.10.02.01.58.05
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Mon, 02 Oct 2023 01:58: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: ce9e10a6-6101-11ee-9b0d-b553b5be7939
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1696237088; x=1696841888;
        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=BA0erWjrRdMrGzi5ZNBknNRu9czNXtMxnytZ4Rmj09w=;
        b=Xgx1PXqvif6zWbG5+m8kbJ29p9RDFon3WrGpkVo5SVxXAWVjSs5nByUpfybpbNkp9M
         EIQ5RI46v5nvIGE9cyrQ9QGnZDw0znkO/1quTp7pi8qzGggpvBOIydPtylGfnWXRzlp5
         dUcnk3ZEfwrWY40hl1uOIXUSKVlryYZDn8xxvFiKaHXxWrmWbbTv7U5eLcpZzVecUs7e
         SEW2mrI4cOnUIBJbMy7i061eYv3YAwepalDVMLOuUq264G/ovfdZAljGGPAE9jOZ1XSV
         AEutRqw0oZtSnERtVPuBoCl1WENLOFNygwiTmJUVZtrV53nw6R1xD9o41Pt+Dctu9bD0
         Jbww==
X-Gm-Message-State: AOJu0YyhoJPA4e6ek6DlJtJpKdMQUE/44VJaw8Lw3oTtiZQ//wh9fm7c
	3zCTT5g3ewt8egk8ZkZesY8=
X-Google-Smtp-Source: AGHT+IFX1CH2yaFZ4DPjG0iRefZg6vNuBJleSj/4R9NuvQPLd/nkpUID7AsNvsjaQ8C58nXw2EwbTg==
X-Received: by 2002:adf:fd10:0:b0:317:69d2:35be with SMTP id e16-20020adffd10000000b0031769d235bemr9508091wrr.30.1696237087773;
        Mon, 02 Oct 2023 01:58:07 -0700 (PDT)
Message-ID: <3ff36799-534d-47a6-9feb-3ae3c3d488e2@kernel.org>
Date: Mon, 2 Oct 2023 10:58:05 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v2 04/15] tty: 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>,
 Juergen Gross <jgross@suse.com>, Stefano Stabellini
 <sstabellini@kernel.org>,
 Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>,
 "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
References: <20231002-jag-sysctl_remove_empty_elem_drivers-v2-0-02dd0d46f71e@samsung.com>
 <20231002-jag-sysctl_remove_empty_elem_drivers-v2-4-02dd0d46f71e@samsung.com>
From: Jiri Slaby <jirislaby@kernel.org>
Autocrypt: addr=jirislaby@kernel.org; keydata=
 xsFNBE6S54YBEACzzjLwDUbU5elY4GTg/NdotjA0jyyJtYI86wdKraekbNE0bC4zV+ryvH4j
 rrcDwGs6tFVrAHvdHeIdI07s1iIx5R/ndcHwt4fvI8CL5PzPmn5J+h0WERR5rFprRh6axhOk
 rSD5CwQl19fm4AJCS6A9GJtOoiLpWn2/IbogPc71jQVrupZYYx51rAaHZ0D2KYK/uhfc6neJ
 i0WqPlbtIlIrpvWxckucNu6ZwXjFY0f3qIRg3Vqh5QxPkojGsq9tXVFVLEkSVz6FoqCHrUTx
 wr+aw6qqQVgvT/McQtsI0S66uIkQjzPUrgAEtWUv76rM4ekqL9stHyvTGw0Fjsualwb0Gwdx
 ReTZzMgheAyoy/umIOKrSEpWouVoBt5FFSZUyjuDdlPPYyPav+hpI6ggmCTld3u2hyiHji2H
 cDpcLM2LMhlHBipu80s9anNeZhCANDhbC5E+NZmuwgzHBcan8WC7xsPXPaiZSIm7TKaVoOcL
 9tE5aN3jQmIlrT7ZUX52Ff/hSdx/JKDP3YMNtt4B0cH6ejIjtqTd+Ge8sSttsnNM0CQUkXps
 w98jwz+Lxw/bKMr3NSnnFpUZaxwji3BC9vYyxKMAwNelBCHEgS/OAa3EJoTfuYOK6wT6nadm
 YqYjwYbZE5V/SwzMbpWu7Jwlvuwyfo5mh7w5iMfnZE+vHFwp/wARAQABzSFKaXJpIFNsYWJ5
 IDxqaXJpc2xhYnlAa2VybmVsLm9yZz7CwXcEEwEIACEFAlW3RUwCGwMFCwkIBwIGFQgJCgsC
 BBYCAwECHgECF4AACgkQvSWxBAa0cEnVTg//TQpdIAr8Tn0VAeUjdVIH9XCFw+cPSU+zMSCH
 eCZoA/N6gitEcnvHoFVVM7b3hK2HgoFUNbmYC0RdcSc80pOF5gCnACSP9XWHGWzeKCARRcQR
 4s5YD8I4VV5hqXcKo2DFAtIOVbHDW+0okOzcecdasCakUTr7s2fXz97uuoc2gIBB7bmHUGAH
 XQXHvdnCLjDjR+eJN+zrtbqZKYSfj89s/ZHn5Slug6w8qOPT1sVNGG+eWPlc5s7XYhT9z66E
 l5C0rG35JE4PhC+tl7BaE5IwjJlBMHf/cMJxNHAYoQ1hWQCKOfMDQ6bsEr++kGUCbHkrEFwD
 UVA72iLnnnlZCMevwE4hc0zVhseWhPc/KMYObU1sDGqaCesRLkE3tiE7X2cikmj/qH0CoMWe
 gjnwnQ2qVJcaPSzJ4QITvchEQ+tbuVAyvn9H+9MkdT7b7b2OaqYsUP8rn/2k1Td5zknUz7iF
 oJ0Z9wPTl6tDfF8phaMIPISYrhceVOIoL+rWfaikhBulZTIT5ihieY9nQOw6vhOfWkYvv0Dl
 o4GRnb2ybPQpfEs7WtetOsUgiUbfljTgILFw3CsPW8JESOGQc0Pv8ieznIighqPPFz9g+zSu
 Ss/rpcsqag5n9rQp/H3WW5zKUpeYcKGaPDp/vSUovMcjp8USIhzBBrmI7UWAtuedG9prjqfO
 wU0ETpLnhgEQAM+cDWLL+Wvc9cLhA2OXZ/gMmu7NbYKjfth1UyOuBd5emIO+d4RfFM02XFTI
 t4MxwhAryhsKQQcA4iQNldkbyeviYrPKWjLTjRXT5cD2lpWzr+Jx7mX7InV5JOz1Qq+P+nJW
 YIBjUKhI03ux89p58CYil24Zpyn2F5cX7U+inY8lJIBwLPBnc9Z0An/DVnUOD+0wIcYVnZAK
 DiIXODkGqTg3fhZwbbi+KAhtHPFM2fGw2VTUf62IHzV+eBSnamzPOBc1XsJYKRo3FHNeLuS8
 f4wUe7bWb9O66PPFK/RkeqNX6akkFBf9VfrZ1rTEKAyJ2uqf1EI1olYnENk4+00IBa+BavGQ
 8UW9dGW3nbPrfuOV5UUvbnsSQwj67pSdrBQqilr5N/5H9z7VCDQ0dhuJNtvDSlTf2iUFBqgk
 3smln31PUYiVPrMP0V4ja0i9qtO/TB01rTfTyXTRtqz53qO5dGsYiliJO5aUmh8swVpotgK4
 /57h3zGsaXO9PGgnnAdqeKVITaFTLY1ISg+Ptb4KoliiOjrBMmQUSJVtkUXMrCMCeuPDGHo7
 39Xc75lcHlGuM3yEB//htKjyprbLeLf1y4xPyTeeF5zg/0ztRZNKZicgEmxyUNBHHnBKHQxz
 1j+mzH0HjZZtXjGu2KLJ18G07q0fpz2ZPk2D53Ww39VNI/J9ABEBAAHCwV8EGAECAAkFAk6S
 54YCGwwACgkQvSWxBAa0cEk3tRAAgO+DFpbyIa4RlnfpcW17AfnpZi9VR5+zr496n2jH/1ld
 wRO/S+QNSA8qdABqMb9WI4BNaoANgcg0AS429Mq0taaWKkAjkkGAT7mD1Q5PiLr06Y/+Kzdr
 90eUVneqM2TUQQbK+Kh7JwmGVrRGNqQrDk+gRNvKnGwFNeTkTKtJ0P8jYd7P1gZb9Fwj9YLx
 jhn/sVIhNmEBLBoI7PL+9fbILqJPHgAwW35rpnq4f/EYTykbk1sa13Tav6btJ+4QOgbcezWI
 wZ5w/JVfEJW9JXp3BFAVzRQ5nVrrLDAJZ8Y5ioWcm99JtSIIxXxt9FJaGc1Bgsi5K/+dyTKL
 wLMJgiBzbVx8G+fCJJ9YtlNOPWhbKPlrQ8+AY52Aagi9WNhe6XfJdh5g6ptiOILm330mkR4g
 W6nEgZVyIyTq3ekOuruftWL99qpP5zi+eNrMmLRQx9iecDNgFr342R9bTDlb1TLuRb+/tJ98
 f/bIWIr0cqQmqQ33FgRhrG1+Xml6UXyJ2jExmlO8JljuOGeXYh6ZkIEyzqzffzBLXZCujlYQ
 DFXpyMNVJ2ZwPmX2mWEoYuaBU0JN7wM+/zWgOf2zRwhEuD3A2cO2PxoiIfyUEfB9SSmffaK/
 S4xXoB6wvGENZ85Hg37C7WDNdaAt6Xh2uQIly5grkgvWppkNy4ZHxE+jeNsU7tg=
In-Reply-To: <20231002-jag-sysctl_remove_empty_elem_drivers-v2-4-02dd0d46f71e@samsung.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 02. 10. 23, 10:55, 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 tty_table
> 
> Signed-off-by: Joel Granados <j.granados@samsung.com>

Reviewed-by: Jiri Slaby <jirislaby@kernel.org>

thanks,
-- 
js
suse labs



From xen-devel-bounces@lists.xenproject.org Mon Oct 02 09:02:57 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 09:02:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611300.950897 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnEpI-0007sf-WB; Mon, 02 Oct 2023 09:02:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611300.950897; Mon, 02 Oct 2023 09:02: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 1qnEpI-0007sX-Sd; Mon, 02 Oct 2023 09:02:52 +0000
Received: by outflank-mailman (input) for mailman id 611300;
 Mon, 02 Oct 2023 09:02: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=+GJp=FQ=linuxfoundation.org=gregkh@srs-se1.protection.inumbo.net>)
 id 1qnEpH-0007pr-8w
 for xen-devel@lists.xenproject.org; Mon, 02 Oct 2023 09:02:51 +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 74ef18cf-6102-11ee-878e-cb3800f73035;
 Mon, 02 Oct 2023 11:02:49 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by sin.source.kernel.org (Postfix) with ESMTP id A2D85CE0EA2;
 Mon,  2 Oct 2023 09:02:42 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 9FE7CC433C8;
 Mon,  2 Oct 2023 09:02: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: 74ef18cf-6102-11ee-878e-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org;
	s=korg; t=1696237361;
	bh=smbdD+CUEQ4ahMF3RqsYVNHHjGroQxTTaWRgCAR/D24=;
	h=Date:From:To:Cc:Subject:References:In-Reply-To:From;
	b=nMX+58jl6hq9UFJUHZd1tjzFPgSTOpSlydUnTfJQnD4JkBTo1W3OhKwdiqRz3OSHL
	 5qGb/GMTdZ1Zi7txcN44MpKcZqjCquccKdPkeOQfVVDMci/1xfBziuQgAa/1GdsgkO
	 fTB8auP7M3L0i1rXICcsdIgBp+nJtQayOSXiZzAY=
Date: Mon, 2 Oct 2023 11:02:38 +0200
From: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
To: Christophe Leroy <christophe.leroy@csgroup.eu>
Cc: Jiri Slaby <jirislaby@kernel.org>,
	"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>,
	Juergen Gross <jgross@suse.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>,
	"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-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 04/15] tty: Remove now superfluous sentinel element from
 ctl_table array
Message-ID: <2023100252-plod-user-4504@gregkh>
References: <20230928-jag-sysctl_remove_empty_elem_drivers-v1-0-e59120fca9f9@samsung.com>
 <20230928-jag-sysctl_remove_empty_elem_drivers-v1-4-e59120fca9f9@samsung.com>
 <63e7a4fe-58c9-470e-84c2-dd92e76462ae@kernel.org>
 <4d7bf39e-e7f9-f497-13aa-73718456a653@csgroup.eu>
MIME-Version: 1.0
Content-Type: text/plain; charset=iso-8859-1
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <4d7bf39e-e7f9-f497-13aa-73718456a653@csgroup.eu>

On Mon, Oct 02, 2023 at 08:47:53AM +0000, Christophe Leroy wrote:
> 
> 
> Le 02/10/2023  10:17, Jiri Slaby a crit:
> > On 28. 09. 23, 15:21, 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 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,
> >> - },
> >> - { }
> >> + }
> > 
> > Why to remove the comma? One would need to add one when adding a new entry?
> 
> Does it make any difference at all ?
> 
> In one case you have:
> 
> @xxxx
>   		something old,
>   	},
> +	{
> +		something new,
> +	},
>   }
> 
> In the other case you have:
> 
> @xxxx
>   		something old,
> + 	},
> +	{
> +		something new,
>   	}
>   }

Because that way it is obvious you are only touching the "something new"
lines and never have to touch the "something old" ones.

It's just a long-standing tradition in Linux, don't have an extra
character if you don't need it :)

thanks,

greg k-h


From xen-devel-bounces@lists.xenproject.org Mon Oct 02 09:03:03 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 09:03:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611302.950906 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnEpT-0008IR-82; Mon, 02 Oct 2023 09:03:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611302.950906; Mon, 02 Oct 2023 09:03: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 1qnEpT-0008IK-4q; Mon, 02 Oct 2023 09:03:03 +0000
Received: by outflank-mailman (input) for mailman id 611302;
 Mon, 02 Oct 2023 09:03: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=qnrB=FQ=csgroup.eu=christophe.leroy@srs-se1.protection.inumbo.net>)
 id 1qnEpS-0007pr-2v
 for xen-devel@lists.xenproject.org; Mon, 02 Oct 2023 09:03:02 +0000
Received: from FRA01-MR2-obe.outbound.protection.outlook.com
 (mail-mr2fra01on20601.outbound.protection.outlook.com
 [2a01:111:f400:7e19::601])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 7cd12a21-6102-11ee-878e-cb3800f73035;
 Mon, 02 Oct 2023 11:03:01 +0200 (CEST)
Received: from MRZP264MB2988.FRAP264.PROD.OUTLOOK.COM (2603:10a6:501:31::15)
 by PR1P264MB1613.FRAP264.PROD.OUTLOOK.COM (2603:10a6:102:1b7::24) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.28; Mon, 2 Oct
 2023 09:02:58 +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; Mon, 2 Oct 2023
 09:02: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: 7cd12a21-6102-11ee-878e-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ix63YH6kl9LDCsA8kyCWM5IIPCBWvQQ/NObvRSbxee+pAsZ1yVHrhnzNg3eS0bUca7rYQP2E0x8CWwaARHxhkXAawtqW5Ne6ORACJ1udaeXW/1Uj+PbCxOhnJLjgeJ+0esX6euLDCAtvnVFjB/IQig0Xl5eoW/cCLrdPS1mc8u6HFlAhSMtfwvZvndaKzm3PcHEb4BgOCmZqJXjBUyQcvFJG+9xZ7C4gyUrCzKy1hoZP2c7BTzzZrSlPuqnjvyjBeUjg79eyG1vkoK6kVmGdPW/XxNW4dhYSEA9DGd0EpsXXNxqyWIQ+C6NAYa2wQsZuXzXVMHamJHF654eB3G8TAw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=tT5hiUKlaP3zn5htPJ5De6+jP9HZUKBL5XqW7313Naw=;
 b=WtNfUivDIjAF2SRQhPLgDc4PIUXPq9/ZE7lzeCYLCUxgZvt5zhtjhEaC21rVSC0dyhtWzl/p2su3nuDzs028JWGE3WH47xXJuxGHn4iRaEXYSVI5Zij/2TgxRlZjxW5T+wACZtyjigYbHNFoUyXfHObEuEqf9+iP8U3vHfijz+Lp3xe3IJ+x703Aryf/ai7x4We/LkL6gwGze2zgnJw8s7JLWn8IyTzUNUGb+9SUOzTGgOKabzTc3JqMFuzEivX+QASQrCykvCgvU1mL4FRxluSZ0xepCHwgEOxhOj79S2fXclWfm4UaAVakJFJP3Tj/LJ6C122DPh/Q1oqMlloIMg==
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=tT5hiUKlaP3zn5htPJ5De6+jP9HZUKBL5XqW7313Naw=;
 b=M7KdIW0I4gZYCwG5d1lEioTacEVbawmaO701wxEub4mP92kqkf7bj4ZPhk0E/7TZbj6LVvezI+UTjgIzZes4tOGqw8hi7ohDdRh2wugZPr0PWJYFMOFncZ6ux2bqzJciG4fk6zwjKZa9ITnKLT5RDrln6+BoBJOZPV1BaaC26tTsUMtC78ryNpMf6sZS/RkhsagHKACZFmIqpO3rleRKhKN32nOFBu1Ql3utRhFYY87LtMD4/efrTglWZWqRmmlzOA1x+ma1lwYT1mnSB2Ucr2Xeuq+Aa8E1i3TXzyTs1Nqrr54aAhAZxdvB/AmGGzyXqKFCuI0aHxDot9++JumMFg==
From: Christophe Leroy <christophe.leroy@csgroup.eu>
To: Joel Granados <j.granados@samsung.com>
CC: 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>,
	"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: AQHZ8g7L9GtM3GaC7kiSbpIXyc5PdrAwblgAgAXHowCAAARdgA==
Date: Mon, 2 Oct 2023 09:02:58 +0000
Message-ID: <e9966cb5-40dd-6a53-dc22-4a1fd1f8a2e2@csgroup.eu>
References:
 <20230928-jag-sysctl_remove_empty_elem_drivers-v1-0-e59120fca9f9@samsung.com>
 <CGME20230928163139eucas1p261a3b6b6cc62bafd5ace2771926911c2@eucas1p2.samsung.com>
 <5fadd85e-f2d7-878c-b709-3523e89dd93a@csgroup.eu>
 <20231002084718.bmme7yi4xfs7sw4b@localhost>
In-Reply-To: <20231002084718.bmme7yi4xfs7sw4b@localhost>
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_|PR1P264MB1613:EE_
x-ms-office365-filtering-correlation-id: adfe874a-b6fb-4bb7-ae0f-08dbc3265fb8
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info:
 huib1xu4cRxSeJbUhGWDFR4PK9/qZji4WeLJtNogtv9lSbuf6HtlZqV/cIYJM6Dmq9Xc1vyj7FsjZ8JG2ejJDnhR95Kd0FgbGUHvf1hBPgs97LFIc2Id2lYbU2yxHX7B3c4rggYG+C8Umz32FPx10ZZtfdprp89ltz+8JcTH+a3iTixYeIPQqoTerzWrrdco8H9SYIenXjAwxto2DBMkYiLo9gzAVmhmHwEa6FSWP7m6mNDmAkOK/1pXPjJ+mRUizwovh40Thc0QtRiKELqjVAO2qO9Refu5xV7W+eCPtwbXLY0rQjXDKHvE2P9gcG6dFteWKDMqZR//x7ABI1X6dAig8BzIa5A8uL7WD8MgbO5m0liYUz6ZeCDcqHhk7DaLJNiWjVjkGlFALcF7QgLixex2+46SglwaMrkaWpwBG6U8c0HLBYkiGzcoRIipHThLzW2Lwu+t2k9FGPNEirAIydNdWDeI8MU3HW0mKYtsq3bZii7tQEgkmV6GtmqlqGO8iecoQ4mTgCW90AYJe63dCHZoJywXq5Pi0UQ3I+N4EP31y/a7/+YD1wVcucLHhg7Gvt4EiBR/Oi+5udBZEc8q128QztBo/nuIitN1DkQalKWkCc3e2iGx1mx7L5GwP/p9wlfZEmyWE8RK7GVZyHmfQvKTDlHLbGCSgyy9HN5s6L8=
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)(136003)(366004)(39850400004)(396003)(346002)(376002)(230922051799003)(1800799009)(451199024)(186009)(64100799003)(31686004)(2906002)(316002)(41300700001)(54906003)(4326008)(8676002)(8936002)(4744005)(7416002)(7406005)(7366002)(44832011)(36756003)(91956017)(5660300002)(76116006)(6916009)(66556008)(66446008)(66946007)(31696002)(478600001)(86362001)(6506007)(71200400001)(6512007)(38100700002)(2616005)(38070700005)(122000001)(26005)(64756008)(966005)(66476007)(6486002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0:
 =?utf-8?B?cUFkVkpuM3NUdSt5Qk84cEhSVGNvT3FGQmFOZWRuN3pTeVhRa3JHMWFwNTdJ?=
 =?utf-8?B?WG1zdmJLSWdDb3hVWjcwOE1WY3pFVTdmbUpodXpseGhBU3ZxSUcwR0RiMHJr?=
 =?utf-8?B?aFREbThEVGpjMWZFRSt0TDYxOHVNSU1sT3ZjWHhxVTJoSVQzN1psaml0V0RJ?=
 =?utf-8?B?QnJMaHNMdEZHZmhVOEhFaDNUaDdqbG95WHhPMk95clZiREJwNXVkZW9kbE9V?=
 =?utf-8?B?ckExTHYwcVJhM2ZCVStUMEhub0ZnMlBOT0JuVE9jVE9KWnlFYmNqTmhrL1lX?=
 =?utf-8?B?d09mYkdVTVAzRGxreUNMVjJYTkd2MlNUdm9sQitEUjFXRGFmcGpmZEJYWGF2?=
 =?utf-8?B?R1JPSFFteHJ0MHJFT01NeS9XL1RZeURKSk52U25uUEt2a0lXbTllU1BNSVd3?=
 =?utf-8?B?R2lMaXZrV3pQRzlHNHRFYzgwbFRiWWNjWlBFNEF5UUZWOEJSVTZ0RDl3enVk?=
 =?utf-8?B?NE5naWdXWjB2Vm1QK1dUWGwzVzYwTUxrWXFLd00vYnBka2xMWDJ6b3FZSXJI?=
 =?utf-8?B?RWVsbVIxK290ZWYrUW1yQXB5VFc1bTZ0L1d3T1BqV000Z0MzdHN1dHdQa2hH?=
 =?utf-8?B?N2M1eXlxZjlMekZubXJ3dmVDUGUyNzZnM1o4eHA1OE5tSk5uL0dxMldtKzdM?=
 =?utf-8?B?S3A0bEFTZ2lXM1BYK1h3bUNyMldqbjFnS3NaM280RThJZnlOTnRSVko3OHgx?=
 =?utf-8?B?NzVTTU8zS0JuSkdqc0ZuSVBiQ1dQaGd2TEpZWG42M3pkODgyZWFsQjFOS1NF?=
 =?utf-8?B?MHpKSzZnZlNvTWF4MzFZU0d0b3VOT0hVR0lhK1pKYXJ0Rkd5UktnYUQrUVJZ?=
 =?utf-8?B?TE01Umd6em9lb3l5anFWSHZSelliNFpsQjRyNW5zcEtVdGNsQWROcGpnVFR0?=
 =?utf-8?B?ZExaQ0xxQXFsWnJQS3RVMENDeWdYMkF5b1hyRVRxVHMyeGgvNUpNMW01endp?=
 =?utf-8?B?VmJWZ3NWRE1venROeU95eS9ncGx3S2c4amhJMnJ6MUFNa1FrT1NxRENJMTBm?=
 =?utf-8?B?MFY5emNoeWFhYlVGUzNyMDBEaElKRml0OEE0M2VwOWxRbmlxUFZEQ0xFMktU?=
 =?utf-8?B?RExUdWpmd2d5UUdBODBQVDRwaUdiTElpdTNDVGU3dkpxYk5KR0ZZNFdjRHU2?=
 =?utf-8?B?WW92Ums0RFUydnlvdldvanNodXZJUS9tZnUrSlhIWFVFVTE1V2EzckhWQVNL?=
 =?utf-8?B?L0t1bHlGYVk4SHYycVB3V2ZNMDhHZUxTbzZrd1JmZVQ0ZC9UTjhEeURyQ2Er?=
 =?utf-8?B?MElGRXdSL1k3S1hWVW54RVh1bHlaOUI1MXZaQXl5WFNPTWk3TWwwYjhzUlQy?=
 =?utf-8?B?Q2hBTGthOEF0d2xNNXBLVjZxaFlsKzRXdmVRaVNDY2ZzcmtqYUk2Qmp2b09y?=
 =?utf-8?B?aEZ2cHh0TGFaZ1J3QkV1Q2U1Y0xtcDFpKzVxQm05T2tCWmVrSXkxYkVBM3BR?=
 =?utf-8?B?LzRLTUpKcEJKQm9rMGU1U1d2RFpueWZEZkx4ZDU3L2dOTWd4cStBZCtZNjhC?=
 =?utf-8?B?YXlCK2J3YU9DaFlQL2tKckMvVjVQR0xnbmdjYkpLaDRXak8yVFczQXljUzVC?=
 =?utf-8?B?MjJsY3pheUtGK2xuTjZha1BJcGhNZlV6S040dSs2aGsrMkIwSXljZE84MkpC?=
 =?utf-8?B?L2lmeVc3c3BMVm53VWFDeXBleWE0aGJ6OWxGanZ3RkxDajgxN2RkYnlXY3ht?=
 =?utf-8?B?NkRyOUg4UkpjRmdrQlVOMlpMNUt4OWk2MHJMd0ozUit5K1p4U0Nmaml4Z29z?=
 =?utf-8?B?OTg3NVpHaVZ6emJMdlRzNWIySjVsa0tyZzBNUzhOdXhQcmJLUGJ0ZjNpeFFi?=
 =?utf-8?B?blR6ZXlidUNKLzFpTGJ4UjlFTnNBZXprRDNsVi9Bck9ZMHIvaUNXNldGZlFG?=
 =?utf-8?B?Q3oxOEFZWmxxVEhBVnlVVmtPbm5XWmJqTjFYcFY3bFNOc2tSUzhpZjB6N0o5?=
 =?utf-8?B?ZFh4d2l2RFJqSVBLYVpvVTRaZHRjZHdpeGtKcEtVMlUxQU14QlhZRzMwTitp?=
 =?utf-8?B?d2RpQmdzMFViRE9GaTl6K09BcjlkUUdsNjJPdjNHQnBMOVpobklELzFPeGIw?=
 =?utf-8?B?TVlabEg0bFVtb1dZSkl2OC8wbkZaTGpqQVd4RXNoSjk2QUxveEZJSlRaTE1K?=
 =?utf-8?Q?LEsZii/Ui0/fDYRyDQ4Umczsz?=
Content-Type: text/plain; charset="utf-8"
Content-ID: <B19610D21F9A0E40914B707EAD7D9548@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: adfe874a-b6fb-4bb7-ae0f-08dbc3265fb8
X-MS-Exchange-CrossTenant-originalarrivaltime: 02 Oct 2023 09:02:58.4694
 (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: NxPxZfZhpijteIMxVFAWbceSw5KI2eWhoFxz+uH4uLMXCZsIZsxfc038Mh5FhXTNxIsSgItv/DkNOE1ITly8Mf3LyYxtnGop2N1fxfK/P3s=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PR1P264MB1613

DQoNCkxlIDAyLzEwLzIwMjMgw6AgMTA6NDcsIEpvZWwgR3JhbmFkb3MgYSDDqWNyaXTCoDoNCj4g
T24gVGh1LCBTZXAgMjgsIDIwMjMgYXQgMDQ6MzE6MzBQTSArMDAwMCwgQ2hyaXN0b3BoZSBMZXJv
eSB3cm90ZToNCg0KPiBJIGZvbGxvd2VkIHRoaXMgdHJhY2UgYW5kIHByb2NfaGFuZGxlciBpcyBj
b3JyZWN0bHkgZGVmaW5lZCBpbiB0dHlfdGFibGUNCj4gKHN0cnVjdCBjdGxfdGFibGUpIGluIGRy
aXZlcnMvdHR5L3R0eV9pby5jOnR0eV9pbml0IGFuZCB0aGVyZSBpcyBub3QNCj4gcGF0aCB0aGF0
IGNoYW5nZXMgdGhlc2UgdmFsdWVzLg0KPiBBZGRpdGlvbmFsbHksIHdlIHRoZW4gZmFpbCB0cnlp
bmcgdG8gcHJpbnQgaW5zdGVhZCBvZiBjb250aW51aW5nIHdpdGgNCj4gdGhlIGluaXRpYWxpemF0
aW9uLiBNeSBjb25qZWN0dXJlIGlzIHRoYXQgdGhpcyBtaWdodCBiZSBkdWUgdG8gc29tZXRoaW5n
DQo+IGRpZmZlcmVudCB0aGFuIHRodCBzeXNjdGwgcmVnaXN0ZXIgY2FsbC4NCj4gDQo+IERvZXMg
dGhpcyBoYXBwZW4gY29uc2lzdGVubHkgb3IgaXMgdGhpcyBqdXN0IGEgb25lIG9mZiBpc3N1ZT8N
Cg0KRG9uJ3Qga25vdy4NCg0KPiANCj4gVG8gd2hhdCBicmFuY2ggYXJlIHRoZXNlIHBhdGNoZXMg
YmVpbmcgYXBwbGllZCB0bz8NCg0KQXMgZmFyIGFzIEkgdW5kZXJzdGFuZCBmcm9tIA0KaHR0cHM6
Ly9naXRodWIuY29tL2xpbnV4cHBjL2xpbnV4LXNub3dwYXRjaC9jb21taXRzL3Nub3dwYXRjaC8z
NzUzMTksIA0KaXQncyBiZWluZyBhcHBsaWVkIG9uIA0KaHR0cHM6Ly9naXQua2VybmVsLm9yZy9w
dWIvc2NtL2xpbnV4L2tlcm5lbC9naXQvcG93ZXJwYy9saW51eC5naXQvY29tbWl0Lz9pZD1kNzc0
OTc1DQoNCg0KPiANCj4gSSdtIGdvaW5nIHRvIHBvc3QgbXkgVjIgYW5kIGtlZXAgd29ya2luZyBv
biB0aGlzIGlzc3VlIGlmIGl0IHBvcHMgdXANCj4gYWdhaW4uDQo+IA0KDQpDaHJpc3RvcGhlDQo=


From xen-devel-bounces@lists.xenproject.org Mon Oct 02 09:46:36 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 09:46:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611367.950925 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnFVL-0003eH-V2; Mon, 02 Oct 2023 09:46:19 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611367.950925; Mon, 02 Oct 2023 09:46: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 1qnFVL-0003eA-Rs; Mon, 02 Oct 2023 09:46:19 +0000
Received: by outflank-mailman (input) for mailman id 611367;
 Mon, 02 Oct 2023 09:46: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=/9Xl=FQ=gmail.com=oleshiiwood@srs-se1.protection.inumbo.net>)
 id 1qnFVK-0003ck-7V
 for xen-devel@lists.xenproject.org; Mon, 02 Oct 2023 09:46:18 +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 8769554a-6108-11ee-9b0d-b553b5be7939;
 Mon, 02 Oct 2023 11:46:15 +0200 (CEST)
Received: by mail-wm1-x32c.google.com with SMTP id
 5b1f17b1804b1-406619b53caso23711855e9.1
 for <xen-devel@lists.xenproject.org>; Mon, 02 Oct 2023 02:46: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: 8769554a-6108-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1696239975; x=1696844775; 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=69vCOCbkUwz9oeuuBbbBSOwYZLNY3NDsjhrUlPfYO9U=;
        b=hau73OY4R6w49dFV8O/dIfFJXlTNpxDR8/JibBd7RDr0zx7dCWXnJfuQootrJ6UqSt
         c3cjt5QbGPoKcEFDwp4rRg4waip64xJjWKtTSzIrGePghssYs1uXsM/q/DllKx2HuYVw
         mFK/BrC+385mO7qGRRa3o9sYulpZyleT4JrWgxDxKza0trLuloXy8KKBw7+ft+71Tajf
         BgxwyyWfsSP+gdf22O5DFqZvBcQXmwOa6/3Qkom3y7Jd5GyZQzP1DKnrkSpJr9GCBYk2
         etr5nq4OSusKiI0AUCaZ1Ztc3S6ihxXDIHmJuCWxV+nZlbm/veCF5weGWuT3eHaaD7SO
         7+UQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1696239975; x=1696844775;
        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=69vCOCbkUwz9oeuuBbbBSOwYZLNY3NDsjhrUlPfYO9U=;
        b=vuSK+5MxHqRobN1rotaC1iLLYmsSVf9Vp+ANz4l9i+KlNiFSZBkh7kJUeLa9c7F4OG
         PG5a3oQ6Vkg9Fm8Sf3kZ//MYoH/djlw+C/x4wZ3YGwwbt1r+hh2HCs67kzTEGCFHGpne
         DREjicVpUuNAu5kssuXWQrteRAD1OAKCbZKRWoVoIgVbpSYYlTSXXfdsl/bvWB7H36df
         nMs9R7VrP5kHUHG8lWEnoQirUimeoyKHsOw4JKnF1/4uyMmGPAgGf9hv4nR+MQtt/EI8
         JaZ+yBp72+++pdYm1ZqUOki3HTUrYatSknGzP1Oh4ATAPqtYEqC++9vqyT90DWQzI1Fm
         tQlQ==
X-Gm-Message-State: AOJu0YxmtLWrADCSIUmTa4f498FVa1y9PAr0/mPwq9bms2sHzwdjp2II
	oMf+FcVdx+SqUv5SW7GLYe8NRU6E42GsdXIIV6g=
X-Google-Smtp-Source: AGHT+IHDAcIGo2wPX70l+RnpujvEGDdu8sRrHDxyarR/KDA3V9x71sd8g+R6mToHIuV/YpjpjhrGIN1jAUPtI09jQVc=
X-Received: by 2002:a5d:60cd:0:b0:317:4ef8:1659 with SMTP id
 x13-20020a5d60cd000000b003174ef81659mr9347722wrt.28.1696239974727; Mon, 02
 Oct 2023 02:46:14 -0700 (PDT)
MIME-Version: 1.0
References: <CA+SAi2tXMupikB2YgEXuq98KnOcqm6zWrk19rNvWTfzf2=ku-w@mail.gmail.com>
 <dba88398-3aef-4541-a8e8-8fd075c0d40e@xen.org> <CA+SAi2tHLVDj+q8KMD7OuhHoj0sSZ-39qs3Z94WGmL2OA3TM_g@mail.gmail.com>
 <alpine.DEB.2.22.394.2309281447180.1996340@ubuntu-linux-20-04-desktop> <CA+SAi2vZie+PcKgkAbLxcaimG7strkWot1z4LTpCGLeJxuaT2g@mail.gmail.com>
In-Reply-To: <CA+SAi2vZie+PcKgkAbLxcaimG7strkWot1z4LTpCGLeJxuaT2g@mail.gmail.com>
From: Oleg Nikitenko <oleshiiwood@gmail.com>
Date: Mon, 2 Oct 2023 12:53:17 +0300
Message-ID: <CA+SAi2u2auZgzQh_s+pFspH1YLN4biCf0K7-V7NGWPZQjGoH0g@mail.gmail.com>
Subject: Fwd: changing Dom0 data during smc call inside of xen during cache coloring
To: Julien Grall <julien@xen.org>, xen-devel@lists.xenproject.org, 
	Carlo Nonato <carlo.nonato@minervasys.tech>, Bertrand Marquis <bertrand.marquis@arm.com>, 
	Stefano Stabellini <sstabellini@kernel.org>, Michal Orzel <michal.orzel@amd.com>, 
	Stewart.Hildebrand@amd.com
Content-Type: multipart/alternative; boundary="00000000000025c65c0606b8a5c7"

--00000000000025c65c0606b8a5c7
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

Hello Stefano,
Hello Julien,

> OK I see the question is about the Xilinx Xen tree. In the logs below we
have:

I see. After the correction r2 to r1 CSU got aborted immediately.

(XEN) d0v0 Forwarding AES operation: 3254779951 136bb00000000000 ->
fffffffffffff000
Received exception
MSR: 0x200, EAR: 0x2F, EDR: 0x0, ESR: 0x861

I printed the value which I got after the expression which I provided in
the 1-st email executed.

So I may conclude that Xilinx's real physical address calculation scheme on
the xen CC is incorrect.

Could you suggest a correct one ?

Regards,
Oleg Nikitenko

=D0=BF=D1=82, 29 =D1=81=D0=B5=D0=BD=D1=82. 2023=E2=80=AF=D0=B3. =D0=B2 00:5=
0, Stefano Stabellini <sstabellini@kernel.org>:

> 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 !=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 registe=
r
> 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 10064=
4
> ---
> > 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->domain,
> >  *  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_f=
w;
> >
> > 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 =3D get_user_reg(regs, 2);
>
> It would seem that this is not read correctly? It should not be zero.
>
>
> > 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 D=
om0
> > [   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 lo=
g
> >
> > 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 ?

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

<div dir=3D"ltr"><br><br><div class=3D"gmail_quote"><div dir=3D"ltr"><div>H=
ello Stefano,</div><div>Hello Julien,<br></div><div><br></div><div>&gt; OK =
I see the question is about the Xilinx Xen tree. In the logs below we have:=
<span><br></span></div><div><span><br></span></div><div><span>I see. After =
the correction r2 to r1 CSU got aborted immediately.<br></span></div><div><=
span><br></span></div><div>(XEN) d0v0 Forwarding AES operation: 3254779951 =
136bb00000000000 -&gt; fffffffffffff000<br>Received exception<br>MSR: 0x200=
, EAR: 0x2F, EDR: 0x0, ESR: 0x861</div><div><br></div><div>I printed the va=
lue which I got after the expression which I provided in the 1-st email exe=
cuted.<br></div><div><br></div><div>So I may conclude that Xilinx&#39;s rea=
l physical address calculation scheme on the xen CC is incorrect.</div><div=
><br></div><div>Could you suggest a correct one ?</div><div><br></div><div>=
Regards,</div><div>Oleg Nikitenko<br></div></div><br><div class=3D"gmail_qu=
ote"><div dir=3D"ltr" class=3D"gmail_attr">=D0=BF=D1=82, 29 =D1=81=D0=B5=D0=
=BD=D1=82. 2023=E2=80=AF=D0=B3. =D0=B2 00:50, Stefano Stabellini &lt;<a hre=
f=3D"mailto:sstabellini@kernel.org" target=3D"_blank">sstabellini@kernel.or=
g</a>&gt;:<br></div><blockquote class=3D"gmail_quote" style=3D"margin:0px 0=
px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">On Th=
u, 28 Sep 2023, Oleg Nikitenko wrote:<br>
&gt; Hello Julien,<br>
&gt; <br>
&gt; I am still fighting with xen Cache Coloring with aes.<br>
&gt; When I sent a request to hardware aes after xen with CC started I got =
the mistake in CSU.<br>
&gt; When I dumped structure contents on both sides I got the different dat=
a.<br>
&gt; Xilinx related contact wrote to me.<br>
&gt; <br>
&gt; When cache coloring is enabled, Dom0 is not 1:1 mapped (guest physical=
 addresses in Dom0 !=3D physical addresses). If the Xilinx drivers in<br>
&gt; Linux (xcsudma.c) issue EEMI calls with a guest physical address (for =
instance the address of a memory buffer allocated by Linux), then<br>
&gt; 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<br>
&gt; a corresponding EEMI call to the firmware (see xen/arch/arm/platforms/=
xilinx-eemi.c:xilinx_eemi). But Xen is probably passing the EEMI<br>
&gt; calls parameters unmodified. Then PMU tries to read the address but si=
nce this is not a physical address, it fails. Basically we need to<br>
&gt; add code to Xen xen/arch/arm/platforms/xilinx-eemi.c:xilinx_eemi to tr=
anslate any guest physical addresses passed as EEMI calls arguments<br>
&gt; into physical addresses before making the EEMI call to firmware.<br>
&gt; <br>
&gt; This is an example patch, which is translating the parameter on regist=
er x2 for the EEMI call 0xC200002F. I haven&#39;t checked the EEMI<br>
&gt; protocol for this call but this just an example to show you how to tra=
nslate parameters.<br>
&gt; <br>
&gt; diff --git a/xen/arch/arm/platforms/xilinx-eemi.c b/xen/arch/arm/platf=
orms/xilinx-eemi.c index 500c86dc69..bff1b71196 100644 ---<br>
&gt; a/xen/arch/arm/platforms/xilinx-eemi.c +++ b/xen/arch/arm/platforms/xi=
linx-eemi.c @@ -409,6 +409,30 @@ bool xilinx_eemi(struct<br>
&gt; cpu_user_regs *regs, const uint32_t fid, } goto forward_to_fw;<br>
&gt; <br>
&gt;=C2=A0 *=C2=A0 case 0xC200002F:<br>
&gt;=C2=A0 *=C2=A0 {<br>
&gt;=C2=A0 *=C2=A0 uint64_t example_possible_address_param =3D get_user_reg=
(regs, 2);<br>
&gt;=C2=A0 *=C2=A0 uint64_t translated_address =3D mfn_to_maddr(gfn_to_mfn(=
current-&gt;domain,<br>
&gt;=C2=A0 *=C2=A0 gaddr_to_gfn(example_possible_address_param)));<br>
&gt;=C2=A0 *=C2=A0 translated_address +=3D example_possible_address_param &=
amp; ~PAGE_MASK; +<br>
&gt;=C2=A0 *=C2=A0 arm_smccc_1_1_smc(get_user_reg(regs, 0),<br>
&gt;=C2=A0 *=C2=A0 get_user_reg(regs, 1),<br>
&gt;=C2=A0 *=C2=A0 translated_address,<br>
&gt;=C2=A0 *=C2=A0 get_user_reg(regs, 3),<br>
&gt;=C2=A0 *=C2=A0 get_user_reg(regs, 4),<br>
&gt;=C2=A0 *=C2=A0 get_user_reg(regs, 5),<br>
&gt;=C2=A0 *=C2=A0 get_user_reg(regs, 6),<br>
&gt;=C2=A0 *=C2=A0 get_user_reg(regs, 7),<br>
&gt;=C2=A0 *=C2=A0 &amp;res); +<br>
&gt;=C2=A0 *=C2=A0 set_user_reg(regs, 0, res.a0);<br>
&gt;=C2=A0 *=C2=A0 set_user_reg(regs, 1, res.a1);<br>
&gt;=C2=A0 *=C2=A0 set_user_reg(regs, 2, res.a2);<br>
&gt;=C2=A0 *=C2=A0 set_user_reg(regs, 3, res.a3);<br>
&gt;=C2=A0 *=C2=A0 return true;<br>
&gt;=C2=A0 *=C2=A0 }<br>
&gt; <br>
&gt; + default: if ( is_hardware_domain(current-&gt;domain) ) goto forward_=
to_fw;<br>
&gt; <br>
&gt; The aes request structure contains physical addresses of the source an=
d destination.<br>
&gt; These addresses are obtained via two calls dma_alloc_coherent.<br>
&gt; The address of this structure is kept at x2 register.<br>
<br>
OK I see the question is about the Xilinx Xen tree. In the logs below we<br=
>
have:<br>
<br>
&gt; (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>
<br>
So it looks Linux passed 0 as address in x2, which cannot be right?<br>
<br>
<br>
<br>
&gt; I applied the suggested scheme in xen for xilinx_eemi(...) function.<b=
r>
&gt; <br>
&gt; case 0xC200002F:<br>
&gt; {<br>
&gt; uint64_t paramaddr =3D get_user_reg(regs, 2);<br>
<br>
It would seem that this is not read correctly? It should not be zero.<br>
<br>
<br>
&gt; uint64_t phyaddr =3D mfn_to_maddr(gfn_to_mfn(current-&gt;domain, gaddr=
_to_gfn(paramaddr)));<br>
&gt; phyaddr +=3D (paramaddr &amp; ~PAGE_MASK);<br>
&gt; gprintk(XENLOG_DEBUG, &quot;Forwarding AES operation: %u r2 %lx -&gt; =
%lx\n&quot;, fid, paramaddr, phyaddr);<br>
&gt; set_user_reg(regs, 2, phyaddr);<br>
&gt; }<br>
&gt; goto forward_to_fw;<br>
&gt; <br>
&gt; As a result I got the same issue as earlier.<br>
&gt; <br>
&gt; [ =C2=A0 17.350086]<br>
&gt; 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<br>
&gt; log<br>
&gt; <br>
&gt; [ =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>
&gt; [ =C2=A0 17.353015] @@@ firmware:zynqmp-firmware:zynqmp-aes 0 @@@<br>
&gt; [ =C2=A0 17.358515] zynqmp_aes [0] ffffffc00910d000 2806000 firmware:z=
ynqmp-firmware:zynqmp-aes<br>
&gt; [ =C2=A0 17.366546] @ dma_alloc firmware:zynqmp-firmware:zynqmp-aes @<=
br>
&gt; [ =C2=A0 17.372347] @@@ firmware:zynqmp-firmware:zynqmp-aes 0 @@@<br>
&gt; [ =C2=A0 17.377775] zynqmp_aes [1] ffffffc009115000 42a14000 keytype 1=
<br>
&gt; [ =C2=A0 17.383660] zynqmp_aes [2] dump request align 1 ++<br>
&gt; [ =C2=A0 17.388501] 00 60 80 02 00 00 00 00<br>
&gt; [ =C2=A0 17.392032] 50 60 80 02 00 00 00 00<br>
&gt; [ =C2=A0 17.395583] 00 00 00 00 00 00 00 00<br>
&gt; [ =C2=A0 17.399117] 00 60 80 02 00 00 00 00<br>
&gt; [ =C2=A0 17.402664] 40 00 00 00 00 00 00 00<br>
&gt; [ =C2=A0 17.406226] 00 00 00 00 00 00 00 00<br>
&gt; [ =C2=A0 17.409755] 01 00 00 00 00 00 00 00<br>
&gt; [ =C2=A0 17.413311] zynqmp_aes [3] dump request --<br>
&gt; <br>
&gt; (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>
<br>
Here<br>
<br>
<br>
&gt; @ 000042A14000<br>
&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=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=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<br>
&gt; log from aes<br>
&gt; 04 E4 00 6F 05 E4 00 6F<br>
&gt; 06 E4 00 6F 07 E4 00 6F<br>
&gt; 10 E4 00 6F 11 E4 00 6F<br>
&gt; 12 E4 00 6F 13 E4 00 6F<br>
&gt; 14 E4 00 6F 15 E4 00 6F<br>
&gt; 16 E4 00 6F 17 E4 00 6F<br>
&gt; 18 E4 00 6F 19 E4 00 6F<br>
&gt; <br>
&gt; ERROR: =C2=A0 pm_aes_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 AT=
F log<br>
&gt; <br>
&gt; So the address of the structure was not changed.<br>
&gt; This is the question.=C2=A0<br>
&gt; How can I map this address to xen and change physical addresses there =
?</blockquote></div>
</div></div>

--00000000000025c65c0606b8a5c7--


From xen-devel-bounces@lists.xenproject.org Mon Oct 02 10:29:42 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 10:29:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610887.950948 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnGBF-0006WV-I2; Mon, 02 Oct 2023 10:29:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610887.950948; Mon, 02 Oct 2023 10:29: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 1qnGBF-0006WM-FH; Mon, 02 Oct 2023 10:29:37 +0000
Received: by outflank-mailman (input) for mailman id 610887;
 Sat, 30 Sep 2023 16:52: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=y00O=FO=philpotter.co.uk=phil@srs-se1.protection.inumbo.net>)
 id 1qmdCd-0006E7-HP
 for xen-devel@lists.xenproject.org; Sat, 30 Sep 2023 16:52:27 +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 b93920e3-5fb1-11ee-9b0d-b553b5be7939;
 Sat, 30 Sep 2023 18:52:21 +0200 (CEST)
Received: by mail-wm1-x32d.google.com with SMTP id
 5b1f17b1804b1-4064867903cso49934625e9.2
 for <xen-devel@lists.xenproject.org>; Sat, 30 Sep 2023 09:52:21 -0700 (PDT)
Received: from equinox
 (2.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.a.1.e.e.d.f.d.0.b.8.0.1.0.0.2.ip6.arpa.
 [2001:8b0:dfde:e1a0::2]) by smtp.gmail.com with ESMTPSA id
 u1-20020adfed41000000b003247d3e5d99sm4921066wro.55.2023.09.30.09.52.18
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Sat, 30 Sep 2023 09:52: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: b93920e3-5fb1-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=philpotter-co-uk.20230601.gappssmtp.com; s=20230601; t=1696092741; x=1696697541; 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=TP49E0lt1lRfwVwEUZNQYaCBfTY4UGz9ptrNHBZhxcM=;
        b=kIuAHdb9MJvCtEhgfhLWYrWro4Q5pcwo+v8GnPwlbz/rXz+ZvEKRAMag+baFmnMSEA
         lyGbTVdBlA1DMLlJrNIZThM4Q/vfQJMLAZ9R8p3hQuf+iRamZ6sCV6iSE4AEwMXIiVFf
         D3DEOM/P66GsGZqs1r7MzeVgNysHQe29Rw9k3E/QIUrNb7Odn3mp9tUUeWzJfjCD10so
         W2/mbb8gYr2G5eIzjKbyTwUeLqfdbb9Oeilzj1Ya+rdyjyDuMfSquJLMfTCUzbYXGRUW
         ecxgvOOnmuEyCQJb3kAWYI8G3OYbdOiSsU6j7maG0dIYGUNHaHJDVssdUIp9XGVVLrQ5
         91ew==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1696092741; x=1696697541;
        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=TP49E0lt1lRfwVwEUZNQYaCBfTY4UGz9ptrNHBZhxcM=;
        b=ruDKCohHLmA4uFpYpfNHhWgD3EjJtE9t9jFpaLLaxcnVJEt0AFvocx/bIIHYR7L58Z
         os5YeWGY8f6qZMrIqbwEIU6ZVWhqZ7h7gljaSxOGBgEBMtaUSy7QAuXe5RgYz4s8BZcM
         uNEtcqwF3M/A5nbZ72q6e8Jeo6/41kEn4gh/9YnK+wZkVkk6QERIS2eCUdH5rjVCpf3P
         wluT+cCaj8azL+R++uSwLql0+zAfXCjQPY37b5nmlPE70XpsGPq0WkR3CkHUmP5GkkOT
         qjNZkcW9gKAbpjNuYi+2+9ChY0VJBGc3IFH5abGmaQ4NkxcpBA7GZEHZ3Uue8sCZ+tCE
         XVJA==
X-Gm-Message-State: AOJu0YzqIOVVxgjqmInasHGPbvLjcJnZ4ePOLdoClSR1HQYmuymWdaBU
	Bj5IzciRdj3FecmkbHl62OLUww==
X-Google-Smtp-Source: AGHT+IFufhUosQmDbdYYO0lgqH5WgmabRsKPy1NuiT6FdEpd1klh9Lx806UT3kRvn4yTyQ0Y4WLs9Q==
X-Received: by 2002:adf:cf0a:0:b0:323:1689:6607 with SMTP id o10-20020adfcf0a000000b0032316896607mr6789063wrj.5.1696092741022;
        Sat, 30 Sep 2023 09:52:21 -0700 (PDT)
Date: Sat, 30 Sep 2023 17:52:17 +0100
From: Phillip Potter <phil@philpotter.co.uk>
To: Joel Granados <j.granados@samsung.com>
Cc: Luis Chamberlain <mcgrof@kernel.org>, willy@infradead.org,
	josh@joshtriplett.org, Kees Cook <keescook@chromium.org>,
	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,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Subject: Re: [PATCH 01/15] cdrom: Remove now superfluous sentinel element
 from ctl_table array
Message-ID: <ZRhSQaNDJih5xABq@equinox>
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>
 <20230929121730.bwzhrpaptf45smfy@localhost>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <20230929121730.bwzhrpaptf45smfy@localhost>

On Fri, Sep 29, 2023 at 02:17:30PM +0200, Joel Granados wrote:
> 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 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.
> Will send a V2 with this included. Thx.
> 
> > 
> > So your patches will just remove one line, not 2 and add 1, making it a
> > smaller diff.
> indeed.
> 
> > 
> > thanks,
> > 
> > greg k-h
> 
> -- 
> 
> Joel Granados

Hi Joel,

Thank you for your patch. I look forward to seeing V2, and will be happy
to review it.

Regards,
Phil


From xen-devel-bounces@lists.xenproject.org Mon Oct 02 10:37:15 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 10:37:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611416.950967 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnGIZ-0002zZ-EC; Mon, 02 Oct 2023 10:37:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611416.950967; Mon, 02 Oct 2023 10:37: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 1qnGIZ-0002zS-9X; Mon, 02 Oct 2023 10:37:11 +0000
Received: by outflank-mailman (input) for mailman id 611416;
 Mon, 02 Oct 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=PUzD=FQ=bugseng.com=federico.serafini@srs-se1.protection.inumbo.net>)
 id 1qnGIX-0002y9-BH
 for xen-devel@lists.xenproject.org; Mon, 02 Oct 2023 10:37:09 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id a22bce0d-610f-11ee-9b0d-b553b5be7939;
 Mon, 02 Oct 2023 12:37:07 +0200 (CEST)
Received: from Dell.bugseng.com (unknown [37.163.133.43])
 by support.bugseng.com (Postfix) with ESMTPSA id 1741D4EE0739;
 Mon,  2 Oct 2023 12:37: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: a22bce0d-610f-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>,
	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>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>,
	Henry Wang <henry.wang@arm.com>
Subject: [XEN PATCH] xen/irq: address violations of MISRA C:2012 Rule 8.2
Date: Mon,  2 Oct 2023 12:36:57 +0200
Message-Id: <fc077d4dba9c37d9d81cea5d184e59f00c3cdcd4.1696242264.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. No functional change.

Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
---
 xen/arch/arm/irq.c             |  3 ++-
 xen/arch/x86/include/asm/irq.h |  4 ++--
 xen/arch/x86/irq.c             |  8 ++++----
 xen/include/xen/irq.h          | 21 +++++++++++----------
 4 files changed, 19 insertions(+), 17 deletions(-)

diff --git a/xen/arch/arm/irq.c b/xen/arch/arm/irq.c
index 09648db17a..1f05ecdee5 100644
--- a/xen/arch/arm/irq.c
+++ b/xen/arch/arm/irq.c
@@ -182,7 +182,8 @@ void irq_set_affinity(struct irq_desc *desc, const cpumask_t *mask)
 }
 
 int request_irq(unsigned int irq, unsigned int irqflags,
-                void (*handler)(int, void *, struct cpu_user_regs *),
+                void (*handler)(int irq, void *dev_id,
+                                struct cpu_user_regs *regs),
                 const char *devname, void *dev_id)
 {
     struct irqaction *action;
diff --git a/xen/arch/x86/include/asm/irq.h b/xen/arch/x86/include/asm/irq.h
index ad907fc97f..a87af47ece 100644
--- a/xen/arch/x86/include/asm/irq.h
+++ b/xen/arch/x86/include/asm/irq.h
@@ -101,9 +101,9 @@ void cf_check irq_move_cleanup_interrupt(struct cpu_user_regs *regs);
 uint8_t alloc_hipriority_vector(void);
 
 void set_direct_apic_vector(
-    uint8_t vector, void (*handler)(struct cpu_user_regs *));
+    uint8_t vector, void (*handler)(struct cpu_user_regs *regs));
 void alloc_direct_apic_vector(
-    uint8_t *vector, void (*handler)(struct cpu_user_regs *));
+    uint8_t *vector, void (*handler)(struct cpu_user_regs *regs));
 
 void do_IRQ(struct cpu_user_regs *regs);
 
diff --git a/xen/arch/x86/irq.c b/xen/arch/x86/irq.c
index 6abfd81621..f42ad539dc 100644
--- a/xen/arch/x86/irq.c
+++ b/xen/arch/x86/irq.c
@@ -915,16 +915,16 @@ uint8_t alloc_hipriority_vector(void)
     return next++;
 }
 
-static void (*direct_apic_vector[X86_NR_VECTORS])(struct cpu_user_regs *);
+static void (*direct_apic_vector[X86_NR_VECTORS])(struct cpu_user_regs *regs);
 void set_direct_apic_vector(
-    uint8_t vector, void (*handler)(struct cpu_user_regs *))
+    uint8_t vector, void (*handler)(struct cpu_user_regs *regs))
 {
     BUG_ON(direct_apic_vector[vector] != NULL);
     direct_apic_vector[vector] = handler;
 }
 
 void alloc_direct_apic_vector(
-    uint8_t *vector, void (*handler)(struct cpu_user_regs *))
+    uint8_t *vector, void (*handler)(struct cpu_user_regs *regs))
 {
     static DEFINE_SPINLOCK(lock);
 
@@ -964,7 +964,7 @@ static int __init cf_check irq_ratelimit_init(void)
 __initcall(irq_ratelimit_init);
 
 int __init request_irq(unsigned int irq, unsigned int irqflags,
-        void (*handler)(int, void *, struct cpu_user_regs *),
+        void (*handler)(int irq, void *dev_id, struct cpu_user_regs *regs),
         const char * devname, void *dev_id)
 {
     struct irqaction * action;
diff --git a/xen/include/xen/irq.h b/xen/include/xen/irq.h
index 9747e818f7..58d462e8e6 100644
--- a/xen/include/xen/irq.h
+++ b/xen/include/xen/irq.h
@@ -18,7 +18,7 @@
     ASSERT(!in_irq() && (local_irq_is_enabled() || num_online_cpus() <= 1))
 
 struct irqaction {
-    void (*handler)(int, void *, struct cpu_user_regs *);
+    void (*handler)(int irq, void *dev_id, struct cpu_user_regs *regs);
     const char *name;
     void *dev_id;
     bool_t free_on_release;
@@ -62,17 +62,17 @@ struct irq_desc;
  */
 struct hw_interrupt_type {
     const char *typename;
-    unsigned int (*startup)(struct irq_desc *);
-    void (*shutdown)(struct irq_desc *);
-    void (*enable)(struct irq_desc *);
-    void (*disable)(struct irq_desc *);
-    void (*ack)(struct irq_desc *);
+    unsigned int (*startup)(struct irq_desc *desc);
+    void (*shutdown)(struct irq_desc *desc);
+    void (*enable)(struct irq_desc *desc);
+    void (*disable)(struct irq_desc *desc);
+    void (*ack)(struct irq_desc *desc);
 #ifdef CONFIG_X86
-    void (*end)(struct irq_desc *, u8 vector);
+    void (*end)(struct irq_desc *desc, u8 vector);
 #else
-    void (*end)(struct irq_desc *);
+    void (*end)(struct irq_desc *desc);
 #endif
-    void (*set_affinity)(struct irq_desc *, const cpumask_t *);
+    void (*set_affinity)(struct irq_desc *desc, const cpumask_t *mask);
 };
 
 typedef const struct hw_interrupt_type hw_irq_controller;
@@ -119,7 +119,8 @@ extern int setup_irq(unsigned int irq, unsigned int irqflags,
                      struct irqaction *new);
 extern void release_irq(unsigned int irq, const void *dev_id);
 extern int request_irq(unsigned int irq, unsigned int irqflags,
-               void (*handler)(int, void *, struct cpu_user_regs *),
+               void (*handler)(int irq, void *dev_id,
+                     struct cpu_user_regs *regs),
                const char *devname, void *dev_id);
 
 extern hw_irq_controller no_irq_type;
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Mon Oct 02 11:08:02 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 11:08:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611431.950976 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnGm6-0005sA-6w; Mon, 02 Oct 2023 11:07:42 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611431.950976; Mon, 02 Oct 2023 11:07: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 1qnGm6-0005s3-3y; Mon, 02 Oct 2023 11:07:42 +0000
Received: by outflank-mailman (input) for mailman id 611431;
 Mon, 02 Oct 2023 11:07: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=QbpY=FQ=citrix.com=prvs=63281d1e1=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qnGm4-0005rx-Mv
 for xen-devel@lists.xenproject.org; Mon, 02 Oct 2023 11:07:40 +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 e5106eeb-6113-11ee-878e-cb3800f73035;
 Mon, 02 Oct 2023 13:07:38 +0200 (CEST)
Received: from mail-dm6nam11lp2172.outbound.protection.outlook.com (HELO
 NAM11-DM6-obe.outbound.protection.outlook.com) ([104.47.57.172])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 02 Oct 2023 07:07:34 -0400
Received: from MW4PR03MB6428.namprd03.prod.outlook.com (2603:10b6:303:123::8)
 by MW4PR03MB6426.namprd03.prod.outlook.com (2603:10b6:303:121::21)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.24; Mon, 2 Oct
 2023 11:07:32 +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.035; Mon, 2 Oct 2023
 11:07: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: e5106eeb-6113-11ee-878e-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1696244858;
  h=date:from:to:cc:subject:message-id:references:
   in-reply-to:mime-version;
  bh=oZLip4tR0yNeU1o8g+YRI9CGG1Oq5v0YC+LWOSUnF1k=;
  b=PAOWguzbha7ccRCH22ipl4T/Df851ibQOCho9ocgzc0YnNFBJcQmWNFs
   rJ64mOJvsslLQ4F5P350ajTwVln0CciWBEWHNyQw5lb5xlGMcLxKZQarD
   gOGnzAKje5SEeztH9F2Uo7hRuXKJ9XYqxFCVGThbxO/cELYFPswPeCi3i
   E=;
X-CSE-ConnectionGUID: Lkw2wk8WR+ea/nhjWN1v5Q==
X-CSE-MsgGUID: SdEcOTHLQ7amRi3EMrl70w==
X-IronPort-RemoteIP: 104.47.57.172
X-IronPort-MID: 124377054
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:F2kYHamlmGAotF9cVukXjTno5gyQJkRdPkR7XQ2eYbSJt1+Wr1Gzt
 xJJCmyHOv7ZZ2H0KNlzbNy2/UIFuJXSx4I3QAJr/Ck1QiMWpZLJC+rCIxarNUt+DCFhoGFPt
 JxCN4aafKjYaleG+39B55C49SEUOZmgH+e6UKicfHkpGWeIcQ954Tp7gek1n4V0ttawBgKJq
 LvartbWfVSowFaYCEpNg064gE0p5K+aVA8w5ARkPqkT5AWGzhH5MbpETU2PByqgKmVrNrbSq
 9brlNmR4m7f9hExPdKp+p6TnpoiG+O60aCm0xK6aoD66vRwjnVaPpUTbZLwXXx/mTSR9+2d/
 f0W3XCGpaXFCYWX8AgVe0Ew/yiTpsSq8pefSZS0mZT7I0Er7xIAahihZa07FdRwxwp5PY1B3
 dgbN2oSbUC8vaG7yfW9SutToJ09cfC+aevzulk4pd3YJdAPZMmaBonvu5pf1jp2gd1SF/HDY
 cZfcSBocBnLfxxIPBEQFY46m+CrwHL4dlW0qnrM/fZxvzeVkVM3iee3WDbWUoXiqcF9hEGXq
 3iA523kKhobKMae2XyO9XfEaurnxHmnA91NTODknhJsqGaf62c0ND0ybASypMO40WObQdYAc
 1NBr0LCqoB3riRHVOLVWRyzp3qN+AARR8BRFewS4hyC0afS7ECSAW1sZi5MbpkqudE7QRQu1
 0SVhJX5CDp3qrqXRHmBsLCOoluaIjMJJGUPYSsFSwot4NT5pow3yBXVQb5LFa++jtTxXzbq0
 T2OhCE7i/MYistj/7W2+1HOxSilqZnAQgc24Rj/V2epqAh+YeaNbp2h7x7Y8PNJNsCZR12Ns
 WIsks2SqusJCPmlnyuLW/gJALCv6N6PLTLHjFhgWZIm8lyF+XSuYIRR6zFWP1pyP4APfjqBS
 G/evxlAoqBaOnSCZLVyJYm2DqwCz7XkFNnjfuDZaJxJeJcZXAWK5j10bEicmWXkilExkLoXM
 I2eN82rCB4yN6NjyzanQvYH5pUizCs+2GD7SIjyylKs1r/2TGGRYacINh2JdO9R0U+fiADc8
 tIaO87UzRxaCbT6enOOrtRVKk0WJ38mA5yws9ZQauOIPgthHicmFuPVxrQiPYdimsy5i9v1w
 510YWcAoHKXuJENAVzihqxLAF83YatCkA==
IronPort-HdrOrdr: A9a23:d90SGKhlGx6MTnCJD1ZR0xRlkXBQXiwji2hC6mlwRA09TyX5ra
 2TdTogtSMc6QxhPk3I/OrrBEDuexzhHPJOj7X5eI3SPjUO21HYS72Kj7GSoAEIcheWnoJgPO
 VbAs1D4bXLZmSS5vyKhDVQfexA/DGGmprY+ts3zR1WPH9Xg3cL1XYJNu6ZeHcGNDWvHfACZe
 OhDlIsnUvcRZwQBP7LfkUtbqz4iPDgsonpWhICDw5P0njzsdv5gISKaCRxx30lIkly/Ys=
X-Talos-CUID: 9a23:li52sGBRJEriQ1r6Ew1k6xQLGZAaSD7QxTDWI02HLz93FYTAHA==
X-Talos-MUID: 9a23:9HP+xggb1KNqNMjkdGkPwMMpD8tF6IOSKGQ0zpwDgcjfGAlqP2jFk2Hi
X-IronPort-AV: E=Sophos;i="6.03,194,1694750400"; 
   d="scan'208";a="124377054"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=RJYnxVrZoKkSoA8vpiECBA4P0y2p/4BgDb4ZZh8y+xR7+XNU+PhTSZiGSJLym1icW+RHpIYsXI/deYrHNCJlqVDX6vte0ZLYcH2bJLAJsKk3AJ9Ho2Sah7MHgC0bxtkbkYlqPFDp7mxdb34EnwCXnGPcsEEFa9S9+Au+SY6B1adKQBYyWrDhpHYxHCbojcrWLLC298LUo669iCOl3XSp4UPJ61p+M/fuGIRC+KYvJi+PiRekvJlvB0Ce96mEGchZO7i1a29Jq0asc3qKoL1ir9vsZPVctprWAHhXmRphnbbbcyfiMIwa6zpl2FC3XYfmVobcnYHm/od5QJEVfkcWtA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=kNCd0y7BtYdmbA8kTcy0EHbJEzWCKpTuLLtFCzKUtME=;
 b=i4nYVwYvdmIHQahoaWC6PIs3fwhmRfWQ4hHEAvA81kiDVMYT4Swg4C0Y7dksoPcfKOxm3Ei6ZQIAZsxWqts8HtkiVfQ125vZdzhI5MQxJPSbPltCGw7y+HQZjwBP/K4igKyRYEF5ChWKo/kD5RP9vOe6DDg99i4cbXOsFOWM0UxIFX7W5K7+WWhiztDF5mWioOccaxy2Bfu1yP136pvJ1tmMj9y3wqnVl1XqtbtXWxHdpXeM/OJxtCdW8OQJ92TXIrkVh34d7EqXR8zOwdh4d9x81nNZ2aLulm9k6bpaZ3ZVrijv/qeX8pCW3G+Sh06H8Qyv5Lw556rMu1t+Ua3gHw==
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=kNCd0y7BtYdmbA8kTcy0EHbJEzWCKpTuLLtFCzKUtME=;
 b=uRkIIsWZHut2awsvLdgbk/k0jD5+gM2xIh2KjjUmKmoyxnezb/9o9oN0EzQQfvfCdNMcE1l3XizOewGje5amNUaSqVmhvVLRTxPL9GsMKX8CuqqjylBYibb/KQl7x7xwqRPwyQ9t9bO4hl+n29cvpdx353N9RlB6i22dyw4VJLQ=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Mon, 2 Oct 2023 13:07:25 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@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, Henry.Wang@arm.com,
	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>
Subject: Re: [XEN PATCH 1/7] xen: add declarations for variables where needed
Message-ID: <ZRqkbeVUZbjizjNv@MacBookPdeRoger>
References: <cover.1696232393.git.nicola.vetrini@bugseng.com>
 <357a35c3035d0f8659a64d767791bc41d57494d3.1696232393.git.nicola.vetrini@bugseng.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <357a35c3035d0f8659a64d767791bc41d57494d3.1696232393.git.nicola.vetrini@bugseng.com>
X-ClientProxiedBy: LO4P123CA0119.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:192::16) To MW4PR03MB6428.namprd03.prod.outlook.com
 (2603:10b6:303:123::8)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: MW4PR03MB6428:EE_|MW4PR03MB6426:EE_
X-MS-Office365-Filtering-Correlation-Id: 41cd6add-b05f-4ec9-c133-08dbc337c5ad
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:
	ikPWsaE7G0difDd6AJbO5LG7Px7f/0Hu1322qtxTzRJM6Z4FtWMCTr3ahK+d3vtyHCWruRRTfZzmcFYkO5DHIxks88Jn12ylgpsS1/sgJSPAXPOq9UI3wj/s4pfx9YvaqFoUmUngKUpjUQmA21mU0CN/w9t0d0+mTuaIg4YAygTL/tFfLcrUBJnLVPtCJyB8p3d7hcr1ugC8XOZTiiIZoLADjiUIau1QbrXvHKPTf9nrANojxU9RIR12jEE1FsAu/RSTadhKPo0iqzMmsM8KskHB9+/NGaENmcywf3kEnWeZEnpjXjcdFOpL+ZoRvywoZ65q8Sa4Y3TCcGlHCgUFN3NScfKuuWWM/ziCx9DfMWvO8F/J7IY6qFzlAz4zap8fFF1vIxlFKTpMYGw+nsyFHeofArT+FSFPmzyDNiuHoh1ijaRRngDSxOoXy5WRqE5YTRKt1MIwG83Ypr22l6JBO+XVNeUKDc8UtYEY63aSVu7OBEgQVWVf0ooafsQaSEQKtXxLlXs3jt1SYIpMDiHZStGk9xSnXkkQ9Qb3iyCQNtHSw/vAqDyLVxkeO/irYg/P
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)(346002)(39860400002)(396003)(136003)(230922051799003)(64100799003)(1800799009)(186009)(451199024)(9686003)(6512007)(6506007)(82960400001)(6666004)(86362001)(83380400001)(85182001)(33716001)(38100700002)(6916009)(316002)(26005)(54906003)(66476007)(66556008)(66946007)(7416002)(2906002)(5660300002)(41300700001)(8676002)(8936002)(4326008)(6486002)(478600001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?b0N5cnl2SUh0RDZOVWdDYWRTYkxpODI0eXlROGUveUdFcWVnbnlZL2kwK0Za?=
 =?utf-8?B?bE9UTXZOeUthMWNrcHNiNkRvNEZUdXJub3JwT1J0ekZhbDkyVmJyTFRtRHBw?=
 =?utf-8?B?d2RQS00yWWY3Sk9TSG0yTGNRQnlFZ01CaDBzUGExcEFpWWpYNnY3L1FXNDlS?=
 =?utf-8?B?NGxTVitZWHdYQ2JSbjZTQ25RTnhHaXRlWUVUWDBmcFVtV1lMa2dNc2NXSUU1?=
 =?utf-8?B?WG9GdFgrbUFDSEFkME44Mm0vK0pXcFEra2R2c0dIY0MzSnJmWU84MjFidDZP?=
 =?utf-8?B?RWNRWGlSZC9wSndrZC94dm90OGRiSS9iNURWUHBTSjJiL1JPcHBjaVJkemZi?=
 =?utf-8?B?OS85alBtdmtDcU1XYU0rOWNNZ0I2cHlwNkRtTll5WGZBdkJ4ZlU1YVNlTlc5?=
 =?utf-8?B?QzlINWg3a3VxTmpZaVJtc0xHS2h1ZU43dVhUV1FWd3lOSTFKTnE5aE8zZVdF?=
 =?utf-8?B?UXRSRmwrODRmZFVUb1YyNGloNlp3TEF4NU1mNmEvM3o0Si9qNDdIUWNOZXZL?=
 =?utf-8?B?MlphMVE1cHFnSVdGS1pHR1BNc0x3VUc2dlF5anZ2Q1NTOWt3ZzFkeVlDU041?=
 =?utf-8?B?ZktWejNNUDNyazlsampOOVhjb0NFeE5HRkpweFRqZVRCMnVwVHRoS0I4M2Z3?=
 =?utf-8?B?bGl0NDhkRmtDUm9qV0ZCajRaQWFyVVJKSXhBb280SFZZRklXdkYrUnRHTlQr?=
 =?utf-8?B?bUwrTHlyT2UwZG14KzVNUGZrV1hkdXZqMlp3M0dlSXhNREhQRHlsUXpCaXk0?=
 =?utf-8?B?c0lTaXBDOG9tM0phSFZrYWNhR0xDZnRXdWgzN3dNaFhLRTZJVTdWUkk5SW9R?=
 =?utf-8?B?UGl0bnEwc1RsNTF4N2FGbDVDZlBKbk1NRWtUSjFQaUVmZ2lwUVpxN2ZWZ0Rj?=
 =?utf-8?B?eFF6NEUzdG9BNnFRSXVxbHMzSGlyZHRyYjFMSGNSK1dzTVBoZnYwUUtBOEkx?=
 =?utf-8?B?SWxVQXNxNHI4NzFGbUVSSWdqNzdUTXZBSSswTGVyaDZ4a3RiMENWUW1DVnZ0?=
 =?utf-8?B?K3ZQd3NGVUcwdU4veWl4cWZIVlBVZTNFVTQrVUxMUmx5U1R6aDNXSjdXMnor?=
 =?utf-8?B?NXp3cEQwVjBzR2ZmVXlUTVFlczZhdXk3RkN3eU5GdndZb3ZWdDMwRmgxRVE5?=
 =?utf-8?B?ellHRWVQY2pDTVB6MTdPbU5Za25wakx6OUpxVTdaQkNYZHFabEEvUDBjN1Fh?=
 =?utf-8?B?dVRYbjBIS0ZSUkxIbzh2NWpCaS96anA0bmI4OW1jWlRyRnM3eHVnZWF0Y29U?=
 =?utf-8?B?YVRtQzhoZURZSytZa1k5WVlHRjBpMmNuYVZ1NzRsWjRjSnBMUkR2T2M3Nk0z?=
 =?utf-8?B?blQ1b205T1l0dTdtcGVueG1zc3RnUTcydy9MU0Z0dTloY1FLOXBLV2pnbysv?=
 =?utf-8?B?WlFQbmE1czZmdFhHYStYcTIxTnQyOWtXL0ZxaUF6WmM3dk1hMXhEQ2VBNzdQ?=
 =?utf-8?B?NGIyaXczR3N6YTIxdGlRRVl4elRkd2RCT1BRWDNRTDVuTys1bGMzb3Ribzly?=
 =?utf-8?B?N3ZYNTZaSXZXVEJDZU5xU29tOUcwcnBOL2kxQ2laTi9KeVBOSUJjNmlwRUpY?=
 =?utf-8?B?TVVFTnlDUWtETnM3NUNGbmpOZ2ZEV3ZJLzBoMmZyMXFrOTlGZks0dzhiVmM1?=
 =?utf-8?B?eFB4S2FWSytQYmlpM3R0cXVEbjRHb0tVck43ME5QZi94Z296ZWt5YWZLRHBr?=
 =?utf-8?B?eTRHK2JuMWZQQ0tmRDltN3RXVGhjR0xQZTBsOXp3NlpwV1FiWVBvV0VpamIz?=
 =?utf-8?B?Um9jOU0zRjl6RnBzWUFnd3NBajE5ZnB3Q3NzQ29LZlZaY1hqeDA3QTR6cTBt?=
 =?utf-8?B?Y3BQTU42Q2VLZHJaYnJ4SGgvckMySHVYMzVqU3VWMGN1OVhkZ1hDUG1YWnhi?=
 =?utf-8?B?OC9BSy9RdFlBT203cXhkUWNoR29ucHk1bUNWaWd0UmdrMUtlV2xkQjRic1hQ?=
 =?utf-8?B?WExZRmtGaVFGakdOLzhld1hhSE1IdEJmTHZiamMxNUxINDJ6VnUvV0xTWkRD?=
 =?utf-8?B?V2hsQ0NyNnpRRksvWVVld2hmQUEvNjZWOVFPTVhsd1gvK0tKeTJ2eVQ5Z3Fs?=
 =?utf-8?B?emt3QVBacUVTejhrUWFTbWFjMklicjh6b3ZFOUVORm5HbmU0YW9qSmFvU1hD?=
 =?utf-8?Q?2/9eCfvBhPp6cOO5f6LA2j3AK?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	=?utf-8?B?TWxWOFQ2Q09VOGl6dFJndEZlcDR4dENpRDNmdUluSWpuT1pPVUJ4ZE5ZcThD?=
 =?utf-8?B?QStDSTJLVEdtUzVUUzNuS0tDOTY5M2pSTFpDcEw5TXY3emF3NlgwTks5YlFJ?=
 =?utf-8?B?ZTNkNDlEK0FCak84aEFpb2kvek15SW04d2VzTVE4Rjl1WEd4RzNMQTd1aFYw?=
 =?utf-8?B?a0VBVTIxa3ZTZFU1UTZPVWczaWRDQ0VJYURsUWxvQjZMdy9UQzg2WVVEeVc1?=
 =?utf-8?B?bUk4UEdzZjlqdTBJVDdGc3hkaHdLdmlsN1ZrOUJFS2NTa3d5ZlB1dVNQNVVk?=
 =?utf-8?B?MUZSZnQzWE9JemJCNERtdkxOMFJRVWt1RWxkazU5RXF6OFVkYmZRbnBvUVc3?=
 =?utf-8?B?K0Jjc1JLa3VrYjV3RS85NzV0d1BSMlNIbTdlRklrdGVlZCtvbHkyOGkybVdz?=
 =?utf-8?B?RUd6VDdVWlBHYkt4Y0RTbUpZZDQyYnNjdE5PSVdCRTZGZFdWOFVvUWh3Rldl?=
 =?utf-8?B?UXZkdlZSWE8yVE1idy9TeG11WEtPSVE4ZDZZZHNaY1VmT2lkdElERUlrcm9x?=
 =?utf-8?B?T0lqbmtnT0NmTC95SmhOcEtMeEEvdExhS1VvUXUyU3MrYUw3TUlRU1FBWUcw?=
 =?utf-8?B?NEZYcXFwbEsxTUF0K0lNbXZ1TEdOQzBodHhTeXM2cTFWcjVxaExmK2JKRVRK?=
 =?utf-8?B?STY0OE51VHhPckE1ek5TK1lVMi9uUXo3b056VWFhVFJYdUZPZ3JKYVJWNUVo?=
 =?utf-8?B?M05SNWdFUnkrZ0NiSmlYZU9SejVFZTZHK3Y4M2RPUFJxUXl6SzhsU1hJZy96?=
 =?utf-8?B?c1JUTTM1eFFDL3JJYmFwemQ5akc0YVJuL2t2SHJpRzROaDArejlMVDJJc04v?=
 =?utf-8?B?Wi9iUlpsdzJWMytZbUd4ekpxeUd2UUxaTi8zb2orN2pZY3hNekdFTFk5eTAw?=
 =?utf-8?B?N3gvZVZiSUxBSzQvRFgvaTlJcG51KzZpRnhxSXI2QjNKckMwUUQ2VHFmZDhO?=
 =?utf-8?B?Mi9paWIvdW1LZ0JVVjgvSFdKRDR3ZlhDc1cvU0UvN2k3NW9WRjJLVXZhY2RU?=
 =?utf-8?B?SGxiNFJFRjZEYlhsWDNRM01RYk9VV3ppTDlqSU9EQnp3ZlZmMDFWdUNGeWZS?=
 =?utf-8?B?ZGErT1kzMlQzeENSUUVPOGV2YkhQd3kvMCtTWUdyRDljSjZrVlp0SWZjSWhE?=
 =?utf-8?B?Q2FkVkdaS3Jtcy9sVjVlb0dSSzhVS2R5bTRXY3BQZ3l5cTlDTHQrOHIrbklw?=
 =?utf-8?B?MW1CM2dkdndOMGlEcC94UlpZNm9XMGprRGpibDZNWHEwZFUyOE5jWHNlWUs1?=
 =?utf-8?B?U2lraEovVVZVTnZuTzBTcWlEYkZjcktYZk1KN3lnL2NKRUhtZz09?=
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 41cd6add-b05f-4ec9-c133-08dbc337c5ad
X-MS-Exchange-CrossTenant-AuthSource: MW4PR03MB6428.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Oct 2023 11:07:31.7330
 (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: UupHJh6Iq52tZni53n0yv1yA4bLAcoI1je02vvjQp7JQodzSnvI+bM5onIK0iSRykx9GesAmKi4hRCqvCPv+sg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW4PR03MB6426

On Mon, Oct 02, 2023 at 09:49:44AM +0200, Nicola Vetrini wrote:
> Some variables with external linkage used in C code do not have
> a visible declaration where they are defined. Providing such
> declaration also resolves violations of MISRA C:2012 Rule 8.4.
> 
> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
> ---
>  xen/arch/arm/include/asm/setup.h  |  3 +++
>  xen/arch/arm/include/asm/smp.h    |  3 +++
>  xen/arch/x86/cpu/mcheck/mce.c     |  6 +++---
>  xen/arch/x86/include/asm/setup.h  |  3 +++
>  xen/arch/x86/irq.c                |  2 +-
>  xen/arch/x86/platform_hypercall.c |  3 ---
>  xen/common/symbols.c              | 17 -----------------
>  xen/include/xen/hypercall.h       |  3 +++
>  xen/include/xen/symbols.h         | 18 ++++++++++++++++++
>  9 files changed, 34 insertions(+), 24 deletions(-)
> 
> diff --git a/xen/arch/arm/include/asm/setup.h b/xen/arch/arm/include/asm/setup.h
> index b8866c20f462..8806a74b216d 100644
> --- a/xen/arch/arm/include/asm/setup.h
> +++ b/xen/arch/arm/include/asm/setup.h
> @@ -183,9 +183,12 @@ int map_range_to_domain(const struct dt_device_node *dev,
>  extern lpae_t boot_pgtable[XEN_PT_LPAE_ENTRIES];
>  
>  #ifdef CONFIG_ARM_64
> +extern lpae_t boot_first[XEN_PT_LPAE_ENTRIES];
>  extern lpae_t boot_first_id[XEN_PT_LPAE_ENTRIES];
>  #endif
> +extern lpae_t boot_second[XEN_PT_LPAE_ENTRIES];
>  extern lpae_t boot_second_id[XEN_PT_LPAE_ENTRIES];
> +extern lpae_t boot_third[XEN_PT_LPAE_ENTRIES * XEN_NR_ENTRIES(2)];
>  extern lpae_t boot_third_id[XEN_PT_LPAE_ENTRIES];
>  
>  /* Find where Xen will be residing at runtime and return a PT entry */
> diff --git a/xen/arch/arm/include/asm/smp.h b/xen/arch/arm/include/asm/smp.h
> index 4fabdf5310d8..28bf24a01d95 100644
> --- a/xen/arch/arm/include/asm/smp.h
> +++ b/xen/arch/arm/include/asm/smp.h
> @@ -6,6 +6,9 @@
>  #include <asm/current.h>
>  #endif
>  
> +extern struct init_info init_data;
> +extern unsigned long smp_up_cpu;
> +
>  DECLARE_PER_CPU(cpumask_var_t, cpu_sibling_mask);
>  DECLARE_PER_CPU(cpumask_var_t, cpu_core_mask);
>  
> diff --git a/xen/arch/x86/cpu/mcheck/mce.c b/xen/arch/x86/cpu/mcheck/mce.c
> index 6141b7eb9cf1..e855f958030d 100644
> --- a/xen/arch/x86/cpu/mcheck/mce.c
> +++ b/xen/arch/x86/cpu/mcheck/mce.c
> @@ -1682,13 +1682,13 @@ long do_mca(XEN_GUEST_HANDLE_PARAM(xen_mc_t) u_xen_mc)
>      return ret;
>  }
>  
> -int mcinfo_dumpped;
> +static int mcinfo_dumped;
>  static int cf_check x86_mcinfo_dump_panic(mctelem_cookie_t mctc)
>  {
>      struct mc_info *mcip = mctelem_dataptr(mctc);
>  
>      x86_mcinfo_dump(mcip);
> -    mcinfo_dumpped++;
> +    mcinfo_dumped++;
>  
>      return 0;
>  }
> @@ -1702,7 +1702,7 @@ static void mc_panic_dump(void)
>      for_each_online_cpu(cpu)
>          mctelem_process_deferred(cpu, x86_mcinfo_dump_panic,
>                                   mctelem_has_deferred_lmce(cpu));
> -    dprintk(XENLOG_ERR, "End dump mc_info, %x mcinfo dumped\n", mcinfo_dumpped);
> +    dprintk(XENLOG_ERR, "End dump mc_info, %x mcinfo dumped\n", mcinfo_dumped);
>  }
>  
>  void mc_panic(const char *s)
> diff --git a/xen/arch/x86/include/asm/setup.h b/xen/arch/x86/include/asm/setup.h
> index dfdd9e555149..3c27fe915ed4 100644
> --- a/xen/arch/x86/include/asm/setup.h
> +++ b/xen/arch/x86/include/asm/setup.h
> @@ -13,8 +13,11 @@ extern char __2M_rwdata_start[], __2M_rwdata_end[];
>  extern unsigned long xenheap_initial_phys_start;
>  extern uint64_t boot_tsc_stamp;
>  
> +extern char cpu0_stack[STACK_SIZE];
>  extern void *stack_start;
>  
> +extern unsigned long cr4_pv32_mask;

This one might better go in compat.h, albeit that would require it's
setting to be gated to CONFIG_PV32.  setup.h is IMO for init time
stuff.

> +
>  void early_cpu_init(void);
>  void early_time_init(void);
>  
> diff --git a/xen/arch/x86/irq.c b/xen/arch/x86/irq.c
> index 6abfd8162120..604dba94b052 100644
> --- a/xen/arch/x86/irq.c
> +++ b/xen/arch/x86/irq.c
> @@ -43,7 +43,7 @@ int __read_mostly opt_irq_vector_map = OPT_IRQ_VECTOR_MAP_DEFAULT;
>  static unsigned char __read_mostly irq_max_guests;
>  integer_param("irq-max-guests", irq_max_guests);
>  
> -vmask_t global_used_vector_map;
> +static vmask_t global_used_vector_map;
>  
>  struct irq_desc __read_mostly *irq_desc = NULL;
>  
> diff --git a/xen/arch/x86/platform_hypercall.c b/xen/arch/x86/platform_hypercall.c
> index 9469de9045c7..e4dbec73d784 100644
> --- a/xen/arch/x86/platform_hypercall.c
> +++ b/xen/arch/x86/platform_hypercall.c
> @@ -36,9 +36,6 @@
>  #include "cpu/mtrr/mtrr.h"
>  #include <xsm/xsm.h>
>  
> -/* Declarations for items shared with the compat mode handler. */
> -extern spinlock_t xenpf_lock;
> -
>  #define RESOURCE_ACCESS_MAX_ENTRIES 3
>  struct resource_access {
>      unsigned int nr_done;
> diff --git a/xen/common/symbols.c b/xen/common/symbols.c
> index 691e61792506..7c3514c65f2e 100644
> --- a/xen/common/symbols.c
> +++ b/xen/common/symbols.c
> @@ -21,23 +21,6 @@
>  #include <xen/guest_access.h>
>  #include <xen/errno.h>
>  
> -#ifdef SYMBOLS_ORIGIN
> -extern const unsigned int symbols_offsets[];
> -#define symbols_address(n) (SYMBOLS_ORIGIN + symbols_offsets[n])
> -#else
> -extern const unsigned long symbols_addresses[];
> -#define symbols_address(n) symbols_addresses[n]
> -#endif
> -extern const unsigned int symbols_num_syms;
> -extern const u8 symbols_names[];
> -
> -extern const struct symbol_offset symbols_sorted_offsets[];
> -
> -extern const u8 symbols_token_table[];
> -extern const u16 symbols_token_index[];
> -
> -extern const unsigned int symbols_markers[];
> -
>  /* expand a compressed symbol data into the resulting uncompressed string,
>     given the offset to where the symbol is in the compressed stream */
>  static unsigned int symbols_expand_symbol(unsigned int off, char *result)
> diff --git a/xen/include/xen/hypercall.h b/xen/include/xen/hypercall.h
> index f307dfb59760..12de5a69b5b1 100644
> --- a/xen/include/xen/hypercall.h
> +++ b/xen/include/xen/hypercall.h
> @@ -24,6 +24,9 @@
>  /* Needs to be after asm/hypercall.h. */
>  #include <xen/hypercall-defs.h>
>  
> +/* Declarations for items shared with the compat mode handler. */
> +extern spinlock_t xenpf_lock;

I'm confused about why this needs to be moved, AFAICT xenpf_lock is
only used in platform_hypercall.c, and the declaration is
unconditional, so there's no definition without declaration issue.

> +
>  extern long
>  arch_do_domctl(
>      struct xen_domctl *domctl, struct domain *d,
> diff --git a/xen/include/xen/symbols.h b/xen/include/xen/symbols.h
> index 20bbb28ef226..92540409265e 100644
> --- a/xen/include/xen/symbols.h
> +++ b/xen/include/xen/symbols.h
> @@ -33,4 +33,22 @@ struct symbol_offset {
>      uint32_t stream; /* .. in the compressed stream.*/
>      uint32_t addr;   /* .. and in the fixed size address array. */
>  };
> +
> +#ifdef SYMBOLS_ORIGIN
> +extern const unsigned int symbols_offsets[];
> +#define symbols_address(n) (SYMBOLS_ORIGIN + symbols_offsets[n])
> +#else
> +extern const unsigned long symbols_addresses[];
> +#define symbols_address(n) symbols_addresses[n]
> +#endif
> +extern const unsigned int symbols_num_syms;
> +extern const u8 symbols_names[];
> +
> +extern const struct symbol_offset symbols_sorted_offsets[];
> +
> +extern const u8 symbols_token_table[];
> +extern const u16 symbols_token_index[];
> +
> +extern const unsigned int symbols_markers[];
> +
>  #endif /*_XEN_SYMBOLS_H*/

This one is ugly, but I can't see a better way immediately.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Mon Oct 02 11:14:34 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 11:14:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611437.950985 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnGsg-0001Q6-92; Mon, 02 Oct 2023 11:14:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611437.950985; Mon, 02 Oct 2023 11: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 1qnGsg-0001Pz-4I; Mon, 02 Oct 2023 11:14:30 +0000
Received: by outflank-mailman (input) for mailman id 611437;
 Mon, 02 Oct 2023 11:14: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 1qnGse-0001PZ-Oy; Mon, 02 Oct 2023 11:14: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 1qnGse-0002zs-G9; Mon, 02 Oct 2023 11:14: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 1qnGse-0000mm-2C; Mon, 02 Oct 2023 11:14:28 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qnGse-0002Wi-1l; Mon, 02 Oct 2023 11:14: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=JbMV8vs44vzAJNL1n9unmPHMaL1oMQcWx1+TQ5LprIs=; b=sjTevZlQirqfSNkSJQdFJv9n3Z
	tsB1NRn6baMKKlTNnGjj/nqicgFOK+FsVX1BIvUJAla4fKjtPcMD10/Emom1HI0Etr5MEXncn37ql
	HpeZyEFHErXTpoKNieD2XJXgMUxnmy+t7dSAHWvhDuk4Zo0BW3uhcojm8lblZD6K+OIM=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183235-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 183235: tolerable FAIL
X-Osstest-Failures:
    xen-unstable:test-amd64-i386-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-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-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2: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-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-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-unstable:test-amd64-amd64-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-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-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-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-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-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-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=5bdfcf7fe89759321335159c8304833dc32a25cd
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 02 Oct 2023 11:14:28 +0000

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

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm 12 debian-hvm-install fail pass in 183229
 test-amd64-amd64-xl-qemuu-win7-amd64 12 windows-install    fail pass in 183229

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop  fail in 183229 like 183223
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183229
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183229
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 183229
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183229
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183229
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183229
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 183229
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 183229
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183229
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183229
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 183229
 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-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-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-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-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-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                  5bdfcf7fe89759321335159c8304833dc32a25cd

Last test of basis   183235  2023-10-02 01:53:48 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                  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                                  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 Oct 02 11:20:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 11:20:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611444.950995 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnGyl-0004QZ-5c; Mon, 02 Oct 2023 11:20:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611444.950995; Mon, 02 Oct 2023 11:20: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 1qnGyl-0004QS-2q; Mon, 02 Oct 2023 11:20:47 +0000
Received: by outflank-mailman (input) for mailman id 611444;
 Mon, 02 Oct 2023 11: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=TWvZ=FQ=cloud.com=george.dunlap@srs-se1.protection.inumbo.net>)
 id 1qnGyj-0004QK-JX
 for xen-devel@lists.xenproject.org; Mon, 02 Oct 2023 11:20:45 +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 b994ac30-6115-11ee-9b0d-b553b5be7939;
 Mon, 02 Oct 2023 13:20:43 +0200 (CEST)
Received: by mail-lj1-x22c.google.com with SMTP id
 38308e7fff4ca-2c189dabcc3so75744151fa.1
 for <xen-devel@lists.xenproject.org>; Mon, 02 Oct 2023 04:20: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: b994ac30-6115-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1696245643; x=1696850443; 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=4Nb7pXKnAfq4Zi0cVJR6AhJQFddioHrZZX5ql/vD72U=;
        b=NxLmnLKKj/ti5wzyTyNT/5fXfe9n3OUzVegZfcWx8ry7nJYMoAaGuTE3RyW2FjNIDu
         jJGZH98SU71yFmN9mNH6XpI/BzrYkWkR/ezXqGHqvvVWBnHsZpdTusbIzCq0kcxemv2d
         eNCdI2QhrG/i9nDiDLbh2d78X1MOw1GNdSTkA=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1696245643; x=1696850443;
        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=4Nb7pXKnAfq4Zi0cVJR6AhJQFddioHrZZX5ql/vD72U=;
        b=oTZSEL6jz6Rp4HgKQg21JQdphATZmjk5UQI0Im3+q05lrRVs1/mFJJPMRwwMXzD1pH
         7s7q4g0sB36DZN5Qh52zO97gHnL/2t/heuUosSASwZVpSeDqEC/mKmMzayFZQWoB3AEr
         1LIfUeGLeIEHVs1w7wgYg0Ahdz20ikJcATPqNEMkcHYoGpcUl4jRkuU9GWQ2wBq0LarT
         YPKzrQiqg99+4vj4TbLxwOE5SzANsxYpXT9jg6MwT0MLve8GCuHNJtQil+YUjlZhpGNf
         PpoHs3LGE8U2cvlY+H2ZwA45Y1V6+NZ8V2LeOo0AN5tESHRG85T0+sLVWkKI7XWqK7CT
         fhKg==
X-Gm-Message-State: AOJu0Yxi5jMOYh6WpDhB/SUium8VjOVXxAnILemdhktWX9e6pKToRXF/
	nOvhkhbuw6ZvsRrcLc7sahUVmr+T/dVXmE4Dd2oC3g==
X-Google-Smtp-Source: AGHT+IGf/mwMiJ/MJuT8LubdHogEmzRyID+lAoQ+mXHCRoh8gin5bJrFWEkeSqkaHfVyLjLCqYBLAiGPvm9LgEobpeg=
X-Received: by 2002:a2e:8ecb:0:b0:2c1:6ede:de20 with SMTP id
 e11-20020a2e8ecb000000b002c16edede20mr8824000ljl.6.1696245642555; Mon, 02 Oct
 2023 04:20:42 -0700 (PDT)
MIME-Version: 1.0
References: <CA+zSX=Z904nF0yD1grRZc1miEOhdTHqAd4j-S1j8GY+1bo9COw@mail.gmail.com>
 <ZRivEkG8Ox213H2A@itl-email>
In-Reply-To: <ZRivEkG8Ox213H2A@itl-email>
From: George Dunlap <george.dunlap@cloud.com>
Date: Mon, 2 Oct 2023 12:20:31 +0100
Message-ID: <CA+zSX=Zy0C_XMmMUxxk5TF88L0cXwFHihQdYDxaY+tMuTm3GQQ@mail.gmail.com>
Subject: Re: Sketch of an idea for handling the "mixed workload" problem
To: Demi Marie Obenour <demi@invisiblethingslab.com>
Cc: Xen-devel <xen-devel@lists.xenproject.org>, Juergen Gross <jgross@suse.com>, 
	=?UTF-8?Q?Marek_Marczykowski=2DG=C3=B3recki?= <marmarek@invisiblethingslab.com>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Sun, Oct 1, 2023 at 12:28=E2=80=AFAM Demi Marie Obenour
<demi@invisiblethingslab.com> wrote:
>
> On Fri, Sep 29, 2023 at 05:42:16PM +0100, George Dunlap wrote:
> > 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.
>
> 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.

You'd probably benefit from understanding better how the various
algorithms actually work.  I'm sorry I don't have any really good
"virtualization scheduling for dummies" resources; the best I have is
a few talks I gave on the subject; e.g.:

https://www.youtube.com/watch?v=3DC3jjvkr6fgQ

For one, when I say "oversubscribed", I don't mean "vcpus / pcpus"; I
mean "requested vcpu execution time / vcpus".  If you have 18 vcpus on
a single pcpu, and all of them *on an empty system* would have run at
5%, you're totally fine.  If you have 18 vcpus on a single pcpu, and
all of them on an empty system would have averaged 100%, there's only
so much the scheduler can do to avoid problems.

Secondly, while on credit1 a vcpu is allowed to run for 10ms without
stopping (and then must wait for 18x that time to get the same credit
back, if there are 18 other vcpus running on that same pcpu), this is
not the case for credit2.  The exact calculation can be found in
xen/common/sched/credit2.c:sched2_runtime(), but generally here's the
general algorithm from the comment:

/* General algorithm:
 * 1) Run until snext's credit will be 0.
 * 2) But if someone is waiting, run until snext's credit is equal
 *    to his.
 * 3) But, if we are capped, never run more than our budget.
 * 4) And never run longer than MAX_TIMER or shorter than MIN_TIMER or
 *    the ratelimit time.
 */

Default MIN_TIMER is 500us, and is configurable via sysctl; default
MAX_TIMER is... hmm, I'm pretty sure this started out as 2ms, but now
it seems to be 10ms.  Looks like this was changed in da92ec5bd1 ("xen:
credit2: "relax" CSCHED2_MAX_TIMER") in 2016.  (MAX_TIMER isn't
configurable, but arguably it should be; and making it configurable
should just be a matter of duplicating the logic around MIN_TIMER.)

That's not yet the last word though: If a VM that was a sleep wakes
up, and it has credit than the running vcpu, then it will generally
preempt that cpu.

All that to say, that it should be very rare for a cpu to run for a
full 10ms under credit2.

> > 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.

Not all spinlocks disable IRQs, but certainly some do.

> > 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?

Yes, I did mean 500us, sorry.

I'll respond to the other suggestions later.

> > 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.

Running xentrace would be really interesting too; those are another
good way to nerd-snipe me. :-)

 -George


From xen-devel-bounces@lists.xenproject.org Mon Oct 02 11:47:24 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 11:47:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611450.951006 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnHOO-0006Mg-9B; Mon, 02 Oct 2023 11:47:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611450.951006; Mon, 02 Oct 2023 11:47: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 1qnHOO-0006MZ-5o; Mon, 02 Oct 2023 11:47:16 +0000
Received: by outflank-mailman (input) for mailman id 611450;
 Mon, 02 Oct 2023 11:47: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=QbpY=FQ=citrix.com=prvs=63281d1e1=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qnHON-0006MT-6U
 for xen-devel@lists.xenproject.org; Mon, 02 Oct 2023 11:47:15 +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 6aef7cd0-6119-11ee-9b0d-b553b5be7939;
 Mon, 02 Oct 2023 13:47:11 +0200 (CEST)
Received: from mail-bn7nam10lp2106.outbound.protection.outlook.com (HELO
 NAM10-BN7-obe.outbound.protection.outlook.com) ([104.47.70.106])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 02 Oct 2023 07:46:57 -0400
Received: from MW4PR03MB6428.namprd03.prod.outlook.com (2603:10b6:303:123::8)
 by MW4PR03MB6459.namprd03.prod.outlook.com (2603:10b6:303:122::18)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.27; Mon, 2 Oct
 2023 11:46:54 +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.035; Mon, 2 Oct 2023
 11:46: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: 6aef7cd0-6119-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1696247231;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=ieuroTw4FFYN+pH0Yq7+Tt8TfdgLmV4LD6YchShgtBc=;
  b=hEx4ZAgszoyj9Auvc725Hd6Q5NwEclnkAsmv/1pcrduwQJACkyCCnSJi
   jf0nLve8Ko9faIepwOlgfM86K7M5Em3/tm9Cap6OqhrFf33z/ZTSdhxLA
   uQYO2rrFlbzXTFkf8wIuY0EF5aHjfIq31Wn1I8yfZ1n2EdwjIhr7o9jZZ
   Q=;
X-CSE-ConnectionGUID: kTuM8rIDSKiYeJneobkJIw==
X-CSE-MsgGUID: QefoW56iRzSdhOBg0QNRGQ==
X-IronPort-RemoteIP: 104.47.70.106
X-IronPort-MID: 127129894
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:VGYouqyxJt1MafeLK/96t+ezxyrEfRIJ4+MujC+fZmUNrF6WrkUPx
 mBLDG2OaamCZmGgeo8gbY2w9EMF7JfUmtNmTwE6/CAxQypGp/SeCIXCJC8cHc8wwu7rFxs7s
 ppEOrEsCOhuExcwcz/0auCJQUFUjPzOHvykTrecZkidfCc8IA85kxVvhuUltYBhhNm9Emult
 Mj75sbSIzdJ4RYtWo4vw/zF8EgHUMja4mtC5QVmPaoT5TcyqlFOZH4hDfDpR5fHatE88t6SH
 47r0Ly/92XFyBYhYvvNfmHTKxBirhb6ZGBiu1IOM0SQqkEqSh8ai87XAME0e0ZP4whlqvgqo
 Dl7WT5cfi9yVkHEsLx1vxC1iEiSN4UekFPMCSDXXcB+UyQq2pYjqhljJBheAGEWxgp4KWJy6
 NlIMhEhVTOCtu+Uxr+8QOpOp9t2eaEHPKtH0p1h5RfwKK9+BLrlHODN79Ie2yosjMdTG/qYf
 9AedTdkcBXHZVtIJ0sTD5U92uyvgxETcRUB8A7T+fVxvDCVlVQvuFTuGIO9ltiiX8Jak1zev
 mvb12/4HgsbJJqUzj/tHneE37WQxHmqCNNOfFG+3sdnjlqsmzISMg8tWVuci/bhs2iEdOsKf
 iT4/QJr98De7neDVcLhVhe1pHqFuB80WNdKFeA+rgaXxcL84QyUG2wFRT5pc8E9uYk9QjlC/
 k+EmZblCCJitJWRSGmB7fGEoDWqIy8XIGQeIygeQmMt4cTnoYw1pgLCSJBkCqHdptf4Ay3qy
 jaG6i03nawOjNUj3r++u1vAhlqEuZzhXgMzoALNUQqN9R90aoejYMqz9VHR4PJELYCYZlCEs
 D4PnM320QwVJZSElSjISuNSGrisvq6BKGeF2QApGIQ9/TOw/XLlZZpX/Dx1OEZuNIADZCPtZ
 0jQ/whW4fe/IUeXUEO+WKrpY+xC8EQqPY2Nuiz8BjaWXqVMSQ==
IronPort-HdrOrdr: A9a23:O0Gcb6upgQjiWtEv/2QW3lJK7skDWdV00zEX/kB9WHVpm62j+/
 xG+c5x6faaslkssR0b9+xoQZPwJE80l6QU3WBhB9aftWDd0QPDQb2KhrGSoAEIdReOjtJ15O
 NNdLV/Fc21LXUSt7eA3OG0eexQp+Vu/MqT9IXjJ30Gd3APV0i41XYeNu9MKDwOeDV7
X-Talos-CUID: 9a23:W1OzE21mENATxGrqvm3WCrxfGfw4Vy3H7VvrAE6JBERvRbqfSn2x5/Yx
X-Talos-MUID: 9a23:hADO0wiLHWIAda7mNjWWzsMpDcpm5JvzVkE3g64Ku+6uOnRJHQ2ytWHi
X-IronPort-AV: E=Sophos;i="6.03,194,1694750400"; 
   d="scan'208";a="127129894"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Qyw6z1hWb+I32FbmB6vCLHmvtkryraEgFqirKwe8pMUqNLOlUXxT74mObvbu24fUNqQ6H4PFvapQ9HIwiRuN9h9ZSrovyzH+ci4If9pXlPVd18cF3kdo2lxerQ+lCZDIHYuF8nR4x2M2PmqSWeEFf3zE7njvSfEf5oWPVgLMU5CdELkguHWH/UuYr7ZyRDIA/dMElJvtsA34lQ7/mk3O8H9mvg7e9jA3/Su4fdOcqDtS7w8/zQumPX1mAX9zU8EAN5QvasMZSU5AwLrTvXsr0rNraQiCz/zKEV1TEbo9gU2o2V38CL9pGv0eqlQJc15hRfh2AXWXbxsFcV/W6rLu2Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=x6ITXp0TzCTokxYzzck5rBzSqDm/s87w5+WFgz8Ixb4=;
 b=Vb3negxzrV+LT/C7ENMVuS5V+s+3j4zBNxyR7MsSxzDZejz/frNEuxY07C8ug6WsuzONzHRm+ab/1WY9kQLL8cRquRz09t6OFNRrGA3p7ba4ldlfsggH1hXIjmuRv/Dl30aEawny2MD8F2b86UQKxY4aVSHps+Bawh3nTJgCrDMup0uzU2a3DdyjL8hEAJJiG6yCIheBKB2RvFWi6+W8sp+Hhb5e4hOeiFHIJu5bqqLl5+fryMtBZGnIDkDALbmdxRxUIWGzROLCZQeN/4ApSu02gCiH1eaaJ4AwzoFIk+hcX2qaIUzkO6ogJq/GI/72lBzN9WD6kgC94dycfh3ihw==
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=x6ITXp0TzCTokxYzzck5rBzSqDm/s87w5+WFgz8Ixb4=;
 b=UHFbS5bj43lSCeCQcCGqnEBzB0ipkwFZqD9bpGnLPzIhLfQrirUC2ctGBTHvZ/SP3qkBQkbRSWORLulgIUzDykC1E8U57d5jeo13fl4XBdXgGggQfFtRlYc5Te4razBkSrL3aQxvm+vhvPNwYkTAaXnFS00VcsKL2TzDVxPKD3A=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Mon, 2 Oct 2023 13:46:47 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Stefano Stabellini <sstabellini@kernel.org>
Cc: Jan Beulich <jbeulich@suse.com>, 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: <ZRqtp9jxha_p1gQr@MacBookPdeRoger>
References: <20230927232004.1981595-1-sstabellini@kernel.org>
 <ZRU6A2wDSVEEHGbK@MacBookPdeRoger>
 <e1cc81b4-d990-b995-a24a-ba80c1e970ba@suse.com>
 <ZRVMo6Uf7occc0Zs@MacBookPdeRoger>
 <alpine.DEB.2.22.394.2309281346160.1996340@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.2309281346160.1996340@ubuntu-linux-20-04-desktop>
X-ClientProxiedBy: LO2P265CA0206.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:9e::26) To MW4PR03MB6428.namprd03.prod.outlook.com
 (2603:10b6:303:123::8)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: MW4PR03MB6428:EE_|MW4PR03MB6459:EE_
X-MS-Office365-Filtering-Correlation-Id: a54ad27b-0060-4da4-a784-08dbc33d4540
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:
	xXDllXF6DMSy/9qni4gZlQeSeSn2NFpsneVK5LvkIkFloIc5m1IC0lznXAzIeAwSQgIsnpU5nJXJM0B3s5at45rAyAIsI1reNhOEchtIPZJgSN2T5IQT+Yr+2Q7NmFE6/jL7Vps4KIkwAlgE0BG4h0LVxmPN4KfxtiE2Lf4rev8IpRpZYiy6o/4ua5wUk06GcX1hweh+GexcCGhx7qGTqDdUUHZJ0GMkETSWJHY+OczAt4onPYe7umh8YT0QZH/uTRLhboWwEFwwOFvMP42S76zUGhf8E6XD6pR4o8E7dLD0rJdQxmQhuc8ehwdnakXCnuCpMVgXb40RfNXZ+iNV0MIGsZPXTORYHQJvahv03ROu3wRzYhEfQV0DJgzhK3osBQwmurVjgsg8q3V67jdPR6WA4O3NR32ip0J8V8/ox9VpMKRNpysDN/1aoMUhE8RbOQ96ao4Kxdt/JgzmHrey4Z42LBb+101SY54AO+q0RyJu46rG0hP1F0Tn04S9hTkdvVJKsYmYQBK7T8TgxMmAMU5OrAhE9/PhoWaIEfxyXOf9celSWg6TmkKJYcFXb76O
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)(136003)(39860400002)(376002)(366004)(396003)(346002)(230922051799003)(1800799009)(186009)(64100799003)(451199024)(54906003)(6916009)(316002)(41300700001)(9686003)(53546011)(26005)(86362001)(6512007)(6506007)(6486002)(478600001)(85182001)(6666004)(38100700002)(82960400001)(66556008)(66476007)(33716001)(66946007)(2906002)(4326008)(8936002)(8676002)(5660300002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?Q0dzaGhBNWVJcTAyZ2RHcy9jM3UzTStlVXQyL0pvYTZNZXV6ZFNra2p0T0ZH?=
 =?utf-8?B?aDhmSTl6K2ZpUzcrRmNDeXU1Y3d4WlY0Q3FBMU5reEhwd3NWQW1sYXQ3ditq?=
 =?utf-8?B?UkRPekpuT2pBbXdRREt4TS9BUHg4cktwNXl1Vm1Scy9ROXNmM082VGlRZHBM?=
 =?utf-8?B?YWpxK1o2ZVlBQlJZbzdFZWowMG10NEY2cnRoQmltVlF6eDh4Znl0WmR1N1lW?=
 =?utf-8?B?SEI0T0o3ZnNwbE93dzllbk1DcDhqQkRtcjFtMUR1dXdoUk93Um91MWZpcGEy?=
 =?utf-8?B?eFpiL0wwMjRwUGxiR0UzZjJEREJwNThMOVpTaVRCQVhoYmNHZEFRblhUcmZN?=
 =?utf-8?B?T1YyWFJpWFlXQ3l6UXphYzJ3b1g4ZFMwUmhhcFVSeDVsbVViOXdtTjNjT2tC?=
 =?utf-8?B?VDRNM2JQV3QrWjlZeXoxemZ5NzhVaVZzMHgzcW5NSHIxSGhuWm4zVkYyd0l6?=
 =?utf-8?B?bHFlMUhDSXhLNTRWdTZtM21tTXhVamZMOUxZMHZXdkY3VTZPNEZrSzJJVG9E?=
 =?utf-8?B?bXdIY2RwMUNIY3RaVStZM2llN2hFOFlNU3JUMnlhTjI0WGtoTEFDQXFlelRW?=
 =?utf-8?B?ekdLN1QreTB4OUJqaFdWWGpDQVNNVDdNTTJZV0FRWFlTQVlucmcwTGl6RHNo?=
 =?utf-8?B?d1lGRTVGcTZkcTIwT0NkNzhGd3gzay9VQ1UyVzNRdHlFdEFFZkp3eEJDSzlG?=
 =?utf-8?B?RFc3SE42MjkxUy8rYkJla1BGT1hYTjVabDhncDFqV2psSTlkOEFjVm1LTFRO?=
 =?utf-8?B?TkZPRC9zU3dDWHVCaElGVkNmdU1EVG05NFR3Q0U0Qk9BSU1FbDdDNkJIRUU3?=
 =?utf-8?B?ek5XbUVBT3FMSXlTSzdzM21rekV2SFVsWkxpSVZJR1JiY1hWUEFWSVVBZVho?=
 =?utf-8?B?OXVXUzFmTVJ0cnJheDNDYWRpeG5KNGlFNGFxNkZFbzZ2M2NTemlXYnIxNkM2?=
 =?utf-8?B?VS92MnVQR3NObFV1N2dwS09LUzAzWUNCRVNMVEw2SmFiaUh3ZFlWMzUwbGJR?=
 =?utf-8?B?dkVJUStvWHArRG5GSzhJeWRhbi9CeUVZL2tpSnJMVUJBaVJlMlZiaW5ieTIv?=
 =?utf-8?B?VCtxVlA3ZVVDd0pKVkc3MlNMQWRjdmJpZnNGMVIwalZkTEpHOWtpT0d3bHVT?=
 =?utf-8?B?dytIUEZVMTVxbzR5WXBhbjBZQzJkcFBuK2szSnUzSFJGUVA5ajB0ZGxHemRM?=
 =?utf-8?B?dW9GU0tSdFRkSStGdCtlQndXd2xyRENucjlBaVQza0JXcm5IRnFOMlFlR0h6?=
 =?utf-8?B?ZnRlN0puelg4eXhXSkhGU1FmWGJqekxUcVRPbU93Q1BXWmJpZmQ3WUdqUFBj?=
 =?utf-8?B?WnhRQVcwVW1jTkhBaHJ6K1piUERXblp4NGpsRlhEUW9ROXN2VWkrZHZ6MU13?=
 =?utf-8?B?Y3FuRkhCRG1DeHU5cXY3c1IzZFlGSHUwOWh6S0tpc0wzb0tPQjYzTjVxYnN5?=
 =?utf-8?B?b3JCSGlOaFk0UHJyZFZ3QkNpd0xNaE01N1M4ZXBRejFsQWJUQW1XWXl1R2pE?=
 =?utf-8?B?emhHMncxUHRrYXh2MitOWTIzQWdYRjQ1V01KYUdpNERlNnV3Y3JnTmxmWXo5?=
 =?utf-8?B?cWtKQStXdGVWV0g5d0JDaVZXVm5EVEJSaWZRbnVlalR2NWNwaHVIMGNEdFVh?=
 =?utf-8?B?alcyYlYxbmFRcG5HVnhnd1J4VCtZUlJsQStMOUsrOWRubmJ2alBISEF0MDVq?=
 =?utf-8?B?MHhVOTN1K0dzczZ0b0djL1oxcktKQm1PdzVqQkZKMmhmb1d0MVlCWGE1cU84?=
 =?utf-8?B?KzZycWZ6Y0p4RkI2U2NFcUhrcTliUHFtNkVLZDMwaWUvRkFNY1RVTEIzbXhP?=
 =?utf-8?B?SWRRK0pKWWRGMjgvVTJxWkd0ZWVOZ0NLRzFkbGVLeVJVNWJTVUd2UWFwS1Fv?=
 =?utf-8?B?clZnMHltQmFjckh1OHBza3FITUpDL3UyKzYyMUJBRXJJdFVFZDM1S25LeGV6?=
 =?utf-8?B?aWJmRVVRRUVqczYzbGp5dmNxdFh6WnpSaERpNnVHenFPNG8yN3NhMS9qZlUr?=
 =?utf-8?B?NUtBUHNMNHRrZEVQL1h6Sm9MTXdxWklieHhpYzVkVFVqNW9jZlZQWVhFUXVB?=
 =?utf-8?B?a29OM3lSV2Z0TTd0bTJyalh6ZE16MGo5VlVndE9wMVZCZkhnTzBKeXk3ZnQw?=
 =?utf-8?B?TFlidVdpSktBR1lzejBZdENmajc4dW13SWJoSWpTNHY2b3lKcVRtTmgvcTdt?=
 =?utf-8?B?Y2c9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	DSJz/dnyT3W23/WQt2iV4KGkfhksNvHFf/WHklIGLtO7sdr4UIH/kuYMCD7IiZhaqu4WaE/bvCavFAbK7ad8zJqVo7j+9nfdjkldoW6+mKWskXaaWWiNJme0xFeX/sq1OVuWPORZ672mOq3ZnA4T0WHLeYFZyetJW06z/k+tmpBY1130ljuhG0Xmf3M1jP9Er2p7Dz92K+d7VzYgRDxfNHr9Rvl57dCmjhKLSNjtqLknzW5X5swYlqyB4PUB+GhZGHMkbqZoCk94eKkzQ/t3TDxJfSjUhPUCxhwhcfMNVjvCAKbBdkfWZ4f0YFgvRVos5UPJrss5Vh76L1e7SVcWFZ8S/AgYxCNjdPKIeU1QSGMnWp5DDqv02lGHg1FZI/6V0SXwAZou6Z3Q1gnEcaIjhrSCNH+rt1OG0l0rwodt6agC3m3TN0Gzw5IC1PnDEyM4z3ZliSZ+k04Xa8JQGxSCSPDOyMHUp5KTIWvMMCs4jICykB6sFqzRvwAJVEbInzqsok9PL1hoZX+prcq8O4iCuhYc1Rnlja+DzVDh1wKVAp2aG0hlJQn3jmjzUZsxaqa5wMv2ZkQm/Vqx6cILwPRjht0U6Hbc82CH9mbNmHzCNrA3+rbn6OihOP0ehB5jeiiBkQs2/BlRHtbqD/XScKtGFnTnusZhOms4O+Wmn74pWdc37C9qnkMCFJuWEF8ZfoT5FSB2meHtVhB4RI/fM4B4+6deJIM4An2foeorH7/8RhdI4AJ8fBs0UFUkD8C3ECAtOoIIiB1+DM6byT+difZooVoRf1bxw09538HSq5RCaidCzUIgV9nfgB79MyTvR+d+cVMHk/eebVYbWC+aKbYH+pTdIUMI3ShUUweEVkdeLHlqh8CtsIONF4Bc/B3Ni7ar9gfFnPgdrLlPw92PhE5Qyg==
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: a54ad27b-0060-4da4-a784-08dbc33d4540
X-MS-Exchange-CrossTenant-AuthSource: MW4PR03MB6428.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Oct 2023 11:46:54.1015
 (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: w2v8v/VT8Tbcxzj0sgKWBKfrwZJucV+YdzO+BKlvDYKGx9fYp6sOkG/YPjE/oGZLG8V8W+dl3DozO+f2dz/N7w==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW4PR03MB6459

On Thu, Sep 28, 2023 at 01:48:59PM -0700, Stefano Stabellini wrote:
> 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?

LGTM.

Feel free to add my Reviewed-by: Roger Pau Monné
<roger.pau@citrix.com>.

Thanks.


From xen-devel-bounces@lists.xenproject.org Mon Oct 02 11:50:55 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 11:50:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611454.951015 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnHRu-0007mE-N1; Mon, 02 Oct 2023 11:50:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611454.951015; Mon, 02 Oct 2023 11:50: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 1qnHRu-0007m7-KO; Mon, 02 Oct 2023 11:50:54 +0000
Received: by outflank-mailman (input) for mailman id 611454;
 Mon, 02 Oct 2023 11:50: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=QbpY=FQ=citrix.com=prvs=63281d1e1=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qnHRs-0007lk-L5
 for xen-devel@lists.xenproject.org; Mon, 02 Oct 2023 11:50:52 +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 ee8e6456-6119-11ee-878e-cb3800f73035;
 Mon, 02 Oct 2023 13:50:51 +0200 (CEST)
Received: from mail-dm6nam10lp2103.outbound.protection.outlook.com (HELO
 NAM10-DM6-obe.outbound.protection.outlook.com) ([104.47.58.103])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 02 Oct 2023 07:50:48 -0400
Received: from MW4PR03MB6428.namprd03.prod.outlook.com (2603:10b6:303:123::8)
 by BY5PR03MB5217.namprd03.prod.outlook.com (2603:10b6:a03:226::12)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.27; Mon, 2 Oct
 2023 11:50:46 +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.035; Mon, 2 Oct 2023
 11: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: ee8e6456-6119-11ee-878e-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1696247451;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=199Hz0Y2ZQEVr0T0it05GfSFQ/vnGwugxAeOm8Rz8AY=;
  b=FpFiTlTotTH6Hq55LMRciW8ti9eR6+u9psxL9NQaMJPrXrv+ql5vU6Mf
   KWjYYZfLV/47TrJtiC5d5HGE5UsV7XCiVZ89NO4w/ExHqCD81vAVDE4+9
   mvuIFduxjseEfDYuhzcP9ilLtWFlQxVtCw0HS0SejPCklTp9HA/ABjJ6B
   g=;
X-CSE-ConnectionGUID: fC+S5btNTa+jAJRvEe/4Rw==
X-CSE-MsgGUID: n2d1DxinRc+NROyeS1fg1Q==
X-IronPort-RemoteIP: 104.47.58.103
X-IronPort-MID: 124379247
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:bp70cqNMxbc1TfHvrR2clsFynXyQoLVcMsEvi/4bfWQNrUp31GAHy
 2QZUGnTaPuJZjb8L913ad+1p0pU7ZLWmoIyGwto+SlhQUwRpJueD7x1DKtS0wC6dZSfER09v
 63yTvGacajYm1eF/k/F3oDJ9CQ6jefQAOOkVIYoAwgpLSd8UiAtlBl/rOAwh49skLCRDhiE/
 Nj/uKUzAnf8s9JPGjxSs/nrRC9H5qyo42pA5gZmPJingXeF/5UrJMNHTU2OByOQrrl8RoaSW
 +vFxbelyWLVlz9F5gSNy+uTnuUiG9Y+DCDW4pZkc/HKbitq/0Te5p0TJvsEAXq7vh3S9zxHJ
 HehgrTrIeshFvWkdO3wyHC0GQkmVUFN0OevzXRSLaV/ZqAJGpfh66wGMa04AWEX0uhcQloT/
 +A+FDlObDmhvfybzfXncPY506zPLOGzVG8ekldJ6GiBSNoDH9XESaiM4sJE1jAtgMwIBezZe
 8cSdTtoalLHfgFLPVAUTpk5mY9EhFGmK2Ee9A3T+PpxujCIpOBy+OGF3N79YNuFSN8Thk+Fj
 mnH4374ElcRM9n3JT+tqyjw3bCex3+kMG4UPLvi+qdGkFyV/GdQLicxRFaA+Pe203frDrqzL
 GRRoELCt5Ma71CmUdDnQ1u4oXqIsxQGUtxcO+Q/5EeGza+8yzieAm8IXztQcusMvcU9RSEp/
 lKRltavDjtq2JWFRHTY+rqKoDeaPSkOMXREdSICVREC4dTovMc0lB2nczp4OKu8j9mwFTSux
 TmP9XA6n+9K1ZVN0Lin91fahT7qvoLOUgM++gTQWCSi8x99Y4mmIYev7DA38Mp9EWpQdXHZ1
 FBspiRUxLlm4U2l/MBVfNgwIQ==
IronPort-HdrOrdr: A9a23:oaOuLaw1MC2+CcPzQQG2KrPwS71zdoMgy1knxilNoH1uA6+lfq
 +V7ZYmPHPP5Qr5O0tBpTnjAse9qBrnnPYfi7X5Eo3PYOCMggqVxe9Zgrff/w==
X-Talos-CUID: 9a23:oPbA7WAqgZvDjvj6EydMt3VJENwDTnSezl7yGVGVBCE1cqLAHA==
X-Talos-MUID: 9a23:IEtRBQTsk7U2cYGHRXTq3j07GNdp5Z6lS2Y3toQLgJCKOnVJbmI=
X-IronPort-AV: E=Sophos;i="6.03,194,1694750400"; 
   d="scan'208";a="124379247"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=kQDU1lx+5u2cqgTIqTWYRPeABl6XG7qiAl3wiI4ar3Us2GlURfzWW+z7nmzflzL5+In7kkOft3FEJ+CvRf7XM7X0+I6jBOrxXWbn0FQzRnqLkv464gwbnt4S1SrIkmplmqmm8hvru3xeYZ/xUc5Eq2cOBdJVCknlQl68daYJEO2M+KuO+0Eeb6sWSZAiUz1TIhaKjrJFXfUj05C+H9ryK7ROnfJkUrF5BBE1b2ai1cn4JQ11ysiqvi0VdCTpxicunZtq4iKky4MZ0Ec6VzmJj3smQn3RRJiZ5xCoC/hHA67eJN8kINzuDKlCw73fy5skpOhEMzH0ePBzNHcNUBf0OA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=UPIzqLrYIrscWB1q/iSJKkzlk5ksBnVAmhJpJAC7fno=;
 b=bc6k7X0GT1i6pY4eELQ3bJefjVr97qn3Cfwr+GBUe73nfrB2XlOeOIKbci4O5L+fhLiK7zJXbD7bCTEKT8og7tFkDCzKdE50tbVc6/harhCFNZIDHly2nPJ5p4VgbQgX1+f+upFIsqU60LaASE675JS5Y43IQlZU99pti7+BKC9wHiMoAIU1ZAaM1Tg8VKUGzMAmf1508EsV+Qc/og5fpPC+dM/HpHnPRWbIR9aDlKlnTqvIn9qtEr9UegRgMneWPLWq2WHZu3RNLgtaJ2r4B3ZbdAsalPlNFWYITvkXK7ZI9LrGjg/LQ3oPCuTzhXFjiQh06fhYklWTELCVmwd8fQ==
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=UPIzqLrYIrscWB1q/iSJKkzlk5ksBnVAmhJpJAC7fno=;
 b=NO7LFDq7bo0ikRrR0HYi6EyANwNtDyv33RDKYf4YQsnHe+NhMnDlfOil2IvL54hSe87+6OT5FDiFWiM8FRkP51U2hJRnWevXKusgSfK6Ag5GLk6o0gysug7yKA4740eDiPPI0NgvjE/RxrscpYMRNu/s+vWhnxrt7gnYNRuoHzE=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Mon, 2 Oct 2023 13:49:25 +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: <ZRquRcRz-K43WeMc@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>
 <ZRU5G4Ae8B-A2iWd@MacBookPdeRoger>
 <168709e2-0a1d-a474-a9a4-c3c086b7f134@amd.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <168709e2-0a1d-a474-a9a4-c3c086b7f134@amd.com>
X-ClientProxiedBy: LO4P265CA0297.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:38f::6) To MW4PR03MB6428.namprd03.prod.outlook.com
 (2603:10b6:303:123::8)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: MW4PR03MB6428:EE_|BY5PR03MB5217:EE_
X-MS-Office365-Filtering-Correlation-Id: e072c405-261f-4b05-908e-08dbc33dd086
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	PoDl4cowZIHvvp5JvrgDGvU2gxSu4o+s6WCLooawc/+wFxp49D7zKzxDn1dhiel24JPrq5iWF7tYyqXErJNfMoj0z2e/lBzyjwp+VhIACW4e6/v9BpQRjdfM1jR83cSPA0jcneN6Q26aGw6IWBPMEsTuFEnaOk/B/hwZKPS5mjkHb5tTvHmmKQt3lQ9myZfERHLewarKmA5wcZfUincckocYYFSFXIhuNf51qiLqXRLTA/6xA0B8SjV/pseszOhqPhgjGDE1tYMH4AUKyIw8RMA4kNdwrpu5VQ2puECrHVUXyXJQZI5+ubFeMxpHwvPNCi35r5kAg7TTyTqU3n+cVLoaT4PrFuDdhIl7ScmZUM3Vq7ldBENjEfNNqKpzGohHxUSfDvojTPaDffCDZ9sqnL3EA6NoVcuEg8OxR3+rPcN7kFZAYOxVc6BaGX/wlbkd8StGRKHjY3FVfnWLuVmV8G9KUsU1bpZoMKy3G6tm/P/hq77qUwS/Lt5uJuqDTqTN2BVN3K2af6q6Hh33q2b+eC+m6rpCs9iw/GQahtLehL6fVzvprhNFrFFxoNsDqzBG
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)(396003)(366004)(136003)(39860400002)(346002)(376002)(230922051799003)(64100799003)(1800799009)(451199024)(186009)(6666004)(6506007)(53546011)(478600001)(6486002)(38100700002)(86362001)(82960400001)(2906002)(41300700001)(33716001)(83380400001)(9686003)(6512007)(26005)(85182001)(66476007)(54906003)(5660300002)(316002)(66946007)(6916009)(66556008)(8676002)(4326008)(8936002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?SHF3bWdpdHZEaENYVXVIVjlhOGxDMW5qTkZoS1l3WlNCNk95TDhrUjZFODEx?=
 =?utf-8?B?UkU1T1RnRFNPK25JWS9YbFM1UWxyVGM5cHB4KzBBWVZIejFQZ3pkdFlJbTVK?=
 =?utf-8?B?T2VMOG83ODYvVzZobHFxVTRhMmhEeVA5eHlsNWpuOGFoM040bEdudi8xYWs5?=
 =?utf-8?B?VzRFMVFyYTNwNFloM2x3MXgvcE1KVFlqWXhMdWJ1L2JtcjYzU0M1cjZuSlk1?=
 =?utf-8?B?cThiY1UwaGx4QWpJeHQ3VTYxa2I1TkMyMGJQbXBya0tUM1Npd0FQSVIyL0k3?=
 =?utf-8?B?dGNIN2tDUlhueDZ3SWZmSTd4K3dQMG1rY2Z1bytLMlVscjcrbHhRU0JiQk1T?=
 =?utf-8?B?aUNxTDdMcVArWjNiWTFxdU1BTkgyNmJCQ3ZqUVZXeFYvZkxFR1hjR3YxcVZp?=
 =?utf-8?B?VXVMWlI2Vy9tMkE2ejVjVWQ4ZTc5ckN5aXdrTENUbjEzNHdsZUlrcjFZNnNv?=
 =?utf-8?B?RUJXNDcxSVFBTEMvSWcrK21jV0ZCbS9MMklGSlRteERTSm1pZytPVmh5Y0V6?=
 =?utf-8?B?ZE56YWtjYWorWEJyRlNYeDN3d1ZGS2xXUmZPUEZqbFFibXY1WFFPNjZPYS9P?=
 =?utf-8?B?dW1YaVVBdm5nbU9TNFVaTnh2a3RlbzRRSXlCSzVyVEZpRmpmTTN5cStkQVBD?=
 =?utf-8?B?Wm83U2R1UDFPcENOUVhFY3U2U05vb201Z3loc3BLODJwK3k4cFEwTzVzSUZo?=
 =?utf-8?B?Ulo2Zm1VQW5kUGN2aU9GMUVhNXBRTklSRHp2eXJibHNTRHhpTkp2bDFIbzRu?=
 =?utf-8?B?T1o0d0wxcUkwL2I2ME9pZno2eFJZTlQ5ZkZzanhMdkRnbnFncGx4aDlEVHIw?=
 =?utf-8?B?TEVOZ2dYNVFRVmdONVh3ZVpEQlFhQ01TYjF2MVRqRnVqeFJ5OWxRaTkvNEQ2?=
 =?utf-8?B?U1VtU0ZtMDJaU2Q2OC9tNEEycUxmTkFOaDRvckhZY0pzdk1tRnNkemtPVDdW?=
 =?utf-8?B?Zk1MeHgyRTQyQXJuV2dUSHc0RzVrK0RSczcvSi9wVUVRMnJSSFBVRzZCayt4?=
 =?utf-8?B?SXVEaGtBdTREYjBJYWtTOEFBT01BdFgwa05FMUVoVFhRTG8xZEFNenM0OEhN?=
 =?utf-8?B?N1JvVHZIdXl3VlI1STc0N0dUS3dKOUV2a0J5UzNSc2E2OHJjN2JzM0xneEdG?=
 =?utf-8?B?NXlZcVVEaHk5aGlhaTVzbzdLTWVIZFhxaytZSzNscDlxdEdFMkxEcFJSYTQz?=
 =?utf-8?B?Y2F1cU1UUGJzZWw3VGFMUTNyb2dsWkx3NDJQNXZkWk9UUE1BckdJcjhFU1VB?=
 =?utf-8?B?aExHRDhDRmExTm9JaVQrWnBiNW93aTdHdE1FejVrWUFpYmVoRVBYbnJ0aEkx?=
 =?utf-8?B?bGhZdTljck54eXFtelo1R0piamZuMFlRWmZDY3lUUWJ1UW1ZWE9UNTV4Zit2?=
 =?utf-8?B?VUdiSVpGRkFhUndnT2VlbFZuNTZjTzMxenlDRmF3dnBPNEpIcnR3ZzY2dzFw?=
 =?utf-8?B?V0FSeXZMYTZJb2JUdmppdmtKQmdFODBxV3V1T243cjBYYmtZS2ZDVnA1OWVC?=
 =?utf-8?B?MFp4ZzJCYkg0ZDM2dUNxTGRpbEtwTG1qVjhXNU52VnN5dVFjU1kxbWdkZDBv?=
 =?utf-8?B?T3ZXU3NFZm5ucEU3THRXWnlNS1VBQVdvTnV3Sk15dGdYMXR1OWFVYk1aRmpw?=
 =?utf-8?B?WjVhMU54UjZoQUo4alNuYjJLMVBpQXRVZTExOUMvY0VSeTVrUUpmc2J1NGxv?=
 =?utf-8?B?QnJ5RmFwZmJRdWk4L1o2ZkszTWdjNFhiT3IrU1E3UTRTRTA3WXBDQ1IwemFT?=
 =?utf-8?B?dE1kZm9La2FwTWh1UHRTTjR0dEg0RURRM09BdVE0SHNqaFF3VDhrTk03YTY5?=
 =?utf-8?B?UVhJY2xEbWp1S1o2OVNwNVEzVVMxWDNlZEhtVmdaaDdWazZKV05UOEwzNXR2?=
 =?utf-8?B?WWY3VGVGcmY3STl2Z0NibGduY0Rod3d5SzlYUmNrTnR3c0pKeVBWNklGMWZM?=
 =?utf-8?B?b3pkRnBwcGdZMGdiOTliNWR4bDVJS2VwTm1WdHVOQlhUZEIwaUlKZTZ2Nnlx?=
 =?utf-8?B?dVozeGFYQ2NzYzBJRFFaMWF1RHZ6VXlHNFh2R1lqOVJWN29ZTWZwdlR2Ymp2?=
 =?utf-8?B?ZjBnYWVOWDRhdFhoa3hteDB6eW4rVFc3ekJBbzM3amNlREcyRnJBQ0FuV3B2?=
 =?utf-8?Q?+JjxrTi2kqL/CAuXJNaKIGjKU?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	yXnEo8HUsO2LKv6/ORv7tLpZEjRjdlJYCz5AERFPb9op7AB6bP/nJ1wjAzxLL3cfCFVHHRftvH3IXh9e+w5U+eAN6saLxBefZg0qMvYf8bCpNcnMAwcwDXibpToKBpmxfBDR4Ztv+lb7oEkZX23ENAxdxKca6uAShTcVRDQp4aiaY5qw2rRk+i+dor5O9LfWScMhbyjAnHh+23hKuoNYPeDiz8vVVFxtPKAucRmbXkS84Jh2WMrqUmABXbhKUeRGf4++G+S1OcZGws3VGVBC1pnzWEP67MuXLj1pzunRpfJGBZgKiW0NXB+GReBc+KLZdZfqPx99EIebFCf+mO2Yl1iIVIqFqKblNv9WqlfKT1+51uD/D+J1edQO+ILEYD/1MfaIHhp6VM8OFyWbZjMXTRd5z4l8Jf0oBi2BtuyfPGuM1KcyM4xYG5hanWJjMWWAMeGEYcfGm9K1SvsmhQaIen2nRL7NctmBE+69q2tgVZnOr0gUdqXbq2YpNBhNBpXVKCyuQnlElXEyVNjJAr1Qmo7sxdMouK2tYJSNYM/Fb+cD9OQdz4uBZTscCvE/vXyODaRneyYcL0fL1Ib0q0fUgJ+t9TlhwYQfBe6H8HwCGibcvUyLjs9UBh4XzB4bR470AXqqujrIDJauXNi3Ei5wXE6d3+uXBEdUdFDh9uB1hzOCEaKrNcdp9EUixQeIRQ3PhpgzxpWatrRD7clkNeWS7eXXQq83Gsw0wZuMwyoGXEx8Vy5ltN6206BJ4qVpI685Ar31bL6ymYUVMkgZPMWw6aFH9MRe3hENrsH97fqIBDQhCF+u0e2csA5ZDXqUEoUg1dsngw5mOCGOYctTDjdhsQ==
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: e072c405-261f-4b05-908e-08dbc33dd086
X-MS-Exchange-CrossTenant-AuthSource: MW4PR03MB6428.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Oct 2023 11:50:46.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: QoK2BxZochoU70+uI9O95WWAO+hf4U1ESeUv2I/CJDJf5fMbRtfhdwQd0HrCZPnV0/yns0jhNGQcyqNQw0TZWA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY5PR03MB5217

On Thu, Sep 28, 2023 at 02:28:11PM -0400, Stewart Hildebrand wrote:
> 
> 
> 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.:

NO, I don't think so, as then Xen state would get out of sync with the
hardware state.  I think just disabling memory and IO decoding at
init_bars() for devices assigned to domUs should be fine for the time
being.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Mon Oct 02 12:27:43 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 12:27:43 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611486.951034 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnI1I-00057u-Po; Mon, 02 Oct 2023 12:27:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611486.951034; Mon, 02 Oct 2023 12:27: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 1qnI1I-00057n-Lt; Mon, 02 Oct 2023 12:27:28 +0000
Received: by outflank-mailman (input) for mailman id 611486;
 Mon, 02 Oct 2023 12: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=qnrB=FQ=csgroup.eu=christophe.leroy@srs-se1.protection.inumbo.net>)
 id 1qnI1H-00057h-E5
 for xen-devel@lists.xenproject.org; Mon, 02 Oct 2023 12:27:27 +0000
Received: from FRA01-PR2-obe.outbound.protection.outlook.com
 (mail-pr2fra01on20624.outbound.protection.outlook.com
 [2a01:111:f400:7e18::624])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 0af5e541-611f-11ee-878e-cb3800f73035;
 Mon, 02 Oct 2023 14:27:25 +0200 (CEST)
Received: from MRZP264MB2988.FRAP264.PROD.OUTLOOK.COM (2603:10a6:501:31::15)
 by MR1P264MB2369.FRAP264.PROD.OUTLOOK.COM (2603:10a6:501:32::6) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.26; Mon, 2 Oct
 2023 12:27:21 +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; Mon, 2 Oct 2023
 12:27: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: 0af5e541-611f-11ee-878e-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=K468opVNlUwqY6UR6Lqqz2jNCrI38YRjrYOQemQJm/qFWf2lqPffAVlD1aGbmgmd/nlFwie5l8LT8FTHAT21zmn6jEorlyEk4DtrbikpIqf2eOKjsRmLYTGEa9aTgVe+EQ6FkAt2WOYBWX8C/fPgRcNfPzN7sK4nBVm9+2JU1hESft9vTfMmoiJLz4j1SeE79kbaFIUS0YPiUmdicrnNDsijd6rg5nh3KCetZqGLE5NExcYGwC6J5nVEeuj2TAPdkourIcoL5JRJVEI1gAmtNVzXeeEBN79Mu3gtp5uIJRrFyvjcm3q0o89zYfv0jVgWnNtKFuq8KoWd0Af4xCrsMA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=fbgz8OdxAWPdF+1YGs+Yza2ughtEy+fxhIH5BTbbJm0=;
 b=EOtgD0yyZz15hFaKtu7DuOFC46YVDkzefRHeFWLi5LFLEtQVDc56Rn5eetEYxjZXZF2sAAso1IkwOiKnj+LadcZqDByzGE0NwGgDzRv+ffq4YgsIzOTQLoe1dUhMRE9OnPNxsMp/MHzvsGt32kwwREW+7yzh4fvynSb8DnDQ51RrAU+JiO8BSzW2KCPgJGbH5J3thr3IjSoU1uiK19mPgoJcH5BZx7teMMCyjGE0x1sjwQ/WxtWXI3ekcpZX55XpcK2Z2V/zPkqQD2hGH8LXO0MAQ1jmpWn/vVHZ11QPmFreIXqK5bUHTwq3RYy+t2vF9vMUw2L1Aul+OBkA8hdfGA==
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=fbgz8OdxAWPdF+1YGs+Yza2ughtEy+fxhIH5BTbbJm0=;
 b=lZCc29gE3RSVqRvXB3oKuq55wnmrCGYXMLSpVlidjQRPOXS+a6qxuntbap1imSlPJaeZH8X/hwi74IxKIH04DgT5dBFZ/M5VSt2voTGvojsUfiMutk04I7tVl5SBOaN2xjK5GwKsDFoTmNWAOFX4CLPjD2nqyFn/WOXNrYc+QDFa3FDum+3E/g3c6DtYCOdHZ4aeVINzzBIs4o1riSNlht4g+hGy7IQi2GV0jN2xeBggHF4eCV8kAU1drno3v7oGoqKitjHXL2fXYvaHOCR03pCfvwew9yGd+TBVN8LSwISMVEerIO4RIsyGSJY1fGpe/Y/So9iuugz9V9d8u25Aew==
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 v2 00/15] sysctl: Remove sentinel elements from drivers
Thread-Topic: [PATCH v2 00/15] sysctl: Remove sentinel elements from drivers
Thread-Index: AQHZ9Q46K2udYRPeV0+Jw2QYczpJQ7A2bXCA
Date: Mon, 2 Oct 2023 12:27:18 +0000
Message-ID: <64fd22df-616e-9f5a-26fb-44c4b3423b0c@csgroup.eu>
References:
 <20231002-jag-sysctl_remove_empty_elem_drivers-v2-0-02dd0d46f71e@samsung.com>
In-Reply-To:
 <20231002-jag-sysctl_remove_empty_elem_drivers-v2-0-02dd0d46f71e@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_|MR1P264MB2369:EE_
x-ms-office365-filtering-correlation-id: b16b0448-66b0-477d-64cd-08dbc342eb67
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info:
 TMrXloKz1LdC4d0mUb/UhtHngRFJ1Iu21sVBTIQobhAEcCiodNqsZB/k2NEZ0c933q2ZkuuKKVEHmCcjW48qy2A0QPLMqwTr0oISPYepQfa0FzA9IY8E1mUletyQxuEPPPdUSXnJiFENsld5gU2DNbMqKaSGiHEMQlkTKGRh2rQMXGVZfpIFr9I6lBfuHIeIYR72R0PzEKB5GAm+9ICf41Cc0wKA02MOLSZ5r3C73bmeWL4s+jWU75c/WH+4E0vFAQND9hzg9N8iY7DiaUBqhRQ7PwWt43iErOLDnmHqcj7I6/KUAGzCUGtfNm4MyGCQYnbuNYJU+TMcgXFU7khAaOqySyeckKDwP0pWZqzlfcAYchfn7pi31nxNYTaMJkf1CsWsXTe2qIyTKXYPCdV+W8oa4vNzTTYiRgYrPbV+yV0ojwOpdrOhhV79yMcz/ukFmCdtD8Eq+AbX/Ht2fk06oHZAWMqSqYKmra8q7nKWUKIx8JL6vG/iFAb2lFCxxY3gGAfR4ObZc78Gpb1HjRDCew3IJkLFqyGXxdFKIxfV77c2M72GchkY4uZ/mvk+CbfyhkEYczgDV5FgBj35h8Lxq4vSuq+piNhTUtcs1Gwg6t1O4t488WIfEvK/bTUO2XPPaa68RMMS4w/j8wny5qQLFLBrCtDmUkMIRBHe2fMYvQzB1qOy4lnvYnN0icqEuOtk
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)(376002)(346002)(366004)(396003)(136003)(39850400004)(230922051799003)(451199024)(1800799009)(64100799003)(186009)(6506007)(6512007)(2616005)(83380400001)(7416002)(71200400001)(478600001)(44832011)(966005)(8676002)(2906002)(30864003)(7406005)(66574015)(66946007)(91956017)(66556008)(54906003)(5660300002)(110136005)(66446008)(76116006)(41300700001)(26005)(8936002)(66476007)(921005)(316002)(64756008)(38100700002)(86362001)(4326008)(38070700005)(7366002)(36756003)(31696002)(122000001)(6486002)(31686004)(45980500001)(43740500002);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0:
 =?utf-8?B?aFR1RldYYkpyNWVvV2dGWkZETm43cDBTY01PZjliM3JlUGxieWRUaE93QmJR?=
 =?utf-8?B?cklHdW5qbGVOVWV4VlUwbXZRUjFmSEtLR3Z0bjFsQ21wb2RpMlNLN1gwZDVv?=
 =?utf-8?B?YUhOSVhvM21CVFRxWTBXTFhVK0F1N1hwaERYaStUdHI3VDdwWTZXZXRWNVJZ?=
 =?utf-8?B?Y3ZuQndzVEdXbW5HNlVScE1kRit6Um5XWnpwZCtjVVhaa3loSGN1eDZYK2pl?=
 =?utf-8?B?bENtbTlYYnB5Zm5QamltUXRreWI3VHJpNFhjUFg3SGhQWHBIaEZjR2xnbVJv?=
 =?utf-8?B?b2V4UGV6SFIwRG9JcGE1citGV2F1dUx6eG1BOGUxcmd3UGFrRVpHSjNaR0Zz?=
 =?utf-8?B?QW1td04xM21PYzU0WnA1R2FrczV6T3lVZkNJMXdwY0tPRThnWWNsREp4V0Za?=
 =?utf-8?B?SVVoMjBYQXNSemNMMmN0aWszb2VCcE1IQTBGZW9CY1dSaVlNMVVVS1Q1Rm94?=
 =?utf-8?B?YnBRbC82UDRlSUJsaldnRW5UTU1yeG83NWNiOXV3MnVBVk12RkdkV1hxWWF0?=
 =?utf-8?B?cDVtNUJlZ1ljTmlwWWY3RVBUeTR1SDhuZjRCdTFiUEc0KzQyNEZmS0JSdDdm?=
 =?utf-8?B?aERzUTc4TCsrdElERFo4eTEza3dtWHFkQ3owWGs4eGoyOU5Gb1grTlA3aGND?=
 =?utf-8?B?VCswUWdwSjhZU3ZJZG5kV1pKL0VmTUtjV0dnOXdSZ2RjU25xVU9NRGU3bWxz?=
 =?utf-8?B?WEI5b1AxajhUN01oRGVoelJSbGYwUTdKbUcvMldPZkdBcHk1WCt3c2dMM1Rp?=
 =?utf-8?B?WStZdXU4dXZXSG10TmlmdEVWMDRuYjI1aXlWT2NvWE42QmxGeUNHbkJzQ252?=
 =?utf-8?B?dUwwTGZvK2dmMlpBWGZ2MW9wQmJpOTJqS2JOZG52MmRqanhsZDhmTFpPdTNM?=
 =?utf-8?B?cmgrSWdGeDVIWGlTQ0FoRndKU1Mwa0kxQ3BMcDRQQzMybnYzb09tNEhFMFh0?=
 =?utf-8?B?bzJ1VXpqZXdhSy8zbWxUSWhMUmlrYmdkMTBJRVRxYjZEdlg1eS9nZnRrQktD?=
 =?utf-8?B?bEJ3SHNOcE04Vzc1Ymgvd1hmaDBVQktmdytKUE5XSmV3M3hjUURmNXJacGxT?=
 =?utf-8?B?bzlaWHhqc0EvOHJ6dzkxbjM2UDFweHJ2bHVaY0dwbC9LYitJRHowWE9Db0k3?=
 =?utf-8?B?T3V4OTlIclU4UkxjRGxkNURVTU1RM0Eva1V6bW0yVUNBeXpDUjJiZlcxc2ow?=
 =?utf-8?B?YUdPay9ZTDEySE1qeUx0NG00SmRiQVhkUVFWKzJkUldvWVVWUkpvVFNUdWU3?=
 =?utf-8?B?Y1AvaEtza1BCZHRwRnQ0VHFRMHp2dUk5ZWdUcDQ3UENBMEF6YnpqcTgwS3Y4?=
 =?utf-8?B?cGNiZHdiK3lYTUhqcHNrUGlRSlJGRklpemRiZ2FOeHJCVUFsTmxBamQ0MXFz?=
 =?utf-8?B?OWFpRkdMYWwxZ1hMVWZzQVlqaVNVbmhKWi9MeFhMYm1Zd3RoOWJwdzcweWl0?=
 =?utf-8?B?cXBpWEsrUjc2cEl5WDhTOGJYQmxOSk10MTdyb1hnUjEzRzRrVjIwZ0tDRk1S?=
 =?utf-8?B?VkJFa09xTG9NMHFQdGkyb29May9nR2l0OXZHeGFFdHVtZWw5b3NNaGVkRm5R?=
 =?utf-8?B?ckpMSzNsb3RCcmd6NkNQL1RKOWpLdFhyaFhBdjdsSUxGQjNlYkJ2K2FabmxE?=
 =?utf-8?B?dUljR2I2SzVaS0NlL1VLNnJXMG41ZHBuOE9nWWlyTUJ5ZjcyQ1BaQzQ4S3NX?=
 =?utf-8?B?UUVpQStwWnJwWEJtaUFqckZ0VWQ4dWZQMmk2TGxYZ3VDQXo2blFKc2pEbFps?=
 =?utf-8?B?SlpxdUtLalRNdStQaldvLzRKQmRzK3FHUitUWi9mL3kyQnV0QWQ1Qm1qemRI?=
 =?utf-8?B?UnI2ZUxkYWRmL3AwQTJtL3FxM3B1aDUxRE5ONzNUS1VVdzZYK2s3UlRsd2J0?=
 =?utf-8?B?RkM2WHpjK3dFUEJZRkxkUG9sWDFLY2t4VVN2QktWK3NzTmgxR1NFODBmTW4w?=
 =?utf-8?B?TnhVUGhKN20vd0pqSmdUWHJDdDlTQkpMZXMxQkg1b3laanh3SXZJVTU0Z0pn?=
 =?utf-8?B?Y1dYYW1OQzh3OVVlVE5ia1Y5OWdqWmpBeUsxVXR1OGdIa0JnenZjT1o1cmh3?=
 =?utf-8?B?cG9zSVk4THZrSjZpTkE5aGJUeXgwUFd3eHo5d1NvNUZxa1FQUkFHb1VPVEpK?=
 =?utf-8?Q?zDN/3YIyOgB/yJcfuzMYxCSZP?=
Content-Type: text/plain; charset="utf-8"
Content-ID: <D43C9CB8D267CA49A966916B7C91DF52@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: b16b0448-66b0-477d-64cd-08dbc342eb67
X-MS-Exchange-CrossTenant-originalarrivaltime: 02 Oct 2023 12:27:18.7741
 (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: bIyCvhYQ2nrnRrKHrN/A+Krr7N6rAjWqkej6kBJmq3kPUTkmJcKYETZ6fH5WRFDWNcFjuSDQh+d5akMGs/j8toBMCgSVqm+FQ6/myb+WP1Q=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: MR1P264MB2369

DQoNCkxlIDAyLzEwLzIwMjMgw6AgMTA6NTUsIEpvZWwgR3JhbmFkb3MgdmlhIEI0IFJlbGF5IGEg
w6ljcml0wqA6DQo+IEZyb206IEpvZWwgR3JhbmFkb3MgPGouZ3JhbmFkb3NAc2Ftc3VuZy5jb20+
DQo+IA0KPiBXaGF0Pw0KPiBUaGVzZSBjb21taXRzIHJlbW92ZSB0aGUgc2VudGluZWwgZWxlbWVu
dCAobGFzdCBlbXB0eSBlbGVtZW50KSBmcm9tIHRoZQ0KPiBzeXNjdGwgYXJyYXlzIG9mIGFsbCB0
aGUgZmlsZXMgdW5kZXIgdGhlICJkcml2ZXJzLyIgZGlyZWN0b3J5IHRoYXQgdXNlIGENCj4gc3lz
Y3RsIGFycmF5IGZvciByZWdpc3RyYXRpb24uIFRoZSBtZXJnaW5nIG9mIHRoZSBwcmVwYXJhdGlv
biBwYXRjaGVzDQo+IChpbiBodHRwczovL2xvcmUua2VybmVsLm9yZy9hbGwvWk81WXg1SkZvZ0dp
JTJGY0JvQGJvbWJhZGlsLmluZnJhZGVhZC5vcmcvKQ0KPiB0byBtYWlubGluZSBhbGxvd3MgdXMg
dG8ganVzdCByZW1vdmUgc2VudGluZWwgZWxlbWVudHMgd2l0aG91dCBjaGFuZ2luZw0KPiBiZWhh
dmlvciAobW9yZSBpbmZvIGhlcmUgWzFdKS4NCj4gDQo+IFRoZXNlIGNvbW1pdHMgYXJlIHBhcnQg
b2YgYSBiaWdnZXIgc2V0IChoZXJlDQo+IGh0dHBzOi8vZ2l0aHViLmNvbS9Kb2VsZ3JhbmFkb3Mv
bGludXgvdHJlZS90YWcvc3lzY3RsX3JlbW92ZV9lbXB0eV9lbGVtX1Y0KQ0KPiB0aGF0IHJlbW92
ZSB0aGUgY3RsX3RhYmxlIHNlbnRpbmVsLiBNYWtlIHRoZSByZXZpZXcgcHJvY2VzcyBlYXNpZXIg
YnkNCj4gY2h1bmtpbmcgdGhlIGNvbW1pdHMgaW50byBtYW5hZ2VhYmxlIHBpZWNlcy4gRWFjaCBj
aHVuayBjYW4gYmUgcmV2aWV3ZWQNCj4gc2VwYXJhdGVseSB3aXRob3V0IG5vaXNlIGZyb20gcGFy
YWxsZWwgc2V0cy4NCj4gDQo+IE5vdyB0aGF0IHRoZSBhcmNoaXRlY3R1cmUgY2h1bmsgaGFzIGJl
ZW4gbW9zdGx5IHJldmlld2VkIFs2XSwgd2Ugc2VuZA0KPiB0aGUgImRyaXZlcnMvIiBkaXJlY3Rv
cnkuIE9uY2UgdGhpcyBvbmUgaXMgZG9uZSwgaXQgd2lsbCBiZSBmb2xsd2VkIGJ5DQo+ICJmcy8q
IiwgImtlcm5lbC8qIiwgIm5ldC8qIiBhbmQgbWlzY2VsbGFuZW91cy4gVGhlIGZpbmFsIHNldCB3
aWxsIHJlbW92ZQ0KPiB0aGUgdW5uZWVkZWQgY2hlY2sgZm9yIC0+cHJvY25hbWUgPT0gTlVMTC4N
Cj4gDQo+IFdoeT8NCj4gQnkgcmVtb3ZpbmcgdGhlIHN5c2N0bCBzZW50aW5lbCBlbGVtZW50cyB3
ZSBhdm9pZCBrZXJuZWwgYmxvYXQgYXMNCj4gY3RsX3RhYmxlIGFycmF5cyBnZXQgbW92ZWQgb3V0
IG9mIGtlcm5lbC9zeXNjdGwuYyBpbnRvIHRoZWlyIG93bg0KPiByZXNwZWN0aXZlIHN1YnN5c3Rl
bXMuIFRoaXMgbW92ZSB3YXMgc3RhcnRlZCBsb25nIGFnbyB0byBhdm9pZCBtZXJnZQ0KPiBjb25m
bGljdHM7IHRoZSBzZW50aW5lbCByZW1vdmFsIGJpdCBjYW1lIGFmdGVyIE1hdGhldyBXaWxjb3gg
c3VnZ2VzdGVkDQo+IGl0IHRvIGF2b2lkIGJsb2F0aW5nIHRoZSBrZXJuZWwgYnkgb25lIGVsZW1l
bnQgYXMgYXJyYXlzIG1vdmVkIG91dC4gVGhpcw0KPiBwYXRjaHNldCB3aWxsIHJlZHVjZSB0aGUg
b3ZlcmFsbCBidWlsZCB0aW1lIHNpemUgb2YgdGhlIGtlcm5lbCBhbmQgcnVuDQo+IHRpbWUgbWVt
b3J5IGJsb2F0IGJ5IGFib3V0IH42NCBieXRlcyBwZXIgZGVjbGFyZWQgY3RsX3RhYmxlIGFycmF5
LiBJDQo+IGhhdmUgY29uc29saWRhdGVkIHNvbWUgbGlua3MgdGhhdCBzaGVkIGxpZ2h0IG9uIHRo
ZSBoaXN0b3J5IG9mIHRoaXMNCj4gZWZmb3J0IFsyXS4NCj4gDQo+IFRlc3Rpbmc6DQo+ICogUmFu
IHN5c2N0bCBzZWxmdGVzdHMgKC4vdG9vbHMvdGVzdGluZy9zZWxmdGVzdHMvc3lzY3RsL3N5c2N0
bC5zaCkNCj4gKiBSYW4gdGhpcyB0aHJvdWdoIDAtZGF5IHdpdGggbm8gZXJyb3JzIG9yIHdhcm5p
bmdzDQo+IA0KPiBTaXplIHNhdmluZyBhZnRlciByZW1vdmluZyBhbGwgc2VudGluZWxzOg0KPiAg
ICBUaGVzZSBhcmUgdGhlIGJ5dGVzIHRoYXQgd2Ugc2F2ZSBhZnRlciByZW1vdmluZyBhbGwgdGhl
IHNlbnRpbmVscw0KPiAgICAodGhpcyBwbHVzIGFsbCB0aGUgb3RoZXIgY2h1bmtzKS4gSSBpbmNs
dWRlZCB0aGVtIHRvIGdldCBhbiBpZGVhIG9mDQo+ICAgIGhvdyBtdWNoIG1lbW9yeSB3ZSBhcmUg
dGFsa2luZyBhYm91dC4NCj4gICAgICAqIGJsb2F0LW8tbWV0ZXI6DQo+ICAgICAgICAgIC0gVGhl
ICJ5ZXNhbGwiIGNvbmZpZ3VyYXRpb24gcmVzdWx0cyBzYXZlIDkxNTggYnl0ZXMNCj4gICAgICAg
ICAgICBodHRwczovL2xvcmUua2VybmVsLm9yZy9hbGwvMjAyMzA2MjEwOTEwMDAuNDI0ODQzLTEt
ai5ncmFuYWRvc0BzYW1zdW5nLmNvbS8NCj4gICAgICAgICAgLSBUaGUgInRpbnkiIGNvbmZpZyAr
IENPTkZJR19TWVNDVEwgc2F2ZSAxMjE1IGJ5dGVzDQo+ICAgICAgICAgICAgaHR0cHM6Ly9sb3Jl
Lmtlcm5lbC5vcmcvYWxsLzIwMjMwODA5MTA1MDA2LjExOTgxNjUtMS1qLmdyYW5hZG9zQHNhbXN1
bmcuY29tLw0KPiAgICAgICogbWVtb3J5IHVzYWdlOg0KPiAgICAgICAgICBJbiBtZW1vcnkgc2F2
aW5ncyBhcmUgbWVhc3VyZWQgdG8gYmUgNzI5NiBieXRlcy4gKGhlcmUgaXMgaG93IHRvDQo+ICAg
ICAgICAgIG1lYXN1cmUgWzNdKQ0KPiANCj4gU2l6ZSBzYXZpbmcgYWZ0ZXIgdGhpcyBwYXRjaHNl
dDoNCj4gICAgICAqIGJsb2F0LW8tbWV0ZXINCj4gICAgICAgICAgLSBUaGUgInllc2FsbCIgY29u
ZmlnIHNhdmVzIDI0MzIgYnl0ZXMgWzRdDQo+ICAgICAgICAgIC0gVGhlICJ0aW55IiBjb25maWcg
c2F2ZXMgNjQgYnl0ZXMgWzVdDQo+ICAgICAgKiBtZW1vcnkgdXNhZ2U6DQo+ICAgICAgICAgIElu
IHRoaXMgY2FzZSB0aGVyZSB3ZXJlIG5vIGJ5dGVzIHNhdmVkIGJlY2F1c2UgSSBkbyBub3QgaGF2
ZSBhbnkNCj4gICAgICAgICAgb2YgdGhlIGRyaXZlcnMgaW4gdGhlIHBhdGNoLiBUbyBtZWFzdXJl
IGl0IGNvbW1lbnQgdGhlIHByaW50ayBpbg0KPiAgICAgICAgICBgbmV3X2RpcmAgYW5kIHVuY29t
bWVudCB0aGUgaWYgY29uZGl0aW9uYWwgaW4gYG5ld19saW5rc2AgWzNdLg0KPiANCj4gLS0tDQo+
IENoYW5nZXMgaW4gdjI6DQo+IC0gTGVmdCB0aGUgZGFuZ2xpbmcgY29tbWEgaW4gdGhlIGN0bF90
YWJsZSBhcnJheXMuDQo+IC0gTGluayB0byB2MTogaHR0cHM6Ly9sb3JlLmtlcm5lbC5vcmcvci8y
MDIzMDkyOC1qYWctc3lzY3RsX3JlbW92ZV9lbXB0eV9lbGVtX2RyaXZlcnMtdjEtMC1lNTkxMjBm
Y2E5ZjlAc2Ftc3VuZy5jb20NCj4gDQo+IENvbW1lbnRzL2ZlZWRiYWNrIGdyZWF0bHkgYXBwcmVj
aWF0ZWQNCg0KU2FtZSBwcm9ibGVtIG9uIHBvd2VycGMgQ0kgdGVzdHMsIGFsbCBib290IHRhcmdl
dCBmYWlsZWQsIG1vc3Qgb2YgdGhlbSANCndpdGggc2ltaWxhciBPT1BTLCBzZWUgDQpodHRwczov
L3BhdGNod29yay5vemxhYnMub3JnL3Byb2plY3QvbGludXhwcGMtZGV2L3BhdGNoLzIwMjMxMDAy
LWphZy1zeXNjdGxfcmVtb3ZlX2VtcHR5X2VsZW1fZHJpdmVycy12Mi0xNS0wMmRkMGQ0NmY3MWVA
c2Ftc3VuZy5jb20vDQoNCldoYXQgaXMgc3RyYW5nZSBpcyB0aGF0IEkgcHVzaGVkIHlvdXIgc2Vy
aWVzIGludG8gbXkgZ2l0aHViIGFjY291bnQsIGFuZCANCmdvdCBubyBmYWlsdXJlLCBzZWUgaHR0
cHM6Ly9naXRodWIuY29tL2NobGVyb3kvbGludXgvYWN0aW9ucy9ydW5zLzYzNzg5NTEyNzgNCg0K
Q2hyaXN0b3BoZQ0KDQo+IA0KPiBCZXN0DQo+IA0KPiBKb2VsDQo+IA0KPiBbMV0NCj4gV2UgYXJl
IGFibGUgdG8gcmVtb3ZlIGEgc2VudGluZWwgdGFibGUgd2l0aG91dCBiZWhhdmlvcmFsIGNoYW5n
ZSBieQ0KPiBpbnRyb2R1Y2luZyBhIHRhYmxlX3NpemUgYXJndW1lbnQgaW4gdGhlIHNhbWUgcGxh
Y2Ugd2hlcmUgcHJvY25hbWUgaXMNCj4gY2hlY2tlZCBmb3IgTlVMTC4gVGhlIGlkZWEgaXMgZm9y
IGl0IHRvIGtlZXAgc3RvcHBpbmcgd2hlbiBpdCBoaXRzDQo+IC0+cHJvY25hbWUgPT0gTlVMTCwg
d2hpbGUgdGhlIHNlbnRpbmVsIGlzIHN0aWxsIHByZXNlbnQuIEFuZCB3aGVuIHRoZQ0KPiBzZW50
aW5lbCBpcyByZW1vdmVkLCBpdCB3aWxsIHN0b3Agb24gdGhlIHRhYmxlX3NpemUuIFlvdSBjYW4g
Z28gdG8NCj4gKGh0dHBzOi8vbG9yZS5rZXJuZWwub3JnL2FsbC8yMDIzMDgwOTEwNTAwNi4xMTk4
MTY1LTEtai5ncmFuYWRvc0BzYW1zdW5nLmNvbS8pDQo+IGZvciBtb3JlIGluZm9ybWF0aW9uLg0K
PiANCj4gWzJdDQo+IExpbmtzIFJlbGF0ZWQgdG8gdGhlIGN0bF90YWJsZSBzZW50aW5lbCByZW1v
dmFsOg0KPiAqIEdvb2Qgc3VtbWFyeSBmcm9tIEx1aXMgc2VudCB3aXRoIHRoZSAicHVsbCByZXF1
ZXN0IiBmb3IgdGhlDQo+ICAgIHByZXBhcmF0aW9uIHBhdGNoZXMuDQo+ICAgIGh0dHBzOi8vbG9y
ZS5rZXJuZWwub3JnL2FsbC9aTzVZeDVKRm9nR2klMkZjQm9AYm9tYmFkaWwuaW5mcmFkZWFkLm9y
Zy8NCj4gKiBBbm90aGVyIHZlcnkgZ29vZCBzdW1tYXJ5IGZyb20gTHVpcy4NCj4gICAgaHR0cHM6
Ly9sb3JlLmtlcm5lbC5vcmcvYWxsL1pNRml6S0ZrVnhVRnRTcWFAYm9tYmFkaWwuaW5mcmFkZWFk
Lm9yZy8NCj4gKiBUaGlzIGlzIGEgcGF0Y2ggc2V0IHRoYXQgcmVwbGFjZXMgcmVnaXN0ZXJfc3lz
Y3RsX3RhYmxlIHdpdGggcmVnaXN0ZXJfc3lzY3RsDQo+ICAgIGh0dHBzOi8vbG9yZS5rZXJuZWwu
b3JnL2FsbC8yMDIzMDMwMjIwNDYxMi43ODIzODctMS1tY2dyb2ZAa2VybmVsLm9yZy8NCj4gKiBQ
YXRjaCBzZXQgdG8gZGVwcmVjYXRlIHJlZ2lzdGVyX3N5c2N0bF9wYXRocygpDQo+ICAgIGh0dHBz
Oi8vbG9yZS5rZXJuZWwub3JnL2FsbC8yMDIzMDMwMjIwMjgyNi43NzYyODYtMS1tY2dyb2ZAa2Vy
bmVsLm9yZy8NCj4gKiBIZXJlIHRoZXJlIGlzIGFuIGV4cGxpY2l0IGV4cGVjdGF0aW9uIGZvciB0
aGUgcmVtb3ZhbCBvZiB0aGUgc2VudGluZWwgZWxlbWVudC4NCj4gICAgaHR0cHM6Ly9sb3JlLmtl
cm5lbC5vcmcvYWxsLzIwMjMwMzIxMTMwOTA4LjY5NzItMS1mcmFuay5saUB2aXZvLmNvbQ0KPiAq
IFRoZSAiQVJSQVlfU0laRSIgYXBwcm9hY2ggd2FzIG1lbnRpb25lZCAocHJvcG9zZWQ/KSBpbiB0
aGlzIHRocmVhZA0KPiAgICBodHRwczovL2xvcmUua2VybmVsLm9yZy9hbGwvMjAyMjAyMjAwNjA2
MjYuMTU4ODUtMS10YW5nbWVuZ0B1bmlvbnRlY2guY29tDQo+IA0KPiBbM10NCj4gVG8gbWVhc3Vy
ZSB0aGUgaW4gbWVtb3J5IHNhdmluZ3MgYXBwbHkgdGhpcyBvbiB0b3Agb2YgdGhpcyBwYXRjaHNl
dC4NCj4gDQo+ICINCj4gZGlmZiAtLWdpdCBhL2ZzL3Byb2MvcHJvY19zeXNjdGwuYyBiL2ZzL3By
b2MvcHJvY19zeXNjdGwuYw0KPiBpbmRleCBjODg4NTRkZjBiNjIuLmUwMDczYTYyN2JhYyAxMDA2
NDQNCj4gLS0tIGEvZnMvcHJvYy9wcm9jX3N5c2N0bC5jDQo+ICsrKyBiL2ZzL3Byb2MvcHJvY19z
eXNjdGwuYw0KPiBAQCAtOTc2LDYgKzk3Niw4IEBAIHN0YXRpYyBzdHJ1Y3QgY3RsX2RpciAqbmV3
X2RpcihzdHJ1Y3QgY3RsX3RhYmxlX3NldCAqc2V0LA0KPiAgICAgICAgICB0YWJsZVswXS5wcm9j
bmFtZSA9IG5ld19uYW1lOw0KPiAgICAgICAgICB0YWJsZVswXS5tb2RlID0gU19JRkRJUnxTX0lS
VUdPfFNfSVhVR087DQo+ICAgICAgICAgIGluaXRfaGVhZGVyKCZuZXctPmhlYWRlciwgc2V0LT5k
aXIuaGVhZGVyLnJvb3QsIHNldCwgbm9kZSwgdGFibGUsIDEpOw0KPiArICAgICAgIC8vIENvdW50
cyBhZGRpdGlvbmFsIHNlbnRpbmVsIHVzZWQgZm9yIGVhY2ggbmV3IGRpci4NCj4gKyAgICAgICBw
cmludGsoIiVsZCBzeXNjdGwgc2F2ZWQgbWVtIGt6YWxsb2MgXG4iLCBzaXplb2Yoc3RydWN0IGN0
bF90YWJsZSkpOw0KPiANCj4gICAgICAgICAgcmV0dXJuIG5ldzsNCj4gICB9DQo+IEBAIC0xMTk5
LDYgKzEyMDEsOSBAQCBzdGF0aWMgc3RydWN0IGN0bF90YWJsZV9oZWFkZXIgKm5ld19saW5rcyhz
dHJ1Y3QgY3RsX2RpciAqZGlyLCBzdHJ1Y3QgY3RsX3RhYmxlXw0KPiAgICAgICAgICAgICAgICAg
IGxpbmtfbmFtZSArPSBsZW47DQo+ICAgICAgICAgICAgICAgICAgbGluaysrOw0KPiAgICAgICAg
ICB9DQo+ICsgICAgICAgLy8gQ291bnRzIGFkZGl0aW9uYWwgc2VudGluZWwgdXNlZCBmb3IgZWFj
aCBuZXcgcmVnaXN0cmF0aW9uDQo+ICsgICAgICAgLy9pZiAoKGhlYWQtPmN0bF90YWJsZSArIGhl
YWQtPmN0bF90YWJsZV9zaXplKS0+cHJvY25hbWUpDQo+ICsgICAgICAgICAgICAgICBwcmludGso
IiVsZCBzeXNjdGwgc2F2ZWQgbWVtIGt6YWxsb2MgXG4iLCBzaXplb2Yoc3RydWN0IGN0bF90YWJs
ZSkpOw0KPiAgICAgICAgICBpbml0X2hlYWRlcihsaW5rcywgZGlyLT5oZWFkZXIucm9vdCwgZGly
LT5oZWFkZXIuc2V0LCBub2RlLCBsaW5rX3RhYmxlLA0KPiAgICAgICAgICAgICAgICAgICAgICBo
ZWFkLT5jdGxfdGFibGVfc2l6ZSk7DQo+ICAgICAgICAgIGxpbmtzLT5ucmVnID0gbnJfZW50cmll
czsNCj4gIg0KPiBhbmQgdGhlbiBydW4gdGhlIGZvbGxvd2luZyBiYXNoIHNjcmlwdCBpbiB0aGUg
a2VybmVsOg0KPiANCj4gYWNjdW09MA0KPiBmb3IgbiBpbiAkKGRtZXNnIHwgZ3JlcCBremFsbG9j
IHwgYXdrICd7cHJpbnQgJDN9JykgOyBkbw0KPiAgICAgIGVjaG8gJG4NCj4gICAgICBhY2N1bT0k
KGNhbGMgIiRhY2N1bSArICRuIikNCj4gZG9uZQ0KPiBlY2hvICRhY2N1bQ0KPiANCj4gWzRdDQo+
IGFkZC9yZW1vdmU6IDAvMCBncm93L3NocmluazogMC8yMSB1cC9kb3duOiAwLy0yNDMyICgtMjQz
MikNCj4gRnVuY3Rpb24gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb2xkICAg
ICBuZXcgICBkZWx0YQ0KPiB4cGNfc3lzX3hwY19oYiAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAxOTIgICAgIDEyOCAgICAgLTY0DQo+IHhwY19zeXNfeHBjICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIDEyOCAgICAgIDY0ICAgICAtNjQNCj4gdnJmX3RhYmxlICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgMTI4ICAgICAgNjQgICAgIC02NA0KPiB1Y21hX2N0
bF90YWJsZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxMjggICAgICA2NCAgICAgLTY0
DQo+IHR0eV90YWJsZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDE5MiAgICAg
MTI4ICAgICAtNjQNCj4gc2dfc3lzY3RscyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgMTI4ICAgICAgNjQgICAgIC02NA0KPiBzY3NpX3RhYmxlICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAxMjggICAgICA2NCAgICAgLTY0DQo+IHJhbmRvbV90YWJsZSAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIDQ0OCAgICAgMzg0ICAgICAtNjQNCj4gcmFpZF90YWJs
ZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMTkyICAgICAxMjggICAgIC02NA0K
PiBvYV90YWJsZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxOTIgICAgIDEy
OCAgICAgLTY0DQo+IG1hY19oaWRfZmlsZXMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IDI1NiAgICAgMTkyICAgICAtNjQNCj4gaXdjbV9jdGxfdGFibGUgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgMTI4ICAgICAgNjQgICAgIC02NA0KPiBpcG1pX3RhYmxlICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAxMjggICAgICA2NCAgICAgLTY0DQo+IGh2X2N0bF90YWJs
ZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEyOCAgICAgIDY0ICAgICAtNjQNCj4g
aHBldF90YWJsZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMTI4ICAgICAgNjQg
ICAgIC02NA0KPiBmaXJtd2FyZV9jb25maWdfdGFibGUgICAgICAgICAgICAgICAgICAgICAgICAx
OTIgICAgIDEyOCAgICAgLTY0DQo+IGNkcm9tX3RhYmxlICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIDQ0OCAgICAgMzg0ICAgICAtNjQNCj4gYmFsbG9vbl90YWJsZSAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgMTI4ICAgICAgNjQgICAgIC02NA0KPiBwYXJwb3J0X3N5c2N0
bF90ZW1wbGF0ZSAgICAgICAgICAgICAgICAgICAgICA5MTIgICAgIDcyMCAgICAtMTkyDQo+IHBh
cnBvcnRfZGVmYXVsdF9zeXNjdGxfdGFibGUgICAgICAgICAgICAgICAgIDU4NCAgICAgMTM2ICAg
IC00NDgNCj4gcGFycG9ydF9kZXZpY2Vfc3lzY3RsX3RlbXBsYXRlICAgICAgICAgICAgICAgNzc2
ICAgICAxMzYgICAgLTY0MA0KPiBUb3RhbDogQmVmb3JlPTQyOTk0MDAzOCwgQWZ0ZXI9NDI5OTM3
NjA2LCBjaGcgLTAuMDAlDQo+IA0KPiBbNV0NCj4gYWRkL3JlbW92ZTogMC8wIGdyb3cvc2hyaW5r
OiAwLzEgdXAvZG93bjogMC8tNjQgKC02NCkNCj4gRnVuY3Rpb24gICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgb2xkICAgICBuZXcgICBkZWx0YQ0KPiByYW5kb21fdGFibGUgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICA0NDggICAgIDM4NCAgICAgLTY0DQo+IFRvdGFs
OiBCZWZvcmU9MTg4NTUyNywgQWZ0ZXI9MTg4NTQ2MywgY2hnIC0wLjAwJQ0KPiANCj4gWzZdIGh0
dHBzOi8vbG9yZS5rZXJuZWwub3JnL2FsbC8yMDIzMDkxMy1qYWctc3lzY3RsX3JlbW92ZV9lbXB0
eV9lbGVtX2FyY2gtdjItMC1kMWJkMTNhMjliYWVAc2Ftc3VuZy5jb20vDQo+IA0KPiBTaWduZWQt
b2ZmLWJ5OiBKb2VsIEdyYW5hZG9zIDxqLmdyYW5hZG9zQHNhbXN1bmcuY29tPg0KPiANCj4gVG86
IEx1aXMgQ2hhbWJlcmxhaW4gPG1jZ3JvZkBrZXJuZWwub3JnPg0KPiBUbzogd2lsbHlAaW5mcmFk
ZWFkLm9yZw0KPiBUbzogam9zaEBqb3NodHJpcGxldHQub3JnDQo+IFRvOiBLZWVzIENvb2sgPGtl
ZXNjb29rQGNocm9taXVtLm9yZz4NCj4gVG86IFBoaWxsaXAgUG90dGVyIDxwaGlsQHBoaWxwb3R0
ZXIuY28udWs+DQo+IFRvOiBDbGVtZW5zIExhZGlzY2ggPGNsZW1lbnNAbGFkaXNjaC5kZT4NCj4g
VG86IEFybmQgQmVyZ21hbm4gPGFybmRAYXJuZGIuZGU+DQo+IFRvOiBHcmVnIEtyb2FoLUhhcnRt
YW4gPGdyZWdraEBsaW51eGZvdW5kYXRpb24ub3JnPg0KPiBUbzogSnVlcmdlbiBHcm9zcyA8amdy
b3NzQHN1c2UuY29tPg0KPiBUbzogU3RlZmFubyBTdGFiZWxsaW5pIDxzc3RhYmVsbGluaUBrZXJu
ZWwub3JnPg0KPiBUbzogT2xla3NhbmRyIFR5c2hjaGVua28gPG9sZWtzYW5kcl90eXNoY2hlbmtv
QGVwYW0uY29tPg0KPiBUbzogSmlyaSBTbGFieSA8amlyaXNsYWJ5QGtlcm5lbC5vcmc+DQo+IFRv
OiAiSmFtZXMgRS5KLiBCb3R0b21sZXkiIDxqZWpiQGxpbnV4LmlibS5jb20+DQo+IFRvOiAiTWFy
dGluIEsuIFBldGVyc2VuIiA8bWFydGluLnBldGVyc2VuQG9yYWNsZS5jb20+DQo+IFRvOiBEb3Vn
IEdpbGJlcnQgPGRnaWxiZXJ0QGludGVybG9nLmNvbT4NCj4gVG86IFN1ZGlwIE11a2hlcmplZSA8
c3VkaXBtLm11a2hlcmplZUBnbWFpbC5jb20+DQo+IFRvOiBKYXNvbiBHdW50aG9ycGUgPGpnZ0B6
aWVwZS5jYT4NCj4gVG86IExlb24gUm9tYW5vdnNreSA8bGVvbkBrZXJuZWwub3JnPg0KPiBUbzog
Q29yZXkgTWlueWFyZCA8bWlueWFyZEBhY20ub3JnPg0KPiBUbzogVGhlb2RvcmUgVHMnbyA8dHl0
c29AbWl0LmVkdT4NCj4gVG86ICJKYXNvbiBBLiBEb25lbmZlbGQiIDxKYXNvbkB6eDJjNC5jb20+
DQo+IFRvOiBEYXZpZCBBaGVybiA8ZHNhaGVybkBrZXJuZWwub3JnPg0KPiBUbzogIkRhdmlkIFMu
IE1pbGxlciIgPGRhdmVtQGRhdmVtbG9mdC5uZXQ+DQo+IFRvOiBFcmljIER1bWF6ZXQgPGVkdW1h
emV0QGdvb2dsZS5jb20+DQo+IFRvOiBKYWt1YiBLaWNpbnNraSA8a3ViYUBrZXJuZWwub3JnPg0K
PiBUbzogUGFvbG8gQWJlbmkgPHBhYmVuaUByZWRoYXQuY29tPg0KPiBUbzogUm9iaW4gSG9sdCA8
cm9iaW5taG9sdEBnbWFpbC5jb20+DQo+IFRvOiBTdGV2ZSBXYWhsIDxzdGV2ZS53YWhsQGhwZS5j
b20+DQo+IFRvOiBSdXNzIFdlaWdodCA8cnVzc2VsbC5oLndlaWdodEBpbnRlbC5jb20+DQo+IFRv
OiAiUmFmYWVsIEouIFd5c29ja2kiIDxyYWZhZWxAa2VybmVsLm9yZz4NCj4gVG86IFNvbmcgTGl1
IDxzb25nQGtlcm5lbC5vcmc+DQo+IFRvOiAiSy4gWS4gU3Jpbml2YXNhbiIgPGt5c0BtaWNyb3Nv
ZnQuY29tPg0KPiBUbzogSGFpeWFuZyBaaGFuZyA8aGFpeWFuZ3pAbWljcm9zb2Z0LmNvbT4NCj4g
VG86IFdlaSBMaXUgPHdlaS5saXVAa2VybmVsLm9yZz4NCj4gVG86IERleHVhbiBDdWkgPGRlY3Vp
QG1pY3Jvc29mdC5jb20+DQo+IFRvOiBKYW5pIE5pa3VsYSA8amFuaS5uaWt1bGFAbGludXguaW50
ZWwuY29tPg0KPiBUbzogSm9vbmFzIExhaHRpbmVuIDxqb29uYXMubGFodGluZW5AbGludXguaW50
ZWwuY29tPg0KPiBUbzogUm9kcmlnbyBWaXZpIDxyb2RyaWdvLnZpdmlAaW50ZWwuY29tPg0KPiBU
bzogVHZydGtvIFVyc3VsaW4gPHR2cnRrby51cnN1bGluQGxpbnV4LmludGVsLmNvbT4NCj4gVG86
IERhdmlkIEFpcmxpZSA8YWlybGllZEBnbWFpbC5jb20+DQo+IFRvOiBEYW5pZWwgVmV0dGVyIDxk
YW5pZWxAZmZ3bGwuY2g+DQo+IENjOiBsaW51eC1rZXJuZWxAdmdlci5rZXJuZWwub3JnDQo+IENj
OiB4ZW4tZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcNCj4gQ2M6IGxpbnV4LXNlcmlhbEB2Z2Vy
Lmtlcm5lbC5vcmcNCj4gQ2M6IGxpbnV4LXNjc2lAdmdlci5rZXJuZWwub3JnDQo+IENjOiBsaW51
eHBwYy1kZXZAbGlzdHMub3psYWJzLm9yZw0KPiBDYzogbGludXgtcmRtYUB2Z2VyLmtlcm5lbC5v
cmcNCj4gQ2M6IG9wZW5pcG1pLWRldmVsb3BlckBsaXN0cy5zb3VyY2Vmb3JnZS5uZXQNCj4gQ2M6
IG5ldGRldkB2Z2VyLmtlcm5lbC5vcmcNCj4gQ2M6IGxpbnV4LXJhaWRAdmdlci5rZXJuZWwub3Jn
DQo+IENjOiBsaW51eC1oeXBlcnZAdmdlci5rZXJuZWwub3JnDQo+IENjOiBpbnRlbC1nZnhAbGlz
dHMuZnJlZWRlc2t0b3Aub3JnDQo+IENjOiBkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3Jn
DQo+IA0KPiAtLS0NCj4gDQo+IC0tLQ0KPiBKb2VsIEdyYW5hZG9zICgxNSk6DQo+ICAgICAgICBj
ZHJvbTogUmVtb3ZlIG5vdyBzdXBlcmZsdW91cyBzZW50aW5lbCBlbGVtZW50IGZyb20gY3RsX3Rh
YmxlIGFycmF5DQo+ICAgICAgICBocGV0OiBSZW1vdmUgbm93IHN1cGVyZmx1b3VzIHNlbnRpbmVs
IGVsZW1lbnQgZnJvbSBjdGxfdGFibGUgYXJyYXkNCj4gICAgICAgIHhlbjogUmVtb3ZlIG5vdyBz
dXBlcmZsdW91cyBzZW50aW5lbCBlbGVtZW50IGZyb20gY3RsX3RhYmxlIGFycmF5DQo+ICAgICAg
ICB0dHk6IFJlbW92ZSBub3cgc3VwZXJmbHVvdXMgc2VudGluZWwgZWxlbWVudCBmcm9tIGN0bF90
YWJsZSBhcnJheQ0KPiAgICAgICAgc2NzaTogUmVtb3ZlIG5vdyBzdXBlcmZsdW91cyBzZW50aW5l
bCBlbGVtZW50IGZyb20gY3RsX3RhYmxlIGFycmF5DQo+ICAgICAgICBwYXJwb3J0OiBSZW1vdmUg
dGhlIG5vdyBzdXBlcmZsdW91cyBzZW50aW5lbCBlbGVtZW50IGZyb20gY3RsX3RhYmxlIGFycmF5
DQo+ICAgICAgICBtYWNpbnRvc2g6IFJlbW92ZSB0aGUgbm93IHN1cGVyZmx1b3VzIHNlbnRpbmVs
IGVsZW1lbnQgZnJvbSBjdGxfdGFibGUgYXJyYXkNCj4gICAgICAgIGluZmluaWJhbmQ6IFJlbW92
ZSB0aGUgbm93IHN1cGVyZmx1b3VzIHNlbnRpbmVsIGVsZW1lbnQgZnJvbSBjdGxfdGFibGUgYXJy
YXkNCj4gICAgICAgIGNoYXItbWlzYzogUmVtb3ZlIHRoZSBub3cgc3VwZXJmbHVvdXMgc2VudGlu
ZWwgZWxlbWVudCBmcm9tIGN0bF90YWJsZSBhcnJheQ0KPiAgICAgICAgdnJmOiBSZW1vdmUgdGhl
IG5vdyBzdXBlcmZsdW91cyBzZW50aW5lbCBlbGVtZW50IGZyb20gY3RsX3RhYmxlIGFycmF5DQo+
ICAgICAgICBzZ2kteHA6IFJlbW92ZSB0aGUgbm93IHN1cGVyZmx1b3VzIHNlbnRpbmVsIGVsZW1l
bnQgZnJvbSBjdGxfdGFibGUgYXJyYXkNCj4gICAgICAgIGZ3IGxvYWRlcjogUmVtb3ZlIHRoZSBu
b3cgc3VwZXJmbHVvdXMgc2VudGluZWwgZWxlbWVudCBmcm9tIGN0bF90YWJsZSBhcnJheQ0KPiAg
ICAgICAgcmFpZDogUmVtb3ZlIG5vdyBzdXBlcmZsdW91cyBzZW50aW5lbCBlbGVtZW50IGZyb20g
Y3RsX3RhYmxlIGFycmF5DQo+ICAgICAgICBEcml2ZXJzOiBodjogUmVtb3ZlIG5vdyBzdXBlcmZs
dW91cyBzZW50aW5lbCBlbGVtZW50IGZyb20gY3RsX3RhYmxlIGFycmF5DQo+ICAgICAgICBpbnRl
bCBkcm06IFJlbW92ZSBub3cgc3VwZXJmbHVvdXMgc2VudGluZWwgZWxlbWVudCBmcm9tIGN0bF90
YWJsZSBhcnJheQ0KPiANCj4gICBkcml2ZXJzL2Jhc2UvZmlybXdhcmVfbG9hZGVyL2ZhbGxiYWNr
X3RhYmxlLmMgfCAgMSAtDQo+ICAgZHJpdmVycy9jZHJvbS9jZHJvbS5jICAgICAgICAgICAgICAg
ICAgICAgICAgIHwgIDEgLQ0KPiAgIGRyaXZlcnMvY2hhci9ocGV0LmMgICAgICAgICAgICAgICAg
ICAgICAgICAgICB8ICAxIC0NCj4gICBkcml2ZXJzL2NoYXIvaXBtaS9pcG1pX3Bvd2Vyb2ZmLmMg
ICAgICAgICAgICAgfCAgMSAtDQo+ICAgZHJpdmVycy9jaGFyL3JhbmRvbS5jICAgICAgICAgICAg
ICAgICAgICAgICAgIHwgIDEgLQ0KPiAgIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfcGVyZi5j
ICAgICAgICAgICAgICB8ICAxIC0NCj4gICBkcml2ZXJzL2h2L2h2X2NvbW1vbi5jICAgICAgICAg
ICAgICAgICAgICAgICAgfCAgMSAtDQo+ICAgZHJpdmVycy9pbmZpbmliYW5kL2NvcmUvaXdjbS5j
ICAgICAgICAgICAgICAgIHwgIDEgLQ0KPiAgIGRyaXZlcnMvaW5maW5pYmFuZC9jb3JlL3VjbWEu
YyAgICAgICAgICAgICAgICB8ICAxIC0NCj4gICBkcml2ZXJzL21hY2ludG9zaC9tYWNfaGlkLmMg
ICAgICAgICAgICAgICAgICAgfCAgMSAtDQo+ICAgZHJpdmVycy9tZC9tZC5jICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIHwgIDEgLQ0KPiAgIGRyaXZlcnMvbWlzYy9zZ2kteHAveHBjX21h
aW4uYyAgICAgICAgICAgICAgICB8ICAyIC0tDQo+ICAgZHJpdmVycy9uZXQvdnJmLmMgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIHwgIDEgLQ0KPiAgIGRyaXZlcnMvcGFycG9ydC9wcm9jZnMu
YyAgICAgICAgICAgICAgICAgICAgICB8IDI4ICsrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLQ0K
PiAgIGRyaXZlcnMvc2NzaS9zY3NpX3N5c2N0bC5jICAgICAgICAgICAgICAgICAgICB8ICAxIC0N
Cj4gICBkcml2ZXJzL3Njc2kvc2cuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgMSAt
DQo+ICAgZHJpdmVycy90dHkvdHR5X2lvLmMgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDEg
LQ0KPiAgIGRyaXZlcnMveGVuL2JhbGxvb24uYyAgICAgICAgICAgICAgICAgICAgICAgICB8ICAx
IC0NCj4gICAxOCBmaWxlcyBjaGFuZ2VkLCAxMSBpbnNlcnRpb25zKCspLCAzNSBkZWxldGlvbnMo
LSkNCj4gLS0tDQo+IGJhc2UtY29tbWl0OiAwZTk0NTEzNGI2ODAwNDBiODYxM2U5NjJmNTg2ZDkx
YjZkNDAyOTJkDQo+IGNoYW5nZS1pZDogMjAyMzA5MjctamFnLXN5c2N0bF9yZW1vdmVfZW1wdHlf
ZWxlbV9kcml2ZXJzLWYwMzQ5NjJhMGQ4Yw0KPiANCj4gQmVzdCByZWdhcmRzLA0K


From xen-devel-bounces@lists.xenproject.org Mon Oct 02 13:45:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 13:45:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611578.951072 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnJEv-0007eB-DJ; Mon, 02 Oct 2023 13:45:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611578.951072; Mon, 02 Oct 2023 13: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 1qnJEv-0007e4-AL; Mon, 02 Oct 2023 13:45:37 +0000
Received: by outflank-mailman (input) for mailman id 611578;
 Mon, 02 Oct 2023 13: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=PUzD=FQ=bugseng.com=federico.serafini@srs-se1.protection.inumbo.net>)
 id 1qnJEt-0007dw-L0
 for xen-devel@lists.xenproject.org; Mon, 02 Oct 2023 13:45:35 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id f544c2f1-6129-11ee-9b0d-b553b5be7939;
 Mon, 02 Oct 2023 15:45:33 +0200 (CEST)
Received: from Dell.bugseng.com (unknown [37.163.141.27])
 by support.bugseng.com (Postfix) with ESMTPSA id 18D474EE0739;
 Mon,  2 Oct 2023 15:45: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: f544c2f1-6129-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>,
	Stefano Stabellini <sstabellini@kernel.org>
Subject: [XEN PATCH] x86/paging: address a violation of MISRA C:2012 Rule 8.3
Date: Mon,  2 Oct 2023 15:45:24 +0200
Message-Id: <5a304ffd4fbdd0d5809dc68b857410bbc02f32a0.1696252375.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 functional change.

Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
---
 xen/arch/x86/include/asm/paging.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/xen/arch/x86/include/asm/paging.h b/xen/arch/x86/include/asm/paging.h
index f291f2f9a2..62605d7697 100644
--- a/xen/arch/x86/include/asm/paging.h
+++ b/xen/arch/x86/include/asm/paging.h
@@ -245,7 +245,7 @@ paging_fault(unsigned long va, struct cpu_user_regs *regs)
 }
 
 /* Handle invlpg requests on vcpus. */
-void paging_invlpg(struct vcpu *v, unsigned long va);
+void paging_invlpg(struct vcpu *v, unsigned long linear);
 
 /*
  * Translate a guest virtual address to the frame number that the
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Mon Oct 02 14:05:41 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 14:05:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611585.951082 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnJYB-0004Hz-6z; Mon, 02 Oct 2023 14:05:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611585.951082; Mon, 02 Oct 2023 14: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 1qnJYB-0004Hs-49; Mon, 02 Oct 2023 14:05:31 +0000
Received: by outflank-mailman (input) for mailman id 611585;
 Mon, 02 Oct 2023 14:05: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=TWvZ=FQ=cloud.com=george.dunlap@srs-se1.protection.inumbo.net>)
 id 1qnJY9-0004Hm-FG
 for xen-devel@lists.xenproject.org; Mon, 02 Oct 2023 14:05:29 +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 bcd3b6c5-612c-11ee-9b0d-b553b5be7939;
 Mon, 02 Oct 2023 16:05:27 +0200 (CEST)
Received: by mail-lj1-x22f.google.com with SMTP id
 38308e7fff4ca-2c00df105f8so261400911fa.2
 for <xen-devel@lists.xenproject.org>; Mon, 02 Oct 2023 07: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: bcd3b6c5-612c-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1696255527; x=1696860327; darn=lists.xenproject.org;
        h=to:subject:message-id:date:from:mime-version:from:to:cc:subject
         :date:message-id:reply-to;
        bh=dBzT8eXaQ5wsgfoWTCpotoEQ3+0daidlOKbjZvnMEHE=;
        b=GF5YUlGjCTCXTxQDeMqpOdUAhUFykv5ikrlrIA7S8E1x9KwSkAg1iLm+L1Kv9x8BG4
         jX6qm6NMq49XyVC6P2YlGK909a0d/iCg+Qtr3zhmZkyCcteK37me/KASs8Y1Yqzq4CVM
         OwjQo2eJKPYgp2GNPluEOfl4rkoZS8qiYwdF0=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1696255527; x=1696860327;
        h=to:subject:message-id:date:from:mime-version:x-gm-message-state
         :from:to:cc:subject:date:message-id:reply-to;
        bh=dBzT8eXaQ5wsgfoWTCpotoEQ3+0daidlOKbjZvnMEHE=;
        b=sdnSmYOf4ndt7g3lPnY/+WcxCC/MyTNW7UUdMWMqunzLXMAqvAGawwIIaro9TmNdh5
         JI0zEPAsTDL96uLR46BYzjr7EXSqWldBs+8NCSl4xBxkeyVcWodZDODhfd/ZsXWTKrXq
         gOpxHxjoXLwyT2Rl063MEOs983KEef/fqKDFEbCSAgBTMYCuksrbrcqbouKgrUHfgZMh
         1nvAY7odXT1JAGFCWWLvJkq6VdtMjLsN8cadBVtp3gN4h//OeyQcsmtEIxtYWn/uJgFR
         3fOGy2gkstXQEmVS32uojl0sUXpaGu63rjhjQOAXydGuhE3iADzWO73lC4EzpQzJG2hf
         EdnQ==
X-Gm-Message-State: AOJu0Yz5qWK/4mABcwd9VhO4w17yQHkGjvaJFRX/hZ2qPHKM+LckW+vv
	Y0f7+0ZwW9bempER6TDU5V7LnO2Fln/8ofrK+fmVFj0ndPmItpwCoGrxMVtS
X-Google-Smtp-Source: AGHT+IGmYv7wWkM4njgLrEXiKsHJsDTwn8+eh8KSk5eAB2zzzF+/gfCImxi9+cuNJ6OC2fx9iH5NwGcH5VBDrhakcnY=
X-Received: by 2002:a2e:9611:0:b0:2bc:dcdb:b5dc with SMTP id
 v17-20020a2e9611000000b002bcdcdbb5dcmr10085026ljh.39.1696255526318; Mon, 02
 Oct 2023 07:05:26 -0700 (PDT)
MIME-Version: 1.0
From: George Dunlap <george.dunlap@cloud.com>
Date: Mon, 2 Oct 2023 15:05:15 +0100
Message-ID: <CA+zSX=bSmA+NMgZTdgeDshy2p91br3RgS0j6+2973Z22u+7Ngw@mail.gmail.com>
Subject: [ANNOUNCE] Call for agenda items for 5 October Community Call @ 1500 UTC
To: Xen-devel <xen-devel@lists.xenproject.org>, 
	Tamas K Lengyel <tamas.k.lengyel@gmail.com>, "intel-xen@intel.com" <intel-xen@intel.com>, 
	"daniel.kiper@oracle.com" <daniel.kiper@oracle.com>, Roger Pau Monne <roger.pau@citrix.com>, 
	Sergey Dyasli <sergey.dyasli@citrix.com>, 
	Christopher Clark <christopher.w.clark@gmail.com>, Rich Persaud <persaur@gmail.com>, 
	Kevin Pearson <kevin.pearson@ortmanconsulting.com>, Juergen Gross <jgross@suse.com>, 
	Paul Durrant <pdurrant@amazon.com>, "Ji, John" <john.ji@intel.com>, 
	"robin.randhawa@arm.com" <robin.randhawa@arm.com>, Artem Mygaiev <Artem_Mygaiev@epam.com>, 
	Matt Spencer <Matt.Spencer@arm.com>, Stewart Hildebrand <Stewart.Hildebrand@amd.com>, 
	Volodymyr Babchuk <volodymyr_babchuk@epam.com>, Jeff Kubascik <Jeff.Kubascik@dornerworks.com>, 
	Stefano Stabellini <sstabellini@kernel.org>, Julien Grall <julien@xen.org>, 
	Rian Quinn <rianquinn@gmail.com>, "Daniel P. Smith" <dpsmith@apertussolutions.com>, 
	=?UTF-8?B?4oCL4oCL4oCL4oCL4oCL4oCL4oCLRG91ZyBHb2xkc3RlaW4=?= <cardoe@cardoe.com>, 
	George Dunlap <george.dunlap@citrix.com>, David Woodhouse <dwmw@amazon.co.uk>, 
	=?UTF-8?B?4oCL4oCL4oCL4oCL4oCL4oCL4oCLQW1pdCBTaGFo?= <amit@infradead.org>, 
	=?UTF-8?B?4oCL4oCL4oCL4oCL4oCL4oCL4oCLVmFyYWQgR2F1dGFt?= <varadgautam@gmail.com>, 
	Brian Woods <brian.woods@xilinx.com>, Robert Townley <rob.townley@gmail.com>, 
	Bobby Eshleman <bobby.eshleman@gmail.com>, 
	=?UTF-8?B?4oCL4oCL4oCL4oCL4oCL4oCL4oCLQ29yZXkgTWlueWFyZA==?= <cminyard@mvista.com>, 
	Olivier Lambert <olivier.lambert@vates.fr>, Andrew Cooper <andrew.cooper3@citrix.com>, 
	Ash Wilding <ash.j.wilding@gmail.com>, Rahul Singh <Rahul.Singh@arm.com>, 
	=?UTF-8?Q?Piotr_Kr=C3=B3l?= <piotr.krol@3mdeb.com>, 
	Brendan Kerrigan <brendank310@gmail.com>, Thierry Laurion <insurgo@riseup.net>, 
	Oleksandr Andrushchenko <oleksandr_andrushchenko@epam.com>, 
	Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>, Scott Davis <scottwd@gmail.com>, 
	Anthony PERARD <anthony.perard@citrix.com>, Michal Orzel <michal.orzel@amd.com>, 
	Marc Ungeschikts <marc.ungeschikts@vates.fr>, Zhiming Shen <zshen@exotanium.io>, 
	Xenia Ragiadakou <burzalodowa@gmail.com>, 
	=?UTF-8?B?4oCL4oCL4oCL4oCL4oCL4oCL4oCLSGVucnkgV2FuZw==?= <Henry.Wang@arm.com>, 
	Per Bilse <per.bilse@citrix.com>, Samuel Verschelde <stormi-xcp@ylix.fr>, 
	Andrei Semenov <andrei.semenov@vates.fr>, Yann Dirson <yann.dirson@vates.fr>, 
	Bernhard Kaindl <bernhard.kaindl@cloud.com>, 
	=?UTF-8?B?4oCL4oCL4oCL4oCL4oCL4oCL4oCLTHVjYSBGYW5jZWxsdQ==?= <luca.fancellu@arm.com>, 
	=?UTF-8?Q?Marek_Marczykowski=2DG=C3=B3recki?= <marmarek@invisiblethingslab.com>, 
	Vikram Garhwal <vikram.garhwal@amd.com>, Ayan Kumar Halder <ayan.kumar.halder@amd.com>, 
	Kelly Choi <kelly.choi@cloud.com>, Vaishali Thakkar <me.vaishalithakkar@gmail.com>
Content-Type: text/plain; charset="UTF-8"

Hi all,

The proposed agenda is in
https://cryptpad.fr/pad/#/2/pad/edit/cQBSSCUBQj9es3-wcs7I+8Em/ and you
can edit to add items.  Alternatively, you can reply to this mail
directly.  I'll be running the meeting while Kelly is on PTO.

Agenda items appreciated a few days before the call: please put your
name besides items if you edit the document.

Note the following administrative conventions for the call:
* Unless, agreed in the previous meeting otherwise, the call is on the
1st Thursday of each month at 1600 British Time (either GMT or BST)
* I usually send out a meeting reminder a few days before with a
provisional agenda

* To allow time to switch between meetings, we'll plan on starting the
agenda at 16:05 sharp.  Aim to join by 16:03 if possible to allocate
time to sort out technical difficulties &c

* If you want to be CC'ed please add or remove yourself from the
sign-up-sheet at
https://cryptpad.fr/pad/#/2/pad/edit/D9vGzihPxxAOe6RFPz0sRCf+/

Best Regards
George


== Dial-in Information ==
## Meeting time
16:00 - 17:00 British time
Further International meeting times:
https://www.timeanddate.com/worldclock/meetingdetails.html?year=2023&month=10&day=5&hour=15&min=0&sec=0&p1=1234&p2=37&p3=224&p4=179


## Dial in details
Web: https://meet.jit.si/XenProjectCommunityCall

Dial-in info and pin can be found here:

https://meet.jit.si/static/dialInInfo.html?room=XenProjectCommunityCall


From xen-devel-bounces@lists.xenproject.org Mon Oct 02 14:28:39 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 14:28:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611590.951091 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnJuR-0002vi-VB; Mon, 02 Oct 2023 14:28:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611590.951091; Mon, 02 Oct 2023 14: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 1qnJuR-0002vb-SV; Mon, 02 Oct 2023 14:28:31 +0000
Received: by outflank-mailman (input) for mailman id 611590;
 Mon, 02 Oct 2023 14:28: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=V4SN=FQ=arm.com=Bertrand.Marquis@srs-se1.protection.inumbo.net>)
 id 1qnJuP-0002vF-Vz
 for xen-devel@lists.xenproject.org; Mon, 02 Oct 2023 14:28:30 +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 f1c7186b-612f-11ee-98d2-6d05b1d4d9a1;
 Mon, 02 Oct 2023 16:28:27 +0200 (CEST)
Received: from AM6P195CA0024.EURP195.PROD.OUTLOOK.COM (2603:10a6:209:81::37)
 by GV2PR08MB8486.eurprd08.prod.outlook.com (2603:10a6:150:bc::18) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.25; Mon, 2 Oct
 2023 14:28:21 +0000
Received: from AM7EUR03FT025.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:209:81:cafe::d4) by AM6P195CA0024.outlook.office365.com
 (2603:10a6:209:81::37) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.30 via Frontend
 Transport; Mon, 2 Oct 2023 14:28:21 +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.20 via Frontend Transport; Mon, 2 Oct 2023 14:28:20 +0000
Received: ("Tessian outbound fdf44c93bd44:v211");
 Mon, 02 Oct 2023 14:28:20 +0000
Received: from e19e14142179.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 62886CDA-B63B-41C8-8534-1D85ED823F69.1; 
 Mon, 02 Oct 2023 14:28:09 +0000
Received: from EUR01-DB5-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id e19e14142179.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Mon, 02 Oct 2023 14:28:09 +0000
Received: from AM6PR08MB3784.eurprd08.prod.outlook.com (2603:10a6:20b:85::25)
 by AM9PR08MB5906.eurprd08.prod.outlook.com (2603:10a6:20b:285::22)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.26; Mon, 2 Oct
 2023 14:28:05 +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.6838.024; Mon, 2 Oct 2023
 14:28: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: f1c7186b-612f-11ee-98d2-6d05b1d4d9a1
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=iZvVHCnGwfnju72DCKji/LHCa5GX+jiSNB4VYsCrE+c=;
 b=BfaWdYcH/4RXFMYByQZQrfA2zEGFF2NAS6m13qXij/VQdapRjh3+mhr6gtWDIVZ4+EN5JL4uqio8XWBsUxXSB9F/52WRM69G3V1x9JDeR6FT6GfbRPl3humWxA2Kmd+mtuhh4CXNch/6lDAa3Mo5b6O+swBU/wLsRpzUire67CE=
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: 69a0c6b328d11ebb
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=HqHLt5b4aYjHH687KXerWly8XT6JZLa70t9wvLhQFt/JqVX0yzoMuwbizh9MLQhTw4kRR4ga1vPFGktdb/g399745vZ5cwgyP+sxknKolW//12XITDmeI0FWrj2O0niSMyCEDMnd9RkrkGoZwB0CZhjgc4f78x90lem+2z6GeQNBX4DEq6kkGhuXWLxwPbY6qrC/XkmNKEjU7R4GTp3AO+F3JaoL9nyI1qriJuXJiVMkzW+p5F96yGuPbGgh0fTUZ9LdHdJh5ZhyYsEgMEGym3gDZwdq7YSg9VWvRkMQuL9Qt66Wbv4sZee2ZGcuxzI99V9UJ70hVR2IpW06lvg9XA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=iZvVHCnGwfnju72DCKji/LHCa5GX+jiSNB4VYsCrE+c=;
 b=fi8I1nQRY5+lUeLwdFMWfDEM/DbafZWX0vaILGVOkKCKSbP9cSGIQrbQWawvDNEO+w7WWgJ+MBNLhv0BCrz+M+PoBqJiiJcAjXIxHJaSuQYmKpvN8NhW+5JxsKKJSp1Csm9XH7CpLGk6pT3hOhZfLB9n0rVa+H/vE34vsQn1LLaeJdvNMyPxWDorhROfXyxFKl+ccRHL9o3+iP+iz5pVDQLHm+rDJ11xKwSSnNyA6j6O1fKu1AAnktBhgUzJtmIRKPGuri0cgd2m7/RWM+IG1iaRh+vHJI3WJWv5mfH7btSulB8m8cTp4iD/T/EyPe3ELfyWpS+SFBj9BJacgZ60WQ==
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=iZvVHCnGwfnju72DCKji/LHCa5GX+jiSNB4VYsCrE+c=;
 b=BfaWdYcH/4RXFMYByQZQrfA2zEGFF2NAS6m13qXij/VQdapRjh3+mhr6gtWDIVZ4+EN5JL4uqio8XWBsUxXSB9F/52WRM69G3V1x9JDeR6FT6GfbRPl3humWxA2Kmd+mtuhh4CXNch/6lDAa3Mo5b6O+swBU/wLsRpzUire67CE=
From: Bertrand Marquis <Bertrand.Marquis@arm.com>
To: Julien Grall <julien@xen.org>
CC: Stefano Stabellini <sstabellini@kernel.org>, Luca Fancellu
	<Luca.Fancellu@arm.com>, Xen-devel <xen-devel@lists.xenproject.org>, Wei Chen
	<Wei.Chen@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: AQHZ8UtDYO4d/ZAlGU2swEp9/t1GiLAw9peAgABwXACAANJugIAD+GkAgABk4YA=
Date: Mon, 2 Oct 2023 14:28:04 +0000
Message-ID: <38AD4AA5-D038-4114-A614-80BF91FB51FB@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>
 <725342EA-730F-4961-88A4-43EC0CBAD5BA@arm.com>
 <alpine.DEB.2.22.394.2309291242570.2348112@ubuntu-linux-20-04-desktop>
 <bc2a043a-9836-429b-88bb-6bedda5343bf@xen.org>
In-Reply-To: <bc2a043a-9836-429b-88bb-6bedda5343bf@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.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_|AM9PR08MB5906:EE_|AM7EUR03FT025:EE_|GV2PR08MB8486:EE_
X-MS-Office365-Filtering-Correlation-Id: 6a342b87-1720-4770-d86e-08dbc353d3d2
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:
 xKEv+xXzV5GBnXBrnZQJpvr+4U63zGuByMl+2Zs/7HC9W0BJfFhcWwG2TZx7ZXNByeHFxegWkl7OR2H5D44d8Rss9ArubyvFl9D/UovDxaFfJLGDLPkxnG59mP76KLGMAkn1RyZTFKYusIlmyhm3yp2yP8IHEjdgSG0Sc/q4YQMJQeZDsFWyImVAA5pvjKqB2kJfseqGU54P3V9gaEUqklnhGimEJtoFlTSb2jnONt6xu4D5ZhWeLCq6+LClv63YsJN8y/y7Wx6chFXAkanS1i1jcKXHSBSaQxbT1XspM1VBo7I9bL+l/9kw+gNa9vW1MSVyLBDww+Qc/lHl527gIf5MxGHdna5rd98w7NVYt7aznsjGjunK+RvsJZXbmaiiwfDktxmtuyM5zAU46bO6u39QCsHz42Enn62ZLFCC6SkK7gjhwKdK185B3wOI8OO1vnwukORanjvBHu7/RGE6yppiz4BqSrzJ8W+R5i9IWt02Ng1QnEEzZGwbRi7wrMiXyCOUw9X9+yg8XRHyHiA5lcgbR9HLdDHOBK3UAyQ6hgJ0RDqOfnizoF0Vo+8ZV64O9dsKfXkzaLLQG0yRklAv6phoU4csf3alT1zfx1ok2WbhKeR+Vp4ETRZihRM/CJX34XS37sd8xKtHz9JIbs/YKSQh7jxUaSmEfj/CJWdp3sg=
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)(396003)(366004)(346002)(39860400002)(376002)(136003)(230922051799003)(451199024)(1800799009)(186009)(64100799003)(53546011)(55236004)(8676002)(2906002)(8936002)(66446008)(4326008)(316002)(41300700001)(33656002)(5660300002)(36756003)(54906003)(76116006)(86362001)(91956017)(6512007)(6506007)(66946007)(71200400001)(38070700005)(2616005)(38100700002)(478600001)(83380400001)(64756008)(6916009)(26005)(122000001)(66476007)(66556008)(6486002)(32563001)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <26252C525C6F5947ADD3255BEDCBD0D0@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR08MB5906
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:
	3cbb7bdc-ba27-4034-92fc-08dbc353ca49
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	evFhHzkO4m7SrWkWc5UWO9ed45X9sadvoHmEFOkkTM2JJC790VJRBamZkWWXtja97GY299SzGr1CvDXYPeFqTOfloGUhtJc9aOqc19vhbQsokCEVDsyDNlcEN1dwRMmLjuLSe71uZ0xhnjc4xStAG1pFR+432uwPD+NMNjyzS6qA5p5pUtMgk6ZzKTUZMXL4GXY6pVmTsNhuneiK4TeVotvWorDmI/SX0hEEohis6MaJBgoCxGBRmXsO1Xi1TkSHfSOK2V3WgdUHeWHK1tLJtCHsNrtetLL6tyuqF0b6rUIMPoYyElrzAc1SRHn+UnurAjVpIdMOSrr0+fIVwHNAzV/HQuI8E7oauLO8h5BzvyQ5bSW1iVTvjYI28ztqsTwREEj7J+vPxvcxCHkYCJ1vLmL3dguP3n9r6fDs8odd/PnXvJ3f0v78jncBRh5CnuD0DTXNqp8PeHeuUAUJsxTLfbnCJGw3jCLEB9Vz2W94aMsY/q6/7KWKQYzUOSaLHz68/VWVxvP7YnhJ6QLwR383U4qQpGwomfE6eCRs+d47w+vX731EIpKdo2uR2Hs53/RdxwBDUR8/4NvWZWvqj88tJdC5X5YLn5Na8T2g8n7+5Wo58bHQnNkxWEn2l+00isnrKiFh8FgUvcNkqzuHiTG7EvcG71uUbsYK9uA7AZVVpsROSroS8V0Yss390bsoG7AIm6jwGor5hPW/XWajBc9kkJyXT3MFBTHTAGAxVFA/IP997LJ8ZubRI4rSHI23U44z6mATRDlxzLsVBPvQByjYOQ==
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)(82310400011)(186009)(1800799009)(64100799003)(451199024)(46966006)(36840700001)(40470700004)(8676002)(40460700003)(4326008)(36756003)(6862004)(33656002)(47076005)(2906002)(6512007)(107886003)(2616005)(53546011)(26005)(6506007)(6486002)(478600001)(336012)(81166007)(36860700001)(356005)(83380400001)(82740400003)(86362001)(40480700001)(8936002)(54906003)(70206006)(70586007)(316002)(5660300002)(41300700001)(32563001);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Oct 2023 14:28:20.5788
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 6a342b87-1720-4770-d86e-08dbc353d3d2
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: GV2PR08MB8486

SGksDQoNCj4gT24gMiBPY3QgMjAyMywgYXQgMTA6MjYsIEp1bGllbiBHcmFsbCA8anVsaWVuQHhl
bi5vcmc+IHdyb3RlOg0KPiANCj4gSGkgU3RlZmFubywNCj4gDQo+IE9uIDI5LzA5LzIwMjMgMjA6
NDgsIFN0ZWZhbm8gU3RhYmVsbGluaSB3cm90ZToNCj4+IE9uIEZyaSwgMjkgU2VwIDIwMjMsIEx1
Y2EgRmFuY2VsbHUgd3JvdGU6DQo+Pj4+IE9uIDI5IFNlcCAyMDIzLCBhdCAwMTozMywgU3RlZmFu
byBTdGFiZWxsaW5pIDxzc3RhYmVsbGluaUBrZXJuZWwub3JnPiB3cm90ZToNCj4+Pj4gDQo+Pj4+
IE9uIFdlZCwgMjcgU2VwIDIwMjMsIEx1Y2EgRmFuY2VsbHUgd3JvdGU6DQo+Pj4+PiBDdXJyZW50
bHkgdGhlIGRvbTBsZXNzIGZlYXR1cmUgY29kZSBpcyBtb3N0bHkgaW5zaWRlIGRvbWFpbl9idWls
ZC5jDQo+Pj4+PiBhbmQgc2V0dXAuYywgaXQgaXMgYSBmZWF0dXJlIHRoYXQgbWF5IG5vdCBiZSB1
c2VmdWwgdG8gZXZlcnlvbmUgc28NCj4+Pj4+IHB1dCB0aGUgY29kZSBpbiBhIGRpZmZlcmVudCBj
b21waWxhdGlvbiBtb2R1bGUgaW4gb3JkZXIgdG8gbWFrZSBpdA0KPj4+Pj4gZWFzaWVyIHRvIGRp
c2FibGUgdGhlIGZlYXR1cmUgaW4gdGhlIGZ1dHVyZS4NCj4+Pj4+IA0KPj4+Pj4gTW92ZSBnaWNf
aW50ZXJydXB0X3QgaW4gZG9tYWluX2J1aWxkLmggdG8gdXNlIGl0IHdpdGggdGhlIGZ1bmN0aW9u
DQo+Pj4+PiBkZWNsYXJhdGlvbiwgbW92ZSBpdHMgY29tbWVudCBhYm92ZSB0aGUgZGVjbGFyYXRp
b24uDQo+Pj4+PiANCj4+Pj4+IFRoZSBmb2xsb3dpbmcgZnVuY3Rpb25zIGFyZSBub3cgdmlzaWJs
ZSBleHRlcm5hbGx5IGZyb20gZG9tYWluX2J1aWxkDQo+Pj4+PiBiZWNhdXNlIHRoZXkgYXJlIHVz
ZWQgYWxzbyBmcm9tIHRoZSBkb20wbGVzcy1idWlsZCBtb2R1bGU6DQo+Pj4+PiAtIGdldF9hbGxv
Y2F0aW9uX3NpemUNCj4+Pj4+IC0gc2V0X2ludGVycnVwdA0KPj4+Pj4gLSBkb21haW5fZmR0X2Jl
Z2luX25vZGUNCj4+Pj4+IC0gbWFrZV9tZW1vcnlfbm9kZQ0KPj4+Pj4gLSBtYWtlX3Jlc3ZfbWVt
b3J5X25vZGUNCj4+Pj4+IC0gbWFrZV9oeXBlcnZpc29yX25vZGUNCj4+Pj4+IC0gbWFrZV9wc2Np
X25vZGUNCj4+Pj4+IC0gbWFrZV9jcHVzX25vZGUNCj4+Pj4+IC0gbWFrZV90aW1lcl9ub2RlDQo+
Pj4+PiAtIGhhbmRsZV9kZXZpY2VfaW50ZXJydXB0cw0KPj4+Pj4gLSBjb25zdHJ1Y3RfZG9tYWlu
DQo+Pj4+PiAtIHByb2Nlc3Nfc2htDQo+Pj4+PiANCj4+Pj4+IFRoZSBmdW5jdGlvbnMgYWxsb2Nh
dGVfc3RhdGljX21lbW9yeSBhbmQgYXNzaWduX3N0YXRpY19tZW1vcnlfMTENCj4+Pj4+IGFyZSBu
b3cgZXh0ZXJuYWxseSB2aXNpYmxlLCBzbyBwdXQgdGhlaXIgZGVjbGFyYXRpb25zIGludG8NCj4+
Pj4+IGRvbWFpbl9idWlsZC5oIGFuZCBtb3ZlIHRoZSAjZWxzZSBhbmQgc3R1YiBkZWZpbml0aW9u
IGluIHRoZSBoZWFkZXINCj4+Pj4+IGFzIHdlbGwuDQo+Pj4+PiANCj4+Pj4+IE1vdmUgaXNfZG9t
MGxlc3NfbW9kZSBmcm9tIHNldHVwLmMgdG8gZG9tMGxlc3MtYnVpbGQuYyBhbmQgbWFrZSBpdA0K
Pj4+Pj4gZXh0ZXJuYWxseSB2aXNpYmxlLg0KPj4+Pj4gDQo+Pj4+PiBXaGVyZSBzcG90dGVkLCBm
aXggY29kZSBzdHlsZSBpc3N1ZXMuDQo+Pj4+PiANCj4+Pj4+IE5vIGZ1bmN0aW9uYWwgY2hhbmdl
IGlzIGludGVuZGVkLg0KPj4+Pj4gDQo+Pj4+PiBTaWduZWQtb2ZmLWJ5OiBMdWNhIEZhbmNlbGx1
IDxsdWNhLmZhbmNlbGx1QGFybS5jb20+DQo+Pj4+IA0KPj4+PiBUaGlzIGlzIGdyZWF0ISBBIGNv
dXBsZSBvZiBxdWVzdGlvbnMuDQo+Pj4+IA0KPj4+PiBXaHkgd2FzIGFsbG9jYXRlX3N0YXRpY19t
ZW1vcnkgbm90IG1vdmVkIHRvIGRvbTBsZXNzLWJ1aWxkLmMgPw0KPj4+IA0KPj4+IE15IGFpbSBp
cyB0byBkZWNvdXBsZSB0aGUgZmVhdHVyZXMsIHNvIGluIHBhdGNoIDQgd2UgbW92ZSAoanVzdCBv
bmNlIGFzIEp1bGllbiBzdWdnZXN0ZWQpDQo+Pj4gdGhlIHN0YXRpYyBtZW1vcnkgY29kZSBvbiBh
IG1vZHVsZSBvbiBpdHMgb3duLCBiZWNhdXNlIHdlIGNhbiBoYXZlIGEgZ3Vlc3QgYm9vdGVkIHdp
dGgNCj4+PiBkb20wbGVzcyBmZWF0dXJlIGJ1dCBoYXZpbmcgaXQgd2l0aCBzdGF0aWMgbWVtb3J5
IGlzIG9wdGlvbmFsLg0KPj4gT0sNCj4+Pj4gV291bGQgaXQgbWFrZSBzZW5zZSB0byBhbHNvIG1v
dmUgY29uc3RydWN0X2RvbTAgdG8gZG9tMGxlc3MtYnVpbGQuYw0KPj4+PiBnaXZlbiB0aGUgc2lt
aWxhcml0aWVzIHdpdGggY29uc3RydWN0X2RvbVU/IEkgYW0gbm90IHN1cmUgYWJvdXQgdGhpcy4N
Cj4+Pj4gDQo+Pj4gDQo+Pj4gV2UgY2Fu4oCZdCBkbyB0aGF0IGJlY2F1c2UgdGhlIGZpbmFsIGdv
YWwgb2YgdGhpcyBzZXJpZSBpcyB0byBoYXZlIGEgS2NvbmZpZyBkaXNhYmxpbmcgZG9tMGxlc3Ms
DQo+Pj4gc28gaW4gdGhhdCBjYXNlIHdlIHdpbGwgZW5kIHVwIHJlbW92aW5nIGZyb20gdGhlIGNv
bXBpbGF0aW9uIGFsc28gY29uc3RydWN0X2RvbTAuDQo+PiBPSy4gUHJvYmFibHkgd2UgY2FuJ3Qg
ZG8gbXVjaCBiZXR0ZXIgdGhhbiB0aGlzLg0KPj4gT25lIG1vcmUgcXVlc3Rpb24gb24gdGhlIGNv
ZGUgbW92ZW1lbnQsIGFuZCBJIHdvdWxkIGFsc28gbGlrZSBKdWxpZW4gYW5kDQo+PiBCZXJ0cmFu
ZCB0byBleHByZXNzIHRoZWlyIG9waW5pb25zIG9uIHRoaXMuDQo+PiBHaXZlbiB0aGF0IGNvZGUg
bW92ZW1lbnQgaXMgcGFpbmZ1bCBmcm9tIGEgZ2l0IGhpc3RvcnkgcGVyc3BlY3RpdmUsIGFuZA0K
Pj4gZ2l2ZW4gdGhhdCB3ZSBoYXZlIHRvIG1vdmUgZG9tMGxlc3MgY29kZSB0byB4ZW4vY29tbW9u
IGFueXdheSB0byBtYWtlDQo+PiBpdCBhdmFpbGFibGUgdG8gUklTQy1WIGFuZCBhbHNvIHg4Niwg
Y291bGQgd2UgZG8gaXQgaW4gb25lIHNob3QgaGVyZT8NCj4gDQo+IExvb2tpbmcgYXQgdGhlIG5h
bWUgb2YgdGhlIGZ1bmN0aW9ucywgSSB3b3VsZCBleHBlY3QgdGhhdCB3ZSB3b3VsZCBuZWVkIGFu
b3RoZXIgY29kZSBtb3ZlbWVudCBpbiB0aGUgZnV0dXJlIHRvIG1vdmUgYmFjayBBcm0gc3BlY2lm
aWMgZnVuY3Rpb24gdW5kZXIgYXJjaC9hcm0vLiBTbyB3ZSB3b3VsZCBlbmQgdXAgd2l0aCB0d28g
Y29kZSBtb3ZlbWVudCBhcyB3ZWxsLg0KPiANCj4gSSB3b3VsZCBwcmVmZXIgaWYgd2Ugd2FpdCB1
bnRpbCBSSVNDLVYveDg2IG5lZWRzIGl0IHNvIHdlIGRvbid0IHVubmVjZXNzYXJpbHkgbW92ZSBB
cm0gc3BlY2lmaWMgY29kZSBpbiBjb21tb24vLg0KDQpJIGFncmVlIHdpdGggSnVsaWVuIGhlcmUu
DQpNb3ZpbmcgdGhlIGNvZGUgbm93IHdpbGwgbWVhbiBtb3ZpbmcgcGFydCBvZiBpdCBiYWNrIGlu
IGFybSBpbiB0aGUgZnV0dXJlIG9uY2Ugd2UgaGF2ZSBhIHNlY29uZCB1c2VyIG9mIHRoaXMuDQpJ
IHdvdWxkIHJhdGhlciB3YWl0IGZvciB0aGUgbmVlZCB0byBjb21lIHNvIHRoYXQgd2UgZG8gdGhp
cyBjbGVhbmx5Lg0KDQpBbHNvIHVzaW5nIGh5cGVybGF1bmNoIG5hbWUgbm93IHdvdWxkIGJlIHdl
aXJkIGFzIHRoZXJlIHdhcyBubyBhZ3JlZW1lbnQgb24gdGhlIG5hbWluZyAoYXMgZmFyIGFzIEkg
a25vdykgc28gZmFyLg0KDQpDaGVlcnMNCkJlcnRyYW5kDQoNCj4gDQo+IENoZWVycywNCj4gDQo+
IC0tIA0KPiBKdWxpZW4gR3JhbGwNCg0KDQo=


From xen-devel-bounces@lists.xenproject.org Mon Oct 02 14:35:02 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 14:35:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611595.951101 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnK0f-0005Cg-Lm; Mon, 02 Oct 2023 14:34:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611595.951101; Mon, 02 Oct 2023 14:34: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 1qnK0f-0005CZ-J0; Mon, 02 Oct 2023 14:34:57 +0000
Received: by outflank-mailman (input) for mailman id 611595;
 Mon, 02 Oct 2023 14:34: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=Urm/=FQ=hpe.com=steve.wahl@srs-se1.protection.inumbo.net>)
 id 1qnK0e-0005CT-2M
 for xen-devel@lists.xenproject.org; Mon, 02 Oct 2023 14:34:56 +0000
Received: from mx0a-002e3701.pphosted.com (mx0a-002e3701.pphosted.com
 [148.163.147.86]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id d8d7bf7b-6130-11ee-98d2-6d05b1d4d9a1;
 Mon, 02 Oct 2023 16:34:53 +0200 (CEST)
Received: from pps.filterd (m0150242.ppops.net [127.0.0.1])
 by mx0a-002e3701.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id
 392ENRAq010318; Mon, 2 Oct 2023 14:33:28 GMT
Received: from p1lg14881.it.hpe.com ([16.230.97.202])
 by mx0a-002e3701.pphosted.com (PPS) with ESMTPS id 3tfyk4g34b-1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT);
 Mon, 02 Oct 2023 14:33:28 +0000
Received: from p1lg14886.dc01.its.hpecorp.net (unknown [10.119.18.237])
 (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 20CF0804DF1;
 Mon,  2 Oct 2023 14:33:14 +0000 (UTC)
Received: from swahl-home.5wahls.com (unknown [16.231.227.39])
 (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 p1lg14886.dc01.its.hpecorp.net (Postfix) with ESMTPS id 1031080139E;
 Mon,  2 Oct 2023 14:33: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: d8d7bf7b-6130-11ee-98d2-6d05b1d4d9a1
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=8kcAx3CglGRn94aeo1HK8iAjrJB5McccnOtaRuGBhlE=;
 b=UDDV9blwhOqG6lS3UsYzzUODsb3/Jv7uk7fyfcblbVHD3X/OLXl4ruM75aG/o029gXU4
 wZf0e0FS+UT7qSUuJhyOAyZlj0F1UOHpXDeBwm3+RPme4yGaLrJ9gQFKalvxH7zeW0Q2
 9Wal0xHDrZAv4zZfk2yPVG5x6KKVR+62Inf2e5CoAJFSvGqa9XRuymOmZ+CVSG7WUZ0j
 MfjwZN1qCeG6CzxC3CgEIgBeZqSkhI/EtLkuSZrJ0vADwcdmTnlSr+XumB84vemz7JXe
 W34mDYx8DuQrTdltPS/YsslQCZKNQYb9m+YSqJL+3jk+uYK+YsSwbmURt2WthssC/6Wq Jw== 
Date: Mon, 2 Oct 2023 09:33:04 -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 v2 11/15] sgi-xp: Remove the now superfluous sentinel
 element from ctl_table array
Message-ID: <ZRrUoISghotzEeu/@swahl-home.5wahls.com>
References: <20231002-jag-sysctl_remove_empty_elem_drivers-v2-0-02dd0d46f71e@samsung.com>
 <=?utf-8?q?=3C20231002-jag-sysctl=5Fremove=5Fempty=5Felem=5Fdrive?=>
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <=?utf-8?q?=3C20231002-jag-sysctl=5Fremove=5Fempty=5Felem=5Fdrive?=>
X-Proofpoint-ORIG-GUID: FvQlGBIC2T_f8YdHb4chZeOBKZ5wjbmW
X-Proofpoint-GUID: FvQlGBIC2T_f8YdHb4chZeOBKZ5wjbmW
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-10-02_09,2023-10-02_01,2023-05-22_02
X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 impostorscore=0 mlxscore=0
 adultscore=0 bulkscore=0 malwarescore=0 priorityscore=1501
 lowpriorityscore=0 suspectscore=0 mlxlogscore=999 phishscore=0
 clxscore=1015 spamscore=0 classifier=spam adjust=0 reason=mlx scancount=1
 engine=8.12.0-2309180000 definitions=main-2310020109

On Mon, Oct 02, 2023 at 10:55:28AM +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 | 2 --
>  1 file changed, 2 deletions(-)
> 
> diff --git a/drivers/misc/sgi-xp/xpc_main.c b/drivers/misc/sgi-xp/xpc_main.c
> index 6da509d692bb..3186421e82c3 100644
> --- a/drivers/misc/sgi-xp/xpc_main.c
> +++ b/drivers/misc/sgi-xp/xpc_main.c
> @@ -110,7 +110,6 @@ static struct ctl_table xpc_sys_xpc_hb[] = {
>  	 .proc_handler = proc_dointvec_minmax,
>  	 .extra1 = &xpc_hb_check_min_interval,
>  	 .extra2 = &xpc_hb_check_max_interval},
> -	{}
>  };
>  static struct ctl_table xpc_sys_xpc[] = {
>  	{
> @@ -121,7 +120,6 @@ static struct ctl_table xpc_sys_xpc[] = {
>  	 .proc_handler = proc_dointvec_minmax,
>  	 .extra1 = &xpc_disengage_min_timelimit,
>  	 .extra2 = &xpc_disengage_max_timelimit},
> -	{}
>  };
>  
>  static struct ctl_table_header *xpc_sysctl;
> 
> -- 
> 2.30.2
> 

Reviewed-by: Steve Wahl <steve.wahl@hpe.com>

-- 
Steve Wahl, Hewlett Packard Enterprise


From xen-devel-bounces@lists.xenproject.org Mon Oct 02 14:58:05 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 14:58:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611603.951112 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnKMm-00049L-LI; Mon, 02 Oct 2023 14:57:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611603.951112; Mon, 02 Oct 2023 14:57: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 1qnKMm-00049E-HP; Mon, 02 Oct 2023 14:57:48 +0000
Received: by outflank-mailman (input) for mailman id 611603;
 Mon, 02 Oct 2023 14:57: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 1qnKMl-000492-N3; Mon, 02 Oct 2023 14:57: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 1qnKMk-0008Lg-QD; Mon, 02 Oct 2023 14:57: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 1qnKMk-0006MM-BY; Mon, 02 Oct 2023 14:57:46 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qnKMk-0006mO-B3; Mon, 02 Oct 2023 14:57: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=L+INnjL5G7gyAIEO54Je7BgMUkEX9ksPLE3o9z9BqxM=; b=RAhVuy2hSgG9CCcowx4NZ+lJ2L
	ggLkSxqHfzLWutgmXOU6h6q90hpPW5vRuMAWggc++ww4NN/jYMNFnIaE8J4yIi1jCo4BCePzkiuPE
	w8O0Z/lrupJhJdjddbZLLucTXT7Ac16AiaKi2xOk03EKJr8efxUyeZi6y2W8VZ81lh5k=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183238-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 183238: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=f6a314e5b5dc9697308740b2ac391a3c21b26403
X-Osstest-Versions-That:
    ovmf=f36e1ec1f0a5fd3be84913e09181d7813444b620
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 02 Oct 2023 14:57:46 +0000

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

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

Last test of basis   183200  2023-09-28 02:10:46 Z    4 days
Testing same since   183238  2023-10-02 13:14:03 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Leif Lindholm <quic_llindhol@quicinc.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
   f36e1ec1f0..f6a314e5b5  f6a314e5b5dc9697308740b2ac391a3c21b26403 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Mon Oct 02 15:12:06 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 15:12:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611610.951132 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnKaX-0000zB-2f; Mon, 02 Oct 2023 15:12:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611610.951132; Mon, 02 Oct 2023 15: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 1qnKaW-0000z2-VK; Mon, 02 Oct 2023 15:12:00 +0000
Received: by outflank-mailman (input) for mailman id 611610;
 Mon, 02 Oct 2023 15: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=QbpY=FQ=citrix.com=prvs=63281d1e1=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qnKaV-0000iK-Oo
 for xen-devel@lists.xenproject.org; Mon, 02 Oct 2023 15:11:59 +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 08208163-6136-11ee-98d2-6d05b1d4d9a1;
 Mon, 02 Oct 2023 17:11:59 +0200 (CEST)
Received: from mail-dm6nam11lp2171.outbound.protection.outlook.com (HELO
 NAM11-DM6-obe.outbound.protection.outlook.com) ([104.47.57.171])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 02 Oct 2023 11:11:57 -0400
Received: from MW4PR03MB6428.namprd03.prod.outlook.com (2603:10b6:303:123::8)
 by BY1PR03MB7261.namprd03.prod.outlook.com (2603:10b6:a03:526::9)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.25; Mon, 2 Oct
 2023 15:11:55 +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.035; Mon, 2 Oct 2023
 15:11: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: 08208163-6136-11ee-98d2-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1696259519;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:content-transfer-encoding:mime-version;
  bh=/cORn2PaiHqMpwBU7PffBoZFBHMZRIJY7zh8CAxkC2o=;
  b=Po2UMz+bFpp6MJv/09Lu/+B6waBsNspEeVTHnZCDz+OGCvoP9TSE9WEK
   Hh42oP5ThC6ECSgDv58PAUeAtCEOckpjhUkGo1+eSMPTHFVGD+GvHP6bw
   xaQWncqQ5vaPtuSgqtMNkPdZBhZ8bfpUncMThd8lXReYDb7yrvdoVdUp3
   w=;
X-CSE-ConnectionGUID: Y7rpxt7YSRS3iVDgHE1zQg==
X-CSE-MsgGUID: V+5MSSPsSUKH6HupM4hYyg==
X-IronPort-RemoteIP: 104.47.57.171
X-IronPort-MID: 123653196
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:8TnVnaiAEbhhYJevwu59SV1rX161UhEKZh0ujC45NGQN5FlHY01je
 htvX26BOa2JYDTyf49xa4vko0kFuMfVztVgTAtr/Cs3QyMb9cadCdqndUqhZCn6wu8v7q5Ex
 55HNoSfdpBcolv0/ErF3m3J9CEkvU2wbuOhTraCYmYoHVMMpB4J0XpLg/Q+jpNjne+3CgaMv
 cKai8DEMRqu1iUc3lg8sspvkzsx+qyp0N8klgZmP6sS5AeEzyB94K83fsldEVOpGuG4IcbiL
 wrz5OnR1n/U+R4rFuSknt7TGqHdauePVeQmoiM+t5mK2nCulARrukoIHKN0hXNsoyeIh7hMJ
 OBl7vRcf+uL0prkw4zxWzEAe8130DYvFLXveRBTuuTLp6HKnueFL1yDwyjaMKVBktubD12i+
 tQpdyoVfgzcttmM++m6dMVjpul6PvDkadZ3VnFIlVk1DN4AaLWaGuDmwIEd2z09wMdTAfzZe
 swVLyJ1awjNaAFOPVFRD48imOCvhT/0dDgwRFC9/PJrpTSMilEuluGyabI5efTTLSlRtlyfq
 W/cuXzwHzkRNcCFyCrD+XWp7gPKtXqhA9xPT+TpqJaGhnWthTE2MyYuTmCGgtnnqlOmfo5fG
 l0br39GQa8asRbDosPGdw21pjuIswARX/JUEvYm80edx6zM+QGbC2MYCDlbZ7QOtMIwXy1sy
 VaPkPvgHzkpu7qQIVqf/LqJqTK5OQAOMHQPIyQDSGMt/N3LsIw1yBXVQb5e/LWdi9T0HXT8x
 m6MpS1n3rEL15dUjuO84EzNhC+qqt7RVAkp6w7LX2WjqARkeIqiYI/u4l/ehRpdELukopC6l
 CBss6CjAComVPlhSATlrD0xIYyU
IronPort-HdrOrdr: A9a23:lnW5YqlK8d23J/uohQM/nNdh27fpDfLa3DAbv31ZSRFFG/Fw9/
 rCoB3U73/JYVcqKRcdcLW7UpVoLkmyyXcY2+cs1PKZLWvbUQiTXeZfBOnZsl7d8kTFn4Yw6U
 4jSdkaNDSZNzNHZK3BkW2F+rgboeVu8MqT9JjjJ3UGd3AVV0m3hT0JezpyESdNNXl77YJSLu
 vk2iLezQDQBEj+aK6AdwE4dtmGnfLnvrT8byULAhY2gTP+8Q9BuNbBYmOlNg51aUI0/Ysf
X-Talos-CUID: =?us-ascii?q?9a23=3Ar400OmlTKfEhrQy+dfoOH7jmSYjXOUyC1m/APxC?=
 =?us-ascii?q?JMlxSE7yrZVCw1fp2qsU7zg=3D=3D?=
X-Talos-MUID: 9a23:wUkaqAowi39wHDPz3A4ezw8haeJT2Jy1M30uscsmptGhaSxBKjjI2Q==
X-IronPort-AV: E=Sophos;i="6.03,194,1694750400"; 
   d="scan'208";a="123653196"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=dX0LlBbrKw93fSZJ3C3CRrVKFzifI13yNHHqojUJlW8Zx3AfkzEKJE4R4/zMlx2h9UTIgx26n34S5DYyRajc5ubIEU8dMf9z6sOcChweydj8MBtq7Sy0NwmDreaATBiYdbOWwzm5BKuBw4lS6I3sBFA5elY/OIyn2b1Khxqs7QR0IG1tPAV/EkpkjHvVNuhZ+t9Rjw0BloQrjj/+oKbpvaaMdalrKcaM7O1qJSr1TYKhlhNTLEUMsj85P3d0Im8ek/zBD7ZY1XoR/j+k6dXLShySg1hVA/cd8yGB1To6RUUlhGICJVI+WbTLTgDZ4WUPUfGazHIm+gLse1qHVil/Jw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=01vEMBP+AIsrC5NQCk+WSSYp1tHvGShg3O7HS4rvvmM=;
 b=ZdBgjig6tiAgD3a86CEFS52LshXs2fivotR/NV+NNC8UbW0FcaLtqwvDwQjzYWvu85PeoHyqvcfIl0xokJLGckGQPD5YgbfG/t9lghxndm3U9Aj2lodGJcGvrcQxNBkY/Zs/c3914+qxG5lUXyHhYSJTnjLi3dS8w5E5pJs3PhrDYR8FFWR10FLt2/2vghEmt/J1AscWiuF3ZjqKVXk7f9g0tlguidAtkyVcEAiJiWVFHZh6JEMp1Vd5ofvBr7yG9CM2u5ZjcnxkLbK9dyxdrZlHBk6u/1EwgjZusQmFsPTYpqiR3U23GK6oZfg7lMrw3Sl6n/d/lBp8p2/Atg48MQ==
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=01vEMBP+AIsrC5NQCk+WSSYp1tHvGShg3O7HS4rvvmM=;
 b=SjkaX7Lj8UR5uoGKn1Qm4nAkZZT2zPMpsHUkqkOh20jfNXOtIrj8uvi7zqYL/10WQlx8lbfwQQA5lvz/Q0B9fTm1f+alHuiz9EDTdxpvCUDe2PeKVjZT9zvZ20JywfsRhjKWo1wBIxq+krOAkxL1MGWmHYwCuwXDwUutUq0ahTY=
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,
	henry.wang@arm.com
Cc: 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 02/10] x86/shim: zap runstate and time area handles during shutdown
Date: Mon,  2 Oct 2023 17:11:19 +0200
Message-ID: <20231002151127.71020-3-roger.pau@citrix.com>
X-Mailer: git-send-email 2.42.0
In-Reply-To: <20231002151127.71020-1-roger.pau@citrix.com>
References: <20231002151127.71020-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: LO2P265CA0204.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:9e::24) To MW4PR03MB6428.namprd03.prod.outlook.com
 (2603:10b6:303:123::8)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: MW4PR03MB6428:EE_|BY1PR03MB7261:EE_
X-MS-Office365-Filtering-Correlation-Id: 8f7eafb3-d170-4dcb-f46b-08dbc359ea7b
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:
	xLtdMGHdWUeCyT+p3z0DXHKBwkadepLJhvWXg6GJNiI9yjxhqiVJuY4gB4fH/Kxxd4792vMAnISW7ZkAWZzTk5HuCPc3SnotQNouudVU1DZNSUkDxZhTJdubY6AYjR1IBCEUNTbUtq5T4g8Ggiwj3lxoYCbyrhlAeHKHkolDustJ0j1NYhl8Z7p3EYpWm+b8yaj2RSrvISY61Rfpd2dIAamX/vJYdwoDA4BNZZEeOTN4+BaqyEBZXxw2hAC9A8n/0iaxau7ONDJjUSjoYKy9YpkypsM/WFBW6W4rD9b0IxM84gt/86vv57OcZWqCpYnnwm+dKrpWQWIOeZLiRhBsw5O5pokWO5iQwbzqc9fXc8OPSELNIybrLFJTs+DbyJejMDbi2sFi2M4Df+PoGGA1UdOsB0KreWvRRdxZ03RsFmxg6fXrakLmcoDCgBD1gfqya/LEjaCx97FK8UdbVmnNoLRIxYoO2I4KXAvZF+jRzIEzOCPr/1basJWZoXx4dxM6c/xsx/4mcI5LrV61m0PJFXlYD33RlgQZ6Ku9X9onRwrTFqFS2jqnFrtRFs8/2EaB
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)(39860400002)(346002)(376002)(136003)(396003)(366004)(230922051799003)(1800799009)(451199024)(186009)(64100799003)(4744005)(4326008)(8676002)(5660300002)(8936002)(6512007)(478600001)(6666004)(6486002)(2906002)(6506007)(26005)(1076003)(83380400001)(2616005)(66476007)(66556008)(54906003)(316002)(36756003)(41300700001)(86362001)(82960400001)(38100700002)(66946007);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?T2hBTUhVNkFSeGhOcTExa1VmbHlVT0JkUnRKVHNROCtjUnhjbW5wTjlzdHdO?=
 =?utf-8?B?MkRPN1BVbDQwRG1QSmwzVWpwYWVmeVlHcStzblJhNlBkenUxdW0rV0pJNXEx?=
 =?utf-8?B?MnMzekF6dXpVVVJDd1NpMDBNNEJqRmRJbDkrbVdvaERKUGMyRU1RbG84VUhj?=
 =?utf-8?B?QlNxWVlFbC9LcGtVdEx1b2RrNVAxbFViNjlqWDhGb3dvNDZaQTVzZU50V2xp?=
 =?utf-8?B?dzRtR052RlpjUWVLRVJobzJlOUdDRUQ1b0I1MkNXN2VabjF5UUpPN3hHK3g0?=
 =?utf-8?B?cVNKaFZsWkU2ZHloOVowVlZhK1U2S3ROMjhYSWJiYUc0REpwczNNVlNkbnJL?=
 =?utf-8?B?cWNnMDRqL054bGJ0UFFIRE01eDRUb1NwUnpPbG40YzVYdUNHbGVXS3VMdzdG?=
 =?utf-8?B?djhJZ25HWEdhMFlGOUdHMTJIU0V4SnZzS2pVcmJDMC8wZkRlT0xKTFBUQ2xO?=
 =?utf-8?B?ck5vRXA1RTQwOG5pN3BzZEs2dDNrc1hXUWtqNnF2MlhwOUdPc1NpTEVHU3ov?=
 =?utf-8?B?K0JkcVMrK0NPQkt2aGFncjZjbThMT2Z4c3lzcWphWmJQYjdQMm9qRnNNbGV3?=
 =?utf-8?B?T2J6VWJsWU9HWm5lMmVEQ2VyU3pJZ2hTS2g1b3ZjK3MvRk5XVEh0Q29oN0h6?=
 =?utf-8?B?VWNFWE5ISkRFQW1hWUNLQnhRc0dOUG8wYzNqWUowUXpxVWQzc1RLenlmeXFC?=
 =?utf-8?B?THJjWEJjSGRJd0hUSlBnNTFkY2pCVVVvWTFyaG1KT3BDYmNBUHB0UllkT3RR?=
 =?utf-8?B?SmRGOURnS3U2YU8vUGN5YnJSRGlRbmVBN09QSzhoVEdaSXdtZUk2aWR0a1FS?=
 =?utf-8?B?dGJrd3pic1NFcWwxT1JranJCOGk5ajVmcmNHZFdhRGpJN3NLNGU2bWNYMCtN?=
 =?utf-8?B?eWlzVW90dUZ1dTZRQmhXT0h5ck1jckVCWkFZakF3RkRIWmtyd1lsdUNrTWsx?=
 =?utf-8?B?ZXBEVmhzUUw5UTBmK0p2VndtaiswRGlmZHZTWnZEbzF6N2FvSEZneWVuZElR?=
 =?utf-8?B?TDFJUlA0ZXRza05lL2E1VjdJRGNZeGJlclk1aCtUenJaSXdLZVV5cEFNTU5I?=
 =?utf-8?B?WWtmT2srZStkeVFWK0JCcjQwSVpML0RSdUZhWHFBVmRQWExDdXcrbXU4c0ht?=
 =?utf-8?B?Qm0vam1MQXFnUFUyUWZTNzgzMDNvRkhWL3lJVGR6WlQvUUp2VHF1L055dzNW?=
 =?utf-8?B?UXVMMndhZGM2cncxc0hiZUxXRXlXWGFXamcwdEJEaHVNYjdnQWNtS21ETFRp?=
 =?utf-8?B?bUhMWE52MUZmenVwSDBzQlRYZVArQVpoVDJ6bE1ObWh2VnRkYU82VTZsWUU4?=
 =?utf-8?B?M2kvOTFMTTliZFZiQytoWGh0UE9CZWRnWjdWN3ZvWnlTZGhBUGx0bWVjR1Y5?=
 =?utf-8?B?SFVMMkNJd3N3S3drdEhTcUp1SmJ4T1hCQ3NEdFZibG9oZ3UwNjJHcTNMcDE3?=
 =?utf-8?B?Q2FpeW1TenBlcDMxYy8zc1oxRjgyUXlsMmxPdWNubXY3SUxLQVZmUWVHanBI?=
 =?utf-8?B?TEhud01RYy9LelBxckV6cUt5QmRld2E3N2kzbncxL2JsVFZOZGs1eHptQmdj?=
 =?utf-8?B?MjJoUE1WWXloRTFaWllpZTlOZTd3TWZwM3BOQzE1d3JhUWIzMTBFcGkvYXdE?=
 =?utf-8?B?L0ZLUmNmQ1hqMVRjdU0vK0V6WVAyUUZvdk01cWx3N2dNRG82Skd3S1dtWnlz?=
 =?utf-8?B?WmJEUTBFYW5zZHovZVNkUjdmRUJSVEhWVUllTXpjdnNjK2JoanRIeGI4bmRC?=
 =?utf-8?B?R1k2OW8zb1FGdmVIdGxleFJGOHVwdUMrandSN3ljYmFlU3RheXlpWVRKZHRj?=
 =?utf-8?B?M3NFT0duZ2l5LzdicWlTK3pmc2cvalZsdXU3cXpqSUZNWU5lcmw0TEpCNFRt?=
 =?utf-8?B?bXF3Wk81TXU5cnpnNXNhQlZnVUxvQmVOalhwZUN1VHdKK0hZYVhFOVoxd1g4?=
 =?utf-8?B?N05xV2dQOWNJZW1CTnc0QVVtL0ZqcWdNQVhwbnJYU253YURoMFU2T0RoRkpZ?=
 =?utf-8?B?SmtXSGYzM2pkVjhEOFRVU2Z1a0lWY3lsaHliUDc0MG1VVktLNXlQeEpZOE05?=
 =?utf-8?B?SkRqSkNWdUtqVEx6TlVmWUlqSVNobmk3cHc5K0hmR2NVYjV2R2lhelF6K0ZD?=
 =?utf-8?B?K21UemRMM2JPcXZ6a0wwalRWaVF3RGtwajN3UzJ5QzdwTUtzWmJzM0dMUVo5?=
 =?utf-8?B?bVE9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	gP3EMIjsKZEbd9fhkRVMQpxrEoM2SqXTPwU8ay866Mw5nUYsQriFQ+YuIkEuqreA7TutFfdwTKBTYBWJsK2vozfN0dMv8QlrQPVeWYQHCVVlU/oJJPcFLQGE1V3xA16ZnrincGiJhV6EiJgTZ3tGIAkvS00ZE+mCrpo9WfVKq/Kz2o7MAPvL8eaN3brAClDELV/DrNTeqv+xU5geEZbZiZiEJq3O1BYVQHsGDyQrMycsnAl+QJHOhc+2nPdZbhTFBVjfhAmeqq2kuGtPKGgTs6y6GzKBiTroeZ+8mypu+70hLa63dr/eLI1H9cYS90LKCaCuLdujCa+UWizXz/Sz/bJgnMRlsAcP+TobU2/b9SDKzUKifU+4iSyzn0uj5yhffAs++P2+3wKDceLnoo2Mao6pFrE5/nL28PBJCbayAaGq+9xqkXlaAuTUvCxhUm2nYZSxwCXXU8Ta91dXEyGzRSkRwvMNCge9r82Q1HVxhdBuVPMsOHD2vbWWe5GMm7d4Ej64NLx9bLdci222+VjSHGtF7eaJNN3BHJlh3hxFBaxH27OvD/AVuWHbTYsmOLMQqD6k4eXZevT2rt6zLMA564j6M3HeCJojZU0GJCy/6ry2k4Ochn9eU07FHe3D+psh54y1YjOfqpi5JVONvzfh8nQtbTnkNQv/9cFIS+tpxCYJLWqdRAQujBJHmUdgF8dz0d5dW4/GgEcLqTtmR9EsKefzJRH79v5IvpZ9jhctMEpJMWag4gFWItSqi5B7I/JIk2+D79hwMYpwq/87Fv3zFG43NrwQHBfdKWlVo24oGuT2yWjZ1uAoIA+YCRYdXmKSP9nrNnJwWbChVgXI9/TcFQ==
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 8f7eafb3-d170-4dcb-f46b-08dbc359ea7b
X-MS-Exchange-CrossTenant-AuthSource: MW4PR03MB6428.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Oct 2023 15:11:55.7373
 (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: S0/yRhcGJdUJILt00Z9c3U1sOrPuZKQeW1vGRb5DpHZUgM0DZRuIuJlf4Du0jwX8rdI4XaBgphb35/Xnjps9eQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY1PR03MB7261

From: Jan Beulich <jbeulich@suse.com>

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>
---
 xen/arch/x86/pv/shim.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/xen/arch/x86/pv/shim.c b/xen/arch/x86/pv/shim.c
index ca0e639db323..7e4bacf7ae40 100644
--- 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. */
-- 
2.42.0



From xen-devel-bounces@lists.xenproject.org Mon Oct 02 15:12:06 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 15:12:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611611.951142 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnKaa-0001K5-Et; Mon, 02 Oct 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 611611.951142; Mon, 02 Oct 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 1qnKaa-0001Jy-AF; Mon, 02 Oct 2023 15:12:04 +0000
Received: by outflank-mailman (input) for mailman id 611611;
 Mon, 02 Oct 2023 15:12: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=QbpY=FQ=citrix.com=prvs=63281d1e1=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qnKaY-0000iK-CI
 for xen-devel@lists.xenproject.org; Mon, 02 Oct 2023 15:12:02 +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 08f340da-6136-11ee-98d2-6d05b1d4d9a1;
 Mon, 02 Oct 2023 17:12:01 +0200 (CEST)
Received: from mail-dm6nam11lp2177.outbound.protection.outlook.com (HELO
 NAM11-DM6-obe.outbound.protection.outlook.com) ([104.47.57.177])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 02 Oct 2023 11:11:52 -0400
Received: from MW4PR03MB6428.namprd03.prod.outlook.com (2603:10b6:303:123::8)
 by BY1PR03MB7261.namprd03.prod.outlook.com (2603:10b6:a03:526::9)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.25; Mon, 2 Oct
 2023 15:11:50 +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.035; Mon, 2 Oct 2023
 15:11: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: 08f340da-6136-11ee-98d2-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1696259521;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:content-transfer-encoding:mime-version;
  bh=89MbL0AA6pA3j09tSq3RGefrgIUOeZgIRdfPXOZeMoQ=;
  b=fNwCJUxZJpTBtSlXMzbrvhaTiMDWFWgLY0eauyYRFL0xcfMkiZcV/hKX
   smYxAu4ndBnfA8IULRABVyW+68yw3cTyW9JI/Gy0PM2wG4qPMb7SLTDL4
   j5CGXcLc0Xx/wxaAL7i90AO/ziiTNvL3dEb3gc5yOAtCbIRuDttFN/pEz
   4=;
X-CSE-ConnectionGUID: 8zczh8/BSZCOU1bS3+9qSw==
X-CSE-MsgGUID: sXuusDf5S2ahrPxYFbt2kA==
X-IronPort-RemoteIP: 104.47.57.177
X-IronPort-MID: 123016509
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:TnjRJKyOvtTJXgsFAxF6t+f+xyrEfRIJ4+MujC+fZmUNrF6WrkUPz
 2ccWGvSa6mIN2LyKI9/a9yy8RhU7JPWn4NqGVRkpCAxQypGp/SeCIXCJC8cHc8wwu7rFxs7s
 ppEOrEsCOhuExcwcz/0auCJQUFUjPzOHvykTrecZkidfCc8IA85kxVvhuUltYBhhNm9Emult
 Mj75sbSIzdJ4RYtWo4vw/zF8EgHUMja4mtC5QVmPaoT5TcyqlFOZH4hDfDpR5fHatE88t6SH
 47r0Ly/92XFyBYhYvvNfmHTKxBirhb6ZGBiu1IOM0SQqkEqSh8ai87XAME0e0ZP4whlqvgqo
 Dl7WT5cfi9yVkHEsLx1vxC1iEiSN4UekFPMCSDXXcB+UyQq2pYjqhljJBheAGEWxgp4KTFc/
 u4YeHcnVSKooN/vyongCbh1vdt2eaEHPKtH0p1h5RfwKK9/BLzmHeDN79Ie2yosjMdTG/qYf
 9AedTdkcBXHZVtIJ0sTD5U92uyvgxETcRUB8A7T+fVxvjeVlVMuuFTuGIO9ltiiX8Jak1zev
 mvb12/4HgsbJJqUzj/tHneE37WUxXqlBdpDfFG+3uVanUCI6mJOM0cfVUGDsciXgFLkWPsKf
 iT4/QJr98De7neDXtT7GhG1vnOAlhodQMZLVf037hmXzajZ6BrfAXILJhZBZdo8pYkpTDol/
 laTmpXiAjkHmKGcTHuG3quXqT60NjkYKSkJYipsZQkP7sTnoYozpgnSVdslG6mw5vXqHRngz
 jbMqzIx74j/luYO3qS/uFzC3TSlo8GQShZvv1qIGGW48gl+eYipIZSy7kTW5upBK4DfSUSdu
 H8DmI6V6+Vm4YyxqRFhid4lRNmBj8tp+hWH6bKzN/HNLwiQxkM=
IronPort-HdrOrdr: A9a23:xqpZz6FN9m1+7GGxpLqEHseALOsnbusQ8zAXPiBKJCC9vPb5qy
 nOpoV86faQslwssR4b9uxoVJPvfZqYz+8W3WBzB8bEYOCFghrKEGgK1+KLrwEIWReOk9K1vZ
 0KT0EUMqyVMbEVt6fHCAnTKade/DGEmprY+9s3GR1WPHBXg6IL1XYINu6CeHcGPTWvnfACZe
 ehDswsnUvZRV0nKv6VK1MiROb5q9jChPvdEGI7705O0nj0sduwgoSKaSSl4g==
X-Talos-CUID: =?us-ascii?q?9a23=3AuiUQq2iuPK0dRwSV2fbqE7/omzJuIm/W3neAZGW?=
 =?us-ascii?q?DO01OdeSfcgTTqbpfjJ87?=
X-Talos-MUID: 9a23:Kso7RwSNqkqkvpGiRXT3tCx/L+tmvp/0AUAXqYU3lcOYby9ZbmI=
X-IronPort-AV: E=Sophos;i="6.03,194,1694750400"; 
   d="scan'208";a="123016509"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=lilj1/5dN+dgDy3LLIVwcnFp/soHhLmWTGnXbItjcHR9dZZfHYrajoXWn6K1UfBIBZl3rEhxwh3E2ZZaJCJPllHQ+IfwTu1Sv2GIpOXf3KOM5V+UC5/eGc0He5dw4r3VYlGgIklxFQhmjoG1U9qLH7ZBpNXvZ0qxUp1nbgGHypzrde9gBvFoZIfVS1xaRpeTYdMkNyeFY1sHYirJ0zK3VYnp/0P34HyRbZGCpff3IyAwq3CC/1603zRos8NVsuZ7L7E+NTTzupBnwyhlKGJ61BE7FH1ZOsJOad+5ivPAzRWANp9Qp07PWVE82Tgc6+9KY7nCaOowXwQg120uJwzGjg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=ZCapLEs8x3+5/GTRGxm23TN+ireMD0Zi0vUFCTJ5I3w=;
 b=l7h3pI3JIvJiXdbeigx0e4H9hGp/8wxEaCAutFBjgXLIVAg31fSEcvg/e4BLPXhrOp4vmqfcP8te/y+9MapuaTTPpZtGytfrnrpKkYyPbi1lFWP/IBf7vP16akdg1Oos4k9XKdACSHnf2bNcVG/Zhaq/TU7HNtROiMqw4QOLok737SfSdv63usZhoBGzBXU7t6dZ1A4ssSEHM9bP8ANbaKJbF38YNask0bGtaS0kiI9TZHPaLZuAGqwczVDRkANV9Hi7TQH72wh07WY2LJqh+gVyJ/3PlYkm/oihADekZYK1oYbaVca01WJTfhOSmYYeR5Uoizno4+Hue1cCW846tg==
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=ZCapLEs8x3+5/GTRGxm23TN+ireMD0Zi0vUFCTJ5I3w=;
 b=TTBoomylDiI/fZoE5pbgZ+A6AtXnIAM1f0y5I95S+WzR0V6q+CQT81tRutr52tW9a5BnzOIld3OZ9RXN9X4i0GupGkaFUWUlK2H+LbywoWkvg3NTiWDUWCclA1fAff72968IZWgj9jJ4QB9X7pHn/2uyPNTTViE0EayO1Y5DrAM=
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,
	henry.wang@arm.com
Cc: Roger Pau Monne <roger.pau@citrix.com>,
	Tamas K Lengyel <tamas@tklengyel.com>,
	Jan Beulich <jbeulich@suse.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Wei Liu <wl@xen.org>
Subject: [PATCH v5 01/10] mem_sharing/fork: do not attempt to populate vcpu_info page
Date: Mon,  2 Oct 2023 17:11:18 +0200
Message-ID: <20231002151127.71020-2-roger.pau@citrix.com>
X-Mailer: git-send-email 2.42.0
In-Reply-To: <20231002151127.71020-1-roger.pau@citrix.com>
References: <20231002151127.71020-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: LO4P123CA0394.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:18f::21) To MW4PR03MB6428.namprd03.prod.outlook.com
 (2603:10b6:303:123::8)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: MW4PR03MB6428:EE_|BY1PR03MB7261:EE_
X-MS-Office365-Filtering-Correlation-Id: 652424a6-046c-4c49-46cd-08dbc359e6f9
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:
	y7NaQNpjzivMG6j90Zl8dW4H/K9jcMDso9EbdxuyowDBovEM39UeSEnm+xLM4H+Yw4SnHrkrnvlcs32Z+xzCLXFCA08XCHSZJheI/Pqcfsog/uFCaqHzsZYueeNUETHcpNGen7fKZzStEFRQi1lWCtSYc3vQCIIBnV2kAcinEb7D3qF9xN8wl9d230H+Q/OWN1K89Kq39VKLtDrI4RBPgKIjqgF7MZt2zaw4n8EfCgZH9aNFYgEHErVlf3LxAWoFyNttO4zJjghkW/bcsKSgmdAzl9C0Lxcyx/8FuY9hc9h/z/9hnMT8VMCkXJ/pPoStQxvbXVnzTQJAtNIlmFu9gLP9g/q/r1dIJFAZQHm4op71M2CKEaXKSfRjOfwg/79zIfooEKqIZXQhJQtmUDn1I1vHtfwuk1PQbkRnqFkpupnZ4i4blZV7ph92GLfC0WrNLZ+CZ7W+Iiva88UQcHeAfwvv0xrpI6G0lCUQPCjCfzJzaSHOVNk29dco7iBW3CZiwR7YYItjXBXQOpqqj87UOxyzb3qtTagT1f99ATt6A9kpZ6ZWfGN8S8YPsb9A612M
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)(39860400002)(346002)(376002)(136003)(396003)(366004)(230922051799003)(1800799009)(451199024)(186009)(64100799003)(4326008)(8676002)(5660300002)(8936002)(6512007)(478600001)(6666004)(6486002)(2906002)(6506007)(26005)(1076003)(83380400001)(2616005)(66476007)(66556008)(54906003)(316002)(36756003)(41300700001)(86362001)(82960400001)(38100700002)(66946007);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?aDBpR3VaMkNJSGNXZytSb3lZc2JsSktXMmxuWkN6eE1HK2NWaVRHSHBxdkFt?=
 =?utf-8?B?ZnJuVmhyK0hYUWszOUNGTm1MbWVHa1dKd3JHQWV2Tm9lN2pNakw2SThBMnJ4?=
 =?utf-8?B?SkZ6UkwyQkErSnNEZUowQTVEbjRzNWxnYVgzSXZjK3ZhWXVTWHJFM3pKbUli?=
 =?utf-8?B?SGdNbldzOWZNM25ZL1NZL2NuNVBJKy9WR1JtbXdKbVUzTzU4RHU3VWNKenVM?=
 =?utf-8?B?RktIaFg5VEY4b0F1NVlKTnlxRGxueVNZLzNaYkVqR0pKQnpyNmllTm9wQ1I3?=
 =?utf-8?B?Um1nL29xMUVkTzN1UEtjdVM0TXYrbmZ6c0gvZFZuWUhLT0tocTFkOGN5KzVK?=
 =?utf-8?B?djhOM1E3MXNKdXJ5dWlEcUc1dGpNNFQ4MTZUZXFaakRYZkNEYUdMUW43cnhH?=
 =?utf-8?B?Nyt5aXcybTB5bUdiNlpUaDY5R01DaXVDTDNnbCtuRTBEQStlWEZKR1gxYWVx?=
 =?utf-8?B?Rlc2aG04dU4zWmdLdFMxMmRVU01PYnlnSjY4dEJkZjhsUVMwcXFSOUZMS3Fh?=
 =?utf-8?B?Z2lGS2RIS04xWVU5SXNyaERRUHR5N1ZnUlJlRjNzYVY5VlA5cnRhdjIvYkhJ?=
 =?utf-8?B?eXAzWFJKOWkyZkVjMDZST2M5U2p4RXRldmJKa3hwVTlUVW1zY1lrbUVPcVM2?=
 =?utf-8?B?NjdRSWdKeEdtSVV5Zk9GU1lFQ1lEMUlhY2RNUnpycXplRG0yemp3b1gzWVVZ?=
 =?utf-8?B?ZTVLc0FuSDBtdGZ2MURmSDExZk1UaENQTzhhVXZOSlpFV2pTdXBSY3l0cUNC?=
 =?utf-8?B?aWZqbEFWUG9lbncyS1BZTmllMjFsQmZrVHJtUEJFRmFTY0xxVTRJMEM1Z1hX?=
 =?utf-8?B?cHVMTGJ0ZjNXbW5QZTFOSGtkcHdVTTBxcWhXWTVCdDNqcmZTcVlIYUp1THEy?=
 =?utf-8?B?MXNMS0NPRkhRRFdROGRQZEp2QlZGcFpYR0M1UkdPV1RnbStTV0hDSlhpU1NQ?=
 =?utf-8?B?NUxHblcxVmdKQjdrRDlXTUM0T1ZvTDNIN3IrSXFYQ1dhVG9QYk8xN3BXcWov?=
 =?utf-8?B?eHlWUHRRNG1jSkNlbjQ5c0xWSE5ibWlKai9NaUkySTRGYUJSKzIvaDlCRzRB?=
 =?utf-8?B?QlR1Nmp1RDR6NnZGOEsvVUE2TlA2VEEyOFhBc1gwMFBDZXVoTWxVWTExQ0U0?=
 =?utf-8?B?bHI1eEJrY051QmwyR2VtdkZKYUlIek5MMmljcjlLcnFRUG1leXppWnFFRmJM?=
 =?utf-8?B?MDZ4MFBkNHNaR0JpaHREQVBNTWV5RjVKczVRRmsxVnd1MUVBWmtGcFNjMmdL?=
 =?utf-8?B?YTZOZWZRVnlaem9xc21ZamZ1MUdxWXpURHczaUtnR2trL2dFSzVvQlNLaVY5?=
 =?utf-8?B?SEZjT1ovUC9PL3FUV2ZUbnlBOHhwc1hRVmJ5dFVDMEZRazdPalUxcVU1MGhs?=
 =?utf-8?B?YmxKLzc5aisyRzhkTFVTejk0MWtYOUNRcmpvcjVUUkhVVHNsVndpaVpVd0VZ?=
 =?utf-8?B?M3BaazBMazU4RW93UFFOeklFMUM0dHZuTDlmRU1YWUxmeFIvUm1nOFJZY0FS?=
 =?utf-8?B?akZHdVM2ZXE2UXo1YWRrZDRjbjRsaG1DdEhBMXVPdm5meisxZlIra2gvQ085?=
 =?utf-8?B?MDB0WU1JTHBVcm9kNWdLZ3FzWUtnOWtqMXRSTVYrUWtNZnlBemY5YWtURllr?=
 =?utf-8?B?SzNQUGgxZ0NQSlZhRkgzNFRqejBhOWovQjlzdldMci8xeGVoR0JLcmNRb3ph?=
 =?utf-8?B?ZGkyZUthQ0JkR1I0SGZKbDJyNmRMVndaekVCdWR3RGYvazNrbi9NRk9CdmN4?=
 =?utf-8?B?VUZGTnNKNDNHUmNVZGRwRnJkbVZ0ZG1vU2JDNFg3TmVBTHFpYndwNjlMeFd2?=
 =?utf-8?B?RWFRN1NuTU1ZT0tFcW1GcWNCeVROQ1RQcjRtNDNtQXd0bFFSK01IZzNpa0tD?=
 =?utf-8?B?MUFMK0NoVmoxaFhPZnVYMWUzWkUxQmhVNXA4OHZ5WXRWZGwzbnYrSS9ELy9w?=
 =?utf-8?B?NitKbEhrOFU1bUhJemMyQ0JtZk8rdzE1dVZCK2RHeTdDS2ZhMjBUbmZFMXpm?=
 =?utf-8?B?cUJ2NmU1UkRXWW9PS1pjcERWc0dYb1lvcFNWaUtzcG5sT0NqdWlIQ3ZaYnVS?=
 =?utf-8?B?ZloyNFYvdWE2bUJGMkJSWjhLcm1ucTZEU3FnUEFwaitjSG4vV3oxT0R0VGMz?=
 =?utf-8?B?aWJPSHFsWGc2Rk9qeURybjRWL1FCVngvNmh1T0laZWhkSUJEYUJ5eEVKZm5i?=
 =?utf-8?B?eGc9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	0MemQD8/KLfsONCJ+T3kPjM+e5sVzpL1OWHXPAfiq5dDRywNSEIv4tWzriZ42c02JJh3EUyPrUYJiLQt2JKiBzvK69D70ycwOt9ZLmUzCH2Ohj6ndOyAuccRwsYoutCvFKK0Uhg0/kLiSnyHbnifZrJKX6UMmoRqzMOlcZ4ZsQRq10g778TrJermljOkmWX8umbjH8q6cJ3pQisWmrecvCszKm+XJiANEpvReJCCkFOcBSiB2gcI3t5oG+KZ4NyBTJR8n080y2QXUkbVPeKxEQS8EcpcbLNr0SLSLb1etUYmbl8Ql5wX+pUUjs6QgNpxG8wS9qalgU+jg86WR09mjnypzux350N17gVWGK8W/2A0nMm//o4LkHCDgT4xvdBSHycaAMnBASFv3PxyD8COp/vQHSfBRq3cW0ujUR6+es2rhIh1kjycN7WUf7dOn9O+z3Dx5EcSIKW2Ex34r+mIvZUx4DR588dMsBr03JpcYvmykY5PTPOGhW8a9rbljjYDbPAQRiGmXbHb5NL4evlBJ/3FyjtBviC1SiQqi8A1RAHIgr3FQp9Wyvsbd1IUrGg+LPh27d9MGrREZ8DMZu6S8KR/bKPYk/XpC9ofBF6OfEDBOVr8sSqfBLp37+6q/mTNCi6HmdGTuvdTx+ip2IxoMoThbHd9pUeXOo9CXXA4OwLci2H+eWrlbS61WgcOqbYrHXGp2DCDoOh1oZkhnKl0XqxNXNWty3E1P4w0UuKOSJ5rDhPHm0ChiFlhcvScsRniDq67lhqBfSqcKYZ3+iP50rDBgt36iOza7TrgYsOGsp36NaNKKEgKDOQvr5QttI4qdEsThNC9SbwJmn2uuPgpm8d0AqSMbgfWFnRxXHSRI+kfpFPGo6IjNTwqLOL62fSL
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 652424a6-046c-4c49-46cd-08dbc359e6f9
X-MS-Exchange-CrossTenant-AuthSource: MW4PR03MB6428.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Oct 2023 15:11:50.0218
 (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: hTBb32C7GRXYlmq9+USVN3xLKRzT3rl1vBZMqbxMtTQ6WZ3J+X3xLstaNGV8fI45dt6a0uzJZmv/4lz0quWzyA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY1PR03MB7261

Instead let map_vcpu_info() and it's call to get_page_from_gfn()
populate the page in the child as needed.  Also remove the bogus
copy_domain_page(): should be placed before the call to map_vcpu_info(),
as the later can update the contents of the vcpu_info page.

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.

Fixes: 41548c5472a3 ('mem_sharing: VM forking')
Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
---
Only build tested.
---
Changes since v4:
 - New in this version.
---
 xen/arch/x86/mm/mem_sharing.c | 36 ++++++-----------------------------
 1 file changed, 6 insertions(+), 30 deletions(-)

diff --git a/xen/arch/x86/mm/mem_sharing.c b/xen/arch/x86/mm/mem_sharing.c
index ae5366d4476e..5f8f1fb4d871 100644
--- a/xen/arch/x86/mm/mem_sharing.c
+++ b/xen/arch/x86/mm/mem_sharing.c
@@ -1689,48 +1689,24 @@ 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;
+    mfn_t vcpu_info_mfn;
 
     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 */
+        /* 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);
+            ret = map_vcpu_info(cd_vcpu, mfn_to_gfn(d, vcpu_info_mfn),
+                                PAGE_OFFSET(d_vcpu->vcpu_info));
+            if ( ret )
+                return ret;
         }
 
         ret = copy_vpmu(d_vcpu, cd_vcpu);
-- 
2.42.0



From xen-devel-bounces@lists.xenproject.org Mon Oct 02 15:12:06 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 15:12:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611609.951122 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnKaT-0000iX-R2; Mon, 02 Oct 2023 15:11:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611609.951122; Mon, 02 Oct 2023 15:11: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 1qnKaT-0000iQ-OK; Mon, 02 Oct 2023 15:11:57 +0000
Received: by outflank-mailman (input) for mailman id 611609;
 Mon, 02 Oct 2023 15: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=QbpY=FQ=citrix.com=prvs=63281d1e1=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qnKaS-0000iK-Az
 for xen-devel@lists.xenproject.org; Mon, 02 Oct 2023 15:11:56 +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 03fe02c6-6136-11ee-98d2-6d05b1d4d9a1;
 Mon, 02 Oct 2023 17:11:54 +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;
 02 Oct 2023 11:11:49 -0400
Received: from MW4PR03MB6428.namprd03.prod.outlook.com (2603:10b6:303:123::8)
 by BY1PR03MB7261.namprd03.prod.outlook.com (2603:10b6:a03:526::9)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.25; Mon, 2 Oct
 2023 15:11:44 +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.035; Mon, 2 Oct 2023
 15:11: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: 03fe02c6-6136-11ee-98d2-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1696259514;
  h=from:to:cc:subject:date:message-id:
   content-transfer-encoding:mime-version;
  bh=jJsAOx8kE/kN1hdqURUPL3sawGxjRQ4dpNqXCPPjqIs=;
  b=ggF6cg5OSyWG+0+i9MOs0G2flvPxjeVYMW7TUXPkv95xepHAEoRIIbkG
   6l3ejlYux6P61W2R5naz9BxT5FWJ295oO0p5PzMMZ6XChBw6ghtKSpMBG
   1sqtWCTmXP4DICKmGE+Xxv4tSRfnj3IXkf/07z6vEWHaAxHh6kO3Qasy5
   M=;
X-CSE-ConnectionGUID: xtF7i30RRDmcBqkzfiVY9A==
X-CSE-MsgGUID: 6OtbiRVETGSCFHNbz+1CmA==
X-IronPort-RemoteIP: 104.47.57.169
X-IronPort-MID: 123653168
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:x9Fk/K77FzFmvnN1pVF5MwxRtMnGchMFZxGqfqrLsTDasY5as4F+v
 mAWXWiAMv6LZDP9Kt5zPozipEIOvMCBzodrHlA4r3ozHi5G8cbLO4+Ufxz6V8+wwm8vb2o8t
 plDNYOQRCwQZiWBzvt4GuG59RGQ7YnRG/ykTraCY3gtLeNdYH9JoQp5nOIkiZJfj9G8Agec0
 fv/uMSaM1K+s9JOGjt8B5mr9lU355wehBtC5gZlPKgT5geH/5UoJMl3yZ+ZfiOQrrZ8RoZWd
 86bpJml82XQ+QsaC9/Nut4XpWVTH9Y+lSDX4pZnc/DKbipq/0Te4Y5iXBYoUm9Fii3hojxE4
 I4lWapc6+seFvakdOw1C3G0GszlVEFM0OevzXOX6aR/w6BaGpdFLjoH4EweZOUlFuhL7W5m5
 eA2dzFWNiq5q+e96qu4WOdtuPVyBZy+VG8fkikIITDxK98DGMmGb4CUoNhS0XE3m9xEGuvYa
 4wBcz1zYR/cYhpJfFAKFJY5m+TujX76G9FagAvN+exrvC6Ok0oojumF3Nn9I7RmQe1PmUmVv
 CTe9nnRCRAGLt2PjzGC9xpAg8eWx3ilBdlLSu3QGvhC3nqPzG0pNjAqemCQj9mfgFz9AvlaA
 hlBksYphe1onKCxdfHtUhv9rHOasxo0X9tLD/Z8+AyL0rDT4QuSGi4DVDEpQNwrstUnAyMj0
 FChlsnsQzdotdW9VXuY/6y8sTC2NC4aPGIGIyQDSGMt4dPuvYUyhRLnVct4Hei+ididMS706
 yCHqm45nbp7pcwW06S2+3jXjjTqoYLGJiYu/RneVG+h6gJ/Zaamapau5Fyd6uxPRLt1VXGEt
 XkA3sSbsuYHCMjUkDTXGbtcWra0+/yCLTvQx0Z1GIUs/Cis/Hjlep1M5DZ5JwFiNcNslSLVX
 XI/cDh5vPd7VEZGp4ctC25tI6zGFZTdKOk=
IronPort-HdrOrdr: A9a23:1Dhjfq0Zgjixb5PWw6h1YQqjBHYkLtp133Aq2lEZdPU0SKGlfq
 GV7ZEmPHrP4gr5N0tOpTntAse9qBDnhPxICOsqXYtKNTOO0AeVxelZhrcKqAeQeBEWmNQ96U
 9hGZIOcuEZDzJB/LvHCN/TKadd/DGFmprY+ts31x1WPGVXgzkL1XYANu6ceHcGIzVuNN4CO7
 e3wNFInDakcWR/VLXBOpFUN9KzweEijfjdEGc7OyI=
X-Talos-CUID: 9a23:tcA+jWH9MQksNGFSqmJ36GBLG5t9SEfxyXz6OkyqB2dXeey8HAo=
X-Talos-MUID: 9a23:9y/v5wguHJvoB3KJYLDbbsMpauB06aWUNm0xvq4tlemiPz4zYhyYpWHi
X-IronPort-AV: E=Sophos;i="6.03,194,1694750400"; 
   d="scan'208";a="123653168"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=HdNyFeUVKN/HR8aQmSHzIZ/Xul83aWti7Gh66saFmT0OfksOZAAg/fdNcI+aKQgtUXuIKyg/m235MRAA7MAN7RbiybOFn8pnNn98NPh89UYMAgB2QNwvluCUmkI83jvSdNAdid62EoUEEZ7+rOZAb1CYJ5xs/oUXLR4AIt+3e92L2c025/VA8b1luwPB0611qyBxdC+zGVITgBPLkOEjNT72pp8zR28fRbpDakOwCCMIMt91gI07jwJCcV3F/0mbIw0K+F0Cw5IKwTLBf/JmrC2Z5BLsHaFcuaBx9ZjtZTQLEmO2nBtwfwqGMlZRrp/tAlyyoL6tcL8o1K8y3nmMJg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=UPu3fqfcmif+jqYw8nntfTTKnqMjKbEV4zKLUA72rgA=;
 b=aev8UkgXjQ4RyyN91YzNF12RAJXwIFzfczVyHy5Qw8+ShFGu/D0+rtG4kzY84JzE5zW/+6z8QNArCpMGSONWXXT9NrkjUkz69ig8Go2QKJkvU+6haMf8XIyAKbLSCcHO+B7BjXqBi7e+wa7dqH6hKoWAhNm43QgymW93FJ0fW6IwD22JoPLG4F4yd/o1RtjZmp39nD1VFrR/+5NDXcrCluNeHbNSZvHGYij7baNsgaFBl5g/056fUAnawpCdhBFAxpqhGgSfFMTiFQyymJH52oFA9IhIdAbOicydJSjedV5xvpgpb0aL869rCZfMg/jPoiKP5odRWtiSMZtb+qBdHQ==
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=UPu3fqfcmif+jqYw8nntfTTKnqMjKbEV4zKLUA72rgA=;
 b=Q39JEcWuvCFyfmu0JDV1IW5F47FeillrUID9fvvwhFCV2yB/riE7PZVVxQ6CVUobIjcGxm7oyAGCbgoiAAQERshfvzOGwuDKMGFz51zg3rwIuUO1d/Br1vlNXLtxnddGsOGhm5ioSiwOQh7SHVIlQ+5a2wW2ZGqPCCV5LkYhc9s=
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,
	henry.wang@arm.com
Cc: Roger Pau Monne <roger.pau@citrix.com>,
	Tamas K Lengyel <tamas@tklengyel.com>,
	Jan Beulich <jbeulich@suse.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Wei Liu <wl@xen.org>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>
Subject: [PATCH v5 00/10] runstate/time area registration by (guest) physical address
Date: Mon,  2 Oct 2023 17:11:17 +0200
Message-ID: <20231002151127.71020-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: LO2P265CA0510.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:13b::17) To MW4PR03MB6428.namprd03.prod.outlook.com
 (2603:10b6:303:123::8)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: MW4PR03MB6428:EE_|BY1PR03MB7261:EE_
X-MS-Office365-Filtering-Correlation-Id: 1f547de5-da4a-49d0-2ac5-08dbc359e323
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:
	YwS6EM21O1VtzEhcW8vlO4hUPLyZ90u58EPkjhE2e4heqdNalwtdF03cojZuGjzD5UlYoLrDDvw/KOmf6LJv5WhIKZLMp+ZlztPur9sfb98uq4CdCY/AWRoXmSS1394a71Suj1RkOcUNGrwHdFgeUWm9okE0V1uBOYcOalSZNxNxWiguUh2pg+3T6tpjuj0b8KmcavH6nrD/05dVGAuXTA7BOS9NA8YbkM6pyMVvb8DFa7aulXcREGRlSxNlyfRxilUictLF4sbZgGBUtr3asEWC3DU/gzZo+Unzi3izuXbsoc0OSZfSHN/wqBfndub836YMQQSMTjVge0CHdiuNfGo5rXkAGj7j9VIzxdYg8H4UMIs+/3rBZppoVt8Moj4+U/gIvYsqNrlacbNH5ZNuZ5DF4VQBGs3l12czYe1lfkSVrC7xiZGExMtnnV6QrfYnmGNoBNGP8vxS7DU+ssC6E8noUdHa/n5bz43DY23X52R2su9DquKnwDMdOUn6nJDE76rv0QdcKoUH3SvyvdX8hcFPxCLX0h0ZTEVgiP6Ao62ZdBgArzDxSU+yeK7Llisq
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)(39860400002)(346002)(376002)(136003)(396003)(366004)(230922051799003)(1800799009)(451199024)(186009)(64100799003)(4326008)(8676002)(5660300002)(8936002)(6512007)(7416002)(478600001)(6666004)(6486002)(2906002)(6506007)(26005)(1076003)(83380400001)(2616005)(66476007)(66556008)(54906003)(316002)(36756003)(41300700001)(86362001)(82960400001)(38100700002)(66946007);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?Ty8rNDdpU2dQUFkxWFEyMnA4WS9QMVhadzB5KzFBSnpTNzNRUDdYKzFnZVpD?=
 =?utf-8?B?N0kyZEhjNHB0RFpHOFlKR2RQOXAvTEVnZ2dFVXlkWXBnWlN4dW01SGRaNmxU?=
 =?utf-8?B?R2F4NjhENHBaNGl3WFVXYTE5SXBNeWt3REl1VXQ3THhaSlloa2kwQVN3OWY1?=
 =?utf-8?B?clJ5ZFRjdE54bWhlOGZOT253WG15VkE4T2V0eCtBeTE4MENpQTRDcGIvNWxY?=
 =?utf-8?B?UGNaWEdxaHBKaDhQQnFZL0tmekluSUVhRms4TW41Q2xMU2V0QU1zZGY2RUUw?=
 =?utf-8?B?djdrZU1uVGRPR1FRQlpYR1JCcklHd1lZRk9IVVgzdGNsd3V4dU1WUUEzUzZ4?=
 =?utf-8?B?NHJxRDhkbnRUWExEZGtvK3F1RVRWRGFHTThoa2hPeU04OVF2blVKZ0hvTWlQ?=
 =?utf-8?B?Z2JXYzAwc2dPQ2NZUk1IU3VtMTBvekwrcEdVNzh3Z29IOEhYMUE1cnBqYndS?=
 =?utf-8?B?SCtQTnZYcGtadUMrT2hodTQ0SEFJYTNVaWkxVSt1RlVzUHYvNCtSdUJkL1Ba?=
 =?utf-8?B?ci9zUkJqYlhOcG5LN3hmOXQzMU9vNFh3OExibVBPc3pKWXQzN21ydG42Mm5v?=
 =?utf-8?B?MnpIcllZWUhoUzM0dzV4RGZ2ZEFSazIrUGVCZjlpRUNpdC96VFhzNzdHS1B2?=
 =?utf-8?B?Q21EQXZ1ckNUMWtnSHVKcHpzcFBCd1h1dDB3emE1alRpRzRhd1hlYVovdXJI?=
 =?utf-8?B?NW1YU1FEb1p3V3ZTUmUyWVJpelVJcm83UHozRzBqQ1djN096Qk1LN1AxenpS?=
 =?utf-8?B?QWdSeU9IUHkxbWIwU0NPVzJBS1BMYTI4RW16eUhOSFVXU3VqNkJNK296Vml4?=
 =?utf-8?B?NnhyVTdZV0U4TzA4NCtwdHphZkRoUUNlaEVSTjBMQWx3TU1NaDBwczJvaTk0?=
 =?utf-8?B?Y2w4ZC9LOGNXNCs1VjQ5bWNNR0c0c2FrNzdKbkR5MExFUWdCYjd3Sno0NEpP?=
 =?utf-8?B?UnloTmtBY213OEZGRlM4bHNTL1JBeDlubklRQVVPMStFVnZ0SS9VNnM3eUFk?=
 =?utf-8?B?WDcvd3RWTVpTNjE4NGJ5NnFERnAyUE0xN2liRFdBY3FsaWtHcHJ6RGxvT3Y0?=
 =?utf-8?B?dys3MlllRXhXcjdzeXplcGFIbDlTYkhFUmV5M0ZOL2pmMm03MEZPKzhpTENo?=
 =?utf-8?B?cHdMdDZTdWtMcnpYQmNYcWNyVHYzQXRMNDNHbjI4amhnRFBjWG5jcGtYVVlI?=
 =?utf-8?B?anlYb29ubFl0U3laOExHdURCdS9xMVc5Z1lHUWZ5WHdUZG9tOHBIREQ0akZx?=
 =?utf-8?B?Z3JpaS9yYjF6NGt5T0pqSllyT1dsMEMveEFWamYvRHFTQitKeXFGRlJUeWRV?=
 =?utf-8?B?RGFSVTk1VFBVeTV3ZUY2SUhWeG1Da2JtSnNYaHlqRkl2eUxJTi9LNnFwcjNH?=
 =?utf-8?B?WnFFOUdjSDJFWlpMRDZsK05MaFVzNUFyY2lOVnI2Z2lhMlFMUGZvWFl1dExN?=
 =?utf-8?B?WUxldmxLMDhwM3FGd0FGVVdSNUtkR0x1cXc5Z1h0anBhSHpZR1ZLTW5CVmRm?=
 =?utf-8?B?ZjNkZUkxQzlSTDBuRHRSVm5NNDZ3TzMvazJEaDZTT283TFVFdzMva1Izdkg1?=
 =?utf-8?B?QXk4UkpmOVFiR1VTOUZza0RVNkh1Z0YydjA3QTBoOUw4T1JVc0hTYW00V3No?=
 =?utf-8?B?RHNRVGdRbzMrSnhiQjlUYlIxVHYwNmt3KytIbjY0dGlUL3Q2TE9rS0NTc3R3?=
 =?utf-8?B?TFM5ZzczNjJEZ2JGc2VKMHg4WFFTbmdlQ1dlVjYxWHd5dHg4NE9KUmpnek9t?=
 =?utf-8?B?L1NRcGI4THpnN01CeWtOTmt6cGtpK2w2SHBxaS9pVjA0TXVjMXRpRXF6ZElL?=
 =?utf-8?B?UjhIYnpPYzJ2dzFJTkYyWUlWSnp0U1ZZY2JuNzY1V0RjQ1RHMDQ3M1c1cmR4?=
 =?utf-8?B?QkRha01IMjFBbkUydXdnRFhKNG5pREo0MzVXNFZSSFBWOUlhVnRLa0NCZW94?=
 =?utf-8?B?UDB6dzQ5elU1dlpja2FhWmdDWUIwN2tXOGMvR1N5dDlDbmx1enNmSDM5VjFs?=
 =?utf-8?B?VEQ1OFdCV1BvaVdMNGtJYWJPOFRzVTl1NEFCNmVpUmwwaGt5SzJ4TUx0MDBH?=
 =?utf-8?B?RE5lclNRNjJPbnJQVVJqMUQ3b1M1UDJySnFTZHVsMThRS1dFL0lEQ2xWQTZL?=
 =?utf-8?Q?in/JDTHpcXRi+LslBmOhyl3Cn?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	eMBf/t5q/+NL21GoyiJhR5VcnGLyUjvUc1DMkKMBQURpBGd+nXRPAdeVgMO0lGQ/Fp5tuITTHqtuSd2TPdP8z2vlRMgiCa0KCBSHMuIM+bLo0DDm4PMHCHdPl1zwlyqjXrECm8w0dzQ93O5XO+xdMDKw9NBgN7efU3AkKLyQ9mwDtJTRalkUOT87WQxw/+BmE2bdvB3i9dNH9Zbv3df560qVfFjlhPB0SX6sipmIuuTti6AaJKplDKZsZYd3jMHrlLzvAvQSC7TF6ezLCVOkHUXhGu9RdJOyzt1JqpBq0cPRMl6PosvpEec2FuJxF8mK3EatrB6BPltBCO5e3zh7R2sz9850tNUnXeTsU5/rZCgknPc9UrZ6lEOlvtJ5M/1DiZofNRZ85XvGirhDr0L+nh+8isP1bp6KgpUOp7c9zL7fMbBnH4nBVFK1UR0EnmCJo956oKb/aVFX2diWuvQARjS4qO7fARk1S0spyBvLx+BFfiN5k95PUuc9ZnrUUEdiBAGHl2pwoMqGZbjnF+MmMpBfytc1nuHV4dy77VHg6V5okpMivXFM0Bw6sYdJuXTN91Y7UAJpkKhwE9RJNUzXogpyxzgN6PDlMUMAv8X+W6DUhTbL/ZqIl+/JAqJAKB0ivka7tdJQWQGrTuYgf6ADvIf/rcXb1RguW6SxgNUnSzL6EUJhkF3gac8wQx0Wr3mvB3A8PWmePavcVCX7pJtUG35HPtdCRnoqr2ZaWJFileY+2FwV/898t9HjE6GCZHjRbIe2G+ytxstkUk03RhMgAZ30jEw2BsEuwbk1jCcOdb5XjsxPTeSQt7e5Ahd/y0MZ8ziIUAIBPNODO6ktTXE3rZSTOQqyOKicYtAbK6r77orEuCOOW6XsZaCTkeid+3mwNHI/GsAfDAZo+P19xDD2niyIzu72EWVans+U+yE2fIg=
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 1f547de5-da4a-49d0-2ac5-08dbc359e323
X-MS-Exchange-CrossTenant-AuthSource: MW4PR03MB6428.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Oct 2023 15:11:44.5292
 (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: qln5HNpVCToAl5VW9wNNj7pCXvgS+tTvrRynVy78ekC5chvoE2P5qqU8nEIDmttQLVMTlOavZGWtZvI4TfeZ1g==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY1PR03MB7261

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.

v5 adds one vm-fork specific pre-patch that does simply the introduced
code later on.  It does also fix a vm-fork bug.

Patches 1 and 6 are missing and Ack from the mem-sharing maintainer.

Whole series will need a Release-Ack.

Thanks, Roger.

Jan Beulich (9):
  x86/shim: zap runstate and time area handles during shutdown
  domain: GADDR based shared guest area registration alternative -
    teardown
  domain: update GADDR based runstate guest area
  x86: update GADDR based secondary time area
  x86/mem-sharing: copy GADDR based shared guest areas
  domain: map/unmap GADDR based shared guest areas
  domain: introduce GADDR based runstate area registration alternative
  x86: introduce GADDR based secondary time area registration
    alternative
  common: convert vCPU info area registration

Roger Pau Monne (1):
  mem_sharing/fork: do not attempt to populate vcpu_info page

 xen/arch/x86/domain.c             |  33 +++
 xen/arch/x86/include/asm/domain.h |   3 +
 xen/arch/x86/include/asm/shared.h |  19 +-
 xen/arch/x86/mm/mem_sharing.c     |  73 +++----
 xen/arch/x86/pv/shim.c            |  10 +-
 xen/arch/x86/time.c               |  34 +++-
 xen/arch/x86/x86_64/asm-offsets.c |   2 +-
 xen/arch/x86/x86_64/domain.c      |  36 ++++
 xen/arch/x86/x86_64/traps.c       |   2 +-
 xen/common/compat/domain.c        |   2 +-
 xen/common/domain.c               | 324 ++++++++++++++++++++++--------
 xen/include/public/vcpu.h         |  19 ++
 xen/include/xen/domain.h          |  12 +-
 xen/include/xen/sched.h           |   8 +-
 xen/include/xen/shared.h          |   3 +-
 15 files changed, 440 insertions(+), 140 deletions(-)

-- 
2.42.0



From xen-devel-bounces@lists.xenproject.org Mon Oct 02 15:12:14 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 15:12:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611612.951152 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnKaj-0001xv-NY; Mon, 02 Oct 2023 15:12:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611612.951152; Mon, 02 Oct 2023 15: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 1qnKaj-0001xo-JM; Mon, 02 Oct 2023 15:12:13 +0000
Received: by outflank-mailman (input) for mailman id 611612;
 Mon, 02 Oct 2023 15: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=QbpY=FQ=citrix.com=prvs=63281d1e1=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qnKai-0000iK-K0
 for xen-devel@lists.xenproject.org; Mon, 02 Oct 2023 15:12:12 +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 0f0f17f0-6136-11ee-98d2-6d05b1d4d9a1;
 Mon, 02 Oct 2023 17:12:11 +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;
 02 Oct 2023 11:12:04 -0400
Received: from MW4PR03MB6428.namprd03.prod.outlook.com (2603:10b6:303:123::8)
 by BY1PR03MB7261.namprd03.prod.outlook.com (2603:10b6:a03:526::9)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.25; Mon, 2 Oct
 2023 15:12:02 +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.035; Mon, 2 Oct 2023
 15:12: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: 0f0f17f0-6136-11ee-98d2-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1696259531;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:content-transfer-encoding:mime-version;
  bh=6gHhxFy+J8280ZMPe8YdCojqqUzWecDthtEiavpBLrU=;
  b=Y59ob4G16EYbHfvqLg+yIAJef5XjO92f/oHqF6Q7xdfvnuJ+Oh9ZmHan
   Gzu5kXxFNStrOfX6Vjb3SXjYuK74Zcymqc9KJjHGds6QLBil/O7nghUF5
   ca5L6YhUv4FwVSzd89t5NmJCj6/BvQRH8tyRspeoDj+3fINrIG60JY8X1
   I=;
X-CSE-ConnectionGUID: vwv/yUlCSAChbpnQdCPfaA==
X-CSE-MsgGUID: it33cAXiTQ2FyjIh9QvMYA==
X-IronPort-RemoteIP: 104.47.57.174
X-IronPort-MID: 127150636
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:SnCLT6pNW2KxtPo+gMuvVi/OXF9eBmLvZBIvgKrLsJaIsI4StFCzt
 garIBnXbveON2X3eI90at7lpB8Ev5SDnIAxTwVvqiA8QykQ9puZCYyVIHmrMnLJJKUvbq7FA
 +Y2MYCccZ9uHhcwgj/3b9ANeFEljfngqoLUUbOCYmYpA1Y8FE/NsDo788YhmIlknNOlNA2Ev
 NL2sqX3NUSsnjV5KQr40YrawP9UlKq04GhwUmAWP6gR5waGzyNNVfrzGInqR5fGatgMdgKFb
 76rIIGRpgvx4xorA9W5pbf3GmVirmn6ZFXmZtJ+AsBOszAazsAA+v9T2Mk0MC+7vw6hjdFpo
 OihgLTrIesf0g8gr8xGO/VQO3kW0aSrY9YrK1Dn2SCY5xWun3cBX5yCpaz5VGEV0r8fPI1Ay
 RAXAC4ScFeSuuad+5uQSuN0gP0vB/HlNapK7xmMzRmBZRonabbqZvyToPN9gnI3jM0IGuvCb
 c0EbzYpdA7HfxBEJlYQDtQ5gfusgX78NTZfrTp5p4JuuzSVkFM3jeeraYWJEjCJbZw9ckKwv
 GXJ8n6/GhgHHNee1SCE4jSngeqncSbTAdhNTeDgqKU06LGV7m0PU0YdfGu6ncDjpF+8etIOE
 lIxywN7+MDe82TuFLERRSaQsHOC+xIRRddUO+k78x2WjLrZ5R6DAWoJRSIHb8Yp3Oc2SDowx
 xmWltXmLTV1tfueTnf13rWeoC62OCMVBXQffiJCRgwAi/H8pKkjgxSJScxseIa3k9n0FDfY0
 z2M6i8kiN07ltUX3q+2+VTGhTOEpZXTSAMxoALNUQqN7AxjbYqhT4Wt4Erc67BLK4Pxc7Wal
 H0Nmszb4OVQC5iIzXWJWL9UQ+3v4OuZOjrBh1IpB4Mm6zmm53+ke8ZX/S16I0BqdM0DfFcFf
 XPuhO+Y37cLVFPCUEO9S9vZ5xgCpUQ4KenYaw==
IronPort-HdrOrdr: A9a23:x8Rm563EYxJwQqK48Jpq2gqjBLYkLtp133Aq2lEZdPU1SKClfq
 WV98jzuiWatN98Yh8dcLK7WJVoMEm8yXcd2+B4V9qftWLdyQiVxe9ZnO/f6gylNyri9vNMkY
 dMGpIOb+EY1GIK7/oSNjPIduod/A==
X-Talos-CUID: =?us-ascii?q?9a23=3At2NXu2olz6tktoaObBqAaMnmUd46bDrM8XP7GGa?=
 =?us-ascii?q?TCWxxToSZYmee8Yoxxg=3D=3D?=
X-Talos-MUID: =?us-ascii?q?9a23=3Atn60sQ/c0GPDktsl+S3FFlSQf8Z0uP+lIXAMrax?=
 =?us-ascii?q?cldiGFCwhAim4vR3iFw=3D=3D?=
X-IronPort-AV: E=Sophos;i="6.03,194,1694750400"; 
   d="scan'208";a="127150636"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=JjL+MVsLPPengiOIOnasL8CE/lGTyGQE/wjz2pqvGx772wKtMEHtX+StBgpCsyXvqJd4NZJk/MOsNIQFLPofvAdChEzpnHkKCuFLl9Crl858Vu8rDsZGDL+rW/r8OrchBHJtA7VYsW3w8D7UsGUwyjcI1qI/c5HUMaGfY4RMnD/gWe3Ygi5WYRdTYCY4WSC3e1sOTJaIkX82sjQKxLbZyhplzZFs7/Q8UgmYCvP7uoLweny3/k72xtf5XkS29QJk7UW+FSgxHs/vip8dx/33wn7wjQ2TMN2RbOLApWrXcZqwt82aOq6gRDhXW1PnQCGJX9C/Y8Vj+U4XuCIKrbc35Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=t0a+M4UUU+XHTQe2PaZicm+9CI7a7rFkdkSd/BDJVyU=;
 b=Bs6UGNs7pkwIc9mdtd68DosxabGM8Zv9JBKhZaAP4YT/uSga/PtdlE8lAFBigVNRaOUBwjRhXVZqekIuIoI0bCfa0UM71c5nX24gzeVpYJjXWQ1m4GHyw/zCn/bQYkp0OqBzMR6GDt3ACCpfH1D3xDSAfNFppjuJ4olUgdRlEEcgsuA9HdsjWouoZ7Zm0Y6m8zZUm+Z5uEoWlZ0ynsEeLEQEYLHhvjAR8svZcMh4tfCR8adPnsbEaWsCLXjVBpUYtk+W2UQbHW6VHiRZXcoCtqeDj1nwi8zjqb+/PlxPhPRy1oYEUnw0O/FIuI2s/moUrMzGmlipNg1aMJaZ7kyYtA==
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=t0a+M4UUU+XHTQe2PaZicm+9CI7a7rFkdkSd/BDJVyU=;
 b=J7CENvX5CvT4seag4bMLif0sdYaNa/XMUUMh0X3oHafI5aEtF4oESkqTwNMydwg78EbgSJ265dAMvpGEtQrwSe+LTb1jlPfzXvZvBeRhMnUJWPTU5O8HHElDXVMcUtHqPVrHYhQTTRYhWGHJWQdH1SqzpU4iiZKAn5Ukn2sW1Pk=
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,
	henry.wang@arm.com
Cc: 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>,
	Julien Grall <jgrall@amazon.com>
Subject: [PATCH v5 03/10] domain: GADDR based shared guest area registration alternative - teardown
Date: Mon,  2 Oct 2023 17:11:20 +0200
Message-ID: <20231002151127.71020-4-roger.pau@citrix.com>
X-Mailer: git-send-email 2.42.0
In-Reply-To: <20231002151127.71020-1-roger.pau@citrix.com>
References: <20231002151127.71020-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: LO4P265CA0057.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:2af::14) To MW4PR03MB6428.namprd03.prod.outlook.com
 (2603:10b6:303:123::8)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: MW4PR03MB6428:EE_|BY1PR03MB7261:EE_
X-MS-Office365-Filtering-Correlation-Id: 38be95c2-ebbe-4ce0-ef56-08dbc359ee0c
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:
	Q5IIaaKWvl1P4qfTeIXDxiToucbhAN4CPKbvvwn0fMRamBr7CdV0b52axDJDov1mPrR0rGrBaWSzhGXja3RDgDI7JJNwSsOz2mdt4Y9vEJuGNZAhBwCr9O54OnhS9I11TIdUY/iscDU76Zt9qz2WutCpMMHlxfzqu/zCJj/NVwv0L3zd46KvC1+T6LnY8F+/okGCsQ3rA6Ov7g3ynujhsALABVHXGTW50vxW2+KZHmfcj46Od6kxBdr+9ETbA4KpPgSyy+3nrpMvFajnrf4q/6aqDDF596ikQGgjNd/tiHrs2KZYnCsUTeBjFRVJXO2cgIqdckZEWaE6qWQdUvv1BIOb37PnUABcMJvr6gbpECU3lHZMSNWljRMvd6qku02R9p4hXAyHMKGW0neH9oW+n5Pe+Y1lmHrv8WIA2KZ5tx/Udvq13uNCpmjeMTZ1jyJRdIXHfsoqzJnTHoqm5MjabY2kbxUYpLPsIC1oXWsVsozOBithn5POfCKh5slO+wwKahAdhY2Mhy6yyINgRsDldWhIwjVH4u3ein5W5hMcTW2+Yz3BpMRaUK1gGXz52rLR
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)(39860400002)(346002)(376002)(136003)(396003)(366004)(230922051799003)(1800799009)(451199024)(186009)(64100799003)(4326008)(8676002)(5660300002)(8936002)(6512007)(7416002)(478600001)(6666004)(6486002)(2906002)(6506007)(26005)(1076003)(83380400001)(2616005)(66476007)(66556008)(54906003)(316002)(36756003)(41300700001)(86362001)(82960400001)(38100700002)(66946007);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?ZEIyeG5qOXY2VUd2RndUaFl1WmFpZDkrekhOdEFneGxsV0lidUVBM2VVZjht?=
 =?utf-8?B?aXRzOGRwTHJMRVczNVZNSTV6SGNzUXpJZHZtSDFKNTdPQWlrVHNmVWQxV0Rp?=
 =?utf-8?B?TmNpaUNuckpsSE9uTUV5UGFzbm5sMjNSbWpTcXlUaThWL0YzRTdGZ2U0RW5C?=
 =?utf-8?B?aUxibThaUy92TWNzUXBnbWlrYVI2clVKcldyODEzeVB4OU1RM2h1UnE4dzNP?=
 =?utf-8?B?VmY5bjZ6ZTJrRmVLSCtQbTBWd1lhekdnZVk4b2h3cDBvczBTQ2ZjTWlqeVZO?=
 =?utf-8?B?SUQ2dEpzTWxVVlR3K3pyYzdvU3lMUDZLbU9SUkd0MFRzbGhtYTZjdzJzVWZj?=
 =?utf-8?B?NEhqS0R3ZnJ1L0lOY1JROTNuMjAvK1VyMThHdmtnQk9ObkgzK2ozdzNZSUFk?=
 =?utf-8?B?MXkxaWpLVG9ubno1RldyemNMQzAvZTdHclMxUDk4NVArWEsweGpTSU80Rkpl?=
 =?utf-8?B?MGtnL08zbVVoaW0zdzdxb1VEcG5nelF3U0dPZG9rcnFyQ3BISWRNbEJQT0pO?=
 =?utf-8?B?d2tTVWxhZ1k3bUxLWnl5d1FTYkl2Tzd1b1daaGFYOFA1MUYwRVgwOUVkQiti?=
 =?utf-8?B?STM5ZWQ1UXRZWjY0Q3RHOHJKSngwd1hHMjVDL3A1STdYZTZNSGljeHgvTDRP?=
 =?utf-8?B?c0kzYzE0eitQS3lDSkhoWU5IMFpMMkdBR01SdktvUlFTcldUeWo1d0s3dWhC?=
 =?utf-8?B?MHVuQUlqM0ZFYlpoY1ltQXZ6MDdpM2o5SUw5dTF3d0Jla0V1V3RBc204QUVr?=
 =?utf-8?B?ZUo1T1NPTUV2ZnhyWHJtNTI5YkszUTdLMHcrYU5kSk5ZbWZ0Z0cxYmIxZUN6?=
 =?utf-8?B?RFdkeUhydGdNVnFxTGJyT0g1NytFSDVjQlJUdGh6VXRMdlJoY0JNckszcDlJ?=
 =?utf-8?B?WTl1MCsreXdRZU1Rb3BxYTc3ZG1wT3FuS3NSalNNUnlNN3p0QzJabHRIeTAv?=
 =?utf-8?B?OWtMcEkrZnkxNHdVM2E0RWI1MEFnS0tyUGs4UFllbFd3ek05VEJQVkIzM1lZ?=
 =?utf-8?B?UmhCd2lQYko3dEJmaUxCQmFCMitlS2ZQU2JNNFo4eVl3ZzAyNTdweFA0ZmM1?=
 =?utf-8?B?Y2RaZjE0ZjZycG83SVdpc2xoekZLeE5LMjVicmNibW52eUFIRVkrYlZlWXlK?=
 =?utf-8?B?RnFKY3g3dzhwYTN4Q3Zwa0V3ZXVhdVFrcXo3Snk2MjRKTG9ZbVhGK214Q3cz?=
 =?utf-8?B?TE9OOEZCdGFnUTJRcVFqMFU2RzJzMFB4aEFUbnJiTlY2TVhHMkJXNlZKNmJM?=
 =?utf-8?B?Yno2aWFwSGtPTXB4cEg5VHZpREZGaXlseStLNkI5UGNmZW42YnFwekM1Z1gz?=
 =?utf-8?B?Q0FBOW83VjFwdm5oUVVva0VISkFZbTRWbTJ3bWtQSmhiM2VDSnpYWFphNHFp?=
 =?utf-8?B?WTZCK0ZyNGk2NnEvUG54ckN6RHdPYUUrakNiK2dOTnV6WFN6VDloT1NlV3Zj?=
 =?utf-8?B?MGk1TUthY2tmT2xIOUpWbzJPY21aUWxhOUNsT01lSDlHYUxuMlJ3WFZmQ2dT?=
 =?utf-8?B?NWozSGJsYkdTelNGbk8zOC9yNFFsLzdWcDZUK2tJNDBteHJsUXoyVkZTUDM3?=
 =?utf-8?B?WTcycTAwdjROemJiRWhkc0QvaWlTNEEvVGI3ZVY3eWlON0FsaGpGMzJiRmk4?=
 =?utf-8?B?cVRLcXlOYk1pdDYyWkpSVXdyZ3p1Z2c3WU1ONUZSWGFzVTlRbGNOU2pCM3hX?=
 =?utf-8?B?bWFQWU56cHNRUUo0MTVDcjlGZjZ3VUpsR0tWMmFLanJSazZYWmdINStMK245?=
 =?utf-8?B?dHBZWWdTd0o5TTBSUDFaZ05HOTlIVjNLRTZDVlBSNit1ZmtxQ240VXQwQnRI?=
 =?utf-8?B?bWRFaFZnSko5TkExQXM3UXJ6Z0ljVzluSjNHTFh2MUUxNWxGTzhwUWpITDRD?=
 =?utf-8?B?T0RVSzB4cGp3dmtVTzRxbDdGUlRIbm1qQWU1MG9xLzNjZWpJTS9scHp2c05I?=
 =?utf-8?B?ZzdvMWIrcG5WQUpqYVQ2L0hFYzRPWVNqTW9iSTMzaDJKd3hwZkdJMEJpR0Yw?=
 =?utf-8?B?K1ZJTUd5SFYrN1IrbzB1SnJ0T3hWTi82TFlUQlllQUZvWURGbm02eUdwQ3pL?=
 =?utf-8?B?dFo3S0FldWJ1aGhsWTB3Mlo3TXREdXJXRzhhQ1RCZzFRMVI3NFpDeGdEblV6?=
 =?utf-8?B?ZkkxYUs4RGVnZThISG51MStHZmFNQkppSTR1eStsaStIRTJPbElyVlB3eVc2?=
 =?utf-8?B?eGc9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	w5MnxePAS1sT3w1Bj2mpJhDfvCjvss0uhm5c0dWOgdYtPilkaUMJjIAnuh4Ih5R+7Bs3Kmj/JPtMyT7hsak7g+LDdsNPgeU3s4+jRq2Emdl31XmeXicaCu5t0ckCw3inYFDsqzobwrK5cogyRrlaYjbstpBK7XyEWRZlV7JZH4Y5aYbpHZexIM5BXGEtm1zYTg/ZuReJwflaZ4CZHxSzgerlK29ENraBpsGVEfsfnd7T3SHdB63V94DVTuIeOvjueXn9PceVQ66/VSLi2Fzm9hmRCL/oGgsnWwhUW6FkO7WdWfdf999KWxHn3sJiBH2I1xG2o2/mdYsZDaRr3ELK9u7bwCCQA0rlJGRl72jx8KJywLNUmT3nWsvA2Ff80L2lblzBwMh+1mbFjFgomFeQpwOQ6VxbridKSdgiGxg74Az/OtXCOA3cmnU36XXCCccNZrcUyaaQ3H83Yn6AQTHkhdUdqFrHcJWrfUudARnGEReKOAeIbhMVCdttWEX8yeO+pJDiXLI6Eqb4uF4uP1rKZL+f2tzk/zOcZcIyFeYa8d4+SRV6/Xz9Vc0cYZbHisyII/mcd3+cmP66zvv0lZxikeU/FRAxr8I/Ewd9u7al3or+53nImlMu5yg7kYNzwgCliApXjtOFFsh3+SzPaKMgUzX+UvLBoNiBevUmAE3YaHmJzPnib5Hsf/AWLxD6ZfsAid/pczddvNW4CYe13xmkyDWozwBXtYXEut+YUf5uZlpyCjCoUeSmaSTFGAh48HejFjvBw6E3cMqgFhrnYawctOPkzpeOD3bhWQmXqmGE+EHuIrermALoWFslw1KHoL1wpTOkX7UCfZSoOFAXuRyY6ZH6V1OdQXhQ7G3Qc8xItZmfZuN9ih4JbtKazPJ3glGXpSXSItxsh8H7FssnO76X4A==
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 38be95c2-ebbe-4ce0-ef56-08dbc359ee0c
X-MS-Exchange-CrossTenant-AuthSource: MW4PR03MB6428.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Oct 2023 15:12:02.0675
 (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: eQC5AlwV2Yj4mpkgh8W/837aFeWHPvCLpeAxy8EVwUWnSYBFv122Y6qTisJCUNOkaz9615DThZT5parXoV7RJA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY1PR03MB7261

From: Jan Beulich <jbeulich@suse.com>

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>
Acked-by: Roger Pau Monné <roger.pau@citrix.com>
---
 xen/arch/x86/domain.c             |  5 +++++
 xen/arch/x86/include/asm/domain.h |  1 +
 xen/arch/x86/pv/shim.c            |  4 +++-
 xen/common/domain.c               | 17 +++++++++++++++++
 xen/include/xen/domain.h          | 11 +++++++++++
 xen/include/xen/sched.h           |  1 +
 6 files changed, 38 insertions(+), 1 deletion(-)

diff --git a/xen/arch/x86/domain.c b/xen/arch/x86/domain.c
index 645675d87d9d..9d352defa25e 100644
--- a/xen/arch/x86/domain.c
+++ b/xen/arch/x86/domain.c
@@ -1024,7 +1024,10 @@ int arch_domain_soft_reset(struct domain *d)
     }
 
     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 domain *d)
             if ( ret )
                 return ret;
 
+            unmap_guest_area(v, &v->arch.time_guest_area);
+
             vpmu_destroy(v);
         }
 
diff --git a/xen/arch/x86/include/asm/domain.h b/xen/arch/x86/include/asm/domain.h
index c2d9fc333be5..e0bd28e424e0 100644
--- 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;
 
diff --git a/xen/arch/x86/pv/shim.c b/xen/arch/x86/pv/shim.c
index 7e4bacf7ae40..f08b16bae2fe 100644
--- 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);
diff --git a/xen/common/domain.c b/xen/common/domain.c
index 304aa04fa6cb..76a4c2072e10 100644
--- 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, bool resuming)
     {
         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;
diff --git a/xen/include/xen/domain.h b/xen/include/xen/domain.h
index 81fb05a64275..a6b22fa2cac8 100644
--- 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,
diff --git a/xen/include/xen/sched.h b/xen/include/xen/sched.h
index d8c8dd85a67d..f30f3b0ebeab 100644
--- 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? */
-- 
2.42.0



From xen-devel-bounces@lists.xenproject.org Mon Oct 02 15:12:16 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 15:12:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611614.951162 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnKam-0002G8-3E; Mon, 02 Oct 2023 15:12:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611614.951162; Mon, 02 Oct 2023 15:12: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 1qnKal-0002G1-VV; Mon, 02 Oct 2023 15:12:15 +0000
Received: by outflank-mailman (input) for mailman id 611614;
 Mon, 02 Oct 2023 15:12: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=QbpY=FQ=citrix.com=prvs=63281d1e1=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qnKak-0000iK-Ts
 for xen-devel@lists.xenproject.org; Mon, 02 Oct 2023 15:12:15 +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 103a8b3f-6136-11ee-98d2-6d05b1d4d9a1;
 Mon, 02 Oct 2023 17:12:13 +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;
 02 Oct 2023 11:12:10 -0400
Received: from MW4PR03MB6428.namprd03.prod.outlook.com (2603:10b6:303:123::8)
 by BY1PR03MB7261.namprd03.prod.outlook.com (2603:10b6:a03:526::9)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.25; Mon, 2 Oct
 2023 15:12:07 +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.035; Mon, 2 Oct 2023
 15:12: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: 103a8b3f-6136-11ee-98d2-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1696259533;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:content-transfer-encoding:mime-version;
  bh=pNYDrez4yWL8SFtgFmNWAEo5Kdu51z1s3+A+lxN5AXA=;
  b=IIM0FwDv/i951XMhmPBRPQLZkwxrWvw8+MoLOhqq9KjmRuxCb8Hhe/vz
   gVadLjB62NLZO1nSAtjWLOyScI8IEytnFM+VkqFMogtjrtWKN8CT7x+bo
   niXsid1eClir2K7RFtEe2PLAkqWFROjpslFxXNzqQTek8OQcCyP8HFjt6
   M=;
X-CSE-ConnectionGUID: vHwUt8gsRVKSw/zbV7Fkzw==
X-CSE-MsgGUID: cN34MJP0Qg2FvJ3Ynkek4g==
X-IronPort-RemoteIP: 104.47.57.170
X-IronPort-MID: 124816976
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:qv5rd6BeKLXiiBVW/97iw5YqxClBgxIJ4kV8jS/XYbTApDongz0Cx
 jQbDW6BOK7fZzP9e9l2aI+y8x4CvsOBx9JqQQY4rX1jcSlH+JHPbTi7wuUcHAvJd5GeExg3h
 yk6QoOdRCzhZiaE/n9BCpC48D8kk/nOH+KgYAL9EngZbRd+Tys8gg5Ulec8g4p56fC0GArIs
 t7pyyHlEAbNNwVcbCRMsMpvlDs15K6p4WtA5ARnDRx2lAS2e0c9Xcp3yZ6ZdxMUcqEMdsamS
 uDKyq2O/2+x13/B3fv8z94X2mVTKlLjFVDmZkh+AsBOsTAbzsAG6Y4pNeJ0VKtio27hc+ada
 jl6ncfYpQ8BZsUgkQmGOvVSO3kW0aZuoNcrLZUj2CA6IoKvn3bEmp1T4E8K0YIw5MZoPH0e+
 uciFhM2cVeRjdzp7rGpVbw57igjBJGD0II3nFhFlGicIdN4BJfJTuPN+MNS2yo2ioZWB/HCa
 sEFaD1pKhPdfxlIPVRRA5U79AuqriCnL3sE9xTI+uxuvDC7IA9ZidABNPLPfdOHX4NNl1uwr
 WPa5WXpRBodMbRzzBLcqC7837Gewn2TtIQ6H5vjqttIuAWqyTY9Fj9NZF24rPrlhRvrMz5YA
 wlOksY0loAi+UruQtTjUhmQpH+fogVaS9dWC/c96gyG1uzT+QnxLmgJSCRQLsMvssAeTCYvk
 FSOmrvBBzZirbmUQnK17aqPoHW5Pi19BW0fYS4JSyMV7t+lp5s85jrUVcpqGqOxitzzGBnzz
 iqMoSx4gK8c5eYU042r8FaBhCijzrDLQRQ84gH/V2es/AR/IoWiYuSVBUPz6P9BKMOVSweHt
 X1dwsyGtrlRVdeKiTCHR/gLEPex/fGZPTbAgFlpWZ486zCq/H3ldodViN1jGHpU3g8/UWeBS
 CfuVcl5vve/4FPCgXdLXr+M
IronPort-HdrOrdr: A9a23:KFtoU6DWkioI2PflHemo55DYdb4zR+YMi2TDtnocdfUxSKelfq
 +V88jzuSWbtN9yYhEdcKG7WZVoKEm0nfQZ3WB7B8bAYOCJghrNEKhSqafk3j38C2nf24dmpM
 BdmnFFeb/N5I5B/KPH3DU=
X-Talos-CUID: =?us-ascii?q?9a23=3A+kjdX2gc9FAG4UiaVYrvNXXRRjJubF3C8WuALFS?=
 =?us-ascii?q?CN0VSV/qHQ2HP1qB2jJ87?=
X-Talos-MUID: =?us-ascii?q?9a23=3Aw2APjw8KB4rz6ueAUyEKHiqQf8xOuPiLKnhVqJp?=
 =?us-ascii?q?cldembh12ODqe0DviFw=3D=3D?=
X-IronPort-AV: E=Sophos;i="6.03,194,1694750400"; 
   d="scan'208";a="124816976"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Un6Ea+ZZWP8TXe+RIm+H/mvs6bU8JCsdkppb+w3vS3YyhtNpfqkBXzLCac03thqvPYWdbKm+eKjyGd7Q/vuI/YICRkTjjP++0UI+j5E5PoZvx97ZseeWkzQUmlX/Dx2+OEwRO4OefCSzFLyC0uEs0q4vnkS1ayXe0SQ5AgUFGXfPaUDuNmCOaZneLzrMpKJttqDdMOOR7Q9jgqOFHCMXb2zRRxvWpAiMqNjY2hypwCJRxXHzps+6OEVVuLtj+MGDNJZqf+w+3qDlR3hFzWLPM/W2Cx5J7YrId9At0InkHhDPFFWnfTABuOcPgTaqXUKKEAjPnjrpKLXmWxuDAZgvzQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=sqQYB5GprqLA6zNhgwV+4qSeIntPqXWXOOafhMdSkF4=;
 b=XUhBx5jMh1BJPB+0WTjXYUFwzM0C+hl6CdLbT7ceo91W+eMd9JTSzp3EAFOWafErb2FcprhjXV8kLYCL9mr4CBrOGyI+blmAFRH4aMEq8Ir/nvRbTMjlNw2gIRTRYzpm5ZW94UQx4CBqOAyjGPjBP/3dsHCHBNTgEAhhLIhiAs5U5WQASK96a0aEOrIh44B3HeMNGvSTd9zhtbIKuGgsLMw9sdKe7be1qfgEWzU9gAdTHr6h1nkM44ULlfzPnbTeBTVuo46XCniRjGwCFFJwh0MonSG/kRmSTRBACcVrfiZQR2dqhuQX/pts4KepUklgoKQDiCKj4S/y0RZKkvfTpg==
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=sqQYB5GprqLA6zNhgwV+4qSeIntPqXWXOOafhMdSkF4=;
 b=SOCy4+v0XMwTvVWRIsJR1jhJ3+mc8dJAm5jcL47zYnIJvJ3Q94/+QmulFq/M9ymv148mLQl3yc0msOuWskBSEcod5g4qMg9fgEBxqjOv7xwPzWIGX65+XDWriQsb98vH7iBgHWZRCK/4lUtmW6kPRQjmjQs/Bv+zdebuQBkzpwE=
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,
	henry.wang@arm.com
Cc: 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>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>,
	Julien Grall <jgrall@amazon.com>
Subject: [PATCH v5 04/10] domain: update GADDR based runstate guest area
Date: Mon,  2 Oct 2023 17:11:21 +0200
Message-ID: <20231002151127.71020-5-roger.pau@citrix.com>
X-Mailer: git-send-email 2.42.0
In-Reply-To: <20231002151127.71020-1-roger.pau@citrix.com>
References: <20231002151127.71020-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: LO4P123CA0679.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:351::12) To MW4PR03MB6428.namprd03.prod.outlook.com
 (2603:10b6:303:123::8)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: MW4PR03MB6428:EE_|BY1PR03MB7261:EE_
X-MS-Office365-Filtering-Correlation-Id: 22aa39ee-72e6-4dcc-f001-08dbc359f15f
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:
	DmvnGK0WlALcSSf2igdz6yE1pPOFvUEpk5mTul6FpBoi/tcU+x6BD9/IKc4zB5fo+NG5g+rGEUiIOo1EQDB/OvCaaQsqXnis/QcUY1LAHFmLnlf7iVyp2ItODkZoE0010Eoo7khIRUao//Uug9DRLusmjBlIZU1B9eF+XXISZfnlFcxlJtDJ4pBp6gMGniYkFY9H5hEiB9XXmXrH2pg9nMH0wmPU+V7k2GJsuuErcxPxel2Ts3NPHkmmPlLz/iB2bAvy/Zdf/+H6xtpD7jpC6ZwJrQvLm4qguN9Dt7Vae/UTUEb28ojiale2yWkWsgpXQrbhCEo54wjMNGs9T61vnDrRBVYeuw4GjTPEd24jSKp8hQEkeLimPfidfToGzRmhPgzxq+FVHEba3Rzg+hTCn6N0zG3D2svFY83/5SfNbXp6MwpnJXFnD5Nn4MVqFWKa8D61GIrcdT80T+8jHt8x9JQyNq2C1epnjSCq978Ua7nA42QMrQ3EBo1S1KGtElIm2BP9vPJQh0yoFi/K2C9DhJ9NjqpVCzmNIcMi6U5mZ/s2yUeOfmp4dZKyHYzY3T9H
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)(39860400002)(346002)(376002)(136003)(396003)(366004)(230922051799003)(1800799009)(451199024)(186009)(64100799003)(4326008)(8676002)(5660300002)(8936002)(6512007)(7416002)(478600001)(6666004)(6486002)(2906002)(15650500001)(6506007)(26005)(1076003)(83380400001)(2616005)(66476007)(66556008)(54906003)(316002)(36756003)(41300700001)(86362001)(82960400001)(38100700002)(66946007);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?MzdlanlHNmFmYnVpQ3B2eCtoR2N0Tzdrb092RHNmcmQ0UG9EaG9mOU9xNFRx?=
 =?utf-8?B?UG8wMm1XMENrWkR3algxN3FTRXF0cWdYeUdpaGJzbHhXTVFhMWNDZy9rZHpX?=
 =?utf-8?B?WGExYW1MY1BEOUdsQUFSZUhrdHlhRjVrd0NpZ2Y2TDFoOEtqeWNtVnNQck92?=
 =?utf-8?B?cGloMldoY2FCc0FiV0JSak83WWNja045bFdHTGh0R2RXelBsQ3AzUDNzTk14?=
 =?utf-8?B?OGprSWdBOUVldXZ3YS9YZFJrTzNLVmhUTEFtQ0ZQMXdDT3prdmRSZ2RzOUpx?=
 =?utf-8?B?clRNVSsxUWFuSUFDTm12cFJZWUNPU0R5SHRyZ0doSFQ4Y2QwejdscGpjQnlm?=
 =?utf-8?B?T1NpeEpGSDdvZ0Y2ZlB2T0t1ejJPa1lkS210Wm9jUFBiWmRrbldEbC90RnFM?=
 =?utf-8?B?K1MyYjExVFdReHJYK0x4cDNWcWl4TzNzWG02RmJvMHdrcnVYMnZpMlBRbFI4?=
 =?utf-8?B?WTJUc0NSTG1LOWx6LzZLcGF5WEppa1dCNTc4OTNzQmNUdVhlazhVZHRIL3RF?=
 =?utf-8?B?bm8vR2lCRXNackE0WE92azk3bjh3TVdZbjFBQzNlWjNDSjA0b1hrdDl4VnFJ?=
 =?utf-8?B?d2FaVmRxVXV2MEhMdnNwbElCQllkTmRlTkVJL1JSSWlTVG1mQVpaTEJXdWph?=
 =?utf-8?B?amp6RjIydDVOYzJJam9kOXJOOVg3M3BGSkZDeW5wbDV4U3VRSnc2MGtXdzNM?=
 =?utf-8?B?ZXc1c0tyL0RHRW9GYUJqdjdLUm5FWkF0N2RzcC83RlV1NVdyRzFid2REdG5U?=
 =?utf-8?B?dnp6RlhzYmVwR3dORW9xOVU5emZLU2xBTjhtK05XcGNGTlZiUEd5NG8zSWN6?=
 =?utf-8?B?MzNDNFFsWGNRaTAzQnhxaHpLOWw1WDJWM2JHaXYzNm1JWmIweWVRcmhPNzF0?=
 =?utf-8?B?Y1BFWGxRV1Y3Vmg5V3NlRWVzU0F3RktwcDJVTHRQYlNwdHBhNzlqVFluQlo4?=
 =?utf-8?B?TTVOdDJOMFVyWmlCUkZQYkczNzlzMGh1TkVLdFpHSXpTNjhqN2xYV0ZWVUVG?=
 =?utf-8?B?Mmt4emFpYU93eGFicjZyQWM2TUo2VEtBV1JJbGJlZmxPZnBQaEN0NmZHbDNM?=
 =?utf-8?B?LzBjaGxjOE8rRXpiRk9DekhrTmhENVRKNS9xb1JTdytNbVM5TzhjWFM1d2hD?=
 =?utf-8?B?aFc5eldSRkhnQ0FHNFFSZGVmempKRGJ6M0VodU43cE00UzVORXBBaDBldU40?=
 =?utf-8?B?SFU0MkxiT3Urci9DZGZCSDZkMFBlUXBVTS9VWjdvNDlKSXJDUExOclRicWpW?=
 =?utf-8?B?NEFqRmJGV2ZCQ3Y5cWNiTncxeHhkWVhtSU9HZGZHaFVzemE4bGlQd0hUcUlz?=
 =?utf-8?B?STdsb1ZpK3o0QjhkeFRCQmozUXRGcEFlN1dvcXA4enV1ZGpnSmJaY0ptSURu?=
 =?utf-8?B?TXFwejA5UjB5eStHb2N6OVRhR2J2UWtlNjR3QXMwNUUrMWFRS2dhd2NkdWdL?=
 =?utf-8?B?SjNQS2xsWDBvVGFMd2JGZXNjVEhINDkrcy9vckNCS1hqekFYOUFDa2I5M0Nt?=
 =?utf-8?B?L0VLQjNWeEhudTVWR2M0V2JNMVZraG4xYW5nMWZRcW5EWXdmcGVnV3dwV0V3?=
 =?utf-8?B?aUZVcUhCWnVnZlFnemlzczhmSzFONzdBbEZBTFk2NEswZXdMTXgwcldYV2pU?=
 =?utf-8?B?K1ZmS1A1V3pRQ1pBbEdyNlcxNnovdlM4b1dlSk4zS0NPeEo0MWNpUzlVYkhR?=
 =?utf-8?B?K2JkWEJ4OGY2dHF2MFoxcXovclNGb2FTNXRTclhSMWlrVmhzQ3JZM0hXMGNE?=
 =?utf-8?B?YkQxd0ZmVXB0aktSRStzMzVJRkNuVHdoMlZhNDZET2lUWFpVTVh5YlpRSDNU?=
 =?utf-8?B?ME93am5HZ0kxSDVqaVVhdnVmd005SWNpdSt1V0F3U0hIK0ZjalFldWVKM01J?=
 =?utf-8?B?ZDRtVEU2ZmlTNmVHOWo0akRJbzlWSW12Uzc5MGwyWHdvc3pWRTQvcWpKKytQ?=
 =?utf-8?B?dWRxU0k3Q1dzS2EySGpORit5UlJ5NFZiZDJhcEFGVzFMbVdlYWJKR3pMSVdM?=
 =?utf-8?B?Y3pRaVZzNGFkRC8wNTVDdThiWHR6NkhwV0hjMnhmUGhiSWNFNzBLNkhrcXBR?=
 =?utf-8?B?SmxKbVZ1T0JHRnpRU2pjcXdaZjVuU3A0dUZLcWJDL2tIbWF3U25lbXh6L2ZR?=
 =?utf-8?B?ME5GQUdmK3RHYjhqR2NJZDcwcVpwZVlaVWFmQmVyeGZHWjBJTzZRdmFVbXRI?=
 =?utf-8?B?U1E9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	dn8WtYHC2WiqRKzT3MDtwP1UOh8aVAQjGoEYQ64ukoG66iamCohRBuhIQhxy/SlGnslH7tWKMElRcq55DTIhB1QJemeLEN2mX2O9v0CqWibLexFw7BLCc54ABHO/OPkMzx3VL2kYgKgXum17R80mABZgTRW2FV8ON8fsO6j7gVZwdziZF4452MfH9IWVNVocbJw3C4MtbXAiLfPqvjNDZBAE6y5TXHsVE3d+oAKO/dEB6BJfDEH4VaWYVXoCBPhLxO+Thi8BiYk2ld0a/FAq24bAc3DnVuGPjIY62w2K7w29PDMlGq7PvlzuaQeqqQJOpHpYO90vz08br7znE8EdFV6hgqvB4wKOI9F+yHoO3Q09MiwdE6FlvzBbKhPcT+ElfvVg05c/qYg+PrqmidahE1aZf+3pDKOSYQlQ0ssktEKOeVT3iIg1VUfl75qQVMghCgH+Or4EGRslXtoIck32PxDmkJkD7YWlc29FMePPdSeG2Yuwpd/IZsCLGmozw1YAH77EUlDwk+vzq4JUIrPU8kq/da2W4XCgKgtVfoDlOBiGu5jnFmfDuHLBWsILTi1NX74nqNT66kYBzWBDExy0dIG/ZubbqSGUUQk/09nGxZuNTTGGL0zgLsxvvI7i9XuaDxC27uxJxpQ+wEGQLLwZkn6/e5jx026CR/65BMcya05IfaeFGkC7P+C1PiTYEiYUIuM1Ebo11E5Y7A2xBtorRnmxyaUL6Lw4qTwMJioJk/hKoPqbi99cGalebtOsi2bFKjlfIt9aojeQ0NegpnD3UpMq44FYrRwdzhNXCx8GGTa4miAtMOh6+mwJbhlzDvEtlXjOVfh1hXnDl2ImT8ik2PEaAjhQPBLcS9mE0hoQbzA810z6uwyWaed683c5xxkDi0owXNPBgoNr50RHwsnhkA==
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 22aa39ee-72e6-4dcc-f001-08dbc359f15f
X-MS-Exchange-CrossTenant-AuthSource: MW4PR03MB6428.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Oct 2023 15:12:07.4292
 (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: SjOKrg4T1TZvzCEIAyGpSoesmMsZUwI8XC5TVnMsMVCgOXjrPead9C0y+nJ9PEPfr0qv8q+1CpxxKobs++0+Ww==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY1PR03MB7261

From: Jan Beulich <jbeulich@suse.com>

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>
---
 xen/common/domain.c     | 43 ++++++++++++++++++++++++++++++++++++++---
 xen/include/xen/sched.h |  2 ++
 2 files changed, 42 insertions(+), 3 deletions(-)

diff --git a/xen/common/domain.c b/xen/common/domain.c
index 76a4c2072e10..d4958ec5e149 100644
--- 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
diff --git a/xen/include/xen/sched.h b/xen/include/xen/sched.h
index f30f3b0ebeab..6e1028785d8c 100644
--- 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
-- 
2.42.0



From xen-devel-bounces@lists.xenproject.org Mon Oct 02 15:12:22 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 15:12:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611619.951172 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnKas-0002is-9o; Mon, 02 Oct 2023 15:12:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611619.951172; Mon, 02 Oct 2023 15:12: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 1qnKas-0002ij-6o; Mon, 02 Oct 2023 15:12:22 +0000
Received: by outflank-mailman (input) for mailman id 611619;
 Mon, 02 Oct 2023 15:12: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=QbpY=FQ=citrix.com=prvs=63281d1e1=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qnKar-0001wY-35
 for xen-devel@lists.xenproject.org; Mon, 02 Oct 2023 15:12: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 12fcb395-6136-11ee-9b0d-b553b5be7939;
 Mon, 02 Oct 2023 17:12:18 +0200 (CEST)
Received: from mail-dm6nam11lp2171.outbound.protection.outlook.com (HELO
 NAM11-DM6-obe.outbound.protection.outlook.com) ([104.47.57.171])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 02 Oct 2023 11:12:15 -0400
Received: from MW4PR03MB6428.namprd03.prod.outlook.com (2603:10b6:303:123::8)
 by BY1PR03MB7261.namprd03.prod.outlook.com (2603:10b6:a03:526::9)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.25; Mon, 2 Oct
 2023 15:12:13 +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.035; Mon, 2 Oct 2023
 15:12: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: 12fcb395-6136-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1696259538;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:content-transfer-encoding:mime-version;
  bh=a/AJPPtiiInCeVF/0s1F5KgDnLN6kpPIjcJ+zFRlvr0=;
  b=IeiAIn72J3B3QDiJgikfdEXlggsJOPcAJOnEUtpvrXBrUYz386XMclPu
   dweNiqKmTB5VKDRhq8OjzcWoSQdlWbw7e42tIqTi8Six7PxKrpyOV7wke
   wgfJ4WDVggRk+71jsuTOeBjxFflJdzsF+30oJLMJwQQPtOuOW0M3BL7/f
   g=;
X-CSE-ConnectionGUID: nSL1cQw+TDCQ/26z7B39yg==
X-CSE-MsgGUID: jDPny1WPQSK2qt4J9RWQhw==
X-IronPort-RemoteIP: 104.47.57.171
X-IronPort-MID: 124398882
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:V6/kJqBZY46umBVW/xviw5YqxClBgxIJ4kV8jS/XYbTApD1xgjUCy
 mQeDT2HOPmDNGX3ed8ga4/lph5Q7J+ExoU2QQY4rX1jcSlH+JHPbTi7wuUcHAvJd5GeExg3h
 yk6QoOdRCzhZiaE/n9BCpC48D8kk/nOH+KgYAL9EngZbRd+Tys8gg5Ulec8g4p56fC0GArIs
 t7pyyHlEAbNNwVcbCRMsMpvlDs15K6p4WtA5ARnDRx2lAS2e0c9Xcp3yZ6ZdxMUcqEMdsamS
 uDKyq2O/2+x13/B3fv8z94X2mVTKlLjFVDmZkh+AsBOsTAbzsAG6Y4pNeJ0VKtio27hc+ada
 jl6ncfYpQ8BZsUgkQmGOvVSO3kW0aZuoNcrLZUj2CA6IoKvn3bEmp1T4E8K0YIw/N1TWGp36
 r8kBBs0KUrdlb2cm+OqRbw57igjBJGD0II3nFhFlGicIdN4BJfJTuPN+MNS2yo2ioZWB/HCa
 sEFaD1pKhPdfxlIPVRRA5U79AuqriCnL3sE9xTI+uxuvDG7IA9ZidABNPLPfdOHX4NNl1uwr
 WPa5WXpRBodMbRzzBLcqC7317+fzXmTtIQ6FpGA8O8zv2Wq/U9JEQFKdwqBnsC5lRvrMz5YA
 wlOksY0loAi+UruQtTjUhmQpH+fogVaS9dWC/c96gyG1uzT+QnxLmgJSCRQLsMvssAeTCYvk
 FSOmrvBBzZirbmUQnK17aqPoHW5Pi19BXAGTT8JS00C+daLnW0ophfGT9ImHKvriNTwQGj02
 2rT83F4gKgPh8kW0an95UrAnz+nupnOSEgy+xnTWWWmqAh+YeZJerCV1LQS1t4YRK7xc7VLl
 CNsdxS2hAzWMaywqQ==
IronPort-HdrOrdr: A9a23:ffj3m6rL0fAhDsLfZzA91joaV5oveYIsimQD101hICG9E/b1qy
 nKpp8mPHDP5wr5NEtPpTnjAsm9qALnlKKdiLN5Vd3OYOCMghrKEGgN1/qH/xTQXwH46+5Bxe
 NBXsFFebrN5IFB/KTHCd+DYrMd/OU=
X-Talos-CUID: =?us-ascii?q?9a23=3APW+oAmqb31P79+koz4X3o9TmUcYeViTW9WiTH2O?=
 =?us-ascii?q?TMCEzFq/KYwTB6awxxg=3D=3D?=
X-Talos-MUID: 9a23:OU2mvwU+s0Rw1APq/D3AvDdzbfhQ2p+NUlkRzbdXgfa9NTMlbg==
X-IronPort-AV: E=Sophos;i="6.03,194,1694750400"; 
   d="scan'208";a="124398882"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=NY6LluRR+YdsfBBV7azOTAqzl1Xpvr76iY0t8iRumJqdlJpzEVBUE+n03DuexmEUEyPgreX2GNi12IL3kjmSiuU7f4EJxPC2Wj1MDL4bYarje1WoNBtSzOXmaqcFsXfW8CST/KeF538OyoBs3NXV7ptHiU4ehSEheyl/DQwtQdyzuQUTVj+Vr5IK9frKvFtA+0IWfof6VXhQGqcQ7a/WOuugqesPmnF6jfI0fNgdABF9qX3vBMolyZLs9cGwyIYd+iNhEB8UIXYVnauIsZ/80LWw1HDCAH6ke/1lM0Qo+MisrJvFeqBn9X1bpQnMISyrKS+OxCuZbv4yOTqCHPCouQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=wNopSXtZurBZ4E6tSOFy4W/8WMqlD6/cPCnqWUU/QCI=;
 b=QPJMyL7Wf5ideIxR2c/73Jhlxu9PK0JNHVks6e14fNJ6WXU5IyRz38VZHzbHiEiBTj9W7hlCCWhix0dBDP+44t1un4dvfhnnZDo0oSaQlRlv//pen+EuWM2tYiEwornLtEjvnSY4bnvne34TWpVCHI0jYWa3nw0Q0TMMbtZFdd3C2/S82uYBmCAhNifMKNAwvQYzlB9shf46xzGk+UdASKNHa9UyRfX0LaVa5alqizKNzcwC1ZV4UK7diTJmcXZMewQIvSCNfM6CgyLYVWLB5wmzx3QrZihVdCaui0rWaWBAZR/Qg/hwTqgo/YHaBz8YQqZGWpa5vKm84m89lRPWhg==
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=wNopSXtZurBZ4E6tSOFy4W/8WMqlD6/cPCnqWUU/QCI=;
 b=hEYQqPwGaW4ru+0Gxjhlw3vD1XoNRzEMu2mmbvSAGvZvWVgZCJ1v509n9QEmeSHpqv6AmHYYH2RWznJCZ8bUVDKOYVzATNY+7WyGXF8qLD+qRtvt3QOM68jCji8Lky1J6e4O5PmCQ6qfyfGQZOrGgo/pVIh8RBJwNfuHpHLRK4Y=
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,
	henry.wang@arm.com
Cc: 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 05/10] x86: update GADDR based secondary time area
Date: Mon,  2 Oct 2023 17:11:22 +0200
Message-ID: <20231002151127.71020-6-roger.pau@citrix.com>
X-Mailer: git-send-email 2.42.0
In-Reply-To: <20231002151127.71020-1-roger.pau@citrix.com>
References: <20231002151127.71020-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: LO4P123CA0483.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:1a8::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_|BY1PR03MB7261:EE_
X-MS-Office365-Filtering-Correlation-Id: a1f80fff-3d39-46cd-2972-08dbc359f4cd
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:
	KsjqnjP8HSqcz1r/jmxL8+7mA078ZNXbNRwz5KNLtoHuHUZatZc+WXUfDMfACD5QwgM7plLnZf3SoO5JlwWg5pbaQHyJFX0s7MsUSvCelvBGp7rIrM2eB2iKrTq29VF+HP8krU1dSQw3l+q3SIZhiS6CBDklWHQ7EhyTaQoIbl9HEdFvMgRsTIt3HmXfdVH/OTdQx7/XYK0ydmGA2/EaULKnJ+0V5cKAGqUc8CFmK7iFcCD4bkYQAjNsRCPZg9B7PMGlK6okpJ6GU5JgE0Kcgaz1fJqP975URVeP9KBdt4p9F50CY77LIByP4jJNzjwlYWYNxxxVANrbJ5kEQocC8bgSPVujcSt5oxcg4WrzE3erQ9XzDC6L2lVLqp1KjQxxAppTS1cknDtPww8HGoQdTGcxFrcHPUzPurfcsbuOV8SPl5KY1XSNyXv3X4afD6sFr8tzfFsfgTopp+iOfMdaErrrAYTDtqoioNzYtqKUTuIzCMZfKYV40+hnYZsWFM7DAnKmkkRTYuFcjUVLlEP5NZBLjoB1gvqRyMJhpCylJ+CTz2W54S/LBBQVMXeSaIx6
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)(39860400002)(346002)(376002)(136003)(396003)(366004)(230922051799003)(1800799009)(451199024)(186009)(64100799003)(4326008)(8676002)(5660300002)(8936002)(6512007)(478600001)(6666004)(6486002)(2906002)(15650500001)(6506007)(26005)(1076003)(83380400001)(2616005)(66476007)(66556008)(54906003)(316002)(36756003)(41300700001)(86362001)(82960400001)(38100700002)(66946007);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?b2w0dWVmMlFJSGUxVENMVit2eWRBZDUwT0MxaXBHb2JVRkxaTEE2SHV6WTRx?=
 =?utf-8?B?amN0TUtocGsvVTYyUm1hMU5nbU10Y1lpYlhQYnU0WFFTRU5EeDdUT0Vicmxj?=
 =?utf-8?B?dkVXTFVsZjRQZW5hMy95N29FTDdNM3NuSVVBODg1VlJDc0dBWGkveW1PQkd3?=
 =?utf-8?B?SlJyUE9xdmtsN1FsS0E5YklueW13elB6TFFQbUpFY1EwMCtYMzU0TmZ3eGRu?=
 =?utf-8?B?L2lLTnpzWk5DdGZGRXF4aDdoWGZSclV1NFdWVnlXQjlvbFlnaXJ6aEdMa0lP?=
 =?utf-8?B?cWJDTjNwUXlhTVV2MXF1Z3NIdjRqdENJZnFDazhiQ09ZUGt6ZXczOWVnS01J?=
 =?utf-8?B?Y3Vqc25ka1BsZWp1WW5zREkwWmlOMmZxaGUyTk9uOC9vWG1hTHlqZ09vNjIr?=
 =?utf-8?B?WVIwQlFpc3NLdFpEZ3NPU2hYSDZNMllyUkZKU0cyRUFkOXAvWEhZRXdEVkN1?=
 =?utf-8?B?bFhmbkE0cCtIajY3RjByc1c3a2pmNVoxcHNSbzlxRlBNMnFESWxrQ083Qi9D?=
 =?utf-8?B?SXpzUndvOThqQTZzZVl2VFhlMCt3YU9TSkk5cnppcGdkNHdxM1ZLeSs2Y05l?=
 =?utf-8?B?Qkg5emdSNDJPUkdicGlocGppSEZkYU5mUkJ3eU81dFQ1ZkZmUXVyeHFPbWQ1?=
 =?utf-8?B?Y3VZMW1YRzFKVy9sT0R6K3MvMEVMb3V5ZS9SbzNTOXBVeis0UUlZWnYxbXJM?=
 =?utf-8?B?M1JiTnN3Y3Bra0JKSnhiMkpOcjZQZmVsZ3ZwQndicUMvYTQ3VXdINnVOMEhH?=
 =?utf-8?B?OVBLd2FXL2VTajRHQWNUWlp4ajVLL0NWNkhoSjRLV3oza2liVEo3WGxJc2M5?=
 =?utf-8?B?RmRwb1gvNFU3WHRCbHdEZ2xEWGRnTFQ4THNxVW90NXlZdERmQWNZM3NEZjRh?=
 =?utf-8?B?endEb1FmVmNsSk5oWW1uVjV5RWsxbW1lb3dtK0FTQmQ5ZHFmcTlncTMxaGwr?=
 =?utf-8?B?L3BYSmZtODR3VHZ6NjBCSlIwWWpCUGNZQlBCNklxaHN2eDZVTEdNY05CQ2VX?=
 =?utf-8?B?ZDh3c1dKZGlnVTE3Z05TdTZIUFVtK0hHeUFFaEVLdGdKN0FtSDRXS0s5bWt0?=
 =?utf-8?B?a2Fsa2VSRWxaZWFjVkJOZHhUbjd6VkpLZWZaMjZmVm5PaUlyT3daVDB4Rk53?=
 =?utf-8?B?N2pNdFM1dE9JckJtSTJsVFk3aXI4OFhBSXY0SEg1M2dvYXJGZ3ByZnJ2TS9K?=
 =?utf-8?B?U0htYTF1TGJBYUsvK25Ba2IzOWJ0WHRIdTNWRkxrcXVJRUlvQ1JTU0V5Ymov?=
 =?utf-8?B?U0ZRSU0wTTByMVkvMGRrN3FFWS9vcC9iQ25RVlNZeENETVJHWkV5TE1xb2tl?=
 =?utf-8?B?a01JZXdiSVJUL3hyRmNtL1lLWEtRVzhBYlhORDNYQ2JiQlpob2tvSzRQZlBU?=
 =?utf-8?B?WFpLeG94aWJ0RW1VVktNcW0vck16Znl0SHV2L0RKby92dDJsWDJkZnZnWmlj?=
 =?utf-8?B?Sm9QREp6ckNVcmVPaURHbzJMQ0d4UlhSQWhTaTcwSCtDYUxsWHJMeURwckNO?=
 =?utf-8?B?SEtmd1VGVElBUEs4ZEpKTkVsNXVJN2hZNFNHQm8vTkhtREp4cStuQ3hjR29E?=
 =?utf-8?B?elY5d2NZV1VBelhRSmYvZWtPemhIUkcwZjRuTkNvb0FwL1crRlZtN2xMK2ZH?=
 =?utf-8?B?LzNzSy95UVAyOHVQVitzcWpXVGlSR0pqdjdZUyt1bWZlR0xxRkJRdWRTY2xw?=
 =?utf-8?B?YitRSnBzMWlIbXB3blAvaFc1Z3hDTmRUT3FBSnQ0M2lMaS96aHZqaDd3TVNZ?=
 =?utf-8?B?dzE0Vm94Y2Q4clJrZ3dwRHRQWmtZS2dZTlVCVGliZ1plSVMxdmVraTNtU1FF?=
 =?utf-8?B?NE5MTThXc2lUSklvUm1WbGk2VlZQK2dMYkEyYitIV2lVQXZINHhUbnJKcCth?=
 =?utf-8?B?Y3pMNjM4SFd2b2tUTXBVanh0aHB0THFYbXdZaVB0NkZqanpFK1NGTmgySE43?=
 =?utf-8?B?V01tcGxwRXFuR002TkxEUWNQaGsvQlBxQmE2R3lQai9HNmxDMU5nVnVKSEZx?=
 =?utf-8?B?dU42WklzTEhqZzVqd0paY3F4cEtMSFJ4c3lkemNGeHh6RXgybmNUTzBaTkpy?=
 =?utf-8?B?VUliRFlqdXVvWHYzYXlJa0RiSlVtcHl3dEdSQTZXLzFPTzF3NjNYVS9OM3dy?=
 =?utf-8?Q?M5c+Q+sGyvvxLh31aOIvuDCrV?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	nrp3AaXIguPWEEWFygW5hPYaBJIXg5obRusdCww3C9Krc+YnBvqLXZCuSeNvVVq0lAtDyYRsa9gwXmZzOJ1RfRhPZyB8n/bkIskwkkB5ycc6CJpMEO7ZBeWEP+UVqyzSXzpyRkv5njylnzKZd0+C5+lo4RJyri5FvYQjQzVPUodGfyPlC7iZ1rr9gFSZAE1zgudlB4RMsN9i/etxnKFFwn1uACeyM6ZaizLEZNTaIaXblWzWuzgCye73FTt2etOu2fIAswuaLshpOG0QW3LsPA+3y0V3vE1phq3TG1iwe4Wk4BnLQPYyjy1sbhjy+zd+EYUeDQdc/epzw7/8PB0VdyuIHv3nlXZwOR1Pr+ruCdeaY5HzLm97425yB+J/EuAfou7IYMreZMZ5eKXuLWfsZUGCXsCvAfzCORrfkPrjZtiIA7LIhpmgaGpUitMwRe6GFF3HOslYgqAJZwwM7WryN8aBxp+rwRMUhABra6Lf+Vny1Y3JJKvQuk55dLDDCKR5L+1KQEC4fxr0eZxyD2uILEqnbX9vmKY4r/ducd/hq8cjtU+hcgIpok1tjTvh8riwKxqLYQD4xaHCeFgCT6WPPZ9YTiNCFI7VQq9zPQDOJ5pyBBjunkIvoBe0xstxdnqIy73lN/XxsVX1P4V+Wfm7EvWkc6/itGquuBMTG5iccuuqO19YlZkvJTI7ARSNF7wFO5ZUA1i+5eDQwxCiqSBvttRbdwrN99wxkUlELDGeImSrFjUPpB61OcTOvfQ0mjxeXAXKO2KiWiWEONj7V+2kXZIKPh/LKnAJgMLF3AwOTIXjKHK8MqPXRmVRNTc/beQx5ZJgb4pB0rMmY0riN6pDrw==
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: a1f80fff-3d39-46cd-2972-08dbc359f4cd
X-MS-Exchange-CrossTenant-AuthSource: MW4PR03MB6428.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Oct 2023 15:12:13.2058
 (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: NNdYtbDuNK+9oED38dcI/JZm403Hjx8qLAkxwoywdphKik/ezoDxqLOdxYOui1oAfbIDRPdH+8+Yr1VFSpv+fg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY1PR03MB7261

From: Jan Beulich <jbeulich@suse.com>

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>
---
 xen/arch/x86/time.c | 22 ++++++++++++++++++++++
 1 file changed, 22 insertions(+)

diff --git a/xen/arch/x86/time.c b/xen/arch/x86/time.c
index af40a9993c81..332d2d79aeae 100644
--- a/xen/arch/x86/time.c
+++ b/xen/arch/x86/time.c
@@ -1566,12 +1566,34 @@ static void __update_vcpu_system_time(struct vcpu *v, int force)
         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;
 
-- 
2.42.0



From xen-devel-bounces@lists.xenproject.org Mon Oct 02 15:12:41 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 15:12:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611628.951182 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnKbA-0003n6-Ph; Mon, 02 Oct 2023 15:12:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611628.951182; Mon, 02 Oct 2023 15: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 1qnKbA-0003ms-Lj; Mon, 02 Oct 2023 15:12:40 +0000
Received: by outflank-mailman (input) for mailman id 611628;
 Mon, 02 Oct 2023 15:12: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=QbpY=FQ=citrix.com=prvs=63281d1e1=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qnKb8-0001wY-D6
 for xen-devel@lists.xenproject.org; Mon, 02 Oct 2023 15:12:38 +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 1dab5290-6136-11ee-9b0d-b553b5be7939;
 Mon, 02 Oct 2023 17:12:36 +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;
 02 Oct 2023 11:12:33 -0400
Received: from MW4PR03MB6428.namprd03.prod.outlook.com (2603:10b6:303:123::8)
 by BN9PR03MB6188.namprd03.prod.outlook.com (2603:10b6:408:101::18)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.28; Mon, 2 Oct
 2023 15:12:31 +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.035; Mon, 2 Oct 2023
 15: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: 1dab5290-6136-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1696259556;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:content-transfer-encoding:mime-version;
  bh=ZgXXFCB7psZZri2vLWarAPangJxppmH8MByerzI/jRg=;
  b=KtuQgsWn9iHvqjX/lMpqXsmZM0uP+17ejOBQQPKfLnGCMg7x1SGaVnEN
   6L7GD0g/CSAGABaYZsKxaMEOWxIOw0Q7/6cIQRE7LI/S0cEMMpjn/3EVQ
   RPL3jp2fl1pNLUR1LRefbwV6MiZWLLCB2nKG6jljNWA8pT34vSHAgXViG
   s=;
X-CSE-ConnectionGUID: a8J0aa4FTUKj0XubbixRIA==
X-CSE-MsgGUID: 5q6wzXboTH+Nsoogo/sw7g==
X-IronPort-RemoteIP: 104.47.58.102
X-IronPort-MID: 123016639
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:0enMZqlINA9Y16EucsT1F4zo5gxbJ0RdPkR7XQ2eYbSJt1+Wr1Gzt
 xJNDGiEOKqDamvwc9x0bYm+o0NSvJbSndBjSgZr/ChgRiMWpZLJC+rCIxarNUt+DCFhoGFPt
 JxCN4aafKjYaleG+39B55C49SEUOZmgH+e6UKicfHkpGWeIcQ954Tp7gek1n4V0ttawBgKJq
 LvartbWfVSowFaYCEpNg064gE0p5K+aVA8w5ARkPqkT5AWGzhH5MbpETU2PByqgKmVrNrbSq
 9brlNmR4m7f9hExPdKp+p6TnpoiG+O60aCm0xK6aoD66vRwjnVaPpUTbZLwXXx/mTSR9+2d/
 f0W3XCGpaXFCYWX8AgVe0Ew/yiTpsSq8pefSZS0mZT7I0Er7xIAahihZa07FdRwxwp5PY1B3
 fVICmgEZ0ytu9+VwuqLV+Nmh9QZDeC+aevzulk4pd3YJdAPZMmbBonvu5pf1jp2gd1SF/HDY
 cZfcSBocBnLfxxIPBEQFY46m+CrwHL4dlW0qnrM/fZxvzeVkVw3ieC3WDbWUoXiqcF9hEGXq
 3iA523kKhobKMae2XyO9XfEaurnxHmgANtMSubpnhJsqACKmHMBOBcRaXv4h+K+jUG5HMlAd
 ENBr0LCqoB3riRHVOLVTxC+5XKJoBMYc95RCPEhrhGAzLLO5ASUDXRCSSROAPQmucksVHo13
 1mGt9rzAHpkt7j9YXCX+6qQrDiyETMINmJEbigBJSMa5/HzrYd1iQjAJv5hDaq0g9vdCTz2h
 TeQo0AWnK4PhMQG06G6+1HvgD+2oJXNCAkv6W3qsnmN6wp4YMupYtKu4F2CtfJYdt/BFB+Go
 WQOnNWY4KYWF5aRmSeRQeILWra0+/KCNz6aillqd3U8ywmQF7eYVdg4yFlDyI1Ba67opReBj
 JfvhD5s
IronPort-HdrOrdr: A9a23:LvPRMa3pPYxpmLkihSbTuAqjBLYkLtp133Aq2lEZdPU1SKClfq
 WV98jzuiWatN98Yh8dcLK7WJVoMEm8yXcd2+B4V9qftWLdyQiVxe9ZnO/f6gylNyri9vNMkY
 dMGpIOb+EY1GIK7/oSNjPIduod/A==
X-Talos-CUID: 9a23:raNOjGGiU96LzCCsqmJupGxME8l5XEHg73WIE1KyA2d5cpy8HAo=
X-Talos-MUID: 9a23:H1Z4fgn9exzaXXCp/55xdno/LZl38ZSkD3wt0rMdvM6LMmtrJGiS2WE=
X-IronPort-AV: E=Sophos;i="6.03,194,1694750400"; 
   d="scan'208";a="123016639"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=c1xRJ8i44ofkn5G7qgh1cGhlpZtXOeU+/sbOfV88+8ijPH5BAurnaTsknn5+8TCF99+kHUny7Xya7EIvQBhMAg8Zw14ItfE6u4mUcNbuRiP8q06O0ihlqXxrSwtJ5OAfqZ2Qd1g8RPoE7pwrNW1zcxEOYEho3LcHbOdXrZLXTc0wBNoJEXf1GpDXbsTAtaUDiaDNWwUwNptzX9XXHvV2VYcr1ckfz0e5BWm+6pVpyWU5+s18vveFVdFrDb1qqzlxV+1tDf/KGNOuRqBTLMfTcwredA9yNh5Kh1NXsBbUoja3LGZ92A35jjf84mLnCSdBXLWI5CatNoqeSnCJVMn0XQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=zMIb0nDm1DJBXyK5aOdXBIAXiKy1K5Km1lNy2ZHywr4=;
 b=e1bIKrmqQAGTtWWFhURo/wZeI0hM7ridFXM4oPkA3sATa0H2oaQRrC/DaoLskQe/mwxLXgH9ozW+4hBHPKvBrpZyKfWFO0mPiB+B21ShL3qGFm8Pleb/HYbJgr8vSsgU8z7ctxlP+cC4UnAPnuPLy7xxmH6LNYvJbu7onZUw7BSl2VqVXa8sIreNT59ieDhPPGKmCR6iiI4dE8hiSTNfp18UUnNY/bTcqQWByZnNYV9ni+17ozhTFWe2+3eU6tAETuGDetZOL1SHb38hqTPlnChSGe6UIM0B2K5U4dpqzdcRJ55EQHTk3ir3ArMwDyMzW+ddh18fXm+n3qC5Durs8Q==
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=zMIb0nDm1DJBXyK5aOdXBIAXiKy1K5Km1lNy2ZHywr4=;
 b=DIgXexvpaKrGlzBg98nXULTLoUA8eeeDfzY81Csv6ragxrM6v9mb60+AxSy9gEcVQC1PnX/k6DZRkuH8IeQjFOwfbq5g9BpLix39hS7zArHsWv1N3yOjjBGTAddhPLJUXBmwknCnEjGjjMQsCWVAZ1GJ9ap8mblD/kPXDqgTa48=
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,
	henry.wang@arm.com
Cc: 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>
Subject: [PATCH v5 08/10] domain: introduce GADDR based runstate area registration alternative
Date: Mon,  2 Oct 2023 17:11:25 +0200
Message-ID: <20231002151127.71020-9-roger.pau@citrix.com>
X-Mailer: git-send-email 2.42.0
In-Reply-To: <20231002151127.71020-1-roger.pau@citrix.com>
References: <20231002151127.71020-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: LO4P265CA0278.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:37a::19) To MW4PR03MB6428.namprd03.prod.outlook.com
 (2603:10b6:303:123::8)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: MW4PR03MB6428:EE_|BN9PR03MB6188:EE_
X-MS-Office365-Filtering-Correlation-Id: cabc543f-6554-49b9-086b-08dbc359ff6d
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:
	7Rt2KNvj7FD1E5Sz3sCGoTJZfpOO1QW8lnOqYHGQV3RYBCbiVoVlpwd5QS/ZG8TH3oxNw26j298KSVzYTZYbm2w42EweQ4AOOKKHJ6rbNBEF/PYDtCqJqRWeGDV2Hjw7b6H7KoWcSp7kNt7Xy84ayVPHEkqUxmgMUX7u4qdZ94j8h7aQaw0FH06qvnVXHs/2CBU4BMKS2F3U3OMcSV4P2Unae5VwvfgEZiV6BPcxb2BUUd4PNPsKSprhZRtbz9JAK2UWhfb5WVKezVZ2MVJkYmbcHunjg9oW1edIdfG4MGU9I6Me+NXd9VPsgvLkCnSMVRC8S9G46X5vlsOmWuO1720zx/412GaYfLvgoqECxGpPMZTGeZ97+EFPpSuLZ0XtBb2Qk785yqHquwMrThgNffI/Y6DTWBvrA6GU8jcMMRl77G0EOF73xrmDEzrgxTiY8Mx3C0WslIPTq9pPY3WozS2ZiOhGtJXBV2mqvsaswGet/n1f2m+3XM51eP9KC+FxxJNcLAywj8u89Zdj5AV0PBfxC1+OLlM38eaGqdOZ/4sRdo3LKEzojNH7W7UZYt5h
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)(39860400002)(376002)(346002)(396003)(366004)(136003)(230922051799003)(1800799009)(186009)(451199024)(64100799003)(2616005)(1076003)(26005)(83380400001)(82960400001)(38100700002)(86362001)(36756003)(316002)(54906003)(8936002)(8676002)(4326008)(5660300002)(41300700001)(66476007)(66556008)(66946007)(2906002)(6506007)(6666004)(6512007)(478600001)(6486002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?aEJMRlRmbEZCNkpyY01vWVRGcXN0akJodEdpTnFick1YRGVNbUk0WTlLaHR4?=
 =?utf-8?B?eU16RXJkQklCQ0lsU2JMUjBKRzBhdzY0ZXduTS9uZTFrN0xDMjlJcGd2Uklh?=
 =?utf-8?B?RjhXbC95a1p5cnVCZWJmSTl0K2NWeThkaWJoZTIyM3M5QkFMSE9XaHBpUGUw?=
 =?utf-8?B?aURKa0lRWHNUc05SUVJ1Q29WY0xBVlkxRWJvSFFpYmxyREhDRndjVzRSbFZE?=
 =?utf-8?B?bFNQWUt6S241QjU1M29GRFZJTkdWM1Y0bU4rVUtENzVieUdJS3FOWE1MUWxX?=
 =?utf-8?B?ZE8zdk9xcHlYSWFDSDhya1BXQitsVmpkbUEyUi9QTVI2aC9BQmxPT3E1VWEw?=
 =?utf-8?B?bGgzOUdUQVByZEhiOTA1SXlFRGk2ZTRBaURZR3hydlVQS3pZSDlUK283VGpF?=
 =?utf-8?B?TkY0OEJJcjAxRVRHOEpvK2N0S0hXRG9lSis5c2ZaY2xLa2UrUThITytmMEZs?=
 =?utf-8?B?Z1lFQjVKN2FiRWt4azFvSTQyeGptL1VZMnd0N0tidkIwMmlGYmFaeVZPVUlD?=
 =?utf-8?B?UXNRMmVWQ0hLZE9obG40Yy9CcERINmZmbkh2TnEyTTVZcm9CQnhoWDdXUXZp?=
 =?utf-8?B?WkZSeVh4eVMvSXJRQnZXT0pJQkI0TTFjcGxGRys4V0RpNjRUM1h6K0NhZGFu?=
 =?utf-8?B?QXRYRkdWM1UvdEpMTDVhQ1EwYWViQjM3alVScW9LOWlrWE5zVmJGSm8vTDdK?=
 =?utf-8?B?L0pHWnVnZS9xNmI2VU1lMEZLa1pMelM1aDV2b0dQNHdpOVQzQzRnMkY4NHpX?=
 =?utf-8?B?azMzMUZYejMyN3Q5WGtpWURjdGpuQ3dyMS9ENEpVeVNaM3FINGtobGZoSUhX?=
 =?utf-8?B?L2F0c2VUd3ZZY1cwVEI5eFVhVG5pRTRPZUthcDQ1bkMycU13WnZiU3JtcVY2?=
 =?utf-8?B?RWxEYmNUOWh3RGRJK3lWdmh6Z2lrL1l6Z0IzcDVnS2d0U1l2NnNnbHVZVDFo?=
 =?utf-8?B?OWVHVjBaKzhkbGk5VGZsTXBkOW5iZjQwaisvaWtGa3lzVmhQRjFCdVpqelF0?=
 =?utf-8?B?M3lua3lQM2grSnltNXJiaXhweC9FdFFwYVE1WnRCVDdWbVhqNmN0dW80M3R1?=
 =?utf-8?B?SHBPZzRmRlI5YndPK2xmbDVYOUJQNmljMnpxZGFzaFFKeXYybVZSUU00RzE3?=
 =?utf-8?B?OEFzUUhBM29yak5Sd2R4RmVQRk10QUIxYk9NdHdUd3hMVGE0VStUeno3RmNv?=
 =?utf-8?B?dEFyNEhTbEtTMXRGUTlkZGpFSDNvTG8wNGxGWnFSSXZQeFVRVUl2bkpzaGZC?=
 =?utf-8?B?YXFzL0tFZXZRSDl0b3JRWlgzMGZDNVRzd3JITnpjYk5XMkxSdTlsYys2SkRX?=
 =?utf-8?B?MWdPZ0lvSEJiWmE4WURrdGZta0xPSE9mQXhpdmN5YmJqNE1wZG5yTWhLSDQ3?=
 =?utf-8?B?MDQ3NGtvalhESG1FOHo5R1oyVW5tWGkvMXVHSGJWaWxqc2doQXZKcW9pZkpU?=
 =?utf-8?B?SnBOL25lTnFjMDRmRGljYzFUWjl3Z05KQlJaVHIwZXpnSEFnV1o0TFNUaFhv?=
 =?utf-8?B?QVBBa3Ercnh0L0JGNDl3TVdEQ202TTdhQWNBSU5Ha251M3BWWG5vbGpJS1pZ?=
 =?utf-8?B?MkIwNWlYUVBpVzlPTzkvNkRONDZobytPL1pjUnpObUdvTHkvV1YrRGt1R2h0?=
 =?utf-8?B?L1JsZGtlZ3YzTm5HSlFwdEwwV3FpdFVVV3JRRHRhU2Qyc3BnMGs5ZVpVVklh?=
 =?utf-8?B?TEZzMWVJdE5uQnJrVFJvRzUrSGJTWGJjbml4TzFraGUxUEpuSDhnS041bi9Q?=
 =?utf-8?B?WW9xdzVUMXNwcmVSMnhyVlkwUmgrM0Q3QjNVVStQbUVleElCSi91bTFmVm8r?=
 =?utf-8?B?MWJhY1huL21iVmpNTWI1dzhnSlJDc2p0SENqZThHcWVHd3czZ3dBRlJOZXg2?=
 =?utf-8?B?cU5OVzdsaUhYb2pwU1J3bDZNMk85WlltRUtxYjNDVWNHeWROTUhySzdxVXlW?=
 =?utf-8?B?N3JMeTUxclV4MFhKSzEzV3FuSFJaS0VXbVNsWEI1ZmZwT0d5TkhBOC9WSVRG?=
 =?utf-8?B?SGd0dlNTRDYrRGwzamFZK1QxaVUyQUdQUWcrMFZ4VlF1b2s5L0t4MnFMTWZt?=
 =?utf-8?B?bjQ1YXZ3THdyUzZkenNEcUpLVW5pT3hnK0ZRNy9aSlBkcGF1ek9ZM255VGpq?=
 =?utf-8?B?eDVhYWE1RzEwNm8yT1c0NHdwcndaZUF5WEdkQnVueXpNaTVCc0hoaG41NDJ5?=
 =?utf-8?B?VkE9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	H1euBT4c99p9ay2kHMIzQ6h+09Fu/mx5lEH77kqivGbqoh+GGctlWxC5UngnkXIXeGuopuAnHkZeHunyUGO237jthAdwIpJAJV31Uz1RggYHDvbcLMo9Gc+PsYfVcjz5q9BiymK36UEXOmWhIIT8viRaOl2jByrsZILliBU/CbJTcdo2IQINIZq4/Emb4U6Wp6//WetpQum2mG66YP46YlLWDt2PL3WlCe0JxdnE5LAJQwARUAWyWEb8ZDbq7T0v9Hiqxou9nwpsfbvbzcerAVmrPIPxJM7r6+F392sfn6TXbWsxFNNip5oVPLcP7ZQds7z7AFVT5P27R05W/ITkmZbCPgOXyQMYR77XLWZ7xfUN8yYcLjb84FM3oLjn12tS9PPDrMf/4gHRSVXPw02RpFi37vvKvDNmLNw8AjFCq68/uW1IM+AUqfZzcXDNZDMaF3IbdKPTNwfUMdhVKzJoOtrmSztLukzYcbGmMvHLoiLj5ocfYOVhZkWEuSiZxPU3QLVJPf9GO6d+8IcPyC8zQjhi2cjgZqSIXzHcP80aHgn/bkU6AHbQ0Qot5KOT/xGGuN3tKOo3Kjuozxgp7psQl4Wr+YhRJNpPl0NxIVwXHqE6Swf1AQCPYtgaMVlt1jQG7CwN2rrAJhlUjRQpEIwFsF5CfEtyOrQa3LKBtHcFnoAGw6KpdZJtq597qqCJ8HvEaPXuNH3VUJvTMeWEWbtjm+XbzuLmeX7d1gdyWV+YyJh61qb/mAV+MidA2yta4UJ0CrX4cPuOSRyK+LIJo0u2vLaAyAuRhqj3Z2ahpzycFG0AteyHYAylHfVPXZqTRaS1sGNWPP3BwP5qACViYbvw0cqu1uo2W0sYkf1AEyeysAv6GnNZm7xk8nv2I10+hjtW
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: cabc543f-6554-49b9-086b-08dbc359ff6d
X-MS-Exchange-CrossTenant-AuthSource: MW4PR03MB6428.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Oct 2023 15:12:31.0178
 (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: qkzwDUZkHyJ1XUGDogiMvfKgprQhUNqO6fpeLF+QVGVQmWtaCWGQJUDlnwY1lYtIqQneUvNFN3qFjX2jdwreWg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN9PR03MB6188

From: Jan Beulich <jbeulich@suse.com>

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>
---
 xen/arch/x86/x86_64/domain.c | 35 ++++++++++++++++++++++++++++++++
 xen/common/domain.c          | 39 ++++++++++++++++++++++++++++++++++++
 xen/include/public/vcpu.h    | 15 ++++++++++++++
 3 files changed, 89 insertions(+)

diff --git a/xen/arch/x86/x86_64/domain.c b/xen/arch/x86/x86_64/domain.c
index bfaea17fe718..494b0b54e64e 100644
--- 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)
 {
@@ -58,6 +74,25 @@ compat_vcpu_op(int cmd, unsigned int vcpuid, XEN_GUEST_HANDLE_PARAM(void) arg)
         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:
     {
         struct compat_vcpu_register_time_memory_area area = { .addr.p = 0 };
diff --git a/xen/common/domain.c b/xen/common/domain.c
index 747bf5c87a8d..486c1ae3f7f3 100644
--- 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;
@@ -2012,6 +2032,25 @@ long common_vcpu_op(int cmd, struct vcpu *v, XEN_GUEST_HANDLE_PARAM(void) arg)
         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;
         break;
diff --git a/xen/include/public/vcpu.h b/xen/include/public/vcpu.h
index a836b264a911..9dac0f9748ca 100644
--- a/xen/include/public/vcpu.h
+++ b/xen/include/public/vcpu.h
@@ -110,6 +110,8 @@ DEFINE_XEN_GUEST_HANDLE(vcpu_runstate_info_t);
  *     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__ */
 
 /*
-- 
2.42.0



From xen-devel-bounces@lists.xenproject.org Mon Oct 02 15:21:14 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 15:21:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611638.951191 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnKjL-0006rC-IZ; Mon, 02 Oct 2023 15:21:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611638.951191; Mon, 02 Oct 2023 15: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 1qnKjL-0006r5-Fg; Mon, 02 Oct 2023 15:21:07 +0000
Received: by outflank-mailman (input) for mailman id 611638;
 Mon, 02 Oct 2023 15:21: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=QbpY=FQ=citrix.com=prvs=63281d1e1=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qnKbK-0001wY-Nj
 for xen-devel@lists.xenproject.org; Mon, 02 Oct 2023 15:12: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 25683fcb-6136-11ee-9b0d-b553b5be7939;
 Mon, 02 Oct 2023 17:12:48 +0200 (CEST)
Received: from mail-dm6nam10lp2106.outbound.protection.outlook.com (HELO
 NAM10-DM6-obe.outbound.protection.outlook.com) ([104.47.58.106])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 02 Oct 2023 11:12:46 -0400
Received: from MW4PR03MB6428.namprd03.prod.outlook.com (2603:10b6:303:123::8)
 by BN9PR03MB6188.namprd03.prod.outlook.com (2603:10b6:408:101::18)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.28; Mon, 2 Oct
 2023 15:12:43 +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.035; Mon, 2 Oct 2023
 15: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>
X-Inumbo-ID: 25683fcb-6136-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1696259568;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:content-transfer-encoding:mime-version;
  bh=M5aez5rTFO1GcCEIbyWKBylmYkINX0+kBsuOD8esuJs=;
  b=BYMcWqLtIVgXXy2yoNejAGe+RDPStvEOdm3rG7gTPDb7AWKRPKUJL4rr
   +kNAVTdFikM/zyA/9cLD61R8zWGzBnM6mInSAgFPiwQ1JLvRZezxaiWUC
   QFRTaSAuEvZugduONv7uxb93fpFxm9hDSmEpGF026pLfFdVyW1jrqXYQs
   4=;
X-CSE-ConnectionGUID: FfrCwBCfS+WA7M+9Ex6pVg==
X-CSE-MsgGUID: RXbDzZ0qSWiHNEwZIFbhMw==
X-IronPort-RemoteIP: 104.47.58.106
X-IronPort-MID: 123016667
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:c2gaVq4aXtYG0AATmD9QawxRtMnGchMFZxGqfqrLsTDasY5as4F+v
 jcbW2zTMv6LMGD8KNlyPYS//UwGucOGztE1TQU/qitkHi5G8cbLO4+Ufxz6V8+wwm8vb2o8t
 plDNYOQRCwQZiWBzvt4GuG59RGQ7YnRG/ykTraCY3gtLeNdYH9JoQp5nOIkiZJfj9G8Agec0
 fv/uMSaM1K+s9JOGjt8B5mr9lU355wehBtC5gZlPKgT5geH/5UoJMl3yZ+ZfiOQrrZ8RoZWd
 86bpJml82XQ+QsaC9/Nut4XpWVTH9Y+lSDX4pZnc/DKbipq/0Te4Y5iXBYoUm9Fii3hojxE4
 I4lWapc6+seFvakdOw1C3G0GszlVEFM0OevzXOX6aR/w6BaGpdFLjoH4EweZOUlFuhL7W5m2
 /ICAy8nRR64xN2fn5f4G8R82NwdI5y+VG8fkikIITDxK98DGMiGb4CUoNhS0XE3m9xEGuvYa
 4wBcz1zYR/cYhpJfFAKFJY5m+TujX76G9FagAvN+exrvC6OnEooiOaF3Nn9I7RmQe1PmUmVv
 CTe9nnRCRAGLt2PjzGC9xpAg8eWx3ijAdxMSuLQGvhCum2Z6n4hUAQtalqbh9SmuG+QUdJ6N
 BlBksYphe1onKCxdfHtUhv9rHOasxo0X9tLD/Z8+AyL0rDT4QuSGi4DVDEpQNwrstUnAyMj0
 FChlsnsQzdotdW9S3iQ67OVpjOaIjUOICkJYipsZRQBy8nupsc0lB2nZtR+FK+4iPXlFDe2x
 CqFxAAlnKkah8MP06S9/HjEjiiqq5yPSRQ6ji3LV2es9StlZ4qoYYO55Fyd5vFFRLt1VXGEt
 XkA3sSbsuYHCMjVkDTXGb1TWra0+/yCLTvQx0Z1GIUs/Cis/Hjlep1M5DZ5JwFiNcNslSLVX
 XI/cDh5vPd7VEZGp4cuC25tI6zGFZTdKOk=
IronPort-HdrOrdr: A9a23:eXu8K6GmunLwH0YQpLqE7MeALOsnbusQ8zAXPiFKJSC9F/byqy
 nAppsmPHPP5gr5OktBpTnwAsi9qBrnnPYejLX5Vo3SPzUO1lHYSL1K3M/PxCDhBj271sM179
 YGT0GmMqyTMbGtt7ee3DWF
X-Talos-CUID: =?us-ascii?q?9a23=3AH4+nMGudeBVQZjEBFPtkxXAS6IsLfGf20137LXT?=
 =?us-ascii?q?7Nk82bf7EZE/O4J1rxp8=3D?=
X-Talos-MUID: =?us-ascii?q?9a23=3ATg3LXAxcBFlDaV1Uxz6Zpl8xLBGaqJ6eAmwfo80?=
 =?us-ascii?q?fgPaFFQpdJAW8oj63Z5Byfw=3D=3D?=
X-IronPort-AV: E=Sophos;i="6.03,194,1694750400"; 
   d="scan'208";a="123016667"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=K7gP98FmDvxEZR9AXljjEsXv4sCfAhk6acHtKbHfxOsFnOMZy2+D1PdizlgoeTc24qY1EqnLaFBGQh8W47O4YTiyHy3S7f1NKvA+f5v7ptCFI4i5yqYjod4y2yAHstEn2OOozFB26FiGNhIrZAk8kYhG425+hC8tHTq+PyZuCP3Bs457VsPmtvuiQLMwvnZ61aNV3gz1zfjzS7istGxt6OJXpDg5jP8VTiJOJTlVND4LctfZaT6LdzLaTTGKctqVYRvnysrwDny5tRvf8ceEVMUFbEMljj2vqz7Z4r/ZLK1+JgK5bZCeKfy+ER/J2CoEODmkctFb2evKVCBvJ5Rnmw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=GQo4moAla6ceZD4asYRXJVxG0xoZsU0KKz3b6MGdn7Y=;
 b=bLsdfpYphoyKNWpH8hH2+HpMucYaCMuJ4BMrd4shm6oGjFEYUqL8qsd5elAX/ZbiwcS2/lW+SUXi/ARN3hxq0Db07jHeJpsaEPffJtRDC039qYKjKxrA303nccO7CYdeipD+mHJkhMJ8n3qKQ+DhSTzymnjf+JhsDOi35AWjxum9VBiFx8YIjJIGWupSU2RP4C1/0ZOcpOv7VbR8EtbFLlwrb7V/0S4f93SfnEh3QOQL3Y8aR8+WTp5n3R5cDZQcQ7CMmavCrJMjTCJ9AaPkewDWZfCP4jzJqstTaPAg4+U6a7RGSpU8sdXB69tJoiHtnAD3/SeevzqdJDe53UBIRQ==
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=GQo4moAla6ceZD4asYRXJVxG0xoZsU0KKz3b6MGdn7Y=;
 b=HuP51X/sGh8XUvd9Nd/a+lbCDwdFG5WWAmql7oHvqxCb9aFslea53Xv6DERsHAtxbt2I6DQMvWlBcJoEfdp5ZczcO/B7EzpStaMxFF/yJlno80QOgy51DLE5/gnl1FocgiC0K0PpUTGkoY397O43UoO4VW6fDRQYt57QJ3Gy93Y=
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,
	henry.wang@arm.com
Cc: 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>,
	Tamas K Lengyel <tamas@tklengyel.com>
Subject: [PATCH v5 10/10] common: convert vCPU info area registration
Date: Mon,  2 Oct 2023 17:11:27 +0200
Message-ID: <20231002151127.71020-11-roger.pau@citrix.com>
X-Mailer: git-send-email 2.42.0
In-Reply-To: <20231002151127.71020-1-roger.pau@citrix.com>
References: <20231002151127.71020-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: LO4P123CA0320.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:197::19) To MW4PR03MB6428.namprd03.prod.outlook.com
 (2603:10b6:303:123::8)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: MW4PR03MB6428:EE_|BN9PR03MB6188:EE_
X-MS-Office365-Filtering-Correlation-Id: afd83ff3-dc1a-44ff-ec75-08dbc35a067b
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:
	G57wTZ1WuyOBN8gewh/nw3IL39EtjNdSLqVNu7IG7vqCn+6lFMf/9x+yMNQnDOagnh580z3gbgLYS75fRR4tlNx1XLOyUA3lH45I1cX2LkDYTtexnGT/0flFipPggEfUNf/HVqsRiqjQDWGn1LRqEBHg/pCaLSy0ceqvuUHBAkSbbsBdp4C9e2bPSlUzqAmX9Ap2E4bQ4wVh9XJOu6k1hSeJ4lVYn7l/5grZ0VPHVozZ+gLRC3xx1kPTqSUY50p/bAcP3zG4lXXaJyjo5kQj4Zo8kpBbNe3zqUhlu1PIfztvzOXCJcOfQRJimQTFN/qF6oiqDriBaVqrqeY5KcUczdpPiSlMtaZl8KHEuGzcb/0We5Kfa1BfeK6SYXMzCS2Tjzk+pCvhQWkOx2og6UiBvoTRpnYSywJqF0o9h06NtZsc4teHlceJ8SIDzo6eY7+JoYq9rKkrgYtWDWHbcvY/VtuO7s6byY2M+hZJLB2DE3cG/xdt9toBR3MuDrM2MBVXqw5btgTJDAB4sF9sYgVKamgB9UvEEkZzLNGzlUUgVKlaAsrnOLJCL3JXq70L+vjAslwQ1lv88OymjzvxTdqqrsyvvum8DdzhXXjEMB+FKAeMMgHpGT/WfT/RQzrK3xT+
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)(39860400002)(376002)(346002)(396003)(366004)(136003)(230922051799003)(1800799009)(186009)(451199024)(64100799003)(2616005)(1076003)(26005)(83380400001)(82960400001)(38100700002)(86362001)(36756003)(316002)(54906003)(8936002)(8676002)(4326008)(5660300002)(41300700001)(66476007)(66556008)(66946007)(30864003)(2906002)(6506007)(7416002)(6666004)(6512007)(478600001)(6486002)(309714004);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?RmhEanJTMXkyYzF4anEzWThTNlF2N0JvaEE2OVNPb0loZXlGcTQ4bktYSnBI?=
 =?utf-8?B?VVpCSzhUTXM3YUFRdXNPRFRheGd3dUYxa3ZPVDJxaFlBWm94QSsrNlNJaVpw?=
 =?utf-8?B?d0plelVodit2UTJoT2dTUjJreEVuOHN3a2IxVU5xS0xPamxCWHpKYWRzMUcr?=
 =?utf-8?B?ZU5WYVFlZXc3SlZ3bTkwREhidTRCZWZNdGJHKyt5czhITUp6NHU4T2FSdm14?=
 =?utf-8?B?d0NqZjUycHc2c05BeTFDbEpPcE00elBqQ3N6bGQ3RC9zRlowVVhCWWtaWlhl?=
 =?utf-8?B?VHJxQmRLY2tmMHZMbkdWblhjbEhoL1VKK2dWVkZOc1UrUVQvK3dEcXZ1Znlw?=
 =?utf-8?B?bXU0eFdLNHhOZVU2elVKRm1OYnd0eDR0NHdsVkRtTXJCSHlhRUN4eVpVTTd5?=
 =?utf-8?B?dllZekxqNE44M0p6YmNiT0UyS3ZBSll0cnk4TTI5NmpqR2tJWk5YMmtPaThN?=
 =?utf-8?B?UkxoV2REN2hBVlpmVXBGTGVhd1IxMkR1ekVCVGVwYlNUMkN2OTlFWXVLOE1C?=
 =?utf-8?B?azhwZFVkZnNSZGQ0WTluWkpVa1NzYWI0eGJEMkpNeTFCZDRFV3B6ZEh2NzRm?=
 =?utf-8?B?TFRQcDRQVUZnWTk5d1pDQ1Y2SkYvYkdraitjSEc4dWN2bWR3eUxsdGMvTzln?=
 =?utf-8?B?UjUySHRPN0krYVFXbEFJNDlIN2doVlNza2doUEhQaGtHT3kyMlZPeHozQ0V3?=
 =?utf-8?B?YWdIUEpFRXlDckFxQUFmdzZrK0V3MTJCWTJyc0NkN2xIdFhzekpCNDdZK0lJ?=
 =?utf-8?B?OHg1QnpUS1h1c1BzOUNyaUxuQ1pkdEFXMjd5ek1oUmoveGJ6Vm5jNlFycitq?=
 =?utf-8?B?VDVIR3dtWTU1SUMwNDBEaGZFRFYremJyanZUNzU5VmlGZW43VDNtREV4TmJm?=
 =?utf-8?B?bkMvc0tYOUJtSE51blhRbTdWeDArbFZNRk5rbWJzaDlDL2VWRmwvZjdtYU5V?=
 =?utf-8?B?a2xLamM2LzBSYjlmNmgvbGtrZk04ZjlLNFA1bnhDVlREZnhxSUllakFMZUhz?=
 =?utf-8?B?bU15NTAyam1qM1ZJVWh5SDJpUUE4UmJ1U2JjNThEczNHOEpKamJiTXJQVUZv?=
 =?utf-8?B?bW81Z0ZaL0NMaVJrTUNnWDQxRmM2TDc2YWcwdGFtR2hWQmhNcUFNdHZxTjZN?=
 =?utf-8?B?Y1MyMTRTNmtjQ1JsNkFtY1N6YmxuSFgvUTdCQUNyaytXSlNLR1E0VXVBdXR1?=
 =?utf-8?B?bkUvVVJyR1hGaHlpa0Nqb3NpNXRTbjRnc0x0b3ZaS2pKcksyNTR0TGlmR1ZW?=
 =?utf-8?B?b1U4SFRRcnZOZkdkVDNSUm4wTGdMVzYrdk80NkJ1VWViUVdudHhoTCtXdm9P?=
 =?utf-8?B?dVFkcktReVNtYnFBbmtIVmFrTW5BWVBXWFJ3VG5GajBHU0djU1dZQVRZNWdr?=
 =?utf-8?B?WmlMU3R0K0ZXbCtjOTArNDFXTzMvTlVNUjN3bHc3dnErTXhsR2JiZklOT25Z?=
 =?utf-8?B?NXl0R0E4c1FWRkFsWUJYTElhNFN0a2xQTW9mRGx4Q09EVHhueXp4dlhKUDh4?=
 =?utf-8?B?bDI0UFZiU0FqTHUvUXkrdFZ3Zkw5Q2I5SUZ4Zyt4MHZ2SjBka3NoMWRLcTJr?=
 =?utf-8?B?Qk1hTk9zK1ErUHJxRWRuOE1CNng4dEtBSFVrcDJQeUpVMzZIVy9KRncwSEVt?=
 =?utf-8?B?NXNaRXNHOXB2K2s2WFVOOEExY1ZWOGJ3TVBkT3pYZUNURFl6eGZYRWtzN3FB?=
 =?utf-8?B?ZVFaWm13OUVLTHVUNTNpR1AranhYRDZ3QUVURWtFYnRyN0dWd1dZM0NuQ0R1?=
 =?utf-8?B?SnZNU05sZVdtZGQ1RFNIQUNaNkt4SkhXRHp4M0xidjEyVCtmK0Z2SCtsbTls?=
 =?utf-8?B?aFZXV3dqRXNuQmtLYWt6Z3pMNU4rbmhFT3pOSjJHNXhEVDltV3FvVC9ZdFVT?=
 =?utf-8?B?aDMvL2laM21LTmhNRHJsdXN6cHRvVFU0MWk5aEZOdmlKUHFqckhMbmM0cy9q?=
 =?utf-8?B?TXR1UHBRR1RTZXM5ZDR1aFdaK0hXQ0ZqSUNOMStickpIaW16ZWtsNWNKRmtn?=
 =?utf-8?B?LzlTalFybkc5ejRYaGx0M3VhWjVLeFlHamRDMThyWnZUYWVlOEwrRWxVaEYw?=
 =?utf-8?B?cjBwbG55NjFwdkdMd2tzVHA3SUVLYXIzRmFFUHZ0U0gyY0NadFFYQjR2U3JR?=
 =?utf-8?B?VXJFSmw0VmtFaC8wWlFRMUxBZE9tN3JmcExTTXdxY3lBV1gwejVYZG1DN1ph?=
 =?utf-8?B?b1E9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	NuiRyTm66hd3N/pIqk6ntBTI7IwKAkW50ho6I+dIAT1DNRrD+/NIG1SyhkiP2X3mH+w23L7o76HpEJDmwRfkQtwAT7w5HaWvyjWav9D/9vlIZUKd3MMdriQyLwOTY4/zFg3gBF4IEiE6RrUMYRr4obsD1+GPYkrA6G3xWzmjwOuTOQI0rOh2wt0xAKYfGkFaMSAMQuw4NPcjm626F4csCoHSQ4pHbCJx9Dj5mKP58JoX/caC9kjiRiBEBwDb1d9c5k7Q8BprMKB++V0JPSjpcjD0AFYl+4udVn+GVYgqslIFCthpEHVlBmKnJek039jcrFr+zPOPDu8JxD876O3ruwe+us82NFZAtM5Dvizl+DsfJwKUv+m2JQJzvIbQqB54El0S3ThYTg69tTx0lgVdTwwySNFvE+cNpJMSb4nUP2r8u/Wjwjg8L26ZYkh9AWTyrSWtOJ6uqWL0wjn4EWNjzKiZOMZwWgln2/zcOTQqGw9MtvxE8kg5vigpi44EJvq+hyeiTh6h2D2nF2XAl0kQZkxGj6Tl1zSPuhKiFpDcyw90yFmIxC/L4ZF3VwyMPnpb0RrV/rqB0ZMiByZELvkZusPFVTW0WkYfZCr9+hgyay8AVeV3eu572umyJwiRNA3HLKmoBfjP+m4lRNiAnTaaAIis7vmB7l5Jo4E+55mqLd1+vKC5Pnh3qhqYLBYcJiHMOv2+xlnXOc2qN0N3n8bKFCjkuD9O8Uw5ZbLOBkzfBnoJpm6PdXnleNTJF+CeRvmfUMuavaWENuUHPiuSiNsoWsjZ4enI9co8Fzjzh6Q34QUtCXfABouZS2wNo9lkubCHTirh/M93f6pRo10CzAGX3hsPRN1ZcLqUDt5mBRka7ARON6RmvJQXOYQSomUA13EovCtkNIr/OTobP5oLLjrq5ZK9/mB1k0jI8WXCnE/XJCQ=
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: afd83ff3-dc1a-44ff-ec75-08dbc35a067b
X-MS-Exchange-CrossTenant-AuthSource: MW4PR03MB6428.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Oct 2023 15:12:43.1126
 (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: GmvT/V2p7WFtkhuJfhpjQKnoyezqdWK1jfV5lSpDqNZr9415IYxyHBasABMYWUdm6l8IVRbAsw6NbiJuv4enFQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN9PR03MB6188

From: Jan Beulich <jbeulich@suse.com>

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).

Signed-off-by: Jan Beulich <jbeulich@suse.com>
Reviewed-by: Roger Pau Monné <roger.pau@citrix.com>
---
 xen/arch/x86/include/asm/shared.h |  19 ++-
 xen/arch/x86/mm/mem_sharing.c     |  20 ++-
 xen/arch/x86/pv/shim.c            |   2 +-
 xen/arch/x86/time.c               |   2 +-
 xen/arch/x86/x86_64/asm-offsets.c |   2 +-
 xen/arch/x86/x86_64/traps.c       |   2 +-
 xen/common/compat/domain.c        |   2 +-
 xen/common/domain.c               | 204 ++++++++++++------------------
 xen/include/xen/domain.h          |   3 -
 xen/include/xen/sched.h           |   5 +-
 xen/include/xen/shared.h          |   3 +-
 11 files changed, 112 insertions(+), 152 deletions(-)

diff --git a/xen/arch/x86/include/asm/shared.h b/xen/arch/x86/include/asm/shared.h
index dd3ae8c2639d..60b67fa4b427 100644
--- 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(struct domain *d,           \
 #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(struct domain *d,       \
 #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
diff --git a/xen/arch/x86/mm/mem_sharing.c b/xen/arch/x86/mm/mem_sharing.c
index 99cf001fd70f..6f1ce1623b8d 100644
--- a/xen/arch/x86/mm/mem_sharing.c
+++ b/xen/arch/x86/mm/mem_sharing.c
@@ -1705,7 +1705,6 @@ static int copy_vpmu(struct vcpu *d_vcpu, struct vcpu *cd_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;
     mfn_t vcpu_info_mfn;
 
@@ -1717,17 +1716,14 @@ static int copy_vcpu_settings(struct domain *cd, const struct domain *d)
         if ( !d_vcpu || !cd_vcpu )
             continue;
 
-        /* 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) )
-        {
-            ret = map_vcpu_info(cd_vcpu, mfn_to_gfn(d, vcpu_info_mfn),
-                                PAGE_OFFSET(d_vcpu->vcpu_info));
-            if ( ret )
-                return ret;
-        }
-
-        /* Same for the (physically registered) runstate and time info areas. */
+        /*
+         * 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 )
diff --git a/xen/arch/x86/pv/shim.c b/xen/arch/x86/pv/shim.c
index f08b16bae2fe..81e4a0516d18 100644
--- 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);
 
diff --git a/xen/arch/x86/time.c b/xen/arch/x86/time.c
index 73df1639a301..d0b0986509b2 100644
--- a/xen/arch/x86/time.c
+++ b/xen/arch/x86/time.c
@@ -1542,7 +1542,7 @@ static void __update_vcpu_system_time(struct vcpu *v, int force)
     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);
diff --git a/xen/arch/x86/x86_64/asm-offsets.c b/xen/arch/x86/x86_64/asm-offsets.c
index fbd6c54188db..57b73a4e6214 100644
--- 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);
diff --git a/xen/arch/x86/x86_64/traps.c b/xen/arch/x86/x86_64/traps.c
index f4d17b483032..e03e80813e36 100644
--- 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) )
diff --git a/xen/common/compat/domain.c b/xen/common/compat/domain.c
index c4254905359e..7ff238cc2656 100644
--- a/xen/common/compat/domain.c
+++ b/xen/common/compat/domain.c
@@ -49,7 +49,7 @@ int compat_common_vcpu_op(int cmd, struct vcpu *v,
     {
     case VCPUOP_initialise:
     {
-        if ( v->vcpu_info == &dummy_vcpu_info )
+        if ( v->vcpu_info_area.map == &dummy_vcpu_info )
             return -EINVAL;
 
 #ifdef CONFIG_HVM
diff --git a/xen/common/domain.c b/xen/common/domain.c
index 486c1ae3f7f3..b8281d7cff9d 100644
--- a/xen/common/domain.c
+++ b/xen/common/domain.c
@@ -127,10 +127,10 @@ static void vcpu_info_reset(struct vcpu *v)
 {
     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, bool resuming)
     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_t gaddr, unsigned int size,
 
     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, struct guest_area *area)
 
     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 *v, XEN_GUEST_HANDLE_PARAM(void) arg)
     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 *v, XEN_GUEST_HANDLE_PARAM(void) arg)
     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;
     }
diff --git a/xen/include/xen/domain.h b/xen/include/xen/domain.h
index a6b22fa2cac8..54d88bf5e34b 100644
--- 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));
diff --git a/xen/include/xen/sched.h b/xen/include/xen/sched.h
index 6e1028785d8c..3609ef88c4ff 100644
--- 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. */
diff --git a/xen/include/xen/shared.h b/xen/include/xen/shared.h
index a411a8a3e38d..5b71342cab32 100644
--- 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__ */
-- 
2.42.0



From xen-devel-bounces@lists.xenproject.org Mon Oct 02 15:24:06 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 15:24:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611655.951202 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnKm9-0000Gg-53; Mon, 02 Oct 2023 15:24:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611655.951202; Mon, 02 Oct 2023 15: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 1qnKm9-0000GX-25; Mon, 02 Oct 2023 15:24:01 +0000
Received: by outflank-mailman (input) for mailman id 611655;
 Mon, 02 Oct 2023 15:23: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=QbpY=FQ=citrix.com=prvs=63281d1e1=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qnKb0-0000iK-TO
 for xen-devel@lists.xenproject.org; Mon, 02 Oct 2023 15:12:31 +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 198510d0-6136-11ee-98d2-6d05b1d4d9a1;
 Mon, 02 Oct 2023 17:12:29 +0200 (CEST)
Received: from mail-bn1nam02lp2041.outbound.protection.outlook.com (HELO
 NAM02-BN1-obe.outbound.protection.outlook.com) ([104.47.51.41])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 02 Oct 2023 11:12:25 -0400
Received: from MW4PR03MB6428.namprd03.prod.outlook.com (2603:10b6:303:123::8)
 by PH0PR03MB6680.namprd03.prod.outlook.com (2603:10b6:510:b8::9) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Mon, 2 Oct
 2023 15:12:20 +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.035; Mon, 2 Oct 2023
 15:12: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: 198510d0-6136-11ee-98d2-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1696259549;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:content-transfer-encoding:mime-version;
  bh=Wmu57Iweb823GQ+wLjFQQNOvbip8ENNcd7NtaI7MLwQ=;
  b=aI8rct8KLy1qSPrjQ3Ao32aMqGT6Dyu4IhzXADtJU6iwFrmCrTQp7QsZ
   F6DdYsW2McBgig5NOdEfrYnwrUKG99Bss4rdt7hHVgFq1Bc5fbEPLRUF2
   lHVz4IC3s+JjxicZjoPR+adaMg0C/U+WbCoJmOj8mReJwkiwGgR6JetEI
   k=;
X-CSE-ConnectionGUID: 17r7I/A3QciTLPErLc/vrw==
X-CSE-MsgGUID: Y0x82eQ+TISu8fIK4QEFhg==
X-IronPort-RemoteIP: 104.47.51.41
X-IronPort-MID: 124817032
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:Q96Os6pC4yEPYum1KkbfKLXgU1heBmLuZBIvgKrLsJaIsI4StFCzt
 garIBmFOK3ZMGTwKth2PYXipkkE6JbWm9RmSQU+/ClkRHkSopuZCYyVIHmrMnLJJKUvbq7FA
 +Y2MYCccZ9uHhcwgj/3b9ANeFEljfngqoLUUbOCYmYpA1Y8FE/NsDo788YhmIlknNOlNA2Ev
 NL2sqX3NUSsnjV5KQr40YrawP9UlKq04GhwUmAWP6gR5waGzyNNVfrzGInqR5fGatgMdgKFb
 76rIIGRpgvx4xorA9W5pbf3GmVirmn6ZFXmZtJ+AsBOszAazsAA+v9T2Mk0MC+7vw6hjdFpo
 OihgLTrIesf0g8gr8xGO/VQO3kW0aSrY9YrK1Dn2SCY5xWun3cBX5yCpaz5VGEV0r8fPI1Ay
 RAXAGlSdE+iwMvt+bm6ds1Uq94HJ471JpxK7xmMzRmBZRonabbqZv2QoPV+hXI3jM0IGuvCb
 c0EbzYpdA7HfxBEJlYQDtQ5gfusgX78NTZfrTp5p4JuuzSVkFM3jeGrbIO9lt+iHK25mm6Co
 W3L5SLhCwwyP92D0zuVtHmrg4cjmAuiAt5CTeLgraQCbFu79zQDWEcbbBiHgMKk2kCfeI5mB
 mIU9X97xUQ13AnxJjXnZDWorXjBshMCVt54F+wh9BrL2qfS+xyeBGUPUnhGctNOnM87QyY7k
 ECAmdzBDCZq9raSTBq19L2ZsDezMig9NnIZaGkPSg5ty8XqpYgopg7MSttlH7+4ipv+HjSY6
 y+OhDgzgfMUl8Fj/6em+VHKhRq8q56PSRQ6ji3MRX6s5A59YI+jZqSr5ELd4PIGK5yWJmRtp
 1ABksmaqeoIVJeEkXTXRP1XRO3wofGYLDfbnFhjWYE78Cig8GKieoYW5yxiIEBuMYAPfjqBj
 FLvhD69LaR7ZBOCBZKbqaroYyj25cAMzejYa80=
IronPort-HdrOrdr: A9a23:vjMu6Ks04Z9IIHlevf27gO117skDgNV00zEX/kB9WHVpm6yj+v
 xGUs566faUskd2ZJhEo7q90ca7Lk80maQa3WBVB8bBYOCEghrOEGgB1/qA/9SIIUSXmtK1l5
 0QFpSWYOeaMbEQt7ef3ODXKbcdKNnsytHWuQ/dpU0dMz2DvctbnnZE4gXwKDwHeOFfb6BJba
 Z1fqB81kedkXJ8VLXCOlA1G9Ltivfsj5zcbRsPF3ccmXWzZWPB0s+AL/CAtC1uKQ9y/Q==
X-Talos-CUID: 9a23:DkldGWCjkBtp7zT6E3A47hE1Xel+S3bc8FPoDlWcAiF3UqLAHA==
X-Talos-MUID: 9a23:rpP3kwlfC++2O4zE68F7dnpTbNc4uamXS3wsqohWteinaRVdFTeS2WE=
X-IronPort-AV: E=Sophos;i="6.03,194,1694750400"; 
   d="scan'208";a="124817032"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ijVBSAH1E9YQm/+RCyuPbs9r4A3PfVJK6X/TQLGxd7jMFFhWSu0XvDX02bCHpKM9JHEyagfdUedlb69SaMcBz3PRwy0rLR01/UBQZ8pX0+qcpHuES7dvoDXguBWMWVA2EAzBzV2v6/qgFVJq+AM6jqJ5XfE6Z3c9RuMlyWT+p4aGaCxqE1g0bxcNcUVX3YO44h1tPYjEf3Rw5CHtFiXId1JMbr0IU5C80xCFGYUP72lhYQVSyc0O2uHFR2J18perd5fPPfG8vK/SfryzdcfFuFETLo7+dT1LJgrCLyl0tXpzWoVqBZrT6QuloQPK8CgDpLEizSTVR4aX8zBNAiC+eA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=nvG7viCgQSkvoHQeBIteDFdRPqHhGGdm2eXXhEsoH1M=;
 b=F1xlt7C10eGaajsY+JSCnVRwUBX4DCKUW4xsPzSz8IeJI365bHfn3uwSfBluPkUn8rwuoBRAikJld8Lqu3Bf5h0+Ce10McXOxQPW5AzU1p10qiiKOTsyWIKm9n99tEZL+ZVtVs4B6XGZrkloTI3l4AvCM/eJxRixDpfz/SbI9ZjlH9Bk+gG3aSKxtvckSILYBXMY0fVdapOIa3E4heLKCB+/awb82prxq+9pczC4uNeulRVvVksCE4qVbcMs1xDVkoTnxYmlZhBOrr8QeZ8qUusUR4H4PRiVdbdzch8QJS2q9dm5Pkxf19UKWo/6e1ViOsk3Vyo5z0FZO2OCdXI0bQ==
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=nvG7viCgQSkvoHQeBIteDFdRPqHhGGdm2eXXhEsoH1M=;
 b=EjX48Uk6vz3+maFxMsbIzx6buFCGHFxQwehUB9iNLc0oKzYuwBHJW/a/h/FzaUh/CJ77FyXAJxEKwxvx9NYS7BJyej0in377R7d2SnhqDMbE4xMffesJiA/FsyJduEMD0ATqWm/giOXelQGza6cTSp/sqa151yqLD5KhSUFO09I=
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,
	henry.wang@arm.com
Cc: Jan Beulich <jbeulich@suse.com>,
	Tamas K Lengyel <tamas@tklengyel.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>,
	Wei Liu <wl@xen.org>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>
Subject: [PATCH v5 06/10] x86/mem-sharing: copy GADDR based shared guest areas
Date: Mon,  2 Oct 2023 17:11:23 +0200
Message-ID: <20231002151127.71020-7-roger.pau@citrix.com>
X-Mailer: git-send-email 2.42.0
In-Reply-To: <20231002151127.71020-1-roger.pau@citrix.com>
References: <20231002151127.71020-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: LO4P123CA0168.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:18a::11) To MW4PR03MB6428.namprd03.prod.outlook.com
 (2603:10b6:303:123::8)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: MW4PR03MB6428:EE_|PH0PR03MB6680:EE_
X-MS-Office365-Filtering-Correlation-Id: 048fe6c9-26a6-425c-3660-08dbc359f871
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:
	o0aZu6URk6qrBrXCnjvk0o2cgRxkoHQ7WLTEXSuXT4G/lxOvxW3so3DXGwsQ8OQMZ1eDUuDsiXAwHK0scbuleeSasBJytL/bX+TBfGjPwjvhhbNWOuKLNbde9FsHpYaEnnJQ7REIzLn0reeNBGmVPNEdih/yQidKVZxkiFYdB033oLQ9fdaYh/lDnCg4qt0/smNtaBRDkoXpCI7GKaA1Yijj3eu4y+8iFmCQsuk0WzA7BqAeLM9d/DdUiVVouOzk0olH+BaEXZeisat4rA+ol4+kexAsIPnK2W/hVcPUcYHWlknTkVtI9uCHAhA2p+Cv5dNFOYXqqPkRwM8Wdf5NARjBid9kKd0weKnK7kmgqtIF1jLYXpqOZwxtzara78YeRoonLxFtnp5tUbZlLF2/W/mFxKMWa8cMwMNHSFyXSYCvQ6yiuENDLXT8TyQiZE12Hr1DBoPLU1eAXCEl1w5yP1RLgT9VRs74VmviAct6UmIjKLz6AvId7UE9F5PopDtxoqPgGudDAfcrkuBSDKl0wso4KiHYg1OjI/55adM/bFlfo3MdC6PJ5Iop89iwEOUn
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)(376002)(366004)(396003)(346002)(136003)(39860400002)(230922051799003)(451199024)(186009)(1800799009)(64100799003)(36756003)(2906002)(7416002)(26005)(478600001)(4326008)(8676002)(8936002)(6666004)(6486002)(6512007)(6506007)(2616005)(1076003)(41300700001)(316002)(54906003)(66556008)(66476007)(66946007)(5660300002)(38100700002)(86362001)(82960400001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?WmhPNEhYQkZiUUxtNTZCRzZSKys0Yk9jZHAwTW9BekVXYWMyTjUvM2dVN2ZT?=
 =?utf-8?B?SUc1Sm9wT29MK1RtQkxDNjBBVG43MUNDTmpqNExPanRMSDhEZjdpSVVqNjZx?=
 =?utf-8?B?QWtiS1RsVHhiZnAwcWVvdVhod3hFNXlUcVhtN0ZncEJ3Tk1JK1VkQVJCK0to?=
 =?utf-8?B?YURsdTdjY20rQXFtOTdQRWM5bk81MDRBODlJOEpuYU1XR3JMMFRJMDl4MStW?=
 =?utf-8?B?VmZRdDlheXNTa05FMjFIM1ZpY28wK01GYlJ3ZFhBYXN4OXZQSW05dkNXMjRq?=
 =?utf-8?B?K2lJZ0hXdERONTNIUXhEdFIzNTdJN0pvdkxpck5FbjBMeXBVek9acVgvREdE?=
 =?utf-8?B?SUh0SVdESTExd1R3V29oam84cnZJUWhHd2lUeURha2RQZ3FYNnBxbkdPMDFy?=
 =?utf-8?B?bkNsRkRkZGUzd3RnRCtzNnMrT2ErZzBkbFlrbEkyeVFRV3ZMM21tNWc5RUEx?=
 =?utf-8?B?RmtTY0lsRFdxQXBMK1R1N2NKL21DQmxlS1VRUkdpR2pUOFlmenRaQ2krUCt4?=
 =?utf-8?B?ZUx2VytDcWNJcVh1b3FwZmRURWNvYkU4ZWREYkhHeE13VWljaE5hNzRiS3RQ?=
 =?utf-8?B?M2h4VVBZaU0rVmpsRlltTEIyMDllUlUwK2liVjFvRkFQem9wVHhOMkNyQTEw?=
 =?utf-8?B?blJNTFFPZmhXM3RZVzZSSVlZcWxITjVXN2NWcVRjcWJpRlJxN3JYbGpaM3Y2?=
 =?utf-8?B?ZW5BQWRxMTRVcUsyQ1hDM1RYZWpFUXdwNjV2M1lrQ3NNR3cvT2lqMGZoR1Rk?=
 =?utf-8?B?NHpSbjBnOUptcGJOS0c1UzdDTndGTUtWQVdmdzJOVlZ6NEdTVlZOWVM0NUJT?=
 =?utf-8?B?TWUzOVQwK0d2V1VKRytLaGNiTStnL2ZKSGJrUUVJUDcyZ0l5QWQ1aFM4VG5V?=
 =?utf-8?B?Q2NWOEJaTWhiN2RRTjcxVm5sVytmL09BVEdibTI0ZWgwK1U3TXJwcFFyWlNX?=
 =?utf-8?B?VG1QTER1Z2VuMVhEOHk4cy9udlc3eWVoQkZIQmVlUm5FWXExRkh4VGVYMHVj?=
 =?utf-8?B?RC9EL2VwV2x1Wk4yeThOTUZNU1lzV2tmMzZSZm5xYjhaKzJrNlYvQ0FwdUVB?=
 =?utf-8?B?TWlEZHRGS1BqbkFKSjFqa2w0ZXlsTmgxamhuSlBpYkVhMUpScTBtbkxqcVRE?=
 =?utf-8?B?d1BBTlhPS2QyR3BxY0VVMU1nRjh4bWI1MFR0OFlpdWlKa05zUGxuRVc0Qll4?=
 =?utf-8?B?YXJyWnl4blF1YkVEM2JSMHpyNGdiZWVMcFphbWx3c2V1TkRlVlVVb3pvaFhr?=
 =?utf-8?B?U2FCdjRPTUlGd3RlU21OeDViQ2VzcEE0c2JYeTJDWmxMWHpYS0xyUzlHZ0Q4?=
 =?utf-8?B?b2ZGN3VQTUlwNjZSYzZEMVByM0x0K0RuTDFJUGdhelNucWREU0tqWlZOa2Y2?=
 =?utf-8?B?akIvSnYwdTU5Z2Z6RzZhcGU3S0htTkYxZzlUbnVNOWd3RFFUbmdzS3h6K3hK?=
 =?utf-8?B?bVhFVnh4TUhpdGhmTW0yL04xUmNDVTJRbFdRblFIMkVvRFY4UmFyY0I0S0F5?=
 =?utf-8?B?RVhZcEtXSXZLVTZjaExleFJrenA0TzZNdTVlMElJcG5rUVhDWW14TzJVMDN2?=
 =?utf-8?B?OHZhakR6K29ueHovMkhwTHE4UnBQWGRjZGhUcDF1TFBZWHRzT09sSVdOVjFt?=
 =?utf-8?B?ZGg4KzhDOTJzanBWdjVhMWJkNnI5aExwK0VVbkNhdHJZeEZIOS96MFAzcmdK?=
 =?utf-8?B?MkxDaXROSjNBSmN4dk5zSDJTYklFV25hOGFmNzZlMEo5dnI4cmpRcXFkdEJJ?=
 =?utf-8?B?VnpBRWJqWmVrZGtXeTA5bFZaV25wWWMydDRkdnlOSFdiQjRRYlgvYy82T3BH?=
 =?utf-8?B?amdINGpYY2xZVVQ4U2U1ekFzcGxQaUx2R1lzYi96bmlLU1pFc3hoSm1ROTVo?=
 =?utf-8?B?cGtNYXoyQ3hIeStDM0lGbXVXNjRhSnZJYXZmVzVmMjRzL1o0ZWVYL0lLbFhl?=
 =?utf-8?B?cEJIbmI1clkvZ1BwdDFsQXBnSlZSSXhibVFYODFFMFBVUG1Qb1VhL205Q2lv?=
 =?utf-8?B?bzhSZ3Y2aTRSZFNzdVR4TS9WNkJyRTNGYW5pbTRTdUsxbE53cHZvNFFGMFRD?=
 =?utf-8?B?cmc2WGJtY0VNcXBuSmFaa3hNVEdkZXM4TTBZaDFhRXhNOEF1blFWRkJ6Z25C?=
 =?utf-8?Q?6LgVfRVVgbZuUFCxYptpJIGfl?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	0sR0FkxPL30dtLdZMUUerZTSSjwWvza8b4CdnVpbP0uZYTWtZJD37d39OuYKZtsWdMCKcP04vMQ9QkQwnnQYUGDVS8v00GUZZbsvxdgs0ATy+9vz5Ayp3f4na7eZtT6zdkcLuoPrDKRh6thQ7Tn8v0ynyHfkfG2vTXjUUSBKyjynXKDNb0wkQ9lRPIDjZpYF0UR2ggTqDVkUno8kppbxyu1HfV0a/NEfHUhn7ua5m7qoJfbXcfxJyMmYP7B7SYLEr2+P3jPleURGnA2bEPae6inSEF3kkIvGH4cvX/lgo+64Q9EG3G8iwlC/ebVdShZs08VjY4chfE3FxewH2ReGq+sZis6vJzSKzQ3MEato4SPAldbn4uYmeKHEiLENE43+OTEWLpP8J9hxqle8p1k2OQnK4NMj/R8xwLRnnTxMz4KoddeyuCJztDOscjurxVgJUmOm5b3KrhL0S/seT+bwjpSykCYrcMskGIv4NdL3rHm1ITkdSMTTpk3I7iDyfyk6+NcUy54LsOdbBZNOnumzgeu7BkB3krMtf+8m4KU8O+u92YYKONCzIZeW/gRDHrDNXHVCRrxoWffBASSKnWV3K2XRcsqYL6w7XX97j7w80lhYMT3lnfeHq0IDITLvjv0flFxBrn2oDmWZt79iFwwDi+s9qUEPniYazWl/Rzr6CFiMPeWfCr5GitfAggCSfGWv/8Webf8Dz9LUpDBJ8K4D2OqfGF4tk9WcYra+327EuvfLFYfwEdxrQHqWSrVMDjcw5DJmOfBl9Nfq7gedsVNs6kVWiXKaynUbEy9qfE9pLFbcsXcR54VR4C8sCmd3tgWgbwsIwnEz+BZaTgyjIJMe/gTmxllhghY335wdRhLPSyuNGsbv0MTYMICwNpZjhJ75oQZbF7GMnzNdcUV9FT789cHa+sXBic4uct1XEAy5rBM=
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 048fe6c9-26a6-425c-3660-08dbc359f871
X-MS-Exchange-CrossTenant-AuthSource: MW4PR03MB6428.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Oct 2023 15:12:19.2895
 (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: ul2ZOnIbcaYNCp/oRCJoS/UtestZo3QuqEcgayIi/Gc2xT7xAFIes/XeZrCkKZMm2bWJYh6jRpg41FIx7+qnFg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR03MB6680

From: Jan Beulich <jbeulich@suse.com>

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>
Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
---
Changes since v4:
 - Rely on map_guest_area() to populate the child p2m if necessary.
---
 xen/arch/x86/mm/mem_sharing.c | 31 +++++++++++++++++++++++++++++++
 xen/common/domain.c           |  7 +++++++
 2 files changed, 38 insertions(+)

diff --git a/xen/arch/x86/mm/mem_sharing.c b/xen/arch/x86/mm/mem_sharing.c
index 5f8f1fb4d871..99cf001fd70f 100644
--- a/xen/arch/x86/mm/mem_sharing.c
+++ b/xen/arch/x86/mm/mem_sharing.c
@@ -1641,6 +1641,24 @@ static void copy_vcpu_nonreg_state(struct vcpu *d_vcpu, struct vcpu *cd_vcpu)
     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)
+{
+    unsigned int offset;
+
+    /* Check if no area to map, or already mapped. */
+    if ( !d_area->pg || cd_area->pg )
+        return 0;
+
+    offset = PAGE_OFFSET(d_area->map);
+    return map_guest_area(cd_vcpu, gfn_to_gaddr(
+                                       mfn_to_gfn(d, page_to_mfn(d_area->pg))) +
+                                   offset,
+                          PAGE_SIZE - offset, cd_area, NULL);
+}
+
 static int copy_vpmu(struct vcpu *d_vcpu, struct vcpu *cd_vcpu)
 {
     struct vpmu_struct *d_vpmu = vcpu_vpmu(d_vcpu);
@@ -1709,6 +1727,16 @@ static int copy_vcpu_settings(struct domain *cd, const struct domain *d)
                 return ret;
         }
 
+        /* 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;
@@ -1950,7 +1978,10 @@ int mem_sharing_fork_reset(struct domain *d, bool reset_state,
 
  state:
     if ( reset_state )
+    {
         rc = copy_settings(d, pd);
+        /* TBD: What to do here with -ERESTART? */
+    }
 
     domain_unpause(d);
 
diff --git a/xen/common/domain.c b/xen/common/domain.c
index d4958ec5e149..47fc90271901 100644
--- 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
-- 
2.42.0



From xen-devel-bounces@lists.xenproject.org Mon Oct 02 15:24:24 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 15:24:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611658.951212 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnKmW-0000oB-CY; Mon, 02 Oct 2023 15:24:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611658.951212; Mon, 02 Oct 2023 15:24: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 1qnKmW-0000o4-9T; Mon, 02 Oct 2023 15:24:24 +0000
Received: by outflank-mailman (input) for mailman id 611658;
 Mon, 02 Oct 2023 15: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=QbpY=FQ=citrix.com=prvs=63281d1e1=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qnKb2-0000iK-TT
 for xen-devel@lists.xenproject.org; Mon, 02 Oct 2023 15:12:33 +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 1aef2bec-6136-11ee-98d2-6d05b1d4d9a1;
 Mon, 02 Oct 2023 17:12:30 +0200 (CEST)
Received: from mail-bn8nam04lp2045.outbound.protection.outlook.com (HELO
 NAM04-BN8-obe.outbound.protection.outlook.com) ([104.47.74.45])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 02 Oct 2023 11:12:28 -0400
Received: from MW4PR03MB6428.namprd03.prod.outlook.com (2603:10b6:303:123::8)
 by BN9PR03MB6188.namprd03.prod.outlook.com (2603:10b6:408:101::18)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.28; Mon, 2 Oct
 2023 15:12:25 +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.035; Mon, 2 Oct 2023
 15:12: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: 1aef2bec-6136-11ee-98d2-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1696259550;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:content-transfer-encoding:mime-version;
  bh=psChbXevVQDev+FecL8Znn3KSLaq4hCGvgjWrrp1GF0=;
  b=PLDqXYYt71ySyDpLloJFQvwiebvQwxds0R3F+MeA7No7xSuTrKYs1oC9
   bTPFxpojngfxH6Tg9dzPy5QwOnNnlixv/NO0Krzz93qqjhaNrhaeSImNP
   MnVyj8LbCjpzF+4JNz4fkb3hz4zai125omDmDR4aR+nVB+IVo5EJf8WW2
   s=;
X-CSE-ConnectionGUID: A9L7y0N9SiWSdMHovdX94g==
X-CSE-MsgGUID: EDmfyoThTZGrEjmFdJkNDQ==
X-IronPort-RemoteIP: 104.47.74.45
X-IronPort-MID: 124817058
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:MqvB86DRi9i8KBVW//Liw5YqxClBgxIJ4kV8jS/XYbTApGkggTcAy
 2UeUW3VOveMM2D9eN4iYI21p0pQ6JXSz4cwQQY4rX1jcSlH+JHPbTi7wuUcHAvJd5GeExg3h
 yk6QoOdRCzhZiaE/n9BCpC48D8kk/nOH+KgYAL9EngZbRd+Tys8gg5Ulec8g4p56fC0GArIs
 t7pyyHlEAbNNwVcbCRMsMpvlDs15K6p4WtA5ARnDRx2lAS2e0c9Xcp3yZ6ZdxMUcqEMdsamS
 uDKyq2O/2+x13/B3fv8z94X2mVTKlLjFVDmZkh+AsBOsTAbzsAG6Y4pNeJ0VKtio27hc+ada
 jl6ncfYpQ8BZsUgkQmGOvVSO3kW0aZuoNcrLZUj2CA6IoKvn3bEmp1T4E8K0YIw07dTXnAW0
 60jKQ82YjWjgPy68OPnRbw57igjBJGD0II3nFhFlW2cJ9B2BJfJTuPN+MNS2yo2ioZWB/HCa
 sEFaD1pKhPdfxlIPVRRA5U79AuqriCnL3sE9xTK+exrvgA/zyQouFTpGMDSddGQA91cg26Tp
 37c/nS/CRYfXDCa4WPfriL12beSzUsXXqo/OLi25/lWgGGh6XY+Chg4WXm4h9WA3xvWt9V3b
 hZ8FjAVhbg/8gmnQ8fwWzW8oWWYpVgMVtxICeo45QqRjK3O7G6xBmUCVC8Hd9Ugu+c/Xzls3
 ViM9/vrDzFytLyeSVqG66yZ6zi1PEA9L3IGZCICZRsI5Z/kuo5bpgnUUt9pHaqxj9v0MTL92
 TaHqG45nbp7pdEP/7W2+xbAmT3Em3TSZgs85wGSVGT16Ap8PNKhf9bwtQWd6utcJoGESFXHp
 GIDh8WV8OEJC9eKiTCJR+IOWrqu4p5pLQHhvLKmJLF5nxzFxpJpVdw4DO1WTKuxDvs5RA==
IronPort-HdrOrdr: A9a23:8IkXWqyPjDacIpRYVDNIKrPwKL1zdoMgy1knxilNoH1uHvBw8v
 rEoB1173DJYVoqNk3I++rhBEDwexLhHPdOiOF6UItKNzOW21dAQrsSibfK8nnNHDD/6/4Y9Y
 oISdkYNDQoNykZsS8t2njcL+od
X-Talos-CUID: 9a23:VOXadmyq5Ka5kfamPINJBgU9S+R6YyX7nUzRHHS0LEZuVrGlGAOfrfY=
X-Talos-MUID: 9a23:ucyPhQm/dxHKtfsaPLRQdnpPGMJm8qOSCHw/vo8rucyqOQ5zHRuk2WE=
X-IronPort-AV: E=Sophos;i="6.03,194,1694750400"; 
   d="scan'208";a="124817058"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=d7+yE8xU+03OhcQfKfQkPtIq2J4q8+vFFW/nSnABIaLhqHSwGVw9UMXrOjsgpbHpiQEl+EGGYMSL1RSiCAmeE7z/03rsxasjrngwm9x5Oq+hQclw9+sGfN3CBe+CFYqqEvp33FUSAWwR4OCETyoO0q24goFWl6xVA6t7kCk0vQmO2upWDD3RoaDBtUUTRTp53EnkNrRzZ4ffuqRMw4N6fwlXfIOxOcgix4zQuBoKestxMRtkM/L9wfHfE1NeHlzVuQgjZrrF27y/GSec03iwsrkKKj1/bGb699P7AaZbpzn41cectRBaOQkB2QHFikXp3P/tHcYHOyGddA5d7mjtpA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=PHzEv0bBVjJyC3Xd0ymJb5ygmas8Z04naThhX+BBIfg=;
 b=QPwANCEejrhVdj46jA5TUpsQBt+XEw254v0oUqjLU4+RLikqwYlXavleNMCEW4HL9VYVSxpMmQQL6CqBrZ6+83n1GU+1R2RMSc3sSzs0MYY3zeXrrONwuh7PzesrGMjP5uQvbyVei8+ROhRJEG7QxWxjDpACh7OOQkUzaUvJT7Akb9OGlWWdo+8w9QaHFqdYKOd8fDhoGvbuyiDjQgbDCWjILbT+J1wT3bbNnmY+3xcU3XLT/VD/cbXP8QiPhlv4SwbbE4sbTI5a9CipkqxKF0O3rgx27PXzJdWqVVbZT0jMTE9nrW7WIrfOzHY5YguMOTdZxv9v3xCzaeXqg8XHUQ==
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=PHzEv0bBVjJyC3Xd0ymJb5ygmas8Z04naThhX+BBIfg=;
 b=eaYNIs/4MoFlul1RibCXcV50eVOEoZ5YPo0pLrhQWcWW16gxzcy+ORF6Wh7RacWyfS4YkJYwOJ606L0S0wwwkiv0iQkj2hRyREiY1LCQ2dod1l7IiZcCl/f2VrmYCwDPSPLwf65djj9ZtIc+qiOWm0rFflowogYKbT02ZZpXpHs=
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,
	henry.wang@arm.com
Cc: 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>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>
Subject: [PATCH v5 07/10] domain: map/unmap GADDR based shared guest areas
Date: Mon,  2 Oct 2023 17:11:24 +0200
Message-ID: <20231002151127.71020-8-roger.pau@citrix.com>
X-Mailer: git-send-email 2.42.0
In-Reply-To: <20231002151127.71020-1-roger.pau@citrix.com>
References: <20231002151127.71020-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: LO4P123CA0111.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:192::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_|BN9PR03MB6188:EE_
X-MS-Office365-Filtering-Correlation-Id: 26aadd2b-5455-42af-3424-08dbc359fbe3
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:
	gEzwI7qaiwqowvA7WR43F09zOYVyQSpTlFjycOKamLEs86Hx7ChEYIchIDyKizgBhtgVRihvydR+O+4VCfGbKeRqLIcaY+ubtDgX+sbQ+2HS8+M/31EUZUvo8gBFigVRKwzE0WPpPJB912iTs1rzOFMwe5TUNRNcQwnw5fNPxGu4rU/T5cWx+nWch48ydnsm1E8GyQpsB1Q18RZfI2YqqP/tW7AvpuqPlZpI30/YCWCbmthj3TvnfsvsQcr9SjYHaWvRzQZfGbrMgVD2i4Y9TRgD7qTawy9ik0mMSZZD2+fze2XVMqWCsiLmzpmQ5PGt+V8kwG+YZfckUkVKpZXDQxUlFjn3W70EmFMegeFYckOM00aQb9abE63uGT9wysL+8nGR4nu5e20GX8mS7lVfVOEP7+l1S2itU7VkneT6KdP17gYCNT96JCVkFID25P76jYvndYq3Rx7fmfJsUPLLLiYbvDvwS2RpVpjHJFRNoRiuGVCKWh3fl6YEJcLsE3ED7kOKP2sjLLzcVc8shqeyN6/WOUy8fcsFnOSEMDEMOAOlCvsy4yDGWBHpBj/EdvLW
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)(39860400002)(376002)(346002)(396003)(366004)(136003)(230922051799003)(1800799009)(186009)(451199024)(64100799003)(2616005)(107886003)(1076003)(26005)(83380400001)(82960400001)(38100700002)(86362001)(36756003)(316002)(54906003)(8936002)(8676002)(4326008)(5660300002)(41300700001)(66476007)(66556008)(66946007)(2906002)(6506007)(6512007)(478600001)(6486002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?V2wzdUlIUmNRUTBDRjRYenluUDdxeTBoYVVPeUZqS3piNUM0NEk3VjBnYlgv?=
 =?utf-8?B?VFhtcTBHVWxRckVjSFByM2JYUm5JQlNpa0tQUEVTWWhJZlFWVVZ6YkV0ZkxX?=
 =?utf-8?B?RmZjZy94c0NmTGlZanJjSjJjY0Q1enh0VmdpU3AzcDJjTUhmNjlOTFJPVVZy?=
 =?utf-8?B?dTBwTGNvZ29SZHM4V0hES3dpVDRyOXkwSnphZU5MUjRjUGVGTWdFRzREejhG?=
 =?utf-8?B?cjhIMEFaZXlSUVhlYUsrbm02MGZWL1Q5ODhvS2F3VHVRdHNXVDNhTWZSMDU0?=
 =?utf-8?B?aURNWTRuLzkwdVlwTmlnYXVWRzUzbUR3U1Y0NVJHRmdKcHRmVDZkS0FXb215?=
 =?utf-8?B?S25KYzB2dnE2K1paWlpKTitVK1VKSkFUUXE2emxJOGdKV2crVHBVbDliOE1o?=
 =?utf-8?B?UWVxeTdLY1QxemRGQzUxRVVqQjlLMThoNStseGs1SGQxYk96OUV5TjJkaGJ5?=
 =?utf-8?B?OSt2KzB3blZ5ajRPVFQ1aGtiTGZ5LzZ2dUJ2T3lvQ0g0a0dnUVBnUDREeDkx?=
 =?utf-8?B?UytOaklhN1Y4cG1UL2lmeXF3dTVqMmF3SnErWnpSQkFFbUJOR09tK3ZWYU9p?=
 =?utf-8?B?ZkR1UjhMUDFuSkErRUFRQ29kek9qY2d2WWRVbzBzNGFxaEE2a3JJUGQ3amVD?=
 =?utf-8?B?SXlzbjJIUVhJWU1xVkdSQnl6bXR5b3Y3NVZzWW1QYXhpRXoyM2FkRmpDWmdP?=
 =?utf-8?B?aU53MnlFcmVoK3ErRTU2c1dKMHJwQ3V0L05BdjltZDFQbXo1WjJHRCt0dUVo?=
 =?utf-8?B?WTQrUEkxckVpZ1Z5YWtuN2VzcGh5QlJPWjU2eFFzWk9UTXVtMS8wc3M0SEVa?=
 =?utf-8?B?ZmRHOE9oVjFETVl3Vnp6NWhpamVrZStrSEhGTlpnMkJsTmZNbTlrTUIzV1Y0?=
 =?utf-8?B?blY0VmI5em5GeTEwS1NYOG5IRE50T0dtUHcxMGNCbTl0VEFtcjh6Z1hNcktB?=
 =?utf-8?B?a05Zalg3aWFBUnBRaVRxeE9CZmw3ay9wSUltSGZmSURSbktlUzBLWUlmNDA2?=
 =?utf-8?B?NlBweE1NNC9KK0ZVRWVoUFVWZkVaMXFzNDJPTTN0eGN1dWVoU0hhNnpqakRR?=
 =?utf-8?B?RDVab3hCTTMxNExEbmhpL3JUUTVldWxNYkhtWjJqaUhJak9kalAvVzZSdjRh?=
 =?utf-8?B?bHZKOWZocnJsU2NtK0tFajJsc0RhRUIxMy8yOVJYcjAxd01EYW9UMEt3TzNF?=
 =?utf-8?B?L2wzVjIxL3dHZ08xbjVWeXZrYkUxR3IrWEZQZlJMZHFSdEpiMk9Mc1Z2S3E2?=
 =?utf-8?B?YkVpLzR5VVFkUlVuVEtpeSthQUJua2lZOVBKa1doemdoSG9qaUdLeEJ2MXVa?=
 =?utf-8?B?cFhQWEpOSHhhVUtyYW5od0hLY28wK1ZiZ1VacWh2bjF6N0FFWnlablM3ZExL?=
 =?utf-8?B?alo4Y1VrcDRZMW1DY0lDS3g3WU1wTXAxc21GQlNITmMrdXBOamRjZUhSMHN6?=
 =?utf-8?B?L1pJV3FMRWtMVk02cnpVL0xzK052alJCNWxaOEFDSHNjUXdiRnRiL1dHVjJ0?=
 =?utf-8?B?aDNjdEFydSt3VWNRNmRiUXM5S0RqankzL0dOVk9iRkx6cllQVk5mc3ZiSVZN?=
 =?utf-8?B?VUpnNVo2S29xNWhFZjdmdEY3NU5tLzVSREpSQ2ROK3U0OWhtRDdSWDdrYTB3?=
 =?utf-8?B?RzYxNEZlUGsvWk8yMlJSaG1Id3Z6dTZmWUxxMUZvSHpjZSt2dU1hK1N5UGgr?=
 =?utf-8?B?eGdoUS9TWG9DL0N1bUYxNzNiYnV2Sm1DVDBWRCtSSjNyUGEwN216NGFPZC9Q?=
 =?utf-8?B?VDJNdXVZZ0tiS2pMaE1uSmYzVkRSUGxmN3VoeUdPb3dtRllQVkhJMVEwb0d6?=
 =?utf-8?B?aU45ZUhUSEJxR2p2bnhIdk92V1dlNnd3TUk0bVpSSFlhSnhjZ2pGS1RhallR?=
 =?utf-8?B?bm1ZQ1VPaHV5STROTVpzZFB0M1VwUzJKK0FsVXRzbElTczUyUjV0L0t2eDQ1?=
 =?utf-8?B?ekFVKzZiUS9YR2VkbFhEbFEyamh2cGV3UXJ0OEtIQzNsOWpyVEZYNThPcXVu?=
 =?utf-8?B?MDdyR3FWOW9xbFB4WGMvcnpwYjNFWnFBZzZod1pTeDgzbFdwNHpLdkh1UFNB?=
 =?utf-8?B?Y3VwQncvQXoxQVp6WGpPam1pRXhPbmxQUGxwcGR1ckxOVkRFTHZWT3R0empX?=
 =?utf-8?B?RGNXZUNuSk96SDNJT0U2SU03WmFESmlTY2VMalBBczdoR0RyWHV5YWxrb3h5?=
 =?utf-8?B?cnc9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	GwbOEnPr10kxxSrMNhQcQRUGPnHnJIbcZdtOjeMwWb+HGM1bXWLI3BUS7KJT8dliItiC9UtCVabgxx2WCXU/KbbVpMC6LZRFIlC7Bq5D60SKT/LFqXWp3UWlxgnYXaqqHYEEDnCxlf08hdPqFgeJJkAK/1Fm/GEknxnL9QxJSXvE6rwcCFRsyzoLSse8Dd0fxd+CjM1acB0C0b6Jk8aqMvkpHKWzdf+TgkNF33tFUisZ1JSPIaJ5kxbBVhUsdZFVaBhNpLbh6S+v9inGmGAfRh+ik5P7uVMxd4elxuBRpeA2RNk50Pz2dE0qAytfuM/PmnJcSrvOgO8S7T1X2dngq9htq02LAEYtL2DBuoH+4Ujzy03UnNmG4lujbWAoKlpc76dXTseAh3+JoD3Li6FDUUwKekdN5lLjynQhw/aMo5OcPnug6BKkmTJWpawvmNCU7R31sUrET7LMrs/z5tgORP8onzXukYxYKSbuRVeVzoHSs5f6/zf/1vvGt9TNSF0BPaaX8pIHzv+IrFsaWtGOfbCzaiYV8LGW2tYQD3OH0+DUluDbGb51IZ9IsXfT3d2rMK2+3IYM6zjLWRfpybck3cC27fZeT60Vf8N9ZgxlQmMfRP3rpz6J6aXoVwUbJByurtKclj8QRsO0LcaHfF6R7c+IjhxvCNY61u9thHB8xr0R4fRgeQ7/NCYCMAoy+kNTG94TFTldAFHmMUWIfL5r99PBueGS9pzTeA+zTHrBkLLmQZaYjFwZbUpFhWrawywgHiwo2lhCt/xjDfn/mZ+ipix9OX3sqQWyXc7QjA65rP+iJeXHfB8jvj+TftXrDotUwZQJ88CLLhrQ7theBWmDYlX7G8ng2a9RMiagG3EebaIuw2jO7gQbZbgxkE5rjddG
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 26aadd2b-5455-42af-3424-08dbc359fbe3
X-MS-Exchange-CrossTenant-AuthSource: MW4PR03MB6428.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Oct 2023 15:12:25.0681
 (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: 8TV/QUCpK8ivYHdsotAi9iDzEZ537Hd1qm5BXS9xLWc3KQX80BoSlACa7H2VJBoQbP+6T5vW9eQGFPFC+nCm3A==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN9PR03MB6188

From: Jan Beulich <jbeulich@suse.com>

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>
Reviewed-by: Roger Pau Monné <roger.pau@citrix.com>
---
 xen/common/domain.c | 92 ++++++++++++++++++++++++++++++++++++++++++++-
 1 file changed, 91 insertions(+), 1 deletion(-)

diff --git a/xen/common/domain.c b/xen/common/domain.c
index 47fc90271901..747bf5c87a8d 100644
--- a/xen/common/domain.c
+++ b/xen/common/domain.c
@@ -1605,7 +1605,82 @@ 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;
+    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_t gaddr, unsigned int size,
 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)
-- 
2.42.0



From xen-devel-bounces@lists.xenproject.org Mon Oct 02 15:27:02 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 15:27:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611673.951222 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnKp0-0002dX-Ti; Mon, 02 Oct 2023 15:26:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611673.951222; Mon, 02 Oct 2023 15: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 1qnKp0-0002dQ-Ot; Mon, 02 Oct 2023 15:26:58 +0000
Received: by outflank-mailman (input) for mailman id 611673;
 Mon, 02 Oct 2023 15: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=QbpY=FQ=citrix.com=prvs=63281d1e1=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qnKbH-0001wY-Pj
 for xen-devel@lists.xenproject.org; Mon, 02 Oct 2023 15:12:47 +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 235d5713-6136-11ee-9b0d-b553b5be7939;
 Mon, 02 Oct 2023 17:12:45 +0200 (CEST)
Received: from mail-bn1nam02lp2045.outbound.protection.outlook.com (HELO
 NAM02-BN1-obe.outbound.protection.outlook.com) ([104.47.51.45])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 02 Oct 2023 11:12:40 -0400
Received: from MW4PR03MB6428.namprd03.prod.outlook.com (2603:10b6:303:123::8)
 by PH0PR03MB6680.namprd03.prod.outlook.com (2603:10b6:510:b8::9) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Mon, 2 Oct
 2023 15:12: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.6813.035; Mon, 2 Oct 2023
 15: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: 235d5713-6136-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1696259565;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:content-transfer-encoding:mime-version;
  bh=ISEr4708eEwbI3KjLaRXRXqE7bGvsZ1eF/8NLrTQb+w=;
  b=huMNTENRjU57cQQW1AMrils2MTHUbL3gWoRqQbP+US/WARSMXJr0iPZ+
   VgHCRuDMCljiTLzo29Z7AXaovmGAaGSlbxNmJLz8cRcmxH78JpMx1CfgK
   3RH6n2q8sI/sJ4haJcm8EfTeIrNbS7lc/JIVS8AcWzoVjqKLwxTg1MydC
   Y=;
X-CSE-ConnectionGUID: EThC2Pw1SM+Pq+xJ5JBmVQ==
X-CSE-MsgGUID: bcCHyozXS4KaOg4WvcpTGQ==
X-IronPort-RemoteIP: 104.47.51.45
X-IronPort-MID: 123016651
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:XVvm86JGMkjTNITLFE+RCpQlxSXFcZb7ZxGr2PjKsXjdYENS0mcCn
 zRMWj+GaamJazD8eIx3boyy9ksFvpPTx9ExSgVlqX01Q3x08seUXt7xwmUcnc+xBpaaEB84t
 ZV2hv3odp1coqr0/0/1WlTZhSAhk/nOHvylULKs1hlZHWdMUD0mhQ9oh9k3i4tphcnRKw6Ws
 Jb5rta31GWNglaYCUpKrfrYwP9TlK6q4mhB5gRkPakjUGL2zBH5MrpOfcldEFOgKmVkNrbSb
 /rOyri/4lTY838FYj9yuu+mGqGiaue60Tmm0hK6aYD76vRxjnVaPpIAHOgdcS9qZwChxLid/
 jnvWauYEm/FNoWU8AgUvoIx/ytWZcWq85efSZSzXFD6I+QrvBIAzt03ZHzaM7H09c5aPWFlr
 8QHcQsoLSiaxPKUnZCRT9dV05FLwMnDZOvzu1lG5BSBV7MMZ8mGRK/Ho9hFwD03m8ZCW+7EY
 NYUYiZuaxKGZABTPlAQC9Q1m+LAanvXKmUE7g7K4/dupTSOpOBy+OGF3N79YNuFSN8Thk+Fj
 mnH4374ElcRM9n3JT+tqyj33raRw36iMG4UPLez3d57h0+j/TAwAToZCWSlquGFpXfrDrqzL
 GRRoELCt5Ma5EGtC9XwQRC8iHqFpQIHHcpdFfUg7wOAwbaS5ByWbkAEQzhbeZo5vck5bTUw0
 xmCmNaBLT5lvaCRSHmd3qyJtj70Mi8QRUcdYQcUQA1D5MPsyKkxkxbOQ9BLAKOzyNrvFlnY2
 CuWpSIzg7ESi88j1Kih+13DxTW2qfD0ohUd4wzWWiev6Fp/bYv9PYiwswCHsLBHMZqTSUSHs
 D4cgc+C4esSDJaL0iuQXOEKG7Lv7PGAWNHBvWNS81Aa32zF0xaekUp4uVmS+G8B3h44RALU
IronPort-HdrOrdr: A9a23:Bhuvq6NHWMNAzcBcTsWjsMiBIKoaSvp037BL7SxMoHluGfBw+P
 rAoB1273HJYVQqOE3I6OrgBEDoexq1n/NICOIqTNSftWfdyQ+VBbAnwYz+wyDxXw3Sn9Qtsp
 uIqpIOauEY22IK6PrH3A==
X-Talos-CUID: =?us-ascii?q?9a23=3A8hRE6GnzKgGtZc9ay+adNyhAc1LXOVDhzFyKG1D?=
 =?us-ascii?q?hMkMqcKTWWX3N2olhrfM7zg=3D=3D?=
X-Talos-MUID: =?us-ascii?q?9a23=3AK4lArQw3M77h7+Xaes4WGthnBwCaqK6lI2Acloc?=
 =?us-ascii?q?2gJWnPAt/ZwiDhyyLbbZyfw=3D=3D?=
X-IronPort-AV: E=Sophos;i="6.03,194,1694750400"; 
   d="scan'208";a="123016651"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=B6kI5LCSU2srIB1HfXrjCwMEFt0JS9nLmfA1cIRT+6xhDABP383HQxmxSxIBdhaM6DmqSNOTom9+bxwxgB3K1awH46/52wU3fkzJWTxKsbAnmK8HQ9QeuPYDj3YZCa4eGNrvw0CdMSGIq4KXKypRDLkFNbfCv7IvL6fc8qOBUBhJB8bcoigiB3ZqyCEx0Ha7rA304Cp3potgLgh2SDOH8314FY+uE6/phbMwfqXHpN1pz6ny3qJtc+qIYzcI1ya7tTv2Xav0aQAAi52TKkhn7da5MiFTQ59ZkhGAvKEYz5I/C8iL/zJ3evPiEn/uZumyUmAVF0nWjQSKNFxoTWNhbw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=7m2lah6wFlfwWH+A26m4qMx9JvqC1q31TDTiVbHZVwE=;
 b=JhK6fpJM+kTBKRt29lBa9ROx2IP1RZ7LSji2ioJPzDfmlAZ2ENl6FUHLEezNwJZjvq9LeBf+4w15i79gQJAV8qbur8SEKFMoGW179RtxnZJYGVdOVSUiThyCoKXygRaX8kMDn5w5nDC0MdyRmNGe+r//qQQBQ8BIbwZidYq6WvD5zFJaDrE2ARcBlXqxb8Sr2o1LfmHe6n12ey0bTyRgFelAlWdWvPp2aabeMC1IPKf7m0/NfN5C4lLANqtWcSbF3qgqeOT9L9uvYFH0xsOkyC/VcT0tIgycplRUIwvobrIxjpSw+qnL2+qN6KjDed1QLVMxpk6Eoog7EBjvh8FUyw==
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=7m2lah6wFlfwWH+A26m4qMx9JvqC1q31TDTiVbHZVwE=;
 b=sIWT0N62ft08A98pBrp+A/jb5otBpQgG4f1t/qdf+lcXKG4X82VmOGlildttBJPiId5ribSoCiFyssKMBcmbA/4ncLKVFxCRfiCux13XmdznJfrJT9mkNuQAKX3CQvNs2XjN6K26f9oQgj+WbbqSMTdUJfyzvh8C4RhWCP0WWX8=
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,
	henry.wang@arm.com
Cc: 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>
Subject: [PATCH v5 09/10] x86: introduce GADDR based secondary time area registration alternative
Date: Mon,  2 Oct 2023 17:11:26 +0200
Message-ID: <20231002151127.71020-10-roger.pau@citrix.com>
X-Mailer: git-send-email 2.42.0
In-Reply-To: <20231002151127.71020-1-roger.pau@citrix.com>
References: <20231002151127.71020-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: LO4P123CA0612.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:314::6) To MW4PR03MB6428.namprd03.prod.outlook.com
 (2603:10b6:303:123::8)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: MW4PR03MB6428:EE_|PH0PR03MB6680:EE_
X-MS-Office365-Filtering-Correlation-Id: 64533fec-d3b2-4872-8c6a-08dbc35a0307
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:
	/nFX61vIBpa8OF5B51IvTc6x5Q0bxZiK66nBTbZZCU5BWhcbk/pRi+X1n4LhlWK5AorC1MNjpWVHivSqKeDbMFk0iFXOlqzyNZfC5R3LKO0AQ3r6SSsSqVRHROd+8uOexGOVvKgMBmTPXoUh4mzWAAkcMHyRaO7Ui6STVH3zXK5rAL3PQNQjEz1aJZ4utH4dACFppcdYuySD/5aNBUUE/tJjlfioyfAwZyW/xbshGrh0VTRMqblxzkpLPnif9JdTfdoxg+ksIglEv9YKpDgJBImP7nNtDiVpdHykNWH8Y6hJ6cWYY5C+K2jwD5Q4l89ZJIAr1ApqlH6Aw80z/jzObP8dmGIul8IDBfGQd5sOWal1vmaoKvVyvD2T1e9gIe2k+wAG9tc2ckGFvY9AZ0uPgd6KZUDlTSIvXJVJ4ei6W0vCDhFHdM2VlqeqLjqoK5aJQTmgwYS1e1Q11MdyxguHBhX0V6wXYLPPwDXSJgr2LjXWBS9aY7UaL40wtjgicoGoyS8c3GfVBEkh2b6KdhOkDyp7t03/qv1p9A2cbTyXA/DtOJZ1sKGhFciCd9/19dtt
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)(376002)(366004)(396003)(346002)(136003)(39860400002)(230922051799003)(451199024)(186009)(1800799009)(64100799003)(36756003)(2906002)(26005)(478600001)(4326008)(8676002)(8936002)(6666004)(6486002)(6512007)(6506007)(83380400001)(2616005)(1076003)(41300700001)(316002)(54906003)(66556008)(66476007)(66946007)(5660300002)(38100700002)(86362001)(82960400001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?L2NkNHpqMjRMK1RZRnlhQ2t4aHdEbFVFcVEwKzlkRmY0ckNJNmNuVXZtdVh6?=
 =?utf-8?B?OGNLaU9wMXcyWEdia2k4QUFpZ0NEQXJ6dVFnOGJFZ3R0MHVUY0QwUWxmbkJE?=
 =?utf-8?B?d0diaEhHbjcvS0E2WlJMWEpNQ3JzU09UeStGZVNOU01GdHBDM05Xd2c0UEZt?=
 =?utf-8?B?Sm84R3kyV3N4V2NnVFk4UmltaUJTK2ExYm9INTFFTlJLaXlNMWg5WG5HNWx0?=
 =?utf-8?B?Sjh1VFhteEk2TEJ1NWhXbjVES0p2QmhVY1Y5UDhXU2lmK01YVFZDRnBPcDg3?=
 =?utf-8?B?bnE1UjRLcUtndDdPL0xTU2lrb3RVaFdyY05HcDhCN2t1NCs4WnBBNVNOS04z?=
 =?utf-8?B?aUhHSWFBcUJQRERRbnVDKzFkN011YnRlSFppSVVGbTVZNGJhbVdsY0VJdHJk?=
 =?utf-8?B?a2YzVjBZR0haOSt3QVpSaXFmS1NhbTFsSlBsY2w0L2RUM3crYmpNekZlVlBC?=
 =?utf-8?B?T3p1Y01ERlMralN5RUFaODZoZldCeldzOWNkSFArU25nTDlITlptd3VzZkQv?=
 =?utf-8?B?YUV6Qy9kVkltdzJWOW1kUGJuYzN2bFdZK2EzakZ5NnIzU1BPOEJxajVSQlg3?=
 =?utf-8?B?QzF6ZzVvOHEwc28zeXhxdU4vUEgwWHVnV0ZwT1hkZWt4OFNqM05ZQkI0R25U?=
 =?utf-8?B?VzRkcDlTdkxKUzVlM3V5OUpyR3JrYXBRMFBBNS9Id0FLWUszNHQyVktKVFNp?=
 =?utf-8?B?VlZRcWZEZkNYNFpUYXVwMW13YUgzUmJGTHRXR3l2WnNzUnF3aGNkTktoYzNU?=
 =?utf-8?B?WUdMSmlhNkFFb3lDaXNxVHpnSUpWdUVvRU9acmpWeTZCejFnL1oySGlvbVo3?=
 =?utf-8?B?Z0JuRnlTSjFmc1haV2tMSmFUQlpLMDVobmtHSExDQ1d3QWhkRStManZGTzU0?=
 =?utf-8?B?Y0xYRmFsZHRjMnlmdjd2STNXNVZmTkQ0TWZqbU5ldGtrL3JKOFpPa2poVll6?=
 =?utf-8?B?VkRaMjRXdng4cFY5NHNCVHFEdG5TZ3oxSnhaQ3dvd2ZpQXVyTG5FZ3FsRDlk?=
 =?utf-8?B?YXdlTmIvaExvWEtPbzRienVHMDZub25WaHozQW9qdkpjaEVISncwNnU0SmNv?=
 =?utf-8?B?L3FUaFhic3JCaFZORmE1UWpuT3dMWDdMUXh4RysyM0NCVVo4QThFSmkza3hB?=
 =?utf-8?B?amovallFZzZyRnBaZCs4L1U4SDZzQ29TMWd5YVEyWkhsVEZhYkVjWmRyTmFJ?=
 =?utf-8?B?K1ZCUy9VVCtFN3hwb1BlZW1SK3pDV3EzVENsVHZvU2NkSEJlYjlrVEx3S3dU?=
 =?utf-8?B?R01jU1c0UXl5MVRMeldETWI3SHN3c0orRStXdDY1MXFpeDA5VVJDWEh1OUJi?=
 =?utf-8?B?NXJyd1JDR1QwU01MOWNZT255YjE4LzNBdTlQUDg3S0RuYms0VUQzQmVLV0dv?=
 =?utf-8?B?d3Jqc3dJR2ZoV011T2lDKy95L0h2NmM1OFV0c1hZbVVDVDE2SlBnOXo5eHdG?=
 =?utf-8?B?b0JXUTYrdjQ2ZG15dHArUUxvN1JMZmkyTm9lczhDTlV1ZGlmd3BvWTFIbXNJ?=
 =?utf-8?B?SkRLTG13cW9DQW9KWGhVWld1NUg5cWxDZmJYNDN2ZXhZRmF5UGxoa2xMbHU1?=
 =?utf-8?B?cnp2UkoveGlCZTFTSTU5dG4rVDlBelNDMnY3RElQbm53QllCcitHMFJnaHdR?=
 =?utf-8?B?RERmM0x0bXB0NHlvMFpmbmxIeEMvYm82emVpZ2tCQ1U0U0E3b0tMRE8wQUd0?=
 =?utf-8?B?RWYyTS9pbmxCSnZQanRSeTJHY0lPdENKdTdlQUFIaGRIVTNYV0Q4YitxbHNT?=
 =?utf-8?B?a21ma0dnNXc2YVV0L09VNG1sQ0xwb3RFdzV5MUxyUDVXdEdwZWx0ZmVpUG1w?=
 =?utf-8?B?SHo3U2liQ0hpZ1BwSVRlVVlJWExWT0ZtVTJjVkNQaUgxL0o3NGZ1b3ZlVW9l?=
 =?utf-8?B?TGY3RWdYK1lYS2hhdTRLbFI4d0N2aXlsSGVHZmUxaFZhdEtSbitMLzM0ZFNk?=
 =?utf-8?B?SjVaQm50dzhhS3ljbElMTkQ0Um9XZ1BpTlJRbjE4azlTcW43dnpld0FEemJ5?=
 =?utf-8?B?d0VJY1g2UWh6ckkvc3VwTmtJTXJ6KytQUTVXZ0RESEM0aEF0YVBFTnZ0ZzFD?=
 =?utf-8?B?MFFQNlo0OTF1dTlPdzFiMC9nNEdVWFQrSlVUbGIvZ3FTQzM5ZmozM2ZSdzhB?=
 =?utf-8?B?UkhmYUkxeG5QMWhoRmNaWW5kMFE4cy84d1hoeG15UEUxWDdhZmRHZlBlaFE3?=
 =?utf-8?B?Rmc9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	Y9nBoyHWajCiTn9EZ3PIX/lCb2YF/XDZXan2x4PdTMIMDfR06hOKYt3u6xaYdmeUTUjxAUKXPzRa98FYjg+QjiVyJVjL/gSzTFY8N0XV0ADJXJa6r/ZnNOaemwC8d1rZ8j/yY2lSwPpL58RewNWl5/t/nfBUXCx5TtRM150WlL6V3EHOTASbsb183Acffaq+aRJnJzj5XJC3CVUsHd1GoVtRlmHcBZookppVCgq6mAoizsHX7eGOOFfB+sPY3g7zCBPIpuoH0qdVEilE8orbifRmddMKDGbAbxNYvz6Sx3WLOTkYCVLGuTvMhdOS3F4+z1AMZ1hpn5HDCGCgl5Ql0bqIkKtAvNVzU7eQQI2LuXmg1DNiVwbxNbMn0ynqfYtHeTXHdfG1s2pFuFqJA6Rh8hllcad81e2rH7VrH2ND+PVq6fxFt67CugfWWC6bQ8UfMSmAqPnA8d8FquEbbGpphTWcbJYb/YrYAoHBkveTFtKdcccuhrFPhb9sa1/NFZz/bOQ9Ka2z4syvUNKjV2n7xl9pEj1Muns2RWMlzvS41RYcZ6JSb9BnsAJbHufY2WTsDdXmkhdLRveXnCR13x6I1HCzpIv/iiuUuzQpfUSAeZ6hXanV9KyoYDnMu09KkhOqc1wRkXBey1eOk6JPUkXIPB36wv91Cv10j9hoI+rN3kT5fsgHjyxENhLpz6l7lwthmSaIfBSOT5d73HuX67k14kOkR/PkL1QTVI6ya1WB7xrltWqeMDxFMTvwR8M3VhZ1jNBnQ3P+/cvKeBf6pGnIxXiUaX8CwX9nmw9YDXEU3GwpjJwUokOaMqJDUwwaIyrzmqb+1FR/sUMS6wlpEpwH+aREPOFcej4BtAAoagcbdhIazIcrb9rYS+QD1buBxs87
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 64533fec-d3b2-4872-8c6a-08dbc35a0307
X-MS-Exchange-CrossTenant-AuthSource: MW4PR03MB6428.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Oct 2023 15:12:37.0561
 (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: m9tow9Svx7jXfQE2ndqbaUEWA1ca68dugLABnDYk91/hrfHf7oGIkvxnlGjfNo5XZzjTDHzL40mtsl6Fa+/V9w==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR03MB6680

From: Jan Beulich <jbeulich@suse.com>

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>
---
 xen/arch/x86/domain.c             | 28 ++++++++++++++++++++++++++++
 xen/arch/x86/include/asm/domain.h |  2 ++
 xen/arch/x86/time.c               | 10 ++++++++++
 xen/arch/x86/x86_64/domain.c      |  1 +
 xen/include/public/vcpu.h         |  4 ++++
 5 files changed, 45 insertions(+)

diff --git a/xen/arch/x86/domain.c b/xen/arch/x86/domain.c
index 9d352defa25e..8e0af2278104 100644
--- 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;
@@ -1567,6 +1576,25 @@ long do_vcpu_op(int cmd, unsigned int vcpuid, XEN_GUEST_HANDLE_PARAM(void) arg)
         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:
     {
         struct vcpu_get_physid cpu_id;
diff --git a/xen/arch/x86/include/asm/domain.h b/xen/arch/x86/include/asm/domain.h
index e0bd28e424e0..619e667938ed 100644
--- 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 domain *d);
 
 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 *);
 
diff --git a/xen/arch/x86/time.c b/xen/arch/x86/time.c
index 332d2d79aeae..73df1639a301 100644
--- a/xen/arch/x86/time.c
+++ b/xen/arch/x86/time.c
@@ -1628,6 +1628,16 @@ void force_update_vcpu_system_time(struct vcpu *v)
     __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;
diff --git a/xen/arch/x86/x86_64/domain.c b/xen/arch/x86/x86_64/domain.c
index 494b0b54e64e..a02d4f569ee5 100644
--- 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 vcpuid, XEN_GUEST_HANDLE_PARAM(void) arg)
 
     case VCPUOP_send_nmi:
     case VCPUOP_get_physid:
+    case VCPUOP_register_vcpu_time_phys_area:
         rc = do_vcpu_op(cmd, vcpuid, arg);
         break;
 
diff --git a/xen/include/public/vcpu.h b/xen/include/public/vcpu.h
index 9dac0f9748ca..8fb0bd1b6c03 100644
--- a/xen/include/public/vcpu.h
+++ b/xen/include/public/vcpu.h
@@ -209,6 +209,9 @@ DEFINE_XEN_GUEST_HANDLE(vcpu_get_physid_t);
  * 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_time_memory_area_t);
  * 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__ */
 
-- 
2.42.0



From xen-devel-bounces@lists.xenproject.org Mon Oct 02 16:40:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 16:40:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611737.951260 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnLyE-0004VM-Fb; Mon, 02 Oct 2023 16:40:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611737.951260; Mon, 02 Oct 2023 16:40: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 1qnLyE-0004VF-Cn; Mon, 02 Oct 2023 16:40:34 +0000
Received: by outflank-mailman (input) for mailman id 611737;
 Mon, 02 Oct 2023 16:40: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 1qnLyD-0004Ut-43
 for xen-devel@lists.xenproject.org; Mon, 02 Oct 2023 16:40: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 1qnLyC-0002zn-IS; Mon, 02 Oct 2023 16:40:32 +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 1qnLyC-0000sS-Ce; Mon, 02 Oct 2023 16: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>
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=HJmPEzWyLSmPQr5xBmQXCbIO0QDDqMAOLEdSZ0IC2Cs=; b=3CMNEG9HgIda4LUnADHKbi4S6W
	Kjryn0ezNbIA8rodoyPtnJb0Be10uCtlcHXRrKXDPd4Z9jridvDs7WhYGlzt3MvWHA6n7r7tE1tps
	IZ8yXhdBbN5BpesC9yTPLRV6TisqI5Ev/pXzTBxYL+5iNV6GHWMfFGQj7R59YvLNqkUM=;
Message-ID: <e834181b-84ed-48a9-ba2c-688a71581d17@xen.org>
Date: Mon, 2 Oct 2023 17:40:30 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v5 07/10] domain: map/unmap GADDR based shared guest areas
Content-Language: en-GB
To: Roger Pau Monne <roger.pau@citrix.com>, xen-devel@lists.xenproject.org,
 henry.wang@arm.com
Cc: Jan Beulich <jbeulich@suse.com>, Andrew Cooper
 <andrew.cooper3@citrix.com>, George Dunlap <george.dunlap@citrix.com>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
References: <20231002151127.71020-1-roger.pau@citrix.com>
 <20231002151127.71020-8-roger.pau@citrix.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <20231002151127.71020-8-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit



On 02/10/2023 16:11, Roger Pau Monne wrote:
> From: Jan Beulich <jbeulich@suse.com>
> 
> 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>
> 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 Mon Oct 02 16:43:16 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 16:43:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611741.951269 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnM0p-0006o8-Ry; Mon, 02 Oct 2023 16:43:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611741.951269; Mon, 02 Oct 2023 16: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 1qnM0p-0006o1-PE; Mon, 02 Oct 2023 16:43:15 +0000
Received: by outflank-mailman (input) for mailman id 611741;
 Mon, 02 Oct 2023 16:43: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 1qnM0o-0006nv-4q
 for xen-devel@lists.xenproject.org; Mon, 02 Oct 2023 16:43: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 1qnM0n-00033f-T7; Mon, 02 Oct 2023 16:43: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 1qnM0n-0000x6-N7; Mon, 02 Oct 2023 16:43: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=8006YkH9ydsFANsTCBrc6SwYxgC2j8JtO6yokOppBGI=; b=oTI5icv6NUDfBMtYtNEe6sUhLu
	ikem5RYlQDK/Wa3MrLqtsvdlqy8G83ITPLAM9FGO6szuZCx8FagWrZbIu7yr7bxL9cZoGQQyye1uM
	OJaz+Czo+Df/ntw3A+zOXgjBgP70LkF4e5/8mz5zaDUvKmjdjfAb4gHOUGipshx7mOxU=;
Message-ID: <dce084ca-a5e7-4647-b651-13e1a118afe2@xen.org>
Date: Mon, 2 Oct 2023 17:43:12 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v5 08/10] domain: introduce GADDR based runstate area
 registration alternative
Content-Language: en-GB
To: Roger Pau Monne <roger.pau@citrix.com>, xen-devel@lists.xenproject.org,
 henry.wang@arm.com
Cc: Jan Beulich <jbeulich@suse.com>, Andrew Cooper
 <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
 George Dunlap <george.dunlap@citrix.com>,
 Stefano Stabellini <sstabellini@kernel.org>
References: <20231002151127.71020-1-roger.pau@citrix.com>
 <20231002151127.71020-9-roger.pau@citrix.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <20231002151127.71020-9-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

Hi,

On 02/10/2023 16:11, Roger Pau Monne wrote:
> From: Jan Beulich <jbeulich@suse.com>
> 
> 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>

Acked-by: Julien Grall <jgrall@amazon.com>

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Mon Oct 02 16:44:49 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 16:44:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611744.951280 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnM2K-0007jB-71; Mon, 02 Oct 2023 16:44:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611744.951280; Mon, 02 Oct 2023 16:44: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 1qnM2K-0007j4-2y; Mon, 02 Oct 2023 16:44:48 +0000
Received: by outflank-mailman (input) for mailman id 611744;
 Mon, 02 Oct 2023 16:44: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 1qnM2I-0007iw-PI
 for xen-devel@lists.xenproject.org; Mon, 02 Oct 2023 16:44: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 1qnM2I-00034v-Kr; Mon, 02 Oct 2023 16:44: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 1qnM2I-0000x6-FL; Mon, 02 Oct 2023 16:44: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=BI2XCv9MAPcpY+u4KjHORFQhrCboxdHz8tsWzDFOX60=; b=EN6u0gQM760Ij0zWna+KqA2FID
	4CKoXv+6fWiBaphNxHxDjb+7Hwa3qBcgP2wIuXqAOekArAR966X80tgZnpRTcqO7X/ZofbFB/rkHW
	o9I+1Wz9D453fImJkxU/fDvMILQu/cm3axFnoqgeGaMmaTgW9Ocpc5t3iXtTqlalBqrQ=;
Message-ID: <8c8d3e61-ba9d-4bd2-b5ea-17c2a76edd4e@xen.org>
Date: Mon, 2 Oct 2023 17:44:45 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v5 09/10] x86: introduce GADDR based secondary time area
 registration alternative
Content-Language: en-GB
To: Roger Pau Monne <roger.pau@citrix.com>, xen-devel@lists.xenproject.org,
 henry.wang@arm.com
Cc: Jan Beulich <jbeulich@suse.com>, Andrew Cooper
 <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
 George Dunlap <george.dunlap@citrix.com>,
 Stefano Stabellini <sstabellini@kernel.org>
References: <20231002151127.71020-1-roger.pau@citrix.com>
 <20231002151127.71020-10-roger.pau@citrix.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <20231002151127.71020-10-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

Hi,

On 02/10/2023 16:11, Roger Pau Monne wrote:
> From: Jan Beulich <jbeulich@suse.com>
> 
> 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>

For the small change in include/public/vcpu.h:

Acked-by: Julien Grall <jgrall@amazon.com>

Cheers,--
Julien Grall


From xen-devel-bounces@lists.xenproject.org Mon Oct 02 17:11:11 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 17:11:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611750.951290 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnMRl-0006LX-EB; Mon, 02 Oct 2023 17:11:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611750.951290; Mon, 02 Oct 2023 17: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 1qnMRl-0006LQ-BI; Mon, 02 Oct 2023 17:11:05 +0000
Received: by outflank-mailman (input) for mailman id 611750;
 Mon, 02 Oct 2023 17:11: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 1qnMRk-0006LG-Ni; Mon, 02 Oct 2023 17:11: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 1qnMRk-0003in-Fp; Mon, 02 Oct 2023 17:11: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 1qnMRj-00011O-Lm; Mon, 02 Oct 2023 17:11:03 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qnMRj-0006vN-LH; Mon, 02 Oct 2023 17:11: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=fdSXt/JmBhahJXG9VSur1K3XjUcC585idoCf2q8g9cY=; b=CpQFyuBu0ZGoLFAFUjXFNAL4pv
	mC65xR7bDHqj+5fAQtNPusHQEhipxkN8XhA+SmKwF/A7lYcbXXkWY3+bjBwTfqAY9kcBHV5ogRVyZ
	gjQ/spWN0PrSw4+Pg5VRUL4wFzg9mA4uXvIh/aYCUHmAhA2tQ+fegx31nOpHEZIskLCM=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183236-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 183236: tolerable FAIL - PUSHED
X-Osstest-Failures:
    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-armhf-armhf-libvirt: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-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-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-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-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-amd64-amd64-libvirt-raw:migrate-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-amd64-amd64-libvirt-qcow2:migrate-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-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw: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-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-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=8a749fd1a8720d4619c91c8b6e7528c0a355c0aa
X-Osstest-Versions-That:
    linux=e81a2dabc3f3faa0d96808708a8dc2025f2bdde3
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 02 Oct 2023 17:11:03 +0000

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

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 183234
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183234
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183234
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183234
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183234
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183234
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183234
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183234
 test-amd64-amd64-libvirt-xsm 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-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-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-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-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-qcow2 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-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-libvirt-raw 14 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-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-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                8a749fd1a8720d4619c91c8b6e7528c0a355c0aa
baseline version:
 linux                e81a2dabc3f3faa0d96808708a8dc2025f2bdde3

Last test of basis   183234  2023-10-02 00:13:02 Z    0 days
Testing same since   183236  2023-10-02 07:18:14 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Linus Torvalds <torvalds@linux-foundation.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-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
   e81a2dabc3f3..8a749fd1a872  8a749fd1a8720d4619c91c8b6e7528c0a355c0aa -> tested/linux-linus


From xen-devel-bounces@lists.xenproject.org Mon Oct 02 17:46:30 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 17:46:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611758.951299 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnMzl-0001ib-69; Mon, 02 Oct 2023 17:46:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611758.951299; Mon, 02 Oct 2023 17: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 1qnMzl-0001iU-2o; Mon, 02 Oct 2023 17:46:13 +0000
Received: by outflank-mailman (input) for mailman id 611758;
 Mon, 02 Oct 2023 17:46: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 1qnMzj-0001iK-CG; Mon, 02 Oct 2023 17:46: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 1qnMzj-0004VO-8o; Mon, 02 Oct 2023 17:46: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 1qnMzi-0001wX-Q0; Mon, 02 Oct 2023 17:46:10 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qnMzi-0007JT-PY; Mon, 02 Oct 2023 17: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:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=lfS1GQAueqNkOglQOX1IWw9edPK1QVepbkXKS/vH1ro=; b=V03awb19dIYpLEK/tmDo3QmYgQ
	Rp/FUcj5DoDuiS2cfz0VRP8lZ6UKl9IPd92P+7+bGjL/X5WMAUwegPimpfL5xHzx4GgML2rakVxeB
	T+N9LzhKa6i0uWEyKRHf5O7znBS/2V+hOViQsajTd0uF7rltJCquIEjUfJlKLb3sF23g=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183239-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 183239: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=1a66bd51ca21f341281d8e3157d3d3f4a94fd26c
X-Osstest-Versions-That:
    ovmf=f6a314e5b5dc9697308740b2ac391a3c21b26403
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 02 Oct 2023 17:46:10 +0000

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

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 1a66bd51ca21f341281d8e3157d3d3f4a94fd26c
baseline version:
 ovmf                 f6a314e5b5dc9697308740b2ac391a3c21b26403

Last test of basis   183238  2023-10-02 13:14:03 Z    0 days
Testing same since   183239  2023-10-02 16:12:16 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Leif Lindholm <quic_llindhol@quicinc.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
   f6a314e5b5..1a66bd51ca  1a66bd51ca21f341281d8e3157d3d3f4a94fd26c -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Mon Oct 02 18:29:34 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 18:29:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611765.951310 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnNfW-0004zJ-Cw; Mon, 02 Oct 2023 18:29:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611765.951310; Mon, 02 Oct 2023 18:29: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 1qnNfW-0004zC-A4; Mon, 02 Oct 2023 18:29:22 +0000
Received: by outflank-mailman (input) for mailman id 611765;
 Mon, 02 Oct 2023 18:29: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 1qnNfU-0004z2-AM; Mon, 02 Oct 2023 18:29: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 1qnNfU-0005ZI-2s; Mon, 02 Oct 2023 18:29: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 1qnNfT-0002ry-Lv; Mon, 02 Oct 2023 18:29:19 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qnNfT-0006mT-LW; Mon, 02 Oct 2023 18: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=/ed9fAA0zsNFAIjZ3gJq64il8vNM3rU9XtUj+E4t22U=; b=jvG+pwyNcSDA+7T4WIgHKGyKTr
	NkDpFUNWlwz7KLfZSXY99PphmZrLeJVAwPKqeBC/DO/RLWQ4rjpEil7aaaEFe4cjBOIb09/Z/1nhk
	YWM+l419eQa5F6y44VaYoe8yXhSW7gOwqWcz+N31GOGdnzmlJCb8C7D7qdEMr7x1oi/E=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183240-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xtf test] 183240: all pass - PUSHED
X-Osstest-Versions-This:
    xtf=3c0b315d79eb67846d99060e51989ff62bb33464
X-Osstest-Versions-That:
    xtf=cec23a34c03ffcf12d68d35f0e1d7f9ae85ab49c
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 02 Oct 2023 18:29:19 +0000

flight 183240 xtf real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183240/

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 xtf                  3c0b315d79eb67846d99060e51989ff62bb33464
baseline version:
 xtf                  cec23a34c03ffcf12d68d35f0e1d7f9ae85ab49c

Last test of basis   182389  2023-08-18 20:10:53 Z   44 days
Testing same since   183240  2023-10-02 17:14:27 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>

jobs:
 build-amd64-xtf                                              pass    
 build-amd64                                                  pass    
 build-amd64-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    


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

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

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.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/xtf.git
   cec23a3..3c0b315  3c0b315d79eb67846d99060e51989ff62bb33464 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Mon Oct 02 19:22:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 19:22:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611772.951320 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnOV2-00048S-Ai; Mon, 02 Oct 2023 19:22:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611772.951320; Mon, 02 Oct 2023 19:22: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 1qnOV2-00048L-7p; Mon, 02 Oct 2023 19:22:36 +0000
Received: by outflank-mailman (input) for mailman id 611772;
 Mon, 02 Oct 2023 19:22: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 1qnOV0-00047x-AD
 for xen-devel@lists.xenproject.org; Mon, 02 Oct 2023 19:22: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 1qnOUz-0006zq-S4; Mon, 02 Oct 2023 19:22:33 +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 1qnOUz-0004My-JN; Mon, 02 Oct 2023 19: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>
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=Zxuxpkm2mZT6UO+QJ1HonwiTXm2XB1J66CWYrWwAcTg=; b=F3LVbWX48HplJIxQnDSZlaBpTt
	PX8Tb3O7FLrwvI+0bhTgkb202uktJJnDdG9fGNB8PP9UiO08M6+Lfq0FAt4Pk43vEQ+jbcj9Zh9MM
	ok5z4YTxIGQMYPF4mEUyz1m4qOS6MQjABj6UCLfN624eHFyb/RFzfERmgfVVpNsIi6Ho=;
Message-ID: <c3cf8e91-cf68-410d-8640-09fce6d20e9b@xen.org>
Date: Mon, 2 Oct 2023 20:22:31 +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: Stefano Stabellini <sstabellini@kernel.org>,
 "Driscoll, Dan" <dan.driscoll@siemens.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.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>
 <ed3ea203-4244-4bbe-a9e0-ac8882ecc83c@xen.org>
 <DM6PR07MB4316E030CEF6D6E27ACD58819AC0A@DM6PR07MB4316.namprd07.prod.outlook.com>
 <alpine.DEB.2.22.394.2309291321570.2348112@ubuntu-linux-20-04-desktop>
From: Julien Grall <julien@xen.org>
In-Reply-To: <alpine.DEB.2.22.394.2309291321570.2348112@ubuntu-linux-20-04-desktop>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi Stefano,

On 29/09/2023 21:29, Stefano Stabellini wrote:
> 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.

I am a bit confused why you think the firmware is wrong here. From ACPI 
spec (ACPI 6.5, section 5.2.25):

"GSIV for the secure EL1 timer. This value is optional, as an operating 
system executing in the nonsecure world (EL2 or EL1), will ignore the 
content of these fields."

So the expectation is that Xen should not read the value. In Xen, we 
decided to read it because we want to know which PPIs exists in order to 
find an unallocated one for the event channel.

> 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.

IIRC, MISRA has a rule for checking return value. If it doesn't, then I 
would at least query why you are suggesting to remove the BUG() but 
still keep the call. Surely, if a function returns an error, we need to 
investigate why the error is returned? And if the TIME_PHYS_SECURE_PPI 
is really not used, then why should the call be kept?

As I wrote above, the goal of those calls was to ensure that all the PPI 
described in the firmware tables were recorded so we can find a free PPI 
for the event channel.

vgic_reserve_virq() fails because the PPI is already reserved. I 
actually wonder which other path reserves it? The reason in asking it is 
because for some field, 0 is used to mark the interrupt is not used 
exists (see below for the PPI timer). So maybe we forgot to add some 
check somewhere else. The other possible reason is the PPI might be 
shared (I couldn't find anything in the spec that it cannot be) and 
vgic_reserve_virq() doesn't deal with it right now.

Now regarding whether the PPI is used. AFAICT, the secure timer PPI is 
still present in the firmware tables (ACPI and DT) passed to dom0. So 
strictly speaking we want to ensure the PPI value is reserved.

That said, the ACPI spec suggests that the value will be ignored by the 
guest. The Device-Tree binding doesn't have such statement, but I 
suspect this may be the same. So it should be ok to skip reserving the 
PPI and therefore allow the event channel interrupt to use if it is not 
reserved by someone else.

Cheers,

> 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
>>

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Mon Oct 02 20:14:58 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 20:14:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611776.951329 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnPJY-0000gW-Tf; Mon, 02 Oct 2023 20:14:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611776.951329; Mon, 02 Oct 2023 20: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 1qnPJY-0000gP-R4; Mon, 02 Oct 2023 20:14:48 +0000
Received: by outflank-mailman (input) for mailman id 611776;
 Mon, 02 Oct 2023 20:14: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=oggk=FQ=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qnPJW-0000gJ-PK
 for xen-devel@lists.xenproject.org; Mon, 02 Oct 2023 20:14:46 +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 521abaa3-6160-11ee-9b0d-b553b5be7939;
 Mon, 02 Oct 2023 22:14:43 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by dfw.source.kernel.org (Postfix) with ESMTP id BCD5460FC0;
 Mon,  2 Oct 2023 20:14:40 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 2B51AC433C7;
 Mon,  2 Oct 2023 20:14: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: 521abaa3-6160-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696277680;
	bh=EFUP4AUZRbPJ/yXKF9p2686Y/gW+J0Kf2ruEn/wm7iE=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=RBmn6ADeHCs0ER6kmJ711Ak7ZUEE3h0UTBepl89aZiPpBTOLYYiX2IWy3dAr1kk/j
	 O4QbTGGiNHJz6p/NVRQ7bugWWKZS5Irj1951KUh12yXh2Dv2CGcS5jkVC1DQVzxhWY
	 SXp17krTAJD8sPb+WsJrUYL8lvbFFWHvPQh+HvFoZEjfdqO5mfe0gpd8KUlpUahFBo
	 j30hCECqd+S5U9Ipeo5AC5+/bBofoR3OSGdRUyMQeM8jY4WRn/CuQsQcwCSKQSvg+5
	 pcAMfVE939RAVmAR4nRvQuAMvsGPQgaw0jrFZMcNmT5VZdgBi+CaGANQkoH8YQSQyB
	 XdPhfwbQxRh4g==
Date: Mon, 2 Oct 2023 13:14:31 -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: Xen-devel <xen-devel@lists.xenproject.org>, 
    Tamas K Lengyel <tamas.k.lengyel@gmail.com>, 
    "intel-xen@intel.com" <intel-xen@intel.com>, 
    "daniel.kiper@oracle.com" <daniel.kiper@oracle.com>, 
    Roger Pau Monne <roger.pau@citrix.com>, 
    Sergey Dyasli <sergey.dyasli@citrix.com>, 
    Christopher Clark <christopher.w.clark@gmail.com>, 
    Rich Persaud <persaur@gmail.com>, 
    Kevin Pearson <kevin.pearson@ortmanconsulting.com>, 
    Juergen Gross <jgross@suse.com>, Paul Durrant <pdurrant@amazon.com>, 
    "Ji, John" <john.ji@intel.com>, 
    "robin.randhawa@arm.com" <robin.randhawa@arm.com>, 
    Artem Mygaiev <Artem_Mygaiev@epam.com>, 
    Matt Spencer <Matt.Spencer@arm.com>, 
    Stewart Hildebrand <Stewart.Hildebrand@amd.com>, 
    Volodymyr Babchuk <volodymyr_babchuk@epam.com>, 
    Jeff Kubascik <Jeff.Kubascik@dornerworks.com>, 
    Stefano Stabellini <sstabellini@kernel.org>, Julien Grall <julien@xen.org>, 
    Rian Quinn <rianquinn@gmail.com>, 
    "Daniel P. Smith" <dpsmith@apertussolutions.com>, 
    "=?UTF-8?Q?=E2=80=8B=E2=80=8B=E2=80=8B=E2=80=8B=E2=80=8B=E2=80=8B=E2=80=8B?=
 =?UTF-8?Q?Doug_Goldstein?=" <cardoe@cardoe.com>, 
    George Dunlap <george.dunlap@citrix.com>, 
    David Woodhouse <dwmw@amazon.co.uk>, 
    =?UTF-8?B?4oCL4oCL4oCL4oCL4oCL4oCL4oCLQW1pdCBTaGFo?= <amit@infradead.org>, 
    "=?UTF-8?Q?=E2=80=8B=E2=80=8B=E2=80=8B=E2=80=8B=E2=80=8B=E2=80=8B=E2=80=8B?=
 =?UTF-8?Q?Varad_Gautam?=" <varadgautam@gmail.com>, 
    Brian Woods <brian.woods@xilinx.com>, 
    Robert Townley <rob.townley@gmail.com>, 
    Bobby Eshleman <bobby.eshleman@gmail.com>, 
    "=?UTF-8?Q?=E2=80=8B=E2=80=8B=E2=80=8B=E2=80=8B=E2=80=8B=E2=80=8B=E2=80=8B?=
 =?UTF-8?Q?Corey_Minyard?=" <cminyard@mvista.com>, 
    Olivier Lambert <olivier.lambert@vates.fr>, 
    Andrew Cooper <andrew.cooper3@citrix.com>, 
    Ash Wilding <ash.j.wilding@gmail.com>, Rahul Singh <Rahul.Singh@arm.com>, 
    =?UTF-8?Q?Piotr_Kr=C3=B3l?= <piotr.krol@3mdeb.com>, 
    Brendan Kerrigan <brendank310@gmail.com>, 
    Thierry Laurion <insurgo@riseup.net>, 
    Oleksandr Andrushchenko <oleksandr_andrushchenko@epam.com>, 
    Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>, 
    Scott Davis <scottwd@gmail.com>, 
    Anthony PERARD <anthony.perard@citrix.com>, 
    Michal Orzel <michal.orzel@amd.com>, 
    Marc Ungeschikts <marc.ungeschikts@vates.fr>, 
    Zhiming Shen <zshen@exotanium.io>, 
    Xenia Ragiadakou <burzalodowa@gmail.com>, 
    =?UTF-8?B?4oCL4oCL4oCL4oCL4oCL4oCL4oCLSGVucnkgV2FuZw==?= <Henry.Wang@arm.com>, 
    Per Bilse <per.bilse@citrix.com>, Samuel Verschelde <stormi-xcp@ylix.fr>, 
    Andrei Semenov <andrei.semenov@vates.fr>, 
    Yann Dirson <yann.dirson@vates.fr>, 
    Bernhard Kaindl <bernhard.kaindl@cloud.com>, 
    "=?UTF-8?Q?=E2=80=8B=E2=80=8B=E2=80=8B=E2=80=8B=E2=80=8B=E2=80=8B=E2=80=8B?=
 =?UTF-8?Q?Luca_Fancellu?=" <luca.fancellu@arm.com>, 
    =?UTF-8?Q?Marek_Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>, 
    Vikram Garhwal <vikram.garhwal@amd.com>, 
    Ayan Kumar Halder <ayan.kumar.halder@amd.com>, 
    Kelly Choi <kelly.choi@cloud.com>, 
    Vaishali Thakkar <me.vaishalithakkar@gmail.com>, 
    Sebastien.Regimbal@microchip.com
Subject: Re: [ANNOUNCE] Call for agenda items for 5 October Community Call
 @ 1500 UTC
In-Reply-To: <CA+zSX=bSmA+NMgZTdgeDshy2p91br3RgS0j6+2973Z22u+7Ngw@mail.gmail.com>
Message-ID: <alpine.DEB.2.22.394.2310021314250.2348112@ubuntu-linux-20-04-desktop>
References: <CA+zSX=bSmA+NMgZTdgeDshy2p91br3RgS0j6+2973Z22u+7Ngw@mail.gmail.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

Hi George,

Sebastien and others at Microchip would like to give an update about
their progress with Xen on RISC-V.

Cheers,

Stefano


On Mon, 2 Oct 2023, George Dunlap wrote:
> Hi all,
> 
> The proposed agenda is in
> https://cryptpad.fr/pad/#/2/pad/edit/cQBSSCUBQj9es3-wcs7I+8Em/ and you
> can edit to add items.  Alternatively, you can reply to this mail
> directly.  I'll be running the meeting while Kelly is on PTO.
> 
> Agenda items appreciated a few days before the call: please put your
> name besides items if you edit the document.
> 
> Note the following administrative conventions for the call:
> * Unless, agreed in the previous meeting otherwise, the call is on the
> 1st Thursday of each month at 1600 British Time (either GMT or BST)
> * I usually send out a meeting reminder a few days before with a
> provisional agenda
> 
> * To allow time to switch between meetings, we'll plan on starting the
> agenda at 16:05 sharp.  Aim to join by 16:03 if possible to allocate
> time to sort out technical difficulties &c
> 
> * If you want to be CC'ed please add or remove yourself from the
> sign-up-sheet at
> https://cryptpad.fr/pad/#/2/pad/edit/D9vGzihPxxAOe6RFPz0sRCf+/
> 
> Best Regards
> George
> 
> 
> == Dial-in Information ==
> ## Meeting time
> 16:00 - 17:00 British time
> Further International meeting times:
> https://www.timeanddate.com/worldclock/meetingdetails.html?year=2023&month=10&day=5&hour=15&min=0&sec=0&p1=1234&p2=37&p3=224&p4=179
> 
> 
> ## Dial in details
> Web: https://meet.jit.si/XenProjectCommunityCall
> 
> Dial-in info and pin can be found here:
> 
> https://meet.jit.si/static/dialInInfo.html?room=XenProjectCommunityCall
> 


From xen-devel-bounces@lists.xenproject.org Mon Oct 02 22:27:33 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 22:27:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611785.951340 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnRNl-00004y-Ee; Mon, 02 Oct 2023 22:27:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611785.951340; Mon, 02 Oct 2023 22:27: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 1qnRNl-00004r-BV; Mon, 02 Oct 2023 22:27:17 +0000
Received: by outflank-mailman (input) for mailman id 611785;
 Mon, 02 Oct 2023 22:27: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=oggk=FQ=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qnRNk-0008WO-37
 for xen-devel@lists.xenproject.org; Mon, 02 Oct 2023 22:27:16 +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 d30e3a06-6172-11ee-9b0d-b553b5be7939;
 Tue, 03 Oct 2023 00:27: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 7FB6DCE104D;
 Mon,  2 Oct 2023 22:27:06 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id CD766C433C7;
 Mon,  2 Oct 2023 22:27:02 +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: d30e3a06-6172-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696285624;
	bh=agxx6g+aoO8QNtmXb7LTwbjod4UE6pmvSb5gqS/S0Ag=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=p42BjtszruZ/jR3mPvcqSfkmgKOwVebZyBQn3AP3xNGjIrCO4eASg86Mn66hSgqZC
	 RdfbzkEbDfRoGybbU5zcpoj/0Ro6l+I8/91d7e0SwSrKm6/l/NjaH8vXK4mweTuL4o
	 us5eAI1lwmOjEIgt4mpPqdkf47ndQZfBhtI5dxnUF0QCUkVSuEYby3YtQM3tYmPRkd
	 ht3Ls4X8IQJBfOnCNaSIR8mvuOgssfMJiyeUXXN9of23RrDmcJ7ht0HF4roZ9df8kc
	 5HqkCtJGKfMkfALEtXUt9g96c1qo88NnJ84min+THHusz74SB/HPud4xjFcf414ff0
	 Dzy4yob8UZoNA==
Date: Mon, 2 Oct 2023 15:27:01 -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: Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>, 
    Luca Fancellu <Luca.Fancellu@arm.com>, 
    Xen-devel <xen-devel@lists.xenproject.org>, Wei Chen <Wei.Chen@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: <38AD4AA5-D038-4114-A614-80BF91FB51FB@arm.com>
Message-ID: <alpine.DEB.2.22.394.2310021512210.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>
 <alpine.DEB.2.22.394.2309291242570.2348112@ubuntu-linux-20-04-desktop> <bc2a043a-9836-429b-88bb-6bedda5343bf@xen.org> <38AD4AA5-D038-4114-A614-80BF91FB51FB@arm.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: multipart/mixed; BOUNDARY="8323329-242397748-1696284850=:2348112"
Content-ID: <alpine.DEB.2.22.394.2310021515050.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-242397748-1696284850=:2348112
Content-Type: text/plain; CHARSET=UTF-8
Content-Transfer-Encoding: 8BIT
Content-ID: <alpine.DEB.2.22.394.2310021515051.2348112@ubuntu-linux-20-04-desktop>

On Mon, 2 Oct 2023, Bertrand Marquis wrote:
> > On 2 Oct 2023, at 10:26, Julien Grall <julien@xen.org> wrote:
> > On 29/09/2023 20:48, Stefano Stabellini wrote:
> >> 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?
> > 
> > Looking at the name of the functions, I would expect that we would need another code movement in the future to move back Arm specific function under arch/arm/. So we would end up with two code movement as well.
> > 
> > I would prefer if we wait until RISC-V/x86 needs it so we don't unnecessarily move Arm specific code in common/.
> 
> I agree with Julien here.
> Moving the code now will mean moving part of it back in arm in the future once we have a second user of this.
> I would rather wait for the need to come so that we do this cleanly.
> 
> Also using hyperlaunch name now would be weird as there was no agreement on the naming (as far as I know) so far.

RISC-V is already using dom0less code, however in a downstream
repository. To make progress faster the code was copied (not shared)
from arch/arm to arch/riscv. More details on the Xen community call this
week. https://gitlab.com/xen-project/people/olkur/xen/-/blob/riscv_aia_support/xen/arch/riscv/domain_build.c?ref_type=heads

Hyperlaunch also needs dom0less code to be made common to make progress:
https://marc.info/?l=xen-devel&m=169154172700539

So I think that there is an immediate RISC-V and X86 need.

But the point about "moving the code now will mean moving part of it
back in arm in the future" is valid. How do we move forward?

I don't think we want to block Luca's progress to wait for more
plumbings done on x86 or RISC-V. Also we don't want to scope creep
Luca's series too much.

But I think the goal should be to move dom0less code to xen/common as
soon as possible and make it arch neutral. How do we get there?
--8323329-242397748-1696284850=:2348112--


From xen-devel-bounces@lists.xenproject.org Mon Oct 02 22:31:23 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 22:31:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611789.951351 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnRRh-0002AR-0X; Mon, 02 Oct 2023 22:31:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611789.951351; Mon, 02 Oct 2023 22: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 1qnRRg-00029T-S5; Mon, 02 Oct 2023 22:31:20 +0000
Received: by outflank-mailman (input) for mailman id 611789;
 Mon, 02 Oct 2023 22:31: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=oggk=FQ=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qnRRf-00027t-N4
 for xen-devel@lists.xenproject.org; Mon, 02 Oct 2023 22:31:19 +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 678bf585-6173-11ee-98d2-6d05b1d4d9a1;
 Tue, 03 Oct 2023 00:31:18 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by ams.source.kernel.org (Postfix) with ESMTP id A6744B81696;
 Mon,  2 Oct 2023 22:31:17 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 3F634C433C7;
 Mon,  2 Oct 2023 22:31: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: 678bf585-6173-11ee-98d2-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696285877;
	bh=RvziqnROSEBM/H6Hty6jzxfFQitQc5t+zSATJFMg4YU=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=WXqp7Hxga1eburs/FlYjT5p+IXJt1mARYZejUhda9Ji7fXZv4FLIaf3RrGknSK7bX
	 ilwsfdh4/ERujpcTBHzk4WWIif20h4pynlLmeLzGdqC0a76DRh4Gu9jiyTZtCepo5Y
	 FkeM2NkB2iI9d+flt76Ujq4pAw/fUXBHbCoLY6BPIB15SZ/yfPGiTGdwKxMFY1gM65
	 AEeIShbIS27XTw8I0KmOqc2idUR4/7LAC3hA9ZCDdVSgvcTDTuagHYsC0Umig2LMiZ
	 bqeZzzS3vtdGD1WV7YS2ETVk853Zmu9U+MccE0InHDUKtsF4rCYjwTDUfgHZ0vJBh7
	 oND852OvB0kEA==
Date: Mon, 2 Oct 2023 15:31:13 -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 v3 1/3] docs/misra: add documentation skeleton for
 MISRA C:2012 Dir 4.1
In-Reply-To: <14df7c8c667f3852bcc1ffab3a3ce862284a8a0c.1696231870.git.nicola.vetrini@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2310021531030.2348112@ubuntu-linux-20-04-desktop>
References: <cover.1696231870.git.nicola.vetrini@bugseng.com> <14df7c8c667f3852bcc1ffab3a3ce862284a8a0c.1696231870.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, 2 Oct 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>

Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>


> ---
> Changes in v2:
> - Incorporated suggestions from Stefano.
> Changes in v3:
> - Replaced two leftover entries.
> ---
>  docs/misra/C-runtime-failures.rst | 210 ++++++++++++++++++++++++++++++
>  docs/misra/rules.rst              |   7 +
>  2 files changed, 217 insertions(+)
>  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..77e04a2562b8
> --- /dev/null
> +++ b/docs/misra/C-runtime-failures.rst
> @@ -0,0 +1,210 @@
> +===================================================================
> +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 that 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
> +___________________________________________________________________
> +
> +This behaviour can arise, for instance, from:
> +
> +- incongruent declarations;
> +- functions having no prototypes;
> +- casts on function pointers.
> +
> +The project has adopted various compiler flags and MISRA rules to lessen the
> +likelihood of this event.
> +
> +
> +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
> +___________________________________________________________
> +
> +The extensive checks in the code ensure that any violation of a compile-time
> +invariant will be detected prior to release builds, and violation of run-time
> +invariants is extensively tested. In release builds the number of invariants
> +is greatly reduced.
> +
> +
> +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 a2fe01464eec..3139ca7ae6dd 100644
> --- a/docs/misra/rules.rst
> +++ b/docs/misra/rules.rst
> @@ -49,6 +49,13 @@ maintainers if you want to suggest a change.
>       - 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 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
>       - If a function returns error information then that error
> -- 
> 2.34.1
> 


From xen-devel-bounces@lists.xenproject.org Mon Oct 02 22:32:09 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 22:32:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611793.951359 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnRST-0003YY-7b; Mon, 02 Oct 2023 22:32:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611793.951359; Mon, 02 Oct 2023 22: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 1qnRST-0003YR-4x; Mon, 02 Oct 2023 22:32:09 +0000
Received: by outflank-mailman (input) for mailman id 611793;
 Mon, 02 Oct 2023 22: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=oggk=FQ=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qnRSR-0003Uh-Tp
 for xen-devel@lists.xenproject.org; Mon, 02 Oct 2023 22:32: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 838820b4-6173-11ee-9b0d-b553b5be7939;
 Tue, 03 Oct 2023 00:32: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 677496100B;
 Mon,  2 Oct 2023 22:32:04 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 2FFF8C433C8;
 Mon,  2 Oct 2023 22:32:02 +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: 838820b4-6173-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696285924;
	bh=6g7oL5xSElW10Bg0sPSXxBPKXgjXfN4SFDaVtsZXhuQ=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=rHRmtTKAxUizRS8w6lnXc3g+xh/IKKQBVFsEjdlkr7lYLp8mSQ7u3MZG17IORfE4Z
	 LHg5bq0y/rZiWISAKN+QQRlqujJlJG3VNsB63YErhcEnxmXv8/embI1A2s9HTKM29n
	 RBfOQJN+FbIs2BNx+CuGUoIRciRZg8HwbqPgVNzo3reAeeOEtVoutm1QSd3s5dKEwH
	 MTXqVVDIGzQ3eIFyTk5Z633jVZgRpGu3LbLW5og4i7qIhmF72FGMIQMJ6Bo8WRA65w
	 1ZZuOz8VucLfRWt3BdOp9ZJn3rnnB+e8xlwkwy+QFtVL/DaC0I64IZqDzjnTjhumov
	 gK2DObxM/InbA==
Date: Mon, 2 Oct 2023 15:32:00 -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 v3 2/3] docs: make the docs for MISRA C:2012 Dir 4.1
 visible to ECLAIR
In-Reply-To: <fd60f0f3c777652bd305a97b559cb7ee23293e8d.1696231870.git.nicola.vetrini@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2310021531430.2348112@ubuntu-linux-20-04-desktop>
References: <cover.1696231870.git.nicola.vetrini@bugseng.com> <fd60f0f3c777652bd305a97b559cb7ee23293e8d.1696231870.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, 2 Oct 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>

Acked-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
> 
> Changes in v3:
> - Terminate the generated file with a newline
> - Build it with -std=c99, so that the documentation
>   for D1.1 applies.
> ---
>  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..949458ff9e15
> --- /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*/\n" >> $@.tmp
> +	mv $@.tmp $@
> +
> +%.o: %.c
> +	$(CC) -std=c99 -c $< -o $@
> +
> +clean:
> +	rm -f C-runtime-failures.c *.o *.tmp
> -- 
> 2.34.1
> 


From xen-devel-bounces@lists.xenproject.org Mon Oct 02 22:32:31 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 22:32:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611794.951371 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnRSm-0003xB-Ie; Mon, 02 Oct 2023 22:32:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611794.951371; Mon, 02 Oct 2023 22: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 1qnRSm-0003x4-Ct; Mon, 02 Oct 2023 22:32:28 +0000
Received: by outflank-mailman (input) for mailman id 611794;
 Mon, 02 Oct 2023 22: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=oggk=FQ=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qnRSk-0003Uh-Qi
 for xen-devel@lists.xenproject.org; Mon, 02 Oct 2023 22:32:26 +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 8ef7ecaf-6173-11ee-9b0d-b553b5be7939;
 Tue, 03 Oct 2023 00:32:25 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by dfw.source.kernel.org (Postfix) with ESMTP id 0407061003;
 Mon,  2 Oct 2023 22:32:24 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 085E5C433C8;
 Mon,  2 Oct 2023 22:32: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: 8ef7ecaf-6173-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696285943;
	bh=Igo/faXy6SB8wWtOOpqnjsPZ2Q8FysqRf06N4tG0Dx0=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=RcsVPmYDYN+Ie30HJ1a/Mo/cgUPU5tM2PfKwETQ4mvqpYcTBcw+woTIPpgeIZEUtc
	 3pSEz03SunXhFXy5DtORBywldWpbS1Zq11XWRaSo7NSIzi+0bcOsyffDD56X+lHWWd
	 e84Uvqrq/FNZNtmwB8TmZdwfGwSYFduAN2nf77mfcG/vg4J9X1K8lxF7PykQdIUOOX
	 LdpUHjWP+X371XMOlJy3a+xNI5b+p/+++YxTJIKYHwtb57aHNKsH8zqFmk93HawF8Q
	 n4mrHz6n/Wj9k53xF6gujy+LNxpOJQBW/JIxfQZCpqTw5/Kt9/XIyUYOAB0Nu0hCsf
	 EfVRVhLdKC5Fg==
Date: Mon, 2 Oct 2023 15:32:20 -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, Simone Ballarin <simone.ballarin@bugseng.com>, 
    Doug Goldstein <cardoe@cardoe.com>, Henry Wang <Henry.Wang@arm.com>
Subject: Re: [XEN PATCH v3 3/3] automation/eclair: build docs/misra to address
 MISRA C:2012 Dir 4.1
In-Reply-To: <ac00d0259530ac895e7260ff7f64833c58053983.1696231870.git.nicola.vetrini@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2310021532140.2348112@ubuntu-linux-20-04-desktop>
References: <cover.1696231870.git.nicola.vetrini@bugseng.com> <ac00d0259530ac895e7260ff7f64833c58053983.1696231870.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, 2 Oct 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>

Acked-by: Stefano Stabellini <sstabellini@kernel.org>


> ---
> Changes in v3:
> - amended prepare script.
> ---
>  automation/eclair_analysis/build.sh   | 6 +++---
>  automation/eclair_analysis/prepare.sh | 7 ++++---
>  2 files changed, 7 insertions(+), 6 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..fe9d16e48ecc 100755
> --- a/automation/eclair_analysis/prepare.sh
> +++ b/automation/eclair_analysis/prepare.sh
> @@ -35,11 +35,12 @@ 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
> +    cd xen
> +    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 Mon Oct 02 22:35:31 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 22:35:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611802.951380 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnRVg-0004mP-58; Mon, 02 Oct 2023 22:35:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611802.951380; Mon, 02 Oct 2023 22: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 1qnRVg-0004mI-19; Mon, 02 Oct 2023 22:35:28 +0000
Received: by outflank-mailman (input) for mailman id 611802;
 Mon, 02 Oct 2023 22:35: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=oggk=FQ=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qnRVf-0004mC-9N
 for xen-devel@lists.xenproject.org; Mon, 02 Oct 2023 22:35:27 +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 fae0bf28-6173-11ee-98d2-6d05b1d4d9a1;
 Tue, 03 Oct 2023 00:35:26 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by dfw.source.kernel.org (Postfix) with ESMTP id 0B35160F3A;
 Mon,  2 Oct 2023 22:35:25 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 9E32DC433C8;
 Mon,  2 Oct 2023 22:35: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: fae0bf28-6173-11ee-98d2-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696286124;
	bh=GVt7hssc+WSjZK8GxtU+jvnTsICnF9+SSkazN7Z1zbs=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=Ehg9c8GAhyGus2G7BCbbTRnltzSvnotB56s83L/EdrIDuq27XUprndDkPyh2vdonM
	 aGNZXBsA/dm8I0bxc2+QIl7HsprZx0zEoNbDKoL/DDGJG8YaDEe7t9qTwUrM3RDPhM
	 jgG55ohPDgy0tQ3udWKgjLGpskxip4tYEaMfsIcG04v6UB+kZfGQ9b9w1vl+MOr+kF
	 kG1fTE+5z0CgaqUJhl8AVk9F58K7+7gZYnLrRVw7smsip5mHq/qHJdPLVAS9DqhsSN
	 Hf9I28zOKjr0Kc8wXOaInBPnAPYk8aRKWShDblXUpQYwJ8Ga85m8+iW4x75102dXWA
	 SMSmZfx99JkNA==
Date: Mon, 2 Oct 2023 15:35:21 -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>, 
    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 v3 0/3] docs/misra: add documentation skeleton to
 address MISRA C:2012 Dir 4.1
In-Reply-To: <cover.1696231870.git.nicola.vetrini@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2310021534230.2348112@ubuntu-linux-20-04-desktop>
References: <cover.1696231870.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, 2 Oct 2023, 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.
> 
> Note: The previous version of this series already had a release ack from Henry,
> which I didn't add in each commit message since I see in the commit history that
> tag being the last.
> 
> 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 |   7 +-
>  docs/Makefile                         |   7 +-
>  docs/misra/C-runtime-failures.rst     | 210 ++++++++++++++++++++++++++
>  docs/misra/Makefile                   |  22 +++
>  docs/misra/rules.rst                  |   7 +
>  6 files changed, 252 insertions(+), 7 deletions(-)
>  create mode 100644 docs/misra/C-runtime-failures.rst
>  create mode 100644 docs/misra/Makefile


Due to the code freeze, I committed these patches temporarily to:

https://gitlab.com/xen-project/people/sstabellini/xen.git for-4.19


From xen-devel-bounces@lists.xenproject.org Mon Oct 02 22:37:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 22:37:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611807.951390 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnRXs-0005NW-It; Mon, 02 Oct 2023 22:37:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611807.951390; Mon, 02 Oct 2023 22:37: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 1qnRXs-0005NP-Ea; Mon, 02 Oct 2023 22:37:44 +0000
Received: by outflank-mailman (input) for mailman id 611807;
 Mon, 02 Oct 2023 22: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=oggk=FQ=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qnRXq-0005NF-Sd
 for xen-devel@lists.xenproject.org; Mon, 02 Oct 2023 22:37:42 +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 4c46f88c-6174-11ee-98d2-6d05b1d4d9a1;
 Tue, 03 Oct 2023 00:37: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 57CBDB81691;
 Mon,  2 Oct 2023 22:37:41 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 355D5C433C7;
 Mon,  2 Oct 2023 22:37: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: 4c46f88c-6174-11ee-98d2-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696286260;
	bh=1e9kar+4sge4W4drjOG96MrtQK7wtnCpFMz6BdlzIsY=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=gn0hfaE30Or/Ek4Td+rFWvGKHSt5r4k5ddW7ouyyTHQMrgAlh372zzvoFQpJh2Eh8
	 6ce4LwYU6Nz/Zp22Hk7Kpi/yM72p2cwT8sqndtD0DEb4GaOqEEzRO97vvuMSg2rY1A
	 aewE0hsDoMLxY4yeqHvQtyYvE+kBBQKFOhAzLXh0wi16Wavp3+fzKitdKIYn5DoQ2H
	 Yg3jzm80j6CeVLUOnNVBBKE5SPlOAY890Z7yTpxkEFTPVTumQH6Uzs4eUlzwwE7Ahu
	 OkdqWSL8VNOrDhwvY7ZrvNPkSTf9LKqoLNM43Eu+fKEYG2b9FUKUZUuU8n7LfzxJLA
	 V30rWfGrgunYQ==
Date: Mon, 2 Oct 2023 15:37:37 -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, Henry.Wang@arm.com, Wei Liu <wl@xen.org>
Subject: Re: [XEN PATCH 2/7] x86: add deviations for variables only used in
 asm code
In-Reply-To: <c533d2a73151d89a910ad42b106ccd13991713db.1696232393.git.nicola.vetrini@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2310021536470.2348112@ubuntu-linux-20-04-desktop>
References: <cover.1696232393.git.nicola.vetrini@bugseng.com> <c533d2a73151d89a910ad42b106ccd13991713db.1696232393.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, 2 Oct 2023, Nicola Vetrini wrote:
> These variables are only used by asm code, and therefore
> the lack of a declaration is justified by the corresponding
> SAF comment.
>
> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>

Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>


From xen-devel-bounces@lists.xenproject.org Mon Oct 02 22:40:12 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 22:40:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611810.951400 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnRaE-0006mI-UH; Mon, 02 Oct 2023 22:40:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611810.951400; Mon, 02 Oct 2023 22: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 1qnRaE-0006mB-RS; Mon, 02 Oct 2023 22:40:10 +0000
Received: by outflank-mailman (input) for mailman id 611810;
 Mon, 02 Oct 2023 22: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=oggk=FQ=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qnRaD-0006m5-FK
 for xen-devel@lists.xenproject.org; Mon, 02 Oct 2023 22:40:09 +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 a3abc212-6174-11ee-98d2-6d05b1d4d9a1;
 Tue, 03 Oct 2023 00:40:08 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by ams.source.kernel.org (Postfix) with ESMTP id 43F5CB81689;
 Mon,  2 Oct 2023 22:40:08 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id A313AC433C7;
 Mon,  2 Oct 2023 22:40: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: a3abc212-6174-11ee-98d2-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696286407;
	bh=f3ezCHpAzXvLE6wd5J1aVpNq54qxq8SkZr4MhFf+SWA=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=M10J7mwptqHxppCTxdrrmxSlY/ALYveUC67bL6NU7yvSLKWqI+jkhNLy81di+rNJ2
	 0l5PeYyvvPynRqlPKWsIDJNjXw5HfQjTZSL163x1o/6r3J8jIISbfIUMcFQNIppfyY
	 TineJ6nR4V9FK4zWeI0a34CDwSxZxSXdd5beWJQFxCT/yGqCi2qQEYm+6WPt2wFC7L
	 gYOwfh8yXrSVBrz0JRwZl4A8/nuDn67Dg5aM+Wo+L0I+PE+bAXfKiwBsIf317sZv9q
	 /AhDi/iyXsLlpzMggADVSmeGvER3GKMZcpWbkLqqIcdyhwlIEWG8RmN40bcFSWXY2p
	 33Ti2JTmfwPZQ==
Date: Mon, 2 Oct 2023 15:40:04 -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, Henry.Wang@arm.com, Wei Liu <wl@xen.org>
Subject: Re: [XEN PATCH 3/7] x86: add deviation comments for  asm-only
 functions
In-Reply-To: <cf9012d5e4fbe514e9cce3f0074b1a87df505bc0.1696232393.git.nicola.vetrini@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2310021539570.2348112@ubuntu-linux-20-04-desktop>
References: <cover.1696232393.git.nicola.vetrini@bugseng.com> <cf9012d5e4fbe514e9cce3f0074b1a87df505bc0.1696232393.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, 2 Oct 2023, Nicola Vetrini wrote:
> As stated in rules.rst, functions used only in asm code
> are allowed to have no prior declaration visible when being
> defined, hence these functions are deviated.
> This also fixes violations of MISRA C:2012 Rule 8.4.
> 
> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>

Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>



From xen-devel-bounces@lists.xenproject.org Mon Oct 02 22:42:24 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 22:42:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611815.951410 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnRcL-0000GK-9q; Mon, 02 Oct 2023 22:42:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611815.951410; Mon, 02 Oct 2023 22:42: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 1qnRcL-0000GD-6U; Mon, 02 Oct 2023 22:42:21 +0000
Received: by outflank-mailman (input) for mailman id 611815;
 Mon, 02 Oct 2023 22:42: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=oggk=FQ=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qnRcJ-0000DW-OH
 for xen-devel@lists.xenproject.org; Mon, 02 Oct 2023 22:42:19 +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 f11210c1-6174-11ee-98d2-6d05b1d4d9a1;
 Tue, 03 Oct 2023 00:42:18 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by ams.source.kernel.org (Postfix) with ESMTP id 24D9FB81689;
 Mon,  2 Oct 2023 22:42:18 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id E74F9C433C7;
 Mon,  2 Oct 2023 22:42: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: f11210c1-6174-11ee-98d2-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696286537;
	bh=g/yK6WM2t3/zk3Udh2EdT7dh3d86N78skG3nkkI7brg=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=BU2DTtf1mISQ7ACB9jxd1IwHr/1iig3PP/bjwZxC7QtIwFE27rQxHyhg5WtEZrIkc
	 ixwzgGL84L2BIh9YQAIjFIeliYptRSyJUHFy3jK39RuAyhrj/uMd0FrrVO/ltplIcm
	 gVnkkrx8nTqLgAUECN4ZiJrYFUyfw3qS4bTVUkJyfCQYVCjGATWowRANzgrVt7sAAP
	 /Pn+bN/9wt7KvAosmWrC1qY5LWre2r3pAVy/Qq61tefsqpTYqNbQ6zbwdnNhtOUawJ
	 e7R8dRGWZyElJ47dupMMCPa362yHq3ZrMumavnlIVqakUTkEJQLyFcRlROcuITjNSi
	 tnuOCt4iK9Q3w==
Date: Mon, 2 Oct 2023 15:42:14 -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, Henry.Wang@arm.com, Wei Liu <wl@xen.org>
Subject: Re: [XEN PATCH 4/7] x86/grant: switch included header to make
 declarations visible
In-Reply-To: <ec3179df569d3e2b392360539bddfb3adc726a5e.1696232393.git.nicola.vetrini@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2310021541230.2348112@ubuntu-linux-20-04-desktop>
References: <cover.1696232393.git.nicola.vetrini@bugseng.com> <ec3179df569d3e2b392360539bddfb3adc726a5e.1696232393.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, 2 Oct 2023, Nicola Vetrini wrote:
> The declarations for {create,replace}_grant_p2m_mapping are
> not visible when these functions are defined, therefore the right
> header needs to be included to allow them to be visible.
> 
> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
> ---
>  xen/arch/x86/hvm/grant_table.c             | 3 +--
>  xen/arch/x86/include/asm/hvm/grant_table.h | 2 ++
>  2 files changed, 3 insertions(+), 2 deletions(-)
> 
> diff --git a/xen/arch/x86/hvm/grant_table.c b/xen/arch/x86/hvm/grant_table.c
> index 30d51d54a949..afe449d8882c 100644
> --- a/xen/arch/x86/hvm/grant_table.c
> +++ b/xen/arch/x86/hvm/grant_table.c
> @@ -9,8 +9,7 @@
>  
>  #include <xen/types.h>
>  
> -#include <public/grant_table.h>
> -
> +#include <asm/hvm/grant_table.h>
>  #include <asm/p2m.h>

This makes sense...


>  int create_grant_p2m_mapping(uint64_t addr, mfn_t frame,
> diff --git a/xen/arch/x86/include/asm/hvm/grant_table.h b/xen/arch/x86/include/asm/hvm/grant_table.h
> index 33c1da1a25f3..576aeb50adf4 100644
> --- a/xen/arch/x86/include/asm/hvm/grant_table.h
> +++ b/xen/arch/x86/include/asm/hvm/grant_table.h
> @@ -10,6 +10,8 @@
>  #ifndef __X86_HVM_GRANT_TABLE_H__
>  #define __X86_HVM_GRANT_TABLE_H__
>  
> +#include <asm/paging.h>

... but I don't understand this one. It doesn't look like
asm/hvm/grant_table.h actually needs asm/paging.h ? Maybe it should be
included in xen/arch/x86/hvm/grant_table.c instead ?


>  #ifdef CONFIG_HVM
>  
>  int create_grant_p2m_mapping(uint64_t addr, mfn_t frame,
> -- 
> 2.34.1
> 


From xen-devel-bounces@lists.xenproject.org Mon Oct 02 22:43:04 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 22:43:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611819.951420 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnRd0-0001PS-I9; Mon, 02 Oct 2023 22:43:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611819.951420; Mon, 02 Oct 2023 22:43: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 1qnRd0-0001PL-Ey; Mon, 02 Oct 2023 22:43:02 +0000
Received: by outflank-mailman (input) for mailman id 611819;
 Mon, 02 Oct 2023 22:43: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=oggk=FQ=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qnRcy-0001P9-OA
 for xen-devel@lists.xenproject.org; Mon, 02 Oct 2023 22:43:00 +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 088dda61-6175-11ee-98d2-6d05b1d4d9a1;
 Tue, 03 Oct 2023 00:42:59 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by sin.source.kernel.org (Postfix) with ESMTP id 53A20CE104D;
 Mon,  2 Oct 2023 22:42:54 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id CDAD7C433C7;
 Mon,  2 Oct 2023 22:42: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: 088dda61-6175-11ee-98d2-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696286573;
	bh=pLofm0+nX2ucZmJlrhodyVyFxCYFlphWF5PLjMEe/S0=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=UL3PV1Tb4JtV3C1+WF27dZrL5ZeTNf5JMsjHS325rj2AQNzGASDM5xEfbwFF5T9SR
	 QKV/ZPeRPn7JstFgOzTR2fBPCKjNs1FUHTluAZmGT17Pxwz3pCTcWvQeTVMW8jTW4a
	 xHiAfnOxWBqhXrRZMh/9M7My3MHlFcAzcPIpc3OUAgfqfiFX4nNIz6PWvIfcRBd2ZL
	 rmJHUjCMZxPlX6HCRUi+FmO0eA3hojwflEMhahBjoy9/k0wuTLZhnbtd4+MoncAYHT
	 XknBm4i578BzUwrfB6NFyxPNHMPRWjITImrDtAO+1z3Uiz1Q0f7T+qImUyfOz8UBEg
	 LV40Rsl3O1Jrg==
Date: Mon, 2 Oct 2023 15:42:50 -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, Henry.Wang@arm.com, 
    George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>, 
    Wei Liu <wl@xen.org>
Subject: Re: [XEN PATCH 6/7] xen/console: make function static inline
In-Reply-To: <c4f778440688a1e1f81cc149aca8dd5248895f68.1696232393.git.nicola.vetrini@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2310021542430.2348112@ubuntu-linux-20-04-desktop>
References: <cover.1696232393.git.nicola.vetrini@bugseng.com> <c4f778440688a1e1f81cc149aca8dd5248895f68.1696232393.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, 2 Oct 2023, Nicola Vetrini wrote:
> The definition of 'consoled_guest_tx' can be static inline,
> thereby fixing a violation of MISRA C:2012 Rule 8.4.
> 
> Fixes: 5ef49f185c2d ("x86/pv-shim: shadow PV console's page for L2 DomU")
> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>

Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>


> ---
>  xen/include/xen/consoled.h | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/xen/include/xen/consoled.h b/xen/include/xen/consoled.h
> index fd5d220a8aca..e943d8d48f7b 100644
> --- a/xen/include/xen/consoled.h
> +++ b/xen/include/xen/consoled.h
> @@ -12,7 +12,7 @@ size_t consoled_guest_tx(char c);
>  
>  #else
>  
> -size_t consoled_guest_tx(char c) { return 0; }
> +static inline size_t consoled_guest_tx(char c) { return 0; }
>  
>  #endif /* !CONFIG_PV_SHIM */
>  #endif /* __XEN_CONSOLED_H__ */
> -- 
> 2.34.1
> 


From xen-devel-bounces@lists.xenproject.org Mon Oct 02 22:45:20 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 22:45:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611825.951429 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnRfC-0002Cx-UZ; Mon, 02 Oct 2023 22:45:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611825.951429; Mon, 02 Oct 2023 22:45: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 1qnRfC-0002Cq-Rb; Mon, 02 Oct 2023 22:45:18 +0000
Received: by outflank-mailman (input) for mailman id 611825;
 Mon, 02 Oct 2023 22: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=oggk=FQ=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qnRfC-0002Ca-0L
 for xen-devel@lists.xenproject.org; Mon, 02 Oct 2023 22:45:18 +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 5b3642ae-6175-11ee-9b0d-b553b5be7939;
 Tue, 03 Oct 2023 00:45:16 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by ams.source.kernel.org (Postfix) with ESMTP id C96AAB81691;
 Mon,  2 Oct 2023 22:45:15 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 7EF41C433C7;
 Mon,  2 Oct 2023 22:45: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: 5b3642ae-6175-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696286715;
	bh=0Xv1fg9Yr06kGBm0qoZ9sfFqEhxPHz8ust+2mU10Q3I=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=X0cjgwL1einGfXTMB138NchZNaSCZ95xno9PXeXSiORCr0nzAzqTsDN9R/lwoVw9U
	 C+HqeSz0xDOf1rOXu3wNK3ptg+8wZc8tZFTbvAuER1GFItaN5IYs0pRQCmMh64D/xO
	 D+FSpBvZclx1S+oP+X0x+B9f5DjQ0tciEqxEGWjAPcNdq9+yG2ER02h+3BO8mIVnaQ
	 XZzzWCKfs/8jwrexHcxH1XHgagkAxCSGMNTa0BRpQkpSTjQXLnLZrHqJFdQZW3qYHl
	 OVaHVQG8m2Xk2GGvNSukPXaj4cN9MZSgh9EAwBHfLfsz9L+qiHqNaww1p9mqtqycnu
	 GnSgycMlya+Sw==
Date: Mon, 2 Oct 2023 15:45:12 -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, 
    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>, 
    =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>, 
    Henry Wang <henry.wang@arm.com>
Subject: Re: [XEN PATCH] xen/irq: address violations of MISRA C:2012 Rule
 8.2
In-Reply-To: <fc077d4dba9c37d9d81cea5d184e59f00c3cdcd4.1696242264.git.federico.serafini@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2310021545060.2348112@ubuntu-linux-20-04-desktop>
References: <fc077d4dba9c37d9d81cea5d184e59f00c3cdcd4.1696242264.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 Mon, 2 Oct 2023, Federico Serafini wrote:
> Add missing parameter names. 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 Mon Oct 02 22:46:23 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 22:46:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611828.951439 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnRgE-0002kO-7A; Mon, 02 Oct 2023 22:46:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611828.951439; Mon, 02 Oct 2023 22: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 1qnRgE-0002kH-4Q; Mon, 02 Oct 2023 22:46:22 +0000
Received: by outflank-mailman (input) for mailman id 611828;
 Mon, 02 Oct 2023 22:46: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=oggk=FQ=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qnRgD-0002k7-2C
 for xen-devel@lists.xenproject.org; Mon, 02 Oct 2023 22:46:21 +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 8008c4d9-6175-11ee-9b0d-b553b5be7939;
 Tue, 03 Oct 2023 00:46: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 CBEFD60C70;
 Mon,  2 Oct 2023 22:46:17 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 5D054C433C7;
 Mon,  2 Oct 2023 22: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: 8008c4d9-6175-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696286777;
	bh=a2jOghW5Dystax6iLCr7AUgEBj8Airf3he862yNnUqs=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=DPbWwcgYAuKvkRU4jAGFOZssDx5jFHVWRgQJHMbT2j9TDOQHYMFky7WZ0k2SkdAqW
	 h+D9TZagak1BGHZy51WRKm5Qd9Bo7izJsUWVk0V8C9m0AO4tNePClckTUl4KH1SShL
	 J1YFLyZfrsgksTuM341l9MAiCk3J5Db1YpyIyCcq4+VHzum4CYItRrFBDvlahiND7G
	 czIPma5vhfLuMcGUxTxFEnPYh28JIJEaHupP0T6THds+yMjbztzgSv7By1RqtZNaO+
	 /0HOmZFf/mF1Bd2hreAOOLxQVcOVycoPc/GkvfqBpiFUA+RWwPzWNvYftV6VF8SzeC
	 tU0VbHr+OUx2Q==
Date: Mon, 2 Oct 2023 15:46:14 -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>, 
    Stefano Stabellini <sstabellini@kernel.org>
Subject: Re: [XEN PATCH] x86/paging: address a violation of MISRA C:2012 Rule
 8.3
In-Reply-To: <5a304ffd4fbdd0d5809dc68b857410bbc02f32a0.1696252375.git.federico.serafini@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2310021546070.2348112@ubuntu-linux-20-04-desktop>
References: <5a304ffd4fbdd0d5809dc68b857410bbc02f32a0.1696252375.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 Mon, 2 Oct 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 Mon Oct 02 23:03:53 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 02 Oct 2023 23:03:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611837.951450 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnRx1-0008FN-KR; Mon, 02 Oct 2023 23:03:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611837.951450; Mon, 02 Oct 2023 23: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 1qnRx1-0008FG-H6; Mon, 02 Oct 2023 23:03:43 +0000
Received: by outflank-mailman (input) for mailman id 611837;
 Mon, 02 Oct 2023 23:03: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=oggk=FQ=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qnRx0-0008Em-Iz
 for xen-devel@lists.xenproject.org; Mon, 02 Oct 2023 23:03:42 +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 eccfda4d-6177-11ee-98d2-6d05b1d4d9a1;
 Tue, 03 Oct 2023 01:03:41 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by sin.source.kernel.org (Postfix) with ESMTP id C9DABCE0E97;
 Mon,  2 Oct 2023 23:03:36 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id F2C52C433C8;
 Mon,  2 Oct 2023 23:03: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: eccfda4d-6177-11ee-98d2-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696287816;
	bh=/W1Zq9dl11xNiN53Zuc49WHlT7+g1AWnxWBM96epfQk=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=uAGDsE5hsOk5roaNe44UGCoFOKfoWuPQe1AfrHzR5NsvkL6XTN6VK54Mg3JXbEdeJ
	 90tfu8TpQcRb715Y6CJDj5MCKkmXXQpfLCgT9gojndribbcLKAmSktUv7v00+7QzfY
	 Ymez3gCCSlAYXeK4jm6+JS9HmX7N5nXy/xJO62Rie+sVCiu4I/dGf8HltJk1VUpDXq
	 pYLd7lzglT9h/yPTTaUFG6IBYZmSssoxcuBSUeXMot8d9i9TT7wk17O1k1WWPUEXgH
	 guMah/xWarjC8qsYran/Tp9boaE0gDEVtouQJGdb8ZnM4TU8CrmsGVQVlcc+bbQDL/
	 V+w6LLR5dtDaw==
Date: Mon, 2 Oct 2023 16:03:33 -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>, 
    "Driscoll, Dan" <dan.driscoll@siemens.com>, 
    "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.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: <c3cf8e91-cf68-410d-8640-09fce6d20e9b@xen.org>
Message-ID: <alpine.DEB.2.22.394.2310021554520.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> <alpine.DEB.2.22.394.2309291321570.2348112@ubuntu-linux-20-04-desktop>
 <c3cf8e91-cf68-410d-8640-09fce6d20e9b@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, 2 Oct 2023, Julien Grall wrote:
> On 29/09/2023 21:29, Stefano Stabellini wrote:
> > 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.
> 
> I am a bit confused why you think the firmware is wrong here. From ACPI spec
> (ACPI 6.5, section 5.2.25):
> 
> "GSIV for the secure EL1 timer. This value is optional, as an operating system
> executing in the nonsecure world (EL2 or EL1), will ignore the content of
> these fields."

Thanks for looking into it -- I didn't investigate the issue, I was just
assuming that the table was incomplete due to the zero value.


> So the expectation is that Xen should not read the value. In Xen, we decided
> to read it because we want to know which PPIs exists in order to find an
> unallocated one for the event channel.
>
> > 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.
> 
> IIRC, MISRA has a rule for checking return value.

Yes it does, rule 17.7, likely to be adopted


> If it doesn't, then I would
> at least query why you are suggesting to remove the BUG() but still keep the
> call. Surely, if a function returns an error, we need to investigate why the
> error is returned? And if the TIME_PHYS_SECURE_PPI is really not used, then
> why should the call be kept?
>
> As I wrote above, the goal of those calls was to ensure that all the PPI
> described in the firmware tables were recorded so we can find a free PPI for
> the event channel.
> 
> vgic_reserve_virq() fails because the PPI is already reserved. I actually
> wonder which other path reserves it? The reason in asking it is because for
> some field, 0 is used to mark the interrupt is not used exists (see below for
> the PPI timer). So maybe we forgot to add some check somewhere else. The other
> possible reason is the PPI might be shared (I couldn't find anything in the
> spec that it cannot be) and vgic_reserve_virq() doesn't deal with it right
> now.

Good point. That would be interesting to know


> Now regarding whether the PPI is used. AFAICT, the secure timer PPI is still
> present in the firmware tables (ACPI and DT) passed to dom0. So strictly
> speaking we want to ensure the PPI value is reserved.
> 
> That said, the ACPI spec suggests that the value will be ignored by the guest.
> The Device-Tree binding doesn't have such statement, but I suspect this may be
> the same. So it should be ok to skip reserving the PPI and therefore allow the
> event channel interrupt to use if it is not reserved by someone else.

You looked into this more deeply then I did. Your suggestion makes sense
to me.


> Cheers,
> 
> > 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
> > > 
> 
> -- 
> Julien Grall
> 


From xen-devel-bounces@lists.xenproject.org Tue Oct 03 00:13:51 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 03 Oct 2023 00:13:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611849.951460 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnT2Y-0007OK-Qd; Tue, 03 Oct 2023 00:13:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611849.951460; Tue, 03 Oct 2023 00: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 1qnT2Y-0007OD-N0; Tue, 03 Oct 2023 00:13:30 +0000
Received: by outflank-mailman (input) for mailman id 611849;
 Tue, 03 Oct 2023 00:13: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=vfA/=FR=amd.com=stefano.stabellini@srs-se1.protection.inumbo.net>)
 id 1qnT2W-0007O7-He
 for xen-devel@lists.xenproject.org; Tue, 03 Oct 2023 00:13:28 +0000
Received: from NAM12-MW2-obe.outbound.protection.outlook.com
 (mail-mw2nam12on20613.outbound.protection.outlook.com
 [2a01:111:f400:fe5a::613])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id a9d8f49d-6181-11ee-9b0d-b553b5be7939;
 Tue, 03 Oct 2023 02:13:23 +0200 (CEST)
Received: from CYXPR03CA0065.namprd03.prod.outlook.com (2603:10b6:930:d1::7)
 by BY5PR12MB4902.namprd12.prod.outlook.com (2603:10b6:a03:1dd::9) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.31; Tue, 3 Oct
 2023 00:13:15 +0000
Received: from CY4PEPF0000E9D1.namprd03.prod.outlook.com
 (2603:10b6:930:d1:cafe::5) by CYXPR03CA0065.outlook.office365.com
 (2603:10b6:930:d1::7) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.31 via Frontend
 Transport; Tue, 3 Oct 2023 00:13:15 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 CY4PEPF0000E9D1.mail.protection.outlook.com (10.167.241.144) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6838.22 via Frontend Transport; Tue, 3 Oct 2023 00:13:15 +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, 2 Oct
 2023 19:13:14 -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, 2 Oct
 2023 17:13:14 -0700
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; Mon, 2 Oct 2023 19:13: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: a9d8f49d-6181-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Nq1/GqMx0W+nO/U2PoV4bP6LOfqEwjW67nGhokTE17j7IiMPHVOfJ5fVitCW8tIpW9ueeN1r5glsQmOG3Z+wNn2cqNVm93dXBDK5+HVsECIhzsj3+osx+0olce0jxf/3Z+ZhYf7n3pfD6jfpOWA34F3V39K9epQK0ZQEpUIjW5UXf3smJKFGZWKeLJXVxUff4wtY5pu3tn7a2B9r7FUnGGQ4Ge5avAgaEr+YWKxk+2JunECFL1J67h9dQF6IP1eoG0cvRwU0ZZXYan9zuXp3Bm8XExzap2zkEL9QjdxY4qxl3lNo1/ia1u1BWm7DGB2pgfKX9dbKbkGHKeSTlGNxCQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=QdLFeTxLo1Ul3ngYgX4cJ1iUENIMverQEqTwlc21QJM=;
 b=Tk8UUX2hp016yEHE5w2lx4T0XcsJvtu68C7fTFtmes8L1tE1OEPII6kiavJSM3Y75wdmtrk6As+bTwUVZvtA7FKoWq24q/HnKYD7l/BSfy6k8aT5WSw3HuwuSczuMLBwBTTSQWCmr1C9t0FG7iLy7HVLvF3bugW0HJuXnrhR7caYAUBC5wvGmfZr7K/Fj9gF0U2eV19Q2R5qgBNQcnQ3FCJKEVbV4oUYsrbvG+7/69cpb2lsZXDZbuWoTDrcXWs2wu3XH1Sz0LNRkEnvz0+Sv3DpyGtJWzvIXvTLguLqnjKNFkummrnI8PHIHcRYvUOYVVFlYqNZ1rTsIpcd4NtL3g==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=gmail.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=QdLFeTxLo1Ul3ngYgX4cJ1iUENIMverQEqTwlc21QJM=;
 b=rMbBGZKenwIHKpBDj4QOJ2PdYDJ7Y7eg9zZZstk1FLbY4FTd0vtLMqkooqkXglaSnegMZmpWYJO+I7WwseJn8scup8D4yYxGzHiKPH2hbk9NIiXXkb54Qjl000DZoS7P617ePp+bxUxThYkuinMt/YF2zbgQR1iFg083vm8bQRQ=
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
Date: Mon, 2 Oct 2023 17:13:08 -0700
From: Stefano Stabellini <stefano.stabellini@amd.com>
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>, "Carlo
 Nonato" <carlo.nonato@minervasys.tech>, Bertrand Marquis
	<bertrand.marquis@arm.com>, Stefano Stabellini <sstabellini@kernel.org>,
	Michal Orzel <michal.orzel@amd.com>, <Stewart.Hildebrand@amd.com>
Subject: Re: Fwd: changing Dom0 data during smc call inside of xen during
 cache coloring
In-Reply-To: <CA+SAi2u2auZgzQh_s+pFspH1YLN4biCf0K7-V7NGWPZQjGoH0g@mail.gmail.com>
Message-ID: <alpine.DEB.2.22.394.2310021608180.2348112@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> <alpine.DEB.2.22.394.2309281447180.1996340@ubuntu-linux-20-04-desktop>
 <CA+SAi2vZie+PcKgkAbLxcaimG7strkWot1z4LTpCGLeJxuaT2g@mail.gmail.com> <CA+SAi2u2auZgzQh_s+pFspH1YLN4biCf0K7-V7NGWPZQjGoH0g@mail.gmail.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: multipart/mixed;
	boundary="8323329-1903153407-1696288286=:2348112"
Content-ID: <alpine.DEB.2.22.394.2310021709380.2348112@ubuntu-linux-20-04-desktop>
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: CY4PEPF0000E9D1:EE_|BY5PR12MB4902:EE_
X-MS-Office365-Filtering-Correlation-Id: 1090cd55-9eee-4b13-5c7f-08dbc3a589d1
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	mPySJLB0aXL0eWZSsfwIvxXJvHThGHHAR9KLbI0nlbH41eWLt5TcDa6ZjUzzPpdmLnecz3N3CuRroW+LV9fpm5bBZdi6LFe4TQmEy6Pis4ftZAxqINmp4fycoffEHoHVHbirLUKa8Lez9qqSCAuW9X4K6SMPikh3P0q+rMF+fKNjg72JLrl1g6fFn17gZrbsHtVjjdSHEOL9L9PBo39r/sHhWPevmkTRBP8gptHkNCcrqxmQqHYpFLZ7RUoTheX9Hrg3/fxXHaaXJKmXBSjWp3I7lyCoDCCkP6/Jgrrsf05QsIJb6ECBW9SN2+RAzYikWQACQ6SaE8UZNCo7b0cNRbcCMmJ5vINRWG5+AcZNXwAbMMBsum+wLhJdhmDxjDSmNcC4xjcZes8rbxKRMzJ8S8Z8jDqUvaSMNBC/Q6gIkLBBZY08sU7kQyTdRpIUkkkilQgTA+yVhRHN2mrUoEe/O1xRpIyjN4W7FYKYrtNVRbnH7Svf7mNiE9pm/QmxapYpunQexy+c1tesbpn75fUKjyicwBi3kC20mutpL/WuDrGrf/F80JFy4Rs+YVpa8V1omIFQ1pME0rDMnwg44eA9orYxVHagO3OWMSF72wvQwqLVahROk6zXpnbzUerOJ10YOpeZWOdBsteUsZg1hChm4+FqfgYG/JOpFc7pn47YhSQMLqi4/w8KvlUU6aua1P/10vjlh9EbEjcrVzP9GItAews0NWJG8oIW0m8u2gMqPD+XGm0bcy2TC21ZIDo6tBO2HnbpscEjXSWwLQ4S0yhXUw==
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)(7916004)(4636009)(346002)(396003)(376002)(136003)(39860400002)(230922051799003)(82310400011)(451199024)(186009)(64100799003)(1800799009)(36840700001)(46966006)(40470700004)(6916009)(70586007)(70206006)(316002)(2906002)(54906003)(9686003)(5660300002)(478600001)(4326008)(44832011)(26005)(426003)(336012)(83380400001)(8676002)(6666004)(8936002)(33964004)(356005)(47076005)(36860700001)(41300700001)(82740400003)(86362001)(33716001)(40460700003)(81166007)(40480700001)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 03 Oct 2023 00:13:15.1182
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 1090cd55-9eee-4b13-5c7f-08dbc3a589d1
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:
	CY4PEPF0000E9D1.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY5PR12MB4902

--8323329-1903153407-1696288286=:2348112
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8BIT
Content-ID: <alpine.DEB.2.22.394.2310021709381.2348112@ubuntu-linux-20-04-desktop>

Hi Oleg,

You are getting this output:

> (XEN) d0v0 Forwarding AES operation: 3254779951 136bb00000000000 -> fffffffffffff000

Which means that the guest physical address is 0x136bb00000000000 and
the translated physical address is 0xfffffffffffff000. It generates an
error so you are asking if 0xfffffffffffff000 is incorrect because the
translation is incorrect.

This is possible. However, I think it is more likely that
0x136bb000_00000000 is incorrect. This an extremely high address. Could
it be wrong?

Can you check against your device tree that 0x136bb000_00000000
corresponds to memory? Or something valid?

Cheers,

Stefano


On Mon, 2 Oct 2023, Oleg Nikitenko wrote:
> Hello Stefano,
> Hello Julien,
> 
> > OK I see the question is about the Xilinx Xen tree. In the logs below we have:
> 
> I see. After the correction r2 to r1 CSU got aborted immediately.
> 
> (XEN) d0v0 Forwarding AES operation: 3254779951 136bb00000000000 -> fffffffffffff000
> Received exception
> MSR: 0x200, EAR: 0x2F, EDR: 0x0, ESR: 0x861
> 
> I printed the value which I got after the expression which I provided in the 1-st email executed.
> 
> So I may conclude that Xilinx's real physical address calculation scheme on the xen CC is incorrect.
> 
> Could you suggest a correct one ?
> 
> Regards,
> Oleg Nikitenko
> 
> пт, 29 сент. 2023 г. в 00:50, Stefano Stabellini <sstabellini@kernel.org>:
>       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-1903153407-1696288286=:2348112--


From xen-devel-bounces@lists.xenproject.org Tue Oct 03 00:19:45 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 03 Oct 2023 00:19:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611853.951469 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnT8X-000822-EV; Tue, 03 Oct 2023 00:19:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611853.951469; Tue, 03 Oct 2023 00: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 1qnT8X-00081v-Bt; Tue, 03 Oct 2023 00:19:41 +0000
Received: by outflank-mailman (input) for mailman id 611853;
 Tue, 03 Oct 2023 00:19: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=2+eH=FR=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qnT8W-00081p-Jv
 for xen-devel@lists.xenproject.org; Tue, 03 Oct 2023 00:19:40 +0000
Received: from EUR01-VE1-obe.outbound.protection.outlook.com
 (mail-ve1eur01on061a.outbound.protection.outlook.com
 [2a01:111:f400:fe1f::61a])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 89d383f7-6182-11ee-9b0d-b553b5be7939;
 Tue, 03 Oct 2023 02:19:38 +0200 (CEST)
Received: from DUZPR01CA0177.eurprd01.prod.exchangelabs.com
 (2603:10a6:10:4b3::26) 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.6813.28; Tue, 3 Oct
 2023 00:19:24 +0000
Received: from DBAEUR03FT003.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:4b3:cafe::8e) by DUZPR01CA0177.outlook.office365.com
 (2603:10a6:10:4b3::26) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.30 via Frontend
 Transport; Tue, 3 Oct 2023 00:19:23 +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.20 via Frontend Transport; Tue, 3 Oct 2023 00:19:23 +0000
Received: ("Tessian outbound ee9c7f88acf7:v211");
 Tue, 03 Oct 2023 00:19:23 +0000
Received: from af9a1b450e07.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 49E6E527-891A-439F-AC4D-D8AA158D3FE3.1; 
 Tue, 03 Oct 2023 00:19:16 +0000
Received: from EUR02-VI1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id af9a1b450e07.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Tue, 03 Oct 2023 00:19:16 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by AM9PR08MB6065.eurprd08.prod.outlook.com (2603:10a6:20b:2dd::11)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.33; Tue, 3 Oct
 2023 00:19: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.033; Tue, 3 Oct 2023
 00:19: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: 89d383f7-6182-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=FO/xE6Oe4lQD2FY/5uOsd/64FQYP4ZqEH2mpc3CEjEA=;
 b=zIoj3zt5tES+iqziH68OwtJ/9FyYmQNSaXVDeORuDWI0dQLjEqJLDcdBFK/GITzlEJwO93kQ7rHAymKdAQYpOxGVA0VstPQnX6pUulCYS5hOUXqL1wYykY2vHIwEiT6V2PGRtRcghHNWd9kqta0A4JLfcLBbkBZDLS9S+TGV8/U=
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: e32b18d3acd73d33
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=VWFizVrqlPuf4uT3DbN0dNsZGWhXlsIxwMbOdtiWfEHPrUCicrs6MIYxbyVr1aX3pNYcX7LXbW/NtsDv2ejLYS+zAm4gUjOlySqoduXrSq7m0T1l/xyyd4MFbRxozyGr/tZiLY7m55s4eI1jTuqn8j7KfRcPEArT6BB0vp/nYDCVrXP3QIWVfZnMywLLOTFs92eL2xvJ0kz0FQI8VGGzZffDG05fN4Tai/0r+c5ClmD9LfvpNAza2lhSAMm7FocC0d/qdxkD7BbnJDkcTES0MPMu2n1O69Y0nDQRgZd7RBTqYCFcyzOfeVy8iBDyKNYU2tZSW+pPDosS/WojzVoaYw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=FO/xE6Oe4lQD2FY/5uOsd/64FQYP4ZqEH2mpc3CEjEA=;
 b=WD2Fj0UOK2cmX0tsmORxy6hNXRUQquYcbuf447VUDEkOH6jsWcoi245IiPYKzo1IjXd4JA5FL+cciLEWQNGfFwnzVa5urrumWkKkCRWT2SZJkKR9YqTr/ckzRlZwpVd5mZ+Xr1sIopWVQ9INJxoco8kPu/U8aG+trK1T/8J8wPcC1YoewEmjHeNUKfc2Hcdq3M6UARCBOrmXYK3VDlqsWq/TShWwrb/CX+gQfhq28sX9uaBRz+c8M8UcYKdp5Jh/NWPJytvUy23FisEYS3znsyK14SiFhlVUFuvjB7PQ/G9bpCcXpbJh7M4IzX9iKhm7Q9+Xi9X5yGmavO33wMC2NA==
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=FO/xE6Oe4lQD2FY/5uOsd/64FQYP4ZqEH2mpc3CEjEA=;
 b=zIoj3zt5tES+iqziH68OwtJ/9FyYmQNSaXVDeORuDWI0dQLjEqJLDcdBFK/GITzlEJwO93kQ7rHAymKdAQYpOxGVA0VstPQnX6pUulCYS5hOUXqL1wYykY2vHIwEiT6V2PGRtRcghHNWd9kqta0A4JLfcLBbkBZDLS9S+TGV8/U=
From: Henry Wang <Henry.Wang@arm.com>
To: Stefano Stabellini <sstabellini@kernel.org>
CC: Federico Serafini <federico.serafini@bugseng.com>, Xen-devel
	<xen-devel@lists.xenproject.org>, "consulting@bugseng.com"
	<consulting@bugseng.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>
Subject: Re: [XEN PATCH] x86/paging: address a violation of MISRA C:2012 Rule
 8.3
Thread-Topic: [XEN PATCH] x86/paging: address a violation of MISRA C:2012 Rule
 8.3
Thread-Index: AQHZ9Ta/NlvugOvKeE2dpjYrdI/xh7A3GhEAgAAZ7QA=
Date: Tue, 3 Oct 2023 00:19:14 +0000
Message-ID: <3D657AA0-676B-4681-B980-26BCCC98B092@arm.com>
References:
 <5a304ffd4fbdd0d5809dc68b857410bbc02f32a0.1696252375.git.federico.serafini@bugseng.com>
 <alpine.DEB.2.22.394.2310021546070.2348112@ubuntu-linux-20-04-desktop>
In-Reply-To:
 <alpine.DEB.2.22.394.2310021546070.2348112@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_|AM9PR08MB6065:EE_|DBAEUR03FT003:EE_|GV2PR08MB9424:EE_
X-MS-Office365-Filtering-Correlation-Id: 954c8583-9c98-4721-26c4-08dbc3a66543
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:
 PXmbphLeVjBJowWLofYKIrh1eMTvPduQPPq2DnDj/T9r86DQqDqCc4ke/R8KbzdVWMN3zHe3KtO24pKpPpFDoIw8zGtpkwchYpUM3FbuvjP0RwNLHw86JIsDL54IFky1ID3dW2leiRTNKYNcNmPObtPjy44Y0P6lTS0rymMv1PQOgsPASZMea6/hwB/TTVeCQRHUotvqos0ubeXgKBGr4ZxyCwWEj9/mvFSKJJXV4i2FfOxPh3iu5pmYigXMbaMemLpPnXSbRzij6g6IYin+7PtgiGbA8s8UAhd7h/cRjZdIF8VdA39CEfm8TmOomj6YiXQyvgk4fOYadMaadAfx0ouALQBppRZXgvCTtF6n9xBNIG9+0ufH3EVEdAAKRKELYwaBz1wxXVVm02+AsCwqHW6bQCv90vVw/k/moiiEUp7WRH1YtSuEwGACKrO+O9qpLC4OcahBEV/4HJLmTGv0kVyWAwfXUn29Aw9TDLIsU+DWYSN7Vo78G2qXehZ6GtFU9yT7mJDuVXFWw2+fKZhYeN7iTfwl3caQAqZaJw6usc5J29UlzbvbxXuMmxMVy6FdNBwWFiy1YsFzHOSa9XmBGvx4VCBpNhKhXDJ0c3xd9bY9i3qXrhW9/g0gy8f6lzIh5oEka5xbFSqISEZlkbBCSw==
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)(136003)(346002)(376002)(230922051799003)(64100799003)(186009)(451199024)(1800799009)(6486002)(71200400001)(478600001)(6506007)(53546011)(91956017)(6512007)(2616005)(26005)(36756003)(2906002)(4744005)(33656002)(64756008)(54906003)(66446008)(86362001)(76116006)(66946007)(66556008)(66476007)(41300700001)(316002)(6916009)(5660300002)(38070700005)(38100700002)(122000001)(8936002)(8676002)(4326008)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="iso-8859-1"
Content-ID: <221DCC3E99FB7849B067517B642AAF19@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR08MB6065
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:
	47f7755d-22d0-4b52-36fc-08dbc3a65fb1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	GZOHS9ZF9ckt/OD2gs5/AgMTyO0mPTZgC5wxMZ0UtLT7SZDKu5BbpTWacaOE3A8uuIcDgDdX/KUY0d4pod9OdOC3dPR68XpbOqG7Wg+1X3x+g04dezn2TN6C0szlwOdD9QAxZUqy+jGcRi47tYhGEMAwLlrfBrEUXDa2WGPlP8DBdEpybWqT7ucfzoNnyC004F51K3cMMsdcA9pvScdhqIW6+vVS6FACw/548yKTBiP4Ub6Zr3n7X6zRtIRubiwQQcqtSQbfomEtUnjjvmC/ccdOEHoEIbu7/zyPgW3UKX7U+CerTbT27qlJiSgvAtJllIbEp1+RyU0hCh/vyefOuN1ul7uzn2YupeFHuCrnBruVsL6DscH4ZSecb2ZZVOjZveTlRyK2ThyXO4vuOwFzL2+D15+sjYEost3QIZbouCLKJ5TGkQs1IHSHWCzjoSRtH34npykWSQ0etlTkiLNdPhH7OvdU1cgQCKUDl+K6lVbMM88fO2ZBaj8WF5eupWLokYd3Lk9dRFkoS31TnjjXQhYxOiskGWrmLNjpgrpCtap/jYU67GvaNxEoCAr2nx3mY3NhXM0cASLgm6RD1BVHJy6D0L7Wi0TyfR+bluo1w/qaNqyVA0pEWH3Q1auSSAtUJji/ZjqswnNigBJxkij2PbpS+kYvUrMB3UyG3aSxsAbA7CfuBv1zqK6XEtoh9Se/D9cT5ZZBMm+tnzuBhrBRv3zV2c9XBaJ0NjwNUApgIFEo+vE1e6phHmJ3Y9yygl+Z
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)(186009)(1800799009)(64100799003)(451199024)(82310400011)(40470700004)(46966006)(36840700001)(6486002)(53546011)(6506007)(6512007)(336012)(26005)(2616005)(36756003)(478600001)(316002)(47076005)(70206006)(81166007)(82740400003)(356005)(36860700001)(70586007)(54906003)(8936002)(8676002)(6862004)(4326008)(41300700001)(5660300002)(33656002)(40480700001)(4744005)(2906002)(40460700003)(86362001);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 03 Oct 2023 00:19:23.3944
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 954c8583-9c98-4721-26c4-08dbc3a66543
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: GV2PR08MB9424

Hi,

> On Oct 3, 2023, at 06:46, Stefano Stabellini <sstabellini@kernel.org> wro=
te:
>=20
> On Mon, 2 Oct 2023, Federico Serafini wrote:
>> Make function declaration and definition 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 Tue Oct 03 00:20:24 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 03 Oct 2023 00:20:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611856.951480 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnT9D-0000uC-OR; Tue, 03 Oct 2023 00:20:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611856.951480; Tue, 03 Oct 2023 00:20: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 1qnT9D-0000u5-Ke; Tue, 03 Oct 2023 00:20:23 +0000
Received: by outflank-mailman (input) for mailman id 611856;
 Tue, 03 Oct 2023 00: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=2+eH=FR=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qnT9D-00081p-1y
 for xen-devel@lists.xenproject.org; Tue, 03 Oct 2023 00:20:23 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur04on2058.outbound.protection.outlook.com [40.107.7.58])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id a3723b9c-6182-11ee-9b0d-b553b5be7939;
 Tue, 03 Oct 2023 02:20:21 +0200 (CEST)
Received: from AM6PR01CA0049.eurprd01.prod.exchangelabs.com
 (2603:10a6:20b:e0::26) by DB9PR08MB7843.eurprd08.prod.outlook.com
 (2603:10a6:10:39e::21) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.26; Tue, 3 Oct
 2023 00:19:50 +0000
Received: from AM7EUR03FT055.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:20b:e0:cafe::ae) by AM6PR01CA0049.outlook.office365.com
 (2603:10a6:20b:e0::26) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.30 via Frontend
 Transport; Tue, 3 Oct 2023 00:19:50 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM7EUR03FT055.mail.protection.outlook.com (100.127.141.28) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6863.20 via Frontend Transport; Tue, 3 Oct 2023 00:19:49 +0000
Received: ("Tessian outbound 9aeaca65ec26:v211");
 Tue, 03 Oct 2023 00:19:49 +0000
Received: from a8fd49509d93.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 FB2F8189-2E65-46C9-9314-E89314FBE90C.1; 
 Tue, 03 Oct 2023 00:19:39 +0000
Received: from EUR02-VI1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id a8fd49509d93.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Tue, 03 Oct 2023 00:19:39 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by AM9PR08MB6065.eurprd08.prod.outlook.com (2603:10a6:20b:2dd::11)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.33; Tue, 3 Oct
 2023 00:19: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.033; Tue, 3 Oct 2023
 00:19: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: a3723b9c-6182-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=CJlrGLqKDaI0TNHmKUQtQaySijm/95IRzRFM+oKkebQ=;
 b=fRAUSjyuhJDGQuNBQyLlvRNlGcoTxSE99pDlJAxa4fDlAFvAOA8dhYb+SaEB08SzHqeUcUWrOvpJl4wiREcbLDCCjyAKZ/zKmfsRw91VUtZ5ZvyPSIPm00fl1TYq/Fg0wahB8vf+uzW60XWZPxUHbQoQmrI+2rzq7Xec6o8IBws=
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: ef506648ebca0dec
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=KDsqvNwuRUJgqbS6HH/s6cqg43Rrf4KC7k1h/VVlJb4x5fGN2r4+vbIN7KTNEsFAFTVrHziQnKquRdYkn9Y2vXvv+MlTqfqkV5MHeuua5hUhYGlgEXPs2XS65iPc6/p3F7saH1LVfi98GWza111YG7/+pe2DhlRH4ZG2rwfJejwPLTsdIETtDII4XB9ol6ciPYKzx8yyAhcZH/NdkqRyXapErq1KJ+O0INjSKbr0P67o8Luj5mnlLwg5dQRldJQn4yovpjhJXaO4C2Fw5gkNRa9pGkBuh7ZdG/sn33kXyC710aHdhw72w19wOIzioSrYWyiw8/4NQikNg2XJtbGLSw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=CJlrGLqKDaI0TNHmKUQtQaySijm/95IRzRFM+oKkebQ=;
 b=XfaJQlCUzb+5LZ+UvkqGpi+ZVK7Hdfrb+kAF62yDWOIyGV6QaOEywe2RcIi5XwT9t3Q7wkH45tL//9xlNUWXSVApx0G4QTVhpeNaZoJClDjB9b+RNXStv7X4y1Ejj4aIKAvHzJRd0gWTfWzBaLuXHb8BRgXi5xY/Dzkxm27hrhyz4lG535zSjHDQOfYh53gXv77gxgawpwF+GV23ye3sao/HYfslPHGWUjq/nU3Wll5F+IQ3YZn3UQkrRfdWh6k7Q72JOxp3dfukxRWgKJfHzoeRYimtUhoJ5fsSCb1JlMGi43Q+seh0vioJctaTmGUcx3pHc+F6iHE4k9iZlAOYng==
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=CJlrGLqKDaI0TNHmKUQtQaySijm/95IRzRFM+oKkebQ=;
 b=fRAUSjyuhJDGQuNBQyLlvRNlGcoTxSE99pDlJAxa4fDlAFvAOA8dhYb+SaEB08SzHqeUcUWrOvpJl4wiREcbLDCCjyAKZ/zKmfsRw91VUtZ5ZvyPSIPm00fl1TYq/Fg0wahB8vf+uzW60XWZPxUHbQoQmrI+2rzq7Xec6o8IBws=
From: Henry Wang <Henry.Wang@arm.com>
To: Stefano Stabellini <sstabellini@kernel.org>
CC: Federico Serafini <federico.serafini@bugseng.com>, Xen-devel
	<xen-devel@lists.xenproject.org>, "consulting@bugseng.com"
	<consulting@bugseng.com>, 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>, =?iso-8859-1?Q?Roger_Pau_Monn=E9?= <roger.pau@citrix.com>
Subject: Re: [XEN PATCH] xen/irq: address violations of MISRA C:2012 Rule 8.2
Thread-Topic: [XEN PATCH] xen/irq: address violations of MISRA C:2012 Rule 8.2
Thread-Index: AQHZ9Rx0XYZCWJoaU0iHka8JZCUjxbA3GfsAgAAaU4A=
Date: Tue, 3 Oct 2023 00:19:36 +0000
Message-ID: <F8ED4DE9-CE9B-4B51-B702-893D062EFBB7@arm.com>
References:
 <fc077d4dba9c37d9d81cea5d184e59f00c3cdcd4.1696242264.git.federico.serafini@bugseng.com>
 <alpine.DEB.2.22.394.2310021545060.2348112@ubuntu-linux-20-04-desktop>
In-Reply-To:
 <alpine.DEB.2.22.394.2310021545060.2348112@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_|AM9PR08MB6065:EE_|AM7EUR03FT055:EE_|DB9PR08MB7843:EE_
X-MS-Office365-Filtering-Correlation-Id: 7a8396bd-60ad-4b8b-0462-08dbc3a67514
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:
 ZjFoMkoqZlLAs5gJAUfBVhMjeXNN1Smt9rx2htk548S6sI7/t005t7D7teJUv+0hmGLylv8IDu16IktamuYOmmXNcFc5yykgA+ejoGuaL7d2MDgS2cV9uDroxjO3mE1S+OFpE3xYfWiGU7Y9wCVGDX7paIfyqlqX0pbfDcr17sQNmTy6pw3VOFnbVikQySrQASq7Az8yS6MZZlp277t559WyQ6kmbFJaZ3gYvX9YFCHzQAst+QmBw+lVYp+cEZu2PD7Bqd1oxsSRwJgQ1yzwv+xl6XW2Gm1Ogpp8+8HOyvDfBJwfYVLdu6wJ6Xb3b7wXwGYGwZmKpEYll0fwDFcoD1hbyhtIN+8gJJt1PqRR73DMFbBj6duHUuYRuGDj0BWSXiCyK48fxLi58RPHj+naZEjGwjnQvs2rcFp2p4yiHgUK9wTlafOPlx+Q7wT67pkurx8UgjO70QwB7hHBqksC9BhGNkl6W/5Y07NvTnZP24yYM8L7nW/TpyM61DvcKs9XmwxbFEsOVZYsbrzjfZBw3ZOepzOkXYpAunVJVAiZBtE3DVeLCa31Ig1oMmwhPd7NYqMdZmn5pfdmacOoz2Hi6w9SbD8uGntldlj3T/jA6NcPp6t1rFGv5H5AqvPy5HB7uzlszZbfjPmJOu7NbY7ZcA==
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)(136003)(346002)(376002)(230922051799003)(64100799003)(186009)(451199024)(1800799009)(6486002)(71200400001)(478600001)(6506007)(53546011)(91956017)(6512007)(7416002)(2616005)(26005)(36756003)(2906002)(33656002)(558084003)(64756008)(54906003)(66446008)(86362001)(76116006)(66946007)(66556008)(66476007)(41300700001)(316002)(6916009)(5660300002)(38070700005)(38100700002)(122000001)(8936002)(8676002)(4326008)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="iso-8859-1"
Content-ID: <06400A16A6C6DE459D0C570B8C42C970@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR08MB6065
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:
 AM7EUR03FT055.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	6b01a13b-b520-47ca-ce12-08dbc3a66cea
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	U1E0KTgSi9YRbkzHhwzv4OHXcyiImFV00/Ah2TUZ1BHDtEyO7wLC4t71yUlnMziP1oU2ZBTFCrbU2MCR61Q94W9sI3oyKMxUe94nU5wnxJBIXkMrB2+OpE+1bo3UAXZJLag30BnYWQxPlWOK4XTlKoq9HQ+Y0Sgen6QAZ2JMCgqk5vOAmGkya0GzrAprQgePkvK3VCf60LHWGJa0VyNyeqpj3jw7+IEpxQoL0Jx6BrHh4fXEAkZ6fTxSjBX0b5I2NYfaX8JZedsEKQeOGZDruOie6ko2dCll2qo/U52hzaAbmX1NScGbrT0gTdiNsCy8CIE7L0TIX7y0QAQ20+9tYeC7WQ8f6VN5Wfu3J4wZqUNt6nKWwWBArmcmaFyyp2vYeSYUMDmtzimNFvjt5J/Dvlw+JprOMzNSB36cxc8Yd+A6PkCcBLRWS8+Qq34tsN12cqR5WElldcm/j+c17lVPB6GgxkVc2OiDJJtvIGKNHJvZCC7h56Nv1ZVoXYsf4CDNAixCQIY48SehPa45ZWBxCGpvdJX1ainIF8NMAKBpMkEmwQbCaEJRo73+xxFw0tF2rJ7NYOIknY0QkZiii9o3Poa6yaZVlpAE9m81RZTW8h9tBsG8Za3INE0XQcJ7LuMfYFC16o0DkqYvjTu1z9xZ5kyFOtd11mK/vCTT6aOqY/Gc3Y3icRd7LWv2ApoCXB6aW9vOMREQjD+EnOhGA6XcBOqBS+SKbRVaStzbu0EPywxiVigMQBG3eSM51Oy7x9DF
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)(230922051799003)(451199024)(186009)(1800799009)(82310400011)(64100799003)(36840700001)(40470700004)(46966006)(2616005)(6506007)(53546011)(6512007)(40460700003)(86362001)(33656002)(40480700001)(81166007)(356005)(36860700001)(36756003)(82740400003)(26005)(336012)(47076005)(4744005)(2906002)(107886003)(478600001)(6486002)(8936002)(8676002)(6862004)(4326008)(316002)(41300700001)(5660300002)(70206006)(70586007)(54906003);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 03 Oct 2023 00:19:49.8665
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 7a8396bd-60ad-4b8b-0462-08dbc3a67514
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:
	AM7EUR03FT055.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR08MB7843

Hi,

> On Oct 3, 2023, at 06:45, Stefano Stabellini <sstabellini@kernel.org> wro=
te:
>=20
> On Mon, 2 Oct 2023, Federico Serafini wrote:
>> Add missing parameter names. 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 Tue Oct 03 01:27:00 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 03 Oct 2023 01:27:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611864.951490 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnUBP-0001Fh-EB; Tue, 03 Oct 2023 01:26:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611864.951490; Tue, 03 Oct 2023 01: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 1qnUBP-0001Fa-AL; Tue, 03 Oct 2023 01:26:43 +0000
Received: by outflank-mailman (input) for mailman id 611864;
 Tue, 03 Oct 2023 01:26: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 1qnUBO-0001FQ-0u; Tue, 03 Oct 2023 01:26: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 1qnUBN-0006aH-P9; Tue, 03 Oct 2023 01:26: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 1qnUBN-0007qb-D9; Tue, 03 Oct 2023 01:26:41 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qnUBN-0001CT-Ck; Tue, 03 Oct 2023 01:26: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=pdivU0kPJaf9hQk1AiUghj+oa6qzRgYgrz1hhFx4HoM=; b=pCc2z7eYrXXry6Apf+wSdTNEKE
	ZO9DqrbRvg1Z3VWJanL8ZCkimMe0n8Ss9hCIXvxJJR/CqNdcgxPAdbo3tBXQHc/Gs02MyacyxdAMN
	ct54QV+1stpaprVDjiqV450O9VJM5DqzdP0vvExMjPc7FZXrOZReQ1KTcb3UfzB8+gEg=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183242-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 183242: 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=3d2d9e90224c4f430a7ee1190fd3b871b99b0ba0
X-Osstest-Versions-That:
    xen=5bdfcf7fe89759321335159c8304833dc32a25cd
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 03 Oct 2023 01:26:41 +0000

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

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                  3d2d9e90224c4f430a7ee1190fd3b871b99b0ba0
baseline version:
 xen                  5bdfcf7fe89759321335159c8304833dc32a25cd

Last test of basis   183218  2023-09-29 19:02:06 Z    3 days
Testing same since   183242  2023-10-02 23:02:02 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  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
   5bdfcf7fe8..3d2d9e9022  3d2d9e90224c4f430a7ee1190fd3b871b99b0ba0 -> smoke


From xen-devel-bounces@lists.xenproject.org Tue Oct 03 03:19:49 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 03 Oct 2023 03:19:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611873.951499 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnVwe-0000ef-Je; Tue, 03 Oct 2023 03:19:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611873.951499; Tue, 03 Oct 2023 03: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 1qnVwe-0000eY-H4; Tue, 03 Oct 2023 03:19:36 +0000
Received: by outflank-mailman (input) for mailman id 611873;
 Tue, 03 Oct 2023 03:19: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 1qnVwc-0000eO-VP; Tue, 03 Oct 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 1qnVwc-0001HS-MG; Tue, 03 Oct 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 1qnVwc-0003I2-25; Tue, 03 Oct 2023 03:19:34 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qnVwc-0002Gi-1Y; Tue, 03 Oct 2023 03:19: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=cVuZU5QUDZSOuG1eDhE+1pdDP8ibmeUyaD8/Z7XuGbU=; b=3tK6p+t1p2MQsxJnIU27wKqbB3
	BX6kP1RXcowXQD/MJ4j1W5QSiTB7ziJS8Gr9cnRDWJAs51nLA0qOgwtwWxqIrSwjQD61rGwrwLGaz
	AFwWRmF3/6KL/PNvfbCUQ0y4evW5X3wNx+TFYMKWRRSaXXM5820RFVD3TkuRzGO7s1P0=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183241-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 183241: tolerable FAIL - PUSHED
X-Osstest-Failures:
    linux-linus:test-armhf-armhf-libvirt-qcow2:xen-boot:fail:heisenbug
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:guest-localmigrate/x10:fail:heisenbug
    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-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-armhf-armhf-libvirt: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-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-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-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-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-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-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-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-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw: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-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-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=8f1b4600373f9da2afc124f31788b16f47eb950c
X-Osstest-Versions-That:
    linux=8a749fd1a8720d4619c91c8b6e7528c0a355c0aa
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 03 Oct 2023 03:19:34 +0000

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

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-armhf-armhf-libvirt-qcow2  8 xen-boot          fail pass in 183244-retest
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 18 guest-localmigrate/x10 fail pass in 183244-retest

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail in 183244 like 183236
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail in 183244 never pass
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183236
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183236
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183236
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183236
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183236
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183236
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183236
 test-amd64-amd64-libvirt-xsm 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-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-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-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-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-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-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-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-libvirt-raw 14 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-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-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                8f1b4600373f9da2afc124f31788b16f47eb950c
baseline version:
 linux                8a749fd1a8720d4619c91c8b6e7528c0a355c0aa

Last test of basis   183236  2023-10-02 07:18:14 Z    0 days
Testing same since   183241  2023-10-02 18:10:02 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Hector Martin <marcan@marcan.st>
  Joerg Roedel <jroedel@suse.de>
  Konrad Dybcio <konrad.dybcio@linaro.org>
  Laura Nao <laura.nao@collabora.com>
  Linus Torvalds <torvalds@linux-foundation.org>
  Lu Baolu <baolu.lu@linux.intel.com>
  Nicolin Chen <nicolinc@nvidia.com>
  Ooi, Chin Hao <chin.hao.ooi@intel.com>
  Robin Murphy <robin.murphy@arm.com>
  Will Deacon <will@kernel.org>
  Yong Wu <yong.wu@mediatek.com>
  Zhang Rui <rui.zhang@intel.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                 fail    
 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                               fail    
 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
   8a749fd1a872..8f1b4600373f  8f1b4600373f9da2afc124f31788b16f47eb950c -> tested/linux-linus


From xen-devel-bounces@lists.xenproject.org Tue Oct 03 06:54:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 03 Oct 2023 06:54:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611899.951614 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnZIy-0006WF-1i; Tue, 03 Oct 2023 06:54:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611899.951614; Tue, 03 Oct 2023 06:54: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 1qnZIx-0006UD-Lj; Tue, 03 Oct 2023 06:54:51 +0000
Received: by outflank-mailman (input) for mailman id 611899;
 Tue, 03 Oct 2023 06:54: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=XwHy=FR=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qnZIu-00047B-Qi
 for xen-devel@lists.xenproject.org; Tue, 03 Oct 2023 06:54:48 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.126])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id bcddf705-61b9-11ee-9b0d-b553b5be7939;
 Tue, 03 Oct 2023 08:54:46 +0200 (CEST)
Received: from fmsmga005.fm.intel.com ([10.253.24.32])
 by orsmga106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 02 Oct 2023 23:54:40 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by fmsmga005.fm.intel.com with ESMTP; 02 Oct 2023 23:54: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: bcddf705-61b9-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=1696316086; x=1727852086;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=aQdiRWsnt6AKxUkiRSvWlc5kg1W+wRYx8vYlgG3sGOg=;
  b=jQMHxIr1oVjfOZtw/8jMxocgpY2cAuYuyM/rAeFx3lUNmwBJXTexx4we
   aFWhbRCxnbLXKj9IpWB8Rt/jeY3cEwMcJCEaReVHG0PM6qThJ7dTR7Eip
   8uPf0E0dvvPQasuEMww97/okLMnLnuBitQddurSzwCeD/936bcgwhZhoC
   QMCdRWD7YaBQ1MwlZ28m8S3ksY0KYDKGX7IpjmwDdqrknVP2VGyqQ9ixN
   D2CTAFHgrwTbvVhMBW/3KqaRKlGCM7Vvmh3jeVGATlljOQdpzQlrb+pxh
   r3FEwotvAMX71fTkpFs5Tiz3kQ88GD6LdbRkx+xgAdykiWJ1Vd7PmD/fC
   g==;
X-IronPort-AV: E=McAfee;i="6600,9927,10851"; a="367858016"
X-IronPort-AV: E=Sophos;i="6.03,196,1694761200"; 
   d="scan'208";a="367858016"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10851"; a="1081900925"
X-IronPort-AV: E=Sophos;i="6.03,196,1694761200"; 
   d="scan'208";a="1081900925"
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 v12 10/37] x86/fred: Disable FRED by default in its early stage
Date: Mon,  2 Oct 2023 23:24:31 -0700
Message-Id: <20231003062458.23552-11-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20231003062458.23552-1-xin3.li@intel.com>
References: <20231003062458.23552-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 7131074433f9..736d38abfc5a 100644
--- a/arch/x86/kernel/cpu/common.c
+++ b/arch/x86/kernel/cpu/common.c
@@ -1502,6 +1502,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 Tue Oct 03 06:54:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 03 Oct 2023 06:54:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611895.951579 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnZIu-0005bi-MN; Tue, 03 Oct 2023 06:54:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611895.951579; Tue, 03 Oct 2023 06:54: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 1qnZIu-0005Yj-Af; Tue, 03 Oct 2023 06:54:48 +0000
Received: by outflank-mailman (input) for mailman id 611895;
 Tue, 03 Oct 2023 06:54: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=XwHy=FR=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qnZIs-00040o-N5
 for xen-devel@lists.xenproject.org; Tue, 03 Oct 2023 06:54:46 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.126])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id bc925c60-61b9-11ee-98d2-6d05b1d4d9a1;
 Tue, 03 Oct 2023 08:54:45 +0200 (CEST)
Received: from fmsmga005.fm.intel.com ([10.253.24.32])
 by orsmga106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 02 Oct 2023 23:54:39 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by fmsmga005.fm.intel.com with ESMTP; 02 Oct 2023 23:54: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: bc925c60-61b9-11ee-98d2-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1696316086; x=1727852086;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=CcGvpPsp9yPYBKGgtw+pwzSruaWdmcjQipAacX3tyYo=;
  b=LmxMrPw9OahsPo/FX+hjExA+PJqF3MAxMWSrsSG+Prj5Me5VRNDqzKvg
   e8fRogEe23wUk5j1uSJMpm9W+7PlOCv7fI7GdykS3JUfAzGdcpjW9miYH
   9ajG0YCy97tjDD2VYS5zvdFe+ilQzCYpqjctOkDklTVvkfyAuczaA+MUx
   J6xJUaWOuoeG/3wg5FKp672vTbdlxayeh0lGsiEsFHNJgPNsClph9lN+6
   TSocHRraibDJ8q2K63BQG5oPs6qhxF1DTraRd9Rb6pFNXwEY/nTAWAVXZ
   sHWP58T/ied8FOijxjZd513LGeB1k8t/C+7YbrmKAgaihmxQemdB3oFqi
   g==;
X-IronPort-AV: E=McAfee;i="6600,9927,10851"; a="367858004"
X-IronPort-AV: E=Sophos;i="6.03,196,1694761200"; 
   d="scan'208";a="367858004"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10851"; a="1081900922"
X-IronPort-AV: E=Sophos;i="6.03,196,1694761200"; 
   d="scan'208";a="1081900922"
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 v12 09/37] x86/fred: Disable FRED support if CONFIG_X86_FRED is disabled
Date: Mon,  2 Oct 2023 23:24:30 -0700
Message-Id: <20231003062458.23552-10-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20231003062458.23552-1-xin3.li@intel.com>
References: <20231003062458.23552-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 Tue Oct 03 06:54:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 03 Oct 2023 06:54:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611887.951510 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnZIp-00041S-Hx; Tue, 03 Oct 2023 06:54:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611887.951510; Tue, 03 Oct 2023 06:54: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 1qnZIp-00041L-F4; Tue, 03 Oct 2023 06:54:43 +0000
Received: by outflank-mailman (input) for mailman id 611887;
 Tue, 03 Oct 2023 06:54: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=XwHy=FR=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qnZIn-00040o-T6
 for xen-devel@lists.xenproject.org; Tue, 03 Oct 2023 06:54:42 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.126])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id b742ab65-61b9-11ee-98d2-6d05b1d4d9a1;
 Tue, 03 Oct 2023 08:54:38 +0200 (CEST)
Received: from fmsmga005.fm.intel.com ([10.253.24.32])
 by orsmga106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 02 Oct 2023 23:54:35 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by fmsmga005.fm.intel.com with ESMTP; 02 Oct 2023 23:54: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: b742ab65-61b9-11ee-98d2-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1696316078; x=1727852078;
  h=from:to:cc:subject:date:message-id:mime-version:
   content-transfer-encoding;
  bh=nOMSeUVu9l0D0ehPQn5ZxJkiMveZc24zyXCfbVOqw1g=;
  b=anWg79sdm5cz8LoKbFnLXddyOGmqtJUMGTRXcBP0qizlPpVPdrH6Wa8g
   epi1qC/aXPNsCEe2R3+9Fs3C6q80bgGYLUtVpHK4zCwhl6LGvF0f2a643
   SYg5gmLudXP2MY/NSHnxmIQAdRyPHEasFT4m/gBVsXqNgB2D8tOfLM+5s
   LudvldmGOY35NPWcElt3BwhFbCCf2M0hyToLAr8Q1+ZF3xYAvJzJ/y34I
   0MLxtvGohNGkCcvzuNSr/vHTMdfwLKdbVGUdjsnepbInztohZj/H8Pkgx
   HmKZIWmViaMhVMc+aT2C2DdwIIXiOF92qXvHBxmLtr3ZdSkGQEstdlw+0
   g==;
X-IronPort-AV: E=McAfee;i="6600,9927,10851"; a="367857891"
X-IronPort-AV: E=Sophos;i="6.03,196,1694761200"; 
   d="scan'208";a="367857891"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10851"; a="1081900892"
X-IronPort-AV: E=Sophos;i="6.03,196,1694761200"; 
   d="scan'208";a="1081900892"
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 v12 00/37] x86: enable FRED for x86-64
Date: Mon,  2 Oct 2023 23:24:21 -0700
Message-Id: <20231003062458.23552-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 v11:
* Add a new structure fred_cs to denote the FRED flags above CS
  selector as what is done for SS (H. Peter Anvin).

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                 | 104 ++++++-
 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, 1299 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 Tue Oct 03 06:54:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 03 Oct 2023 06:54:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611891.951545 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnZIr-0004mR-Pk; Tue, 03 Oct 2023 06:54:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611891.951545; Tue, 03 Oct 2023 06:54: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 1qnZIr-0004lo-KW; Tue, 03 Oct 2023 06:54:45 +0000
Received: by outflank-mailman (input) for mailman id 611891;
 Tue, 03 Oct 2023 06:54: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=XwHy=FR=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qnZIq-00040o-DM
 for xen-devel@lists.xenproject.org; Tue, 03 Oct 2023 06:54:44 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.126])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id bb2d8c7e-61b9-11ee-98d2-6d05b1d4d9a1;
 Tue, 03 Oct 2023 08:54:43 +0200 (CEST)
Received: from fmsmga005.fm.intel.com ([10.253.24.32])
 by orsmga106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 02 Oct 2023 23:54:37 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by fmsmga005.fm.intel.com with ESMTP; 02 Oct 2023 23:54: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: bb2d8c7e-61b9-11ee-98d2-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1696316083; x=1727852083;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=peVjyb58aU5czBXdVg55hBuRdCD6fg7woOPGVcAZ2Yw=;
  b=NkX+WIvIe6VCcfNwqDrMew4au/xF95gJ9q7J48JZJ0nMR3Ov5l7DQYbu
   nwxfA56Xxt4EndLD51Gd17IENzYKY57bn8+Jhq5QoKzV2lj0UnjOHbTKw
   3jGq0uO6H455+tI+hSYa9qpXqSx6JuHaZIckJ3jRX2zdf36VGGsu3V6mJ
   faGxymO5AizRe1X9km3dTYHXy6fsaujW8uC+0GI5CNEvPlgfS9ntUcQp/
   B2Y/hWLdhyRR3i6lN4BVF27dUUjeY8XtalcjNPsWJzv3UGnfL5xlvoqYr
   mMYHdbxUrkoU7ox/HUmFc1oayhWPA7VI711aUCncXvm5Im8rW7vIBOjeG
   Q==;
X-IronPort-AV: E=McAfee;i="6600,9927,10851"; a="367857955"
X-IronPort-AV: E=Sophos;i="6.03,196,1694761200"; 
   d="scan'208";a="367857955"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10851"; a="1081900910"
X-IronPort-AV: E=Sophos;i="6.03,196,1694761200"; 
   d="scan'208";a="1081900910"
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 v12 05/37] x86/trapnr: Add event type macros to <asm/trapnr.h>
Date: Mon,  2 Oct 2023 23:24:26 -0700
Message-Id: <20231003062458.23552-6-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20231003062458.23552-1-xin3.li@intel.com>
References: <20231003062458.23552-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 Tue Oct 03 06:54:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 03 Oct 2023 06:54:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611898.951608 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnZIx-0006Kg-HW; Tue, 03 Oct 2023 06:54:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611898.951608; Tue, 03 Oct 2023 06:54: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 1qnZIw-0006Ia-VQ; Tue, 03 Oct 2023 06:54:50 +0000
Received: by outflank-mailman (input) for mailman id 611898;
 Tue, 03 Oct 2023 06: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=XwHy=FR=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qnZIu-00047B-7i
 for xen-devel@lists.xenproject.org; Tue, 03 Oct 2023 06:54:48 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.126])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id bce155d6-61b9-11ee-9b0d-b553b5be7939;
 Tue, 03 Oct 2023 08:54:46 +0200 (CEST)
Received: from fmsmga005.fm.intel.com ([10.253.24.32])
 by orsmga106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 02 Oct 2023 23:54:40 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by fmsmga005.fm.intel.com with ESMTP; 02 Oct 2023 23:54: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: bce155d6-61b9-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=1696316086; x=1727852086;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=i5VPM7WJy8QX3AfDJPn+y86GzsjxiQoeNBcvUeRwUoQ=;
  b=aCWiTG6n8Q1hGGBVkpSEGOPWHYd1a56i3jypHiVmVuWkpQ1RQCGfA8Fz
   Irq8cr1Kj8awf/6vOQLhEjtTefvfejzhU70s++DmnaYmRERJvFTlZUE8W
   7I18SFInUB3DZTC/9X2u6FVTdnDJf+nIFlMDDAxYkUStfEgbsDGil32Eq
   UvWpySc9mUE7rN0FFaFhSf3x3vSTzWTsBikRCEJL6AdRdh+GcRmQKtGRr
   0AguiK5uOToJkdNg4F/BGKoIwX7ZMmkDon3KdR7cYqmZHXkV/XLTFN7c3
   t9OcEEXiQuv69Z48Tw+qcL2pk9XCPXFlz6TIQ61dEj+6dhFZMYXrdoquW
   Q==;
X-IronPort-AV: E=McAfee;i="6600,9927,10851"; a="367858028"
X-IronPort-AV: E=Sophos;i="6.03,196,1694761200"; 
   d="scan'208";a="367858028"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10851"; a="1081900928"
X-IronPort-AV: E=Sophos;i="6.03,196,1694761200"; 
   d="scan'208";a="1081900928"
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 v12 11/37] x86/opcode: Add ERET[US] instructions to the x86 opcode map
Date: Mon,  2 Oct 2023 23:24:32 -0700
Message-Id: <20231003062458.23552-12-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20231003062458.23552-1-xin3.li@intel.com>
References: <20231003062458.23552-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 Tue Oct 03 06:54:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 03 Oct 2023 06:54:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611889.951523 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnZIq-0004DU-9J; Tue, 03 Oct 2023 06:54:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611889.951523; Tue, 03 Oct 2023 06: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 1qnZIq-0004CF-4m; Tue, 03 Oct 2023 06:54:44 +0000
Received: by outflank-mailman (input) for mailman id 611889;
 Tue, 03 Oct 2023 06: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=XwHy=FR=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qnZIp-00040o-3J
 for xen-devel@lists.xenproject.org; Tue, 03 Oct 2023 06:54:43 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.126])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id ba688412-61b9-11ee-98d2-6d05b1d4d9a1;
 Tue, 03 Oct 2023 08:54:42 +0200 (CEST)
Received: from fmsmga005.fm.intel.com ([10.253.24.32])
 by orsmga106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 02 Oct 2023 23:54:37 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by fmsmga005.fm.intel.com with ESMTP; 02 Oct 2023 23:54: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: ba688412-61b9-11ee-98d2-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1696316082; x=1727852082;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=IaxeoNWuhGDXlIm0wMB8nNslGvpF2+LIDATl0KgTQLA=;
  b=NfB/fRiqcfMsba6vsRr/mORbMHrcu3fZXKzmKXOFYt1urrbgkhFLbNdT
   KV4UBX2W+0m8mVcGU0h4OHGIWAIyqE1Oq8VOo/N9J4zN22TI+Wmjyjta1
   hC6ERHsafuuo47CfP527Vk5zWcdep3PE+WDCShfiDhSFtUqUMKfRiWERl
   zJxoqq7wqmBt0Pmn6lJRwTkBHzPxkYSzrg/rq/Uo4YML3lyHxfKCg2hNO
   KZ9/PyRF8j3wxHCD/x84W3uhYZ8DLhwpE2FWKPR3dxqywcmEPx7893ynv
   n63/2KRHtN/nWoGfnWMKImSHRjOlMTK5PvycI9KV/HoyD6AsfaEKd/L+8
   g==;
X-IronPort-AV: E=McAfee;i="6600,9927,10851"; a="367857939"
X-IronPort-AV: E=Sophos;i="6.03,196,1694761200"; 
   d="scan'208";a="367857939"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10851"; a="1081900906"
X-IronPort-AV: E=Sophos;i="6.03,196,1694761200"; 
   d="scan'208";a="1081900906"
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 v12 04/37] x86/entry: Remove idtentry_sysvec from entry_{32,64}.S
Date: Mon,  2 Oct 2023 23:24:25 -0700
Message-Id: <20231003062458.23552-5-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20231003062458.23552-1-xin3.li@intel.com>
References: <20231003062458.23552-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 9b4b512f2a75..aa4214703091 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 Tue Oct 03 06:54:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 03 Oct 2023 06:54:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611890.951539 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnZIr-0004iP-Fu; Tue, 03 Oct 2023 06:54:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611890.951539; Tue, 03 Oct 2023 06:54: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 1qnZIr-0004iI-CV; Tue, 03 Oct 2023 06:54:45 +0000
Received: by outflank-mailman (input) for mailman id 611890;
 Tue, 03 Oct 2023 06:54: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=XwHy=FR=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qnZIq-00047B-5g
 for xen-devel@lists.xenproject.org; Tue, 03 Oct 2023 06:54:44 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.126])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id b88669cc-61b9-11ee-9b0d-b553b5be7939;
 Tue, 03 Oct 2023 08:54:40 +0200 (CEST)
Received: from fmsmga005.fm.intel.com ([10.253.24.32])
 by orsmga106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 02 Oct 2023 23:54:35 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by fmsmga005.fm.intel.com with ESMTP; 02 Oct 2023 23:54: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: b88669cc-61b9-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=1696316080; x=1727852080;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=5bEJT87B98JS6iQ6LlrNVmLBQuK2BkIiNY3V5ZdVNuo=;
  b=i4HruJd/mod/Rss+wnXl2YxMXAmIQorAh78hwWplcH6TiOC3qUbTOBF4
   HScRjQlQj4qr+9EH65+i7wYCgFXrZej0jsmILV0RhPf4cw/L2CzYvNVR2
   sUSwIb5nDfDKKOkRJc4usiB/YXmM+1sLbWgcV7CFBGO9824sa3w9qziho
   bLMpFFESCNg1uYRyPwYuYr0PLxHSNXACROys9iNkDWSoG2gSicKqAxGbT
   uel5n4rtf1l3Zh9lhWTF5dJvzhaoq3WIU+3dm9cLaU/utvwfOE/eP4Npr
   bVl7Zp0PHXSliIdTOfV/gAmB+lpvjDzqUleH/i7x9KblYEInhzbcs0Znn
   w==;
X-IronPort-AV: E=McAfee;i="6600,9927,10851"; a="367857906"
X-IronPort-AV: E=Sophos;i="6.03,196,1694761200"; 
   d="scan'208";a="367857906"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10851"; a="1081900894"
X-IronPort-AV: E=Sophos;i="6.03,196,1694761200"; 
   d="scan'208";a="1081900894"
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 v12 01/37] x86/cpufeatures: Add the cpu feature bit for WRMSRNS
Date: Mon,  2 Oct 2023 23:24:22 -0700
Message-Id: <20231003062458.23552-2-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20231003062458.23552-1-xin3.li@intel.com>
References: <20231003062458.23552-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 Tue Oct 03 06:54:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 03 Oct 2023 06:54:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611894.951573 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnZIu-0005Ua-2y; Tue, 03 Oct 2023 06:54:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611894.951573; Tue, 03 Oct 2023 06:54: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 1qnZIt-0005SH-SW; Tue, 03 Oct 2023 06:54:47 +0000
Received: by outflank-mailman (input) for mailman id 611894;
 Tue, 03 Oct 2023 06:54: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=XwHy=FR=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qnZIs-00047B-11
 for xen-devel@lists.xenproject.org; Tue, 03 Oct 2023 06:54:46 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.126])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id bb6a3d28-61b9-11ee-9b0d-b553b5be7939;
 Tue, 03 Oct 2023 08:54:43 +0200 (CEST)
Received: from fmsmga005.fm.intel.com ([10.253.24.32])
 by orsmga106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 02 Oct 2023 23:54:38 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by fmsmga005.fm.intel.com with ESMTP; 02 Oct 2023 23:54: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: bb6a3d28-61b9-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=1696316084; x=1727852084;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=bNeoh4I4zABONAQfik1sKjrzvYgDVMEQH0uLYFn+NlU=;
  b=mVGLmP0ozzRUlwtus3tkReD8TWL3Q9JKph5Ep80nnQStbbgyHOyshdbB
   0C9m3xy0bUKOjiVnvXkjSnnf6wlcof/9WcI2sFoEx074PVd5SqhNdiqiJ
   xGSo+yvhVehtxhES2wLLu6Cti56FZDm05O3ZH1Vr6wsLe5W0VvkbM2tQJ
   lxtq585cE/peYByJPUWeZklpup2XZqzBMq+g63LKdr9nrEMaSrhmI1tdy
   3e+7LKfP1vu4V2VF4mypWRqfeDicjtrKHa/7i3sERLdLA8kq1laDNJuQ1
   hitn7hl6fOkbG/3f6YKP8m968RT2JtJBk0t171/3k7T6kPhIcL1ZLg2yI
   Q==;
X-IronPort-AV: E=McAfee;i="6600,9927,10851"; a="367857967"
X-IronPort-AV: E=Sophos;i="6.03,196,1694761200"; 
   d="scan'208";a="367857967"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10851"; a="1081900913"
X-IronPort-AV: E=Sophos;i="6.03,196,1694761200"; 
   d="scan'208";a="1081900913"
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 v12 06/37] Documentation/x86/64: Add a documentation for FRED
Date: Mon,  2 Oct 2023 23:24:27 -0700
Message-Id: <20231003062458.23552-7-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20231003062458.23552-1-xin3.li@intel.com>
References: <20231003062458.23552-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 Tue Oct 03 06:54:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 03 Oct 2023 06:54:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611892.951560 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnZIt-0005Dz-2v; Tue, 03 Oct 2023 06:54:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611892.951560; Tue, 03 Oct 2023 06:54: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 1qnZIs-0005DN-UK; Tue, 03 Oct 2023 06:54:46 +0000
Received: by outflank-mailman (input) for mailman id 611892;
 Tue, 03 Oct 2023 06:54: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=XwHy=FR=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qnZIq-00047B-QJ
 for xen-devel@lists.xenproject.org; Tue, 03 Oct 2023 06:54:44 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.126])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id b97ceffa-61b9-11ee-9b0d-b553b5be7939;
 Tue, 03 Oct 2023 08:54:41 +0200 (CEST)
Received: from fmsmga005.fm.intel.com ([10.253.24.32])
 by orsmga106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 02 Oct 2023 23:54:36 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by fmsmga005.fm.intel.com with ESMTP; 02 Oct 2023 23:54: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: b97ceffa-61b9-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=1696316081; x=1727852081;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=9qsPaAmdkqHl0KD85EKfAfnheAb+UY4gBzEbjksg7Tw=;
  b=W9u8uI6aJelwA58zVAlYn3k10F4CqDENxhnUxIge7G0X9maA4yjSNI4d
   cHWwxnkjjozjRFg4V6JzW6VewpKcXb8+Pwl508n16L35+z205rin6DQsS
   ErTIY2TCBSidzXEnSRCDoSl9S0iboWiYg87qbgoqTwVRZrhI/Bb+iJOHJ
   kuUcwoXRIfoDFWfESlYBaKSRb1Cw141ln/whMguomto6zY+mSe/haIlNx
   aOHj/6+bSzeG0GBq0fY8ckTGMWXN28piD82LvltgHTlOGqyFOsr44RliZ
   COLVFtjZ2o6Ustnf18f+Hyvn20BQ6wVnN1XzITvKwQFk9PCPCfIFsBHZv
   Q==;
X-IronPort-AV: E=McAfee;i="6600,9927,10851"; a="367857927"
X-IronPort-AV: E=Sophos;i="6.03,196,1694761200"; 
   d="scan'208";a="367857927"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10851"; a="1081900902"
X-IronPort-AV: E=Sophos;i="6.03,196,1694761200"; 
   d="scan'208";a="1081900902"
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 v12 03/37] x86/msr: Add the WRMSRNS instruction support
Date: Mon,  2 Oct 2023 23:24:24 -0700
Message-Id: <20231003062458.23552-4-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20231003062458.23552-1-xin3.li@intel.com>
References: <20231003062458.23552-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 Tue Oct 03 06:54:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 03 Oct 2023 06:54:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611896.951585 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnZIv-0005hw-2p; Tue, 03 Oct 2023 06:54:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611896.951585; Tue, 03 Oct 2023 06: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 1qnZIu-0005fe-P0; Tue, 03 Oct 2023 06:54:48 +0000
Received: by outflank-mailman (input) for mailman id 611896;
 Tue, 03 Oct 2023 06:54: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=XwHy=FR=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qnZIs-00047B-QR
 for xen-devel@lists.xenproject.org; Tue, 03 Oct 2023 06:54:46 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.126])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id bb899e94-61b9-11ee-9b0d-b553b5be7939;
 Tue, 03 Oct 2023 08:54:44 +0200 (CEST)
Received: from fmsmga005.fm.intel.com ([10.253.24.32])
 by orsmga106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 02 Oct 2023 23:54:38 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by fmsmga005.fm.intel.com with ESMTP; 02 Oct 2023 23:54: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: bb899e94-61b9-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=1696316084; x=1727852084;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=Z2I9XuVKzLs7Gkjt7VvwoncwktLr23Bll2CpTX5dzXE=;
  b=WRGo1LmfTzchv/zGaf1PhdyXLf1nFrZB7pJ1rAQEn4Ec0X7WcZ7tuhE/
   HG3N8WF4pEeG6Hic55H4oit3nlB6eQCzdostElyySJAQEtdo0OloBXPTR
   lPTvc6rC06RoYveEHl7uURKONN5Irh/tTm+sHWO2IuDPKi/8kdV+uNMhX
   p5bPapXu6WHXDpxlY9UMDCWuQ1j6vqb3gPJyjvfE7KL+6cSDLE96ibAsx
   vNW5i18/2RXLJOcczYDXP9zOt7gwMPYLUQ1Rv5TJJWWZzoG33+AeUG5BO
   sfzStAMx8nuNV/omWKY0kppffQToPwQkXb/ypPKNplEAqsoCs1x1omPYH
   w==;
X-IronPort-AV: E=McAfee;i="6600,9927,10851"; a="367857979"
X-IronPort-AV: E=Sophos;i="6.03,196,1694761200"; 
   d="scan'208";a="367857979"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10851"; a="1081900916"
X-IronPort-AV: E=Sophos;i="6.03,196,1694761200"; 
   d="scan'208";a="1081900916"
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 v12 07/37] x86/fred: Add Kconfig option for FRED (CONFIG_X86_FRED)
Date: Mon,  2 Oct 2023 23:24:28 -0700
Message-Id: <20231003062458.23552-8-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20231003062458.23552-1-xin3.li@intel.com>
References: <20231003062458.23552-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 433f5e1906d1..5ef2f6fe0681 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 Tue Oct 03 06:54:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 03 Oct 2023 06:54:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611893.951566 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnZIt-0005I1-Fx; Tue, 03 Oct 2023 06:54:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611893.951566; Tue, 03 Oct 2023 06:54: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 1qnZIt-0005Fz-7J; Tue, 03 Oct 2023 06:54:47 +0000
Received: by outflank-mailman (input) for mailman id 611893;
 Tue, 03 Oct 2023 06:54: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=XwHy=FR=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qnZIr-00040o-Hy
 for xen-devel@lists.xenproject.org; Tue, 03 Oct 2023 06:54:45 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.126])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id bbe59e88-61b9-11ee-98d2-6d05b1d4d9a1;
 Tue, 03 Oct 2023 08:54:44 +0200 (CEST)
Received: from fmsmga005.fm.intel.com ([10.253.24.32])
 by orsmga106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 02 Oct 2023 23:54:39 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by fmsmga005.fm.intel.com with ESMTP; 02 Oct 2023 23:54: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: bbe59e88-61b9-11ee-98d2-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1696316084; x=1727852084;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=ZlGESG1ZjbxHp/2vGEpu7uzY2F9a0taEPQgxug8c1Qc=;
  b=StNvbsNHd69jd0whAtLu4WWPEYVyXfnD7YGScEn7XnI/m/TM9cNERwMs
   L4CTNOoL1W/p1NBGHxFjSnFf054XMyeX99i79UTFbr08YQOcOU7qkUG00
   +/gUTbFzIGa46BPixVwl+cEWKDk8zAi31qEtRxUJtKyFfu6RYA1Qs8VVh
   TeLq8k0o15sFAwf4M+8z0ymCLl/Oq/hzq2x1cin/+E77WW4Hu9Y3a9iL7
   IuH90S774yBv6oxZb/+Qy1tNb0VoJVW/UL8zzPjJKv1vGVC3+8olah8Tu
   1ta+XjaENxbYTgMsNOFu0hoO+fXgRU/b4QXR8d8pqBIjlK2Bh19+FH+x8
   g==;
X-IronPort-AV: E=McAfee;i="6600,9927,10851"; a="367857992"
X-IronPort-AV: E=Sophos;i="6.03,196,1694761200"; 
   d="scan'208";a="367857992"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10851"; a="1081900919"
X-IronPort-AV: E=Sophos;i="6.03,196,1694761200"; 
   d="scan'208";a="1081900919"
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 v12 08/37] x86/cpufeatures: Add the cpu feature bit for FRED
Date: Mon,  2 Oct 2023 23:24:29 -0700
Message-Id: <20231003062458.23552-9-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20231003062458.23552-1-xin3.li@intel.com>
References: <20231003062458.23552-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 Tue Oct 03 06:54:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 03 Oct 2023 06:54:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611897.951600 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnZIw-00068m-Hk; Tue, 03 Oct 2023 06:54:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611897.951600; Tue, 03 Oct 2023 06: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 1qnZIw-00067c-8Q; Tue, 03 Oct 2023 06:54:50 +0000
Received: by outflank-mailman (input) for mailman id 611897;
 Tue, 03 Oct 2023 06:54: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=XwHy=FR=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qnZIt-00040o-UD
 for xen-devel@lists.xenproject.org; Tue, 03 Oct 2023 06:54:47 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.126])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id bd44dbdd-61b9-11ee-98d2-6d05b1d4d9a1;
 Tue, 03 Oct 2023 08:54:47 +0200 (CEST)
Received: from fmsmga005.fm.intel.com ([10.253.24.32])
 by orsmga106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 02 Oct 2023 23:54:41 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by fmsmga005.fm.intel.com with ESMTP; 02 Oct 2023 23:54: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: bd44dbdd-61b9-11ee-98d2-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1696316087; x=1727852087;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=nnaiSfOR32UqURagnGQyKATdoHKyxN7QZzCa/h9+/jY=;
  b=K7J43ENcKXjVGxOPe5R6Gz5slG4qObfYzZjs3UyWlC/0eTbSLaFkYKvi
   6n9God6f4bv4smcHC5azeQ7MEyjbvleJM3tScboJlByXsFst/JR/BGaxN
   vDomCJNcLAGwdavZJTjXcMCY3D7I8Wjq2n2Uvji9NgsCM0Hm030ygVCHK
   nQaQOcPW/QDsfPVWL8OUqaf2TrVffnlmKgjczbKP5eIRMJNaugaP0peNR
   VN2oRu8KYGhjMpiWuxVBIEOUzZjhD352v4OnHliti4vQttMWFsz5C1pm0
   jDfATlKXslbP0KB5m34jXq7IwYCtknU/w+x3INVqLoQ+reYXwRb5dSbPW
   w==;
X-IronPort-AV: E=McAfee;i="6600,9927,10851"; a="367858040"
X-IronPort-AV: E=Sophos;i="6.03,196,1694761200"; 
   d="scan'208";a="367858040"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10851"; a="1081900931"
X-IronPort-AV: E=Sophos;i="6.03,196,1694761200"; 
   d="scan'208";a="1081900931"
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 v12 12/37] x86/objtool: Teach objtool about ERET[US]
Date: Mon,  2 Oct 2023 23:24:33 -0700
Message-Id: <20231003062458.23552-13-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20231003062458.23552-1-xin3.li@intel.com>
References: <20231003062458.23552-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 Tue Oct 03 06:54:53 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 03 Oct 2023 06:54:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611888.951517 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnZIq-00049z-2K; Tue, 03 Oct 2023 06:54:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611888.951517; Tue, 03 Oct 2023 06: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 1qnZIp-00048u-U7; Tue, 03 Oct 2023 06:54:43 +0000
Received: by outflank-mailman (input) for mailman id 611888;
 Tue, 03 Oct 2023 06:54: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=XwHy=FR=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qnZIo-00040o-GJ
 for xen-devel@lists.xenproject.org; Tue, 03 Oct 2023 06:54:42 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.126])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id b9b38625-61b9-11ee-98d2-6d05b1d4d9a1;
 Tue, 03 Oct 2023 08:54:41 +0200 (CEST)
Received: from fmsmga005.fm.intel.com ([10.253.24.32])
 by orsmga106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 02 Oct 2023 23:54:35 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by fmsmga005.fm.intel.com with ESMTP; 02 Oct 2023 23:54: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: b9b38625-61b9-11ee-98d2-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1696316081; x=1727852081;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=MxQyQabDuj01hP6xHQ5mL2MlMceZ5LcTb8ReoP3KjJA=;
  b=UmSyXJ3hKOD96f18ZUx0mFUlwp/+hKe84sc17RjSmP3U5McpXGo8BhTp
   ze3ekrXg0QEy5FqG792g1Z+hx2ETW1Vip39jVtcI50XtOE+vMKe5yKaGF
   8Tz0Ber0c9ZslqaF9wKYZtduGmdCrpn9xB/x8sa+NbQm5E0GnS4mBBewn
   wMCwrtkdrQJLVTFy+QPcqJgUGEk6yLVZM6DgPu4i4NQNb52bVV64ccAs8
   Ps2JazV9CHO5Sl60ssfYCUp6d/tdEoolEsifMq8CPl8D7pkYWIsyFLNR7
   aW/jhQvEOKrzK6wkOs3s+/mnLd90YVHxzdfnIYfMF0bafCVjsDyEWIiaO
   Q==;
X-IronPort-AV: E=McAfee;i="6600,9927,10851"; a="367857914"
X-IronPort-AV: E=Sophos;i="6.03,196,1694761200"; 
   d="scan'208";a="367857914"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10851"; a="1081900898"
X-IronPort-AV: E=Sophos;i="6.03,196,1694761200"; 
   d="scan'208";a="1081900898"
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 v12 02/37] x86/opcode: Add the WRMSRNS instruction to the x86 opcode map
Date: Mon,  2 Oct 2023 23:24:23 -0700
Message-Id: <20231003062458.23552-3-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20231003062458.23552-1-xin3.li@intel.com>
References: <20231003062458.23552-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 Tue Oct 03 06:54:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 03 Oct 2023 06:54:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611900.951624 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnZIz-0006nz-KZ; Tue, 03 Oct 2023 06:54:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611900.951624; Tue, 03 Oct 2023 06:54: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 1qnZIy-0006j6-Mk; Tue, 03 Oct 2023 06:54:52 +0000
Received: by outflank-mailman (input) for mailman id 611900;
 Tue, 03 Oct 2023 06:54: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=XwHy=FR=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qnZIv-00040o-4O
 for xen-devel@lists.xenproject.org; Tue, 03 Oct 2023 06:54:49 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.126])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id be004050-61b9-11ee-98d2-6d05b1d4d9a1;
 Tue, 03 Oct 2023 08:54:48 +0200 (CEST)
Received: from fmsmga005.fm.intel.com ([10.253.24.32])
 by orsmga106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 02 Oct 2023 23:54:41 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by fmsmga005.fm.intel.com with ESMTP; 02 Oct 2023 23:54: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: be004050-61b9-11ee-98d2-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1696316088; x=1727852088;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=nFX1zfVQEUHSVWboxtoxLzmp8lIUuta3YE4l1C8KOLQ=;
  b=Cp7w/UTTdT9K7R5HyNpvMgTjFZ9YGI3SPFY+QjefobfiQG7T7I77KzHt
   AthalVeyVsY817sjaxGfPH6gTRlp68sh29HNslj9WAtHKfh33ta3KZqrE
   nkmTCszvTd3+ggCDAkxDZT6AD3LCP2bXHSeY5GRAguLGJKXGES+8bIDvE
   hxxi1nkgcl5oNY752cCUbu7HNG4GvXSPXxC86SLC+PAxtW+fFq1yUbqFr
   k+XUNQjJKBJYndAO45Ag/e3DX6q+MvudodfYcdIdLIaTsri66S2xLPV5o
   CwDg9C9helq7u3rjh/bZpGCHIMdg+rLi5Cm8/YrUUyHsNVCZwfdr5MFMi
   Q==;
X-IronPort-AV: E=McAfee;i="6600,9927,10851"; a="367858052"
X-IronPort-AV: E=Sophos;i="6.03,196,1694761200"; 
   d="scan'208";a="367858052"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10851"; a="1081900934"
X-IronPort-AV: E=Sophos;i="6.03,196,1694761200"; 
   d="scan'208";a="1081900934"
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 v12 13/37] x86/cpu: Add X86_CR4_FRED macro
Date: Mon,  2 Oct 2023 23:24:34 -0700
Message-Id: <20231003062458.23552-14-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20231003062458.23552-1-xin3.li@intel.com>
References: <20231003062458.23552-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 736d38abfc5a..9b1cb6c938c4 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 Tue Oct 03 06:54:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 03 Oct 2023 06:54:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611902.951639 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnZJ1-0007IL-S5; Tue, 03 Oct 2023 06:54:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611902.951639; Tue, 03 Oct 2023 06: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 1qnZJ0-0007CC-Qu; Tue, 03 Oct 2023 06:54:54 +0000
Received: by outflank-mailman (input) for mailman id 611902;
 Tue, 03 Oct 2023 06:54: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=XwHy=FR=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qnZIw-00047B-FN
 for xen-devel@lists.xenproject.org; Tue, 03 Oct 2023 06:54:50 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.126])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id be2dc864-61b9-11ee-9b0d-b553b5be7939;
 Tue, 03 Oct 2023 08:54:48 +0200 (CEST)
Received: from fmsmga005.fm.intel.com ([10.253.24.32])
 by orsmga106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 02 Oct 2023 23:54:42 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by fmsmga005.fm.intel.com with ESMTP; 02 Oct 2023 23:54: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: be2dc864-61b9-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=1696316088; x=1727852088;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=nTdktbAXAsluEm2oV29DBlIQh6+yrXokZRkKJ/w8Zmc=;
  b=H7UNxGIafTYHz3jgmbEQ8PW8jMnBA+hli2jdSbO1PFiwsQnAOro4FI4j
   oWeCyfKgO6DxdAlx1Q2tM46MExQt04QP7cju0UGn8YKOFCYuemFoJWvKP
   v0A8q+b8K4BYnCUEmX9BGoLVZcabOTGDwwBH5HYtWS//dHPGk9TWVxZsY
   t2lGv1sFnWBIL4Ze8YmRg1QNGEZR1eO+coQuCblYMp2ne+iowkrF3lR9N
   Cenuzd9GrgkBn47XhoCZNw9UJo0EDsll3/6hC52ONZX1TXNf5oO/Brnq3
   0B52mADbWbBA+P4WAAHq+zz6iIJDkrqU4wBW9B9qo74NnkDqatNQAH5zG
   A==;
X-IronPort-AV: E=McAfee;i="6600,9927,10851"; a="367858064"
X-IronPort-AV: E=Sophos;i="6.03,196,1694761200"; 
   d="scan'208";a="367858064"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10851"; a="1081900937"
X-IronPort-AV: E=Sophos;i="6.03,196,1694761200"; 
   d="scan'208";a="1081900937"
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 v12 14/37] x86/cpu: Add MSR numbers for FRED configuration
Date: Mon,  2 Oct 2023 23:24:35 -0700
Message-Id: <20231003062458.23552-15-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20231003062458.23552-1-xin3.li@intel.com>
References: <20231003062458.23552-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 1d111350197f..972d15404420 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 Tue Oct 03 06:54:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 03 Oct 2023 06:54:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611901.951644 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnZJ2-0007Y6-C2; Tue, 03 Oct 2023 06:54:56 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611901.951644; Tue, 03 Oct 2023 06:54: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 1qnZJ2-0007UP-11; Tue, 03 Oct 2023 06:54:56 +0000
Received: by outflank-mailman (input) for mailman id 611901;
 Tue, 03 Oct 2023 06:54: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=XwHy=FR=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qnZIw-00040o-FI
 for xen-devel@lists.xenproject.org; Tue, 03 Oct 2023 06:54:50 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.126])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id bec28676-61b9-11ee-98d2-6d05b1d4d9a1;
 Tue, 03 Oct 2023 08:54:49 +0200 (CEST)
Received: from fmsmga005.fm.intel.com ([10.253.24.32])
 by orsmga106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 02 Oct 2023 23:54:43 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by fmsmga005.fm.intel.com with ESMTP; 02 Oct 2023 23:54: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: bec28676-61b9-11ee-98d2-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1696316089; x=1727852089;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=V+OPmxsacyHhQwU2DRsayMn8eLFfcoR2lqYdblOZ50U=;
  b=XIzcJhQ+T0tLJPMlmnGh2I06x8zitwPbQv/EVe6ztW8TTXzTt7GQF2Vk
   ajUiWKw6w6WGH+XYwKYDENBrw2Jan89xR2vGvo8wt26SzHJm22ztZFhlJ
   b9YjDYeyeyR7bp3OTvxLJCjKMacReMeKgOnZMEQ9DYFg/im1ODWS1d7oG
   V9vLLCP3uVZ8XJPRDoEzO7hI5B/fPQVpvk4B9zkXZ5YfvE9AIMwNdHQwf
   p5DD4leqxJ5TzYMJiDMAf1nVnF++DhMTk16iKDPNoRIcLAUfUhRRtMYhg
   JxRFgERfmv9z+PBThV6qrQZMQ/AA81i0uk1tPrgWAJubcoVrbVapR1rbW
   Q==;
X-IronPort-AV: E=McAfee;i="6600,9927,10851"; a="367858088"
X-IronPort-AV: E=Sophos;i="6.03,196,1694761200"; 
   d="scan'208";a="367858088"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10851"; a="1081900943"
X-IronPort-AV: E=Sophos;i="6.03,196,1694761200"; 
   d="scan'208";a="1081900943"
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 v12 16/37] x86/ptrace: Add FRED additional information to the pt_regs structure
Date: Mon,  2 Oct 2023 23:24:37 -0700
Message-Id: <20231003062458.23552-17-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20231003062458.23552-1-xin3.li@intel.com>
References: <20231003062458.23552-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 v11:
* Add a new structure fred_cs to denote the FRED flags above CS
  selector as what is done for SS (H. Peter Anvin).

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 | 70 ++++++++++++++++++++++++++++++++---
 1 file changed, 65 insertions(+), 5 deletions(-)

diff --git a/arch/x86/include/asm/ptrace.h b/arch/x86/include/asm/ptrace.h
index f08ea073edd6..5a83fbd9bc0b 100644
--- a/arch/x86/include/asm/ptrace.h
+++ b/arch/x86/include/asm/ptrace.h
@@ -56,6 +56,50 @@ struct pt_regs {
 
 #else /* __i386__ */
 
+struct fred_cs {
+		/* CS selector */
+	u64	cs	: 16,
+		/* Stack level at event time */
+		sl	:  2,
+		/* IBT in WAIT_FOR_ENDBRANCH state */
+		wfe	:  1,
+			: 45;
+};
+
+struct fred_ss {
+		/* SS selector */
+	u64	ss	: 16,
+		/* STI state */
+		sti	:  1,
+		/* Set if syscall, sysenter or INT n */
+		swevent	:  1,
+		/* Event is NMI type */
+		nmi	:  1,
+			: 13,
+		/* Event vector */
+		vector	:  8,
+			:  8,
+		/* Event type */
+		type	:  4,
+			:  4,
+		/* Event was incident to enclave execution */
+		enclave	:  1,
+		/* CPU was in long mode */
+		lm	:  1,
+		/*
+		 * Nested exception during FRED delivery, not set
+		 * for #DF.
+		 */
+		nested	:  1,
+			:  1,
+		/*
+		 * The length of the instruction causing the event.
+		 * Only set for INTO, INT1, INT3, INT n, SYSCALL
+		 * and SYSENTER.  0 otherwise.
+		 */
+		insnlen	:  4;
+};
+
 struct pt_regs {
 	/*
 	 * C ABI says these regs are callee-preserved. They aren't saved on
@@ -85,6 +129,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 +142,30 @@ struct pt_regs {
 	unsigned long ip;
 
 	union {
-		u64	csx;	// The full 64-bit data slot containing CS
-		u16	cs;	// CS selector
+		/* CS selector */
+		u16		cs;
+		/* The extended 64-bit data slot containing CS */
+		u64		csx;
+		/* The FRED CS extension */
+		struct fred_cs	fred_cs;
 	};
 
 	unsigned long flags;
 	unsigned long sp;
 
 	union {
-		u64	ssx;	// The full 64-bit data slot containing SS
-		u16	ss;	// SS selector
+		/* SS selector */
+		u16		ss;
+		/* The extended 64-bit data slot containing SS */
+		u64		ssx;
+		/* The FRED SS extension */
+		struct fred_ss	fred_ss;
 	};
 
 	/*
-	 * 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 Tue Oct 03 06:54:58 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 03 Oct 2023 06:54:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611903.951655 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnZJ4-0007t0-4Q; Tue, 03 Oct 2023 06:54:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611903.951655; Tue, 03 Oct 2023 06:54: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 1qnZJ3-0007qM-8g; Tue, 03 Oct 2023 06:54:57 +0000
Received: by outflank-mailman (input) for mailman id 611903;
 Tue, 03 Oct 2023 06:54: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=XwHy=FR=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qnZIw-00047B-R7
 for xen-devel@lists.xenproject.org; Tue, 03 Oct 2023 06:54:50 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.126])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id be3d3865-61b9-11ee-9b0d-b553b5be7939;
 Tue, 03 Oct 2023 08:54:48 +0200 (CEST)
Received: from fmsmga005.fm.intel.com ([10.253.24.32])
 by orsmga106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 02 Oct 2023 23:54:42 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by fmsmga005.fm.intel.com with ESMTP; 02 Oct 2023 23:54: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: be3d3865-61b9-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=1696316088; x=1727852088;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=yFOHuHE47yU8Pv3f7vyK1KueQKaw2/ZJmrjuiwmDzLE=;
  b=F0G3UGdKu9RpMUYK0QbP68JFzJIBnlWtImWqVoR7o7ZxcCVnjnXnAYbe
   odT6zqY43idf1bMGh3hAfvkc8zBPY+Orpy10UOvH9NK7EYhw0TNM4GRg0
   DPZtoPuIfG1kRex7+6yW9Hc8t252cKZ2FPL9CGztNuo0as+yaHJchksIm
   5xqPTtsQ29S2GzW26L7rCbCSpQ//uM1F0fBuVe3X8fcRePeuYeYu7quh5
   aPhOakH+4PKDt0UJJ8jGMcYYWBOSkMfK30g+IsgQ2xHwfg7ZVuOtFh8Rp
   694mQZddbFETjmGxjGIKxP8L2Qk3/VKsf9sCpwcvVE5l7ak1Y317qMO1f
   A==;
X-IronPort-AV: E=McAfee;i="6600,9927,10851"; a="367858076"
X-IronPort-AV: E=Sophos;i="6.03,196,1694761200"; 
   d="scan'208";a="367858076"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10851"; a="1081900940"
X-IronPort-AV: E=Sophos;i="6.03,196,1694761200"; 
   d="scan'208";a="1081900940"
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 v12 15/37] x86/ptrace: Cleanup the definition of the pt_regs structure
Date: Mon,  2 Oct 2023 23:24:36 -0700
Message-Id: <20231003062458.23552-16-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20231003062458.23552-1-xin3.li@intel.com>
References: <20231003062458.23552-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 Tue Oct 03 06:54:59 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 03 Oct 2023 06:54:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611904.951661 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnZJ4-000858-Qo; Tue, 03 Oct 2023 06:54:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611904.951661; Tue, 03 Oct 2023 06: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 1qnZJ4-000814-9z; Tue, 03 Oct 2023 06:54:58 +0000
Received: by outflank-mailman (input) for mailman id 611904;
 Tue, 03 Oct 2023 06:54: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=XwHy=FR=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qnZIx-00040o-L2
 for xen-devel@lists.xenproject.org; Tue, 03 Oct 2023 06:54:51 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.126])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id bf8079c7-61b9-11ee-98d2-6d05b1d4d9a1;
 Tue, 03 Oct 2023 08:54:50 +0200 (CEST)
Received: from fmsmga005.fm.intel.com ([10.253.24.32])
 by orsmga106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 02 Oct 2023 23:54:43 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by fmsmga005.fm.intel.com with ESMTP; 02 Oct 2023 23:54: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: bf8079c7-61b9-11ee-98d2-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1696316090; x=1727852090;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=SbR2wCTkousO/IPIjdDUqT7zLHmXpw3IGG9LN/Z2MXU=;
  b=mtnWsN+WvqOK9u7cpe0J63AqtxYQBMljfrGx2V/IoIGOLK97ACSRdPoG
   naISuhHgbpMo83c/VHrdm6JMAZdAqLVjtjD51qRzFWaaZy0oOpC8E+koE
   /6z8IDcul4Q0VImIxs2D0/wjjog9KOviPdFaPg4m3jgfpQvXOe+y8xyEw
   23HZ3FPimumFgusicsebWLmVes/ljo41KLZYWJUtQwgXoIKuOUHvgojjU
   ywEKnJSCRTd7ejydpg/N2aP9sD8rO6x721pAhF7suOErJ9THyOmuNNU9F
   jXvpg2DSQP2IPgm4nwbURwhz3FwXPXzkC7IIziLv7BUHjTeLfKgmlhtG2
   Q==;
X-IronPort-AV: E=McAfee;i="6600,9927,10851"; a="367858100"
X-IronPort-AV: E=Sophos;i="6.03,196,1694761200"; 
   d="scan'208";a="367858100"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10851"; a="1081900946"
X-IronPort-AV: E=Sophos;i="6.03,196,1694761200"; 
   d="scan'208";a="1081900946"
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 v12 17/37] x86/fred: Add a new header file for FRED definitions
Date: Mon,  2 Oct 2023 23:24:38 -0700
Message-Id: <20231003062458.23552-18-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20231003062458.23552-1-xin3.li@intel.com>
References: <20231003062458.23552-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 Tue Oct 03 06:55:02 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 03 Oct 2023 06:55:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611905.951677 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnZJ8-0000G6-5D; Tue, 03 Oct 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 611905.951677; Tue, 03 Oct 2023 06:55: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 1qnZJ6-00006T-Ti; Tue, 03 Oct 2023 06:55:00 +0000
Received: by outflank-mailman (input) for mailman id 611905;
 Tue, 03 Oct 2023 06: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=XwHy=FR=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qnZIy-00047B-ML
 for xen-devel@lists.xenproject.org; Tue, 03 Oct 2023 06:54:52 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.126])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id bf82a506-61b9-11ee-9b0d-b553b5be7939;
 Tue, 03 Oct 2023 08:54:50 +0200 (CEST)
Received: from fmsmga005.fm.intel.com ([10.253.24.32])
 by orsmga106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 02 Oct 2023 23:54:44 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by fmsmga005.fm.intel.com with ESMTP; 02 Oct 2023 23:54: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: bf82a506-61b9-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=1696316090; x=1727852090;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=f4gesqgoemAM7gLIVW0tfHuShJv23oH28+TguMOULZ8=;
  b=FrnAHmOZAaujsBHBYRMAe2x27yPc7zhGZjaTHP+0eeb/I97Q4DF+rdA6
   T7aeLNAbRlLa2AwMNrAwdwIX9yiPiPurCrGNSX/1yzLGAY8eSOFSUC19R
   AWIYKcNalzbGsRhnsgLD1ugEYyzlXHFCc5WHrH9FxOyiXZ7oB/dIBxElh
   sWP/DJmypifc7AjTOGC/xCYXFwl8L0uJ9nrAmEw9nVmar1oq5iSyNqyU6
   H3NIPONgJZTGRortaADxRiepHmdllAbS4b4O8veFgf+QyVdjsVVPBrUWL
   RNKEsp5Kv7pOQA8dZDiLt9+3kekuX6oYV3sPasK5CAhtPvFINPHQeRUrz
   w==;
X-IronPort-AV: E=McAfee;i="6600,9927,10851"; a="367858113"
X-IronPort-AV: E=Sophos;i="6.03,196,1694761200"; 
   d="scan'208";a="367858113"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10851"; a="1081900951"
X-IronPort-AV: E=Sophos;i="6.03,196,1694761200"; 
   d="scan'208";a="1081900951"
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 v12 18/37] x86/fred: Reserve space for the FRED stack frame
Date: Mon,  2 Oct 2023 23:24:39 -0700
Message-Id: <20231003062458.23552-19-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20231003062458.23552-1-xin3.li@intel.com>
References: <20231003062458.23552-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 Tue Oct 03 06:55:03 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 03 Oct 2023 06:55:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611906.951682 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnZJ9-0000cS-HC; Tue, 03 Oct 2023 06:55:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611906.951682; Tue, 03 Oct 2023 06:55: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 1qnZJ8-0000Xi-LF; Tue, 03 Oct 2023 06:55:02 +0000
Received: by outflank-mailman (input) for mailman id 611906;
 Tue, 03 Oct 2023 06: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=XwHy=FR=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qnZIz-00047B-2C
 for xen-devel@lists.xenproject.org; Tue, 03 Oct 2023 06:54:53 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.126])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id bfb52fdb-61b9-11ee-9b0d-b553b5be7939;
 Tue, 03 Oct 2023 08:54:51 +0200 (CEST)
Received: from fmsmga005.fm.intel.com ([10.253.24.32])
 by orsmga106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 02 Oct 2023 23:54:44 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by fmsmga005.fm.intel.com with ESMTP; 02 Oct 2023 23:54: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: bfb52fdb-61b9-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=1696316091; x=1727852091;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=U5v5FfPZcbv+kEeu4BDXYc9n8fkslqM+14uJJDiLwkk=;
  b=Teo8HzN2KBDGzwjKVhitsOGQOb07xvXZFvgRIrmWO9uvFHaciAYWWK6S
   bttQu0acdifZvI/1kBXZw3Ebrz3TKWLjZQs0vmzqapX8BH0BT1gxPUnT6
   lPBCHGKyiLTBkTd2cUWMwRZ4/bA8AMHpN8QczJHjZtO1WT6kzUGWYVHIj
   dkgzegiTOAzijNdhJw/Y+aLsKdw1olmNSsb22J2fXk4VwRhJRyUsl6Zan
   +VsMZI8A4glYRFOhiQewGTFQB9XIM8CQETkp7mr1xLjVKSBsRAC9cXS6d
   KRcyHg2lkVQQnHFhzAEN2E8IFHxS6G2p1tZ44GJZT1XTh13hZ878kcs47
   A==;
X-IronPort-AV: E=McAfee;i="6600,9927,10851"; a="367858126"
X-IronPort-AV: E=Sophos;i="6.03,196,1694761200"; 
   d="scan'208";a="367858126"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10851"; a="1081900954"
X-IronPort-AV: E=Sophos;i="6.03,196,1694761200"; 
   d="scan'208";a="1081900954"
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 v12 19/37] x86/fred: Update MSR_IA32_FRED_RSP0 during task switch
Date: Mon,  2 Oct 2023 23:24:40 -0700
Message-Id: <20231003062458.23552-20-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20231003062458.23552-1-xin3.li@intel.com>
References: <20231003062458.23552-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 Tue Oct 03 07:00:51 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 03 Oct 2023 07:00:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611913.951709 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnZOi-0007fQ-2y; Tue, 03 Oct 2023 07:00:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611913.951709; Tue, 03 Oct 2023 07:00: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 1qnZOi-0007fJ-0I; Tue, 03 Oct 2023 07:00:48 +0000
Received: by outflank-mailman (input) for mailman id 611913;
 Tue, 03 Oct 2023 07:00: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=g4lE=FR=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qnZOg-0007fD-QI
 for xen-devel@lists.xenproject.org; Tue, 03 Oct 2023 07:00:46 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 92c8bd04-61ba-11ee-98d2-6d05b1d4d9a1;
 Tue, 03 Oct 2023 09:00:45 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id A05994EE0737;
 Tue,  3 Oct 2023 09:00: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: 92c8bd04-61ba-11ee-98d2-6d05b1d4d9a1
MIME-Version: 1.0
Date: Tue, 03 Oct 2023 09:00:44 +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,
 Henry.Wang@arm.com, Wei Liu <wl@xen.org>
Subject: Re: [XEN PATCH 4/7] x86/grant: switch included header to make
 declarations visible
In-Reply-To: <alpine.DEB.2.22.394.2310021541230.2348112@ubuntu-linux-20-04-desktop>
References: <cover.1696232393.git.nicola.vetrini@bugseng.com>
 <ec3179df569d3e2b392360539bddfb3adc726a5e.1696232393.git.nicola.vetrini@bugseng.com>
 <alpine.DEB.2.22.394.2310021541230.2348112@ubuntu-linux-20-04-desktop>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <7dcb6b040d0fab33553dac18e9080465@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 03/10/2023 00:42, Stefano Stabellini wrote:
> On Mon, 2 Oct 2023, Nicola Vetrini wrote:
>> The declarations for {create,replace}_grant_p2m_mapping are
>> not visible when these functions are defined, therefore the right
>> header needs to be included to allow them to be visible.
>> 
>> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
>> ---
>>  xen/arch/x86/hvm/grant_table.c             | 3 +--
>>  xen/arch/x86/include/asm/hvm/grant_table.h | 2 ++
>>  2 files changed, 3 insertions(+), 2 deletions(-)
>> 
>> diff --git a/xen/arch/x86/hvm/grant_table.c 
>> b/xen/arch/x86/hvm/grant_table.c
>> index 30d51d54a949..afe449d8882c 100644
>> --- a/xen/arch/x86/hvm/grant_table.c
>> +++ b/xen/arch/x86/hvm/grant_table.c
>> @@ -9,8 +9,7 @@
>> 
>>  #include <xen/types.h>
>> 
>> -#include <public/grant_table.h>
>> -
>> +#include <asm/hvm/grant_table.h>
>>  #include <asm/p2m.h>
> 
> This makes sense...
> 
> 
>>  int create_grant_p2m_mapping(uint64_t addr, mfn_t frame,
>> diff --git a/xen/arch/x86/include/asm/hvm/grant_table.h 
>> b/xen/arch/x86/include/asm/hvm/grant_table.h
>> index 33c1da1a25f3..576aeb50adf4 100644
>> --- a/xen/arch/x86/include/asm/hvm/grant_table.h
>> +++ b/xen/arch/x86/include/asm/hvm/grant_table.h
>> @@ -10,6 +10,8 @@
>>  #ifndef __X86_HVM_GRANT_TABLE_H__
>>  #define __X86_HVM_GRANT_TABLE_H__
>> 
>> +#include <asm/paging.h>
> 
> ... but I don't understand this one. It doesn't look like
> asm/hvm/grant_table.h actually needs asm/paging.h ? Maybe it should be
> included in xen/arch/x86/hvm/grant_table.c instead ?
> 
> 
>>  #ifdef CONFIG_HVM
>> 
>>  int create_grant_p2m_mapping(uint64_t addr, mfn_t frame,
>> --
>> 2.34.1
>> 

See this thread [1] for more context. There was no response, so I went 
for the route that
made more sense to me. I guess you could say that only <xen/mm-frame.h> 
is actually needed
to get a definition of mfn_t, but I put <asm/paging.h> as in the 
<asm/grant_table.h> header.

[1] 
https://lore.kernel.org/xen-devel/a4b6710b66ed05292388ac6882b940ec@bugseng.com/

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


From xen-devel-bounces@lists.xenproject.org Tue Oct 03 07:03:28 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 03 Oct 2023 07:03:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611923.951720 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnZRG-0008Jl-Fq; Tue, 03 Oct 2023 07:03:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611923.951720; Tue, 03 Oct 2023 07:03: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 1qnZRG-0008Je-DF; Tue, 03 Oct 2023 07:03:26 +0000
Received: by outflank-mailman (input) for mailman id 611923;
 Tue, 03 Oct 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=XwHy=FR=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qnZJA-00040o-PE
 for xen-devel@lists.xenproject.org; Tue, 03 Oct 2023 06:55:04 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.126])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id c6219426-61b9-11ee-98d2-6d05b1d4d9a1;
 Tue, 03 Oct 2023 08:55:01 +0200 (CEST)
Received: from fmsmga005.fm.intel.com ([10.253.24.32])
 by orsmga106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 02 Oct 2023 23:54:53 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by fmsmga005.fm.intel.com with ESMTP; 02 Oct 2023 23:54: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: c6219426-61b9-11ee-98d2-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1696316102; x=1727852102;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=KVAH30AJVp6O2e8FLYlwUzaPcwlh2ELK9dDq37AIdDs=;
  b=XNthX3KFPH8s237RumIq/Zv9SpOIlEgSSHL/cuTN5UYICgyar/UFTWBc
   v4i8haVxbMFuPT/xxWiuvOzy9O/t5HspWpnYu2+ewwTNrSw9eymOkEpdP
   vqeqcU7gAkPAnjC1whTq9xEkXf/bXcREWq97CQ1x6pk2Sbz/An5S5lULK
   fcRNxASE2AEPyHVFLQi/50w04XQ9F3FVe4Pj9jsu9HqZLbc7+j15RPIxp
   OdfCKauHuoVbkx04jNVqq/isvBIxyBANqRrGdx1xIEP3DzTUAikwSAfMO
   XOp9+DYVba6IE4NxaIWZ7gTUvXqOqDdGxOsYf6lr5KZKFNP/PBukl8Wg/
   w==;
X-IronPort-AV: E=McAfee;i="6600,9927,10851"; a="367858351"
X-IronPort-AV: E=Sophos;i="6.03,196,1694761200"; 
   d="scan'208";a="367858351"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10851"; a="1081901025"
X-IronPort-AV: E=Sophos;i="6.03,196,1694761200"; 
   d="scan'208";a="1081901025"
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 v12 35/37] x86/syscall: Split IDT syscall setup code into idt_syscall_init()
Date: Mon,  2 Oct 2023 23:24:56 -0700
Message-Id: <20231003062458.23552-36-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20231003062458.23552-1-xin3.li@intel.com>
References: <20231003062458.23552-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 9b1cb6c938c4..69f9bdab19a9 100644
--- a/arch/x86/kernel/cpu/common.c
+++ b/arch/x86/kernel/cpu/common.c
@@ -2078,10 +2078,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()) {
@@ -2115,6 +2113,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 Tue Oct 03 07:05:20 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 03 Oct 2023 07:05:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611938.951740 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnZT6-0001Em-2f; Tue, 03 Oct 2023 07:05:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611938.951740; Tue, 03 Oct 2023 07: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 1qnZT5-0001Ef-Vo; Tue, 03 Oct 2023 07:05:19 +0000
Received: by outflank-mailman (input) for mailman id 611938;
 Tue, 03 Oct 2023 07:05: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=XwHy=FR=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qnZJ2-00040o-Mo
 for xen-devel@lists.xenproject.org; Tue, 03 Oct 2023 06:54:56 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.126])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id c222a018-61b9-11ee-98d2-6d05b1d4d9a1;
 Tue, 03 Oct 2023 08:54:55 +0200 (CEST)
Received: from fmsmga005.fm.intel.com ([10.253.24.32])
 by orsmga106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 02 Oct 2023 23:54:47 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by fmsmga005.fm.intel.com with ESMTP; 02 Oct 2023 23:54: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: c222a018-61b9-11ee-98d2-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1696316095; x=1727852095;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=aB9X6AvBbEVqHF8pDqD66jUIoaqA7x/kswu7ifFPwEo=;
  b=V/adBW0S+JzYs7JGXzaKpqFmmjx3mIih+mDPhCE5WumlptBCyvKdPNWD
   jxPGeTpU7rmZYhGcpikxVP8G60F8GXL7mZeiFd7S0ht5OK+MtSMEq2EyP
   HRCl5C0jVSmXui3ohZolJoNK1+Wb25mUO4gqYUl9UuORZJJRwb8AL85se
   1LCJPhh2gmpck/z8TbjTlW1LNmsl5HM+kKnWr4o4zDeSsatmhyuYhYscy
   VtiCgYPKx9ZOPBJHhYb/oVpXh5ZAgPqtsA+uc3dqogc8xwGynCFReg1lV
   RKAllIAqgj6UcQrcHlZwSBWNsiK/zlMs4HdBky/Y0DZS+Fb+nTUXLg6kc
   w==;
X-IronPort-AV: E=McAfee;i="6600,9927,10851"; a="367858196"
X-IronPort-AV: E=Sophos;i="6.03,196,1694761200"; 
   d="scan'208";a="367858196"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10851"; a="1081900976"
X-IronPort-AV: E=Sophos;i="6.03,196,1694761200"; 
   d="scan'208";a="1081900976"
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 v12 24/37] x86/idtentry: Incorporate definitions/declarations of the FRED entries
Date: Mon,  2 Oct 2023 23:24:45 -0700
Message-Id: <20231003062458.23552-25-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20231003062458.23552-1-xin3.li@intel.com>
References: <20231003062458.23552-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 Tue Oct 03 07:05:20 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 03 Oct 2023 07:05:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611937.951730 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnZT0-0000v0-RS; Tue, 03 Oct 2023 07:05:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611937.951730; Tue, 03 Oct 2023 07:05: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 1qnZT0-0000ut-Nq; Tue, 03 Oct 2023 07:05:14 +0000
Received: by outflank-mailman (input) for mailman id 611937;
 Tue, 03 Oct 2023 07:05: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=XwHy=FR=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qnZIz-00040o-M4
 for xen-devel@lists.xenproject.org; Tue, 03 Oct 2023 06:54:53 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.126])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id c07bf6c4-61b9-11ee-98d2-6d05b1d4d9a1;
 Tue, 03 Oct 2023 08:54:52 +0200 (CEST)
Received: from fmsmga005.fm.intel.com ([10.253.24.32])
 by orsmga106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 02 Oct 2023 23:54:45 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by fmsmga005.fm.intel.com with ESMTP; 02 Oct 2023 23:54: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: c07bf6c4-61b9-11ee-98d2-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1696316092; x=1727852092;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=HaNFd9+f6o42v45n40NutGcoZldX+CMRVlEU3cDygtg=;
  b=JtCHFHMEPu5NVDh5XXdAjWkYhp1Lq5sD3SyxPQh4W1RNtsgtOIi9Me31
   FIXQuI2z3sv6LmHyqRq2fRIs0e+bzOPv5YKHr4ryYPtyp/n1OfyaWC6hI
   W0pi84Kt9am7AeYuMSkUIM1h6+K9dg500hi2tjaMgNsG8VyEYfRhp1d96
   UrfOktayFp9Z1puWReVzsAfMSvbtwDT3jpLQyOZRyybi/dFgl74We2O24
   Yh5gab4z9f7OBV3RvUEne1UJXedjEcPSSFehv1P9ZdEnT1NfyIN19MD5/
   NvYeLAFseKRjKOqtsr5NxqCWR2odD02T+Pap+7D2ug+9HOqsSQ7AhXb7l
   w==;
X-IronPort-AV: E=McAfee;i="6600,9927,10851"; a="367858140"
X-IronPort-AV: E=Sophos;i="6.03,196,1694761200"; 
   d="scan'208";a="367858140"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10851"; a="1081900957"
X-IronPort-AV: E=Sophos;i="6.03,196,1694761200"; 
   d="scan'208";a="1081900957"
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 v12 20/37] x86/fred: Disallow the swapgs instruction when FRED is enabled
Date: Mon,  2 Oct 2023 23:24:41 -0700
Message-Id: <20231003062458.23552-21-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20231003062458.23552-1-xin3.li@intel.com>
References: <20231003062458.23552-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 Tue Oct 03 07:05:20 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 03 Oct 2023 07:05:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611939.951745 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnZT6-0001IA-Bo; Tue, 03 Oct 2023 07:05:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611939.951745; Tue, 03 Oct 2023 07: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 1qnZT6-0001Gu-7g; Tue, 03 Oct 2023 07:05:20 +0000
Received: by outflank-mailman (input) for mailman id 611939;
 Tue, 03 Oct 2023 07:05: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=XwHy=FR=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qnZJ5-00040o-NZ
 for xen-devel@lists.xenproject.org; Tue, 03 Oct 2023 06:54:59 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.126])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id c3a22ed0-61b9-11ee-98d2-6d05b1d4d9a1;
 Tue, 03 Oct 2023 08:54:57 +0200 (CEST)
Received: from fmsmga005.fm.intel.com ([10.253.24.32])
 by orsmga106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 02 Oct 2023 23:54:49 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by fmsmga005.fm.intel.com with ESMTP; 02 Oct 2023 23:54: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: c3a22ed0-61b9-11ee-98d2-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1696316097; x=1727852097;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=cEE0ZUvGytHvigumVumgcYXV8x9y7wId43cb0XPUf88=;
  b=JRv8uWmsXRMHllxMt4oYZCh2HcxyrWRqSk3viE9amSI0HnQkpAHiU483
   wgk6AO2TbPucSMXaUdomSQrTtLXvmb6b9/hTFy1jeGpgYgyuExB/ydqwt
   lTKYNR+N21hzuNiGRYYdtEHIGsWyaonMHnPOxhaguVM7DfrSnWbZn3hAl
   Z+GdeP+rSsL1wWEXYwUfs6vvCdq+Cu2ZnPTc3YioE9/6iE+DydMCQAELB
   pTEns/j5kjWlVg3UakgdDeyGK/VFNl24whFQ9M5i8DDdHjuQ7pgJjOpk9
   kJRYt4fgy4WQ6TNaWUg40h5orfDVvZlRTO27XtyH+sryzqyNYpWQmtC0L
   w==;
X-IronPort-AV: E=McAfee;i="6600,9927,10851"; a="367858254"
X-IronPort-AV: E=Sophos;i="6.03,196,1694761200"; 
   d="scan'208";a="367858254"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10851"; a="1081900989"
X-IronPort-AV: E=Sophos;i="6.03,196,1694761200"; 
   d="scan'208";a="1081900989"
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 v12 28/37] x86/fred: FRED entry/exit and dispatch code
Date: Mon,  2 Oct 2023 23:24:49 -0700
Message-Id: <20231003062458.23552-29-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20231003062458.23552-1-xin3.li@intel.com>
References: <20231003062458.23552-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..215883e90f94
--- /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->fred_cs.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 Tue Oct 03 07:05:20 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 03 Oct 2023 07:05:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611940.951750 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnZT6-0001P7-MK; Tue, 03 Oct 2023 07:05:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611940.951750; Tue, 03 Oct 2023 07: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 1qnZT6-0001Nc-IR; Tue, 03 Oct 2023 07:05:20 +0000
Received: by outflank-mailman (input) for mailman id 611940;
 Tue, 03 Oct 2023 07:05: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=XwHy=FR=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qnZJ7-00040o-Nq
 for xen-devel@lists.xenproject.org; Tue, 03 Oct 2023 06:55:01 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.126])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id c564f79d-61b9-11ee-98d2-6d05b1d4d9a1;
 Tue, 03 Oct 2023 08:55:00 +0200 (CEST)
Received: from fmsmga005.fm.intel.com ([10.253.24.32])
 by orsmga106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 02 Oct 2023 23:54:52 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by fmsmga005.fm.intel.com with ESMTP; 02 Oct 2023 23:54: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: c564f79d-61b9-11ee-98d2-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1696316100; x=1727852100;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=MZgokrEaX/IcaX3hD6O7bYEAIXqVjdzkrr/jdEXzfh8=;
  b=gZZSBUlhPe8YnpbsVp9gjZMJ0UKeXp29TNsc9rhTst5B6xPzflYeEYWd
   8lR0oqEWuAOZFoucpE9qwxo+LYyW1CNWp3U6DW2wM/Wt41V9kmGXfPtNF
   10pGpwAJ4NT8t1aeZgrtjBtWbn6vaI7a1mVuDgPbjJhezOpu9TJBNLZ4P
   BNDavAxoUiSRl4xhjxEVb7F9av1FI3G01hzat0s5eJJIvb28Q2FsUnAF9
   JuXuAjVcoi0pGCLXJ57zJxQu358jwgoUe7w6oxFSE+eCGsjKzFc+ZAPsh
   NqjpPN1F7fF9ilJsFiOU0X55H3JXmbep8nCtkDz7JZTy2xckjiij8wDrW
   A==;
X-IronPort-AV: E=McAfee;i="6600,9927,10851"; a="367858337"
X-IronPort-AV: E=Sophos;i="6.03,196,1694761200"; 
   d="scan'208";a="367858337"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10851"; a="1081901012"
X-IronPort-AV: E=Sophos;i="6.03,196,1694761200"; 
   d="scan'208";a="1081901012"
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 v12 34/37] KVM: VMX: Call fred_entry_from_kvm() for IRQ/NMI handling
Date: Mon,  2 Oct 2023 23:24:55 -0700
Message-Id: <20231003062458.23552-35-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20231003062458.23552-1-xin3.li@intel.com>
References: <20231003062458.23552-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 Tue Oct 03 07:05:32 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 03 Oct 2023 07:05:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611942.951771 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnZTI-0002L1-B5; Tue, 03 Oct 2023 07:05:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611942.951771; Tue, 03 Oct 2023 07:05: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 1qnZTI-0002Ku-5S; Tue, 03 Oct 2023 07:05:32 +0000
Received: by outflank-mailman (input) for mailman id 611942;
 Tue, 03 Oct 2023 07:05: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=XwHy=FR=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qnZJ6-00040o-NX
 for xen-devel@lists.xenproject.org; Tue, 03 Oct 2023 06:55:00 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.126])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id c4896b33-61b9-11ee-98d2-6d05b1d4d9a1;
 Tue, 03 Oct 2023 08:54:59 +0200 (CEST)
Received: from fmsmga005.fm.intel.com ([10.253.24.32])
 by orsmga106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 02 Oct 2023 23:54:50 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by fmsmga005.fm.intel.com with ESMTP; 02 Oct 2023 23:54: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: c4896b33-61b9-11ee-98d2-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1696316099; x=1727852099;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=t7LG5n12hETRnrxNhjk5swu4X1wUVGmoU9KoK3uS4dI=;
  b=BB5mJkIbYCJPZ5GT5H4DTa9RJbz2ghaGCSNf4QePKmiGjbQJV+0cNSxC
   wK8DI71dLl7tph74qCdUm3VMaGSnMNu4bQpqJb2ELOmihZ1VqaaJ6P8km
   hKUTwByhV0Bg3zK2sryKh0mVPPR4YPFmAaQBF0cwlHpU9hQMffCg5R1v6
   ogQmRG8vfP9gj1l88tofT83gO5wTP5Y2pLHsUyxXngiZCgfCfYwH2J2XG
   HLp2XNPyJtNiIfU9eWtgeSOr3qO73SUmdoGE9ZauVmpmoXU8lDlxVNCap
   WqIUcwpHx6lkZGWPLxtTmA7Ynb/FVqRaJq2o8lD6Ke4a3bahPnKeaoqtC
   g==;
X-IronPort-AV: E=McAfee;i="6600,9927,10851"; a="367858292"
X-IronPort-AV: E=Sophos;i="6.03,196,1694761200"; 
   d="scan'208";a="367858292"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10851"; a="1081901001"
X-IronPort-AV: E=Sophos;i="6.03,196,1694761200"; 
   d="scan'208";a="1081901001"
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 v12 31/37] x86/fred: Fixup fault on ERETU by jumping to fred_entrypoint_user
Date: Mon,  2 Oct 2023 23:24:52 -0700
Message-Id: <20231003062458.23552-32-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20231003062458.23552-1-xin3.li@intel.com>
References: <20231003062458.23552-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..fc40a4e12f3a 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->fred_cs.sl = 0;
+	uregs->fred_cs.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 Tue Oct 03 07:05:32 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 03 Oct 2023 07:05:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611943.951776 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnZTI-0002RR-Qu; Tue, 03 Oct 2023 07:05:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611943.951776; Tue, 03 Oct 2023 07:05: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 1qnZTI-0002PG-JY; Tue, 03 Oct 2023 07:05:32 +0000
Received: by outflank-mailman (input) for mailman id 611943;
 Tue, 03 Oct 2023 07:05: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=XwHy=FR=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qnZJ9-00047B-8I
 for xen-devel@lists.xenproject.org; Tue, 03 Oct 2023 06:55:03 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.126])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id c3d87241-61b9-11ee-9b0d-b553b5be7939;
 Tue, 03 Oct 2023 08:54:58 +0200 (CEST)
Received: from fmsmga005.fm.intel.com ([10.253.24.32])
 by orsmga106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 02 Oct 2023 23:54:50 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by fmsmga005.fm.intel.com with ESMTP; 02 Oct 2023 23:54: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: c3d87241-61b9-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=1696316098; x=1727852098;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=oFGFV3scnrY39BI9CJIqIFWq/3/jto+rXVMWI3BCfMo=;
  b=axDmiPAigIAAymWx77Ltjfq+2kFy2mGAvq+QONI9crI2FAnJFEeEXqWe
   DPUBJ6iX6KY5Dknu3wvpZPrWQLZ/oRxM2jvMFfxSqHghnAa6nFZ3acpjA
   M6XfS/HvcErKw5ydJISbCtBbhQjKCeHnm70XMmln0XfQL3AURqQApduUE
   tgaJ1gxGKdAAKzIXfbG7K9Pn5BEQXgt59qK1MjYOflYtjiSykY7oOsLAT
   AJyNAoCBp+Nb0Y1aUxE1T/26TP4FlwotuBw7MAumvo3uUysCxvV8OJBAX
   d7RAsrchdFMitvOnk9Fbc9bNtOu/3TY+cKdGOPchclI+KVu2S5UdspjNW
   w==;
X-IronPort-AV: E=McAfee;i="6600,9927,10851"; a="367858280"
X-IronPort-AV: E=Sophos;i="6.03,196,1694761200"; 
   d="scan'208";a="367858280"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10851"; a="1081900998"
X-IronPort-AV: E=Sophos;i="6.03,196,1694761200"; 
   d="scan'208";a="1081900998"
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 v12 30/37] x86/fred: Let ret_from_fork_asm() jmp to asm_fred_exit_user when FRED is enabled
Date: Mon,  2 Oct 2023 23:24:51 -0700
Message-Id: <20231003062458.23552-31-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20231003062458.23552-1-xin3.li@intel.com>
References: <20231003062458.23552-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 aa4214703091..7f408deef00f 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 Tue Oct 03 07:05:36 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 03 Oct 2023 07:05:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611946.951790 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnZTM-00031k-9S; Tue, 03 Oct 2023 07:05:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611946.951790; Tue, 03 Oct 2023 07:05: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 1qnZTM-00031T-4t; Tue, 03 Oct 2023 07:05:36 +0000
Received: by outflank-mailman (input) for mailman id 611946;
 Tue, 03 Oct 2023 07:05: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=g4lE=FR=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qnZTL-0002Gx-JJ
 for xen-devel@lists.xenproject.org; Tue, 03 Oct 2023 07:05:35 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 3f5e65b4-61bb-11ee-98d2-6d05b1d4d9a1;
 Tue, 03 Oct 2023 09:05:34 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id 589604EE0737;
 Tue,  3 Oct 2023 09: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: 3f5e65b4-61bb-11ee-98d2-6d05b1d4d9a1
MIME-Version: 1.0
Date: Tue, 03 Oct 2023 09:05:34 +0200
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@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, jbeulich@suse.com, andrew.cooper3@citrix.com,
 Henry.Wang@arm.com, 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>
Subject: Re: [XEN PATCH 1/7] xen: add declarations for variables where needed
In-Reply-To: <ZRqkbeVUZbjizjNv@MacBookPdeRoger>
References: <cover.1696232393.git.nicola.vetrini@bugseng.com>
 <357a35c3035d0f8659a64d767791bc41d57494d3.1696232393.git.nicola.vetrini@bugseng.com>
 <ZRqkbeVUZbjizjNv@MacBookPdeRoger>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <872f44542c8df6dab79965375376010d@bugseng.com>
X-Sender: nicola.vetrini@bugseng.com
Organization: BUGSENG s.r.l.
Content-Type: text/plain; charset=UTF-8;
 format=flowed
Content-Transfer-Encoding: 8bit

On 02/10/2023 13:07, Roger Pau Monné wrote:
> On Mon, Oct 02, 2023 at 09:49:44AM +0200, Nicola Vetrini wrote:
>> Some variables with external linkage used in C code do not have
>> a visible declaration where they are defined. Providing such
>> declaration also resolves violations of MISRA C:2012 Rule 8.4.
>> 
>> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
>> ---
>>  xen/arch/arm/include/asm/setup.h  |  3 +++
>>  xen/arch/arm/include/asm/smp.h    |  3 +++
>>  xen/arch/x86/cpu/mcheck/mce.c     |  6 +++---
>>  xen/arch/x86/include/asm/setup.h  |  3 +++
>>  xen/arch/x86/irq.c                |  2 +-
>>  xen/arch/x86/platform_hypercall.c |  3 ---
>>  xen/common/symbols.c              | 17 -----------------
>>  xen/include/xen/hypercall.h       |  3 +++
>>  xen/include/xen/symbols.h         | 18 ++++++++++++++++++
>>  9 files changed, 34 insertions(+), 24 deletions(-)
>> 

>> diff --git a/xen/arch/x86/include/asm/setup.h 
>> b/xen/arch/x86/include/asm/setup.h
>> index dfdd9e555149..3c27fe915ed4 100644
>> --- a/xen/arch/x86/include/asm/setup.h
>> +++ b/xen/arch/x86/include/asm/setup.h
>> @@ -13,8 +13,11 @@ extern char __2M_rwdata_start[], __2M_rwdata_end[];
>>  extern unsigned long xenheap_initial_phys_start;
>>  extern uint64_t boot_tsc_stamp;
>> 
>> +extern char cpu0_stack[STACK_SIZE];
>>  extern void *stack_start;
>> 
>> +extern unsigned long cr4_pv32_mask;
> 
> This one might better go in compat.h, albeit that would require it's
> setting to be gated to CONFIG_PV32.  setup.h is IMO for init time
> stuff.
> 

Ok

>> +
>>  void early_cpu_init(void);
>>  void early_time_init(void);
>> 
>> diff --git a/xen/arch/x86/irq.c b/xen/arch/x86/irq.c
>> index 6abfd8162120..604dba94b052 100644
>> --- a/xen/arch/x86/irq.c
>> +++ b/xen/arch/x86/irq.c
>> @@ -43,7 +43,7 @@ int __read_mostly opt_irq_vector_map = 
>> OPT_IRQ_VECTOR_MAP_DEFAULT;
>>  static unsigned char __read_mostly irq_max_guests;
>>  integer_param("irq-max-guests", irq_max_guests);
>> 
>> -vmask_t global_used_vector_map;
>> +static vmask_t global_used_vector_map;
>> 
>>  struct irq_desc __read_mostly *irq_desc = NULL;
>> 
>> diff --git a/xen/arch/x86/platform_hypercall.c 
>> b/xen/arch/x86/platform_hypercall.c
>> index 9469de9045c7..e4dbec73d784 100644
>> --- a/xen/arch/x86/platform_hypercall.c
>> +++ b/xen/arch/x86/platform_hypercall.c
>> @@ -36,9 +36,6 @@
>>  #include "cpu/mtrr/mtrr.h"
>>  #include <xsm/xsm.h>
>> 
>> -/* Declarations for items shared with the compat mode handler. */
>> -extern spinlock_t xenpf_lock;
>> -
>>  #define RESOURCE_ACCESS_MAX_ENTRIES 3
>>  struct resource_access {
>>      unsigned int nr_done;
>> diff --git a/xen/common/symbols.c b/xen/common/symbols.c
>> index 691e61792506..7c3514c65f2e 100644
>> --- a/xen/common/symbols.c
>> +++ b/xen/common/symbols.c
>> @@ -21,23 +21,6 @@
>>  #include <xen/guest_access.h>
>>  #include <xen/errno.h>
>> 
>> -#ifdef SYMBOLS_ORIGIN
>> -extern const unsigned int symbols_offsets[];
>> -#define symbols_address(n) (SYMBOLS_ORIGIN + symbols_offsets[n])
>> -#else
>> -extern const unsigned long symbols_addresses[];
>> -#define symbols_address(n) symbols_addresses[n]
>> -#endif
>> -extern const unsigned int symbols_num_syms;
>> -extern const u8 symbols_names[];
>> -
>> -extern const struct symbol_offset symbols_sorted_offsets[];
>> -
>> -extern const u8 symbols_token_table[];
>> -extern const u16 symbols_token_index[];
>> -
>> -extern const unsigned int symbols_markers[];
>> -
>>  /* expand a compressed symbol data into the resulting uncompressed 
>> string,
>>     given the offset to where the symbol is in the compressed stream 
>> */
>>  static unsigned int symbols_expand_symbol(unsigned int off, char 
>> *result)
>> diff --git a/xen/include/xen/hypercall.h b/xen/include/xen/hypercall.h
>> index f307dfb59760..12de5a69b5b1 100644
>> --- a/xen/include/xen/hypercall.h
>> +++ b/xen/include/xen/hypercall.h
>> @@ -24,6 +24,9 @@
>>  /* Needs to be after asm/hypercall.h. */
>>  #include <xen/hypercall-defs.h>
>> 
>> +/* Declarations for items shared with the compat mode handler. */
>> +extern spinlock_t xenpf_lock;
> 
> I'm confused about why this needs to be moved, AFAICT xenpf_lock is
> only used in platform_hypercall.c, and the declaration is
> unconditional, so there's no definition without declaration issue.
> 

The violation was on ARM code, because of a slight inconsistency:
xen/arch/arm/platform_hypercall.c:DEFINE_SPINLOCK(xenpf_lock);

xen/arch/x86/platform_hypercall.c:extern spinlock_t xenpf_lock;
xen/arch/x86/platform_hypercall.c:DEFINE_SPINLOCK(xenpf_lock);

therefore, by moving the extern declaration to the common header there 
should be no issue.

>> +
>>  extern long
>>  arch_do_domctl(
>>      struct xen_domctl *domctl, struct domain *d,
>> diff --git a/xen/include/xen/symbols.h b/xen/include/xen/symbols.h
>> index 20bbb28ef226..92540409265e 100644
>> --- a/xen/include/xen/symbols.h
>> +++ b/xen/include/xen/symbols.h
>> @@ -33,4 +33,22 @@ struct symbol_offset {
>>      uint32_t stream; /* .. in the compressed stream.*/
>>      uint32_t addr;   /* .. and in the fixed size address array. */
>>  };
>> +
>> +#ifdef SYMBOLS_ORIGIN
>> +extern const unsigned int symbols_offsets[];
>> +#define symbols_address(n) (SYMBOLS_ORIGIN + symbols_offsets[n])
>> +#else
>> +extern const unsigned long symbols_addresses[];
>> +#define symbols_address(n) symbols_addresses[n]
>> +#endif
>> +extern const unsigned int symbols_num_syms;
>> +extern const u8 symbols_names[];
>> +
>> +extern const struct symbol_offset symbols_sorted_offsets[];
>> +
>> +extern const u8 symbols_token_table[];
>> +extern const u16 symbols_token_index[];
>> +
>> +extern const unsigned int symbols_markers[];
>> +
>>  #endif /*_XEN_SYMBOLS_H*/
> 
> This one is ugly, but I can't see a better way immediately.
> 
> Thanks, Roger.

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


From xen-devel-bounces@lists.xenproject.org Tue Oct 03 07:05:45 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 03 Oct 2023 07:05:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611953.951805 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnZTU-0003pA-T6; Tue, 03 Oct 2023 07:05:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611953.951805; Tue, 03 Oct 2023 07: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 1qnZTU-0003oC-NI; Tue, 03 Oct 2023 07:05:44 +0000
Received: by outflank-mailman (input) for mailman id 611953;
 Tue, 03 Oct 2023 07:05: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=XwHy=FR=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qnZJ2-00047B-7Q
 for xen-devel@lists.xenproject.org; Tue, 03 Oct 2023 06:54:56 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.126])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id c113f886-61b9-11ee-9b0d-b553b5be7939;
 Tue, 03 Oct 2023 08:54:53 +0200 (CEST)
Received: from fmsmga005.fm.intel.com ([10.253.24.32])
 by orsmga106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 02 Oct 2023 23:54:46 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by fmsmga005.fm.intel.com with ESMTP; 02 Oct 2023 23:54: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: c113f886-61b9-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=1696316093; x=1727852093;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=m7R91mzhAyMwuxf88uvtu3V1UGcA6vznqDxNdL57F/c=;
  b=F5FpvxBubZqnZ0OcQhp02TE6epmuTopvBhB6ToaG9p+EIIM17ocEW1YE
   JiXrpav3fAnJyHALTdL655THdhf1YF/g+kbzyIhCbGrLY8Qj/2ww1ZKKU
   E2srR/VwxEbsV2kyjevxcl8NgWd5xytmlcsWF9Y38FjksIW1XyounB4cT
   KA2r/vU6Y4TDxmqVtTz9SRcvRDqZXLaLaR1aJ47Bqkge12HEAuUZhO3vU
   GsseUxImxzZUdcSgAk2srUZmkwjbIV8BmFJl2WoG2VC2XC2d2J+PeGjxd
   cTQJH0yQisXZ0jGYDDxYcNwo2gPIZo4/SzOCljh++Z1+RMISwFNgwRZQz
   Q==;
X-IronPort-AV: E=McAfee;i="6600,9927,10851"; a="367858170"
X-IronPort-AV: E=Sophos;i="6.03,196,1694761200"; 
   d="scan'208";a="367858170"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10851"; a="1081900966"
X-IronPort-AV: E=Sophos;i="6.03,196,1694761200"; 
   d="scan'208";a="1081900966"
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 v12 22/37] x86/fred: Allow single-step trap and NMI when starting a new task
Date: Mon,  2 Oct 2023 23:24:43 -0700
Message-Id: <20231003062458.23552-23-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20231003062458.23552-1-xin3.li@intel.com>
References: <20231003062458.23552-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 Tue Oct 03 07:05:45 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 03 Oct 2023 07:05:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611952.951800 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnZTU-0003lp-IN; Tue, 03 Oct 2023 07:05:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611952.951800; Tue, 03 Oct 2023 07: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 1qnZTU-0003lZ-Ev; Tue, 03 Oct 2023 07:05:44 +0000
Received: by outflank-mailman (input) for mailman id 611952;
 Tue, 03 Oct 2023 07:05: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=XwHy=FR=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qnZJA-00047B-8X
 for xen-devel@lists.xenproject.org; Tue, 03 Oct 2023 06:55:04 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.126])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id c3d2b85d-61b9-11ee-9b0d-b553b5be7939;
 Tue, 03 Oct 2023 08:54:58 +0200 (CEST)
Received: from fmsmga005.fm.intel.com ([10.253.24.32])
 by orsmga106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 02 Oct 2023 23:54:49 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by fmsmga005.fm.intel.com with ESMTP; 02 Oct 2023 23:54: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: c3d2b85d-61b9-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=1696316098; x=1727852098;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=XEiy1dEMQwIitGKwxG4ZaGCKBDQ3gkZyNS2aNd89p3E=;
  b=bChTC8SHJfhix9e7khKD8r7r6jKgKd9MDaksirPQXmJwKHeNxtlri8Gq
   dC+pu3X0qd55RBFJP4lSEWved0uBr03gOCXBnnUzYu/P267KGKPMzidfy
   DkQ7atoKMa4dVRe9DLd7rqao0cM+ctoxCFMniakJWIV02B51hFXoBMUVX
   GDc1EGgPiimt0m5ZkqSjZC0uLlRqlGc06scVQOgQusZilMRIkwS3CLZmW
   2OlmarRkCWsemNgfM9CQgsj+8MYQbuTjJZBWXgc3u4fyGDkd4L3FSeyVo
   1Ece4fhIQGEDZKMj154uVJyjRyFXb17oIYaPJgejn6ak9DHfUyg0dN8m/
   Q==;
X-IronPort-AV: E=McAfee;i="6600,9927,10851"; a="367858267"
X-IronPort-AV: E=Sophos;i="6.03,196,1694761200"; 
   d="scan'208";a="367858267"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10851"; a="1081900993"
X-IronPort-AV: E=Sophos;i="6.03,196,1694761200"; 
   d="scan'208";a="1081900993"
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 v12 29/37] x86/traps: Add sysvec_install() to install a system interrupt handler
Date: Mon,  2 Oct 2023 23:24:50 -0700
Message-Id: <20231003062458.23552-30-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20231003062458.23552-1-xin3.li@intel.com>
References: <20231003062458.23552-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 215883e90f94..e80e3efbc057 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 0bb86e6c4d0a..4bd1293e666f 100644
--- a/drivers/xen/events/events_base.c
+++ b/drivers/xen/events/events_base.c
@@ -2226,7 +2226,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 Tue Oct 03 07:06:31 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 03 Oct 2023 07:06:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611976.951820 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnZU8-0006PQ-6c; Tue, 03 Oct 2023 07:06:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611976.951820; Tue, 03 Oct 2023 07:06: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 1qnZU8-0006PJ-3q; Tue, 03 Oct 2023 07:06:24 +0000
Received: by outflank-mailman (input) for mailman id 611976;
 Tue, 03 Oct 2023 07:06: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=XwHy=FR=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qnZJ3-00040o-Mx
 for xen-devel@lists.xenproject.org; Tue, 03 Oct 2023 06:54:57 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.126])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id c2ece9aa-61b9-11ee-98d2-6d05b1d4d9a1;
 Tue, 03 Oct 2023 08:54:56 +0200 (CEST)
Received: from fmsmga005.fm.intel.com ([10.253.24.32])
 by orsmga106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 02 Oct 2023 23:54:48 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by fmsmga005.fm.intel.com with ESMTP; 02 Oct 2023 23:54: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: c2ece9aa-61b9-11ee-98d2-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1696316096; x=1727852096;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=bNtEfhEic2/4eI6U3F6LZD3GtdQN7TZ08d/4AOd+L9I=;
  b=dr3UUKE1SbYVPTA1Yv2xUwDgwbdQCx8JrILEbopf1zq5+dnaOeCqbNK1
   K6mtrBNcFIJZLcvw2vKu1Y34ru/Oy3F0vGivqntDtWJ00kY6ESFHQN/rv
   TYHxC7enjahgw9MSYR1d5IJfOR95Eh0sHPpTB+SC3vrahdr5n5pGmScOL
   MFkqiRbW51yYJbDevWYwSNT84i6WnLhX3lRRdIaG/R7Rt/oFFqD39lteS
   hHayjAJ5CsyvfYJKs94hHXrG5jHuCTIqJz0lMxnEqb+wHHxRvzk6bIS/5
   4q+PLOLIYRJJUa/gXdkjKs+7LdRbaMuoVnfKCrnIQLSkjE1vi7mq2xWUu
   g==;
X-IronPort-AV: E=McAfee;i="6600,9927,10851"; a="367858242"
X-IronPort-AV: E=Sophos;i="6.03,196,1694761200"; 
   d="scan'208";a="367858242"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10851"; a="1081900986"
X-IronPort-AV: E=Sophos;i="6.03,196,1694761200"; 
   d="scan'208";a="1081900986"
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 v12 27/37] x86/fred: Add a machine check entry stub for FRED
Date: Mon,  2 Oct 2023 23:24:48 -0700
Message-Id: <20231003062458.23552-28-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20231003062458.23552-1-xin3.li@intel.com>
References: <20231003062458.23552-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 Tue Oct 03 07:06:32 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 03 Oct 2023 07:06:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611981.951830 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnZUG-00070f-KV; Tue, 03 Oct 2023 07:06:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611981.951830; Tue, 03 Oct 2023 07:06: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 1qnZUG-0006zn-HF; Tue, 03 Oct 2023 07:06:32 +0000
Received: by outflank-mailman (input) for mailman id 611981;
 Tue, 03 Oct 2023 07:06: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=XwHy=FR=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qnZJI-00047B-9q
 for xen-devel@lists.xenproject.org; Tue, 03 Oct 2023 06:55:12 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.126])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id c6c9cd54-61b9-11ee-9b0d-b553b5be7939;
 Tue, 03 Oct 2023 08:55:03 +0200 (CEST)
Received: from fmsmga005.fm.intel.com ([10.253.24.32])
 by orsmga106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 02 Oct 2023 23:54:54 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by fmsmga005.fm.intel.com with ESMTP; 02 Oct 2023 23:54: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: c6c9cd54-61b9-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=1696316103; x=1727852103;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=eEbBoWC5xFSRvZAlegSoACai1Gg5zcI498qdyjosTZg=;
  b=HK422Sr4RTtrYJqO+T3eQni0+x2u+6BNWSqFIKwJGNFHrdqTbay7Xg8N
   0rNPHXD4iEyLMR+mkzhEetDNBbbb5u+Q4q5wdFPnx+pXSj3aR0mjbfE2S
   ghje3bBKjHO+9QshbJ2JEPJ3XpwTifgfJAj4OFDg31iBPwGDxLuyftzRm
   Ou9iOBVLKvSPDB1jWOCX33EOI7+GoFNyjB2J5EPg8fy8HJ9ToBIZnYzo8
   x63SS+bGQ//4b5V60J1X+AZE8WLOOybVkkPElx1Jgjd/pwxMkjZ8bI0v+
   B8ukw+ytoqHsNTPGAhtLilZHY+04UqAGCPV1+nVUAfIrK9lnVkEeC3i5o
   A==;
X-IronPort-AV: E=McAfee;i="6600,9927,10851"; a="367858375"
X-IronPort-AV: E=Sophos;i="6.03,196,1694761200"; 
   d="scan'208";a="367858375"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10851"; a="1081901031"
X-IronPort-AV: E=Sophos;i="6.03,196,1694761200"; 
   d="scan'208";a="1081901031"
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 v12 37/37] x86/fred: Invoke FRED initialization code to enable FRED
Date: Mon,  2 Oct 2023 23:24:58 -0700
Message-Id: <20231003062458.23552-38-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20231003062458.23552-1-xin3.li@intel.com>
References: <20231003062458.23552-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 69f9bdab19a9..b103cfad0520 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>
@@ -2119,7 +2120,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 */
@@ -2235,8 +2244,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);
 
@@ -2245,8 +2255,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 Tue Oct 03 07:06:33 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 03 Oct 2023 07:06:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611982.951835 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnZUG-00074U-Ut; Tue, 03 Oct 2023 07:06:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611982.951835; Tue, 03 Oct 2023 07:06: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 1qnZUG-00073y-PJ; Tue, 03 Oct 2023 07:06:32 +0000
Received: by outflank-mailman (input) for mailman id 611982;
 Tue, 03 Oct 2023 07:06: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=XwHy=FR=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qnZJ1-00040o-Ml
 for xen-devel@lists.xenproject.org; Tue, 03 Oct 2023 06:54:55 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.126])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id c16f407c-61b9-11ee-98d2-6d05b1d4d9a1;
 Tue, 03 Oct 2023 08:54:54 +0200 (CEST)
Received: from fmsmga005.fm.intel.com ([10.253.24.32])
 by orsmga106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 02 Oct 2023 23:54:46 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by fmsmga005.fm.intel.com with ESMTP; 02 Oct 2023 23:54: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: c16f407c-61b9-11ee-98d2-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1696316094; x=1727852094;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=vZ6vels66+tC8YRpSCj8dEsAAUPLXovJkO1WpIp9s0Y=;
  b=aRR3S1LIt2CdLqsFzvgishhnCPpIpbMVF6iZvGeaniPUeJ5JXtmELUg3
   V0Fo0AkMMj851vAZ2WGpimqdn68EU8++sknXnq+qc0VqDV+zusIHwcvIu
   Zw8rgZtzz+QWgDiKk0Ujq6Kzv8XyO+GeXqt8OlUQ/62dfzz49ukJVuv/E
   D6oxhUylh5BVCLRgACAzX3Nj7xvMq61u9rmgX0M/MTfbhfP5dy+KmeOdV
   ZAEahm7BecIFh1rFUP+B8js6TpOABvYCXp9YHA/hLHY2pyqr2AonYeKW6
   aODlvCsYP38yl1Ky0n/IEcfZUo3gWJ/cDKSlM2vDqOYBZ7wW3ymc2Vt+0
   w==;
X-IronPort-AV: E=McAfee;i="6600,9927,10851"; a="367858183"
X-IronPort-AV: E=Sophos;i="6.03,196,1694761200"; 
   d="scan'208";a="367858183"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10851"; a="1081900971"
X-IronPort-AV: E=Sophos;i="6.03,196,1694761200"; 
   d="scan'208";a="1081900971"
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 v12 23/37] x86/fred: Make exc_page_fault() work for FRED
Date: Mon,  2 Oct 2023 23:24:44 -0700
Message-Id: <20231003062458.23552-24-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20231003062458.23552-1-xin3.li@intel.com>
References: <20231003062458.23552-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 Tue Oct 03 07:06:34 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 03 Oct 2023 07:06:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611984.951850 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnZUI-0007Xp-8C; Tue, 03 Oct 2023 07:06:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611984.951850; Tue, 03 Oct 2023 07:06: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 1qnZUI-0007XG-3p; Tue, 03 Oct 2023 07:06:34 +0000
Received: by outflank-mailman (input) for mailman id 611984;
 Tue, 03 Oct 2023 07:06: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=XwHy=FR=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qnZJ5-00047B-7n
 for xen-devel@lists.xenproject.org; Tue, 03 Oct 2023 06:54:59 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.126])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id c26548a4-61b9-11ee-9b0d-b553b5be7939;
 Tue, 03 Oct 2023 08:54:55 +0200 (CEST)
Received: from fmsmga005.fm.intel.com ([10.253.24.32])
 by orsmga106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 02 Oct 2023 23:54:48 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by fmsmga005.fm.intel.com with ESMTP; 02 Oct 2023 23:54: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: c26548a4-61b9-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=1696316095; x=1727852095;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=WI4PNmnQNqWbUIJ+xrhdRHV/OU0QAbzmppTdHG3/yfg=;
  b=btXgqEUB33NwcnpmJ1gd5Ji3DRMWZqr1aeUc6hYutRJgrbhpbVJwI0sN
   4RN0ZhV+UTEp4y7tUXfICBjdO9xYrRVT/AnoTZOqoAyjbAEVVhUJgvsoq
   7vqPeHlhOWeOoQABfDWex14tV+Yos6gBs6XNXqUuZyizYPC1hAfBhsUHk
   p4L/dRyRd8JuKpVAgsDXuX5jwj8xin1LxqpykB536oHNizTQLTEZvsSev
   NIiKYv5bwHGS1cQxaKiLhx0QbCadH7t91mgARK+EJurIGlaHFu23voWyb
   lht/NxC5aYHm52ivw+cwsnUcxlcOgy8s3M/0SCT3GrX4rUvbo2rcvXfyx
   A==;
X-IronPort-AV: E=McAfee;i="6600,9927,10851"; a="367858213"
X-IronPort-AV: E=Sophos;i="6.03,196,1694761200"; 
   d="scan'208";a="367858213"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10851"; a="1081900979"
X-IronPort-AV: E=Sophos;i="6.03,196,1694761200"; 
   d="scan'208";a="1081900979"
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 v12 25/37] x86/fred: Add a debug fault entry stub for FRED
Date: Mon,  2 Oct 2023 23:24:46 -0700
Message-Id: <20231003062458.23552-26-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20231003062458.23552-1-xin3.li@intel.com>
References: <20231003062458.23552-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 Tue Oct 03 07:06:45 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 03 Oct 2023 07:06:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611990.951860 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnZUT-0008Ma-Is; Tue, 03 Oct 2023 07:06:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611990.951860; Tue, 03 Oct 2023 07:06: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 1qnZUT-0008MM-Fj; Tue, 03 Oct 2023 07:06:45 +0000
Received: by outflank-mailman (input) for mailman id 611990;
 Tue, 03 Oct 2023 07:06: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=XwHy=FR=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qnZJH-00047B-9r
 for xen-devel@lists.xenproject.org; Tue, 03 Oct 2023 06:55:11 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.126])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id c69c35a2-61b9-11ee-9b0d-b553b5be7939;
 Tue, 03 Oct 2023 08:55:02 +0200 (CEST)
Received: from fmsmga005.fm.intel.com ([10.253.24.32])
 by orsmga106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 02 Oct 2023 23:54:53 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by fmsmga005.fm.intel.com with ESMTP; 02 Oct 2023 23:54: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: c69c35a2-61b9-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=1696316102; x=1727852102;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=gVi2+XfvMsb0EmrgWxnOH1m9wi+KtBF4SipmwmPPA4A=;
  b=K6Zgt5rNvhLlqI1MNlDI1XD9vPkaZBWkwdQ9nQTpwhPFgb/jPt8gcbGs
   A2Fh4G0/8d7QtwUuv6rkmT5fNzM4hYS7X6d5/KsyWGR0pTAihxYWDCPWi
   /T+9i110UFS3yM6XlAgNuvhSXh7Xb9w9atbMtx1F16Hl5HndZcn6LFKHl
   gPJGrGaejPdTUH9W8t5b3d5Fw53UKkzSY7RyTVVAFrY1fPFWbk1L6MTEl
   OrnFBPfeUJYuR+31411qAwY+/nr9tPvQbwCriUtuI18nvvxAcvRk+gaPj
   nUcjfdQNez+wb9ulcqwEqlC70WTlkb9Kv3wRGrp0S2MODyLVSBs5hnDus
   A==;
X-IronPort-AV: E=McAfee;i="6600,9927,10851"; a="367858362"
X-IronPort-AV: E=Sophos;i="6.03,196,1694761200"; 
   d="scan'208";a="367858362"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10851"; a="1081901028"
X-IronPort-AV: E=Sophos;i="6.03,196,1694761200"; 
   d="scan'208";a="1081901028"
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 v12 36/37] x86/fred: Add FRED initialization functions
Date: Mon,  2 Oct 2023 23:24:57 -0700
Message-Id: <20231003062458.23552-37-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20231003062458.23552-1-xin3.li@intel.com>
References: <20231003062458.23552-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 3e33a4ab4624..abe66d65fa2d 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 Tue Oct 03 07:06:47 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 03 Oct 2023 07:06:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611991.951870 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnZUV-0000LV-Qs; Tue, 03 Oct 2023 07:06:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611991.951870; Tue, 03 Oct 2023 07: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 1qnZUV-0000LI-O2; Tue, 03 Oct 2023 07:06:47 +0000
Received: by outflank-mailman (input) for mailman id 611991;
 Tue, 03 Oct 2023 07: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=XwHy=FR=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qnZJ6-00047B-7x
 for xen-devel@lists.xenproject.org; Tue, 03 Oct 2023 06:55:00 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.126])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id c27dbca9-61b9-11ee-9b0d-b553b5be7939;
 Tue, 03 Oct 2023 08:54:55 +0200 (CEST)
Received: from fmsmga005.fm.intel.com ([10.253.24.32])
 by orsmga106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 02 Oct 2023 23:54:48 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by fmsmga005.fm.intel.com with ESMTP; 02 Oct 2023 23:54: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: c27dbca9-61b9-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=1696316095; x=1727852095;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=FcZc1QeKj2isPTwOBVaGNTy+si5WeOaciLFU4yv7EQo=;
  b=BbKo73uHCaX15YH0ctt3j322eQ06JhpfZQ9/5Fo1y90aTmJYBxMPrsAw
   x4rXECJjPlD/a8Q4auFabXlgoYUoi2bqHOOclKOYIurqsamqinrSCAvLZ
   1UenzrzHzPbWTDn7zV6lwGKGKmyNqpDh0VRaHTKNS91CDwy0ZXk2XeeGp
   tdXHK76RYOmAsMCvrb1sy21gSIEw3vLTYRCXEsp2ywOh50teYPo9fcaBs
   6O185UvWGaGw4OH3Q5IEY0NHPpX2TFB1iZFu+MddI3SjgMEO37jKeTe8/
   tUreHJbPP2s3uDF/9mzsu2G1MabltB2rs8rSYeZOCScx+fXy607C1D/25
   Q==;
X-IronPort-AV: E=McAfee;i="6600,9927,10851"; a="367858230"
X-IronPort-AV: E=Sophos;i="6.03,196,1694761200"; 
   d="scan'208";a="367858230"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10851"; a="1081900982"
X-IronPort-AV: E=Sophos;i="6.03,196,1694761200"; 
   d="scan'208";a="1081900982"
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 v12 26/37] x86/fred: Add a NMI entry stub for FRED
Date: Mon,  2 Oct 2023 23:24:47 -0700
Message-Id: <20231003062458.23552-27-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20231003062458.23552-1-xin3.li@intel.com>
References: <20231003062458.23552-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 Tue Oct 03 07:06:51 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 03 Oct 2023 07:06:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611995.951880 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnZUZ-0000so-Co; Tue, 03 Oct 2023 07:06:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611995.951880; Tue, 03 Oct 2023 07:06: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 1qnZUZ-0000sc-7W; Tue, 03 Oct 2023 07:06:51 +0000
Received: by outflank-mailman (input) for mailman id 611995;
 Tue, 03 Oct 2023 07:06: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=XwHy=FR=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qnZJ1-00047B-7N
 for xen-devel@lists.xenproject.org; Tue, 03 Oct 2023 06:54:55 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.126])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id c0e0a640-61b9-11ee-9b0d-b553b5be7939;
 Tue, 03 Oct 2023 08:54:53 +0200 (CEST)
Received: from fmsmga005.fm.intel.com ([10.253.24.32])
 by orsmga106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 02 Oct 2023 23:54:45 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by fmsmga005.fm.intel.com with ESMTP; 02 Oct 2023 23:54: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: c0e0a640-61b9-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=1696316093; x=1727852093;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=daicXFK30tmpTUp95RTD2ZQAe5K9xY8zuW1WSEbSaqA=;
  b=SiRqV/fnee4/m5V7mIYkJ8lBXaAFPrP8JRjT7c0cxyytECNbyI3XYSwz
   e5x6cIFFThU/LCu22A4bI9/qSOrMm4imfP7LPZGyPU8nGCSOhRDPG4eWK
   1IMcUYs7pIA/8O33BBbrWvZ+Q2ZAK5CXY3m8ttFDEO6164r46aVUWYMRz
   no/PUkRwLtT0kd/qKaLnAEbJKeyTgErEUFyZttQ4oC1LIz2Jdw2K1ktx0
   2Clo5uUyzVZhdrs6phW77s647YDQas0onIQhpiQsaAyYlqf4f7t4wQzdd
   U88UMjSiwijk3RjYqhKJO7q6xHL+xmzmYGxHSBJgnLcFQLVpEdlbE4xOf
   A==;
X-IronPort-AV: E=McAfee;i="6600,9927,10851"; a="367858155"
X-IronPort-AV: E=Sophos;i="6.03,196,1694761200"; 
   d="scan'208";a="367858155"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10851"; a="1081900963"
X-IronPort-AV: E=Sophos;i="6.03,196,1694761200"; 
   d="scan'208";a="1081900963"
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 v12 21/37] x86/fred: No ESPFIX needed when FRED is enabled
Date: Mon,  2 Oct 2023 23:24:42 -0700
Message-Id: <20231003062458.23552-22-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20231003062458.23552-1-xin3.li@intel.com>
References: <20231003062458.23552-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 Tue Oct 03 07:06:57 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 03 Oct 2023 07:06:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612004.951891 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnZUe-0001Xy-Nx; Tue, 03 Oct 2023 07:06:56 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612004.951891; Tue, 03 Oct 2023 07: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 1qnZUe-0001XS-G6; Tue, 03 Oct 2023 07:06:56 +0000
Received: by outflank-mailman (input) for mailman id 612004;
 Tue, 03 Oct 2023 07:06: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=XwHy=FR=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qnZJC-00047B-95
 for xen-devel@lists.xenproject.org; Tue, 03 Oct 2023 06:55:06 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.126])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id c53ed50d-61b9-11ee-9b0d-b553b5be7939;
 Tue, 03 Oct 2023 08:55:00 +0200 (CEST)
Received: from fmsmga005.fm.intel.com ([10.253.24.32])
 by orsmga106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 02 Oct 2023 23:54:51 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by fmsmga005.fm.intel.com with ESMTP; 02 Oct 2023 23:54: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: c53ed50d-61b9-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=1696316100; x=1727852100;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=/UldAmuJEnsflYS2+cyLAQ4E+J1yAKX8pToUnF0eneI=;
  b=AxM3ClgOBxtrGOMWVpzjvmsA3Dg4oD8RXQ8GLcMX+h/icwju5qHpfXGO
   c8NpR2wG5dXU7hbTQDbAiJnzq2DSSZnyZ+6oFH4UveYw2xJ4qm/H0bzAh
   qUa1UmM6sR7l0iLeXPskJEmQ6vge4oUKryiIG56eenSA9uMZUWGcKa9NE
   hAPHGO2Wajae0ZYrscKpuoe0HGuvhsC+KiVuNJMC7XntdCmUXTU7AsSP8
   rsHiPfEH2ll+P/jKtAUjE6Jtt69QopY8WjG12meJvvFf7B4Upj8TYWS2F
   2vjwA4Im10W2mAMvblnVT7ooAKd9cehJZB/4RAjtaOTaqbpzW9wazd0Al
   w==;
X-IronPort-AV: E=McAfee;i="6600,9927,10851"; a="367858305"
X-IronPort-AV: E=Sophos;i="6.03,196,1694761200"; 
   d="scan'208";a="367858305"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10851"; a="1081901004"
X-IronPort-AV: E=Sophos;i="6.03,196,1694761200"; 
   d="scan'208";a="1081901004"
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 v12 32/37] x86/entry/calling: Allow PUSH_AND_CLEAR_REGS being used beyond actual entry code
Date: Mon,  2 Oct 2023 23:24:53 -0700
Message-Id: <20231003062458.23552-33-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20231003062458.23552-1-xin3.li@intel.com>
References: <20231003062458.23552-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 Tue Oct 03 07:07:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 03 Oct 2023 07:07:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612026.951900 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnZUu-000370-V5; Tue, 03 Oct 2023 07:07:12 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612026.951900; Tue, 03 Oct 2023 07:07: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 1qnZUu-00036t-RN; Tue, 03 Oct 2023 07:07:12 +0000
Received: by outflank-mailman (input) for mailman id 612026;
 Tue, 03 Oct 2023 07:07: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=XwHy=FR=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qnZJD-00047B-93
 for xen-devel@lists.xenproject.org; Tue, 03 Oct 2023 06:55:07 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.126])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id c54e2815-61b9-11ee-9b0d-b553b5be7939;
 Tue, 03 Oct 2023 08:55:00 +0200 (CEST)
Received: from fmsmga005.fm.intel.com ([10.253.24.32])
 by orsmga106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 02 Oct 2023 23:54:52 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by fmsmga005.fm.intel.com with ESMTP; 02 Oct 2023 23:54: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: c54e2815-61b9-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=1696316100; x=1727852100;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=iqw0fwZbm5MXnC5p2WwXxWszbZfX0cXRwVyOWjiGl08=;
  b=LbortXIxiEVSl+5nVT9lrkvj+77CAgKsa4s9jUzkNV2MVQb5kMnV6/ll
   GuL5i9xDDwFOqeSVVa3zIY7HfW+Z+JJ/OFzVO4kxSn/RHRFJg0KZpCaU2
   MRdlkpIK0Cto+86smiN+D+K70dwCFvFz6gn2Ow4uJzxOE7S8Vqhl7PhZ5
   kPDz99+ZWPJXkpHAvywCpdU+PV+gMii0nu8u2PWWHmpLj5Z4FEdHkl3e4
   pw/sVbI8rl5lK6w28NUTjXx1sKSq5rM8T03cGdeUq3j30nMUa4WjTjTSh
   4pk17gfk0CIlReZTnrdJ7pF5ME88wM9sSQDJ7DA1XVwUKT4CNPVqDaZBI
   w==;
X-IronPort-AV: E=McAfee;i="6600,9927,10851"; a="367858318"
X-IronPort-AV: E=Sophos;i="6.03,196,1694761200"; 
   d="scan'208";a="367858318"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10851"; a="1081901008"
X-IronPort-AV: E=Sophos;i="6.03,196,1694761200"; 
   d="scan'208";a="1081901008"
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 v12 33/37] x86/entry: Add fred_entry_from_kvm() for VMX to handle IRQ/NMI
Date: Mon,  2 Oct 2023 23:24:54 -0700
Message-Id: <20231003062458.23552-34-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20231003062458.23552-1-xin3.li@intel.com>
References: <20231003062458.23552-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 e80e3efbc057..3e33a4ab4624 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 Tue Oct 03 07:15:38 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 03 Oct 2023 07:15:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612063.951910 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnZcv-0006no-Pj; Tue, 03 Oct 2023 07:15:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612063.951910; Tue, 03 Oct 2023 07: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 1qnZcv-0006nh-N1; Tue, 03 Oct 2023 07:15:29 +0000
Received: by outflank-mailman (input) for mailman id 612063;
 Tue, 03 Oct 2023 07:15: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=N/VM=FR=citrix.com=prvs=63394bc6a=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qnZcu-0006nV-9u
 for xen-devel@lists.xenproject.org; Tue, 03 Oct 2023 07:15:28 +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 9e7d22c1-61bc-11ee-98d2-6d05b1d4d9a1;
 Tue, 03 Oct 2023 09:15:26 +0200 (CEST)
Received: from mail-co1nam11lp2172.outbound.protection.outlook.com (HELO
 NAM11-CO1-obe.outbound.protection.outlook.com) ([104.47.56.172])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 03 Oct 2023 03:15:23 -0400
Received: from MW4PR03MB6428.namprd03.prod.outlook.com (2603:10b6:303:123::8)
 by SA0PR03MB5628.namprd03.prod.outlook.com (2603:10b6:806:b4::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.29; Tue, 3 Oct
 2023 07:15:19 +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.035; Tue, 3 Oct 2023
 07:15: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: 9e7d22c1-61bc-11ee-98d2-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1696317326;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=YRSfF+8fh98uyOMqSO/jvfCTjC14NLnOd+Ku74M2ZLU=;
  b=YYBEVMjQpiDFw2LkLZ9Gk2Onz3jVBErItDBU9us7K9EEAHlcJN2egLIs
   98CGs4Jgbdh1Myow5E1ZeZqvybPLQub6QCLhstKgbOW8JnaRGcA4dLNiv
   ozusismtikH5Yc7PRhTp0djiZKlIyVMrvYRDIqRbj6DOBLRcYfPyJXB9h
   E=;
X-CSE-ConnectionGUID: cJ8e/eYNTxKAQ3AiQMDpWQ==
X-CSE-MsgGUID: JEb18z/ETx66HMyR3ZHbDg==
X-IronPort-RemoteIP: 104.47.56.172
X-IronPort-MID: 124320247
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:MMl07qu9aMciCdrkRYIYrARfEOfnVJ9fMUV32f8akzHdYApBsoF/q
 tZmKWuDaP3YZmLzfdsna4S+/UNXuJbcy4QwTlQ4qXtjH3wW+JbJXdiXEBz9bniYRiHhoOCLz
 O1FM4Wdc5pkJpP4jk3wWlQ0hSAkjclkfpKlVaicfHg3HFc4IMsYoUoLs/YjhYJ1isSODQqIu
 Nfjy+XSI1bg0DNvWo4uw/vrRChH4rKq41v0gnRkPaoQ5QeGzCFPZH4iDfrZw0XQE9E88tGSH
 44v/JnhlkvF8hEkDM+Sk7qTWiXmlZaLYGBiIlIPM0STqkAqSh4ai87XB9JFAatjsB2bnsgZ9
 Tl4ncfYpTHFnEH7sL91vxFwS0mSNEDdkVPNCSDXXce7lyUqf5ZwqhnH4Y5f0YAwo45K7W9yG
 fMwIxJdY1eOtsSK0JGSc7JFh/0GANHUBdZK0p1g5Wmx4fcOZ7nmGvyPzvgBmTA6i4ZJAOrUY
 NcfZXx3dhPcbhZTO1ARTpUjgOOvgXq5eDpdwL6XjfNvvy6Pk0osjv60b4C9lt+iHK25mm6Co
 W3L5SLhCwwyP92D0zuVtHmrg4cjmAuiAt5JTuXiqqECbFu75EEZUU0EEnaHsafnqmuvYYltC
 0Y49X97xUQ13AnxJjXnZDWkqXuNpTYAWN5dFeIr5QXLwa3Riy6JC25BQjNfZdgOsM4tWSdsx
 lKPh8nuBzFkrPuSU3313reZqymjfzccK2AqbDUBCwAC5rHLoos+kxbORdZLC7Oug5v+HjSY6
 y+OhDgzgfMUl8Fj6kmg1VXOgjbprZ+QSAcwv1zTRjj8sVk/Y5O5bYu171Sd9exHMIuSUliGu
 j4DhtSa6+cNS5qKkURhXdkwIV1g3N7dWBW0vLKlN8BJG+iFk5J7Qb1t3Q==
IronPort-HdrOrdr: A9a23:wGS5fqtrON1Iy+qfbT2XEELj7skDstV00zEX/kB9WHVpm6yj+v
 xG/c5rsCMc7Qx6ZJhOo7+90cW7L080lqQFg7X5X43DYOCOggLBQL2KhbGI/9SKIVycygcy78
 Zdm6gVMqyLMbB55/yKnTVRxbwbsaW6GKPDv5ag8590JzsaD52Jd21Ce36m+ksdfnggObMJUK
 Cyy+BgvDSadXEefq2AdwI4t7iqnaysqHr+CyR2fiIa1A==
X-Talos-CUID: =?us-ascii?q?9a23=3AhWBV2Gkirgen8EYRQwk2jzXMXvXXOXb/nHqXLn6?=
 =?us-ascii?q?eNXZKYYTOYF6p3Y98rPM7zg=3D=3D?=
X-Talos-MUID: 9a23:LtVm8wXky5aNPTvq/B3BjmgyJoBF37TwVmAogK9diemOGSMlbg==
X-IronPort-AV: E=Sophos;i="6.03,196,1694750400"; 
   d="scan'208";a="124320247"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=JcrLbaiP2XnifDKlzBEQtrJV/bH7exmlCT/H985Qjw50WkskoAiiLEReMXYIh0J9W8E5TvTdhIUJVmIz/FQpl11+s3/RKSm1ZGOZVY0egGjpeMf+JiMpuRNSeGDGoJs5VOxZ2nZaiqLZrISmBkaosdWEcGswIUpqUgTiAgOpfcSQ86tMtXEhadJqoArD7u0I6wQ9kMmnqr2EvCZd6zlc82KuX7aReGAK4IT4BltAxd3tW0ivQ3yN9suJgpHNm10Zp2i2lT1AMIjlB1Ur04D9bBKH8NnYQy5NmmUwD2SOoL4wp3sNEio+Olc3sAD5nx5E4eaptJC0Aj1wl/xBIS5Ypw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=rHP9YXezTIkQHtH/UNEzKdM20E7PMa/NJKdQERuHM9E=;
 b=bACGk5fVjt01+PQVE0X/4s442CU5y5m+JLoWMmUaXmZJ28KmUa1Gz6inL916aHPyTeSe24ewFrUjGpBedknCFKG6zlwkYb4DnJLpC4s4gaS2pIQ2cmRrKn0q7f+QJ0+QM5XsGNi1CLUz4rIwG0YBDTQfngftpNPuVMyvHnPgvzClaV/jxxaIoPKg2BlvVvJyGmQZ9Y7FgHzZXm5nhMKwPVrUrhK8e+cy5uR7daClqPJ47/zZHtr7ZtEuPjpBFJqvb/0SN0nsgbZfXrQPT/3SI/xYTGjw88akp2NWKY/8U/txLrZaTP/vhnDB9h2eElSY5rTLKMNeZhWcZKoKIq1Rdg==
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=rHP9YXezTIkQHtH/UNEzKdM20E7PMa/NJKdQERuHM9E=;
 b=DosiymIreEc96ttB2UoGw7JEvP+ljRaaP3V6cCoEOu+vrEESwrxsHQHoew6XTwShe2Kd+QTntnfush7G3gzLKq7UBXlpZzCFJieTf+z8jzjhP4oGi9oR3HoVzKuHhF8+/6gm1r9QbJ4eGzYmze8bdEnw3cqlGgL4LkZ8HTwrU8E=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Tue, 3 Oct 2023 09:15:13 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Tamas K Lengyel <tamas@tklengyel.com>
Cc: xen-devel@lists.xenproject.org, henry.wang@arm.com,
	Jan Beulich <jbeulich@suse.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>
Subject: Re: [PATCH v5 01/10] mem_sharing/fork: do not attempt to populate
 vcpu_info page
Message-ID: <ZRu_gfHVsytln_-p@MacBookPdeRoger>
References: <20231002151127.71020-1-roger.pau@citrix.com>
 <20231002151127.71020-2-roger.pau@citrix.com>
 <CABfawhm2XMmfyx7vZvGdLZcot3=Mrrx3T5nS3vUR+Ur9j5mkWg@mail.gmail.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <CABfawhm2XMmfyx7vZvGdLZcot3=Mrrx3T5nS3vUR+Ur9j5mkWg@mail.gmail.com>
X-ClientProxiedBy: LO4P123CA0363.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:18e::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_|SA0PR03MB5628:EE_
X-MS-Office365-Filtering-Correlation-Id: 986b2af9-b6f9-4599-12bb-08dbc3e08014
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:
	+S0P6M850NiUkNz7MSQyszCVAxxRVRNeJg8sIU612ufia2KzsGwxXVxBBexIkjO4U2gurWfT5plXB11gEWnv9bLL9jPstwBuh8yaHDyrPOm5bACMmWT6cm7T6DxJOPbLElFhXphzLaKAC68lg84RhbxlmMiH4I25KpkuClZM75oBLqZKo4OCstxCB4dnHX75+tf0+I/LIKJ8ld8IfpfkrNpqxhW56d/p2UWv+jXgVPQYKzbU700lthLhEZkculZxZaWH2gijl+fbt35lEymUQYpwncRPE03JUeq+CDYeFKjJmlP+xBbdMeLY23DTpxQlzPLQgVDknncH5F4o2I2HaEPSjnMSkU55pUyQj6SfgUDqGySLrZehIDnc/dmZkhlofbLXttO53uiT5q5ZUQ1r6guOmSKH0T9xqzVKjzspSmq+tQqMbABtRVH2N3fRH4MhjCl1QurdVacTIURvHHbx1Y4iEZ2YjIfhJks90X6mqBBxPGUFA7K8JhlsqOR91Qhe1xezTBVOG5+HgbBbfFwvvdCa0I56xFMgmZd3RnZVMn0FX0DQa761FgeYPrg+zQNX
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)(396003)(366004)(136003)(376002)(346002)(39860400002)(230922051799003)(64100799003)(1800799009)(451199024)(186009)(26005)(33716001)(83380400001)(38100700002)(82960400001)(85182001)(86362001)(316002)(54906003)(8676002)(5660300002)(8936002)(4326008)(6916009)(41300700001)(66556008)(66476007)(66946007)(2906002)(6666004)(53546011)(6506007)(9686003)(6512007)(6486002)(478600001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?b2pjNXBodDB3ZnF0UjB5c28wOThZV3BBV2lucnk4Lzh5SnVRZkdzOXRURU95?=
 =?utf-8?B?ZzdBVGtJdll3M21JSUNWaEg4aTRFK096N3hwU2tkSDZtMzcxRURVNS9OdXEw?=
 =?utf-8?B?bDYxRTNrYS90dlFJbnJoRFVmR0ZSM1FKUm8yblRRRmxpQU12Qm43T2RxYko3?=
 =?utf-8?B?N0lQeDh0MWgwM3BKeXU1NzhmM0RPVUtEN3pEYzhiNTg4R2l2QUxWOUQwTDhD?=
 =?utf-8?B?RTh4bUZleDhUSWRxZ3E5RHRPVXA2MDYzUERhMHZ3NlFhdlh4cU9mV2RNY0VN?=
 =?utf-8?B?Q3ZmMlB3TGxWZVZmUnpWL1d1eUFMS2xPV041LzZiQVpxVXE1YXg4eXVGZmt0?=
 =?utf-8?B?OEJYekpzbjQvNmN4QkE0Z3ZkNFBDNGMzTzRpUi8rVytDVHJKeEFQUlUzazNW?=
 =?utf-8?B?a1BueVh4SmdkQUd5bE8veDZGenU4ZXpYdk5CSlFCQm5SMmhqRXpJYjgvTGdB?=
 =?utf-8?B?MU16L05GZ2FlaEdSdFZYaE40VThIYTFkbWozUzJtL0VFME51WVpCSHlLOWNE?=
 =?utf-8?B?ZC9iUDZBSjNhNGRFY0JWTllkeG9vNU1GcEJ4T3lFdDhab1RUdzFTNzMyRWZI?=
 =?utf-8?B?QkFrZXJrbzRzeDVLVXk1cGZ1Q0tsa3VtNGF3UGJxaWFUalo4WHhFNCtMdTcx?=
 =?utf-8?B?V2hGMFkrKzFVc0k1MWNJckVEanJ0dUNJcDNuS25jRXNDem02Q0pBSndEV3o3?=
 =?utf-8?B?bno5SHErbXVPbGMxSkVtNkcxbGdTK2FqajRZcTY5bjdjalR3UWIzMVI2UTU2?=
 =?utf-8?B?OXBiRFhVckhDYVo0bm55R20rd01lYXp3TS9mWG5WWFFuTW11UGsreXQ0dHVk?=
 =?utf-8?B?TlZCeWxvOFVSMjRDYVJ4NEhUZTVEOXBGcmJZYTZlUlU2MURRTnBrVElDQzhD?=
 =?utf-8?B?WGFVSlJGU0ZFY2FhelluekVWOGlYVmRZd3I5Z1lrbXhNT0R5aGwxS0hYQ2Zq?=
 =?utf-8?B?VVd2WUxUSkthZHc5aXhkQzFDcXJ5blUzRUhZdWJCYzdvM1RmS0QyejdXemt4?=
 =?utf-8?B?SjNBRjdiNWt0S1JQbFcrcmMyWW1MWllzaFhNUktsQXAxaDdkUnFXWW9WSHBD?=
 =?utf-8?B?MUhQTjd0dWtsZk85R1E4S0lySWd5STRoSXAvbTFvM0YvTWZYNThmbmZ3YkVS?=
 =?utf-8?B?cmtWM2hRd2N2RDZHWHdLenVNSGdQd3BqemFPbTRnYWZ3VzRrelgzL1BVcksv?=
 =?utf-8?B?Q2doSnJ6dVBJSFZwMmp0S1BwSTNZYzRENEV3SmpNRnphMTZQVFlTV0FJbFky?=
 =?utf-8?B?cG40Z0dOR3NhbFVvRjVMSkkyQkxCbktyZzBoQndtSWZJOElIWlhUMjJqakFl?=
 =?utf-8?B?RzBGK2UwV0c0Kzl2dWtLZHA3NkpwK3F5NUczSU5ORHhCRFVyZ1A2aXlhNS91?=
 =?utf-8?B?SndNUWswelhVRE5uT3d3TFRETkp0bTJrNmVsVjhmcmRzMHY3OVdWMXN4WGl0?=
 =?utf-8?B?UU1HNjY3Y0RuYnZpdVBxbUFGNUtmNWh2ZkFZUklTWkVFZHBUVU5tS2xpenVS?=
 =?utf-8?B?RVFGcXFmUmo1b1VuTktMWm5FMHo1dFlPUlF1TTVjS01NU1JPRGRQZ0hkN3ZU?=
 =?utf-8?B?eitsanBsTmFXNGtJbW96RXBHdU02UVJOYlpoNXliUExoTUlUK2lwcVdZT1A2?=
 =?utf-8?B?b1BLdEFXMVlWUzBwZkRjZmY3WGh5Z1IvL1Y0OVpaL3AwQTRaTUU0Z2lRL3Fh?=
 =?utf-8?B?dmRudDVsNU1qSjNuKzV5TS9uZVp4UmVxOXNUaU1keEtZNTNpUHdQNk1NZU1P?=
 =?utf-8?B?Zi80SzJaK2hiSjUwZmNxREFqOXpwalk2b2dLazdZamdiVHFTSjhkTzRmbnJF?=
 =?utf-8?B?cXdCR0RtK2NySXliYmQ4MWUrc3JXS1BOWVRpQUZrenVEQm84cjlEREIzY0J6?=
 =?utf-8?B?OHdDeUgxVEtiVVFmWUxEQ3UrbTc2S3RXeHZIZFR6R3ppQURtNkxSc0RQR2sr?=
 =?utf-8?B?aUwwV253T3lJVFNnbzZBM3FZL01hM3BFTmJXNFJLeGRRdTRsK2JwY0wraHRC?=
 =?utf-8?B?Y3JyQmVlZGNGSGVveS9xVmhoUFZEN2hRb0VmMlIrQlVLNWJPb1VJcEJQN3Jw?=
 =?utf-8?B?UytYWTlER3FsT0h0SkFZbHVFSFhxUWJyUU5md1A1RFNLMHA5cGJkK1dDdVlB?=
 =?utf-8?B?WUE1VnVpeHl0SmpNV2lNVUVpQmY5d3dBKzlGbWJycVl3Rk54bHl3QkVuR2pz?=
 =?utf-8?B?akE9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	e3BCRQAUzHusEmfKKQBwHJEY7vMPMXA7zGcqPyhQpNf7Xsh19IcuKKLcHY6Roufwc5G8cU1plyhlC35iAQckxesoFqJmZYYmp4pruIzrOqmBdxBXH7mfIwZ8o+laxkVqoX9WlqXZi5fI1/5WlhbVrtcJGBeCnvfFHaoMt2ahPKqAGJQdBtOoyp2bAXObCiyjB/5TA0c9Nk3tbRErceyoH07LDXTxOTm1SFrspdymHkrowz6MqxJIF0iHt6fA+TKo1PrMFpN4+4yVNCxb/T11wevFP1knOYIC41tBvlOvBMhWKJkDxuHCj/1s3+Wtb445gI5wU/xlfSQQ7SAYz3NIhH2YyKG2LZ+UjRx+BMtygtJOoF7mxDHCciubqWdvlZ7kDI5Re0I89O20UOjZcm0Il8x5gf6UyqN7uMSmCubHFt6fyjAhrXWQzb2ki52kT6Wfdtb88SY58oIyTnTL2blp6+2itI/8b/j++RFMCRo6Pvm0zgB4LMwBLEIOELr1pwTc2pFAz0Ej/1bWrDQC8K4xdFSVE+mL5ZoDXdL1k01Sr38n5hDrTgtQsvVOwVIeDmWZ5yKTm5Q03p7qj1s2MI1xz+cPHUKcAzCtp2dvGsQXJsvO6BpxwDgk5XxzhxVraJ70N8TzhcQOCokDMIENMQx10y9IxfqyHkjuy4xVPuGqVjYzWn3LzIwCmIn2p6V9u4YqBDnJ577x2E3KSKL3QCAma7EFTUbv9b9soMzSZSJorYxWdxfyoOL77DN6aLU6yrPNJLf6HZYEE98b8xZyqP6E8SFmJFXY1hemnKJxHkYNGg6uENTJLwyGwOT8nNuHuRxR4clzDO710ntmQ82fvIk1I8ntW4V/QXGV/7PzBbRmg8DmgnOD37jG7Wc61m3LHbNe
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 986b2af9-b6f9-4599-12bb-08dbc3e08014
X-MS-Exchange-CrossTenant-AuthSource: MW4PR03MB6428.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 03 Oct 2023 07:15:19.5368
 (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: Kly59IHZ6Lb/C1BhkQGIPpFZyAuiN70jD+I95WUyGnv+dEaP2LD+1D1EZrzU0favz20Itsw3shuXnbN9AjT5yA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA0PR03MB5628

On Mon, Oct 02, 2023 at 01:05:24PM -0400, Tamas K Lengyel wrote:
> On Mon, Oct 2, 2023 at 11:12 AM Roger Pau Monne <roger.pau@citrix.com> wrote:
> >
> > Instead let map_vcpu_info() and it's call to get_page_from_gfn()
> > populate the page in the child as needed.  Also remove the bogus
> > copy_domain_page(): should be placed before the call to map_vcpu_info(),
> > as the later can update the contents of the vcpu_info page.
> >
> > 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.
> >
> > Fixes: 41548c5472a3 ('mem_sharing: VM forking')
> > Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
> > ---
> > Only build tested.
> 
> So this will allocate & map a page in, but its content won't be
> matching that of the parent. Is that not an issue? If there is no
> state on this page the guest is going to rely on, it looks fine to me.
> But if the guest may expect a certain state to be already setup on
> this page we could run into weird issues in the fork, no?

mem_sharing_fork_page() will do the copy from the parent, and this is
what gets called from get_page_from_gfn().

map_vcpu_info() might change some of the vcpu_info contents when
compared to the parent, but such changes could also happen without the
fork, and the guest should be able to handle it just like any update
to vcpu_info.  There will likely be an spurious event channel upcall
injected depending on the delivery method selected by the guest, but
again this could also happen without the fork taking place.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Tue Oct 03 07:18:35 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 03 Oct 2023 07:18:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612069.951920 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnZfu-0007Zc-BR; Tue, 03 Oct 2023 07:18:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612069.951920; Tue, 03 Oct 2023 07:18: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 1qnZfu-0007ZV-6x; Tue, 03 Oct 2023 07:18:34 +0000
Received: by outflank-mailman (input) for mailman id 612069;
 Tue, 03 Oct 2023 07:18: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=N/VM=FR=citrix.com=prvs=63394bc6a=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qnZfs-0007ZN-LD
 for xen-devel@lists.xenproject.org; Tue, 03 Oct 2023 07:18:32 +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 0d3f9d8f-61bd-11ee-98d2-6d05b1d4d9a1;
 Tue, 03 Oct 2023 09:18:30 +0200 (CEST)
Received: from mail-dm6nam11lp2175.outbound.protection.outlook.com (HELO
 NAM11-DM6-obe.outbound.protection.outlook.com) ([104.47.57.175])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 03 Oct 2023 03:18:25 -0400
Received: from MW4PR03MB6428.namprd03.prod.outlook.com (2603:10b6:303:123::8)
 by MW4PR03MB6652.namprd03.prod.outlook.com (2603:10b6:303:12f::15)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.25; Tue, 3 Oct
 2023 07:18:23 +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.035; Tue, 3 Oct 2023
 07:18: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: 0d3f9d8f-61bd-11ee-98d2-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1696317511;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=bxV5iThqqw8QuDpQVMviTMLSSnO3RkXvsXBEcwUvzbg=;
  b=SgTQyI4LlS3+1vDRC6idqw/IXfGv74sUuBU4atd8churJc3ogSfU4ROt
   Ps+m2lYVNMrvfBoFyG5pa3MlpVmn8mHjxnc9TtUN3UukTv1jJLMoK68pr
   vt5qEqI186Z4D46pkhg6+HOYMbgAPqqgwm0ndfr9/JkH/Y/NsgwD21am1
   E=;
X-CSE-ConnectionGUID: C4sgwygvQl+3KUkH85lbCA==
X-CSE-MsgGUID: o6vEmMfLQwKGM+hZlgSWQA==
X-IronPort-RemoteIP: 104.47.57.175
X-IronPort-MID: 123078971
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:YUeDi6rEzPeGiQVht1pPBB4bR/1eBmIJZRIvgKrLsJaIsI4StFCzt
 garIBnVaayOYTH0coh3bI2yoEwP75fXmNcyHAY/rSBgH3sXoJuZCYyVIHmrMnLJJKUvbq7FA
 +Y2MYCccZ9uHhcwgj/3b9ANeFEljfngqoLUUbOCYmYpA1Y8FE/NsDo788YhmIlknNOlNA2Ev
 NL2sqX3NUSsnjV5KQr40YrawP9UlKq04GhwUmAWP6gR5waGzyJNVvrzGInqR5fGatgMdgKFb
 76rIIGRpgvx4xorA9W5pbf3GmVirmn6ZFXmZtJ+AsBOszAazsAA+v9T2Mk0MC+7vw6hjdFpo
 OihgLTrIesf0g8gr8xGO/VQO3kW0aSrY9YrK1Dn2SCY5xWun3cBX5yCpaz5VGEV0r8fPI1Ay
 RAXABtRdR+clu2o+bb4EcpRheRzcc3hF6pK7xmMzRmBZRonabbqZvyToPN9gnI3jM0IGuvCb
 c0EbzYpdA7HfxBEJlYQDtQ5gfusgX78NTZfrTp5p4JuuzSVkFM3jeeraYWIEjCJbZw9ckKwv
 GXJ8n6/GhgHHNee1SCE4jSngeqncSbTAdhJTOLop6Ez6LGV7mtNFjATcFWfmOaapWv9W+BbJ
 HcrwwN7+MDe82TuFLERRSaQpn+PuRoVHcRdD/c77gClwLfb+AufCS4PSTspQMwrsoo6SCIn0
 neNnsj1Hnp/vbuNU3Wf+7yI6zSoNkA9NnQebCUJSQ8E5djLo4wpiB/LCNF5H8adi9z+GTj0h
 TeQviU6r7wWgYgA0KDT1UDKhTOl4ILAQQ886gzUWX+N5wZ1IoWiYuSA4EnS67BDMYOQVB+Bt
 XwIltK25eUCS5qKkUSlS+ILB6yt+/eDPxXWnFF0Ep8usT+q/haLf4pd/TV/L0dBKdsfdHniZ
 0q7kSNc4oVCekSja6Bfapi0Tc8tyMDIF8nhV/3SRspDZN52bgDv1Ctjf1KK1mbh1k0li7giO
 IyzeNypS30dDMxP8j2yQOsM1K4x8Qo3z2jTWJPTwgyu1PyVY3v9YagBGEuDaKY+9qzsnenO2
 9NWNs/PxxABVuT7O3DT6dRKcg1MKmUnD5frrcARbvSEPgdtBGAmDbnW3K8lfItm2a9Sk48k4
 02AZ6OR83Kn7VWvFOlAQioLhG/HNXqnkU8GAA==
IronPort-HdrOrdr: A9a23:DHDx7amxkl3BwyMkQ+JRR1cz8fPpDfLo3DAbv31ZSRFFG/Fw9/
 rCoB17726QtN91YhsdcL+7V5VoLUmzyXcX2/hyAV7BZmnbUQKTRekP0WKL+Vbd8kbFh41gPM
 lbEpSXCLfLfCJHZcSR2njELz73quP3jJxBho3lvghQpRkBUdAF0+/gYDzranGfQmN9dP0EPa
 vZ3OVrjRy6d08aa8yqb0N1JNQq97Xw5fTbiQdtPW9f1DWz
X-Talos-CUID: =?us-ascii?q?9a23=3ALKzegWv7jfpfEASrElkSjNm36IsOLmbS02bfPXa?=
 =?us-ascii?q?8Sj1Kdb61GQKU8ohNxp8=3D?=
X-Talos-MUID: =?us-ascii?q?9a23=3A4zhhNwxLKTlboIJcpT3eRXms75uaqKPwFm0ItJs?=
 =?us-ascii?q?igtanGgkzOwWZgw+Ie6Zyfw=3D=3D?=
X-IronPort-AV: E=Sophos;i="6.03,196,1694750400"; 
   d="scan'208";a="123078971"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=nC+yM5KTgjVGvHt20xwxe7HNum2m5yqiY0fH/DvcrktddJoVlkPJt4IlZtyPArUJ2/bJ89g5pNc1HGn0X2GMX5nD2fH5M9hU01yJ21glMyvA5R7FlN5n2nsEGSi6kCHZy08lNZ176V+VoTi7J5ZndcdNaK54RfU5N4EU0mh4ZJb/5wfsJ4FoQeZTZ4hLZ1kiobokhLatNMqDbluo9RgOMovMUHgGBrAYJguqV2fTIvbejJ57wNNAGHL2ikWSNF6y0VPZEkv/z5uf7WlXQhApXP+zuq0eeVVmlhdJO3QoTgLv9Ux4mTY05S6yzSIF4SM0Ktu7r9tQAGvJa6SgwzpLig==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=I7rl69jIeMBWqT+PDZP16nV3Fk//DKmaif0o/A6sywQ=;
 b=bZIoCg+7318i6sYSQzDSf/d02R7fA7rsZ9WP8dhPBzVeQlHFk/HvNlU/K0lsqCA8vnP8D5VXLWzXRT1VGyv6FoNntdHbaLFTl+V6SNQ7yE+9VaWpUbqJRQRs+9XDBbR8vMWssBh8Jn4LTeZqhbS/ZS4eCHEqUj6mefbp0f81puHecK8Rmk61NOlxhmjfiZ22/OQnP7eJD450AlK65Rq0BYIZqS+FClyzLRzzhmF0XKabMJAmtoUhTSvUUfLX1bltPzXWW1ZDMuACtHUXRQyt8zA4gwbJdNzTGC0mln/riOPm6zsZLvt5ZzgLTSrriPCZ6UkYg5FBFNwpIH1EvhkmtA==
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=I7rl69jIeMBWqT+PDZP16nV3Fk//DKmaif0o/A6sywQ=;
 b=csYszKeWFvrj2GlwiRX7LNC/em90Z7Xw8KL7k+Jfq/Vngy/6So6HDQDtHcqSesJK/LwPlfREeWatyTDyilkyNKe0CQCK9U/8udleKwUbFrO07CISY6EYj71c6Ruc5jR6vk12kLzg8cybHS96flM9xdVGqsvDR0R66fSy27ce2xc=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Tue, 3 Oct 2023 09:18:17 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@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, Henry.Wang@arm.com,
	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>
Subject: Re: [XEN PATCH 1/7] xen: add declarations for variables where needed
Message-ID: <ZRvAOdKKD6T6l2cK@MacBookPdeRoger>
References: <cover.1696232393.git.nicola.vetrini@bugseng.com>
 <357a35c3035d0f8659a64d767791bc41d57494d3.1696232393.git.nicola.vetrini@bugseng.com>
 <ZRqkbeVUZbjizjNv@MacBookPdeRoger>
 <872f44542c8df6dab79965375376010d@bugseng.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <872f44542c8df6dab79965375376010d@bugseng.com>
X-ClientProxiedBy: LO2P265CA0380.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:a3::32) To MW4PR03MB6428.namprd03.prod.outlook.com
 (2603:10b6:303:123::8)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: MW4PR03MB6428:EE_|MW4PR03MB6652:EE_
X-MS-Office365-Filtering-Correlation-Id: 43f2d4b6-bc28-4e98-b3fd-08dbc3e0ed92
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:
	aEV6iN725Zv1BWdTIKEi+pra6knjzXuJl8qVMNDGevtSeF5h4+U0m+pInTtswVYt7ytIl+JLMfE+Zt5oWcLMc98iMn7CjyY9MluErmVo5aP8LVC+Ekoma6syXtw8a1MdpDujgfEnJjCV5on7oBF9uAlYobIE0bCSOBhwxEO9flbgve9G0ijA9VBN/ID3COJdY4ct9nl0tzrcmtP4qU07gQaNaMqyftaFbrSjLmXN/WNlXfk9TReJdePj6sMT34KqcltZyy8x5Hhmz1kGXGmVaLG+vb44slX5gHE2FbVmYTw5xWlhHfm5PvI7LVDerQk7K7K4G6euqo5iYx84IFYYhcwB1UrZFV/72udb1TmhjHg+/Nh/rD7n16xIjNomk5tTGjsvpmTJv7b6ru33d/12cl0joFByJys3DZqmZGKyN0JJlMxuJWMcDCqeR5BDXKuYI4OP5VdSdG/ussMYAk8FKi6irQ0OsQFXUrDq/20BHH17V1dbf/Auv7wepaiOFpYjhUgg+edJY9XmEEclZQrpoe11hlkp6xriSx3yt1Uzz1PNO8LjADXXfKJwz5C4F0bY
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)(136003)(396003)(366004)(346002)(376002)(39860400002)(230922051799003)(1800799009)(186009)(64100799003)(451199024)(66946007)(66476007)(66556008)(54906003)(26005)(6916009)(8676002)(4326008)(316002)(41300700001)(478600001)(85182001)(83380400001)(6506007)(6486002)(82960400001)(38100700002)(86362001)(9686003)(6666004)(53546011)(6512007)(33716001)(2906002)(7416002)(8936002)(5660300002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?dlJQWHE3V1UxOS9JTEs3ZUpoZTYvOERjY1N3Qks4Y0laYk9KOWVDTW13WHBr?=
 =?utf-8?B?QUN3UkJSQ2laL2J0UkVsZkt2allHM1c5RTN2ZWFmZkpQU0ZGZiswVkF4TTVr?=
 =?utf-8?B?WEJ2S2JvRkUrZzh6ZEdOM0ZpR1ZEbGdySDE3dktKa0JnUEt1UHQrdnZJRW1R?=
 =?utf-8?B?T1BINmJDZmVwajF4eWxGYzhBMTJ4alpmcnQ4U0VZK1ZKblJEMWVJSE8vbzJR?=
 =?utf-8?B?aUh2dUhmeVUreFZlanZFNmRaWFhXbGI5RVBwdDBqUU5xQTRYYUxtY1Mvc3F1?=
 =?utf-8?B?R2pjWU5YSnF6cXJQN3hsVkVrTXd4YnVkd1orSGlzQ0ljeEdUd1ZYaUUvYm9i?=
 =?utf-8?B?Wk5rUS9MUkNTUWcxTWUybTJ4b2tUbEhoeFRBajRHa3hYK0wycG9IdGV2eTdU?=
 =?utf-8?B?cmtyTnNteXRGN2xwUkljS0RFNWNXUTlJRDZldXdHMXE5ZERITVF4bk9DYklt?=
 =?utf-8?B?d2FwMnk4OWkrdDZtOGcrZXVCNnpUMlp6TUFJZlJjOEZ4WVU4MTc5bkhIc1JK?=
 =?utf-8?B?NUw2NEFHa2Y2VHI2dHV1ak45dnYvK202cGFVZWNvNW5HNjBQc2xDVGwzZ2tM?=
 =?utf-8?B?WDZvdXJlMS9Kaks0aUhtOWtZTVViU0Y4RW9hV2tBSkJhOFVKcjFsVHp2a3VK?=
 =?utf-8?B?bFV3bWNHd0h2a21LQlRidlphSXVneVI2TVAxbi9Wbi9abTAzck1xUEIzbUlj?=
 =?utf-8?B?T3lYTDBKUUJiL3ZzUE9nMWVwd1FnK01SdmVzUzB0TGhBVFJwVXQ2RFo5OVZI?=
 =?utf-8?B?TEp0ZG1CL3FRMjVKaXk3K20rb3NhTnVDSWlNVlVuNzJzU3ZnYWl0VElKMVpW?=
 =?utf-8?B?VDAvMlhSUXNHcTE2WFNkdHhOZ2JDZEU1dGRQQ3J2RkVuQTJIbU5hVmtOVDJZ?=
 =?utf-8?B?NitZSUt4RFN6K0doUk10YU5Dell4WjFka3NiZW5pOTZrRVVoR2dXc0ZMTkRv?=
 =?utf-8?B?U0VRRms3eW5RQlFzbi9hZGhGMXB0TkRtVWc0NHRCeEVEZE13UVhnbXNuMzgx?=
 =?utf-8?B?aTFNRlprY0oreHExZXRxNGwxUjA2bHN4Wm1nbnJ3UC93alRnNDRUcUFGTVNp?=
 =?utf-8?B?bk5razNSWXd5bUlJWGNKWEdrVmNCTTRNbHltUWFFR0ZTR0JONmNpYlV5OEdq?=
 =?utf-8?B?NkhhbHBLZUxYemd6YktJSDBmZ0ZEZHhWN3FENm9wandEalNnZVcvN3Izc05r?=
 =?utf-8?B?YWJuSnVuQStiMjZrMSsyMFB0RUdhdkk2NWxDU0ZmTE5QSmtHOVdrUHZ6RjlK?=
 =?utf-8?B?RWpMbVFDSzdLN0dUcURxWHExQjVzaUpFUFZJUUpmMnE3aW1taENzSGQ0L3BE?=
 =?utf-8?B?VU9TS0FUNG03WXNCVzRSVUt3bVZtQ0RaK2c3ZkJRMnN6V2k5ajREaXlZekhH?=
 =?utf-8?B?RGgxbzdxbkJtZVBoc2N1R2JsL0E1THNJVVd0TmdGWmpTZnVhOHpGY1A2NkFa?=
 =?utf-8?B?SFk3THdrZ2ZqRGlHQWp2Y2UzdE5WOWNra2V5WHVoQ08rN1NDSDQ3cVZHY3gw?=
 =?utf-8?B?MTJEb3pjY0hxN1krUHBJZEt4bHUxVTdDVlY3SnpqY0JVSlI2ODV2bkpkdHlJ?=
 =?utf-8?B?RHViMDJvVHFGbFBnSStEUUs3eFdCdU9BbWxrU0lJY3pSZGh1a0U1cXhwMHNT?=
 =?utf-8?B?NFNOYjlPdVVMd0xuRlhYclkvNlRUUWNKWFNtSSs5WlFoaUlxSFQxVFMxMmt1?=
 =?utf-8?B?N0JsQjErOEUwb1c5Z0FBdFFXbEliYWhnWnd2OE5wclJlVzdVeHdnRkJMUm1w?=
 =?utf-8?B?Y2lnNW5mVEZLV2dBYy92M3RjaTZuMjdlMVhJUGRNdjByZWEzLzV6WXhoTTF3?=
 =?utf-8?B?dG84azRtTDU0QThVMUtPYXZtbVdjRi9UaFZHR1VKbUJhNWJYbUFQN0orZEVU?=
 =?utf-8?B?NU9pc0FuYVFBMDFyRkw0dnJsZEZpYktSb0NhZFBOTXNkc0dQU25MT2ZoM1Jw?=
 =?utf-8?B?bUluMmtCR1B1Mml4SXhGYlFJN0J3aUQrWFlIN0o4V0RyWFA2TTBXMUxkT1k3?=
 =?utf-8?B?ZEh5U1J2Um00cjZ0WGtpdURqbjN6UEpub3Y3SzZSSXdOeGJUbm52QTgyTU14?=
 =?utf-8?B?MHlmTENVRlQ1ZEV5NkZwTXYzcnBUYTduVDZHT0lSWmZFNDJXZDVDeEhNMmhi?=
 =?utf-8?B?OUpxbWMzcys0VFRYa05CY3FGU0s1c2JSTFpFNkdYQjFjTGZid2hYNWFRNS9W?=
 =?utf-8?B?UWc9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	=?utf-8?B?S3FSVEFlYngvdE5mcjB0NGRpR05qTW1mbFFyK0xLUGM1WHVsaXZpekZFY1Nm?=
 =?utf-8?B?Qi9KYnNwNHdjaytZZlpjY0QvSFREd1YyRW02cFJKdEE5eHEzL3laOGRFTjJX?=
 =?utf-8?B?RVMvSUtkcXdRT1JYelB3MmExdy9YV2V1Y2hQUTZUSGloQVJkenRMb08yQkp3?=
 =?utf-8?B?RHhUR2NxeTBtTDNacHdrbEtlaWRQd0ord043QU13Z0ZMU0dDM2haTHl4RnUy?=
 =?utf-8?B?ZVBCZW1rWHB0ek5PN1FsYlY3V2s1aUdySW1KbkV4ekp4RlFSQXpuQ0VsNEZZ?=
 =?utf-8?B?bEdLVmdKZUYxeXpzTjFnYVZCZC9Rb05RUzZ2T043MElWODRvRkRLSkxDbFAw?=
 =?utf-8?B?bTM1TjQvWGtjWkxCQUcyZy84M0MwMkcvZnJZbGUrK3M0YVFWN2ZUUGUxMjhO?=
 =?utf-8?B?dmw5UE5mOHQxVTUrV0pjOUJLZk1WZWFPNFFVK1ZYRG00NnI1ak9PczZTd2hq?=
 =?utf-8?B?bG8xdmdYT2R4N0RaUjIwMVhqbzI4cE9wUWJKajJqV09SOVdjQ2lqdUY5cUNn?=
 =?utf-8?B?QkZ3dWdJSXd6cTBhN0JpanFqb2RpUzNvak0rK2ZZcVNSM0lHY2d1U1EyU2po?=
 =?utf-8?B?UkplOU1Kd09EWFRxemF4cEY4RDg5c0J6dDZ5cG81Ly9XMGgvVlBJdTFTOWM3?=
 =?utf-8?B?ZTNGOUtjZkJ4aDZ3K2RuYjI1czNVK0Fad3FJNEpqaUlnUklHek9UZUlSaU90?=
 =?utf-8?B?N3RmZ2NJK3UvbUtKZkkyWXBlM29pZ1NPSzV3VmNwR1grWkovalFHam1LWGF4?=
 =?utf-8?B?S3FuS3BmL1Y5UGpldUVUY3Y3NEtsUFJ0TEx6MWZDK2RoQlN4UFd3bEdiOU1M?=
 =?utf-8?B?aU81K0Z4NTRDUUdEVTcvb25IdENleWsxcXJyWXh4Ynd0S3hzTWwwcWNnS2dr?=
 =?utf-8?B?d1BMelBtWjZ1WFFnTkpFRjllUktxSHQ0MG5DMlNLaHM3N3RPMnZsaDJGNHd2?=
 =?utf-8?B?eVFHcDgwQ1hNdGJRUk5Zbi9Jd2xmc2lLNk1reXVDYTEwTDJxcVJlSGV1UlFz?=
 =?utf-8?B?amVZSTdHa3ZTVW9hUTQraWdla1RYZ2xpRmk5SkhXWkFxTUR4TlZGRDZ4SGN3?=
 =?utf-8?B?WU9zSU1nb25qUno4NkR3ZkZVbU5sMUhmZis1WDY0MVdBM3JGdjcwTXYwaWdh?=
 =?utf-8?B?bm4vSTg1b1pvTVV4WmFVREl6ZzRJKzhVMm5PK1NhVks4Q1pZZWNhUnVIWThQ?=
 =?utf-8?B?T2JaSEdYUEFsZEY5NTI1MlQ4T1g4UWNXRnJ3a2xrNWZ6bE1jZmlnNzNtNTIv?=
 =?utf-8?B?WVNqcHlFa0h0R1h3bmZaeUdod2xnNXBHakh4Qys1aGppV1V4Zz09?=
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 43f2d4b6-bc28-4e98-b3fd-08dbc3e0ed92
X-MS-Exchange-CrossTenant-AuthSource: MW4PR03MB6428.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 03 Oct 2023 07:18:23.3514
 (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: 9Dr0+70NrWkNciMMsxK0BQpGm0qnOCvaG6ccRfJZiwXnOwQiD8gNvJCHTf9em/b15ISPwq2gHTmVlawF4v7BCw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW4PR03MB6652

On Tue, Oct 03, 2023 at 09:05:34AM +0200, Nicola Vetrini wrote:
> On 02/10/2023 13:07, Roger Pau Monné wrote:
> > On Mon, Oct 02, 2023 at 09:49:44AM +0200, Nicola Vetrini wrote:
> > > Some variables with external linkage used in C code do not have
> > > a visible declaration where they are defined. Providing such
> > > declaration also resolves violations of MISRA C:2012 Rule 8.4.
> > > 
> > > Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
> > > ---
> > >  xen/arch/arm/include/asm/setup.h  |  3 +++
> > >  xen/arch/arm/include/asm/smp.h    |  3 +++
> > >  xen/arch/x86/cpu/mcheck/mce.c     |  6 +++---
> > >  xen/arch/x86/include/asm/setup.h  |  3 +++
> > >  xen/arch/x86/irq.c                |  2 +-
> > >  xen/arch/x86/platform_hypercall.c |  3 ---
> > >  xen/common/symbols.c              | 17 -----------------
> > >  xen/include/xen/hypercall.h       |  3 +++
> > >  xen/include/xen/symbols.h         | 18 ++++++++++++++++++
> > >  9 files changed, 34 insertions(+), 24 deletions(-)
> > > 
> 
> > > diff --git a/xen/arch/x86/include/asm/setup.h
> > > b/xen/arch/x86/include/asm/setup.h
> > > index dfdd9e555149..3c27fe915ed4 100644
> > > --- a/xen/arch/x86/include/asm/setup.h
> > > +++ b/xen/arch/x86/include/asm/setup.h
> > > @@ -13,8 +13,11 @@ extern char __2M_rwdata_start[], __2M_rwdata_end[];
> > >  extern unsigned long xenheap_initial_phys_start;
> > >  extern uint64_t boot_tsc_stamp;
> > > 
> > > +extern char cpu0_stack[STACK_SIZE];
> > >  extern void *stack_start;
> > > 
> > > +extern unsigned long cr4_pv32_mask;
> > 
> > This one might better go in compat.h, albeit that would require it's
> > setting to be gated to CONFIG_PV32.  setup.h is IMO for init time
> > stuff.
> > 
> 
> Ok
> 
> > > +
> > >  void early_cpu_init(void);
> > >  void early_time_init(void);
> > > 
> > > diff --git a/xen/arch/x86/irq.c b/xen/arch/x86/irq.c
> > > index 6abfd8162120..604dba94b052 100644
> > > --- a/xen/arch/x86/irq.c
> > > +++ b/xen/arch/x86/irq.c
> > > @@ -43,7 +43,7 @@ int __read_mostly opt_irq_vector_map =
> > > OPT_IRQ_VECTOR_MAP_DEFAULT;
> > >  static unsigned char __read_mostly irq_max_guests;
> > >  integer_param("irq-max-guests", irq_max_guests);
> > > 
> > > -vmask_t global_used_vector_map;
> > > +static vmask_t global_used_vector_map;
> > > 
> > >  struct irq_desc __read_mostly *irq_desc = NULL;
> > > 
> > > diff --git a/xen/arch/x86/platform_hypercall.c
> > > b/xen/arch/x86/platform_hypercall.c
> > > index 9469de9045c7..e4dbec73d784 100644
> > > --- a/xen/arch/x86/platform_hypercall.c
> > > +++ b/xen/arch/x86/platform_hypercall.c
> > > @@ -36,9 +36,6 @@
> > >  #include "cpu/mtrr/mtrr.h"
> > >  #include <xsm/xsm.h>
> > > 
> > > -/* Declarations for items shared with the compat mode handler. */
> > > -extern spinlock_t xenpf_lock;
> > > -
> > >  #define RESOURCE_ACCESS_MAX_ENTRIES 3
> > >  struct resource_access {
> > >      unsigned int nr_done;
> > > diff --git a/xen/common/symbols.c b/xen/common/symbols.c
> > > index 691e61792506..7c3514c65f2e 100644
> > > --- a/xen/common/symbols.c
> > > +++ b/xen/common/symbols.c
> > > @@ -21,23 +21,6 @@
> > >  #include <xen/guest_access.h>
> > >  #include <xen/errno.h>
> > > 
> > > -#ifdef SYMBOLS_ORIGIN
> > > -extern const unsigned int symbols_offsets[];
> > > -#define symbols_address(n) (SYMBOLS_ORIGIN + symbols_offsets[n])
> > > -#else
> > > -extern const unsigned long symbols_addresses[];
> > > -#define symbols_address(n) symbols_addresses[n]
> > > -#endif
> > > -extern const unsigned int symbols_num_syms;
> > > -extern const u8 symbols_names[];
> > > -
> > > -extern const struct symbol_offset symbols_sorted_offsets[];
> > > -
> > > -extern const u8 symbols_token_table[];
> > > -extern const u16 symbols_token_index[];
> > > -
> > > -extern const unsigned int symbols_markers[];
> > > -
> > >  /* expand a compressed symbol data into the resulting uncompressed
> > > string,
> > >     given the offset to where the symbol is in the compressed stream
> > > */
> > >  static unsigned int symbols_expand_symbol(unsigned int off, char
> > > *result)
> > > diff --git a/xen/include/xen/hypercall.h b/xen/include/xen/hypercall.h
> > > index f307dfb59760..12de5a69b5b1 100644
> > > --- a/xen/include/xen/hypercall.h
> > > +++ b/xen/include/xen/hypercall.h
> > > @@ -24,6 +24,9 @@
> > >  /* Needs to be after asm/hypercall.h. */
> > >  #include <xen/hypercall-defs.h>
> > > 
> > > +/* Declarations for items shared with the compat mode handler. */
> > > +extern spinlock_t xenpf_lock;
> > 
> > I'm confused about why this needs to be moved, AFAICT xenpf_lock is
> > only used in platform_hypercall.c, and the declaration is
> > unconditional, so there's no definition without declaration issue.
> > 
> 
> The violation was on ARM code, because of a slight inconsistency:
> xen/arch/arm/platform_hypercall.c:DEFINE_SPINLOCK(xenpf_lock);
> 
> xen/arch/x86/platform_hypercall.c:extern spinlock_t xenpf_lock;
> xen/arch/x86/platform_hypercall.c:DEFINE_SPINLOCK(xenpf_lock);
> 
> therefore, by moving the extern declaration to the common header there
> should be no issue.

Just make xenpf_lock static on arm, that would be a better solution.
The only need for the lock to be global is because of compat code, and
arm doesn't seem to need it.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Tue Oct 03 07:29:00 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 03 Oct 2023 07:29:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612105.951930 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnZpu-0005Tt-85; Tue, 03 Oct 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 612105.951930; Tue, 03 Oct 2023 07: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 1qnZpu-0005Tm-5I; Tue, 03 Oct 2023 07:28:54 +0000
Received: by outflank-mailman (input) for mailman id 612105;
 Tue, 03 Oct 2023 07:28: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=6Pu2=FR=amd.com=Michal.Orzel@srs-se1.protection.inumbo.net>)
 id 1qnZps-0005R6-Nn
 for xen-devel@lists.xenproject.org; Tue, 03 Oct 2023 07:28:52 +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 7e9a7cd5-61be-11ee-9b0d-b553b5be7939;
 Tue, 03 Oct 2023 09:28:50 +0200 (CEST)
Received: from PA7P264CA0336.FRAP264.PROD.OUTLOOK.COM (2603:10a6:102:39a::16)
 by CH0PR12MB5387.namprd12.prod.outlook.com (2603:10b6:610:d6::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.33; Tue, 3 Oct
 2023 07:28:44 +0000
Received: from SN1PEPF0002636C.namprd02.prod.outlook.com
 (2603:10a6:102:39a:cafe::f) by PA7P264CA0336.outlook.office365.com
 (2603:10a6:102:39a::16) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.33 via Frontend
 Transport; Tue, 3 Oct 2023 07:28:43 +0000
Received: from SATLEXMB03.amd.com (165.204.84.17) by
 SN1PEPF0002636C.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.6838.14 via Frontend Transport; Tue, 3 Oct 2023 07:28:43 +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, 3 Oct
 2023 02:28: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; Tue, 3 Oct 2023 02:28: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: 7e9a7cd5-61be-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=dMnH2VuC5AGAHBZs4ruyeuMdcqO8ht486pjDtp03FA8AYVfhaTYHkH7uJSzDFaJq17/7i9MgI2rFIV/I6CJkRRaIl6fxAQUCYBXSOy0EKdVfTjJQxfH9uhdeSuG1xnK9+oVodx1mGINODqt2Y9Mc75SkXALFK0oWLVw2UeGp/1ox+yu8O6bzdLoBnVuctyxyqeOUQhuEzn1dVAyZ+fVP6DwblQF9NikXBdQmF1Z6yYZPQSEAdn9qIpqbsbaeXSmkShdBp0faieuIbHKEyGXrJnxLfPxZLGIV3iOFbH3Sex8mnMtGHO1D+TGq3Q5HRiOo4jPM+WGfBHzJ7iasZNB7PQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=HzYn/sWTi8kNzsEGpoICXUY9FIypDLLDGt8fFR14bmc=;
 b=kg6oTrpF7eK/2+nFstdDIFbk+JR40+wwauN7CzUfV4pXP71ydjyGcMDvhL6IJZi6aCrYe4TJDU5Q6Mu5DjFfO+g1fE8r2v4x4dzE7LiBPyobZI87Qvuzza+4uTUz+XQKkelL4tnMXmCOXZlSzbe3ZpwtpDGglSTAAz4d+bbfBlwzCJVXIIkvaSVpxuhJ6lZRbUmt8xuozli7AaIHli+/GWuT/Zzhlk+21d/kWVytRKuuRYcF15XiVzmqm/LNQrMcFYV3l8fBz1bGH4IsmgKeF4xXTt6NVoBCR5gUERooEKs+BqDLZoKxny6CehGflmwTPMsEeBRwseKli4fx7t8mfg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=gmail.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=HzYn/sWTi8kNzsEGpoICXUY9FIypDLLDGt8fFR14bmc=;
 b=k4LoiB7U7lOQUJzNTVur+RA+6hmced7lwHNPANNnGPnudfsE1Nx1yjoYLvH5XthPBSM4RsmpY8BCT/HVP/Fx9J++oLZ2CRxp8/DVgpJzxfmDcsjQ7iE3/FVUON7EWFczKOK1tVcH2XAuf33jfNYMLiZbkj76I2Ilr3KRO+B6K7g=
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: <c101624b-96a3-30a4-b3a9-344dad5e8fa5@amd.com>
Date: Tue, 3 Oct 2023 09:28: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.1
Subject: Re: Fwd: changing Dom0 data during smc call inside of xen during
 cache coloring
To: Stefano Stabellini <stefano.stabellini@amd.com>, Oleg Nikitenko
	<oleshiiwood@gmail.com>
CC: Julien Grall <julien@xen.org>, <xen-devel@lists.xenproject.org>, "Carlo
 Nonato" <carlo.nonato@minervasys.tech>, Bertrand Marquis
	<bertrand.marquis@arm.com>, Stefano Stabellini <sstabellini@kernel.org>,
	<Stewart.Hildebrand@amd.com>
References: <CA+SAi2tXMupikB2YgEXuq98KnOcqm6zWrk19rNvWTfzf2=ku-w@mail.gmail.com>
 <dba88398-3aef-4541-a8e8-8fd075c0d40e@xen.org>
 <CA+SAi2tHLVDj+q8KMD7OuhHoj0sSZ-39qs3Z94WGmL2OA3TM_g@mail.gmail.com>
 <alpine.DEB.2.22.394.2309281447180.1996340@ubuntu-linux-20-04-desktop>
 <CA+SAi2vZie+PcKgkAbLxcaimG7strkWot1z4LTpCGLeJxuaT2g@mail.gmail.com>
 <CA+SAi2u2auZgzQh_s+pFspH1YLN4biCf0K7-V7NGWPZQjGoH0g@mail.gmail.com>
 <alpine.DEB.2.22.394.2310021608180.2348112@ubuntu-linux-20-04-desktop>
Content-Language: en-US
From: Michal Orzel <michal.orzel@amd.com>
In-Reply-To: <alpine.DEB.2.22.394.2310021608180.2348112@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: SN1PEPF0002636C:EE_|CH0PR12MB5387:EE_
X-MS-Office365-Filtering-Correlation-Id: 79bb6750-e61a-4e06-14d1-08dbc3e25f62
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	IJd+wIsTppXJQVznR8FpsXiGgoHdcHPzd1oHxOSuuJHmO+apY/0GwEfz4QfE7b/0PRO746oMR8+azKoGAVZgryJm2uwC/SCsIxJi0RDOveZ6MwPu5nwpcDnVn69zNR58giYr7R1/1tqdpub7A15+pvruFCNkLFUKjY8FesnbVD7dLezRq+k+Vd7bj+TFG0ApGiXbxrrOO+m25XyReEeXcT68knO35St+9xA9YDI6I+h6oDVJmoU53OF9nXp0pHkqmpHn7BpPgxp3FvRVxeJtfm5ondwXgJhHCoB9oaqEWAMM6WHtoBhML23fsr0+JUZOV/yawiGCT5qvjm1ej12zj9ejALz45a/hU8/ZAw6BaBE2g+XytK73t6nAnfUmB1vf/Ki7ouTirBdyt4ZXucLEDHb0gljcbNPX5wlZMy6h7wUgRb4lMnfWHUQw5vbsB/3jzHNia9HSq3ZXg2RKbaFiRIXl/S9ULJXtgO6hwK5ZoIAxM/yrPt8XpuJkIMIVAijOqIqVvOPjzOMeIqqk/x9IrXgKckvFVv9Q98xdGNJdMl4fhJGvPNMwiaKjh8Gk/t4rvUFLQSiHMzphAlXYZA8LDl+Mh+iGaV13OfHoYMKxrqrtAytiM+K4sgnGCAsMpElJTn5rkCOJzFliFojp+oKAHnHSBy/Opo4dWw4X1fangZ7EIVsn9AzKv+ytywkpyRBw17fpiQaNuh+h7CU8l7QknEqIbaJWJ6ocO29Jz2gM8SDs+QhMw5Lr7cTzj9XvdvBAOAx4RLZa6/5AmI9D2gjJYe6mrey4oYOW3q9eGTvRrL6zvOpUW9b+dEU9iPqDYd1v1NL3xLNCUMMg4KRI0Vb9mA==
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)(39860400002)(346002)(230922051799003)(186009)(64100799003)(1800799009)(82310400011)(451199024)(36840700001)(46966006)(40470700004)(47076005)(2906002)(40460700003)(86362001)(31696002)(36756003)(356005)(81166007)(82740400003)(40480700001)(36860700001)(53546011)(316002)(70586007)(16576012)(70206006)(54906003)(110136005)(41300700001)(966005)(2616005)(478600001)(6666004)(31686004)(336012)(426003)(4326008)(8676002)(44832011)(5660300002)(26005)(8936002)(36900700001)(43740500002);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 03 Oct 2023 07:28:43.2877
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 79bb6750-e61a-4e06-14d1-08dbc3e25f62
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:
	SN1PEPF0002636C.namprd02.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH0PR12MB5387

Hi Oleg, Stefano

On 03/10/2023 02:13, Stefano Stabellini wrote:
> Hi Oleg,
> 
> You are getting this output:
> 
>> (XEN) d0v0 Forwarding AES operation: 3254779951 136bb00000000000 -> fffffffffffff000
> 
> Which means that the guest physical address is 0x136bb00000000000 and
> the translated physical address is 0xfffffffffffff000. It generates an
> error so you are asking if 0xfffffffffffff000 is incorrect because the
> translation is incorrect.
> 
> This is possible. However, I think it is more likely that
> 0x136bb000_00000000 is incorrect. This an extremely high address. Could
> it be wrong?

I think the issue is due to a different way of forming the r1 register for this particular EEMI call:

Take a look at the PM AES function from Linux:
https://github.com/Xilinx/linux-xlnx/blob/master/drivers/firmware/xilinx/zynqmp.c#L1975
and EEMI call invocation:
https://github.com/Xilinx/linux-xlnx/blob/master/drivers/firmware/xilinx/zynqmp.c#L390

The register passed as r1 is formed a bit differently than "normally". FWICS:
 - the upper 32 bits of address are stored in the lower 32 bits of r1 register.
 - the lower 32 bits of address are stored in the upper 32 bits of r1 register.

That is why you are getting a very high address in r1 0x136bb000_00000000.

Please, try to do the following (not tested):

case 0xC200002F:
{
    register_t gaddr, new_gaddr;
    paddr_t maddr;

    gaddr = ((register_t)get_user_reg(regs, 1) << 32) | (get_user_reg(regs, 1) >> 32);
    maddr = mfn_to_maddr(gfn_to_mfn(current->domain, gaddr_to_gfn(gaddr)));

    /* Most probably not needed given dma_alloc_coherent use */ 
    maddr += gaddr &~ PAGE_MASK;

    /* Convert back to required format */
    new_gaddr = ((register_t)maddr << 32) | (maddr >> 32);

    arm_smccc_1_1_smc(get_user_reg(regs, 0),
            get_user_reg(regs, 1),
            new_gaddr,
            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;
}

~Michal



From xen-devel-bounces@lists.xenproject.org Tue Oct 03 07:33:37 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 03 Oct 2023 07:33:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612116.951940 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnZuR-0002dK-Pn; Tue, 03 Oct 2023 07:33:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612116.951940; Tue, 03 Oct 2023 07:33: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 1qnZuR-0002dD-N0; Tue, 03 Oct 2023 07:33:35 +0000
Received: by outflank-mailman (input) for mailman id 612116;
 Tue, 03 Oct 2023 07:33: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=6Pu2=FR=amd.com=Michal.Orzel@srs-se1.protection.inumbo.net>)
 id 1qnZuQ-0002bt-V7
 for xen-devel@lists.xenproject.org; Tue, 03 Oct 2023 07:33:34 +0000
Received: from NAM12-DM6-obe.outbound.protection.outlook.com
 (mail-dm6nam12on20610.outbound.protection.outlook.com
 [2a01:111:f400:fe59::610])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 2715aabd-61bf-11ee-9b0d-b553b5be7939;
 Tue, 03 Oct 2023 09:33:32 +0200 (CEST)
Received: from CH2PR14CA0054.namprd14.prod.outlook.com (2603:10b6:610:56::34)
 by PH7PR12MB7139.namprd12.prod.outlook.com (2603:10b6:510:1ef::21)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.33; Tue, 3 Oct
 2023 07:33:27 +0000
Received: from DS2PEPF0000343F.namprd02.prod.outlook.com
 (2603:10b6:610:56:cafe::5f) by CH2PR14CA0054.outlook.office365.com
 (2603:10b6:610:56::34) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.31 via Frontend
 Transport; Tue, 3 Oct 2023 07:33:27 +0000
Received: from SATLEXMB03.amd.com (165.204.84.17) by
 DS2PEPF0000343F.mail.protection.outlook.com (10.167.18.42) 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, 3 Oct 2023 07:33:27 +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, 3 Oct
 2023 02:33: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; Tue, 3 Oct
 2023 02:33: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; Tue, 3 Oct 2023 02:33: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: 2715aabd-61bf-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=YInhx24jq+Gt0Y3TvDTu691qGjqOhtlhf9HEw9WRae5iUM5Gaxm0MlAT6gSlxtBqywZ549JnertYlbxk9bgf1lwKBAE0assjSPOhDU21kwIJLr7wNIwhnPXlk/L1yp97ElJzbLG41auLk7wXWR+HPzPq5JEckkel29PhLdOCQLyoor5m0Lx8E6G5TcMfB8DnRZ/xAklZk9tLAS3MvbMm0yUUXJxMFkK2+s/rmOYWIGateYidjYPK7k/pLWMpDYwbrrGzgRzWVmI9tLQ55qwAEpO/2YjKuIi9sq5nae3fe0UwjhO9Mv35ihgHiGjlwFAkdZ9PVarIoWqOP3B41rhaGw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=tMsU4w1WrpCjhRirRNlQekyGIQf9iPTA7g1Tze/la7M=;
 b=EFwCFnEp2SBL7Zzq1M7qhW4P+HabMyNm6EOitb/n/2DUR+RXQl81fNEFtW0scR/JxYPZETwAnBUORNirWx+7qcJ6kl0oiBDhguJOEn76lveHI4LkPAO4P4xaEmi7KN5cjvS22xoxwovdiP4t/t8SlAZX6ox1kop1z4U+lVpVAJhZ2R4+k7eqqnKMswcJjjgI158XF3/d3QCY6ya9XJPPwI/UcK5XpfMDb5mKmVNfq9LJbDSGD22okopmBRAwvBZx0Ser5aGn/UD3DuoArZZZCR5tpaEdvmJIP1gkjIO9kBG77vUP3D8m3oCSLEx+hP/aodNfYhm1vdClqP6lZyH3Uw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=gmail.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=tMsU4w1WrpCjhRirRNlQekyGIQf9iPTA7g1Tze/la7M=;
 b=Ia+eunqnKSMn8kqfHDyp3ptX9DVIm5bKFj1De6vniRHDTr677ssw6hwXPVvBIJBJ/LoO2IJ1lhD/hvR62d37e7VPI7owCmXMfHLTRvL7tayWfhdp0qAMEdWbuZBTWvAlu8o8OrjrO9qsX7xYUQl6ENpJ8G1HHKIZQFue9SrBnAI=
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: <fe7c359e-60e0-41fb-7d39-93a8d6772073@amd.com>
Date: Tue, 3 Oct 2023 09:33: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: Fwd: changing Dom0 data during smc call inside of xen during
 cache coloring
Content-Language: en-US
From: Michal Orzel <michal.orzel@amd.com>
To: Stefano Stabellini <stefano.stabellini@amd.com>, Oleg Nikitenko
	<oleshiiwood@gmail.com>
CC: Julien Grall <julien@xen.org>, <xen-devel@lists.xenproject.org>, "Carlo
 Nonato" <carlo.nonato@minervasys.tech>, Bertrand Marquis
	<bertrand.marquis@arm.com>, Stefano Stabellini <sstabellini@kernel.org>,
	<Stewart.Hildebrand@amd.com>
References: <CA+SAi2tXMupikB2YgEXuq98KnOcqm6zWrk19rNvWTfzf2=ku-w@mail.gmail.com>
 <dba88398-3aef-4541-a8e8-8fd075c0d40e@xen.org>
 <CA+SAi2tHLVDj+q8KMD7OuhHoj0sSZ-39qs3Z94WGmL2OA3TM_g@mail.gmail.com>
 <alpine.DEB.2.22.394.2309281447180.1996340@ubuntu-linux-20-04-desktop>
 <CA+SAi2vZie+PcKgkAbLxcaimG7strkWot1z4LTpCGLeJxuaT2g@mail.gmail.com>
 <CA+SAi2u2auZgzQh_s+pFspH1YLN4biCf0K7-V7NGWPZQjGoH0g@mail.gmail.com>
 <alpine.DEB.2.22.394.2310021608180.2348112@ubuntu-linux-20-04-desktop>
 <c101624b-96a3-30a4-b3a9-344dad5e8fa5@amd.com>
In-Reply-To: <c101624b-96a3-30a4-b3a9-344dad5e8fa5@amd.com>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 7bit
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DS2PEPF0000343F:EE_|PH7PR12MB7139:EE_
X-MS-Office365-Filtering-Correlation-Id: 67d26098-e9a2-4476-24c7-08dbc3e308a8
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	VTOv0a0KzaZOHQCYA3Ed7YSEM3XJbKwjqegd26z2DHxQtD1NlJoBcO/6DfjRrOLAo4PbWNf9VAD+UJC00b/tCnqO2EC48t2IBNoaWisVW6BWmG3PQvq0kHGqjfacosOkmxB2f0p5hl0Ks8q0U8aUGDCR7giBSeBEvQBK/Odc1Vu8KcvzVdPuNdN/CHg6zpOjMb8IAgFf1ujNkxKSbx2Pu8g4PanVriRxv4S1P2ICyTGRsIDjC/7n/iedYfYZSwM5Pla1G5q//xKjBZ/55HdlhPx0YS2ED+FaAMK0b5r4DWqjGNHEL42KekCirk3IyaOYWT9R7bFcbNja2r5GT//BLKFdThJW1D2OwOpGW9SWJUVE+U3K+K634SAPDLnoz+awMWAPYvqniMxm4CNBX3A3gIsySUle5nR2/PVuSpROyD5ga1IcQKljRuAlmgJCjWAPSEV2Gh+/nDsfOYmLDuYttd7sutBqXNIcn97mp7PblbbSRylwlfLGqhKq67hgEVWdr0JCXEIg4neci0ZBXlLq2a9y1GhhfKxyFZ2eufqmAvdqP2e7QItAfnrr4wLmVZbk2qiZNyIoSXqt/D4/DCbO4wcs5yj6es6wSTLRjh9Q28S7ch9afyTnCq85CgqW76mwMSt/AQvZbc2dC7JIi7EH9qJ8vg3sRUGcUG20HcQYZ23qY0KOsNVPVl/16QVE+mRKDjjwNbnFNOYBh9C7I0Sj9EQev4hSed+eGTM8RZ/S88X+4jZDM1HbMmJMgjWI5JzjQIkpQXNKDnJl1rimzPla3oc1MQKgac55gnLoIyR+CwooK9y8KavntVIC0CzL/aYYyp5qr42NvY8IgqQAGS8uDw==
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)(230922051799003)(64100799003)(186009)(1800799009)(82310400011)(451199024)(46966006)(40470700004)(36840700001)(6666004)(53546011)(478600001)(966005)(426003)(336012)(2616005)(26005)(2906002)(41300700001)(110136005)(70586007)(70206006)(16576012)(54906003)(44832011)(5660300002)(8676002)(8936002)(4326008)(316002)(36756003)(36860700001)(47076005)(31696002)(86362001)(81166007)(82740400003)(356005)(40480700001)(31686004)(40460700003)(36900700001)(43740500002);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 03 Oct 2023 07:33:27.2505
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 67d26098-e9a2-4476-24c7-08dbc3e308a8
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:
	DS2PEPF0000343F.namprd02.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7PR12MB7139



On 03/10/2023 09:28, Michal Orzel wrote:
> 
> 
> Hi Oleg, Stefano
> 
> On 03/10/2023 02:13, Stefano Stabellini wrote:
>> Hi Oleg,
>>
>> You are getting this output:
>>
>>> (XEN) d0v0 Forwarding AES operation: 3254779951 136bb00000000000 -> fffffffffffff000
>>
>> Which means that the guest physical address is 0x136bb00000000000 and
>> the translated physical address is 0xfffffffffffff000. It generates an
>> error so you are asking if 0xfffffffffffff000 is incorrect because the
>> translation is incorrect.
>>
>> This is possible. However, I think it is more likely that
>> 0x136bb000_00000000 is incorrect. This an extremely high address. Could
>> it be wrong?
> 
> I think the issue is due to a different way of forming the r1 register for this particular EEMI call:
> 
> Take a look at the PM AES function from Linux:
> https://github.com/Xilinx/linux-xlnx/blob/master/drivers/firmware/xilinx/zynqmp.c#L1975
> and EEMI call invocation:
> https://github.com/Xilinx/linux-xlnx/blob/master/drivers/firmware/xilinx/zynqmp.c#L390
> 
> The register passed as r1 is formed a bit differently than "normally". FWICS:
>  - the upper 32 bits of address are stored in the lower 32 bits of r1 register.
>  - the lower 32 bits of address are stored in the upper 32 bits of r1 register.
> 
> That is why you are getting a very high address in r1 0x136bb000_00000000.
> 
> Please, try to do the following (not tested):
> 
> case 0xC200002F:
> {
>     register_t gaddr, new_gaddr;
>     paddr_t maddr;
> 
>     gaddr = ((register_t)get_user_reg(regs, 1) << 32) | (get_user_reg(regs, 1) >> 32);
>     maddr = mfn_to_maddr(gfn_to_mfn(current->domain, gaddr_to_gfn(gaddr)));
> 
>     /* Most probably not needed given dma_alloc_coherent use */
>     maddr += gaddr &~ PAGE_MASK;
> 
>     /* Convert back to required format */
>     new_gaddr = ((register_t)maddr << 32) | (maddr >> 32);
> 
>     arm_smccc_1_1_smc(get_user_reg(regs, 0),
>             get_user_reg(regs, 1),
>             new_gaddr,
Wrong placement. This should be for register 1 and not 2, so:
    arm_smccc_1_1_smc(get_user_reg(regs, 0),
            new_gaddr,
            get_user_reg(regs, 2),
            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);

~Michal


From xen-devel-bounces@lists.xenproject.org Tue Oct 03 07:44:57 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 03 Oct 2023 07:44:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612124.951950 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qna5J-0008Mu-Su; Tue, 03 Oct 2023 07:44:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612124.951950; Tue, 03 Oct 2023 07:44: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 1qna5J-0008Mn-QC; Tue, 03 Oct 2023 07:44:49 +0000
Received: by outflank-mailman (input) for mailman id 612124;
 Tue, 03 Oct 2023 07:44: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=hNjg=FR=arm.com=Luca.Fancellu@srs-se1.protection.inumbo.net>)
 id 1qna5I-0008LU-61
 for xen-devel@lists.xenproject.org; Tue, 03 Oct 2023 07:44:48 +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 b8c4f406-61c0-11ee-98d2-6d05b1d4d9a1;
 Tue, 03 Oct 2023 09:44:46 +0200 (CEST)
Received: from AS8PR07CA0058.eurprd07.prod.outlook.com (2603:10a6:20b:459::15)
 by PAVPR08MB8966.eurprd08.prod.outlook.com (2603:10a6:102:320::9)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.29; Tue, 3 Oct
 2023 07:44:43 +0000
Received: from AM7EUR03FT053.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:20b:459:cafe::c2) by AS8PR07CA0058.outlook.office365.com
 (2603:10a6:20b:459::15) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.24 via Frontend
 Transport; Tue, 3 Oct 2023 07:44:43 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM7EUR03FT053.mail.protection.outlook.com (100.127.140.202) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6863.25 via Frontend Transport; Tue, 3 Oct 2023 07:44:43 +0000
Received: ("Tessian outbound ab4fc72d2cd4:v211");
 Tue, 03 Oct 2023 07:44:42 +0000
Received: from 82693a9d1c2a.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 487C7AD8-782A-440E-9975-E9490E6AAA7E.1; 
 Tue, 03 Oct 2023 07:44:31 +0000
Received: from EUR01-VE1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 82693a9d1c2a.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Tue, 03 Oct 2023 07:44:31 +0000
Received: from AM6PR08MB3749.eurprd08.prod.outlook.com (2603:10a6:20b:8f::22)
 by GV2PR08MB8344.eurprd08.prod.outlook.com (2603:10a6:150:c0::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.23; Tue, 3 Oct
 2023 07:44:25 +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; Tue, 3 Oct 2023
 07: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>
X-Inumbo-ID: b8c4f406-61c0-11ee-98d2-6d05b1d4d9a1
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=Z7S2fb8E2+dgqK0X7XudhqCH7RZeLIoxa15wZ4NRYCk=;
 b=2dbxqN5Go1jjr25+lQmA0LcRlBHS5GW+Hwp3N96R2ITRjYKwkOYBXp7ysFC68thwTLqHwsHVIy3Q1Y+J/Fyk0YPr8jqC0QbrV++gYTUeYdDFMDnLk0ApForq+zlWaUejLwruytjbABDMcSvpr4XPXEEhWS2az8AxjhBDhXI0tnw=
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: 82f6f899de8f5d33
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=jPywmDD5d7saMhKe3rFofOQTHApSIF/yks4T+nL1UuqKpBf+1bOgM0gIuj7tZoDZRqfZdzywWSwxzuVDqLhOrIHiAvJpYyfL9bbZG3TIszBu+g3HJ+HF6Z6anNavMo0eF2txMHCrFVHbOsgnNDclseZpndMAb71J8n4aOWe7+o9xD6Zvcn9R0dByKtZ1w/gEt/TCYiEmbErqjLHfxlq7ZyyxzvkLN5jPGrtlUywjHQ7rwsoNFryt17mO0lx1mAAVpQaxCoXFyHBqDzWFfQV+C7IfjI2ESq9fAmO0ZkVl4Ospt3ohI6yBGnDtQusRKeur3HSjmxWR+v6HhV3iSavjvA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=Z7S2fb8E2+dgqK0X7XudhqCH7RZeLIoxa15wZ4NRYCk=;
 b=AzwLZsJxz7oSkXbCoK7qQXCIeDhRGKvV0U52mYUol90ZflWUB8W6yiWzm9PUKCT9NSQKUdEwwU1AKMrt+O6WfpwjG5Odt7ZIEriaXdfUvr0JybsPf6dNAOX4+Gbhtpw8k55ks2CZqSAM167FgCaB8PdxdjFx9Yc0N4Hqo3XCE3+KSsKwnldeWKenM8BVsGIWUEq9QGasSc4a0mv+QWLz1qN0+ICr/AhaHMSgI2eJv0LDXdBlLPlshVTV2IXqG9URBTW9hwUVvrYjD9W7nnI6oeUFMNqmEyjl2Bd7pa0XetTHtYQ/FWuc1WKW+TZkoXRAy6bvly/z+EpDE/pK3kSsbw==
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=Z7S2fb8E2+dgqK0X7XudhqCH7RZeLIoxa15wZ4NRYCk=;
 b=2dbxqN5Go1jjr25+lQmA0LcRlBHS5GW+Hwp3N96R2ITRjYKwkOYBXp7ysFC68thwTLqHwsHVIy3Q1Y+J/Fyk0YPr8jqC0QbrV++gYTUeYdDFMDnLk0ApForq+zlWaUejLwruytjbABDMcSvpr4XPXEEhWS2az8AxjhBDhXI0tnw=
From: Luca Fancellu <Luca.Fancellu@arm.com>
To: Stefano Stabellini <sstabellini@kernel.org>
CC: Bertrand Marquis <Bertrand.Marquis@arm.com>, Julien Grall
	<julien@xen.org>, Xen-devel <xen-devel@lists.xenproject.org>, Wei Chen
	<Wei.Chen@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+cEATmTDiuOrAw9peAgABwTYCAANJ9gIAD+GkAgABk7gCAAIXRgIAAm66A
Date: Tue, 3 Oct 2023 07:44:23 +0000
Message-ID: <0348B5FA-D65C-4D70-99A4-47398BD4266C@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>
 <725342EA-730F-4961-88A4-43EC0CBAD5BA@arm.com>
 <alpine.DEB.2.22.394.2309291242570.2348112@ubuntu-linux-20-04-desktop>
 <bc2a043a-9836-429b-88bb-6bedda5343bf@xen.org>
 <38AD4AA5-D038-4114-A614-80BF91FB51FB@arm.com>
 <alpine.DEB.2.22.394.2310021512210.2348112@ubuntu-linux-20-04-desktop>
In-Reply-To:
 <alpine.DEB.2.22.394.2310021512210.2348112@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_|GV2PR08MB8344:EE_|AM7EUR03FT053:EE_|PAVPR08MB8966:EE_
X-MS-Office365-Filtering-Correlation-Id: 77951657-a247-4b8d-98ce-08dbc3e49b87
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:
 lcJd5OEmhTAVz9IbK+YRReE+jRnk2FSe5mXjugnQmwEq1wBW+eKmMYPHhUOPq2MIqSmxaKoygYhyYrHqOu3fFpBntizsZHiWirKVT73yuVVlOZqDJagc5XE7FFFuyV8HQKIXQXOlALoRhiqlgv2NIzc17BATHtRsINNJ2kGZlpT5NA45V65QEMu+Pf9F6zpUAluDvAJMnFcAiYe5avVIc4Si/+m2CbHuNvrJbJGsSoi31FmwbYu5wEABp8QuQh+MR2pLbiZfHdI9R94Jnka3AabBY9vkGzZFRnpAkqBNmJKJWFELssEC88yvpXAj0nqiW9L9uONFBeQK7/r6KjIwhFj6Lzd4UG8Empfo6LKj+rVSNQoa3A3X/Fk0/Hq/0oZdsC41Pof2Lx4wAaBhBYx5XMr9rEg/l8kRTwh9eHfPG0cpVbXQn66e7uUSEQWu6cUlbKDOkmu3SFfEnzJid8J+PXra03toVKBuTXypZH78Ri5S156uKIcmQjIIFx/5IOTJxHJKeu4s2H1U8RZzAe5g+Co2+pe5pbSmLldW9w9fuhlOlr4XVMTkPMWy52QH+AOHhikWzcs+vakhztFNCxKmYw9XZ+CPZChO6oSZk9f2UYEfMDtm3ZkWe45KXTU2KwA82kRljsPPxLhQXVOTskR3fDeMZ9RmaNvR5w4TWxqbXOg=
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)(366004)(346002)(376002)(136003)(396003)(230922051799003)(1800799009)(186009)(64100799003)(451199024)(36756003)(6512007)(33656002)(478600001)(6506007)(966005)(2616005)(26005)(86362001)(76116006)(38070700005)(122000001)(2906002)(5660300002)(8936002)(71200400001)(41300700001)(66446008)(83380400001)(54906003)(91956017)(66946007)(38100700002)(8676002)(4326008)(66556008)(316002)(64756008)(6916009)(66476007)(6486002)(32563001)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <86110177DC142E478FBC48BD57DF5945@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV2PR08MB8344
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:
 AM7EUR03FT053.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	b4642d8f-cd2a-4ddb-2c0b-08dbc3e49005
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	rdC422pV/YnieN3+D79IOtqNW6clk51t7KrM/hHG/96jMsZCUOmErkkEHJiIE/QvWsSE9m/M1q6FksLVudCBVwHpv89ewXqtKkDa/V/wzVChqqrXsJS+rH+owVu2lG/QTcRjy1GQRfG/CABUNrxavT2WlOGkfwQhcbXNct6XrBh5HvTxkGy5MTLYLJiVi1x6m0KiaiR0qnDI9nKTdYyGp5wyHQ5K2P8P2qgTlpu7vdxq+RXIctn0fzB7jzoUdkNgNE0wdOIZM8xIi8cR5vgulSEQGIQifQTnW3p+f0+2K0vAR4eqjmilCsvLghyOcdSQeMLIq72Q3jUhsFmMl1DWa4vhfeD7oJOZRUI+m5TfGMbC1KOH8Um0qnejYRi2eM3tPkiOBXRI0VPsc6s+WP9ihcTfJavsjoVGOznTWkKkutBSUlExk5hg0afsDB3P4jJVq/KeS2CYvkaNGXpvWEwFQmJ9IGmvLur/QexVmZBbqT9nXHzFaePHcWt6DpH+gdPoFqpp/CmX0hol0ZW85T78dGCxJ9i2YovQpTlZ38TCFz7jtqvqndjGduKU7HPUqrIoX3bWzRtmxiUvDFrfgsyCZ0BtzNKrNvKhOw2FThBtmWdYlAuJQ8J7xa5n7YP4tzYtf/s9Dg3aHOdY8/1QOPaiS/csYwTZU7rBJCuMi8PH/mCa5XQlOSKMVBMX/j+3MYxs/oMQhUlqHTsnLcOv3H4rI+zbp0LGBe0LpA9svF9ZqZBAs+SzeMLkiL8IsT6I50V4
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)(64100799003)(186009)(1800799009)(82310400011)(451199024)(36840700001)(40470700004)(46966006)(70586007)(36860700001)(41300700001)(316002)(478600001)(70206006)(54906003)(82740400003)(47076005)(83380400001)(6506007)(356005)(81166007)(6862004)(8936002)(4326008)(8676002)(966005)(26005)(40460700003)(336012)(2616005)(86362001)(5660300002)(107886003)(40480700001)(6512007)(2906002)(6486002)(33656002)(36756003)(32563001);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 03 Oct 2023 07:44:43.1590
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 77951657-a247-4b8d-98ce-08dbc3e49b87
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:
	AM7EUR03FT053.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAVPR08MB8966

DQo+Pj4+IEdpdmVuIHRoYXQgY29kZSBtb3ZlbWVudCBpcyBwYWluZnVsIGZyb20gYSBnaXQgaGlz
dG9yeSBwZXJzcGVjdGl2ZSwgYW5kDQo+Pj4+IGdpdmVuIHRoYXQgd2UgaGF2ZSB0byBtb3ZlIGRv
bTBsZXNzIGNvZGUgdG8geGVuL2NvbW1vbiBhbnl3YXkgdG8gbWFrZQ0KPj4+PiBpdCBhdmFpbGFi
bGUgdG8gUklTQy1WIGFuZCBhbHNvIHg4NiwgY291bGQgd2UgZG8gaXQgaW4gb25lIHNob3QgaGVy
ZT8NCj4+PiANCj4+PiBMb29raW5nIGF0IHRoZSBuYW1lIG9mIHRoZSBmdW5jdGlvbnMsIEkgd291
bGQgZXhwZWN0IHRoYXQgd2Ugd291bGQgbmVlZCBhbm90aGVyIGNvZGUgbW92ZW1lbnQgaW4gdGhl
IGZ1dHVyZSB0byBtb3ZlIGJhY2sgQXJtIHNwZWNpZmljIGZ1bmN0aW9uIHVuZGVyIGFyY2gvYXJt
Ly4gU28gd2Ugd291bGQgZW5kIHVwIHdpdGggdHdvIGNvZGUgbW92ZW1lbnQgYXMgd2VsbC4NCj4+
PiANCj4+PiBJIHdvdWxkIHByZWZlciBpZiB3ZSB3YWl0IHVudGlsIFJJU0MtVi94ODYgbmVlZHMg
aXQgc28gd2UgZG9uJ3QgdW5uZWNlc3NhcmlseSBtb3ZlIEFybSBzcGVjaWZpYyBjb2RlIGluIGNv
bW1vbi8uDQo+PiANCj4+IEkgYWdyZWUgd2l0aCBKdWxpZW4gaGVyZS4NCj4+IE1vdmluZyB0aGUg
Y29kZSBub3cgd2lsbCBtZWFuIG1vdmluZyBwYXJ0IG9mIGl0IGJhY2sgaW4gYXJtIGluIHRoZSBm
dXR1cmUgb25jZSB3ZSBoYXZlIGEgc2Vjb25kIHVzZXIgb2YgdGhpcy4NCj4+IEkgd291bGQgcmF0
aGVyIHdhaXQgZm9yIHRoZSBuZWVkIHRvIGNvbWUgc28gdGhhdCB3ZSBkbyB0aGlzIGNsZWFubHku
DQo+PiANCj4+IEFsc28gdXNpbmcgaHlwZXJsYXVuY2ggbmFtZSBub3cgd291bGQgYmUgd2VpcmQg
YXMgdGhlcmUgd2FzIG5vIGFncmVlbWVudCBvbiB0aGUgbmFtaW5nIChhcyBmYXIgYXMgSSBrbm93
KSBzbyBmYXIuDQo+IA0KPiBSSVNDLVYgaXMgYWxyZWFkeSB1c2luZyBkb20wbGVzcyBjb2RlLCBo
b3dldmVyIGluIGEgZG93bnN0cmVhbQ0KPiByZXBvc2l0b3J5LiBUbyBtYWtlIHByb2dyZXNzIGZh
c3RlciB0aGUgY29kZSB3YXMgY29waWVkIChub3Qgc2hhcmVkKQ0KPiBmcm9tIGFyY2gvYXJtIHRv
IGFyY2gvcmlzY3YuIE1vcmUgZGV0YWlscyBvbiB0aGUgWGVuIGNvbW11bml0eSBjYWxsIHRoaXMN
Cj4gd2Vlay4gaHR0cHM6Ly9naXRsYWIuY29tL3hlbi1wcm9qZWN0L3Blb3BsZS9vbGt1ci94ZW4v
LS9ibG9iL3Jpc2N2X2FpYV9zdXBwb3J0L3hlbi9hcmNoL3Jpc2N2L2RvbWFpbl9idWlsZC5jP3Jl
Zl90eXBlPWhlYWRzDQo+IA0KPiBIeXBlcmxhdW5jaCBhbHNvIG5lZWRzIGRvbTBsZXNzIGNvZGUg
dG8gYmUgbWFkZSBjb21tb24gdG8gbWFrZSBwcm9ncmVzczoNCj4gaHR0cHM6Ly9tYXJjLmluZm8v
P2w9eGVuLWRldmVsJm09MTY5MTU0MTcyNzAwNTM5DQo+IA0KPiBTbyBJIHRoaW5rIHRoYXQgdGhl
cmUgaXMgYW4gaW1tZWRpYXRlIFJJU0MtViBhbmQgWDg2IG5lZWQuDQo+IA0KPiBCdXQgdGhlIHBv
aW50IGFib3V0ICJtb3ZpbmcgdGhlIGNvZGUgbm93IHdpbGwgbWVhbiBtb3ZpbmcgcGFydCBvZiBp
dA0KPiBiYWNrIGluIGFybSBpbiB0aGUgZnV0dXJlIiBpcyB2YWxpZC4gSG93IGRvIHdlIG1vdmUg
Zm9yd2FyZD8NCj4gDQo+IEkgZG9uJ3QgdGhpbmsgd2Ugd2FudCB0byBibG9jayBMdWNhJ3MgcHJv
Z3Jlc3MgdG8gd2FpdCBmb3IgbW9yZQ0KPiBwbHVtYmluZ3MgZG9uZSBvbiB4ODYgb3IgUklTQy1W
LiBBbHNvIHdlIGRvbid0IHdhbnQgdG8gc2NvcGUgY3JlZXANCj4gTHVjYSdzIHNlcmllcyB0b28g
bXVjaC4NCj4gDQo+IEJ1dCBJIHRoaW5rIHRoZSBnb2FsIHNob3VsZCBiZSB0byBtb3ZlIGRvbTBs
ZXNzIGNvZGUgdG8geGVuL2NvbW1vbiBhcw0KPiBzb29uIGFzIHBvc3NpYmxlIGFuZCBtYWtlIGl0
IGFyY2ggbmV1dHJhbC4gSG93IGRvIHdlIGdldCB0aGVyZT8NCg0KU28gaGVyZSBpcyB3aHkgSSBm
ZWx0IHBhaW5mdWwgZG9pbmcgbm93IGEgbW92ZSB0byB0aGUgY29tbW9uIGNvZGUsIGJ1dCBtYXli
ZSB5b3UgKG1haW50YWluZXJzKSBjYW4gZ2l2ZSBtZSBzb21lDQpmZWVkYmFja3MuDQoNCkkgc2Vl
IHRoYXQgdGhlIGZ1bmN0aW9ucyB0aGF0IG1pZ2h0IGJlIHB1dCBpbiBjb21tb24gYXJlIHRoZXNl
LCBzb21lIG9mIHRoZW0gaG93ZXZlciBoYXZlIGFybSBzcGVjaWZpYyBjb2RlIGluIHRoZW06DQoN
CmlzX2RvbTBsZXNzX21vZGUNCmFsbG9jYXRlX2JhbmtfbWVtb3J5DQphbGxvY2F0ZV9tZW1vcnkN
CmhhbmRsZV9wYXNzdGhyb3VnaF9wcm9wDQpoYW5kbGVfcHJvcF9wZmR0DQpzY2FuX3BmZHRfbm9k
ZQ0KY2hlY2tfcGFydGlhbF9mZHQNCmRvbWFpbl9wMm1fcGFnZXMNCmFsbG9jX3hlbnN0b3JlX2V2
dGNobg0KZG9tYWluX2hhbmRsZV9kdGJfYm9vdG1vZHVsZSAoY29udGFpbnMgcmVmZXJlbmNlIHRv
IHRoZSBnaWMpDQpwcmVwYXJlX2R0Yl9kb21VIChoYXZlIHJlZmVyZW5jZSB0byBwc2NpLCBnaWMs
IHZwbDAxMSkNCmNvbnN0cnVjdF9kb21VIChoYXZlIHJlZmVyZW5jZSB0byB2cGwwMTEsIHN0YXRp
YyBzaGFyZWQgbWVtb3J5KQ0KY3JlYXRlX2RvbVVzKGhhdmUgcmVmZXJlbmNlIHRvIHZwbDAxMSwg
c3ZlKQ0KDQpIZXJlIHRoZSBmdW5jdGlvbnMgdGhhdCBjYW4gc3RheSBpbiBhcm0gY29kZToNCg0K
bWFrZV9naWN2Ml9kb21VX25vZGUNCm1ha2VfZ2ljdjNfZG9tVV9ub2RlDQptYWtlX2dpY19kb21V
X25vZGUNCm1ha2VfdnBsMDExX3VhcnRfbm9kZQ0KDQoNCkdpdmVuIHRoYXQgdGhlIHN0YXR1cyBh
ZnRlciB0aGUgbW92ZSB0byBjb21tb24gb2YgdGhlIGFib3ZlIGZ1bmN0aW9ucyBpcyBub3QgdmVy
eSBjbGVhbiwgSeKAmXZlIGRlY2lkZWQgdG8gZG9u4oCZdCBkbyB0aGF0LA0KaG93ZXZlciBpZiB5
b3UgYXJlIGZpbmUgd2l0aCBpdCwgSSBjYW4gZG8gdGhlIG1vZGlmaWNhdGlvbiBhbmQgd2hvIGlz
IGdvaW5nIHRvIHdvcmsgZnVydGhlciBvbiB0aGUgc3ViamVjdCBjYW4gY29uc29saWRhdGUNCmFu
ZCBtYWtlIHRoZW0gYnVpbGQgZm9yIG90aGVyIGFyY2hpdGVjdHVyZS4NCg0KQ2hlZXJzLA0KTHVj
YQ0KDQoNCg==


From xen-devel-bounces@lists.xenproject.org Tue Oct 03 07:52:29 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 03 Oct 2023 07:52:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612129.951960 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnaCe-0006X6-LB; Tue, 03 Oct 2023 07:52:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612129.951960; Tue, 03 Oct 2023 07:52: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 1qnaCe-0006Wz-IQ; Tue, 03 Oct 2023 07:52:24 +0000
Received: by outflank-mailman (input) for mailman id 612129;
 Tue, 03 Oct 2023 07:52: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=g4lE=FR=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qnaCc-0006UU-Ry
 for xen-devel@lists.xenproject.org; Tue, 03 Oct 2023 07:52:22 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id c6dab3dc-61c1-11ee-9b0d-b553b5be7939;
 Tue, 03 Oct 2023 09:52:19 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id 421944EE0737;
 Tue,  3 Oct 2023 09:52: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: c6dab3dc-61c1-11ee-9b0d-b553b5be7939
MIME-Version: 1.0
Date: Tue, 03 Oct 2023 09:52:18 +0200
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@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, jbeulich@suse.com, andrew.cooper3@citrix.com,
 Henry.Wang@arm.com, 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>
Subject: Re: [XEN PATCH 1/7] xen: add declarations for variables where needed
In-Reply-To: <ZRvAOdKKD6T6l2cK@MacBookPdeRoger>
References: <cover.1696232393.git.nicola.vetrini@bugseng.com>
 <357a35c3035d0f8659a64d767791bc41d57494d3.1696232393.git.nicola.vetrini@bugseng.com>
 <ZRqkbeVUZbjizjNv@MacBookPdeRoger>
 <872f44542c8df6dab79965375376010d@bugseng.com>
 <ZRvAOdKKD6T6l2cK@MacBookPdeRoger>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <d9652187e9d0f15c5678273112c4ba56@bugseng.com>
X-Sender: nicola.vetrini@bugseng.com
Organization: BUGSENG s.r.l.
Content-Type: text/plain; charset=UTF-8;
 format=flowed
Content-Transfer-Encoding: 8bit

On 03/10/2023 09:18, Roger Pau Monné wrote:
> On Tue, Oct 03, 2023 at 09:05:34AM +0200, Nicola Vetrini wrote:
>> On 02/10/2023 13:07, Roger Pau Monné wrote:
>> > On Mon, Oct 02, 2023 at 09:49:44AM +0200, Nicola Vetrini wrote:
>> > > Some variables with external linkage used in C code do not have
>> > > a visible declaration where they are defined. Providing such
>> > > declaration also resolves violations of MISRA C:2012 Rule 8.4.
>> > >
>> > > Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
>> > > ---
>> > >  xen/arch/arm/include/asm/setup.h  |  3 +++
>> > >  xen/arch/arm/include/asm/smp.h    |  3 +++
>> > >  xen/arch/x86/cpu/mcheck/mce.c     |  6 +++---
>> > >  xen/arch/x86/include/asm/setup.h  |  3 +++
>> > >  xen/arch/x86/irq.c                |  2 +-
>> > >  xen/arch/x86/platform_hypercall.c |  3 ---
>> > >  xen/common/symbols.c              | 17 -----------------
>> > >  xen/include/xen/hypercall.h       |  3 +++
>> > >  xen/include/xen/symbols.h         | 18 ++++++++++++++++++
>> > >  9 files changed, 34 insertions(+), 24 deletions(-)
>> > >

>> > > diff --git a/xen/include/xen/hypercall.h b/xen/include/xen/hypercall.h
>> > > index f307dfb59760..12de5a69b5b1 100644
>> > > --- a/xen/include/xen/hypercall.h
>> > > +++ b/xen/include/xen/hypercall.h
>> > > @@ -24,6 +24,9 @@
>> > >  /* Needs to be after asm/hypercall.h. */
>> > >  #include <xen/hypercall-defs.h>
>> > >
>> > > +/* Declarations for items shared with the compat mode handler. */
>> > > +extern spinlock_t xenpf_lock;
>> >
>> > I'm confused about why this needs to be moved, AFAICT xenpf_lock is
>> > only used in platform_hypercall.c, and the declaration is
>> > unconditional, so there's no definition without declaration issue.
>> >
>> 
>> The violation was on ARM code, because of a slight inconsistency:
>> xen/arch/arm/platform_hypercall.c:DEFINE_SPINLOCK(xenpf_lock);
>> 
>> xen/arch/x86/platform_hypercall.c:extern spinlock_t xenpf_lock;
>> xen/arch/x86/platform_hypercall.c:DEFINE_SPINLOCK(xenpf_lock);
>> 
>> therefore, by moving the extern declaration to the common header there
>> should be no issue.
> 
> Just make xenpf_lock static on arm, that would be a better solution.
> The only need for the lock to be global is because of compat code, and
> arm doesn't seem to need it.
> 
> Thanks, Roger.

I'll do that, thanks.

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


From xen-devel-bounces@lists.xenproject.org Tue Oct 03 07:54:20 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 03 Oct 2023 07:54:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612134.951971 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnaEV-0007ow-33; Tue, 03 Oct 2023 07:54:19 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612134.951971; Tue, 03 Oct 2023 07: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 1qnaEU-0007op-Ub; Tue, 03 Oct 2023 07:54:18 +0000
Received: by outflank-mailman (input) for mailman id 612134;
 Tue, 03 Oct 2023 07:54: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=eQkC=FR=bugseng.com=federico.serafini@srs-se1.protection.inumbo.net>)
 id 1qnaET-0007oj-Hj
 for xen-devel@lists.xenproject.org; Tue, 03 Oct 2023 07:54:17 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 0cce8d55-61c2-11ee-98d2-6d05b1d4d9a1;
 Tue, 03 Oct 2023 09:54:16 +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 B162F4EE0737;
 Tue,  3 Oct 2023 09:54: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: 0cce8d55-61c2-11ee-98d2-6d05b1d4d9a1
From: Federico Serafini <federico.serafini@bugseng.com>
To: xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com,
	Federico Serafini <federico.serafini@bugseng.com>,
	Simone Ballarin <simone.ballarin@bugseng.com>,
	Doug Goldstein <cardoe@cardoe.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Henry Wang <henry.wang@arm.com>
Subject: [XEN PATCH] automation/eclair: add deviations for MISRA C:2012 Rule 10.1
Date: Tue,  3 Oct 2023 09:54:09 +0200
Message-Id: <83f4f9df2459f22690e6df98a43b3602c22bf27b.1696319475.git.federico.serafini@bugseng.com>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Update the configuration of ECLAIR to deviate some violations of Rule
10.1 in accordance with docs/misra/rules.rst.

Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
---
 automation/eclair_analysis/ECLAIR/deviations.ecl | 12 ++++++++++++
 1 file changed, 12 insertions(+)

diff --git a/automation/eclair_analysis/ECLAIR/deviations.ecl b/automation/eclair_analysis/ECLAIR/deviations.ecl
index d8170106b4..241aad6393 100644
--- a/automation/eclair_analysis/ECLAIR/deviations.ecl
+++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
@@ -274,6 +274,18 @@ still non-negative."
 -config=MC3R1.R10.1,etypes+={safe, "stmt(operator(logical)||node(conditional_operator||binary_conditional_operator))", "dst_type(ebool||boolean)"}
 -doc_end
 
+-doc_begin="XEN only supports architectures where signed integers are representend using two's complement and all the XEN developers are aware of this."
+-config=MC3R1.R10.1,etypes+={safe,
+  "stmt(operator(and||or||xor||not||and_assign||or_assign||xor_assign))",
+  "any()"}
+-doc_end
+
+-doc_begin="See Section \"4.5 Integers\" of \"GCC_MANUAL\", where it says that \"Signed `>>' acts on negative numbers by sign extension. As an extension to the C language, GCC does not use the latitude given in C99 and C11 only to treat certain aspects of signed `<<' as undefined. However, -fsanitize=shift (and -fsanitize=undefined) will diagnose such cases. They are also diagnosed where constant expressions are required.\""
+-config=MC3R1.R10.1,etypes+={safe,
+  "stmt(operator(shl||shr||shl_assign||shr_assign))",
+  "any()"}
+-doc_end
+
 ### Set 3 ###
 
 #
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Tue Oct 03 08:03:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 03 Oct 2023 08:03:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612145.951980 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnaN8-0004xm-F3; Tue, 03 Oct 2023 08:03:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612145.951980; Tue, 03 Oct 2023 08: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 1qnaN8-0004xf-CG; Tue, 03 Oct 2023 08:03:14 +0000
Received: by outflank-mailman (input) for mailman id 612145;
 Tue, 03 Oct 2023 08:03: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=6Pu2=FR=amd.com=Michal.Orzel@srs-se1.protection.inumbo.net>)
 id 1qnaN6-0004xZ-OC
 for xen-devel@lists.xenproject.org; Tue, 03 Oct 2023 08:03:12 +0000
Received: from NAM11-CO1-obe.outbound.protection.outlook.com
 (mail-co1nam11on2062e.outbound.protection.outlook.com
 [2a01:111:f400:7eab::62e])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 4ad3927e-61c3-11ee-9b0d-b553b5be7939;
 Tue, 03 Oct 2023 10:03:10 +0200 (CEST)
Received: from CH2PR03CA0021.namprd03.prod.outlook.com (2603:10b6:610:59::31)
 by BL1PR12MB5803.namprd12.prod.outlook.com (2603:10b6:208:393::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.22; Tue, 3 Oct
 2023 08:03:04 +0000
Received: from DS2PEPF0000343F.namprd02.prod.outlook.com
 (2603:10b6:610:59:cafe::81) by CH2PR03CA0021.outlook.office365.com
 (2603:10b6:610:59::31) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.33 via Frontend
 Transport; Tue, 3 Oct 2023 08:03:03 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 DS2PEPF0000343F.mail.protection.outlook.com (10.167.18.42) 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, 3 Oct 2023 08:03:03 +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, 3 Oct
 2023 03:03:02 -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, 3 Oct 2023 03:03:01 -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: 4ad3927e-61c3-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=oQQdBnt8FhNSLCjVTHSj6vv9Ykr2pNEcZSt6DWijL/JOkqhV/RhWLqKjjTQqB3ZAOw5eGvYsYx5606nCtAwzY87fcK2H8R0+wP34S1+McSO/NwIOBX3gh0Px10vNhcMAiwzjgZK5M9Xv5OmOEMvl2qfLTeeNBsQvK1S7ymdGu7NPwoPD5CuNf0I9JQbzPAnoddc7OXlBXyJq+pLgOoryScwu4H7fT6+uvgFhTcCSrawzuZellq2jdoVI7IYdHaCwbX6lvmbAUHa3UEkO3IDK04iFSTR+YrWjDOWnLNrmcHWtq2pBbU3mS31XNgYzk99S7IuHZD4d8YZOehaRLju8JQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=U2XaB+ckofUpoaU1pmzu3s6eb0YZ/OuLFhLfOOAtr4E=;
 b=GGLGxRJAokIgyqlXxblTzRi1PrmYvwshLebBOSv+r+0LKHy+c8FwG8wl1Q0eoNfm9PX+JY98BTmSUdarVd04hicZIOlxmU3fqEwqIWkZEWhs7RMvyrH2prWBpGkFEzcEjxse/E3DPAS1zm5bAfGYMQIUjvhxg8f9ms7SuHs7JIC8nPRgwFc0nw71cc/TgsnQ31WkJfgabghqfYoXfGRHgHvvESJJWRBaJSbNn+AAoT+uIXERsRu5HumUY1CVpHDCMeL3spvwq8aqOrBxQ2+JLzzrhvrcq4uhb514XScNHmJ0hARVQawJIrnz+8O37uBzXe6YiA/LtpdaBwzWyCRQDA==
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=U2XaB+ckofUpoaU1pmzu3s6eb0YZ/OuLFhLfOOAtr4E=;
 b=LM4baOrVvT0lWl3CJ3NBsXNMo417CK80tWTH47g9/9X10wPgXGnZjVnjyhLlUEJ59GX6dIJeJcvi8QlX6Dnydt+YS4Yk4tI6WMeTrOOa64X2Rd0TU2NrWc4KLc0CGT9+FlGOkNuA12wWaTnDCOlJvpkJ63hRpCLsJWbuIMNf0Lw=
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: <dc16dc72-4a35-457d-b019-2351e3051c32@amd.com>
Date: Tue, 3 Oct 2023 10:03: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.1
Subject: Re: [PATCH v2 3/5] arm/dom0less: put dom0less feature code in a
 separate module
Content-Language: en-US
To: Luca Fancellu <Luca.Fancellu@arm.com>, Stefano Stabellini
	<sstabellini@kernel.org>
CC: Bertrand Marquis <Bertrand.Marquis@arm.com>, Julien Grall
	<julien@xen.org>, Xen-devel <xen-devel@lists.xenproject.org>, Wei Chen
	<Wei.Chen@arm.com>, Volodymyr Babchuk <Volodymyr_Babchuk@epam.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>
 <725342EA-730F-4961-88A4-43EC0CBAD5BA@arm.com>
 <alpine.DEB.2.22.394.2309291242570.2348112@ubuntu-linux-20-04-desktop>
 <bc2a043a-9836-429b-88bb-6bedda5343bf@xen.org>
 <38AD4AA5-D038-4114-A614-80BF91FB51FB@arm.com>
 <alpine.DEB.2.22.394.2310021512210.2348112@ubuntu-linux-20-04-desktop>
 <0348B5FA-D65C-4D70-99A4-47398BD4266C@arm.com>
From: Michal Orzel <michal.orzel@amd.com>
In-Reply-To: <0348B5FA-D65C-4D70-99A4-47398BD4266C@arm.com>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DS2PEPF0000343F:EE_|BL1PR12MB5803:EE_
X-MS-Office365-Filtering-Correlation-Id: 2cf58a4b-c5ba-4f21-3ed7-08dbc3e72b88
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	APEAK77767WzR+RPjEQh0RJH7wdgV8n3jgr3/MFJffOnWde8kotMTB7O90QMGql5JFxN+9jKTqnkTnaQeGRD4ACbhXqrSErUFZNsTme8sC320jaBpCBklPe22uyV2k4rD13Xc07dCG7u4NJE/65h8v8KLBfoXoEok6LqRQDHcg2rZtAZ95G1qLgwnllzsfTuMMCSKPLHDA+V+1mxU6H7J5J2GHVlv1a8Rb2yp/rx+JQ6eVFWOR1vZR8EbKrgc63Nxrdcd4Sk45JVQm8ZGiEuD2GU9liAO8h4yF7++owvWep3xQzCqFZoAC0plWmwxh/qUSBeaTjWUhMKNa3RrPm98oUXMZMRBQrd4orlZkUYdGSctgftGKYAc+BNXYq7cymAnUqgYrx2ce9RDP4xSrfmH6NboyuJvNZ1R8isVbkKxgFVL6QPsSoxJo+SPr9TQFY0XaKitmcSDdiFJd4zhs5q00Me6YavKwXirFMs7KiJGcUJftHtdnfGgH3zsBMVS5xlWEunTNNSRbAeag0IZiAry70g9yMSIC6Sw/A31aeIZYpbRGpDd0k6xaZvSQiijkEwycTLJSYpKCAJzruzuxrSFd4bgt+zsQspOA25SXQfVnK8J3s86HLgly4U3pyJLFhhBNC7hheoz2CVwb8R7KSbTkrxKFAwL8sl3/WGGUTL7Lp1BCcz+dcE3Ba74cU0hhZrF/JHcVxABm/jxzfgXcojpC9KkrURcOrrlR2wAgCIMSwLMiZLcxPoZ1HqE1p9VIGVy1crWEr5A56uWCoAcMnOydkfd/4GV2xD0gv+kxPPM7bka86l9+uGrgTBPUO1yqNf
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)(230922051799003)(1800799009)(186009)(82310400011)(64100799003)(451199024)(46966006)(36840700001)(40470700004)(31686004)(4326008)(2906002)(70206006)(5660300002)(44832011)(8936002)(110136005)(966005)(41300700001)(478600001)(70586007)(8676002)(26005)(82740400003)(2616005)(53546011)(54906003)(426003)(336012)(316002)(81166007)(356005)(36860700001)(86362001)(47076005)(36756003)(40480700001)(31696002)(16576012)(83380400001)(40460700003)(32563001)(43740500002)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 03 Oct 2023 08:03:03.7330
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 2cf58a4b-c5ba-4f21-3ed7-08dbc3e72b88
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:
	DS2PEPF0000343F.namprd02.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BL1PR12MB5803

Hi Luca,

On 03/10/2023 09:44, Luca Fancellu wrote:
> 
> 
>>>>> 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?
>>>>
>>>> Looking at the name of the functions, I would expect that we would need another code movement in the future to move back Arm specific function under arch/arm/. So we would end up with two code movement as well.
>>>>
>>>> I would prefer if we wait until RISC-V/x86 needs it so we don't unnecessarily move Arm specific code in common/.
>>>
>>> I agree with Julien here.
>>> Moving the code now will mean moving part of it back in arm in the future once we have a second user of this.
>>> I would rather wait for the need to come so that we do this cleanly.
>>>
>>> Also using hyperlaunch name now would be weird as there was no agreement on the naming (as far as I know) so far.
>>
>> RISC-V is already using dom0less code, however in a downstream
>> repository. To make progress faster the code was copied (not shared)
>> from arch/arm to arch/riscv. More details on the Xen community call this
>> week. https://gitlab.com/xen-project/people/olkur/xen/-/blob/riscv_aia_support/xen/arch/riscv/domain_build.c?ref_type=heads
>>
>> Hyperlaunch also needs dom0less code to be made common to make progress:
>> https://marc.info/?l=xen-devel&m=169154172700539
>>
>> So I think that there is an immediate RISC-V and X86 need.
>>
>> But the point about "moving the code now will mean moving part of it
>> back in arm in the future" is valid. How do we move forward?
>>
>> I don't think we want to block Luca's progress to wait for more
>> plumbings done on x86 or RISC-V. Also we don't want to scope creep
>> Luca's series too much.
>>
>> But I think the goal should be to move dom0less code to xen/common as
>> soon as possible and make it arch neutral. How do we get there?
> 
> So here is why I felt painful doing now a move to the common code, but maybe you (maintainers) can give me some
> feedbacks.
> 
> I see that the functions that might be put in common are these, some of them however have arm specific code in them:
> 
> is_dom0less_mode
> allocate_bank_memory
> allocate_memory
> handle_passthrough_prop
> handle_prop_pfdt
> scan_pfdt_node
> check_partial_fdt
> domain_p2m_pages
> alloc_xenstore_evtchn
> domain_handle_dtb_bootmodule (contains reference to the gic)
> prepare_dtb_domU (have reference to psci, gic, vpl011)
> construct_domU (have reference to vpl011, static shared memory)
> create_domUs(have reference to vpl011, sve)
> 
> Here the functions that can stay in arm code:
> 
> make_gicv2_domU_node
> make_gicv3_domU_node
> make_gic_domU_node
> make_vpl011_uart_node
> 
> 
> Given that the status after the move to common of the above functions is not very clean, I’ve decided to don’t do that,
> however if you are fine with it, I can do the modification and who is going to work further on the subject can consolidate
> and make them build for other architecture.
> 
Another option would be to hold off for a while until work on hyperlaunch/RISCV dom0less starts to better understand the needs,
concepts and to avoid multiple code movement which results in a horrible history. I know this is not nice but I can tell you that
I had to stop working on some features like FLASK with dom0less, static domids for dom0less domUs, because according to the hyperlaunch design,
this will need to be common. With hyperlaunch, everything starts with the domain configuration that is supposed to be arch neutral, so
until this is done, it's difficult to do anything in this area.

~Michal


From xen-devel-bounces@lists.xenproject.org Tue Oct 03 08:26:59 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 03 Oct 2023 08:26:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612153.951990 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnajx-0001OU-Cb; Tue, 03 Oct 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 612153.951990; Tue, 03 Oct 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 1qnajx-0001ON-9m; Tue, 03 Oct 2023 08:26:49 +0000
Received: by outflank-mailman (input) for mailman id 612153;
 Tue, 03 Oct 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=N/VM=FR=citrix.com=prvs=63394bc6a=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qnaju-0001N6-MS
 for xen-devel@lists.xenproject.org; Tue, 03 Oct 2023 08:26:47 +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 95186ffe-61c6-11ee-98d2-6d05b1d4d9a1;
 Tue, 03 Oct 2023 10:26:44 +0200 (CEST)
Received: from mail-bn7nam10lp2106.outbound.protection.outlook.com (HELO
 NAM10-BN7-obe.outbound.protection.outlook.com) ([104.47.70.106])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 03 Oct 2023 04:26:37 -0400
Received: from MW4PR03MB6428.namprd03.prod.outlook.com (2603:10b6:303:123::8)
 by SN4PR03MB6783.namprd03.prod.outlook.com (2603:10b6:806:216::8)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.31; Tue, 3 Oct
 2023 08:26:34 +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.035; Tue, 3 Oct 2023
 08:26: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: 95186ffe-61c6-11ee-98d2-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1696321604;
  h=date:from:to:cc:subject:message-id:references:
   in-reply-to:mime-version;
  bh=7aVMZh3PbYLvdJHVasYoDgNmDBlRMTNgar8j4z/JXTY=;
  b=M1wNSasgJ6aEdnSKg/mWFxThQoIM5BL0XWckVJlj0r6p56Hb+B0xVuWE
   6bNXJKbA2YCW/HNIQZyx2BAJ2WUuFcG1piSaMITLbP71WXD99bYmkzzVL
   dteF2DJ0eNulFa0DUm0doT0zqXB7vbXUrCFkvUP4wqmGPnMyo4VmJ0K03
   g=;
X-CSE-ConnectionGUID: cbLU7tF1S0GpBJLpBDm2ig==
X-CSE-MsgGUID: Q6SebWtSQ0+xOA61PevlPg==
X-IronPort-RemoteIP: 104.47.70.106
X-IronPort-MID: 127220768
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:4ReRKq/ABrOrRK9tazkKDrUDFn+TJUtcMsCJ2f8bNWPcYEJGY0x3y
 WpLWm+Cb/iNMGX0fowjad+3o0kH7MODyt5jHgVq/yE8E34SpcT7XtnIdU2Y0wF+jCHgZBk+s
 5hBMImowOQcFCK0SsKFa+C5xZVE/fjVAOK6UKidYnwZqTZMEE8JkQhkl/MynrlmiN24BxLlk
 d7pqojUNUTNNwRcawr40Ird7ks01BjOkGlA5AdnPagQ5AW2e0Q9V/rzG4ngdxMUfaEMdgKKb
 76r5K20+Grf4yAsBruN+losWhRXKlJ6FVHmZkt+A8BOsDAbzsAB+v9T2M4nQVVWk120c+VZk
 72hg3ASpTABZcUgkMxFO/VR/roX0aduoNcrKlDn2SCfItGvn9IBDJyCAWlvVbD09NqbDklF/
 9gldywjNyvbqPqc4pajYMVp3MUseZyD0IM34hmMzBn/JNN/GdXpZfqP4tVVmjAtmspJAPDSI
 dIDbiZiZwjBZBsJPUoLDJU5n6GjgXyXnz9w8QrJ4/ZopTeLilUpjtABM/KMEjCObd9SkUuC4
 HrP4kzyAw0ANczZwj2Amp6prraVwnmhAN1MRNVU8NZT3maezFMPMyROFkuciKfgskOgX+pQf
 hl8Fi0G6PJaGFaQZtT9Uhj7sHOClhtBQ5xbFOhSwBGAzO/Y7hiUAkAATyVdc5o2uckuXzso2
 1SV2dTzClRHq6aJQHiQ8rOVqzKaOiUPK2IGIygeQmMt4cTnoYw1pgLCSJBkCqHdptf4Ay3qy
 jaG6i03nawOjNUj3r++u1vAhlqEmJ/NSQIk4xTNaUis5Ah5eY2NapSh7B7Q6vMoBIGdQ1qat
 X4Igf+C/fsOBpGAki+KaOgVFbTv7PGAWAAwmnZqFpglsj6rpHiqeNkI5CkkfR83dMEZZTXuf
 Unf/xtL44NeN2eraqkxZJ+tD8Mtzu7rEtGNuu3oU+eiq6NZLGevlByCr2bLt4wxuCDASZ0CB
 Ko=
IronPort-HdrOrdr: A9a23:I0bPWasnCFw0xYBQGkn2Ec957skCHIAji2hC6mlwRA09TyXGra
 2TdaUgvyMc1gx7ZJhBo7+90We7MBbhHLpOkPEs1NaZLXDbUQ6TQL2KgrGD/9SNIVycygcZ79
 YaT0EcMqyNMbEZt7ec3ODQKb9Jrri6GeKT9IHjJh9WPHxXgspbnmNE42igYy9LrF4sP+tCKH
 PQ3LsxmxOQPVAsKuirDHgMWObO4/XNiZLdeBYDQzI39QWUijusybjiVzyVxA0XXT9jyaortT
 GtqX2z2oyT99WAjjPM3W7a6Jpb3PPn19t4HcSJzuQFNzn2jQ6sRYJ5H5mPpio8ru2D4Esj1P
 PMvxAjFcJu7G65RBD8nTLdny3blBo+4X7rzlGVxVPlvMzCXTo/T+5Mn5hQfBf141cp+IgU6t
 MD40up875sST/QliX04NbFEzlsi0qPuHIn1coelWZWX4cyYKJY6aYf4ERWOpEdGz+S0vFQLM
 BeSOXnoNpGe1KTaH7U+kFp3dyXR3w2WiyLR0AT0/bloQR+rTRc9Q811cYflnAP+NYWUJ9f/d
 nJNaxuifVnUtIWRbgVPpZPfeKHTkj2BT7cOmObJlrqUIsdPWjWlpLx6LIpoMm3ZZ0zyocokp
 ipaiIViYcLQTOuNSSy5uwKzviUK1/NHggFi/suqqSRg4eMCoYCaka4ORITe8jJmYRtPiSUYY
 f3BHtsOY6TEYLfI/c34+TAYegtFZA/arxhhj9pYSP7nuv7bqvXi8f8TNH/YJLQLBdMYBKOPp
 JEZkm4GPl9
X-Talos-CUID: 9a23:yMeHlGBCrLlSh7n6EyJt0HNLBu58SSXy1F3yB1eSJWMzSbLAHA==
X-Talos-MUID: 9a23:eyKSkAZ+/OX0S+BTjmHXiTtdKPxRu+e+L2lTyK0Lpc28Onkl
X-IronPort-AV: E=Sophos;i="6.03,196,1694750400"; 
   d="scan'208";a="127220768"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=PfFl7JXDILhKzSQixv0rZgxIk3xeVmMB7OsFPyfWuPnlLoEGZBEr5mtkqyjAJBJDmPOrmjpUx5G5Fd4uL3CIsTvxN/zTa3DGcqLmg/GVadEMf+n9vUq8F3L2GIQ0xiJCgny+0ykUJ9PiQKKwfIAft5yrQgSz8EOTT9e1vL7mGrlYeGhzLaJU3lFGFYitthOT6FsnYNAnwngYCKWBBKjQQDdex2doWn5eAxhO4ptzHPsTrk+oe7dQ9ZEE5S79mt2AO5tP5dwaVbEHROoxLjSaWHjVoKGK/w4pI5h3xEyrjjY1LQNKYm9pNt96jf/MlHEr6rGK+sajuFs6qVq5IzHNgw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=s4SEbSUeX0wxdf1TuoUu0dy7VlBty+SBa7e7DTPIhds=;
 b=c3ZlkX0P6zosEn7uc2wei5hgqJ5dta7DwXG+Er45nx/CY747PjZsDNZDjJu+rWhc0Zh0Y6FFLCRGe+PLNzLbrg3xQFnE8AlmOJlQC74335mcFYkfCnVv2tUhBtG2qsX8b3bsIvbTXTczhToMqnFUodyiTNc7Y/dnWixkt0jt4pZcqbwSVX4osQDF3huhhpVXo4SSag5Z05lDc64gVd5FsfFMbcTQMwvSO3Sd+S0CvWYx/e+zIDYVR6B1yAKJ8J8sq22xzJ1jZDfelTU8lyODswMYBk7qpS3MjcimhDy/hbIhgXMtNcyajnS0R79KePg/qvf7dGIc6jNcLNEM1Opfjg==
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=s4SEbSUeX0wxdf1TuoUu0dy7VlBty+SBa7e7DTPIhds=;
 b=vFZK3m8MkF1mKWqBCWpdhUbdUhoUB3JrP5T8zhJlnAF4HVMRqCOxGMwKqagpIop1pf/VGSufXOM6kePRACytf5oxUcNHvExK6jYBsMKN4TX5727IT/Q7pWLuI4JAPjrIRA3J/Y5egpC+3WJOz3/AYNxZxvBG7aq3lHfwBS60pEM=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Tue, 3 Oct 2023 10:26:28 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Elliott Mitchell <ehem+xen@m5p.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>,
	Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>
Subject: Re: Issue with shared information page on Xen/ARM 4.17
Message-ID: <ZRvQNKyYpLDVTs0i@MacBookPdeRoger>
References: <ZRY7Ls3p6M6pakMq@mattapan.m5p.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <ZRY7Ls3p6M6pakMq@mattapan.m5p.com>
X-ClientProxiedBy: LO4P302CA0010.GBRP302.PROD.OUTLOOK.COM
 (2603:10a6:600:2c2::18) To MW4PR03MB6428.namprd03.prod.outlook.com
 (2603:10b6:303:123::8)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: MW4PR03MB6428:EE_|SN4PR03MB6783:EE_
X-MS-Office365-Filtering-Correlation-Id: 3093d4b0-a579-406e-f64c-08dbc3ea745f
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	O89z5S3CT+ke/P4+caMjF9ZXhXTbhHvOiK73pwHDuhUr1CHN5DQe5mW2x3sQwGWsGHHPpz5/s1j7pM1ghX8Vo6VIMqrqcRJhQfT9IayO7YlcD21JZYRW/3LBovN++rlk3e6D2j4PniAQBkydLO1ZolXGvotTGRJZR1YjMCh0avTvI1mUrnQtCSiLKoqwoMR19/jAfhGC0oSUABfGfEfwdLtfZFY5UbAJnWK3JqWkyzNmmngwz1sFbzx8KQYNRrKjiHjTHtpBETieT1JJ4p9nyikbB9B425kPJii7b+w8+DBQsVArMN5HYaF87Xdl2vWYOk+Wle7BIo5o+3S8HKoKUuEIQhhbkK7u/SO9l3DX3HUNBcSaZ0TZbIZWtrDZUTfOXpidwf6RSbZ9d3p6uPGuWIthQq5M9vT7k35THLqeIkdF5ThRhU4/R9HIndWD1/L5qkRl7o59cacSFs7e6QUKPEjaGAN4hBvR/Nmeu2XyD2oJjHK5srfWIwNuCEi6I91x2zkbuFM2ZXVLIFMIxWk17dy8mGj1zluhZ54ToGQ94A/Z0+JQRNxA87Oje6IQoQk3
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)(346002)(136003)(396003)(39860400002)(376002)(230922051799003)(186009)(451199024)(1800799009)(64100799003)(2906002)(66899024)(86362001)(6512007)(9686003)(26005)(6666004)(478600001)(6506007)(6486002)(85182001)(83380400001)(82960400001)(38100700002)(33716001)(316002)(66556008)(8936002)(66946007)(66476007)(5660300002)(54906003)(41300700001)(8676002)(4326008);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?b2cxR0VGTUE1UWVYb1ZhRFJ6N1dtTldmVEhJbHRHQXJPMk1oTXNsb0pUc2dF?=
 =?utf-8?B?Z2p3ck9jaXRmOWNzYnlBTjNXQjRPaThienl1S2RjOVp0WTVFZ0VYWjd4cWhm?=
 =?utf-8?B?cnVrVDMwdUxPbTllampOcnpaZFZ3WHU1UXJnNFhXRjlaTS94VlJ1ZmZYUloz?=
 =?utf-8?B?UVU5dTNZT2g5MXQ2MmtyQm9ibU4yVm5DcmZwNk1KRlZ0eWw0Rzcrci9CWVZ6?=
 =?utf-8?B?L1J0Uk1ZVUo3TEt3NWRhTGFDc0N4eTFIajI1R3U5ZHlGUjZRd2hWLzFOeUtE?=
 =?utf-8?B?UHJsL0ZlWmNqMTJZWnE0UWZRNnRONFAvTGpUOW1DeUpjS25tWWNZZmNud0g1?=
 =?utf-8?B?OThmR1J3RVdwZFFEcUgveXpCbE5DUUQvaU9IdkNzRXJCV3czeTZuVDlRaU1Z?=
 =?utf-8?B?dUJ5clMxTHZpS3RIdzUvRHhza3UzUDAvdGJ0aTg5UHFOdnlicGk0L3BwV1ZD?=
 =?utf-8?B?ZWFpQUtJOXRiNGVwL2RJQTJ4YnZrZDA3YWZzR2ExRk43NFlPbG4wL3FLZkVT?=
 =?utf-8?B?bXpCR2ZTSVVxQTVnTDduaUpYUTNyQlBOT29NTEx2Qmh4Q0hNbC83RjY3YllO?=
 =?utf-8?B?TFlmMUxKVmZhOVhFeEJrTTdNa0ZjUjFXVXFXOUR0ZlU2eFQ2ZnBJTFNJN0g4?=
 =?utf-8?B?MFZ4MFZBUHk0UGJxbzJmVDhQVXY2WkVFbUNpYkVUOE1HUGx1UkpPZmN3OHU0?=
 =?utf-8?B?RnN2UStyaDVPUVUvcWJqZmpjS05raTZiVGM4OEtmM3pkcHcvcmVVbnNFOUI3?=
 =?utf-8?B?V0xBUFJMdmNRdjZTTW1GY0RiL09pMkJlbVFNU2RMZkZOclFsVXYrdm4zWGFy?=
 =?utf-8?B?aWYrR2VOKzg3dEdvSHByejVmY01PcTU4M3FwMmduRlBkeDhwNmV2VXFuTWQr?=
 =?utf-8?B?Y1NuQTJXUzFEMzhxcXlvck9RTW5IcTE4blRkSjM4V1REeTZ5OG5zaVhhZ3pj?=
 =?utf-8?B?dWxEdThnWG55WXJhYWMrRXBleHE0d25lYTVSZzRGS0lLdlFJK0QrTmVQOERH?=
 =?utf-8?B?T2ZOazkwVnNpZjc1UzhPaUVMbUl5VE8xQXdtd2Jad1FCSzJwd1QxSEdDVUhx?=
 =?utf-8?B?ZDVwWC83Ym9xVGpmdWI1OTdSY2ZkeFlJNStteVF5QkNubFlGekVlclB0cGhN?=
 =?utf-8?B?eGNhNENtcVV4UzhpQmtWSExmRnE4NkRKV3FKWUp0R0xQcGxYSnF1YUdPLzhC?=
 =?utf-8?B?bG9pYnVlbzNDTmVSWUxjRUNsaWhrM0ZjMTBXOGQ4eC8wNVpsdmQwT3RwZGVj?=
 =?utf-8?B?dFdSTE96RXF3Y2VNRjNudHY2ajA0TDFLb3hQQUxFdVlPVkdJY0xocnlTTlFY?=
 =?utf-8?B?ek5tWWVpaHdHSWNYL1JISkI2b00yQTFmdTJJSTNKMUcxVGE2V1pEblYyVkx3?=
 =?utf-8?B?NUJiS2RYcXdmVmdZVDAzRDg3WlNObCs1enRyZTBlNlFPREhpdUVrbzBKZXpX?=
 =?utf-8?B?dnpYd3g3Yk16QytBb2FEZUFrdzNPMDRDalhBTklvWmJXSkMrSzNkcHpUUVVS?=
 =?utf-8?B?Q3N0YkgvaEJldThZUHJOL3ppZC9xU1B0a1k2Y3IyekdVK0h6SXZsdmw5RlFF?=
 =?utf-8?B?NTRTVHhjalpsTENFSUhhRmxwSHZVVHVxamRpUmFIZ1VDTm55SnMvR2FiS3Yx?=
 =?utf-8?B?RTJ2Ymd5QWIrbDRXdE5KbHNRdU44SEkwd2Rpb0FOcjN3MmRVSVR6MDVBQmVW?=
 =?utf-8?B?TG9xRTJ3UGlOZTRVejVCRnRlaS8xbk9YYUNmSUFNSjB1Y2R5MnpuVnFQN2xQ?=
 =?utf-8?B?UjV3bUUvb0ZuaWsvQ1BHOGN5R3lRcHlJMkFPOXJ0bTllSGZvRmMyV1ZCQ1I0?=
 =?utf-8?B?S216M3ZlYTJzc2w1TlA3QjNkWW9iTXpkK0J1VEFZUnhNMWEyQnBOdk80VWJW?=
 =?utf-8?B?VmF0ZXpFeldrYk1KRkdwWDIvd3MweUs0UmRnc2NZOHFQcENTSG9NeVJOdWRL?=
 =?utf-8?B?YnRUT2pqVDJCWnBnNytGQ29sVUNPRHA2TnZGRzZxM0xKaEM4Z1NZeXJPa0Jp?=
 =?utf-8?B?OEdSWm1xd0FhWkJac2FIT2s3YVJXZDJ6eEJ2OG1yaTByejRDUzcrai8rUEsx?=
 =?utf-8?B?WE1hZWRRVmJqL0ZLa3BpMDNtRnJPbVNNdVd3bzZobTZhVWJmc3doK1VrYy9O?=
 =?utf-8?B?TmRxZlk2VHByOHp3Z1hyYlF0UTc4NEhaSDBKbjh2SVgyVnd2M2RTZlpYWlhh?=
 =?utf-8?B?WEE9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	zpJi0uHKQOV55pOHshHHRO2Px2x81YIl9PUwe3tzrh8a7okbmZPtfrN+GWQrA77tr3TyCeo2b1aljqBQzoHVS7vDM00ex6veerQwwhEQ8C6SXX58jZR3xHAWlVnLJYE2sYN6esZOFjRPNJXW0f/Sp2r06ndfiw8XSs4qsd4HQdM8CHobuVxlcm9FPf1BbMgeObU08J/TE96HjZZ0RpaIbcQLsO2fmruV1y5emE9V+jdqO1WQYIUTTbqQVuSl28j2sXOFKj4FaRznColT2WqM4gcyi+FeyhYjlDC8h6jDsnulaVyM33RcWh8KBayD850jPrOPCoF5PLiRU++pt4qgjW42bNj6ynReFGvuiJ7ny+iQFRFvCfz+PeDhQtO6P4dXRdaZU0xBdeO1FE0xjbmCiqHsXL+EU66VIehBM8ZBz+hwSuI8uytM3RRlxotpNS3yuRKTZvf962D8MYREHj1jrWtBzcRQB+eVuWlc8bv60Q8zlwStfI3ITNWMtGE3gd3Vv4D916ZtdnXjBnPgZE9J69JfaME6HrUMLpqBzu/zLWKUV2xMZvbDl+QljmvzUtpW1ALsmBjUrPphtAZMrbBL/Hs0p9FMIam0GLMWMBg8sb/SwYKYX6isEUVeVXmYDlPU1of2KHKJLcOBE1VDa5A1hnnbaJLIdRVLHdQiFSVn0Y3iebBf5Y4+iIZV2ayFgfB9MupBYBvH11eAVAxul9lS3LGY1fzsrbwByQk2isfDaIO+tH9zz1shrEVEpiP8nJTc6XKrPB1WA3qBFBD1aQEGbN+oWChXWV2dv2BGoPBt1KoFX3tnU5938lQXY7l+2KaCh2UcwpWbP3sN9OrwTCRRz/hwTBMxa0WxqQS7hX5GKzaZ7Pa9g+lZFyzE/jmMQWLq0DGAt06APLRZly+3IIt7Fw==
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 3093d4b0-a579-406e-f64c-08dbc3ea745f
X-MS-Exchange-CrossTenant-AuthSource: MW4PR03MB6428.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 03 Oct 2023 08:26:34.6738
 (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: BO7Ak5KLeyvIGMbBfIYAS25d0MMCxM2VGuZVNNnZCtGRd1wR17E2P4hq7mdArl++9vQLjEdnJsT+OMSx63mBXg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN4PR03MB6783

On Thu, Sep 28, 2023 at 07:49:18PM -0700, Elliott Mitchell wrote:
> 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.

This is due to 71320946d5edf AFAICT.

> 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?

I think the issue is that you are mapping the shared info page over a
guest RAM page, and in order to do that you would fist need to create
a hole and then map the shared info page.  IOW: the issue is not with
edk2 not having unmapped the page, but with FreeBSD trying to map the
shared_info over a RAM page instead of a hole in the p2m.  x86
behavior is different here, and does allow mapping the shared_info
page over a RAM gfn (by first removing the backing RAM page on the
gfn).

Ideally we would like to use an unpopulated gfn, but doing so is not
trivial right now, as the point where the shared_info page is mapped
we don't yet have an easy way to account for unpopulated regions.

My suggestion would be to do something like:

diff --git a/sys/x86/xen/hvm.c b/sys/x86/xen/hvm.c
index 4122daeaf600..7251bc69ae15 100644
--- a/sys/x86/xen/hvm.c
+++ b/sys/x86/xen/hvm.c
@@ -194,18 +194,20 @@ xen_hvm_init_shared_info_page(void)
 {
 	struct xen_add_to_physmap xatp;
 
-	if (xen_pv_domain()) {
-		/*
-		 * Already setup in the PV case, shared_info is passed inside
-		 * of the start_info struct at start of day.
-		 */
-		return;
-	}
-
 	if (HYPERVISOR_shared_info == NULL) {
+		struct xen_remove_from_physmap rm = {
+			.domid = DOMID_SELF,
+		};
+		int rc;
+
 		HYPERVISOR_shared_info = malloc(PAGE_SIZE, M_XENHVM, M_NOWAIT);
 		if (HYPERVISOR_shared_info == NULL)
 			panic("Unable to allocate Xen shared info page");
+
+		rm.gpfn = vtophys(HYPERVISOR_shared_info) >> PAGE_SHIFT;
+		rc = HYPERVISOR_memory_op(XENMEM_remove_from_physmap, &rm);
+		if (rc != 0)
+			printf("Failed to remove shared_info GFN: %d\n", rc);
 	}
 
 	xatp.domid = DOMID_SELF;

But in the long term we should see about initializing the shared_info
page as part of xenpv_attach().

Regards, Roger.


From xen-devel-bounces@lists.xenproject.org Tue Oct 03 08:45:46 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 03 Oct 2023 08:45:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612161.952000 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnb2A-0008FG-Qt; Tue, 03 Oct 2023 08:45:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612161.952000; Tue, 03 Oct 2023 08:45: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 1qnb2A-0008F9-O3; Tue, 03 Oct 2023 08:45:38 +0000
Received: by outflank-mailman (input) for mailman id 612161;
 Tue, 03 Oct 2023 08:45: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=Ly7j=FR=samsung.com=j.granados@srs-se1.protection.inumbo.net>)
 id 1qnb29-0008BH-LQ
 for xen-devel@lists.xenproject.org; Tue, 03 Oct 2023 08:45:38 +0000
Received: from mailout2.w1.samsung.com (mailout2.w1.samsung.com
 [210.118.77.12]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 37ee0da4-61c9-11ee-98d2-6d05b1d4d9a1;
 Tue, 03 Oct 2023 10:45:36 +0200 (CEST)
Received: from eucas1p1.samsung.com (unknown [182.198.249.206])
 by mailout2.w1.samsung.com (KnoxPortal) with ESMTP id
 20231003084534euoutp02d3766c81a6f9a4371503d95d11327ab1~KjIoTk90b0307303073euoutp02m;
 Tue,  3 Oct 2023 08:45:34 +0000 (GMT)
Received: from eusmges2new.samsung.com (unknown [203.254.199.244]) by
 eucas1p1.samsung.com (KnoxPortal) with ESMTP id
 20231003084529eucas1p17c63898bf432159da3eaaba9b7b6f86d~KjIjtXWA41008410084eucas1p1w;
 Tue,  3 Oct 2023 08:45:29 +0000 (GMT)
Received: from eucas1p1.samsung.com ( [182.198.249.206]) by
 eusmges2new.samsung.com (EUCPMTA) with SMTP id 83.01.11320.9A4DB156; Tue,  3
 Oct 2023 09:45:29 +0100 (BST)
Received: from eusmtrp2.samsung.com (unknown [182.198.249.139]) by
 eucas1p1.samsung.com (KnoxPortal) with ESMTPA id
 20231003084528eucas1p172b5a744b37bf5aa4d6028a7a008f8f3~KjIjC-MdF1432014320eucas1p1e;
 Tue,  3 Oct 2023 08:45:28 +0000 (GMT)
Received: from eusmgms1.samsung.com (unknown [182.198.249.179]) by
 eusmtrp2.samsung.com (KnoxPortal) with ESMTP id
 20231003084528eusmtrp2259166a349da7be7d0a696cf9bc05b33~KjIjBJitX1344313443eusmtrp2P;
 Tue,  3 Oct 2023 08:45:28 +0000 (GMT)
Received: from eusmtip1.samsung.com ( [203.254.199.221]) by
 eusmgms1.samsung.com (EUCPMTA) with SMTP id BB.D4.10549.8A4DB156; Tue,  3
 Oct 2023 09:45:28 +0100 (BST)
Received: from CAMSVWEXC02.scsc.local (unknown [106.1.227.72]) by
 eusmtip1.samsung.com (KnoxPortal) with ESMTPA id
 20231003084528eusmtip1fb4b1d3ca9e1b33f0519e7023f40cef0~KjIiriNZS2921429214eusmtip1p;
 Tue,  3 Oct 2023 08:45:28 +0000 (GMT)
Received: from localhost (106.210.248.115) by CAMSVWEXC02.scsc.local
 (2002:6a01:e348::6a01:e348) with Microsoft SMTP Server (TLS) id 15.0.1497.2;
 Tue, 3 Oct 2023 09:45:27 +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: 37ee0da4-61c9-11ee-98d2-6d05b1d4d9a1
DKIM-Filter: OpenDKIM Filter v2.11.0 mailout2.w1.samsung.com 20231003084534euoutp02d3766c81a6f9a4371503d95d11327ab1~KjIoTk90b0307303073euoutp02m
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=samsung.com;
	s=mail20170921; t=1696322734;
	bh=O9E7ceDNyRwXJ2xGZgRki4b16kn1UdOkC9S8733H0+Q=;
	h=Date:From:To:CC:Subject:In-Reply-To:References:From;
	b=q/PAqxicyIL14ZnJRAF5TyZhsBkX76tWzXB1ID9EbQz7XUIupSeiR86qJJf5vhoPP
	 BL7cuUOl+jHVlKjvlobtUhDdK7wgOGhEzSc3f5P+PsqkxPA8WgtV5Cucu//KbMH3Uh
	 bKF5wvkeRwc/Peu9I3nElFhegXa8tV8fwH0otB9s=
X-AuditID: cbfec7f4-993ff70000022c38-3f-651bd4a97e7d
Date: Tue, 3 Oct 2023 10:47:49 +0200
From: Joel Granados <j.granados@samsung.com>
To: Christophe Leroy <christophe.leroy@csgroup.eu>
CC: 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>,
	"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 v2 00/15] sysctl: Remove sentinel elements from drivers
Message-ID: <20231003084749.4xxi4z64hgq5a5lw@localhost>
MIME-Version: 1.0
Content-Type: multipart/signed; micalg="pgp-sha512";
	protocol="application/pgp-signature"; boundary="fnnv6en4biooyeg3"
Content-Disposition: inline
In-Reply-To: <64fd22df-616e-9f5a-26fb-44c4b3423b0c@csgroup.eu>
X-Originating-IP: [106.210.248.115]
X-ClientProxiedBy: CAMSVWEXC01.scsc.local (2002:6a01:e347::6a01:e347) To
	CAMSVWEXC02.scsc.local (2002:6a01:e348::6a01:e348)
X-Brightmail-Tracker: H4sIAAAAAAAAA2VTa0wUVxjtndmdWTZiBrTldjHBAGlaUCqU6NciVFPbTOSHplhDjQlSHUAK
	i90FpRpbsCAFledCYXnIe1dWQHGhsIIIRh6CCmXLAkJFXlagivKWsJZ1aGvSf+ec+33n3HOT
	KyItH9ES0VFpKCeT+gbZUmJBVdPivc2X9NbcFkW9GbQY8glYTm6ioT/5MQ2FLY8IeFWVRELW
	/SgB3IiqQHAjvZQC/ewzCsp00QSMNg3R8FNBOQXdv7KQmXiNAFVXOYLB3yWQ31NFQEZ6C4Ks
	Xhd4mr0B6vJW/HJDoP1cMHRUxQthRFNJg+JlEQmpSVMUdOmyKIi5qEMw1nhBAOcM1RS0F1yg
	YWneKARVs5GAnsRRBHEJMQiact+BhaUlIdQOjiCYa5tEkFrsBNkzqSSoJ7NJqFd201CUoSah
	WbVMgabMB+oVl0m42aZYkYwnIfr8Ig23KvoIWFpYCZ7XphA7trJdek926WUyYjMjOgXsbO89
	gtVe6iXY/qIaxNbN5QrYGuUAzeZWhLE6XSTNXlM7sAW1Twh2OXYr2zfhzlaUxFLsgjqB3Lvx
	gHj7ES7o6HFO9qHHIXHApKoSHTP4h8eMDRERSOMZh8xEmHHF2mg1HYfEIktGjXBa6QzFkxmE
	U7qeC3kyjXBnT98KEb1eMeZwvK5CeLxhivx3qHLq8aqXFuHetCrCFCJg7HFF1CWhCVPMJnx/
	sp80Oa1nXHD8xGsnkolZhweudCHTzDrGExvyS2gTNme24RdxM0IeW+DWjBGBCZNMOJ6u0xEm
	H5KxxiqjyCSbMR5YuZxE8N3scEfWBMXj0/iOto8wZWHm7Brc9meqkD/YhXMGH67idXi8WUvz
	eAN+VXNxdSEF4XrjFM0TDcLFkbOrEW44Sj+yurETj0c0Iv6N1uKevyz4i67FyVW/kLxsjn8+
	a8lPv4c1f0wKEpGd8o1qyjeqKf+rxstOuCdVQf1PdsTFeRMkj91xWdkzQS6iS5AVFyYP9ufk
	LlLuhJPcN1geJvV3OhwSXIFWfl6bsXmmGqnGnzs1IkKEGpH9yvLQFU0HkgikIVLOdr35/tsS
	ztL8iO/3JzlZiI8sLIiTNyJrkcDWytzRvfWwJePvG8p9y3HHONk/p4TITBJB2KQ36LcvdNbG
	OKwZdr3nfvvJ3sBZ+202sv7vxO1+p0uqP3H7zKP8B6+W+cCDz2sNdn6fZzz49LfY+soagy58
	4ITj1znHTyzm3xkVx/q4LfeJD14lUzbtsXZtuBpR2P8F0fKC8vnqmPehc6cix76xUA8Gjc13
	a0/d+lK4+WaSnzxn95hiy4H3C4ebrid/cKH7cuTDM+3R3tfsF70epHUOlzZaXH+2s9obHBZ1
	75brd7UMOMd42NKtT68+vXv9vIU4SJ86FrqxK2/yxwNv3Q/oK5F+VD+8z2vHdGZ1gVbi6hH6
	NluU4dy77B067p7WUXrm44RWZXzpnuEgG5aW2Mhe3A3c57VoNbffViAP8HV2IGVy378BjDSm
	zPQEAAA=
X-Brightmail-Tracker: H4sIAAAAAAAAA2VTaUxcVRj1vje8N4whfQLiE1pDp6Rpqw4My/Cxiv3jM5BooqENpuLYvkKV
	YXCGqZWkLAoBBtqyGhgW2feyDDDsUKcUUEiLZd8qLZst2E3KWkYHpqYm/jv3fGf5cnMvFzfd
	Jiy554JDWVmwOIhP8Dj9ut6Zd8uGrVi7tpQD0DdWgMFOSg8J0ylLJBT13cXgb00yDtm3ojnQ
	Ga1G0JlxlYDhZ48IqG6NwWCh5x4JPxTWEDDaxEBWUj0GpUM1CGZHLKFgXINBZkYfguwJe3iY
	sx868vV5eVIYSJDAoOayEcxXNpKQtlWMQ3ryYwKGWrMJiP2pFcGi9hIHEsaaCRgovETC9rrO
	CEp7dRiMJy0gUF6JRdCTZwEb29tG0D47j2CtfwVBeokAclbTcShbycGhSzVKQnFmGQ69pTsE
	VFb7Q1daFQ7X+tP0lC4MYhI3SbiunsRge0NfvN6QinmJmKFhb2Z7KwUxWZG/cZhnEzcxpqF8
	AmOmi1sQ07GWx2FaVDMkk6dWMK2tUSRTX3aMKWy/jzE78SJmctmDUVfEE8xG2RX8Y2s/gbtM
	qghlrQOl8lAP/mdCsBcIXUBg7+giEDo4n3K1d+LberqfYYPOnWdltp5fCAI37wyikJGACwN1
	jSgSlXsrEZdLU460LpdVIh7XlCpG9MZKPqZExnp+P123OmJkwGb081ElYRA9QfS1rjIjw6EB
	0VNFneSuikPZ0Oro8j0HQb1D31qZxncbzCl7+vLyXgNOxZrRt+Nq8F2NGeVNjxVU7HlNKGf6
	qXL1RehdREepGo0Mg9foXzLnObtBOHWeLo3/1gCt6FIdd1dhTHnSqp3kF0sfogezlwkDvkj/
	tbOIkpCZ6j9BqpdBqpdBuwpcv3NL4zTxP/ptuiR/GTdgD7q6+hEnD5EVyJxVyCUBErlQIBdL
	5IrgAMFpqUSN9C9f07NZ34xyHzwRaBHGRVpko3feq60cRJacYGkwyzc38b1hyZqanBF/F8bK
	pP4yRRAr1yIn/R0m45avn5bqv1FwqL9QZOckdBS52Dm5iBz4b5h8GBInNqUCxKHs1ywbwsr+
	9WFcY8tI7JM20fMYt4zD9qKgE0Ve37T41bY/CGgeb9uSqC68CYeNj1wNz2rhSS3IwF717Emf
	I1RcRcRx17Aml/Vac87En6n7zBP8ruf7L9BRB6W87tRXN+9/MPa0zzPxx9+74OivWUu8RAtl
	yacfeTicfLjjZjd6Ft0Mesx5v+OritBo525tfEh1nfXRgkh/m7nYtxbCJ7+XFnOH3Zcm3rNT
	t0586S7RqDd9DwysTdnOBMJcxufiyhSm1HaGPLjSdUh0NvdG/hwesbUk9/FavMMzjSjELTQ/
	n4oE56m6ELfbM0rtQR/qxB9eM2b7/Hw7Liq40Si8iTWzS6k67ljVTbm+YiWNTdPwOfJAsfAY
	LpOL/wHYFGJwjgQAAA==
X-CMS-MailID: 20231003084528eucas1p172b5a744b37bf5aa4d6028a7a008f8f3
X-Msg-Generator: CA
X-RootMTR: 20231002122730eucas1p17643da82bb9aa655b35c3562446ad395
X-EPHeader: CA
CMS-TYPE: 201P
X-CMS-RootMailID: 20231002122730eucas1p17643da82bb9aa655b35c3562446ad395
References: <20231002-jag-sysctl_remove_empty_elem_drivers-v2-0-02dd0d46f71e@samsung.com>
	<CGME20231002122730eucas1p17643da82bb9aa655b35c3562446ad395@eucas1p1.samsung.com>
	<64fd22df-616e-9f5a-26fb-44c4b3423b0c@csgroup.eu>

--fnnv6en4biooyeg3
Content-Type: text/plain; charset="iso-8859-1"
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

On Mon, Oct 02, 2023 at 12:27:18PM +0000, Christophe Leroy wrote:
>=20
>=20
> Le 02/10/2023 =E0 10:55, Joel Granados via B4 Relay a =E9crit=A0:
> > From: Joel Granados <j.granados@samsung.com>
> >=20
<--- snip --->
> >          - 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 a=
ny
> >          of the drivers in the patch. To measure it comment the printk =
in
> >          `new_dir` and uncomment the if conditional in `new_links` [3].
> >=20
> > ---
> > Changes in v2:
> > - Left the dangling comma in the ctl_table arrays.
> > - Link to v1: https://lore.kernel.org/r/20230928-jag-sysctl_remove_empt=
y_elem_drivers-v1-0-e59120fca9f9@samsung.com
> >=20
> > Comments/feedback greatly appreciated
>=20
> Same problem on powerpc CI tests, all boot target failed, most of them=20
> with similar OOPS, see=20
> https://patchwork.ozlabs.org/project/linuxppc-dev/patch/20231002-jag-sysc=
tl_remove_empty_elem_drivers-v2-15-02dd0d46f71e@samsung.com/
I found the culprit!. Here you are rebasing on top of v6.5.0-rc6 "INFO:
Looking for kernel version: 6.5.0-rc6-gbf2ac4d7d596". The error makes
sense becuase in that version we have not introduced the stopping
criteria based on the ctl_table array size, so the loop continues
looking for an empty sentinel past valid memory (and does not find it).
The ctl_table check catches it but then fails to do a proper error
because we have already tried to access invalid memory. The solution
here is to make sure to rebase in on top of the latest rc in v6.6.

>=20
> What is strange is that I pushed your series into my github account, and=
=20
> got no failure, see https://github.com/chleroy/linux/actions/runs/6378951=
278
And here it works because you use the latest rc : "INFO: Looking for
kernel version: 6.6.0-rc3-g23d4b5db743c"

>=20
> Christophe
>=20
> >=20
> > Best
> >=20
> > Joel
> >=20
> > [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 =3D=3D NULL, while the sentinel is still present. And when t=
he
> > sentinel is removed, it will stop on the table_size. You can go to
> > (https://lore.kernel.org/all/20230809105006.1198165-1-j.granados@samsun=
g.com/)
> > for more information.
> >=20
> > [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.or=
g/
> > * 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.or=
g/
> > * Patch set to deprecate register_sysctl_paths()
> >    https://lore.kernel.org/all/20230302202826.776286-1-mcgrof@kernel.or=
g/
> > * 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@uniontec=
h.com
> >=20
> > [3]
> > To measure the in memory savings apply this on top of this patchset.
> >=20
> > "
> > 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 =3D new_name;
> >          table[0].mode =3D S_IFDIR|S_IRUGO|S_IXUGO;
> >          init_header(&new->header, set->dir.header.root, set, node, tab=
le, 1);
> > +       // Counts additional sentinel used for each new dir.
> > +       printk("%ld sysctl saved mem kzalloc \n", sizeof(struct ctl_tab=
le));
> >=20
> >          return new;
> >   }
> > @@ -1199,6 +1201,9 @@ static struct ctl_table_header *new_links(struct =
ctl_dir *dir, struct ctl_table_
> >                  link_name +=3D 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, li=
nk_table,
> >                      head->ctl_table_size);
> >          links->nreg =3D nr_entries;
> > "
> > and then run the following bash script in the kernel:
> >=20
> > accum=3D0
> > for n in $(dmesg | grep kzalloc | awk '{print $3}') ; do
> >      echo $n
> >      accum=3D$(calc "$accum + $n")
> > done
> > echo $accum
> >=20
> > [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=3D429940038, After=3D429937606, chg -0.00%
> >=20
> > [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=3D1885527, After=3D1885463, chg -0.00%
> >=20
> > [6] https://lore.kernel.org/all/20230913-jag-sysctl_remove_empty_elem_a=
rch-v2-0-d1bd13a29bae@samsung.com/
> >=20
> > Signed-off-by: Joel Granados <j.granados@samsung.com>
> >=20
> > To: Luis Chamberlain <mcgrof@kernel.org>
> > To: willy@infradead.org
> > To: josh@joshtriplett.org
> > To: Kees Cook <keescook@chromium.org>
> > To: Phillip Potter <phil@philpotter.co.uk>
> > To: Clemens Ladisch <clemens@ladisch.de>
> > To: Arnd Bergmann <arnd@arndb.de>
> > To: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
> > To: Juergen Gross <jgross@suse.com>
> > To: Stefano Stabellini <sstabellini@kernel.org>
> > To: Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>
> > To: Jiri Slaby <jirislaby@kernel.org>
> > To: "James E.J. Bottomley" <jejb@linux.ibm.com>
> > To: "Martin K. Petersen" <martin.petersen@oracle.com>
> > To: Doug Gilbert <dgilbert@interlog.com>
> > To: Sudip Mukherjee <sudipm.mukherjee@gmail.com>
> > To: Jason Gunthorpe <jgg@ziepe.ca>
> > To: Leon Romanovsky <leon@kernel.org>
> > To: Corey Minyard <minyard@acm.org>
> > To: Theodore Ts'o <tytso@mit.edu>
> > To: "Jason A. Donenfeld" <Jason@zx2c4.com>
> > To: David Ahern <dsahern@kernel.org>
> > To: "David S. Miller" <davem@davemloft.net>
> > To: Eric Dumazet <edumazet@google.com>
> > To: Jakub Kicinski <kuba@kernel.org>
> > To: Paolo Abeni <pabeni@redhat.com>
> > To: Robin Holt <robinmholt@gmail.com>
> > To: Steve Wahl <steve.wahl@hpe.com>
> > To: Russ Weight <russell.h.weight@intel.com>
> > To: "Rafael J. Wysocki" <rafael@kernel.org>
> > To: Song Liu <song@kernel.org>
> > To: "K. Y. Srinivasan" <kys@microsoft.com>
> > To: Haiyang Zhang <haiyangz@microsoft.com>
> > To: Wei Liu <wei.liu@kernel.org>
> > To: Dexuan Cui <decui@microsoft.com>
> > To: Jani Nikula <jani.nikula@linux.intel.com>
> > To: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
> > To: Rodrigo Vivi <rodrigo.vivi@intel.com>
> > To: Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com>
> > To: David Airlie <airlied@gmail.com>
> > To: Daniel Vetter <daniel@ffwll.ch>
> > Cc: linux-kernel@vger.kernel.org
> > Cc: xen-devel@lists.xenproject.org
> > Cc: linux-serial@vger.kernel.org
> > Cc: linux-scsi@vger.kernel.org
> > Cc: linuxppc-dev@lists.ozlabs.org
> > Cc: linux-rdma@vger.kernel.org
> > Cc: openipmi-developer@lists.sourceforge.net
> > Cc: netdev@vger.kernel.org
> > Cc: linux-raid@vger.kernel.org
> > Cc: linux-hyperv@vger.kernel.org
> > Cc: intel-gfx@lists.freedesktop.org
> > Cc: dri-devel@lists.freedesktop.org
> >=20
> > ---
> >=20
> > ---
> > Joel Granados (15):
> >        cdrom: Remove now superfluous sentinel element from ctl_table ar=
ray
> >        hpet: Remove now superfluous sentinel element from ctl_table arr=
ay
> >        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 arr=
ay
> >        parport: Remove the now superfluous sentinel element from ctl_ta=
ble 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_tab=
le array
> >        fw loader: Remove the now superfluous sentinel element from ctl_=
table array
> >        raid: Remove now superfluous sentinel element from ctl_table arr=
ay
> >        Drivers: hv: Remove now superfluous sentinel element from ctl_ta=
ble array
> >        intel drm: Remove now superfluous sentinel element from ctl_tabl=
e array
> >=20
> >   drivers/base/firmware_loader/fallback_table.c |  1 -
> >   drivers/cdrom/cdrom.c                         |  1 -
> >   drivers/char/hpet.c                           |  1 -
> >   drivers/char/ipmi/ipmi_poweroff.c             |  1 -
> >   drivers/char/random.c                         |  1 -
> >   drivers/gpu/drm/i915/i915_perf.c              |  1 -
> >   drivers/hv/hv_common.c                        |  1 -
> >   drivers/infiniband/core/iwcm.c                |  1 -
> >   drivers/infiniband/core/ucma.c                |  1 -
> >   drivers/macintosh/mac_hid.c                   |  1 -
> >   drivers/md/md.c                               |  1 -
> >   drivers/misc/sgi-xp/xpc_main.c                |  2 --
> >   drivers/net/vrf.c                             |  1 -
> >   drivers/parport/procfs.c                      | 28 +++++++++++-------=
---------
> >   drivers/scsi/scsi_sysctl.c                    |  1 -
> >   drivers/scsi/sg.c                             |  1 -
> >   drivers/tty/tty_io.c                          |  1 -
> >   drivers/xen/balloon.c                         |  1 -
> >   18 files changed, 11 insertions(+), 35 deletions(-)
> > ---
> > base-commit: 0e945134b680040b8613e962f586d91b6d40292d
> > change-id: 20230927-jag-sysctl_remove_empty_elem_drivers-f034962a0d8c
> >=20
> > Best regards,

--=20

Joel Granados

--fnnv6en4biooyeg3
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQGzBAABCgAdFiEErkcJVyXmMSXOyyeQupfNUreWQU8FAmUb1TMACgkQupfNUreW
QU+dSwv/VdmQFmwGJjil1rJHyE+Sc/SnIzc2236zL26xGDgEbQ5tSma2ncYbXdL4
nIY2i4Z9kQshrOjHGUx911wqp3BpmOkRtWDCSjn5uDIKCZ2ZjtNvRaYn10/iahkc
606iTKcJXw2XkjU6j7DqorK+iBQ7Dy6glPHp0vKbS6wxFAVsH/IubN/jhiEgK6qA
Q8Iv2LbaECMpNl5fvrI8Gze2IPEWCSv9ZoUFGUt1ARzsCpCQHbAG3fGYJStQk6tM
w5G0yNVOOLjBjYtXxn4ZkZEwRcnpQ5cvI10GdCP5XtGGcK1qEBgpJqaU1pwraZCW
0zhvgLRVFHuJZCpLoqJscGGNZq3aUNky/gOAoKOdoh9n1magAhx2Q8VXuNDO7P0c
peGouYGzJPLDuxYqWXV5qJ+5sAd0L1upStkDSOWEq9plxYTbdcdU/ej77mZrwJcu
sQOWoEt3YL+G3pPRDQzJDEGIijra1TI9FPTIbbuHEwQKpyWoFP+EKAFDrQosXWyn
sCovmRlT
=9d/Z
-----END PGP SIGNATURE-----

--fnnv6en4biooyeg3--


From xen-devel-bounces@lists.xenproject.org Tue Oct 03 09:51:44 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 03 Oct 2023 09:51:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612167.952009 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnc3o-0004Ri-Jm; Tue, 03 Oct 2023 09:51:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612167.952009; Tue, 03 Oct 2023 09:51: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 1qnc3o-0004Rb-HF; Tue, 03 Oct 2023 09:51:24 +0000
Received: by outflank-mailman (input) for mailman id 612167;
 Tue, 03 Oct 2023 09:51: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=btf1=FR=gmail.com=oleshiiwood@srs-se1.protection.inumbo.net>)
 id 1qnc3n-0004RV-Gx
 for xen-devel@lists.xenproject.org; Tue, 03 Oct 2023 09:51:23 +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 68634e49-61d2-11ee-98d2-6d05b1d4d9a1;
 Tue, 03 Oct 2023 11:51:21 +0200 (CEST)
Received: by mail-wr1-x435.google.com with SMTP id
 ffacd0b85a97d-3231d67aff2so769491f8f.0
 for <xen-devel@lists.xenproject.org>; Tue, 03 Oct 2023 02:51: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: 68634e49-61d2-11ee-98d2-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1696326681; x=1696931481; 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=kCOO9vY4XeJYNxX3kPm0MdrbKKjAfl65XKCcU6PCuP0=;
        b=chNb0gYI78FlHQzejJtbYnEMi2ow0l7ki9NVx5q9Ahy/o82xefUF2FprXHJ4N33kq3
         Wp972sRI+9WY+9KTBLGtZxgWgtj8YEGOXHRX3BttmKfN4N1dMTAJKRFpGumJOVmV6Uyk
         u3F91h69SsE1h+ljyVxX5+2kQC9gp8H9Ln1sbagKjo2T2mp7d7y69aOJWvmLLhumQ4yW
         5a09hcAPLcpCf+DxpgpJ3hPRtfP7EHlWVylgxxXhNGjgTShiVNJgPIj34qDwREbsnqio
         MaqB6ppygY/ZB73A6LriX/m8GNa0HXbmOFLitpTTaFyZvtByQEAmE+X3JtQptAFQoNim
         Kpyw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1696326681; x=1696931481;
        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=kCOO9vY4XeJYNxX3kPm0MdrbKKjAfl65XKCcU6PCuP0=;
        b=F8EPgLRkHeeaDdH4SsRJy1XU4JV7GKgkoWbVru6Fi5/0Y0evVhNboB5SbkwFB/1ZbN
         ai4tND/jjWCLeLJVWKgkgZhK5/dhO1cyDArn3ye+whAREoqHNJB2Q6iiESwJGW/AcLGf
         +ceD+UeEFj9vI9zt2Wu8GWjzzZ2UGmSxrj4dGDjzEkHd7ddyb/JDADKUgspQbf/ujcZC
         AySKCZGlVmdZ7G2CdLgCy+BOSMkmhYZFO4Bq5wRPmW7QNqouza0Ewv7kiPsET9Yld4ml
         aSBd8oJ8anCTuoyN7tV4HGvk4Gov6hK2Q6KNoJTrksrByv+tmRrTn7t+zAZkXLWNmS0l
         FTDw==
X-Gm-Message-State: AOJu0YwZ3ydUxkZCrXjxdem3VSA2SSmJsSiZeYb0thduahXnGdMq2T+s
	FOkDgvlJin8srWJf/szesKdzctdUbtR3DvHj9Cc=
X-Google-Smtp-Source: AGHT+IH0+bW6g+AzyDzknhCAt12bkHn/92N8A1hsO/aSxJuqakP7jL5ZbcsQHZzV6lRtauS9A5r8Q4QJnauJRyphb80=
X-Received: by 2002:a5d:6888:0:b0:314:ca7:f30b with SMTP id
 h8-20020a5d6888000000b003140ca7f30bmr12102066wru.54.1696326680887; Tue, 03
 Oct 2023 02:51:20 -0700 (PDT)
MIME-Version: 1.0
References: <CA+SAi2tXMupikB2YgEXuq98KnOcqm6zWrk19rNvWTfzf2=ku-w@mail.gmail.com>
 <dba88398-3aef-4541-a8e8-8fd075c0d40e@xen.org> <CA+SAi2tHLVDj+q8KMD7OuhHoj0sSZ-39qs3Z94WGmL2OA3TM_g@mail.gmail.com>
 <alpine.DEB.2.22.394.2309281447180.1996340@ubuntu-linux-20-04-desktop>
 <CA+SAi2vZie+PcKgkAbLxcaimG7strkWot1z4LTpCGLeJxuaT2g@mail.gmail.com>
 <CA+SAi2u2auZgzQh_s+pFspH1YLN4biCf0K7-V7NGWPZQjGoH0g@mail.gmail.com>
 <alpine.DEB.2.22.394.2310021608180.2348112@ubuntu-linux-20-04-desktop>
 <c101624b-96a3-30a4-b3a9-344dad5e8fa5@amd.com> <fe7c359e-60e0-41fb-7d39-93a8d6772073@amd.com>
In-Reply-To: <fe7c359e-60e0-41fb-7d39-93a8d6772073@amd.com>
From: Oleg Nikitenko <oleshiiwood@gmail.com>
Date: Tue, 3 Oct 2023 12:58:25 +0300
Message-ID: <CA+SAi2uATXEWiBPJq06TCk=gdmjjn_fKzwNuGhf1SVUXRXcnpw@mail.gmail.com>
Subject: Re: Fwd: changing Dom0 data during smc call inside of xen during
 cache coloring
To: Michal Orzel <michal.orzel@amd.com>
Cc: Stefano Stabellini <stefano.stabellini@amd.com>, Julien Grall <julien@xen.org>, 
	xen-devel@lists.xenproject.org, Carlo Nonato <carlo.nonato@minervasys.tech>, 
	Bertrand Marquis <bertrand.marquis@arm.com>, Stefano Stabellini <sstabellini@kernel.org>, 
	Stewart.Hildebrand@amd.com
Content-Type: multipart/alternative; boundary="0000000000003cc5090606ccd5ff"

--0000000000003cc5090606ccd5ff
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

Hello Michal,
Hello Stefano,

Thanks Michal. Your receipt worked.

Regards,
Oleg Nikitenko


=D0=B2=D1=82, 3 =D0=BE=D0=BA=D1=82. 2023=E2=80=AF=D0=B3. =D0=B2 10:33, Mich=
al Orzel <michal.orzel@amd.com>:

>
>
> On 03/10/2023 09:28, Michal Orzel wrote:
> >
> >
> > Hi Oleg, Stefano
> >
> > On 03/10/2023 02:13, Stefano Stabellini wrote:
> >> Hi Oleg,
> >>
> >> You are getting this output:
> >>
> >>> (XEN) d0v0 Forwarding AES operation: 3254779951 136bb00000000000 ->
> fffffffffffff000
> >>
> >> Which means that the guest physical address is 0x136bb00000000000 and
> >> the translated physical address is 0xfffffffffffff000. It generates an
> >> error so you are asking if 0xfffffffffffff000 is incorrect because the
> >> translation is incorrect.
> >>
> >> This is possible. However, I think it is more likely that
> >> 0x136bb000_00000000 is incorrect. This an extremely high address. Coul=
d
> >> it be wrong?
> >
> > I think the issue is due to a different way of forming the r1 register
> for this particular EEMI call:
> >
> > Take a look at the PM AES function from Linux:
> >
> https://github.com/Xilinx/linux-xlnx/blob/master/drivers/firmware/xilinx/=
zynqmp.c#L1975
> > and EEMI call invocation:
> >
> https://github.com/Xilinx/linux-xlnx/blob/master/drivers/firmware/xilinx/=
zynqmp.c#L390
> >
> > The register passed as r1 is formed a bit differently than "normally".
> FWICS:
> >  - the upper 32 bits of address are stored in the lower 32 bits of r1
> register.
> >  - the lower 32 bits of address are stored in the upper 32 bits of r1
> register.
> >
> > That is why you are getting a very high address in r1
> 0x136bb000_00000000.
> >
> > Please, try to do the following (not tested):
> >
> > case 0xC200002F:
> > {
> >     register_t gaddr, new_gaddr;
> >     paddr_t maddr;
> >
> >     gaddr =3D ((register_t)get_user_reg(regs, 1) << 32) |
> (get_user_reg(regs, 1) >> 32);
> >     maddr =3D mfn_to_maddr(gfn_to_mfn(current->domain,
> gaddr_to_gfn(gaddr)));
> >
> >     /* Most probably not needed given dma_alloc_coherent use */
> >     maddr +=3D gaddr &~ PAGE_MASK;
> >
> >     /* Convert back to required format */
> >     new_gaddr =3D ((register_t)maddr << 32) | (maddr >> 32);
> >
> >     arm_smccc_1_1_smc(get_user_reg(regs, 0),
> >             get_user_reg(regs, 1),
> >             new_gaddr,
> Wrong placement. This should be for register 1 and not 2, so:
>     arm_smccc_1_1_smc(get_user_reg(regs, 0),
>             new_gaddr,
>             get_user_reg(regs, 2),
>             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);
>
> ~Michal
>

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

<div dir=3D"ltr"><div>Hello Michal,</div><div>Hello Stefano,</div><div><br>=
</div><div>Thanks Michal. Your receipt worked.</div><div><br></div><div>Reg=
ards,</div><div>Oleg Nikitenko<br></div><div><br></div></div><br><div class=
=3D"gmail_quote"><div dir=3D"ltr" class=3D"gmail_attr">=D0=B2=D1=82, 3 =D0=
=BE=D0=BA=D1=82. 2023=E2=80=AF=D0=B3. =D0=B2 10:33, Michal Orzel &lt;<a hre=
f=3D"mailto:michal.orzel@amd.com">michal.orzel@amd.com</a>&gt;:<br></div><b=
lockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-le=
ft:1px solid rgb(204,204,204);padding-left:1ex"><br>
<br>
On 03/10/2023 09:28, Michal Orzel wrote:<br>
&gt; <br>
&gt; <br>
&gt; Hi Oleg, Stefano<br>
&gt; <br>
&gt; On 03/10/2023 02:13, Stefano Stabellini wrote:<br>
&gt;&gt; Hi Oleg,<br>
&gt;&gt;<br>
&gt;&gt; You are getting this output:<br>
&gt;&gt;<br>
&gt;&gt;&gt; (XEN) d0v0 Forwarding AES operation: 3254779951 136bb000000000=
00 -&gt; fffffffffffff000<br>
&gt;&gt;<br>
&gt;&gt; Which means that the guest physical address is 0x136bb00000000000 =
and<br>
&gt;&gt; the translated physical address is 0xfffffffffffff000. It generate=
s an<br>
&gt;&gt; error so you are asking if 0xfffffffffffff000 is incorrect because=
 the<br>
&gt;&gt; translation is incorrect.<br>
&gt;&gt;<br>
&gt;&gt; This is possible. However, I think it is more likely that<br>
&gt;&gt; 0x136bb000_00000000 is incorrect. This an extremely high address. =
Could<br>
&gt;&gt; it be wrong?<br>
&gt; <br>
&gt; I think the issue is due to a different way of forming the r1 register=
 for this particular EEMI call:<br>
&gt; <br>
&gt; Take a look at the PM AES function from Linux:<br>
&gt; <a href=3D"https://github.com/Xilinx/linux-xlnx/blob/master/drivers/fi=
rmware/xilinx/zynqmp.c#L1975" rel=3D"noreferrer" target=3D"_blank">https://=
github.com/Xilinx/linux-xlnx/blob/master/drivers/firmware/xilinx/zynqmp.c#L=
1975</a><br>
&gt; and EEMI call invocation:<br>
&gt; <a href=3D"https://github.com/Xilinx/linux-xlnx/blob/master/drivers/fi=
rmware/xilinx/zynqmp.c#L390" rel=3D"noreferrer" target=3D"_blank">https://g=
ithub.com/Xilinx/linux-xlnx/blob/master/drivers/firmware/xilinx/zynqmp.c#L3=
90</a><br>
&gt; <br>
&gt; The register passed as r1 is formed a bit differently than &quot;norma=
lly&quot;. FWICS:<br>
&gt;=C2=A0 - the upper 32 bits of address are stored in the lower 32 bits o=
f r1 register.<br>
&gt;=C2=A0 - the lower 32 bits of address are stored in the upper 32 bits o=
f r1 register.<br>
&gt; <br>
&gt; That is why you are getting a very high address in r1 0x136bb000_00000=
000.<br>
&gt; <br>
&gt; Please, try to do the following (not tested):<br>
&gt; <br>
&gt; case 0xC200002F:<br>
&gt; {<br>
&gt;=C2=A0 =C2=A0 =C2=A0register_t gaddr, new_gaddr;<br>
&gt;=C2=A0 =C2=A0 =C2=A0paddr_t maddr;<br>
&gt; <br>
&gt;=C2=A0 =C2=A0 =C2=A0gaddr =3D ((register_t)get_user_reg(regs, 1) &lt;&l=
t; 32) | (get_user_reg(regs, 1) &gt;&gt; 32);<br>
&gt;=C2=A0 =C2=A0 =C2=A0maddr =3D mfn_to_maddr(gfn_to_mfn(current-&gt;domai=
n, gaddr_to_gfn(gaddr)));<br>
&gt; <br>
&gt;=C2=A0 =C2=A0 =C2=A0/* Most probably not needed given dma_alloc_coheren=
t use */<br>
&gt;=C2=A0 =C2=A0 =C2=A0maddr +=3D gaddr &amp;~ PAGE_MASK;<br>
&gt; <br>
&gt;=C2=A0 =C2=A0 =C2=A0/* Convert back to required format */<br>
&gt;=C2=A0 =C2=A0 =C2=A0new_gaddr =3D ((register_t)maddr &lt;&lt; 32) | (ma=
ddr &gt;&gt; 32);<br>
&gt; <br>
&gt;=C2=A0 =C2=A0 =C2=A0arm_smccc_1_1_smc(get_user_reg(regs, 0),<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0get_user_reg(regs, 1),<=
br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0new_gaddr,<br>
Wrong placement. This should be for register 1 and not 2, so:<br>
=C2=A0 =C2=A0 arm_smccc_1_1_smc(get_user_reg(regs, 0),<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 new_gaddr,<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 get_user_reg(regs, 2),<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 get_user_reg(regs, 3),<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 get_user_reg(regs, 4),<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 get_user_reg(regs, 5),<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 get_user_reg(regs, 6),<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 get_user_reg(regs, 7),<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &amp;res);<br>
<br>
~Michal<br>
</blockquote></div>

--0000000000003cc5090606ccd5ff--


From xen-devel-bounces@lists.xenproject.org Tue Oct 03 10:00:10 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 03 Oct 2023 10:00:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612171.952020 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qncCE-0007cv-ER; Tue, 03 Oct 2023 10:00:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612171.952020; Tue, 03 Oct 2023 10: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 1qncCE-0007co-BE; Tue, 03 Oct 2023 10:00:06 +0000
Received: by outflank-mailman (input) for mailman id 612171;
 Tue, 03 Oct 2023 10: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=8l/u=FR=gmail.com=bagasdotme@srs-se1.protection.inumbo.net>)
 id 1qncCC-0007Mp-Tf
 for xen-devel@lists.xenproject.org; Tue, 03 Oct 2023 10:00:04 +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 9c8b5b60-61d3-11ee-9b0d-b553b5be7939;
 Tue, 03 Oct 2023 11:59:59 +0200 (CEST)
Received: by mail-pl1-x634.google.com with SMTP id
 d9443c01a7336-1c5bf7871dcso5302995ad.1
 for <xen-devel@lists.xenproject.org>; Tue, 03 Oct 2023 02:59:59 -0700 (PDT)
Received: from debian.me ([103.131.18.64]) by smtp.gmail.com with ESMTPSA id
 u9-20020a17090341c900b001c1f161949fsm1088243ple.96.2023.10.03.02.59.57
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Tue, 03 Oct 2023 02:59:57 -0700 (PDT)
Received: by debian.me (Postfix, from userid 1000)
 id CEF7581193F1; Tue,  3 Oct 2023 16:59:52 +0700 (WIB)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 9c8b5b60-61d3-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1696327198; x=1696931998; 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=7mfj166RZXa6+OGlC23mV90s8HoMj5oVIl7zgyFgTFU=;
        b=TnjMjR1ktrtPVmc6EflUmbO6ZIKIVDai9UG4VeaPyaj2SqztSRKggb43C5bTdZu0PM
         kCl++kZ0MB1G0KaYv8zyFw7EzYyLa330Z79ekfmoB6PmTAstrLEwQiINiTN1gZOHgBFm
         FKhZRn0Epv+ZFOxmZjxuyx43wuoQ36M2403MhwLHNRaw+iFfzZKvKQ667RwabgB6gvB1
         5IDtrLEAnYGejlTbGOFfA13r+h8MuIzPhqDtQzmDonmNj8OPTkpwPFPHTA0sKPsz/G0Y
         suTMQsG50d8LemB7FBUJBuNy21izdR3iCeKqEBELoYWAnoZN9H+x7GPY7F0M5SOvAHey
         WX+Q==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1696327198; x=1696931998;
        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=7mfj166RZXa6+OGlC23mV90s8HoMj5oVIl7zgyFgTFU=;
        b=Hw4wtsEyTMPTJUy7xgytXNt+zl10Ne88e1DSNdTsbFFwf8VSMKgF/qDfi+H1QoqrTS
         PHQeSwD6QCbT82NEpODJG/9L9bOA2svqDQlICaLofzVY9C1TEgahP7WvnpRle0QTwtCU
         CACQN8KpzJVuR/CwyTfhWLYfRj5CMEkhq78+KWOCW2BDEnqKDUa638TXyzjbGmG3XRTh
         4U2tLyx4et9tl7jOOXA86PL8c1s3NaECBRBANMFWJUlI+Nfq9nBbV85UjliB63RcJxbA
         9C71E5yAO69W7vZ74dU7I8nIi/V6u9gVHrGyeCO1m1E40o6MLmH0k2LODc3i4nruLm45
         cw5g==
X-Gm-Message-State: AOJu0Yzd6/QsuPOHfgh7X/4vXHH/yz7idCthWNXHQjEBdC/JV5tMDM01
	/DXckM9Ps2WfdnynZnLNM+4Ecl8kso0=
X-Google-Smtp-Source: AGHT+IEcFB0/Nf7z2acAywtjf22FDYWrA9IDkrD58mbuzHGOwLkPwm0grCEuAMx9zkt09wQq3hfj/Q==
X-Received: by 2002:a17:902:d2cb:b0:1c4:fae:bf28 with SMTP id n11-20020a170902d2cb00b001c40faebf28mr14401254plc.32.1696327197979;
        Tue, 03 Oct 2023 02:59:57 -0700 (PDT)
Date: Tue, 3 Oct 2023 16:59:52 +0700
From: Bagas Sanjaya <bagasdotme@gmail.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, 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 v12 06/37] Documentation/x86/64: Add a documentation for
 FRED
Message-ID: <ZRvmGNRZ4IvmguAY@debian.me>
References: <20231003062458.23552-1-xin3.li@intel.com>
 <20231003062458.23552-7-xin3.li@intel.com>
MIME-Version: 1.0
Content-Type: multipart/signed; micalg=pgp-sha512;
	protocol="application/pgp-signature"; boundary="LN8xCBDRRuLQePIA"
Content-Disposition: inline
In-Reply-To: <20231003062458.23552-7-xin3.li@intel.com>


--LN8xCBDRRuLQePIA
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

On Mon, Oct 02, 2023 at 11:24:27PM -0700, Xin Li wrote:
> 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
> +
> +=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
> +Flexible Return and Event Delivery (FRED)
> +=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
> +
> +Overview
> +=3D=3D=3D=3D=3D=3D=3D=3D
> +
> +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
> +=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D
> +
> +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
> +=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D
> +
> +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
> +=3D=3D=3D=3D
> +
> +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=E2=80=99s 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
> +=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
> +
> +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.

LGTM, thanks!

Reviewed-by: Bagas Sanjaya <bagasdotme@gmail.com>

--=20
An old man doll... just what I always wanted! - Clara

--LN8xCBDRRuLQePIA
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iHUEABYKAB0WIQSSYQ6Cy7oyFNCHrUH2uYlJVVFOowUCZRvmEwAKCRD2uYlJVVFO
o5qOAQDw8M+2297q5X5j+JlTjJmKURsOh0vN4+TkT6xGTw1/oAEA7lexKTaNoRJm
dwxTvxrQ6FWCfYMKDNZLsLpxSIwB3AQ=
=e3m/
-----END PGP SIGNATURE-----

--LN8xCBDRRuLQePIA--


From xen-devel-bounces@lists.xenproject.org Tue Oct 03 11:35:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 03 Oct 2023 11:35:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612195.952034 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qndgd-0005BU-Ki; Tue, 03 Oct 2023 11:35:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612195.952034; Tue, 03 Oct 2023 11:35: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 1qndgd-0005BN-Hy; Tue, 03 Oct 2023 11:35:35 +0000
Received: by outflank-mailman (input) for mailman id 612195;
 Tue, 03 Oct 2023 11:35: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 1qndgb-0005BD-TO; Tue, 03 Oct 2023 11:35: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 1qndgb-00069g-R6; Tue, 03 Oct 2023 11:35: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 1qndgb-0000lu-ER; Tue, 03 Oct 2023 11:35:33 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qndgb-0003mt-Dw; Tue, 03 Oct 2023 11:35: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=WvnhQbKdSBh5SF18+IEjHgzG5xb2pI8fPRNRH4SCyEs=; b=VdvwCbW7hKVyZyHlrUkdHYdzNu
	R0ifsSQRU1vZhOIxYodR7iUyE4D/bBuArmqLXg1XacCr9mlqBvpVvYTEQI6JwGFWlwIopZG13Z66k
	pxu8d6h4igEQq3gVcgG6zuHtnavGmeeoUhkq+jx1uIc059InAd30zOq5P1CU6vYwTvVI=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183243-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 183243: tolerable FAIL - PUSHED
X-Osstest-Failures:
    xen-unstable:test-amd64-i386-xl:guest-localmigrate/x10:fail:heisenbug
    xen-unstable:test-amd64-amd64-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-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-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2: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-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-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-unstable:test-amd64-amd64-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-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1: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-libvirt-xsm: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-amd64-amd64-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-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-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-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-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=3d2d9e90224c4f430a7ee1190fd3b871b99b0ba0
X-Osstest-Versions-That:
    xen=5bdfcf7fe89759321335159c8304833dc32a25cd
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 03 Oct 2023 11:35:33 +0000

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

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-amd64-i386-xl        20 guest-localmigrate/x10 fail pass in 183247-retest

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183229
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183235
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183235
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 183235
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183235
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183235
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183235
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 183235
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 183235
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183235
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183235
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 183235
 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-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-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-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-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-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-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-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-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                  3d2d9e90224c4f430a7ee1190fd3b871b99b0ba0
baseline version:
 xen                  5bdfcf7fe89759321335159c8304833dc32a25cd

Last test of basis   183235  2023-10-02 01:53:48 Z    1 days
Testing same since   183243  2023-10-03 01:39:09 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  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                                           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                                  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
   5bdfcf7fe8..3d2d9e9022  3d2d9e90224c4f430a7ee1190fd3b871b99b0ba0 -> master


From xen-devel-bounces@lists.xenproject.org Tue Oct 03 11:36:11 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 03 Oct 2023 11:36:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612201.952043 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qndhD-0005h4-1w; Tue, 03 Oct 2023 11:36:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612201.952043; Tue, 03 Oct 2023 11:36: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 1qndhC-0005gx-VW; Tue, 03 Oct 2023 11:36:10 +0000
Received: by outflank-mailman (input) for mailman id 612201;
 Tue, 03 Oct 2023 11: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=N/VM=FR=citrix.com=prvs=63394bc6a=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qndhB-0005gV-AL
 for xen-devel@lists.xenproject.org; Tue, 03 Oct 2023 11:36:09 +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 05e08b47-61e1-11ee-98d2-6d05b1d4d9a1;
 Tue, 03 Oct 2023 13:36:01 +0200 (CEST)
Received: from mail-dm6nam11lp2177.outbound.protection.outlook.com (HELO
 NAM11-DM6-obe.outbound.protection.outlook.com) ([104.47.57.177])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 03 Oct 2023 07:35:33 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by PH0PR03MB5735.namprd03.prod.outlook.com (2603:10b6:510:32::24)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.34; Tue, 3 Oct
 2023 11:35:31 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::66ca:3a42:baeb:9ecf]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::66ca:3a42:baeb:9ecf%6]) with mapi id 15.20.6838.030; Tue, 3 Oct 2023
 11:35: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: 05e08b47-61e1-11ee-98d2-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1696332961;
  h=date:from:to:cc:subject:message-id:references:
   in-reply-to:mime-version;
  bh=KOEp1wLOEP3Pa4FfTtuVTdvJxQDJJAqzhykqFDbF5GM=;
  b=crpeOzU548hJqaZgVTafhkvvwQswuX8rH4nDlpAqhmWDdairtXSnoI0k
   FgZIUHBLQfmMv2WLbUJ+Yav8ikitFyjwTudGdUT5mPOpd3msYT0pnQhw5
   PBxvq22L7SF5bHeXr7CuLwgIEXqNVZtZzqVNcrItNQB501LPq4j5QXxPu
   Q=;
X-CSE-ConnectionGUID: Hcs18ohjSjadcT/Vj1BFeA==
X-CSE-MsgGUID: H+XmYVWTTyee9KnvvWUAnA==
X-IronPort-RemoteIP: 104.47.57.177
X-IronPort-MID: 123099344
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:RXnswalVbZP4Sk1nsVc3xMro5gygJ0RdPkR7XQ2eYbSJt1+Wr1Gzt
 xIdWWmFMq2LZWP0LY91a9ywoEpT7Z6Hn9BhQVQ9rCgyECMWpZLJC+rCIxarNUt+DCFhoGFPt
 JxCN4aafKjYaleG+39B55C49SEUOZmgH+e6UKicfHkpGWeIcQ954Tp7gek1n4V0ttawBgKJq
 LvartbWfVSowFaYCEpNg064gE0p5K+aVA8w5ARkPqkT5ASGyxH5MbpETU2PByqgKmVrNrbSq
 9brlNmR4m7f9hExPdKp+p6TnpoiG+O60aCm0xK6aoD66vRwjnVaPpUTbZLwXXx/mTSR9+2d/
 f0W3XCGpaXFCYWX8AgVe0Ew/yiTpsSq8pefSZS0mZT7I0Er7xIAahihZa07FdRwxwp5PY1B3
 dwTM2ldaRCBvOC/zLmHDddu3+4NIeC+aevzulk4pd3YJdAPZMmaBonvu5pf1jp2gd1SF/HDY
 cZfcSBocBnLfxxIPBEQFY46m+CrwHL4dlW0qnrM/fZxvzeVkVM3ieeyWDbWUoXiqcF9hEGXq
 3iA523kKhobKMae2XyO9XfEaurnxHmgANNDT+HknhJsqH3Q9mkiNiIqaUq2rKiajFCgZO92L
 WVBr0LCqoB3riRHVOLVXRe1vXqFtR40QMdLHqsx7wTl4rXQyxaUAC4DVDEpQMwrsoo6SCIn0
 neNnsj1Hnp/vbuNU3Wf+7yI6zSoNkAowXQqYCYFSU4J5oflqYRq1xbXFI88T+iyk8H/Hiz2z
 3aSti8iir4PjMkNkaKm4VTAhDHqrZ/MJuIo2jjqsquexlsRTOaYi0aAsgSzASpoRGpBcmS8g
 Q==
IronPort-HdrOrdr: A9a23:8bboR6OEEu+z8MBcTuOjsMiBIKoaSvp037BL7TETdfUxSKelfq
 +V/cjzuSWE7Qr5IUtQ4exoRpPwO080hKQU3WB5B97LMDUOl1HHEGgI1/qB/9SPIVybygZBvp
 0OT0DMZeeAdGSTxa7BijVRWb4breVuvsuT9IDjJ+YHd3ANV0mBhz0JcTqmLg==
X-Talos-CUID: =?us-ascii?q?9a23=3AAwZwZWuoyUFXbqp/e/Y5rlZy6IsFeWaEnHDQIXS?=
 =?us-ascii?q?6AGpidPqrSwa61q5Nxp8=3D?=
X-Talos-MUID: 9a23:gXqKagXl+HCeUXPq/B+vtDRTCvhU37WjBREul4sYhPStMwUlbg==
X-IronPort-AV: E=Sophos;i="6.03,197,1694750400"; 
   d="scan'208";a="123099344"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=jD3G4COI+sDEZgRl6GTRpW2wU7/5W9u8k/v+9OHWSg1ms/g24zK6RZtZwSuK7wKEemSP0oTJsexKJjUNy9dZcF3EFfK5xF9mE7k/AntER46LTB1qCRAM03hjToE3KIcs8BlW4w0oHRy+wTDvHW3bbziCkA8wcN92tD6THoSiSX4gNs7PZ8g1MTAdsL68mBEYyDvNhrl3J4qYs7RzkJyB/9sg5GfnC0SUChPrcoxju6Y3KApUobuDMFmcrMhrec/anDEx1lo3CM58k5bwm9jGupbhKaZ7lVeD34Z93q3+YPZvitPwwGT2eYvA7idFW02tKtcJEV+hE/lSP0Zoiasnfg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=9nxNyHYLGzv+R974aDBtvbrfosZ9EgYWNEetS75XAJA=;
 b=cITUcZEJHRIWoMNK7aAtQjEUj9qKpU0PzSU8eC98mUPQao3Q24Juu72oFmGVuA4AKxTAmN7mQNFrrGqvLCx4eerYdLM/hqnI7qPALxGq6855m/kEuDdrCDYVQBNjexTMPM4SGMm6umxbJQlJyHovmCI7nOGpSB2v8BflFOxlqqMOkvaCz8HWsEUloyApWn44r6cN0GGWCvLKU0CaSGsNBcly1hiIG454mI7PViJIUiRalEvvlnCWEheyVjRU2H65xO4+LWfOz1KTPPpqpSSO+CveAQDmjkLwlYtwWm9hRGyzMFe1x7kNfeuVKV2i2FErAaAo78NpalcZ1xIcl/C0xA==
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=9nxNyHYLGzv+R974aDBtvbrfosZ9EgYWNEetS75XAJA=;
 b=Y26G+dx2S1y9QqKDKGZW5ZjzHqQlmJnUtxeUWKWL4q/cjS/zsjk1LBcNDYJ8ubRkjZRDebczgIJMKQNWlHuei/6cT30ANySKK+LlLdMbFUvY3E7Ajgi/OOgAs2t6XIOV4Av/t2nLWk0S8nZEpgi7gMbhBZzKP52DPoANd4meHxQ=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Tue, 3 Oct 2023 13:35:25 +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: <ZRv8fRhYQrwU1H6q@MacBookPdeRoger>
References: <20230915074347.94712-1-roger.pau@citrix.com>
 <b045e8fe-ccf7-bbcd-ece8-036a13858d36@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <b045e8fe-ccf7-bbcd-ece8-036a13858d36@suse.com>
X-ClientProxiedBy: LO6P265CA0019.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:2ff::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_|PH0PR03MB5735:EE_
X-MS-Office365-Filtering-Correlation-Id: 5805ed46-f7d6-4053-66bd-08dbc404d955
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:
	a8v+peBYwuGnCLtOoyrnldPBTy4S22OeGYIM1xmN6XBoy7VKA+Vm6anPn2XRJA0bpctJYfQIDcwCnDkUdHN3Lk2bVBMbPPwUhdJJaZ16uajM60lu4AcdH0iv7yB6tyC5oiz5YnfZW6qQ6sFYhTYetIqqbAs6PFRUncwJpHPqm2PveWAP4TKMI/HtuamSBG3exF9LAGXQxSx6yhL3DoklAwfuxSKIekApZeCTCIoo1yk+zk4/aTSd8l40iDNEtXLVEW9vAZWlCRGTEoZ/QAg3X6mcylPwcYCo6LUnBEJXPoNqaGC8RMbvMmC/4Y51xAc9PoUfeHch6pJTV1XFXed6kf1f//wIdsSEQZn0KSGVpqN7b44snHZWcMIL3Z9nzzw3NtsxxgKDvEXLWZ8Hd3JjErWCRhuAm8LPWW8tcwdRq+LjkCTgyrvWa+mpczHi1A2x/AENtk9+dWOqAWCcyEb0lxrmMnsgFwXZYjjrtQTBFXe80SodrcI5cKHqnaKAElUA2Y8L/FgGw24kKiMUxN1iFThISXPCT8umcJj7KZgNsVjEKfliMhvK8AQEbFjBxfgt
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)(376002)(136003)(366004)(396003)(230922051799003)(64100799003)(1800799009)(451199024)(186009)(41300700001)(6506007)(478600001)(6486002)(53546011)(9686003)(6512007)(316002)(66556008)(54906003)(66476007)(66946007)(6916009)(8676002)(4326008)(8936002)(5660300002)(26005)(6666004)(83380400001)(2906002)(85182001)(33716001)(38100700002)(82960400001)(86362001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?S1I2K2NkSDg4UDFWdGZGdWgrZVUySnZlOW1kTGNZd3FOMWFwU2Rvc0RHUzJF?=
 =?utf-8?B?ZUZYOXRhSnFOWXdqN01PaXRHS1dBOGYyeUhFUklHb21TMkM0SjJlUHlUVE1n?=
 =?utf-8?B?NnVaWE41VStGeEIzanNPQXdieEFQTXVpMlJmSEVUM3RHbUxnZ0JpdDV1UDhP?=
 =?utf-8?B?YkhQNCszcDBmV3hQZ2JBNE5BOE1OSGJvelVMVmJqMHFJY3dZaVA3RnFxRzA3?=
 =?utf-8?B?eDVRZDkrUVIvdmcyQ0p2aXhTZndnMVZ2S3c3eEU5d2o0TC9PNVFOUWhtTFFB?=
 =?utf-8?B?d2UxTnlMdURXL1Y1blY5bktDY01Bd1Ftb2JrS3FVc1NEN1BqWXRzamNpQmJC?=
 =?utf-8?B?a3JFcUpLZklIVVhqSzFLTmJ5NWFzY2paTktsWjZ3RmZPcDRvNFJqNkwzMFMz?=
 =?utf-8?B?Mm4xdXczWmFUeldtYUFwaW1wZzJtOUVhSDBFV1AvL3J6QzBsUC9BMHovRitU?=
 =?utf-8?B?RkZIU3lsMUVUdUNpT1J2T3VKd3IrQ2dpMDFjODYyVFg5UGhrbGo3THgvbHd4?=
 =?utf-8?B?anM2Q2dUMmt2SFlreERYSURWR1kyZ2ZDbXBLeTA5ZVNXR1p1QWtyZTI3ODVD?=
 =?utf-8?B?RE9BLzZYVU5Zd29kVkV4aGFYbjAvZG5LcDIrSkI1ZjVUR1V5WnZDOFViTzBt?=
 =?utf-8?B?MHQ5ZXVKQSt2bzFiNy9kVHpJWVpBNTJid2pYNnBrdzY0T2xQRW1JTlJYZzRr?=
 =?utf-8?B?cnYvenE4b3JsUEpqZ3h3MDZ1QnZWTmxWRmRoOW9jaVNobSs4V1kvOW5jTitK?=
 =?utf-8?B?S3U2azlsc2xxNmFJNWhDQmVOODFKZzlKK3lQSU91SjhZWWdkd1ZiRzNQc2dE?=
 =?utf-8?B?bmNIdHlJUm1JZDUrS2MyeXVRSVJtUlRzdUh0Z01EelEyL1V2ZjNRem1mS01u?=
 =?utf-8?B?S0hlbkhaMmZkM3QwZWtNL0lmSjE5UHpLMUhiTWw0N2JvTXlwSWVaYUFNYitx?=
 =?utf-8?B?QmZMNDA4UTJQT3ZhWHZSRFhGaVNKektzaFk5UkV3K3ZnazIwK1JocXlKNjg5?=
 =?utf-8?B?T005cGRCc0owYVdFa2JuS3lMbjRXcUQvNWVHZWoyN3V6ejZNQ3Q2VTJ3VUNC?=
 =?utf-8?B?SHBBajN4OGJZWDRYVUxPRWxxbHFuS1JhM0R4V1dJOVdhTGp0L2dqc1N5WFVK?=
 =?utf-8?B?dWZxYTNaeVYveWJ3bGhoNWRvOGIzV1NSZkNia1grZThVM1dYbDI0M3luQTJ2?=
 =?utf-8?B?TFMxZlo5SEkyb3hrZE1FeEJWdGZESHpRWnhjZFR4dTU5bzI0emFkcGlUNEQ4?=
 =?utf-8?B?VmNrMjdJTlBVMVluM2srL1ZVQUZtcFMzR0RwU2VFNE5HWkVGNnlpRkpZSHhH?=
 =?utf-8?B?dUFiYmhUczFJd2ZxSWNHMEZFMEFYbm9UUGcrbEdlcXkrRTI4bEI2M1NxK3lz?=
 =?utf-8?B?cFVxTVBhWDZibHJBWXVVeUVaSW1sSGNLeEt6dmNtR3NzMTdWeDVyK1NLWnJu?=
 =?utf-8?B?K2pyME05TkJ3bnN3dGl1b1NFdnVUNFBJblRFbE0rMCswT21NTThJSGhBRDhl?=
 =?utf-8?B?UHdkOVJMQWc5RmVFaGVKNVlsallsejNmUXRDaWpmWS9xL3huNHFLSFVQa0J6?=
 =?utf-8?B?Q2JiNzZKeE9PdnVBTUgxSG5aQ2c5ZEhJRWxGbUVTWjFtUjBsOWlvUzFJVTVl?=
 =?utf-8?B?QXE0YW9UaUZSVVJPYjhSVnBjU3plb29Yd0twL3lOZjE5anBNRkFURE9RbmJK?=
 =?utf-8?B?OE9EY1Zuck9pRWoycUhnNEVxSC9kU2s0L3FtL1pqSmMvUWNIM2ZvSWZ2RG8v?=
 =?utf-8?B?TlY4YlB5MFI2ckJBWHpjdHpEZktlSjdvbmRNVmtQTG9VbDdhWkpsSDlBQ1FE?=
 =?utf-8?B?RG52dTh3eEJacVJvK1BNdm9zcFhLVm10d1RNbU0zYnVGSlJXTnNiQTJKSDFz?=
 =?utf-8?B?VitnMlNSM0c2SXhPOVFuMXRVOWFGenZKY3lDbDc2VlNYWFZ6L1QrS3ZkeU0w?=
 =?utf-8?B?SlRkOEdJaDd5UHI1dDFmNzFQcTJpS25MNFFPTExqKzY5dDJGaUpaUEUrRE5M?=
 =?utf-8?B?eEJGbG5CeW9pS3hDTVpNWVR5OENKc1BCQXFac2hCZllzZFZ1Z1FYdmR6dzFS?=
 =?utf-8?B?NnVuVG1sRkl3aU02dWt6Mi83SmQ1OHdSSXlHYndDcnRQNlVZTS95NWZZVXF4?=
 =?utf-8?B?Smhqc0dCMkc4THhyV2VMTythVjZLWStROG5LYXMzT3l5SGREZnlxeW01RlNT?=
 =?utf-8?B?dWc9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	Yz725L96YVaWY+fDunhWvqNiwGC7v1x2gxZRt8nGAsWB6qcx1/GrUzWmXOvuq9B7nJp29OQn8vj3axID0z0W26v92aGUJA7JfRWVu7IDo92qmYWSdFXHiB+4OOvXe65vaBPgFlvEQc+pFyDs94EAeGAu7agqnUxvnIxK6WdJ8TMW/LkXlOys+ve+BfcCYGeeNqiB/tJR3ctY9jn060w1Lrq8FEEAEca9j6x0NOYvbwOy/RQpj7mBL99DeBOf6ia+aqrwAjmKCG3JB0R4Ygx09ubg5gz/Yn6ML6xelXnyEryR3eNAzgdzQx3sxiF8ev2sEsDpPElhyHPwFQl3mc8/+Ugz5qBACBVj3X68OEOjMTeqockzHkWiApB5NSqih1AEBpprsaUJVCLaLidO3m1MocQ/A/J3SVrtoSQOTMOzr6uMkihioGQJnlFRdXGm2IjHnWilW3Kve7W8Jltc3Iz5eLLUxhFRU8V81vxR74u5DYIZYCmEOvci4ZNBnzPLPLWZCxg/skGhauwOtwRUTpugxJa3bKGF3iHgXl69r+zlbLwwBj5jyaKIuaQyRDw87mJYbnEigbTxEUf/ZN8fU3aAmvRh83MkY2IT8Np9+WsGSZcgTKf5H6Yo1T/Sp2kUdDsxK7Da+i+H1Fa+3ASfgvJ4Zwt85ZaLDktMRiGdg+PxVloFqEMO24q/OqXPfxQQtPYY+WIQpzbcJ0vqcdgSh4Acvrjw0f0RflyS1kU+oooNR/jGOhhHCl3RwQpBwPeSR4BDv6edDKEAbDyfnxPhw8xn9hbAPMbBZoGiCjU7BFc2nMVbuwbd5Pwh32WUblTDhPEeEcVIvPKirvfiBCu8HSVUdw==
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 5805ed46-f7d6-4053-66bd-08dbc404d955
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 03 Oct 2023 11:35:31.2934
 (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: pDEJHB+KcRWiS+ZOwVO4pCjRH8AQIvSWeOkZyUMeV+Y4IBZE6GFk2LeXZWekNls9/zvWEuchkBYHKavf5BzuGQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR03MB5735

On Wed, Sep 27, 2023 at 10:21:44AM +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.
> > 
> > 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.)

This is unfortunate, but IMO not as worse as getting a #UD or any
other fault while attempting a reboot.  We can always force this
system to use UEFI reboot, if that does work better than ACPI.

> 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.)

I can try to gather some data, I can at least tell you that the Intel
NUC11TNHi7 TGL does also hit a fault when attempting UEFI reboot.
The above crash was from a Dell PowerEdge R6625.  I do recall seeing
this with other boxes on the Citrix lab, but don't know the exact
models.  I'm quite sure other downstreams can provide similar
feedback.

I think it's clear now that using ResetSystem() when booted from UEFI
is not mandated by the UEFI specification, so I still stand by this
patch and think we should select the default reboot method that has
the highest chance of succeeding.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Tue Oct 03 12:55:42 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 03 Oct 2023 12:55:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612216.952054 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnevt-0005ug-JV; Tue, 03 Oct 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 612216.952054; Tue, 03 Oct 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 1qnevt-0005uZ-GZ; Tue, 03 Oct 2023 12:55:25 +0000
Received: by outflank-mailman (input) for mailman id 612216;
 Tue, 03 Oct 2023 12:55: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 1qnevs-0005uN-5X; Tue, 03 Oct 2023 12:55: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 1qnevr-0008I2-Lm; Tue, 03 Oct 2023 12:55: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 1qnevr-0002er-Ax; Tue, 03 Oct 2023 12:55:23 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qnevr-0008A4-AS; Tue, 03 Oct 2023 12:55: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=OJjBxLHDkyzhkriWdpaoYEvi1pkYCMZCZk3h/khttVE=; b=JNkeinu55HVUsMaXUuiy7AJfey
	QOD1huqHufERxbLR4/nEOl7FlrzZ/fkzvl7fri3EI/15DUZ40ajsRpJ0X1W1za9X048LfDEihcrsr
	1ipOJRNp2GeqJI5qPJPMKER/2ul9nXM8/orhNpKP+pvSoHmljRQg4WaZ9FiZB6Ag+ytQ=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183248-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xtf test] 183248: all pass - PUSHED
X-Osstest-Versions-This:
    xtf=164d1083e891247ef90f5cffc615a4bdf3da5785
X-Osstest-Versions-That:
    xtf=3c0b315d79eb67846d99060e51989ff62bb33464
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 03 Oct 2023 12:55:23 +0000

flight 183248 xtf real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183248/

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 xtf                  164d1083e891247ef90f5cffc615a4bdf3da5785
baseline version:
 xtf                  3c0b315d79eb67846d99060e51989ff62bb33464

Last test of basis   183240  2023-10-02 17:14:27 Z    0 days
Testing same since   183248  2023-10-03 11:10:50 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>

jobs:
 build-amd64-xtf                                              pass    
 build-amd64                                                  pass    
 build-amd64-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    


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

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

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.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/xtf.git
   3c0b315..164d108  164d1083e891247ef90f5cffc615a4bdf3da5785 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Tue Oct 03 13:49:20 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 03 Oct 2023 13:49:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612228.952064 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnflv-0007VP-Vx; Tue, 03 Oct 2023 13:49:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612228.952064; Tue, 03 Oct 2023 13: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 1qnflv-0007VI-S7; Tue, 03 Oct 2023 13:49:11 +0000
Received: by outflank-mailman (input) for mailman id 612228;
 Tue, 03 Oct 2023 13:49:10 +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 1qnflt-0007VC-VO
 for xen-devel@lists.xenproject.org; Tue, 03 Oct 2023 13:49: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 1qnflt-000160-BV; Tue, 03 Oct 2023 13:49:09 +0000
Received: from [15.248.2.158] (helo=[10.24.67.42])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qnflt-0002Y7-2k; Tue, 03 Oct 2023 13:49: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=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=JGPGCQdxcy0NRd/uv+tBlifnKjpGc9ZLPgVyx3qLY/U=; b=GV93WFJXsHXVoORUStapu0B/JU
	PzoIC/UXTe0ST0a3uFmu+8RruPocNMwgYjiEfFKmb23WD9/HnAVpfYcQSWOGKDIsyB1ruhnuUMtbN
	uV8+r1OaV1OFNTNMxJ0e40gmmzMGu+X2ScFWbGbz2ct8t8KUfPDw2wL4Cuib7chqugfw=;
Message-ID: <27044e68-4a49-4f1d-b8a9-174810efb5fe@xen.org>
Date: Tue, 3 Oct 2023 14:49:07 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH] arm/ioreq: clean data field in ioreq struct on read
 operations
Content-Language: en-GB
To: Andrii Chepurnyi <Andrii_Chepurnyi@epam.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Oleksandr Tyshchenko <Oleksandr_Tyshchenko@epam.com>,
 "andrii.chepurnyi82@gmail.com" <andrii.chepurnyi82@gmail.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
References: <20231003131923.2289867-1-andrii_chepurnyi@epam.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <20231003131923.2289867-1-andrii_chepurnyi@epam.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi,

On 03/10/2023 14:19, Andrii Chepurnyi wrote:
> For read operations, there's a potential issue when the data field
> of the ioreq struct is partially updated in the response. To address
> this, zero data field during read operations. This modification
> serves as a safeguard against implementations that may inadvertently
> partially update the data field in response to read requests.
> For instance, consider an 8-bit read operation. In such cases, QEMU,
> returns the same content of the data field with only 8 bits of
> updated data. 

Do you have a pointer to the code?

> This behavior could potentially result in the
> propagation of incorrect or unintended data to user-space applications.

I am a bit confused with the last sentence. Are you referring to the 
device emulator or a guest user-space applications? If the latter, then 
why are you singling out user-space applications?

> 
> Signed-off-by: Andrii Chepurnyi <andrii_chepurnyi@epam.com>
> ---
>   xen/arch/arm/ioreq.c | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/xen/arch/arm/ioreq.c b/xen/arch/arm/ioreq.c
> index 3bed0a14c0..aaa2842acc 100644
> --- a/xen/arch/arm/ioreq.c
> +++ b/xen/arch/arm/ioreq.c
> @@ -80,7 +80,7 @@ enum io_state try_fwd_ioserv(struct cpu_user_regs *regs,
>   
>       ASSERT(dabt.valid);
>   
> -    p.data = get_user_reg(regs, info->dabt.reg);
> +    p.data = (p.dir) ? 0 : get_user_reg(regs, info->dabt.reg);

To take the 8-bits example, the assumption is that QEMU will not touch 
the top 24-bits. I guess that's a fair assumption. But, at this point, I 
feel it would be better to also zero the top 24-bits in handle_ioserv() 
when writing back to the register.

Also, if you are worried about unintended data shared, then we should 
also make the value of get_user_reg() to only share what matters to the 
device model.

Lastly, NIT, the parenthesis around p.dir are not necessary.

>       vio->req = p;
>       vio->suspended = false;
>       vio->info.dabt_instr = instr;

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Oct 03 14:30:44 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 03 Oct 2023 14:30:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612235.952074 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qngPv-0008D2-7Q; Tue, 03 Oct 2023 14:30:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612235.952074; Tue, 03 Oct 2023 14:30: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 1qngPv-0008Cv-3w; Tue, 03 Oct 2023 14:30:31 +0000
Received: by outflank-mailman (input) for mailman id 612235;
 Tue, 03 Oct 2023 14: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=N/VM=FR=citrix.com=prvs=63394bc6a=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qngPt-0008Cp-T4
 for xen-devel@lists.xenproject.org; Tue, 03 Oct 2023 14:30:30 +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 633db057-61f9-11ee-9b0d-b553b5be7939;
 Tue, 03 Oct 2023 16:30: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;
 03 Oct 2023 10:30:00 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by SN7PR03MB7293.namprd03.prod.outlook.com (2603:10b6:806:2e0::18)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.31; Tue, 3 Oct
 2023 14:29:58 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::66ca:3a42:baeb:9ecf]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::66ca:3a42:baeb:9ecf%6]) with mapi id 15.20.6838.030; Tue, 3 Oct 2023
 14:29: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: 633db057-61f9-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1696343426;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=Tbo3ldbRGxQ909GNcXG5NbYgMqz8VPtptEYB9Bb/sEA=;
  b=FH4hPd+hNrQoODpXl+hOWatnl5Ba6ROsEOXIZP/8FrGGy/MHtYpyX3Aj
   WQaCnF5Yoou910K5PH0URhBAoP243HCkinMWfgKhrmgJFGofJxDn7btCs
   iOfunj4KeSMr47l9Yg4SyPgKUJGKM37875fMO0TDbK0K1DNjQp1Z5ABiz
   0=;
X-CSE-ConnectionGUID: Z5ss70H1TwmP8uXJs6EN1g==
X-CSE-MsgGUID: TAaYNDSEQDSb74oEdBdG7w==
X-IronPort-RemoteIP: 104.47.58.168
X-IronPort-MID: 127253783
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:ZxAJmqxKu6eWFm/T0Mx6t+fHxyrEfRIJ4+MujC+fZmUNrF6WrkUDy
 DYbWm7QPfnYazejLY8iaYS19BsC756EzoNnTAM4qiAxQypGp/SeCIXCJC8cHc8wwu7rFxs7s
 ppEOrEsCOhuExcwcz/0auCJQUFUjPzOHvykTrecZkidfCc8IA85kxVvhuUltYBhhNm9Emult
 Mj75sbSIzdJ4RYtWo4vw/zF8EgHUMja4mtC5QVmPasT4DcyqlFOZH4hDfDpR5fHatE88t6SH
 47r0Ly/92XFyBYhYvvNfmHTKxBirhb6ZGBiu1IOM0SQqkEqSh8ai87XAME0e0ZP4whlqvgqo
 Dl7WT5cfi9yVkHEsLx1vxC1iEiSN4UekFPMCSDXXcB+UyQq2pYjqhljJBheAGEWxgp4KVMT7
 udHcBBUUg+Gv7Kr8JCgFMRK38t2eaEHPKtH0p1h5RfwKK9/BLrlE+DN79Ie2yosjMdTG/qYf
 9AedTdkcBXHZVtIJ0sTD5U92uyvgxETcRUB8A7T+fVxvjiVlVIhuFTuGIO9ltiiX8Jak1zev
 mvb12/4HgsbJJqUzj/tHneE37WQx36gB9JJfFG+3sJDiWy16lc+MTEtXwTnptS1oEKRBM0Kf
 iT4/QJr98De7neDUtD4VgaQvH2AsxgTStdUVeY97Wml2qfSpgqUGGUAZjpAc8A98t87QyQw0
 V2ElM+vAiZg2JWVRHSH5/GLpDW9ESEPKCkJYipsZQkP7sTnoYozpgnSVdslG6mw5vXqHRngz
 jbMqzIx750RkMoK2qOT7V3BxTW2qfDhVRUp7w/aWmak6AJRZ4O/YYGsr1/B4p59wJ2xS1CAu
 D0OnZiY5eVXVJWVznXTEKMKAa2j4OuDPHvEm1lzEpI99jOrvXm+YYRX5zI4L0BsWioZRQLUj
 IbokVs5zPdu0LGCMfIfj16ZYyjy8ZXdKA==
IronPort-HdrOrdr: A9a23:3e/U+KrQC2KpvAj9OQeC7aEaV5tMLNV00zEX/kB9WHVpm5Oj+v
 xGzc5w6farsl0ssREb9uxo9pPwJE800aQFmbX5Wo3SJzUO2VHYVb2KiLGP/9SOIU3DH4JmpM
 Rdmu1FeafN5DtB/LnHCWuDYrEdKbC8mcjH5Ns2jU0dKz2CA5sQkzuRYTzrdnGeKjM2Z6bQQ/
 Gnl7d6TnebCD0qhoPRPAh3Y8Hz4/nw0L72ax8PABAqrCGIkDOT8bb/VzSIwxsEVDtL4LE6tU
 zIiRbw6KmPu+yyjka07R6f071m3P/ajvdTDs2FjcYYbh3qlwaTfYxkH5GSoTwvp+mryVAy1P
 3BuQ0pMchf427YOku1vRzu8Q/91ytG0Q6p9XaoxV/Y5eDpTjMzDMRMwapfbxvi8kIl+PVxyr
 hC0W61v4deSUqoplW32/H4EzVR0makq3srluAey1RZTIslcbdU6agS5llcHpssFD/zrKonDO
 5tJsfB4+s+SyLTU1np+k1UhPC8VHU6GRmLBmAEp8yuyjBT2Et0ykMJrfZv6ksoxdYYcd1p9u
 7EOqNnmPVlVckNd59wA+8HXI+eFnHNaQikChPSHX3XUIU8f17doZ/+57s4oMuwfoYT8Zc0kJ
 PdFHtFqG8JfV70A8Hm5uwEzvn0ehT/Yd3R8LAd23Ag0YeMAYYDcBfzB2zGqvHQ48n2WabgKr
 KO0JE/OY6XEYKhI/cP4+TEYegjFZAvarxqhj8FYSP+nivqEPycigWJSoekGJPdVRAZZ0jYPl
 wvGBDOGeQo1DHYZpa/ummcZ0/Q
X-Talos-CUID: 9a23:EscQXW1SLSbSQqNBx2RbbLxfKJ0+aSKF7C7sPEqAWXtZaqbLZHnJ9/Yx
X-Talos-MUID: =?us-ascii?q?9a23=3Alv1bzA/xYJ7EPtEI7OsTSs+Qf/tB6pWIJHsgqLk?=
 =?us-ascii?q?9sZbYMgF8ETuy0yviFw=3D=3D?=
X-IronPort-AV: E=Sophos;i="6.03,197,1694750400"; 
   d="scan'208";a="127253783"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=WyNlgygY5S13QpcU+3Fj7aWFq102O5Zc+6738jWV6K4cacYkMqAwK4R2JGU72WgcDOGnsKZHz5k88uwvnnwX4+l6KIYdAofLJ7G8yvoG2ygh1K4BSyTWt5z9oVIxrJszqiAhb5WKK2wSuKxgqOlJOpfEa0MbHqgsvKEJaXLXc7EgRvFKtLnJ3E2OJBaZkces3lzWnjVL6NY40Utp96cGuO19kVqvxhnj4Y+FkTcHSy/ogVyWKIt8Mcs7jkVNBxXX3pUE7f7R9Bb5Kuq1OBE5yapxpB6gsYo5RpFvvm4tMQUu5i/EHganLX489MeAThcw+jk5wmJts9yxtnsspxYQfw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=+t61lgnBvuF4GtqBUIqxWJ8i13nyqtD2oICqzCJ/p0o=;
 b=AThs9GgqxxuYZWZamC40HGYMzBEKi7f3PGnfYZD92Rh8rJlJYxKBgSjErg6Vn5Z4zqu8NISmCS42Ji0ZHO/SW6C7xfycdBN5cHf1/6ypS5kHY2ux51iDhoahDWvzs2wGHi0rMFj+eRhUS93FRLl0ybKKPwPtzurd2eWVsBJudcm/FAwsAwpYr2tuxCPqMAd28vN+XkZyfiiZsZ9Y8JTDIXwKAhokC5+Atxt6jSW1k0JqYlGo0jInN+GgZu07BiYxFiz2wX/JnZhuMn+yikwidpJtA8pY+Gd+2Mgeo5pxmJo6Npg230GITXXgEDNXvq9efE+ETbaKERK2c8Do+nS8RA==
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=+t61lgnBvuF4GtqBUIqxWJ8i13nyqtD2oICqzCJ/p0o=;
 b=sT/JsDB1eRB1X0614d6y0a13ta5MAZdGOp7+AgP6WIenbMm6tKyLV4vuhMYS1qom4sS8i3H2U3jzbEYxLT87sERfFTK7i4cdGEKAwavQq0G3ciH1ThDopSaM+foZ2GtJ720JC8ODs0QNQ5+ooEt41M7jNM1N5jyQEj2BuXlIXxg=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Tue, 3 Oct 2023 16:29:50 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Tamas K Lengyel <tamas@tklengyel.com>
Cc: xen-devel@lists.xenproject.org, henry.wang@arm.com,
	Jan Beulich <jbeulich@suse.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>
Subject: Re: [PATCH v5 06/10] x86/mem-sharing: copy GADDR based shared guest
 areas
Message-ID: <ZRwlXls8xRyc8AX4@MacBookPdeRoger>
References: <20231002151127.71020-1-roger.pau@citrix.com>
 <20231002151127.71020-7-roger.pau@citrix.com>
 <CABfawhnHg3KrGP-hp4_Q8GvSf2nVSVSyK24HKqAGuWp_AtD8-A@mail.gmail.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <CABfawhnHg3KrGP-hp4_Q8GvSf2nVSVSyK24HKqAGuWp_AtD8-A@mail.gmail.com>
X-ClientProxiedBy: LO4P265CA0013.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:2ad::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_|SN7PR03MB7293:EE_
X-MS-Office365-Filtering-Correlation-Id: e0ed60fd-3a78-447c-5c95-08dbc41d37fb
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:
	6CSNvjsIlNh/RADGL7eWRYnQHuABaDktIJGpo+zMImF+KREO9ouHmLGYNt/1XV2J1bNpTZ1CwQTkEZcw8LQvzgMQNIQsry2nYx6ZQP8LUOBGa/hhhLgFpMfQciOWE3nqtONJtRE2mwEpeDJSh6znep6juhpTOXUR+uzDKpJLDIZYFX65yfC+z9E8mrWi/bzsDkue3CGHRi1oHZ/4xwKtXyvb7gNtcyhLoZjc4B5V3a5IhzqeFaK/oUSwf4hexjuFE5Fmb9L02O5dETlUNUk63IxtrQ/aWHXvT2ptLo/93gF8ycjwjmkPuInOilL5B4p0r1X3wYAN5Ykb8WK7C+6zbc2kosu+UPAUEQFrxt7R4q0RBMoU/TxlG+mjNKzo7OWh9i5g7rKelFgQe43ozUmMDB75TRcURM5fqsvJwDk5yOhlcyjodIO97RaQvvkjDQM1Ejb45xeSirpTKHSoi3FQwIR4+cB5BddZHRwHw4CJmNMQIn643lXo5mlDVZNcfmbA/osJD0GgeZrdvmpRg5YkRlxApv0+CwJObfcfyFyXqJaOH4A9ue2zHPYmim90sHmS
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)(136003)(366004)(396003)(376002)(230922051799003)(186009)(64100799003)(1800799009)(451199024)(2906002)(83380400001)(86362001)(33716001)(85182001)(38100700002)(82960400001)(53546011)(316002)(66946007)(6916009)(66476007)(66556008)(54906003)(6506007)(6512007)(9686003)(41300700001)(6486002)(478600001)(6666004)(8676002)(4326008)(5660300002)(26005)(8936002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?NFAycXIyYmhEcmtVTWdpSnB6b004S21vd0pTaDNobjNaVjVlci8xbHl3enF6?=
 =?utf-8?B?dnJRZmlDYU1saVVFV2kvMkJBSG15eUFIbllQZGlZczAxeTRsV2J6UmQyOVpt?=
 =?utf-8?B?cnlGL0k0TnY0a2lqeUxHeTJ0dkZlazlCTEl2T0hEK21Dc0EzMzFHTnNBMFpp?=
 =?utf-8?B?NmVjUFBySnErNG9ZUVJJQXVhaWFxY0dsQTdZSnJXT2xUYXdnTlNZVUJyT2R0?=
 =?utf-8?B?ZHBMZHhoQjdYZ2trSVFpN2xHTTFQQmx1bHJYV2prdGw1UWZBUlNQUjZiWVZ5?=
 =?utf-8?B?d1BTSmFlR2FRTlBPY0gxMmRkZ3JzM0pYak9ZM29hakN5RHZ3c1hOdkkwWnVq?=
 =?utf-8?B?clVYb0dib3JIY25hcXFoTit4UUxqY1pVNWZ5SDJRcG0zQ1JNTUNDQTZGdk1M?=
 =?utf-8?B?aHpjRWVNaXFWSks4bjUwYXRlejZCTGplY1ZKamZheXJIbjlDRm5YLy80WHhu?=
 =?utf-8?B?QjlKRlkzd1hkNmlpK2UyNjZ1S0xMRVVsK1hqSmRISU82MjFWVGR0TFh4Q2Rn?=
 =?utf-8?B?dXIvdDZEWTcwY1JramxISWtzQTZCd2k4NzUyTE91WjNvSWdyeUY4Vk1EU0Y5?=
 =?utf-8?B?aFhZSi84QlJXYkpWY3c2S1hSL3VjTDN3T0pRcm5TV2Q3cnQ3YmZ1VGZxMU9V?=
 =?utf-8?B?QVdwZkdHODZFQjJnRXlhTEloZEM4ZXR0Q0YwMkRwZ2tqaU8vNnpVNS9vbmFx?=
 =?utf-8?B?bHFEbmQ5K1JOcUtraEcvRDI0bG4xeTVQOXg5SnZPVzg3V1pYWlZKLzkydmt0?=
 =?utf-8?B?a3hSM3o1UVM1T254TFJib2dDcytDSTdKUGpaTG0wNVAwVFBnTFNEOG1za2dz?=
 =?utf-8?B?Vy85SzlEUnNzNXdXQmh6Nk1iTUx4MHdMVVgxR1FoR25HRGZBdTd1dFU3YVdD?=
 =?utf-8?B?RDdWT1o5bElFa0hYaFl4SlB0RWJscXNYTEdGQUJ0alNERm1odFhWT25LeWZ4?=
 =?utf-8?B?bVZQQkpOVllVbWRiclFYZDlvNHNFdTdlTHpPeG0wb3QvMlQ4STFVelp5YnYy?=
 =?utf-8?B?Q2s3M1JoN0dId0FvV2lSYlVRc3VRQUxSazl4L2RJWWV3STZ5bkNuaEh4SllP?=
 =?utf-8?B?TW9Jd2wvOERod1hBMlZFK1ovdnZvcnNtS3ZPYUZ2NW14S25oN3Y2TlV0bzdZ?=
 =?utf-8?B?dGE3SFFGRi9SMXVVUDZmMXRFOVp4aVkrZHkxU3g5anN2cFdyOUwyUW1kUzNL?=
 =?utf-8?B?YTA3UDNTMTliZUZmNVgzMWJ1bEtTTm5UR243MEdLdG5uQjlGSlRBeVVIeUtm?=
 =?utf-8?B?SUtDVG43OE40Y0kwaVlsNk1NMGY2YktUU2Z3RGZIbGNsMTZjYWkxTTRNRlZN?=
 =?utf-8?B?L3J2UEFCOVNjTDZaam4wenAyc293QzlJdXVqMzlUZlluYlI1eFNNWGYyWUZ6?=
 =?utf-8?B?KzVCbVR4ZEttUDZKNll3aDZXYU9tUnBuRndzbWdOdjNnbHdvU1c4eWI0eFRP?=
 =?utf-8?B?YzZvL3YxSVFUK3lac1hRcVFoT2tLUnNLUTBCVHN0cllycVZVTi84aW1hQURa?=
 =?utf-8?B?SU1rdGhzQUt0MmNKcGloT1VBamVKT0pacWtIdGhmTkQ4cTAxZEs2U0c3dUlU?=
 =?utf-8?B?MFRRaWVnUFM5em5uZi8yU0VjVTFLRVNLcjZFL3l2K2p2VGh4UGw3Y3F4ZHBI?=
 =?utf-8?B?TlgycTZra0c5WVlpaHE2aU1YOUdCNHJRSGFTZ044bHhhMXJwQ2Q5WVZ4WGZt?=
 =?utf-8?B?YThsbGdFdkZzeE5Qa29GVnlYV1BVUE5QdlR2MDBjOHQweDQ2eDVGd0pOSzgr?=
 =?utf-8?B?MVArZENJYitHMGttK3I0Q255ZVBmb0ZWbklYbXUvT0ZtYk5JLzBHeE0yTURI?=
 =?utf-8?B?N0ZsR2toSFQvcS9LOWtMMEhPVE8yMEVmd3h2RkgzUGNJUjJjaXRjeWtDTHJu?=
 =?utf-8?B?S25Kai9zRmpsMEt1b3FENS9DaHFTVERxTVErQmxWT295RTZsUm5hR25FRTJF?=
 =?utf-8?B?V0lEQUVaakxuVTlEY0dseGNOVzRkc3Ziamlkai91Q2FRSXZzNjRaamFSMHlt?=
 =?utf-8?B?NEY5Rk1hbFFFcGV2aGtMemh5VnhiSngxS1ZsdVJrSlNzMTJ3Z1U1WjJQVU44?=
 =?utf-8?B?WjJFQjZtOWtKWFlhVHplQzd3YWlJUXlsSmxQdE5ucnl3Nnd4UW9xKzIrRExM?=
 =?utf-8?B?MVR0QXpWSXZiUmJSUUptM21yVlIwTW8yS29KYkQ2ZGt3TEc4b1EvM2JGakIy?=
 =?utf-8?B?akE9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	ZssgIbhhuZ8kiOg9fTa33l+Zv2KLMqOehwqp6KxK2eHRy+/5rHG2i9IyCnmLB/zalMMna0PBcNrwCj+0UaptEngzJREQuG2xZG4FjqElnBvPuihUfWFQhM8YIRbGRqIwQYThJPm0vbou12DOhViAnPIFg0ky7yLDujG0Z5HpK5GVBDevsHzcl2KnIkLTsZVejsw6A26ZXIavNOGx9786dA48ZeVN8X1uNiYEh2wuKDC72hb92CrU1sRIsz2h3mCXzIBRwlHv5L4xrRGxjYjd7SVe6PrytFU6ug5B2WCGTjVjF2pJUu/WPlSjh+8Ig4qHDIN6kw3ft2EJyJ5qNkDc6R7C426K0GCcV4Y17KGjZrwI6Wp18ssESnhVvEslNaIM4/Ly1FaUMtZM58gWTX+OAli94dL9++0h96uJZkVqXZTmXP3CMSoypU3BsscBBbbOdzNRON+f2Jz/sg/EOH1g+zKwxvgS/NmTbEEUJkm75uTIEZjAqxgwf90ga2Ai96hxZ2R1chBwi9IQQVv0YTI0Af37EqEW7646KAQxPV6Amf6f+BEiuq9pJFJ7epsCGh3lVdEnhgOUMuV1wt5uAZkre0HKRIyUdRlhCn+/CbYHeGT4ia1r2SrT0iHfarQ0pfsTQ2CKUUhCHEA3WTCvQ+eBAGsWS0CSDtXezNW1R+v/MWEswGukk1I4JCihjemFw3mJMroARZuFEToyWDqFDJmElEE+da7r6tYYqxLpxIWBiWli8Uja1cOo53iiPNg8soY8esC5KUx5P/htQbwvt/U9nZdmg9/Vr+XDkFUfFVTPjdlAHTgvLxVusMMnf79krllNmYMeDoH/yAYKm/nTBEPcvNIFRFHgcxD8bu+zdnOUmTf1uYNQ7MnjY4QwIvpXzphB+vl4JK9M/5BXH6m9qbGXXzMfDZXXWWjjnZ9e4pj6h7E=
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: e0ed60fd-3a78-447c-5c95-08dbc41d37fb
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 03 Oct 2023 14:29:57.8584
 (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: S3Eu7TaOe4lJQVx0O1WJfgau8V+YYL5c+As5zm8/zstw8OoUAb5I/o1Z478Fjm/wxJwVpYPRDzi0ujomhEqmhw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN7PR03MB7293

On Tue, Oct 03, 2023 at 09:53:11AM -0400, Tamas K Lengyel wrote:
> On Mon, Oct 2, 2023 at 11:13 AM Roger Pau Monne <roger.pau@citrix.com> wrote:
> >
> > From: Jan Beulich <jbeulich@suse.com>
> >
> > 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>
> > Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
> > ---
> > Changes since v4:
> >  - Rely on map_guest_area() to populate the child p2m if necessary.
> > ---
> >  xen/arch/x86/mm/mem_sharing.c | 31 +++++++++++++++++++++++++++++++
> >  xen/common/domain.c           |  7 +++++++
> >  2 files changed, 38 insertions(+)
> >
> > diff --git a/xen/arch/x86/mm/mem_sharing.c b/xen/arch/x86/mm/mem_sharing.c
> > index 5f8f1fb4d871..99cf001fd70f 100644
> > --- a/xen/arch/x86/mm/mem_sharing.c
> > +++ b/xen/arch/x86/mm/mem_sharing.c
> > @@ -1641,6 +1641,24 @@ static void copy_vcpu_nonreg_state(struct vcpu *d_vcpu, struct vcpu *cd_vcpu)
> >      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)
> > +{
> > +    unsigned int offset;
> > +
> > +    /* Check if no area to map, or already mapped. */
> > +    if ( !d_area->pg || cd_area->pg )
> > +        return 0;
> > +
> > +    offset = PAGE_OFFSET(d_area->map);
> > +    return map_guest_area(cd_vcpu, gfn_to_gaddr(
> > +                                       mfn_to_gfn(d, page_to_mfn(d_area->pg))) +
> > +                                   offset,
> > +                          PAGE_SIZE - offset, cd_area, NULL);
> > +}
> > +
> >  static int copy_vpmu(struct vcpu *d_vcpu, struct vcpu *cd_vcpu)
> >  {
> >      struct vpmu_struct *d_vpmu = vcpu_vpmu(d_vcpu);
> > @@ -1709,6 +1727,16 @@ static int copy_vcpu_settings(struct domain *cd, const struct domain *d)
> >                  return ret;
> >          }
> >
> > +        /* 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;
> > @@ -1950,7 +1978,10 @@ int mem_sharing_fork_reset(struct domain *d, bool reset_state,
> >
> >   state:
> >      if ( reset_state )
> > +    {
> >          rc = copy_settings(d, pd);
> > +        /* TBD: What to do here with -ERESTART? */
> 
> There is no situation where we get an -ERESTART here currently. Is
> map_guest_area expected to run into situations where it fails with
> that rc?

Yes, there's a spin_trylock() call that will result in
map_guest_area() returning -ERESTART.

> If yes we might need a lock in place so we can block until it
> can succeed.

I'm not sure whether returning -ERESTART can actually happen in
map_guest_area() for the fork case: the child domain is still paused
at this point, so there can't be concurrent guest hypercalls that
would also cause the domain hypercall_deadlock_mutex to be acquired.

The comment was added by Jan, so I cannot be certain about the
intention, neither I would like to misinterpret his words.  My
understanding is that future uses of copy_settings() might indeed need
to report -ERESTART, and that it would need to be propagated for
proper hypercall continuations at some point.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Tue Oct 03 14:34:45 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 03 Oct 2023 14:34:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612241.952084 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qngTz-0001OM-SA; Tue, 03 Oct 2023 14:34:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612241.952084; Tue, 03 Oct 2023 14:34: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 1qngTz-0001OF-Pc; Tue, 03 Oct 2023 14:34:43 +0000
Received: by outflank-mailman (input) for mailman id 612241;
 Tue, 03 Oct 2023 14:34: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 1qngTy-0001O5-2b; Tue, 03 Oct 2023 14:34: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 1qngTx-0002FR-UJ; Tue, 03 Oct 2023 14:34: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 1qngTx-0000Kx-Km; Tue, 03 Oct 2023 14:34:41 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qngTx-0001Bm-KC; Tue, 03 Oct 2023 14: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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=jLDHa+vMhNipGesrbwbAqKsKzx5Uft6Zt13Yy8FB26k=; b=MU3lJIvO3f8B0v+9wUufGywfEx
	AxT1kzL9YAyLExh9MD3WJ/5LqLDNaRUj51aXJ1gEvbZiUp/h/7iSKJsc9SGy7hR4DlumjzEuwIIha
	W/1KkcwzzGI00jo054uNyB8Z3twB2BAb5ra5SAYpT0kVisgaNMONJ/JxjBOVrYOTxke0=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183245-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 183245: tolerable FAIL - PUSHED
X-Osstest-Failures:
    linux-linus:test-armhf-armhf-xl-credit2:xen-boot:fail:heisenbug
    linux-linus:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-qcow2:guest-start/debian.repeat: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-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-armhf-armhf-libvirt: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-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-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-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-xl-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu: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-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-raw:migrate-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-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw: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-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-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=ce36c8b149873b50f2a4b9818eb3dcdd74ddd5a3
X-Osstest-Versions-That:
    linux=8f1b4600373f9da2afc124f31788b16f47eb950c
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 03 Oct 2023 14:34:41 +0000

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

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-armhf-armhf-xl-credit2   8 xen-boot            fail pass in 183252-retest

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail blocked in 183241
 test-armhf-armhf-libvirt-qcow2 17 guest-start/debian.repeat fail blocked in 183241
 test-armhf-armhf-xl-credit2 15 migrate-support-check fail in 183252 never pass
 test-armhf-armhf-xl-credit2 16 saverestore-support-check fail in 183252 never pass
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183241
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183241
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183241
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183241
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183241
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183241
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183241
 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-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-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-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-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-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-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-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-libvirt-raw 14 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-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-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                ce36c8b149873b50f2a4b9818eb3dcdd74ddd5a3
baseline version:
 linux                8f1b4600373f9da2afc124f31788b16f47eb950c

Last test of basis   183241  2023-10-02 18:10:02 Z    0 days
Testing same since   183245  2023-10-03 03:22:35 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Dave Jiang <dave.jiang@intel.com>
  Linus Torvalds <torvalds@linux-foundation.org>
  Richard Weinberger <richard@nod.at>
  Yu Liao <liaoyu15@huawei.com>
  Zhihao Cheng <chengzhihao1@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                                  fail    
 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                               fail    
 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
   8f1b4600373f..ce36c8b14987  ce36c8b149873b50f2a4b9818eb3dcdd74ddd5a3 -> tested/linux-linus


From xen-devel-bounces@lists.xenproject.org Tue Oct 03 15:07:30 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 03 Oct 2023 15:07:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612250.952093 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qngza-00085i-NS; Tue, 03 Oct 2023 15:07:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612250.952093; Tue, 03 Oct 2023 15:07: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 1qngza-00085b-KO; Tue, 03 Oct 2023 15:07:22 +0000
Received: by outflank-mailman (input) for mailman id 612250;
 Tue, 03 Oct 2023 15:07:21 +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 1qngzZ-00085V-1G
 for xen-devel@lists.xenproject.org; Tue, 03 Oct 2023 15:07:21 +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 1qngzX-0003BU-Sl; Tue, 03 Oct 2023 15:07:19 +0000
Received: from [15.248.2.158] (helo=[10.24.67.42])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qngzX-0005sd-Kn; Tue, 03 Oct 2023 15: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>
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=9l5Ln8SF3Zh/g+DWAF7vPzP+Q7benGJL16V18HNYNRI=; b=OzJJUr0J4hkNpxmlmIspuSdouh
	/N9z4iuN5W/jgmVJoFNv8as9K9lMUS6L91XIO/BGtSLD1TJH0IJdKziAxNaEY+20vyTaTZJooRBH4
	9uXiITMcsoSMjBm82lqrb3shj2G8lR5IWCoJ1+YAawUhtNSY9HjwnltDfIVXjk6IkhUM=;
Message-ID: <8ee8d70b-5b69-4834-b7e3-572e96effa5c@xen.org>
Date: Tue, 3 Oct 2023 16:07:17 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v5 06/10] x86/mem-sharing: copy GADDR based shared guest
 areas
Content-Language: en-GB
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, henry.wang@arm.com,
 Jan Beulich <jbeulich@suse.com>, Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>
References: <20231002151127.71020-1-roger.pau@citrix.com>
 <20231002151127.71020-7-roger.pau@citrix.com>
 <CABfawhnHg3KrGP-hp4_Q8GvSf2nVSVSyK24HKqAGuWp_AtD8-A@mail.gmail.com>
 <ZRwlXls8xRyc8AX4@MacBookPdeRoger>
From: Julien Grall <julien@xen.org>
In-Reply-To: <ZRwlXls8xRyc8AX4@MacBookPdeRoger>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

Hi Roger,

On 03/10/2023 15:29, Roger Pau Monné wrote:
> On Tue, Oct 03, 2023 at 09:53:11AM -0400, Tamas K Lengyel wrote:

Tamas, somehow your e-mails don't show up in my inbox (even if I am 
CCed) or even on lore.kernel.org/xen-devel. It is not even in my SPAM 
folder.

>> On Mon, Oct 2, 2023 at 11:13 AM Roger Pau Monne <roger.pau@citrix.com> wrote:
>>>
>>> From: Jan Beulich <jbeulich@suse.com>
>>>
>>> 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>
>>> Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
>>> ---
>>> Changes since v4:
>>>   - Rely on map_guest_area() to populate the child p2m if necessary.
>>> ---
>>>   xen/arch/x86/mm/mem_sharing.c | 31 +++++++++++++++++++++++++++++++
>>>   xen/common/domain.c           |  7 +++++++
>>>   2 files changed, 38 insertions(+)
>>>
>>> diff --git a/xen/arch/x86/mm/mem_sharing.c b/xen/arch/x86/mm/mem_sharing.c
>>> index 5f8f1fb4d871..99cf001fd70f 100644
>>> --- a/xen/arch/x86/mm/mem_sharing.c
>>> +++ b/xen/arch/x86/mm/mem_sharing.c
>>> @@ -1641,6 +1641,24 @@ static void copy_vcpu_nonreg_state(struct vcpu *d_vcpu, struct vcpu *cd_vcpu)
>>>       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)
>>> +{
>>> +    unsigned int offset;
>>> +
>>> +    /* Check if no area to map, or already mapped. */
>>> +    if ( !d_area->pg || cd_area->pg )
>>> +        return 0;
>>> +
>>> +    offset = PAGE_OFFSET(d_area->map);
>>> +    return map_guest_area(cd_vcpu, gfn_to_gaddr(
>>> +                                       mfn_to_gfn(d, page_to_mfn(d_area->pg))) +
>>> +                                   offset,
>>> +                          PAGE_SIZE - offset, cd_area, NULL);
>>> +}
>>> +
>>>   static int copy_vpmu(struct vcpu *d_vcpu, struct vcpu *cd_vcpu)
>>>   {
>>>       struct vpmu_struct *d_vpmu = vcpu_vpmu(d_vcpu);
>>> @@ -1709,6 +1727,16 @@ static int copy_vcpu_settings(struct domain *cd, const struct domain *d)
>>>                   return ret;
>>>           }
>>>
>>> +        /* 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;
>>> @@ -1950,7 +1978,10 @@ int mem_sharing_fork_reset(struct domain *d, bool reset_state,
>>>
>>>    state:
>>>       if ( reset_state )
>>> +    {
>>>           rc = copy_settings(d, pd);
>>> +        /* TBD: What to do here with -ERESTART? */
>>
>> There is no situation where we get an -ERESTART here currently. Is
>> map_guest_area expected to run into situations where it fails with
>> that rc?
> 
> Yes, there's a spin_trylock() call that will result in
> map_guest_area() returning -ERESTART.
> 
>> If yes we might need a lock in place so we can block until it
>> can succeed.
> 
> I'm not sure whether returning -ERESTART can actually happen in
> map_guest_area() for the fork case: the child domain is still paused
> at this point, so there can't be concurrent guest hypercalls that
> would also cause the domain hypercall_deadlock_mutex to be acquired.

hypercall_deadlock_mutex is also acquired by domctls. So, I believe, 
-ERESTART could be returned if the toolstack is also issuing domclt 
right at the same time as forking.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Oct 03 15:11:28 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 03 Oct 2023 15:11:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612255.952103 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnh3W-00014e-67; Tue, 03 Oct 2023 15:11:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612255.952103; Tue, 03 Oct 2023 15:11: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 1qnh3W-00014X-3E; Tue, 03 Oct 2023 15:11:26 +0000
Received: by outflank-mailman (input) for mailman id 612255;
 Tue, 03 Oct 2023 15:11: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 1qnh3U-00014N-Sh; Tue, 03 Oct 2023 15:11: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 1qnh3U-0003GP-Pe; Tue, 03 Oct 2023 15:11: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 1qnh3U-0002LM-Dm; Tue, 03 Oct 2023 15:11:24 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qnh3U-0006Fi-DL; Tue, 03 Oct 2023 15:11: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=sYROMHZw78Vb3aXYzMt+n+OhfhyVvUH3bi+KvOwSQiQ=; b=gB0w13b6Ax3QsATRPJeJBNcdAM
	+wgYFWAtBtOeyHJKWxk39sWEsvXKjyde+AxH08ieblznsMhL4QsCVODYr/poSHMIE1ysQjCS9dx2c
	iWPurs3sgTSZeLXng1NmmSKefbmsInibpfiBKU4jLJENOakXQJAZ1EZr3M1IMbE1h1O4=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183246-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [libvirt test] 183246: 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:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-i386-libvirt-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-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=85e893a836f59ee7cffdd86bfbb04c714433d0aa
X-Osstest-Versions-That:
    libvirt=5c47ac65513a7649ebbff33536401a8d0f9b0766
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 03 Oct 2023 15:11:24 +0000

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

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183231
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183231
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183231
 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-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-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              85e893a836f59ee7cffdd86bfbb04c714433d0aa
baseline version:
 libvirt              5c47ac65513a7649ebbff33536401a8d0f9b0766

Last test of basis   183231  2023-10-01 04:28:44 Z    2 days
Testing same since   183246  2023-10-03 04:20:44 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrea Bolognani <abologna@redhat.com>
  Erik Skultety <eskultet@redhat.com>
  Jiri Denemark <jdenemar@redhat.com>
  Jonathon Jongsma <jjongsma@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
   5c47ac6551..85e893a836  85e893a836f59ee7cffdd86bfbb04c714433d0aa -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Tue Oct 03 15:19:51 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 03 Oct 2023 15:19:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612265.952113 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnhBX-0002om-AQ; Tue, 03 Oct 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 612265.952113; Tue, 03 Oct 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 1qnhBX-0002of-6t; Tue, 03 Oct 2023 15:19:43 +0000
Received: by outflank-mailman (input) for mailman id 612265;
 Tue, 03 Oct 2023 15:19: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 1qnhBW-0002oV-CJ; Tue, 03 Oct 2023 15:19: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 1qnhBW-0003Nh-2Y; Tue, 03 Oct 2023 15:19: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 1qnhBV-0002ey-Ow; Tue, 03 Oct 2023 15:19:41 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qnhBV-0001vo-OX; Tue, 03 Oct 2023 15:19: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=aBs2cgNqxDjXfGzr1Hu5o8rezX6AUvpWuU6VEV3/O5s=; b=cwplO2/OYzdPSgtki4+qb+Lx9X
	Pms5ouYiSf2zGiDiBjFyTo3atNnJ3+XqILomU9vifdy+8WeRP3PnjNeVXf+IJ1BXYCGD/TyXOjHfQ
	Fj5osfInC7xZFE7WS0DjDCJsHG3TRtfBcPqKbZDKBmLBE3Cn028heEfNJgD0HaBzoT8A=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183251-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xtf test] 183251: all pass - PUSHED
X-Osstest-Versions-This:
    xtf=f91cd602586c28f76b04f20fe39c5f001d8d613a
X-Osstest-Versions-That:
    xtf=164d1083e891247ef90f5cffc615a4bdf3da5785
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 03 Oct 2023 15:19:41 +0000

flight 183251 xtf real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183251/

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 xtf                  f91cd602586c28f76b04f20fe39c5f001d8d613a
baseline version:
 xtf                  164d1083e891247ef90f5cffc615a4bdf3da5785

Last test of basis   183248  2023-10-03 11:10:50 Z    0 days
Testing same since   183251  2023-10-03 13:14:07 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>

jobs:
 build-amd64-xtf                                              pass    
 build-amd64                                                  pass    
 build-amd64-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    


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

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

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.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/xtf.git
   164d108..f91cd60  f91cd602586c28f76b04f20fe39c5f001d8d613a -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Tue Oct 03 15:24:41 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 03 Oct 2023 15:24:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612271.952124 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnhGJ-0004r9-Sq; Tue, 03 Oct 2023 15:24:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612271.952124; Tue, 03 Oct 2023 15: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 1qnhGJ-0004r2-QC; Tue, 03 Oct 2023 15:24:39 +0000
Received: by outflank-mailman (input) for mailman id 612271;
 Tue, 03 Oct 2023 15:24: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=eQkC=FR=bugseng.com=federico.serafini@srs-se1.protection.inumbo.net>)
 id 1qnhGJ-0004qw-DJ
 for xen-devel@lists.xenproject.org; Tue, 03 Oct 2023 15:24:39 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id f6589b9a-6200-11ee-9b0d-b553b5be7939;
 Tue, 03 Oct 2023 17:24:37 +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 C7D954EE0737;
 Tue,  3 Oct 2023 17:24: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: f6589b9a-6200-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>,
	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>,
	Shawn Anastasio <sanastasio@raptorengineering.com>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>,
	Henry Wang <henry.wang@arm.com>
Subject: [XEN PATCH v3] xen/mm: address violations of MISRA C:2012 Rules 8.2 and 8.3
Date: Tue,  3 Oct 2023 17:24:30 +0200
Message-Id: <eedcfeb8d1c81527b7e18fcc0eca252577f00035.1696344012.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>
---
Changes in v3:
- used "nf" as parameter name to denote "new flags".
---
Changes in v2:
- propagated changes to the arm code.
---
 xen/arch/arm/mm.c             |  4 ++--
 xen/arch/ppc/mm-radix.c       |  2 +-
 xen/arch/x86/include/asm/mm.h | 20 ++++++++++----------
 xen/arch/x86/mm.c             | 12 ++++++------
 xen/include/xen/mm.h          | 16 +++++++++-------
 5 files changed, 28 insertions(+), 26 deletions(-)

diff --git a/xen/arch/arm/mm.c b/xen/arch/arm/mm.c
index c34cc94c90..484f23140e 100644
--- a/xen/arch/arm/mm.c
+++ b/xen/arch/arm/mm.c
@@ -1246,12 +1246,12 @@ int destroy_xen_mappings(unsigned long s, unsigned long e)
     return xen_pt_update(s, INVALID_MFN, (e - s) >> PAGE_SHIFT, 0);
 }
 
-int modify_xen_mappings(unsigned long s, unsigned long e, unsigned int flags)
+int modify_xen_mappings(unsigned long s, unsigned long e, unsigned int nf)
 {
     ASSERT(IS_ALIGNED(s, PAGE_SIZE));
     ASSERT(IS_ALIGNED(e, PAGE_SIZE));
     ASSERT(s <= e);
-    return xen_pt_update(s, INVALID_MFN, (e - s) >> PAGE_SHIFT, flags);
+    return xen_pt_update(s, INVALID_MFN, (e - s) >> PAGE_SHIFT, nf);
 }
 
 /* Release all __init and __initdata ranges to be reused */
diff --git a/xen/arch/ppc/mm-radix.c b/xen/arch/ppc/mm-radix.c
index 11d0f27b60..daa411a6fa 100644
--- a/xen/arch/ppc/mm-radix.c
+++ b/xen/arch/ppc/mm-radix.c
@@ -271,7 +271,7 @@ void __init setup_initial_pagetables(void)
  */
 unsigned long __read_mostly frametable_base_pdx;
 
-void put_page(struct page_info *p)
+void put_page(struct page_info *page)
 {
     BUG_ON("unimplemented");
 }
diff --git a/xen/arch/x86/include/asm/mm.h b/xen/arch/x86/include/asm/mm.h
index 05dfe35502..a270f8ddd6 100644
--- a/xen/arch/x86/include/asm/mm.h
+++ b/xen/arch/x86/include/asm/mm.h
@@ -406,7 +406,7 @@ void put_page_type(struct page_info *page);
 int  get_page_type(struct page_info *page, unsigned long type);
 int  put_page_type_preemptible(struct page_info *page);
 int  get_page_type_preemptible(struct page_info *page, unsigned long type);
-int  put_old_guest_table(struct vcpu *);
+int  put_old_guest_table(struct vcpu *v);
 int  get_page_from_l1e(
     l1_pgentry_t l1e, struct domain *l1e_owner, struct domain *pg_owner);
 void put_page_from_l1e(l1_pgentry_t l1e, struct domain *l1e_owner);
@@ -557,7 +557,7 @@ void audit_domains(void);
 
 void make_cr3(struct vcpu *v, mfn_t mfn);
 pagetable_t update_cr3(struct vcpu *v);
-int vcpu_destroy_pagetables(struct vcpu *);
+int vcpu_destroy_pagetables(struct vcpu *v);
 void *do_page_walk(struct vcpu *v, unsigned long addr);
 
 /* Allocator functions for Xen pagetables. */
@@ -572,20 +572,20 @@ int __sync_local_execstate(void);
 /* Arch-specific portion of memory_op hypercall. */
 long arch_memory_op(unsigned long cmd, XEN_GUEST_HANDLE_PARAM(void) arg);
 long subarch_memory_op(unsigned long cmd, XEN_GUEST_HANDLE_PARAM(void) arg);
-int compat_arch_memory_op(unsigned long cmd, XEN_GUEST_HANDLE_PARAM(void));
-int compat_subarch_memory_op(int op, XEN_GUEST_HANDLE_PARAM(void));
+int compat_arch_memory_op(unsigned long cmd, XEN_GUEST_HANDLE_PARAM(void) arg);
+int compat_subarch_memory_op(int op, XEN_GUEST_HANDLE_PARAM(void) arg);
 
 #define NIL(type) ((type *)-sizeof(type))
 #define IS_NIL(ptr) (!((uintptr_t)(ptr) + sizeof(*(ptr))))
 
-int create_perdomain_mapping(struct domain *, unsigned long va,
-                             unsigned int nr, l1_pgentry_t **,
-                             struct page_info **);
-void destroy_perdomain_mapping(struct domain *, unsigned long va,
+int create_perdomain_mapping(struct domain *d, unsigned long va,
+                             unsigned int nr, l1_pgentry_t **pl1tab,
+                             struct page_info **ppg);
+void destroy_perdomain_mapping(struct domain *d, unsigned long va,
                                unsigned int nr);
-void free_perdomain_mappings(struct domain *);
+void free_perdomain_mappings(struct domain *d);
 
-void __iomem *ioremap_wc(paddr_t, size_t);
+void __iomem *ioremap_wc(paddr_t pa, size_t len);
 
 extern int memory_add(unsigned long spfn, unsigned long epfn, unsigned int pxm);
 
diff --git a/xen/arch/x86/mm.c b/xen/arch/x86/mm.c
index 39544bd9f9..7ae42ac59b 100644
--- a/xen/arch/x86/mm.c
+++ b/xen/arch/x86/mm.c
@@ -5901,17 +5901,17 @@ int destroy_xen_mappings(unsigned long s, unsigned long e)
  * a problem.
  */
 void init_or_livepatch modify_xen_mappings_lite(
-    unsigned long s, unsigned long e, unsigned int _nf)
+    unsigned long s, unsigned long e, unsigned int nf)
 {
-    unsigned long v = s, fm, nf;
+    unsigned long v = s, fm, flags;
 
     /* Set of valid PTE bits which may be altered. */
 #define FLAGS_MASK (_PAGE_NX|_PAGE_DIRTY|_PAGE_ACCESSED|_PAGE_RW|_PAGE_PRESENT)
     fm = put_pte_flags(FLAGS_MASK);
-    nf = put_pte_flags(_nf & FLAGS_MASK);
+    flags = put_pte_flags(nf & FLAGS_MASK);
 #undef FLAGS_MASK
 
-    ASSERT(nf & _PAGE_PRESENT);
+    ASSERT(flags & _PAGE_PRESENT);
     ASSERT(IS_ALIGNED(s, PAGE_SIZE) && s >= XEN_VIRT_START);
     ASSERT(IS_ALIGNED(e, PAGE_SIZE) && e <= XEN_VIRT_END);
 
@@ -5925,7 +5925,7 @@ void init_or_livepatch modify_xen_mappings_lite(
 
         if ( l2e_get_flags(l2e) & _PAGE_PSE )
         {
-            l2e_write_atomic(pl2e, l2e_from_intpte((l2e.l2 & ~fm) | nf));
+            l2e_write_atomic(pl2e, l2e_from_intpte((l2e.l2 & ~fm) | flags));
 
             v += 1UL << L2_PAGETABLE_SHIFT;
             continue;
@@ -5943,7 +5943,7 @@ void init_or_livepatch modify_xen_mappings_lite(
 
                 ASSERT(l1f & _PAGE_PRESENT);
 
-                l1e_write_atomic(pl1e, l1e_from_intpte((l1e.l1 & ~fm) | nf));
+                l1e_write_atomic(pl1e, l1e_from_intpte((l1e.l1 & ~fm) | flags));
 
                 v += 1UL << L1_PAGETABLE_SHIFT;
 
diff --git a/xen/include/xen/mm.h b/xen/include/xen/mm.h
index 8b9618609f..abd09a83d2 100644
--- a/xen/include/xen/mm.h
+++ b/xen/include/xen/mm.h
@@ -71,9 +71,10 @@
 
 struct page_info;
 
-void put_page(struct page_info *);
-bool __must_check get_page(struct page_info *, const struct domain *);
-struct domain *__must_check page_get_owner_and_reference(struct page_info *);
+void put_page(struct page_info *page);
+bool __must_check get_page(struct page_info *page, const struct domain *domain);
+struct domain *__must_check page_get_owner_and_reference(
+    struct page_info *page);
 
 /* Boot-time allocator. Turns into generic allocator after bootstrap. */
 void init_boot_pages(paddr_t ps, paddr_t pe);
@@ -110,8 +111,9 @@ int map_pages_to_xen(
     unsigned long nr_mfns,
     unsigned int flags);
 /* Alter the permissions of a range of Xen virtual address space. */
-int modify_xen_mappings(unsigned long s, unsigned long e, unsigned int flags);
-void modify_xen_mappings_lite(unsigned long s, unsigned long e, unsigned int flags);
+int modify_xen_mappings(unsigned long s, unsigned long e, unsigned int nf);
+void modify_xen_mappings_lite(unsigned long s, unsigned long e,
+                              unsigned int nf);
 int destroy_xen_mappings(unsigned long s, unsigned long e);
 /* Retrieve the MFN mapped by VA in Xen virtual address space. */
 mfn_t xen_map_to_mfn(unsigned long va);
@@ -135,7 +137,7 @@ void free_domheap_pages(struct page_info *pg, unsigned int order);
 unsigned long avail_domheap_pages_region(
     unsigned int node, unsigned int min_width, unsigned int max_width);
 unsigned long avail_domheap_pages(void);
-unsigned long avail_node_heap_pages(unsigned int);
+unsigned long avail_node_heap_pages(unsigned int nodeid);
 #define alloc_domheap_page(d,f) (alloc_domheap_pages(d,0,f))
 #define free_domheap_page(p)  (free_domheap_pages(p,0))
 unsigned int online_page(mfn_t mfn, uint32_t *status);
@@ -528,7 +530,7 @@ static inline unsigned int get_order_from_pages(unsigned long nr_pages)
     return order;
 }
 
-void scrub_one_page(struct page_info *);
+void scrub_one_page(struct page_info *pg);
 
 #ifndef arch_free_heap_page
 #define arch_free_heap_page(d, pg) \
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Tue Oct 03 15:38:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 03 Oct 2023 15:38:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612278.952133 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnhTB-0007yy-3g; Tue, 03 Oct 2023 15:37:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612278.952133; Tue, 03 Oct 2023 15:37: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 1qnhTB-0007yr-1E; Tue, 03 Oct 2023 15:37:57 +0000
Received: by outflank-mailman (input) for mailman id 612278;
 Tue, 03 Oct 2023 15:37: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=g4lE=FR=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qnhTA-0007yl-7w
 for xen-devel@lists.xenproject.org; Tue, 03 Oct 2023 15:37:56 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id d16cd27c-6202-11ee-9b0d-b553b5be7939;
 Tue, 03 Oct 2023 17:37:53 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id 976B84EE0737;
 Tue,  3 Oct 2023 17:37: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: d16cd27c-6202-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,
	Henry.Wang@arm.com,
	Nicola Vetrini <nicola.vetrini@bugseng.com>,
	Simone Ballarin <simone.ballarin@bugseng.com>,
	Doug Goldstein <cardoe@cardoe.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Julien Grall <julien@xen.org>,
	Wei Liu <wl@xen.org>
Subject: [XEN PATCH] xen: Add SAF deviations for MISRA C:2012 Rule 7.1
Date: Tue,  3 Oct 2023 17:37:30 +0200
Message-Id: <338d8e574db943a86c7605e4c6d9a299d45f067d.1696347345.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

As specified in rules.rst, these constants can be used
in the code.
Their deviation is now accomplished by using a SAF comment,
rather than an ECLAIR configuration.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
---
 automation/eclair_analysis/ECLAIR/deviations.ecl | 6 ------
 docs/misra/safe.json                             | 8 ++++++++
 xen/arch/x86/hvm/svm/emulate.c                   | 6 +++---
 xen/arch/x86/hvm/svm/svm.h                       | 9 +++++++++
 xen/common/inflate.c                             | 4 ++--
 5 files changed, 22 insertions(+), 11 deletions(-)

diff --git a/automation/eclair_analysis/ECLAIR/deviations.ecl b/automation/eclair_analysis/ECLAIR/deviations.ecl
index d8170106b449..fbb806a75d73 100644
--- a/automation/eclair_analysis/ECLAIR/deviations.ecl
+++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
@@ -132,12 +132,6 @@ safe."
 # Series 7.
 #
 
--doc_begin="Usage of the following constants is safe, since they are given as-is
-in the inflate algorithm specification and there is therefore no risk of them
-being interpreted as decimal constants."
--config=MC3R1.R7.1,literals={safe, "^0(007|37|070|213|236|300|321|330|331|332|333|334|335|337|371)$"}
--doc_end
-
 -doc_begin="Violations in files that maintainers have asked to not modify in the
 context of R7.2."
 -file_tag+={adopted_r7_2,"^xen/include/xen/libfdt/.*$"}
diff --git a/docs/misra/safe.json b/docs/misra/safe.json
index 39c5c056c7d4..7ea47344ffcc 100644
--- a/docs/misra/safe.json
+++ b/docs/misra/safe.json
@@ -20,6 +20,14 @@
         },
         {
             "id": "SAF-2-safe",
+            "analyser": {
+                "eclair": "MC3R1.R7.1"
+            },
+            "name": "Rule 7.1: constants defined in specifications, manuals, and algorithm descriptions",
+            "text": "It is safe to use certain octal constants the way they are defined in specifications, manuals, and algorithm descriptions."
+        },
+        {
+            "id": "SAF-3-safe",
             "analyser": {},
             "name": "Sentinel",
             "text": "Next ID to be used"
diff --git a/xen/arch/x86/hvm/svm/emulate.c b/xen/arch/x86/hvm/svm/emulate.c
index aa2c61c433b3..c5e3341c6316 100644
--- a/xen/arch/x86/hvm/svm/emulate.c
+++ b/xen/arch/x86/hvm/svm/emulate.c
@@ -90,9 +90,9 @@ unsigned int svm_get_insn_len(struct vcpu *v, unsigned int instr_enc)
         if ( !instr_modrm )
             return emul_len;
 
-        if ( modrm_mod       == MASK_EXTR(instr_modrm, 0300) &&
-             (modrm_reg & 7) == MASK_EXTR(instr_modrm, 0070) &&
-             (modrm_rm  & 7) == MASK_EXTR(instr_modrm, 0007) )
+        if ( modrm_mod       == MASK_EXTR(instr_modrm, 0300) && /* SAF-2-safe */
+             (modrm_reg & 7) == MASK_EXTR(instr_modrm, 0070) && /* SAF-2-safe */
+             (modrm_rm  & 7) == MASK_EXTR(instr_modrm, 0007) )  /* SAF-2-safe */
             return emul_len;
     }
 
diff --git a/xen/arch/x86/hvm/svm/svm.h b/xen/arch/x86/hvm/svm/svm.h
index d2a781fc3fb5..d0623b72ccfa 100644
--- a/xen/arch/x86/hvm/svm/svm.h
+++ b/xen/arch/x86/hvm/svm/svm.h
@@ -57,14 +57,23 @@ static inline void svm_invlpga(unsigned long linear, uint32_t asid)
 #define INSTR_INT3        INSTR_ENC(X86EMUL_OPC(   0, 0xcc), 0)
 #define INSTR_ICEBP       INSTR_ENC(X86EMUL_OPC(   0, 0xf1), 0)
 #define INSTR_HLT         INSTR_ENC(X86EMUL_OPC(   0, 0xf4), 0)
+/* SAF-2-safe */
 #define INSTR_XSETBV      INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0321)
+/* SAF-2-safe */
 #define INSTR_VMRUN       INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0330)
+/* SAF-2-safe */
 #define INSTR_VMCALL      INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0331)
+/* SAF-2-safe */
 #define INSTR_VMLOAD      INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0332)
+/* SAF-2-safe */
 #define INSTR_VMSAVE      INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0333)
+/* SAF-2-safe */
 #define INSTR_STGI        INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0334)
+/* SAF-2-safe */
 #define INSTR_CLGI        INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0335)
+/* SAF-2-safe */
 #define INSTR_INVLPGA     INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0337)
+/* SAF-2-safe */
 #define INSTR_RDTSCP      INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0371)
 #define INSTR_INVD        INSTR_ENC(X86EMUL_OPC(0x0f, 0x08), 0)
 #define INSTR_WBINVD      INSTR_ENC(X86EMUL_OPC(0x0f, 0x09), 0)
diff --git a/xen/common/inflate.c b/xen/common/inflate.c
index 8fa4b96d12a3..be6a9115187e 100644
--- a/xen/common/inflate.c
+++ b/xen/common/inflate.c
@@ -1201,8 +1201,8 @@ static int __init gunzip(void)
     magic[1] = NEXTBYTE();
     method   = NEXTBYTE();
 
-    if (magic[0] != 037 ||
-        ((magic[1] != 0213) && (magic[1] != 0236))) {
+    /* SAF-2-safe */
+    if (magic[0] != 037 || ((magic[1] != 0213) && (magic[1] != 0236))) {
         error("bad gzip magic numbers");
         return -1;
     }
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Tue Oct 03 16:07:24 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 03 Oct 2023 16:07:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612287.952145 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnhvY-0006Oi-Dn; Tue, 03 Oct 2023 16:07:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612287.952145; Tue, 03 Oct 2023 16: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 1qnhvY-0006Ob-97; Tue, 03 Oct 2023 16:07:16 +0000
Received: by outflank-mailman (input) for mailman id 612287;
 Tue, 03 Oct 2023 16:07: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 1qnhvW-0006OR-V7; Tue, 03 Oct 2023 16:07: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 1qnhvW-00058e-Kt; Tue, 03 Oct 2023 16:07: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 1qnhvW-0004RF-EG; Tue, 03 Oct 2023 16:07:14 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qnhvW-0008NP-Dc; Tue, 03 Oct 2023 16:07: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=TQdos7Tmmarx8cqn1BW1cqkvN64EoC5TO/s2yOOQJ5s=; b=ZuGKDeLVJPtXCrusIM+q2/tfY5
	lgmk24sn3CSmf2sbuf6WaV6HIw4G0aAIaOTwfv9++UytYVsLRb3qwUxBjujg/qajXHcw6nUFHv1rt
	8t7Xwg4nq0LhWGSnryfoW90teBkA7gaqfruRfsIGm9S6rN45y3qczy9l+iFojzushBOk=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183250-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 183250: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=1497c4b074946f3ad9d46ddbb6d655c951e23ae8
X-Osstest-Versions-That:
    ovmf=1a66bd51ca21f341281d8e3157d3d3f4a94fd26c
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 03 Oct 2023 16:07:14 +0000

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

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 1497c4b074946f3ad9d46ddbb6d655c951e23ae8
baseline version:
 ovmf                 1a66bd51ca21f341281d8e3157d3d3f4a94fd26c

Last test of basis   183239  2023-10-02 16:12:16 Z    0 days
Testing same since   183250  2023-10-03 12:10:44 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Leif Lindholm <quic_llindhol@quicinc.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
   1a66bd51ca..1497c4b074  1497c4b074946f3ad9d46ddbb6d655c951e23ae8 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Tue Oct 03 16:17:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 03 Oct 2023 16:17:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612294.952154 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qni5l-0000ON-Cf; Tue, 03 Oct 2023 16:17:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612294.952154; Tue, 03 Oct 2023 16: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 1qni5l-0000OG-92; Tue, 03 Oct 2023 16:17:49 +0000
Received: by outflank-mailman (input) for mailman id 612294;
 Tue, 03 Oct 2023 16:17: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=56qu=FR=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qni5k-0000Nr-C3
 for xen-devel@lists.xenproject.org; Tue, 03 Oct 2023 16:17:48 +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 639d987c-6208-11ee-98d2-6d05b1d4d9a1;
 Tue, 03 Oct 2023 18:17:47 +0200 (CEST)
Received: by mail-wm1-x32b.google.com with SMTP id
 5b1f17b1804b1-406619b53caso10598045e9.1
 for <xen-devel@lists.xenproject.org>; Tue, 03 Oct 2023 09:17: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
 m8-20020a7bce08000000b004064741f855sm1606996wmc.47.2023.10.03.09.17.45
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 03 Oct 2023 09:17: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: 639d987c-6208-11ee-98d2-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1696349866; x=1696954666; darn=lists.xenproject.org;
        h=content-transfer-encoding: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=VGgNphxlo6kbHPYTl7anzbPStjCeoISbxZUvDrpuBbw=;
        b=v2nwEQ/x4j6j0Ay+rL1xQaZ31JFGwjm+BdN4LzvB0D6ImMhCaW+3hUrzqsT7qm8vY1
         VunNLVv3/QEPZokFSH9qWz1TEynvKndh4EmHvWdfbxMrb+L7VBRPiCkKhFLPXb6Xskgc
         SMAdOE/nUw4w7M7yZe7DbZwvlRMDkZj+oTODQ=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1696349866; x=1696954666;
        h=content-transfer-encoding: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=VGgNphxlo6kbHPYTl7anzbPStjCeoISbxZUvDrpuBbw=;
        b=FttzXHyJsG/tSoar+ot3U+19JIrF4eUcfbrTWHBDbFCbGhYZsYhLejYjOH92C349Qh
         TDrHH2wynFKCttNG+90Ib0VvNbeQWcZiCfi+DdYrOgEkybyMoJwJ0lDd7U7W6wh+g3Ju
         ZL4ycLxoBakbkE/zsJ8gR25re3B/EqaJgxACnDm2VbnmbWBPB3nS5Kc0is3PIDSyVn5M
         /uhNAWCliMUW6pAqf9szCV4MQD38CeJmDtnMKreSuMgCF3XFa9iOqvpPGT7ZqOBd1qUL
         TDCxXEJBsjVqmeGkNFQRsOGdi4r+0BuAR/dUo1RcCUEqMGn36IWaKOYbFVvM6/X1SULW
         TAGA==
X-Gm-Message-State: AOJu0YyHg0ZTG7AWKp97MNDHZOcc62pXa+L7h6F3ifNDrkmIXOntCcRn
	ygsSNq/pul3pQr5OkY/IQ0R70Q==
X-Google-Smtp-Source: AGHT+IGPolOEC8KESYdYJHrsi5Hv9xtv7KDpXY2OXddF9choVe0BTJmYC4hIKxCGlA4ty3oFb9RIjw==
X-Received: by 2002:a1c:4b11:0:b0:402:cf9f:c02d with SMTP id y17-20020a1c4b11000000b00402cf9fc02dmr12374943wma.8.1696349866028;
        Tue, 03 Oct 2023 09:17:46 -0700 (PDT)
Message-ID: <1f271e93-7409-4a8d-9841-368722d6aa43@citrix.com>
Date: Tue, 3 Oct 2023 17:17:33 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
From: andrew.cooper3@citrix.com
Subject: Re: [XEN PATCH] xen: Add SAF deviations for MISRA C:2012 Rule 7.1
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, Henry.Wang@arm.com,
 Simone Ballarin <simone.ballarin@bugseng.com>,
 Doug Goldstein <cardoe@cardoe.com>, George Dunlap
 <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Wei Liu <wl@xen.org>
References: <338d8e574db943a86c7605e4c6d9a299d45f067d.1696347345.git.nicola.vetrini@bugseng.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: <338d8e574db943a86c7605e4c6d9a299d45f067d.1696347345.git.nicola.vetrini@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 03/10/2023 4:37 pm, Nicola Vetrini wrote:
> As specified in rules.rst, these constants can be used
> in the code.
> Their deviation is now accomplished by using a SAF comment,
> rather than an ECLAIR configuration.
>
> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
> ---
>  automation/eclair_analysis/ECLAIR/deviations.ecl | 6 ------
>  docs/misra/safe.json                             | 8 ++++++++
>  xen/arch/x86/hvm/svm/emulate.c                   | 6 +++---
>  xen/arch/x86/hvm/svm/svm.h                       | 9 +++++++++
>  xen/common/inflate.c                             | 4 ++--
>  5 files changed, 22 insertions(+), 11 deletions(-)
>
> diff --git a/automation/eclair_analysis/ECLAIR/deviations.ecl b/automation/eclair_analysis/ECLAIR/deviations.ecl
> index d8170106b449..fbb806a75d73 100644
> --- a/automation/eclair_analysis/ECLAIR/deviations.ecl
> +++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
> @@ -132,12 +132,6 @@ safe."
>  # Series 7.
>  #
>  
> --doc_begin="Usage of the following constants is safe, since they are given as-is
> -in the inflate algorithm specification and there is therefore no risk of them
> -being interpreted as decimal constants."
> --config=MC3R1.R7.1,literals={safe, "^0(007|37|070|213|236|300|321|330|331|332|333|334|335|337|371)$"}
> --doc_end
> -
>  -doc_begin="Violations in files that maintainers have asked to not modify in the
>  context of R7.2."
>  -file_tag+={adopted_r7_2,"^xen/include/xen/libfdt/.*$"}
> diff --git a/docs/misra/safe.json b/docs/misra/safe.json
> index 39c5c056c7d4..7ea47344ffcc 100644
> --- a/docs/misra/safe.json
> +++ b/docs/misra/safe.json
> @@ -20,6 +20,14 @@
>          },
>          {
>              "id": "SAF-2-safe",
> +            "analyser": {
> +                "eclair": "MC3R1.R7.1"
> +            },
> +            "name": "Rule 7.1: constants defined in specifications, manuals, and algorithm descriptions",
> +            "text": "It is safe to use certain octal constants the way they are defined in specifications, manuals, and algorithm descriptions."
> +        },
> +        {
> +            "id": "SAF-3-safe",
>              "analyser": {},
>              "name": "Sentinel",
>              "text": "Next ID to be used"
> diff --git a/xen/arch/x86/hvm/svm/emulate.c b/xen/arch/x86/hvm/svm/emulate.c
> index aa2c61c433b3..c5e3341c6316 100644
> --- a/xen/arch/x86/hvm/svm/emulate.c
> +++ b/xen/arch/x86/hvm/svm/emulate.c
> @@ -90,9 +90,9 @@ unsigned int svm_get_insn_len(struct vcpu *v, unsigned int instr_enc)
>          if ( !instr_modrm )
>              return emul_len;
>  
> -        if ( modrm_mod       == MASK_EXTR(instr_modrm, 0300) &&
> -             (modrm_reg & 7) == MASK_EXTR(instr_modrm, 0070) &&
> -             (modrm_rm  & 7) == MASK_EXTR(instr_modrm, 0007) )
> +        if ( modrm_mod       == MASK_EXTR(instr_modrm, 0300) && /* SAF-2-safe */
> +             (modrm_reg & 7) == MASK_EXTR(instr_modrm, 0070) && /* SAF-2-safe */
> +             (modrm_rm  & 7) == MASK_EXTR(instr_modrm, 0007) )  /* SAF-2-safe */
>              return emul_len;
>      }

This is line noise, and later examples are even worse.

What does SAF mean?  It's presumably not the Scalable Agile Framework.

It is meaningless to anyone reading the code who doesn't know it's a
magic identifier to suppress violations.

Looking in scripts/xen_analysis, it appears to be a labelling scheme
we've in invented for the purpose of cross-referencing, in which case it
needs to be changed to something more obviously safety/misra/etc related
to make the code clearer to follow.

~Andrew


From xen-devel-bounces@lists.xenproject.org Tue Oct 03 17:15:36 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 03 Oct 2023 17:15:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612300.952163 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnizO-00040e-IA; Tue, 03 Oct 2023 17:15:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612300.952163; Tue, 03 Oct 2023 17: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 1qnizO-00040X-FD; Tue, 03 Oct 2023 17:15:18 +0000
Received: by outflank-mailman (input) for mailman id 612300;
 Tue, 03 Oct 2023 17: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=hNjg=FR=arm.com=Luca.Fancellu@srs-se1.protection.inumbo.net>)
 id 1qnizN-00040P-Ow
 for xen-devel@lists.xenproject.org; Tue, 03 Oct 2023 17:15:17 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 (mail-am6eur05on20602.outbound.protection.outlook.com
 [2a01:111:f400:7e1b::602])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 6a5df698-6210-11ee-98d2-6d05b1d4d9a1;
 Tue, 03 Oct 2023 19:15:14 +0200 (CEST)
Received: from AS9PR04CA0166.eurprd04.prod.outlook.com (2603:10a6:20b:530::27)
 by PAVPR08MB9650.eurprd08.prod.outlook.com (2603:10a6:102:31a::21)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.25; Tue, 3 Oct
 2023 17:15:10 +0000
Received: from AM7EUR03FT023.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:20b:530:cafe::f) by AS9PR04CA0166.outlook.office365.com
 (2603:10a6:20b:530::27) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.33 via Frontend
 Transport; Tue, 3 Oct 2023 17:15:10 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM7EUR03FT023.mail.protection.outlook.com (100.127.140.73) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6863.24 via Frontend Transport; Tue, 3 Oct 2023 17:15:09 +0000
Received: ("Tessian outbound 9aeaca65ec26:v211");
 Tue, 03 Oct 2023 17:15:09 +0000
Received: from 9c77728c0184.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 CE99DE7B-C24E-4F4D-AC9D-33FD4AF58AF6.1; 
 Tue, 03 Oct 2023 17:14:30 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 9c77728c0184.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Tue, 03 Oct 2023 17:14:30 +0000
Received: from AM6PR08MB3749.eurprd08.prod.outlook.com (2603:10a6:20b:8f::22)
 by AS4PR08MB7654.eurprd08.prod.outlook.com (2603:10a6:20b:4f0::19)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.26; Tue, 3 Oct
 2023 17:14: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.6838.024; Tue, 3 Oct 2023
 17:14: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: 6a5df698-6210-11ee-98d2-6d05b1d4d9a1
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=mxUv3krlITL9EK8xxRsTN+CqaSO146fvJEvl0o/jJ9c=;
 b=FukzL57ujueXOd3RmgIlpro/dA+FCRdRpgUf5dwHmX4KPi9/hqqbguQ7q2fPRcI6s9gG3Vr/m0anmSNiiwPHVofCUQRq8nhdb2Vjo7tYESzg7A64E7xLwmkAJTgQudKhP/mQvkpPwxlW6ByBprr0Hg652X51uR6rjqe1U7ZWXHI=
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: b265c519d0c537ae
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=d/3oJy36jHBkeVqr9k2mwBaXnNowtF5jpLC+Pz9gQKF2WTI0TuAgsA2VmHctUBtAygzf/uSPJpw4szQyMrPrKJmcKWBS6bL+QM+1cQ+QDco9cWULsCezwteDDQw0KEBl5vFT7PV5ywR4yDACZ7iye14TdsjYbPWhP7K9g1fW56G/hosnWdZBddSDax6dBXuDO/gon4fjHfCIdQdutEnQEcPOon2AJW1UQdRCW/CDwtCqEOHZAVPEl1gEazhcTwYCFMgmXFqKSQxMNXJGn/wqaYtL+ODSixhjfoRbpwuu9jY/Ja4HByUqbZu3Su7dDsRhn8DfXa4CvbKjFqEy0pEKSw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=mxUv3krlITL9EK8xxRsTN+CqaSO146fvJEvl0o/jJ9c=;
 b=Pmkr8mfRYEk43L8YE6Snc9m9qAkAOvTgQzRE6d2xq4G+opGllatp3jfwEqODbzc939k/E58JgW6/8GGyUfPXABhQUXgZ6CMRkNZ4RvWsQWbZp++AkEuAxpmuwlH6DlzWPYo9ucfJmk9UQUflV4KjgKmvlZywIsKJcLCZ3DNs7tE22dwoOjqHPOzyVXVHbAoTJRCyZE95K0cEVpT0dW7bOAdzTx0iK28VUMYWIe2ukWQCLsHCj8FgAgH0qFMAf4TaGrg5FIx18y1Zvjwga+B9jsC6J6AqospvzxBOiUC1Kw39GtKaVP9lrzr0XdBc/NAQqya4fmu9XOgS8g8R9CDlOw==
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=mxUv3krlITL9EK8xxRsTN+CqaSO146fvJEvl0o/jJ9c=;
 b=FukzL57ujueXOd3RmgIlpro/dA+FCRdRpgUf5dwHmX4KPi9/hqqbguQ7q2fPRcI6s9gG3Vr/m0anmSNiiwPHVofCUQRq8nhdb2Vjo7tYESzg7A64E7xLwmkAJTgQudKhP/mQvkpPwxlW6ByBprr0Hg652X51uR6rjqe1U7ZWXHI=
From: Luca Fancellu <Luca.Fancellu@arm.com>
To: Andrew Cooper <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@amd.com" <michal.orzel@amd.com>,
	"xenia.ragiadakou@amd.com" <xenia.ragiadakou@amd.com>,
	"ayan.kumar.halder@amd.com" <ayan.kumar.halder@amd.com>,
	"consulting@bugseng.com" <consulting@bugseng.com>, "jbeulich@suse.com"
	<jbeulich@suse.com>, "roger.pau@citrix.com" <roger.pau@citrix.com>, Henry
 Wang <Henry.Wang@arm.com>, Simone Ballarin <simone.ballarin@bugseng.com>,
	Doug Goldstein <cardoe@cardoe.com>, George Dunlap <george.dunlap@citrix.com>,
	Julien Grall <julien@xen.org>, Wei Liu <wl@xen.org>
Subject: Re: [XEN PATCH] xen: Add SAF deviations for MISRA C:2012 Rule 7.1
Thread-Topic: [XEN PATCH] xen: Add SAF deviations for MISRA C:2012 Rule 7.1
Thread-Index: AQHZ9g+v7vFsnMRst0ybMa+ffKOLU7A4PhuAgAAP1gA=
Date: Tue, 3 Oct 2023 17:14:25 +0000
Message-ID: <58213BE0-ADC4-47A0-B169-2E2E3B76D9C3@arm.com>
References:
 <338d8e574db943a86c7605e4c6d9a299d45f067d.1696347345.git.nicola.vetrini@bugseng.com>
 <1f271e93-7409-4a8d-9841-368722d6aa43@citrix.com>
In-Reply-To: <1f271e93-7409-4a8d-9841-368722d6aa43@citrix.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_|AS4PR08MB7654:EE_|AM7EUR03FT023:EE_|PAVPR08MB9650:EE_
X-MS-Office365-Filtering-Correlation-Id: 503af4ab-a751-4f81-6411-08dbc4344c48
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:
 0IPKqMFRA0WY5p8HkSsbQUx9xhNEEQ34HDllpDJSUQhe3FRbyG+rvvYJeOV35zvJEUARX8wDERHXX1Z+sXbasi1A3iE3e9FFJNkIF1iEHlwUnn4x8iZRQoN3wPJfqFRDkeLX5XpOTksK+zl1w5VhgxBrS9Z3ITys3+QqmnlZ94Th/Km23qXmonajv2Am2DMdVQiAZTtaZSiqwCK9vBsWRFx33wf4nfcDuGws+Ws6wdKWpytpLDNFLBrrV4QRytBNqnup0PsSHlFyRBoZgS95+MehAdwnQSudAF1PHSZDCyIL0+1/rZV/QXOZtpyQRmHW3Bdd71rSLyg5m9QImZSS6U4ejWFAynSk2jcH7pCpFNVme/4VY9eY2no3KJ66DYl/TtZI86ONYdEDtqbaCHGVO44Mr3QVTzm5ezVDlIqFTH8zRi3jQJ6lxw0/qruSwv5H1oj4LbCBghSTS4laIYnd4WnqXuTvzh8DmeRj3ps4zUS1KKgE5TiUd9RLezQ2kR3/ISChrZwjXIA1YfIu70kUhpBIOGAl5PKBLKC5jKfYXf+Pad/vihzmoQmJFy7o3BmXvbZR0yZFm4CSV2Le3eUcQDHduWIi+a696QPSXP6VO41QwCr8WypqTX4OpxaPzJpQbtwErXsiOioDoLR9/f9IaA==
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)(346002)(366004)(376002)(396003)(230922051799003)(186009)(1800799009)(451199024)(64100799003)(6486002)(6506007)(53546011)(6666004)(478600001)(76116006)(83380400001)(26005)(86362001)(6512007)(2616005)(66446008)(7416002)(33656002)(316002)(91956017)(4326008)(66946007)(8936002)(54906003)(5660300002)(64756008)(6916009)(8676002)(41300700001)(66476007)(66556008)(36756003)(122000001)(38070700005)(2906002)(38100700002)(71200400001)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="us-ascii"
Content-ID: <0B0CAC9342ABD248A5D0FCF40B3B0C41@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS4PR08MB7654
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:
 AM7EUR03FT023.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	061a234f-9b58-4aee-fa1f-08dbc43431a0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	rFXjEt+ZcVWAovziAex5/SqnGrDENtLz5G14UpsOY4rssJ3qdcEFCEVZ/eQsX4UMLzuhCiqumZHRiNVU8rysclewr01aYx1FfmSk1oEx88IGPZ3znC8WBiceb0uZB7KaR2uMC4h6zHzfP86aGlTzhrO0uY2oiqfTdnSNNBsPrMpTTWw5twMitYkniw61tJXdQRqH7DVhBrWoxKxaGc1sN5bxwDbZLpM4f1tzKikR/5GZPufHsaGgOv/ECONjt31/kpDb6DyM/3NDjECXYfmVAL5UYjeaIBWEboEmt31OR7N+3ZYUwgdgeEvwtA9e9vqsM/k8/6S4wU6mIxUpuyXLoT/hMbNaGthqQiwQb69/DMGurAI9jotsaYG+vd8wOnJNS11KHg2ybHtAKYvVHcPbzgSrT9qKD5KO4lbTSBlxbW7vXAFRrYP7OZwMejCCfHu8LJxpB1/wLkKWvLI7XdjNN6srRr8koPeMlZ1K4F2xS+0b62glaoqom360SP2ZAkGsoNju9uvC0XUw7LdcupKyUexcm4YF8FFJxwqaRmSQFAmyvrP0LzvytEzrIBVy9t3Xma/DXnsrVP1FUzp2p7z1dhEkC7CJc5NuNU68c8QXGmqOaErYE9ZqtZJVvpQkfF6DWvB6TSgI5lqL7/7aghBHghe2BHEcSfqweeAXlR0dFVMf73IUshFX/RPtoRoEzWpZg3QPPUmsN0N5f+SvaAAGTJNBn4hq3C8WAkPr5tFl7lg7+MZbaD0tyq9JwCneAdJw
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)(346002)(136003)(376002)(230922051799003)(1800799009)(451199024)(186009)(64100799003)(82310400011)(46966006)(36840700001)(40470700004)(53546011)(40460700003)(2906002)(6862004)(316002)(4326008)(41300700001)(8936002)(8676002)(70586007)(5660300002)(36756003)(40480700001)(70206006)(478600001)(6512007)(6666004)(82740400003)(86362001)(356005)(6506007)(6486002)(33656002)(2616005)(54906003)(81166007)(26005)(83380400001)(47076005)(336012)(36860700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 03 Oct 2023 17:15:09.9588
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 503af4ab-a751-4f81-6411-08dbc4344c48
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:
	AM7EUR03FT023.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAVPR08MB9650



> On 3 Oct 2023, at 17:17, andrew.cooper3@citrix.com wrote:
>=20
> On 03/10/2023 4:37 pm, Nicola Vetrini wrote:
>> As specified in rules.rst, these constants can be used
>> in the code.
>> Their deviation is now accomplished by using a SAF comment,
>> rather than an ECLAIR configuration.
>>=20
>> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
>> ---
>> automation/eclair_analysis/ECLAIR/deviations.ecl | 6 ------
>> docs/misra/safe.json                             | 8 ++++++++
>> xen/arch/x86/hvm/svm/emulate.c                   | 6 +++---
>> xen/arch/x86/hvm/svm/svm.h                       | 9 +++++++++
>> xen/common/inflate.c                             | 4 ++--
>> 5 files changed, 22 insertions(+), 11 deletions(-)
>>=20
>> diff --git a/automation/eclair_analysis/ECLAIR/deviations.ecl b/automati=
on/eclair_analysis/ECLAIR/deviations.ecl
>> index d8170106b449..fbb806a75d73 100644
>> --- a/automation/eclair_analysis/ECLAIR/deviations.ecl
>> +++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
>> @@ -132,12 +132,6 @@ safe."
>> # Series 7.
>> #
>>=20
>> --doc_begin=3D"Usage of the following constants is safe, since they are =
given as-is
>> -in the inflate algorithm specification and there is therefore no risk o=
f them
>> -being interpreted as decimal constants."
>> --config=3DMC3R1.R7.1,literals=3D{safe, "^0(007|37|070|213|236|300|321|3=
30|331|332|333|334|335|337|371)$"}
>> --doc_end
>> -
>> -doc_begin=3D"Violations in files that maintainers have asked to not mod=
ify in the
>> context of R7.2."
>> -file_tag+=3D{adopted_r7_2,"^xen/include/xen/libfdt/.*$"}
>> diff --git a/docs/misra/safe.json b/docs/misra/safe.json
>> index 39c5c056c7d4..7ea47344ffcc 100644
>> --- a/docs/misra/safe.json
>> +++ b/docs/misra/safe.json
>> @@ -20,6 +20,14 @@
>>         },
>>         {
>>             "id": "SAF-2-safe",
>> +            "analyser": {
>> +                "eclair": "MC3R1.R7.1"
>> +            },
>> +            "name": "Rule 7.1: constants defined in specifications, man=
uals, and algorithm descriptions",
>> +            "text": "It is safe to use certain octal constants the way =
they are defined in specifications, manuals, and algorithm descriptions."
>> +        },
>> +        {
>> +            "id": "SAF-3-safe",
>>             "analyser": {},
>>             "name": "Sentinel",
>>             "text": "Next ID to be used"
>> diff --git a/xen/arch/x86/hvm/svm/emulate.c b/xen/arch/x86/hvm/svm/emula=
te.c
>> index aa2c61c433b3..c5e3341c6316 100644
>> --- a/xen/arch/x86/hvm/svm/emulate.c
>> +++ b/xen/arch/x86/hvm/svm/emulate.c
>> @@ -90,9 +90,9 @@ unsigned int svm_get_insn_len(struct vcpu *v, unsigned=
 int instr_enc)
>>         if ( !instr_modrm )
>>             return emul_len;
>>=20
>> -        if ( modrm_mod       =3D=3D MASK_EXTR(instr_modrm, 0300) &&
>> -             (modrm_reg & 7) =3D=3D MASK_EXTR(instr_modrm, 0070) &&
>> -             (modrm_rm  & 7) =3D=3D MASK_EXTR(instr_modrm, 0007) )
>> +        if ( modrm_mod       =3D=3D MASK_EXTR(instr_modrm, 0300) && /* =
SAF-2-safe */
>> +             (modrm_reg & 7) =3D=3D MASK_EXTR(instr_modrm, 0070) && /* =
SAF-2-safe */
>> +             (modrm_rm  & 7) =3D=3D MASK_EXTR(instr_modrm, 0007) )  /* =
SAF-2-safe */
>>             return emul_len;
>>     }
>=20

Hi Andrew,

> This is line noise, and later examples are even worse.
>=20
> What does SAF mean?  It's presumably not the Scalable Agile Framework.

Please have a look on docs/misra/documenting-violations.rst, you will find =
all the
info about it.

>=20
> It is meaningless to anyone reading the code who doesn't know it's a
> magic identifier to suppress violations.
>=20
> Looking in scripts/xen_analysis, it appears to be a labelling scheme
> we've in invented for the purpose of cross-referencing, in which case it
> needs to be changed to something more obviously safety/misra/etc related
> to make the code clearer to follow.
>=20
> ~Andrew
>=20



From xen-devel-bounces@lists.xenproject.org Tue Oct 03 17:28:03 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 03 Oct 2023 17:28:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612306.952174 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnjBa-0006hd-Pj; Tue, 03 Oct 2023 17:27:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612306.952174; Tue, 03 Oct 2023 17: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 1qnjBa-0006hW-Mq; Tue, 03 Oct 2023 17:27:54 +0000
Received: by outflank-mailman (input) for mailman id 612306;
 Tue, 03 Oct 2023 17:27: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=56qu=FR=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qnjBZ-0006hO-ER
 for xen-devel@lists.xenproject.org; Tue, 03 Oct 2023 17:27:53 +0000
Received: from mail-wm1-x335.google.com (mail-wm1-x335.google.com
 [2a00:1450:4864:20::335])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 2e5a435f-6212-11ee-98d2-6d05b1d4d9a1;
 Tue, 03 Oct 2023 19:27:52 +0200 (CEST)
Received: by mail-wm1-x335.google.com with SMTP id
 5b1f17b1804b1-406618d0991so11844675e9.2
 for <xen-devel@lists.xenproject.org>; Tue, 03 Oct 2023 10:27:52 -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
 k2-20020a05600c1c8200b004065d72ab19sm9970148wms.0.2023.10.03.10.27.50
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 03 Oct 2023 10:27: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: 2e5a435f-6212-11ee-98d2-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1696354072; x=1696958872; darn=lists.xenproject.org;
        h=content-transfer-encoding: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=v6zZ2zpNMwOqk+ufjI+WYn02mreJbDKvpwV3YkxrRHc=;
        b=uxooc4Zn6pew5QJMYmde1gU8N/wbqjFVUPHdnJtGWgcwkNLC5W5/o4LD63j+OBxCGv
         PaGHHB9bjehRdQ8lU2t9TFR9NnTQ+NJ7MF3ENO3+mzkqAqoLEXBmqOzyYR+L0q4x9/G0
         RhXpcx82jiuvQfnaXYhjspYC46twkEZxoLpKk=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1696354072; x=1696958872;
        h=content-transfer-encoding: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=v6zZ2zpNMwOqk+ufjI+WYn02mreJbDKvpwV3YkxrRHc=;
        b=a32ddcKO7ZT+aNmy8tQzPTDEOMmEX2tlqnWlKS6gFJEMzXwnaFZr+QWpTUyzSx0XaO
         nvczdAyjIg+QwDiqKRQ7ReEJmZn5d7dXYTutCphdnX36e/Kky+6w42JzwhZEvDGWQ46M
         CEpxiR290+LsX/0nFPL4Qro+hB+tc8xwfKKJJVtdlgrioG88axcIT59/+wDKI5JnmLBE
         7Bdz+ipjjHAH0zX/LwEMKidYFA/L8Tbxe3VxhbVmye4/G/SZzNtUxsoN7VbmOFrC0k5p
         Fdc8PrHCoM7Giga6NA/9FYhRc0G0WBEuh3m4WVAjOAiszBJoSJ02cyKQbULa10JeAEob
         c5KQ==
X-Gm-Message-State: AOJu0YxuDGYH4P3gYtXXbK6bX0rST7trIbbz0LljG2fb+hM8vbt8iwvz
	RKERXRUTThnJNrv2IP+0PE4tew==
X-Google-Smtp-Source: AGHT+IExzmdp7lkYnSvmsqF7PBEHxvCViwHcSTPxsuS7/HigQ+z4rb8pJqQAkVya0+doD7w2IYCiTA==
X-Received: by 2002:a7b:c40a:0:b0:401:23fc:1f92 with SMTP id k10-20020a7bc40a000000b0040123fc1f92mr116429wmi.25.1696354071600;
        Tue, 03 Oct 2023 10:27:51 -0700 (PDT)
Message-ID: <2ff3ae18-0064-42ac-88fd-a46c4332a5dc@citrix.com>
Date: Tue, 3 Oct 2023 18:27:50 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [XEN PATCH] xen: Add SAF deviations for MISRA C:2012 Rule 7.1
Content-Language: en-GB
To: Luca Fancellu <Luca.Fancellu@arm.com>
Cc: Nicola Vetrini <nicola.vetrini@bugseng.com>,
 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@amd.com" <ayan.kumar.halder@amd.com>,
 "consulting@bugseng.com" <consulting@bugseng.com>,
 "jbeulich@suse.com" <jbeulich@suse.com>,
 "roger.pau@citrix.com" <roger.pau@citrix.com>,
 Henry Wang <Henry.Wang@arm.com>,
 Simone Ballarin <simone.ballarin@bugseng.com>,
 Doug Goldstein <cardoe@cardoe.com>, George Dunlap
 <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Wei Liu <wl@xen.org>
References: <338d8e574db943a86c7605e4c6d9a299d45f067d.1696347345.git.nicola.vetrini@bugseng.com>
 <1f271e93-7409-4a8d-9841-368722d6aa43@citrix.com>
 <58213BE0-ADC4-47A0-B169-2E2E3B76D9C3@arm.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: <58213BE0-ADC4-47A0-B169-2E2E3B76D9C3@arm.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 03/10/2023 6:14 pm, Luca Fancellu wrote:
>
>> On 3 Oct 2023, at 17:17, andrew.cooper3@citrix.com wrote:
>>
>> On 03/10/2023 4:37 pm, Nicola Vetrini wrote:
>>> As specified in rules.rst, these constants can be used
>>> in the code.
>>> Their deviation is now accomplished by using a SAF comment,
>>> rather than an ECLAIR configuration.
>>>
>>> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
>>> ---
>>> automation/eclair_analysis/ECLAIR/deviations.ecl | 6 ------
>>> docs/misra/safe.json                             | 8 ++++++++
>>> xen/arch/x86/hvm/svm/emulate.c                   | 6 +++---
>>> xen/arch/x86/hvm/svm/svm.h                       | 9 +++++++++
>>> xen/common/inflate.c                             | 4 ++--
>>> 5 files changed, 22 insertions(+), 11 deletions(-)
>>>
>>> diff --git a/automation/eclair_analysis/ECLAIR/deviations.ecl b/automation/eclair_analysis/ECLAIR/deviations.ecl
>>> index d8170106b449..fbb806a75d73 100644
>>> --- a/automation/eclair_analysis/ECLAIR/deviations.ecl
>>> +++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
>>> @@ -132,12 +132,6 @@ safe."
>>> # Series 7.
>>> #
>>>
>>> --doc_begin="Usage of the following constants is safe, since they are given as-is
>>> -in the inflate algorithm specification and there is therefore no risk of them
>>> -being interpreted as decimal constants."
>>> --config=MC3R1.R7.1,literals={safe, "^0(007|37|070|213|236|300|321|330|331|332|333|334|335|337|371)$"}
>>> --doc_end
>>> -
>>> -doc_begin="Violations in files that maintainers have asked to not modify in the
>>> context of R7.2."
>>> -file_tag+={adopted_r7_2,"^xen/include/xen/libfdt/.*$"}
>>> diff --git a/docs/misra/safe.json b/docs/misra/safe.json
>>> index 39c5c056c7d4..7ea47344ffcc 100644
>>> --- a/docs/misra/safe.json
>>> +++ b/docs/misra/safe.json
>>> @@ -20,6 +20,14 @@
>>>         },
>>>         {
>>>             "id": "SAF-2-safe",
>>> +            "analyser": {
>>> +                "eclair": "MC3R1.R7.1"
>>> +            },
>>> +            "name": "Rule 7.1: constants defined in specifications, manuals, and algorithm descriptions",
>>> +            "text": "It is safe to use certain octal constants the way they are defined in specifications, manuals, and algorithm descriptions."
>>> +        },
>>> +        {
>>> +            "id": "SAF-3-safe",
>>>             "analyser": {},
>>>             "name": "Sentinel",
>>>             "text": "Next ID to be used"
>>> diff --git a/xen/arch/x86/hvm/svm/emulate.c b/xen/arch/x86/hvm/svm/emulate.c
>>> index aa2c61c433b3..c5e3341c6316 100644
>>> --- a/xen/arch/x86/hvm/svm/emulate.c
>>> +++ b/xen/arch/x86/hvm/svm/emulate.c
>>> @@ -90,9 +90,9 @@ unsigned int svm_get_insn_len(struct vcpu *v, unsigned int instr_enc)
>>>         if ( !instr_modrm )
>>>             return emul_len;
>>>
>>> -        if ( modrm_mod       == MASK_EXTR(instr_modrm, 0300) &&
>>> -             (modrm_reg & 7) == MASK_EXTR(instr_modrm, 0070) &&
>>> -             (modrm_rm  & 7) == MASK_EXTR(instr_modrm, 0007) )
>>> +        if ( modrm_mod       == MASK_EXTR(instr_modrm, 0300) && /* SAF-2-safe */
>>> +             (modrm_reg & 7) == MASK_EXTR(instr_modrm, 0070) && /* SAF-2-safe */
>>> +             (modrm_rm  & 7) == MASK_EXTR(instr_modrm, 0007) )  /* SAF-2-safe */
>>>             return emul_len;
>>>     }
> Hi Andrew,
>
>> This is line noise, and later examples are even worse.
>>
>> What does SAF mean?  It's presumably not the Scalable Agile Framework.
> Please have a look on docs/misra/documenting-violations.rst, you will find all the
> info about it.

Thankyou for proving my point perfectly.

The comment in the source code needs to be *far* clearer than it
currently is.

Even s/SAF/ANALYSIS/ would be an improvement, because it makes the
comment very clear that it's about code analysis.  An unknown initialism
like SAF does not convey enough meaning to be useful.

~Andrew


From xen-devel-bounces@lists.xenproject.org Tue Oct 03 18:22:03 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 03 Oct 2023 18:22:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612311.952183 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnk1l-0001Og-JL; Tue, 03 Oct 2023 18:21:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612311.952183; Tue, 03 Oct 2023 18:21: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 1qnk1l-0001OZ-Gh; Tue, 03 Oct 2023 18:21:49 +0000
Received: by outflank-mailman (input) for mailman id 612311;
 Tue, 03 Oct 2023 18:21: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=BPao=FR=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qnk1k-0001OT-AU
 for xen-devel@lists.xenproject.org; Tue, 03 Oct 2023 18:21: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 b50fce46-6219-11ee-9b0d-b553b5be7939;
 Tue, 03 Oct 2023 20:21: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 0D431B81BC3;
 Tue,  3 Oct 2023 18:21:44 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 64E67C433C8;
 Tue,  3 Oct 2023 18:21: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: b50fce46-6219-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696357303;
	bh=1J7nQ/gIvvrAldmrmlmfxKo2sAUEHuJ+z3hF1KA+kxo=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=dHoqFzV9QZIQU7Y9XtkOx5A3+uhctqtx/jS/19Tz8G5Yp/323TK4KfBPtEeUQXoKa
	 nwe/QsVEJZvlRoLSneMoOq3ef9awDVzQA6M79tSNAaqz0+OOwGQIUaNX+iltskVICH
	 xKsmKg5c8fuAjXWuTJcgGdFEijMZcSXmklTqmpTaYqWQgPqbNSRi7o75GdkMQg+22V
	 OfPWIuHgZaWE+w5PgKujw0DxmlbEIj+T+zqMlCjkmbKsvPSAkz7mpKgdvj4I86YJcA
	 kD8M4B+4TUdMOttWsb4x+iAyF8xyhBkJLPPx2hGMQ9T7f1tecYjpzPbPCstPkp/IEy
	 GLPtTBwwzYZZQ==
Date: Tue, 3 Oct 2023 11:21:39 -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: Luca Fancellu <Luca.Fancellu@arm.com>, 
    Nicola Vetrini <nicola.vetrini@bugseng.com>, 
    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@amd.com" <ayan.kumar.halder@amd.com>, 
    "consulting@bugseng.com" <consulting@bugseng.com>, 
    "jbeulich@suse.com" <jbeulich@suse.com>, 
    "roger.pau@citrix.com" <roger.pau@citrix.com>, 
    Henry Wang <Henry.Wang@arm.com>, 
    Simone Ballarin <simone.ballarin@bugseng.com>, 
    Doug Goldstein <cardoe@cardoe.com>, 
    George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>, 
    Wei Liu <wl@xen.org>
Subject: Re: [XEN PATCH] xen: Add SAF deviations for MISRA C:2012 Rule 7.1
In-Reply-To: <2ff3ae18-0064-42ac-88fd-a46c4332a5dc@citrix.com>
Message-ID: <alpine.DEB.2.22.394.2310031113420.2348112@ubuntu-linux-20-04-desktop>
References: <338d8e574db943a86c7605e4c6d9a299d45f067d.1696347345.git.nicola.vetrini@bugseng.com> <1f271e93-7409-4a8d-9841-368722d6aa43@citrix.com> <58213BE0-ADC4-47A0-B169-2E2E3B76D9C3@arm.com> <2ff3ae18-0064-42ac-88fd-a46c4332a5dc@citrix.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: multipart/mixed; BOUNDARY="8323329-682720270-1696357122=:2348112"
Content-ID: <alpine.DEB.2.22.394.2310031118450.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-682720270-1696357122=:2348112
Content-Type: text/plain; CHARSET=UTF-8
Content-Transfer-Encoding: 8BIT
Content-ID: <alpine.DEB.2.22.394.2310031118451.2348112@ubuntu-linux-20-04-desktop>

On Tue, 3 Oct 2023, Andrew Cooper wrote:
> On 03/10/2023 6:14 pm, Luca Fancellu wrote:
> >
> >> On 3 Oct 2023, at 17:17, andrew.cooper3@citrix.com wrote:
> >>
> >> On 03/10/2023 4:37 pm, Nicola Vetrini wrote:
> >>> As specified in rules.rst, these constants can be used
> >>> in the code.
> >>> Their deviation is now accomplished by using a SAF comment,
> >>> rather than an ECLAIR configuration.
> >>>
> >>> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
> >>> ---
> >>> automation/eclair_analysis/ECLAIR/deviations.ecl | 6 ------
> >>> docs/misra/safe.json                             | 8 ++++++++
> >>> xen/arch/x86/hvm/svm/emulate.c                   | 6 +++---
> >>> xen/arch/x86/hvm/svm/svm.h                       | 9 +++++++++
> >>> xen/common/inflate.c                             | 4 ++--
> >>> 5 files changed, 22 insertions(+), 11 deletions(-)
> >>>
> >>> diff --git a/automation/eclair_analysis/ECLAIR/deviations.ecl b/automation/eclair_analysis/ECLAIR/deviations.ecl
> >>> index d8170106b449..fbb806a75d73 100644
> >>> --- a/automation/eclair_analysis/ECLAIR/deviations.ecl
> >>> +++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
> >>> @@ -132,12 +132,6 @@ safe."
> >>> # Series 7.
> >>> #
> >>>
> >>> --doc_begin="Usage of the following constants is safe, since they are given as-is
> >>> -in the inflate algorithm specification and there is therefore no risk of them
> >>> -being interpreted as decimal constants."
> >>> --config=MC3R1.R7.1,literals={safe, "^0(007|37|070|213|236|300|321|330|331|332|333|334|335|337|371)$"}
> >>> --doc_end
> >>> -
> >>> -doc_begin="Violations in files that maintainers have asked to not modify in the
> >>> context of R7.2."
> >>> -file_tag+={adopted_r7_2,"^xen/include/xen/libfdt/.*$"}
> >>> diff --git a/docs/misra/safe.json b/docs/misra/safe.json
> >>> index 39c5c056c7d4..7ea47344ffcc 100644
> >>> --- a/docs/misra/safe.json
> >>> +++ b/docs/misra/safe.json
> >>> @@ -20,6 +20,14 @@
> >>>         },
> >>>         {
> >>>             "id": "SAF-2-safe",
> >>> +            "analyser": {
> >>> +                "eclair": "MC3R1.R7.1"
> >>> +            },
> >>> +            "name": "Rule 7.1: constants defined in specifications, manuals, and algorithm descriptions",
> >>> +            "text": "It is safe to use certain octal constants the way they are defined in specifications, manuals, and algorithm descriptions."
> >>> +        },
> >>> +        {
> >>> +            "id": "SAF-3-safe",
> >>>             "analyser": {},
> >>>             "name": "Sentinel",
> >>>             "text": "Next ID to be used"
> >>> diff --git a/xen/arch/x86/hvm/svm/emulate.c b/xen/arch/x86/hvm/svm/emulate.c
> >>> index aa2c61c433b3..c5e3341c6316 100644
> >>> --- a/xen/arch/x86/hvm/svm/emulate.c
> >>> +++ b/xen/arch/x86/hvm/svm/emulate.c
> >>> @@ -90,9 +90,9 @@ unsigned int svm_get_insn_len(struct vcpu *v, unsigned int instr_enc)
> >>>         if ( !instr_modrm )
> >>>             return emul_len;
> >>>
> >>> -        if ( modrm_mod       == MASK_EXTR(instr_modrm, 0300) &&
> >>> -             (modrm_reg & 7) == MASK_EXTR(instr_modrm, 0070) &&
> >>> -             (modrm_rm  & 7) == MASK_EXTR(instr_modrm, 0007) )
> >>> +        if ( modrm_mod       == MASK_EXTR(instr_modrm, 0300) && /* SAF-2-safe */
> >>> +             (modrm_reg & 7) == MASK_EXTR(instr_modrm, 0070) && /* SAF-2-safe */
> >>> +             (modrm_rm  & 7) == MASK_EXTR(instr_modrm, 0007) )  /* SAF-2-safe */
> >>>             return emul_len;
> >>>     }
> > Hi Andrew,
> >
> >> This is line noise, and later examples are even worse.
> >>
> >> What does SAF mean?  It's presumably not the Scalable Agile Framework.
> > Please have a look on docs/misra/documenting-violations.rst, you will find all the
> > info about it.
> 
> Thankyou for proving my point perfectly.
> 
> The comment in the source code needs to be *far* clearer than it
> currently is.
> 
> Even s/SAF/ANALYSIS/ would be an improvement, because it makes the
> comment very clear that it's about code analysis.  An unknown initialism
> like SAF does not convey enough meaning to be useful.

Hi Andrew,

I am OK with a rename of the "SAF" tag.

The number of instances is still small enough that a rename can be done
at this point in time. Given that the SAF framework was reviewed by
multiple people, and we already have a few SAF tags in the code base and
even more in my for-4.19 branch, I suggest to start a separate thread on
the topic.

A new thread with a clear subject like "rename SAF to BLAH" and CCing
all the maintainers in the MISRA C working group to make sure everyone
is aware.

Ideally the email should also have a couple of good suggestions for new
tags. I don't have a strong opinion on the name. ANALYSIS is not great
because the tag is meant to say that the line below is safe even if some
MISRA C scanners might find an issue with it. SAF is meant to remind us
of "SAFE". So I would prefer to add the letter "E" and call it "SAFE".

If we can come up with 3-5 options then we can have a doodle poll or
something.

Cheers,

Stefano
--8323329-682720270-1696357122=:2348112--


From xen-devel-bounces@lists.xenproject.org Tue Oct 03 19:19:22 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 03 Oct 2023 19:19:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612318.952196 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnkvJ-0004WA-Nh; Tue, 03 Oct 2023 19:19:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612318.952196; Tue, 03 Oct 2023 19: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 1qnkvJ-0004W3-Kk; Tue, 03 Oct 2023 19:19:13 +0000
Received: by outflank-mailman (input) for mailman id 612318;
 Tue, 03 Oct 2023 19:19: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=CxR1=FR=m5p.com=ehem@srs-se1.protection.inumbo.net>)
 id 1qnkvJ-0004Vv-4N
 for xen-devel@lists.xenproject.org; Tue, 03 Oct 2023 19:19:13 +0000
Received: from mailhost.m5p.com (mailhost.m5p.com [74.104.188.4])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id b9672bc8-6221-11ee-9b0d-b553b5be7939;
 Tue, 03 Oct 2023 21:19:09 +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 393JIZb5031510
 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NO);
 Tue, 3 Oct 2023 15:18:41 -0400 (EDT) (envelope-from ehem@m5p.com)
Received: (from ehem@localhost)
 by m5p.com (8.17.1/8.15.2/Submit) id 393JIZVY031508;
 Tue, 3 Oct 2023 12:18:35 -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: b9672bc8-6221-11ee-9b0d-b553b5be7939
Date: Tue, 3 Oct 2023 12:18:35 -0700
From: Elliott Mitchell <ehem+xen@m5p.com>
To: Roger Pau =?iso-8859-1?Q?Monn=E9?= <roger.pau@citrix.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>,
        Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>
Subject: Re: Issue with shared information page on Xen/ARM 4.17
Message-ID: <ZRxpC7ukhiYvzz5m@mattapan.m5p.com>
References: <ZRY7Ls3p6M6pakMq@mattapan.m5p.com>
 <ZRvQNKyYpLDVTs0i@MacBookPdeRoger>
MIME-Version: 1.0
Content-Type: text/plain; charset=iso-8859-1
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <ZRvQNKyYpLDVTs0i@MacBookPdeRoger>
X-Spam-Status: No, score=0.0 required=10.0 tests=KHOP_HELO_FCRDNS
	autolearn=unavailable autolearn_force=no version=4.0.0
X-Spam-Checker-Version: SpamAssassin 4.0.0 (2022-12-14) on mattapan.m5p.com

On Tue, Oct 03, 2023 at 10:26:28AM +0200, Roger Pau Monn wrote:
> On Thu, Sep 28, 2023 at 07:49:18PM -0700, Elliott Mitchell wrote:
> > 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.
> 
> This is due to 71320946d5edf AFAICT.

Yes.  While the -EBUSY line may be the one triggering, I'm unsure why.
This seems a fairly reasonable change, so I had no intention of asking
for a revert (which likely would have been rejected).  There is also a
real possibility the -EBUSY comes from elsewhere.  Could also be
71320946d5edf caused a bug elsewhere to be exposed.

> > 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?
> 
> I think the issue is that you are mapping the shared info page over a
> guest RAM page, and in order to do that you would fist need to create
> a hole and then map the shared info page.  IOW: the issue is not with
> edk2 not having unmapped the page, but with FreeBSD trying to map the
> shared_info over a RAM page instead of a hole in the p2m.  x86
> behavior is different here, and does allow mapping the shared_info
> page over a RAM gfn (by first removing the backing RAM page on the
> gfn).

An interesting thought.  I thought I'd tried this, but since I didn't see
such in my experiments list.  What I had tried was removing all the pages
in the suggested mapping range.  Yet this failed.

Since this seemed reasonable, I've now tried and found it fails.  The
XENMEM_remove_from_physmap call returns 0.

> Ideally we would like to use an unpopulated gfn, but doing so is not
> trivial right now, as the point where the shared_info page is mapped
> we don't yet have an easy way to account for unpopulated regions.
> 
> My suggestion would be to do something like:
> 
> diff --git a/sys/x86/xen/hvm.c b/sys/x86/xen/hvm.c
> index 4122daeaf600..7251bc69ae15 100644
> --- a/sys/x86/xen/hvm.c
> +++ b/sys/x86/xen/hvm.c
> @@ -194,18 +194,20 @@ xen_hvm_init_shared_info_page(void)
>  {
>  	struct xen_add_to_physmap xatp;
>  
> -	if (xen_pv_domain()) {
> -		/*
> -		 * Already setup in the PV case, shared_info is passed inside
> -		 * of the start_info struct at start of day.
> -		 */
> -		return;
> -	}
> -
>  	if (HYPERVISOR_shared_info == NULL) {
> +		struct xen_remove_from_physmap rm = {
> +			.domid = DOMID_SELF,
> +		};
> +		int rc;
> +
>  		HYPERVISOR_shared_info = malloc(PAGE_SIZE, M_XENHVM, M_NOWAIT);
>  		if (HYPERVISOR_shared_info == NULL)
>  			panic("Unable to allocate Xen shared info page");
> +
> +		rm.gpfn = vtophys(HYPERVISOR_shared_info) >> PAGE_SHIFT;
> +		rc = HYPERVISOR_memory_op(XENMEM_remove_from_physmap, &rm);
> +		if (rc != 0)
> +			printf("Failed to remove shared_info GFN: %d\n", rc);
>  	}
>  
>  	xatp.domid = DOMID_SELF;
> 
> But in the long term we should see about initializing the shared_info
> page as part of xenpv_attach().

Didn't even look at the example since I already had ones handy.
Unfortunately this has also failed.  The XENMEM_remove_from_physmap call
returns 0.

If there is a need I can hand off a build of Xen and Tianocore, then let
someone else with better Xen/ARM diagnostics play with it.  Runs about
75MB, someone could place it in a better sharing place if desired.


-- 
(\___(\___(\______          --=> 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 Tue Oct 03 19:42:23 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 03 Oct 2023 19:42:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612324.952207 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnlHV-0001HT-Jx; Tue, 03 Oct 2023 19:42:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612324.952207; Tue, 03 Oct 2023 19: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 1qnlHV-0001HM-FX; Tue, 03 Oct 2023 19:42:09 +0000
Received: by outflank-mailman (input) for mailman id 612324;
 Tue, 03 Oct 2023 19:42: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 1qnlHU-0001H9-Di; Tue, 03 Oct 2023 19:42: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 1qnlHU-0002RG-7W; Tue, 03 Oct 2023 19:42: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 1qnlHT-00052b-Le; Tue, 03 Oct 2023 19:42:07 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qnlHT-0001jm-L8; Tue, 03 Oct 2023 19:42: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=Q4mAatlnjpa2ygHr0ffovZ3oAri9nQjcLGZTyeyEWVA=; b=upDskBm6Pqp3lC1bg8B1sJ7eqs
	8g3lf4Yv+0lr6moU26+JIvOUOapadXPeg1yYgTyt+dTWrKmvtI9yvtVLXp0nUxHFJLMDnDwBNyqWR
	c5jvfNxf6i31k49XZnmlkFaE0gxQaRJBqG9I8BeoWEHmpgIgIWaDesCERGivVJvnPdE8=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183249-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 183249: tolerable FAIL
X-Osstest-Failures:
    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-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2: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-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-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-unstable:test-amd64-amd64-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-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1: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-libvirt-xsm: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-amd64-amd64-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-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-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-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-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=3d2d9e90224c4f430a7ee1190fd3b871b99b0ba0
X-Osstest-Versions-That:
    xen=3d2d9e90224c4f430a7ee1190fd3b871b99b0ba0
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 03 Oct 2023 19:42:07 +0000

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

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183243
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183243
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 183243
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183243
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183243
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183243
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 183243
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 183243
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183243
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183243
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 183243
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183243
 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-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-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-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-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-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-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-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-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                  3d2d9e90224c4f430a7ee1190fd3b871b99b0ba0
baseline version:
 xen                  3d2d9e90224c4f430a7ee1190fd3b871b99b0ba0

Last test of basis   183249  2023-10-03 11:38:21 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 Tue Oct 03 19:53:00 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 03 Oct 2023 19:53:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612331.952217 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnlRt-0003ly-KU; Tue, 03 Oct 2023 19:52:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612331.952217; Tue, 03 Oct 2023 19:52: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 1qnlRt-0003lr-HW; Tue, 03 Oct 2023 19:52:53 +0000
Received: by outflank-mailman (input) for mailman id 612331;
 Tue, 03 Oct 2023 19:52: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=BPao=FR=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qnlRs-0003ll-9n
 for xen-devel@lists.xenproject.org; Tue, 03 Oct 2023 19:52:52 +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 6e43f05e-6226-11ee-9b0d-b553b5be7939;
 Tue, 03 Oct 2023 21:52:49 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by ams.source.kernel.org (Postfix) with ESMTP id C27CFB81C08;
 Tue,  3 Oct 2023 19:52:48 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 27A07C433C8;
 Tue,  3 Oct 2023 19: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: 6e43f05e-6226-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696362768;
	bh=qfB3NMDnrKvEPdPVqdW8HyS8l7RCPbLsE6Inbx66mok=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=j+xFcrmok6FN4Q4rGmOR2KGD1w/rLYt4g+V3sdv1MaNTE7n6rToipfr+P/R/CxTus
	 tpSM/G06vWCroAmOw4iSxXYS+kb82B9IB31uiPZuLqvRtSxkqHwA2lvEuxifwQn+6C
	 w48OYIIldLxyjvY/p/kfeqpaY3EO9a3H7j8qzGcoUjRPTXN864MzHzfaHZGCyYGMER
	 YmZJUEfjuhAV4vSm7vL+wLj7Z3fYstVk6ewLTKgmPrieZIUCdGQby6+oGPQFS6FN+t
	 E+JGNLuoEt/Wwdre/9S9vXteZ/P9KbmeFnzDch6JR8ZEdyfzEUhwVIuqMQUvqo3Wct
	 UAQsEU5tfYHjg==
Date: Tue, 3 Oct 2023 12:52:45 -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: Luca Fancellu <Luca.Fancellu@arm.com>, 
    Stefano Stabellini <sstabellini@kernel.org>, 
    Bertrand Marquis <Bertrand.Marquis@arm.com>, Julien Grall <julien@xen.org>, 
    Xen-devel <xen-devel@lists.xenproject.org>, Wei Chen <Wei.Chen@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: <dc16dc72-4a35-457d-b019-2351e3051c32@amd.com>
Message-ID: <alpine.DEB.2.22.394.2310031242560.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>
 <alpine.DEB.2.22.394.2309291242570.2348112@ubuntu-linux-20-04-desktop> <bc2a043a-9836-429b-88bb-6bedda5343bf@xen.org> <38AD4AA5-D038-4114-A614-80BF91FB51FB@arm.com> <alpine.DEB.2.22.394.2310021512210.2348112@ubuntu-linux-20-04-desktop>
 <0348B5FA-D65C-4D70-99A4-47398BD4266C@arm.com> <dc16dc72-4a35-457d-b019-2351e3051c32@amd.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: multipart/mixed; BOUNDARY="8323329-559697055-1696362451=:2348112"
Content-ID: <alpine.DEB.2.22.394.2310031247330.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-559697055-1696362451=:2348112
Content-Type: text/plain; CHARSET=UTF-8
Content-Transfer-Encoding: 8BIT
Content-ID: <alpine.DEB.2.22.394.2310031247331.2348112@ubuntu-linux-20-04-desktop>

On Tue, 3 Oct 2023, Michal Orzel wrote:
> On 03/10/2023 09:44, Luca Fancellu wrote:
> >>>>> 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?
> >>>>
> >>>> Looking at the name of the functions, I would expect that we would need another code movement in the future to move back Arm specific function under arch/arm/. So we would end up with two code movement as well.
> >>>>
> >>>> I would prefer if we wait until RISC-V/x86 needs it so we don't unnecessarily move Arm specific code in common/.
> >>>
> >>> I agree with Julien here.
> >>> Moving the code now will mean moving part of it back in arm in the future once we have a second user of this.
> >>> I would rather wait for the need to come so that we do this cleanly.
> >>>
> >>> Also using hyperlaunch name now would be weird as there was no agreement on the naming (as far as I know) so far.
> >>
> >> RISC-V is already using dom0less code, however in a downstream
> >> repository. To make progress faster the code was copied (not shared)
> >> from arch/arm to arch/riscv. More details on the Xen community call this
> >> week. https://gitlab.com/xen-project/people/olkur/xen/-/blob/riscv_aia_support/xen/arch/riscv/domain_build.c?ref_type=heads
> >>
> >> Hyperlaunch also needs dom0less code to be made common to make progress:
> >> https://marc.info/?l=xen-devel&m=169154172700539
> >>
> >> So I think that there is an immediate RISC-V and X86 need.
> >>
> >> But the point about "moving the code now will mean moving part of it
> >> back in arm in the future" is valid. How do we move forward?
> >>
> >> I don't think we want to block Luca's progress to wait for more
> >> plumbings done on x86 or RISC-V. Also we don't want to scope creep
> >> Luca's series too much.
> >>
> >> But I think the goal should be to move dom0less code to xen/common as
> >> soon as possible and make it arch neutral. How do we get there?
> > 
> > So here is why I felt painful doing now a move to the common code, but maybe you (maintainers) can give me some
> > feedbacks.
> > 
> > I see that the functions that might be put in common are these, some of them however have arm specific code in them:
> > 
> > is_dom0less_mode
> > allocate_bank_memory
> > allocate_memory
> > handle_passthrough_prop
> > handle_prop_pfdt
> > scan_pfdt_node
> > check_partial_fdt
> > domain_p2m_pages
> > alloc_xenstore_evtchn
> > domain_handle_dtb_bootmodule (contains reference to the gic)
> > prepare_dtb_domU (have reference to psci, gic, vpl011)
> > construct_domU (have reference to vpl011, static shared memory)
> > create_domUs(have reference to vpl011, sve)
> > 
> > Here the functions that can stay in arm code:
> > 
> > make_gicv2_domU_node
> > make_gicv3_domU_node
> > make_gic_domU_node
> > make_vpl011_uart_node
> > 
> > 
> > Given that the status after the move to common of the above functions is not very clean, I’ve decided to don’t do that,
> > however if you are fine with it, I can do the modification and who is going to work further on the subject can consolidate
> > and make them build for other architecture.
> > 
> Another option would be to hold off for a while until work on hyperlaunch/RISCV dom0less starts to better understand the needs,
> concepts and to avoid multiple code movement which results in a horrible history. I know this is not nice but I can tell you that
> I had to stop working on some features like FLASK with dom0less, static domids for dom0less domUs, because according to the hyperlaunch design,
> this will need to be common. With hyperlaunch, everything starts with the domain configuration that is supposed to be arch neutral, so
> until this is done, it's difficult to do anything in this area.

This is not good. In an ideal world, Hyperlaunch shouldn't block
progress for dom0less. We shouldn't have to wait many months to make
progress on FLASK with dom0less, static domids for dom0less domUs, etc.
because of potential Hyperlaunch implications.

In my option a delay of few weeks might be OK; we should be reasonable.
But a delay of few months is not. Cosidering review times, release
schedules etc. it could become a very significant delay.

Also, hyperlaunch contributors are not familiar with dom0less and are
not familiar with arm. (This is so true that they have their own
reimplementation of the parser.) I think the dom0less separation / code
movement is better done by us in the arm community because we know the
code far better.

So I think Luca's suggestion above is in the right direction. I would
follow Luca's suggestion with only one difference: I would keep
prepare_dtb_domU in the arm code, together with make_gicv*_domU_node and
make_vpl011_uart_node. I would move the rest to common.
--8323329-559697055-1696362451=:2348112--


From xen-devel-bounces@lists.xenproject.org Tue Oct 03 20:11:46 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 03 Oct 2023 20:11:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612338.952227 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnlk0-00087U-3y; Tue, 03 Oct 2023 20:11:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612338.952227; Tue, 03 Oct 2023 20: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 1qnlk0-00087N-1O; Tue, 03 Oct 2023 20:11:36 +0000
Received: by outflank-mailman (input) for mailman id 612338;
 Tue, 03 Oct 2023 20:11: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 1qnljy-00087H-Q5
 for xen-devel@lists.xenproject.org; Tue, 03 Oct 2023 20:11: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 1qnljw-0003EW-Ji; Tue, 03 Oct 2023 20:11:32 +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 1qnljw-0001Gs-ED; Tue, 03 Oct 2023 20:11: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=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=FZHSBhwaw/7up2rbPrgSyb9vC3q0WpMuvPWFoF5w8kU=; b=NIV3H97Bjv3hHeq2CHxBNby2kZ
	trB4dvbNxCpC863I8PgTCJX68DUWayudDYWEx/r2WCpHlGdqE/s/bTWgbFFcI3ujpJIa3Yk55/Yxp
	tT4hVpmgFH4MeO3ePv2k2G8/jFNafXVIFC0DH9VrbptJHiAvlUwDBpB6+G1X97Da74O8=;
Message-ID: <257cb1d3-e5b6-45cc-9b61-4710991693fb@xen.org>
Date: Tue, 3 Oct 2023 21:11:30 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v2 3/5] arm/dom0less: put dom0less feature code in a
 separate module
Content-Language: en-GB
To: Stefano Stabellini <sstabellini@kernel.org>,
 Michal Orzel <michal.orzel@amd.com>
Cc: Luca Fancellu <Luca.Fancellu@arm.com>,
 Bertrand Marquis <Bertrand.Marquis@arm.com>,
 Xen-devel <xen-devel@lists.xenproject.org>, Wei Chen <Wei.Chen@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.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>
 <725342EA-730F-4961-88A4-43EC0CBAD5BA@arm.com>
 <alpine.DEB.2.22.394.2309291242570.2348112@ubuntu-linux-20-04-desktop>
 <bc2a043a-9836-429b-88bb-6bedda5343bf@xen.org>
 <38AD4AA5-D038-4114-A614-80BF91FB51FB@arm.com>
 <alpine.DEB.2.22.394.2310021512210.2348112@ubuntu-linux-20-04-desktop>
 <0348B5FA-D65C-4D70-99A4-47398BD4266C@arm.com>
 <dc16dc72-4a35-457d-b019-2351e3051c32@amd.com>
 <alpine.DEB.2.22.394.2310031242560.2348112@ubuntu-linux-20-04-desktop>
From: Julien Grall <julien@xen.org>
In-Reply-To: <alpine.DEB.2.22.394.2310031242560.2348112@ubuntu-linux-20-04-desktop>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

Hi Stefano,

On 03/10/2023 20:52, Stefano Stabellini wrote:
> On Tue, 3 Oct 2023, Michal Orzel wrote:
>> On 03/10/2023 09:44, Luca Fancellu wrote:
>>> Given that the status after the move to common of the above functions is not very clean, I’ve decided to don’t do that,
>>> however if you are fine with it, I can do the modification and who is going to work further on the subject can consolidate
>>> and make them build for other architecture.
>>>
>> Another option would be to hold off for a while until work on hyperlaunch/RISCV dom0less starts to better understand the needs,
>> concepts and to avoid multiple code movement which results in a horrible history. I know this is not nice but I can tell you that
>> I had to stop working on some features like FLASK with dom0less, static domids for dom0less domUs, because according to the hyperlaunch design,
>> this will need to be common. With hyperlaunch, everything starts with the domain configuration that is supposed to be arch neutral, so
>> until this is done, it's difficult to do anything in this area.
> 
> This is not good. In an ideal world, Hyperlaunch shouldn't block
> progress for dom0less. We shouldn't have to wait many months to make
> progress on FLASK with dom0less, static domids for dom0less domUs, etc.
> because of potential Hyperlaunch implications.

It depends what are the implications. If it means that the bindings will 
change a release after. Then I think we should instead work on 
standardizing Hyperlaunch (or whichever name we decide to use) earlier 
so our users can rely on the interface for multiple revisions.

We could of course decide to maintain both interfaces. But this means 
more maintenance work which could have been avoided by fast tracking 
Hyperlaunch (it is not like we don't know it is coming...).

> In my option a delay of few weeks might be OK; we should be reasonable.
> But a delay of few months is not. Cosidering review times, release
> schedules etc. it could become a very significant delay. >
> Also, hyperlaunch contributors are not familiar with dom0less and are
> not familiar with arm. (This is so true that they have their own
> reimplementation of the parser.) I think the dom0less separation / code
> movement is better done by us in the arm community because we know the
> code far better.

I think we need both the arm and hyperlaunch community to work together 
(see more below).

> 
> So I think Luca's suggestion above is in the right direction. I would
> follow Luca's suggestion with only one difference: I would keep
> prepare_dtb_domU in the arm code, together with make_gicv*_domU_node and
> make_vpl011_uart_node. I would move the rest to common.

Luca's pointed out that some function (such as construct_domU) would 
contain reference to Arm specific code. So with your proposal, I am 
under the impression that we would move code that would then end up to 
be moved again in a few months time. So it is defeating your goal (even 
though the movement will hopefully be smaller).

As I wrote above, I don't think the Arm community alone is in the 
position to decide what should be in common and what should be in arch 
specific. We need the hyperlaunch community to agree on their approach 
so we can know which split makes sense. This is similar to the on-going 
MMU split to cater the MPU. We looked the MPU code to decide of the best 
split.

A potential approach would be to look at the RISC-V implementation of 
dom0less and see the common parts. But then we are going in the the 
scope creep you mention earlier.

So overall, I feel that Lucas' approach is better until Hyperlaunch gain 
momentum.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Oct 03 20:26:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 03 Oct 2023 20:26:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612342.952236 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnlyg-0003H2-Cd; Tue, 03 Oct 2023 20:26:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612342.952236; Tue, 03 Oct 2023 20: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 1qnlyg-0003Gv-9k; Tue, 03 Oct 2023 20:26:46 +0000
Received: by outflank-mailman (input) for mailman id 612342;
 Tue, 03 Oct 2023 20:26: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=USMC=FR=tklengyel.com=tamas@srs-se1.protection.inumbo.net>)
 id 1qnlye-0003Gp-8r
 for xen-devel@lists.xenproject.org; Tue, 03 Oct 2023 20:26:44 +0000
Received: from sender4-op-o16.zoho.com (sender4-op-o16.zoho.com
 [136.143.188.16]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 28f2e0a9-622b-11ee-98d2-6d05b1d4d9a1;
 Tue, 03 Oct 2023 22:26:42 +0200 (CEST)
Received: from mail-yb1-f177.google.com (mail-yb1-f177.google.com
 [209.85.219.177]) by mx.zohomail.com
 with SMTPS id 1696364796038774.0653044161322;
 Tue, 3 Oct 2023 13:26:36 -0700 (PDT)
Received: by mail-yb1-f177.google.com with SMTP id
 3f1490d57ef6-d865685f515so197146276.1
 for <xen-devel@lists.xenproject.org>; Tue, 03 Oct 2023 13:26: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: 28f2e0a9-622b-11ee-98d2-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; t=1696364798; cv=none; 
	d=zohomail.com; s=zohoarc; 
	b=OGItTpy/Z4/F2CpucYNowFuiAoltFlLFP6xBkzZ0l4RP7JcE2owVqgH1O8ij1WWINbna0nWrM4DhrLtqeAHKoq2It4veg9n53NgfJJMFTr+aKFBg089tbnaPZyNgeLrYAvHf8zgjjbXWE9OpR19d3qrQmRCaC3xfJuhRxLSXZ/Y=
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; 
	t=1696364798; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:MIME-Version:Message-ID:References:Subject:Subject:To:To:Message-Id:Reply-To; 
	bh=PlJGpjgUFMIPaggujCT0JPVq7amItrPnzF/7gSJVLcg=; 
	b=iOyt9c7v0Wr82E9ZJ3ieH99KSE6o172SyC+RSbm/QYUtlCul9Iplg6qKz8Zd71NYypn38kskACAs5pLsPU5iQNF8ni4PTGm0Z/aDGDnD3qsqAPEr0bHNXQTqAZrnjRBlRYSi3/uu0j0jYeBA3LR9ekZSSRP2EZ0Fkq4euOjRe0U=
ARC-Authentication-Results: i=1; mx.zohomail.com;
	dkim=pass  header.i=tklengyel.com;
	spf=pass  smtp.mailfrom=tamas@tklengyel.com;
	dmarc=pass header.from=<tamas@tklengyel.com>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; t=1696364798;
	s=zmail; d=tklengyel.com; i=tamas@tklengyel.com;
	h=MIME-Version:References:In-Reply-To:From:From:Date:Date:Message-ID:Subject:Subject:To:To:Cc:Cc:Content-Type:Content-Transfer-Encoding:Message-Id:Reply-To;
	bh=PlJGpjgUFMIPaggujCT0JPVq7amItrPnzF/7gSJVLcg=;
	b=RZ0ngUnFxvzZkj9KNw/7nZc8+nZzakMDp0p7W4rbWWNAIp2DKRVMaEgGkZO3JUze
	6goZb4SH2F8rT8PekDp2rXlB7fHfSVXJMStLo+t5eWfqDrsxdwMm/ATptvdE9xtK3L9
	WH4f1pcx7v3uyBdCoP00OxPHZ8SCpBwKdBGj6WWw=
X-Gm-Message-State: AOJu0Yyqm7dQRhJ6VIgXA094/n6tMfxDctb4Z98mCke+7mwoT2JO53au
	QAMAGPo58RXGV8a2Ax5xuyXlWgIWwDvPt/8EfC8=
X-Google-Smtp-Source: AGHT+IE4jnpH7xqV1mIA9Ca4jQTwmjdfzOsGZPm4EH1N/Ubjymuy38aIGxobh30keR4q8f3zE13mAZrWYe8S82cQn0o=
X-Received: by 2002:a25:9906:0:b0:d86:4342:290 with SMTP id
 z6-20020a259906000000b00d8643420290mr217963ybn.21.1696364795076; Tue, 03 Oct
 2023 13:26:35 -0700 (PDT)
MIME-Version: 1.0
References: <20231002151127.71020-1-roger.pau@citrix.com> <20231002151127.71020-7-roger.pau@citrix.com>
 <CABfawhnHg3KrGP-hp4_Q8GvSf2nVSVSyK24HKqAGuWp_AtD8-A@mail.gmail.com>
 <ZRwlXls8xRyc8AX4@MacBookPdeRoger> <8ee8d70b-5b69-4834-b7e3-572e96effa5c@xen.org>
In-Reply-To: <8ee8d70b-5b69-4834-b7e3-572e96effa5c@xen.org>
From: Tamas K Lengyel <tamas@tklengyel.com>
Date: Tue, 3 Oct 2023 16:25:58 -0400
X-Gmail-Original-Message-ID: <CABfawhn0vH6rS8-SJQJVZtto2HA61By1bCG3w9bJMJR3x+rXsg@mail.gmail.com>
Message-ID: <CABfawhn0vH6rS8-SJQJVZtto2HA61By1bCG3w9bJMJR3x+rXsg@mail.gmail.com>
Subject: Re: [PATCH v5 06/10] x86/mem-sharing: copy GADDR based shared guest areas
To: Julien Grall <julien@xen.org>
Cc: =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>, 
	xen-devel@lists.xenproject.org, henry.wang@arm.com, 
	Jan Beulich <jbeulich@suse.com>, Andrew Cooper <andrew.cooper3@citrix.com>, 
	George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>, 
	Stefano Stabellini <sstabellini@kernel.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Tue, Oct 3, 2023 at 11:07=E2=80=AFAM Julien Grall <julien@xen.org> wrote=
:
>
> Hi Roger,
>
> On 03/10/2023 15:29, Roger Pau Monn=C3=A9 wrote:
> > On Tue, Oct 03, 2023 at 09:53:11AM -0400, Tamas K Lengyel wrote:
>
> Tamas, somehow your e-mails don't show up in my inbox (even if I am
> CCed) or even on lore.kernel.org/xen-devel. It is not even in my SPAM
> folder.

Thanks, I've switched mailservers, hopefully that resolves the issue.

>
> >> On Mon, Oct 2, 2023 at 11:13=E2=80=AFAM Roger Pau Monne <roger.pau@cit=
rix.com> wrote:
> >>>
> >>> From: Jan Beulich <jbeulich@suse.com>
> >>>
> >>> 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>
> >>> Signed-off-by: Roger Pau Monn=C3=A9 <roger.pau@citrix.com>
> >>> ---
> >>> Changes since v4:
> >>>   - Rely on map_guest_area() to populate the child p2m if necessary.
> >>> ---
> >>>   xen/arch/x86/mm/mem_sharing.c | 31 +++++++++++++++++++++++++++++++
> >>>   xen/common/domain.c           |  7 +++++++
> >>>   2 files changed, 38 insertions(+)
> >>>
> >>> diff --git a/xen/arch/x86/mm/mem_sharing.c b/xen/arch/x86/mm/mem_shar=
ing.c
> >>> index 5f8f1fb4d871..99cf001fd70f 100644
> >>> --- a/xen/arch/x86/mm/mem_sharing.c
> >>> +++ b/xen/arch/x86/mm/mem_sharing.c
> >>> @@ -1641,6 +1641,24 @@ static void copy_vcpu_nonreg_state(struct vcpu=
 *d_vcpu, struct vcpu *cd_vcpu)
> >>>       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)
> >>> +{
> >>> +    unsigned int offset;
> >>> +
> >>> +    /* Check if no area to map, or already mapped. */
> >>> +    if ( !d_area->pg || cd_area->pg )
> >>> +        return 0;
> >>> +
> >>> +    offset =3D PAGE_OFFSET(d_area->map);
> >>> +    return map_guest_area(cd_vcpu, gfn_to_gaddr(
> >>> +                                       mfn_to_gfn(d, page_to_mfn(d_a=
rea->pg))) +
> >>> +                                   offset,
> >>> +                          PAGE_SIZE - offset, cd_area, NULL);
> >>> +}
> >>> +
> >>>   static int copy_vpmu(struct vcpu *d_vcpu, struct vcpu *cd_vcpu)
> >>>   {
> >>>       struct vpmu_struct *d_vpmu =3D vcpu_vpmu(d_vcpu);
> >>> @@ -1709,6 +1727,16 @@ static int copy_vcpu_settings(struct domain *c=
d, const struct domain *d)
> >>>                   return ret;
> >>>           }
> >>>
> >>> +        /* Same for the (physically registered) runstate and time in=
fo areas. */
> >>> +        ret =3D copy_guest_area(&cd_vcpu->runstate_guest_area,
> >>> +                              &d_vcpu->runstate_guest_area, cd_vcpu,=
 d);
> >>> +        if ( ret )
> >>> +            return ret;
> >>> +        ret =3D copy_guest_area(&cd_vcpu->arch.time_guest_area,
> >>> +                              &d_vcpu->arch.time_guest_area, cd_vcpu=
, d);
> >>> +        if ( ret )
> >>> +            return ret;
> >>> +
> >>>           ret =3D copy_vpmu(d_vcpu, cd_vcpu);
> >>>           if ( ret )
> >>>               return ret;
> >>> @@ -1950,7 +1978,10 @@ int mem_sharing_fork_reset(struct domain *d, b=
ool reset_state,
> >>>
> >>>    state:
> >>>       if ( reset_state )
> >>> +    {
> >>>           rc =3D copy_settings(d, pd);
> >>> +        /* TBD: What to do here with -ERESTART? */
> >>
> >> There is no situation where we get an -ERESTART here currently. Is
> >> map_guest_area expected to run into situations where it fails with
> >> that rc?
> >
> > Yes, there's a spin_trylock() call that will result in
> > map_guest_area() returning -ERESTART.
> >
> >> If yes we might need a lock in place so we can block until it
> >> can succeed.
> >
> > I'm not sure whether returning -ERESTART can actually happen in
> > map_guest_area() for the fork case: the child domain is still paused
> > at this point, so there can't be concurrent guest hypercalls that
> > would also cause the domain hypercall_deadlock_mutex to be acquired.

Perhaps turning it into an ASSERT(rc !=3D -ERESTART) is the way to go at
this point. If we run into any cases where it trips we can reason it
out.

> hypercall_deadlock_mutex is also acquired by domctls. So, I believe,
> -ERESTART could be returned if the toolstack is also issuing domclt
> right at the same time as forking.

That's not a concern in this path, only toolstack can start the reset
so we can assume it can coordinate not to have another toolstack
messing with the fork at the same time.

Thanks,
Tamas


From xen-devel-bounces@lists.xenproject.org Tue Oct 03 20:40:17 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 03 Oct 2023 20:40:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612347.952247 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnmBd-0006iQ-HL; Tue, 03 Oct 2023 20:40:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612347.952247; Tue, 03 Oct 2023 20:40: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 1qnmBd-0006iJ-EL; Tue, 03 Oct 2023 20:40:09 +0000
Received: by outflank-mailman (input) for mailman id 612347;
 Tue, 03 Oct 2023 20:40: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=BPao=FR=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qnmBc-0006iD-AN
 for xen-devel@lists.xenproject.org; Tue, 03 Oct 2023 20:40:08 +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 08dd7624-622d-11ee-9b0d-b553b5be7939;
 Tue, 03 Oct 2023 22:40:05 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by ams.source.kernel.org (Postfix) with ESMTP id 51DCDB81C04;
 Tue,  3 Oct 2023 20:40:05 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id CF86AC433C8;
 Tue,  3 Oct 2023 20:40:02 +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: 08dd7624-622d-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696365603;
	bh=uUVD4OP9wvKYRPo9eC5i2jTLOZSo7/zAldhjVvLgLmo=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=Z8yS4y1yeBb87c7Mnv+v3FBnOylMtlF4r0Jllgu6G3uAFHviOUgL7Z+NLJk4bddHl
	 rKUAf9I6UrSjUBlI81c1HMQsvfShKRrvZtndJTFC8HQoPEtfyymxlngctElLXPgtKD
	 tdQoo+KSMENEvvJus5aS3/QTZfXh0SVFmcI0sgKxf4PjhPzCDC7PVGYsufj6ua6wmx
	 SQz8vi9HYLl611MHZ5bh/WkhXWcpnSDbORYawn7MwdHAlG7bOpaBDzmDYqcLnIo/BP
	 keyzBPfAJ85bpaIQpcgYSoZYweW+cxavO0B6U3ZhwAQYH/Xo2ZuPRX8P3J/YhvvZXN
	 GDo7qVpVCyowQ==
Date: Tue, 3 Oct 2023 13:40:01 -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>, 
    Michal Orzel <michal.orzel@amd.com>, Luca Fancellu <Luca.Fancellu@arm.com>, 
    Bertrand Marquis <Bertrand.Marquis@arm.com>, 
    Xen-devel <xen-devel@lists.xenproject.org>, Wei Chen <Wei.Chen@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: <257cb1d3-e5b6-45cc-9b61-4710991693fb@xen.org>
Message-ID: <alpine.DEB.2.22.394.2310031317360.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>
 <alpine.DEB.2.22.394.2309291242570.2348112@ubuntu-linux-20-04-desktop> <bc2a043a-9836-429b-88bb-6bedda5343bf@xen.org> <38AD4AA5-D038-4114-A614-80BF91FB51FB@arm.com> <alpine.DEB.2.22.394.2310021512210.2348112@ubuntu-linux-20-04-desktop>
 <0348B5FA-D65C-4D70-99A4-47398BD4266C@arm.com> <dc16dc72-4a35-457d-b019-2351e3051c32@amd.com> <alpine.DEB.2.22.394.2310031242560.2348112@ubuntu-linux-20-04-desktop> <257cb1d3-e5b6-45cc-9b61-4710991693fb@xen.org>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: multipart/mixed; BOUNDARY="8323329-1040605223-1696364300=:2348112"
Content-ID: <alpine.DEB.2.22.394.2310031321120.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-1040605223-1696364300=:2348112
Content-Type: text/plain; CHARSET=UTF-8
Content-Transfer-Encoding: 8BIT
Content-ID: <alpine.DEB.2.22.394.2310031321121.2348112@ubuntu-linux-20-04-desktop>

On Tue, 3 Oct 2023, Julien Grall wrote:
> On 03/10/2023 20:52, Stefano Stabellini wrote:
> > On Tue, 3 Oct 2023, Michal Orzel wrote:
> > > On 03/10/2023 09:44, Luca Fancellu wrote:
> > > > Given that the status after the move to common of the above functions is
> > > > not very clean, I’ve decided to don’t do that,
> > > > however if you are fine with it, I can do the modification and who is
> > > > going to work further on the subject can consolidate
> > > > and make them build for other architecture.
> > > > 
> > > Another option would be to hold off for a while until work on
> > > hyperlaunch/RISCV dom0less starts to better understand the needs,
> > > concepts and to avoid multiple code movement which results in a horrible
> > > history. I know this is not nice but I can tell you that
> > > I had to stop working on some features like FLASK with dom0less, static
> > > domids for dom0less domUs, because according to the hyperlaunch design,
> > > this will need to be common. With hyperlaunch, everything starts with the
> > > domain configuration that is supposed to be arch neutral, so
> > > until this is done, it's difficult to do anything in this area.
> > 
> > This is not good. In an ideal world, Hyperlaunch shouldn't block
> > progress for dom0less. We shouldn't have to wait many months to make
> > progress on FLASK with dom0less, static domids for dom0less domUs, etc.
> > because of potential Hyperlaunch implications.
> 
> It depends what are the implications. If it means that the bindings will
> change a release after. Then I think we should instead work on standardizing
> Hyperlaunch (or whichever name we decide to use) earlier so our users can rely
> on the interface for multiple revisions.
> 
> We could of course decide to maintain both interfaces. But this means more
> maintenance work which could have been avoided by fast tracking Hyperlaunch
> (it is not like we don't know it is coming...).
> 
> > In my option a delay of few weeks might be OK; we should be reasonable.
> > But a delay of few months is not. Cosidering review times, release
> > schedules etc. it could become a very significant delay. >
> > Also, hyperlaunch contributors are not familiar with dom0less and are
> > not familiar with arm. (This is so true that they have their own
> > reimplementation of the parser.) I think the dom0less separation / code
> > movement is better done by us in the arm community because we know the
> > code far better.
> 
> I think we need both the arm and hyperlaunch community to work together (see
> more below).
> 
> > 
> > So I think Luca's suggestion above is in the right direction. I would
> > follow Luca's suggestion with only one difference: I would keep
> > prepare_dtb_domU in the arm code, together with make_gicv*_domU_node and
> > make_vpl011_uart_node. I would move the rest to common.
> 
> Luca's pointed out that some function (such as construct_domU) would contain
> reference to Arm specific code. So with your proposal, I am under the
> impression that we would move code that would then end up to be moved again in
> a few months time. So it is defeating your goal (even though the movement will
> hopefully be smaller).

I was assuming that e.g. construct_domU would reference ARM code, but
the ARM code would live under arch/arm. So yes construct_domU would need
some refactoring in the future to make the call generic instead of
arm-specific, but wouldn't require significant additional code movement.

But maybe I am wrong. I don't know if Luca has a clearer picture in his
mind.


> As I wrote above, I don't think the Arm community alone is in the position to
> decide what should be in common and what should be in arch specific. We need
> the hyperlaunch community to agree on their approach so we can know which
> split makes sense. This is similar to the on-going MMU split to cater the MPU.
> We looked the MPU code to decide of the best split.
> 
> A potential approach would be to look at the RISC-V implementation of dom0less
> and see the common parts. But then we are going in the the scope creep you
> mention earlier.

I didn't do a proper investigation and I didn't look at the RISC-V or
hyperlaunch code in details. From my discussions with both groups, here
is my understanding of arm-specific things we currently have:

- 1:1 memory mapping / static memory / static heap because they are
  currently unimplemented on other arches
- most domU device tree building because most of virtual devices are
  different (timer, interrupt controller, uart, etc)
- the equivalent for dom0: the gic/timer device tree generated nodes
- the blacklist at the beginning of handle_node
- for hyperlaunch, we need to support "module-index" as a way to get the
  physical address of a module
- reserved_memory doesn't exist on x86
- a couple of dom0less device tree properties are arm-specific, such as
  "sve" and "vpl011"

This is me hand-waiving, so it might not be useful.


> So overall, I feel that Lucas' approach is better until Hyperlaunch gain
> momentum.

I am OK with Luca's original approach. I just wanted to open the
discussion in case there is a better way.
--8323329-1040605223-1696364300=:2348112--


From xen-devel-bounces@lists.xenproject.org Tue Oct 03 20:42:03 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 03 Oct 2023 20:42:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612352.952256 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnmDR-0007Lc-VS; Tue, 03 Oct 2023 20:42:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612352.952256; Tue, 03 Oct 2023 20: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 1qnmDR-0007LV-Sz; Tue, 03 Oct 2023 20:42:01 +0000
Received: by outflank-mailman (input) for mailman id 612352;
 Tue, 03 Oct 2023 20:42: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=BPao=FR=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qnmDR-0007LP-1h
 for xen-devel@lists.xenproject.org; Tue, 03 Oct 2023 20:42:01 +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 4af9828d-622d-11ee-9b0d-b553b5be7939;
 Tue, 03 Oct 2023 22:41:58 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by sin.source.kernel.org (Postfix) with ESMTP id 2ADA7CE1877;
 Tue,  3 Oct 2023 20:41:52 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id E9833C433C8;
 Tue,  3 Oct 2023 20:41: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: 4af9828d-622d-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696365711;
	bh=uQS55In3SF3nroA+vqGoCwxIEXAeslUxH7X1AtLmYR8=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=dW/FOnu08BgKC9OxlalGmxPYOHtIN3rbGQsnS57vAX5tOsCZ/sI4+bd7lgLucDJLd
	 QjAdpXzMwGIxyomxdA28oBW6RwF0/6Wo46LdSRUQPLeKlrQ6sxyUWQBKCd16zqfmxa
	 COmCTzetdUlgVBNw89uYyKjTNO95uwGMx1+7bnhXqKuHwoEULZ7J8uLbKDCA0uvVTO
	 HueLRu/gdCK6qO3da0L2QMyKcb6goigOnwsf4KDFAbCkBGdyZJG+UzDGGcnG9uAgut
	 RYcAxcycudrigQa+tSeRKzC6VWZIXtCm5e1MfOcf/t2lD8ccBZ8xj66ND2ZvRrDEeJ
	 RiO8gh1n30Iyw==
Date: Tue, 3 Oct 2023 13:41:48 -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, Henry.Wang@arm.com, Wei Liu <wl@xen.org>
Subject: Re: [XEN PATCH 4/7] x86/grant: switch included header to make
 declarations visible
In-Reply-To: <7dcb6b040d0fab33553dac18e9080465@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2310031341240.2348112@ubuntu-linux-20-04-desktop>
References: <cover.1696232393.git.nicola.vetrini@bugseng.com> <ec3179df569d3e2b392360539bddfb3adc726a5e.1696232393.git.nicola.vetrini@bugseng.com> <alpine.DEB.2.22.394.2310021541230.2348112@ubuntu-linux-20-04-desktop>
 <7dcb6b040d0fab33553dac18e9080465@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, 3 Oct 2023, Nicola Vetrini wrote:
> On 03/10/2023 00:42, Stefano Stabellini wrote:
> > On Mon, 2 Oct 2023, Nicola Vetrini wrote:
> > > The declarations for {create,replace}_grant_p2m_mapping are
> > > not visible when these functions are defined, therefore the right
> > > header needs to be included to allow them to be visible.
> > > 
> > > Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
> > > ---
> > >  xen/arch/x86/hvm/grant_table.c             | 3 +--
> > >  xen/arch/x86/include/asm/hvm/grant_table.h | 2 ++
> > >  2 files changed, 3 insertions(+), 2 deletions(-)
> > > 
> > > diff --git a/xen/arch/x86/hvm/grant_table.c
> > > b/xen/arch/x86/hvm/grant_table.c
> > > index 30d51d54a949..afe449d8882c 100644
> > > --- a/xen/arch/x86/hvm/grant_table.c
> > > +++ b/xen/arch/x86/hvm/grant_table.c
> > > @@ -9,8 +9,7 @@
> > > 
> > >  #include <xen/types.h>
> > > 
> > > -#include <public/grant_table.h>
> > > -
> > > +#include <asm/hvm/grant_table.h>
> > >  #include <asm/p2m.h>
> > 
> > This makes sense...
> > 
> > 
> > >  int create_grant_p2m_mapping(uint64_t addr, mfn_t frame,
> > > diff --git a/xen/arch/x86/include/asm/hvm/grant_table.h
> > > b/xen/arch/x86/include/asm/hvm/grant_table.h
> > > index 33c1da1a25f3..576aeb50adf4 100644
> > > --- a/xen/arch/x86/include/asm/hvm/grant_table.h
> > > +++ b/xen/arch/x86/include/asm/hvm/grant_table.h
> > > @@ -10,6 +10,8 @@
> > >  #ifndef __X86_HVM_GRANT_TABLE_H__
> > >  #define __X86_HVM_GRANT_TABLE_H__
> > > 
> > > +#include <asm/paging.h>
> > 
> > ... but I don't understand this one. It doesn't look like
> > asm/hvm/grant_table.h actually needs asm/paging.h ? Maybe it should be
> > included in xen/arch/x86/hvm/grant_table.c instead ?
> > 
> > 
> > >  #ifdef CONFIG_HVM
> > > 
> > >  int create_grant_p2m_mapping(uint64_t addr, mfn_t frame,
> > > --
> > > 2.34.1
> > > 
> 
> See this thread [1] for more context. There was no response, so I went for the
> route that
> made more sense to me. I guess you could say that only <xen/mm-frame.h> is
> actually needed
> to get a definition of mfn_t, but I put <asm/paging.h> as in the
> <asm/grant_table.h> header.
> 
> [1]
> https://lore.kernel.org/xen-devel/a4b6710b66ed05292388ac6882b940ec@bugseng.com/

I didn't realize it was for mfn_t. In that case it makes sense.

Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>


From xen-devel-bounces@lists.xenproject.org Tue Oct 03 20:43:47 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 03 Oct 2023 20:43:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612357.952267 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnmF1-0000eo-B5; Tue, 03 Oct 2023 20:43:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612357.952267; Tue, 03 Oct 2023 20:43: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 1qnmF1-0000eh-88; Tue, 03 Oct 2023 20:43:39 +0000
Received: by outflank-mailman (input) for mailman id 612357;
 Tue, 03 Oct 2023 20:43: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=BPao=FR=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qnmEz-0000eY-Jo
 for xen-devel@lists.xenproject.org; Tue, 03 Oct 2023 20:43: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 863a43d7-622d-11ee-98d2-6d05b1d4d9a1;
 Tue, 03 Oct 2023 22:43:36 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by ams.source.kernel.org (Postfix) with ESMTP id BD08CB81C0C;
 Tue,  3 Oct 2023 20:43:35 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 37921C433C8;
 Tue,  3 Oct 2023 20:43: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: 863a43d7-622d-11ee-98d2-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696365815;
	bh=OOJ8HydREvvAOPW5YurzwyTzOt6pMdWz4Zxnt+LUhlY=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=fRWmjs+7WFdMRYVa9NA4xmVTF3WLC7xHl1RCtLWAcP2udtcsFYfb7QhtQzwWHIQ7j
	 cstvMI+5+/OdSpt9K8bwaDdXZG9StQZGtZ1geGLV3v4XPtw4+zFmfioC/sK87GqRHl
	 Ap2PYx5rI4gx5XrFE78bhxVaaE4G5a2O58RxVTpKjoagqS1XpS4LuzPjksPpVfqi5p
	 kp59uGN+7z+L6YSkcYztY/hc9qJzxYQ7JgPoI+bwBMfERfRmMDiIeSZdvESIYBEsmP
	 ED23LuSk0ael3ESdLa3w3bxs/EGyijLmVwjR/ks51kOPgfVPzfXP6OsMcCYHED8TOR
	 pH2PvZdQc0wTQ==
Date: Tue, 3 Oct 2023 13:43:32 -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, 
    Simone Ballarin <simone.ballarin@bugseng.com>, 
    Doug Goldstein <cardoe@cardoe.com>, 
    Stefano Stabellini <sstabellini@kernel.org>, 
    Henry Wang <henry.wang@arm.com>
Subject: Re: [XEN PATCH] automation/eclair: add deviations for MISRA C:2012
 Rule 10.1
In-Reply-To: <83f4f9df2459f22690e6df98a43b3602c22bf27b.1696319475.git.federico.serafini@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2310031343170.2348112@ubuntu-linux-20-04-desktop>
References: <83f4f9df2459f22690e6df98a43b3602c22bf27b.1696319475.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 Tue, 3 Oct 2023, Federico Serafini wrote:
> Update the configuration of ECLAIR to deviate some violations of Rule
> 10.1 in accordance with docs/misra/rules.rst.
> 
> Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>

Acked-by: Stefano Stabellini <sstabellini@kernel.org>


> ---
>  automation/eclair_analysis/ECLAIR/deviations.ecl | 12 ++++++++++++
>  1 file changed, 12 insertions(+)
> 
> diff --git a/automation/eclair_analysis/ECLAIR/deviations.ecl b/automation/eclair_analysis/ECLAIR/deviations.ecl
> index d8170106b4..241aad6393 100644
> --- a/automation/eclair_analysis/ECLAIR/deviations.ecl
> +++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
> @@ -274,6 +274,18 @@ still non-negative."
>  -config=MC3R1.R10.1,etypes+={safe, "stmt(operator(logical)||node(conditional_operator||binary_conditional_operator))", "dst_type(ebool||boolean)"}
>  -doc_end
>  
> +-doc_begin="XEN only supports architectures where signed integers are representend using two's complement and all the XEN developers are aware of this."
> +-config=MC3R1.R10.1,etypes+={safe,
> +  "stmt(operator(and||or||xor||not||and_assign||or_assign||xor_assign))",
> +  "any()"}
> +-doc_end
> +
> +-doc_begin="See Section \"4.5 Integers\" of \"GCC_MANUAL\", where it says that \"Signed `>>' acts on negative numbers by sign extension. As an extension to the C language, GCC does not use the latitude given in C99 and C11 only to treat certain aspects of signed `<<' as undefined. However, -fsanitize=shift (and -fsanitize=undefined) will diagnose such cases. They are also diagnosed where constant expressions are required.\""
> +-config=MC3R1.R10.1,etypes+={safe,
> +  "stmt(operator(shl||shr||shl_assign||shr_assign))",
> +  "any()"}
> +-doc_end
> +
>  ### Set 3 ###
>  
>  #
> -- 
> 2.34.1
> 


From xen-devel-bounces@lists.xenproject.org Tue Oct 03 20:46:25 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 03 Oct 2023 20:46:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612363.952277 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnmHd-0001Ey-O9; Tue, 03 Oct 2023 20:46:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612363.952277; Tue, 03 Oct 2023 20:46: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 1qnmHd-0001Er-L2; Tue, 03 Oct 2023 20:46:21 +0000
Received: by outflank-mailman (input) for mailman id 612363;
 Tue, 03 Oct 2023 20:46: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=BPao=FR=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qnmHc-0001El-Dy
 for xen-devel@lists.xenproject.org; Tue, 03 Oct 2023 20:46:20 +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 e5c099b6-622d-11ee-9b0d-b553b5be7939;
 Tue, 03 Oct 2023 22:46:17 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by sin.source.kernel.org (Postfix) with ESMTP id A3ECACE13FE;
 Tue,  3 Oct 2023 20:46:15 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 0EA90C433C8;
 Tue,  3 Oct 2023 20:46: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: e5c099b6-622d-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696365974;
	bh=fMzg/IHPf9jCIQPQiveaKSxlZ8+YcFiE1As8yVoEpMk=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=mnHNkp54HXMwCt5aveZ99WVcLEGpBfUROWT+gifQET7SNzphQfIrLGmpSOHMa/77e
	 p0yTqd1cBhYsQubCvL76yRHwheSTcRp8UhKhUslbej9AEoBgsAeqmmOTPTsNHcc2cC
	 SQPkhE0bta8M465mgQRHuo5FeLWfVvviYkBvXyONswhNpvLui5IVPR/jGSfhD1mRja
	 pwjaI7egDZke+o5DVgIioQw7jAZ6OBWTMhRXaffpPGRNZBtJaYWjNd2wrEOqZheeON
	 R4L35SEugJxe5FZSDceryTwEvTMQufx9WCsDU7MTYG6Wa3w7r8wcuaQw/eml1da5kX
	 7A6JKLZnfjm/A==
Date: Tue, 3 Oct 2023 13:46:11 -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, Henry.Wang@arm.com, 
    Simone Ballarin <simone.ballarin@bugseng.com>, 
    Doug Goldstein <cardoe@cardoe.com>, 
    George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>, 
    Wei Liu <wl@xen.org>
Subject: Re: [XEN PATCH] xen: Add SAF deviations for MISRA C:2012 Rule 7.1
In-Reply-To: <338d8e574db943a86c7605e4c6d9a299d45f067d.1696347345.git.nicola.vetrini@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2310031345190.2348112@ubuntu-linux-20-04-desktop>
References: <338d8e574db943a86c7605e4c6d9a299d45f067d.1696347345.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 Tue, 3 Oct 2023, Nicola Vetrini wrote:
> As specified in rules.rst, these constants can be used
> in the code.
> Their deviation is now accomplished by using a SAF comment,
> rather than an ECLAIR configuration.
> 
> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>

"SAF" discussion aside that can be resolved elsewhere:

Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>


> ---
>  automation/eclair_analysis/ECLAIR/deviations.ecl | 6 ------
>  docs/misra/safe.json                             | 8 ++++++++
>  xen/arch/x86/hvm/svm/emulate.c                   | 6 +++---
>  xen/arch/x86/hvm/svm/svm.h                       | 9 +++++++++
>  xen/common/inflate.c                             | 4 ++--
>  5 files changed, 22 insertions(+), 11 deletions(-)
> 
> diff --git a/automation/eclair_analysis/ECLAIR/deviations.ecl b/automation/eclair_analysis/ECLAIR/deviations.ecl
> index d8170106b449..fbb806a75d73 100644
> --- a/automation/eclair_analysis/ECLAIR/deviations.ecl
> +++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
> @@ -132,12 +132,6 @@ safe."
>  # Series 7.
>  #
>  
> --doc_begin="Usage of the following constants is safe, since they are given as-is
> -in the inflate algorithm specification and there is therefore no risk of them
> -being interpreted as decimal constants."
> --config=MC3R1.R7.1,literals={safe, "^0(007|37|070|213|236|300|321|330|331|332|333|334|335|337|371)$"}
> --doc_end
> -
>  -doc_begin="Violations in files that maintainers have asked to not modify in the
>  context of R7.2."
>  -file_tag+={adopted_r7_2,"^xen/include/xen/libfdt/.*$"}
> diff --git a/docs/misra/safe.json b/docs/misra/safe.json
> index 39c5c056c7d4..7ea47344ffcc 100644
> --- a/docs/misra/safe.json
> +++ b/docs/misra/safe.json
> @@ -20,6 +20,14 @@
>          },
>          {
>              "id": "SAF-2-safe",
> +            "analyser": {
> +                "eclair": "MC3R1.R7.1"
> +            },
> +            "name": "Rule 7.1: constants defined in specifications, manuals, and algorithm descriptions",
> +            "text": "It is safe to use certain octal constants the way they are defined in specifications, manuals, and algorithm descriptions."
> +        },
> +        {
> +            "id": "SAF-3-safe",
>              "analyser": {},
>              "name": "Sentinel",
>              "text": "Next ID to be used"
> diff --git a/xen/arch/x86/hvm/svm/emulate.c b/xen/arch/x86/hvm/svm/emulate.c
> index aa2c61c433b3..c5e3341c6316 100644
> --- a/xen/arch/x86/hvm/svm/emulate.c
> +++ b/xen/arch/x86/hvm/svm/emulate.c
> @@ -90,9 +90,9 @@ unsigned int svm_get_insn_len(struct vcpu *v, unsigned int instr_enc)
>          if ( !instr_modrm )
>              return emul_len;
>  
> -        if ( modrm_mod       == MASK_EXTR(instr_modrm, 0300) &&
> -             (modrm_reg & 7) == MASK_EXTR(instr_modrm, 0070) &&
> -             (modrm_rm  & 7) == MASK_EXTR(instr_modrm, 0007) )
> +        if ( modrm_mod       == MASK_EXTR(instr_modrm, 0300) && /* SAF-2-safe */
> +             (modrm_reg & 7) == MASK_EXTR(instr_modrm, 0070) && /* SAF-2-safe */
> +             (modrm_rm  & 7) == MASK_EXTR(instr_modrm, 0007) )  /* SAF-2-safe */
>              return emul_len;
>      }
>  
> diff --git a/xen/arch/x86/hvm/svm/svm.h b/xen/arch/x86/hvm/svm/svm.h
> index d2a781fc3fb5..d0623b72ccfa 100644
> --- a/xen/arch/x86/hvm/svm/svm.h
> +++ b/xen/arch/x86/hvm/svm/svm.h
> @@ -57,14 +57,23 @@ static inline void svm_invlpga(unsigned long linear, uint32_t asid)
>  #define INSTR_INT3        INSTR_ENC(X86EMUL_OPC(   0, 0xcc), 0)
>  #define INSTR_ICEBP       INSTR_ENC(X86EMUL_OPC(   0, 0xf1), 0)
>  #define INSTR_HLT         INSTR_ENC(X86EMUL_OPC(   0, 0xf4), 0)
> +/* SAF-2-safe */
>  #define INSTR_XSETBV      INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0321)
> +/* SAF-2-safe */
>  #define INSTR_VMRUN       INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0330)
> +/* SAF-2-safe */
>  #define INSTR_VMCALL      INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0331)
> +/* SAF-2-safe */
>  #define INSTR_VMLOAD      INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0332)
> +/* SAF-2-safe */
>  #define INSTR_VMSAVE      INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0333)
> +/* SAF-2-safe */
>  #define INSTR_STGI        INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0334)
> +/* SAF-2-safe */
>  #define INSTR_CLGI        INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0335)
> +/* SAF-2-safe */
>  #define INSTR_INVLPGA     INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0337)
> +/* SAF-2-safe */
>  #define INSTR_RDTSCP      INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0371)
>  #define INSTR_INVD        INSTR_ENC(X86EMUL_OPC(0x0f, 0x08), 0)
>  #define INSTR_WBINVD      INSTR_ENC(X86EMUL_OPC(0x0f, 0x09), 0)
> diff --git a/xen/common/inflate.c b/xen/common/inflate.c
> index 8fa4b96d12a3..be6a9115187e 100644
> --- a/xen/common/inflate.c
> +++ b/xen/common/inflate.c
> @@ -1201,8 +1201,8 @@ static int __init gunzip(void)
>      magic[1] = NEXTBYTE();
>      method   = NEXTBYTE();
>  
> -    if (magic[0] != 037 ||
> -        ((magic[1] != 0213) && (magic[1] != 0236))) {
> +    /* SAF-2-safe */
> +    if (magic[0] != 037 || ((magic[1] != 0213) && (magic[1] != 0236))) {
>          error("bad gzip magic numbers");
>          return -1;
>      }
> -- 
> 2.34.1
> 


From xen-devel-bounces@lists.xenproject.org Tue Oct 03 20:54:55 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 03 Oct 2023 20:54:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612370.952287 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnmPn-0003AJ-Fp; Tue, 03 Oct 2023 20:54:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612370.952287; Tue, 03 Oct 2023 20:54: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 1qnmPn-0003AC-D4; Tue, 03 Oct 2023 20:54:47 +0000
Received: by outflank-mailman (input) for mailman id 612370;
 Tue, 03 Oct 2023 20:54: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=BPao=FR=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qnmPm-0003A6-7t
 for xen-devel@lists.xenproject.org; Tue, 03 Oct 2023 20:54:46 +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 14071368-622f-11ee-98d2-6d05b1d4d9a1;
 Tue, 03 Oct 2023 22:54: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 D8F53CE1A23;
 Tue,  3 Oct 2023 20:54:38 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 7660FC433C8;
 Tue,  3 Oct 2023 20:54: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: 14071368-622f-11ee-98d2-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696366478;
	bh=hATmF6seIpNQiyzKEKQM/RcZTi14zA7ILIDf7vLwd3M=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=pW5imLTBfkQ7DAhkd0nWutKjzhUc47MSLA03VZ1PCbVn8HtbkWj18tK6GbwKvD/Rc
	 qJpVWEklsLPe8PKvVkyoW1P8D2QFIUd1HAkNtqusANKf9Fcjhecxo9kK51oiDU3aeR
	 5MXGbvubWFE6C6bgVd1drN9RjXdNO1qCFUpu3dO1blg7lz8+Ctbc2xiJ+9VVr4YKYi
	 oThjEB1gpKobuHMZxzD9QKyAj2pu1vIFmpmDGrFKIVAc0+5QAnFr8aXJLIYZS8aS+L
	 1lM6fp0EhxUQ9w3xO/iWWs8yeDPTACeBaIoDeVn6OzhqwLRB9EfC4wy9JOZWLSJ5x/
	 N+lgJFag3JzLw==
Date: Tue, 3 Oct 2023 13:54:34 -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, 
    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>, Shawn Anastasio <sanastasio@raptorengineering.com>, 
    =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>, 
    Henry Wang <henry.wang@arm.com>
Subject: Re: [XEN PATCH v3] xen/mm: address violations of MISRA C:2012 Rules
 8.2 and 8.3
In-Reply-To: <eedcfeb8d1c81527b7e18fcc0eca252577f00035.1696344012.git.federico.serafini@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2310031354260.2348112@ubuntu-linux-20-04-desktop>
References: <eedcfeb8d1c81527b7e18fcc0eca252577f00035.1696344012.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 Tue, 3 Oct 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 Wed Oct 04 02:26:12 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 04 Oct 2023 02:26:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612415.952314 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnra8-0008Bp-St; Wed, 04 Oct 2023 02:25:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612415.952314; Wed, 04 Oct 2023 02: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 1qnra8-0008Bh-Nc; Wed, 04 Oct 2023 02:25:48 +0000
Received: by outflank-mailman (input) for mailman id 612415;
 Wed, 04 Oct 2023 02:25: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 1qnra6-0008BX-Vs; Wed, 04 Oct 2023 02:25: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 1qnra6-00034F-PV; Wed, 04 Oct 2023 02:25: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 1qnra6-0007nj-D9; Wed, 04 Oct 2023 02:25:46 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qnra6-0001dW-Cf; Wed, 04 Oct 2023 02:25: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=w7S2fPJOIO94cc+EHJsvvp3WGzMS6jm9LGGbUWfoF1s=; b=sC+YexXP70usX3cySgH+/ER9TV
	8To0HYq4d1d1EKE5weqS+P0r8Yts3lfUAQT2d4A2MTwbWPb/PpkO6keS2uyKcobvxhMn0n4YNnhws
	KJKRDocwDZwtvrOw9tQhGl8+95vjSGVc2GayXv0UAGquM54r32/bwZkqmXPZYzZpBdF4=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183255-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 183255: tolerable FAIL - PUSHED
X-Osstest-Failures:
    linux-linus:test-arm64-arm64-xl-vhd:xen-boot:fail:heisenbug
    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-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-armhf-armhf-libvirt: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-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-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-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-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-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-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-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw: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-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-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=5e62ed3b1c8a397185af53d6b94f04b9ff21ec7d
X-Osstest-Versions-That:
    linux=ce36c8b149873b50f2a4b9818eb3dcdd74ddd5a3
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 04 Oct 2023 02:25:46 +0000

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

Failures :-/ but no regressions.

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

Tests which did not succeed, but are not blocking:
 test-arm64-arm64-xl-vhd     14 migrate-support-check fail in 183257 never pass
 test-arm64-arm64-xl-vhd 15 saverestore-support-check fail in 183257 never pass
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183245
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183245
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183245
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183245
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183245
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183245
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183245
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183245
 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-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-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-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-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-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-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     15 migrate-support-check        fail   never pass
 test-armhf-armhf-libvirt-raw 14 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-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-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                5e62ed3b1c8a397185af53d6b94f04b9ff21ec7d
baseline version:
 linux                ce36c8b149873b50f2a4b9818eb3dcdd74ddd5a3

Last test of basis   183245  2023-10-03 03:22:35 Z    0 days
Testing same since   183255  2023-10-03 17:43:40 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Benjamin Block <bblock@linux.ibm.com>
  Dinghao Liu <dinghao.liu@zju.edu.cn>
  Junxiao Bi <junxiao.bi@oracle.com>
  Karan Tilak Kumar <kartilak@cisco.com>
  Linus Torvalds <torvalds@linux-foundation.org>
  Martin K. Petersen <martin.petersen@oracle.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                                      fail    
 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
   ce36c8b14987..5e62ed3b1c8a  5e62ed3b1c8a397185af53d6b94f04b9ff21ec7d -> tested/linux-linus


From xen-devel-bounces@lists.xenproject.org Wed Oct 04 08:14:11 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 04 Oct 2023 08:14:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612433.952324 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnx13-0003bJ-OC; Wed, 04 Oct 2023 08:13:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612433.952324; Wed, 04 Oct 2023 08:13: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 1qnx13-0003bC-Je; Wed, 04 Oct 2023 08:13:57 +0000
Received: by outflank-mailman (input) for mailman id 612433;
 Wed, 04 Oct 2023 08:13: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=O8y1=FS=citrix.com=prvs=634504905=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qnx12-0003b1-VL
 for xen-devel@lists.xenproject.org; Wed, 04 Oct 2023 08:13:57 +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 f3ed1867-628d-11ee-98d3-6d05b1d4d9a1;
 Wed, 04 Oct 2023 10:13:54 +0200 (CEST)
Received: from mail-mw2nam04lp2168.outbound.protection.outlook.com (HELO
 NAM04-MW2-obe.outbound.protection.outlook.com) ([104.47.73.168])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 04 Oct 2023 04:13:45 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by PH0PR03MB6573.namprd03.prod.outlook.com (2603:10b6:510:b1::8) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Wed, 4 Oct
 2023 08:13:40 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::66ca:3a42:baeb:9ecf]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::66ca:3a42:baeb:9ecf%6]) with mapi id 15.20.6838.030; Wed, 4 Oct 2023
 08:13: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: f3ed1867-628d-11ee-98d3-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1696407234;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=jj+YFxbeddV10CbJV7fsht+hAg1WQVJIegWrdF2AqiY=;
  b=dwa84STyhLGwDifZJbXOAl23POL1QZgbwlZj5SdvhUpCZejxrTt/eFn7
   2heRh6TjNqaXoqc6Q69x+weCSSt3KA2fSTTa2tg/T2oEG3AYAOvdwY7m+
   YIae4Bbo0opAtyuN6xoMuvfXnTEEBtkV/o9JXIwWtgwa4K7Uym+vL/Uuk
   8=;
X-CSE-ConnectionGUID: CFHO8LoNSLm6XA0Un6QEog==
X-CSE-MsgGUID: /cwS0uhtTa+lF1umlES/0Q==
X-IronPort-RemoteIP: 104.47.73.168
X-IronPort-MID: 127337172
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:m8psua0DKxLcVyBHbvbD5UVwkn2cJEfYwER7XKvMYLTBsI5bpz0Fy
 jQfCmGBPfjeamryftl1Oo6//E0PvsXczoM1TwNqpC1hF35El5HIVI+TRqvS04F+DeWYFR46s
 J9OAjXkBJppJpMJjk71atANlVEliOfQAOK6UbaYUsxIbVcMYD87jh5+kPIOjIdtgNyoayuAo
 tq3qMDEULOf82cc3lk8teTb83uDgNyo4GlD5wRmOagR1LPjvyJ94Kw3dPnZw0TQGuG4LsbiL
 87fwbew+H/u/htFIrtJRZ6iLyXm6paLVeS/oiI+t5qK23CulQRrukoPD9IOaF8/ttm8t4sZJ
 OOhF3CHYVxB0qXkwIzxWvTDes10FfUuFLTveRBTvSEPpqFvnrSFL/hGVSkL0YMkFulfKk9u0
 qw8LxY2ShXdt8vu/bTlc8RriZF2RCXrFNt3VnBI6xj8VapjZK+ZBqLA6JlfwSs6gd1IEbDGf
 c0FZDFzbRPGJRpSJlMQD5F4l+Ct7pX9W2QA9BTJ+uxouC6KklwZPLvFabI5fvSQQspYhACAr
 3/u9GXlGBAKcteYzFJp91r13LCUxnyiB9h6+LuQsfV1uwWOxnAvAV4SewKmpP2UsQnmYocKQ
 6AT0m90xUQoz2SmTtT4HA21plaB4wZaUN1Ve8Uq5QfIxqfK7gKxAmkfUiUHeNEgrNUxRzEhy
 hmOhdyBLSd0rLSfRHaZ97GVhTC/Iy4YKSkFfyBsZQkY59jupqkjgxSJScxseIa/g8fpAzj2z
 3aPpTInmrQIpccR0uOw+lWvqwyrop/FXwsk/DL9V2iu7h56TIO9bonu4l/ehd5HKIuaVVCHs
 GIzh9mF7OsOAJeOkwSAWOwIWrqu4p643Cb0hFduG9wk6G6r8nv7IYRIumggdAFuL9oOfiLvb
 AnLowRN6ZRPPXysK6hqf4a2DMdsxq/lfTj4as3pghN1SsAZXGe6EOtGPCZ8A0iFfJAQrJwC
IronPort-HdrOrdr: A9a23:Ci6mJKD8cFPwXf7lHelo55DYdb4zR+YMi2TDt3oddfU1SL38qy
 nKpp4mPHDP5wr5NEtPpTniAtjjfZq/z/5ICOAqVN/PYOCPggCVxepZnOjfKlPbehEX9oRmpN
 1dm6oVMqyMMbCt5/yKnDVRELwbsaa6GLjDv5a785/0JzsaE52J6W1Ce2GmO3wzfiZqL7wjGq
 GR48JWzgDQAkj+PqyAdx84t/GonayzqK7b
X-Talos-CUID: =?us-ascii?q?9a23=3AzdOU5Gi385wsqkLsySI/1UPxGzJuWVP96yf0JGm?=
 =?us-ascii?q?DLWM3eJTNdFnOwY5jnJ87?=
X-Talos-MUID: 9a23:JoqotwhLPEKAub1Z27oMfsMpc8x32PyzCFwxmNYClZCZMChdAHDFtWHi
X-IronPort-AV: E=Sophos;i="6.03,199,1694750400"; 
   d="scan'208";a="127337172"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=AT5AF2caR99mazJ7PEtr3f8+sq0bH97qzur+rbRnxhfZ54sguC5y/iq8d1xneQNk2Z0EWiSKrz1EywKDQngVnv2WVCzMYM59RBOIavgEa7nbOc+jXfPYv4YrU2xtH8a2IJVYVNGMNKN9D/qbugWOV8qEClncn0BNuSptQyN56U2jGH9rJZA4OPeOsi4cE4/hN4n/qS01bfDQ5is7Vff7O3YX7sAwOgZEYCpXCZHQutYDZFKqKFJ7a4/4/TVtXUlIUFZ5tU/LjuN6+Rg9CVfMT+DEfuewtZUWa1+x8MTQgnXJJaTlFHmVxtSxwFI9c/IGXlEFWim4u/oArAu5RHOrRA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=kp65wMsZlM232+31C8VxqOQgiHgmxud/yoiUbxhO2Pk=;
 b=MurMGma2ld67sBiLQjg9JLyeJaxWUgYhPBU4PMNStk6Bx+kke4U6oPVZJrv3q6j5zuKScx0tLaZNZ0ztwqBCBD0WncXPkQyS8fm4dslmxt9HljTzbY35QGumI7e4Zd83xvN/INGUiPIoU/CLR1tC2NAPa9DyMopH+p8CWqVm6nqTAWQV1iZcQ4Nnl0d7O0vmLfzpPKfjPK0zxLFRR4TxTlolvOzA8AoXBoHMZ5wfHforZCorQg9HVT0FU+IUY7zTLte4bpeJ9Dbk1f2Ky51mPVJ9EtlMaSN2qvglDHtNsHB7yRosZd8w2PMrgIq/WIa0AnIbejhoOuzNAe5oKrhAYg==
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=kp65wMsZlM232+31C8VxqOQgiHgmxud/yoiUbxhO2Pk=;
 b=xkRESnr39SfC1a9rqc0a8Lx+AX2Q82O3mdbxpoeygmX6XYRDa9yeF4btl1Ub0HJBceCNVHxY8GbpLJC4cGl2Y6SRqr3SwaNmJAQNB7c2cX174GeZFlosjPT3uy7HMxb8rZdPlUAfDCYDm8kUCm0mpdCdhJIGI9QwabtTPlpQb6k=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Wed, 4 Oct 2023 10:13:34 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Elliott Mitchell <ehem+xen@m5p.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>,
	Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>
Subject: Re: Issue with shared information page on Xen/ARM 4.17
Message-ID: <ZR0erl_OSkNgIQjx@MacBookPdeRoger>
References: <ZRY7Ls3p6M6pakMq@mattapan.m5p.com>
 <ZRvQNKyYpLDVTs0i@MacBookPdeRoger>
 <ZRxpC7ukhiYvzz5m@mattapan.m5p.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <ZRxpC7ukhiYvzz5m@mattapan.m5p.com>
X-ClientProxiedBy: LO4P123CA0459.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:1aa::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_|PH0PR03MB6573:EE_
X-MS-Office365-Filtering-Correlation-Id: 889a87ac-eec6-4ac6-47f3-08dbc4b1d148
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	28fUrvc3rAXu8AwxzJHHYhjK/I3FIqel+bSc7g+1KLKuYTa3Y7HT8fc9Q1aItnO5b6A+vhxKU/WNTaNbWGwjI5WTrTL6hfWATGfMaY4ks8a6VHcWYomNaEF1gctH5AkHPm8YlR3bluEjP5HrswLo2YfYmzhsIBU5Xr5Rr9O+eS70519z2FCy3PDilvBtDX1E4IOIxOE32VeWuXZYTW8MJOqRJ7pwzPdgpgaIcbzrgBon5OMWnIXwQNHoPZn40kgyhxinaihJFXH7Ck6xP+PP6oSpfpVq3h9anbm+E8lnpjcbIoIjy737B3O3QqXw7BPdEt7UrUs2fD+q2+jlaKJsMRzc3YgQBlrArFA8JjQ0oq1E8CTZ3HF147cemhn1wtuPmZLiCMpbI6CO5wRuLrDaA12ym0TJTOZzlhbBDel61aoXpzftaFhJr8cEed1bnRVXY282uIQMbrdqb9QRUB1cJdOKg1Z2CO3ZSGRmZ6zOcfgM2rySoDLDVcA9pmGxsPj7DJx01Ps2Ku2J/YT7MtQFkYjQLbGxjoYvB0Rumye0xUGXhPIRboJnM3KDcNZ7XfSY
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)(39860400002)(396003)(366004)(346002)(136003)(230922051799003)(64100799003)(451199024)(1800799009)(186009)(316002)(6486002)(6666004)(66556008)(4326008)(2906002)(54906003)(66476007)(8676002)(66946007)(33716001)(8936002)(478600001)(6512007)(6506007)(41300700001)(5660300002)(85182001)(9686003)(26005)(82960400001)(86362001)(83380400001)(38100700002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?MlUrNEY2bURSUFlLRlZ0aytvVW9EbUdkRWhNUGVuVDdHTWJlajRFakFtQ3d4?=
 =?utf-8?B?VHJoV2prd2NoVVRxckcwNTcrcmptRnF1d09XaTgreC9IZ2FIYml1djdURWpX?=
 =?utf-8?B?dm50ek96T25zQlBnd3kyNTR2SmxVdy84dFNJcEk3TjlBcUNqZHZqbVhaVlRm?=
 =?utf-8?B?L1RaYnRKRDQya3U0SlpwMkpLalEyT0Z5dGl4SEQxVVVGQWdUcWZ2Qys2L1FI?=
 =?utf-8?B?TGk2LzZKaFdLei9tRW00bndZcGhYN3lWNFgxY05RZE00elZDb2JqREdpR2Fm?=
 =?utf-8?B?RWMxV1Z4MXZkdlNmZDFLMjAzcndzeEN1TnRHM1ROa0FweCs5ei83am1qODZx?=
 =?utf-8?B?R2p3VDg4dCtuTGdmWFl5cUx2ajlLeHc1bzE1WDdwM0hZalNKTlk2VWxVT04x?=
 =?utf-8?B?L3FGTEFNaHhmSExDZSs0dGpZVEpzRUpVVVZxaCtrSmdoT0Z1Q0lvOWRQZENG?=
 =?utf-8?B?K04xdlpwYXRjQWVBckJGOWlMSVgyNUtweWkvMlN6dHdaZ3E0UmZDaHB6OFpr?=
 =?utf-8?B?TXZlNEpFaDRKQWltVEtmL3dERmZ0eFVVVDc2OUxPZHpYSElEeVdmU3dXcXJs?=
 =?utf-8?B?S0JpNjM0SWREQUZBU2c4WXhhS1g1dW9nOXN4dkdFY3duK2N4MU5ZUWJpd2lP?=
 =?utf-8?B?RXJUSi9GM1FMWVhiM2U3ZjVVWEVyajMrOGs1QzExZkdrNWpobG9xNFczbE54?=
 =?utf-8?B?ZHJLc2orZDJoZEpsUXczbFJaUzdSNjJXSE9SSXZKd2tDZnkvZUpDNFdsckgw?=
 =?utf-8?B?N1h6UHFUV0crWnQxNytuSCszNEVmSTk0ZElIN0lSUTYwMjl1TEtxcFFIakEz?=
 =?utf-8?B?aVd0bTBvdGZkcVM4R2RkK2czYmgwM01QOGpWY3FKUm05Nml2d0VzVWtkQUFJ?=
 =?utf-8?B?akxsbXBRWUdFbjNKNC9ONldMdmVhcWNXbjFtWmNaM082MmIvUk0wNnZrNGhV?=
 =?utf-8?B?SmZvLzF2ZHJIMXdxa2dTTVd1NDhFeEZhMERnc0FNenR0WkNEbWY4TkdFcGNi?=
 =?utf-8?B?QVE1MVpHZlZFQkRtTmFPeXZUZ3J6Um1yN1dzdVpuOEFNTnhLRFo1ZDFBMWRp?=
 =?utf-8?B?a1NQOFJsVktTcXY1YWFvQzhHWko1cU5HYWlEdGliYkowandsT09MS3ZSTTFH?=
 =?utf-8?B?M1JYWWZvd3FrOTByUTNHYWVBaCtzNzFqcWJXYlMwVUZ5ZmY1YXVacmcwelcw?=
 =?utf-8?B?eTgvZXk0cEI0aEl5VTFoZDhvRzdiM2s4cXJGRlk0YWc0dUhDL0liRzFBNE83?=
 =?utf-8?B?Q2RIalJnMGhlWThoVFZxcTZKOVZOd2lhZkVqRkdvd0dQdmZBNFBqdlgyNDVQ?=
 =?utf-8?B?NDNITENHTjBCclpndmJWM3RYWllIREFEK1ZzdGdEM2RwR1NOdWR2TXpjY2FV?=
 =?utf-8?B?aFhRWFJYeFl0OVI3M1lKNUV1SGJyUjNmeVBMMXlMSUVmQ2FJQVkwblk4VHFJ?=
 =?utf-8?B?Y0ZqWi9NcSs3RXh3V1ZDbGQrVWRXclJ3UGRsUktJRGhQcThFdVlyU1d6SFNF?=
 =?utf-8?B?Z2IzQkFwaCtGby9tODE5UTRpR0JRaG9SdGlIeHVmVkNsM0wwZGRYcWRMZEwr?=
 =?utf-8?B?RmRoS2k0a3VMY2ZZSFN2ZTJUVTV4R1NPdmVFMDhVTkE1U2NvaHo2LzF0Vk5V?=
 =?utf-8?B?SWExZHE2c1JRbllHL2lVMElZQXBIZnVBT21FczBWRlBVNXk1cmJCUHFlNXJi?=
 =?utf-8?B?bGNoWGpjZ0c2anB3YXBKdVBheWd0ZW5VRFRLY3JFTmtWNHpiMzZnYys3VnBH?=
 =?utf-8?B?RlFUQTk0dURET2M0SHo3S1RLVnl1aXlVS1JiZklBdUxXa1pnRUV5YXFqQkFY?=
 =?utf-8?B?Z0ZaVkJGV0pnSWRHdDBsem01OGMwTjFiOFFzWm05REZ2cGxVRnpsdzVWeU5X?=
 =?utf-8?B?ajZvUU4yNnJhQkV4eHFBQVJSYlE5ZjYwSi9oWXp0WTRmZVNBVENodndvS3Ur?=
 =?utf-8?B?U2dsMFU3Z2x4eFlRZmo3MWp1WTFLc09kdDFYTjlFcjIxckUyeU9pUDUwUjY1?=
 =?utf-8?B?TTZhenZGNmtmaGViYnp2RXBaMjM5OWIwZGF2RXhWVG9ZUjg2WC9OeGx1S2pT?=
 =?utf-8?B?RnNsUVBxeWQ0WlF4Vm5RYXFEZ2VJUmEvaGwwZW1nWklVWWJ1aUhXUlpydmYz?=
 =?utf-8?Q?CCw0rIJn1ZcV0DhQProDklH/0?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	xaJc0QPmBlcJfNqWrm65kpVzInsxSlokKeg7oGw1W7RpUx3K9PH7NChPR2VWd7pbj8yPr4CCSVQIO6cx3z904MPK2fJhFHuMKm5mnjafq566rlrkIx+v/tAjGbM6r+t2xHRQtQW7JlU+6tUQfkNgv5IDORX7XsLW7xGJzU4FZ4ze0JjngZxnFJ3OABRiS4tvWB4In0lak9of2BhnSfY844/mhN98h9RjsoEKbWwN3F9rbB0WmWfD67nvFaieIFvluGUXgOvamDSBc/q+8UMVaN9pJuNjMR2ObWnRB9Q2C0TNbdSdic6Et8NS4lN4w3780gpW8nq26L+0JH396MqZyVBSKDfGdLo3tZQT9x/Zt4b7rMp5cA81nFUIW7c+OBiSmcMvTMw7VttK0dJmrMhNxB0S7wwHXLR4YVkyTnCWUfa6LDw3iF+Wf8MNFD0KfIDyLyvtZkGjvAHb6nkM00xAuotxEBAHJjr+XlwdNeqDNHfpe48+OUp5zSqk5h02+yrdqvsfHEm+DI77PsQ8+0IWlPKOjHD0xaRZQgR3XhEjuyMk9cwPzcG4+OimTbXzpt27tGpASZSxw7YbcJhpggb4QGoH4QOo060bPceNRtEYMt4lComZoQ2xYxAynqtFLG1cz3kYIt7148bcOAhnk2CS00Dw8yVuup4W7iUPz8zA7hYvpIpJbWi0pNf5bioDWRzANrZJDuZrErLbtCGJkreSOCLDxm/EpSMGnZqadU1MtB2/AhX4PKvSPYDYbTTbNYOHsRKWh1vbPQCSwNWmVaX5eY8MCkDSF73FqTiGICQEZjwBneWDcjDesyKszO4Q0pNF8HmDh2Pn6U2T+DUnHp4ZTAjycPYj5Zpukdk1eFn7IHSe9w8N0MyhPzSBfK6T4HHrZNwbFjfrbv2pk2i49XJf9A==
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 889a87ac-eec6-4ac6-47f3-08dbc4b1d148
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Oct 2023 08:13:40.5501
 (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: xlNRbmMNF2MvztacnABsk166ZmAMqA+iYxLHxmvVoTL8+HnsN+P4F+d061asP6hQY8X3uSUekO3/vLLZlkrpEQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR03MB6573

On Tue, Oct 03, 2023 at 12:18:35PM -0700, Elliott Mitchell wrote:
> On Tue, Oct 03, 2023 at 10:26:28AM +0200, Roger Pau Monné wrote:
> > On Thu, Sep 28, 2023 at 07:49:18PM -0700, Elliott Mitchell wrote:
> > > 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.
> > 
> > This is due to 71320946d5edf AFAICT.
> 
> Yes.  While the -EBUSY line may be the one triggering, I'm unsure why.
> This seems a fairly reasonable change, so I had no intention of asking
> for a revert (which likely would have been rejected).  There is also a
> real possibility the -EBUSY comes from elsewhere.  Could also be
> 71320946d5edf caused a bug elsewhere to be exposed.

A good way to know would be to attempt to revert 71320946d5edf and see
if that fixes your issue.

Alternatively you can try (or similar):

diff --git a/xen/arch/arm/mm.c b/xen/arch/arm/mm.c
index 6ccffeaea57d..105ef3faecfd 100644
--- a/xen/arch/arm/mm.c
+++ b/xen/arch/arm/mm.c
@@ -1424,6 +1424,8 @@ int xenmem_add_to_physmap_one(
                 page_set_xenheap_gfn(mfn_to_page(mfn), gfn);
         }
         else
+        {
+            printk("%u already mapped\n", space);
             /*
              * Mandate the caller to first unmap the page before mapping it
              * again. This is to prevent Xen creating an unwanted hole in
@@ -1432,6 +1434,7 @@ int xenmem_add_to_physmap_one(
              * to unmap it afterwards.
              */
             rc = -EBUSY;
+        }
         p2m_write_unlock(p2m);
     }
 

> > > 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?
> > 
> > I think the issue is that you are mapping the shared info page over a
> > guest RAM page, and in order to do that you would fist need to create
> > a hole and then map the shared info page.  IOW: the issue is not with
> > edk2 not having unmapped the page, but with FreeBSD trying to map the
> > shared_info over a RAM page instead of a hole in the p2m.  x86
> > behavior is different here, and does allow mapping the shared_info
> > page over a RAM gfn (by first removing the backing RAM page on the
> > gfn).
> 
> An interesting thought.  I thought I'd tried this, but since I didn't see
> such in my experiments list.  What I had tried was removing all the pages
> in the suggested mapping range.  Yet this failed.

Yeah, I went too fast and didn't read the code correctly, it is not
checking that the provided gfn is already populated, but whether the
mfn intended to be mapped is already mapped at a different location.

> Since this seemed reasonable, I've now tried and found it fails.  The
> XENMEM_remove_from_physmap call returns 0.

XENMEM_remove_from_physmap returning 0 is fine, but it seems to me
like edk2 hasn't unmapped the shared_info page.  The OS has no idea
at which position the shared_info page is currently mapped, and hence
can't do anything to attempt to unmap it in order to cover up for
buggy firmware.

edk2 should be the entity to issue the XENMEM_remove_from_physmap
against the gfn where it has the shared_info page mapped.  Likely
needs to be done as part of ExitBootServices() method.

FWIW, 71320946d5edf is an ABI change, and as desirable as such
behavior might be, a new hypercall should have introduced that had the
behavior that the change intended to retrofit into
XENMEM_add_to_physmap.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Wed Oct 04 08:22:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 04 Oct 2023 08:22:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612438.952334 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnx8y-00059c-Fq; Wed, 04 Oct 2023 08:22:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612438.952334; Wed, 04 Oct 2023 08: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 1qnx8y-00059V-Cf; Wed, 04 Oct 2023 08:22:08 +0000
Received: by outflank-mailman (input) for mailman id 612438;
 Wed, 04 Oct 2023 08:22: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=O8y1=FS=citrix.com=prvs=634504905=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qnx8x-00059N-Oo
 for xen-devel@lists.xenproject.org; Wed, 04 Oct 2023 08:22:07 +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 183972c1-628f-11ee-9b0d-b553b5be7939;
 Wed, 04 Oct 2023 10:22:04 +0200 (CEST)
Received: from mail-dm6nam10lp2106.outbound.protection.outlook.com (HELO
 NAM10-DM6-obe.outbound.protection.outlook.com) ([104.47.58.106])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 04 Oct 2023 04:22:00 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by SJ0PR03MB5423.namprd03.prod.outlook.com (2603:10b6:a03:28c::5)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Wed, 4 Oct
 2023 08:21:58 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::66ca:3a42:baeb:9ecf]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::66ca:3a42:baeb:9ecf%6]) with mapi id 15.20.6838.030; Wed, 4 Oct 2023
 08:21: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: 183972c1-628f-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1696407724;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=PzNYTPwGeM/FdDqlLNkP0IvNUW8J9Mz+nZFAWK6JNaE=;
  b=VabwXawld14Zmh4NU+op4+JYeKj+wtz67CLkkPaSkkcuGMSvSOMjvRjp
   cRG1ue9cFhAZUGKtLK1Mq+SMywENRi4CMNefPdlAsBtwDk6W1HJ+Vo/YN
   4oQhJGh9lhXyst0cSI6jIOPDqQ5CSsxx71lZN9SK6H/ox2J7LoDfM2IIJ
   w=;
X-CSE-ConnectionGUID: 47oiFiEMTJyxy1EqZACLBg==
X-CSE-MsgGUID: GqQSR8nxQBOZ3Rjd0pbrzQ==
X-IronPort-RemoteIP: 104.47.58.106
X-IronPort-MID: 127337872
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:NFll5q/PSEDjqB89tVikDrUDcX+TJUtcMsCJ2f8bNWPcYEJGY0x3y
 2YYCmDXPf6OZDDyKNt/PYu18BgB78CAzoVhGwo5rS08E34SpcT7XtnIdU2Y0wF+jCHgZBk+s
 5hBMImowOQcFCK0SsKFa+C5xZVE/fjVAOK6UKidYnwZqTZMEE8JkQhkl/MynrlmiN24BxLlk
 d7pqojUNUTNNwRcawr40Ird7ks01BjOkGlA5AdnPagX5AW2e0Q9V/rzG4ngdxMUfaEMdgKKb
 76r5K20+Grf4yAsBruN+losWhRXKlJ6FVHmZkt+A8BOsDAbzsAB+v9T2M4nQVVWk120c+VZk
 72hg3ASpTABZcUgkMxFO/VR/roX0aduoNcrKlDn2SCfItGvn9IBDJyCAWlvVbD09NqbDkkSq
 vsZBjEgSyyhlvKnmZ+ieMBHou4seZyD0IM34hmMzBn/JNN/GdXvZvuP4tVVmjAtmspJAPDSI
 dIDbiZiZwjBZBsJPUoLDJU5n6GjgXyXnz9w8QrJ4/ZopTWDilUpjtABM/KMEjCObd9SkUuC4
 HrP4kzyAw0ANczZwj2Amp6prraVwnigB9JNTtVU8NZFmWSo/DwVGCQ8cmngm/u10la0QcBmf
 hl8Fi0G6PJaGFaQZsX0WhSjiGKHuhMaVMtdF6sx7wTl4qjJ5weUAEAUQzgHb8Yp3OcmSDpv2
 lKXktfBAT10rKbTWX+b7q2Trz65JW4SN2BqTS8JSxEUpcbqpo4bhwjKCN1kFcadjNf4BDXxy
 DCitzUlivMYistj/7q/1UDKhXSrvJehZhUu+gzdU2ah7wV4TI2ofYql7R7c9/koEWqCZlyIv
 XxBl83A6ukLVMmJjHbUGLtLG6y17fGYNjGamURoA5Qq6zWq/TikYJxU5zZ9YkxuN67oZAPUX
 aMagisJjLc7AZdgRfUfj16ZYyjy8ZXdKA==
IronPort-HdrOrdr: A9a23:aff2Iq3nFms+rDY4RJWTDAqjBEQkLtp133Aq2lEZdPU0SKGlfg
 6V/MjztCWE7gr5PUtLpTnuAsa9qB/nm6KdpLNhX4tKPzOW31dATrsSjrcKqgeIc0HDH6xmpM
 JdmsBFY+EYZmIK6foSjjPYLz4hquP3j5xBh43lvglQpdcBUdAQ0+97YDzrYnGfXGN9dOME/A
 L33Ls7m9KnE05nFviTNz0+cMXogcbEr57iaQ5uPW9a1OHf5QnYk4ITCnKjr20jbw8=
X-Talos-CUID: 9a23:4CTZim8wIBWft/Qs05OVvxJLHcELc1D48FXBM17hJH9bYZaxY1DFrQ==
X-Talos-MUID: =?us-ascii?q?9a23=3AH0HMwA/+IsMAn2dzeL1t0w+Qf+hx2p+UWEYdqL8?=
 =?us-ascii?q?hiZK+NyAoIz2Hng3iFw=3D=3D?=
X-IronPort-AV: E=Sophos;i="6.03,199,1694750400"; 
   d="scan'208";a="127337872"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=QNpA/0rUl+0pJj1NahtSe/NUMWBHprz+AM6k3kp3q2rOEj5+Jxq483TtJ/CKCaInFSm0UGRzQ7N9bpB58/OPh7sWOMFkNgn5CwIBjl27qwiv2/i6rioDt8NxOf4NZtLg/8sjfwdo0ijmrC7/xXmha7hlzFc0UwSj8e1HSyFIyCMdaWilvm+6hXXwyFXprlQ0Gqd6ZY+yIvvSX6v92YXpk8H9tFFG3iAGmIeM1lTTAeNWBMmb7Zd8eoZJFCtkZFJH0Uf1GYZ1o0sXhbSQx159txZojLbzZgotORbvYvSKtxVGdQxpTYeMgIX5+xbZwAnJNsCBi68bzGPhnxupHyk09Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=v7oMqRzYOr3vzsenQkfB9tT7uxljAElFXTgGVBP29U8=;
 b=UyCaPnv9hDSfTRBkSBgkZdFeeY08gqQwy9AIW8XkCujppG/z+GzKKjTsN/53Au4iBZj1UnEcm6wXzMjVvsfeYsnxXlNbOIKeWjhQxKp6SqM+1Fonjz54HKRWhCXYzzmFvGRQd/FlAXDvKjULLnW1w/YwzIpkouulfqj5AJxiVtl3oGui1wGAMYcNKy5DRPHwPTWRrvfg0CoCrLcGPwecnLsQ2msWGkUNWK19NQUA/bGqXfJoSFnO+hmkVFY+qmTPkDfVuWl8BYeFY4erR5Ustvnb+2tePrfCZ4vBftFO6ahxmG6j7mzpxiv0tWRwO6q/KDxO+39a/idrRayVWJDUPg==
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=v7oMqRzYOr3vzsenQkfB9tT7uxljAElFXTgGVBP29U8=;
 b=kVgufX+mHOZ5Ggl3aNCrJoqlPBJgFSgddZ02lk9fTbP/v0bDCbo8N0dCm7Ipx29s1FmHUoBGyidIfxq/bShl1fr0HOxyADi4G9FwoatOKdqZ2p6pRFGvynIvXvDk62cRUHDrfWQ4lyBkx+VozxVCnz5P/RViAFVJ1tni/KQbEyQ=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Wed, 4 Oct 2023 10:20:47 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Tamas K Lengyel <tamas@tklengyel.com>
Cc: Julien Grall <julien@xen.org>, xen-devel@lists.xenproject.org,
	henry.wang@arm.com, Jan Beulich <jbeulich@suse.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>
Subject: Re: [PATCH v5 06/10] x86/mem-sharing: copy GADDR based shared guest
 areas
Message-ID: <ZR0gX6wyXLD_6nY6@MacBookPdeRoger>
References: <20231002151127.71020-1-roger.pau@citrix.com>
 <20231002151127.71020-7-roger.pau@citrix.com>
 <CABfawhnHg3KrGP-hp4_Q8GvSf2nVSVSyK24HKqAGuWp_AtD8-A@mail.gmail.com>
 <ZRwlXls8xRyc8AX4@MacBookPdeRoger>
 <8ee8d70b-5b69-4834-b7e3-572e96effa5c@xen.org>
 <CABfawhn0vH6rS8-SJQJVZtto2HA61By1bCG3w9bJMJR3x+rXsg@mail.gmail.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <CABfawhn0vH6rS8-SJQJVZtto2HA61By1bCG3w9bJMJR3x+rXsg@mail.gmail.com>
X-ClientProxiedBy: LO4P123CA0242.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:1a7::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_|SJ0PR03MB5423:EE_
X-MS-Office365-Filtering-Correlation-Id: 7be0f953-47ec-4fa2-12a8-08dbc4b2fa3a
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:
	InWrOLx010/N5cU0aPS0+JuZ144wLz5eV4xmnuwoimuUMRfsy323DnaVe5tXtGC7q6Ydqp3BJyva/7VG9Jkeky0+b3117HsmVFpSCEwWB1kRN4Q8Anfy4oqErcg2ERYKixHaIXvJbTu02LWtwYGVtE4V1a7DBdQM1I78h6GW7f6ieuVCjPX8u1hGdGzYmQBZZeFRwicDIKQpsmQRr9o3pdWKQ76loAP6Rvk2zcK83E3XnsMBrK7+uffjDDUkFURyCLrvnphXDpPH4I5uUp6hmS7ZQe2LEiie0flo0BkpAyhYvuvoBEVuFhGdlww++5BV7zgc114Crd312MHyZxwhnZRt+Gxo/Twr9viNGYY+8X6xGrpdk4ykIOI3MltbjMn5Ak64KYM23gOQDLAKQEu/FfcTbiKFPvfUau2wZJrpwcLv8b5QEOhpZWVuhCWPqo3TkV4HAKQoPVC8WBWMCEYNiW+mWfwxpFxEktRd6LKzZNB6feBkWw/Lnr3+LGJ6bnRtu90irCu6crv/8V0/hR9jvfPcsVBrPCi2bm1JL3Igg8A=
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)(376002)(366004)(136003)(346002)(230922051799003)(186009)(1800799009)(451199024)(64100799003)(2906002)(33716001)(85182001)(86362001)(82960400001)(38100700002)(26005)(41300700001)(8676002)(8936002)(4326008)(9686003)(6512007)(53546011)(6486002)(6506007)(6666004)(6916009)(316002)(66476007)(54906003)(66946007)(84970400001)(66556008)(5660300002)(83380400001)(478600001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?OURsOG5lUURpVXBDYkp2aGQ1aExCMVdLcWhnOXJlLytYbGJTdkJuU1RmcHcy?=
 =?utf-8?B?YXQzUXFnNXA2Y2l0YmUrbkYwNlJrd1pyMWZSUzE5TUhaVS9VRUs2S21SMU5E?=
 =?utf-8?B?WnNhOWFFTTVENWFTQUo5R3FsTGZOa2dhc21JTGZRZGxLQ0JlU3F6MW03dldV?=
 =?utf-8?B?L1hlQU5WS1Y4RUkzbVJTNFVjNkJ5NFJyQ0NaT0lVc0pUeUduM1k5b3NSN2xQ?=
 =?utf-8?B?cTd0VDAzOS84dWlXd3FJSUg3OUdqQ252R0drYmh6aE5CNTFxZVdMcWI3Ukdz?=
 =?utf-8?B?RllaQU9pNStoeStobU1HTFFsQXlaWSsvdXk2d0xIOUZKUnp1NktDd1hxVXpZ?=
 =?utf-8?B?aXZ2QlppV2MySGVQNzQ1bEZXS2NpYUQ2UU1Xb21XQkpuOFhVRFBZNStsVkpl?=
 =?utf-8?B?emRabWxSaVptZFZnNzdUdDVrYUhRYkJtWWhkR3g3T2F6OEU2bmZRTXo3SVRQ?=
 =?utf-8?B?RGMrOTRKTDRDOHBvTHJXczJKNmZ2bVNlUERENStIOFczU2p4Zk9vSHVNUyt3?=
 =?utf-8?B?cDNQUmNvZEo4T1JXVHBwZ3hHd2hNUlg4NjNFMk1JV0VaTTNIOEd1c1lBcHZq?=
 =?utf-8?B?YmRoNkU3dzdnYkdybXg4bUx5U1NyejFkUmxUQTNSYWIyV3VDVENha2EzQ08x?=
 =?utf-8?B?SGVxMWVKYUpBbjBOSGM3dVZ4ek9FYzdRQUNLM0JFQnhWOEVvTFFva203aEND?=
 =?utf-8?B?OCtqZ1BxMGJCdTlIYW45QUZWU2hNcmFEc2ZBdXR3Qmw2YXBDZHozVEgwVi9P?=
 =?utf-8?B?ZHFuRlRUSCtDTnVKUEJPSG9VVENDZ1hIS2pwbE5SVXMwRXZyYXNjN3NlVXRU?=
 =?utf-8?B?eTdHeFk2V2Rmd0crdUt5b1h5R0l3M2lsN0JQRFJQNUFLaE5oSWVjTVhBa0pG?=
 =?utf-8?B?U1VTZHpoVzQzNXJsdFB1dWVEYzJpSTNSaXBMRllvMDZ5VkFqQmJFMmlkL0sz?=
 =?utf-8?B?TTB3bld4VHdyMjJFOVh4VDV5S2RVd1JMUkZWck9xSzMrS3oxK0ozaGxodUFM?=
 =?utf-8?B?KzMwa0s4YUNSY2hFcWpjSERYeSs4Q2t1MkFiWG1hdVBYK1d2VWRUYWNkVVRv?=
 =?utf-8?B?T1ZSNlFZWHdRQXRaRlg2QS85bm9hWEh1MWowVG9uTFV2M1hna3pGT1U4ZmYv?=
 =?utf-8?B?eG44Nm13M3poZ2d0dnFRcnJidWhhT2ZyYlJUWXJoalhYQ0s4MGl4SUJKd1o3?=
 =?utf-8?B?Q1ZRSU4xdURWQmhEblNBbHR2bEhXNTZlY2RLenpiUDU4SHUrcjJxcytVcVFx?=
 =?utf-8?B?WWRubDYvVk5GbkVBdzBQWEpyUWdReU1RNDJGMWZiM0pzZFJHWmJXcTQ1TSsv?=
 =?utf-8?B?L21LdFVISkI1YUl2MkdhcS85RERBMFF1ejFScEVjWXAvS0g2WWhHVHVZbEZJ?=
 =?utf-8?B?SndjR2FRU1Q5Ri9zNzNwbkZWZmo3ekMwNmNZYmpSVHRDRmduS3hMemN6Tkxk?=
 =?utf-8?B?bkFBWG9DWi8yMW9UQklwdW1WSzJSMVZnNHJ6QmFyVmNIMzIwNzQrWlFHRXZZ?=
 =?utf-8?B?SmFsb2lrWFRIeXdwa2M3WFZVa29JUW9YRFdmbTJoVlNsWXh3QmgwOXdUWEdl?=
 =?utf-8?B?ejJGczkvNllIVkpQZnpwT3lLVTNJb0VMZVNYQmRqS3BnekhTbmNtMzdEN2Qr?=
 =?utf-8?B?M3BUK3l6elA1RUdyMElNZXBBb24zRHgzVmltS3RmY0dxdUJoWG5OS1BvOHZK?=
 =?utf-8?B?TllpVDE4Y3BmWGU4endjQWxXT0pJRUwwaFFWTFp1dTdEaTdmTTBSR0RKVWRW?=
 =?utf-8?B?SUttOUYvTzFaa3ArOGl5bk4xQnViTkFpZEdwOHJMVm9lOEZCVHl5UnZhenMv?=
 =?utf-8?B?QlJqaU1WU2t4MXE3enVuWVRVMlVFRkIvbjZva3ZFTkdzZFlHelBqUWxFSVBS?=
 =?utf-8?B?aldHekNTdGU0UlBSVk84YnV4bVFoTFkyUG5XWURib3dYbjUwL2sxZXRseHlY?=
 =?utf-8?B?ZzZzQ0w3QXZHbitFQllVS1JJa2V5SVpiL2JhaVRJaGJES2t2Tlg4VnF6bER6?=
 =?utf-8?B?UlBkeFpVZncremlUNUFHQmtWRGNPWDg1Tk9CQnNWM2Q0dmtMWVJ0SXhjM3Ew?=
 =?utf-8?B?NHN3M0lOSG84dXZJZXFDbkFidVpQcVd4TnFrMWduRnMvcGVkc3lMVS9nWW1H?=
 =?utf-8?Q?SANbaRyD6kRcaLsZZnAGRXpCp?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	/5QUVBS2rQefLaXKLalsLje3yt2HRtVy8kPPqAfbJN2v+3KKKaOMDYBxMZy/4cx379+sUzidzKXzg5wtY3pEIkoO+Qjn7b4d5fpD+IrD/+JmG3V+lb+XGsY5maMLLhEDIE3PTcgndgtJ8IQtyRpPVVBiTo2L5bCty1wlD+1Y3mWDGGR5AW/EhtcpSAHkZ8yDiU9N/gSh6Ukn8WXi2MohpejYMxoxyvVIGd89wLeJlgDpKvKetD7PI0r6fH09qkSAjEFqmlg3myazq4dTp9rBHEuGiu7qZAw4XfTzIIK74/h9NiIsQP015vI180A1vSVZLMML4RNpdPrQ22xYpprpZ+7yY74ihpRTxj9xTaxDR3oUFWztikykMvf2yzHqZtJP6WNneL5tAXrZzaSyFJI7d0s7bdSX1YutrnrtVdIkyBuDluk/YKg5h88/Lb8hVWUX4CqvyLtJZEppnBRydRhBmOqTqHxubsIVJZ0Q6AaqiU7G7zKBa3OXyw0PGZzMuaYuMCioWIFuTEUz2COUGMU9Hp+AT0zSkZqyL30CbWa+B0cAq2nx373qb39BPhltrdmtrRWFPJNJnl8WCaJC4ksnzjV/s5UdrBoQNkHsTS+QnKUvjt2FayiDwUPdmhEAgOK23efq6TCh4ADa2JFkx5HmnNLTS03+zYdc7shsZ4uNYZH+fAutyfzg1a8R1n/p4ge1hQVn2DbpDHzhXlJumFg8SA7PSg5QSrlmzgnj0Wc8a2onw3uv/5FxpcQKd/w5oq1+vI6o7wQRH+osYtjhAYVOQe60kThW6BQNI+nyiV5TTquhdC2M5Wofb8u1tIo5NPmBBmK6SkJ6j2aXrz0b8Ag2xxg0Cg7OgU8VgG4+fs6WsocTGnzmRNdA3012F1Z1k6yj+mLgd1fLxo6Sv9PZaae73FJ3fZraLz+fHqrC3lwhPPc=
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 7be0f953-47ec-4fa2-12a8-08dbc4b2fa3a
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Oct 2023 08:21:58.7721
 (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: lk1KA9FcoxPMLPE0S/XOwt+oCcmU43YGLIGLK8eLwjBN/zni8Mpb0sc/CoT54H97rw4RubSpI104gMNf5yYjzA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR03MB5423

On Tue, Oct 03, 2023 at 04:25:58PM -0400, Tamas K Lengyel wrote:
> On Tue, Oct 3, 2023 at 11:07 AM Julien Grall <julien@xen.org> wrote:
> >
> > Hi Roger,
> >
> > On 03/10/2023 15:29, Roger Pau Monné wrote:
> > > On Tue, Oct 03, 2023 at 09:53:11AM -0400, Tamas K Lengyel wrote:
> >
> > Tamas, somehow your e-mails don't show up in my inbox (even if I am
> > CCed) or even on lore.kernel.org/xen-devel. It is not even in my SPAM
> > folder.
> 
> Thanks, I've switched mailservers, hopefully that resolves the issue.
> 
> >
> > >> On Mon, Oct 2, 2023 at 11:13 AM Roger Pau Monne <roger.pau@citrix.com> wrote:
> > >>>
> > >>> From: Jan Beulich <jbeulich@suse.com>
> > >>>
> > >>> 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>
> > >>> Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
> > >>> ---
> > >>> Changes since v4:
> > >>>   - Rely on map_guest_area() to populate the child p2m if necessary.
> > >>> ---
> > >>>   xen/arch/x86/mm/mem_sharing.c | 31 +++++++++++++++++++++++++++++++
> > >>>   xen/common/domain.c           |  7 +++++++
> > >>>   2 files changed, 38 insertions(+)
> > >>>
> > >>> diff --git a/xen/arch/x86/mm/mem_sharing.c b/xen/arch/x86/mm/mem_sharing.c
> > >>> index 5f8f1fb4d871..99cf001fd70f 100644
> > >>> --- a/xen/arch/x86/mm/mem_sharing.c
> > >>> +++ b/xen/arch/x86/mm/mem_sharing.c
> > >>> @@ -1641,6 +1641,24 @@ static void copy_vcpu_nonreg_state(struct vcpu *d_vcpu, struct vcpu *cd_vcpu)
> > >>>       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)
> > >>> +{
> > >>> +    unsigned int offset;
> > >>> +
> > >>> +    /* Check if no area to map, or already mapped. */
> > >>> +    if ( !d_area->pg || cd_area->pg )
> > >>> +        return 0;
> > >>> +
> > >>> +    offset = PAGE_OFFSET(d_area->map);
> > >>> +    return map_guest_area(cd_vcpu, gfn_to_gaddr(
> > >>> +                                       mfn_to_gfn(d, page_to_mfn(d_area->pg))) +
> > >>> +                                   offset,
> > >>> +                          PAGE_SIZE - offset, cd_area, NULL);
> > >>> +}
> > >>> +
> > >>>   static int copy_vpmu(struct vcpu *d_vcpu, struct vcpu *cd_vcpu)
> > >>>   {
> > >>>       struct vpmu_struct *d_vpmu = vcpu_vpmu(d_vcpu);
> > >>> @@ -1709,6 +1727,16 @@ static int copy_vcpu_settings(struct domain *cd, const struct domain *d)
> > >>>                   return ret;
> > >>>           }
> > >>>
> > >>> +        /* 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;
> > >>> @@ -1950,7 +1978,10 @@ int mem_sharing_fork_reset(struct domain *d, bool reset_state,
> > >>>
> > >>>    state:
> > >>>       if ( reset_state )
> > >>> +    {
> > >>>           rc = copy_settings(d, pd);
> > >>> +        /* TBD: What to do here with -ERESTART? */
> > >>
> > >> There is no situation where we get an -ERESTART here currently. Is
> > >> map_guest_area expected to run into situations where it fails with
> > >> that rc?
> > >
> > > Yes, there's a spin_trylock() call that will result in
> > > map_guest_area() returning -ERESTART.
> > >
> > >> If yes we might need a lock in place so we can block until it
> > >> can succeed.
> > >
> > > I'm not sure whether returning -ERESTART can actually happen in
> > > map_guest_area() for the fork case: the child domain is still paused
> > > at this point, so there can't be concurrent guest hypercalls that
> > > would also cause the domain hypercall_deadlock_mutex to be acquired.
> 
> Perhaps turning it into an ASSERT(rc != -ERESTART) is the way to go at
> this point. If we run into any cases where it trips we can reason it
> out.

In order to avoid possibly returning -ERESTART (which should never be
seen by hypercall callers) we might want to convert it to -EBUSY and
let the caller pick the pieces.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Wed Oct 04 09:17:57 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 04 Oct 2023 09:17:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612453.952343 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qny0j-0007cu-Tt; Wed, 04 Oct 2023 09:17:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612453.952343; Wed, 04 Oct 2023 09:17: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 1qny0j-0007cn-RK; Wed, 04 Oct 2023 09:17:41 +0000
Received: by outflank-mailman (input) for mailman id 612453;
 Wed, 04 Oct 2023 09:17: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=3ZP0=FS=linaro.org=philmd@srs-se1.protection.inumbo.net>)
 id 1qny0i-0007cf-NM
 for xen-devel@lists.xenproject.org; Wed, 04 Oct 2023 09:17:40 +0000
Received: from mail-wr1-x42c.google.com (mail-wr1-x42c.google.com
 [2a00:1450:4864:20::42c])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id dabeb42d-6296-11ee-9b0d-b553b5be7939;
 Wed, 04 Oct 2023 11:17:35 +0200 (CEST)
Received: by mail-wr1-x42c.google.com with SMTP id
 ffacd0b85a97d-32320381a07so1871007f8f.0
 for <xen-devel@lists.xenproject.org>; Wed, 04 Oct 2023 02:17:35 -0700 (PDT)
Received: from [192.168.69.115] (5ep85-h01-176-173-163-52.dslam.bbox.fr.
 [176.173.163.52]) by smtp.gmail.com with ESMTPSA id
 v11-20020adfedcb000000b0031fd849e797sm3514434wro.105.2023.10.04.02.17.33
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 04 Oct 2023 02:17: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: dabeb42d-6296-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=linaro.org; s=google; t=1696411054; x=1697015854; 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=+Ge25dLyfZqPnHLKJkRxZfdIzoJzl+k+G3DM+FsgNBA=;
        b=yA/0Fb3U0RLjW5wK6cNkuwsHuwDpm72eZ5jW/LmyBXMiugu4lLuTNicek7/VNwpJ8F
         hgsNbXIOYE6awe/RRpK9e5iugNaXl0aEEVy/pxVM2b+0/Qxk+mxMN5WXgxulRKcp3J1q
         vxMNuIafnUdXersxUCQ55lPWW3kExcesh+s8XE3wjDQPruwdkMdDNFPuYui6YcMrA+In
         2xZCyMmeLVXmShZmNWE969nm2wkbtaYY8nYeNJiU0zpClb1cd+Hxm2t0KL3rBhCt46H1
         hZw/tjXC644WpO3Mv2SbByDHj4tZtJU+FRc8HauMJekoqbUEr+0LXr+EBJfG8s22a0pe
         Sikw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1696411054; x=1697015854;
        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=+Ge25dLyfZqPnHLKJkRxZfdIzoJzl+k+G3DM+FsgNBA=;
        b=ilsRjcmrfknlR5x+BNSgf0goT5oC2mWLc8nOO25SPLJdOFLP/VpMXyIDGrTfLj7R4k
         Ki3SC+++ij1dumiBHfI8RGt1fOIqMVB5f9wMiacjXYxoVmN8VvcEGRTQ04hUWeL+/5iJ
         z8ce1glTx24qXoagtk048Cl1qlztkty+vjVuZlsOsXiJ+a7CV1EnZi3XTrfZK5VuhIKO
         nEwH4zKw3u7GqdvroA+qI0XA6sIHe+kFDUFga63RyGs0aXphRxVuvYi7XmG1O1HU0I7q
         rOiYmUuJ09i1cpn9AycWNUGcIdObDsoBRnhzfSNY6ctMWzRwGpTyqGYu0PTarz2a74zb
         /cqA==
X-Gm-Message-State: AOJu0YxmTSMEWIICxKr60rSyTXCrxw5BSdhjpiMKN8K9ylZEbie+zMNX
	f8YKY4NxC6htvKYKuU0ZbhIezQ==
X-Google-Smtp-Source: AGHT+IFbxWIy6qhLDZeHwS7GvpzVHTbLuf9DR6vRx/lZ08aaH6xbsi3a+1+KIcqIOVFoeUUzJlcPPQ==
X-Received: by 2002:a5d:544e:0:b0:31f:a256:4bbb with SMTP id w14-20020a5d544e000000b0031fa2564bbbmr1344896wrv.71.1696411054588;
        Wed, 04 Oct 2023 02:17:34 -0700 (PDT)
Message-ID: <a55a4808-6748-fdcc-ab90-829d2a903d03@linaro.org>
Date: Wed, 4 Oct 2023 11:17:31 +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 0/3] sysemu/accel: Simplify sysemu/xen.h
Content-Language: en-US
To: qemu-devel@nongnu.org, Michael Tokarev <mjt@tls.msk.ru>
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>
References: <20230905122142.5939-1-philmd@linaro.org>
From: =?UTF-8?Q?Philippe_Mathieu-Daud=c3=a9?= <philmd@linaro.org>
In-Reply-To: <20230905122142.5939-1-philmd@linaro.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

On 5/9/23 14:21, 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(-)
> 

ping for trivial patches 1 & 2?


From xen-devel-bounces@lists.xenproject.org Wed Oct 04 09:44:32 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 04 Oct 2023 09:44:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612459.952354 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnyQW-00055i-Tp; Wed, 04 Oct 2023 09:44:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612459.952354; Wed, 04 Oct 2023 09:44: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 1qnyQW-00055b-RH; Wed, 04 Oct 2023 09:44:20 +0000
Received: by outflank-mailman (input) for mailman id 612459;
 Wed, 04 Oct 2023 09:44: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 1qnyQW-00055R-41; Wed, 04 Oct 2023 09:44: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 1qnyQV-0006DT-QX; Wed, 04 Oct 2023 09: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 1qnyQV-0005Ph-A2; Wed, 04 Oct 2023 09:44:19 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qnyQV-0000aL-9Q; Wed, 04 Oct 2023 09: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=EqU2ZGWy3fFKtzSrInhFXVfABr/kEvxpdJrlVU+5+fY=; b=zvtSynGehysloWrlYWWwqqPv8v
	bOBaFMaW/yWuKOcTioV+gQdINEjGXbUzIB7mHIXGLQOKbhvY7AAv8Ew3uf7RjfdCLueuxZKqZWIpx
	OXAsTqAHQ4ody+J3sfQfeo2wR5zq5ZacUIWxjGJ2rRFtlKMLKAugkRycF72aXBnU3zBY=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183258-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 183258: tolerable FAIL
X-Osstest-Failures:
    xen-unstable:test-amd64-i386-qemuu-rhel6hvm-amd:xen-install:fail:heisenbug
    xen-unstable:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:debian-hvm-install: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-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2: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-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-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-unstable:test-amd64-amd64-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-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1: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-libvirt-xsm: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-amd64-amd64-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-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-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-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-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=3d2d9e90224c4f430a7ee1190fd3b871b99b0ba0
X-Osstest-Versions-That:
    xen=3d2d9e90224c4f430a7ee1190fd3b871b99b0ba0
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 04 Oct 2023 09:44:19 +0000

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

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-amd64-i386-qemuu-rhel6hvm-amd  7 xen-install          fail pass in 183249
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm 12 debian-hvm-install fail pass in 183249

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183249
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183249
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 183249
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183249
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183249
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183249
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 183249
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 183249
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183249
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183249
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 183249
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183249
 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-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-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-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-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-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-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-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-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                  3d2d9e90224c4f430a7ee1190fd3b871b99b0ba0
baseline version:
 xen                  3d2d9e90224c4f430a7ee1190fd3b871b99b0ba0

Last test of basis   183258  2023-10-04 01:51:59 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                 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                                 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 Wed Oct 04 09:56:17 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 04 Oct 2023 09:56:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612466.952365 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnybz-0007kN-3S; Wed, 04 Oct 2023 09:56:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612466.952365; Wed, 04 Oct 2023 09:56: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 1qnyby-0007kG-UF; Wed, 04 Oct 2023 09:56:10 +0000
Received: by outflank-mailman (input) for mailman id 612466;
 Wed, 04 Oct 2023 09:56: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=ZBSc=FS=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qnybx-0007kA-7f
 for xen-devel@lists.xenproject.org; Wed, 04 Oct 2023 09:56:09 +0000
Received: from mail-wr1-x42e.google.com (mail-wr1-x42e.google.com
 [2a00:1450:4864:20::42e])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 3c62218e-629c-11ee-98d3-6d05b1d4d9a1;
 Wed, 04 Oct 2023 11:56:06 +0200 (CEST)
Received: by mail-wr1-x42e.google.com with SMTP id
 ffacd0b85a97d-327be5fe4beso1747004f8f.3
 for <xen-devel@lists.xenproject.org>; Wed, 04 Oct 2023 02:56:06 -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-20020a5d4982000000b00323330edbc7sm3611375wrq.20.2023.10.04.02.56.05
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 04 Oct 2023 02:56: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: 3c62218e-629c-11ee-98d3-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1696413366; x=1697018166; 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=EzZseEEdk2ifdFw51Fm29zuvHh069FGL6J24VL3vbcI=;
        b=sn95haF+H6yGGi7Pmr4kQ0Di7R5hIIj+CS1q/3y/PkWRvxTQBOJPw5kJbyPcZhEqYC
         1sWujBHg+lg1mrsyUzRamwQlhS8eNozKhxCMxmEKtX51xKI6l7IsqVPxy48lW/lkImNy
         FQ0qhWq9Xq09mqwwsuvaW+ql7dlwGG5g73mPE=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1696413366; x=1697018166;
        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=EzZseEEdk2ifdFw51Fm29zuvHh069FGL6J24VL3vbcI=;
        b=rfDsbcjdAHbo5PyGuJjK1iGejIZYxCS/9b8UjEG9zT/soNFXDmVpkDvj++yyS3B073
         4p72EhdudGtF+lbyKHZQBTTe04Qc5MkVVsuFJwDWD3EcX/h7d3UuQztdpi1dlZLJ6EOF
         cdluAVGS1ebqIQAXGeomxBN4Xw7mgCbFboRincPlEkFa91ogiU5Hmb3ha5uVCQBrvNOU
         r/EWhxdeqWauD71LlabqXQVF+50XPjCt9wHIM+enHLPe2TiRPJSx5Ic3L872U+CSh+/C
         zzBmUqP2SkufWg4k8TbxbSMu/9VzBMAwVZcZC4iuH+YSXgvWBPzjTewTAU74ME2Wxvr6
         bskA==
X-Gm-Message-State: AOJu0YwTtEFU2ZnjmB92rRPJx/B2rCom9BKWqUX8zpx6l7C2KzRqjOTP
	tWGquKLq9S2wQTo9YWLiEFQ7Pw==
X-Google-Smtp-Source: AGHT+IHL7s0FOiaHwYVgrsUf2c5WGSw3alwUp2bmaWb9Z8V3FwEFuTKRIL8M9QJKtxc8LmnWoFjstw==
X-Received: by 2002:adf:e74e:0:b0:321:504a:bc9a with SMTP id c14-20020adfe74e000000b00321504abc9amr1436803wrn.71.1696413365822;
        Wed, 04 Oct 2023 02:56:05 -0700 (PDT)
Content-Type: multipart/alternative;
 boundary="------------mGradkmxElIXCPeEscQw9VOP"
Message-ID: <e1736215-52ba-4737-9da3-8f1ba7e832a6@citrix.com>
Date: Wed, 4 Oct 2023 10:56:04 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
From: andrew.cooper3@citrix.com
Subject: Re: [XEN PATCH] xen: Add SAF deviations for MISRA C:2012 Rule 7.1
Content-Language: en-GB
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,
 jbeulich@suse.com, roger.pau@citrix.com, Henry.Wang@arm.com,
 Simone Ballarin <simone.ballarin@bugseng.com>,
 Doug Goldstein <cardoe@cardoe.com>, George Dunlap
 <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Wei Liu <wl@xen.org>
References: <338d8e574db943a86c7605e4c6d9a299d45f067d.1696347345.git.nicola.vetrini@bugseng.com>
 <alpine.DEB.2.22.394.2310031345190.2348112@ubuntu-linux-20-04-desktop>
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: <alpine.DEB.2.22.394.2310031345190.2348112@ubuntu-linux-20-04-desktop>

This is a multi-part message in MIME format.
--------------mGradkmxElIXCPeEscQw9VOP
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 03/10/2023 9:46 pm, Stefano Stabellini wrote:
> On Tue, 3 Oct 2023, Nicola Vetrini wrote:
>> As specified in rules.rst, these constants can be used
>> in the code.
>> Their deviation is now accomplished by using a SAF comment,
>> rather than an ECLAIR configuration.
>>
>> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
> "SAF" discussion aside that can be resolved elsewhere:
>
> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>

Well no.  "SAF" aside (and SAF does need fixing before reposting this
patch, otherwise it's just unnecessary churn), ...

>> diff --git a/xen/arch/x86/hvm/svm/svm.h b/xen/arch/x86/hvm/svm/svm.h
>> index d2a781fc3fb5..d0623b72ccfa 100644
>> --- a/xen/arch/x86/hvm/svm/svm.h
>> +++ b/xen/arch/x86/hvm/svm/svm.h
>> @@ -57,14 +57,23 @@ static inline void svm_invlpga(unsigned long linear, uint32_t asid)
>>  #define INSTR_INT3        INSTR_ENC(X86EMUL_OPC(   0, 0xcc), 0)
>>  #define INSTR_ICEBP       INSTR_ENC(X86EMUL_OPC(   0, 0xf1), 0)
>>  #define INSTR_HLT         INSTR_ENC(X86EMUL_OPC(   0, 0xf4), 0)
>> +/* SAF-2-safe */
>>  #define INSTR_XSETBV      INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0321)
>> +/* SAF-2-safe */
>>  #define INSTR_VMRUN       INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0330)
>> +/* SAF-2-safe */
>>  #define INSTR_VMCALL      INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0331)
>> +/* SAF-2-safe */
>>  #define INSTR_VMLOAD      INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0332)
>> +/* SAF-2-safe */
>>  #define INSTR_VMSAVE      INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0333)
>> +/* SAF-2-safe */
>>  #define INSTR_STGI        INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0334)
>> +/* SAF-2-safe */
>>  #define INSTR_CLGI        INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0335)
>> +/* SAF-2-safe */
>>  #define INSTR_INVLPGA     INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0337)
>> +/* SAF-2-safe */
>>  #define INSTR_RDTSCP      INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0371)
>>  #define INSTR_INVD        INSTR_ENC(X86EMUL_OPC(0x0f, 0x08), 0)
>>  #define INSTR_WBINVD      INSTR_ENC(X86EMUL_OPC(0x0f, 0x09), 0)

... this has broken a tabulated structure to have comments ahead of
lines with octal numbers, while ...

>> diff --git a/xen/arch/x86/hvm/svm/emulate.c b/xen/arch/x86/hvm/svm/emulate.c
>> index aa2c61c433b3..c5e3341c6316 100644
>> --- a/xen/arch/x86/hvm/svm/emulate.c
>> +++ b/xen/arch/x86/hvm/svm/emulate.c
>> @@ -90,9 +90,9 @@ unsigned int svm_get_insn_len(struct vcpu *v, unsigned int instr_enc)
>>          if ( !instr_modrm )
>>              return emul_len;
>>  
>> -        if ( modrm_mod       == MASK_EXTR(instr_modrm, 0300) &&
>> -             (modrm_reg & 7) == MASK_EXTR(instr_modrm, 0070) &&
>> -             (modrm_rm  & 7) == MASK_EXTR(instr_modrm, 0007) )
>> +        if ( modrm_mod       == MASK_EXTR(instr_modrm, 0300) && /* SAF-2-safe */
>> +             (modrm_reg & 7) == MASK_EXTR(instr_modrm, 0070) && /* SAF-2-safe */
>> +             (modrm_rm  & 7) == MASK_EXTR(instr_modrm, 0007) )  /* SAF-2-safe */
>>              return emul_len;
>>      }

... this has comments at the end of lines with octal numbers.

So which is it?

~Andrew
--------------mGradkmxElIXCPeEscQw9VOP
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: 8bit

<!DOCTYPE html>
<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body>
    <div class="moz-cite-prefix">On 03/10/2023 9:46 pm, Stefano
      Stabellini wrote:<br>
    </div>
    <blockquote type="cite"
cite="mid:alpine.DEB.2.22.394.2310031345190.2348112@ubuntu-linux-20-04-desktop">
      <pre class="moz-quote-pre" wrap="">On Tue, 3 Oct 2023, Nicola Vetrini wrote:
</pre>
      <blockquote type="cite">
        <pre class="moz-quote-pre" wrap="">As specified in rules.rst, these constants can be used
in the code.
Their deviation is now accomplished by using a SAF comment,
rather than an ECLAIR configuration.

Signed-off-by: Nicola Vetrini <a class="moz-txt-link-rfc2396E" href="mailto:nicola.vetrini@bugseng.com">&lt;nicola.vetrini@bugseng.com&gt;</a>
</pre>
      </blockquote>
      <pre class="moz-quote-pre" wrap="">
"SAF" discussion aside that can be resolved elsewhere:

Reviewed-by: Stefano Stabellini <a class="moz-txt-link-rfc2396E" href="mailto:sstabellini@kernel.org">&lt;sstabellini@kernel.org&gt;</a></pre>
    </blockquote>
    <br>
    Well no.  "SAF" aside (and SAF does need fixing before reposting
    this patch, otherwise it's just unnecessary churn), ...<br>
    <br>
    <span style="white-space: pre-wrap">
</span>
    <blockquote type="cite"
cite="mid:alpine.DEB.2.22.394.2310031345190.2348112@ubuntu-linux-20-04-desktop">
      <blockquote type="cite">
        <pre class="moz-quote-pre" wrap="">
diff --git a/xen/arch/x86/hvm/svm/svm.h b/xen/arch/x86/hvm/svm/svm.h
index d2a781fc3fb5..d0623b72ccfa 100644
--- a/xen/arch/x86/hvm/svm/svm.h
+++ b/xen/arch/x86/hvm/svm/svm.h
@@ -57,14 +57,23 @@ static inline void svm_invlpga(unsigned long linear, uint32_t asid)
 #define INSTR_INT3        INSTR_ENC(X86EMUL_OPC(   0, 0xcc), 0)
 #define INSTR_ICEBP       INSTR_ENC(X86EMUL_OPC(   0, 0xf1), 0)
 #define INSTR_HLT         INSTR_ENC(X86EMUL_OPC(   0, 0xf4), 0)
+/* SAF-2-safe */
 #define INSTR_XSETBV      INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0321)
+/* SAF-2-safe */
 #define INSTR_VMRUN       INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0330)
+/* SAF-2-safe */
 #define INSTR_VMCALL      INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0331)
+/* SAF-2-safe */
 #define INSTR_VMLOAD      INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0332)
+/* SAF-2-safe */
 #define INSTR_VMSAVE      INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0333)
+/* SAF-2-safe */
 #define INSTR_STGI        INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0334)
+/* SAF-2-safe */
 #define INSTR_CLGI        INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0335)
+/* SAF-2-safe */
 #define INSTR_INVLPGA     INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0337)
+/* SAF-2-safe */
 #define INSTR_RDTSCP      INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0371)
 #define INSTR_INVD        INSTR_ENC(X86EMUL_OPC(0x0f, 0x08), 0)
 #define INSTR_WBINVD      INSTR_ENC(X86EMUL_OPC(0x0f, 0x09), 0)</pre>
      </blockquote>
    </blockquote>
    <br>
    ... this has broken a tabulated structure to have comments ahead of
    lines with octal numbers, while ...<br>
    <br>
    <blockquote type="cite">
      <blockquote type="cite">
        <pre class="moz-quote-pre" wrap="">diff --git a/xen/arch/x86/hvm/svm/emulate.c b/xen/arch/x86/hvm/svm/emulate.c
index aa2c61c433b3..c5e3341c6316 100644
--- a/xen/arch/x86/hvm/svm/emulate.c
+++ b/xen/arch/x86/hvm/svm/emulate.c
@@ -90,9 +90,9 @@ unsigned int svm_get_insn_len(struct vcpu *v, unsigned int instr_enc)
         if ( !instr_modrm )
             return emul_len;
 
-        if ( modrm_mod       == MASK_EXTR(instr_modrm, 0300) &amp;&amp;
-             (modrm_reg &amp; 7) == MASK_EXTR(instr_modrm, 0070) &amp;&amp;
-             (modrm_rm  &amp; 7) == MASK_EXTR(instr_modrm, 0007) )
+        if ( modrm_mod       == MASK_EXTR(instr_modrm, 0300) &amp;&amp; /* SAF-2-safe */
+             (modrm_reg &amp; 7) == MASK_EXTR(instr_modrm, 0070) &amp;&amp; /* SAF-2-safe */
+             (modrm_rm  &amp; 7) == MASK_EXTR(instr_modrm, 0007) )  /* SAF-2-safe */
             return emul_len;
     }</pre>
      </blockquote>
    </blockquote>
    <br>
    ... this has comments at the end of lines with octal numbers.<br>
    <br>
    So which is it?<br>
    <br>
    ~Andrew<br>
  </body>
</html>

--------------mGradkmxElIXCPeEscQw9VOP--


From xen-devel-bounces@lists.xenproject.org Wed Oct 04 10:07:42 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 04 Oct 2023 10:07:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612472.952374 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnyn0-0001vR-5O; Wed, 04 Oct 2023 10:07:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612472.952374; Wed, 04 Oct 2023 10:07: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 1qnyn0-0001vK-1e; Wed, 04 Oct 2023 10:07:34 +0000
Received: by outflank-mailman (input) for mailman id 612472;
 Wed, 04 Oct 2023 10:07: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=HAsU=FS=arm.com=Luca.Fancellu@srs-se1.protection.inumbo.net>)
 id 1qnymy-0001vE-9G
 for xen-devel@lists.xenproject.org; Wed, 04 Oct 2023 10:07:32 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur05on20617.outbound.protection.outlook.com
 [2a01:111:f400:7d00::617])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id d376ca1e-629d-11ee-9b0d-b553b5be7939;
 Wed, 04 Oct 2023 12:07:29 +0200 (CEST)
Received: from AM0PR10CA0069.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:208:15::22)
 by GV1PR08MB8257.eurprd08.prod.outlook.com (2603:10a6:150:8b::12)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.28; Wed, 4 Oct
 2023 10:07:22 +0000
Received: from AM7EUR03FT036.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:208:15:cafe::a7) by AM0PR10CA0069.outlook.office365.com
 (2603:10a6:208:15::22) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.26 via Frontend
 Transport; Wed, 4 Oct 2023 10:07:21 +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.6863.26 via Frontend Transport; Wed, 4 Oct 2023 10:07:21 +0000
Received: ("Tessian outbound fb5c0777b309:v211");
 Wed, 04 Oct 2023 10:07:21 +0000
Received: from c0c8241ea6fc.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 73EBF337-74DE-4780-9FFA-13495D890454.1; 
 Wed, 04 Oct 2023 10:06:40 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id c0c8241ea6fc.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Wed, 04 Oct 2023 10:06:40 +0000
Received: from AM6PR08MB3749.eurprd08.prod.outlook.com (2603:10a6:20b:8f::22)
 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.6838.35; Wed, 4 Oct
 2023 10:06:37 +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; Wed, 4 Oct 2023
 10: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: d376ca1e-629d-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=KSxV9CbDmv/eabP+OzrKRnb/60s/9YtXZ/4MxiNumxY=;
 b=PApj6qObf/ChoLTXbyDqjL0XUo/VQ2syqEDa70nIu+/CXNRMZUy/89y1gKW04JRyarCxWT0nK+8lYzpLs2ILD1964ezL9n7HDcdeijjvPNjN8+S04h1jZBJjcCs4GGh1mRIqLhWPYRvXtn9S2j8iINDkfAV4lTedjgqwitX3D6k=
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: 039f156191ba390f
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=mVvbXRhDfDkHPT5pfpJpcaNP7HO36fUC5hVC6L5o75IH4YSza3QjB0QzolwsrfwusWCz+wKg/QSFkzGt3UXpBYg4x+IXnma0hDWer/32vs6wa7v5sAUQXXHmEleP85lgakl68KtEgUk2wWFNfIpfZcyRFRusu1Fqecr/HQwP7ecxdLvK3aBf07QmB0l7IvhD/9OCIJxXls/VPPpSZaiRYN63I7StlN86bZHUFnxUGJm4WP87uWBFFtTfhLE8tpkL4EHeXcpYtBSL6L19s7VtO2dBMKHpCVrdVvS38DrDe3gnoFwL8CawYKZM/j92ChxuMp2PCuJEi9w+mL2gpj8qAA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=KSxV9CbDmv/eabP+OzrKRnb/60s/9YtXZ/4MxiNumxY=;
 b=YO8Az5bb5Wq8SXMwhrJJVV0DYppHBpgsbTb9wRJ4IuICTVWYz3cNPCdC8BTH8pFzpKQzF3PzsGXyk5zdz724v+GrDhsjV/SCY6nIHQJseUuxuKeq0xSqBKGe4PyFDwYwC0zlVLu6kqLAMEnJpmnLuUPJ3pqvvZogwCBO0cNS4AvKysYI4PXdZh6kRHKTNE+8o3T84DqX4Ab+ZWW1JjO2POc2Qx3bhyVvZ/TxIyqATifkfuI2ov8U/PKgm0dcbmRtfknk/NUBNA5CaLQIlTBLU6a2SlHmPlaf8C7WXz5ymnvUN5Cl6/C1zp4I61SMO6ZmEXIYmA9X6Irk3KDw5/Sv4A==
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=KSxV9CbDmv/eabP+OzrKRnb/60s/9YtXZ/4MxiNumxY=;
 b=PApj6qObf/ChoLTXbyDqjL0XUo/VQ2syqEDa70nIu+/CXNRMZUy/89y1gKW04JRyarCxWT0nK+8lYzpLs2ILD1964ezL9n7HDcdeijjvPNjN8+S04h1jZBJjcCs4GGh1mRIqLhWPYRvXtn9S2j8iINDkfAV4lTedjgqwitX3D6k=
From: Luca Fancellu <Luca.Fancellu@arm.com>
To: Nicola Vetrini <nicola.vetrini@bugseng.com>
CC: Stefano Stabellini <sstabellini@kernel.org>, Xen-devel
	<xen-devel@lists.xenproject.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>, Jan Beulich
	<jbeulich@suse.com>, =?utf-8?B?Um9nZXIgUGF1IE1vbm7DqQ==?=
	<roger.pau@citrix.com>, Henry Wang <Henry.Wang@arm.com>, Simone Ballarin
	<simone.ballarin@bugseng.com>, Doug Goldstein <cardoe@cardoe.com>, George
 Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>, Wei Liu
	<wl@xen.org>, Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [XEN PATCH] xen: Add SAF deviations for MISRA C:2012 Rule 7.1
Thread-Topic: [XEN PATCH] xen: Add SAF deviations for MISRA C:2012 Rule 7.1
Thread-Index: AQHZ9qj87vFsnMRst0ybMa+ffKOLU7A5Z4mA
Date: Wed, 4 Oct 2023 10:06:34 +0000
Message-ID: <DB96C095-5FAF-40A1-9CA8-002291AA1933@arm.com>
References:
 <338d8e574db943a86c7605e4c6d9a299d45f067d.1696347345.git.nicola.vetrini@bugseng.com>
 <alpine.DEB.2.22.394.2310031345190.2348112@ubuntu-linux-20-04-desktop>
 <e1736215-52ba-4737-9da3-8f1ba7e832a6@citrix.com>
In-Reply-To: <e1736215-52ba-4737-9da3-8f1ba7e832a6@citrix.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_|AM0PR08MB5329:EE_|AM7EUR03FT036:EE_|GV1PR08MB8257:EE_
X-MS-Office365-Filtering-Correlation-Id: d1615c77-bfc0-44e6-e641-08dbc4c1b315
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:
 3v5YQhVLvODMvHXBB6xxfxEiUbzTzK2Cjlzfd9gSTYZPkUXfq3wLCVBwmKhdU12cZ3mjxPX19U0eUoKuiKBzGMC9szb6dljGJ4y0911KX/nyvqjE/R73ifYr+zxE27g1SnnxLOw6gAEVWR2+An0lrqWTCWl61mCMcDi/tY6jaiUf0Onvi79Gocw0O1r/uTMUShMJYog5gWiiSpzK83Zu1+A3aPcYz56r5703Eg+5ucy32f6S8FtiwtALDVunLN/uHdTpRrHWN8G+tWDLWTUEP0TFNgvFHLFeFGrkC4Sokm/Rm8Aisom1IxKLjfvLX7btdG/9tg6zDlRBTYc+a/oEKIdF/6ndxHG1zyd1v5qkazG9xKinaG9jO9l39sOuZGyUS+uDAxUpYf5EUb8sLld4fSunLVHeHlbBPe+SR4DraDdVyb+WgV55ybZP8M12zJK3+Ncfuklrg2xqVVmyEAtKsoAGqOYPQgpAsaE7N+5VD93aNhDkQQ1CRXr89+WXFXDJ64Fg3T5EB8z9ASYXfyM2PqgtuhR9cxsE729pjK05W7vbFqHXj3DK9MGzDFO77k2LmADqh3m/i7qUg0e0y3JrlCKpYaXvfCHGKeye0DJxboBmKyC2yMtH9FlyNPWwdCB2ewp6A+fnbqqepSPFdnMmAA==
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)(396003)(39860400002)(366004)(230922051799003)(451199024)(64100799003)(1800799009)(186009)(26005)(2616005)(4326008)(6916009)(91956017)(76116006)(66946007)(54906003)(64756008)(66446008)(66476007)(66556008)(7416002)(2906002)(8936002)(316002)(6666004)(8676002)(6512007)(6506007)(5660300002)(6486002)(41300700001)(53546011)(71200400001)(36756003)(33656002)(86362001)(122000001)(478600001)(38100700002)(38070700005)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <995C723CD8CC1B45AEE69542E30AD623@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR08MB5329
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:
	0152ff46-b19e-4433-018b-08dbc4c19704
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	lonEkX3nWW730RnYKpI/+CDOi1vsuXmrKNh0b96Tj45ZufQ1C7yEojaKPmkLUXgC5IeeH9jtZjMu5X7z1+NgNmEyNKWu+2LVWKadLAICKPpdZYOAx8iGB3avzD9qzYWPjolI4mnYJCzt9GSqHcKGzqY9mME4HJ9icXqd0qu4qgKtukH5XJiqq1or6gXehQcgjUMAqm+k3uVvQu47QgFzVBUzYEPFMwdqXYpB9T9jl8XyT5kDnIdbPMaxvO3ys8j4za+TNYJVUlnjWcMHyQ8RkJyu7gTRaLhlLQ1M6LxIglzREHU4ctFOOLntQhNIX3808eiYFAV2L5PZ9z/dI18cr6Y2J+G+LlbsCgbd9O7G7nymU0r8razNYqlEzcOr81vW/Y9rOoRoEo6NZV0aCsmdQLZpaW+nnKY7KraqDLZ+paXuT6LDNJ0D+2NOdwTQaOH5f8kh+vnNP8x78Pc9KBHbbTT8/AA6pbBsH2BjUGRKfFX/65/YVXPZfeo3uvk1ZGki8vQ+Ao1NIrOcFb+iaf7jvT9pT4tgFsqjrvdARCB2Q0kkw+43HuAuqLwhfbpjEkrzJW0yBYRlwmaZ21AzH/ZQQ9w+X/N12CPAngOVMKkXWM9zDx7u0ja0R0iJA46yEHKSsmsvGq+VVlpUfaIYQVOwYivqP3lhtlXHAx9wBlSNGQcKgvc3B3854U3PVGkHPUIfAjIJTx/7CkXM/pK6GkBUKNOP3ZnMBFUVOzdzsanuOAeTvxyXCl1vhC44fOdZKYoi
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)(451199024)(82310400011)(1800799009)(64100799003)(186009)(46966006)(40470700004)(36840700001)(8676002)(8936002)(4326008)(6862004)(5660300002)(2906002)(41300700001)(54906003)(316002)(40460700003)(40480700001)(70206006)(36860700001)(70586007)(6512007)(26005)(53546011)(6506007)(36756003)(6486002)(107886003)(33656002)(2616005)(81166007)(47076005)(356005)(86362001)(336012)(6666004)(478600001)(82740400003);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Oct 2023 10:07:21.4721
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: d1615c77-bfc0-44e6-e641-08dbc4c1b315
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: GV1PR08MB8257

SGkgTmljb2xhLA0KDQo+IE9uIDQgT2N0IDIwMjMsIGF0IDEwOjU2LCBhbmRyZXcuY29vcGVyM0Bj
aXRyaXguY29tIHdyb3RlOg0KPiANCj4gT24gMDMvMTAvMjAyMyA5OjQ2IHBtLCBTdGVmYW5vIFN0
YWJlbGxpbmkgd3JvdGU6DQo+PiBPbiBUdWUsIDMgT2N0IDIwMjMsIE5pY29sYSBWZXRyaW5pIHdy
b3RlOg0KPj4gDQo+Pj4gQXMgc3BlY2lmaWVkIGluIHJ1bGVzLnJzdCwgdGhlc2UgY29uc3RhbnRz
IGNhbiBiZSB1c2VkDQo+Pj4gaW4gdGhlIGNvZGUuDQo+Pj4gVGhlaXIgZGV2aWF0aW9uIGlzIG5v
dyBhY2NvbXBsaXNoZWQgYnkgdXNpbmcgYSBTQUYgY29tbWVudCwNCj4+PiByYXRoZXIgdGhhbiBh
biBFQ0xBSVIgY29uZmlndXJhdGlvbi4NCj4+PiANCj4+PiBTaWduZWQtb2ZmLWJ5OiBOaWNvbGEg
VmV0cmluaSA8bmljb2xhLnZldHJpbmlAYnVnc2VuZy5jb20+DQo+Pj4gDQo+PiAiU0FGIiBkaXNj
dXNzaW9uIGFzaWRlIHRoYXQgY2FuIGJlIHJlc29sdmVkIGVsc2V3aGVyZToNCj4+IA0KPj4gUmV2
aWV3ZWQtYnk6IFN0ZWZhbm8gU3RhYmVsbGluaSA8c3N0YWJlbGxpbmlAa2VybmVsLm9yZz4NCj4g
DQo+IFdlbGwgbm8uICAiU0FGIiBhc2lkZSAoYW5kIFNBRiBkb2VzIG5lZWQgZml4aW5nIGJlZm9y
ZSByZXBvc3RpbmcgdGhpcyBwYXRjaCwgb3RoZXJ3aXNlIGl0J3MganVzdCB1bm5lY2Vzc2FyeSBj
aHVybiksIC4uLg0KPiANCj4+PiBkaWZmIC0tZ2l0IGEveGVuL2FyY2gveDg2L2h2bS9zdm0vc3Zt
LmggYi94ZW4vYXJjaC94ODYvaHZtL3N2bS9zdm0uaA0KPj4+IGluZGV4IGQyYTc4MWZjM2ZiNS4u
ZDA2MjNiNzJjY2ZhIDEwMDY0NA0KPj4+IC0tLSBhL3hlbi9hcmNoL3g4Ni9odm0vc3ZtL3N2bS5o
DQo+Pj4gKysrIGIveGVuL2FyY2gveDg2L2h2bS9zdm0vc3ZtLmgNCj4+PiBAQCAtNTcsMTQgKzU3
LDIzIEBAIHN0YXRpYyBpbmxpbmUgdm9pZCBzdm1faW52bHBnYSh1bnNpZ25lZCBsb25nIGxpbmVh
ciwgdWludDMyX3QgYXNpZCkNCj4+PiAjZGVmaW5lIElOU1RSX0lOVDMgSU5TVFJfRU5DKFg4NkVN
VUxfT1BDKCAwLCAweGNjKSwgMCkNCj4+PiAjZGVmaW5lIElOU1RSX0lDRUJQIElOU1RSX0VOQyhY
ODZFTVVMX09QQyggMCwgMHhmMSksIDApDQo+Pj4gI2RlZmluZSBJTlNUUl9ITFQgSU5TVFJfRU5D
KFg4NkVNVUxfT1BDKCAwLCAweGY0KSwgMCkNCj4+PiArLyogU0FGLTItc2FmZSAqLw0KPj4+ICNk
ZWZpbmUgSU5TVFJfWFNFVEJWIElOU1RSX0VOQyhYODZFTVVMX09QQygweDBmLCAweDAxKSwgMDMy
MSkNCj4+PiArLyogU0FGLTItc2FmZSAqLw0KPj4+ICNkZWZpbmUgSU5TVFJfVk1SVU4gSU5TVFJf
RU5DKFg4NkVNVUxfT1BDKDB4MGYsIDB4MDEpLCAwMzMwKQ0KPj4+ICsvKiBTQUYtMi1zYWZlICov
DQo+Pj4gI2RlZmluZSBJTlNUUl9WTUNBTEwgSU5TVFJfRU5DKFg4NkVNVUxfT1BDKDB4MGYsIDB4
MDEpLCAwMzMxKQ0KPj4+ICsvKiBTQUYtMi1zYWZlICovDQo+Pj4gI2RlZmluZSBJTlNUUl9WTUxP
QUQgSU5TVFJfRU5DKFg4NkVNVUxfT1BDKDB4MGYsIDB4MDEpLCAwMzMyKQ0KPj4+ICsvKiBTQUYt
Mi1zYWZlICovDQo+Pj4gI2RlZmluZSBJTlNUUl9WTVNBVkUgSU5TVFJfRU5DKFg4NkVNVUxfT1BD
KDB4MGYsIDB4MDEpLCAwMzMzKQ0KPj4+ICsvKiBTQUYtMi1zYWZlICovDQo+Pj4gI2RlZmluZSBJ
TlNUUl9TVEdJIElOU1RSX0VOQyhYODZFTVVMX09QQygweDBmLCAweDAxKSwgMDMzNCkNCj4+PiAr
LyogU0FGLTItc2FmZSAqLw0KPj4+ICNkZWZpbmUgSU5TVFJfQ0xHSSBJTlNUUl9FTkMoWDg2RU1V
TF9PUEMoMHgwZiwgMHgwMSksIDAzMzUpDQo+Pj4gKy8qIFNBRi0yLXNhZmUgKi8NCj4+PiAjZGVm
aW5lIElOU1RSX0lOVkxQR0EgSU5TVFJfRU5DKFg4NkVNVUxfT1BDKDB4MGYsIDB4MDEpLCAwMzM3
KQ0KPj4+ICsvKiBTQUYtMi1zYWZlICovDQo+Pj4gI2RlZmluZSBJTlNUUl9SRFRTQ1AgSU5TVFJf
RU5DKFg4NkVNVUxfT1BDKDB4MGYsIDB4MDEpLCAwMzcxKQ0KPj4+ICNkZWZpbmUgSU5TVFJfSU5W
RCBJTlNUUl9FTkMoWDg2RU1VTF9PUEMoMHgwZiwgMHgwOCksIDApDQo+Pj4gI2RlZmluZSBJTlNU
Ul9XQklOVkQgSU5TVFJfRU5DKFg4NkVNVUxfT1BDKDB4MGYsIDB4MDkpLCAwKQ0KPiANCj4gLi4u
IHRoaXMgaGFzIGJyb2tlbiBhIHRhYnVsYXRlZCBzdHJ1Y3R1cmUgdG8gaGF2ZSBjb21tZW50cyBh
aGVhZCBvZiBsaW5lcyB3aXRoIG9jdGFsIG51bWJlcnMsIHdoaWxlIC4uLg0KPiANCj4+PiBkaWZm
IC0tZ2l0IGEveGVuL2FyY2gveDg2L2h2bS9zdm0vZW11bGF0ZS5jIGIveGVuL2FyY2gveDg2L2h2
bS9zdm0vZW11bGF0ZS5jDQo+Pj4gaW5kZXggYWEyYzYxYzQzM2IzLi5jNWUzMzQxYzYzMTYgMTAw
NjQ0DQo+Pj4gLS0tIGEveGVuL2FyY2gveDg2L2h2bS9zdm0vZW11bGF0ZS5jDQo+Pj4gKysrIGIv
eGVuL2FyY2gveDg2L2h2bS9zdm0vZW11bGF0ZS5jDQo+Pj4gQEAgLTkwLDkgKzkwLDkgQEAgdW5z
aWduZWQgaW50IHN2bV9nZXRfaW5zbl9sZW4oc3RydWN0IHZjcHUgKnYsIHVuc2lnbmVkIGludCBp
bnN0cl9lbmMpDQo+Pj4gaWYgKCAhaW5zdHJfbW9kcm0gKQ0KPj4+IHJldHVybiBlbXVsX2xlbjsN
Cj4+PiANCj4+PiAtIGlmICggbW9kcm1fbW9kID09IE1BU0tfRVhUUihpbnN0cl9tb2RybSwgMDMw
MCkgJiYNCj4+PiAtIChtb2RybV9yZWcgJiA3KSA9PSBNQVNLX0VYVFIoaW5zdHJfbW9kcm0sIDAw
NzApICYmDQo+Pj4gLSAobW9kcm1fcm0gJiA3KSA9PSBNQVNLX0VYVFIoaW5zdHJfbW9kcm0sIDAw
MDcpICkNCj4+PiArIGlmICggbW9kcm1fbW9kID09IE1BU0tfRVhUUihpbnN0cl9tb2RybSwgMDMw
MCkgJiYgLyogU0FGLTItc2FmZSAqLw0KPj4+ICsgKG1vZHJtX3JlZyAmIDcpID09IE1BU0tfRVhU
UihpbnN0cl9tb2RybSwgMDA3MCkgJiYgLyogU0FGLTItc2FmZSAqLw0KPj4+ICsgKG1vZHJtX3Jt
ICYgNykgPT0gTUFTS19FWFRSKGluc3RyX21vZHJtLCAwMDA3KSApIC8qIFNBRi0yLXNhZmUgKi8N
Cj4+PiByZXR1cm4gZW11bF9sZW47DQo+Pj4gfQ0KPiANCj4gLi4uIHRoaXMgaGFzIGNvbW1lbnRz
IGF0IHRoZSBlbmQgb2YgbGluZXMgd2l0aCBvY3RhbCBudW1iZXJzLg0KPiANCj4gU28gd2hpY2gg
aXMgaXQ/DQoNCkkgYWdyZWUgd2l0aCBBbmRyZXcgaGVyZSBpbiB0aGlzIHNlbnNlOiB0aGUgaW4t
Y29kZSBjb21tZW50IGlzIHN1cHBvc2VkIHRvIGJlIG9uIHRoZSBsaW5lICpiZWZvcmUqIHRoZSB2
aW9sYXRpb24sDQpub3Qgb24gdGhlIHNhbWUgbGluZSwgc28gSeKAmW0gYWxzbyB3b25kZXJpbmcg
aG93IGl0IGlzIGZpeGluZyB0aGUgdmVyeSBmaXJzdCB2aW9sYXRpb24uDQoNCkNoZWVycywNCkx1
Y2ENCg0KPiANCj4gfkFuZHJldw0KDQo=


From xen-devel-bounces@lists.xenproject.org Wed Oct 04 10:30:06 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 04 Oct 2023 10:30:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612477.952384 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnz8X-0006P9-UA; Wed, 04 Oct 2023 10:29:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612477.952384; Wed, 04 Oct 2023 10:29: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 1qnz8X-0006P2-Pe; Wed, 04 Oct 2023 10:29:49 +0000
Received: by outflank-mailman (input) for mailman id 612477;
 Wed, 04 Oct 2023 10:29: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=k75u=FS=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qnz8W-0006Ow-23
 for xen-devel@lists.xenproject.org; Wed, 04 Oct 2023 10:29:48 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id efe1ab65-62a0-11ee-9b0d-b553b5be7939;
 Wed, 04 Oct 2023 12:29:45 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id 1891C4EE0737;
 Wed,  4 Oct 2023 12:29: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: efe1ab65-62a0-11ee-9b0d-b553b5be7939
MIME-Version: 1.0
Date: Wed, 04 Oct 2023 12:29:44 +0200
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: Luca Fancellu <Luca.Fancellu@arm.com>
Cc: Stefano Stabellini <sstabellini@kernel.org>, Xen-devel
 <xen-devel@lists.xenproject.org>, michal.orzel@amd.com,
 xenia.ragiadakou@amd.com, Ayan Kumar Halder <ayan.kumar.halder@amd.com>,
 consulting@bugseng.com, Jan Beulich <jbeulich@suse.com>, =?UTF-8?Q?Rog?=
 =?UTF-8?Q?er_Pau_Monn=C3=A9?= <roger.pau@citrix.com>, Henry Wang
 <Henry.Wang@arm.com>, Simone Ballarin <simone.ballarin@bugseng.com>, Doug
 Goldstein <cardoe@cardoe.com>, George Dunlap <george.dunlap@citrix.com>,
 Julien Grall <julien@xen.org>, Wei Liu <wl@xen.org>, Andrew Cooper
 <andrew.cooper3@citrix.com>
Subject: Re: [XEN PATCH] xen: Add SAF deviations for MISRA C:2012 Rule 7.1
In-Reply-To: <DB96C095-5FAF-40A1-9CA8-002291AA1933@arm.com>
References: <338d8e574db943a86c7605e4c6d9a299d45f067d.1696347345.git.nicola.vetrini@bugseng.com>
 <alpine.DEB.2.22.394.2310031345190.2348112@ubuntu-linux-20-04-desktop>
 <e1736215-52ba-4737-9da3-8f1ba7e832a6@citrix.com>
 <DB96C095-5FAF-40A1-9CA8-002291AA1933@arm.com>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <2894008e8f612296da84267346ae4240@bugseng.com>
X-Sender: nicola.vetrini@bugseng.com
Organization: BUGSENG s.r.l.
Content-Type: text/plain; charset=UTF-8;
 format=flowed
Content-Transfer-Encoding: 8bit

On 04/10/2023 12:06, Luca Fancellu wrote:
> Hi Nicola,
> 
>> On 4 Oct 2023, at 10:56, andrew.cooper3@citrix.com wrote:
>> 
>> On 03/10/2023 9:46 pm, Stefano Stabellini wrote:
>>> On Tue, 3 Oct 2023, Nicola Vetrini wrote:
>>> 
>>>> As specified in rules.rst, these constants can be used
>>>> in the code.
>>>> Their deviation is now accomplished by using a SAF comment,
>>>> rather than an ECLAIR configuration.
>>>> 
>>>> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
>>>> 
>>> "SAF" discussion aside that can be resolved elsewhere:
>>> 
>>> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
>> 
>> Well no.  "SAF" aside (and SAF does need fixing before reposting this 
>> patch, otherwise it's just unnecessary churn), ...
>> 
>>>> diff --git a/xen/arch/x86/hvm/svm/svm.h b/xen/arch/x86/hvm/svm/svm.h
>>>> index d2a781fc3fb5..d0623b72ccfa 100644
>>>> --- a/xen/arch/x86/hvm/svm/svm.h
>>>> +++ b/xen/arch/x86/hvm/svm/svm.h
>>>> @@ -57,14 +57,23 @@ static inline void svm_invlpga(unsigned long 
>>>> linear, uint32_t asid)
>>>> #define INSTR_INT3 INSTR_ENC(X86EMUL_OPC( 0, 0xcc), 0)
>>>> #define INSTR_ICEBP INSTR_ENC(X86EMUL_OPC( 0, 0xf1), 0)
>>>> #define INSTR_HLT INSTR_ENC(X86EMUL_OPC( 0, 0xf4), 0)
>>>> +/* SAF-2-safe */
>>>> #define INSTR_XSETBV INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0321)
>>>> +/* SAF-2-safe */
>>>> #define INSTR_VMRUN INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0330)
>>>> +/* SAF-2-safe */
>>>> #define INSTR_VMCALL INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0331)
>>>> +/* SAF-2-safe */
>>>> #define INSTR_VMLOAD INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0332)
>>>> +/* SAF-2-safe */
>>>> #define INSTR_VMSAVE INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0333)
>>>> +/* SAF-2-safe */
>>>> #define INSTR_STGI INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0334)
>>>> +/* SAF-2-safe */
>>>> #define INSTR_CLGI INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0335)
>>>> +/* SAF-2-safe */
>>>> #define INSTR_INVLPGA INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0337)
>>>> +/* SAF-2-safe */
>>>> #define INSTR_RDTSCP INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0371)
>>>> #define INSTR_INVD INSTR_ENC(X86EMUL_OPC(0x0f, 0x08), 0)
>>>> #define INSTR_WBINVD INSTR_ENC(X86EMUL_OPC(0x0f, 0x09), 0)
>> 
>> ... this has broken a tabulated structure to have comments ahead of 
>> lines with octal numbers, while ...
>> 
>>>> diff --git a/xen/arch/x86/hvm/svm/emulate.c 
>>>> b/xen/arch/x86/hvm/svm/emulate.c
>>>> index aa2c61c433b3..c5e3341c6316 100644
>>>> --- a/xen/arch/x86/hvm/svm/emulate.c
>>>> +++ b/xen/arch/x86/hvm/svm/emulate.c
>>>> @@ -90,9 +90,9 @@ unsigned int svm_get_insn_len(struct vcpu *v, 
>>>> unsigned int instr_enc)
>>>> if ( !instr_modrm )
>>>> return emul_len;
>>>> 
>>>> - if ( modrm_mod == MASK_EXTR(instr_modrm, 0300) &&
>>>> - (modrm_reg & 7) == MASK_EXTR(instr_modrm, 0070) &&
>>>> - (modrm_rm & 7) == MASK_EXTR(instr_modrm, 0007) )
>>>> + if ( modrm_mod == MASK_EXTR(instr_modrm, 0300) && /* SAF-2-safe */
>>>> + (modrm_reg & 7) == MASK_EXTR(instr_modrm, 0070) && /* SAF-2-safe 
>>>> */
>>>> + (modrm_rm & 7) == MASK_EXTR(instr_modrm, 0007) ) /* SAF-2-safe */
>>>> return emul_len;
>>>> }
>> 
>> ... this has comments at the end of lines with octal numbers.
>> 
>> So which is it?
> 
> I agree with Andrew here in this sense: the in-code comment is
> supposed to be on the line *before* the violation,
> not on the same line, so I’m also wondering how it is fixing the very
> first violation.
> 
> Cheers,
> Luca
> 

Actually it justifies what is on either the previous line or the same 
because it's
translated to /* -E> safe MC3R1.R7.1 1 */, where the last number is how 
many lines besides
the current one are to be deviated (e.g. you can have 0 deviate only the 
current line).
Most of the times the current form is what's needed, as you would put 
the comment on a line
of its own. In the case of the if that would break the formatting. The 
downside of doing the same thing on the table is that the first entry 
not to be deviated would actually be deviated.

#define INSTR_INVD INSTR_ENC(X86EMUL_OPC(0x0f, 0x08), 0)

This may not be problematic, since 0 could be considered an octal 
constant, but is an
exception explicitly listed in the MISRA rule.
For the same reason the line

return emul_len;

is deviated by the above comment, but putting an octal constant there 
would for sure
be the result of a deliberate choice. There's the alternative of:

                           /* SAF-2-safe */
    if ( modrm_mod      == MASK_EXTR(instr_modrm, 0300) &&
                           /* SAF-2-safe */
        (modrm_reg & 7) == MASK_EXTR(instr_modrm, 0070) &&
                           /* SAF-2-safe */
        (modrm_rm & 7)  == MASK_EXTR(instr_modrm, 0007) )

to make it consistent with the table and avoid any "hidden" deviated 
line or, again,
the modification of the translation script so that it doesn't use a 
fixed "1" offset, which
is motivated by what you wrote on the thread of the modification of 
xen_analysis.py.

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


From xen-devel-bounces@lists.xenproject.org Wed Oct 04 10:53:48 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 04 Oct 2023 10:53:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612484.952394 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnzVd-0003Vx-Oh; Wed, 04 Oct 2023 10:53:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612484.952394; Wed, 04 Oct 2023 10:53: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 1qnzVd-0003Vq-LM; Wed, 04 Oct 2023 10:53:41 +0000
Received: by outflank-mailman (input) for mailman id 612484;
 Wed, 04 Oct 2023 10:53: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=HAsU=FS=arm.com=Luca.Fancellu@srs-se1.protection.inumbo.net>)
 id 1qnzVc-0003T6-MC
 for xen-devel@lists.xenproject.org; Wed, 04 Oct 2023 10:53:40 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur04on2072.outbound.protection.outlook.com [40.107.7.72])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 46ac16fa-62a4-11ee-98d3-6d05b1d4d9a1;
 Wed, 04 Oct 2023 12:53:39 +0200 (CEST)
Received: from DU2PR04CA0238.eurprd04.prod.outlook.com (2603:10a6:10:2b1::33)
 by GV2PR08MB8148.eurprd08.prod.outlook.com (2603:10a6:150:7c::16)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.29; Wed, 4 Oct
 2023 10:52:59 +0000
Received: from DBAEUR03FT022.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:2b1:cafe::c8) by DU2PR04CA0238.outlook.office365.com
 (2603:10a6:10:2b1::33) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.25 via Frontend
 Transport; Wed, 4 Oct 2023 10:52: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.6863.26 via Frontend Transport; Wed, 4 Oct 2023 10:52:58 +0000
Received: ("Tessian outbound d219f9a4f5c9:v211");
 Wed, 04 Oct 2023 10:52:58 +0000
Received: from a2c42a330716.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 EB505B37-4C3B-484C-9436-E3F3C3E9C23D.1; 
 Wed, 04 Oct 2023 10:52:14 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id a2c42a330716.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Wed, 04 Oct 2023 10:52:14 +0000
Received: from AM6PR08MB3749.eurprd08.prod.outlook.com (2603:10a6:20b:8f::22)
 by GV2PR08MB9376.eurprd08.prod.outlook.com (2603:10a6:150:d0::21)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.26; Wed, 4 Oct
 2023 10:52:09 +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; Wed, 4 Oct 2023
 10:52: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: 46ac16fa-62a4-11ee-98d3-6d05b1d4d9a1
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=PGZw3uCAXhMR0FbnKuWrpcAvNv+ZkLAdFK5p1GdQEpQ=;
 b=D9lI+VjbY0QukQdvTRqkskN+U8AYshFr9xzN+XUqKHYV8l+VieAEC7cwYIL6TxPSlav3C7ZCEH8y7GgCIM0L91nmvkOItE0vK1Yi+aJvmGZHyws+w2A4S/jUKufyB0QUMCZucQ8GMOFSXNPCGcn+wnF4m/YAnWAKoNeacrOGziE=
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: 0acb77ca21072cec
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=NPOe8kTzOkjiMFvp/mE6/4M3nVlUho31uMc4nx+krOonT5s34IqSz6CFOcatbixT5yJaray7nOXRBks/F5wit3RGq2DBQfidOyiIqqyBuNQ6QpE2xPqGxfnVAIvgyZNKiEBPnojVJXZ256VG/sypD2L4KNRszs4kzqNVPNldP/G+7/lJCcMUXrwM7aG79u5tVP7gptSFBZdlH+P52UOF3C3NZgfr6RB+vlxztTJBYRqvG+7Mne2V/trGcW81sI67//9MVFFOFt341cn3+lR0ss0mLsevMVdgRF8WSN93uxjPE6Nbabz2Ca2q1yoQFwitmB9QYDwa6I1OfMAS59XZew==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=PGZw3uCAXhMR0FbnKuWrpcAvNv+ZkLAdFK5p1GdQEpQ=;
 b=gStUZ+6P7Wa2b2ygGI4bBR9IBapm+G0uquh9+zsB3rXm8fNKuHl9cuajby4uaAwKNTd5CjpB6+C/A0awTRODSFiZqviS/KhKzOYh0xeGWuT3R/0r+f36GdnmfDFiqRXv6V6YZTAioHod10jP7rRD8dKqVL68P4mN/NGCTjR8cus+2Q+5duxkNnf6urB7t5Xj07ozGyyr3oHqpAtNffemOEp4T4YEhQq+fR6QCSlbK/kDTxaYke+52qLq6VTNjECiD1wyRA+7mSsc0g+R7cw1BZ9DnXh7dQ43W7iUXo+cllCBvHUZM4g9U82+QLttCcwGh3n44UprfLj3rDUrDWlbFQ==
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=PGZw3uCAXhMR0FbnKuWrpcAvNv+ZkLAdFK5p1GdQEpQ=;
 b=D9lI+VjbY0QukQdvTRqkskN+U8AYshFr9xzN+XUqKHYV8l+VieAEC7cwYIL6TxPSlav3C7ZCEH8y7GgCIM0L91nmvkOItE0vK1Yi+aJvmGZHyws+w2A4S/jUKufyB0QUMCZucQ8GMOFSXNPCGcn+wnF4m/YAnWAKoNeacrOGziE=
From: Luca Fancellu <Luca.Fancellu@arm.com>
To: Nicola Vetrini <nicola.vetrini@bugseng.com>
CC: Stefano Stabellini <sstabellini@kernel.org>, Xen-devel
	<xen-devel@lists.xenproject.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>, Jan Beulich
	<jbeulich@suse.com>, =?utf-8?B?Um9nZXIgUGF1IE1vbm7DqQ==?=
	<roger.pau@citrix.com>, Henry Wang <Henry.Wang@arm.com>, Simone Ballarin
	<simone.ballarin@bugseng.com>, Doug Goldstein <cardoe@cardoe.com>, George
 Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>, Wei Liu
	<wl@xen.org>, Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [XEN PATCH] xen: Add SAF deviations for MISRA C:2012 Rule 7.1
Thread-Topic: [XEN PATCH] xen: Add SAF deviations for MISRA C:2012 Rule 7.1
Thread-Index: AQHZ9qj87vFsnMRst0ybMa+ffKOLU7A5Z4mAgAAGhgCAAAYzgA==
Date: Wed, 4 Oct 2023 10:52:06 +0000
Message-ID: <B00BC78B-E707-4043-A0B4-D320C6717472@arm.com>
References:
 <338d8e574db943a86c7605e4c6d9a299d45f067d.1696347345.git.nicola.vetrini@bugseng.com>
 <alpine.DEB.2.22.394.2310031345190.2348112@ubuntu-linux-20-04-desktop>
 <e1736215-52ba-4737-9da3-8f1ba7e832a6@citrix.com>
 <DB96C095-5FAF-40A1-9CA8-002291AA1933@arm.com>
 <2894008e8f612296da84267346ae4240@bugseng.com>
In-Reply-To: <2894008e8f612296da84267346ae4240@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_|GV2PR08MB9376:EE_|DBAEUR03FT022:EE_|GV2PR08MB8148:EE_
X-MS-Office365-Filtering-Correlation-Id: ed76c803-de1e-4e19-a462-08dbc4c8126c
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:
 xW7zsO/3xfwsGqcYsNVims61r5zuaQJwSSs0+P7pikJ6f0wRy2mT49eMAZQu4NZQvV51tvZhyb3r/A0YpDQnQjLq+k00OJKl1ISLZlqTkbwvbqwX6IN3uBRuC8qBVLU6wfgERyuvrG5Jpr8Dd+ijtnwfTLgB9QXfooClckUcbiWFo9+BDQMPN7OLBI+kB8IYl2L61qnQvxKXA5g3LtT/tyhQ9KKDEfXeqaOhHPhNN+GzCAyQJo7pF7RY/8rOdgRTDXW1v/DczKVuKPBuktvRWCINiO3EnXO+SujUNxUxn5B1eUY+c1ETYZ9YRPPegfx6MEcjo6Odtgv8UpY2XKKeFtb5HiQfDcEgchOMj2PU0pxQTpe2yj9C6f3BPwIUxn+IHPC08mEz/jqYqExg3ygNyeg6v28GdlBLich79crnwccwBxf2zWLDHWQm1RnPFhonfYWgPdeEcClGvdu+57fRbz2pdEyWLZ41mK7lmU1kQBYNmndz+p8tHHynxwOMQHuRgJaEFEHcpWCae+mEk0gMzSPkOrQ7Cso1HA4rnAe3Vv10h7i717GdRL85a76RF+aVuWbnNaXNuCSi7XHjZQjYIZFmBKdMvjhhzVJoMsytNOtxnzYKoOis+e8skVOfKCUp4URgZL0wgeYD6LxygNjL9g==
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)(136003)(396003)(376002)(39860400002)(230922051799003)(451199024)(1800799009)(64100799003)(186009)(36756003)(26005)(122000001)(2616005)(6486002)(6506007)(53546011)(71200400001)(33656002)(6666004)(6512007)(86362001)(8676002)(4326008)(8936002)(5660300002)(2906002)(478600001)(7416002)(316002)(41300700001)(91956017)(6916009)(66946007)(66556008)(66476007)(64756008)(54906003)(66446008)(76116006)(38070700005)(38100700002)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <F2902A9B149E8B4A96CB2E444B87E1B2@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV2PR08MB9376
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:
	3dbc968c-47c8-4352-9089-08dbc4c7f38d
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	7svjKzZIG8xnmj63ZDk27lvoPxH9SrEHFsULp6nqkZKjxW5K2qSXq0eGOPhyd6Wsm5ru7HxzqoWLsFv3paK5JKUTT++jICnRnY8RCp7fN9Nz+27c2KV1b18bGGhwzn3Hma1a8SCnfaGnAWiDMPwNlU/zj+ffdEUTpw9v9+t68NkOlowbUO8qVl15vnXAaqpB/uLS1BIVMBJq0XLp7LzW3cqIxwFLTur+y9XBnb9o6FIb1/MVGoV/UWYnmPFSsF5ijD7cq0+v3Rdae1tysBKwb+OcbvQfAz5dp1I/Cx6SkOwNA108XBKtNlOq3Dv44R1yVAW2zDqvov1ExAub9jOKWgs/JQUvN5hbYznpfWADzHUeTiR30KQkS1vrs1qjrZtysKVBOKIxbNpHRBoz26D8QO9tx+kuF8iFXB2IgvEoNIstRpFe+70HYc8QQZj8I9vQcQQl0hE5/0YtEO/Pa3XjdgQ4ifXrxE2+yo4DE8x2ZoJBpImLCBZfbUNJLdCmvUdJ/VyiWWO2tU9ZY9FgDapGlPdhjNOvkvM9g03U1FQ8XJJg4c9yTh0ABdiLfp5RQE3fPtjGexwOwn2U3yLeXaok2QzeTyuLSH6tlspLvIRalQ9FI8tXcSzwL5lOTeti69SDsiU7ncTAOnZs55fJQ6LQfHyIhE69F8yqN74B1R5+rXiLOWKlE2pnRN3ruRfRGtv+2og8+AsGSx/KuGRmHr/m9g2/4KFZ6UMyWJK/oKmFpKgQNnJ/2MAjLP2caUoxcbPG
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)(396003)(136003)(230922051799003)(82310400011)(64100799003)(186009)(1800799009)(451199024)(40470700004)(36840700001)(46966006)(336012)(40460700003)(2616005)(107886003)(26005)(36860700001)(81166007)(356005)(82740400003)(86362001)(36756003)(40480700001)(33656002)(47076005)(316002)(4326008)(54906003)(6862004)(8936002)(8676002)(5660300002)(41300700001)(70586007)(70206006)(2906002)(6486002)(6666004)(53546011)(6506007)(478600001)(6512007);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Oct 2023 10:52:58.4514
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: ed76c803-de1e-4e19-a462-08dbc4c8126c
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: GV2PR08MB8148

DQoNCj4gT24gNCBPY3QgMjAyMywgYXQgMTE6MjksIE5pY29sYSBWZXRyaW5pIDxuaWNvbGEudmV0
cmluaUBidWdzZW5nLmNvbT4gd3JvdGU6DQo+IA0KPiBPbiAwNC8xMC8yMDIzIDEyOjA2LCBMdWNh
IEZhbmNlbGx1IHdyb3RlOg0KPj4gSGkgTmljb2xhLA0KPj4+IE9uIDQgT2N0IDIwMjMsIGF0IDEw
OjU2LCBhbmRyZXcuY29vcGVyM0BjaXRyaXguY29tIHdyb3RlOg0KPj4+IE9uIDAzLzEwLzIwMjMg
OTo0NiBwbSwgU3RlZmFubyBTdGFiZWxsaW5pIHdyb3RlOg0KPj4+PiBPbiBUdWUsIDMgT2N0IDIw
MjMsIE5pY29sYSBWZXRyaW5pIHdyb3RlOg0KPj4+Pj4gQXMgc3BlY2lmaWVkIGluIHJ1bGVzLnJz
dCwgdGhlc2UgY29uc3RhbnRzIGNhbiBiZSB1c2VkDQo+Pj4+PiBpbiB0aGUgY29kZS4NCj4+Pj4+
IFRoZWlyIGRldmlhdGlvbiBpcyBub3cgYWNjb21wbGlzaGVkIGJ5IHVzaW5nIGEgU0FGIGNvbW1l
bnQsDQo+Pj4+PiByYXRoZXIgdGhhbiBhbiBFQ0xBSVIgY29uZmlndXJhdGlvbi4NCj4+Pj4+IFNp
Z25lZC1vZmYtYnk6IE5pY29sYSBWZXRyaW5pIDxuaWNvbGEudmV0cmluaUBidWdzZW5nLmNvbT4N
Cj4+Pj4gIlNBRiIgZGlzY3Vzc2lvbiBhc2lkZSB0aGF0IGNhbiBiZSByZXNvbHZlZCBlbHNld2hl
cmU6DQo+Pj4+IFJldmlld2VkLWJ5OiBTdGVmYW5vIFN0YWJlbGxpbmkgPHNzdGFiZWxsaW5pQGtl
cm5lbC5vcmc+DQo+Pj4gV2VsbCBuby4gICJTQUYiIGFzaWRlIChhbmQgU0FGIGRvZXMgbmVlZCBm
aXhpbmcgYmVmb3JlIHJlcG9zdGluZyB0aGlzIHBhdGNoLCBvdGhlcndpc2UgaXQncyBqdXN0IHVu
bmVjZXNzYXJ5IGNodXJuKSwgLi4uDQo+Pj4+PiBkaWZmIC0tZ2l0IGEveGVuL2FyY2gveDg2L2h2
bS9zdm0vc3ZtLmggYi94ZW4vYXJjaC94ODYvaHZtL3N2bS9zdm0uaA0KPj4+Pj4gaW5kZXggZDJh
NzgxZmMzZmI1Li5kMDYyM2I3MmNjZmEgMTAwNjQ0DQo+Pj4+PiAtLS0gYS94ZW4vYXJjaC94ODYv
aHZtL3N2bS9zdm0uaA0KPj4+Pj4gKysrIGIveGVuL2FyY2gveDg2L2h2bS9zdm0vc3ZtLmgNCj4+
Pj4+IEBAIC01NywxNCArNTcsMjMgQEAgc3RhdGljIGlubGluZSB2b2lkIHN2bV9pbnZscGdhKHVu
c2lnbmVkIGxvbmcgbGluZWFyLCB1aW50MzJfdCBhc2lkKQ0KPj4+Pj4gI2RlZmluZSBJTlNUUl9J
TlQzIElOU1RSX0VOQyhYODZFTVVMX09QQyggMCwgMHhjYyksIDApDQo+Pj4+PiAjZGVmaW5lIElO
U1RSX0lDRUJQIElOU1RSX0VOQyhYODZFTVVMX09QQyggMCwgMHhmMSksIDApDQo+Pj4+PiAjZGVm
aW5lIElOU1RSX0hMVCBJTlNUUl9FTkMoWDg2RU1VTF9PUEMoIDAsIDB4ZjQpLCAwKQ0KPj4+Pj4g
Ky8qIFNBRi0yLXNhZmUgKi8NCj4+Pj4+ICNkZWZpbmUgSU5TVFJfWFNFVEJWIElOU1RSX0VOQyhY
ODZFTVVMX09QQygweDBmLCAweDAxKSwgMDMyMSkNCj4+Pj4+ICsvKiBTQUYtMi1zYWZlICovDQo+
Pj4+PiAjZGVmaW5lIElOU1RSX1ZNUlVOIElOU1RSX0VOQyhYODZFTVVMX09QQygweDBmLCAweDAx
KSwgMDMzMCkNCj4+Pj4+ICsvKiBTQUYtMi1zYWZlICovDQo+Pj4+PiAjZGVmaW5lIElOU1RSX1ZN
Q0FMTCBJTlNUUl9FTkMoWDg2RU1VTF9PUEMoMHgwZiwgMHgwMSksIDAzMzEpDQo+Pj4+PiArLyog
U0FGLTItc2FmZSAqLw0KPj4+Pj4gI2RlZmluZSBJTlNUUl9WTUxPQUQgSU5TVFJfRU5DKFg4NkVN
VUxfT1BDKDB4MGYsIDB4MDEpLCAwMzMyKQ0KPj4+Pj4gKy8qIFNBRi0yLXNhZmUgKi8NCj4+Pj4+
ICNkZWZpbmUgSU5TVFJfVk1TQVZFIElOU1RSX0VOQyhYODZFTVVMX09QQygweDBmLCAweDAxKSwg
MDMzMykNCj4+Pj4+ICsvKiBTQUYtMi1zYWZlICovDQo+Pj4+PiAjZGVmaW5lIElOU1RSX1NUR0kg
SU5TVFJfRU5DKFg4NkVNVUxfT1BDKDB4MGYsIDB4MDEpLCAwMzM0KQ0KPj4+Pj4gKy8qIFNBRi0y
LXNhZmUgKi8NCj4+Pj4+ICNkZWZpbmUgSU5TVFJfQ0xHSSBJTlNUUl9FTkMoWDg2RU1VTF9PUEMo
MHgwZiwgMHgwMSksIDAzMzUpDQo+Pj4+PiArLyogU0FGLTItc2FmZSAqLw0KPj4+Pj4gI2RlZmlu
ZSBJTlNUUl9JTlZMUEdBIElOU1RSX0VOQyhYODZFTVVMX09QQygweDBmLCAweDAxKSwgMDMzNykN
Cj4+Pj4+ICsvKiBTQUYtMi1zYWZlICovDQo+Pj4+PiAjZGVmaW5lIElOU1RSX1JEVFNDUCBJTlNU
Ul9FTkMoWDg2RU1VTF9PUEMoMHgwZiwgMHgwMSksIDAzNzEpDQo+Pj4+PiAjZGVmaW5lIElOU1RS
X0lOVkQgSU5TVFJfRU5DKFg4NkVNVUxfT1BDKDB4MGYsIDB4MDgpLCAwKQ0KPj4+Pj4gI2RlZmlu
ZSBJTlNUUl9XQklOVkQgSU5TVFJfRU5DKFg4NkVNVUxfT1BDKDB4MGYsIDB4MDkpLCAwKQ0KPj4+
IC4uLiB0aGlzIGhhcyBicm9rZW4gYSB0YWJ1bGF0ZWQgc3RydWN0dXJlIHRvIGhhdmUgY29tbWVu
dHMgYWhlYWQgb2YgbGluZXMgd2l0aCBvY3RhbCBudW1iZXJzLCB3aGlsZSAuLi4NCj4+Pj4+IGRp
ZmYgLS1naXQgYS94ZW4vYXJjaC94ODYvaHZtL3N2bS9lbXVsYXRlLmMgYi94ZW4vYXJjaC94ODYv
aHZtL3N2bS9lbXVsYXRlLmMNCj4+Pj4+IGluZGV4IGFhMmM2MWM0MzNiMy4uYzVlMzM0MWM2MzE2
IDEwMDY0NA0KPj4+Pj4gLS0tIGEveGVuL2FyY2gveDg2L2h2bS9zdm0vZW11bGF0ZS5jDQo+Pj4+
PiArKysgYi94ZW4vYXJjaC94ODYvaHZtL3N2bS9lbXVsYXRlLmMNCj4+Pj4+IEBAIC05MCw5ICs5
MCw5IEBAIHVuc2lnbmVkIGludCBzdm1fZ2V0X2luc25fbGVuKHN0cnVjdCB2Y3B1ICp2LCB1bnNp
Z25lZCBpbnQgaW5zdHJfZW5jKQ0KPj4+Pj4gaWYgKCAhaW5zdHJfbW9kcm0gKQ0KPj4+Pj4gcmV0
dXJuIGVtdWxfbGVuOw0KPj4+Pj4gLSBpZiAoIG1vZHJtX21vZCA9PSBNQVNLX0VYVFIoaW5zdHJf
bW9kcm0sIDAzMDApICYmDQo+Pj4+PiAtIChtb2RybV9yZWcgJiA3KSA9PSBNQVNLX0VYVFIoaW5z
dHJfbW9kcm0sIDAwNzApICYmDQo+Pj4+PiAtIChtb2RybV9ybSAmIDcpID09IE1BU0tfRVhUUihp
bnN0cl9tb2RybSwgMDAwNykgKQ0KPj4+Pj4gKyBpZiAoIG1vZHJtX21vZCA9PSBNQVNLX0VYVFIo
aW5zdHJfbW9kcm0sIDAzMDApICYmIC8qIFNBRi0yLXNhZmUgKi8NCj4+Pj4+ICsgKG1vZHJtX3Jl
ZyAmIDcpID09IE1BU0tfRVhUUihpbnN0cl9tb2RybSwgMDA3MCkgJiYgLyogU0FGLTItc2FmZSAq
Lw0KPj4+Pj4gKyAobW9kcm1fcm0gJiA3KSA9PSBNQVNLX0VYVFIoaW5zdHJfbW9kcm0sIDAwMDcp
ICkgLyogU0FGLTItc2FmZSAqLw0KPj4+Pj4gcmV0dXJuIGVtdWxfbGVuOw0KPj4+Pj4gfQ0KPj4+
IC4uLiB0aGlzIGhhcyBjb21tZW50cyBhdCB0aGUgZW5kIG9mIGxpbmVzIHdpdGggb2N0YWwgbnVt
YmVycy4NCj4+PiBTbyB3aGljaCBpcyBpdD8NCj4+IEkgYWdyZWUgd2l0aCBBbmRyZXcgaGVyZSBp
biB0aGlzIHNlbnNlOiB0aGUgaW4tY29kZSBjb21tZW50IGlzDQo+PiBzdXBwb3NlZCB0byBiZSBv
biB0aGUgbGluZSAqYmVmb3JlKiB0aGUgdmlvbGF0aW9uLA0KPj4gbm90IG9uIHRoZSBzYW1lIGxp
bmUsIHNvIEnigJltIGFsc28gd29uZGVyaW5nIGhvdyBpdCBpcyBmaXhpbmcgdGhlIHZlcnkNCj4+
IGZpcnN0IHZpb2xhdGlvbi4NCj4+IENoZWVycywNCj4+IEx1Y2ENCj4gDQoNCkhpIE5pY29sYSwN
Cg0KPiBBY3R1YWxseSBpdCBqdXN0aWZpZXMgd2hhdCBpcyBvbiBlaXRoZXIgdGhlIHByZXZpb3Vz
IGxpbmUgb3IgdGhlIHNhbWUgYmVjYXVzZSBpdCdzDQo+IHRyYW5zbGF0ZWQgdG8gLyogLUU+IHNh
ZmUgTUMzUjEuUjcuMSAxICovLCB3aGVyZSB0aGUgbGFzdCBudW1iZXIgaXMgaG93IG1hbnkgbGlu
ZXMgYmVzaWRlcw0KPiB0aGUgY3VycmVudCBvbmUgYXJlIHRvIGJlIGRldmlhdGVkIChlLmcuIHlv
dSBjYW4gaGF2ZSAwIGRldmlhdGUgb25seSB0aGUgY3VycmVudCBsaW5lKS4NCg0KSnVzdCB0byB1
bmRlcnN0YW5kLCBkb2VzIHRoaXMgd2F5Og0KDQo8bGluZSBBPg0KLyogLUU+IHNhZmUgTUMzUjEu
UjcuMSAxICovDQo8bGluZSBCPg0KDQpKdXN0aWZpZXMgb25seSBsaW5lIEI/IEJlY2F1c2UgSSB0
aG91Z2h0IHNvLCBidXQgbm93IEkgd2FudCB0byBiZSBzdXJlLCBvdGhlcndpc2UgaXQgZG9lc27i
gJl0IGFjdA0KYXMgaW50ZW5kZWQuDQoNCg0KPiBNb3N0IG9mIHRoZSB0aW1lcyB0aGUgY3VycmVu
dCBmb3JtIGlzIHdoYXQncyBuZWVkZWQsIGFzIHlvdSB3b3VsZCBwdXQgdGhlIGNvbW1lbnQgb24g
YSBsaW5lDQo+IG9mIGl0cyBvd24uIEluIHRoZSBjYXNlIG9mIHRoZSBpZiB0aGF0IHdvdWxkIGJy
ZWFrIHRoZSBmb3JtYXR0aW5nLiBUaGUgZG93bnNpZGUgb2YgZG9pbmcgdGhlIHNhbWUgdGhpbmcg
b24gdGhlIHRhYmxlIGlzIHRoYXQgdGhlIGZpcnN0IGVudHJ5IG5vdCB0byBiZSBkZXZpYXRlZCB3
b3VsZCBhY3R1YWxseSBiZSBkZXZpYXRlZC4NCj4gDQo+ICNkZWZpbmUgSU5TVFJfSU5WRCBJTlNU
Ul9FTkMoWDg2RU1VTF9PUEMoMHgwZiwgMHgwOCksIDApDQo+IA0KPiBUaGlzIG1heSBub3QgYmUg
cHJvYmxlbWF0aWMsIHNpbmNlIDAgY291bGQgYmUgY29uc2lkZXJlZCBhbiBvY3RhbCBjb25zdGFu
dCwgYnV0IGlzIGFuDQo+IGV4Y2VwdGlvbiBleHBsaWNpdGx5IGxpc3RlZCBpbiB0aGUgTUlTUkEg
cnVsZS4NCj4gRm9yIHRoZSBzYW1lIHJlYXNvbiB0aGUgbGluZQ0KPiANCj4gcmV0dXJuIGVtdWxf
bGVuOw0KPiANCj4gaXMgZGV2aWF0ZWQgYnkgdGhlIGFib3ZlIGNvbW1lbnQsIGJ1dCBwdXR0aW5n
IGFuIG9jdGFsIGNvbnN0YW50IHRoZXJlIHdvdWxkIGZvciBzdXJlDQo+IGJlIHRoZSByZXN1bHQg
b2YgYSBkZWxpYmVyYXRlIGNob2ljZS4gVGhlcmUncyB0aGUgYWx0ZXJuYXRpdmUgb2Y6DQo+IA0K
PiAgICAgICAgICAgICAgICAgICAgICAgICAgLyogU0FGLTItc2FmZSAqLw0KPiAgIGlmICggbW9k
cm1fbW9kICAgICAgPT0gTUFTS19FWFRSKGluc3RyX21vZHJtLCAwMzAwKSAmJg0KPiAgICAgICAg
ICAgICAgICAgICAgICAgICAgLyogU0FGLTItc2FmZSAqLw0KPiAgICAgICAobW9kcm1fcmVnICYg
NykgPT0gTUFTS19FWFRSKGluc3RyX21vZHJtLCAwMDcwKSAmJg0KPiAgICAgICAgICAgICAgICAg
ICAgICAgICAgLyogU0FGLTItc2FmZSAqLw0KPiAgICAgICAobW9kcm1fcm0gJiA3KSAgPT0gTUFT
S19FWFRSKGluc3RyX21vZHJtLCAwMDA3KSApDQo+IA0KPiB0byBtYWtlIGl0IGNvbnNpc3RlbnQg
d2l0aCB0aGUgdGFibGUgYW5kIGF2b2lkIGFueSAiaGlkZGVuIiBkZXZpYXRlZCBsaW5lIG9yLCBh
Z2FpbiwNCj4gdGhlIG1vZGlmaWNhdGlvbiBvZiB0aGUgdHJhbnNsYXRpb24gc2NyaXB0IHNvIHRo
YXQgaXQgZG9lc24ndCB1c2UgYSBmaXhlZCAiMSIgb2Zmc2V0LCB3aGljaA0KPiBpcyBtb3RpdmF0
ZWQgYnkgd2hhdCB5b3Ugd3JvdGUgb24gdGhlIHRocmVhZCBvZiB0aGUgbW9kaWZpY2F0aW9uIG9m
IHhlbl9hbmFseXNpcy5weS4NCg0KRnJvbSB0aGUgZG9jdW1lbnRhdGlvbjoNCg0KICAgIEluIHRo
ZSBYZW4gY29kZWJhc2UsIHRoZXNlIHRhZ3Mgd2lsbCBiZSB1c2VkIHRvIGRvY3VtZW50IGFuZCBz
dXBwcmVzcyBmaW5kaW5nczoNCg0KICAgIC0gU0FGLVgtc2FmZTogVGhpcyB0YWcgbWVhbnMgdGhh
dCB0aGUgbmV4dCBsaW5lIG9mIGNvZGUgY29udGFpbnMgYSBmaW5kaW5nLCBidXQNCiAgICAgIHRo
ZSBub24gY29tcGxpYW5jZSB0byB0aGUgY2hlY2tlciBpcyBhbmFseXNlZCBhbmQgZGVtb25zdHJh
dGVkIHRvIGJlIHNhZmUuDQoNCkkgdW5kZXJzdGFuZCB0aGF0IEVjbGFpciBpcyBjYXBhYmxlIG9m
IHN1cHByZXNzaW5nIGFsc28gdGhlIGxpbmUgaW4gd2hpY2ggdGhlIGluLWNvZGUgc3VwcHJlc3Np
b24NCmNvbW1lbnQgcmVzaWRlcywgYnV0IHRoZXNlIGdlbmVyaWMgWGVuIGluLWNvZGUgc3VwcHJl
c3Npb24gY29tbWVudCBhcmUgbWVhbnQgdG8gYmUgdXNlZA0KYnkgbXVsdGlwbGUgc3RhdGljIGFu
YWx5c2lzIHRvb2xzIGFuZCBtYW55IG9mIHRoZW0gc3VwcHJlc3Mgb25seSB0aGUgbGluZSBuZXh0
IHRvIHRoZSBjb21tZW50DQooQ292ZXJpdHksIGNwcGNoZWNrKS4NCg0KU28gSeKAmW0gaW4gZmF2
b3VyIG9mIHlvdXIgYXBwcm9hY2ggYmVsb3csIGNsZWFybHkgaXQgZGVwZW5kcyBvbiB3aGF0IHRo
ZSBtYWludGFpbmVycyBmZWVkYmFjayBpczoNCg0KPiANCj4gICAgICAgICAgICAgICAgICAgICAg
ICAgIC8qIFNBRi0yLXNhZmUgKi8NCj4gICBpZiAoIG1vZHJtX21vZCAgICAgID09IE1BU0tfRVhU
UihpbnN0cl9tb2RybSwgMDMwMCkgJiYNCj4gICAgICAgICAgICAgICAgICAgICAgICAgIC8qIFNB
Ri0yLXNhZmUgKi8NCj4gICAgICAgKG1vZHJtX3JlZyAmIDcpID09IE1BU0tfRVhUUihpbnN0cl9t
b2RybSwgMDA3MCkgJiYNCj4gICAgICAgICAgICAgICAgICAgICAgICAgIC8qIFNBRi0yLXNhZmUg
Ki8NCj4gICAgICAgKG1vZHJtX3JtICYgNykgID09IE1BU0tfRVhUUihpbnN0cl9tb2RybSwgMDAw
NykgKQ0KDQoNCkNoZWVyLA0KTHVjYQ0KDQoNCg0K


From xen-devel-bounces@lists.xenproject.org Wed Oct 04 10:55:19 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 04 Oct 2023 10:55:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612489.952404 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnzXC-0004nu-6J; Wed, 04 Oct 2023 10:55:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612489.952404; Wed, 04 Oct 2023 10:55: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 1qnzXC-0004nn-35; Wed, 04 Oct 2023 10:55:18 +0000
Received: by outflank-mailman (input) for mailman id 612489;
 Wed, 04 Oct 2023 10:55: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 1qnzXA-0004nh-RY
 for xen-devel@lists.xenproject.org; Wed, 04 Oct 2023 10:55: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 1qnzX2-00086b-EE; Wed, 04 Oct 2023 10:55:08 +0000
Received: from [15.248.2.150] (helo=[10.24.67.38])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qnzX2-0005vE-4S; Wed, 04 Oct 2023 10:55: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=UvYlKcmOhJGB6zR0/3K+UhQR9PdFtl74RdJ3xLwAJh8=; b=ABRj2VOV+cXbrb7kk3Rz3xGQ1f
	e2WIaWvNYTDrDMWMcAkktojVwbvoYTYuL4XBoQIBVUVHg3ndrROk/DzxAwc80dTVmGVX3cdn219u2
	9cj92u5I1vw8W6qYvV/EGxt5wiMP2fI2Bp2x26JglS4gbcaP6MWW0vviDNKA6lKWIuEQ=;
Message-ID: <c0b67401-dfe5-475f-8640-b66ac32a80fb@xen.org>
Date: Wed, 4 Oct 2023 11:55:05 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: Issue with shared information page on Xen/ARM 4.17
Content-Language: en-GB
To: =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>,
 Elliott Mitchell <ehem+xen@m5p.com>
Cc: xen-devel@lists.xenproject.org,
 Stefano Stabellini <sstabellini@kernel.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>
References: <ZRY7Ls3p6M6pakMq@mattapan.m5p.com>
 <ZRvQNKyYpLDVTs0i@MacBookPdeRoger> <ZRxpC7ukhiYvzz5m@mattapan.m5p.com>
 <ZR0erl_OSkNgIQjx@MacBookPdeRoger>
From: Julien Grall <julien@xen.org>
In-Reply-To: <ZR0erl_OSkNgIQjx@MacBookPdeRoger>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

Hi Roger,

On 04/10/2023 09:13, Roger Pau Monné wrote:
> On Tue, Oct 03, 2023 at 12:18:35PM -0700, Elliott Mitchell wrote:
>> On Tue, Oct 03, 2023 at 10:26:28AM +0200, Roger Pau Monné wrote:
>>> On Thu, Sep 28, 2023 at 07:49:18PM -0700, Elliott Mitchell wrote:
>>>> 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.
>>>
>>> This is due to 71320946d5edf AFAICT.
>>
>> Yes.  While the -EBUSY line may be the one triggering, I'm unsure why.
>> This seems a fairly reasonable change, so I had no intention of asking
>> for a revert (which likely would have been rejected).  There is also a
>> real possibility the -EBUSY comes from elsewhere.  Could also be
>> 71320946d5edf caused a bug elsewhere to be exposed.
> 
> A good way to know would be to attempt to revert 71320946d5edf and see
> if that fixes your issue.
> 
> Alternatively you can try (or similar):
> 
> diff --git a/xen/arch/arm/mm.c b/xen/arch/arm/mm.c
> index 6ccffeaea57d..105ef3faecfd 100644
> --- a/xen/arch/arm/mm.c
> +++ b/xen/arch/arm/mm.c
> @@ -1424,6 +1424,8 @@ int xenmem_add_to_physmap_one(
>                   page_set_xenheap_gfn(mfn_to_page(mfn), gfn);
>           }
>           else
> +        {
> +            printk("%u already mapped\n", space);
>               /*
>                * Mandate the caller to first unmap the page before mapping it
>                * again. This is to prevent Xen creating an unwanted hole in
> @@ -1432,6 +1434,7 @@ int xenmem_add_to_physmap_one(
>                * to unmap it afterwards.
>                */
>               rc = -EBUSY;
> +        }
>           p2m_write_unlock(p2m);
>       }
>   
> 
>>>> 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?
>>>
>>> I think the issue is that you are mapping the shared info page over a
>>> guest RAM page, and in order to do that you would fist need to create
>>> a hole and then map the shared info page.  IOW: the issue is not with
>>> edk2 not having unmapped the page, but with FreeBSD trying to map the
>>> shared_info over a RAM page instead of a hole in the p2m.  x86
>>> behavior is different here, and does allow mapping the shared_info
>>> page over a RAM gfn (by first removing the backing RAM page on the
>>> gfn).
>>
>> An interesting thought.  I thought I'd tried this, but since I didn't see
>> such in my experiments list.  What I had tried was removing all the pages
>> in the suggested mapping range.  Yet this failed.
> 
> Yeah, I went too fast and didn't read the code correctly, it is not
> checking that the provided gfn is already populated, but whether the
> mfn intended to be mapped is already mapped at a different location.
> 
>> Since this seemed reasonable, I've now tried and found it fails.  The
>> XENMEM_remove_from_physmap call returns 0.
> 
> XENMEM_remove_from_physmap returning 0 is fine, but it seems to me
> like edk2 hasn't unmapped the shared_info page.  The OS has no idea
> at which position the shared_info page is currently mapped, and hence
> can't do anything to attempt to unmap it in order to cover up for
> buggy firmware.
> 
> edk2 should be the entity to issue the XENMEM_remove_from_physmap
> against the gfn where it has the shared_info page mapped.  Likely
> needs to be done as part of ExitBootServices() method.
> 
> FWIW, 71320946d5edf is an ABI change, and as desirable as such
> behavior might be, a new hypercall should have introduced that had the
> behavior that the change intended to retrofit into
> XENMEM_add_to_physmap.
I can see how you think this is an ABI change but the previous behavior 
was incorrect. Before this patch, on Arm, we would allow the shared page 
to be mapped twice. As we don't know where the firmware had mapped it 
this could result to random corruption.

Now, we could surely decide to remove the page as x86 did. But this 
could leave a hole in the RAM. As the OS would not know where the hole 
is, this could lead to page fault randomly during runtime.

Neither of the two behaviors help the users. In fact, I think they only 
make the experience worse because you don't know when the issue will happen.

AFAICT, there is no way for an HVM guestto know which GFN was inuse. So 
in all the cases, I can't think of a way for the OS to workaround 
properly buggy firmware. Therefore, returning -EBUSY is the safest we 
can do for our users and I don't view it as a ABI change (someone rely 
on the previous behavior is bound to failure).

For more details, you can look at the original thread ([1], [2]).

Cheers,

[1] ef5bf7df-ad8a-e420-0fc4-d8f0a0e0f2fc@xen.org
[2] dfd7657e-bbb9-3d96-2650-063561a00b9b@xen.org


-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Wed Oct 04 11:01:33 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 04 Oct 2023 11:01:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612493.952414 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnzd9-0006JI-QO; Wed, 04 Oct 2023 11:01:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612493.952414; Wed, 04 Oct 2023 11: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 1qnzd9-0006JB-Nj; Wed, 04 Oct 2023 11:01:27 +0000
Received: by outflank-mailman (input) for mailman id 612493;
 Wed, 04 Oct 2023 11:01: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 1qnzd7-0006J5-Sl
 for xen-devel@lists.xenproject.org; Wed, 04 Oct 2023 11:01: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 1qnzd6-0008Hp-42; Wed, 04 Oct 2023 11:01:24 +0000
Received: from [15.248.2.150] (helo=[10.24.67.38])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qnzd5-0006CF-T9; Wed, 04 Oct 2023 11: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>
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=zbfNor62puBVqa4NZIMsnWOAnMHhisyHaWMiyMIiYAY=; b=hXtFiN2OYiMZZavmusJtqfJQjb
	gEYDZpdoc4apVuXlALpSoZDTVj9wvStaQQJKhsPdaOcPjk0+3Sq8m0ut77nGfv8+dPveMq1XqqRQM
	Qs/qIMHRay0JSLMNRw19g556BX3hIfu6r2B1Xgim39FmCwQ7HOzlVZ+XtY7vUZLOIQbM=;
Message-ID: <30582a7c-f505-462d-9dc4-22efb5a0860c@xen.org>
Date: Wed, 4 Oct 2023 12:01:21 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v5 06/10] x86/mem-sharing: copy GADDR based shared guest
 areas
Content-Language: en-GB
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, henry.wang@arm.com,
 Jan Beulich <jbeulich@suse.com>, Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>
References: <20231002151127.71020-1-roger.pau@citrix.com>
 <20231002151127.71020-7-roger.pau@citrix.com>
 <CABfawhnHg3KrGP-hp4_Q8GvSf2nVSVSyK24HKqAGuWp_AtD8-A@mail.gmail.com>
 <ZRwlXls8xRyc8AX4@MacBookPdeRoger>
 <8ee8d70b-5b69-4834-b7e3-572e96effa5c@xen.org>
 <CABfawhn0vH6rS8-SJQJVZtto2HA61By1bCG3w9bJMJR3x+rXsg@mail.gmail.com>
 <ZR0gX6wyXLD_6nY6@MacBookPdeRoger>
From: Julien Grall <julien@xen.org>
In-Reply-To: <ZR0gX6wyXLD_6nY6@MacBookPdeRoger>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

Hi Roger,

On 04/10/2023 09:20, Roger Pau Monné wrote:
> On Tue, Oct 03, 2023 at 04:25:58PM -0400, Tamas K Lengyel wrote:
>> On Tue, Oct 3, 2023 at 11:07 AM Julien Grall <julien@xen.org> wrote:
>>>
>>> Hi Roger,
>>>
>>> On 03/10/2023 15:29, Roger Pau Monné wrote:
>>>> On Tue, Oct 03, 2023 at 09:53:11AM -0400, Tamas K Lengyel wrote:
>>>
>>> Tamas, somehow your e-mails don't show up in my inbox (even if I am
>>> CCed) or even on lore.kernel.org/xen-devel. It is not even in my SPAM
>>> folder.
>>
>> Thanks, I've switched mailservers, hopefully that resolves the issue.

It did. Thanks!

>>
>>>
>>>>> On Mon, Oct 2, 2023 at 11:13 AM Roger Pau Monne <roger.pau@citrix.com> wrote:
>>>>>>
>>>>>> From: Jan Beulich <jbeulich@suse.com>
>>>>>>
>>>>>> 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>
>>>>>> Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
>>>>>> ---
>>>>>> Changes since v4:
>>>>>>    - Rely on map_guest_area() to populate the child p2m if necessary.
>>>>>> ---
>>>>>>    xen/arch/x86/mm/mem_sharing.c | 31 +++++++++++++++++++++++++++++++
>>>>>>    xen/common/domain.c           |  7 +++++++
>>>>>>    2 files changed, 38 insertions(+)
>>>>>>
>>>>>> diff --git a/xen/arch/x86/mm/mem_sharing.c b/xen/arch/x86/mm/mem_sharing.c
>>>>>> index 5f8f1fb4d871..99cf001fd70f 100644
>>>>>> --- a/xen/arch/x86/mm/mem_sharing.c
>>>>>> +++ b/xen/arch/x86/mm/mem_sharing.c
>>>>>> @@ -1641,6 +1641,24 @@ static void copy_vcpu_nonreg_state(struct vcpu *d_vcpu, struct vcpu *cd_vcpu)
>>>>>>        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)
>>>>>> +{
>>>>>> +    unsigned int offset;
>>>>>> +
>>>>>> +    /* Check if no area to map, or already mapped. */
>>>>>> +    if ( !d_area->pg || cd_area->pg )
>>>>>> +        return 0;
>>>>>> +
>>>>>> +    offset = PAGE_OFFSET(d_area->map);
>>>>>> +    return map_guest_area(cd_vcpu, gfn_to_gaddr(
>>>>>> +                                       mfn_to_gfn(d, page_to_mfn(d_area->pg))) +
>>>>>> +                                   offset,
>>>>>> +                          PAGE_SIZE - offset, cd_area, NULL);
>>>>>> +}
>>>>>> +
>>>>>>    static int copy_vpmu(struct vcpu *d_vcpu, struct vcpu *cd_vcpu)
>>>>>>    {
>>>>>>        struct vpmu_struct *d_vpmu = vcpu_vpmu(d_vcpu);
>>>>>> @@ -1709,6 +1727,16 @@ static int copy_vcpu_settings(struct domain *cd, const struct domain *d)
>>>>>>                    return ret;
>>>>>>            }
>>>>>>
>>>>>> +        /* 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;
>>>>>> @@ -1950,7 +1978,10 @@ int mem_sharing_fork_reset(struct domain *d, bool reset_state,
>>>>>>
>>>>>>     state:
>>>>>>        if ( reset_state )
>>>>>> +    {
>>>>>>            rc = copy_settings(d, pd);
>>>>>> +        /* TBD: What to do here with -ERESTART? */
>>>>>
>>>>> There is no situation where we get an -ERESTART here currently. Is
>>>>> map_guest_area expected to run into situations where it fails with
>>>>> that rc?
>>>>
>>>> Yes, there's a spin_trylock() call that will result in
>>>> map_guest_area() returning -ERESTART.
>>>>
>>>>> If yes we might need a lock in place so we can block until it
>>>>> can succeed.
>>>>
>>>> I'm not sure whether returning -ERESTART can actually happen in
>>>> map_guest_area() for the fork case: the child domain is still paused
>>>> at this point, so there can't be concurrent guest hypercalls that
>>>> would also cause the domain hypercall_deadlock_mutex to be acquired.
>>
>> Perhaps turning it into an ASSERT(rc != -ERESTART) is the way to go at
>> this point. If we run into any cases where it trips we can reason it
>> out.
> 
> In order to avoid possibly returning -ERESTART (which should never be
> seen by hypercall callers) we might want to convert it to -EBUSY and
> let the caller pick the pieces.

I realize this is a matter of taste. I think EAGAIN is a better 
conversion for ERESTART because we effectively want to caller to try again.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Wed Oct 04 11:17:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 04 Oct 2023 11:17:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612500.952423 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qnzsw-0001rV-1W; Wed, 04 Oct 2023 11:17:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612500.952423; Wed, 04 Oct 2023 11: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 1qnzsv-0001rO-Uu; Wed, 04 Oct 2023 11:17:45 +0000
Received: by outflank-mailman (input) for mailman id 612500;
 Wed, 04 Oct 2023 11:17: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=ZBSc=FS=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qnzsu-0001rI-B8
 for xen-devel@lists.xenproject.org; Wed, 04 Oct 2023 11:17:44 +0000
Received: from mail-ed1-x52f.google.com (mail-ed1-x52f.google.com
 [2a00:1450:4864:20::52f])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id a25805dc-62a7-11ee-9b0d-b553b5be7939;
 Wed, 04 Oct 2023 13:17:41 +0200 (CEST)
Received: by mail-ed1-x52f.google.com with SMTP id
 4fb4d7f45d1cf-53636f98538so3518916a12.1
 for <xen-devel@lists.xenproject.org>; Wed, 04 Oct 2023 04:17: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
 m7-20020a05600c280700b00405391f485fsm1249930wmb.41.2023.10.04.04.17.40
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 04 Oct 2023 04: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: a25805dc-62a7-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1696418261; x=1697023061; 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=qa1HJPdUhSniKTixvdDGEhALqGOZ6dnaZU3zY0iVqLw=;
        b=F8zbnd2IqRsodypzGbOAQCaZXHf/op6EWCqGAxmFMxPh9v/dKt5X4pZZSl2LvJ2V0M
         TAUSKpK545s5bvfVCH9dEccscj05iMey81tVJfyId0TJ02K1DL0mRIxjSMU0SMRvT06Y
         T2+dakkrqmO44snBcIZxEBqL666Yj/GVB9RWQ=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1696418261; x=1697023061;
        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=qa1HJPdUhSniKTixvdDGEhALqGOZ6dnaZU3zY0iVqLw=;
        b=uaQ8VmqLrc5Q/nYgBkyj6zVtaC9RPwru3O3igAheBf8XFMMHIAAD6JvuubckNmJ5s0
         9S15I5LT3GRPE7/5dWwvRh+Uu21nuou9J7GVPvkHvyFQ3B2QNu1WYzFhtk3QYZumZHFr
         G57ETnTL22jeuLP8KDG16vOcWJooUWC7Z0a9aZI+O/Kp7qu1bH4WCycdtEgMoP5L2Pb+
         mUpAcPw9lHh0tMPlKktZIXnqjoJra8KKSPy1JTvO7eFvmeqoDDwY5yb6dVj00PgPOwJg
         C9BrXsziPb1ND6lumMpwfkZecARxkMuxucrdbPfnyp3NwQrPSac7QONd1ADMF1pKU2Ch
         52tw==
X-Gm-Message-State: AOJu0YyRY8Mp7jNypt7g9MjXTUt/9NJCrWLgBpV3KncQ8DX+DyRYFTTX
	uH1mICwabq9bW381uQs4Ii9jIw==
X-Google-Smtp-Source: AGHT+IEvkHTAURIMWiJgJSA/qhGbv8X6+WHcNFaKdy3+rn1xKwAB/bgEj8cqsyLZvo6zmdcOWsn5Lw==
X-Received: by 2002:a17:906:104c:b0:9b2:74a1:6b30 with SMTP id j12-20020a170906104c00b009b274a16b30mr1559590ejj.33.1696418261331;
        Wed, 04 Oct 2023 04:17:41 -0700 (PDT)
Content-Type: multipart/alternative;
 boundary="------------abQ0Z5pnN7yNbqhn0hkAp1nU"
Message-ID: <23802fca-7aaf-4792-a57c-2a3b2502ca70@citrix.com>
Date: Wed, 4 Oct 2023 12:17:40 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [XEN PATCH] xen: Add SAF deviations for MISRA C:2012 Rule 7.1
Content-Language: en-GB
To: Luca Fancellu <Luca.Fancellu@arm.com>,
 Nicola Vetrini <nicola.vetrini@bugseng.com>
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 Xen-devel <xen-devel@lists.xenproject.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>,
 Jan Beulich <jbeulich@suse.com>, =?UTF-8?Q?Roger_Pau_Monn=C3=A9?=
 <roger.pau@citrix.com>, Henry Wang <Henry.Wang@arm.com>,
 Simone Ballarin <simone.ballarin@bugseng.com>,
 Doug Goldstein <cardoe@cardoe.com>, George Dunlap
 <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Wei Liu <wl@xen.org>
References: <338d8e574db943a86c7605e4c6d9a299d45f067d.1696347345.git.nicola.vetrini@bugseng.com>
 <alpine.DEB.2.22.394.2310031345190.2348112@ubuntu-linux-20-04-desktop>
 <e1736215-52ba-4737-9da3-8f1ba7e832a6@citrix.com>
 <DB96C095-5FAF-40A1-9CA8-002291AA1933@arm.com>
 <2894008e8f612296da84267346ae4240@bugseng.com>
 <B00BC78B-E707-4043-A0B4-D320C6717472@arm.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: <B00BC78B-E707-4043-A0B4-D320C6717472@arm.com>

This is a multi-part message in MIME format.
--------------abQ0Z5pnN7yNbqhn0hkAp1nU
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 04/10/2023 11:52 am, Luca Fancellu wrote:
> From the documentation:
>
>     In the Xen codebase, these tags will be used to document and suppress findings:
>
>     - SAF-X-safe: This tag means that the next line of code contains a finding, but
>       the non compliance to the checker is analysed and demonstrated to be safe.
>
> I understand that Eclair is capable of suppressing also the line in which the in-code suppression
> comment resides, but these generic Xen in-code suppression comment are meant to be used
> by multiple static analysis tools and many of them suppress only the line next to the comment
> (Coverity, cppcheck).
>
> So I’m in favour of your approach below, clearly it depends on what the maintainers feedback is:
>
>>                          /* SAF-2-safe */
>>   if ( modrm_mod      == MASK_EXTR(instr_modrm, 0300) &&
>>                          /* SAF-2-safe */
>>       (modrm_reg & 7) == MASK_EXTR(instr_modrm, 0070) &&
>>                          /* SAF-2-safe */
>>       (modrm_rm & 7)  == MASK_EXTR(instr_modrm, 0007) )

To be clear, this is illegible and a non-starter from a code maintenance
point of view.

It is bad enough needing annotations to start with, but the annotations
*must* not interfere with the prior legibility.

The form with comments on the end, that do not break up the tabulation
of the code, is tolerable, providing the SAF turns into something
meaningful.

~Andrew

P.S. to be clear, I'm not saying that an ahead-of-line comments are
unacceptable generally.  Something like

    /* $FOO-$N-safe */
    if ( blah )

might be fine in context, but that is a decision that needs to be made
based on how the code reads with the comment in place.
--------------abQ0Z5pnN7yNbqhn0hkAp1nU
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: 8bit

<!DOCTYPE html>
<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body>
    <div class="moz-cite-prefix">On 04/10/2023 11:52 am, Luca Fancellu
      wrote:<span style="white-space: pre-wrap">
</span></div>
    <blockquote type="cite"
      cite="mid:B00BC78B-E707-4043-A0B4-D320C6717472@arm.com">
      <pre class="moz-quote-pre" wrap="">From the documentation:

    In the Xen codebase, these tags will be used to document and suppress findings:

    - SAF-X-safe: This tag means that the next line of code contains a finding, but
      the non compliance to the checker is analysed and demonstrated to be safe.

I understand that Eclair is capable of suppressing also the line in which the in-code suppression
comment resides, but these generic Xen in-code suppression comment are meant to be used
by multiple static analysis tools and many of them suppress only the line next to the comment
(Coverity, cppcheck).

So I’m in favour of your approach below, clearly it depends on what the maintainers feedback is:

</pre>
      <blockquote type="cite">
        <pre class="moz-quote-pre" wrap="">
                         /* SAF-2-safe */
  if ( modrm_mod      == MASK_EXTR(instr_modrm, 0300) &amp;&amp;
                         /* SAF-2-safe */
      (modrm_reg &amp; 7) == MASK_EXTR(instr_modrm, 0070) &amp;&amp;
                         /* SAF-2-safe */
      (modrm_rm &amp; 7)  == MASK_EXTR(instr_modrm, 0007) )</pre>
      </blockquote>
    </blockquote>
    <br>
    To be clear, this is illegible and a non-starter from a code
    maintenance point of view.<br>
    <br>
    It is bad enough needing annotations to start with, but the
    annotations *must* not interfere with the prior legibility.<br>
    <br>
    The form with comments on the end, that do not break up the
    tabulation of the code, is tolerable, providing the SAF turns into
    something meaningful.<br>
    <br>
    ~Andrew<br>
    <br>
    P.S. to be clear, I'm not saying that an ahead-of-line comments are
    unacceptable generally.  Something like<br>
    <br>
        /* $FOO-$N-safe */<br>
        if ( blah )<br>
    <br>
    might be fine in context, but that is a decision that needs to be
    made based on how the code reads with the comment in place.<br>
  </body>
</html>

--------------abQ0Z5pnN7yNbqhn0hkAp1nU--


From xen-devel-bounces@lists.xenproject.org Wed Oct 04 11:37:51 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 04 Oct 2023 11:37:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612504.952434 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qo0C8-0006ck-LG; Wed, 04 Oct 2023 11:37:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612504.952434; Wed, 04 Oct 2023 11: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 1qo0C8-0006cd-HC; Wed, 04 Oct 2023 11:37:36 +0000
Received: by outflank-mailman (input) for mailman id 612504;
 Wed, 04 Oct 2023 11:37: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=HAsU=FS=arm.com=Luca.Fancellu@srs-se1.protection.inumbo.net>)
 id 1qo0C6-0006cX-Fa
 for xen-devel@lists.xenproject.org; Wed, 04 Oct 2023 11:37:34 +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 67ce93b2-62aa-11ee-98d3-6d05b1d4d9a1;
 Wed, 04 Oct 2023 13:37:32 +0200 (CEST)
Received: from DB7PR05CA0041.eurprd05.prod.outlook.com (2603:10a6:10:2e::18)
 by DU0PR08MB9933.eurprd08.prod.outlook.com (2603:10a6:10:413::14) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.29; Wed, 4 Oct
 2023 11:37:28 +0000
Received: from DBAEUR03FT025.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:2e:cafe::ab) by DB7PR05CA0041.outlook.office365.com
 (2603:10a6:10:2e::18) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.30 via Frontend
 Transport; Wed, 4 Oct 2023 11:37:28 +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.6863.26 via Frontend Transport; Wed, 4 Oct 2023 11:37:28 +0000
Received: ("Tessian outbound 9aeaca65ec26:v211");
 Wed, 04 Oct 2023 11:37:27 +0000
Received: from 5afc1ff2ca3a.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 E854D204-F18A-428C-BA92-35C9729CE2D8.1; 
 Wed, 04 Oct 2023 11:36:53 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 5afc1ff2ca3a.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Wed, 04 Oct 2023 11:36:53 +0000
Received: from AM6PR08MB3749.eurprd08.prod.outlook.com (2603:10a6:20b:8f::22)
 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.6838.33; Wed, 4 Oct
 2023 11:36:51 +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; Wed, 4 Oct 2023
 11:36: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: 67ce93b2-62aa-11ee-98d3-6d05b1d4d9a1
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=e8pgFloB88RANj6yqCE5FF+UunPISxUmVvwfnG+W7Wg=;
 b=bQ8ib5WzostSPmL//cHbw/BUMSZAOjjk1aOho18AMngbcM0zSEFCKbfANZ6luhCskyqKMgcvH12L9aqiX8rB9toK4rbbdh1nagGfEEoqNCMf8vzAi7GNE4DSjOQODDlUenMsfwU5utJAH69SQFjxX8EHe7lG9gUZEUb18HcU6xg=
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: 5b1ddfe980661868
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=mAFfczb1kVHxKqNHWaE0ubnN3TIF6YANvG7ywzZn7ncaI2B0gA4egGY0K7KsnMidoRReExn7U5WAHaJUUMzYh3Mot+cdJpfDVLOMuLGTmbZsbRN74TIVEr8DcSMiGOSMfWT2XH+vSCnKtHQf5tujWvq2KCDVUNw/5UPJhgwQczhEBeXhJSYMoT/Wih8KqmvGKxAPHBu1qtJdbs/2OF/3Bp1u758rSfYEKbo8dDuwD0m2vFa4oWnIoOykXxBTTWOfwUE1SP783jU1W0+JhY1OP9ZlzzVsfLNgoCRf8mD6b/wmo8J/R1B8B17xGSW4LNBStp38pQd43P5YbkZuXTV9lw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=e8pgFloB88RANj6yqCE5FF+UunPISxUmVvwfnG+W7Wg=;
 b=ceLxCAL4DqREf5XL5SxUAbHM6ISECFbcDYBBv8YjhS+HWMo1TvKKpRq96rMVCWV8a1SH0I6Zoria+a2oPO76gzLsNHEbW4m0jM1fupLflmP6l6JTowCr4hYFNmvGRdp2isUrBT9woMSuIwZCRyA6EUO7DvukQR0+sOJ9XEURLwFcPUHw2amVb2eADYZBW2cvYNSu1NSJb0Li7valHcSDkKLDocqPKdJo4gIiIW0cSjVt4IcoUfxWZcaBRoOB+Es7+6R29FBg5W2r3hTk+V4tY+vH5FaAjP8i+i4eLSVdOn7naZmIP/cjmAfAIuzjewBDBKUlA/YzJYB/LjiLOrl+QQ==
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=e8pgFloB88RANj6yqCE5FF+UunPISxUmVvwfnG+W7Wg=;
 b=bQ8ib5WzostSPmL//cHbw/BUMSZAOjjk1aOho18AMngbcM0zSEFCKbfANZ6luhCskyqKMgcvH12L9aqiX8rB9toK4rbbdh1nagGfEEoqNCMf8vzAi7GNE4DSjOQODDlUenMsfwU5utJAH69SQFjxX8EHe7lG9gUZEUb18HcU6xg=
From: Luca Fancellu <Luca.Fancellu@arm.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>
CC: Nicola Vetrini <nicola.vetrini@bugseng.com>, Stefano Stabellini
	<sstabellini@kernel.org>, Xen-devel <xen-devel@lists.xenproject.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>, Jan Beulich
	<jbeulich@suse.com>, =?utf-8?B?Um9nZXIgUGF1IE1vbm7DqQ==?=
	<roger.pau@citrix.com>, Henry Wang <Henry.Wang@arm.com>, Simone Ballarin
	<simone.ballarin@bugseng.com>, Doug Goldstein <cardoe@cardoe.com>, George
 Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>, Wei Liu
	<wl@xen.org>
Subject: Re: [XEN PATCH] xen: Add SAF deviations for MISRA C:2012 Rule 7.1
Thread-Topic: [XEN PATCH] xen: Add SAF deviations for MISRA C:2012 Rule 7.1
Thread-Index: AQHZ9qj87vFsnMRst0ybMa+ffKOLU7A5Z4mAgAAGhgCAAAYzgIAABzIAgAAFTwA=
Date: Wed, 4 Oct 2023 11:36:50 +0000
Message-ID: <B58A790F-6C3B-41C9-8007-0443F0F71E83@arm.com>
References:
 <338d8e574db943a86c7605e4c6d9a299d45f067d.1696347345.git.nicola.vetrini@bugseng.com>
 <alpine.DEB.2.22.394.2310031345190.2348112@ubuntu-linux-20-04-desktop>
 <e1736215-52ba-4737-9da3-8f1ba7e832a6@citrix.com>
 <DB96C095-5FAF-40A1-9CA8-002291AA1933@arm.com>
 <2894008e8f612296da84267346ae4240@bugseng.com>
 <B00BC78B-E707-4043-A0B4-D320C6717472@arm.com>
 <23802fca-7aaf-4792-a57c-2a3b2502ca70@citrix.com>
In-Reply-To: <23802fca-7aaf-4792-a57c-2a3b2502ca70@citrix.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_|DU2PR08MB10160:EE_|DBAEUR03FT025:EE_|DU0PR08MB9933:EE_
X-MS-Office365-Filtering-Correlation-Id: ca555e36-51f1-4501-76ba-08dbc4ce49b1
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:
 VuACF1nOdUNo+UAwaTJBP1YfpImOOGed7WThBvR1hboK7MlYw0gpijG34gNgeXeCWXCr/cNPFGcW0KKocPwrqWnskSMkpiq1LyiQNMd/2pYf+1cFRmF0154JVaSQ04wQpSvla3+V7ACqk2aZjYjCw6Xjj9LTe7EUoVHC5AfuoVFx1BavRAW19sg4qkKWrPUszNXLmeE0XSvoMYNG581rkaFsXRnWwck4VZr6Xz5wfShd/Fphe7yFkwGzVK/t7W7KEE+KUlsF+nAtMaihAP4MghDGPgvGU+t5RrRZJKU8P7ZlYpTzZWknfZCqRNSaFnSJyoLEOM1/E7cRzuPt/xdU1pf3pHUwdW/3yAZCf+stbAcJk5KosiC/l4apqA32HL7d+bcKq/wvfaeTmZY58m0P2hxHRWBNEjmRP0QyvH6Gr/skOyRUTo025jqipxZC7n875iQdztqZl3vEfsr2pOXAI8R189QagjMlrDpXKmdZ/t10ONw9PqiZghIV++XSCdMVpW0WSzAG7Z7w7cV7/WcB3BacAQMTaEBcQ/BZPR9V8cDUgDob4qlAw6n8F4OEN5fy3kUaoG/rU+ifEh+ok9lbxLJdQ+r7YSRk+v4XkzbjlyKVonXHT58Epe3PUU6pmZ6emKxh4BYUWiQbK6gz2QYykg==
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)(39850400004)(376002)(346002)(136003)(396003)(230922051799003)(451199024)(64100799003)(186009)(1800799009)(71200400001)(2616005)(36756003)(53546011)(478600001)(6512007)(86362001)(6506007)(122000001)(38070700005)(38100700002)(33656002)(26005)(6916009)(66476007)(6486002)(54906003)(64756008)(76116006)(4326008)(66446008)(66946007)(66556008)(7416002)(2906002)(91956017)(316002)(5660300002)(41300700001)(8936002)(8676002)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <12A124D2881E704DA3FDEAD77B927BEA@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU2PR08MB10160
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:
	48698a91-31f3-4564-f94c-08dbc4ce337c
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	k6+Vn0R6ZokCiF5XZMl3kC5a3G0RtJ4xnAxHZr//PevYYY0dt11E66s6XzuRomwuf1Myo7TTj/SktBClmNAXDGC/qzAgrSWYFUOTCPUC/K9pfAIRHIl4Kw0LmVKpbhZXW3tsRDNWn1AYz63ide5UnKlzHriufEMztU3hNrAJlcKrj08LLDBml5s7XS2Rra93OS4qKa2kPl1r84zmfXa+KkQ0Eoe0/OgA1bfqVSc7dYSQzK9hjyzaC3QspniFMAdpFz+F2iIM6iP9jlx+tzhF2AStmBO7bwcL8BZpgKX0Cye+HWT3s3XrhObp+d43PetP9kQWWupD9fIhV+L0gxWr4Aguv5CLpDA7X3HUG7HjSBDBkz5aNkAnuJ7bBXKwibEFKcWLwL6LWVBAmBJlfGhrTXNWesV6WTDs0gqBo1L0eLajTXeToZgcHRldYWahfDBV0rdPlgpMeU+B4D32X1E1B9rbIkaJyNRP/Ae8zH9oVZ1W0vudamoUwXfO2u0jQKbBfbEAqoFBH6MNt936yTR8xjZx7WBFqf5LekyCAtOH/567E79WTpQ9HRYGtMQpzCVEYUhYJhTn7GKgukSnWYTBHsM6PDJPCELf3xam2x0I6Rk0RaVwrSt/i4CMNOidbNgjcRVMBciPnZcBxeZ57U2QRxXm51PiSzP2oXMZ3dUgE8Ru/JGwRivoEIYYrZU+EQeCosNpQ7RukjIWJs7mh9o9JAtWnFTeqATAMFt2f7XOTd88YEFGVL+LU/vMXl0CPjrt
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)(346002)(136003)(39860400002)(230922051799003)(1800799009)(64100799003)(186009)(82310400011)(451199024)(36840700001)(40470700004)(46966006)(40460700003)(26005)(5660300002)(6506007)(36860700001)(336012)(33656002)(2906002)(478600001)(36756003)(6486002)(53546011)(40480700001)(86362001)(70206006)(54906003)(2616005)(47076005)(316002)(6862004)(70586007)(8936002)(6512007)(8676002)(82740400003)(81166007)(356005)(4326008)(41300700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Oct 2023 11:37:28.0793
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: ca555e36-51f1-4501-76ba-08dbc4ce49b1
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: DU0PR08MB9933

DQoNCj4gT24gNCBPY3QgMjAyMywgYXQgMTI6MTcsIEFuZHJldyBDb29wZXIgPGFuZHJldy5jb29w
ZXIzQGNpdHJpeC5jb20+IHdyb3RlOg0KPiANCj4gT24gMDQvMTAvMjAyMyAxMTo1MiBhbSwgTHVj
YSBGYW5jZWxsdSB3cm90ZToNCj4+IA0KPj4gRnJvbSB0aGUgZG9jdW1lbnRhdGlvbjoNCj4+IA0K
Pj4gSW4gdGhlIFhlbiBjb2RlYmFzZSwgdGhlc2UgdGFncyB3aWxsIGJlIHVzZWQgdG8gZG9jdW1l
bnQgYW5kIHN1cHByZXNzIGZpbmRpbmdzOg0KPj4gDQo+PiAtIFNBRi1YLXNhZmU6IFRoaXMgdGFn
IG1lYW5zIHRoYXQgdGhlIG5leHQgbGluZSBvZiBjb2RlIGNvbnRhaW5zIGEgZmluZGluZywgYnV0
DQo+PiB0aGUgbm9uIGNvbXBsaWFuY2UgdG8gdGhlIGNoZWNrZXIgaXMgYW5hbHlzZWQgYW5kIGRl
bW9uc3RyYXRlZCB0byBiZSBzYWZlLg0KPj4gDQo+PiBJIHVuZGVyc3RhbmQgdGhhdCBFY2xhaXIg
aXMgY2FwYWJsZSBvZiBzdXBwcmVzc2luZyBhbHNvIHRoZSBsaW5lIGluIHdoaWNoIHRoZSBpbi1j
b2RlIHN1cHByZXNzaW9uDQo+PiBjb21tZW50IHJlc2lkZXMsIGJ1dCB0aGVzZSBnZW5lcmljIFhl
biBpbi1jb2RlIHN1cHByZXNzaW9uIGNvbW1lbnQgYXJlIG1lYW50IHRvIGJlIHVzZWQNCj4+IGJ5
IG11bHRpcGxlIHN0YXRpYyBhbmFseXNpcyB0b29scyBhbmQgbWFueSBvZiB0aGVtIHN1cHByZXNz
IG9ubHkgdGhlIGxpbmUgbmV4dCB0byB0aGUgY29tbWVudA0KPj4gKENvdmVyaXR5LCBjcHBjaGVj
aykuDQo+PiANCj4+IFNvIEnigJltIGluIGZhdm91ciBvZiB5b3VyIGFwcHJvYWNoIGJlbG93LCBj
bGVhcmx5IGl0IGRlcGVuZHMgb24gd2hhdCB0aGUgbWFpbnRhaW5lcnMgZmVlZGJhY2sgaXM6DQo+
PiANCj4+IA0KPj4+IC8qIFNBRi0yLXNhZmUgKi8NCj4+PiBpZiAoIG1vZHJtX21vZCA9PSBNQVNL
X0VYVFIoaW5zdHJfbW9kcm0sIDAzMDApICYmDQo+Pj4gLyogU0FGLTItc2FmZSAqLw0KPj4+ICht
b2RybV9yZWcgJiA3KSA9PSBNQVNLX0VYVFIoaW5zdHJfbW9kcm0sIDAwNzApICYmDQo+Pj4gLyog
U0FGLTItc2FmZSAqLw0KPj4+IChtb2RybV9ybSAmIDcpID09IE1BU0tfRVhUUihpbnN0cl9tb2Ry
bSwgMDAwNykgKQ0KPiANCj4gVG8gYmUgY2xlYXIsIHRoaXMgaXMgaWxsZWdpYmxlIGFuZCBhIG5v
bi1zdGFydGVyIGZyb20gYSBjb2RlIG1haW50ZW5hbmNlIHBvaW50IG9mIHZpZXcuDQo+IA0KPiBJ
dCBpcyBiYWQgZW5vdWdoIG5lZWRpbmcgYW5ub3RhdGlvbnMgdG8gc3RhcnQgd2l0aCwgYnV0IHRo
ZSBhbm5vdGF0aW9ucyAqbXVzdCogbm90IGludGVyZmVyZSB3aXRoIHRoZSBwcmlvciBsZWdpYmls
aXR5Lg0KDQpJIGFncmVlIHdpdGggdGhhdCwgdGhlIGNvZGUgYXMgYWJvdmUgaXMgbm90IHZlcnkg
bmljZSwgaG93ZXZlciBhcyB0aGUgY3VycmVudCBzdGF0dXMgaXQgaXMgdGhlIG9ubHkgd2F5IGl0
IGNhbiB3b3JrLA0KbWF5YmUgcmV3cml0aW5nIGl0IGluIGFub3RoZXIgd2F5IGNvdWxkIHNvbHZl
IHRoZSBpc3N1ZT8NCg0KRm9yIGV4YW1wbGU6DQoNCi8qIFNBRi0yLXNhZmUgKi8NCiNkZWZpbmUg
U0VOU0lCTEVfTkFNRV9IRVJFKGluc3RyKSAgIE1BU0tfRVhUUihpbnN0ciwgMDMwMCkNCi8qIFNB
Ri0yLXNhZmUgKi8NCiNkZWZpbmUgU0VOU0lCTEVfTkFNRV9IRVJFMihpbnN0cikgICBNQVNLX0VY
VFIoaW5zdHIsIDAzMDApDQovKiBTQUYtMi1zYWZlICovDQojZGVmaW5lIFNFTlNJQkxFX05BTUVf
SEVSRTMoaW5zdHIpICAgTUFTS19FWFRSKGluc3RyLCAwMzAwKQ0KDQpBbmQgdXNlIHRoZXNlIG1h
Y3JvIGluIHRoZSBjb25kaXRpb25zIGFib3ZlLCBob3dldmVyIHdpbGwgaXQgbW92ZSB0aGUgdmlv
bGF0aW9uIGF0IHRoZSBtYWNybyBkZWZpbml0aW9uPw0KDQpIYXZpbmcgbWFjcm8gd2l0aCBhIHNl
bnNpYmxlIG5hbWUgZXhwbGFpbmluZyB0aGUgbWVhbmluZyBvZiB0aGUgdmFsdWUgY291bGQgYWxz
byBpbXByb3ZlIHRoZSByZWFkYWJpbGl0eSBvZiB0aGUgY29kZS4NCg0KQnV0IHRoaXMgY2hvaWNl
IGlzIHVwIG9uIHlvdSB4ODYgbWFpbnRhaW5lcnMuDQoNCj4gDQo+IFRoZSBmb3JtIHdpdGggY29t
bWVudHMgb24gdGhlIGVuZCwgdGhhdCBkbyBub3QgYnJlYWsgdXAgdGhlIHRhYnVsYXRpb24gb2Yg
dGhlIGNvZGUsIGlzIHRvbGVyYWJsZSwgcHJvdmlkaW5nIHRoZSBTQUYgdHVybnMgaW50byBzb21l
dGhpbmcgbWVhbmluZ2Z1bC4NCj4gDQo+IH5BbmRyZXcNCj4gDQo+IFAuUy4gdG8gYmUgY2xlYXIs
IEknbSBub3Qgc2F5aW5nIHRoYXQgYW4gYWhlYWQtb2YtbGluZSBjb21tZW50cyBhcmUgdW5hY2Nl
cHRhYmxlIGdlbmVyYWxseS4gIFNvbWV0aGluZyBsaWtlDQo+IA0KPiAgICAgLyogJEZPTy0kTi1z
YWZlICovDQo+ICAgICBpZiAoIGJsYWggKQ0KPiANCj4gbWlnaHQgYmUgZmluZSBpbiBjb250ZXh0
LCBidXQgdGhhdCBpcyBhIGRlY2lzaW9uIHRoYXQgbmVlZHMgdG8gYmUgbWFkZSBiYXNlZCBvbiBo
b3cgdGhlIGNvZGUgcmVhZHMgd2l0aCB0aGUgY29tbWVudCBpbiBwbGFjZS4NCg0K


From xen-devel-bounces@lists.xenproject.org Wed Oct 04 11:42:57 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 04 Oct 2023 11:42:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612510.952443 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qo0HG-00087s-B2; Wed, 04 Oct 2023 11:42:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612510.952443; Wed, 04 Oct 2023 11: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 1qo0HG-00087l-8Q; Wed, 04 Oct 2023 11:42:54 +0000
Received: by outflank-mailman (input) for mailman id 612510;
 Wed, 04 Oct 2023 11: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=lT9A=FS=epam.com=prvs=4641b3489e=oleksandr_tyshchenko@srs-se1.protection.inumbo.net>)
 id 1qo0HF-00087d-48
 for xen-devel@lists.xenproject.org; Wed, 04 Oct 2023 11:42:53 +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 24615c7d-62ab-11ee-9b0d-b553b5be7939;
 Wed, 04 Oct 2023 13:42:49 +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
 394BZJB1030802; Wed, 4 Oct 2023 11:42:37 GMT
Received: from eur05-db8-obe.outbound.protection.outlook.com
 (mail-db8eur05lp2104.outbound.protection.outlook.com [104.47.17.104])
 by mx0a-0039f301.pphosted.com (PPS) with ESMTPS id 3th7ac00n5-1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT);
 Wed, 04 Oct 2023 11:42:36 +0000
Received: from DB8PR03MB6108.eurprd03.prod.outlook.com (2603:10a6:10:ed::15)
 by DU2PR03MB7847.eurprd03.prod.outlook.com (2603:10a6:10:2d2::23) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.35; Wed, 4 Oct
 2023 11:42:33 +0000
Received: from DB8PR03MB6108.eurprd03.prod.outlook.com
 ([fe80::ac2a:7470:c441:365c]) by DB8PR03MB6108.eurprd03.prod.outlook.com
 ([fe80::ac2a:7470:c441:365c%7]) with mapi id 15.20.6838.024; Wed, 4 Oct 2023
 11:42: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: 24615c7d-62ab-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Gv/FKPOjZIe+qJKcHRbTJtxCON70HWKgsd9Xf9mfRAa6biDrtpUQKrRK4IivfKVSpr7WEDhkXfQ9V5Y4Sg10H6kAhJ+TNQGnDN0BJPfLHrDwR6M2s3G6eOwi7OEvHHauHJhO5AuRA2fbsD3AZtv4pxe9U3i+9N1xzoCcwy/pxQDFctPpFvIaDE7iKc0Lj4oA9tOFxy2sp+DaGvPKfiCvlq9nOiELsdSyKuUMEQ8EoRk+eauzZqi9blkFIftIWsMKfCEdsn2lOn8K/DqinXhMc1d+36ZrOTl+VeTuMYoLg/RZbLKMFw53Nlb0NZCWgcoaB2nC+TzZdpG9OurmkO+wkw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=XizltJT/Q7SMTKvLAWgE+cyvFXW0KjW65Ifj+u3b0bI=;
 b=FEpB1FLc3RW67lZBh5b7XOd1bx40rSqANNcXa78r8R0iCJfRnp8018o6YKK9Yu+IIvc2sg55jeb67yOgN9zXhiDDldBJEdJCal5tY7llBhQ6KuFPahE6x8AllTXf37Jeg4YRhnn0uOPL0vrVhivUFcUHpxRzaghLcID015yhuUucCg2Rfq3kIKXxXLc+kloNjPW8SNep8xwbnMKzx6V1uo3AcTI/n++aV0pT1s4eYAmSoyLEv31zl3W4qe0OQzXmnH8WIMgfD1GwLi7iAMmy3Oalwdg1MQzL18eg+sZL3cQ+gz++WXxaItpBK4QSJM4SQj+h5iIN4gUxa4C9FuQKsw==
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=XizltJT/Q7SMTKvLAWgE+cyvFXW0KjW65Ifj+u3b0bI=;
 b=HWkbY+RL2Eboh+JifUhpRhAJ2xz+5QQAPq1P5jgFDTgNGKWGE0zbX/TDuYlxAjs/GK10YAHfGKmeb8+h+d5IZTO5HsafIBiZkyUXTVt58S8qLCFhIwPNkVvoa4tJfVYZTa5iwp6ZxniAfrxIDcNHbD7XtomuoD5+i729BrDxsbs9oBoyyjxwASHkRXZ+OMsXxNvVwEnODESEcoIJD8sUL/VkPkDIu/JL+9S3i3+dSZokyfYWKUJq8AKg6wksXGfgOecifRClmkYZfs6OYTNsmm2ZDn8WPLiJmbQ6YI6g7omZI6cZzXeFmVChsSFIS6mtDVXN06uxmLb4sY+o9LgB2g==
From: Oleksandr Tyshchenko <Oleksandr_Tyshchenko@epam.com>
To: Julien Grall <julien@xen.org>,
        =?utf-8?B?Um9nZXIgUGF1IE1vbm7DqQ==?=
	<roger.pau@citrix.com>,
        Elliott Mitchell <ehem+xen@m5p.com>
CC: "xen-devel@lists.xenproject.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: Issue with shared information page on Xen/ARM 4.17
Thread-Topic: Issue with shared information page on Xen/ARM 4.17
Thread-Index: AQHZ9dNZbcd5CVq6q0CaRs8d4dlf/7A4cSiAgADYhwCAAC0hgIAADTmA
Date: Wed, 4 Oct 2023 11:42:32 +0000
Message-ID: <aaf14d06-4e29-4de0-8e56-ff200f21b692@epam.com>
References: <ZRY7Ls3p6M6pakMq@mattapan.m5p.com>
 <ZRvQNKyYpLDVTs0i@MacBookPdeRoger> <ZRxpC7ukhiYvzz5m@mattapan.m5p.com>
 <ZR0erl_OSkNgIQjx@MacBookPdeRoger>
 <c0b67401-dfe5-475f-8640-b66ac32a80fb@xen.org>
In-Reply-To: <c0b67401-dfe5-475f-8640-b66ac32a80fb@xen.org>
Accept-Language: en-US, ru-RU
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
x-ms-publictraffictype: Email
x-ms-traffictypediagnostic: DB8PR03MB6108:EE_|DU2PR03MB7847:EE_
x-ms-office365-filtering-correlation-id: 4b77a39c-1e06-45ca-8f5b-08dbc4ceff3f
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: 
 6zIEPYPRAJbZf2x8it1GTxl8WV3yXQ7XNwvdbi/tNw7T+gLuNPxGVaw+EgT5LF/jgSNFxPS3ZVSfhysKDmftKwPYASlRhS7YPZouMh79A5Y1cjr7HicpTNBcLL+lXhkl3hOuZs9OWuK8N6bE2fRo0Vbtz8AyhJVribICK5SR80SRA4ZBhG27zJqHkF8ETVqhR3lE0Fj22x1yw/neSiFdMEyNGJl6CWKJoN25vbBEwn2Dhp5157dT3kKv45xZOPybdY72Cmc3wTCqdai2ygvfMH6qzHUvpKY1tF41wgQf6NXOsvt3NdctyPr6y57lPNUjUcyw3nQiLrqxvYX3Zc3Ys2EIu17yTa/XxQimkqjsqkslHaVETCdQUrZc/CkDN57S00FhCPBvtLXMeVWrj4wYmJy5n+WWuznkKwBs/fV5Iaz2mOccMncDdDlf7JA/wl4ErKiWoCvSiwFbbM593Xzu9xxzerqhKhhA8w/N5SRDMXPE5Bh8MzS4vePr4YkUhmxAXxnlbt732sO6b0D6KH5cJvGLfcnVAgn+V+7/vxFKPWD6J3pIpfeuDM7Ua0BzVfT95pPb8TKnx3eSmzE6CqkW+yqaXOAxigAVGDtLPDh5RGpIRrMHvujQgEGIrVi5nXjGH3sED8WKtlLPwelMBnxTcA==
x-forefront-antispam-report: 
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DB8PR03MB6108.eurprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(396003)(346002)(136003)(376002)(366004)(230922051799003)(1800799009)(186009)(451199024)(64100799003)(31686004)(6506007)(71200400001)(53546011)(6486002)(478600001)(966005)(122000001)(31696002)(86362001)(38100700002)(38070700005)(41300700001)(2616005)(83380400001)(107886003)(6512007)(26005)(2906002)(36756003)(66556008)(66476007)(66446008)(5660300002)(316002)(91956017)(76116006)(66946007)(110136005)(54906003)(8936002)(8676002)(64756008)(4326008)(45980500001);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: 
 =?utf-8?B?T3FaclkzUlNFUXVpdmlYMktWV2k4VEJaUzZON3U2KzE1bElUM2psb3dYZUdp?=
 =?utf-8?B?OVJHd2J5WXorTWw1aG04cEVDN05vWWlJWWhBaHQvUHZvemtsMjhXMXJ3SGEr?=
 =?utf-8?B?dEt3ZFRMYTZXdUlHazEvR3VZNVNZUjZMUGl4R0hSdmRVQVhWR08rTlZCOCti?=
 =?utf-8?B?ZHBad1pOMHJ5ZXlTRk51cmN1ZnNEcVlkVFo2b1BVTVFJZlB2OGY3WUxNNFda?=
 =?utf-8?B?bGJnSmdMTnI2SUxmRUZzQmtFQ0lwYWVOWkdZTU5kY1k5Lzc0M2hsaFBpWDFR?=
 =?utf-8?B?Z1lUbHh1RnFSTk9CYkVZK215eDhBVFN3TS9LL1BhR2dLVndWd3diYm1qZE50?=
 =?utf-8?B?SUV0TjFNZk1BNEUwVnJva084a1ozSHBtd1hnVlBTQm13bTg0djdLSXJhelRD?=
 =?utf-8?B?QUZIcUc2TmczQzh6N3hmdWphWkM3UXBRVzlvVmhhS3NuQnZaRnZtZDFBWGEx?=
 =?utf-8?B?TkRFZFFxVTc4YmpOY3RCSjQ5ZzFjQmJEcEduY2cyOFNRVVpDMlpTMExtU3Nx?=
 =?utf-8?B?V3YzMEZXL2dEcnJDcWRmTnRpMW1JWEVzUnNsTFNiYkpqVU5oVFlOeWxZaUk1?=
 =?utf-8?B?V0hINmplemJNTEVzNW05Mm0vQkJWajBvSzJhNGpDZ25PRmhjYkR1UEpNUUlK?=
 =?utf-8?B?NzV6WVZTNWZwNVVUTXk4akZoTENHV0dmdmRNY1RCeEJCY1lTVEVUTS9keHJw?=
 =?utf-8?B?bmxZc0Y0ajE2ams1WndBNGgwZnY1WkV1Z0pGTXJwckNHYXhES3dqUTZ5bUs5?=
 =?utf-8?B?aUU2akt4dHpuMmZ6ZGd6RkkxWGR1MkE3NDBUOWdHU3VjZGExL0Z1UGNZRnVI?=
 =?utf-8?B?eWdoa3FRdTYwMjFmTTVLQ3NWSnZ2VVFtR012ck02ZCtLd1dqcTBPSlZkYlJ4?=
 =?utf-8?B?SG5PTnRqemdRQ3F2OHB5azg1K3A4TEYwbG8rWTlra1B2b3ZoK2srb0VJRHF5?=
 =?utf-8?B?KzYvK0NTZ09JWkFWM3JDNnQ4NWVLVzErRHQyYkRRYU05a0ZCeGhIRnQ3UXl4?=
 =?utf-8?B?ZDJKVnBuNVdYdHQrQmtrTEt2YlpPMUwvdUdLaE4wUjlmd1JkN0l6VUFhbXBU?=
 =?utf-8?B?UCtIcmZKaDlFVUswUTR5Sm0yTHJ3c0dIaTkvT0UwZXU3aWhyVWs2LytqeEdh?=
 =?utf-8?B?aGRaN0REbUFGa2lHajhTRm1tYWw4MGpIbDROTzMzT3dhV05wb0tuTFQxaytU?=
 =?utf-8?B?VnpJL1cyM3VleDN0cjhnSDliOGtFS29ROFhYemJSMldMaG9UbzdmY0dtbFZi?=
 =?utf-8?B?enA3YVVwQVZxYUY0T01JaE1VUVAvanBPVDArOUhkc2JBQkxBbW0xeVk1SVVL?=
 =?utf-8?B?QUFWeGJHcWVhb1RkK3huS2ZsUlZCckhMNkxpRFdINVBLZ1FQbGZmbkxPVnc5?=
 =?utf-8?B?RHI5UnRFRUxRYkQreXZ3MGUzcSswcGZQZzBYazVRWldCbTFzME1uVVhBbjdF?=
 =?utf-8?B?ZjRmU1g0WU9xZFhLNERnSnIyZUh0em9GaG9vVXV6UncrUm5XTTRUMEJoeTdB?=
 =?utf-8?B?Ky9lcjRrOW5oS0hRM2U2M0pGYmxtMDRNWlhRWDY0OUY4bXN1Mnl5cVFmQ0ph?=
 =?utf-8?B?MHJjM0lwYVNmSERFckUwWENPVjZDcWNvbjluRTNlWXAvdnNqNThKYWkxcERz?=
 =?utf-8?B?Tnk3U29sYjZQbVVoLzU2VDVSdnE2dXdYK1FZc3RhYWF4dEQwaEI1U2pqZEJ0?=
 =?utf-8?B?d2dNdStpZzlNcGxpVTdWYzNPeklEbXc5bC9PTzhJN3FJejJJSzNFUmhHSzdy?=
 =?utf-8?B?cmJMT2Q3bXdSc25kT0JIcFhxNlJOMDJiRVhYMzdWc3JOa3NLZTU2MTN6RVla?=
 =?utf-8?B?UTQ0TmdLRXhMczVnaDRaVDdVWGFHWTBBeXowN3ZqOXZrdTlxVW1VT243R29P?=
 =?utf-8?B?Umw2ZU5oR3FiajljeGRMMFlyRXJ5NytLdXFJc2tFaGNBVm1QQnVocW8zQmcw?=
 =?utf-8?B?NkZTWEZjOWRSVHVOQ3R5aDFMNERyUDZrNk5jVzA2WGY2VXEzTnVqY09KdVdz?=
 =?utf-8?B?ZFhQcEJDN3VqV1dma1VtdmJMejVBK1FrN3pTMStCODBjUEw0UzNaTHJxS0JE?=
 =?utf-8?B?SVVwaDZURitLK3o0VkkzS1FIWDdLTEF2VDNVTytaLzZTRlBLeFdXQWx4Z3Iy?=
 =?utf-8?B?all4aDJtZDh2UGZSME1KdG00SUFuUG5mSmIyY2V4aWR3QXhwNjBZM1BnUDRl?=
 =?utf-8?Q?Mjhv89XCgTxLz0jjLkVvxek=3D?=
Content-Type: text/plain; charset="utf-8"
Content-ID: <D6231377FF0D61448FBA841ECD649BD0@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: DB8PR03MB6108.eurprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 4b77a39c-1e06-45ca-8f5b-08dbc4ceff3f
X-MS-Exchange-CrossTenant-originalarrivaltime: 04 Oct 2023 11:42:32.7388
 (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: g+ZXpdpKXzFs7G97v4m+lyD/F1nvSTQX2gW1N7URas3nXxigPLDpRUZdJ1nGPUUgNOMFiyWLepJ7vTTlBY9kgFvBRpp5EBlBoPHJeL7KTMU=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU2PR03MB7847
X-Proofpoint-GUID: 40d-QS-ot5Uh8MiwQULG0y3HO25qFJhR
X-Proofpoint-ORIG-GUID: 40d-QS-ot5Uh8MiwQULG0y3HO25qFJhR
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-10-04_03,2023-10-02_01,2023-05-22_02
X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 clxscore=1011 mlxlogscore=859
 lowpriorityscore=0 adultscore=0 priorityscore=1501 malwarescore=0
 bulkscore=0 phishscore=0 suspectscore=0 spamscore=0 mlxscore=0
 impostorscore=0 classifier=spam adjust=0 reason=mlx scancount=1
 engine=8.12.0-2309180000 definitions=main-2310040084

DQoNCk9uIDA0LjEwLjIzIDEzOjU1LCBKdWxpZW4gR3JhbGwgd3JvdGU6DQoNCkhlbGxvIGFsbC4N
Cg0KPiBIaSBSb2dlciwNCj4gDQo+IE9uIDA0LzEwLzIwMjMgMDk6MTMsIFJvZ2VyIFBhdSBNb25u
w6kgd3JvdGU6DQo+PiBPbiBUdWUsIE9jdCAwMywgMjAyMyBhdCAxMjoxODozNVBNIC0wNzAwLCBF
bGxpb3R0IE1pdGNoZWxsIHdyb3RlOg0KPj4+IE9uIFR1ZSwgT2N0IDAzLCAyMDIzIGF0IDEwOjI2
OjI4QU0gKzAyMDAsIFJvZ2VyIFBhdSBNb25uw6kgd3JvdGU6DQo+Pj4+IE9uIFRodSwgU2VwIDI4
LCAyMDIzIGF0IDA3OjQ5OjE4UE0gLTA3MDAsIEVsbGlvdHQgTWl0Y2hlbGwgd3JvdGU6DQo+Pj4+
PiBJJ20gdHJ5aW5nIHRvIGdldCBGcmVlQlNEL0FSTSBvcGVyYXRpb25hbCBvbiBYZW4vQVJNLsKg
IEN1cnJlbnQgDQo+Pj4+PiBpc3N1ZSBpcw0KPj4+Pj4gdGhlIGNoYW5nZXMgd2l0aCB0aGUgaGFu
ZGxpbmcgb2YgdGhlIHNoYXJlZCBpbmZvcm1hdGlvbiBwYWdlIGFwcGVhciB0bw0KPj4+Pj4gaGF2
ZSBicm9rZW4gdGhpbmdzIGZvciBtZS4NCj4+Pj4+DQo+Pj4+PiBXaXRoIGEgcHJlLTQuMTcgYnVp
bGQgb2YgWGVuL0FSTSB0aGluZ3Mgd29ya2VkIGZpbmUuwqAgWWV0IHdpdGggYSBidWlsZA0KPj4+
Pj4gb2YgdGhlIDQuMTcgcmVsZWFzZSwgbWFwcGluZyB0aGUgc2hhcmVkIGluZm9ybWF0aW9uIHBh
Z2UgZG9lc24ndCB3b3JrLg0KPj4+Pg0KPj4+PiBUaGlzIGlzIGR1ZSB0byA3MTMyMDk0NmQ1ZWRm
IEFGQUlDVC4NCj4+Pg0KPj4+IFllcy7CoCBXaGlsZSB0aGUgLUVCVVNZIGxpbmUgbWF5IGJlIHRo
ZSBvbmUgdHJpZ2dlcmluZywgSSdtIHVuc3VyZSB3aHkuDQo+Pj4gVGhpcyBzZWVtcyBhIGZhaXJs
eSByZWFzb25hYmxlIGNoYW5nZSwgc28gSSBoYWQgbm8gaW50ZW50aW9uIG9mIGFza2luZw0KPj4+
IGZvciBhIHJldmVydCAod2hpY2ggbGlrZWx5IHdvdWxkIGhhdmUgYmVlbiByZWplY3RlZCkuwqAg
VGhlcmUgaXMgYWxzbyBhDQo+Pj4gcmVhbCBwb3NzaWJpbGl0eSB0aGUgLUVCVVNZIGNvbWVzIGZy
b20gZWxzZXdoZXJlLsKgIENvdWxkIGFsc28gYmUNCj4+PiA3MTMyMDk0NmQ1ZWRmIGNhdXNlZCBh
IGJ1ZyBlbHNld2hlcmUgdG8gYmUgZXhwb3NlZC4NCj4+DQo+PiBBIGdvb2Qgd2F5IHRvIGtub3cg
d291bGQgYmUgdG8gYXR0ZW1wdCB0byByZXZlcnQgNzEzMjA5NDZkNWVkZiBhbmQgc2VlDQo+PiBp
ZiB0aGF0IGZpeGVzIHlvdXIgaXNzdWUuDQo+Pg0KPj4gQWx0ZXJuYXRpdmVseSB5b3UgY2FuIHRy
eSAob3Igc2ltaWxhcik6DQo+Pg0KPj4gZGlmZiAtLWdpdCBhL3hlbi9hcmNoL2FybS9tbS5jIGIv
eGVuL2FyY2gvYXJtL21tLmMNCj4+IGluZGV4IDZjY2ZmZWFlYTU3ZC4uMTA1ZWYzZmFlY2ZkIDEw
MDY0NA0KPj4gLS0tIGEveGVuL2FyY2gvYXJtL21tLmMNCj4+ICsrKyBiL3hlbi9hcmNoL2FybS9t
bS5jDQo+PiBAQCAtMTQyNCw2ICsxNDI0LDggQEAgaW50IHhlbm1lbV9hZGRfdG9fcGh5c21hcF9v
bmUoDQo+PiDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHBhZ2Vfc2V0X3hlbmhl
YXBfZ2ZuKG1mbl90b19wYWdlKG1mbiksIGdmbik7DQo+PiDCoMKgwqDCoMKgwqDCoMKgwqAgfQ0K
Pj4gwqDCoMKgwqDCoMKgwqDCoMKgIGVsc2UNCj4+ICvCoMKgwqDCoMKgwqDCoCB7DQo+PiArwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoCBwcmludGsoIiV1IGFscmVhZHkgbWFwcGVkXG4iLCBzcGFjZSk7
DQo+PiDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAvKg0KPj4gwqDCoMKgwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoCAqIE1hbmRhdGUgdGhlIGNhbGxlciB0byBmaXJzdCB1bm1hcCB0aGUgcGFnZSBi
ZWZvcmUgDQo+PiBtYXBwaW5nIGl0DQo+PiDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICog
YWdhaW4uIFRoaXMgaXMgdG8gcHJldmVudCBYZW4gY3JlYXRpbmcgYW4gdW53YW50ZWQgDQo+PiBo
b2xlIGluDQo+PiBAQCAtMTQzMiw2ICsxNDM0LDcgQEAgaW50IHhlbm1lbV9hZGRfdG9fcGh5c21h
cF9vbmUoDQo+PiDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICogdG8gdW5tYXAgaXQgYWZ0
ZXJ3YXJkcy4NCj4+IMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKi8NCj4+IMKgwqDCoMKg
wqDCoMKgwqDCoMKgwqDCoMKgIHJjID0gLUVCVVNZOw0KPj4gK8KgwqDCoMKgwqDCoMKgIH0NCj4+
IMKgwqDCoMKgwqDCoMKgwqDCoCBwMm1fd3JpdGVfdW5sb2NrKHAybSk7DQo+PiDCoMKgwqDCoMKg
IH0NCj4+DQo+Pj4+PiBJJ20gdXNpbmcgVGlhbm9jb3JlIGFzIHRoZSBmaXJzdCBzdGFnZSBsb2Fk
ZXIuwqAgVGhpcyBjb250aW51ZXMgdG8gd29yaw0KPj4+Pj4gZmluZS7CoCBUaGUgYnVpbGQgaXMg
dXNpbmcgdGFnICJlZGsyLXN0YWJsZTIwMjIxMSIsIGNvbW1pdCBmZmY2ZDgxMjcwLg0KPj4+Pj4g
V2hpbGUgVGlhbm9jb3JlIGRvZXMgbWFwIHRoZSBzaGFyZWQgaW5mb3JtYXRpb24gcGFnZSwgbXkg
cmVhZGluZyBvZiANCj4+Pj4+IHRoZWlyDQo+Pj4+PiBzb3VyY2UgaXMgdGhhdCBpdCBwcm9wZXJs
eSB1bm1hcHMgdGhlIHBhZ2UgYW5kIHRoZXJlZm9yZSBzaG91bGRuJ3QgDQo+Pj4+PiBjYXVzZQ0K
Pj4+Pj4gdHJvdWJsZS4NCj4+Pj4+DQo+Pj4+PiBOb3RlcyBvbiB0aGUgYWN0dWFsIGNhbGwgaXMg
Z3BmbiB3YXMgMHgwMDAwMDAwMDAwMDQwMDcyLsKgIFRoaXMgaXMgDQo+Pj4+PiBvdXRzaWRlDQo+
Pj4+PiB0aGUgcmVjb21tZW5kZWQgYWRkcmVzcyByYW5nZSwgYnV0IG15IHVuZGVyc3RhbmRpbmcg
aXMgdGhpcyBpcyANCj4+Pj4+IHN1cHBvc2VkDQo+Pj4+PiB0byBiZSBva2F5Lg0KPj4+Pj4NCj4+
Pj4+IFRoZSByZXR1cm4gY29kZSBpcyAtMTYsIHdoaWNoIGlzIEVCVVNZLg0KPj4+Pj4NCj4+Pj4+
IElkZWFzPw0KPj4+Pg0KPj4+PiBJIHRoaW5rIHRoZSBpc3N1ZSBpcyB0aGF0IHlvdSBhcmUgbWFw
cGluZyB0aGUgc2hhcmVkIGluZm8gcGFnZSBvdmVyIGENCj4+Pj4gZ3Vlc3QgUkFNIHBhZ2UsIGFu
ZCBpbiBvcmRlciB0byBkbyB0aGF0IHlvdSB3b3VsZCBmaXN0IG5lZWQgdG8gY3JlYXRlDQo+Pj4+
IGEgaG9sZSBhbmQgdGhlbiBtYXAgdGhlIHNoYXJlZCBpbmZvIHBhZ2UuwqAgSU9XOiB0aGUgaXNz
dWUgaXMgbm90IHdpdGgNCj4+Pj4gZWRrMiBub3QgaGF2aW5nIHVubWFwcGVkIHRoZSBwYWdlLCBi
dXQgd2l0aCBGcmVlQlNEIHRyeWluZyB0byBtYXAgdGhlDQo+Pj4+IHNoYXJlZF9pbmZvIG92ZXIg
YSBSQU0gcGFnZSBpbnN0ZWFkIG9mIGEgaG9sZSBpbiB0aGUgcDJtLsKgIHg4Ng0KPj4+PiBiZWhh
dmlvciBpcyBkaWZmZXJlbnQgaGVyZSwgYW5kIGRvZXMgYWxsb3cgbWFwcGluZyB0aGUgc2hhcmVk
X2luZm8NCj4+Pj4gcGFnZSBvdmVyIGEgUkFNIGdmbiAoYnkgZmlyc3QgcmVtb3ZpbmcgdGhlIGJh
Y2tpbmcgUkFNIHBhZ2Ugb24gdGhlDQo+Pj4+IGdmbikuDQo+Pj4NCj4+PiBBbiBpbnRlcmVzdGlu
ZyB0aG91Z2h0LsKgIEkgdGhvdWdodCBJJ2QgdHJpZWQgdGhpcywgYnV0IHNpbmNlIEkgZGlkbid0
IA0KPj4+IHNlZQ0KPj4+IHN1Y2ggaW4gbXkgZXhwZXJpbWVudHMgbGlzdC7CoCBXaGF0IEkgaGFk
IHRyaWVkIHdhcyByZW1vdmluZyBhbGwgdGhlIA0KPj4+IHBhZ2VzDQo+Pj4gaW4gdGhlIHN1Z2dl
c3RlZCBtYXBwaW5nIHJhbmdlLsKgIFlldCB0aGlzIGZhaWxlZC4NCj4+DQo+PiBZZWFoLCBJIHdl
bnQgdG9vIGZhc3QgYW5kIGRpZG4ndCByZWFkIHRoZSBjb2RlIGNvcnJlY3RseSwgaXQgaXMgbm90
DQo+PiBjaGVja2luZyB0aGF0IHRoZSBwcm92aWRlZCBnZm4gaXMgYWxyZWFkeSBwb3B1bGF0ZWQs
IGJ1dCB3aGV0aGVyIHRoZQ0KPj4gbWZuIGludGVuZGVkIHRvIGJlIG1hcHBlZCBpcyBhbHJlYWR5
IG1hcHBlZCBhdCBhIGRpZmZlcmVudCBsb2NhdGlvbi4NCj4+DQo+Pj4gU2luY2UgdGhpcyBzZWVt
ZWQgcmVhc29uYWJsZSwgSSd2ZSBub3cgdHJpZWQgYW5kIGZvdW5kIGl0IGZhaWxzLsKgIFRoZQ0K
Pj4+IFhFTk1FTV9yZW1vdmVfZnJvbV9waHlzbWFwIGNhbGwgcmV0dXJucyAwLg0KPj4NCj4+IFhF
Tk1FTV9yZW1vdmVfZnJvbV9waHlzbWFwIHJldHVybmluZyAwIGlzIGZpbmUsIGJ1dCBpdCBzZWVt
cyB0byBtZQ0KPj4gbGlrZSBlZGsyIGhhc24ndCB1bm1hcHBlZCB0aGUgc2hhcmVkX2luZm8gcGFn
ZS7CoCBUaGUgT1MgaGFzIG5vIGlkZWENCj4+IGF0IHdoaWNoIHBvc2l0aW9uIHRoZSBzaGFyZWRf
aW5mbyBwYWdlIGlzIGN1cnJlbnRseSBtYXBwZWQsIGFuZCBoZW5jZQ0KPj4gY2FuJ3QgZG8gYW55
dGhpbmcgdG8gYXR0ZW1wdCB0byB1bm1hcCBpdCBpbiBvcmRlciB0byBjb3ZlciB1cCBmb3INCj4+
IGJ1Z2d5IGZpcm13YXJlLg0KPj4NCj4+IGVkazIgc2hvdWxkIGJlIHRoZSBlbnRpdHkgdG8gaXNz
dWUgdGhlIFhFTk1FTV9yZW1vdmVfZnJvbV9waHlzbWFwDQo+PiBhZ2FpbnN0IHRoZSBnZm4gd2hl
cmUgaXQgaGFzIHRoZSBzaGFyZWRfaW5mbyBwYWdlIG1hcHBlZC7CoCBMaWtlbHkNCj4+IG5lZWRz
IHRvIGJlIGRvbmUgYXMgcGFydCBvZiBFeGl0Qm9vdFNlcnZpY2VzKCkgbWV0aG9kLg0KPj4NCj4+
IEZXSVcsIDcxMzIwOTQ2ZDVlZGYgaXMgYW4gQUJJIGNoYW5nZSwgYW5kIGFzIGRlc2lyYWJsZSBh
cyBzdWNoDQo+PiBiZWhhdmlvciBtaWdodCBiZSwgYSBuZXcgaHlwZXJjYWxsIHNob3VsZCBoYXZl
IGludHJvZHVjZWQgdGhhdCBoYWQgdGhlDQo+PiBiZWhhdmlvciB0aGF0IHRoZSBjaGFuZ2UgaW50
ZW5kZWQgdG8gcmV0cm9maXQgaW50bw0KPj4gWEVOTUVNX2FkZF90b19waHlzbWFwLg0KPiBJIGNh
biBzZWUgaG93IHlvdSB0aGluayB0aGlzIGlzIGFuIEFCSSBjaGFuZ2UgYnV0IHRoZSBwcmV2aW91
cyBiZWhhdmlvciANCj4gd2FzIGluY29ycmVjdC4gQmVmb3JlIHRoaXMgcGF0Y2gsIG9uIEFybSwg
d2Ugd291bGQgYWxsb3cgdGhlIHNoYXJlZCBwYWdlIA0KPiB0byBiZSBtYXBwZWQgdHdpY2UuIEFz
IHdlIGRvbid0IGtub3cgd2hlcmUgdGhlIGZpcm13YXJlIGhhZCBtYXBwZWQgaXQgDQo+IHRoaXMg
Y291bGQgcmVzdWx0IHRvIHJhbmRvbSBjb3JydXB0aW9uLg0KPiANCj4gTm93LCB3ZSBjb3VsZCBz
dXJlbHkgZGVjaWRlIHRvIHJlbW92ZSB0aGUgcGFnZSBhcyB4ODYgZGlkLiBCdXQgdGhpcyANCj4g
Y291bGQgbGVhdmUgYSBob2xlIGluIHRoZSBSQU0uIEFzIHRoZSBPUyB3b3VsZCBub3Qga25vdyB3
aGVyZSB0aGUgaG9sZSANCj4gaXMsIHRoaXMgY291bGQgbGVhZCB0byBwYWdlIGZhdWx0IHJhbmRv
bWx5IGR1cmluZyBydW50aW1lLg0KDQoNCisxLg0KDQpJbiBhZGRpdGlvbiB0byB3aGF0IEp1bGll
biBoYXMgYWxyZWFkeSBzYWlkLCBJIHdvdWxkIGxpa2UgdG8gc2F5IHRoZSANCnNhbWUgaXNzdWUg
d2FzIGZhY2VkIGR1ZSB0byBVLUJvb3QgKHJ1bm5pbmcgYXMgYSBwYXJ0IG9mIFhlbiBndWVzdCAN
CmJlZm9yZSBPUykgZGlkbid0IHBlcmZvcm0gYSBjbGVhbnVwIGJlZm9yZSBqdW1waW5nIHRvIE9T
LiBUaGlzIGlzIA0KYWxyZWFkeSBmaXhlZCB0byBmb2xsb3cgdGhlIGN1cnJlbnQgYmVoYXZpb3Iu
IEkgZGlkbid0IGZpbmQgDQpjb3JyZXNwb25kaW5nIFUtQm9vdCBtYWlsIHRocmVhZCwgYnV0IGNh
biBwb2ludCB0byBhbHJlYWR5IHVwc3RyZWFtZWQgDQpjb21taXQgaW4gdGhlIG1haW4gcmVwby4N
Cg0KaHR0cHM6Ly9naXRodWIuY29tL3UtYm9vdC91LWJvb3QvY29tbWl0LzAwMDFhOTY0Yjg0MGE2
MmM2NmRhNDJhODlhMTBhMjY1NjgzMWFhNGINCg0KW3NuaXBd


From xen-devel-bounces@lists.xenproject.org Wed Oct 04 12:16:41 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 04 Oct 2023 12:16:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612524.952453 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qo0nl-00087d-Cy; Wed, 04 Oct 2023 12:16:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612524.952453; Wed, 04 Oct 2023 12: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 1qo0nl-00087W-AH; Wed, 04 Oct 2023 12:16:29 +0000
Received: by outflank-mailman (input) for mailman id 612524;
 Wed, 04 Oct 2023 12: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=iV/w=FS=tls.msk.ru=mjt@srs-se1.protection.inumbo.net>)
 id 1qo0nk-00087Q-Ku
 for xen-devel@lists.xenproject.org; Wed, 04 Oct 2023 12:16:28 +0000
Received: from isrv.corpit.ru (isrv.corpit.ru [86.62.121.231])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id d6841613-62af-11ee-9b0d-b553b5be7939;
 Wed, 04 Oct 2023 14:16:26 +0200 (CEST)
Received: from tsrv.corpit.ru (tsrv.tls.msk.ru [192.168.177.2])
 by isrv.corpit.ru (Postfix) with ESMTP id D610127871;
 Wed,  4 Oct 2023 15:16:24 +0300 (MSK)
Received: from [192.168.177.130] (mjt.wg.tls.msk.ru [192.168.177.130])
 by tsrv.corpit.ru (Postfix) with ESMTP id C7FD42CDCD;
 Wed,  4 Oct 2023 15:16:23 +0300 (MSK)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: d6841613-62af-11ee-9b0d-b553b5be7939
Message-ID: <47ea2a99-12c8-4a65-06d9-c67cf233ccf7@tls.msk.ru>
Date: Wed, 4 Oct 2023 15:16:23 +0300
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 2/3] sysemu/xen: Remove unreachable xen_ram_alloc() code
Content-Language: en-US
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>
References: <20230905122142.5939-1-philmd@linaro.org>
 <20230905122142.5939-3-philmd@linaro.org>
From: Michael Tokarev <mjt@tls.msk.ru>
In-Reply-To: <20230905122142.5939-3-philmd@linaro.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

05.09.2023 15:21, Philippe Mathieu-Daudé wrote:
> 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.

I still don't think it is a good way to just eliminate the
function (stub) in a hope compiler will elide the call.  It's
definitely not guaranteed by any standard, and compiler itself
can produce varying results (eg building with -O0 to make gdb
debugging easier).

static inline function costs nothing but keeps whole thing
manageable. IMHO anyway.

/mjt

> 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



From xen-devel-bounces@lists.xenproject.org Wed Oct 04 12:23:14 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 04 Oct 2023 12:23:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612529.952464 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qo0uE-0001R0-2k; Wed, 04 Oct 2023 12:23:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612529.952464; Wed, 04 Oct 2023 12:23: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 1qo0uD-0001Qt-Uq; Wed, 04 Oct 2023 12:23:09 +0000
Received: by outflank-mailman (input) for mailman id 612529;
 Wed, 04 Oct 2023 12:23: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=k75u=FS=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qo0uD-0001Qk-CB
 for xen-devel@lists.xenproject.org; Wed, 04 Oct 2023 12:23:09 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id c5b7f86c-62b0-11ee-9b0d-b553b5be7939;
 Wed, 04 Oct 2023 14:23:06 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id 6949A4EE0737;
 Wed,  4 Oct 2023 14:23: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: c5b7f86c-62b0-11ee-9b0d-b553b5be7939
MIME-Version: 1.0
Date: Wed, 04 Oct 2023 14:23:06 +0200
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: Luca Fancellu <Luca.Fancellu@arm.com>
Cc: Stefano Stabellini <sstabellini@kernel.org>, Xen-devel
 <xen-devel@lists.xenproject.org>, michal.orzel@amd.com,
 xenia.ragiadakou@amd.com, Ayan Kumar Halder <ayan.kumar.halder@amd.com>,
 consulting@bugseng.com, Jan Beulich <jbeulich@suse.com>, =?UTF-8?Q?Rog?=
 =?UTF-8?Q?er_Pau_Monn=C3=A9?= <roger.pau@citrix.com>, Henry Wang
 <Henry.Wang@arm.com>, Simone Ballarin <simone.ballarin@bugseng.com>, Doug
 Goldstein <cardoe@cardoe.com>, George Dunlap <george.dunlap@citrix.com>,
 Julien Grall <julien@xen.org>, Wei Liu <wl@xen.org>, Andrew Cooper
 <andrew.cooper3@citrix.com>
Subject: Re: [XEN PATCH] xen: Add SAF deviations for MISRA C:2012 Rule 7.1
In-Reply-To: <B00BC78B-E707-4043-A0B4-D320C6717472@arm.com>
References: <338d8e574db943a86c7605e4c6d9a299d45f067d.1696347345.git.nicola.vetrini@bugseng.com>
 <alpine.DEB.2.22.394.2310031345190.2348112@ubuntu-linux-20-04-desktop>
 <e1736215-52ba-4737-9da3-8f1ba7e832a6@citrix.com>
 <DB96C095-5FAF-40A1-9CA8-002291AA1933@arm.com>
 <2894008e8f612296da84267346ae4240@bugseng.com>
 <B00BC78B-E707-4043-A0B4-D320C6717472@arm.com>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <d14ac69a2034580b7f340ff74f92c65b@bugseng.com>
X-Sender: nicola.vetrini@bugseng.com
Organization: BUGSENG s.r.l.
Content-Type: text/plain; charset=UTF-8;
 format=flowed
Content-Transfer-Encoding: 8bit

On 04/10/2023 12:52, Luca Fancellu wrote:
>> On 4 Oct 2023, at 11:29, Nicola Vetrini <nicola.vetrini@bugseng.com> 
>> wrote:
>> 
>> On 04/10/2023 12:06, Luca Fancellu wrote:
>>> Hi Nicola,
>>>> On 4 Oct 2023, at 10:56, andrew.cooper3@citrix.com wrote:
>>>> On 03/10/2023 9:46 pm, Stefano Stabellini wrote:
>>>>> On Tue, 3 Oct 2023, Nicola Vetrini wrote:
>>>>>> As specified in rules.rst, these constants can be used
>>>>>> in the code.
>>>>>> Their deviation is now accomplished by using a SAF comment,
>>>>>> rather than an ECLAIR configuration.
>>>>>> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
>>>>> "SAF" discussion aside that can be resolved elsewhere:
>>>>> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
>>>> Well no.  "SAF" aside (and SAF does need fixing before reposting 
>>>> this patch, otherwise it's just unnecessary churn), ...
>>>>>> diff --git a/xen/arch/x86/hvm/svm/svm.h 
>>>>>> b/xen/arch/x86/hvm/svm/svm.h
>>>>>> index d2a781fc3fb5..d0623b72ccfa 100644
>>>>>> --- a/xen/arch/x86/hvm/svm/svm.h
>>>>>> +++ b/xen/arch/x86/hvm/svm/svm.h
>>>>>> @@ -57,14 +57,23 @@ static inline void svm_invlpga(unsigned long 
>>>>>> linear, uint32_t asid)
>>>>>> #define INSTR_INT3 INSTR_ENC(X86EMUL_OPC( 0, 0xcc), 0)
>>>>>> #define INSTR_ICEBP INSTR_ENC(X86EMUL_OPC( 0, 0xf1), 0)
>>>>>> #define INSTR_HLT INSTR_ENC(X86EMUL_OPC( 0, 0xf4), 0)
>>>>>> +/* SAF-2-safe */
>>>>>> #define INSTR_XSETBV INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0321)
>>>>>> +/* SAF-2-safe */
>>>>>> #define INSTR_VMRUN INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0330)
>>>>>> +/* SAF-2-safe */
>>>>>> #define INSTR_VMCALL INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0331)
>>>>>> +/* SAF-2-safe */
>>>>>> #define INSTR_VMLOAD INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0332)
>>>>>> +/* SAF-2-safe */
>>>>>> #define INSTR_VMSAVE INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0333)
>>>>>> +/* SAF-2-safe */
>>>>>> #define INSTR_STGI INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0334)
>>>>>> +/* SAF-2-safe */
>>>>>> #define INSTR_CLGI INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0335)
>>>>>> +/* SAF-2-safe */
>>>>>> #define INSTR_INVLPGA INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0337)
>>>>>> +/* SAF-2-safe */
>>>>>> #define INSTR_RDTSCP INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0371)
>>>>>> #define INSTR_INVD INSTR_ENC(X86EMUL_OPC(0x0f, 0x08), 0)
>>>>>> #define INSTR_WBINVD INSTR_ENC(X86EMUL_OPC(0x0f, 0x09), 0)
>>>> ... this has broken a tabulated structure to have comments ahead of 
>>>> lines with octal numbers, while ...
>>>>>> diff --git a/xen/arch/x86/hvm/svm/emulate.c 
>>>>>> b/xen/arch/x86/hvm/svm/emulate.c
>>>>>> index aa2c61c433b3..c5e3341c6316 100644
>>>>>> --- a/xen/arch/x86/hvm/svm/emulate.c
>>>>>> +++ b/xen/arch/x86/hvm/svm/emulate.c
>>>>>> @@ -90,9 +90,9 @@ unsigned int svm_get_insn_len(struct vcpu *v, 
>>>>>> unsigned int instr_enc)
>>>>>> if ( !instr_modrm )
>>>>>> return emul_len;
>>>>>> - if ( modrm_mod == MASK_EXTR(instr_modrm, 0300) &&
>>>>>> - (modrm_reg & 7) == MASK_EXTR(instr_modrm, 0070) &&
>>>>>> - (modrm_rm & 7) == MASK_EXTR(instr_modrm, 0007) )
>>>>>> + if ( modrm_mod == MASK_EXTR(instr_modrm, 0300) && /* SAF-2-safe 
>>>>>> */
>>>>>> + (modrm_reg & 7) == MASK_EXTR(instr_modrm, 0070) && /* SAF-2-safe 
>>>>>> */
>>>>>> + (modrm_rm & 7) == MASK_EXTR(instr_modrm, 0007) ) /* SAF-2-safe 
>>>>>> */
>>>>>> return emul_len;
>>>>>> }
>>>> ... this has comments at the end of lines with octal numbers.
>>>> So which is it?
>>> I agree with Andrew here in this sense: the in-code comment is
>>> supposed to be on the line *before* the violation,
>>> not on the same line, so I’m also wondering how it is fixing the very
>>> first violation.
>>> Cheers,
>>> Luca
>> 
> 
> Hi Nicola,
> 
>> Actually it justifies what is on either the previous line or the same 
>> because it's
>> translated to /* -E> safe MC3R1.R7.1 1 */, where the last number is 
>> how many lines besides
>> the current one are to be deviated (e.g. you can have 0 deviate only 
>> the current line).
> 
> Just to understand, does this way:
> 
> <line A>
> /* -E> safe MC3R1.R7.1 1 */
> <line B>
> 
> Justifies only line B? Because I thought so, but now I want to be
> sure, otherwise it doesn’t act
> as intended.
> 
> 

Yes, line A is untouched.

<line A>
/* -E> safe MC3R1.R7.1 1 */ (deviated)
<line B>                    (deviated)



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


From xen-devel-bounces@lists.xenproject.org Wed Oct 04 12:53:46 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 04 Oct 2023 12:53:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612539.952474 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qo1NY-0008Ji-8K; Wed, 04 Oct 2023 12:53:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612539.952474; Wed, 04 Oct 2023 12:53: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 1qo1NY-0008Jb-5V; Wed, 04 Oct 2023 12:53:28 +0000
Received: by outflank-mailman (input) for mailman id 612539;
 Wed, 04 Oct 2023 12:53: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=O8y1=FS=citrix.com=prvs=634504905=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qo1NW-0008Au-MA
 for xen-devel@lists.xenproject.org; Wed, 04 Oct 2023 12:53:26 +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 fd8691c6-62b4-11ee-9b0d-b553b5be7939;
 Wed, 04 Oct 2023 14:53:20 +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;
 04 Oct 2023 08:53:17 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by DM6PR03MB4953.namprd03.prod.outlook.com (2603:10b6:5:1e9::11) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Wed, 4 Oct
 2023 12:53:15 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::66ca:3a42:baeb:9ecf]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::66ca:3a42:baeb:9ecf%6]) with mapi id 15.20.6838.030; Wed, 4 Oct 2023
 12:53: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: fd8691c6-62b4-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1696424000;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=iHQwA4H2oDjw9pw4BUUTg4CMwdnOcE6wy/yyvYgqJFc=;
  b=Ip9K/sGXp6VjHxBJHn2BhKJHU0CqUVi7rSYBQxNy90TvvSAud50aJ2/+
   WSjWY9BYasR5WvxbaeY6TsDL8V5i6nHGidqv/UzfgXoM/oYRasLsMi6xw
   MsFYEm1kZ9WZB8iIn47w/acsJixMsvlhOiaNkWeDjee/GK/uYbHkEmLZi
   c=;
X-CSE-ConnectionGUID: Of9q1stpRLCuaob8hXJVBg==
X-CSE-MsgGUID: dKZckvYnQOO+i9sUqgrucw==
X-IronPort-RemoteIP: 104.47.56.44
X-IronPort-MID: 125025258
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:+10uaqkjh+6prLE4o/3sjO7o5gwWJ0RdPkR7XQ2eYbSJt1+Wr1Gzt
 xJODzrXPP7bNmf2ed1/a9vk9E4DsMPXzdNnSAJr+yk8EiMWpZLJC+rCIxarNUt+DCFhoGFPt
 JxCN4aafKjYaleG+39B55C49SEUOZmgH+e6UKicfHkpGWeIcQ954Tp7gek1n4V0ttawBgKJq
 LvartbWfVSowFaYCEpNg064gE0p5K+aVA8w5ARkPqkT5AOGzBH5MbpETU2PByqgKmVrNrbSq
 9brlNmR4m7f9hExPdKp+p6TnpoiG+O60aCm0xK6aoD66vRwjnVaPpUTbZLwXXx/mTSR9+2d/
 f0W3XCGpaXFCYWX8AgVe0Ew/yiTpsSq8pefSZS0mZT7I0Er7xIAahihZa07FdRwxwp5PY1B3
 dsWeSlUdQybvcad3bu8QLlstuYdBsa+aevzulk4pd3YJdAPZMiZBonvvppf1jp2gd1SF/HDY
 cZfcSBocBnLfxxIPBEQFY46m+CrwHL4dlW0qnrM/fZxvzeVkVI3jOSF3Nn9I7RmQe1PmUmVv
 CTe9nnRCRAGLt2PjzGC9xpAg8eWx36jAt9ISe3QGvhCjH6hzW8NORsvcnz4oKiit1exQc9UN
 BlBksYphe1onKCxdfH/Qhm5rXisrhMaHd1KHIUS5QGAz+nE7gCxAzUcCDVGbbQOpMIwADAny
 FKNt9foHiB09q2YT2qH8bWZpi/0PjIaRUcZfjMNRwYB59jloakwgwjJQ9IlF7S65vX/FCvs2
 TmMoG47jq8KkM8Q/6yh+BbMhDfEjqbOSgk59wDGRFWP5wlyZJOmT4Gw4F2d5vFFRK6eSlSCp
 3ECl9Kp8PEVDZqNmSqOR80ABLisof2CNVXhbUVHGpAg83Gh/iWldIUIujVmfh81boADZCPjZ
 1LVtUVJ/phPMXC2bKhxJYWsF8AtyqumHtPgPhzJUudzjlFKXFfv1ElTiYS4hggBTGBEfXkDB
 Kqm
IronPort-HdrOrdr: A9a23:8eupC61aVdCcZhaT3mIQZwqjBEgkLtp133Aq2lEZdPU0SKGlfg
 6V/MjztCWE7Ar5PUtLpTnuAsa9qB/nm6KdgrNhWItKPjOW21dARbsKheffKlXbcBEWndQtt5
 uIHZIeNDXxZ2IK8PoT4mODYqodKA/sytHWuQ/cpU0dMz2Dc8tbnmBE4p7wKDwMeOFBb6BJcq
 a01458iBeLX28YVci/DmltZZm4mzWa/KiWGCLvHnQcmXGzsQ8=
X-Talos-CUID: 9a23:Fuaf0mwhZINkmnzT4E8oBgUzFJE8K2bB1E30CFKxDmw5SI23d3WfrfY=
X-Talos-MUID: 9a23:wMi5XgpeMe4107a4LyAezz1BBsxr/ZWoMWcq0pRXoPSdOjZtMCjI2Q==
X-IronPort-AV: E=Sophos;i="6.03,200,1694750400"; 
   d="scan'208";a="125025258"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=NjYWF9QaUZ53VIC5J1pV/RGA4bTwlp/7IeHAxUEoV8DQ2wzRMVN7PJUdqV3Hmvq+viFbUZ0v3gCP0PUb4DYoAllBsF9+saQaYv6awmhiWVM60iMqQ7o1zkdgLHx1jt6lDbK0G3WLJ/f3tqKc9cJAjmgd4kdGrqKC2YyUTkGKbW/uRGZRNhyJZ2H6ke78FVSwkrDQvaiOeRuY3e9MfLZtMtWcshfs3AjdeodrE8W03Ee4yr9fX9CW6oRPWGVyq4CLqPnajLcObqXYcK2QkExVpyoSsL4W0JOYVxGCynmoMdMybX06vW9F5Rb5gadjgMvqmRNlKlopWu9iMP02UM9KIg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=Gak1ELPomXjZMaS5d7LVvNtq3KPQknErhH0eO81ZY4M=;
 b=PPKsUI22B1f5zZq2jH6SlPDpxHO2/l7yaf3m4UMUeKWcJJU0CF4QQKBvc8QS0zi/upWHnEHvcISrP72inmIPEGyanYwUHakomPebCbyb+XbgKxGFSeKeaOWvbC1FGjl4PTHlumpOHAwsYnbPQ4QRmTsMFqkvqh/MDm6JqV8rV9tfMhE0q9bMySl2J3wCMHIftQvzecUAZW/vqtsAqZD6I1mcSYc+kxwWl2FB4bGpX/EYTFKnPRrcBWK8BFDvLSbW+UdAs8RXWKsKywIJgiLsPTsgwuWdlvt5EgSXfJXxMmK9jVZ+pHEgAvuCFlColVvyXj2Q1Fjb/t0N/695iiqaBQ==
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=Gak1ELPomXjZMaS5d7LVvNtq3KPQknErhH0eO81ZY4M=;
 b=QioDgT+/j3Gce9akjVryaV+7Zuf4lj+WJYNdCCuE0fmfsBPTwgScXj2PwA5L8AVBx8p5nrJovmOXOaiaKwv7MZVrE7VjjB7rduFZKabnR+dYWpYuInRx1xGm/Ww5TatJZmsO+jQqYpQA7XMB8BLqmapsDzRdS3C7m7VscX/YewI=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Wed, 4 Oct 2023 14:53:07 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Julien Grall <julien@xen.org>
Cc: Elliott Mitchell <ehem+xen@m5p.com>, xen-devel@lists.xenproject.org,
	Stefano Stabellini <sstabellini@kernel.org>,
	Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>
Subject: Re: Issue with shared information page on Xen/ARM 4.17
Message-ID: <ZR1gM19i6-vBaXh7@MacBookPdeRoger>
References: <ZRY7Ls3p6M6pakMq@mattapan.m5p.com>
 <ZRvQNKyYpLDVTs0i@MacBookPdeRoger>
 <ZRxpC7ukhiYvzz5m@mattapan.m5p.com>
 <ZR0erl_OSkNgIQjx@MacBookPdeRoger>
 <c0b67401-dfe5-475f-8640-b66ac32a80fb@xen.org>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <c0b67401-dfe5-475f-8640-b66ac32a80fb@xen.org>
X-ClientProxiedBy: LO4P123CA0103.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:191::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_|DM6PR03MB4953:EE_
X-MS-Office365-Filtering-Correlation-Id: f52b5ce5-b014-42b4-9016-08dbc4d8df37
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	OVE8BY0y3w3gdz5GSMkLF/NvEVdNXC1Xiwh7NNDmu8+uQX31CbMa5l5h80jHxaW1T6Qwd8zp94ch9UEncz1OKP+g8LFn5UqGc61u9Ump/xEQbo7K7pIZAD3x3uM7DW5kUOjbS2IdlqtvGIt+rhTaPWt+QiEyzrPmCkJVwFkf+aiWl0hnGQSAoQ6lU4zc7yf57X0jhTDNz5o7XFfoFWC6RLXFySAPzZtRwZWy7ar6CggygM3ByoVi2XWFl3glrwrrj7eHM84JEj4gb3U/UhAJWl6NK736W6ZPF8sCU+DTyb/GvvVerE6IfkPInP0Jlay4BNFWtzIFJeahg8p0CjTnCrCDltC99bztZX2uzyA/PF6oVhJsEAVLv/FZRAimIrTzsSe5WpWEBlAQ83uiLZe0Lkm8gm7QciNqSXICopOi539+ylNJRbQdlXTTb9c+tbhxce0xuN9rg3OgGhTi659Qqv0wx1Pk73I1ZlrwLPeiU93dpnTIKbjC3Tflwi93jtqT4oBNQRXu/OK+QWPXX8wNMoF2ry8/7kkc2hAOwetCjn9wBw8BcFpO46+zwUxEptfD
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)(39860400002)(346002)(376002)(136003)(396003)(230922051799003)(451199024)(64100799003)(1800799009)(186009)(6506007)(6666004)(478600001)(53546011)(6486002)(6512007)(38100700002)(86362001)(82960400001)(66556008)(33716001)(83380400001)(9686003)(26005)(2906002)(85182001)(66476007)(54906003)(66946007)(6916009)(5660300002)(41300700001)(8676002)(316002)(8936002)(4326008);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?clFReEMvVTJyN2ZUalR3Y2lQRXJJUEdIcjBCTHZQN05CTUUycmNsNWNyZE9E?=
 =?utf-8?B?WDAwaE5LSldNYWdWSDhoRmR2ZmJQaWdDaW03azFRZko3UUdJZHExSzYrdjNG?=
 =?utf-8?B?T3I5cEg1NlZqcUhrTkMrUWJQNWFreC9rSGhiVkNIbkVFWWFBUFEwbHBtbXBR?=
 =?utf-8?B?V09DbFR4bC9tbXpOUzlVeXJ5S0ErVTRuZ09UNGRBeDhVYkVsZ0cvaDRJdGxX?=
 =?utf-8?B?bEVTV1ZURHVqb3NIRXE4YlprbHM1QklzcGdSUGhlbnBxVG5jUjNaZkVMRzV5?=
 =?utf-8?B?MUVzSVdEai9QT29XeENtNkl6aXFDM3MrSm12dTUvc25zZmR4Sm4zYkNDWkRC?=
 =?utf-8?B?QVNLQ3owcWlUb21EeUY0OTF4ZkNOdkgyaUp1ZWg5WlZaSUgvK28vMUNtQWRj?=
 =?utf-8?B?TGFtaTI1MHpqM0lFYnN5MEdXY0VDY2x1b2RmVWk2R1Jjcm5EQ1I1aXBreG1s?=
 =?utf-8?B?ME1xU2R1dVNUM2d3NWM1Y2JnUUlEdTV4WGxKbmVXajZ6czZzVGczRWJDcFN2?=
 =?utf-8?B?dDY0L3QzNGdDOXdBOVZ4MDRvT3pOY2NHQWpEQVpFWXFBd0U2aFdxSmRLbzJa?=
 =?utf-8?B?ejlUeGlRTTdRV0M3UVVReDF2amI0b3Q3c20yYWkzdVYzNUpYbGMrZ0hMVG5x?=
 =?utf-8?B?V2dnbXU2czkwSmNLNXlBak1hdlFFMDc0d3QvcC9jY2JxT2YyWlh1cnN2VkJ3?=
 =?utf-8?B?UmIrcytJM3VTV0hOYmoyNldod0hMaDVrWFNiTG1ZRitVL3ViMEdhSHV6S1pU?=
 =?utf-8?B?U3gyc0xKM1psS3hjTmpNbHJnUXh0Qkp6RlNTaG45ZHZJeVdhY21meHc1ZXNV?=
 =?utf-8?B?a1VSaXIyOGdpTWhIcjZHTDlSL28vUmRuL2tiZTZ5d2VEVGdyZStiNVNCaS9u?=
 =?utf-8?B?UVJXZWFpU0YxTER6ZUs2dmhGOGlYdzNicnVqQnRFWUhiWXRYNVlydHM3K0Fu?=
 =?utf-8?B?NytyMEl4VTE1NHl2RnJ2dnExUytUMG1GdDRyMHJEVWZvSGhTODB1YlQwd2gw?=
 =?utf-8?B?V010S05mamlGUytRYVlvbFlPTWkrMmpaQjg1VTFicFZWL204YU9ORzlhbXJP?=
 =?utf-8?B?OWgyZTNTcG1IQ1RGN0I0L2U5RXlXajlqZ1VyVFNZSVdVbHd2bVlLR2VaWHNS?=
 =?utf-8?B?MlpmalNJUU5QQXlTY1dmZ2FHN3BRYjltNmU4V29NTmRuVU5MTXcwM2RRbU1n?=
 =?utf-8?B?MlB5TXBwcXI2NDdvNy9oUUtDWWhYWjRUbjNLeDFHTzBkcm1XVkdTYzRaT2xs?=
 =?utf-8?B?TzArNEk4aXZ0MU9WeVh3QVh1Y21PS09jYjdETDBUcmVRbU1PWGtmdDRYdzNR?=
 =?utf-8?B?T2RtY1l2UDhEWFczTXlXd3FIT2RVdEhUbUtWaGlaNi91blFvemZ3ZjlBVzli?=
 =?utf-8?B?NitjWE1teVBOKzlweFZrNDJlbEdsUTQ3LzlwZHlUMkZHREtlMEZ3RS9hME4v?=
 =?utf-8?B?OEFVTnB0MHRkalpjYWdUR0ZteXlKY2RNb0ozK3BSOGtXbkpES3N6a3pmTUlP?=
 =?utf-8?B?RDhiYWVXMnIraGEvRjZ3UVRrNHhnWnA3R2QvVFM4UTBpY1lFa21zcFVWSzd3?=
 =?utf-8?B?MFNVUFRqZTQ1MGFFQXRsK280dy9XVm5CR3F5TUJ0b1hUbU5pMVRNS3ZUc3Rj?=
 =?utf-8?B?OTA0V0EzMFplK29tR1M0TlpQN1pqYllBSzZmMjJSdHdLUDdtemQ1WnJrNlJ0?=
 =?utf-8?B?UElEY0NWUVZxVjNSVy9RV0YzK1hTaFJmZnIzcTJOVVpKMVZnOHhWdHVKamti?=
 =?utf-8?B?N1Z3Ym93ZkhBSXBpbDhXdmJlS3J6Q1lkUEVLTW44M0NQQ2hoZDFzZXQ2Mzli?=
 =?utf-8?B?SWp4RDY5ZEhUR2puOG5OUm1YQzlTMjM0aUZKek5IcHh6ZG5GQk5CS2pScTEv?=
 =?utf-8?B?czUvWHdxZGdWbXV6d1JHVUVwZGxGRmdGZk8wUjhEL3poemxjOUE0UG5LcFRj?=
 =?utf-8?B?eExSOU9RMklxekpLUEdYRUFwVzJnWmJJeFY2L29mcHZHS0d0aGRjamRqaXJk?=
 =?utf-8?B?ZEljclNURUp6dG9kRlV5YmhHNVVwekZpd1NNU3lQSDJlSXFkanBDTFIvMTdB?=
 =?utf-8?B?RGwwWVBZR3Q5Tnk4WEZVVUtZM3NIV1c4K0FHckJyRGRDWThTd09PUlNIVW1m?=
 =?utf-8?Q?umuBRUID25TULV48NLXviZgX/?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	VVxp/fxycHnT0dZU3zutA8W1PG5uWLbyIcmM9+5UD3be2fFk8tM9LhJTBzYjkIvkc8C9b7NEDOrVh33Q7hXtPFytIwToNF06LEA8GKEjnJFT67UrIsVjqx+FXPTcb8ktVwevyga6QhH1FKtZ1l9yBH7kU2Q0otfHhlcBrbJetICwz0qlHTz3cjPviUG9iW9r5hawvd3OvWXJFqvAsINMlmyuh5TzwSrJJ0a178X0dP/EKVfpqD15SiEzynHAC8nzJtvksnLg0DCpepWi1xZNCpKdRMXtEEnGCA/B40L8dlsFxq98FS2bNVqOkJfwFAcYxYtCLKMreoBPZ4PbUEDyUORHMkwpHm199UsvIb3rHRI2B9jG9dJ44S1z8PrCy7ktucUQT2iS3bvXr7VUjcs5QFeDNElbo/RW7syYxhdkR0ukvbPkswJ2nXAfFVOfnXZRmy4eWmmy/PB4ivVoyCZ2aRq4MmlBeeWamzH6jC5M7AgFcFNQ1t9+HVm3dfK3qkjupzbStHrVSql3RhEKdK1Nnn1wLMim+rzaa6km3GGgR+XwwKFAApl37pQBvAjP16ZpyP2cJncGFZg9tOiyJekr7rswjiaKaKNL7Dgbpv9z+RaK1Pld3xTiGKSeaCPhPpeQQ4H/WsOTs+c/u44VmgAc1NmNVd1Ygls2LhjjEXXjPakIjSHXJwws6w0eh6HEInZ9eClqz8Ps93bbLMcrQjH/1DMDitX/LTr7S9kXpXYhqBOy2qIUXmNgO0gnUFDKgDCCYRf3zVcF8skUTv+LgSJLaauxXFtF5tQCcVPJQ1qxZ8feVSF027lbxnLWiCX3oWX9phckZUm6D+RLE3FTCPZcyQ7fBpScN7gLm70HGoqOWP0bxfXAILSLKMFYhEz/Z608Q+1Z4CMtBBTM6b5ItvuKQA==
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: f52b5ce5-b014-42b4-9016-08dbc4d8df37
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Oct 2023 12:53:14.4704
 (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: PuS6Cg/lPJE/uwdf0Am93bX9izWjTkKvzOy9zA9pPBCbhlUoRJQgebK6LAXTN2EzwLpfd5GPV0RFsuz8T+aiPw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB4953

On Wed, Oct 04, 2023 at 11:55:05AM +0100, Julien Grall wrote:
> Hi Roger,
> 
> On 04/10/2023 09:13, Roger Pau Monné wrote:
> > On Tue, Oct 03, 2023 at 12:18:35PM -0700, Elliott Mitchell wrote:
> > > On Tue, Oct 03, 2023 at 10:26:28AM +0200, Roger Pau Monné wrote:
> > > > On Thu, Sep 28, 2023 at 07:49:18PM -0700, Elliott Mitchell wrote:
> > > > > 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.
> > > > 
> > > > This is due to 71320946d5edf AFAICT.
> > > 
> > > Yes.  While the -EBUSY line may be the one triggering, I'm unsure why.
> > > This seems a fairly reasonable change, so I had no intention of asking
> > > for a revert (which likely would have been rejected).  There is also a
> > > real possibility the -EBUSY comes from elsewhere.  Could also be
> > > 71320946d5edf caused a bug elsewhere to be exposed.
> > 
> > A good way to know would be to attempt to revert 71320946d5edf and see
> > if that fixes your issue.
> > 
> > Alternatively you can try (or similar):
> > 
> > diff --git a/xen/arch/arm/mm.c b/xen/arch/arm/mm.c
> > index 6ccffeaea57d..105ef3faecfd 100644
> > --- a/xen/arch/arm/mm.c
> > +++ b/xen/arch/arm/mm.c
> > @@ -1424,6 +1424,8 @@ int xenmem_add_to_physmap_one(
> >                   page_set_xenheap_gfn(mfn_to_page(mfn), gfn);
> >           }
> >           else
> > +        {
> > +            printk("%u already mapped\n", space);
> >               /*
> >                * Mandate the caller to first unmap the page before mapping it
> >                * again. This is to prevent Xen creating an unwanted hole in
> > @@ -1432,6 +1434,7 @@ int xenmem_add_to_physmap_one(
> >                * to unmap it afterwards.
> >                */
> >               rc = -EBUSY;
> > +        }
> >           p2m_write_unlock(p2m);
> >       }
> > 
> > > > > 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?
> > > > 
> > > > I think the issue is that you are mapping the shared info page over a
> > > > guest RAM page, and in order to do that you would fist need to create
> > > > a hole and then map the shared info page.  IOW: the issue is not with
> > > > edk2 not having unmapped the page, but with FreeBSD trying to map the
> > > > shared_info over a RAM page instead of a hole in the p2m.  x86
> > > > behavior is different here, and does allow mapping the shared_info
> > > > page over a RAM gfn (by first removing the backing RAM page on the
> > > > gfn).
> > > 
> > > An interesting thought.  I thought I'd tried this, but since I didn't see
> > > such in my experiments list.  What I had tried was removing all the pages
> > > in the suggested mapping range.  Yet this failed.
> > 
> > Yeah, I went too fast and didn't read the code correctly, it is not
> > checking that the provided gfn is already populated, but whether the
> > mfn intended to be mapped is already mapped at a different location.
> > 
> > > Since this seemed reasonable, I've now tried and found it fails.  The
> > > XENMEM_remove_from_physmap call returns 0.
> > 
> > XENMEM_remove_from_physmap returning 0 is fine, but it seems to me
> > like edk2 hasn't unmapped the shared_info page.  The OS has no idea
> > at which position the shared_info page is currently mapped, and hence
> > can't do anything to attempt to unmap it in order to cover up for
> > buggy firmware.
> > 
> > edk2 should be the entity to issue the XENMEM_remove_from_physmap
> > against the gfn where it has the shared_info page mapped.  Likely
> > needs to be done as part of ExitBootServices() method.
> > 
> > FWIW, 71320946d5edf is an ABI change, and as desirable as such
> > behavior might be, a new hypercall should have introduced that had the
> > behavior that the change intended to retrofit into
> > XENMEM_add_to_physmap.
> I can see how you think this is an ABI change but the previous behavior was
> incorrect. Before this patch, on Arm, we would allow the shared page to be
> mapped twice. As we don't know where the firmware had mapped it this could
> result to random corruption.
> 
> Now, we could surely decide to remove the page as x86 did. But this could
> leave a hole in the RAM. As the OS would not know where the hole is, this
> could lead to page fault randomly during runtime.

I would say it's the job of the firmware to notify the OS where the
hole is, by modifying the memory map handled to the OS.  Or else
mapping the shared_info page in an unpopulated p2m hole.

When using UEFI there's RAM that will always be in-use by the
firmware, as runtime services cannot be shut down, and hence the
firmware must already have a way to remove/reserve such region(s) on
the memory map.

> Neither of the two behaviors help the users. In fact, I think they only make
> the experience worse because you don't know when the issue will happen.
> 
> AFAICT, there is no way for an HVM guestto know which GFN was inuse. So in
> all the cases, I can't think of a way for the OS to workaround properly
> buggy firmware. Therefore, returning -EBUSY is the safest we can do for our
> users and I don't view it as a ABI change (someone rely on the previous
> behavior is bound to failure).

I fully agree the current behavior might not be the best one, but I do
consider this part of the ABI, specially as booting guests using edk2
has now stopped working after this change.

Introducing a different hypercall, or even using
XENMAPSPACE_shared_info with idx = 1 to signal the usage of the new
behavior should be used instead.

This would also allow unifying the behavior between x86 and Arm.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Wed Oct 04 12:59:25 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 04 Oct 2023 12:59:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612545.952484 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qo1TF-0001CY-1g; Wed, 04 Oct 2023 12:59:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612545.952484; Wed, 04 Oct 2023 12:59: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 1qo1TE-0001CR-Uc; Wed, 04 Oct 2023 12:59:20 +0000
Received: by outflank-mailman (input) for mailman id 612545;
 Wed, 04 Oct 2023 12:59: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=O8y1=FS=citrix.com=prvs=634504905=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qo1TD-0001CL-Ul
 for xen-devel@lists.xenproject.org; Wed, 04 Oct 2023 12:59:20 +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 d25d84e0-62b5-11ee-9b0d-b553b5be7939;
 Wed, 04 Oct 2023 14:59:16 +0200 (CEST)
Received: from mail-dm3nam02lp2046.outbound.protection.outlook.com (HELO
 NAM02-DM3-obe.outbound.protection.outlook.com) ([104.47.56.46])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 04 Oct 2023 08:59:08 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by MW4PR03MB6523.namprd03.prod.outlook.com (2603:10b6:303:126::6)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.29; Wed, 4 Oct
 2023 12:59:07 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::66ca:3a42:baeb:9ecf]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::66ca:3a42:baeb:9ecf%6]) with mapi id 15.20.6838.030; Wed, 4 Oct 2023
 12: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: d25d84e0-62b5-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1696424355;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=8w9oI1qoOZzEug7xSfFIZ1QXiiGs1h2u5GRddbVru5E=;
  b=OR4s2eahnuRUtC0HQiLQ942lPhcFo7KHDshuHHrFsckhsBx36RbipS5b
   hX0TkK6fGIblJpWGCGxOSy2zRo47RYNm7GLUdgNLAQBiMbW/C8j8yCU6K
   ryNEjkrdwVlCOyqGs/jwjofPdnxjb0UZrrEYgFCp5b8ybQlgA5GTAE5Y7
   Q=;
X-CSE-ConnectionGUID: kMeHBSlCTLGhinhxBguR3g==
X-CSE-MsgGUID: NJyGuC3SRtG7D9uhVgywrQ==
X-IronPort-RemoteIP: 104.47.56.46
X-IronPort-MID: 127360427
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:gDnLnqMLGsANzSvvrR0ylsFynXyQoLVcMsEvi/4bfWQNrUoh0D0Hm
 GsYCj2BOvjbajD9L9skbd6+/UlV78CBzddrHgto+SlhQUwRpJueD7x1DKtS0wC6dZSfER09v
 63yTvGacajYm1eF/k/F3oDJ9CQ6jefQAOOkVIYoAwgpLSd8UiAtlBl/rOAwh49skLCRDhiE/
 Nj/uKUzAnf8s9JPGjxSs/nrRC9H5qyo42pA5gBmPpingXeF/5UrJMNHTU2OByOQrrl8RoaSW
 +vFxbelyWLVlz9F5gSNy+uTnuUiG9Y+DCDW4pZkc/HKbitq/0Te5p0TJvsEAXq7vh3S9zxHJ
 HehgrTrIeshFvWkdO3wyHC0GQkmVUFN0OevzXRSLaV/ZqAJGpfh66wGMa04AWEX0uVSDEFkz
 vgzFBQibhGFh/Kcz6+BEeY506zPLOGzVG8ekldJ6GmDSNoDGtXESaiM4sJE1jAtgMwIBezZe
 8cSdTtoalLHfgFLPVAUTpk5mY9EhFGmK2Ee9A3T+PRxvza7IA9ZidABNPLPfdOHX4NNl1uwr
 WPa5WXpRBodMbRzzBLcqC332LeTx3yTtIQ6Mp+p2eNB22ap2kNMJEwLVWW0sOajsxvrMz5YA
 wlOksY0loAV8EGoVdD7UwePnG+fvhUcVtxTFMU38AiIjKHT5m6xBHUATzNHQMwrsokxXzNC/
 lKJktaqFTFpmLjIUTSW8bL8hSO/P20ZIHEPYQcATBAZ+J/zrYcrlBXNQ91/VqmvgbXdAirsy
 jqHqCw/gbQ7jsMR0ai/u1fdjFqErJXTUhQ84AmRW2u/9x54f6asfYnu4l/ehd5+K4KeQkiEr
 WIzscGU5+ATDrmAjCWIBu4KGdmUC+2tNTTdhRtjGsIn/jH1oXq7J9gMvnd5OVtjNdsCdXnxe
 kjPtAhN5ZhVeny3catwZIH3AMMvpUT9KenYujnvRoImSvBMmMWvpUmCuWb4M7jRrXUR
IronPort-HdrOrdr: A9a23:3mgilKMR2LR26sBcTjujsMiBIKoaSvp037BK7S1MoNJuEvBw9v
 re+MjzsCWftN9/Yh4dcLy7VpVoIkmskKKdg7NhXotKNTOO0AeVxelZhrcKqAeQeREWmNQ96U
 9hGZIOdeEZDzJB/LrHCN/TKade/DGFmprY+9s31x1WPGZXgzkL1XYDNu6ceHcGIjVuNN4CO7
 e3wNFInDakcWR/VLXAOpFUN9Kz3uEijfjdEGY7OyI=
X-Talos-CUID: 9a23:mzspuWBBHMe6DYf6EypC+W4+IcQOTlnyzHbWI1+SBntTE7LAHA==
X-Talos-MUID: =?us-ascii?q?9a23=3AxhoI6Q64u1d6lz1+ExO8Q5i3xoxOwbWBFWtWqq8?=
 =?us-ascii?q?alJaoZDFwBTiMky6OF9o=3D?=
X-IronPort-AV: E=Sophos;i="6.03,200,1694750400"; 
   d="scan'208";a="127360427"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=WODj7XDwth9fV61l4NFeCfcg8mcRHau5x7/QqWR5wcDCPFFn/qyn/+7y8Ngh8/wqI145juK4cnHdnSfOWcj7xQ1rF8q0Igx/hqGvH2D7/qbLpEmQBG8PLATabmIyQlwgUQnAU4oRKeylHx8hJEUu5WYN7UkLtHmqB83K5cz3E57/xRtZK5eEgp37p7ZFIQ1Qq50SvIs4ZzisyiZ4RdYOmpfc04sGcgHGTqMd5qZVCdHEO/CS8+cNbijxXU4UaKxfP09m28z+JqNdMIGyMMYJ+I+okYXWjzO1bD+3xGuyXlaKOwMy3R2PzpDJQrwZmhTiVWZosjLk6hzGWyGLk2V1Ow==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=CVNOvd32f5UBcMAkpgUyu385fYKCUqijRhKV4I65DGw=;
 b=TiPtJUo6qWMnnKtq/FTM1TkLHc0AZ08TBytsvOGJ8ziJLaFZqbe0/ngRESVx8RD2wPS7Tl1PtVvzJaVk7+CAYspCsg4HX+JrMRW2AGVFVXAMG6Cl6+muhA0aMK5QQXXsGoRggDYadQ2f9XEfDbOz1VBAZN+OSYneGlMqcyqnhrIpwIIOAXKm+ybR3xdh3J/CVvVOp/VbFMt/n2vR66POCtkfvwbwNay1vO2VxxuacVqnY784vmy4Z41PWN56hJHHwBDxtcU6eR0gSlGOkra/zr9ZbAxC8Y2MB5kjVkQ+1XE1n5tJBeMrXcyzrMCpLdVN66hIzLEHBJQLJ1iasbWIBA==
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=CVNOvd32f5UBcMAkpgUyu385fYKCUqijRhKV4I65DGw=;
 b=c37JrQauapRx3Nt3RKu87meP0HQ1qSYtSJ+nvZpr1m73K881SMOuj+40yEA8fNUIIivt9A3hBOo/i61iTp9IlGDI11UB0+LqmA0x/cgNULu5Q19iVwciXQfs7l09dCFSMwo/4TrxW7XR/rGHsUFGE/f/MpUnlo9TncvnE2GWC2I=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Wed, 4 Oct 2023 14:59:02 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Oleksandr Tyshchenko <Oleksandr_Tyshchenko@epam.com>
Cc: Julien Grall <julien@xen.org>, Elliott Mitchell <ehem+xen@m5p.com>,
	"xen-devel@lists.xenproject.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: Issue with shared information page on Xen/ARM 4.17
Message-ID: <ZR1hliaiprDqCjyQ@MacBookPdeRoger>
References: <ZRY7Ls3p6M6pakMq@mattapan.m5p.com>
 <ZRvQNKyYpLDVTs0i@MacBookPdeRoger>
 <ZRxpC7ukhiYvzz5m@mattapan.m5p.com>
 <ZR0erl_OSkNgIQjx@MacBookPdeRoger>
 <c0b67401-dfe5-475f-8640-b66ac32a80fb@xen.org>
 <aaf14d06-4e29-4de0-8e56-ff200f21b692@epam.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <aaf14d06-4e29-4de0-8e56-ff200f21b692@epam.com>
X-ClientProxiedBy: LO4P265CA0310.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:391::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_|MW4PR03MB6523:EE_
X-MS-Office365-Filtering-Correlation-Id: 1dfda2e6-53f0-46be-592d-08dbc4d9b1d3
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	LLTtkLp+cvw61cVncYFTKMXwugQeQz4DjQ/NoKY9VruSCYnkrETjIGlq2VossFjRoMLQMW6japEBFJ9J4mzHHXVpXiv/59/AhMW7htLFp5kRyntAFTkQMrUGxr1yxpfQU6wZnjkFnw5bn0d/BybUgmbT9o+gr4HmOvd2Qq07GPbEZh7ZBe3NA9aHp+yG/h9e0BXx7t9YZCyTdtcFGgssnlWAs+JmLu0AUKizM/daE5/36txiCUQk1hT/YI80WA5FuV0kXyg4RBXIeU/7msQUQb6a1GUY86lBfDRunQvMWMfuHLfa3h2/YdckUL2R7wnKdS1ichLI6pRx6Nytw5su+NOdto0pVsu0MW47o4H9vlaQ8Mx37df8NUOMsZ1fCKWto1iOO9ud7GzfqMmO3JBGH2K5cACjOCHAP7UJgVsIYABKspGatwfHGqaUfDAjFRpmOqPfCzepBCXb3ojSCiHyejWNVRyGK9oFn21AxfF3p8XJ8r8ERo8S/DkGls7RZZEe8bzA2eku6JYnNEhJF+p8LEqq9E8YS2ocqNGFKII0fHcA3s1t9KV4XvZEHB74ynkc
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)(376002)(39860400002)(230922051799003)(1800799009)(64100799003)(451199024)(186009)(41300700001)(478600001)(5660300002)(66476007)(66946007)(66556008)(54906003)(83380400001)(6666004)(6486002)(316002)(6916009)(8936002)(8676002)(4326008)(6506007)(53546011)(6512007)(9686003)(2906002)(26005)(38100700002)(85182001)(82960400001)(86362001)(33716001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?Qnc1MGNXSXY0MDZrOUd5b0JUTjV2R2tmNU41WmJhbjJoUUFNejF0NFlXQ2R4?=
 =?utf-8?B?S1ZsSU9GNW9yd2FxejcvQTA2blFnaUhsZjZLUm9jckFZd3pyTG9jM1NvamxI?=
 =?utf-8?B?ekk0eEU2UDRhdkV5TVpFRW4wTldhK2p3TXFlTkxCbGNFL3J6TVorT1E5NjZt?=
 =?utf-8?B?SHNla2R2a01ySG1lamtwcGp0KzZZSnVXZmF1VkV3NWxtdGJydmxlOTcrZGln?=
 =?utf-8?B?MmxQZEwyeWQ5eXZydXJ0Ykd4MCtkWHgxemEvKzFSTmlMTzk4a1FYQmhTdUlo?=
 =?utf-8?B?TFhKR1g3Y2JYcWJxckxPcEFocG11NnZnYmppbXRrKzZyaVBCYTFWQWpoS3do?=
 =?utf-8?B?OHRhUEc1MnV6anhOVzFFVHRqdjlHVzhBSkVEa1U2YjRFY1hHd3dteXFVU0xG?=
 =?utf-8?B?d3l0TWszZ1o3NkxGZm9TRFRyYzRFQ1p2SlB0U2owU01zR0ErVXc0YXJRcTY0?=
 =?utf-8?B?MjRZQm1mSEhtdGVvT1hLcEZJVEhaVHpGTGZCL1V1dlRPVVgyNUNVL3EyVW4y?=
 =?utf-8?B?bXB6SDNVcno3Uk1mNm14QU1DU2VFWS93QmtRZER4U2NKSkM5VlFtZ3Npanlk?=
 =?utf-8?B?Q2Q4Z3VXaVRYUjdoNlpsRTYzdHdMV3dSK0RUa2RMajE1MlhiSWs4eHFyZVhx?=
 =?utf-8?B?UkVBTnUyZStYeGVZbDhBSklXSlpGNjFGcWY3cnRDMkRoUUJ4cUJjWWIyM2dB?=
 =?utf-8?B?ekZ0eTd5VTViZGtuMGdOOEJjTitqcmNJYnRkQ2RhL1N5bmo4eXI0d3pFWW1B?=
 =?utf-8?B?QXBvbExQa0F6bHFyck5kNXlXcGxsckVEUjJmNGx0N3oxbTZiNTdjZFJoaHdw?=
 =?utf-8?B?Y3EwREFITDA3WUtCN01SM0VMSGp2U29VRnFRbVBmUEpTMnNIU3IxSEoxR254?=
 =?utf-8?B?OTVWUmlFU2Zxek1DUXJCV1lNNVBMMVpCek5tK01MNCtoL28wdWI0U2wwOThU?=
 =?utf-8?B?Wnc1bFNNV3c4UmV5c0pSRUl6MlREbWluZXMrV0E2UkxqRlRCd0dUU09wMXly?=
 =?utf-8?B?MG9zRnhwY1lmODRyY25yVHlKQkUwRk54SjVaSkM5T1kvYlkreTFxY1EzQnZi?=
 =?utf-8?B?bEpTYkc0WG1SUElzOE4zeFhnczc2dm5UdXF3Zk1rV0pwdXRaVFRSWC9QQ3Fn?=
 =?utf-8?B?SCt4YytteWJRVlhabWtkVXF0RWhhYUhtemZBQVhVcVNHeW5VaGt5RWhwOWJk?=
 =?utf-8?B?VCtiQ2ZNcGQrSmVqQUNnTFhCZUsyd29TSHJuenAxRXgyQUYrVTFObDdxSkVv?=
 =?utf-8?B?d0JrWUh3R0dtdnlYWGY0dGpoYVhaU1BMbDFzTUV1Y3RwQU10KzBzd29lRElI?=
 =?utf-8?B?bStybHFwY1RhYWpLNzhpZHY1WXV5SDdRQlZEVzlKQ0FVYm5QRDJ6TFlpZ1Vm?=
 =?utf-8?B?N2ZGMmh4UDkyeGd1U0dOYWpQcE1ibm9ENmN4QVluV1VXYUl2OE1iY0M0bFp5?=
 =?utf-8?B?aU1Fc204cjJFbytqOVI5aFlXdjdaUS9JSFVQQkI0cHFGcW1QOTRvOVdJYXhq?=
 =?utf-8?B?akR4REdBeHlsRkRvNXJKMGxvblBIR216YkQvTEhRRFF2VWZVVzN6UVNyMWJN?=
 =?utf-8?B?RENwOU9idnN0NXRxV2YxQndFby9qR1NFVDF0S2FTTVg2RmRtazk3Q0ZqTlQw?=
 =?utf-8?B?cUp0Y3RYUkl6NmMvcDJUdElPZ3RLUjlZVGxWQU96dnJvM1ZsMndmY3U5a2M3?=
 =?utf-8?B?a0hSNHkxa2ZzMko3V3puWTJzSlBKSjI4bythaGIzRTBYL09wMjc4dUpYNTFt?=
 =?utf-8?B?MmlqVjFKL0lYdHUreGl2YklMUmR0QmM5SUtxRXFvKzFab3BKcEl6d25yTmdF?=
 =?utf-8?B?TTQ2WVpxK2dobDc5SW8wRWJRcFRoRXk5VUREZXl1THc2T2JxNC9RSno4L2xx?=
 =?utf-8?B?ejFpSloraUJQU3A0UkFzdTRrdnA1R2k4NlZ5Yko0K1NYMTdtMjN2T0xud1lE?=
 =?utf-8?B?OElablJsdWNnUU1WOTlNMUpXcW1IU05kcm82T2paQ3dUMHB4YitOTGFjbndn?=
 =?utf-8?B?TmFqVExYdzUxK01EU09US0xHaTJGaXQrZ2FYWFB2akxKUzJ2NjV0U2IvZHBR?=
 =?utf-8?B?UnIxR1RtNGFFaXRscFk2MVpadTRhcEFUQ2FSYlhEeVJLVWN6MzhuVUpWYlFa?=
 =?utf-8?B?ejVVVk0zK1F2RjZlUDZRa0xKeW85WXBFT0JNNmZnUEtxUkJYVE0wZFVkUWJv?=
 =?utf-8?B?T3c9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	VS98bqE42cdQyVoIlc2rT8STwcgUvHDCEh5kI2KNEmTbz3eWbQbOGlUl+LM0w/fY4APH1uk2eGfhksrgUxTbbDUfS/Yi6rP1n5GoIRJigPgC6jo1yFKcdMKJMkEAfDiCfOwz2EIdxoeiahR/NlfUwE0S7e68zS1XlPNHg0MFlRpv40r10UQ2noux77rubHnaHRpnXM20qtVtCpOjhP/J0QC1P+INj5OoyqmHwLLXm1k0cNr6Ttr6VFQmsFGmMBJyez1p3qA2Ag/tMYW/A+CsTj+wcqdFRLFUYwv0Vso9YLm66d5mRMKX8DSfYFXZg6so7dN5nGcllmR86ASWnkMH7IXBDqAbciOZH9BD/ibhUDrBSj6ct1Rb4F4G6+0SxDmamraYFcNU7x2okm0IwuAfaw94oThTvgFhKPvkoUwGFtQpkYiV6TEjugVwRG7xGDbScK3qiNe3WdnvxWpy0JeiXWJqoJKSRdULXTOEnUqDJu6VN8nlGui5qZQyd2nA9JFQTl/t0i6mK1Gc6KUwwVqPZPUP4sAIBtRdM+O/q1ujAqvhYeAFuO7WgFvwN+tIIweA1uLItDyThrrAAApPIW0TVO2/6UVUPtid4fxCWBe87Y6w1e3rDvIg2NoCxQU0poW2fPfg4c6je/CR/d9a9vtEBlqhA4K9wioFaCOCe/98RZIoonzY6m2hM3PR7yus2CkDJMEZjc+8owd9D8vVyZ7BUyuy9d2reQ/ZscpwZcKYy4y4qGRL4bB9LZB3PYUohwZJzJe9cnO8yU9sAF8Vku3vLpLhkuOsbZITszMD0Tc4rGs07j55YakjSpL3LW1zQT3vKUQUDpjxcd3TDci1nR4fvD8d/tYU3TTPnmpOTYhGM5VewHw/q5yAQkPRJd8nSNGQjxGoxlgjoURwpWl+l1+Wrg==
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 1dfda2e6-53f0-46be-592d-08dbc4d9b1d3
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Oct 2023 12:59:07.6293
 (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: c3Jvqfw1m2gtAj2crqSvGcbSfMo/6WoEqb+Loj1rFcnvwB5UTGMcOX5udCxNFlp15bvtMcwmMConMC83HTlc6w==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW4PR03MB6523

On Wed, Oct 04, 2023 at 11:42:32AM +0000, Oleksandr Tyshchenko wrote:
> 
> 
> On 04.10.23 13:55, Julien Grall wrote:
> 
> Hello all.
> 
> > Hi Roger,
> > 
> > On 04/10/2023 09:13, Roger Pau Monné wrote:
> >> On Tue, Oct 03, 2023 at 12:18:35PM -0700, Elliott Mitchell wrote:
> >>> On Tue, Oct 03, 2023 at 10:26:28AM +0200, Roger Pau Monné wrote:
> >>>> On Thu, Sep 28, 2023 at 07:49:18PM -0700, Elliott Mitchell wrote:
> >>>>> 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.
> >>>>
> >>>> This is due to 71320946d5edf AFAICT.
> >>>
> >>> Yes.  While the -EBUSY line may be the one triggering, I'm unsure why.
> >>> This seems a fairly reasonable change, so I had no intention of asking
> >>> for a revert (which likely would have been rejected).  There is also a
> >>> real possibility the -EBUSY comes from elsewhere.  Could also be
> >>> 71320946d5edf caused a bug elsewhere to be exposed.
> >>
> >> A good way to know would be to attempt to revert 71320946d5edf and see
> >> if that fixes your issue.
> >>
> >> Alternatively you can try (or similar):
> >>
> >> diff --git a/xen/arch/arm/mm.c b/xen/arch/arm/mm.c
> >> index 6ccffeaea57d..105ef3faecfd 100644
> >> --- a/xen/arch/arm/mm.c
> >> +++ b/xen/arch/arm/mm.c
> >> @@ -1424,6 +1424,8 @@ int xenmem_add_to_physmap_one(
> >>                   page_set_xenheap_gfn(mfn_to_page(mfn), gfn);
> >>           }
> >>           else
> >> +        {
> >> +            printk("%u already mapped\n", space);
> >>               /*
> >>                * Mandate the caller to first unmap the page before 
> >> mapping it
> >>                * again. This is to prevent Xen creating an unwanted 
> >> hole in
> >> @@ -1432,6 +1434,7 @@ int xenmem_add_to_physmap_one(
> >>                * to unmap it afterwards.
> >>                */
> >>               rc = -EBUSY;
> >> +        }
> >>           p2m_write_unlock(p2m);
> >>       }
> >>
> >>>>> 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?
> >>>>
> >>>> I think the issue is that you are mapping the shared info page over a
> >>>> guest RAM page, and in order to do that you would fist need to create
> >>>> a hole and then map the shared info page.  IOW: the issue is not with
> >>>> edk2 not having unmapped the page, but with FreeBSD trying to map the
> >>>> shared_info over a RAM page instead of a hole in the p2m.  x86
> >>>> behavior is different here, and does allow mapping the shared_info
> >>>> page over a RAM gfn (by first removing the backing RAM page on the
> >>>> gfn).
> >>>
> >>> An interesting thought.  I thought I'd tried this, but since I didn't 
> >>> see
> >>> such in my experiments list.  What I had tried was removing all the 
> >>> pages
> >>> in the suggested mapping range.  Yet this failed.
> >>
> >> Yeah, I went too fast and didn't read the code correctly, it is not
> >> checking that the provided gfn is already populated, but whether the
> >> mfn intended to be mapped is already mapped at a different location.
> >>
> >>> Since this seemed reasonable, I've now tried and found it fails.  The
> >>> XENMEM_remove_from_physmap call returns 0.
> >>
> >> XENMEM_remove_from_physmap returning 0 is fine, but it seems to me
> >> like edk2 hasn't unmapped the shared_info page.  The OS has no idea
> >> at which position the shared_info page is currently mapped, and hence
> >> can't do anything to attempt to unmap it in order to cover up for
> >> buggy firmware.
> >>
> >> edk2 should be the entity to issue the XENMEM_remove_from_physmap
> >> against the gfn where it has the shared_info page mapped.  Likely
> >> needs to be done as part of ExitBootServices() method.
> >>
> >> FWIW, 71320946d5edf is an ABI change, and as desirable as such
> >> behavior might be, a new hypercall should have introduced that had the
> >> behavior that the change intended to retrofit into
> >> XENMEM_add_to_physmap.
> > I can see how you think this is an ABI change but the previous behavior 
> > was incorrect. Before this patch, on Arm, we would allow the shared page 
> > to be mapped twice. As we don't know where the firmware had mapped it 
> > this could result to random corruption.
> > 
> > Now, we could surely decide to remove the page as x86 did. But this 
> > could leave a hole in the RAM. As the OS would not know where the hole 
> > is, this could lead to page fault randomly during runtime.
> 
> 
> +1.
> 
> In addition to what Julien has already said, I would like to say the 
> same issue was faced due to U-Boot (running as a part of Xen guest 
> before OS) didn't perform a cleanup before jumping to OS. This is 
> already fixed to follow the current behavior. I didn't find 
> corresponding U-Boot mail thread, but can point to already upstreamed 
> commit in the main repo.

What about other bootloaders?

There might be other loaders that didn't unmap shared_info either, but
that removed the page where the shared_info is mapped from the
reported RAM ranges to the guest.  In such case not doing the
unmapping was benign, as the guest would never use that gfn as RAM
anyway.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Wed Oct 04 13:01:01 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 04 Oct 2023 13:01:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612549.952493 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qo1Uq-0002be-DH; Wed, 04 Oct 2023 13:01:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612549.952493; Wed, 04 Oct 2023 13:01: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 1qo1Uq-0002bX-Aa; Wed, 04 Oct 2023 13:01:00 +0000
Received: by outflank-mailman (input) for mailman id 612549;
 Wed, 04 Oct 2023 13: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=O8y1=FS=citrix.com=prvs=634504905=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qo1Uo-0002bQ-VD
 for xen-devel@lists.xenproject.org; Wed, 04 Oct 2023 13:00: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 0e62a129-62b6-11ee-98d3-6d05b1d4d9a1;
 Wed, 04 Oct 2023 15:00:57 +0200 (CEST)
Received: from mail-dm6nam10lp2108.outbound.protection.outlook.com (HELO
 NAM10-DM6-obe.outbound.protection.outlook.com) ([104.47.58.108])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 04 Oct 2023 09:00:44 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by DM6PR03MB4953.namprd03.prod.outlook.com (2603:10b6:5:1e9::11) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Wed, 4 Oct
 2023 13:00:37 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::66ca:3a42:baeb:9ecf]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::66ca:3a42:baeb:9ecf%6]) with mapi id 15.20.6838.030; Wed, 4 Oct 2023
 13: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: 0e62a129-62b6-11ee-98d3-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1696424457;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=d9w+X7qvQ5vdr9Zb3AlhiAIbLGsCLy8I33C/T4m+TGU=;
  b=hyNgO4ZlphOFx0w3XYnF9ee2A08fmUcX1jDYsyxlTNlyEibpV63TNv5o
   Kcwim9SHuI9w1FE3z7mNfGdOS6g4+5IktSynJeR2bdqBA9uL7sF3T2FU2
   TNd3iRJXZ1Y66PSFQmgh9RI1ZySv/YfXLzd2cKuH6JFtMO2v5wkjMNtyb
   s=;
X-CSE-ConnectionGUID: B1S6hi4vTsi+4nfP7yzO4g==
X-CSE-MsgGUID: tJmbinblQoOEKIIZeKR3gw==
X-IronPort-RemoteIP: 104.47.58.108
X-IronPort-MID: 125025915
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:lJU8fKv58bAwAOyU9HDuirJquufnVKZfMUV32f8akzHdYApBsoF/q
 tZmKWnXOvnZNDD3fYgna9/npEkCscCBnN5hGlc6rC5jFH4T+JbJXdiXEBz9bniYRiHhoOCLz
 O1FM4Wdc5pkJpP4jk3wWlQ0hSAkjclkfpKlVaicfHg3HFc4IMsYoUoLs/YjhYJ1isSODQqIu
 Nfjy+XSI1bg0DNvWo4uw/vrRChH4rKq41v0gnRkPaoQ5QeGyyFOZH4iDfrZw0XQE9E88tGSH
 44v/JnhlkvF8hEkDM+Sk7qTWiXmlZaLYGBiIlIPM0STqkAqSh4ai87XB9JFAatjsB2bnsgZ9
 Tl4ncfYpTHFnEH7sL91vxFwS0mSNEDdkVPNCSDXXce7lyUqf5ZwqhnH4Y5f0YAwo45K7W9yG
 fMwAmk2MBCC2/yK27P4Fu9ivpsyPu63M9ZK0p1g5Wmx4fcOZ7nmGv2PyfoGmTA6i4ZJAOrUY
 NcfZXx3dhPcbhZTO1ARTpUjgOOvgXq5eDpdwL6XjfNvvy6Pk0osgP60aIq9lt+iHK25mm6Co
 W3L5SLhCwwyP92D0zuVtHmrg4cjmAuiAt9KTuDpr6MCbFu72k4WAhwQX1+Cpt6UqW+fad98E
 Rcb5X97xUQ13AnxJjXnZDW6vXqFsxg0S9dWVeog52ml1qPR6h2xGmsAQzhOedEi8sQxQFQCx
 lKP2t/kGzFrmLmUUm6GsKeZqyuoPioYJnNEYjULJSMF7t/5sccshxTAZt95Fei+ididMTP6z
 i2OrSM+r64OlsNN3KK+lXjYhxq8q56PSRQ6ji3MRX6s5A59YI+jZqSr5ELd4PIGK5yWJmRtp
 1ABksmaqewLU5eEkXXVRP1XRen5ofGYLDfbnFhjWYE78Cig8GKieoYW5yxiIEBuMYAPfjqBj
 FLvhD69LaR7ZBOCBZKbqartVazGEYCI+QzZa83p
IronPort-HdrOrdr: A9a23:XM2N2qMVnfRVG8BcThKjsMiBIKoaSvp037BL7TETdfUxSKelfq
 +V8cjzuSWZtN9pYgBepTniAsm9qBHnm6KdurNhX4tKNTOO0AGVxepZjLcKrQeOJ8T1zJ846U
 9GG5IObqyIfCAK9vrS0U2aN94hxdWdmZrY+Ns2t00dNz2DtclbnmBE4j7yKDwLeODsP+tGKH
 PZ3Lsjmwad
X-Talos-CUID: 9a23:IWe6im2fwjigOiI3nXR7ZrxfMJkeLH3ckGnsOE77VWBncOKEW3jM9/Yx
X-Talos-MUID: 9a23:uY/rQggH1fGdbpNOcfFNocMpKOVt6aWoAkQ0lrIrmOilByFTAWySk2Hi
X-IronPort-AV: E=Sophos;i="6.03,200,1694750400"; 
   d="scan'208";a="125025915"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=jUgPHPVWy7R+31WWycQSU7hOTw9TinG/e5jKH1lE+pMB9H3yjImSF68Kvr1GPrIwWuJhLiKZPHDl/jRbkHRWvLVOafGXJpavFTreJcBCS/6sYfU0tN2fWOCmxm6Jgc7u2KHPXTVRSxRF004TuttI4y8Gk4XjWWuvzDY1XA7IpwWHDdyh3vp6yMd1iSz6McC+NPJPbGo1pT//Rv9K5PN58FUUxsK81gsUL1oyf2KvlEdW+1stDF+Uy07x/qGCxeqcprgDJGWxE0HJasZFCvdJqI9vPog9/lIMpsIR/MFua5whTTWrPoWmaJMetGjijtDdM7P/fKDu+06ScOuJ26h6yw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=FSqgwmQYedfnEbTVWUs6QNI2Y97dUEO6Y+dZg3TTgd8=;
 b=A7cbH71QlJEPwBlwwJv4A/cK2/99OtLge9BIeOGki9VJ/1BR3eDbzG/LdN02uAllQHF/w1b1J8hmeyZ1KqwsB/kuct9mUJ89ZuQmEQepXlEcS5FpgTpYtBg2qxjsQlfFveekXboX7fKkJzO6nqHMx19K0TMr/6FuDb+h20PvgcEhw0asC07UGIIpqriSBv8b2UaRmhN8OcVPJU1fRxdEpnoiXuzCWQp5ULLRYIWEi5WmfjcG+82bxeP0EvogvT1d68da1pATgrdVU8pfqDH/83o3xWAsUubSQQyXgLva8I9piwCOfVo/5W1q45olStQi78o8YaDenDbIyfX1CBTtKA==
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=FSqgwmQYedfnEbTVWUs6QNI2Y97dUEO6Y+dZg3TTgd8=;
 b=lAo6E3hL2c20LMwPRfsvslDzWwPwkLFbrvs+N2mPQFHY7qmprhHYhJ64Xk8uAYayfFSlCXirjnQmPRAkHMX3DfFPOJIJ+FiclwbLsX0gvquPE+4CJWjZ45r+gh1QIFk2L2C3OSlGy2dQE4dMrXb8G0+Yz8LsZIAEWD6bsRxItIk=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Wed, 4 Oct 2023 15:00:31 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Julien Grall <julien@xen.org>
Cc: Tamas K Lengyel <tamas@tklengyel.com>, xen-devel@lists.xenproject.org,
	henry.wang@arm.com, Jan Beulich <jbeulich@suse.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>
Subject: Re: [PATCH v5 06/10] x86/mem-sharing: copy GADDR based shared guest
 areas
Message-ID: <ZR1h7y2aazvEhtW_@MacBookPdeRoger>
References: <20231002151127.71020-1-roger.pau@citrix.com>
 <20231002151127.71020-7-roger.pau@citrix.com>
 <CABfawhnHg3KrGP-hp4_Q8GvSf2nVSVSyK24HKqAGuWp_AtD8-A@mail.gmail.com>
 <ZRwlXls8xRyc8AX4@MacBookPdeRoger>
 <8ee8d70b-5b69-4834-b7e3-572e96effa5c@xen.org>
 <CABfawhn0vH6rS8-SJQJVZtto2HA61By1bCG3w9bJMJR3x+rXsg@mail.gmail.com>
 <ZR0gX6wyXLD_6nY6@MacBookPdeRoger>
 <30582a7c-f505-462d-9dc4-22efb5a0860c@xen.org>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <30582a7c-f505-462d-9dc4-22efb5a0860c@xen.org>
X-ClientProxiedBy: LO4P123CA0593.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:295::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_|DM6PR03MB4953:EE_
X-MS-Office365-Filtering-Correlation-Id: 6c9cd071-507e-42b9-1de1-08dbc4d9e708
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:
	mg5w+a9k1lLS9HbiotH5N8fsZqtilsiCaEYPlnehDJMwsooWoX0/s2DQfEJWTdb5VbOjm4h1XOIgSbzrwgf6h3Pduqwhw1tK7v6Ye2D1waMgtGHcUCrCwIlpDvmNHnhTGtd+bnGFtF3cTMWlsIMWMPopK2Udzt5oNcbY0b+Xcl8VrDKioWpZEyH2VcrrBxx2dt33lKy4LkQ+iiBbS18MCdCxBR6noo3Z8cDqBgtuaAbl72SL3OHkzjOcial0owBzqFwub74n/gLFY2eTEfuHFn6y6wqrjMZmN1Eoeo9lTh3jtNKcMctLUQX5e95oIuro9c12BgSVdz2uFF1EBE8/QCcsg5nhmYqCPac4a0zS/LABupn2HCeclBGciEOXGv7zQSryMPFv621NOEuwWs75kSWj8cs4nvJjSpjUqtfxKbUOJeAYGSDurZZ+F76EYiyyYLHIoh9V+W81xkcMxPn30GOlK984EyF5A6JUgudl+uJq47CjBSQ+8MtY5NXMkGEZn0idIH3iFjJ6+JPu3wS4URZYt5N6nBLXgpxZLq1dmw4=
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)(39860400002)(346002)(376002)(136003)(396003)(230922051799003)(451199024)(64100799003)(1800799009)(186009)(84970400001)(6506007)(6666004)(478600001)(53546011)(6486002)(6512007)(38100700002)(86362001)(82960400001)(66556008)(33716001)(83380400001)(9686003)(26005)(2906002)(85182001)(66476007)(54906003)(66946007)(6916009)(5660300002)(41300700001)(8676002)(316002)(8936002)(4326008);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?VlV0MTlsOUx3bm9sL1p6QlVTVVYyaDAwTmJ3NSsxQW1jemV3ZUNhU2E2TzQr?=
 =?utf-8?B?bGtPUE9INVpONkZsR0ZMSkxxdDFkWSs3b2hWcUo1dEV2QlNqQ1gwNzdsMXBv?=
 =?utf-8?B?dTZKclVLWmdkd3U1c0RpV1pDcFB6a2RGbTRWblB6YXNRWTJPS215TEhkOHFW?=
 =?utf-8?B?b21HdEdQWDVSNVB4NTF6VHlhVkR4K3RXeDZ2R2ZhbzZ6WGtIdkxDOW5UYkVX?=
 =?utf-8?B?b0N2RTFrM0lSbm9wYjZma3FVOGpnVzZkMTNVQm9tTHRIVFcrV3oyaHh0Nmdq?=
 =?utf-8?B?eERqcnkyb2V0T2xoaDhTR1hWL3NIY1ZjL1JvZ0tja3pmTDU4ZTFvR0wrcW5l?=
 =?utf-8?B?T2pVb05kL2JDY3dEWUF2eWtPbUJEcUhLNjRjTGdRYkc4WWlHTWZBZ0lhdzQ1?=
 =?utf-8?B?VXpXNEYrbzAxWDdFK2t3b2JGUU4zRVAvWDBFR3BCZGZhL2JuQ3VmTFpYNDVl?=
 =?utf-8?B?YnVYWC8yeVNMNXVGNTgzS2xoamlIcGRPRnFzVzk2cFRTQVhBaHJCbTlONjBX?=
 =?utf-8?B?V3BtU3hTZ3NFUHdWUHl2UldjaEVGYU1IaWVyMEhFSUE1WnMyQ3BGbWtXOWZv?=
 =?utf-8?B?UlBvODcyVFZrVyt1cXU1dWp4azBRN3ZzWHliZEFjcXhpRTU3RmlicWY5R2pP?=
 =?utf-8?B?ZEIvZHp1cmgwMDQvNjF6eVdlUlhqL1VJdWdCRlJ0dnRaVWNUbWlWZXdHSWg4?=
 =?utf-8?B?UjRGSEovWStyM2tmNHdLWENCcCs2RmpRdUVLQ0Ixa0hTdEFJU2hZQlh4emJL?=
 =?utf-8?B?RCtLbjAzME1ObldqODZrNmxUTzk1N29TT1RncjlxRFpGbXh5MVJSZnNiRU5F?=
 =?utf-8?B?eHo3UHNKWi9XemlwZ3VqRWlLcjd2dlpvbXhPVmJQOE9rdW5rekU2U1hYYTVK?=
 =?utf-8?B?SXBISlYvL3NYSUhCYlNoaWRRMGR3VEs5V1dUQ3pzRmFOdkdReVBYeVM3QWFz?=
 =?utf-8?B?dWtBU2U5KzVYdmplK3Z5WnJjUzdsSnU1NTJ5bkVGTjArN3A2cHdkQzhUWGsz?=
 =?utf-8?B?RVdoWkdGWHNuU1N6SFVaNE1ONmNGSmc0OVVDY2tTelRkL3B5dC9haExKeDF3?=
 =?utf-8?B?REFIeWJlcnhxTDQ0bGptRk5hRkRJSmVYUXg3Znd3NWgvckNBZkFtZVduWVhQ?=
 =?utf-8?B?UXJib3pOMk9yUWwwdkg0UVBRR3hPeFFhdUEvVHJYakZIR25TVm40UlZjVmlH?=
 =?utf-8?B?NjV2VmFYZ3dCdXhTOFAzVDRiR0tTV3JQQVhXcEUwUERhaDRYTXA5TlBxTWpZ?=
 =?utf-8?B?cVhtWStKcEZienkwN1hKSnFMUy8zclIycGQ3dTN5NjZTYmNXWTFJM3JXUlB0?=
 =?utf-8?B?eVVTR1hqOEVPcEpReG9yeG5DNURnWHgxQUdKTGMrUjZKRzlRUHB3Vy9kdk1E?=
 =?utf-8?B?eDR0eUVOckhBNXNqZDBGQmk4bzBVeHN2TUhZVGZ0Y2dPM3ZvWUJQcjcxcUlh?=
 =?utf-8?B?ejlncEI5UnY2cU9nQjNaSW1nblhvQWRwbVlBZ0Z5RnV4K25JSXM5ZHczS1Jz?=
 =?utf-8?B?ZVFZTXBmazRxNDQ2ZnFlRW5ONlA5Smh5R2QyZFNuaXozTENwV1FzK3FzU3I4?=
 =?utf-8?B?RHgySnJmZFRBUXlzdFR4WXlYaHZKL2hRTU84YzRMZFpHMzZ2YVFTaTMwV2FS?=
 =?utf-8?B?R0dkenB5WG9CdWlTQnR2a2U1Q3BQRkNCSUNpWmtzLytqY0gxb2NSNktsUWp3?=
 =?utf-8?B?bGhabGFqWkVHRWY0ZWxLK0FoQWdzd2wxZUYwV2swM2cyWmp0R0IxaUdXbkIw?=
 =?utf-8?B?bC84eU82M05TVHdpTXc1c1FYNm55a1hFRkFXT0czaWRFekNnSjNGVDdTUDh1?=
 =?utf-8?B?TjVOME8wTTRja1VYVGl2eU9kVEJIeTBVeUpyRndJaEdhUFhmTFV6YmROZzlo?=
 =?utf-8?B?Z1UzOUd0LzNVeXArT2NKZTV0VXJKc3VkZGsvQ1dGbitSTzk5dUcyUjk2azRN?=
 =?utf-8?B?aG5jOFhLb2EzK2o0d1R4WWpCMEtkdUk4NXQ0dzQ3aGMwMmhXMk1yTEU1MTBu?=
 =?utf-8?B?ZE85NEl4bi9tam1tcU9rQ0tPWERQZ0NRTVNFcVhxNVpQTEN4K3lraVJIUW1z?=
 =?utf-8?B?YjE1c2t5cENJNlA2eVpXZTRMVjVYN1VmZzc2SCthNlVlVnM1ajlFTzdQWG8v?=
 =?utf-8?B?M004RGp2OS9zQ2RZMUpSbTVZbUpjQkZsMXVrYWZtZlMxdGlHUzd3NFVBdHpS?=
 =?utf-8?B?cVE9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	nABqL0SS9SdnegQ4nc0/qLyV4FU59chnxtmJDZTN6Utlftv4NdW2YDXQNxUpKKLwuLig/kMgPLdyoOvowSe5CgoqwVCBtpowTFmMVWGT3d0ZiyqoCjXrhVvN0Oos6gRcPF0XnqZ1BSkbsZ8fnE4xloj5QOoQsyj7Ofu7ymx/1O2LuU2GZ1dIrT4Ab5jAHncDcLe72wj7CZv86tC7xyEc195RQECwA6K9dsUsaKepfcQ4T2Vg1AWGyy9GQK8GVk7Bnn73WXgk2WwKvtPa1gy0RPpJLKmFLQa3DXY7RbgNTIZ9H+NjW9CyGijhziFTHm9gntALGmAgNgVxuoin5RHf2xM40246WGnhUY2WmezFWKjI9Rs9Um8MXUvnE/p29GM17SMP1fRf2Ohqpn9BUUpXn4Dd9xYmIHCTxVzFQg4QFXsF+OJf8nBLQzksP6gFWVJLrLcIfkUPPE2zBvrqRRIYQHbqWOJ52eK79feRdooN9eSB72MPcN+zwTnphcMN0/4OYgC+xfVkxTfWoB3H/VUFAWtmaITgDQikYefk6NH3qQkVehqPklRhivWLJJQHKEcQLsuUx7K2LlnxUBFa4wyPqr4qh8KvgWiVB6awQy0LZajuj3l8dHmzz9NrsXoHqNHg5NH7rifjR+bEZWLaZHEIie8iI54pz2GQaewsidWm6zEa+23sUqM3v1KjFeVusQxWinf+Q3UiQxELa4LFGE73/WtD1fBEurKqJOi3q9wNH0NQS5uNA4hlDwJT8RuxAjGuNJNs3OIHrm1uQu7rdtH+5Wl2H90E5SUgfQFDfvqNVSuh7OfoNnOBXMHyh5BD9Qd64/4Yl8hhtQYHIrzwwgVHcgE1K1JzCeUlqWXlfI12nE6twqK0T9mXEJPo9jBJz8fMDzH/a+DKGGn3cGDd8q1teBcL2dVd6gvqZv2eOOSVP5A=
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 6c9cd071-507e-42b9-1de1-08dbc4d9e708
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Oct 2023 13:00:37.2796
 (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: k/TfcCFPgMAzzBDbwsvfSaANqRl2i6pxN7gf+tdqM4tNIY3V+rwddAjlLG67Jm34m1pqaOpBSMTFdN6OU2gZjA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB4953

On Wed, Oct 04, 2023 at 12:01:21PM +0100, Julien Grall wrote:
> Hi Roger,
> 
> On 04/10/2023 09:20, Roger Pau Monné wrote:
> > On Tue, Oct 03, 2023 at 04:25:58PM -0400, Tamas K Lengyel wrote:
> > > On Tue, Oct 3, 2023 at 11:07 AM Julien Grall <julien@xen.org> wrote:
> > > > 
> > > > Hi Roger,
> > > > 
> > > > On 03/10/2023 15:29, Roger Pau Monné wrote:
> > > > > On Tue, Oct 03, 2023 at 09:53:11AM -0400, Tamas K Lengyel wrote:
> > > > 
> > > > Tamas, somehow your e-mails don't show up in my inbox (even if I am
> > > > CCed) or even on lore.kernel.org/xen-devel. It is not even in my SPAM
> > > > folder.
> > > 
> > > Thanks, I've switched mailservers, hopefully that resolves the issue.
> 
> It did. Thanks!
> 
> > > 
> > > > 
> > > > > > On Mon, Oct 2, 2023 at 11:13 AM Roger Pau Monne <roger.pau@citrix.com> wrote:
> > > > > > > 
> > > > > > > From: Jan Beulich <jbeulich@suse.com>
> > > > > > > 
> > > > > > > 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>
> > > > > > > Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
> > > > > > > ---
> > > > > > > Changes since v4:
> > > > > > >    - Rely on map_guest_area() to populate the child p2m if necessary.
> > > > > > > ---
> > > > > > >    xen/arch/x86/mm/mem_sharing.c | 31 +++++++++++++++++++++++++++++++
> > > > > > >    xen/common/domain.c           |  7 +++++++
> > > > > > >    2 files changed, 38 insertions(+)
> > > > > > > 
> > > > > > > diff --git a/xen/arch/x86/mm/mem_sharing.c b/xen/arch/x86/mm/mem_sharing.c
> > > > > > > index 5f8f1fb4d871..99cf001fd70f 100644
> > > > > > > --- a/xen/arch/x86/mm/mem_sharing.c
> > > > > > > +++ b/xen/arch/x86/mm/mem_sharing.c
> > > > > > > @@ -1641,6 +1641,24 @@ static void copy_vcpu_nonreg_state(struct vcpu *d_vcpu, struct vcpu *cd_vcpu)
> > > > > > >        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)
> > > > > > > +{
> > > > > > > +    unsigned int offset;
> > > > > > > +
> > > > > > > +    /* Check if no area to map, or already mapped. */
> > > > > > > +    if ( !d_area->pg || cd_area->pg )
> > > > > > > +        return 0;
> > > > > > > +
> > > > > > > +    offset = PAGE_OFFSET(d_area->map);
> > > > > > > +    return map_guest_area(cd_vcpu, gfn_to_gaddr(
> > > > > > > +                                       mfn_to_gfn(d, page_to_mfn(d_area->pg))) +
> > > > > > > +                                   offset,
> > > > > > > +                          PAGE_SIZE - offset, cd_area, NULL);
> > > > > > > +}
> > > > > > > +
> > > > > > >    static int copy_vpmu(struct vcpu *d_vcpu, struct vcpu *cd_vcpu)
> > > > > > >    {
> > > > > > >        struct vpmu_struct *d_vpmu = vcpu_vpmu(d_vcpu);
> > > > > > > @@ -1709,6 +1727,16 @@ static int copy_vcpu_settings(struct domain *cd, const struct domain *d)
> > > > > > >                    return ret;
> > > > > > >            }
> > > > > > > 
> > > > > > > +        /* 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;
> > > > > > > @@ -1950,7 +1978,10 @@ int mem_sharing_fork_reset(struct domain *d, bool reset_state,
> > > > > > > 
> > > > > > >     state:
> > > > > > >        if ( reset_state )
> > > > > > > +    {
> > > > > > >            rc = copy_settings(d, pd);
> > > > > > > +        /* TBD: What to do here with -ERESTART? */
> > > > > > 
> > > > > > There is no situation where we get an -ERESTART here currently. Is
> > > > > > map_guest_area expected to run into situations where it fails with
> > > > > > that rc?
> > > > > 
> > > > > Yes, there's a spin_trylock() call that will result in
> > > > > map_guest_area() returning -ERESTART.
> > > > > 
> > > > > > If yes we might need a lock in place so we can block until it
> > > > > > can succeed.
> > > > > 
> > > > > I'm not sure whether returning -ERESTART can actually happen in
> > > > > map_guest_area() for the fork case: the child domain is still paused
> > > > > at this point, so there can't be concurrent guest hypercalls that
> > > > > would also cause the domain hypercall_deadlock_mutex to be acquired.
> > > 
> > > Perhaps turning it into an ASSERT(rc != -ERESTART) is the way to go at
> > > this point. If we run into any cases where it trips we can reason it
> > > out.
> > 
> > In order to avoid possibly returning -ERESTART (which should never be
> > seen by hypercall callers) we might want to convert it to -EBUSY and
> > let the caller pick the pieces.
> 
> I realize this is a matter of taste. I think EAGAIN is a better conversion
> for ERESTART because we effectively want to caller to try again.

That's fine with me, but could we leave adding such translation to a
further patch?

I would rather modify Jans code as less as possible.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Wed Oct 04 13:03:51 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 04 Oct 2023 13:03:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612556.952505 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qo1XY-0003cU-20; Wed, 04 Oct 2023 13:03:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612556.952505; Wed, 04 Oct 2023 13: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 1qo1XX-0003cN-TE; Wed, 04 Oct 2023 13:03:47 +0000
Received: by outflank-mailman (input) for mailman id 612556;
 Wed, 04 Oct 2023 13:03: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 1qo1XX-0003ax-3H
 for xen-devel@lists.xenproject.org; Wed, 04 Oct 2023 13:03: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 1qo1XV-0002oA-BV; Wed, 04 Oct 2023 13:03:45 +0000
Received: from [15.248.2.150] (helo=[10.24.67.38])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qo1XV-00039M-4p; Wed, 04 Oct 2023 13:03: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=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=GezROckf41SmgRoYqLfbpSt1XOaYxpsGbTBuSaNieog=; b=1eNEuqZe6ZQFLYuu9jz9kUx4+u
	XRe81mp0Z5TA1oTvYFgtKDOwYXESbjraSmH3RyXe0Kx2+hQMqmOMYrHaXlUEZLqNro9mL3JuV5lLG
	bWKrxzMa76jlFVoO6aZOT3dSL7iztBMxA10ge0cSRaoIVp6tQgy7sFNhSIT/XsqA3Ufk=;
Message-ID: <b00500ae-76b1-441c-8154-bcdd897734dc@xen.org>
Date: Wed, 4 Oct 2023 14:03:43 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: Issue with shared information page on Xen/ARM 4.17
Content-Language: en-GB
To: =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>
Cc: Elliott Mitchell <ehem+xen@m5p.com>, xen-devel@lists.xenproject.org,
 Stefano Stabellini <sstabellini@kernel.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>
References: <ZRY7Ls3p6M6pakMq@mattapan.m5p.com>
 <ZRvQNKyYpLDVTs0i@MacBookPdeRoger> <ZRxpC7ukhiYvzz5m@mattapan.m5p.com>
 <ZR0erl_OSkNgIQjx@MacBookPdeRoger>
 <c0b67401-dfe5-475f-8640-b66ac32a80fb@xen.org>
 <ZR1gM19i6-vBaXh7@MacBookPdeRoger>
From: Julien Grall <julien@xen.org>
In-Reply-To: <ZR1gM19i6-vBaXh7@MacBookPdeRoger>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

Hi Roger,

On 04/10/2023 13:53, Roger Pau Monné wrote:
> On Wed, Oct 04, 2023 at 11:55:05AM +0100, Julien Grall wrote:
>> Hi Roger,
>>
>> On 04/10/2023 09:13, Roger Pau Monné wrote:
>>> On Tue, Oct 03, 2023 at 12:18:35PM -0700, Elliott Mitchell wrote:
>>>> On Tue, Oct 03, 2023 at 10:26:28AM +0200, Roger Pau Monné wrote:
>>>>> On Thu, Sep 28, 2023 at 07:49:18PM -0700, Elliott Mitchell wrote:
>>>>>> 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.
>>>>>
>>>>> This is due to 71320946d5edf AFAICT.
>>>>
>>>> Yes.  While the -EBUSY line may be the one triggering, I'm unsure why.
>>>> This seems a fairly reasonable change, so I had no intention of asking
>>>> for a revert (which likely would have been rejected).  There is also a
>>>> real possibility the -EBUSY comes from elsewhere.  Could also be
>>>> 71320946d5edf caused a bug elsewhere to be exposed.
>>>
>>> A good way to know would be to attempt to revert 71320946d5edf and see
>>> if that fixes your issue.
>>>
>>> Alternatively you can try (or similar):
>>>
>>> diff --git a/xen/arch/arm/mm.c b/xen/arch/arm/mm.c
>>> index 6ccffeaea57d..105ef3faecfd 100644
>>> --- a/xen/arch/arm/mm.c
>>> +++ b/xen/arch/arm/mm.c
>>> @@ -1424,6 +1424,8 @@ int xenmem_add_to_physmap_one(
>>>                    page_set_xenheap_gfn(mfn_to_page(mfn), gfn);
>>>            }
>>>            else
>>> +        {
>>> +            printk("%u already mapped\n", space);
>>>                /*
>>>                 * Mandate the caller to first unmap the page before mapping it
>>>                 * again. This is to prevent Xen creating an unwanted hole in
>>> @@ -1432,6 +1434,7 @@ int xenmem_add_to_physmap_one(
>>>                 * to unmap it afterwards.
>>>                 */
>>>                rc = -EBUSY;
>>> +        }
>>>            p2m_write_unlock(p2m);
>>>        }
>>>
>>>>>> 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?
>>>>>
>>>>> I think the issue is that you are mapping the shared info page over a
>>>>> guest RAM page, and in order to do that you would fist need to create
>>>>> a hole and then map the shared info page.  IOW: the issue is not with
>>>>> edk2 not having unmapped the page, but with FreeBSD trying to map the
>>>>> shared_info over a RAM page instead of a hole in the p2m.  x86
>>>>> behavior is different here, and does allow mapping the shared_info
>>>>> page over a RAM gfn (by first removing the backing RAM page on the
>>>>> gfn).
>>>>
>>>> An interesting thought.  I thought I'd tried this, but since I didn't see
>>>> such in my experiments list.  What I had tried was removing all the pages
>>>> in the suggested mapping range.  Yet this failed.
>>>
>>> Yeah, I went too fast and didn't read the code correctly, it is not
>>> checking that the provided gfn is already populated, but whether the
>>> mfn intended to be mapped is already mapped at a different location.
>>>
>>>> Since this seemed reasonable, I've now tried and found it fails.  The
>>>> XENMEM_remove_from_physmap call returns 0.
>>>
>>> XENMEM_remove_from_physmap returning 0 is fine, but it seems to me
>>> like edk2 hasn't unmapped the shared_info page.  The OS has no idea
>>> at which position the shared_info page is currently mapped, and hence
>>> can't do anything to attempt to unmap it in order to cover up for
>>> buggy firmware.
>>>
>>> edk2 should be the entity to issue the XENMEM_remove_from_physmap
>>> against the gfn where it has the shared_info page mapped.  Likely
>>> needs to be done as part of ExitBootServices() method.
>>>
>>> FWIW, 71320946d5edf is an ABI change, and as desirable as such
>>> behavior might be, a new hypercall should have introduced that had the
>>> behavior that the change intended to retrofit into
>>> XENMEM_add_to_physmap.
>> I can see how you think this is an ABI change but the previous behavior was
>> incorrect. Before this patch, on Arm, we would allow the shared page to be
>> mapped twice. As we don't know where the firmware had mapped it this could
>> result to random corruption.
>>
>> Now, we could surely decide to remove the page as x86 did. But this could
>> leave a hole in the RAM. As the OS would not know where the hole is, this
>> could lead to page fault randomly during runtime.
> 
> I would say it's the job of the firmware to notify the OS where the
> hole is, by modifying the memory map handled to the OS.  Or else
> mapping the shared_info page in an unpopulated p2m hole.

I agree but I am not convinced that they are all doing it. At least 
U-boot didn't do it before we fixed it.

> 
> When using UEFI there's RAM that will always be in-use by the
> firmware, as runtime services cannot be shut down, and hence the
> firmware must already have a way to remove/reserve such region(s) on
> the memory map.

Can either you or Elliott confirm if EDK2 reserve the region?

> 
>> Neither of the two behaviors help the users. In fact, I think they only make
>> the experience worse because you don't know when the issue will happen.
>>
>> AFAICT, there is no way for an HVM guestto know which GFN was inuse. So in
>> all the cases, I can't think of a way for the OS to workaround properly
>> buggy firmware. Therefore, returning -EBUSY is the safest we can do for our
>> users and I don't view it as a ABI change (someone rely on the previous
>> behavior is bound to failure).
> 
> I fully agree the current behavior might not be the best one, but I do
> consider this part of the ABI, specially as booting guests using edk2
> has now stopped working after this change.

Right. If we remove the check, you may be able to boot a guest. But are 
we sure that such guest would run safely?

Also, it is not really argument, but this is not the only broken part in 
EDK2 for Xen Arm guests. The other one I know is EDS makes assumption 
how some Device-Tree nodes and this will break on newer Xen.

So overall, it feels to me that EDK2 is not entirely ready to be used in 
production for Xen on Arm guests.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Wed Oct 04 13:06:29 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 04 Oct 2023 13:06:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612561.952513 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qo1a4-0004tr-CE; Wed, 04 Oct 2023 13:06:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612561.952513; Wed, 04 Oct 2023 13:06: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 1qo1a4-0004tk-9K; Wed, 04 Oct 2023 13:06:24 +0000
Received: by outflank-mailman (input) for mailman id 612561;
 Wed, 04 Oct 2023 13:06: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 1qo1a3-0004te-4P
 for xen-devel@lists.xenproject.org; Wed, 04 Oct 2023 13:06: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 1qo1a2-00031g-7h; Wed, 04 Oct 2023 13:06:22 +0000
Received: from [15.248.2.150] (helo=[10.24.67.38])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qo1a1-0003G4-Vb; Wed, 04 Oct 2023 13:06: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=N8CRjNyPB7/AqWq5Ihubs/5Lrqto6esbsB/d8es/vWQ=; b=JU5QsBE0ITqWYajmS+R5u8Qc9y
	9Jmm+9VUEwSkltnFTdi3QxElW1aE6mByuNR6FrbRbO90hAB/RS7vi68dBLuXgfJ04nHnWtvXGiZMM
	L2WkAaKJl/kiHfBA+ichfGzE/cHBWZMGIpLCnky8xYHWLWPMDnMC31S/seaQyOs/f3Fk=;
Message-ID: <081ae245-9d47-4cab-ad64-54b33566429c@xen.org>
Date: Wed, 4 Oct 2023 14:06:19 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v5 06/10] x86/mem-sharing: copy GADDR based shared guest
 areas
Content-Language: en-GB
To: =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>
Cc: Tamas K Lengyel <tamas@tklengyel.com>, xen-devel@lists.xenproject.org,
 henry.wang@arm.com, Jan Beulich <jbeulich@suse.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>
References: <20231002151127.71020-1-roger.pau@citrix.com>
 <20231002151127.71020-7-roger.pau@citrix.com>
 <CABfawhnHg3KrGP-hp4_Q8GvSf2nVSVSyK24HKqAGuWp_AtD8-A@mail.gmail.com>
 <ZRwlXls8xRyc8AX4@MacBookPdeRoger>
 <8ee8d70b-5b69-4834-b7e3-572e96effa5c@xen.org>
 <CABfawhn0vH6rS8-SJQJVZtto2HA61By1bCG3w9bJMJR3x+rXsg@mail.gmail.com>
 <ZR0gX6wyXLD_6nY6@MacBookPdeRoger>
 <30582a7c-f505-462d-9dc4-22efb5a0860c@xen.org>
 <ZR1h7y2aazvEhtW_@MacBookPdeRoger>
From: Julien Grall <julien@xen.org>
In-Reply-To: <ZR1h7y2aazvEhtW_@MacBookPdeRoger>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit



On 04/10/2023 14:00, Roger Pau Monné wrote:
> On Wed, Oct 04, 2023 at 12:01:21PM +0100, Julien Grall wrote:
>> Hi Roger,
>>
>> On 04/10/2023 09:20, Roger Pau Monné wrote:
>>> On Tue, Oct 03, 2023 at 04:25:58PM -0400, Tamas K Lengyel wrote:
>>>> On Tue, Oct 3, 2023 at 11:07 AM Julien Grall <julien@xen.org> wrote:
>>>>>
>>>>> Hi Roger,
>>>>>
>>>>> On 03/10/2023 15:29, Roger Pau Monné wrote:
>>>>>> On Tue, Oct 03, 2023 at 09:53:11AM -0400, Tamas K Lengyel wrote:
>>>>>
>>>>> Tamas, somehow your e-mails don't show up in my inbox (even if I am
>>>>> CCed) or even on lore.kernel.org/xen-devel. It is not even in my SPAM
>>>>> folder.
>>>>
>>>> Thanks, I've switched mailservers, hopefully that resolves the issue.
>>
>> It did. Thanks!
>>
>>>>
>>>>>
>>>>>>> On Mon, Oct 2, 2023 at 11:13 AM Roger Pau Monne <roger.pau@citrix.com> wrote:
>>>>>>>>
>>>>>>>> From: Jan Beulich <jbeulich@suse.com>
>>>>>>>>
>>>>>>>> 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>
>>>>>>>> Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
>>>>>>>> ---
>>>>>>>> Changes since v4:
>>>>>>>>     - Rely on map_guest_area() to populate the child p2m if necessary.
>>>>>>>> ---
>>>>>>>>     xen/arch/x86/mm/mem_sharing.c | 31 +++++++++++++++++++++++++++++++
>>>>>>>>     xen/common/domain.c           |  7 +++++++
>>>>>>>>     2 files changed, 38 insertions(+)
>>>>>>>>
>>>>>>>> diff --git a/xen/arch/x86/mm/mem_sharing.c b/xen/arch/x86/mm/mem_sharing.c
>>>>>>>> index 5f8f1fb4d871..99cf001fd70f 100644
>>>>>>>> --- a/xen/arch/x86/mm/mem_sharing.c
>>>>>>>> +++ b/xen/arch/x86/mm/mem_sharing.c
>>>>>>>> @@ -1641,6 +1641,24 @@ static void copy_vcpu_nonreg_state(struct vcpu *d_vcpu, struct vcpu *cd_vcpu)
>>>>>>>>         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)
>>>>>>>> +{
>>>>>>>> +    unsigned int offset;
>>>>>>>> +
>>>>>>>> +    /* Check if no area to map, or already mapped. */
>>>>>>>> +    if ( !d_area->pg || cd_area->pg )
>>>>>>>> +        return 0;
>>>>>>>> +
>>>>>>>> +    offset = PAGE_OFFSET(d_area->map);
>>>>>>>> +    return map_guest_area(cd_vcpu, gfn_to_gaddr(
>>>>>>>> +                                       mfn_to_gfn(d, page_to_mfn(d_area->pg))) +
>>>>>>>> +                                   offset,
>>>>>>>> +                          PAGE_SIZE - offset, cd_area, NULL);
>>>>>>>> +}
>>>>>>>> +
>>>>>>>>     static int copy_vpmu(struct vcpu *d_vcpu, struct vcpu *cd_vcpu)
>>>>>>>>     {
>>>>>>>>         struct vpmu_struct *d_vpmu = vcpu_vpmu(d_vcpu);
>>>>>>>> @@ -1709,6 +1727,16 @@ static int copy_vcpu_settings(struct domain *cd, const struct domain *d)
>>>>>>>>                     return ret;
>>>>>>>>             }
>>>>>>>>
>>>>>>>> +        /* 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;
>>>>>>>> @@ -1950,7 +1978,10 @@ int mem_sharing_fork_reset(struct domain *d, bool reset_state,
>>>>>>>>
>>>>>>>>      state:
>>>>>>>>         if ( reset_state )
>>>>>>>> +    {
>>>>>>>>             rc = copy_settings(d, pd);
>>>>>>>> +        /* TBD: What to do here with -ERESTART? */
>>>>>>>
>>>>>>> There is no situation where we get an -ERESTART here currently. Is
>>>>>>> map_guest_area expected to run into situations where it fails with
>>>>>>> that rc?
>>>>>>
>>>>>> Yes, there's a spin_trylock() call that will result in
>>>>>> map_guest_area() returning -ERESTART.
>>>>>>
>>>>>>> If yes we might need a lock in place so we can block until it
>>>>>>> can succeed.
>>>>>>
>>>>>> I'm not sure whether returning -ERESTART can actually happen in
>>>>>> map_guest_area() for the fork case: the child domain is still paused
>>>>>> at this point, so there can't be concurrent guest hypercalls that
>>>>>> would also cause the domain hypercall_deadlock_mutex to be acquired.
>>>>
>>>> Perhaps turning it into an ASSERT(rc != -ERESTART) is the way to go at
>>>> this point. If we run into any cases where it trips we can reason it
>>>> out.
>>>
>>> In order to avoid possibly returning -ERESTART (which should never be
>>> seen by hypercall callers) we might want to convert it to -EBUSY and
>>> let the caller pick the pieces.
>>
>> I realize this is a matter of taste. I think EAGAIN is a better conversion
>> for ERESTART because we effectively want to caller to try again.
> 
> That's fine with me, but could we leave adding such translation to a
> further patch?

Wouldn't this mean that -ERESTART could be returned to the caller? If 
yes, then I think this should be handled here. Otherwise, we will be 
exposing a value that is not supposed to be exposed.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Wed Oct 04 13:23:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 04 Oct 2023 13:23:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612567.952523 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qo1qD-00008O-NC; Wed, 04 Oct 2023 13:23:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612567.952523; Wed, 04 Oct 2023 13:23: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 1qo1qD-00008H-KX; Wed, 04 Oct 2023 13:23:05 +0000
Received: by outflank-mailman (input) for mailman id 612567;
 Wed, 04 Oct 2023 13:23: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=k75u=FS=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qo1qC-00008B-E7
 for xen-devel@lists.xenproject.org; Wed, 04 Oct 2023 13:23:04 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 257a7c64-62b9-11ee-98d3-6d05b1d4d9a1;
 Wed, 04 Oct 2023 15:23:03 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id DAB024EE0737;
 Wed,  4 Oct 2023 15:23: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: 257a7c64-62b9-11ee-98d3-6d05b1d4d9a1
MIME-Version: 1.0
Date: Wed, 04 Oct 2023 15:23:02 +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, 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/types: address Rule 10.1 for macro BITS_TO_LONGS
In-Reply-To: <b3aaaf5265c7e7ce6228ba2146f57aaae09f55e6.1693899008.git.nicola.vetrini@bugseng.com>
References: <b3aaaf5265c7e7ce6228ba2146f57aaae09f55e6.1693899008.git.nicola.vetrini@bugseng.com>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <6495ba58bda01eae1f4baa46096424eb@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: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.
> 
> 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)]

Revisiting this thread after a while: I did some digging and changing 
the essential type of
BITS_TO_LONGS to unsigned

#define BYTES_PER_LONG (_AC(1, U) << LONG_BYTEORDER)
#define BITS_PER_LONG (BYTES_PER_LONG << 3)
[...]
#define BITS_TO_LONGS(bits) \
     (((bits) + BITS_PER_LONG - 1U) / BITS_PER_LONG)
#define DECLARE_BITMAP(name,bits) \
     unsigned long name[BITS_TO_LONGS(bits)]

leads to a whole lot of issues due to the extensive usage of these 
macros
(BITS_TO_LONGS, BITS_PER_LONG) in comparisons with e.g. the macros 
min/max.
The comments made in this series to the patch do have value (e.g. 
BITS_TO_LONGS should be
expected to have only a positive argument), but ultimately the changes 
required in order to
do this and respect all other constraints (either in the form of MISRA 
rules or gcc warnings)
is far too broad to be tackled by a single patch.

Notable examples of such consequences:

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

if x86's PADDR_BITS becomes unsigned, then other issues arise, such as:

xenheap_bits = min(flsl(mfn + 1) - 1 + PAGE_SHIFT, PADDR_BITS);

here the type of flsl is int, so either flsl should become unsigned too, 
or the second
argument should be suitably modified.

In the end, the modification that solves a lot of violations (due to 
this being inside an header, though it's a single place to be modified) 
is this:

DECLARE_BITMAP(features, (int)IOMMU_FEAT_count)

If, as it has been argued, BITS_TO_LONGS really needs to become 
unsigned, then a more general
rethinking of the types involved needs to happen.

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


From xen-devel-bounces@lists.xenproject.org Wed Oct 04 13:30:58 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 04 Oct 2023 13:30:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612574.952533 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qo1xk-0002oV-Dw; Wed, 04 Oct 2023 13:30:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612574.952533; Wed, 04 Oct 2023 13:30: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 1qo1xk-0002oO-BJ; Wed, 04 Oct 2023 13:30:52 +0000
Received: by outflank-mailman (input) for mailman id 612574;
 Wed, 04 Oct 2023 13:30: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 1qo1xj-0002oE-86; Wed, 04 Oct 2023 13:30: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 1qo1xj-0003RM-2K; Wed, 04 Oct 2023 13:30: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 1qo1xi-0002PN-Ke; Wed, 04 Oct 2023 13:30:50 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qo1xi-0007jR-KD; Wed, 04 Oct 2023 13: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=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=M4zE1RrgVK9OP3gVxsoakBT7v1n/o0rwiMuPYV24TcM=; b=w3IjGKXyV8uif30bMCu+0skha+
	O4Z88Fo6POGdirwJyfHOBTF+OEjCRngCr3Kir5HjfaguyltyGPNqXI436P8+0F63dMq4xhpB3GxLS
	Qxc08X1JzjBhtFpgWNzZ9pHxqOzoeETfrgINnEVNVuVFthbmswLQToDELog+uab7JPP8=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183261-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xtf test] 183261: all pass - PUSHED
X-Osstest-Versions-This:
    xtf=8ab636aee07918402d80da2ea605ce449b0fd657
X-Osstest-Versions-That:
    xtf=f91cd602586c28f76b04f20fe39c5f001d8d613a
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 04 Oct 2023 13:30:50 +0000

flight 183261 xtf real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183261/

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 xtf                  8ab636aee07918402d80da2ea605ce449b0fd657
baseline version:
 xtf                  f91cd602586c28f76b04f20fe39c5f001d8d613a

Last test of basis   183251  2023-10-03 13:14:07 Z    1 days
Testing same since   183261  2023-10-04 12:44:07 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>

jobs:
 build-amd64-xtf                                              pass    
 build-amd64                                                  pass    
 build-amd64-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    


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

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

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.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/xtf.git
   f91cd60..8ab636a  8ab636aee07918402d80da2ea605ce449b0fd657 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Wed Oct 04 13:39:44 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 04 Oct 2023 13:39:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612582.952544 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qo26D-0004eY-8h; Wed, 04 Oct 2023 13:39:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612582.952544; Wed, 04 Oct 2023 13:39: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 1qo26D-0004eR-63; Wed, 04 Oct 2023 13:39:37 +0000
Received: by outflank-mailman (input) for mailman id 612582;
 Wed, 04 Oct 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=O8y1=FS=citrix.com=prvs=634504905=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qo26B-0004eL-HT
 for xen-devel@lists.xenproject.org; Wed, 04 Oct 2023 13:39:35 +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 7136f039-62bb-11ee-9b0d-b553b5be7939;
 Wed, 04 Oct 2023 15:39:31 +0200 (CEST)
Received: from mail-mw2nam04lp2175.outbound.protection.outlook.com (HELO
 NAM04-MW2-obe.outbound.protection.outlook.com) ([104.47.73.175])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 04 Oct 2023 09:39:25 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by BY5PR03MB4982.namprd03.prod.outlook.com (2603:10b6:a03:1f1::12)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.31; Wed, 4 Oct
 2023 13:39:23 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::66ca:3a42:baeb:9ecf]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::66ca:3a42:baeb:9ecf%6]) with mapi id 15.20.6838.030; Wed, 4 Oct 2023
 13:39: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: 7136f039-62bb-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1696426771;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=Apm3UCvnhUV2PFaMvCP6ClhDtGz/jG6HYQmlSaGvk2g=;
  b=Prs2HQvi35CvR9RlEb5/L+0MMNhIKavrRF2e0OwcldUcdFmWaBGbGgr/
   X8n8/gsbLmWK/i0f4KhbMSLLAhjk9pmM/7TXPVEsa6h9MtFiJTi4jdr7W
   ICxoGS00/rF+QknsWnkC5ejYlmK0kQa1f7vCK4HJL/YEfpdu49UjpUbpT
   Y=;
X-CSE-ConnectionGUID: 8IkLGbLZRa63aSBlaPUFKg==
X-CSE-MsgGUID: xXet+z5aR+O31cmPJrpb4w==
X-IronPort-RemoteIP: 104.47.73.175
X-IronPort-MID: 123860890
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:vHe75Ky6NdsVPQOzmiZ6t+ehxyrEfRIJ4+MujC+fZmUNrF6WrkUDz
 GEcWmnUa/3fYDfzc98jYd/j/UJU6JOHm99rGQM5/iAxQypGp/SeCIXCJC8cHc8wwu7rFxs7s
 ppEOrEsCOhuExcwcz/0auCJQUFUjPzOHvykTrecZkidfCc8IA85kxVvhuUltYBhhNm9Emult
 Mj75sbSIzdJ4RYtWo4vw/zF8EgHUMja4mtC5QVmPawT5zcyqlFOZH4hDfDpR5fHatE88t6SH
 47r0Ly/92XFyBYhYvvNfmHTKxBirhb6ZGBiu1IOM0SQqkEqSh8ai87XAME0e0ZP4whlqvgqo
 Dl7WT5cfi9yVkHEsLx1vxC1iEiSN4UekFPMCSDXXcB+UyQq2pYjqhljJBheAGEWxgp4KTFv9
 tg3IhQ/VBnd3OuN6rayctRCpct2eaEHPKtH0p1h5RfwKK56BLX8GeDN79Ie2yosjMdTG/qYf
 9AedTdkcBXHZVtIJ0sTD5U92uyvgxETcRUB8A7T+fVxvDOVlVMsuFTuGIO9ltiiX8Jak1zev
 mvb12/4HgsbJJqUzj/tHneE37WUzX2jCNNKfFG+3u5ajUHQ1DEaMl4xDgKwpMGbkFa0B80Kf
 iT4/QJr98De7neDTMT5XhC+iG6JuFgbQdU4O+A65QTO2qfSywPEHi4PSTspQMwrsoo6SCIn0
 neNnsj1Hnp/vbuNU3Wf+7yI6zSoNkA9NnQebCUJSQ8E5djLo4wpiB/LCNF5H8adhNDvBSv5x
 TzMqSEknqgSluYCzaD99lfC6xqSoZzOQh8w9x/gdGuv5QNkZ6aof4Wtr1Pc6J5oK4KUTUKIu
 nQerNSP9+AFDZyLlyulTf0EGfei4PPtDdHHqVtmHp1k8iv3/XemJdxU+GsnexovNdsYczj0Z
 kOVoRlW+JJYIHqta+lwfp61DMMpi6PnELwJS8zpUzaHWbApHCfvwc2kTRf4M7zF+KT0rZwCB
 A==
IronPort-HdrOrdr: A9a23:IMYE4aG/QYqSmojbpLqE18eALOsnbusQ8zAXPhZKOH5om62j5r
 iTdZEgvyMc5wxhPE3I9erwXpVoIkmzyXcW2/h1AV7KZmCP01dASrsD0WLM+UyCJ8SUzJ876U
 4PSdkGNDQyNzRHZATBjTVQ3+xO/DBPysGVuds=
X-Talos-CUID: 9a23:TiTNoW9DvguvqCHxeliVvx41GeQKeFnv9n6OeEaDI2JgcIC7alDFrQ==
X-Talos-MUID: 9a23:ppNKdgbCpIsU+OBTpw/hmHJwac5SoIP1UUsIqbcco8PYKnkl
X-IronPort-AV: E=Sophos;i="6.03,200,1694750400"; 
   d="scan'208";a="123860890"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=dPmgXIRr77/GManq4M/+rEIAejA9MhcIHcJUHF/lTZrrFYvokigBN20HLm8Iv9shUT5E86Az0+nN0iweD8/2376RVqwGbdk3hONxioHpY4Nprm4cEHOd3j3KYpuX8NnomKrUF7JkORMs+vKqYjI7coGSENgIGn6yO9I/a3zm5IY6FxaY2F30znqy8Q/9UUmhMNOmDayg9UkhM0EUuoQGrTkzEta7UZIY6prx1LyXemetEfVv2nkB6o5OOjbVDGWQSdDnsvswYMH+G2JMQAICBvN9LBkO2rsMNS3egMBVVMJ3mNyAPJw+5iTaLFTsFwSxdUX3BiOEbLFJ6k08Y1yuWQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=0QiJSPwtPgu9Rc9sZEOFYFdzftKCqQS+Q+S3fvi+Wog=;
 b=GGBLQN26J+QjaWKcQ6pIM2eWoThRJKsU4LpZlih2BLVtt24df4wXb70+Ui5vRY8IikX71ZpVJVGRTUHSZHwTojEJeEeu4N7hnhGyWmVrmBlxhyUB6nr0bwsjXxIzsTanUQwZ50HqjQsxyN2oYlKX6XRTxcFspChJGBL4Qw0Ip91ogiSMXIgrMjbZLRE0WfhrkT0OyJ35+NByWmZIVi/e5YQzz+fcYDy3oW42/5TZyKwxFnB5Uk3eyFAlfZTKmH+eYvcXy+w9ls0DRQRQpWQ9lmhcJSEoDS9lptKYa+yZNiOwLzi/LWQ+lPBYhmWDyJHDugmTxtXvfeCa1sOTDyUinw==
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=0QiJSPwtPgu9Rc9sZEOFYFdzftKCqQS+Q+S3fvi+Wog=;
 b=PLiOP/z1CfJhndjpSLdwT3m++/N42Q9bdiiFaVChTX1sp5V65kiQlW93rjEeJRGYMhhDfGKMFs3CLDF28XcfzUeiR3euiqMTkQYLg5Upqhh41P4y5b9jYqFhMdHiZTaig1kf1oStc/5+YePYAasyRcQjncTnnzFcjkXdnGbTLiY=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Wed, 4 Oct 2023 15:39:16 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Julien Grall <julien@xen.org>
Cc: Elliott Mitchell <ehem+xen@m5p.com>, xen-devel@lists.xenproject.org,
	Stefano Stabellini <sstabellini@kernel.org>,
	Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>
Subject: Re: Issue with shared information page on Xen/ARM 4.17
Message-ID: <ZR1rBP_49Y2V8VF6@MacBookPdeRoger>
References: <ZRY7Ls3p6M6pakMq@mattapan.m5p.com>
 <ZRvQNKyYpLDVTs0i@MacBookPdeRoger>
 <ZRxpC7ukhiYvzz5m@mattapan.m5p.com>
 <ZR0erl_OSkNgIQjx@MacBookPdeRoger>
 <c0b67401-dfe5-475f-8640-b66ac32a80fb@xen.org>
 <ZR1gM19i6-vBaXh7@MacBookPdeRoger>
 <b00500ae-76b1-441c-8154-bcdd897734dc@xen.org>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <b00500ae-76b1-441c-8154-bcdd897734dc@xen.org>
X-ClientProxiedBy: LO2P265CA0309.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:a5::33) To SJ0PR03MB6423.namprd03.prod.outlook.com
 (2603:10b6:a03:38d::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|BY5PR03MB4982:EE_
X-MS-Office365-Filtering-Correlation-Id: 72d99495-d27d-4e28-ae3a-08dbc4df50bc
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	sKYhHaloX/ncvS4BAuOzvcDbyNMtQZ07M3O5SGRatRurNpoKttF9HMw6Vo+T8w9NoQ4A1shE0g6w83UzEt8jsPccZ4FqzQ53nWAgmkDeKyIzWZC96DkyEenWa+4cocYfTSfuaTFF8Y5RYsOJu7ilosSPBagxIgkkGdDTc+v6qKY45GHkl7Rr+C822YjPgDri0FMLybgC1Rc4St+V8PXEXiFYArW3/tNWNLCMMYHRzKFvR1Vy5f/kY8nC3sMoCc8A0OUOiLFjfN7LgzBijmtX8eD5zepKVnWZrXOv9k3eIjqGIAKImibnmfCXFK8pNS1hockgMw9ekeMVZbwcR3r8uYNcGEsly9cigrAlF1R6Z/5apuPiEwhMStxD0j4zqPag8s9pMhnaDNwIs2VgiqC7ucR5f1S92UDdgh963YNoBdfa57MdgHBlaJ2IrvJFNKeb3nmGAkiAWEhH4/+9qyqlcqxahy6N0LGb4kknGJPADkVJbqcA06krkYy/b3jh7znkhVqNK/4s+klYJUIu8OaOlrb2bWlF4fCeE1R4+8ZMV17z//I+DtmcBzy5ijDlah9G
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)(396003)(366004)(346002)(230922051799003)(186009)(1800799009)(451199024)(64100799003)(26005)(6512007)(9686003)(83380400001)(82960400001)(86362001)(33716001)(85182001)(38100700002)(66556008)(66476007)(478600001)(316002)(6916009)(54906003)(66946007)(5660300002)(6486002)(41300700001)(8936002)(4326008)(6506007)(6666004)(8676002)(53546011)(2906002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?SzBNMk50Z1Z5WFpqNllSOXNoV0VkSEZWR1RSV0h5WStNU2RWNUl3T3M1M0Fl?=
 =?utf-8?B?NXBVM1kvbGRkaDdnQ1k2Y0FPU25MQWphQysxNTY5R0hIajhIaUZKSmVZTi9T?=
 =?utf-8?B?eWdQaHhBVkFYSzVEWU1MSldBK3pHN3lHYldZK3NIMjd3SkZzeEFrTnFRRlpt?=
 =?utf-8?B?VjRjU1FDU0ttSWh5ditzcWxKbU0xYWE1cVNZcER4M01UNmY1NnlrN1cxZ21M?=
 =?utf-8?B?MlI4QStvNk5WMkd6NHJUdkxuTHYrM21jaER5UmoyOUE2dllDN3JRRS9lTnNF?=
 =?utf-8?B?b0Qyejl2ODJ2a1VDcSs3bm1YcWI0N0RXSlNoeHNVSHBVOWhGQTduWXpVSzBt?=
 =?utf-8?B?cVFXTWViT2JYbXNkekx1NnhMeFp6eUE4Q0I5S25WeTgzYlBuN0xTVndTQ2lT?=
 =?utf-8?B?WnNhTnd5L2F5d0tTTHVYaUlUWXIzMmtQS3k5VnZvRktzdmQ1dzFrWklxbDBW?=
 =?utf-8?B?RVJLWnNHOUxsLzEzdXdOTWlCSEN1VFdRTGZJNTZReVJnWGROVURCNFdlbXBO?=
 =?utf-8?B?RnE3T1dxT3ViNTlsMjBSWnJ0VnJTYTMyWVZDcGdNWS9QUjN6dUdSV1NVeTJS?=
 =?utf-8?B?K0JDVUdvWkdJT25BR1ZBaXJmQnVZeTJnSFNja3VueW1Rb3RRNmsyQ0pKYU90?=
 =?utf-8?B?dTY2Y1hubzQ4Z25tNnAxWm1rdXFMWDljbHY0V1ZVUzF5c2M4YnBDS2VuSS9B?=
 =?utf-8?B?b0Ruc1R2bGl6dW1sMXVlSk8vZE16VXZaL0VSLzVnU25QTTVpTktDYnprMDdJ?=
 =?utf-8?B?UlZyV3krRE84RVN0YWU4anI4Z1VFcGhqTDRvRWJLcURKWXdLSnE5M3RyOXpu?=
 =?utf-8?B?ZFZiMG8xK1BDazFSUEttUFl1Wjk5TERTaS9KVm50bUd3aC9MYnVDNzVHdnJN?=
 =?utf-8?B?NlF2bVVoK0o5NjEyTUovYlMzY3E3cjRzc0NoOWhNZDFrUGgwYnV1RndyMFJt?=
 =?utf-8?B?L1QxYXg2U1VXVzBXaS92d2VYa1VFY2RjekNoQzBldUttQ3lLMHBDY0dwdUZM?=
 =?utf-8?B?LzB4cTR6dVREQzlQSENZcG9ZQmowQnpBVTkxM1p3T0o1T215YmtYeE4zdHVK?=
 =?utf-8?B?Wjd0dzZXalcrbnI4bEhodjF0eHUxa2ZQRGNvL1d1OXMzMCt5NFluWnJYbm5p?=
 =?utf-8?B?Z0pBVW1NVlhSdCs4aWh0b25QbFBySEM5Sjl2eTBOSU53NEZlU3pTZUtWMk9V?=
 =?utf-8?B?c3F6OWxjR3loYmRIb2ZFamJYMURLOXpvd2hkZWpJenJoOGhUak8zOVdUSFVx?=
 =?utf-8?B?YjBxMGtTai9OSjh4d0luSCs0c0pKNTNocnRKb0xGU25Ga3V3UjFWNHFtTUgy?=
 =?utf-8?B?WUNMV1NQWnEyZ0hyTDdoNzFuaHRUWmVCbHk0Nm9NOFRkY3dTbURVYU5nc25h?=
 =?utf-8?B?QUxCOGdFdE5wOHZWRTA3Z29BSDMrbC9WdXJuaTZqTFR0S3NweENmaVRpYUFs?=
 =?utf-8?B?bDg5TEs2ZDVXbGt1QWYzcTNEeGxsNVVaL3ZMS09aQmhwQmJtTmIrQnRzeXNP?=
 =?utf-8?B?ZjRjbDUyckRtNGd0UzBuZVM2QjhoN3QvZUdDMk04KzlERzhRUU1nSW0vaGg3?=
 =?utf-8?B?b2xpTWgxNXZnYUxHWDg2NlBRYTQwTUhXZzFZazJOUklwMmVyQndCRmZqN1la?=
 =?utf-8?B?amE0Q0d1N3VJQ1VpQ21acS95MHMwVm9pQ2c2VUJFL0xOZXV2WkhGNXRFMEpv?=
 =?utf-8?B?Nlh2a0tiSktZN3BWSkJQbmx2VVlHT094SVZFRTY4WkplTFZ2ZXNBeVVzMDUw?=
 =?utf-8?B?b09jSW8yZ1ZVNVJERlFML3ZOblRkaytXL0ZQYjBaUERKa1p2TmxzUWZtRk04?=
 =?utf-8?B?d3diK2d2VFNsTjVkako3WHRCWWQ5WHZsTzNvcWs3eTcxbE92K3EyN2F3dVgz?=
 =?utf-8?B?S29ub2YwbWNJdEJ0SXZibGZYSExWM0x5b3hjaVpHVUJkQkNldlExRmptc0Vm?=
 =?utf-8?B?Nzc4TVFmaVFQMVhyaXBxMGk4b1lkNVZnTFV5ZXpxa0srMUhrQTRQa0hMRjdu?=
 =?utf-8?B?SmVDR1lYS3phcERqRDU1bFVpTUtGaERWZThyaHhTVUgyaXNPSGxkb2FjN0J0?=
 =?utf-8?B?OUlrVHhJbmFLREc4dG9wajZmOEpsbk9PUGVUeEdDVHlaZXloQ2c3bDhFL2Jh?=
 =?utf-8?B?UG9SaHQ2OFVwZC9lME5wdStBQVFFSHduSGk1ZGROME5RR3huUU5TazMrb1c4?=
 =?utf-8?B?ZFE9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	WIea8fvTsDFp8euzNhhmdm5WfbGm0BQhxO+3s/Cgv9jhv52mth90snta/LvXHmhAUYEllpWTiRll/cDmkt4ZOSso4dpdLJgCyynuonhXqCYQyvkb4IX3SyXKmSUW546A9brLn0pluAHSbqjlpbGt3yLYh/fjkDssZv9EZCVFzyA3rL7198fWkE53b2ew+ek9nr2LxosAnqTJXrIpjAp2yqflPTzYysms6EkaxCxuy+A3/29K7ioin5sMAEJJZFgLwaSccM9dT7sqsl27ASC9FdSzqyyPTMMNRNUCc1uTQoAVBOJ4Dl8v0wbF/LiDac+JMTUkQWqQSJNYAHKxU7rjGR4JidGj0qpDVmXoGVYOudnpbEKU9ZmiKUnj/ktW0enrN9h0nh2sh+Cu6qT160camzWVEIPZEQe9C5V6dTFNuDeFdz/g4c0y5sEb45gQbuhHaiejICCfirYYPii1WJpbrhcmtIPoVAw4OuQJ3C5rmzKTEL0uVbccH1jKu35qQtbn07R+plgWhKygWsUUcqNJA84mJnFt/1QWUGd6sTp0ukCQSI+bChjKRU0YM1zNejxTTGxGl7Mu+EcV9cEMnzIlQW9pETTx5IobGqokcTRmBkCDJfUX8cmMymYg8E20ctG5OOmc8RBmCq119eyIEr6+IoyyE4WTVNRKkmu+HPsPgDEXZUJ2YrrSHmfoYuBquqCWXT0YQ5dcGYiSjl2Y609+KuflwBD+8vRms6USZm2+phcF1VdVjxKvHXFpejlb+/oW1TmshtpGMpbnZlIIh+hdcbGBA+tlXr38T1WjmQb9E2OJXed/79dtsL4CNbqCjlLZiX3mO0hPoz7lznino5Jkq1+YImOdTRsAW+/keDEcyqgAV2v5QTPl6AYEx/zdBY0HNQFDP1J1zQni+XYXIbE1Gg==
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 72d99495-d27d-4e28-ae3a-08dbc4df50bc
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Oct 2023 13:39:21.6886
 (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: JZi83nPR7qZoyYhQsXS/J+7EMtIvO+Vjiaa7OgeHfrf8ns37hW/3HlbLRz1GS6KsZTiFqRxbUYlFujnRp9mwJw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY5PR03MB4982

On Wed, Oct 04, 2023 at 02:03:43PM +0100, Julien Grall wrote:
> Hi Roger,
> 
> On 04/10/2023 13:53, Roger Pau Monné wrote:
> > On Wed, Oct 04, 2023 at 11:55:05AM +0100, Julien Grall wrote:
> > > Hi Roger,
> > > 
> > > On 04/10/2023 09:13, Roger Pau Monné wrote:
> > > > On Tue, Oct 03, 2023 at 12:18:35PM -0700, Elliott Mitchell wrote:
> > > > > On Tue, Oct 03, 2023 at 10:26:28AM +0200, Roger Pau Monné wrote:
> > > > > > On Thu, Sep 28, 2023 at 07:49:18PM -0700, Elliott Mitchell wrote:
> > > > > > > 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.
> > > > > > 
> > > > > > This is due to 71320946d5edf AFAICT.
> > > > > 
> > > > > Yes.  While the -EBUSY line may be the one triggering, I'm unsure why.
> > > > > This seems a fairly reasonable change, so I had no intention of asking
> > > > > for a revert (which likely would have been rejected).  There is also a
> > > > > real possibility the -EBUSY comes from elsewhere.  Could also be
> > > > > 71320946d5edf caused a bug elsewhere to be exposed.
> > > > 
> > > > A good way to know would be to attempt to revert 71320946d5edf and see
> > > > if that fixes your issue.
> > > > 
> > > > Alternatively you can try (or similar):
> > > > 
> > > > diff --git a/xen/arch/arm/mm.c b/xen/arch/arm/mm.c
> > > > index 6ccffeaea57d..105ef3faecfd 100644
> > > > --- a/xen/arch/arm/mm.c
> > > > +++ b/xen/arch/arm/mm.c
> > > > @@ -1424,6 +1424,8 @@ int xenmem_add_to_physmap_one(
> > > >                    page_set_xenheap_gfn(mfn_to_page(mfn), gfn);
> > > >            }
> > > >            else
> > > > +        {
> > > > +            printk("%u already mapped\n", space);
> > > >                /*
> > > >                 * Mandate the caller to first unmap the page before mapping it
> > > >                 * again. This is to prevent Xen creating an unwanted hole in
> > > > @@ -1432,6 +1434,7 @@ int xenmem_add_to_physmap_one(
> > > >                 * to unmap it afterwards.
> > > >                 */
> > > >                rc = -EBUSY;
> > > > +        }
> > > >            p2m_write_unlock(p2m);
> > > >        }
> > > > 
> > > > > > > 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?
> > > > > > 
> > > > > > I think the issue is that you are mapping the shared info page over a
> > > > > > guest RAM page, and in order to do that you would fist need to create
> > > > > > a hole and then map the shared info page.  IOW: the issue is not with
> > > > > > edk2 not having unmapped the page, but with FreeBSD trying to map the
> > > > > > shared_info over a RAM page instead of a hole in the p2m.  x86
> > > > > > behavior is different here, and does allow mapping the shared_info
> > > > > > page over a RAM gfn (by first removing the backing RAM page on the
> > > > > > gfn).
> > > > > 
> > > > > An interesting thought.  I thought I'd tried this, but since I didn't see
> > > > > such in my experiments list.  What I had tried was removing all the pages
> > > > > in the suggested mapping range.  Yet this failed.
> > > > 
> > > > Yeah, I went too fast and didn't read the code correctly, it is not
> > > > checking that the provided gfn is already populated, but whether the
> > > > mfn intended to be mapped is already mapped at a different location.
> > > > 
> > > > > Since this seemed reasonable, I've now tried and found it fails.  The
> > > > > XENMEM_remove_from_physmap call returns 0.
> > > > 
> > > > XENMEM_remove_from_physmap returning 0 is fine, but it seems to me
> > > > like edk2 hasn't unmapped the shared_info page.  The OS has no idea
> > > > at which position the shared_info page is currently mapped, and hence
> > > > can't do anything to attempt to unmap it in order to cover up for
> > > > buggy firmware.
> > > > 
> > > > edk2 should be the entity to issue the XENMEM_remove_from_physmap
> > > > against the gfn where it has the shared_info page mapped.  Likely
> > > > needs to be done as part of ExitBootServices() method.
> > > > 
> > > > FWIW, 71320946d5edf is an ABI change, and as desirable as such
> > > > behavior might be, a new hypercall should have introduced that had the
> > > > behavior that the change intended to retrofit into
> > > > XENMEM_add_to_physmap.
> > > I can see how you think this is an ABI change but the previous behavior was
> > > incorrect. Before this patch, on Arm, we would allow the shared page to be
> > > mapped twice. As we don't know where the firmware had mapped it this could
> > > result to random corruption.
> > > 
> > > Now, we could surely decide to remove the page as x86 did. But this could
> > > leave a hole in the RAM. As the OS would not know where the hole is, this
> > > could lead to page fault randomly during runtime.
> > 
> > I would say it's the job of the firmware to notify the OS where the
> > hole is, by modifying the memory map handled to the OS.  Or else
> > mapping the shared_info page in an unpopulated p2m hole.
> 
> I agree but I am not convinced that they are all doing it. At least U-boot
> didn't do it before we fixed it.
> 
> > 
> > When using UEFI there's RAM that will always be in-use by the
> > firmware, as runtime services cannot be shut down, and hence the
> > firmware must already have a way to remove/reserve such region(s) on
> > the memory map.
> 
> Can either you or Elliott confirm if EDK2 reserve the region?

I will defer to Elliott to check for arm.  I would be quite surprised
if it doesn't on x86, or else we would get a myriad of bug reports
about guests randomly crashing when using edk2.

> > 
> > > Neither of the two behaviors help the users. In fact, I think they only make
> > > the experience worse because you don't know when the issue will happen.
> > > 
> > > AFAICT, there is no way for an HVM guestto know which GFN was inuse. So in
> > > all the cases, I can't think of a way for the OS to workaround properly
> > > buggy firmware. Therefore, returning -EBUSY is the safest we can do for our
> > > users and I don't view it as a ABI change (someone rely on the previous
> > > behavior is bound to failure).
> > 
> > I fully agree the current behavior might not be the best one, but I do
> > consider this part of the ABI, specially as booting guests using edk2
> > has now stopped working after this change.
> 
> Right. If we remove the check, you may be able to boot a guest. But are we
> sure that such guest would run safely?

If the guest wants the hypervisor to enforce such behavior, let it
use the new hypercall to explicitly request the shared_info page to
not be mapped anywhere else.

But if you don't trust the bootloader, how do you know it hasn't poked
holes elsewhere in the RAM regions?

Even if the shared_info page has been unmapped, can you be sure the
bootloader has put a RAM page back in that gfn?

I understand this ABI change is done to avoid bugs, but at the cost of
diverging from x86, and breaking existing firmwares which might not be
buggy.

> Also, it is not really argument, but this is not the only broken part in
> EDK2 for Xen Arm guests. The other one I know is EDS makes assumption how
> some Device-Tree nodes and this will break on newer Xen.
> 
> So overall, it feels to me that EDK2 is not entirely ready to be used in
> production for Xen on Arm guests.

I really have no insight on this.  What are the supported way of booting
guests on Arm?  (SUPPORT.md doesn't seem to list any firmware for Arm
guests AFAICT).

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Wed Oct 04 13:54:33 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 04 Oct 2023 13:54:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612588.952554 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qo2KS-0000Va-LM; Wed, 04 Oct 2023 13:54:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612588.952554; Wed, 04 Oct 2023 13:54: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 1qo2KS-0000VT-IL; Wed, 04 Oct 2023 13:54:20 +0000
Received: by outflank-mailman (input) for mailman id 612588;
 Wed, 04 Oct 2023 13:54: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=O8y1=FS=citrix.com=prvs=634504905=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qo2KQ-0000VJ-FO
 for xen-devel@lists.xenproject.org; Wed, 04 Oct 2023 13:54:18 +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 81608d21-62bd-11ee-98d3-6d05b1d4d9a1;
 Wed, 04 Oct 2023 15:54:16 +0200 (CEST)
Received: from mail-dm6nam11lp2172.outbound.protection.outlook.com (HELO
 NAM11-DM6-obe.outbound.protection.outlook.com) ([104.47.57.172])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 04 Oct 2023 09:53:52 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by SA3PR03MB7347.namprd03.prod.outlook.com (2603:10b6:806:394::14)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.37; Wed, 4 Oct
 2023 13:53:50 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::66ca:3a42:baeb:9ecf]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::66ca:3a42:baeb:9ecf%6]) with mapi id 15.20.6838.030; Wed, 4 Oct 2023
 13:53: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: 81608d21-62bd-11ee-98d3-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1696427656;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:content-transfer-encoding:mime-version;
  bh=zAKKZrXT40kxGi6o7MaetvKBywZS5ao8NsgvC6VvEWU=;
  b=DFuoUs+9IDDi059DLdcMbdi6VeMSSSzBAVS2vzKXIfma+UGQ1wV9GQdJ
   FpQ5wUplqb7+nPMFyrBG/tqTMkNyehOMAQ2VIazBtPAm/OVwpqlt4prO7
   cW9hs9C247FP1kWm+WU9bF89HpFj6FMal9+f7YgmYqJxyloerAWEJAQGI
   g=;
X-CSE-ConnectionGUID: afEOUnMJSoK2u26v7J9LPA==
X-CSE-MsgGUID: NdccwdNhQSGL/FQWsIsuQQ==
X-IronPort-RemoteIP: 104.47.57.172
X-IronPort-MID: 123862573
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:4Yf83a3tYs5noHWj8/bD5Tdwkn2cJEfYwER7XKvMYLTBsI5bp2MPn
 zdKC2mBbvuNZGKjKNAjPIW+8UwH75OBzYVrTgtkpC1hF35El5HIVI+TRqvS04F+DeWYFR46s
 J9OAjXkBJppJpMJjk71atANlVEliOfQAOK6UbaYUsxIbVcMYD87jh5+kPIOjIdtgNyoayuAo
 tq3qMDEULOf82cc3lk8teTb83uDgNyo4GlD5wRmOagQ1LPjvyJ94Kw3dPnZw0TQGuG4LsbiL
 87fwbew+H/u/htFIrtJRZ6iLyXm6paLVeS/oiI+t5qK23CulQRrukoPD9IOaF8/ttm8t4sZJ
 OOhF3CHYVxB0qXkwIzxWvTDes10FfUuFLTveRBTvSEPpqFvnrSFL/hGVSkL0YMkFulfCG9j0
 sEeDRI2aTPZmrjo3u2ZG81Ur5F2RCXrFNt3VnBI6xj8VK9jbbWdBqLA6JlfwSs6gd1IEbDGf
 c0FZDFzbRPGJRpSJlMQD5F4l+Ct7pX9W2QA9BTJ+uxqvC6Kk1YZPLvFabI5fvSQQspYhACAr
 3/u9GXlGBAKcteYzFJp91r13LSfw3mmB9l6+LuQ0PJhi0Kf4GwqMzIyEnWCnuKYkVOHYocKQ
 6AT0m90xUQoz2S7Q9+4UxCmrXqsuh8HR8EWA+A88BuKyKff/0CeHGdsZjxLZcEitcQ2bSc3z
 VLPlNTsbRRzubicUlqB9bOZqzyjNCxTJmgHDQcbSSMV7t+lp5s85jrNU9JiHaidntDzXzbqz
 FiitzMijr8eicoK0aST/l3dhT+o4J/TQWYICh7/W2uk6kZ1YdCjbonxsFzDt68fdsCeU0WLu
 2UCl46G9ucSAJqRlSuLBuIQALWu4PXDOzrZ6bJyI6QcG/2W0ybLVehtDPtWfRkB3hosEdMxX
 HLuhA==
IronPort-HdrOrdr: A9a23:x1KRpq8JcCo9sa7C3XVuk+G/dr1zdoMgy1knxilNoENuH/Bwxv
 rFoB1E73TJYVYqN03IV+rwWpVoJkmsj6KdgLNhRotKOTOLhILGFvAH0WKP+V3d8mjFh5dgPM
 RbAtdD4b/LfD9HZK/BiWHXcurIguP3iJxA7d2us0uFJjsaDp2IgT0JaTpyRSZNNXR77NcCZd
 OhDo0tnUvSRV0nKuCAQlUVVenKoNPG0LrgfB49HhYirCWekD+y77b+Mh6AmjMTSSlGz7sO+X
 XM11WR3NTvj9iLjjvnk0PD5ZVfn9XsjvNFGcy3k8AQbhn8lwqyY4xlerua+BQ4uvum5loGmM
 TF5z0gI8NwwXXMeXzdm2qm5yDQlBIVr1Pyw16RhnXu5eT/WTIBEsJEwaZUaAHQ5UYMtMx1lP
 sj5RPTi7NnSTf72Ajt7dnBUB9n0mKyvHoZiOYWy1hSS5EXZrN9pZEWuGlVDJADNiTn751PKp
 gnMOjsoNJtNX+KZXHQuWdihPSqQ3QIBx+DBnMPv8SEugIm6ExR/g89/ogyj30A/JUyR91v/O
 LfKJllk7lIU4s/cb99LP1pe7r3NkX9BTb3dE6CK1XuE68Kf1jXrYTs3bkz7Oa2PLQV0ZoJno
 jbWl8wjx99R6vXM7zM4HR3yGGOfI3kNg6dj/22pqIJ9YEUfYCbcRFqEzsV4o+dS/Z2OLyvZx
 /8AuMQPxbZFxqfJW945XyBZ3BsEwhubCRsgKdcZ7uvmLO9FmS4jJ2sTN/jYJzQLB0DZkTTRl
 M+YRmbHrQz0qnsYA61vCTs
X-Talos-CUID: 9a23:mzEc6WNJPQ1KAO5DUSdK03MSP+IedV6H0S2OPRCaWEJRYejA
X-Talos-MUID: 9a23:3bmEKwQXbCuQS8wWRXTKiDppK8tO452VJ2RKv6w5oOifKBVJbmI=
X-IronPort-AV: E=Sophos;i="6.03,200,1694750400"; 
   d="scan'208";a="123862573"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Lc8Nlzvo3wpBZtm4WxUJlkkJNrtNRm29oSBAoWL512XpmfoPbqgs617ntNhE445EMq8GmasLNSe29BZ//nJA4764AeGrhjYcGoKsr8QWHICqXNyybLNgvXfzKDPiJfdXkl//3n+I+n14xSlGYTeMNeWHgcreGaprbcN1bCfCykIwpxE++hXuQagcTDH3pSo4F4ZNBWyAKJi0ojXwAnoYbcKTbB3tNLqrNM3r46XCF2ZBm0nHDJAmQhPayFjCwZ10VyjJUvg3mfV0YPb8QzHc4WchkgemW7yigaAhsLd4QjP9tr8r9Nmjr2dqSZQwhxDItRy4GsOH6y81H7VENlI02g==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=9T/LvJTMaYmy7DqmDRI5rV0oXDj3OflcxEBGo3ICrt0=;
 b=WrucLJMBaTxMaAoYul6J0Y7UdDFstTzegWpRX/3Kuts482Ot2rH7MEsB2clfMeDDFysggKTbFFEqMt5MmDa72vSqZ+cPztCwDxAa9eS0nCEIzPbl4cnxcWun3d0wyCY8WDS09aqs9cqA0uYlXrT23Z5ZrjxM8n2z/Ik+JlrtM7gGBPgoiblEEgxj7rKqL9Pr0bqii4bZ18UoJrCHlPqWUrQAQK5QE+B639gG+/kq9LW7YfsxFDn52+Gc8ZnbhzxwGiJ/e4VqkL4q+gN2WjEOJJrCj6DAR2rNpak6RNdPqK3IINfPdKsPiah79RSJY19ALTrEL10LePwbBKSPDq2ABQ==
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=9T/LvJTMaYmy7DqmDRI5rV0oXDj3OflcxEBGo3ICrt0=;
 b=JLKMTIgbeAWPtBLEvDruwuue3Ij6yRGNX/2bCxG0PI80+i9drQpPIZI1fAWoUzwd5O+qgaAN0xVdVaHpmEsKoHAm14zgWrGKk2onCBJpTKZ6/+2nYABmOFXWrAyuVpZnuX8Fizykb0wYA+grtS+KyKx1e9WpRipIdlD9lRRHD80=
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: Jan Beulich <jbeulich@suse.com>,
	Tamas K Lengyel <tamas@tklengyel.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>,
	Wei Liu <wl@xen.org>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>
Subject: [PATCH v6 06/10] x86/mem-sharing: copy GADDR based shared guest areas
Date: Wed,  4 Oct 2023 15:53:31 +0200
Message-ID: <20231004135331.83736-1-roger.pau@citrix.com>
X-Mailer: git-send-email 2.42.0
In-Reply-To: <081ae245-9d47-4cab-ad64-54b33566429c@xen.org>
References: <081ae245-9d47-4cab-ad64-54b33566429c@xen.org>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: LO6P123CA0048.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:310::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_|SA3PR03MB7347:EE_
X-MS-Office365-Filtering-Correlation-Id: 2443ec4a-f5bf-4cd2-ce9c-08dbc4e15677
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:
	XaRcixdKIqFT2rYIbNeW4CiKYExu2UJE5kWHoQKWjpIARjgcTxgpcflQ2PxDb0HXIH1rGRHp+ebHW8IarosCdfFZHmBjtyoAeOyIPXddYGxo1TmF56WwVDf8yoLEJ5Acfk8ZUMbZs/HI7WHbc+8c7kHtyyCvyxBte885a5qbMXiy7Y5lI/Ua2/QGi3eiNWeo1sY2jr5qX+Za1iIULSrV/+sJ3c1iv4MwuQlUuZzqKNLxpV0XasG12QsjkqHXPiserQP9ScL9rzTUPgQcQLze5cvkqn8qzuFRP9JM23AzKnH+VleqULQx74g/yS6mB0YQN8Pdgclig2pEo1FspIkU6Nb5yOxGEFy5nmUQCWMfxYv7YgEU++j4XNv1eMFtC7Jqj8WVbNuWcFroANiK62oU0f1bM5AeJ4GL9y5eP3KEhzss5Xqw9pzYzmt47/uAlKP1YdxCoCCscgAYt7DNsIpGlS9HM6Y6pbqx3eUBejcbzddicR+0Yt/xneRU6rtqpj/fiUaJYaCrnMhLvhJWUZm9Mkrdjd1NpK/Yvv0yeEjnMKkfYELUC1yNMdCL+ukZ8L8b
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)(396003)(136003)(376002)(366004)(230922051799003)(64100799003)(186009)(451199024)(1800799009)(2616005)(66476007)(54906003)(66556008)(66946007)(6916009)(316002)(41300700001)(1076003)(6512007)(26005)(6666004)(36756003)(6506007)(478600001)(6486002)(38100700002)(82960400001)(86362001)(2906002)(4326008)(8936002)(8676002)(5660300002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?T3NhT2xGQ0VTc2pHREZqTVBOeTVMZlZ4aktZM2RSTEdLdUpjbEFUdmNIaVBG?=
 =?utf-8?B?am1XcmJwbjdxYkJLNVdYc2tFbXpjOXlsaFd3emQ2Y0dKYzg0NGd5ZDhKc1FY?=
 =?utf-8?B?NVFEbjgzZUk2RGgxeFJoMlBKWEp2blBhckZFSUd3RXdtVjlSR2NETS9GVVoz?=
 =?utf-8?B?cXhTY08yY28wU2FrR0xSeGI3Z3BPbEZYMFJvbWdkSDdGNnBGc3pBQ0tvcUZv?=
 =?utf-8?B?S1NMUERYTEx1UnA4QWtYZVhtV2pvdzRwVUtJUjljMVpMcCs5WS91eU5FSGVY?=
 =?utf-8?B?Z0RQYnc4Nkt4aXV5azRFd3BzdTlGRDVxak9OeVMwNFFUaVZHTzF6blVrdWt4?=
 =?utf-8?B?OUlTTXFuTE9MQXRLQlpocUJkREVkdXo2VlRtSEZVK0Z2RGlmc1FBa2lFeGxC?=
 =?utf-8?B?TEpndndac2N4OWtLdC82TE95cE9tZEwvUWhmQUZyT3NXY25aZTdJRWNEVmM2?=
 =?utf-8?B?UHpEOFA3eXZqMDVqZ2M1SEtoUkhKTmNJUXlOeGdUOHFOekFLbStNTVFNcWdt?=
 =?utf-8?B?Zkk2ZkhRSTVHSzFranN5SVoyQmdTbFp0ZlR6TTZWTFMzbVUwSUlyaG1HODJs?=
 =?utf-8?B?R2NpODNCVy9lWVVQTThrOVJ2M215RGtuWmJBZDd5bHhVN2ZLR3BVbTd1TFRu?=
 =?utf-8?B?emZmRldnVmZReUdKTDJBQ2N2S0s5UHV6dVBqaEg1aG83N3NYNTVlMFp2SGJ3?=
 =?utf-8?B?WUFxb0JPbzFKNUpzMnNGQWRIMTlZbk5GVS9kZU1oYmVVYXdIZlpKd3hyUE5V?=
 =?utf-8?B?WG56amxBb25BU2VCSmNBNlBKUVhkTHlVN1lxdnlsVFFkRGRVblI2UDUydnJG?=
 =?utf-8?B?ZHorT3lVMFFOOGkza2t5VExNL1pyQmFscVA3eEpUNnA3T2NCTGI2Z01oV01y?=
 =?utf-8?B?TWV3akI0K0oyWU1wQldUdnNqQ0xaVi95a0hidHJxdUl2aHRkQm13YUpyc3o1?=
 =?utf-8?B?cDhyampqUHRiNmVDWGRCU0l3QzgwYW9PV3d1b2ZCQ2tMZGxKQTdYZHFCWUpT?=
 =?utf-8?B?TFlrMmtsMXJlNFA1WExMa28waEpKdHZoVHJRam1RdEZrLzlOaEV5ZlhoVVNK?=
 =?utf-8?B?ZEVkRnJpbDgxckdrWm9kTEpVOUZRTUxBbWp2RnpTWWMwaGxEcUpnSklXbXBX?=
 =?utf-8?B?UWpPNjNwUkp5NHZzTjQxTVdsYU0xai9NNHdrNndvWGlnZGpnWVJOdlFwLzhs?=
 =?utf-8?B?anVNdE9jaW5EMW0vRUVNRFA4ekFERjU4WkUvQWY3TE42UEhYZlFrUkxwRmVL?=
 =?utf-8?B?anJVTnB1OG16cDVEUDdhdlRHSlI4WUt1Wll4REhUemRPTnU4djVVKzZmTGY4?=
 =?utf-8?B?QU9qMDRrSHJRdSttREZYZ0xkSWtQdHUwWEl1dEZ6REQ3dEF2QXVUNm9EMG1V?=
 =?utf-8?B?dzV0R1hBMlRyUytpZkZ6emVGalAyTENJQjRiMThMemNnTVlmSDdGRjZhZTZu?=
 =?utf-8?B?TE5NZ09UVXVibUhkdy9Za3k5QThvWHBiY01qT0tJUG5xZUZldTFoZHh6ZTU2?=
 =?utf-8?B?R2hsYUdzWGREZ0U1M1prTWFrZTJDQ3dJZ1cwN29YdFUza3BrN0RTVnAzSjJj?=
 =?utf-8?B?V2lSNU1qR0k2dGFqVFhHdExFYlU5TUh3V2NaZk0zU21GUmFPb210U1BOaVFC?=
 =?utf-8?B?Zkl4ejRNZGMwbmtYL2g5UjQ0endBSEhmZ2hLY0VSbkdDQnZoSGdYQVBvMXFP?=
 =?utf-8?B?V2NXb1VSdHFQNTNvdkZvSkFkV1hHcmhtTGgrWlBpaVMvSmQ2VldabG5uWTZk?=
 =?utf-8?B?bXdMWUpIUXlKeVlhTTViYlBmQUxvL2s5RXVUK0tTd0xUWHpTbzdEL09mQ3lV?=
 =?utf-8?B?Y0xmUnArZ0h2MXU5bHdrVmcxSjN5NDhoektoNllkNEliYk1OSmQ3cm81bFl0?=
 =?utf-8?B?djdrMVR2VFZwU2pxenlOUjFUUTIxUlBENDZYS0JVb3NQVUNuQ0pTUDQ3OEtl?=
 =?utf-8?B?cFZHdldkYnlzSkViaE1ZbUR6OFV5U3lLaGp0RnBORFJldnUrUFRBUVBqM3hk?=
 =?utf-8?B?ajVaSG9jbWdRMzVUQVZnUitQYU14cEJieG5vRG54cmd4TUJ5NEtWdytKdlRi?=
 =?utf-8?B?amRLeFJlODR6LytBVi8xTDBQbjhCUW00WGxIb3gwanRuR25rU29mZTlaMk43?=
 =?utf-8?B?VCtDblREemt1RzhUSlk0NDVhR2dyOXg3NTU5bmY5TzJaYzRKYnd1amhrVU5i?=
 =?utf-8?B?MVE9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	QAbjIm+DZ7REgTieOcUz/NIa28tEKDnVirZ4OHe0UaLhf19qcv6XzdIxnEgWY9UBfLwyqU/GHAeveWCqJ359CzGgTjs6Z4bhnoyUbxcr+kXhr640ESB9/+hbRxan04BKP5zQJITMnM1kWbRWn05WQlaadolyN01yO+1msSqjpT7wsO8dHwyzjDZ8Af9wUfrqo01yypgwVdfFnScO0JzKJnPsbvYCZNktuu/7Fqes3/gx6Pce31EuOHnfn2d2xlSSOrMkjSRFBoE1O6i1CSXFPawvHRuvTjHMt+uaiGu5/5sW1KJY9BgK/g/T3yjrwvleTJx0+i5heUXwSRA0AQnfLIKpRvP5aWnCgw3WKoD7OduGp36D8ZgQSIEN7KZ6mbRkzJ5U27jwE4fKf9SFAmR8WW78OmYGylkaUOQ/d7fv1CZ0FnLYtNg9vpirmexts7VxprksH3sNiNhzxmPGwqwtXE602g+Yb/dem28M1HpFLG3PHsm5hQrgvvOEeccVviw5VFx6IgDO+LdWP7og/bxfqY9k6aL2WkW60BsD40HOauH4G4+E/2Pobxn/IPwpbNS3dd39EK5NS2YcWkD7mHGW1XPPhx2u1yK7tfiZkksOhn37woGved4cGaG8CmP6XCWut8nB6NR3Ztl2f9fr4cw3zw/BFFEC0Z981Uka1YCQQzDugO0SOs8bKzlCSSBnwwprn6kBx4rS4Xq23u7BGDpYHBulH+OhSLvGlOH8yuZIpYoObJt8jpkJyy0dVWNJeAHYlIN0+3PW1EvFWfULv6qTFu0vW4qvCl45BA8h+vkYkVpVgsSoCXbP0UEBNYcb0H02r4D25FYA3JKo+FlgyPaltRovjVE+RaH9F0GnHoRVh51BZa0etYb7dNrkNkfvg06OeZqgHzhJ7UMopZP7uIn2bw==
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 2443ec4a-f5bf-4cd2-ce9c-08dbc4e15677
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Oct 2023 13:53:50.3224
 (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: OX2E9CXCg6XQ/ASnebKPf+84llvbYN8wEcXUH72YEvHpyDuEfFYXSPeS1vkuBdlLueBGfdkdixXWTduQPKwQPA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA3PR03MB7347

From: Jan Beulich <jbeulich@suse.com>

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>
Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
---
Changes since v5:
 - Convert -ERESTART to -EAGAIN.

Changes since v4:
 - Rely on map_guest_area() to populate the child p2m if necessary.
---
 xen/arch/x86/mm/mem_sharing.c | 36 +++++++++++++++++++++++++++++++++++
 xen/common/domain.c           |  7 +++++++
 2 files changed, 43 insertions(+)

diff --git a/xen/arch/x86/mm/mem_sharing.c b/xen/arch/x86/mm/mem_sharing.c
index 5f8f1fb4d871..445947b6a918 100644
--- a/xen/arch/x86/mm/mem_sharing.c
+++ b/xen/arch/x86/mm/mem_sharing.c
@@ -1641,6 +1641,24 @@ static void copy_vcpu_nonreg_state(struct vcpu *d_vcpu, struct vcpu *cd_vcpu)
     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)
+{
+    unsigned int offset;
+
+    /* Check if no area to map, or already mapped. */
+    if ( !d_area->pg || cd_area->pg )
+        return 0;
+
+    offset = PAGE_OFFSET(d_area->map);
+    return map_guest_area(cd_vcpu, gfn_to_gaddr(
+                                       mfn_to_gfn(d, page_to_mfn(d_area->pg))) +
+                                   offset,
+                          PAGE_SIZE - offset, cd_area, NULL);
+}
+
 static int copy_vpmu(struct vcpu *d_vcpu, struct vcpu *cd_vcpu)
 {
     struct vpmu_struct *d_vpmu = vcpu_vpmu(d_vcpu);
@@ -1709,6 +1727,16 @@ static int copy_vcpu_settings(struct domain *cd, const struct domain *d)
                 return ret;
         }
 
+        /* 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;
@@ -1950,7 +1978,15 @@ int mem_sharing_fork_reset(struct domain *d, bool reset_state,
 
  state:
     if ( reset_state )
+    {
         rc = copy_settings(d, pd);
+        if ( rc == -ERESTART )
+            /*
+             * Translate to -EAGAIN, see TODO comment at top of function about
+             * hypercall continuations.
+             */
+            rc = -EAGAIN;
+    }
 
     domain_unpause(d);
 
diff --git a/xen/common/domain.c b/xen/common/domain.c
index d4958ec5e149..47fc90271901 100644
--- 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
-- 
2.42.0



From xen-devel-bounces@lists.xenproject.org Wed Oct 04 13:54:59 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 04 Oct 2023 13:54:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611588.952565 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qo2L4-0001Kc-Vh; Wed, 04 Oct 2023 13:54:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611588.952565; Wed, 04 Oct 2023 13: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 1qo2L4-0001KV-R9; Wed, 04 Oct 2023 13:54:58 +0000
Received: by outflank-mailman (input) for mailman id 611588;
 Mon, 02 Oct 2023 14:17: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=4fHX=FQ=kernel.org=dsahern@srs-se1.protection.inumbo.net>)
 id 1qnJjy-0000Cx-8M
 for xen-devel@lists.xenproject.org; Mon, 02 Oct 2023 14:17:42 +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 7144a0f4-612e-11ee-9b0d-b553b5be7939;
 Mon, 02 Oct 2023 16:17: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 EF62EB81094;
 Mon,  2 Oct 2023 14:17:38 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 53217C433C8;
 Mon,  2 Oct 2023 14:17: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: 7144a0f4-612e-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696256258;
	bh=vkYSu3CMdUku1DYMLSbi1CqSIx/Y+w371ZyBOHbOWQU=;
	h=Date:Subject:To:Cc:References:From:In-Reply-To:From;
	b=exLEpilJBAgz5ZnsirATe9JxW+UqjlphdsbHWsfr4jfuvvcdvfFqCOOPADpHoegLG
	 QT1ZRviNOCQSFKPR+2ncqqKUmVN5OgF6Y3H/MOzAcM/iVe2Rhws0drvVplI+2eIc8B
	 vEtl9FK4HkZ3OOjR4RCkE9u+Gvi4K1kPyS1jOYkSvxJSQs2ZBIu74ouWye+qLIE93j
	 akqIqYVLy6LU2/F78IRxLEwEfXTSJG6/bFwFcDmsl1IBSzB7eh4B9D9E143cSdty4X
	 r2p6zx5xCX9grOdpP+GalyJ8YI4rJQvVL0i4iN5OQXuy6/X9d744gUtflnDsfOCo5Y
	 8pia5lOvzI0rg==
Message-ID: <e493d101-348a-949d-5160-3d633817adf2@kernel.org>
Date: Mon, 2 Oct 2023 08:17:35 -0600
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 v2 10/15] vrf: Remove the 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>,
 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 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
References: <20231002-jag-sysctl_remove_empty_elem_drivers-v2-0-02dd0d46f71e@samsung.com>
 <651a84ff.050a0220.51ca9.2e91SMTPIN_ADDED_BROKEN@mx.google.com>
From: David Ahern <dsahern@kernel.org>
In-Reply-To: <651a84ff.050a0220.51ca9.2e91SMTPIN_ADDED_BROKEN@mx.google.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit

On 10/2/23 2:55 AM, 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 vrf_table
> 
> Signed-off-by: Joel Granados <j.granados@samsung.com>
> ---
>  drivers/net/vrf.c | 1 -
>  1 file changed, 1 deletion(-)
> 

Reviewed-by: David Ahern <dsahern@kernel.org>




From xen-devel-bounces@lists.xenproject.org Wed Oct 04 13:54:59 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 04 Oct 2023 13:54:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.611783.952569 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qo2L5-0001O6-7Y; Wed, 04 Oct 2023 13:54:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 611783.952569; Wed, 04 Oct 2023 13:54: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 1qo2L5-0001NQ-2a; Wed, 04 Oct 2023 13:54:59 +0000
Received: by outflank-mailman (input) for mailman id 611783;
 Mon, 02 Oct 2023 21:45: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=XCDK=FQ=philpotter.co.uk=phil@srs-se1.protection.inumbo.net>)
 id 1qnQjO-0007IC-Ia
 for xen-devel@lists.xenproject.org; Mon, 02 Oct 2023 21:45: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 01f846ea-616d-11ee-98d2-6d05b1d4d9a1;
 Mon, 02 Oct 2023 23:45:31 +0200 (CEST)
Received: by mail-wm1-x32c.google.com with SMTP id
 5b1f17b1804b1-405417465aaso2607345e9.1
 for <xen-devel@lists.xenproject.org>; Mon, 02 Oct 2023 14:45:30 -0700 (PDT)
Received: from localhost.localdomain
 (3.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.6.1.f.d.0.b.8.0.1.0.0.2.ip6.arpa.
 [2001:8b0:df16::3]) by smtp.gmail.com with ESMTPSA id
 a11-20020a05600c2d4b00b004065daba6casm7974630wmg.46.2023.10.02.14.45.28
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 02 Oct 2023 14:45: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: 01f846ea-616d-11ee-98d2-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=philpotter-co-uk.20230601.gappssmtp.com; s=20230601; t=1696283130; x=1696887930; 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=3dA79LkNYU7asBXwt/uQxW8bheOGwedQNE5Z+nFIVT0=;
        b=m4J6HEgNwLlqvweRFC1rnykJbaC79Y1utvVnCkTOui575gVI8j3LOZNcG+aVnrjFZr
         S87oN+3UOoEV7l5kxLYqj0mv73Sb3U20ijxL4FCXP2Yqzx2rv3TuQXLdh2z0o4YXfAPI
         /ZClbBweqyEvr3rXfmHawn7vibH9v9SCSS4rh8cGsplhvVVANMkhdsqMJwIp/V2NFTrm
         EaTckDVDF9kwUH2lY4usQP3xNy+jxw3/NLSssHE1WfU5VhlEBFLwOLRcKsfLrDLEHj8v
         u2xJSHzetDCCvNNYWV00VvfLYY3+Jpl1wRxO5bocW1tztIOFUAtFpyWJvWaYnt4JNYj3
         mY1w==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1696283130; x=1696887930;
        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=3dA79LkNYU7asBXwt/uQxW8bheOGwedQNE5Z+nFIVT0=;
        b=dy6dqXHA/qmoy8zSiSulJMQivZ4pOuGFPk090TvMexUsbK7biic2loeEy02+O+RxUh
         MmDzqJ+4bvDS+te2Wq+HyxqcXTZ4JfgV3jCdIxAydFKIZaCceAn5Rqtv6RdHInBaS77i
         5hY4PcxxbdDf3nl7oWvRGrf5NXjldqNR8DJ4vTMEUC9qcl/AuqbX5W6rHpUjODdR67zy
         dldbjrxGf+m6cyu4uX3OaLvZkDzpIC6xZYxl3br/p+0PIcZSbHJhb05AlU1DI8EQGm1a
         fPzOT7/qOQWfK8jr5fiOcdlsLyVlubOushoZ/m/eu/lTW7VF27c5IsV0tlX/nNRoB8vf
         zd2A==
X-Gm-Message-State: AOJu0YyyuwgLK14BRimRturTne5evdHZtx/KTyksLvS1BU52b/Lnpiuh
	3l9K0K/3MGMoHDyEM5Ur59G8Ig==
X-Google-Smtp-Source: AGHT+IFQqDHrxS5nLVVcz3uYz3zBoh8PRAUblObfkXMiu+127hGE3d4cKV4jcsCeAwYclm/ssvuz7g==
X-Received: by 2002:a1c:6a05:0:b0:404:757e:c5ba with SMTP id f5-20020a1c6a05000000b00404757ec5bamr10282866wmc.26.1696283130281;
        Mon, 02 Oct 2023 14:45:30 -0700 (PDT)
From: Phillip Potter <phil@philpotter.co.uk>
To: devnull+j.granados.samsung.com@kernel.org
Cc: Jason@zx2c4.com,
	airlied@gmail.com,
	arnd@arndb.de,
	clemens@ladisch.de,
	daniel@ffwll.ch,
	davem@davemloft.net,
	decui@microsoft.com,
	dgilbert@interlog.com,
	dri-devel@lists.freedesktop.org,
	dsahern@kernel.org,
	edumazet@google.com,
	gregkh@linuxfoundation.org,
	haiyangz@microsoft.com,
	intel-gfx@lists.freedesktop.org,
	j.granados@samsung.com,
	jani.nikula@linux.intel.com,
	jejb@linux.ibm.com,
	jgg@ziepe.ca,
	jgross@suse.com,
	jirislaby@kernel.org,
	joonas.lahtinen@linux.intel.com,
	josh@joshtriplett.org,
	keescook@chromium.org,
	kuba@kernel.org,
	kys@microsoft.com,
	leon@kernel.org,
	linux-hyperv@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-raid@vger.kernel.org,
	linux-rdma@vger.kernel.org,
	linux-scsi@vger.kernel.org,
	linux-serial@vger.kernel.org,
	linuxppc-dev@lists.ozlabs.org,
	martin.petersen@oracle.com,
	mcgrof@kernel.org,
	minyard@acm.org,
	netdev@vger.kernel.org,
	oleksandr_tyshchenko@epam.com,
	openipmi-developer@lists.sourceforge.net,
	pabeni@redhat.com,
	phil@philpotter.co.uk,
	rafael@kernel.org,
	robinmholt@gmail.com,
	rodrigo.vivi@intel.com,
	russell.h.weight@intel.com,
	song@kernel.org,
	sstabellini@kernel.org,
	steve.wahl@hpe.com,
	sudipm.mukherjee@gmail.com,
	tvrtko.ursulin@linux.intel.com,
	tytso@mit.edu,
	wei.liu@kernel.org,
	willy@infradead.org,
	xen-devel@lists.xenproject.org
Subject: Re: [PATCH v2 01/15] cdrom: Remove now superfluous sentinel element from ctl_table array
Date: Mon,  2 Oct 2023 22:45:28 +0100
Message-ID: <20231002214528.15529-1-phil@philpotter.co.uk>
X-Mailer: git-send-email 2.41.0
In-Reply-To: <20231002-jag-sysctl_remove_empty_elem_drivers-v2-1-02dd0d46f71e@samsung.com>
References: <20231002-jag-sysctl_remove_empty_elem_drivers-v2-1-02dd0d46f71e@samsung.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

> 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 | 1 -
>  1 file changed, 1 deletion(-)
>
> diff --git a/drivers/cdrom/cdrom.c b/drivers/cdrom/cdrom.c
> index cc2839805983..a5e07270e0d4 100644
> --- a/drivers/cdrom/cdrom.c
> +++ b/drivers/cdrom/cdrom.c
> @@ -3655,7 +3655,6 @@ static struct ctl_table cdrom_table[] = {
>  		.mode		= 0644,
>  		.proc_handler	= cdrom_sysctl_handler
>  	},
> -	{ }
>  };
>  static struct ctl_table_header *cdrom_sysctl_header;
>
>
> -- 
> 2.30.2


Hi Joel,

Looks good to me, many thanks. I'll send on for inclusion.

Reviewed-by: Phillip Potter <phil@philpotter.co.uk>

Regards,
Phil


From xen-devel-bounces@lists.xenproject.org Wed Oct 04 13:54:59 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 04 Oct 2023 13:54:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612224.952576 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qo2L5-0001W1-Lm; Wed, 04 Oct 2023 13:54:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612224.952576; Wed, 04 Oct 2023 13:54: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 1qo2L5-0001Ua-Da; Wed, 04 Oct 2023 13:54:59 +0000
Received: by outflank-mailman (input) for mailman id 612224;
 Tue, 03 Oct 2023 13:19: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=RWbB=FR=epam.com=prvs=4640511bd5=andrii_chepurnyi@srs-se1.protection.inumbo.net>)
 id 1qnfJY-0001vL-4B
 for xen-devel@lists.xenproject.org; Tue, 03 Oct 2023 13:19:52 +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 86e557c0-61ef-11ee-9b0d-b553b5be7939;
 Tue, 03 Oct 2023 15:19:49 +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
 393C1Pdv000731; Tue, 3 Oct 2023 13:19:33 GMT
Received: from eur05-am6-obe.outbound.protection.outlook.com
 (mail-am6eur05lp2108.outbound.protection.outlook.com [104.47.18.108])
 by mx0a-0039f301.pphosted.com (PPS) with ESMTPS id 3tfwm445yc-1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT);
 Tue, 03 Oct 2023 13:19:32 +0000
Received: from AS8PR03MB9583.eurprd03.prod.outlook.com (2603:10a6:20b:5aa::18)
 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.6838.30; Tue, 3 Oct
 2023 13:19:28 +0000
Received: from AS8PR03MB9583.eurprd03.prod.outlook.com
 ([fe80::529f:7d90:7f52:64aa]) by AS8PR03MB9583.eurprd03.prod.outlook.com
 ([fe80::529f:7d90:7f52:64aa%4]) with mapi id 15.20.6838.028; Tue, 3 Oct 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: 86e557c0-61ef-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=FcCUuTR4Cx7UOo4UeYTZNc4lOShvWiE3g2Ns9kth/Mun9By+p9xUz17FMauoiB+eTMJXzDvuUEZdFnb4aw00TbWT70XJxZq2dq0AKpSeHQ7kcmFUDKnX5tIf5kJ2hMPj1Bud3BYWYyAvNXIKfkwvWe9HsehbmLAy9pGEEKmPBrEg8NDbExeh4DdK0yjk2Jy8sAKGtsxVjwHvjZYkS5WDiynqIkiSqW9jTD2SZ2X6qotdPhn+1/6l43tJQCllicluQbcMUn3MXadO4ycKBt+f+8KYLIh7Jihh0TRHkSsu9kpere1q51aRkZqbahGuNt3KNtzJCvi5SBfUYNukfUASIQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=KvHWBTV3qInXaP1KeKLliPIbtWRnBWcHHbJeVQAPXFU=;
 b=Jyiqol+WMW90zHmXgal6/oSEicAUTuw9FCSru7ZMcLL5H2v0WHvXBktOiI6bI4fX3lXL4iX0gTI4SjutDeeu9m0qnoHe0tJeo5ZKuvYnKqaxYOxxh2M4eKzoUjltB134/QsxB91JXzYMS6Mz2Bg3FTow2a/L5D3DWibEgLR8v/OmjrxSaqTUK7QmNej22Xj2b9BSdayV5AIOnYVGa9m29vrxVWOLUtwgJmlDX/LPRH8MnOi1snFOzONeST0XY5ZEmntA8pX+KRLuBDuf4yU7CX686M0mrufqHrzPcZseCLICSuZxH7Pe+sjk41gVrosB1Yk3lrInyrpUHBRlWHNukQ==
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=KvHWBTV3qInXaP1KeKLliPIbtWRnBWcHHbJeVQAPXFU=;
 b=VyzXoEz032/ygCBfU8o2DxqTE/b8CfisWdtU0CIt9EUvaNGNot8CjtCSxxLpKAMpmQ3L3pwKt99NgWP0a7o+GibbC+7uEtJ+K/CI/mRhRJAGQ9dDtZK52lAsUcai0Xc1pOrdEGZYjlISMqcpn7AQgWGBnOyy/DiNkXZptu+KVfUeZO8MtY70QNANh3SjGWn+oJF/CmHCXo51RHZpdNrayContVOIKhmDMZJUdW2yGS0XmGwTQr2rpDHHt/kSVmitH9zLep0e6Y6eEISDLzKucjBosA3SVQpU6Zrc8ENn3tKnPTJO9Au8QBEdvAUTHBDrewmlgN6oBVUxSSXDQeZ5MA==
From: Andrii Chepurnyi <Andrii_Chepurnyi@epam.com>
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
CC: Oleksandr Tyshchenko <Oleksandr_Tyshchenko@epam.com>,
        "andrii.chepurnyi82@gmail.com" <andrii.chepurnyi82@gmail.com>,
        Andrii
 Chepurnyi <Andrii_Chepurnyi@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] arm/ioreq: clean data field in ioreq struct on read
 operations
Thread-Topic: [PATCH] arm/ioreq: clean data field in ioreq struct on read
 operations
Thread-Index: AQHZ9fw82LZSu4lXwEi+r3jS4xqDmw==
Date: Tue, 3 Oct 2023 13:19:28 +0000
Message-ID: <20231003131923.2289867-1-andrii_chepurnyi@epam.com>
Accept-Language: uk-UA, en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
x-ms-publictraffictype: Email
x-ms-traffictypediagnostic: AS8PR03MB9583:EE_|DB3PR0302MB9087:EE_
x-ms-office365-filtering-correlation-id: bc743080-2102-499d-bec6-08dbc4135f6f
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: 
 kPNDpz2xaZt6JDP53QHfVvfSW82b2P9AzoGuPxWPJvItvYGv6MPnfx2I5ePNVpQ4j68N+ccaJXqdWoauvnngB5M7FdM6b8PFJ0ezF3sG3x3Fj/uQ6DRRNocTJaFdcBaAfFwCiYqcI05LEyVw4jGJLK0m85jMAMqgWY7MnCkYyQa12T9huRJr8zKSXlplUwNQrmK8f85clbxilq1U93s930gMvyPYS/4p7q4psD/Rsk6C3+/76wfxsgenqHGE81u3A9ZeRrarqcI+7wYoVVcwYQhDCZ8fI+a4Tupyl+YJqq2ZhcsdE/B0QvwjSGs8Mt9llatJLsPbHdVHLkPkbIrMyjXsVHe5q5PPeUVfDbNlhyEwu3hOpholKID+pxVAysER+tcdKSLPs4xC7vMZwelKCHyFVb5phq2xemBUIEjOAX0Z1LleOg51g7GOfMwqFBJRjxwS2pHKR/sXtVw2w8q2VLCh4o+K10eMBe4GZGN9ky/muagznd9gm5M8ktp0GtSGIijW6DtXO9Wf2wf1qBCLYaPZvnBnd1sU2Sx2EskGQnkqqtyOIgU9sMVN/C3vdbpvfkCTjstNs2A1D3yWo79UTT7OTSxPRuQ6my7fPWYck9woPSRwk2+W3ZNdiNIWQiff
x-forefront-antispam-report: 
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR03MB9583.eurprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(136003)(346002)(366004)(396003)(376002)(39860400002)(230922051799003)(451199024)(186009)(1800799009)(64100799003)(107886003)(6486002)(6506007)(2616005)(6512007)(83380400001)(26005)(71200400001)(5660300002)(2906002)(1076003)(66556008)(76116006)(54906003)(6916009)(8676002)(4326008)(66446008)(91956017)(64756008)(66476007)(41300700001)(316002)(8936002)(66946007)(478600001)(36756003)(38070700005)(38100700002)(122000001)(86362001);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: 
 =?iso-8859-1?Q?Zt4EeDsorfnEPFk6Yn/J23pfHXRuxkXfuYesP+2dRAyQcd1TE/nI1xjT4g?=
 =?iso-8859-1?Q?jaZay3cx0FUoJav+oTXx5IclJdnoICyP00w/LOnaQkSQMjHf5N5+Hxhg1n?=
 =?iso-8859-1?Q?yEG5Anfg8vcL5H8ejqgAqorPEmA7iAn30e2W+OXwhanSum/m7gyzlEINL3?=
 =?iso-8859-1?Q?aaPTsitN5ghqfU3LACDSX0/wcdJs5NymUrqK4jz9nmKCAbLB5yhVU9pBdZ?=
 =?iso-8859-1?Q?AaadhbOgIRMj4VPLGZWyu5X4S8ZZF5o1re8teNCvRKw93bertzPrMsSe0T?=
 =?iso-8859-1?Q?nVHZRh8QQp1fD2RzUuhPOebYCo7kT09mSZGzn2J8MZY+S9FolhBVBp/PTK?=
 =?iso-8859-1?Q?i6BRsYrzrdfW8FXhzXXQgib9uvjWKdaJhbIfDTmfdXnZDEcH6DQDBgralH?=
 =?iso-8859-1?Q?2UoYzhiH/MVXIoC5zLpkYZJ8B2Tg2d1TvIvOJw109hzfXGEOxTwpYZHjif?=
 =?iso-8859-1?Q?PO7Ze6Qh/RcpswhHkgv5QY7Ri/N1xNENpVmpPgWo57P9zWR3SpLRYFGde6?=
 =?iso-8859-1?Q?ZguUEhvrtG4dF96NoJap5GRHiAOHOJ+lA1HygYTgbKW2Jq2vaufVBvkr4o?=
 =?iso-8859-1?Q?iBHe+C7R3l8C0ZNFWpHQq0FKfnCZ4GWTCDVnihAkI4BTlInzJiAWci/knr?=
 =?iso-8859-1?Q?gLtWoEJ4qPOrtPHGfsXu/JfW264aPOHMZcXw3P2TDHpVRhEHkplQ1NXxlK?=
 =?iso-8859-1?Q?crkuCJvr46QEr+tkIlGvkwkY8U4oyy61SyEUxZXUaoPJeDF6ZAnUFhJYa9?=
 =?iso-8859-1?Q?0ABKNgYJE/IiOoMH6MUgf+r5vfXMFY5iBG28RERaudeMVqE1iT1xY4dAce?=
 =?iso-8859-1?Q?H5zXsoHjHZCUIPPW5swhnEAvyC5/tp3QPqbPCrXTKvWod0gi0P4y/0YbrK?=
 =?iso-8859-1?Q?9/kSLVs84jK5hUfFqt23eEAr+wPifnuVIV2rlpPcFr9oKHacZA6fpVqK7M?=
 =?iso-8859-1?Q?Oq2ONUPhrI3t/DdsKC0+qs7SqEQFYi5VlPXEPkl5+qCEFL7v6Rh74o2rxp?=
 =?iso-8859-1?Q?aZ0YcaQIGC1v+gvHO+lRWJhyPVoNBEyeiNMJG+mWNu3D0BZdE3D3FkAspb?=
 =?iso-8859-1?Q?0IIJR3KWlK49PcpU4E1h0klxDI/rJ3ypyP1TjiMk/IJPJANPxJ25jrIzWU?=
 =?iso-8859-1?Q?aZUGNKoNL/ZzqpfN4I2h7n/dhKeGovL111VgaR8x+1cYSZ8RACiUdIJ28a?=
 =?iso-8859-1?Q?ioQeDcRl0UmaTPOgTGlNV38nZkLwdb1x1noMqDhenDVQw0EOg5F3fWWE6g?=
 =?iso-8859-1?Q?bgHgxBzAX6kYqw/mv2DI8nsu/ctTHn4JJwLy78HKzecyRkhxqJGvs1b0ss?=
 =?iso-8859-1?Q?hFK4vVNPWV7NIEFZ+XRvyzhATs7rpHQ9LS+eQYAZmhKUTZP50OlBjX6p3Y?=
 =?iso-8859-1?Q?PeWIvKPInoMqY+ovyhYyfUkBwJ7JthrMorzVizqQakDIHZKcYtGR3MKIBU?=
 =?iso-8859-1?Q?XOc8VL4V6ARAIt92TScwwkoXJV9yLPq8D1Aw8KlGbIfxNtgcLp4ElcU/PS?=
 =?iso-8859-1?Q?vli7SE1f5CSxghhRf3wGFbA3DvyDeabDhx5pO1Up5TtsW94p8iJnVfvalU?=
 =?iso-8859-1?Q?oLELhD/UdOE1CpSI9LcCQDTikBBZahqxeIp6IJhu88GiPu1WK2A4twYvv1?=
 =?iso-8859-1?Q?mnxug2YzdWzpXUCblKKOrK+2JjAfXuR2HHjvz2K8GR4Rl4Fpreo9SPLg?=
 =?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: AS8PR03MB9583.eurprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: bc743080-2102-499d-bec6-08dbc4135f6f
X-MS-Exchange-CrossTenant-originalarrivaltime: 03 Oct 2023 13:19:28.7065
 (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: cIV87JqTQBXOFzGH25aqvB00LwVx5IQoY0OpeRSLl5N4GqoKVCRjXxLqEM0EnQfdnfbO1+973ihRMTzuuteI/B/QoI4ZKRHAKjbchWIKN8Q=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB3PR0302MB9087
X-Proofpoint-GUID: F8Ussfko19Ox-aUjXSExsTt3dlwb66o5
X-Proofpoint-ORIG-GUID: F8Ussfko19Ox-aUjXSExsTt3dlwb66o5
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-10-03_10,2023-10-02_01,2023-05-22_02
X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 suspectscore=0 phishscore=0
 malwarescore=0 adultscore=0 impostorscore=0 mlxscore=0 lowpriorityscore=0
 spamscore=0 clxscore=1011 bulkscore=0 priorityscore=1501 mlxlogscore=728
 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2309180000
 definitions=main-2310030097

For read operations, there's a potential issue when the data field
of the ioreq struct is partially updated in the response. To address
this, zero data field during read operations. This modification
serves as a safeguard against implementations that may inadvertently
partially update the data field in response to read requests.
For instance, consider an 8-bit read operation. In such cases, QEMU,
returns the same content of the data field with only 8 bits of
updated data. This behavior could potentially result in the
propagation of incorrect or unintended data to user-space applications.

Signed-off-by: Andrii Chepurnyi <andrii_chepurnyi@epam.com>
---
 xen/arch/arm/ioreq.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/xen/arch/arm/ioreq.c b/xen/arch/arm/ioreq.c
index 3bed0a14c0..aaa2842acc 100644
--- a/xen/arch/arm/ioreq.c
+++ b/xen/arch/arm/ioreq.c
@@ -80,7 +80,7 @@ enum io_state try_fwd_ioserv(struct cpu_user_regs *regs,
=20
     ASSERT(dabt.valid);
=20
-    p.data =3D get_user_reg(regs, info->dabt.reg);
+    p.data =3D (p.dir) ? 0 : get_user_reg(regs, info->dabt.reg);
     vio->req =3D p;
     vio->suspended =3D false;
     vio->info.dabt_instr =3D instr;
--=20
2.25.1


From xen-devel-bounces@lists.xenproject.org Wed Oct 04 13:55:00 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 04 Oct 2023 13:55:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612448.952584 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qo2L6-0001gE-2X; Wed, 04 Oct 2023 13:55:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612448.952584; Wed, 04 Oct 2023 13:55: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 1qo2L5-0001ct-R6; Wed, 04 Oct 2023 13:54:59 +0000
Received: by outflank-mailman (input) for mailman id 612448;
 Wed, 04 Oct 2023 08:42: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=47HB=FS=epam.com=prvs=4641d3e587=andrii_chepurnyi@srs-se1.protection.inumbo.net>)
 id 1qnxSk-00016L-04
 for xen-devel@lists.xenproject.org; Wed, 04 Oct 2023 08:42:34 +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 f4d464dd-6291-11ee-98d3-6d05b1d4d9a1;
 Wed, 04 Oct 2023 10:42:32 +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
 3948DnuJ012554; Wed, 4 Oct 2023 08:42:18 GMT
Received: from eur05-db8-obe.outbound.protection.outlook.com
 (mail-db8eur05lp2104.outbound.protection.outlook.com [104.47.17.104])
 by mx0b-0039f301.pphosted.com (PPS) with ESMTPS id 3th4bwr3hj-1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT);
 Wed, 04 Oct 2023 08:42:18 +0000
Received: from AS8PR03MB9583.eurprd03.prod.outlook.com (2603:10a6:20b:5aa::18)
 by GV2PR03MB9882.eurprd03.prod.outlook.com (2603:10a6:150:b3::22)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.26; Wed, 4 Oct
 2023 08:42:15 +0000
Received: from AS8PR03MB9583.eurprd03.prod.outlook.com
 ([fe80::529f:7d90:7f52:64aa]) by AS8PR03MB9583.eurprd03.prod.outlook.com
 ([fe80::529f:7d90:7f52:64aa%4]) with mapi id 15.20.6838.033; Wed, 4 Oct 2023
 08:42: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: f4d464dd-6291-11ee-98d3-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=cZL74g3KaNrKswnoK7vK6zk2/LeI8NJfJvTymqZqZVd7hGmnTU0SeXbD3ZNLm6gkEoy8SCW3AwFw5ASq843gIxY2pdGXxIxiTm6QO7KN6gScLZTkjuNVgcj9wB28m6CX9eVC2X7LVd1JgxO26z5SLUE2XjqksXyFlfqE2zjFF1sJGSzdBni+yY/7SQ4DcWvsgZFIeveGy5NQL8mNcR5HAGnx3Os1s2nrw2whuD9d34/VjgxfOXR/FaRbXD3swm/sjTGwUmLTixEE7xcNdkNh/kv+vyDHJwRvt3H5DbFEFMcjPgi6YpHZemQgAHE8R8xAh9t191QyHlsTvIyhLcn1RA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=qBT7bNEVWvn3/HceSjgjLVnquEZtLkn7anQp2jkzFxA=;
 b=ct06c5Rl7IjDBgUnFcfv2iTTPJlotoxbqtR+d3XOf5r/Zx6jXRCPntVoUBu2pT6to5WgsKPiKqj4FSa7JVdVJpEP96OHjVWwjo4xfo3FUPzOFk3vNKvBM5gPNL9Ool52dZacEZt5lWBIWg3NsN3jbKjqI/zn59o77D2avTzSQSQCb0UL78wbA4uqt+/hBjIggKjL7bWjk+OdMOvECknqzeJxf+aNnMxjkygqYKgPINyrAOAQm4uxAWfv0SxS1B0kykSxIbWGrKQoIAhtWiFM4RmltGwn7ZzqvuIpL76pu0hTt4Am91iRjaJJoP/OqsQYiSH1h6yZAOYedQEF8/6W3w==
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=qBT7bNEVWvn3/HceSjgjLVnquEZtLkn7anQp2jkzFxA=;
 b=cFQZrioI3PndgIghdJnu+us2m+EGovmjpc1wns9/RkujhGo06MfcfjFV8EHAqxGMvB2qlwV+WFFI6ixawcBdZRVvDmljbgaB5Uz1FN/ztAA8BlciUhciV3hj01coeQR+R/L0OSrhAenPHuG+XSRdWGMegMh8ZRcEer1NWst2jyMfvl8SJojV5VyBZ5/f6j4u3DMkTQM/9yXC6KUueeZwgKBi8S2OKKpWNQVON9+guP75/O/bcnSeWuE/bJdhsW9DrY1E79Cd/8ExRkl/GtNG7U7oleaPR+H0PXBpbw9viTtTDLJaR+mq9fwhmlyrGEYBC4o+c+cJFM2eEGjAe4PSLQ==
From: Andrii Chepurnyi <Andrii_Chepurnyi@epam.com>
To: Julien Grall <julien@xen.org>,
        "xen-devel@lists.xenproject.org"
	<xen-devel@lists.xenproject.org>
CC: Oleksandr Tyshchenko <Oleksandr_Tyshchenko@epam.com>,
        "andrii.chepurnyi82@gmail.com" <andrii.chepurnyi82@gmail.com>,
        Stefano
 Stabellini <sstabellini@kernel.org>,
        Bertrand Marquis
	<bertrand.marquis@arm.com>,
        Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: Re: [PATCH] arm/ioreq: clean data field in ioreq struct on read
 operations
Thread-Topic: [PATCH] arm/ioreq: clean data field in ioreq struct on read
 operations
Thread-Index: AQHZ9fw82LZSu4lXwEi+r3jS4xqDm7A4FMmAgAE8lwA=
Date: Wed, 4 Oct 2023 08:42:15 +0000
Message-ID: <ec7089d1-0111-1e34-900b-b5c40dcb41d2@epam.com>
References: <20231003131923.2289867-1-andrii_chepurnyi@epam.com>
 <27044e68-4a49-4f1d-b8a9-174810efb5fe@xen.org>
In-Reply-To: <27044e68-4a49-4f1d-b8a9-174810efb5fe@xen.org>
Accept-Language: uk-UA, en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
x-ms-publictraffictype: Email
x-ms-traffictypediagnostic: AS8PR03MB9583:EE_|GV2PR03MB9882:EE_
x-ms-office365-filtering-correlation-id: 2230c984-1402-4f39-d6a1-08dbc4b5cf7d
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: 
 UL7/c+aE3PaiijTsaz1I8k3Xha2NwWDHTPIByKc7Mw28lrFdCPbZZ1S08fotTXzai6H/ss604IriPCa/vjakGvLdTlOMUahKFDx76hQP/Nw26p39K64b+Fl42bsaBUsOQMK1r2SibaZzpTbxhVlG5eLCp1LR8MaHoZT7T08mh87NU32PFJrpIPqoEiKGfyeR6JrcpH0iIe9rI1mvK0T6ynRo2n3R+YFW9JJuPhC3IGf/UqVJeA5BGp3sR/SX5EnlRM24vLs+85KaxmmLqSbW7ypDy35VL39e6Dd9m0l3bQ5C5Ioq3rzFKzNI1kzvyDXuHtAqZSPnN0Iqr5IPCxzcojmASgTKB6EvJENn6syUwaeTe55lcDrru4e0z4MEHAzli7RKTkD/FRp04BqU1Ue5YSVlOGhk4WGsNzYbZVCAtF2aW+1wfj6p/Z3gG/wSg6um5vPXrjoVaLp4Rvia9j61An91zSkWmVmT9NtjxJkEib2sCZdNWYB3rp3Ky0gZ5GHIVu7U6JbKey22SAVj9npuweaca+iNZWaEBxsUkrtZ2PZ3aFWxTsU/seWG0jlc5HIhdzolqZXr5Oz8/d8vi8qaKdzGGFosEWBDACY3AX4f/lj0I0ZB139xKgEqKUGZRAckrdXL6XiuOIV5Sw3cISoovw==
x-forefront-antispam-report: 
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR03MB9583.eurprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376002)(136003)(39860400002)(366004)(346002)(396003)(230922051799003)(64100799003)(186009)(451199024)(1800799009)(38100700002)(38070700005)(478600001)(316002)(91956017)(66556008)(54906003)(64756008)(66476007)(66946007)(110136005)(66446008)(2616005)(36756003)(6486002)(83380400001)(53546011)(107886003)(26005)(6506007)(76116006)(122000001)(6512007)(71200400001)(31696002)(86362001)(2906002)(31686004)(41300700001)(4326008)(8936002)(8676002)(5660300002)(45980500001);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: 
 =?utf-8?B?NU4xQjlybHhzNjNJcjZwWlVRNEVwTmpRdlg0eUVJc09IdXlycGNpVko5VE4r?=
 =?utf-8?B?L0V1S2taWlY1ay9BUXJsRjdaTVZzVzRFTXFlalovbVQ3VWxJMG5CL2lHZCtj?=
 =?utf-8?B?TzVsdlhhNjl3SjM2LzkwSDVSTnlDKzFNblNDZzFyZTBvdjZ6bzJXVnpJZGp4?=
 =?utf-8?B?VTdtVEEraUVDNnBNT1dZbG9KZXZqZXEra3p3SnFhcExIUjFPcmRrY3FGS3VJ?=
 =?utf-8?B?TjRaY3IyVWh0Zk04cDYzazJWdjdHWWlQaUVCOHcwVmIza3NraVFiY2lvcUx6?=
 =?utf-8?B?SXNuWHl2cHFsQndFT3U2M29aSjRwWU9DOWhsSkNoUGVuNnArOTljWmZMRmQz?=
 =?utf-8?B?M0tLcTR5YXJFRWY3Z1U0elJoeDkybWd2aXhOUE5xOG1zWS9nbmgwTGJHdm00?=
 =?utf-8?B?cGdvNlc5L01FbnN6Y25odHpGK3NzbzdaS1BiWjJ6SXBHSGlBbDFiZThXWnJT?=
 =?utf-8?B?c0ZrcnBVYVE2QU9mSGc1aVhPWnhCTExvUkcyUFJDd0dxTzQ2eFdrVVFUaXpO?=
 =?utf-8?B?bmdPV2lPOGlkbzBGN2tOV1IxUUxFb29IcnozUDFvOEJXS0dncEJtSDZpQU5O?=
 =?utf-8?B?aVF0a2xsYnF2TmtKY1BlVTA4bUNXVzRDdnI2c08yNWMrL2xzSzhpQVBrNnJt?=
 =?utf-8?B?VzhVc3ZmNzR5OUNKa05NOVFhell6MWxkekI1OXZ4OStGYjc4SmJBNFVMa0N0?=
 =?utf-8?B?dUx0N3VCQ1Mrb2pwZUNidGlNSkZibGxBNDFkdXlHamJXOHVMWjZpQkd5WEl2?=
 =?utf-8?B?VU5TY0twRzBmWU9CdEExcWVLMWlaRkJkTUFLWXNQK2E2UDlNem1yZVVYWkRI?=
 =?utf-8?B?VUNsdyt0aldsR00vRHJIR25UUlpYRk85UG5JblpJN3JwaWw5UWgxMk56UGk0?=
 =?utf-8?B?c2pNdkNHZkR3OTl6KzFCcENKTTllVmRjWGl6QUxLVzRoYWRCN09RU1ptajBP?=
 =?utf-8?B?TXlyaFdaM2ZsV3J1RVRBV3Fyb09aOTdBNHFVK3JtdkovL0tHQUxNRCtwaFBU?=
 =?utf-8?B?NmpGWUMwMFBVRjcyOXVjcEdZYzFCYTVHNUJmQUp3dnJDQ2dSSmZuaVhXeWEy?=
 =?utf-8?B?cDlrQUFTQkw0SEtSK0YyejRmVXZTbmNEazNpQzE4QmdmL0xJRkZWZ3pWSy81?=
 =?utf-8?B?eUxhWEtCU1NQZ3V6RWI4VGdaVVpjYTVOTGFZbXhSdE0zdGdLRDhKaHpad0Fz?=
 =?utf-8?B?M3U3Y2Nzd3J5WTlKbmtmYVV2SzhzbVNyTUJxOVpjMWkxSWlyM3EwQ0V5ajE0?=
 =?utf-8?B?VGF4OWo5UkJPK3FyTWVEcW0zMjRIamZPREFCSzN2a3Nib1RDblFUTVFGZHJV?=
 =?utf-8?B?L2pDMVFpRkc1QzlqWDJ5SEEzbS84QkZFODlESElNSUd4TDFsOHZ0NThZaUs4?=
 =?utf-8?B?bFNQOHFTVTl2TlZOVzBRUFljM3lNZ3h1eUpoMGE4Zkx6c3A0bk00UGRTakw3?=
 =?utf-8?B?dnpVN3A1YnlMWjJCelpzdExNWVg5U1h0cXVpRmZBOUZteVBBS25WSzM3dDNR?=
 =?utf-8?B?M0JiemhuQkNUYnBTbnpLZW5ROUpzOW5CakZ4b1FQMXJ1VSsxWnBPMzF0K0o1?=
 =?utf-8?B?Z0RqcjVhNWFWTFF5M05RYndSUUQzK3dwWlFQVU5Ici93eGVyb3BzWWZKbk9X?=
 =?utf-8?B?QjBJTnJPRUI0SkhDclpucmJMZkwxTWRMTXppa2ZjVkFWVVVEdGsvSVcwdi9m?=
 =?utf-8?B?dFdFVmxOYjdkTVJQd3liUHFZTnNMWEZaajUxSW9tZkVUbHFSV2ovZTdUV2Iy?=
 =?utf-8?B?Nm1xQ1MwK2NHblQ4ZHdUVHc1elBXYnRlMVlVOEg2dW1ndzdjMGFOWmNLOTQw?=
 =?utf-8?B?ZXNSS2dBOGFnUFVzVDMzamd1aWVTY2VBdHNJcUhEemFTd0RheS9jcWlhbHZL?=
 =?utf-8?B?NUprelhpclZSQmxmMlNRQk1mdjBuS0xSQTlLdktZOVVGYzhyZlFNRjNJb1pP?=
 =?utf-8?B?allmODRGSzN0ZG1oM3ZLTkFZdHRJTjhnbkkxZmk5R3BiRll0aCtUWlN1Zkt5?=
 =?utf-8?B?cDJuTUI1Sy91dmJhMTFvRzFRRVA2OW4vUFgzMG9DN2FkTlRMNlcyWGxOTDlV?=
 =?utf-8?B?NmNLcmdQa1IvaW5vOGZ5V0h3YmxzcDNMWXFQWm5reWFyMzJXRTlxUmtXQTFQ?=
 =?utf-8?B?VE1TdVdtYXJUemYxekMzV3NPWlhIbmRtTG8rV2JiZkU1SGZkMm9yOVQvRU56?=
 =?utf-8?B?ZkE9PQ==?=
Content-Type: text/plain; charset="utf-8"
Content-ID: <851670D2656E4843960EF6769A0A4452@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: AS8PR03MB9583.eurprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 2230c984-1402-4f39-d6a1-08dbc4b5cf7d
X-MS-Exchange-CrossTenant-originalarrivaltime: 04 Oct 2023 08:42:15.1743
 (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: Dcr6Fl3lSVrFu2fXxo6QUaDglEMKMKQnVK6BSAKunMVrnajkjWffHAJYg/xIaQc15BqflNmHUSuXMDps0bRc+40cSBJBuNYrH801FIv/Th4=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV2PR03MB9882
X-Proofpoint-ORIG-GUID: Wj0uF7w4s8rgGwlhN9xFKq_MWWWWffkc
X-Proofpoint-GUID: Wj0uF7w4s8rgGwlhN9xFKq_MWWWWffkc
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-10-04_01,2023-10-02_01,2023-05-22_02
X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 lowpriorityscore=0
 suspectscore=0 phishscore=0 mlxlogscore=999 impostorscore=0 clxscore=1015
 mlxscore=0 bulkscore=0 malwarescore=0 priorityscore=1501 spamscore=0
 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1
 engine=8.12.0-2309180000 definitions=main-2310040061

SGVsbG8sDQoNCk9uIDEwLzMvMjMgMTY6NDksIEp1bGllbiBHcmFsbCB3cm90ZToNCj4gSGksDQo+
IA0KPiBPbiAwMy8xMC8yMDIzIDE0OjE5LCBBbmRyaWkgQ2hlcHVybnlpIHdyb3RlOg0KPj4gRm9y
IHJlYWQgb3BlcmF0aW9ucywgdGhlcmUncyBhIHBvdGVudGlhbCBpc3N1ZSB3aGVuIHRoZSBkYXRh
IGZpZWxkDQo+PiBvZiB0aGUgaW9yZXEgc3RydWN0IGlzIHBhcnRpYWxseSB1cGRhdGVkIGluIHRo
ZSByZXNwb25zZS4gVG8gYWRkcmVzcw0KPj4gdGhpcywgemVybyBkYXRhIGZpZWxkIGR1cmluZyBy
ZWFkIG9wZXJhdGlvbnMuIFRoaXMgbW9kaWZpY2F0aW9uDQo+PiBzZXJ2ZXMgYXMgYSBzYWZlZ3Vh
cmQgYWdhaW5zdCBpbXBsZW1lbnRhdGlvbnMgdGhhdCBtYXkgaW5hZHZlcnRlbnRseQ0KPj4gcGFy
dGlhbGx5IHVwZGF0ZSB0aGUgZGF0YSBmaWVsZCBpbiByZXNwb25zZSB0byByZWFkIHJlcXVlc3Rz
Lg0KPj4gRm9yIGluc3RhbmNlLCBjb25zaWRlciBhbiA4LWJpdCByZWFkIG9wZXJhdGlvbi4gSW4g
c3VjaCBjYXNlcywgUUVNVSwNCj4+IHJldHVybnMgdGhlIHNhbWUgY29udGVudCBvZiB0aGUgZGF0
YSBmaWVsZCB3aXRoIG9ubHkgOCBiaXRzIG9mDQo+PiB1cGRhdGVkIGRhdGEuIA0KPiANCj4gRG8g
eW91IGhhdmUgYSBwb2ludGVyIHRvIHRoZSBjb2RlPw0KDQpGaXJzdCBvZiBhbGwsIHVzaW5nIHRo
ZSB0ZXJtICJ1c2VyLXNwYWNlIiB3aXRoIHJlc3BlY3QgdG8gdGhpcyBwcm9ibGVtIA0Kd2FzIGEg
bWlzdGFrZSBmcm9tIG15IHNpZGUuDQoNCkluIGdlbmVyYWwsIG15IHVzZSBjYXNlIGlzIHRvIHJ1
biB1LWJvb3Qgd2l0aCB2aXJ0aW8tYmxrIGluc2lkZSB0aGUgDQpndWVzdCBkb21haW4uDQpJLmUu
IHNldHVwIGNvbmZpZ3VyYXRpb24oaGFyZHdhcmUgcmVuZXNhcyBnZW4zIGtpbmdmaXNoZXIgYm9h
cmQpOiAgRG9tMCwgDQpEb21EICggUUVNVSBhcyBiYWNrZW5kKSBhbmQgcnVubmluZyB1LWJvb3Qg
aW4gRG9tQSB3aXRoIHZpcnRpby1ibGsuDQpUaGUgcHJvYmxlbSBhcHBlYXJlZCBpbnNpZGUgdGhl
IHUtYm9vdCBjb2RlIDoNCg0Kc3RhdGljIGludCB2aXJ0aW9fcGNpX3Jlc2V0KHN0cnVjdCB1ZGV2
aWNlICp1ZGV2KQ0Kew0KCXN0cnVjdCB2aXJ0aW9fcGNpX3ByaXYgKnByaXYgPSBkZXZfZ2V0X3By
aXYodWRldik7DQoNCgkvKiAwIHN0YXR1cyBtZWFucyBhIHJlc2V0ICovDQoJaW93cml0ZTgoMCwg
JnByaXYtPmNvbW1vbi0+ZGV2aWNlX3N0YXR1cyk7DQoNCgkvKg0KCSAqIEFmdGVyIHdyaXRpbmcg
MCB0byBkZXZpY2Vfc3RhdHVzLCB0aGUgZHJpdmVyIE1VU1Qgd2FpdCBmb3IgYSByZWFkDQoJICog
b2YgZGV2aWNlX3N0YXR1cyB0byByZXR1cm4gMCBiZWZvcmUgcmVpbml0aWFsaXppbmcgdGhlIGRl
dmljZS4NCgkgKiBUaGlzIHdpbGwgZmx1c2ggb3V0IHRoZSBzdGF0dXMgd3JpdGUsIGFuZCBmbHVz
aCBpbiBkZXZpY2Ugd3JpdGVzLA0KCSAqIGluY2x1ZGluZyBNU0ktWCBpbnRlcnJ1cHRzLCBpZiBh
bnkuDQoJICovDQoJd2hpbGUgKGlvcmVhZDgoJnByaXYtPmNvbW1vbi0+ZGV2aWNlX3N0YXR1cykp
DQoJCXVkZWxheSgxMDAwKTsNCg0KCXJldHVybiAwOw0KfQ0KDQoNCkkgZm91bmQgdGhhdCBpZiB1
LWJvb3Qgd2FzIGJ1aWx0IHdpdGggY2xhbmcsIGl0IHN0dWNrIGluIHdoaWxlIGluIA0KdmlydGlv
X3BjaV9yZXNldCBmb3JldmVyLiBBdCB0aGUgc2FtZSB0aW1lIHdpdGggZ2NjIGlzIHdvcmtpbmcu
DQoNCkhlcmUgaXMgYSBwYXJ0IGRpc2Fzc2VtYmx5IG9mIHRoZSB2aXJ0aW9fcGNpX3Jlc2V0IGZv
ciBib3RoIGNhc2VzOg0KDQpnY2M6DQoNCjAwMDAwMDAwMDAwMDAwMDAgPHZpcnRpb19wY2lfcmVz
ZXQ+Og0KICAgIDA6ICAgYTliZTdiZmQgICAgICAgIHN0cCAgICAgeDI5LCB4MzAsIFtzcCwgIy0z
Ml0hDQogICAgNDogICA5MTAwMDNmZCAgICAgICAgbW92ICAgICB4MjksIHNwDQogICAgODogICBm
OTAwMGJmMyAgICAgICAgc3RyICAgICB4MTksIFtzcCwgIzE2XQ0KICAgIGM6ICAgOTQwMDAwMDAg
ICAgICAgIGJsICAgICAgMCA8ZGV2X2dldF9wcml2Pg0KICAgMTA6ICAgYWEwMDAzZjMgICAgICAg
IG1vdiAgICAgeDE5LCB4MA0KICAgMTQ6ICAgZjk0MDAwMDAgICAgICAgIGxkciAgICAgeDAsIFt4
MF0NCiAgIDE4OiAgIGQ1MDMzZmJmICAgICAgICBkbWIgICAgIHN5DQogICAxYzogICAzOTAwNTAx
ZiAgICAgICAgc3RyYiAgICB3enIsIFt4MCwgIzIwXQ0KICAgMjA6ICAgZjk0MDAyNjAgICAgICAg
IGxkciAgICAgeDAsIFt4MTldDQogICAyNDogICAzOTQwNTAwMCAgICAgICAgbGRyYiAgICB3MCwg
W3gwLCAjMjBdDQogICAyODogICAxMjAwMWMwMCAgICAgICAgYW5kICAgICB3MCwgdzAsICMweGZm
DQogICAyYzogICBkNTAzM2ZiZiAgICAgICAgZG1iICAgICBzeQ0KICAgMzA6ICAgMzUwMDAwODAg
ICAgICAgIGNibnogICAgdzAsIDQwIDx2aXJ0aW9fcGNpX3Jlc2V0KzB4NDA+DQogICAzNDogICBm
OTQwMGJmMyAgICAgICAgbGRyICAgICB4MTksIFtzcCwgIzE2XQ0KICAgMzg6ICAgYThjMjdiZmQg
ICAgICAgIGxkcCAgICAgeDI5LCB4MzAsIFtzcF0sICMzMg0KICAgM2M6ICAgZDY1ZjAzYzAgICAg
ICAgIHJldA0KICAgNDA6ICAgZDI4MDdkMDAgICAgICAgIG1vdiAgICAgeDAsICMweDNlOCAgICAg
ICAgICAgICAgICAgICAgICAvLyAjMTAwMA0KICAgNDQ6ICAgOTQwMDAwMDAgICAgICAgIGJsICAg
ICAgMCA8dWRlbGF5Pg0KICAgNDg6ICAgMTdmZmZmZjYgICAgICAgIGIgICAgICAgMjAgPHZpcnRp
b19wY2lfcmVzZXQrMHgyMD4NCg0KDQpjbGFuZzoNCg0KMDAwMDAwMDAwMDAwMDAwMCA8dmlydGlv
X3BjaV9yZXNldD46DQogICAgMDogICBhOWJlN2JmZCAgICAgICAgc3RwICAgICB4MjksIHgzMCwg
W3NwLCAjLTMyXSENCiAgICA0OiAgIGY5MDAwYmYzICAgICAgICBzdHIgICAgIHgxOSwgW3NwLCAj
MTZdDQogICAgODogICA5MTAwMDNmZCAgICAgICAgbW92ICAgICB4MjksIHNwDQogICAgYzogICA5
NDAwMDAwMCAgICAgICAgYmwgICAgICAwIDxkZXZfZ2V0X3ByaXY+DQogICAxMDogICBmOTQwMDAw
OCAgICAgICAgbGRyICAgICB4OCwgW3gwXQ0KICAgMTQ6ICAgZDUwMzNmYmYgICAgICAgIGRtYiAg
ICAgc3kNCiAgIDE4OiAgIDM5MDA1MTFmICAgICAgICBzdHJiICAgIHd6ciwgW3g4LCAjMjBdDQog
ICAxYzogICBmOTQwMDAwOCAgICAgICAgbGRyICAgICB4OCwgW3gwXQ0KICAgMjA6ICAgMzk0MDUx
MDggICAgICAgIGxkcmIgICAgdzgsIFt4OCwgIzIwXQ0KICAgMjQ6ICAgZDUwMzNmYmYgICAgICAg
IGRtYiAgICAgc3kNCiAgIDI4OiAgIDM0MDAwMTA4ICAgICAgICBjYnogICAgIHc4LCA0OCA8dmly
dGlvX3BjaV9yZXNldCsweDQ4Pg0KICAgMmM6ICAgYWEwMDAzZjMgICAgICAgIG1vdiAgICAgeDE5
LCB4MA0KICAgMzA6ICAgNTI4MDdkMDAgICAgICAgIG1vdiAgICAgdzAsICMweDNlOCAgICAgICAg
ICAgICAgICAgICAgICAvLyAjMTAwMA0KICAgMzQ6ICAgOTQwMDAwMDAgICAgICAgIGJsICAgICAg
MCA8dWRlbGF5Pg0KICAgMzg6ICAgZjk0MDAyNjggICAgICAgIGxkciAgICAgeDgsIFt4MTldDQog
ICAzYzogICAzOTQwNTEwOCAgICAgICAgbGRyYiAgICB3OCwgW3g4LCAjMjBdDQogICA0MDogICBk
NTAzM2ZiZiAgICAgICAgZG1iICAgICBzeQ0KICAgNDQ6ICAgMzVmZmZmNjggICAgICAgIGNibnog
ICAgdzgsIDMwIDx2aXJ0aW9fcGNpX3Jlc2V0KzB4MzA+DQogICA0ODogICBmOTQwMGJmMyAgICAg
ICAgbGRyICAgICB4MTksIFtzcCwgIzE2XQ0KICAgNGM6ICAgMmExZjAzZTAgICAgICAgIG1vdiAg
ICAgdzAsIHd6cg0KICAgNTA6ICAgYThjMjdiZmQgICAgICAgIGxkcCAgICAgeDI5LCB4MzAsIFtz
cF0sICMzMg0KICAgNTQ6ICAgZDY1ZjAzYzAgICAgICAgIHJldA0KDQoNCkFzIHlvdSBtYXkgZm91
bmQsIGluIGNhc2Ugb2YgZ2NjIHJlYWQgb2YgOCBiaXQgZGF0YSA6DQoNCiAgIDI0OiAgIDM5NDA1
MDAwICAgICAgICBsZHJiICAgIHcwLCBbeDAsICMyMF0NCiAgIDI4OiAgIDEyMDAxYzAwICAgICAg
ICBhbmQgICAgIHcwLCB3MCwgIzB4ZmYNCiAgIDJjOiAgIGQ1MDMzZmJmICAgICAgICBkbWIgICAg
IHN5DQoNCmluIGNhc2Ugb2YgY2xhbmc6DQoNCiAgIDIwOiAgIDM5NDA1MTA4ICAgICAgICBsZHJi
ICAgIHc4LCBbeDgsICMyMF0NCiAgIDI0OiAgIGQ1MDMzZmJmICAgICAgICBkbWIgICAgIHN5DQoN
CmluIHNlY29uZCBjYXNlIHdlIGdvdCB0cmFzaCBpbnNpZGUgdXBwZXIgYml0cyB3OCBhbmQgbG9v
cCBmb3JldmVyLg0KDQoNCj4gDQo+PiBUaGlzIGJlaGF2aW9yIGNvdWxkIHBvdGVudGlhbGx5IHJl
c3VsdCBpbiB0aGUNCj4+IHByb3BhZ2F0aW9uIG9mIGluY29ycmVjdCBvciB1bmludGVuZGVkIGRh
dGEgdG8gdXNlci1zcGFjZSBhcHBsaWNhdGlvbnMuDQo+IA0KPiBJIGFtIGEgYml0IGNvbmZ1c2Vk
IHdpdGggdGhlIGxhc3Qgc2VudGVuY2UuIEFyZSB5b3UgcmVmZXJyaW5nIHRvIHRoZSANCj4gZGV2
aWNlIGVtdWxhdG9yIG9yIGEgZ3Vlc3QgdXNlci1zcGFjZSBhcHBsaWNhdGlvbnM/IElmIHRoZSBs
YXR0ZXIsIHRoZW4gDQo+IHdoeSBhcmUgeW91IHNpbmdsaW5nIG91dCB1c2VyLXNwYWNlIGFwcGxp
Y2F0aW9ucz8NCg0KSSB3aWxsIHJlcGhyYXNlIGRlc2NyaXB0aW9uLCBzaW5jZSB1LWJvb3QgaXMg
bm90IGEgInVzZXItc3BhY2UgDQphcHBsaWNhdGlvbnMiLg0KDQo+IFRvIHRha2UgdGhlIDgtYml0
cyBleGFtcGxlLCB0aGUgYXNzdW1wdGlvbiBpcyB0aGF0IFFFTVUgd2lsbCBub3QgdG91Y2ggDQo+
IHRoZSB0b3AgMjQtYml0cy4gSSBndWVzcyB0aGF0J3MgYSBmYWlyIGFzc3VtcHRpb24uIEJ1dCwg
YXQgdGhpcyBwb2ludCwgSSANCj4gZmVlbCBpdCB3b3VsZCBiZSBiZXR0ZXIgdG8gYWxzbyB6ZXJv
IHRoZSB0b3AgMjQtYml0cyBpbiBoYW5kbGVfaW9zZXJ2KCkgDQo+IHdoZW4gd3JpdGluZyBiYWNr
IHRvIHRoZSByZWdpc3Rlci4NCj4gDQo+IEFsc28sIGlmIHlvdSBhcmUgd29ycmllZCBhYm91dCB1
bmludGVuZGVkIGRhdGEgc2hhcmVkLCB0aGVuIHdlIHNob3VsZCANCj4gYWxzbyBtYWtlIHRoZSB2
YWx1ZSBvZiBnZXRfdXNlcl9yZWcoKSB0byBvbmx5IHNoYXJlIHdoYXQgbWF0dGVycyB0byB0aGUg
DQo+IGRldmljZSBtb2RlbC4NCg0KT2ssIEkgd2lsbCBwdXNoIHYyIHdpdGggcmVzcGVjdCB0byB5
b3VyIGNvbW1lbnRzLg0KDQpCZXN0IHJlZ2FyZHMsDQpBbmRyaWkuDQo=


From xen-devel-bounces@lists.xenproject.org Wed Oct 04 14:06:32 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 04 Oct 2023 14:06:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612609.952604 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qo2W9-0005yS-98; Wed, 04 Oct 2023 14:06:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612609.952604; Wed, 04 Oct 2023 14:06: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 1qo2W9-0005yL-6K; Wed, 04 Oct 2023 14:06:25 +0000
Received: by outflank-mailman (input) for mailman id 612609;
 Wed, 04 Oct 2023 14:06: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 1qo2W8-0005yF-7t
 for xen-devel@lists.xenproject.org; Wed, 04 Oct 2023 14:06: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 1qo2W1-0004TN-Dq; Wed, 04 Oct 2023 14:06:17 +0000
Received: from [15.248.2.150] (helo=[10.24.67.38])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qo2W1-00065x-7Z; Wed, 04 Oct 2023 14:06: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=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=pbgTrSMoQQVNXJMftgHZ3iYvOBQvqvgODOb60X5PazA=; b=7MX/DgdUBSl0ITCD1LUrG1+/bb
	FS0kWPB5U4ATbyn6fec7kwp/iPKHd7VVAIxYg4WPeTwaRyLj+3d/K7Ui6z4k88bnnGP5R6tDpcZpO
	SMsQcYwAhNBkGo4sgWrOWOeByg2xOFykAV5W86SnWZuT7CyEo5gDPhW2MRECRAgOIsEY=;
Message-ID: <fe94dcd2-4429-48df-8ebd-59563d43796a@xen.org>
Date: Wed, 4 Oct 2023 15:06:14 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: Issue with shared information page on Xen/ARM 4.17
Content-Language: en-GB
To: =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>
Cc: Elliott Mitchell <ehem+xen@m5p.com>, xen-devel@lists.xenproject.org,
 Stefano Stabellini <sstabellini@kernel.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>
References: <ZRY7Ls3p6M6pakMq@mattapan.m5p.com>
 <ZRvQNKyYpLDVTs0i@MacBookPdeRoger> <ZRxpC7ukhiYvzz5m@mattapan.m5p.com>
 <ZR0erl_OSkNgIQjx@MacBookPdeRoger>
 <c0b67401-dfe5-475f-8640-b66ac32a80fb@xen.org>
 <ZR1gM19i6-vBaXh7@MacBookPdeRoger>
 <b00500ae-76b1-441c-8154-bcdd897734dc@xen.org>
 <ZR1rBP_49Y2V8VF6@MacBookPdeRoger>
From: Julien Grall <julien@xen.org>
In-Reply-To: <ZR1rBP_49Y2V8VF6@MacBookPdeRoger>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

Hi Roger,

On 04/10/2023 14:39, Roger Pau Monné wrote:
> On Wed, Oct 04, 2023 at 02:03:43PM +0100, Julien Grall wrote:
>> Hi Roger,
>>
>> On 04/10/2023 13:53, Roger Pau Monné wrote:
>>> On Wed, Oct 04, 2023 at 11:55:05AM +0100, Julien Grall wrote:
>>>> Hi Roger,
>>>>
>>>> On 04/10/2023 09:13, Roger Pau Monné wrote:
>>>>> On Tue, Oct 03, 2023 at 12:18:35PM -0700, Elliott Mitchell wrote:
>>>>>> On Tue, Oct 03, 2023 at 10:26:28AM +0200, Roger Pau Monné wrote:
>>>>>>> On Thu, Sep 28, 2023 at 07:49:18PM -0700, Elliott Mitchell wrote:
>>>>>>>> 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.
>>>>>>>
>>>>>>> This is due to 71320946d5edf AFAICT.
>>>>>>
>>>>>> Yes.  While the -EBUSY line may be the one triggering, I'm unsure why.
>>>>>> This seems a fairly reasonable change, so I had no intention of asking
>>>>>> for a revert (which likely would have been rejected).  There is also a
>>>>>> real possibility the -EBUSY comes from elsewhere.  Could also be
>>>>>> 71320946d5edf caused a bug elsewhere to be exposed.
>>>>>
>>>>> A good way to know would be to attempt to revert 71320946d5edf and see
>>>>> if that fixes your issue.
>>>>>
>>>>> Alternatively you can try (or similar):
>>>>>
>>>>> diff --git a/xen/arch/arm/mm.c b/xen/arch/arm/mm.c
>>>>> index 6ccffeaea57d..105ef3faecfd 100644
>>>>> --- a/xen/arch/arm/mm.c
>>>>> +++ b/xen/arch/arm/mm.c
>>>>> @@ -1424,6 +1424,8 @@ int xenmem_add_to_physmap_one(
>>>>>                     page_set_xenheap_gfn(mfn_to_page(mfn), gfn);
>>>>>             }
>>>>>             else
>>>>> +        {
>>>>> +            printk("%u already mapped\n", space);
>>>>>                 /*
>>>>>                  * Mandate the caller to first unmap the page before mapping it
>>>>>                  * again. This is to prevent Xen creating an unwanted hole in
>>>>> @@ -1432,6 +1434,7 @@ int xenmem_add_to_physmap_one(
>>>>>                  * to unmap it afterwards.
>>>>>                  */
>>>>>                 rc = -EBUSY;
>>>>> +        }
>>>>>             p2m_write_unlock(p2m);
>>>>>         }
>>>>>
>>>>>>>> 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?
>>>>>>>
>>>>>>> I think the issue is that you are mapping the shared info page over a
>>>>>>> guest RAM page, and in order to do that you would fist need to create
>>>>>>> a hole and then map the shared info page.  IOW: the issue is not with
>>>>>>> edk2 not having unmapped the page, but with FreeBSD trying to map the
>>>>>>> shared_info over a RAM page instead of a hole in the p2m.  x86
>>>>>>> behavior is different here, and does allow mapping the shared_info
>>>>>>> page over a RAM gfn (by first removing the backing RAM page on the
>>>>>>> gfn).
>>>>>>
>>>>>> An interesting thought.  I thought I'd tried this, but since I didn't see
>>>>>> such in my experiments list.  What I had tried was removing all the pages
>>>>>> in the suggested mapping range.  Yet this failed.
>>>>>
>>>>> Yeah, I went too fast and didn't read the code correctly, it is not
>>>>> checking that the provided gfn is already populated, but whether the
>>>>> mfn intended to be mapped is already mapped at a different location.
>>>>>
>>>>>> Since this seemed reasonable, I've now tried and found it fails.  The
>>>>>> XENMEM_remove_from_physmap call returns 0.
>>>>>
>>>>> XENMEM_remove_from_physmap returning 0 is fine, but it seems to me
>>>>> like edk2 hasn't unmapped the shared_info page.  The OS has no idea
>>>>> at which position the shared_info page is currently mapped, and hence
>>>>> can't do anything to attempt to unmap it in order to cover up for
>>>>> buggy firmware.
>>>>>
>>>>> edk2 should be the entity to issue the XENMEM_remove_from_physmap
>>>>> against the gfn where it has the shared_info page mapped.  Likely
>>>>> needs to be done as part of ExitBootServices() method.
>>>>>
>>>>> FWIW, 71320946d5edf is an ABI change, and as desirable as such
>>>>> behavior might be, a new hypercall should have introduced that had the
>>>>> behavior that the change intended to retrofit into
>>>>> XENMEM_add_to_physmap.
>>>> I can see how you think this is an ABI change but the previous behavior was
>>>> incorrect. Before this patch, on Arm, we would allow the shared page to be
>>>> mapped twice. As we don't know where the firmware had mapped it this could
>>>> result to random corruption.
>>>>
>>>> Now, we could surely decide to remove the page as x86 did. But this could
>>>> leave a hole in the RAM. As the OS would not know where the hole is, this
>>>> could lead to page fault randomly during runtime.
>>>
>>> I would say it's the job of the firmware to notify the OS where the
>>> hole is, by modifying the memory map handled to the OS.  Or else
>>> mapping the shared_info page in an unpopulated p2m hole.
>>
>> I agree but I am not convinced that they are all doing it. At least U-boot
>> didn't do it before we fixed it.
>>
>>>
>>> When using UEFI there's RAM that will always be in-use by the
>>> firmware, as runtime services cannot be shut down, and hence the
>>> firmware must already have a way to remove/reserve such region(s) on
>>> the memory map.
>>
>> Can either you or Elliott confirm if EDK2 reserve the region?
> 
> I will defer to Elliott to check for arm.  I would be quite surprised
> if it doesn't on x86, or else we would get a myriad of bug reports
> about guests randomly crashing when using edk2.
> 
>>>
>>>> Neither of the two behaviors help the users. In fact, I think they only make
>>>> the experience worse because you don't know when the issue will happen.
>>>>
>>>> AFAICT, there is no way for an HVM guestto know which GFN was inuse. So in
>>>> all the cases, I can't think of a way for the OS to workaround properly
>>>> buggy firmware. Therefore, returning -EBUSY is the safest we can do for our
>>>> users and I don't view it as a ABI change (someone rely on the previous
>>>> behavior is bound to failure).
>>>
>>> I fully agree the current behavior might not be the best one, but I do
>>> consider this part of the ABI, specially as booting guests using edk2
>>> has now stopped working after this change.
>>
>> Right. If we remove the check, you may be able to boot a guest. But are we
>> sure that such guest would run safely?
> 
> If the guest wants the hypervisor to enforce such behavior, let it
> use the new hypercall to explicitly request the shared_info page to
> not be mapped anywhere else.

TBH, I am not convinced the new hypercall is going to help. Let say we 
decide to modify FreeBSD/Linux to use it, The old EDK2 firmware would 
still be buggy and this would prevent boot. So we are back the same 
problem...

We could also say we don't support older firmware. But that's not very 
different from leaving the hypercall as-is and fix EDK2

> 
> But if you don't trust the bootloader, how do you know it hasn't poked
> holes elsewhere in the RAM regions?

We don't know. But how do you know the bootloader will not want to 
continue using the vCPU shared page?

For instance, the public headers doesn't seem to mention that the page 
can only mapped once and it would unmap the previous area. In fact, for 
Arm, until that commit shared page could be mapped N times... So 
technically even if we remove the page, the commit already made an ABI 
change. Yes it is now more inline with x86 but this doesn't this is 
still an ABI change. I would be surprised if you say we should not have 
done that because (in particular if you have XSA-379 in mind).

> 
> Even if the shared_info page has been unmapped, can you be sure the
> bootloader has put a RAM page back in that gfn?

We can't. But the same goes with the bootloader reserving the region...

> 
> I understand this ABI change is done to avoid bugs, but at the cost of
> diverging from x86, and breaking existing firmwares which might not be
> buggy.
As I pointed out above, the exact behavior of the hypercall is not fully 
documented and the behavior has changed with some XSAs. So this is no 
surprise if Arm and x86 behaved differently (even before that commit).

There are plenty of behavior I considered wrong in the way x86 update 
the P2M and I would be concerned if we don't give any leeway for the 
architectures to tighten the update. BTW some checks have evolved over 
the time during security event (XSA-378 for example).

This is not very different here. For Arm we decided to not follow a 
behavior that I consider incorrect and potentially more harmful than 
trying to support bootloader not removing the shared page.

If we want to handle such firmware, I think it would be better if we 
provide an hypercall that would return the GFN where it is currently mapped.

> 
>> Also, it is not really argument, but this is not the only broken part in
>> EDK2 for Xen Arm guests. The other one I know is EDS makes assumption how
>> some Device-Tree nodes and this will break on newer Xen.
>>
>> So overall, it feels to me that EDK2 is not entirely ready to be used in
>> production for Xen on Arm guests.
> 
> I really have no insight on this.  What are the supported way of booting
> guests on Arm?  (SUPPORT.md doesn't seem to list any firmware for Arm
> guests AFAICT).

Some bootloaders (e.g. U-boot/EDK2) have support to be used as a fimware 
for Xen on Arm guests. But they are not supported officially.

Most of the setup seems to specify the kernel directly in the XL 
configuration. We probably ought to add support for EDK2/U-boot.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Wed Oct 04 14:32:23 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 04 Oct 2023 14:32:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612620.952615 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qo2v6-0004b5-G7; Wed, 04 Oct 2023 14:32:12 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612620.952615; Wed, 04 Oct 2023 14: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 1qo2v6-0004ay-Bu; Wed, 04 Oct 2023 14:32:12 +0000
Received: by outflank-mailman (input) for mailman id 612620;
 Wed, 04 Oct 2023 14:32: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 1qo2v4-0004ao-Pa; Wed, 04 Oct 2023 14:32: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 1qo2v3-0004yI-Q6; Wed, 04 Oct 2023 14:32: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 1qo2v3-0003pp-9v; Wed, 04 Oct 2023 14:32:09 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qo2v3-0006lL-9O; Wed, 04 Oct 2023 14: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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=+EI8NSW/ejaXnNp7fLxmmtYHeVvjMGRqhRbcGD865gk=; b=uF/Ryge0SSTjbjT/FjBVmYv1Ye
	uC9U4fJQjnMazF+0NUEqOWPA7HxeKuUgEyakPvSqKmVvD7GLAOnwkGzbIQsVCiu3CNssJ2KqsGhoQ
	pjeKZ1Ghb02/8u3VQHFgKZkMMg77hHBm7c7NBkiau/r8whr8iCFV+Lg58ZDE3XyPVPhc=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183259-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 183259: tolerable FAIL - PUSHED
X-Osstest-Failures:
    linux-linus:test-armhf-armhf-libvirt-raw:xen-boot:fail:heisenbug
    linux-linus:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw: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-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt: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-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-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-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-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-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-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-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-amd64-amd64-libvirt: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:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl: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-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=cbf3a2cb156a2c911d8f38d8247814b4c07f49a2
X-Osstest-Versions-That:
    linux=5e62ed3b1c8a397185af53d6b94f04b9ff21ec7d
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 04 Oct 2023 14:32:09 +0000

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

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-armhf-armhf-libvirt-raw  8 xen-boot            fail pass in 183262-retest

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail in 183262 like 183255
 test-armhf-armhf-libvirt-raw 14 migrate-support-check fail in 183262 never pass
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183255
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183255
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183255
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183255
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183255
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183255
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183255
 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-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-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-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-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-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-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-amd64-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
 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-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-libvirt-qcow2 14 migrate-support-check        fail never pass

version targeted for testing:
 linux                cbf3a2cb156a2c911d8f38d8247814b4c07f49a2
baseline version:
 linux                5e62ed3b1c8a397185af53d6b94f04b9ff21ec7d

Last test of basis   183255  2023-10-03 17:43:40 Z    0 days
Testing same since   183259  2023-10-04 02:30:05 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Anna Schumaker <Anna.Schumaker@Netapp.com>
  Benjamin Coddington <bcodding@redhat.com>
  Chen-Yu Tsai <wenst@chromium.org>
  Chuck Lever <chuck.lever@oracle.com>
  Jeff Layton <jlayton@kernel.org>
  Linus Torvalds <torvalds@linux-foundation.org>
  Mark Brown <broonie@kernel.org>
  Michał Mirosław <mirq-linux@rere.qmqm.pl>
  Richard Fitzgerald <rf@opensource.cirrus.com>
  Trond Myklebust <trond.myklebust@hammerspace.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                                 fail    
 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
   5e62ed3b1c8a..cbf3a2cb156a  cbf3a2cb156a2c911d8f38d8247814b4c07f49a2 -> tested/linux-linus


From xen-devel-bounces@lists.xenproject.org Wed Oct 04 14:54:12 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 04 Oct 2023 14:54:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612627.952624 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qo3GG-0001o3-7b; Wed, 04 Oct 2023 14:54:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612627.952624; Wed, 04 Oct 2023 14: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 1qo3GG-0001nw-3v; Wed, 04 Oct 2023 14:54:04 +0000
Received: by outflank-mailman (input) for mailman id 612627;
 Wed, 04 Oct 2023 14:54: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=O8y1=FS=citrix.com=prvs=634504905=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qo3GE-0001l0-TB
 for xen-devel@lists.xenproject.org; Wed, 04 Oct 2023 14:54:03 +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 d7ac0811-62c5-11ee-98d3-6d05b1d4d9a1;
 Wed, 04 Oct 2023 16:53:57 +0200 (CEST)
Received: from mail-bn1nam02lp2047.outbound.protection.outlook.com (HELO
 NAM02-BN1-obe.outbound.protection.outlook.com) ([104.47.51.47])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 04 Oct 2023 10:53:54 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by CH2PR03MB5159.namprd03.prod.outlook.com (2603:10b6:610:9f::10)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.33; Wed, 4 Oct
 2023 14:53:49 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::66ca:3a42:baeb:9ecf]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::66ca:3a42:baeb:9ecf%6]) with mapi id 15.20.6838.030; Wed, 4 Oct 2023
 14:53: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: d7ac0811-62c5-11ee-98d3-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1696431237;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=dzKU+XcMKHZ7cnznC+pb6F8X/rjO4TC2THQjA0Iw100=;
  b=XcqKMJyWTzezG1NJ/mJiiiZcUAoYotQn+ATyntdZ7Y+KsrA7HdgPRN3u
   O9L9+iJQxKSlCbJJ2yDK199o4amY3Y5j9qg2zL5tl+48rmXOU9mhSI1wN
   Mam5n5aezW3C+VMS0q5nuZ++ipe++mUCEf3mJtPc2VxFOO5/t23SI9eGP
   U=;
X-CSE-ConnectionGUID: 7IDWOdghQgagFab1BLjetg==
X-CSE-MsgGUID: pvEtzUtRSDq/mI3wuTwtXw==
X-IronPort-RemoteIP: 104.47.51.47
X-IronPort-MID: 125040289
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:GeXFd6kAbE6BJiKEhNXuyUzo5gwWJ0RdPkR7XQ2eYbSJt1+Wr1Gzt
 xJLCGrVO6mDYDP1fIt1bIy080lT68PcnNY3QQtq/i9nHiMWpZLJC+rCIxarNUt+DCFhoGFPt
 JxCN4aafKjYaleG+39B55C49SEUOZmgH+e6UKicfHkpGWeIcQ954Tp7gek1n4V0ttawBgKJq
 LvartbWfVSowFaYCEpNg064gE0p5K+aVA8w5ARkPqkT5AOGzBH5MbpETU2PByqgKmVrNrbSq
 9brlNmR4m7f9hExPdKp+p6TnpoiG+O60aCm0xK6aoD66vRwjnVaPpUTbZLwXXx/mTSR9+2d/
 f0W3XCGpaXFCYWX8AgVe0Ew/yiTpsSq8pefSZS0mZT7I0Er7xIAahihZa07FdRwxwp5PY1B3
 aM5BA8qYh+Dvu2/z5yyQLBGosYuMMa+aevzulk4pd3YJdAPZMiZBo/svJpf1jp2gd1SF/HDY
 cZfcSBocBnLfxxIPBEQFY46m+CrwHL4dlW0qnrM/fZxvzeVkVU3jOeF3Nn9I7RmQe1PmUmVv
 CTe9nnRCRAGLt2PjzGC9xpAg8eWx36jBNpIROzQGvhCmEO+2n4uFCcteUL8pNjilVOCRM5vN
 BlBksYphe1onKCxdfH/Qhm5rXisrhMaHd1KHIUS5QGAz+nE7gCxAzUcCDVGbbQOpMIwADAny
 FKNt9foHiB09q2YT2qH8bWZpi/0PjIaRUcZfjMNRwYB59jloakwgwjJQ9IlF7S65vX/FCvs2
 TmMoG47jq8KkM8Q/6yh+BbMhDfEjqbOSgk59wDGRFWP5wlyZJOmT4Gw4F2d5vFFRK6eSlSCp
 3ECl9Kp8PEVDZqNmSqOR80ABLisof2CNVXhbUVHGpAg83Gn/SeldIUIujVmfh81bYADZCPjZ
 1LVtUVJ/phPMXC2bKhxJYWsF8AtyqumHtPgPhzJUudzjlFKXFfv1ElTiYS4hggBTGBEfXkDB
 Kqm
IronPort-HdrOrdr: A9a23:v7otF6HuZ+SozL+9pLqFSJHXdLJyesId70hD6qkvc3Jom52j+P
 xGws526fatskdtZJkh8erwXZVoMkmsqaKdhrNhY4tKPTOW51dASbsI0WKM+UyYJ8SVzJ8F6U
 4NSdkcNDS0NykBsS7ViDPIVurI6uP3t5xBb4/lvjVQpHhRGvtdBl5Ce12m+y5NNX977UtSLu
 vb2iMknUvZRZ1NVLX5OpBtZYGqmzSIruOcXfdhPW9+1OCgt0Lt1FeQKWn94v5qaUIo/V5Uyx
 mjr+WW3NTAjxh58G6A60bjq7Bt3PfxwNpKA8KBzuIPLC/3twqubIN9H5WfoTEcuoiUmR4Xue
 iJhy1lE9V46nvXcG3wiwDqwRPc3DEn7GKn4UOEgEHkvdfySFsBeoF8bMNiA1HkAngbzZ1BOZ
 Fwri2kXl1sfF39dRHGlpX1vtdR5wuJSDQZ4K4uZjdkIPcjgfdq3PMiFQVuYd499evBgu1HcN
 WGNvuskcp+YBefdTTUr2NvyNujUjA6GQqHWFELvoiQ3yJNlH50wkMEzIhH901wg64VWt1B/a
 DJI65onLZBQosfar98Hv4IRY+yBnbWSRzBPWqOKRDsFb0BOXjKt5nriY9FkN2CadgN1t8/iZ
 7BWFRXuSo7fF/vE9SH2NlR/hXEUAyGLEbQIwFllutEU5HHNcrW2He4OS4TeuOb0oQiPvE=
X-Talos-CUID: 9a23:gWKg0GOtZnTom+5DBwhLy2kYFcAcfXTS4n7aemWcC2t1R+jA
X-Talos-MUID: 9a23:h/c8CQS44gGmoWqQRXT0mhx+Jvp02Z+CEQcIsM4ZpvWbKRxvbmI=
X-IronPort-AV: E=Sophos;i="6.03,200,1694750400"; 
   d="scan'208";a="125040289"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=OzzTAmg4c2uMx0YIsr2ZxPWj5PHy2lnwKtlH9IHPz8nnkWTN2V5jXIP0nGU30YPiutXZHVLjTnAyqxIm5e87aC4LopvL1MUWkZ/IfiGdjBNc55LkIAbxsAczKEdg0jbdUFzU4LjO6JEjfJuOUh3FYDVq9YA1cccQur0YBgv5vaP6/JvV1ikzcy8TTpPFIAOkJEKjYSVW9qMRFZ2yyh/ajar9F6G+QRIL18H7p9ucjdQShTU+7aZiaiWBK62uRktm64ZQt0JYBjV7bde+AUZlajzJaO6W57ogZ3q4XjzUYM3BlpgETsysGDB7ktTCJgaL0kDLme7DDwX8ydc3qnuAGQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=0XgPyMUkEdoCfrYOWeNm2AJHAD3zZBbVdLvjbrpc1BY=;
 b=KGp3+SfvJv0YmH9JOc5hptQRzP3kTMeUNx+qDnvCVvQRgZV+10pMRbr2oyZ/+75jJQxDgwZPc0YLbexd6Wi0k+5BpfdaWpkONvszQ8LdMf1eQq5fszlyfyUkwib0xHxFcclz8B2SdCKoqVIvlcOyG/qG8hs31IOZ99kAptbanvZ1KMUfff9PGu0DOksJWbTcsjT2jDSEVdq5hCqz+8inqCTcnLtO3Z0dRv921aaPgEhdI/wKEMAq2Q7rzojYyO7xJmWJFaLWdiX0+Oe5m+Hj5uYLZQZe28mQhzN8BoPgWH0cANXYq+hk76dAXnxDCRPHQ/yOBPIZB0tUylKKHn+41g==
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=0XgPyMUkEdoCfrYOWeNm2AJHAD3zZBbVdLvjbrpc1BY=;
 b=UsJC2tDOEEfB0U8YyIZYGlLry/d0xTNXp7bU8y5BjG3O7P6GJuHB2eFrrGJfeNgeyN/BMvkDvoWaBZtQgPGMyuw1R7kD5R2eF9pxLkzuhWkMNiIop6Hu4GxRsZE+kuDOSVoEjfcLGxytet9ijGIp00lgh548xcrQvjbae3w0wGY=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Wed, 4 Oct 2023 16:53:42 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Julien Grall <julien@xen.org>
Cc: Elliott Mitchell <ehem+xen@m5p.com>, xen-devel@lists.xenproject.org,
	Stefano Stabellini <sstabellini@kernel.org>,
	Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>
Subject: Re: Issue with shared information page on Xen/ARM 4.17
Message-ID: <ZR18dlMAbCwEOeH4@MacBookPdeRoger>
References: <ZRY7Ls3p6M6pakMq@mattapan.m5p.com>
 <ZRvQNKyYpLDVTs0i@MacBookPdeRoger>
 <ZRxpC7ukhiYvzz5m@mattapan.m5p.com>
 <ZR0erl_OSkNgIQjx@MacBookPdeRoger>
 <c0b67401-dfe5-475f-8640-b66ac32a80fb@xen.org>
 <ZR1gM19i6-vBaXh7@MacBookPdeRoger>
 <b00500ae-76b1-441c-8154-bcdd897734dc@xen.org>
 <ZR1rBP_49Y2V8VF6@MacBookPdeRoger>
 <fe94dcd2-4429-48df-8ebd-59563d43796a@xen.org>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <fe94dcd2-4429-48df-8ebd-59563d43796a@xen.org>
X-ClientProxiedBy: LO2P123CA0039.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600::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_|CH2PR03MB5159:EE_
X-MS-Office365-Filtering-Correlation-Id: 67be0166-3be0-4f66-31ef-08dbc4e9b73b
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	XpOvCAGpo0awFjeSAqMBZUASNBkrZue9TbG6yHeZg9CJi8Gb/5LZPz3pgE+whtH2X23ZVAfbulAY77zm1DhYvrZTyDlkM4zwP0ze3BQvIVYReMlQRmYiQ5tSO1zSOIFlZlsUsTxqMhsZSPIQ0uQuqSjYDZnm/1aiRHrdOVa39eglkdmbr005nAc4jv8NS7868PlHxIaKxDBwUUvuiAIv7NzO6vF71j9miB/EeTZDNm3HD8yeWRSnBM1v8XjgRMwNsLGVqvWxeN7EeBUQWDNLD/m+OjNKaOS/hrMDymwlynXU5dDBu71RpjMaW6OrRXsf4GYI1YVlDLqZUuuOKG4zxCKXkLOfzrG361cskuazEbxZWeYTjXgT3gSiE9HCHZYJin5j99SbPw6UEWFfuY+MFZDD+Qtosgzm5R9bmWqgkKm+0nVLAYyBdDJ/MI8SaSAVMbQEU+g5JlGp8Ux1SBf/0/+qDmMf/Gt31GLRDaVNGGxNrdhmKs+MUZZsmnCVUCV2Dn7Y6gduXEkgysuQN9lTN40NwhAo6gRIVZ1uFGGKbqSPqGNW8KMKacih2MY1DXbI
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)(396003)(346002)(136003)(376002)(230922051799003)(64100799003)(186009)(451199024)(1800799009)(6486002)(478600001)(6666004)(6506007)(53546011)(66556008)(6512007)(66476007)(33716001)(9686003)(26005)(85182001)(2906002)(83380400001)(30864003)(54906003)(86362001)(66946007)(8676002)(5660300002)(41300700001)(38100700002)(82960400001)(316002)(4326008)(6916009)(8936002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?NFBzMUxYS2VEUlhrZHJ4UnRkVWN0U1l0dkJPM1hZUFU3REY2MTh3eFZGK1d2?=
 =?utf-8?B?QTRQK3M3cG5rMmRaM3M0blFhMXo2aGFBVGFGanB2UjFkZGJCZUJCMXg2REo1?=
 =?utf-8?B?akYzWVVicGs1MnA3MGNYNlE5b0NqbDRiOFB4Yk1Cd29OR3ZWbElZd04xeGV6?=
 =?utf-8?B?MnZHRkdVQWpWc1lTcG9aTFlJRnJ1dWtYbHU5L1pwTlB1Q1hjVEg3aVFKL1Zw?=
 =?utf-8?B?RHRiSitqcnRFMFBoc2VYNHdGUExhMXF6RjdFR2l5ZU5lUzRwYStaUGtESjZI?=
 =?utf-8?B?Z3djeGlIRmRaRkVvUkg1eDlab1FxMWlhcjdCNWY3UnRjUVVNaW5sb3l0a1A0?=
 =?utf-8?B?RUppaUtZNWhFMmxCQ1ZBZkhjSTZBNGpQbVJheEMydmJPVFhxWkFWd0YvbWtJ?=
 =?utf-8?B?VHVDZ0Z0NldUdzZyZ1IwVDZBc20zdkVPM0xTUkdOaHg3eGZlaVZuYTMwSEhy?=
 =?utf-8?B?TDJCdVJ6czlGNVBDWlZuc2xvaG1mekROSmxORDFtc3I4QUw1NXV3YzVaQy9P?=
 =?utf-8?B?TzJCcFlUUDdHemRrSlVOUkNxdmR5Yi85LytQL3dJZXJHTlpsVzVMS0k4ZTdL?=
 =?utf-8?B?R0VWQmtpVzF2dlJPWmN0cXJLQVNLUS9BWWpYSVQzUkR0TEs2WXhwZldBdnda?=
 =?utf-8?B?RVg2ZHU1bXdXRU9XYlRseXV1ckFPaDJPeERpK3dZTU9Ba21IQllqWXY5Ym56?=
 =?utf-8?B?dzc2Q0pxMkRjMWxkRlBKRitRT0c1UGYwMHVWZXJBb1JXNnZLMjJKaUR5MXJ4?=
 =?utf-8?B?N1R0NDNxSFVOV25KcFF1cDZLZnREaWE1VURpaDRpb2p1N3NlYkgyUGVnQjdJ?=
 =?utf-8?B?bG0zd0R0bW0rUEhKd0lOdllwVmFESFZrcFhZbDd3NTVpL2FhMDJ3VmV5ZkM0?=
 =?utf-8?B?eE12Z1hIdGRZRW9Uak5rMWIrTzVTZUxTdU5SYmFzL3R0dGNGOWRlRm80QmZy?=
 =?utf-8?B?OUhxK1pjLzlvcis1NTZrVmE2SUZZQ3FnQnNSQ3NZdUJMdkpHZHY4YU5Gbmth?=
 =?utf-8?B?bGF5czFyUnBqSExJWktYZmJQU0dHdkE5L3lGVW5pdnFiWTRSTzROcUdIYTVn?=
 =?utf-8?B?Z0Fiek5BaElNOWYyVU1FMmtGSDVLRElYSy9RczRGRGozckpFQUx5QTR4WGZL?=
 =?utf-8?B?dDdPWVJnTVRxR3dOM3JiZ3lBalgyek5ZdGNndERydndGSjE4eThhb0VaNWc1?=
 =?utf-8?B?MFVjN2t2SGdlQmZ2WmdVS1FySWxuR0Nxc2IwRkxMYkVZWGsraTBlWFNQbHlU?=
 =?utf-8?B?SU9SZXlGMFE4ZUEydUlWU3Q2eTJHQ3o2azYrT3FCdVJwMWVqY0NkR0lsRVZK?=
 =?utf-8?B?UzkrRHVMUjBLRTE1NGtscDRKdCt6ZnlrNXVPc2lBRWJVVmtFMVoxWVBUREF2?=
 =?utf-8?B?UGg2aElSSHVIWXc4N2xIUVF5a2tJSWl5RkZGMEF3NmlqaDR6enNKZGRYNmVF?=
 =?utf-8?B?VTVTNzNrckZPRzY1Q2E5OFdqa3pZMThKZm81a3JydmNLTDhqUzFlSWZoazdv?=
 =?utf-8?B?c1hYa3NZd3c4TjNybWtNUGFKeG9MWUpFVitzVytGYTVTQVBOK0dTbjBoTlk0?=
 =?utf-8?B?S0RIaDlCZUN3c0NTT0xOMHBJaEJ1VVNOZWZRMzB0c0JYUWs3ZksyanlqTlhp?=
 =?utf-8?B?c3dKSjhEYmNzb0lxajFRbnhydlFMOERhV242U3dzb1pMVWE4cHdPZHovKzNz?=
 =?utf-8?B?VWROeHdFUnZ2Ui84TmEvOUJkUVJpTUFCNjJlYklLNG93WVl6UmFud0w4OTlX?=
 =?utf-8?B?UHdVRVU0R2p6T3lOMXJ0Wm1KTFFyaVlrY2RDTEJHVXgzZzJTdmU3cXJsV0lK?=
 =?utf-8?B?ZlNhelVXN3VwOVQzd3ZBSmhRYzltSlJzS2YwTGtnaVAyZm1NMVR1aXV2a1hw?=
 =?utf-8?B?c1puM3dFSFFwNTA3NmZFWFMybUxGT1g0OHp6dnRZUHJ6MFZ2REd3UWlWM2tF?=
 =?utf-8?B?anB5cmgwS05yemQ3QWh5V1pPWjBYY3JlNDkyUGVJQkRyREZkd2JNSnlNZEhE?=
 =?utf-8?B?OXZXdXVIS0wzRk5hd1d1WmdNeGhic21xTEJtQW1QOGVHMk1JTjNlMG9OdUh1?=
 =?utf-8?B?c2F5OExGNkpWSVRqdll0SFQ1Q29nekt4VmFMcnRGNUlGQnpWT0hBMUUrUG10?=
 =?utf-8?Q?vXYidBr3sapgg8Q9evlm+Sn+8?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	a6sqbIw3i1ONhRr2bZ9+ZcVLgt9I3FEgqT4kheuVBYPLCifYNtq20iWyXzBRKgMbj+gW0out0jW+cE3tstA8lSP7TbJHOPz+HELwFiURALKqGmK7Ta8umCtBPvx6UXx+4P/AIuCa96h+db8eBAG8v9abLM5VlAS4MyioJ0aqMHVBGlD8Bq9YyEqcmRy70+jkjAt6Qto+PcUVZK6JbjemqfznktkvNNisw64H+8WkswLD9BTbgQsq4tlKgFOsAjAkjlUjCwLCqDjTl61OXaEGDBSeTB+MskqHtSIICurETpDNG4rjbvxzor12LZMOXUAzqkipBvTUwy9JHviTqgXy8d4qAGzCXlid8efXWT2nYZ8gZvXonfeEwFGZQV5p522emJWItsmwzqqoqEW6rKM+WbiIdh1qrfN4YWV8pBOgeT+DJGLuLUotzc/vrydTokbaFgnd3mzlopUqproNpYJqbLAx6stDQBhAJVCcNWebFV0B0O/QKCyematb732AAjvWTZfTQObKSMwlvAZvaSpnNJMqxhVxvrZrCwxf5fcznXVzITviCTD5Zh+19Si4AO+uimCbkKKy/Ys1LJ9wc8lwlnj3c8OzB+jqZ6JALSlTHhsRcN7VLnOYzSahsTuCIoEC3fiQlQ/+uaprFDKjhc4kixlDBYlHgcMREKtXteCi+3/fec4pA8/im/6V5cSGEiRdgUReoLwVq4QpMo4E8nh2I7Vk6frc1nhhX+AJqjsaz+CgaRT4QCrhuy1XTw1T+JUj5wC4JWOAX8jw/DlkvSMQgCmzxMdN450IY2ZpQh0PVlNpX7mfZhY/dAGCPdON5GBJzoO40CnMfqpuQ2YIh8CRqh4YdXV+1i+Q2xl0AL0s7yxXXbX4lGe7Z3RLeygcpFkQbT0iq7fheBHs7foEfBSIkQ==
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 67be0166-3be0-4f66-31ef-08dbc4e9b73b
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Oct 2023 14:53:48.5727
 (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: dfJnxQCcdiJ8Ioj1GqaGJxbHo92q7My8xCdwIs5laFh7GahI5SG4z3C4XAPcq11My/3ZbLmqxYpsRvaKnncLIA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH2PR03MB5159

On Wed, Oct 04, 2023 at 03:06:14PM +0100, Julien Grall wrote:
> Hi Roger,
> 
> On 04/10/2023 14:39, Roger Pau Monné wrote:
> > On Wed, Oct 04, 2023 at 02:03:43PM +0100, Julien Grall wrote:
> > > Hi Roger,
> > > 
> > > On 04/10/2023 13:53, Roger Pau Monné wrote:
> > > > On Wed, Oct 04, 2023 at 11:55:05AM +0100, Julien Grall wrote:
> > > > > Hi Roger,
> > > > > 
> > > > > On 04/10/2023 09:13, Roger Pau Monné wrote:
> > > > > > On Tue, Oct 03, 2023 at 12:18:35PM -0700, Elliott Mitchell wrote:
> > > > > > > On Tue, Oct 03, 2023 at 10:26:28AM +0200, Roger Pau Monné wrote:
> > > > > > > > On Thu, Sep 28, 2023 at 07:49:18PM -0700, Elliott Mitchell wrote:
> > > > > > > > > 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.
> > > > > > > > 
> > > > > > > > This is due to 71320946d5edf AFAICT.
> > > > > > > 
> > > > > > > Yes.  While the -EBUSY line may be the one triggering, I'm unsure why.
> > > > > > > This seems a fairly reasonable change, so I had no intention of asking
> > > > > > > for a revert (which likely would have been rejected).  There is also a
> > > > > > > real possibility the -EBUSY comes from elsewhere.  Could also be
> > > > > > > 71320946d5edf caused a bug elsewhere to be exposed.
> > > > > > 
> > > > > > A good way to know would be to attempt to revert 71320946d5edf and see
> > > > > > if that fixes your issue.
> > > > > > 
> > > > > > Alternatively you can try (or similar):
> > > > > > 
> > > > > > diff --git a/xen/arch/arm/mm.c b/xen/arch/arm/mm.c
> > > > > > index 6ccffeaea57d..105ef3faecfd 100644
> > > > > > --- a/xen/arch/arm/mm.c
> > > > > > +++ b/xen/arch/arm/mm.c
> > > > > > @@ -1424,6 +1424,8 @@ int xenmem_add_to_physmap_one(
> > > > > >                     page_set_xenheap_gfn(mfn_to_page(mfn), gfn);
> > > > > >             }
> > > > > >             else
> > > > > > +        {
> > > > > > +            printk("%u already mapped\n", space);
> > > > > >                 /*
> > > > > >                  * Mandate the caller to first unmap the page before mapping it
> > > > > >                  * again. This is to prevent Xen creating an unwanted hole in
> > > > > > @@ -1432,6 +1434,7 @@ int xenmem_add_to_physmap_one(
> > > > > >                  * to unmap it afterwards.
> > > > > >                  */
> > > > > >                 rc = -EBUSY;
> > > > > > +        }
> > > > > >             p2m_write_unlock(p2m);
> > > > > >         }
> > > > > > 
> > > > > > > > > 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?
> > > > > > > > 
> > > > > > > > I think the issue is that you are mapping the shared info page over a
> > > > > > > > guest RAM page, and in order to do that you would fist need to create
> > > > > > > > a hole and then map the shared info page.  IOW: the issue is not with
> > > > > > > > edk2 not having unmapped the page, but with FreeBSD trying to map the
> > > > > > > > shared_info over a RAM page instead of a hole in the p2m.  x86
> > > > > > > > behavior is different here, and does allow mapping the shared_info
> > > > > > > > page over a RAM gfn (by first removing the backing RAM page on the
> > > > > > > > gfn).
> > > > > > > 
> > > > > > > An interesting thought.  I thought I'd tried this, but since I didn't see
> > > > > > > such in my experiments list.  What I had tried was removing all the pages
> > > > > > > in the suggested mapping range.  Yet this failed.
> > > > > > 
> > > > > > Yeah, I went too fast and didn't read the code correctly, it is not
> > > > > > checking that the provided gfn is already populated, but whether the
> > > > > > mfn intended to be mapped is already mapped at a different location.
> > > > > > 
> > > > > > > Since this seemed reasonable, I've now tried and found it fails.  The
> > > > > > > XENMEM_remove_from_physmap call returns 0.
> > > > > > 
> > > > > > XENMEM_remove_from_physmap returning 0 is fine, but it seems to me
> > > > > > like edk2 hasn't unmapped the shared_info page.  The OS has no idea
> > > > > > at which position the shared_info page is currently mapped, and hence
> > > > > > can't do anything to attempt to unmap it in order to cover up for
> > > > > > buggy firmware.
> > > > > > 
> > > > > > edk2 should be the entity to issue the XENMEM_remove_from_physmap
> > > > > > against the gfn where it has the shared_info page mapped.  Likely
> > > > > > needs to be done as part of ExitBootServices() method.
> > > > > > 
> > > > > > FWIW, 71320946d5edf is an ABI change, and as desirable as such
> > > > > > behavior might be, a new hypercall should have introduced that had the
> > > > > > behavior that the change intended to retrofit into
> > > > > > XENMEM_add_to_physmap.
> > > > > I can see how you think this is an ABI change but the previous behavior was
> > > > > incorrect. Before this patch, on Arm, we would allow the shared page to be
> > > > > mapped twice. As we don't know where the firmware had mapped it this could
> > > > > result to random corruption.
> > > > > 
> > > > > Now, we could surely decide to remove the page as x86 did. But this could
> > > > > leave a hole in the RAM. As the OS would not know where the hole is, this
> > > > > could lead to page fault randomly during runtime.
> > > > 
> > > > I would say it's the job of the firmware to notify the OS where the
> > > > hole is, by modifying the memory map handled to the OS.  Or else
> > > > mapping the shared_info page in an unpopulated p2m hole.
> > > 
> > > I agree but I am not convinced that they are all doing it. At least U-boot
> > > didn't do it before we fixed it.
> > > 
> > > > 
> > > > When using UEFI there's RAM that will always be in-use by the
> > > > firmware, as runtime services cannot be shut down, and hence the
> > > > firmware must already have a way to remove/reserve such region(s) on
> > > > the memory map.
> > > 
> > > Can either you or Elliott confirm if EDK2 reserve the region?
> > 
> > I will defer to Elliott to check for arm.  I would be quite surprised
> > if it doesn't on x86, or else we would get a myriad of bug reports
> > about guests randomly crashing when using edk2.
> > 
> > > > 
> > > > > Neither of the two behaviors help the users. In fact, I think they only make
> > > > > the experience worse because you don't know when the issue will happen.
> > > > > 
> > > > > AFAICT, there is no way for an HVM guestto know which GFN was inuse. So in
> > > > > all the cases, I can't think of a way for the OS to workaround properly
> > > > > buggy firmware. Therefore, returning -EBUSY is the safest we can do for our
> > > > > users and I don't view it as a ABI change (someone rely on the previous
> > > > > behavior is bound to failure).
> > > > 
> > > > I fully agree the current behavior might not be the best one, but I do
> > > > consider this part of the ABI, specially as booting guests using edk2
> > > > has now stopped working after this change.
> > > 
> > > Right. If we remove the check, you may be able to boot a guest. But are we
> > > sure that such guest would run safely?
> > 
> > If the guest wants the hypervisor to enforce such behavior, let it
> > use the new hypercall to explicitly request the shared_info page to
> > not be mapped anywhere else.
> 
> TBH, I am not convinced the new hypercall is going to help. Let say we
> decide to modify FreeBSD/Linux to use it, The old EDK2 firmware would still
> be buggy and this would prevent boot. So we are back the same problem...
> 
> We could also say we don't support older firmware. But that's not very
> different from leaving the hypercall as-is and fix EDK2

We could at least print a warning message that the firmware still had
the shared_info page mapped, and that the system might not work as
expected.

> > 
> > But if you don't trust the bootloader, how do you know it hasn't poked
> > holes elsewhere in the RAM regions?
> 
> We don't know. But how do you know the bootloader will not want to continue
> using the vCPU shared page?

I don't think it's feasible for two entities to concurrently use the
shared_info page.

> For instance, the public headers doesn't seem to mention that the page can
> only mapped once and it would unmap the previous area. In fact, for Arm,
> until that commit shared page could be mapped N times... So technically even
> if we remove the page, the commit already made an ABI change. Yes it is now
> more inline with x86 but this doesn't this is still an ABI change. I would
> be surprised if you say we should not have done that because (in particular
> if you have XSA-379 in mind).

So we agree at least that there's an ABI change :).

It's different from 379 because the shared_info page is never freed
for the lifetime of the domain, hence there's no risk of leak in this
specific case.  I can see how preventing multiple mappings can be a
safeguard for possible issues similar to 379.

Isn't it possible to map a grant at multiple gfns however?

> > 
> > Even if the shared_info page has been unmapped, can you be sure the
> > bootloader has put a RAM page back in that gfn?
> 
> We can't. But the same goes with the bootloader reserving the region...
> 
> > 
> > I understand this ABI change is done to avoid bugs, but at the cost of
> > diverging from x86, and breaking existing firmwares which might not be
> > buggy.
> As I pointed out above, the exact behavior of the hypercall is not fully
> documented and the behavior has changed with some XSAs. So this is no
> surprise if Arm and x86 behaved differently (even before that commit).
> 
> There are plenty of behavior I considered wrong in the way x86 update the
> P2M and I would be concerned if we don't give any leeway for the
> architectures to tighten the update. BTW some checks have evolved over the
> time during security event (XSA-378 for example).

ABI changes due to security issues are unavoidable.

> This is not very different here. For Arm we decided to not follow a behavior
> that I consider incorrect and potentially more harmful than trying to
> support bootloader not removing the shared page.

I think this is not very friendly to users, specially if edk2 wasn't
checked.  I understand the situation is different on Arm vs x86, so if
edk2 is not supported on arm I guess it doesn't matter much whether
it's broken.  It would be a much worse issue on x86 where edk2 is
supported.

> If we want to handle such firmware, I think it would be better if we provide
> an hypercall that would return the GFN where it is currently mapped.

Sure, but such hypercall would be racy, as by the time the gfn is
returned the value could be stale.  Adding a replacing and non
replacing XENMEM_add_to_physmap variations would IMO be better.

Anyway, I don't maintain this, so it's up to you.

> > 
> > > Also, it is not really argument, but this is not the only broken part in
> > > EDK2 for Xen Arm guests. The other one I know is EDS makes assumption how
> > > some Device-Tree nodes and this will break on newer Xen.
> > > 
> > > So overall, it feels to me that EDK2 is not entirely ready to be used in
> > > production for Xen on Arm guests.
> > 
> > I really have no insight on this.  What are the supported way of booting
> > guests on Arm?  (SUPPORT.md doesn't seem to list any firmware for Arm
> > guests AFAICT).
> 
> Some bootloaders (e.g. U-boot/EDK2) have support to be used as a fimware for
> Xen on Arm guests. But they are not supported officially.
> 
> Most of the setup seems to specify the kernel directly in the XL
> configuration. We probably ought to add support for EDK2/U-boot.

I had no idea about that, I do think some kind of firmware is required
or else OSes different than Linux can't be supported unless they
implement the Linux entry point.

Is the entry point / CPU state for arm guests documented somewhere?

I wonder whether Elliot could use that for FreeBSD until the situation
with edk2 is stable.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Wed Oct 04 14:56:47 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 04 Oct 2023 14:56:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612634.952634 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qo3Im-0003AS-PP; Wed, 04 Oct 2023 14:56:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612634.952634; Wed, 04 Oct 2023 14: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 1qo3Im-0003AL-M0; Wed, 04 Oct 2023 14:56:40 +0000
Received: by outflank-mailman (input) for mailman id 612634;
 Wed, 04 Oct 2023 14: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=HSqs=FS=amd.com=Stewart.Hildebrand@srs-se1.protection.inumbo.net>)
 id 1qo3Il-0003AF-G7
 for xen-devel@lists.xenproject.org; Wed, 04 Oct 2023 14:56:39 +0000
Received: from NAM10-BN7-obe.outbound.protection.outlook.com
 (mail-bn7nam10on20630.outbound.protection.outlook.com
 [2a01:111:f400:7e8a::630])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 3544d93f-62c6-11ee-9b0d-b553b5be7939;
 Wed, 04 Oct 2023 16:56:34 +0200 (CEST)
Received: from MN2PR04CA0024.namprd04.prod.outlook.com (2603:10b6:208:d4::37)
 by LV8PR12MB9229.namprd12.prod.outlook.com (2603:10b6:408:191::14)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.20; Wed, 4 Oct
 2023 14:56:29 +0000
Received: from BL02EPF0001A103.namprd05.prod.outlook.com
 (2603:10b6:208:d4:cafe::94) by MN2PR04CA0024.outlook.office365.com
 (2603:10b6:208:d4::37) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.25 via Frontend
 Transport; Wed, 4 Oct 2023 14:56:29 +0000
Received: from SATLEXMB03.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.6838.14 via Frontend Transport; Wed, 4 Oct 2023 14:56:29 +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, 4 Oct
 2023 09:56:28 -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, 4 Oct
 2023 09:56:28 -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, 4 Oct 2023 09:56: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: 3544d93f-62c6-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=D4KmqHseMDiIxsG1qxvzROZfJTBZxAGyRKfZnn/eyC4DSbu6pJUV+/nAVwPvXJmyHqm+hXlMvxjJAfhdOWfYBshwC0XPUIGyERbwjHfCkp8PElwYe2A73/i1LtEuIthyMdWzPQOI0JPU+taNpDGbmov5HjyfhT06ooJ57n2300jNx4H7uAtwEAIFHDkp1BAiuqCwfw5jgSEXCTjMdo41M4gW0R2+qO6zd8Z+uWbqxmhBbP33dr2z0/NIGMx/QCOsw/0s14E0VTOjHPhqCfWLUIdb1l/81t8IFTR3kS4u3Vso6yN/3tgOT/D+GQuYcWtWjrTf7DTEJFF+s1yd0Txw8A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=wEUt5fOpn0QSdkaoxvId8LR2Py41khPzJUpC7Sxq+wo=;
 b=CB4QsHx8EWc36REaC14Ucn60hJZQz1eT0SJejUFJbg/8du6F+ETbgtjmYi1EPbuCOTyx1zmHgeXOruBqtIHaHn6el7fw31rxJgir3fBoS7z39D30XwyeyBHZjaPxlLmeUFWQvs8Sf+QjvqGJfyxCAjOnuJcUJr9s3nUVVmViZ1ppr/TxKu/e8ut/h/eQ+pA6UVBrBtsy9K+tW7+vJv7V4C4eoAosH/XBFQfRaUqclKaxhnl9eBnel8505K0fdPPwhAsBnMEWI1GKU94fZ8/N0O7wI4QBAtyLmh9j1NpNHU/QulwEGE52wCpmAkLDHO9j486pEGe8qmY+nBy+Ve/Tiw==
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=wEUt5fOpn0QSdkaoxvId8LR2Py41khPzJUpC7Sxq+wo=;
 b=b8RO9PirdOKePf9D79pnsTA2F0+stG2Dw9+6ogjd0WEAmiHfae2/TVteOXQVTVHwdathWjvr7QT/jbGNFP/GoF1C12iEQIaJAGBGjmzhPU89CBLX2zUrHx6dHpPKzepZrGWydmDUIKSBuo8IxLwoYtDlwZAafa+cSAFtfkf5nvg=
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>, Julien Grall <julien@xen.org>, Bertrand Marquis
	<bertrand.marquis@arm.com>, Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Jan Beulich <jbeulich@suse.com>, Paul Durrant <paul@xen.org>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>, Rahul Singh
	<rahul.singh@arm.com>, Andrew Cooper <andrew.cooper3@citrix.com>, "George
 Dunlap" <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>
Subject: [PATCH v5 0/9] SMMU handling for PCIe Passthrough on ARM
Date: Wed, 4 Oct 2023 10:55:44 -0400
Message-ID: <20231004145604.1085358-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: BL02EPF0001A103:EE_|LV8PR12MB9229:EE_
X-MS-Office365-Filtering-Correlation-Id: 1abb790f-40a6-45cc-1b92-08dbc4ea172a
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	Yby3dhV31KRu64czKPR2kEm95pdAo9MCqTGLPl6SLEvIO0dRlYQ/ceIb7oSQjp4fA/Spw4KPVO2nBpmMNCR67wOCemszMsVRmNaTasCsa94I2aOTMiStwPj+GNQqAFXh1XxGBf+xP0jjUoFeT/sIJaMsKbs8Z9enz0R28VmksGUPu7iK+jYKQR5Y8p1B8WYTjECbHvkH9R/OFtSChwmVlx3vVrLeX2Bh2NrWCRLsS5Lgtqt/7pauysdl1uXFVwFSoy+Nny6sf3Chju9TXis4w+/gE/CM+YhmtekUoBBaYJzypvHQkCkEVimq6P3U0oG+9Z11q8N4hy8bBAlRguHZgxIiTrxZLl3id47vgDqESNSTSOYi6SY2biNX9B6vuPzkvN2f4y+EqdXbVOKJ2375PjcqkIq++MZBGc+A9oZGmB/LwIIKVzLogGfQeXWXZIblFYfr8flTGwxgS3n35QMuXCH3YHvVfHtGbJ/wgBHl8zr/5jvsz1a0YQWTrB0gtDTyyW/c29F1CSd+KN2VnfXEKfUiRhDdJikwLN9hJPGQBH/PTcdOKV0Hw2hbVDURkY+E244qUSVVnTq9Uqtr/q6xJF0dl7pjCfSxJldcIF1PRqhJwP7KVoaPhvhgbigWaECwJz4uK+s1SrlPG1kT1ms4q3iDuU+1LxX+2XNGKWiBDNwJRiVVbQw2qaEvN+kq2C4/g1oO60B9Xr+bpvhN7TrHbapN0h85Sux4x1xqa6bkt2egiVSDefT8DloFzQpo7Xts
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)(346002)(39860400002)(230922051799003)(1800799009)(451199024)(186009)(82310400011)(64100799003)(46966006)(40470700004)(36840700001)(40460700003)(478600001)(966005)(1076003)(2616005)(36756003)(336012)(26005)(356005)(426003)(86362001)(82740400003)(83380400001)(36860700001)(40480700001)(47076005)(81166007)(6666004)(6916009)(70586007)(316002)(54906003)(41300700001)(70206006)(7416002)(5660300002)(8936002)(44832011)(8676002)(4326008)(2906002)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Oct 2023 14:56:29.2615
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 1abb790f-40a6-45cc-1b92-08dbc4ea172a
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:
	BL02EPF0001A103.namprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: LV8PR12MB9229

This series introduces SMMU handling for PCIe passthrough on ARM. These patches
and should be able to be upstreamed independently from the vPCI series [1]. See
[2] for notes about test cases.

[1] https://lists.xenproject.org/archives/html/xen-devel/2023-08/msg02361.html
[2] https://lists.xenproject.org/archives/html/xen-devel/2023-06/msg01135.html

v4->v5:
* drop ("xen/arm: Improve readability of check for registered devices")
* drop ("xen/arm: Move is_protected flag to struct device")
* add ("xen/arm: don't pass iommu properties to hwdom for iommu-map")
* add ("xen/arm: Fix mapping for PCI bridge mmio region")
* revert ("xen/arm: Add cmdline boot option "pci-passthrough = <boolean>"")
* add ("xen/arm: Map ITS doorbell register to IOMMU page tables.")
* fix test case #1 with PCI device in dom0

v3->v4:
* split a change from ("xen/arm: Move is_protected flag to struct device") into
  a new separate patch
* see individual patches for further details

v2->v3:
* drop "pci/arm: Use iommu_add_dt_pci_device()"
* drop "RFC: pci/arm: don't do iommu call for phantom functions"
* move invocation of sideband ID mapping function to add_device()
  platform_ops/iommu_ops hook

v1->v2:
* phantom device handling
* shuffle around iommu_add_dt_pci_device()

Oleksandr Andrushchenko (1):
  xen/arm: smmuv2: Add PCI devices support for SMMUv2

Oleksandr Tyshchenko (2):
  iommu/arm: Add iommu_dt_xlate()
  iommu/arm: Introduce iommu_add_dt_pci_sideband_ids API

Rahul Singh (4):
  xen/arm: smmuv3: Add PCI devices support for SMMUv3
  xen/arm: Fix mapping for PCI bridge mmio region
  Revert "xen/arm: Add cmdline boot option "pci-passthrough =
    <boolean>""
  xen/arm: Map ITS doorbell register to IOMMU page tables.

Stewart Hildebrand (2):
  xen/arm: don't pass iommu properties to hwdom for iommu-map
  iommu/arm: iommu_add_dt_pci_sideband_ids phantom handling

 docs/misc/xen-command-line.pandoc     |   7 -
 xen/arch/arm/device.c                 |   2 +-
 xen/arch/arm/domain_build.c           |   6 +-
 xen/arch/arm/include/asm/pci.h        |  12 --
 xen/arch/arm/pci/pci.c                |  12 --
 xen/arch/arm/vgic-v3-its.c            |  12 ++
 xen/arch/x86/include/asm/pci.h        |   6 -
 xen/common/device_tree.c              |  91 ++++++++++++
 xen/drivers/passthrough/arm/smmu-v3.c | 126 +++++++++++++++--
 xen/drivers/passthrough/arm/smmu.c    | 194 ++++++++++++++++++++++----
 xen/drivers/passthrough/device_tree.c |  97 ++++++++++---
 xen/drivers/pci/physdev.c             |   6 -
 xen/include/xen/device_tree.h         |  23 +++
 xen/include/xen/iommu.h               |  26 +++-
 14 files changed, 515 insertions(+), 105 deletions(-)


base-commit: 3d2d9e90224c4f430a7ee1190fd3b871b99b0ba0
-- 
2.42.0



From xen-devel-bounces@lists.xenproject.org Wed Oct 04 14:56:47 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 04 Oct 2023 14:56:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612635.952644 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qo3Iq-0003Po-0z; Wed, 04 Oct 2023 14:56:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612635.952644; Wed, 04 Oct 2023 14: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 1qo3Ip-0003Ph-UZ; Wed, 04 Oct 2023 14:56:43 +0000
Received: by outflank-mailman (input) for mailman id 612635;
 Wed, 04 Oct 2023 14:56: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=HSqs=FS=amd.com=Stewart.Hildebrand@srs-se1.protection.inumbo.net>)
 id 1qo3Ip-0003A6-1D
 for xen-devel@lists.xenproject.org; Wed, 04 Oct 2023 14:56:43 +0000
Received: from NAM11-DM6-obe.outbound.protection.outlook.com
 (mail-dm6nam11on20630.outbound.protection.outlook.com
 [2a01:111:f400:7eaa::630])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 39cfd221-62c6-11ee-98d3-6d05b1d4d9a1;
 Wed, 04 Oct 2023 16:56:42 +0200 (CEST)
Received: from MN2PR06CA0016.namprd06.prod.outlook.com (2603:10b6:208:23d::21)
 by PH8PR12MB7028.namprd12.prod.outlook.com (2603:10b6:510:1bf::15)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.29; Wed, 4 Oct
 2023 14:56:38 +0000
Received: from BL6PEPF0001AB74.namprd02.prod.outlook.com
 (2603:10b6:208:23d:cafe::40) by MN2PR06CA0016.outlook.office365.com
 (2603:10b6:208:23d::21) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.33 via Frontend
 Transport; Wed, 4 Oct 2023 14:56:38 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 BL6PEPF0001AB74.mail.protection.outlook.com (10.167.242.167) 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, 4 Oct 2023 14:56:38 +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, 4 Oct
 2023 09:56: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; Wed, 4 Oct
 2023 09:56:37 -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, 4 Oct 2023 09:56: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: 39cfd221-62c6-11ee-98d3-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=RcbYzwZHnoD+k53KhGZAdxWRj6gNkyIXmxxvKxZrkj73ns5LPmMmnuRvHTd/zYt5JDS278LBCrU0UdCPw0K9oDG/GjuUalihoyfX8yhNLex3/LkhuMw/K+uvxWsmoKL5I/rR1eP6miokM5c7xW0rPwS7OHBEocZSj5B8/4QClMmUpmk3+L4zF2OYTprI0Dj9/yKfGqDeV+G+BXjQYTvLQOed/7utGSmmhBjKg0iqSycPQQzPDydi3t3xi8+HtvIvKX3nq0AgUiixs/dSmENLKJIC/XGAMRYJ7uM5f7DkhzeHhNts7rRxMSlMmQiLDw2fRJtth1Bxu/mLn1u9WJB6JQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=r5240fKG5hTdjcdqqDr0qDzDhspiWQ9+ulXYYN4kHfg=;
 b=YSkVCqJEX4shC03ReXzIwW08wzMzf9jR1LFQAXVse5bZ5th3L9Zdd203eGvxTCHOqPaigBS66YnxHGukb8aifIv76/IUsv1JSKM988UOE/h1elKbW6+0Aw8hxVJH8OhfyI/YyF9lSShxZHO31g9p2hq4aNrX6sJnowkzd/ZvNUOpZq47nhs8tN8rQNKZqffh0EJNwAvZSsaKhcNgow4/TwXYfdOuwHypbtdD9E+OqD7k16eTEsai5zmaCNzjZ+wjxbC4J/Qc7k7axdLfBzTDZIkDV7Nl9CueSI+luKH5Ex7WTCBGsPmF2Av0oPLz//MIlJRK7GyWOFXTzMm+t5Heqg==
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=r5240fKG5hTdjcdqqDr0qDzDhspiWQ9+ulXYYN4kHfg=;
 b=LdJeKG8AIxTQW/PVPvE8mGQAZuk28neKyqaBKOmbGFdOBrE+iulbuLqRAR5BHg78zDHb2LRBLRdzFLdkawfwxXd3pjGuG6voo2ZhN0hLbyXHouPjTC8h93Yvp29+RZHDhkHL/CUNp0Lx0ERehIoUJdUJDWTj1hKxJqgdeBl2nrc=
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>, Julien Grall <julien@xen.org>, Bertrand Marquis
	<bertrand.marquis@arm.com>, Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Michal Orzel <michal.orzel@amd.com>
Subject: [PATCH v5 1/9] xen/arm: don't pass iommu properties to hwdom for iommu-map
Date: Wed, 4 Oct 2023 10:55:45 -0400
Message-ID: <20231004145604.1085358-2-stewart.hildebrand@amd.com>
X-Mailer: git-send-email 2.42.0
In-Reply-To: <20231004145604.1085358-1-stewart.hildebrand@amd.com>
References: <20231004145604.1085358-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: BL6PEPF0001AB74:EE_|PH8PR12MB7028:EE_
X-MS-Office365-Filtering-Correlation-Id: 02c7348a-a5a0-4eb4-416a-08dbc4ea1c6c
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	TSQZI9tFww1+FZxV9J9PZATFYKdGe54UnezLiVluLrVV8JICZSniVGFu6fsCc5vhW0lW7uz2csS6TSDsTY4ninFPEPTw1OEXa2Tzn8oUq08jWkfKZULskEL+zSr7q9kcWgmygRYCOzCQ8aNlS5se5aIlM3d08fYbFngtLhjfcuXbh6Ymhn32/Upmyeww0tS4dPusginR8napWGeFCva+w2BnacvEvVAUr9wkssJ1hZkQwiuaJ20Oneeg8Fzq8JvI2eFe9X9LKgwairjD4ISaVX8iJBJDQWJJSxi8ApI7GCExvoEnkNU+uaYIPzZHNEV3PJQGJnksRbW6LVJm5ZXBvB8tQ/E1bZJPFDg3MADEMNva3F9eWeQC3QKGBraSgQnbkeHrCr1ZclWfqHCJveCIdp4yGLyKKQDlu3a0RuBJoSpGyk+dCHo5ml+Lo7UY/l1Rl2uNO4/t/0bRF5JkLTEGC7/85Xr1Y29mczcBoyreFNtk4pXcfQyoAs62VHeAzOiEg9MNpz3UAlHPS4dErAjYk4xdJhXa1we60nFq1eBrgXWaIh+DSYXSrCKln3gcovRVSPgCaoEz/izs/6RqLgEdiqvM+XTQUmdfcIutLaH4gcoLHYfIgSwYYFhK/GZBbMiRFMuf+IGhbJVPV/d1VpTqbYn79TsqeS/MXH3EbxQX4v2Y8j+3TU/QF09M6Mx98Z5PRz/s4BBMNAhd9jYbC8WbzJLsBiNifjlbPFAvmqNfaRjNF5Diyo276A93Cw66ls0E6VFp9Wry6Brsp4PTAVsQmA==
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)(39860400002)(346002)(230922051799003)(186009)(82310400011)(1800799009)(64100799003)(451199024)(40470700004)(46966006)(36840700001)(82740400003)(1076003)(40480700001)(40460700003)(36756003)(2616005)(6666004)(356005)(81166007)(336012)(426003)(26005)(36860700001)(2906002)(4326008)(86362001)(8676002)(5660300002)(8936002)(41300700001)(6916009)(316002)(44832011)(54906003)(70586007)(478600001)(47076005)(966005)(70206006)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Oct 2023 14:56:38.0836
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 02c7348a-a5a0-4eb4-416a-08dbc4ea1c6c
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:
	BL6PEPF0001AB74.namprd02.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH8PR12MB7028

A device tree node for a PCIe root controller may have an iommu-map property [1]
with a phandle reference to the SMMU node, but not necessarily an iommus
property. In this case, we want to treat it the same as we currently handle
devices with an iommus property: don't pass the iommu related properties to
hwdom.

[1] https://www.kernel.org/doc/Documentation/devicetree/bindings/pci/pci-iommu.txt

Reported-by: Michal Orzel <michal.orzel@amd.com>
Signed-off-by: Stewart Hildebrand <stewart.hildebrand@amd.com>
---
v4->v5:
* new patch
---
 xen/arch/arm/domain_build.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/xen/arch/arm/domain_build.c b/xen/arch/arm/domain_build.c
index 24c9019cc43c..7da254709d17 100644
--- a/xen/arch/arm/domain_build.c
+++ b/xen/arch/arm/domain_build.c
@@ -1135,6 +1135,8 @@ static int __init write_properties(struct domain *d, struct kernel_info *kinfo,
      * should be skipped.
      */
     iommu_node = dt_parse_phandle(node, "iommus", 0);
+    if ( !iommu_node )
+        iommu_node = dt_parse_phandle(node, "iommu-map", 1);
     if ( iommu_node && device_get_class(iommu_node) != DEVICE_IOMMU )
         iommu_node = NULL;
 
-- 
2.42.0



From xen-devel-bounces@lists.xenproject.org Wed Oct 04 14:57:01 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 04 Oct 2023 14:57:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612636.952654 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qo3J7-0003s0-C3; Wed, 04 Oct 2023 14:57:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612636.952654; Wed, 04 Oct 2023 14:57: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 1qo3J7-0003rr-7p; Wed, 04 Oct 2023 14:57:01 +0000
Received: by outflank-mailman (input) for mailman id 612636;
 Wed, 04 Oct 2023 14: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=HSqs=FS=amd.com=Stewart.Hildebrand@srs-se1.protection.inumbo.net>)
 id 1qo3J5-0003AF-Rh
 for xen-devel@lists.xenproject.org; Wed, 04 Oct 2023 14:56:59 +0000
Received: from NAM02-DM3-obe.outbound.protection.outlook.com
 (mail-dm3nam02on2062d.outbound.protection.outlook.com
 [2a01:111:f400:7e83::62d])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 4394965a-62c6-11ee-9b0d-b553b5be7939;
 Wed, 04 Oct 2023 16:56:58 +0200 (CEST)
Received: from MN2PR06CA0002.namprd06.prod.outlook.com (2603:10b6:208:23d::7)
 by DS0PR12MB8294.namprd12.prod.outlook.com (2603:10b6:8:f4::16) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.33; Wed, 4 Oct
 2023 14:56:54 +0000
Received: from BL6PEPF0001AB74.namprd02.prod.outlook.com
 (2603:10b6:208:23d:cafe::b0) 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.6838.33 via Frontend
 Transport; Wed, 4 Oct 2023 14:56:54 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 BL6PEPF0001AB74.mail.protection.outlook.com (10.167.242.167) 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, 4 Oct 2023 14:56:54 +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, 4 Oct
 2023 09:56:53 -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, 4 Oct
 2023 07:56:53 -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; Wed, 4 Oct 2023 09:56: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: 4394965a-62c6-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=naSRlI8kcw+3aF7Y/yyjLuRIW9bOwT1GsFzAeKAAFEIoqS9337dlv7ZM8NbSHIwgX/YagHwLgXDqb9WWQi200Bb/GcjXB9a2Gb2V4WOHHSG/WFVfpDoVzsKvmDrZCUJswWmtkGpj6rsGLAtxKCX9oU55IDynAAlmUofwcuJzS50Z3mJFmpj5VzRHdoIzadCc5j2TnKVIh78hjut/DOOf3sSv+E7XpjyaH/IhgiDZ63RVO403+Jrpf9o5M48GGZD1uFulF00RAOEQl0C92vQrJMIhOI4zQRurT/o0S3P2mGkxDxhDpGa+Jf1g6zUd+1DLlpfHam6hieViRxT7lqoNzg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=5iix2FgbkT3KfjbRn4i5V3Rtok8/gDyxhpUXUJyi77I=;
 b=B3E0cqNDFrW26wxfcUebivozRFQlH9ZmHrYkLWg6kqykstTv9FSN0k90jQE7EApGBFUhYMmYil8HYjnH+3th7iy/Z/6Pi9069a9sykJoTXMC1tfgwxdh/slog3HZeHl9WVzdtjuzNTlzgNzotKzJtdW069L3rzgwxhC9VSYoAhwXXDNUzeeV/raJvTZGqgkY8/0CglfX2CI1HfXdRg2V23yN0/ovLLjtXCYAQLY+p2vpWEdHgf4+fZccKDa9oTiseVUZSEsSXfZa70ToeY8B2B8FZOmu7IZMVPcbjiHojeCChwT83JrTdKxEIn9k+VvYVm5dp6r7F00awyXo54CkIw==
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=5iix2FgbkT3KfjbRn4i5V3Rtok8/gDyxhpUXUJyi77I=;
 b=dNCDLCow6+zNB8LiqyR7atxFJ63m4NsVAXPwI7l+lxWc5vBHA2NuyOcD0As4TEPXU0DCGAmjjEVbQga0hEI/4UAJa3kPMVR6l4LcQYnRI91Amd2veS1si08eHNNId/CGwkSsEfB9lvTq5d3KLBuHUtze5cqDYnPO4Z3giMDtHtc=
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: Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>, Stefano Stabellini
	<sstabellini@kernel.org>, Julien Grall <julien@xen.org>, Rahul Singh
	<rahul.singh@arm.com>, Bertrand Marquis <bertrand.marquis@arm.com>, "Jan
 Beulich" <jbeulich@suse.com>, Paul Durrant <paul@xen.org>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>, "Stewart
 Hildebrand" <stewart.hildebrand@amd.com>
Subject: [PATCH v5 2/9] iommu/arm: Add iommu_dt_xlate()
Date: Wed, 4 Oct 2023 10:55:46 -0400
Message-ID: <20231004145604.1085358-3-stewart.hildebrand@amd.com>
X-Mailer: git-send-email 2.42.0
In-Reply-To: <20231004145604.1085358-1-stewart.hildebrand@amd.com>
References: <20231004145604.1085358-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: BL6PEPF0001AB74:EE_|DS0PR12MB8294:EE_
X-MS-Office365-Filtering-Correlation-Id: 64e3e7ed-a3e6-4523-e548-08dbc4ea262e
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	pv22Mwz8hDC1+jYYKgrEVTDLp47OtNssTt76fqNfBuIJij5ckb59EbvNY1okfDnkLNMl+8lvhDOO1O29fUuIGOcotuYZEAU/AwVmXTMc2p3M49c62LFSo/UHG6LiPouMcdbe0GAtGHetDb8cKnh3gp7iiKmNBllIVFt+m2+4r19rRz8fhLaYdUJbMAahARc2f0cs08m7ZzgjGBNo/+oyqhJamDqflEgzMFMo3e+QFyZuqnjXb10o1IofGfxyPCln1hquihXgjbi5uIDyOoruitgW6cFTehoOg5gRzuxiLQHCM3fhXD4JZrBMNg+1ceABGn2WxBerT9lyQR9J7Rb8C4/ZEb/mO9CLH1bpnqMpI2GZO++SvRAxXFaGfjUocaQbvzB4FfmUm8jGj2kQycmXnrUM4DhBq7AAFjt4sgMcAJo6Z2ehHRluHEo+vC3Puv247axRiksCwCusStZsFbJJYs9WmKUWkbFEjXvmtn7URYUWy3ebm6zTz/bW/aaWR48IMWSHWSFz2wiyFQw97hGdQmctGYegTKZgshtG10UeWJi3GtBaGchBn28+3ALV0GZ7uM3YTVFWcqax2zQ+AGbDbGFxxPQH8tMDvVvtnIWJs5+A6D7bN8jdQHkgjju7mMMseICFQ7y5swCN055pWLJdewzt7MrphD3Vu/pPShjoibXtL5z+GDcKPNB84Kup3tJem7xLbLII7ROHq1R/H3KGtVaJriFWL6qTPFPbRp3AotYbxpfibygZiFALv70YrF9d
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)(136003)(39860400002)(346002)(230922051799003)(1800799009)(186009)(82310400011)(64100799003)(451199024)(36840700001)(46966006)(40470700004)(83380400001)(336012)(426003)(36860700001)(40480700001)(70586007)(5660300002)(86362001)(47076005)(82740400003)(81166007)(26005)(2616005)(356005)(70206006)(2906002)(1076003)(6666004)(966005)(478600001)(40460700003)(36756003)(44832011)(8936002)(4326008)(54906003)(316002)(6916009)(41300700001)(8676002)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Oct 2023 14:56:54.4587
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 64e3e7ed-a3e6-4523-e548-08dbc4ea262e
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:
	BL6PEPF0001AB74.namprd02.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS0PR12MB8294

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>
---
v4->v5:
* rebase on top of "dynamic node programming using overlay dtbo" series
* move #define NO_IOMMU 1 to header
* s/these/this/ inside comment

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 | 48 +++++++++++++++++----------
 xen/include/xen/iommu.h               |  2 ++
 2 files changed, 32 insertions(+), 18 deletions(-)

diff --git a/xen/drivers/passthrough/device_tree.c b/xen/drivers/passthrough/device_tree.c
index 075fb25a3706..159ace9856c9 100644
--- a/xen/drivers/passthrough/device_tree.c
+++ b/xen/drivers/passthrough/device_tree.c
@@ -137,6 +137,30 @@ int iommu_release_dt_devices(struct domain *d)
     return 0;
 }
 
+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_remove_dt_device(struct dt_device_node *np)
 {
     const struct iommu_ops *ops = iommu_get_ops();
@@ -146,7 +170,7 @@ int iommu_remove_dt_device(struct dt_device_node *np)
     ASSERT(rw_is_locked(&dt_host_lock));
 
     if ( !iommu_enabled )
-        return 1;
+        return NO_IOMMU;
 
     if ( !ops )
         return -EOPNOTSUPP;
@@ -187,12 +211,12 @@ 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;
 
     ASSERT(system_state < SYS_STATE_active || rw_is_locked(&dt_host_lock));
 
     if ( !iommu_enabled )
-        return 1;
+        return NO_IOMMU;
 
     if ( !ops )
         return -EINVAL;
@@ -215,27 +239,15 @@ int iommu_add_dt_device(struct dt_device_node *np)
     {
         /*
          * The driver which supports generic IOMMU DT bindings must have
-         * these callback implemented.
+         * this callback implemented.
          */
-        if ( !ops->add_device || !ops->dt_xlate )
+        if ( !ops->add_device )
         {
             rc = -EINVAL;
             goto fail;
         }
 
-        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;
 
diff --git a/xen/include/xen/iommu.h b/xen/include/xen/iommu.h
index 0e747b0bbc1c..8cd4b9a6bfb2 100644
--- a/xen/include/xen/iommu.h
+++ b/xen/include/xen/iommu.h
@@ -245,6 +245,8 @@ int iommu_do_dt_domctl(struct xen_domctl *domctl, struct domain *d,
  */
 int iommu_remove_dt_device(struct dt_device_node *np);
 
+#define NO_IOMMU    1
+
 #endif /* HAS_DEVICE_TREE */
 
 struct page_info;
-- 
2.42.0



From xen-devel-bounces@lists.xenproject.org Wed Oct 04 14:57:19 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 04 Oct 2023 14:57:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612643.952664 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qo3JO-0004cD-Qi; Wed, 04 Oct 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 612643.952664; Wed, 04 Oct 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 1qo3JO-0004c4-Nu; Wed, 04 Oct 2023 14:57:18 +0000
Received: by outflank-mailman (input) for mailman id 612643;
 Wed, 04 Oct 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=HSqs=FS=amd.com=Stewart.Hildebrand@srs-se1.protection.inumbo.net>)
 id 1qo3JN-0004W4-4n
 for xen-devel@lists.xenproject.org; Wed, 04 Oct 2023 14:57:17 +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 4dea27ec-62c6-11ee-98d3-6d05b1d4d9a1;
 Wed, 04 Oct 2023 16:57:15 +0200 (CEST)
Received: from MN2PR04CA0036.namprd04.prod.outlook.com (2603:10b6:208:d4::49)
 by BL1PR12MB5349.namprd12.prod.outlook.com (2603:10b6:208:31f::7)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.37; Wed, 4 Oct
 2023 14:57:11 +0000
Received: from BL02EPF0001A103.namprd05.prod.outlook.com
 (2603:10b6:208:d4:cafe::ba) by MN2PR04CA0036.outlook.office365.com
 (2603:10b6:208:d4::49) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.25 via Frontend
 Transport; Wed, 4 Oct 2023 14:57:11 +0000
Received: from SATLEXMB03.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.6838.14 via Frontend Transport; Wed, 4 Oct 2023 14:57:11 +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, 4 Oct
 2023 09:57: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; Wed, 4 Oct
 2023 09:57:09 -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, 4 Oct 2023 09:57: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: 4dea27ec-62c6-11ee-98d3-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=HQdnqz5xFpSXsDP5p542Q3RpMGQQWbEEu/aQywJFGikNmoqGDJ+8LX/WF3yY2k+n/FW9YqtYZCtx2SnoeVsdhO4n0/ahOLvlYElxVmnvw2uGrdIgi37zC87lqe1G2DKBzFzNwWfs/pQ0Pe6Qn1dOhE2ud027V6yN5+kVa8mRVdRWbJJ6ABpEMpHh1cQ2G3RdoYP6LcmEi9lunEP5aqdlvgGq8QCO/6e9nTUidJrc0mBJsHYonAA5FXIlJKO7aecna/jCMIJkPydVwzMY57I1T+VvHTHLxKQxWaYf15LvZmdH9vn1LluS5HnNJbOAoACKL1xxFBK9EOzql1b3DGKNMQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=A30ver62Ahssxfk7OHupEUiGGZlj9h7dhnRjMZiI64A=;
 b=PvPLCa1qTsMnqPsnauU6HZ6j/9DQETnnuVHTaLNxgkMqaW2XNpuDqo9Eu9HpLwIEKQAg00JSQYzVm/LrNryBPBc8wxwvaej85abhOCGwlmOJ2QPCmZ2xLjNURbHnryE8+Ei+bp0f1Tq4xzhJcPP2gfKydmW1SALf/0QrUlYOkyJkaAiFwxuipBpcrBqDmXS1IFEvBNhqJUwefkOufl61snKMaIh54mJsHlZJkp5g+bp+inNVraTkOf4UkmFIj2kLo33bE16p722oQ2xR8owq2wZO2xlDVVfyT+M/RZZuoZntorAuXM8FK+fUDmwFyNjDJhK6GeD5YA7/uv4VupPKzg==
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=A30ver62Ahssxfk7OHupEUiGGZlj9h7dhnRjMZiI64A=;
 b=rGRpbP+1sk5BZ0RDdgra358wfVgwRbietzztuSpwXMzjhWrUGbqdFzE4lKy9eQ2V5EtmJ0FFjoOwVP4CajuHTe+1A5T6q4WBJyBl4bMS5R+ziv5mDYvVSDV/28EDOVz3LJPBk9jL5Wv/hSQ4+f/5Or+JUk8Mdq4iMMYh+09IKd4=
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: Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>, Stefano Stabellini
	<sstabellini@kernel.org>, Julien Grall <julien@xen.org>, Jan Beulich
	<jbeulich@suse.com>, Paul Durrant <paul@xen.org>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>, Rahul Singh
	<rahul.singh@arm.com>, Bertrand Marquis <bertrand.marquis@arm.com>, "Stewart
 Hildebrand" <stewart.hildebrand@amd.com>
Subject: [PATCH v5 3/9] iommu/arm: Introduce iommu_add_dt_pci_sideband_ids API
Date: Wed, 4 Oct 2023 10:55:47 -0400
Message-ID: <20231004145604.1085358-4-stewart.hildebrand@amd.com>
X-Mailer: git-send-email 2.42.0
In-Reply-To: <20231004145604.1085358-1-stewart.hildebrand@amd.com>
References: <20231004145604.1085358-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: BL02EPF0001A103:EE_|BL1PR12MB5349:EE_
X-MS-Office365-Filtering-Correlation-Id: a4320b88-5952-467a-9038-08dbc4ea3056
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	2lQhLsWXOuBorBPmNi0aBPuY/kCAAo0txcJATzKmtZW5j46+ILpmZyYgf2s8sROw+rFoGRXmKcPEFfqi2AsOtTbi++YdPmdcgYnTXyXboAR3GBddFlzTigJpys7cXKQd/Ay5urOcRIPNksfchmJAhgsKjleoEDntUmnKA9eCp57whxTbntSWk7BFt+xW35s1CCiFPh8lT8GDLousePpsqyuoK+V8fynnTvEmeBhj1WXKDn1AGcGMPdlTOEN8wJagHjrjMhGmpoIqnxlRkVSBxKFAfZIYH9VwL238BvL+CaGo752HmFo8GAJIiWxiPy63bUyH2JpN+I3tqKsrmZKMpWpuB4rjXKWaOHkByEoqUpPyrLr0nMULcIVF1xg+eFc+wPG6nY3LdBo5XPv4ZDPjXpmPuMreK+IM16x+T8zvXTAJ5yylRLsoFuCmtCbJ/QwXz2lRFcfMEiKmyfw6W/CA+bTK7gfpSZZz/Z7Nbir8FDF+tp2wZJ4UR6wDtXjA2RY1fHPrrmdWvt0ybVQh4wPvcNdhBMmV30EngnY9TRA7CinOoTXISJbNzh3hz/ilX0gSv7LmBS/zGZhMbfpjxFrWcWlV3OHPEp5XKypEALY/RvmnjdUhOUNisOVdbwO0GOodzmzMG3gtRyH+lqZTbOzGQyv23ruxG8R0ulA3uJ+C56a/XgZ1/lqY7eW8etEikE8d4aa7nQ8a+QMlrxH9OJP71dsY4Z4j7WUyZeLtYPr+t5faKCI4XdGlb0YVoYyoOxX8xmlvpsbF0QzC6BC9iL/Wbf72BR3RV8uOepVBPwIJpWEo35sS5y0x13G2PIAPznrg
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)(230922051799003)(186009)(64100799003)(82310400011)(451199024)(1800799009)(36840700001)(40470700004)(46966006)(2616005)(1076003)(478600001)(966005)(6666004)(83380400001)(47076005)(336012)(426003)(26005)(30864003)(2906002)(44832011)(5660300002)(70206006)(54906003)(70586007)(6916009)(4326008)(8936002)(8676002)(41300700001)(316002)(40460700003)(82740400003)(36860700001)(36756003)(356005)(81166007)(40480700001)(86362001)(2004002)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Oct 2023 14:57:11.4959
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: a4320b88-5952-467a-9038-08dbc4ea3056
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:
	BL02EPF0001A103.namprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BL1PR12MB5349

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 dt_map_id to translate an ID through a downstream mapping
(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>
---
v4->v5:
* style: add newlines after variable declarations and before return in iommu.h
* drop device_is_protected() check in iommu_add_dt_pci_sideband_ids()
* rebase on top of ("dynamic node programming using overlay dtbo") series
* fix typo in commit message
* remove #ifdef around dt_map_id() prototype
* move dt_map_id() to xen/common/device_tree.c
* add function name in error prints
* use dprintk for debug prints
* use GENMASK and #include <xen/bitops.h>
* fix typo in comment
* remove unnecessary (int) cast in loop condition
* assign *id_out and return success in case of no translation in dt_map_id()
* don't initialize local variable unnecessarily
* return error in case of ACPI/no DT in iommu_add_{dt_}pci_sideband_ids()

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/common/device_tree.c              | 91 +++++++++++++++++++++++++++
 xen/drivers/passthrough/device_tree.c | 42 +++++++++++++
 xen/include/xen/device_tree.h         | 23 +++++++
 xen/include/xen/iommu.h               | 24 ++++++-
 4 files changed, 179 insertions(+), 1 deletion(-)

diff --git a/xen/common/device_tree.c b/xen/common/device_tree.c
index b1c29529514f..5cb84864b89b 100644
--- a/xen/common/device_tree.c
+++ b/xen/common/device_tree.c
@@ -10,6 +10,7 @@
  * published by the Free Software Foundation.
  */
 
+#include <xen/bitops.h>
 #include <xen/types.h>
 #include <xen/init.h>
 #include <xen/guest_access.h>
@@ -2243,6 +2244,96 @@ int dt_get_pci_domain_nr(struct dt_device_node *node)
     return (u16)domain;
 }
 
+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)
+{
+    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(): %s: Error: Bad %s length: %u\n", __func__,
+               np->full_name, map_name, map_len);
+        return -EINVAL;
+    }
+
+    /* The default is to select all bits. */
+    map_mask = GENMASK(31, 0);
+
+    /*
+     * Can be overridden by "{iommu,msi}-map-mask" property.
+     * If dt_property_read_u32() fails, the default is used.
+     */
+    if ( map_mask_name )
+        dt_property_read_u32(np, map_mask_name, &map_mask);
+
+    masked_id = map_mask & id;
+    for ( ; map_len > 0; map_len -= 4 * sizeof(*map), map += 4 )
+    {
+        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(): %s: Invalid %s translation - %s-mask (0x%"PRIx32") ignores id-base (0x%"PRIx32")\n",
+                   __func__, np->full_name, map_name, map_name, map_mask,
+                   id_base);
+            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;
+
+        dprintk(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",
+               np->full_name, map_name, map_mask, id_base, out_base, id_len, id,
+               masked_id - id_base + out_base);
+        return 0;
+    }
+
+    dprintk(XENLOG_DEBUG, "%s: no %s translation for id 0x%"PRIx32" on %s\n",
+           np->full_name, map_name, id,
+           (target && *target) ? (*target)->full_name : NULL);
+
+    if ( id_out )
+        *id_out = id;
+
+    return 0;
+}
+
 /*
  * Local variables:
  * mode: C
diff --git a/xen/drivers/passthrough/device_tree.c b/xen/drivers/passthrough/device_tree.c
index 159ace9856c9..5ee81132cb4d 100644
--- a/xen/drivers/passthrough/device_tree.c
+++ b/xen/drivers/passthrough/device_tree.c
@@ -161,6 +161,48 @@ static int iommu_dt_xlate(struct device *dev,
     return ops->dt_xlate(dev, iommu_spec);
 }
 
+#ifdef CONFIG_HAS_PCI
+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;
+
+    if ( !iommu_enabled )
+        return NO_IOMMU;
+
+    if ( !ops )
+        return -EINVAL;
+
+    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_remove_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 a262bba2edaf..14ec3f565976 100644
--- a/xen/include/xen/device_tree.h
+++ b/xen/include/xen/device_tree.h
@@ -939,6 +939,29 @@ int dt_count_phandle_with_args(const struct dt_device_node *np,
  */
 int dt_get_pci_domain_nr(struct dt_device_node *node);
 
+/**
+ * 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);
+
 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 8cd4b9a6bfb2..2f081a8cea62 100644
--- a/xen/include/xen/iommu.h
+++ b/xen/include/xen/iommu.h
@@ -27,6 +27,9 @@
 #include <xen/errno.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);
@@ -222,7 +225,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
@@ -231,6 +235,7 @@ 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 *domctl, struct domain *d,
                        XEN_GUEST_HANDLE_PARAM(xen_domctl_t) u_domctl);
@@ -247,8 +252,25 @@ int iommu_remove_dt_device(struct dt_device_node *np);
 
 #define NO_IOMMU    1
 
+#else /* !HAS_DEVICE_TREE */
+static inline int iommu_add_dt_pci_sideband_ids(struct pci_dev *pdev)
+{
+    return -ENOSYS;
+}
 #endif /* HAS_DEVICE_TREE */
 
+static inline int iommu_add_pci_sideband_ids(struct pci_dev *pdev)
+{
+    int ret = -ENOSYS;
+
+#ifdef CONFIG_ACPI
+    if ( acpi_disabled )
+#endif
+        ret = iommu_add_dt_pci_sideband_ids(pdev);
+
+    return ret;
+}
+
 struct page_info;
 
 /*
-- 
2.42.0



From xen-devel-bounces@lists.xenproject.org Wed Oct 04 14:57:31 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 04 Oct 2023 14:57:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612647.952674 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qo3Jb-00052A-4k; Wed, 04 Oct 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 612647.952674; Wed, 04 Oct 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 1qo3Jb-000521-1j; Wed, 04 Oct 2023 14:57:31 +0000
Received: by outflank-mailman (input) for mailman id 612647;
 Wed, 04 Oct 2023 14:57: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=HSqs=FS=amd.com=Stewart.Hildebrand@srs-se1.protection.inumbo.net>)
 id 1qo3JZ-0003AF-M7
 for xen-devel@lists.xenproject.org; Wed, 04 Oct 2023 14:57:29 +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 5562efc1-62c6-11ee-9b0d-b553b5be7939;
 Wed, 04 Oct 2023 16:57:28 +0200 (CEST)
Received: from BL1PR13CA0272.namprd13.prod.outlook.com (2603:10b6:208:2bc::7)
 by SN7PR12MB7177.namprd12.prod.outlook.com (2603:10b6:806:2a5::14)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.30; Wed, 4 Oct
 2023 14:57:24 +0000
Received: from BL02EPF0001A102.namprd05.prod.outlook.com
 (2603:10b6:208:2bc:cafe::be) by BL1PR13CA0272.outlook.office365.com
 (2603:10b6:208:2bc::7) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.26 via Frontend
 Transport; Wed, 4 Oct 2023 14:57:24 +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.6838.14 via Frontend Transport; Wed, 4 Oct 2023 14:57:23 +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, 4 Oct
 2023 09:57:23 -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, 4 Oct 2023 09:57: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: 5562efc1-62c6-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=HUZJpkHYICEtbMls9WotbUD8YSigRXKZ9s23ouNo2v9T3O2QzCxoP1zgv4yyODrql3m0ZrL3LEYyC1syeJVj8f5U5+BkE1U1V0Wx9wqVb2yUSPybMzVDZd0IAiqU8lmrVF+qtAs9xuLkOlvMbRw9mLd6v4OPb7AoJ9BpClSu1rp+zbj5F9eOjFOjJ7tE0C7zdaLxV3+78bhRAI5pdMbvROIKVVGpvJq5hlkNaxF3Eeb1avAxo+nmdhF96sgEX8Aeeyz4K9qEmIWZi07WN81h4D+QNAJWO8q9/zymgIJgDhywKCcGfzQVuoeT/XxdEoZhYLcNwkYFQPX8VF1LIkBmcQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=gMGfhRMidI5Q9rWJbOR3jMgwaiE5T2UVGPqzLNoQdxs=;
 b=iaOB8Kl4pWa1TYeCtT4CAPV9xsF3mP9U+cRb0eeTXrW7gPhOAovKujK2PQwbTN7+bSAH0uHNC3DIZYhwfQDXncbAeURdUarA7zdqNgFcNUFq3q3GUzavrrlqrFRycDWt15gdX3maIzmSHEmzh5o4wEGx6Ra5wx9DGuDHt9lSPgyUJTMgRJqwcRYFjp6DRuc/oMjRuf7g4wmwPlQ8yM/FDWnsXGP5N2kqzUGXRVO+InE+MJ1jUSMdDYs7GsmxNqtuFV0284nCPCIAy43yx0r9XqOosO5nZU0UHYIXLcjRDDJhMzFvcyXZWBLukeW0pjVaLlPgKBVt3dIxstH0/V5GAw==
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=gMGfhRMidI5Q9rWJbOR3jMgwaiE5T2UVGPqzLNoQdxs=;
 b=ZQ6ooXfdWHu7quKuj10jlNfSrd+zENJ7HBzITssNC1Fy4UKBC00/ozyih1LQV8hWDcHo/E8YCkIGBpTc8XBy57EvILxnJow6XXXBxXXppz8NRvw8wXjh5WsKaUvVR8oHTQK6rQDTvQRMB46cQzSxWJzU9Z/fBV7dUv5jrj5QrD0=
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>, Julien Grall <julien@xen.org>, Rahul Singh
	<rahul.singh@arm.com>, Bertrand Marquis <bertrand.marquis@arm.com>
Subject: [PATCH v5 4/9] iommu/arm: iommu_add_dt_pci_sideband_ids phantom handling
Date: Wed, 4 Oct 2023 10:55:48 -0400
Message-ID: <20231004145604.1085358-5-stewart.hildebrand@amd.com>
X-Mailer: git-send-email 2.42.0
In-Reply-To: <20231004145604.1085358-1-stewart.hildebrand@amd.com>
References: <20231004145604.1085358-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: BL02EPF0001A102:EE_|SN7PR12MB7177:EE_
X-MS-Office365-Filtering-Correlation-Id: 27c3f554-bd33-4391-fa32-08dbc4ea37c9
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	C/isnkQFCaDQCT/VizsNjbMlPgYV1NL2X8PEPdkGog6WU4iWs0YZGDJIXJqRxNI/VxxcJB/jo1AqlOFMH7xkvGTcpVszRlEavHcBFlv39aTGMuwatAWiniY9gJos474+oPBU5JA98oKpHrI8f31GwzBUPtIlAHlx7J099+mou6fpewSB3ACdzh/iIGSC1V6tYNJHoLenPRk4vAA2WvOloBvN0R7U1tJlkG4fThHM58yEcuvLoZZ6eSWa1mPi4QAnuWbU/2arhUzBh4wnTwL9qMpEygfRhP0RnntVIYcWza3W3je7nvFDo723dRtHESPNs9F2L4ESxQP7Z9z+MdyId8dhaeRRWZvv6oDXBxtj4l900s6PqKuV7kYu1RfqaPc2wtMCE/VsEI1wEZzBxzehhfohkEXYiLueqne4UA8LAs/JnC78aSx3aKO8SAnwqMLgqOrKnWDc8kUy/3tG9oRFLR3aX6KrZYiZM26lyQE5fzAxfs0V5i560XqfWzQeiE8OOwz7Z83SySOQ8Y9ThUXRK4iygRq8PIjHuH1svW2RYROc676OKeU/inMNIHBaXtdDWYf05q8iWp75jh3mxKT304N1dVX28/F1oukJRqdMYaRhRN4JsT3uKo1ceC1FJ0PRiSiNthIpHQGz0RExxhBtyPS2CXUydhTN17j6gYm7Lh0fv0eRinslxxOHKMGiTIuM2WBts7+sMaC71EkyfIg9W8SscmwdcIaO5UdzcteRDCkC1rbStrBWgX7P1F4myZEWODLSZngSA3UW6WJtZ1t6vA==
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)(64100799003)(186009)(451199024)(82310400011)(1800799009)(46966006)(36840700001)(40470700004)(83380400001)(478600001)(6666004)(26005)(1076003)(356005)(2616005)(82740400003)(81166007)(966005)(36860700001)(426003)(336012)(47076005)(70586007)(70206006)(316002)(54906003)(8936002)(8676002)(4326008)(41300700001)(86362001)(40480700001)(5660300002)(2906002)(36756003)(6916009)(40460700003)(44832011)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Oct 2023 14:57:23.9807
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 27c3f554-bd33-4391-fa32-08dbc4ea37c9
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: SN7PR12MB7177

Handle phantom functions in iommu_add_dt_pci_sideband_ids(). Each phantom
function will have a unique requestor ID (RID)/BDF. On ARM, we need to
map/translate the RID/BDF to an AXI stream ID for each phantom function
according to the pci-iommu device tree mapping [1]. The RID/BDF -> AXI stream ID
mapping in DT could allow phantom devices (i.e. devices with phantom functions)
to use different AXI stream IDs based on the (phantom) function.

[1] https://www.kernel.org/doc/Documentation/devicetree/bindings/pci/pci-iommu.txt

Signed-off-by: Stewart Hildebrand <stewart.hildebrand@amd.com>
---
v4->v5:
* no change

v3->v4:
* s/iommu_dt_pci_map_id/dt_map_id/

v2->v3:
* new patch title (was: iommu/arm: iommu_add_dt_pci_device phantom handling)
* rework loop to reduce duplication
* s/iommu_fwspec_free(pci_to_dev(pdev))/iommu_fwspec_free(dev)/

v1->v2:
* new patch
---
 xen/drivers/passthrough/device_tree.c | 33 ++++++++++++++++-----------
 1 file changed, 20 insertions(+), 13 deletions(-)

diff --git a/xen/drivers/passthrough/device_tree.c b/xen/drivers/passthrough/device_tree.c
index 5ee81132cb4d..6159777aa26f 100644
--- a/xen/drivers/passthrough/device_tree.c
+++ b/xen/drivers/passthrough/device_tree.c
@@ -169,6 +169,7 @@ int iommu_add_dt_pci_sideband_ids(struct pci_dev *pdev)
     struct device *dev = pci_to_dev(pdev);
     const struct dt_device_node *np;
     int rc;
+    unsigned int devfn = pdev->devfn;
 
     if ( !iommu_enabled )
         return NO_IOMMU;
@@ -183,21 +184,27 @@ int iommu_add_dt_pci_sideband_ids(struct pci_dev *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;
+    do {
+        /*
+         * According to the Documentation/devicetree/bindings/pci/pci-iommu.txt
+         * from Linux.
+         */
+        rc = dt_map_id(np, PCI_BDF(pdev->bus, 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;
+        rc = iommu_dt_xlate(dev, &iommu_spec);
+        if ( rc < 0 )
+        {
+            iommu_fwspec_free(dev);
+            return -EINVAL;
+        }
+
+        devfn += pdev->phantom_stride;
     }
+    while ( (devfn != pdev->devfn) &&
+            (PCI_SLOT(devfn) == PCI_SLOT(pdev->devfn)) );
 
     return rc;
 }
-- 
2.42.0



From xen-devel-bounces@lists.xenproject.org Wed Oct 04 14:57:46 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 04 Oct 2023 14:57:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612652.952684 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qo3Jp-0005ZY-H7; Wed, 04 Oct 2023 14:57:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612652.952684; Wed, 04 Oct 2023 14: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 1qo3Jp-0005ZP-E7; Wed, 04 Oct 2023 14:57:45 +0000
Received: by outflank-mailman (input) for mailman id 612652;
 Wed, 04 Oct 2023 14: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=HSqs=FS=amd.com=Stewart.Hildebrand@srs-se1.protection.inumbo.net>)
 id 1qo3Jo-0004W4-8Z
 for xen-devel@lists.xenproject.org; Wed, 04 Oct 2023 14:57:44 +0000
Received: from NAM12-BN8-obe.outbound.protection.outlook.com
 (mail-bn8nam12on20621.outbound.protection.outlook.com
 [2a01:111:f400:fe5b::621])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 5e326ffc-62c6-11ee-98d3-6d05b1d4d9a1;
 Wed, 04 Oct 2023 16:57:42 +0200 (CEST)
Received: from BL0PR1501CA0018.namprd15.prod.outlook.com
 (2603:10b6:207:17::31) by SN7PR12MB7855.namprd12.prod.outlook.com
 (2603:10b6:806:343::14) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.30; Wed, 4 Oct
 2023 14:57:39 +0000
Received: from BL6PEPF0001AB78.namprd02.prod.outlook.com
 (2603:10b6:207:17:cafe::3a) by BL0PR1501CA0018.outlook.office365.com
 (2603:10b6:207:17::31) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.36 via Frontend
 Transport; Wed, 4 Oct 2023 14:57:39 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 BL6PEPF0001AB78.mail.protection.outlook.com (10.167.242.171) 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, 4 Oct 2023 14:57:38 +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, 4 Oct
 2023 09:57:38 -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, 4 Oct
 2023 07:57:38 -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; Wed, 4 Oct 2023 09:57: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: 5e326ffc-62c6-11ee-98d3-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=BCEqx/d7tjYCW2+HQe7eLfMAnCSgxi2R/Gb4jAF23hqQ/qfU+2TMntAhpsxzuU3FuP/f7scnxWYFG9ypsnsqC0+HIfL7WgZFTJTouBqgVZCGoFl34RSggAv1jHavMD3hHtomv65FUYDM0SkTB5NZwb3yMXbS1fEq+smuwBZ4WxF0WRDHQX2w8+pW0ZI+XqGP6Y5YDZsA7+ecJL/+RgpieMp+zBfCKTiwH6UksJZmKUds15oYB8IlR7TZjrbKvR9lV/FuY+5b/zvmAs1NALTyWnjTL6KRFOroTgMVqIWRNr/Qeuy3GXipVVdnP5qO9o/JlIJCL23w7jaSeXecM7GYng==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=x4AYv33/X/13s7Ze2qypFs4BrnEYDd/Kdz0LDlK/3rM=;
 b=QY5+PcIuMgPPK9GuCT+5Kg09cSCDY1lHFSQm3e+gY7k97AgE/w6t49tZY+iJzawXLAN2lX/5L1peII5jkq8ADm0wFx4XfCmcoQtQeMsKCZPhc3Fh6MJ1avUkE+3MHL3JfSQgxBAoJ6fwDBQXIEdzxpE26pomu40IOEpsHQbJQwp6ZkKEio9VoikM2nojg4TOScvoj9iaGS+R5T2rPqe/4YAD7zBZTSi2o4CrHw36zHdPzsQzIt+o2w676lvXJ77G+9nZg1Yg8B0DsBo9Z8grxockqO14c8NgAutNy7CrmK7E/LLOj+4EetFC8XpoxJvE73hQe6mWLU0ZWl4zCK4EYg==
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=x4AYv33/X/13s7Ze2qypFs4BrnEYDd/Kdz0LDlK/3rM=;
 b=erG9MWzMx0K9PAOtLWz8NlIfsTxeUAJRUK2wVQmrbho6HIMNTQNSg6lUu4LPUO4NeG84/Mjx6HZEww6RKsOdHJ5kAZdxavr6cYhxATWCFEEQssnw6NJDMP0kXEl24RnwT6KSu2Umx5BIDOsZ3vuFirtzsVZVZAXU8tcojfxGjh0=
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: Oleksandr Andrushchenko <oleksandr_andrushchenko@epam.com>, Julien Grall
	<julien@xen.org>, Rahul Singh <rahul.singh@arm.com>, Stefano Stabellini
	<sstabellini@kernel.org>, Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, Oleksandr Tyshchenko
	<oleksandr_tyshchenko@epam.com>, Stewart Hildebrand
	<stewart.hildebrand@amd.com>
Subject: [PATCH v5 5/9] xen/arm: smmuv2: Add PCI devices support for SMMUv2
Date: Wed, 4 Oct 2023 10:55:49 -0400
Message-ID: <20231004145604.1085358-6-stewart.hildebrand@amd.com>
X-Mailer: git-send-email 2.42.0
In-Reply-To: <20231004145604.1085358-1-stewart.hildebrand@amd.com>
References: <20231004145604.1085358-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: BL6PEPF0001AB78:EE_|SN7PR12MB7855:EE_
X-MS-Office365-Filtering-Correlation-Id: d3156fc9-2905-4bcc-ffbe-08dbc4ea40aa
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	wEjf5tgQvu+9oacGnuHBJpefFTGUpyeV4QRqKBoLIjBphq8iRUdpsmqYkCDjHqbH3z6Qau/hiQVfPAGRTLT7Mwfq0dqjGmgAuKQs0BzKVb+XoeH65xWl2H5KThOHjQaP6saGJq5WfFgC3q25byq055xzcNWuiuWJU5aXHWs/JuGyI6yw6Q2/FRQNCkwE65cMeU2bqx+5ngY4McEaYo8LKfe+WDi6U39s4+2dPeDuoPLYrk/CNewkKzXKIdIp4x8yWZtJftxXhj1W6uVbMfgcXxgLPsHfe+ZJagsz2tYABoIVADK9TZvk+50nBJ4ROv3+2ucY1sLZbYUOvcLgoEHEd1yry4kbz7oMQsvvZs15Z1+ynGqlBvfASb/vgLfnmLetX+QrVJ7ADadoIdihluhls8R5o0LfBTkZ3L+55fy/3TA6M1LCEdKD2fvOaiP+0BYClArsiInT8ehZ/bGsOMVnnPAOgF7s1COHVf4rEmQKVEehuu3j+vZGStsXXvcOThU37Lf3KnEtkaztb8+WQOjCRr6Bdr8fV6deeNK8+Gb/GYrrcOg/35wo4UvKhJM5IW2ZYZWvd2OfnJ6yBGeioU1//ICqcWgbVG2sQM1glRMBxpItMj6+leDUMp1CsOu5RhNXL7a3FoJuBQLuDxa+KCFx6cOhq3e95+4oqagOLLfPq6VrEGpwSRZTs3DbPJwnDIXwpcqkPHMalQZvP3K0KwdcV8EX4QLnDnLR51nqzY3/Lb3fRdlSfm+KenDBuBeF4XeP
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)(396003)(39860400002)(136003)(230922051799003)(64100799003)(1800799009)(82310400011)(186009)(451199024)(36840700001)(40470700004)(46966006)(478600001)(6666004)(966005)(26005)(1076003)(2616005)(316002)(2906002)(30864003)(83380400001)(4326008)(44832011)(8676002)(6916009)(41300700001)(70586007)(54906003)(70206006)(5660300002)(36756003)(8936002)(86362001)(47076005)(36860700001)(82740400003)(81166007)(356005)(426003)(336012)(40480700001)(40460700003)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Oct 2023 14:57:38.9084
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: d3156fc9-2905-4bcc-ffbe-08dbc4ea40aa
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:
	BL6PEPF0001AB78.namprd02.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN7PR12MB7855

From: Oleksandr Andrushchenko <oleksandr_andrushchenko@epam.com>

Signed-off-by: Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>
Signed-off-by: Oleksandr Andrushchenko <oleksandr_andrushchenko@epam.com>
Signed-off-by: Stewart Hildebrand <stewart.hildebrand@amd.com>
---
v4->v5:
* assign device to pdev->domain (usually dom0) by default in add_device() hook
* deassign from hwdom
* rebase on top of ("dynamic node programming using overlay dtbo") series
* remove TODO in comment about device prints
* add TODO regarding locking
* fixup after dropping ("xen/arm: Move is_protected flag to struct device")

v3->v4:
* add new device_is_protected check in add_device hook to match SMMUv3 and
  IPMMU-VMSA drivers

v2->v3:
* invoke iommu_add_pci_sideband_ids() from add_device hook

v1->v2:
* ignore add_device/assign_device/reassign_device calls for phantom functions
  (i.e. devfn != pdev->devfn)

downstream->v1:
* wrap unused function in #ifdef 0
* remove the remove_device() stub since it was submitted separately to the list
  [XEN][PATCH v6 12/19] xen/smmu: Add remove_device callback for smmu_iommu ops
  https://lists.xenproject.org/archives/html/xen-devel/2023-05/msg00204.html
* arm_smmu_(de)assign_dev: return error instead of crashing system
* update condition in arm_smmu_reassign_dev
* style fixup
* add && !is_hardware_domain(d) into condition in arm_smmu_assign_dev()

(cherry picked from commit 0c11a7f65f044c26d87d1e27ac6283ef1f9cfb7a from
 the downstream branch spider-master from
 https://github.com/xen-troops/xen.git)
---
 xen/drivers/passthrough/arm/smmu.c | 194 ++++++++++++++++++++++++-----
 1 file changed, 164 insertions(+), 30 deletions(-)

diff --git a/xen/drivers/passthrough/arm/smmu.c b/xen/drivers/passthrough/arm/smmu.c
index 71799064f80b..aae54aeea4ad 100644
--- a/xen/drivers/passthrough/arm/smmu.c
+++ b/xen/drivers/passthrough/arm/smmu.c
@@ -131,11 +131,21 @@ enum irqreturn {
 
 typedef enum irqreturn irqreturn_t;
 
-/* Device logger functions
- * TODO: Handle PCI
- */
-#define dev_print(dev, lvl, fmt, ...)						\
-	 printk(lvl "smmu: %s: " fmt, dt_node_full_name(dev_to_dt(dev)), ## __VA_ARGS__)
+/* Device logger functions */
+#ifndef CONFIG_HAS_PCI
+#define dev_print(dev, lvl, fmt, ...)    \
+    printk(lvl "smmu: %s: " fmt, dev_name(dev), ## __VA_ARGS__)
+#else
+#define dev_print(dev, lvl, fmt, ...) ({                                \
+    if ( !dev_is_pci((dev)) )                                           \
+        printk(lvl "smmu: %s: " fmt, dev_name((dev)), ## __VA_ARGS__);  \
+    else                                                                \
+    {                                                                   \
+        struct pci_dev *pdev = dev_to_pci((dev));                       \
+        printk(lvl "smmu: %pp: " fmt, &pdev->sbdf, ## __VA_ARGS__);     \
+    }                                                                   \
+})
+#endif
 
 #define dev_dbg(dev, fmt, ...) dev_print(dev, XENLOG_DEBUG, fmt, ## __VA_ARGS__)
 #define dev_notice(dev, fmt, ...) dev_print(dev, XENLOG_INFO, fmt, ## __VA_ARGS__)
@@ -187,6 +197,7 @@ static void __iomem *devm_ioremap_resource(struct device *dev,
  * Xen: PCI functions
  * TODO: It should be implemented when PCI will be supported
  */
+#if 0 /* unused */
 #define to_pci_dev(dev)	(NULL)
 static inline int pci_for_each_dma_alias(struct pci_dev *pdev,
 					 int (*fn) (struct pci_dev *pdev,
@@ -196,6 +207,7 @@ static inline int pci_for_each_dma_alias(struct pci_dev *pdev,
 	BUG();
 	return 0;
 }
+#endif
 
 /* Xen: misc */
 #define PHYS_MASK_SHIFT		PADDR_BITS
@@ -631,7 +643,7 @@ struct arm_smmu_master_cfg {
 	for (i = 0; idx = cfg->smendx[i], i < num; ++i)
 
 struct arm_smmu_master {
-	struct device_node		*of_node;
+	struct device			*dev;
 	struct rb_node			node;
 	struct arm_smmu_master_cfg	cfg;
 };
@@ -723,7 +735,7 @@ arm_smmu_get_fwspec(struct arm_smmu_master_cfg *cfg)
 {
 	struct arm_smmu_master *master = container_of(cfg,
 			                                      struct arm_smmu_master, cfg);
-	return dev_iommu_fwspec_get(&master->of_node->dev);
+	return dev_iommu_fwspec_get(master->dev);
 }
 
 static void parse_driver_options(struct arm_smmu_device *smmu)
@@ -756,7 +768,7 @@ static struct device_node *dev_get_dev_node(struct device *dev)
 }
 
 static struct arm_smmu_master *find_smmu_master(struct arm_smmu_device *smmu,
-						struct device_node *dev_node)
+						struct device *dev)
 {
 	struct rb_node *node = smmu->masters.rb_node;
 
@@ -765,9 +777,9 @@ static struct arm_smmu_master *find_smmu_master(struct arm_smmu_device *smmu,
 
 		master = container_of(node, struct arm_smmu_master, node);
 
-		if (dev_node < master->of_node)
+		if (dev < master->dev)
 			node = node->rb_left;
-		else if (dev_node > master->of_node)
+		else if (dev > master->dev)
 			node = node->rb_right;
 		else
 			return master;
@@ -802,9 +814,9 @@ static int insert_smmu_master(struct arm_smmu_device *smmu,
 			= container_of(*new, struct arm_smmu_master, node);
 
 		parent = *new;
-		if (master->of_node < this->of_node)
+		if (master->dev < this->dev)
 			new = &((*new)->rb_left);
-		else if (master->of_node > this->of_node)
+		else if (master->dev > this->dev)
 			new = &((*new)->rb_right);
 		else
 			return -EEXIST;
@@ -836,28 +848,37 @@ static int arm_smmu_dt_add_device_legacy(struct arm_smmu_device *smmu,
 	struct arm_smmu_master *master;
 	struct device_node *dev_node = dev_get_dev_node(dev);
 
-	master = find_smmu_master(smmu, dev_node);
+	master = find_smmu_master(smmu, dev);
 	if (master) {
 		dev_err(dev,
 			"rejecting multiple registrations for master device %s\n",
-			dev_node->name);
+			dev_node ? dev_node->name : "");
 		return -EBUSY;
 	}
 
 	master = devm_kzalloc(dev, sizeof(*master), GFP_KERNEL);
 	if (!master)
 		return -ENOMEM;
-	master->of_node = dev_node;
+	master->dev = dev;
+
+	if ( !dev_is_pci(dev) )
+	{
+		if ( dt_device_is_protected(dev_node) )
+		{
+			dev_err(dev, "Already added to SMMU\n");
+			return -EEXIST;
+		}
 
-	/* Xen: Let Xen know that the device is protected by an SMMU */
-	dt_device_set_protected(dev_node);
+		/* Xen: Let Xen know that the device is protected by an SMMU */
+		dt_device_set_protected(dev_node);
+	}
 
 	for (i = 0; i < fwspec->num_ids; ++i) {
 		if (!(smmu->features & ARM_SMMU_FEAT_STREAM_MATCH) &&
 		     (fwspec->ids[i] >= smmu->num_mapping_groups)) {
 			dev_err(dev,
 				"stream ID for master device %s greater than maximum allowed (%d)\n",
-				dev_node->name, smmu->num_mapping_groups);
+				dev_node ? dev_node->name : "", smmu->num_mapping_groups);
 			return -ERANGE;
 		}
 		master->cfg.smendx[i] = INVALID_SMENDX;
@@ -872,7 +893,7 @@ static int arm_smmu_dt_remove_device_legacy(struct arm_smmu_device *smmu,
 	struct device_node *dev_node = dev_get_dev_node(dev);
 	int ret;
 
-	master = find_smmu_master(smmu, dev_node);
+	master = find_smmu_master(smmu, dev);
 	if (master == NULL) {
 		dev_err(dev,
 			"No registrations found for master device %s\n",
@@ -884,8 +905,9 @@ static int arm_smmu_dt_remove_device_legacy(struct arm_smmu_device *smmu,
 	if (ret)
 		return ret;
 
-	/* Protected by dt_host_lock and dtdevs_lock as caller holds these locks. */
-	dev_node->is_protected = false;
+	if ( !dev_is_pci(dev) )
+		/* Protected by dt_host_lock and dtdevs_lock as caller holds these locks. */
+		dev_node->is_protected = false;
 
 	kfree(master);
 	return 0;
@@ -914,6 +936,12 @@ static int register_smmu_master(struct arm_smmu_device *smmu,
 					     fwspec);
 }
 
+/* Forward declaration */
+static int arm_smmu_assign_dev(struct domain *d, u8 devfn,
+			       struct device *dev, u32 flag);
+static int arm_smmu_deassign_dev(struct domain *d, uint8_t devfn,
+				 struct device *dev);
+
 /*
  * The driver which supports generic IOMMU DT bindings must have this
  * callback implemented.
@@ -938,6 +966,22 @@ static int arm_smmu_dt_add_device_generic(u8 devfn, struct device *dev)
 {
 	struct arm_smmu_device *smmu;
 	struct iommu_fwspec *fwspec;
+	int ret;
+
+#ifdef CONFIG_HAS_PCI
+	if ( dev_is_pci(dev) )
+	{
+		struct pci_dev *pdev = dev_to_pci(dev);
+		int ret;
+
+		if ( devfn != pdev->devfn )
+			return 0;
+
+		ret = iommu_add_pci_sideband_ids(pdev);
+		if ( ret < 0 )
+			iommu_fwspec_free(dev);
+	}
+#endif
 
 	fwspec = dev_iommu_fwspec_get(dev);
 	if (fwspec == NULL)
@@ -947,7 +991,24 @@ static int arm_smmu_dt_add_device_generic(u8 devfn, struct device *dev)
 	if (smmu == NULL)
 		return -ENXIO;
 
-	return arm_smmu_dt_add_device_legacy(smmu, dev, fwspec);
+	ret = arm_smmu_dt_add_device_legacy(smmu, dev, fwspec);
+	if ( ret )
+		return ret;
+
+#ifdef CONFIG_HAS_PCI
+	if ( dev_is_pci(dev) )
+	{
+		struct pci_dev *pdev = dev_to_pci(dev);
+
+		/*
+		 * During PHYSDEVOP_pci_device_add, Xen does not assign the
+		 * device, so we must do it here.
+		 */
+		ret = arm_smmu_assign_dev(pdev->domain, devfn, dev, 0);
+	}
+#endif
+
+	return ret;
 }
 
 static int arm_smmu_dt_xlate_generic(struct device *dev,
@@ -970,11 +1031,10 @@ static struct arm_smmu_device *find_smmu_for_device(struct device *dev)
 {
 	struct arm_smmu_device *smmu;
 	struct arm_smmu_master *master = NULL;
-	struct device_node *dev_node = dev_get_dev_node(dev);
 
 	spin_lock(&arm_smmu_devices_lock);
 	list_for_each_entry(smmu, &arm_smmu_devices, list) {
-		master = find_smmu_master(smmu, dev_node);
+		master = find_smmu_master(smmu, dev);
 		if (master)
 			break;
 	}
@@ -2066,6 +2126,7 @@ static bool arm_smmu_capable(enum iommu_cap cap)
 }
 #endif
 
+#if 0 /* Not used */
 static int __arm_smmu_get_pci_sid(struct pci_dev *pdev, u16 alias, void *data)
 {
 	*((u16 *)data) = alias;
@@ -2076,6 +2137,7 @@ static void __arm_smmu_release_pci_iommudata(void *data)
 {
 	kfree(data);
 }
+#endif
 
 static int arm_smmu_add_device(struct device *dev)
 {
@@ -2083,12 +2145,13 @@ static int arm_smmu_add_device(struct device *dev)
 	struct arm_smmu_master_cfg *cfg;
 	struct iommu_group *group;
 	void (*releasefn)(void *) = NULL;
-	int ret;
 
 	smmu = find_smmu_for_device(dev);
 	if (!smmu)
 		return -ENODEV;
 
+	/* There is no need to distinguish here, thanks to PCI-IOMMU DT bindings */
+#if 0
 	if (dev_is_pci(dev)) {
 		struct pci_dev *pdev = to_pci_dev(dev);
 		struct iommu_fwspec *fwspec;
@@ -2113,10 +2176,12 @@ static int arm_smmu_add_device(struct device *dev)
 				       &fwspec->ids[0]);
 		releasefn = __arm_smmu_release_pci_iommudata;
 		cfg->smmu = smmu;
-	} else {
+	} else
+#endif
+	{
 		struct arm_smmu_master *master;
 
-		master = find_smmu_master(smmu, dev->of_node);
+		master = find_smmu_master(smmu, dev);
 		if (!master) {
 			return -ENODEV;
 		}
@@ -2784,6 +2849,56 @@ static int arm_smmu_assign_dev(struct domain *d, u8 devfn,
 			return -ENOMEM;
 	}
 
+#ifdef CONFIG_HAS_PCI
+	if ( dev_is_pci(dev) && !is_hardware_domain(d) )
+	{
+		struct pci_dev *pdev = dev_to_pci(dev);
+
+		printk(XENLOG_INFO "Assigning device %04x:%02x:%02x.%u to dom%d\n",
+		       pdev->seg, pdev->bus, PCI_SLOT(devfn), PCI_FUNC(devfn),
+		       d->domain_id);
+
+		if ( devfn != pdev->devfn || pdev->domain == d )
+			return 0;
+
+		ASSERT(pcidevs_locked());
+
+		/* TODO: acquire pci_lock */
+#if 0
+		write_lock(&pdev->domain->pci_lock);
+#endif
+		list_del(&pdev->domain_list);
+#if 0
+		write_unlock(&pdev->domain->pci_lock);
+
+		write_lock(&d->pci_lock);
+#endif
+		list_add(&pdev->domain_list, &d->pdev_list);
+#if 0
+		write_unlock(&d->pci_lock);
+#endif
+
+		pdev->domain = d;
+
+		domain = dev_iommu_domain(dev);
+
+		/*
+		 * Xen may not deassign the device from hwdom before assigning
+		 * it elsewhere.
+		 */
+		if ( domain && is_hardware_domain(domain->priv->cfg.domain) )
+		{
+			ret = arm_smmu_deassign_dev(hardware_domain, devfn, dev);
+			if ( ret )
+				return ret;
+		}
+
+		/* dom_io is used as a sentinel for quarantined devices */
+		if ( d == dom_io )
+			return 0;
+	}
+#endif
+
 	if (!dev_iommu_group(dev)) {
 		ret = arm_smmu_add_device(dev);
 		if (ret)
@@ -2833,11 +2948,30 @@ out:
 	return ret;
 }
 
-static int arm_smmu_deassign_dev(struct domain *d, struct device *dev)
+static int arm_smmu_deassign_dev(struct domain *d, uint8_t devfn,
+				 struct device *dev)
 {
 	struct iommu_domain *domain = dev_iommu_domain(dev);
 	struct arm_smmu_xen_domain *xen_domain;
 
+#ifdef CONFIG_HAS_PCI
+	if ( dev_is_pci(dev) )
+	{
+		struct pci_dev *pdev = dev_to_pci(dev);
+
+		printk(XENLOG_INFO "Deassigning device %04x:%02x:%02x.%u from dom%d\n",
+		       pdev->seg, pdev->bus, PCI_SLOT(devfn), PCI_FUNC(devfn),
+		       d->domain_id);
+
+		if ( devfn != pdev->devfn )
+			return 0;
+
+		/* dom_io is used as a sentinel for quarantined devices */
+		if ( d == dom_io )
+			return 0;
+	}
+#endif
+
 	xen_domain = dom_iommu(d)->arch.priv;
 
 	if (!domain || domain->priv->cfg.domain != d) {
@@ -2865,13 +2999,13 @@ static int arm_smmu_reassign_dev(struct domain *s, struct domain *t,
 	int ret = 0;
 
 	/* Don't allow remapping on other domain than hwdom */
-	if ( t && !is_hardware_domain(t) )
+	if ( t && !is_hardware_domain(t) && t != dom_io )
 		return -EPERM;
 
 	if (t == s)
 		return 0;
 
-	ret = arm_smmu_deassign_dev(s, dev);
+	ret = arm_smmu_deassign_dev(s, devfn, dev);
 	if (ret)
 		return ret;
 
-- 
2.42.0



From xen-devel-bounces@lists.xenproject.org Wed Oct 04 14:59:20 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 04 Oct 2023 14:59:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612655.952693 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qo3LH-0006Ux-To; Wed, 04 Oct 2023 14:59:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612655.952693; Wed, 04 Oct 2023 14:59: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 1qo3LH-0006Uq-Qu; Wed, 04 Oct 2023 14:59:15 +0000
Received: by outflank-mailman (input) for mailman id 612655;
 Wed, 04 Oct 2023 14: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 1qo3LG-0006Ue-8i; Wed, 04 Oct 2023 14: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 1qo3LF-0005cC-W8; Wed, 04 Oct 2023 14:59: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 1qo3LF-0004RV-Jn; Wed, 04 Oct 2023 14:59:13 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qo3LF-0005od-JH; Wed, 04 Oct 2023 14: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=/mkY+LOOtf2sDLk5fsSUKVVhsHb8ZhUkmrN/a+7wyEA=; b=dJoHEeoOmqx+YQaLGHG4pOqXhF
	t1HcV+J5p7nMnTxPZYevSnWl6Na7O7tiSVJp86DZasoMwu6yNsiVBbJh0JHIh+kY2SH+NyGTmHL2j
	2na529Bqs9wKECkH0gafcuYpXRpnqAjKZTtxufvWhZyalO+tkujvBGqiMu14pNZ9KcQY=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183260-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [libvirt test] 183260: 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:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-i386-libvirt-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-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=f7b7c17dfa85171514cb57e0d310e49017de6532
X-Osstest-Versions-That:
    libvirt=85e893a836f59ee7cffdd86bfbb04c714433d0aa
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 04 Oct 2023 14:59:13 +0000

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

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183246
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183246
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183246
 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-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-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              f7b7c17dfa85171514cb57e0d310e49017de6532
baseline version:
 libvirt              85e893a836f59ee7cffdd86bfbb04c714433d0aa

Last test of basis   183246  2023-10-03 04:20:44 Z    1 days
Testing same since   183260  2023-10-04 04:20:30 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Martin Kletzander <mkletzan@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
   85e893a836..f7b7c17dfa  f7b7c17dfa85171514cb57e0d310e49017de6532 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Wed Oct 04 15:06:32 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 04 Oct 2023 15:06:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612669.952704 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qo3SE-00005L-QV; Wed, 04 Oct 2023 15:06:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612669.952704; Wed, 04 Oct 2023 15: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 1qo3SE-00005E-Mr; Wed, 04 Oct 2023 15:06:26 +0000
Received: by outflank-mailman (input) for mailman id 612669;
 Wed, 04 Oct 2023 15:06: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=HSqs=FS=amd.com=Stewart.Hildebrand@srs-se1.protection.inumbo.net>)
 id 1qo3K1-0004W4-Db
 for xen-devel@lists.xenproject.org; Wed, 04 Oct 2023 14:57:57 +0000
Received: from NAM02-SN1-obe.outbound.protection.outlook.com
 (mail-sn1nam02on20629.outbound.protection.outlook.com
 [2a01:111:f400:7ea9::629])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 665bbdf2-62c6-11ee-98d3-6d05b1d4d9a1;
 Wed, 04 Oct 2023 16:57:56 +0200 (CEST)
Received: from BLAPR03CA0032.namprd03.prod.outlook.com (2603:10b6:208:32d::7)
 by IA1PR12MB6138.namprd12.prod.outlook.com (2603:10b6:208:3ea::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.34; Wed, 4 Oct
 2023 14:57:52 +0000
Received: from BL02EPF0001A106.namprd05.prod.outlook.com
 (2603:10b6:208:32d::4) by BLAPR03CA0032.outlook.office365.com
 (2603:10b6:208:32d::7) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.33 via Frontend
 Transport; Wed, 4 Oct 2023 14:57:52 +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.6838.14 via Frontend Transport; Wed, 4 Oct 2023 14:57: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; Wed, 4 Oct
 2023 09:57:51 -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, 4 Oct 2023 09:57: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: 665bbdf2-62c6-11ee-98d3-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=QpjQuXfPeLeBV9aTQToBsmdYsJaNTvHwsYh5D8Ad7iOUzpEtNDtMfOzpByPNmCqnicXTZf+hVfGCmeM2+t7ftssHVaFailwqXFKHCycsONwH5zdTSypNYOulsMnQY3R7vX7Ess/weooGFkq5QQZxaWeoqdtjTn9AO71dfxMrePkx7UKdfMGKfP//s98JVtEEtY/HXmme9H5TcmkSdBGm2vsSXNB+mIQAzFAyPnzdpnru2+yM9+liQlPcaHHRx+/sY0iF+dI4yoetoy5M89uoiD/v0AGwMuiN2vn47RpcZat87e1zEO0Wo15VjnilJn31CNE3D7Tznle2ny3LgzFCIw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=WbWIZRLieROnDM8Z02yCZ2mzVNLfbiEXbXfdtDK3YI4=;
 b=mTeSGNY+tAdXUs8Qf1/snzONyblGXIWtC15uVHB+pC8B40RdHLQXM3ihg6NhN6ejvhZJgslttPQsG1WT0SSPkrRGgRV/EdqHQgYDwrjbIZ6Svij1rDMAglFmSBQa6/V7nMzvumSsPfBlDUewV4C5e3N/eVIHxrXT1JeAD6KW0u/jO/ZyJ98g7VdR8/sANTL8Iy4yzoMYgUBpTbURU7M+Q2g39CrPgtmbTvuNxvVWPXNUvoIr9fSSi9Z7uPQxjSshMnWg/w+uHOlg9jedYj05hDhF9TDAlppmYXG3TjIwuNehG5bdVoYz3OdfbN231sf3V7LMwuXWesgsDAf4VWrAgA==
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=WbWIZRLieROnDM8Z02yCZ2mzVNLfbiEXbXfdtDK3YI4=;
 b=5e9mgjTphbUgpwi6mH81pZD/7ovT7pVb/uZh/itGEhWR8ccclMX1dUIZ9zVlaqQDp7leieSWKGEr5O1TiUZqbodyqxkOlZFr7CPoYfsG8c9eUlduuhD7ffQgfHBj3V/8Hm3RqBrPgtxgmwSMxJnD5aE6c3JPeae6bacph5doIFM=
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: Rahul Singh <rahul.singh@arm.com>, Bertrand Marquis
	<bertrand.marquis@arm.com>, Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>, Volodymyr Babchuk
	<Volodymyr_Babchuk@epam.com>, Stewart Hildebrand <stewart.hildebrand@amd.com>
Subject: [PATCH v5 6/9] xen/arm: smmuv3: Add PCI devices support for SMMUv3
Date: Wed, 4 Oct 2023 10:55:50 -0400
Message-ID: <20231004145604.1085358-7-stewart.hildebrand@amd.com>
X-Mailer: git-send-email 2.42.0
In-Reply-To: <20231004145604.1085358-1-stewart.hildebrand@amd.com>
References: <20231004145604.1085358-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: BL02EPF0001A106:EE_|IA1PR12MB6138:EE_
X-MS-Office365-Filtering-Correlation-Id: c12b0734-e6bf-4ff9-e21c-08dbc4ea48c3
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	/d6HZ6HsvH9NLOIvaz1AXzuNyz+WZ21fmpi4qVuYV5YFkolapeHFze6VVGknFpin7AH+gZ5L3g9IBNhNqmms7DIC/X3vK1cfCQUw4POnonati7pW8alWNWIYqtvnpK9LOO3oavG2jE0aUfY0+UpQo1Vsh7VYmrc9WvtQT/E+r3Dpro5xVTTdvnD8ApHhhftYNagxWRv+LEv3SXPIATIufPWcTP/wdo7lS3Idm8uMm3yGRqfGOSKnAOA2SARvAP7gLlw2Acmtv+xULL5tDmDErEwEok9dAG5M2AyWqerhjhAQp7dvx2/uJ1Jld/Hk4EKzf/FzhrtGw5Tw7KQ+l9sdFv6CI+06q6UCQOlENAKcP5W6oZkc0eVSefhi1RQj78kS4NZvkmU8L7BSqz5TTAPy7045GkRCfTgaqLThRTi2+nfkf0Yy0o5jzijfopDQS1dHsjcLMBb26FGF/5JciQYToJHRkwIeQ2hzMHV4VC5M/zPPnl9Vew8XELB9JCvzl0U8Mlfr0eRQzhdiAXwojhwq/QcbJRLXz93TusZPnQwG6adFziZxP+tF+fBMtVX+GKs0VK8XoJGfSjeVTOabwWIafNul6Mk2+MySX+kY5lVOxIXPMzMiiPBr+3zKSyiBVXBDsK06Q3R2LkGQ6JEhrbXdQKKKOZh8S9KPD0zmtrNd3B5ETtCuEkRWbVwdj9cBIBhXAy3/Yv3kwsgFUlzb3eB+oQYQawDWJSLgIoL2GU+HrfmT4qXd5ervHjzdeYbHu+j9FWg7zrRbImgp4+ADXW1aBQ==
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)(346002)(396003)(230922051799003)(451199024)(64100799003)(186009)(82310400011)(1800799009)(40470700004)(36840700001)(46966006)(40460700003)(966005)(356005)(70206006)(70586007)(47076005)(86362001)(81166007)(83380400001)(36756003)(36860700001)(54906003)(2616005)(6916009)(316002)(1076003)(478600001)(336012)(26005)(426003)(5660300002)(2906002)(4326008)(82740400003)(40480700001)(8676002)(8936002)(41300700001)(44832011)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Oct 2023 14:57:52.4776
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: c12b0734-e6bf-4ff9-e21c-08dbc4ea48c3
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: IA1PR12MB6138

From: Rahul Singh <rahul.singh@arm.com>

Signed-off-by: Rahul Singh <rahul.singh@arm.com>
Signed-off-by: Stewart Hildebrand <stewart.hildebrand@amd.com>
---
v4->v5:
* deassign from hwdom
* add TODO regarding locking
* fixup after dropping ("xen/arm: Move is_protected flag to struct device")

v3->v4:
* no change

v2->v3:
* rebase
* invoke iommu_add_pci_sideband_ids() from add_device hook

v1->v2:
* ignore add_device/assign_device/reassign_device calls for phantom functions
  (i.e. devfn != pdev->devfn)

downstream->v1:
* rebase
* move 2 replacements of s/dt_device_set_protected(dev_to_dt(dev))/device_set_protected(dev)/
  from this commit to ("xen/arm: Move is_protected flag to struct device")
  so as to not break ability to bisect
* adjust patch title (remove stray space)
* arm_smmu_(de)assign_dev: return error instead of crashing system
* remove arm_smmu_remove_device() stub
* update condition in arm_smmu_reassign_dev
* style fixup

(cherry picked from commit 7ed6c3ab250d899fe6e893a514278e406a2893e8 from
 the downstream branch poc/pci-passthrough from
 https://gitlab.com/xen-project/people/bmarquis/xen-arm-poc.git)
---
 xen/drivers/passthrough/arm/smmu-v3.c | 126 ++++++++++++++++++++++++--
 1 file changed, 116 insertions(+), 10 deletions(-)

diff --git a/xen/drivers/passthrough/arm/smmu-v3.c b/xen/drivers/passthrough/arm/smmu-v3.c
index cdbb505134b7..5afef69096b3 100644
--- a/xen/drivers/passthrough/arm/smmu-v3.c
+++ b/xen/drivers/passthrough/arm/smmu-v3.c
@@ -1469,14 +1469,34 @@ static bool arm_smmu_sid_in_range(struct arm_smmu_device *smmu, u32 sid)
 }
 /* Forward declaration */
 static struct arm_smmu_device *arm_smmu_get_by_dev(const struct device *dev);
+static int arm_smmu_assign_dev(struct domain *d, u8 devfn, struct device *dev,
+			       u32 flag);
+static int arm_smmu_deassign_dev(struct domain *d, uint8_t devfn,
+				 struct device *dev);
 
 static int arm_smmu_add_device(u8 devfn, struct device *dev)
 {
 	int i, ret;
 	struct arm_smmu_device *smmu;
 	struct arm_smmu_master *master;
-	struct iommu_fwspec *fwspec = dev_iommu_fwspec_get(dev);
+	struct iommu_fwspec *fwspec;
+
+#ifdef CONFIG_HAS_PCI
+	if ( dev_is_pci(dev) )
+	{
+		struct pci_dev *pdev = dev_to_pci(dev);
+		int ret;
+
+		if ( devfn != pdev->devfn )
+			return 0;
+
+		ret = iommu_add_pci_sideband_ids(pdev);
+		if ( ret < 0 )
+			iommu_fwspec_free(dev);
+	}
+#endif
 
+	fwspec = dev_iommu_fwspec_get(dev);
 	if (!fwspec)
 		return -ENODEV;
 
@@ -1521,17 +1541,35 @@ static int arm_smmu_add_device(u8 devfn, struct device *dev)
 	 */
 	arm_smmu_enable_pasid(master);
 
-	if (dt_device_is_protected(dev_to_dt(dev))) {
-		dev_err(dev, "Already added to SMMUv3\n");
-		return -EEXIST;
-	}
+	if ( !dev_is_pci(dev) )
+	{
+		if (dt_device_is_protected(dev_to_dt(dev))) {
+			dev_err(dev, "Already added to SMMUv3\n");
+			return -EEXIST;
+		}
 
-	/* Let Xen know that the master device is protected by an IOMMU. */
-	dt_device_set_protected(dev_to_dt(dev));
+		/* Let Xen know that the master device is protected by an IOMMU. */
+		dt_device_set_protected(dev_to_dt(dev));
+	}
 
 	dev_info(dev, "Added master device (SMMUv3 %s StreamIds %u)\n",
 			dev_name(fwspec->iommu_dev), fwspec->num_ids);
 
+#ifdef CONFIG_HAS_PCI
+	if ( dev_is_pci(dev) )
+	{
+		struct pci_dev *pdev = dev_to_pci(dev);
+
+		/*
+		 * During PHYSDEVOP_pci_device_add, Xen does not assign the
+		 * device, so we must do it here.
+		 */
+		ret = arm_smmu_assign_dev(pdev->domain, devfn, dev, 0);
+		if (ret)
+			goto err_free_master;
+	}
+#endif
+
 	return 0;
 
 err_free_master:
@@ -2621,6 +2659,56 @@ static int arm_smmu_assign_dev(struct domain *d, u8 devfn,
 	struct arm_smmu_domain *smmu_domain;
 	struct arm_smmu_xen_domain *xen_domain = dom_iommu(d)->arch.priv;
 
+#ifdef CONFIG_HAS_PCI
+	if ( dev_is_pci(dev) && !is_hardware_domain(d) )
+	{
+		struct pci_dev *pdev = dev_to_pci(dev);
+
+		printk(XENLOG_INFO "Assigning device %04x:%02x:%02x.%u to dom%d\n",
+			pdev->seg, pdev->bus, PCI_SLOT(devfn),
+			PCI_FUNC(devfn), d->domain_id);
+
+		if ( devfn != pdev->devfn || pdev->domain == d )
+			return 0;
+
+		ASSERT(pcidevs_locked());
+
+		/* TODO: acquire pci_lock */
+#if 0
+		write_lock(&pdev->domain->pci_lock);
+#endif
+		list_del(&pdev->domain_list);
+#if 0
+		write_unlock(&pdev->domain->pci_lock);
+
+		write_lock(&d->pci_lock);
+#endif
+		list_add(&pdev->domain_list, &d->pdev_list);
+#if 0
+		write_unlock(&d->pci_lock);
+#endif
+
+		pdev->domain = d;
+
+		io_domain = arm_smmu_get_domain(hardware_domain, dev);
+
+		/*
+		 * Xen may not deassign the device from hwdom before assigning
+		 * it elsewhere.
+		 */
+		if ( io_domain )
+		{
+			ret = arm_smmu_deassign_dev(hardware_domain, devfn, dev);
+			if ( ret )
+				return ret;
+		}
+
+		/* dom_io is used as a sentinel for quarantined devices */
+		if ( d == dom_io )
+			return 0;
+	}
+#endif
+
 	spin_lock(&xen_domain->lock);
 
 	/*
@@ -2654,7 +2742,7 @@ out:
 	return ret;
 }
 
-static int arm_smmu_deassign_dev(struct domain *d, struct device *dev)
+static int arm_smmu_deassign_dev(struct domain *d, uint8_t devfn, struct device *dev)
 {
 	struct iommu_domain *io_domain = arm_smmu_get_domain(d, dev);
 	struct arm_smmu_xen_domain *xen_domain = dom_iommu(d)->arch.priv;
@@ -2666,6 +2754,24 @@ static int arm_smmu_deassign_dev(struct domain *d, struct device *dev)
 		return -ESRCH;
 	}
 
+#ifdef CONFIG_HAS_PCI
+	if ( dev_is_pci(dev) )
+	{
+		struct pci_dev *pdev = dev_to_pci(dev);
+
+		printk(XENLOG_INFO "Deassigning device %04x:%02x:%02x.%u from dom%d\n",
+			pdev->seg, pdev->bus, PCI_SLOT(devfn),
+			PCI_FUNC(devfn), d->domain_id);
+
+		if ( devfn != pdev->devfn )
+			return 0;
+
+		/* dom_io is used as a sentinel for quarantined devices */
+		if ( d == dom_io )
+			return 0;
+	}
+#endif
+
 	spin_lock(&xen_domain->lock);
 
 	arm_smmu_detach_dev(master);
@@ -2685,13 +2791,13 @@ static int arm_smmu_reassign_dev(struct domain *s, struct domain *t,
 	int ret = 0;
 
 	/* Don't allow remapping on other domain than hwdom */
-	if ( t && !is_hardware_domain(t) )
+	if ( t && !is_hardware_domain(t) && (t != dom_io) )
 		return -EPERM;
 
 	if (t == s)
 		return 0;
 
-	ret = arm_smmu_deassign_dev(s, dev);
+	ret = arm_smmu_deassign_dev(s, devfn, dev);
 	if (ret)
 		return ret;
 
-- 
2.42.0



From xen-devel-bounces@lists.xenproject.org Wed Oct 04 15:10:03 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 04 Oct 2023 15:10:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612675.952714 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qo3Vh-0001Ct-AA; Wed, 04 Oct 2023 15:10:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612675.952714; Wed, 04 Oct 2023 15:10: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 1qo3Vh-0001Cm-7C; Wed, 04 Oct 2023 15:10:01 +0000
Received: by outflank-mailman (input) for mailman id 612675;
 Wed, 04 Oct 2023 15:10: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=HSqs=FS=amd.com=Stewart.Hildebrand@srs-se1.protection.inumbo.net>)
 id 1qo3KV-0004W4-67
 for xen-devel@lists.xenproject.org; Wed, 04 Oct 2023 14:58:27 +0000
Received: from NAM10-MW2-obe.outbound.protection.outlook.com
 (mail-mw2nam10on20623.outbound.protection.outlook.com
 [2a01:111:f400:7e89::623])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 77d247dd-62c6-11ee-98d3-6d05b1d4d9a1;
 Wed, 04 Oct 2023 16:58:26 +0200 (CEST)
Received: from MN2PR13CA0028.namprd13.prod.outlook.com (2603:10b6:208:160::41)
 by DM8PR12MB5431.namprd12.prod.outlook.com (2603:10b6:8:34::8) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6838.25; Wed, 4 Oct 2023 14:58:22 +0000
Received: from BL02EPF0001A103.namprd05.prod.outlook.com
 (2603:10b6:208:160:cafe::8e) by MN2PR13CA0028.outlook.office365.com
 (2603:10b6:208:160::41) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.26 via Frontend
 Transport; Wed, 4 Oct 2023 14:58:22 +0000
Received: from SATLEXMB03.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.6838.14 via Frontend Transport; Wed, 4 Oct 2023 14:58:22 +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, 4 Oct
 2023 09:58:22 -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, 4 Oct 2023 09:58: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: 77d247dd-62c6-11ee-98d3-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=OaT/wMKOtwtxdI7KQf+duEa9XivIoC/k4G4bikMbUYtSSc9WyWFewsfIDzcOvu/ZJt8R2eXzy4aUHH/NA7By/k/WLxO9e9/BOMkOt6HwnvQ3vYiS9i/zz7mTtJNO5+WOuN1/YWNH5Eg8DaiAKk0cKkB+UPNK9+7LD3qAGgNYNgoB2/ooBjUmavsJ6mrt+BU8clQ3Qn8nvMAb+eAAcyYMLNqZxTMpzk2ZmKq5tx+VEMAAOO53tqqWXYhewJl5O3KMRedKwsIojUhgDtFCvU7UQXL/LKU1EV/Xc1R8Yq4kYV6Ht0dmSPk7LpwjZO/DXs/cgaUvODcd/CyohAaugjy4RA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=bOHqnDVKZFYPLXFmyrCWlBiPX7zJbAyoB0dsFXljQS8=;
 b=c1o5cIQssS7waTHO+Z7sCiTwHCwJZOasNLCE3iCsqhfg/Jwi5aGQzxc33GZ8VM6U5AEGZhPH7NMyRX8laGDa2KSRIt6Q29LpWYMJuHh6BjcFpSXcXdV+to2DXjjnEdRtrh/74z7ng3vYA1iooY2rFztxfnDWuVIyEcnopn9HOEEYndLPhWUkr0OQ9+8SETA5KN///VVAvGhcZ85Q4VLjs/b3fiHwiYUf70LUEgqPxOy/WcbknjxNOsMcuLQj1XA5Wt2c042OOVCtU2WNCbgB9r+81NazBuoaxrcpjgxCpyuMhEw9D9MDH93+sNlJ6HKC+O/uCp5X+Tm2aIJso3Kuxg==
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=bOHqnDVKZFYPLXFmyrCWlBiPX7zJbAyoB0dsFXljQS8=;
 b=rPYuNl1GzzCBBnxMJQjer+ISKUzj+qcBB2AMuj0yfumfXr7RyNP82m87iifa0hMg0EyMjzPIsuYaNKi5c7JzKP8iwk+fI0+tCfAqw6nftmuLqs5yW9pxbxcxqNGF2zkYqX3VsdCUmdQqoxk1SXZljvtddPIeWCsYqEXoKi96iho=
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: Rahul Singh <rahul.singh@arm.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>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>
Subject: [PATCH v5 8/9] Revert "xen/arm: Add cmdline boot option "pci-passthrough = <boolean>""
Date: Wed, 4 Oct 2023 10:55:52 -0400
Message-ID: <20231004145604.1085358-9-stewart.hildebrand@amd.com>
X-Mailer: git-send-email 2.42.0
In-Reply-To: <20231004145604.1085358-1-stewart.hildebrand@amd.com>
References: <20231004145604.1085358-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: BL02EPF0001A103:EE_|DM8PR12MB5431:EE_
X-MS-Office365-Filtering-Correlation-Id: 86a0d4f7-6b9d-40a1-fece-08dbc4ea5ab8
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	rmSgqOcqlCD0vCoVmeKtZXmloHuMOptnZXG8c0yla3D5+gbwmjGG41wvNxPx/W6Vfl/6ZDIwUzd2mLqj3v3ovloACBYXVHbXtVEikKwc8qQqYVdTeHwZxKP46SzWbY1UjbywzrGk/m7BQcQSAF9XSVD1GzMekkNRQXJgSs2T1oPjDdfA7aMmP9s/Sa9v0tWi/bardjlL40Mwjgiz/q6t8+eo9NsbD+aFKhKxPMILCkYIRkjj1xVmJcmAGKxITVoeX/8+j4eRUjzheQkV0R804eSRpoxBJOCUbvp4XU36rSm9ZXPT18DWgF2Zw3r0eKShIeKhK875eHLpLyZTPcCEbbOGR61vGnl0mes14a2TrwaZyj2UNnfx6Uth2pHHGQ+74ifoqHRquxgtaXWnqMzzKn9mbMLGHfh37ho3TkDl6cIHvQ+unfoZw8ydk6C/kw7LhjoR3WrfRcW0p5n6vR++4w4ZaGCFaF9kErNLXSaQKc7HK08nm6GTXDWSW3ppFnA+ebDk8kZ/7wl1Au1DSM+GbgRLzRJ/NOqpW50ZUURXVYldM5941+SFfb8sR7VmVlX5eXrmWFEWJ8nGxCdQeofT6bkBUNSKhTBh77DITG8cALGCAzdqJKp7/YUmuMex9pMHZFEaRHlQB/5i4Z8F4NuARm/sQLbfEUi2a1iRB4pqBKh186nKXxIzIRlnoWGHhjvpSW51RZtIXNNO48r2/o1Qw0FNEsLWYIJVCXXO+isUEpX1Tuzxc3LvHlSsb+Ra+fYLqe5aP4M7zy9iCfPhC7sPmw==
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)(230922051799003)(64100799003)(186009)(1800799009)(82310400011)(451199024)(40470700004)(46966006)(36840700001)(41300700001)(54906003)(44832011)(4326008)(8936002)(8676002)(70206006)(6916009)(5660300002)(47076005)(2616005)(7416002)(356005)(6666004)(478600001)(426003)(70586007)(83380400001)(1076003)(26005)(336012)(82740400003)(36756003)(81166007)(36860700001)(86362001)(316002)(40460700003)(40480700001)(2906002)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Oct 2023 14:58:22.6053
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 86a0d4f7-6b9d-40a1-fece-08dbc4ea5ab8
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:
	BL02EPF0001A103.namprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM8PR12MB5431

From: Rahul Singh <rahul.singh@arm.com>

This enables us to use IOMMU + PCI in dom0 without having to specify
"pci-passthrough=yes".

This reverts commit 15517ed61f55be6039aedcc99720ee07c772ed44.
---
v4->v5:
* new patch
---
 docs/misc/xen-command-line.pandoc |  7 -------
 xen/arch/arm/include/asm/pci.h    | 12 ------------
 xen/arch/arm/pci/pci.c            | 12 ------------
 xen/arch/x86/include/asm/pci.h    |  6 ------
 xen/drivers/pci/physdev.c         |  6 ------
 5 files changed, 43 deletions(-)

diff --git a/docs/misc/xen-command-line.pandoc b/docs/misc/xen-command-line.pandoc
index 604650aaeeef..bd2f1070c445 100644
--- a/docs/misc/xen-command-line.pandoc
+++ b/docs/misc/xen-command-line.pandoc
@@ -1955,13 +1955,6 @@ All numbers specified must be hexadecimal ones.
 
 This option can be specified more than once (up to 8 times at present).
 
-### pci-passthrough (arm)
-> `= <boolean>`
-
-> Default: `false`
-
-Flag to enable or disable support for PCI passthrough
-
 ### pcid (x86)
 > `= <boolean> | xpti=<bool>`
 
diff --git a/xen/arch/arm/include/asm/pci.h b/xen/arch/arm/include/asm/pci.h
index 8cb46f6b7185..e14013901469 100644
--- a/xen/arch/arm/include/asm/pci.h
+++ b/xen/arch/arm/include/asm/pci.h
@@ -21,8 +21,6 @@
 
 #define pci_to_dev(pcidev) (&(pcidev)->arch.dev)
 
-extern bool pci_passthrough_enabled;
-
 /* Arch pci dev struct */
 struct arch_pci_dev {
     struct device dev;
@@ -111,11 +109,6 @@ pci_find_host_bridge_node(const struct pci_dev *pdev);
 int pci_get_host_bridge_segment(const struct dt_device_node *node,
                                 uint16_t *segment);
 
-static always_inline bool is_pci_passthrough_enabled(void)
-{
-    return pci_passthrough_enabled;
-}
-
 void arch_pci_init_pdev(struct pci_dev *pdev);
 
 int pci_get_new_domain_nr(void);
@@ -132,11 +125,6 @@ bool pci_check_bar(const struct pci_dev *pdev, mfn_t start, mfn_t end);
 
 struct arch_pci_dev { };
 
-static always_inline bool is_pci_passthrough_enabled(void)
-{
-    return false;
-}
-
 struct pci_dev;
 
 static inline void arch_pci_init_pdev(struct pci_dev *pdev) {}
diff --git a/xen/arch/arm/pci/pci.c b/xen/arch/arm/pci/pci.c
index 78b97beaef12..e0a63242ab21 100644
--- a/xen/arch/arm/pci/pci.c
+++ b/xen/arch/arm/pci/pci.c
@@ -16,7 +16,6 @@
 #include <xen/device_tree.h>
 #include <xen/errno.h>
 #include <xen/init.h>
-#include <xen/param.h>
 #include <xen/pci.h>
 
 /*
@@ -75,19 +74,8 @@ static int __init acpi_pci_init(void)
 }
 #endif
 
-/* By default pci passthrough is disabled. */
-bool __read_mostly pci_passthrough_enabled;
-boolean_param("pci-passthrough", pci_passthrough_enabled);
-
 static int __init pci_init(void)
 {
-    /*
-     * Enable PCI passthrough when has been enabled explicitly
-     * (pci-passthrough=on).
-     */
-    if ( !pci_passthrough_enabled )
-        return 0;
-
     pci_segments_init();
 
     if ( acpi_disabled )
diff --git a/xen/arch/x86/include/asm/pci.h b/xen/arch/x86/include/asm/pci.h
index f4a58c8acf13..3eb6fb8edf30 100644
--- a/xen/arch/x86/include/asm/pci.h
+++ b/xen/arch/x86/include/asm/pci.h
@@ -49,12 +49,6 @@ bool_t pci_ro_mmcfg_decode(unsigned long mfn, unsigned int *seg,
 extern int pci_mmcfg_config_num;
 extern struct acpi_mcfg_allocation *pci_mmcfg_config;
 
-/* Unlike ARM, PCI passthrough is always enabled for x86. */
-static always_inline bool is_pci_passthrough_enabled(void)
-{
-    return true;
-}
-
 void arch_pci_init_pdev(struct pci_dev *pdev);
 
 static inline bool pci_check_bar(const struct pci_dev *pdev,
diff --git a/xen/drivers/pci/physdev.c b/xen/drivers/pci/physdev.c
index 42db3e6d133c..4f3e1a96c0fd 100644
--- a/xen/drivers/pci/physdev.c
+++ b/xen/drivers/pci/physdev.c
@@ -18,9 +18,6 @@ ret_t pci_physdev_op(int cmd, XEN_GUEST_HANDLE_PARAM(void) arg)
         struct pci_dev_info pdev_info;
         nodeid_t node = NUMA_NO_NODE;
 
-        if ( !is_pci_passthrough_enabled() )
-            return -EOPNOTSUPP;
-
         ret = -EFAULT;
         if ( copy_from_guest(&add, arg, 1) != 0 )
             break;
@@ -56,9 +53,6 @@ ret_t pci_physdev_op(int cmd, XEN_GUEST_HANDLE_PARAM(void) arg)
     case PHYSDEVOP_pci_device_remove: {
         struct physdev_pci_device dev;
 
-        if ( !is_pci_passthrough_enabled() )
-            return -EOPNOTSUPP;
-
         ret = -EFAULT;
         if ( copy_from_guest(&dev, arg, 1) != 0 )
             break;
-- 
2.42.0



From xen-devel-bounces@lists.xenproject.org Wed Oct 04 15:14:34 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 04 Oct 2023 15:14:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612682.952723 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qo3a1-0003ZO-SE; Wed, 04 Oct 2023 15:14:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612682.952723; Wed, 04 Oct 2023 15:14: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 1qo3a1-0003ZH-PR; Wed, 04 Oct 2023 15:14:29 +0000
Received: by outflank-mailman (input) for mailman id 612682;
 Wed, 04 Oct 2023 15:14: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=HSqs=FS=amd.com=Stewart.Hildebrand@srs-se1.protection.inumbo.net>)
 id 1qo3Kk-0003AF-HR
 for xen-devel@lists.xenproject.org; Wed, 04 Oct 2023 14:58:42 +0000
Received: from NAM10-MW2-obe.outbound.protection.outlook.com
 (mail-mw2nam10on20631.outbound.protection.outlook.com
 [2a01:111:f400:7e89::631])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 812b241e-62c6-11ee-9b0d-b553b5be7939;
 Wed, 04 Oct 2023 16:58:40 +0200 (CEST)
Received: from MN2PR13CA0009.namprd13.prod.outlook.com (2603:10b6:208:160::22)
 by BL3PR12MB6425.namprd12.prod.outlook.com (2603:10b6:208:3b4::7)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.25; Wed, 4 Oct
 2023 14:58:37 +0000
Received: from BL02EPF0001A103.namprd05.prod.outlook.com
 (2603:10b6:208:160:cafe::34) by MN2PR13CA0009.outlook.office365.com
 (2603:10b6:208:160::22) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.25 via Frontend
 Transport; Wed, 4 Oct 2023 14:58:37 +0000
Received: from SATLEXMB03.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.6838.14 via Frontend Transport; Wed, 4 Oct 2023 14:58:37 +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, 4 Oct
 2023 09:58: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, 4 Oct
 2023 07:58:36 -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; Wed, 4 Oct 2023 09:58: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: 812b241e-62c6-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=TBTETkYOEh5TZwLSRJDrb3o4dzDYrGzMWdGO3Fbr7lVZPnOmUnCoSwC4xe4VGX23G2M7BwF+b11P0ebRNhF66uDiY8nS77KDwOwp42Lu11B6V9ni3JJOQ3SomoC7f84JcFJMEBU2yy4+NTEazfRP1RuilBcI3gPex9kV91o+GfT+elzgJZFDAx2FyBeL9vfFHbzF84TfTPuP/LQ5vk/czUn7i6wB9VanIJhc0uw5Kc/CGDVrxAui2UmtGfLqcDu1Tn6FUeZjDgO/tIK6/5RiiCuYA7vXtOTSLit58E5lVZ2crDzkF1cmWdIOhlLSmrJoAGbmK7aPNNirG08g+tRb+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=DcZzxWC5M7L073e5FMa5m8xIIcBPGO6L/R79lySugSQ=;
 b=hUn7lEa6CYra7mimxTgVsbyJ91UdWM5Cu956p+G1GnwNkeRh3SiRbXXOfL6oAsrOSsSUF776MJWM1CMTrYy0tfNEKwXpVhhOV4TWTRGboLZ84IdgaCzLaGPAbzx0wC7zwas9Yvj9cX7kQxe62cGegEqoFQmCP4pGCV1AMhuFExiy2fBxRY7evjZLJaeKLl3hfnMDia4DDuIxLVQQYnhxq5EeGPBmVTr3fBgI3P2md4G/KWPDofHz3svnLWS2kavuYUDX8DsbqqcPwkH8EIN4+DhM8Zl21e130fne3DYqcaM2O5t3rYYxdB0TAXKIym8WtKMT8UdhsFoLd/3DjDFW6A==
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=DcZzxWC5M7L073e5FMa5m8xIIcBPGO6L/R79lySugSQ=;
 b=w7Gzp4VZ15b7fBjmY+/JPCtSCadZVNQTEuSWbWBB84wzqT4WSpIg0JHx0xiyg5nZ8tlybqN7KtMS3C4d+/P42bUATA0J553ti8dBnewVu3YlonhYXD7NEJK6sFi0lHUYi+6yzXK0h6fqLYwMNBxgrKYmAHRX/5cFm0C3j/B2M4k=
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: Rahul Singh <rahul.singh@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 v5 9/9] xen/arm: Map ITS doorbell register to IOMMU page tables.
Date: Wed, 4 Oct 2023 10:55:53 -0400
Message-ID: <20231004145604.1085358-10-stewart.hildebrand@amd.com>
X-Mailer: git-send-email 2.42.0
In-Reply-To: <20231004145604.1085358-1-stewart.hildebrand@amd.com>
References: <20231004145604.1085358-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: BL02EPF0001A103:EE_|BL3PR12MB6425:EE_
X-MS-Office365-Filtering-Correlation-Id: 5400baaf-1102-4ba0-35ae-08dbc4ea636e
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	kOENid+jlVvIBC1GawRGYcoU0Jwb71e738VorDuATdJG7oevOKMbtqicKJhkhhOK6SnGY2LXCmRZPVpNJamCVwdl+7EbsIL0pntjp5s1+XPZfenyNd/ZV1yJo57UyYYEn0cAKv0mRGQZ3MxY0FX4t8/UcedDG3MSQVz1QUFFHYkqiU2u9BGrgyY+He8Y28h0XWC3PjWm7FXDL9i5A0HPuXUuvYx6IDkjh1nhD7GvXPwshSSJIthFBwCeUZan8cydWtcJMCarOVkHhlxn07Lbfpx/XHFvrce06AmTLXz5E/q0TpTA/R9nmXlhgieI2BEpfFTh5YyGnQdK3UI9NXEBKIHc7WMS13u2552SxGNCDgflXd9Yzqjd7GnTkwuRRHUrU2eIz7kf6Uw8M04Ietrf5iVMCK+FhDLSkwuW71V7XgXwsY6PXEnFeOvvSvYq/IGZvHNbW1ukPrcqPj2UWLs5nezk1XLAK++oHE0Jv1DnhYYvlkYbN4hBi1M6gCTWPFwyxVnPUJ8i20QqUend/QzpD0Y8kqLYmgMCOL/Hu+UrEozVLDzn7DR4be8kF77hkX8F5VGDkSm4ZltGUWJJtVf1zZQBsvoTPeBU+hUMbG0msgZx9YTRDJXeCELR/d37GUsFQwUYcCSTYQTsr2V+uceLcRHxGpDdRLT47xjQTKU1ZC7VW6maujNEsDtiwa6uoXZthuGpDYcnVSDymJLRJwuGgmbtfnaHPzcOBQUVQ598d6hOKI5nzec6baggCzQ79n8yINuEOAeHtCsF9d6fhOxw2g==
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)(346002)(136003)(39860400002)(230922051799003)(1800799009)(451199024)(186009)(82310400011)(64100799003)(40470700004)(36840700001)(46966006)(4744005)(36756003)(41300700001)(70586007)(5660300002)(70206006)(316002)(2906002)(44832011)(40480700001)(4326008)(6916009)(54906003)(8676002)(8936002)(40460700003)(86362001)(82740400003)(356005)(2616005)(1076003)(26005)(6666004)(83380400001)(81166007)(336012)(426003)(36860700001)(47076005)(478600001)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Oct 2023 14:58:37.2303
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 5400baaf-1102-4ba0-35ae-08dbc4ea636e
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:
	BL02EPF0001A103.namprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BL3PR12MB6425

From: Rahul Singh <rahul.singh@arm.com>

Signed-off-by: Rahul Singh <rahul.singh@arm.com>
---
v4->v5:
* new patch
---
 xen/arch/arm/vgic-v3-its.c | 12 ++++++++++++
 1 file changed, 12 insertions(+)

diff --git a/xen/arch/arm/vgic-v3-its.c b/xen/arch/arm/vgic-v3-its.c
index 05429030b539..df8f045198a3 100644
--- a/xen/arch/arm/vgic-v3-its.c
+++ b/xen/arch/arm/vgic-v3-its.c
@@ -682,6 +682,18 @@ static int its_handle_mapd(struct virt_its *its, uint64_t *cmdptr)
                                          BIT(size, UL), valid);
         if ( ret && valid )
             return ret;
+
+        if ( is_iommu_enabled(its->d) ) {
+            ret = map_mmio_regions(its->d, gaddr_to_gfn(its->doorbell_address),
+                           PFN_UP(ITS_DOORBELL_OFFSET),
+                           maddr_to_mfn(its->doorbell_address));
+            if ( ret < 0 )
+            {
+                printk(XENLOG_ERR "GICv3: Map ITS translation register d%d failed.\n",
+                        its->d->domain_id);
+                return ret;
+            }
+        }
     }
 
     spin_lock(&its->its_lock);
-- 
2.42.0



From xen-devel-bounces@lists.xenproject.org Wed Oct 04 15:14:42 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 04 Oct 2023 15:14:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612683.952734 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qo3aE-0003yo-AZ; Wed, 04 Oct 2023 15:14:42 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612683.952734; Wed, 04 Oct 2023 15:14: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 1qo3aE-0003yh-7G; Wed, 04 Oct 2023 15:14:42 +0000
Received: by outflank-mailman (input) for mailman id 612683;
 Wed, 04 Oct 2023 15:14: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=HSqs=FS=amd.com=Stewart.Hildebrand@srs-se1.protection.inumbo.net>)
 id 1qo3KJ-0003AF-Q2
 for xen-devel@lists.xenproject.org; Wed, 04 Oct 2023 14:58:15 +0000
Received: from NAM12-DM6-obe.outbound.protection.outlook.com
 (mail-dm6nam12on20617.outbound.protection.outlook.com
 [2a01:111:f400:fe59::617])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 70be4bb9-62c6-11ee-9b0d-b553b5be7939;
 Wed, 04 Oct 2023 16:58:14 +0200 (CEST)
Received: from MN2PR13CA0023.namprd13.prod.outlook.com (2603:10b6:208:160::36)
 by SJ2PR12MB8926.namprd12.prod.outlook.com (2603:10b6:a03:53b::5)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.33; Wed, 4 Oct
 2023 14:58:11 +0000
Received: from BL02EPF0001A103.namprd05.prod.outlook.com
 (2603:10b6:208:160:cafe::8b) by MN2PR13CA0023.outlook.office365.com
 (2603:10b6:208:160::36) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.26 via Frontend
 Transport; Wed, 4 Oct 2023 14:58:10 +0000
Received: from SATLEXMB03.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.6838.14 via Frontend Transport; Wed, 4 Oct 2023 14:58:10 +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, 4 Oct
 2023 09:58:07 -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, 4 Oct 2023 09:58: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: 70be4bb9-62c6-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=D9LL0UI3P5Igl9bcVddkiLsZgCENXhTbqrfsRSdRpsjOsKzap4p2oNQpeEbMLEIhtchAePIMVp7CmUphwuDxomW54elCN8lBHIOBdN2lL7F8Ph8YpZK2qjz0VdglOI/ldUgXKGh4lIWuM73IdX/VYo0g5JXQGEFCbQlRXlUM7GkWSldtb0+B3JKNOPKdBiiuhHrap8MZK4oISvFHuYCJeE1CtpZY1PYma0zFaoCH8DB4yStgxvcsvjmIWKUbWaisvsemgmocZ5pxJRQAv+aIuTLDzY7WJ0NraBIw+ODnIv/I/1IVF20e/EMjsixLCOWvKIMlcgoNydTsxEbF3sMJ7w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=xYvhbIghzbK4otPkykio9apH9+Sqf28bZwTM507TJT4=;
 b=UgS3vktYejor4/gbPeDCPZbq4/YCzeafhYqrvSXfHQ4exppLw+Xh/GDYxd/QoW3YK3itzAFGl8dYhJq08Y/snEQQ0uvdK/Il8ngtxYO9iwSYdO3QLoiN9mx55fLpMs5XxN51AQ6puFl9rq3Wq+L7oVdgrlvYCqDa755FVkzuxnloBjZnxhWhvLeujhw0ebSz3/k+QBvLpBtkGwUxUb4fwPxwh8mubf6onEQoqj2/h0m5j+uGDhgTMdsv/1n9wkI7kApbyrF27VmzzQABRAp2zmRUV5OPu4l7DosMroshbk0htcQTPwi9qFVZ50GAXYv/J3pldFmIvbYIR2ZCLFbn6g==
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=xYvhbIghzbK4otPkykio9apH9+Sqf28bZwTM507TJT4=;
 b=nQ9yT96fDZ4D4SG+0dRnhcCR6Y8Ssao+tz41LI/DHRd+FaNisrY/uIQq2lNNMtnFSfro/83R2sB8T4CmcqJ5XkjVwjjpleQMm5YsxGxTeb2Xud7Pg/LqZScrSvvdfV/f+7HVJ4gmHSxQSP8yXnlgJFxi5yUPtcGU2Zo5rNQb8vw=
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: Rahul Singh <rahul.singh@arm.com>, Stefano Stabellini
	<sstabellini@kernel.org>, Julien Grall <julien@xen.org>, Bertrand Marquis
	<bertrand.marquis@arm.com>, Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Stewart Hildebrand <stewart.hildebrand@amd.com>
Subject: [PATCH v5 7/9] xen/arm: Fix mapping for PCI bridge mmio region
Date: Wed, 4 Oct 2023 10:55:51 -0400
Message-ID: <20231004145604.1085358-8-stewart.hildebrand@amd.com>
X-Mailer: git-send-email 2.42.0
In-Reply-To: <20231004145604.1085358-1-stewart.hildebrand@amd.com>
References: <20231004145604.1085358-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: BL02EPF0001A103:EE_|SJ2PR12MB8926:EE_
X-MS-Office365-Filtering-Correlation-Id: 2f45f25d-3c94-4543-0676-08dbc4ea5367
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	jnOvq/+wSpgLWgV47DaFWUtDDbaeNrNy59iWhHI+98Wj/J1y6fyG0m+IG7uTc0i+EBsFs17xVtEvP8UM7dRa0cuake8DlBTUTfCdzmzpKqwdnImdong/lKNCWoVG9QkdlKxvfw2QVhh37+uIs+w5vuzjh4w03Hia+14zB0TgykMz8ROCeb2paRQesVlDGHmqOBeWuhVCAxXpBJlOEeMBlhQJH4O6JT5axKZLGgSeg5xhupzf8oDgAZciz1lbNjzMro1q7f/5RS39uxvkyU7uvvMI7KrtgnNOxvEOuVWPu/jNC1V80mKaIRMhwC/hFRxJ3N4+50HsPSJ8XQq+SO9QYCTcxHFlX/+WibEhoS1XotWa+QzxUsEIgj9i33iVM/ZI6T2TuHG9lpXNzkDsdfQZJtlCRDjjZRMugsSvNIj5lv2kUALwb3mhcksKgAzGOBFLJ7n5kTEa3ApFDwbdhhFoBPr6LPWL+z2+4Ldb6/VWHKemW1AfUe9MsfRUB+gANQFXnkvYupwhphfZcvcCzJXNrirC23TaJ+Oo41A7AcJ30yfktUo2vw+AKnPb6N6oE82nCrBhGVhvAWivHz0kyVYXCz5Rc74QyxhcQHbst02zySXd0SZJRwhnpmzw5D1olbbhC8sm7I1vmOdxPON9BTehKuUNiPDAURg0wUFJTfdoilBTUMtgPix5GzrRONAj8ylyy+pJlXOxXHJh+a+dpEuhtGVaheD421SvlfoogRwZywrjdnG1lvB3VVDuXpzEbFNKSlQfSzolGKUK0QcvKQuhBQ==
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)(346002)(39860400002)(136003)(230922051799003)(82310400011)(1800799009)(451199024)(64100799003)(186009)(36840700001)(46966006)(40470700004)(478600001)(6666004)(26005)(47076005)(83380400001)(336012)(426003)(1076003)(2616005)(2906002)(8936002)(6916009)(54906003)(316002)(8676002)(70206006)(44832011)(41300700001)(5660300002)(70586007)(36756003)(4326008)(82740400003)(36860700001)(356005)(86362001)(81166007)(40480700001)(40460700003)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Oct 2023 14:58:10.3240
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 2f45f25d-3c94-4543-0676-08dbc4ea5367
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:
	BL02EPF0001A103.namprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ2PR12MB8926

From: Rahul Singh <rahul.singh@arm.com>

Current code skip the mapping for PCI bridge MMIO region to dom0 when
pci_passthrough_enabled flag is set. Mapping should be skip when
has_vpci(d) is enabled for the domain, as we need to skip the mapping
only when VPCI handler are registered for ECAM.

Signed-off-by: Rahul Singh <rahul.singh@arm.com>
Signed-off-by: Stewart Hildebrand <stewart.hildebrand@amd.com>
---
v4->v5:
* new patch
* rebase on top of "dynamic node programming using overlay dtbo" series
* replace !is_pci_passthrough_enabled() check with !IS_ENABLED(CONFIG_HAS_PCI)
  instead of removing
---
 xen/arch/arm/device.c       | 2 +-
 xen/arch/arm/domain_build.c | 4 ++--
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/xen/arch/arm/device.c b/xen/arch/arm/device.c
index 1f631d327441..4d69c298858d 100644
--- a/xen/arch/arm/device.c
+++ b/xen/arch/arm/device.c
@@ -330,7 +330,7 @@ int handle_device(struct domain *d, struct dt_device_node *dev, p2m_type_t p2mt,
         .d = d,
         .p2mt = p2mt,
         .skip_mapping = !own_device ||
-                        (is_pci_passthrough_enabled() &&
+                        (has_vpci(d) &&
                         (device_get_class(dev) == DEVICE_PCI_HOSTBRIDGE)),
         .iomem_ranges = iomem_ranges,
         .irq_ranges = irq_ranges
diff --git a/xen/arch/arm/domain_build.c b/xen/arch/arm/domain_build.c
index 7da254709d17..2c55528a62d4 100644
--- a/xen/arch/arm/domain_build.c
+++ b/xen/arch/arm/domain_build.c
@@ -1064,7 +1064,7 @@ static void __init assign_static_memory_11(struct domain *d,
 #endif
 
 /*
- * When PCI passthrough is available we want to keep the
+ * When HAS_PCI is enabled we want to keep the
  * "linux,pci-domain" in sync for every host bridge.
  *
  * Xen may not have a driver for all the host bridges. So we have
@@ -1080,7 +1080,7 @@ static int __init handle_linux_pci_domain(struct kernel_info *kinfo,
     uint16_t segment;
     int res;
 
-    if ( !is_pci_passthrough_enabled() )
+    if ( !IS_ENABLED(CONFIG_HAS_PCI) )
         return 0;
 
     if ( !dt_device_type_is_equal(node, "pci") )
-- 
2.42.0



From xen-devel-bounces@lists.xenproject.org Wed Oct 04 15:41:43 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 04 Oct 2023 15:41:43 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612697.952744 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qo40E-0004Rx-JO; Wed, 04 Oct 2023 15:41:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612697.952744; Wed, 04 Oct 2023 15:41: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 1qo40E-0004Rq-G6; Wed, 04 Oct 2023 15:41:34 +0000
Received: by outflank-mailman (input) for mailman id 612697;
 Wed, 04 Oct 2023 15:41: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 1qo40D-0004Rh-TN
 for xen-devel@lists.xenproject.org; Wed, 04 Oct 2023 15:41: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 1qo40D-0006jH-9d; Wed, 04 Oct 2023 15:41:33 +0000
Received: from [15.248.2.150] (helo=[10.24.67.38])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qo40D-0001g0-3g; Wed, 04 Oct 2023 15:41: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=USryev3r0pVojqfcVSenieL0a1SEmW95Au1bA7n5dis=; b=HulH0VMGmF7s9EEYTA9ttQkEPc
	x5NdmKUaWJiZn2RuUhTVy4fRJ98BrG3RzdZ4BhrZKyRVUQ6pGEwlvVXWTuN5sli8erM6CjL5lj5OF
	xqcoYxW5FQvQnPL2G5u4C7K8I7wvuSCEmyHH4iCvnXyd02LJD7yTZCdWKW8aBhoIPHD8=;
Message-ID: <f419a108-f594-4a00-9445-e1c072777379@xen.org>
Date: Wed, 4 Oct 2023 16:41:31 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH] arm/ioreq: clean data field in ioreq struct on read
 operations
Content-Language: en-GB
To: Andrii Chepurnyi <Andrii_Chepurnyi@epam.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Oleksandr Tyshchenko <Oleksandr_Tyshchenko@epam.com>,
 "andrii.chepurnyi82@gmail.com" <andrii.chepurnyi82@gmail.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
References: <20231003131923.2289867-1-andrii_chepurnyi@epam.com>
 <27044e68-4a49-4f1d-b8a9-174810efb5fe@xen.org>
 <ec7089d1-0111-1e34-900b-b5c40dcb41d2@epam.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <ec7089d1-0111-1e34-900b-b5c40dcb41d2@epam.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 04/10/2023 09:42, Andrii Chepurnyi wrote:
> Hello,

Hi,

> On 10/3/23 16:49, Julien Grall wrote:
>> Hi,
>>
>> On 03/10/2023 14:19, Andrii Chepurnyi wrote:
>>> For read operations, there's a potential issue when the data field
>>> of the ioreq struct is partially updated in the response. To address
>>> this, zero data field during read operations. This modification
>>> serves as a safeguard against implementations that may inadvertently
>>> partially update the data field in response to read requests.
>>> For instance, consider an 8-bit read operation. In such cases, QEMU,
>>> returns the same content of the data field with only 8 bits of
>>> updated data.
>>
>> Do you have a pointer to the code?
> 
> First of all, using the term "user-space" with respect to this problem
> was a mistake from my side.
> 
> In general, my use case is to run u-boot with virtio-blk inside the
> guest domain.
> I.e. setup configuration(hardware renesas gen3 kingfisher board):  Dom0,
> DomD ( QEMU as backend) and running u-boot in DomA with virtio-blk.
> The problem appeared inside the u-boot code :

I was asking a pointer to the code in the Device Emulator (QEMU in your 
case). I am confident the code is correct in U-boot, because when using 
'w0', the unused bits are meant to be set to zero (per the Arm Arm). But 
I am curious to know why QEMU is not doing it.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Wed Oct 04 17:15:28 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 04 Oct 2023 17:15:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612702.952754 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qo5Sp-0001pQ-Og; Wed, 04 Oct 2023 17:15:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612702.952754; Wed, 04 Oct 2023 17: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 1qo5Sp-0001pJ-Kp; Wed, 04 Oct 2023 17:15:11 +0000
Received: by outflank-mailman (input) for mailman id 612702;
 Wed, 04 Oct 2023 17:15:10 +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 1qo5Sn-0001pD-UQ
 for xen-devel@lists.xenproject.org; Wed, 04 Oct 2023 17:15: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 1qo5Sn-00016E-FP; Wed, 04 Oct 2023 17:15:09 +0000
Received: from [15.248.2.150] (helo=[10.24.67.38])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qo5Sn-0002sa-9U; Wed, 04 Oct 2023 17: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=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=9SBaCJ5jmMLpQW724D91AuBwgkVyc7rEzdAGKM6wSI8=; b=Kq0yUUrxhSA/nZ0LIZ0S4Ty93s
	3BLrpeSizwmEkAiYW9WGvcLyW8XtEQoDu6FJXDXBzI2jH0CNghZycDGYKNA8DDUpGrJy12m1Zi519
	w4W/vTQN7DCXYLL3zio4q2xQJA3Ue+ui0SnchVZBxp924K3Co9M8qrnPvPehYf6GD+dc=;
Message-ID: <a1e321c9-0067-42db-9a4b-0caa507ea6d1@xen.org>
Date: Wed, 4 Oct 2023 18:15:06 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v5 10/10] common: convert vCPU info area registration
Content-Language: en-GB
To: Roger Pau Monne <roger.pau@citrix.com>, xen-devel@lists.xenproject.org,
 henry.wang@arm.com
Cc: Jan Beulich <jbeulich@suse.com>, Andrew Cooper
 <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
 George Dunlap <george.dunlap@citrix.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Tamas K Lengyel <tamas@tklengyel.com>
References: <20231002151127.71020-1-roger.pau@citrix.com>
 <20231002151127.71020-11-roger.pau@citrix.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <20231002151127.71020-11-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

Hi Roger,

On 02/10/2023 16:11, Roger Pau Monne wrote:
> From: Jan Beulich <jbeulich@suse.com>
> 
> 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).
> 
> Signed-off-by: Jan Beulich <jbeulich@suse.com>
> Reviewed-by: Roger Pau Monné <roger.pau@citrix.com>

Acked-by: Julien Grall <jgrall@amazon.com>

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Wed Oct 04 17:19:19 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 04 Oct 2023 17:19:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612707.952763 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qo5Wo-0002RY-7Z; Wed, 04 Oct 2023 17:19:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612707.952763; Wed, 04 Oct 2023 17: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 1qo5Wo-0002RR-4N; Wed, 04 Oct 2023 17:19:18 +0000
Received: by outflank-mailman (input) for mailman id 612707;
 Wed, 04 Oct 2023 17: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=lT9A=FS=epam.com=prvs=4641b3489e=oleksandr_tyshchenko@srs-se1.protection.inumbo.net>)
 id 1qo5Wn-0002RH-64
 for xen-devel@lists.xenproject.org; Wed, 04 Oct 2023 17:19:17 +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 22f1e642-62da-11ee-98d3-6d05b1d4d9a1;
 Wed, 04 Oct 2023 19:19:15 +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
 394Dv7Pq021682; Wed, 4 Oct 2023 17:18:46 GMT
Received: from eur05-vi1-obe.outbound.protection.outlook.com
 (mail-vi1eur05lp2169.outbound.protection.outlook.com [104.47.17.169])
 by mx0a-0039f301.pphosted.com (PPS) with ESMTPS id 3th6f2hvwv-1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT);
 Wed, 04 Oct 2023 17:18:46 +0000
Received: from DB8PR03MB6108.eurprd03.prod.outlook.com (2603:10a6:10:ed::15)
 by AS8PR03MB9437.eurprd03.prod.outlook.com (2603:10a6:20b:5a1::16) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.21; Wed, 4 Oct
 2023 17:18:42 +0000
Received: from DB8PR03MB6108.eurprd03.prod.outlook.com
 ([fe80::ac2a:7470:c441:365c]) by DB8PR03MB6108.eurprd03.prod.outlook.com
 ([fe80::ac2a:7470:c441:365c%7]) with mapi id 15.20.6838.024; Wed, 4 Oct 2023
 17:18: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: 22f1e642-62da-11ee-98d3-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=NjIB0teCLGGM+xXCkjmEEpPPVS/sy/eLoHWFPXlwRgxjtc/5b7iy1u7Zi8uD9TzzLq+gG2hkynQFaDg/oB/bN4BbsNFomRfp1CpKCWY+2VZYmZ+kqTIggzzakpRCZiB+PSwUB2zKNJmlQgBg2QvKi/d3S+0W2R+KvTnZikzib6F4IpS8eoA5ns+dquvgmNM9qn+Rk8qGGQnEwpWpIW0U6pMy5q3f8JfIm/VawzokGMdSESaxhlzE+VedyBcl2X5gIt2YadN7RvSg/+hV2V1rJJsKvKG0oAfYavnO/o77pZA+bT/g2zhycwrlGUebxD5Dx8/myvjtvHTsFzHF3TJaXw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=Wm3I36RDY0zfDwhCiXvT/6o0lRf1GQ4jDZbzk1FPHl8=;
 b=NZHLWnsHDnK3p+M9SJU8lMlewehpyx86U/q6XDBaLw4tT3gF+yJth6hiNfnjKdFyh1vf/ve5uloufqtcAjxgGv+RFM8IKOfAyHl3/Fyl/JGNeAdH2Vtkzs5zeC+V5CT0x4F4YgKRCzA3WcDKiamhYO9NAaq57EXfbkC/PjY4kYreMnl6AMQXSn7EG68dXpfq+yzbUHjK6TH9CnO819SGOzxwn31DtlNn9fsem5ywfVpNA1fj3WUukMclKMNmMka2+xtx8tukaXhGO/jGdQstJ5+YpQuo3hjjENpGrUPePQFde3Hk1KZ1oMuXVB2xn8qG+AkuChQvdlPOohukKjomcA==
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=Wm3I36RDY0zfDwhCiXvT/6o0lRf1GQ4jDZbzk1FPHl8=;
 b=StxgVvrJVALK73+BRrO+1bdbGoOPAHd1D0OiZpskzD2xWQEwybAUZLyMhb4Z8AQy2TWsCMKGOWz4SkWE0k1K8PdMtZE3NZt8rHztQFfJA+5CFZlsuxR6kjoFLTqdb20D0FnnOUh2FfBUk8+5lu1h2Yjp5dc6EvemosEfiwoqLbnkfAMuKSzRQIkCDsbqZhAD3gNF0OGIXBlfN6CRuXyaCB8FgjNjNd2KlBlv7OLeVQQBotgggxJalhWmIuCekwDVWlmTQr9faXokq+OdqUKCx6HDEjKSxFRB5gmLQSa4ylYnaG2JJnIFE0YtvjicB2c6zQcuJhrW98zucIXeatqWqw==
From: Oleksandr Tyshchenko <Oleksandr_Tyshchenko@epam.com>
To: =?utf-8?B?Um9nZXIgUGF1IE1vbm7DqQ==?= <roger.pau@citrix.com>
CC: Julien Grall <julien@xen.org>, Elliott Mitchell <ehem+xen@m5p.com>,
        "xen-devel@lists.xenproject.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: Issue with shared information page on Xen/ARM 4.17
Thread-Topic: Issue with shared information page on Xen/ARM 4.17
Thread-Index: 
 AQHZ9dNZbcd5CVq6q0CaRs8d4dlf/7A4cSiAgADYhwCAAC0hgIAADTmAgAAVaACAAEiNAA==
Date: Wed, 4 Oct 2023 17:18:42 +0000
Message-ID: <afbf0662-1191-49bb-b4a7-933d360c6079@epam.com>
References: <ZRY7Ls3p6M6pakMq@mattapan.m5p.com>
 <ZRvQNKyYpLDVTs0i@MacBookPdeRoger> <ZRxpC7ukhiYvzz5m@mattapan.m5p.com>
 <ZR0erl_OSkNgIQjx@MacBookPdeRoger>
 <c0b67401-dfe5-475f-8640-b66ac32a80fb@xen.org>
 <aaf14d06-4e29-4de0-8e56-ff200f21b692@epam.com>
 <ZR1hliaiprDqCjyQ@MacBookPdeRoger>
In-Reply-To: <ZR1hliaiprDqCjyQ@MacBookPdeRoger>
Accept-Language: en-US, ru-RU
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
x-ms-publictraffictype: Email
x-ms-traffictypediagnostic: DB8PR03MB6108:EE_|AS8PR03MB9437:EE_
x-ms-office365-filtering-correlation-id: 5306e2f9-1efb-439e-0008-08dbc4fdf55b
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: 
 1CyzGPuIBKcpkBjD0sd+tV7VdI28VcvAXCRDQLNItK9rBQE2XsEV/17I4aMajyjZKFj7z7cbajdzU5uFKhZJa2AoW5XbpAhiwdB1SH+dYzuvBsDAiL3lQHaCu4TMsx8rGK6ICgcgFS1G1WithKzrOmUZvTezjNzqdnrfcdObWgFDCW3rNVLfCTUQ123yWkKxLUmgdZ18FS5qsK/mcbOEcJh94IbF2GRMC4x70rGVJGwVTB+s6xNCjil34QtcBbThPok9Pfa8HwqFjiSWKPmRsuw9uZx6h2KxUS6rLZ7+docYzr3dw3P5XSqDvLqY6lX7K4T/ocUknsHxO35DaUQZltDpgrCDnmtiAYGLVBynsTM83vwGfT63lMBZaKDilD0izZhJzjlt2N+t+sJPgbVbrnleiZ3iDZDPMxx/2E6/vj5dms9f/mM548dgxTQm8iXsR/z+TGNs829sV29qrLQaF6VmhWbpbTc9a244E4pL9PRORVHyRYdbSZCXen+FYWQu+MgY4/9gPkgQs8X/UjG+W/RcS6ig8Nyd6OIMfR904wvnG5saOPVVcRsaQkDA9v+Zak/9O6clQ47ByXYqieEfr5ZvmS2A7liSlpDWfwgKG32KLcg4bJ5CWWHoAH2hiOKfpScOzSknU0AZVuQKxeItZw==
x-forefront-antispam-report: 
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DB8PR03MB6108.eurprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(136003)(39860400002)(346002)(396003)(376002)(366004)(230922051799003)(64100799003)(1800799009)(451199024)(186009)(6512007)(2616005)(6506007)(38100700002)(71200400001)(478600001)(38070700005)(53546011)(4326008)(66556008)(66446008)(66946007)(8936002)(41300700001)(5660300002)(83380400001)(26005)(86362001)(8676002)(76116006)(64756008)(66476007)(91956017)(316002)(54906003)(31696002)(6916009)(107886003)(36756003)(122000001)(2906002)(6486002)(66899024)(31686004)(45980500001);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: 
 =?utf-8?B?QjVtcll0dU5LNGJQRXhydnZTTUZ1VnNpMVBtenNETUJiVTlWL2hjNzJxNFpW?=
 =?utf-8?B?KytIVGtxMTJNeXNHSGtJVVlxQVJTbUlIb1htWjZRUklROEovZm9XekZxZWF1?=
 =?utf-8?B?Z1NjMjg3Y3FRTjdpOCtacWsrd2JoV1ZXcWdrVnBQcWxXUDRPcVdYN0JNeGlj?=
 =?utf-8?B?eVdaRHdRWGcrVWVteGZOa0xDV1E2UGJXbzZib0ZrOFdBeFIrYWFDam1FUU5I?=
 =?utf-8?B?QWZSeU9jNmp3Vk0zSEQ1TTNyRkNnSU85aUV2bklORGpLL3lUMXNSMzZYV1hJ?=
 =?utf-8?B?MVR0a1FkRmpDb3lQRHIwL0MvMDNTVDhuMmN0NXB0NGx0SDF5d1E5dDhmcS94?=
 =?utf-8?B?ek5CelpweERlSlI4b1lOWUxUTjBEUFl2Q0hZeW44TTlBV3hETmpYMUpQNUI4?=
 =?utf-8?B?NEZKN1NuVGRmaG1mUEZKdEtIeEZZRENWY0FNc1g0Z0cyOVNWR1g3S3ZNU0JI?=
 =?utf-8?B?TzNnQjFpZHZTM3RTL3dSRGxGVXNnUFYzVXhRTy9Cc1d2dU1qZEpOQXhKVy9s?=
 =?utf-8?B?cmtQWWhvSFFIZmFRVDBQVUFGUDd2eVRFTWJ2eXpDMnMyVlphOWxXS2F3ZWVs?=
 =?utf-8?B?TmFrTFJ0WFpTTWhZbkJ6dDNncGFBbmV6MWUwVTVXc2owUGlrWjRkMXhxRE4x?=
 =?utf-8?B?K1JaeGwvQU5xLzlobVlicWIyYVhURlhQSXZaTFc3dGlKZng4NzVaZzVZWHBl?=
 =?utf-8?B?L2VxVndDU2REcUZtUE9MOGJMVnJLRExyWlJ3cm1QTEpVbE1Ud3FvZkNhZVZH?=
 =?utf-8?B?M3QvR2xtbXpiUnFxNmt4cEdodVpmRnVsak5qZzk1bFJvNDFnaXVoeWNJV2Vz?=
 =?utf-8?B?cExNWlVlVnZIR1J3ZGsxQU1xam4yN2g3SHlCWjdrVWxjWHVIQ2piZzdyT3dj?=
 =?utf-8?B?MUNpMGtoWXV2SGJwTXJ3ODA5VTFpWEZMSHhXeVU4eno2NVo3Z1JGWnVvbmpm?=
 =?utf-8?B?V2RHS1hHSXU5elN3bDl1b1R6TXdycEl3d0djK3RQY2I4RHE4c01jKzY0azZp?=
 =?utf-8?B?amgwY1lIYnBvaVFDTjVlTjNRcERiNnpzdmN6MW1BWE5XOGdUd0RZLyt3K0kx?=
 =?utf-8?B?eXp2Q0tGLzdBL3hKTzlyNUIxU0d0TWovMlNSclNwWHg5bEhxTVJwUEoyYlBB?=
 =?utf-8?B?OHR6T3labDVPK3dIUmNQeTV3anRHNERyVERwclJWMzY5MWovOGVqSFNCdC9C?=
 =?utf-8?B?QTFpL1hyeXdjRDh4VkVNam5Ea0IyN0ZWTlNMdk5CVzlJSHF2ZUIydDNmVk1p?=
 =?utf-8?B?dnd4WVFHYXVyMi9LR3BJVGFHUFNTaWpwazBwUjlvYVlabmtSZS9qRTZtVVVr?=
 =?utf-8?B?OC9ZL0dNeDV2K1hPSkViRDFsRUR4UDEvWkxRamxQcjlpS3BGdmNBRHluUjFT?=
 =?utf-8?B?MXdsY0IwMWM4THhoTS94c1VadTh2TEJjUEJWS0s5c2hOZlB5RGxkaGhSWUpK?=
 =?utf-8?B?ck1qTGxBajVWUndPZFFaUk9wTi9GSjNTaFhwV2lzQmJxc3hOS2tuZ2JWK3dZ?=
 =?utf-8?B?bE4rU004STVDU2Z3eTZXaVFvOW8zdU1Pckx5cVQvMFRwcTNtajE2UXdUOUlI?=
 =?utf-8?B?elgwcnR4SllRY3NqaFZxOHVMS0pRaDZab2FSSUZoNzk3VEJPd09vVTRvRHNK?=
 =?utf-8?B?cTFoQ0VNWG9hR01KR08wVU5vVFpEdWd1Nk5BeXFGdDl1dDJESERKcjZQaHIy?=
 =?utf-8?B?dW9Ucmwzc1k2NW5XWHV6djVJYWVyVzlzU3l2dVhJOEdvRE1FSkU3N2MxK1Ny?=
 =?utf-8?B?eW5CMmRJNUM5amFZZXpYTFU0NjlkWWVYY3RQYjZpUk92SUQ3ZWdxQzVpK2Jh?=
 =?utf-8?B?R2ljYlB4aW9yeE9vL1FTdmxabE5iV1JOWHY3aEdISGVWNHJuUEI0dTN3a01B?=
 =?utf-8?B?Q3JOVVpyR2k5Q29wOWtNQjFqZFRnOVV3dzlxNFNlalZmS1VmYWZTYk4xQTND?=
 =?utf-8?B?VWRuRUdlb2ZLWGUwN2Z5VjkzamFXb3pUTzVISCtUUTJGNW1kVm9pK0cxdDBD?=
 =?utf-8?B?N0trcGJSeU9mcHF1TmZXUDQzZ1B2ekw3S0RJWmw1c0ZqTlBGMEQ2cHhiZHJX?=
 =?utf-8?B?SU0ydVlPa1lMNFp6Znk4TU9qOGZxMmF6ZTQ1UE44d29Bc0NnNE55MkNoSjlD?=
 =?utf-8?B?ekkxZHAzOGFsVHY0b2hPR29HS3U1YlRqS1IybDJVckJnVUM2V3NJdUd0dHFa?=
 =?utf-8?Q?dOrT461u18S5DYWOkf7eRCs=3D?=
Content-Type: text/plain; charset="utf-8"
Content-ID: <85A7BCF8DAA92B4FBC2064ED5B40368A@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: DB8PR03MB6108.eurprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 5306e2f9-1efb-439e-0008-08dbc4fdf55b
X-MS-Exchange-CrossTenant-originalarrivaltime: 04 Oct 2023 17:18:42.4519
 (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: ppkmGnqLOnznnqMHsA3AovMj9YidsUpcCEua3xuEkBzbgisM7A+CMHEF6nW3SQ8Mr5hZT7f4sk69IypfKIIM2vB1N+zoMkWeHufPr4mYgfg=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR03MB9437
X-Proofpoint-GUID: M4GubfrjmDuU3o7cnjxkFu2xL2BZyJnK
X-Proofpoint-ORIG-GUID: M4GubfrjmDuU3o7cnjxkFu2xL2BZyJnK
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-10-04_08,2023-10-02_01,2023-05-22_02
X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 lowpriorityscore=0
 bulkscore=0 suspectscore=0 priorityscore=1501 mlxscore=0 malwarescore=0
 mlxlogscore=999 impostorscore=0 adultscore=0 phishscore=0 clxscore=1015
 spamscore=0 classifier=spam adjust=0 reason=mlx scancount=1
 engine=8.12.0-2309180000 definitions=main-2310040124

DQoNCk9uIDA0LjEwLjIzIDE1OjU5LCBSb2dlciBQYXUgTW9ubsOpIHdyb3RlOg0KDQpIZWxsbyBS
b2dlcg0KDQoNCg0KPiBPbiBXZWQsIE9jdCAwNCwgMjAyMyBhdCAxMTo0MjozMkFNICswMDAwLCBP
bGVrc2FuZHIgVHlzaGNoZW5rbyB3cm90ZToNCj4+DQo+Pg0KPj4gT24gMDQuMTAuMjMgMTM6NTUs
IEp1bGllbiBHcmFsbCB3cm90ZToNCj4+DQo+PiBIZWxsbyBhbGwuDQo+Pg0KPj4+IEhpIFJvZ2Vy
LA0KPj4+DQo+Pj4gT24gMDQvMTAvMjAyMyAwOToxMywgUm9nZXIgUGF1IE1vbm7DqSB3cm90ZToN
Cj4+Pj4gT24gVHVlLCBPY3QgMDMsIDIwMjMgYXQgMTI6MTg6MzVQTSAtMDcwMCwgRWxsaW90dCBN
aXRjaGVsbCB3cm90ZToNCj4+Pj4+IE9uIFR1ZSwgT2N0IDAzLCAyMDIzIGF0IDEwOjI2OjI4QU0g
KzAyMDAsIFJvZ2VyIFBhdSBNb25uw6kgd3JvdGU6DQo+Pj4+Pj4gT24gVGh1LCBTZXAgMjgsIDIw
MjMgYXQgMDc6NDk6MThQTSAtMDcwMCwgRWxsaW90dCBNaXRjaGVsbCB3cm90ZToNCj4+Pj4+Pj4g
SSdtIHRyeWluZyB0byBnZXQgRnJlZUJTRC9BUk0gb3BlcmF0aW9uYWwgb24gWGVuL0FSTS7CoCBD
dXJyZW50DQo+Pj4+Pj4+IGlzc3VlIGlzDQo+Pj4+Pj4+IHRoZSBjaGFuZ2VzIHdpdGggdGhlIGhh
bmRsaW5nIG9mIHRoZSBzaGFyZWQgaW5mb3JtYXRpb24gcGFnZSBhcHBlYXIgdG8NCj4+Pj4+Pj4g
aGF2ZSBicm9rZW4gdGhpbmdzIGZvciBtZS4NCj4+Pj4+Pj4NCj4+Pj4+Pj4gV2l0aCBhIHByZS00
LjE3IGJ1aWxkIG9mIFhlbi9BUk0gdGhpbmdzIHdvcmtlZCBmaW5lLsKgIFlldCB3aXRoIGEgYnVp
bGQNCj4+Pj4+Pj4gb2YgdGhlIDQuMTcgcmVsZWFzZSwgbWFwcGluZyB0aGUgc2hhcmVkIGluZm9y
bWF0aW9uIHBhZ2UgZG9lc24ndCB3b3JrLg0KPj4+Pj4+DQo+Pj4+Pj4gVGhpcyBpcyBkdWUgdG8g
NzEzMjA5NDZkNWVkZiBBRkFJQ1QuDQo+Pj4+Pg0KPj4+Pj4gWWVzLsKgIFdoaWxlIHRoZSAtRUJV
U1kgbGluZSBtYXkgYmUgdGhlIG9uZSB0cmlnZ2VyaW5nLCBJJ20gdW5zdXJlIHdoeS4NCj4+Pj4+
IFRoaXMgc2VlbXMgYSBmYWlybHkgcmVhc29uYWJsZSBjaGFuZ2UsIHNvIEkgaGFkIG5vIGludGVu
dGlvbiBvZiBhc2tpbmcNCj4+Pj4+IGZvciBhIHJldmVydCAod2hpY2ggbGlrZWx5IHdvdWxkIGhh
dmUgYmVlbiByZWplY3RlZCkuwqAgVGhlcmUgaXMgYWxzbyBhDQo+Pj4+PiByZWFsIHBvc3NpYmls
aXR5IHRoZSAtRUJVU1kgY29tZXMgZnJvbSBlbHNld2hlcmUuwqAgQ291bGQgYWxzbyBiZQ0KPj4+
Pj4gNzEzMjA5NDZkNWVkZiBjYXVzZWQgYSBidWcgZWxzZXdoZXJlIHRvIGJlIGV4cG9zZWQuDQo+
Pj4+DQo+Pj4+IEEgZ29vZCB3YXkgdG8ga25vdyB3b3VsZCBiZSB0byBhdHRlbXB0IHRvIHJldmVy
dCA3MTMyMDk0NmQ1ZWRmIGFuZCBzZWUNCj4+Pj4gaWYgdGhhdCBmaXhlcyB5b3VyIGlzc3VlLg0K
Pj4+Pg0KPj4+PiBBbHRlcm5hdGl2ZWx5IHlvdSBjYW4gdHJ5IChvciBzaW1pbGFyKToNCj4+Pj4N
Cj4+Pj4gZGlmZiAtLWdpdCBhL3hlbi9hcmNoL2FybS9tbS5jIGIveGVuL2FyY2gvYXJtL21tLmMN
Cj4+Pj4gaW5kZXggNmNjZmZlYWVhNTdkLi4xMDVlZjNmYWVjZmQgMTAwNjQ0DQo+Pj4+IC0tLSBh
L3hlbi9hcmNoL2FybS9tbS5jDQo+Pj4+ICsrKyBiL3hlbi9hcmNoL2FybS9tbS5jDQo+Pj4+IEBA
IC0xNDI0LDYgKzE0MjQsOCBAQCBpbnQgeGVubWVtX2FkZF90b19waHlzbWFwX29uZSgNCj4+Pj4g
IMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgcGFnZV9zZXRfeGVuaGVhcF9nZm4o
bWZuX3RvX3BhZ2UobWZuKSwgZ2ZuKTsNCj4+Pj4gIMKgwqDCoMKgwqDCoMKgwqDCoCB9DQo+Pj4+
ICDCoMKgwqDCoMKgwqDCoMKgwqAgZWxzZQ0KPj4+PiArwqDCoMKgwqDCoMKgwqAgew0KPj4+PiAr
wqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBwcmludGsoIiV1IGFscmVhZHkgbWFwcGVkXG4iLCBzcGFj
ZSk7DQo+Pj4+ICDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAvKg0KPj4+PiAgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoCAqIE1hbmRhdGUgdGhlIGNhbGxlciB0byBmaXJzdCB1bm1hcCB0
aGUgcGFnZSBiZWZvcmUNCj4+Pj4gbWFwcGluZyBpdA0KPj4+PiAgwqDCoMKgwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoCAqIGFnYWluLiBUaGlzIGlzIHRvIHByZXZlbnQgWGVuIGNyZWF0aW5nIGFuIHVu
d2FudGVkDQo+Pj4+IGhvbGUgaW4NCj4+Pj4gQEAgLTE0MzIsNiArMTQzNCw3IEBAIGludCB4ZW5t
ZW1fYWRkX3RvX3BoeXNtYXBfb25lKA0KPj4+PiAgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oCAqIHRvIHVubWFwIGl0IGFmdGVyd2FyZHMuDQo+Pj4+ICDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg
wqDCoMKgICovDQo+Pj4+ICDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCByYyA9IC1FQlVTWTsN
Cj4+Pj4gK8KgwqDCoMKgwqDCoMKgIH0NCj4+Pj4gIMKgwqDCoMKgwqDCoMKgwqDCoCBwMm1fd3Jp
dGVfdW5sb2NrKHAybSk7DQo+Pj4+ICDCoMKgwqDCoMKgIH0NCj4+Pj4NCj4+Pj4+Pj4gSSdtIHVz
aW5nIFRpYW5vY29yZSBhcyB0aGUgZmlyc3Qgc3RhZ2UgbG9hZGVyLsKgIFRoaXMgY29udGludWVz
IHRvIHdvcmsNCj4+Pj4+Pj4gZmluZS7CoCBUaGUgYnVpbGQgaXMgdXNpbmcgdGFnICJlZGsyLXN0
YWJsZTIwMjIxMSIsIGNvbW1pdCBmZmY2ZDgxMjcwLg0KPj4+Pj4+PiBXaGlsZSBUaWFub2NvcmUg
ZG9lcyBtYXAgdGhlIHNoYXJlZCBpbmZvcm1hdGlvbiBwYWdlLCBteSByZWFkaW5nIG9mDQo+Pj4+
Pj4+IHRoZWlyDQo+Pj4+Pj4+IHNvdXJjZSBpcyB0aGF0IGl0IHByb3Blcmx5IHVubWFwcyB0aGUg
cGFnZSBhbmQgdGhlcmVmb3JlIHNob3VsZG4ndA0KPj4+Pj4+PiBjYXVzZQ0KPj4+Pj4+PiB0cm91
YmxlLg0KPj4+Pj4+Pg0KPj4+Pj4+PiBOb3RlcyBvbiB0aGUgYWN0dWFsIGNhbGwgaXMgZ3BmbiB3
YXMgMHgwMDAwMDAwMDAwMDQwMDcyLsKgIFRoaXMgaXMNCj4+Pj4+Pj4gb3V0c2lkZQ0KPj4+Pj4+
PiB0aGUgcmVjb21tZW5kZWQgYWRkcmVzcyByYW5nZSwgYnV0IG15IHVuZGVyc3RhbmRpbmcgaXMg
dGhpcyBpcw0KPj4+Pj4+PiBzdXBwb3NlZA0KPj4+Pj4+PiB0byBiZSBva2F5Lg0KPj4+Pj4+Pg0K
Pj4+Pj4+PiBUaGUgcmV0dXJuIGNvZGUgaXMgLTE2LCB3aGljaCBpcyBFQlVTWS4NCj4+Pj4+Pj4N
Cj4+Pj4+Pj4gSWRlYXM/DQo+Pj4+Pj4NCj4+Pj4+PiBJIHRoaW5rIHRoZSBpc3N1ZSBpcyB0aGF0
IHlvdSBhcmUgbWFwcGluZyB0aGUgc2hhcmVkIGluZm8gcGFnZSBvdmVyIGENCj4+Pj4+PiBndWVz
dCBSQU0gcGFnZSwgYW5kIGluIG9yZGVyIHRvIGRvIHRoYXQgeW91IHdvdWxkIGZpc3QgbmVlZCB0
byBjcmVhdGUNCj4+Pj4+PiBhIGhvbGUgYW5kIHRoZW4gbWFwIHRoZSBzaGFyZWQgaW5mbyBwYWdl
LsKgIElPVzogdGhlIGlzc3VlIGlzIG5vdCB3aXRoDQo+Pj4+Pj4gZWRrMiBub3QgaGF2aW5nIHVu
bWFwcGVkIHRoZSBwYWdlLCBidXQgd2l0aCBGcmVlQlNEIHRyeWluZyB0byBtYXAgdGhlDQo+Pj4+
Pj4gc2hhcmVkX2luZm8gb3ZlciBhIFJBTSBwYWdlIGluc3RlYWQgb2YgYSBob2xlIGluIHRoZSBw
Mm0uwqAgeDg2DQo+Pj4+Pj4gYmVoYXZpb3IgaXMgZGlmZmVyZW50IGhlcmUsIGFuZCBkb2VzIGFs
bG93IG1hcHBpbmcgdGhlIHNoYXJlZF9pbmZvDQo+Pj4+Pj4gcGFnZSBvdmVyIGEgUkFNIGdmbiAo
YnkgZmlyc3QgcmVtb3ZpbmcgdGhlIGJhY2tpbmcgUkFNIHBhZ2Ugb24gdGhlDQo+Pj4+Pj4gZ2Zu
KS4NCj4+Pj4+DQo+Pj4+PiBBbiBpbnRlcmVzdGluZyB0aG91Z2h0LsKgIEkgdGhvdWdodCBJJ2Qg
dHJpZWQgdGhpcywgYnV0IHNpbmNlIEkgZGlkbid0DQo+Pj4+PiBzZWUNCj4+Pj4+IHN1Y2ggaW4g
bXkgZXhwZXJpbWVudHMgbGlzdC7CoCBXaGF0IEkgaGFkIHRyaWVkIHdhcyByZW1vdmluZyBhbGwg
dGhlDQo+Pj4+PiBwYWdlcw0KPj4+Pj4gaW4gdGhlIHN1Z2dlc3RlZCBtYXBwaW5nIHJhbmdlLsKg
IFlldCB0aGlzIGZhaWxlZC4NCj4+Pj4NCj4+Pj4gWWVhaCwgSSB3ZW50IHRvbyBmYXN0IGFuZCBk
aWRuJ3QgcmVhZCB0aGUgY29kZSBjb3JyZWN0bHksIGl0IGlzIG5vdA0KPj4+PiBjaGVja2luZyB0
aGF0IHRoZSBwcm92aWRlZCBnZm4gaXMgYWxyZWFkeSBwb3B1bGF0ZWQsIGJ1dCB3aGV0aGVyIHRo
ZQ0KPj4+PiBtZm4gaW50ZW5kZWQgdG8gYmUgbWFwcGVkIGlzIGFscmVhZHkgbWFwcGVkIGF0IGEg
ZGlmZmVyZW50IGxvY2F0aW9uLg0KPj4+Pg0KPj4+Pj4gU2luY2UgdGhpcyBzZWVtZWQgcmVhc29u
YWJsZSwgSSd2ZSBub3cgdHJpZWQgYW5kIGZvdW5kIGl0IGZhaWxzLsKgIFRoZQ0KPj4+Pj4gWEVO
TUVNX3JlbW92ZV9mcm9tX3BoeXNtYXAgY2FsbCByZXR1cm5zIDAuDQo+Pj4+DQo+Pj4+IFhFTk1F
TV9yZW1vdmVfZnJvbV9waHlzbWFwIHJldHVybmluZyAwIGlzIGZpbmUsIGJ1dCBpdCBzZWVtcyB0
byBtZQ0KPj4+PiBsaWtlIGVkazIgaGFzbid0IHVubWFwcGVkIHRoZSBzaGFyZWRfaW5mbyBwYWdl
LsKgIFRoZSBPUyBoYXMgbm8gaWRlYQ0KPj4+PiBhdCB3aGljaCBwb3NpdGlvbiB0aGUgc2hhcmVk
X2luZm8gcGFnZSBpcyBjdXJyZW50bHkgbWFwcGVkLCBhbmQgaGVuY2UNCj4+Pj4gY2FuJ3QgZG8g
YW55dGhpbmcgdG8gYXR0ZW1wdCB0byB1bm1hcCBpdCBpbiBvcmRlciB0byBjb3ZlciB1cCBmb3IN
Cj4+Pj4gYnVnZ3kgZmlybXdhcmUuDQo+Pj4+DQo+Pj4+IGVkazIgc2hvdWxkIGJlIHRoZSBlbnRp
dHkgdG8gaXNzdWUgdGhlIFhFTk1FTV9yZW1vdmVfZnJvbV9waHlzbWFwDQo+Pj4+IGFnYWluc3Qg
dGhlIGdmbiB3aGVyZSBpdCBoYXMgdGhlIHNoYXJlZF9pbmZvIHBhZ2UgbWFwcGVkLsKgIExpa2Vs
eQ0KPj4+PiBuZWVkcyB0byBiZSBkb25lIGFzIHBhcnQgb2YgRXhpdEJvb3RTZXJ2aWNlcygpIG1l
dGhvZC4NCj4+Pj4NCj4+Pj4gRldJVywgNzEzMjA5NDZkNWVkZiBpcyBhbiBBQkkgY2hhbmdlLCBh
bmQgYXMgZGVzaXJhYmxlIGFzIHN1Y2gNCj4+Pj4gYmVoYXZpb3IgbWlnaHQgYmUsIGEgbmV3IGh5
cGVyY2FsbCBzaG91bGQgaGF2ZSBpbnRyb2R1Y2VkIHRoYXQgaGFkIHRoZQ0KPj4+PiBiZWhhdmlv
ciB0aGF0IHRoZSBjaGFuZ2UgaW50ZW5kZWQgdG8gcmV0cm9maXQgaW50bw0KPj4+PiBYRU5NRU1f
YWRkX3RvX3BoeXNtYXAuDQo+Pj4gSSBjYW4gc2VlIGhvdyB5b3UgdGhpbmsgdGhpcyBpcyBhbiBB
QkkgY2hhbmdlIGJ1dCB0aGUgcHJldmlvdXMgYmVoYXZpb3INCj4+PiB3YXMgaW5jb3JyZWN0LiBC
ZWZvcmUgdGhpcyBwYXRjaCwgb24gQXJtLCB3ZSB3b3VsZCBhbGxvdyB0aGUgc2hhcmVkIHBhZ2UN
Cj4+PiB0byBiZSBtYXBwZWQgdHdpY2UuIEFzIHdlIGRvbid0IGtub3cgd2hlcmUgdGhlIGZpcm13
YXJlIGhhZCBtYXBwZWQgaXQNCj4+PiB0aGlzIGNvdWxkIHJlc3VsdCB0byByYW5kb20gY29ycnVw
dGlvbi4NCj4+Pg0KPj4+IE5vdywgd2UgY291bGQgc3VyZWx5IGRlY2lkZSB0byByZW1vdmUgdGhl
IHBhZ2UgYXMgeDg2IGRpZC4gQnV0IHRoaXMNCj4+PiBjb3VsZCBsZWF2ZSBhIGhvbGUgaW4gdGhl
IFJBTS4gQXMgdGhlIE9TIHdvdWxkIG5vdCBrbm93IHdoZXJlIHRoZSBob2xlDQo+Pj4gaXMsIHRo
aXMgY291bGQgbGVhZCB0byBwYWdlIGZhdWx0IHJhbmRvbWx5IGR1cmluZyBydW50aW1lLg0KPj4N
Cj4+DQo+PiArMS4NCj4+DQo+PiBJbiBhZGRpdGlvbiB0byB3aGF0IEp1bGllbiBoYXMgYWxyZWFk
eSBzYWlkLCBJIHdvdWxkIGxpa2UgdG8gc2F5IHRoZQ0KPj4gc2FtZSBpc3N1ZSB3YXMgZmFjZWQg
ZHVlIHRvIFUtQm9vdCAocnVubmluZyBhcyBhIHBhcnQgb2YgWGVuIGd1ZXN0DQo+PiBiZWZvcmUg
T1MpIGRpZG4ndCBwZXJmb3JtIGEgY2xlYW51cCBiZWZvcmUganVtcGluZyB0byBPUy4gVGhpcyBp
cw0KPj4gYWxyZWFkeSBmaXhlZCB0byBmb2xsb3cgdGhlIGN1cnJlbnQgYmVoYXZpb3IuIEkgZGlk
bid0IGZpbmQNCj4+IGNvcnJlc3BvbmRpbmcgVS1Cb290IG1haWwgdGhyZWFkLCBidXQgY2FuIHBv
aW50IHRvIGFscmVhZHkgdXBzdHJlYW1lZA0KPj4gY29tbWl0IGluIHRoZSBtYWluIHJlcG8uDQo+
IA0KPiBXaGF0IGFib3V0IG90aGVyIGJvb3Rsb2FkZXJzPw0KPiANCj4gVGhlcmUgbWlnaHQgYmUg
b3RoZXIgbG9hZGVycyB0aGF0IGRpZG4ndCB1bm1hcCBzaGFyZWRfaW5mbyBlaXRoZXIsIGJ1dA0K
PiB0aGF0IHJlbW92ZWQgdGhlIHBhZ2Ugd2hlcmUgdGhlIHNoYXJlZF9pbmZvIGlzIG1hcHBlZCBm
cm9tIHRoZQ0KPiByZXBvcnRlZCBSQU0gcmFuZ2VzIHRvIHRoZSBndWVzdC4gIEluIHN1Y2ggY2Fz
ZSBub3QgZG9pbmcgdGhlDQo+IHVubWFwcGluZyB3YXMgYmVuaWduLCBhcyB0aGUgZ3Vlc3Qgd291
bGQgbmV2ZXIgdXNlIHRoYXQgZ2ZuIGFzIFJBTQ0KPiBhbnl3YXkuDQoNCkkgZ290IHlvdXIgcG9p
bnQsIHRoaXMgd2F5LCBJIGFncmVlLCBub3QgZG9pbmcgdGhlDQp1bm1hcHBpbmcgd291bGRuJ3Qg
YmUgYSBiaWcgcHJvYmxlbS4gSSBhbSB3b25kZXJpbmcgd2hldGhlciBzdWNoIA0KYm9vdGxvYWRl
cnMgdGhhdCBpbnN0ZWFkIG9mIHVubWFwcGluZyBpbmRlZWQgaGlkaW5nL3Jlc2VydmluZyB0aGUg
Z2ZuIA0KKHdoZXJlIHNoYXJlZF9pbmZvIGlzIG1hcHBlZCB0bykgYXJlIHJlYWxseSBwcmVzZW50
IGluIHRoZSB3b3JsZCAoQXJtKT8gDQpQYXRjaCB3YXMgbWVyZ2VkIG1vcmUgdGhhbiAxIHllYXIg
YWdvLCBhbmQgdGhlIGlzc3VlIGhhc24ndCBiZWVuIG5vdGljZWQgDQp1bnRpbCBub3cgd2l0aCBF
REsyLiBMZXQncyB3YWl0IGZvciB0aGUgYWRkaXRpb24gaW5wdXQgb24gaG93IHRoZSBFREsyIA0K
aXMgcmVhbGx5IGRlYWxpbmcgd2l0aCBzaGFyZWRfaW5mby4NCg0KDQo+IA0KPiBUaGFua3MsIFJv
Z2VyLg==


From xen-devel-bounces@lists.xenproject.org Wed Oct 04 17:28:47 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 04 Oct 2023 17:28:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612714.952774 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qo5ft-0004vx-54; Wed, 04 Oct 2023 17:28:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612714.952774; Wed, 04 Oct 2023 17:28: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 1qo5ft-0004vq-2B; Wed, 04 Oct 2023 17:28:41 +0000
Received: by outflank-mailman (input) for mailman id 612714;
 Wed, 04 Oct 2023 17:28: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 1qo5fr-0004vk-Pj
 for xen-devel@lists.xenproject.org; Wed, 04 Oct 2023 17:28: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 1qo5fq-0001NZ-BG; Wed, 04 Oct 2023 17:28:38 +0000
Received: from [15.248.2.150] (helo=[10.24.67.38])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qo5fq-0003F0-4S; Wed, 04 Oct 2023 17:28: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:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=WgkeHo+UwJct/WYMLaqbBG3obWKsEy7Fd9MaG9+7K14=; b=XpnTtL6+7dRwtpffACLNCjpd4+
	FOYi+U08LFEpNSYkWdNEfejHcl9ym//eCIGadhutNOiDj5+deZE5s80/y8cxMI6iyEzrZK1MUYpDG
	pnARFLe4fPyjnRgKAZOthfwaVrtePCTJNIc99hUkndaMDp6bxQWqAmBqduAjIXlORPRQ=;
Message-ID: <1ffd1281-6014-4ea7-a90f-3d34ef798fb6@xen.org>
Date: Wed, 4 Oct 2023 18:28:36 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v2 3/5] arm/dom0less: put dom0less feature code in a
 separate module
Content-Language: en-GB
To: Stefano Stabellini <sstabellini@kernel.org>
Cc: Michal Orzel <michal.orzel@amd.com>, Luca Fancellu
 <Luca.Fancellu@arm.com>, Bertrand Marquis <Bertrand.Marquis@arm.com>,
 Xen-devel <xen-devel@lists.xenproject.org>, Wei Chen <Wei.Chen@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.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>
 <725342EA-730F-4961-88A4-43EC0CBAD5BA@arm.com>
 <alpine.DEB.2.22.394.2309291242570.2348112@ubuntu-linux-20-04-desktop>
 <bc2a043a-9836-429b-88bb-6bedda5343bf@xen.org>
 <38AD4AA5-D038-4114-A614-80BF91FB51FB@arm.com>
 <alpine.DEB.2.22.394.2310021512210.2348112@ubuntu-linux-20-04-desktop>
 <0348B5FA-D65C-4D70-99A4-47398BD4266C@arm.com>
 <dc16dc72-4a35-457d-b019-2351e3051c32@amd.com>
 <alpine.DEB.2.22.394.2310031242560.2348112@ubuntu-linux-20-04-desktop>
 <257cb1d3-e5b6-45cc-9b61-4710991693fb@xen.org>
 <alpine.DEB.2.22.394.2310031317360.2348112@ubuntu-linux-20-04-desktop>
From: Julien Grall <julien@xen.org>
In-Reply-To: <alpine.DEB.2.22.394.2310031317360.2348112@ubuntu-linux-20-04-desktop>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

Hi,

On 03/10/2023 21:40, Stefano Stabellini wrote:
> On Tue, 3 Oct 2023, Julien Grall wrote:
>> On 03/10/2023 20:52, Stefano Stabellini wrote:
>>> On Tue, 3 Oct 2023, Michal Orzel wrote:
>>>> On 03/10/2023 09:44, Luca Fancellu wrote:
>>>>> Given that the status after the move to common of the above functions is
>>>>> not very clean, I’ve decided to don’t do that,
>>>>> however if you are fine with it, I can do the modification and who is
>>>>> going to work further on the subject can consolidate
>>>>> and make them build for other architecture.
>>>>>
>>>> Another option would be to hold off for a while until work on
>>>> hyperlaunch/RISCV dom0less starts to better understand the needs,
>>>> concepts and to avoid multiple code movement which results in a horrible
>>>> history. I know this is not nice but I can tell you that
>>>> I had to stop working on some features like FLASK with dom0less, static
>>>> domids for dom0less domUs, because according to the hyperlaunch design,
>>>> this will need to be common. With hyperlaunch, everything starts with the
>>>> domain configuration that is supposed to be arch neutral, so
>>>> until this is done, it's difficult to do anything in this area.
>>>
>>> This is not good. In an ideal world, Hyperlaunch shouldn't block
>>> progress for dom0less. We shouldn't have to wait many months to make
>>> progress on FLASK with dom0less, static domids for dom0less domUs, etc.
>>> because of potential Hyperlaunch implications.
>>
>> It depends what are the implications. If it means that the bindings will
>> change a release after. Then I think we should instead work on standardizing
>> Hyperlaunch (or whichever name we decide to use) earlier so our users can rely
>> on the interface for multiple revisions.
>>
>> We could of course decide to maintain both interfaces. But this means more
>> maintenance work which could have been avoided by fast tracking Hyperlaunch
>> (it is not like we don't know it is coming...).
>>
>>> In my option a delay of few weeks might be OK; we should be reasonable.
>>> But a delay of few months is not. Cosidering review times, release
>>> schedules etc. it could become a very significant delay. >
>>> Also, hyperlaunch contributors are not familiar with dom0less and are
>>> not familiar with arm. (This is so true that they have their own
>>> reimplementation of the parser.) I think the dom0less separation / code
>>> movement is better done by us in the arm community because we know the
>>> code far better.
>>
>> I think we need both the arm and hyperlaunch community to work together (see
>> more below).
>>
>>>
>>> So I think Luca's suggestion above is in the right direction. I would
>>> follow Luca's suggestion with only one difference: I would keep
>>> prepare_dtb_domU in the arm code, together with make_gicv*_domU_node and
>>> make_vpl011_uart_node. I would move the rest to common.
>>
>> Luca's pointed out that some function (such as construct_domU) would contain
>> reference to Arm specific code. So with your proposal, I am under the
>> impression that we would move code that would then end up to be moved again in
>> a few months time. So it is defeating your goal (even though the movement will
>> hopefully be smaller).
> 
> I was assuming that e.g. construct_domU would reference ARM code, but
> the ARM code would live under arch/arm. So yes construct_domU would need
> some refactoring in the future to make the call generic instead of
> arm-specific, but wouldn't require significant additional code movement.

This is not really great. We could end up to have an extension of Arm in 
common for multiple release (the timeline for hyperlaunch is known). If 
you want to move the code now, then it would be preferable that we 
abstract the calls (e.g. arch_construct_domU()) at least have a sensible 
interface.

>  >> As I wrote above, I don't think the Arm community alone is in the 
position to
>> decide what should be in common and what should be in arch specific. We need
>> the hyperlaunch community to agree on their approach so we can know which
>> split makes sense. This is similar to the on-going MMU split to cater the MPU.
>> We looked the MPU code to decide of the best split.
>>
>> A potential approach would be to look at the RISC-V implementation of dom0less
>> and see the common parts. But then we are going in the the scope creep you
>> mention earlier.
> 
> I didn't do a proper investigation and I didn't look at the RISC-V or
> hyperlaunch code in details. From my discussions with both groups, here
> is my understanding of arm-specific things we currently have:
> 
> - 1:1 memory mapping / static memory / static heap because they are
>    currently unimplemented on other arches

But they might. So this is the sort of feature that would want to be 
implemented in common.

> - most domU device tree building because most of virtual devices are
>    different (timer, interrupt controller, uart, etc)

Make sense for this one

> - the equivalent for dom0: the gic/timer device tree generated nodes

and this one.

> - the blacklist at the beginning of handle_node

Hmmm... I would expect this to be useful at least for RISC-V as surely 
they want to hide some device. Maybe this could be abstract.

> - for hyperlaunch, we need to support "module-index" as a way to get the
>    physical address of a module
> - reserved_memory doesn't exist on x86

Are you referring to the variable? If so, the concept of reserved region 
would likely exists for other architecture. So this is a feature that 
would need to be abstracted so it can be re-used.

> - a couple of dom0less device tree properties are arm-specific, such as
>    "sve" and "vpl011"
> 
> This is me hand-waiving, so it might not be useful.
> 
> 
>> So overall, I feel that Lucas' approach is better until Hyperlaunch gain
>> momentum.
> 
> I am OK with Luca's original approach. I just wanted to open the
> discussion in case there is a better way.

I don't particular mind moving the code to common. But it needs to be 
done correctly (i.e. not common/<foo>.c be a simple extension of Arm). 
We also need to agree on a name for the file/directory (and most likely 
of the feature) to avoid another renaming.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Wed Oct 04 17:47:53 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 04 Oct 2023 17:47:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612723.952784 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qo5yN-0000xG-N3; Wed, 04 Oct 2023 17:47:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612723.952784; Wed, 04 Oct 2023 17:47: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 1qo5yN-0000x9-KQ; Wed, 04 Oct 2023 17:47:47 +0000
Received: by outflank-mailman (input) for mailman id 612723;
 Wed, 04 Oct 2023 17:47: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 1qo5yM-0000x3-B8
 for xen-devel@lists.xenproject.org; Wed, 04 Oct 2023 17:47: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 1qo5yJ-0001ul-Fi; Wed, 04 Oct 2023 17:47:43 +0000
Received: from [15.248.2.150] (helo=[10.24.67.38])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qo5yJ-00040J-A1; Wed, 04 Oct 2023 17:47: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=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=7wiNPBCydHHcLigNxTgO0bN6eU8C5J6hjNzjSRtLATo=; b=QhWKaVrOcVtyVw3UgnCgDihix0
	pQxVRaryv6f4jhmUnHruaZyelcC9mrY9wLKTgPTpalOqDQzqGgs8sjX2a4ukDz7LEkEpAZZX2W/1t
	Hu4hftwjyKfX2P/+og7HhLpNJhy6+6n2CpwX2L3vOF56sRyu2sE7/hUAzt8Eiw/UvfIU=;
Message-ID: <f8242725-7ee0-4fca-a608-d234f8f3b564@xen.org>
Date: Wed, 4 Oct 2023 18:47:41 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: Issue with shared information page on Xen/ARM 4.17
Content-Language: en-GB
To: =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>
Cc: Elliott Mitchell <ehem+xen@m5p.com>, xen-devel@lists.xenproject.org,
 Stefano Stabellini <sstabellini@kernel.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>
References: <ZRY7Ls3p6M6pakMq@mattapan.m5p.com>
 <ZRvQNKyYpLDVTs0i@MacBookPdeRoger> <ZRxpC7ukhiYvzz5m@mattapan.m5p.com>
 <ZR0erl_OSkNgIQjx@MacBookPdeRoger>
 <c0b67401-dfe5-475f-8640-b66ac32a80fb@xen.org>
 <ZR1gM19i6-vBaXh7@MacBookPdeRoger>
 <b00500ae-76b1-441c-8154-bcdd897734dc@xen.org>
 <ZR1rBP_49Y2V8VF6@MacBookPdeRoger>
 <fe94dcd2-4429-48df-8ebd-59563d43796a@xen.org>
 <ZR18dlMAbCwEOeH4@MacBookPdeRoger>
From: Julien Grall <julien@xen.org>
In-Reply-To: <ZR18dlMAbCwEOeH4@MacBookPdeRoger>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

Hi,

On 04/10/2023 15:53, Roger Pau Monné wrote:
> On Wed, Oct 04, 2023 at 03:06:14PM +0100, Julien Grall wrote:
>>>>>> Neither of the two behaviors help the users. In fact, I think they only make
>>>>>> the experience worse because you don't know when the issue will happen.
>>>>>>
>>>>>> AFAICT, there is no way for an HVM guestto know which GFN was inuse. So in
>>>>>> all the cases, I can't think of a way for the OS to workaround properly
>>>>>> buggy firmware. Therefore, returning -EBUSY is the safest we can do for our
>>>>>> users and I don't view it as a ABI change (someone rely on the previous
>>>>>> behavior is bound to failure).
>>>>>
>>>>> I fully agree the current behavior might not be the best one, but I do
>>>>> consider this part of the ABI, specially as booting guests using edk2
>>>>> has now stopped working after this change.
>>>>
>>>> Right. If we remove the check, you may be able to boot a guest. But are we
>>>> sure that such guest would run safely?
>>>
>>> If the guest wants the hypervisor to enforce such behavior, let it
>>> use the new hypercall to explicitly request the shared_info page to
>>> not be mapped anywhere else.
>>
>> TBH, I am not convinced the new hypercall is going to help. Let say we
>> decide to modify FreeBSD/Linux to use it, The old EDK2 firmware would still
>> be buggy and this would prevent boot. So we are back the same problem...
>>
>> We could also say we don't support older firmware. But that's not very
>> different from leaving the hypercall as-is and fix EDK2
> 
> We could at least print a warning message that the firmware still had
> the shared_info page mapped, and that the system might not work as
> expected.

Are you suggesting to also fallback on the older hypercall?

> 
>>>
>>> But if you don't trust the bootloader, how do you know it hasn't poked
>>> holes elsewhere in the RAM regions?
>>
>> We don't know. But how do you know the bootloader will not want to continue
>> using the vCPU shared page?
> 
> I don't think it's feasible for two entities to concurrently use the
> shared_info page.
> 
>> For instance, the public headers doesn't seem to mention that the page can
>> only mapped once and it would unmap the previous area. In fact, for Arm,
>> until that commit shared page could be mapped N times... So technically even
>> if we remove the page, the commit already made an ABI change. Yes it is now
>> more inline with x86 but this doesn't this is still an ABI change. I would
>> be surprised if you say we should not have done that because (in particular
>> if you have XSA-379 in mind).
> 
> So we agree at least that there's an ABI change :).
> 
> It's different from 379 because the shared_info page is never freed
> for the lifetime of the domain, hence there's no risk of leak in this
> specific case.  I can see how preventing multiple mappings can be a
> safeguard for possible issues similar to 379.
> 
> Isn't it possible to map a grant at multiple gfns however?

There can be multiple mapping for the grant frame. But there can be 
*only* one mapping for the grant *table* frame.

> 
>>>
>>> Even if the shared_info page has been unmapped, can you be sure the
>>> bootloader has put a RAM page back in that gfn?
>>
>> We can't. But the same goes with the bootloader reserving the region...
>>
>>>
>>> I understand this ABI change is done to avoid bugs, but at the cost of
>>> diverging from x86, and breaking existing firmwares which might not be
>>> buggy.
>> As I pointed out above, the exact behavior of the hypercall is not fully
>> documented and the behavior has changed with some XSAs. So this is no
>> surprise if Arm and x86 behaved differently (even before that commit).
>>
>> There are plenty of behavior I considered wrong in the way x86 update the
>> P2M and I would be concerned if we don't give any leeway for the
>> architectures to tighten the update. BTW some checks have evolved over the
>> time during security event (XSA-378 for example).
> 
> ABI changes due to security issues are unavoidable.
> 
>> This is not very different here. For Arm we decided to not follow a behavior
>> that I consider incorrect and potentially more harmful than trying to
>> support bootloader not removing the shared page.
> 
> I think this is not very friendly to users, specially if edk2 wasn't
> checked.

This was forgotten because it is not yet common to use EDK2 on Xen on 
Arm (the proof is it took one year to find the obvious bug). I agree 
this is not user friendly, but it is impossible to check all the single 
projects. I will usually only look at the one that I know are used on 
Arm and/or someone remind me on the ML.

> I understand the situation is different on Arm vs x86, so if
> edk2 is not supported on arm I guess it doesn't matter much whether
> it's broken.  It would be a much worse issue on x86 where edk2 is
> supported.

AFAIK, we have CI for x86 on EDK2 but we don't on Arm.

> 
>> If we want to handle such firmware, I think it would be better if we provide
>> an hypercall that would return the GFN where it is currently mapped.
> 
> Sure, but such hypercall would be racy, as by the time the gfn is
> returned the value could be stale.  Adding a replacing and non
> replacing XENMEM_add_to_physmap variations would IMO be better.
> 
> Anyway, I don't maintain this, so it's up to you.

Bertrand/Stefano, any opinions?

> 
>>>
>>>> Also, it is not really argument, but this is not the only broken part in
>>>> EDK2 for Xen Arm guests. The other one I know is EDS makes assumption how
>>>> some Device-Tree nodes and this will break on newer Xen.
>>>>
>>>> So overall, it feels to me that EDK2 is not entirely ready to be used in
>>>> production for Xen on Arm guests.
>>>
>>> I really have no insight on this.  What are the supported way of booting
>>> guests on Arm?  (SUPPORT.md doesn't seem to list any firmware for Arm
>>> guests AFAICT).
>>
>> Some bootloaders (e.g. U-boot/EDK2) have support to be used as a fimware for
>> Xen on Arm guests. But they are not supported officially.
>>
>> Most of the setup seems to specify the kernel directly in the XL
>> configuration. We probably ought to add support for EDK2/U-boot.
> 
> I had no idea about that, I do think some kind of firmware is required
> or else OSes different than Linux can't be supported unless they
> implement the Linux entry point.

Indeed. But -ENOTIME and so far no-one else shown any interest :).

> 
> Is the entry point / CPU state for arm guests documented somewhere?

Yes. The protocol is documented in 
https://docs.kernel.org/arch/arm64/booting.html.

> 
> I wonder whether Elliot could use that for FreeBSD until the situation
> with edk2 is stable.

Unfortunately, the situation is unlikely to change if no one puts any 
effort to fix it and add testing.

While I am on the reviewer list for EDK2, I don't have the bandwith to 
rewiew, let alone working on it. In fact, I have been looking for 
someone to replace me as the reviewer for EDK2 in the past few months. 
The role is still open if someone has any interest and more time to 
allocate.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Wed Oct 04 18:08:21 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 04 Oct 2023 18:08:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612731.952794 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qo6I7-0005dT-6I; Wed, 04 Oct 2023 18:08:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612731.952794; Wed, 04 Oct 2023 18:08: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 1qo6I7-0005dM-3F; Wed, 04 Oct 2023 18:08:11 +0000
Received: by outflank-mailman (input) for mailman id 612731;
 Wed, 04 Oct 2023 18:08: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=HSqs=FS=amd.com=Stewart.Hildebrand@srs-se1.protection.inumbo.net>)
 id 1qo6I5-0005dG-Hh
 for xen-devel@lists.xenproject.org; Wed, 04 Oct 2023 18:08:09 +0000
Received: from NAM10-DM6-obe.outbound.protection.outlook.com
 (mail-dm6nam10on2061b.outbound.protection.outlook.com
 [2a01:111:f400:7e88::61b])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id f769eee0-62e0-11ee-9b0d-b553b5be7939;
 Wed, 04 Oct 2023 20:08:06 +0200 (CEST)
Received: from CY5PR17CA0036.namprd17.prod.outlook.com (2603:10b6:930:12::21)
 by MW6PR12MB9018.namprd12.prod.outlook.com (2603:10b6:303:241::6)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.37; Wed, 4 Oct
 2023 18:08:03 +0000
Received: from CY4PEPF0000E9DA.namprd05.prod.outlook.com
 (2603:10b6:930:12:cafe::3f) by CY5PR17CA0036.outlook.office365.com
 (2603:10b6:930:12::21) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.26 via Frontend
 Transport; Wed, 4 Oct 2023 18:08:03 +0000
Received: from SATLEXMB03.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.6838.14 via Frontend Transport; Wed, 4 Oct 2023 18:08:01 +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, 4 Oct
 2023 13:08:00 -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, 4 Oct
 2023 13:08:00 -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, 4 Oct 2023 13:07: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: f769eee0-62e0-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=DXT3wynQHnCUdWwQgJh69eP9VFU3/TBJ4XCVgsEkv1j042KGqgK+ybtakkjHj7T/eY54xvpJgRzPR0rbpSmHgnufXuRCDBXAgJdfSH+m91m3OI/fn9cDIhA+e5jGtAIIDdChZXoD8drfcdNj3KSzLAV0Atn3A3yrC/gnEDmnOpyk0kZ9xWyB8zfkwB2lvJu5VTQcqagaeywp4xi0eQVkK5a4UqdzqngK692hnWbyEmJ6J3Qx+45V/x+dX1Ou/2KC4x0HCRKhnXR4iEfcqw9r7CrobIjGz3k2JAfJykDWU0uS0sP+fDrNyNVddeymGE4h1inpkwrJpAOul1Op7+x8qw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=CoGLjzHo3oDBHjI78DIiWEFQWIppBzzWA6UMUCz/GH4=;
 b=m5WV/dGJZx8Sje9pyPjz2E+hZiCwEViM8VpJFdwmX5aUVSl6LeLplYh3OMBPYLPphl5Nlc0JhB84xV4o3VzGG2suXRvnW5MAzzBtrKlZFs6UHzw140NU/GkyoU9i1KO9o+R3BWRWqW3nXXycz2U6FET5kacq0pebR9JLdJ7XjxTbHvrnS1FgdSbapNvrxUtH2T9cVIiIVOsKOsLZnR6NhfVRalXG7ja2Pf/expEVjVqmrLJuwuwIWxcS3ur8fG29Yw5dgDqbRZ5NNoDjB1ULR7/1dCEimTm/OMOSgdKtKM6V8dj7A1tUzXvuLW8cenARIA9Goe0Vr6W68g844zc1YQ==
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=CoGLjzHo3oDBHjI78DIiWEFQWIppBzzWA6UMUCz/GH4=;
 b=uJOP+p+Tc7QEiKMoCURMpcLEJp6z4Q/yRPkU/Ywpect40jWI1DZq1eFIvluJLDYzVjhLlNFs0INt7NUmZLGT68wx5isExnYfQc+hRFwkZxvjOpz9AhEgMqNcHZM/0f1kRPNuRhq+jza4TQQSy+Vx9aqNlDg4odNgn4Ud6ketBs4=
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: <f424263f-592d-f232-8d49-be84416db3b7@amd.com>
Date: Wed, 4 Oct 2023 14:07:53 -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 1/3] xen/arm: pci: introduce PCI_PASSTHROUGH Kconfig
 option
Content-Language: en-US
To: Julien Grall <julien@xen.org>, <xen-devel@lists.xenproject.org>
CC: Rahul Singh <rahul.singh@arm.com>, Stefano Stabellini
	<sstabellini@kernel.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>, Oleksandr Tyshchenko
	<oleksandr_tyshchenko@epam.com>, Artem Mygaiev <artem_mygaiev@epam.com>,
	Stefano Stabellini <stefano.stabellini@amd.com>
References: <20230707014754.51333-1-stewart.hildebrand@amd.com>
 <20230707014754.51333-2-stewart.hildebrand@amd.com>
 <041323d2-9114-328f-40c6-f5fed60892a5@xen.org>
 <1a8d7024-f881-a3f4-c575-240fb393555f@amd.com>
 <2053098f-5311-89ec-294a-aa731f2b01e1@xen.org>
From: Stewart Hildebrand <stewart.hildebrand@amd.com>
In-Reply-To: <2053098f-5311-89ec-294a-aa731f2b01e1@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: CY4PEPF0000E9DA:EE_|MW6PR12MB9018:EE_
X-MS-Office365-Filtering-Correlation-Id: f0352d51-9c2e-4f7c-6bee-08dbc504d9c8
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	VvqXm5jBdfIPLtYnmFzTT2Nnf9vp1sXTum2iW5oQkpdiovM+yE6rHztVZTdlFuqvPZrGN3wsuDYW7BVxPehd6DhHbj5MMv5iRMQKVY6FLMLADMZZCRo+DMcoJ7w7X6lAtnxP6a5SpD+xpp2bM1sTckOKcwBOPQkPq3XfnD2DHtJEYkI38WvsO4LXSJVdhJHHO324HqypEm1yNcdUUVN/lR9vKbLkJ1KKM7cJimaqrtE9Y5WTW/lLzLf3ognuN5MF/eMhu7eSrsss2bTz/FIuFQWYcSPnIgaHOf0D7zUAfl/WLYRWemgU1HoxqBn3cLKWaEgbJbOCU/jV6+BBm64IhD8AT89SwwbdSNIGpK3xbIP8Df9bdn5ObDh2Nj+srJj3nfQVeGDcFybgljYW7/+VJhaUOF0ou+dU/lBXSW/YKGllDgDUSL1nUt1TS4CazBf4ZM6lydWjtBf74MDgvRd/zR9fsfUv+ufdm0uAhl9+BIGNhPm7LsgBYI50kg9poGcflbONWbVbDLM48JYRyKuwyRxpk7kkGhVEbA3jXTxbY+I5EC5UxqCcpM2AL2znp8BPAOIbLsuWr6RO8c5fqcq96pyeEboyoJv44pWXqENK9PEedrCkxrHwlL3VBQN5thLTeMY/pScA/7xHADKQlVM+U8gKR6DIVMaag4v+boR9C9HYRZhaKPb39RpIVnHgspd/sCVjDifY4bR9Kr1kjMzXnC0wtyKJNzIJWre37A4KHQ7fCUZ9VAlAf5EbiIpkSbwAqNwtKxT3VlQwTlsb5Ei08jcnWd3+Ogv1hak6QXcUo3k=
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)(230922051799003)(82310400011)(1800799009)(451199024)(64100799003)(186009)(46966006)(40470700004)(36840700001)(31686004)(44832011)(5660300002)(8676002)(2906002)(4326008)(8936002)(41300700001)(70206006)(70586007)(2616005)(316002)(16576012)(40460700003)(54906003)(110136005)(36860700001)(40480700001)(26005)(336012)(426003)(6666004)(36756003)(53546011)(356005)(81166007)(82740400003)(83380400001)(47076005)(31696002)(86362001)(478600001)(36900700001)(43740500002);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Oct 2023 18:08:01.4576
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: f0352d51-9c2e-4f7c-6bee-08dbc504d9c8
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:
	CY4PEPF0000E9DA.namprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW6PR12MB9018

On 7/20/23 05:20, Julien Grall wrote:
> Hi,
> 
> On 18/07/2023 18:35, Stewart Hildebrand wrote:
>> On 7/13/23 14:40, Julien Grall wrote:
>>> Hi Stewart,
>>>
>>> On 07/07/2023 02:47, Stewart Hildebrand wrote:
>>>> From: Rahul Singh <rahul.singh@arm.com>
>>>>
>>>> Setting CONFIG_PCI_PASSTHROUGH=y will enable PCI passthrough on ARM, even though
>>>> the feature is not yet complete in the current upstream codebase. The purpose of
>>>> this is to make it easier to enable the necessary configs (HAS_PCI, HAS_VPCI) for
>>>> testing and development of PCI passthrough on ARM.
>>>>
>>>> Since PCI passthrough on ARM is still work in progress at this time, make it
>>>> depend on EXPERT.
>>>
>>> While preparing the patch for committing, I noticed that HAS_PASSTHROUGH
>>> will now allow the user to select one of the IOMMU quarantine options.
>>>
>>> There are three of them right now:
>>>    1. none
>>>    2. basic (i.e. faulting)
>>>    3. scratch page
>>>
>>> The latter is unlikely to work on Arm because we don't setup the scratch
>>> page. AFAIU, for that, we would need to implement the callback
>>> quarantine_init().
>>>
>>> I would expect 1 and 2 work. That said, I think 1. would behave like 2.
>>> because on Arm the device should not be automatically re-assigned to
>>> dom0. I know this is correct for platform device, but will it be valid
>>> for PCI as well?
>>
>> In a system with dom0 where the guest is created from the xl toolstack, we rely on "xl pci-assignable-add". Upon domain destruction, the device automatically gets assigned to domIO.
> 
> Ok. To clarify, does this mean any DMA will fault, the same as for
> platform device?

Yes, when the PCI device is assigned to domIO, any DMA from the device will produce a SMMU fault. The value of the quarantine= option doesn't change this behavior.

>> However, there's nothing preventing a user from attempting to invoke "xl pci-assignable-remove", which should assign the device back to dom0, but it is not automatic.
> 
> I don't think we want to fully prevent a user to re-assign a device to
> dom0. But we at least want to avoid re-assigning the device to dom0 by
> default. After that a user can reset the device before it gets
> re-assigned to dom0.
> 
> Cheers,
> 
> -- 
> Julien Grall


From xen-devel-bounces@lists.xenproject.org Wed Oct 04 18:14:44 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 04 Oct 2023 18:14:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612739.952803 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qo6OO-0007yj-1y; Wed, 04 Oct 2023 18:14:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612739.952803; Wed, 04 Oct 2023 18:14: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 1qo6ON-0007yc-VJ; Wed, 04 Oct 2023 18:14:39 +0000
Received: by outflank-mailman (input) for mailman id 612739;
 Wed, 04 Oct 2023 18:14: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 1qo6OM-0007yS-LY; Wed, 04 Oct 2023 18:14: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 1qo6OM-0002hO-Fe; Wed, 04 Oct 2023 18:14: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 1qo6OM-0000Qw-0J; Wed, 04 Oct 2023 18:14:38 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qo6OL-0003a6-W6; Wed, 04 Oct 2023 18:14: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=k7UGRqZoCqYqcOFb2QyLzj1/5VyidAWYBm+4qoxSFcE=; b=3qqRGAiyteZCw+sYcqo+vvNJkJ
	9Zq724Cq79OlvHHyqA7eVWT0JqSI6mXoat8xVQuTJDI3lmzYIQuFGDjy19fQ/w3zQy+jV9099A+LC
	3r86hf+tS0GWCsaBGZXNz7l7uQsEcEyb+ONIaS6bjbNUpTa4xTQSYxeHB6Wg3nKF45mQ=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183263-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 183263: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=d073a545119140070c83e4b2b249bf0448c6f89e
X-Osstest-Versions-That:
    ovmf=1497c4b074946f3ad9d46ddbb6d655c951e23ae8
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 04 Oct 2023 18:14:37 +0000

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

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 d073a545119140070c83e4b2b249bf0448c6f89e
baseline version:
 ovmf                 1497c4b074946f3ad9d46ddbb6d655c951e23ae8

Last test of basis   183250  2023-10-03 12:10:44 Z    1 days
Testing same since   183263  2023-10-04 16:12:23 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Ard Biesheuvel <ardb@kernel.org>
  Leif Lindholm <quic_llindhol@quicinc.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
   1497c4b074..d073a54511  d073a545119140070c83e4b2b249bf0448c6f89e -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Wed Oct 04 18:48:23 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 04 Oct 2023 18:48:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612747.952814 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qo6um-0006XU-LN; Wed, 04 Oct 2023 18:48:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612747.952814; Wed, 04 Oct 2023 18:48: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 1qo6um-0006XN-Hl; Wed, 04 Oct 2023 18:48:08 +0000
Received: by outflank-mailman (input) for mailman id 612747;
 Wed, 04 Oct 2023 18:48: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=+RGk=FS=kernel.org=kuba@srs-se1.protection.inumbo.net>)
 id 1qo6ul-0006XD-Kk
 for xen-devel@lists.xenproject.org; Wed, 04 Oct 2023 18:48:07 +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 8c966a3a-62e6-11ee-98d3-6d05b1d4d9a1;
 Wed, 04 Oct 2023 20:48:05 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by sin.source.kernel.org (Postfix) with ESMTP id B1E8ECE1E5B;
 Wed,  4 Oct 2023 18:48:00 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id A765AC433C7;
 Wed,  4 Oct 2023 18:47: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: 8c966a3a-62e6-11ee-98d3-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696445280;
	bh=iOe3yiBqvNEzyZE58IbaBP55/gzFuPI3U1iKp4mINDQ=;
	h=Date:From:To:Cc:Subject:In-Reply-To:References:From;
	b=NGOLugBfED2lS0FBXQFyKEL2ddul/Oqd9Nh90VHghzHJ/sSYTuOAeXIcSQ7Vx32UD
	 oJisuVjQdO5S8CbdNIvwBCO7E4RLjWlbUeNJAHemewZmRNFh96kHuhjbNlRsiZyeJm
	 QOaaz5n/1oBJ6KiYbZ//G521IxNREIT2U+ArAdCi/boRRfJIAh3ijsfuCkS0WEi1Ht
	 cTuEOROzfLRXuIEm1oC7plr3cWAzeqOcEJHCU4Tx3+eW1SxU1VPqv2/PBbaPhito1E
	 1WbxiIOJ08/Dn1Sbi/9x2qSPWpan49G6P0vKwpc02GF+9aYMDZETk72fp9t8CcJ9xE
	 xzXer6Q/TP7mg==
Date: Wed, 4 Oct 2023 11:47:58 -0700
From: Jakub Kicinski <kuba@kernel.org>
To: David Kahurani <k.kahurani@gmail.com>
Cc: xen-devel@lists.xenproject.org, netdev@vger.kernel.org,
 wei.liu@kernel.org, paul@xen.org
Subject: Re: [PATCH] net/xen-netback: Break build if netback slots >
 max_skbs + 1
Message-ID: <20231004114758.44944e5d@kernel.org>
In-Reply-To: <20230927082918.197030-1-k.kahurani@gmail.com>
References: <20230927082918.197030-1-k.kahurani@gmail.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit

On Wed, 27 Sep 2023 11:29:18 +0300 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.

MAX_SKB_FRAGS can now be set via Kconfig, this allows us to create
larger super-packets. Can XEN_NETBK_LEGACY_SLOTS_MAX be made relative
to MAX_SKB_FRAGS, or does the number have to match between guest and
host? Option #2 would be to add a Kconfig dependency for the driver
to make sure high MAX_SKB_FRAGS is incompatible with it.

Breaking the build will make build bots very sad.

We'll also need a Fixes tag, I presume this is a fix?
-- 
pw-bot: cr


From xen-devel-bounces@lists.xenproject.org Wed Oct 04 21:14:40 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 04 Oct 2023 21:14:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612755.952823 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qo9CM-0008GB-7n; Wed, 04 Oct 2023 21:14:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612755.952823; Wed, 04 Oct 2023 21: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 1qo9CM-0008G4-5H; Wed, 04 Oct 2023 21:14:26 +0000
Received: by outflank-mailman (input) for mailman id 612755;
 Wed, 04 Oct 2023 21: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=9PTE=FS=m5p.com=ehem@srs-se1.protection.inumbo.net>)
 id 1qo9CL-0008Fy-LU
 for xen-devel@lists.xenproject.org; Wed, 04 Oct 2023 21: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 fba114a7-62fa-11ee-9b0d-b553b5be7939;
 Wed, 04 Oct 2023 23:14:21 +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 394LDk75001493
 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NO);
 Wed, 4 Oct 2023 17:13:52 -0400 (EDT) (envelope-from ehem@m5p.com)
Received: (from ehem@localhost)
 by m5p.com (8.17.1/8.15.2/Submit) id 394LDj3m001492;
 Wed, 4 Oct 2023 14:13:45 -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: fba114a7-62fa-11ee-9b0d-b553b5be7939
Date: Wed, 4 Oct 2023 14:13:45 -0700
From: Elliott Mitchell <ehem+xen@m5p.com>
To: Julien Grall <julien@xen.org>
Cc: Roger Pau =?iso-8859-1?Q?Monn=E9?= <roger.pau@citrix.com>,
        xen-devel@lists.xenproject.org,
        Stefano Stabellini <sstabellini@kernel.org>,
        Bertrand Marquis <bertrand.marquis@arm.com>,
        Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
        Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>
Subject: Re: Issue with shared information page on Xen/ARM 4.17
Message-ID: <ZR3VidifMWdjDQcv@mattapan.m5p.com>
References: <ZRvQNKyYpLDVTs0i@MacBookPdeRoger>
 <ZRxpC7ukhiYvzz5m@mattapan.m5p.com>
 <ZR0erl_OSkNgIQjx@MacBookPdeRoger>
 <c0b67401-dfe5-475f-8640-b66ac32a80fb@xen.org>
 <ZR1gM19i6-vBaXh7@MacBookPdeRoger>
 <b00500ae-76b1-441c-8154-bcdd897734dc@xen.org>
 <ZR1rBP_49Y2V8VF6@MacBookPdeRoger>
 <fe94dcd2-4429-48df-8ebd-59563d43796a@xen.org>
 <ZR18dlMAbCwEOeH4@MacBookPdeRoger>
 <f8242725-7ee0-4fca-a608-d234f8f3b564@xen.org>
MIME-Version: 1.0
Content-Type: text/plain; charset=iso-8859-1
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <f8242725-7ee0-4fca-a608-d234f8f3b564@xen.org>
X-Spam-Status: No, score=0.0 required=10.0 tests=KHOP_HELO_FCRDNS
	autolearn=unavailable autolearn_force=no version=4.0.0
X-Spam-Checker-Version: SpamAssassin 4.0.0 (2022-12-14) on mattapan.m5p.com

Heavily trimming earlier messages.  Also doing one response to cover
several items.  Hopefully I'm not missing something which needs a
response.


On Wed, Oct 04, 2023 at 03:39:16PM +0200, Roger Pau Monn wrote:
> On Wed, Oct 04, 2023 at 02:03:43PM +0100, Julien Grall wrote:
> > 
> > On 04/10/2023 13:53, Roger Pau Monn wrote:
> > > 
> > > When using UEFI there's RAM that will always be in-use by the
> > > firmware, as runtime services cannot be shut down, and hence the
> > > firmware must already have a way to remove/reserve such region(s) on
> > > the memory map.
> > 
> > Can either you or Elliott confirm if EDK2 reserve the region?
> 
> I will defer to Elliott to check for arm.  I would be quite surprised
> if it doesn't on x86, or else we would get a myriad of bug reports
> about guests randomly crashing when using edk2.

When I had originally looked I thought there was no problem as
`OvmfPkg/XenPlatformPei/Xen.c`:
CalibrateLapicTimer()
	MapSharedInfoPage(SharedInfo)
	...
	UnmapXenPage(SharedInfo)

Later using `find * -type f -print0 | xargs -0 grep -eXENMAPSPACE_shared_info`
`OvmfPkg/XenBusDxe/XenBusDxe.c`:
	XenGetSharedInfoPage()
  // using reserved page because the page is not released when Linux is
  // starting because of the add_to_physmap. QEMU might try to access the
  // page, and fail because it have no right to do so (segv).

Looks like this second case leaks the shared information page.
Originally I thought there was no problem as I'd only found the first
instance.  Appears this second instance is the problem.


> > Also, it is not really argument, but this is not the only broken part in
> > EDK2 for Xen Arm guests. The other one I know is EDS makes assumption how
> > some Device-Tree nodes and this will break on newer Xen.
> > 
> > So overall, it feels to me that EDK2 is not entirely ready to be used in
> > production for Xen on Arm guests.
> 
> I really have no insight on this.  What are the supported way of booting
> guests on Arm?  (SUPPORT.md doesn't seem to list any firmware for Arm
> guests AFAICT).

I don't know about whether their support status, but I'm aware of two
viable ways to boot domains on ARM.  First, PyGRUB does work.  This is a
rather poor way to boot, but I do admit it is functional for Linux.
Second, Tianocore/EDK2.  This is very functional, but seems the above
broke recently.

I hope PvGRUB for ARM becomes available soon, but right now it isn't
available.


On Wed, Oct 04, 2023 at 06:47:41PM +0100, Julien Grall wrote:
> 
> On 04/10/2023 15:53, Roger Pau Monn wrote:
> > On Wed, Oct 04, 2023 at 03:06:14PM +0100, Julien Grall wrote:
> >>
> >> This is not very different here. For Arm we decided to not follow a behavior
> >> that I consider incorrect and potentially more harmful than trying to
> >> support bootloader not removing the shared page.
> > 
> > I think this is not very friendly to users, specially if edk2 wasn't
> > checked.
> 
> This was forgotten because it is not yet common to use EDK2 on Xen on 
> Arm (the proof is it took one year to find the obvious bug). I agree 
> this is not user friendly, but it is impossible to check all the single 
> projects. I will usually only look at the one that I know are used on 
> Arm and/or someone remind me on the ML.

By traditional standards, 1 year is quite fast.  Figure 3-6 months for
distributions/vendors to pick up the latest, then another 3-6 months
while people are experimenting.

This may point to Xen/ARM not being heavily deployed.  Could also be most
uses are doing direct kernel boot, or using PyGRUB.

Since it is the only bootloader for non-Linux and only bootloader which
doesn't requite execution in domain 0, Tianocore/EDK2 seems worth
monitoring.


> > I understand the situation is different on Arm vs x86, so if
> > edk2 is not supported on arm I guess it doesn't matter much whether
> > it's broken.  It would be a much worse issue on x86 where edk2 is
> > supported.
> 
> AFAIK, we have CI for x86 on EDK2 but we don't on Arm.

What is the current status of this?  I'm unsure whether it was an extra
patch done by Debian, but "edk2-stable202211"/fff6d81270 doesn't work
with Xen/Qemu.

I've also never observed 'kernel = "OVMF.fd"' generating any activity
with a PVH domain on x86.  Good news is Xen/x86 now accepts "OVMF.fd" as
a valid kernel, so progress has been made.


-- 
(\___(\___(\______          --=> 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 Oct 04 21:37:15 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 04 Oct 2023 21:37:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612763.952834 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qo9YI-0003qW-2e; Wed, 04 Oct 2023 21:37:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612763.952834; Wed, 04 Oct 2023 21: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 1qo9YH-0003qP-UC; Wed, 04 Oct 2023 21:37:05 +0000
Received: by outflank-mailman (input) for mailman id 612763;
 Wed, 04 Oct 2023 21:37: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=/8gg=FS=tklengyel.com=tamas@srs-se1.protection.inumbo.net>)
 id 1qo9YH-0003pS-9p
 for xen-devel@lists.xenproject.org; Wed, 04 Oct 2023 21:37:05 +0000
Received: from sender4-op-o12.zoho.com (sender4-op-o12.zoho.com
 [136.143.188.12]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 26ff72d8-62fe-11ee-9b0d-b553b5be7939;
 Wed, 04 Oct 2023 23:37:03 +0200 (CEST)
Received: from mail-yb1-f172.google.com (mail-yb1-f172.google.com
 [209.85.219.172]) by mx.zohomail.com
 with SMTPS id 1696455417336731.1484474410069;
 Wed, 4 Oct 2023 14:36:57 -0700 (PDT)
Received: by mail-yb1-f172.google.com with SMTP id
 3f1490d57ef6-d89491dab33so381720276.0
 for <xen-devel@lists.xenproject.org>; Wed, 04 Oct 2023 14:36: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: 26ff72d8-62fe-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; t=1696455419; cv=none; 
	d=zohomail.com; s=zohoarc; 
	b=aTetDs+1qcMNUksMCFO0rkk6ob3ac1k+EydauUDXAbeO5zEPEXQ6/kbFYAizWjD89wgOb03zj/4O/NmQL+uEZy0fg/1EmdWh4KgmQNAomWqN5uNzXWE2iAlxxcjo1Raai4Vhb+eROpxpH1nlAtf7GF3oJraNRcrOpPdWZgYcJIM=
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; 
	t=1696455419; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:MIME-Version:Message-ID:References:Subject:Subject:To:To:Message-Id:Reply-To; 
	bh=NlBMhfH5dOHpz+PXev7wAwSA56dLJy6EolPtUl7sUdQ=; 
	b=jSi7NrF+vKtj1CmJsc+P/ewS8UYqFjz49GLkN5+q9uyCoVX0IgNTYpy7nIDfyqiLt+VWu4o+VvP74Uzik5U76Xa7u25ZH6IpDkVfhIg2D7QALrIp0fRZpATX29jXsC1Oo80xYrMvRgDa23Wrq8FJDDb02Okie2QyKRtzlqapp/o=
ARC-Authentication-Results: i=1; mx.zohomail.com;
	dkim=pass  header.i=tklengyel.com;
	spf=pass  smtp.mailfrom=tamas@tklengyel.com;
	dmarc=pass header.from=<tamas@tklengyel.com>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; t=1696455419;
	s=zmail; d=tklengyel.com; i=tamas@tklengyel.com;
	h=MIME-Version:References:In-Reply-To:From:From:Date:Date:Message-ID:Subject:Subject:To:To:Cc:Cc:Content-Type:Content-Transfer-Encoding:Message-Id:Reply-To;
	bh=NlBMhfH5dOHpz+PXev7wAwSA56dLJy6EolPtUl7sUdQ=;
	b=L7zmztWHYRg4Tby6EPYnd+6evPljlfenTe3B3IWa7MnvYrnbBLOdGk9w58UTdjNo
	BKAcIQLTuP/I2YLWZ0Ep4nquCFdfRJ83HHeAxLHMVdInj2fFmKvl334dzR4CnEFvQbR
	3541En7x6fFpJ6eGnCgwEjYGUgdb1pJAZpKZuNS4=
X-Gm-Message-State: AOJu0YyNP4GB2GjOxjl4iWjvTIh4tzP08CJgyGbmDUUTOSZFo9y6Qjfv
	l0wNd1Xf1SnJn1Oyd7McCbRz0seBtgI/2RcfyvE=
X-Google-Smtp-Source: AGHT+IEe3sliHsQMA+Uo4i0vFO+npM4TrzBWSFJYeTr6NOrkj0Ikv+C0wMfZa/dm4/g0wxHG3D4xWX/sy7RxC6HnCNI=
X-Received: by 2002:a25:d28e:0:b0:d81:a119:a106 with SMTP id
 j136-20020a25d28e000000b00d81a119a106mr3527788ybg.19.1696455416458; Wed, 04
 Oct 2023 14:36:56 -0700 (PDT)
MIME-Version: 1.0
References: <081ae245-9d47-4cab-ad64-54b33566429c@xen.org> <20231004135331.83736-1-roger.pau@citrix.com>
In-Reply-To: <20231004135331.83736-1-roger.pau@citrix.com>
From: Tamas K Lengyel <tamas@tklengyel.com>
Date: Wed, 4 Oct 2023 17:36:20 -0400
X-Gmail-Original-Message-ID: <CABfawhk-aSqBs3xZ83GPKJQVZTORt4MkUzH63teRp_oJKOXKtA@mail.gmail.com>
Message-ID: <CABfawhk-aSqBs3xZ83GPKJQVZTORt4MkUzH63teRp_oJKOXKtA@mail.gmail.com>
Subject: Re: [PATCH v6 06/10] x86/mem-sharing: copy GADDR based shared guest areas
To: Roger Pau Monne <roger.pau@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>, 
	Wei Liu <wl@xen.org>, Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Wed, Oct 4, 2023 at 9:54=E2=80=AFAM Roger Pau Monne <roger.pau@citrix.co=
m> wrote:
>
> From: Jan Beulich <jbeulich@suse.com>
>
> 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>
> Signed-off-by: Roger Pau Monn=C3=A9 <roger.pau@citrix.com>

Acked-by: Tamas K Lengyel <tamas@tklengyel.com>


From xen-devel-bounces@lists.xenproject.org Wed Oct 04 22:21:30 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 04 Oct 2023 22:21:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612768.952843 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoAF2-0003eS-9V; Wed, 04 Oct 2023 22:21:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612768.952843; Wed, 04 Oct 2023 22:21: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 1qoAF2-0003eL-6s; Wed, 04 Oct 2023 22:21:16 +0000
Received: by outflank-mailman (input) for mailman id 612768;
 Wed, 04 Oct 2023 22:21: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=XhzZ=FS=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qoAF0-0003eF-HL
 for xen-devel@lists.xenproject.org; Wed, 04 Oct 2023 22:21:14 +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 50efee93-6304-11ee-9b0d-b553b5be7939;
 Thu, 05 Oct 2023 00:21:09 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by dfw.source.kernel.org (Postfix) with ESMTP id C4783617CE;
 Wed,  4 Oct 2023 22:21:07 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 46A7CC433C9;
 Wed,  4 Oct 2023 22:21: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: 50efee93-6304-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696458067;
	bh=U5xXavViYKnla+QbvLLaOMCglpZZgu4ujDcPYa0hJ+4=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=Y4goWulYiQTlpj6M2hBC2bc/Gfhzv8/N6BJOjeL9jVHFtNvKYY3dzU9Oo/1fGyPsp
	 t1ppSbWJRONlC3LYAwPAvatYY6zsLa+BGRkcMITTH4QwvL831zVFYFhJvzlQuYqfjZ
	 JbZU9UqoHURTR1AJQE0D3s4yiRm1f51powDCdKMHJs5dq7XN/R+zivhgxvp1I9D/1C
	 AkqgJXKzX7vQMNJ3l9i2Xzw72eG3UM8YxUyzaXjxBuvMUuW0CMp+au7u5LyHVS0QsT
	 /fVYJ39qMjXSkn4JxHp42GDmTeJpUW7MRr2SZjWC/zs4VqZ2IIUM39A5nVKmm5qRgd
	 g/i3kW4h4Sutw==
Date: Wed, 4 Oct 2023 15:21:04 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Elliott Mitchell <ehem+xen@m5p.com>
cc: Julien Grall <julien@xen.org>, 
    =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>, 
    xen-devel@lists.xenproject.org, 
    Stefano Stabellini <sstabellini@kernel.org>, 
    Bertrand Marquis <bertrand.marquis@arm.com>, 
    Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, 
    Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>
Subject: Re: Issue with shared information page on Xen/ARM 4.17
In-Reply-To: <ZR3VidifMWdjDQcv@mattapan.m5p.com>
Message-ID: <alpine.DEB.2.22.394.2310041520200.2348112@ubuntu-linux-20-04-desktop>
References: <ZRvQNKyYpLDVTs0i@MacBookPdeRoger> <ZRxpC7ukhiYvzz5m@mattapan.m5p.com> <ZR0erl_OSkNgIQjx@MacBookPdeRoger> <c0b67401-dfe5-475f-8640-b66ac32a80fb@xen.org> <ZR1gM19i6-vBaXh7@MacBookPdeRoger> <b00500ae-76b1-441c-8154-bcdd897734dc@xen.org>
 <ZR1rBP_49Y2V8VF6@MacBookPdeRoger> <fe94dcd2-4429-48df-8ebd-59563d43796a@xen.org> <ZR18dlMAbCwEOeH4@MacBookPdeRoger> <f8242725-7ee0-4fca-a608-d234f8f3b564@xen.org> <ZR3VidifMWdjDQcv@mattapan.m5p.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="8323329-824023394-1696458067=: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-824023394-1696458067=:2348112
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8BIT

On Wed, 4 Oct 2023, Elliott Mitchell wrote:
> On Wed, Oct 04, 2023 at 03:39:16PM +0200, Roger Pau Monné wrote:
> > On Wed, Oct 04, 2023 at 02:03:43PM +0100, Julien Grall wrote:
> > > 
> > > On 04/10/2023 13:53, Roger Pau Monné wrote:
> > > > 
> > > > When using UEFI there's RAM that will always be in-use by the
> > > > firmware, as runtime services cannot be shut down, and hence the
> > > > firmware must already have a way to remove/reserve such region(s) on
> > > > the memory map.
> > > 
> > > Can either you or Elliott confirm if EDK2 reserve the region?
> > 
> > I will defer to Elliott to check for arm.  I would be quite surprised
> > if it doesn't on x86, or else we would get a myriad of bug reports
> > about guests randomly crashing when using edk2.
> 
> When I had originally looked I thought there was no problem as
> `OvmfPkg/XenPlatformPei/Xen.c`:
> CalibrateLapicTimer()
> 	MapSharedInfoPage(SharedInfo)
> 	...
> 	UnmapXenPage(SharedInfo)
> 
> Later using `find * -type f -print0 | xargs -0 grep -eXENMAPSPACE_shared_info`
> `OvmfPkg/XenBusDxe/XenBusDxe.c`:
> 	XenGetSharedInfoPage()
>   // using reserved page because the page is not released when Linux is
>   // starting because of the add_to_physmap. QEMU might try to access the
>   // page, and fail because it have no right to do so (segv).
> 
> Looks like this second case leaks the shared information page.
> Originally I thought there was no problem as I'd only found the first
> instance.  Appears this second instance is the problem.

I understand this second case is *not* unmapping the SharedInfo page,
but is it reserving it somehow? For instance marking it as reserved in
the EFI memory map?
--8323329-824023394-1696458067=:2348112--


From xen-devel-bounces@lists.xenproject.org Wed Oct 04 22:37:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 04 Oct 2023 22:37:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612773.952854 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoAUs-0006wj-Lr; Wed, 04 Oct 2023 22:37:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612773.952854; Wed, 04 Oct 2023 22:37: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 1qoAUs-0006wc-IG; Wed, 04 Oct 2023 22:37:38 +0000
Received: by outflank-mailman (input) for mailman id 612773;
 Wed, 04 Oct 2023 22:37: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=9PTE=FS=m5p.com=ehem@srs-se1.protection.inumbo.net>)
 id 1qoAUr-0006wW-SW
 for xen-devel@lists.xenproject.org; Wed, 04 Oct 2023 22:37:37 +0000
Received: from mailhost.m5p.com (mailhost.m5p.com [74.104.188.4])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 9d37b5e3-6306-11ee-98d3-6d05b1d4d9a1;
 Thu, 05 Oct 2023 00:37:36 +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 394Mb0AT001768
 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NO);
 Wed, 4 Oct 2023 18:37:06 -0400 (EDT) (envelope-from ehem@m5p.com)
Received: (from ehem@localhost)
 by m5p.com (8.17.1/8.15.2/Submit) id 394Mb03i001767;
 Wed, 4 Oct 2023 15:37: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: 9d37b5e3-6306-11ee-98d3-6d05b1d4d9a1
Date: Wed, 4 Oct 2023 15:37:00 -0700
From: Elliott Mitchell <ehem+xen@m5p.com>
To: Stefano Stabellini <sstabellini@kernel.org>
Cc: Julien Grall <julien@xen.org>,
        Roger Pau =?iso-8859-1?Q?Monn=E9?= <roger.pau@citrix.com>,
        xen-devel@lists.xenproject.org,
        Bertrand Marquis <bertrand.marquis@arm.com>,
        Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
        Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>
Subject: Re: Issue with shared information page on Xen/ARM 4.17
Message-ID: <ZR3pDL6a+mf7TbNB@mattapan.m5p.com>
References: <ZR0erl_OSkNgIQjx@MacBookPdeRoger>
 <c0b67401-dfe5-475f-8640-b66ac32a80fb@xen.org>
 <ZR1gM19i6-vBaXh7@MacBookPdeRoger>
 <b00500ae-76b1-441c-8154-bcdd897734dc@xen.org>
 <ZR1rBP_49Y2V8VF6@MacBookPdeRoger>
 <fe94dcd2-4429-48df-8ebd-59563d43796a@xen.org>
 <ZR18dlMAbCwEOeH4@MacBookPdeRoger>
 <f8242725-7ee0-4fca-a608-d234f8f3b564@xen.org>
 <ZR3VidifMWdjDQcv@mattapan.m5p.com>
 <alpine.DEB.2.22.394.2310041520200.2348112@ubuntu-linux-20-04-desktop>
MIME-Version: 1.0
Content-Type: text/plain; charset=iso-8859-1
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <alpine.DEB.2.22.394.2310041520200.2348112@ubuntu-linux-20-04-desktop>
X-Spam-Status: No, score=0.0 required=10.0 tests=KHOP_HELO_FCRDNS
	autolearn=unavailable autolearn_force=no version=4.0.0
X-Spam-Checker-Version: SpamAssassin 4.0.0 (2022-12-14) on mattapan.m5p.com

On Wed, Oct 04, 2023 at 03:21:04PM -0700, Stefano Stabellini wrote:
> On Wed, 4 Oct 2023, Elliott Mitchell wrote:
> > On Wed, Oct 04, 2023 at 03:39:16PM +0200, Roger Pau Monn wrote:
> > > On Wed, Oct 04, 2023 at 02:03:43PM +0100, Julien Grall wrote:
> > > > 
> > > > On 04/10/2023 13:53, Roger Pau Monn wrote:
> > > > > 
> > > > > When using UEFI there's RAM that will always be in-use by the
> > > > > firmware, as runtime services cannot be shut down, and hence the
> > > > > firmware must already have a way to remove/reserve such region(s) on
> > > > > the memory map.
> > > > 
> > > > Can either you or Elliott confirm if EDK2 reserve the region?
> > > 
> > > I will defer to Elliott to check for arm.  I would be quite surprised
> > > if it doesn't on x86, or else we would get a myriad of bug reports
> > > about guests randomly crashing when using edk2.
> > 
> > When I had originally looked I thought there was no problem as
> > `OvmfPkg/XenPlatformPei/Xen.c`:
> > CalibrateLapicTimer()
> > 	MapSharedInfoPage(SharedInfo)
> > 	...
> > 	UnmapXenPage(SharedInfo)
> > 
> > Later using `find * -type f -print0 | xargs -0 grep -eXENMAPSPACE_shared_info`
> > `OvmfPkg/XenBusDxe/XenBusDxe.c`:
> > 	XenGetSharedInfoPage()
> >   // using reserved page because the page is not released when Linux is
> >   // starting because of the add_to_physmap. QEMU might try to access the
> >   // page, and fail because it have no right to do so (segv).
> > 
> > Looks like this second case leaks the shared information page.
> > Originally I thought there was no problem as I'd only found the first
> > instance.  Appears this second instance is the problem.
> 
> I understand this second case is *not* unmapping the SharedInfo page,
> but is it reserving it somehow? For instance marking it as reserved in
> the EFI memory map?

Notice the "//" comment which I carefully grabbed?

  // using reserved page because the page is not released when Linux is
  // starting because of the add_to_physmap. QEMU might try to access the
  // page, and fail because it have no right to do so (segv).

So the page shouldn't be touched by anyone, but it does end up wasted.
Likely ExitBootServices() should clear the mapping.


-- 
(\___(\___(\______          --=> 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 Oct 04 22:42:10 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 04 Oct 2023 22:42:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612781.952864 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoAZE-0008RH-C6; Wed, 04 Oct 2023 22:42:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612781.952864; Wed, 04 Oct 2023 22: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 1qoAZE-0008RA-7X; Wed, 04 Oct 2023 22:42:08 +0000
Received: by outflank-mailman (input) for mailman id 612781;
 Wed, 04 Oct 2023 22:42: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=XhzZ=FS=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qoAZC-0008R4-Gv
 for xen-devel@lists.xenproject.org; Wed, 04 Oct 2023 22:42:06 +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 3d5e069c-6307-11ee-98d3-6d05b1d4d9a1;
 Thu, 05 Oct 2023 00:42: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 B1B11615F3;
 Wed,  4 Oct 2023 22:42:03 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 35A5AC433C8;
 Wed,  4 Oct 2023 22:42:02 +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: 3d5e069c-6307-11ee-98d3-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696459323;
	bh=WPwsqjsCRb7T5sdzJUcPcrX3eoDkrhciygzO4S0B7XY=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=I2gFvLkxtFhWQjWTN64e7kab5jdbdUDT8X39rT1KVESEhOCZXNEz2JGj/TkuuwnxE
	 sSTddgBAbygM7dqbJtbzBM31xwLsPJubc1ude10x7vwIMjxA/55KIMW61z4WQez3SV
	 DBKoa+Ine9/HHG89QiMg1v9K0apgUc354R6iDHvIYW8JdY9wNzJODtBjhjoD6fbZn/
	 BBLLPC3K/yDtfSzeCrkJE0YqAXTzvYbFvSvbi9BYruYj5AhMFIpe902V08CkdFNn1i
	 ibBx6hissZYe5/WH4Z5B/aoSvY4T51Z57saX3otWV14PaTY8Ne+353WR82qA5N+oVf
	 WhDf5cEGtxVRQ==
Date: Wed, 4 Oct 2023 15:42:00 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Elliott Mitchell <ehem+xen@m5p.com>
cc: Stefano Stabellini <sstabellini@kernel.org>, Julien Grall <julien@xen.org>, 
    =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>, 
    xen-devel@lists.xenproject.org, 
    Bertrand Marquis <bertrand.marquis@arm.com>, 
    Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, 
    Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>
Subject: Re: Issue with shared information page on Xen/ARM 4.17
In-Reply-To: <ZR3pDL6a+mf7TbNB@mattapan.m5p.com>
Message-ID: <alpine.DEB.2.22.394.2310041540350.2348112@ubuntu-linux-20-04-desktop>
References: <ZR0erl_OSkNgIQjx@MacBookPdeRoger> <c0b67401-dfe5-475f-8640-b66ac32a80fb@xen.org> <ZR1gM19i6-vBaXh7@MacBookPdeRoger> <b00500ae-76b1-441c-8154-bcdd897734dc@xen.org> <ZR1rBP_49Y2V8VF6@MacBookPdeRoger> <fe94dcd2-4429-48df-8ebd-59563d43796a@xen.org>
 <ZR18dlMAbCwEOeH4@MacBookPdeRoger> <f8242725-7ee0-4fca-a608-d234f8f3b564@xen.org> <ZR3VidifMWdjDQcv@mattapan.m5p.com> <alpine.DEB.2.22.394.2310041520200.2348112@ubuntu-linux-20-04-desktop> <ZR3pDL6a+mf7TbNB@mattapan.m5p.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="8323329-1195866088-1696459323=: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-1195866088-1696459323=:2348112
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8BIT

On Wed, 4 Oct 2023, Elliott Mitchell wrote:
> On Wed, Oct 04, 2023 at 03:21:04PM -0700, Stefano Stabellini wrote:
> > On Wed, 4 Oct 2023, Elliott Mitchell wrote:
> > > On Wed, Oct 04, 2023 at 03:39:16PM +0200, Roger Pau Monné wrote:
> > > > On Wed, Oct 04, 2023 at 02:03:43PM +0100, Julien Grall wrote:
> > > > > 
> > > > > On 04/10/2023 13:53, Roger Pau Monné wrote:
> > > > > > 
> > > > > > When using UEFI there's RAM that will always be in-use by the
> > > > > > firmware, as runtime services cannot be shut down, and hence the
> > > > > > firmware must already have a way to remove/reserve such region(s) on
> > > > > > the memory map.
> > > > > 
> > > > > Can either you or Elliott confirm if EDK2 reserve the region?
> > > > 
> > > > I will defer to Elliott to check for arm.  I would be quite surprised
> > > > if it doesn't on x86, or else we would get a myriad of bug reports
> > > > about guests randomly crashing when using edk2.
> > > 
> > > When I had originally looked I thought there was no problem as
> > > `OvmfPkg/XenPlatformPei/Xen.c`:
> > > CalibrateLapicTimer()
> > > 	MapSharedInfoPage(SharedInfo)
> > > 	...
> > > 	UnmapXenPage(SharedInfo)
> > > 
> > > Later using `find * -type f -print0 | xargs -0 grep -eXENMAPSPACE_shared_info`
> > > `OvmfPkg/XenBusDxe/XenBusDxe.c`:
> > > 	XenGetSharedInfoPage()
> > >   // using reserved page because the page is not released when Linux is
> > >   // starting because of the add_to_physmap. QEMU might try to access the
> > >   // page, and fail because it have no right to do so (segv).
> > > 
> > > Looks like this second case leaks the shared information page.
> > > Originally I thought there was no problem as I'd only found the first
> > > instance.  Appears this second instance is the problem.
> > 
> > I understand this second case is *not* unmapping the SharedInfo page,
> > but is it reserving it somehow? For instance marking it as reserved in
> > the EFI memory map?
> 
> Notice the "//" comment which I carefully grabbed?
> 
>   // using reserved page because the page is not released when Linux is
>   // starting because of the add_to_physmap. QEMU might try to access the
>   // page, and fail because it have no right to do so (segv).
> 
> So the page shouldn't be touched by anyone, but it does end up wasted.
> Likely ExitBootServices() should clear the mapping.

Sorry to be pedantic but I am really not familiar with EDK2. Does
"reserved page" in this context mean a memory page from a reserved
region marked as reserved in the EFI memory map?
--8323329-1195866088-1696459323=:2348112--


From xen-devel-bounces@lists.xenproject.org Wed Oct 04 22:53:11 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 04 Oct 2023 22:53:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612786.952873 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoAjm-0002UP-B1; Wed, 04 Oct 2023 22:53:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612786.952873; Wed, 04 Oct 2023 22:53: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 1qoAjm-0002UI-8O; Wed, 04 Oct 2023 22:53:02 +0000
Received: by outflank-mailman (input) for mailman id 612786;
 Wed, 04 Oct 2023 22: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=XhzZ=FS=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qoAjl-0002UC-42
 for xen-devel@lists.xenproject.org; Wed, 04 Oct 2023 22:53:01 +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 c38d33b8-6308-11ee-9b0d-b553b5be7939;
 Thu, 05 Oct 2023 00:52:58 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by ams.source.kernel.org (Postfix) with ESMTP id 0DE1AB821C8;
 Wed,  4 Oct 2023 22:52:58 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id EF00EC433C8;
 Wed,  4 Oct 2023 22:52: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: c38d33b8-6308-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696459977;
	bh=5lIJM0akCeyUY2N61Rnr0eprSgKxj/Xi5swvZIwZ1/0=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=uIt9XsjzKV7jkmXBDnkZKrFSyyXEAhqnp7wDfK4s2HbR3WA+y/ew82R5XjjZtv88f
	 COtODi87tyjf2XPaLtjsXTYcbkZQ7PJZvbg20jD3ktN+WZT3gwtzA/jX5iM4f5Z34o
	 pFsyVZAalpKy+1gkQPVOebZM66KA717gqpsOz5C2HdAKrGBgOMCq5dEFusduNqPKQ6
	 4ov4sjv4I/E8woriidMlyeqakhtZCtqGvvgr30xayHq462DENFbqJ+MTrllJ6MI+Jc
	 CvsBX5qn53XI4WyEYMnj1rIXGgqWWCi4zkox/9v2rWmSIE4cMBWzvKNWBJ3IPbsQU7
	 qsFraoTvm5nkg==
Date: Wed, 4 Oct 2023 15:52:54 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Julien Grall <julien@xen.org>
cc: =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>, 
    Elliott Mitchell <ehem+xen@m5p.com>, xen-devel@lists.xenproject.org, 
    Stefano Stabellini <sstabellini@kernel.org>, 
    Bertrand Marquis <bertrand.marquis@arm.com>, 
    Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, 
    Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>
Subject: Re: Issue with shared information page on Xen/ARM 4.17
In-Reply-To: <f8242725-7ee0-4fca-a608-d234f8f3b564@xen.org>
Message-ID: <alpine.DEB.2.22.394.2310041509170.2348112@ubuntu-linux-20-04-desktop>
References: <ZRY7Ls3p6M6pakMq@mattapan.m5p.com> <ZRvQNKyYpLDVTs0i@MacBookPdeRoger> <ZRxpC7ukhiYvzz5m@mattapan.m5p.com> <ZR0erl_OSkNgIQjx@MacBookPdeRoger> <c0b67401-dfe5-475f-8640-b66ac32a80fb@xen.org> <ZR1gM19i6-vBaXh7@MacBookPdeRoger>
 <b00500ae-76b1-441c-8154-bcdd897734dc@xen.org> <ZR1rBP_49Y2V8VF6@MacBookPdeRoger> <fe94dcd2-4429-48df-8ebd-59563d43796a@xen.org> <ZR18dlMAbCwEOeH4@MacBookPdeRoger> <f8242725-7ee0-4fca-a608-d234f8f3b564@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, 4 Oct 2023, Julien Grall wrote:
> > > This is not very different here. For Arm we decided to not follow a
> > > behavior
> > > that I consider incorrect and potentially more harmful than trying to
> > > support bootloader not removing the shared page.
> > 
> > I think this is not very friendly to users, specially if edk2 wasn't
> > checked.
> 
> This was forgotten because it is not yet common to use EDK2 on Xen on Arm (the
> proof is it took one year to find the obvious bug). I agree this is not user
> friendly, but it is impossible to check all the single projects. I will
> usually only look at the one that I know are used on Arm and/or someone remind
> me on the ML.

At AMD/Xilinx we don't have EDK2 on any ARM board. Unless I go out of my
way to test it on purpose I wouldn't see it.


> > I understand the situation is different on Arm vs x86, so if
> > edk2 is not supported on arm I guess it doesn't matter much whether
> > it's broken.  It would be a much worse issue on x86 where edk2 is
> > supported.
> 
> AFAIK, we have CI for x86 on EDK2 but we don't on Arm.

I think we should have a gitlab-ci job testing EDK2 on ARM using QEMU
and I would certainly welcome it if someone contributed it.


> > > If we want to handle such firmware, I think it would be better if we
> > > provide
> > > an hypercall that would return the GFN where it is currently mapped.
> > 
> > Sure, but such hypercall would be racy, as by the time the gfn is
> > returned the value could be stale.  Adding a replacing and non
> > replacing XENMEM_add_to_physmap variations would IMO be better.
> > 
> > Anyway, I don't maintain this, so it's up to you.
> 
> Bertrand/Stefano, any opinions?

I think we should fix EDK2 to unmap the shared info in all cases as
that's simpler and the best implementation. What's the value of keeping
the mapping around when the OS can't find it? Unless you have an idea on
how the OS could find the location of the existing EDK2 shared info
mapping.


It is important not to have 2 different behaviors for the same hypercall
on ARM and x86, especially when the hypercall looks arch-neutral and an
operating system would reasonably expect to use it in common code.
Having different behaviors on ARM/x86 is more error prone than having a
less-than-ideal hypercall implementation.

I agree with Julien that the ARM behavior is the right behavior. Can we
change the x86 implementation to match ARM somehow?

If we do, I guess we would end up breaking legacy EDK2?

Is really the only choice to change the ARM implementation to match the
x86 implementation?


From xen-devel-bounces@lists.xenproject.org Wed Oct 04 22:59:53 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 04 Oct 2023 22:59:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612794.952883 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoAqK-00046Q-0S; Wed, 04 Oct 2023 22:59:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612794.952883; Wed, 04 Oct 2023 22:59: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 1qoAqJ-00046J-UD; Wed, 04 Oct 2023 22:59:47 +0000
Received: by outflank-mailman (input) for mailman id 612794;
 Wed, 04 Oct 2023 22:59: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=XhzZ=FS=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qoAqI-00046D-Fb
 for xen-devel@lists.xenproject.org; Wed, 04 Oct 2023 22:59:46 +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 b5e47909-6309-11ee-98d3-6d05b1d4d9a1;
 Thu, 05 Oct 2023 00:59:45 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by ams.source.kernel.org (Postfix) with ESMTP id B3EBEB82205;
 Wed,  4 Oct 2023 22:59:44 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 28236C433C8;
 Wed,  4 Oct 2023 22:59: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: b5e47909-6309-11ee-98d3-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696460383;
	bh=UAziBwLKVJvkFBm24MH0rhAoyiXaEe4jKbgCb+Z5Spc=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=S7cjnZY4VuENEj7Ua12PtkY5A24VrCId3qNsnYXVHey6c1k5eYcHDgQhdJkzlXjxR
	 6YGvCRnve11NCJpfFcV6YJ1ImcGxTlTsiQG8S5oFj1ybyXrFc0l7ViGLPSugS6snbz
	 aALMK/Zv7QjF/auTWFqTWyxFPFcOL4GSyVip8V76XmD04JvN41Kn051fYJyHoZEWNl
	 1lD/3X8v5mUltXzvq1P2ABbwwYBeKPqs5rSKaeTW1ivS1FtZzOvkzD6TKQallwy4OW
	 MzidTZmli3qWSslpdcqOeWMDI59E5Y8v1ih/DG6e7nK+wIzb+I2w1jbKcR9AMQn4zN
	 ce6yzHwaxl/4A==
Date: Wed, 4 Oct 2023 15:59:40 -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>, 
    Michal Orzel <michal.orzel@amd.com>, Luca Fancellu <Luca.Fancellu@arm.com>, 
    Bertrand Marquis <Bertrand.Marquis@arm.com>, 
    Xen-devel <xen-devel@lists.xenproject.org>, Wei Chen <Wei.Chen@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: <1ffd1281-6014-4ea7-a90f-3d34ef798fb6@xen.org>
Message-ID: <alpine.DEB.2.22.394.2310041553510.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>
 <alpine.DEB.2.22.394.2309291242570.2348112@ubuntu-linux-20-04-desktop> <bc2a043a-9836-429b-88bb-6bedda5343bf@xen.org> <38AD4AA5-D038-4114-A614-80BF91FB51FB@arm.com> <alpine.DEB.2.22.394.2310021512210.2348112@ubuntu-linux-20-04-desktop>
 <0348B5FA-D65C-4D70-99A4-47398BD4266C@arm.com> <dc16dc72-4a35-457d-b019-2351e3051c32@amd.com> <alpine.DEB.2.22.394.2310031242560.2348112@ubuntu-linux-20-04-desktop> <257cb1d3-e5b6-45cc-9b61-4710991693fb@xen.org> <alpine.DEB.2.22.394.2310031317360.2348112@ubuntu-linux-20-04-desktop>
 <1ffd1281-6014-4ea7-a90f-3d34ef798fb6@xen.org>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: multipart/mixed; BOUNDARY="8323329-1460485954-1696460232=:2348112"
Content-ID: <alpine.DEB.2.22.394.2310041557180.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-1460485954-1696460232=:2348112
Content-Type: text/plain; CHARSET=UTF-8
Content-Transfer-Encoding: 8BIT
Content-ID: <alpine.DEB.2.22.394.2310041557181.2348112@ubuntu-linux-20-04-desktop>

On Wed, 4 Oct 2023, Julien Grall wrote:
> On 03/10/2023 21:40, Stefano Stabellini wrote:
> > On Tue, 3 Oct 2023, Julien Grall wrote:
> > > On 03/10/2023 20:52, Stefano Stabellini wrote:
> > > > On Tue, 3 Oct 2023, Michal Orzel wrote:
> > > > > On 03/10/2023 09:44, Luca Fancellu wrote:
> > > > > > Given that the status after the move to common of the above
> > > > > > functions is
> > > > > > not very clean, I’ve decided to don’t do that,
> > > > > > however if you are fine with it, I can do the modification and who
> > > > > > is
> > > > > > going to work further on the subject can consolidate
> > > > > > and make them build for other architecture.
> > > > > > 
> > > > > Another option would be to hold off for a while until work on
> > > > > hyperlaunch/RISCV dom0less starts to better understand the needs,
> > > > > concepts and to avoid multiple code movement which results in a
> > > > > horrible
> > > > > history. I know this is not nice but I can tell you that
> > > > > I had to stop working on some features like FLASK with dom0less,
> > > > > static
> > > > > domids for dom0less domUs, because according to the hyperlaunch
> > > > > design,
> > > > > this will need to be common. With hyperlaunch, everything starts with
> > > > > the
> > > > > domain configuration that is supposed to be arch neutral, so
> > > > > until this is done, it's difficult to do anything in this area.
> > > > 
> > > > This is not good. In an ideal world, Hyperlaunch shouldn't block
> > > > progress for dom0less. We shouldn't have to wait many months to make
> > > > progress on FLASK with dom0less, static domids for dom0less domUs, etc.
> > > > because of potential Hyperlaunch implications.
> > > 
> > > It depends what are the implications. If it means that the bindings will
> > > change a release after. Then I think we should instead work on
> > > standardizing
> > > Hyperlaunch (or whichever name we decide to use) earlier so our users can
> > > rely
> > > on the interface for multiple revisions.
> > > 
> > > We could of course decide to maintain both interfaces. But this means more
> > > maintenance work which could have been avoided by fast tracking
> > > Hyperlaunch
> > > (it is not like we don't know it is coming...).
> > > 
> > > > In my option a delay of few weeks might be OK; we should be reasonable.
> > > > But a delay of few months is not. Cosidering review times, release
> > > > schedules etc. it could become a very significant delay. >
> > > > Also, hyperlaunch contributors are not familiar with dom0less and are
> > > > not familiar with arm. (This is so true that they have their own
> > > > reimplementation of the parser.) I think the dom0less separation / code
> > > > movement is better done by us in the arm community because we know the
> > > > code far better.
> > > 
> > > I think we need both the arm and hyperlaunch community to work together
> > > (see
> > > more below).
> > > 
> > > > 
> > > > So I think Luca's suggestion above is in the right direction. I would
> > > > follow Luca's suggestion with only one difference: I would keep
> > > > prepare_dtb_domU in the arm code, together with make_gicv*_domU_node and
> > > > make_vpl011_uart_node. I would move the rest to common.
> > > 
> > > Luca's pointed out that some function (such as construct_domU) would
> > > contain
> > > reference to Arm specific code. So with your proposal, I am under the
> > > impression that we would move code that would then end up to be moved
> > > again in
> > > a few months time. So it is defeating your goal (even though the movement
> > > will
> > > hopefully be smaller).
> > 
> > I was assuming that e.g. construct_domU would reference ARM code, but
> > the ARM code would live under arch/arm. So yes construct_domU would need
> > some refactoring in the future to make the call generic instead of
> > arm-specific, but wouldn't require significant additional code movement.
> 
> This is not really great. We could end up to have an extension of Arm in
> common for multiple release (the timeline for hyperlaunch is known). If you
> want to move the code now, then it would be preferable that we abstract the
> calls (e.g. arch_construct_domU()) at least have a sensible interface.
> 
> >  >> As I wrote above, I don't think the Arm community alone is in the 
> position to
> > > decide what should be in common and what should be in arch specific. We
> > > need
> > > the hyperlaunch community to agree on their approach so we can know which
> > > split makes sense. This is similar to the on-going MMU split to cater the
> > > MPU.
> > > We looked the MPU code to decide of the best split.
> > > 
> > > A potential approach would be to look at the RISC-V implementation of
> > > dom0less
> > > and see the common parts. But then we are going in the the scope creep you
> > > mention earlier.
> > 
> > I didn't do a proper investigation and I didn't look at the RISC-V or
> > hyperlaunch code in details. From my discussions with both groups, here
> > is my understanding of arm-specific things we currently have:
> > 
> > - 1:1 memory mapping / static memory / static heap because they are
> >    currently unimplemented on other arches
> 
> But they might. So this is the sort of feature that would want to be
> implemented in common.
> 
> > - most domU device tree building because most of virtual devices are
> >    different (timer, interrupt controller, uart, etc)
> 
> Make sense for this one
> 
> > - the equivalent for dom0: the gic/timer device tree generated nodes
> 
> and this one.
> 
> > - the blacklist at the beginning of handle_node
> 
> Hmmm... I would expect this to be useful at least for RISC-V as surely they
> want to hide some device. Maybe this could be abstract.
> 
> > - for hyperlaunch, we need to support "module-index" as a way to get the
> >    physical address of a module
> > - reserved_memory doesn't exist on x86
> 
> Are you referring to the variable? If so, the concept of reserved region would
> likely exists for other architecture. So this is a feature that would need to
> be abstracted so it can be re-used.

Yes, you are right. It doesn't seem that there is an easy way to
abstract these things.


> > - a couple of dom0less device tree properties are arm-specific, such as
> >    "sve" and "vpl011"
> > 
> > This is me hand-waiving, so it might not be useful.
> > 
> > 
> > > So overall, I feel that Lucas' approach is better until Hyperlaunch gain
> > > momentum.
> > 
> > I am OK with Luca's original approach. I just wanted to open the
> > discussion in case there is a better way.
> 
> I don't particular mind moving the code to common. But it needs to be done
> correctly (i.e. not common/<foo>.c be a simple extension of Arm). We also need
> to agree on a name for the file/directory (and most likely of the feature) to
> avoid another renaming.

I think the best way forward is to keep Luca's series as is because
anything else would require a significant amount of work. There is no
easy way to properly abstract the things listed above (1:1 memory
mappings, handle_node blacklist etc.) Still extracting dom0less out of
domain_build.c is a very good step in the right direction and I think we
should take it.
--8323329-1460485954-1696460232=:2348112--


From xen-devel-bounces@lists.xenproject.org Wed Oct 04 23:33:24 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 04 Oct 2023 23:33:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612801.952894 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoBMZ-0003Iw-Ia; Wed, 04 Oct 2023 23:33:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612801.952894; Wed, 04 Oct 2023 23:33: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 1qoBMZ-0003Ip-FQ; Wed, 04 Oct 2023 23:33:07 +0000
Received: by outflank-mailman (input) for mailman id 612801;
 Wed, 04 Oct 2023 23:33: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=XhzZ=FS=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qoBMY-0003Ih-35
 for xen-devel@lists.xenproject.org; Wed, 04 Oct 2023 23:33: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 5c8fa739-630e-11ee-98d3-6d05b1d4d9a1;
 Thu, 05 Oct 2023 01:33:03 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by dfw.source.kernel.org (Postfix) with ESMTP id 71539617E2;
 Wed,  4 Oct 2023 23:33:02 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id C541AC433C8;
 Wed,  4 Oct 2023 23:32: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: 5c8fa739-630e-11ee-98d3-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696462382;
	bh=J1IN8+JLpd4y3+EVWq1/XgkR+KsQzUae3aTjI7Fe2Jc=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=omJlJzxowH4cCsO2xOhtznCQhOirS4wo9OtIaLf7EImuDqrCgVNS4i1+JM98nQk1o
	 3dBkXLobW5w0bQ1R8r37DiiRNZx3zUMHg1Pk1fU0goAC4Gt3y7EyuAWsXryy297xle
	 z7NPDl9UV2XqkZibWVUoovQaknvZcPIzYawcVqmuDffAgYADnsOJ1WVBUrsEmsrnqU
	 eoUlzP5bsUW1uhb4xKPZJPHIAeXRFZ78uS48RdagT7jjr6xAaLaimyqFk9Hl8Ov97p
	 ByFdGNWTPlIn39kRZmsfXfV2ckijbp6utQx6rVIRK9TIjEXzrZ9SqwE9J69E5pvDka
	 A7N3fODRTycIg==
Date: Wed, 4 Oct 2023 16:32:58 -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: Nicola Vetrini <nicola.vetrini@bugseng.com>, 
    Stefano Stabellini <sstabellini@kernel.org>, 
    Xen-devel <xen-devel@lists.xenproject.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>, 
    Jan Beulich <jbeulich@suse.com>, 
    =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>, 
    Henry Wang <Henry.Wang@arm.com>, 
    Simone Ballarin <simone.ballarin@bugseng.com>, 
    Doug Goldstein <cardoe@cardoe.com>, 
    George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>, 
    Wei Liu <wl@xen.org>, Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [XEN PATCH] xen: Add SAF deviations for MISRA C:2012 Rule 7.1
In-Reply-To: <B00BC78B-E707-4043-A0B4-D320C6717472@arm.com>
Message-ID: <alpine.DEB.2.22.394.2310041625170.2348112@ubuntu-linux-20-04-desktop>
References: <338d8e574db943a86c7605e4c6d9a299d45f067d.1696347345.git.nicola.vetrini@bugseng.com> <alpine.DEB.2.22.394.2310031345190.2348112@ubuntu-linux-20-04-desktop> <e1736215-52ba-4737-9da3-8f1ba7e832a6@citrix.com> <DB96C095-5FAF-40A1-9CA8-002291AA1933@arm.com>
 <2894008e8f612296da84267346ae4240@bugseng.com> <B00BC78B-E707-4043-A0B4-D320C6717472@arm.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: multipart/mixed; BOUNDARY="8323329-279053703-1696462240=:2348112"
Content-ID: <alpine.DEB.2.22.394.2310041630450.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-279053703-1696462240=:2348112
Content-Type: text/plain; CHARSET=UTF-8
Content-Transfer-Encoding: 8BIT
Content-ID: <alpine.DEB.2.22.394.2310041630451.2348112@ubuntu-linux-20-04-desktop>

On Wed, 4 Oct 2023, Luca Fancellu wrote:
> > On 4 Oct 2023, at 11:29, Nicola Vetrini <nicola.vetrini@bugseng.com> wrote:
> > On 04/10/2023 12:06, Luca Fancellu wrote:
> >> Hi Nicola,
> >>> On 4 Oct 2023, at 10:56, andrew.cooper3@citrix.com wrote:
> >>> On 03/10/2023 9:46 pm, Stefano Stabellini wrote:
> >>>> On Tue, 3 Oct 2023, Nicola Vetrini wrote:
> >>>>> As specified in rules.rst, these constants can be used
> >>>>> in the code.
> >>>>> Their deviation is now accomplished by using a SAF comment,
> >>>>> rather than an ECLAIR configuration.
> >>>>> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
> >>>> "SAF" discussion aside that can be resolved elsewhere:
> >>>> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
> >>> Well no.  "SAF" aside (and SAF does need fixing before reposting this patch, otherwise it's just unnecessary churn), ...
> >>>>> diff --git a/xen/arch/x86/hvm/svm/svm.h b/xen/arch/x86/hvm/svm/svm.h
> >>>>> index d2a781fc3fb5..d0623b72ccfa 100644
> >>>>> --- a/xen/arch/x86/hvm/svm/svm.h
> >>>>> +++ b/xen/arch/x86/hvm/svm/svm.h
> >>>>> @@ -57,14 +57,23 @@ static inline void svm_invlpga(unsigned long linear, uint32_t asid)
> >>>>> #define INSTR_INT3 INSTR_ENC(X86EMUL_OPC( 0, 0xcc), 0)
> >>>>> #define INSTR_ICEBP INSTR_ENC(X86EMUL_OPC( 0, 0xf1), 0)
> >>>>> #define INSTR_HLT INSTR_ENC(X86EMUL_OPC( 0, 0xf4), 0)
> >>>>> +/* SAF-2-safe */
> >>>>> #define INSTR_XSETBV INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0321)
> >>>>> +/* SAF-2-safe */
> >>>>> #define INSTR_VMRUN INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0330)
> >>>>> +/* SAF-2-safe */
> >>>>> #define INSTR_VMCALL INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0331)
> >>>>> +/* SAF-2-safe */
> >>>>> #define INSTR_VMLOAD INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0332)
> >>>>> +/* SAF-2-safe */
> >>>>> #define INSTR_VMSAVE INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0333)
> >>>>> +/* SAF-2-safe */
> >>>>> #define INSTR_STGI INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0334)
> >>>>> +/* SAF-2-safe */
> >>>>> #define INSTR_CLGI INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0335)
> >>>>> +/* SAF-2-safe */
> >>>>> #define INSTR_INVLPGA INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0337)
> >>>>> +/* SAF-2-safe */
> >>>>> #define INSTR_RDTSCP INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0371)
> >>>>> #define INSTR_INVD INSTR_ENC(X86EMUL_OPC(0x0f, 0x08), 0)
> >>>>> #define INSTR_WBINVD INSTR_ENC(X86EMUL_OPC(0x0f, 0x09), 0)
> >>> ... this has broken a tabulated structure to have comments ahead of lines with octal numbers, while ...
> >>>>> diff --git a/xen/arch/x86/hvm/svm/emulate.c b/xen/arch/x86/hvm/svm/emulate.c
> >>>>> index aa2c61c433b3..c5e3341c6316 100644
> >>>>> --- a/xen/arch/x86/hvm/svm/emulate.c
> >>>>> +++ b/xen/arch/x86/hvm/svm/emulate.c
> >>>>> @@ -90,9 +90,9 @@ unsigned int svm_get_insn_len(struct vcpu *v, unsigned int instr_enc)
> >>>>> if ( !instr_modrm )
> >>>>> return emul_len;
> >>>>> - if ( modrm_mod == MASK_EXTR(instr_modrm, 0300) &&
> >>>>> - (modrm_reg & 7) == MASK_EXTR(instr_modrm, 0070) &&
> >>>>> - (modrm_rm & 7) == MASK_EXTR(instr_modrm, 0007) )
> >>>>> + if ( modrm_mod == MASK_EXTR(instr_modrm, 0300) && /* SAF-2-safe */
> >>>>> + (modrm_reg & 7) == MASK_EXTR(instr_modrm, 0070) && /* SAF-2-safe */
> >>>>> + (modrm_rm & 7) == MASK_EXTR(instr_modrm, 0007) ) /* SAF-2-safe */
> >>>>> return emul_len;
> >>>>> }
> >>> ... this has comments at the end of lines with octal numbers.
> >>> So which is it?
> >> I agree with Andrew here in this sense: the in-code comment is
> >> supposed to be on the line *before* the violation,
> >> not on the same line, so I’m also wondering how it is fixing the very
> >> first violation.
> >> Cheers,
> >> Luca
> > 
> 
> Hi Nicola,
> 
> > Actually it justifies what is on either the previous line or the same because it's
> > translated to /* -E> safe MC3R1.R7.1 1 */, where the last number is how many lines besides
> > the current one are to be deviated (e.g. you can have 0 deviate only the current line).
> 
> Just to understand, does this way:
> 
> <line A>
> /* -E> safe MC3R1.R7.1 1 */
> <line B>
> 
> Justifies only line B? Because I thought so, but now I want to be sure, otherwise it doesn’t act
> as intended.
> 
> 
> > Most of the times the current form is what's needed, as you would put the comment on a line
> > of its own. In the case of the if that would break the formatting. The downside of doing the same thing on the table is that the first entry not to be deviated would actually be deviated.
> > 
> > #define INSTR_INVD INSTR_ENC(X86EMUL_OPC(0x0f, 0x08), 0)
> > 
> > This may not be problematic, since 0 could be considered an octal constant, but is an
> > exception explicitly listed in the MISRA rule.
> > For the same reason the line
> > 
> > return emul_len;
> > 
> > is deviated by the above comment, but putting an octal constant there would for sure
> > be the result of a deliberate choice. There's the alternative of:
> > 
> >                          /* SAF-2-safe */
> >   if ( modrm_mod      == MASK_EXTR(instr_modrm, 0300) &&
> >                          /* SAF-2-safe */
> >       (modrm_reg & 7) == MASK_EXTR(instr_modrm, 0070) &&
> >                          /* SAF-2-safe */
> >       (modrm_rm & 7)  == MASK_EXTR(instr_modrm, 0007) )
> > 
> > to make it consistent with the table and avoid any "hidden" deviated line or, again,
> > the modification of the translation script so that it doesn't use a fixed "1" offset, which
> > is motivated by what you wrote on the thread of the modification of xen_analysis.py.
> 
> From the documentation:
> 
>     In the Xen codebase, these tags will be used to document and suppress findings:
> 
>     - SAF-X-safe: This tag means that the next line of code contains a finding, but
>       the non compliance to the checker is analysed and demonstrated to be safe.
> 
> I understand that Eclair is capable of suppressing also the line in which the in-code suppression
> comment resides, but these generic Xen in-code suppression comment are meant to be used
> by multiple static analysis tools and many of them suppress only the line next to the comment
> (Coverity, cppcheck).

As we see more realistic examples, it turns out that this is limiting.

Given that the SAF-2-safe comment needs to go through xen-analysis.py
translations anyway, could we implement something a bit more flexible in
xen-analysis.py?

For instance, could we implement a format with the number of lines of
code like this as we discussed in a previous thread?

/* SAF-2-safe start */
if ( modrm_mod      == MASK_EXTR(instr_modrm, 0300) &&
    (modrm_reg & 7) == MASK_EXTR(instr_modrm, 0070) &&
    (modrm_rm & 7)  == MASK_EXTR(instr_modrm, 0007) )
/* SAF-2-safe end */

Firstly, let ask Andrew, do you prefer this?


And also this second format:

if ( modrm_mod      == MASK_EXTR(instr_modrm, 0300) && /* SAF-2-safe */
    (modrm_reg & 7) == MASK_EXTR(instr_modrm, 0070) && /* SAF-2-safe */
    (modrm_rm & 7)  == MASK_EXTR(instr_modrm, 0007) ) /* SAF-2-safe */


Could we implement in xen-analysis.py a conversion that would turn the
two formats above that are not understood by cppcheck into:

/* cppcheck tag */
if ( modrm_mod      == MASK_EXTR(instr_modrm, 0300) &&
/* cppcheck tag */
    (modrm_reg & 7) == MASK_EXTR(instr_modrm, 0070) &&
/* cppcheck tag */
    (modrm_rm & 7)  == MASK_EXTR(instr_modrm, 0007) )

Or this is a problem because it would end up changing lines of code
numbers in the source file?

If we can hide the "ugliness" behind the xen-analysis conversion tool we
could have a clean codebase and still be compatible with multiple tools.
--8323329-279053703-1696462240=:2348112--


From xen-devel-bounces@lists.xenproject.org Wed Oct 04 23:47:06 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 04 Oct 2023 23:47:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612808.952904 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoBZy-00071z-UP; Wed, 04 Oct 2023 23:46:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612808.952904; Wed, 04 Oct 2023 23:46: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 1qoBZy-00071s-QN; Wed, 04 Oct 2023 23:46:58 +0000
Received: by outflank-mailman (input) for mailman id 612808;
 Wed, 04 Oct 2023 23: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=XhzZ=FS=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qoBZw-000711-US
 for xen-devel@lists.xenproject.org; Wed, 04 Oct 2023 23:46:56 +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 4be7c203-6310-11ee-98d3-6d05b1d4d9a1;
 Thu, 05 Oct 2023 01:46:55 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by sin.source.kernel.org (Postfix) with ESMTP id 9C484CE1F99;
 Wed,  4 Oct 2023 23:46:52 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id AF0D7C433C8;
 Wed,  4 Oct 2023 23:46: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: 4be7c203-6310-11ee-98d3-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696463211;
	bh=t63+aQvma45AbzY9KUouSPT5IQo9SYFBi5Iojj+uAYM=;
	h=Date:From:To:cc:Subject:From;
	b=Hs25Y3NEj49vZE8vn8U7BHYR+mqsxgHwgfJl5BS52ZxGz33OmgLbmRqzKH3jUG4Aq
	 oZBxkjnGIf0VnTlgBi/O76swkwa+eNmeHxTdbXzCVVs0ipHsfh49faBkvRmpgnGSlC
	 gN6/OldpjUpFupyfmZ3KCOMYsPpaueLMSvnD+6TenxusvgjpGLag72shTI/ry9T9Ou
	 xTmuikYFY9qQ4j6Q1gtzuaOO6dov1Avn9V2iGmOEKvTUXxHwc3vvG3KHi36l0zxT35
	 fuUqlCB5DxrnHpWJDqhk+fDJaAZ7mwX6GUF0nbbJi1/gTCQEF0U8xc7CJnHCrxUe2A
	 +UI1yP2/AL1Bg==
Date: Wed, 4 Oct 2023 16:46:49 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: jbeulich@suse.com, roger.pau@citrix.com, andrew.cooper3@citrix.com, 
    bertrand.marquis@arm.com, julien@xen.org, george.dunlap@citrix.com
cc: sstabellini@kernel.org, xen-devel@lists.xenproject.org
Subject: SAF-x-safe rename
Message-ID: <alpine.DEB.2.22.394.2310041633080.2348112@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

Hi MISRA C working group (Jan, Roger, Andrew, Julien, Bertrand, George)

in a recent thread Andrew pointed out that the SAF-2-safe tag is
confusing and requested a rename:
https://marc.info/?l=xen-devel&m=169634970821202

As documented by docs/misra/documenting-violations.rst:

 - SAF-X-safe: This tag means that the next line of code contains a finding, but
   the non compliance to the checker is analysed and demonstrated to be safe.
 - SAF-X-false-positive-<tool>: This tag means that the next line of code
   contains a finding, but the finding is a bug of the tool.


Today we have already 28 instances of SAF tags in the Xen codebase.


Andrew suggested "ANALYSIS" instead of SAF so I would imagine:
- ANALYSIS-X-safe
- ANALYSIS-X-false-positive-<tool>

If we really want a rename I suggest to rename SAF to SAFE:
- SAFE-X-safe
- SAFE-X-false-positive-<tool>

Or maybe MISRA:
- MISRA-X-safe
- MISRA-X-false-positive-<tool>

But I actually prefer to keep the tag as it is today.


If you have any naming suggestions please let me know by Oct 11. After
that, I plan to run a Doodle poll to check the preference of the group.

Cheers,

Stefano


From xen-devel-bounces@lists.xenproject.org Thu Oct 05 00:20:39 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 05 Oct 2023 00:20:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612814.952914 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoC6P-0006ie-RE; Thu, 05 Oct 2023 00:20:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612814.952914; Thu, 05 Oct 2023 00:20: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 1qoC6P-0006iX-Nl; Thu, 05 Oct 2023 00:20:29 +0000
Received: by outflank-mailman (input) for mailman id 612814;
 Thu, 05 Oct 2023 00:20: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=9m1Y=FT=m5p.com=ehem@srs-se1.protection.inumbo.net>)
 id 1qoC6P-0006iO-2M
 for xen-devel@lists.xenproject.org; Thu, 05 Oct 2023 00:20:29 +0000
Received: from mailhost.m5p.com (mailhost.m5p.com [74.104.188.4])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id fb8c9315-6314-11ee-98d3-6d05b1d4d9a1;
 Thu, 05 Oct 2023 02:20:27 +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 3950K1jr002118
 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NO);
 Wed, 4 Oct 2023 20:20:07 -0400 (EDT) (envelope-from ehem@m5p.com)
Received: (from ehem@localhost)
 by m5p.com (8.17.1/8.15.2/Submit) id 3950K1YQ002117;
 Wed, 4 Oct 2023 17:20: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: fb8c9315-6314-11ee-98d3-6d05b1d4d9a1
Date: Wed, 4 Oct 2023 17:20:01 -0700
From: Elliott Mitchell <ehem+xen@m5p.com>
To: Stefano Stabellini <sstabellini@kernel.org>
Cc: Julien Grall <julien@xen.org>,
        Roger Pau =?iso-8859-1?Q?Monn=E9?= <roger.pau@citrix.com>,
        xen-devel@lists.xenproject.org,
        Bertrand Marquis <bertrand.marquis@arm.com>,
        Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
        Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>
Subject: Re: Issue with shared information page on Xen/ARM 4.17
Message-ID: <ZR4BMcO1ekycPc24@mattapan.m5p.com>
References: <ZRxpC7ukhiYvzz5m@mattapan.m5p.com>
 <ZR0erl_OSkNgIQjx@MacBookPdeRoger>
 <c0b67401-dfe5-475f-8640-b66ac32a80fb@xen.org>
 <ZR1gM19i6-vBaXh7@MacBookPdeRoger>
 <b00500ae-76b1-441c-8154-bcdd897734dc@xen.org>
 <ZR1rBP_49Y2V8VF6@MacBookPdeRoger>
 <fe94dcd2-4429-48df-8ebd-59563d43796a@xen.org>
 <ZR18dlMAbCwEOeH4@MacBookPdeRoger>
 <f8242725-7ee0-4fca-a608-d234f8f3b564@xen.org>
 <alpine.DEB.2.22.394.2310041509170.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.2310041509170.2348112@ubuntu-linux-20-04-desktop>
X-Spam-Status: No, score=0.0 required=10.0 tests=KHOP_HELO_FCRDNS
	autolearn=unavailable autolearn_force=no version=4.0.0
X-Spam-Checker-Version: SpamAssassin 4.0.0 (2022-12-14) on mattapan.m5p.com

On Wed, Oct 04, 2023 at 03:52:54PM -0700, Stefano Stabellini wrote:
> On Wed, 4 Oct 2023, Julien Grall wrote:
> > > > If we want to handle such firmware, I think it would be better if we
> > > > provide
> > > > an hypercall that would return the GFN where it is currently mapped.
> > > 
> > > Sure, but such hypercall would be racy, as by the time the gfn is
> > > returned the value could be stale.  Adding a replacing and non
> > > replacing XENMEM_add_to_physmap variations would IMO be better.
> > > 
> > > Anyway, I don't maintain this, so it's up to you.
> > 
> > Bertrand/Stefano, any opinions?
> 
> I think we should fix EDK2 to unmap the shared info in all cases as
> that's simpler and the best implementation. What's the value of keeping
> the mapping around when the OS can't find it? Unless you have an idea on
> how the OS could find the location of the existing EDK2 shared info
> mapping.

I tend to agree.

> It is important not to have 2 different behaviors for the same hypercall
> on ARM and x86, especially when the hypercall looks arch-neutral and an
> operating system would reasonably expect to use it in common code.
> Having different behaviors on ARM/x86 is more error prone than having a
> less-than-ideal hypercall implementation.

I attempted to head this direction with FreeBSD, but there were enough
surrounding differences to make this troublesome to implement.  May be
easier on other OSes with less history though.

I do agree on general principle fewer/smaller differences are better.
Yet I note my earlier patch to have `typedef struct trap_info trap_info_t`
consistently visible didn't go through...

> I agree with Julien that the ARM behavior is the right behavior. Can we
> change the x86 implementation to match ARM somehow?
> 
> If we do, I guess we would end up breaking legacy EDK2?

I agree this ARM behavior does seem appropriate.  Due to longer history
though it will need far more transition time.  If this 4.18 tarballs
aren't out yet, I would try to see whether a warning message could be
implemented *now*.  I estimate the old behavior will need support for
5-10 years.


On Wed, Oct 04, 2023 at 03:42:00PM -0700, Stefano Stabellini wrote:
> Sorry to be pedantic but I am really not familiar with EDK2. Does
> "reserved page" in this context mean a memory page from a reserved
> region marked as reserved in the EFI memory map?

I'm not too familiar either, so a fair amount of what I write is
speculation or guesses.  I'm assuming this refers to "ACPI reserved
page", meaning marked as not for use by the OS.


-- 
(\___(\___(\______          --=> 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 Oct 05 01:28:40 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 05 Oct 2023 01:28:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612820.952923 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoDAA-0000me-MW; Thu, 05 Oct 2023 01:28:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612820.952923; Thu, 05 Oct 2023 01: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 1qoDAA-0000mX-Jc; Thu, 05 Oct 2023 01:28:26 +0000
Received: by outflank-mailman (input) for mailman id 612820;
 Thu, 05 Oct 2023 01: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=rfD8=FT=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qoDA9-0000mR-CS
 for xen-devel@lists.xenproject.org; Thu, 05 Oct 2023 01:28:25 +0000
Received: from EUR01-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur01on2075.outbound.protection.outlook.com [40.107.13.75])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 7918cffc-631e-11ee-98d3-6d05b1d4d9a1;
 Thu, 05 Oct 2023 03:28:22 +0200 (CEST)
Received: from DUZPR01CA0317.eurprd01.prod.exchangelabs.com
 (2603:10a6:10:4ba::27) by AS8PR08MB5910.eurprd08.prod.outlook.com
 (2603:10a6:20b:296::9) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.28; Thu, 5 Oct
 2023 01:27:53 +0000
Received: from DBAEUR03FT055.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:4ba:cafe::d2) by DUZPR01CA0317.outlook.office365.com
 (2603:10a6:10:4ba::27) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.33 via Frontend
 Transport; Thu, 5 Oct 2023 01:27:52 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DBAEUR03FT055.mail.protection.outlook.com (100.127.142.171) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6863.26 via Frontend Transport; Thu, 5 Oct 2023 01:27:52 +0000
Received: ("Tessian outbound fdf44c93bd44:v211");
 Thu, 05 Oct 2023 01:27:52 +0000
Received: from bca7119d26cb.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 B34AEAB1-55B6-4517-9977-32E98EB515EB.1; 
 Thu, 05 Oct 2023 01:27:45 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id bca7119d26cb.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Thu, 05 Oct 2023 01:27:45 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by AS2PR08MB9521.eurprd08.prod.outlook.com (2603:10a6:20b:60f::20)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.30; Thu, 5 Oct
 2023 01:27: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%7]) with mapi id 15.20.6838.033; Thu, 5 Oct 2023
 01:27: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: 7918cffc-631e-11ee-98d3-6d05b1d4d9a1
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=i3evxhMzv5pKLut7UbgFiCjffU+IQkA6QdXqcVwcT3E=;
 b=fGSXFqC/kA/XlpVc5AApVmB1tYbgUGWLOmNZrRqdh8I0p6T8icUEASCTm84qwijOQeg42dK2Wc8RNhvWkojd8bONC2nGCTyzc46ttg0hF85QTDDo3MbP3bh+uVtYhwAMrg9YHYqRHkjWQZvUoIl5ar4X/FL3RbWyXl3YXXQxgn4=
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: 98f59f4725c9171d
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=mfieBH/blWlvnBKIg3IsbOND4EeTgM3S3mdHGrLe4hrCuc0yfMieVkUhfYOfFKcEkzaTeaFHRV+ZzpBM1HSHGuraap6VTbauJvnLuXopQBr6eezNYFZy5D2yU3esZxBM2hNipBBoOLdlJVsGB2ZwWvx4iwXO3pgb525XWQfC4ln2aUMIUqrEUXLkAnBK3r2x4xBh1GC7lJG994bpsKshckIvy3gZPB7yFNatvRsfkfl9We8cQOEaLklbD2JIImRig3/W7MgXkHrWIh8qRB/li2PecaHR9tMqluCYE0eXjUuMhR/xfb/r5w4ytSWo1CFGl3Bvd1OknjFfuzGFQIdFMw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=i3evxhMzv5pKLut7UbgFiCjffU+IQkA6QdXqcVwcT3E=;
 b=ccen9I421JO4+eK2UBMuLsmf302RWva7RoREmC6GBMEGCmpn7GG1YPmFpVwkoKb6x59LM+brylurYYlK4ukR8X/Tj1FUY4oFd/+CZDloyXzFA0yKYpbmu64X9UDnK94B4tmTO6fC7D9cbt0TcTxaD5fD1e95FcjfQEBcEGUNY1XbkNysD+3ofw4lQcYFa6rpGRqSxFFMFYp8p6V4rS6E7AAQOF3aS1b46nJ/sH/71H+MuQF+M8kavZZ8QI6FPXvkm7SdDrwH2xkmxn1fI1DRwIspfe8dd0NH47qERZTjqSjEMP1iEvXnWx8Z45TnXkVhbdQ614oI8+y2wwWNGYcLEg==
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=i3evxhMzv5pKLut7UbgFiCjffU+IQkA6QdXqcVwcT3E=;
 b=fGSXFqC/kA/XlpVc5AApVmB1tYbgUGWLOmNZrRqdh8I0p6T8icUEASCTm84qwijOQeg42dK2Wc8RNhvWkojd8bONC2nGCTyzc46ttg0hF85QTDDo3MbP3bh+uVtYhwAMrg9YHYqRHkjWQZvUoIl5ar4X/FL3RbWyXl3YXXQxgn4=
From: Henry Wang <Henry.Wang@arm.com>
To: Roger Pau Monne <roger.pau@citrix.com>
CC: Xen-devel <xen-devel@lists.xenproject.org>, Tamas K Lengyel
	<tamas@tklengyel.com>, Jan Beulich <jbeulich@suse.com>, Andrew Cooper
	<andrew.cooper3@citrix.com>, George Dunlap <george.dunlap@citrix.com>, Wei
 Liu <wl@xen.org>, Julien Grall <julien@xen.org>, Stefano Stabellini
	<sstabellini@kernel.org>
Subject: Re: [PATCH v5 00/10] runstate/time area registration by (guest)
 physical address
Thread-Topic: [PATCH v5 00/10] runstate/time area registration by (guest)
 physical address
Thread-Index: AQHZ9ULOXo6nacgxtUSqjcKqJ3jAc7A6a7EA
Date: Thu, 5 Oct 2023 01:27:41 +0000
Message-ID: <4F5568FE-DE94-4F19-9F17-BF251E1F6716@arm.com>
References: <20231002151127.71020-1-roger.pau@citrix.com>
In-Reply-To: <20231002151127.71020-1-roger.pau@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_|AS2PR08MB9521:EE_|DBAEUR03FT055:EE_|AS8PR08MB5910:EE_
X-MS-Office365-Filtering-Correlation-Id: d4eeb0a3-f133-4e7d-66aa-08dbc5424b33
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:
 1RxNQ8czWNMco3REDkWdkpxni//ZhqTHzcAxUrtfR6D87fJRXNRDo1DI8MuFQJilnnMxF51PXYyIGSfBIGLjAQ62mJnBvu9+nIKoqjuVPEFrvcqzCl8gvbCUf3f1e3/8w21MfxYmdriNH1suIWJKYF1oooUFgq0MCL/TKxjrEDAFPGyURj98wH+LuQO6RqiyiyziKQk1lhcLdDUJZMTakwp/DxM6k8g2MTS/onXNFoOujg8AFRc5SFUWuwKa6MCedXhQn5jhBwjwpGJ0VLGfjSkOTs8Bs5aHBhAngSdrzvCiHkE4bxVxQxRedpI55xK7MeG7n009OjKX3iYpsl9XcSRTqJWiEg0+kjHTfwyI+T1zHIQK4k1V0yg7FBt4KnTXkn4v8TeW0jo6u7y1b4im5Lx462ArsKpxe9aVf/SN9VCjlPtJmwSbb+Gz/oA6+c6FRroxSSfpgpsmfQVH1148WPZwifisXgYmU6XaxLzNnDi8tZFMe/7jCbGNtT1Ve/Cgf/jhEuGhDjPAlpCqNCS3pe3P8lFMNlpVcRgj5lIV35PtPTtFelQp4AuluvzsUrR0Et58vP8RHbB3GpWRACIa+aZBcUcZp1rWemnC66D1QlKCreihWtjFsBL8B0MKiQVP3aVqGkR1oyfWwSVoVm70VQ==
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)(346002)(136003)(39860400002)(230922051799003)(451199024)(186009)(1800799009)(64100799003)(53546011)(6506007)(6486002)(6512007)(478600001)(966005)(38070700005)(86362001)(38100700002)(122000001)(76116006)(316002)(2906002)(2616005)(6916009)(71200400001)(33656002)(83380400001)(91956017)(26005)(66446008)(8936002)(36756003)(8676002)(4326008)(66946007)(66476007)(5660300002)(64756008)(66556008)(41300700001)(54906003)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="us-ascii"
Content-ID: <0135078BA8C16946AE5BF2DDBEE13613@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS2PR08MB9521
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:
 DBAEUR03FT055.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	89c9f7fa-ca11-4b0f-ca06-08dbc5424495
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	XAAq/w71zrCJXCTs+25VkTizqxFH1IG+pPfKvDfl2c+PIl6Gz4vVjNy3RY8tkz6EXfx41BFgC4CqP+P1mJw68LoWQ0FWxEoZDPAlP4/8/imP2E72uPfFB1l64+shDTQ8VlHMscdhHvJTHGe4S0vYoqqMlFNfG2PGMZcRhkd1yLgytGz0CoZbhglKGAxo24ThAdJ/BMMrQ9VMTJrcCVVISbmt/aexW63f3gaBqVZQSHkCcX+AVEPsOxHfkCaV2kyX0K1SlOgFBQ50T5GqpjuIR9nJYFI0H/m4T1KiqOvrRmqLsJQl4HuQPJVDJ5oovYO6ySGNm2UQb1C+1UTC0zGNz2Kd5cZhC5NdhXZ4wisHzs0V35BlIfT41x1MHq2cenHbPYCle+zDzItOTsTkVEXvZR+ps7zA/vlFTXylai9R9T8u5+4K7OapaMhmuJ2Dz+AL4mOgK1xMUq13E/o1cpsuUWR3UtYRUmlX2EYuPx+1tg6aE97imqFQE2NBOhjqUcHpD+lDj6qdt4JNJRBHBnDOgY+6i5PfkU2ZhxoaDhFs1f2sCMn0h8TRpR7wBtssJ6U98qMHb/QGycEV2l5f086D50MJt71BP9wyZS+lPatagoCoNhGurLC8/7g0933GbluBWWcsuv9maNCLakTDJ9C08RJsT4BMSq0PN8Dex4wJSz+yYYUutSh1qoKXN2yGR7Uktq2KODeV1oc9mWczlu7OasfsSfnscRJRBj8CR5Fhge8=
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)(346002)(376002)(230922051799003)(1800799009)(82310400011)(186009)(64100799003)(451199024)(40470700004)(46966006)(36840700001)(966005)(6512007)(478600001)(53546011)(6486002)(2616005)(6506007)(83380400001)(316002)(107886003)(26005)(336012)(4326008)(6862004)(70586007)(5660300002)(47076005)(8676002)(70206006)(2906002)(54906003)(36756003)(8936002)(33656002)(41300700001)(36860700001)(82740400003)(356005)(81166007)(86362001)(40480700001)(40460700003);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Oct 2023 01:27:52.3074
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: d4eeb0a3-f133-4e7d-66aa-08dbc5424b33
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:
	DBAEUR03FT055.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB5910

Hi Roger,

> On Oct 2, 2023, at 23:11, Roger Pau Monne <roger.pau@citrix.com> wrote:
>=20
> 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.
>=20
> v5 adds one vm-fork specific pre-patch that does simply the introduced
> code later on.  It does also fix a vm-fork bug.
>=20
> Patches 1 and 6 are missing and Ack from the mem-sharing maintainer.
>=20
> Whole series will need a Release-Ack.

We agreed in [1] that this series is a good candidate for 4.18, so for the =
whole
series,

Release-acked-by: Henry Wang <Henry.Wang@arm.com>

[1] https://lore.kernel.org/xen-devel/0be1e32f-5600-7b3a-8d72-84297a1ebee0@=
suse.com/

Kind regards,
Henry

>=20
> Thanks, Roger.
>=20
> Jan Beulich (9):
>  x86/shim: zap runstate and time area handles during shutdown
>  domain: GADDR based shared guest area registration alternative -
>    teardown
>  domain: update GADDR based runstate guest area
>  x86: update GADDR based secondary time area
>  x86/mem-sharing: copy GADDR based shared guest areas
>  domain: map/unmap GADDR based shared guest areas
>  domain: introduce GADDR based runstate area registration alternative
>  x86: introduce GADDR based secondary time area registration
>    alternative
>  common: convert vCPU info area registration
>=20
> Roger Pau Monne (1):
>  mem_sharing/fork: do not attempt to populate vcpu_info page
>=20
> xen/arch/x86/domain.c             |  33 +++
> xen/arch/x86/include/asm/domain.h |   3 +
> xen/arch/x86/include/asm/shared.h |  19 +-
> xen/arch/x86/mm/mem_sharing.c     |  73 +++----
> xen/arch/x86/pv/shim.c            |  10 +-
> xen/arch/x86/time.c               |  34 +++-
> xen/arch/x86/x86_64/asm-offsets.c |   2 +-
> xen/arch/x86/x86_64/domain.c      |  36 ++++
> xen/arch/x86/x86_64/traps.c       |   2 +-
> xen/common/compat/domain.c        |   2 +-
> xen/common/domain.c               | 324 ++++++++++++++++++++++--------
> xen/include/public/vcpu.h         |  19 ++
> xen/include/xen/domain.h          |  12 +-
> xen/include/xen/sched.h           |   8 +-
> xen/include/xen/shared.h          |   3 +-
> 15 files changed, 440 insertions(+), 140 deletions(-)
>=20
> --=20
> 2.42.0
>=20



From xen-devel-bounces@lists.xenproject.org Thu Oct 05 01:33:51 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 05 Oct 2023 01:33:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612825.952935 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoDFL-0002l2-Ab; Thu, 05 Oct 2023 01:33:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612825.952935; Thu, 05 Oct 2023 01:33: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 1qoDFL-0002kv-5y; Thu, 05 Oct 2023 01:33:47 +0000
Received: by outflank-mailman (input) for mailman id 612825;
 Thu, 05 Oct 2023 01:33: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=rfD8=FT=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qoDFJ-0002kp-IO
 for xen-devel@lists.xenproject.org; Thu, 05 Oct 2023 01:33:45 +0000
Received: from EUR03-DBA-obe.outbound.protection.outlook.com
 (mail-dbaeur03on2062b.outbound.protection.outlook.com
 [2a01:111:f400:fe1a::62b])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 380c9805-631f-11ee-9b0d-b553b5be7939;
 Thu, 05 Oct 2023 03:33:43 +0200 (CEST)
Received: from AM6PR02CA0029.eurprd02.prod.outlook.com (2603:10a6:20b:6e::42)
 by AM9PR08MB6644.eurprd08.prod.outlook.com (2603:10a6:20b:30e::15)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.35; Thu, 5 Oct
 2023 01:33:34 +0000
Received: from AM7EUR03FT043.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:20b:6e:cafe::bd) by AM6PR02CA0029.outlook.office365.com
 (2603:10a6:20b:6e::42) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.26 via Frontend
 Transport; Thu, 5 Oct 2023 01:33:34 +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.6863.26 via Frontend Transport; Thu, 5 Oct 2023 01:33:33 +0000
Received: ("Tessian outbound 9aeaca65ec26:v211");
 Thu, 05 Oct 2023 01:33:33 +0000
Received: from e09e16a50595.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 ED6F316C-7A36-4AC4-9409-B6E2C918456F.1; 
 Thu, 05 Oct 2023 01:33:27 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id e09e16a50595.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Thu, 05 Oct 2023 01:33:27 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by AS2PR08MB9521.eurprd08.prod.outlook.com (2603:10a6:20b:60f::20)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.30; Thu, 5 Oct
 2023 01:33:24 +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.033; Thu, 5 Oct 2023
 01:33: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: 380c9805-631f-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=PMTbu8aDaQm7NJPGlIKBhXV7yoWn0Z1K3mTRVnWgUmc=;
 b=lVvSVSqEi43MOEe6USvTgpBMKImD5Ojgze5c43fBlPzzQAabGHTG9vghNf6djdS3qknYhaDDPgx9hF7QzvJK8Byu9/0bGqu50YroZZjQMBlh/nrsCUZe7NvRrEcW9skph1vSrkXQqOGl3Hp3CleFUXVJOkEHwkYLCf/C+cC34kQ=
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: 2391d365e99f78b1
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=n+UZGpvcv9h3UL2+KM4R6XcJBTTG4tb96xyBNvkZm9c7XHnm9s43eWn+22pPmB23wYWfbQSvidKpSN3vC0RdWOqbGbV2Hy54Z5UBc3zlyvfp0n6Fk1e0ogGL5k1d58HQf4BQrTcLKd9vg2yr0Lp7Xawf0cchJvk8L5oL2biWpG718bUdLWULfNIhAqe3CvEoPsZViSh6Ks7vmttQ/H1yMvoAL8PxjDX3lqZKuMvc0UJZRPRGjWnz3KRsJPpELwjD0SOl6ZJnl380aSNvJKwSPI2j9Kc1qVwESLlJ+qT8kUwWiQniz4hv6G63lXuw1WxK4EwRdGAuQUhXkTBryibsaQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=PMTbu8aDaQm7NJPGlIKBhXV7yoWn0Z1K3mTRVnWgUmc=;
 b=b7u1v0JqnLm2lsNZ73fTBe8xWeCGsql7CMEi7B+9BvXxuB78/qBQsPO94nYbosmIWw4Zuvxq/ItD3kIxBD5PAYAa2QLyFR9nV91R8dR8KPcp4cSdQ8HLBIMmXGb9FyzVz4hfc48cSO2sA4wRMBdvh1Xjc0Dcd9NblM6QicOxKMgHdWOaPib69vefTlRAUGNbQ0ZOjFk8t7D01XQTnm3FYA4e/VvWfas8nZGHjoGnsqSMbnstTIrRENBIjvRjrRd7LkfMehFHpBhsP0xSisa4+sLKYtGdOJw+KalmmPduWdlqrxBAfpkFATLMwg0qIH0N9Pz5VeOecu8yqkADFnZHOQ==
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=PMTbu8aDaQm7NJPGlIKBhXV7yoWn0Z1K3mTRVnWgUmc=;
 b=lVvSVSqEi43MOEe6USvTgpBMKImD5Ojgze5c43fBlPzzQAabGHTG9vghNf6djdS3qknYhaDDPgx9hF7QzvJK8Byu9/0bGqu50YroZZjQMBlh/nrsCUZe7NvRrEcW9skph1vSrkXQqOGl3Hp3CleFUXVJOkEHwkYLCf/C+cC34kQ=
From: Henry Wang <Henry.Wang@arm.com>
To: Stefano Stabellini <sstabellini@kernel.org>
CC: Federico Serafini <federico.serafini@bugseng.com>, Xen-devel
	<xen-devel@lists.xenproject.org>, "consulting@bugseng.com"
	<consulting@bugseng.com>, 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>, Shawn Anastasio <sanastasio@raptorengineering.com>,
	=?iso-8859-1?Q?Roger_Pau_Monn=E9?= <roger.pau@citrix.com>
Subject: Re: [XEN PATCH v3] xen/mm: address violations of MISRA C:2012 Rules
 8.2 and 8.3
Thread-Topic: [XEN PATCH v3] xen/mm: address violations of MISRA C:2012 Rules
 8.2 and 8.3
Thread-Index: AQHZ9g3DjAyQhyn3xk6z96DrL2N0h7A4i4QAgAHgMIA=
Date: Thu, 5 Oct 2023 01:33:24 +0000
Message-ID: <3C814639-8F88-4CA4-A8E4-2E46AAA74451@arm.com>
References:
 <eedcfeb8d1c81527b7e18fcc0eca252577f00035.1696344012.git.federico.serafini@bugseng.com>
 <alpine.DEB.2.22.394.2310031354260.2348112@ubuntu-linux-20-04-desktop>
In-Reply-To:
 <alpine.DEB.2.22.394.2310031354260.2348112@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_|AS2PR08MB9521:EE_|AM7EUR03FT043:EE_|AM9PR08MB6644:EE_
X-MS-Office365-Filtering-Correlation-Id: 5fdb01a7-8c48-4acd-3c5c-08dbc54316b2
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:
 adFcXzkOjxYNSmMQ1aNFBZePSPw37k6Z8ozpnW4RHSB/81EFc+xldOTHxJYSFf1GOn9QD3xbowetbwo8w+amWa2YdEKbS6m4j6Rv46T/HyJK6c761nGlR37RfBzWlTZXexRNf3fKPOwW++8haXH8b9TrYkQaGe2KNyk1LA4KjrmMhCFZ7SZHAWlvSK9E7cKCzOwaAeewA4ikPOBpq/oL2BWL+hePqR+Vjq8fb1Tu26/7FTAm2BgRaDozyV/Ci8jh8iZqXNfsLmB0nzBp4eWoqBq1HitccDsA5p8GntSMQQA1EKxpnqRbTTYDDmMIeuLIPFcG+DLgr40MPIXYINU7kifNcxVfq2bKh+nM56eELpNh4X5MCLJH1yi3f+53StKanfgA0EwrwtfO2Pyr5MM4txNEKUdMIDi4mFY8ycQhiEyO/yprur7dGFjq049tULtCLeOP8trcQqOQilcaLqKcK8BNj4buuPm1dNa+geokQkxXVet4zw0Cm0dqWJs3wjybw1scWSBMqdM+fQMIChJ+EZloqpHA/ilGPqHLmqffw5inzCq37dwLmFoT28ENv2B3cdo63XxIoNOxDey75QK/RE4yPO2kUY2gLWatBzjG9qUva3jx0pnCXmKB5CGCx2rVLdfoRAXSmG+D4xgnQHkCUA==
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)(346002)(136003)(39860400002)(230922051799003)(451199024)(186009)(1800799009)(64100799003)(53546011)(6506007)(6486002)(6512007)(478600001)(38070700005)(86362001)(38100700002)(122000001)(76116006)(316002)(2906002)(2616005)(6916009)(71200400001)(33656002)(4744005)(91956017)(26005)(7416002)(66446008)(8936002)(36756003)(8676002)(4326008)(66946007)(66476007)(5660300002)(64756008)(66556008)(41300700001)(54906003)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="iso-8859-1"
Content-ID: <BDFAD56C3A376146BC2A98729E43B24E@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS2PR08MB9521
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:
	7073e87d-5341-481c-fb98-08dbc5431126
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	9D65nNGTubLm5ySwo58KT6AzbJDB/bKBTCWMwG92CR3YsQi106KmlQ6PK6N4dnEiKDLQBk7+U5TbG7ktSeIq3ij2TN02WSqcJ5xEhapaL8ndT9YqAnK4pBvRL7HynYKm85HyfWNU8DBIFbpvEKr7C9zZJAWHMSH0F3s4m+F7T6eWtYGwcZUffHUI+0go8nL6zMS9sGTQ0oeEbxNSlWaQ/DTs4NDmSc4XIrDTWozqUJSoXQ9/+uAj8VBTSa/9mgg0gxAWWBw8kbt0FQYztpeKqsiFVq0ILDF/4+aFJ4rrmfyfVUoaPd4WfUtPefjSW9pRZYpB5D6Pz1c0laU9FddqDnBKyu5EJYdG0RBt4YVXY3451n6i4A9jdEPYpd/vCfPSPeZRB4e6PVISh7caw2HVBwUF0GMVqwUlRZfMV7yi/vn/c7vfN18p8huGaZYKLRVNrXs8PluGi7Gzwl/bYH/n5bH8fy5DwqFllYWL6KRD/HO36Caek3vuufaVXoFGRLYVU2BoLBBjokWK/5lFnHaBVhGF3W1Nn3zFu++TbPTly/boDW2hUAE9hD5idoKWQ5T4kmun8TnM+B2wrQMK8agtwtRbzVW/DGKpusenyBSWCuKyCaxsuRXhADPFIz80JWhvz/VnBJntwVhsw25y3bUs1Kjn4kq3+/XSURO/X7XFTe+l9pYB1aTY2KrF9q+lN0oIDPxgqclCQi5YRrDGh1r5zyLeF2xKHLT0mlywn6WB3auo23dITHN7B1BsO+snQaIn
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)(136003)(39860400002)(396003)(230922051799003)(451199024)(186009)(64100799003)(82310400011)(1800799009)(40470700004)(36840700001)(46966006)(6486002)(5660300002)(41300700001)(316002)(70586007)(70206006)(36756003)(54906003)(40460700003)(26005)(107886003)(336012)(2616005)(40480700001)(53546011)(478600001)(6512007)(6506007)(8936002)(4326008)(6862004)(8676002)(2906002)(4744005)(356005)(81166007)(36860700001)(82740400003)(47076005)(33656002)(86362001);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Oct 2023 01:33:33.6692
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 5fdb01a7-8c48-4acd-3c5c-08dbc54316b2
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: AM9PR08MB6644

Hi,

> On Oct 4, 2023, at 04:54, Stefano Stabellini <sstabellini@kernel.org> wro=
te:
>=20
> On Tue, 3 Oct 2023, Federico Serafini wrote:
>> Add missing parameter names and make function declarations and definitio=
ns
>> 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 Thu Oct 05 03:35:43 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 05 Oct 2023 03:35:43 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612831.952944 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoF91-0008RF-3O; Thu, 05 Oct 2023 03:35:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612831.952944; Thu, 05 Oct 2023 03: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 1qoF91-0008R8-09; Thu, 05 Oct 2023 03:35:23 +0000
Received: by outflank-mailman (input) for mailman id 612831;
 Thu, 05 Oct 2023 03:35:21 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qoF8z-0008Qy-9r; Thu, 05 Oct 2023 03:35:21 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qoF8z-0006ng-3i; Thu, 05 Oct 2023 03:35: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 1qoF8y-0001GB-J5; Thu, 05 Oct 2023 03:35:20 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qoF8y-0000SX-If; Thu, 05 Oct 2023 03:35: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=JekTfMPPYgu3o1cDe2ZaqVZnCEI+D4LncwdCqmTbw34=; b=Od0epHTfFR+i7zT7/LOZcsAwK3
	bscthq0sYTsoCSUX98CzBZzEtCjsh+jKdQ3JRyRVXzc4vi2x/sJpD9SmACC/fN9uhGdRPiR8tGkhQ
	2/87SbuTryQzMTF1uj+hr58v+dklctOZmQyTbKDuOTiVZK0QEsMlRtc/Ljgem6mljxoQ=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183265-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 183265: tolerable FAIL - PUSHED
X-Osstest-Failures:
    linux-linus:test-armhf-armhf-libvirt-qcow2:guest-start/debian.repeat:fail:heisenbug
    linux-linus:test-armhf-armhf-libvirt-raw: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: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-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-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-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-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-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-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-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-amd64-amd64-libvirt:migrate-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
    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-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-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=ba7d997a2a29ee3fa766fee912c65796e0c21903
X-Osstest-Versions-That:
    linux=cbf3a2cb156a2c911d8f38d8247814b4c07f49a2
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 05 Oct 2023 03:35:20 +0000

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

Failures :-/ but no regressions.

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

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail blocked in 183259
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183259
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183259
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183259
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183259
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183259
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183259
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183259
 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-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-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-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-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-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-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-amd64-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-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-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-libvirt-qcow2 14 migrate-support-check        fail never pass

version targeted for testing:
 linux                ba7d997a2a29ee3fa766fee912c65796e0c21903
baseline version:
 linux                cbf3a2cb156a2c911d8f38d8247814b4c07f49a2

Last test of basis   183259  2023-10-04 02:30:05 Z    1 days
Testing same since   183265  2023-10-04 19:11:54 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Juntong Deng <juntong.deng@outlook.com>
  Linus Torvalds <torvalds@linux-foundation.org>
  Shuah Khan <skhan@linuxfoundation.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-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                               fail    
 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
   cbf3a2cb156a..ba7d997a2a29  ba7d997a2a29ee3fa766fee912c65796e0c21903 -> tested/linux-linus


From xen-devel-bounces@lists.xenproject.org Thu Oct 05 06:19:25 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 05 Oct 2023 06:19:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612840.952954 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoHhW-0002ut-Bb; Thu, 05 Oct 2023 06:19:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612840.952954; Thu, 05 Oct 2023 06:19: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 1qoHhW-0002um-7S; Thu, 05 Oct 2023 06:19:10 +0000
Received: by outflank-mailman (input) for mailman id 612840;
 Thu, 05 Oct 2023 06:19: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=fwj+=FT=suse.com=nik.borisov@srs-se1.protection.inumbo.net>)
 id 1qoHhU-0002ug-Pu
 for xen-devel@lists.xenproject.org; Thu, 05 Oct 2023 06:19:08 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur05on2060d.outbound.protection.outlook.com
 [2a01:111:f400:7d00::60d])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 164d86b3-6347-11ee-98d3-6d05b1d4d9a1;
 Thu, 05 Oct 2023 08:19:06 +0200 (CEST)
Received: from PA4PR04MB7790.eurprd04.prod.outlook.com (2603:10a6:102:cc::8)
 by DUZPR04MB9728.eurprd04.prod.outlook.com (2603:10a6:10:4e3::22) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.26; Thu, 5 Oct
 2023 06:19:03 +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.6838.033; Thu, 5 Oct 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>
X-Inumbo-ID: 164d86b3-6347-11ee-98d3-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Yv/kNufZmXcZxTGxRgZqNtctQV8VUPcVdEoY68FGu38JUA6BunUPcFTaaFFzBDhTctDpoS0J6byl/ymRN3TtrjyA71mCnROEP0LGvrCScz937jsq/g3+AIUTwcP4LpPo9UymGyTXdv837j4qP05fMC4kb8+uxB0TwDydb+cvpS4thDZtH1IrXCXV54vjDvhr8+runXsZw1HeACEcfT9l3G6XeB2CBqGKpDxSSV0YFftI/5BBOhRpYqv+FZW1FcgFhG73OdtkVvCSlGe+kKSd0NmGuJL3Lm290iBwND24aBDonL/tEva9UN8eMBMdZFnqWvJxN29WiyM5mwcCH+LZQA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=HLEQAnAtybvz4qYKw9pECyyfbHtkWTR7swM9+unnb8w=;
 b=VGFWtWbgE4Ei8POy1/17zNWjfnHrMypEktUnT0587W77c6/T6PrjiyiEG/h1iXHddIxFlW85zSLzIjqyKyQkZgTHlDrmRIaaDdypVdc03n5uZHjiDzdxtvuraUPcR+GcfYSbwOJALlh6EapNW4hITO9EC2RfO7245Nf7xhh7tyHlqvJ1uRa2OhnZKpMG7dnku1o3fVpJjcWDdviflUFN751pTZ/+ClSaDA6S6sg3yaGIhiDfiR8CAWgfJMfIoTuMBWXW964hF8TxoVR0P0BbLunbguQ59+qSxWjz2ZUnKAgT6TN2eqWCiN1qg2/+G6b5cUrBMhL4Pi7L1G7ForO14w==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=HLEQAnAtybvz4qYKw9pECyyfbHtkWTR7swM9+unnb8w=;
 b=W4MevTZ6YtluTwu+3auGo2SsmSLEaIEaTYJQtfgJTIfixytiH6jAuVZsaZ0fFqDqNxPBIisINJu12Dj7d5aZoYj6IxCCjRwjmJHk7BzVx8V6mQtEJ4BPKYEpE3NApWAAJA8u+HMCSjtVxQ/U6xE7SJ5h55BLoA5s38Nuh60Bk/C6vz6weAYiumimpZ+7qVdJ7oym4wNuNyPf0c1+FRivk/8qfnoEf2NqR8qyasUdI4qhUNBygZX3m5yfmLIJwfEj21OLTdpTuvKxDXVz8Tixcr1GmX/DHeLzWE9oYIJFWnvVYM21zn0cThHYzUROxTd+IT6rSwj37JNKe4Ygqy5tBA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <9b5ddb4e-12f1-4058-bcce-119d6ac4817c@suse.com>
Date: Thu, 5 Oct 2023 09:18:56 +0300
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v12 00/37] x86: enable FRED for x86-64
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: <20231003062458.23552-1-xin3.li@intel.com>
Content-Language: en-US
From: Nikolay Borisov <nik.borisov@suse.com>
In-Reply-To: <20231003062458.23552-1-xin3.li@intel.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: VI1PR0102CA0028.eurprd01.prod.exchangelabs.com
 (2603:10a6:802::41) To PA4PR04MB7790.eurprd04.prod.outlook.com
 (2603:10a6:102:cc::8)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: PA4PR04MB7790:EE_|DUZPR04MB9728:EE_
X-MS-Office365-Filtering-Correlation-Id: 0fb8d531-04d1-43b5-d333-08dbc56af851
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:
	TvB56ZyTvgf3qztSKR5fDlSPBaloYgo5RI0rfaw+srmCP8hiAlkGG82acncIGIA2Bw77GHMulFpENlNqV5QhkQ+k1Jb2e1WOXJm0X3KiF2dIgpqvX22/GnISdp0/HWvj6dBU0rKcAuAggiPwMtEw5ENwfR/i0vFuZYv4EkYyy/Bnqo5X37wC1Dvaa/J2amlwlLLpC9zZGpTXteyW/1l/rTyFgu+HRxrxjNWWtHZ0pfDgAEIlg44hdFw3PN0U+KwXHJuuAL9r2hClfBFwHe9+F6n5K4kCH4FwcKTzkGyJkjjOIBZmzPkwq5reiydc1rnPPlReS1Cs9D/zYnaOkqvrWJfLgtMO/DXS6T3Nu87JjZG0hOTyw9qG5tN1PaY/wdPixBMX2zFFb9IwmUVPtMqCQ9IPerWVBKpK3L9t/vPbnc20aVo6nZlHOn1AoHWPY8lQgD12oid3gkb4juX6WsnIblJP/fVnF/5tr4pdu0SyJNGnq51ZkpUJIwBRIJOQ9QGnTRUPVLiC4z6np4G5JwZGN48/XJ7gDll7R7bUyZJIEwrDHwPgbkNBALLIRKIQ2a1AF2FZk0ie36LX1KSgXGr1L+jmqTb4MJWSPftayfBR2rlSDF/qZ5VXyNOBWC6p9g9BZJfWJPnna/ALb14dN/bD3Q==
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)(136003)(346002)(396003)(39860400002)(366004)(376002)(230922051799003)(451199024)(64100799003)(186009)(1800799009)(4744005)(7416002)(2906002)(4326008)(5660300002)(8936002)(8676002)(31686004)(41300700001)(316002)(66946007)(31696002)(66476007)(38100700002)(66556008)(6512007)(478600001)(86362001)(6486002)(6666004)(2616005)(36756003)(6506007)(83380400001)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?eDJrWFNINWVqY2xhSVhPSGpRZlczSjdUdTZFclI0ZlYwZ3VUcWdGcmQ3RTIw?=
 =?utf-8?B?azM4OSsxVXlyZnZkTDZBMktkWjVaQUwxZFY3dlI5dmFOSHU3RzFQbURYZCt1?=
 =?utf-8?B?WTBJNno4QmtpQ3BDbmdmandHbmdSZFpvNVN4eWxTVEdud0k4dnpHcVJER1dv?=
 =?utf-8?B?aW5jZU1PNWNjSmFtdktweW50dktkT1Zna2dyem1pYUV6c291aGVBYmJQVUNX?=
 =?utf-8?B?bm9FeE92THF1WTF1aWFENWJTb0lSYStpOG5JVmcramNKZHFJUkc3VzVnT0Ni?=
 =?utf-8?B?K3Bpd3ovelptOXZUTmM3RDFXanZSbDIvREtpRXVFRnRkcU9HZitZK0JJQ2hz?=
 =?utf-8?B?VjQ4cFgvbUVROWhZZWVZNEFqNnpMWjYxUTdWMUdnbDJFU3p4VVVweTg2b3pE?=
 =?utf-8?B?NWdmemNwWkhtMGlBQkxYeDlXeWdLK1pCVmJhaHg1ZlVDNmx2eEpkMHZlWjRu?=
 =?utf-8?B?cC9kZjBTcHRvT2VWSFRBTm9xcE5POW9HMEJLTnRncEkrWnBaTGkwWGE2R3VY?=
 =?utf-8?B?clc2N2ZibEpmL0dXcWoyR1hWb3k3aEkxOU92eDhjY3pIbnpkUWgwTVlGa2Vl?=
 =?utf-8?B?QlBreEhIVDFKa0l3UFBUZkVnK2tmVitaRXN6eGprVHlOeDYvWVhqYjVvaXZ4?=
 =?utf-8?B?a2NqRFJxUzZiaTU0ZUdtZjk0RnJJR1hEZEtmMGl5Z3NuYjBRNXdQeUhkMUdw?=
 =?utf-8?B?aCt2eHNYam51RmZqRTBDTlZnSDhRYU1MVVVrT3BFVWJvNFRWelduREVWRE0z?=
 =?utf-8?B?ckNGZGVMTEpLUWFxaU5qeE1aekQ4aWlXQ25IR3hrRjZzVHVPNkVxV1o5bzVM?=
 =?utf-8?B?a2tkb2EycDhXQ0FnYUsxOHBOYWxXUlRoS0F1NWRhSi9LS1VnNE1wa1NkYllo?=
 =?utf-8?B?VHcvdHltVCtYY0NiL3l5a2pHNjI2d3BsYW5GSlhnQWJ2c0dFNzR1clJtUXh5?=
 =?utf-8?B?RUlhVDJOMW9JbGtnOUg3YitqRFkzZ1BiRFhxZVRmbmZwSXRqYTErdzQxcEdR?=
 =?utf-8?B?UUN3amU1ZzMxY3Z0VmMzWEN1M3lzWURiY0FCNjd2cWNTZENTNHRMeXFscjJ6?=
 =?utf-8?B?eTNybW00eE5pY0duOTJJaEtUUTBzZGlXZUJyUUVaQXl1dTErNXg5RlhZOEFH?=
 =?utf-8?B?R1o1U3U4R0U4WTN0TlhIckp3dk9VVkh5bTRNa2J6NlZvVXYyN2x0djRUVVlo?=
 =?utf-8?B?VFBjQm9QRDBhZlVFU0krUThtSXVobndJUDlIWnJDcGFFRm1jT2NtTmloa3VK?=
 =?utf-8?B?YXpkRUZvNEI5aE1RNkJESzc0WEEwbjJzQXJKTU11cUdOdFROaGt4VmRwazBr?=
 =?utf-8?B?OEtGZ0J6dmtSYUVSdVFuZnJPNDRaL3ArckkvRFhCVkFmMnQ2eGtaQlNNLzVI?=
 =?utf-8?B?aVNHN2poR2tBeGZGZnpWQWZ0Vm01UnV5YXc2ZC9mYWkvS1Nad3NJRmlEMUpI?=
 =?utf-8?B?RmdqSGwweDdyTC94UGM5MEVxUUw4elRDTjIvaGMrUnMyT2VtTzNVdTJkdW82?=
 =?utf-8?B?MWZQL09vR0FRSE5HRHZXdTVNWG9lWFZUblk1ZkthN2dsNzJ3N0ZWRndqUmZt?=
 =?utf-8?B?WjA3Rkl2MFRuSEdVNlFEU0U0RUZodlJwM2R1VGVnL25PZUFDcTNPek1heXY1?=
 =?utf-8?B?a09UclVHTjl6SFY4ZHJTTnBMVlo5aVEvWHVNOU1SUFcwdkNoUUJWQTB6U3Fl?=
 =?utf-8?B?WmF3cXYvQVBqQWptQ0hqWksrdU1zS1ZMemxNUmo5U1YraFNXZUxVMmFVUElI?=
 =?utf-8?B?TVNKdzJ2QnduWm9hUE9CNU1UMHc2ZFhaTDdSeWJvRVZwQ2tEVnlDYnVTaHRp?=
 =?utf-8?B?VzVLaXpoenlaUXN2V0hwSUoxOWl1aitaVlQwN2w4WUVpY3Zwc0JsNXdMZEZY?=
 =?utf-8?B?dUkrbVFsSktKem9oNTRkQk9xU0pxdVZpdTJ6SHgvSkNLRTVqR3hmUUoxYWgw?=
 =?utf-8?B?MW8wNk1FNkgxMkFHdkNTb3pVRHRkcXRzR013VWErTitRSU81VHZaZmZrN1pp?=
 =?utf-8?B?L0hBZmg5amhYei9DUTZidWxhOEVZeDRDRVFQUzkzcUw5LzV4cy9QWkVaUFB3?=
 =?utf-8?B?bXlSSzYyRVROa1NxVTZuMGlZZUdIcTRjbXNuTFNVV1dOVHdsL3NKTjNHZ0NH?=
 =?utf-8?B?YURKaVVpYlJlOFM2TlZaaHdXMzRuQXFGekRhbGh4QW42aW85UXpRMVIxK095?=
 =?utf-8?Q?0NgYcp/tjTFnH8wgk1jSYgXnGMKfIocAe2efW+ncX81R?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 0fb8d531-04d1-43b5-d333-08dbc56af851
X-MS-Exchange-CrossTenant-AuthSource: PA4PR04MB7790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Oct 2023 06:19:03.4302
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: NXcrgj4Wqi52/Gbs4JfTUBil1/wtGIPsCTvlqrdhrAqMjBDjJW1xND9HCJ9NS/CFpUzXhU633QGmKjtzzxs3rg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DUZPR04MB9728



On 3.10.23 г. 9:24 ч., Xin Li wrote:
> This patch set enables the Intel flexible return and event delivery
> (FRED) architecture for x86-64.
> 


Which tree is this based on now? I tried running 'b4 diff' but it 
complains it can't find some context around arch/x86/kernel/cpu/common.c 
. I have the tip tree updated.


> 


From xen-devel-bounces@lists.xenproject.org Thu Oct 05 06:32:46 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 05 Oct 2023 06:32:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612843.952963 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoHua-00066L-DS; Thu, 05 Oct 2023 06:32:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612843.952963; Thu, 05 Oct 2023 06: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 1qoHua-00066E-Af; Thu, 05 Oct 2023 06:32:40 +0000
Received: by outflank-mailman (input) for mailman id 612843;
 Thu, 05 Oct 2023 06:32: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=gGTv=FT=linaro.org=viresh.kumar@srs-se1.protection.inumbo.net>)
 id 1qoHuZ-000668-5A
 for xen-devel@lists.xenproject.org; Thu, 05 Oct 2023 06:32:39 +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 f894974e-6348-11ee-9b0d-b553b5be7939;
 Thu, 05 Oct 2023 08:32:36 +0200 (CEST)
Received: by mail-pf1-x431.google.com with SMTP id
 d2e1a72fcca58-690d2441b95so500358b3a.1
 for <xen-devel@lists.xenproject.org>; Wed, 04 Oct 2023 23:32:36 -0700 (PDT)
Received: from localhost ([122.172.81.92]) by smtp.gmail.com with ESMTPSA id
 e18-20020aa78c52000000b0068fb8080939sm592379pfd.65.2023.10.04.23.32.33
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 04 Oct 2023 23:32: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: f894974e-6348-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=linaro.org; s=google; t=1696487555; x=1697092355; 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=/5eX5GBp7k2hHn5lrQWKK4MymvEqMThCeZQ6rRZTrco=;
        b=aZvdvlGLjSdrMhuCNrAzrVYCODESBQyidWQ5YKiU6B4xF0ntpvdMfox/Oj9hQoaLqF
         yt7SAU45T4XrLZRfHq3+7Okno/UxgoTDLJmkaPcEd9lbMq891AxBSGZmOFb6JS/0km5O
         +fNtK8d5fZKXPlIPTgaNiN2m8zTcYX92deOoJInGWzyOvmKO49mokIaAZRTuMgJKN4g0
         HoNJSzoP9lAZQ6AsCVCdAbUXsWCSCChfI0zYJvJ8qOXdVElup35VGodEERM0JSwgZTcs
         uS0oT2nlvltOZ20bSChMZgNFL2AJfEXDo8+KjqdF0/aNBif8Tduow1LBuhCoIwTJxo2p
         uKnw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1696487555; x=1697092355;
        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=/5eX5GBp7k2hHn5lrQWKK4MymvEqMThCeZQ6rRZTrco=;
        b=ZIdv+/nA44xK6dbsD6PJvV28cm1DAVTVRyoPKQ6QNtNwyi8HNICvaTFS/iBIXGs6y7
         8q+hmvUg+GbwpA6PYMUTOMNe0teCQi+2Kx46qHBpwY4cPFXsEZ9wOJQi80SSJIwTu/BA
         sCy9t5l3mNME2Ajwej1XGBsa9k/swLlEVp+b4hr01fdltspmNiESJR1tM4nXFBx+EYJw
         R3BGFTKmScUZlLifR+/HDGXWv8oUtTVuwS8JlMWESYqpIcUtue0wCFJfrGIwb0tBmcqZ
         sAu439Szhfy7QxaONaWOJxDdXOeS+HSgHIjCJYZntTN+XR8eEKtytjEwQzPKd1vXwP3E
         9evw==
X-Gm-Message-State: AOJu0YzhcyuFRgV/zjrV3mDF+erqoxrqdRQuOm8tjKvxtDYnz7BAVMLe
	RCK5r68U1ehu1+2C1TyHZDKt+Q==
X-Google-Smtp-Source: AGHT+IGb+mCHo4FRpXitGXCKr5LQdAZTu+neO70o7JLurE2biwBEnclAQiw0CsTWJXIF841T9qLiXw==
X-Received: by 2002:a05:6a00:3a18:b0:691:27b:15b4 with SMTP id fj24-20020a056a003a1800b00691027b15b4mr820494pfb.5.1696487554588;
        Wed, 04 Oct 2023 23:32:34 -0700 (PDT)
Date: Thu, 5 Oct 2023 12:02:31 +0530
From: Viresh Kumar <viresh.kumar@linaro.org>
To: Juergen Gross <jgross@suse.com>
Cc: Stefano Stabellini <sstabellini@kernel.org>,
	Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>,
	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 2/2] xen: privcmd: Add support for ioeventfd
Message-ID: <20231005063231.vqwhfnlc64phwmto@vireshk-i7>
References: <cover.1693311370.git.viresh.kumar@linaro.org>
 <52b07a3861a34fb0deb6251bae8bd885815c6944.1693311370.git.viresh.kumar@linaro.org>
 <fb79fa9a-e91c-4bb7-8aee-c384b99df953@suse.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <fb79fa9a-e91c-4bb7-8aee-c384b99df953@suse.com>

On 29-09-23, 07:46, Juergen Gross wrote:
> On 29.08.23 14:29, Viresh Kumar wrote:
> > +static irqreturn_t ioeventfd_interrupt(int irq, void *dev_id)
> > +{
> > +	struct ioreq_port *port = dev_id;
> > +	struct privcmd_kernel_ioreq *kioreq = port->kioreq;
> > +	struct ioreq *ioreq = &kioreq->ioreq[port->vcpu];
> > +	struct privcmd_kernel_ioeventfd *kioeventfd;
> > +	unsigned int state = STATE_IOREQ_READY;
> > +
> > +	if (ioreq->state != STATE_IOREQ_READY ||
> > +	    ioreq->type != IOREQ_TYPE_COPY || ioreq->dir != IOREQ_WRITE)
> > +		return IRQ_NONE;
> > +
> > +	smp_mb();
> > +	ioreq->state = STATE_IOREQ_INPROCESS;
> > +
> > +	mutex_lock(&kioreq->lock);
> > +	list_for_each_entry(kioeventfd, &kioreq->ioeventfds, list) {
> > +		if (ioreq->addr == kioeventfd->addr + VIRTIO_MMIO_QUEUE_NOTIFY &&
> > +		    ioreq->size == kioeventfd->addr_len &&
> > +		    (ioreq->data & QUEUE_NOTIFY_VQ_MASK) == kioeventfd->vq) {
> > +			eventfd_signal(kioeventfd->eventfd, 1);
> > +			state = STATE_IORESP_READY;
> > +			break;
> > +		}
> > +	}
> > +	mutex_unlock(&kioreq->lock);
> > +
> > +	smp_mb();
> 
> Is this really needed after calling mutex_unlock()? I think you are trying to
> avoid any accesses to go past ioreq->state modification. If so, add a comment
> (either why you need the barrier, or that you don't need it due to the unlock).

Right, want all writes to finish before updating state.

> In general, shouldn't the state be checked and modified in the locked area?

The handler runs separately for each vcpu and shouldn't run in parallel for the
same vcpu. And so only one thread should ever be accessing ioreq port structure.

The lock is there to protect the ioeventfds list (as mentioned in struct
declaration) against parallel access, as threads for different vcpus may end up
accessing it simultaneously.

-- 
viresh


From xen-devel-bounces@lists.xenproject.org Thu Oct 05 07:22:16 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 05 Oct 2023 07:22:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612852.952973 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoIgM-0007UP-56; Thu, 05 Oct 2023 07:22:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612852.952973; Thu, 05 Oct 2023 07:22: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 1qoIgM-0007UI-2N; Thu, 05 Oct 2023 07:22:02 +0000
Received: by outflank-mailman (input) for mailman id 612852;
 Thu, 05 Oct 2023 07:22: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=/GPI=FT=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qoIgL-0007UC-13
 for xen-devel@lists.xenproject.org; Thu, 05 Oct 2023 07:22:01 +0000
Received: from mgamail.intel.com (mgamail.intel.com [192.198.163.7])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id dc2438de-634f-11ee-9b0d-b553b5be7939;
 Thu, 05 Oct 2023 09:21:56 +0200 (CEST)
Received: from orsmga003.jf.intel.com ([10.7.209.27])
 by fmvoesa101.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 05 Oct 2023 00:21:39 -0700
Received: from fmsmsx602.amr.corp.intel.com ([10.18.126.82])
 by orsmga003.jf.intel.com with ESMTP/TLS/AES256-GCM-SHA384;
 05 Oct 2023 00:21:38 -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; Thu, 5 Oct 2023 00:21:38 -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; Thu, 5 Oct 2023 00:21:38 -0700
Received: from NAM10-DM6-obe.outbound.protection.outlook.com (104.47.58.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; Thu, 5 Oct 2023 00:21:38 -0700
Received: from SA1PR11MB6734.namprd11.prod.outlook.com (2603:10b6:806:25d::22)
 by DS7PR11MB6151.namprd11.prod.outlook.com (2603:10b6:8:9c::12) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.29; Thu, 5 Oct
 2023 07:21:29 +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; Thu, 5 Oct 2023
 07:21: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: dc2438de-634f-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=1696490517; x=1728026517;
  h=from:to:cc:subject:date:message-id:references:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=l+KUCngkyx4Xn47J8ZIAf9ufOUPZQFuBvCf7z3BgsUw=;
  b=C+WiddTmauSCiz0aFaELy1P3dugfHflEvrPugdybfdTvRXJOqfs5EkgD
   w7Gbiw+bnKd1X8Ut49wq+PVgAlyVkvDK0ZuTmBxjH560yd7CKOxn81524
   fkYYwxokuBNH62owExHKS/gTSgr6N6OSB39v4PICa8eoflLHhRUMbInn5
   be260eRm6xO1zawbB4UWoHaKIj256cMD2aRVxG8rh54gdr99ZcbntDKCz
   /WU0+qrF3QMB7CffqHmwQnYlb5TpOR00TZsHjs5VusUJJ07GPSYd4ZnON
   9jSs+oodw8IEBIRVqc6VP1g0t4PJMdivO3D29aTzy46mvXtFTLc+CGwmN
   A==;
X-IronPort-AV: E=McAfee;i="6600,9927,10853"; a="4989435"
X-IronPort-AV: E=Sophos;i="6.03,202,1694761200"; 
   d="scan'208";a="4989435"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10853"; a="701541751"
X-IronPort-AV: E=Sophos;i="6.03,202,1694761200"; 
   d="scan'208";a="701541751"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=CEr2COyaTpLFS/pIFmGFo1/e2oIIkIcV+3xSAIEz0KD9DmRz93cbY0tsy/kNzBex5BX/fepvw5T4va3w64Pio1S62XWbRMeJTTqtIhIJHCTEBIWv8faSGPBLuRjiQYn7zQAj5RfnWTWZ9aLD37xIv6B56hCHHkcTNXOurhCGCIVW7HaMbCGZLIf/8PUhbaQ0pqPZ4MxKdLRI8zocHlzvDt+nfHsByeoQJ2w7MfrCbUDzH33LgW4lETop3u5wDOdUKrXhJJsXASHeUEdclFyg3XNENV3pSkbkkgccQwXXJxIKXCQKVipANt8ztLPLvS6vriy9HQUcs+SgzKHx8Psg9Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=l+KUCngkyx4Xn47J8ZIAf9ufOUPZQFuBvCf7z3BgsUw=;
 b=FmU6hv9P/mrGhhcOkKgPAcmL5uCm7qqC7ZN5Hjz5Pt57GVyW7lTeBJDIyRxOCDG1W7wJUENxh+mB8vkleCugppfdnx0psXg0/oRy/hAnRpFY8RPEHU7iH2sMR/SEAce/mCT8hbEkxgj/7LY3DLpY9Cl84N2qnyhXj102LUNGPjMK99vEzsqE8B8MK8FF0RJxEG/tV1/9m30Tn9rjRqwLtNo3Xjy8Ib0FwfTHATA5QqBMqLeRGEwIU/bFzOwYLPq3qQ0blNs2mR1UDLEDeCODrcB5F22H5zW3rRO+WMa/ONEdUWWq5Kpw5SJkdo7ry/fbpfnDBy4o4ZGN3XOc+Un2YA==
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 v12 00/37] x86: enable FRED for x86-64
Thread-Topic: [PATCH v12 00/37] x86: enable FRED for x86-64
Thread-Index: AQHZ9caENagGnRugfUWOoRzs4wEdL7A6vBYAgAAMCNA=
Date: Thu, 5 Oct 2023 07:21:29 +0000
Message-ID: <SA1PR11MB67345B6C16EEA16FEED714D2A8CAA@SA1PR11MB6734.namprd11.prod.outlook.com>
References: <20231003062458.23552-1-xin3.li@intel.com>
 <9b5ddb4e-12f1-4058-bcce-119d6ac4817c@suse.com>
In-Reply-To: <9b5ddb4e-12f1-4058-bcce-119d6ac4817c@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_|DS7PR11MB6151:EE_
x-ms-office365-filtering-correlation-id: a8cfe870-ff54-42a5-c796-08dbc573b18e
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: wnAjEeoibdnhFB0qD2X2MCZl8OJKdkKnXQTF+7evRGFnlf5gNiWssSRPy/hUg4gt6pt16EhETDBIkjuGqCq+b4a+1SO9Qtn5hbh2dMRvtmf+vFRUBJA4M2NRKCOTqsMnq7Ko1jpCdKLVwTzAUtPy3UN3H4iwnJvWK25v+Guei4W4s9cLoZTKHhsinIBg2+Du/SyEj7nbqxG3EApsQV3BH49tOd6VOu8XVXQnvFD2bWs+l+BanFDWrMoJs61ip+c63+ty1P2HK5OWEzAvlzCd7n7DrTSI/moNNdfzyn+lq8Pm9Pgq7Zt8SLUwKKu0VNgS1Za5EIqc5XjCx/yRAg1X0YCrRJSh7jsIPXNB2yj9lzojASC5l52rI9ImXvjVufyo/tBAFxLq8ph4S6brJbVSA9b/eYQIv1u3CAr31QZZ2nTceEtsKICIRfrxWjYcfn4mZoaH9PQ7+E/pPb7g3UYenFhkmTG2Ubq1uAxpaN9KWCuN0osQc2od26+72ZA9LrFOMpUHkcsiOm1l3g75UYpttTr0/ypromhRIHYnbopFsnE8FxRGcBJFOQD6yi5e47wF5G5dUAuLTHjbWbNCjDbeKSEK3RkbmESGlnjtkZof4lt3Vgo+ndTK5JlnTxoTMgXH
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)(136003)(396003)(346002)(39860400002)(366004)(376002)(230922051799003)(64100799003)(1800799009)(451199024)(186009)(38100700002)(55016003)(26005)(82960400001)(38070700005)(122000001)(33656002)(86362001)(83380400001)(8936002)(316002)(4326008)(64756008)(54906003)(8676002)(66446008)(5660300002)(41300700001)(66476007)(66556008)(52536014)(110136005)(4744005)(66946007)(2906002)(76116006)(7416002)(478600001)(71200400001)(9686003)(6506007)(7696005);DIR:OUT;SFP:1102;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: =?utf-8?B?YnlSRVpWbFlEUDY2aWNaUnlvUWxZMEpCb2F4MXg5aHAyYzJLQkRtYmpYZTUx?=
 =?utf-8?B?dWhFOFE3MndrS2RnNG1BVDcyNGcvbU5XRG9YWWVGeUthYjFLaWFwdHlyenFE?=
 =?utf-8?B?aE81RmpqNTN3NzY0cEwrM04xR3RLelVDZjc3OFdZTS96dENwQjBuaFhzZ1JH?=
 =?utf-8?B?RFlKN1VqNFNid0lOQU9KRlRVVDRNc3dzZmdBTGdXcjUybFE3cG1NRHZJZENt?=
 =?utf-8?B?YVlvQmxabnlIdkhCeXFqWVllY0lURmovQ3Z2ODF3RVI4ckF1c20vZFMrQXZZ?=
 =?utf-8?B?cE1vb2lYbEgyOU5EenRWZUtJSFdUTEpvNlB1MitiMVRxVU03VFFoU2tCRmtm?=
 =?utf-8?B?T25hTkZQNXU5TDFaRUJaRFNnczF1amFOYURZNmVsUmJTTlFsWG9Gdk4rMlBR?=
 =?utf-8?B?SG9DZExGWkpQcWRiOUtGdE9NM0RtanhPTExuczNEYjRqOFlhUlhYSGpVdjg0?=
 =?utf-8?B?TnRnYjE0bnpPM3Avb1dpVWFYekJCbDBkMkVOQm93R29WR0F5SFVSVzl4UUpi?=
 =?utf-8?B?blpRWUdPbW53anBJcTc3cUE4RlNCZkEzeUJoZ2FXMkdETEFnYWhpQ2RDR0xy?=
 =?utf-8?B?ZFVvenozZ0dFbnBGd3RCZk8xdVQwTXpJWmt2bnBDelhpVWVhVmNlWGJkUkl6?=
 =?utf-8?B?WkMzV3V5UlJVemFGREVIaWwvZmJ6R3lBeUdmRXExeDR3OTJjVlF0b3JvVnF2?=
 =?utf-8?B?bUtieVdDUWN2WDNZSEZ1d0l5VjJLRlVtRWRZN2ExbmpxUE5LaUJxV29nZTF1?=
 =?utf-8?B?T2V0TThqeXBXL1ZLd3FxMmV4Z1lkL3Y0Y0NPdjBwdjhGTThHYzZYRFhnSys1?=
 =?utf-8?B?VkJJaC9IOEQ1cENHb2NwbVFhQlQwTDdlZjdLVXorWlpSWnlCYk1qLytpNE9k?=
 =?utf-8?B?QVdZUkExOXNjbWh2V1ZhVkdWQUt2TVhqaE1xaElYeUkyWVRkNHkvcU9JOW0z?=
 =?utf-8?B?SmFGTEFaRlRVK2JyZmtXRFB1M2VkVVJrWnNEZjltbTVodWIxUnFZZ01NVHNq?=
 =?utf-8?B?VVJtTU14K2kxSVFFZzgvY05rZjBVcUpSbDdxamQ1VEYrQkJTT1Rtekw1YVpB?=
 =?utf-8?B?ejNUcGNUQ2lvaFdVbTVoTHZLL3FWY3o1cEFPUkpycTI1WFQrOGJSQWR0bXhr?=
 =?utf-8?B?Yld3NGFpUUczM1c3SDRXWWdTVXovOFIyZ1ZvcTk1S0VEMUg5b3RGb2RCcTZs?=
 =?utf-8?B?VStsS0xBem5DQ2JMUXBrN0lBNFRKdEVlTnJkaUJFRDJ1VDFZVHVrbitYVnFJ?=
 =?utf-8?B?cUFkVVNlQk1xQ0xyUG05TkliSjUyUFozQmNmMHliWmh4dWxrOXZ6TXRMbk1X?=
 =?utf-8?B?TlZJZXRDTHR3aEY5eVJIaEVxRGNROWNkdW1hcUVMMGxGWDdwT1pVZlFhYjJS?=
 =?utf-8?B?Y2J3cExKK0tFUzJjNU9pTEVkZlMzTE5iTmRzdG1QU0ZZdUkxMEZYaFQ3c1d3?=
 =?utf-8?B?cG1KMTVOUkZpenNNQks5Njg4dzllaWhheWJ0cUZQWS8xbTQxSHFxTXhQS0RS?=
 =?utf-8?B?VWpvblhyV0VROGRyVGxvRG91dWpyeWZGbzN1bWdDR1hxV0N3dW40emVJaytL?=
 =?utf-8?B?Ty9idVViVUVxbTBZRXdzcllYZ3Q2WWhUd3c4V0VkdE54Z3ZQcDhXQVZRNmtv?=
 =?utf-8?B?cm1pOGxpbGZycFJmdWlBTHpXOHlPdHVxVWdkS3V5MUh3MzlOWlprZjFmQVEy?=
 =?utf-8?B?enJ1V3AvaW4wbUUzWWNDU2QwaTIwdlo0SnpkclE0bDZSOVBTbXM5TlpUcmJF?=
 =?utf-8?B?b05BTldva0k2YnVuclhHYklhaTlHQ1BIdXBGNnVUYmlDa0cwUjk0OHN2YmdF?=
 =?utf-8?B?aGNnK3Btb0xtTlJ4V3BHeGUrQXNqRW9DSW1FTzhhZTJPeXEzNHcxcFJ5dzFs?=
 =?utf-8?B?VDZ4ZzV0OUcyVVA4REV2d3JiMTRmNGduRWo0dHJQUnBjZGpKeHVzN0hVMnlv?=
 =?utf-8?B?dXdnb3dlWXhSNkFGWDZOM3plbG0vV1JDTnNsN0FiK0JXT2NCRndpMHBmZC9U?=
 =?utf-8?B?YURJN0srK2hvK0ZKVnBGcmVqcUNYWWV4LzgrNkZnTDc5cEkrcE9sRGgzYTZq?=
 =?utf-8?B?Z3c1bFUyVlR1MElDNzRWallKbWxoTEZZR3NHWlZIMWJSU256ODNrSHZzQ00y?=
 =?utf-8?Q?RsJE=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: a8cfe870-ff54-42a5-c796-08dbc573b18e
X-MS-Exchange-CrossTenant-originalarrivaltime: 05 Oct 2023 07:21:29.3301
 (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: Y4yGboRDoJVw6HShIVcUIcawr+dMFUTXIsQsaxkZHnLIKZG+zkhFcXrwn4ABkUVLTS8xYyC58qBUJSDRze9mmQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR11MB6151
X-OriginatorOrg: intel.com

PiA+IFRoaXMgcGF0Y2ggc2V0IGVuYWJsZXMgdGhlIEludGVsIGZsZXhpYmxlIHJldHVybiBhbmQg
ZXZlbnQgZGVsaXZlcnkNCj4gPiAoRlJFRCkgYXJjaGl0ZWN0dXJlIGZvciB4ODYtNjQuDQo+ID4N
Cj4gDQo+IA0KPiBXaGljaCB0cmVlIGlzIHRoaXMgYmFzZWQgb24gbm93Pw0KPg0KDQpJdCB3YXMg
YmFzZWQgb24gdGhlIHRpcCBtYXN0ZXIgb24gdGhlIGRheSBJIHNlbnQgdGhlIHYxMiBwYXRjaCBz
ZXQsIGkuZS4sDQpNb25kYXkgbmlnaHQgaW4gdGhlIFVTIHdlc3QgY29hc3QuDQoNCj4gSSB0cmll
ZCBydW5uaW5nICdiNCBkaWZmJyBidXQgaXQgY29tcGxhaW5zIGl0IGNhbid0DQo+IGZpbmQgc29t
ZSBjb250ZXh0IGFyb3VuZCBhcmNoL3g4Ni9rZXJuZWwvY3B1L2NvbW1vbi5jIC4NCj4NCg0KV2hh
dCBkb2VzIGl0IGNvbXBsYWluPw0KDQo+IEkgaGF2ZSB0aGUgdGlwIHRyZWUgdXBkYXRlZC4NCg0K
SSBqdXN0IGRpZCBhIHJlYmFzZSBvbiB0aGUgbGF0ZXN0IHRpcCBtYXN0ZXIsIGFuZCBkaWQgZmlu
ZCBhIGJ1aWxkIGJ1Zw0KY2F1c2VkIGJ5Og0KDQpbUEFUQ0ggdjEyIDMzLzM3XSB4ODYvZW50cnk6
IEFkZCBmcmVkX2VudHJ5X2Zyb21fa3ZtKCkgZm9yIFZNWCB0byBoYW5kbGUgSVJRL05NSQ0KDQph
cyA8YXNtL2V4cG9ydC5oPiBpcyBkZXByZWNhdGVkIGJ5IDxsaW51eC9leHBvcnQuaD4geWVzdGVy
ZGF5Lg0KDQpBZnRlciBJIHJlcGxhY2VkIGl0LCBpdCBjb21waWxlcyBhbmQgYm9vdHMuICBXaGF0
IHNob3VsZCBJIGRvIG5vdz8NCg0KVGhhbmtzIQ0KICAgIFhpbg0K


From xen-devel-bounces@lists.xenproject.org Thu Oct 05 07:36:02 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 05 Oct 2023 07:36:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612855.952984 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoItp-0002Ni-DN; Thu, 05 Oct 2023 07:35:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612855.952984; Thu, 05 Oct 2023 07:35: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 1qoItp-0002Nb-9K; Thu, 05 Oct 2023 07:35:57 +0000
Received: by outflank-mailman (input) for mailman id 612855;
 Thu, 05 Oct 2023 07:35: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=sCsR=FT=arm.com=Luca.Fancellu@srs-se1.protection.inumbo.net>)
 id 1qoIto-0002NV-4S
 for xen-devel@lists.xenproject.org; Thu, 05 Oct 2023 07:35:56 +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 d014f05d-6351-11ee-98d3-6d05b1d4d9a1;
 Thu, 05 Oct 2023 09:35:53 +0200 (CEST)
Received: from DUZP191CA0010.EURP191.PROD.OUTLOOK.COM (2603:10a6:10:4f9::27)
 by PAXPR08MB6352.eurprd08.prod.outlook.com (2603:10a6:102:150::5) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.29; Thu, 5 Oct
 2023 07:35:49 +0000
Received: from DBAEUR03FT026.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:4f9:cafe::42) by DUZP191CA0010.outlook.office365.com
 (2603:10a6:10:4f9::27) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.37 via Frontend
 Transport; Thu, 5 Oct 2023 07:35:49 +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.6863.26 via Frontend Transport; Thu, 5 Oct 2023 07:35:49 +0000
Received: ("Tessian outbound 9aeaca65ec26:v211");
 Thu, 05 Oct 2023 07:35:48 +0000
Received: from e9d3a97c6a7a.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 AFED72F9-14D9-47AE-925E-E5364D26F7E8.1; 
 Thu, 05 Oct 2023 07:35:11 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id e9d3a97c6a7a.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Thu, 05 Oct 2023 07:35:11 +0000
Received: from AM0PR08MB3745.eurprd08.prod.outlook.com (2603:10a6:208:ff::27)
 by PAWPR08MB10307.eurprd08.prod.outlook.com (2603:10a6:102:366::8)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.23; Thu, 5 Oct
 2023 07:35:09 +0000
Received: from AM0PR08MB3745.eurprd08.prod.outlook.com
 ([fe80::7d2f:80d6:9244:3266]) by AM0PR08MB3745.eurprd08.prod.outlook.com
 ([fe80::7d2f:80d6:9244:3266%6]) with mapi id 15.20.6838.030; Thu, 5 Oct 2023
 07: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>
X-Inumbo-ID: d014f05d-6351-11ee-98d3-6d05b1d4d9a1
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=GYnfAiR3pmA3KweHEtsVK5AK5iTxpIKqAN6bUYybXMk=;
 b=2cBwPnFS70CLe65a1poncBUV8BlvzvwnVpb4D0awxJmjv2EFFnH6AQBryGbBnfD5E8y3tHzxiRbz100MO3asVQZg6/Ua+goSMS8hD2JWSlzNgchxDOoPLiDbnwwprNOuiBdqT4ytRj9JZz79Jlq+aZSr/epeaH0OYoxGqnFg4qg=
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: 70b76274c379ca08
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=FnvDTJDIGVXxX6xNW+frjtedo2ot2kBFOt9N1SYAELiWQlKRPNa4tEIMHUdXu8I/1/lWXOoObz7CEGtJGLnceudpCJZJNR6NwMLJDRifd2cjEFnEgrWd7ZIsr7XtYvXRefJSTEIyiDZRHEGcmtH0MXWPNQPVAQAJZF/O5uZEDw7QhtgwiZZy4VdwWrfbZ4DyNB6R/6SumlEVPihN2EUFWvbvz+ScVUZmIFEiyvYG01xssoDjmVQEBKd7WQLJhZ9LD8NhxQJQ2lsuEl7kIRc7WnEe+HonqLLditUmKf3lhgESOTPXp8krGdAk/edXT2YMhpXPfl1+8c4wBAnHP8o7xw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=GYnfAiR3pmA3KweHEtsVK5AK5iTxpIKqAN6bUYybXMk=;
 b=iHNWy2unilFLSId514HO+Oa4wfX1s5LgbCXPa2N8uKGfVZgA6I7gH7XAKL5jipy92EA/2pTTwsa/Tc3P1rxIn9TUhKdGQxKu3WckFzjDfW0WuGD4CpQ5RfGgJv2pjxSAf2cjfMsTL0devqnwUJhrRjCfep+NgyTXwwyQRtqYFByNzChMm+vytjjRJ8VdFYnCBg2IjDOHsU3EFXy/DRwtbzpfOnOFbFuxmk2qVLxn1ANLFP2DFgBc2+18u8sevoqTpHEK1Fdt5PZ31IweDiW4GGFSP+Sjp+pdKyH8AaR4mYJa4pxVfbMcoanyT+HzU0WBqbIYF1Sjy4BpTv5DQGUsHg==
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=GYnfAiR3pmA3KweHEtsVK5AK5iTxpIKqAN6bUYybXMk=;
 b=2cBwPnFS70CLe65a1poncBUV8BlvzvwnVpb4D0awxJmjv2EFFnH6AQBryGbBnfD5E8y3tHzxiRbz100MO3asVQZg6/Ua+goSMS8hD2JWSlzNgchxDOoPLiDbnwwprNOuiBdqT4ytRj9JZz79Jlq+aZSr/epeaH0OYoxGqnFg4qg=
From: Luca Fancellu <Luca.Fancellu@arm.com>
To: Stefano Stabellini <sstabellini@kernel.org>
CC: Nicola Vetrini <nicola.vetrini@bugseng.com>, Xen-devel
	<xen-devel@lists.xenproject.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>, Jan Beulich
	<jbeulich@suse.com>, =?utf-8?B?Um9nZXIgUGF1IE1vbm7DqQ==?=
	<roger.pau@citrix.com>, Henry Wang <Henry.Wang@arm.com>, Simone Ballarin
	<simone.ballarin@bugseng.com>, Doug Goldstein <cardoe@cardoe.com>, George
 Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>, Wei Liu
	<wl@xen.org>, Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [XEN PATCH] xen: Add SAF deviations for MISRA C:2012 Rule 7.1
Thread-Topic: [XEN PATCH] xen: Add SAF deviations for MISRA C:2012 Rule 7.1
Thread-Index: AQHZ9qj87vFsnMRst0ybMa+ffKOLU7A5Z4mAgAAGhgCAAAYzgIAA1KIAgACGqQA=
Date: Thu, 5 Oct 2023 07:35:06 +0000
Message-ID: <9DD525D9-DB6D-4888-9266-FB45906A0E0F@arm.com>
References:
 <338d8e574db943a86c7605e4c6d9a299d45f067d.1696347345.git.nicola.vetrini@bugseng.com>
 <alpine.DEB.2.22.394.2310031345190.2348112@ubuntu-linux-20-04-desktop>
 <e1736215-52ba-4737-9da3-8f1ba7e832a6@citrix.com>
 <DB96C095-5FAF-40A1-9CA8-002291AA1933@arm.com>
 <2894008e8f612296da84267346ae4240@bugseng.com>
 <B00BC78B-E707-4043-A0B4-D320C6717472@arm.com>
 <alpine.DEB.2.22.394.2310041625170.2348112@ubuntu-linux-20-04-desktop>
In-Reply-To:
 <alpine.DEB.2.22.394.2310041625170.2348112@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:
	AM0PR08MB3745:EE_|PAWPR08MB10307:EE_|DBAEUR03FT026:EE_|PAXPR08MB6352:EE_
X-MS-Office365-Filtering-Correlation-Id: 11feced9-53b5-41ff-17a7-08dbc575b20f
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:
 3vTvTCXeGHg2G/EU7i6qi0fSJGzJFlfOcnLstMaAAL5f2MmGPSqHCDl6ZG9owjAiOQruB7/4LftSVr96Ignp9aEUuf+AxlROBztqrr74uPBJ9b7qI1Ybst4wITlvSMtLjQBQUU7svhn78qni2h50gouP7gW4vPtQzV7b3T3QF8bPHWjXFBh4pcY7SYOu4lMxk8RtXaeIHBJ53AfJ0XLg4OREFXSTmeJwDrgYrz9c9bie/2rcWvcDt768UwD+TnSpMXzMseUqcc0L2MaVWfOMo9MOyN/LhAYEnSj+7WEybFkXWMhqNagQZqGQqj+jHLhdaahUgTMnmxgl6KxJqRwvskEdi7YDj/PrAfsd4o4IywvcK2SW9oEuDzWv4FWr9PpuVdvAY67uUz0/WEHRQyz1Des9+D7W76I81ptIaxDvMFWUb3gZ5ZzuhLCwJMUOFsbRWRzf8uokGxaKlUS6GlHMugvNNFj2E7Jo+1NmBQDw8N32e1b//nwW3tW2NZYPL85zogoB11E9lvcysQuhwCCizlWbLvqguttHzxsUvlMtzUog3LIF2WlcPRznrg5Y+s6cvl8KRqqkXH/xPhOca3WynepeddN3vr92BoUxunXhz5NT5+6aJ2FpZzFk855HILtPJk+PrE1BlT1o5xKfEGd8GQ==
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM0PR08MB3745.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(346002)(136003)(366004)(376002)(396003)(230922051799003)(186009)(64100799003)(451199024)(1800799009)(6512007)(6506007)(6486002)(478600001)(71200400001)(6666004)(4326008)(316002)(2616005)(66556008)(7416002)(6916009)(76116006)(26005)(41300700001)(5660300002)(66476007)(54906003)(36756003)(66946007)(8936002)(8676002)(91956017)(33656002)(64756008)(66446008)(38100700002)(83380400001)(86362001)(2906002)(122000001)(53546011)(38070700005)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <CB73C664B9E22D42A0563C16FF44D5DD@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAWPR08MB10307
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:
	f593da69-bebd-49af-1aff-08dbc57598c9
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	0EjMFqCcJdQeNDIgykgL0/72U2h1GhjPDl6hIRYzFc2OSHfQirKRFbmKMARxpZNqZqIwkX5nvhXxBvyid2/P86wdGVXeVKhcUbMkABbmi+usNDhZ+mgOm+Kkt2+Gefw7xtFjmUqm5+urVQy3NyN7Rq1MufTyHVcXq4N1AlQKxOpSSFPBgMgsBiOeVHTXJ8+5PtQqdlVeZC8WUDKh1I26XbtKJMGZV6vp3u1Xk8o8fW7FwokkdycX3q9V8rivBOCuWtiSTGwksII4wkOH50DdcVM+56Zm86lT38wilLDqUVlAnI/awHTp1MfzUxlCwRm5sEgQks1uepg2C/UqjlSmfeYMppaZE7zoQjIscy1R54uMhtJO0aiI6t/OeFbKhsEt+feR4Qv401NOz1lbgFRRRSC/aCRbbbNWTCVwxRyxvC5K0MygXQMivuoy6CozIsjAIT2VkrfvZkCyhH5sPPk3O0uYHplXthD/5uxaVJYziV3aW565Smt5bTPd1C9Z+poJWdMyjrHPv+75d+g5qZ8+XEKNTD6H2CGwCZ6RKod1aYM6YPM28u/iQNAkdcTyX3J3TY3FSZK3SGnCKJVi1bzgmYVcJD9Iw/ia42dOd+G2csZJ4ifJkP7o2knJOHKhMWUzfkhdmLOcVqqSGt+ziwLqsVNQoxrG9hetekWYkhhQfOhuRS5MXwgIWOxyYdrTw29WyoTYExRla3Zq19x5EFCP3D0bZpab6vLctd9c23LPj9otST+ZQJOM2YyTk7GgMWqB
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)(376002)(136003)(230922051799003)(451199024)(64100799003)(82310400011)(186009)(1800799009)(36840700001)(40470700004)(46966006)(83380400001)(40460700003)(336012)(36756003)(26005)(2616005)(107886003)(82740400003)(356005)(81166007)(36860700001)(40480700001)(47076005)(478600001)(6666004)(41300700001)(4326008)(5660300002)(8676002)(2906002)(6862004)(6486002)(6512007)(86362001)(33656002)(316002)(53546011)(54906003)(8936002)(6506007)(70206006)(70586007);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Oct 2023 07:35:49.1767
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 11feced9-53b5-41ff-17a7-08dbc575b20f
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: PAXPR08MB6352

DQoNCj4gT24gNSBPY3QgMjAyMywgYXQgMDA6MzIsIFN0ZWZhbm8gU3RhYmVsbGluaSA8c3N0YWJl
bGxpbmlAa2VybmVsLm9yZz4gd3JvdGU6DQo+IA0KPiBPbiBXZWQsIDQgT2N0IDIwMjMsIEx1Y2Eg
RmFuY2VsbHUgd3JvdGU6DQo+Pj4gT24gNCBPY3QgMjAyMywgYXQgMTE6MjksIE5pY29sYSBWZXRy
aW5pIDxuaWNvbGEudmV0cmluaUBidWdzZW5nLmNvbT4gd3JvdGU6DQo+Pj4gT24gMDQvMTAvMjAy
MyAxMjowNiwgTHVjYSBGYW5jZWxsdSB3cm90ZToNCj4+Pj4gSGkgTmljb2xhLA0KPj4+Pj4gT24g
NCBPY3QgMjAyMywgYXQgMTA6NTYsIGFuZHJldy5jb29wZXIzQGNpdHJpeC5jb20gd3JvdGU6DQo+
Pj4+PiBPbiAwMy8xMC8yMDIzIDk6NDYgcG0sIFN0ZWZhbm8gU3RhYmVsbGluaSB3cm90ZToNCj4+
Pj4+PiBPbiBUdWUsIDMgT2N0IDIwMjMsIE5pY29sYSBWZXRyaW5pIHdyb3RlOg0KPj4+Pj4+PiBB
cyBzcGVjaWZpZWQgaW4gcnVsZXMucnN0LCB0aGVzZSBjb25zdGFudHMgY2FuIGJlIHVzZWQNCj4+
Pj4+Pj4gaW4gdGhlIGNvZGUuDQo+Pj4+Pj4+IFRoZWlyIGRldmlhdGlvbiBpcyBub3cgYWNjb21w
bGlzaGVkIGJ5IHVzaW5nIGEgU0FGIGNvbW1lbnQsDQo+Pj4+Pj4+IHJhdGhlciB0aGFuIGFuIEVD
TEFJUiBjb25maWd1cmF0aW9uLg0KPj4+Pj4+PiBTaWduZWQtb2ZmLWJ5OiBOaWNvbGEgVmV0cmlu
aSA8bmljb2xhLnZldHJpbmlAYnVnc2VuZy5jb20+DQo+Pj4+Pj4gIlNBRiIgZGlzY3Vzc2lvbiBh
c2lkZSB0aGF0IGNhbiBiZSByZXNvbHZlZCBlbHNld2hlcmU6DQo+Pj4+Pj4gUmV2aWV3ZWQtYnk6
IFN0ZWZhbm8gU3RhYmVsbGluaSA8c3N0YWJlbGxpbmlAa2VybmVsLm9yZz4NCj4+Pj4+IFdlbGwg
bm8uICAiU0FGIiBhc2lkZSAoYW5kIFNBRiBkb2VzIG5lZWQgZml4aW5nIGJlZm9yZSByZXBvc3Rp
bmcgdGhpcyBwYXRjaCwgb3RoZXJ3aXNlIGl0J3MganVzdCB1bm5lY2Vzc2FyeSBjaHVybiksIC4u
Lg0KPj4+Pj4+PiBkaWZmIC0tZ2l0IGEveGVuL2FyY2gveDg2L2h2bS9zdm0vc3ZtLmggYi94ZW4v
YXJjaC94ODYvaHZtL3N2bS9zdm0uaA0KPj4+Pj4+PiBpbmRleCBkMmE3ODFmYzNmYjUuLmQwNjIz
YjcyY2NmYSAxMDA2NDQNCj4+Pj4+Pj4gLS0tIGEveGVuL2FyY2gveDg2L2h2bS9zdm0vc3ZtLmgN
Cj4+Pj4+Pj4gKysrIGIveGVuL2FyY2gveDg2L2h2bS9zdm0vc3ZtLmgNCj4+Pj4+Pj4gQEAgLTU3
LDE0ICs1NywyMyBAQCBzdGF0aWMgaW5saW5lIHZvaWQgc3ZtX2ludmxwZ2EodW5zaWduZWQgbG9u
ZyBsaW5lYXIsIHVpbnQzMl90IGFzaWQpDQo+Pj4+Pj4+ICNkZWZpbmUgSU5TVFJfSU5UMyBJTlNU
Ul9FTkMoWDg2RU1VTF9PUEMoIDAsIDB4Y2MpLCAwKQ0KPj4+Pj4+PiAjZGVmaW5lIElOU1RSX0lD
RUJQIElOU1RSX0VOQyhYODZFTVVMX09QQyggMCwgMHhmMSksIDApDQo+Pj4+Pj4+ICNkZWZpbmUg
SU5TVFJfSExUIElOU1RSX0VOQyhYODZFTVVMX09QQyggMCwgMHhmNCksIDApDQo+Pj4+Pj4+ICsv
KiBTQUYtMi1zYWZlICovDQo+Pj4+Pj4+ICNkZWZpbmUgSU5TVFJfWFNFVEJWIElOU1RSX0VOQyhY
ODZFTVVMX09QQygweDBmLCAweDAxKSwgMDMyMSkNCj4+Pj4+Pj4gKy8qIFNBRi0yLXNhZmUgKi8N
Cj4+Pj4+Pj4gI2RlZmluZSBJTlNUUl9WTVJVTiBJTlNUUl9FTkMoWDg2RU1VTF9PUEMoMHgwZiwg
MHgwMSksIDAzMzApDQo+Pj4+Pj4+ICsvKiBTQUYtMi1zYWZlICovDQo+Pj4+Pj4+ICNkZWZpbmUg
SU5TVFJfVk1DQUxMIElOU1RSX0VOQyhYODZFTVVMX09QQygweDBmLCAweDAxKSwgMDMzMSkNCj4+
Pj4+Pj4gKy8qIFNBRi0yLXNhZmUgKi8NCj4+Pj4+Pj4gI2RlZmluZSBJTlNUUl9WTUxPQUQgSU5T
VFJfRU5DKFg4NkVNVUxfT1BDKDB4MGYsIDB4MDEpLCAwMzMyKQ0KPj4+Pj4+PiArLyogU0FGLTIt
c2FmZSAqLw0KPj4+Pj4+PiAjZGVmaW5lIElOU1RSX1ZNU0FWRSBJTlNUUl9FTkMoWDg2RU1VTF9P
UEMoMHgwZiwgMHgwMSksIDAzMzMpDQo+Pj4+Pj4+ICsvKiBTQUYtMi1zYWZlICovDQo+Pj4+Pj4+
ICNkZWZpbmUgSU5TVFJfU1RHSSBJTlNUUl9FTkMoWDg2RU1VTF9PUEMoMHgwZiwgMHgwMSksIDAz
MzQpDQo+Pj4+Pj4+ICsvKiBTQUYtMi1zYWZlICovDQo+Pj4+Pj4+ICNkZWZpbmUgSU5TVFJfQ0xH
SSBJTlNUUl9FTkMoWDg2RU1VTF9PUEMoMHgwZiwgMHgwMSksIDAzMzUpDQo+Pj4+Pj4+ICsvKiBT
QUYtMi1zYWZlICovDQo+Pj4+Pj4+ICNkZWZpbmUgSU5TVFJfSU5WTFBHQSBJTlNUUl9FTkMoWDg2
RU1VTF9PUEMoMHgwZiwgMHgwMSksIDAzMzcpDQo+Pj4+Pj4+ICsvKiBTQUYtMi1zYWZlICovDQo+
Pj4+Pj4+ICNkZWZpbmUgSU5TVFJfUkRUU0NQIElOU1RSX0VOQyhYODZFTVVMX09QQygweDBmLCAw
eDAxKSwgMDM3MSkNCj4+Pj4+Pj4gI2RlZmluZSBJTlNUUl9JTlZEIElOU1RSX0VOQyhYODZFTVVM
X09QQygweDBmLCAweDA4KSwgMCkNCj4+Pj4+Pj4gI2RlZmluZSBJTlNUUl9XQklOVkQgSU5TVFJf
RU5DKFg4NkVNVUxfT1BDKDB4MGYsIDB4MDkpLCAwKQ0KPj4+Pj4gLi4uIHRoaXMgaGFzIGJyb2tl
biBhIHRhYnVsYXRlZCBzdHJ1Y3R1cmUgdG8gaGF2ZSBjb21tZW50cyBhaGVhZCBvZiBsaW5lcyB3
aXRoIG9jdGFsIG51bWJlcnMsIHdoaWxlIC4uLg0KPj4+Pj4+PiBkaWZmIC0tZ2l0IGEveGVuL2Fy
Y2gveDg2L2h2bS9zdm0vZW11bGF0ZS5jIGIveGVuL2FyY2gveDg2L2h2bS9zdm0vZW11bGF0ZS5j
DQo+Pj4+Pj4+IGluZGV4IGFhMmM2MWM0MzNiMy4uYzVlMzM0MWM2MzE2IDEwMDY0NA0KPj4+Pj4+
PiAtLS0gYS94ZW4vYXJjaC94ODYvaHZtL3N2bS9lbXVsYXRlLmMNCj4+Pj4+Pj4gKysrIGIveGVu
L2FyY2gveDg2L2h2bS9zdm0vZW11bGF0ZS5jDQo+Pj4+Pj4+IEBAIC05MCw5ICs5MCw5IEBAIHVu
c2lnbmVkIGludCBzdm1fZ2V0X2luc25fbGVuKHN0cnVjdCB2Y3B1ICp2LCB1bnNpZ25lZCBpbnQg
aW5zdHJfZW5jKQ0KPj4+Pj4+PiBpZiAoICFpbnN0cl9tb2RybSApDQo+Pj4+Pj4+IHJldHVybiBl
bXVsX2xlbjsNCj4+Pj4+Pj4gLSBpZiAoIG1vZHJtX21vZCA9PSBNQVNLX0VYVFIoaW5zdHJfbW9k
cm0sIDAzMDApICYmDQo+Pj4+Pj4+IC0gKG1vZHJtX3JlZyAmIDcpID09IE1BU0tfRVhUUihpbnN0
cl9tb2RybSwgMDA3MCkgJiYNCj4+Pj4+Pj4gLSAobW9kcm1fcm0gJiA3KSA9PSBNQVNLX0VYVFIo
aW5zdHJfbW9kcm0sIDAwMDcpICkNCj4+Pj4+Pj4gKyBpZiAoIG1vZHJtX21vZCA9PSBNQVNLX0VY
VFIoaW5zdHJfbW9kcm0sIDAzMDApICYmIC8qIFNBRi0yLXNhZmUgKi8NCj4+Pj4+Pj4gKyAobW9k
cm1fcmVnICYgNykgPT0gTUFTS19FWFRSKGluc3RyX21vZHJtLCAwMDcwKSAmJiAvKiBTQUYtMi1z
YWZlICovDQo+Pj4+Pj4+ICsgKG1vZHJtX3JtICYgNykgPT0gTUFTS19FWFRSKGluc3RyX21vZHJt
LCAwMDA3KSApIC8qIFNBRi0yLXNhZmUgKi8NCj4+Pj4+Pj4gcmV0dXJuIGVtdWxfbGVuOw0KPj4+
Pj4+PiB9DQo+Pj4+PiAuLi4gdGhpcyBoYXMgY29tbWVudHMgYXQgdGhlIGVuZCBvZiBsaW5lcyB3
aXRoIG9jdGFsIG51bWJlcnMuDQo+Pj4+PiBTbyB3aGljaCBpcyBpdD8NCj4+Pj4gSSBhZ3JlZSB3
aXRoIEFuZHJldyBoZXJlIGluIHRoaXMgc2Vuc2U6IHRoZSBpbi1jb2RlIGNvbW1lbnQgaXMNCj4+
Pj4gc3VwcG9zZWQgdG8gYmUgb24gdGhlIGxpbmUgKmJlZm9yZSogdGhlIHZpb2xhdGlvbiwNCj4+
Pj4gbm90IG9uIHRoZSBzYW1lIGxpbmUsIHNvIEnigJltIGFsc28gd29uZGVyaW5nIGhvdyBpdCBp
cyBmaXhpbmcgdGhlIHZlcnkNCj4+Pj4gZmlyc3QgdmlvbGF0aW9uLg0KPj4+PiBDaGVlcnMsDQo+
Pj4+IEx1Y2ENCj4+PiANCj4+IA0KPj4gSGkgTmljb2xhLA0KPj4gDQo+Pj4gQWN0dWFsbHkgaXQg
anVzdGlmaWVzIHdoYXQgaXMgb24gZWl0aGVyIHRoZSBwcmV2aW91cyBsaW5lIG9yIHRoZSBzYW1l
IGJlY2F1c2UgaXQncw0KPj4+IHRyYW5zbGF0ZWQgdG8gLyogLUU+IHNhZmUgTUMzUjEuUjcuMSAx
ICovLCB3aGVyZSB0aGUgbGFzdCBudW1iZXIgaXMgaG93IG1hbnkgbGluZXMgYmVzaWRlcw0KPj4+
IHRoZSBjdXJyZW50IG9uZSBhcmUgdG8gYmUgZGV2aWF0ZWQgKGUuZy4geW91IGNhbiBoYXZlIDAg
ZGV2aWF0ZSBvbmx5IHRoZSBjdXJyZW50IGxpbmUpLg0KPj4gDQo+PiBKdXN0IHRvIHVuZGVyc3Rh
bmQsIGRvZXMgdGhpcyB3YXk6DQo+PiANCj4+IDxsaW5lIEE+DQo+PiAvKiAtRT4gc2FmZSBNQzNS
MS5SNy4xIDEgKi8NCj4+IDxsaW5lIEI+DQo+PiANCj4+IEp1c3RpZmllcyBvbmx5IGxpbmUgQj8g
QmVjYXVzZSBJIHRob3VnaHQgc28sIGJ1dCBub3cgSSB3YW50IHRvIGJlIHN1cmUsIG90aGVyd2lz
ZSBpdCBkb2VzbuKAmXQgYWN0DQo+PiBhcyBpbnRlbmRlZC4NCj4+IA0KPj4gDQo+Pj4gTW9zdCBv
ZiB0aGUgdGltZXMgdGhlIGN1cnJlbnQgZm9ybSBpcyB3aGF0J3MgbmVlZGVkLCBhcyB5b3Ugd291
bGQgcHV0IHRoZSBjb21tZW50IG9uIGEgbGluZQ0KPj4+IG9mIGl0cyBvd24uIEluIHRoZSBjYXNl
IG9mIHRoZSBpZiB0aGF0IHdvdWxkIGJyZWFrIHRoZSBmb3JtYXR0aW5nLiBUaGUgZG93bnNpZGUg
b2YgZG9pbmcgdGhlIHNhbWUgdGhpbmcgb24gdGhlIHRhYmxlIGlzIHRoYXQgdGhlIGZpcnN0IGVu
dHJ5IG5vdCB0byBiZSBkZXZpYXRlZCB3b3VsZCBhY3R1YWxseSBiZSBkZXZpYXRlZC4NCj4+PiAN
Cj4+PiAjZGVmaW5lIElOU1RSX0lOVkQgSU5TVFJfRU5DKFg4NkVNVUxfT1BDKDB4MGYsIDB4MDgp
LCAwKQ0KPj4+IA0KPj4+IFRoaXMgbWF5IG5vdCBiZSBwcm9ibGVtYXRpYywgc2luY2UgMCBjb3Vs
ZCBiZSBjb25zaWRlcmVkIGFuIG9jdGFsIGNvbnN0YW50LCBidXQgaXMgYW4NCj4+PiBleGNlcHRp
b24gZXhwbGljaXRseSBsaXN0ZWQgaW4gdGhlIE1JU1JBIHJ1bGUuDQo+Pj4gRm9yIHRoZSBzYW1l
IHJlYXNvbiB0aGUgbGluZQ0KPj4+IA0KPj4+IHJldHVybiBlbXVsX2xlbjsNCj4+PiANCj4+PiBp
cyBkZXZpYXRlZCBieSB0aGUgYWJvdmUgY29tbWVudCwgYnV0IHB1dHRpbmcgYW4gb2N0YWwgY29u
c3RhbnQgdGhlcmUgd291bGQgZm9yIHN1cmUNCj4+PiBiZSB0aGUgcmVzdWx0IG9mIGEgZGVsaWJl
cmF0ZSBjaG9pY2UuIFRoZXJlJ3MgdGhlIGFsdGVybmF0aXZlIG9mOg0KPj4+IA0KPj4+ICAgICAg
ICAgICAgICAgICAgICAgICAgIC8qIFNBRi0yLXNhZmUgKi8NCj4+PiAgaWYgKCBtb2RybV9tb2Qg
ICAgICA9PSBNQVNLX0VYVFIoaW5zdHJfbW9kcm0sIDAzMDApICYmDQo+Pj4gICAgICAgICAgICAg
ICAgICAgICAgICAgLyogU0FGLTItc2FmZSAqLw0KPj4+ICAgICAgKG1vZHJtX3JlZyAmIDcpID09
IE1BU0tfRVhUUihpbnN0cl9tb2RybSwgMDA3MCkgJiYNCj4+PiAgICAgICAgICAgICAgICAgICAg
ICAgICAvKiBTQUYtMi1zYWZlICovDQo+Pj4gICAgICAobW9kcm1fcm0gJiA3KSAgPT0gTUFTS19F
WFRSKGluc3RyX21vZHJtLCAwMDA3KSApDQo+Pj4gDQo+Pj4gdG8gbWFrZSBpdCBjb25zaXN0ZW50
IHdpdGggdGhlIHRhYmxlIGFuZCBhdm9pZCBhbnkgImhpZGRlbiIgZGV2aWF0ZWQgbGluZSBvciwg
YWdhaW4sDQo+Pj4gdGhlIG1vZGlmaWNhdGlvbiBvZiB0aGUgdHJhbnNsYXRpb24gc2NyaXB0IHNv
IHRoYXQgaXQgZG9lc24ndCB1c2UgYSBmaXhlZCAiMSIgb2Zmc2V0LCB3aGljaA0KPj4+IGlzIG1v
dGl2YXRlZCBieSB3aGF0IHlvdSB3cm90ZSBvbiB0aGUgdGhyZWFkIG9mIHRoZSBtb2RpZmljYXRp
b24gb2YgeGVuX2FuYWx5c2lzLnB5Lg0KPj4gDQo+PiBGcm9tIHRoZSBkb2N1bWVudGF0aW9uOg0K
Pj4gDQo+PiAgICBJbiB0aGUgWGVuIGNvZGViYXNlLCB0aGVzZSB0YWdzIHdpbGwgYmUgdXNlZCB0
byBkb2N1bWVudCBhbmQgc3VwcHJlc3MgZmluZGluZ3M6DQo+PiANCj4+ICAgIC0gU0FGLVgtc2Fm
ZTogVGhpcyB0YWcgbWVhbnMgdGhhdCB0aGUgbmV4dCBsaW5lIG9mIGNvZGUgY29udGFpbnMgYSBm
aW5kaW5nLCBidXQNCj4+ICAgICAgdGhlIG5vbiBjb21wbGlhbmNlIHRvIHRoZSBjaGVja2VyIGlz
IGFuYWx5c2VkIGFuZCBkZW1vbnN0cmF0ZWQgdG8gYmUgc2FmZS4NCj4+IA0KPj4gSSB1bmRlcnN0
YW5kIHRoYXQgRWNsYWlyIGlzIGNhcGFibGUgb2Ygc3VwcHJlc3NpbmcgYWxzbyB0aGUgbGluZSBp
biB3aGljaCB0aGUgaW4tY29kZSBzdXBwcmVzc2lvbg0KPj4gY29tbWVudCByZXNpZGVzLCBidXQg
dGhlc2UgZ2VuZXJpYyBYZW4gaW4tY29kZSBzdXBwcmVzc2lvbiBjb21tZW50IGFyZSBtZWFudCB0
byBiZSB1c2VkDQo+PiBieSBtdWx0aXBsZSBzdGF0aWMgYW5hbHlzaXMgdG9vbHMgYW5kIG1hbnkg
b2YgdGhlbSBzdXBwcmVzcyBvbmx5IHRoZSBsaW5lIG5leHQgdG8gdGhlIGNvbW1lbnQNCj4+IChD
b3Zlcml0eSwgY3BwY2hlY2spLg0KPiANCj4gQXMgd2Ugc2VlIG1vcmUgcmVhbGlzdGljIGV4YW1w
bGVzLCBpdCB0dXJucyBvdXQgdGhhdCB0aGlzIGlzIGxpbWl0aW5nLg0KPiANCj4gR2l2ZW4gdGhh
dCB0aGUgU0FGLTItc2FmZSBjb21tZW50IG5lZWRzIHRvIGdvIHRocm91Z2ggeGVuLWFuYWx5c2lz
LnB5DQo+IHRyYW5zbGF0aW9ucyBhbnl3YXksIGNvdWxkIHdlIGltcGxlbWVudCBzb21ldGhpbmcg
YSBiaXQgbW9yZSBmbGV4aWJsZSBpbg0KPiB4ZW4tYW5hbHlzaXMucHk/DQo+IA0KPiBGb3IgaW5z
dGFuY2UsIGNvdWxkIHdlIGltcGxlbWVudCBhIGZvcm1hdCB3aXRoIHRoZSBudW1iZXIgb2YgbGlu
ZXMgb2YNCj4gY29kZSBsaWtlIHRoaXMgYXMgd2UgZGlzY3Vzc2VkIGluIGEgcHJldmlvdXMgdGhy
ZWFkPw0KPiANCj4gLyogU0FGLTItc2FmZSBzdGFydCAqLw0KPiBpZiAoIG1vZHJtX21vZCAgICAg
ID09IE1BU0tfRVhUUihpbnN0cl9tb2RybSwgMDMwMCkgJiYNCj4gICAgKG1vZHJtX3JlZyAmIDcp
ID09IE1BU0tfRVhUUihpbnN0cl9tb2RybSwgMDA3MCkgJiYNCj4gICAgKG1vZHJtX3JtICYgNykg
ID09IE1BU0tfRVhUUihpbnN0cl9tb2RybSwgMDAwNykgKQ0KPiAvKiBTQUYtMi1zYWZlIGVuZCAq
Lw0KPiANCj4gRmlyc3RseSwgbGV0IGFzayBBbmRyZXcsIGRvIHlvdSBwcmVmZXIgdGhpcz8NCj4g
DQo+IA0KPiBBbmQgYWxzbyB0aGlzIHNlY29uZCBmb3JtYXQ6DQo+IA0KPiBpZiAoIG1vZHJtX21v
ZCAgICAgID09IE1BU0tfRVhUUihpbnN0cl9tb2RybSwgMDMwMCkgJiYgLyogU0FGLTItc2FmZSAq
Lw0KPiAgICAobW9kcm1fcmVnICYgNykgPT0gTUFTS19FWFRSKGluc3RyX21vZHJtLCAwMDcwKSAm
JiAvKiBTQUYtMi1zYWZlICovDQo+ICAgIChtb2RybV9ybSAmIDcpICA9PSBNQVNLX0VYVFIoaW5z
dHJfbW9kcm0sIDAwMDcpICkgLyogU0FGLTItc2FmZSAqLw0KPiANCj4gDQo+IENvdWxkIHdlIGlt
cGxlbWVudCBpbiB4ZW4tYW5hbHlzaXMucHkgYSBjb252ZXJzaW9uIHRoYXQgd291bGQgdHVybiB0
aGUNCj4gdHdvIGZvcm1hdHMgYWJvdmUgdGhhdCBhcmUgbm90IHVuZGVyc3Rvb2QgYnkgY3BwY2hl
Y2sgaW50bzoNCj4gDQo+IC8qIGNwcGNoZWNrIHRhZyAqLw0KPiBpZiAoIG1vZHJtX21vZCAgICAg
ID09IE1BU0tfRVhUUihpbnN0cl9tb2RybSwgMDMwMCkgJiYNCj4gLyogY3BwY2hlY2sgdGFnICov
DQo+ICAgIChtb2RybV9yZWcgJiA3KSA9PSBNQVNLX0VYVFIoaW5zdHJfbW9kcm0sIDAwNzApICYm
DQo+IC8qIGNwcGNoZWNrIHRhZyAqLw0KPiAgICAobW9kcm1fcm0gJiA3KSAgPT0gTUFTS19FWFRS
KGluc3RyX21vZHJtLCAwMDA3KSApDQo+IA0KPiBPciB0aGlzIGlzIGEgcHJvYmxlbSBiZWNhdXNl
IGl0IHdvdWxkIGVuZCB1cCBjaGFuZ2luZyBsaW5lcyBvZiBjb2RlDQo+IG51bWJlcnMgaW4gdGhl
IHNvdXJjZSBmaWxlPw0KDQpZZXMgdGhpcyBpcyB0aGUgcmVhbCBpc3N1ZSB3aHkgd2UgZGlkbuKA
mXQgZG8gdGhlIC8qIC4uLiBzdGFydCAqLyBjb2RlIC8qIC4uLiBlbmQgKi8NCg0KDQo+IA0KPiBJ
ZiB3ZSBjYW4gaGlkZSB0aGUgInVnbGluZXNzIiBiZWhpbmQgdGhlIHhlbi1hbmFseXNpcyBjb252
ZXJzaW9uIHRvb2wgd2UNCj4gY291bGQgaGF2ZSBhIGNsZWFuIGNvZGViYXNlIGFuZCBzdGlsbCBi
ZSBjb21wYXRpYmxlIHdpdGggbXVsdGlwbGUgdG9vbHMuDQoNCg0K


From xen-devel-bounces@lists.xenproject.org Thu Oct 05 07:44:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 05 Oct 2023 07:44:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612860.952993 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoJ2O-0004uX-AK; Thu, 05 Oct 2023 07:44:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612860.952993; Thu, 05 Oct 2023 07:44: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 1qoJ2O-0004uQ-7j; Thu, 05 Oct 2023 07:44:48 +0000
Received: by outflank-mailman (input) for mailman id 612860;
 Thu, 05 Oct 2023 07:44: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=sCsR=FT=arm.com=Luca.Fancellu@srs-se1.protection.inumbo.net>)
 id 1qoJ2M-0004uK-Io
 for xen-devel@lists.xenproject.org; Thu, 05 Oct 2023 07:44:46 +0000
Received: from EUR03-DBA-obe.outbound.protection.outlook.com
 (mail-dbaeur03on2062a.outbound.protection.outlook.com
 [2a01:111:f400:fe1a::62a])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 0d5a67cc-6353-11ee-98d3-6d05b1d4d9a1;
 Thu, 05 Oct 2023 09:44:45 +0200 (CEST)
Received: from AS8PR04CA0048.eurprd04.prod.outlook.com (2603:10a6:20b:312::23)
 by AS8PR08MB9977.eurprd08.prod.outlook.com (2603:10a6:20b:636::8)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.22; Thu, 5 Oct
 2023 07:44:42 +0000
Received: from AM7EUR03FT025.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:20b:312:cafe::d6) by AS8PR04CA0048.outlook.office365.com
 (2603:10a6:20b:312::23) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.35 via Frontend
 Transport; Thu, 5 Oct 2023 07:44:42 +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.24 via Frontend Transport; Thu, 5 Oct 2023 07:44:42 +0000
Received: ("Tessian outbound d219f9a4f5c9:v211");
 Thu, 05 Oct 2023 07:44:41 +0000
Received: from 0c65e131906d.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 2C987B6E-2CBC-48DD-A571-E0C11295DD70.1; 
 Thu, 05 Oct 2023 07:43:55 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 0c65e131906d.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Thu, 05 Oct 2023 07:43:55 +0000
Received: from AM0PR08MB3745.eurprd08.prod.outlook.com (2603:10a6:208:ff::27)
 by AS2PR08MB9269.eurprd08.prod.outlook.com (2603:10a6:20b:59e::8)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.33; Thu, 5 Oct
 2023 07:43:51 +0000
Received: from AM0PR08MB3745.eurprd08.prod.outlook.com
 ([fe80::7d2f:80d6:9244:3266]) by AM0PR08MB3745.eurprd08.prod.outlook.com
 ([fe80::7d2f:80d6:9244:3266%6]) with mapi id 15.20.6838.030; Thu, 5 Oct 2023
 07:43: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: 0d5a67cc-6353-11ee-98d3-6d05b1d4d9a1
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=MDyAJYxtKytiblXKoG464QgdaCKUcx0b2MM6mQniOAE=;
 b=fKVlgi5M90ZYWK6en6y4vrwrJYypYPjVW7M86P9BhS0YBekFvu1ygoJ5o7hv8kT5KNAiG2dtQUPBBFrY+RpIvvf+AH7T1UfrlHCMkc7KCkKNR5F+/TQrTawmKMkE7yX52xaJQxmRM+IiKnescRUi4ptteeOftUq5Q/Jt0ICXhIA=
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: 32d1ea1f3eb415bb
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Iw+aGVnr6imFOMbRA+27bKVsW+EC0VMudSDxvvJf98xv4tb/DMlQQn/bOWU/ot1o9OLaLOfxEaLWcfiMyyREVgweigKQ9fOqYO8fXt5ck4P+4+wh6AlNxXE83TeU5Mj6wLbWmRjvHW1YvQfuzFsYIQYhOLk4UYGha/lwfsETi+nbNQdKpVzOXWmXkNDXm5lOHZFjamV+QI5J/m1zUesLHarNM+Ma6BbIhuDzuLNOIjmJogNLBN8Qoq7HLu821v6hSw0hYdiagYpoJjC0NRgCYHa5G52SBFz++bC0KxduLb7CoEHam7Z3YtDsOJ205yYdj32SmexPHVrjmgL40jewGQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=MDyAJYxtKytiblXKoG464QgdaCKUcx0b2MM6mQniOAE=;
 b=JKNQZo09EcvavQWWKfNlAQBO2qxhjBOYpDdm2zmwjlCgWFSwF8HI4oI1Cllus3rFk1aV+/q3sGcEFBW6vArzMyTBCBXuadOTEphhzheq8/4w5f0evBJ6tqS1wj6auYsIitKQiE1J61iH4yYrCyOdBih5VUIyg0A3hM9dGlGwYajbOESjoOGCzaarpAe/LSYx8KG+i6VHfq2TNEbzEutUHR6X2NEyVOW5anlJtUXBfI9o6W84kBbPANGPSKl2ZPABdtDrb77QWXrIb5NZ781L0/1sCi7EMNj2oU9gwEgoGzeQXvgs5sWW69BIyFC+mW5JajmMmPkQ4beUJmPcl1/UAQ==
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=MDyAJYxtKytiblXKoG464QgdaCKUcx0b2MM6mQniOAE=;
 b=fKVlgi5M90ZYWK6en6y4vrwrJYypYPjVW7M86P9BhS0YBekFvu1ygoJ5o7hv8kT5KNAiG2dtQUPBBFrY+RpIvvf+AH7T1UfrlHCMkc7KCkKNR5F+/TQrTawmKMkE7yX52xaJQxmRM+IiKnescRUi4ptteeOftUq5Q/Jt0ICXhIA=
From: Luca Fancellu <Luca.Fancellu@arm.com>
To: Stefano Stabellini <sstabellini@kernel.org>
CC: Jan Beulich <jbeulich@suse.com>, =?utf-8?B?Um9nZXIgUGF1IE1vbm7DqQ==?=
	<roger.pau@citrix.com>, "andrew.cooper3@citrix.com"
	<andrew.cooper3@citrix.com>, Bertrand Marquis <Bertrand.Marquis@arm.com>,
	"julien@xen.org" <julien@xen.org>, "george.dunlap@citrix.com"
	<george.dunlap@citrix.com>, "xen-devel@lists.xenproject.org"
	<xen-devel@lists.xenproject.org>
Subject: Re: SAF-x-safe rename
Thread-Topic: SAF-x-safe rename
Thread-Index: AQHZ9x0f2i/5rB9iCkSEJyJjGzwZKrA60RYA
Date: Thu, 5 Oct 2023 07:43:51 +0000
Message-ID: <9CF5DF50-B857-4B1D-A210-E6355492CC3B@arm.com>
References:
 <alpine.DEB.2.22.394.2310041633080.2348112@ubuntu-linux-20-04-desktop>
In-Reply-To:
 <alpine.DEB.2.22.394.2310041633080.2348112@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:
	AM0PR08MB3745:EE_|AS2PR08MB9269:EE_|AM7EUR03FT025:EE_|AS8PR08MB9977:EE_
X-MS-Office365-Filtering-Correlation-Id: f5dbd1f9-fbe7-4380-4150-08dbc576efb7
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:
 nQQw93oj/xaVjcCnxWqavqCAeBoKt0VcJjtLKGnZ+9PzucPp46PiEsw/fJtoVQDEtAhh+arqoEl0m6r05qfteCi1LP4mYc5aZUqHY2jmh95mEh2yEghwqSNMUEKrBLX4KrUmjO7X7cVUDKlqyLXtzlbP0biC59YfdCjCBCpr4BTFOAa5WvHOakR5YhHdqdlPkoKGXTNWOQbptLIISBiUPV10y91P6nLQUv/xQW2zx6/CTuPdDNDqKlBIV46mc2oyyoY0RBV9M7HFg2tq9XYOzZ4TRsPf/MEHxG5DLmKN/yPzTJ4J2bik01auSDmZiJWoFL/lHS7WGaHfTNxo1g8z9ZopNR71HLofASV3xvgbBBWc1l18nvt4oZ4eK5zherfquan+yfsBV5wAkoFtJXv7Wo45GvUuelPYGBB/IjWsmyggU5XgxTxCi5sgRC+9GEQ86w+C0GnHyGifrFjIUuiA5NswKlVxusT/09Lsb1n9OwibH/EKfesZO1o4B2FQrCPuWcS1oxzBzbcMb57yoBCBSqmqNsaLaaPR8Yn0yhD0rffmf7e/Ru048jHeHSzNE6wEy8sK/cMYuoBnPvX+pRYo8VBVxM/ZYhvM5Omdd2MZff/kw5ddpvuWKHbBeZgn9Vpm
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM0PR08MB3745.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(366004)(396003)(346002)(136003)(376002)(230922051799003)(186009)(1800799009)(451199024)(64100799003)(26005)(2616005)(71200400001)(83380400001)(64756008)(4326008)(33656002)(41300700001)(5660300002)(8936002)(54906003)(66556008)(66446008)(66476007)(66946007)(6916009)(8676002)(316002)(91956017)(2906002)(76116006)(478600001)(6512007)(6506007)(6486002)(53546011)(966005)(36756003)(38070700005)(38100700002)(122000001)(86362001)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <998CC4F72A4964469698ED94D60E4E15@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS2PR08MB9269
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:
	a0c4c1ed-692a-4995-94c9-08dbc576d154
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	Au1iD+xvZ3fOtqdEmg3zf8S5DZ1uCnUe2xFtAqMZysNzoYyWuBfau26ubh1hNlpvpwKpWJbq2A2YuBTR5p7B4QE+9UDMC3/RLS7zOC7hieFTsPqOufW06AbaeLekKKpTE7MRlEcWaEnPaeI6qu4jbdMh6DFofGXXPL9IcQR8T+wW4J8sHcQifSp4FExkOltXXc5hPiyZI/3TsRiMdKM1zTbKTHpP7l4r6YDTzj9fLCCnVzM+cGN6m84gLquFW9VPa0puH0bAcEYP7qlPW+9MvQx6tGGqhsMFEGBQ3G/LJmzXwGxItBxqRgh3jv9vOh0/OjYQ/xyAsTrwyRrcLOUIJmaZmUz8ZQI3SNYq/NQQNbAVfquU20SmncW/X9H2Cj1YEJ/H/BaFJvp4bjwks9Hh5TDrYOJiE6N1soRMx69gqFU1QB4DkZftZx6abhFgTOhru4+/QSY2aHc74eBtTR0g3BwkhUsQ5rI+nxP7LJ+Pu1NwzOxdsvsjFJbL9jLg8xQkEPvDtL3kcLvBHe0/RpKqSIUONs5uU6mT8cyFIBuyGsUYxdwbU/eLTn1Ae3EOGGX3UP8dr0plGJNoClMd5vBNSgSeuHUd3s+xiP12/b26kKXZd6F1ZrW/RTYqo5OKUVCibnkBDaDdSCmkybWP5FFAAIM5GgVo8ZY7n0T8K9Ec7pO/XWPzIlAwKtCVLfrhYnx0C6x0v++4vvES1gNapuTC2eo3Ja/7wT+MRjo6B4abJUM=
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)(451199024)(64100799003)(186009)(82310400011)(1800799009)(36840700001)(46966006)(40470700004)(336012)(6512007)(40460700003)(40480700001)(81166007)(6506007)(966005)(6486002)(478600001)(83380400001)(47076005)(86362001)(356005)(53546011)(82740400003)(36860700001)(8936002)(41300700001)(2616005)(26005)(4326008)(70206006)(2906002)(8676002)(6862004)(5660300002)(316002)(70586007)(54906003)(36756003)(33656002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Oct 2023 07:44:42.1165
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: f5dbd1f9-fbe7-4380-4150-08dbc576efb7
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: AS8PR08MB9977

DQoNCj4gT24gNSBPY3QgMjAyMywgYXQgMDA6NDYsIFN0ZWZhbm8gU3RhYmVsbGluaSA8c3N0YWJl
bGxpbmlAa2VybmVsLm9yZz4gd3JvdGU6DQo+IA0KPiBIaSBNSVNSQSBDIHdvcmtpbmcgZ3JvdXAg
KEphbiwgUm9nZXIsIEFuZHJldywgSnVsaWVuLCBCZXJ0cmFuZCwgR2VvcmdlKQ0KPiANCj4gaW4g
YSByZWNlbnQgdGhyZWFkIEFuZHJldyBwb2ludGVkIG91dCB0aGF0IHRoZSBTQUYtMi1zYWZlIHRh
ZyBpcw0KPiBjb25mdXNpbmcgYW5kIHJlcXVlc3RlZCBhIHJlbmFtZToNCj4gaHR0cHM6Ly9tYXJj
LmluZm8vP2w9eGVuLWRldmVsJm09MTY5NjM0OTcwODIxMjAyDQo+IA0KPiBBcyBkb2N1bWVudGVk
IGJ5IGRvY3MvbWlzcmEvZG9jdW1lbnRpbmctdmlvbGF0aW9ucy5yc3Q6DQo+IA0KPiAtIFNBRi1Y
LXNhZmU6IFRoaXMgdGFnIG1lYW5zIHRoYXQgdGhlIG5leHQgbGluZSBvZiBjb2RlIGNvbnRhaW5z
IGEgZmluZGluZywgYnV0DQo+ICAgdGhlIG5vbiBjb21wbGlhbmNlIHRvIHRoZSBjaGVja2VyIGlz
IGFuYWx5c2VkIGFuZCBkZW1vbnN0cmF0ZWQgdG8gYmUgc2FmZS4NCj4gLSBTQUYtWC1mYWxzZS1w
b3NpdGl2ZS08dG9vbD46IFRoaXMgdGFnIG1lYW5zIHRoYXQgdGhlIG5leHQgbGluZSBvZiBjb2Rl
DQo+ICAgY29udGFpbnMgYSBmaW5kaW5nLCBidXQgdGhlIGZpbmRpbmcgaXMgYSBidWcgb2YgdGhl
IHRvb2wuDQo+IA0KPiANCj4gVG9kYXkgd2UgaGF2ZSBhbHJlYWR5IDI4IGluc3RhbmNlcyBvZiBT
QUYgdGFncyBpbiB0aGUgWGVuIGNvZGViYXNlLg0KPiANCj4gDQo+IEFuZHJldyBzdWdnZXN0ZWQg
IkFOQUxZU0lTIiBpbnN0ZWFkIG9mIFNBRiBzbyBJIHdvdWxkIGltYWdpbmU6DQo+IC0gQU5BTFlT
SVMtWC1zYWZlDQo+IC0gQU5BTFlTSVMtWC1mYWxzZS1wb3NpdGl2ZS08dG9vbD4NCj4gDQo+IElm
IHdlIHJlYWxseSB3YW50IGEgcmVuYW1lIEkgc3VnZ2VzdCB0byByZW5hbWUgU0FGIHRvIFNBRkU6
DQo+IC0gU0FGRS1YLXNhZmUNCj4gLSBTQUZFLVgtZmFsc2UtcG9zaXRpdmUtPHRvb2w+DQo+IA0K
PiBPciBtYXliZSBNSVNSQToNCj4gLSBNSVNSQS1YLXNhZmUNCj4gLSBNSVNSQS1YLWZhbHNlLXBv
c2l0aXZlLTx0b29sPg0KPiANCj4gQnV0IEkgYWN0dWFsbHkgcHJlZmVyIHRvIGtlZXAgdGhlIHRh
ZyBhcyBpdCBpcyB0b2RheS4NCg0KV2UgY2hvc2UgYSBnZW5lcmljIG5hbWUgaW5zdGVhZCBvZiBN
SVNSQSBiZWNhdXNlIHRoZSB0YWcgY2FuIHBvdGVudGlhbGx5IHN1cHByZXNzIGZpbmRpbmdzDQpv
ZiBhbnkgY2hlY2tlciwgaW5jbHVkaW5nIE1JU1JBIGNoZWNrZXIuDQoNCklmIFNBRi0qIGlzIGNv
bmZ1c2luZywgd2hhdCBhYm91dCBGVVNBLSogPw0KDQpBbnl3YXkgSeKAmW0gdGhpbmtpbmcgdGhh
dCBldmVyeSBuYW1lIHdlIGNvdWxkIGNvbWUgdXAgd2lsbCBiZSBjb25mdXNpbmcgYXQgZmlyc3Qs
IGltcHJvdmluZyB0aGUNCmRvY3VtZW50YXRpb24gd291bGQgbWl0aWdhdGUgaXQgKGJ5IGltcHJv
dmluZyBJIG1lYW4gdG8gaW1wcm92ZSB0aGUgZnJ1aXRpb24gb2YgaXQsIGZvciBleGFtcGxlIGEN
ClJlYWQgdGhlIGRvY3MgZG9jdW1lbnRhdGlvbiBoYXMgdGhlIHNlYXJjaCBiYXIsIGEgcXVpY2sg
Y29weSBwYXN0ZSBvZiBTQUYtIHdvdWxkIG1ha2UgdGhlDQpkb2N1bWVudGluZy12aW9sYXRpb25z
IHBhZ2UgdmlzaWJsZS4pDQoNCj4gDQo+IA0KPiBJZiB5b3UgaGF2ZSBhbnkgbmFtaW5nIHN1Z2dl
c3Rpb25zIHBsZWFzZSBsZXQgbWUga25vdyBieSBPY3QgMTEuIEFmdGVyDQo+IHRoYXQsIEkgcGxh
biB0byBydW4gYSBEb29kbGUgcG9sbCB0byBjaGVjayB0aGUgcHJlZmVyZW5jZSBvZiB0aGUgZ3Jv
dXAuDQo+IA0KPiBDaGVlcnMsDQo+IA0KPiBTdGVmYW5vDQo+IA0KDQo=


From xen-devel-bounces@lists.xenproject.org Thu Oct 05 08:05:18 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 05 Oct 2023 08:05:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612871.953003 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoJM7-0000T6-9W; Thu, 05 Oct 2023 08:05:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612871.953003; Thu, 05 Oct 2023 08:05: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 1qoJM7-0000Sz-6h; Thu, 05 Oct 2023 08:05:11 +0000
Received: by outflank-mailman (input) for mailman id 612871;
 Thu, 05 Oct 2023 08:05: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=/GPI=FT=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qoJM5-0000Al-NA
 for xen-devel@lists.xenproject.org; Thu, 05 Oct 2023 08:05:10 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.31])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id e469377f-6355-11ee-98d3-6d05b1d4d9a1;
 Thu, 05 Oct 2023 10:05:07 +0200 (CEST)
Received: from orsmga003.jf.intel.com ([10.7.209.27])
 by orsmga104.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 05 Oct 2023 01:04:42 -0700
Received: from fmsmsx601.amr.corp.intel.com ([10.18.126.81])
 by orsmga003.jf.intel.com with ESMTP/TLS/AES256-GCM-SHA384;
 05 Oct 2023 01:04:40 -0700
Received: from fmsmsx610.amr.corp.intel.com (10.18.126.90) 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, 5 Oct 2023 01:04:39 -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; Thu, 5 Oct 2023 01:04:39 -0700
Received: from NAM12-BN8-obe.outbound.protection.outlook.com (104.47.55.170)
 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; Thu, 5 Oct 2023 01:04:38 -0700
Received: from MW4PR11MB6737.namprd11.prod.outlook.com (2603:10b6:303:20d::15)
 by CO1PR11MB5075.namprd11.prod.outlook.com (2603:10b6:303:9e::14)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.29; Thu, 5 Oct
 2023 08:04:36 +0000
Received: from MW4PR11MB6737.namprd11.prod.outlook.com
 ([fe80::1691:ce61:f017:88ae]) by MW4PR11MB6737.namprd11.prod.outlook.com
 ([fe80::1691:ce61:f017:88ae%5]) with mapi id 15.20.6813.017; Thu, 5 Oct 2023
 08: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>
X-Inumbo-ID: e469377f-6355-11ee-98d3-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1696493107; x=1728029107;
  h=from:to:cc:subject:date:message-id:references:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=ZyImFdJkizIIm14WJg2Ixo/pYCP+RotrDcVrOKM9Tvs=;
  b=Wur4rETAdy1kzSGIO3eOAoCLUOVJrwm9psExS1qQvJCtT2+goegQZOPa
   agK6aXkBbZWQKsILUM32nKDsFrWXJ0pltUVNfLb+bz+HbARDIy8dsV+7e
   EW4gqLXIMNQ30C/OiNvYSRYblVNDzXJzRKwHp95t4Z98WaEHNus30DVuY
   88BZ13fw9Th5qLKsN7Xe0V51mR6trn7CWKMOdWtrRrzi+2ZMP9o0h09w7
   j/BlDwTXgbgKa9GGwqvONNJu+wRN3tAk+Wf4C9KcSsVlfBrs/+uZUWhcl
   4P4B7pkxJfnhEKmIAa06yRGYKPMzxSgIJgLZeeNGh63/cDT6xfuejZFBz
   w==;
X-IronPort-AV: E=McAfee;i="6600,9927,10853"; a="447616790"
X-IronPort-AV: E=Sophos;i="6.03,202,1694761200"; 
   d="scan'208";a="447616790"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10853"; a="701554854"
X-IronPort-AV: E=Sophos;i="6.03,202,1694761200"; 
   d="scan'208";a="701554854"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=OQcoxKp+3OhwfkWxMNLGEph19OuWgCl0j7R8sGFSPfMOT4zqLZNEQCf4v9G2OTla6mPtNceL46EBlfhJT10pF7FJbCp5E1voRz+blJKrJioCqSUgoMwi+LnSDwpMtUrPt8T29Z8XZ/t13WRvKnNR3TebPxCrLl/XC321+/7w3S3GumCBhWtcp58caJVlZEAtihawTwiDnPUmJdtfuKWVvGh/HgwXsGMUisW2kemRfoeS3Wh0CrD8zq2AXIdM4V0qUQEFIP4zss84Ejxqk53jWLyQ1kPRrlC8IFruY8+HSNPKbDjOk5aIFbEdHi5pf8mDVllIZMRkxACUvfpLxYQ6+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=ZyImFdJkizIIm14WJg2Ixo/pYCP+RotrDcVrOKM9Tvs=;
 b=Ch6x537W9Ylo5uybToxwAq+mvFzPgj4c2kRK80MAIbaUXTwyTqngbYCgPNOK2CsKME4nyJDKlyXSncocny6zb59yEa74VcWClwlP9c4l7o1MiYaeMR3AMgbv+HzXrI85+ZrbdmfHyuiWi7z/76MGVWdJ4p5Fs2x409grOjGQ8MYwnrLXy0g8PGfH6ursXackwtYSLae7pdk9skcy2ZbfgqqIZjXYQTdBiRfiBvQDheReSERNQx+fLf6Dwl5gWH15QX7Pxyg7Kc79QNMyfUCpv29lDtBnRUO1NYFHq/zN4ESiTA2jh+1EJIRdV2ZNg0gWFu71DP1+ANYisbVBKpwSPw==
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: Bagas Sanjaya <bagasdotme@gmail.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>, "nik.borisov@suse.com"
	<nik.borisov@suse.com>
Subject: RE: [PATCH v12 06/37] Documentation/x86/64: Add a documentation for
 FRED
Thread-Topic: [PATCH v12 06/37] Documentation/x86/64: Add a documentation for
 FRED
Thread-Index: AQHZ9ca25hed7BrCjUK5e91MqRkFIrA31ScAgAMEFqA=
Date: Thu, 5 Oct 2023 08:04:35 +0000
Message-ID: <MW4PR11MB6737F8C5FEF0291B691F4963A8CAA@MW4PR11MB6737.namprd11.prod.outlook.com>
References: <20231003062458.23552-1-xin3.li@intel.com>
 <20231003062458.23552-7-xin3.li@intel.com> <ZRvmGNRZ4IvmguAY@debian.me>
In-Reply-To: <ZRvmGNRZ4IvmguAY@debian.me>
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: MW4PR11MB6737:EE_|CO1PR11MB5075:EE_
x-ms-office365-filtering-correlation-id: f17cc11c-148f-440e-84b0-08dbc579b74e
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: 3d3sXIrwdiGtUsRbglGyoMawkSvYCW9r5uoi7E3LrCJJrsATCwwHm4MvejA9G0o03CB4cjIxeblI/yOq8LH5PMeynVK9uRczJnmEDv/m84UenPMvY1Wk/hc9gzpdaaj3shzzxPc+CK6IdoOlFFWEhiE90VnR6so+pOZYzBhryRm6QxuiOoi7RtPY4l9IHxL8774L9kS73czeza538HUzGUxGq98Btf2g4mZ+yINzXLrprdHH5DEXibSRzj0VfpzK42HJQDZsschEqKWz2+DrcE4xhUGUSlEcfk01KkCsa1tDNDQqRmaG2pddITZRk/M9Triv0SCsHmRUdKDBhC1iyyRWWnfq1Ic7ga4910K/GJcHcE0pbQ7g/klTKBWHTWHQLS5U/sBXZQhik46xNG5nQTz3H2iJQN1gcZCV3tcihNScx+p3dKlQs51h09ghowMu71YCaBBeQMvKuiDJ058wgw4eQkjfXlhjQ/JJXZUfn4gCAG4PUQhm+m3aT5nDK4yKTEFL2z5rCpNCwImnKNgyeX3D/maPH3Hqp+7CfKmQOSgP75Dc29MmHiE6O2MJoruWbkCU/HdZJVqYs4wa4DjS05VhXoUdVNeYlmC0/txz56qWbmtno5immPAxDTLGV/y+
x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MW4PR11MB6737.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(376002)(136003)(346002)(39860400002)(366004)(230922051799003)(64100799003)(186009)(451199024)(1800799009)(66446008)(64756008)(54906003)(66946007)(66556008)(66476007)(316002)(41300700001)(6506007)(9686003)(33656002)(26005)(71200400001)(7696005)(478600001)(38100700002)(38070700005)(86362001)(82960400001)(122000001)(110136005)(76116006)(55016003)(7416002)(2906002)(4744005)(4326008)(8936002)(5660300002)(8676002)(52536014);DIR:OUT;SFP:1102;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: =?utf-8?B?Sks2Q1JncXY4eGUzeTRVWXN6VzFBNE1tdU1BSTYvaTFmYnRHNS9qQjBKdTJW?=
 =?utf-8?B?WUlPdFZPUHFBQ0hnTkdnMlhUSmREQzNwZmNwbDhZdGZiR3JsMHQyd05lREtU?=
 =?utf-8?B?UVVMbnRLY29Ydlh1SEZ4U2pXZmtBWk51L2RxalovWkVrSVA0NE5SZ1BpY2w3?=
 =?utf-8?B?dnhBWjB5bjJpbzVodnVNcjdMMmdvSFcxcVZvb0pLOXJYOVdhTGEvSUlhQlAw?=
 =?utf-8?B?S0oxNTRWK3F2S2I4UmM2akZHUWlmL2hDVEs0SEpTMkdRaTAwY3pZWm1pVStq?=
 =?utf-8?B?aG1VUEZ3ZGlyOWgyWUFZMXYzNldXZ2NtYlFwMHdiT2RlNmI2UXhTeHRuaFpY?=
 =?utf-8?B?OHFvVkVRUndUNHlHV0k2R0VEUzNoTFlMbWN3bFVVdDNFVjdpYjB3RXRaOWVQ?=
 =?utf-8?B?TVQ1dElEZTFtQ2R0bW14dGF3TjdSMDdCUThYcE9aVGZtMk4rbm5zaUl3MkF3?=
 =?utf-8?B?cHplb3pxZGZTYnBGNEFObnAxSU1vWVhEMitTcFI3UDFjaHQ5SThOZkpYNTFx?=
 =?utf-8?B?ZDU2N1BGemwvNm9vYlU2dlFDaVhtMnpUTGc1c1pOdW8zc3BLODFNcTd2Y283?=
 =?utf-8?B?RE9Jd0pXLzViUklIKysyTzJuZ0RoN3pyVW5VZkVESkJXNkZucmxPMm9qckwz?=
 =?utf-8?B?Y1lnSVd2K2FwTjlwa25HLzh3YVl6Ri8vMjZHRVJhd29JdXkydDVuV0RCcGk1?=
 =?utf-8?B?TEk2N1U1ckZLYW5rR3BNWFRDMU8rU3l3YWlnNGt5SGJBNXRPVm9aRDltNFNn?=
 =?utf-8?B?ejlWZHM2eHZvRmhTQnVUczFZVWZkVG5IQWIyZmxvenRzanBkVTZ4UUFIS3lW?=
 =?utf-8?B?TXMvQVBsamVqb3F0U2xTNTVxWEpydTJYSnBONCsxV3NCR2FrTzR0bHF2UkRU?=
 =?utf-8?B?citUaCtkRTBpelhqcjVBeG5Ob204TlN1bVhVR21FYTY2VzRpUzdLSU0vODJX?=
 =?utf-8?B?WStWQzFBWUV1eWdnSUZDMm5vaU1vZXhOR1lvK0YvTmxDc08yU2FyY0traXkw?=
 =?utf-8?B?RitmMGFTSk1pTzFPSVZERG1qM09MRVNrYllDUFl5a2dWM1BvaDdQdllGUmZh?=
 =?utf-8?B?ZUJ5N2N4eldZODROVHJrWEs1Uyt2SmVyLzdtR2hQcmdlUzdaOUxnT2xLeDBy?=
 =?utf-8?B?VmhhWmJQT1lPdDVHL2Q0WEVWSktVUXIxb2xsR0Q5d1NrRUI3aHdoREJEMWVq?=
 =?utf-8?B?cGxjR0JRT0o1eFYrVjFtb0t6VCtvbFBNMmxRa2dwM1FlNldPTzhaZVV5L0tx?=
 =?utf-8?B?UlkvR3EzbVAzbVlKTG5TaXpSdmlHZ3BKV1RTRk1wdE9ISFFVZmw2blN1ODJY?=
 =?utf-8?B?RUIwa0hkdnhSRlg5cXdVT2dObmhMNDk5bWlzOGpCV1ZDN25BNHBPSVU3Smcw?=
 =?utf-8?B?bUthei9JZzdvdkwvdzM1K0FablVYbWF3a0R4VVRxZ1FPdWhzY1N0L0l1cVly?=
 =?utf-8?B?bmhwbWUxUDFya1BHNm5HZTR1aTVMQWVXRkZVbFNOQklxZk03MUZTRGk2bjBN?=
 =?utf-8?B?YTBFRGFwWGIybHdpOFFsNXZXSG5KM044T3ZBZTZ2S2d2c2JNbGNEY0VabVBW?=
 =?utf-8?B?S01pbS9qeVVTVGcwa1NMVW83YlFZN28valBRUi9jQlhXSFFOVzltVURsc29U?=
 =?utf-8?B?Z1J5TmNRb0ZZK3ltZFBpTE04bXJFUzJPNktsSmNwQVQrenlYWjBGRk1mZ29v?=
 =?utf-8?B?bjY5L2F1eXdsajZPeE96dmttWXRuTlhJeXhMYlU2K3lGK0VQVVVxYWJRY0VB?=
 =?utf-8?B?TGxtalg5UjJhVS9nL1NselluR0Vsa09NYnRDSnRYaEl2OUdMd1cwWStvOWhY?=
 =?utf-8?B?TTBCQ2JFYmtuQ2tmUlpzVnRqY1B2TExBVHZhZXVyU2VFZWgxUCtHeEFJSzlm?=
 =?utf-8?B?eFd4TWUvL2lqNXVHVVdTdzVoeU93RkxydjZ6UmQxcW5mak9LZ2NpOStyUkRP?=
 =?utf-8?B?aFExUkFzdmcxWGh5dTBjR3dmMFBndE1GaEpWazVFUTJieWt5cysvdWs3eFNq?=
 =?utf-8?B?RGQrb3R3QlE1d2cwRzMvN3BRUkNzRkN2aEh5Y0lEV2xYQVc2Z0NYaStaeXIw?=
 =?utf-8?B?OFVPK1dPNDdtelIvMjhLL2FFdms1YnBQMUJyWkk4aUhTdHFYUFlUcUNtWEgr?=
 =?utf-8?Q?TESY=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: MW4PR11MB6737.namprd11.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: f17cc11c-148f-440e-84b0-08dbc579b74e
X-MS-Exchange-CrossTenant-originalarrivaltime: 05 Oct 2023 08:04:35.9914
 (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: BSUl0krpto5KpJocefkoJSEcnRV2YXUIxMUvbfa3fmcalT2XKNUH9u91JsV4RoXzIPZsYtZ8p9fzBswT8Lc7Tg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: CO1PR11MB5075
X-OriginatorOrg: intel.com

PiA+IGRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL2FyY2gveDg2L3g4Nl82NC9mcmVkLnJzdA0K
PiA+IGIvRG9jdW1lbnRhdGlvbi9hcmNoL3g4Ni94ODZfNjQvZnJlZC5yc3QNCj4gPiBuZXcgZmls
ZSBtb2RlIDEwMDY0NA0KPiA+IGluZGV4IDAwMDAwMDAwMDAwMC4uOWY1N2U3YjkxZjdlDQo+ID4g
LS0tIC9kZXYvbnVsbA0KPiA+ICsrKyBiL0RvY3VtZW50YXRpb24vYXJjaC94ODYveDg2XzY0L2Zy
ZWQucnN0DQo+ID4gQEAgLTAsMCArMSw5NiBAQA0KPiA+ICsuLiBTUERYLUxpY2Vuc2UtSWRlbnRp
ZmllcjogR1BMLTIuMA0KPiA+ICsNCj4gPiArPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0NCj4gPiArRmxleGlibGUgUmV0dXJuIGFuZCBFdmVudCBEZWxpdmVyeSAoRlJF
RCkNCj4gPiArPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0NCg0KPiBM
R1RNLCB0aGFua3MhDQo+IA0KPiBSZXZpZXdlZC1ieTogQmFnYXMgU2FuamF5YSA8YmFnYXNkb3Rt
ZUBnbWFpbC5jb20+DQoNClRoYW5rcyBhIGxvdCBmb3IgcmV2aWV3aW5nIGl0IQ0KICAgIFhpbg0K


From xen-devel-bounces@lists.xenproject.org Thu Oct 05 08:11:24 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 05 Oct 2023 08:11:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612876.953014 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoJS4-0002zy-UF; Thu, 05 Oct 2023 08:11:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612876.953014; Thu, 05 Oct 2023 08:11: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 1qoJS4-0002zr-RQ; Thu, 05 Oct 2023 08:11:20 +0000
Received: by outflank-mailman (input) for mailman id 612876;
 Thu, 05 Oct 2023 08:11: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=gndL=FT=epam.com=prvs=46423b4a7f=andrii_chepurnyi@srs-se1.protection.inumbo.net>)
 id 1qoJS3-0002zk-7H
 for xen-devel@lists.xenproject.org; Thu, 05 Oct 2023 08:11:19 +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 c0f7c972-6356-11ee-9b0d-b553b5be7939;
 Thu, 05 Oct 2023 10:11:16 +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
 3950luOV019571; Thu, 5 Oct 2023 08:11:07 GMT
Received: from eur04-db3-obe.outbound.protection.outlook.com
 (mail-db3eur04lp2051.outbound.protection.outlook.com [104.47.12.51])
 by mx0b-0039f301.pphosted.com (PPS) with ESMTPS id 3tha412bkw-1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT);
 Thu, 05 Oct 2023 08:11:06 +0000
Received: from AS8PR03MB9583.eurprd03.prod.outlook.com (2603:10a6:20b:5aa::18)
 by VI1PR03MB6478.eurprd03.prod.outlook.com (2603:10a6:800:17d::16)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.33; Thu, 5 Oct
 2023 08:11:04 +0000
Received: from AS8PR03MB9583.eurprd03.prod.outlook.com
 ([fe80::529f:7d90:7f52:64aa]) by AS8PR03MB9583.eurprd03.prod.outlook.com
 ([fe80::529f:7d90:7f52:64aa%4]) with mapi id 15.20.6838.033; Thu, 5 Oct 2023
 08:11: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: c0f7c972-6356-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=V7GyDsOS7poCbYQR0TO5yzDiJNHjRk/E/HA7IxfsVz/qH+NUa2W/H+PyFm5SQ9GfvRK+tx/Vz94UWGxpMqqvL76V/OGyaCP/czqHtETYZrPy/YeBUeg40H81i2vm+WeFaVrGAmzl0iWW2MLYd5l0mx1w+kX68QwX4ueXKZ0YH2BlOUbDBKS/5lFKMftny8G3ds62JHMEmpBTnAUaVzZqkmIj6s4bhecz15VrSVPXDfpEgebHtxa0/rfPj3byK0hDovNlzIW9msduXYIdb/p1FmSjkMJk5pX2vP3LvWN1DkiK+B0sgoi6Mk+LljqPQxNHcNeck5BPy60YZQQOE2u7Ow==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=M47XiSu+LMFNLzzswY8HLK/UPKHw9wp3v2+upPQdER0=;
 b=CdVfH6TiITfo71NByUgYKadrTfTVZxLMEHQPqZksvBYXvfIIXn/K71fgNCHtGi+0WZuEycVOAZ8qJJvVUowHZJ4Y0ZwLzcQofWQVCbfh3+UOsDAWw+ADXUt6OhBW8OaDdcLGOLPL6OLAWaPM/gngzKS0M775q0hQ6WKFtn6czAAhm+x6XfWK0JQXlnDAxkwCZ7r+/5c7sH1VqZoo0y3YrD4sRBnYHLqTY/LsipAX9KEkw6JTnELA5tWavroJMpNmE8ORHS/BFSJXovMNgJS2dl+eFnpGG5oyZOdw7kyuTh5Nykm2/ole3Y0ZpEEn/beC96iX1NEfmMPiNMxCLPiuxQ==
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=M47XiSu+LMFNLzzswY8HLK/UPKHw9wp3v2+upPQdER0=;
 b=mv8HsUUL7xlDYAyQX9otqBBPTZkSZflNx3N1gsyPcDB7jqt0UVzvUldVwNdcmlOGRgkD4OJkfrBo4+wvwuGQDijEtkNeYbvQIfvCTf9v87ypu/MhjHsdwhNNppn4nd2Ud4oLscQ+92PpoKGVyyZDb9Hp+2JUBVQN+PuElI151+yPvwo9buj/2xMpXCpQ8M+AO17CW+O0wSylkK/cN1l265zkXyxFBklQb5Eh7tvdnuYlAOD/h9ro6NQHWE9+jesDJUJwr5z6IpOilHLzHFgjd5mg1TfA2pPci958vv/aMpscNNeJf+nVQzBPnH0DwvA5nwS+p5nNU/e6Pe3mqRQ+Yw==
From: Andrii Chepurnyi <Andrii_Chepurnyi@epam.com>
To: Julien Grall <julien@xen.org>,
        "xen-devel@lists.xenproject.org"
	<xen-devel@lists.xenproject.org>
CC: Oleksandr Tyshchenko <Oleksandr_Tyshchenko@epam.com>,
        "andrii.chepurnyi82@gmail.com" <andrii.chepurnyi82@gmail.com>,
        Stefano
 Stabellini <sstabellini@kernel.org>,
        Bertrand Marquis
	<bertrand.marquis@arm.com>,
        Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: Re: [PATCH] arm/ioreq: clean data field in ioreq struct on read
 operations
Thread-Topic: [PATCH] arm/ioreq: clean data field in ioreq struct on read
 operations
Thread-Index: AQHZ9fw82LZSu4lXwEi+r3jS4xqDm7A4FMmAgAE8lwCAAHUlgIABFHmA
Date: Thu, 5 Oct 2023 08:11:03 +0000
Message-ID: <47c0e1b3-d00b-30e4-eaa9-a32ca0b6cd78@epam.com>
References: <20231003131923.2289867-1-andrii_chepurnyi@epam.com>
 <27044e68-4a49-4f1d-b8a9-174810efb5fe@xen.org>
 <ec7089d1-0111-1e34-900b-b5c40dcb41d2@epam.com>
 <f419a108-f594-4a00-9445-e1c072777379@xen.org>
In-Reply-To: <f419a108-f594-4a00-9445-e1c072777379@xen.org>
Accept-Language: uk-UA, en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
x-ms-publictraffictype: Email
x-ms-traffictypediagnostic: AS8PR03MB9583:EE_|VI1PR03MB6478:EE_
x-ms-office365-filtering-correlation-id: 56e52ee4-5921-45f9-8bcb-08dbc57a9e85
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: 
 zrKF3v5NFsrtGNysuCYVZXhodeBxibyLaB1dFFf+UiAIQ97/9Dt2O8gfVsA/CdeT10N6mj96Z7jdGbMBhJEfgjiK4Mfh40MisOUkiGL1Xe3dP+pu4IUpZ+g4X9HsXRAZlnfQii7sAZsbp9uCnTpYh5UYNO42ASSTKTVk+d5Q9MQNzugVByYsOqraWtvQ+6NQIhB63y5UPza6bu2RVhYeKixhMVSIqdaE2h1uPWCaT9hshMm1yoD45jilivRBk2QmdxZzGzFn2Lutk4AUREoWr2Pr/1Lltjf5hHatMB7VXsVEM/uPUOO+0laCXWtb/qcdElv/SAp+lUfGaDFYhefbmq+QFaUttfofn9jjlXbwLwRdsN1Rb8RxOSRu62Yb+AHM7riUnm+yddNw1y8U/rh9BktDriu52gEr7Ii3R8gSaeEwfJ9JscHgzFlgHVWrzAuhTWQs6E/hzqSnsRUsg4TKpw8aBB55KX2WU4YY+VE6ks+ys/bC0fAPvklYqhtuuh9OqdZuZnDSQ+niv+X5D3sQcpIwa0W05aEDdF8zqHUxdsoJUezYdXl+mkSgxuIrywCYnBwHnNZN157jZW11J0yiSKAZgOjyeCdsWr3Acm1zYBCEFJaAavoNiez0tXDSM2Jl
x-forefront-antispam-report: 
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR03MB9583.eurprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(136003)(366004)(396003)(39860400002)(346002)(376002)(230922051799003)(64100799003)(186009)(451199024)(1800799009)(2906002)(38070700005)(83380400001)(86362001)(31696002)(38100700002)(36756003)(122000001)(316002)(66446008)(6512007)(66476007)(64756008)(76116006)(54906003)(66556008)(6506007)(107886003)(91956017)(110136005)(41300700001)(66946007)(966005)(6486002)(2616005)(478600001)(71200400001)(31686004)(8936002)(8676002)(53546011)(4326008)(5660300002)(26005)(45980500001);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: 
 =?utf-8?B?VDFOdzJwdTB6clVwQnpBS1RSa3FTV0VVSTRNVGpKcXlaM29mQmNQdGppb1V1?=
 =?utf-8?B?TmNhMDVyUUYxN3JERGlYTy9yK05QdHZGOVJEck1lTFM2UmdVWUg1KzJPaDlW?=
 =?utf-8?B?RnU0TmFVUDVrYlVTcDNuV05mWnZVOU05S2VPZVVSUUd1U2xMb2hEdjZqNGlv?=
 =?utf-8?B?b3VJamJ3emJYNDNKajJJcXRSemdJRXJZU0JBR29seW1ZaW42dHZRMzFGZWxQ?=
 =?utf-8?B?OENERjBxWkNRUURVWDhJdmhRMTgrVmNvT2ExVlZmZDBzbDVSQmIzM1VBK2hj?=
 =?utf-8?B?MnZ4bm15TTUzNWhmMTFpeGdYTkNVOXdUSndTaGFJeEozMzJ5dUczd3pjUU84?=
 =?utf-8?B?T1FaakcrUDljMnR0T1J0MHhqNmZ0SUt4NXlJVTJiRUdKSEU5RHFqS2NWSlVG?=
 =?utf-8?B?ZUVDbWg4aVo2Q0VjbWNIVThJam9TUnZIdW9seUQ2SU1FM0pYZnoxTWY0NTdl?=
 =?utf-8?B?SURvZjB0bDRILzFPRVNSaG1pMFowaFRpQXF3OXFOeW1ubjdzb2pOUEJaS1Fx?=
 =?utf-8?B?MVVQK2ljSGF6UnE5TTBCYnh1WEo2NWhxdXJzbTZhOStibTRPbTA5cExvZmhE?=
 =?utf-8?B?S2NlWGVRdVRpSWRybFEzY2IwQzZhRG5ZQyt5RStNbk90aHo3b3MveUVwUjJY?=
 =?utf-8?B?U3NrNnpFMVJkdURjbFdPcUdWRVkwRjFCNW42dUNwbzMvWEtIM2t3N1E3Y0to?=
 =?utf-8?B?b3JjY2hodFdodlN3OUI4aDlPOWo1c0JwQkowVWNTNXNSS2xBRG04WVVSS0o1?=
 =?utf-8?B?N29nTVh5SHA5L2NmUHZ2SnBqYVVoVFVqRWpLTkJnN1ZiN21DUjlKNUxlbVZv?=
 =?utf-8?B?dG4rRldaZ0FhNHROTzMrNXFyNGRJR2lXblMzOHpLY3M4bGxFcEJ4WDBNTzd4?=
 =?utf-8?B?dnpFZ3VWNkFVVWFVUngxWEJpWEF2dDdvL2k0Zk9nV1cwQWdadWt2N2FhUWVH?=
 =?utf-8?B?WVUzUHI0Yk1xa0ltSnhVWEF2VC8wWS9yS3JzR3JQTVNhMGpKS2NVWHUvd00r?=
 =?utf-8?B?YVgzNU9Pc3B6T2tXL2RmS1RrNEJPZGwwRHJsN0I4K0FqWjBDaHlWdGVqbkF6?=
 =?utf-8?B?cFhwU3gzK3JIYkh0RGtSQ3MzM1l2KzFVc0RmMUwxaDRCTlR5ZDBwSEsvNWpU?=
 =?utf-8?B?bUVZYWdDUStCVVppNUk1WjY1MVlHRkhrUWVYVFE4UUJEYUNnUmErTjNWZi8r?=
 =?utf-8?B?V3BQVjh2azFkVnJjbE1IVG1ad2NPL0hrQThFakhWT1dDUW9qOTcxT21QYnpj?=
 =?utf-8?B?VTlQVnFUbmtMQlc5S2kvbDlpRDJ3b1pmc0NlemZZaE5EN29MRy9zekw0OFZ5?=
 =?utf-8?B?ZVFIRTdNTnU3dGZJWm5DeTNsa2VsaXNZZktEME0wUjkxZkhPZ0xzWFdlUU5J?=
 =?utf-8?B?S3J2alRVQjVHd2NRMUJoTVUzKzFub2lOWVI1RmNYWGs0SVJVSCtDVG14VnhO?=
 =?utf-8?B?aHdQQkZ3MmhrMjJVdWo3ejUvNHBZSERjSjF1VmE3NmJxVU95WEZIQ3A3S2JO?=
 =?utf-8?B?QlhGT2ErN3NvM0lMOFhKMkZlYmdYcldtQnRhSU1kMXo5NzJjYzMycVJmdVhk?=
 =?utf-8?B?d3M2VnJud29tQnY1WjZpMUoydzJKcm5Md1ptUXNLb0hMbzBOc0JtR2lFVVAv?=
 =?utf-8?B?OW9MVEMzWERpMG03QytKbHRFTnEzQkM1LzB4NHk4bTBjRkhBbjcxc0FXR29P?=
 =?utf-8?B?NG1mdFVPdGxMN3Z2MCs5K21md0w5bml0aUxWMjBpYXUvOGMybHhLWDlqYnlo?=
 =?utf-8?B?eXd2c0I0cUxqelEvSldVa3UzbGpIMkdnZ0NncHluaC84cENiWW1makx6b0I4?=
 =?utf-8?B?cXRINTR1RUY2VzFPSzFXeDdybkUySkphbXBDQnpoYkhndHJiSy92TGR5WjRw?=
 =?utf-8?B?d3NGaXJpSFM0dWhsT1RnVjNXcmtXZERXUU9hc3Bqak80VVJZVlE3eTIzUVdn?=
 =?utf-8?B?UmtZMlNTU2RCSGRWSytFSDl2b1FjZE44WlI3Y1pjZERUNmhOcWU5RmIyRWd1?=
 =?utf-8?B?Tm5rWFNPZ1d0TlVRMUdjUnZWZWhCdldLWXJjRDQwd0syREkxZW80ZGpQZTh6?=
 =?utf-8?B?dEo5ckRhcUVhdEJtZlVoa0d1VFR5OStIR1NSUlBXa1lRdTdZUDhqblo3Tkpn?=
 =?utf-8?B?Ykxaelc4ZDZRcjFiSjlCSzhmK0c5V3NMMnE3UUVJdCtjaEkvZlNpZGVWeFhj?=
 =?utf-8?B?Umc9PQ==?=
Content-Type: text/plain; charset="utf-8"
Content-ID: <C91C654BFDB09448B62FBDE711960A71@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: AS8PR03MB9583.eurprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 56e52ee4-5921-45f9-8bcb-08dbc57a9e85
X-MS-Exchange-CrossTenant-originalarrivaltime: 05 Oct 2023 08:11:03.9269
 (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: 7GxX/CnUN9jKiwHTUI22yw9l/1BGedoJzCgFXgqqZRS9sylGKp0iFw2rfz0nGxMfhlOmIl8lkBI4npPgW+zXy2+x/SMuMHXJXlBB8H9lX3k=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR03MB6478
X-Proofpoint-GUID: cuYCG93HxuDmhDwN6bz0IZumYC1dxW3J
X-Proofpoint-ORIG-GUID: cuYCG93HxuDmhDwN6bz0IZumYC1dxW3J
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-10-05_05,2023-10-02_01,2023-05-22_02
X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 impostorscore=0 bulkscore=0
 clxscore=1015 adultscore=0 malwarescore=0 priorityscore=1501
 mlxlogscore=663 suspectscore=0 phishscore=0 spamscore=0 lowpriorityscore=0
 mlxscore=0 classifier=spam adjust=0 reason=mlx scancount=1
 engine=8.12.0-2309180000 definitions=main-2310050062

SGVsbG8sDQoNCk9uIDEwLzQvMjMgMTg6NDEsIEp1bGllbiBHcmFsbCB3cm90ZToNCg0KPiBJIHdh
cyBhc2tpbmcgYSBwb2ludGVyIHRvIHRoZSBjb2RlIGluIHRoZSBEZXZpY2UgRW11bGF0b3IgKFFF
TVUgaW4geW91ciANCj4gY2FzZSkuIEkgYW0gY29uZmlkZW50IHRoZSBjb2RlIGlzIGNvcnJlY3Qg
aW4gVS1ib290LCBiZWNhdXNlIHdoZW4gdXNpbmcgDQo+ICd3MCcsIHRoZSB1bnVzZWQgYml0cyBh
cmUgbWVhbnQgdG8gYmUgc2V0IHRvIHplcm8gKHBlciB0aGUgQXJtIEFybSkuIEJ1dCANCj4gSSBh
bSBjdXJpb3VzIHRvIGtub3cgd2h5IFFFTVUgaXMgbm90IGRvaW5nIGl0Lg0KDQpRRU1VIGZsb3cg
aW4gdGhlIGNhc2Ugb2YgdGhlIHJlYWQgb3BlcmF0aW9uIHNob3VsZCBiZSB0aGUgZm9sbG93aW5n
Og0KDQpodHRwczovL2dpdGh1Yi5jb20veGVuLXRyb29wcy9xZW11L2Jsb2IvdjcuMC4wLXh0L2h3
L3hlbi94ZW4taHZtLWNvbW1vbi5jI0wzODkNCmh0dHBzOi8vZ2l0aHViLmNvbS94ZW4tdHJvb3Bz
L3FlbXUvYmxvYi92Ny4wLjAteHQvaHcveGVuL3hlbi1odm0tY29tbW9uLmMjTDQwOA0KaHR0cHM6
Ly9naXRodWIuY29tL3hlbi10cm9vcHMvcWVtdS9ibG9iL3Y3LjAuMC14dC9ody94ZW4veGVuLWh2
bS1jb21tb24uYyNMMzA5DQpodHRwczovL2dpdGh1Yi5jb20veGVuLXRyb29wcy9xZW11L2Jsb2Iv
djcuMC4wLXh0L2h3L3hlbi94ZW4taHZtLWNvbW1vbi5jI0wyMjgNCmh0dHBzOi8vZ2l0aHViLmNv
bS94ZW4tdHJvb3BzL3FlbXUvYmxvYi92Ny4wLjAteHQvc29mdG1tdS9waHlzbWVtLmMjTDMwMDIN
Cmh0dHBzOi8vZ2l0aHViLmNvbS94ZW4tdHJvb3BzL3FlbXUvYmxvYi92Ny4wLjAteHQvc29mdG1t
dS9waHlzbWVtLmMjTDI5NzMNCmh0dHBzOi8vZ2l0aHViLmNvbS94ZW4tdHJvb3BzL3FlbXUvYmxv
Yi92Ny4wLjAteHQvc29mdG1tdS9waHlzbWVtLmMjTDI5NDINCmh0dHBzOi8vZ2l0aHViLmNvbS94
ZW4tdHJvb3BzL3FlbXUvYmxvYi92Ny4wLjAteHQvc29mdG1tdS9waHlzbWVtLmMjTDI5MjYNCmh0
dHBzOi8vZ2l0aHViLmNvbS94ZW4tdHJvb3BzL3FlbXUvYmxvYi92Ny4wLjAteHQvc29mdG1tdS9w
aHlzbWVtLmMjTDI4NzYNCg0KIEZyb20gbXkgdW5kZXJzdGFuZGluZywgb25seSB0aGUgcXVhbnRp
dHkgb2YgcmVxdWVzdGVkIGJ5dGVzIGlzIHVwZGF0ZWQuDQoNCkJlc3QgcmVnYXJkcywNCg==


From xen-devel-bounces@lists.xenproject.org Thu Oct 05 08:46:00 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 05 Oct 2023 08:46:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612885.953029 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoJzT-0001pf-UJ; Thu, 05 Oct 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 612885.953029; Thu, 05 Oct 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 1qoJzT-0001pM-Oe; Thu, 05 Oct 2023 08:45:51 +0000
Received: by outflank-mailman (input) for mailman id 612885;
 Thu, 05 Oct 2023 08:45: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=XA9v=FT=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qoJzS-0001nQ-5v
 for xen-devel@lists.xenproject.org; Thu, 05 Oct 2023 08:45:50 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 955a36f4-635b-11ee-98d3-6d05b1d4d9a1;
 Thu, 05 Oct 2023 10:45:49 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id 9D8734EE073A;
 Thu,  5 Oct 2023 10:45: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: 955a36f4-635b-11ee-98d3-6d05b1d4d9a1
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>
Subject: [XEN PATCH][for-4.19 2/2] xen/spinlock: fix use of 0 as a null pointer constant
Date: Thu,  5 Oct 2023 10:45:20 +0200
Message-Id: <44395904e6cca0cc83a9d01abbc50047ecba961e.1696494834.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1696494834.git.nicola.vetrini@bugseng.com>
References: <cover.1696494834.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The constant 0 is used as a null pointer constant, in
violation of MISRA C:2012 Rule 11.9, in builds with
CONFIG_DEBUG_LOCK_PROFILE defined.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
---
Release builds should not be impacted by this
---
 xen/include/xen/spinlock.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/xen/include/xen/spinlock.h b/xen/include/xen/spinlock.h
index e7a1c1aa8988..16d933ae7ebe 100644
--- a/xen/include/xen/spinlock.h
+++ b/xen/include/xen/spinlock.h
@@ -94,7 +94,7 @@ struct lock_profile_qhead {
     int32_t                   idx;     /* index for printout */
 };
 
-#define _LOCK_PROFILE(name) { 0, #name, &name, 0, 0, 0, 0, 0 }
+#define _LOCK_PROFILE(name) { NULL, #name, &name, 0, 0, 0, 0, 0 }
 #define _LOCK_PROFILE_PTR(name)                                               \
     static struct lock_profile * const __lock_profile_##name                  \
     __used_section(".lockprofile.data") =                                     \
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Thu Oct 05 08:46:00 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 05 Oct 2023 08:46:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612886.953044 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoJzV-0002HD-35; Thu, 05 Oct 2023 08:45:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612886.953044; Thu, 05 Oct 2023 08:45: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 1qoJzV-0002H6-0I; Thu, 05 Oct 2023 08:45:53 +0000
Received: by outflank-mailman (input) for mailman id 612886;
 Thu, 05 Oct 2023 08:45: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=XA9v=FT=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qoJzT-0001nb-QK
 for xen-devel@lists.xenproject.org; Thu, 05 Oct 2023 08:45:51 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 94e4706f-635b-11ee-9b0d-b553b5be7939;
 Thu, 05 Oct 2023 10:45:48 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id C03B54EE0739;
 Thu,  5 Oct 2023 10:45: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: 94e4706f-635b-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>,
	Simone Ballarin <simone.ballarin@bugseng.com>,
	Doug Goldstein <cardoe@cardoe.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Julien Grall <julien@xen.org>,
	Wei Liu <wl@xen.org>
Subject: [XEN PATCH][for-4.19 1/2] xen: introduce a deviation for Rule 11.9
Date: Thu,  5 Oct 2023 10:45:19 +0200
Message-Id: <98bc1d90b93856ed7516a19114facf6528120248.1696494834.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1696494834.git.nicola.vetrini@bugseng.com>
References: <cover.1696494834.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The constant 0 is used instead of NULL in '__ACCESS_ONCE' as a
compile-time check to detect non-scalar types; its usage for this
purpose is documented in rules.rst as an exception.

Furthermore, the 'access_field' and 'typeof_field' macros are
introduced as a general way to deal with accesses to structs
without declaring a struct variable.

Cleanup of spurious MISRA deviations.

No functional change intended.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
---
If NULL is not suitable for usage inside access_field, then 0 could
be put there and the macro deviated.
---
 .../eclair_analysis/ECLAIR/deviations.ecl     | 23 +++++++------------
 docs/misra/rules.rst                          |  3 ++-
 xen/include/xen/compiler.h                    |  5 +++-
 xen/include/xen/kernel.h                      |  2 +-
 4 files changed, 15 insertions(+), 18 deletions(-)

diff --git a/automation/eclair_analysis/ECLAIR/deviations.ecl b/automation/eclair_analysis/ECLAIR/deviations.ecl
index d8170106b449..acd42386e0a9 100644
--- a/automation/eclair_analysis/ECLAIR/deviations.ecl
+++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
@@ -110,10 +110,6 @@ neither functions nor pointers to functions."
 -config=MC3R1.R5.5,reports={safe,"all_area(decl(node(enum_decl||record_decl||field_decl||param_decl||var_decl)&&!type(canonical(address((node(function||function_no_proto))))))||macro(function_like()))"}
 -doc_end

--doc_begin="The use of these identifiers for both macro names and other entities
-is deliberate and does not generate developer confusion."
--config=MC3R1.R5.5,reports+={safe, "any_area(text(^\\s*/\\*\\s+SAF-[0-9]+-safe\\s+MC3R1\\.R5\\.5.*$, begin-1))"}
--doc_end

 -doc_begin="The definition of macros and functions ending in '_bit' that use the
 same identifier in 'bitops.h' is deliberate and safe."
@@ -156,11 +152,6 @@ particular use of it done in xen_mk_ulong."
 -config=MC3R1.R7.2,reports+={deliberate,"any_area(any_loc(macro(name(BUILD_BUG_ON))))"}
 -doc_end

--doc_begin="The following string literals are assigned to pointers to non
-const-qualified char."
--config=MC3R1.R7.4,reports+={safe, "any_area(text(^\\s*/\\*\\s+SAF-[0-9]+-safe\\s+MC3R1\\.R7\\.4.*$, begin-1))"}
--doc_end
-
 -doc_begin="Allow pointers of non-character type as long as the pointee is
 const-qualified."
 -config=MC3R1.R7.4,same_pointee=false
@@ -222,12 +213,6 @@ definition is compiled-out or optimized-out by the compiler)"
 # Series 9.
 #

--doc_begin="The following variables are written before being set, therefore no
-access to uninitialized memory locations happens, as explained in the deviation
-comment."
--config=MC3R1.R9.1,reports+={safe, "any_area(text(^\\s*/\\*\\s+SAF-[0-9]+-safe\\s+MC3R1\\.R9\\.1.*$, begin-1))"}
--doc_end
-
 -doc_begin="Violations in files that maintainers have asked to not modify in the
 context of R9.1."
 -file_tag+={adopted_r9_1,"^xen/arch/arm/arm64/lib/find_next_bit\\.c$"}
@@ -274,6 +259,14 @@ still non-negative."
 -config=MC3R1.R10.1,etypes+={safe, "stmt(operator(logical)||node(conditional_operator||binary_conditional_operator))", "dst_type(ebool||boolean)"}
 -doc_end

+#
+# Series 11
+#
+
+-doc_begin="This macro is used to check if the type is scalar, and for this purpose the use of 0 as a null pointer constant is deliberate."
+-config=MC3R1.R11.9,reports+={deliberate, "any_area(any_loc(any_exp(macro(^__ACCESS_ONCE$))))"}
+-doc_end
+
 ### Set 3 ###

 #
diff --git a/docs/misra/rules.rst b/docs/misra/rules.rst
index 3139ca7ae6dd..d5569696b3a8 100644
--- a/docs/misra/rules.rst
+++ b/docs/misra/rules.rst
@@ -393,7 +393,8 @@ maintainers if you want to suggest a change.
    * - `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 null pointer constant
-     -
+     - Using 0 as a null pointer constant to check if a type is scalar is
+       allowed and always happens through the macro __ACCESS_ONCE.

    * - `Rule 12.5 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/R_12_05.c>`_
      - Mandatory
diff --git a/xen/include/xen/compiler.h b/xen/include/xen/compiler.h
index dd99e573083f..15be9a750b23 100644
--- a/xen/include/xen/compiler.h
+++ b/xen/include/xen/compiler.h
@@ -109,13 +109,16 @@

 #define offsetof(a,b) __builtin_offsetof(a,b)

+/* Access the field of structure type, without defining a local variable */
+#define access_field(type, member) (((type *)NULL)->member)
+#define typeof_field(type, member) typeof(access_field(type, member))
 /**
  * sizeof_field(TYPE, MEMBER)
  *
  * @TYPE: The structure containing the field of interest
  * @MEMBER: The field to return the size of
  */
-#define sizeof_field(TYPE, MEMBER) sizeof((((TYPE *)0)->MEMBER))
+#define sizeof_field(TYPE, MEMBER) sizeof(access_field(TYPE, MEMBER))

 #if !defined(__STDC_VERSION__) || __STDC_VERSION__ < 201112L
 #define alignof __alignof__
diff --git a/xen/include/xen/kernel.h b/xen/include/xen/kernel.h
index 46b3c9c02625..2c5ed7736c99 100644
--- a/xen/include/xen/kernel.h
+++ b/xen/include/xen/kernel.h
@@ -51,7 +51,7 @@
  *
  */
 #define container_of(ptr, type, member) ({                      \
-        typeof( ((type *)0)->member ) *__mptr = (ptr);          \
+        typeof_field(type, member) *__mptr = (ptr);             \
         (type *)( (char *)__mptr - offsetof(type,member) );})

 /*
--
2.34.1


From xen-devel-bounces@lists.xenproject.org Thu Oct 05 08:46:00 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 05 Oct 2023 08:46:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612884.953024 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoJzT-0001nk-Ky; Thu, 05 Oct 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 612884.953024; Thu, 05 Oct 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 1qoJzT-0001nd-IP; Thu, 05 Oct 2023 08:45:51 +0000
Received: by outflank-mailman (input) for mailman id 612884;
 Thu, 05 Oct 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=XA9v=FT=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qoJzR-0001nQ-UX
 for xen-devel@lists.xenproject.org; Thu, 05 Oct 2023 08:45:49 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 94798b20-635b-11ee-98d3-6d05b1d4d9a1;
 Thu, 05 Oct 2023 10:45:48 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id C149D4EE0737;
 Thu,  5 Oct 2023 10:45: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: 94798b20-635b-11ee-98d3-6d05b1d4d9a1
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>,
	George Dunlap <george.dunlap@citrix.com>,
	Julien Grall <julien@xen.org>,
	Wei Liu <wl@xen.org>
Subject: [XEN PATCH][for-4.19 0/2] address violations of MISRA C:2012 Rule 11.9
Date: Thu,  5 Oct 2023 10:45:18 +0200
Message-Id: <cover.1696494834.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Rule 11.9 forbids the usage of '0' as a null pointer constant, therefore uses of
this pattern have been amended. One exception, recorded in rules.rst, is in
__ACCESS_ONCE to do a scalar type check.

The series only touches common headers, therefore it should be safe to include
in the for-4.19 branch.

Nicola Vetrini (2):
  xen: introduce a deviation for Rule 11.9
  xen/spinlock: fix use of 0 as a null pointer constant

 .../eclair_analysis/ECLAIR/deviations.ecl     | 23 +++++++------------
 docs/misra/rules.rst                          |  3 ++-
 xen/include/xen/compiler.h                    |  5 +++-
 xen/include/xen/kernel.h                      |  2 +-
 xen/include/xen/spinlock.h                    |  2 +-
 5 files changed, 16 insertions(+), 19 deletions(-)

--
2.34.1


From xen-devel-bounces@lists.xenproject.org Thu Oct 05 08:54:38 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 05 Oct 2023 08:54:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612898.953053 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoK7q-0004Wl-UA; Thu, 05 Oct 2023 08:54:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612898.953053; Thu, 05 Oct 2023 08: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 1qoK7q-0004We-RA; Thu, 05 Oct 2023 08:54:30 +0000
Received: by outflank-mailman (input) for mailman id 612898;
 Thu, 05 Oct 2023 08:54: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 1qoK7p-0004WY-JB
 for xen-devel@lists.xenproject.org; Thu, 05 Oct 2023 08:54: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 1qoK7o-000765-5F; Thu, 05 Oct 2023 08:54: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 1qoK7n-0001W9-Ux; Thu, 05 Oct 2023 08:54: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=ojfqp12KWo82cHajhFCiUWMhKH9QWKEvENq+6a4GJzg=; b=p41JGdKwvWOvzpYgUhf2fZ/fq6
	Z+/8XVvMxUokoMSU1OrfRgotpGFO6fgfVVaU2GSwL+OUtVjoNvHzhhngj+Vq9QYjHuoN35Tl61fSG
	HvxteTISoVVwTNtS2b0b1eWBwXmi2H+IJgE9YrnCZs3FzibVU9pXbFDjGeVyNPIQ5124=;
Message-ID: <b740572e-df22-449b-8c90-a155292b2e69@xen.org>
Date: Thu, 5 Oct 2023 09:54:26 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: Issue with shared information page on Xen/ARM 4.17
Content-Language: en-GB
To: Elliott Mitchell <ehem+xen@m5p.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>,
 xen-devel@lists.xenproject.org, Stefano Stabellini <sstabellini@kernel.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>
References: <ZRvQNKyYpLDVTs0i@MacBookPdeRoger>
 <ZRxpC7ukhiYvzz5m@mattapan.m5p.com> <ZR0erl_OSkNgIQjx@MacBookPdeRoger>
 <c0b67401-dfe5-475f-8640-b66ac32a80fb@xen.org>
 <ZR1gM19i6-vBaXh7@MacBookPdeRoger>
 <b00500ae-76b1-441c-8154-bcdd897734dc@xen.org>
 <ZR1rBP_49Y2V8VF6@MacBookPdeRoger>
 <fe94dcd2-4429-48df-8ebd-59563d43796a@xen.org>
 <ZR18dlMAbCwEOeH4@MacBookPdeRoger>
 <f8242725-7ee0-4fca-a608-d234f8f3b564@xen.org>
 <ZR3VidifMWdjDQcv@mattapan.m5p.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <ZR3VidifMWdjDQcv@mattapan.m5p.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 04/10/2023 22:13, Elliott Mitchell wrote:
>>> I understand the situation is different on Arm vs x86, so if
>>> edk2 is not supported on arm I guess it doesn't matter much whether
>>> it's broken.  It would be a much worse issue on x86 where edk2 is
>>> supported.
>>
>> AFAIK, we have CI for x86 on EDK2 but we don't on Arm.
> 
> What is the current status of this?  I'm unsure whether it was an extra
> patch done by Debian, but "edk2-stable202211"/fff6d81270 doesn't work
> with Xen/Qemu.

I don't know what's the status for x86. But for Arm, there are nothing. 
And as I pointed out in my previous answer this is unlikely to change 
until someone invest time in EDK2 on Xen on Arm.

If there are patches sent on the ML, then I am happy to attempt to 
review them. But I am afraid, I am not going to have time to try to find 
and fix all the issues when using EDK2 in Arm guests.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Thu Oct 05 09:07:41 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 05 Oct 2023 09:07:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612904.953065 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoKKV-0000JI-2j; Thu, 05 Oct 2023 09:07:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612904.953065; Thu, 05 Oct 2023 09:07: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 1qoKKU-0000JB-UV; Thu, 05 Oct 2023 09:07:34 +0000
Received: by outflank-mailman (input) for mailman id 612904;
 Thu, 05 Oct 2023 09:07: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=g8SC=FT=cloud.com=george.dunlap@srs-se1.protection.inumbo.net>)
 id 1qoKKT-0000J5-AZ
 for xen-devel@lists.xenproject.org; Thu, 05 Oct 2023 09:07:33 +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 9c106b3b-635e-11ee-9b0d-b553b5be7939;
 Thu, 05 Oct 2023 11:07:29 +0200 (CEST)
Received: by mail-wm1-x335.google.com with SMTP id
 5b1f17b1804b1-4065f29e933so6849495e9.1
 for <xen-devel@lists.xenproject.org>; Thu, 05 Oct 2023 02:07:29 -0700 (PDT)
Received: from georged-x-u.eng.citrite.net ([185.25.67.249])
 by smtp.gmail.com with ESMTPSA id
 n22-20020a7bcbd6000000b004060f0a0fdbsm3287620wmi.41.2023.10.05.02.07.28
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Thu, 05 Oct 2023 02:07: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: 9c106b3b-635e-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1696496848; x=1697101648; 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=zeXhhj7+BOwATaTH2kV62PlQ9YKbOkTF73vUpKofeEI=;
        b=HcBYyCvsom5uGU0VqRcZ5cmuOzYkEuYBn4WuWJrB1AYfXh/dr+8LexXAWR/niAzqfb
         0eQZBzvL0cIYqZAkabDJVuVqSoczcNq/lrRhulA/Da9T+sBBJDV8c/rU8g1BNgrRHMkv
         kWztgjCzmjD1R0ApH6ogqWbYXn9zGxPQKBg4w=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1696496848; x=1697101648;
        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=zeXhhj7+BOwATaTH2kV62PlQ9YKbOkTF73vUpKofeEI=;
        b=NBPk6MZkLDYD/I+wTsJ6V8b99ddYZJQljBziRFPJsxlPfTPu3eD6euYJeJiWbjyNXy
         Og/JbTXKLB+kRiNsJeEveW/zzqn9ZZjFoVRWmCniSIiOfUB+CZpcs3ncb2KEfQP+oCrb
         39swRcQA3HtuOCbDVnhktricgqY8qopDkXCwPDZkjqjTJ1ydMarVGYzPkWI94FRKkp++
         yzSJaZ9YcIqSM5qD1yr6yy8LGxW4WG3oyjKK96Cs9Ogihl/LS0MSrTT2SgR8pYayZOJ9
         P8PAjPML9zbaDVUWZNmKeOPolZ32JCMs3OvGCcXYsOvR6fizvTOES0kaIGfwyE2lj/4g
         bynQ==
X-Gm-Message-State: AOJu0YycC1ootxTcuFo1Swwq3hUorYxun0J3IGf36BO3iicXLIx3RjBc
	zvqd/H8J1jAe6s7APhdH6sCNkrjeoA1wvRJZn1Y=
X-Google-Smtp-Source: AGHT+IHlFNrFv9A/M3VYKXD5/J3VklfTiB4n0TX1TWvYoV0tc4kfBjgYVlSvMrsc1nW53lflArXcpA==
X-Received: by 2002:a7b:ce98:0:b0:3fc:dd9:91fd with SMTP id q24-20020a7bce98000000b003fc0dd991fdmr4287348wmj.40.1696496848433;
        Thu, 05 Oct 2023 02:07:28 -0700 (PDT)
From: George Dunlap <george.dunlap@cloud.com>
To: xen-devel@lists.xenproject.org
Cc: George Dunlap <george.dunlap@cloud.com>,
	Bob Eshleman <bobby.eshleman@gmail.com>,
	Wei Liu <wl@xen.org>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Henry Wang <Henry.Wang@arm.com>
Subject: [PATCH for-4.18] MAINTAINERS: Make Bob Eschleman a reviewer
Date: Thu,  5 Oct 2023 10:07:27 +0100
Message-Id: <20231005090727.19235-1-george.dunlap@cloud.com>
X-Mailer: git-send-email 2.25.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Following a conversation with Bob Eschleman, it was agreed that
Bobby would prefer to return to being a Reviewer.

Signed-off-by: George Dunlap <george.dunlap@cloud.com>
---
Freeze exception justification: Only documentation change.

CC: Bob Eshleman <bobby.eshleman@gmail.com>
CC: Wei Liu <wl@xen.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>
CC: Jan Beulich <jbeulich@suse.com>
CC: Stefano Stabellini <sstabellini@kernel.org>
CC: Julien Grall <julien@xen.org>
CC: Henry Wang <Henry.Wang@arm.com>
---
 MAINTAINERS | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/MAINTAINERS b/MAINTAINERS
index 22034bf6e3..f61b5a32a1 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -499,8 +499,8 @@ F:	tools/hotplug/Linux/remus-netbuf-setup
 F:	tools/hotplug/Linux/block-drbd-probe
 
 RISCV
-M:	Bob Eshleman <bobbyeshleman@gmail.com>
 R:	Alistair Francis <alistair.francis@wdc.com>
+R:	Bob Eshleman <bobbyeshleman@gmail.com>
 R:	Connor Davis <connojdavis@gmail.com>
 S:	Supported
 F:	config/riscv64.mk
-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Thu Oct 05 09:09:31 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 05 Oct 2023 09:09:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612907.953074 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoKMK-0000rJ-CZ; Thu, 05 Oct 2023 09:09:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612907.953074; Thu, 05 Oct 2023 09: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 1qoKMK-0000rC-9M; Thu, 05 Oct 2023 09:09:28 +0000
Received: by outflank-mailman (input) for mailman id 612907;
 Thu, 05 Oct 2023 09: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=rfD8=FT=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qoKMJ-0000r6-2k
 for xen-devel@lists.xenproject.org; Thu, 05 Oct 2023 09:09:27 +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 e1207a8b-635e-11ee-98d3-6d05b1d4d9a1;
 Thu, 05 Oct 2023 11:09:25 +0200 (CEST)
Received: from DU2PR04CA0319.eurprd04.prod.outlook.com (2603:10a6:10:2b5::24)
 by AS8PR08MB6549.eurprd08.prod.outlook.com (2603:10a6:20b:33d::6)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.35; Thu, 5 Oct
 2023 09:09:19 +0000
Received: from DBAEUR03FT023.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:2b5:cafe::7f) by DU2PR04CA0319.outlook.office365.com
 (2603:10a6:10:2b5::24) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.33 via Frontend
 Transport; Thu, 5 Oct 2023 09:09:19 +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.6863.26 via Frontend Transport; Thu, 5 Oct 2023 09:09:18 +0000
Received: ("Tessian outbound d219f9a4f5c9:v211");
 Thu, 05 Oct 2023 09:09:18 +0000
Received: from 3971a5d7ab1d.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 3274A59B-B626-4288-9427-0CC28BB28700.1; 
 Thu, 05 Oct 2023 09:09:11 +0000
Received: from EUR02-VI1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 3971a5d7ab1d.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Thu, 05 Oct 2023 09:09:11 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by DB9PR08MB8483.eurprd08.prod.outlook.com (2603:10a6:10:3d5::22)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.28; Thu, 5 Oct
 2023 09:09: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%7]) with mapi id 15.20.6838.033; Thu, 5 Oct 2023
 09:09: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: e1207a8b-635e-11ee-98d3-6d05b1d4d9a1
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=O72MeGs0XwEEEOTU9MHfMzsob1JIXu9TRZWUmYG1Jvs=;
 b=wKlorCfunucsrFAiSOlvUxgvxNqlEVjs1GlRCopo1jk19uWPtAOMKOwOcCwSzS24V1dk+iofZqXWvDqRT0LowvgfGfqO7JM6eVL7Gj4n3AzrRvizJB/r6cYV+RuheMAh0lNYsh6mLHjqQ9MmAQifV7vq16J6mzxLyK+mWlIlGWg=
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: 31d2669abd53a6c6
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ocdpePYQCsn7GllmYdg4vMLFJ7RC0KmDWnC85+95VEurmFLeA3bk3F2bfULY5zwoaWZ3YLp+NYR8pSxjkAcXEBtImVEQ5SltCwiLTm/gZM43Nk5knfpwwiqcmoljwm5k0ECVq4UhuVinMJHu47vGn3/j0mgWFzYHMWNj6jvxPp1wZF3Tq7JhxEkJYQlS0AIZ5+LrX8Dp0EEMUFa8AcPhWBAXKe7D1utKyFpwsdT8w05pQh2mNA8z9nmzfc19LAvKHlfNoeIt4KcZlvD6NZggmJ3iB7c9t4q1FbMjhkrmix1JhLp3nstTRDOpN6TxNJAlcwBFllvbOoaCaxwRVh/myw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=O72MeGs0XwEEEOTU9MHfMzsob1JIXu9TRZWUmYG1Jvs=;
 b=ZzxG2vyiVKJ4Gj6TGsnFcarDxt65QkM9sDJoNTUawM/z9Q46ogg6r8mBiOhyZ54u/zRC+++cTZUL+v5CsQdPjaW2nWmIUL89AdCO/9L4vJP0LhV143SNTa199zOC6i0CBTjxQl5EYiMwr9FHxCL37UtbiXskZmD4xuc4NhLoKAodopzEnAXZ5rKj0VdzaYb9Cqwnh0EasZFN4HXQo6u+Vc3RyYuZ7WfG36ia70+pcaomCduYVKYM9uLjxlkT11sSitPJdZVH3eEYJcN5NYamC+xWJqLgG2B0dE0QCXTH9xJUKws9cN2sRRhXg6fVf/4DoiDTB1KOFpvVQ6pruvmtww==
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=O72MeGs0XwEEEOTU9MHfMzsob1JIXu9TRZWUmYG1Jvs=;
 b=wKlorCfunucsrFAiSOlvUxgvxNqlEVjs1GlRCopo1jk19uWPtAOMKOwOcCwSzS24V1dk+iofZqXWvDqRT0LowvgfGfqO7JM6eVL7Gj4n3AzrRvizJB/r6cYV+RuheMAh0lNYsh6mLHjqQ9MmAQifV7vq16J6mzxLyK+mWlIlGWg=
From: Henry Wang <Henry.Wang@arm.com>
To: George Dunlap <george.dunlap@cloud.com>
CC: Xen-devel <xen-devel@lists.xenproject.org>, Bob Eshleman
	<bobby.eshleman@gmail.com>, Wei Liu <wl@xen.org>, Andrew Cooper
	<andrew.cooper3@citrix.com>, Jan Beulich <jbeulich@suse.com>, Stefano
 Stabellini <sstabellini@kernel.org>, Julien Grall <julien@xen.org>
Subject: Re: [PATCH for-4.18] MAINTAINERS: Make Bob Eschleman a reviewer
Thread-Topic: [PATCH for-4.18] MAINTAINERS: Make Bob Eschleman a reviewer
Thread-Index: AQHZ92tpfMLmzML2okm2AFXPydcO7rA66EwA
Date: Thu, 5 Oct 2023 09:09:07 +0000
Message-ID: <4EA3786A-6FDE-40AB-972A-ABA2AF430B35@arm.com>
References: <20231005090727.19235-1-george.dunlap@cloud.com>
In-Reply-To: <20231005090727.19235-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_|DB9PR08MB8483:EE_|DBAEUR03FT023:EE_|AS8PR08MB6549:EE_
X-MS-Office365-Filtering-Correlation-Id: ff24ef50-8cfe-4260-e740-08dbc582c1b9
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:
 8UZLjhrZ+Ig67IQ7h4IKMjZdN303Y2xAcXquPDO+lXjAg91R56BLQT+31troe3jxF7bGEjAZT+lTQkWdhpcBQ91JZ/Fs2jqUQRDwQYkhTECOBKgmC7zPdqRHYPWR6B/HELK4FydEgQlf3Bis9PpLXDSTlS7ZmF3dNeMtGVoSMnIjwdoYEa0H6NNxAaVlSAqp0qQaxFwEX6xlbU/iDBszTaOjAX70CcepWaPOvlJe2pPC0xfYva8bhbFMad0/H3MFfijSaO1Fy2lLiAuLNekelEOCoCrIsWAqra3iDvkVHBPfPpuXh3Q4PSk6vjJgzhUqR6xJSn2w9DYgRLiUedwkpA2CrNcC3fLIPJUJkBY+Nc401UUTm38evItpgB16NL5fTsE06sEbb6F+1ZIsCZGcaE0R3xgc0PANuhTRa604N0ijapc4BvZ0DLMYz++4OApclfBi025gpM3fdJOqf6YKDENeq/pSfE7yNUv8xTtaxTHVvlENfCk0S2C/xlSyZQ8vYF9bTmYQ0jufun7n8423dWj+atRsZaosRpbT/KZssaPjC6/kotXR+sKiSQA5/dfh99bpakgNBOQux6YAIFXIazn+G8CWzFF5xqQGh/aJKl7m5vzwJvbM6OdixPZXRrUeAHvORX79U6m27HEs738rlw==
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)(136003)(346002)(366004)(396003)(230922051799003)(186009)(1800799009)(64100799003)(451199024)(6506007)(66446008)(8936002)(4326008)(2906002)(8676002)(66946007)(6916009)(91956017)(5660300002)(66476007)(66556008)(41300700001)(4744005)(64756008)(54906003)(316002)(38070700005)(76116006)(38100700002)(71200400001)(53546011)(26005)(2616005)(6512007)(6486002)(83380400001)(478600001)(122000001)(86362001)(33656002)(36756003)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="us-ascii"
Content-ID: <2BD4A3FD338E904194FD914C8205283C@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR08MB8483
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:
	34694149-a67a-47c9-8698-08dbc582bacb
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	oBmFtniCpxpQkrqRnJndnsAsUcjHmYq2xi+qgVqAzkcRuH5i8IhzmuJAhEVngUvUfnJu3+bFCJvtvn9nbFdHLBneQnTSlZO5Bnr5CJE1CiHZznaZu00xCSK2zX0vkwSmZ/+XDx3xVyMwOsh4mv6HsTBhZgTEZNZdaCoQ5gAHf3xPtaRS8Ac4vnUWN34sX7CaCXeTIdq0GUTG08JOI5qwoQ6vt6P3u9qZJwoc9rLvCRkYVE8rYujEjFjaeQ00MfOygnCV36eDmMwiJW/+JbfsuQ3qHbVpENyQHrd+cKw2kypIl0IfjcD07oMEQMA6mR2cYOKmt/gtAwzD3IZZ+Q0aJbpaNW5LPJkBoNe3ov/woPXlFkm0b4KzCJ4QzlbvZK2txneROzGWNRZm9jOIcCgW6Z48I8z9W6nESczxemIDf8+rL9X52dHft4oo75rxE1IR9roypz90A/fUEmpHHOPnU5XfcBkfU37FNCSlg/cG+lMKNXMCw0IEzY/BkUQp0yLz3jAQJGdokV637y0RhZc1+x8v3NvHgOZZ/4c7+VP15KeThwO9ScHaQ4E3WDEJnWrtnLaoko5dQQHGosUww1xcTeMh3v7PB2EqDYYAdK9Qt9LTWPsQQjTg/r/XT9xeAT++I1QNupZ7SEXjniWzIZEcMdR7RMP0wRMb9dAkRR9EVQsvgSIV2iWgvILxm6mzVckm0LFfALE7gZ50Pll+8ny2CeYgd/FDtJdiBbfu6Qmi7/HXmyzIDW6Bbds/lB83dRIv
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)(64100799003)(186009)(1800799009)(82310400011)(46966006)(36840700001)(40470700004)(316002)(47076005)(26005)(6486002)(336012)(6506007)(6512007)(53546011)(36756003)(82740400003)(478600001)(2616005)(356005)(81166007)(83380400001)(36860700001)(70586007)(54906003)(70206006)(41300700001)(5660300002)(2906002)(40460700003)(86362001)(40480700001)(33656002)(8676002)(4326008)(6862004)(8936002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Oct 2023 09:09:18.9507
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: ff24ef50-8cfe-4260-e740-08dbc582c1b9
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: AS8PR08MB6549

Hi George,

> On Oct 5, 2023, at 17:07, George Dunlap <george.dunlap@cloud.com> wrote:
>=20
> Following a conversation with Bob Eschleman, it was agreed that
> Bobby would prefer to return to being a Reviewer.
>=20
> Signed-off-by: George Dunlap <george.dunlap@cloud.com>
> ---
> Freeze exception justification: Only documentation change.

Of course. So:

Release-acked-by: Henry Wang <Henry.Wang@arm.com>

Kind regards,
Henry

>=20
> CC: Bob Eshleman <bobby.eshleman@gmail.com>
> CC: Wei Liu <wl@xen.org>
> CC: Andrew Cooper <andrew.cooper3@citrix.com>
> CC: Jan Beulich <jbeulich@suse.com>
> CC: Stefano Stabellini <sstabellini@kernel.org>
> CC: Julien Grall <julien@xen.org>
> CC: Henry Wang <Henry.Wang@arm.com>
> ---
> MAINTAINERS | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>=20
> diff --git a/MAINTAINERS b/MAINTAINERS
> index 22034bf6e3..f61b5a32a1 100644
> --- a/MAINTAINERS
> +++ b/MAINTAINERS
> @@ -499,8 +499,8 @@ F: tools/hotplug/Linux/remus-netbuf-setup
> F: tools/hotplug/Linux/block-drbd-probe
>=20
> RISCV
> -M: Bob Eshleman <bobbyeshleman@gmail.com>
> R: Alistair Francis <alistair.francis@wdc.com>
> +R: Bob Eshleman <bobbyeshleman@gmail.com>
> R: Connor Davis <connojdavis@gmail.com>
> S: Supported
> F: config/riscv64.mk
> --=20
> 2.25.1
>=20



From xen-devel-bounces@lists.xenproject.org Thu Oct 05 09:22:22 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 05 Oct 2023 09:22:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612913.953084 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoKYi-0004TN-Qw; Thu, 05 Oct 2023 09:22:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612913.953084; Thu, 05 Oct 2023 09:22: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 1qoKYi-0004TG-OL; Thu, 05 Oct 2023 09:22:16 +0000
Received: by outflank-mailman (input) for mailman id 612913;
 Thu, 05 Oct 2023 09:22: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=gndL=FT=epam.com=prvs=46423b4a7f=andrii_chepurnyi@srs-se1.protection.inumbo.net>)
 id 1qoKYh-0004Sr-UK
 for xen-devel@lists.xenproject.org; Thu, 05 Oct 2023 09:22:16 +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 aac0d26c-6360-11ee-98d3-6d05b1d4d9a1;
 Thu, 05 Oct 2023 11:22:14 +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
 3958bQ50024300; Thu, 5 Oct 2023 09:22:02 GMT
Received: from eur05-db8-obe.outbound.protection.outlook.com
 (mail-db8eur05lp2105.outbound.protection.outlook.com [104.47.17.105])
 by mx0a-0039f301.pphosted.com (PPS) with ESMTPS id 3thssxg5q4-1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT);
 Thu, 05 Oct 2023 09:22:02 +0000
Received: from AS8PR03MB9583.eurprd03.prod.outlook.com (2603:10a6:20b:5aa::18)
 by AM7PR03MB6547.eurprd03.prod.outlook.com (2603:10a6:20b:1c0::14)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.28; Thu, 5 Oct
 2023 09:21:58 +0000
Received: from AS8PR03MB9583.eurprd03.prod.outlook.com
 ([fe80::529f:7d90:7f52:64aa]) by AS8PR03MB9583.eurprd03.prod.outlook.com
 ([fe80::529f:7d90:7f52:64aa%4]) with mapi id 15.20.6838.033; Thu, 5 Oct 2023
 09:21: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: aac0d26c-6360-11ee-98d3-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=RkHvwblcgSHOFJNsbX5kcv7fmHSSh0KtkYwJtXZ9IfVq+USVbSTZEmZjXI9R3MMZp/66pUxw3cUPc9Q+/BipZiLSq7fU7RBT0o2SfUgjxz01+2A4SOjO9h8glA0czf0Z4WCJq+7/Ow3M+Sp1wRyAK/h+7hTG+QhqcwAJL9rSwmwIxmWlqT9wf6n6Y1L+/HMgYzYTkHUYIEL7FTW+4DiKHt8Lo+hSH33StOyWGHCsx5AWz00BwZ2TAJ2QX6d9elDAqa8sVnWDNvry1C/gHFwRU9XMQtTV0fFmRiy9hqX+agU8pWBcp1brN+abNz8HHFoI7uYXVmxYbWIqjbguL7QrbQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=lAt6Qd8fD4vJ9p244TC6V+jS7EuLxVAUgm5EU9HmNrg=;
 b=cCqJUB85bFV2rRi4ADmsxE94jKOWame+hrHJxnQruIoo968tA2pD1rT/XXf35ijFqyywXoqpsYRX6JQqWAp1z/meGijqUbSt7bW2g5he0FnqjsvWvLCzxIoDyuaRtNWTcvSTUJNBHpsDfOGgpTohf10v9+0wAR2YhaOeGi/jS+kNK3k46c2MLI/wFUCXeBlB1OFeVo8bTcuQli0X7guet3/AHNY5WOyyRnwwnLUbFY3lbIof1DcEsje4Nz3NL8tcfqWznn83NbMLk19nMpro+kBHrXN/7C8Q8u/+Ouff9wxxdMzJ949fy+2ay/CAq8oobRhmaaNln8Q/plvCv5RpZQ==
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=lAt6Qd8fD4vJ9p244TC6V+jS7EuLxVAUgm5EU9HmNrg=;
 b=LCbd83gfrP9Kuo0WDdGN7eYGINYH5YMiTcmKAr3EB1OHuJH5OtMsYg5E3O6dzb564vQCTaiiyv2aCqKzTyr8Ke77tJtYAwrK1SLFJxbgVEgr357X/6lmMzRMrXmQHVBvqcaO3wsn/4v78GLdnu28qF6Li0dDHAtkJutwfjlJ1vpXdL/S7ETU891/f2P7Pf6bZ4128uH8IxGVixAkSmY+FOAgdMDMilj4rqnK09T63WCspJ18WSRD2MwSn6nIufCzcmRVloOM99smSrUPQsoxfNqg8GPVK1Js/akc0N9H4A/Eqaqu0uU5jAFwVI6inGCmeHa4+fvPR1HYOqtFuKKXzA==
From: Andrii Chepurnyi <Andrii_Chepurnyi@epam.com>
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
CC: Oleksandr Tyshchenko <Oleksandr_Tyshchenko@epam.com>,
        "andrii.chepurnyi82@gmail.com" <andrii.chepurnyi82@gmail.com>,
        Andrii
 Chepurnyi <Andrii_Chepurnyi@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/ioreq: guard interaction data on read/write operations
Thread-Topic: [PATCH v2] arm/ioreq: guard interaction data on read/write
 operations
Thread-Index: AQHZ921jE0Gi8tDe8UKrF6otg5GdAg==
Date: Thu, 5 Oct 2023 09:21:58 +0000
Message-ID: <20231005092141.2540016-1-andrii_chepurnyi@epam.com>
Accept-Language: uk-UA, en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
x-ms-publictraffictype: Email
x-ms-traffictypediagnostic: AS8PR03MB9583:EE_|AM7PR03MB6547:EE_
x-ms-office365-filtering-correlation-id: 58c792f5-9851-4cbb-18b0-08dbc584865a
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: 
 NxtZVqaWuBmyBrX8z4F0GpTAKjxW0yTNK1WgWu8p1Xzf0YlIPs/zwMi++2jkqGhlmp5RRqzStWtYMo1TeHOZmbWg4PiwuycAJHerAd7KTUqSxsUZBAzW3Mi/ltf5lZ7iqQ3rDSw2IcVNN3k+kJMpB7XbBX5lGBnTVpvCxXrCL2Vq7hZQmTi7h04cQh6wiuoKwgoSJrYF4Mo8/fC4IFYU3YKv8K/XA6llPycMPoZgeJCRqpCaZkCT9XAx08sAE4GekwI6LozDjvZ3vUriraplsaYDCp0AoC6+GtL65he33OkPP0Z1VnPa3EqQdUYnWnZSlqH8iTQjPQ7SIdLCK28Ixqje2kx4oU1yBC4/sIM208Ht2GaJrCfLpyw8VRWyGvDWxFhEku77Zp/57lHc9nJKL6MONG3S8j6IMDz80vVW3HnmwjNWCWCH2QBc5Q8Gos3wraIE5G+5colr/6+BvK+ZVTkFNA1308tQKSbx8mOr9PYjt+Gllj/pIHZrsbq9WXklyfArZNm6FgRyEuWNNqqgK4lAELsB2kpmFnzgxSMTc6Kqipmd3XCvLOddlnoMsosYRlXdPazQw0mqEY88SkflFepezs5Y7WMVhWylCQX8vY4Pc5HMzvoay2RgSMzEmtxY
x-forefront-antispam-report: 
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR03MB9583.eurprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(136003)(346002)(366004)(396003)(376002)(230922051799003)(451199024)(1800799009)(186009)(64100799003)(76116006)(86362001)(122000001)(66446008)(6916009)(38070700005)(66946007)(316002)(54906003)(38100700002)(64756008)(2906002)(91956017)(478600001)(66556008)(66476007)(4326008)(5660300002)(2616005)(83380400001)(8936002)(107886003)(71200400001)(6486002)(6506007)(1076003)(41300700001)(26005)(8676002)(6512007)(36756003);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: 
 =?iso-8859-1?Q?xZ72fnHflieaCtOjnZLf9dhMABarufwhd9Tr7dJ097cRR3mmEIDnBHGVwu?=
 =?iso-8859-1?Q?14Qs20w7yPlIijCbDzaGv2WJ+GIglcrFGLJ98IJv4jMSlE7WLzSRcHL5Sz?=
 =?iso-8859-1?Q?SfLubiNquuUDZakIG2Yvx6q6RGiI++WClb8IojRbX2ixtAp0PYAZ3W4Tmy?=
 =?iso-8859-1?Q?LhZtXBwxAwfAK2qIlToLP6Hk9+c4Dz2H9g1gfGHXihKVjHz0YdtcnDzuNq?=
 =?iso-8859-1?Q?2TO1R+yh4n+/otexWL7JqtyLMl7SOqH/LIhzCc2+3O8aCQ6dsbs/zphBzK?=
 =?iso-8859-1?Q?WKuNdW01JNb+UfuezQhBHTG27Dr9dt47+UfHf9pR5LGSC9nciNtCcK/NfY?=
 =?iso-8859-1?Q?iWEj2Yc2zS1/AOGdXbASal8b5fkpf7KUXXqCLbZvUoSlO3rDC8echp5WLB?=
 =?iso-8859-1?Q?FlTeIRR3nHKoYVjgzIAPy2wXcEx+VOVDcwODshUyq4BPwyMxHO2amY8WDO?=
 =?iso-8859-1?Q?/MQr/A4+t0VEGqOaq+6rqCi2Aew2wHaZRal4Wd5lduy8meFHAzURR//hp9?=
 =?iso-8859-1?Q?eH0KdMQ07kWaiF4Wc1hsFfl5pjdfqRQ8EPEGJR6pLVwbenlSGHBV2ORv0n?=
 =?iso-8859-1?Q?CwqwlgKiC4Wwcz5Q+iS0Epo/3tBOAEfdkcppT1KxONwc0MMK7q9HJJxdA7?=
 =?iso-8859-1?Q?3gkQYNBAbn2o4QkOsMV3U/dERkxgZbWkp4lLmDnzPn7rEGkd+fZT1Ko69Y?=
 =?iso-8859-1?Q?L+EqRsX2yrr1Cki75HS7wxgRAPDectGtfbZnK/9gW/ahl1SPVUpke6fr4T?=
 =?iso-8859-1?Q?D0U/Ieh+7n2v3HgR2KRT5Z1DToLtq0JcB9hwXLtALNPh/Ac647yPDslWq2?=
 =?iso-8859-1?Q?JXATgqiVwTfyMoyPdj7HnceQfhj4a1hFU4sUMO/VQCpJy+jXpvRz5hZv1o?=
 =?iso-8859-1?Q?ZuBlpNOT7bYhsuPy1Nal+IQP5pMKZ//f8hfgihPhGdsHozuiVjv7MD9VY9?=
 =?iso-8859-1?Q?oUfy2lUZwz9dq3L75DQFCBsZaEGhYhj1+r0rPHDBWcedSwf8JZQzBh5vjB?=
 =?iso-8859-1?Q?wXlf6+3rK3tNRJrOHrPHplpgZ5vzB5nf75DjXFLysk0eQPT7Pk1H1hFey8?=
 =?iso-8859-1?Q?TDF2YNcknSu8nua4g5NV2JekuRKFaXzI2I7luNxnqIRgbZPoLXwytXco2H?=
 =?iso-8859-1?Q?d9MfBcGj6VFgUBZadjoRd6/odb4FrHWvh7DRDUtkDpjSDnyNeb4gSLRHtv?=
 =?iso-8859-1?Q?Ieh/HrmXFkpJXcV4OvGpulKBzfsWM5ToTXuRKlksiO9ImmEGsntp885SY2?=
 =?iso-8859-1?Q?ZwRR4dj8RFxx1K2iqUbDzgSl3VEE8aZBxrZe1AS1ElX5qOYunVxxZ/IZdI?=
 =?iso-8859-1?Q?V2wodNv/wdQsbY7FObDTxXzzjJtg+OrvYA0hHW0c06o4ehoQtYwtbWiuzb?=
 =?iso-8859-1?Q?b4BNTmoFdx/QkxiJG4dmrNPfJZTdRFUXQ+ucBwm0imtmzGtilQNB8DErQ2?=
 =?iso-8859-1?Q?45Ipb5IRG1sNK7gGRHL44tR0lsILB/VJ84rIdh9ngOI/N9Con+d1Z8UwLd?=
 =?iso-8859-1?Q?9YG6y+xhcB9FyAMGvufZ7RCn5zhn6y4vTzxTurqdQvWqhTygH0zhbAU4rz?=
 =?iso-8859-1?Q?25gcOHNmrvxgijAFtwBWqWKVM3eGp3SA/xwGYw9LoVI2yZNcmwp81YTHn3?=
 =?iso-8859-1?Q?Ggf5rgf3/O3dW6PGYltOM5RxcTCNnDNzfxzrcKaVuOeGMoEDbJ5teeqg?=
 =?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: AS8PR03MB9583.eurprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 58c792f5-9851-4cbb-18b0-08dbc584865a
X-MS-Exchange-CrossTenant-originalarrivaltime: 05 Oct 2023 09:21:58.3346
 (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: xyNOv/8gn695zbUgRLjsSZI4gQBOO+JzdLMN0NKrAjEpXcOMS+x1AgCgdLD8SihGw6GZb0qWoKeimGWEfSbP83K1OXJ+4EIUaINcKDWHVnY=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM7PR03MB6547
X-Proofpoint-GUID: F_5XtpUeXkCskwiOFOVMaavogUKjH2mu
X-Proofpoint-ORIG-GUID: F_5XtpUeXkCskwiOFOVMaavogUKjH2mu
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-10-05_06,2023-10-02_01,2023-05-22_02
X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 spamscore=0 impostorscore=0
 phishscore=0 mlxlogscore=999 malwarescore=0 bulkscore=0 suspectscore=0
 adultscore=0 lowpriorityscore=0 mlxscore=0 priorityscore=1501
 clxscore=1015 classifier=spam adjust=0 reason=mlx scancount=1
 engine=8.12.0-2309180000 definitions=main-2310050072

For read operations, there's a potential issue when the data field
of the ioreq struct is partially updated in the response. To address
this, zero data field during read operations. This modification
serves as a safeguard against implementations that may inadvertently
partially update the data field in response to read requests.
For instance, consider an 8-bit read operation. In such cases, QEMU,
returns the same content of the dat field with only 8 bits of
updated data. This behavior could potentially result in the
propagation of incorrect or unintended data to ioreq clients.
There is also a good point to guard interaction data with actual size
of the interaction.

Signed-off-by: Andrii Chepurnyi <andrii_chepurnyi@epam.com>
---
 xen/arch/arm/ioreq.c | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/xen/arch/arm/ioreq.c b/xen/arch/arm/ioreq.c
index 3bed0a14c0..26dae8ca28 100644
--- a/xen/arch/arm/ioreq.c
+++ b/xen/arch/arm/ioreq.c
@@ -17,6 +17,8 @@ enum io_state handle_ioserv(struct cpu_user_regs *regs, s=
truct vcpu *v)
 {
     const union hsr hsr =3D { .bits =3D regs->hsr };
     const struct hsr_dabt dabt =3D hsr.dabt;
+    const uint8_t access_size =3D (1 << dabt.size) * 8;
+    const uint64_t access_mask =3D GENMASK_ULL(access_size - 1, 0);
     /* Code is similar to handle_read */
     register_t r =3D v->io.req.data;
=20
@@ -26,6 +28,7 @@ enum io_state handle_ioserv(struct cpu_user_regs *regs, s=
truct vcpu *v)
     if ( dabt.write )
         return IO_HANDLED;
=20
+    r &=3D access_mask;
     r =3D sign_extend(dabt, r);
=20
     set_user_reg(regs, dabt.reg, r);
@@ -39,6 +42,8 @@ enum io_state try_fwd_ioserv(struct cpu_user_regs *regs,
     struct vcpu_io *vio =3D &v->io;
     const struct instr_details instr =3D info->dabt_instr;
     struct hsr_dabt dabt =3D info->dabt;
+    const uint8_t access_size =3D (1 << dabt.size) * 8;
+    const uint64_t access_mask =3D GENMASK_ULL(access_size - 1, 0);
     ioreq_t p =3D {
         .type =3D IOREQ_TYPE_COPY,
         .addr =3D info->gpa,
@@ -79,8 +84,7 @@ enum io_state try_fwd_ioserv(struct cpu_user_regs *regs,
         return IO_HANDLED;
=20
     ASSERT(dabt.valid);
-
-    p.data =3D get_user_reg(regs, info->dabt.reg);
+    p.data =3D p.dir ? 0 : get_user_reg(regs, info->dabt.reg) & access_mas=
k;
     vio->req =3D p;
     vio->suspended =3D false;
     vio->info.dabt_instr =3D instr;
--=20
2.25.1


From xen-devel-bounces@lists.xenproject.org Thu Oct 05 09:25:09 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 05 Oct 2023 09:25:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612918.953093 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoKbU-0006Qe-7e; Thu, 05 Oct 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 612918.953093; Thu, 05 Oct 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 1qoKbU-0006QX-51; Thu, 05 Oct 2023 09:25:08 +0000
Received: by outflank-mailman (input) for mailman id 612918;
 Thu, 05 Oct 2023 09:25: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=xhCt=FT=citrix.com=prvs=635b598b3=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qoKbT-0006QP-34
 for xen-devel@lists.xenproject.org; Thu, 05 Oct 2023 09:25:07 +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 0f8759e5-6361-11ee-98d3-6d05b1d4d9a1;
 Thu, 05 Oct 2023 11:25:04 +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;
 05 Oct 2023 05:25:00 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by SJ0PR03MB6501.namprd03.prod.outlook.com (2603:10b6:a03:386::18)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.27; Thu, 5 Oct
 2023 09:24:58 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::66ca:3a42:baeb:9ecf]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::66ca:3a42:baeb:9ecf%6]) with mapi id 15.20.6838.030; Thu, 5 Oct 2023
 09: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>
X-Inumbo-ID: 0f8759e5-6361-11ee-98d3-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1696497903;
  h=date:from:to:cc:subject:message-id:references:
   in-reply-to:mime-version;
  bh=qZoYmhJgKJlmLOUtAXKL1UZD7rIA5qfyp690tsrv5v0=;
  b=HK+E1DUWjMbxsReuL6MgP0nJ9li3PCnwEn5ol5oYCpfthiTP/PTMzVqL
   w0Ew9QT3dKG2yIclzHhb6vkOenabfzIG64N5h427vkDphvGz+smbPcLAp
   GiFd0Woh1sZlQnL8E/i+l3hfoPufDRe+28uHs1RMMJjIyPO0fmX6h0pD4
   U=;
X-CSE-ConnectionGUID: Gs0Ce7VVSW24UFLu3hk/GQ==
X-CSE-MsgGUID: BvealOTRRXWmnsI/jbDv3A==
X-IronPort-RemoteIP: 104.47.59.172
X-IronPort-MID: 124705149
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:5KcAequSOZ9UNumYiBRlAHSelufnVMBfMUV32f8akzHdYApBsoF/q
 tZmKT3SaP/YYWSjfdtwatu3/EsAu8LXnNJmSFNq+yw9HigQ+JbJXdiXEBz9bniYRiHhoOCLz
 O1FM4Wdc5pkJpP4jk3wWlQ0hSAkjclkfpKlVaicfHg3HFc4IMsYoUoLs/YjhYJ1isSODQqIu
 Nfjy+XSI1bg0DNvWo4uw/vrRChH4rKq41v0gnRkPaoQ5QeGyiFMZH4iDfrZw0XQE9E88tGSH
 44v/JnhlkvF8hEkDM+Sk7qTWiXmlZaLYGBiIlIPM0STqkAqSh4ai87XB9JFAatjsB2bnsgZ9
 Tl4ncfYpTHFnEH7sL91vxFwS0mSNEDdkVPNCSDXXce7lyUqf5ZwqhnH4Y5f0YAwo45K7W9yG
 fMwBytVRR3cudyN/+jnd8dIm58jL47EBdZK0p1g5Wmx4fcOZ7nmGv+PyfoGmTA6i4ZJAOrUY
 NcfZXx3dhPcbhZTO1ARTpUjgOOvgXq5eDpdwL6XjfNvvy6Pk0osgf60b4C9lt+iHK25mm6Co
 W3L5SLhCwwyP92D0zuVtHmrg4cjmAuiAt5NTODhqq8CbFu77HIeARkxaWGBkca8jFWfHNBVB
 1JP0397xUQ13AnxJjXnZDWju2KNtBMYX9tWEsU55RuLx66S5ByWbkAGUzpAZdoOpMIwAzsw2
 TehktPkAH9/vbu9TC+FsLyTqFuaKSUTaGMPeyIAZQ8E+MX45pE+iArVSdRuG7Lzicf6cRn6z
 iqWtiE4i/MWhNQSyqSg1VndhnSnoZ2hZjAy4gLbT2e09DRTbYSuZ5GrwVXD5PMGJ4GcJnGGu
 HUHgMGY4Po5EYCWlCeNTeMOG5mk//+AdjbbhDZS84IJ8j2s/zuveN5W6TQnfkNxaJ9bI3nuf
 VPZvh5X6NlLJny2YKRrYoW3TcM30aznEtejXffRBjZTXqVMmMa81HkGTSatM6rFySDATYlX1
 U+nTPuR
IronPort-HdrOrdr: A9a23:+0oetq/7uAA6kReqOFhuk+AuI+orL9Y04lQ7vn2ZKSY5TiVXra
 CTdZUgpHnJYVMqMk3I9uruBEDtex3hHNtOkOss1NSZLW7bUQmTXeJfBOLZqlWNJ8S9zJ856U
 4JScND4bbLfDxHZKjBgTVRE7wbsaa6GKLDv5ah85+6JzsaGp2J7G1Ce3am+lUdfng+OXKgfq
 Dsm/auoVCbCAwqR/X+PFYpdc7ZqebGkZr3CCR2eyLOuGG1/EiVAKeRKWnj4isj
X-Talos-CUID: 9a23:iwzDVm5JPQBs+UtKptss21VMMc16TEPm8y2MHmGcFD1pS/q6cArF
X-Talos-MUID: 9a23:j3aREAaXWtErLeBTnSHhjTVFCP1S05urDlss1pcMl9ffHHkl
X-IronPort-AV: E=Sophos;i="6.03,202,1694750400"; 
   d="scan'208";a="124705149"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=P35qldkb8OVcW4Csg5MgjbGBUEVCZAE6591ZqMwKtGWJ7Ga4u/rVx3Al4zCF0fG0WYwk73bGo/K/b+tJ18IJmtDLZIEBPpoRYKh9+rRzNw5h21RClnRwci22s1s8ibgEE372DC7NYyL0taBpTIB3BzTPJL0sKhumTB+6LyIO1QM1dBltCUnLk7Z88Z3JxMYg7rs9RmwqbEJDiBr5q4poEvQdMC7RM7/nGPIA+egyYEceON6oPI/EPN1qDy1hYsl4dtDAz2mxCCitK7JVGxYCry9vWzJqdmt3q+FQkN+o1T4jFttB2McelrSAP4gakypxKGTbCsInqQwUaKV0oHzoUg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=IY/ZP+1A8yLjOjA0HPlR3ZxteuI6jDosQ8al0+KNN3E=;
 b=E0WRvQcJCMcBv9AQX0o2KjDWU047Ulnhw7s04ibO5ljF3WtKCSmG0KQXrA+bbCh4mA4RzyQ3UNXfKT+oCB/vSKosJBn4WJ88f20t2JgfKrnad+YzfVZ/eNXy7307SQdkTb++tskOGIODiYNHqPhLjWfqZa/mnbVGo2Y4m2qTd9Ey9RKz0jBMjX7kBFbV/fZAv8HnRE7+Ko33p4oLFWQIE5XFMb286RPIUxJa8QqMFrHgwg8ZZg+07qvMrahjyqy4g8RGVpnswyAkLKgYxuAxns8XY54Wzwj4Scc5D8TOeYYjOD5yg5Uq61kUNO4I34X7G1bfAhoeAU5ePDYG9oyeew==
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=IY/ZP+1A8yLjOjA0HPlR3ZxteuI6jDosQ8al0+KNN3E=;
 b=aKw8swd+HUPpj6WdRldWpmqa1r8IOLaOBJLWfYMaRzKQGdcOhU6/4iOtZvfc7NU3IbqV8XPZRNqtjzL3Po44shrbWL3spqVIfisZH/Hfzgrp0zAPKt2ClZYwNcf7fC6lP+zd6GuKiLu5axI29KZdm7u5KVDMcfhhYDnKrfpz7sA=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Thu, 5 Oct 2023 11:24:52 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Stefano Stabellini <sstabellini@kernel.org>
Cc: Julien Grall <julien@xen.org>, Elliott Mitchell <ehem+xen@m5p.com>,
	xen-devel@lists.xenproject.org,
	Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>
Subject: Re: Issue with shared information page on Xen/ARM 4.17
Message-ID: <ZR6A5LP1FKFAgJRv@MacBookPdeRoger>
References: <ZRxpC7ukhiYvzz5m@mattapan.m5p.com>
 <ZR0erl_OSkNgIQjx@MacBookPdeRoger>
 <c0b67401-dfe5-475f-8640-b66ac32a80fb@xen.org>
 <ZR1gM19i6-vBaXh7@MacBookPdeRoger>
 <b00500ae-76b1-441c-8154-bcdd897734dc@xen.org>
 <ZR1rBP_49Y2V8VF6@MacBookPdeRoger>
 <fe94dcd2-4429-48df-8ebd-59563d43796a@xen.org>
 <ZR18dlMAbCwEOeH4@MacBookPdeRoger>
 <f8242725-7ee0-4fca-a608-d234f8f3b564@xen.org>
 <alpine.DEB.2.22.394.2310041509170.2348112@ubuntu-linux-20-04-desktop>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <alpine.DEB.2.22.394.2310041509170.2348112@ubuntu-linux-20-04-desktop>
X-ClientProxiedBy: LO4P265CA0306.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:391::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_|SJ0PR03MB6501:EE_
X-MS-Office365-Filtering-Correlation-Id: 43ec6d85-aa0f-430b-fe16-08dbc584f176
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	xwYT4I58zOV6rwx8AssGBoOAzLCr5rbo6LCXYkt2zF0UWmbrnPTsEkK4YjKgNTTfeMwwk4lqq7vxyKg3KxpddgEAkNAFQdwLzroq2jIb6QXzMmyDyjeNCM+R4pdRnUACnoiur4tl/2mXeozBlR6gLwQ08BgZXSzmpL8Rnv/BnYT+4kzrLkM68PfDBIH8ciYsKkcSwd7NPnnzI1WEPs17B5/3lJwMhZoMT3R+1JWVqdvEv9nLgwTAmyhtgAVebX3oRrWKyrSpoDNqcSj1pyWEF3MMC7v2+1+uERWgzYmkR4mv6/1n9CM60WVjMmA6Ms5ktkai4elrNl93O5wm65AWkKSrdIgvpSGDOuMQwtMZYZ970iS3JRAf/OwiZfvOg+LX3+0koxBXe8w8KNQEqw5yNmWjEAeWusBbo/35vMyo3Q4oLrjqVegIkd3tQ177K95hMZ2eTmWolBrOjFPjRTNKYAli12jfvd4O4UXjXIc7gyYnPG2nk5eH/Wn74VfdLh0QKLZxXjIylMTGYrpx5m9lez+EH2sBBJfKG2xf1qBy0A5WXYLAg3iEF9T7ccXjw1pv
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)(396003)(39860400002)(376002)(366004)(346002)(230922051799003)(1800799009)(451199024)(64100799003)(186009)(5660300002)(8676002)(2906002)(4326008)(8936002)(41300700001)(66899024)(66556008)(316002)(6916009)(66946007)(66476007)(54906003)(33716001)(26005)(6666004)(85182001)(6506007)(6512007)(9686003)(82960400001)(38100700002)(83380400001)(86362001)(478600001)(6486002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?VndVTnFLdlpVejRaOVhJWU1VK0JJTHVzbXJIUnA3V2RTa1ZrekhBd29sWU44?=
 =?utf-8?B?WGVMK29qd1FFTDZnakZyQnQ2eUdYeXBqbWJZUGJycFpqVk1xWU5yaHRCUlRC?=
 =?utf-8?B?K3Rzd2RuVUVwS3ZQbmNCK2pINmxrN255d1dRWnFMTk9rRXFkeVQyUlVRMlNq?=
 =?utf-8?B?QWswTzVmbzFqVzZrTGtnVk93eDR2NkF3R1E0UzdmNXdWOXB4RVR4cjA2VTBM?=
 =?utf-8?B?czlDZTRiTDE2U252QnQvTXZkOHU2aWd1VlRtZjVNQmR4TXVKby9TNzY0YXpU?=
 =?utf-8?B?MmdaeWtEcXJvaWx5aVE2OHRqZitUelpxNEpES3VJcUJHS0VtWG5nRW56bGVZ?=
 =?utf-8?B?U2ViZitqZ1JQdGtjNVNMM2l1T3ZKVlA5TmJCNTRabjNuTW1lNXRmUHpzUTU4?=
 =?utf-8?B?WGxGQjMyN3Izb0dvdDh6OUp2a1ZLU0txMFlMcVk4YkwxR1IzOVpLOEowSEc5?=
 =?utf-8?B?OXEyK0pWNlAvR1J5SCtISVNacmxNL3dQZjNqQWMycDAxM3l3aHVDWXdGNVdk?=
 =?utf-8?B?VUFIbk8yU1FSdUl3bGlqUGw4aUlmZi9ZNW5tTnc3cSswWmVjOHdtUzlSNUp4?=
 =?utf-8?B?cE55aDdITDZvUlJvS1pjcDBUOTN3Q0psUXJaOWNGbzBQNDErVjlKUlFKSmlK?=
 =?utf-8?B?TEtZejBDZ3JtUVAwWitDTi9QcmQxSjVpWHNzbldiU2R2OWh6c1lobHZiT29j?=
 =?utf-8?B?WVZKcFpCeWE4NGpNZjJucE1icFpQZEpFQ0pwM0lxNmUyOXFzNDRWWjdGeWgw?=
 =?utf-8?B?Zk5NYkhpVkxENThYeXVsUG5ReUd6Q0JrbWpKOHJKNGZlOGx0bzNtVHVpKzZ1?=
 =?utf-8?B?QVJRSzBtY0VjbnFXSjJ2N0hzbkY3blZ0OUUvejJGZzVDNzQ4eVBnbFkrR1l5?=
 =?utf-8?B?QkpGZkw5WmplSXFEdDFtZGVya1g4MEZqbUpiUkhUd2dIdnYzMjl5bzdJZ3lr?=
 =?utf-8?B?Z20vb3BkZ2doVm5HeUxyTGVkMDhDVmUrZ01ETVBHRjl0ajJzTGhaVUxBZU5W?=
 =?utf-8?B?UXJ1c3BuK0JmVzRyL2FzRit2V3JpV3ExQ05tSU44VEFOWXFyaThKYkRieXR5?=
 =?utf-8?B?UUxzZTNrRVhZMk1PVzNwU3hHVGp3eU1UdTFQUVp3dFpYQTZUSTV1ZVFTSFgx?=
 =?utf-8?B?bDJ6c3Rtdk5jTmtDQTlhbHBHdlV2YkJVVGFkL1p0bWlqK09mR2cwTHd0QkF5?=
 =?utf-8?B?K1JHZXk0bWtVaVB2M1o0V1RUNmhPMGdBOWl4UlpuTVZLbzV3YnZNbVlmZStj?=
 =?utf-8?B?d2h5MzdNVTQ2K0VUYWx1ZTR3cDhKUnBzbzdtaWlKbXdpTHJFQTBFVlZENlZO?=
 =?utf-8?B?YzVYREJrZzJ4Z2poclRXNS8zRFY4R0hSbjdZUFdPWDFjbFAwdDJDS2FzSXF5?=
 =?utf-8?B?b3FRcEc5QnlLSGZoSWV0cWkvR1hPN2NacnJmMEF0UWIxZlZyVDV5UWx1enBC?=
 =?utf-8?B?NkNMVHArSnRkNnZxNVlpemllUDBLZzZPdEdDakt4Q0JVYTNEaWNVNk52VXRY?=
 =?utf-8?B?TnNRQVFhdkFOanZQM09OeVlFR3hQdEdWRDA5b0NSVWs4YzUyTjhRREEvdWt5?=
 =?utf-8?B?eGpwbExLWlV1ODNkUklibUxybXgxNWdYMjdMZTk0VUpCUFB1MzI4NlY5Rmhx?=
 =?utf-8?B?QW45UXdsV2ZtSXQrS3dzNHRlNnVmMnltS3NaZW9XTE03aDJHMVZnR3BMV09S?=
 =?utf-8?B?VVdORWFvVUZiaDgvelFBQmVadStXQXh1d2hpY05ZbGNrdHd0M3JVV1RrM1Y5?=
 =?utf-8?B?aUN4VFkwM3gvTTdTUVBVWVh3S3phUmdiaGRNS3lsZ0NXT2JnR2FaYTdkeUJW?=
 =?utf-8?B?UnFBSkVMbUxPU2JKTVcvSVZrbms2TFVIZ2d0YmZXRnZ0aERHTjJxNXQzS3NH?=
 =?utf-8?B?WmZ4ODNKaEVyZ1BrWDdtY0JueTJzSkZMR3M0Wlp6REFzZmNEMCt0S01kcThW?=
 =?utf-8?B?cGxTajdIOHE3OGlIVllja0RWdUdpaFd1eHA4aVovLzRIcUY4L0tyT3pUd2N6?=
 =?utf-8?B?d0pMUnczelY5ZEl6ZUxKQ0dOd2llNXRjU0RLNlB6b3ZXYUdheDZhSkFzNjVp?=
 =?utf-8?B?blV1UlA1aXgwclBLVGhYR01YRDlGVy9YeXVUaG56cUNVL0pVd3ZBWHlYeVl6?=
 =?utf-8?Q?cXaOQSuZo2PPOZDwsjTm3wimY?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	GTd4JX6VvqoOgdKLMuxCVNOE6Bfr6u4GBui5VnpT40yV5JAZdaesUPGOiAK9VGhGDxa5MfRIYklCFT1LWV8X9ugKyd0jtZ3uN2H5UMW/aJmwLncbw3747PhqIXhpJjAzrFgpkntMJfd+reqM2kWBlWNJFJ8tbrgHzPUi+VKN19xJs1ReAF/G3Voj1ey6uxWvU3WwiIih0JH+lGxQERHtAvelcSVNEtHL5/C/Kj887hCDuCB600aUbjju2LFyzWnmWgjUWOycwz0d4pUp6XwrB5Iq8xQ5cCE3/F92p9eKA6hfmkfwUQADsG1r+JBq1ep5QKUxS+eDepvm4vpImJWWwu8KhoATSflVgeXCFwZYUHcE8ImtIT0CU7g/bACzo5+whZHYd+fApbohOhQXjnit8yeAMkiQkeuZOboufFEii1y2lf7zlofOxqxpqJ/RzSUG0imCodi/FQpBtyyGHuOjogvlk5e4brWnAQ1mTbYfUiXIL5BjsLn9ei/Qev8QCjKLG2vyiRpDVRxinXshDJwpahK/TMoFkBe4URa5p8+JeQoRKma3KgTUpYFaq0lurbH4wd1GlMR0s6EdAXfZySEBqPaDXIsfEK5RWXQlzMXRkEVhMKrrOGdbKqVYFhcM8g9jVmp9kSogmPpbZ0CfYHHDvoDH0BiWK64szjQgkGp2mdgPbbd0Ann8LilAW7Yxw1s0z0wMrfd4AYq+9aPDoiheeH1UGKJLkTBjKl4N/CnZQ/Cbg6jJ1zsibcVuvaqWy0QvUkJoM9SE264xoVwOWJRaANu4oMKD4iyTJL/Gocyqw0CY9znk5C4WBVeGzqu7YhXxQejqDdGWIVBpsxcyUDRf81FxGslxfxC1eybFauTUepom7YIbsOmgmMqgaDwormqDU17sBqNnvFJhCeIZ7sxFDg==
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 43ec6d85-aa0f-430b-fe16-08dbc584f176
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Oct 2023 09:24:58.3883
 (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: oDMFRA0DQYwetUw7zXhpoPUNVpXvjFaYK4UEi12colGEtaOCPVKYeHzaScgtf1EO+4XnEH+30QOG0RmJl6G4rg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR03MB6501

On Wed, Oct 04, 2023 at 03:52:54PM -0700, Stefano Stabellini wrote:
> On Wed, 4 Oct 2023, Julien Grall wrote:
> > > > If we want to handle such firmware, I think it would be better if we
> > > > provide
> > > > an hypercall that would return the GFN where it is currently mapped.
> > > 
> > > Sure, but such hypercall would be racy, as by the time the gfn is
> > > returned the value could be stale.  Adding a replacing and non
> > > replacing XENMEM_add_to_physmap variations would IMO be better.
> > > 
> > > Anyway, I don't maintain this, so it's up to you.
> > 
> > Bertrand/Stefano, any opinions?
> 
> I think we should fix EDK2 to unmap the shared info in all cases as
> that's simpler and the best implementation. What's the value of keeping
> the mapping around when the OS can't find it? Unless you have an idea on
> how the OS could find the location of the existing EDK2 shared info
> mapping.

Indeed, edk2 should unmap the page, and we should fix that.

> 
> It is important not to have 2 different behaviors for the same hypercall
> on ARM and x86, especially when the hypercall looks arch-neutral and an
> operating system would reasonably expect to use it in common code.
> Having different behaviors on ARM/x86 is more error prone than having a
> less-than-ideal hypercall implementation.
> 
> I agree with Julien that the ARM behavior is the right behavior. Can we
> change the x86 implementation to match ARM somehow?

I'm afraid I don't see how.  edk2 is supported on x86, and hence we
cannot simply make a change to the hypervisor that would render all
current versions of edk2 unusable.

> If we do, I guess we would end up breaking legacy EDK2?

Breaking plain edk2, as there's no version of edk2 that currently does
the unmapping?

> Is really the only choice to change the ARM implementation to match the
> x86 implementation?

Unless we want x86 and Arm to diverge in behavior.

I do think the arm behavior is more sane, but I don't think we can
make that change on x86 and simply render all existing versions of
edk2 unusable.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Thu Oct 05 09:26:32 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 05 Oct 2023 09:26:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612922.953104 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoKco-0006zC-Ih; Thu, 05 Oct 2023 09:26:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612922.953104; Thu, 05 Oct 2023 09:26: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 1qoKco-0006z3-Fa; Thu, 05 Oct 2023 09:26:30 +0000
Received: by outflank-mailman (input) for mailman id 612922;
 Thu, 05 Oct 2023 09:26: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=l68Z=FT=bugseng.com=federico.serafini@srs-se1.protection.inumbo.net>)
 id 1qoKcn-0006ys-0u
 for xen-devel@lists.xenproject.org; Thu, 05 Oct 2023 09:26:29 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 421abcde-6361-11ee-9b0d-b553b5be7939;
 Thu, 05 Oct 2023 11:26:26 +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 437544EE0737;
 Thu,  5 Oct 2023 11:26: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: 421abcde-6361-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>,
	George Dunlap <george.dunlap@citrix.com>,
	Dario Faggioli <dfaggioli@suse.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Henry Wang <henry.wang@arm.com>
Subject: [XEN PATCH] xen/sched: address violations of MISRA C:2012 Rule 8.2
Date: Thu,  5 Oct 2023 11:26:20 +0200
Message-Id: <142049155775072b2a43eb2f052ffd0ab322867e.1696497380.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. No functional change.

Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
---
 xen/common/sched/private.h | 93 ++++++++++++++++++++------------------
 1 file changed, 49 insertions(+), 44 deletions(-)

diff --git a/xen/common/sched/private.h b/xen/common/sched/private.h
index c516976c37..68de469537 100644
--- a/xen/common/sched/private.h
+++ b/xen/common/sched/private.h
@@ -280,59 +280,64 @@ struct scheduler {
 
     int          (*global_init)    (void);
 
-    int          (*init)           (struct scheduler *);
-    void         (*deinit)         (struct scheduler *);
+    int          (*init)           (struct scheduler *s);
+    void         (*deinit)         (struct scheduler *s);
 
-    void         (*free_udata)     (const struct scheduler *, void *);
-    void *       (*alloc_udata)    (const struct scheduler *,
-                                    struct sched_unit *, void *);
-    void         (*free_pdata)     (const struct scheduler *, void *, int);
-    void *       (*alloc_pdata)    (const struct scheduler *, int);
-    void         (*deinit_pdata)   (const struct scheduler *, void *, int);
+    void         (*free_udata)     (const struct scheduler *s, void *data);
+    void *       (*alloc_udata)    (const struct scheduler *s,
+                                    struct sched_unit *unit, void *data);
+
+    void         (*free_pdata)     (const struct scheduler *s,
+                                    void *data, int cpu);
+    void *       (*alloc_pdata)    (const struct scheduler *s, int cpu);
+    void         (*deinit_pdata)   (const struct scheduler *s,
+                                    void *pcpu, int cpu);
 
     /* Returns ERR_PTR(-err) for error, NULL for 'nothing needed'. */
-    void *       (*alloc_domdata)  (const struct scheduler *, struct domain *);
+    void *       (*alloc_domdata)  (const struct scheduler *s,
+                                    struct domain *d);
     /* Idempotent. */
-    void         (*free_domdata)   (const struct scheduler *, void *);
+    void         (*free_domdata)   (const struct scheduler *s, void *data);
 
-    spinlock_t * (*switch_sched)   (struct scheduler *, unsigned int,
-                                    void *, void *);
+    spinlock_t * (*switch_sched)   (struct scheduler *s, unsigned int cpu,
+                                    void *pdata, void *vdata);
 
     /* Activate / deactivate units in a cpu pool */
-    void         (*insert_unit)    (const struct scheduler *,
-                                    struct sched_unit *);
-    void         (*remove_unit)    (const struct scheduler *,
-                                    struct sched_unit *);
-
-    void         (*sleep)          (const struct scheduler *,
-                                    struct sched_unit *);
-    void         (*wake)           (const struct scheduler *,
-                                    struct sched_unit *);
-    void         (*yield)          (const struct scheduler *,
-                                    struct sched_unit *);
-    void         (*context_saved)  (const struct scheduler *,
-                                    struct sched_unit *);
-
-    void         (*do_schedule)    (const struct scheduler *,
-                                    struct sched_unit *, s_time_t,
+    void         (*insert_unit)    (const struct scheduler *s,
+                                    struct sched_unit *unit);
+    void         (*remove_unit)    (const struct scheduler *s,
+                                    struct sched_unit *unit);
+
+    void         (*sleep)          (const struct scheduler *s,
+                                    struct sched_unit *unit);
+    void         (*wake)           (const struct scheduler *s,
+                                    struct sched_unit *unit);
+    void         (*yield)          (const struct scheduler *s,
+                                    struct sched_unit *unit);
+    void         (*context_saved)  (const struct scheduler *s,
+                                    struct sched_unit *unit);
+
+    void         (*do_schedule)    (const struct scheduler *s,
+                                    struct sched_unit *unit, s_time_t now,
                                     bool tasklet_work_scheduled);
 
-    struct sched_resource *(*pick_resource)(const struct scheduler *,
-                                            const struct sched_unit *);
-    void         (*migrate)        (const struct scheduler *,
-                                    struct sched_unit *, unsigned int);
-    int          (*adjust)         (const struct scheduler *, struct domain *,
-                                    struct xen_domctl_scheduler_op *);
-    void         (*adjust_affinity)(const struct scheduler *,
-                                    struct sched_unit *,
-                                    const struct cpumask *,
-                                    const struct cpumask *);
-    int          (*adjust_global)  (const struct scheduler *,
-                                    struct xen_sysctl_scheduler_op *);
-    void         (*dump_settings)  (const struct scheduler *);
-    void         (*dump_cpu_state) (const struct scheduler *, int);
-    void         (*move_timers)    (const struct scheduler *,
-                                    struct sched_resource *);
+    struct sched_resource *(*pick_resource)(const struct scheduler *s,
+                                            const struct sched_unit *unit);
+    void         (*migrate)        (const struct scheduler *s,
+                                    struct sched_unit *unit, unsigned int cpu);
+    int          (*adjust)         (const struct scheduler *s,
+                                    struct domain *d,
+                                    struct xen_domctl_scheduler_op *op);
+    void         (*adjust_affinity)(const struct scheduler *s,
+                                    struct sched_unit *unit,
+                                    const struct cpumask *hard,
+                                    const struct cpumask *soft);
+    int          (*adjust_global)  (const struct scheduler *s,
+                                    struct xen_sysctl_scheduler_op *op);
+    void         (*dump_settings)  (const struct scheduler *s);
+    void         (*dump_cpu_state) (const struct scheduler *s, int cpu);
+    void         (*move_timers)    (const struct scheduler *s,
+                                    struct sched_resource *sr);
 };
 
 static inline int sched_init(struct scheduler *s)
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Thu Oct 05 09:36:19 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 05 Oct 2023 09:36:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612930.953114 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoKmB-000148-HE; Thu, 05 Oct 2023 09:36:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612930.953114; Thu, 05 Oct 2023 09:36: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 1qoKmB-000141-EM; Thu, 05 Oct 2023 09:36:11 +0000
Received: by outflank-mailman (input) for mailman id 612930;
 Thu, 05 Oct 2023 09:36: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 1qoKmA-00012Y-9o; Thu, 05 Oct 2023 09:36: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 1qoKmA-00089O-1B; Thu, 05 Oct 2023 09:36: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 1qoKm9-0004jI-MJ; Thu, 05 Oct 2023 09:36:09 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qoKm9-0004nk-Lo; Thu, 05 Oct 2023 09:36: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=lnuqk3k/wgAoM2nFEC8a+THe+Pz/JG+wctiJUYmXaao=; b=Y5o3IiC36XDvB+k9AKZs7PhfAz
	pvX/GsQhxJG/wOkH4jLbBh0dW/0Yx4Qm4gXxjXIU6Fl/Napln+kNkea5jU78+foUOhwyDONkGXLyA
	RqbUJx2U9pbg8Hn1fKimUWq1AH7mAXnWjv8dxe1bNnY6BhfvQOUbU9bQDa/ybUUN9fh4=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183266-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 183266: tolerable FAIL
X-Osstest-Failures:
    xen-unstable:test-amd64-i386-qemuu-rhel6hvm-amd: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-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-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-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2: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-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-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-unstable:test-amd64-amd64-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-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-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-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-amd64-amd64-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-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-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-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-raw: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-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=3d2d9e90224c4f430a7ee1190fd3b871b99b0ba0
X-Osstest-Versions-That:
    xen=3d2d9e90224c4f430a7ee1190fd3b871b99b0ba0
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 05 Oct 2023 09:36:09 +0000

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

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-amd64-i386-qemuu-rhel6hvm-amd 7 xen-install fail in 183258 pass in 183266
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm 12 debian-hvm-install fail in 183258 pass in 183266
 test-amd64-amd64-xl-qemuu-win7-amd64 12 windows-install    fail pass in 183258

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop  fail in 183258 like 183249
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183258
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183258
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 183258
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183258
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183258
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183258
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 183258
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 183258
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183258
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183258
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 183258
 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-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-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-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-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-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-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-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-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
 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                  3d2d9e90224c4f430a7ee1190fd3b871b99b0ba0
baseline version:
 xen                  3d2d9e90224c4f430a7ee1190fd3b871b99b0ba0

Last test of basis   183266  2023-10-05 01:53:37 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 Oct 05 10:07:43 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 05 Oct 2023 10:07:43 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612939.953123 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoLGT-000087-P7; Thu, 05 Oct 2023 10:07:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612939.953123; Thu, 05 Oct 2023 10:07: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 1qoLGT-000080-MP; Thu, 05 Oct 2023 10:07:29 +0000
Received: by outflank-mailman (input) for mailman id 612939;
 Thu, 05 Oct 2023 10:07: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=gGTv=FT=linaro.org=viresh.kumar@srs-se1.protection.inumbo.net>)
 id 1qoLGS-00007u-Ee
 for xen-devel@lists.xenproject.org; Thu, 05 Oct 2023 10:07:28 +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 fc1b17b3-6366-11ee-98d3-6d05b1d4d9a1;
 Thu, 05 Oct 2023 12:07:27 +0200 (CEST)
Received: by mail-pl1-x629.google.com with SMTP id
 d9443c01a7336-1c752caeaa6so5682125ad.1
 for <xen-devel@lists.xenproject.org>; Thu, 05 Oct 2023 03:07:27 -0700 (PDT)
Received: from localhost ([122.172.81.92]) by smtp.gmail.com with ESMTPSA id
 p20-20020a170902ead400b001c3e732b8dbsm1244304pld.168.2023.10.05.03.07.24
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Thu, 05 Oct 2023 03:07: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: fc1b17b3-6366-11ee-98d3-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=linaro.org; s=google; t=1696500445; x=1697105245; 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=uLWFeSVond74tkZOqvEba086Qve4qLpMCCHqTH1lxBk=;
        b=SGmr7NGyBcRXDYfn4/vgQfOl4/kN1FPrwBB+54XxaI3/3w+77POppNpr1EW/slxM4w
         GK7LjNZcPoFj2WikBpckyOPx9ztiiG2LJUmJLhttDcNB1hj9nZc4QCk1mtBClHdNN1oW
         BtjD9N5KPtKSzDw4pH9/LkM7NeWj5UaL95751kvnEB+3m/7Hr+vxoXaqroULZaBaCwJn
         aSKdsusqOhkLQo4IOYKct50GnJuZNeTG8sg/lCj5jfBsNGoW7rHxEFp/tFovmEx6XcVU
         Muve8Kz5Dl5wViUtDejlxvGyPhGVwj6YVo6OLnKIthO2b9goc1qp0Utpx+a6wOb3dTTM
         YfKQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1696500445; x=1697105245;
        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=uLWFeSVond74tkZOqvEba086Qve4qLpMCCHqTH1lxBk=;
        b=h/yFvwd3z4gK4Qkv7sbq8w0/ilPh62Q6ieJrPkL0APGCGgweE9pDbBmQPGFKy9M6xC
         6FJ18STzzoTSiz/npdu0g/tKW3tQufEyzVxcevg1dOUBTKsGsnV5+E+NOgbtEFYJ4A+v
         Tr8Xc3/b4OmRZ+SCLiFMDN6RJl1SAILQjy4NksbsoFwfUCUi9FbPGxUIaYGnMPpU119q
         v+Ll28z4AG0+7xSI1vR+8kSL19ThBo8Ue+JzEgEeWQG7AHoe2tCwlsJzQwbZWpazP/pG
         DiG3owfnfzVfnlKB64eW9VOQJLK1WzPKvJ2WA85U2ynJpSxucdDJhDSMbi4KqLCgdzlj
         X7pg==
X-Gm-Message-State: AOJu0Yx9Xb2Dq+f0+HWrKzmcIxHupQ+inVcnAVoSBqYCqJqa96Bg4n8r
	B+o7GALLTl8BLbiuaLZXUod/Tw==
X-Google-Smtp-Source: AGHT+IHDCQEsjSU/8o8lSlZdriKzqJWmPSyvLf2DgrNbq7AdX5GK/V8t/tO5R5jRak2/UJfY8QjkJQ==
X-Received: by 2002:a17:902:7d92:b0:1c3:2ee6:3802 with SMTP id a18-20020a1709027d9200b001c32ee63802mr3845036plm.47.1696500445611;
        Thu, 05 Oct 2023 03:07:25 -0700 (PDT)
Date: Thu, 5 Oct 2023 15:37:23 +0530
From: Viresh Kumar <viresh.kumar@linaro.org>
To: Juergen Gross <jgross@suse.com>
Cc: Stefano Stabellini <sstabellini@kernel.org>,
	Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>,
	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 2/2] xen: privcmd: Add support for ioeventfd
Message-ID: <20231005100723.krikk4oauyb4nm2d@vireshk-i7>
References: <cover.1693311370.git.viresh.kumar@linaro.org>
 <52b07a3861a34fb0deb6251bae8bd885815c6944.1693311370.git.viresh.kumar@linaro.org>
 <fb79fa9a-e91c-4bb7-8aee-c384b99df953@suse.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <fb79fa9a-e91c-4bb7-8aee-c384b99df953@suse.com>

On 29-09-23, 07:46, Juergen Gross wrote:
> This is populated from a __u64 field. Maybe make it uint64_t?

Checkpatch warns about this, will use u64 instead.

CHECK: Prefer kernel type 'u64' over 'uint64_t'
#124: FILE: drivers/xen/privcmd.c:1097:
+	uint64_t addr;

-- 
viresh


From xen-devel-bounces@lists.xenproject.org Thu Oct 05 10:25:26 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 05 Oct 2023 10:25:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612943.953133 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoLXl-0004Q5-6k; Thu, 05 Oct 2023 10:25:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612943.953133; Thu, 05 Oct 2023 10:25: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 1qoLXl-0004Py-3A; Thu, 05 Oct 2023 10:25:21 +0000
Received: by outflank-mailman (input) for mailman id 612943;
 Thu, 05 Oct 2023 10:25: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=gGTv=FT=linaro.org=viresh.kumar@srs-se1.protection.inumbo.net>)
 id 1qoLXk-0004Gs-2S
 for xen-devel@lists.xenproject.org; Thu, 05 Oct 2023 10:25:20 +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 7b39377f-6369-11ee-98d3-6d05b1d4d9a1;
 Thu, 05 Oct 2023 12:25:19 +0200 (CEST)
Received: by mail-pf1-x42b.google.com with SMTP id
 d2e1a72fcca58-690f7d73a3aso702158b3a.0
 for <xen-devel@lists.xenproject.org>; Thu, 05 Oct 2023 03:25:19 -0700 (PDT)
Received: from localhost ([122.172.81.92]) by smtp.gmail.com with ESMTPSA id
 j4-20020a170902c3c400b001c61bde04a7sm1269088plj.276.2023.10.05.03.25.16
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Thu, 05 Oct 2023 03:25: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: 7b39377f-6369-11ee-98d3-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=linaro.org; s=google; t=1696501518; x=1697106318; 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=KWho0skhSMaRa5vCqQiBImFsTWWtuPWOPJgKv2q/8Qk=;
        b=pz7NtXOeyoTP3hDCZCboEBB9YefOnXoAzTfbJnj5jvl29izUmZe/vSzre70PPG0JzX
         an3ISZwuZjkEe4ot/byITdMqL+K5EqfTMzBFrScXs0ibevtpV6Kq5zTsIYRGT8OGPNpU
         ZeQQ7AcHpvD3CMUEscruvpnKcHm3lQ7axxbTdGbYTkOZgzVON/5MWFZgScFUIyRWbW+5
         p+BfhSEr9rtxzOf7393VD+kg7pTJIdK9xvRKkPoOf4NAca7d+5LM2BEPeZDns/F5Gn/p
         DhCVWDF+7hhW6jWzoAm3jSWlq+2O6rfzmFN1T/l1/F/p3V2XWbKzahX6DsNdaFkr1Ain
         beQg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1696501518; x=1697106318;
        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=KWho0skhSMaRa5vCqQiBImFsTWWtuPWOPJgKv2q/8Qk=;
        b=TCVCLy1sNtzdWcvT7BCsfnHzkHhLWlj/crcq0Nzg4h2fSTSnyrPTv9eHFAPmdV9wNq
         edvN8Nun6ukgxlYiz5e/wJXnjKmH3DZCl9EviuV3TvpE9Bb82O6M73pdkCR5/kLOhb2Y
         x5EQ9WAfXHKWRlkiSS9HG/bUEe8AnQUPGkrBM+1oUtFi3b2r877K8fB+JLYoeb1c3VDo
         5e8QJIxeSlSfEnDdMW1Mx2I07G2QVPy3rY321Z7HIpX19XhfYZ3b+L/WriYlNAWnf5EA
         pWjwyhA2tUPQ/2AZcL4h7pOGurkIIhv5RttNudAOpmk6IM+9y8/2F6uqcl66eCK+FNCY
         FOTw==
X-Gm-Message-State: AOJu0Yx0aoP9q1kIF4e0KLlH3/VB+PyGfEVIwGGXaaWmjK4gWpgfRVNG
	cbprnuN00AgB0lFbwdburGr6Jg==
X-Google-Smtp-Source: AGHT+IFlvWBBJ3Zh3r7swaT7Jp7XiXCsFpaOJuViBtve0Y9fYaexTcbODWL0r8ZJ90UPDzLaoMipNA==
X-Received: by 2002:a05:6a20:3d1b:b0:12e:4d86:c017 with SMTP id y27-20020a056a203d1b00b0012e4d86c017mr5640315pzi.10.1696501517838;
        Thu, 05 Oct 2023 03:25:17 -0700 (PDT)
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: Viresh Kumar <viresh.kumar@linaro.org>,
	Vincent Guittot <vincent.guittot@linaro.org>,
	=?UTF-8?q?Alex=20Benn=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: [PATCH V2 0/2] xen: privcmd: Add ioeventfd support
Date: Thu,  5 Oct 2023 15:55:10 +0530
Message-Id: <cover.1696500578.git.viresh.kumar@linaro.org>
X-Mailer: git-send-email 2.31.1.272.g89b43f80a514
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

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.

--
Viresh

V1->V2:
- Increment irq_info refcnt only for valid info.
- Use u64 type for addr.
- Add comments for use of barriers.
- Use spin lock instead of mutex as we need to use them in irq handler.
- Add a warning when kioreq is getting freed and ioeventfds list isn't empty.
- Use struct_size().
- Validate number of vcpus as well.

Viresh Kumar (2):
  xen: evtchn: Allow shared registration of IRQ handers
  xen: privcmd: Add support for ioeventfd

 drivers/xen/Kconfig               |   8 +-
 drivers/xen/events/events_base.c  |   3 +-
 drivers/xen/evtchn.c              |   2 +-
 drivers/xen/privcmd.c             | 398 +++++++++++++++++++++++++++++-
 include/uapi/xen/privcmd.h        |  18 ++
 include/xen/interface/hvm/ioreq.h |  51 ++++
 6 files changed, 472 insertions(+), 8 deletions(-)
 create mode 100644 include/xen/interface/hvm/ioreq.h

-- 
2.31.1.272.g89b43f80a514



From xen-devel-bounces@lists.xenproject.org Thu Oct 05 10:25:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 05 Oct 2023 10:25:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612944.953144 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoLXo-0004fQ-IK; Thu, 05 Oct 2023 10:25:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612944.953144; Thu, 05 Oct 2023 10: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 1qoLXo-0004fJ-Eh; Thu, 05 Oct 2023 10:25:24 +0000
Received: by outflank-mailman (input) for mailman id 612944;
 Thu, 05 Oct 2023 10:25: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=gGTv=FT=linaro.org=viresh.kumar@srs-se1.protection.inumbo.net>)
 id 1qoLXn-0004Gs-Lc
 for xen-devel@lists.xenproject.org; Thu, 05 Oct 2023 10:25:23 +0000
Received: from mail-pf1-x42e.google.com (mail-pf1-x42e.google.com
 [2607:f8b0:4864:20::42e])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 7d5fd71f-6369-11ee-98d3-6d05b1d4d9a1;
 Thu, 05 Oct 2023 12:25:23 +0200 (CEST)
Received: by mail-pf1-x42e.google.com with SMTP id
 d2e1a72fcca58-6907e44665bso684231b3a.1
 for <xen-devel@lists.xenproject.org>; Thu, 05 Oct 2023 03:25:23 -0700 (PDT)
Received: from localhost ([122.172.81.92]) by smtp.gmail.com with ESMTPSA id
 g6-20020a62e306000000b0068fe23b8792sm1055988pfh.176.2023.10.05.03.25.20
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Thu, 05 Oct 2023 03:25: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: 7d5fd71f-6369-11ee-98d3-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=linaro.org; s=google; t=1696501521; x=1697106321; 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=VA2GT8eqbiQpihVq6IatV7jxO70qnqwP/ImeaPQmFQY=;
        b=CI+Sf3iBgZgrPDHPCbnhK3JsTUXvLl33YZkCEohu1wMZkawyqfHJGBOeMdb1V1rSt4
         CNzj2CHMUeUkFyj6ZWovn+Cx/szBwjCuvxr7hVc56u3LKnfg5xSdN268k428JelRYWAY
         SRGnz2WCb2nVyVg/VmPn+jq8lTHTjBiaCmp3mgtLGu/PgwE0ALpYnMd2rYSk2MuzpzUc
         KQKhUmd4qeWAKL87Ttz6Gl+FqOU8jQxs4DhJ6git18tYTQWNGxLwwXOKzmmDx9br4h0p
         jLwN9qW8wsNrig+/5YiWjvwotApPs2d9ys7W476G9gY3hHi0wxqy38i/5T1smXv9/LXs
         rbcA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1696501521; x=1697106321;
        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=VA2GT8eqbiQpihVq6IatV7jxO70qnqwP/ImeaPQmFQY=;
        b=iWxm85jRANWHsyyQrMicAORKoqUhGY9B0fsI0KA79aGyLWxmM5fmQq/QY4BYY4BJ6U
         xLKcHsDRxAol+pMuw8wPxNjKYPMWA/vgyXz1txZ0OJV+9c0R7GGPfc/AwO+vS3LCdNFO
         hENla8Lw7SJ8D+n0uescJ2LJ05xV9ZnqCsWfbqfRRBzwMiCQUJGBUmEcV+rF1wgkOWLY
         mqZRlAsD+Iv8mOlcphCkyVxdl3fy9Di+Vn799ZdzPYZF1xYODnGrEN4y+YZM95MLMAdu
         8cEH0K9ikx0eCE3Y9AyND/vRRu8l7l0oXnNRhCC79jCvEjVvJFZomoS4oGBujT2aF0FA
         1gvQ==
X-Gm-Message-State: AOJu0YyLJAd8djGgtuxzFFuSAGZIMHcrICvMIpXcJ3RBcSTKzOIiOIfN
	N9bOuk2ynZHQBi2+HSstAycz5Q==
X-Google-Smtp-Source: AGHT+IFVyZfwPYortU/vCd/KtcZf9ROm2DtiD8fm0D3u1191c/tmNd0xEGXS4Lh56+iNRP/lGDs57g==
X-Received: by 2002:a05:6a00:2d8d:b0:68e:236a:93d9 with SMTP id fb13-20020a056a002d8d00b0068e236a93d9mr5460543pfb.17.1696501521543;
        Thu, 05 Oct 2023 03:25:21 -0700 (PDT)
From: Viresh Kumar <viresh.kumar@linaro.org>
To: Juergen Gross <jgross@suse.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>
Cc: Viresh Kumar <viresh.kumar@linaro.org>,
	Vincent Guittot <vincent.guittot@linaro.org>,
	=?UTF-8?q?Alex=20Benn=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
Subject: [PATCH V2 1/2] xen: evtchn: Allow shared registration of IRQ handers
Date: Thu,  5 Oct 2023 15:55:11 +0530
Message-Id: <8380c7b1c8cd9edb2e45e9a204650b34df3458a7.1696500578.git.viresh.kumar@linaro.org>
X-Mailer: git-send-email 2.31.1.272.g89b43f80a514
In-Reply-To: <cover.1696500578.git.viresh.kumar@linaro.org>
References: <cover.1696500578.git.viresh.kumar@linaro.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Currently the handling of events is supported either in the kernel or
userspace, but not both.

In order to support fast delivery of interrupts from the guest to the
backend, we need to handle the Queue notify part of Virtio protocol in
kernel and the rest in userspace.

Update the interrupt handler registration flag to IRQF_SHARED for event
channels, which would allow multiple entities to bind their interrupt
handler for the same event channel port.

Also increment the reference count of irq_info when multiple entities
try to bind event channel to irqchip, so the unbinding happens only
after all the users are gone.

Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
---
 drivers/xen/events/events_base.c | 3 ++-
 drivers/xen/evtchn.c             | 2 +-
 2 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/drivers/xen/events/events_base.c b/drivers/xen/events/events_base.c
index c7715f8bd452..d72fb26cc051 100644
--- a/drivers/xen/events/events_base.c
+++ b/drivers/xen/events/events_base.c
@@ -1238,7 +1238,8 @@ static int bind_evtchn_to_irq_chip(evtchn_port_t evtchn, struct irq_chip *chip,
 		bind_evtchn_to_cpu(evtchn, 0, false);
 	} else {
 		struct irq_info *info = info_for_irq(irq);
-		WARN_ON(info == NULL || info->type != IRQT_EVTCHN);
+		if (!WARN_ON(!info || info->type != IRQT_EVTCHN))
+			info->refcnt++;
 	}
 
 out:
diff --git a/drivers/xen/evtchn.c b/drivers/xen/evtchn.c
index c99415a70051..43f77915feb5 100644
--- a/drivers/xen/evtchn.c
+++ b/drivers/xen/evtchn.c
@@ -397,7 +397,7 @@ static int evtchn_bind_to_user(struct per_user_data *u, evtchn_port_t port)
 	if (rc < 0)
 		goto err;
 
-	rc = bind_evtchn_to_irqhandler_lateeoi(port, evtchn_interrupt, 0,
+	rc = bind_evtchn_to_irqhandler_lateeoi(port, evtchn_interrupt, IRQF_SHARED,
 					       u->name, evtchn);
 	if (rc < 0)
 		goto err;
-- 
2.31.1.272.g89b43f80a514



From xen-devel-bounces@lists.xenproject.org Thu Oct 05 10:25:29 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 05 Oct 2023 10:25:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612945.953154 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoLXt-0004y6-Q2; Thu, 05 Oct 2023 10:25:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612945.953154; Thu, 05 Oct 2023 10:25: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 1qoLXt-0004xx-Ma; Thu, 05 Oct 2023 10:25:29 +0000
Received: by outflank-mailman (input) for mailman id 612945;
 Thu, 05 Oct 2023 10:25: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=gGTv=FT=linaro.org=viresh.kumar@srs-se1.protection.inumbo.net>)
 id 1qoLXs-0004Gs-9i
 for xen-devel@lists.xenproject.org; Thu, 05 Oct 2023 10:25:28 +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 7fc9fd3e-6369-11ee-98d3-6d05b1d4d9a1;
 Thu, 05 Oct 2023 12:25:27 +0200 (CEST)
Received: by mail-pl1-x62f.google.com with SMTP id
 d9443c01a7336-1c87e55a6baso5279715ad.3
 for <xen-devel@lists.xenproject.org>; Thu, 05 Oct 2023 03:25:27 -0700 (PDT)
Received: from localhost ([122.172.81.92]) by smtp.gmail.com with ESMTPSA id
 x11-20020a1709028ecb00b001c746b986e5sm1285346plo.45.2023.10.05.03.25.24
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Thu, 05 Oct 2023 03:25: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: 7fc9fd3e-6369-11ee-98d3-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=linaro.org; s=google; t=1696501525; x=1697106325; 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=p3TcD8voV/4cdB31EHJGJeiN80RxHqTFgqX9z+XYw+8=;
        b=twjfBgotURDq2yfzkBrpk1pAQQJNjMRsICBRAnO9nnDXN/OxRBX3qw/xtkORTfIFJM
         PTK5INmkShJzsACPFXM/m/Hebre7dZecYCswRrDrowSR9fSOOtVJxAIqFi62TJO6fbzo
         +UN/QIQadRkwbpoLPc26GWpXUAPsFeD8YxIzAN5qd4yLb8JUB62v1XNxv5r7UR24LUH4
         XBh3If9YpfHHoM1id0iCJZV/zhoJ+hTub1h+9zHLJEg0YSDMm68qLmgPnd4ETnt/wLFY
         OLpWIrYMv1fnBLFXHzT9sMaMkW8wtRp2+ubu/czTBh11fYMeGHBA2kOUreaGEG6dkSp4
         Ukeg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1696501525; x=1697106325;
        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=p3TcD8voV/4cdB31EHJGJeiN80RxHqTFgqX9z+XYw+8=;
        b=aQROOHRYxpefzFrMknsQ4JTpNCKG1a+VrDaGItxFjXauJGd0edALyK/KCIaA57/HLl
         g/4eyUAR4pT/MVuo2zAZRTpPYmfxeMiGmHt+IYvualyAmDJhf/pgkOHiYEkdQxh1k+A9
         7TtDLaVodLdMOQWZGO+JOup8/2TZzKnU+jhX/iCgHLd3jHdxV3AerOU3TR2b9GbUsDUi
         D6xvZ96Gr0Nu3+7EUpxGrG7meNzJiwEzzMSW1A/FGr0RwMI9Knbt+j2cTXrXk1Y3iawh
         9VGyvjE9fG9hmV9e3U9N8LOytxj2O6Es/WqYrIXF1MkFXYhqNsngL2Lk6V6g8oKHQ5iT
         hDPQ==
X-Gm-Message-State: AOJu0Yy0p+obwV+AnSrS1fo3Bc5rf3+gys07bPco5F4MMLboRt4a5MSd
	gJse3KZ/SQOqUz/cOJvrO8tFNg==
X-Google-Smtp-Source: AGHT+IHp7gJlgM1dKOAKoaiwc4LoCqVfBDpQ2P763UoC03veSIwevnIMdl4PzVsujIGzIfySVftSAA==
X-Received: by 2002:a17:902:da90:b0:1c6:de7:addd with SMTP id j16-20020a170902da9000b001c60de7adddmr6229734plx.48.1696501525466;
        Thu, 05 Oct 2023 03:25:25 -0700 (PDT)
From: Viresh Kumar <viresh.kumar@linaro.org>
To: Juergen Gross <jgross@suse.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>
Cc: Viresh Kumar <viresh.kumar@linaro.org>,
	Vincent Guittot <vincent.guittot@linaro.org>,
	=?UTF-8?q?Alex=20Benn=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: [PATCH V2 2/2] xen: privcmd: Add support for ioeventfd
Date: Thu,  5 Oct 2023 15:55:12 +0530
Message-Id: <6e43e092e35a56619b0a132e78fac01b68ded94a.1696500578.git.viresh.kumar@linaro.org>
X-Mailer: git-send-email 2.31.1.272.g89b43f80a514
In-Reply-To: <cover.1696500578.git.viresh.kumar@linaro.org>
References: <cover.1696500578.git.viresh.kumar@linaro.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Virtio guests send VIRTIO_MMIO_QUEUE_NOTIFY notification when they need
to notify the backend of an update to the status of the virtqueue. The
backend or another entity, polls the MMIO address for updates to know
when the notification is sent.

It works well if the backend does this polling by itself. But as we move
towards generic backend implementations, we end up implementing this in
a separate user-space program.

Generally, the Virtio backends are implemented to work with the Eventfd
based mechanism. In order to make such backends work with Xen, another
software layer needs to do the polling and send an event via eventfd to
the backend once the notification from guest is received. This results
in an extra context switch.

This is not a new problem in Linux though. It is present with other
hypervisors like KVM, etc. as well. The generic solution implemented in
the kernel for them is to provide an IOCTL call to pass the address to
poll and eventfd, which lets the kernel take care of polling and raise
an event on the eventfd, instead of handling this in user space (which
involves an extra context switch).

This patch adds similar support for xen.

Inspired by existing implementations for KVM, etc..

This also copies ioreq.h header file (only struct ioreq and related
macros) from Xen's source tree (Top commit 5d84f07fe6bf ("xen/pci: drop
remaining uses of bool_t")).

Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
---
 drivers/xen/Kconfig               |   8 +-
 drivers/xen/privcmd.c             | 398 +++++++++++++++++++++++++++++-
 include/uapi/xen/privcmd.h        |  18 ++
 include/xen/interface/hvm/ioreq.h |  51 ++++
 4 files changed, 469 insertions(+), 6 deletions(-)
 create mode 100644 include/xen/interface/hvm/ioreq.h

diff --git a/drivers/xen/Kconfig b/drivers/xen/Kconfig
index d43153fec18e..d5989871dd5d 100644
--- a/drivers/xen/Kconfig
+++ b/drivers/xen/Kconfig
@@ -269,12 +269,12 @@ config XEN_PRIVCMD
 	  disaggregated Xen setups this driver might be needed for other
 	  domains, too.
 
-config XEN_PRIVCMD_IRQFD
-	bool "Xen irqfd support"
+config XEN_PRIVCMD_EVENTFD
+	bool "Xen Ioeventfd and irqfd support"
 	depends on XEN_PRIVCMD && XEN_VIRTIO && EVENTFD
 	help
-	  Using the irqfd mechanism a virtio backend running in a daemon can
-	  speed up interrupt injection into a guest.
+	  Using the ioeventfd / irqfd mechanism a virtio backend running in a
+	  daemon can speed up interrupt delivery from / to a guest.
 
 config XEN_ACPI_PROCESSOR
 	tristate "Xen ACPI processor"
diff --git a/drivers/xen/privcmd.c b/drivers/xen/privcmd.c
index 120af57999fc..6dee3450339a 100644
--- a/drivers/xen/privcmd.c
+++ b/drivers/xen/privcmd.c
@@ -29,15 +29,18 @@
 #include <linux/seq_file.h>
 #include <linux/miscdevice.h>
 #include <linux/moduleparam.h>
+#include <linux/virtio_mmio.h>
 
 #include <asm/xen/hypervisor.h>
 #include <asm/xen/hypercall.h>
 
 #include <xen/xen.h>
+#include <xen/events.h>
 #include <xen/privcmd.h>
 #include <xen/interface/xen.h>
 #include <xen/interface/memory.h>
 #include <xen/interface/hvm/dm_op.h>
+#include <xen/interface/hvm/ioreq.h>
 #include <xen/features.h>
 #include <xen/page.h>
 #include <xen/xen-ops.h>
@@ -782,6 +785,7 @@ static long privcmd_ioctl_mmap_resource(struct file *file,
 			goto out;
 
 		pages = vma->vm_private_data;
+
 		for (i = 0; i < kdata.num; i++) {
 			xen_pfn_t pfn =
 				page_to_xen_pfn(pages[i / XEN_PFN_PER_PAGE]);
@@ -838,7 +842,7 @@ static long privcmd_ioctl_mmap_resource(struct file *file,
 	return rc;
 }
 
-#ifdef CONFIG_XEN_PRIVCMD_IRQFD
+#ifdef CONFIG_XEN_PRIVCMD_EVENTFD
 /* Irqfd support */
 static struct workqueue_struct *irqfd_cleanup_wq;
 static DEFINE_MUTEX(irqfds_lock);
@@ -1079,6 +1083,382 @@ static void privcmd_irqfd_exit(void)
 
 	destroy_workqueue(irqfd_cleanup_wq);
 }
+
+/* Ioeventfd Support */
+#define QUEUE_NOTIFY_VQ_MASK 0xFFFF
+
+static DEFINE_MUTEX(ioreq_lock);
+static LIST_HEAD(ioreq_list);
+
+/* per-eventfd structure */
+struct privcmd_kernel_ioeventfd {
+	struct eventfd_ctx *eventfd;
+	struct list_head list;
+	u64 addr;
+	unsigned int addr_len;
+	unsigned int vq;
+};
+
+/* per-guest CPU / port structure */
+struct ioreq_port {
+	int vcpu;
+	unsigned int port;
+	struct privcmd_kernel_ioreq *kioreq;
+};
+
+/* per-guest structure */
+struct privcmd_kernel_ioreq {
+	domid_t dom;
+	unsigned int vcpus;
+	void __user *uioreq;
+	struct ioreq *ioreq;
+	spinlock_t lock; /* Protects ioeventfds list */
+	struct list_head ioeventfds;
+	struct list_head list;
+	struct ioreq_port ports[0];
+};
+
+static irqreturn_t ioeventfd_interrupt(int irq, void *dev_id)
+{
+	struct ioreq_port *port = dev_id;
+	struct privcmd_kernel_ioreq *kioreq = port->kioreq;
+	struct ioreq *ioreq = &kioreq->ioreq[port->vcpu];
+	struct privcmd_kernel_ioeventfd *kioeventfd;
+	unsigned int state = STATE_IOREQ_READY;
+
+	if (ioreq->state != STATE_IOREQ_READY ||
+	    ioreq->type != IOREQ_TYPE_COPY || ioreq->dir != IOREQ_WRITE)
+		return IRQ_NONE;
+
+	/* Barrier to ensure reads are finished before `state` is updated */
+	smp_mb();
+
+	ioreq->state = STATE_IOREQ_INPROCESS;
+
+	spin_lock(&kioreq->lock);
+	list_for_each_entry(kioeventfd, &kioreq->ioeventfds, list) {
+		if (ioreq->addr == kioeventfd->addr + VIRTIO_MMIO_QUEUE_NOTIFY &&
+		    ioreq->size == kioeventfd->addr_len &&
+		    (ioreq->data & QUEUE_NOTIFY_VQ_MASK) == kioeventfd->vq) {
+			eventfd_signal(kioeventfd->eventfd, 1);
+			state = STATE_IORESP_READY;
+			break;
+		}
+	}
+	spin_unlock(&kioreq->lock);
+
+	/* Barrier to ensure writes are finished before `state` is updated */
+	smp_mb();
+
+	ioreq->state = state;
+
+	if (state == STATE_IORESP_READY) {
+		notify_remote_via_evtchn(port->port);
+		return IRQ_HANDLED;
+	}
+
+	return IRQ_NONE;
+}
+
+static void ioreq_free(struct privcmd_kernel_ioreq *kioreq)
+{
+	struct ioreq_port *ports = kioreq->ports;
+	int i;
+
+	lockdep_assert_held(&ioreq_lock);
+
+	if (!list_empty(&kioreq->ioeventfds)) {
+		pr_warn_ratelimited("Ioeventfds list should be empty\n");
+		return;
+	}
+
+	list_del(&kioreq->list);
+
+	for (i = kioreq->vcpus - 1; i >= 0; i--)
+		unbind_from_irqhandler(irq_from_evtchn(ports[i].port), &ports[i]);
+
+	kfree(kioreq);
+}
+
+static
+struct privcmd_kernel_ioreq *alloc_ioreq(struct privcmd_ioeventfd *ioeventfd)
+{
+	struct privcmd_kernel_ioreq *kioreq;
+	struct mm_struct *mm = current->mm;
+	struct vm_area_struct *vma;
+	struct page **pages;
+	unsigned int *ports;
+	int ret, size, i;
+
+	lockdep_assert_held(&ioreq_lock);
+
+	size = struct_size(kioreq, ports, ioeventfd->vcpus);
+	kioreq = kzalloc(size, GFP_KERNEL);
+	if (!kioreq)
+		return ERR_PTR(-ENOMEM);
+
+	kioreq->dom = ioeventfd->dom;
+	kioreq->vcpus = ioeventfd->vcpus;
+	kioreq->uioreq = ioeventfd->ioreq;
+	spin_lock_init(&kioreq->lock);
+	INIT_LIST_HEAD(&kioreq->ioeventfds);
+
+	/* The memory for ioreq server must have been mapped earlier */
+	mmap_write_lock(mm);
+	vma = find_vma(mm, (unsigned long)ioeventfd->ioreq);
+	if (!vma) {
+		pr_err("Failed to find vma for ioreq page!\n");
+		mmap_write_unlock(mm);
+		ret = -EFAULT;
+		goto error_kfree;
+	}
+
+	pages = vma->vm_private_data;
+	kioreq->ioreq = (struct ioreq *)(page_to_virt(pages[0]));
+	mmap_write_unlock(mm);
+
+	size = sizeof(*ports) * kioreq->vcpus;
+	ports = kzalloc(size, GFP_KERNEL);
+	if (!ports) {
+		ret = -ENOMEM;
+		goto error_kfree;
+	}
+
+	if (copy_from_user(ports, ioeventfd->ports, size)) {
+		ret = -EFAULT;
+		goto error_kfree_ports;
+	}
+
+	for (i = 0; i < kioreq->vcpus; i++) {
+		kioreq->ports[i].vcpu = i;
+		kioreq->ports[i].port = ports[i];
+		kioreq->ports[i].kioreq = kioreq;
+
+		ret = bind_evtchn_to_irqhandler_lateeoi(ports[i],
+				ioeventfd_interrupt, IRQF_SHARED, "ioeventfd",
+				&kioreq->ports[i]);
+		if (ret < 0)
+			goto error_unbind;
+	}
+
+	kfree(ports);
+
+	list_add_tail(&kioreq->list, &ioreq_list);
+
+	return kioreq;
+
+error_unbind:
+	while (--i >= 0)
+		unbind_from_irqhandler(irq_from_evtchn(ports[i]), &kioreq->ports[i]);
+error_kfree_ports:
+	kfree(ports);
+error_kfree:
+	kfree(kioreq);
+	return ERR_PTR(ret);
+}
+
+static struct privcmd_kernel_ioreq *
+get_ioreq(struct privcmd_ioeventfd *ioeventfd, struct eventfd_ctx *eventfd)
+{
+	struct privcmd_kernel_ioreq *kioreq;
+	unsigned long flags;
+
+	list_for_each_entry(kioreq, &ioreq_list, list) {
+		struct privcmd_kernel_ioeventfd *kioeventfd;
+
+		/*
+		 * kioreq fields can be accessed here without a lock as they are
+		 * never updated after being added to the ioreq_list.
+		 */
+		if (kioreq->uioreq != ioeventfd->ioreq) {
+			continue;
+		} else if (kioreq->dom != ioeventfd->dom ||
+			   kioreq->vcpus != ioeventfd->vcpus) {
+			pr_err("Invalid ioeventfd configuration mismatch, dom (%u vs %u), vcpus (%u vs %u)\n",
+			       kioreq->dom, ioeventfd->dom, kioreq->vcpus,
+			       ioeventfd->vcpus);
+			return ERR_PTR(-EINVAL);
+		}
+
+		/* Look for a duplicate eventfd for the same guest */
+		spin_lock_irqsave(&kioreq->lock, flags);
+		list_for_each_entry(kioeventfd, &kioreq->ioeventfds, list) {
+			if (eventfd == kioeventfd->eventfd) {
+				spin_unlock_irqrestore(&kioreq->lock, flags);
+				return ERR_PTR(-EBUSY);
+			}
+		}
+		spin_unlock_irqrestore(&kioreq->lock, flags);
+
+		return kioreq;
+	}
+
+	/* Matching kioreq isn't found, allocate a new one */
+	return alloc_ioreq(ioeventfd);
+}
+
+static void ioeventfd_free(struct privcmd_kernel_ioeventfd *kioeventfd)
+{
+	list_del(&kioeventfd->list);
+	eventfd_ctx_put(kioeventfd->eventfd);
+	kfree(kioeventfd);
+}
+
+static int privcmd_ioeventfd_assign(struct privcmd_ioeventfd *ioeventfd)
+{
+	struct privcmd_kernel_ioeventfd *kioeventfd;
+	struct privcmd_kernel_ioreq *kioreq;
+	unsigned long flags;
+	struct fd f;
+	int ret;
+
+	/* Check for range overflow */
+	if (ioeventfd->addr + ioeventfd->addr_len < ioeventfd->addr)
+		return -EINVAL;
+
+	/* Vhost requires us to support length 1, 2, 4, and 8 */
+	if (!(ioeventfd->addr_len == 1 || ioeventfd->addr_len == 2 ||
+	      ioeventfd->addr_len == 4 || ioeventfd->addr_len == 8))
+		return -EINVAL;
+
+	/* 4096 vcpus limit enough ? */
+	if (!ioeventfd->vcpus || ioeventfd->vcpus > 4096)
+		return -EINVAL;
+
+	kioeventfd = kzalloc(sizeof(*kioeventfd), GFP_KERNEL);
+	if (!kioeventfd)
+		return -ENOMEM;
+
+	f = fdget(ioeventfd->event_fd);
+	if (!f.file) {
+		ret = -EBADF;
+		goto error_kfree;
+	}
+
+	kioeventfd->eventfd = eventfd_ctx_fileget(f.file);
+	fdput(f);
+
+	if (IS_ERR(kioeventfd->eventfd)) {
+		ret = PTR_ERR(kioeventfd->eventfd);
+		goto error_kfree;
+	}
+
+	kioeventfd->addr = ioeventfd->addr;
+	kioeventfd->addr_len = ioeventfd->addr_len;
+	kioeventfd->vq = ioeventfd->vq;
+
+	mutex_lock(&ioreq_lock);
+	kioreq = get_ioreq(ioeventfd, kioeventfd->eventfd);
+	if (IS_ERR(kioreq)) {
+		mutex_unlock(&ioreq_lock);
+		ret = PTR_ERR(kioreq);
+		goto error_eventfd;
+	}
+
+	spin_lock_irqsave(&kioreq->lock, flags);
+	list_add_tail(&kioeventfd->list, &kioreq->ioeventfds);
+	spin_unlock_irqrestore(&kioreq->lock, flags);
+
+	mutex_unlock(&ioreq_lock);
+
+	return 0;
+
+error_eventfd:
+	eventfd_ctx_put(kioeventfd->eventfd);
+
+error_kfree:
+	kfree(kioeventfd);
+	return ret;
+}
+
+static int privcmd_ioeventfd_deassign(struct privcmd_ioeventfd *ioeventfd)
+{
+	struct privcmd_kernel_ioreq *kioreq, *tkioreq;
+	struct eventfd_ctx *eventfd;
+	unsigned long flags;
+	int ret = 0;
+
+	eventfd = eventfd_ctx_fdget(ioeventfd->event_fd);
+	if (IS_ERR(eventfd))
+		return PTR_ERR(eventfd);
+
+	mutex_lock(&ioreq_lock);
+	list_for_each_entry_safe(kioreq, tkioreq, &ioreq_list, list) {
+		struct privcmd_kernel_ioeventfd *kioeventfd, *tmp;
+		/*
+		 * kioreq fields can be accessed here without a lock as they are
+		 * never updated after being added to the ioreq_list.
+		 */
+		if (kioreq->dom != ioeventfd->dom ||
+		    kioreq->uioreq != ioeventfd->ioreq ||
+		    kioreq->vcpus != ioeventfd->vcpus)
+			continue;
+
+		spin_lock_irqsave(&kioreq->lock, flags);
+		list_for_each_entry_safe(kioeventfd, tmp, &kioreq->ioeventfds, list) {
+			if (eventfd == kioeventfd->eventfd) {
+				ioeventfd_free(kioeventfd);
+				spin_unlock_irqrestore(&kioreq->lock, flags);
+
+				ioreq_free(kioreq);
+				goto unlock;
+			}
+		}
+		spin_unlock_irqrestore(&kioreq->lock, flags);
+		break;
+	}
+
+	pr_err("Ioeventfd isn't already assigned, dom: %u, addr: %llu\n",
+	       ioeventfd->dom, ioeventfd->addr);
+	ret = -ENODEV;
+
+unlock:
+	mutex_unlock(&ioreq_lock);
+	eventfd_ctx_put(eventfd);
+
+	return ret;
+}
+
+static long privcmd_ioctl_ioeventfd(struct file *file, void __user *udata)
+{
+	struct privcmd_data *data = file->private_data;
+	struct privcmd_ioeventfd ioeventfd;
+
+	if (copy_from_user(&ioeventfd, udata, sizeof(ioeventfd)))
+		return -EFAULT;
+
+	/* No other flags should be set */
+	if (ioeventfd.flags & ~PRIVCMD_IOEVENTFD_FLAG_DEASSIGN)
+		return -EINVAL;
+
+	/* If restriction is in place, check the domid matches */
+	if (data->domid != DOMID_INVALID && data->domid != ioeventfd.dom)
+		return -EPERM;
+
+	if (ioeventfd.flags & PRIVCMD_IOEVENTFD_FLAG_DEASSIGN)
+		return privcmd_ioeventfd_deassign(&ioeventfd);
+
+	return privcmd_ioeventfd_assign(&ioeventfd);
+}
+
+static void privcmd_ioeventfd_exit(void)
+{
+	struct privcmd_kernel_ioreq *kioreq, *tmp;
+	unsigned long flags;
+
+	mutex_lock(&ioreq_lock);
+	list_for_each_entry_safe(kioreq, tmp, &ioreq_list, list) {
+		struct privcmd_kernel_ioeventfd *kioeventfd, *tmp;
+
+		spin_lock_irqsave(&kioreq->lock, flags);
+		list_for_each_entry_safe(kioeventfd, tmp, &kioreq->ioeventfds, list)
+			ioeventfd_free(kioeventfd);
+		spin_unlock_irqrestore(&kioreq->lock, flags);
+
+		ioreq_free(kioreq);
+	}
+	mutex_unlock(&ioreq_lock);
+}
 #else
 static inline long privcmd_ioctl_irqfd(struct file *file, void __user *udata)
 {
@@ -1093,7 +1473,16 @@ static inline int privcmd_irqfd_init(void)
 static inline void privcmd_irqfd_exit(void)
 {
 }
-#endif /* CONFIG_XEN_PRIVCMD_IRQFD */
+
+static inline long privcmd_ioctl_ioeventfd(struct file *file, void __user *udata)
+{
+	return -EOPNOTSUPP;
+}
+
+static inline void privcmd_ioeventfd_exit(void)
+{
+}
+#endif /* CONFIG_XEN_PRIVCMD_EVENTFD */
 
 static long privcmd_ioctl(struct file *file,
 			  unsigned int cmd, unsigned long data)
@@ -1134,6 +1523,10 @@ static long privcmd_ioctl(struct file *file,
 		ret = privcmd_ioctl_irqfd(file, udata);
 		break;
 
+	case IOCTL_PRIVCMD_IOEVENTFD:
+		ret = privcmd_ioctl_ioeventfd(file, udata);
+		break;
+
 	default:
 		break;
 	}
@@ -1278,6 +1671,7 @@ static int __init privcmd_init(void)
 
 static void __exit privcmd_exit(void)
 {
+	privcmd_ioeventfd_exit();
 	privcmd_irqfd_exit();
 	misc_deregister(&privcmd_dev);
 	misc_deregister(&xen_privcmdbuf_dev);
diff --git a/include/uapi/xen/privcmd.h b/include/uapi/xen/privcmd.h
index 375718ba4ab6..ce71390f0024 100644
--- a/include/uapi/xen/privcmd.h
+++ b/include/uapi/xen/privcmd.h
@@ -110,6 +110,22 @@ struct privcmd_irqfd {
 	__u8 pad[2];
 };
 
+/* For privcmd_ioeventfd::flags */
+#define PRIVCMD_IOEVENTFD_FLAG_DEASSIGN (1 << 0)
+
+struct privcmd_ioeventfd {
+	void __user *ioreq;
+	unsigned int __user *ports;
+	__u64 addr;
+	__u32 addr_len;
+	__u32 event_fd;
+	__u32 vcpus;
+	__u32 vq;
+	__u32 flags;
+	domid_t dom;
+	__u8 pad[2];
+};
+
 /*
  * @cmd: IOCTL_PRIVCMD_HYPERCALL
  * @arg: &privcmd_hypercall_t
@@ -139,5 +155,7 @@ struct privcmd_irqfd {
 	_IOC(_IOC_NONE, 'P', 7, sizeof(struct privcmd_mmap_resource))
 #define IOCTL_PRIVCMD_IRQFD					\
 	_IOC(_IOC_NONE, 'P', 8, sizeof(struct privcmd_irqfd))
+#define IOCTL_PRIVCMD_IOEVENTFD					\
+	_IOC(_IOC_NONE, 'P', 9, sizeof(struct privcmd_ioeventfd))
 
 #endif /* __LINUX_PUBLIC_PRIVCMD_H__ */
diff --git a/include/xen/interface/hvm/ioreq.h b/include/xen/interface/hvm/ioreq.h
new file mode 100644
index 000000000000..b02cfeae7eb5
--- /dev/null
+++ b/include/xen/interface/hvm/ioreq.h
@@ -0,0 +1,51 @@
+/* SPDX-License-Identifier: MIT */
+/*
+ * ioreq.h: I/O request definitions for device models
+ * Copyright (c) 2004, Intel Corporation.
+ */
+
+#ifndef __XEN_PUBLIC_HVM_IOREQ_H__
+#define __XEN_PUBLIC_HVM_IOREQ_H__
+
+#define IOREQ_READ      1
+#define IOREQ_WRITE     0
+
+#define STATE_IOREQ_NONE        0
+#define STATE_IOREQ_READY       1
+#define STATE_IOREQ_INPROCESS   2
+#define STATE_IORESP_READY      3
+
+#define IOREQ_TYPE_PIO          0 /* pio */
+#define IOREQ_TYPE_COPY         1 /* mmio ops */
+#define IOREQ_TYPE_PCI_CONFIG   2
+#define IOREQ_TYPE_TIMEOFFSET   7
+#define IOREQ_TYPE_INVALIDATE   8 /* mapcache */
+
+/*
+ * VMExit dispatcher should cooperate with instruction decoder to
+ * prepare this structure and notify service OS and DM by sending
+ * virq.
+ *
+ * For I/O type IOREQ_TYPE_PCI_CONFIG, the physical address is formatted
+ * as follows:
+ *
+ * 63....48|47..40|39..35|34..32|31........0
+ * SEGMENT |BUS   |DEV   |FN    |OFFSET
+ */
+struct ioreq {
+	uint64_t addr;          /* physical address */
+	uint64_t data;          /* data (or paddr of data) */
+	uint32_t count;         /* for rep prefixes */
+	uint32_t size;          /* size in bytes */
+	uint32_t vp_eport;      /* evtchn for notifications to/from device model */
+	uint16_t _pad0;
+	uint8_t state:4;
+	uint8_t data_is_ptr:1;  /* if 1, data above is the guest paddr
+				 * of the real data to use. */
+	uint8_t dir:1;          /* 1=read, 0=write */
+	uint8_t df:1;
+	uint8_t _pad1:1;
+	uint8_t type;           /* I/O type */
+};
+
+#endif /* __XEN_PUBLIC_HVM_IOREQ_H__ */
-- 
2.31.1.272.g89b43f80a514



From xen-devel-bounces@lists.xenproject.org Thu Oct 05 12:10:58 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 05 Oct 2023 12:10:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612968.953164 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoNBa-0001xr-9u; Thu, 05 Oct 2023 12:10:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612968.953164; Thu, 05 Oct 2023 12:10: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 1qoNBa-0001xk-6x; Thu, 05 Oct 2023 12:10:34 +0000
Received: by outflank-mailman (input) for mailman id 612968;
 Thu, 05 Oct 2023 12:10: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 1qoNBZ-0001xd-2p
 for xen-devel@lists.xenproject.org; Thu, 05 Oct 2023 12:10: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 1qoNBY-0003Q6-HK; Thu, 05 Oct 2023 12:10:32 +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 1qoNBY-0001m4-9w; Thu, 05 Oct 2023 12:10: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=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=1vgTfI8qVhRHaJsHZBMMituiTbzrxTYmvG1a8c7wtaE=; b=wGdt0IT3KHdhzhnOUd5feKCBdy
	vTnGrjMeG9MiwKXBOlrt3WgFXIw22cPJgbxSoy4DrLjo4ME3lswxFHQCwyKHsDM66H2Ez+MZhnkZG
	zAxqYsUKCf2ei6+cSZ1msaM0yinqTigaMmzDGWAT1HBzcu1OU6obZ6Rr91jSnlHw3xi0=;
Message-ID: <f196e4ac-c458-4c4e-8dd7-4a7b53c763c3@xen.org>
Date: Thu, 5 Oct 2023 13:10:30 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v5 01/10] mem_sharing/fork: do not attempt to populate
 vcpu_info page
Content-Language: en-GB
To: Roger Pau Monne <roger.pau@citrix.com>, xen-devel@lists.xenproject.org,
 henry.wang@arm.com, Tamas K Lengyel <tamas@tklengyel.com>
Cc: Jan Beulich <jbeulich@suse.com>, Andrew Cooper
 <andrew.cooper3@citrix.com>, George Dunlap <george.dunlap@citrix.com>,
 Wei Liu <wl@xen.org>
References: <20231002151127.71020-1-roger.pau@citrix.com>
 <20231002151127.71020-2-roger.pau@citrix.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <20231002151127.71020-2-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

Hi,

While preparing to commit this series, I have noticed that there are no 
Acked-by/Reviewed-by from Tamas (or at least not present in my inbox).

@Tamas, can you provide one?

Cheers,

On 02/10/2023 16:11, Roger Pau Monne wrote:
> Instead let map_vcpu_info() and it's call to get_page_from_gfn()
> populate the page in the child as needed.  Also remove the bogus
> copy_domain_page(): should be placed before the call to map_vcpu_info(),
> as the later can update the contents of the vcpu_info page.
> 
> 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.
> 
> Fixes: 41548c5472a3 ('mem_sharing: VM forking')
> Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
> ---
> Only build tested.
> ---
> Changes since v4:
>   - New in this version.
> ---
>   xen/arch/x86/mm/mem_sharing.c | 36 ++++++-----------------------------
>   1 file changed, 6 insertions(+), 30 deletions(-)
> 
> diff --git a/xen/arch/x86/mm/mem_sharing.c b/xen/arch/x86/mm/mem_sharing.c
> index ae5366d4476e..5f8f1fb4d871 100644
> --- a/xen/arch/x86/mm/mem_sharing.c
> +++ b/xen/arch/x86/mm/mem_sharing.c
> @@ -1689,48 +1689,24 @@ 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;
> +    mfn_t vcpu_info_mfn;
>   
>       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 */
> +        /* 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);
> +            ret = map_vcpu_info(cd_vcpu, mfn_to_gfn(d, vcpu_info_mfn),
> +                                PAGE_OFFSET(d_vcpu->vcpu_info));
> +            if ( ret )
> +                return ret;
>           }
>   
>           ret = copy_vpmu(d_vcpu, cd_vcpu);

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Thu Oct 05 12:30:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 05 Oct 2023 12:30:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612973.953174 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoNV8-0006AM-O9; Thu, 05 Oct 2023 12:30:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612973.953174; Thu, 05 Oct 2023 12: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 1qoNV8-0006AF-LW; Thu, 05 Oct 2023 12:30:46 +0000
Received: by outflank-mailman (input) for mailman id 612973;
 Thu, 05 Oct 2023 12:30:44 +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 1qoNV6-0006A9-Sz
 for xen-devel@lists.xenproject.org; Thu, 05 Oct 2023 12:30:44 +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 1qoNV6-0003mf-HB; Thu, 05 Oct 2023 12:30:44 +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 1qoNV6-0002c0-67; Thu, 05 Oct 2023 12:30: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=RQnj51vXwHYaxKfvrDp2GXRhis3/V/u4DVotdVP05Kc=; b=gL18mRux8NA6gTVurz5jNdqT6V
	sp2nkBnI31luxbqbjuslcUPPggiV1w63xtnIZmC8Dgn6JTshaEqEAxpnZ5VEwSIKDNJbYwperd3mV
	U63Nw/HydZKHyn7bOKWj7M02lW7Nmu3Kl4Ns5Ks9upalgv6WHcb0Z86CeO0JWwSVBYQ0=;
Message-ID: <c38c503c-1ec8-471c-911f-907e3bfd7c85@xen.org>
Date: Thu, 5 Oct 2023 13:30:42 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: [for-4.18] Re: [PATCH v2] arm/ioreq: guard interaction data on
 read/write operations
Content-Language: en-GB
To: Andrii Chepurnyi <Andrii_Chepurnyi@epam.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Oleksandr Tyshchenko <Oleksandr_Tyshchenko@epam.com>,
 "andrii.chepurnyi82@gmail.com" <andrii.chepurnyi82@gmail.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Henry Wang <Henry.Wang@arm.com>, Michal Orzel <michal.orzel@amd.com>
References: <20231005092141.2540016-1-andrii_chepurnyi@epam.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <20231005092141.2540016-1-andrii_chepurnyi@epam.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

(+ Henry)

Hi Andrii,

@Henry, this patch is a candidate for Xen 4.18. The fix is 
self-contained in the IOREQ code which is in tech preview. So I think 
the risk is limited.

On 05/10/2023 10:21, Andrii Chepurnyi wrote:
> For read operations, there's a potential issue when the data field
> of the ioreq struct is partially updated in the response. To address
> this, zero data field during read operations. This modification
> serves as a safeguard against implementations that may inadvertently
> partially update the data field in response to read requests.
> For instance, consider an 8-bit read operation. In such cases, QEMU,
> returns the same content of the dat field with only 8 bits of
> updated data. This behavior could potentially result in the
> propagation of incorrect or unintended data to ioreq clients.
> There is also a good point to guard interaction data with actual size
> of the interaction.

I don't quite understand the last sentence. Is it meant to justify why 
the two other changes? I.e.:
   * Masking the value for a write
   * Masking the value returned by the Device-Model

>  > Signed-off-by: Andrii Chepurnyi <andrii_chepurnyi@epam.com>
> ---
>   xen/arch/arm/ioreq.c | 8 ++++++--
>   1 file changed, 6 insertions(+), 2 deletions(-)
> 
> diff --git a/xen/arch/arm/ioreq.c b/xen/arch/arm/ioreq.c
> index 3bed0a14c0..26dae8ca28 100644
> --- a/xen/arch/arm/ioreq.c
> +++ b/xen/arch/arm/ioreq.c
> @@ -17,6 +17,8 @@ enum io_state handle_ioserv(struct cpu_user_regs *regs, struct vcpu *v)
>   {
>       const union hsr hsr = { .bits = regs->hsr };
>       const struct hsr_dabt dabt = hsr.dabt;
> +    const uint8_t access_size = (1 << dabt.size) * 8;

Please use 1U.

> +    const uint64_t access_mask = GENMASK_ULL(access_size - 1, 0);
>       /* Code is similar to handle_read */
>       register_t r = v->io.req.data;
>   
> @@ -26,6 +28,7 @@ enum io_state handle_ioserv(struct cpu_user_regs *regs, struct vcpu *v)
>       if ( dabt.write )
>           return IO_HANDLED;
>   
> +    r &= access_mask;

I would add a comment on top with:

"The Arm Arm requires the value to be zero-extended to the size of the 
register. The Device Model is not meant to touch the bits outside of the 
access size, but let's not trust that."

>       r = sign_extend(dabt, r);
>   
>       set_user_reg(regs, dabt.reg, r);
> @@ -39,6 +42,8 @@ enum io_state try_fwd_ioserv(struct cpu_user_regs *regs,
>       struct vcpu_io *vio = &v->io;
>       const struct instr_details instr = info->dabt_instr;
>       struct hsr_dabt dabt = info->dabt;
> +    const uint8_t access_size = (1 << dabt.size) * 8;

Please use 1U.

> +    const uint64_t access_mask = GENMASK_ULL(access_size - 1, 0);
>       ioreq_t p = {
>           .type = IOREQ_TYPE_COPY,
>           .addr = info->gpa,
> @@ -79,8 +84,7 @@ enum io_state try_fwd_ioserv(struct cpu_user_regs *regs,
>           return IO_HANDLED;
>   
>       ASSERT(dabt.valid);
> -

This change seems to be spurious?

> -    p.data = get_user_reg(regs, info->dabt.reg);
> +    p.data = p.dir ? 0 : get_user_reg(regs, info->dabt.reg) & access_mask;

For this case, I would add:

"During a write access, the Device Model only need to know the content 
of the bits associated with the access size (e.g. for 8-bit, the lower 
8-bits). During a read access, the Device Model don't need to know any 
value. So restrict the value it can access."

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Thu Oct 05 12:34:31 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 05 Oct 2023 12:34:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612977.953183 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoNYj-00078G-7R; Thu, 05 Oct 2023 12:34:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612977.953183; Thu, 05 Oct 2023 12:34: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 1qoNYj-000789-4h; Thu, 05 Oct 2023 12:34:29 +0000
Received: by outflank-mailman (input) for mailman id 612977;
 Thu, 05 Oct 2023 12:34: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=rfD8=FT=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qoNYi-000783-7o
 for xen-devel@lists.xenproject.org; Thu, 05 Oct 2023 12:34:28 +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 85a0cd1e-637b-11ee-98d3-6d05b1d4d9a1;
 Thu, 05 Oct 2023 14:34:27 +0200 (CEST)
Received: from DUZPR01CA0007.eurprd01.prod.exchangelabs.com
 (2603:10a6:10:3c3::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.6838.29; Thu, 5 Oct
 2023 12:34:19 +0000
Received: from DBAEUR03FT020.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:3c3:cafe::5f) by DUZPR01CA0007.outlook.office365.com
 (2603:10a6:10:3c3::11) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.33 via Frontend
 Transport; Thu, 5 Oct 2023 12:34:18 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DBAEUR03FT020.mail.protection.outlook.com (100.127.143.27) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6863.26 via Frontend Transport; Thu, 5 Oct 2023 12:34:18 +0000
Received: ("Tessian outbound d219f9a4f5c9:v211");
 Thu, 05 Oct 2023 12:34:18 +0000
Received: from 01a61f9648e4.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 35A46977-CEA2-45D5-A54A-B08714D37E5C.1; 
 Thu, 05 Oct 2023 12:34:07 +0000
Received: from EUR02-VI1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 01a61f9648e4.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Thu, 05 Oct 2023 12:34:07 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by AS8PR08MB6008.eurprd08.prod.outlook.com (2603:10a6:20b:29d::8)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.21; Thu, 5 Oct
 2023 12:34: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%7]) with mapi id 15.20.6838.033; Thu, 5 Oct 2023
 12:34: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: 85a0cd1e-637b-11ee-98d3-6d05b1d4d9a1
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=7Nof8inWieRpZAyEbPoB6s8OOSWDaMBY29C1EDB/U0g=;
 b=QHdquSsnQ2xrcAIGoMTBQz40gqtgEr4KiJp9oKWXYptYllQ/3bLs2cyAnzC6tjzhQgTVKu++pohlybgmLfLDYOfSXHAdHMigwKy7FyEPDVYBQeyImvf6iNrdb5dQc8o0JTMO8UeZVlsB5N4TsLdBV5LMH4nllGkmyHItb+F96NM=
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: 210e09ff11ad8330
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=LEMCSBAWGnBqXLaKq0h4MK3sItybG9x5El9T7t5lcc3DRGZs5WzqQnepmI1T6yq210xR/x3THHbkgtE5V9U0iel6SXaXuzxttp0FuyEpLxhiIIVD+wZVG14YIHm/SbINc2Y+rV0HK7bzLVs9r5Zq/dljI08Wezt9vVS17I7zRLVFOiN6nCSoRnpFUIwKwxjCrBjfwkkd224gKUjFQm65m0X1zSTq0yGQOsnNlBxwJf1qVJ3/6seAcPyL/Mah3Q229cI6cxdaT2XulxGTjmLVdFZ7+WOK+Qts3HsJMNuV3BkT/S5JrSCsk60mgufAQkHquO6uAXSE4V5YGpZ5OpYQxQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=7Nof8inWieRpZAyEbPoB6s8OOSWDaMBY29C1EDB/U0g=;
 b=Y5I0CUqdtxi0jFDX1eoap3GoKotf2VHKd7yE+8U5T4wEncRPZ/aYwi+Cx+1Q2POFQ+IJTJbn7niRE1YXY2JCpuEx0HEDvwp4nk1QS6sH/GTl1DMUCee3gZHeK2vgSvuv2p6CODbgAvFOPRBK5o/yZ1aatWnlgzktWKBEzk0dracGq3/ZU6997JOXxxIN/JRavPrQ+U3qvaU5sYx6NXe1ns74ZomRqYO+cG98A+HjcBG6gVIjr5zluvMO9axbraTGdsW6E+2SmmtFPdm+p0c6sbVE+alsPDVSZjKXJSYPPxa2ftPNmEU92aTBHaLTw0kDt4S3Xrhr0XxrKhIyda0FcQ==
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=7Nof8inWieRpZAyEbPoB6s8OOSWDaMBY29C1EDB/U0g=;
 b=QHdquSsnQ2xrcAIGoMTBQz40gqtgEr4KiJp9oKWXYptYllQ/3bLs2cyAnzC6tjzhQgTVKu++pohlybgmLfLDYOfSXHAdHMigwKy7FyEPDVYBQeyImvf6iNrdb5dQc8o0JTMO8UeZVlsB5N4TsLdBV5LMH4nllGkmyHItb+F96NM=
From: Henry Wang <Henry.Wang@arm.com>
To: Julien Grall <julien@xen.org>
CC: Andrii Chepurnyi <Andrii_Chepurnyi@epam.com>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>, Oleksandr
 Tyshchenko <Oleksandr_Tyshchenko@epam.com>, "andrii.chepurnyi82@gmail.com"
	<andrii.chepurnyi82@gmail.com>, Stefano Stabellini <sstabellini@kernel.org>,
	Bertrand Marquis <Bertrand.Marquis@arm.com>, Volodymyr Babchuk
	<Volodymyr_Babchuk@epam.com>, Michal Orzel <michal.orzel@amd.com>
Subject: Re: [for-4.18] [PATCH v2] arm/ioreq: guard interaction data on
 read/write operations
Thread-Topic: [for-4.18] [PATCH v2] arm/ioreq: guard interaction data on
 read/write operations
Thread-Index: AQHZ94g6DuMy5FujckaIS3DlGIWhGQ==
Date: Thu, 5 Oct 2023 12:34:04 +0000
Message-ID: <290CBA74-9BB9-450B-A974-3B49B91C6CD2@arm.com>
References: <20231005092141.2540016-1-andrii_chepurnyi@epam.com>
 <c38c503c-1ec8-471c-911f-907e3bfd7c85@xen.org>
In-Reply-To: <c38c503c-1ec8-471c-911f-907e3bfd7c85@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_|AS8PR08MB6008:EE_|DBAEUR03FT020:EE_|PAVPR08MB9818:EE_
X-MS-Office365-Filtering-Correlation-Id: d9ac0562-8b3c-45d4-e3bb-08dbc59f64e1
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:
 N3CEF3m3L9vOAqkZ5oQzZSFhhBUnKthGL9cTaAYQrYw2pjkmG8s2a+20j/sGCYL/LDbgiCcR9LM38tv3rpYCUgVfuTrDpQMR8EjFWkrIV1EQ6+xCRFZ215SvbuDQ6KOMFraq32iNXXCjfdapqP5d2TEfZV/k4aRwEqds3P9mfANlobYOd6cZdvHPiPaRFj2GqlzZVeP8SVkWSLhHUp8ZD8olny+FRrd92aCkzBnPNt2gPUeRkC/Nm8s1mkJXsRP3nJCiMR+zjonx6YMMXDxN16SII4h5LTw4kZhy9To+Wik8Ftu7FeuihNEOzLsLricCLNnqENFbIT/hBXEt1hIg/D1v2Uv5HDO8U84iJJJlx/yk7hO/2EgOTK8vzkC0Jh18AnHJkciKC85vo4NEpVCknRG+NqsCS40ej2dCfOVy1J4MJiaLCJTyzu5WKG+qrIG3BPboW/gEx94sM7mlf5e3KBjLRSKp9tkiCJaMBZxeFjenE61MMM5H9Qe+PsDH+JoFthfDyPWjNbUlXny+GwAAh0aJYtNXvrQMOjEPVkpUi9JqP8UDJoqM+EXN03j07CxQrppPdTDWxdvisWewBBHzXXVHIZlipMAm8idotaAn+F/mvkKZcnXxoN8qjA80ye2vP4UKrKrfVGlnj7WssCUxEg==
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)(376002)(366004)(346002)(230922051799003)(451199024)(64100799003)(1800799009)(186009)(8936002)(8676002)(83380400001)(4326008)(53546011)(76116006)(6486002)(66446008)(6506007)(41300700001)(64756008)(54906003)(2616005)(6512007)(26005)(316002)(91956017)(38100700002)(66476007)(66556008)(38070700005)(2906002)(86362001)(478600001)(122000001)(6916009)(66946007)(71200400001)(36756003)(33656002)(5660300002)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="us-ascii"
Content-ID: <7741920B9C0E03459A443CA9431F9A3C@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB6008
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:
 DBAEUR03FT020.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	95fe3015-3e50-49b2-e716-08dbc59f5ca7
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	iPvKoD2PFPhamfSgk7TZefdL59Telvq1GUSZhl2n18cgf4eDDjR58mrgtVcajWd8mELDaPFla4VQf1vQ8lVNVg30NlHOVIknes3C+aiQjnh6dnDRjotPEh7FIkJ95rwQxhtj+o3S/bgQ/kpoc6vAt2G4yAIW7djNk9H0zYh0bKwyoLj9JxdeBJoUTCF0nH3gvcQPwbD+Kf0l1VZ1a3pYpVMG0RUzygO5NqW0m4vDwkPyzTBE0EoIow67WIHVXCOVPm1gXo0xRJS4B+i4QhGW2fQhQtahWMIygAp/0TFcfptPedeXAEcJdi8w9awoD2nIfTLGHhOYBu85W1pUw+sEq0BjWbQ4VOPFjtnwnobEwe5uZYR294bzKFWsTAfBfdFSNPaG2YvMcn4e9wFpjTmCNg7FbV/a2quR7qmIE1Q8/dqmJCKVdQZu6NAKI119PRp6HGbClDhOMotO2RLvf40AZztGH+klVNxZ9NmRfmmZw3v/pQG3wFBd4VOpJcot/Tmqh44aBpDZRmzsc5KdrEslknKNqPHZSh6Q9SxCIlyRu0F75OLkfab0Jhg2ZRvZMazAE6n749PjYcW5wdm08rFZ/pYJsf3Tv63tAbn3MxX62fJdcr6JD5zluKH1jeFcvJIFK900re4sG604mLuiIE/EUOEqucpaUyJ8DuX5cDc9/HmswtMlUxPLGToLki27dHm+oPId5mfu9sYEviJueWUdv7UVjHDic8Etzo0g9ZbNS9FHtSP7YnWRMXsRkurtzLyd
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)(82310400011)(451199024)(1800799009)(64100799003)(186009)(36840700001)(46966006)(40470700004)(26005)(40460700003)(336012)(8676002)(8936002)(4326008)(6862004)(36756003)(53546011)(2906002)(6512007)(6486002)(33656002)(86362001)(40480700001)(5660300002)(2616005)(316002)(41300700001)(478600001)(54906003)(70206006)(36860700001)(70586007)(47076005)(81166007)(6506007)(356005)(83380400001)(82740400003);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Oct 2023 12:34:18.6054
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: d9ac0562-8b3c-45d4-e3bb-08dbc59f64e1
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:
	DBAEUR03FT020.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 Julien,

> On Oct 5, 2023, at 20:30, Julien Grall <julien@xen.org> wrote:
>=20
> (+ Henry)

Thanks.

>=20
> Hi Andrii,
>=20
> @Henry, this patch is a candidate for Xen 4.18. The fix is self-contained=
 in the IOREQ code which is in tech preview. So I think the risk is limited=
.

Sure, with your comments below properly addressed, I think it is fine
to include this patch in 4.18, so:

Release-acked-by: Henry Wang <Henry.Wang@arm.com>

Kind regards,
Henry

>=20
> On 05/10/2023 10:21, Andrii Chepurnyi wrote:
>> For read operations, there's a potential issue when the data field
>> of the ioreq struct is partially updated in the response. To address
>> this, zero data field during read operations. This modification
>> serves as a safeguard against implementations that may inadvertently
>> partially update the data field in response to read requests.
>> For instance, consider an 8-bit read operation. In such cases, QEMU,
>> returns the same content of the dat field with only 8 bits of
>> updated data. This behavior could potentially result in the
>> propagation of incorrect or unintended data to ioreq clients.
>> There is also a good point to guard interaction data with actual size
>> of the interaction.
>=20
> I don't quite understand the last sentence. Is it meant to justify why th=
e two other changes? I.e.:
>  * Masking the value for a write
>  * Masking the value returned by the Device-Model
>=20
>> > Signed-off-by: Andrii Chepurnyi <andrii_chepurnyi@epam.com>
>> ---
>>  xen/arch/arm/ioreq.c | 8 ++++++--
>>  1 file changed, 6 insertions(+), 2 deletions(-)
>> diff --git a/xen/arch/arm/ioreq.c b/xen/arch/arm/ioreq.c
>> index 3bed0a14c0..26dae8ca28 100644
>> --- a/xen/arch/arm/ioreq.c
>> +++ b/xen/arch/arm/ioreq.c
>> @@ -17,6 +17,8 @@ enum io_state handle_ioserv(struct cpu_user_regs *regs=
, struct vcpu *v)
>>  {
>>      const union hsr hsr =3D { .bits =3D regs->hsr };
>>      const struct hsr_dabt dabt =3D hsr.dabt;
>> +    const uint8_t access_size =3D (1 << dabt.size) * 8;
>=20
> Please use 1U.
>=20
>> +    const uint64_t access_mask =3D GENMASK_ULL(access_size - 1, 0);
>>      /* Code is similar to handle_read */
>>      register_t r =3D v->io.req.data;
>>  @@ -26,6 +28,7 @@ enum io_state handle_ioserv(struct cpu_user_regs *reg=
s, struct vcpu *v)
>>      if ( dabt.write )
>>          return IO_HANDLED;
>>  +    r &=3D access_mask;
>=20
> I would add a comment on top with:
>=20
> "The Arm Arm requires the value to be zero-extended to the size of the re=
gister. The Device Model is not meant to touch the bits outside of the acce=
ss size, but let's not trust that."
>=20
>>      r =3D sign_extend(dabt, r);
>>        set_user_reg(regs, dabt.reg, r);
>> @@ -39,6 +42,8 @@ enum io_state try_fwd_ioserv(struct cpu_user_regs *reg=
s,
>>      struct vcpu_io *vio =3D &v->io;
>>      const struct instr_details instr =3D info->dabt_instr;
>>      struct hsr_dabt dabt =3D info->dabt;
>> +    const uint8_t access_size =3D (1 << dabt.size) * 8;
>=20
> Please use 1U.
>=20
>> +    const uint64_t access_mask =3D GENMASK_ULL(access_size - 1, 0);
>>      ioreq_t p =3D {
>>          .type =3D IOREQ_TYPE_COPY,
>>          .addr =3D info->gpa,
>> @@ -79,8 +84,7 @@ enum io_state try_fwd_ioserv(struct cpu_user_regs *reg=
s,
>>          return IO_HANDLED;
>>        ASSERT(dabt.valid);
>> -
>=20
> This change seems to be spurious?
>=20
>> -    p.data =3D get_user_reg(regs, info->dabt.reg);
>> +    p.data =3D p.dir ? 0 : get_user_reg(regs, info->dabt.reg) & access_=
mask;
>=20
> For this case, I would add:
>=20
> "During a write access, the Device Model only need to know the content of=
 the bits associated with the access size (e.g. for 8-bit, the lower 8-bits=
). During a read access, the Device Model don't need to know any value. So =
restrict the value it can access."
>=20
> Cheers,
>=20
> --=20
> Julien Grall



From xen-devel-bounces@lists.xenproject.org Thu Oct 05 12:42:24 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 05 Oct 2023 12:42:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612981.953194 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoNgI-0000jv-0Q; Thu, 05 Oct 2023 12:42:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612981.953194; Thu, 05 Oct 2023 12: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 1qoNgH-0000jo-TK; Thu, 05 Oct 2023 12:42:17 +0000
Received: by outflank-mailman (input) for mailman id 612981;
 Thu, 05 Oct 2023 12:42: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=xhCt=FT=citrix.com=prvs=635b598b3=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qoNgG-0000ji-4t
 for xen-devel@lists.xenproject.org; Thu, 05 Oct 2023 12:42:16 +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 9a53f7e6-637c-11ee-98d3-6d05b1d4d9a1;
 Thu, 05 Oct 2023 14:42:14 +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;
 05 Oct 2023 08:42:09 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by BN8PR03MB5108.namprd03.prod.outlook.com (2603:10b6:408:db::23)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.34; Thu, 5 Oct
 2023 12:42:07 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::66ca:3a42:baeb:9ecf]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::66ca:3a42:baeb:9ecf%6]) with mapi id 15.20.6838.030; Thu, 5 Oct 2023
 12: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>
X-Inumbo-ID: 9a53f7e6-637c-11ee-98d3-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1696509733;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=8Sao735WI9AEEMZtU6qSQLo35yUiDPkGHwmXzAhLtAM=;
  b=T5e+rBhS5JUt+FEPCqHJ8L9yXIYjnN8r9m8CANT1K9LQCEPbOLmXEiGS
   bia42kAnpHB/kb5jknmDUinyRXQ39Woa6vfydIZ8rZxNqfaxV++hqAm/h
   IuIw8bp0VAq/9cdogeiPlII+ci+7Ir27MVBcZ+I+jcUmltup+0fN9Y9di
   g=;
X-CSE-ConnectionGUID: CKwmrl73Q7mX1EJtGu/j0A==
X-CSE-MsgGUID: 9hvNnXsPSdakCnlU8FbaEQ==
X-IronPort-RemoteIP: 104.47.56.170
X-IronPort-MID: 124579591
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:s5pbJalCJHRP+OwKLk/Sfyjo5gxYJ0RdPkR7XQ2eYbSJt1+Wr1Gzt
 xJJDTrSb6uIN2Dxcop0O4jl9ExX7JWHxtZhGwI4/ChmQyMWpZLJC+rCIxarNUt+DCFhoGFPt
 JxCN4aafKjYaleG+39B55C49SEUOZmgH+e6UKicfHkpGWeIcQ954Tp7gek1n4V0ttawBgKJq
 LvartbWfVSowFaYCEpNg064gE0p5K+aVA8w5ARkPqkT5AKGzRH5MbpETU2PByqgKmVrNrbSq
 9brlNmR4m7f9hExPdKp+p6TnpoiG+O60aCm0xK6aoD66vRwjnVaPpUTbZLwXXx/mTSR9+2d/
 f0W3XCGpaXFCYWX8AgVe0Ew/yiTpsSq8pefSZS0mZT7I0Er7xIAahihZa07FdRwxwp5PY1B3
 dc7NzUXak/Yvr2z8OuWaPVDm4MhdOC+aevzulk4pd3YJdAPZMmaBo7tvJpf1jp2gd1SF/HDY
 cZfcSBocBnLfxxIPBEQFY46m+CrwHL4dlW0qnrM/fZxvzeVkVI3iee1WDbWUoXiqcF9hEGXq
 3iA523kKhobKMae2XyO9XfEaurnxHmnBd1DSezhnhJsqAyT2EoVOAYubleyotK/jnPuddhWB
 nVBr0LCqoB3riRHVOLVQxS9qWWsoh0YVtxfAuA+rgqKz8L88wufQ2QJUDNFQNgnr9MtAywn0
 EeTmNHkDiApt6eaIVqd+7GOvHWtMC4aBWYYYGkPSg5ty9vprZw3jxnPZs1+C6PzhdrwcRnvx
 xiaoS54gK8c5eYJyqG68Fbvkz+q4J/TQWYICh7/W2uk6kZyY9ejbonxsFzDt68fdMCeU0WLu
 2UCl46G9ucSAJqRlSuLBuIQALWu4PXDOzrZ6bJyI6QcG/2W0ybLVehtDPtWfS+F7u5slefVX
 XLu
IronPort-HdrOrdr: A9a23:X+wjOKvxX1ztc9vDdTymFqD07skDgNV00zEX/kB9WHVpm6yj+v
 xGUs566faUskd2ZJhEo7q90ca7Lk80maQa3WBVB8bBYOCEghrOEGgB1/qA/9SIIUSXmtK1l5
 0QFpSWYOeaMbEQt7ef3ODXKbcdKNnsytHWuQ/dpU0dMz2DvctbnnZE4gXwKDwHeOFfb6BJba
 Z1fqB81kedkXJ8VLXCOlA1G9Ltivfsj5zcbRsPF3ccmXWzZWPB0s+AL/CAtC1uKQ9y/Q==
X-Talos-CUID: =?us-ascii?q?9a23=3A3qEHLmoVDvEh7fKNHRC3M37mUesGbXjHyCiLGhC?=
 =?us-ascii?q?9OT9EaqG6VBiSoIoxxg=3D=3D?=
X-Talos-MUID: 9a23:Si7LdgVIgI4g7+vq/G7smhdkBNxQ2KinC2sLlahWlcONGBUlbg==
X-IronPort-AV: E=Sophos;i="6.03,203,1694750400"; 
   d="scan'208";a="124579591"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=T7FmqnjDlyt9BvAlEKxyw7nsa91xgoDLkwPmybxJXfUlfrvyR8KbK6+Iu1GeefGMiyBd92KJaUL9tmbij6FRay6zIUPgDY4hNUE6BZtfWWNd4fZx/1iYtmPVnaPtMlJ7vbB+xLRFF1q6tVEPXOS990yoHBQJ/YbIuVrNjLRpQNu2OHKf98ADx8b/O/QFTIZeDGJmCrtarCX9m/7ukXt002fsOF/MaU4nfodXbyabSFRJBG20vdkdK0hkzvBBFcylEUTKxVB05TOJnriNphlE49HO6Vigne0VKAqBkFf3VucAHzJZDE1oniYOI3IKBQyW/ZRWrPzUn8HaZvzkWzA7ZQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=FbvOFJRJCPcQf1LkXr1V45MH41cBLOLTPVyq5i9ZUac=;
 b=JHyVJyUCg6pUmVTADD2y2nveCszEP9hm0qRjrP3w8Rp2XDqxtiNVVkllH5NQeja08CsX0mz11ztOh/XLR7g7j0nuAVHIiy++K1i8ilWzMkrt9W4rYIguWTUz2vM5SUFnCK4P/szGTQHU4271ZEYnidBTUkrW9G0l7holOGDuQHLHiLs0Kev0c5SNeGC47TIPtVcvMlDMl1pTGGivPDHt13u3n9+1vNnP8iWC5oeuJsmDIvKWE1b52ts9EDq6thud69psyOBY8fDCE6rfGsKgC7/raWxHDvAfI8ln5uwWasm/vud/ewS4EAiUbKPbw7rCYjvwgPQyLxFK8QxxEr+mtg==
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=FbvOFJRJCPcQf1LkXr1V45MH41cBLOLTPVyq5i9ZUac=;
 b=gkblMBT5ZTr6+ERTMN+v6F957lxfNMaCWb8tVs9el6Gb8XtmHstUKDDOAqJUGnvpXV4lle7Nf8OX4gUJyV0/g2cSfBqVn+zA7QOmoWn4ZTLe16KW7f5Hu+8HpAAIVr3VjV40YX2TzOZzfhJuuLrBjfN3HD7bVRfU+HPe9gcEVc0=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Thu, 5 Oct 2023 14:42:00 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Tamas K Lengyel <tamas@tklengyel.com>
Cc: xen-devel@lists.xenproject.org, henry.wang@arm.com,
	Jan Beulich <jbeulich@suse.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>,
	Julien Grall <julien@xen.org>
Subject: Re: [PATCH v5 01/10] mem_sharing/fork: do not attempt to populate
 vcpu_info page
Message-ID: <ZR6vGAhC41Uixchq@MacBookPdeRoger>
References: <20231002151127.71020-1-roger.pau@citrix.com>
 <20231002151127.71020-2-roger.pau@citrix.com>
 <CABfawhmyP_y38002v=v1G2p66ZamhGKrj=0Jm1H_-c_j9VQG8Q@mail.gmail.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <CABfawhmyP_y38002v=v1G2p66ZamhGKrj=0Jm1H_-c_j9VQG8Q@mail.gmail.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_|BN8PR03MB5108:EE_
X-MS-Office365-Filtering-Correlation-Id: 6d4505f6-7107-4f67-7cbf-08dbc5a07b90
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:
	zvh1JvPPGFB034leEdRlHAaQYVoFgLUYxXZvjGONEBj5bCobeq96gmZhH9dhKEqBW5QwS/+t8Y8C7fZh2OkZ8cHgDuDpdBW0P26XP2UijIBhf7FE9g5lHh0aB/Q0qITGe1Cuegc+pI8hRL6iA701ShYNkAwqAlGyliAMFLzZ4cEMWlArvX3n6notcOrnwKqEZ6GX135pSutDsw9YB7w2zWNMsCM7mKCVWMPiEeS9Tt+aw6G3ciW6g995ig7l6FYh4m99JyOuqGdMgjMhWgQecLjbldK5LcjmlnMG/GlRWAcC2RgGuIHT7EBRrrOQNU17ZQIGQ9Hk5K5pegWQm1cA5uIODII2ijbVzhIYpISQ62DPcfybLIIfIJNu53nbifXpb00dGccTGZzrV592SgSMkogOLg1kWV3IOo9L7w/gK6cqYRfNqGLqn7MxFelovR02ixVDOV3k3i0OKJh8popl9OA/hfkWqS66Tiv7Q0lKOHJ8FQOy7FuhhY2pPkD0KSgJmgM4p8WQkr49zHWrjy0I498jGvYj+oLkZZMTnV9cLaYAgGE4vL8ULwLgNY3hJU+n
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)(366004)(376002)(136003)(396003)(230922051799003)(64100799003)(186009)(451199024)(1800799009)(66476007)(478600001)(6512007)(6666004)(6486002)(53546011)(6506007)(9686003)(83380400001)(26005)(2906002)(4744005)(4326008)(33716001)(54906003)(6916009)(8936002)(66556008)(66946007)(5660300002)(8676002)(316002)(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?R3lEUEhHSTFBNVROc2c5UzhKWmJmc3VJc1d6RUJIdUR1c0ZtNldBUVZ2UzhI?=
 =?utf-8?B?dmhiVVEvdWhUNWlnUUt4NU9zUTVzUjc0L0ROcTRlRkNDTXdrL2xoRlFwbk55?=
 =?utf-8?B?Nm51OVhpcStTNUp4cjVGVGhwaFBSbFdMakZXTHpFd0JZaXNRNG5IbVhYVUJZ?=
 =?utf-8?B?OTgzNjQwb00wQzdyWFI4YzVPTGtTZzF0d1dmdmQzOUo0VXYzM3g5YVc1YzY4?=
 =?utf-8?B?QzIzbHBsdzBHLytJaG14RWdoVEpPUUcrQVRFTzNHaTBXQlloeklRK0tMR0VQ?=
 =?utf-8?B?MHN6bWJJMkZjNW02bU1vRUtqOVAzR3cyMllVYk0vQk1MS1BtbjJDS1F0Zi8x?=
 =?utf-8?B?bHlET3VyL1RRZFdSUEZqS2xrd0FKWk96K1N6SDh1WS9xdkNaNGNURjdhWlJE?=
 =?utf-8?B?THJKYTRHRzI2d1lSazhJemRVbHlvRVltM3QvRmJISUV2dWUrSGpEdGU3UTRJ?=
 =?utf-8?B?c01aY21vZy82SzVPcU9PNTJFT0ZDVE8yMHdYeUcyd1dIMEFTNWlVd0tZZnpo?=
 =?utf-8?B?NDBkckV4em5tU0xrUlNUNjJKb3VMQTVwV3VxL1VMbTN3YjBhUjdUOFZ2b00r?=
 =?utf-8?B?K1pCcUl6T0c4Q3RETkFOb0szblhTNll5bWROWGpyQUo3akttSmw5M1NrNVl1?=
 =?utf-8?B?dU1yYzRrcDU3Z3F6Zlo5U0p2VzJYOEtOcXdMNnFFcHAvaE01Z2dPcStINTA2?=
 =?utf-8?B?Z2VvVm1kZkV5MHJ0YWRNNWtEYlFBS2ZQZ1lFdHh6TWlHbm12YjhWdmkzdWp5?=
 =?utf-8?B?QmJ5NXVYS1pPNFQxUi81WFV5MFF4WGxQbXBEMWEyeUpRTE9xMVNVQTNuVVRG?=
 =?utf-8?B?cExEUVBFakRZb3VERE9yZTJKa3NGanFEdHI2YzYrME1oaGhxUnpFaEw3Nk5w?=
 =?utf-8?B?SThNRzBMN3hMNVh1WERUdk5SVDRhMDBLdVJVT0F6U043OUMwdlNKTFI1dkNL?=
 =?utf-8?B?Z084b1FSZDBlYm9vVmprMmkxc3g2cHRiak9PYzNncHd3M0JlZmR2c2Z4Zm9G?=
 =?utf-8?B?SXBBcVM0Um51MEhnU2x0SnpoL1ZhYURUQ1c3VEY5c0MvWEt0NlcvNUgwSUNy?=
 =?utf-8?B?Q1JaL1pxNGNteDd2WXNpVDlvR29XYStHOTRZYWgvQzFXOUhmVy92UEJWTmNN?=
 =?utf-8?B?dWRCbjFWSGJ5d1ZKTmxRb3VYeDFnb3NhWjJRUStKYkdhN3NRVzNrNHBENm1D?=
 =?utf-8?B?QldwNURtdmVqUnp4b3FEc2gxYjk2VGdiVUg1U2NuMFNyTnlVTkplbEpMcW1P?=
 =?utf-8?B?N0wxMzhMOWJJNXBrLzNQSC9KK0dFMmFBQkVDYnY4NTJOUUVXeFQvMmdrODlP?=
 =?utf-8?B?K01GeE8wQlNoa0F5S1BTTWUrWWxoN3I4NS9jUk1NcExkTldqbUJWQ0dSVlVm?=
 =?utf-8?B?cTNGRFQrWnFoS2tqcmZSRmFFTGJRbFNyT2VBS2pyZFJIV1ZOWmFNbGZIQWVB?=
 =?utf-8?B?NnZFVnNGRW5jbXZnUzhiL3NhK1hwc092MjJ6ZHd6Y3U5NEdlSnZaTVFVdm9N?=
 =?utf-8?B?ZmMwdk5JOFEwNXFMcjgzQVk2bmcxTzFuejNlYnFSb251MGlkOGRlRU8reGtE?=
 =?utf-8?B?elF2YnVjcnIyODF5dHA5ck1obHdqVC9SUGpUTUMrRUhpZTVqNXc4QVJ0T2xU?=
 =?utf-8?B?T1JscmpsNE9UNEN5eG4zdGM5QnB2QkV1N213b2k4L2ZZRVlRZERCclZBSkhl?=
 =?utf-8?B?dlQwVW43eVJGbGhTRU9xUGQyVk9YYjM5STZTZFBGdkdNdkhQRjBnTXRxc21I?=
 =?utf-8?B?MGszN003V3dFOFVLc01tZWY0TUg0RWRqaFZ1VkwwY0w1ZkhLcEhwL05JbTZP?=
 =?utf-8?B?blZRc3poRDNRWXoveWNySHVPWTdPVXhKZFNiQnJNRkVCWTRBOUsrYjZ1VTZK?=
 =?utf-8?B?OTlnK0M5K25MY20vKzRnVlNkSjBNODZ5TzQwM3U2Q1hDZnc0aUthdUl0NFFq?=
 =?utf-8?B?QkVNeVhUWUFiV3o4czRlaE9OTUlrdzc2ZnZiQ2Y1d3JQeTdGK2k1Ukh5SUlP?=
 =?utf-8?B?cnM5SWtzN0dOL3lGdlFIWVI0QTZDUThmRWhTU0twdGhab2tFV1BybUwzU0Vl?=
 =?utf-8?B?eEpUZ0hQejVPbkNaOUYrSTRsYjY1Z2VzUVJ0YXhnUzFUSXF1SVNmajlHMTlh?=
 =?utf-8?Q?KG9sSOlOyh1nS7kNf4gVRSFGh?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	J709PsAmsBguMbpVY4TpwufV9OUqIwdAPOLmIfRbSKUAGeYCPW0xVFwZAz9w+CE3O2WFZwXhMtNwKx5jvK7PCf2ePCStkUmjU5riXVa+ssKnssYGPsFb3Cd6vryLDqvFyV070HW4bjg1yiSpbEx9MDjohaRhIMfUKREJEfV+ADfMnjuf2Ge7vgnt9pgn5ahPEwNVfaIc/hZqXwUf9UQEvOOZNzD/HOnGrx9DD0CVW0ISV8pDLOiBBEsGnoYLtPKlD9itA7heAAqRs7qc8n2XlHYs0y++KjD1sqIaLFhZdUFnNFjFRpAYwCZne98sS1YQrB2iSDFFL8obgXMACpYBJh3U1QgvvcNRwg819XTfBl+kwhgEp7kBv0ctPCVDJxh0bPGgYt0oM5iJ1tmmy1nJJTrQ9MGMzrT5/JbP0TZENOJjPJiHAQsq1cXbirxYGBkPzxV60rrNzAWbNZpGli18USzWbGOj1NpTB+sIoWqrqAEouXzOy1EqGaHEUUdY/vj5dboTQPNgTsw2PMkLO95QCswWFHl7qiV9Cp1DM9BbPaEtzklBSYi2VFdfGOVqu/x32SomqKxZzUHyiWXSpkjh/ZeRk+KIYdBpTx8+4otdRatxglNsPy+rQA7CxoXMUdOGb1r/1UTrtRsGSi7d+wm5u+joUZV0+PQwifekUynJKD8AnCwGe+mFA+BYJiIJWJCoz8iJSyXJ314XOl/KD+nYjhc2n+/6eAUQS5p6QvcmNwo4id5C4Z6An5+pFAKbsEHMPp8vwysbmI3hkwIygDmIGc0NOgtg4McqirV0JsObT4Tqy3EWLaYs7s6Dmp2BV3JD6YDHku3FV9mplEq0ScDQ5JhHq1pIBPdvDyoxp9ArVHbGWQ4Yxi1GOdxYtMcCefTt
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 6d4505f6-7107-4f67-7cbf-08dbc5a07b90
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Oct 2023 12:42:06.5801
 (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: lvyy91cQobb9ppWbPm39Qq+1GIutSrBq0BeVq/voFpaeXijuKu1pBpTX+poyCc/5CunjVI8lZkpwCKAsPd8IEQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN8PR03MB5108

On Tue, Oct 03, 2023 at 09:46:13AM -0400, Tamas K Lengyel wrote:
> On Mon, Oct 2, 2023 at 11:12 AM Roger Pau Monne <roger.pau@citrix.com> wrote:
> >
> > Instead let map_vcpu_info() and it's call to get_page_from_gfn()
> > populate the page in the child as needed.  Also remove the bogus
> > copy_domain_page(): should be placed before the call to map_vcpu_info(),
> > as the later can update the contents of the vcpu_info page.
> >
> > 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.
> >
> > Fixes: 41548c5472a3 ('mem_sharing: VM forking')
> > Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
> 
> Acked-by: Tamas K Lengyel <tamas@tklengyel.com>

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Thu Oct 05 12:42:45 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 05 Oct 2023 12:42:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612984.953203 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoNgj-0001Dp-BV; Thu, 05 Oct 2023 12:42:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612984.953203; Thu, 05 Oct 2023 12: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 1qoNgj-0001Di-8x; Thu, 05 Oct 2023 12:42:45 +0000
Received: by outflank-mailman (input) for mailman id 612984;
 Thu, 05 Oct 2023 12:42: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=g8SC=FT=cloud.com=george.dunlap@srs-se1.protection.inumbo.net>)
 id 1qoNgh-0000ji-KG
 for xen-devel@lists.xenproject.org; Thu, 05 Oct 2023 12:42:43 +0000
Received: from mail-lf1-x136.google.com (mail-lf1-x136.google.com
 [2a00:1450:4864:20::136])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id ad57e67c-637c-11ee-98d3-6d05b1d4d9a1;
 Thu, 05 Oct 2023 14:42:43 +0200 (CEST)
Received: by mail-lf1-x136.google.com with SMTP id
 2adb3069b0e04-50435ad51bbso1178472e87.2
 for <xen-devel@lists.xenproject.org>; Thu, 05 Oct 2023 05:42: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: ad57e67c-637c-11ee-98d3-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1696509762; x=1697114562; 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=rFB4lVFLq+3ZyVndg6AF1otH/FaLKRfpZQA9UuhZKbg=;
        b=WKCdUys6ARtNbcl8j+SF9CD/mXNXS1c5hi2DJEfEqvAnYJ6QiFmjqlGeEsK+mMtYYS
         BuLB0+jHeVI+UNABzsIbDNpZQCuDahfFpMfiqPlrDZXQdrAVSU0wd6784YVaZrhhYG1G
         myaF1b2oyD7r7+Wm6IvxuiNvNZx9l1pQ1k3vI=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1696509762; x=1697114562;
        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=rFB4lVFLq+3ZyVndg6AF1otH/FaLKRfpZQA9UuhZKbg=;
        b=oUykXjlftRwdR+fdGUUuIiuTCRm6H2Y6e53evPosj0AfsehcxQBGgj7xP6A6vu70HI
         gWU0fxrOAIvnk1Y3O165E7MNNuJlJtSajbRxlCRryYHHN9ks9SP4DQ8PpAkiQ2YnlGEV
         hzgj4NHOOSps6B/K8Pwb7p+xL54RoR7hSofDfZNm5YE7H6mIob7COGxJEaScpi3dNzly
         UznW0OYZuOijlETJQUyc0KhGrGaNg2mYaY8hHYLVioHtc1izxG68MdFrkpPo7u1w+fNu
         UffL7LXIZbbNvOZDuUTVvX/SHOZAxxCLT1Ie5R2zo6BzLJlmLOKfnHUkFYrhHBqlj/Yp
         afpQ==
X-Gm-Message-State: AOJu0YzOXEUDtHqrf88dNlBc+7phyCM9mqXQW3GL8C4nCMT9FkOYsTiQ
	ozxrxRe/I56FrBgJk1huPCf4o/gx0eS8NYFPy6Q3qQ==
X-Google-Smtp-Source: AGHT+IHTS4weoOq1IaejShEcxN9cbi2AzkYIlKytrrbbz146Ojk//IQftELLr3gpEFCCn4waxMm936APy9tJn2ZR4vw=
X-Received: by 2002:a19:ca17:0:b0:503:294d:797 with SMTP id
 a23-20020a19ca17000000b00503294d0797mr4034933lfg.11.1696509762532; Thu, 05
 Oct 2023 05:42:42 -0700 (PDT)
MIME-Version: 1.0
References: <20231002151127.71020-1-roger.pau@citrix.com> <20231002151127.71020-2-roger.pau@citrix.com>
 <f196e4ac-c458-4c4e-8dd7-4a7b53c763c3@xen.org>
In-Reply-To: <f196e4ac-c458-4c4e-8dd7-4a7b53c763c3@xen.org>
From: George Dunlap <george.dunlap@cloud.com>
Date: Thu, 5 Oct 2023 13:42:31 +0100
Message-ID: <CA+zSX=YSK6CYd92JrHg=Bkiw2oaLt2x4oUTyTKqjXU58Nc9ZNw@mail.gmail.com>
Subject: Re: [PATCH v5 01/10] mem_sharing/fork: do not attempt to populate
 vcpu_info page
To: Julien Grall <julien@xen.org>
Cc: Roger Pau Monne <roger.pau@citrix.com>, xen-devel@lists.xenproject.org, 
	henry.wang@arm.com, Tamas K Lengyel <tamas@tklengyel.com>, Jan Beulich <jbeulich@suse.com>, 
	Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Thu, Oct 5, 2023 at 1:11=E2=80=AFPM Julien Grall <julien@xen.org> wrote:
>
> Hi,
>
> While preparing to commit this series, I have noticed that there are no
> Acked-by/Reviewed-by from Tamas (or at least not present in my inbox).
>
> @Tamas, can you provide one?

I see an "Acked-by" from Tamas two days ago.

 -George


From xen-devel-bounces@lists.xenproject.org Thu Oct 05 12:47:18 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 05 Oct 2023 12:47:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612990.953213 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoNl3-0002xg-TV; Thu, 05 Oct 2023 12:47:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612990.953213; Thu, 05 Oct 2023 12:47: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 1qoNl3-0002xZ-Qv; Thu, 05 Oct 2023 12:47:13 +0000
Received: by outflank-mailman (input) for mailman id 612990;
 Thu, 05 Oct 2023 12:47: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 1qoNl1-0002xT-VV
 for xen-devel@lists.xenproject.org; Thu, 05 Oct 2023 12:47: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 1qoNl0-0004Gj-Qq; Thu, 05 Oct 2023 12:47:10 +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 1qoNl0-0003Zm-I3; Thu, 05 Oct 2023 12:47: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=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=YzfAptQd0Ncc00gxthGiWe0Rz29LBLr+ogL9Ri/MA0w=; b=y4dmiKTGc4bSWHfAyr88oVc2WQ
	vc1Zjc2Zlcc+M5efKvq3jdCpSVLM+NhafRhi7mdpFLYROQfUjARb1Jj6aISY2Gj9Y4+mVlmlou++r
	ZiMquoXTQhBPU6fGgw4kz63068sxzDCEUaWZ7MqykNPixr28I9fGb3KkDSJGh6MRWWnI=;
Message-ID: <76d0d3a1-8da9-4c78-8daf-32cc085e3723@xen.org>
Date: Thu, 5 Oct 2023 13:47:08 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v5 01/10] mem_sharing/fork: do not attempt to populate
 vcpu_info page
Content-Language: en-GB
To: George Dunlap <george.dunlap@cloud.com>
Cc: Roger Pau Monne <roger.pau@citrix.com>, xen-devel@lists.xenproject.org,
 henry.wang@arm.com, Tamas K Lengyel <tamas@tklengyel.com>,
 Jan Beulich <jbeulich@suse.com>, Andrew Cooper <andrew.cooper3@citrix.com>,
 Wei Liu <wl@xen.org>
References: <20231002151127.71020-1-roger.pau@citrix.com>
 <20231002151127.71020-2-roger.pau@citrix.com>
 <f196e4ac-c458-4c4e-8dd7-4a7b53c763c3@xen.org>
 <CA+zSX=YSK6CYd92JrHg=Bkiw2oaLt2x4oUTyTKqjXU58Nc9ZNw@mail.gmail.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <CA+zSX=YSK6CYd92JrHg=Bkiw2oaLt2x4oUTyTKqjXU58Nc9ZNw@mail.gmail.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

Hi George,

On 05/10/2023 13:42, George Dunlap wrote:
> On Thu, Oct 5, 2023 at 1:11 PM Julien Grall <julien@xen.org> wrote:
>>
>> Hi,
>>
>> While preparing to commit this series, I have noticed that there are no
>> Acked-by/Reviewed-by from Tamas (or at least not present in my inbox).
>>
>> @Tamas, can you provide one?
> 
> I see an "Acked-by" from Tamas two days ago.

Sadly, it is also not on lore.kernel.org or our xenproject mail archives.

In [1], Tamas pointed out he had some e-mail trouble. So anything sent 
by Tamas before last Tuesday is not present in my inbox or any mail 
archives.

Not clear why the Citrix folks received it.

Cheers,

[1] 
https://lore.kernel.org/all/CABfawhn0vH6rS8-SJQJVZtto2HA61By1bCG3w9bJMJR3x+rXsg@mail.gmail.com/

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Thu Oct 05 13:12:42 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 05 Oct 2023 13:12:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.612997.953224 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoO9U-0000Oq-JM; Thu, 05 Oct 2023 13:12:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 612997.953224; Thu, 05 Oct 2023 13:12: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 1qoO9U-0000Oj-Gt; Thu, 05 Oct 2023 13:12:28 +0000
Received: by outflank-mailman (input) for mailman id 612997;
 Thu, 05 Oct 2023 13:12: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 1qoO9S-0000Ob-JN
 for xen-devel@lists.xenproject.org; Thu, 05 Oct 2023 13:12: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 1qoO9R-0004so-7q; Thu, 05 Oct 2023 13:12: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 1qoO9R-0004mX-1W; Thu, 05 Oct 2023 13:12: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=Osm9Sthp99WO4DTrw9DszrFaafNqoerBI4/f/f5omKs=; b=6H/Mz3kOqnalG2fm2e/zCIxoYa
	7qyIy+djq387JeDgm7J3Sxp21x7W7cJ6o7f80OOBjnyMz1cMuPrJpJHw46gA6bnUVStHU4oU+o2/A
	3D9QbJRsd0t8qlUujZvUxKOjlIsr+iqaydngFtFGSFvV03cXHB/AmJQbRogNis7GqwU0=;
Message-ID: <83378352-097f-4edc-9394-698cdb66bec7@xen.org>
Date: Thu, 5 Oct 2023 14:12:23 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v5 00/10] runstate/time area registration by (guest)
 physical address
Content-Language: en-GB
To: Henry Wang <Henry.Wang@arm.com>, Roger Pau Monne <roger.pau@citrix.com>
Cc: Xen-devel <xen-devel@lists.xenproject.org>,
 Tamas K Lengyel <tamas@tklengyel.com>, Jan Beulich <jbeulich@suse.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>
References: <20231002151127.71020-1-roger.pau@citrix.com>
 <4F5568FE-DE94-4F19-9F17-BF251E1F6716@arm.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <4F5568FE-DE94-4F19-9F17-BF251E1F6716@arm.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi,

On 05/10/2023 02:27, Henry Wang wrote:
> Hi Roger,
> 
>> On Oct 2, 2023, at 23:11, Roger Pau Monne <roger.pau@citrix.com> wrote:
>>
>> 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.
>>
>> v5 adds one vm-fork specific pre-patch that does simply the introduced
>> code later on.  It does also fix a vm-fork bug.
>>
>> Patches 1 and 6 are missing and Ack from the mem-sharing maintainer.
>>
>> Whole series will need a Release-Ack.
> 
> We agreed in [1] that this series is a good candidate for 4.18, so for the whole
> series,
> 
> Release-acked-by: Henry Wang <Henry.Wang@arm.com>

I have now committed the series.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Thu Oct 05 13:14:34 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 05 Oct 2023 13:14:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613000.953233 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoOBU-0001Xv-Vs; Thu, 05 Oct 2023 13:14:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613000.953233; Thu, 05 Oct 2023 13: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 1qoOBU-0001Xo-TC; Thu, 05 Oct 2023 13:14:32 +0000
Received: by outflank-mailman (input) for mailman id 613000;
 Thu, 05 Oct 2023 13:14:32 +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 1qoOBU-0001WQ-7L
 for xen-devel@lists.xenproject.org; Thu, 05 Oct 2023 13:14:32 +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 1qoOBT-0004v2-CB; Thu, 05 Oct 2023 13:14:31 +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 1qoOBT-0004py-78; Thu, 05 Oct 2023 13:14: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=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=0NUDjTMUIUw9t/FQGYX2pQ+4MbibLpRsLQcfg/dCTok=; b=x8FqhLv447boKeeCL1VArxJj0c
	pviFI8R2d3zktgTS05APPhaSsD4PDUJHmon9P8ewS2znzOPBm0pUv6gOKLEZv7GbvJxW6vDK+gvdz
	FHRnv8FIiulaLiZROt+zprI2gloG9vCT810NxOz9cacHcABSY3/tIY5YwhBAPUNVEY9E=;
Message-ID: <36603672-b371-46ef-be1e-ab67278f6fe3@xen.org>
Date: Thu, 5 Oct 2023 14:14:29 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH for-4.18] MAINTAINERS: Make Bob Eschleman a reviewer
Content-Language: en-GB
To: George Dunlap <george.dunlap@cloud.com>, xen-devel@lists.xenproject.org
Cc: Bob Eshleman <bobby.eshleman@gmail.com>, Wei Liu <wl@xen.org>,
 Andrew Cooper <andrew.cooper3@citrix.com>, Jan Beulich <jbeulich@suse.com>,
 Stefano Stabellini <sstabellini@kernel.org>, Henry Wang <Henry.Wang@arm.com>
References: <20231005090727.19235-1-george.dunlap@cloud.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <20231005090727.19235-1-george.dunlap@cloud.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi George,

On 05/10/2023 10:07, George Dunlap wrote:
> Following a conversation with Bob Eschleman, it was agreed that
> Bobby would prefer to return to being a Reviewer.

Ideally, we would want Bobby confirm on the ML (this could be a simpler 
Acked-by). In any case...

> 
> Signed-off-by: George Dunlap <george.dunlap@cloud.com>

... if you need an ack from another committers:

Acked-by: Julien Grall <jgrall@amazon.com>

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Thu Oct 05 13:16:01 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 05 Oct 2023 13:16:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613005.953244 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoOCu-0002qa-BB; Thu, 05 Oct 2023 13:16:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613005.953244; Thu, 05 Oct 2023 13: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 1qoOCu-0002qT-7c; Thu, 05 Oct 2023 13:16:00 +0000
Received: by outflank-mailman (input) for mailman id 613005;
 Thu, 05 Oct 2023 13:15: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=1p51=FT=tklengyel.com=tamas@srs-se1.protection.inumbo.net>)
 id 1qoOCt-0002cO-LH
 for xen-devel@lists.xenproject.org; Thu, 05 Oct 2023 13:15:59 +0000
Received: from sender4-op-o16.zoho.com (sender4-op-o16.zoho.com
 [136.143.188.16]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 521d6232-6381-11ee-98d3-6d05b1d4d9a1;
 Thu, 05 Oct 2023 15:15:58 +0200 (CEST)
Received: from mail-yb1-f170.google.com (mail-yb1-f170.google.com
 [209.85.219.170]) by mx.zohomail.com
 with SMTPS id 1696511746699396.4257657955326;
 Thu, 5 Oct 2023 06:15:46 -0700 (PDT)
Received: by mail-yb1-f170.google.com with SMTP id
 3f1490d57ef6-d894b8b9b7cso885052276.1
 for <xen-devel@lists.xenproject.org>; Thu, 05 Oct 2023 06:15: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: 521d6232-6381-11ee-98d3-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; t=1696511748; cv=none; 
	d=zohomail.com; s=zohoarc; 
	b=An7ttbDzNmkY5y1soA0g8CsYiYjvOq+cFvrFMlsuHXmMl+z0ryKFZWBQcSa6fJEh5QwB59WFuBINyO+Btz2H05y/kBTTDyh0kMXkgbwpcO6bJsl4LfBdvkIyKoxeiflKcHZeOKBitf/Oq/CSlxvRRCjEWd9/CvKZZ7HMSQDN3p8=
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; 
	t=1696511748; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:MIME-Version:Message-ID:References:Subject:Subject:To:To:Message-Id:Reply-To; 
	bh=p1clsHo+k2GMkpiZif3stSb3kd9ZvVYXWBel3VMSWWo=; 
	b=GkOxLjrl5npXsWQ7JQxudsHgwOdn88V3s0yRHU52LZiXaywGDyY9rxVD1hWFxdFHmytOeD+DPr+7yVJhXH8tK5IUCeE7kraEw8JBNqSBJWWrRh/r4Hd7S7q/ybaP9pmlEcktaMLzEBXEYkw2tAGuASeV8uJnQ4UUZv9IVSJJpqA=
ARC-Authentication-Results: i=1; mx.zohomail.com;
	dkim=pass  header.i=tklengyel.com;
	spf=pass  smtp.mailfrom=tamas@tklengyel.com;
	dmarc=pass header.from=<tamas@tklengyel.com>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; t=1696511748;
	s=zmail; d=tklengyel.com; i=tamas@tklengyel.com;
	h=MIME-Version:References:In-Reply-To:From:From:Date:Date:Message-ID:Subject:Subject:To:To:Cc:Cc:Content-Type:Content-Transfer-Encoding:Message-Id:Reply-To;
	bh=p1clsHo+k2GMkpiZif3stSb3kd9ZvVYXWBel3VMSWWo=;
	b=Bcmu1ysq8HWvioQYoA2h1A4f0fEszPqLUYyoIH0b+s6URvREyXqoKD1hr9BnqsiD
	WatmPyOnxKIBMGJntJMdnfXIJJ6JFf9aHDu7l/EAZXW2ZnvSHJExrYyuljgLvd+imyX
	cuEuu5O2sq8q499w++AYG5mSa4IoYXt3fqfzjTRY=
X-Gm-Message-State: AOJu0YyqODvtvbQ87ogEQx/r6kAGiNqtA0dN7R0aXsKO1D/fzmUNwSbt
	RRVLPEcgeodjPPRKdQg3JHx0rsGMMTgSRJWrm5A=
X-Google-Smtp-Source: AGHT+IF9aZIWfSsM1ECaGkR88iiVc4D96mWmNcvQDhcPki19s2CjVnrjHvH2fgqXpEd/9/5t8l6czkl1RBSA35JoW90=
X-Received: by 2002:a25:ac8e:0:b0:d4a:499d:a881 with SMTP id
 x14-20020a25ac8e000000b00d4a499da881mr807036ybi.9.1696511745797; Thu, 05 Oct
 2023 06:15:45 -0700 (PDT)
MIME-Version: 1.0
References: <20231002151127.71020-1-roger.pau@citrix.com> <20231002151127.71020-2-roger.pau@citrix.com>
In-Reply-To: <20231002151127.71020-2-roger.pau@citrix.com>
From: Tamas K Lengyel <tamas@tklengyel.com>
Date: Thu, 5 Oct 2023 09:15:09 -0400
X-Gmail-Original-Message-ID: <CABfawh=rvmm1wpBKU-HWumpjPcndP0ZDztop-ah=50U2Z2Ye_A@mail.gmail.com>
Message-ID: <CABfawh=rvmm1wpBKU-HWumpjPcndP0ZDztop-ah=50U2Z2Ye_A@mail.gmail.com>
Subject: Re: [PATCH v5 01/10] mem_sharing/fork: do not attempt to populate
 vcpu_info page
To: Roger Pau Monne <roger.pau@citrix.com>
Cc: xen-devel@lists.xenproject.org, henry.wang@arm.com, 
	Jan Beulich <jbeulich@suse.com>, Andrew Cooper <andrew.cooper3@citrix.com>, 
	George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Mon, Oct 2, 2023 at 11:12=E2=80=AFAM Roger Pau Monne <roger.pau@citrix.c=
om> wrote:
>
> Instead let map_vcpu_info() and it's call to get_page_from_gfn()
> populate the page in the child as needed.  Also remove the bogus
> copy_domain_page(): should be placed before the call to map_vcpu_info(),
> as the later can update the contents of the vcpu_info page.
>
> 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.
>
> Fixes: 41548c5472a3 ('mem_sharing: VM forking')
> Signed-off-by: Roger Pau Monn=C3=A9 <roger.pau@citrix.com>

Re-sending due to mailserver issues:

Acked-by: Tamas K Lengyel <tamas@tklengyel.com>


From xen-devel-bounces@lists.xenproject.org Thu Oct 05 13:30:43 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 05 Oct 2023 13:30:43 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613009.953253 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoOR0-0006F6-Jp; Thu, 05 Oct 2023 13:30:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613009.953253; Thu, 05 Oct 2023 13: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 1qoOR0-0006Ez-GA; Thu, 05 Oct 2023 13:30:34 +0000
Received: by outflank-mailman (input) for mailman id 613009;
 Thu, 05 Oct 2023 13: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=gndL=FT=epam.com=prvs=46423b4a7f=andrii_chepurnyi@srs-se1.protection.inumbo.net>)
 id 1qoOQz-0006Et-B7
 for xen-devel@lists.xenproject.org; Thu, 05 Oct 2023 13:30:33 +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 5ab7461e-6383-11ee-98d3-6d05b1d4d9a1;
 Thu, 05 Oct 2023 15:30:32 +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 395DGG6L020658;
 Thu, 5 Oct 2023 13:30:18 GMT
Received: from eur01-db5-obe.outbound.protection.outlook.com
 (mail-db5eur01lp2059.outbound.protection.outlook.com [104.47.2.59])
 by mx0b-0039f301.pphosted.com (PPS) with ESMTPS id 3thwvq032y-1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT);
 Thu, 05 Oct 2023 13:30:17 +0000
Received: from AS8PR03MB9583.eurprd03.prod.outlook.com (2603:10a6:20b:5aa::18)
 by PA4PR03MB6926.eurprd03.prod.outlook.com (2603:10a6:102:e4::16)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.27; Thu, 5 Oct
 2023 13:30:14 +0000
Received: from AS8PR03MB9583.eurprd03.prod.outlook.com
 ([fe80::529f:7d90:7f52:64aa]) by AS8PR03MB9583.eurprd03.prod.outlook.com
 ([fe80::529f:7d90:7f52:64aa%4]) with mapi id 15.20.6838.033; Thu, 5 Oct 2023
 13:30: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: 5ab7461e-6383-11ee-98d3-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=oLAZX3vn/XIFxWyymnQ8lKI0YuI1MeUN6qbUUowX7Uvf9i0GoKbgB+x0SMeElmolaLfENZahUq8vEnBLmNV/1pgnUENbQylJscb/xGeCeWZm0eec37lLxWHzb1MRu6djcaR4Bf9zav2eU6AWQlYC4drgzeFaKl+Ev6t4jCu3xLdIscSmwVJTcVcLL2TED006FwO72uFtPwoK75klYjlnXxeAuFtgps/q5Nl+vIKG5aKmgkf33jgVfy9VGUjG3YNb/HN/6acg6OEq2pF54rYbtOp3Z6Qz+rXtxgOxQ0Bh/VK6UevcMKMXiHu26IOUgruAIk9vgdGuztMF0n4W1xh9+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=6I+lOSuZlgvE8gmDgyPKVdwXA39J4ZWrm6F8aAwavz0=;
 b=kbEKrIBqD+dEQk8Twr3QSg0o8hrwvGIHJJOwDUK+nvs8CJQS4VelT59uwMNyg11BmcBQYHIriwY/6IB2heC9itp09+PIvIhQIWUmxteLZLjEX+Ufzjm0mbBSMFF90lYVXhV+dXBrOSRPESR/eDdXKHKmEtnhyMmSawzlj5CXXG+gqFDLYOTHod4GkX5Iy9SCW2JGigctR2tHFDIp6R0ycV9yTiDuMZfi1Rl/dzQ/1dwRWA2bF2YRi43mbK5BEI5NBsU/EGaYjtGU9lPcmQGLrUiPi9OOIvm3rkYlbNtt73mDYN+FbS3Hyb+B2bmsFvloamj6J5hPfKgzm44CAaGFjQ==
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=6I+lOSuZlgvE8gmDgyPKVdwXA39J4ZWrm6F8aAwavz0=;
 b=aHNpmfLnoors7pAWKwWHykWvedGEgMWcO/EvlGLetzDbz8CPLoZn0ApQ/q+NACYOBoKNvt0T77zmLTwRJn6i5olyvNUpdH48M4DnZAUvhMKYR8dJ2RlyLL/quF16VYFpN5j/oUswdk4uWbuVlUg9qVqgCRRrhpJACr7e/HpUZ0Upgjn2fz0bEyaaciXRpQinBjPvEoYin8GZyC245rQRQSu7iO9rFKn9qo0uHH6BVi78WXhtn1Gye/hzPhWdmN2Cwf0Pm3gBLbkaDOe8m8hD4Go6/J5MV484/vT0vKVo0rtoVphte62//tHRr04QvS3vjavR3xWEuoDFBTtjFCqcsw==
From: Andrii Chepurnyi <Andrii_Chepurnyi@epam.com>
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
CC: Oleksandr Tyshchenko <Oleksandr_Tyshchenko@epam.com>,
        "andrii.chepurnyi82@gmail.com" <andrii.chepurnyi82@gmail.com>,
        "Henry.Wang@arm.com" <Henry.Wang@arm.com>,
        Michal Orzel
	<michal.orzel@amd.com>,
        Andrii Chepurnyi <Andrii_Chepurnyi@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 v3] arm/ioreq: guard interaction data on read/write operations
Thread-Topic: [PATCH v3] arm/ioreq: guard interaction data on read/write
 operations
Thread-Index: AQHZ95ASCSTawXXogECoWqu3XZfq/w==
Date: Thu, 5 Oct 2023 13:30:14 +0000
Message-ID: <20231005133011.2606054-1-andrii_chepurnyi@epam.com>
Accept-Language: uk-UA, en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
x-ms-publictraffictype: Email
x-ms-traffictypediagnostic: AS8PR03MB9583:EE_|PA4PR03MB6926:EE_
x-ms-office365-filtering-correlation-id: 1ec7a562-fe2b-4196-0ffe-08dbc5a73509
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: 
 KDrWkOLOnAXrc1G8ppuArMiWDNvNVauWEWnKQjpUVAKTZ4eWrY/0MZk7Qytu0EVOsVyJ6UPfOULhL8Rzn7BzePRgCrZDUzMAz6EDqENH9lQgvenF96xnGqjgHtBtZSq6keRjVlPhd20iVs+kWtH+19rRvmcGemOoQuRdzOXwlpHoVRf88RJOVuIo9QF3u06v3kGKdVrCuFC8aPPNn64hR+1XMeMPNfb7usU91XrHFV79/JGQXDmkKgKtN225L1JFDml5iVAwbGDcF9/9rXhBASyOC8FAsEW/c0I7ZlZvo6Jg9Yz2Jhk8mCbYhryMD0WiGs2W7KW6Zj03+I5ENbIUiezxV5TBpbMATQWaDQpuA2exupMGqFURpUmQoojJfa+6y6o+uZfAdSPwZST76VuOj9+HmGoNzeSArZG4oX8N7Mdgt4hUmI5yEm2R86DepReY5edFkiHxB5mdNp0dJ3daqgZVT1Kg4mwDcAN+yvOoJW8wDRqgkuKFPygQ9FX+974QuKnMseyL93atI6WNZq6L1DOu8kyrHYbvpuYhRjgvPbD4GO8gI9UYmnL/U4XhE2COvIsKiyhymIWoR8thJhjxAskTPHN4qotr94RJdpZ/Cty226a3hyj5gMlqShfIJm9a
x-forefront-antispam-report: 
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR03MB9583.eurprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376002)(396003)(366004)(39860400002)(346002)(136003)(230922051799003)(186009)(451199024)(1800799009)(64100799003)(4326008)(5660300002)(38070700005)(6916009)(6506007)(41300700001)(54906003)(122000001)(6512007)(107886003)(83380400001)(8936002)(1076003)(316002)(66946007)(91956017)(26005)(66556008)(66446008)(71200400001)(66476007)(64756008)(478600001)(2906002)(2616005)(76116006)(8676002)(6486002)(36756003)(86362001)(38100700002);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: 
 =?iso-8859-1?Q?dbqFznKuq7hDU5001Toh+d/6mfy2R1JJMOFp5BgzfF5Ht96AgpznPQe6A2?=
 =?iso-8859-1?Q?gCg69aYZcBajAP1WcsVhhsok3WknRz2g94o9VKPHGpg8BCGUCj1JU8WqFT?=
 =?iso-8859-1?Q?U2MjCTZpKJhsAkjZiEXUTmDuaqcDlgqavksJWDZyhPCxSKrA9s9890okII?=
 =?iso-8859-1?Q?J0MSH8pcrEsOlXPUqxQJw46cLhxyl2LEXlaIpMTkY9wv+Xs1fUnVW6w71W?=
 =?iso-8859-1?Q?H8MfbQMcm0LxQerR9+G9kGXzY9BZEmexzOdbZ1i/TXY1TkQ6BsmxUFzgOc?=
 =?iso-8859-1?Q?Nh8VUPy8IkkEWxp1/OWv+0RWGGbAUmYwUQumDb+TIrPewVar3NQdRAI8EC?=
 =?iso-8859-1?Q?lON2sJOiaDzw5oOKheLfpZiSu2DOa0MvOljQhrdCTVt5MTCPJnSAxgVsTD?=
 =?iso-8859-1?Q?J3y4s/EB3vYa6qhb6XrVF8UGd8pXiQyCNaAxx5z6bKAA1bmcp4n4lJRNn9?=
 =?iso-8859-1?Q?loqN6NJouXd6AfJ78B+nQ04Pu+6jIUs+RQKwqsidQlsvTlbwvQIx/HcMLb?=
 =?iso-8859-1?Q?09dxTbP1R2QntALWEZKP2iaXrSJWONjUI/3FoT+51gPpwTMShzmscH/lYo?=
 =?iso-8859-1?Q?d1EgdDIgXF4CE2u+3txIM9b9tstm0NTOYNVEYUNIbXNIJ1nxXn/NX09X+N?=
 =?iso-8859-1?Q?BZt6fYsuQBTtRkTs7ajcV3j5ExhbGYQOca6aK51g/mgvO0JA5ingpYxA/7?=
 =?iso-8859-1?Q?Fg6sLXsLUzq3+t7b9QQLnJrTmWhmIK4XEOdNF5KAwkLhvrmxePDSLfhGaz?=
 =?iso-8859-1?Q?QVLP7oAjzFuluA/nnzbsaOTliU0kCCSc9knMZCqjWMoFRUb/asF9RlqbpG?=
 =?iso-8859-1?Q?3/eEq+iv3zmtq6ukkD/QImEbbkg0oDRlSXAjX66JzHpJkB/hg4uLNRKoEW?=
 =?iso-8859-1?Q?7bqA+jACuE5mPGmCaVTXuy9dk4QDVKtrV20CuSayjZMGR7KExaVcg9RHRE?=
 =?iso-8859-1?Q?8aegs3yXZ8CI+2CEbKemW4NybEU+AlgVFiq7TFEL/0VkeIwXl6yB2GHrXI?=
 =?iso-8859-1?Q?fTuZUdJAggMD6zKEhq3tjLnWvMNaSSqkTZjY0wucWUpx3RHOMqzlaT7m5v?=
 =?iso-8859-1?Q?+e/CeYI1Pf9Mu9bi3sIorD+n0EI73z3qZmZA+6uTnrSif0ne/vgcW+W2tl?=
 =?iso-8859-1?Q?7RK6pwE7bErzZOU0Ye7er4ydVGMS9a/GX+iFSVVyVG9/OjQAYi2ojEUnMn?=
 =?iso-8859-1?Q?tb4eDW0Cp3qQ2QoPmDpke08NMRQi7fV0J1/GMvmLlm07yDKdMce7ovjFog?=
 =?iso-8859-1?Q?VEgVd/Ai0RyPFLk0/3+8g0/nUiGfVGryU2yI3JD6l1hw7jx6AlcgmyZrzI?=
 =?iso-8859-1?Q?1KfV5o9scY5Kh20SWfMmApgwYvKd+IMfLj2l8V1M0OQv/kUZJCU2t1ADlk?=
 =?iso-8859-1?Q?hC867llrcv1mQAeoXXwbxZnG7NNOTUbcYx8ZQnymiFBQmdw/aVNgs+UJSq?=
 =?iso-8859-1?Q?zmQmV2LMnxP3iJp2K8OskM5ynZU5E5KFBIDIm3qiIwddiVHkHdH4NNJddw?=
 =?iso-8859-1?Q?gC/sGkWL3GAjhTnN/DYrplVLBvIrHFDnw/ZrC0IrvZApVRBQ+QGvIIHdAL?=
 =?iso-8859-1?Q?121A0OKW03r0Iff2FgOhAmHx3LzQHJTUs+OQPFRib0klS6/ZBqgBvBpufj?=
 =?iso-8859-1?Q?gmvFsamB7cWUrt3R6wIQgqPZIWe4pM+m1eUiwBGziulwZF8AQvsAiKZg?=
 =?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: AS8PR03MB9583.eurprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 1ec7a562-fe2b-4196-0ffe-08dbc5a73509
X-MS-Exchange-CrossTenant-originalarrivaltime: 05 Oct 2023 13:30:14.2579
 (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: noV5aD5eGte8t5ikOS77jV/+idoZ+j+95CAR3f4NlcayLFcgABTcy21nFQDZvaGVe4+0pJEJ2fTojDOGXlnR5j7Qpr3uYbV+C0bPZUqj3PI=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR03MB6926
X-Proofpoint-GUID: NRuOguuxzDzFAs5guWbJAS8UKcoAt5_t
X-Proofpoint-ORIG-GUID: NRuOguuxzDzFAs5guWbJAS8UKcoAt5_t
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-10-05_08,2023-10-05_01,2023-05-22_02
X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 bulkscore=0 adultscore=0
 suspectscore=0 lowpriorityscore=0 mlxlogscore=882 phishscore=0 mlxscore=0
 impostorscore=0 priorityscore=1501 spamscore=0 clxscore=1011
 malwarescore=0 classifier=spam adjust=0 reason=mlx scancount=1
 engine=8.12.0-2309180000 definitions=main-2310050106

For read operations, there's a potential issue when the data field
of the ioreq struct is partially updated in the response. To address
this, zero data field during read operations. This modification
serves as a safeguard against implementations that may inadvertently
partially update the data field in response to read requests.
For instance, consider an 8-bit read operation. In such cases, QEMU,
returns the same content of the data field with only 8 bits of
updated data. This behavior could potentially result in the
propagation of incorrect or unintended data to ioreq clients.
During a write access, the Device Model only need to know the content
of the bits associated with the access size (e.g. for 8-bit, the lower
8-bits). During a read access, the Device Model don't need to know any
value. So restrict the value it can access.

Signed-off-by: Andrii Chepurnyi <andrii_chepurnyi@epam.com>
Release-acked-by: Henry Wang <Henry.Wang@arm.com>
---
 xen/arch/arm/ioreq.c | 18 +++++++++++++++++-
 1 file changed, 17 insertions(+), 1 deletion(-)

diff --git a/xen/arch/arm/ioreq.c b/xen/arch/arm/ioreq.c
index 3bed0a14c0..5df755b48b 100644
--- a/xen/arch/arm/ioreq.c
+++ b/xen/arch/arm/ioreq.c
@@ -17,6 +17,8 @@ enum io_state handle_ioserv(struct cpu_user_regs *regs, s=
truct vcpu *v)
 {
     const union hsr hsr =3D { .bits =3D regs->hsr };
     const struct hsr_dabt dabt =3D hsr.dabt;
+    const uint8_t access_size =3D (1U << dabt.size) * 8;
+    const uint64_t access_mask =3D GENMASK_ULL(access_size - 1, 0);
     /* Code is similar to handle_read */
     register_t r =3D v->io.req.data;
=20
@@ -26,6 +28,12 @@ enum io_state handle_ioserv(struct cpu_user_regs *regs, =
struct vcpu *v)
     if ( dabt.write )
         return IO_HANDLED;
=20
+    /*
+     * The Arm Arm requires the value to be zero-extended to the size
+     * of the register. The Device Model is not meant to touch the bits
+     * outside of the access size, but let's not trust that.
+     */
+    r &=3D access_mask;
     r =3D sign_extend(dabt, r);
=20
     set_user_reg(regs, dabt.reg, r);
@@ -39,6 +47,8 @@ enum io_state try_fwd_ioserv(struct cpu_user_regs *regs,
     struct vcpu_io *vio =3D &v->io;
     const struct instr_details instr =3D info->dabt_instr;
     struct hsr_dabt dabt =3D info->dabt;
+    const uint8_t access_size =3D (1U << dabt.size) * 8;
+    const uint64_t access_mask =3D GENMASK_ULL(access_size - 1, 0);
     ioreq_t p =3D {
         .type =3D IOREQ_TYPE_COPY,
         .addr =3D info->gpa,
@@ -80,7 +90,13 @@ enum io_state try_fwd_ioserv(struct cpu_user_regs *regs,
=20
     ASSERT(dabt.valid);
=20
-    p.data =3D get_user_reg(regs, info->dabt.reg);
+    /*
+     * During a write access, the Device Model only need to know the conte=
nt
+     * of the bits associated with the access size (e.g. for 8-bit, the lo=
wer 8-bits).
+     * During a read access, the Device Model don't need to know any value=
.
+     * So restrict the value it can access.
+     */
+    p.data =3D p.dir ? 0 : get_user_reg(regs, info->dabt.reg) & access_mas=
k;
     vio->req =3D p;
     vio->suspended =3D false;
     vio->info.dabt_instr =3D instr;
--=20
2.25.1


From xen-devel-bounces@lists.xenproject.org Thu Oct 05 13:38:47 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 05 Oct 2023 13:38:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613017.953264 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoOYs-0000Rt-GI; Thu, 05 Oct 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 613017.953264; Thu, 05 Oct 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 1qoOYs-0000Rm-CX; Thu, 05 Oct 2023 13:38:42 +0000
Received: by outflank-mailman (input) for mailman id 613017;
 Thu, 05 Oct 2023 13:38: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 1qoOYq-0000QK-AA; Thu, 05 Oct 2023 13:38: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 1qoOYq-0005cl-1N; Thu, 05 Oct 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 1qoOYp-0002HR-KC; Thu, 05 Oct 2023 13:38:39 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qoOYp-0000wJ-Ja; Thu, 05 Oct 2023 13: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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=5HVMyoxo4fgHLmigj1JziUTsbhxkW2lRBHUB6w8YuFc=; b=KIZQWrKcaca1fqPgX7F1kN/sWW
	AGj0e2P7ieDYF6IlLj76j62TV0zuPeV9WZ2QmSw1+M0GyPTaFiakqMpwBXefQsUbSqfGe4Cr3+NEY
	h0sclXbJUx9INm8iPx67UNWoO6WquaqpmBMbGMqX0n96SwbdTRzTdqXajiROdfljCNQw=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183268-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 183268: tolerable FAIL - PUSHED
X-Osstest-Failures:
    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-armhf-armhf-libvirt: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-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-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-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-xl-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu: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-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-raw:migrate-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-amd64-amd64-libvirt:migrate-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
    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-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:saverestore-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-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=3006adf3be79cde4d14b1800b963b82b6e5572e0
X-Osstest-Versions-That:
    linux=ba7d997a2a29ee3fa766fee912c65796e0c21903
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 05 Oct 2023 13:38:39 +0000

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

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 183265
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183265
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183265
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183265
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183265
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183265
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183265
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183265
 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-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-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-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-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-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-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-amd64-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-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-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-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-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                3006adf3be79cde4d14b1800b963b82b6e5572e0
baseline version:
 linux                ba7d997a2a29ee3fa766fee912c65796e0c21903

Last test of basis   183265  2023-10-04 19:11:54 Z    0 days
Testing same since   183268  2023-10-05 03:37:07 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Daniel Bristot de Oliveira <bristot@kernel.org>
  Linus Torvalds <torvalds@linux-foundation.org>
  Xie XiuQi <xiexiuqi@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
   ba7d997a2a29..3006adf3be79  3006adf3be79cde4d14b1800b963b82b6e5572e0 -> tested/linux-linus


From xen-devel-bounces@lists.xenproject.org Thu Oct 05 14:09:02 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 05 Oct 2023 14:09:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613025.953274 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoP27-0007Sb-QM; Thu, 05 Oct 2023 14:08:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613025.953274; Thu, 05 Oct 2023 14:08: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 1qoP27-0007SU-Ne; Thu, 05 Oct 2023 14:08:55 +0000
Received: by outflank-mailman (input) for mailman id 613025;
 Thu, 05 Oct 2023 14:08: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=xhCt=FT=citrix.com=prvs=635b598b3=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qoP25-0007Om-8B
 for xen-devel@lists.xenproject.org; Thu, 05 Oct 2023 14:08:53 +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 b400c19d-6388-11ee-98d3-6d05b1d4d9a1;
 Thu, 05 Oct 2023 16:08:51 +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;
 05 Oct 2023 10:08:46 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by PH7PR03MB7440.namprd03.prod.outlook.com (2603:10b6:510:2f2::7)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.26; Thu, 5 Oct
 2023 14:08:41 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::66ca:3a42:baeb:9ecf]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::66ca:3a42:baeb:9ecf%6]) with mapi id 15.20.6838.030; Thu, 5 Oct 2023
 14:08: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: b400c19d-6388-11ee-98d3-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1696514931;
  h=from:to:cc:subject:date:message-id:
   content-transfer-encoding:mime-version;
  bh=jhJprP/Y3sHqA4lYHNR4CrEhesGEw8hOqJOA6HojK/E=;
  b=FkCWQnOH23E1U3I07+wCv8mrhqnFEtyfdhrqv46+3bK3ZJgBhu8nvxXM
   uGPxBrHitN4hfI7a+puxc4/yzvbEPRcLqIoDaUbt1HPfgAqSX4h+VwNg4
   QBs3Z1NymIjk/GjVoKValLCupqed5mHtn5EHj3oTDUvqDFlYpEF67uh7+
   Q=;
X-CSE-ConnectionGUID: BQPX1hoCTpGHuhImxarX4g==
X-CSE-MsgGUID: 5TyoGeXGQn662gXGyV5Qzw==
X-IronPort-RemoteIP: 104.47.59.169
X-IronPort-MID: 124588987
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:HdsAyK0uuXaGxn3bZ/bD5ZNxkn2cJEfYwER7XKvMYLTBsI5bpz0En
 zAfC22FPPzfYWCkKdlwaYS1oRwOvZ+ByNNrTVc/pC1hF35El5HIVI+TRqvS04F+DeWYFR46s
 J9OAjXkBJppJpMJjk71atANlVEliOfQAOK6UbaYUsxIbVcMYD87jh5+kPIOjIdtgNyoayuAo
 tq3qMDEULOf82cc3lk8teTb83uDgNyo4GlD5wRmOKgR1LPjvyJ94Kw3dPnZw0TQGuG4LsbiL
 87fwbew+H/u/htFIrtJRZ6iLyXm6paLVeS/oiI+t5qK23CulQRrukoPD9IOaF8/ttm8t4sZJ
 OOhF3CHYVxB0qXkwIzxWvTDes10FfUuFLTveRBTvSEPpqFvnrSFL/hGVSkL0YMkFulfK1h2x
 aUYLxsxdj+jmuKXxaKyUNkwiZF2RCXrFNt3VnBI6xj8VKxjbbWdBqLA6JlfwSs6gd1IEbDGf
 c0FZDFzbRPGJRpSJlMQD5F4l+Ct7pX9W2QA9BTJ+uxqsi6Kkl0ZPLvFabI5fvSQQspYhACAr
 3/u9GXlGBAKcteYzFJp91r13LOSzXOqCN16+LuQq8J7h3Ke9kMqDkNID1SLjuiH13esRIcKQ
 6AT0m90xUQoz2SvT9/gT1i7rWSCsxo0RdVdCas55RuLx66S5ByWbkAbQz8HbN07nMw7Xzon0
 hmOhdyBLSRmrbm9WX+bsLCOoluaNSELIGoqaSYaQA4B5Nf/5oc+knrnQ9p+Faeng8HdFjb3z
 DSH6iM5gt07jtMB3o248ErBjjbqoYLGJiYt7w/aWGON9A51ZIe5IYev7DDz5/ZdMI2ZT1+Op
 1AfnMyX9u4KBIuA0ieKRY0lDLyvovqILjDYqVpuBIU6sSSg/Wa5eoJd6y04I11mWu4CdCPlb
 VH7pwxc/tlQMWGsYKsxZJi+Y/nG1oDlHNXhE/zRMNxHZ8ErcBfdpX8/I0mNw2rqjU4g17klP
 ouWetqtCnBcDrl7yD2xRKEW1rpDKj0C+F4/jKvTl3yPuYdyrlbOIVvZGDNittwE0Z4=
IronPort-HdrOrdr: A9a23:L8kFEK4NPcTZKfYNmQPXwPPXdLJyesId70hD6qkRc20tTiX8ra
 uTdZsgpHjJYVoqKRIdcKm7WJVoIkmsk6Kdg7N9AV7KZmCP0ldASrsSj7cKqAeQfxEWmNQtsJ
 uIRJITNDQgNzlHZZeT2meF+4hJ+ra6zJw=
X-Talos-CUID: 9a23:zkGYzGwLofFWyM2AjNTPBgU+I/gVK33a50vIDG+lCUdsWLSPeQOfrfY=
X-Talos-MUID: 9a23:87JvHAj3ufVtsXTbimX6wMMpaft55IujOG80l8tY4ca0Gj1OZg6Pk2Hi
X-IronPort-AV: E=Sophos;i="6.03,203,1694750400"; 
   d="scan'208";a="124588987"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=MSQxKfBr/pRmoXlVFFgRSOu5iK+iotTFQWvT+pB/btllaqNmzp0+fU8131cOuT1p/WdObIENBcqci1T50LwyXvbCW20uzkarQmUntHHWwUxEUB2MOCQanCb2xHHdbt64TBOsNv89UgOlQFj6HzKKABSeHY5jackrBnVT4qTPDwJRrb/2l65C8hG+ixPtS4lUbI/1HZG3d+A8lbf+0j2Y4vPEojK65n+zbzYJQBYwSVLE9iBn1l9Bel55bzo1NJPC9aS7uy9T1OG03dCZJ1hmFIJIeERuchq6RHyr1qDiCtytyIGVpOLIiY9dwzngG1gGRkrolU2hA8LYAS+ChOKEpw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=KigcWsilP0vslTifvYlQ+ld2SeybbtsKM0+KjnKpMRU=;
 b=JnvrPKB68iUfpWUy2GN7eKkx+ngstiDfVp1p6AizFdu7zYARLFijHV86QoXquzOTzf3HRdpBNCQMwwJBKXtYwiZUgggRCJASK/He2flhpitpC4ZO/rPsfjq9eFZnUu9KwdMazWW+kaJdKI0/qlT2IeSiU7xnFvfZtw3g2p2I4t+Qq4FaCFKff1gDbGybeaassL1q17cwxqY1zltHnXwfjgs0taQoU2Ypq/7lj9O3nfJ0vbbiaq+Q7ofEa4Fp/9bvhvoW7SoDfgofmZ47I3F7b4wz0fmULPgVwAV5bA5oQ5l1KDgK5QT1IO9NJWMTuUKb3rYlI0DMzBaVrqNdgK7SGA==
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=KigcWsilP0vslTifvYlQ+ld2SeybbtsKM0+KjnKpMRU=;
 b=adfpJFuJ7UkgZvXd5+WdNT2u33cBPoMZF8SzkaI9tbdLFDfGz08yQibCS+Dp7NlWmROJv3LEf3tbJ6OL+alRHEQBfuxX6LtJLKfxXxGvxd6mA0JsZJc0pnvRApQRooJYosEGC9h33i/WE+bDTnri8EY+VkUvVA0hsKQkLq7mbng=
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: linux-kernel@vger.kernel.org
Cc: Ross Lagerwall <ross.lagerwall@citrix.com>,
	Roger Pau Monne <roger.pau@citrix.com>,
	Wei Liu <wei.liu@kernel.org>,
	Paul Durrant <paul@xen.org>,
	"David S. Miller" <davem@davemloft.net>,
	Eric Dumazet <edumazet@google.com>,
	Jakub Kicinski <kuba@kernel.org>,
	Paolo Abeni <pabeni@redhat.com>,
	Ian Campbell <Ian.Campbell@citrix.com>,
	Ben Hutchings <bhutchings@solarflare.com>,
	xen-devel@lists.xenproject.org,
	netdev@vger.kernel.org
Subject: [PATCH] xen-netback: use default TX queue size for vifs
Date: Thu,  5 Oct 2023 16:08:31 +0200
Message-ID: <20231005140831.89117-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: LO4P123CA0155.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:188::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_|PH7PR03MB7440:EE_
X-MS-Office365-Filtering-Correlation-Id: 1850646c-1257-49ab-4613-08dbc5ac93dd
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:
	OWtaSkDfB7xzl/7GZiV7b/vuA5pbvvDcB9kXu3R27SNpIXCrrmCwcb4ZVIhLXgTKlFgrsUVG9UqlcM1XwnuxeCdBcQ97dX273ymbHfTZg58QQ7TEcIL93VahZ/s1gUsNInZ+yh0aRoUMCxuBOn1oPOJOemAKvl8oIj6/CHeTe3oVkRSzhLFqLQO6yP06Eeicwza06OanDen18/1UUZuGonSJoDjrsZ/iZ5aILvsbHB7cmJ4N5J9tKb8zStB4Cm+Xh7SalINs/g1GUnWbpKSIGg8zhnO1krNVp45RWavJ9BPVbJUgiWMYvTXXRMa+jyOzYzYQLhEao7mVVM4e0+LvEYqd6fOPC8QwTBaml4yZhWWu146VCdaRalDhhnqN8rEyBima8QIlUsdwSqXNQUE8OyUxY+TAXlw5B/y83LvtmvgFJCOVr4uN2b8VkeWmJfHJIAlSwiS9sYPqGqNCbn+JVscE9K9xIujM0ntAZnjNm2BSiUv4wUqU5fZNaYxk5MgAIJ1mw4XtJ/kFVauLOQyuQng+uYHLcJObINX1X1ACxWyxNvT1VxY+NCrcrmORbAuC
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)(346002)(39860400002)(136003)(376002)(366004)(230922051799003)(64100799003)(186009)(451199024)(1800799009)(2616005)(66556008)(66476007)(54906003)(66946007)(6916009)(316002)(41300700001)(1076003)(6512007)(26005)(6666004)(36756003)(6506007)(478600001)(6486002)(38100700002)(82960400001)(86362001)(83380400001)(7416002)(2906002)(4326008)(8936002)(8676002)(5660300002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?VlY3cTl4S0wyS1pnVmY2TW1yTmMwcTFQWHJadStoMitwVnVERlNzVTVnNFA1?=
 =?utf-8?B?WmxpdW1mME1sZ09lUmJ1K25tcGgxZFFBN3Bub3poNS8wdGtRam9qL2hvelVs?=
 =?utf-8?B?N0gyZlFKWis0ZTVVNld0TktXSjZwdzBrbWFaS0I4cEVKdFF0V3pFZ0RzMENC?=
 =?utf-8?B?T0FQbUd4UjlCVDc5cVozNVZtZHgwbEVsOE1wb1FoaFVtVkxxSXphcW9BTGlh?=
 =?utf-8?B?bUpMeVNkKzQ3bUFBcjRORXorcyswZURybCtwSFZRTnBtSmpKbXNXU3dUV0RC?=
 =?utf-8?B?OHU0T3pzdGZZOHkxZHh2WUdRMU1VTzlYYVdwVmtTZVBydzk2T29MWFpvbm1W?=
 =?utf-8?B?OHMvb3ExSGkySC9XdTBmSzIrMkN0NVc4WFNIQmpHV0hHd291QTQ5M00rNExq?=
 =?utf-8?B?NjlsaXFtSzBTMFQyWTBjTVpNdkFRUE53Z1hSOGc4dit0dkpieEhvaVZRMUZn?=
 =?utf-8?B?N0V5VWRKY2xQK2xuZkRIR3k2Q1NlVzc2U2lKTzFEUDVrK1d0RFdsSU5tcFRX?=
 =?utf-8?B?NUxxL3M0SjFpYlZEVVRKTTExakpQa05tL0lvdEpSRFBCNVAwSFVTdHJXZEpp?=
 =?utf-8?B?UmNFYXZHYTRqYU9IRVlPZTkwd3VESXovVkpQVG5ySWZNN0d4a2FjSjVEbHpv?=
 =?utf-8?B?ekpkejRGSjJvblRLSmZIVDhCa2ZLOGZzelFPbFRCR1d1bGliSTFjcWhCTVRl?=
 =?utf-8?B?U0lTYW1Fd1JMNlJ6Q2hpMDlmMUJWK3VuNGlsMm85Tmg5VmROSS95YmFQcVo1?=
 =?utf-8?B?ckpXU0g3OVlnamMxR3VtcEFhUWpJMWwwc0dGYlJyZG10aVM5bGRhWWhCbitV?=
 =?utf-8?B?M1crZFhSU0hhd0FBWXZ3aGM4SWhFb3REMHZoejhyVlpxUGZUVm9nR2ZjRm1u?=
 =?utf-8?B?ZW84cWtESzZNWlg1Q0hiRjhkbG5qTzA0UFNYSEtkSThvMGpKdWVySnRLRlpq?=
 =?utf-8?B?cHg1MXV6MWxreE1KV0llY1lndjk5WEkvTlFuK2Q1T0NydjdyNVpQd1gwcnI5?=
 =?utf-8?B?RVFXdVdXdU1JSFlSYklEd0ROZndLWFFmcXdpYzI0WkNHYlNib0hyQ3FBZnNG?=
 =?utf-8?B?UmxJSVRncEhEYlVWbDF3OWUrN3ovR0FWWHBqMVRSVHpXMmxyeXkreE1jTHVR?=
 =?utf-8?B?MVBwMVJoOW9IY2VDTkZvc0gvcUUzcWo4TTE4REw3MndPWE9aeWl0VFNLZGN4?=
 =?utf-8?B?alhBMWx0RUJZRTFLSjdCSk41RXBhbXd2N2VkdU94VlJoVUhBcGNCc3NwRysy?=
 =?utf-8?B?R2U3UGtiYks5bFl6NHFTeWJLRnpzU1JnSEY3MFhZZ0hCNVlaaHZ0eXFQRS9X?=
 =?utf-8?B?V0tjWjgxUVJFVk5ybDZjSkNJdDRXcnRROGFQSXpQdkdWSVpic0pmallGSVBq?=
 =?utf-8?B?eXdPTzRENkwvS0t4SXluUmxrdmoyUk1YZExSaVdQU3J6R2tnU2xqUWNsZXVk?=
 =?utf-8?B?ZmJQeG9INVU4MS9aTzByamhZUmQ5dVhOc2RPS0lCcVlEWU9rZEQ0Ym9PSGJE?=
 =?utf-8?B?ZDJCem1DVENVWno0UFhQMWUwNldHNURSV01KdVpLRmN0anNjNkRRSmV0dHBD?=
 =?utf-8?B?NTY2bXBaek1BRjdIejdqdTNZS1BuZEVXalRkYWJoQy9yS1pQT3ZJK2J6MHdX?=
 =?utf-8?B?TkpVVnFNb3AvVU1Salp2eWRiOGVNYkRvb09kZ0RmQm1MYjBpcExWNDV1eENE?=
 =?utf-8?B?cCt1alZvVmM4RkFxcUNOSHB1UmhCL1dxNEIrRWJTS3luUitQaVAwTVNEcURD?=
 =?utf-8?B?TnU4M2UxR0VMa000bkRNdm5BcVR0bXVwOFNQZ1JZUFF0dndobnhuRXhaTDdh?=
 =?utf-8?B?eGJtMGpuZHVZYVM2Qkd2NEV3NEQ0dWY0Q29MZmtQaXdDRzAwS0owRUs4MEVQ?=
 =?utf-8?B?ZVZVNDVPOERyNW45UWlTa2pWZCs5OGdnd29qOXFGVVRoTW9kNEt2VVdVYWFE?=
 =?utf-8?B?M29tcGc3RjBBYndIQlVJdmJvSXp6NGhUeWJNWmoyQWJ1dzdrbktnNEFFZisx?=
 =?utf-8?B?azJ5WDVTZVJlT0RkK28zRnBjQlpvOFVFdUEwZlNzTFNSWE8zYVkyZnlpQnA4?=
 =?utf-8?B?c1dTZ3ZSc0RvS04rOHRmTkE3S0w1YWg3eU4vTWcycSthVVNQeWJkcUV5YUxn?=
 =?utf-8?Q?qfzo5OnXMBpbl0hYBi5tp7vVk?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	=?utf-8?B?V0NiNmVvUWp3N3d0RUlYVHVKZ2NhMGhWUktxdzR1RzdBbWhSMGVmbUF0ZmJi?=
 =?utf-8?B?U0hLR003ckN4QThxY2JVZU9qd1ZFdmxlWHFVb2ZncGx5dklDMTEzNUdYUk5O?=
 =?utf-8?B?Q2MvU2hWdDJqQS8vdHN3TCtvM3dCSUxtdTNYNHhCSEJnQTNCd0txeDB5WFZh?=
 =?utf-8?B?UXlOSFpxK3g0YnRxc2pSWXNMVTBoNGRVaWRtWDgxSndoUWJ3a1lOTzYzSHpK?=
 =?utf-8?B?bDkrcGFMdTNmenRBcEUzYVhZS1dmRTdKQmhsaU1FcnpHbU84UUcrTG9xbWRY?=
 =?utf-8?B?M213U1RmbXBkSlBybE1jV0ZSTHhOUEt2c2ZPSW1rZ0NOUFJGRW5kKzZKV25T?=
 =?utf-8?B?UlBIUlBUY1NsaGJCOWVuUlplQWEranM0cjFERFg2NitBNjg2MDRPODU0UmRa?=
 =?utf-8?B?b2VCRWFLS29Sb3kvVU9kMitIaEI5K3JTM1RISzdzMTNuRDF6ZzNGNGN5QWRq?=
 =?utf-8?B?WWJEMW5pT3A5NXcxZHNZcDJpTnkrRUpLS3ExWWo5ekdkSHI4a1JaVXFWSXoz?=
 =?utf-8?B?MzlCYkh0ZTZQbkdPZjYzR2Vjd21zZE1BbWtBT0tUUk90UURGTDluRk1QSWt0?=
 =?utf-8?B?TnVHS3hZVFU1ZHk3WURpQ3cvNmJ6SWxQVHowdnN6Rk13MEh1MGh1d2IzYWdD?=
 =?utf-8?B?QTBLeDVWMXRadzQ1aGVhb2hOeW93R0pEZ004WDZ2eHUrOWJDTTlBcEdpTytR?=
 =?utf-8?B?eklqODlxZmFFeGlWRXpmaXVGMEo4T2dPU0RzL3drYm56NDEya0YvckUvVkhl?=
 =?utf-8?B?WlpLbjY1ejEwdWdLcVF1cFF5VTcrYm5DTXBQbkdlaytHTFJsQnFDREdzb0s4?=
 =?utf-8?B?Q2Y2TmYyU3E2dmxValhFUlQzYXJ0em9uT2U0bmJpUTdrQUNIZzFtVWtKd1hP?=
 =?utf-8?B?Y1JvT3pZWTByQ2IvS3pBUEl3OXRVOXJXelFDbldzWXY5NE1LSmcrN0tSQm0w?=
 =?utf-8?B?dExCV3lJNmZhR0NHNnV4cHorcFZBYkxJUlJxcm93c3p2VE92cm14UmwwSkFz?=
 =?utf-8?B?TXFKRnlXWTdpd1NncFlYMlN3bmtLZG1pcDI1emZZMTJGRnBXSHprVlhpY2pp?=
 =?utf-8?B?VFlpclJnbEtIUVRYc080d3Irb1NRNDlUNFZieUNTME1GM0FGUjM1bGh3VDI4?=
 =?utf-8?B?QkU3dkRVdjNuUm5qY1RUc0hxWjRCOVllZ3VjdXYrYmx0RWNzWk8wTk1pcEIx?=
 =?utf-8?B?WVRLRjNTQ1Mxem9ULzJGejV6MWFIWGRXV3NTWnBRY3NNT1N6SXUwckhzUWJt?=
 =?utf-8?B?Z2tmZW5oeEk4TDhQc09DOXRiN1JRK3dseFR6cVRFOGdYZFRSYzlhYjFzc2k3?=
 =?utf-8?Q?XTv120EYn47w9OQNHejNe2VlFxZFgWZ6be?=
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 1850646c-1257-49ab-4613-08dbc5ac93dd
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Oct 2023 14:08:41.2413
 (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: xJn5R/ra7HQWo5rksbXX/QFo4LyEmwv5ADmNwpC/pPZwTM8WypoTrswfDHjPA9EaAjSbaoFaOY7c1MHSueuMqw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7PR03MB7440

Do not set netback interfaces (vifs) default TX queue size to the ring size.
The TX queue size is not related to the ring size, and using the ring size (32)
as the queue size can lead to packet drops.  Note the TX side of the vif
interface in the netback domain is the one receiving packets to be injected
to the guest.

Do not explicitly set the TX queue length to any value when creating the
interface, and instead use the system default.  Note that the queue length can
also be adjusted at runtime.

Fixes: f942dc2552b8 ('xen network backend driver')
Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
---
 drivers/net/xen-netback/interface.c | 4 ----
 1 file changed, 4 deletions(-)

diff --git a/drivers/net/xen-netback/interface.c b/drivers/net/xen-netback/interface.c
index f3f2c07423a6..fc3bb63b9ac3 100644
--- a/drivers/net/xen-netback/interface.c
+++ b/drivers/net/xen-netback/interface.c
@@ -41,8 +41,6 @@
 #include <asm/xen/hypercall.h>
 #include <xen/balloon.h>
 
-#define XENVIF_QUEUE_LENGTH 32
-
 /* Number of bytes allowed on the internal guest Rx queue. */
 #define XENVIF_RX_QUEUE_BYTES (XEN_NETIF_RX_RING_SIZE/2 * PAGE_SIZE)
 
@@ -530,8 +528,6 @@ struct xenvif *xenvif_alloc(struct device *parent, domid_t domid,
 	dev->features = dev->hw_features | NETIF_F_RXCSUM;
 	dev->ethtool_ops = &xenvif_ethtool_ops;
 
-	dev->tx_queue_len = XENVIF_QUEUE_LENGTH;
-
 	dev->min_mtu = ETH_MIN_MTU;
 	dev->max_mtu = ETH_MAX_MTU - VLAN_ETH_HLEN;
 
-- 
2.42.0



From xen-devel-bounces@lists.xenproject.org Thu Oct 05 15:17:51 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 05 Oct 2023 15:17:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613032.953284 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoQ6a-0005Zh-R6; Thu, 05 Oct 2023 15:17:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613032.953284; Thu, 05 Oct 2023 15: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 1qoQ6a-0005Za-OH; Thu, 05 Oct 2023 15:17:36 +0000
Received: by outflank-mailman (input) for mailman id 613032;
 Thu, 05 Oct 2023 15:17:35 +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 1qoQ6Z-0005ZU-Eh
 for xen-devel@lists.xenproject.org; Thu, 05 Oct 2023 15:17:35 +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 1qoQ6Y-00088I-Ng; Thu, 05 Oct 2023 15:17:34 +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 1qoQ6Y-0002Qu-Cb; Thu, 05 Oct 2023 15:17: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=TLOJxUxq4KNWIs6HqbgDH6iJFYlmDHOEWMelFQK332I=; b=H+1ocaVb7Je1qj032BrTBMl/Bk
	t2Nr7U8bEU8KkbLV7aZEtjoSlles+I9ddv2wNSDSyg/oVbqaPs5wbzbavMh3FPCTnD6ppqso14LKi
	BWFZKQFjIqq1aD2GGasCOXKRg6QXDjBxl+JPA6dq1CWx+xP7RBHiuvJYCOvTtZ1H8xrw=;
Message-ID: <e092e1ac-e457-40e4-bb2d-79419d703e71@xen.org>
Date: Thu, 5 Oct 2023 16:17:32 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v3] arm/ioreq: guard interaction data on read/write
 operations
Content-Language: en-GB
To: Andrii Chepurnyi <Andrii_Chepurnyi@epam.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Oleksandr Tyshchenko <Oleksandr_Tyshchenko@epam.com>,
 "andrii.chepurnyi82@gmail.com" <andrii.chepurnyi82@gmail.com>,
 "Henry.Wang@arm.com" <Henry.Wang@arm.com>,
 Michal Orzel <michal.orzel@amd.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
References: <20231005133011.2606054-1-andrii_chepurnyi@epam.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <20231005133011.2606054-1-andrii_chepurnyi@epam.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi Andrii,

On 05/10/2023 14:30, Andrii Chepurnyi wrote:
> For read operations, there's a potential issue when the data field
> of the ioreq struct is partially updated in the response. To address
> this, zero data field during read operations. This modification
> serves as a safeguard against implementations that may inadvertently
> partially update the data field in response to read requests.
> For instance, consider an 8-bit read operation. In such cases, QEMU,
> returns the same content of the data field with only 8 bits of
> updated data. This behavior could potentially result in the
> propagation of incorrect or unintended data to ioreq clients.
> During a write access, the Device Model only need to know the content
> of the bits associated with the access size (e.g. for 8-bit, the lower
> 8-bits). During a read access, the Device Model don't need to know any
> value. So restrict the value it can access.
> 
> Signed-off-by: Andrii Chepurnyi <andrii_chepurnyi@epam.com>

Reviewed-by: Julien Grall <jgrall@amazon.com>

Unless there are any objections, I will commit the patch tomorrow (Friday).

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Thu Oct 05 15:34:38 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 05 Oct 2023 15:34:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613039.953294 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoQMy-00016J-9x; Thu, 05 Oct 2023 15:34:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613039.953294; Thu, 05 Oct 2023 15:34: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 1qoQMy-00016C-72; Thu, 05 Oct 2023 15:34:32 +0000
Received: by outflank-mailman (input) for mailman id 613039;
 Thu, 05 Oct 2023 15:34: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 1qoQMx-000162-5M; Thu, 05 Oct 2023 15:34: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 1qoQMw-0008Pz-6c; Thu, 05 Oct 2023 15:34: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 1qoQMv-00050V-SR; Thu, 05 Oct 2023 15:34:29 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qoQMv-00016S-Ru; Thu, 05 Oct 2023 15:34: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=/L8jeo+W0EEVoG7b2NpN4l88BsqUe2zS4l8QjnLtNn4=; b=KosFg2xXWxPTcvVxR7dDokNrWi
	rJ/OwJ/aKKdjp7bNpC0FwsypDTdtcrlADVAlAPV9OuTXgUcoaEBhL3BygOJj5qkC6hH/JlA8SkXnK
	ZTWzaaZkNL7cWMRialKrEGix75iB0nCGQm28HEPac0sXYYw5/38dBYqImv9h28fKAzDo=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183270-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 183270: 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=02c98966360b76052779b0186784437af88f301e
X-Osstest-Versions-That:
    xen=3d2d9e90224c4f430a7ee1190fd3b871b99b0ba0
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 05 Oct 2023 15:34:29 +0000

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

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                  02c98966360b76052779b0186784437af88f301e
baseline version:
 xen                  3d2d9e90224c4f430a7ee1190fd3b871b99b0ba0

Last test of basis   183242  2023-10-02 23:02:02 Z    2 days
Testing same since   183270  2023-10-05 13:03:52 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Ayan Kumar Halder <ayan.kumar.halder@amd.com>
  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
   3d2d9e9022..02c9896636  02c98966360b76052779b0186784437af88f301e -> smoke


From xen-devel-bounces@lists.xenproject.org Thu Oct 05 15:40:12 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 05 Oct 2023 15:40:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613047.953303 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoQSN-0002g9-Tx; Thu, 05 Oct 2023 15:40:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613047.953303; Thu, 05 Oct 2023 15:40: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 1qoQSN-0002g2-RJ; Thu, 05 Oct 2023 15:40:07 +0000
Received: by outflank-mailman (input) for mailman id 613047;
 Thu, 05 Oct 2023 15:40: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=X9r3=FT=gmail.com=k.kahurani@srs-se1.protection.inumbo.net>)
 id 1qoQSM-0002fw-SD
 for xen-devel@lists.xenproject.org; Thu, 05 Oct 2023 15:40:06 +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 7432db21-6395-11ee-98d3-6d05b1d4d9a1;
 Thu, 05 Oct 2023 17:40:05 +0200 (CEST)
Received: by mail-pg1-x52e.google.com with SMTP id
 41be03b00d2f7-58907163519so765774a12.1
 for <xen-devel@lists.xenproject.org>; Thu, 05 Oct 2023 08:40: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: 7432db21-6395-11ee-98d3-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1696520404; x=1697125204; 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=Yf+AiQkBJuLFlOTFx5Each8LtFYadlmD+9qdSbBgp1k=;
        b=ho/NH+LTI2Om6ssMhFPphh1R+CqXwJZtXGW2lJL19Mn0r22xICmScEkviUS4j5FrWw
         QLF65Hv9qier+zzvqysIjE8926Y796zwS6ZYNW27aNmrwfhtmpg6FcDxBQd6BV+t6kQs
         QGH3K8uH/4UBHfB+SPC7C5lbRCcwSliBYj6FPhUQe9Aj5+s0U3A459B2ZC/N7kAJo4vI
         51DDZrfqdIGDQdULY/6ZKMizHwpKBZrcmx3XB4PxxhW0PC6zFbAtnyCzBKJt5j8WWjDn
         mrri/7rfBJ3pfpfvqj3F9hY/C1CCqvM7X8k/7x5Fvwq/CCFHmuagh5nE7UENPzzJASnP
         Tpug==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1696520404; x=1697125204;
        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=Yf+AiQkBJuLFlOTFx5Each8LtFYadlmD+9qdSbBgp1k=;
        b=nv0k3KbPpEmEDKouBtSEqfhoPedl8XJNFdjKQBHigbXJPLQgB023zlQYgad8nLcQ7h
         ogS0zOAfJ1wQxkoCj86FoTDK3alcKmPcj9g4xMnEq9bzQ2Cn4epJqug4yPD1+06uS/gW
         JwnvV3TKkDKrtE5UfZBOajr7VN0yetwH1NoNgf3i68D6c/jQCj0gSnjEU+AZdfIS6BK+
         hlwQU796fJAF6sFfDd+YIlQLkEFZS3CxTS4CT5w+K5Zqog+barhGxiBKRpMulqkaRXQ1
         wiDA//8pIMV666Q/k8IvuPOYOMLtxBLrBGgqxP34wx8HP6QM4oD9evFnhvhc5uU2PQ42
         D8ng==
X-Gm-Message-State: AOJu0YzbKAIudB5GHXiWUrv+YviaOty9JYXZ86dhBtCEECMKoL8AMu7U
	t0zpxqmkBDhmqGPdTyHlsaJObL1+jI3zi36QKW0=
X-Google-Smtp-Source: AGHT+IGR23NeeHBp/H0Nd93mf0n6/TrD8pVQM3G+ZeE4+PSLkP5OUBwS4Uk/S9BMUCFUdkV+ExijdXyuGs1Iln6iuDY=
X-Received: by 2002:a17:90a:4926:b0:273:6b28:9e30 with SMTP id
 c35-20020a17090a492600b002736b289e30mr5393867pjh.41.1696520403842; Thu, 05
 Oct 2023 08:40:03 -0700 (PDT)
MIME-Version: 1.0
References: <20230927082918.197030-1-k.kahurani@gmail.com> <20231004114758.44944e5d@kernel.org>
In-Reply-To: <20231004114758.44944e5d@kernel.org>
From: David Kahurani <k.kahurani@gmail.com>
Date: Thu, 5 Oct 2023 18:39:51 +0300
Message-ID: <CAAZOf27_Cy8jaJBnjKV7YgyaKO2WohYrxcftV5BdOdm66g_Apw@mail.gmail.com>
Subject: Re: [PATCH] net/xen-netback: Break build if netback slots > max_skbs
 + 1
To: Jakub Kicinski <kuba@kernel.org>, Juergen Gross <jgross@suse.com>
Cc: xen-devel@lists.xenproject.org, netdev@vger.kernel.org, wei.liu@kernel.org, 
	paul@xen.org
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

This change was suggested by Juergen and looked okay and straightforward to=
 me.

On Wed, Oct 4, 2023 at 9:48=E2=80=AFPM Jakub Kicinski <kuba@kernel.org> wro=
te:
>
> On Wed, 27 Sep 2023 11:29:18 +0300 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.
>
> MAX_SKB_FRAGS can now be set via Kconfig, this allows us to create
> larger super-packets. Can XEN_NETBK_LEGACY_SLOTS_MAX be made relative
> to MAX_SKB_FRAGS, or does the number have to match between guest and
> host?

Historically, netback driver allows for a maximum of 18 fragments.
With recent changes, it also relies on the assumption that the
difference between MAX_SKB_FRAGS and XEN_NETBK_LEGACY_SLOTS_MAX is one
and MAX_SKB_FRAGS is the lesser value.

Now, look at Ubuntu kernel for instance( a change has been made and,
presumably, with good reason so we have reason to assume that the
change will persist in future releases).

/* To allow 64K frame to be packed as single skb without frag_list we
 * require 64K/PAGE_SIZE pages plus 1 additional page to allow for
 * buffers which do not start on a page boundary.
 *
 * Since GRO uses frags we allocate at least 16 regardless of page
 * size.
 */
#if (65536/PAGE_SIZE + 1) < 16
#define MAX_SKB_FRAGS 16UL
#else
#define MAX_SKB_FRAGS (65536/PAGE_SIZE + 1)
#endif

So, MAX_SKB_FRAGS can sometimes be 16. This is exactly what we're
trying to avoid with this patch. I host running with this change is
vulnerable to attack by the guest(though, this will only happen when
PAGE_SIZE > 4096).

Option #2 would be to add a Kconfig dependency for the driver
> to make sure high MAX_SKB_FRAGS is incompatible with it.

netback doesn't support larger super-packets. At least as of now. The
maximum number of fragments in a packet is 18. Any packets with the
number of fragments above that value from the guest are dropped. I
would assume that support for super-packets is probably something that
should be worked on or maybe even is already being worked on. However,
this is not the issue we are trying to fix in this patch.

>
> Breaking the build will make build bots very sad.

This patch build should not break build for upstream. It will only
break for those patching upstream behaviour. My intent is not to break
build bots but to alert someone building that netback doesn't work
with the particular MAX_SKB_FRAGS value. Seeing as they have modified
upstream behaviour, then, they might as well take a look at the issue
and make a decision themselves. Seeing as this issue will hit the
distros before it goes downstream, I don't think it should be a
problem for users.

>
> We'll also need a Fixes tag, I presume this is a fix?

Yeah, I guess that would be needed too.

> --
> pw-bot: cr


From xen-devel-bounces@lists.xenproject.org Thu Oct 05 15:57:46 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 05 Oct 2023 15:57:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613053.953314 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoQjJ-0006qp-De; Thu, 05 Oct 2023 15:57:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613053.953314; Thu, 05 Oct 2023 15:57: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 1qoQjJ-0006qi-Ah; Thu, 05 Oct 2023 15:57:37 +0000
Received: by outflank-mailman (input) for mailman id 613053;
 Thu, 05 Oct 2023 15:57: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=9m1Y=FT=m5p.com=ehem@srs-se1.protection.inumbo.net>)
 id 1qoQjH-0006qc-Vu
 for xen-devel@lists.xenproject.org; Thu, 05 Oct 2023 15:57:35 +0000
Received: from mailhost.m5p.com (mailhost.m5p.com [74.104.188.4])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id e4eda7a9-6397-11ee-98d3-6d05b1d4d9a1;
 Thu, 05 Oct 2023 17:57:33 +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 395Fv0m7005525
 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NO);
 Thu, 5 Oct 2023 11:57:05 -0400 (EDT) (envelope-from ehem@m5p.com)
Received: (from ehem@localhost)
 by m5p.com (8.17.1/8.15.2/Submit) id 395Fuxic005524;
 Thu, 5 Oct 2023 08:56:59 -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: e4eda7a9-6397-11ee-98d3-6d05b1d4d9a1
Date: Thu, 5 Oct 2023 08:56:59 -0700
From: Elliott Mitchell <ehem+xen@m5p.com>
To: Julien Grall <julien@xen.org>
Cc: Roger Pau =?iso-8859-1?Q?Monn=E9?= <roger.pau@citrix.com>,
        xen-devel@lists.xenproject.org,
        Stefano Stabellini <sstabellini@kernel.org>,
        Bertrand Marquis <bertrand.marquis@arm.com>,
        Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
        Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>
Subject: Re: Issue with shared information page on Xen/ARM 4.17
Message-ID: <ZR7cyzT2S8ZvYPJ2@mattapan.m5p.com>
References: <ZR0erl_OSkNgIQjx@MacBookPdeRoger>
 <c0b67401-dfe5-475f-8640-b66ac32a80fb@xen.org>
 <ZR1gM19i6-vBaXh7@MacBookPdeRoger>
 <b00500ae-76b1-441c-8154-bcdd897734dc@xen.org>
 <ZR1rBP_49Y2V8VF6@MacBookPdeRoger>
 <fe94dcd2-4429-48df-8ebd-59563d43796a@xen.org>
 <ZR18dlMAbCwEOeH4@MacBookPdeRoger>
 <f8242725-7ee0-4fca-a608-d234f8f3b564@xen.org>
 <ZR3VidifMWdjDQcv@mattapan.m5p.com>
 <b740572e-df22-449b-8c90-a155292b2e69@xen.org>
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="MeI29MV4WBbuw2+2"
Content-Disposition: inline
In-Reply-To: <b740572e-df22-449b-8c90-a155292b2e69@xen.org>
X-Spam-Status: No, score=0.0 required=10.0 tests=KHOP_HELO_FCRDNS
	autolearn=unavailable autolearn_force=no version=4.0.0
X-Spam-Checker-Version: SpamAssassin 4.0.0 (2022-12-14) on mattapan.m5p.com


--MeI29MV4WBbuw2+2
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline

On Thu, Oct 05, 2023 at 09:54:26AM +0100, Julien Grall wrote:
> On 04/10/2023 22:13, Elliott Mitchell wrote:
> >>> I understand the situation is different on Arm vs x86, so if
> >>> edk2 is not supported on arm I guess it doesn't matter much whether
> >>> it's broken.  It would be a much worse issue on x86 where edk2 is
> >>> supported.
> >>
> >> AFAIK, we have CI for x86 on EDK2 but we don't on Arm.
> > 
> > What is the current status of this?  I'm unsure whether it was an extra
> > patch done by Debian, but "edk2-stable202211"/fff6d81270 doesn't work
> > with Xen/Qemu.
> 
> I don't know what's the status for x86. But for Arm, there are nothing. 
> And as I pointed out in my previous answer this is unlikely to change 
> until someone invest time in EDK2 on Xen on Arm.

Indications are the measures for x86 aren't very good either.  Presently
the Debian distribution is using builds based on tag edk2-stable202211,
commit fff6d81270.  Could be the Debian package process got broken.
Could also be that tag, builds are completing yet the output fails to
function.

I've also been trying to get Tianocore/EDK2 to function as a bootloader
for PVH.  Current OVMF builds are accepted for the 'kernel = "OVMF.fd"'
line, but simply hang.  I'm wondering whether it is assuming the presence
of a framebuffer and doesn't use the x86 Xen console.

> If there are patches sent on the ML, then I am happy to attempt to 
> review them. But I am afraid, I am not going to have time to try to find 
> and fix all the issues when using EDK2 in Arm guests.

The attached patch got booting via Tianocore/EDK2 working.  This likely
needs adjustment to match their style; problem is their style is so
awful I was looking for an airsickness bag.  I really don't want to do
further polishing.

I'm unsure whether XENMEM_remove_from_physmap uncovers a memory page
which had been previously mapped, versus turning it into a hole.  In
the former case, the allocation should be moved to a normal heap page
since the OS can reuse it.


-- 
(\___(\___(\______          --=> 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



--MeI29MV4WBbuw2+2
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="0001-OvmfPkg-XenBusDxe-Unmap-shared-information-page-on-e.patch"

>From 19b0e88b5e0d6954a924f444b02bcb576a115952 Mon Sep 17 00:00:00 2001
Message-Id: <19b0e88b5e0d6954a924f444b02bcb576a115952.1696517822.git.ehem+xen@m5p.com>
From: Elliott Mitchell <ehem+xen@m5p.com>
Date: Wed, 4 Oct 2023 21:47:17 -0700
Subject: [PATCH] OvmfPkg/XenBusDxe: Unmap shared information page on exit

Xen/ARM now requires the shared information page to only be mapped once.
This behavior is expected to be copied to Xen/x86 at some future point.

Signed-off-by: Elliott Mitchell <ehem+xen@m5p.com>
---
 OvmfPkg/XenBusDxe/XenBusDxe.c | 29 +++++++++++++++++++++++++++++
 1 file changed, 29 insertions(+)

diff --git a/OvmfPkg/XenBusDxe/XenBusDxe.c b/OvmfPkg/XenBusDxe/XenBusDxe.c
index 132f43a72b..117a299d10 100644
--- a/OvmfPkg/XenBusDxe/XenBusDxe.c
+++ b/OvmfPkg/XenBusDxe/XenBusDxe.c
@@ -84,6 +84,33 @@ XenGetSharedInfoPage (
   return EFI_SUCCESS;
 }
 
+/**
+  Unmap the shared_info_t page from memory.
+
+  @param Dev    A XENBUS_DEVICE instance.
+**/
+VOID
+XenClearSharedInfoPage (
+  IN OUT XENBUS_DEVICE  *Dev
+  )
+{
+  xen_remove_from_physmap_t  Parameter;
+
+  //
+  // Either never mapped, or else already cleared.  No further cleanup
+  // action required.
+  //
+  if (!Dev->SharedInfo) return;
+
+  Parameter.domid = DOMID_SELF;
+  Parameter.gpfn  = (UINTN)Dev->SharedInfo >> EFI_PAGE_SHIFT;
+  if (XenHypercallMemoryOp (XENMEM_remove_from_physmap, &Parameter) != 0)
+    return;
+
+  FreePages (Dev->SharedInfo, 1);
+  Dev->SharedInfo = NULL;
+}
+
 /**
   Unloads an image.
 
@@ -501,6 +528,8 @@ XenBusDxeDriverBindingStop (
   XenStoreDeinit (Dev);
   XenGrantTableDeinit (Dev);
 
+  XenClearSharedInfoPage(Dev);
+
   gBS->CloseProtocol (
          ControllerHandle,
          &gEfiDevicePathProtocolGuid,
-- 
2.39.2


--MeI29MV4WBbuw2+2--


From xen-devel-bounces@lists.xenproject.org Thu Oct 05 16:03:40 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 05 Oct 2023 16:03:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613059.953323 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoQp5-0000bU-1m; Thu, 05 Oct 2023 16:03:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613059.953323; Thu, 05 Oct 2023 16: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 1qoQp4-0000bN-VY; Thu, 05 Oct 2023 16:03:34 +0000
Received: by outflank-mailman (input) for mailman id 613059;
 Thu, 05 Oct 2023 16: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=oPqq=FT=kernel.org=kuba@srs-se1.protection.inumbo.net>)
 id 1qoQp3-0000bD-6T
 for xen-devel@lists.xenproject.org; Thu, 05 Oct 2023 16:03:33 +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 ba49d398-6398-11ee-9b0d-b553b5be7939;
 Thu, 05 Oct 2023 18:03:31 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by ams.source.kernel.org (Postfix) with ESMTP id 49D02B82515;
 Thu,  5 Oct 2023 16:03:30 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 702F6C433C8;
 Thu,  5 Oct 2023 16:03: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: ba49d398-6398-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696521809;
	bh=JnZVC2wJ3fKcjdODT+BG4eYptEYlKbfXzSVnEr9a20U=;
	h=Date:From:To:Cc:Subject:In-Reply-To:References:From;
	b=Ts6Rx3A2Il1thlCLn+UTX+hJm4/xqTA68R0jdddsYcl12k/Q9/V7KNV/X36sda5Rr
	 5XZW8uY7QYFY9whY6I9P/HowW89AubeyFHsvdHD80sTITTsBVj0AjHSK10j+HVQs8h
	 2UhuOZBiBvicj6elJs8xT6paaw8jzCDc+buv0y0J/4DVhi90Vn5qq1z7m4uCfjxdze
	 dUyy2ALi+p8E4gyUj2s/9hl+y3A1QlLseHqhEcDqHVljniWlVQIfG73ktygqqVtyWM
	 10jwrPDvqBiGwwgwASTqiSoigS9irq9GZ/hgUkdVTcsghrh+iOYBnsoYDeL5JgC7v1
	 +GIbgWAozi7Vw==
Date: Thu, 5 Oct 2023 09:03:28 -0700
From: Jakub Kicinski <kuba@kernel.org>
To: David Kahurani <k.kahurani@gmail.com>
Cc: Juergen Gross <jgross@suse.com>, xen-devel@lists.xenproject.org,
 netdev@vger.kernel.org, wei.liu@kernel.org, paul@xen.org
Subject: Re: [PATCH] net/xen-netback: Break build if netback slots >
 max_skbs + 1
Message-ID: <20231005090328.73e87e71@kernel.org>
In-Reply-To: <CAAZOf27_Cy8jaJBnjKV7YgyaKO2WohYrxcftV5BdOdm66g_Apw@mail.gmail.com>
References: <20230927082918.197030-1-k.kahurani@gmail.com>
	<20231004114758.44944e5d@kernel.org>
	<CAAZOf27_Cy8jaJBnjKV7YgyaKO2WohYrxcftV5BdOdm66g_Apw@mail.gmail.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit

On Thu, 5 Oct 2023 18:39:51 +0300 David Kahurani wrote:
> > MAX_SKB_FRAGS can now be set via Kconfig, this allows us to create
> > larger super-packets. Can XEN_NETBK_LEGACY_SLOTS_MAX be made relative
> > to MAX_SKB_FRAGS, or does the number have to match between guest and
> > host?  
> 
> Historically, netback driver allows for a maximum of 18 fragments.
> With recent changes, it also relies on the assumption that the
> difference between MAX_SKB_FRAGS and XEN_NETBK_LEGACY_SLOTS_MAX is one
> and MAX_SKB_FRAGS is the lesser value.
> 
> Now, look at Ubuntu kernel for instance( a change has been made and,
> presumably, with good reason so we have reason to assume that the
> change will persist in future releases).
> 
> /* To allow 64K frame to be packed as single skb without frag_list we
>  * require 64K/PAGE_SIZE pages plus 1 additional page to allow for
>  * buffers which do not start on a page boundary.
>  *
>  * Since GRO uses frags we allocate at least 16 regardless of page
>  * size.
>  */
> #if (65536/PAGE_SIZE + 1) < 16
> #define MAX_SKB_FRAGS 16UL
> #else
> #define MAX_SKB_FRAGS (65536/PAGE_SIZE + 1)
> #endif
> 
> So, MAX_SKB_FRAGS can sometimes be 16. This is exactly what we're
> trying to avoid with this patch. I host running with this change is
> vulnerable to attack by the guest(though, this will only happen when
> PAGE_SIZE > 4096).

My bad, you're protecting from the inverse condition than I thought.

But to be clear the code you're quoting (the defines for MAX_SKB_FRAGS)
are what has been there upstream forever until 3948b059 was merged.
Not 100% sure why 3948b059 switched the min from 16 to 17, I think it
was just to keep consistency between builds.

If this change gets backported to 6.1 stable it will break ppc build
of stable, right? Since ppc has 64k pages.


From xen-devel-bounces@lists.xenproject.org Thu Oct 05 16:12:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 05 Oct 2023 16:12:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613065.953334 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoQxz-0002yy-UP; Thu, 05 Oct 2023 16:12:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613065.953334; Thu, 05 Oct 2023 16: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 1qoQxz-0002yr-RA; Thu, 05 Oct 2023 16:12:47 +0000
Received: by outflank-mailman (input) for mailman id 613065;
 Thu, 05 Oct 2023 16:12: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 1qoQxy-0002yh-1L; Thu, 05 Oct 2023 16:12: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 1qoQxx-0001aQ-Mh; Thu, 05 Oct 2023 16:12: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 1qoQxx-0005t7-3X; Thu, 05 Oct 2023 16:12:45 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qoQxx-0004X8-2z; Thu, 05 Oct 2023 16:12: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=DFj7tfQAx0IRZSl0PGh46HH1/hlB6gwomipnBUAbMQU=; b=vDU4lnaDl6vXF7X+90yIh64wn0
	ZOkxobjfetcXm76IQ788wPWP5/mu5/WrCInuGHcojt+6GPCrYBZFPOrufI3Q/QsqHXPs4sOniCdoP
	NkzxMLvrs7tG9PXt48MGr0v570EJ21l2RhfzciGQLfItrlYtuz/28TgdaEXkPwh0Kk7E=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183269-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [libvirt test] 183269: 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:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-i386-libvirt-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-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=70f09acda44a540e1800449f723e4182dff8fd3c
X-Osstest-Versions-That:
    libvirt=f7b7c17dfa85171514cb57e0d310e49017de6532
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 05 Oct 2023 16:12:45 +0000

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

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183260
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183260
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183260
 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-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-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              70f09acda44a540e1800449f723e4182dff8fd3c
baseline version:
 libvirt              f7b7c17dfa85171514cb57e0d310e49017de6532

Last test of basis   183260  2023-10-04 04:20:30 Z    1 days
Testing same since   183269  2023-10-05 04:20:30 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  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
   f7b7c17dfa..70f09acda4  70f09acda44a540e1800449f723e4182dff8fd3c -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Thu Oct 05 16:25:21 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 05 Oct 2023 16:25:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613074.953344 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoR9v-00066L-4s; Thu, 05 Oct 2023 16:25:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613074.953344; Thu, 05 Oct 2023 16:25: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 1qoR9v-00066E-0r; Thu, 05 Oct 2023 16:25:07 +0000
Received: by outflank-mailman (input) for mailman id 613074;
 Thu, 05 Oct 2023 16:25: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=X9r3=FT=gmail.com=k.kahurani@srs-se1.protection.inumbo.net>)
 id 1qoR9t-000668-Q5
 for xen-devel@lists.xenproject.org; Thu, 05 Oct 2023 16:25:05 +0000
Received: from mail-oi1-x22b.google.com (mail-oi1-x22b.google.com
 [2607:f8b0:4864:20::22b])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id bc7b238c-639b-11ee-9b0d-b553b5be7939;
 Thu, 05 Oct 2023 18:25:03 +0200 (CEST)
Received: by mail-oi1-x22b.google.com with SMTP id
 5614622812f47-3ae2f8bf865so727852b6e.2
 for <xen-devel@lists.xenproject.org>; Thu, 05 Oct 2023 09:25: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: bc7b238c-639b-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1696523102; x=1697127902; 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=Fj4Gd1fbatAsLSbuEz2dtHGL2Wq1DMvXOYfE8V925HQ=;
        b=auQnlcLg2XhxXAe9S8U/4promk6OTu2RkoF9e5At+81UNFHZmRmuNRpjK5dvmS0yBY
         7t066g29iyz8zuo/hv4o4LNwHYmsU9TybfWge9GrYfy0PxB3Ntm02XD8+vBMADfqJKff
         hIc5lQA7U3C1qKItSCuHrdw3iAmkqb2VX5RBDwNkilkGtsOtppMR9Zd4XQzjm0/i2sU5
         9k0gZ1WpKnjn+Ysoa2RwoKTOFMHft+hxIhqbuLcMnRyJQhamVAVmzbnu0kQXqLo97y1I
         K+m1ibT11xxFvNCY2Dd94NveRor8Mv+lA2pOoL8nrXxzw0vNdT3rxudjwc0kFd0Vg3Jk
         dWpA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1696523102; x=1697127902;
        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=Fj4Gd1fbatAsLSbuEz2dtHGL2Wq1DMvXOYfE8V925HQ=;
        b=G7la6yHOO314U5KgawTNBIamvMqGNWlJBF4O/HpOiJmWfYntjZHezMtr6qOgL/H3cx
         Mj/G4rSXbaiKnML+UeV/ZwhZd/loq+OJLJgXOQHgp85S1rF5d/KYIefY58W23Yk4zNyQ
         UUQUEz9d3cwwaQn63W2NCsnaQ6GgfVPaz2YGUuHQNA+wAULQcYhD7VkbFTN3DgKffzua
         5UYpiOlN6xTf0+DRkEAgfn/A7xFNgirmQFa0ertBuAVv4S+gpLZ3U2KBYllagHN+Ki9Y
         m+I68TbcHBF8RezIbHLNjfPWbxKqrUj4pnk8fEvotjzFWAWATHR1dR1RMUZC77xgyYoy
         TVDA==
X-Gm-Message-State: AOJu0Ywg+Tl19jZMYU5/AONMNe11k8lceiIYuhCuTak+bBG0SQKCxG3V
	QX/fz21tasMZBffd9W+UV2JdnmwpSztPy/rgbrI=
X-Google-Smtp-Source: AGHT+IHgJsAHmHdUK0ubd/llvOkkkApOjEVY5ii1EKAzSFHN2jfBPCwNCSl+RLIImJ6ELw9mS8LLw5tb9XcVIjzratQ=
X-Received: by 2002:a05:6358:2806:b0:14c:79ec:1b86 with SMTP id
 k6-20020a056358280600b0014c79ec1b86mr7101127rwb.24.1696523102214; Thu, 05 Oct
 2023 09:25:02 -0700 (PDT)
MIME-Version: 1.0
References: <20230927082918.197030-1-k.kahurani@gmail.com> <20231004114758.44944e5d@kernel.org>
 <CAAZOf27_Cy8jaJBnjKV7YgyaKO2WohYrxcftV5BdOdm66g_Apw@mail.gmail.com> <20231005090328.73e87e71@kernel.org>
In-Reply-To: <20231005090328.73e87e71@kernel.org>
From: David Kahurani <k.kahurani@gmail.com>
Date: Thu, 5 Oct 2023 19:24:50 +0300
Message-ID: <CAAZOf25k-c_C3sYz_0zwnc4k5Yf66=LZUSmnwusomZx_CJt1rw@mail.gmail.com>
Subject: Re: [PATCH] net/xen-netback: Break build if netback slots > max_skbs
 + 1
To: Jakub Kicinski <kuba@kernel.org>
Cc: Juergen Gross <jgross@suse.com>, xen-devel@lists.xenproject.org, netdev@vger.kernel.org, 
	wei.liu@kernel.org, paul@xen.org
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Thu, Oct 5, 2023 at 7:03=E2=80=AFPM Jakub Kicinski <kuba@kernel.org> wro=
te:
>
> On Thu, 5 Oct 2023 18:39:51 +0300 David Kahurani wrote:
> > > MAX_SKB_FRAGS can now be set via Kconfig, this allows us to create
> > > larger super-packets. Can XEN_NETBK_LEGACY_SLOTS_MAX be made relative
> > > to MAX_SKB_FRAGS, or does the number have to match between guest and
> > > host?
> >
> > Historically, netback driver allows for a maximum of 18 fragments.
> > With recent changes, it also relies on the assumption that the
> > difference between MAX_SKB_FRAGS and XEN_NETBK_LEGACY_SLOTS_MAX is one
> > and MAX_SKB_FRAGS is the lesser value.
> >
> > Now, look at Ubuntu kernel for instance( a change has been made and,
> > presumably, with good reason so we have reason to assume that the
> > change will persist in future releases).
> >
> > /* To allow 64K frame to be packed as single skb without frag_list we
> >  * require 64K/PAGE_SIZE pages plus 1 additional page to allow for
> >  * buffers which do not start on a page boundary.
> >  *
> >  * Since GRO uses frags we allocate at least 16 regardless of page
> >  * size.
> >  */
> > #if (65536/PAGE_SIZE + 1) < 16
> > #define MAX_SKB_FRAGS 16UL
> > #else
> > #define MAX_SKB_FRAGS (65536/PAGE_SIZE + 1)
> > #endif
> >
> > So, MAX_SKB_FRAGS can sometimes be 16. This is exactly what we're
> > trying to avoid with this patch. I host running with this change is
> > vulnerable to attack by the guest(though, this will only happen when
> > PAGE_SIZE > 4096).
>
> My bad, you're protecting from the inverse condition than I thought.
>
> But to be clear the code you're quoting (the defines for MAX_SKB_FRAGS)
> are what has been there upstream forever until 3948b059 was merged.
> Not 100% sure why 3948b059 switched the min from 16 to 17, I think it
> was just to keep consistency between builds.

Okay, now that might change everything because the patch was made with
the assumption that Ubuntu(and probably others) have code modifying
the default values for MAX_SKB_FRAGS. If this was upstream, then,
maybe when the time comes they will grab 3948b059. I consider this
solved at this point :-)

>
> If this change gets backported to 6.1 stable it will break ppc build
> of stable, right? Since ppc has 64k pages.


From xen-devel-bounces@lists.xenproject.org Thu Oct 05 16:55:11 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 05 Oct 2023 16:55:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613081.953353 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoRcq-0004YJ-GI; Thu, 05 Oct 2023 16:55:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613081.953353; Thu, 05 Oct 2023 16:55: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 1qoRcq-0004YC-DX; Thu, 05 Oct 2023 16:55:00 +0000
Received: by outflank-mailman (input) for mailman id 613081;
 Thu, 05 Oct 2023 16:54:59 +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 1qoRcp-0004Y6-CA
 for xen-devel@lists.xenproject.org; Thu, 05 Oct 2023 16:54:59 +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 1qoRco-0002Wy-Mz; Thu, 05 Oct 2023 16:54:58 +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 1qoRco-0001ff-CN; Thu, 05 Oct 2023 16:54: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=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:MIME-Version:Message-Id:Date:
	Subject:Cc:To:From; bh=SGDQ2I3YKAXIUA5KSevc6aCD2k4hu7R6So1fBYM0y+Y=; b=vTN4gb
	lKu1dbFX+SUYmsLbcIkP5EdIZlPNUkZAPA7LYSW+ukK8p/OgbJdJaFZeGP0f7ITJ9UiQ2FjrcozeF
	eqOtPrfMMvWvfZAoB4WSFCWGnHhI0S4cvAhbnRg4regAnS9WZ0Nn+rf9PwDg4frh5eHpQ7MkosnOH
	Wps3YjwO3YA=;
From: Julien Grall <julien@xen.org>
To: xen-devel@lists.xenproject.org
Cc: Henry.Wang@arm.com,
	dan.driscoll@siemens.com,
	arvind.raghuraman@siemens.com,
	michal.orzel@amd.com,
	Julien Grall <jgrall@amazon.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: vtimer: Don't read/use the secure physical timer interrupt for ACPI
Date: Thu,  5 Oct 2023 17:54:54 +0100
Message-Id: <20231005165454.18143-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>

Per ACPI 6.5 section 5.2.25 ("Generic Timer Description Table (GTDT)"),
the fields "Secure EL1 Timer GSIV/Flags" are optional and an OS running
in non-secure world is meant to ignore the values.

However, Xen is trying to reserve the value. When booting on Graviton
2 metal instances, this would result to crash a boot because the
value is 0 which is already reserved (I haven't checked for which device).
While nothing prevent a PPI to be shared, the field should have been
ignored by Xen.

For the Device-Tree case, I couldn't find a statement suggesting
that the secure physical timer interrupt  is ignored. In fact, I have
found some code in Linux using it as a fallback. That said, it should
never be used.

As I am not aware of any issue when booting using Device-Tree, the
physical timer interrupt is only ignored for ACPI.

Signed-off-by: Julien Grall <jgrall@amazon.com>

----

This has not been tested on Graviton 2 because I can't seem to get
the serial console working properly. @Dan would you be able to try it?

It would also be good to understand why 0 why already reserved. This
may be a sign for other issues in the ACPI code.
---
 xen/arch/arm/time.c   |  4 ----
 xen/arch/arm/vtimer.c | 17 +++++++++++++++--
 2 files changed, 15 insertions(+), 6 deletions(-)

diff --git a/xen/arch/arm/time.c b/xen/arch/arm/time.c
index 3535bd8ac7c7..8fc14cd3ff62 100644
--- a/xen/arch/arm/time.c
+++ b/xen/arch/arm/time.c
@@ -78,10 +78,6 @@ static int __init arch_timer_acpi_init(struct acpi_table_header *header)
     irq_set_type(gtdt->non_secure_el1_interrupt, irq_type);
     timer_irq[TIMER_PHYS_NONSECURE_PPI] = gtdt->non_secure_el1_interrupt;
 
-    irq_type = acpi_get_timer_irq_type(gtdt->secure_el1_flags);
-    irq_set_type(gtdt->secure_el1_interrupt, irq_type);
-    timer_irq[TIMER_PHYS_SECURE_PPI] = gtdt->secure_el1_interrupt;
-
     irq_type = acpi_get_timer_irq_type(gtdt->virtual_timer_flags);
     irq_set_type(gtdt->virtual_timer_interrupt, irq_type);
     timer_irq[TIMER_VIRT_PPI] = gtdt->virtual_timer_interrupt;
diff --git a/xen/arch/arm/vtimer.c b/xen/arch/arm/vtimer.c
index c54360e20266..e73ae33c1b58 100644
--- a/xen/arch/arm/vtimer.c
+++ b/xen/arch/arm/vtimer.c
@@ -8,6 +8,7 @@
  * Copyright (c) 2011 Citrix Systems.
  */
 
+#include <xen/acpi.h>
 #include <xen/lib.h>
 #include <xen/perfc.h>
 #include <xen/sched.h>
@@ -61,10 +62,22 @@ int domain_vtimer_init(struct domain *d, struct xen_arch_domainconfig *config)
 
     config->clock_frequency = timer_dt_clock_frequency;
 
-    /* At this stage vgic_reserve_virq can't fail */
+    /*
+     * Per the ACPI specification, providing a secure EL1 timer
+     * interrupt is optional and will be ignored by non-secure OS.
+     * Therefore don't reserve the interrupt number for the HW domain
+     * and ACPI.
+     *
+     * Note that we should still reserve it when using the Device-Tree
+     * because the interrupt is not optional. That said, we are not
+     * expecting any OS to use it when running on top of Xen.
+     *
+     * At this stage vgic_reserve_virq() is not meant to fail.
+    */
     if ( is_hardware_domain(d) )
     {
-        if ( !vgic_reserve_virq(d, timer_get_irq(TIMER_PHYS_SECURE_PPI)) )
+        if ( acpi_disabled &&
+             !vgic_reserve_virq(d, timer_get_irq(TIMER_PHYS_SECURE_PPI)) )
             BUG();
 
         if ( !vgic_reserve_virq(d, timer_get_irq(TIMER_PHYS_NONSECURE_PPI)) )
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Thu Oct 05 16:56:05 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 05 Oct 2023 16:56:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613085.953363 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoRds-000543-Ow; Thu, 05 Oct 2023 16:56:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613085.953363; Thu, 05 Oct 2023 16: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 1qoRds-00053w-MQ; Thu, 05 Oct 2023 16:56:04 +0000
Received: by outflank-mailman (input) for mailman id 613085;
 Thu, 05 Oct 2023 16:56:03 +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 1qoRdr-00053q-UU
 for xen-devel@lists.xenproject.org; Thu, 05 Oct 2023 16:56:03 +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 1qoRdr-0002YR-NV; Thu, 05 Oct 2023 16:56:03 +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 1qoRdr-000304-Hs; Thu, 05 Oct 2023 16:56: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:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=48R8EGAEBg78nAR7TOfRWGnpSnHIZ4BMLeLlSKazeqo=; b=hV6d71tk/kANTJLuThEni/Vrjw
	9q0AcIVudi8bv1uwT1Vw6K53r62ctTVfRe2yqCOh1n0JqkuLUXZwO0BXIfjEF+G2K2LEYQivDG95h
	hhncLMiV2T7ckjBqOceDLq8yVUb1y6psStbrrlCxSvSgFP7lU+4QmCX7UvtED4ki9SHY=;
Message-ID: <721bdc52-92b2-4912-bde1-9fd317523294@xen.org>
Date: Thu, 5 Oct 2023 17:56:01 +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: Stefano Stabellini <sstabellini@kernel.org>
Cc: "Driscoll, Dan" <dan.driscoll@siemens.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.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>
 <ed3ea203-4244-4bbe-a9e0-ac8882ecc83c@xen.org>
 <DM6PR07MB4316E030CEF6D6E27ACD58819AC0A@DM6PR07MB4316.namprd07.prod.outlook.com>
 <alpine.DEB.2.22.394.2309291321570.2348112@ubuntu-linux-20-04-desktop>
 <c3cf8e91-cf68-410d-8640-09fce6d20e9b@xen.org>
 <alpine.DEB.2.22.394.2310021554520.2348112@ubuntu-linux-20-04-desktop>
From: Julien Grall <julien@xen.org>
In-Reply-To: <alpine.DEB.2.22.394.2310021554520.2348112@ubuntu-linux-20-04-desktop>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit



On 03/10/2023 00:03, Stefano Stabellini wrote:
> On Mon, 2 Oct 2023, Julien Grall wrote:
>> On 29/09/2023 21:29, Stefano Stabellini wrote:
>> Now regarding whether the PPI is used. AFAICT, the secure timer PPI is still
>> present in the firmware tables (ACPI and DT) passed to dom0. So strictly
>> speaking we want to ensure the PPI value is reserved.
>>
>> That said, the ACPI spec suggests that the value will be ignored by the guest.
>> The Device-Tree binding doesn't have such statement, but I suspect this may be
>> the same. So it should be ok to skip reserving the PPI and therefore allow the
>> event channel interrupt to use if it is not reserved by someone else.
> 
> You looked into this more deeply then I did. Your suggestion makes sense
> to me.

I have sent a patch [1]. This is not quite the same as I discussed 
before. See the commit message for more details.

Cheers,

[1] https://lore.kernel.org/20231005165454.18143-1-julien@xen.org

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Thu Oct 05 18:17:24 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 05 Oct 2023 18:17:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613093.953379 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoSuQ-0004mo-3c; Thu, 05 Oct 2023 18:17:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613093.953379; Thu, 05 Oct 2023 18:17: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 1qoSuP-0004mJ-VW; Thu, 05 Oct 2023 18:17:13 +0000
Received: by outflank-mailman (input) for mailman id 613093;
 Thu, 05 Oct 2023 18: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=JwJB=FT=amd.com=vikram.garhwal@srs-se1.protection.inumbo.net>)
 id 1qoSuO-0004jk-4r
 for xen-devel@lists.xenproject.org; Thu, 05 Oct 2023 18:17:12 +0000
Received: from NAM11-DM6-obe.outbound.protection.outlook.com
 (mail-dm6nam11on20609.outbound.protection.outlook.com
 [2a01:111:f400:7eaa::609])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 640787e4-63ab-11ee-98d3-6d05b1d4d9a1;
 Thu, 05 Oct 2023 20:17:09 +0200 (CEST)
Received: from BL1PR13CA0269.namprd13.prod.outlook.com (2603:10b6:208:2ba::34)
 by CH0PR12MB5266.namprd12.prod.outlook.com (2603:10b6:610:d1::10)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.37; Thu, 5 Oct
 2023 18:17:01 +0000
Received: from BL6PEPF0001AB4A.namprd04.prod.outlook.com
 (2603:10b6:208:2ba:cafe::ea) by BL1PR13CA0269.outlook.office365.com
 (2603:10b6:208:2ba::34) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.25 via Frontend
 Transport; Thu, 5 Oct 2023 18:17:01 +0000
Received: from SATLEXMB03.amd.com (165.204.84.17) by
 BL6PEPF0001AB4A.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.6838.14 via Frontend Transport; Thu, 5 Oct 2023 18:17:01 +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, 5 Oct
 2023 13:17: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; Thu, 5 Oct
 2023 11:16:55 -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, 5 Oct 2023 13:16: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: 640787e4-63ab-11ee-98d3-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=gDKRGH+EJZY7bPcyD2/FmFYx5xVAT0MbSNddyIvGQIniGlN40ohAvEup8QaDjivvJp508mqlw8e4UD108M1iNQ4Zh2B1HKnrYA+omZDFG5JaPWbWogLUP2Juudc0lTPr3WEZsV2rYF8R58833VMu2pmd2WhUnOdGaBHrRoIpSUynHhEziEEacP3XaT0x4bX9NJvbkSGhwF6MhwVouhtW3+mMGLiO3zbqRQKhYvQCol4ccdlMR1G2WaEoVg2vf4tVD8Ei4qkpsw+hJvWl8dZ+nRkGbU6n6uM3RpDhyiK9xUYongblDUE6c6acyxOF827IE8VWchYV6qy4mrk+UaWdAg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=EqJO5eINxVHCO0CwH0LZUqYjnBPafl1pauyRsQ+lAX4=;
 b=JcMDSmld7eKl/ofCPEqiXrY661cj9ArZbAI5fXJEpAmdBsN88kh7cFb5I4ui6PvM9c8YrL0mCyWopu5XR6u2S4ffu6LWHMYeG8W4lsccBepUeZeDb12mLV/2AKXq7ZhmxUKxApn5/yRCogI7xiCXLEzOtUdwMj8u5sLSaw6C8NGQHGl+BJRPrpiXE0aIcE67pGYX0hki4JObKQPPsvCaNvYwnt5S4Q1l5j7TFu78vJwXzSNpzFx8q2n75pct+LfJHrwoyn1kCmn+Hy6GL8m2/yNhfQ+9TqPl/4cv6/5i3FC3NOzpcIgfzaFl+AVkdIFJAn989TYXBxxETfrmAFC9Xw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=nongnu.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=EqJO5eINxVHCO0CwH0LZUqYjnBPafl1pauyRsQ+lAX4=;
 b=IAPWFLXHwOEMGxt9LDogPf5ldiqg9dPrJtwPhEJzfsjUF7Kdg458mki/bsa9y+UK7uiXKg3/t5gaYM8+xJTJCGPlvGo6kSMjMR3ZfnCFkrqucu6fHT12qGJ1MZg+q8gjZITgJlPNLOQHeH6sNOQdtGSiBCwOAMZhxOPCLDRUzGg=
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: <qemu-devel@nongnu.org>
CC: <sstabellini@kernel.org>, Juergen Gross <jgross@suse.com>, Vikram Garhwal
	<vikram.garhwal@amd.com>, Anthony Perard <anthony.perard@citrix.com>, "Paul
 Durrant" <paul@xen.org>, "Michael S. Tsirkin" <mst@redhat.com>, "Marcel
 Apfelbaum" <marcel.apfelbaum@gmail.com>, Paolo Bonzini <pbonzini@redhat.com>,
	Richard Henderson <richard.henderson@linaro.org>, Eduardo Habkost
	<eduardo@habkost.net>, "open list:X86 Xen CPUs"
	<xen-devel@lists.xenproject.org>
Subject: [QEMU][PATCH v1 1/7] xen: when unplugging emulated devices skip virtio devices
Date: Thu, 5 Oct 2023 11:16:23 -0700
Message-ID: <20231005181629.4046-2-vikram.garhwal@amd.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20231005181629.4046-1-vikram.garhwal@amd.com>
References: <20231005181629.4046-1-vikram.garhwal@amd.com>
MIME-Version: 1.0
Content-Type: text/plain
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: BL6PEPF0001AB4A:EE_|CH0PR12MB5266:EE_
X-MS-Office365-Filtering-Correlation-Id: e88332cb-0256-4a72-3e1e-08dbc5cf4553
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	E8bG/LV3yaSki3lq4iQpfPITD+pa4vdTBeWPzRR49oxoU3yBj1JGmeq2kyfuf+0/YX7gNkQeiuvsxr2E+08oV1b8C4cImrXnwb3kQ6JvRZEAkfpephEVN78NDwd9pis7EeUGf2vaC83XOwJn3oa+shHdorfWxPom9vm+IW/5sJYNkvBq5TgtlxFCd7gOIjyoxdVORNHGZwCgASudhNIqDCbedcXxohB1CtkT1O+E/uUBr1QhUkXlTkeneogxs9n15gBn0p91+QCIKDEpEhhbj4lPhEtRTumxJcXdYyJuRGgRmPwT9CQsN9jeVYNN0oRGO8DLs8NhltS7R6Ui7gt6DDwEMCvkHwI1RvBFwUo6gtUJx0U2/w1YjxRzvezTHo64WU7FF3H3Ilquwcc6biofUxXrySiRijSZDFRUU3oy/HZfJtyzOLaYJ5XDEmnah3A41PjRyE1vcFv2TLw//FBhVXkJ+payJdZGo/83Q3yjN2Yn9q28F8z+164btl5MBE2npgiVdfPgRplhx4i7C1aUqUYgooBWQcIbzL8kntv8Z0UgsZvKeyS+ZTRsEkB/vcSYos+HBked4WVIjk/rvRHfVBpNsWh4TCy7t3/u7UzudOHNnEM/rFYv+pspjnlqeeWuCV28mZQFI48uPotixXUPIklzMj0GJaO3c7uUkQymZlaNdZEyUr0DDuVEaqiIBQxn/5Hp6oCJKxkqvgodfunrOVIQsqaEzw9eNsn8atNX4LMJ1QXWw3UTDUWnCvhwDqMESCUsMA2Kspe7ID1A5tG/nQ==
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)(346002)(396003)(230922051799003)(82310400011)(1800799009)(451199024)(64100799003)(186009)(40470700004)(36840700001)(46966006)(7416002)(44832011)(5660300002)(8676002)(2906002)(4326008)(8936002)(41300700001)(70206006)(70586007)(316002)(6916009)(40460700003)(54906003)(36860700001)(40480700001)(26005)(336012)(426003)(36756003)(6666004)(1076003)(2616005)(86362001)(356005)(81166007)(82740400003)(83380400001)(47076005)(478600001)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Oct 2023 18:17:01.4573
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: e88332cb-0256-4a72-3e1e-08dbc5cf4553
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:
	BL6PEPF0001AB4A.namprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH0PR12MB5266

From: Juergen Gross <jgross@suse.com>

Virtio devices should never be unplugged at boot time, as they are
similar to pci passthrough devices.

Signed-off-by: Juergen Gross <jgross@suse.com>
Signed-off-by: Vikram Garhwal <vikram.garhwal@amd.com>
---
 hw/i386/xen/xen_platform.c | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/hw/i386/xen/xen_platform.c b/hw/i386/xen/xen_platform.c
index 17457ff3de..3560eaf8c8 100644
--- a/hw/i386/xen/xen_platform.c
+++ b/hw/i386/xen/xen_platform.c
@@ -28,6 +28,7 @@
 #include "hw/ide/pci.h"
 #include "hw/pci/pci.h"
 #include "migration/vmstate.h"
+#include "hw/virtio/virtio-bus.h"
 #include "net/net.h"
 #include "trace.h"
 #include "sysemu/xen.h"
@@ -132,7 +133,8 @@ static void unplug_nic(PCIBus *b, PCIDevice *d, void *o)
     /* We have to ignore passthrough devices */
     if (pci_get_word(d->config + PCI_CLASS_DEVICE) ==
             PCI_CLASS_NETWORK_ETHERNET
-            && !pci_device_is_passthrough(d)) {
+            && !pci_device_is_passthrough(d)
+            && !qdev_get_child_bus(&d->qdev, TYPE_VIRTIO_BUS)) {
         object_unparent(OBJECT(d));
     }
 }
@@ -208,6 +210,10 @@ static void unplug_disks(PCIBus *b, PCIDevice *d, void *opaque)
     /* We have to ignore passthrough devices */
     if (pci_device_is_passthrough(d))
         return;
+    /* Ignore virtio devices */
+    if (qdev_get_child_bus(&d->qdev, TYPE_VIRTIO_BUS)) {
+        return;
+    }
 
     switch (pci_get_word(d->config + PCI_CLASS_DEVICE)) {
     case PCI_CLASS_STORAGE_IDE:
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Thu Oct 05 18:17:24 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 05 Oct 2023 18:17:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613094.953394 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoSuW-0005Fc-EJ; Thu, 05 Oct 2023 18:17:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613094.953394; Thu, 05 Oct 2023 18: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 1qoSuW-0005FT-B1; Thu, 05 Oct 2023 18:17:20 +0000
Received: by outflank-mailman (input) for mailman id 613094;
 Thu, 05 Oct 2023 18: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=JwJB=FT=amd.com=vikram.garhwal@srs-se1.protection.inumbo.net>)
 id 1qoSuV-0004jk-73
 for xen-devel@lists.xenproject.org; Thu, 05 Oct 2023 18:17:19 +0000
Received: from NAM02-DM3-obe.outbound.protection.outlook.com
 (mail-dm3nam02on20605.outbound.protection.outlook.com
 [2a01:111:f400:7e83::605])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 6a908a56-63ab-11ee-98d3-6d05b1d4d9a1;
 Thu, 05 Oct 2023 20:17:18 +0200 (CEST)
Received: from DM6PR11CA0011.namprd11.prod.outlook.com (2603:10b6:5:190::24)
 by SA1PR12MB8093.namprd12.prod.outlook.com (2603:10b6:806:335::15) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.25; Thu, 5 Oct
 2023 18:17:15 +0000
Received: from DS1PEPF00017094.namprd03.prod.outlook.com
 (2603:10b6:5:190:cafe::78) by DM6PR11CA0011.outlook.office365.com
 (2603:10b6:5:190::24) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.29 via Frontend
 Transport; Thu, 5 Oct 2023 18:17:14 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 DS1PEPF00017094.mail.protection.outlook.com (10.167.17.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; Thu, 5 Oct 2023 18:17:14 +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, 5 Oct
 2023 13:17:11 -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, 5 Oct
 2023 11:17:10 -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, 5 Oct 2023 13:17: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: 6a908a56-63ab-11ee-98d3-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Hk5Q7zmxTeEefs94fBqp329rML9W7uIYqJEj/eeZqX5cDHiTusGDJRWSlC516STkj2loNtZQ2g2l8Gk4/nkgU3GwJPcCFP7CNAQ+PVCzQizr/d0ZyAHGpVxC+WqI5VSrlKgjoauMoC5nHeS2KFVmKxoXsXC84D9/kh5KtYZah1ews4lGH8Mj4VCyPkVcrMMewd6X+u7VuGHHphsOtWLNUYUF3Gd+qVzYLi/QxooYiVq+V7yY8Qz2o+EQKcZr4z+V7BBmxaivdJr1CnGz0C5VSnYxNk3f0AK6yUNb9MUcp4R8PWbBSjzehd475xWeYMF1kSIQNnFGw+VLc+Vvzymkbg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=YyNjWn5SJhWUmcBag3JIZwDCIV00tRHA7KorZZW17+o=;
 b=m2V/cBQNQ7FpxkFhEFp2isEeAiOVdPXhntHDoIIoTsQ/6fHabY+1bdIpRJy54hiblBVyO+oYTjFKMModd87g48QjneGK36GTQeQM6h26raIkapTqZOOeYdVLTNfBhwcHYm2vdaaDfyUh2g+5FVP0iIncbs7cecN1r/26lJNpklcqb6ma6rLOGhY4t1EaV67TQEyY0swSKi83w1+suomgtBt3C/mCrZewq7p9QfKwJZtyygdE09qaffRAvQhYT/yFgXbZwheIh7LoWhC24uIwS5hJw3Ra9UWIwfNldAlbpob54puF2BdKfZ8+3Ov+1/501e5XpwSzZeW7bvYT2VrYmA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=nongnu.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=YyNjWn5SJhWUmcBag3JIZwDCIV00tRHA7KorZZW17+o=;
 b=JBGUpzbv9KHDclsOgX3quNrt3U5EfRi+XeqDQM2hQuI7kG8K5b8PQmHWn9fnWQFnMbM23kwk0aEe7of0UclafYpgNO9Kg6cAozTqU+Hb90tQxoRUJXHF1tPEgMXM942JQcXjc1W5fefngI5axGbtVu0FRIxtkiMvwFDk6QA95+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
From: Vikram Garhwal <vikram.garhwal@amd.com>
To: <qemu-devel@nongnu.org>
CC: <sstabellini@kernel.org>, Juergen Gross <jgross@suse.com>, Anthony Perard
	<anthony.perard@citrix.com>, Paul Durrant <paul@xen.org>, "open list:X86 Xen
 CPUs" <xen-devel@lists.xenproject.org>
Subject: [QEMU][PATCH v1 4/7] xen: let xen_ram_addr_from_mapcache() return -1 in case of not found entry
Date: Thu, 5 Oct 2023 11:16:26 -0700
Message-ID: <20231005181629.4046-5-vikram.garhwal@amd.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20231005181629.4046-1-vikram.garhwal@amd.com>
References: <20231005181629.4046-1-vikram.garhwal@amd.com>
MIME-Version: 1.0
Content-Type: text/plain
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DS1PEPF00017094:EE_|SA1PR12MB8093:EE_
X-MS-Office365-Filtering-Correlation-Id: 233960d8-50bd-40e5-2cc2-08dbc5cf4d38
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	uvJ/sQMkijaa6U7JaszCb8+h8nbmycnuRFytx4gc5JQ/xGPolzr+eWtZTPIS4nlcFi1awuH9BoTwfrrtGvbciSk35BjnwWTDeA2PqPJ+qvwTZujdM1Rsdis4immIE73QCiQCQRXTJ87vsRhwd5VW8fH9gXzDKr6SpF5EJy5tGKKligujhWfncxxfgduFc5vPKWAsTP2K/f1BUqr434S7gfHcHPIjS9R+Tw021uLF8Iy1zfD9rhDLLBeCTD9nrn80hS5bFF++D8W+s+Sui89vP1CfJ7W/hbjCYiXSU4CE2Kgp8LXOXuZqzKcGE1cGc94cY7OdO95nw5KpnOM2KYIeE7z0b9ISY8tH39xCoNKmaQ+nW1CDIuBVm9r15GP302txoyFpXBqL87IwLCZ5Qyor4AwVRyfnimgLHwcK+lTKsMatzvKylkp0AygK9JZxgLxAKyrfbPyY4uXI/hYJE/hl8/CaMrdAVBXRbex299C9TpIaBl40ARVlGZmRUgLadQquCtbYt1xri+BfeG5GXcka3hruUatZcV09pRlo+ZfO3dbrhuhHgDMF1plxrGzrEs+6v5KBatwFGcK3mOjg8bgiDr8ui/Nz2qwLiI3pwwPG7zOYzy0aEzwCS8WeDFxHU4vYoDYzaKypqjV6opjMXk5QmitA/4OAOauTblSNxafivNffF88NSgrMX9iQ1spnrEUqkCy03yxyTPWL1vLTsSWwH5apQFgX1kjXsJlJjK6YMiyM667EXg7ZNTC1j1PkyPMRq24LYGKc3GBDhMZeRQaWGA==
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)(230922051799003)(82310400011)(64100799003)(451199024)(1800799009)(186009)(36840700001)(46966006)(40470700004)(1076003)(47076005)(478600001)(83380400001)(6666004)(40460700003)(36860700001)(26005)(426003)(336012)(40480700001)(356005)(81166007)(82740400003)(5660300002)(2906002)(86362001)(4326008)(41300700001)(2616005)(8936002)(36756003)(316002)(54906003)(70206006)(6916009)(70586007)(44832011)(8676002)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Oct 2023 18:17:14.6705
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 233960d8-50bd-40e5-2cc2-08dbc5cf4d38
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:
	DS1PEPF00017094.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA1PR12MB8093

From: Juergen Gross <jgross@suse.com>

Today xen_ram_addr_from_mapcache() will either abort() or return 0 in
case it can't find a matching entry for a pointer value. Both cases
are bad, so change that to return an invalid address instead.

Signed-off-by: Juergen Gross <jgross@suse.com>
---
 hw/xen/xen-mapcache.c | 12 +++---------
 1 file changed, 3 insertions(+), 9 deletions(-)

diff --git a/hw/xen/xen-mapcache.c b/hw/xen/xen-mapcache.c
index 8115c44c00..8a61c7dde6 100644
--- a/hw/xen/xen-mapcache.c
+++ b/hw/xen/xen-mapcache.c
@@ -404,13 +404,8 @@ ram_addr_t xen_ram_addr_from_mapcache(void *ptr)
         }
     }
     if (!found) {
-        fprintf(stderr, "%s, could not find %p\n", __func__, ptr);
-        QTAILQ_FOREACH(reventry, &mapcache->locked_entries, next) {
-            DPRINTF("   "HWADDR_FMT_plx" -> %p is present\n", reventry->paddr_index,
-                    reventry->vaddr_req);
-        }
-        abort();
-        return 0;
+        mapcache_unlock();
+        return RAM_ADDR_INVALID;
     }
 
     entry = &mapcache->entry[paddr_index % mapcache->nr_buckets];
@@ -418,8 +413,7 @@ ram_addr_t xen_ram_addr_from_mapcache(void *ptr)
         entry = entry->next;
     }
     if (!entry) {
-        DPRINTF("Trying to find address %p that is not in the mapcache!\n", ptr);
-        raddr = 0;
+        raddr = RAM_ADDR_INVALID;
     } else {
         raddr = (reventry->paddr_index << MCACHE_BUCKET_SHIFT) +
              ((unsigned long) ptr - (unsigned long) entry->vaddr_base);
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Thu Oct 05 18:17:24 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 05 Oct 2023 18:17:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613092.953374 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoSuP-0004k2-Rx; Thu, 05 Oct 2023 18:17:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613092.953374; Thu, 05 Oct 2023 18: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 1qoSuP-0004jv-O4; Thu, 05 Oct 2023 18:17:13 +0000
Received: by outflank-mailman (input) for mailman id 613092;
 Thu, 05 Oct 2023 18:17: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=JwJB=FT=amd.com=vikram.garhwal@srs-se1.protection.inumbo.net>)
 id 1qoSuN-0004jk-KY
 for xen-devel@lists.xenproject.org; Thu, 05 Oct 2023 18:17:11 +0000
Received: from NAM10-BN7-obe.outbound.protection.outlook.com
 (mail-bn7nam10on20602.outbound.protection.outlook.com
 [2a01:111:f400:7e8a::602])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 65402e04-63ab-11ee-98d3-6d05b1d4d9a1;
 Thu, 05 Oct 2023 20:17:09 +0200 (CEST)
Received: from MN2PR06CA0022.namprd06.prod.outlook.com (2603:10b6:208:23d::27)
 by DM6PR12MB4123.namprd12.prod.outlook.com (2603:10b6:5:21f::23) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.29; Thu, 5 Oct
 2023 18:17:05 +0000
Received: from BL6PEPF0001AB4F.namprd04.prod.outlook.com
 (2603:10b6:208:23d:cafe::4b) by MN2PR06CA0022.outlook.office365.com
 (2603:10b6:208:23d::27) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.33 via Frontend
 Transport; Thu, 5 Oct 2023 18:17:05 +0000
Received: from SATLEXMB03.amd.com (165.204.84.17) by
 BL6PEPF0001AB4F.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.6838.14 via Frontend Transport; Thu, 5 Oct 2023 18:17:05 +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, 5 Oct
 2023 13:17:04 -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, 5 Oct
 2023 13:17:04 -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; Thu, 5 Oct 2023 13:17: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: 65402e04-63ab-11ee-98d3-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=EuUlFVxVhzxoLqFVFIqGK4wCc1UuWG4jN/R684+bClcCwhqLpq//KeJx5JROGKAHDSckIDxZZh0hEIK+mgT5yvKnDqc5Woa8omX7Y/gX7F+ICrBvshJ52Xh/oJAHGnaKkx8wJo2eaF979dQjtMxr1diSjGu27GoKPWgJaWKWdzHsER+vBX0k4ypbRkw7qAn8/K/QBHp1Kbb1MJAUjwIJOXd5JK+k9bpEsr840oixLaMBPpdX5vB7IVwZ4KY3IXT3e0ZmY6w4y54IZXM34dc7uc14tE0IrEWaKVcJJwyh1nVM8ku1Yr4IkYMuYaObWdABAkr7KwWhCGguKoO0Okm/Mw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=8oqi3a0IooPX4pzHpvJYv6+eY6o0O3Q2hpb0iqszOV0=;
 b=GC5YTPrq0ciUDJlcHBERhJBt8roP4NpmNOqdBWWQb1TZhVZZy90xrh2v4su8Wr3YCiaU8Yfz4umx93AvC3VAJ2c0E3vypDGwLKJQ/eBT6r2qGOtcK3RROwKXDqpf5r7vAAIoyLNpDP3N4clC5D43qxSBTJuQhr6aBER2JHQPWX+RfL20UU44vp9CSHeyX9VmQnD0/LPh7Vc5zF2WrrWTzcnRNayurVd2pCrvjEAT5Rt8jn5eXTRGAFCTpWpvFTte9ZNFCZ5FFgy5ucNR7LhkvJF3I5PsptbmEQro2IT/dvCz08wImOun9rzr0Y5NzMmuzuA6PO05x8RALzgoppkwdA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=nongnu.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=8oqi3a0IooPX4pzHpvJYv6+eY6o0O3Q2hpb0iqszOV0=;
 b=fva/QJ+j5EN0FncYL29OFhxoCQw/At32xz9UzVQP+zd7BXrIUSfYLYAiQoMwfZWaAOvHvKG+qULVUj+1hW1yxDH3PdMthJgp6C24cdWXY2rmD8i+RZ9/zs5jX2uwPqei0z7xn2uS96Yddo0Cjn0V0TeUUis9KPYAnyV7QoltpgY=
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: <qemu-devel@nongnu.org>
CC: <sstabellini@kernel.org>, Juergen Gross <jgross@suse.com>, Vikram Garhwal
	<vikram.garhwal@amd.com>, Anthony Perard <anthony.perard@citrix.com>, "Paul
 Durrant" <paul@xen.org>, "Michael S. Tsirkin" <mst@redhat.com>, "Marcel
 Apfelbaum" <marcel.apfelbaum@gmail.com>, Paolo Bonzini <pbonzini@redhat.com>,
	Richard Henderson <richard.henderson@linaro.org>, Eduardo Habkost
	<eduardo@habkost.net>, Peter Xu <peterx@redhat.com>, David Hildenbrand
	<david@redhat.com>, =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?=
	<philmd@linaro.org>, "open list:X86 Xen CPUs"
	<xen-devel@lists.xenproject.org>
Subject: [QEMU][PATCH v1 2/7] xen: add pseudo RAM region for grant mappings
Date: Thu, 5 Oct 2023 11:16:24 -0700
Message-ID: <20231005181629.4046-3-vikram.garhwal@amd.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20231005181629.4046-1-vikram.garhwal@amd.com>
References: <20231005181629.4046-1-vikram.garhwal@amd.com>
MIME-Version: 1.0
Content-Type: text/plain
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: BL6PEPF0001AB4F:EE_|DM6PR12MB4123:EE_
X-MS-Office365-Filtering-Correlation-Id: c13242fa-ee1e-4ee0-3643-08dbc5cf478b
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	3wZ2BXBgho+mMEzE0AGW5OrYHztNM8hM4p2d99E/QdEShzgFo8OLnQR9SjPSH7pXbqUDgHYYP2CwfEsg/WtC31VvRmTQa2yTYKJcdsGOKHzRe23TYCYsNAA9IM/sHfpLGslJYSioGQ6qENtAndKkuRbLCcFLoE6IlSsaF15D2y2zTc2edFxulH185qck7wmPqCKbfWWcjPEfgYLkNhgU2OM4uc1q71rCWW8OzmkFs3K2JkZ09nocW73Qk8JyVSrLHTgpP7GPjenp8c2gKYFQwH0XIfJpueXtYfoAjB1bvyPvLozQ253O6DGTqY7v6Ii+3ntsthh3XE+Pfermo1KSwInpyDU1FVr6BXBlQAgzU/hHkN5uOS32+2oU8tfkJzrSVtW/DueHOMeNMmHqh3rPDlDoqmuzfB1NBBWmCWU7+Jq06wgxaNav1fbSl8YY6D6S65aJIXJ2ciMe/ULIb2+4EnxOcif9TldEdmTwYdz8/pDQuzvvRAXc1O8JD7dJLZNQu46by1YzZtjy8E6aD47vPnI+rtBI66LFwssbKgsbuQwLBIdL37mCOKn1ZZ9Wv49PKyPLtatEvHqrNbvvnj7l2LrLi6w+Aoaiv9JkKusdDdmMpaoPcepeXA1EZiNEY2ITBoG6t3KdUOvKRHraboTw6IW4nRabnUXJdKIknoU3H1QY3qdaUtwlthsXBGbvsi0Ywg9fdMpgFaKlezs3QOngsROQshOdJtPqKrcFnujTNh7A+rCEAzxeyNU2b8HHq0Q+CvIowbgtlCDXVvn+XsomGQ==
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)(230922051799003)(451199024)(82310400011)(64100799003)(1800799009)(186009)(40470700004)(46966006)(36840700001)(40460700003)(40480700001)(83380400001)(336012)(426003)(4326008)(81166007)(44832011)(356005)(82740400003)(5660300002)(86362001)(36756003)(7416002)(36860700001)(6916009)(316002)(54906003)(478600001)(70206006)(70586007)(8676002)(8936002)(47076005)(2906002)(2616005)(26005)(6666004)(41300700001)(1076003)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Oct 2023 18:17:05.1796
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: c13242fa-ee1e-4ee0-3643-08dbc5cf478b
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:
	BL6PEPF0001AB4F.namprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR12MB4123

From: Juergen Gross <jgross@suse.com>

Add a memory region which can be used to automatically map granted
memory. It is starting at 0x8000000000000000ULL in order to be able to
distinguish it from normal RAM.

For this reason the xen.ram memory region is expanded, which has no
further impact as it is used just as a container of the real RAM
regions and now the grant region.

Signed-off-by: Juergen Gross <jgross@suse.com>
Signed-off-by: Vikram Garhwal <vikram.garhwal@amd.com>
---
 hw/i386/xen/xen-hvm.c           |  3 ++
 hw/xen/xen-hvm-common.c         |  4 +--
 hw/xen/xen-mapcache.c           | 27 ++++++++++++++
 include/exec/ram_addr.h         |  1 +
 include/hw/xen/xen-hvm-common.h |  2 ++
 include/hw/xen/xen_pvdev.h      |  3 ++
 include/sysemu/xen-mapcache.h   |  3 ++
 softmmu/physmem.c               | 62 +++++++++++++++++++++------------
 8 files changed, 80 insertions(+), 25 deletions(-)

diff --git a/hw/i386/xen/xen-hvm.c b/hw/i386/xen/xen-hvm.c
index f42621e674..67a55558a6 100644
--- a/hw/i386/xen/xen-hvm.c
+++ b/hw/i386/xen/xen-hvm.c
@@ -172,6 +172,9 @@ static void xen_ram_init(PCMachineState *pcms,
                                  x86ms->above_4g_mem_size);
         memory_region_add_subregion(sysmem, 0x100000000ULL, &ram_hi);
     }
+
+    /* Add grant mappings as a pseudo RAM region. */
+    ram_grants = *xen_init_grant_ram();
 }
 
 static XenPhysmap *get_physmapping(hwaddr start_addr, ram_addr_t size)
diff --git a/hw/xen/xen-hvm-common.c b/hw/xen/xen-hvm-common.c
index 565dc39c8f..b7255977a5 100644
--- a/hw/xen/xen-hvm-common.c
+++ b/hw/xen/xen-hvm-common.c
@@ -9,7 +9,7 @@
 #include "hw/boards.h"
 #include "hw/xen/arch_hvm.h"
 
-MemoryRegion ram_memory;
+MemoryRegion ram_memory, ram_grants;
 
 void xen_ram_alloc(ram_addr_t ram_addr, ram_addr_t size, MemoryRegion *mr,
                    Error **errp)
@@ -26,7 +26,7 @@ void xen_ram_alloc(ram_addr_t ram_addr, ram_addr_t size, MemoryRegion *mr,
         return;
     }
 
-    if (mr == &ram_memory) {
+    if (mr == &ram_memory || mr == &ram_grants) {
         return;
     }
 
diff --git a/hw/xen/xen-mapcache.c b/hw/xen/xen-mapcache.c
index f7d974677d..8115c44c00 100644
--- a/hw/xen/xen-mapcache.c
+++ b/hw/xen/xen-mapcache.c
@@ -14,7 +14,9 @@
 
 #include <sys/resource.h>
 
+#include "hw/xen/xen-hvm-common.h"
 #include "hw/xen/xen_native.h"
+#include "hw/xen/xen_pvdev.h"
 #include "qemu/bitmap.h"
 
 #include "sysemu/runstate.h"
@@ -597,3 +599,28 @@ uint8_t *xen_replace_cache_entry(hwaddr old_phys_addr,
     mapcache_unlock();
     return p;
 }
+
+MemoryRegion *xen_init_grant_ram(void)
+{
+    RAMBlock *block;
+
+    memory_region_init(&ram_grants, NULL, "xen.grants",
+                       XEN_MAX_VIRTIO_GRANTS * XC_PAGE_SIZE);
+    block = g_malloc0(sizeof(*block));
+    block->mr = &ram_grants;
+    block->used_length = XEN_MAX_VIRTIO_GRANTS * XC_PAGE_SIZE;
+    block->max_length = XEN_MAX_VIRTIO_GRANTS * XC_PAGE_SIZE;
+    block->fd = -1;
+    block->page_size = XC_PAGE_SIZE;
+    block->host = (void *)XEN_GRANT_ADDR_OFF;
+    block->offset = XEN_GRANT_ADDR_OFF;
+    block->flags = RAM_PREALLOC;
+    ram_grants.ram_block = block;
+    ram_grants.ram = true;
+    ram_grants.terminates = true;
+    ram_block_add_list(block);
+    memory_region_add_subregion(get_system_memory(), XEN_GRANT_ADDR_OFF,
+                                &ram_grants);
+
+    return &ram_grants;
+}
diff --git a/include/exec/ram_addr.h b/include/exec/ram_addr.h
index 90676093f5..c0b5f9a7d0 100644
--- a/include/exec/ram_addr.h
+++ b/include/exec/ram_addr.h
@@ -139,6 +139,7 @@ void qemu_ram_free(RAMBlock *block);
 int qemu_ram_resize(RAMBlock *block, ram_addr_t newsize, Error **errp);
 
 void qemu_ram_msync(RAMBlock *block, ram_addr_t start, ram_addr_t length);
+void ram_block_add_list(RAMBlock *new_block);
 
 /* Clear whole block of mem */
 static inline void qemu_ram_block_writeback(RAMBlock *block)
diff --git a/include/hw/xen/xen-hvm-common.h b/include/hw/xen/xen-hvm-common.h
index 4e9904f1a6..0d300ba898 100644
--- a/include/hw/xen/xen-hvm-common.h
+++ b/include/hw/xen/xen-hvm-common.h
@@ -17,6 +17,8 @@
 #include <xen/hvm/ioreq.h>
 
 extern MemoryRegion ram_memory;
+
+extern MemoryRegion ram_grants;
 extern MemoryListener xen_io_listener;
 extern DeviceListener xen_device_listener;
 
diff --git a/include/hw/xen/xen_pvdev.h b/include/hw/xen/xen_pvdev.h
index ddad4b9f36..0f1b5edfa9 100644
--- a/include/hw/xen/xen_pvdev.h
+++ b/include/hw/xen/xen_pvdev.h
@@ -80,4 +80,7 @@ int xen_pv_send_notify(struct XenLegacyDevice *xendev);
 void xen_pv_printf(struct XenLegacyDevice *xendev, int msg_level,
                    const char *fmt, ...)  G_GNUC_PRINTF(3, 4);
 
+#define XEN_GRANT_ADDR_OFF    0x8000000000000000ULL
+#define XEN_MAX_VIRTIO_GRANTS 65536
+
 #endif /* QEMU_HW_XEN_PVDEV_H */
diff --git a/include/sysemu/xen-mapcache.h b/include/sysemu/xen-mapcache.h
index c8e7c2f6cf..f4bedb1c11 100644
--- a/include/sysemu/xen-mapcache.h
+++ b/include/sysemu/xen-mapcache.h
@@ -10,6 +10,7 @@
 #define XEN_MAPCACHE_H
 
 #include "exec/cpu-common.h"
+#include "exec/ram_addr.h"
 
 typedef hwaddr (*phys_offset_to_gaddr_t)(hwaddr phys_offset,
                                          ram_addr_t size);
@@ -25,6 +26,8 @@ void xen_invalidate_map_cache(void);
 uint8_t *xen_replace_cache_entry(hwaddr old_phys_addr,
                                  hwaddr new_phys_addr,
                                  hwaddr size);
+MemoryRegion *xen_init_grant_ram(void);
+
 #else
 
 static inline void xen_map_cache_init(phys_offset_to_gaddr_t f,
diff --git a/softmmu/physmem.c b/softmmu/physmem.c
index 309653c722..e182a2fa07 100644
--- a/softmmu/physmem.c
+++ b/softmmu/physmem.c
@@ -1803,12 +1803,47 @@ static void dirty_memory_extend(ram_addr_t old_ram_size,
     }
 }
 
+static void ram_block_add_list_locked(RAMBlock *new_block)
+ {
+     RAMBlock *block;
+     RAMBlock *last_block = NULL;
+
+    /*
+     * Keep the list sorted from biggest to smallest block.  Unlike QTAILQ,
+     * QLIST (which has an RCU-friendly variant) does not have insertion at
+     * tail, so save the last element in last_block.
+     */
+    RAMBLOCK_FOREACH(block) {
+        last_block = block;
+        if (block->max_length < new_block->max_length) {
+            break;
+        }
+    }
+    if (block) {
+        QLIST_INSERT_BEFORE_RCU(block, new_block, next);
+    } else if (last_block) {
+        QLIST_INSERT_AFTER_RCU(last_block, new_block, next);
+    } else { /* list is empty */
+        QLIST_INSERT_HEAD_RCU(&ram_list.blocks, new_block, next);
+    }
+    ram_list.mru_block = NULL;
+
+    /* Write list before version */
+    smp_wmb();
+    ram_list.version++;
+}
+
+void ram_block_add_list(RAMBlock *new_block)
+{
+    qemu_mutex_lock_ramlist();
+    ram_block_add_list_locked(new_block);
+    qemu_mutex_unlock_ramlist();
+}
+
 static void ram_block_add(RAMBlock *new_block, Error **errp)
 {
     const bool noreserve = qemu_ram_is_noreserve(new_block);
     const bool shared = qemu_ram_is_shared(new_block);
-    RAMBlock *block;
-    RAMBlock *last_block = NULL;
     ram_addr_t old_ram_size, new_ram_size;
     Error *err = NULL;
 
@@ -1846,28 +1881,9 @@ static void ram_block_add(RAMBlock *new_block, Error **errp)
     if (new_ram_size > old_ram_size) {
         dirty_memory_extend(old_ram_size, new_ram_size);
     }
-    /* Keep the list sorted from biggest to smallest block.  Unlike QTAILQ,
-     * QLIST (which has an RCU-friendly variant) does not have insertion at
-     * tail, so save the last element in last_block.
-     */
-    RAMBLOCK_FOREACH(block) {
-        last_block = block;
-        if (block->max_length < new_block->max_length) {
-            break;
-        }
-    }
-    if (block) {
-        QLIST_INSERT_BEFORE_RCU(block, new_block, next);
-    } else if (last_block) {
-        QLIST_INSERT_AFTER_RCU(last_block, new_block, next);
-    } else { /* list is empty */
-        QLIST_INSERT_HEAD_RCU(&ram_list.blocks, new_block, next);
-    }
-    ram_list.mru_block = NULL;
 
-    /* Write list before version */
-    smp_wmb();
-    ram_list.version++;
+    ram_block_add_list_locked(new_block);
+
     qemu_mutex_unlock_ramlist();
 
     cpu_physical_memory_set_dirty_range(new_block->offset,
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Thu Oct 05 18:17:25 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 05 Oct 2023 18:17:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613095.953404 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoSub-0005Yz-M3; Thu, 05 Oct 2023 18:17:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613095.953404; Thu, 05 Oct 2023 18: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 1qoSub-0005Yq-If; Thu, 05 Oct 2023 18:17:25 +0000
Received: by outflank-mailman (input) for mailman id 613095;
 Thu, 05 Oct 2023 18: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=JwJB=FT=amd.com=vikram.garhwal@srs-se1.protection.inumbo.net>)
 id 1qoSua-0005Wp-CX
 for xen-devel@lists.xenproject.org; Thu, 05 Oct 2023 18:17:24 +0000
Received: from NAM10-DM6-obe.outbound.protection.outlook.com
 (mail-dm6nam10on2060a.outbound.protection.outlook.com
 [2a01:111:f400:7e88::60a])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 6c15a3f7-63ab-11ee-9b0d-b553b5be7939;
 Thu, 05 Oct 2023 20:17:21 +0200 (CEST)
Received: from DM6PR02CA0102.namprd02.prod.outlook.com (2603:10b6:5:1f4::43)
 by SJ0PR12MB6926.namprd12.prod.outlook.com (2603:10b6:a03:485::8) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.22; Thu, 5 Oct
 2023 18:17:17 +0000
Received: from DS1PEPF00017095.namprd03.prod.outlook.com
 (2603:10b6:5:1f4:cafe::15) by DM6PR02CA0102.outlook.office365.com
 (2603:10b6:5:1f4::43) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.33 via Frontend
 Transport; Thu, 5 Oct 2023 18:17:16 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 DS1PEPF00017095.mail.protection.outlook.com (10.167.17.138) 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, 5 Oct 2023 18:17:16 +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, 5 Oct
 2023 13:17:16 -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, 5 Oct
 2023 11:17:15 -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, 5 Oct 2023 13:17: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: 6c15a3f7-63ab-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=hqup0mrfddn+Vuc+pEEWS4oIkm26XNUReLwqQz/u7LX0s8P6pvqT/MeZQsFbuzhYf2aB0dSMgkUlo3l7USR55mPn3pxt0m+Z67EytKnEJwotGCVkC7Tq1n3QxZBqMwa3SXgX5Q3A54tMUE2jbAIQ1zu1cBKGDgmYr2Aeb2HIAKEKOAjwDa+YgFkbHpx3Nb+mKrbGikfL0daNGtd7NY4r3KNmsC2QvVipWEklWW0M47W9eyF+BjF8lSnBnY3qQtvdUZEBvmw7SneO5qfKLeQJ2CWMsq4fMoeLNOSl7OXSqXfVynlOGuqhH7+2CGLijYEWNZSL2Vp5/p6/plzoD45QCA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=drk4vNje31iUchZYqFtsf2J08S9ncFF0JR2CCRunqKc=;
 b=MTkyB3AtXkIDi3JnFrqi+G9xLYA5yrxuuE4kSTWdJ9OiBqDlHhYEy0Y2ilIwz7JEPO58xok1OpG18koiTRaYY5GoYsy9kqHuTMyiXBnvaayut+4dV0EE75qo1LCSk4ifAuMylfnG1AZB2IC9wqn2JegeDITRySx5NZALNy2loo6cGmy8Nzq2J1qTojh4ZIcfUPxBQQ66kNIVpCwpWTpkGRLOxTx3p3VRnz03i6TlgdDAs5yIiPpaRi4SllLvRbeEs7yQ2jJrJ6OUV8mS996PPUP5WNVBEKR7HgvCdITxf0CvFW8lITkD/AccebizF++5YVQqogDMhDp8T+7LA6k6Qg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=nongnu.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=drk4vNje31iUchZYqFtsf2J08S9ncFF0JR2CCRunqKc=;
 b=kzMbfV3GX2sHZrgvom2ILxlASZiXBA94YO+3eHzSz2Su2ygr7vg8Zjup1TggzAcxdNhp9DlAgqSxxrrBdCCy4KfMHqyoJG3/Cm+ngqs3Up9sJI+Mtp6vGyssupfNhkSfOaqTyEo1aKlKsd3CO1tuRsieRE4BphlNaFayEkulzmA=
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: <qemu-devel@nongnu.org>
CC: <sstabellini@kernel.org>, Juergen Gross <jgross@suse.com>, Vikram Garhwal
	<vikram.garhwal@amd.com>, Anthony Perard <anthony.perard@citrix.com>, "Paul
 Durrant" <paul@xen.org>, Paolo Bonzini <pbonzini@redhat.com>, Peter Xu
	<peterx@redhat.com>, David Hildenbrand <david@redhat.com>,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>, "open list:X86
 Xen CPUs" <xen-devel@lists.xenproject.org>
Subject: [QEMU][PATCH v1 6/7] xen: add map and unmap callbacks for grant region
Date: Thu, 5 Oct 2023 11:16:28 -0700
Message-ID: <20231005181629.4046-7-vikram.garhwal@amd.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20231005181629.4046-1-vikram.garhwal@amd.com>
References: <20231005181629.4046-1-vikram.garhwal@amd.com>
MIME-Version: 1.0
Content-Type: text/plain
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DS1PEPF00017095:EE_|SJ0PR12MB6926:EE_
X-MS-Office365-Filtering-Correlation-Id: 30a38abe-ecbe-4f11-23a0-08dbc5cf4e4e
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	13hZQItJ3wOE6AIoodsgUmW+M/rtsUY0ODjSk1x/J+BzeR0LZMSQwxItLngYiad3yxklbD0QrTteqog/WtRygm7ptMr491gLDGIuqanNRALRrD5Wkbhy6ofI73HKABsvwRWb7r40aVWiTR/C9JVt8biBKgL5SKyDxjqKoQHV9AHYPvYXm0mAfYbEP+FpMCkKRE/QOZdiNSqpdZmmX6HrthkIlxX+/prFayDsl70aiDZLT+Oh+xMWH7SMycQUhkQ4pRZh0e6uph3ym/hQ2D6Fhv88MoQXHAMaWFs/MD+nanC6knRejipnhMAQU6s7GHkmzYGthDc7ZkBbJHS0Mm+0WkjCzNj34wlkkxZvKV88S3m+G5j2tP/TmNTj0h9uND9FGqS6imm4IfZmoS4wEeeBZqJHQpcmpS4oBrEUJSAKyuuMnPYg2YGd+lLkFKPR+lowtqBaKQOjdvz5enGWsJXJd5VokH47QFib/ont/1vzCobovUibJq0f6nETPcVOjwHcylvt378/56Qks4JZP1SCXzaCNvSB+T1fV609ziTBYACrtVCFOO5bzGky4EpFYvDeqYHPcIfs4nAIKUI/uPESaEtYXJWv6Wm7i+jR+7H+fDvdjTDVtfejSL2ny6Sy/2JsyYvrE7D8VHwVEPWxK4HNLHY6Bf0BQZnPImTVDHsAL+UhAqKYbvlhbmFhZ8pZgJy/qlld/SfrnY27hqoMflXPReCmzw7n5mTctYs/AhgKwex/0VAR7RlDZQ1ksaimMosPviTYB0NFCn0TB49jVoC0RQ==
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)(230922051799003)(186009)(1800799009)(451199024)(82310400011)(64100799003)(36840700001)(40470700004)(46966006)(44832011)(2616005)(5660300002)(1076003)(40480700001)(81166007)(40460700003)(356005)(82740400003)(316002)(6666004)(47076005)(478600001)(86362001)(6916009)(36756003)(36860700001)(70206006)(54906003)(83380400001)(7416002)(70586007)(2906002)(41300700001)(26005)(336012)(426003)(8936002)(8676002)(4326008)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Oct 2023 18:17:16.4921
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 30a38abe-ecbe-4f11-23a0-08dbc5cf4e4e
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:
	DS1PEPF00017095.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR12MB6926

From: Juergen Gross <jgross@suse.com>

Add the callbacks for mapping/unmapping guest memory via grants to the
special grant memory region.

Signed-off-by: Juergen Gross <jgross@suse.com>
Signed-off-by: Vikram Garhwal <vikram.garhwal@amd.com>
---
 hw/xen/xen-mapcache.c | 167 +++++++++++++++++++++++++++++++++++++++++-
 softmmu/physmem.c     |  11 ++-
 2 files changed, 173 insertions(+), 5 deletions(-)

diff --git a/hw/xen/xen-mapcache.c b/hw/xen/xen-mapcache.c
index 8a61c7dde6..52844a6a9d 100644
--- a/hw/xen/xen-mapcache.c
+++ b/hw/xen/xen-mapcache.c
@@ -9,6 +9,8 @@
  */
 
 #include "qemu/osdep.h"
+#include "qemu/queue.h"
+#include "qemu/thread.h"
 #include "qemu/units.h"
 #include "qemu/error-report.h"
 
@@ -23,6 +25,8 @@
 #include "sysemu/xen-mapcache.h"
 #include "trace.h"
 
+#include <xenevtchn.h>
+#include <xengnttab.h>
 
 //#define MAPCACHE_DEBUG
 
@@ -385,7 +389,7 @@ uint8_t *xen_map_cache(hwaddr phys_addr, hwaddr size,
     return p;
 }
 
-ram_addr_t xen_ram_addr_from_mapcache(void *ptr)
+static ram_addr_t xen_ram_addr_from_mapcache_try(void *ptr)
 {
     MapCacheEntry *entry = NULL;
     MapCacheRev *reventry;
@@ -594,10 +598,170 @@ uint8_t *xen_replace_cache_entry(hwaddr old_phys_addr,
     return p;
 }
 
+struct XENMappedGrantRegion {
+    void *addr;
+    unsigned int pages;
+    unsigned int refs;
+    unsigned int prot;
+    uint32_t idx;
+    QLIST_ENTRY(XENMappedGrantRegion) list;
+};
+
+static xengnttab_handle *xen_region_gnttabdev;
+static QLIST_HEAD(GrantRegionList, XENMappedGrantRegion) xen_grant_mappings =
+    QLIST_HEAD_INITIALIZER(xen_grant_mappings);
+static QemuMutex xen_map_mutex;
+
+static void *xen_map_grant_dyn(MemoryRegion **mr, hwaddr addr, hwaddr *plen,
+                               bool is_write, MemTxAttrs attrs)
+{
+    unsigned int page_off = addr & (XC_PAGE_SIZE - 1);
+    unsigned int i;
+    unsigned int nrefs = (page_off + *plen + XC_PAGE_SIZE - 1) >> XC_PAGE_SHIFT;
+    uint32_t ref = (addr - XEN_GRANT_ADDR_OFF) >> XC_PAGE_SHIFT;
+    uint32_t *refs = NULL;
+    unsigned int prot = PROT_READ;
+    struct XENMappedGrantRegion *mgr = NULL;
+
+    if (is_write) {
+        prot |= PROT_WRITE;
+    }
+
+    qemu_mutex_lock(&xen_map_mutex);
+
+    QLIST_FOREACH(mgr, &xen_grant_mappings, list) {
+        if (mgr->idx == ref &&
+            mgr->pages == nrefs &&
+            (mgr->prot & prot) == prot) {
+            break;
+        }
+    }
+    if (!mgr) {
+        mgr = g_new(struct XENMappedGrantRegion, 1);
+
+        if (nrefs == 1) {
+            refs = &ref;
+        } else {
+            refs = g_new(uint32_t, nrefs);
+            for (i = 0; i < nrefs; i++) {
+                refs[i] = ref + i;
+            }
+        }
+        mgr->addr = xengnttab_map_domain_grant_refs(xen_region_gnttabdev, nrefs,
+                                                    xen_domid, refs, prot);
+        if (mgr->addr) {
+            mgr->pages = nrefs;
+            mgr->refs = 1;
+            mgr->prot = prot;
+            mgr->idx = ref;
+
+            QLIST_INSERT_HEAD(&xen_grant_mappings, mgr, list);
+        } else {
+            g_free(mgr);
+            mgr = NULL;
+        }
+    } else {
+        mgr->refs++;
+    }
+
+    qemu_mutex_unlock(&xen_map_mutex);
+
+    if (nrefs > 1) {
+        g_free(refs);
+    }
+
+    return mgr ? mgr->addr + page_off : NULL;
+}
+
+static void xen_unmap_grant_dyn(MemoryRegion *mr, void *buffer, ram_addr_t addr,
+                                hwaddr len, bool is_write, hwaddr access_len)
+{
+    unsigned int page_off = (unsigned long)buffer & (XC_PAGE_SIZE - 1);
+    unsigned int nrefs = (page_off + len + XC_PAGE_SIZE - 1) >> XC_PAGE_SHIFT;
+    unsigned int prot = PROT_READ;
+    struct XENMappedGrantRegion *mgr = NULL;
+
+    if (is_write) {
+        prot |= PROT_WRITE;
+    }
+
+    qemu_mutex_lock(&xen_map_mutex);
+
+    QLIST_FOREACH(mgr, &xen_grant_mappings, list) {
+        if (mgr->addr == buffer - page_off &&
+            mgr->pages == nrefs &&
+            (mgr->prot & prot) == prot) {
+            break;
+        }
+    }
+    if (mgr) {
+        mgr->refs--;
+        if (!mgr->refs) {
+            xengnttab_unmap(xen_region_gnttabdev, mgr->addr, nrefs);
+
+            QLIST_REMOVE(mgr, list);
+            g_free(mgr);
+        }
+    } else {
+        error_report("xen_unmap_grant_dyn() trying to unmap unknown buffer");
+    }
+
+    qemu_mutex_unlock(&xen_map_mutex);
+}
+
+static ram_addr_t xen_ram_addr_from_grant_cache(void *ptr)
+{
+    unsigned int page_off = (unsigned long)ptr & (XC_PAGE_SIZE - 1);
+    struct XENMappedGrantRegion *mgr = NULL;
+    ram_addr_t raddr = RAM_ADDR_INVALID;
+
+    qemu_mutex_lock(&xen_map_mutex);
+
+    QLIST_FOREACH(mgr, &xen_grant_mappings, list) {
+        if (mgr->addr == ptr - page_off) {
+            break;
+        }
+    }
+
+    if (mgr) {
+        raddr = (mgr->idx << XC_PAGE_SHIFT) + page_off + XEN_GRANT_ADDR_OFF;
+    }
+
+    qemu_mutex_unlock(&xen_map_mutex);
+
+    return raddr;
+}
+
+ram_addr_t xen_ram_addr_from_mapcache(void *ptr)
+{
+    ram_addr_t raddr;
+
+    raddr = xen_ram_addr_from_mapcache_try(ptr);
+    if (raddr == RAM_ADDR_INVALID) {
+        raddr = xen_ram_addr_from_grant_cache(ptr);
+    }
+
+    return raddr;
+}
+
+static const struct MemoryRegionOps xen_grant_mr_ops = {
+    .map = xen_map_grant_dyn,
+    .unmap = xen_unmap_grant_dyn,
+    .endianness = DEVICE_LITTLE_ENDIAN,
+};
+
 MemoryRegion *xen_init_grant_ram(void)
 {
     RAMBlock *block;
 
+    qemu_mutex_init(&xen_map_mutex);
+
+    xen_region_gnttabdev = xengnttab_open(NULL, 0);
+    if (xen_region_gnttabdev == NULL) {
+        fprintf(stderr, "can't open gnttab device\n");
+        return NULL;
+    }
+
     memory_region_init(&ram_grants, NULL, "xen.grants",
                        XEN_MAX_VIRTIO_GRANTS * XC_PAGE_SIZE);
     block = g_malloc0(sizeof(*block));
@@ -612,6 +776,7 @@ MemoryRegion *xen_init_grant_ram(void)
     ram_grants.ram_block = block;
     ram_grants.ram = true;
     ram_grants.terminates = true;
+    ram_grants.ops = &xen_grant_mr_ops;
     ram_block_add_list(block);
     memory_region_add_subregion(get_system_memory(), XEN_GRANT_ADDR_OFF,
                                 &ram_grants);
diff --git a/softmmu/physmem.c b/softmmu/physmem.c
index 5f425bea1c..e5346386db 100644
--- a/softmmu/physmem.c
+++ b/softmmu/physmem.c
@@ -2250,13 +2250,16 @@ RAMBlock *qemu_ram_block_from_host(void *ptr, bool round_offset,
 
     if (xen_enabled()) {
         ram_addr_t ram_addr;
+
         RCU_READ_LOCK_GUARD();
         ram_addr = xen_ram_addr_from_mapcache(ptr);
-        block = qemu_get_ram_block(ram_addr);
-        if (block) {
-            *offset = ram_addr - block->offset;
+        if (ram_addr != RAM_ADDR_INVALID) {
+            block = qemu_get_ram_block(ram_addr);
+            if (block) {
+                *offset = ram_addr - block->offset;
+            }
+            return block;
         }
-        return block;
     }
 
     RCU_READ_LOCK_GUARD();
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Thu Oct 05 18:59:03 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 05 Oct 2023 18:59:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613114.953414 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoTYl-0006xR-1v; Thu, 05 Oct 2023 18:58:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613114.953414; Thu, 05 Oct 2023 18: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 1qoTYk-0006x1-To; Thu, 05 Oct 2023 18:58:54 +0000
Received: by outflank-mailman (input) for mailman id 613114;
 Thu, 05 Oct 2023 18:58: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=mY76=FT=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qoTYj-0006w4-Ir
 for xen-devel@lists.xenproject.org; Thu, 05 Oct 2023 18:58:53 +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 3932bf1c-63b1-11ee-98d3-6d05b1d4d9a1;
 Thu, 05 Oct 2023 20:58:51 +0200 (CEST)
Received: by mail-wr1-x433.google.com with SMTP id
 ffacd0b85a97d-323168869daso1317830f8f.2
 for <xen-devel@lists.xenproject.org>; Thu, 05 Oct 2023 11:58:52 -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
 y17-20020a5d6151000000b0031f82743e25sm2392982wrt.67.2023.10.05.11.58.51
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Thu, 05 Oct 2023 11:58: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: 3932bf1c-63b1-11ee-98d3-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1696532331; x=1697137131; darn=lists.xenproject.org;
        h=content-transfer-encoding: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=NUvzy2QXL43QsYHWb7CyR5rWFH2Ox3pxbiimOpqgg3w=;
        b=RI1H6wmIxbwOHIEZNpNO1bTucFVvENNu9pj5XnwXqQR6zqVrHPArDKj7CZJlri0sr+
         jpWYd32sZ8XRR9trmiKuXFu9rZDaSld1MJ7HQE4rWQIo2OqGBoBhuMeOnejGHjG3CzA6
         0mnD205M+3YnF+TLNTiyPcPsb0XFSETIYh0O4=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1696532331; x=1697137131;
        h=content-transfer-encoding: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=NUvzy2QXL43QsYHWb7CyR5rWFH2Ox3pxbiimOpqgg3w=;
        b=JfL4lDfVuMWLtZdam2FbBfsMdfkRso7Ao3nZH3523k0Kli+6mCPM0JFm1QcTVGNpDd
         3A2iE4wxt1s3AbZuUeNmCDqjvzA7m3Y1YqTxEPVjHyWX4ZwQhWannH2Tzo9Ge8+hGuh6
         bx9tf9CGZrGP2caokaLKTfVxjfXymfPbOQltxAp7Vxlel6z9ClqTA6shOcKyNzBCAZqu
         aOxZ6yGohFiSH8lYIwUf3ACFS8jnWxEGB0aFgf095/h/nddN/ajGHn8XxRKNXoT4ZrXN
         wzxpSal/vyc7dtmjvOUNQ02R7tLmybk0kH/u9gVo593Fr5j4TTnRF4wNeXDkmvzydtU/
         GqxA==
X-Gm-Message-State: AOJu0YwqSTTMtyVEeoalvhxVkWm5U08UAgUudWVTeWZrUu70o1kn5EAL
	orjL1Oapcx0phOQSBDE9gjxKej2GuHtm1oJxJShsdA==
X-Google-Smtp-Source: AGHT+IFOEQQeKNJgqEXa8J+4ey4i182D7xcOGOuq+v1DKaxLyuY10MG8jbbjUYUjx6DRfq+eYyJ0Ug==
X-Received: by 2002:adf:e80f:0:b0:31f:fb02:4dcd with SMTP id o15-20020adfe80f000000b0031ffb024dcdmr5391779wrm.4.1696532331586;
        Thu, 05 Oct 2023 11:58:51 -0700 (PDT)
Message-ID: <ff8994eb-968d-4bbb-a960-e5ca78ef658e@citrix.com>
Date: Thu, 5 Oct 2023 19:58:50 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: [CRITICAL for 4.18] Re: [PATCH v5 00/10] runstate/time area
 registration by (guest) physical address
Content-Language: en-GB
To: Roger Pau Monne <roger.pau@citrix.com>, xen-devel@lists.xenproject.org,
 henry.wang@arm.com
Cc: Tamas K Lengyel <tamas@tklengyel.com>, Jan Beulich <jbeulich@suse.com>,
 George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>
References: <20231002151127.71020-1-roger.pau@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: <20231002151127.71020-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

I see this series has been committed.  But it's broken in a really
fundamental way.


This is a new extension with persistent side effects to an existing part
of the guest ABI.

Yet there doesn't appear to be any enumeration that the interface is
available to begin with.  Requiring the guest to probe subops, and
having no way to disable it on a per-domain basis is unacceptable, and
has exploded on us more times than I care to count in security fixes
alone, and that doesn't even cover the issues Amazon have reported over
the years.


Henry: Blocker for 4.18.   The absolutely bare minimum necessary to
avoid reversion is some kind of positive enumeration that the two new
hypercalls are available.

Otherwise I will be #if 0'ing out the new hypercalls before this ABI
mistake gets set in stone.


If this were x86-only it would need to be a CPUID flag, but it will need
to be something arch-agnostic in this case.  The series should not have
come without a proper per-domain control and toolstack integration, but
everything else can be retrofitted in an emergency.

And on a related note, where is the documentation describing this new
feature?  Some tests perhaps, or any single implementation of the guest
side interface?

This is engineering principles so basic that they do go without saying.

~Andrew


From xen-devel-bounces@lists.xenproject.org Thu Oct 05 20:16:10 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 05 Oct 2023 20:16:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613118.953423 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoUlH-0006ag-IR; Thu, 05 Oct 2023 20:15:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613118.953423; Thu, 05 Oct 2023 20:15: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 1qoUlH-0006aZ-Fk; Thu, 05 Oct 2023 20:15:55 +0000
Received: by outflank-mailman (input) for mailman id 613118;
 Thu, 05 Oct 2023 20:15: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=Dokh=FT=amd.com=Michal.Orzel@srs-se1.protection.inumbo.net>)
 id 1qoUlG-0006aP-1j
 for xen-devel@lists.xenproject.org; Thu, 05 Oct 2023 20:15:54 +0000
Received: from NAM10-BN7-obe.outbound.protection.outlook.com
 (mail-bn7nam10on20630.outbound.protection.outlook.com
 [2a01:111:f400:7e8a::630])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id fa927bf7-63bb-11ee-98d3-6d05b1d4d9a1;
 Thu, 05 Oct 2023 22:15:51 +0200 (CEST)
Received: from BLAPR03CA0011.namprd03.prod.outlook.com (2603:10b6:208:32b::16)
 by MN0PR12MB5835.namprd12.prod.outlook.com (2603:10b6:208:37a::6)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.25; Thu, 5 Oct
 2023 20:15:46 +0000
Received: from MN1PEPF0000ECD6.namprd02.prod.outlook.com
 (2603:10b6:208:32b:cafe::a7) by BLAPR03CA0011.outlook.office365.com
 (2603:10b6:208:32b::16) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.26 via Frontend
 Transport; Thu, 5 Oct 2023 20:15:46 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 MN1PEPF0000ECD6.mail.protection.outlook.com (10.167.242.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; Thu, 5 Oct 2023 20:15:46 +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, 5 Oct
 2023 15:15:45 -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, 5 Oct
 2023 13:15:45 -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; Thu, 5 Oct 2023 15:15: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: fa927bf7-63bb-11ee-98d3-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=PtKWOtOOnEJpzA7agCnMpXdsR75gH3aF9H8ZAYh0f3/gkeE7b673Nu1YvTBRL8Jgekd384pnC0QwExRvw2SXJbz3/u8cD+gkUMFN0c6YzQriM+RqYapkhEysF18Oi6L2eApEVXSYtNUIlWUWXbGDiqU0CyJxjsE/V1Yv2iPoPZ0P8uWffFLTbX/NF5RpH20+8TrfhhKY0GjN6VuFEzIxZPLWh0UmkwOB90jzzkEzjK+Fdsu96dU0mOXZaR8KJM6tSyJpKrVl3Vy6v1vN3o97on4O/33ZGFQjuoSWtrX5z0Tyvg/UEa7UF7nmAARxDILgQs6JRgeZiaM24bqexgGh0A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=bFWJtjr1R4ZmXhaAM0FGC4gDS8Tum3//rC6Eut+RLyw=;
 b=WDKkUyv/5PR7KYt0bELCiInUVenlwGplEYRF6Us7p+dxmb7vt/T6eGzq5HbNuPBo150eQgA/mxipoZkEJ92FFH8PEwMWUaBE3AxU51oUm5+WqsksMS84Uy5tdlaNBjjvdT3ejhsO1qNdVttRaTMO0DnZl1ISNasBpcZjZ8dUQkfD3y8xfZjTMGI5nsYObHo6wjszQiQ2KRtRqqozmeI+GBM0tYtF/xDqn5YCu28uFGr6+EZubxFXbAvnGGlZC54SIgOjrFR4a7YpIYt53ixMxzG/0GMx7ALk24x3ARuCbwA5IfXjDSrbfL7rxhqX3ckSFU837Ko3ESo+cUORUOGkyA==
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=bFWJtjr1R4ZmXhaAM0FGC4gDS8Tum3//rC6Eut+RLyw=;
 b=3oLB4kLtaA7lRBIg7QgaQvk3nYFZSUPZU1The9UQKlBPDsoGqS02AXVzaSjAG5+K5I+6vzpMNsPClRykYitFT6US3mUBwAlwNib0gsW1WTQIJ9FA36aARphqbPoQsPZEDoXVKWU3wTRagyzzAOb5PEJmp5WjIyfp68K5Ih7ZiWk=
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: <edaa4c87-9e7e-485f-aa77-e330dcafa344@amd.com>
Date: Thu, 5 Oct 2023 22:15:38 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH] xen/arm: vtimer: Don't read/use the secure physical timer
 interrupt for ACPI
To: Julien Grall <julien@xen.org>, <xen-devel@lists.xenproject.org>
CC: <Henry.Wang@arm.com>, <dan.driscoll@siemens.com>,
	<arvind.raghuraman@siemens.com>, Julien Grall <jgrall@amazon.com>, "Stefano
 Stabellini" <sstabellini@kernel.org>, Bertrand Marquis
	<bertrand.marquis@arm.com>, Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
References: <20231005165454.18143-1-julien@xen.org>
Content-Language: en-US
From: Michal Orzel <michal.orzel@amd.com>
In-Reply-To: <20231005165454.18143-1-julien@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 7bit
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: MN1PEPF0000ECD6:EE_|MN0PR12MB5835:EE_
X-MS-Office365-Filtering-Correlation-Id: f357ad08-44b2-4541-3d6b-08dbc5dfdc1a
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	Sccq+u3ToQKYS0p4Ed3v6TI7sVsI7xZO9qI+FoB/KVoRskRX8GnVonvkDwh7RqF5eqrVLdMUOn0YJ003trj3gAlxM+CXCIsJS331bwYDdIoYTNmBCWzLi0Q89RKckSVnjDrxyUwhMAGnbbRTyFNBdAfEbfKNJeWiTd5maex8cfBFTSiQDm98PjQgHJbD0XvJCwOE79uXwv8TgGhhzZ5ENo5u+Km2mvpE8Yj7P+jHBlZNTRpzMsn1RY4XeSdUzBxQ/sEZMrvSKT80JoGMEWTqvBima+ZqdmYJIzVS/VEYspbmg6dLAKzNpUmmHKDxNPOhORarGQY9yy5ecZLfte07Kxdu2I25rgvBf/UWeD12RI7sskOdufPUryNj5nbZdnLME3oV0QLz99lnsjShFzQcpWVYT9ncq7XgDqpMD9Fvb4hU1bJGwotf7ZEwxa1lfG9ZsGOAhv3d+DZU3odtt3chEfGucntKv8TwNNNTrTLS5RdaWcT0cQyA5LuwMPhY8qsRwBbJf3+4lQCDYQwVcwBgOKvuyRFiJdhAfLipXdPJlswBxKxTLT9OxqyqkJpN/SpSoPacgeClwTKA0NAZBuKJFsLB0os9hBgXz0rcRsR8T7QnjgryjxvvumGMy8qjdClF1ZQVpJQXEkQ8hdEbyxPcwOsgb9e6+9z1jRXRiCzCOAAB2UtjBG5hIJBrtA8Ex3Om50UUpknfOISpY9NGylPokT24Ffj/oMNtFas99zu5+N+rCvcmAsMHg0nPbGb1Mwxg06VXCBc7PA1p2i+s2ERwHJkTt728zcUja4dcNpoDNQAZ+cxcTk2XwEgwZxv+M8qF
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)(230922051799003)(186009)(82310400011)(1800799009)(64100799003)(451199024)(46966006)(40470700004)(36840700001)(2906002)(40460700003)(36860700001)(6666004)(82740400003)(31696002)(53546011)(316002)(110136005)(86362001)(54906003)(16576012)(426003)(336012)(47076005)(81166007)(356005)(26005)(478600001)(8936002)(41300700001)(4744005)(70206006)(40480700001)(70586007)(36756003)(44832011)(8676002)(5660300002)(4326008)(31686004)(2616005)(43740500002)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Oct 2023 20:15:46.3830
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: f357ad08-44b2-4541-3d6b-08dbc5dfdc1a
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:
	MN1PEPF0000ECD6.namprd02.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN0PR12MB5835

Hi Julien,

On 05/10/2023 18:54, Julien Grall wrote:
> 
> 
> From: Julien Grall <jgrall@amazon.com>
> 
> Per ACPI 6.5 section 5.2.25 ("Generic Timer Description Table (GTDT)"),
> the fields "Secure EL1 Timer GSIV/Flags" are optional and an OS running
> in non-secure world is meant to ignore the values.
> 
> However, Xen is trying to reserve the value. When booting on Graviton
> 2 metal instances, this would result to crash a boot because the
> value is 0 which is already reserved (I haven't checked for which device).
Per my understanding it is not reserved by any device.
0 means SGI and for SGIs we pre-reserve the bits in allocated_irqs at the very start.

~Michal


From xen-devel-bounces@lists.xenproject.org Thu Oct 05 20:52:37 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 05 Oct 2023 20:52:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613123.953433 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoVKf-0005PF-7G; Thu, 05 Oct 2023 20:52:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613123.953433; Thu, 05 Oct 2023 20:52: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 1qoVKf-0005P8-4e; Thu, 05 Oct 2023 20:52:29 +0000
Received: by outflank-mailman (input) for mailman id 613123;
 Thu, 05 Oct 2023 20:52: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=0G7T=FT=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qoVKd-0005P2-TD
 for xen-devel@lists.xenproject.org; Thu, 05 Oct 2023 20:52:27 +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 16203d40-63c1-11ee-9b0d-b553b5be7939;
 Thu, 05 Oct 2023 22:52:25 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by ams.source.kernel.org (Postfix) with ESMTP id 5880AB826BB;
 Thu,  5 Oct 2023 20:52:24 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 9F0A1C433C7;
 Thu,  5 Oct 2023 20:52: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: 16203d40-63c1-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696539143;
	bh=9n3s0NZZpZTeGiyOiXFjR0ymqO/dZKYjdTrkqa0Y7N4=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=gx30C2jKzOuzORrLhRenTmLVzhF7U/b7GFWeodRsgJI/2i5K5iYXW1Dfu3Z5i82s2
	 Nh9p1GJJoy7dailGCBRcRxzpd6QQRYQc8i2qf9iW/e+h+q9vYHBjdyEL1gUIVsNtXv
	 kHnOXACOS7oUD1rw0vdQBVL+FaSiYFN/PdV3EYJkobnk8SyQPEDHdwRJ9L+1Vn82xF
	 ZNT2MMFMj0JuQ4d1Udh8HgqE/OY8tPuwlP1hx1aI9A21tirpPuKqOSlrnwmCtTfWHu
	 HyhLdoo55lcBXr/rooR62NaKFzeY4kjkCMEiBvJa4sV7yJLMP6dUJ1X8tc3c/KG/Wt
	 S6Z9R9PSKqZuA==
Date: Thu, 5 Oct 2023 13:52:21 -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: Stefano Stabellini <sstabellini@kernel.org>, Julien Grall <julien@xen.org>, 
    Elliott Mitchell <ehem+xen@m5p.com>, xen-devel@lists.xenproject.org, 
    Bertrand Marquis <bertrand.marquis@arm.com>, 
    Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, 
    Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>
Subject: Re: Issue with shared information page on Xen/ARM 4.17
In-Reply-To: <ZR6A5LP1FKFAgJRv@MacBookPdeRoger>
Message-ID: <alpine.DEB.2.22.394.2310051352160.2348112@ubuntu-linux-20-04-desktop>
References: <ZRxpC7ukhiYvzz5m@mattapan.m5p.com> <ZR0erl_OSkNgIQjx@MacBookPdeRoger> <c0b67401-dfe5-475f-8640-b66ac32a80fb@xen.org> <ZR1gM19i6-vBaXh7@MacBookPdeRoger> <b00500ae-76b1-441c-8154-bcdd897734dc@xen.org> <ZR1rBP_49Y2V8VF6@MacBookPdeRoger>
 <fe94dcd2-4429-48df-8ebd-59563d43796a@xen.org> <ZR18dlMAbCwEOeH4@MacBookPdeRoger> <f8242725-7ee0-4fca-a608-d234f8f3b564@xen.org> <alpine.DEB.2.22.394.2310041509170.2348112@ubuntu-linux-20-04-desktop> <ZR6A5LP1FKFAgJRv@MacBookPdeRoger>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: multipart/mixed; BOUNDARY="8323329-1133245002-1696538928=:2348112"
Content-ID: <alpine.DEB.2.22.394.2310051348570.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-1133245002-1696538928=:2348112
Content-Type: text/plain; CHARSET=UTF-8
Content-Transfer-Encoding: 8BIT
Content-ID: <alpine.DEB.2.22.394.2310051348571.2348112@ubuntu-linux-20-04-desktop>

On Thu, 5 Oct 2023, Roger Pau Monné wrote:
> On Wed, Oct 04, 2023 at 03:52:54PM -0700, Stefano Stabellini wrote:
> > On Wed, 4 Oct 2023, Julien Grall wrote:
> > > > > If we want to handle such firmware, I think it would be better if we
> > > > > provide
> > > > > an hypercall that would return the GFN where it is currently mapped.
> > > > 
> > > > Sure, but such hypercall would be racy, as by the time the gfn is
> > > > returned the value could be stale.  Adding a replacing and non
> > > > replacing XENMEM_add_to_physmap variations would IMO be better.
> > > > 
> > > > Anyway, I don't maintain this, so it's up to you.
> > > 
> > > Bertrand/Stefano, any opinions?
> > 
> > I think we should fix EDK2 to unmap the shared info in all cases as
> > that's simpler and the best implementation. What's the value of keeping
> > the mapping around when the OS can't find it? Unless you have an idea on
> > how the OS could find the location of the existing EDK2 shared info
> > mapping.
> 
> Indeed, edk2 should unmap the page, and we should fix that.
> 
> > 
> > It is important not to have 2 different behaviors for the same hypercall
> > on ARM and x86, especially when the hypercall looks arch-neutral and an
> > operating system would reasonably expect to use it in common code.
> > Having different behaviors on ARM/x86 is more error prone than having a
> > less-than-ideal hypercall implementation.
> > 
> > I agree with Julien that the ARM behavior is the right behavior. Can we
> > change the x86 implementation to match ARM somehow?
> 
> I'm afraid I don't see how.  edk2 is supported on x86, and hence we
> cannot simply make a change to the hypervisor that would render all
> current versions of edk2 unusable.
> 
> > If we do, I guess we would end up breaking legacy EDK2?
> 
> Breaking plain edk2, as there's no version of edk2 that currently does
> the unmapping?
> 
> > Is really the only choice to change the ARM implementation to match the
> > x86 implementation?
> 
> Unless we want x86 and Arm to diverge in behavior.
> 
> I do think the arm behavior is more sane, but I don't think we can
> make that change on x86 and simply render all existing versions of
> edk2 unusable.

Right, but maybe we can come up with a deprecation period?

Especially considering that this is for domU firmware (not host
firmware), and domU firmware is often (not always, but often) provided
by Xen (Xen in the sense of xen.git and Xen packages). First we fix EDK2
upstream and we update the EDK2 build in xen.git. Then we give it a
couple of releases, then we change the x86 hypercall behavior?

In the meantime we could print a warning in Xen DEBUG builds when the
hypercall is called and there is one existing mapping?
--8323329-1133245002-1696538928=:2348112--


From xen-devel-bounces@lists.xenproject.org Thu Oct 05 21:21:43 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 05 Oct 2023 21:21:43 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613129.953444 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoVmf-0003NZ-GF; Thu, 05 Oct 2023 21:21:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613129.953444; Thu, 05 Oct 2023 21:21: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 1qoVmf-0003NR-Bt; Thu, 05 Oct 2023 21:21:25 +0000
Received: by outflank-mailman (input) for mailman id 613129;
 Thu, 05 Oct 2023 21:21: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=0G7T=FT=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qoVme-0003N5-IX
 for xen-devel@lists.xenproject.org; Thu, 05 Oct 2023 21:21:24 +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 20c28f4d-63c5-11ee-98d3-6d05b1d4d9a1;
 Thu, 05 Oct 2023 23:21:21 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by sin.source.kernel.org (Postfix) with ESMTP id 683C3CE2430;
 Thu,  5 Oct 2023 21:21:19 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 8255CC433C8;
 Thu,  5 Oct 2023 21: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: 20c28f4d-63c5-11ee-98d3-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696540877;
	bh=asJ7eH/UK0mtRY20BN7n4DQL95tN2xa7eo9Qs1vbBGo=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=VzvnhRmi02L4+U5n7oukUjmw9h059JOURPC0fTzKm4+49+rR7fLs/m2yJDepAXgqa
	 uCAiQTDk3J4xo0WktPDT15ARPB03DlGGzILa0as6wUAf3+mSL12qabajotsstBtDg5
	 l/ilW9q/Nhi5oGcZtWPYS+9sWaMKpGndzvGbeQ8dRZplwz0iToB1wvYPt1auTKKwLV
	 X0FkfjTrzTQgEsllHsH0UcU3bjGCJ9tds9bCDaHICdFmwwanKs4tTE8413K21mYWPe
	 BEabHfO+D06pL2SHeL8WrZCdpPGnKdFoNgKwYnnTo61gHNqFJT0id+DsOo59gDBNa2
	 SZlZdP04XZsWw==
Date: Thu, 5 Oct 2023 14:21:15 -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>, 
    Jan Beulich <jbeulich@suse.com>, 
    =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>, 
    "andrew.cooper3@citrix.com" <andrew.cooper3@citrix.com>, 
    Bertrand Marquis <Bertrand.Marquis@arm.com>, 
    "julien@xen.org" <julien@xen.org>, 
    "george.dunlap@citrix.com" <george.dunlap@citrix.com>, 
    "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Subject: Re: SAF-x-safe rename
In-Reply-To: <9CF5DF50-B857-4B1D-A210-E6355492CC3B@arm.com>
Message-ID: <alpine.DEB.2.22.394.2310051420350.2348112@ubuntu-linux-20-04-desktop>
References: <alpine.DEB.2.22.394.2310041633080.2348112@ubuntu-linux-20-04-desktop> <9CF5DF50-B857-4B1D-A210-E6355492CC3B@arm.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="8323329-2021320056-1696540877=: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-2021320056-1696540877=:2348112
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8BIT

On Thu, 5 Oct 2023, Luca Fancellu wrote:
> > On 5 Oct 2023, at 00:46, Stefano Stabellini <sstabellini@kernel.org> wrote:
> > 
> > Hi MISRA C working group (Jan, Roger, Andrew, Julien, Bertrand, George)
> > 
> > in a recent thread Andrew pointed out that the SAF-2-safe tag is
> > confusing and requested a rename:
> > https://marc.info/?l=xen-devel&m=169634970821202
> > 
> > As documented by docs/misra/documenting-violations.rst:
> > 
> > - SAF-X-safe: This tag means that the next line of code contains a finding, but
> >   the non compliance to the checker is analysed and demonstrated to be safe.
> > - SAF-X-false-positive-<tool>: This tag means that the next line of code
> >   contains a finding, but the finding is a bug of the tool.
> > 
> > 
> > Today we have already 28 instances of SAF tags in the Xen codebase.
> > 
> > 
> > Andrew suggested "ANALYSIS" instead of SAF so I would imagine:
> > - ANALYSIS-X-safe
> > - ANALYSIS-X-false-positive-<tool>
> > 
> > If we really want a rename I suggest to rename SAF to SAFE:
> > - SAFE-X-safe
> > - SAFE-X-false-positive-<tool>
> > 
> > Or maybe MISRA:
> > - MISRA-X-safe
> > - MISRA-X-false-positive-<tool>
> > 
> > But I actually prefer to keep the tag as it is today.
> 
> We chose a generic name instead of MISRA because the tag can potentially suppress findings
> of any checker, including MISRA checker.
> 
> If SAF-* is confusing, what about FUSA-* ?
> 
> Anyway I’m thinking that every name we could come up will be confusing at first, improving the
> documentation would mitigate it (by improving I mean to improve the fruition of it, for example a
> Read the docs documentation has the search bar, a quick copy paste of SAF- would make the
> documenting-violations page visible.)

I agree, that's why my preference is to keep it as is (and improve the
docs). Even today if you grep for SAF under docs/ you can find what's
what.


> > 
> > If you have any naming suggestions please let me know by Oct 11. After
> > that, I plan to run a Doodle poll to check the preference of the group.

--8323329-2021320056-1696540877=:2348112--


From xen-devel-bounces@lists.xenproject.org Thu Oct 05 21:38:41 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 05 Oct 2023 21:38:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613134.953454 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoW36-00074s-US; Thu, 05 Oct 2023 21:38:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613134.953454; Thu, 05 Oct 2023 21:38: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 1qoW36-00074l-QJ; Thu, 05 Oct 2023 21:38:24 +0000
Received: by outflank-mailman (input) for mailman id 613134;
 Thu, 05 Oct 2023 21:38: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=mY76=FT=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qoW35-00074M-4g
 for xen-devel@lists.xenproject.org; Thu, 05 Oct 2023 21:38: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 80343dce-63c7-11ee-9b0d-b553b5be7939;
 Thu, 05 Oct 2023 23:38:20 +0200 (CEST)
Received: by mail-wm1-x32b.google.com with SMTP id
 5b1f17b1804b1-40566f89f6eso14082125e9.3
 for <xen-devel@lists.xenproject.org>; Thu, 05 Oct 2023 14:38:20 -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
 l1-20020a5d4bc1000000b00323287186b2sm82559wrt.29.2023.10.05.14.38.18
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Thu, 05 Oct 2023 14:38: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: 80343dce-63c7-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1696541899; x=1697146699; 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=OSoY8iBiCPhZcTbBTdsR4TuhV8wi81BnRf1PutRv5tE=;
        b=hCwl7jpsAMgc+AA8Gc3vfYN+Es35+q9wbVUS4tXKrbFvVRkhWytI9amRni9i7PMP4r
         jVP5u3DJ2vOqaKDxCgtSAVDqgLDShFD/lC9pFUpJBIcpSLaq64my2vNtdfudUYLq+DI0
         /WSI02rrX9glC+sw7N64Ayl4LZ3Vi42X6FdaM=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1696541899; x=1697146699;
        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=OSoY8iBiCPhZcTbBTdsR4TuhV8wi81BnRf1PutRv5tE=;
        b=FHTIlgwzTh7Rmtu7hb/JiSVsETlrbno7OdPlxGObeaQ8NbVZuSBDpPxzgWeqBv8UbN
         QhDwWZUXnjfuxFOHF6dDhk8xlkfZXvy5Wm1nAseii5N3JL4wmF9ojqrmjhiY027CGe8m
         Fio7YpqLqSEHxkr0pNXTBbUPhQsfj1uEAXBtU4sQ32ZzMvDXb8gpGWwQwh/E+1H2uMhE
         WG06DDaQxgUiT2P6Cf2VmsV+a5JqmAzzMYc2mQi0gCSHHEiZ7aRZ6c9RnHrUAEVWa5Nk
         MnmbeydApp8bZyZVTAgY7V8DMg6LPfCZWkuS/x+kgQ4/5F5BtKa+cY3pXfUSgBT/phQ/
         YbTQ==
X-Gm-Message-State: AOJu0Yxbb47sGPAHVarG7WSJpgkBH3Bh9eJZu4tQ5pzmmw9Gb6K95YUM
	3g1v4y55b7PveWwQZ0AcMOk5NA==
X-Google-Smtp-Source: AGHT+IFVgPQlxViRBXipmD8bnXvbsXLhOUgQJJCxUbWUQIUoYjK0cULab/KfPQydBb2H4C8YY31rkA==
X-Received: by 2002:a1c:7c17:0:b0:401:bcb4:f133 with SMTP id x23-20020a1c7c17000000b00401bcb4f133mr6000797wmc.22.1696541899006;
        Thu, 05 Oct 2023 14:38:19 -0700 (PDT)
Content-Type: multipart/alternative;
 boundary="------------ef3DVrdUzkii56b0riJoorEE"
Message-ID: <75d160be-4a8c-48c7-a972-201d78f0bdf0@citrix.com>
Date: Thu, 5 Oct 2023 22:38:18 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
From: "andrew.cooper3@citrix.com" <andrew.cooper3@citrix.com>
Subject: Re: SAF-x-safe rename
Content-Language: en-GB
To: Luca Fancellu <Luca.Fancellu@arm.com>,
 Stefano Stabellini <sstabellini@kernel.org>
Cc: Jan Beulich <jbeulich@suse.com>, =?UTF-8?Q?Roger_Pau_Monn=C3=A9?=
 <roger.pau@citrix.com>, Bertrand Marquis <Bertrand.Marquis@arm.com>,
 "julien@xen.org" <julien@xen.org>,
 "george.dunlap@citrix.com" <george.dunlap@citrix.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <alpine.DEB.2.22.394.2310041633080.2348112@ubuntu-linux-20-04-desktop>
 <9CF5DF50-B857-4B1D-A210-E6355492CC3B@arm.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: <9CF5DF50-B857-4B1D-A210-E6355492CC3B@arm.com>

This is a multi-part message in MIME format.
--------------ef3DVrdUzkii56b0riJoorEE
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 05/10/2023 8:43 am, Luca Fancellu wrote:
>> On 5 Oct 2023, at 00:46, Stefano Stabellini <sstabellini@kernel.org> wrote:
>>
>> Hi MISRA C working group (Jan, Roger, Andrew, Julien, Bertrand, George)
>>
>> in a recent thread Andrew pointed out that the SAF-2-safe tag is
>> confusing and requested a rename:
>> https://marc.info/?l=xen-devel&m=169634970821202
>>
>> As documented by docs/misra/documenting-violations.rst:
>>
>> - SAF-X-safe: This tag means that the next line of code contains a finding, but
>>   the non compliance to the checker is analysed and demonstrated to be safe.
>> - SAF-X-false-positive-<tool>: This tag means that the next line of code
>>   contains a finding, but the finding is a bug of the tool.
>>
>>
>> Today we have already 28 instances of SAF tags in the Xen codebase.
>>
>>
>> Andrew suggested "ANALYSIS" instead of SAF so I would imagine:
>> - ANALYSIS-X-safe
>> - ANALYSIS-X-false-positive-<tool>
>>
>> If we really want a rename I suggest to rename SAF to SAFE:
>> - SAFE-X-safe
>> - SAFE-X-false-positive-<tool>
>>
>> Or maybe MISRA:
>> - MISRA-X-safe
>> - MISRA-X-false-positive-<tool>
>>
>> But I actually prefer to keep the tag as it is today.
> We chose a generic name instead of MISRA because the tag can potentially suppress findings
> of any checker, including MISRA checker.
>
> If SAF-* is confusing, what about FUSA-* ?
>
> Anyway I’m thinking that every name we could come up will be confusing at first, improving the
> documentation would mitigate it (by improving I mean to improve the fruition of it, for example a
> Read the docs documentation has the search bar, a quick copy paste of SAF- would make the
> documenting-violations page visible.)

No - this is a problem *because* changing the documentation doesn't
help.   (To be clear, updating the documentation is fine, but irrelevant
here.)


These are annotations in code.  They need to be:

1) Short (obviously)
2) Clear to someone who isn't you (the collective us of this group)
reading the code.
3) Non-intrusive, so as not to get in the way of the code.

and they must be all three.  This was even a principle given at the
start of the MISRA work that we would not be deteriorating the quality
of the code just to comply.

Point 3 is other thread about end-of-line, or block regions.  Lets leave
that there because it's really a metadata transformation problem
constrained by where the comments can acceptably go.


Point 2 is the issue here, and "SAF-$N-safe" scores very highly on the
WTF-o-meter *even* for people who know that it's something related to MISRA.

Seriously it looks like someone couldn't spell, and everyone else went
with it (reflects poorly on everyone else).

And yes, I know it's an initialisation for something, but it's not even
an industry standard term - it's a contraction of an intentionally
generic phrase, with substantial irony on an early MISRA call where
there was uncertainly between people as to what it even stood for.

These are the thoughts running through the minds of people reading the
code when they don't understand what they're looking at.


Annotations for other static analysers intentionally use their own name
so they're googleable.

Guess what SAF googles for?  Sustainable Aviation Fuel, or Specialist
Automotive Finance.

Fine, lets be more specific.  How about "Xen SAF" ?  Nope...

"Did you mean to search for:
Xen SAVE Xen SAN Xen VIF Xenstaff"


Despite many of the search results referencing patches, or rendered
documents out of docs/, not a single one of them gets
documenting-violations.rst in any form, where the single definition of
this term is hiding in a paragraph which spends 90% of it's volume
describing a monotonically increasing number.

Seriously, ChatGPT would struggle to make shit this good up.


The thing we tag with *must* be trivially recognisable as an analysis
tag in order for others to be able to read the code.  Therefore, it
needs to be an actual full world (hence the ANALYSIS suggestion), or an
industry standard term (where MISRA does qualify).

I don't exactly what it is - something else might turn out to be even
better, but it is very important to be not this, for everyone else to
have an easy time reading the code.


And reasoning along that line...  What's wrong with just /* octal-ok */
or /* womble-permitted */ so it's also apparent in context what the
contentious issue might be and why it might be mitigated?

The mechanics behind the scenes is just a trivial text replacement, and
the tagging scheme does not have to uniform obfuscated identifier for
that to work.

~Andrew
--------------ef3DVrdUzkii56b0riJoorEE
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: 8bit

<!DOCTYPE html>
<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body>
    <div class="moz-cite-prefix">On 05/10/2023 8:43 am, Luca Fancellu
      wrote:<span style="white-space: pre-wrap">
</span></div>
    <blockquote type="cite"
      cite="mid:9CF5DF50-B857-4B1D-A210-E6355492CC3B@arm.com">
      <blockquote type="cite">
        <pre class="moz-quote-pre" wrap="">On 5 Oct 2023, at 00:46, Stefano Stabellini <a class="moz-txt-link-rfc2396E" href="mailto:sstabellini@kernel.org">&lt;sstabellini@kernel.org&gt;</a> wrote:

Hi MISRA C working group (Jan, Roger, Andrew, Julien, Bertrand, George)

in a recent thread Andrew pointed out that the SAF-2-safe tag is
confusing and requested a rename:
<a class="moz-txt-link-freetext" href="https://marc.info/?l=xen-devel&amp;m=169634970821202">https://marc.info/?l=xen-devel&amp;m=169634970821202</a>

As documented by docs/misra/documenting-violations.rst:

- SAF-X-safe: This tag means that the next line of code contains a finding, but
  the non compliance to the checker is analysed and demonstrated to be safe.
- SAF-X-false-positive-&lt;tool&gt;: This tag means that the next line of code
  contains a finding, but the finding is a bug of the tool.


Today we have already 28 instances of SAF tags in the Xen codebase.


Andrew suggested "ANALYSIS" instead of SAF so I would imagine:
- ANALYSIS-X-safe
- ANALYSIS-X-false-positive-&lt;tool&gt;

If we really want a rename I suggest to rename SAF to SAFE:
- SAFE-X-safe
- SAFE-X-false-positive-&lt;tool&gt;

Or maybe MISRA:
- MISRA-X-safe
- MISRA-X-false-positive-&lt;tool&gt;

But I actually prefer to keep the tag as it is today.
</pre>
      </blockquote>
      <pre class="moz-quote-pre" wrap="">
We chose a generic name instead of MISRA because the tag can potentially suppress findings
of any checker, including MISRA checker.

If SAF-* is confusing, what about FUSA-* ?

Anyway I’m thinking that every name we could come up will be confusing at first, improving the
documentation would mitigate it (by improving I mean to improve the fruition of it, for example a
Read the docs documentation has the search bar, a quick copy paste of SAF- would make the
documenting-violations page visible.)</pre>
    </blockquote>
    <br>
    No - this is a problem *because* changing the documentation doesn't
    help.   (To be clear, updating the documentation is fine, but
    irrelevant here.)<br>
    <br>
    <br>
    These are annotations in code.  They need to be:<br>
    <br>
    1) Short (obviously)<br>
    2) Clear to someone who isn't you (the collective us of this group)
    reading the code.<br>
    3) Non-intrusive, so as not to get in the way of the code.<br>
    <br>
    and they must be all three.  This was even a principle given at the
    start of the MISRA work that we would not be deteriorating the
    quality of the code just to comply.<br>
    <br>
    Point 3 is other thread about end-of-line, or block regions.  Lets
    leave that there because it's really a metadata transformation
    problem constrained by where the comments can acceptably go.<br>
    <br>
    <br>
    Point 2 is the issue here, and "SAF-$N-safe" scores very highly on
    the WTF-o-meter *even* for people who know that it's something
    related to MISRA.<br>
    <br>
    Seriously it looks like someone couldn't spell, and everyone else
    went with it (reflects poorly on everyone else).<br>
    <br>
    And yes, I know it's an initialisation for something, but it's not
    even an industry standard term - it's a contraction of an
    intentionally generic phrase, with substantial irony on an early
    MISRA call where there was uncertainly between people as to what it
    even stood for.<br>
    <br>
    These are the thoughts running through the minds of people reading
    the code when they don't understand what they're looking at.<br>
    <br>
    <br>
    Annotations for other static analysers intentionally use their own
    name so they're googleable.<br>
    <br>
    Guess what SAF googles for?  Sustainable Aviation Fuel, or
    Specialist Automotive Finance.<br>
    <br>
    Fine, lets be more specific.  How about "Xen SAF" ?  Nope...<br>
    <br>
    "Did you mean to search for:<br>
    Xen SAVE Xen SAN Xen VIF Xenstaff"<br>
    <br>
    <br>
    Despite many of the search results referencing patches, or rendered
    documents out of docs/, not a single one of them gets
    documenting-violations.rst in any form, where the single definition
    of this term is hiding in a paragraph which spends 90% of it's
    volume describing a monotonically increasing number.<br>
    <br>
    Seriously, ChatGPT would struggle to make shit this good up.<br>
    <br>
    <br>
    The thing we tag with *must* be trivially recognisable as an
    analysis tag in order for others to be able to read the code. 
    Therefore, it needs to be an actual full world (hence the ANALYSIS
    suggestion), or an industry standard term (where MISRA does
    qualify).<br>
    <br>
    I don't exactly what it is - something else might turn out to be
    even better, but it is very important to be not this, for everyone
    else to have an easy time reading the code.<br>
    <br>
    <br>
    And reasoning along that line...  What's wrong with just /* octal-ok
    */ or /* womble-permitted */ so it's also apparent in context what
    the contentious issue might be and why it might be mitigated?<br>
    <br>
    The mechanics behind the scenes is just a trivial text replacement,
    and the tagging scheme does not have to uniform obfuscated
    identifier for that to work.<br>
    <br>
    ~Andrew<br>
  </body>
</html>

--------------ef3DVrdUzkii56b0riJoorEE--


From xen-devel-bounces@lists.xenproject.org Thu Oct 05 21:48:47 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 05 Oct 2023 21:48:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613140.953464 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoWD0-0001MX-0p; Thu, 05 Oct 2023 21:48:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613140.953464; Thu, 05 Oct 2023 21:48: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 1qoWCz-0001MQ-Tf; Thu, 05 Oct 2023 21:48:37 +0000
Received: by outflank-mailman (input) for mailman id 613140;
 Thu, 05 Oct 2023 21:48: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 1qoWCy-0001MG-Kc; Thu, 05 Oct 2023 21:48: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 1qoWCx-0001N7-Jt; Thu, 05 Oct 2023 21:48: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 1qoWCx-0007Tl-8X; Thu, 05 Oct 2023 21:48:35 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qoWCx-0005pj-6M; Thu, 05 Oct 2023 21:48: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=wlsvVQlEMvQEqOO6o6pQhJ0f1iW45h/dW51Lda2+5f8=; b=rDu5pgY2JzH+PzmwV7j643ZE6B
	r4Y3hWYUZPXPlO74Ps6eFSIis4RlrSS70GfFaDRwrcRk39uMdNWDYsM4cScRJjN2lNoU4frtqOjw/
	KuguqIazdqxMVWqcnuwt/7nF0gLGPQfVpApmrLIHje+hnugwfHzYl4aFOV4UhrpWoQPo=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183272-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 183272: regressions - FAIL
X-Osstest-Failures:
    xen-unstable-smoke:test-armhf-armhf-xl:guest-start/debian.repeat: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
    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=295514ff7550626de4fb5e43b51deb25d9331cd5
X-Osstest-Versions-That:
    xen=02c98966360b76052779b0186784437af88f301e
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 05 Oct 2023 21:48:35 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-armhf-armhf-xl         18 guest-start/debian.repeat fail REGR. vs. 183270

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                  295514ff7550626de4fb5e43b51deb25d9331cd5
baseline version:
 xen                  02c98966360b76052779b0186784437af88f301e

Last test of basis   183270  2023-10-05 13:03:52 Z    0 days
Testing same since   183272  2023-10-05 16:00:24 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.com>
  Roger Pau Monne <roger.pau@citrix.com>
  Roger Pau Monné <roger.pau@citrix.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                                          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 295514ff7550626de4fb5e43b51deb25d9331cd5
Author: Jan Beulich <jbeulich@suse.com>
Date:   Mon Oct 2 17:11:27 2023 +0200

    common: convert vCPU info area registration
    
    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).
    
    Signed-off-by: Jan Beulich <jbeulich@suse.com>
    Reviewed-by: Roger Pau Monné <roger.pau@citrix.com>
    Acked-by: Julien Grall <jgrall@amazon.com>
    Release-acked-by: Henry Wang <Henry.Wang@arm.com>

commit 60e544a8c58fdc720de05f6a721178f9516436d1
Author: Jan Beulich <jbeulich@suse.com>
Date:   Mon Oct 2 17:11:26 2023 +0200

    x86: introduce GADDR based secondary time area registration alternative
    
    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>
    Acked-by: Julien Grall <jgrall@amazon.com>
    Release-acked-by: Henry Wang <Henry.Wang@arm.com>

commit d5df44275e7af690ef18b56cc58762ce33a37149
Author: Jan Beulich <jbeulich@suse.com>
Date:   Mon Oct 2 17:11:25 2023 +0200

    domain: introduce GADDR based runstate area registration alternative
    
    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>
    Acked-by: Julien Grall <jgrall@amazon.com>
    Release-acked-by: Henry Wang <Henry.Wang@arm.com>

commit eadc288cbb0ddc432ff8c9c639fb25b7538325de
Author: Jan Beulich <jbeulich@suse.com>
Date:   Mon Oct 2 17:11:24 2023 +0200

    domain: map/unmap GADDR based shared guest areas
    
    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>
    Reviewed-by: Roger Pau Monné <roger.pau@citrix.com>
    Reviewed-by: Julien Grall <jgrall@amazon.com>
    Release-acked-by: Henry Wang <Henry.Wang@arm.com>

commit c4dde71e3e6961f817e2a574ce4918041cb30fb9
Author: Jan Beulich <jbeulich@suse.com>
Date:   Wed Oct 4 15:53:31 2023 +0200

    x86/mem-sharing: copy GADDR based shared guest areas
    
    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>
    Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
    Acked-by: Tamas K Lengyel <tamas@tklengyel.com>
    Release-acked-by: Henry Wang <Henry.Wang@arm.com>

commit c2e285ea0e6dea9cc6f4578e49d76075a153baa0
Author: Jan Beulich <jbeulich@suse.com>
Date:   Mon Oct 2 17:11:22 2023 +0200

    x86: update GADDR based secondary time area
    
    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>
    Release-acked-by: Henry Wang <Henry.Wang@arm.com>

commit e1ddb822ca2e3c332d42d508e2a5fbd7be018815
Author: Jan Beulich <jbeulich@suse.com>
Date:   Mon Oct 2 17:11:21 2023 +0200

    domain: update GADDR based runstate guest area
    
    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>
    Release-acked-by: Henry Wang <Henry.Wang@arm.com>

commit c4630e316240508f3fb619678adc4cfb47bf13d2
Author: Jan Beulich <jbeulich@suse.com>
Date:   Mon Oct 2 17:11:20 2023 +0200

    domain: GADDR based shared guest area registration alternative - teardown
    
    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>
    Acked-by: Roger Pau Monné <roger.pau@citrix.com>
    Release-acked-by: Henry Wang <Henry.Wang@arm.com>

commit 826da6e30cf37a22b3f32dba33477856125df91b
Author: Jan Beulich <jbeulich@suse.com>
Date:   Mon Oct 2 17:11:19 2023 +0200

    x86/shim: zap runstate and time area handles during shutdown
    
    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>
    Release-acked-by: Henry Wang <Henry.Wang@arm.com>

commit 9a499a84a2724757ad59b684e7858dfb60521290
Author: Roger Pau Monne <roger.pau@citrix.com>
Date:   Mon Oct 2 17:11:18 2023 +0200

    mem_sharing/fork: do not attempt to populate vcpu_info page
    
    Instead let map_vcpu_info() and it's call to get_page_from_gfn()
    populate the page in the child as needed.  Also remove the bogus
    copy_domain_page(): should be placed before the call to map_vcpu_info(),
    as the later can update the contents of the vcpu_info page.
    
    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.
    
    Fixes: 41548c5472a3 ('mem_sharing: VM forking')
    Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
    Acked-by: Tamas K Lengyel <tamas@tklengyel.com>
    Release-acked-by: Henry Wang <Henry.Wang@arm.com>
(qemu changes not included)


From xen-devel-bounces@lists.xenproject.org Thu Oct 05 22:01:22 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 05 Oct 2023 22:01:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613146.953474 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoWPD-0004tH-5a; Thu, 05 Oct 2023 22:01:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613146.953474; Thu, 05 Oct 2023 22:01: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 1qoWPD-0004tA-1Y; Thu, 05 Oct 2023 22:01:15 +0000
Received: by outflank-mailman (input) for mailman id 613146;
 Thu, 05 Oct 2023 22:01: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=mY76=FT=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qoWPB-0004t4-CI
 for xen-devel@lists.xenproject.org; Thu, 05 Oct 2023 22:01:13 +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 b12dee08-63ca-11ee-98d3-6d05b1d4d9a1;
 Fri, 06 Oct 2023 00:01:10 +0200 (CEST)
Received: by mail-wm1-x32e.google.com with SMTP id
 5b1f17b1804b1-405417465aaso13915735e9.1
 for <xen-devel@lists.xenproject.org>; Thu, 05 Oct 2023 15:01: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
 w15-20020adfcd0f000000b0030647449730sm102164wrm.74.2023.10.05.15.01.09
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Thu, 05 Oct 2023 15:01: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: b12dee08-63ca-11ee-98d3-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1696543270; x=1697148070; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:autocrypt:references:cc:to
         :from:content-language:subject:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=Z4FxpMGUKeQRF7wQNnUoJ5eDQiviGlEXhnDEsHHtDI8=;
        b=RNQrBbitL+4+isU+gP2z2bF4js4wwbD5OIcQGy9dzXUGGtD6aH/lTD8F1zlZGKL/Il
         8FO6fVdyLuXmBhy8NptJ9IScWlm3yjLksdZSutCxm+/ER4HNKwpZD8jiL1Al8IE68QqA
         cB2QmZk4DwicDZwreocHFWrs7rv4aVhF4u+5I=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1696543270; x=1697148070;
        h=content-transfer-encoding:in-reply-to:autocrypt: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=Z4FxpMGUKeQRF7wQNnUoJ5eDQiviGlEXhnDEsHHtDI8=;
        b=kOh6/QZOvs/WvN4IcjvG46ifl3GYz1xuElm1laYCB97t21dR60/AhqtoQmh7l91+Ze
         i7Qh0Kyw7rEn53HjUwLnCPvAnvusdJ+o8cBp5rMDwLWKjcZmwCNleFmCkO8RGI1MWnTV
         DGL1h5wRO3ddxCYoS+FdSxsoT8u/cN5zyz5xFjTFvLTIFiOIP7XJ+6Qp0iKGe55pCGuL
         BFNJD2GM1bUF1c9xchKNWzLPwkwAalOpO/DX/fmpdzVct8lYvTIFI1Rn7HiannR1pIsA
         JtvHYUwgQ4KndsSo54vjP+URAPOHOgF+jAQ9js6yLtbhanhSW/gWa3o4nfia1eqFQYzq
         vgdw==
X-Gm-Message-State: AOJu0Yz0BsQ70lMVSkIVYUBUX9MFh0zYGqTP6iCwdEMvUqYikZvEDC79
	jc9lRph59r6uh6MA95+GpH9NsA==
X-Google-Smtp-Source: AGHT+IHPoSF6QuSkFW58r5vF/yExpkee6ga8Bf8bsxYH62AeBZ77sgawqcdC6f1/68amuus3Hy1Vxw==
X-Received: by 2002:a1c:791a:0:b0:406:5308:cfeb with SMTP id l26-20020a1c791a000000b004065308cfebmr6260844wme.11.1696543269609;
        Thu, 05 Oct 2023 15:01:09 -0700 (PDT)
Message-ID: <50198a73-2f0c-4cf1-9173-86a8158b425b@citrix.com>
Date: Thu, 5 Oct 2023 23:01:08 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: SAF-x-safe rename
Content-Language: en-GB
From: Andrew Cooper <andrew.cooper3@citrix.com>
To: Luca Fancellu <Luca.Fancellu@arm.com>,
 Stefano Stabellini <sstabellini@kernel.org>
Cc: Jan Beulich <jbeulich@suse.com>, =?UTF-8?Q?Roger_Pau_Monn=C3=A9?=
 <roger.pau@citrix.com>, Bertrand Marquis <Bertrand.Marquis@arm.com>,
 "julien@xen.org" <julien@xen.org>,
 "george.dunlap@citrix.com" <george.dunlap@citrix.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <alpine.DEB.2.22.394.2310041633080.2348112@ubuntu-linux-20-04-desktop>
 <9CF5DF50-B857-4B1D-A210-E6355492CC3B@arm.com>
 <75d160be-4a8c-48c7-a972-201d78f0bdf0@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: <75d160be-4a8c-48c7-a972-201d78f0bdf0@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 05/10/2023 10:38 pm, andrew.cooper3@citrix.com wrote:
> On 05/10/2023 8:43 am, Luca Fancellu wrote:
>>> On 5 Oct 2023, at 00:46, Stefano Stabellini <sstabellini@kernel.org> wrote:
>>>
>>> Hi MISRA C working group (Jan, Roger, Andrew, Julien, Bertrand, George)
>>>
>>> in a recent thread Andrew pointed out that the SAF-2-safe tag is
>>> confusing and requested a rename:
>>> https://marc.info/?l=xen-devel&m=169634970821202
>>>
>>> As documented by docs/misra/documenting-violations.rst:
>>>
>>> - SAF-X-safe: This tag means that the next line of code contains a finding, but
>>>   the non compliance to the checker is analysed and demonstrated to be safe.
>>> - SAF-X-false-positive-<tool>: This tag means that the next line of code
>>>   contains a finding, but the finding is a bug of the tool.
>>>
>>>
>>> Today we have already 28 instances of SAF tags in the Xen codebase.
>>>
>>>
>>> Andrew suggested "ANALYSIS" instead of SAF so I would imagine:
>>> - ANALYSIS-X-safe
>>> - ANALYSIS-X-false-positive-<tool>
>>>
>>> If we really want a rename I suggest to rename SAF to SAFE:
>>> - SAFE-X-safe
>>> - SAFE-X-false-positive-<tool>
>>>
>>> Or maybe MISRA:
>>> - MISRA-X-safe
>>> - MISRA-X-false-positive-<tool>
>>>
>>> But I actually prefer to keep the tag as it is today.
>> We chose a generic name instead of MISRA because the tag can potentially suppress findings
>> of any checker, including MISRA checker.
>>
>> If SAF-* is confusing, what about FUSA-* ?
>>
>> Anyway I’m thinking that every name we could come up will be confusing at first, improving the
>> documentation would mitigate it (by improving I mean to improve the fruition of it, for example a
>> Read the docs documentation has the search bar, a quick copy paste of SAF- would make the
>> documenting-violations page visible.)
> 
> No - this is a problem *because* changing the documentation doesn't
> help.   (To be clear, updating the documentation is fine, but irrelevant
> here.)
> 
> 
> These are annotations in code.  They need to be:
> 
> 1) Short (obviously)
> 2) Clear to someone who isn't you (the collective us of this group)
> reading the code.
> 3) Non-intrusive, so as not to get in the way of the code.
> 
> and they must be all three.  This was even a principle given at the
> start of the MISRA work that we would not be deteriorating the quality
> of the code just to comply.
> 
> Point 3 is other thread about end-of-line, or block regions.  Lets leave
> that there because it's really a metadata transformation problem
> constrained by where the comments can acceptably go.
> 
> 
> Point 2 is the issue here, and "SAF-$N-safe" scores very highly on the
> WTF-o-meter *even* for people who know that it's something related to MISRA.
> 
> Seriously it looks like someone couldn't spell, and everyone else went
> with it (reflects poorly on everyone else).
> 
> And yes, I know it's an initialisation for something, but it's not even
> an industry standard term - it's a contraction of an intentionally
> generic phrase, with substantial irony on an early MISRA call where
> there was uncertainly between people as to what it even stood for.
> 
> These are the thoughts running through the minds of people reading the
> code when they don't understand what they're looking at.
> 
> 
> Annotations for other static analysers intentionally use their own name
> so they're googleable.
> 
> Guess what SAF googles for?  Sustainable Aviation Fuel, or Specialist
> Automotive Finance.
> 
> Fine, lets be more specific.  How about "Xen SAF" ?  Nope...
> 
> "Did you mean to search for:
> Xen SAVE Xen SAN Xen VIF Xenstaff"
> 
> 
> Despite many of the search results referencing patches, or rendered
> documents out of docs/, not a single one of them gets
> documenting-violations.rst in any form, where the single definition of
> this term is hiding in a paragraph which spends 90% of it's volume
> describing a monotonically increasing number.
> 
> Seriously, ChatGPT would struggle to make shit this good up.
> 
> 
> The thing we tag with *must* be trivially recognisable as an analysis
> tag in order for others to be able to read the code.  Therefore, it
> needs to be an actual full world (hence the ANALYSIS suggestion), or an
> industry standard term (where MISRA does qualify).
> 
> I don't exactly what it is - something else might turn out to be even
> better, but it is very important to be not this, for everyone else to
> have an easy time reading the code.
> 
> 
> And reasoning along that line...  What's wrong with just /* octal-ok */
> or /* womble-permitted */ so it's also apparent in context what the
> contentious issue might be and why it might be mitigated?
> 
> The mechanics behind the scenes is just a trivial text replacement, and
> the tagging scheme does not have to uniform obfuscated identifier for
> that to work.

Or, as has been pointed out to me in private, even

/* RULE-$N-safe */

would be an improvement because it's clearly related to some set of
guidelines.

~Andrew


From xen-devel-bounces@lists.xenproject.org Thu Oct 05 22:40:20 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 05 Oct 2023 22:40:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613153.953486 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoX0n-0004xk-2M; Thu, 05 Oct 2023 22:40:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613153.953486; Thu, 05 Oct 2023 22: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 1qoX0m-0004xJ-VP; Thu, 05 Oct 2023 22:40:04 +0000
Received: by outflank-mailman (input) for mailman id 613153;
 Thu, 05 Oct 2023 22:40:03 +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 1qoX0k-0004ZY-Tx
 for xen-devel@lists.xenproject.org; Thu, 05 Oct 2023 22:40: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 1qoX0k-0002fB-Jd; Thu, 05 Oct 2023 22:40: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 1qoX0k-0000XW-DK; Thu, 05 Oct 2023 22: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=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:Subject:
	From:References:Cc:To:MIME-Version:Date:Message-ID;
	bh=xNt4ozIYVFlYuKF5+xHEsfk7b0quVeu/DFk+/QXrhgY=; b=PANIW9L4MqCwQesyS0cSrdQZpQ
	jy7w6oLKSt0NpN0GzipIT864u3E1+XKWMO/GdzFrv3d/qyssBQpUuYobRCHr3iV+SXhhBFGTsABes
	F2xilkbdnsjaZPJ2RBIMKdzjlo9vxKkMJYTtRtwDQB0wyqxSmkdTKkD5hKsNmwNi0RaM=;
Message-ID: <d388b32b-af07-279b-82af-a961c60f8c50@xen.org>
Date: Thu, 5 Oct 2023 23:40: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.15.1
To: Andrew Cooper <andrew.cooper3@citrix.com>,
 Roger Pau Monne <roger.pau@citrix.com>, xen-devel@lists.xenproject.org,
 henry.wang@arm.com
Cc: Tamas K Lengyel <tamas@tklengyel.com>, Jan Beulich <jbeulich@suse.com>,
 George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>
References: <20231002151127.71020-1-roger.pau@citrix.com>
 <ff8994eb-968d-4bbb-a960-e5ca78ef658e@citrix.com>
From: Julien Grall <julien@xen.org>
Subject: Re: [CRITICAL for 4.18] Re: [PATCH v5 00/10] runstate/time area
 registration by (guest) physical address
In-Reply-To: <ff8994eb-968d-4bbb-a960-e5ca78ef658e@citrix.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

Hi Andrew,

On 05/10/2023 19:58, Andrew Cooper wrote:
> I see this series has been committed.  But it's broken in a really
> fundamental way.

Thanks for pointing out. But I'd like to understand how I come to only 
hear about those concerns on the series after committing. Did I miss any 
thread? Even if this series has been pending for over 6 months, should 
have I waited longer before committing?

Furthermore, Jan pointed out that this series was discussed recently 
during the x86 meeting. Did you raise any concern during the call and 
they were not carried on the ML?

> This is a new extension with persistent side effects to an existing part
> of the guest ABI.
> 
> Yet there doesn't appear to be any enumeration that the interface is
> available to begin with.  Requiring the guest to probe subops, and
> having no way to disable it on a per-domain basis is unacceptable, and
> has exploded on us more times than I care to count in security fixes
> alone, and that doesn't even cover the issues Amazon have reported over
> the years.

Indeed. But, AFAIR, all those patches got stuck because of diverging 
opinions between you and you. Can we finally come to an agreement on how 
to disable/expose a new hypercall/feature so we can move on?

> 
> Henry: Blocker for 4.18.   The absolutely bare minimum necessary to
> avoid reversion is some kind of positive enumeration that the two new
> hypercalls are available.

So to clarify, you would like both an interface for the guest and the 
toolstack for 4.18. Is this correct?

> 
> Otherwise I will be #if 0'ing out the new hypercalls before this ABI
> mistake gets set in stone.
> 
> 
> If this were x86-only it would need to be a CPUID flag, but it will need
> to be something arch-agnostic in this case. 

I think we can add two new flags in XENVER_get_features to indicate to 
the guest that the feature is supported. What do you think?

> The series should not have
> come without a proper per-domain control and toolstack integration,

I think this requirement should be written down in a document we can use 
for future reference and not expect people to remember what may have 
been said on the ML for previous hypercall addition.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Thu Oct 05 22:44:00 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 05 Oct 2023 22:44:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613158.953497 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoX4Y-0005uW-My; Thu, 05 Oct 2023 22:43:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613158.953497; Thu, 05 Oct 2023 22:43: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 1qoX4Y-0005uP-Jv; Thu, 05 Oct 2023 22:43:58 +0000
Received: by outflank-mailman (input) for mailman id 613158;
 Thu, 05 Oct 2023 22:43:57 +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 1qoX4X-0005uG-Ip
 for xen-devel@lists.xenproject.org; Thu, 05 Oct 2023 22:43:57 +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 1qoX4X-0002kK-Av; Thu, 05 Oct 2023 22:43:57 +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 1qoX4X-0000cH-5h; Thu, 05 Oct 2023 22:43: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:
	References:Cc:To:From:Subject:MIME-Version:Date:Message-ID;
	bh=FTV4XgWMHAHr3r6KuDSze0ROkp+JDvxOwFLYEqC9iio=; b=izoyUxi+420NLIlFQm/5TDIyxx
	xkTjAMaC7S5IbR7Mth/TsJMvsiBOD3AmSeH7Vgwb7KJTYhIIUqj2+mXiFMQYSSSpvkoJCEQCgkkAE
	dN0Ub2y34qvyuJS218ZbRRVO5t5zPT2sPCTicSOVmnYKUn9VMcOQ8s24j6xBuuaUl6MA=;
Message-ID: <cc7ca277-8a58-765f-18dd-d0fd220683d3@xen.org>
Date: Thu, 5 Oct 2023 23:43:55 +0100
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: [CRITICAL for 4.18] Re: [PATCH v5 00/10] runstate/time area
 registration by (guest) physical address
From: Julien Grall <julien@xen.org>
To: Andrew Cooper <andrew.cooper3@citrix.com>,
 Roger Pau Monne <roger.pau@citrix.com>, xen-devel@lists.xenproject.org,
 henry.wang@arm.com
Cc: Tamas K Lengyel <tamas@tklengyel.com>, Jan Beulich <jbeulich@suse.com>,
 George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>
References: <20231002151127.71020-1-roger.pau@citrix.com>
 <ff8994eb-968d-4bbb-a960-e5ca78ef658e@citrix.com>
 <d388b32b-af07-279b-82af-a961c60f8c50@xen.org>
In-Reply-To: <d388b32b-af07-279b-82af-a961c60f8c50@xen.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit



On 05/10/2023 23:40, Julien Grall wrote:
> Hi Andrew,
> 
> On 05/10/2023 19:58, Andrew Cooper wrote:
>> I see this series has been committed.  But it's broken in a really
>> fundamental way.
> 
> Thanks for pointing out. But I'd like to understand how I come to only 
> hear about those concerns on the series after committing. Did I miss any 
> thread? Even if this series has been pending for over 6 months, should 
> have I waited longer before committing?
> 
> Furthermore, Jan pointed out that this series was discussed recently 
> during the x86 meeting. Did you raise any concern during the call and 
> they were not carried on the ML?
> 
>> This is a new extension with persistent side effects to an existing part
>> of the guest ABI.
>>
>> Yet there doesn't appear to be any enumeration that the interface is
>> available to begin with.  Requiring the guest to probe subops, and
>> having no way to disable it on a per-domain basis is unacceptable, and
>> has exploded on us more times than I care to count in security fixes
>> alone, and that doesn't even cover the issues Amazon have reported over
>> the years.
> 
> Indeed. But, AFAIR, all those patches got stuck because of diverging 
> opinions between you and you. Can we finally come to an agreement on how 

The second 'you' was meant to be Jan. I didn't intend to say you were 
disagreing with yourself.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Thu Oct 05 22:53:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 05 Oct 2023 22:53:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613163.953507 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoXE6-0000Qw-JA; Thu, 05 Oct 2023 22:53:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613163.953507; Thu, 05 Oct 2023 22: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 1qoXE6-0000Qp-GT; Thu, 05 Oct 2023 22:53:50 +0000
Received: by outflank-mailman (input) for mailman id 613163;
 Thu, 05 Oct 2023 22:53: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=0G7T=FT=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qoXE5-0000Qj-Uy
 for xen-devel@lists.xenproject.org; Thu, 05 Oct 2023 22:53:49 +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 0a8ba946-63d2-11ee-98d3-6d05b1d4d9a1;
 Fri, 06 Oct 2023 00:53: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 7CAF0CE2473;
 Thu,  5 Oct 2023 22:53:45 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 77EF6C433C7;
 Thu,  5 Oct 2023 22:53: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: 0a8ba946-63d2-11ee-98d3-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696546424;
	bh=inUW/zl+amBdD3v2Aah04R5NSnHA50HPSvUoFdUhKVc=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=n0p6pfINoXGDlPCeQdZ3EtYjzsV1Os7l1sH5zTvmU56J4SmIUZx1sueyhKMfvSnWh
	 ihtafSc4D7IycNDOUFgqR5Mev5jI37qltyttOPaL2vRnX1PZbKasSf9/Y4FC7Ctj4J
	 ArwKfaHINHwSWwJgLyOeBJ3ZX1xK70Wy3aeP0TU54kN2/h7kI6bm2FGu8MmYLESlnL
	 QcfxgvaS7zSMAsBmFjQUoxB4oxdEWtdxBJV+jc2m36IsILGr4y2JpWe6nj9mNzaxEr
	 VHRvSBM0FlCkIE4n0erD9WvfjccCKq2JvSsJaALL7q0wXECWznqGu0w062PDw63Pe+
	 XJHikyip/qqAQ==
Date: Thu, 5 Oct 2023 15:53:41 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Julien Grall <julien@xen.org>
cc: xen-devel@lists.xenproject.org, Henry.Wang@arm.com, 
    dan.driscoll@siemens.com, arvind.raghuraman@siemens.com, 
    michal.orzel@amd.com, Julien Grall <jgrall@amazon.com>, 
    Stefano Stabellini <sstabellini@kernel.org>, 
    Bertrand Marquis <bertrand.marquis@arm.com>, 
    Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: Re: [PATCH] xen/arm: vtimer: Don't read/use the secure physical
 timer interrupt for ACPI
In-Reply-To: <20231005165454.18143-1-julien@xen.org>
Message-ID: <alpine.DEB.2.22.394.2310051552570.2348112@ubuntu-linux-20-04-desktop>
References: <20231005165454.18143-1-julien@xen.org>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Thu, 5 Oct 2023, Julien Grall wrote:
> From: Julien Grall <jgrall@amazon.com>
> 
> Per ACPI 6.5 section 5.2.25 ("Generic Timer Description Table (GTDT)"),
> the fields "Secure EL1 Timer GSIV/Flags" are optional and an OS running
> in non-secure world is meant to ignore the values.
> 
> However, Xen is trying to reserve the value. When booting on Graviton
> 2 metal instances, this would result to crash a boot because the
> value is 0 which is already reserved (I haven't checked for which device).
> While nothing prevent a PPI to be shared, the field should have been
> ignored by Xen.
> 
> For the Device-Tree case, I couldn't find a statement suggesting
> that the secure physical timer interrupt  is ignored. In fact, I have
> found some code in Linux using it as a fallback. That said, it should
> never be used.
> 
> As I am not aware of any issue when booting using Device-Tree, the
> physical timer interrupt is only ignored for ACPI.
> 
> Signed-off-by: Julien Grall <jgrall@amazon.com>
> 
> ----
> 
> This has not been tested on Graviton 2 because I can't seem to get
> the serial console working properly. @Dan would you be able to try it?
> 
> It would also be good to understand why 0 why already reserved. This
> may be a sign for other issues in the ACPI code.
> ---
>  xen/arch/arm/time.c   |  4 ----
>  xen/arch/arm/vtimer.c | 17 +++++++++++++++--
>  2 files changed, 15 insertions(+), 6 deletions(-)
> 
> diff --git a/xen/arch/arm/time.c b/xen/arch/arm/time.c
> index 3535bd8ac7c7..8fc14cd3ff62 100644
> --- a/xen/arch/arm/time.c
> +++ b/xen/arch/arm/time.c
> @@ -78,10 +78,6 @@ static int __init arch_timer_acpi_init(struct acpi_table_header *header)
>      irq_set_type(gtdt->non_secure_el1_interrupt, irq_type);
>      timer_irq[TIMER_PHYS_NONSECURE_PPI] = gtdt->non_secure_el1_interrupt;
>  
> -    irq_type = acpi_get_timer_irq_type(gtdt->secure_el1_flags);
> -    irq_set_type(gtdt->secure_el1_interrupt, irq_type);
> -    timer_irq[TIMER_PHYS_SECURE_PPI] = gtdt->secure_el1_interrupt;
> -
>      irq_type = acpi_get_timer_irq_type(gtdt->virtual_timer_flags);
>      irq_set_type(gtdt->virtual_timer_interrupt, irq_type);
>      timer_irq[TIMER_VIRT_PPI] = gtdt->virtual_timer_interrupt;
> diff --git a/xen/arch/arm/vtimer.c b/xen/arch/arm/vtimer.c
> index c54360e20266..e73ae33c1b58 100644
> --- a/xen/arch/arm/vtimer.c
> +++ b/xen/arch/arm/vtimer.c
> @@ -8,6 +8,7 @@
>   * Copyright (c) 2011 Citrix Systems.
>   */
>  
> +#include <xen/acpi.h>
>  #include <xen/lib.h>
>  #include <xen/perfc.h>
>  #include <xen/sched.h>
> @@ -61,10 +62,22 @@ int domain_vtimer_init(struct domain *d, struct xen_arch_domainconfig *config)
>  
>      config->clock_frequency = timer_dt_clock_frequency;
>  
> -    /* At this stage vgic_reserve_virq can't fail */
> +    /*
> +     * Per the ACPI specification, providing a secure EL1 timer
> +     * interrupt is optional and will be ignored by non-secure OS.
> +     * Therefore don't reserve the interrupt number for the HW domain
> +     * and ACPI.
> +     *
> +     * Note that we should still reserve it when using the Device-Tree
> +     * because the interrupt is not optional. That said, we are not
> +     * expecting any OS to use it when running on top of Xen.
> +     *
> +     * At this stage vgic_reserve_virq() is not meant to fail.
> +    */

NIT: minor code style issue that can be solved on commit

Assuming it passes Dan's test:

Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>


>      if ( is_hardware_domain(d) )
>      {
> -        if ( !vgic_reserve_virq(d, timer_get_irq(TIMER_PHYS_SECURE_PPI)) )
> +        if ( acpi_disabled &&
> +             !vgic_reserve_virq(d, timer_get_irq(TIMER_PHYS_SECURE_PPI)) )
>              BUG();
>  
>          if ( !vgic_reserve_virq(d, timer_get_irq(TIMER_PHYS_NONSECURE_PPI)) )
> -- 
> 2.40.1
> 


From xen-devel-bounces@lists.xenproject.org Thu Oct 05 23:18:43 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 05 Oct 2023 23:18:43 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613169.953517 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoXc1-0005ts-Gz; Thu, 05 Oct 2023 23:18:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613169.953517; Thu, 05 Oct 2023 23: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 1qoXc1-0005tl-Cw; Thu, 05 Oct 2023 23:18:33 +0000
Received: by outflank-mailman (input) for mailman id 613169;
 Thu, 05 Oct 2023 23:18: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 1qoXbz-0005tb-QG; Thu, 05 Oct 2023 23:18: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 1qoXbz-0003gT-GE; Thu, 05 Oct 2023 23:18: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 1qoXby-0001s7-Tk; Thu, 05 Oct 2023 23:18:31 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qoXby-0004uo-TF; Thu, 05 Oct 2023 23:18: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=PRXoNtSbgxWmKtApW4oSrjmEGaSMw0chC8L3ToxnXJE=; b=cAhvLmmAYCBHc6MugMH4nfDVzo
	TWULtboZmXqdV1tEvcZJ4y7KcCNpVVkJEFvJB4VTVEDhfHIwrfr37jgFs/dB6sFLSJgOdy01OKk3o
	8tHqvkIosNHHNSGQrpUXTpLcXal77szvlAy4W4WGw3wFpFWx5Q9T1mZrxLFYICqolywk=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183271-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 183271: tolerable FAIL - PUSHED
X-Osstest-Failures:
    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-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2: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-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-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-unstable:test-amd64-amd64-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-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-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-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-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt: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-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2: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-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1: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=02c98966360b76052779b0186784437af88f301e
X-Osstest-Versions-That:
    xen=3d2d9e90224c4f430a7ee1190fd3b871b99b0ba0
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 05 Oct 2023 23:18:30 +0000

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

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183266
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183266
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 183266
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183266
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183266
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183266
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 183266
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 183266
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183266
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183266
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 183266
 test-amd64-amd64-xl-qemuu-win7-amd64 12 windows-install       fail like 183266
 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-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-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-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-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-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-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-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-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-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-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                  02c98966360b76052779b0186784437af88f301e
baseline version:
 xen                  3d2d9e90224c4f430a7ee1190fd3b871b99b0ba0

Last test of basis   183266  2023-10-05 01:53:37 Z    0 days
Testing same since   183271  2023-10-05 15:38:39 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Ayan Kumar Halder <ayan.kumar.halder@amd.com>
  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                                 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
   3d2d9e9022..02c9896636  02c98966360b76052779b0186784437af88f301e -> master


From xen-devel-bounces@lists.xenproject.org Fri Oct 06 00:31:32 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 00:31:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613179.953531 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoYkP-0004jy-SC; Fri, 06 Oct 2023 00:31:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613179.953531; Fri, 06 Oct 2023 00:31: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 1qoYkP-0004jr-PC; Fri, 06 Oct 2023 00:31:17 +0000
Received: by outflank-mailman (input) for mailman id 613179;
 Fri, 06 Oct 2023 00:31: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=I3TD=FU=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qoYkN-0004jl-QI
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 00:31:16 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com
 (mail-db3eur04on0629.outbound.protection.outlook.com
 [2a01:111:f400:fe0c::629])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id a6b62e74-63df-11ee-9b0d-b553b5be7939;
 Fri, 06 Oct 2023 02:31:12 +0200 (CEST)
Received: from DU2P250CA0008.EURP250.PROD.OUTLOOK.COM (2603:10a6:10:231::13)
 by AS8PR08MB8659.eurprd08.prod.outlook.com (2603:10a6:20b:563::10) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.33; Fri, 6 Oct
 2023 00:31:09 +0000
Received: from DBAEUR03FT012.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:231:cafe::20) by DU2P250CA0008.outlook.office365.com
 (2603:10a6:10:231::13) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.37 via Frontend
 Transport; Fri, 6 Oct 2023 00:31:09 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DBAEUR03FT012.mail.protection.outlook.com (100.127.142.126) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6863.30 via Frontend Transport; Fri, 6 Oct 2023 00:31:08 +0000
Received: ("Tessian outbound ab4fc72d2cd4:v211");
 Fri, 06 Oct 2023 00:31:08 +0000
Received: from 4313ba9f991d.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 7E927C25-9903-401E-9290-C36F80284D74.1; 
 Fri, 06 Oct 2023 00:31:02 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 4313ba9f991d.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Fri, 06 Oct 2023 00:31:02 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by DB8PR08MB5308.eurprd08.prod.outlook.com (2603:10a6:10:f9::18) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.38; Fri, 6 Oct
 2023 00:30:59 +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.033; Fri, 6 Oct 2023
 00: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>
X-Inumbo-ID: a6b62e74-63df-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=oSnn/mF7Lfz6vch3eo+VA1RLiyHu6T4vUZy4MKXNENA=;
 b=azZwJQ6ha/E40lJmy5LvbnpDr5zb8qlLKAtSvY6M3M+7VgBw936ChA19qvYHAY4lunMy/5QEyvmeEQiPHQ/Z0PqLJtwsGjAz0Q6U4uzsWPna5/zaY1BetAWnqaTesy2AY7RA7fEeUrOcicJ6luR/V6jW3D9M8kYNKmQEQ6J3Ud0=
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: f110b827ecb81f09
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Q4swr+WyQByA/aLX+LhpVDVs00V1B/k2OpnnbMGmUVNos2RzBCAtU1rryzaA8Pt5pM82Q+tEmdIqNeg/AfQEEYyqbF0wkhvPNbgxw/DSi+ZNOK6fB/7VwmurKYyGoM4g5LQCWpRDucxU9yMeteP79352XHlHeTTYwH0eOn0Ew9hteZQ4dlcyBroPwUrfHr/NX5LOw1szblNH+W4b30IAs8sjufoNErwnkmhr/JjU1VM7iboiJv10ykCI38rF14PZ+g5fg8pQpihiyNqElJaxQJFj7YpfkHXNcMgnHTON8sNnA0ZFEkERW1F+AImzq3UglWGRzg5Y8XvAJX0q5K0SlQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=oSnn/mF7Lfz6vch3eo+VA1RLiyHu6T4vUZy4MKXNENA=;
 b=Mk/VDMQBNfVysEJyPtolCEC5IC6ARcXLTgBES6eJDJWs5LTdxWu+QonwdkYSbHFwwM8jn2mwmfF8NMgK/B1zwtELN7XHqIn84DzegKqExHtUyWwLehgtbPkEee5B+m5UbqkPaxeWWaDOQ711OeXQhgbK/YcMlsHJWbhncHTbP77JeuIfDej+6A58Z6n5D5Yk2EBxIXFeKtoGykvKPOoKn18gbl8l4k9F+mYI64nZGxa5Z6mr60ZWHRBZKBkksU7lxE2eDQIT00uDOzb65hVDC+HA85igYm3eQlNxmcUA/xARR6c6IIxWic6bvGFr5FjWtf44I+1+nCTDtB7v6IwhrQ==
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=oSnn/mF7Lfz6vch3eo+VA1RLiyHu6T4vUZy4MKXNENA=;
 b=azZwJQ6ha/E40lJmy5LvbnpDr5zb8qlLKAtSvY6M3M+7VgBw936ChA19qvYHAY4lunMy/5QEyvmeEQiPHQ/Z0PqLJtwsGjAz0Q6U4uzsWPna5/zaY1BetAWnqaTesy2AY7RA7fEeUrOcicJ6luR/V6jW3D9M8kYNKmQEQ6J3Ud0=
From: Henry Wang <Henry.Wang@arm.com>
To: Stefano Stabellini <sstabellini@kernel.org>
CC: Julien Grall <julien@xen.org>, Xen-devel <xen-devel@lists.xenproject.org>,
	"dan.driscoll@siemens.com" <dan.driscoll@siemens.com>,
	"arvind.raghuraman@siemens.com" <arvind.raghuraman@siemens.com>,
	"michal.orzel@amd.com" <michal.orzel@amd.com>, Julien Grall
	<jgrall@amazon.com>, Bertrand Marquis <Bertrand.Marquis@arm.com>, Volodymyr
 Babchuk <Volodymyr_Babchuk@epam.com>
Subject: Re: [PATCH] xen/arm: vtimer: Don't read/use the secure physical timer
 interrupt for ACPI
Thread-Topic: [PATCH] xen/arm: vtimer: Don't read/use the secure physical
 timer interrupt for ACPI
Thread-Index: AQHZ96y2RbIZC50OnEi+VKpAsgAIM7A7zjiAgAAbIgA=
Date: Fri, 6 Oct 2023 00:30:58 +0000
Message-ID: <1EFC3B0B-B10D-48C0-96F7-6F0067DC0EA5@arm.com>
References: <20231005165454.18143-1-julien@xen.org>
 <alpine.DEB.2.22.394.2310051552570.2348112@ubuntu-linux-20-04-desktop>
In-Reply-To:
 <alpine.DEB.2.22.394.2310051552570.2348112@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_|DB8PR08MB5308:EE_|DBAEUR03FT012:EE_|AS8PR08MB8659:EE_
X-MS-Office365-Filtering-Correlation-Id: 412ed139-23ee-44cb-6eb0-08dbc60388d5
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:
 O0i2bXEOqbilhoU7ooz3mTK8gqWeoTTX+nF/IAm2fVd+d6o7XkoO5HZl2rX3itfl7vL/uPChQWRnz9YFuO6PZ17dOKEy8eaMt0I6PD4+NUR7VOBCezUifwPfZpgYYAv3U9izFq+M6iMRB2gEUxYRxU9cnOUliZSgncI0DZFKdZGW52Z/i5FtLzPlKE/oaU16TaKI59jIKUcuR320ftxhZ1tfjmphJ6tZk9yBPAyNqtqIwYbGOzRh3ZYSSNeY2+7ivOO8wlAL8EytfzZd8o/K7EqJqg2gcooUtvCRYbQ/MoyNQOLSGpzfGqdHFsZ2jzvlAmt//LsIXfvcdJPa//Ka3j2ppRNy+JP74+opyMbLbE9cbhtVp6Ee82nK1ktGC4kMCfjzReOyUsvUjKClBnYI5wOO9db1fOit332zs/kaCttFckNR5Rgi971fm4olyuUu2UrSeNBPs+Lw+9Xk7mzLq/4QR2Aobx+9L9uTyYqPbsmZuwJZ2+XEiIroxqWR5zblujLIlY89Zk9vhAzVsQx6w7u8wLJz0BiBVWyuHxUJEE0j8Kahsxqd09OKndAB/buTR1e2wwXxtEJ2e5T982SBBi5fMsjkkmVHSs8vHck8nPJR8cOSbxDgCurRiM75az9CkPxUcUum3C+jolqfm/32EA==
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)(376002)(39860400002)(346002)(230922051799003)(451199024)(64100799003)(1800799009)(186009)(122000001)(8676002)(8936002)(4326008)(5660300002)(6512007)(53546011)(6486002)(6506007)(33656002)(2906002)(86362001)(38100700002)(38070700005)(478600001)(41300700001)(316002)(26005)(66476007)(66946007)(76116006)(2616005)(83380400001)(71200400001)(6916009)(91956017)(66556008)(66446008)(54906003)(64756008)(36756003)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="us-ascii"
Content-ID: <68A01BC25A566947AA7EDCA8F1AF13B9@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB8PR08MB5308
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:
 DBAEUR03FT012.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	3ca60870-130a-4c24-b425-08dbc6038309
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	3+bVA8gjcFoU3/3JHvcGaniyg4wZNRiUv1hfge4w1++lohGrmj/u7swuvRl6A8IpBnNm8AFSC60br5VA1YctTGU3Q10LyAlmkuK5yQc+ksC+9k+Mh1FjSlM1HhrmY/Lgd7yY8pCNOW07/IefsaYGYjvSBIZs8+v4D6HocUG+rcp2fLhVd7uDeYno0hvosHmC7pRtMBIO63gU/F+VVqgbKqfd4arJ0dWLBw3nO/YXlngrbiN7qFUnmHrdSBoM+iV4DOhC8tImTvQrWWZj6mw3FH8vwT2Ag6VFXk2CeqBJDiCdIFL7JAY3vWVUXzrX3gPS4EEpRNa7IwVE5CGm1I2hVMgG33JdfGia0v6wtd68yBIQylTHP059GtjD4WG+f2FU9QFeP8jLNbQcVm6na/xXfzI1jIdh521AztKoX+BUDjKCnPvf6dLsUk5J2xuBCBRQ3pOJajungCz7rxGT1CSQv52ez1Vr2H37Z1D9WW8yNv1fIvGaok+v2vHPH8aJ06Lli1ybOEV/WY3OcyyB+89/pF9SA2qg0T12V/H3tBMP+QJoAI9Uh3iqDMSKUJfgqTlU6W7rslrEP9O+E8RKzZ58yk8L32JTS9wIqzIBxy3lit17fPTmPUkgiPZEIkNzxOY5vG9HOBG/jYBaEPGoVaKpzR/Ii9NmQ4cMr8QyGiJE6MHlXXPm1BflrjHSPpD4wWYqL61L/IjsR9JmSXNoOqmutWGPvuPwQWV1q96eGAw9BG3Zx3mvQzTYgN1jgVBo6CSi
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)(230922051799003)(82310400011)(451199024)(64100799003)(186009)(1800799009)(46966006)(36840700001)(40470700004)(6862004)(40480700001)(4326008)(33656002)(8936002)(86362001)(8676002)(5660300002)(40460700003)(2906002)(36756003)(26005)(356005)(81166007)(82740400003)(478600001)(6512007)(83380400001)(107886003)(6486002)(2616005)(6506007)(53546011)(336012)(316002)(36860700001)(70206006)(70586007)(54906003)(41300700001)(47076005);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Oct 2023 00:31:08.5635
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 412ed139-23ee-44cb-6eb0-08dbc60388d5
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:
	DBAEUR03FT012.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB8659

Hi,

> On Oct 6, 2023, at 06:53, Stefano Stabellini <sstabellini@kernel.org> wro=
te:
>=20
> On Thu, 5 Oct 2023, Julien Grall wrote:
>> From: Julien Grall <jgrall@amazon.com>
>>=20
>> Per ACPI 6.5 section 5.2.25 ("Generic Timer Description Table (GTDT)"),
>> the fields "Secure EL1 Timer GSIV/Flags" are optional and an OS running
>> in non-secure world is meant to ignore the values.
>>=20
>> However, Xen is trying to reserve the value. When booting on Graviton
>> 2 metal instances, this would result to crash a boot because the
>> value is 0 which is already reserved (I haven't checked for which device=
).
>> While nothing prevent a PPI to be shared, the field should have been
>> ignored by Xen.
>>=20
>> For the Device-Tree case, I couldn't find a statement suggesting
>> that the secure physical timer interrupt  is ignored. In fact, I have
>> found some code in Linux using it as a fallback. That said, it should
>> never be used.
>>=20
>> As I am not aware of any issue when booting using Device-Tree, the
>> physical timer interrupt is only ignored for ACPI.
>>=20
>> Signed-off-by: Julien Grall <jgrall@amazon.com>
>>=20
>> ----
>>=20
>> This has not been tested on Graviton 2 because I can't seem to get
>> the serial console working properly. @Dan would you be able to try it?
>>=20
>> It would also be good to understand why 0 why already reserved. This
>> may be a sign for other issues in the ACPI code.
>> ---
>> xen/arch/arm/time.c   |  4 ----
>> xen/arch/arm/vtimer.c | 17 +++++++++++++++--
>> 2 files changed, 15 insertions(+), 6 deletions(-)
>>=20
>> diff --git a/xen/arch/arm/time.c b/xen/arch/arm/time.c
>> index 3535bd8ac7c7..8fc14cd3ff62 100644
>> --- a/xen/arch/arm/time.c
>> +++ b/xen/arch/arm/time.c
>> @@ -78,10 +78,6 @@ static int __init arch_timer_acpi_init(struct acpi_ta=
ble_header *header)
>>     irq_set_type(gtdt->non_secure_el1_interrupt, irq_type);
>>     timer_irq[TIMER_PHYS_NONSECURE_PPI] =3D gtdt->non_secure_el1_interru=
pt;
>>=20
>> -    irq_type =3D acpi_get_timer_irq_type(gtdt->secure_el1_flags);
>> -    irq_set_type(gtdt->secure_el1_interrupt, irq_type);
>> -    timer_irq[TIMER_PHYS_SECURE_PPI] =3D gtdt->secure_el1_interrupt;
>> -
>>     irq_type =3D acpi_get_timer_irq_type(gtdt->virtual_timer_flags);
>>     irq_set_type(gtdt->virtual_timer_interrupt, irq_type);
>>     timer_irq[TIMER_VIRT_PPI] =3D gtdt->virtual_timer_interrupt;
>> diff --git a/xen/arch/arm/vtimer.c b/xen/arch/arm/vtimer.c
>> index c54360e20266..e73ae33c1b58 100644
>> --- a/xen/arch/arm/vtimer.c
>> +++ b/xen/arch/arm/vtimer.c
>> @@ -8,6 +8,7 @@
>>  * Copyright (c) 2011 Citrix Systems.
>>  */
>>=20
>> +#include <xen/acpi.h>
>> #include <xen/lib.h>
>> #include <xen/perfc.h>
>> #include <xen/sched.h>
>> @@ -61,10 +62,22 @@ int domain_vtimer_init(struct domain *d, struct xen_=
arch_domainconfig *config)
>>=20
>>     config->clock_frequency =3D timer_dt_clock_frequency;
>>=20
>> -    /* At this stage vgic_reserve_virq can't fail */
>> +    /*
>> +     * Per the ACPI specification, providing a secure EL1 timer
>> +     * interrupt is optional and will be ignored by non-secure OS.
>> +     * Therefore don't reserve the interrupt number for the HW domain
>> +     * and ACPI.
>> +     *
>> +     * Note that we should still reserve it when using the Device-Tree
>> +     * because the interrupt is not optional. That said, we are not
>> +     * expecting any OS to use it when running on top of Xen.
>> +     *
>> +     * At this stage vgic_reserve_virq() is not meant to fail.
>> +    */
>=20
> NIT: minor code style issue that can be solved on commit
>=20
> Assuming it passes Dan's test:
>=20
> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>

Release-acked-by: Henry Wang <Henry.Wang@arm.com>

Kind regards,
Henry

>=20
>=20
>>     if ( is_hardware_domain(d) )
>>     {
>> -        if ( !vgic_reserve_virq(d, timer_get_irq(TIMER_PHYS_SECURE_PPI)=
) )
>> +        if ( acpi_disabled &&
>> +             !vgic_reserve_virq(d, timer_get_irq(TIMER_PHYS_SECURE_PPI)=
) )
>>             BUG();
>>=20
>>         if ( !vgic_reserve_virq(d, timer_get_irq(TIMER_PHYS_NONSECURE_PP=
I)) )
>> --=20
>> 2.40.1
>>=20



From xen-devel-bounces@lists.xenproject.org Fri Oct 06 01:03:06 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 01:03:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613184.953540 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoZF4-0000f1-7K; Fri, 06 Oct 2023 01:02:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613184.953540; Fri, 06 Oct 2023 01:02: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 1qoZF4-0000eu-4W; Fri, 06 Oct 2023 01:02:58 +0000
Received: by outflank-mailman (input) for mailman id 613184;
 Fri, 06 Oct 2023 01:02: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=ehtw=FU=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qoZF3-0000eo-G6
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 01:02: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 136e27f7-63e4-11ee-9b0d-b553b5be7939;
 Fri, 06 Oct 2023 03:02: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 E3345B815BB;
 Fri,  6 Oct 2023 01:02:51 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 0ADDBC433C7;
 Fri,  6 Oct 2023 01:02: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: 136e27f7-63e4-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696554171;
	bh=2Aj0D8IfiYuZHOfqGduWSWTG45SaQX/h57tmXrpYEsg=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=ONaqcMddpr7us0xIjUbBCLpge0u7OcEpHUwl2i8A0TfjuMK40+W5V4R5/CkBmfVvQ
	 v9L1pqGI0DBXWMMMBulDEufVy1C9q/+piDC0ov/mhQkV/t4RLCNNDx2HSQaQR0dQVy
	 2ZF8vCO1ImGTD4BjAUQ4fDr4etP5if/eyhsrh7jdAWZBpjIhGpFsqTbO1ZvIjBWYQY
	 wBmyZl5gtziyiSPEhkKgL5zHfaiJ6lwpQCN93kZK9E8w3Nb6LLxQrOjTvPTMnK8fa/
	 0CEuXtrcBnNW79OPJT0nLK+5xJ5c+wovGy1qwCVmOYlGlSV/EO8u1HSePdS1A7UQDi
	 Z/hf3cbWkuvbQ==
Date: Thu, 5 Oct 2023 18:02:47 -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>, 
    Nicola Vetrini <nicola.vetrini@bugseng.com>, 
    Xen-devel <xen-devel@lists.xenproject.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>, 
    Jan Beulich <jbeulich@suse.com>, 
    =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>, 
    Henry Wang <Henry.Wang@arm.com>, 
    Simone Ballarin <simone.ballarin@bugseng.com>, 
    Doug Goldstein <cardoe@cardoe.com>, 
    George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>, 
    Wei Liu <wl@xen.org>, Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [XEN PATCH] xen: Add SAF deviations for MISRA C:2012 Rule 7.1
In-Reply-To: <9DD525D9-DB6D-4888-9266-FB45906A0E0F@arm.com>
Message-ID: <alpine.DEB.2.22.394.2310051756360.2348112@ubuntu-linux-20-04-desktop>
References: <338d8e574db943a86c7605e4c6d9a299d45f067d.1696347345.git.nicola.vetrini@bugseng.com> <alpine.DEB.2.22.394.2310031345190.2348112@ubuntu-linux-20-04-desktop> <e1736215-52ba-4737-9da3-8f1ba7e832a6@citrix.com> <DB96C095-5FAF-40A1-9CA8-002291AA1933@arm.com>
 <2894008e8f612296da84267346ae4240@bugseng.com> <B00BC78B-E707-4043-A0B4-D320C6717472@arm.com> <alpine.DEB.2.22.394.2310041625170.2348112@ubuntu-linux-20-04-desktop> <9DD525D9-DB6D-4888-9266-FB45906A0E0F@arm.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: multipart/mixed; BOUNDARY="8323329-866333580-1696554125=:2348112"
Content-ID: <alpine.DEB.2.22.394.2310051802100.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-866333580-1696554125=:2348112
Content-Type: text/plain; CHARSET=UTF-8
Content-Transfer-Encoding: 8BIT
Content-ID: <alpine.DEB.2.22.394.2310051802101.2348112@ubuntu-linux-20-04-desktop>

On Thu, 5 Oct 2023, Luca Fancellu wrote:
> > On 5 Oct 2023, at 00:32, Stefano Stabellini <sstabellini@kernel.org> wrote:
> > 
> > On Wed, 4 Oct 2023, Luca Fancellu wrote:
> >>> On 4 Oct 2023, at 11:29, Nicola Vetrini <nicola.vetrini@bugseng.com> wrote:
> >>> On 04/10/2023 12:06, Luca Fancellu wrote:
> >>>> Hi Nicola,
> >>>>> On 4 Oct 2023, at 10:56, andrew.cooper3@citrix.com wrote:
> >>>>> On 03/10/2023 9:46 pm, Stefano Stabellini wrote:
> >>>>>> On Tue, 3 Oct 2023, Nicola Vetrini wrote:
> >>>>>>> As specified in rules.rst, these constants can be used
> >>>>>>> in the code.
> >>>>>>> Their deviation is now accomplished by using a SAF comment,
> >>>>>>> rather than an ECLAIR configuration.
> >>>>>>> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
> >>>>>> "SAF" discussion aside that can be resolved elsewhere:
> >>>>>> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
> >>>>> Well no.  "SAF" aside (and SAF does need fixing before reposting this patch, otherwise it's just unnecessary churn), ...
> >>>>>>> diff --git a/xen/arch/x86/hvm/svm/svm.h b/xen/arch/x86/hvm/svm/svm.h
> >>>>>>> index d2a781fc3fb5..d0623b72ccfa 100644
> >>>>>>> --- a/xen/arch/x86/hvm/svm/svm.h
> >>>>>>> +++ b/xen/arch/x86/hvm/svm/svm.h
> >>>>>>> @@ -57,14 +57,23 @@ static inline void svm_invlpga(unsigned long linear, uint32_t asid)
> >>>>>>> #define INSTR_INT3 INSTR_ENC(X86EMUL_OPC( 0, 0xcc), 0)
> >>>>>>> #define INSTR_ICEBP INSTR_ENC(X86EMUL_OPC( 0, 0xf1), 0)
> >>>>>>> #define INSTR_HLT INSTR_ENC(X86EMUL_OPC( 0, 0xf4), 0)
> >>>>>>> +/* SAF-2-safe */
> >>>>>>> #define INSTR_XSETBV INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0321)
> >>>>>>> +/* SAF-2-safe */
> >>>>>>> #define INSTR_VMRUN INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0330)
> >>>>>>> +/* SAF-2-safe */
> >>>>>>> #define INSTR_VMCALL INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0331)
> >>>>>>> +/* SAF-2-safe */
> >>>>>>> #define INSTR_VMLOAD INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0332)
> >>>>>>> +/* SAF-2-safe */
> >>>>>>> #define INSTR_VMSAVE INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0333)
> >>>>>>> +/* SAF-2-safe */
> >>>>>>> #define INSTR_STGI INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0334)
> >>>>>>> +/* SAF-2-safe */
> >>>>>>> #define INSTR_CLGI INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0335)
> >>>>>>> +/* SAF-2-safe */
> >>>>>>> #define INSTR_INVLPGA INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0337)
> >>>>>>> +/* SAF-2-safe */
> >>>>>>> #define INSTR_RDTSCP INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0371)
> >>>>>>> #define INSTR_INVD INSTR_ENC(X86EMUL_OPC(0x0f, 0x08), 0)
> >>>>>>> #define INSTR_WBINVD INSTR_ENC(X86EMUL_OPC(0x0f, 0x09), 0)
> >>>>> ... this has broken a tabulated structure to have comments ahead of lines with octal numbers, while ...
> >>>>>>> diff --git a/xen/arch/x86/hvm/svm/emulate.c b/xen/arch/x86/hvm/svm/emulate.c
> >>>>>>> index aa2c61c433b3..c5e3341c6316 100644
> >>>>>>> --- a/xen/arch/x86/hvm/svm/emulate.c
> >>>>>>> +++ b/xen/arch/x86/hvm/svm/emulate.c
> >>>>>>> @@ -90,9 +90,9 @@ unsigned int svm_get_insn_len(struct vcpu *v, unsigned int instr_enc)
> >>>>>>> if ( !instr_modrm )
> >>>>>>> return emul_len;
> >>>>>>> - if ( modrm_mod == MASK_EXTR(instr_modrm, 0300) &&
> >>>>>>> - (modrm_reg & 7) == MASK_EXTR(instr_modrm, 0070) &&
> >>>>>>> - (modrm_rm & 7) == MASK_EXTR(instr_modrm, 0007) )
> >>>>>>> + if ( modrm_mod == MASK_EXTR(instr_modrm, 0300) && /* SAF-2-safe */
> >>>>>>> + (modrm_reg & 7) == MASK_EXTR(instr_modrm, 0070) && /* SAF-2-safe */
> >>>>>>> + (modrm_rm & 7) == MASK_EXTR(instr_modrm, 0007) ) /* SAF-2-safe */
> >>>>>>> return emul_len;
> >>>>>>> }
> >>>>> ... this has comments at the end of lines with octal numbers.
> >>>>> So which is it?
> >>>> I agree with Andrew here in this sense: the in-code comment is
> >>>> supposed to be on the line *before* the violation,
> >>>> not on the same line, so I’m also wondering how it is fixing the very
> >>>> first violation.
> >>>> Cheers,
> >>>> Luca
> >>> 
> >> 
> >> Hi Nicola,
> >> 
> >>> Actually it justifies what is on either the previous line or the same because it's
> >>> translated to /* -E> safe MC3R1.R7.1 1 */, where the last number is how many lines besides
> >>> the current one are to be deviated (e.g. you can have 0 deviate only the current line).
> >> 
> >> Just to understand, does this way:
> >> 
> >> <line A>
> >> /* -E> safe MC3R1.R7.1 1 */
> >> <line B>
> >> 
> >> Justifies only line B? Because I thought so, but now I want to be sure, otherwise it doesn’t act
> >> as intended.
> >> 
> >> 
> >>> Most of the times the current form is what's needed, as you would put the comment on a line
> >>> of its own. In the case of the if that would break the formatting. The downside of doing the same thing on the table is that the first entry not to be deviated would actually be deviated.
> >>> 
> >>> #define INSTR_INVD INSTR_ENC(X86EMUL_OPC(0x0f, 0x08), 0)
> >>> 
> >>> This may not be problematic, since 0 could be considered an octal constant, but is an
> >>> exception explicitly listed in the MISRA rule.
> >>> For the same reason the line
> >>> 
> >>> return emul_len;
> >>> 
> >>> is deviated by the above comment, but putting an octal constant there would for sure
> >>> be the result of a deliberate choice. There's the alternative of:
> >>> 
> >>>                         /* SAF-2-safe */
> >>>  if ( modrm_mod      == MASK_EXTR(instr_modrm, 0300) &&
> >>>                         /* SAF-2-safe */
> >>>      (modrm_reg & 7) == MASK_EXTR(instr_modrm, 0070) &&
> >>>                         /* SAF-2-safe */
> >>>      (modrm_rm & 7)  == MASK_EXTR(instr_modrm, 0007) )
> >>> 
> >>> to make it consistent with the table and avoid any "hidden" deviated line or, again,
> >>> the modification of the translation script so that it doesn't use a fixed "1" offset, which
> >>> is motivated by what you wrote on the thread of the modification of xen_analysis.py.
> >> 
> >> From the documentation:
> >> 
> >>    In the Xen codebase, these tags will be used to document and suppress findings:
> >> 
> >>    - SAF-X-safe: This tag means that the next line of code contains a finding, but
> >>      the non compliance to the checker is analysed and demonstrated to be safe.
> >> 
> >> I understand that Eclair is capable of suppressing also the line in which the in-code suppression
> >> comment resides, but these generic Xen in-code suppression comment are meant to be used
> >> by multiple static analysis tools and many of them suppress only the line next to the comment
> >> (Coverity, cppcheck).
> > 
> > As we see more realistic examples, it turns out that this is limiting.
> > 
> > Given that the SAF-2-safe comment needs to go through xen-analysis.py
> > translations anyway, could we implement something a bit more flexible in
> > xen-analysis.py?
> > 
> > For instance, could we implement a format with the number of lines of
> > code like this as we discussed in a previous thread?
> > 
> > /* SAF-2-safe start */
> > if ( modrm_mod      == MASK_EXTR(instr_modrm, 0300) &&
> >    (modrm_reg & 7) == MASK_EXTR(instr_modrm, 0070) &&
> >    (modrm_rm & 7)  == MASK_EXTR(instr_modrm, 0007) )
> > /* SAF-2-safe end */
> > 
> > Firstly, let ask Andrew, do you prefer this?
> > 
> > 
> > And also this second format:
> > 
> > if ( modrm_mod      == MASK_EXTR(instr_modrm, 0300) && /* SAF-2-safe */
> >    (modrm_reg & 7) == MASK_EXTR(instr_modrm, 0070) && /* SAF-2-safe */
> >    (modrm_rm & 7)  == MASK_EXTR(instr_modrm, 0007) ) /* SAF-2-safe */
> > 
> > 
> > Could we implement in xen-analysis.py a conversion that would turn the
> > two formats above that are not understood by cppcheck into:
> > 
> > /* cppcheck tag */
> > if ( modrm_mod      == MASK_EXTR(instr_modrm, 0300) &&
> > /* cppcheck tag */
> >    (modrm_reg & 7) == MASK_EXTR(instr_modrm, 0070) &&
> > /* cppcheck tag */
> >    (modrm_rm & 7)  == MASK_EXTR(instr_modrm, 0007) )
> > 
> > Or this is a problem because it would end up changing lines of code
> > numbers in the source file?
> 
> Yes this is the real issue why we didn’t do the /* ... start */ code /* ... end */

Right so the results would be all off by a few lines of code so when
you go to read the report generated by cppcheck, the references
wouldn't match anymore.

Before giving up and accepting that we are constrained to only formats
that don't change the LOC numbers, can we check what Coverity supports?

I am asking because we could get away with implementing the formats
above in cppcheck, given that cppcheck is open source. But for Coverity
we need to stay with what is already supported by it.

Does Coverity support anything other than:

<tag on previous line>
<next line is code with deviation>

?
--8323329-866333580-1696554125=:2348112--


From xen-devel-bounces@lists.xenproject.org Fri Oct 06 01:06:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 01:06:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613189.953551 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoZIQ-00020q-MV; Fri, 06 Oct 2023 01:06:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613189.953551; Fri, 06 Oct 2023 01: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 1qoZIQ-00020j-JR; Fri, 06 Oct 2023 01:06:26 +0000
Received: by outflank-mailman (input) for mailman id 613189;
 Fri, 06 Oct 2023 01:06: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=ehtw=FU=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qoZIP-00020K-LG
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 01:06:25 +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 8fca68ce-63e4-11ee-9b0d-b553b5be7939;
 Fri, 06 Oct 2023 03:06:23 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by sin.source.kernel.org (Postfix) with ESMTP id 1430DCE2541;
 Fri,  6 Oct 2023 01:06:18 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 7D823C433C7;
 Fri,  6 Oct 2023 01:06: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: 8fca68ce-63e4-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696554377;
	bh=lTEnYbQto6P618IBL2i/v5fZ+IWwo1INY+QxPbkcKQg=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=UBKoQPQDelINI532uviOJO4ZN5e1QtKCUf/YIM7rg7mg9o5ibaENPla7TAgzVC/jG
	 cE5zvrcowzR66+yDrTbJ5bDnnsDwhiKcwNy4i8mQD2nxrmXY5KaB/jC4uVNG9ZnUaE
	 sZkwJijS8yeE9p1mU1O0N2kekCQbo4qJSv+oSRA0KZO6/TfUZxM7EtBUHNxfTXGSHU
	 R470gk4wtEeO/OrVkMONDbwjpiLdWfR7EnH9tW2I29J5/jcfc6DCpqUhBkMCDFGfYJ
	 o+0MPeiTFcNfaMPqG4MCXYLaiaMZVWWPi1Ou1EtDscPRvn4QHy5KlXBCBIX6Kb/mXb
	 uKGofZVQppBdg==
Date: Thu, 5 Oct 2023 18:06:13 -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, Simone Ballarin <simone.ballarin@bugseng.com>, 
    Doug Goldstein <cardoe@cardoe.com>, 
    George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>, 
    Wei Liu <wl@xen.org>
Subject: Re: [XEN PATCH][for-4.19 1/2] xen: introduce a deviation for Rule
 11.9
In-Reply-To: <98bc1d90b93856ed7516a19114facf6528120248.1696494834.git.nicola.vetrini@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2310051803580.2348112@ubuntu-linux-20-04-desktop>
References: <cover.1696494834.git.nicola.vetrini@bugseng.com> <98bc1d90b93856ed7516a19114facf6528120248.1696494834.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 Thu, 5 Oct 2023, Nicola Vetrini wrote:
> The constant 0 is used instead of NULL in '__ACCESS_ONCE' as a
> compile-time check to detect non-scalar types; its usage for this
> purpose is documented in rules.rst as an exception.
> 
> Furthermore, the 'access_field' and 'typeof_field' macros are
> introduced as a general way to deal with accesses to structs
> without declaring a struct variable.
> 
> Cleanup of spurious MISRA deviations.
> 
> No functional change intended.
> 
> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>

Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>


> ---
> If NULL is not suitable for usage inside access_field, then 0 could
> be put there and the macro deviated.

I think that's OK but let's wait to see if anyone else has a different
feedback


> ---
>  .../eclair_analysis/ECLAIR/deviations.ecl     | 23 +++++++------------
>  docs/misra/rules.rst                          |  3 ++-
>  xen/include/xen/compiler.h                    |  5 +++-
>  xen/include/xen/kernel.h                      |  2 +-
>  4 files changed, 15 insertions(+), 18 deletions(-)
> 
> diff --git a/automation/eclair_analysis/ECLAIR/deviations.ecl b/automation/eclair_analysis/ECLAIR/deviations.ecl
> index d8170106b449..acd42386e0a9 100644
> --- a/automation/eclair_analysis/ECLAIR/deviations.ecl
> +++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
> @@ -110,10 +110,6 @@ neither functions nor pointers to functions."
>  -config=MC3R1.R5.5,reports={safe,"all_area(decl(node(enum_decl||record_decl||field_decl||param_decl||var_decl)&&!type(canonical(address((node(function||function_no_proto))))))||macro(function_like()))"}
>  -doc_end
> 
> --doc_begin="The use of these identifiers for both macro names and other entities
> -is deliberate and does not generate developer confusion."
> --config=MC3R1.R5.5,reports+={safe, "any_area(text(^\\s*/\\*\\s+SAF-[0-9]+-safe\\s+MC3R1\\.R5\\.5.*$, begin-1))"}
> --doc_end
> 
>  -doc_begin="The definition of macros and functions ending in '_bit' that use the
>  same identifier in 'bitops.h' is deliberate and safe."
> @@ -156,11 +152,6 @@ particular use of it done in xen_mk_ulong."
>  -config=MC3R1.R7.2,reports+={deliberate,"any_area(any_loc(macro(name(BUILD_BUG_ON))))"}
>  -doc_end
> 
> --doc_begin="The following string literals are assigned to pointers to non
> -const-qualified char."
> --config=MC3R1.R7.4,reports+={safe, "any_area(text(^\\s*/\\*\\s+SAF-[0-9]+-safe\\s+MC3R1\\.R7\\.4.*$, begin-1))"}
> --doc_end
> -
>  -doc_begin="Allow pointers of non-character type as long as the pointee is
>  const-qualified."
>  -config=MC3R1.R7.4,same_pointee=false
> @@ -222,12 +213,6 @@ definition is compiled-out or optimized-out by the compiler)"
>  # Series 9.
>  #
> 
> --doc_begin="The following variables are written before being set, therefore no
> -access to uninitialized memory locations happens, as explained in the deviation
> -comment."
> --config=MC3R1.R9.1,reports+={safe, "any_area(text(^\\s*/\\*\\s+SAF-[0-9]+-safe\\s+MC3R1\\.R9\\.1.*$, begin-1))"}
> --doc_end
> -
>  -doc_begin="Violations in files that maintainers have asked to not modify in the
>  context of R9.1."
>  -file_tag+={adopted_r9_1,"^xen/arch/arm/arm64/lib/find_next_bit\\.c$"}
> @@ -274,6 +259,14 @@ still non-negative."
>  -config=MC3R1.R10.1,etypes+={safe, "stmt(operator(logical)||node(conditional_operator||binary_conditional_operator))", "dst_type(ebool||boolean)"}
>  -doc_end
> 
> +#
> +# Series 11
> +#
> +
> +-doc_begin="This macro is used to check if the type is scalar, and for this purpose the use of 0 as a null pointer constant is deliberate."
> +-config=MC3R1.R11.9,reports+={deliberate, "any_area(any_loc(any_exp(macro(^__ACCESS_ONCE$))))"}
> +-doc_end
> +
>  ### Set 3 ###
> 
>  #
> diff --git a/docs/misra/rules.rst b/docs/misra/rules.rst
> index 3139ca7ae6dd..d5569696b3a8 100644
> --- a/docs/misra/rules.rst
> +++ b/docs/misra/rules.rst
> @@ -393,7 +393,8 @@ maintainers if you want to suggest a change.
>     * - `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 null pointer constant
> -     -
> +     - Using 0 as a null pointer constant to check if a type is scalar is
> +       allowed and always happens through the macro __ACCESS_ONCE.
> 
>     * - `Rule 12.5 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/R_12_05.c>`_
>       - Mandatory
> diff --git a/xen/include/xen/compiler.h b/xen/include/xen/compiler.h
> index dd99e573083f..15be9a750b23 100644
> --- a/xen/include/xen/compiler.h
> +++ b/xen/include/xen/compiler.h
> @@ -109,13 +109,16 @@
> 
>  #define offsetof(a,b) __builtin_offsetof(a,b)
> 
> +/* Access the field of structure type, without defining a local variable */
> +#define access_field(type, member) (((type *)NULL)->member)
> +#define typeof_field(type, member) typeof(access_field(type, member))
>  /**
>   * sizeof_field(TYPE, MEMBER)
>   *
>   * @TYPE: The structure containing the field of interest
>   * @MEMBER: The field to return the size of
>   */
> -#define sizeof_field(TYPE, MEMBER) sizeof((((TYPE *)0)->MEMBER))
> +#define sizeof_field(TYPE, MEMBER) sizeof(access_field(TYPE, MEMBER))
> 
>  #if !defined(__STDC_VERSION__) || __STDC_VERSION__ < 201112L
>  #define alignof __alignof__
> diff --git a/xen/include/xen/kernel.h b/xen/include/xen/kernel.h
> index 46b3c9c02625..2c5ed7736c99 100644
> --- a/xen/include/xen/kernel.h
> +++ b/xen/include/xen/kernel.h
> @@ -51,7 +51,7 @@
>   *
>   */
>  #define container_of(ptr, type, member) ({                      \
> -        typeof( ((type *)0)->member ) *__mptr = (ptr);          \
> +        typeof_field(type, member) *__mptr = (ptr);             \
>          (type *)( (char *)__mptr - offsetof(type,member) );})
> 
>  /*
> --
> 2.34.1
> 


From xen-devel-bounces@lists.xenproject.org Fri Oct 06 01:07:11 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 01:07:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613194.953561 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoZJ9-0002Yj-3h; Fri, 06 Oct 2023 01:07:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613194.953561; Fri, 06 Oct 2023 01: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 1qoZJ9-0002Yc-1A; Fri, 06 Oct 2023 01:07:11 +0000
Received: by outflank-mailman (input) for mailman id 613194;
 Fri, 06 Oct 2023 01: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=ehtw=FU=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qoZJ7-0002KB-Dr
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 01:07:09 +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 ab3755a0-63e4-11ee-98d3-6d05b1d4d9a1;
 Fri, 06 Oct 2023 03:07: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 834A561BE9;
 Fri,  6 Oct 2023 01:07:06 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 89024C433C8;
 Fri,  6 Oct 2023 01:07: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: ab3755a0-63e4-11ee-98d3-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696554426;
	bh=yc3CqMubtXVPF3l2MoXJ2cXECj3Yw020qJya+3m7tHE=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=nzU1mjf/cXU9+PlQiAElnZ/atkg2GF4VtqONDQuaoghr8IPRw4u24lTIr90b6GtxA
	 to26Gv+SrHFzXtNIcALG+wmcrhtHJ534ZIJp9YTLuyI/ppQuTp1yb/VKa6LWrOAiFV
	 W/YVuYMQSs0KkUI3ZyqRrlIdjLPonkzmebi4rTIDs1bXijYSzIeLQeYD7Tx+5VADJv
	 2ZiRfbhwkY86dVeeV8FSTvRqisWayWEjf5AyAsVpbm7ko7AoO44kxUoX4/NB5vEj3h
	 N6fleMepTI/Xe1iO4KTDVgEaqpig/5T33V6sKen20AZXTkpJA+5Cznbx9gY40KjUrX
	 JojxegCmqUxAA==
Date: Thu, 5 Oct 2023 18:07:03 -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>
Subject: Re: [XEN PATCH][for-4.19 2/2] xen/spinlock: fix use of 0 as a null
 pointer constant
In-Reply-To: <44395904e6cca0cc83a9d01abbc50047ecba961e.1696494834.git.nicola.vetrini@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2310051806570.2348112@ubuntu-linux-20-04-desktop>
References: <cover.1696494834.git.nicola.vetrini@bugseng.com> <44395904e6cca0cc83a9d01abbc50047ecba961e.1696494834.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 Thu, 5 Oct 2023, Nicola Vetrini wrote:
> The constant 0 is used as a null pointer constant, in
> violation of MISRA C:2012 Rule 11.9, in builds with
> CONFIG_DEBUG_LOCK_PROFILE defined.
> 
> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>

Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>


> ---
> Release builds should not be impacted by this
> ---
>  xen/include/xen/spinlock.h | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/xen/include/xen/spinlock.h b/xen/include/xen/spinlock.h
> index e7a1c1aa8988..16d933ae7ebe 100644
> --- a/xen/include/xen/spinlock.h
> +++ b/xen/include/xen/spinlock.h
> @@ -94,7 +94,7 @@ struct lock_profile_qhead {
>      int32_t                   idx;     /* index for printout */
>  };
>  
> -#define _LOCK_PROFILE(name) { 0, #name, &name, 0, 0, 0, 0, 0 }
> +#define _LOCK_PROFILE(name) { NULL, #name, &name, 0, 0, 0, 0, 0 }
>  #define _LOCK_PROFILE_PTR(name)                                               \
>      static struct lock_profile * const __lock_profile_##name                  \
>      __used_section(".lockprofile.data") =                                     \
> -- 
> 2.34.1
> 


From xen-devel-bounces@lists.xenproject.org Fri Oct 06 01:12:09 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 01:12:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613198.953571 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoZNs-00045J-MC; Fri, 06 Oct 2023 01:12:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613198.953571; Fri, 06 Oct 2023 01: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 1qoZNs-00045C-Iw; Fri, 06 Oct 2023 01:12:04 +0000
Received: by outflank-mailman (input) for mailman id 613198;
 Fri, 06 Oct 2023 01:12: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=ehtw=FU=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qoZNq-000456-EL
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 01:12:02 +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 59519057-63e5-11ee-98d3-6d05b1d4d9a1;
 Fri, 06 Oct 2023 03:12:00 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by sin.source.kernel.org (Postfix) with ESMTP id 76D21CE2541;
 Fri,  6 Oct 2023 01:11:54 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id CEB5AC433C7;
 Fri,  6 Oct 2023 01:11: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: 59519057-63e5-11ee-98d3-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696554713;
	bh=reDSiwWo+WZI9vFfeu8DROlP66Dy6+X3INKaa8OPLp8=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=Pq//4YcbU2FKg1zY/rd/oFiTD06Yytnfaxn+Iu2iWeI5Cb4Btc9U5ypM1Cysc6iqs
	 Ji+TgQut1Cn/lTOlixah5PgNreJynf02soIuh2iWbUAybXNpmcIRXB1eTANBJSAuNU
	 vhgXRMEMOO4w1KNB5zhprfTZR/bqWiGywOmgxuQOPEVEWvpfc/zhQe2f/L8Rj5uZqM
	 jXEPdApxrDFmGtP2NZ5ZEWdNYJBS0vLz5uEa5iB/iBvDJyoYpKX57FQYzZMi1+/U5S
	 nHy7hb4tpU4pj2RLY5enGTZ+w2gD6yXuKuy/6dCbHlA/NdZJ2HTQt+IDx3i3eiiKyz
	 J7tPkfME5E5lw==
Date: Thu, 5 Oct 2023 18:11:51 -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, 
    George Dunlap <george.dunlap@citrix.com>, 
    Dario Faggioli <dfaggioli@suse.com>, 
    Stefano Stabellini <sstabellini@kernel.org>, 
    Henry Wang <henry.wang@arm.com>
Subject: Re: [XEN PATCH] xen/sched: address violations of MISRA C:2012 Rule
 8.2
In-Reply-To: <142049155775072b2a43eb2f052ffd0ab322867e.1696497380.git.federico.serafini@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2310051809190.2348112@ubuntu-linux-20-04-desktop>
References: <142049155775072b2a43eb2f052ffd0ab322867e.1696497380.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, 5 Oct 2023, Federico Serafini wrote:
> Add missing parameter names. No functional change.
> 
> Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
> ---
>  xen/common/sched/private.h | 93 ++++++++++++++++++++------------------
>  1 file changed, 49 insertions(+), 44 deletions(-)
> 
> diff --git a/xen/common/sched/private.h b/xen/common/sched/private.h
> index c516976c37..68de469537 100644
> --- a/xen/common/sched/private.h
> +++ b/xen/common/sched/private.h
> @@ -280,59 +280,64 @@ struct scheduler {
>  
>      int          (*global_init)    (void);
>  
> -    int          (*init)           (struct scheduler *);
> -    void         (*deinit)         (struct scheduler *);
> +    int          (*init)           (struct scheduler *s);
> +    void         (*deinit)         (struct scheduler *s);

I only checked 2 schedulers but it looks like they are using "ops" not
"s" everywhere in this function pointers parameters.


> -    void         (*free_udata)     (const struct scheduler *, void *);
> -    void *       (*alloc_udata)    (const struct scheduler *,
> -                                    struct sched_unit *, void *);
> -    void         (*free_pdata)     (const struct scheduler *, void *, int);
> -    void *       (*alloc_pdata)    (const struct scheduler *, int);
> -    void         (*deinit_pdata)   (const struct scheduler *, void *, int);
> +    void         (*free_udata)     (const struct scheduler *s, void *data);
> +    void *       (*alloc_udata)    (const struct scheduler *s,
> +                                    struct sched_unit *unit, void *data);

here they use "dd" instead of "data"


> +    void         (*free_pdata)     (const struct scheduler *s,
> +                                    void *data, int cpu);

pcpu instead of cpu

I won't go through the whole list but if you look at
xen/common/sched/credit2.c and xen/common/sched/credit.c you'll see that
the naming scheme is pretty aligned



> +    void *       (*alloc_pdata)    (const struct scheduler *s, int cpu);
> +    void         (*deinit_pdata)   (const struct scheduler *s,
> +                                    void *pcpu, int cpu);
>  
>      /* Returns ERR_PTR(-err) for error, NULL for 'nothing needed'. */
> -    void *       (*alloc_domdata)  (const struct scheduler *, struct domain *);
> +    void *       (*alloc_domdata)  (const struct scheduler *s,
> +                                    struct domain *d);
>      /* Idempotent. */
> -    void         (*free_domdata)   (const struct scheduler *, void *);
> +    void         (*free_domdata)   (const struct scheduler *s, void *data);
>  
> -    spinlock_t * (*switch_sched)   (struct scheduler *, unsigned int,
> -                                    void *, void *);
> +    spinlock_t * (*switch_sched)   (struct scheduler *s, unsigned int cpu,
> +                                    void *pdata, void *vdata);
>  
>      /* Activate / deactivate units in a cpu pool */
> -    void         (*insert_unit)    (const struct scheduler *,
> -                                    struct sched_unit *);
> -    void         (*remove_unit)    (const struct scheduler *,
> -                                    struct sched_unit *);
> -
> -    void         (*sleep)          (const struct scheduler *,
> -                                    struct sched_unit *);
> -    void         (*wake)           (const struct scheduler *,
> -                                    struct sched_unit *);
> -    void         (*yield)          (const struct scheduler *,
> -                                    struct sched_unit *);
> -    void         (*context_saved)  (const struct scheduler *,
> -                                    struct sched_unit *);
> -
> -    void         (*do_schedule)    (const struct scheduler *,
> -                                    struct sched_unit *, s_time_t,
> +    void         (*insert_unit)    (const struct scheduler *s,
> +                                    struct sched_unit *unit);
> +    void         (*remove_unit)    (const struct scheduler *s,
> +                                    struct sched_unit *unit);
> +
> +    void         (*sleep)          (const struct scheduler *s,
> +                                    struct sched_unit *unit);
> +    void         (*wake)           (const struct scheduler *s,
> +                                    struct sched_unit *unit);
> +    void         (*yield)          (const struct scheduler *s,
> +                                    struct sched_unit *unit);
> +    void         (*context_saved)  (const struct scheduler *s,
> +                                    struct sched_unit *unit);
> +
> +    void         (*do_schedule)    (const struct scheduler *s,
> +                                    struct sched_unit *unit, s_time_t now,
>                                      bool tasklet_work_scheduled);
>  
> -    struct sched_resource *(*pick_resource)(const struct scheduler *,
> -                                            const struct sched_unit *);
> -    void         (*migrate)        (const struct scheduler *,
> -                                    struct sched_unit *, unsigned int);
> -    int          (*adjust)         (const struct scheduler *, struct domain *,
> -                                    struct xen_domctl_scheduler_op *);
> -    void         (*adjust_affinity)(const struct scheduler *,
> -                                    struct sched_unit *,
> -                                    const struct cpumask *,
> -                                    const struct cpumask *);
> -    int          (*adjust_global)  (const struct scheduler *,
> -                                    struct xen_sysctl_scheduler_op *);
> -    void         (*dump_settings)  (const struct scheduler *);
> -    void         (*dump_cpu_state) (const struct scheduler *, int);
> -    void         (*move_timers)    (const struct scheduler *,
> -                                    struct sched_resource *);
> +    struct sched_resource *(*pick_resource)(const struct scheduler *s,
> +                                            const struct sched_unit *unit);
> +    void         (*migrate)        (const struct scheduler *s,
> +                                    struct sched_unit *unit, unsigned int cpu);
> +    int          (*adjust)         (const struct scheduler *s,
> +                                    struct domain *d,
> +                                    struct xen_domctl_scheduler_op *op);
> +    void         (*adjust_affinity)(const struct scheduler *s,
> +                                    struct sched_unit *unit,
> +                                    const struct cpumask *hard,
> +                                    const struct cpumask *soft);
> +    int          (*adjust_global)  (const struct scheduler *s,
> +                                    struct xen_sysctl_scheduler_op *op);
> +    void         (*dump_settings)  (const struct scheduler *s);
> +    void         (*dump_cpu_state) (const struct scheduler *s, int cpu);
> +    void         (*move_timers)    (const struct scheduler *s,
> +                                    struct sched_resource *sr);
>  };
>  
>  static inline int sched_init(struct scheduler *s)
> -- 
> 2.34.1
> 


From xen-devel-bounces@lists.xenproject.org Fri Oct 06 02:05:51 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 02:05:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613211.953627 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoaDq-0007Y0-AA; Fri, 06 Oct 2023 02:05:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613211.953627; Fri, 06 Oct 2023 02:05: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 1qoaDq-0007WJ-0U; Fri, 06 Oct 2023 02:05:46 +0000
Received: by outflank-mailman (input) for mailman id 613211;
 Fri, 06 Oct 2023 02:05: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=8zii=FU=invisiblethingslab.com=marmarek@srs-se1.protection.inumbo.net>)
 id 1qoaDo-0006iG-8T
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 02:05:44 +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 da2474ef-63ec-11ee-9b0d-b553b5be7939;
 Fri, 06 Oct 2023 04:05:42 +0200 (CEST)
Received: from compute2.internal (compute2.nyi.internal [10.202.2.46])
 by mailout.nyi.internal (Postfix) with ESMTP id A77E95C0346;
 Thu,  5 Oct 2023 22:05:41 -0400 (EDT)
Received: from mailfrontend1 ([10.202.2.162])
 by compute2.internal (MEProxy); Thu, 05 Oct 2023 22:05:41 -0400
Received: by mail.messagingengine.com (Postfix) with ESMTPA; Thu,
 5 Oct 2023 22:05:40 -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: da2474ef-63ec-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
	invisiblethingslab.com; h=cc:cc:content-transfer-encoding
	: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=1696557941; x=1696644341; bh=xU
	VmAHd/upd/HZf/2/vIJOjnVKPpjlKUVUtDDxC5laI=; b=WMr8VMYVeaAIYcJhht
	t+fPdJi4ksa1jU27ABf5bi1Bwvghhe6EoYH4+VJNjlvlc/3qyvPIqpt3te1RgGtn
	YBocQqddSHtJJ++sHhy4aYRkJDZk1m7oeOczcKW45w0cyynKEjZxT2SizUOvTqwE
	CiQdO1umXr9iVgY88W7RH97obnvmsEdSqgxA/XDKB0YBT+pnZf+0kulelt2pwMBR
	w5TgPqCQO57WH9gdRZ8okhg17t2YQ3w5AW7qGS3Z6fvX+UVjuhnP71FXSAKr4t9W
	Z0Non/g2S4t6YstN9emrAuQT9B7dT3+tsmdmy5w6oxTtujbZ5sBwYi7xkevoVs6v
	kZwQ==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
	messagingengine.com; h=cc:cc:content-transfer-encoding
	: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=
	1696557941; x=1696644341; bh=xUVmAHd/upd/HZf/2/vIJOjnVKPpjlKUVUt
	DDxC5laI=; b=U0SvVFbQOSN9+HsQMuN5UB63ruRmHXyzsQ+RL7Q8evZnOlZ9pW4
	QRU3IRP7vRl9ucXBuBX/WnT+yEawh8uzznrS8LBPuzEqxPYlXs1jc2Tku0mHbIqQ
	36F8NT1cCNIDqua5EbGGXJLGqC4+1FpnI/vxnCcX3LuSKE+og5SKtudQyLm96VR3
	URjtpNS5Tfxlp5Q30pWcDXfdgwC26tRiOtQ5s1RsZNmZ7Er5ckOBg7mvCPXDxoJc
	NdHsz8rwgk4juAE4fS06jMaJH6XtGDqLscR4bZAUGIqINrKhOjMocFyGallbimUL
	MdUGyigcWhNHrJpHlpsyX2eKX1gAL/ebI0g==
X-ME-Sender: <xms:dWsfZQuIleFHFj9yCm3o1G0I7Am5PcQrwOLYnKiFV1e_CZY-MtEwMw>
    <xme:dWsfZdfq_qD8Ba1I4sDkEo0BcG1DqOUkSbLVl7F70dU7YUMrECCO2uNA9TNTCDUgU
    mQyi5vVTz-66g>
X-ME-Received: <xmr:dWsfZbx_G3uAgDGN6UHqJqdkV3S74kZ14lIleBEaLepd_1RjzCyHOIUQ4AS2JMsbFTiL8oo4EeV4X88-7qwPX4_r-Dl8HN17rNw43TwNzGCbr1FWMW0X>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvkedrgeehgdehgecutefuodetggdotefrodftvf
    curfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfghnecu
    uegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmdenuc
    fjughrpefhvfevufffkffojghfgggtgfesthekredtredtjeenucfhrhhomhepofgrrhgv
    khcuofgrrhgtiiihkhhofihskhhiqdfikphrvggtkhhiuceomhgrrhhmrghrvghksehinh
    hvihhsihgslhgvthhhihhnghhslhgrsgdrtghomheqnecuggftrfgrthhtvghrnhepgfeu
    udehgfdvfeehhedujeehfeduveeugefhkefhheelgeevudetueeiudfggfffnecuvehluh
    hsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomhepmhgrrhhmrghrvghk
    sehinhhvihhsihgslhgvthhhihhnghhslhgrsgdrtghomh
X-ME-Proxy: <xmx:dWsfZTO3qy2Jf4FRu1T1n_wbGv8yxW7VpLzxMHAZgfT3lbsWvjoGMw>
    <xmx:dWsfZQ-X_BHSOYoBWEe6i-XTfviUDX0lLqFmDY8abtxzp1Y-yL8Iog>
    <xmx:dWsfZbVn_lyBBCF9_ttlfGlnWDYsUex0DZZ9wASwtIf1beickCU7kw>
    <xmx:dWsfZSLXVxaflCWKL4WENhov6OmaOUXQSf5_zefO5O49aa_twnbLqQ>
Feedback-ID: i1568416f:Fastmail
From: =?UTF-8?q?Marek=20Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>
To: xen-devel@lists.xenproject.org
Cc: Henry Wang <Henry.Wang@arm.com>,
	=?UTF-8?q?Marek=20Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>,
	Doug Goldstein <cardoe@cardoe.com>,
	Stefano Stabellini <sstabellini@kernel.org>
Subject: [PATCH 5/5] automation: extract QEMU log in relevant hardware tests
Date: Fri,  6 Oct 2023 04:05:19 +0200
Message-ID: <7844dbd88559ac5a52c0511bcfbc33cf835e9f56.1696557834.git-series.marmarek@invisiblethingslab.com>
X-Mailer: git-send-email 2.41.0
In-Reply-To: <cover.550599c54c91da4f8417fde358992e75bf8163c0.1696557834.git-series.marmarek@invisiblethingslab.com>
References: <cover.550599c54c91da4f8417fde358992e75bf8163c0.1696557834.git-series.marmarek@invisiblethingslab.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Let it be printed to the console too. QEMU and Linux messages have
different enough format that it should be possible to distinguish them.

Signed-off-by: Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
---
 automation/scripts/qubes-x86-64.sh | 1 +
 1 file changed, 1 insertion(+)

diff --git a/automation/scripts/qubes-x86-64.sh b/automation/scripts/qubes-x86-64.sh
index 842e6fae7204..fe80a1c84308 100755
--- a/automation/scripts/qubes-x86-64.sh
+++ b/automation/scripts/qubes-x86-64.sh
@@ -109,6 +109,7 @@ echo \"${passed}\"
 "
 
     dom0_check="
+tail -F /var/log/xen/qemu-dm-domU.log &
 until grep -q \"^domU Welcome to Alpine Linux\" /var/log/xen/console/guest-domU.log; do
     sleep 1
 done
-- 
git-series 0.9.1


From xen-devel-bounces@lists.xenproject.org Fri Oct 06 02:05:51 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 02:05:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613207.953594 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoaDn-0006mE-T3; Fri, 06 Oct 2023 02:05:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613207.953594; Fri, 06 Oct 2023 02: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 1qoaDn-0006ll-ND; Fri, 06 Oct 2023 02:05:43 +0000
Received: by outflank-mailman (input) for mailman id 613207;
 Fri, 06 Oct 2023 02: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=8zii=FU=invisiblethingslab.com=marmarek@srs-se1.protection.inumbo.net>)
 id 1qoaDm-0006iG-8I
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 02:05:42 +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 d6a105f6-63ec-11ee-9b0d-b553b5be7939;
 Fri, 06 Oct 2023 04:05:36 +0200 (CEST)
Received: from compute5.internal (compute5.nyi.internal [10.202.2.45])
 by mailout.nyi.internal (Postfix) with ESMTP id C2DD75C030A;
 Thu,  5 Oct 2023 22:05:35 -0400 (EDT)
Received: from mailfrontend1 ([10.202.2.162])
 by compute5.internal (MEProxy); Thu, 05 Oct 2023 22:05:35 -0400
Received: by mail.messagingengine.com (Postfix) with ESMTPA; Thu,
 5 Oct 2023 22:05:34 -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: d6a105f6-63ec-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
	invisiblethingslab.com; h=cc:cc:content-transfer-encoding
	: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=1696557935; x=1696644335; bh=nH
	ktnuR1LIoxBK0JLNtSz/hwE9AIqkiBxUTneESqhUo=; b=xezwTP9LNjstEVVq8y
	wJZyuDDgKDDcZkI1oOusGThT5vSYNbKfFI0Ro0H6/raa+68zlMvIHU4TH2Vg2lYa
	6LHU0GUeEKLQ5oiEU0NBZrFKfi0gVQeQh0fwm5VWncXNmzzgj9twj4YnD/g1MmNC
	mn6FwXU/l3M19LKcJEZn0xTSqCWPsR6PgxO8w1PmHfT7jgaKZlnzEmchP/LobGf2
	B0Rsay+qk0twVfzRg0JGfNGlRKxoptThLu1/j8tWEjLcHLyyiTMW44+mKUf8rSN1
	dU1UJNOCE74mNJXGy8FRLaR7fEIgj+2kC1Jzx4VD27NSrNKulLneouRcGetAMdZQ
	0lHA==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
	messagingengine.com; h=cc:cc:content-transfer-encoding
	: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=
	1696557935; x=1696644335; bh=nHktnuR1LIoxBK0JLNtSz/hwE9AIqkiBxUT
	neESqhUo=; b=nFleuiCRPyCob8HQfWIjAbSMc56J4J4vtH5/eKrQLV2DrwBd/sN
	WaiLfhMbK6mLTLTTtytLahyMPj0zJuMwE9YdqSLFAgeHzVcfLAY4Z7UcrRBEON26
	UzCILwdS7w81HrsGYI1EghjMtLS0gm9/NSt7VZrMOQHU9eu3+xpMTyuUiGdvsQHU
	FykBtJKnjfwsGogW0+T1anR5rLlaEHMyY69uxTJOCH7/AeNxnWFmGT0OYgmXR0/F
	VWOK3v2E+VWAsePksBomwQLZjdIf8Ti85BRquSPk5ilmQFcBL9dDzz/SRc826i4D
	Zp7FxPIcee0fuCglrhZy4T6WQFK74ROFLfw==
X-ME-Sender: <xms:b2sfZR70M8UxFZeEuhOu_ncPcGcRcErDINxTAjZAmKTPGPDNIRhjZQ>
    <xme:b2sfZe4AEPwBmyYpNXJjelL4jhk_moOc2a7EGZ_W4h7JiXvFExzNnX0DgeUl0tf_u
    ripcPdkq76yNg>
X-ME-Received: <xmr:b2sfZYeRbupjzztafMJcj9BRrb14gFqEYKMZHC6lyYWXasmxk8ynq39UGbtlGS0SZsD1BIsI72oJw8wwTkDliZNVh9gTdQ2RuuEIdmscNpkEA8dc4P4L>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvkedrgeehgdehhecutefuodetggdotefrodftvf
    curfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfghnecu
    uegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmdenuc
    fjughrpefhvfevufffkffojghfgggtgfesthekredtredtjeenucfhrhhomhepofgrrhgv
    khcuofgrrhgtiiihkhhofihskhhiqdfikphrvggtkhhiuceomhgrrhhmrghrvghksehinh
    hvihhsihgslhgvthhhihhnghhslhgrsgdrtghomheqnecuggftrfgrthhtvghrnhepgfeu
    udehgfdvfeehhedujeehfeduveeugefhkefhheelgeevudetueeiudfggfffnecuvehluh
    hsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomhepmhgrrhhmrghrvghk
    sehinhhvihhsihgslhgvthhhihhnghhslhgrsgdrtghomh
X-ME-Proxy: <xmx:b2sfZaKsKqf8b-pU3HJo7sxhDQuEQCCKyuMLOHASgeJgD1a8uXHocA>
    <xmx:b2sfZVLR4GEmi1ZRxuAvHb9qE3lLtHVxafuxhHNKoGL7l_WcAd9esA>
    <xmx:b2sfZTxoRz3XcMA5WAHQ3IbMPYqoRqu9iHAaVMnp78knJLuphv1usg>
    <xmx:b2sfZcX2oSsGkw29v8lzUnTKZkiOVNlzvV9XUuu09oCRtqJ_8bq0yg>
Feedback-ID: i1568416f:Fastmail
From: =?UTF-8?q?Marek=20Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>
To: xen-devel@lists.xenproject.org
Cc: Henry Wang <Henry.Wang@arm.com>,
	=?UTF-8?q?Marek=20Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>,
	Doug Goldstein <cardoe@cardoe.com>,
	Stefano Stabellini <sstabellini@kernel.org>
Subject: [PATCH 1/5] automation: include real-time view of the domU console log too
Date: Fri,  6 Oct 2023 04:05:15 +0200
Message-ID: <d2e566ab602df7a22c1974a0fc469e4b2653128f.1696557834.git-series.marmarek@invisiblethingslab.com>
X-Mailer: git-send-email 2.41.0
In-Reply-To: <cover.550599c54c91da4f8417fde358992e75bf8163c0.1696557834.git-series.marmarek@invisiblethingslab.com>
References: <cover.550599c54c91da4f8417fde358992e75bf8163c0.1696557834.git-series.marmarek@invisiblethingslab.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Passthrough domU console log to the serial console in real time, not
only after the test. First of all, this gives domU console also in case
of test failure. But also, allows correlation between domU and dom0 or
Xen messages.

To avoid ambiguity, add log prefix with 'sed'.

Signed-off-by: Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
---
 automation/scripts/qubes-x86-64.sh | 7 ++-----
 1 file changed, 2 insertions(+), 5 deletions(-)

diff --git a/automation/scripts/qubes-x86-64.sh b/automation/scripts/qubes-x86-64.sh
index 5f6052eef041..1e84e40a4afc 100755
--- a/automation/scripts/qubes-x86-64.sh
+++ b/automation/scripts/qubes-x86-64.sh
@@ -33,8 +33,6 @@ echo \"${passed}\"
 until grep -q \"${passed}\" /var/log/xen/console/guest-domU.log; do
     sleep 1
 done
-# get domU console content into test log
-tail -n 100 /var/log/xen/console/guest-domU.log
 echo \"${passed}\"
 "
 if [ "${test_variant}" = "dom0pvh" ]; then
@@ -59,8 +57,6 @@ echo deep > /sys/power/mem_sleep
 echo mem > /sys/power/state
 # now wait for resume
 sleep 5
-# get domU console content into test log
-tail -n 100 /var/log/xen/console/guest-domU.log
 xl list
 xl dmesg | grep 'Finishing wakeup from ACPI S3 state' || exit 1
 # check if domU is still alive
@@ -121,7 +117,6 @@ echo \"${passed}\"
 until grep -q \"^domU Welcome to Alpine Linux\" /var/log/xen/console/guest-domU.log; do
     sleep 1
 done
-tail -n 100 /var/log/xen/console/guest-domU.log
 "
 fi
 
@@ -169,6 +164,8 @@ ifconfig eth0 up
 ifconfig xenbr0 up
 ifconfig xenbr0 192.168.0.1
 
+# get domU console content into test log
+tail -F /var/log/xen/console/guest-domU.log 2>/dev/null | sed -e \"s/^/(domU) /\" &
 xl create /etc/xen/domU.cfg
 ${dom0_check}
 " > etc/local.d/xen.start
-- 
git-series 0.9.1


From xen-devel-bounces@lists.xenproject.org Fri Oct 06 02:05:51 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 02:05:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613206.953586 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoaDn-0006ie-Hy; Fri, 06 Oct 2023 02:05:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613206.953586; Fri, 06 Oct 2023 02: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 1qoaDn-0006iX-FP; Fri, 06 Oct 2023 02:05:43 +0000
Received: by outflank-mailman (input) for mailman id 613206;
 Fri, 06 Oct 2023 02: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=8zii=FU=invisiblethingslab.com=marmarek@srs-se1.protection.inumbo.net>)
 id 1qoaDl-0006iG-I2
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 02:05:42 +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 d5e78b50-63ec-11ee-9b0d-b553b5be7939;
 Fri, 06 Oct 2023 04:05:35 +0200 (CEST)
Received: from compute1.internal (compute1.nyi.internal [10.202.2.41])
 by mailout.nyi.internal (Postfix) with ESMTP id 33B495C02C3;
 Thu,  5 Oct 2023 22:05:34 -0400 (EDT)
Received: from mailfrontend1 ([10.202.2.162])
 by compute1.internal (MEProxy); Thu, 05 Oct 2023 22:05:34 -0400
Received: by mail.messagingengine.com (Postfix) with ESMTPA; Thu,
 5 Oct 2023 22:05:32 -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: d5e78b50-63ec-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
	invisiblethingslab.com; h=cc:cc:content-transfer-encoding
	:content-type:content-type:date:date:from:from:in-reply-to
	:message-id:mime-version:reply-to:sender:subject:subject:to:to;
	 s=fm2; t=1696557934; x=1696644334; bh=szqnVi6g9mbzzXBsjSHixzKi6
	OJf1LsbfZomEo+ZX1c=; b=omUDQ/vP9e8y/je1JHL3bB1tckknt/D5Qh/3JQ8df
	Yn03iDsLgOPOoAFaG8Ykhik/4ZPdBWaXiD9m+7WKoY1WvF4BBx86CZjbwxjFguQw
	qf6F1rvEeCtspqlHfoFrFty1YSdfzZjs0BM5kxxMoQNnWR5+RRdynCZedwvtXix9
	KF2PXvhEPvE5Y1Omaea0KP0woa4SWkn07xDrOU5g/9OueTp88M4JhWzbJu17DRPD
	dZL7EaejilMZGTbQAOOMDmOh5whm75KoTEggAGgLCKGMLhKoOCcNI2Z+anal/JUf
	dquJLSSdmjtkMnTaal1wHnQIR7LDUR+F6ymuew1Tw6w9w==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
	messagingengine.com; h=cc:cc:content-transfer-encoding
	:content-type: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=1696557934; x=1696644334; bh=s
	zqnVi6g9mbzzXBsjSHixzKi6OJf1LsbfZomEo+ZX1c=; b=rUVkRfRO3ux6+p06j
	4S7NMZAA5A6U7QqSyECs5N/7Ppb3RsHrxk9BgNaCG2GNWjtcYwTW8gPGV8yIBTsq
	7uSAq7PGqVuxC3D2IJbIffPkszJDKFzHOtWpEmkLw1UrK4yQQgSD4k4j3mv+EPcr
	IcOzYGpnQPVEx0RbGY5wVlSSxrNc7+rf02PUfCZ0qATahKfW0valSRpkH/pX60lU
	CICVlkjgXs6dw5rVNwcq7qafwGHUR9FQJCYGIgS4dOzJIDUDiT6x8Ef+QpEgmInx
	RGNEzbZ1N1gaLImXpjsDtf9yvXn75zn+rDXIjrshloSW3zssYhwGlFgSEj+YrD/i
	FAzmg==
X-ME-Sender: <xms:bWsfZe7Vq7bwCQXIrJWZkyBwT3QMOoqhsVz-fZUKpXb1CqYzN_6Q2w>
    <xme:bWsfZX4GvAwHwQVN6R6NTCYk201WwJbYhWWOD1QI9WIrLwPHlg8xMXBwAOSwYG8YM
    z5RjEbk_09mzg>
X-ME-Received: <xmr:bWsfZddPbJF48fb3sbDYxsOfPo3QUOdKQh0eHAWY2aVN-ZJgaKJHfF_QRxp-m7oLV2NtViLoCjFMOg1QZO-sX5HwlB-rVma6l0LBWC2uxCa2RyICSzLw>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvkedrgeehgdehhecutefuodetggdotefrodftvf
    curfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfghnecu
    uegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmdenuc
    fjughrpefhvfevufffkffogggtgfesthekredtredtjeenucfhrhhomhepofgrrhgvkhcu
    ofgrrhgtiiihkhhofihskhhiqdfikphrvggtkhhiuceomhgrrhhmrghrvghksehinhhvih
    hsihgslhgvthhhihhnghhslhgrsgdrtghomheqnecuggftrfgrthhtvghrnhepjeeufefh
    leeikeegfedtgfeiueeghfduteejtefhfeevheffjefhieeggfejkeelnecuffhomhgrih
    hnpehgihhtlhgrsgdrtghomhenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhep
    mhgrihhlfhhrohhmpehmrghrmhgrrhgvkhesihhnvhhishhisghlvghthhhinhhgshhlrg
    gsrdgtohhm
X-ME-Proxy: <xmx:bWsfZbKU8IsJupGjJ6FWdCN_0ZgIYtkYY8OZerxyOzkJsfXQkN_wvg>
    <xmx:bWsfZSIAY2d3buS0cQ3f7OhaMv0WmIp_0j0FvDKaudVFlfgX43rR-g>
    <xmx:bWsfZcw2hBNMGIiisDYnGbB7ae382GI2sorlOwgwjAC0DksvioOzSQ>
    <xmx:bmsfZZUvjbBsUMgdfdtN7eVs2SXjRxFyqdr2PI79327sMBBeePSpEA>
Feedback-ID: i1568416f:Fastmail
From: =?UTF-8?q?Marek=20Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>
To: xen-devel@lists.xenproject.org
Cc: Henry Wang <Henry.Wang@arm.com>,
	=?UTF-8?q?Marek=20Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>,
	Doug Goldstein <cardoe@cardoe.com>,
	Stefano Stabellini <sstabellini@kernel.org>
Subject: [PATCH 0/5] automation: cleanup hardware based tests
Date: Fri,  6 Oct 2023 04:05:14 +0200
Message-ID: <cover.550599c54c91da4f8417fde358992e75bf8163c0.1696557834.git-series.marmarek@invisiblethingslab.com>
X-Mailer: git-send-email 2.41.0
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

While working on tests for MSI-X, I did few cleanups of hw-based gitlab tests,
greatly reducing false positive messages in the test output.

After applying this series, the tests-artifacts/alpine/3.18 container needs to
be rebuilt.
Test run with container rebuilt (on my repo):
https://gitlab.com/xen-project/people/marmarek/xen/-/pipelines/1027467761

Cc-ing Henry for release ack.
---
Cc: Henry Wang <Henry.Wang@arm.com>
Cc:  Doug Goldstein <cardoe@cardoe.com>
Cc:  Stefano Stabellini <sstabellini@kernel.org>

Marek Marczykowski-Górecki (5):
  automation: include real-time view of the domU console log too
  automation: hide timeout countdown in log
  automation: cleanup test alpine install
  automation: improve checking for MSI/MSI-X in PCI passthrough tests
  automation: extract QEMU log in relevant hardware tests

 automation/gitlab-ci/test.yaml                    |  2 +-
 automation/scripts/qubes-x86-64.sh                | 29 ++++++----------
 automation/tests-artifacts/alpine/3.18.dockerfile |  7 +---
 3 files changed, 15 insertions(+), 23 deletions(-)

base-commit: 3d2d9e90224c4f430a7ee1190fd3b871b99b0ba0
-- 
git-series 0.9.1


From xen-devel-bounces@lists.xenproject.org Fri Oct 06 02:05:51 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 02:05:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613209.953612 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoaDp-0007GY-B8; Fri, 06 Oct 2023 02:05:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613209.953612; Fri, 06 Oct 2023 02: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 1qoaDp-0007Fx-5j; Fri, 06 Oct 2023 02:05:45 +0000
Received: by outflank-mailman (input) for mailman id 613209;
 Fri, 06 Oct 2023 02:05: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=8zii=FU=invisiblethingslab.com=marmarek@srs-se1.protection.inumbo.net>)
 id 1qoaDn-0006iR-Ht
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 02:05:43 +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 d8627954-63ec-11ee-98d3-6d05b1d4d9a1;
 Fri, 06 Oct 2023 04:05:40 +0200 (CEST)
Received: from compute1.internal (compute1.nyi.internal [10.202.2.41])
 by mailout.nyi.internal (Postfix) with ESMTP id BABED5C02C3;
 Thu,  5 Oct 2023 22:05:38 -0400 (EDT)
Received: from mailfrontend1 ([10.202.2.162])
 by compute1.internal (MEProxy); Thu, 05 Oct 2023 22:05:38 -0400
Received: by mail.messagingengine.com (Postfix) with ESMTPA; Thu,
 5 Oct 2023 22:05:37 -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: d8627954-63ec-11ee-98d3-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
	invisiblethingslab.com; h=cc:cc:content-transfer-encoding
	: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=1696557938; x=1696644338; bh=rY
	iD5wjT5lR/FmYnOgmeYV6aNTCLJNrgwGj8H4KUxtg=; b=UlzKbUIBbxLJr3a8gX
	YqxLVjLx3sMfERwZ556FD+jTPz3nnCLBgURZ8bW/7ScweJ5tZJCMs2Xanj7V+cxw
	cdh1vT6+Rg2m8RmVo95GXltF2oUv1e5PIbegfEtzNAq214yd301CLyhRQn5kkulk
	1TYYrM9Ii8RsCBAc80/2YFPoMEc1yIUGHdK+szWP5LpLBFnugpojVnkUP7z9zD1S
	A/mLJnuecr9L9LbWpi6iTwF68ppVcohMZTkTznb2q4X4R3hi3XC+A9EPPWPB9Bnl
	SR3cHO626IrAZvE3R5Z22LOzjyFmb6DKD2JiUiFjvkqXrPGe4aqEiSC2fxvz/O1t
	rICQ==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
	messagingengine.com; h=cc:cc:content-transfer-encoding
	: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=
	1696557938; x=1696644338; bh=rYiD5wjT5lR/FmYnOgmeYV6aNTCLJNrgwGj
	8H4KUxtg=; b=P6u5ijZAvXBsuuCbCheNwBNEnH6dmGP9CyiFjJmbifPEqFolUX2
	TXS/QyCER/JTrJLa3lBHC557/rPSOie2JpXd+AK0YUoVELG5Ein4GscXdU/CdksM
	aEeCtYmhKOrqzKaQPTBitFD2G6Casy4rQV83JR6bqWP0hrM58hTKsIzDVjDw45lk
	OxXuhc4KA5Fnndh3ueGYSpaxQ8yHm0AdYjWnUJZsJMzQ/mLuAwMxEcpZnTwPY77T
	tcS5bS6LAMxy7NiMvEK6F5FVu7mdgdmJrVKvhuBNHbmJ6UXSIp5KFHmA30PZ++ag
	ATX0OMO5e1o/ZDnJEZ1StmndK/WM9n7Id+A==
X-ME-Sender: <xms:cmsfZWR6hyUdaS2YWcE4Iyo-GvxOE9JBGgg_h7Dgqo3dOxII7WVXYg>
    <xme:cmsfZbwQy4bV6uImWP7youPuxAyUwRUwrvDS_IzYFNqvBe2JHJd-2WH-wj4Ic11C9
    qz8_gm7Ed6jxA>
X-ME-Received: <xmr:cmsfZT1gL0KHoML6g8aUJ9JA9t02Vw6gZc2vXfcRzGtl-llspuRiHN00yjKGWaF9K_luDgj603FQwSF9xy7qEzSNWhyWlxhRpVb4aAgYgndc0-og-QwP>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvkedrgeehgdehhecutefuodetggdotefrodftvf
    curfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfghnecu
    uegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmdenuc
    fjughrpefhvfevufffkffojghfgggtgfesthekredtredtjeenucfhrhhomhepofgrrhgv
    khcuofgrrhgtiiihkhhofihskhhiqdfikphrvggtkhhiuceomhgrrhhmrghrvghksehinh
    hvihhsihgslhgvthhhihhnghhslhgrsgdrtghomheqnecuggftrfgrthhtvghrnhepgfeu
    udehgfdvfeehhedujeehfeduveeugefhkefhheelgeevudetueeiudfggfffnecuvehluh
    hsthgvrhfuihiivgepudenucfrrghrrghmpehmrghilhhfrhhomhepmhgrrhhmrghrvghk
    sehinhhvihhsihgslhgvthhhihhnghhslhgrsgdrtghomh
X-ME-Proxy: <xmx:cmsfZSA0wqHp6aUmb7kv7Zv-zotBoGbQI0ULvr-rwf1DoFctUmoseA>
    <xmx:cmsfZfi1SGSi9BWuTa5-gZkLv60IJJPDTXlf5HgY84aUPN-eLMuVfg>
    <xmx:cmsfZerm-FdS6pi6-Qfu7O--NtYDBS6wchc29irpKtuo_KMFfTWo0g>
    <xmx:cmsfZSuKBygzSg9uasL6ewefdoJbHZ5OFCYQH-PhvuoZ2nuwLZzlrg>
Feedback-ID: i1568416f:Fastmail
From: =?UTF-8?q?Marek=20Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>
To: xen-devel@lists.xenproject.org
Cc: Henry Wang <Henry.Wang@arm.com>,
	=?UTF-8?q?Marek=20Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>,
	Doug Goldstein <cardoe@cardoe.com>,
	Stefano Stabellini <sstabellini@kernel.org>
Subject: [PATCH 3/5] automation: cleanup test alpine install
Date: Fri,  6 Oct 2023 04:05:17 +0200
Message-ID: <c824d0e0771e3fa266606929df7972185debebda.1696557834.git-series.marmarek@invisiblethingslab.com>
X-Mailer: git-send-email 2.41.0
In-Reply-To: <cover.550599c54c91da4f8417fde358992e75bf8163c0.1696557834.git-series.marmarek@invisiblethingslab.com>
References: <cover.550599c54c91da4f8417fde358992e75bf8163c0.1696557834.git-series.marmarek@invisiblethingslab.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Remove parts of initramfs for the test system (domU, and in few tests
dom0 too) that are not not working and are not really needed in this
simple system.

This makes the test log much lighter on misleading error messages.

Signed-off-by: Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
---
 automation/tests-artifacts/alpine/3.18.dockerfile | 6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

diff --git a/automation/tests-artifacts/alpine/3.18.dockerfile b/automation/tests-artifacts/alpine/3.18.dockerfile
index 32aa8e177847..333951d05e84 100644
--- a/automation/tests-artifacts/alpine/3.18.dockerfile
+++ b/automation/tests-artifacts/alpine/3.18.dockerfile
@@ -40,7 +40,6 @@ RUN \
   rc-update add udev && \
   rc-update add udev-trigger && \
   rc-update add udev-settle && \
-  rc-update add networking sysinit && \
   rc-update add loopback sysinit && \
   rc-update add bootmisc boot && \
   rc-update add devfs sysinit && \
@@ -48,18 +47,17 @@ RUN \
   rc-update add hostname boot && \
   rc-update add hwclock boot && \
   rc-update add hwdrivers sysinit && \
-  rc-update add killprocs shutdown && \
-  rc-update add modloop sysinit && \
   rc-update add modules boot && \
+  rc-update add killprocs shutdown && \
   rc-update add mount-ro shutdown && \
   rc-update add savecache shutdown && \
-  rc-update add sysctl boot && \
   rc-update add local default && \
   cp -a /sbin/init /init && \
   echo "ttyS0" >> /etc/securetty && \
   echo "hvc0" >> /etc/securetty && \
   echo "ttyS0::respawn:/sbin/getty -L ttyS0 115200 vt100" >> /etc/inittab && \
   echo "hvc0::respawn:/sbin/getty -L hvc0 115200 vt100" >> /etc/inittab && \
+  echo > /etc/modules && \
   passwd -d "root" root && \
   \
   # Create rootfs
-- 
git-series 0.9.1


From xen-devel-bounces@lists.xenproject.org Fri Oct 06 02:05:51 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 02:05:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613208.953607 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoaDp-0007DA-2c; Fri, 06 Oct 2023 02:05:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613208.953607; Fri, 06 Oct 2023 02: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 1qoaDo-0007D3-Ub; Fri, 06 Oct 2023 02:05:44 +0000
Received: by outflank-mailman (input) for mailman id 613208;
 Fri, 06 Oct 2023 02:05: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=8zii=FU=invisiblethingslab.com=marmarek@srs-se1.protection.inumbo.net>)
 id 1qoaDn-0006iG-8M
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 02:05:43 +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 d7845d08-63ec-11ee-9b0d-b553b5be7939;
 Fri, 06 Oct 2023 04:05:38 +0200 (CEST)
Received: from compute1.internal (compute1.nyi.internal [10.202.2.41])
 by mailout.nyi.internal (Postfix) with ESMTP id 44F655C0308;
 Thu,  5 Oct 2023 22:05:37 -0400 (EDT)
Received: from mailfrontend1 ([10.202.2.162])
 by compute1.internal (MEProxy); Thu, 05 Oct 2023 22:05:37 -0400
Received: by mail.messagingengine.com (Postfix) with ESMTPA; Thu,
 5 Oct 2023 22:05:35 -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: d7845d08-63ec-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
	invisiblethingslab.com; h=cc:cc:content-transfer-encoding
	: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=1696557937; x=1696644337; bh=/0
	k9WHwXNqvWmO3gj4B3oauirCAI88+YlsPrCwqgrk4=; b=LeRY9LYMU2+CimbFn/
	biABePlO+sO2lLVhYYLXg29MT0pTbVBUog8wyRDkmHBWfA+YaRVP02Wv1XNcmDFR
	vqV72HZhQmCSAOmFJQB831K9RLyUS/BekINe4Pphy694R0w8xT3+RDiimR6vxdAL
	492ZrZdPv6DsmtLmWLqdA1UI2x2QdsQD2xtnLFsPFx9GPxPm+3hsh9qqyESzLBVB
	alGVlDfKcZkjozjye/yFFYOky7r6AybGG8hf+dvnOAS4hyDR0wn+Zzy4Lxc0RxT5
	FdIfQJ9bVzhlLM0IRY0zSrqYuV/7zicmmHX4TBehnXVNjcUINBbePE6xk/kH01XM
	39fA==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
	messagingengine.com; h=cc:cc:content-transfer-encoding
	: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=
	1696557937; x=1696644337; bh=/0k9WHwXNqvWmO3gj4B3oauirCAI88+YlsP
	rCwqgrk4=; b=Xs0G7DOjMWEqyvZDLUEXYCFMTXQtXo5AePfTJoy6K/FaGIFulxq
	3K9IUdiQQfCf66N1al3sSNfKucLSo4BYYZULJH4nfbgmu/JvqeCjUdYSI0o1jAn0
	BpmY8ufTr0CloRit+EC4CLi9oGu0g8H1Uen4P5Npiw1poML+e4yxxEBt0fI1/dgq
	7limGskMroHaaxoQc/dP/mE+9OAqlJkZwRinJJOPJcT05MNn5+uartxa/uPuGW1c
	33SofTZzYGSorP60VZETH6eebwR8QmMeebLQO4qpny4YkxH1mg/LCUzIhloz79Yk
	CH2ZiF3L0G7Y0tHJcn+MeK9FSdyLgDOHwiQ==
X-ME-Sender: <xms:cWsfZRKKHjyf7dx33y3qApKpp4AGF7YfEJsnPK0GPuuS6-VhZu9hrA>
    <xme:cWsfZdIRmzWLcDphyw566esNlJn5ErQzqSb3siI9QHtF_CIS4Lbi3l9wHBjy_DHmq
    sDyXRSjvFW2Zg>
X-ME-Received: <xmr:cWsfZZuaAabWzA12AMbdNWo4sXqkEwEjzguXy4SxFCGtU_Hh9uAnDJuL68C78aBdK6CwIc9AEOc2J9gCnOXRxHxrMZicnhP-JUmXX0xfmJhuLmtVxOx5>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvkedrgeehgdehhecutefuodetggdotefrodftvf
    curfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfghnecu
    uegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmdenuc
    fjughrpefhvfevufffkffojghfgggtgfesthekredtredtjeenucfhrhhomhepofgrrhgv
    khcuofgrrhgtiiihkhhofihskhhiqdfikphrvggtkhhiuceomhgrrhhmrghrvghksehinh
    hvihhsihgslhgvthhhihhnghhslhgrsgdrtghomheqnecuggftrfgrthhtvghrnhepgfeu
    udehgfdvfeehhedujeehfeduveeugefhkefhheelgeevudetueeiudfggfffnecuvehluh
    hsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomhepmhgrrhhmrghrvghk
    sehinhhvihhsihgslhgvthhhihhnghhslhgrsgdrtghomh
X-ME-Proxy: <xmx:cWsfZSaCXVV-cjudgCaqQ9VG50SPCcYliAAjp6R6S5OeQRHf_gogkQ>
    <xmx:cWsfZYZSCofz_pUsnvRF1skXPSNtzYSOmgV45CEAi0ElwAkie2yinA>
    <xmx:cWsfZWAj-I0_umtOGZ5w9k6Us-LnPLIfG__MyTGRkjug37PC7x_b7Q>
    <xmx:cWsfZXnqvrUqqlgYkSMGPAqd8cz0GO_PTJx6rLkVHTrLXf1_GHXSng>
Feedback-ID: i1568416f:Fastmail
From: =?UTF-8?q?Marek=20Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>
To: xen-devel@lists.xenproject.org
Cc: Henry Wang <Henry.Wang@arm.com>,
	=?UTF-8?q?Marek=20Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>,
	Doug Goldstein <cardoe@cardoe.com>,
	Stefano Stabellini <sstabellini@kernel.org>
Subject: [PATCH 2/5] automation: hide timeout countdown in log
Date: Fri,  6 Oct 2023 04:05:16 +0200
Message-ID: <126f25fd791aa1f3e32463e600c59967504e19b6.1696557834.git-series.marmarek@invisiblethingslab.com>
X-Mailer: git-send-email 2.41.0
In-Reply-To: <cover.550599c54c91da4f8417fde358992e75bf8163c0.1696557834.git-series.marmarek@invisiblethingslab.com>
References: <cover.550599c54c91da4f8417fde358992e75bf8163c0.1696557834.git-series.marmarek@invisiblethingslab.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

grep+sleep message every 1s makes job log unnecessary hard to read.

Signed-off-by: Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
---
I know I can download serial log file, but that's 3 more clicks...
---
 automation/scripts/qubes-x86-64.sh | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/automation/scripts/qubes-x86-64.sh b/automation/scripts/qubes-x86-64.sh
index 1e84e40a4afc..5464d10fc343 100755
--- a/automation/scripts/qubes-x86-64.sh
+++ b/automation/scripts/qubes-x86-64.sh
@@ -222,10 +222,12 @@ if [ -n "$wait_and_wakeup" ]; then
     ssh $CONTROLLER wake
 fi
 
+set +x
 until grep "^Welcome to Alpine Linux" smoke.serial || [ $timeout -le 0 ]; do
     sleep 1;
     : $((--timeout))
 done
+set -x
 
 tail -n 100 smoke.serial
 
-- 
git-series 0.9.1


From xen-devel-bounces@lists.xenproject.org Fri Oct 06 02:05:51 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 02:05:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613210.953621 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoaDp-0007TL-VF; Fri, 06 Oct 2023 02:05:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613210.953621; Fri, 06 Oct 2023 02: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 1qoaDp-0007RP-Nr; Fri, 06 Oct 2023 02:05:45 +0000
Received: by outflank-mailman (input) for mailman id 613210;
 Fri, 06 Oct 2023 02: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=8zii=FU=invisiblethingslab.com=marmarek@srs-se1.protection.inumbo.net>)
 id 1qoaDn-0006iR-Tp
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 02:05:43 +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 d9464c7e-63ec-11ee-98d3-6d05b1d4d9a1;
 Fri, 06 Oct 2023 04:05:41 +0200 (CEST)
Received: from compute4.internal (compute4.nyi.internal [10.202.2.44])
 by mailout.nyi.internal (Postfix) with ESMTP id 3D8F25C0308;
 Thu,  5 Oct 2023 22:05:40 -0400 (EDT)
Received: from mailfrontend1 ([10.202.2.162])
 by compute4.internal (MEProxy); Thu, 05 Oct 2023 22:05:40 -0400
Received: by mail.messagingengine.com (Postfix) with ESMTPA; Thu,
 5 Oct 2023 22:05:38 -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: d9464c7e-63ec-11ee-98d3-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
	invisiblethingslab.com; h=cc:cc:content-transfer-encoding
	: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=1696557940; x=1696644340; bh=/g
	Ul0Y4cOMR9LD5olCpH8YTdnvy+vSoAh/p2y/HuRgc=; b=Ut4sTEgCJe/T5EI9YH
	8vXs7bXEl7oicPQXlw+Yzif3J6/O/j6JhQoF3fRa2+WkL/ESjjYgATQfhHh4FWcb
	uIJSm0AQ17DJu/JZyDOSE3yMxYJz+o2jWBUhnCyfYspk0U7v2tc5zCIbS1qeeEEn
	X7t+iH4u1o/AQdUKMXqlEe0UyYnPMrFDKHpLrufBLgIh8Y3owfwRqGi1wJfs9iMZ
	clhPt6FmEdzJWstRtm4uKnD9bvLy+oMM9AaM57fLqRZSZS0aHx1CgBfo7nt2eMee
	qwsPz09YYKJS84VnG/fcIBn0fc9ta3dLhQPzTr0LrcIeABaW50KHpNuUMdAyOa3o
	LRlw==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
	messagingengine.com; h=cc:cc:content-transfer-encoding
	: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=
	1696557940; x=1696644340; bh=/gUl0Y4cOMR9LD5olCpH8YTdnvy+vSoAh/p
	2y/HuRgc=; b=IzE/swSNreJkRnOHr//0+PEw71dhsW+yv/DA35+YM+fBzPgfazl
	Ddx79/cS7q6DBiJiUEDbIT8qYVhtu1E3zpffben/e22C5lxiWMPMfnCB48K4uBld
	Iqy3u6Dk0dvQlX1GnLWqwdNT00m2XZurdbJhyXCB0cHfyZGkt8kTdZBRZ5cXP9Hf
	qX3lL/UOd9R7ZbeImvsx9uQ2kpF1xTtytPp1c624AitQ+qWCh2kt65hyeNAESDGc
	lbEEHasuXNB8O4iiRXQNH+iU0gKidgWWwVg8BSsfitVEgZbneXeY4PxVuWyHDvY6
	BRIIyH/bFK3qY5uPO+f81yCnVfD5Fkj5mxQ==
X-ME-Sender: <xms:dGsfZcqd3q5d82BZ4IjG3We8Y35B9giWmNqxaC_yf-2YzjsWjV709w>
    <xme:dGsfZSrHumD-BP3jNe8X2lZpt7y4O32oSBfS2cFlsqjr1DXIuUN_M3Z5En8hTVmfA
    S6xWlAQTIVFqQ>
X-ME-Received: <xmr:dGsfZRPhjvyRHezULlr3dJX4zIXUyiZtE6sF9yBv1xp63iQ95DBggZZMEt3y8LCl1savzPlP3O4We6GWQ4mSnNa0I4wHyMpBCOE8O_uvERZk2lmORtVC>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvkedrgeehgdehhecutefuodetggdotefrodftvf
    curfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfghnecu
    uegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmdenuc
    fjughrpefhvfevufffkffojghfgggtgfesthekredtredtjeenucfhrhhomhepofgrrhgv
    khcuofgrrhgtiiihkhhofihskhhiqdfikphrvggtkhhiuceomhgrrhhmrghrvghksehinh
    hvihhsihgslhgvthhhihhnghhslhgrsgdrtghomheqnecuggftrfgrthhtvghrnhepgfeu
    udehgfdvfeehhedujeehfeduveeugefhkefhheelgeevudetueeiudfggfffnecuvehluh
    hsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomhepmhgrrhhmrghrvghk
    sehinhhvihhsihgslhgvthhhihhnghhslhgrsgdrtghomh
X-ME-Proxy: <xmx:dGsfZT5TdCPv9XR-Oq9eV-vjwJWRg7JRUrePtqp4SS1qzUIbNlDs1Q>
    <xmx:dGsfZb7pvFiPaG3W4k4vHj9KjQ5CDb-pkHuCG_V-grJLOfG-xQlykQ>
    <xmx:dGsfZTjWfkKih00I3vK6tSm8-s-FWaKHfjfV_hNlWdSF_OL6fYdrYw>
    <xmx:dGsfZbEwyExD9A6ybaS94iucrr3KbjXx6hA4CXcS0Qq7hUfNBrEV4A>
Feedback-ID: i1568416f:Fastmail
From: =?UTF-8?q?Marek=20Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>
To: xen-devel@lists.xenproject.org
Cc: Henry Wang <Henry.Wang@arm.com>,
	=?UTF-8?q?Marek=20Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>,
	Doug Goldstein <cardoe@cardoe.com>,
	Stefano Stabellini <sstabellini@kernel.org>
Subject: [PATCH 4/5] automation: improve checking for MSI/MSI-X in PCI passthrough tests
Date: Fri,  6 Oct 2023 04:05:18 +0200
Message-ID: <18b10f667f2df986691ed299f7640724618ec95a.1696557834.git-series.marmarek@invisiblethingslab.com>
X-Mailer: git-send-email 2.41.0
In-Reply-To: <cover.550599c54c91da4f8417fde358992e75bf8163c0.1696557834.git-series.marmarek@invisiblethingslab.com>
References: <cover.550599c54c91da4f8417fde358992e75bf8163c0.1696557834.git-series.marmarek@invisiblethingslab.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Checking /proc/interrupts is unreliable because different drivers set
different names there. Install pciutils and use lspci instead.
In fact, the /proc/interrupts content was confusing enough that
adl-pci-hvm had it wrong (MSI-X is in use there). Fix this too.

Signed-off-by: Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
---
 automation/gitlab-ci/test.yaml                    |  2 +--
 automation/scripts/qubes-x86-64.sh                | 19 +++++-----------
 automation/tests-artifacts/alpine/3.18.dockerfile |  1 +-
 3 files changed, 8 insertions(+), 14 deletions(-)

diff --git a/automation/gitlab-ci/test.yaml b/automation/gitlab-ci/test.yaml
index 4b836bf04784..61e642cce0cc 100644
--- a/automation/gitlab-ci/test.yaml
+++ b/automation/gitlab-ci/test.yaml
@@ -195,8 +195,6 @@ adl-pci-pv-x86-64-gcc-debug:
 
 adl-pci-hvm-x86-64-gcc-debug:
   extends: .adl-x86-64
-  variables:
-    PCIDEV_INTR: "MSI"
   script:
     - ./automation/scripts/qubes-x86-64.sh pci-hvm 2>&1 | tee ${LOGFILE}
   needs:
diff --git a/automation/scripts/qubes-x86-64.sh b/automation/scripts/qubes-x86-64.sh
index 5464d10fc343..842e6fae7204 100755
--- a/automation/scripts/qubes-x86-64.sh
+++ b/automation/scripts/qubes-x86-64.sh
@@ -90,23 +90,18 @@ on_reboot = "destroy"
 
     domU_check="
 set -x -e
-ip link set eth0 up
-timeout 30s udhcpc -i eth0
+interface=eth0
+ip link set \"\$interface\" up
+timeout 30s udhcpc -i \"\$interface\"
 pingip=\$(ip -o -4 r show default|cut -f 3 -d ' ')
 ping -c 10 \"\$pingip\"
 echo domU started
-cat /proc/interrupts
+pcidevice=\$(basename \$(readlink /sys/class/net/\$interface/device))
+lspci -vs \$pcidevice
 "
-    if [ "$PCIDEV_INTR" = "MSI-X" ]; then
+    if [ -n "$PCIDEV_INTR" ]; then
         domU_check="$domU_check
-grep -- '\\(-msi-x\\|PCI-MSI-X\\).*eth0' /proc/interrupts
-"
-    elif [ "$PCIDEV_INTR" = "MSI" ]; then
-        # depending on the kernel version and domain type, the MSI can be
-        # marked as '-msi', 'PCI-MSI', or 'PCI-MSI-<SBDF>'; be careful to not match
-        # -msi-x nor PCI-MSI-X
-        domU_check="$domU_check
-grep -- '\\(-msi \\|PCI-MSI\\( \\|-[^X]\\)\\).*eth0' /proc/interrupts
+lspci -vs \$pcidevice | fgrep '$PCIDEV_INTR: Enable+'
 "
     fi
     domU_check="$domU_check
diff --git a/automation/tests-artifacts/alpine/3.18.dockerfile b/automation/tests-artifacts/alpine/3.18.dockerfile
index 333951d05e84..5f521572b8fb 100644
--- a/automation/tests-artifacts/alpine/3.18.dockerfile
+++ b/automation/tests-artifacts/alpine/3.18.dockerfile
@@ -33,6 +33,7 @@ RUN \
   apk add pixman && \
   apk add curl && \
   apk add udev && \
+  apk add pciutils && \
   \
   # Xen
   cd / && \
-- 
git-series 0.9.1


From xen-devel-bounces@lists.xenproject.org Fri Oct 06 03:32:22 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 03:32:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613240.953646 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qobZL-0000iA-49; Fri, 06 Oct 2023 03:32:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613240.953646; Fri, 06 Oct 2023 03: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 1qobZL-0000i3-1b; Fri, 06 Oct 2023 03:32:03 +0000
Received: by outflank-mailman (input) for mailman id 613240;
 Fri, 06 Oct 2023 03:32: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 1qobZK-0000ht-3B; Fri, 06 Oct 2023 03:32: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 1qobZJ-0000Sx-1M; Fri, 06 Oct 2023 03:32: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 1qobZI-0003Ji-KB; Fri, 06 Oct 2023 03:32:00 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qobZI-0003lo-Jp; Fri, 06 Oct 2023 03: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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=Am67bnF7rMqY8yB0ffmlvr5n6AVBsdhFRNtzmwDu6Ck=; b=SzdiJGsgRb4J5PgvIXVDIKuubD
	Ap6T5F72esuWdlCrRWjMr0iI2IM4OR4drd/Veq89/N/XMC9bu4lBqU/0/kuYwgruD+vIFgZcq8rEP
	5IosZdLyKaNkDNXgXSqbfkw33DAlGjx+T1Mr0jcHnh4p67L5DzIuYRPEGD2xIuOw7b28=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183276-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 183276: regressions - FAIL
X-Osstest-Failures:
    xen-unstable-smoke:test-armhf-armhf-xl:guest-start/debian.repeat: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
    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=295514ff7550626de4fb5e43b51deb25d9331cd5
X-Osstest-Versions-That:
    xen=02c98966360b76052779b0186784437af88f301e
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 06 Oct 2023 03:32:00 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-armhf-armhf-xl         18 guest-start/debian.repeat fail REGR. vs. 183270

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                  295514ff7550626de4fb5e43b51deb25d9331cd5
baseline version:
 xen                  02c98966360b76052779b0186784437af88f301e

Last test of basis   183270  2023-10-05 13:03:52 Z    0 days
Testing same since   183272  2023-10-05 16:00:24 Z    0 days    2 attempts

------------------------------------------------------------
People who touched revisions under test:
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.com>
  Roger Pau Monne <roger.pau@citrix.com>
  Roger Pau Monné <roger.pau@citrix.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                                          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 295514ff7550626de4fb5e43b51deb25d9331cd5
Author: Jan Beulich <jbeulich@suse.com>
Date:   Mon Oct 2 17:11:27 2023 +0200

    common: convert vCPU info area registration
    
    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).
    
    Signed-off-by: Jan Beulich <jbeulich@suse.com>
    Reviewed-by: Roger Pau Monné <roger.pau@citrix.com>
    Acked-by: Julien Grall <jgrall@amazon.com>
    Release-acked-by: Henry Wang <Henry.Wang@arm.com>

commit 60e544a8c58fdc720de05f6a721178f9516436d1
Author: Jan Beulich <jbeulich@suse.com>
Date:   Mon Oct 2 17:11:26 2023 +0200

    x86: introduce GADDR based secondary time area registration alternative
    
    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>
    Acked-by: Julien Grall <jgrall@amazon.com>
    Release-acked-by: Henry Wang <Henry.Wang@arm.com>

commit d5df44275e7af690ef18b56cc58762ce33a37149
Author: Jan Beulich <jbeulich@suse.com>
Date:   Mon Oct 2 17:11:25 2023 +0200

    domain: introduce GADDR based runstate area registration alternative
    
    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>
    Acked-by: Julien Grall <jgrall@amazon.com>
    Release-acked-by: Henry Wang <Henry.Wang@arm.com>

commit eadc288cbb0ddc432ff8c9c639fb25b7538325de
Author: Jan Beulich <jbeulich@suse.com>
Date:   Mon Oct 2 17:11:24 2023 +0200

    domain: map/unmap GADDR based shared guest areas
    
    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>
    Reviewed-by: Roger Pau Monné <roger.pau@citrix.com>
    Reviewed-by: Julien Grall <jgrall@amazon.com>
    Release-acked-by: Henry Wang <Henry.Wang@arm.com>

commit c4dde71e3e6961f817e2a574ce4918041cb30fb9
Author: Jan Beulich <jbeulich@suse.com>
Date:   Wed Oct 4 15:53:31 2023 +0200

    x86/mem-sharing: copy GADDR based shared guest areas
    
    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>
    Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
    Acked-by: Tamas K Lengyel <tamas@tklengyel.com>
    Release-acked-by: Henry Wang <Henry.Wang@arm.com>

commit c2e285ea0e6dea9cc6f4578e49d76075a153baa0
Author: Jan Beulich <jbeulich@suse.com>
Date:   Mon Oct 2 17:11:22 2023 +0200

    x86: update GADDR based secondary time area
    
    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>
    Release-acked-by: Henry Wang <Henry.Wang@arm.com>

commit e1ddb822ca2e3c332d42d508e2a5fbd7be018815
Author: Jan Beulich <jbeulich@suse.com>
Date:   Mon Oct 2 17:11:21 2023 +0200

    domain: update GADDR based runstate guest area
    
    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>
    Release-acked-by: Henry Wang <Henry.Wang@arm.com>

commit c4630e316240508f3fb619678adc4cfb47bf13d2
Author: Jan Beulich <jbeulich@suse.com>
Date:   Mon Oct 2 17:11:20 2023 +0200

    domain: GADDR based shared guest area registration alternative - teardown
    
    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>
    Acked-by: Roger Pau Monné <roger.pau@citrix.com>
    Release-acked-by: Henry Wang <Henry.Wang@arm.com>

commit 826da6e30cf37a22b3f32dba33477856125df91b
Author: Jan Beulich <jbeulich@suse.com>
Date:   Mon Oct 2 17:11:19 2023 +0200

    x86/shim: zap runstate and time area handles during shutdown
    
    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>
    Release-acked-by: Henry Wang <Henry.Wang@arm.com>

commit 9a499a84a2724757ad59b684e7858dfb60521290
Author: Roger Pau Monne <roger.pau@citrix.com>
Date:   Mon Oct 2 17:11:18 2023 +0200

    mem_sharing/fork: do not attempt to populate vcpu_info page
    
    Instead let map_vcpu_info() and it's call to get_page_from_gfn()
    populate the page in the child as needed.  Also remove the bogus
    copy_domain_page(): should be placed before the call to map_vcpu_info(),
    as the later can update the contents of the vcpu_info page.
    
    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.
    
    Fixes: 41548c5472a3 ('mem_sharing: VM forking')
    Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
    Acked-by: Tamas K Lengyel <tamas@tklengyel.com>
    Release-acked-by: Henry Wang <Henry.Wang@arm.com>
(qemu changes not included)


From xen-devel-bounces@lists.xenproject.org Fri Oct 06 05:19:10 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 05:19:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613250.953662 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qodEf-00028e-0q; Fri, 06 Oct 2023 05:18:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613250.953662; Fri, 06 Oct 2023 05: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 1qodEe-00028X-UJ; Fri, 06 Oct 2023 05:18:48 +0000
Received: by outflank-mailman (input) for mailman id 613250;
 Fri, 06 Oct 2023 05:18: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 1qodEd-00028N-HE; Fri, 06 Oct 2023 05:18: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 1qodEd-0003Y1-1P; Fri, 06 Oct 2023 05:18: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 1qodEc-0000Z8-Ot; Fri, 06 Oct 2023 05:18:46 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qodEc-0001LO-OT; Fri, 06 Oct 2023 05:18: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=0pyuuIl+zepsRpAUKMJKIg/+SP9a2wm2uYYxeW9rz8c=; b=xzlMt+i/k9o69g93mWJgHaR27p
	MHJIFuvssi+qeMqonacH8HllWK0JxfGcfQEL/or1JWCV4XU+FVwzwRpJb5sJenIdAZ8SkfzxE8bxz
	3EyxoNz/UWpisUuziSzGOH00rm3IBpvzYdiXg2M+5I37l80pMawXeJTqYjZBgsAn1yiM=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183273-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 183273: 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-xl:xen-boot:fail:heisenbug
    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-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-armhf-armhf-libvirt: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-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-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-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-xl-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu: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-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-raw:migrate-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-amd64-amd64-libvirt:migrate-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
    linux-linus:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:saverestore-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-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=f291209eca5eba0b4704fa0832af57b12dbc1a02
X-Osstest-Versions-That:
    linux=3006adf3be79cde4d14b1800b963b82b6e5572e0
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 06 Oct 2023 05:18:46 +0000

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

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 183280-retest
 test-armhf-armhf-xl           8 xen-boot            fail pass in 183280-retest

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-xl         15 migrate-support-check fail in 183280 never pass
 test-armhf-armhf-xl     16 saverestore-support-check fail in 183280 never pass
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183268
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183268
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183268
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183268
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183268
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183268
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183268
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183268
 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-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-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-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-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-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-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-amd64-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-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-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-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                f291209eca5eba0b4704fa0832af57b12dbc1a02
baseline version:
 linux                3006adf3be79cde4d14b1800b963b82b6e5572e0

Last test of basis   183268  2023-10-05 03:37:07 Z    1 days
Testing same since   183273  2023-10-05 18:42:30 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Aditya Kumar Singh <quic_adisi@quicinc.com>
  Al Viro <viro@zeniv.linux.org.uk>
  Alexandra Diupina <adiupina@astralinux.ru>
  Alexei Starovoitov <ast@kernel.org>
  Amir Goldstein <amir73il@gmail.com>
  Andrii Nakryiko <andrii@kernel.org>
  Arnd Bergmann <arnd@arndb.de>
  Ben Greear <greearb@candelatech.com>
  Ben Wolsieffer <ben.wolsieffer@hefring.com>
  Benjamin Berg <benjamin.berg@intel.com>
  Benjamin Poirier <bpoirier@nvidia.com>
  Brian Norris <briannorris@chromium.org>
  Charles Keepax <ckeepax@opensource.cirrus.com>
  Chengfeng Ye <dg573847474@gmail.com>
  Christian Marangi <ansuelsmth@gmail.com>
  Christophe JAILLET <christophe.jaillet@wanadoo.fr>
  Clark Wang <xiaoning.wang@nxp.com>
  Dan Carpenter <dan.carpenter@linaro.org>
  Daniel Borkmann <daniel@iogearbox.net>
  Daniel Golle <daniel@makrotopia.org>
  David Howells <dhowells@redhat.com>
  David S. Miller <davem@davemloft.net>
  David Wilder <dwilder@us.ibm.com>
  Dinghao Liu <dinghao.liu@zju.edu.cn>
  Emil Renner Berthing <emil.renner.berthing@canonical.com>
  Eric Dumazet <edumazet@google.com>
  Fabio Estevam <festevam@denx.de>
  Felix Fietkau <nbd@nbd.name>
  Florian Westphal <fw@strlen.de>
  Geliang Tang <geliang.tang@suse.com>
  Gregory Greenman <gregory.greenman@intel.com>
  Gustavo A. R. Silva <gustavoars@kernel.org>
  Haiyang Zhang <haiyangz@microsoft.com>
  Hangbin Liu <liuhangbin@gmail.com>
  Hou Tao <houtao1@huawei.com>
  Ilan Peer <ilan.peer@intel.com>
  Ilias Apalodimas <ilias.apalodimas@linaro.org>
  Ilya Leoshkevich <iii@linux.ibm.com>
  Ilya Maximets <i.maximets@ovn.org>
  Jakub Kicinski <kuba@kernel.org>
  Jakub Sitnicki <jakub@cloudflare.com>
  Jason Wang <jasowang@redhat.com>
  Jeff Johnson <quic_jjohnson@quicinc.com>
  Jeremy Cline <jeremy@jcline.org>
  Johannes Berg <johannes.berg@intel.com>
  John Fastabend <john.fastabend@gmail.com>
  Jon Maloy <jmaloy@redhat.com>
  Jordan Rife <jrife@google.com>
  Juerg Haefliger <juerg.haefliger@canonical.com>
  Kalle Valo <kvalo@kernel.org>
  Kees Cook <keescook@chromium.org>
  Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
  Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
  Lee Jones <lee@kernel.org>
  Leon Hwang <hffilwlqm@gmail.com>
  Linus Torvalds <torvalds@linux-foundation.org>
  Lorenzo Bianconi <lorenzo@kernel.org>
  Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
  Marek Behún <kabel@kernel.org>
  Mat Martineau <martineau@kernel.org>
  Matthieu Baerts <matttbe@kernel.org>
  Michal Schmidt <mschmidt@redhat.com>
  Miklos Szeredi <mszeredi@redhat.com>
  Mimi Zohar <zohar@linux.ibm.com>
  Neal Cardwell <ncardwell@google.com>
  Nicolas Dichtel <nicolas.dichtel@6wind.com>
  Nikolay Aleksandrov <razor@blackwall.org>
  Oleksandr Tymoshenko <ovt@google.com>
  Paolo Abeni <pabeni@redhat.com>
  Parthiban Veerasooran <Parthiban.Veerasooran@microchip.com>
  Paul Moore <paul@paul-moore.com> (Audit)
  Phil Sutter <phil@nwl.cc>
  Pin-yen Lin <treapking@chromium.org>
  Ping-Ke Shih <pkshih@realtek.com>
  Randy Dunlap <rdunlap@infradead.org>
  Remi Pommarel <repk@triplefau.lt>
  Rocky Liao <quic_rjliao@quicinc.com>
  Sascha Hauer <s.hauer@pengutronix.de>
  Shigeru Yoshida <syoshida@redhat.com>
  Simon Horman <horms@kernel.org> # build-tested
  Song Liu <song@kernel.org>
  Stefano Garzarella <sgarzare@redhat.com>
  syzbot+b97d20ed568ce0951a06@syzkaller.appspotmail.com
  syzbot+baa44e3dbbe48e05c1ad@syzkaller.appspotmail.com
  Vinod Koul <vkoul@kernel.org>
  Wen Gong <quic_wgong@quicinc.com>
  Woody Zhang <woodylab@foxmail.com>
  Xin Long <lucien.xin@gmail.com>
  Yao Xiao <xiaoyao@rock-chips.com>
  Ying Hsu <yinghsu@chromium.org>
  Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.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-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
   3006adf3be79..f291209eca5e  f291209eca5eba0b4704fa0832af57b12dbc1a02 -> tested/linux-linus


From xen-devel-bounces@lists.xenproject.org Fri Oct 06 07:52:07 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 07:52:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613260.953688 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qofcs-0002r8-Pl; Fri, 06 Oct 2023 07:51:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613260.953688; Fri, 06 Oct 2023 07:51: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 1qofcs-0002r1-Lx; Fri, 06 Oct 2023 07:51:58 +0000
Received: by outflank-mailman (input) for mailman id 613260;
 Fri, 06 Oct 2023 07:51: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=5b7L=FU=amd.com=Michal.Orzel@srs-se1.protection.inumbo.net>)
 id 1qofcr-0002bN-Ie
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 07:51:57 +0000
Received: from NAM10-DM6-obe.outbound.protection.outlook.com
 (mail-dm6nam10on20602.outbound.protection.outlook.com
 [2a01:111:f400:7e88::602])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 386d356f-641d-11ee-98d3-6d05b1d4d9a1;
 Fri, 06 Oct 2023 09:51:57 +0200 (CEST)
Received: from CYXPR03CA0094.namprd03.prod.outlook.com (2603:10b6:930:d3::16)
 by SN7PR12MB7420.namprd12.prod.outlook.com (2603:10b6:806:2a7::7)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Fri, 6 Oct
 2023 07:51:53 +0000
Received: from CY4PEPF0000EDD0.namprd03.prod.outlook.com
 (2603:10b6:930:d3:cafe::49) by CYXPR03CA0094.outlook.office365.com
 (2603:10b6:930:d3::16) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.30 via Frontend
 Transport; Fri, 6 Oct 2023 07:51:53 +0000
Received: from SATLEXMB03.amd.com (165.204.84.17) by
 CY4PEPF0000EDD0.mail.protection.outlook.com (10.167.241.204) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6838.22 via Frontend Transport; Fri, 6 Oct 2023 07:51: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, 6 Oct
 2023 02:51:52 -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; Fri, 6 Oct 2023 02:51: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: 386d356f-641d-11ee-98d3-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Llk9SzO0XwCXTK6cqBS55uRGK0LiMSxC3p5GRWVJ3O+W6q6ohhpkWvWVmEZNx6bsDS887cOK6NRuVfqo3ztSSKsJ+HHY3R3ULlbvStgCeOuB71Mx0jyL7mBlPe525sQ1wB91IcmSZFisn8jJ7HhS0qM7fR3kDjvixXDe0PB9an7QkHx5+kGgzVEL3UcWTpP6hKf8rkt9oDnSjHcOUyJG6YReRw6rtqmhV8Ja9OosCxO8mc2mdyCNlJzVoHZC3DRw4r7lx4hxbpJhOUb9rTnPWy8NdWgHeQnJ+6qmm1fpedUCKz/gDooBu8UrE1j40ZG8F6AjEI/TyGJnrTkeOWIcFQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=jCXO3srcStmJZe5aaJuEmz2CbDFTzcWkI+YFC4zfWlo=;
 b=GoVp+sYo6ddyxjQR1VlaiUnVXMfss7jEF0cmBj+8uhjJdLHJvB0fOmqjx0ZV0Gim+FK4dZzUFoB7FHPeJXF6rqdiXWqq7Dx23Xcc95KXLYPBOsVTzlHyJvAXBoLBB+6s6CL6kHOR8r3nn1xxzKRlxT1JQeljZxbUhmwPuFv32kEPTSLAcdOjsHCSYNjK7xBLdCzLAbv8kt0eBLPdp+LMS+xvts7oGpVCgKxC0ut8N5vxAuU9+Tnr+e428V8Pztb7Q/klup3CXjocFG2WVdeXzBOwlQ5AU/V5Q0f/kUZzyr18L4vlJPlRgG9CPMr7I+NYOPIcSjeLTLA37y5gjXaEQA==
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=jCXO3srcStmJZe5aaJuEmz2CbDFTzcWkI+YFC4zfWlo=;
 b=mq5GL108tCWslbOvvQloF/PEj04gbg7CNGJwe1X5ZsTqqDejKcQgm/Ot+RBVLS61w51RkXeBm1hIkcxIiDB7gzwQAOheq/QkkxaZ962qnpVSVSV2sKBsVQcLyOWUL/xr17dqBpUc/dl3xWAKnzXruqRZyPQ65RcfEe6sbwcTPws=
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>,
	"Daniel P. Smith" <dpsmith@apertussolutions.com>, <Henry.Wang@arm.com>
Subject: [for-4.18][PATCH 2/2] xen/public: arch-arm: Update list of supported hypercalls
Date: Fri, 6 Oct 2023 09:51:42 +0200
Message-ID: <20231006075142.9803-3-michal.orzel@amd.com>
X-Mailer: git-send-email 2.25.1
In-Reply-To: <20231006075142.9803-1-michal.orzel@amd.com>
References: <20231006075142.9803-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: CY4PEPF0000EDD0:EE_|SN7PR12MB7420:EE_
X-MS-Office365-Filtering-Correlation-Id: ff2a62c6-82d8-427e-b3d0-08dbc6411b18
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	sNzkJsWZ0a1tXCBc0pLolHwMxx0SvvyNKrZsketteFcwOQuHU/oEVhJd+wvKd9+wSG6dkj7ztre77Hgg7E8jOEsobZ/bp5ntzPoIrO/6Mejup9H8vIYHv4iCYn72QUcsP5dQ4dQIIqwi/3KGS/FEAzmDVMfLQtumhk21Q4Al8T+x/OcQR5+ufAS4i+i6MjnEBq7sxvSnW3JifnIQ2LtRdUbDStwzrFsWkxUtUryp8EHBi1gITqtpu3Ye95kzLFPi9JHIANmZTJM+k/MFCgm12sluqYG+AE7D496yzA5RlFlnLo3YEv1B3f12nKQkPJX1esX67QFBevtN0xLoDIsrG/cEidOTEvISXbDcHxNzwgGeOqTgBz4GjduO27wXsPozAKNjr/MEQ6d7Bdnm8H8rOZk6B3YF24y/RrMnnV9eBtJgBPnXFfN3aO7AHqDY9zukRGGggOsvEA1dYR/gSsnhx+twwC1d3+e/0Syd+1sO6tyna7K4MRVALxSNw7mH/zsKwmQpLELxb7YMZ04ZPYZ8aLau2BRmnzQ7GRYvg1pIoCwaDotkapLQmIYxPuTaMftnr65h9N3bhy7TYUXeCfnjDUAyIXl1KFfcoOT7o0nY5MEo+UT6B+5pC7l4H/tucg347jlwgedoc/n7Lwzi+5yaYffJ46J7dHMjsgPxrQF583f4EOcvj9XbM/t5ExSqf2YB/Y1NVxLJ76Hzw6IOJB1zu+qQ3L68H2oCca8U0lGFmGQnqpEuU8EQOd3idMRbKxYZ+5OnRB+LoAkYHJQ/fqXVlA==
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)(230922051799003)(451199024)(64100799003)(186009)(82310400011)(1800799009)(36840700001)(46966006)(40470700004)(40460700003)(40480700001)(478600001)(6666004)(36860700001)(47076005)(86362001)(356005)(81166007)(82740400003)(2906002)(15650500001)(426003)(83380400001)(336012)(26005)(1076003)(2616005)(36756003)(70206006)(70586007)(5660300002)(6916009)(44832011)(8936002)(41300700001)(54906003)(4326008)(316002)(8676002)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Oct 2023 07:51:53.1740
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: ff2a62c6-82d8-427e-b3d0-08dbc6411b18
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:
	CY4PEPF0000EDD0.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN7PR12MB7420

The list is out of date and does not specify all the hypercalls/sub-ops
we support, so update it.

Signed-off-by: Michal Orzel <michal.orzel@amd.com>
---
 xen/include/public/arch-arm.h | 21 +++++++++++++++++++++
 1 file changed, 21 insertions(+)

diff --git a/xen/include/public/arch-arm.h b/xen/include/public/arch-arm.h
index 6a4467e8f5d1..263b1e182eb3 100644
--- a/xen/include/public/arch-arm.h
+++ b/xen/include/public/arch-arm.h
@@ -104,6 +104,7 @@
  *   Exactly these sub-operations are supported:
  *    * HVMOP_set_param
  *    * HVMOP_get_param
+ *    * HVMOP_guest_request_vm_event
  *
  *  HYPERVISOR_grant_table_op
  *   All generic sub-operations
@@ -116,6 +117,26 @@
  *  HYPERVISOR_argo_op
  *   All generic sub-operations
  *
+ *  HYPERVISOR_hypfs_op
+ *   All generic sub-operations
+ *
+ *  HYPERVISOR_platform_op
+ *   Exactly these sub-operations are supported:
+ *    * XENPF_settime64
+ *
+ *  HYPERVISOR_vm_assist
+ *   All generic sub-operations
+ *
+ *  HYPERVISOR_dm_op
+ *   All ioreq server sub-operations are supported as well as:
+ *    * XEN_DMOP_set_irq_level
+ *    * XEN_DMOP_nr_vcpus
+ *
+ *  HYPERVISOR_xsm_op
+ *   All generic sub-operations
+ *
+ *  HYPERVISOR_multicall
+ *
  * Other notes on the ARM ABI:
  *
  * - struct start_info is not exported to ARM guests.
-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Fri Oct 06 07:52:07 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 07:52:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613261.953698 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qofcu-00036y-5N; Fri, 06 Oct 2023 07:52:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613261.953698; Fri, 06 Oct 2023 07:52: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 1qofcu-00036r-2l; Fri, 06 Oct 2023 07:52:00 +0000
Received: by outflank-mailman (input) for mailman id 613261;
 Fri, 06 Oct 2023 07:51: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=5b7L=FU=amd.com=Michal.Orzel@srs-se1.protection.inumbo.net>)
 id 1qofct-0002oP-4X
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 07:51:59 +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 37843b01-641d-11ee-9b0d-b553b5be7939;
 Fri, 06 Oct 2023 09:51:56 +0200 (CEST)
Received: from CYXPR03CA0090.namprd03.prod.outlook.com (2603:10b6:930:d3::26)
 by CH3PR12MB7596.namprd12.prod.outlook.com (2603:10b6:610:14b::5)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.34; Fri, 6 Oct
 2023 07:51:51 +0000
Received: from CY4PEPF0000EDD0.namprd03.prod.outlook.com
 (2603:10b6:930:d3:cafe::99) by CYXPR03CA0090.outlook.office365.com
 (2603:10b6:930:d3::26) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.31 via Frontend
 Transport; Fri, 6 Oct 2023 07:51:51 +0000
Received: from SATLEXMB03.amd.com (165.204.84.17) by
 CY4PEPF0000EDD0.mail.protection.outlook.com (10.167.241.204) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6838.22 via Frontend Transport; Fri, 6 Oct 2023 07:51: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; Fri, 6 Oct
 2023 02:51:50 -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; Fri, 6 Oct 2023 02:51: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: 37843b01-641d-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=QWtCvOK3ksHoD6wmJqoOwGeLteGyHzTVBVcLTPkUOsCQ8ySMBfchlChYuG/zi4jc0H+U9K47AVjf2DlHrvezMo44JT54gxbp/xWWGFEAK7SlYXY5p3SMYa3zV7bDBjtM1Rlw9aSi9xc9OwB0AVszJTINwUYVHXiKThGDtmaFUm1Qa8DQ1nh4wLZV288CYnLvibh5x2OPUe3eUy04v+ReVAGSvSryFVx+O2uMw8/NujwQl2QA6VUFAMmkK/lFnxVSQKlB2kS45Cw5iyoZNjL2HQ2kkGmLNl0fl5pRYhuOsVfUjAU5FQBFwYN8pZfgWrI5wExGEGsR0FSiodivQc5PqA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=DNLFX+dIT6nJ6Pj3VeAo08YpiL8RmZBwDiozheXyVWw=;
 b=fnlvgH6EqWlpywF1AwjFYVzhAGDb3PVgdbTpYp0ckAKrz/hrw0tOynmgqUS2vMKj0CKimnOGqwJKSz8WxAMLKVS9w/wimaATy5LkbaP58kWwNqSwB4oBGFrIIcgqMmIhj9RT51IS8ANu4j8W+VJdK3rJ/38vyvNDfNJHbTVlu+CDOk35L/8bmkqBN/kIrPY8dbNtyVPPzgIKAN6Y43GojtPAvFxxur7BTMrZgcHVE2XEdFS4myylfZ+aAHs45q/xjnO8hylI5s+QjoKi0Gdhda/GPbrbRSc2wOnkvDxnUUpmj6BoFYA20+GTHXUffByRceU9XOp72SiEivaZVYRycA==
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=DNLFX+dIT6nJ6Pj3VeAo08YpiL8RmZBwDiozheXyVWw=;
 b=g3rqQvGoQxH6tl9/wyWLiEnnWUMkfpsxOBL4heUyiFenYTrcZv+pqf1DFfL3gjBxLQirhtFtfoxlLcj4Q0cVxMoa9BAH27JHgog2xVr0r6gHYQpXTT74mRhmGS9ClQXoFmknG/HCWZ8QyXTz+8US15Gn914oeNlFvSF5K6GWY94=
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>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>,
	<Henry.Wang@arm.com>
Subject: [for-4.18][PATCH 1/2] x86: Clarify that up to 5 hypercall parameters are supported
Date: Fri, 6 Oct 2023 09:51:41 +0200
Message-ID: <20231006075142.9803-2-michal.orzel@amd.com>
X-Mailer: git-send-email 2.25.1
In-Reply-To: <20231006075142.9803-1-michal.orzel@amd.com>
References: <20231006075142.9803-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: CY4PEPF0000EDD0:EE_|CH3PR12MB7596:EE_
X-MS-Office365-Filtering-Correlation-Id: 61342e72-fb64-4a56-fe6d-08dbc64119be
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	ozrspxtVspl6fgQibqN4MUu9iYp0BtRcvs3J1sqXO78i6F96ZHucXpdc5bFc8tkM9a4iYWcit4r/13M/oC4ddBtIkOslIXGXyp64TaSs8xi4B+ZEHdWKaCay/FjbUDGbE+kbKQ/YaVfQPAtE05fbLtj8jibdtGF68+RkHiaWzBfQ4VCmy0ymRjnzor0EJhHfL3T/zmjn/OSf5SFix+ag6y5xmWc7hpAAWiXaiiTJKn1T3uc8un5SMAisY5tJsyzRWnz6E0TCry5c5VxIx+vwkoz+2Bqh1Tc3SnP72Ge/JkhQI1QkzDaA66edt8Nk87vcb1t5zY1TxI3Fp72uMCpLCVbUfLcE/e7YZU3qYExEOAfbE0mmjFkIdzGnCCUb/DDaFw7gwpPHRBi9Y3KDUOvzbhUE0G9hSr9mY5ZdPhujoSqoDeGROU2uSTYeUoJpVPnrwgKE8ZZ86Dgjue/bM3nbBdSSFIzeEtQtyY1+u6D0IsH0uhDBQ8GDBR9/uuFMr6AjNVSA9Jdg9WYvnABJiWnXxf4a6at2Y417sqN1rUJHvl4aBcrh28XHs/1LI2SI7wiV69LvscAzj+QfZuOcAfum4Q0y1s2AmC9MayAhadpBG7xy3cynq4GLmmsf15hPA8Meve7y++JUWknO1gZRXzDw4RzqFx3mw2t458lddt3Tm2ihDBAzFYG2HiNiOH174IQjznd6iHdwpyluMqZkGkLD+QIqEPAeMtQ5dZAbAeeglT2ct61UKhvbOJJs++1cWgAqjWIey3dAzKn5qIduozbzbw==
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)(230922051799003)(1800799009)(64100799003)(451199024)(82310400011)(186009)(36840700001)(46966006)(40470700004)(36860700001)(2616005)(336012)(1076003)(6666004)(426003)(26005)(4326008)(5660300002)(47076005)(478600001)(2906002)(70206006)(41300700001)(8676002)(44832011)(316002)(70586007)(6916009)(8936002)(54906003)(40460700003)(83380400001)(356005)(82740400003)(36756003)(81166007)(86362001)(40480700001)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Oct 2023 07:51:50.9084
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 61342e72-fb64-4a56-fe6d-08dbc64119be
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:
	CY4PEPF0000EDD0.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH3PR12MB7596

Update public headers and hypercall-abi doc as a consequence of commit
2f531c122e95 ("x86: limit number of hypercall parameters to 5").

Signed-off-by: Michal Orzel <michal.orzel@amd.com>
---
 docs/guest-guide/x86/hypercall-abi.rst   | 8 ++++----
 xen/include/public/arch-x86/xen-x86_32.h | 2 +-
 xen/include/public/arch-x86/xen-x86_64.h | 2 +-
 3 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/docs/guest-guide/x86/hypercall-abi.rst b/docs/guest-guide/x86/hypercall-abi.rst
index 14c48929d748..7b17af720566 100644
--- a/docs/guest-guide/x86/hypercall-abi.rst
+++ b/docs/guest-guide/x86/hypercall-abi.rst
@@ -4,7 +4,7 @@ Hypercall ABI
 =============
 
 Hypercalls are system calls to Xen.  Two modes of guest operation are
-supported, and up to 6 individual parameters are supported.
+supported, and up to 5 individual parameters are supported.
 
 Hypercalls may only be issued by kernel-level software [1]_.
 
@@ -18,17 +18,17 @@ The registers used for hypercalls depends on the operating mode of the guest.
 
    * - ABI
      - Hypercall Index
-     - Parameters (1 - 6)
+     - Parameters (1 - 5)
      - Result
 
    * - 64bit
      - RAX
-     - RDI RSI RDX R10 R8 R9
+     - RDI RSI RDX R10 R8
      - RAX
 
    * - 32bit
      - EAX
-     - EBX ECX EDX ESI EDI EBP
+     - EBX ECX EDX ESI EDI
      - EAX
 
 32 and 64bit PV guests have an ABI fixed by their guest type.  The ABI for an
diff --git a/xen/include/public/arch-x86/xen-x86_32.h b/xen/include/public/arch-x86/xen-x86_32.h
index 139438e83534..9e3bf06b121e 100644
--- a/xen/include/public/arch-x86/xen-x86_32.h
+++ b/xen/include/public/arch-x86/xen-x86_32.h
@@ -12,7 +12,7 @@
 
 /*
  * Hypercall interface:
- *  Input:  %ebx, %ecx, %edx, %esi, %edi, %ebp (arguments 1-6)
+ *  Input:  %ebx, %ecx, %edx, %esi, %edi (arguments 1-5)
  *  Output: %eax
  * Access is via hypercall page (set up by guest loader or via a Xen MSR):
  *  call hypercall_page + hypercall-number * 32
diff --git a/xen/include/public/arch-x86/xen-x86_64.h b/xen/include/public/arch-x86/xen-x86_64.h
index 5d9035ed2230..43f6e3d22001 100644
--- a/xen/include/public/arch-x86/xen-x86_64.h
+++ b/xen/include/public/arch-x86/xen-x86_64.h
@@ -12,7 +12,7 @@
 
 /*
  * Hypercall interface:
- *  Input:  %rdi, %rsi, %rdx, %r10, %r8, %r9 (arguments 1-6)
+ *  Input:  %rdi, %rsi, %rdx, %r10, %r8 (arguments 1-5)
  *  Output: %rax
  * Access is via hypercall page (set up by guest loader or via a Xen MSR):
  *  call hypercall_page + hypercall-number * 32
-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Fri Oct 06 07:52:07 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 07:52:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613259.953679 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qofcr-0002bb-JA; Fri, 06 Oct 2023 07:51:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613259.953679; Fri, 06 Oct 2023 07: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 1qofcr-0002bU-Eo; Fri, 06 Oct 2023 07:51:57 +0000
Received: by outflank-mailman (input) for mailman id 613259;
 Fri, 06 Oct 2023 07:51: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=5b7L=FU=amd.com=Michal.Orzel@srs-se1.protection.inumbo.net>)
 id 1qofcq-0002bN-B1
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 07:51:56 +0000
Received: from NAM11-CO1-obe.outbound.protection.outlook.com
 (mail-co1nam11on2061e.outbound.protection.outlook.com
 [2a01:111:f400:7eab::61e])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 364662e5-641d-11ee-98d3-6d05b1d4d9a1;
 Fri, 06 Oct 2023 09:51:53 +0200 (CEST)
Received: from MN2PR12CA0030.namprd12.prod.outlook.com (2603:10b6:208:a8::43)
 by SJ0PR12MB8116.namprd12.prod.outlook.com (2603:10b6:a03:4ec::22)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.25; Fri, 6 Oct
 2023 07:51:49 +0000
Received: from BL02EPF0001A108.namprd05.prod.outlook.com
 (2603:10b6:208:a8:cafe::a4) by MN2PR12CA0030.outlook.office365.com
 (2603:10b6:208:a8::43) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.29 via Frontend
 Transport; Fri, 6 Oct 2023 07:51:48 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 BL02EPF0001A108.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.6838.14 via Frontend Transport; Fri, 6 Oct 2023 07:51:48 +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, 6 Oct
 2023 02:51:48 -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, 6 Oct
 2023 02:51:47 -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; Fri, 6 Oct 2023 02:51: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: 364662e5-641d-11ee-98d3-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=FYzzBlPoTmK8aeiwMseeDcoSInLgbo915CQbCvts4Z8miQO8F062c0P/rilCnAov5BYL/mqGGg98EdSs7wonjhPyqleIQaao/56JamwRmLFJOzW3/4VRw7m9U7CZDYm4JAvI9Ia6mHRkDEiVKimy8Nhj0SCYhqN3TyoTSw5bWq9T0/IV7mZc+7srHNl1dXA9YKflpyn0XQQAllle0XKiQtka1CmydNLMfIdQuZUjSA7UMNi+rxybD3xxTEZYxsxCefvuPjuI4QNjENuj/8NlrXYkEOGlD6gvVRaqIlNx0docU9unwn717ZaZ1b/3q3cfkJqRdC6WJ/bEkwii574W8g==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=UDcWG+emq8BoQntBuz9fj8sdUx56DafqqN4Oo8Y2L2o=;
 b=MtT9zCHdP2uaFw6qT7yN/9V/WnAc9RG5PQB/a39V81fCc0i28M13mV2EpOa6vFf+gCqjFFo8qqwX/pt19nsyQBNgNeyQyox1KV4MdXYUQQXqpZpP2bHYrUPqEFFPx4TmS+3100oe67QRCxUnknL+slkhrJ2wjIL+6/rS9KuzMXPu1UffH3FNt2s/R+nHDVeW+oCmYlxzM+O/ufAyYHUbuE8KLtEQryBbT50sTyESWZGHkB3lOVw6uiT9dQM2iD3fid8/SBa6zvNyX3AYJkoe+iFTA63V2JsxCD1Llc049I15kriHT/2jY5JbC4f2vA+DtT653XwI6TobPUpIWE0iBQ==
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=UDcWG+emq8BoQntBuz9fj8sdUx56DafqqN4Oo8Y2L2o=;
 b=Plw48e86ncU7FiCy6/n9zT5ULBjtvoUX3anQg0DAB5uHRMFAI4XQ540jBqEtVwboRH0ji0QBYx3B5OZnnqUdMlEJX1h7l1Lw7yhIV5SGSMsff4/capOOFNkDmrH2zdASpQPu9+P6moxvMkjcQdt07hktdfea4PyJIZQi5pXpmmY=
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>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>, Bertrand Marquis
	<bertrand.marquis@arm.com>, Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	"Daniel P. Smith" <dpsmith@apertussolutions.com>, <Henry.Wang@arm.com>
Subject: [for-4.18][PATCH 0/2] xen: hypercalls doc update
Date: Fri, 6 Oct 2023 09:51:40 +0200
Message-ID: <20231006075142.9803-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: BL02EPF0001A108:EE_|SJ0PR12MB8116:EE_
X-MS-Office365-Filtering-Correlation-Id: 5b94a167-719c-48cb-a115-08dbc6411852
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	uSMM3slm7DibqGvqSoNSJaoVkuIm1uyisZXPO3cgDXg7/Iz8QBYNm+kYabYqrYqKFS88n79M7ehDjmH5NDbKkbshczBTE+BaAO2uexG8VSMb/IDSyFeg51fGLM7mtWLnd4gMFzAIig/lWVmaA7jY9PCJTNmtOPd/fxFBLkwEKN5WRZ2gRuqi597DRBETAZK5OE10x5s6n4XCUjLZx2oYCdMo2S3qQROxi2ynBULn7YPt8miE2OU7rOi2SYG72snwK4zmBMk8jNTRqK+/5JohAtuLQbtLl8PNhxdRQmjwjYsBoshCqacsQHuHW/xk27CHNRuiDSnV3yKRdXtb2duTVB5JHocSXZZhlDSILm3HmOILBEHHqAxOh34rJPjvleMknj9JiwMlFiDcH2emasP/wJGbaEdfL4n3N5BhiQsiNjlKCmtU6qtnugsJ1Zssvx1W/tymfspnCYZiMFWOl6iLVkjaBQE0vFRDVd2UYihKZrXhomOB6lR7DH86YFqqD9lQjbmYKn4M+gPcZ/0Tbzi/YvefUM21YhfcF5ytMxypR6lKkEwZ+1cmVR1aMDq2jKlvtbdnnVYbPTGzUauJbs040eStWPNf0XY9cvJ5h2bTH7FsHby/2/oc9tctsfF+swV5kRuoGGjkj5Gr1l8Atfz9oN7HgFMQQFXwGZhESQctF7R420GRwtv95DPM5bqSyayLK69PYcE0A0cjujRPlZiqI4s+q4HMwr1O34UPHJGUuxjgJaF8weAIYje62ZQWI4bpvZ2vp+1WDQvvcWmrnx7OBA==
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)(230922051799003)(82310400011)(1800799009)(64100799003)(186009)(451199024)(36840700001)(46966006)(40470700004)(4326008)(7416002)(40480700001)(2906002)(316002)(41300700001)(5660300002)(54906003)(6916009)(44832011)(70206006)(70586007)(4744005)(15650500001)(8676002)(40460700003)(36756003)(8936002)(36860700001)(2616005)(81166007)(47076005)(356005)(6666004)(82740400003)(83380400001)(336012)(426003)(86362001)(26005)(478600001)(1076003)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Oct 2023 07:51:48.5830
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 5b94a167-719c-48cb-a115-08dbc6411852
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:
	BL02EPF0001A108.namprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR12MB8116

Update hypercalls related docs before the release to avoid confusion.

@Henry:
Updating docs has no risks and is beneficial for the users, so it would be
good to have it in 4.18.

Michal Orzel (2):
  x86: Clarify that up to 5 hypercall parameters are supported
  xen/public: arch-arm: Update list of supported hypercalls

 docs/guest-guide/x86/hypercall-abi.rst   |  8 ++++----
 xen/include/public/arch-arm.h            | 21 +++++++++++++++++++++
 xen/include/public/arch-x86/xen-x86_32.h |  2 +-
 xen/include/public/arch-x86/xen-x86_64.h |  2 +-
 4 files changed, 27 insertions(+), 6 deletions(-)

-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Fri Oct 06 07:54:10 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 07:54:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613270.953709 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qofez-00057M-IG; Fri, 06 Oct 2023 07:54:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613270.953709; Fri, 06 Oct 2023 07:54: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 1qofez-00057F-F0; Fri, 06 Oct 2023 07:54:09 +0000
Received: by outflank-mailman (input) for mailman id 613270;
 Fri, 06 Oct 2023 07:54: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=I3TD=FU=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qofey-000573-Ar
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 07:54:08 +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 85d58289-641d-11ee-9b0d-b553b5be7939;
 Fri, 06 Oct 2023 09:54:06 +0200 (CEST)
Received: from AM0PR10CA0015.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:208:17c::25)
 by DBBPR08MB5883.eurprd08.prod.outlook.com (2603:10a6:10:206::12)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.37; Fri, 6 Oct
 2023 07:53:35 +0000
Received: from AM7EUR03FT021.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:208:17c:cafe::c7) by AM0PR10CA0015.outlook.office365.com
 (2603:10a6:208:17c::25) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.29 via Frontend
 Transport; Fri, 6 Oct 2023 07:53:35 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM7EUR03FT021.mail.protection.outlook.com (100.127.140.243) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6886.15 via Frontend Transport; Fri, 6 Oct 2023 07:53:35 +0000
Received: ("Tessian outbound 0ae75d4034ba:v211");
 Fri, 06 Oct 2023 07:53:35 +0000
Received: from 1ba6eea2d2bd.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 731C0358-5097-440F-8754-CA9518ED7366.1; 
 Fri, 06 Oct 2023 07:53:28 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 1ba6eea2d2bd.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Fri, 06 Oct 2023 07:53:28 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by DU2PR08MB7311.eurprd08.prod.outlook.com (2603:10a6:10:2e6::7) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.35; Fri, 6 Oct
 2023 07:53: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%7]) with mapi id 15.20.6838.033; Fri, 6 Oct 2023
 07:53: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: 85d58289-641d-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=WUh2Y9tdvJZA3XyIInghRr5hrs2iCboIlqorNwoR6Mw=;
 b=bGnXzi51i4nJopZ9xIzMI2z5PXKia8jzqR7lj8cBOBKHYt0225ht479Hq1okN/qnD3bm7uM8w4STnx2hO4T2rsY2FCGI9NtvgjUy8Pc+dwY2nBjLP8jE3P94mFipuB8wAS43joXGL6GrgNrpNHxMKsJ7VvR0/Qfpfe914rHKrnw=
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: 702dba83a1e77869
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=DDIJVxnoZTdiWRTnKbywO/jkNAp1oPSCnGVpUdhamEJd29sFLaalZjNqpF0g+sjSPaBW5PWyFOfXG1JVjJ02548r9+vN704/YylnPttwYJ3BJ2U76pOivTbj27JTA7HOwyCJDSGlbj7LzAKwXWaHfvRjVsKrRKZsCGTu4mf1YqTiF3TPCPL4hIa8ipbx2w4DoI0gog7t856/LErKivJLWogaVN8qzl/SFewSk6/z4HHTDxx5a9laNhvkVaUJaIRJSGkCGIIE0VE1ayvhrLDgpKxuREugfZIet0pIT/xgtNj2f6CoOKlZ4eDdTTD9kknCusO+Y1eqLWDoMyvObS+wvQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=WUh2Y9tdvJZA3XyIInghRr5hrs2iCboIlqorNwoR6Mw=;
 b=J6Xc1OOCsmFxSH7KOrcpi6CtYFpjbfkyakqi5RTQCz4im6EnoTUlHvHRV60RUYezi3LWrzAKzvcGaf8UjL4JxUH1KM05XO55suR7oNumRmKDRdlyER85Px49dz3Hi5CBwafjxli1RAsnmPM6zwN80rtvjDu2G5S4HIggdU6l8SI8fkgKIm19WC30xDHFq1LCiFtosETarK1vny1/E0vhzfyeyALyhcCRzDxfr9493roCEM9/3J9+DpHsMZFvYIscf9M9MccwjyqTA4J+b6743x0sVbkIJfPAw2t0vXzeAGdIa17efkbZhoB12DQu+WI67qtNpyjMQb5WqSWTdXk/qg==
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=WUh2Y9tdvJZA3XyIInghRr5hrs2iCboIlqorNwoR6Mw=;
 b=bGnXzi51i4nJopZ9xIzMI2z5PXKia8jzqR7lj8cBOBKHYt0225ht479Hq1okN/qnD3bm7uM8w4STnx2hO4T2rsY2FCGI9NtvgjUy8Pc+dwY2nBjLP8jE3P94mFipuB8wAS43joXGL6GrgNrpNHxMKsJ7VvR0/Qfpfe914rHKrnw=
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>,
	=?iso-8859-1?Q?Roger_Pau_Monn=E9?= <roger.pau@citrix.com>, Bertrand Marquis
	<Bertrand.Marquis@arm.com>, Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	"Daniel P. Smith" <dpsmith@apertussolutions.com>
Subject: Re: [for-4.18][PATCH 0/2] xen: hypercalls doc update
Thread-Topic: [for-4.18][PATCH 0/2] xen: hypercalls doc update
Thread-Index: AQHZ+Cn+5m37QnKCckKGeOXOP1auN7A8Y/6A
Date: Fri, 6 Oct 2023 07:53:26 +0000
Message-ID: <81E5C18E-62CF-4BAE-A66F-8F14A91CBD48@arm.com>
References: <20231006075142.9803-1-michal.orzel@amd.com>
In-Reply-To: <20231006075142.9803-1-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_|DU2PR08MB7311:EE_|AM7EUR03FT021:EE_|DBBPR08MB5883:EE_
X-MS-Office365-Filtering-Correlation-Id: bce8ee16-c1e5-4311-213e-08dbc64157f7
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:
 Qy35UboftG3nLgpg/JiXbg3KLWyTDUKw3nSrNwEws9J9GkHr3HSzmtHutKrbx+/GDrVeJe3jhQSLcULRGbZfzG0LG1epYPKRtTO9fgSw1VxX+FiN3nZUvNROvAa0cpaXVRKdOHxt7uL36bBeDxowc4BkZrqgRSueoBnZGsshtxpDmIIJDSxd8wlE62B7PvcLJgwKekrF52Njbn0KvmjTf9r438pRaEfmfJQ+6E77srPZ0G7oOyw+AJ6UZS6uiIQl7n4HfkTg6e38PIa/igAZe3W4OLcDy2OwQtjmz3r0cJJUCvmNA77JdKIfYN/wMugDhB/IxZuSXfRHI0BAgyPgXsfQ2uDhXB0vgaV/wW9AGDtvI6U6u1xoECx898QQ3T3Zvxu4dosTmfR4HZKOgxxB6TrY9bR3/K/Hzydymcm94HCMPOLeNe1xrPHNO1wFIFlNwsGqoykPxhaRsTftcB6xC4WF48ufTQxVX+CLpNvNQgax1telEi5pzXkwir1rU14FqSx7We6gBk4GaDL+qzUvPsv7zTYLv4syNPGbjmLIrOxoemPDz70ZVSN2c/5Fx8pSfbNk6rIgU5kP7n/jpG/WMq1zYXTYE1Kx5O0ju67B97KaJ3QQYfDog5CKC3gAQvLrpK4nJ7WKkipmspcs4o9D2A==
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)(376002)(136003)(366004)(396003)(346002)(230922051799003)(64100799003)(186009)(1800799009)(451199024)(8676002)(6512007)(6486002)(6506007)(478600001)(53546011)(71200400001)(2616005)(41300700001)(83380400001)(26005)(2906002)(15650500001)(6916009)(91956017)(66446008)(66946007)(8936002)(54906003)(66556008)(316002)(4326008)(66476007)(76116006)(36756003)(7416002)(64756008)(5660300002)(38070700005)(33656002)(38100700002)(4744005)(122000001)(86362001)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="iso-8859-1"
Content-ID: <C329D6D25A1BE94CA1088985AA73E7B3@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU2PR08MB7311
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:
 AM7EUR03FT021.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	9f7f0543-3764-4845-a642-08dbc64152d4
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	swHu5GNp7hZFyEN1ZH2133VigXbxMbGmNtnhkD/qGi9JLe8WulKYKpZ5YTVTpZpk6o/vnDvaSAYgBmxyN0o0C0rYF4ywsMnYcdreKcY7jLajw9nRW0lJ3HBm6K7NYfW4+kg9KdYg9Nmb0WKOHOdOAfTkk0qxS9d1tk68o8Aqe/0D7mJiwX7Gc+qxfyXBMSgUBK6g3a28c7oHdaHI6qftoICUL0EYMJhi+nMYL+pyoahmJjd8JB6JM5O3eYv5UU6sUp6tAJBTMNH/og5GIZerej+bUCY+kC4aPLd1uUZSMx/iJpTmuddb+Al90wL7gfFNVPOD3X+9GV62tnQykNudSrVWmsMM1Gw+ZL7pZnYYotwSdpRblaTdjIiRrjOAswsG6i2HB81AcUOymp+pj34lspDsxcH9YsMryr7zPE0QnyK5G2b5ecZ2N/lb1ayvzuLMGVr7JK6zDwfrgMnI+I29yD6iPacOk4kBdDrKXSAkV/mWBHQ8Fy80GdKUVaHfskQQqS+grWF9Hhsn1eWwB8RE9O717Ma94uDEP1ZEj3FdJU4MObUFypswHSHoizRa/82RmLG3NN3BuzaYy78aTwEBIu2dpIcIn6ybCtL82CgpuwcPOtOSg/xSRgEdI7kme7zAfGaUtfvOwYVFz8znDtgg5FQCuyQgxdsQsupXSoykPYiifrIESUWAxTbxsdVjFApzNFiQ6xgw9ROQjy59U7M/jc3aPQ9a4D0WN1IcO/iJqXuRFBtz0HYbPIEoBgzDDeZq
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)(346002)(396003)(136003)(230922051799003)(451199024)(186009)(1800799009)(82310400011)(64100799003)(40470700004)(36840700001)(46966006)(107886003)(40460700003)(40480700001)(53546011)(6506007)(6486002)(478600001)(6512007)(47076005)(36860700001)(86362001)(82740400003)(33656002)(356005)(81166007)(2906002)(15650500001)(83380400001)(336012)(26005)(2616005)(36756003)(70206006)(8936002)(70586007)(4744005)(4326008)(54906003)(5660300002)(6862004)(41300700001)(316002)(8676002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Oct 2023 07:53:35.3419
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: bce8ee16-c1e5-4311-213e-08dbc64157f7
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:
	AM7EUR03FT021.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBBPR08MB5883

Hi Michal,

> On Oct 6, 2023, at 15:51, Michal Orzel <michal.orzel@amd.com> wrote:
>=20
> Update hypercalls related docs before the release to avoid confusion.
>=20
> @Henry:
> Updating docs has no risks and is beneficial for the users, so it would b=
e
> good to have it in 4.18.

Indeed, so with proper review of the series,

Release-acked-by: Henry Wang <Henry.Wang@arm.com>

Kind regards,
Henry

>=20
> Michal Orzel (2):
>  x86: Clarify that up to 5 hypercall parameters are supported
>  xen/public: arch-arm: Update list of supported hypercalls
>=20
> docs/guest-guide/x86/hypercall-abi.rst   |  8 ++++----
> xen/include/public/arch-arm.h            | 21 +++++++++++++++++++++
> xen/include/public/arch-x86/xen-x86_32.h |  2 +-
> xen/include/public/arch-x86/xen-x86_64.h |  2 +-
> 4 files changed, 27 insertions(+), 6 deletions(-)
>=20
> --=20
> 2.25.1
>=20



From xen-devel-bounces@lists.xenproject.org Fri Oct 06 08:00:03 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 08:00:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613275.953719 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qofkc-0005o6-7O; Fri, 06 Oct 2023 07:59:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613275.953719; Fri, 06 Oct 2023 07:59: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 1qofkc-0005nz-3B; Fri, 06 Oct 2023 07:59:58 +0000
Received: by outflank-mailman (input) for mailman id 613275;
 Fri, 06 Oct 2023 07:59: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=4crp=FU=arm.com=Luca.Fancellu@srs-se1.protection.inumbo.net>)
 id 1qofkb-0005nr-0t
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 07:59:57 +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 55aaada0-641e-11ee-9b0d-b553b5be7939;
 Fri, 06 Oct 2023 09:59:54 +0200 (CEST)
Received: from DUZP191CA0059.EURP191.PROD.OUTLOOK.COM (2603:10a6:10:4fa::13)
 by AS8PR08MB6262.eurprd08.prod.outlook.com (2603:10a6:20b:23e::21) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.35; Fri, 6 Oct
 2023 07:59:17 +0000
Received: from DBAEUR03FT039.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:4fa:cafe::49) by DUZP191CA0059.outlook.office365.com
 (2603:10a6:10:4fa::13) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.37 via Frontend
 Transport; Fri, 6 Oct 2023 07:59:17 +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.6863.29 via Frontend Transport; Fri, 6 Oct 2023 07:59:16 +0000
Received: ("Tessian outbound fdf44c93bd44:v211");
 Fri, 06 Oct 2023 07:59:16 +0000
Received: from 7f3042740800.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 893009A5-D33D-4321-929F-FE64B86A4E59.1; 
 Fri, 06 Oct 2023 07:58:16 +0000
Received: from EUR03-DBA-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 7f3042740800.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Fri, 06 Oct 2023 07:58:16 +0000
Received: from AM6PR08MB3749.eurprd08.prod.outlook.com (2603:10a6:20b:8f::22)
 by DBBPR08MB5978.eurprd08.prod.outlook.com (2603:10a6:10:1f5::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.38; Fri, 6 Oct
 2023 07:58:14 +0000
Received: from AM6PR08MB3749.eurprd08.prod.outlook.com
 ([fe80::501a:489c:410b:338]) by AM6PR08MB3749.eurprd08.prod.outlook.com
 ([fe80::501a:489c:410b:338%6]) with mapi id 15.20.6838.033; Fri, 6 Oct 2023
 07:58: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: 55aaada0-641e-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=vWYTb3bYtynOgVLpm9cg6ocPJoPTeA9dG4O2Any1404=;
 b=kR6LRG8G2F0AY0L3tEfLisNyxK+/oO4nxFyPCUNnzDLf30Cl7cy0diFXqRqit6k6ceemtnG8w4sKeY+pW9EsZy6yyDUjE8yZdFUrDnywO4AXoV+tdp1sSw+LgbG1A578UzUvWqquT2fD1vqEvlZPSBVQjrGwBNWzvphMc9YHIto=
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: 9bec4b704c0706fd
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Ctmmz0lpiFXSRDG2MVan1cJERnnjacTWwsCF0Quz9Wq1lW8itBJ8EOwiPVn2pRHp4pDP6Q8nXygGx4Rn0lOcsOIgVLxBTxAGRNMdiUL4CQSTa6fhcttWleLFwsNWnTP8JZ2z2QiWKHs9C85yqO57CjL4scIjGDt5Mz049wR8lNeHOC1By0xzRTgE2Vease77h4qKeMgqCGeAAGz2rYruAHb7xHsA9j8uN/Pmxqg0bLihiOsdcDoJ7I5Lr0nQjmWRJAUntctBl2B3Kntw0SoPNv9lwr1n92PtuAZgZG63qeqsDNvG8+tCAiqM9Fkl50Uyd9vmkUsp9zxDbDPK4y6MmQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=vWYTb3bYtynOgVLpm9cg6ocPJoPTeA9dG4O2Any1404=;
 b=CnS9J7qmQEfyObAIW5pYEs3FdJBkxzOgA7e07QvniAXl+IITMopC8lP2NfikRsjj2+FugZpVonwtw3Zh84m76ZJb886iWkz1LZwe6VU/n9hADU2Gsx5g03E8MrCxzBtapnnS4YoczkHs71cfX5sRq9i9BoJ1GtBMbhVqI9bN8V748gsaQ7amdTwvHk3dPQTVkFGDZXhXBUwEm/sP0wfext+r9WWjaP3emoafg3Uh0DxgYGwib8em0eUg0/MBZKrCWzQen2t59pIEPgSsRyzi/z9n0J9ciBcwO7yoRlZ8BwpyF88n+jK1ovfLYVV1PyQDLnoRoG/KPoNEsDB7KVBcxw==
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=vWYTb3bYtynOgVLpm9cg6ocPJoPTeA9dG4O2Any1404=;
 b=kR6LRG8G2F0AY0L3tEfLisNyxK+/oO4nxFyPCUNnzDLf30Cl7cy0diFXqRqit6k6ceemtnG8w4sKeY+pW9EsZy6yyDUjE8yZdFUrDnywO4AXoV+tdp1sSw+LgbG1A578UzUvWqquT2fD1vqEvlZPSBVQjrGwBNWzvphMc9YHIto=
From: Luca Fancellu <Luca.Fancellu@arm.com>
To: Stefano Stabellini <sstabellini@kernel.org>
CC: Nicola Vetrini <nicola.vetrini@bugseng.com>, Xen-devel
	<xen-devel@lists.xenproject.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>, Jan Beulich
	<jbeulich@suse.com>, =?utf-8?B?Um9nZXIgUGF1IE1vbm7DqQ==?=
	<roger.pau@citrix.com>, Henry Wang <Henry.Wang@arm.com>, Simone Ballarin
	<simone.ballarin@bugseng.com>, Doug Goldstein <cardoe@cardoe.com>, George
 Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>, Wei Liu
	<wl@xen.org>, Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [XEN PATCH] xen: Add SAF deviations for MISRA C:2012 Rule 7.1
Thread-Topic: [XEN PATCH] xen: Add SAF deviations for MISRA C:2012 Rule 7.1
Thread-Index:
 AQHZ9qj87vFsnMRst0ybMa+ffKOLU7A5Z4mAgAAGhgCAAAYzgIAA1KIAgACGqQCAASTEgIAAdASA
Date: Fri, 6 Oct 2023 07:58:13 +0000
Message-ID: <C2DDFAB5-D943-4A24-9C14-AF35BE2A7C90@arm.com>
References:
 <338d8e574db943a86c7605e4c6d9a299d45f067d.1696347345.git.nicola.vetrini@bugseng.com>
 <alpine.DEB.2.22.394.2310031345190.2348112@ubuntu-linux-20-04-desktop>
 <e1736215-52ba-4737-9da3-8f1ba7e832a6@citrix.com>
 <DB96C095-5FAF-40A1-9CA8-002291AA1933@arm.com>
 <2894008e8f612296da84267346ae4240@bugseng.com>
 <B00BC78B-E707-4043-A0B4-D320C6717472@arm.com>
 <alpine.DEB.2.22.394.2310041625170.2348112@ubuntu-linux-20-04-desktop>
 <9DD525D9-DB6D-4888-9266-FB45906A0E0F@arm.com>
 <alpine.DEB.2.22.394.2310051756360.2348112@ubuntu-linux-20-04-desktop>
In-Reply-To:
 <alpine.DEB.2.22.394.2310051756360.2348112@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_|DBBPR08MB5978:EE_|DBAEUR03FT039:EE_|AS8PR08MB6262:EE_
X-MS-Office365-Filtering-Correlation-Id: 0fe9df95-2bc6-433e-9518-08dbc642238f
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:
 /+WtCTiygEOwKKFhA9WVlo2peL4s6oKUobBG5CvycshBTZkT+6gvMdwxResS1Myb86iQCQ8nFCshOYfILM5gkE10x+PFpYMNC4nwylw5Yrhn1jn/FUQoEsfmNpI4cyJgVnGR4ur9dsfFBk1wlswJNXnyF7viK2+TnLWho8XrS5nu7o1U/5tkWfsfL51kOLWk/wKAU2KE4sx+eIwdBwCVVK85fzQHRvASSbjTcG8/BlK+i+VUwlDGPKbOjQgLNywyLdCSoI7ncw7g7UNIwQc304UY2SMwL5E4VAee69RMoK93AwZJETsmAPMH/SMzbyG6cyUVZX6Yq1zJVb9bjP9fGu5HioB7PYJhfi/3HY5SUQluTHAsLB7J9ZBXVmGwo254oYuiLHRtZ7KGe+rqJF4h0v800d03B0fOQ1bBwyXc5gVnQKO47LZFoghENF291+pyEtJm4eXKMrgmd892djUM70s5hCU5hqJzAIQG61tMbGTLfm9Bcsme9e2kwYPWi5h5lrvI0+E4P+uZRhhyldq3C9VtanjUcFM6OOnT+svEZ0ApMnSPvy+c3d6fnOgnlmmYAudb0J4ViTqTjQ3BJoj32DctZSbbOgoBeRfPqUB8CEMyKLmP/xGwXI8psVIEVD4BK6xbf+EbiPfeKgVmqgpJPQ==
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)(376002)(396003)(136003)(366004)(39860400002)(230922051799003)(186009)(1800799009)(451199024)(64100799003)(38100700002)(38070700005)(71200400001)(83380400001)(122000001)(6506007)(53546011)(26005)(2616005)(316002)(36756003)(41300700001)(54906003)(76116006)(66946007)(66556008)(6916009)(91956017)(66476007)(66446008)(64756008)(2906002)(33656002)(7416002)(86362001)(4326008)(8676002)(8936002)(5660300002)(6486002)(478600001)(6512007)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <28CE4C167FAE244B9B807BCEFC78190B@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBBPR08MB5978
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:
	29f62db2-9392-4284-2e67-08dbc641fe0b
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	DKTOMa8rp16bNaeM5PagsoAa78IabvKMyrfWtFNJy3R+k77yiW2XS4FQZCu93KVNxI22MTwZczKFoYjddvuZueVoInw5OTbvIr7qxMQ7ODOXCWPF+qRwDlt5MuNypGFA3njMA3/fY4SZ0vL/O+C5Q9NG1RtOxTnhXylzZ3ycjyT6S2d9Mh+II0NjNH8UhIE+7R3G4hHTo/UEWv6DXUI9ozByzFJLWzHxwjCjFCMTb1oX489gtrus+n2xSl0Okdc6Xp7jOB4Kk1/lQxWFc17BFJl7A05S/fahvDv7/cLYDxYZWS7NUfwapDdOfTlFr+SD8Nl03zZcd7UphVWzq2tu8nsRm2Oe/Qp6Rt57SFMxJRs7TbsjzEMrol1Ln2+xYdWiUUAFz14ol9bFaAljBOZvMpr6ipjSpz6ekYNXpztQKYV15rPR7DTBZIXYTHz91gO7Nrg2eUXP1Cqcs4nyXYmnAg/bU/UcZWT5AqHSKZtbzordYjQ7Vpv+AwjcNmy8QkRKzhiEVNrd1j2zRHrhX64SRGEnxRhIOQoKjQeZbQLwwcj2LZJvvzXtOs295t3TCW/73S/I4E5x7/eYEYf4gSCRP6FqXYFAOUiOKoKl175/BJgqEW57XH9wclP7Sl7oesYygP1/0WEbn49uDpCDuhI1kSfE6rSKph7KsIeaQsQWEMTrc3fbrRN/I9lKcg0ZBuBSt+wv9KxS+4ySFG10UZx5xtR4Nj4vi7agraocLQuYo/+rogEfNHmuecyBcbxSfDBj
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)(186009)(1800799009)(451199024)(64100799003)(36840700001)(46966006)(40470700004)(53546011)(6506007)(478600001)(6486002)(6512007)(83380400001)(2616005)(107886003)(26005)(316002)(2906002)(41300700001)(70586007)(70206006)(5660300002)(6862004)(8676002)(8936002)(4326008)(36756003)(54906003)(36860700001)(33656002)(47076005)(86362001)(356005)(82740400003)(81166007)(336012)(40480700001)(40460700003);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Oct 2023 07:59:16.9342
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 0fe9df95-2bc6-433e-9518-08dbc642238f
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: AS8PR08MB6262

DQoNCj4gT24gNiBPY3QgMjAyMywgYXQgMDI6MDIsIFN0ZWZhbm8gU3RhYmVsbGluaSA8c3N0YWJl
bGxpbmlAa2VybmVsLm9yZz4gd3JvdGU6DQo+IA0KPiBPbiBUaHUsIDUgT2N0IDIwMjMsIEx1Y2Eg
RmFuY2VsbHUgd3JvdGU6DQo+Pj4gT24gNSBPY3QgMjAyMywgYXQgMDA6MzIsIFN0ZWZhbm8gU3Rh
YmVsbGluaSA8c3N0YWJlbGxpbmlAa2VybmVsLm9yZz4gd3JvdGU6DQo+Pj4gDQo+Pj4gT24gV2Vk
LCA0IE9jdCAyMDIzLCBMdWNhIEZhbmNlbGx1IHdyb3RlOg0KPj4+Pj4gT24gNCBPY3QgMjAyMywg
YXQgMTE6MjksIE5pY29sYSBWZXRyaW5pIDxuaWNvbGEudmV0cmluaUBidWdzZW5nLmNvbT4gd3Jv
dGU6DQo+Pj4+PiBPbiAwNC8xMC8yMDIzIDEyOjA2LCBMdWNhIEZhbmNlbGx1IHdyb3RlOg0KPj4+
Pj4+IEhpIE5pY29sYSwNCj4+Pj4+Pj4gT24gNCBPY3QgMjAyMywgYXQgMTA6NTYsIGFuZHJldy5j
b29wZXIzQGNpdHJpeC5jb20gd3JvdGU6DQo+Pj4+Pj4+IE9uIDAzLzEwLzIwMjMgOTo0NiBwbSwg
U3RlZmFubyBTdGFiZWxsaW5pIHdyb3RlOg0KPj4+Pj4+Pj4gT24gVHVlLCAzIE9jdCAyMDIzLCBO
aWNvbGEgVmV0cmluaSB3cm90ZToNCj4+Pj4+Pj4+PiBBcyBzcGVjaWZpZWQgaW4gcnVsZXMucnN0
LCB0aGVzZSBjb25zdGFudHMgY2FuIGJlIHVzZWQNCj4+Pj4+Pj4+PiBpbiB0aGUgY29kZS4NCj4+
Pj4+Pj4+PiBUaGVpciBkZXZpYXRpb24gaXMgbm93IGFjY29tcGxpc2hlZCBieSB1c2luZyBhIFNB
RiBjb21tZW50LA0KPj4+Pj4+Pj4+IHJhdGhlciB0aGFuIGFuIEVDTEFJUiBjb25maWd1cmF0aW9u
Lg0KPj4+Pj4+Pj4+IFNpZ25lZC1vZmYtYnk6IE5pY29sYSBWZXRyaW5pIDxuaWNvbGEudmV0cmlu
aUBidWdzZW5nLmNvbT4NCj4+Pj4+Pj4+ICJTQUYiIGRpc2N1c3Npb24gYXNpZGUgdGhhdCBjYW4g
YmUgcmVzb2x2ZWQgZWxzZXdoZXJlOg0KPj4+Pj4+Pj4gUmV2aWV3ZWQtYnk6IFN0ZWZhbm8gU3Rh
YmVsbGluaSA8c3N0YWJlbGxpbmlAa2VybmVsLm9yZz4NCj4+Pj4+Pj4gV2VsbCBuby4gICJTQUYi
IGFzaWRlIChhbmQgU0FGIGRvZXMgbmVlZCBmaXhpbmcgYmVmb3JlIHJlcG9zdGluZyB0aGlzIHBh
dGNoLCBvdGhlcndpc2UgaXQncyBqdXN0IHVubmVjZXNzYXJ5IGNodXJuKSwgLi4uDQo+Pj4+Pj4+
Pj4gZGlmZiAtLWdpdCBhL3hlbi9hcmNoL3g4Ni9odm0vc3ZtL3N2bS5oIGIveGVuL2FyY2gveDg2
L2h2bS9zdm0vc3ZtLmgNCj4+Pj4+Pj4+PiBpbmRleCBkMmE3ODFmYzNmYjUuLmQwNjIzYjcyY2Nm
YSAxMDA2NDQNCj4+Pj4+Pj4+PiAtLS0gYS94ZW4vYXJjaC94ODYvaHZtL3N2bS9zdm0uaA0KPj4+
Pj4+Pj4+ICsrKyBiL3hlbi9hcmNoL3g4Ni9odm0vc3ZtL3N2bS5oDQo+Pj4+Pj4+Pj4gQEAgLTU3
LDE0ICs1NywyMyBAQCBzdGF0aWMgaW5saW5lIHZvaWQgc3ZtX2ludmxwZ2EodW5zaWduZWQgbG9u
ZyBsaW5lYXIsIHVpbnQzMl90IGFzaWQpDQo+Pj4+Pj4+Pj4gI2RlZmluZSBJTlNUUl9JTlQzIElO
U1RSX0VOQyhYODZFTVVMX09QQyggMCwgMHhjYyksIDApDQo+Pj4+Pj4+Pj4gI2RlZmluZSBJTlNU
Ul9JQ0VCUCBJTlNUUl9FTkMoWDg2RU1VTF9PUEMoIDAsIDB4ZjEpLCAwKQ0KPj4+Pj4+Pj4+ICNk
ZWZpbmUgSU5TVFJfSExUIElOU1RSX0VOQyhYODZFTVVMX09QQyggMCwgMHhmNCksIDApDQo+Pj4+
Pj4+Pj4gKy8qIFNBRi0yLXNhZmUgKi8NCj4+Pj4+Pj4+PiAjZGVmaW5lIElOU1RSX1hTRVRCViBJ
TlNUUl9FTkMoWDg2RU1VTF9PUEMoMHgwZiwgMHgwMSksIDAzMjEpDQo+Pj4+Pj4+Pj4gKy8qIFNB
Ri0yLXNhZmUgKi8NCj4+Pj4+Pj4+PiAjZGVmaW5lIElOU1RSX1ZNUlVOIElOU1RSX0VOQyhYODZF
TVVMX09QQygweDBmLCAweDAxKSwgMDMzMCkNCj4+Pj4+Pj4+PiArLyogU0FGLTItc2FmZSAqLw0K
Pj4+Pj4+Pj4+ICNkZWZpbmUgSU5TVFJfVk1DQUxMIElOU1RSX0VOQyhYODZFTVVMX09QQygweDBm
LCAweDAxKSwgMDMzMSkNCj4+Pj4+Pj4+PiArLyogU0FGLTItc2FmZSAqLw0KPj4+Pj4+Pj4+ICNk
ZWZpbmUgSU5TVFJfVk1MT0FEIElOU1RSX0VOQyhYODZFTVVMX09QQygweDBmLCAweDAxKSwgMDMz
MikNCj4+Pj4+Pj4+PiArLyogU0FGLTItc2FmZSAqLw0KPj4+Pj4+Pj4+ICNkZWZpbmUgSU5TVFJf
Vk1TQVZFIElOU1RSX0VOQyhYODZFTVVMX09QQygweDBmLCAweDAxKSwgMDMzMykNCj4+Pj4+Pj4+
PiArLyogU0FGLTItc2FmZSAqLw0KPj4+Pj4+Pj4+ICNkZWZpbmUgSU5TVFJfU1RHSSBJTlNUUl9F
TkMoWDg2RU1VTF9PUEMoMHgwZiwgMHgwMSksIDAzMzQpDQo+Pj4+Pj4+Pj4gKy8qIFNBRi0yLXNh
ZmUgKi8NCj4+Pj4+Pj4+PiAjZGVmaW5lIElOU1RSX0NMR0kgSU5TVFJfRU5DKFg4NkVNVUxfT1BD
KDB4MGYsIDB4MDEpLCAwMzM1KQ0KPj4+Pj4+Pj4+ICsvKiBTQUYtMi1zYWZlICovDQo+Pj4+Pj4+
Pj4gI2RlZmluZSBJTlNUUl9JTlZMUEdBIElOU1RSX0VOQyhYODZFTVVMX09QQygweDBmLCAweDAx
KSwgMDMzNykNCj4+Pj4+Pj4+PiArLyogU0FGLTItc2FmZSAqLw0KPj4+Pj4+Pj4+ICNkZWZpbmUg
SU5TVFJfUkRUU0NQIElOU1RSX0VOQyhYODZFTVVMX09QQygweDBmLCAweDAxKSwgMDM3MSkNCj4+
Pj4+Pj4+PiAjZGVmaW5lIElOU1RSX0lOVkQgSU5TVFJfRU5DKFg4NkVNVUxfT1BDKDB4MGYsIDB4
MDgpLCAwKQ0KPj4+Pj4+Pj4+ICNkZWZpbmUgSU5TVFJfV0JJTlZEIElOU1RSX0VOQyhYODZFTVVM
X09QQygweDBmLCAweDA5KSwgMCkNCj4+Pj4+Pj4gLi4uIHRoaXMgaGFzIGJyb2tlbiBhIHRhYnVs
YXRlZCBzdHJ1Y3R1cmUgdG8gaGF2ZSBjb21tZW50cyBhaGVhZCBvZiBsaW5lcyB3aXRoIG9jdGFs
IG51bWJlcnMsIHdoaWxlIC4uLg0KPj4+Pj4+Pj4+IGRpZmYgLS1naXQgYS94ZW4vYXJjaC94ODYv
aHZtL3N2bS9lbXVsYXRlLmMgYi94ZW4vYXJjaC94ODYvaHZtL3N2bS9lbXVsYXRlLmMNCj4+Pj4+
Pj4+PiBpbmRleCBhYTJjNjFjNDMzYjMuLmM1ZTMzNDFjNjMxNiAxMDA2NDQNCj4+Pj4+Pj4+PiAt
LS0gYS94ZW4vYXJjaC94ODYvaHZtL3N2bS9lbXVsYXRlLmMNCj4+Pj4+Pj4+PiArKysgYi94ZW4v
YXJjaC94ODYvaHZtL3N2bS9lbXVsYXRlLmMNCj4+Pj4+Pj4+PiBAQCAtOTAsOSArOTAsOSBAQCB1
bnNpZ25lZCBpbnQgc3ZtX2dldF9pbnNuX2xlbihzdHJ1Y3QgdmNwdSAqdiwgdW5zaWduZWQgaW50
IGluc3RyX2VuYykNCj4+Pj4+Pj4+PiBpZiAoICFpbnN0cl9tb2RybSApDQo+Pj4+Pj4+Pj4gcmV0
dXJuIGVtdWxfbGVuOw0KPj4+Pj4+Pj4+IC0gaWYgKCBtb2RybV9tb2QgPT0gTUFTS19FWFRSKGlu
c3RyX21vZHJtLCAwMzAwKSAmJg0KPj4+Pj4+Pj4+IC0gKG1vZHJtX3JlZyAmIDcpID09IE1BU0tf
RVhUUihpbnN0cl9tb2RybSwgMDA3MCkgJiYNCj4+Pj4+Pj4+PiAtIChtb2RybV9ybSAmIDcpID09
IE1BU0tfRVhUUihpbnN0cl9tb2RybSwgMDAwNykgKQ0KPj4+Pj4+Pj4+ICsgaWYgKCBtb2RybV9t
b2QgPT0gTUFTS19FWFRSKGluc3RyX21vZHJtLCAwMzAwKSAmJiAvKiBTQUYtMi1zYWZlICovDQo+
Pj4+Pj4+Pj4gKyAobW9kcm1fcmVnICYgNykgPT0gTUFTS19FWFRSKGluc3RyX21vZHJtLCAwMDcw
KSAmJiAvKiBTQUYtMi1zYWZlICovDQo+Pj4+Pj4+Pj4gKyAobW9kcm1fcm0gJiA3KSA9PSBNQVNL
X0VYVFIoaW5zdHJfbW9kcm0sIDAwMDcpICkgLyogU0FGLTItc2FmZSAqLw0KPj4+Pj4+Pj4+IHJl
dHVybiBlbXVsX2xlbjsNCj4+Pj4+Pj4+PiB9DQo+Pj4+Pj4+IC4uLiB0aGlzIGhhcyBjb21tZW50
cyBhdCB0aGUgZW5kIG9mIGxpbmVzIHdpdGggb2N0YWwgbnVtYmVycy4NCj4+Pj4+Pj4gU28gd2hp
Y2ggaXMgaXQ/DQo+Pj4+Pj4gSSBhZ3JlZSB3aXRoIEFuZHJldyBoZXJlIGluIHRoaXMgc2Vuc2U6
IHRoZSBpbi1jb2RlIGNvbW1lbnQgaXMNCj4+Pj4+PiBzdXBwb3NlZCB0byBiZSBvbiB0aGUgbGlu
ZSAqYmVmb3JlKiB0aGUgdmlvbGF0aW9uLA0KPj4+Pj4+IG5vdCBvbiB0aGUgc2FtZSBsaW5lLCBz
byBJ4oCZbSBhbHNvIHdvbmRlcmluZyBob3cgaXQgaXMgZml4aW5nIHRoZSB2ZXJ5DQo+Pj4+Pj4g
Zmlyc3QgdmlvbGF0aW9uLg0KPj4+Pj4+IENoZWVycywNCj4+Pj4+PiBMdWNhDQo+Pj4+PiANCj4+
Pj4gDQo+Pj4+IEhpIE5pY29sYSwNCj4+Pj4gDQo+Pj4+PiBBY3R1YWxseSBpdCBqdXN0aWZpZXMg
d2hhdCBpcyBvbiBlaXRoZXIgdGhlIHByZXZpb3VzIGxpbmUgb3IgdGhlIHNhbWUgYmVjYXVzZSBp
dCdzDQo+Pj4+PiB0cmFuc2xhdGVkIHRvIC8qIC1FPiBzYWZlIE1DM1IxLlI3LjEgMSAqLywgd2hl
cmUgdGhlIGxhc3QgbnVtYmVyIGlzIGhvdyBtYW55IGxpbmVzIGJlc2lkZXMNCj4+Pj4+IHRoZSBj
dXJyZW50IG9uZSBhcmUgdG8gYmUgZGV2aWF0ZWQgKGUuZy4geW91IGNhbiBoYXZlIDAgZGV2aWF0
ZSBvbmx5IHRoZSBjdXJyZW50IGxpbmUpLg0KPj4+PiANCj4+Pj4gSnVzdCB0byB1bmRlcnN0YW5k
LCBkb2VzIHRoaXMgd2F5Og0KPj4+PiANCj4+Pj4gPGxpbmUgQT4NCj4+Pj4gLyogLUU+IHNhZmUg
TUMzUjEuUjcuMSAxICovDQo+Pj4+IDxsaW5lIEI+DQo+Pj4+IA0KPj4+PiBKdXN0aWZpZXMgb25s
eSBsaW5lIEI/IEJlY2F1c2UgSSB0aG91Z2h0IHNvLCBidXQgbm93IEkgd2FudCB0byBiZSBzdXJl
LCBvdGhlcndpc2UgaXQgZG9lc27igJl0IGFjdA0KPj4+PiBhcyBpbnRlbmRlZC4NCj4+Pj4gDQo+
Pj4+IA0KPj4+Pj4gTW9zdCBvZiB0aGUgdGltZXMgdGhlIGN1cnJlbnQgZm9ybSBpcyB3aGF0J3Mg
bmVlZGVkLCBhcyB5b3Ugd291bGQgcHV0IHRoZSBjb21tZW50IG9uIGEgbGluZQ0KPj4+Pj4gb2Yg
aXRzIG93bi4gSW4gdGhlIGNhc2Ugb2YgdGhlIGlmIHRoYXQgd291bGQgYnJlYWsgdGhlIGZvcm1h
dHRpbmcuIFRoZSBkb3duc2lkZSBvZiBkb2luZyB0aGUgc2FtZSB0aGluZyBvbiB0aGUgdGFibGUg
aXMgdGhhdCB0aGUgZmlyc3QgZW50cnkgbm90IHRvIGJlIGRldmlhdGVkIHdvdWxkIGFjdHVhbGx5
IGJlIGRldmlhdGVkLg0KPj4+Pj4gDQo+Pj4+PiAjZGVmaW5lIElOU1RSX0lOVkQgSU5TVFJfRU5D
KFg4NkVNVUxfT1BDKDB4MGYsIDB4MDgpLCAwKQ0KPj4+Pj4gDQo+Pj4+PiBUaGlzIG1heSBub3Qg
YmUgcHJvYmxlbWF0aWMsIHNpbmNlIDAgY291bGQgYmUgY29uc2lkZXJlZCBhbiBvY3RhbCBjb25z
dGFudCwgYnV0IGlzIGFuDQo+Pj4+PiBleGNlcHRpb24gZXhwbGljaXRseSBsaXN0ZWQgaW4gdGhl
IE1JU1JBIHJ1bGUuDQo+Pj4+PiBGb3IgdGhlIHNhbWUgcmVhc29uIHRoZSBsaW5lDQo+Pj4+PiAN
Cj4+Pj4+IHJldHVybiBlbXVsX2xlbjsNCj4+Pj4+IA0KPj4+Pj4gaXMgZGV2aWF0ZWQgYnkgdGhl
IGFib3ZlIGNvbW1lbnQsIGJ1dCBwdXR0aW5nIGFuIG9jdGFsIGNvbnN0YW50IHRoZXJlIHdvdWxk
IGZvciBzdXJlDQo+Pj4+PiBiZSB0aGUgcmVzdWx0IG9mIGEgZGVsaWJlcmF0ZSBjaG9pY2UuIFRo
ZXJlJ3MgdGhlIGFsdGVybmF0aXZlIG9mOg0KPj4+Pj4gDQo+Pj4+PiAgICAgICAgICAgICAgICAg
ICAgICAgIC8qIFNBRi0yLXNhZmUgKi8NCj4+Pj4+IGlmICggbW9kcm1fbW9kICAgICAgPT0gTUFT
S19FWFRSKGluc3RyX21vZHJtLCAwMzAwKSAmJg0KPj4+Pj4gICAgICAgICAgICAgICAgICAgICAg
ICAvKiBTQUYtMi1zYWZlICovDQo+Pj4+PiAgICAgKG1vZHJtX3JlZyAmIDcpID09IE1BU0tfRVhU
UihpbnN0cl9tb2RybSwgMDA3MCkgJiYNCj4+Pj4+ICAgICAgICAgICAgICAgICAgICAgICAgLyog
U0FGLTItc2FmZSAqLw0KPj4+Pj4gICAgIChtb2RybV9ybSAmIDcpICA9PSBNQVNLX0VYVFIoaW5z
dHJfbW9kcm0sIDAwMDcpICkNCj4+Pj4+IA0KPj4+Pj4gdG8gbWFrZSBpdCBjb25zaXN0ZW50IHdp
dGggdGhlIHRhYmxlIGFuZCBhdm9pZCBhbnkgImhpZGRlbiIgZGV2aWF0ZWQgbGluZSBvciwgYWdh
aW4sDQo+Pj4+PiB0aGUgbW9kaWZpY2F0aW9uIG9mIHRoZSB0cmFuc2xhdGlvbiBzY3JpcHQgc28g
dGhhdCBpdCBkb2Vzbid0IHVzZSBhIGZpeGVkICIxIiBvZmZzZXQsIHdoaWNoDQo+Pj4+PiBpcyBt
b3RpdmF0ZWQgYnkgd2hhdCB5b3Ugd3JvdGUgb24gdGhlIHRocmVhZCBvZiB0aGUgbW9kaWZpY2F0
aW9uIG9mIHhlbl9hbmFseXNpcy5weS4NCj4+Pj4gDQo+Pj4+IEZyb20gdGhlIGRvY3VtZW50YXRp
b246DQo+Pj4+IA0KPj4+PiAgIEluIHRoZSBYZW4gY29kZWJhc2UsIHRoZXNlIHRhZ3Mgd2lsbCBi
ZSB1c2VkIHRvIGRvY3VtZW50IGFuZCBzdXBwcmVzcyBmaW5kaW5nczoNCj4+Pj4gDQo+Pj4+ICAg
LSBTQUYtWC1zYWZlOiBUaGlzIHRhZyBtZWFucyB0aGF0IHRoZSBuZXh0IGxpbmUgb2YgY29kZSBj
b250YWlucyBhIGZpbmRpbmcsIGJ1dA0KPj4+PiAgICAgdGhlIG5vbiBjb21wbGlhbmNlIHRvIHRo
ZSBjaGVja2VyIGlzIGFuYWx5c2VkIGFuZCBkZW1vbnN0cmF0ZWQgdG8gYmUgc2FmZS4NCj4+Pj4g
DQo+Pj4+IEkgdW5kZXJzdGFuZCB0aGF0IEVjbGFpciBpcyBjYXBhYmxlIG9mIHN1cHByZXNzaW5n
IGFsc28gdGhlIGxpbmUgaW4gd2hpY2ggdGhlIGluLWNvZGUgc3VwcHJlc3Npb24NCj4+Pj4gY29t
bWVudCByZXNpZGVzLCBidXQgdGhlc2UgZ2VuZXJpYyBYZW4gaW4tY29kZSBzdXBwcmVzc2lvbiBj
b21tZW50IGFyZSBtZWFudCB0byBiZSB1c2VkDQo+Pj4+IGJ5IG11bHRpcGxlIHN0YXRpYyBhbmFs
eXNpcyB0b29scyBhbmQgbWFueSBvZiB0aGVtIHN1cHByZXNzIG9ubHkgdGhlIGxpbmUgbmV4dCB0
byB0aGUgY29tbWVudA0KPj4+PiAoQ292ZXJpdHksIGNwcGNoZWNrKS4NCj4+PiANCj4+PiBBcyB3
ZSBzZWUgbW9yZSByZWFsaXN0aWMgZXhhbXBsZXMsIGl0IHR1cm5zIG91dCB0aGF0IHRoaXMgaXMg
bGltaXRpbmcuDQo+Pj4gDQo+Pj4gR2l2ZW4gdGhhdCB0aGUgU0FGLTItc2FmZSBjb21tZW50IG5l
ZWRzIHRvIGdvIHRocm91Z2ggeGVuLWFuYWx5c2lzLnB5DQo+Pj4gdHJhbnNsYXRpb25zIGFueXdh
eSwgY291bGQgd2UgaW1wbGVtZW50IHNvbWV0aGluZyBhIGJpdCBtb3JlIGZsZXhpYmxlIGluDQo+
Pj4geGVuLWFuYWx5c2lzLnB5Pw0KPj4+IA0KPj4+IEZvciBpbnN0YW5jZSwgY291bGQgd2UgaW1w
bGVtZW50IGEgZm9ybWF0IHdpdGggdGhlIG51bWJlciBvZiBsaW5lcyBvZg0KPj4+IGNvZGUgbGlr
ZSB0aGlzIGFzIHdlIGRpc2N1c3NlZCBpbiBhIHByZXZpb3VzIHRocmVhZD8NCj4+PiANCj4+PiAv
KiBTQUYtMi1zYWZlIHN0YXJ0ICovDQo+Pj4gaWYgKCBtb2RybV9tb2QgICAgICA9PSBNQVNLX0VY
VFIoaW5zdHJfbW9kcm0sIDAzMDApICYmDQo+Pj4gICAobW9kcm1fcmVnICYgNykgPT0gTUFTS19F
WFRSKGluc3RyX21vZHJtLCAwMDcwKSAmJg0KPj4+ICAgKG1vZHJtX3JtICYgNykgID09IE1BU0tf
RVhUUihpbnN0cl9tb2RybSwgMDAwNykgKQ0KPj4+IC8qIFNBRi0yLXNhZmUgZW5kICovDQo+Pj4g
DQo+Pj4gRmlyc3RseSwgbGV0IGFzayBBbmRyZXcsIGRvIHlvdSBwcmVmZXIgdGhpcz8NCj4+PiAN
Cj4+PiANCj4+PiBBbmQgYWxzbyB0aGlzIHNlY29uZCBmb3JtYXQ6DQo+Pj4gDQo+Pj4gaWYgKCBt
b2RybV9tb2QgICAgICA9PSBNQVNLX0VYVFIoaW5zdHJfbW9kcm0sIDAzMDApICYmIC8qIFNBRi0y
LXNhZmUgKi8NCj4+PiAgIChtb2RybV9yZWcgJiA3KSA9PSBNQVNLX0VYVFIoaW5zdHJfbW9kcm0s
IDAwNzApICYmIC8qIFNBRi0yLXNhZmUgKi8NCj4+PiAgIChtb2RybV9ybSAmIDcpICA9PSBNQVNL
X0VYVFIoaW5zdHJfbW9kcm0sIDAwMDcpICkgLyogU0FGLTItc2FmZSAqLw0KPj4+IA0KPj4+IA0K
Pj4+IENvdWxkIHdlIGltcGxlbWVudCBpbiB4ZW4tYW5hbHlzaXMucHkgYSBjb252ZXJzaW9uIHRo
YXQgd291bGQgdHVybiB0aGUNCj4+PiB0d28gZm9ybWF0cyBhYm92ZSB0aGF0IGFyZSBub3QgdW5k
ZXJzdG9vZCBieSBjcHBjaGVjayBpbnRvOg0KPj4+IA0KPj4+IC8qIGNwcGNoZWNrIHRhZyAqLw0K
Pj4+IGlmICggbW9kcm1fbW9kICAgICAgPT0gTUFTS19FWFRSKGluc3RyX21vZHJtLCAwMzAwKSAm
Jg0KPj4+IC8qIGNwcGNoZWNrIHRhZyAqLw0KPj4+ICAgKG1vZHJtX3JlZyAmIDcpID09IE1BU0tf
RVhUUihpbnN0cl9tb2RybSwgMDA3MCkgJiYNCj4+PiAvKiBjcHBjaGVjayB0YWcgKi8NCj4+PiAg
IChtb2RybV9ybSAmIDcpICA9PSBNQVNLX0VYVFIoaW5zdHJfbW9kcm0sIDAwMDcpICkNCj4+PiAN
Cj4+PiBPciB0aGlzIGlzIGEgcHJvYmxlbSBiZWNhdXNlIGl0IHdvdWxkIGVuZCB1cCBjaGFuZ2lu
ZyBsaW5lcyBvZiBjb2RlDQo+Pj4gbnVtYmVycyBpbiB0aGUgc291cmNlIGZpbGU/DQo+PiANCj4+
IFllcyB0aGlzIGlzIHRoZSByZWFsIGlzc3VlIHdoeSB3ZSBkaWRu4oCZdCBkbyB0aGUgLyogLi4u
IHN0YXJ0ICovIGNvZGUgLyogLi4uIGVuZCAqLw0KPiANCj4gUmlnaHQgc28gdGhlIHJlc3VsdHMg
d291bGQgYmUgYWxsIG9mZiBieSBhIGZldyBsaW5lcyBvZiBjb2RlIHNvIHdoZW4NCj4geW91IGdv
IHRvIHJlYWQgdGhlIHJlcG9ydCBnZW5lcmF0ZWQgYnkgY3BwY2hlY2ssIHRoZSByZWZlcmVuY2Vz
DQo+IHdvdWxkbid0IG1hdGNoIGFueW1vcmUuDQo+IA0KPiBCZWZvcmUgZ2l2aW5nIHVwIGFuZCBh
Y2NlcHRpbmcgdGhhdCB3ZSBhcmUgY29uc3RyYWluZWQgdG8gb25seSBmb3JtYXRzDQo+IHRoYXQg
ZG9uJ3QgY2hhbmdlIHRoZSBMT0MgbnVtYmVycywgY2FuIHdlIGNoZWNrIHdoYXQgQ292ZXJpdHkg
c3VwcG9ydHM/DQo+IA0KPiBJIGFtIGFza2luZyBiZWNhdXNlIHdlIGNvdWxkIGdldCBhd2F5IHdp
dGggaW1wbGVtZW50aW5nIHRoZSBmb3JtYXRzDQo+IGFib3ZlIGluIGNwcGNoZWNrLCBnaXZlbiB0
aGF0IGNwcGNoZWNrIGlzIG9wZW4gc291cmNlLiBCdXQgZm9yIENvdmVyaXR5DQo+IHdlIG5lZWQg
dG8gc3RheSB3aXRoIHdoYXQgaXMgYWxyZWFkeSBzdXBwb3J0ZWQgYnkgaXQuDQo+IA0KPiBEb2Vz
IENvdmVyaXR5IHN1cHBvcnQgYW55dGhpbmcgb3RoZXIgdGhhbjoNCj4gDQo+IDx0YWcgb24gcHJl
dmlvdXMgbGluZT4NCj4gPG5leHQgbGluZSBpcyBjb2RlIHdpdGggZGV2aWF0aW9uPg0KDQpVbmZv
cnR1bmF0ZWx5IG5vdCwgZnJvbSBpdHMgZG9jdW1lbnRhdGlvbiBJIGNhbuKAmXQgc2VlIGFueXRo
aW5nIGFwYXJ0IGZyb20gdGhlIGFib3ZlLA0KSSBjYW4gYXNrIHNvbWVvbmUgZnJvbSBzeW5vcHN5
cyB0aG91Z2ggdG8gZG91YmxlIGNoZWNrLg0KDQoNCg==


From xen-devel-bounces@lists.xenproject.org Fri Oct 06 08:01:12 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 08:01:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613286.953729 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoflm-0007pR-82; Fri, 06 Oct 2023 08:01:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613286.953729; Fri, 06 Oct 2023 08:01: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 1qoflm-0007pI-46; Fri, 06 Oct 2023 08:01:10 +0000
Received: by outflank-mailman (input) for mailman id 613286;
 Fri, 06 Oct 2023 08:01: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=Twl1=FU=citrix.com=prvs=63654eace=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qoflk-0007p4-GW
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 08:01:08 +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 7e84c85d-641e-11ee-98d3-6d05b1d4d9a1;
 Fri, 06 Oct 2023 10:01:04 +0200 (CEST)
Received: from mail-mw2nam10lp2101.outbound.protection.outlook.com (HELO
 NAM10-MW2-obe.outbound.protection.outlook.com) ([104.47.55.101])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 06 Oct 2023 04:00:49 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by PH7PR03MB7092.namprd03.prod.outlook.com (2603:10b6:510:2a5::22)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.39; Fri, 6 Oct
 2023 08:00:42 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::66ca:3a42:baeb:9ecf]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::66ca:3a42:baeb:9ecf%6]) with mapi id 15.20.6838.030; Fri, 6 Oct 2023
 08:00: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: 7e84c85d-641e-11ee-98d3-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1696579264;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=1/i21sLZ1qZupfXyPu6lYYnc2VAq9mauUmeGOXEuDc4=;
  b=ZQp3Pahcg8vW5Amx6avQA51wBVF/yvonSODSCUS7TmWSkwCHBB/O/TZ5
   xunUdpx3HlsBIj4J95g2p8NpY/ZtNlaswbb93B+xaQE+uoYEK36hG3NJ1
   T9UF8pB7Y1HGm8GwwKHV8Emcu5dQYOHjVJswBFTYFDxPTDtt0PRafmYY1
   M=;
X-CSE-ConnectionGUID: 2fltv9SnTgemEaFDM1be3w==
X-CSE-MsgGUID: JJlhh1NzSBeMJauXCurgVw==
X-IronPort-RemoteIP: 104.47.55.101
X-IronPort-MID: 125229527
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:Mr9SyKJHDm20wUfdFE+RIJQlxSXFcZb7ZxGr2PjKsXjdYENS1TBUz
 2ceCG+OOamOYDHwfN5yPY/j9RgGuJ+DnYNlTQJlqX01Q3x08seUXt7xwmUcnc+xBpaaEB84t
 ZV2hv3odp1coqr0/0/1WlTZhSAhk/nOHvylULKs1hlZHWdMUD0mhQ9oh9k3i4tphcnRKw6Ws
 Jb5rta31GWNglaYCUpKrfrYwP9TlK6q4mhB5gRjPaojUGL2zBH5MrpOfcldEFOgKmVkNrbSb
 /rOyri/4lTY838FYj9yuu+mGqGiaue60Tmm0hK6aYD76vRxjnVaPpIAHOgdcS9qZwChxLid/
 jnvWauYEm/FNoWU8AgUvoIx/ytWZcWq85efSZSzXFD6I+QrvBIAzt03ZHzaM7H09c4tD2VS6
 60jLgwCYxWujsya5euxR7Jz05FLwMnDZOvzu1lG5BSAVbMDfsqGRK/Ho9hFwD03m8ZCW+7EY
 NYUYiZuaxKGZABTPlAQC9Q1m+LAanvXKmUE7g7K4/dqpTGLlWSd05C0WDbRUsaNSshP2F6Ru
 0rN/njjAwFcP9uaodaA2iv227WVzH6hB+r+EpWa1PpqgAS11Fc5BTg0XEaLiuSjhXChDoc3x
 0s8v3BGQbIJ3FymSJzxUgO1pFaAvwUAQJxAHusi8gaPx6HIpQGDCQAsTjNHcs1gq8YwShQjz
 FrPlNTsbRRzubicUlqB9bOZqzyjNCxTJmgHDQcGRwYY59jooKkokwnCCN1kFcadkdndCTz2h
 TeQo0AWhagXjMMN/7W2+xbAmT3EjoPSUgc/6wHTX2SkxgB0foioY8qv81ez0BpbBIOQT13Eu
 WdencGbtbgKFcvUzHXLR/gRFra04frDKCfbnVNkA5gm8XKq5mKneodTpjp5IS+FL/o5RNMgW
 2eL0Ss52XOZFCfCgXNfC25pN/kX8A==
IronPort-HdrOrdr: A9a23:ntvgJqrza5YwecLouX3usoUaV5tYLNV00zEX/kB9WHVpm5Oj5r
 mTdaUgpHnJYWgqKRYdcIi7Sd69qLbnhNRICYl4B8bcYOF/0FHYa72KnrGStQEIfBeOsNK1tJ
 0QN5SWbeeafCBHZKnBkXqF+robsaS6GeWT9JPjJhRWPFhXgsNbnnVE4lT3KDwseOAuP/NQfv
 fzh7sj1l7QAgVsUimiPBY4tqr41qj2ffrdEEQ77nUcmXezZEaTmc7H+m+jr2Yjul10sMsf2F
 mAuTe8wpiK99ua53bnpgzuxqUTsuCk7uZqQPGtp6EuW1fRozftToVsUb+4sDo0ueGi70sBkd
 XHoRssVv4S15rkRBDpnfKh4Xiy7N7gg0WSjGOwsD/Gm4jUVTg6A81OicZwdQbY0VMpuJVG3K
 dCzwuixtpq5UerpkjAzumNcysvulu/oHIkn+JWpWdYS5EiZLhYqpFa1F9JEb8bdRiKwLwPIa
 1LNoXx9fxWeVSVYzTypW902uGhWXw1A1OvXlUCgMqIyDJb9UoJ5nfw/PZvtUvoyahNHKWspt
 60ZpiArYs+G/P+uJgNUtvoQqOMey3wqFz3QTriC2gO0sk8Si7wQtXMkfwIDdqRCdA1JEFbou
 WebLppjx9sR6unM7zH4HRqyGGdfIzvZ0W89impj6IJ+IEVs9LQQG6+oRYV4pmdivIYD83AUf
 O6OJZbGJbYXCXTMJcM1QzzUZtIJXMfSc0YvcshXU6Srs+jEPykigRKGMyjb4YFOQxUF1/CPg
 ==
X-Talos-CUID: =?us-ascii?q?9a23=3AR8SWcms/kqR3xzFVEzbN0hA46It/fHnB0ibrJXO?=
 =?us-ascii?q?3BGNEQZO5bAaa9fh7xp8=3D?=
X-Talos-MUID: 9a23:h7BZCAoWr7A9NqG490oezxNAMMdouoK8M2oAtLcPpvmvKDZ/BSjI2Q==
X-IronPort-AV: E=Sophos;i="6.03,203,1694750400"; 
   d="scan'208";a="125229527"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=HEaWrQ2zXruyk2g0731UM2cP9VE9eFKoTArcz9zrR8lsOkmEb2md6Oa4V2yyIOrzBoES5HM+N4vDhVNJqtFYiB7bLOaWsnms6JSLQaT4FiL1kbwckXziNpnPA0NWYuVenmb2ckgpM4hnVp5PrbZvZl4Wk41Q5jhTtVumSnoeWABQJ0zU0+8DRbc3/kiz5szjiuiTLgb6NOt2AU1a+HnuO6Tx9RCBXU5ZIZSlxkwLrts0VAc0k7xH2kKfdCjcFy7X0b2fR3cdNCmsI4VG+X38aeF/8X1ZLU2EXy9+2PV6y3aH4IBgJQTR4n84+FdtKZjp1BdSOY7B5Qny/Gbl7nVCUg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=Btfp1SGMMSX5XPpBhmPAz3n7R3RWimmHl/FS17qxDsM=;
 b=KTOepUu2Jnl+Je/1jmFkrDoxfNIuKqoVx44dbyrPdrXgpR5p9D6JaE5Qi5uSEWsb0XUbCU/0figYkENSLP6u0tyaDwIiG8MuOGzcxTwp8z+D/hertRaPoyCv0k6AYV4f3cS5uD3PPTJ0EWb/6K+jqIDEV/Ng8dJSjgXkOPn9s88F31k7Yx5WuiZ3dSQXYFZKUJzgTOKoQqIcuDLcWFEpiB0tRIfShMxz9HKbHBwJ0WJtjt1ljP8tqzjOt/AIGnJWuRjDi4RqCRhvqF39ilRX1qAjZG5fA3KiW8NnjdYvKFVQB6OU1upqQPCVBlEVJzjxGSoP8AMTu+4nbEBKxQC2mQ==
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=Btfp1SGMMSX5XPpBhmPAz3n7R3RWimmHl/FS17qxDsM=;
 b=XdTweKBVgPMCiNopaSj/IadbXUq/6qSWYsNNKXecZ+Sk4f2K8daC6Y2iSzCfvREK3L49z1OxsZcHpQJah7OuClxNuJH7C1wOTJRWzvpTPWVGkWwEK8ht5czriZ4h/kFSt6FC9nhruUXNx8syGX/zyABp8ULEn2IqekiXZifd3Qs=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Fri, 6 Oct 2023 10:00:35 +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, henry.wang@arm.com,
	Tamas K Lengyel <tamas@tklengyel.com>,
	Jan Beulich <jbeulich@suse.com>,
	George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>
Subject: Re: [CRITICAL for 4.18] Re: [PATCH v5 00/10] runstate/time area
 registration by (guest) physical address
Message-ID: <ZR--ozuTl9-CgBqg@MacBookPdeRoger>
References: <20231002151127.71020-1-roger.pau@citrix.com>
 <ff8994eb-968d-4bbb-a960-e5ca78ef658e@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <ff8994eb-968d-4bbb-a960-e5ca78ef658e@citrix.com>
X-ClientProxiedBy: LO4P265CA0316.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:390::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_|PH7PR03MB7092:EE_
X-MS-Office365-Filtering-Correlation-Id: b0676bff-8b1a-4dcc-5866-08dbc642560f
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:
	MZD2KWhwIPn3z+znM2xVRzbsNnTZfGvhK7yRyBKt3jZG3mt0AZk8dlOVDngLcT6XkM7QwK0KMJUNuuaYjQ6WiI0na290UGF5TWLJrn+xysgYpVUEoQWmGPJSU4SLlIZRhcDQmpuXIG19TeryI2W1Y7Uu6nL1mLeTdi1c5H7yhOeXb+1rlKqo5QHPosjykel499o09UEhpLagq1Xwu6gwkN6JVwDxnu+nU6mcBpsF7XruHY7rFCY8136wcnP6/GMkQcBN1Pv6kwfcsG4eEk2BhY6BJ9W31NKUROaxX+nUGndyGIJfltJs+oR57MIT4Bz6fBBCpqkLin8R0WCZp25XqpWELMVOQAUmKecTNaA4roR5nnthCeQJWhqCPX5Ecd4kmxZj/5Vnz4eBT7kDVPsBAflO5cVKcC0HVM5xH9qxwkq5YlDcRFy6zZWKyZQ66pwgHwIbgdzjjpsaGDr7yysaoTMZPFKn+xKK8xwMWRpUkvF3MwJbTD4Hh+3hKPtkBVxxtCpOfYY2RGYcigMGKDw9/MB+6ukBfrV1Rss4sio5yRLZVIUiY51NJCOuZWJvFGgu
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)(366004)(346002)(39860400002)(230922051799003)(64100799003)(1800799009)(186009)(451199024)(6506007)(9686003)(6512007)(86362001)(82960400001)(38100700002)(85182001)(26005)(2906002)(6666004)(478600001)(6486002)(83380400001)(8676002)(8936002)(6862004)(4326008)(316002)(41300700001)(33716001)(5660300002)(66946007)(6636002)(54906003)(66556008)(66476007);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?WmNYSHBYd2QweFdRUzBWVjE1QnhUdUpaM3A4ZmJ0MWhWOXJrUEF1L2U2WnlF?=
 =?utf-8?B?QllhYjNKSGJsRG9RLzMrUFlTRkhxczBtOHRUejJNT0cwWXdiWS92bDJTYXdh?=
 =?utf-8?B?WWRCanh6bHdaWDArVjNEVWdWOUhuMWFkN1VGUFZIY1EvWTZxQVFLcDRDV01s?=
 =?utf-8?B?eU9PUkpGejh5RmcwaTRwb0cwK2M2Q0pINy9TdFJ1ZGpNSVp3cXJBWU9HTXl1?=
 =?utf-8?B?Umx3VEdxdHJ1K2J5TkJSOHEyWnQxWnVZaVVHa0hZRFRFMkFCRzFWbGU4a1NQ?=
 =?utf-8?B?L3BzLzExY2NPbjQxWW55T0NHKzhlNXNEeDY3RmJqeEQyZDFRT2txVk9JeitB?=
 =?utf-8?B?azkvaFVtTzBPV3h3dnVwVllZalM0QmZQQk1pWWZETWZUYlJXcHA4UGhjOWMr?=
 =?utf-8?B?WmpLRWNscnB3Z2NsYUFiY052ejk5U3d2RTNKUmlCeVBxREJoNExXc0dVcndi?=
 =?utf-8?B?dDdHV1hJMW9YV0tUL1QvbG1GckRwMFpNZEZ4NDBxbzJ0em5BVXZXS1NGVGJv?=
 =?utf-8?B?alZTNnl2eWFrZ0x2TEorKzZaR3ZmNkYzSFk3RHdCa1J3Ym8wVVBSZy9DalVx?=
 =?utf-8?B?NHNtR0hWZDl0ejRSREZmR0ljaVJvdi9RR3hpM0huQVFnUGU0eGJ5Q2dYVHgx?=
 =?utf-8?B?WXNyR3liNFVlZnErUEd1UEkxTkhJSDJsZ1FsUGZaT2NqYnFxRnZBZ05uYXc0?=
 =?utf-8?B?aUZBUDZ1ekdsVkNRKy9SdHVId0hMU09CR1UvQ0JmZEI1b2RXcktiZDFnNFhC?=
 =?utf-8?B?VFN3YXZUd28zWUVqQ0JDLzBnT1I0bWwyYmRiZzVPUmxBNmdaUnZwcXdLTjRt?=
 =?utf-8?B?akxmMFBiRlAraUR5SmdWUDNtbElROUFNZ3gvMS8wbjlxM2E5S0RSdjZhMEF3?=
 =?utf-8?B?dXdzRGVjZVBwejMxRVpyd1ZCRWZqZGo5ZndhakVSWUxQdGJmRExjeDJVYmNh?=
 =?utf-8?B?Y0Jzb05aL2R6WkdZVVJ2Zzl5ekNVM29LTXVQa3R4dEt2QVgzeEFWOXp3UDZo?=
 =?utf-8?B?K1pucDJxOW1ac0ovbkRaREd0N3h2TkIyRWFlVWl3ZGdBNERsay9aM2VGUCs4?=
 =?utf-8?B?N0p0NWM0YS9tQnpwbWVIY0VyYzZaWVgxdUZkcXQ0bkVwT1BneGViUTRnTWZl?=
 =?utf-8?B?OVZGYmFYWXg4YnlaZ1BWVzB4Mm9aMjd4WDBHZjBsWE9hZHRBR25KZmRTYUJ1?=
 =?utf-8?B?RFhqL2J4czRTeE9mTXFEUTJFMTRsdmE1SjdXeFhHcXBJWGllQ3p3MUc3QWJ5?=
 =?utf-8?B?YUNrSFF2QVp5SlcxcG91dTBvS2Q3Vkh4RFJFcUdwbER1N09zK1hLTzF6TlAz?=
 =?utf-8?B?NXVySDlLbE85dGtDSkt5M0tyelZVTVlYZDZPdUNQU01odEtOUmgwN2ZJbTJx?=
 =?utf-8?B?NDBZUCtXaEsrbUpEOVBPVkhLWFYwRzNqelFzZEx4ZGdzaWRKS3hZanp6cUF1?=
 =?utf-8?B?WGlnWGFQb0ljUTQ0RVc3U2M1ZzJNMlJxLzRFYlc5V0dOQXJvZk5VVlJuUmp6?=
 =?utf-8?B?Q2RqQndITXZCTkladVZiR2pvdFgyeWx5aGlqLzVUcmY0SjkxaExHVjhadGVB?=
 =?utf-8?B?RXZhNng3YjdjYnNxUm5FaVJIRlc2QmVpTmY2RWxZREU5N3RWRGN1cTJsZTlN?=
 =?utf-8?B?MEVWUHRJUUQzK3lCQ1pxbmxSWm9TYm1oVkNrQkFHZXRxVlhkc29CNmRzNDM0?=
 =?utf-8?B?dkVrdm12WGEzN1NUdWFaOXljaTZLc1FLYzFINWttOFVjd2dzWGVBSXl2S2VL?=
 =?utf-8?B?dWVHQTVZd0xjVTBxQ1c1MzVIWjJILzZWekQ0R0ttSTlZeW9wdEZDTHdiRWZU?=
 =?utf-8?B?bFdaQkVHK1JQcXIzaWlNRHBKSFlZaUgzM1Y3MjIvcER3QVhENHBQdEpvSkI2?=
 =?utf-8?B?NkZEeW1reWFHb3BmditkZDJiUkJtRGtFUWFHdm5HTkpnT3kyTTZ3dHJNeDBN?=
 =?utf-8?B?ZGFvVTQwcTBvdWFtRFRTL1VDaFl4TU1jai83WEQ2YlVaWGF3OThCSGZxU01k?=
 =?utf-8?B?dkdRdDVuN3cydTFFaTVzTGJYN0NqcWprNW1lczdiUGdiVFRXUWFQWnZWdnBO?=
 =?utf-8?B?TnRRbWNmNXVQMndIODAzbjByUGlWTk9LaTc2WlBvTHR2UUZLNHdDUEI5MUNL?=
 =?utf-8?Q?92R8e2NDt0mOSDa6Vvhv5KZIu?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	DYHxzOVkIYHvGqlEikG6oZv/EDzsgd1gZZy6u7SbeFizCsZdM/aBE0QQAc/X5p2Xb13cdKbH54ROLRY1AHicmkcw2WjgCf0dwjiSFmxFgTgC0P2xcD7AB0TUUzOu5HfsgHR6wYfFpu1OHtzuqPzd4iwFlOAs30r6JarauvqI2S/if24io4d8o5PeeGkN/UnHCbXVW3gJ1hNlLfOVY/u+c5/wNeuOL3Kzh9ucz0rWomYxH4165sKqAz1mzbV1QDkBl03HbyZvZnCWtq99qK4LTYzWHK5TiUR80M+HB4pnoiWl1n2guAviN1z3w4gwLPZffOesONCvBISWwJy6+4VtLq7Pi9gVY8b4kQdgJR3nRi9ylSmdPfl2uZs+NWIJrKvGsxxfLpP9M0TfzP6zZLUPo3nYkDJ5Tym0mPgqqcOm20CjFy/4ctzD5HAfKq3YlWv69Ek+LwcgwSjvHXAl1szORFe5w5fKFEJYCJod0WV3C/jZsI9jQObcyrboSFs+usoCFc2TSarLRCsUzM/rHmvLtghsMWMhPrenN1oteSvZVCm96Ph+1SevdF53oVq90MtKBXYaFmiU0zXB7zA8Ud3B7ben+tSgTVR+Ev3o3dFbNOArcZLvgHeLqOTLI5QbLop8Tfd9+0jKUWNH4mMXgK4RM8dtzX/zk6nrduMZ+/mamjik0nOSiy3YMyjJeBujrdryldxX7cLirP9mooDQC2Qdj4FYzwYoYFpzCjx7ZTsw2sWl/5J3LCZAF317+oIT19bgWD4w5VSQA9XY9Z0k5axeUShN09xmNBLg2JHQUtomfrvxtjZ+UQWfiQvjXf9yoU8Noj3opquNuugsxDtKONfzbQIdK0yVLv4m0CD68vpoPzN+bh6u/oAl5OaqqBjf9c/imixCE2xZP3D7rL4EYNCXadTP3HLywC+vzzzWObjNk58=
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: b0676bff-8b1a-4dcc-5866-08dbc642560f
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Oct 2023 08:00:42.2575
 (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: ggUH7/HZw0frz+mJss8SwTSuNeaDDbnbII/9NqENDTnjcqHQS8IZXW1GigYixDCwBAfje+PdhIxhypIkGcTs7g==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7PR03MB7092

On Thu, Oct 05, 2023 at 07:58:50PM +0100, Andrew Cooper wrote:
> I see this series has been committed.  But it's broken in a really
> fundamental way.
> 
> 
> This is a new extension with persistent side effects to an existing part
> of the guest ABI.

The only change in the ABI is the different return code for multiple
attempts to map the vcpu_info page, it used to be -EINVAL and it's
-EBUSY now, which seems more descriptive.

The added hypercalls are an extension of the ABI, not not a
modification of an existing part.  Or maybe I'm not understanding the
complaint.

> Yet there doesn't appear to be any enumeration that the interface is
> available to begin with.  Requiring the guest to probe subops, and
> having no way to disable it on a per-domain basis is unacceptable,

We have never mandated such disables to be part of the series adding
the new hypercalls, those have always been retro fitted in case of
need.  Not saying we shouldn't do it, but it's not something we have
asked submitters to do.

> and
> has exploded on us more times than I care to count in security fixes
> alone, and that doesn't even cover the issues Amazon have reported over
> the years.

That's fine, I can add the enumeration.  A CHANGELOG entry should also
be added.

> 
> Henry: Blocker for 4.18.   The absolutely bare minimum necessary to
> avoid reversion is some kind of positive enumeration that the two new
> hypercalls are available.
> 
> Otherwise I will be #if 0'ing out the new hypercalls before this ABI
> mistake gets set in stone.
> 
> 
> If this were x86-only it would need to be a CPUID flag, but it will need
> to be something arch-agnostic in this case.  The series should not have
> come without a proper per-domain control and toolstack integration, but
> everything else can be retrofitted in an emergency.
> 
> And on a related note, where is the documentation describing this new
> feature?  Some tests perhaps, or any single implementation of the guest
> side interface?

Not that I know, I was expecting Jan to post that once he gets back
from PTO.

I already noted somewhere that I wasn't able to test myself because I
couldn't find any Linux side patches to test the feature with, and I
didn't have time to write ones myself (was expecting Jan to have the
Linux side done already for testing reasons).

> This is engineering principles so basic that they do go without saying.
> 
> ~Andrew
> 


From xen-devel-bounces@lists.xenproject.org Fri Oct 06 08:22:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 08:22:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613295.953739 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qog6k-0004Nh-4O; Fri, 06 Oct 2023 08:22:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613295.953739; Fri, 06 Oct 2023 08: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 1qog6k-0004Na-1T; Fri, 06 Oct 2023 08:22:50 +0000
Received: by outflank-mailman (input) for mailman id 613295;
 Fri, 06 Oct 2023 08:22: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=Twl1=FU=citrix.com=prvs=63654eace=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qog6i-0004NU-ON
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 08:22:48 +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 8684ebea-6421-11ee-98d3-6d05b1d4d9a1;
 Fri, 06 Oct 2023 10:22:46 +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;
 06 Oct 2023 04:22:35 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by BY5PR03MB5155.namprd03.prod.outlook.com (2603:10b6:a03:218::22)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.37; Fri, 6 Oct
 2023 08:22:30 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::66ca:3a42:baeb:9ecf]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::66ca:3a42:baeb:9ecf%6]) with mapi id 15.20.6838.030; Fri, 6 Oct 2023
 08:22: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: 8684ebea-6421-11ee-98d3-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1696580566;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=tqvjclAsBFZHiFYDXUPIw/Azji1ZvMF9ZUcuw7dGS2c=;
  b=FzosqTnE0rF0pUN6TZ3H0RgUsd3WEGAfyk1hP8zgooriGe7qTW+8Tg5K
   HEhrxdpqBY6Vd+ZF6xWRRXqXfGtuGA18ucz13te5zq4tOWIBeBJVmc5v7
   kKrWaG1XN8x4U16WAQkHkM/IjK/+CPwseFavJ8OkfNqV8BGxbPkHoqNo6
   k=;
X-CSE-ConnectionGUID: WfpcI0YqRpCT8bZoGn/rfA==
X-CSE-MsgGUID: LAyUR6tAQYeVLvXXd/GOQw==
X-IronPort-RemoteIP: 104.47.55.171
X-IronPort-MID: 124058227
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:v+bWmaj21ZWeF460AAiqJetmX161kBEKZh0ujC45NGQN5FlHY01je
 htvXWyPOP6NZGXzftt2Oo628B9T65+BzNBmTwU9/yFhFCIb9cadCdqndUqhZCn6wu8v7q5Ex
 55HNoSfdpBcolv0/ErF3m3J9CEkvU2wbuOhTraCYmYoHVMMpB4J0XpLg/Q+jpNjne+3CgaMv
 cKai8DEMRqu1iUc3lg8sspvkzsx+qyp0N8klgZmP6sS5AeDzyN94K83fsldEVOpGuG4IcbiL
 wrz5OnR1n/U+R4rFuSknt7TGqHdauePVeQmoiM+t5mK2nCulARrukoIHKN0hXNsoyeIh7hMJ
 OBl7vRcf+uL0prkw4zxWzEAe8130DYvFLXveRBTuuTLp6HKnueFL1yDwyjaMKVBktubD12i+
 tQnJigGT0iyntiu647rQNtrqcJkNsfCadZ3VnFIlVk1DN4AaLWaGeDgw48d2z09wMdTAfzZe
 swVLyJ1awjNaAFOPVFRD48imOCvhT/0dDgwRFC9/PJrpTSMilEsluGyabI5efTTLSlRtlyfq
 W/cuXzwHzkRNcCFyCrD+XWp7gPKtXqhBNpPROfiqZaGhnW3730uMkMKfGKKrMedlH6OV5VwD
 HULr39GQa8asRbDosPGdw21pjuIswARX/JUEvYm80edx6zM+QGbC2MYCDlbZ7QOtMIwXy1sy
 VaPkPvgHzkpu7qQIVqB/7KdthuuOiwYK2ATaCtCRgwAi/HhqowuihPETv54DbW4yNbyHFnY3
 DSivCU4wbIJgqYj1bi//F3BqyKhoN7OVAFdzh7MQmuv4wd9ZYikT4+l817W6bBHNonxc7Wal
 H0Nmszb5uZeC5iIzXaJWL9UQ+jv4OuZOjrBh1IpB4Mm6zmm53+ke8ZX/S16I0BqdM0DfFcFf
 XPuhO+Y37cLVFPCUEO9S9vsYyj25cAMzejYa80=
IronPort-HdrOrdr: A9a23:J+sHkaqsxWi9htqjiOBEJLMaV5tMLNV00zEX/kB9WHVpm5Oj+v
 xGzc5w6farsl0ssREb9uxo9pPwJE800aQFmbX5Wo3SJzUO2VHYVb2KiLGP/9SOIU3DH4JmpM
 Rdmu1FeafN5DtB/LnHCWuDYrEdKbC8mcjH5Ns2jU0dKz2CA5sQkzuRYTzrdnGeKjM2Z6bQQ/
 Gnl7d6TnebCD0qhoPRPAh3Y8Hz4/nw0L72ax8PABAqrCGIkDOT8bb/VzSIwxsEVDtL4LE6tU
 zIiRbw6KmPu+yyjka07R6f071m3P/ajvdTDs2FjcYYbh3qlwaTfYxkH5GSoTwvp+mryVAy1P
 3BuQ0pMchf427YOku1vRzu8Q/91ytG0Q6p9XaoxV/Y5eDpTjMzDMRMwapfbxvi8kIl+PVxyr
 hC0W61v4deSUqoplW32/H4EzVR0makq3srluAey1RZTIslcbdU6agS5llcHpssFD/zrKonDO
 5tJsfB4+s+SyLTU1np+k1UhPC8VHU6GRmLBmAEp8yuyjBT2Et0ykMJrfZv6ksoxdYYcd1p9u
 7EOqNnmPVlVckNd59wA+8HXI+eFnHNaQikChPSHX3XUIU8f17doZ/+57s4oMuwfoYT8Zc0kJ
 PdFHtFqG8JfV70A8Hm5uwEzvn0ehT/Yd3R8LAd23Ag0YeMAYYDcBfzB2zGqvHQ48n2WabgKr
 KO0JE/OY6XEYKhI/cP4+TEYegjFZAvarxqhj8FYSP+nivqEPycigWJSoekGJPdVRAZZ0jYPl
 wvGBDOGeQo1DHYZpa/ummcZ0/Q
X-Talos-CUID: 9a23:8RqcAGD4yrrtynD6ExZp7EU1QvE8SGX28CfaEUiXDyFzRpTAHA==
X-Talos-MUID: =?us-ascii?q?9a23=3ANGUNnA/pfEUC4uSjIYrlGWmQf+NB8pmUVlwkqKQ?=
 =?us-ascii?q?Lhe2aBRx8fBi6tSviFw=3D=3D?=
X-IronPort-AV: E=Sophos;i="6.03,203,1694750400"; 
   d="scan'208";a="124058227"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=R3tt/vl/44/N99sMVA4l0HFfYZU6CLDSwTIKSB9fdONCkS1lCaqNYkgnsjmwqTGroN+pa7Fyq8WQaozg8IP+ZNJYyp72o+HMSMmye12iO2sgZuMpxKnjB2GD+PvsX1o1qLQ+RvQdEkpyk+gE39xaqKbZ2dps2L1qPaXbz1O9PJDagznWh8ySrw9sy3IUIx4k5iU1istbVe2ueXlb3EsQ7Pm22bxdsPOoExKfSLIl5rDwM7RvOYxq8ABc/0e1Q/6MEjnZGoJuWvIKRiWZ0fvF67zda/GkCN165vXTJ1eoayGlDZnVwj1vgKZ6OlodEiDIjrA83IDqOefUOkBosvR2cQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-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/FrAqAEqA8Zg1gV/X7uuOcv5wvRyAGYIBHSuHeoVVM=;
 b=S9uOnxQ0SCkaiVEF473k/w67rnrmqPX+JBo+GNnV9QyAP6vvboJHg7aS0R1d2wlF1AThphHAw/qxWLUA5ikUUB3oLoeOrD+isU0F1mhFOIlh5FWIW6P7RABUTjJQSAeLynYfS6dN7ZIdnjUAeqXPUnuLN6nRU+UP5CaQt74to21/JHuIcfU48Uba6KwUirWebdm/cSZ6qfoPKWruv9T6xCxjo9Rv0nGn2Sqmhgc433Qb/nwwzZzXCgw5/rojBbEqDgnL65sRUzSjoio10y8ZCeX50+WSN6yW3JM4rbIDF9Q+Ps+Iy3Tklva69Bkkx6UxgYJCXnamzKgggsunmggAjQ==
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=b/FrAqAEqA8Zg1gV/X7uuOcv5wvRyAGYIBHSuHeoVVM=;
 b=B1LZyTq/ZCZ/N7kYFDym+Qj96nr72Uez303nFAZkJWuSFCA5gikwfyQ48CWtpBYkS1g2uI9KkpSh7pkKAZp1Y45hs9+iZB5h0GobOPqT7V8CMeZphrfsrVoaCQXCflijlhZS6qOgX/NZotKzJXiFfyAT2oRSUYDRpRDoGBgvFuU=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Fri, 6 Oct 2023 10:22:24 +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, henry.wang@arm.com,
	Tamas K Lengyel <tamas@tklengyel.com>,
	Jan Beulich <jbeulich@suse.com>,
	George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>
Subject: Re: [CRITICAL for 4.18] Re: [PATCH v5 00/10] runstate/time area
 registration by (guest) physical address
Message-ID: <ZR_DwHUh17FL1iHs@MacBookPdeRoger>
References: <20231002151127.71020-1-roger.pau@citrix.com>
 <ff8994eb-968d-4bbb-a960-e5ca78ef658e@citrix.com>
 <ZR--ozuTl9-CgBqg@MacBookPdeRoger>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <ZR--ozuTl9-CgBqg@MacBookPdeRoger>
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_|BY5PR03MB5155:EE_
X-MS-Office365-Filtering-Correlation-Id: 8ba09046-5c72-4e7b-9ac2-08dbc6456187
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:
	2BNgpDeg5UjHRKAT42du8jLvZdIypHycKOR6NuT6bbvpH1YTx7XxU62nrmmuse58AQXeBaeMflbe9DYbaUNowH9iezNrDQAS9fSt2QFcLlyVU1YSJclqLrQY9CPiIS/k7RFGEEEBkyxNQT/uW/k+xQbtwb3UFKNwHt3hfTrUAUcp2roxxskfrHKZiTnUkztE4Ah0Fui9OvA5Suar79dmfFPjI35dOQlFthivi6L82PV1KJELTwxDBG/061b8NzqmswVKJWjhjYYG5M39dMu52J6WArhPnpM10wc1OWMeGukInkGLophKgYAowyhhThnsT/X1Ig1YtvQhuh6pulsTDexuvTBpkEZSkH7k6AZ1f+LL2nZW7qJ7K17+55CTY1eDlcLYAimf5LdyzYl6vZijYJogGrb1FpG2wy+mK4NrGoBaA/3hfkV2ud2UzXeoGI3VrIlexJiowuv5otC+3x+T5qvkVur9yjpx2jS9bZ9T6ceooqb6hfsNgFibI/ohalJTwEDPeGsLxbmSaFiKH0shcu+6IsRhJ2sezRPbhAPua15iOE9/GhCrZ1EgOFMPN23+
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)(39860400002)(346002)(366004)(396003)(136003)(230922051799003)(451199024)(186009)(64100799003)(1800799009)(6666004)(6486002)(6512007)(6506007)(478600001)(86362001)(38100700002)(82960400001)(2906002)(33716001)(26005)(9686003)(6636002)(5660300002)(66476007)(41300700001)(8936002)(66556008)(316002)(6862004)(54906003)(66946007)(85182001)(4326008)(8676002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?dmZFUWR4QWRMQlFCS3FSSTJINzUzT0YvbjB5NUVGZEQvMTJhOXB4WE13ZjJ6?=
 =?utf-8?B?ZHIwOVd6amNnaEFUZTJDRUVyWFZnM0hmeldBTHkzQkp5N2JLK0dyamg0YW1u?=
 =?utf-8?B?U29xaG5kMCtNaXRLVU96U0pyZVcvOFZGZFVUUnRjem5USW9UY2tYWmhYcXN2?=
 =?utf-8?B?UkYzMGJxcEZkQklvV3RVMW9sWk9sTHY2T2lYNmlzSjlNYithWUVINStLWXNL?=
 =?utf-8?B?MDVsZTljenJIQlFFclNMUU05L2RZblRJRWpyVHVja0loK3ZaOUk1TUg2eWU3?=
 =?utf-8?B?R0h3Y0ptb2w1QS9tcTRncStMQnB5cEJueWd6NjdiWnRiZko5b0NMOGVmYkdT?=
 =?utf-8?B?L1prd2kvbVhwYXZXcEVEdXhIRmZoNUtrc3dqa3hNQnRPeFk3Smw0UTkvdVlL?=
 =?utf-8?B?cEtXMTlMZEVwREt6QjJoSWsyMUtmQWVIMHFBaUxoUlc0Q1ZvZkRJM0htRkZF?=
 =?utf-8?B?anNkV3dlL3JyS2Zxbi9PYWRFM0o1akRVNU9kMS9tZGljeGRhTXlScHYzd2Zp?=
 =?utf-8?B?eHZNMFdRRXlZNFJFajV5cjRtNW82Z3AwaEp0ZjQ4Slg3OVNlcU0zNEI3ZUdW?=
 =?utf-8?B?UFlTOWUremsyNWxMQ2RCQlhFUVBMQWtwdmdWcDlzRWhFaHBPeDJvSlY2Sk1o?=
 =?utf-8?B?US81NzVVMi9CVUVaUXFCNFJWZjQxRUJVV0ZGa05IdHlNbXFZNDFYOXd6Q1Y2?=
 =?utf-8?B?VjU4b1N1WTJhLzQ3ZW9BaDBWUVBIb1kwQkdsUTFMdTR6RzltSXdmVmh1L3I5?=
 =?utf-8?B?bmZCWDdobmYxVzhhakRybU1YT3pVYzN6aHJhYVBHZXc2aGFRUE45azJTUE9D?=
 =?utf-8?B?OUMzWUU0MHRWWjhlRDkvOUtLQVJkWHpBRXJnSWpHZTg5Q3JybStWS0hhSE53?=
 =?utf-8?B?L21aNFQyaFo3YlhjcElwY004ZjZ3T05rdWRvdHNGQjh3WjZFRWJlYlJnZndt?=
 =?utf-8?B?SlZlVUNDM2NiajBXaFp2MFViZEdwVHd3VWo2VC83RE1sWlpoN0hvLzE0NHlz?=
 =?utf-8?B?ZWlhWGpPeUROQU5pa2d3bituMURMaXNVNXI1UUdvTDJaWEszd2Y2OU9DZ2dk?=
 =?utf-8?B?YkFtNkhDR0l6UzVaYmdBRW1xZGdlRUgyZ3dxS1VwamxlV28vMXRsYllrL0d2?=
 =?utf-8?B?YmJIUnR2bDMvOTdmL0owNzB1NXpFRlpOalFuZWMzNjQ2aTIyNlhxRjk0NWVX?=
 =?utf-8?B?aXF0YzM2Uy9JRDUybUlPTkpDdjVxc0owdUp5UFpNdU1ybWVIZWo3b05QcG14?=
 =?utf-8?B?OVlEeFNUSi9kVGNPdnJxVHhNZWUrSytsQ2JaU0pRTEprMEs2eHI1OGRZM2ZF?=
 =?utf-8?B?L09zV05nVE14UC9DTlRwUjFwMlhKL0QxT3QrQWczc2IvMzhZeDJDckFCcjVF?=
 =?utf-8?B?YWJ0YUp4QmowS2hkRDU3QWZDSENwQmlpYm5nanorU3NTQVBNdTNzL0FZRTZw?=
 =?utf-8?B?SDdyTFdJM3NZYjBvR1hQYStMNmNlS3o2U2dia0poKzUrazZkemdKdnNmdHVI?=
 =?utf-8?B?WHhoQWV6bVRCclJxV0ZVcURvU0tOdUc5SHNocEdXMkcxclhGcWgwV0NjQkhC?=
 =?utf-8?B?VW05KzJMc3ZCcElNSjE2aWI2QjZnVlR1Z2NqaURiMDh1dFVZays4NFZ2REo4?=
 =?utf-8?B?Q2sxVzFTSk83YnJTQnNkNmZDcjZaZHZ1OFpSQjZwYlhzZHVVM2docGtyMi9D?=
 =?utf-8?B?Wjd2UW9uVUp3Vlhhckd3c21CUG9TR3lhNzZFZUlYUGNOZmpFQ3FCTGJMZXN5?=
 =?utf-8?B?NEVtbmRHS09yQnovM3NTeHEydkZBTlZySzd0Z3htSXk5UXZ0UmU4SnZuYmNj?=
 =?utf-8?B?bXRhNzVFdzFOZ1JzMlBvaXdUdnBhVHMwZm1JOWw2bmt6azNJaHhuNml2clBD?=
 =?utf-8?B?Nmh1T3gzNDZDU3FKRXNUQnRrNHpENnI1Z0pHTjh4ZjFpbSt4dSs0ck5jc04y?=
 =?utf-8?B?YkhSRWM1QkNreSs2WDJteVhUTHVIenVUcWcwVWRrb01aRS9UYXRDK2l6UUps?=
 =?utf-8?B?ZnpaYXZYV3pJdDF1YkNnT000enpGcWoxdmt2Wk1GdmFQZXZxd281TEV4V0Rw?=
 =?utf-8?B?WkxITVlqdWw4VHhrVmRMdHk0bkV5QlZvd3ZvN2NyaWlXTVRHZU5kSlY5bGY5?=
 =?utf-8?B?TURVT0czRDBuQVJ1TlJ0UVYzNyt3SzFTQXFySjZNNVpGR0hSQTZ1Rk5LaGsr?=
 =?utf-8?B?dHc9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	DeBbDXgccSYfbUCttZX49XlcxRjED3Ip3IFbt3PMZtT4C1vqUhtHgfZ3zo2RVbj2o9mGPNTDm7lpti8rN9ZXdUSUSQ/C/CBUp4SKQFoI56kILoFM7Wm1OnzDgZhe48F6eRh5R6Ba5MYP8A5tMFtdAeCiJNlXthnSJTlJvVvX36YbaFOzs87OpSqkVwjs9rl/e155aoPuo1mAiIt+Yua12uFsbjZ/xnwindG0sfc/PDxN/N3GcwwKRz83AiTBJG8IXnTnlGGLQZZPg1KqTyFe7DT9+AxaRQiyP9vqEbmTeBoqKx5OoG+r+f8GtRhZpmeQ8Dp0hymQp8eIiUe0qKK438u2dsbaE1ZICQQh9GjhEfQVSFSOhXnh3My8bPMTbrFS29uclQFLhnMucTV+egeVyA9ichRp9JWqGgFi15Oe8df9NIrjWb+PKazHMcVllM4rhI2TXn/JxS8TgSsc1vvX1lYcv2JDBX1UlDSq6Y3pHSvIJ7jvQ6CBTYSUPxDDpRH5hGjHO/2D5i9pxFhtboGl/Gv63MEd2PupeeNFbCBb14OmGdhgqQ/FN5oWEwoJRo4Soq9WtfiCV1CwBFb5UYjNV4+yy4o8edhsElzmNfIXBg+XT67B89HMyUbkbTHzJMBwg5Y7UXZIfxhsYa+31PUpIfUTj/9PjopIZhVUbYGkZLBhPjDhLEl9HBUIN4NJUoVonSXhlJxHgFSShjR8MW5uYzNRXIW1C+fEO2lFPDkM96slTOc+m6NL7fKahqbKtWiYHbaZxyjVseQGw1bvSpRlrClwhz2pFsK/3bGpLf6oPQUFgBLo1TQY5yhqvF6iUnrtiRLe/5yUBPmZU3iZT/6oBQQK28CXGzyZttB7jGTjBRJqzzd464jB7dObh125wJVIMMOCfgyvhHN0DD1GhDK+c6K/Jwzp/e4TidemA07wCsA=
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 8ba09046-5c72-4e7b-9ac2-08dbc6456187
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Oct 2023 08:22:29.7294
 (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: 2ktYmg4kSwF0rVgIohR8U+sKqNCPHPzQzgnANB/hTOLrrtPgs7FjwZoaywtHFwwKDpDcD1VP5Hju5plrXVYKdw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY5PR03MB5155

On Fri, Oct 06, 2023 at 10:00:35AM +0200, Roger Pau Monné wrote:
> On Thu, Oct 05, 2023 at 07:58:50PM +0100, Andrew Cooper wrote:
> > I see this series has been committed.  But it's broken in a really
> > fundamental way.
> > 
> > 
> > This is a new extension with persistent side effects to an existing part
> > of the guest ABI.
> 
> The only change in the ABI is the different return code for multiple
> attempts to map the vcpu_info page, it used to be -EINVAL and it's
> -EBUSY now, which seems more descriptive.
> 
> The added hypercalls are an extension of the ABI, not not a
> modification of an existing part.  Or maybe I'm not understanding the
> complaint.
> 
> > Yet there doesn't appear to be any enumeration that the interface is
> > available to begin with.  Requiring the guest to probe subops, and
> > having no way to disable it on a per-domain basis is unacceptable,
> 
> We have never mandated such disables to be part of the series adding
> the new hypercalls, those have always been retro fitted in case of
> need.  Not saying we shouldn't do it, but it's not something we have
> asked submitters to do.

I've been thinking about this, and I assume that we would like some
kind of tools interface to list supported features by the hypervisor,
and then a way to disable them.  We could then use such information to
level the hypercall interface across a pool of hosts, and make sure
it's always the same.

In principle guest should cope with some features/hypercalls not being
able on resume, but we all know this is not always the case.

I'm going to punt this, as adding such interface would be too
disruptive at this point in the release, and in any case it's
unlikely we could reach an agreement on how the interface should look
like in a very short time frame.

Roger.


From xen-devel-bounces@lists.xenproject.org Fri Oct 06 08:26:20 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 08:26:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613301.953749 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qogA7-0006Fr-Nh; Fri, 06 Oct 2023 08:26:19 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613301.953749; Fri, 06 Oct 2023 08: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 1qogA7-0006Fj-K5; Fri, 06 Oct 2023 08:26:19 +0000
Received: by outflank-mailman (input) for mailman id 613301;
 Fri, 06 Oct 2023 08:26: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=bl8M=FU=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qogA6-0006Fc-W1
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 08:26:18 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 04b871af-6422-11ee-9b0d-b553b5be7939;
 Fri, 06 Oct 2023 10:26:16 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id 1E29C4EE0738;
 Fri,  6 Oct 2023 10:26: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: 04b871af-6422-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>,
	Simone Ballarin <simone.ballarin@bugseng.com>,
	Doug Goldstein <cardoe@cardoe.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>,
	Paul Durrant <paul@xen.org>,
	Henry Wang <Henry.Wang@arm.org>
Subject: [XEN PATCH 0/9] address violations of MISRA C:2012 Rule 10.1
Date: Fri,  6 Oct 2023 10:26:03 +0200
Message-Id: <cover.1696514677.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

This series aims to resolve or deviate various violations of Rule 10.1
(operands of inappropriate essential type).

To do so, the widely-used construct
(x & -x), where x is an unsigned integer quantity represented in 2's complement,
does yield the expected result. Since all architectures that are targets for
compliance do fulfill such requirements, the construct is deemed safe and
deviated.

On the contrary, other uses of inappropriate types are changed.

Patches marked with [for-4.19] are not meant to be included in the current
staging, but they can be picked up for 4.18, if deemed risk-free.

Nicola Vetrini (9):
  xen/include: add macro LOWEST_POW2
  arm/bitops: encapsulate violation of MISRA C:2012 Rule 10.1
  xen/pdx: amend definition of PDX_GROUP_COUNT
  x86_64/mm: express macro CNT using LOWEST_POW2
  x86/cpu-policy: address violations of MISRA C Rule 10.1
  x86/io_apic: address violation of MISRA C:2012 Rule 10.1
  x86/mce: Move MC_NCLASSES into the enum mctelem_class
  xen/types: address Rule 10.1 for DECLARE_BITMAP use
  xen/compat: address Rule 10.1 for macros CHECK_SIZE

 automation/eclair_analysis/ECLAIR/deviations.ecl |  6 ++++++
 xen/arch/arm/include/asm/bitops.h                |  6 ++++--
 xen/arch/x86/cpu/mcheck/mctelem.c                |  2 --
 xen/arch/x86/cpu/mcheck/mctelem.h                |  5 +++--
 xen/arch/x86/include/asm/io_apic.h               |  7 ++++---
 xen/arch/x86/x86_64/mm.c                         | 12 ++++++------
 xen/include/xen/compat.h                         | 10 ++++++----
 xen/include/xen/iommu.h                          |  2 +-
 xen/include/xen/lib/x86/cpu-policy.h             | 13 +++++++------
 xen/include/xen/macros.h                         |  6 ++++--
 xen/include/xen/pdx.h                            |  2 +-
 xen/include/xen/types.h                          |  1 +
 12 files changed, 43 insertions(+), 29 deletions(-)

--
2.34.1


From xen-devel-bounces@lists.xenproject.org Fri Oct 06 08:26:21 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 08:26:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613302.953759 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qogA8-0006V9-To; Fri, 06 Oct 2023 08:26:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613302.953759; Fri, 06 Oct 2023 08:26: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 1qogA8-0006V1-RF; Fri, 06 Oct 2023 08:26:20 +0000
Received: by outflank-mailman (input) for mailman id 613302;
 Fri, 06 Oct 2023 08:26: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=bl8M=FU=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qogA7-0006Fc-M6
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 08:26:19 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 05292aa9-6422-11ee-9b0d-b553b5be7939;
 Fri, 06 Oct 2023 10:26:17 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id 6AD184EE073A;
 Fri,  6 Oct 2023 10:26: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: 05292aa9-6422-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>,
	Simone Ballarin <simone.ballarin@bugseng.com>,
	Doug Goldstein <cardoe@cardoe.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Julien Grall <julien@xen.org>,
	Wei Liu <wl@xen.org>
Subject: [XEN PATCH][for-4.19 1/9] xen/include: add macro LOWEST_POW2
Date: Fri,  6 Oct 2023 10:26:04 +0200
Message-Id: <d27f52eaaa62ec4ebb9ce8b6cf243779d341367d.1696514677.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1696514677.git.nicola.vetrini@bugseng.com>
References: <cover.1696514677.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The purpose of this macro is to encapsulate the well-known expression
'x & -x', that in 2's complement architectures on unsigned integers will
give 2^ffs(x), where ffs(x) is the position of the lowest set bit in x.

A deviation for ECLAIR is also introduced.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
---
 automation/eclair_analysis/ECLAIR/deviations.ecl | 6 ++++++
 xen/include/xen/macros.h                         | 6 ++++--
 2 files changed, 10 insertions(+), 2 deletions(-)

diff --git a/automation/eclair_analysis/ECLAIR/deviations.ecl b/automation/eclair_analysis/ECLAIR/deviations.ecl
index d8170106b449..016164643105 100644
--- a/automation/eclair_analysis/ECLAIR/deviations.ecl
+++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
@@ -274,6 +274,12 @@ still non-negative."
 -config=MC3R1.R10.1,etypes+={safe, "stmt(operator(logical)||node(conditional_operator||binary_conditional_operator))", "dst_type(ebool||boolean)"}
 -doc_end
 
+-doc_begin="The macro LOWEST_POW2 encapsulates a well-known pattern to obtain the value
+2^ffs(x) for unsigned integers on two's complement architectures
+(all the architectures supported by Xen satisfy this requirement)."
+-config=MC3R1.R10.1,reports+={safe, "any_area(any_loc(any_exp(macro(^LOWEST_POW2$))))"}
+-doc_end
+
 ### Set 3 ###
 
 #
diff --git a/xen/include/xen/macros.h b/xen/include/xen/macros.h
index d0caae7db298..bb9a1c9a53d0 100644
--- a/xen/include/xen/macros.h
+++ b/xen/include/xen/macros.h
@@ -8,8 +8,10 @@
 #define DIV_ROUND(n, d) (((n) + (d) / 2) / (d))
 #define DIV_ROUND_UP(n, d) (((n) + (d) - 1) / (d))
 
-#define MASK_EXTR(v, m) (((v) & (m)) / ((m) & -(m)))
-#define MASK_INSR(v, m) (((v) * ((m) & -(m))) & (m))
+#define LOWEST_POW2(x) ((x) & -(x))
+
+#define MASK_EXTR(v, m) (((v) & (m)) / LOWEST_POW2(m))
+#define MASK_INSR(v, m) (((v) * LOWEST_POW2(m)) & (m))
 
 #define count_args_(dot, a1, a2, a3, a4, a5, a6, a7, a8, x, ...) x
 #define count_args(args...) \
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Fri Oct 06 08:26:21 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 08:26:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613303.953762 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qogA9-0006Xf-61; Fri, 06 Oct 2023 08:26:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613303.953762; Fri, 06 Oct 2023 08:26: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 1qogA9-0006X1-2p; Fri, 06 Oct 2023 08:26:21 +0000
Received: by outflank-mailman (input) for mailman id 613303;
 Fri, 06 Oct 2023 08:26: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=bl8M=FU=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qogA7-0006Fk-U6
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 08:26:19 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 062776ce-6422-11ee-98d3-6d05b1d4d9a1;
 Fri, 06 Oct 2023 10:26:19 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id 2DC6D4EE073D;
 Fri,  6 Oct 2023 10:26: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: 062776ce-6422-11ee-98d3-6d05b1d4d9a1
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>
Subject: [XEN PATCH][for-4.19 3/9] xen/pdx: amend definition of PDX_GROUP_COUNT
Date: Fri,  6 Oct 2023 10:26:06 +0200
Message-Id: <370da41f72fa55c95a97268c250efc76a33d93d3.1696514677.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1696514677.git.nicola.vetrini@bugseng.com>
References: <cover.1696514677.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The definition of PDX_GROUP_COUNT causes violations of
MISRA C:2012 Rule 10.1, therefore the problematic part now uses
the LOWEST_POW2 macro, which encapsulates the pattern.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
---
 xen/include/xen/pdx.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/xen/include/xen/pdx.h b/xen/include/xen/pdx.h
index f3fbc4273aa4..5b88a4a2cd86 100644
--- a/xen/include/xen/pdx.h
+++ b/xen/include/xen/pdx.h
@@ -72,7 +72,7 @@
 extern unsigned long max_pdx;
 
 #define PDX_GROUP_COUNT ((1 << PDX_GROUP_SHIFT) / \
-                         (sizeof(*frame_table) & -sizeof(*frame_table)))
+                         (LOWEST_POW2(sizeof(*frame_table))))
 extern unsigned long pdx_group_valid[];
 
 /**
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Fri Oct 06 08:26:22 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 08:26:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613304.953779 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qogAA-00071H-Fr; Fri, 06 Oct 2023 08:26:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613304.953779; Fri, 06 Oct 2023 08: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 1qogAA-0006zP-CQ; Fri, 06 Oct 2023 08:26:22 +0000
Received: by outflank-mailman (input) for mailman id 613304;
 Fri, 06 Oct 2023 08:26: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=bl8M=FU=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qogA8-0006Fk-Jt
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 08:26:20 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 06973160-6422-11ee-98d3-6d05b1d4d9a1;
 Fri, 06 Oct 2023 10:26:19 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id 0C6664EE073E;
 Fri,  6 Oct 2023 10:26: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: 06973160-6422-11ee-98d3-6d05b1d4d9a1
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>
Subject: [XEN PATCH 4/9] x86_64/mm: express macro CNT using LOWEST_POW2
Date: Fri,  6 Oct 2023 10:26:07 +0200
Message-Id: <1a44e7559ce4c7588a7b76c19d3154e471417cfa.1696514677.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1696514677.git.nicola.vetrini@bugseng.com>
References: <cover.1696514677.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The various definitions of macro CNT (and the related BUILD_BUG_ON)
can be rewritten using LOWEST_POW2, encapsulating a violation of
MISRA C:2012 Rule 10.1.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
---
I do find somewhat odd the multiple identical #define-s and #undef-s of CNT in
this file, as well as the last
BUILD_BUG_ON((sizeof(*frame_table) & ~sizeof(*frame_table)) [...]
Perhaps here a cleanup is needed, to have a single definition of CNT and
identical BUILD_BUG_ON-s (wrapped in a macro, even)?
---
 xen/arch/x86/x86_64/mm.c | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/xen/arch/x86/x86_64/mm.c b/xen/arch/x86/x86_64/mm.c
index c3ebb777144a..8ae704f920a1 100644
--- a/xen/arch/x86/x86_64/mm.c
+++ b/xen/arch/x86/x86_64/mm.c
@@ -351,9 +351,9 @@ static int setup_compat_m2p_table(struct mem_hotadd_info *info)
                 ~((1UL << (L2_PAGETABLE_SHIFT - 2)) - 1) );

 #define MFN(x) (((x) << L2_PAGETABLE_SHIFT) / sizeof(unsigned int))
-#define CNT ((sizeof(*frame_table) & -sizeof(*frame_table)) / \
+#define CNT (LOWEST_POW2(sizeof(*frame_table)) / \
              sizeof(*compat_machine_to_phys_mapping))
-    BUILD_BUG_ON((sizeof(*frame_table) & -sizeof(*frame_table)) % \
+    BUILD_BUG_ON(LOWEST_POW2(sizeof(*frame_table)) % \
                  sizeof(*compat_machine_to_phys_mapping));

     for ( i = smap; i < emap; i += (1UL << (L2_PAGETABLE_SHIFT - 2)) )
@@ -410,10 +410,10 @@ static int setup_m2p_table(struct mem_hotadd_info *info)
     va = RO_MPT_VIRT_START + smap * sizeof(*machine_to_phys_mapping);

 #define MFN(x) (((x) << L2_PAGETABLE_SHIFT) / sizeof(unsigned long))
-#define CNT ((sizeof(*frame_table) & -sizeof(*frame_table)) / \
+#define CNT (LOWEST_POW2(sizeof(*frame_table)) / \
              sizeof(*machine_to_phys_mapping))

-    BUILD_BUG_ON((sizeof(*frame_table) & -sizeof(*frame_table)) % \
+    BUILD_BUG_ON(LOWEST_POW2(sizeof(*frame_table)) % \
                  sizeof(*machine_to_phys_mapping));

     i = smap;
@@ -539,7 +539,7 @@ void __init paging_init(void)
     mpt_size  = (max_page * BYTES_PER_LONG) + (1UL << L2_PAGETABLE_SHIFT) - 1;
     mpt_size &= ~((1UL << L2_PAGETABLE_SHIFT) - 1UL);
 #define MFN(x) (((x) << L2_PAGETABLE_SHIFT) / sizeof(unsigned long))
-#define CNT ((sizeof(*frame_table) & -sizeof(*frame_table)) / \
+#define CNT (LOWEST_POW2(sizeof(*frame_table)) / \
              sizeof(*machine_to_phys_mapping))
     BUILD_BUG_ON((sizeof(*frame_table) & ~sizeof(*frame_table)) % \
                  sizeof(*machine_to_phys_mapping));
@@ -666,7 +666,7 @@ void __init paging_init(void)
         mpt_size = 0;

 #define MFN(x) (((x) << L2_PAGETABLE_SHIFT) / sizeof(unsigned int))
-#define CNT ((sizeof(*frame_table) & -sizeof(*frame_table)) / \
+#define CNT (LOWEST_POW2(sizeof(*frame_table)) / \
              sizeof(*compat_machine_to_phys_mapping))
     BUILD_BUG_ON((sizeof(*frame_table) & ~sizeof(*frame_table)) % \
                  sizeof(*compat_machine_to_phys_mapping));
--
2.34.1


From xen-devel-bounces@lists.xenproject.org Fri Oct 06 08:26:22 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 08:26:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613305.953783 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qogAA-00074x-Qb; Fri, 06 Oct 2023 08:26:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613305.953783; Fri, 06 Oct 2023 08: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 1qogAA-00073K-KM; Fri, 06 Oct 2023 08:26:22 +0000
Received: by outflank-mailman (input) for mailman id 613305;
 Fri, 06 Oct 2023 08: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=bl8M=FU=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qogA8-0006Fc-MH
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 08:26:20 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 05a511e9-6422-11ee-9b0d-b553b5be7939;
 Fri, 06 Oct 2023 10:26:18 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id 56B8C4EE073C;
 Fri,  6 Oct 2023 10:26: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: 05a511e9-6422-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>,
	Julien Grall <julien@xen.org>,
	Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: [XEN PATCH][for-4.19 2/9] arm/bitops: encapsulate violation of MISRA C:2012 Rule 10.1
Date: Fri,  6 Oct 2023 10:26:05 +0200
Message-Id: <a789098c17d5a45b7388dcf1333751df1126f123.1696514677.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1696514677.git.nicola.vetrini@bugseng.com>
References: <cover.1696514677.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The definitions of ffs{l}? violate Rule 10.1, by using the well-known
pattern (x & -x); its usage is wrapped by the LOWEST_POW2 macro.

No functional change.
---
 xen/arch/arm/include/asm/bitops.h | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/xen/arch/arm/include/asm/bitops.h b/xen/arch/arm/include/asm/bitops.h
index 71ae14cab355..d119e1ccc952 100644
--- a/xen/arch/arm/include/asm/bitops.h
+++ b/xen/arch/arm/include/asm/bitops.h
@@ -9,6 +9,8 @@
 #ifndef _ARM_BITOPS_H
 #define _ARM_BITOPS_H
 
+#include <xen/macros.h>
+
 #include <asm/asm_defns.h>
 
 /*
@@ -155,8 +157,8 @@ static inline int fls(unsigned int x)
 }
 
 
-#define ffs(x) ({ unsigned int __t = (x); fls(__t & -__t); })
-#define ffsl(x) ({ unsigned long __t = (x); flsl(__t & -__t); })
+#define ffs(x) ({ unsigned int __t = (x); fls(LOWEST_POW2(__t)); })
+#define ffsl(x) ({ unsigned long __t = (x); flsl(LOWEST_POW2(__t)); })
 
 /**
  * find_first_set_bit - find the first set bit in @word
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Fri Oct 06 08:26:23 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 08:26:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613306.953791 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qogAB-0007AS-9F; Fri, 06 Oct 2023 08:26:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613306.953791; Fri, 06 Oct 2023 08:26: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 1qogAB-00077t-1k; Fri, 06 Oct 2023 08:26:23 +0000
Received: by outflank-mailman (input) for mailman id 613306;
 Fri, 06 Oct 2023 08:26: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=bl8M=FU=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qogA9-0006Fk-KG
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 08:26:21 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 0704009e-6422-11ee-98d3-6d05b1d4d9a1;
 Fri, 06 Oct 2023 10:26:20 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id C12D34EE074E;
 Fri,  6 Oct 2023 10:26: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: 0704009e-6422-11ee-98d3-6d05b1d4d9a1
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>
Subject: [XEN PATCH 5/9] x86/cpu-policy: address violations of MISRA C Rule 10.1
Date: Fri,  6 Oct 2023 10:26:08 +0200
Message-Id: <463572d126a7700e5e90ef3a49104bd4b8c1c389.1696514677.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1696514677.git.nicola.vetrini@bugseng.com>
References: <cover.1696514677.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The COUNT_LEAVES macro is introduced to avoid using an essentially
boolean value in a subtraction.

No functional change.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
---
 xen/include/xen/lib/x86/cpu-policy.h | 13 +++++++------
 1 file changed, 7 insertions(+), 6 deletions(-)

diff --git a/xen/include/xen/lib/x86/cpu-policy.h b/xen/include/xen/lib/x86/cpu-policy.h
index bab3eecda6c1..700993cc67e8 100644
--- a/xen/include/xen/lib/x86/cpu-policy.h
+++ b/xen/include/xen/lib/x86/cpu-policy.h
@@ -95,17 +95,18 @@ const char *x86_cpuid_vendor_to_str(unsigned int vendor);
 #define CPUID_GUEST_NR_EXTD       MAX(CPUID_GUEST_NR_EXTD_INTEL, \
                                       CPUID_GUEST_NR_EXTD_AMD)
 
+#define COUNT_LEAVES(X) ((X) - ((X) ? 1 : 0))
 /*
  * Maximum number of leaves a struct cpu_policy turns into when serialised for
  * interaction with the toolstack.  (Sum of all leaves in each union, less the
  * entries in basic which sub-unions hang off of.)
  */
-#define CPUID_MAX_SERIALISED_LEAVES                     \
-    (CPUID_GUEST_NR_BASIC +                             \
-     CPUID_GUEST_NR_FEAT   - !!CPUID_GUEST_NR_FEAT +    \
-     CPUID_GUEST_NR_CACHE  - !!CPUID_GUEST_NR_CACHE +   \
-     CPUID_GUEST_NR_TOPO   - !!CPUID_GUEST_NR_TOPO +    \
-     CPUID_GUEST_NR_XSTATE - !!CPUID_GUEST_NR_XSTATE +  \
+#define CPUID_MAX_SERIALISED_LEAVES         \
+    (CPUID_GUEST_NR_BASIC +                 \
+     COUNT_LEAVES(CPUID_GUEST_NR_FEAT) +    \
+     COUNT_LEAVES(CPUID_GUEST_NR_CACHE) +   \
+     COUNT_LEAVES(CPUID_GUEST_NR_TOPO) +    \
+     COUNT_LEAVES(CPUID_GUEST_NR_XSTATE) +  \
      CPUID_GUEST_NR_EXTD + 2 /* hv_limit and hv2_limit */ )
 
 /* Maximum number of MSRs written when serialising a cpu_policy. */
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Fri Oct 06 08:26:24 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 08:26:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613307.953807 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qogAC-0007gs-LG; Fri, 06 Oct 2023 08:26:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613307.953807; Fri, 06 Oct 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 1qogAC-0007fb-EE; Fri, 06 Oct 2023 08:26:24 +0000
Received: by outflank-mailman (input) for mailman id 613307;
 Fri, 06 Oct 2023 08:26: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=bl8M=FU=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qogAA-0006Fk-KV
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 08:26:22 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 076ff614-6422-11ee-98d3-6d05b1d4d9a1;
 Fri, 06 Oct 2023 10:26:21 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id 7C7D14EE0C87;
 Fri,  6 Oct 2023 10:26: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: 076ff614-6422-11ee-98d3-6d05b1d4d9a1
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>
Subject: [XEN PATCH 6/9] x86/io_apic: address violation of MISRA C:2012 Rule 10.1
Date: Fri,  6 Oct 2023 10:26:09 +0200
Message-Id: <7def4be3f63306569a2ac1776c2d6ed24ff24ee2.1696514677.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1696514677.git.nicola.vetrini@bugseng.com>
References: <cover.1696514677.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The definition of IO_APIC_BASE contains a sum of an essentially enum
value (FIX_IO_APIC_BASE_0) that is positive with an index that, in all
instances, is unsigned, therefore the former is cast to unsigned, so that
the operands are of the same essential type.

No functional change.
---
 xen/arch/x86/include/asm/io_apic.h | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/xen/arch/x86/include/asm/io_apic.h b/xen/arch/x86/include/asm/io_apic.h
index a7e4c9e146de..a0fc50d601fe 100644
--- a/xen/arch/x86/include/asm/io_apic.h
+++ b/xen/arch/x86/include/asm/io_apic.h
@@ -14,9 +14,10 @@
  * Copyright (C) 1997, 1998, 1999, 2000 Ingo Molnar
  */
 
-#define IO_APIC_BASE(idx)                                               \
-    ((volatile uint32_t *)(__fix_to_virt(FIX_IO_APIC_BASE_0 + (idx))    \
-                           + (mp_ioapics[idx].mpc_apicaddr & ~PAGE_MASK)))
+#define IO_APIC_BASE(idx)                                     \
+    ((volatile uint32_t *)                                    \
+     (__fix_to_virt((unsigned int)FIX_IO_APIC_BASE_0 + (idx)) \
+      + (mp_ioapics[idx].mpc_apicaddr & ~PAGE_MASK)))
 
 #define IO_APIC_ID(idx) (mp_ioapics[idx].mpc_apicid)
 
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Fri Oct 06 08:26:25 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 08:26:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613308.953813 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qogAD-0007o0-7I; Fri, 06 Oct 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 613308.953813; Fri, 06 Oct 2023 08: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 1qogAC-0007mB-S9; Fri, 06 Oct 2023 08:26:24 +0000
Received: by outflank-mailman (input) for mailman id 613308;
 Fri, 06 Oct 2023 08:26: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=bl8M=FU=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qogAB-0006Fk-Kn
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 08:26:23 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 07db203e-6422-11ee-98d3-6d05b1d4d9a1;
 Fri, 06 Oct 2023 10:26:22 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id 333864EE0C81;
 Fri,  6 Oct 2023 10:26: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: 07db203e-6422-11ee-98d3-6d05b1d4d9a1
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>
Subject: [XEN PATCH 7/9] x86/mce: Move MC_NCLASSES into the enum mctelem_class
Date: Fri,  6 Oct 2023 10:26:10 +0200
Message-Id: <08293d72e236a7a6aec0305bc3f901a6636747ab.1696514677.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1696514677.git.nicola.vetrini@bugseng.com>
References: <cover.1696514677.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The definition of MC_NCLASSES contained a violation of MISRA C:2012
Rule 10.1, therefore by moving it as an enumeration constant resolves the
violation and makes it more resilient to possible additions to that enum.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
---
Note that the use of an enum constant as operand to [ ] and != is allowed
by the Rule.
---
 xen/arch/x86/cpu/mcheck/mctelem.c | 2 --
 xen/arch/x86/cpu/mcheck/mctelem.h | 5 +++--
 2 files changed, 3 insertions(+), 4 deletions(-)

diff --git a/xen/arch/x86/cpu/mcheck/mctelem.c b/xen/arch/x86/cpu/mcheck/mctelem.c
index 329ac20faf96..77a4d1d5ff48 100644
--- a/xen/arch/x86/cpu/mcheck/mctelem.c
+++ b/xen/arch/x86/cpu/mcheck/mctelem.c
@@ -64,8 +64,6 @@ struct mctelem_ent {
 
 #define MC_NENT (MC_URGENT_NENT + MC_NONURGENT_NENT)
 
-#define	MC_NCLASSES		(MC_NONURGENT + 1)
-
 #define	COOKIE2MCTE(c)		((struct mctelem_ent *)(c))
 #define	MCTE2COOKIE(tep)	((mctelem_cookie_t)(tep))
 
diff --git a/xen/arch/x86/cpu/mcheck/mctelem.h b/xen/arch/x86/cpu/mcheck/mctelem.h
index d4eba53ae0e5..21b251847bc0 100644
--- a/xen/arch/x86/cpu/mcheck/mctelem.h
+++ b/xen/arch/x86/cpu/mcheck/mctelem.h
@@ -55,8 +55,9 @@
 typedef struct mctelem_cookie *mctelem_cookie_t;
 
 typedef enum mctelem_class {
-	MC_URGENT,
-	MC_NONURGENT
+    MC_URGENT,
+    MC_NONURGENT,
+    MC_NCLASSES
 } mctelem_class_t;
 
 extern void mctelem_init(unsigned int);
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Fri Oct 06 08:26:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 08:26:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613309.953828 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qogAE-0008Ma-VB; Fri, 06 Oct 2023 08:26:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613309.953828; Fri, 06 Oct 2023 08:26: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 1qogAE-0008L1-Pl; Fri, 06 Oct 2023 08:26:26 +0000
Received: by outflank-mailman (input) for mailman id 613309;
 Fri, 06 Oct 2023 08:26: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=bl8M=FU=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qogAC-0006Fk-LE
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 08:26:24 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 085ea74b-6422-11ee-98d3-6d05b1d4d9a1;
 Fri, 06 Oct 2023 10:26:22 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id DEEA04EE0C88;
 Fri,  6 Oct 2023 10:26: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: 085ea74b-6422-11ee-98d3-6d05b1d4d9a1
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>,
	Paul Durrant <paul@xen.org>,
	George Dunlap <george.dunlap@citrix.com>,
	Julien Grall <julien@xen.org>,
	Wei Liu <wl@xen.org>
Subject: [XEN PATCH][for-4.19 8/9] xen/types: address Rule 10.1 for DECLARE_BITMAP use
Date: Fri,  6 Oct 2023 10:26:11 +0200
Message-Id: <9642dcb4ab51ec9eaeedf16056fbcd946a3efbea.1696514677.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1696514677.git.nicola.vetrini@bugseng.com>
References: <cover.1696514677.git.nicola.vetrini@bugseng.com>
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
in macro 'BITS_TO_LONGS'.

A comment in BITS_TO_LONGS is added to make it clear that
values passed are meant to be positive.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
---
 xen/include/xen/iommu.h | 2 +-
 xen/include/xen/types.h | 1 +
 2 files changed, 2 insertions(+), 1 deletion(-)

diff --git a/xen/include/xen/iommu.h b/xen/include/xen/iommu.h
index 0e747b0bbc1c..34aa0b9b5b81 100644
--- a/xen/include/xen/iommu.h
+++ b/xen/include/xen/iommu.h
@@ -360,7 +360,7 @@ struct domain_iommu {
 #endif
 
     /* Features supported by the IOMMU */
-    DECLARE_BITMAP(features, IOMMU_FEAT_count);
+    DECLARE_BITMAP(features, (int)IOMMU_FEAT_count);
 
     /* Does the guest share HAP mapping with the IOMMU? */
     bool hap_pt_share;
diff --git a/xen/include/xen/types.h b/xen/include/xen/types.h
index aea259db1ef2..936e83d333a0 100644
--- a/xen/include/xen/types.h
+++ b/xen/include/xen/types.h
@@ -22,6 +22,7 @@ typedef signed long ssize_t;
 
 typedef __PTRDIFF_TYPE__ ptrdiff_t;
 
+/* Users of this macro are expected to pass a positive value */
 #define BITS_TO_LONGS(bits) \
     (((bits)+BITS_PER_LONG-1)/BITS_PER_LONG)
 #define DECLARE_BITMAP(name,bits) \
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Fri Oct 06 08:26:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 08:26:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613310.953834 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qogAF-0008Rm-Jx; Fri, 06 Oct 2023 08:26:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613310.953834; Fri, 06 Oct 2023 08:26: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 1qogAF-0008QV-8Q; Fri, 06 Oct 2023 08:26:27 +0000
Received: by outflank-mailman (input) for mailman id 613310;
 Fri, 06 Oct 2023 08:26: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=bl8M=FU=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qogAD-0006Fk-LQ
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 08:26:25 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 08da8f32-6422-11ee-98d3-6d05b1d4d9a1;
 Fri, 06 Oct 2023 10:26:23 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id BEC954EE0C89;
 Fri,  6 Oct 2023 10:26: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: 08da8f32-6422-11ee-98d3-6d05b1d4d9a1
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>
Subject: [XEN PATCH 9/9] xen/compat: address Rule 10.1 for macros CHECK_SIZE
Date: Fri,  6 Oct 2023 10:26:12 +0200
Message-Id: <7edf60c0e7bd0680d8b8f8d3aec1264ee5a43878.1696514677.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1696514677.git.nicola.vetrini@bugseng.com>
References: <cover.1696514677.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The essential type of the result of an inequality operator is
essentially boolean, therefore it shouldn't be used as an argument of
the multiplication operator, which expects an integer.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
---
 xen/include/xen/compat.h | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

diff --git a/xen/include/xen/compat.h b/xen/include/xen/compat.h
index f2ce5bb3580a..5ffee6a9fed1 100644
--- a/xen/include/xen/compat.h
+++ b/xen/include/xen/compat.h
@@ -151,12 +151,14 @@ CHECK_NAME_(k, n, T)(k xen_ ## n *x, \
     return x == c; \
 }
 
+#define SIZE_NEQUAL(a, b) \
+    (sizeof(a) != sizeof(b) ? 1 : 0)
 #define CHECK_SIZE(name) \
-    typedef int CHECK_NAME(name, S)[1 - (sizeof(xen_ ## name ## _t) != \
-                                         sizeof(compat_ ## name ## _t)) * 2]
+    typedef int CHECK_NAME(name, S)[1 - (SIZE_NEQUAL(xen_ ## name ## _t, \
+                                                     compat_ ## name ## _t)) * 2]
 #define CHECK_SIZE_(k, n) \
-    typedef int CHECK_NAME_(k, n, S)[1 - (sizeof(k xen_ ## n) != \
-                                          sizeof(k compat_ ## n)) * 2]
+    typedef int CHECK_NAME_(k, n, S)[1 - (SIZE_NEQUAL(k xen_ ## n, \
+                                                      k compat_ ## n)) * 2]
 
 #define CHECK_FIELD_COMMON(name, t, f) \
 static inline int __maybe_unused name(xen_ ## t ## _t *x, compat_ ## t ## _t *c) \
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Fri Oct 06 08:42:24 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 08:42:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613353.953848 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qogPX-0006Vm-Ot; Fri, 06 Oct 2023 08:42:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613353.953848; Fri, 06 Oct 2023 08:42: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 1qogPX-0006Vf-MM; Fri, 06 Oct 2023 08:42:15 +0000
Received: by outflank-mailman (input) for mailman id 613353;
 Fri, 06 Oct 2023 08: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=Twl1=FU=citrix.com=prvs=63654eace=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qogPW-0006VW-IJ
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 08:42:14 +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 3e066580-6424-11ee-98d3-6d05b1d4d9a1;
 Fri, 06 Oct 2023 10:42:13 +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;
 06 Oct 2023 04:42:10 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by SJ2PR03MB7427.namprd03.prod.outlook.com (2603:10b6:a03:558::14)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.30; Fri, 6 Oct
 2023 08:42:09 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::66ca:3a42:baeb:9ecf]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::66ca:3a42:baeb:9ecf%6]) with mapi id 15.20.6838.030; Fri, 6 Oct 2023
 08:42: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: 3e066580-6424-11ee-98d3-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1696581732;
  h=date:from:to:cc:subject:message-id:references:
   in-reply-to:mime-version;
  bh=d+I1zPyyETp80cZDzDJUGT0HkMdw/hBT5SdzySodh0o=;
  b=eCPuqSD3qd1i5KTtRbA8AkQcmtXZ54xqpMhPo4IOI9vYCJqZNvs0dbEC
   xjGZQM3wYP6Zj1B6kqeLX7WuthczBQDvkeT9wVGez/zz4jGdNAYtguWkg
   +8yahUQEUjDB8tWt30WZ5deppp01IRjkcoX0KVvzA7PFNZVktEeWx33/Q
   M=;
X-CSE-ConnectionGUID: umVruofyQPy5yd+teAzNvg==
X-CSE-MsgGUID: JedZ66xcSR+8wbaK+D6aMA==
X-IronPort-RemoteIP: 104.47.59.173
X-IronPort-MID: 124059798
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:/61cN6BnNPmmchVW/w7iw5YqxClBgxIJ4kV8jS/XYbTApDwm3zJWz
 2JJWz+FO/uLamf3eIsgaIm28BsF68eAzIM1QQY4rX1jcSlH+JHPbTi7wuUcHAvJd5GeExg3h
 yk6QoOdRCzhZiaE/n9BCpC48D8kk/nOH+KgYAL9EngZbRd+Tys8gg5Ulec8g4p56fC0GArIs
 t7pyyHlEAbNNwVcbCRMsMpvlDs15K6p4WtA4wRkDRx2lAS2e0c9Xcp3yZ6ZdxMUcqEMdsamS
 uDKyq2O/2+x13/B3fv8z94X2mVTKlLjFVDmZkh+AsBOsTAbzsAG6Y4pNeJ0VKtio27hc+ada
 jl6ncfYpQ8BZsUgkQmGOvVSO3kW0aZuoNcrLZUj2CA6IoKvn3bEmp1T4E8K0YIw5+NJG3xJ+
 +0hECFQfxzAm++f0pSlRbw57igjBJGD0II3nFhFlGucIdN4BJfJTuPN+MNS2yo2ioZWB/HCa
 sEFaD1pKhPdfxlIPVRRA5U79AuqriCnL3sE9xTI9OxuvDO7IA9ZidABNPLPfdOHX4NNl1uwr
 WPa5WXpRBodMbRzzBLcqC70276QzHOTtIQ6NrC0xKA0kFao/C9DFxcfdhiX//CcoxvrMz5YA
 wlOksY0loA171e3Q8LhGhS0pX+Clg4RXcJKFO834x3LzbDbiy6JC25BQjNfZdgOsM4tWSdsx
 lKPh8nuBzFkrPuSU331y1uPhTa7OCxQIWpcYyYBFFEB+4O6/9p1iQ/TRNF+FqLzlsfyBTz73
 zGNqm45mqkXiskIka68+Dgrng6Rm3QAdSZtji2/Y45vxloRiFKND2Bw1WXm0A==
IronPort-HdrOrdr: A9a23:PLdSs6+FGs0PinCMr2xuk+DrI+orL9Y04lQ7vn2ZhyYlCfBw9v
 re5sjzsCWYtN9/YgBGpTntAtjlfZqYz+8R3WBzB8bAYOCFghrPEGgK1+KLqFfd8m/Fh4xgPM
 xbAtFD4bPLfCBHZAXBjzVQ0exN/DBKysGVbC7loRdQcT0=
X-Talos-CUID: 9a23:zAc+IG86jDTwiEy4FNiVv1MRJNo4dXPM9U/Bfl60SnpkYa+zV1DFrQ==
X-Talos-MUID: =?us-ascii?q?9a23=3A+vm6Ww+m2wQooxhuxUknkkOQf+Vl75bwVlAGqq9?=
 =?us-ascii?q?F69aOPA8zF2mUqR3iFw=3D=3D?=
X-IronPort-AV: E=Sophos;i="6.03,203,1694750400"; 
   d="scan'208";a="124059798"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=K1sD/eKJ/O7qrkeg1s8dicAaMSqvKVoP+9AIxoNZ3BO8QDTiykMFMezE3zxQ43KArvHGsml7Fx0z3HyMEwnnAnH+yYo2xYiv1cKHb8mGhtOG4gmlXDryWgijN2uPZ3DlcVOqo7OgpML3NP9DiRSgdppiBoipAWhqysy5VyUCFT+CMtFDAFohtu+h9rpYBCRoFgYnfO0Hm4yexLVitNMG9ctZtd5uHIaqggNDV2A+SBnpJEWRQ6MWNwZCcD+bWas67DcmbVhDKXrSbwkN5fcp88d2qqRb/qnJTAuA28xXWeHU9zAF4XX8y7WTQOHaX0q3SRcuDjZarAEbCaGVR0iNQw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=8PHbY8CG2LXPBbD2BnrAsDpZe7RFu+zewmEfl3k4Fcc=;
 b=mJrhV7Vb+P88FJPMmacbdWqxGGa5pxp9jUs9Uz5AILo+GWxkPzqX0nEqu3MEsgWCdDTeDramU3e0HavoEO9wfKe/iGndMrP80BixaU5ETBNZJflP7Mw1Q9sy3hjkoTXJAn4Qq/+06+UfRQ7MTA/fpIs2MUQ470vqX1zk3OahPWnifLHxk8a1xYQeYD394LufkRD4N3vnfR5w4vwMvzddbYfhu90uDIQLCxbkPY6GvY+ixh3wvfvrLDyOy0+fTqdqHUaf2My/AH0kTL0PH/ItLKBV6vHud9+M/mFF6Ed9LsYkjSjvrZnfWlviJCGCRV00e9zOZuES61I7rKU+pt1qjA==
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=8PHbY8CG2LXPBbD2BnrAsDpZe7RFu+zewmEfl3k4Fcc=;
 b=XlmN55fze5kUZNRO/z1LdC7KOHnbTi+rTyOGzlRIUAqMoFsMKzOxF+Br6Ejk1z2Y+lOzr/B4sCExri07qGJywzdAhkTZZOPBqF2DRkRGwYP7hclCYa2IG1pBvHl3MECcXvTCF0H2Tt5h0dCRE3g3U14nAZQh3sd877xop2/uyYg=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Fri, 6 Oct 2023 10:42:03 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: osstest service owner <osstest-admin@xenproject.org>
Cc: xen-devel@lists.xenproject.org
Subject: Re: [xen-unstable-smoke test] 183276: regressions - FAIL
Message-ID: <ZR_IW7NI_ZNgxMhi@MacBookPdeRoger>
References: <osstest-183276-mainreport@xen.org>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <osstest-183276-mainreport@xen.org>
X-ClientProxiedBy: LO4P123CA0102.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:191::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_|SJ2PR03MB7427:EE_
X-MS-Office365-Filtering-Correlation-Id: 118e5667-552e-4d56-68e3-08dbc6482064
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	/UL4H+jDQSjvkmCk3jrChstxjain3+wgVxInZFmOH2Q1ryalxkudFbhhm6f+kji1JquH6AbZQ4cglKOJjwtHvS5mMPPu0KopU2fTG5LSjVJYyIgXBKFVNYwW5g2erVxsnkEP0C6uy3RnCm8gqwi5NQPsg7j8f1rl5BqHynLATmt//5oBwDTZgU68Y9MBOuTGETHfBashVxL2i3f+mJzAFCOJ4MVtuzJb8NGR+n/Cpo8vfFCVRQZjfFCGuM2a/Js+ecid6gj1bE+dFBQV6QKuiY4daJ+outT/TbqOtNf3u3Ci5cNWBTlfHdJszQaiLNlSJQPgRfpWQ5xzItWrXpiRkzNLfcY2pMPQEMS5C6bsI0shdKasUOrJkAFXmXFyexTkEiaIHGYNIFJHFapmRlswrVQenhsAqqggEYr4d5fl1hpzi5HOa79DXQGmvMrFqIURG5bYrBl6TVEnNrRF8bERtaORQAs5M7OrXsqjClRfyiR+SfiXr98zWWBFbWQ4r/p2ST6jAQgxF+GwrHCf7P/zywJdH18N0KKZ+RubsrVBOqg=
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)(396003)(366004)(346002)(230922051799003)(451199024)(64100799003)(186009)(1800799009)(6512007)(26005)(9686003)(82960400001)(86362001)(85182001)(83380400001)(38100700002)(66556008)(66476007)(6916009)(316002)(5660300002)(66946007)(478600001)(6486002)(8676002)(966005)(4326008)(2906002)(8936002)(41300700001)(33716001)(6666004)(6506007);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?Rlc3RkZyNEpyZTQ0ZlNPTHFRNktKYTlDajdJZFREUFhpRDdMMy8zMk8wbnhO?=
 =?utf-8?B?Q0h6Q3FYMG1IcnlYMVhVQjdGcm5mcmJOQXRoK3pIeFJXYUF4RWY4RHNtV1FR?=
 =?utf-8?B?aFAwQ1B0Z2lmMTFQTGI3ZDVEZ2pSb3dMbGEyUU4vSkZGbG9qbkplQlVrY3dz?=
 =?utf-8?B?WjlMc3FEVzJvSmhpdzUvSWZpZFA1WXh1Q0VTeXlxemlQUGYxcVgyaVc3ck9v?=
 =?utf-8?B?RHNNbWFFNkkzK2tIemVidFE1OVVTdDR2U3luZGhXSHV4UWh2ek51L3lhZCtu?=
 =?utf-8?B?d045RGRQYkgxSFhNTmFQN3B5SjJqY0Y4alVZejlwUC9UV2ZxYUdNU3lUL0dv?=
 =?utf-8?B?RS93OTFIQ1hRRjRhaWc3U3pUS012T3ZrMlhXN25BUG9NNzNqSFZjbEVpc2ZO?=
 =?utf-8?B?M29LNWxValVZZHZxWmNzbDUyejZuazB0WUdRRk1iMjc4TmxIby92djhpVmVN?=
 =?utf-8?B?a1JMSCszSzhZV3hKeHZxc0wxd21RWTA4TE9hcWQyd0hiVUI1Z09xRnB0ZUZk?=
 =?utf-8?B?NWhrSlQvaFAxWExoRHROOTY5MHE0M0l2ZlAzaDVmS01CcHo5R1JWUUdocDkv?=
 =?utf-8?B?OEJQSFcyZXdXQXN6dmtxRE83QitET2MwVEsxTUV4b3RJQm9PVnkwb3VzWDVS?=
 =?utf-8?B?cUpxOHlvVTAzYWUrc0hhdSt2SG5ZV0Nyd1o4U3A5bUk3TDFUNkp4R2cxeGdm?=
 =?utf-8?B?K0hBTWJ1WkdKT3hyeXUvbWNjOVZlWi9MMjJXWEhrZHJudjRkdFBXekJuTjdv?=
 =?utf-8?B?U3RaNDdib1hKZDI3cExuSlRpV0Myb3ZHT2hlcWJkTVhFZ1lrVWRFSTkveTBh?=
 =?utf-8?B?YU12MUVsZnpCZWtPSVpjVmMwUnFLa29PWlpSY2J2VUlCc0Fza2pONHRxOHhQ?=
 =?utf-8?B?NnpiTVFBRXFwcFZkaFVRQzlVNUpDOE8xTkZxazVxRkZBTjNYYzYyT20rY3Jk?=
 =?utf-8?B?cWRpT0k4TmFjNkNrQnh6aGFPM0RxS0VQNVhXWm84bTNsbzZZVzVNa0NiWjNI?=
 =?utf-8?B?QzZXeG9lMlBCRmR3dFZ4d1dMMElpVFRnMkVPOGpBQTRnYmdYZnBWOFRmU1hZ?=
 =?utf-8?B?VEl0RzBrYjlJL3dYREthbCs3S0FjNUhiNWtka1hOMHFvN0U3OHA2M1A0VFY5?=
 =?utf-8?B?SkV0dTdGd2VXZTQ0aEhOdXpHMTZrdXFGZkFXdG5BNGRvbE5wYVlDNE5qR0Nl?=
 =?utf-8?B?a0laQjd6UzB4eDZ0VEg0S215ejY4cU80ZnMzdkdaYkczTG5ES2Y0czA0WlNQ?=
 =?utf-8?B?RmcvbGpZOEVPb2RKbFJHbmJzUzAydTVNOVJ1QTYzRFMvQVZNVnRHRkJCb3FD?=
 =?utf-8?B?cGVUQlErd2FCSysvOENhMnFzUURWb0ZSRW5KWE5XRzBvTkNobDArQjg1SXU5?=
 =?utf-8?B?Sk00RlpnMGJGREhHUS91dlNjcGVnYzVYZmlMSWVWNjlCK2J4WHZZWUx6M0xS?=
 =?utf-8?B?K1U4b1BTTGt0REo4MHBDemlmbzd3NnpIUEwwVGtMNlJ4ck03T3NhYjJUZmJx?=
 =?utf-8?B?V1kvb0VJTVM0ejBhR0ZQcVh3Mkl6Z05abkdYdEhERXlZZWo0VTNNcElHWGho?=
 =?utf-8?B?aHVMa1crVTRhYUIzQUlHNkVpTnpMSlM2ZGx6aUsvL1ZpdjJsSWp0UHNNbEpM?=
 =?utf-8?B?YVVvU0RRZVZoa0tmKzA0cXN6a2ZzcndYOW0zRmpOV2djb0VMZGp6K0oyMkMx?=
 =?utf-8?B?dzRJaHFvNEZGcERnVGd0a21ha2FYUlJETkllS3I0MkJMTWZzZmpxTTh1RlFy?=
 =?utf-8?B?SWVHaWFZeGZ4aXFuaGpuK2lvUTNqTnRQc3FkWGJ5cm5QOUY2WUtSZE8raDln?=
 =?utf-8?B?ZHVBMnBFek94c29hVDg4QnBqTHNjdzQ0RVVoRW41cHgwbHE5MDgwa0xMSTlP?=
 =?utf-8?B?VkQ1cWpQMGVRbkFJWG80SGw5NDZEZHQ5TjdEb1JiYlQ2MGs2bXlMUG1aTGhM?=
 =?utf-8?B?UjMxZG9LZ0lsVnBnZ2JWNHRjVFhJRHVRUEZFTVVGaUVIZlViKzFLQnVpbE9W?=
 =?utf-8?B?dEw5M3BOV2cvOE96ZmNrZHc5RVhBZHZ5Z0RnS3ZMV0RhQzFKenVaZU1pbnd6?=
 =?utf-8?B?dGJnTGs4eTJnbWxWZmx5YUV3S0VpYTlYMUxEM1d6cWd3NzBWeUVnWlppOFpP?=
 =?utf-8?B?TnEzTzhyN3EyanhuTGNsSmtBNlpkWGN2YnJ0V0NwK2ZWNncwQktkWU1TYUFz?=
 =?utf-8?B?OHc9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	JnLGRelVhaWdxDeL/HE6zhmYEUXEwS1Y6unmhhXJxN4sOzgPSarfStB+GPPU0nXmcKW21gVyYP/0kinMwi0t1miQE6VSjxqX1TdItiRzNDcys39ikDw/2rNZUqZDT2YepajIISxm0QsALbbY4EOqUoN+OgwhjAJPFOEWLId/jgNZRCgI0TYOTpZ4mueNnBUqJ2vZ09n5GkT0AlHevLNdeeoH9CPtdyGIluGImp7RwQJ9Y9fLn9eYN/NcD3uZvGOYeXQkrcA0ArwzfaT40OqcKK0/qTSggft4Lw9leVGlKJnZswuvgbybvNcJFpes5EmqtgBC5J79qkJEawI0Fc4UHnDwHAsUgiSqVPLTf8eSjsc88PUQ68Yhl/Qa6DugtN1K0VrfeGkJkIbMmnWOKrja/qwQp/GmjOnJYdeozJVXW54Ye7OJYYhQd2lFwLxIWzz6Z/d740wv3XwL071bqxcazrYnTC92uSjwwz9xYyO0TgThptYIzdW3fNbzANl8EJ2FIg9sSBp7sLpKeUrCW4ST751fqKc6vWnfpXYYoJdz4vgE94B6XUme/yUwSrO/BVUt2IAk7O7EC0NL3sr9ZjQZIfLRx9jiyHGFvXouwDvmWVBap1chn+cugmfptECTD3TEv8kgLW6HNrmWfpsignR4TyA3JmRLOTcQDNgPmkro9W/xq1e4YYlFIsJ/DPZkxlXc/kjEVQcsLxCsxUDwtWhqSy81lpe4Dml1GK+aOYKC7V0748U/DsJCuQAEUr99gbeu7MIz49jwYjNWw30Kqss3grKLnvZVDMBT90NI51hK7YvsMDKeNAVDH8rm0Kq9ksfm
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 118e5667-552e-4d56-68e3-08dbc6482064
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Oct 2023 08:42:08.9361
 (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: 4ick6HFwAeeET5PJxwwU7c2Kni9p+sIZjCJEYjfyxqwVSEc72PHz00pJySio5KyFzaC8NUyUUSOehreZBojFvw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ2PR03MB7427

On Fri, Oct 06, 2023 at 03:32:00AM +0000, osstest service owner wrote:
> flight 183276 xen-unstable-smoke real [real]
> flight 183279 xen-unstable-smoke real-retest [real]
> http://logs.test-lab.xenproject.org/osstest/logs/183276/
> http://logs.test-lab.xenproject.org/osstest/logs/183279/
> 
> Regressions :-(
> 
> Tests which did not succeed and are blocking,
> including tests which could not be run:
>  test-armhf-armhf-xl         18 guest-start/debian.repeat fail REGR. vs. 183270

We have an assert triggering:

Oct  6 02:37:53.413781 (XEN) Assertion 'IS_ALIGNED(s, PAGE_SIZE)' failed at arch/arm/mm.c:1243
Oct  6 02:37:54.325736 (XEN) ----[ Xen-4.18-rc  arm32  debug=y  Not tainted ]----
Oct  6 02:37:54.337773 (XEN) CPU:    0
Oct  6 02:37:54.337824 (XEN) PC:     00271a38 destroy_xen_mappings+0x50/0x5c
Oct  6 02:37:54.337891 (XEN) CPSR:   200b005a MODE:Hypervisor
Oct  6 02:37:54.337896 (XEN)      R0: 10020340 R1: 10021340 R2: 00000021 R3: 00000340
Oct  6 02:37:54.349762 (XEN)      R4: 43fea008 R5: 10020340 R6: 43fdf010 R7: 10020340
Oct  6 02:37:54.349814 (XEN)      R8: be82e278 R9: db750000 R10:be82e278 R11:43fd7e04 R12:00000001
Oct  6 02:37:54.361680 (XEN) HYP: SP: 43fd7df4 LR: 00235aa8
Oct  6 02:37:54.361817 (XEN) 
Oct  6 02:37:54.361830 (XEN)   VTCR_EL2: 80003558
Oct  6 02:37:54.361830 (XEN)  VTTBR_EL2: 00010000bef8a000
Oct  6 02:37:54.373811 (XEN) 
Oct  6 02:37:54.373874 (XEN)  SCTLR_EL2: 30cd187f
Oct  6 02:37:54.373919 (XEN)    HCR_EL2: 007c663f
Oct  6 02:37:54.373963 (XEN)  TTBR0_EL2: 000000004113b000
Oct  6 02:37:54.374007 (XEN) 
Oct  6 02:37:54.374046 (XEN)    ESR_EL2: 00000000
Oct  6 02:37:54.385729 (XEN)  HPFAR_EL2: 00104810
Oct  6 02:37:54.385760 (XEN)      HDFAR: e0800f00
Oct  6 02:37:54.385784 (XEN)      HIFAR: c08b1490
Oct  6 02:37:54.385808 (XEN) 
Oct  6 02:37:54.385829 (XEN) Xen stack trace from sp=43fd7df4:
Oct  6 02:37:54.397760 (XEN)    00000000 43fea008 02be1a40 43fd7e0c 0026ad88 43fd7e24 00208e38 43fdf000
Oct  6 02:37:54.397760 (XEN)    00000000 43fea000 c933e480 43fd7e3c 00208f98 43fdf000 b6fb4010 00000000
Oct  6 02:37:54.409834 (XEN)    c933e480 43fd7f34 00239e3c 00007176 0000dc11 43ffc4d0 00000000 00000000
Oct  6 02:37:54.409843 (XEN)    0000ee6b 00002800 00000000 00000000 00000000 00000000 00000000 002b401c
Oct  6 02:37:54.421847 (XEN)    00000000 3b9aca00 cd3b5dc0 00000002 00000016 00000001 b6d0854c b6fbb898
Oct  6 02:37:54.433745 (XEN)    0051a3f0 00000000 005171d0 00000001 0051a3f0 00522398 b6fba490 b6f74018
Oct  6 02:37:54.433757 (XEN)    b6fad480 b6fad940 00000000 00000001 b6a00ea0 be82e3c4 b6f9efa3 b6fb0348
Oct  6 02:37:54.445757 (XEN)    00000001 00000005 00000000 00000000 b6d0854c ffffffff 005188d0 00000001
Oct  6 02:37:54.445799 (XEN)    00520490 005199d0 00520484 0051aea0 b6fa304c 00521f68 00000001 43fd7f24
Oct  6 02:37:54.457800 (XEN)    43fdc000 43fd7f58 00000024 c933e480 be82e278 db750000 be82e278 43fd7f54
Oct  6 02:37:54.469777 (XEN)    0027ae34 c933e480 be82e278 db750000 00000000 c14751d9 00000000 43fd7f58
Oct  6 02:37:54.469843 (XEN)    002019f0 b6fb4010 00000000 00000000 00000000 00000000 c14751d9 00000000
Oct  6 02:37:54.481786 (XEN)    c933e480 be82e278 db750000 be82e278 d7324398 00000024 ffffffff b6bba670
Oct  6 02:37:54.481851 (XEN)    c030925c 600b0013 4a000ea1 be82e26c c1676f80 c0301a20 db751e44 c08362bc
Oct  6 02:37:54.493787 (XEN)    c1676f8c c0301da0 c1676f98 c0301e60 00000000 00000000 00000000 00000000
Oct  6 02:37:54.505735 (XEN)    00000000 c1676fa4 c1676fa4 600b0013 200b0193 200d0093 600b0193 00000000
Oct  6 02:37:54.505802 (XEN)    00000000 00000000 00000001
Oct  6 02:37:54.505827 (XEN) Xen call trace:
Oct  6 02:37:54.517793 (XEN)    [<00271a38>] destroy_xen_mappings+0x50/0x5c (PC)
Oct  6 02:37:54.517856 (XEN)    [<00235aa8>] vunmap+0x30/0x1a0 (LR)
Oct  6 02:37:54.517902 (XEN)    [<0026ad88>] unmap_domain_page_global+0x10/0x20
Oct  6 02:37:54.529782 (XEN)    [<00208e38>] unmap_guest_area+0x90/0xec
Oct  6 02:37:54.529842 (XEN)    [<00208f98>] domain_kill+0x104/0x180
Oct  6 02:37:54.529889 (XEN)    [<00239e3c>] do_domctl+0x8ac/0x14fc
Oct  6 02:37:54.541775 (XEN)    [<0027ae34>] do_trap_guest_sync+0x570/0x66c
Oct  6 02:37:54.541836 (XEN)    [<002019f0>] arch/arm/arm32/entry.o#return_from_trap+0/0x4
Oct  6 02:37:54.553792 (XEN) 
Oct  6 02:37:54.553852 (XEN) 
Oct  6 02:37:54.553891 (XEN) ****************************************
Oct  6 02:37:54.553935 (XEN) Panic on CPU 0:
Oct  6 02:37:54.553977 (XEN) Assertion 'IS_ALIGNED(s, PAGE_SIZE)' failed at arch/arm/mm.c:1243
Oct  6 02:37:54.565724 (XEN) ****************************************
Oct  6 02:37:54.565755 (XEN) 
Oct  6 02:37:54.565776 (XEN) Manual reset required ('noreboot' specified)

Looking into it right now.

Roger.


From xen-devel-bounces@lists.xenproject.org Fri Oct 06 09:16:53 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 09:16:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613400.953859 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qogwt-0005Dv-Lq; Fri, 06 Oct 2023 09:16:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613400.953859; Fri, 06 Oct 2023 09: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 1qogwt-0005Do-ID; Fri, 06 Oct 2023 09:16:43 +0000
Received: by outflank-mailman (input) for mailman id 613400;
 Fri, 06 Oct 2023 09: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=Twl1=FU=citrix.com=prvs=63654eace=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qogwt-0005Di-0G
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 09:16:43 +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 0e518f79-6429-11ee-98d3-6d05b1d4d9a1;
 Fri, 06 Oct 2023 11:16:41 +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;
 06 Oct 2023 05:16:37 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by DS7PR03MB5623.namprd03.prod.outlook.com (2603:10b6:5:2cf::14) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.37; Fri, 6 Oct
 2023 09:16:34 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::66ca:3a42:baeb:9ecf]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::66ca:3a42:baeb:9ecf%6]) with mapi id 15.20.6838.030; Fri, 6 Oct 2023
 09: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: 0e518f79-6429-11ee-98d3-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1696583800;
  h=from:to:cc:subject:date:message-id:
   content-transfer-encoding:mime-version;
  bh=Et7BOHUy+QREW0KH4uqAWkggxoDc3tDR2KpSZSXtJ2A=;
  b=FMiIMYTGshhoC2lx14hcP4DNukZxQemDIkbHhrPNMBZBiHQu8gjLBhg+
   QEbjt4lUvlk9bJwQJPQg2628owGvaLNfJQBYeOkD0yzckR9jxhukpQTKH
   kIj0eKERNKba2MLuHm7Sm5VIsUCIfb8alx7s3i86ym/Msi7V079zJsqlt
   c=;
X-CSE-ConnectionGUID: +7raVm5ETX2ErmTPaDy5lA==
X-CSE-MsgGUID: 8CAP/ygDRkCrf1Z8/Y0dVg==
X-IronPort-RemoteIP: 104.47.59.172
X-IronPort-MID: 124813159
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:Haywf6vOtG5TXWQVDETflE/VJOfnVNJfMUV32f8akzHdYApBsoF/q
 tZmKWjSb6mNazChetB+bIm2/UlSusLQydRlSVc6+SwzFy8b+JbJXdiXEBz9bniYRiHhoOCLz
 O1FM4Wdc5pkJpP4jk3wWlQ0hSAkjclkfpKlVaicfHg3HFc4IMsYoUoLs/YjhYJ1isSODQqIu
 Nfjy+XSI1bg0DNvWo4uw/vrRChH4rKq41v0gnRkPaoQ5QeGyiFPZH4iDfrZw0XQE9E88tGSH
 44v/JnhlkvF8hEkDM+Sk7qTWiXmlZaLYGBiIlIPM0STqkAqSh4ai87XB9JFAatjsB2bnsgZ9
 Tl4ncfYpTHFnEH7sL91vxFwS0mSNEDdkVPNCSDXXce7lyUqf5ZwqhnH4Y5f0YAwo45K7W9yG
 fMwa28XZy6G2s+K8OiWUOxQvs0PPZTvFdZK0p1g5Wmx4fcOZ7nmGv+PyfoGmTA6i4ZJAOrUY
 NcfZXx3dhPcbhZTO1ARTpUjgOOvgXq5eDpdwL6XjfNvvy6Pk0osgf60b4C9lt+iHK25mm6Co
 W3L5SLhCwwyP92D0zuVtHmrg4cjmAuiAt5CTebhq68CbFu7lkc6MFoHWneBotKjhBeMC5Vuc
 0Aq9X97xUQ13AnxJjXnZDWorXjBshMCVt54F+wh9BrL2qfS+xyeBGUPUnhGctNOnO87QyY7k
 GCAmdzBDCZq9raSTBq19L2ZsDezMig9NnIZaGkPSg5ty9v+pIA+iDrfQ9AlF7S65vXuAi35y
 T2OqCk4hp0QgNQN2qH9+krI6xqzorDZQwhz4R/YNkqu6QZ8eYike53u7FHd5PlNNq6JQ1+Zp
 n8GlsOCqucUAvmweDelRewMGPSl4qiDOTiF21p3RcB+rXKq5mKpep1W7HdmPkB1P80YeDjvJ
 kjOpQdW45wVN3yvBUNqX7+M5w0R5fCIPbzYujr8N7KivrAZmNe7wRxT
IronPort-HdrOrdr: A9a23:/zb5nq2CfzZsqb5VyFy7RAqjBHYkLtp133Aq2lEZdPU0SKGlfq
 GV7ZEmPHrP4gr5N0tOpTntAse9qBDnhPxICOsqXYtKNTOO0AeVxelZhrcKqAeQeBEWmNQ96U
 9hGZIOcuEZDzJB/LvHCN/TKadd/DGFmprY+ts31x1WPGVXgzkL1XYANu6ceHcGIzVuNN4CO7
 e3wNFInDakcWR/VLXBOpFUN9KzweEijfjdEGc7OyI=
X-Talos-CUID: =?us-ascii?q?9a23=3AiGNW2GpfvV2MuBqVfub/AlbmUYN6aHTjySr9H3/?=
 =?us-ascii?q?iJHxsdIWcZU7N/Ioxxg=3D=3D?=
X-Talos-MUID: 9a23:1s0VDAqRWogyaxNYpAkez2FJHf8v8quCMkMmi5tfiZnDBHR8BTjI2Q==
X-IronPort-AV: E=Sophos;i="6.03,203,1694750400"; 
   d="scan'208";a="124813159"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=gy2lXnc3ZvnxhRS+LBPKy1kDS3j6HuNo8hcZD5+kR0I0fWhK55d4MBdvQKkUSrceqVexUGnDVMBImIffa2gKiQaVlcclzw8v8wVyZ7f+IsuKkRXvjb0r+KYkup0VHQC2ruvxZ6ADvi2SgTarQx5cd1F5yfvQapZwKEel9Y7y876MbamA9b8JbCocQnCyhjToEUZa1ox8kmMxJGiG9bZ1ByQuNivNiTzg8nqVX6hMtGWu5Rr5FhX164bLG3JmsWWCMSCy3lhS2K/w0yLiO4+y4YVuXVgVwFAmyZlnZuwfaavGI+J0wUU1MI8j5lHyXvFQ4bnSdQRyOE3l7xxPTVXI5w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=qAVXvAo7fDkdf4/CZHkgpfol7lp8AktHHDo1XNweRtA=;
 b=dQtYhPtMt+3Um6TvxepL5V/99nUrPIehbO+7wr5Ua1WQPhIxBCMG6miLkJn7q1dXgtSHdaHVDTVXA5CggPzrrxpVADIGqIT9mdX87STxFcAepUWWGWf5P4++0BuhZYYhD0zZFk9xU98KwbulMKyxO6PhqN+8mHeQRZ5DpbYc0KbLpvkAm3GvB/ImnHhAfgFezRZR0F24vSm+T8YwSif50mKOrDLIlKnCOzRQI1GiWezPFmKnZfRLILK9cj/3rCVFXkoOQC/FS0rcA+zy07nJcfX3krk4OkxJWxjEQM41ip1aW7qsZzp2hECsW5i/x4ZXbWHnwLV8a76BLR8lroQdOg==
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=qAVXvAo7fDkdf4/CZHkgpfol7lp8AktHHDo1XNweRtA=;
 b=R+HgV0BUG+KMc2gvJI9xd6LLZDF1TZwt0coD38PQ6GnakAPwbfnfVWXCsc8J/PCVrpvaXWlf8zlb6fAJ0sQUd2LyR4Qv1YYGIo15AySzZxUqL88i514hVVFQJC2fz+LgmSWQD2KivRlJb7XCgKcs73/iyPkuI2fOFx2r2Kyn0R4=
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: Henry Wang <Henry.Wang@arm.com>,
	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>,
	Community Manager <community.manager@xenproject.org>
Subject: [PATCH 0/2] domain: followup for phys address mapping series
Date: Fri,  6 Oct 2023 11:13:51 +0200
Message-ID: <20231006091353.96367-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: LO4P123CA0188.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:1a4::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_|DS7PR03MB5623:EE_
X-MS-Office365-Filtering-Correlation-Id: ad55fadb-5dba-4003-1381-08dbc64cef6a
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:
	rs2GaaRlaMRhI42bhKPjJBdb7Z9lqrfs87rZBPd4MzWFbwTynBcmUVHs84uX56GexHAT4OZoMwRYm87tP/6jVWq7Lc4PNhHipsS6yM8MO2y6mBk1kWbjVugpqTyDCIP9AWVlJkTyZMMvpdSJMaOWXp+SqvGeYhJGrzyqvdo4URHYvM+5i84B4Hy18J3c7hI6Adk/hBd3vidbUmZ243iclwSdbSnrqTbAGWAAgrelUPzsYGiSJNMMOSrSDROzj9gbptzQhUH8fRRA7tfIA+B+G/K5WEfzxyKd21GYVkwezYXRfJ5msOwJ5tXUdBjGjLtdI7+Zdywzxul9lUsmcQBzf+LKBXk4iDB9rdVRZJA/zkVWJn/n3VvEulF4UBpLfcN6C1vs9swozQOZ4/kfuNkka6Mo/Q//u0EDG6P8CcI4x4IXPkMuFRNfIO6gCeW+pq51MtTMgA6Fm8NBW/U6T9z+s9j8B5JwMFL9LEw2IrZ9qADGfEXu8IQF7TY+my+cRZbJqZvH0WSCxQLVnL3sqdwH89dTHPB3ntu2iu7EN9dLiu4EaFSyjrZs9XGEBRNE5QCo
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)(346002)(39860400002)(136003)(366004)(396003)(230922051799003)(451199024)(64100799003)(186009)(1800799009)(478600001)(6512007)(6506007)(6666004)(6486002)(26005)(1076003)(2616005)(83380400001)(2906002)(6916009)(5660300002)(4326008)(8676002)(7416002)(41300700001)(8936002)(66476007)(316002)(66556008)(66946007)(36756003)(54906003)(38100700002)(86362001)(4744005)(82960400001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?TjFuaFZybWZjaStFd2kxbmZRRzV0WmZ6QiswZ0svVkMwKys4MDNDWTNwMldD?=
 =?utf-8?B?ZFlGTVdZMksvRGlhK0R2M2hvVjRsWjFmM01mNXB1OVZxNGFFT2FMNnl4Mkwr?=
 =?utf-8?B?bDk3L09DazdxcHl6K2lVOGVqdFJYaWU0UjZMZjRxWHRxRHB4b2loc2hNWmps?=
 =?utf-8?B?QzhKRysrNndiUlVvUlJlenAzeDlZNG1JN09WOSs3TkRCcTZya2pscW8wYm5O?=
 =?utf-8?B?NVh5ZG5YTDVPYXFzOVFWeHB0aXg4WGx4d0dZZEJoMDgyVWpWSDJib3NBMW9Q?=
 =?utf-8?B?OTJzVDBKODVlanNndlRtaEszdW9PNWJWTHB1OEFSQjBZOG9MR2l3dHhhTCts?=
 =?utf-8?B?RzlURWtOMk1hUzlzVURNYXh1c0xpN1NZYUIyZTdjazkzSWp6eTIrL2kwWWFT?=
 =?utf-8?B?aUhzS1l0SithT0dMUm5aYzNtUHBNak1CMWlKRjZ6ZWh0UlhMMitRVCt1UFBE?=
 =?utf-8?B?K21RMHkzNnY5VXlMK3NjMTJBdEtZM0ErQy9uNCtkNUtJcmxGaWk1OGVBMnZx?=
 =?utf-8?B?cGt5MmY2cWkvTjdMSUJ0UHRhK1h3R3oxb2NZaG95Uk5ZUjBQRzA1Y1ZBTnR4?=
 =?utf-8?B?N1NVT3puc3RPMm9UMldYSWRERmw4UTRxcHVuSnZkb2NUTU1EMTR5UlpPVXpT?=
 =?utf-8?B?WGEyNmZwK2YxbEhRZmZkeHNTYkl6MFF4OUErekFGZTZHVnFleTJKSnk5TENm?=
 =?utf-8?B?cFd5QWVuVzVNcjZqdUZST1FFYlkyMHp0Zlc2aDQyTGtMMEhka1hpc0IxMmow?=
 =?utf-8?B?YTNXcDkyWGt4NndrTFZ6dnQ3QTdZVmxmN2dkemhpWTdLWEZOMU45T2J1Uk44?=
 =?utf-8?B?UExQMHJ1clduNTN0eE1rS1F1OFZUSTI1clU3Smd6YkIvbHhjUldXODU3eDdx?=
 =?utf-8?B?UGFFRThBOE5hNFhVV1FmY28xVkdZTUpwSElCT2krQU51aVlaeXhLbWxWcThL?=
 =?utf-8?B?Q0xwUWxSZkJURnJ6Ylg2Tkc5ZjJtNXFBdUlQbVdFL2hiS0pJQWd1Q0c3YTU4?=
 =?utf-8?B?TXluZ0tjcVlHUHd0a2ZqY05jazFXMDBGMVFPZWFiUW9WbzFTeEEwVzNxYnpO?=
 =?utf-8?B?QkQ3SDVDeE9RZVpENThWek5QWHRqUGdMaWlMYUlxTEhzMHdLVk9QZWJ6UWQr?=
 =?utf-8?B?TU9weUZBcDFjYTRzR0dYU3djZFZxS2tFVi9CVHZFcXBSaWlKR2NGa0lIYVdw?=
 =?utf-8?B?QTlVK1c0RndWaXIvbU1sZXVpdGFDMzNFaUM5M3lBbEZNUmRtcHlMZ1NKRzI0?=
 =?utf-8?B?Rm9IMWZJU0tWUTJIbkxmVitaUytDTUs4NGwzWHl2VFlpYVUybC80YVJIb2Nk?=
 =?utf-8?B?S1o5ZTFQQk9EQVU5bHVZcTh4SDNWODJibk15YlovdnNWYy9iTkVLWGh3aWtN?=
 =?utf-8?B?WTlia3JzUXJuNmNaUUZNQW5ZSGpIaVMrOFZSdjRQQmhtVmswbERDdnJ1TGRJ?=
 =?utf-8?B?a1BoWjMrYVN6eEJiaFVZenJUNUxQNzlIWnQrOTFMRnc4NTVhSy9HRFZCcTRw?=
 =?utf-8?B?WDNyNlVQL29EMWtFejlDWkVrZmVIMkY1V0FqRHhaeXFmU3VHV0RYZ1BzVHhs?=
 =?utf-8?B?dlFSRHhhaFByZGJqYWxyZlA4cFhlNXExbW1YOTAyZGh3cFFpZGF2bDhTTjBM?=
 =?utf-8?B?cVp6VWpXYVVMZThnYkdQL0JPMnMwbnVwVWdKSFhhWU84aGJVK3NWZ0drSmF5?=
 =?utf-8?B?TUlFMElpRkRGOVkvZWo5eU82K3ZVRGxYY2ErbExXTEtXUm9udjlOWjU5SU4v?=
 =?utf-8?B?czNzbFJaRko0YUxXTU5ENW5pdEtJZTNqcERMb2tLdVo4b3JIa1FJcEtNbmRt?=
 =?utf-8?B?OUIrTktCSkFzOEM3UEx0ajZHb2NLc2lFOGFpU0lUOFdEZUd3NVNtL0NFdXlD?=
 =?utf-8?B?QVQrV0dTMTk1d0o5Q01NTEJhVFc5RmdOV3Q4YlN5M29Ycm01aFJRaFVMQk5Z?=
 =?utf-8?B?NTB5YnlVNUQ4T1YvK2RNUURWWEJ4MmgxcWM4THBkOTZMeE43RUpLOGNCMTd3?=
 =?utf-8?B?THVxd1dRQzF5M282N3RITU5QZVRUL2lMTllSaWEyeXJMVDZLYloxS2lYR0Jy?=
 =?utf-8?B?aFBvRWlpOVB2LzlFYlUyeFZyYURLS0hTbDQvaDRtT0hpUVY0emVRanZ0YzNo?=
 =?utf-8?Q?6Nme1dAQtzK8rCsuTnvwZSkH3?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	j0pHnb7PZrKGMzGJMAYjDHE+HXD7EAij+7q/Xg5uJ6gRNqpQ9ySm+NFe9RFAUR/j9N0zO+lbI9N/8lcz3z9+wY8TFTFecl2z/jUT0mPGUN/eYtPgM7ex35ZM1CtcwM5ApUNnhwKqv+OsiI+wnmgKf1baOdji/7DwcVJ1q0386XZi+4mpL+lx5PmUP2UF08wqyQToZ9+a42L9LK6i3vJkfhVf1KiHBWGcPH9MKdwRT+6u5YwZNcDz6cQ+PMFrAzHvRa7XG2M/0qXKV24EKej4WFL8kL4qFj9xl/FCdPQWuOp4lELuROFd0gJETISgzZ0Kba2bCQu+dTz+d1ItNQrVrgtwI12CG50CWVUuj4mYPOetPpl3SY4KKJAHEL0XKFVCTcRFLaD8m9nH2Xy1G3avLg2UfqEWygJPR0tvts/8hspiwoFbB3Aigv4RU6RxwuDHQZrt097mhWqVyqexNdpxTp9kt2dwOE9yR2Hs4/lOrEiyyavnOruuqW6XbCjLC/Dh2eYTP/ToOyN4WSyKvOhBNZRseoZDLGES8XHcVoAjsrmsNI/J/7WnR+Ny8ct5wM9PRAEUb3Q0oauZ9GrCZWHeCMiHwvnO40DOcyos8aKHI+XO5Lpexi7OTclArBCYgUWOLgwIeadeUGwK+MyVuygwm2V/n46VTesDCnTgCzQBxU8ZS+GJwWuiiZe2MlybV29w37wFrrj06AqPK/2720j6TxjUo9lkVAXLS48A4qoJ4hUwNU9ovmyNcfjDoZAKRRgCuOh3jYP/w7BFEd2QbMOMv0kh3o6NLlU3RYeyToaQu/bB9iP5asbtUoTebiff6UYV4sImc2W97VV+bGoFt2mQFuDT5OASWg3ixMtsXG2+rXMvERwYYhousYMmCGMAU4E9g+fIHu6GzfKnZigUpYUTYlrzWo6AmbKV13l/rvk55rk=
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: ad55fadb-5dba-4003-1381-08dbc64cef6a
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Oct 2023 09:16:34.0821
 (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: 8sMnWvqJq0tMq9z4ezFGCv/ylLauF7jrhParEyqDTuK4cNsOQwQlnkZRC6BinMtXRM5XRNF5UQEBRsoISp8/XQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR03MB5623

Hello,

First patch fixes a bug reported by osstest, second patch is an addition
requested by Andrew, I think this should remove the blocker raised
against the series.

Roger Pau Monne (2):
  domain: fix misaligned unmap address in unmap_guest_area()
  domain: expose newly introduced hypercalls as XENFEAT

 CHANGELOG.md                  | 2 ++
 xen/common/domain.c           | 2 +-
 xen/common/kernel.c           | 6 +++++-
 xen/include/public/features.h | 9 +++++++++
 4 files changed, 17 insertions(+), 2 deletions(-)

-- 
2.42.0



From xen-devel-bounces@lists.xenproject.org Fri Oct 06 09:16:53 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 09:16:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613401.953869 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qogwv-0005Sw-04; Fri, 06 Oct 2023 09:16:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613401.953869; Fri, 06 Oct 2023 09: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 1qogwu-0005So-Su; Fri, 06 Oct 2023 09:16:44 +0000
Received: by outflank-mailman (input) for mailman id 613401;
 Fri, 06 Oct 2023 09: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=Twl1=FU=citrix.com=prvs=63654eace=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qogwu-0005Di-7G
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 09:16:44 +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 108df6ae-6429-11ee-98d3-6d05b1d4d9a1;
 Fri, 06 Oct 2023 11:16:43 +0200 (CEST)
Received: from mail-dm6nam12lp2176.outbound.protection.outlook.com (HELO
 NAM12-DM6-obe.outbound.protection.outlook.com) ([104.47.59.176])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 06 Oct 2023 05:16:42 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by DS7PR03MB5623.namprd03.prod.outlook.com (2603:10b6:5:2cf::14) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.37; Fri, 6 Oct
 2023 09:16:39 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::66ca:3a42:baeb:9ecf]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::66ca:3a42:baeb:9ecf%6]) with mapi id 15.20.6838.030; Fri, 6 Oct 2023
 09:16: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: 108df6ae-6429-11ee-98d3-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1696583803;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:content-transfer-encoding:mime-version;
  bh=by+BUmNhmGnnCbOFBuCL5RU3RPGty3C69SJ4rAoXWmo=;
  b=OTwQfGwdeRqbL++2LAYS8yR2N7nhOul7Tj0WjXGfw35mgLuBLWEia5+f
   l9Y3A1iY5R/CeQVzUOR8zt4EN3yCIhWcHSBWFUafd7pFVgVbhhFzlDS5m
   XJgn311+gD+J4whmLcAJgwssxVjIkxPVyJXjdvdDjQcZvtxE9gtcQmhSp
   0=;
X-CSE-ConnectionGUID: oqp3VEXXSw6EqkefGNzfbQ==
X-CSE-MsgGUID: IA5OIaX3QeaDk+Oci6dwhQ==
X-IronPort-RemoteIP: 104.47.59.176
X-IronPort-MID: 124813169
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:TDwIZ6816Q72K+M01ySfDrUDWn+TJUtcMsCJ2f8bNWPcYEJGY0x3y
 jYbWGCPa/yLNGfze4x2Otuxox4Av5TVxtY1SwVqq3g8E34SpcT7XtnIdU2Y0wF+jCHgZBk+s
 5hBMImowOQcFCK0SsKFa+C5xZVE/fjVAOK6UKidYnwZqTZMEE8JkQhkl/MynrlmiN24BxLlk
 d7pqojUNUTNNwRcawr40Ird7ks01BjOkGlA5AdnPagW5AW2e0Q9V/rzG4ngdxMUfaEMdgKKb
 76r5K20+Grf4yAsBruN+losWhRXKlJ6FVHmZkt+A8BOsDAbzsAB+v9T2M4nQVVWk120c+VZk
 72hg3ASpTABZcUgkMxFO/VR/roX0aduoNcrKlDn2SCfItGvn9IBDJyCAWlvVbD09NqbDklJ7
 ORDFh09Xiuc2c+vw7+1Zc9+iM4aeZyD0IM34hmMzBn/JNN/G9XvZvuP4tVVmjAtmspJAPDSI
 dIDbiZiZwjBZBsJPUoLDJU5n6GjgXyXnz9w8QrJ4/ZopTWCilUujtABM/KMEjCObd9SkUuC4
 HrP4kzyAw0ANczZwj2Amp6prraVwXOiA9tMRdVU8NZLqQC052UjUyQbXHe44t6yixCyRNJmf
 hl8Fi0G6PJaGFaQZsnwWVi0rWCJujYYWsFMCKsq5QeV0K3W7g2FQG8eQVZpSNEgrt5wejUs2
 XeAhdavDjtq2JWXQ3+A8rafrRupJDMYa2QFYEcsTxYB4tTliJE+iFTIVNkLOLWuktT/FDX0w
 jaLhCsznbMeiYgMzarT1U/DqyKhoN7OVAFd2+nMdmes7wc8aIv7YYWtsALf9awZc9jfSUSdt
 n8ZncTY9PoJEZyGiC2KRqMKAa2t4PGGdjbbhDaDAqUcythkwFb7Fag43d20DB4B3hosEdMxX
 HLuhA==
IronPort-HdrOrdr: A9a23:yFQfraxM2lXHoQPCVmo3KrPw6L1zdoMgy1knxilNoHxuH/Bw9v
 re+cjzsCWftN9/Yh4dcLy7VpVoIkmsl6Kdg7NwAV7KZmCP1FdARLsI0WKI+UyCJ8SRzI9gPa
 cLSdkFNDXzZ2IK8PoTNmODYqodKNrsytHWuQ/HpU0dKT2D88tbnn9E4gDwKDwQeCB2QaAXOb
 C7/cR9qz+paR0sH7+G7ilsZZmkmzXT/qiWGCI7Ow==
X-Talos-CUID: 9a23:GAWj0WxxrdN5qq03RpOcBgUTA9h+TFDt/EzPfWKhCmtnZ5uHR1WprfY=
X-Talos-MUID: 9a23:3XG6wQRqz2pTJrsPRXTNrWxFFc5YuJ2jAWwO0rINupeIKixJbmI=
X-IronPort-AV: E=Sophos;i="6.03,203,1694750400"; 
   d="scan'208";a="124813169"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=FIpLkRX6814F2bBC3AidxvrNa6RtfyTlgtlFIm6WDIKnTo6ASrfADfTg1GAb2OsCygAAUhQ7R1xTe1SH8jCwJpkBkQdgTooVYlMc9K+xNiW3K6gwKhsddn8m8oCdJcRcNOOB/S76kr3OzyobGZ03FJKkw/ZH8SeYl3TPlKxZLH5597WqCdFprLrXyafK7wA0t8eOycTa56cqdxa3lJCbN9Cf0pePrB+GmO7PAMuZ3z0Zfi4Hfed45YY9Yk888Forb1y33DOnPKGDHqfZWCMAAbYegyHdX0DW3p8TQHQeD6/JPoiLvjhB4mBF2pIAXF3Bc0aRVAABhxFXfltC+N7GNw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=PE02m+AHltxS0HWO+8PEn0CoBID2FzB2Ut853VBtHnw=;
 b=e9l6bJ/Rthon0E42ILP/PuF/piP0U/qOhrMQrjpaQMOQf0D7qLncQOjbJy6JsTQ2X6RGoofvZqpLzSo4b/NuXu30TregbiHuq9nrcGI27AX6xE0fhGRrsSD19a9LaBaaEE5yk6otpXmnbbL31aQJoXIKm3cikcpevYed5zjIYIiDXitIMA0mYKiCIzqNQVxoNwDoMDsIoawajCAri0yWGwmY/0ldFouwgI/0XFnmEGI/EPQX1WLi10BBAudkWQuvjhz6hwOoxFypqwq3IGnz/yIrOjZ1qgB9/gcXvAFNDTn1SzCNMmr42JpY8X/PKpiv/bfjaaLTDSdTDokLXrH/jA==
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=PE02m+AHltxS0HWO+8PEn0CoBID2FzB2Ut853VBtHnw=;
 b=FQ+df9mcJoaQxYrmdntge+V0kAXiVPyxmnKontNbOSxaynfRuFeCOmfk7Fbq8+GgTPZhA6YQ+mCd4Lbh0Z/VCKRL4cf+pPfeb9+UR8+uBrzGl3bp5a0dCLpEmldI1UiZcHgk+P342P89Y5vB9wgtJNL0fgoG7SbUG9X3zCUcO9g=
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: Henry Wang <Henry.Wang@arm.com>,
	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 1/2] domain: fix misaligned unmap address in unmap_guest_area()
Date: Fri,  6 Oct 2023 11:13:52 +0200
Message-ID: <20231006091353.96367-2-roger.pau@citrix.com>
X-Mailer: git-send-email 2.42.0
In-Reply-To: <20231006091353.96367-1-roger.pau@citrix.com>
References: <20231006091353.96367-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: LO4P123CA0640.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:296::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_|DS7PR03MB5623:EE_
X-MS-Office365-Filtering-Correlation-Id: a7d046ab-2cea-456c-dac4-08dbc64cf283
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:
	c0HQG4bvudPaVFvnMpI1Zzhy7SmgwwWI6kCCFm5RVslavlTbL231rV/s6BDfNMyBSFmMA8grSCWcwaptlfQwOSdfcSMAafb3YEwkfo2GMK37Sqymr+Pu6xCgI9c0aFhlEHBHkPHr8zptm+fMLH/FWcbzMKlgcRbrWKnlaeYIpWwqWlxA4FItWrA5urnxzDPycxKs0uw83ZoVrJE+QTIcohKzxBiY/IX7aiIO3bHVPM7ZirAGjG5cPvjR8GfLvnjlqUxCxFR2xZM8K5TwzmZP/r9InecHl/2zIP2v61QW9ZZUk1Y3MAZIFGlq9yB84ERO0ykVMhy+hJLQBjJUPXsobEnnToGoanjsW3xML+ntM/KZdoGPfJx+xu72tU1npAVSVudZBtW0cZ3PDUaLJ2GkyyEIW7Dqyc5vVHGCfRxl+ZF1vwdzqxZ2vfkgQVrP/8H5JnN6NxJkUj2jgzSuU5AFEcug3dFmnRvJK0zMbvXKKzIrySSBTw96Z5b1i0XIpEMIpCEo5laK6bVtXsaUnmC6ynTAs1pWiuXQgletoiM0+ptf4mykmdlSx0m3QnvoR5Yf
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)(346002)(39860400002)(136003)(366004)(396003)(230922051799003)(451199024)(64100799003)(186009)(1800799009)(478600001)(6512007)(6506007)(6666004)(6486002)(26005)(1076003)(2616005)(83380400001)(2906002)(6916009)(5660300002)(4326008)(8676002)(41300700001)(8936002)(66476007)(316002)(66556008)(66946007)(36756003)(54906003)(38100700002)(86362001)(82960400001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?bnBIUEp4dGR5WjFITXVjYUtWZCs5ZEtCcWZRbG1BSGFQK2xZbXdIeDdGSFc2?=
 =?utf-8?B?dCtwQU9RdXlVU2N2NVAyZFp5TngrRFd3Vm52MXhYR0Z2aE03U1NGVVBUR3lm?=
 =?utf-8?B?STdjVVh2enJWaUY4TW9zeXU2dzdKZFJoeU94ZGk3eHVvZHorZ2xyVVpUTFBv?=
 =?utf-8?B?eTV0akZNc0RIWnkwSG9UMkl3dzRKRzZTVDJVR2pjbzNEeUNwb285KzdWaVh2?=
 =?utf-8?B?aG5TVXNEUnZBTXJ1WWsrbjNXS3JTTlQxVjc0b2NWd2RvZlljSm5lVXg4SXFa?=
 =?utf-8?B?Mkh6aXc2dnBGNzMzd0tQRk9MRnRqcnY1TkRNZzhQRytJZmxKUDd3ODZKY2t6?=
 =?utf-8?B?V3g2RHFhSVNaQXZPWm13Y1hMdUphM2p5dzh6bEcxOHdkNlBUUEJUVForaG03?=
 =?utf-8?B?Vkkza09rWW0zTHczS2gxdnVoU3lxS1FVYng1VXVlWm5yOTJHQ2pTUGhxTWE3?=
 =?utf-8?B?T3JwYXNEODRHMVU4RFFLMENibUtrSlZWYisvcVVNWVpKbmhIcTNyb01XRVd2?=
 =?utf-8?B?V00yeExFVDhkZTVUWm45YzEzZVdhb2ZMWVUzaUw4elpoY0FKRnRtWWwxclZE?=
 =?utf-8?B?VVNvWlF3K2FSRFFVbVoxZk1XUk1xdFJuc0RISksxdmkxT25kTFF1Kzk5ZVdx?=
 =?utf-8?B?S21zUDFkNjFrbkpQSlppcEc0S2doRjRubStaWTBzRkg1SFRpalp3RFlyYmZV?=
 =?utf-8?B?WU5hNkxqMGJwajU3SU9ybjNGUWxQYW5adTNWU2tQanlKZzNQajlVVzNmTTlS?=
 =?utf-8?B?V25QaGM4bDdiZ2JESmcyMURlSE5zN3VSQkhHRlEwelM2V3d4NWh4YXlKOTh1?=
 =?utf-8?B?dkIyeW83d0ZnT2pwajdMeGlUbkpSSnFDc0twSElWQlFEM3JpSmJZUzRYdWg2?=
 =?utf-8?B?bktXcmtSN0dCSGpqa2ZPSzJ1cnE2WlVOVDhuYWZFOFBiVEt3aGVxY0haaXJr?=
 =?utf-8?B?bHd0bjJQdy9CRml4NnRyZDVqMDM5UWRyMnNkbVd2aVJuRDRMcEdWc0pxWnlo?=
 =?utf-8?B?THhMMUdIdnQvbURCTkQzbWJxbC80a1hTYkNaZjRFVUNwN1Myc28zY2dncWZ4?=
 =?utf-8?B?aU5admk5NTBOZjBtZ05ML0xtUE9kT1YvSjJXbEQ0dTc2THM0MjhWaUlUWTRW?=
 =?utf-8?B?MlFMQjVsUVRoOUl4NHE0amg3RUhBNHZDY1FJdUYwVS8xZmYyTEZRQkU5azFG?=
 =?utf-8?B?dTg0QUpzNjZENDRpZEd4RDgyV2ZreUVXR1ozcUtBem9NWktxT1FpbFRDc2Ux?=
 =?utf-8?B?b0V4SFB1WFQwUE9RRHhBVStVbllvNXJJd1k4K1J0N0k5OVVaNnlHUjhaU0d3?=
 =?utf-8?B?Slgzb1R3cGt1LzhlT25WOVlrdG5vTXJGa0VlN1ZTbmVMKzB4dWdHQW5GUnpI?=
 =?utf-8?B?Vk5WNG9WcXc2ZEd1YXpEWFIvUkVPSWtyKzBiMC9IOFBCek1nUmF5WUdYVGxE?=
 =?utf-8?B?Mk11WmpWclV3Tm5qUnd1NmgyZSs4N3ZBOVorbE9jNEt4eWxXLzFPak01V2V4?=
 =?utf-8?B?b3gvWGNINmplLzB0MkhJZ2xlNTg2bWhVY3hWeFdMZWljbjkxaVoxTkRheG10?=
 =?utf-8?B?M2xpN0MwYjN3dTA0SW4yaEJEcFJZWVVTb0tDT2QvbE5IWXRjVEVwNFl2TmE2?=
 =?utf-8?B?eEVUcUJxWWVXYXFKVzNtUjl6Zlh4SjlXeE5Ua2toMDdBNHhMaEpuVlliQjRh?=
 =?utf-8?B?VjBuR0RUQjM2dDJBYkoyOUxxanlIMjJyVzRldU1UOFFOMzZMQU92UVpRZXZu?=
 =?utf-8?B?ckVDT204eXliOGxLRlZzMU00bk51bmNsbDNyWmhsQUxXbE13ZjQ1N0JUbHpw?=
 =?utf-8?B?dkgyc2Qwanh1dVdQMTA0TitWSm9xOFJSc2tqNW1oc20xV3JZcVNHbmZqcjE3?=
 =?utf-8?B?SUs3cmVpL1VTNVpkVFpER0t5akt6NXJHU3E3S1Nad0FKSGR6Z3d6NkR1U1Ar?=
 =?utf-8?B?Q1RWN24vYnhqTkVXZVlzaldCcFUzcGhobGVmTnFMbTcwdUtTL3hXTDlvelFk?=
 =?utf-8?B?dG4wc1FHdldoejR2RHRJR1NnWUtRVEFUVFBSSU53NWo3VjRFWHNGaEFvcmQx?=
 =?utf-8?B?SnlvbWFOdjJiM2pacU9UQzdZbFhxN0JhV01BWWV4NGpXVEtnd1pEMGVqMitu?=
 =?utf-8?Q?6fFu4ZSExnk3XmgY+I2ATYhVR?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	x/EqUypPEY/onntB/hLn/E2N04B6UmouigscL4eV08Plhm38vwvk7oVzHS0SkhZH9Q5s6WvVwFcP8oTO/pyeewSzOz9l0VrioFDepMj0ctMHlBPmOjRAOSksK7/HafMHPLzGbNWq+ShnwSCfQNo9DFS464jBQUBJyuskzd1NvrzbqJO2qnzkLZpvP1TdqFLNn1BOSuZMjpJMiwMBBwZJns0a2wJbrvoa6bVvz6IhB1oP6AtT/T3OIt0f5PNN1LqsOHHIQva3+kA0qAUCJRwdaO147wPhEhN0tE66k0wNyztwLXDJTNyjIyyn0lkoijAW8bpbM0Qv3T34nQXdEdL9Dbn+4lvMhn8O0/UNE1xaGrFl7s3fYvO09N0l3uqz0Y1zlK8PT95Bvz+EodaAsSud6yTcPY5uFQ2Ngo3/PKX44uvkZJv2QhdPSf3YWHq9mmB0lq5r8h2NY+2SG06ifI6hF/E+B7zFq6R2sMPvOSvXhYG7xmkGvxOMVNhjvW2a5dF7XXt6TCMPZOIu+ftlq5KqDKy95YtKTLbZrFonTOL4QAUTIahyNaQf01xc/t2+meLLTSJmSok481jTQiX+QkIJsRDJE3xy8CP1arzZZRl7S0zIcS7Ba0sa7Af6JY80b5G+R/bTGJx47y954W9dBJyF7pBZtkqiCL1F3OjkuM8mirqinPCFpLjXhGx742RO924MGYQ6r8Rlbmd2obEMZDCOT+2maa//375i1kXxnEcIM5F66hotIalw9ALwBNQdL6yeFVSlOtVBUDI6sINjpzvCQAIuqiue1xxC4pNNzFHLCR630ZmFC4CX0+KBL+L42St19wE6K4ZOUrWxT4Whl1XnG9T1+1Yi44YbNYz6mUjEMqO4X8sb2eLyQAySS7/8MuJ3
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: a7d046ab-2cea-456c-dac4-08dbc64cf283
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Oct 2023 09:16:39.4251
 (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: zGXhV/gKF3E+OHAvF66pv9nLls8n5OXGNxZ3XQXIA3tgmPZpBhkQOBe84fvJCpS7pQ7epYLHs4rlYz0riZ5cVA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR03MB5623

unmap_domain_page_global() expects the provided address to be page aligned, or
else some of the called functions will trigger assertions, like
modify_xen_mappings() on x86 or destroy_xen_mappings() on Arm.

The following assert has been reported by osstest arm 32bit tests:

(XEN) Assertion 'IS_ALIGNED(s, PAGE_SIZE)' failed at arch/arm/mm.c:1243
(XEN) ----[ Xen-4.18-rc  arm32  debug=y  Not tainted ]----
(XEN) CPU:    0
(XEN) PC:     00271a38 destroy_xen_mappings+0x50/0x5c
[...]
(XEN) Xen call trace:
(XEN)    [<00271a38>] destroy_xen_mappings+0x50/0x5c (PC)
(XEN)    [<00235aa8>] vunmap+0x30/0x1a0 (LR)
(XEN)    [<0026ad88>] unmap_domain_page_global+0x10/0x20
(XEN)    [<00208e38>] unmap_guest_area+0x90/0xec
(XEN)    [<00208f98>] domain_kill+0x104/0x180
(XEN)    [<00239e3c>] do_domctl+0x8ac/0x14fc
(XEN)    [<0027ae34>] do_trap_guest_sync+0x570/0x66c
(XEN)    [<002019f0>] arch/arm/arm32/entry.o#return_from_trap+0/0x4

Fixes: eadc288cbb0d ('domain: map/unmap GADDR based shared guest areas')
Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
---
unmap_domain_page_global() and vunmap() should likely have the same alignment
asserts, as not all paths lead to detecting the misalignment of the provided
linear address.  Will do a separate patch.
---
 xen/common/domain.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/xen/common/domain.c b/xen/common/domain.c
index b8281d7cff9d..2dcc64e659cc 100644
--- a/xen/common/domain.c
+++ b/xen/common/domain.c
@@ -1634,7 +1634,7 @@ void unmap_guest_area(struct vcpu *v, struct guest_area *area)
 
     if ( pg )
     {
-        unmap_domain_page_global(map);
+        unmap_domain_page_global((void *)((unsigned long)map & PAGE_MASK));
         put_page_and_type(pg);
     }
 }
-- 
2.42.0



From xen-devel-bounces@lists.xenproject.org Fri Oct 06 09:16:53 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 09:16:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613402.953878 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qogww-0005hk-7h; Fri, 06 Oct 2023 09:16:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613402.953878; Fri, 06 Oct 2023 09: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 1qogww-0005hd-4P; Fri, 06 Oct 2023 09:16:46 +0000
Received: by outflank-mailman (input) for mailman id 613402;
 Fri, 06 Oct 2023 09: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=bl8M=FU=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qogwu-0005Di-EU
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 09:16:44 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 10f2d78a-6429-11ee-98d3-6d05b1d4d9a1;
 Fri, 06 Oct 2023 11:16:43 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id 13A064EE0738;
 Fri,  6 Oct 2023 11:16: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: 10f2d78a-6429-11ee-98d3-6d05b1d4d9a1
MIME-Version: 1.0
Date: Fri, 06 Oct 2023 11:16:43 +0200
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: Xen-devel <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>, Bertrand Marquis <bertrand.marquis@arm.com>,
 consulting@bugseng.com
Subject: Rule 10.1 violations in perfc_incra and PERFCOUNTER_ARRAY
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <5cfaaaceb163af3244981b020ed55f3f@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

Given the following macros in <xen/perfc.h> and

#define perfc_incra(x,y)                                                
\
     ( (y) <= PERFC_LAST_ ## x - PERFC_ ## x ?                           
\
	 ++this_cpu(perfcounters)[PERFC_ ## x + (y)] : 0 )

and the following violation

xen/arch/arm/traps.c:1407.5-1407.32:
   reference to enum constant `PERFC_hypercalls' has essential type `enum 
perfcounter'
   and standard type `int'
  <preprocessed xen/arch/arm/traps.c>:11606.29-11606.44: preprocessed 
tokens
  <scratch space>:137.1-137.16: expanded from macro `PERFC_'
  xen/include/xen/perfc.h:69.35-69.45: expanded from macro `perfc_incra'
xen/arch/arm/traps.c:1407.5-1407.32:
   `+' addition operator expects a number or a character
  <preprocessed xen/arch/arm/traps.c>:11606.46: preprocessed tokens
  xen/include/xen/perfc.h:69.47: expanded from macro `perfc_incra'

the difference between enumerated values is forbidden by the Rule. In 
the coding standard's
interpretation, named enums are unordered list of symbols, which can 
only be compared for
equality.
There are a few possible paths forward:

1. use means different from named enums to generate these constants 
(such as #define-s or
    constants integers);
2. explicitly deviate subtraction of enums, therefore defining an 
explicit ordering on
    enumerated values;
3. use an unnamed enum, effectively considering the enumerated values as 
plain integers.
    This does not violate the Rule.

Similarly the sum in

#define PERFCOUNTER_ARRAY( name, descr, size ) \
   PERFC_##name,                                \
   PERFC_LAST_##name = PERFC_ ## name + (size) - sizeof(char[2 * !!(size) 
- 1]),

causes other analogous violations.

Lastly, this is a concern that manifested only in ARM code, but does not 
seem to be related
to ARM-specific files, so there is perhaps some difference in the 
configuration of the two
analyzed builds.

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


From xen-devel-bounces@lists.xenproject.org Fri Oct 06 09:16:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 09:16:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613403.953889 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qogx4-00062W-H6; Fri, 06 Oct 2023 09:16:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613403.953889; Fri, 06 Oct 2023 09: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 1qogx4-00062N-DT; Fri, 06 Oct 2023 09:16:54 +0000
Received: by outflank-mailman (input) for mailman id 613403;
 Fri, 06 Oct 2023 09: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=Twl1=FU=citrix.com=prvs=63654eace=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qogx3-0005Di-1b
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 09:16:53 +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 153f46da-6429-11ee-98d3-6d05b1d4d9a1;
 Fri, 06 Oct 2023 11:16:52 +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;
 06 Oct 2023 05:16:49 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by SA0PR03MB5401.namprd03.prod.outlook.com (2603:10b6:806:b5::12)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.28; Fri, 6 Oct
 2023 09:16:46 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::66ca:3a42:baeb:9ecf]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::66ca:3a42:baeb:9ecf%6]) with mapi id 15.20.6838.030; Fri, 6 Oct 2023
 09: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: 153f46da-6429-11ee-98d3-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1696583812;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:content-transfer-encoding:mime-version;
  bh=Wu/ZdnSYxegPtPcc4d57NlKogRpCDfPyNBeOoxXdSEw=;
  b=L4hc54uZDk+IqnG4arTIhtBK35R56NfA7bvZIBXcROTAjR63RqEAcD9w
   ICF4V+rRRzfsqpAaDh/QfNeatof7w03Fhi6QLRlCVSGkSY6FHzDAzoJqq
   pn9drUowuUc9RDf8tvAffwvQl9UKZWGDEqGIgqrF1UV/3SgmIvf01COr4
   U=;
X-CSE-ConnectionGUID: d8yi2wWLQ2a9evLoFthYdg==
X-CSE-MsgGUID: ZOSQh5d0Qka9fC9WNYRzuw==
X-IronPort-RemoteIP: 104.47.66.44
X-IronPort-MID: 124813179
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:+a95b6/i60d5YxzSHQzmDrUDBX+TJUtcMsCJ2f8bNWPcYEJGY0x3z
 mEZWTzUaanba2Tyft12OdvlpkNX6JbWytFiTFZsr388E34SpcT7XtnIdU2Y0wF+jCHgZBk+s
 5hBMImowOQcFCK0SsKFa+C5xZVE/fjVAOK6UKidYnwZqTZMEE8JkQhkl/MynrlmiN24BxLlk
 d7pqojUNUTNNwRcawr40Ird7ks01BjOkGlA5AdnPagW5AW2e0Q9V/rzG4ngdxMUfaEMdgKKb
 76r5K20+Grf4yAsBruN+losWhRXKlJ6FVHmZkt+A8BOsDAbzsAB+v9T2M4nQVVWk120c+VZk
 72hg3ASpTABZcUgkMxFO/VR/roX0aduoNcrKlDn2SCfItGvn9IBDJyCAWlvVbD09NqbDklCp
 e0Zci8ySinZjrO73pa8ZPVst8gseZyD0IM34hmMzBn/JNN/G9XmfP+P4tVVmjAtmspJAPDSI
 dIDbiZiZwjBZBsJPUoLDJU5n6GjgXyXnz9w8QrJ4/ZopTaNilAtuFTuGIO9ltiiX8Jak1zev
 mvb12/4HgsbJJqUzj/tHneE37WTzXqgAd1DfFG+3sxNu2STm2BLMR4fBFWQ8Mafu3SsRs0Kf
 iT4/QJr98De7neDXtT7GhG1vnOAlhodQMZLVf037hmXzajZ6BrfAXILJhZhZdo8pYkJTDol/
 laTmpXiAjkHmLaSTHeA8LaIvHW3MC4cImIYTT8JSxMf5Nvuq511iQjAJv5hGqOoitz+GRnr3
 iuH6iM5gt07j9MP1qi91UDKhXSrvJehZhUu+gzdU2ah7wV4TI2ofYql7R7c9/koBJmdZkmMu
 j4Dgcf20QwVJZSElSjIRfpXGrisvqyBKGeE3QIpGIQ9/TOw/XLlZZpX/Dx1OEZuNIADZCPtZ
 0jQ/whW4fe/IUeXUEO+WKrpY+xC8EQqPY2Nuiz8BjaWXqVMSQ==
IronPort-HdrOrdr: A9a23:s6s6IqqhOkAfC2rmX8GpiWgaV5oveYIsimQD101hICG9E/b1qy
 nKpp8mPHDP5wr5NEtPpTnjAsm9qALnlKKdiLN5Vd3OYOCMghrKEGgN1/qH/xTQXwH46+5Bxe
 NBXsFFebrN5IFB/KTHCd+DYrMd/OU=
X-Talos-CUID: 9a23:F1yfLG+JI3btes4gS1eVv0JEC8F/bUL59S3ZckKmLWFHVL2kRVDFrQ==
X-Talos-MUID: 9a23:95xrTAjAnSAp4csv4D4fi8MpBuBT2qTzBBg0kpxXteLVCgpBASWAk2Hi
X-IronPort-AV: E=Sophos;i="6.03,203,1694750400"; 
   d="scan'208";a="124813179"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=CxsELX/mbbY06IdYhaWxO6GkT6Rjyg/MjhQjX9Mj2pxO5DGOCBC/SeoGzO70xXFthLvGWzSdzeMI3K3FoGTuxE++0yxvzV79AP3Mn5L7WNHLj7y2rVxKYJ+54bTfCzO/cBc1HsB/Y+dZmU0Y6X7yo4QZAvfiGfTbC03nkHgfsUpi54wT58q0WobU6nhDmZvQt0lEi5E9TDMzTfyysujort5yhs31rK9lr3ub7TEQBo7KATTCvE7KumTGj5qjrFW0P9oJumXXDA/f8gRs735qU2m8GZZEl/PP1ZfIBqbkAuC4JjUqryPD2rsJmsmE4aDF6ZVflf86HtSI3KKppyNscg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=/wBw3P531UdIworjl4KUQAryt4UZ2mV/Y4S37gkcCvs=;
 b=C2FNMmKFvxwHI73WkeQ5j7Rr11hwRJCPoNin3QheyUzyBbpCXM4r7x9JoCDWPDL+K6II8BK8HQ2mQrzvXUkI4SrsKx0coY23HvdHbHl85tY8Rmw4Bz73KNBcgqxtJbsVVcGCdG21RF9VGRchTpCAg1RRnC7I2g5jbdb/uwh1BMPWo39JTBMETulx8hFgcwxwagiooKxP/ayZjy+FWk0Gf17wLB4mDh/Ch5PnOoeXEmSLSnAY3ebUDKoHhgFThdy9OkBwNxP7tp+ZlrjjJwtUrNuZfUYaCTVwITZTr9ZEicd1QcNMlNrDnu3gyrdWswcp//HDbXhHCN3NNoq4XEKZFQ==
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=/wBw3P531UdIworjl4KUQAryt4UZ2mV/Y4S37gkcCvs=;
 b=UOeoCHbqdIIu4xHPtKJDyGB0FvWMaTVXi2YSv/+yUFuoyvYmGSrJQstUPm6OkZWBZ2nh3Vl7Lt6Obh6uDEMO4pIYNI7TP5LzedcukevEJWVHWby+eKVnwRMj65q7c5jNHCabiSWkZpeTDNE/CNvaoN75jepeVuvErQghYzdCZrg=
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: Henry Wang <Henry.Wang@arm.com>,
	Roger Pau Monne <roger.pau@citrix.com>,
	Community Manager <community.manager@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: [PATCH 2/2] domain: expose newly introduced hypercalls as XENFEAT
Date: Fri,  6 Oct 2023 11:13:53 +0200
Message-ID: <20231006091353.96367-3-roger.pau@citrix.com>
X-Mailer: git-send-email 2.42.0
In-Reply-To: <20231006091353.96367-1-roger.pau@citrix.com>
References: <20231006091353.96367-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: LO4P123CA0613.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:314::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_|SA0PR03MB5401:EE_
X-MS-Office365-Filtering-Correlation-Id: 55c66f95-fe43-4f23-e3ec-08dbc64cf646
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:
	Mtok19tBtj5UJDOm4wdyBNX94NwXz3jki3vp50dygpQhvoYa59UdNFJkPfACz61SacEpD7wrwSale9eoFedrseiOZ6KoCGknExIx0xjVliyWlkJZrfH5Dr+f1t48xICCocpNTmwM/HDgdZT6FjjupPja05uUzTwyxnbjG1spybMXVcgqAbD1JXfyqiBs/U/ZJlH2tl/ZTmJi2hYTObZGKYBxNbwAup5GGkKfPoVj3XYCUv0qq3OdUyaJNXYdM3D+fADQ4A8jWczIkBewQ9bmufcyGkiBVL+uFGNS7TiIOKLel5LiMArZeKgqMDtbLTi04wn7u+EUgkwwksaevS4SqU+9vluF0EQ9wx1Zay0AqwuAx/MzVN/2ZulzwqBYrtME0iJUa3dF9CUejAHSBTrsUVBwWRpJtpQGxYkr35S47kQ69cFU6U+YEbKvVWf9aVai1MC47lijQlvnvDcEV0eD3/HMOlkk438MOaVu3oG8FaMuBmj2GnWqZ9wC6j/niHf9XTiI67AOHOYxIVydu6G9CQtYWpeUV4JllnmH7PXixAo=
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)(376002)(39860400002)(346002)(366004)(396003)(230922051799003)(64100799003)(186009)(1800799009)(451199024)(6512007)(6486002)(478600001)(6666004)(6506007)(2906002)(36756003)(41300700001)(66946007)(316002)(83380400001)(2616005)(1076003)(26005)(86362001)(6916009)(54906003)(8936002)(4326008)(8676002)(66556008)(5660300002)(66476007)(82960400001)(7416002)(38100700002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?ck0zcUV4eWpCL08rY1ZkZGR0emEzbWlmSzA5OElYUk8zSi85RUhhNW1tUHFs?=
 =?utf-8?B?MEwrSjJqSXBTd3F0VzB6b01raEUybXJSUnkwWEdCbzdZaFV6bXhqS1ZUaGxX?=
 =?utf-8?B?dHJwc1g0NVJwRjhNZ3EyMy9xbXVSU2JvLzZkdnFZbHhjVk5aR2g1SEhuL253?=
 =?utf-8?B?VmZaL3ppeUFVMlRQejFrTTE0MHlJYzFsc3dBVVc4d2o2eXFqSHZ6anlLZnRT?=
 =?utf-8?B?Ry9zUTJwMUxSb2pFVnVkU1lGbmhySHNJZGlEU1YzQ0hrNnZBOERQdDExakFq?=
 =?utf-8?B?VmNEZVBsYXlkcFhuVWF1SHBJYzNSOWpPcFBTTldSdWZIUkNDa2x1UnEvcDlD?=
 =?utf-8?B?OE1kdWJPWVZ2MHJFZXFERGI2RUZKV1k4aVMrU0d6NXZtMzJVdllwN3NjU21X?=
 =?utf-8?B?MFdMbVpNbllTbEM4OUJ4ZXdIV2tMVVR4MFNsZTVJRVFkZ2ZJT25CeFZXdytZ?=
 =?utf-8?B?dkZFK3hmYjd2UjY0VlVLUDUrM3R3WVIxeXF2OGFSRCtmbEJGWEVTVU9ESVJV?=
 =?utf-8?B?TkpXQ2Z4YXo4bzF2SytzaUZlMDg1UzRvdlNUV2hKeVBLYnU3cnRRdVZRRE9G?=
 =?utf-8?B?TzhtQW4wanByMGpxSmZkRENLU2dJSUZ0dSs0TFRxYmd2OElZTUxnRU8wSGx4?=
 =?utf-8?B?ME4wOVZjQllZZmJyRE1IWFdvR0k2dlJGMSszclpzYUN6dEpBbGhtV3NWaEJK?=
 =?utf-8?B?RzhhVG9nVEcwWUZhSVVlSkZDTnNuaWVsYkZTK1VET1N4VFk0MnJya3ZwYkg0?=
 =?utf-8?B?SEE4VDh3QWlWUjMzWmdyN1lFR3c2QVRjZ0V5ZHpSUlZTdDMyaDMyTUhpM2dN?=
 =?utf-8?B?QkVGOUpqbS9BR0dhSkV3dmQ0Y0lsWldWYlpPOVF6WUdTamlFRm0wazkwSTNE?=
 =?utf-8?B?ZCs3NWo5WXJEdFVlYS9rR2tvdG5vbDJuZEdNUkZHRnNrSEFYT2hzd05ZaEIr?=
 =?utf-8?B?YUZJSE5oVlBwVmpQaFExYzltVC9lT29CSFhZWnVzZjViTXM4enR1cFJBMjV5?=
 =?utf-8?B?QlNib0l6c3lNZitlU21aQmpZNjl3QUNMSlZkMkZyUGhSTi8vUXhjZG5sY2Rp?=
 =?utf-8?B?SjFNdmQ0VndQRjBhbFZSRWlRY3A2LzZTNmsvUDdCUDJZWU9FeVBWRFBXWkpO?=
 =?utf-8?B?a0loRWlMWFZzOUV3M0hmZGhkK3NvMGtzaFdld2Q5RzZhNWdleVNydnBtRmpH?=
 =?utf-8?B?SC9sVHRhb2owQjBWM0Rkek9qUUI0Y0h2Y3ltelN1allPV0lGRTc4MG5rbFpW?=
 =?utf-8?B?aG16Yzd3L0cyRXY1M0R4bHJnQ3JRZjJpRkxlaU9OOWNPUDQ5RURXS09wMWdV?=
 =?utf-8?B?bWQwZGVralFqYWNkM3lESC83Z055c2IwZmkzN0lyZ3VKZlNnZzcySXZ5M1BD?=
 =?utf-8?B?aHBtR2QySnNMZlZ1aERZMW1scFBxSWxJejZJMHhJOFVHUlc0bnRRenh2OXNR?=
 =?utf-8?B?cDFFWVdrbWMwdFp0bEhFTGlCU1Vma1pXeDlzekhLS1NmQkMrbDJKbFlpV29p?=
 =?utf-8?B?akhSZlEwbFRYV3hGOFROaVFucFE1WHhnNThQUGlCc2NlZUFiYzhUM0NaM1hy?=
 =?utf-8?B?cElpNFF1ZUFmTS8rVjhXb05tVDJER252YkRTQjhGWGhmbHVLdDRua0RIQWh1?=
 =?utf-8?B?UEtSMlV0eEdkNzhRaG9SYVpuY05XWEc0R2Q0aUJRU0g4azFqWFVISnFOMDBa?=
 =?utf-8?B?T21ES3RRVjdvT3JON3luMkxGUTZaZU50bzIxWHFuZFZyY1orV3k3NHVRT1VZ?=
 =?utf-8?B?WVpKVUpTTWlrWmNIRFE1WnQ5YW1PTnBRM0ZxSU94b2JxRG9ZbHUweUNLdkNK?=
 =?utf-8?B?RnZTZjZLUXdDNGRaaU9SeGRPdWdoaEVCUmNNYzF2MWdiZGhLdC83RThLRWZX?=
 =?utf-8?B?Y2ZaRi91Y3RjTjZyN3BnM3doSmpSTUJ5TzF4dDI3VlVXWjdJWXM5T3MzUDI4?=
 =?utf-8?B?aEt0UHBBd1IrSHpKdzgrb2NUSUJhc1lTNlZvWVNwT2RpR3hDbVBLWXk5Q0Z1?=
 =?utf-8?B?ZU81VjhmejBoWkZxN2FsWUQ3Z0R1MDhvLzBZQW56eHFHNm9VNkVxSjEyTkp5?=
 =?utf-8?B?Y0thamRmWnB1WU5La2NnZlFxY2tmd3BFdlJhK3NneDRDbUN3QnllWHJBYXpZ?=
 =?utf-8?Q?B8GI3czye0go4k9t0L2OEHO2k?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	vV4zUFDjOTx15IXYiktHCJQK5J8ggbbYkw+jUW5QhGaKJfotdqMJdSgSndAKBUcHL3DRB+7i3Y12f1dQp1T1mNhiMB9Fwa40LqUROI1UV1IpXeTvoxhQBWi8s6L6RaVRRwUpeC3qKgWduJQ1KntBrmfgMnbVhNoNB6prR1GqbFfniFzvJgHlIP4NY1LQxvdaNOt1FoY9BHit+8nOn5GYsnKhPMhMZA98Gz+MSVGppzjGv65S8iFVTDb45C6XaGdyxfMcmwnCtyHfzTxARq0Pic++nPkWMgWIYkGF5VujSvwIePhd6Jr5zuc1WDQNAu5m9w2Z0/XfqQDif8RwpP3jggEpzqlKG9rayRkht9stwtL1wZ8i2PY1Q6tJGdGIzsFhcqSWLQMjOpbVtdy5ndLcj8itwqeC6o5gyidHP1uZ4f3hHy8XPh0Fm7a1Bj5aWKTOOMbDKKNgiT/eCBLzDjfPRU0FKds20ZlQBt+EYLNiDzI4DbJqziYiiS4yh/NgLE2M30oT+Z6m7zPF/TAMcBL4+oXdlKiy9Zr4B+lr39Dk1MjETlxYI91O81d3wt9g8RQdJHphhgYOXhmg2RCBVa2SgR6VD2FgGrvubUOOi4roXuEsxp20cZTgW7cmSfZh/KYSaoHJ5FFHVGYAkDodcKXeaUoR9E/sWZg8RgyOEmCrPIFweR0pILmrtq6ZqkWZ85CjcO2NuvVfX6RwTHjwmeRWJSbUT5bTIRA9UNVApv8zGC1wqn17EP0jxV6yw0jzJ51j8iX4Oa4ksSyVpbqI2rR+PvaRawhA6Gx2XAcZTPU+VAXbIIQGtdyn6sE2R4g5mtdfUt6NbEKtv4nD0lFbR2rIkqststf0ulQLTQ0WlFvMZtF8EH7MCVThxZTXMIFuuAQi758wHhJ5ovwHy/5tSVD8Frt2xXDieLUp9ZMXtu0+qok=
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 55c66f95-fe43-4f23-e3ec-08dbc64cf646
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Oct 2023 09:16:45.7085
 (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: 9to65XCyDm/ZIyr0VRuWrGB2FOFw/HF2/janGL55MBnZxnWmQnfKwUuDEIeQs36exyHBJ0sjyaXJX3aDsYBDww==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA0PR03MB5401

XENFEAT_runstate_phys_area is exposed to all architectures, while
XENFEAT_vcpu_time_phys_area is currnelty only implemented for x86, and hence
the feature flag is also only exposed on x86.

Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
---
 CHANGELOG.md                  | 2 ++
 xen/common/kernel.c           | 6 +++++-
 xen/include/public/features.h | 9 +++++++++
 3 files changed, 16 insertions(+), 1 deletion(-)

diff --git a/CHANGELOG.md b/CHANGELOG.md
index e33cf4e1b113..41da710426f6 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -31,6 +31,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
  - 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).
+ - Introduce two new hypercalls to map the vCPU runstate and time areas by
+   physical rather than linear addresses.
 
 ### Removed
  - On x86, the "pku" command line option has been removed.  It has never
diff --git a/xen/common/kernel.c b/xen/common/kernel.c
index 52aa28762782..b6302e44b34e 100644
--- a/xen/common/kernel.c
+++ b/xen/common/kernel.c
@@ -607,7 +607,11 @@ long do_xen_version(int cmd, XEN_GUEST_HANDLE_PARAM(void) arg)
         switch ( fi.submap_idx )
         {
         case 0:
-            fi.submap = (1U << XENFEAT_memory_op_vnode_supported);
+            fi.submap = (1U << XENFEAT_memory_op_vnode_supported) |
+#ifdef CONFIG_X86
+                        (1U << XENFEAT_vcpu_time_phys_area) |
+#endif
+                        (1U << XENFEAT_runstate_phys_area);
             if ( VM_ASSIST(d, pae_extended_cr3) )
                 fi.submap |= (1U << XENFEAT_pae_pgdir_above_4gb);
             if ( paging_mode_translate(d) )
diff --git a/xen/include/public/features.h b/xen/include/public/features.h
index d2a9175aae67..cffb2f14a562 100644
--- a/xen/include/public/features.h
+++ b/xen/include/public/features.h
@@ -111,6 +111,15 @@
 #define XENFEAT_not_direct_mapped         16
 #define XENFEAT_direct_mapped             17
 
+/*
+ * Signal whether the hypervisor implements the following hypercalls:
+ *
+ * VCPUOP_register_runstate_phys_area
+ * VCPUOP_register_vcpu_time_phys_area
+ */
+#define XENFEAT_runstate_phys_area	  18
+#define XENFEAT_vcpu_time_phys_area	  19
+
 #define XENFEAT_NR_SUBMAPS 1
 
 #endif /* __XEN_PUBLIC_FEATURES_H__ */
-- 
2.42.0



From xen-devel-bounces@lists.xenproject.org Fri Oct 06 09:18:58 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 09:18:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613417.953899 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qogz2-0007Vl-45; Fri, 06 Oct 2023 09:18:56 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613417.953899; Fri, 06 Oct 2023 09:18: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 1qogz2-0007Ve-0S; Fri, 06 Oct 2023 09:18:56 +0000
Received: by outflank-mailman (input) for mailman id 613417;
 Fri, 06 Oct 2023 09:18: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=I3TD=FU=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qogz1-0007VY-Co
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 09:18:55 +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 5e1e73ed-6429-11ee-9b0d-b553b5be7939;
 Fri, 06 Oct 2023 11:18:53 +0200 (CEST)
Received: from AM6PR10CA0033.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:209:89::46)
 by AS2PR08MB9222.eurprd08.prod.outlook.com (2603:10a6:20b:59e::10)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.35; Fri, 6 Oct
 2023 09:18:23 +0000
Received: from AM7EUR03FT063.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:209:89:cafe::16) by AM6PR10CA0033.outlook.office365.com
 (2603:10a6:209:89::46) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.33 via Frontend
 Transport; Fri, 6 Oct 2023 09:18:23 +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.6863.30 via Frontend Transport; Fri, 6 Oct 2023 09:18:23 +0000
Received: ("Tessian outbound 0ae75d4034ba:v211");
 Fri, 06 Oct 2023 09:18:23 +0000
Received: from 2ae5ff995623.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 63962143-55D3-4B4F-ABE4-45C3F74F3FAD.1; 
 Fri, 06 Oct 2023 09:18:16 +0000
Received: from EUR02-DB5-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 2ae5ff995623.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Fri, 06 Oct 2023 09:18:16 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by PAWPR08MB8791.eurprd08.prod.outlook.com (2603:10a6:102:334::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.38; Fri, 6 Oct
 2023 09:18:15 +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.033; Fri, 6 Oct 2023
 09: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: 5e1e73ed-6429-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=DPzvR52As8AvAcdqiEFW9+Zvx3a5JHzYz23vhbnaoSI=;
 b=uMCpLqdH/2a+Ve1afTZztKXUk8peJTvP+tLyY3uvbxlpzJfqhWbXV5Dqm/3S9458vHEnZ7rbXSny9+H4IdV2nWAaYs/EsV1E1gcr8uFWxHgX/FXMsRK30Aw2rT2N4I+cHpdm5C5cIFBtDS8wQ115Mc3GDQ3S2rz53ReWFBUJcnY=
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: 25fb384b808c2e37
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Z9/rI49OEFFD3q5Gw7fDu5hYRc+QdvjQUDKD3bfJ5AXTV9aNKRrTnkeBm4n0tE2qlEE3/il2plgIyZtODRAbfAoHq4TtxHJT58stAvR8oTkshnddv+vMqcx9/+kriMY+W7KNj3h07XwqIP4pZiNjGWGa3DKDw6y6QT1JG6VoSGvX1cyh7ZI4dJ1oXeqMmZYVYDGcWj7Fr+gUXLSLkzzO2X2I8vPjtffo/SiW6T0f8f1gGonng4aidOd4K2y5XepMVpVfn6BU6fjNU1Bmj13NTNOYNQZOSIZjK/wYEcT77o67ov3ZUnwK+HJIiidGBQWydYbErcpa1WO9U0S//Llcbw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=DPzvR52As8AvAcdqiEFW9+Zvx3a5JHzYz23vhbnaoSI=;
 b=R1kqe/XHiPX8E8o8cbO+p+V+rxuG755kxlbf8YMYRlGWlxfJBQFVM1rKctAOOBSWU/gJtWktdIasWSw55gMkEqVk0ZSiiz0kyS28dvrCP7FEUALI8frOUwlf3Mn/v+GEJebDTzE1zSl+1GoZLydh8+YAwCgrk6S6Hojd9avxBRUbQh9YpE2jKBCkyS7PvSv7PDRSBcmNxqv/TGb2qBZWGLCAyeW5A+TBVoJIwCsmebaF8i9G4+BjJrLgw8Y+weoUZxmQ9tORXH+KmXDyz963WH5TSCZt9OPVDVokmNznsIEBY5ioEIPBIuTFCsL/6MpUfstpSwZVf2KIyE6DrQxZqA==
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=DPzvR52As8AvAcdqiEFW9+Zvx3a5JHzYz23vhbnaoSI=;
 b=uMCpLqdH/2a+Ve1afTZztKXUk8peJTvP+tLyY3uvbxlpzJfqhWbXV5Dqm/3S9458vHEnZ7rbXSny9+H4IdV2nWAaYs/EsV1E1gcr8uFWxHgX/FXMsRK30Aw2rT2N4I+cHpdm5C5cIFBtDS8wQ115Mc3GDQ3S2rz53ReWFBUJcnY=
From: Henry Wang <Henry.Wang@arm.com>
To: Roger Pau Monne <roger.pau@citrix.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 1/2] domain: fix misaligned unmap address in
 unmap_guest_area()
Thread-Topic: [PATCH 1/2] domain: fix misaligned unmap address in
 unmap_guest_area()
Thread-Index: AQHZ+DXYlqgh1jA6/kuitcOo78sZGrA8e5kA
Date: Fri, 6 Oct 2023 09:18:15 +0000
Message-ID: <03A43C0A-CDC2-4400-BC5F-34F5646D4C47@arm.com>
References: <20231006091353.96367-1-roger.pau@citrix.com>
 <20231006091353.96367-2-roger.pau@citrix.com>
In-Reply-To: <20231006091353.96367-2-roger.pau@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_|PAWPR08MB8791:EE_|AM7EUR03FT063:EE_|AS2PR08MB9222:EE_
X-MS-Office365-Filtering-Correlation-Id: b1f84963-5573-4dd9-3a47-08dbc64d30b6
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:
 psXzwQQSO30L90CuhD2M8CS0XcFxbNezrwL43Pre9TtjyqbGtF1vRM6v3lby/5UU8sTmIF56T8xMmV8lBromqlN7n5n3ATm4kwPZf7yhazFT/W97AesplLVFWuu1wjmYKG6DjtI5ga7IeKRFaMQJrAu/hUmjlJxpGAs51wiNgHGB/7Bdk9RHmcZtKghJYo5d3KxzOJ3Ws4O25LWGUkdQq7i6WA/pKiuRo7C+X5GxRYm+AGwdz1Rye3+Qb3DFW2U1LPek4h3RNsesVCXxZlU8TNDzrQWC3b3PZf6+gm4GrZ+780xXAipf1cSMYC0MXXstoF0Dw9oBHTYWg5HONkBHKuO0gIekiAG69bKJqQuBzRAj+5vXN1wFTfmQQceEXn55VN/9sjWoKrooD7x0l+UUy7RYiHzc63xpjBelcvQepnal0QRM/24KYxg12XUQDyZpwVz7UTg+yRTXfhgg+SFdvsQ+atmWeZFCgg9k0BB/tAPkXdaoc7Wo0jvt/z21Krujb7ffqMbxyMIM9L8HNmwHDpbWFhzBtgtC6xNa80Km0g8hivQnArfmNfJE2rgLwFv3TRST0+1o0Cu0VayFoAJVSdtU3ztpA/X0+HciMzCGPDxpo2aMuXCWSVFm7LbG2g6TXQKVdhKyxQrsLqOVUO5lRg==
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)(136003)(366004)(346002)(230922051799003)(186009)(1800799009)(451199024)(64100799003)(53546011)(6506007)(71200400001)(478600001)(6486002)(6512007)(2616005)(83380400001)(26005)(2906002)(316002)(41300700001)(54906003)(6916009)(76116006)(91956017)(66446008)(66476007)(66556008)(66946007)(64756008)(5660300002)(8676002)(8936002)(4326008)(36756003)(33656002)(38100700002)(38070700005)(86362001)(122000001)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <7D736783761C074A9E0825C56C70B22C@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAWPR08MB8791
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:
	2412affc-6c55-4b82-754c-08dbc64d2bc5
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	sNJXMfI9ApkiqgSVn04P2d8Vaq1AKCymcXwLo6BXC8d4ItKaTBGS5WRZWwq1YaHeuPLedZdY7Z06LtUHwMsMH7vPANqx8TcDPVh9T3jtV5Gu+hOEcw4McPL+Szh0STq11Z0PP5w7TUIcpiRKSG4WFlKZnTSY2FGHJ/c9ShDd6OM82DJkYtcvHZXv8rFvbTK6xTX4MEUBAss/p9d0h1NXAFfyyIS5pdw8JAUeb+udWhhcrfNSvxTB6PwkNKQTzIBBp0x/0CtJ1JgCRhtXuUu7QmCpcrKGyRyYpo67zAgiOJQMUvzFHVtGKACa3BojmJz8K+UiW7XwGeT1XAQasrR2y/G94hz+v45oHS2dNTP71/LwoNhaMsZrRgQcZD44pwekHhZlHrIBLHKefmHWkJe4v/kzKIqQSGWxjFKFmb/P8IqS/erFYk1N6eSX1CooaClqKnBUTiygSfrs1Ci5uWBRWW7MwfqPzlopRViu1rRB2CD6s81FHDhfGSOkMDXpbcG/HsjQDKUfbNbKLUWqXARecBj6mVTGI4xRKOqt90BMNZu/szSajZEzspTiB9c+Qt8JaH0DhXkSiT3dIJAYrnkRJMvsPptz+vTyZSswY7Utkg6ja7XL+KMSWwbKKnmOMwWROKhaBrlLXWP1UMPebIf4Fxu+0E0gOxKsLps3dqErsB9UXs/fgREg4bHsVf2yLZKXsgJARfr9AoqcVA1Dh8uyod7L0JzRqZDFiMglCeH6t8Y=
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)(1800799009)(64100799003)(451199024)(82310400011)(186009)(46966006)(40470700004)(36840700001)(40460700003)(40480700001)(53546011)(6486002)(6506007)(478600001)(36860700001)(81166007)(33656002)(86362001)(82740400003)(356005)(8676002)(83380400001)(336012)(26005)(2616005)(47076005)(36756003)(6512007)(5660300002)(316002)(70586007)(6862004)(54906003)(8936002)(70206006)(2906002)(41300700001)(4326008);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Oct 2023 09:18:23.4462
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: b1f84963-5573-4dd9-3a47-08dbc64d30b6
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: AS2PR08MB9222

SGkgUm9nZXIsDQoNCj4gT24gT2N0IDYsIDIwMjMsIGF0IDE3OjEzLCBSb2dlciBQYXUgTW9ubmUg
PHJvZ2VyLnBhdUBjaXRyaXguY29tPiB3cm90ZToNCj4gDQo+IHVubWFwX2RvbWFpbl9wYWdlX2ds
b2JhbCgpIGV4cGVjdHMgdGhlIHByb3ZpZGVkIGFkZHJlc3MgdG8gYmUgcGFnZSBhbGlnbmVkLCBv
cg0KPiBlbHNlIHNvbWUgb2YgdGhlIGNhbGxlZCBmdW5jdGlvbnMgd2lsbCB0cmlnZ2VyIGFzc2Vy
dGlvbnMsIGxpa2UNCj4gbW9kaWZ5X3hlbl9tYXBwaW5ncygpIG9uIHg4NiBvciBkZXN0cm95X3hl
bl9tYXBwaW5ncygpIG9uIEFybS4NCj4gDQo+IFRoZSBmb2xsb3dpbmcgYXNzZXJ0IGhhcyBiZWVu
IHJlcG9ydGVkIGJ5IG9zc3Rlc3QgYXJtIDMyYml0IHRlc3RzOg0KPiANCj4gKFhFTikgQXNzZXJ0
aW9uICdJU19BTElHTkVEKHMsIFBBR0VfU0laRSknIGZhaWxlZCBhdCBhcmNoL2FybS9tbS5jOjEy
NDMNCj4gKFhFTikgLS0tLVsgWGVuLTQuMTgtcmMgIGFybTMyICBkZWJ1Zz15ICBOb3QgdGFpbnRl
ZCBdLS0tLQ0KPiAoWEVOKSBDUFU6ICAgIDANCj4gKFhFTikgUEM6ICAgICAwMDI3MWEzOCBkZXN0
cm95X3hlbl9tYXBwaW5ncysweDUwLzB4NWMNCj4gWy4uLl0NCj4gKFhFTikgWGVuIGNhbGwgdHJh
Y2U6DQo+IChYRU4pICAgIFs8MDAyNzFhMzg+XSBkZXN0cm95X3hlbl9tYXBwaW5ncysweDUwLzB4
NWMgKFBDKQ0KPiAoWEVOKSAgICBbPDAwMjM1YWE4Pl0gdnVubWFwKzB4MzAvMHgxYTAgKExSKQ0K
PiAoWEVOKSAgICBbPDAwMjZhZDg4Pl0gdW5tYXBfZG9tYWluX3BhZ2VfZ2xvYmFsKzB4MTAvMHgy
MA0KPiAoWEVOKSAgICBbPDAwMjA4ZTM4Pl0gdW5tYXBfZ3Vlc3RfYXJlYSsweDkwLzB4ZWMNCj4g
KFhFTikgICAgWzwwMDIwOGY5OD5dIGRvbWFpbl9raWxsKzB4MTA0LzB4MTgwDQo+IChYRU4pICAg
IFs8MDAyMzllM2M+XSBkb19kb21jdGwrMHg4YWMvMHgxNGZjDQo+IChYRU4pICAgIFs8MDAyN2Fl
MzQ+XSBkb190cmFwX2d1ZXN0X3N5bmMrMHg1NzAvMHg2NmMNCj4gKFhFTikgICAgWzwwMDIwMTlm
MD5dIGFyY2gvYXJtL2FybTMyL2VudHJ5Lm8jcmV0dXJuX2Zyb21fdHJhcCswLzB4NA0KPiANCj4g
Rml4ZXM6IGVhZGMyODhjYmIwZCAoJ2RvbWFpbjogbWFwL3VubWFwIEdBRERSIGJhc2VkIHNoYXJl
ZCBndWVzdCBhcmVhcycpDQo+IFNpZ25lZC1vZmYtYnk6IFJvZ2VyIFBhdSBNb25uw6kgPHJvZ2Vy
LnBhdUBjaXRyaXguY29tPg0KDQpSZWxlYXNlLWFja2VkLWJ5OiBIZW5yeSBXYW5nIDxIZW5yeS5X
YW5nQGFybS5jb20+DQoNCktpbmQgcmVnYXJkcywNCkhlbnJ5DQoNCj4gLS0tDQo+IHVubWFwX2Rv
bWFpbl9wYWdlX2dsb2JhbCgpIGFuZCB2dW5tYXAoKSBzaG91bGQgbGlrZWx5IGhhdmUgdGhlIHNh
bWUgYWxpZ25tZW50DQo+IGFzc2VydHMsIGFzIG5vdCBhbGwgcGF0aHMgbGVhZCB0byBkZXRlY3Rp
bmcgdGhlIG1pc2FsaWdubWVudCBvZiB0aGUgcHJvdmlkZWQNCj4gbGluZWFyIGFkZHJlc3MuICBX
aWxsIGRvIGEgc2VwYXJhdGUgcGF0Y2guDQo+IC0tLQ0KPiB4ZW4vY29tbW9uL2RvbWFpbi5jIHwg
MiArLQ0KPiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkNCj4g
DQo+IGRpZmYgLS1naXQgYS94ZW4vY29tbW9uL2RvbWFpbi5jIGIveGVuL2NvbW1vbi9kb21haW4u
Yw0KPiBpbmRleCBiODI4MWQ3Y2ZmOWQuLjJkY2M2NGU2NTljYyAxMDA2NDQNCj4gLS0tIGEveGVu
L2NvbW1vbi9kb21haW4uYw0KPiArKysgYi94ZW4vY29tbW9uL2RvbWFpbi5jDQo+IEBAIC0xNjM0
LDcgKzE2MzQsNyBAQCB2b2lkIHVubWFwX2d1ZXN0X2FyZWEoc3RydWN0IHZjcHUgKnYsIHN0cnVj
dCBndWVzdF9hcmVhICphcmVhKQ0KPiANCj4gICAgIGlmICggcGcgKQ0KPiAgICAgew0KPiAtICAg
ICAgICB1bm1hcF9kb21haW5fcGFnZV9nbG9iYWwobWFwKTsNCj4gKyAgICAgICAgdW5tYXBfZG9t
YWluX3BhZ2VfZ2xvYmFsKCh2b2lkICopKCh1bnNpZ25lZCBsb25nKW1hcCAmIFBBR0VfTUFTSykp
Ow0KPiAgICAgICAgIHB1dF9wYWdlX2FuZF90eXBlKHBnKTsNCj4gICAgIH0NCj4gfQ0KPiAtLSAN
Cj4gMi40Mi4wDQo+IA0KDQo=


From xen-devel-bounces@lists.xenproject.org Fri Oct 06 09:19:03 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 09:19:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613418.953909 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qogz9-0007mk-BX; Fri, 06 Oct 2023 09:19:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613418.953909; Fri, 06 Oct 2023 09: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 1qogz9-0007md-79; Fri, 06 Oct 2023 09:19:03 +0000
Received: by outflank-mailman (input) for mailman id 613418;
 Fri, 06 Oct 2023 09:19: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=I3TD=FU=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qogz7-0007VY-Uu
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 09:19:01 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 (mail-am6eur05on20626.outbound.protection.outlook.com
 [2a01:111:f400:7e1b::626])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 623d5370-6429-11ee-9b0d-b553b5be7939;
 Fri, 06 Oct 2023 11:19:00 +0200 (CEST)
Received: from AS9PR06CA0487.eurprd06.prod.outlook.com (2603:10a6:20b:49b::12)
 by DBAPR08MB5573.eurprd08.prod.outlook.com (2603:10a6:10:1a2::16)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.28; Fri, 6 Oct
 2023 09:18:56 +0000
Received: from AM7EUR03FT027.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:20b:49b:cafe::b5) by AS9PR06CA0487.outlook.office365.com
 (2603:10a6:20b:49b::12) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.29 via Frontend
 Transport; Fri, 6 Oct 2023 09:18:56 +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.6863.26 via Frontend Transport; Fri, 6 Oct 2023 09:18:55 +0000
Received: ("Tessian outbound 0ae75d4034ba:v211");
 Fri, 06 Oct 2023 09:18:55 +0000
Received: from 54655a6981a5.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 BE39E684-4229-4289-ABFD-E25CA113499C.1; 
 Fri, 06 Oct 2023 09:18:49 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 54655a6981a5.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Fri, 06 Oct 2023 09:18:49 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by PAWPR08MB8791.eurprd08.prod.outlook.com (2603:10a6:102:334::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.38; Fri, 6 Oct
 2023 09:18: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.033; Fri, 6 Oct 2023
 09:18: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: 623d5370-6429-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=oL9gcAKY1em9Es0EhOy3NxTPCDcl1plYEh3AZ5s5OL0=;
 b=wN0YIqUVPc1+P8LMZMWU6BJj5bl2eD1HudYc4te2uWHFFlrZ119Jrm8fXxxJfd+QIdSclLNnXmJP2hjOx9gmDXlPS+ABCv6wOtVBjzypw2ZArPA0jcyawhyhRxVba1gq900E7xIOB8uCIRsg2b8fJN3/BVURcqJ4AH8fMrbuiqY=
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: 4b12a8031ac03f2e
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=L+AIK1dSSda45BdG4bVxNCxd/j1vclVpQT6CJGtddWpZjVb/EWufjhZHvOqsi7AdsIbvWz25Qn2O/21ydrL1K5/dLnpLUpNV+w0XSfPP56EM6CVebsawDMnhjNpC+ZcuUrOEjsUWn/bHPlvT4cFZmYnhd7mrZ/5RZ5roEMVW7oHIURz7W10yzGkk7yfJMz4RJM7iyaLx8bRE29iy9F8mEHPnSRQNM0q7A4TaoleNUCWLABOHrGdvqI8PiAGmgR44bwRErRMWvEVkFsBztdKiaCDlCEhsEW1Rgcso+ht2+H09bVHvymEPw+HfngCC7oUTzS6Mr6z+2Hus7uCAa7uICQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=oL9gcAKY1em9Es0EhOy3NxTPCDcl1plYEh3AZ5s5OL0=;
 b=QEueCl3W9R9l050NgxqzRNQm7B9wJPLsuj0zOwZgdX8U5qACR4Hd2HwrnNsVvQpShWs57tqGdY8zmpGepmGvZTUfzO3VyZPqgWcy7H1sA3QuatYA0OkVKCrST2ceXvmWCEW4xmHoKwzCIrEOVK7+Ou+MvSk6j0+6g4xo6537y6YqTjqyBS2XqWEkKlAteCTjWB8Ck42W5CVDp/SaRkBWVjemV+e+Z9N+o6fP7K5Lb+rKNv0iu3yHhOGd4DnN080rXuiTCUJ1MtC7iFWr+zPqSlC2l08DHeqceSgFiFWhIj4omYpKjjyT7kLXtEpuSTvNiIDfQ0tp9eT9xWzs5ZtK7A==
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=oL9gcAKY1em9Es0EhOy3NxTPCDcl1plYEh3AZ5s5OL0=;
 b=wN0YIqUVPc1+P8LMZMWU6BJj5bl2eD1HudYc4te2uWHFFlrZ119Jrm8fXxxJfd+QIdSclLNnXmJP2hjOx9gmDXlPS+ABCv6wOtVBjzypw2ZArPA0jcyawhyhRxVba1gq900E7xIOB8uCIRsg2b8fJN3/BVURcqJ4AH8fMrbuiqY=
From: Henry Wang <Henry.Wang@arm.com>
To: Roger Pau Monne <roger.pau@citrix.com>
CC: Xen-devel <xen-devel@lists.xenproject.org>, Community Manager
	<community.manager@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 2/2] domain: expose newly introduced hypercalls as XENFEAT
Thread-Topic: [PATCH 2/2] domain: expose newly introduced hypercalls as
 XENFEAT
Thread-Index: AQHZ+DXk0ok5Q7WKoEy0uLdjQOLR7rA8e78A
Date: Fri, 6 Oct 2023 09:18:47 +0000
Message-ID: <56400C5F-5528-40BB-A741-BA2C555EBC8C@arm.com>
References: <20231006091353.96367-1-roger.pau@citrix.com>
 <20231006091353.96367-3-roger.pau@citrix.com>
In-Reply-To: <20231006091353.96367-3-roger.pau@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_|PAWPR08MB8791:EE_|AM7EUR03FT027:EE_|DBAPR08MB5573:EE_
X-MS-Office365-Filtering-Correlation-Id: 5b569a27-e56b-4b07-b9fb-08dbc64d4416
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:
 K210gn4o4c2aUt9uxEt9IAdnOF0WEriC3fLTG4wjMG9bDO8o79P4+Yg0KVseI/rTzl2upls1RpsQpMhENSUJeyB0Kz85AbxZp+UpFWnkkjznfU5ajUAtZLE3ZiE1oefLYLs1JtrvpRhP4kzUwemCoTKB0BJMNaX33h6eap4s2z4j458gvqeOmxV4rlwyk8ypMaCWYYDqS2bXo9iXAdJrU9IR7N1hZ+L5IwNj2Xvi40rfLwcI1xh+elBZGYqsD9Mzx/N87yOu/0ik8Z+/X83QMj4djZbBlUhlU8X9TUyb/JTJp626Xx2ItBfFG7zS/GElVnrXvYzGhy2YpF4j1FkWZ2Oi7uHpA0QbpsO5z1l+DF8l9X4rZtg/1x00JquvkPnm3TmpV46IxGfQx4Rw1Axzmb1XII2ZUclpOINWRJVFRlYQH/hsLHz3JHKOY5Ug7uCJ+jzCnbsewsZmO2IxBYiwM7O0PS2Hb4T1jnS3MkffmdgIamfCrFro62Y3PiFPSuxK2iIuEHAk5up7UjU/jjPKyZdQB6wE/qo9JICneLIwbWplYG5DQjzSj1F95X3NzmWamxNDreBHGsOK4ZejbryIQQX4/1DP2ULoODXYOXiRpTjAl6/ku9m1CcQum7IMkWJ+aAi+DAffThZuiezA7ZXOMA==
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)(136003)(366004)(346002)(230922051799003)(186009)(1800799009)(451199024)(64100799003)(53546011)(6506007)(71200400001)(478600001)(6486002)(6512007)(2616005)(83380400001)(26005)(2906002)(316002)(41300700001)(54906003)(6916009)(76116006)(91956017)(66446008)(66476007)(66556008)(66946007)(64756008)(5660300002)(8676002)(8936002)(4326008)(36756003)(33656002)(38100700002)(38070700005)(86362001)(122000001)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <7D7D3982EF29C645AC04E51C443AE242@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAWPR08MB8791
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:
	a718b004-9650-4e32-287d-08dbc64d3f0f
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	a8eUX9LZ4NYmBCfKeTtOvJduygZrSmENhOdzidbO5P8KL51XPckACAko1+e4MEpzU+wtm2fcKdG27kiQHLS4S6fdhotwm1vvqr/rq8biUsduTzSraUnt0ws3TG7sCdleqAjI7/PjzrdPf5U5fyzeSWLxxcogz9cAOEusEpIqz7Z0ME4V2Mn8Ixg/+lj4tXNRr8u+2ouB1wiJUQbb8p/Hd/HuYNuJqVtUQIWueEjuaay3VHBAS1qoiqcrBwY9gUdcvOvpzNgahG/TQ6/J4ld5y6PabkVmJEkY7OZmPIBp9dsy25iog3tCZUOG7gwpYC8GoCzufbADMjhqMN2KEWGJGdYg4Gt73RFez8J2n9MYJB6MKKO0JV4MDO40UvlD3u4m8gldsLLxAGSzQ2tmHiLCzmHo1S1LDiGrqUZZ4caJ43OTKHJY1W5u77G4pWZnGdT/EYwPCNT6ZjuIQyD46SWsoAAoXFv+1h7xt8l6LBez6DXIFfbpghRPXzzs6dm8ozSv2sXJw+bR7kUmyueCNgLjkNnZLY5m0s47W0Q3vbsEdKQwNzGaOUqbKuQyvph3eyGSoMXTH/mz5eUR4Cn/7LtDJK0DPRS26feoQ843po2m9ePDtaVr/PZv8ZQZDI4LNqswrgFlKLfTg2KXQ++Tp8LJbHbUbb9DGMjjE4Egk8cF6PP/KTlJrvgcfWcPgrJW7WCC
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)(39850400004)(396003)(376002)(230922051799003)(82310400011)(451199024)(186009)(64100799003)(1800799009)(36840700001)(46966006)(5660300002)(41300700001)(33656002)(40480700001)(2906002)(8936002)(6862004)(4326008)(8676002)(36756003)(478600001)(47076005)(6486002)(53546011)(6512007)(6506007)(83380400001)(336012)(36860700001)(82740400003)(2616005)(70586007)(81166007)(54906003)(356005)(86362001)(26005)(316002)(70206006);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Oct 2023 09:18:55.9553
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 5b569a27-e56b-4b07-b9fb-08dbc64d4416
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: DBAPR08MB5573

SGkgUm9nZXIsDQoNCj4gT24gT2N0IDYsIDIwMjMsIGF0IDE3OjEzLCBSb2dlciBQYXUgTW9ubmUg
PHJvZ2VyLnBhdUBjaXRyaXguY29tPiB3cm90ZToNCj4gDQo+IFhFTkZFQVRfcnVuc3RhdGVfcGh5
c19hcmVhIGlzIGV4cG9zZWQgdG8gYWxsIGFyY2hpdGVjdHVyZXMsIHdoaWxlDQo+IFhFTkZFQVRf
dmNwdV90aW1lX3BoeXNfYXJlYSBpcyBjdXJybmVsdHkgb25seSBpbXBsZW1lbnRlZCBmb3IgeDg2
LCBhbmQgaGVuY2UNCj4gdGhlIGZlYXR1cmUgZmxhZyBpcyBhbHNvIG9ubHkgZXhwb3NlZCBvbiB4
ODYuDQo+IA0KPiBTaWduZWQtb2ZmLWJ5OiBSb2dlciBQYXUgTW9ubsOpIDxyb2dlci5wYXVAY2l0
cml4LmNvbT4NCg0KUmVsZWFzZS1hY2tlZC1ieTogSGVucnkgV2FuZyA8SGVucnkuV2FuZ0Bhcm0u
Y29tPg0KDQpLaW5kIHJlZ2FyZHMsDQpIZW5yeQ0KDQo+IC0tLQ0KPiBDSEFOR0VMT0cubWQgICAg
ICAgICAgICAgICAgICB8IDIgKysNCj4geGVuL2NvbW1vbi9rZXJuZWwuYyAgICAgICAgICAgfCA2
ICsrKysrLQ0KPiB4ZW4vaW5jbHVkZS9wdWJsaWMvZmVhdHVyZXMuaCB8IDkgKysrKysrKysrDQo+
IDMgZmlsZXMgY2hhbmdlZCwgMTYgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbigtKQ0KPiANCj4g
ZGlmZiAtLWdpdCBhL0NIQU5HRUxPRy5tZCBiL0NIQU5HRUxPRy5tZA0KPiBpbmRleCBlMzNjZjRl
MWIxMTMuLjQxZGE3MTA0MjZmNiAxMDA2NDQNCj4gLS0tIGEvQ0hBTkdFTE9HLm1kDQo+ICsrKyBi
L0NIQU5HRUxPRy5tZA0KPiBAQCAtMzEsNiArMzEsOCBAQCBUaGUgZm9ybWF0IGlzIGJhc2VkIG9u
IFtLZWVwIGEgQ2hhbmdlbG9nXShodHRwczovL2tlZXBhY2hhbmdlbG9nLmNvbS9lbi8xLjAuMC8p
DQo+ICAtIEFkZCBJbnRlbCBIYXJkd2FyZSBQLVN0YXRlcyAoSFdQKSBjcHVmcmVxIGRyaXZlci4N
Cj4gIC0gT24gQXJtLCBleHBlcmltZW50YWwgc3VwcG9ydCBmb3IgZHluYW1pYyBhZGRpdGlvbi9y
ZW1vdmFsIG9mIFhlbiBkZXZpY2UgdHJlZQ0KPiAgICBub2RlcyB1c2luZyBhIGRldmljZSB0cmVl
IG92ZXJsYXkgYmluYXJ5ICguZHRibykuDQo+ICsgLSBJbnRyb2R1Y2UgdHdvIG5ldyBoeXBlcmNh
bGxzIHRvIG1hcCB0aGUgdkNQVSBydW5zdGF0ZSBhbmQgdGltZSBhcmVhcyBieQ0KPiArICAgcGh5
c2ljYWwgcmF0aGVyIHRoYW4gbGluZWFyIGFkZHJlc3Nlcy4NCj4gDQo+ICMjIyBSZW1vdmVkDQo+
ICAtIE9uIHg4NiwgdGhlICJwa3UiIGNvbW1hbmQgbGluZSBvcHRpb24gaGFzIGJlZW4gcmVtb3Zl
ZC4gIEl0IGhhcyBuZXZlcg0KPiBkaWZmIC0tZ2l0IGEveGVuL2NvbW1vbi9rZXJuZWwuYyBiL3hl
bi9jb21tb24va2VybmVsLmMNCj4gaW5kZXggNTJhYTI4NzYyNzgyLi5iNjMwMmU0NGIzNGUgMTAw
NjQ0DQo+IC0tLSBhL3hlbi9jb21tb24va2VybmVsLmMNCj4gKysrIGIveGVuL2NvbW1vbi9rZXJu
ZWwuYw0KPiBAQCAtNjA3LDcgKzYwNywxMSBAQCBsb25nIGRvX3hlbl92ZXJzaW9uKGludCBjbWQs
IFhFTl9HVUVTVF9IQU5ETEVfUEFSQU0odm9pZCkgYXJnKQ0KPiAgICAgICAgIHN3aXRjaCAoIGZp
LnN1Ym1hcF9pZHggKQ0KPiAgICAgICAgIHsNCj4gICAgICAgICBjYXNlIDA6DQo+IC0gICAgICAg
ICAgICBmaS5zdWJtYXAgPSAoMVUgPDwgWEVORkVBVF9tZW1vcnlfb3Bfdm5vZGVfc3VwcG9ydGVk
KTsNCj4gKyAgICAgICAgICAgIGZpLnN1Ym1hcCA9ICgxVSA8PCBYRU5GRUFUX21lbW9yeV9vcF92
bm9kZV9zdXBwb3J0ZWQpIHwNCj4gKyNpZmRlZiBDT05GSUdfWDg2DQo+ICsgICAgICAgICAgICAg
ICAgICAgICAgICAoMVUgPDwgWEVORkVBVF92Y3B1X3RpbWVfcGh5c19hcmVhKSB8DQo+ICsjZW5k
aWYNCj4gKyAgICAgICAgICAgICAgICAgICAgICAgICgxVSA8PCBYRU5GRUFUX3J1bnN0YXRlX3Bo
eXNfYXJlYSk7DQo+ICAgICAgICAgICAgIGlmICggVk1fQVNTSVNUKGQsIHBhZV9leHRlbmRlZF9j
cjMpICkNCj4gICAgICAgICAgICAgICAgIGZpLnN1Ym1hcCB8PSAoMVUgPDwgWEVORkVBVF9wYWVf
cGdkaXJfYWJvdmVfNGdiKTsNCj4gICAgICAgICAgICAgaWYgKCBwYWdpbmdfbW9kZV90cmFuc2xh
dGUoZCkgKQ0KPiBkaWZmIC0tZ2l0IGEveGVuL2luY2x1ZGUvcHVibGljL2ZlYXR1cmVzLmggYi94
ZW4vaW5jbHVkZS9wdWJsaWMvZmVhdHVyZXMuaA0KPiBpbmRleCBkMmE5MTc1YWFlNjcuLmNmZmIy
ZjE0YTU2MiAxMDA2NDQNCj4gLS0tIGEveGVuL2luY2x1ZGUvcHVibGljL2ZlYXR1cmVzLmgNCj4g
KysrIGIveGVuL2luY2x1ZGUvcHVibGljL2ZlYXR1cmVzLmgNCj4gQEAgLTExMSw2ICsxMTEsMTUg
QEANCj4gI2RlZmluZSBYRU5GRUFUX25vdF9kaXJlY3RfbWFwcGVkICAgICAgICAgMTYNCj4gI2Rl
ZmluZSBYRU5GRUFUX2RpcmVjdF9tYXBwZWQgICAgICAgICAgICAgMTcNCj4gDQo+ICsvKg0KPiAr
ICogU2lnbmFsIHdoZXRoZXIgdGhlIGh5cGVydmlzb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5n
IGh5cGVyY2FsbHM6DQo+ICsgKg0KPiArICogVkNQVU9QX3JlZ2lzdGVyX3J1bnN0YXRlX3BoeXNf
YXJlYQ0KPiArICogVkNQVU9QX3JlZ2lzdGVyX3ZjcHVfdGltZV9waHlzX2FyZWENCj4gKyAqLw0K
PiArI2RlZmluZSBYRU5GRUFUX3J1bnN0YXRlX3BoeXNfYXJlYSAgMTgNCj4gKyNkZWZpbmUgWEVO
RkVBVF92Y3B1X3RpbWVfcGh5c19hcmVhICAxOQ0KPiArDQo+ICNkZWZpbmUgWEVORkVBVF9OUl9T
VUJNQVBTIDENCj4gDQo+ICNlbmRpZiAvKiBfX1hFTl9QVUJMSUNfRkVBVFVSRVNfSF9fICovDQo+
IC0tIA0KPiAyLjQyLjANCj4gDQoNCg==


From xen-devel-bounces@lists.xenproject.org Fri Oct 06 09:27:26 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 09:27:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613431.953919 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoh7B-000210-45; Fri, 06 Oct 2023 09:27:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613431.953919; Fri, 06 Oct 2023 09:27: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 1qoh7B-00020t-15; Fri, 06 Oct 2023 09:27:21 +0000
Received: by outflank-mailman (input) for mailman id 613431;
 Fri, 06 Oct 2023 09:27:19 +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 1qoh79-00020n-9E
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 09:27:19 +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 1qoh78-0001nO-HS; Fri, 06 Oct 2023 09:27:18 +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 1qoh78-0004NC-84; Fri, 06 Oct 2023 09:27: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=nYqqexvXIPygopJvm9lfL2HH0bhk9wRt4LkFsFAolcs=; b=2SDYajk1sgV2fAYaoyrzrtTxtI
	ZJbkJINNeNMhQX6fEIwXpap0IbyM/0Ivbfs6lNKBnBGHlipN+FmOQ8T5oOWcDvC4AqszFNtC0Tt2H
	2OdjBkmYS3SU6WkNfH2vF2mF1R2SgsNKxzZRrPVuFNK4SJkbIZg5YK/lfGhtgl5HK9P4=;
Message-ID: <605f8045-754d-4d3c-b1b3-3bb34112bfc8@xen.org>
Date: Fri, 6 Oct 2023 10:27:15 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN PATCH][for-4.19 1/2] xen: introduce a deviation for Rule
 11.9
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,
 andrew.cooper3@citrix.com, roger.pau@citrix.com,
 Simone Ballarin <simone.ballarin@bugseng.com>,
 Doug Goldstein <cardoe@cardoe.com>, George Dunlap
 <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>
References: <cover.1696494834.git.nicola.vetrini@bugseng.com>
 <98bc1d90b93856ed7516a19114facf6528120248.1696494834.git.nicola.vetrini@bugseng.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <98bc1d90b93856ed7516a19114facf6528120248.1696494834.git.nicola.vetrini@bugseng.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi,

On 05/10/2023 09:45, Nicola Vetrini wrote:
> The constant 0 is used instead of NULL in '__ACCESS_ONCE' as a
> compile-time check to detect non-scalar types; its usage for this
> purpose is documented in rules.rst as an exception.
Documenting ACCESS_ONCE() in rules.rst seems a bit odd. I am guessing 
that other analysis tool may point out the same error and therefore it 
would seem more appropriate to use a deviation.

This would also avoid having a specific rule in the Eclair configuration 
for __ACCESS_ONCE().

> 
> Furthermore, the 'access_field' and 'typeof_field' macros are
> introduced as a general way to deal with accesses to structs
> without declaring a struct variable.
> 
> Cleanup of spurious MISRA deviations.

Please don't do that. This is making the review of the patches a lot 
more complicated because there are unrelated changes (see [1]).

We often allow simple clean-up if they are in the context. But this is 
not the case here.

> 
> No functional change intended.
> 
> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
> ---
> If NULL is not suitable for usage inside access_field, then 0 could
> be put there and the macro deviated.
> ---
>   .../eclair_analysis/ECLAIR/deviations.ecl     | 23 +++++++------------
>   docs/misra/rules.rst                          |  3 ++-
>   xen/include/xen/compiler.h                    |  5 +++-
>   xen/include/xen/kernel.h                      |  2 +-
>   4 files changed, 15 insertions(+), 18 deletions(-)
> 
> diff --git a/automation/eclair_analysis/ECLAIR/deviations.ecl b/automation/eclair_analysis/ECLAIR/deviations.ecl
> index d8170106b449..acd42386e0a9 100644
> --- a/automation/eclair_analysis/ECLAIR/deviations.ecl
> +++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
> @@ -110,10 +110,6 @@ neither functions nor pointers to functions."
>   -config=MC3R1.R5.5,reports={safe,"all_area(decl(node(enum_decl||record_decl||field_decl||param_decl||var_decl)&&!type(canonical(address((node(function||function_no_proto))))))||macro(function_like()))"}
>   -doc_end
> 
> --doc_begin="The use of these identifiers for both macro names and other entities
> -is deliberate and does not generate developer confusion."
> --config=MC3R1.R5.5,reports+={safe, "any_area(text(^\\s*/\\*\\s+SAF-[0-9]+-safe\\s+MC3R1\\.R5\\.5.*$, begin-1))"}
> --doc_end
> 
>   -doc_begin="The definition of macros and functions ending in '_bit' that use the
>   same identifier in 'bitops.h' is deliberate and safe."
> @@ -156,11 +152,6 @@ particular use of it done in xen_mk_ulong."
>   -config=MC3R1.R7.2,reports+={deliberate,"any_area(any_loc(macro(name(BUILD_BUG_ON))))"}
>   -doc_end
> 
> --doc_begin="The following string literals are assigned to pointers to non
> -const-qualified char."
> --config=MC3R1.R7.4,reports+={safe, "any_area(text(^\\s*/\\*\\s+SAF-[0-9]+-safe\\s+MC3R1\\.R7\\.4.*$, begin-1))"}
> --doc_end
> - >   -doc_begin="Allow pointers of non-character type as long as the 
pointee is
>   const-qualified."
>   -config=MC3R1.R7.4,same_pointee=false
> @@ -222,12 +213,6 @@ definition is compiled-out or optimized-out by the compiler)"
>   # Series 9.
>   #
> 
> --doc_begin="The following variables are written before being set, therefore no
> -access to uninitialized memory locations happens, as explained in the deviation
> -comment."
> --config=MC3R1.R9.1,reports+={safe, "any_area(text(^\\s*/\\*\\s+SAF-[0-9]+-safe\\s+MC3R1\\.R9\\.1.*$, begin-1))"}
> --doc_end
> -
>   -doc_begin="Violations in files that maintainers have asked to not modify in the
>   context of R9.1."
>   -file_tag+={adopted_r9_1,"^xen/arch/arm/arm64/lib/find_next_bit\\.c$"}
> @@ -274,6 +259,14 @@ still non-negative."
>   -config=MC3R1.R10.1,etypes+={safe, "stmt(operator(logical)||node(conditional_operator||binary_conditional_operator))", "dst_type(ebool||boolean)"}
>   -doc_end
> 
> +#
> +# Series 11
> +#
> +
> +-doc_begin="This macro is used to check if the type is scalar, and for this purpose the use of 0 as a null pointer constant is deliberate."
> +-config=MC3R1.R11.9,reports+={deliberate, "any_area(any_loc(any_exp(macro(^__ACCESS_ONCE$))))"}
> +-doc_end
> +
>   ### Set 3 ###
> 
>   #
> diff --git a/docs/misra/rules.rst b/docs/misra/rules.rst
> index 3139ca7ae6dd..d5569696b3a8 100644
> --- a/docs/misra/rules.rst
> +++ b/docs/misra/rules.rst
> @@ -393,7 +393,8 @@ maintainers if you want to suggest a change.
>      * - `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 null pointer constant
> -     -
> +     - Using 0 as a null pointer constant to check if a type is scalar is
> +       allowed and always happens through the macro __ACCESS_ONCE.
> 
>      * - `Rule 12.5 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/R_12_05.c>`_
>        - Mandatory
> diff --git a/xen/include/xen/compiler.h b/xen/include/xen/compiler.h
> index dd99e573083f..15be9a750b23 100644
> --- a/xen/include/xen/compiler.h
> +++ b/xen/include/xen/compiler.h
> @@ -109,13 +109,16 @@
> 
>   #define offsetof(a,b) __builtin_offsetof(a,b)
> 
> +/* Access the field of structure type, without defining a local variable */
> +#define access_field(type, member) (((type *)NULL)->member)
> +#define typeof_field(type, member) typeof(access_field(type, member))
>   /**
>    * sizeof_field(TYPE, MEMBER)
>    *
>    * @TYPE: The structure containing the field of interest
>    * @MEMBER: The field to return the size of
>    */
> -#define sizeof_field(TYPE, MEMBER) sizeof((((TYPE *)0)->MEMBER))
> +#define sizeof_field(TYPE, MEMBER) sizeof(access_field(TYPE, MEMBER))
> 
>   #if !defined(__STDC_VERSION__) || __STDC_VERSION__ < 201112L
>   #define alignof __alignof__
> diff --git a/xen/include/xen/kernel.h b/xen/include/xen/kernel.h
> index 46b3c9c02625..2c5ed7736c99 100644
> --- a/xen/include/xen/kernel.h
> +++ b/xen/include/xen/kernel.h
> @@ -51,7 +51,7 @@
>    *
>    */
>   #define container_of(ptr, type, member) ({                      \
> -        typeof( ((type *)0)->member ) *__mptr = (ptr);          \
> +        typeof_field(type, member) *__mptr = (ptr);             \
>           (type *)( (char *)__mptr - offsetof(type,member) );})
> 
>   /*
> --
> 2.34.1

Cheers,

[1] 
https://wiki.xenproject.org/wiki/Submitting_Xen_Project_Patches#What_is_in_a_patch_series.3F

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Fri Oct 06 09:29:55 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 09:29:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613436.953929 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoh9e-0002dY-J7; Fri, 06 Oct 2023 09:29:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613436.953929; Fri, 06 Oct 2023 09:29: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 1qoh9e-0002dR-GN; Fri, 06 Oct 2023 09:29:54 +0000
Received: by outflank-mailman (input) for mailman id 613436;
 Fri, 06 Oct 2023 09:29: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 1qoh9c-0002dL-ED
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 09:29: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 1qoh9b-0001po-Q3; Fri, 06 Oct 2023 09:29: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 1qoh9b-0004QD-Kq; Fri, 06 Oct 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>
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=+fO5+qW0hffLu8Tdz7j2uvKFtiao0r0DsdQ66uHQ6oY=; b=PRwFcdpPe0t4uPiSWK9gNcoqnm
	mnHh5P2xfwwj8I4GwyyIRbGaKSZ0JFEWp6+pGNDXrv6TK81578wGeu1ex4VzXikj3z4pU6tPyi+vL
	NgDzBnmWL0HjizZ5OWyM9mA5E33mQqrWFbj4hMcAF7+wy03v02AP4icLMNI9buCdVEFs=;
Message-ID: <6102db25-2fd6-49fa-be66-ec2b627b019b@xen.org>
Date: Fri, 6 Oct 2023 10:29:49 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN PATCH][for-4.19 1/9] xen/include: add macro LOWEST_POW2
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,
 andrew.cooper3@citrix.com, roger.pau@citrix.com,
 Simone Ballarin <simone.ballarin@bugseng.com>,
 Doug Goldstein <cardoe@cardoe.com>, George Dunlap
 <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>
References: <cover.1696514677.git.nicola.vetrini@bugseng.com>
 <d27f52eaaa62ec4ebb9ce8b6cf243779d341367d.1696514677.git.nicola.vetrini@bugseng.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <d27f52eaaa62ec4ebb9ce8b6cf243779d341367d.1696514677.git.nicola.vetrini@bugseng.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi,

On 06/10/2023 09:26, Nicola Vetrini wrote:
> The purpose of this macro is to encapsulate the well-known expression
> 'x & -x', that in 2's complement architectures on unsigned integers will
> give 2^ffs(x), where ffs(x) is the position of the lowest set bit in x.
> 
> A deviation for ECLAIR is also introduced.

Can you explain why this is a deviation in ECLAIR rather than one with 
/* SAF-* */ (or whichever name we decide to rename to)? Is this because 
the code is correct from MISRA perspective but the tool is confused?

> 
> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
> ---
>   automation/eclair_analysis/ECLAIR/deviations.ecl | 6 ++++++
>   xen/include/xen/macros.h                         | 6 ++++--
>   2 files changed, 10 insertions(+), 2 deletions(-)
> 
> diff --git a/automation/eclair_analysis/ECLAIR/deviations.ecl b/automation/eclair_analysis/ECLAIR/deviations.ecl
> index d8170106b449..016164643105 100644
> --- a/automation/eclair_analysis/ECLAIR/deviations.ecl
> +++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
> @@ -274,6 +274,12 @@ still non-negative."
>   -config=MC3R1.R10.1,etypes+={safe, "stmt(operator(logical)||node(conditional_operator||binary_conditional_operator))", "dst_type(ebool||boolean)"}
>   -doc_end
>   
> +-doc_begin="The macro LOWEST_POW2 encapsulates a well-known pattern to obtain the value
> +2^ffs(x) for unsigned integers on two's complement architectures
> +(all the architectures supported by Xen satisfy this requirement)."
> +-config=MC3R1.R10.1,reports+={safe, "any_area(any_loc(any_exp(macro(^LOWEST_POW2$))))"}
> +-doc_end
> +
>   ### Set 3 ###
>   
>   #
> diff --git a/xen/include/xen/macros.h b/xen/include/xen/macros.h
> index d0caae7db298..bb9a1c9a53d0 100644
> --- a/xen/include/xen/macros.h
> +++ b/xen/include/xen/macros.h
> @@ -8,8 +8,10 @@
>   #define DIV_ROUND(n, d) (((n) + (d) / 2) / (d))
>   #define DIV_ROUND_UP(n, d) (((n) + (d) - 1) / (d))
>   
> -#define MASK_EXTR(v, m) (((v) & (m)) / ((m) & -(m)))
> -#define MASK_INSR(v, m) (((v) * ((m) & -(m))) & (m))
> +#define LOWEST_POW2(x) ((x) & -(x))
> +
> +#define MASK_EXTR(v, m) (((v) & (m)) / LOWEST_POW2(m))
> +#define MASK_INSR(v, m) (((v) * LOWEST_POW2(m)) & (m))
>   
>   #define count_args_(dot, a1, a2, a3, a4, a5, a6, a7, a8, x, ...) x
>   #define count_args(args...) \

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Fri Oct 06 09:34:48 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 09:34:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613441.953938 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qohEK-0004cZ-2z; Fri, 06 Oct 2023 09:34:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613441.953938; Fri, 06 Oct 2023 09: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 1qohEK-0004cS-0J; Fri, 06 Oct 2023 09:34:44 +0000
Received: by outflank-mailman (input) for mailman id 613441;
 Fri, 06 Oct 2023 09:34: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 1qohEI-0004cM-QD
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 09:34: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 1qohEI-0001vq-0V; Fri, 06 Oct 2023 09:34: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 1qohEH-0004hD-Px; Fri, 06 Oct 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>
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=U0/La1IY/wfhYDshtgUTlQKcZXEOPnGnO8bzLIhlHD8=; b=lxYBmgX8fL+YX/TusqBYtAr9uv
	UCgLCx+yKdvDrGgeYH42iYHIR0+ue3+2XFm8aVTxQ9w2UGD/AV/Wy1xFfuUaJnvWoBXtlC49maqTr
	rFJskyLzOwj3vu1kp4oeirtlPMwGFmbGIOke6lLc0fC6LLrorkCSn7FziunP3+qtZS4k=;
Message-ID: <80101145-1958-457a-8c80-cae816ae74aa@xen.org>
Date: Fri, 6 Oct 2023 10:34:39 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN PATCH][for-4.19 8/9] xen/types: address Rule 10.1 for
 DECLARE_BITMAP use
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,
 andrew.cooper3@citrix.com, roger.pau@citrix.com, Paul Durrant
 <paul@xen.org>, George Dunlap <george.dunlap@citrix.com>,
 Wei Liu <wl@xen.org>
References: <cover.1696514677.git.nicola.vetrini@bugseng.com>
 <9642dcb4ab51ec9eaeedf16056fbcd946a3efbea.1696514677.git.nicola.vetrini@bugseng.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <9642dcb4ab51ec9eaeedf16056fbcd946a3efbea.1696514677.git.nicola.vetrini@bugseng.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi Nicola,

On 06/10/2023 09:26, 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
> in macro 'BITS_TO_LONGS'.
> 
> A comment in BITS_TO_LONGS is added to make it clear that
> values passed are meant to be positive.

I am confused. If the value is meant to be positive. Then...

> 
> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
> ---
>   xen/include/xen/iommu.h | 2 +-
>   xen/include/xen/types.h | 1 +
>   2 files changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/xen/include/xen/iommu.h b/xen/include/xen/iommu.h
> index 0e747b0bbc1c..34aa0b9b5b81 100644
> --- a/xen/include/xen/iommu.h
> +++ b/xen/include/xen/iommu.h
> @@ -360,7 +360,7 @@ struct domain_iommu {
>   #endif
>   
>       /* Features supported by the IOMMU */
> -    DECLARE_BITMAP(features, IOMMU_FEAT_count);
> +    DECLARE_BITMAP(features, (int)IOMMU_FEAT_count);

... why do we cast to (int) rather than (unsigned int)? Also, I think 
this cast deserve a comment on top because this is not a very obvious one.

>   
>       /* Does the guest share HAP mapping with the IOMMU? */
>       bool hap_pt_share;
> diff --git a/xen/include/xen/types.h b/xen/include/xen/types.h
> index aea259db1ef2..936e83d333a0 100644
> --- a/xen/include/xen/types.h
> +++ b/xen/include/xen/types.h
> @@ -22,6 +22,7 @@ typedef signed long ssize_t;
>   
>   typedef __PTRDIFF_TYPE__ ptrdiff_t;
>   
> +/* Users of this macro are expected to pass a positive value */
>   #define BITS_TO_LONGS(bits) \
>       (((bits)+BITS_PER_LONG-1)/BITS_PER_LONG)
>   #define DECLARE_BITMAP(name,bits) \

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Fri Oct 06 09:43:57 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 09:43:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613448.953949 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qohN6-0006i5-U1; Fri, 06 Oct 2023 09:43:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613448.953949; Fri, 06 Oct 2023 09:43: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 1qohN6-0006hy-Qv; Fri, 06 Oct 2023 09:43:48 +0000
Received: by outflank-mailman (input) for mailman id 613448;
 Fri, 06 Oct 2023 09:43: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 1qohN5-0006hq-Kl
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 09:43: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 1qohN5-0002FU-7B; Fri, 06 Oct 2023 09:43:47 +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 1qohN4-00054Y-Vp; Fri, 06 Oct 2023 09:43: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=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=Ef564dxn7FcnzglYu0IjeC1T705qh0h6PgX0QeECYaU=; b=CgUMOFDx5VZIHFGyoJF5RpzO2I
	N4h8xwcNgOhNBn0xQQfKvyxPhWsEUue0oRY7qa8RXOHjn1O0CPxYoAUQZ+fC/609zYxiuxFY71NmM
	oVyHGzJfkTJWOCpQLgdQ3h5Ovf+8RD1c1xY8e20J52s/YbwxALYqhfqlPZAa4gtfrNLM=;
Message-ID: <dbd7a393-eb17-4a17-a5da-29d7b49fffd7@xen.org>
Date: Fri, 6 Oct 2023 10:43:45 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH] xen/arm: vtimer: Don't read/use the secure physical timer
 interrupt for ACPI
Content-Language: en-GB
To: Michal Orzel <michal.orzel@amd.com>, xen-devel@lists.xenproject.org
Cc: Henry.Wang@arm.com, dan.driscoll@siemens.com,
 arvind.raghuraman@siemens.com, Julien Grall <jgrall@amazon.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
References: <20231005165454.18143-1-julien@xen.org>
 <edaa4c87-9e7e-485f-aa77-e330dcafa344@amd.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <edaa4c87-9e7e-485f-aa77-e330dcafa344@amd.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit



On 05/10/2023 21:15, Michal Orzel wrote:
> Hi Julien,

Hi Michal,

> On 05/10/2023 18:54, Julien Grall wrote:
>>
>>
>> From: Julien Grall <jgrall@amazon.com>
>>
>> Per ACPI 6.5 section 5.2.25 ("Generic Timer Description Table (GTDT)"),
>> the fields "Secure EL1 Timer GSIV/Flags" are optional and an OS running
>> in non-secure world is meant to ignore the values.
>>
>> However, Xen is trying to reserve the value. When booting on Graviton
>> 2 metal instances, this would result to crash a boot because the
>> value is 0 which is already reserved (I haven't checked for which device).
> Per my understanding it is not reserved by any device.
> 0 means SGI and for SGIs we pre-reserve the bits in allocated_irqs at the very start.

Ah yes good point. Somehow, I had in mind that PPI was starting at 0 
'^^. How about replacing the paragraph with:

"However, Xen is trying to reserve the value. The ACPI tables for 
Graviton 2 metal instances will provide the value 0 which is not a 
correct PPI (PPIs start at 16) and would have in fact been already 
reserved by Xen as this is an SGI. Xen will hit the BUG() and panic()".

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Fri Oct 06 09:58:14 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 09:58:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613454.953959 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qohax-0001cg-4U; Fri, 06 Oct 2023 09:58:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613454.953959; Fri, 06 Oct 2023 09:58: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 1qohax-0001cZ-1I; Fri, 06 Oct 2023 09:58:07 +0000
Received: by outflank-mailman (input) for mailman id 613454;
 Fri, 06 Oct 2023 09: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=bl8M=FU=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qohav-0001cS-Uc
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 09:58:05 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id d7209f46-642e-11ee-9b0d-b553b5be7939;
 Fri, 06 Oct 2023 11:58:03 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id 1BEFE4EE0738;
 Fri,  6 Oct 2023 11:58: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: d7209f46-642e-11ee-9b0d-b553b5be7939
MIME-Version: 1.0
Date: Fri, 06 Oct 2023 11:58:03 +0200
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: Julien Grall <julien@xen.org>
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, Simone Ballarin <simone.ballarin@bugseng.com>, Doug
 Goldstein <cardoe@cardoe.com>, George Dunlap <george.dunlap@citrix.com>, Wei
 Liu <wl@xen.org>
Subject: Re: [XEN PATCH][for-4.19 1/2] xen: introduce a deviation for Rule
 11.9
In-Reply-To: <605f8045-754d-4d3c-b1b3-3bb34112bfc8@xen.org>
References: <cover.1696494834.git.nicola.vetrini@bugseng.com>
 <98bc1d90b93856ed7516a19114facf6528120248.1696494834.git.nicola.vetrini@bugseng.com>
 <605f8045-754d-4d3c-b1b3-3bb34112bfc8@xen.org>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <2aafb9710b4754e8d57acc1f769693b4@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 06/10/2023 11:27, Julien Grall wrote:
> Hi,
> 
> On 05/10/2023 09:45, Nicola Vetrini wrote:
>> The constant 0 is used instead of NULL in '__ACCESS_ONCE' as a
>> compile-time check to detect non-scalar types; its usage for this
>> purpose is documented in rules.rst as an exception.
> Documenting ACCESS_ONCE() in rules.rst seems a bit odd. I am guessing
> that other analysis tool may point out the same error and therefore it
> would seem more appropriate to use a deviation.
> 
> This would also avoid having a specific rule in the Eclair
> configuration for __ACCESS_ONCE().
> 

I figured a single accepted use would benefit from an explicit 
exclusion.
I can rework it to use an in-code comment to deviate, in whatever form 
that comment may be
(still with some bits of ECLAIR-specific configuration anyway, as 
discussed for R2.1).

>> 
>> Furthermore, the 'access_field' and 'typeof_field' macros are
>> introduced as a general way to deal with accesses to structs
>> without declaring a struct variable.
>> 
>> Cleanup of spurious MISRA deviations.
> 
> Please don't do that. This is making the review of the patches a lot
> more complicated because there are unrelated changes (see [1]).
> 
> We often allow simple clean-up if they are in the context. But this is
> not the case here.
> 

Understood. There will be a separate MISRA deviations cleanup/update 
patch anyway,
so these can be included there.


> [1] 
> https://wiki.xenproject.org/wiki/Submitting_Xen_Project_Patches#What_is_in_a_patch_series.3F

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


From xen-devel-bounces@lists.xenproject.org Fri Oct 06 09:59:57 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 09:59:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613459.953969 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qohch-0002Ap-Fa; Fri, 06 Oct 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 613459.953969; Fri, 06 Oct 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 1qohch-0002Ai-Be; Fri, 06 Oct 2023 09:59:55 +0000
Received: by outflank-mailman (input) for mailman id 613459;
 Fri, 06 Oct 2023 09:59: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=5b7L=FU=amd.com=Michal.Orzel@srs-se1.protection.inumbo.net>)
 id 1qohcf-0002AY-Jm
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 09:59:53 +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 174ce598-642f-11ee-98d3-6d05b1d4d9a1;
 Fri, 06 Oct 2023 11:59:52 +0200 (CEST)
Received: from MW4PR03CA0205.namprd03.prod.outlook.com (2603:10b6:303:b8::30)
 by CH0PR12MB5058.namprd12.prod.outlook.com (2603:10b6:610:e1::8) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Fri, 6 Oct
 2023 09:59:46 +0000
Received: from CO1PEPF000042AC.namprd03.prod.outlook.com
 (2603:10b6:303:b8:cafe::b6) by MW4PR03CA0205.outlook.office365.com
 (2603:10b6:303:b8::30) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.29 via Frontend
 Transport; Fri, 6 Oct 2023 09:59:46 +0000
Received: from SATLEXMB03.amd.com (165.204.84.17) by
 CO1PEPF000042AC.mail.protection.outlook.com (10.167.243.41) 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, 6 Oct 2023 09:59:45 +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, 6 Oct
 2023 04:59:44 -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, 6 Oct
 2023 04:59:44 -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, 6 Oct 2023 04:59: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: 174ce598-642f-11ee-98d3-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=J5K1Ncxc5Z+K/TxOdC4fD4ij7ENoTJqODBjI+0GESybjmtVzClqUsbnc5V/t9H0nzmSrrUiwRALckS83itLNtBFxn8ytcuViManC8CrqIlFGPxp7arMBvrpoYJ/VpAiD7igcJGJEtn01dmw6P+imcj6KwodDPtgRilbzAwrn8PyQ5ESzKBpID5FiK+XEVznYF1nC05cLqqUHGJb7LKxaQtQSXo8iGetIeRxsoJOBNzLhoQW0AXQGi3O28JXT/PZl/nvB7SCnXiePgX9LaNel6YGgVadJAa5MQMOujgBlEvHS22/X0M4Y+vyyv+T3MGf0KTKSBS0/aIIlgrw13Kbl5Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=BjHOJ/S9F0A9Mm0EzlyAOAxHFipEJgZevJ31LLlix+4=;
 b=bTSugFVxiFf+PtnQYprk8qdREdZ932WurlZGf+npGR0xt4mAJ3iFrdSkbkmczq8yMz65ZJ0oIDTqnYHRJGaDCCCpdif15iQMEz1dvhCHoq4FSRddUIAJtV7cw+komUX4T2JyHaCkDgLMVLHIcwlUSgfdXD3uWrrLCGWgQtDFi3MFhhWRjwBkgeghBZvQSeF8zOWMtHfEcZ04MKCw8N+zcEBdoaRLIZkoVFmaqJhEB10mjmX85xSXO7vedNI6bWohnzr3RDV47pMijb3wFtWlNOUoOOS0qPoTO+NWBxsCAabW4b/wEfdDQ8tOwlcxr2f8lMFf4Wg19LNqGsOjic7xZg==
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=BjHOJ/S9F0A9Mm0EzlyAOAxHFipEJgZevJ31LLlix+4=;
 b=fzhTB6lskMiwLgVlanjfQ0TnLUYFa7b4tNM70D1K0bpjeeBc7WIQovelgpo7Y6mgA/+I7oPIkRQ6vygOV0MWAEqKlmz3czv7EZgGLSJZTYlB8lTE57Xbe3TUbQKJkxeTFo5SjyPkxhOy2IIxLl2c6NC17JyHurtO2U6UEPGNhZk=
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: <42a112ac-cfde-48ee-a878-82486251820b@amd.com>
Date: Fri, 6 Oct 2023 11:59:37 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH] xen/arm: vtimer: Don't read/use the secure physical timer
 interrupt for ACPI
Content-Language: en-US
To: Julien Grall <julien@xen.org>, <xen-devel@lists.xenproject.org>
CC: <Henry.Wang@arm.com>, <dan.driscoll@siemens.com>,
	<arvind.raghuraman@siemens.com>, Julien Grall <jgrall@amazon.com>, "Stefano
 Stabellini" <sstabellini@kernel.org>, Bertrand Marquis
	<bertrand.marquis@arm.com>, Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
References: <20231005165454.18143-1-julien@xen.org>
 <edaa4c87-9e7e-485f-aa77-e330dcafa344@amd.com>
 <dbd7a393-eb17-4a17-a5da-29d7b49fffd7@xen.org>
From: Michal Orzel <michal.orzel@amd.com>
In-Reply-To: <dbd7a393-eb17-4a17-a5da-29d7b49fffd7@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 7bit
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: CO1PEPF000042AC:EE_|CH0PR12MB5058:EE_
X-MS-Office365-Filtering-Correlation-Id: 7c207052-9e9f-4272-4708-08dbc652f813
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	hNzmmI0aiCUG46rVVQTj8XJvDFT5wGlpqgzW6/jHPPnuxaVL8KQ1yKUO3bBjW2a/9tW/t6g1RcIhz/deXNi0Zzjk8n+aAhEp9tnppbt1PtoqQWTutIHXcGjuojljWqc6zpZq4aJS0G1XpBLkjYTsDJsO4ELsj5Peq9WRI86cecad5zBL3WkQu/wVJ+1Oa1NHNCdjG2Q95FS72hGyl1mZIhYx/bLTTxYnL8xlZdeo/q+YhwhZ1wYXtVbXpwCGNLnjO2+0jPyUtAY+y4XLaHsaqN2+OunstgTa58tqonv3Ofb6MYNrnupbzG6v1SV7OoNEZIEvR2Req8Af6hL5rcGmIrhT1p9YyjNtnv62I3t4DNaRml0GeUHeGZpEls9CyVTHeeGzkovjozg9G9d9B+y2CO3bJC1DdOAMH955nxCEPQMdzu1ISWNohu7QFttIMpQzk1uwvA5D0l+TKTXgUrIkRdNOWI7GEuXiM4fNJYcZknJgUAgR79TNRqg1r/dtpAlkBu7eAC1euuwgS8cNoM+u5qty//Ah5S+a/lVtM1x+QoWd8hFT16ROQIahXuU66/1cjit/XSTX9eaNoFTjMknKj7ft1UlNn5YMWuo3gZNFE347biczYmQ0ulbWHkEG7fFKYFcGwbuEYrxN3y5x6Uu5Msl2ZXsqcMJI8MwoJ8UxnXiTgVXGcvDbooF6SWA6r2AMg2vQCY2lmyB66mfZV1K3eR9pwk8Mx/FDD5Fxckf3uJsU77dx70W5krrYSsSEpUJHqfuVrvUvxFTWUn5h2fsqmi513TdEy8PddfzRcQlxKlft3RNb37kW3zW5BagYNiir
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)(230922051799003)(82310400011)(451199024)(64100799003)(1800799009)(186009)(46966006)(40470700004)(36840700001)(82740400003)(86362001)(31696002)(2906002)(54906003)(8676002)(8936002)(4326008)(47076005)(36756003)(70206006)(110136005)(36860700001)(41300700001)(31686004)(16576012)(5660300002)(44832011)(316002)(70586007)(478600001)(6666004)(336012)(426003)(26005)(40460700003)(2616005)(81166007)(53546011)(356005)(40480700001)(43740500002)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Oct 2023 09:59:45.3125
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 7c207052-9e9f-4272-4708-08dbc652f813
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:
	CO1PEPF000042AC.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH0PR12MB5058

Hi Julien,

On 06/10/2023 11:43, Julien Grall wrote:
> 
> 
> On 05/10/2023 21:15, Michal Orzel wrote:
>> Hi Julien,
> 
> Hi Michal,
> 
>> On 05/10/2023 18:54, Julien Grall wrote:
>>>
>>>
>>> From: Julien Grall <jgrall@amazon.com>
>>>
>>> Per ACPI 6.5 section 5.2.25 ("Generic Timer Description Table (GTDT)"),
>>> the fields "Secure EL1 Timer GSIV/Flags" are optional and an OS running
>>> in non-secure world is meant to ignore the values.
>>>
>>> However, Xen is trying to reserve the value. When booting on Graviton
>>> 2 metal instances, this would result to crash a boot because the
>>> value is 0 which is already reserved (I haven't checked for which device).
>> Per my understanding it is not reserved by any device.
>> 0 means SGI and for SGIs we pre-reserve the bits in allocated_irqs at the very start.
> 
> Ah yes good point. Somehow, I had in mind that PPI was starting at 0
> '^^. How about replacing the paragraph with:
> 
> "However, Xen is trying to reserve the value. The ACPI tables for
> Graviton 2 metal instances will provide the value 0 which is not a
> correct PPI (PPIs start at 16) and would have in fact been already
> reserved by Xen as this is an SGI. Xen will hit the BUG() and panic()".
Yes, this sounds better. With that:
Reviewed-by: Michal Orzel <michal.orzel@amd.com>

~Michal


From xen-devel-bounces@lists.xenproject.org Fri Oct 06 10:02:37 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 10:02:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613465.953979 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qohfH-0003iS-Sc; Fri, 06 Oct 2023 10:02:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613465.953979; Fri, 06 Oct 2023 10:02: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 1qohfH-0003iL-PP; Fri, 06 Oct 2023 10:02:35 +0000
Received: by outflank-mailman (input) for mailman id 613465;
 Fri, 06 Oct 2023 10:02: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=bl8M=FU=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qohfF-0003iE-RJ
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 10:02:33 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 76ec9b65-642f-11ee-9b0d-b553b5be7939;
 Fri, 06 Oct 2023 12:02:31 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id 821C14EE0738;
 Fri,  6 Oct 2023 12:02: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: 76ec9b65-642f-11ee-9b0d-b553b5be7939
MIME-Version: 1.0
Date: Fri, 06 Oct 2023 12:02:31 +0200
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: Julien Grall <julien@xen.org>
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, Simone Ballarin <simone.ballarin@bugseng.com>, Doug
 Goldstein <cardoe@cardoe.com>, George Dunlap <george.dunlap@citrix.com>, Wei
 Liu <wl@xen.org>
Subject: Re: [XEN PATCH][for-4.19 1/9] xen/include: add macro LOWEST_POW2
In-Reply-To: <6102db25-2fd6-49fa-be66-ec2b627b019b@xen.org>
References: <cover.1696514677.git.nicola.vetrini@bugseng.com>
 <d27f52eaaa62ec4ebb9ce8b6cf243779d341367d.1696514677.git.nicola.vetrini@bugseng.com>
 <6102db25-2fd6-49fa-be66-ec2b627b019b@xen.org>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <0197ecdcc5869dddecc98907f67ba0f1@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 06/10/2023 11:29, Julien Grall wrote:
> Hi,
> 
> On 06/10/2023 09:26, Nicola Vetrini wrote:
>> The purpose of this macro is to encapsulate the well-known expression
>> 'x & -x', that in 2's complement architectures on unsigned integers 
>> will
>> give 2^ffs(x), where ffs(x) is the position of the lowest set bit in 
>> x.
>> 
>> A deviation for ECLAIR is also introduced.
> 
> Can you explain why this is a deviation in ECLAIR rather than one with
> /* SAF-* */ (or whichever name we decide to rename to)? Is this
> because the code is correct from MISRA perspective but the tool is
> confused?
> 

The code does violate Rule 10.1 (a unary minus applied to an unsigned 
value is
deemed inappropriate by MISRA), but rather than changing a whole lot of 
places where this
construct is used (mainly in x86 code), the reasoning is that it makes 
more sense to isolate
it and justify its presence by the fact that on 2's complement 
architectures the result is
indeed correct.

>> 
>> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
>> ---
>>   automation/eclair_analysis/ECLAIR/deviations.ecl | 6 ++++++
>>   xen/include/xen/macros.h                         | 6 ++++--
>>   2 files changed, 10 insertions(+), 2 deletions(-)
>> 
>> diff --git a/automation/eclair_analysis/ECLAIR/deviations.ecl 
>> b/automation/eclair_analysis/ECLAIR/deviations.ecl
>> index d8170106b449..016164643105 100644
>> --- a/automation/eclair_analysis/ECLAIR/deviations.ecl
>> +++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
>> @@ -274,6 +274,12 @@ still non-negative."
>>   -config=MC3R1.R10.1,etypes+={safe, 
>> "stmt(operator(logical)||node(conditional_operator||binary_conditional_operator))", 
>> "dst_type(ebool||boolean)"}
>>   -doc_end
>>   +-doc_begin="The macro LOWEST_POW2 encapsulates a well-known pattern 
>> to obtain the value
>> +2^ffs(x) for unsigned integers on two's complement architectures
>> +(all the architectures supported by Xen satisfy this requirement)."
>> +-config=MC3R1.R10.1,reports+={safe, 
>> "any_area(any_loc(any_exp(macro(^LOWEST_POW2$))))"}
>> +-doc_end
>> +
>>   ### Set 3 ###
>>     #
>> diff --git a/xen/include/xen/macros.h b/xen/include/xen/macros.h
>> index d0caae7db298..bb9a1c9a53d0 100644
>> --- a/xen/include/xen/macros.h
>> +++ b/xen/include/xen/macros.h
>> @@ -8,8 +8,10 @@
>>   #define DIV_ROUND(n, d) (((n) + (d) / 2) / (d))
>>   #define DIV_ROUND_UP(n, d) (((n) + (d) - 1) / (d))
>>   -#define MASK_EXTR(v, m) (((v) & (m)) / ((m) & -(m)))
>> -#define MASK_INSR(v, m) (((v) * ((m) & -(m))) & (m))
>> +#define LOWEST_POW2(x) ((x) & -(x))
>> +
>> +#define MASK_EXTR(v, m) (((v) & (m)) / LOWEST_POW2(m))
>> +#define MASK_INSR(v, m) (((v) * LOWEST_POW2(m)) & (m))
>>     #define count_args_(dot, a1, a2, a3, a4, a5, a6, a7, a8, x, ...) x
>>   #define count_args(args...) \

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


From xen-devel-bounces@lists.xenproject.org Fri Oct 06 10:08:24 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 10:08:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613472.953989 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qohkj-0004fc-Ku; Fri, 06 Oct 2023 10:08:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613472.953989; Fri, 06 Oct 2023 10: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 1qohkj-0004fV-Gm; Fri, 06 Oct 2023 10:08:13 +0000
Received: by outflank-mailman (input) for mailman id 613472;
 Fri, 06 Oct 2023 10:08: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 1qohki-0004fP-72
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 10:08: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 1qohkh-0002we-1U; Fri, 06 Oct 2023 10:08: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 1qohkg-0006FO-Pf; Fri, 06 Oct 2023 10: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>
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=O7HRV5tEZilDlCcLT9m+UxgRAYcNiS/Zg5AwRdXqy9Y=; b=Zi9oiIUxi6ZTHMDVDZKbIfbugL
	PcjfhDWBO6vLFT/vJCXrk5H7kuQnrAk0fnc6R9CDc7iPfTRGDWXKQs7Noc4LTMaN0ju0vUo7otLRO
	tnZDUctYK+ORctR2nzzmXt9o7ZwV0SjF3imOizXOr4fAZnBymNrPEsbSqw6QSC0LzaSY=;
Message-ID: <3880a214-ece2-4654-a94e-04f2e1d02353@xen.org>
Date: Fri, 6 Oct 2023 11:08:09 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH 1/2] domain: fix misaligned unmap address in
 unmap_guest_area()
Content-Language: en-GB
To: Roger Pau Monne <roger.pau@citrix.com>, xen-devel@lists.xenproject.org
Cc: Henry Wang <Henry.Wang@arm.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: <20231006091353.96367-1-roger.pau@citrix.com>
 <20231006091353.96367-2-roger.pau@citrix.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <20231006091353.96367-2-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

Hi Roger,

On 06/10/2023 10:13, Roger Pau Monne wrote:
> unmap_domain_page_global() expects the provided address to be page aligned, or
> else some of the called functions will trigger assertions, like
> modify_xen_mappings() on x86 or destroy_xen_mappings() on Arm.
> 
> The following assert has been reported by osstest arm 32bit tests:
> 
> (XEN) Assertion 'IS_ALIGNED(s, PAGE_SIZE)' failed at arch/arm/mm.c:1243
> (XEN) ----[ Xen-4.18-rc  arm32  debug=y  Not tainted ]----
> (XEN) CPU:    0
> (XEN) PC:     00271a38 destroy_xen_mappings+0x50/0x5c
> [...]
> (XEN) Xen call trace:
> (XEN)    [<00271a38>] destroy_xen_mappings+0x50/0x5c (PC)
> (XEN)    [<00235aa8>] vunmap+0x30/0x1a0 (LR)
> (XEN)    [<0026ad88>] unmap_domain_page_global+0x10/0x20
> (XEN)    [<00208e38>] unmap_guest_area+0x90/0xec
> (XEN)    [<00208f98>] domain_kill+0x104/0x180
> (XEN)    [<00239e3c>] do_domctl+0x8ac/0x14fc
> (XEN)    [<0027ae34>] do_trap_guest_sync+0x570/0x66c
> (XEN)    [<002019f0>] arch/arm/arm32/entry.o#return_from_trap+0/0x4
> 
> Fixes: eadc288cbb0d ('domain: map/unmap GADDR based shared guest areas')
> Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
> ---
> unmap_domain_page_global() and vunmap() should likely have the same alignment
> asserts, as not all paths lead to detecting the misalignment of the provided
> linear address.  Will do a separate patch.

unmap_domain_page() seems to be able to deal with unaligned pointer. And 
supporting unaligned pointer in vunmap()/unmap_domain_page_global() 
would simplifyy call to those functions.

So I would consider to deal with the alignment rather than adding 
ASSERT() in the two functions. destroy_xen_mappings() and 
modify_xen_mappings() should stay as-is though.

Anyway, I don't think this is a 4.18 material.

> ---
>   xen/common/domain.c | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/xen/common/domain.c b/xen/common/domain.c
> index b8281d7cff9d..2dcc64e659cc 100644
> --- a/xen/common/domain.c
> +++ b/xen/common/domain.c
> @@ -1634,7 +1634,7 @@ void unmap_guest_area(struct vcpu *v, struct guest_area *area)
>   
>       if ( pg )
>       {
> -        unmap_domain_page_global(map);
> +        unmap_domain_page_global((void *)((unsigned long)map & PAGE_MASK));

Looking at the code, I can't find where 'map' may have become unaligned. 
Do you have a pointer?

Depending on the answer, the call in map_guest_area() may also need some 
adjustment.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Fri Oct 06 10:10:23 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 10:10:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613476.953999 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qohmo-0006B8-0l; Fri, 06 Oct 2023 10:10:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613476.953999; Fri, 06 Oct 2023 10:10: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 1qohmn-0006B1-T5; Fri, 06 Oct 2023 10:10:21 +0000
Received: by outflank-mailman (input) for mailman id 613476;
 Fri, 06 Oct 2023 10:10: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=bl8M=FU=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qohmm-0006Av-UX
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 10:10:20 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 8dd1e612-6430-11ee-98d3-6d05b1d4d9a1;
 Fri, 06 Oct 2023 12:10:19 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id 3B11B4EE0738;
 Fri,  6 Oct 2023 12:10: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: 8dd1e612-6430-11ee-98d3-6d05b1d4d9a1
MIME-Version: 1.0
Date: Fri, 06 Oct 2023 12:10:19 +0200
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: Julien Grall <julien@xen.org>
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, Paul Durrant <paul@xen.org>, George Dunlap
 <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>
Subject: Re: [XEN PATCH][for-4.19 8/9] xen/types: address Rule 10.1 for
 DECLARE_BITMAP use
In-Reply-To: <80101145-1958-457a-8c80-cae816ae74aa@xen.org>
References: <cover.1696514677.git.nicola.vetrini@bugseng.com>
 <9642dcb4ab51ec9eaeedf16056fbcd946a3efbea.1696514677.git.nicola.vetrini@bugseng.com>
 <80101145-1958-457a-8c80-cae816ae74aa@xen.org>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <4b144869407871011c538af48b311c31@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 06/10/2023 11:34, Julien Grall wrote:
> Hi Nicola,
> 
> On 06/10/2023 09:26, 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
>> in macro 'BITS_TO_LONGS'.
>> 
>> A comment in BITS_TO_LONGS is added to make it clear that
>> values passed are meant to be positive.
> 
> I am confused. If the value is meant to be positive. Then...
> 
>> 
>> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
>> ---
>>   xen/include/xen/iommu.h | 2 +-
>>   xen/include/xen/types.h | 1 +
>>   2 files changed, 2 insertions(+), 1 deletion(-)
>> 
>> diff --git a/xen/include/xen/iommu.h b/xen/include/xen/iommu.h
>> index 0e747b0bbc1c..34aa0b9b5b81 100644
>> --- a/xen/include/xen/iommu.h
>> +++ b/xen/include/xen/iommu.h
>> @@ -360,7 +360,7 @@ struct domain_iommu {
>>   #endif
>>         /* Features supported by the IOMMU */
>> -    DECLARE_BITMAP(features, IOMMU_FEAT_count);
>> +    DECLARE_BITMAP(features, (int)IOMMU_FEAT_count);
> 
> ... why do we cast to (int) rather than (unsigned int)? Also, I think
> this cast deserve a comment on top because this is not a very obvious
> one.
> 
>>         /* Does the guest share HAP mapping with the IOMMU? */
>>       bool hap_pt_share;
>> diff --git a/xen/include/xen/types.h b/xen/include/xen/types.h
>> index aea259db1ef2..936e83d333a0 100644
>> --- a/xen/include/xen/types.h
>> +++ b/xen/include/xen/types.h
>> @@ -22,6 +22,7 @@ typedef signed long ssize_t;
>>     typedef __PTRDIFF_TYPE__ ptrdiff_t;
>>   +/* Users of this macro are expected to pass a positive value */
>>   #define BITS_TO_LONGS(bits) \
>>       (((bits)+BITS_PER_LONG-1)/BITS_PER_LONG)
>>   #define DECLARE_BITMAP(name,bits) \
> 
> Cheers,

See [1] for the reason why I did so. I should have mentioned that in the 
commit notes, sorry.
In short, making BITS_TO_LONGS essentially unsigned would cause a 
cascade of build errors and
possibly other essential type violations. If this is to be fixed that 
way, the effort required
is far greater. Either way, a comment on top of can be added, along the 
lines of:

Leaving this as an enum would violate MISRA C:2012 Rule 10.1

[1] 
https://lore.kernel.org/xen-devel/6495ba58bda01eae1f4baa46096424eb@bugseng.com/

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


From xen-devel-bounces@lists.xenproject.org Fri Oct 06 10:11:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 10:11:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613481.954009 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qohnd-0006lM-80; Fri, 06 Oct 2023 10:11:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613481.954009; Fri, 06 Oct 2023 10:11: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 1qohnd-0006lF-5J; Fri, 06 Oct 2023 10:11:13 +0000
Received: by outflank-mailman (input) for mailman id 613481;
 Fri, 06 Oct 2023 10:11: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 1qohnb-0006kx-Vd
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 10:11: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 1qohnb-00030o-Ix; Fri, 06 Oct 2023 10:11: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 1qohnb-0006V3-Do; Fri, 06 Oct 2023 10:11: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=Q7GcUKboM2+RSCuHqvAFLXR7hH0ah7hp22NHGXgCgKk=; b=lnalkgbODEau+pOLTGcht/+skC
	WnTEqgcVUgDjsx+wtXz/DURmoiMM9tcXEVzfXA0PPghGMsX5ZAzRE7a00hxS08AI0hKSpkDPWOnQj
	C6xJ0LnF+hySmkA8YlB3y0r6z6pzrdbinJ5QDU4f6QcONWUZCAlH1BrgeSYk912kgQM4=;
Message-ID: <b9d30cbc-255f-473c-974d-6dd262f22325@xen.org>
Date: Fri, 6 Oct 2023 11:11:09 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [for-4.18][PATCH 2/2] xen/public: arch-arm: Update list of
 supported hypercalls
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>,
 "Daniel P. Smith" <dpsmith@apertussolutions.com>, Henry.Wang@arm.com
References: <20231006075142.9803-1-michal.orzel@amd.com>
 <20231006075142.9803-3-michal.orzel@amd.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <20231006075142.9803-3-michal.orzel@amd.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi Michal,

On 06/10/2023 08:51, Michal Orzel wrote:
> The list is out of date and does not specify all the hypercalls/sub-ops
> we support, so update it.
> 
> Signed-off-by: Michal Orzel <michal.orzel@amd.com>
> ---
>   xen/include/public/arch-arm.h | 21 +++++++++++++++++++++
>   1 file changed, 21 insertions(+)
> 
> diff --git a/xen/include/public/arch-arm.h b/xen/include/public/arch-arm.h
> index 6a4467e8f5d1..263b1e182eb3 100644
> --- a/xen/include/public/arch-arm.h
> +++ b/xen/include/public/arch-arm.h
> @@ -104,6 +104,7 @@
>    *   Exactly these sub-operations are supported:
>    *    * HVMOP_set_param
>    *    * HVMOP_get_param
> + *    * HVMOP_guest_request_vm_event
>    *
>    *  HYPERVISOR_grant_table_op
>    *   All generic sub-operations
> @@ -116,6 +117,26 @@
>    *  HYPERVISOR_argo_op
>    *   All generic sub-operations
>    *
> + *  HYPERVISOR_hypfs_op
> + *   All generic sub-operations
> + *
> + *  HYPERVISOR_platform_op
> + *   Exactly these sub-operations are supported:
> + *    * XENPF_settime64
> + *
> + *  HYPERVISOR_vm_assist
> + *   All generic sub-operations
> + *
> + *  HYPERVISOR_dm_op
> + *   All ioreq server sub-operations are supported as well as:

I interpret this sentence as all the hypercall with 'ioreq' in their 
name is supported. But, for Arm, we at least don't support 
XEN_DMOP_map_mem_type_to_ioreq_server.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Fri Oct 06 10:20:49 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 10:20:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613487.954019 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qohwh-0001R4-4R; Fri, 06 Oct 2023 10:20:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613487.954019; Fri, 06 Oct 2023 10:20: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 1qohwh-0001Qx-1r; Fri, 06 Oct 2023 10:20:35 +0000
Received: by outflank-mailman (input) for mailman id 613487;
 Fri, 06 Oct 2023 10:20: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=5b7L=FU=amd.com=Michal.Orzel@srs-se1.protection.inumbo.net>)
 id 1qohwf-0001Qr-9k
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 10:20:33 +0000
Received: from NAM11-CO1-obe.outbound.protection.outlook.com
 (mail-co1nam11on20601.outbound.protection.outlook.com
 [2a01:111:f400:7eab::601])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id fa70ca72-6431-11ee-98d3-6d05b1d4d9a1;
 Fri, 06 Oct 2023 12:20:31 +0200 (CEST)
Received: from MW4P222CA0010.NAMP222.PROD.OUTLOOK.COM (2603:10b6:303:114::15)
 by DM4PR12MB5245.namprd12.prod.outlook.com (2603:10b6:5:398::8) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.37; Fri, 6 Oct
 2023 10:20:21 +0000
Received: from MWH0EPF000971E8.namprd02.prod.outlook.com
 (2603:10b6:303:114:cafe::bd) by MW4P222CA0010.outlook.office365.com
 (2603:10b6:303:114::15) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.29 via Frontend
 Transport; Fri, 6 Oct 2023 10:20:21 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 MWH0EPF000971E8.mail.protection.outlook.com (10.167.243.68) 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, 6 Oct 2023 10:20:20 +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, 6 Oct
 2023 05:20:20 -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, 6 Oct
 2023 05:20:19 -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, 6 Oct 2023 05:20:18 -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: fa70ca72-6431-11ee-98d3-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=nDq1IIisU52E8tYJ+jVRzEcUImEO+6hcwk0Dj4AS1fSrfDu4kNlsxeM5RSTQwJTim+OPX93+ZlzpkGVaXu33o0GVUCqfjM7ECIB1cJd6glOzQVpGRH40rnb0s90m0N0wY/5RtOo9CrmegUVaGmSrnvuS/vbjY/T2OtPRF9SFt98f+QizaYfeXDUv+oUMmg52i/RgK2wgtzgMaXKr3khtmogENdiS7oUQk6Iagag/PITLGviSxAQrkkMqDtroS0nCyJ/nKu6HTrsFcW1PqFeLonbudAbaldDweoBERzDF8NOBCv0U4EYSh6PSzCQp1exLy15q87hKQDBhCBS60jLdxg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=pf9spSzX6T7isr+gGgZ8ccmitmtEI00f1YcZrkWAlxY=;
 b=l6CRlBRKiAuyU+vZipn6SRilp7dkAobQUhR44gBuG8YsCHyKQytRSwtlc1HwTLY11BDM9EGa9TmTYg55JciwlJkRNuV5p+JRhPAzT85JFLq74heduP4qYxbLeBPcHuw2Vz6bN/sXIxBZZpntt4s1x2ZiVghAgkhyblITVU3CMNEk3t0eYhC173WP2FHFFSTctHrPk7N01633YnmMRFfn3K0Yc99OB4xpFNuwVv5KpoBL6DzQzdqIvVfCvu6ZoNbOFsNihe7qtWBeYwH09x8ew1QVu2B0fiNlbRmUTFQbz17/zOSDw7NlPSqslVgtbtEuhQXvIbDmFtXjCVOgDJRvwQ==
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=pf9spSzX6T7isr+gGgZ8ccmitmtEI00f1YcZrkWAlxY=;
 b=g+cSF93d3x4I24sMxXvLhJ/x53jIjuUmL/1SHSg+gIijxBXYwsfT/a8AOWvn8mwbjggTNPQkvCiLOHtLxjeUQ6rnX72z2aFZv0ORsK9mwZ4hMIhjUve7GbaUNOik+cWfK4L5ujqSTvvwBehnUZrKoCHHbRtiTicHYrOYi5uT1WI=
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: <40878a29-d681-485b-8d58-0187ec586a2b@amd.com>
Date: Fri, 6 Oct 2023 12:20:12 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [for-4.18][PATCH 2/2] xen/public: arch-arm: Update list of
 supported hypercalls
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>,
	"Daniel P. Smith" <dpsmith@apertussolutions.com>, <Henry.Wang@arm.com>
References: <20231006075142.9803-1-michal.orzel@amd.com>
 <20231006075142.9803-3-michal.orzel@amd.com>
 <b9d30cbc-255f-473c-974d-6dd262f22325@xen.org>
From: Michal Orzel <michal.orzel@amd.com>
In-Reply-To: <b9d30cbc-255f-473c-974d-6dd262f22325@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 7bit
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: MWH0EPF000971E8:EE_|DM4PR12MB5245:EE_
X-MS-Office365-Filtering-Correlation-Id: a113360a-ad69-4059-a109-08dbc655d870
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	5BEsBlyudFLgs1rMP+u1DhcH7r9shNG8GBJ0vp6tq4s1g1aw6EY7ESY2E+MbP53tPZVeQ/oYytI56Ub+jF4w5teqGGVCpwlkAgUSyo+J11kbGoGQCnlO0vGv3rlCnJDz//OEDjEwgGS/ujlkb0hnTiF4QBnwRwPAGNlgBglPi2imhIB03Kz5qRc4xEWGojQZU4v4QAWyMSvcTq5D/71NnNC+VIX79FweTkUV1Pa2CdgoiOZHABUjQIf7sT+WWows42cTxFoENG25E6woUXhzfdoEbUYhkhv7rMBHJn5F+mouKacDmsetZToYK5ZpL8gnQ/jWZbqoI/wP0BMd8/qYMx+SCgo7vHMpKopKxoxnlOpadsANwAA9mGD9UlYp81CzoSHFIq/KJfJ8kZXA9/NZLFnflG+EW/8TurMIvjLjEfNr+qrgSUi4ct47+Hvq1ntc/PztmOb6GY5PcXhNoUWBFlWjqq8sCC4SA+GQ/SYK+TAq0NAhozm9K3kzcQBjDrC2F8D1uGTXzwbKa9mAcr7OcnvCUrPyu1xsrzw+k9v+6oxir5fwwUrHwvIKAtJInZyZD1EwNwWc2+g4Gav6HIjTCJCyVbOYkd88ARu8UoKNmljGHKG3t8r5/KM20piVcSf+6gUj/JJQdHkLs34pMv33zJMO75vfD8ndy7YP3co/zYT43iuk8YMDmKPle/UtvZZMbdVfBoXqd0Kx1t8k+ChK8daEDaVLBsMQDSrE5Lw+H7oOkpeget4EqCkJMWwdNRw/TfmsNfsMao5evwQ0/hq1ndVqAnJvKuMkEQnnXRt8oGh8SDO7qy0RdZfZQ2juKBDC
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)(230922051799003)(186009)(64100799003)(451199024)(1800799009)(82310400011)(36840700001)(40470700004)(46966006)(31686004)(53546011)(5660300002)(2616005)(40460700003)(86362001)(40480700001)(36756003)(31696002)(81166007)(82740400003)(356005)(36860700001)(426003)(26005)(15650500001)(110136005)(2906002)(47076005)(478600001)(6666004)(336012)(83380400001)(316002)(8676002)(8936002)(4326008)(41300700001)(70206006)(44832011)(70586007)(16576012)(54906003)(36900700001)(43740500002);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Oct 2023 10:20:20.7274
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: a113360a-ad69-4059-a109-08dbc655d870
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:
	MWH0EPF000971E8.namprd02.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR12MB5245

Hi Julien,

On 06/10/2023 12:11, Julien Grall wrote:
> 
> 
> Hi Michal,
> 
> On 06/10/2023 08:51, Michal Orzel wrote:
>> The list is out of date and does not specify all the hypercalls/sub-ops
>> we support, so update it.
>>
>> Signed-off-by: Michal Orzel <michal.orzel@amd.com>
>> ---
>>   xen/include/public/arch-arm.h | 21 +++++++++++++++++++++
>>   1 file changed, 21 insertions(+)
>>
>> diff --git a/xen/include/public/arch-arm.h b/xen/include/public/arch-arm.h
>> index 6a4467e8f5d1..263b1e182eb3 100644
>> --- a/xen/include/public/arch-arm.h
>> +++ b/xen/include/public/arch-arm.h
>> @@ -104,6 +104,7 @@
>>    *   Exactly these sub-operations are supported:
>>    *    * HVMOP_set_param
>>    *    * HVMOP_get_param
>> + *    * HVMOP_guest_request_vm_event
>>    *
>>    *  HYPERVISOR_grant_table_op
>>    *   All generic sub-operations
>> @@ -116,6 +117,26 @@
>>    *  HYPERVISOR_argo_op
>>    *   All generic sub-operations
>>    *
>> + *  HYPERVISOR_hypfs_op
>> + *   All generic sub-operations
>> + *
>> + *  HYPERVISOR_platform_op
>> + *   Exactly these sub-operations are supported:
>> + *    * XENPF_settime64
>> + *
>> + *  HYPERVISOR_vm_assist
>> + *   All generic sub-operations
>> + *
>> + *  HYPERVISOR_dm_op
>> + *   All ioreq server sub-operations are supported as well as:
> 
> I interpret this sentence as all the hypercall with 'ioreq' in their
> name is supported. But, for Arm, we at least don't support
> XEN_DMOP_map_mem_type_to_ioreq_server.
What I meant is that we support all sub-ops from ioreq_server_dm_op (ioreq.c).
XEN_DMOP_map_mem_type_to_ioreq_server is only accessible on x86 and not part of ioreq.c

~Michal


From xen-devel-bounces@lists.xenproject.org Fri Oct 06 10:21:53 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 10:21:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613491.954029 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qohxw-0001vx-G0; Fri, 06 Oct 2023 10:21:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613491.954029; Fri, 06 Oct 2023 10: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 1qohxw-0001vq-CH; Fri, 06 Oct 2023 10:21:52 +0000
Received: by outflank-mailman (input) for mailman id 613491;
 Fri, 06 Oct 2023 10:21: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=vVKM=FU=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qohxu-0001vd-Po
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 10:21:50 +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 28539f35-6432-11ee-9b0d-b553b5be7939;
 Fri, 06 Oct 2023 12:21:48 +0200 (CEST)
Received: by mail-wm1-x32b.google.com with SMTP id
 5b1f17b1804b1-40537481094so17405965e9.0
 for <xen-devel@lists.xenproject.org>; Fri, 06 Oct 2023 03:21:48 -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
 l17-20020a1ced11000000b0040588d85b3asm5651278wmh.15.2023.10.06.03.21.47
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Fri, 06 Oct 2023 03:21: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: 28539f35-6432-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1696587708; x=1697192508; darn=lists.xenproject.org;
        h=content-transfer-encoding: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=TndpNmy2CTAORG2i4gPyUy2U0CaD/eAnbSkI6S+vIBE=;
        b=scloZyqxUlVb41HTjsoFPPNJda8xLw6+FpY0a4+8EezzE4O8D1Lv2XPj915dTT+3gp
         bkYWi1t0TNFD/lBhc7tcCIXvvghHS51f3QmzC+zu8A/5rOg1SbNlVzl/1fExCciuQruI
         ClBFNKm6ek/+LFM6b1l3pS6R1beVuiYgA1ri0=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1696587708; x=1697192508;
        h=content-transfer-encoding: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=TndpNmy2CTAORG2i4gPyUy2U0CaD/eAnbSkI6S+vIBE=;
        b=GH5+1AZghjRo4uVnr4n49JiLY60p83JBAG4V6Jwm8rO9/JcCKHzy1+gOZfVy7hsPx/
         iJFwsjHIn3otTmqODq6SZXy93R8L+xxst0ZQUfgtglukKEEnoElS1w/GvIkRu8siX69H
         eoh9co/b5b/GWFbJNWcKdfeLRw6nI22qx9HNXcvfVClBeTDTqQKnRNrn3Gh8PQRsUpjF
         Az37QzVqS4MuA8axW77G/RLa+64J6a45yX9WLZnJ0bQ6a8TTtdf1T5cxVpOXpBq1bqXN
         w/t9E0XAsMe5bFxrottjkqCFcOivZ6KjOSNF7LaXb+yrk1O4nua1nR8lZtSrkaIFbwxK
         5YXw==
X-Gm-Message-State: AOJu0YxtmSkdSq/jdGW04j3WQtKhkPY6q7boujxla3O9sKwZ7y/k7fvL
	JO2CEhpZ/g3Ol91+O4h4QlLXbA==
X-Google-Smtp-Source: AGHT+IEGjQQlujqVaHlnwv03MlQ+PGRubY5/+6DAa+UwZ01yZsDl5ffYn1FibliyPNV6oI4gEYFObQ==
X-Received: by 2002:a1c:7c0b:0:b0:402:8896:bb7b with SMTP id x11-20020a1c7c0b000000b004028896bb7bmr6838016wmc.6.1696587707810;
        Fri, 06 Oct 2023 03:21:47 -0700 (PDT)
Message-ID: <1762e2e9-07a5-4c25-9e72-04e9a93c6ebe@citrix.com>
Date: Fri, 6 Oct 2023 11:21:46 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [CRITICAL for 4.18] Re: [PATCH v5 00/10] runstate/time area
 registration by (guest) physical address
Content-Language: en-GB
To: =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>
Cc: xen-devel@lists.xenproject.org, henry.wang@arm.com,
 Tamas K Lengyel <tamas@tklengyel.com>, Jan Beulich <jbeulich@suse.com>,
 George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>
References: <20231002151127.71020-1-roger.pau@citrix.com>
 <ff8994eb-968d-4bbb-a960-e5ca78ef658e@citrix.com>
 <ZR--ozuTl9-CgBqg@MacBookPdeRoger>
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: <ZR--ozuTl9-CgBqg@MacBookPdeRoger>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 06/10/2023 9:00 am, Roger Pau Monné wrote:
> On Thu, Oct 05, 2023 at 07:58:50PM +0100, Andrew Cooper wrote:
>> Henry: Blocker for 4.18.   The absolutely bare minimum necessary to
>> avoid reversion is some kind of positive enumeration that the two new
>> hypercalls are available.
>>
>> Otherwise I will be #if 0'ing out the new hypercalls before this ABI
>> mistake gets set in stone.
>>
>>
>> If this were x86-only it would need to be a CPUID flag, but it will need
>> to be something arch-agnostic in this case.  The series should not have
>> come without a proper per-domain control and toolstack integration, but
>> everything else can be retrofitted in an emergency.
>>
>> And on a related note, where is the documentation describing this new
>> feature?  Some tests perhaps, or any single implementation of the guest
>> side interface?
> Not that I know, I was expecting Jan to post that once he gets back
> from PTO.
>
> I already noted somewhere that I wasn't able to test myself because I
> couldn't find any Linux side patches to test the feature with, and I
> didn't have time to write ones myself (was expecting Jan to have the
> Linux side done already for testing reasons).

Big new feature, getting merged after RC1 and feature freeze, with no
enumeration and no disable.

How did this not set off massive alarm bells?


I was about to say that this is a disaster waiting to happen, except
OSSTest has beaten me to it.

This "new feature" managed to regress existing behaviour of something it
was trying not to change, and that's in an area that even I wouldn't
expect to put in a disable.


I'm very sorely tempted to insist that this gets disabled by default in
4.18.  It's clear that it isn't in a fit state, and the absence of any
testing whatsoever means it is likely to explode on the first guest
kernel which tries to use the new interface.

And to be clear, disabled-by-default is a question for Henry and Henry
alone, as the person ultimately responsible for 4.18.

~Andrew


From xen-devel-bounces@lists.xenproject.org Fri Oct 06 10:22:19 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 10:22:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613496.954039 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qohyM-0002S0-TR; Fri, 06 Oct 2023 10:22:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613496.954039; Fri, 06 Oct 2023 10: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 1qohyM-0002Rt-QR; Fri, 06 Oct 2023 10:22:18 +0000
Received: by outflank-mailman (input) for mailman id 613496;
 Fri, 06 Oct 2023 10:22: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 1qohyM-0002Rb-28
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 10:22: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 1qohyL-0003Cf-9y; Fri, 06 Oct 2023 10:22:17 +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 1qohyL-000761-0s; Fri, 06 Oct 2023 10:22: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=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=2GX3G3jYEk14lKCFwBriPE8s2QuXTo8io0Pej72ULaM=; b=x+jDIAEMbsbjftTOZMfuiq8Au5
	4RrgRLq+OwkTqDNsbbjTSJ4aWDzh5fZcpppk/1UPfALREEr2Nu1QWeS7T3bIIWDkdnK4x3s6AgPBe
	3VmDZsf08EfKO5M3d5gn/xvd0/jfqN51UhNTNy6oq8O/+OZz6By0QRfS9z/QImzNa5dc=;
Message-ID: <63f172c1-bda5-447b-bc8b-90563f3f3c2a@xen.org>
Date: Fri, 6 Oct 2023 11:22:14 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN PATCH][for-4.19 1/9] xen/include: add macro LOWEST_POW2
Content-Language: en-GB
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, Simone Ballarin <simone.ballarin@bugseng.com>,
 Doug Goldstein <cardoe@cardoe.com>, George Dunlap
 <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>
References: <cover.1696514677.git.nicola.vetrini@bugseng.com>
 <d27f52eaaa62ec4ebb9ce8b6cf243779d341367d.1696514677.git.nicola.vetrini@bugseng.com>
 <6102db25-2fd6-49fa-be66-ec2b627b019b@xen.org>
 <0197ecdcc5869dddecc98907f67ba0f1@bugseng.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <0197ecdcc5869dddecc98907f67ba0f1@bugseng.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit



On 06/10/2023 11:02, Nicola Vetrini wrote:
> On 06/10/2023 11:29, Julien Grall wrote:
>> Hi,
>>
>> On 06/10/2023 09:26, Nicola Vetrini wrote:
>>> The purpose of this macro is to encapsulate the well-known expression
>>> 'x & -x', that in 2's complement architectures on unsigned integers will
>>> give 2^ffs(x), where ffs(x) is the position of the lowest set bit in x.
>>>
>>> A deviation for ECLAIR is also introduced.
>>
>> Can you explain why this is a deviation in ECLAIR rather than one with
>> /* SAF-* */ (or whichever name we decide to rename to)? Is this
>> because the code is correct from MISRA perspective but the tool is
>> confused?
>>
> 
> The code does violate Rule 10.1 (a unary minus applied to an unsigned 
> value is
> deemed inappropriate by MISRA), but rather than changing a whole lot of 
> places where this
> construct is used (mainly in x86 code), the reasoning is that it makes 
> more sense to isolate
> it and justify its presence by the fact that on 2's complement 
> architectures the result is
> indeed correct.

This is explaining to me why you are adding LOWEST_POW2(). But this 
doesn't explain why you are not using /* SAF-* */ on top of LOWEST_POW2().

To me, we should only use ECLAIR specific deviation when this is a 
shortcoming with the tool.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Fri Oct 06 10:23:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 10:23:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613500.954049 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qohzp-0003Di-7B; Fri, 06 Oct 2023 10:23:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613500.954049; Fri, 06 Oct 2023 10:23: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 1qohzp-0003Db-4M; Fri, 06 Oct 2023 10:23:49 +0000
Received: by outflank-mailman (input) for mailman id 613500;
 Fri, 06 Oct 2023 10:23: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=kONH=FU=bugseng.com=simone.ballarin@srs-se1.protection.inumbo.net>)
 id 1qohzn-0003DT-Jt
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 10:23:47 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 6dd97fee-6432-11ee-9b0d-b553b5be7939;
 Fri, 06 Oct 2023 12:23:45 +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 89D304EE0738;
 Fri,  6 Oct 2023 12:23: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: 6dd97fee-6432-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 deviations and accepted guidelines
Date: Fri,  6 Oct 2023 12:23:16 +0200
Message-Id: <f7fb64aa1b78dfa57a2bf781f5a3cec6219c2de5.1696587777.git.simone.ballarin@bugseng.com>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Remove deviations for ERROR_EXIT, ERROR_EXIT_DOM and PIN_FAIL:
the aforementioned macros have been removed.
Add deviation for Rule 2.1 for pure declarations.
Remove legacy text-based deviations: these are now implemented
with SAF comments.
Add deviations for Dir 4.3 and Rules 8.4, 10.1, 13.5, 14.2, 14.3.
Remove deviations for guidelines not yet accepted or rejected.

Add MC3R1.R11.7, MC3R1.R11.8, MC3R1.R11.9, MC3R1.R15.3 and MC3R1.R14.2
to the accepted guidelines selector.

Update clean guidelines selector.

Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>
---
 .../eclair_analysis/ECLAIR/deviations.ecl     | 138 +++++++++---------
 automation/eclair_analysis/ECLAIR/tagging.ecl |   4 +-
 2 files changed, 69 insertions(+), 73 deletions(-)

diff --git a/automation/eclair_analysis/ECLAIR/deviations.ecl b/automation/eclair_analysis/ECLAIR/deviations.ecl
index d8170106b4..c00b9d5f38 100644
--- a/automation/eclair_analysis/ECLAIR/deviations.ecl
+++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
@@ -15,14 +15,19 @@ Constant expressions and unreachable branches of if and switch statements are ex
 -doc_end
 
 -doc_begin="Unreachability caused by calls to the following functions or macros is deliberate and there is no risk of code being unexpectedly left out."
--config=MC3R1.R2.1,statements+={deliberate,"macro(name(BUG||assert_failed||ERROR_EXIT||ERROR_EXIT_DOM||PIN_FAIL))"}
+-config=MC3R1.R2.1,statements+={deliberate,"macro(name(BUG||assert_failed))"}
 -config=MC3R1.R2.1,statements+={deliberate, "call(decl(name(__builtin_unreachable||panic||do_unexpected_trap||machine_halt||machine_restart||maybe_reboot)))"}
 -doc_end
 
--doc_begin="Unreachability of an ASSERT_UNREACHABLE() and analogous macro calls is deliberate and safe."
+-doc_begin="Unreachability inside an ASSERT_UNREACHABLE() and analogous macro calls is deliberate and safe."
 -config=MC3R1.R2.1,reports+={deliberate, "any_area(any_loc(any_exp(macro(name(ASSERT_UNREACHABLE||PARSE_ERR_RET||PARSE_ERR||FAIL_MSR||FAIL_CPUID)))))"}
 -doc_end
 
+-doc_begin="Pure declarations (i.e., declarations without initialization) are
+not executable, and therefore it is safe for them to be unreachable."
+-config=MC3R1.R2.1,ignored_stmts+={"any()", "pure_decl()"}
+-doc_end
+
 -doc_begin="Proving compliance with respect to Rule 2.2 is generally impossible:
 see https://arxiv.org/abs/2212.13933 for details. Moreover, peer review gives us
 confidence that no evidence of errors in the program's logic has been missed due
@@ -49,33 +54,12 @@ they are not instances of commented-out code."
 -config=MC3R1.D4.3,reports+={disapplied,"!(any_area(any_loc(file(^xen/arch/arm/arm64/.*$))))"}
 -doc_end
 
--doc_begin="Depending on the compiler, rewriting the following function-like
-macros as inline functions is not guaranteed to have the same effect."
--config=MC3R1.D4.9,macros+={deliberate,"name(likely)"}
--config=MC3R1.D4.9,macros+={deliberate,"name(unlikely)"}
--config=MC3R1.D4.9,macros+={deliberate,"name(unreachable)"}
--doc_end
-
--doc_begin="These macros can be used on both pointers and unsigned long type values."
--config=MC3R1.D4.9,macros+={safe,"name(virt_to_maddr)"}
--config=MC3R1.D4.9,macros+={safe,"name(virt_to_mfn)"}
--doc_end
-
--doc_begin="Rewriting variadic macros as variadic functions might have a negative impact on safety."
--config=MC3R1.D4.9,macros+={deliberate,"variadic()"}
--doc_end
-
--doc_begin="Rewriting macros with arguments that are, in turn, arguments of
-__builtin_constant_p() can change the behavior depending on the optimization
-level."
--config=MC3R1.D4.9,macro_argument_context+="skip_to(class(type||expr||decl,any),
-                                            call(name(__builtin_constant_p)))"
--doc_end
-
--doc_begin="Function-like macros defined in public headers are meant to be
-usable in C89 mode without any extensions. Hence they cannot be replaced by
-inline functions."
--config=MC3R1.D4.9,macros+={deliberate, "loc(file(api:public))"}
+-doc_begin="The inline asm in 'arm64/lib/bitops.c' is tightly coupled with the
+surronding C code that acts as a wrapper, so it has been decided not to add an
+additional encapsulation layer."
+-file_tag+={arm64_bitops, "^xen/arch/arm/arm64/lib/bitops\\.c$"}
+-config=MC3R1.D4.3,reports+={deliberate, "all_area(any_loc(file(arm64_bitops)&&any_exp(macro(^(bit|test)op$))))"}
+-config=MC3R1.D4.3,reports+={deliberate, "any_area(any_loc(file(arm64_bitops))&&context(name(int_clear_mask16)))"}
 -doc_end
 
 -doc_begin="This header file is autogenerated or empty, therefore it poses no
@@ -105,29 +89,6 @@ conform to the directive."
 -config=MC3R1.R5.3,reports+={safe, "any_area(any_loc(any_exp(macro(^read_debugreg$))&&any_exp(macro(^write_debugreg$))))"}
 -doc_end
 
--doc_begin="Function-like macros cannot be confused with identifiers that are
-neither functions nor pointers to functions."
--config=MC3R1.R5.5,reports={safe,"all_area(decl(node(enum_decl||record_decl||field_decl||param_decl||var_decl)&&!type(canonical(address((node(function||function_no_proto))))))||macro(function_like()))"}
--doc_end
-
--doc_begin="The use of these identifiers for both macro names and other entities
-is deliberate and does not generate developer confusion."
--config=MC3R1.R5.5,reports+={safe, "any_area(text(^\\s*/\\*\\s+SAF-[0-9]+-safe\\s+MC3R1\\.R5\\.5.*$, begin-1))"}
--doc_end
-
--doc_begin="The definition of macros and functions ending in '_bit' that use the
-same identifier in 'bitops.h' is deliberate and safe."
--file_tag+={bitops_h, "^xen/arch/x86/include/asm/bitops\\.h$"}
--config=MC3R1.R5.5,reports+={safe, "all_area((decl(^.*_bit\\(.*$)||macro(^.*_bit$))&&all_loc(file(bitops_h)))"}
--doc_end
-
--doc_begin="The definition of macros and functions beginning in 'str' or 'mem'
-that use the same identifier in 'xen/include/xen/string.h' is deliberate and
-safe."
--file_tag+={string_h, "^xen/include/xen/string\\.h$"}
--config=MC3R1.R5.5,reports+={safe, "any_area((decl(^(mem|str).*$)||macro(^(mem|str).*$))&&all_loc(file(string_h)))"}
--doc_end
-
 #
 # Series 7.
 #
@@ -156,11 +117,6 @@ particular use of it done in xen_mk_ulong."
 -config=MC3R1.R7.2,reports+={deliberate,"any_area(any_loc(macro(name(BUILD_BUG_ON))))"}
 -doc_end
 
--doc_begin="The following string literals are assigned to pointers to non
-const-qualified char."
--config=MC3R1.R7.4,reports+={safe, "any_area(text(^\\s*/\\*\\s+SAF-[0-9]+-safe\\s+MC3R1\\.R7\\.4.*$, begin-1))"}
--doc_end
-
 -doc_begin="Allow pointers of non-character type as long as the pointee is
 const-qualified."
 -config=MC3R1.R7.4,same_pointee=false
@@ -204,6 +160,16 @@ const-qualified."
 -config=MC3R1.R8.3,reports+={deliberate,"any_area(any_loc(file(adopted_mpparse_r8_3)))&&any_area(any_loc(file(^xen/arch/x86/include/asm/mpspec\\.h$)))"}
 -doc_end
 
+-doc_begin="The definitions present in this file are meant to generate definitions for asm modules, and are not called by C code. Therefore the absence of prior declarations is safe."
+-config=MC3R1.R8.4,reports+={safe, "first_area(any_loc(file(asm_offsets)))"}
+-doc_end
+
+-doc_begin="The functions defined in this file are meant to be called from gcc-generated code in a non-release build configuration.
+Therefore the absence of prior declarations is safe."
+-file_tag+={gcov, "^xen/common/coverage/gcov_base\\.c$"}
+-config=MC3R1.R8.4,reports+={safe, "first_area(any_loc(file(gcov)))"}
+-doc_end
+
 -doc_begin="The following variables are compiled in multiple translation units
 belonging to different executables and therefore are safe."
 -config=MC3R1.R8.6,declarations+={safe, "name(current_stack_pointer||bsearch||sort)"}
@@ -222,12 +188,6 @@ definition is compiled-out or optimized-out by the compiler)"
 # Series 9.
 #
 
--doc_begin="The following variables are written before being set, therefore no
-access to uninitialized memory locations happens, as explained in the deviation
-comment."
--config=MC3R1.R9.1,reports+={safe, "any_area(text(^\\s*/\\*\\s+SAF-[0-9]+-safe\\s+MC3R1\\.R9\\.1.*$, begin-1))"}
--doc_end
-
 -doc_begin="Violations in files that maintainers have asked to not modify in the
 context of R9.1."
 -file_tag+={adopted_r9_1,"^xen/arch/arm/arm64/lib/find_next_bit\\.c$"}
@@ -274,22 +234,47 @@ still non-negative."
 -config=MC3R1.R10.1,etypes+={safe, "stmt(operator(logical)||node(conditional_operator||binary_conditional_operator))", "dst_type(ebool||boolean)"}
 -doc_end
 
-### Set 3 ###
+-doc_begin="XEN only supports architectures where signed integers are
+representend using two's complement and all the XEN developers are aware of
+this."
+-config=MC3R1.R10.1,etypes+={safe,
+  "stmt(operator(and||or||xor||not||and_assign||or_assign||xor_assign))",
+  "any()"}
+-doc_end
+
+-doc_begin="See Section \"4.5 Integers\" of \"GCC_MANUAL\", where it says that
+\"Signed `>>' acts on negative numbers by sign extension. As an extension to the
+C language, GCC does not use the latitude given in C99 and C11 only to treat
+certain aspects of signed `<<' as undefined. However, -fsanitize=shift (and
+-fsanitize=undefined) will diagnose such cases. They are also diagnosed where
+constant expressions are required.\""
+-config=MC3R1.R10.1,etypes+={safe,
+  "stmt(operator(shl||shr||shl_assign||shr_assign))",
+  "any()"}
+-doc_end
 
 #
-# Series 18.
+# Series 13
 #
 
--doc_begin="FIXME: explain why pointer differences involving this macro are safe."
--config=MC3R1.R18.2,reports+={safe,"all_area(all_loc(any_exp(macro(^ACPI_PTR_DIFF$))))"}
+-doc_begin="All developers and reviewers can be safely assumed to be well aware
+of the short-circuit evaluation strategy of such logical operators."
+-config=MC3R1.R13.5,reports+={disapplied,"any()"}
 -doc_end
 
--doc_begin="FIXME: explain why pointer differences involving this macro are safe."
--config=MC3R1.R18.2,reports+={safe,"all_area(all_loc(any_exp(macro(^page_to_mfn$))))"}
+#
+# Series 14
+#
+
+-doc_begin="The severe restrictions imposed by this rule on the use of for
+statements are not balanced by the presumed facilitation of the peer review
+activity."
+-config=MC3R1.R14.2,reports+={disapplied,"any()"}
 -doc_end
 
--doc_begin="FIXME: explain why pointer differences involving this macro are safe."
--config=MC3R1.R18.2,reports+={safe,"all_area(all_loc(any_exp(macro(^page_to_pdx$))))"}
+-doc_begin="The XEN team relies on the fact that invariant conditions of 'if'
+statements are deliberate"
+-config=MC3R1.R14.3,statements={deliberate , "wrapped(any(),node(if_stmt))" }
 -doc_end
 
 #
@@ -306,6 +291,17 @@ in assignments."
 {safe, "left_right(^[(,\\[]$,^[),\\]]$)"}
 -doc_end
 
+#
+# General
+#
+
+-doc_begin="do-while-0 is a well recognized loop idiom by the xen community."
+-loop_idioms={do_stmt, "literal(0)"}
+-doc_end
+-doc_begin="while-[01] is a well recognized loop idiom by the xen community."
+-loop_idioms+={while_stmt, "literal(0)||literal(1)"}
+-doc_end
+
 #
 # Developer confusion
 #
diff --git a/automation/eclair_analysis/ECLAIR/tagging.ecl b/automation/eclair_analysis/ECLAIR/tagging.ecl
index 78a0bc948b..e82277fea3 100644
--- a/automation/eclair_analysis/ECLAIR/tagging.ecl
+++ b/automation/eclair_analysis/ECLAIR/tagging.ecl
@@ -19,7 +19,7 @@
 
 -doc="Accepted guidelines as reported in XEN/docs/misra/rules.rst"
 -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"
+    "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.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.R11.7||MC3R1.R11.8||MC3R1.R11.9||MC3R1.R12.5||MC3R1.R13.1||MC3R1.R13.5||MC3R1.R13.6||MC3R1.R14.1||MC3R1.R14.2||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)"}
@@ -30,7 +30,7 @@
 
 -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.R4.2||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.R20.13||MC3R1.R20.14||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")
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Fri Oct 06 10:34:21 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 10:34:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613509.954062 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoi9v-0006Iz-7W; Fri, 06 Oct 2023 10:34:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613509.954062; Fri, 06 Oct 2023 10:34: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 1qoi9v-0006Is-51; Fri, 06 Oct 2023 10:34:15 +0000
Received: by outflank-mailman (input) for mailman id 613509;
 Fri, 06 Oct 2023 10:34: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=bl8M=FU=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qoi9t-0006HU-FG
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 10:34:13 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id e31a968d-6433-11ee-9b0d-b553b5be7939;
 Fri, 06 Oct 2023 12:34:11 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id BA2154EE0738;
 Fri,  6 Oct 2023 12:34: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: e31a968d-6433-11ee-9b0d-b553b5be7939
MIME-Version: 1.0
Date: Fri, 06 Oct 2023 12:34:10 +0200
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: Julien Grall <julien@xen.org>
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, Simone Ballarin <simone.ballarin@bugseng.com>, Doug
 Goldstein <cardoe@cardoe.com>, George Dunlap <george.dunlap@citrix.com>, Wei
 Liu <wl@xen.org>
Subject: Re: [XEN PATCH][for-4.19 1/9] xen/include: add macro LOWEST_POW2
In-Reply-To: <63f172c1-bda5-447b-bc8b-90563f3f3c2a@xen.org>
References: <cover.1696514677.git.nicola.vetrini@bugseng.com>
 <d27f52eaaa62ec4ebb9ce8b6cf243779d341367d.1696514677.git.nicola.vetrini@bugseng.com>
 <6102db25-2fd6-49fa-be66-ec2b627b019b@xen.org>
 <0197ecdcc5869dddecc98907f67ba0f1@bugseng.com>
 <63f172c1-bda5-447b-bc8b-90563f3f3c2a@xen.org>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <4ecd59b63bc5b7b8f4c24672432ba027@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 06/10/2023 12:22, Julien Grall wrote:
> On 06/10/2023 11:02, Nicola Vetrini wrote:
>> On 06/10/2023 11:29, Julien Grall wrote:
>>> Hi,
>>> 
>>> On 06/10/2023 09:26, Nicola Vetrini wrote:
>>>> The purpose of this macro is to encapsulate the well-known 
>>>> expression
>>>> 'x & -x', that in 2's complement architectures on unsigned integers 
>>>> will
>>>> give 2^ffs(x), where ffs(x) is the position of the lowest set bit in 
>>>> x.
>>>> 
>>>> A deviation for ECLAIR is also introduced.
>>> 
>>> Can you explain why this is a deviation in ECLAIR rather than one 
>>> with
>>> /* SAF-* */ (or whichever name we decide to rename to)? Is this
>>> because the code is correct from MISRA perspective but the tool is
>>> confused?
>>> 
>> 
>> The code does violate Rule 10.1 (a unary minus applied to an unsigned 
>> value is
>> deemed inappropriate by MISRA), but rather than changing a whole lot 
>> of places where this
>> construct is used (mainly in x86 code), the reasoning is that it makes 
>> more sense to isolate
>> it and justify its presence by the fact that on 2's complement 
>> architectures the result is
>> indeed correct.
> 
> This is explaining to me why you are adding LOWEST_POW2(). But this
> doesn't explain why you are not using /* SAF-* */ on top of
> LOWEST_POW2().
> 
> To me, we should only use ECLAIR specific deviation when this is a
> shortcoming with the tool.
> 
> Cheers,

Because of the way ECLAIR deviation comments work implies that in most 
cases the real
place where to put the deviation is the usage site
(the so-called top expansion location of the macro). Now, for 
widely-used macros this is
cumbersome and would clutter the code unnecessarily. It's way cleaner 
imo to have a single
line in the configuration with a clear justification that is present in 
the textual output
of the tool.
But then there are tool interoperability considerations, that would call 
for standardized
deviation mechanisms, if they do detect this as a violation (which I 
don't know).

In the end, it could be done with a textual deviation, if that's 
preferred, but keep in mind
that those are more fragile w.r.t. code movement.

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


From xen-devel-bounces@lists.xenproject.org Fri Oct 06 10:43:58 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 10:43:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613517.954075 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoiJF-0000Ow-5r; Fri, 06 Oct 2023 10:43:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613517.954075; Fri, 06 Oct 2023 10:43: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 1qoiJF-0000Op-2K; Fri, 06 Oct 2023 10:43:53 +0000
Received: by outflank-mailman (input) for mailman id 613517;
 Fri, 06 Oct 2023 10:43: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 1qoiJD-0000NP-Ml; Fri, 06 Oct 2023 10:43: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 1qoiJD-0003hk-Cc; Fri, 06 Oct 2023 10:43: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 1qoiJD-0006Ft-2n; Fri, 06 Oct 2023 10:43:51 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qoiJD-000608-2F; Fri, 06 Oct 2023 10:43: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=JsdXDXJISh7/bnQUGB5qBspeN9DVIuicYuBEJ+jMhPQ=; b=bUfzCY6/uLXlXs1xvIv4zS3Uk4
	o6kxBkG8kxdFb/fDktMoDZikXZlt8O3E8t1XMunbHFvP3y0MX+HAGNRsdXrI3HjfcjAoRIjV2Vge1
	JXBZnH7lnk6GDiy2MX3P2DOTw5DC/4UVjcJD1NAIO1Q0FuR8hoo+9GEOgrNjnDhl30O0=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183278-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 183278: tolerable FAIL
X-Osstest-Failures:
    xen-unstable:test-amd64-i386-livepatch:xen-install:fail:heisenbug
    xen-unstable:test-amd64-i386-xl-xsm:xen-install:fail:heisenbug
    xen-unstable:test-amd64-i386-examine:xen-install:fail:heisenbug
    xen-unstable:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:debian-hvm-install: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-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2: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-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-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-unstable:test-amd64-amd64-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-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-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-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-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt: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-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2: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-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1: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=02c98966360b76052779b0186784437af88f301e
X-Osstest-Versions-That:
    xen=02c98966360b76052779b0186784437af88f301e
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 06 Oct 2023 10:43:51 +0000

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

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-amd64-i386-livepatch     7 xen-install                fail pass in 183271
 test-amd64-i386-xl-xsm        7 xen-install                fail pass in 183271
 test-amd64-i386-examine       6 xen-install                fail pass in 183271
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm 12 debian-hvm-install fail pass in 183271

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183271
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183271
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 183271
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183271
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183271
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183271
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 183271
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 183271
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183271
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183271
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 183271
 test-amd64-amd64-xl-qemuu-win7-amd64 12 windows-install       fail like 183271
 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-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-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-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-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-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-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-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-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-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-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                  02c98966360b76052779b0186784437af88f301e
baseline version:
 xen                  02c98966360b76052779b0186784437af88f301e

Last test of basis   183278  2023-10-06 01:52:00 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                  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                                       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                                      fail    
 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


Published tested tree is already up to date.



From xen-devel-bounces@lists.xenproject.org Fri Oct 06 10:47:55 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 10:47:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613524.954085 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoiN7-0001wF-P9; Fri, 06 Oct 2023 10:47:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613524.954085; Fri, 06 Oct 2023 10:47: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 1qoiN7-0001w8-Lw; Fri, 06 Oct 2023 10:47:53 +0000
Received: by outflank-mailman (input) for mailman id 613524;
 Fri, 06 Oct 2023 10:47: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=vVKM=FU=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qoiN6-0001w2-Bi
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 10:47:52 +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 cb44a613-6435-11ee-9b0d-b553b5be7939;
 Fri, 06 Oct 2023 12:47:50 +0200 (CEST)
Received: by mail-wr1-x431.google.com with SMTP id
 ffacd0b85a97d-3296b49c546so273179f8f.3
 for <xen-devel@lists.xenproject.org>; Fri, 06 Oct 2023 03:47:50 -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-20020a5d4ace000000b00327cd5e5ac1sm1365673wrs.1.2023.10.06.03.47.49
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Fri, 06 Oct 2023 03:47: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: cb44a613-6435-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1696589270; x=1697194070; darn=lists.xenproject.org;
        h=content-transfer-encoding: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=t0rSCloZq4GvAHJPAki84R6+GutaNd3JbaDJiPVs1k8=;
        b=bcl5ZYRyr8Fb2cqKcsaD1hv2mAb+lI+Cj0AP+8ZXtgOCAePuvgmM1HCpIju4E705KP
         MpttFPcQ3p1Ga8LNX/gx3wESdwXdOHMo3TQVC5M7LiKz549eEL/8pOeNMerMI5216Gfl
         NbgudHtuOR9UDbYXwiuRNsjd0HeAZi9du6BIs=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1696589270; x=1697194070;
        h=content-transfer-encoding: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=t0rSCloZq4GvAHJPAki84R6+GutaNd3JbaDJiPVs1k8=;
        b=BJNc3woIjreNt8efkxtlsb2exA/1FSDj+tJ9IZX163mHTnrUXOucPC4pncRA/8qs+E
         9Wv7JVh46ICKbsE7qZAkU0KnVgJa7R+KCkZLeG57SCUWtYbhL87hUV2ob9gHTMLgF5gG
         lyjZVTAjI4PByR4w2h1eTPSuu5CeYlYljEyGBPMr6tHzqzDZHorJJJFh1QZrPCk3LHCl
         R52G0gXEQ4niIAQg0xVqzjxhzY8dOiq6Y16MDHvM2JVeF9DkVXZMHzBgUt97cWLHDxT+
         cBwfGhj30QZsZl6PJSd3bTSZAf3JgKoyiItZ+tU8p3ECmqVXZ2hI583tKExwHSe3iRVk
         hXVw==
X-Gm-Message-State: AOJu0YxHMSsIkVdhV89Czcdc/Wngzz+iG2wDfCMH6IY7zWpD1qL+cgRU
	qQOUai78MpoybykinZK6wmVZDA==
X-Google-Smtp-Source: AGHT+IGUj4tJdd4UnslZ3c+cyHTrYeXiYlAgqkyc1w2x8HpVX5U4972fx7C/UDoJoAfTRXhStiD56w==
X-Received: by 2002:a5d:680b:0:b0:31f:a259:733 with SMTP id w11-20020a5d680b000000b0031fa2590733mr6685874wru.20.1696589269678;
        Fri, 06 Oct 2023 03:47:49 -0700 (PDT)
Message-ID: <ac4842a9-7f62-4c64-9a3a-2ec2b1e97699@citrix.com>
Date: Fri, 6 Oct 2023 11:47:48 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH 2/2] domain: expose newly introduced hypercalls as XENFEAT
Content-Language: en-GB
To: Roger Pau Monne <roger.pau@citrix.com>, xen-devel@lists.xenproject.org
Cc: Henry Wang <Henry.Wang@arm.com>,
 Community Manager <community.manager@xenproject.org>,
 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: <20231006091353.96367-1-roger.pau@citrix.com>
 <20231006091353.96367-3-roger.pau@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: <20231006091353.96367-3-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 06/10/2023 10:13 am, Roger Pau Monne wrote:
> XENFEAT_runstate_phys_area is exposed to all architectures, while
> XENFEAT_vcpu_time_phys_area is currnelty only implemented for x86, and hence
> the feature flag is also only exposed on x86.
>
> Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>

Thanks for doing this.

> ---
>  CHANGELOG.md                  | 2 ++
>  xen/common/kernel.c           | 6 +++++-
>  xen/include/public/features.h | 9 +++++++++
>  3 files changed, 16 insertions(+), 1 deletion(-)
>
> diff --git a/CHANGELOG.md b/CHANGELOG.md
> index e33cf4e1b113..41da710426f6 100644
> --- a/CHANGELOG.md
> +++ b/CHANGELOG.md
> @@ -31,6 +31,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
>   - 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).
> + - Introduce two new hypercalls to map the vCPU runstate and time areas by
> +   physical rather than linear addresses.

I'd suggest linear/virtual here.  Linear is the correct term in x86, but
virtual is the correct term in pretty much every other architecture.

> diff --git a/xen/include/public/features.h b/xen/include/public/features.h
> index d2a9175aae67..cffb2f14a562 100644
> --- a/xen/include/public/features.h
> +++ b/xen/include/public/features.h
> @@ -111,6 +111,15 @@
>  #define XENFEAT_not_direct_mapped         16
>  #define XENFEAT_direct_mapped             17
>  
> +/*
> + * Signal whether the hypervisor implements the following hypercalls:

This is not what the hypervisor implements.  It's what the domain is
permitted to use.

There also needs to be a matching patch to public/vcpu.h to require
implementations to check for these feature bits before using the new
hypercalls.

Also,

diff --git a/xen/common/domain.c b/xen/common/domain.c
index b8281d7cff9d..df994bd30fd2 100644
--- a/xen/common/domain.c
+++ b/xen/common/domain.c
@@ -1998,6 +1998,10 @@ long common_vcpu_op(int cmd, struct vcpu *v
     {
         struct vcpu_register_runstate_memory_area area;
 
+        rc = -ENOSYS;
+        if ( 0 /* TODO: Dom's XENFEAT_runstate_phys_area setting */ )
+            break;
+
         rc = -EFAULT;
         if ( copy_from_guest(&area.addr.p, arg, 1) )
             break;

and a matching one for XENFEAT_vcpu_time_phys_area because I'm even more
serious about this becoming a domain controllable setting following what
OSSTest had to say overnight.

~Andrew


From xen-devel-bounces@lists.xenproject.org Fri Oct 06 10:48:18 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 10:48:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613526.954095 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoiNW-0002LD-25; Fri, 06 Oct 2023 10:48:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613526.954095; Fri, 06 Oct 2023 10:48: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 1qoiNV-0002L6-Vc; Fri, 06 Oct 2023 10:48:17 +0000
Received: by outflank-mailman (input) for mailman id 613526;
 Fri, 06 Oct 2023 10:48: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=Twl1=FU=citrix.com=prvs=63654eace=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qoiNU-0001w2-Kw
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 10:48:17 +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 d899e4ac-6435-11ee-9b0d-b553b5be7939;
 Fri, 06 Oct 2023 12:48:13 +0200 (CEST)
Received: from mail-dm6nam11lp2176.outbound.protection.outlook.com (HELO
 NAM11-DM6-obe.outbound.protection.outlook.com) ([104.47.57.176])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 06 Oct 2023 06:48:07 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by CH3PR03MB7482.namprd03.prod.outlook.com (2603:10b6:610:19d::14)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.34; Fri, 6 Oct
 2023 10:48:02 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::66ca:3a42:baeb:9ecf]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::66ca:3a42:baeb:9ecf%6]) with mapi id 15.20.6838.030; Fri, 6 Oct 2023
 10:48: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: d899e4ac-6435-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1696589293;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=vT85gPsCHM/gsw+9SNg/qO2IhSQB+iqX2Kkfda4vY7w=;
  b=WUKpWGOqCHca7BuRNwRoKHbBS+aUEDJHAcGyyBGNhXen/6ZsYaZfyIME
   kY6nKbQ0Zxe+UlSGpHuB8r59XyuPtXGXG/4p7MfBjlF5oyQwiXhZnGdMo
   goVD+mco8vpEtolPzewkum/yhjFhkjFo7joKU/UBFiwo2IJ4jvDhG3FLD
   M=;
X-CSE-ConnectionGUID: OvIsF6HKRJq8SVND9Mxoig==
X-CSE-MsgGUID: a2EZkzs4TMGE6IcM8QGtJw==
X-IronPort-RemoteIP: 104.47.57.176
X-IronPort-MID: 127579183
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:ZBJvkK+9FugYJnbWrITQDrUDWn+TJUtcMsCJ2f8bNWPcYEJGY0x3z
 mofWj3QOvqCZDfxKI8laoS3/R5VvMWGz9ZqHAM//C08E34SpcT7XtnIdU2Y0wF+jCHgZBk+s
 5hBMImowOQcFCK0SsKFa+C5xZVE/fjVAOK6UKidYnwZqTZMEE8JkQhkl/MynrlmiN24BxLlk
 d7pqojUNUTNNwRcawr40Ird7ks01BjOkGlA5AdnPagW5AW2e0Q9V/rzG4ngdxMUfaEMdgKKb
 76r5K20+Grf4yAsBruN+losWhRXKlJ6FVHmZkt+A8BOsDAbzsAB+v9T2M4nQVVWk120c+VZk
 72hg3ASpTABZcUgkMxFO/VR/roX0aduoNcrKlDn2SCfItGvn9IBDJyCAWlvVbD09NqbDklp6
 90DBm4tTSqhnrKN/pSXG8x8gcUseZyD0IM34hmMzBn/JNN/GNXvZvuP4tVVmjAtmspJAPDSI
 dIDbiZiZwjBZBsJPUoLDJU5n6GjgXyXnz9w8QrJ4/ZopTWMilUujtABM/KMEjCObd9SkUuC4
 HrP4kzyAw0ANczZwj2Amp6prraVwn6kCdtCT9VU8NZj2nChxX4IVCEzenblgPKc2neRR/BAf
 hl8Fi0G6PJaGFaQZtvgWxy1plaUsxhaXMBfe8Uq5QfIxqfK7gKxAmkfUiUHeNEgrNUxRzEhy
 hmOhdyBLRxitqeED02U8Li8pCm3fyMSKAcqZyUJUA8E6NnLu5wog1TESdMLOLWuktT/FDX0w
 jaLhCsznbMeiYgMzarT1U/DqyKhoN7OVAFd2+nMdmes7wc8aIv7YYWtsAHf9awZc9jfSUSdt
 n8ZncTY9PoJEZyGiC2KRqMKAa2t4PGGdjbbhDaDAqUcythkwFb7Fag43d20DBwB3hosEdMxX
 HLuhA==
IronPort-HdrOrdr: A9a23:tJRfuajVKyx7khyX+aM2K/wvs3BQXgMji2hC6mlwRA09TyX4ra
 yTdZEgviMc5wx/ZJheo7690cW7IE8036QU3WBpB8bAYOC+ghrLEGgA1/qG/9SfIVybygcH79
 YGT0EWMrSZMbEdt7ed3ODSKbsdKbe8mpxBcY3lvg5QpHlRGtldB4wTMHfhLqX9LzM2f6bQrf
 Gnl7d6mwY=
X-Talos-CUID: 9a23:JIcotW9W/sthg5ts4sSVv2kKO9sLLF3+9lXJc3SGL0o4ba2SSFDFrQ==
X-Talos-MUID: =?us-ascii?q?9a23=3A4sBqdA8c396cVTw/7wjz7L2Qf84yzpatGltRrbA?=
 =?us-ascii?q?plpelPgkgAhiBriviFw=3D=3D?=
X-IronPort-AV: E=Sophos;i="6.03,203,1694750400"; 
   d="scan'208";a="127579183"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=EvZb7BLOzbZNQXnNxbe+fKgoRt8pztyoF3smhtrFwgmagAMmTm4FliuaxNMJoarofqLne9nH39xrgmIssO0E46urXHosZvzIKwuNVgg+B6qjO7H032SlN4zfDvJJY6VS7AstAPCyDBO246hgED7pRnoX0/r76mOYy1FnrQva7W/WUOyaIDFn6GFtZYyDUKizYKys0Ig4cWP3tRJL+Y+njZLPb8s8gVOMra+m65k6Luhh8cQuVbLtc0CO7WiiDs76luwGPhBAsQx3g0SilxcaIIt2l6VSl5fRYrb0iHXoBb+OP+WtGqTSF2O4MUCOVWbyGD83/kHLOgIa09d7+vZiEQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=iKA/wEn/ogry3aoge0788jmxuEqv0FIPsFGfzdUssm8=;
 b=ltibYv+QQV6/5MSDkQ5DVyvclc0U7BejgSswL3NBGnl+phyDmCguVGcJ8cAL48OvRB80n8nuC8nHoP0WzbzW1K9c1FUqX7Om35RQ6uUwFnxun0R+PietoMxzB6Hn3uZdbA4TtyT6loXAbHf/QiRqbI0vSv0rRCK7s0g5ZgD2MEd45SHRjSJ+8bb/2kJtJfPvVqb8RQW19SQdrAdmn8GFXsgKr1cfwAZW+ifdLaU3R0/JBz0yfl4qFKvvDAY5rPh17ltFFvIxOk8KRhVrKLsJKAqjHWqih0KlLtWu+HHF/peP+M+qkWH3gv7Z3owiR12rASHeLuG7jRn/cCWIMdabJA==
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=iKA/wEn/ogry3aoge0788jmxuEqv0FIPsFGfzdUssm8=;
 b=MkQW5gXIKEG5uBUPIYF3hpl2O4Sk5IxCXGlPq+bPbJ8JBO05FonCyaF58MebiKGJh0nvgitkuH9jIkbh7xxB3Q9hM/IyCw9ZGItUts2GubekXJWi7cxB0sZAEf/Uy9tsD5dQwTp5B8KRd8BfrGAHKbdIjAfdf1spjg/OmFGjMOk=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Fri, 6 Oct 2023 12:47: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, Henry Wang <Henry.Wang@arm.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] domain: fix misaligned unmap address in
 unmap_guest_area()
Message-ID: <ZR_l2wuaySHYzW5V@MacBookPdeRoger>
References: <20231006091353.96367-1-roger.pau@citrix.com>
 <20231006091353.96367-2-roger.pau@citrix.com>
 <3880a214-ece2-4654-a94e-04f2e1d02353@xen.org>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <3880a214-ece2-4654-a94e-04f2e1d02353@xen.org>
X-ClientProxiedBy: LO2P123CA0101.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:139::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_|CH3PR03MB7482:EE_
X-MS-Office365-Filtering-Correlation-Id: 2a90601b-cbbb-4dc5-2006-08dbc659b604
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:
	CCcqZAjB0e2ZKJAnh2rInDWUJw00AAeDbA4CoJqukRb3z7cjWYUBlKViDFKQFxdlaTaOEJtt6CYBk2rGgyPQdsmo0FstDD3GI/r/Ruea7YUk/nUC/tIxPuyPGwsv0l6AId3dYCXEaeRfY5OWNDIJreGV03ORb0xe70g5loPXiDH9DO+d76PHe3gbilp80n1Ko8K3BbEVgwNBxyTFD/qo6oC4sMyjoAAJ94Nx3TlxurCVlSh+kmjhc0ShS0a2tPYPPs11u0/uTtZAZzem4wFbgOHFlDrVmCeRBqxzrwKBtRcBAaPz7pz7JUGo7FRZ35HeWeE1eyVVKzM4tfg21jRFfe67t2FENVn43e++VYd41HlaBYZ75+VmllmfQpI2crfy3UZWwhTAMmUbpkzQTP4N/E4cJz1JDer5SM+uT2D6Ipjww3wmvZS2RFmdJyztxlNc/hLSBBCGFjEB+zlC+VXt9/hpHfrrz9ghY0eRhq18X6NDQ0q9DJwPyAE0NFf8TfRKA8WgmLDfEVFK60YfMi5QiytI/MW7rLs0npuwOM3Lm+jOMe1NNVaiQGQlzA+fP7Bs
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)(366004)(346002)(230922051799003)(451199024)(1800799009)(186009)(64100799003)(9686003)(66899024)(53546011)(26005)(38100700002)(85182001)(82960400001)(86362001)(5660300002)(4326008)(2906002)(83380400001)(6666004)(478600001)(6506007)(6486002)(6512007)(41300700001)(6916009)(8676002)(54906003)(316002)(33716001)(8936002)(66476007)(66556008)(66946007);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?NDU3MUFyYldER3ZsNkpCa1ZPVzFQS3BNZEd6MENVczhRb3R5YXUzamx0OGRR?=
 =?utf-8?B?a05mUlV4cU11YnQyYUltSXpwTkdaaFQwb3VYWmpobHVKU1lYZThzVkc1Yldn?=
 =?utf-8?B?U2hxTXYycnQ5M2UrMVoyRFlScE9hMHVsQi9OQ3pPRUdWcmo5MXhobGxOS0xh?=
 =?utf-8?B?MXRJeEtOYkdNWDRNUE1QY29BZnBQM1gzS2xqeTFoWUdGQWpwcWhMRFdmS3p6?=
 =?utf-8?B?VnFOM3haakhFNS9PSUpLaHhwdFNiMW0valBGMG94NmsrV2t6ZW45aGZORnhT?=
 =?utf-8?B?K2JYKzg0aHVXTEh0ejJpS3FOYlFJMG9oVDdaUzRFVTJUd0NLS3pZRWl0dkNY?=
 =?utf-8?B?bG43OEJJQnEyd3BoWkRBWGRXNGM3MEVvK1VMWjB5elhQQUprTlRuWUs0ZmQ2?=
 =?utf-8?B?ZElzaUw4NXZOVHhRUVA1REFVMCtRcTQvaUo0Z3F6UWREQ1FCM2dPODlFbHJL?=
 =?utf-8?B?SytJSGRLT2ZmT1BkQVBMUE5qeWNnd1JzOGtBeGhPaHM2YlpPOGpYSHdILzZu?=
 =?utf-8?B?NUMzdDVPSU4zRVNleG9YU2FJcC92MWdOa3hhWm9NWkcxc3NMRDVNWU9iSERy?=
 =?utf-8?B?OW00ZHRvQkRJQ3MzVmRsdTBDQWtsUUkwRzdJNW5sb25rQUltSFpoTnB1ZGU5?=
 =?utf-8?B?LytHV1VGaStINnVwY0EyM2t4RVF3Uk04eVh2V0R2c2dLSkJJb0duaUhST2Vu?=
 =?utf-8?B?QW9OZ0RUblBBMHdwQTFmbGdMWWNUVVpYdFNma29FbnlHN1BYQ21CcjJuemdX?=
 =?utf-8?B?OWtwV1R2OEFaNThudHA1eWRtN3lKczRkMERJOTM3cklhaE9MbURKUFVMcjYx?=
 =?utf-8?B?ZTlxZmZNd3FBbk9zbkhNRnlNZnBVODZIQnp0dVpyc3lLQWVQUkdLVWxUelFT?=
 =?utf-8?B?TzRPY1JRdU9BSDAyTlZHZG5TQkg2TDVIeElhbFFuY0pSSUd2cVZiMjJpR0VC?=
 =?utf-8?B?UkVQY0h1V2NBTXB0dG45eVpyb0hKTnRHUlFPOFBVRzN2YmhDY1AwMVA5RmFi?=
 =?utf-8?B?ay9BVy9YQ1gwL28ybGdOc21xMDZsVWRFVi9KaGR5Z09BMGhEd0VDbVhlNDlH?=
 =?utf-8?B?MnM4SUJoM3h3M250Z3VSWjIxRVhITWxtQUFUa1d1THhSZk4xbXJMLzhnU2g0?=
 =?utf-8?B?K1hFVWZacTBGV3ZBZm5LaXk4NlkzMy9LMXl0NnBCaXp4NFJFSmFVSG1DS1ZH?=
 =?utf-8?B?ZXZrR0VsMG5tU0xkSVpUTUVXc1RCeUd6MlJjWDdzWENnaTlWTzd4dCtwZ0FK?=
 =?utf-8?B?MVdNNGN5dnNhbUJHRzRhNDVFVUwzS2lkNml4aGFWR3lHeGplSXpBcjMvcjQ5?=
 =?utf-8?B?WlF3bk9TUmk2NkFkbE9lbmdyLzlFM20vVG5pODBOYys3THVvOFNINmhYUGhP?=
 =?utf-8?B?d2dQOTBDSm9QSFBoQ0s3ZGRRT3hKdGtmNkZDWXdERGFvbVhIM2pJQ214M2R6?=
 =?utf-8?B?RWNNZFRGZHpXRTJoUDV5M2VmRWlJdThFYTNtYjlXcUFaN0txQXlzK2JFVC84?=
 =?utf-8?B?NWlIWHJXTW9NTXZwRjMyWGRpcFlHWlpsYXRCUzBCNTdFZmFDd3hiWDJuQXpj?=
 =?utf-8?B?V1d1RlJlWEtGRytoTXB3NU1KNG1GL2RGTGhuQ0FUTEdsK3BEMHBTa3B4dXh4?=
 =?utf-8?B?em1WZzFJNkhZOFJ3UFpDeFN2VXVZdEM5TEkzaklQYTMrWktZbitsMWd4Sllv?=
 =?utf-8?B?RUFtemJwejFKTlpCNmxDOGcrQkUzYS9rYkhhbHlzTFhzbzcySGluZ3NIa0xa?=
 =?utf-8?B?Mm5qRjFic1pXbTJUTjRXSSs5dmlsc3hYYTVaK0duV3ZLdUdMc1ViRFNZZUl6?=
 =?utf-8?B?L1psdzNnSVovZ1pHdlRRUGVtRkVzNnV0Vm1tUG9KUGptTjJNNGhrUm9EUjlX?=
 =?utf-8?B?K0lvRjRzZlE0U1pweTJYQTlNSmZ4alVFNTlIN09XZkppMUxZVENGRGZ1Ny8y?=
 =?utf-8?B?S3F2YWdhUHB4OS9Ba1d3TGc1UC8rMTYxWFg1MmJKSG5wNGMxc3Q4enJLTkpj?=
 =?utf-8?B?MmVtTHFUdXlIVHpVK1JUbmJuWkRnYmY4dFhTRkloKzB4a1owc2d6d3I0TS9K?=
 =?utf-8?B?bDUvUlA0SlRrSGNSRmc2MzFqQlJRazZVcEkwcDh3OWJVUlZqVGZMck84MmFB?=
 =?utf-8?Q?xTV2n7APlesFWkfmWEO3BC4cV?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	EowndA6EdYCaxzs2zAgGswBExMFTgiWSuHiMpxp7PPkVOgCGADyuo3iuGVgU0Bx2lQ1/Vy/JdRiVFwe3G+uJOkiMQh/xI7Gjwt/bSTchxDmWCuZ+D/0rfd1YW1F92H8V44SlRVse8dmSGr5EID+0+n54oV0tWCvXs99ShHJurOLLUflLdpkahSbVMcPQSXOQ23oVs+0se0W68kaQeJbZJik7DwF8BTaJ1uoAOKgr4fbMie7utmu7iAiHzfJ5phjDQS9Dg18e7aaxf7IsodNQfprbCZhk9JuS4dqFWi7Pb4xgGygZoiw4YZWwAW3J1DIeJwIgxTUbDt7sQC5GGO8wF1ZrikkdM2fuwWSy4hkpkBidECCNMPT6/OkykgrOarK7gyyX83ZG+P9GPBk5EOr7xNU7FLC3QfA25+nE34phXX10l4tyb1i/qOBfTbCAdfm/rjhSxFp7Fz/f+srmbHSn4OjwgcUCPwgf5p0XiTQSobTU/4RcEVqY561cgkSN+YaDWddy289BseR1zb1Zh3k+ictbm6SD9PrxWf1uxy/CH6p7hwUPExXKBO/cNe1Vfdchrj1+q1sDXfQtXbZ5acryb94NMRX5xFY0PSlICn1XlrIDI9M4XsI68TNOkgtUzVMQITkQDX2+QydjP4XZ+awTyxbZWe61xMWrkEkM3MFAnFmqs9KIOtLTYfejwaZznqtOMNJpgjStAusSFENf4weD7esRUZqjWJJ4ZiTz8P6kWCQoDFDOahycsExxULMsH9CS89594kmFH+6ODRrPrk/XTxGRKIib9iulDGu5p5OolP2EWA/Kv7AJFt4WoC+OieIfJUFQjmnZzZIJv0Ps7DaF30EfqE2YH/gnhmv4MeOUKGHre0/3xC7bhltgwBUXm0Zu
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 2a90601b-cbbb-4dc5-2006-08dbc659b604
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Oct 2023 10:48:01.4470
 (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: 9WgRr9eZllkj5dACq1zAnHy5SMUDb8IS/1rH/y0IDWhIJx0MSmoO/XhtEZ3o8fXe0UgLoXEdAWQe4u+kbkZZ2w==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH3PR03MB7482

On Fri, Oct 06, 2023 at 11:08:09AM +0100, Julien Grall wrote:
> Hi Roger,
> 
> On 06/10/2023 10:13, Roger Pau Monne wrote:
> > unmap_domain_page_global() expects the provided address to be page aligned, or
> > else some of the called functions will trigger assertions, like
> > modify_xen_mappings() on x86 or destroy_xen_mappings() on Arm.
> > 
> > The following assert has been reported by osstest arm 32bit tests:
> > 
> > (XEN) Assertion 'IS_ALIGNED(s, PAGE_SIZE)' failed at arch/arm/mm.c:1243
> > (XEN) ----[ Xen-4.18-rc  arm32  debug=y  Not tainted ]----
> > (XEN) CPU:    0
> > (XEN) PC:     00271a38 destroy_xen_mappings+0x50/0x5c
> > [...]
> > (XEN) Xen call trace:
> > (XEN)    [<00271a38>] destroy_xen_mappings+0x50/0x5c (PC)
> > (XEN)    [<00235aa8>] vunmap+0x30/0x1a0 (LR)
> > (XEN)    [<0026ad88>] unmap_domain_page_global+0x10/0x20
> > (XEN)    [<00208e38>] unmap_guest_area+0x90/0xec
> > (XEN)    [<00208f98>] domain_kill+0x104/0x180
> > (XEN)    [<00239e3c>] do_domctl+0x8ac/0x14fc
> > (XEN)    [<0027ae34>] do_trap_guest_sync+0x570/0x66c
> > (XEN)    [<002019f0>] arch/arm/arm32/entry.o#return_from_trap+0/0x4
> > 
> > Fixes: eadc288cbb0d ('domain: map/unmap GADDR based shared guest areas')
> > Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
> > ---
> > unmap_domain_page_global() and vunmap() should likely have the same alignment
> > asserts, as not all paths lead to detecting the misalignment of the provided
> > linear address.  Will do a separate patch.
> 
> unmap_domain_page() seems to be able to deal with unaligned pointer. And
> supporting unaligned pointer in vunmap()/unmap_domain_page_global() would
> simplifyy call to those functions.
> 
> So I would consider to deal with the alignment rather than adding ASSERT()
> in the two functions. destroy_xen_mappings() and modify_xen_mappings()
> should stay as-is though.
> 
> Anyway, I don't think this is a 4.18 material.

Maybe, I don't really have a strong opinion.  It seems more sane to me
to expect a page aligned linear address if the function is unmapping a
page, leaves less room for misuse IMO.

> > ---
> >   xen/common/domain.c | 2 +-
> >   1 file changed, 1 insertion(+), 1 deletion(-)
> > 
> > diff --git a/xen/common/domain.c b/xen/common/domain.c
> > index b8281d7cff9d..2dcc64e659cc 100644
> > --- a/xen/common/domain.c
> > +++ b/xen/common/domain.c
> > @@ -1634,7 +1634,7 @@ void unmap_guest_area(struct vcpu *v, struct guest_area *area)
> >       if ( pg )
> >       {
> > -        unmap_domain_page_global(map);
> > +        unmap_domain_page_global((void *)((unsigned long)map & PAGE_MASK));
> 
> Looking at the code, I can't find where 'map' may have become unaligned. Do
> you have a pointer?

In map_guest_area(), there's:

if ( ~gaddr ) /* Map (i.e. not just unmap)? */
{
    [...]
    map = __map_domain_page_global(pg);
    if ( !map )
    {
        put_page_and_type(pg);
        return -ENOMEM;
    }
    map += PAGE_OFFSET(gaddr);
}

> Depending on the answer, the call in map_guest_area() may also need some
> adjustment.

Indeed, I've missed that one, let me spin v2.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Fri Oct 06 11:03:03 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 11:03:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613534.954105 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoibe-00061k-A7; Fri, 06 Oct 2023 11:02:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613534.954105; Fri, 06 Oct 2023 11:02: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 1qoibe-00061d-6t; Fri, 06 Oct 2023 11:02:54 +0000
Received: by outflank-mailman (input) for mailman id 613534;
 Fri, 06 Oct 2023 11:02: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=Twl1=FU=citrix.com=prvs=63654eace=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qoibd-00061V-5V
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 11:02:53 +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 e22a22ae-6437-11ee-9b0d-b553b5be7939;
 Fri, 06 Oct 2023 13:02:48 +0200 (CEST)
Received: from mail-bn8nam04lp2043.outbound.protection.outlook.com (HELO
 NAM04-BN8-obe.outbound.protection.outlook.com) ([104.47.74.43])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 06 Oct 2023 07:02:38 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by BL1PR03MB6119.namprd03.prod.outlook.com (2603:10b6:208:318::24)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.33; Fri, 6 Oct
 2023 11:02:34 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::66ca:3a42:baeb:9ecf]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::66ca:3a42:baeb:9ecf%6]) with mapi id 15.20.6838.030; Fri, 6 Oct 2023
 11:02: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: e22a22ae-6437-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1696590168;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=eYRPzH+0npMSXMQ3zf6SEA4wzt0YhvJur0jdRIAJaJ0=;
  b=VG2cutIn02VLGBYk43i1M+RCGGrvBeN0Af2vTbDiBYpOeuAb3WqFEE6v
   kw6wLeYLTS6dIDcarCdsapRzPi5siJpWovpue/tEh5VI4ma1y57Vw4um3
   9fS5JB3QpzwjiKaPMIWcxcRkqLfiur05DNZRHArwd6vRqgjXnb+AKk44A
   U=;
X-CSE-ConnectionGUID: Dd/EhDJISIGvSNPZJUB46g==
X-CSE-MsgGUID: 3Mum9GEDSUSNnWmI2r6znw==
X-IronPort-RemoteIP: 104.47.74.43
X-IronPort-MID: 123432574
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:wxKOQK/Azh/pHk6LtlblDrUDBX+TJUtcMsCJ2f8bNWPcYEJGY0x3x
 zBNXTuOaP+KYmLxedx/aI+x8kxQ75WEx983TgNt/ns8E34SpcT7XtnIdU2Y0wF+jCHgZBk+s
 5hBMImowOQcFCK0SsKFa+C5xZVE/fjVAOK6UKidYnwZqTZMEE8JkQhkl/MynrlmiN24BxLlk
 d7pqojUNUTNNwRcawr40Ird7ks01BjOkGlA5AdnPagW5AW2e0Q9V/rzG4ngdxMUfaEMdgKKb
 76r5K20+Grf4yAsBruN+losWhRXKlJ6FVHmZkt+A8BOsDAbzsAB+v9T2M4nQVVWk120c+VZk
 72hg3ASpTABZcUgkMxFO/VR/roX0aduoNcrKlDn2SCfItGvn9IBDJyCAWlvVbD09NqbDkli+
 bs1KBwvTyuiqPyN5oqJaNRG2poseZyD0IM34hmMzBn/JNN+HdXpZfWP4tVVmjAtmspJAPDSI
 dIDbiZiZwjBZBsJPUoLDJU5n6GjgXyXnz9w8QrJ4/ZopTePilAquFTuGIO9ltiiX8Jak1zev
 mvb12/4HgsbJJqUzj/tHneE37WUwXihBd1OfFG+3qVPnVjC6UE/MyAtc12EpNjjkBCsXc0Kf
 iT4/QJr98De7neDXtT7GhG1vnOAlhodQMZLVf037hmXzajZ6BrfAXILJhZhZdo8pYkJTDol/
 laTmpXiAjkHmLaSTHeA8LaIvHW3MC4cImIYTT8JSxMf5Nvuq511iQjAJv5hGqOoitz+GRnr3
 iuH6iM5gt07j9MP1qi91UDKhXSrvJehZhUu+gzdU2ah7wV4TI2ofYql7R7c9/koBJmdZkmMu
 j4Dgcf20QwVJZSElSjISuNdGrisv6qBKGeE3QUpGIQ9/TOw/XLlZZpX/Dx1OEZuNIADZCPtZ
 0jQ/whW4fe/IUeXUEO+WKrpY+xC8EQqPY2Nuiz8BjaWXqVMSQ==
IronPort-HdrOrdr: A9a23:s5XvR6zds9B5Gqd2gYuoKrPwIr1zdoMgy1knxilNoH1uHvBw8v
 rEoB1173DJYVoqNk3I++rhBEDwexLhHPdOiOF6UItKNzOW21dAQrsSiLfK8nnNHDD/6/4Y9Y
 oISdkbNDQoNykZsfrH
X-Talos-CUID: =?us-ascii?q?9a23=3AgzqrMmisPQro0w1CAEdmIZr91zJuXnGa4Xf8AW6?=
 =?us-ascii?q?DKEl3c5ute32t0v86nJ87?=
X-Talos-MUID: 9a23:nrMqcgrfKg9NV8Bt7AQez2pHKcI5zImCM302t5M5vujeL3JiPSjI2Q==
X-IronPort-AV: E=Sophos;i="6.03,203,1694750400"; 
   d="scan'208";a="123432574"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=JAyfpvPyOtBW6Qz177fsBaeI+YpmHm0BifaRM6llxp7E1+DiCW2HgMz4RLAcr6JVm6/JqhYR5trvAHdTlpP/jS3RgnFXhCBl+8caQ4U5NRunWqTCc8ciFZx3M5Jn0+NIugNv8PxAOtSd0Fe0GMfyFgyXqcqSMLnc1DGVRoKiwfAmm+VCRCe5/p731/MCyGx4chIr3PtcqI8V7qnOByiR4O0/nHBOrQTZVWLHG1al+0PtTFQn2VpXKUdHWWpdn9Tv/4C2Hb1H+SrrsiZMhknv84gXVf4XoJ+yrYvYdYg9q+uki8T08hbeVggFGTmKVclLqMw5j4+RP4YigCt3Ec6QwQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=06RCNd/zs+ztDoGXCOafYvpDQUuKCIOV2pbc8RZUWzg=;
 b=Yrqoy4LCDfpf28GM7LFSecxnCJ8BEdtF6NmrSkapw/aGluDP6vXLMbmQKomCoK7EfmSMgHwl2Zw+A7SdPlipjKTnoSnFhXZUegB7ewLV3jrDYFXd4ZK0KG4DkNlk2C4169TGsBmC8LXQnLvLJLYsSR9aTPbXD2wcWEm09CPrjX3ucHpripEokX7n2l1vVaHHgQf6nvUYVQYdcAoHMRlkQa7eEgqNIB4Mj36oT9v+qetUPl2E/s3b4uCzSmurJ4diI5tlXYSC+q3F0w817efwh5uvbKsqj4aOkpU52vPSF84Isg1WfcAAXThIwZ2226pVnBbmLLhgyimcEe1zvkGy0w==
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=06RCNd/zs+ztDoGXCOafYvpDQUuKCIOV2pbc8RZUWzg=;
 b=ma+Y8hBe+itbMaR0ppn+4WGtptXra4uBuW4GCyjuY1Ba+UO9/e/f8aTAb6R9eqEWttpRDHUABa7bC01aEWKuKrpWcalu4cBbL+mNyXP1PULvHYR4ioomZc8iEVvv7Q7k4vPET3DEirsygQIeYlFkQlCMfSFMEjTaCL6iX/qNDYA=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Fri, 6 Oct 2023 13:02:29 +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, Henry Wang <Henry.Wang@arm.com>,
	Community Manager <community.manager@xenproject.org>,
	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 2/2] domain: expose newly introduced hypercalls as XENFEAT
Message-ID: <ZR_pRUvNLXQ0ftt1@MacBookPdeRoger>
References: <20231006091353.96367-1-roger.pau@citrix.com>
 <20231006091353.96367-3-roger.pau@citrix.com>
 <ac4842a9-7f62-4c64-9a3a-2ec2b1e97699@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <ac4842a9-7f62-4c64-9a3a-2ec2b1e97699@citrix.com>
X-ClientProxiedBy: LNXP123CA0021.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:d2::33) To SJ0PR03MB6423.namprd03.prod.outlook.com
 (2603:10b6:a03:38d::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|BL1PR03MB6119:EE_
X-MS-Office365-Filtering-Correlation-Id: b2d217e3-ee5a-4bb5-5312-08dbc65bbe8a
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:
	zmW11JT5nr4Ao2PJBLnIcAwMbGVz6U0yiL+83f/LwbdWL8NxBL+aN/LGQKWxcXD+BwlfQcEDqShIuoA4w45omMh+0nh+KkXPJMX4RCkJkr6FGNBFoP9tcbrd5FTzKhuyODW1dB6Bwgo97rB5I0yuUbyJH2FoNPDHtjBXdTkUobRCv7adTDQcZUhSruDARykoA7lov1P2KdC3ij7NyyKi3CrgIAlx0Qw/da3Clv2QHeF3tMxIn5sYibxaGxTqDUN3KqDX64Ku1m8KuhTnqLOmJkdc4N1giA93aY9/RE6nX+hxrn7VmutcXRgd1xOmDT9Fm2/U8UFe21aKZaWTZhbK2y92nVTNj0AOG3TePDaGSujuDaWmDJXD2eMt4zveiFDLs7fbae+/f/YsgATXEFMcDwKi1ilLg1+kNt5SGD1w2Dm+YveNkK5uQluGh5xbg8FlR83W5Cio5rDX/+drp0KVEYYMfyxmvi+HELwJN8k5tyO1GOClngqc3ztXa8d7gJq9ctRuhHyYNIAzifuiQ+dvJHuEqrTgf+kwi5Zphqo0Iwg=
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)(39860400002)(376002)(346002)(136003)(230922051799003)(1800799009)(64100799003)(186009)(451199024)(53546011)(6506007)(6666004)(478600001)(6486002)(6512007)(83380400001)(9686003)(26005)(33716001)(2906002)(316002)(41300700001)(54906003)(66476007)(66556008)(66946007)(5660300002)(6862004)(4326008)(8676002)(8936002)(85182001)(6636002)(38100700002)(86362001)(82960400001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?VzRDbVFEQ1VaNjdWd3o3b1hiS0JlL0V5ZzNZVTA1MkdyR2kzaXZOR0J0b05C?=
 =?utf-8?B?RXZxMnZ1SkdqaEE1VnM2Nm8xNUVYZ3J0c2d5VXkyemx3N2d5RjVYRVJoRUNH?=
 =?utf-8?B?d0hMYmt4NVNDQk5mWWJWVEFHQlBqa2dBYURmWXA0RTFCbmUzNmVITUtweFFa?=
 =?utf-8?B?UjJrMHNyU2pwS0VBSm15YUtCdW1VbUZFdlRCVGJQWmRZTU1GMVhNVi9lL1kw?=
 =?utf-8?B?UHpPZVFlZGhvY0w3M0xjUnNpWnY2eGx3eHVmTlhOTGNmTmJYRHFqdEJkQUFm?=
 =?utf-8?B?Y09CakN3TmtmTmVKZlZxNi8yMzB6TGVsN2xWM3N1MCt5cVJuUlFMeDdrQUNp?=
 =?utf-8?B?VmNZakttaG1UM09ZYkpUVUVyUkJpSWNDM1g0M2lldGlvUittQnR4Y2tkeWpW?=
 =?utf-8?B?Vlg4UVk2TE1UTTkzM3BBOHk5b1k1OHRMS1BEaXB0VjdaSFJKelpSN3dxVEpo?=
 =?utf-8?B?ZVJ1RWFvMnQ5TEhTTFNLQXhOZXluQzFKM3NjTk1QNjhTT1p1bGx0MEg1eDR4?=
 =?utf-8?B?a3FvbjdPbTRmb1NHU0w5M2RQZXN4bi9RTEtqemlCWC9aakdZNkRaeExkcElD?=
 =?utf-8?B?OVV1M0xvcHRNSXJ1VGxuZUxJSXZGTU8vR00vN3FQOWVPL09yazJPa2ZuMkRC?=
 =?utf-8?B?NStXKyt1ZFhBbjlwY2RmSE5nTTJGZkNZN3hEVG53NDNnQUluRTAxUldLcXNS?=
 =?utf-8?B?ZzFkby9naUplSEMxWGM2NHNuajBmRGlMVEVORktUZ1AvdHBNbzAzOUNaMm9G?=
 =?utf-8?B?YkRNS2JtYWE2TlZHSmdqSW4xRzZXajZLODA5UnZuTGZWVkM2RlRoUHBzSStq?=
 =?utf-8?B?NnpRbkNmVWNYMGtXUEZnYlQ2dU9GRXpPeXo4Vkl4WmRETkkvU0x6QnRWV3J0?=
 =?utf-8?B?VWF0cjVTazBuV2xuNm5xa1E2NnI0dzg4a2FnS3dIM04xVDVPTG5EdlFXcjll?=
 =?utf-8?B?MG5oVk9nemN6MWptYWR1cURVeGhGSnJFQXQwVlNjcUN4clBqd3VmTHZBUFhH?=
 =?utf-8?B?WHN3Yy9YcWNVS1Vid0lnbjdwM2FrUjl1VnhCK3ViQmhVOXJmTjg4amExbFRN?=
 =?utf-8?B?R0QzSkk4YldabXdwbG45VUU2b1FZbDRjY2hueE10QkpmYnc5cysvNmp1YVFF?=
 =?utf-8?B?d0Z5Y2hzYzBYRUEyRmZGZ3Z0R25CbVQwY28weXJyMXg1anBjS0lLc0kzMlNK?=
 =?utf-8?B?d3hDdzROck5jdUFiYi9oeGVyKzgvNHo0aU1SWTkvaTZHT00rUytCZStsaytz?=
 =?utf-8?B?L05wcUtBRnhobm5pQWtqS0tUZHVqT3prOSsvMEZDY0lIUmg1eEtTakxjQTdi?=
 =?utf-8?B?WVRwRlJMWWpYNFB4RFJyUC82M3ZVTHU5TTlFS25rWWJTNmMvUTlMVHhEMDlJ?=
 =?utf-8?B?ZTByRnBIODlUZG5vWU5nc05MZ1crUUZIbUVQc1hvNDh2OTZsaG9vQzFzdTkv?=
 =?utf-8?B?eE5HS01ZUWNadWxHNDVDY0lUZFNnNTBoVUZ5WXhKRTJQbXJ5WWhZWEgySjlO?=
 =?utf-8?B?VEY3UENPdUpuTDlGeXJhb2R2M0tUZW05UlpxbE54M2RQYU1OQmFxb2lxMlpj?=
 =?utf-8?B?YTFwQ0k3Y0dYa0NPMjBQSXgvVUpPUkJQTW55NVpDK0ZhWWhVSThPVVpadEhV?=
 =?utf-8?B?UTk3emtYTnVFckF1NnFCeFpjaGVMQnFRelZaSDE5QmtHM1U4SUV6bXdEQzZ6?=
 =?utf-8?B?Y2hZV3o1d2tUZ29yamFRSW12Y1R1NGNZek1zZE5xK3I5RU9xalNkbUpmOHNH?=
 =?utf-8?B?SlRoVmhGR2gvMlFUMWlKcGZGNmtxK0MzYmlFYVY3MkFvV0hmTGNpalRMVTBt?=
 =?utf-8?B?VCt4dXN6TjFvR2VIK3IvSVRhVjZqc0ZkVzdiTFN5VEVGZWdWL0pobDRZTitl?=
 =?utf-8?B?QzhDRXhORCtrcVRaRUhpTDRwODJ6YW9CNlU1azJ0WGlEZFRPL05DZjZGRlI4?=
 =?utf-8?B?eXdlUHE3QkVoQUplOFNZQS8ydThEZlNzRnJGY0dIMW91TW5hNnE0UFJSK1hC?=
 =?utf-8?B?aUFUd1J0bVRnSENKTFQyMnVINThKK3hucEZnK0ppR2JQQklDM0s2MTJ5UGVs?=
 =?utf-8?B?cm9nZlY2ZFNGL0VRYVZPRkxSNUNDajlwV2syaE5wS1h0VlJZaXZCQVNZR3Jo?=
 =?utf-8?Q?6XhP0hWLCPsBcHLpig+D7XLKc?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	YnyJDkYqCzEdxIrn9GQ8p2+JQ7MpLbb88LiWifNfmcVsE/hKFWTQftusAKC1Gq8Eq1SgmzboClRdu/h0YPi/q3EELgIBolJcyE3ir7hpiZD1bpIhQn8q2fKEtqht4108jYTd80yeXRiR8J2Vlgbr0FdVKjorQ9hrU0CEGx4EncFoeeSouo/DI4GJD9pNRHhvRucn8503GXvcS4/0kqhucQsDuQM/O4kNfapoDrUNygDC6ocrOL9CJY1OA3K3LQxvFp4hZxjhrna/hNeFstAVXm+7KhRrNB/gsuXEA1j7/L1b1hLJJuHgy4+7YvZCjq0dtPKu4oCJ8XVaQ5UY5RByBSXccFwCcCnMruhhllPjnTgkRSkjBtk/7/0xCUojfMTf+RDCXVqvxCy8h8/AvBKCaQOm1xsCDJ+uHB4ao/VSdmSNwVHl2JeGoQXJrKfCwn2ipjS8R/NMlmU7KX/vnJWfnW35BETW0/o/HNjlFtSJsruEsL9uG+e2uV8TAawNHu+mftJWS8i26BFZBV8C4lgdyZa2eHKeLF/8oU5ifn+EqNqZ6F61ZQN0UM5jR0MVhRGtReDq8U3V/vpiUpx9N7zln6rfGkbwelW8ERmpWtp5VycOq9ZeYJRTphamb69HV2QYaKNbl0DUilWlcN9lP5XNN7naI5C1NTdaR4IDYGxGKcCZ+4F9Hjm+zhAivig/Zyr30ZGmkF+2C6d9sOIAqjCZw/pg3decl44HdH1aBB+vCeYmjMwpCdgeBz4YBGxurlNdKTVx0+90PfHKZ9ldHH0Q/d0veqUAPxjG5TNIFheyE+POb876hEOiLn06ZE/j+jnLdyTDQJXyPfW2oi77E/Gd3n8WDUMOLOE2AuZ4IlJFToZxyZDbowK2204xqyOcjsWhbtgskVnAFwK/IRASsHRs7wDXLuMwyWQYNv5bVwrOp3A=
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: b2d217e3-ee5a-4bb5-5312-08dbc65bbe8a
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Oct 2023 11:02:34.6911
 (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: fXcs2+I2Wuv4eXFbS3WIF9D2Xax45S7r9wT0uUBhYmY1sk67uJbJAtqakBFByY3llDemTVIwGHtxDuXyoLufWg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BL1PR03MB6119

On Fri, Oct 06, 2023 at 11:47:48AM +0100, Andrew Cooper wrote:
> On 06/10/2023 10:13 am, Roger Pau Monne wrote:
> > XENFEAT_runstate_phys_area is exposed to all architectures, while
> > XENFEAT_vcpu_time_phys_area is currnelty only implemented for x86, and hence
> > the feature flag is also only exposed on x86.
> >
> > Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
> 
> Thanks for doing this.
> 
> > ---
> >  CHANGELOG.md                  | 2 ++
> >  xen/common/kernel.c           | 6 +++++-
> >  xen/include/public/features.h | 9 +++++++++
> >  3 files changed, 16 insertions(+), 1 deletion(-)
> >
> > diff --git a/CHANGELOG.md b/CHANGELOG.md
> > index e33cf4e1b113..41da710426f6 100644
> > --- a/CHANGELOG.md
> > +++ b/CHANGELOG.md
> > @@ -31,6 +31,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
> >   - 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).
> > + - Introduce two new hypercalls to map the vCPU runstate and time areas by
> > +   physical rather than linear addresses.
> 
> I'd suggest linear/virtual here.  Linear is the correct term in x86, but
> virtual is the correct term in pretty much every other architecture.
> 
> > diff --git a/xen/include/public/features.h b/xen/include/public/features.h
> > index d2a9175aae67..cffb2f14a562 100644
> > --- a/xen/include/public/features.h
> > +++ b/xen/include/public/features.h
> > @@ -111,6 +111,15 @@
> >  #define XENFEAT_not_direct_mapped         16
> >  #define XENFEAT_direct_mapped             17
> >  
> > +/*
> > + * Signal whether the hypervisor implements the following hypercalls:
> 
> This is not what the hypervisor implements.  It's what the domain is
> permitted to use.
> 
> There also needs to be a matching patch to public/vcpu.h to require
> implementations to check for these feature bits before using the new
> hypercalls.
> 
> Also,
> 
> diff --git a/xen/common/domain.c b/xen/common/domain.c
> index b8281d7cff9d..df994bd30fd2 100644
> --- a/xen/common/domain.c
> +++ b/xen/common/domain.c
> @@ -1998,6 +1998,10 @@ long common_vcpu_op(int cmd, struct vcpu *v
>      {
>          struct vcpu_register_runstate_memory_area area;
>  
> +        rc = -ENOSYS;
> +        if ( 0 /* TODO: Dom's XENFEAT_runstate_phys_area setting */ )
> +            break;
> +
>          rc = -EFAULT;
>          if ( copy_from_guest(&area.addr.p, arg, 1) )
>              break;
> 
> and a matching one for XENFEAT_vcpu_time_phys_area because I'm even more
> serious about this becoming a domain controllable setting following what
> OSSTest had to say overnight.

While this is all fine, please note that the newly added code
{,un}map_guest_area() is also used by the existing
VCPUOP_register_vcpu_info hypercall, and that one can't be disabled.

IOW: even if we add knobs to make the new hypercalls selectable, most
of the newly added code could still be reached from
VCPUOP_register_vcpu_info.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Fri Oct 06 11:19:42 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 11:19:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613541.954115 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoirm-0001S5-Op; Fri, 06 Oct 2023 11:19:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613541.954115; Fri, 06 Oct 2023 11: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 1qoirm-0001Ry-Kg; Fri, 06 Oct 2023 11:19:34 +0000
Received: by outflank-mailman (input) for mailman id 613541;
 Fri, 06 Oct 2023 11:19: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=vVKM=FU=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qoirk-0001Rc-OF
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 11:19:33 +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 37d6324e-643a-11ee-9b0d-b553b5be7939;
 Fri, 06 Oct 2023 13:19:30 +0200 (CEST)
Received: by mail-wm1-x32f.google.com with SMTP id
 5b1f17b1804b1-405417465aaso18886625e9.1
 for <xen-devel@lists.xenproject.org>; Fri, 06 Oct 2023 04:19:30 -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
 15-20020a05600c028f00b004065d67c3c9sm3555407wmk.8.2023.10.06.04.19.29
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Fri, 06 Oct 2023 04:19: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: 37d6324e-643a-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1696591170; x=1697195970; 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=Gb/Pz/0HTLyDkmtx1dNVsHhwkTrFEn5fioJcJoW+z58=;
        b=qd+UM8tkbyK3fPf0ISh+BKtim+bjtipYhxeZhsAAViS4+DaYN5ATP1pCn7pTUoFuMb
         Yy0j5GCZ9n5nv2YfQdDRXZZIb+t/dF+aifGPw1JPu/lc+j7/eai/WTxiQvfU4D4oSc7A
         E2y+TSCnBWYQ7muPEyD3U0AcDgDUsXPM2jrQo=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1696591170; x=1697195970;
        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=Gb/Pz/0HTLyDkmtx1dNVsHhwkTrFEn5fioJcJoW+z58=;
        b=vTyz2hpyYuB5VH1u2jfvoLXACN21jauouyNqL25wK4G+RwByI2d4ukjwaX+Fgq6k1V
         tHedrCemQuBRfMVxS7zUH7xsQdglLR07xbYJLHOs9TgXpZBCyOI6w4aTEzcJF9++nB4h
         9QtVMJaD3Nz1kMl/nG3L3BY+rF92CuX1cRBW72F85X2JpIwjFysoNgkCrczq9xnKXXHw
         XQ1e4dHoXkPBDYiNpmo0IHh26R146ghnUxzn1F2JtTgaDxPOwYQ0ml6va8yAtrjLa8uL
         NnnRVSeISQCvzFWA99XHGuyCLeYmRQkIe9SHNC7bom7N8vFzYxDF7IhlvixbvGLjoJJ6
         974A==
X-Gm-Message-State: AOJu0Yze6osns+Y47pam19ijJOkRlReA9eGjRRmZOXWV894bnKEk1F0a
	h7H40NMKKrnadsT2yyU6zyiooA==
X-Google-Smtp-Source: AGHT+IH3uZ1jyDY7sk4aMM6nD0fb7rs5rd1HAdN4mpHEfk2Esc+n67+Ywp0B+HlqBoyeRFUTJqxwQw==
X-Received: by 2002:a1c:ed07:0:b0:406:44e5:b915 with SMTP id l7-20020a1ced07000000b0040644e5b915mr7146449wmh.8.1696591169836;
        Fri, 06 Oct 2023 04:19:29 -0700 (PDT)
Content-Type: multipart/alternative;
 boundary="------------06oX6csJDR7tV0foAJHDKics"
Message-ID: <c9b260af-0d97-4117-a62a-5adc8b5e2621@citrix.com>
Date: Fri, 6 Oct 2023 12:19:29 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH 2/2] domain: expose newly introduced hypercalls as XENFEAT
Content-Language: en-GB
To: =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>
Cc: xen-devel@lists.xenproject.org, Henry Wang <Henry.Wang@arm.com>,
 Community Manager <community.manager@xenproject.org>,
 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: <20231006091353.96367-1-roger.pau@citrix.com>
 <20231006091353.96367-3-roger.pau@citrix.com>
 <ac4842a9-7f62-4c64-9a3a-2ec2b1e97699@citrix.com>
 <ZR_pRUvNLXQ0ftt1@MacBookPdeRoger>
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: <ZR_pRUvNLXQ0ftt1@MacBookPdeRoger>

This is a multi-part message in MIME format.
--------------06oX6csJDR7tV0foAJHDKics
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 06/10/2023 12:02 pm, Roger Pau Monné wrote:
> On Fri, Oct 06, 2023 at 11:47:48AM +0100, Andrew Cooper wrote:
>> diff --git a/xen/common/domain.c b/xen/common/domain.c
>> index b8281d7cff9d..df994bd30fd2 100644
>> --- a/xen/common/domain.c
>> +++ b/xen/common/domain.c
>> @@ -1998,6 +1998,10 @@ long common_vcpu_op(int cmd, struct vcpu *v
>>      {
>>          struct vcpu_register_runstate_memory_area area;
>>  
>> +        rc = -ENOSYS;
>> +        if ( 0 /* TODO: Dom's XENFEAT_runstate_phys_area setting */ )
>> +            break;
>> +
>>          rc = -EFAULT;
>>          if ( copy_from_guest(&area.addr.p, arg, 1) )
>>              break;
>>
>> and a matching one for XENFEAT_vcpu_time_phys_area because I'm even more
>> serious about this becoming a domain controllable setting following what
>> OSSTest had to say overnight.
> While this is all fine, please note that the newly added code
> {,un}map_guest_area() is also used by the existing
> VCPUOP_register_vcpu_info hypercall, and that one can't be disabled.

Yeah, I'm aware we're stuck there, but a crap interface from the past is
not an excuse not to do new interfaces properly.

~Andrew
--------------06oX6csJDR7tV0foAJHDKics
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: 8bit

<!DOCTYPE html>
<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body>
    <div class="moz-cite-prefix">On 06/10/2023 12:02 pm, Roger Pau Monné
      wrote:<br>
    </div>
    <blockquote type="cite" cite="mid:ZR_pRUvNLXQ0ftt1@MacBookPdeRoger">
      <pre class="moz-quote-pre" wrap="">On Fri, Oct 06, 2023 at 11:47:48AM +0100, Andrew Cooper wrote:
</pre>
      <blockquote type="cite"><span style="white-space: pre-wrap">
</span>
        <pre class="moz-quote-pre" wrap="">diff --git a/xen/common/domain.c b/xen/common/domain.c
index b8281d7cff9d..df994bd30fd2 100644
--- a/xen/common/domain.c
+++ b/xen/common/domain.c
@@ -1998,6 +1998,10 @@ long common_vcpu_op(int cmd, struct vcpu *v
     {
         struct vcpu_register_runstate_memory_area area;
 
+        rc = -ENOSYS;
+        if ( 0 /* TODO: Dom's XENFEAT_runstate_phys_area setting */ )
+            break;
+
         rc = -EFAULT;
         if ( copy_from_guest(&amp;area.addr.p, arg, 1) )
             break;

and a matching one for XENFEAT_vcpu_time_phys_area because I'm even more
serious about this becoming a domain controllable setting following what
OSSTest had to say overnight.
</pre>
      </blockquote>
      <pre class="moz-quote-pre" wrap="">
While this is all fine, please note that the newly added code
{,un}map_guest_area() is also used by the existing
VCPUOP_register_vcpu_info hypercall, and that one can't be disabled.</pre>
    </blockquote>
    <br>
    Yeah, I'm aware we're stuck there, but a crap interface from the
    past is not an excuse not to do new interfaces properly.<br>
    <br>
    ~Andrew<br>
  </body>
</html>

--------------06oX6csJDR7tV0foAJHDKics--


From xen-devel-bounces@lists.xenproject.org Fri Oct 06 11:27:19 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 11:27:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613546.954124 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoiz6-0003wu-El; Fri, 06 Oct 2023 11:27:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613546.954124; Fri, 06 Oct 2023 11:27: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 1qoiz6-0003wn-Bx; Fri, 06 Oct 2023 11:27:08 +0000
Received: by outflank-mailman (input) for mailman id 613546;
 Fri, 06 Oct 2023 11:27: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 1qoiz4-0003wd-Th; Fri, 06 Oct 2023 11:27: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 1qoiz4-0004dk-HJ; Fri, 06 Oct 2023 11:27: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 1qoiz4-0007IA-9R; Fri, 06 Oct 2023 11:27:06 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qoiz4-0001rT-8z; Fri, 06 Oct 2023 11:27: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=j1fXfpYamPM5BDp0Ng44qideeYyJOyH2a/XuN8wFHdY=; b=0C/Sk0WwuTfbVLCw/kMlK/09B8
	gd3Fw2ddxC+PHNjIps05WfuWxUwWnmoZEWzA2w32YEgL6BbN4IeMxr1AK/Te/7BPTCn6jHSgufNJp
	6vzlVZ8uc3v+0GlBA8B5+Z1fE9raUODB4GEQhQgodZ99gf5NXUG4OjxnDgJLKC8H4w3Y=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183281-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 183281: regressions - FAIL
X-Osstest-Failures:
    xen-unstable-smoke:test-armhf-armhf-xl:guest-start/debian.repeat: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
    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=295514ff7550626de4fb5e43b51deb25d9331cd5
X-Osstest-Versions-That:
    xen=02c98966360b76052779b0186784437af88f301e
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 06 Oct 2023 11:27:06 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-armhf-armhf-xl         18 guest-start/debian.repeat fail REGR. vs. 183270

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                  295514ff7550626de4fb5e43b51deb25d9331cd5
baseline version:
 xen                  02c98966360b76052779b0186784437af88f301e

Last test of basis   183270  2023-10-05 13:03:52 Z    0 days
Testing same since   183272  2023-10-05 16:00:24 Z    0 days    3 attempts

------------------------------------------------------------
People who touched revisions under test:
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.com>
  Roger Pau Monne <roger.pau@citrix.com>
  Roger Pau Monné <roger.pau@citrix.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                                          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 295514ff7550626de4fb5e43b51deb25d9331cd5
Author: Jan Beulich <jbeulich@suse.com>
Date:   Mon Oct 2 17:11:27 2023 +0200

    common: convert vCPU info area registration
    
    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).
    
    Signed-off-by: Jan Beulich <jbeulich@suse.com>
    Reviewed-by: Roger Pau Monné <roger.pau@citrix.com>
    Acked-by: Julien Grall <jgrall@amazon.com>
    Release-acked-by: Henry Wang <Henry.Wang@arm.com>

commit 60e544a8c58fdc720de05f6a721178f9516436d1
Author: Jan Beulich <jbeulich@suse.com>
Date:   Mon Oct 2 17:11:26 2023 +0200

    x86: introduce GADDR based secondary time area registration alternative
    
    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>
    Acked-by: Julien Grall <jgrall@amazon.com>
    Release-acked-by: Henry Wang <Henry.Wang@arm.com>

commit d5df44275e7af690ef18b56cc58762ce33a37149
Author: Jan Beulich <jbeulich@suse.com>
Date:   Mon Oct 2 17:11:25 2023 +0200

    domain: introduce GADDR based runstate area registration alternative
    
    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>
    Acked-by: Julien Grall <jgrall@amazon.com>
    Release-acked-by: Henry Wang <Henry.Wang@arm.com>

commit eadc288cbb0ddc432ff8c9c639fb25b7538325de
Author: Jan Beulich <jbeulich@suse.com>
Date:   Mon Oct 2 17:11:24 2023 +0200

    domain: map/unmap GADDR based shared guest areas
    
    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>
    Reviewed-by: Roger Pau Monné <roger.pau@citrix.com>
    Reviewed-by: Julien Grall <jgrall@amazon.com>
    Release-acked-by: Henry Wang <Henry.Wang@arm.com>

commit c4dde71e3e6961f817e2a574ce4918041cb30fb9
Author: Jan Beulich <jbeulich@suse.com>
Date:   Wed Oct 4 15:53:31 2023 +0200

    x86/mem-sharing: copy GADDR based shared guest areas
    
    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>
    Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
    Acked-by: Tamas K Lengyel <tamas@tklengyel.com>
    Release-acked-by: Henry Wang <Henry.Wang@arm.com>

commit c2e285ea0e6dea9cc6f4578e49d76075a153baa0
Author: Jan Beulich <jbeulich@suse.com>
Date:   Mon Oct 2 17:11:22 2023 +0200

    x86: update GADDR based secondary time area
    
    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>
    Release-acked-by: Henry Wang <Henry.Wang@arm.com>

commit e1ddb822ca2e3c332d42d508e2a5fbd7be018815
Author: Jan Beulich <jbeulich@suse.com>
Date:   Mon Oct 2 17:11:21 2023 +0200

    domain: update GADDR based runstate guest area
    
    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>
    Release-acked-by: Henry Wang <Henry.Wang@arm.com>

commit c4630e316240508f3fb619678adc4cfb47bf13d2
Author: Jan Beulich <jbeulich@suse.com>
Date:   Mon Oct 2 17:11:20 2023 +0200

    domain: GADDR based shared guest area registration alternative - teardown
    
    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>
    Acked-by: Roger Pau Monné <roger.pau@citrix.com>
    Release-acked-by: Henry Wang <Henry.Wang@arm.com>

commit 826da6e30cf37a22b3f32dba33477856125df91b
Author: Jan Beulich <jbeulich@suse.com>
Date:   Mon Oct 2 17:11:19 2023 +0200

    x86/shim: zap runstate and time area handles during shutdown
    
    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>
    Release-acked-by: Henry Wang <Henry.Wang@arm.com>

commit 9a499a84a2724757ad59b684e7858dfb60521290
Author: Roger Pau Monne <roger.pau@citrix.com>
Date:   Mon Oct 2 17:11:18 2023 +0200

    mem_sharing/fork: do not attempt to populate vcpu_info page
    
    Instead let map_vcpu_info() and it's call to get_page_from_gfn()
    populate the page in the child as needed.  Also remove the bogus
    copy_domain_page(): should be placed before the call to map_vcpu_info(),
    as the later can update the contents of the vcpu_info page.
    
    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.
    
    Fixes: 41548c5472a3 ('mem_sharing: VM forking')
    Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
    Acked-by: Tamas K Lengyel <tamas@tklengyel.com>
    Release-acked-by: Henry Wang <Henry.Wang@arm.com>
(qemu changes not included)


From xen-devel-bounces@lists.xenproject.org Fri Oct 06 11:29:30 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 11:29:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613552.954135 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoj1N-0004Ui-SA; Fri, 06 Oct 2023 11:29:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613552.954135; Fri, 06 Oct 2023 11: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 1qoj1N-0004Ub-Op; Fri, 06 Oct 2023 11:29:29 +0000
Received: by outflank-mailman (input) for mailman id 613552;
 Fri, 06 Oct 2023 11:29: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=Twl1=FU=citrix.com=prvs=63654eace=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qoj1M-0004UR-5v
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 11:29: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 9ac44fae-643b-11ee-98d3-6d05b1d4d9a1;
 Fri, 06 Oct 2023 13:29:27 +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;
 06 Oct 2023 07:29:19 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by PH0PR03MB5927.namprd03.prod.outlook.com (2603:10b6:510:41::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.29; Fri, 6 Oct
 2023 11:29:18 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::66ca:3a42:baeb:9ecf]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::66ca:3a42:baeb:9ecf%6]) with mapi id 15.20.6838.030; Fri, 6 Oct 2023
 11:29: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: 9ac44fae-643b-11ee-98d3-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1696591766;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=BmpLTWdaj97lbyFBtQVU0m9xDsYq00lxwIHt4ns4/Z0=;
  b=HDNrA9cWlr7045zo8diTgt8gaNE6HPP/E4SdnHX7WXhQd1cejLd7/1h6
   dJ2o1svRXcVf4ZhxP+SMpGSiFFAyVhsSukG4Ii5gEk9daAGzbAf6mtXEn
   S7Lq1Fi97YkSWI0MzDo4a1dQmRusrCZnPaofq26I2bpJJE0Vb+pvC3eGd
   A=;
X-CSE-ConnectionGUID: 638PdYy6Tm2Z2Pf5g5JVlQ==
X-CSE-MsgGUID: tcxqoul3TyKVyQwMjTLkcg==
X-IronPort-RemoteIP: 104.47.59.172
X-IronPort-MID: 127582579
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:FeGfVqDUaLsEPBVW/63iw5YqxClBgxIJ4kV8jS/XYbTApDomgzwOm
 2VJD2jVO62NMWKjcot0Ydi38UxUvp/VxtZjQQY4rX1jcSlH+JHPbTi7wuUcHAvJd5GeExg3h
 yk6QoOdRCzhZiaE/n9BCpC48D8kk/nOH+KgYAL9EngZbRd+Tys8gg5Ulec8g4p56fC0GArIs
 t7pyyHlEAbNNwVcbCRMsMpvlDs15K6p4WtA4ARnDRx2lAS2e0c9Xcp3yZ6ZdxMUcqEMdsamS
 uDKyq2O/2+x13/B3fv8z94X2mVTKlLjFVDmZkh+AsBOsTAbzsAG6Y4pNeJ0VKtio27hc+ada
 jl6ncfYpQ8BZsUgkQmGOvVSO3kW0aZuoNcrLZUj2CA6IoKvn3bEmp1T4E8K0YIwpL0nOW1/5
 KIkLWo/NCiN2u3r4oy/c7w57igjBJGD0II3nFhFlGucIdN4BJfJTuPN+MNS2yo2ioZWB/HCa
 sEFaD1pKhPdfxlIPVRRA5U79AuqriCnL3sE9xTI9OxuvDK7IA9ZidABNPLPfdOHX4NNl1uwr
 WPa5WXpRBodMbRzzBLcqC3x1rWSwnKTtIQ6CLao7/l3hAav108tGSQJcFmHhfqyhRvrMz5YA
 wlOksY0loAi+UruQtTjUhmQpH+fogVaS9dWC/c96gyG1uzT+QnxLkgJSCRQLuMvssAeTCYvk
 FSOmrvBDjtqtaCTSG6MsLKdqzq9NDI9PWIEfTUDTwYO/5/kuo5bphDFQ8tnEaW1psboAjy2y
 DePxAA8mrESgMgjx6i9u1fdjFqEvYPVRwQ44gHWWGON7Q5jYoOhIYuy5jDz8vJoPIufCF6bs
 xA5d9O26ekPCdSBkXKLSeBURrWxva/aanvbnEJlGIQn+3K14Xm/cItM4TZ4YkB0LsIDfjyva
 0jW0e9M2KJu0LKRRfcfS+qM5w4ClMAMyfyNuijoU+dz
IronPort-HdrOrdr: A9a23:WZ/yiq0Ubkai/8lMr4alvwqjBAMkLtp133Aq2lEZdPWaSK2lfq
 eV7ZAmPH7P+VMssRQb8+xoV5PsfZqxz/JICWd4B8bZYOCkghrSEGlahbGSvgEIYheOitK1t5
 0BT0EOMqyTMbEgt7ec3ODQKb9Jq+VvlprGuQ609QYPcegFUc9dBi5Ce3mmO3wzaglaJIYzUK
 GR7tBAoFObCAwqR/X+KHkZfvTJ4+bGnpL+YRIAGnccmXCzpALtxr7mMgSSmiwTWTNXwbsk7C
 zsngHj6r+42svLuyP05iv874l2hNCk8NdFCcCW4/JlTAnEhwqzeYRnU6CDujcuydvflmoXrA
 ==
X-Talos-CUID: =?us-ascii?q?9a23=3AgrwDn2gg+r3vMoV6aVEzTbUPIzJuLCaN9HvhMhG?=
 =?us-ascii?q?EDDxbEoWbFFDN2p1gqp87?=
X-Talos-MUID: 9a23:JRPOsQnSUoS3MgRNLlqVdnp+P9dx5LmqU3wcsqsXgtahNxBUODyS2WE=
X-IronPort-AV: E=Sophos;i="6.03,204,1694750400"; 
   d="scan'208";a="127582579"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=FlZ+fM6dtyZ3VRNH7u2T6nWacAPgl3+xT6YiuuufLF0x6v+s9FSR+5kP4sTLUMmMBxUc5+3xxYvApI75znKxiFqfFthTa6fN+HqvJiT0SjORwunDw8FjGSHpo2/0XoI7LG7xfjO9MOFGDPu41k/xq1nWT86FdTkGg/689s8kMcE9tBfBmzxVQEpOabZvCZrQfzNaXafnM4CduarnE2YfSLUDK3aWD+X8aXYYUZHoAu6eZPMFqYmVYNfxO4kAYkJUoVnK717/MzxZ627VBYgNvqjGieVknQnjI28TsYxY1oGp/UbTP0iuVtXjHhKcD40Cv1HSwnHQzV1vGoDqg/sZ4w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=jbitnJdJhcnjzK3oKZpTNzJ1d7duMx6lCRu/MBrQgi8=;
 b=KcQQYZmAYW9sBkHFPSR7oFdxGtfNfzLOaPF8CN65cRPiH0/IFO6T72V8fURdlf3HeDxy1fdPh27B0hN7bEe46/5byqFizCb63LrxVV5T5Q5u+S/XI2kvxoRv9RHEQV3m5zG6n9Q3TVCjX6t/0Qxu/k3O5TLF0RYFqmj45MJ28WE2p2NdfQ8WPHjvuintAgTrfeI9bdSAv91KVDoqPJWZnLiNzrRFHdm1jOCsXii9e/wQhf1mDKt3V7fWhUOuWYJyxjPNC355bF2vkSfuC5/EBbs97V2FT3STfRbPZrOWM2W5RZkM2391C2uH4mIXckKrRzx8PmgcZB9E8jCFY6yorA==
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=jbitnJdJhcnjzK3oKZpTNzJ1d7duMx6lCRu/MBrQgi8=;
 b=T7gv/L5kvJYrJx80XC3S6u9yjwDgxPsCooNLdRFgFeFOaxwuWptRFLqqrZf1P9UQ/TwzgbEOaO/8Pu6Ha2XZaBITd9IxQJyvS+lW1GAgNWEMgE+QU6DFPU6iDKV2oWCk67x1JlGgXYetZrCW796/slG+Also9LgEPpbIK7zAKHI=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Fri, 6 Oct 2023 13:29:12 +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, Henry Wang <Henry.Wang@arm.com>,
	Community Manager <community.manager@xenproject.org>,
	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 2/2] domain: expose newly introduced hypercalls as XENFEAT
Message-ID: <ZR_viJjXDw-M8ror@MacBookPdeRoger>
References: <20231006091353.96367-1-roger.pau@citrix.com>
 <20231006091353.96367-3-roger.pau@citrix.com>
 <ac4842a9-7f62-4c64-9a3a-2ec2b1e97699@citrix.com>
 <ZR_pRUvNLXQ0ftt1@MacBookPdeRoger>
 <c9b260af-0d97-4117-a62a-5adc8b5e2621@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <c9b260af-0d97-4117-a62a-5adc8b5e2621@citrix.com>
X-ClientProxiedBy: LO4P265CA0094.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:2bc::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_|PH0PR03MB5927:EE_
X-MS-Office365-Filtering-Correlation-Id: ee0b7f9f-e137-4d42-4340-08dbc65f7a50
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:
	pDHbm/5TTBNPLMAf9gXqr2UDQyLaIm4GK5b6tOf7TsvIDxrl1huWQHV+Oj3HN1x9lARTJ1we7KRx80khp9UvZVtDz+Jc7nMO9IgHOc8UO/cpb4cj+qTyChbNGuoMu1YCHgMKxNqB+e+AJavHLLswL1dl5cZ/S1OlENd5GNylv78CyYKf5NT2lvKCawrSUvcdOr5UMUTkxgDgptjgQrjYqFdJIj6ojTX8bb4USMe+OoTm5ZgJO/jKW2lzYhc7unZTXX80ujrXCz52toUwxgGHWkbSRiw1aQerLaop766Qbw8Eaa7kzAsMBn/YF36o8BTELOInhu4ItVRRjws5BbeoBW8u/AO4iNVEfWZCnmc0IXNM/J4JNN5NR7Frcrly0uKQsPfDhpNkbXoh4qJyh2VSFVEQtnK3VfbPdfsiugVUEVpJfTjgHxlPOz2Zo9OQ2k8jGpAI2sb5Fb4cMOAUh4rdJqnQkhd5WI834bKufL5bnqMiFTWItIlsv8K6sPQV7PCF7z9yBcyg0Ar8viXMbWcsK1DfiPhMdWO3wc3gzyNuOKQSdAOhLs4S9lYVqjDjWVWL
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)(366004)(136003)(376002)(230922051799003)(1800799009)(451199024)(186009)(64100799003)(66476007)(26005)(2906002)(6636002)(8676002)(4326008)(66946007)(5660300002)(6862004)(41300700001)(54906003)(8936002)(66556008)(6486002)(9686003)(478600001)(6666004)(6506007)(6512007)(53546011)(33716001)(316002)(83380400001)(82960400001)(38100700002)(86362001)(85182001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?Z3BDT2lKYU9mTjZDMlhNd3FUempHZnIxdkV3ZWtmYU9tdThVZklLY1dNQ3B2?=
 =?utf-8?B?aldTTjJqS0Y0bkt5WmVXMG1lZFlaWWF6MUVnUmRlQVJQc2RnTm9zczlHK01K?=
 =?utf-8?B?UVEyRE01ZTdveldSU2c0YUgxRU1EakI2c093ZTQzaFNKMnlIaFY3ZEdrZlNq?=
 =?utf-8?B?UHlTRUk3RTNaMDJyMnJHdVorR2ZucStDcURGZUdzUnl0ellrdDJyVGovSEVq?=
 =?utf-8?B?RXhpM0s4WS9rNExmSFdLeER5TzljU0dLTFAvM0JYTmptTVRIRDRXczZQL214?=
 =?utf-8?B?YytoWDh0Ymd6cXRNQ0ExK1MxV0dPbkVPRXREOVI4emxTSmo1STlpaFl4Szlo?=
 =?utf-8?B?WVdjOU9ZcUFVNDhrZUxjdkNVTitEYWZaOWkwREh4OUdJeGFLY0xBUWtDb3lq?=
 =?utf-8?B?KzcvdXlqRk44Wk1zSjlHNkVYSE9sZ2hyTGxJRzlaaE5jQk9wR3RvSjRyMkla?=
 =?utf-8?B?RjAzNFFjWEJxRkl1T2hFbEcxZ3dyT2hXR05zQVVHMmdwNENScnY2eFRlaHc4?=
 =?utf-8?B?YjlneU8wSUdVcmRTTG1DVmR0SnJNcGY0TnY4ejNMTlRzS0pNU0pLQjI4amJw?=
 =?utf-8?B?M3ZtOHVXb0dlSkFTMDVVNmQ3eDJaRGJaNXB2R1Fuc2xsazBMNDF5Mk41dUJ0?=
 =?utf-8?B?VDJSUGdnM1I0aFlGRVdEWDI3YWk2S1B6U0FiaW9iVTErODM0NlRzcUJQUGN5?=
 =?utf-8?B?TXZvYXFPeDRpZXJCdnZFUlE1M1hkY2NwdTdORTB5dkJtNDZjY3lOUGREdHJ0?=
 =?utf-8?B?QjJIOStxT2ZncUUyVmVDbGk5QURzK3JvQlJyeVZXWTg1aVJZbGtNbEFUaFQ3?=
 =?utf-8?B?cklpODlzbENiYlVBZ3dVRWE2c0lmT3AyOGFialA4WkJteUROaEZvdVUvZnVj?=
 =?utf-8?B?L2xtSXhSenRIT0lVbTVraTNMZzdJeGhWbkJpdnQzUlFtbE1pQ1BiMVQ0QWhn?=
 =?utf-8?B?UHRVT0dkQ20xcStCcHVlNGQva21iU2VMZktlaGo4endreW1BZ0JlMlI4L2JT?=
 =?utf-8?B?S016WnRkM3VKZC82aUpmMHNuZHRsUGg3dnNhalpvbXRwbFIwKy83Wnp3VWZL?=
 =?utf-8?B?ZTNEc3FsNlpVT3FkTjZqVmhQQzZQODhCRXdDZ1BkdVgyMEwrSmthajJ2N1Qr?=
 =?utf-8?B?ckdCMGRjb0pUOTl0c3lVYlZlZXlDOThscVBURmM1RE1QLzdXSE1VSjFlYk9z?=
 =?utf-8?B?V3lDakVqaUNiY3hQdkw1QzNYa2FpbC9aa1NPQllFbjNkMFZ2T0QxZ2s3aHla?=
 =?utf-8?B?cDN6WFNEbE1wSFppUGc5anBhMkpCdmh1T00xRTBpektrZW1NK3JRbTZWYTVT?=
 =?utf-8?B?UzA5ZTRsTSs3YXRFczlLNkpWZis3TjZIRlBPOERkSEJWMHZ1Nmtqd2xCTVhn?=
 =?utf-8?B?MlE4QWx5Y0VQOGN6UTFGbndPUnk4VVpXN1E0YmppMlFPd3hqeFhTb0NCeVNu?=
 =?utf-8?B?Ri8vVVpmQWZGNHZvZ2hBeWJKNnB4VGpubUhmaU0wai9RZkxsZjM5MjZQOUlW?=
 =?utf-8?B?RG1PdWNjVVZTSnBWQm43S0JQQUNVdjFIcnJSQmw3NEpqeXpVMDFhQVRUQ1lY?=
 =?utf-8?B?Ykh3dFRqUmJGRFRYd0I3eCtTa0FwaEtKN2p1Q2I1M2NlRGpFcVB3K1hId0pV?=
 =?utf-8?B?YUZEYXYyQmxuUzJGd0cxaFZsWm1xOHhuWmZLRWgzRmp5aiswQUlUNkJOSXdB?=
 =?utf-8?B?bDlERStSOEtzdUR1UnNvY1gxaUdzTnJpOFdOa2pMcmFzb2N0VWVPaWVtZkZv?=
 =?utf-8?B?ayt5a3JwRU9NQ1lydHcrZEhFbDZyd0F6MlZld2ZDVUZZUFNTaWZBb1ZsYmc5?=
 =?utf-8?B?b3JDNzBBdjdJZzlXNXpVcGRua2ViNDZ1MVBHcCthNlFkcW1Bc0dHemZUcXhY?=
 =?utf-8?B?OFM2R2RVQTBGTE9YTnQ0MGdGZ2V4dm5IMGk5aDlpcFZja1R5b1lNM2ZaN2Q0?=
 =?utf-8?B?Z2VkSkdObVU4UGVrWExtK1lRMWpJY3NlSGFKSjJyNmlqYXR3OHhSTHJBRXpY?=
 =?utf-8?B?N0tROFVvQjdqTllXazBQSFBvbnpRQUYvRlZBY2p3R2hCc1FrVnA1T0JTd1hp?=
 =?utf-8?B?V2IrRUY1Y2FaTjFtbVBpRGpIai9LTG1EYnZKQ1crMVhQdjI4b0VhTFZscEdK?=
 =?utf-8?B?MHRPYUUrZ21wY09NclIxM0s5bTNaSzNtS1FWbDFpbnpsQzc5bU5jWFpQSUh0?=
 =?utf-8?B?VkE9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	9v2fHc0cnyaS7D1ddW+PTb0VtkCLm0P5/6eA/FGJMdFleWd26GdbCmb4WybRxCG797nOeMPFvZmnX7YUdCFgBrfqKJWpIBOachXSBoDjBPdlM9YZfl+Hr///7KJnXs+EwnGFoyLwwM2Xv2TvXdQ1EmegoNW9WmAUYLUuztwzRcnIR+IO52mxyqxR0mSykZXeuJHJ3buPxvLslpdV8FiSz8DuTNfaHai7SnLqQ6G2FMXGdJ6kuHHgIzUpmHHvZSdVM/ilhLQ3HMtAZWO8ac1vANgvUAkFGGf2CwHS9HpPI9Cahv8WeTfPBAgubi9aOND8ve0PupZnrBj137CJ7J4fynjw4UhhxFaq1tU3bm5z9ccwj0jOZ7fPOle52tmJNZIY3T1jGQxn9IGtLVSlfdbw094Qg4HWw9xx0w5CElJewTyaipitwTQgW8gPS752yY7VVXMfhyR4pYN+4W9mOZHS9NiQBVXl6bPhVywTX/rJ0rqaVzcMm7fYimPofSteHlSnvKGv+PQ3IjqAFqJ9KurAQCpXz1Z4+0orlDom2z3lZ3curXY201dIkNPowXwpzohKOoW5Yj8sdL5L1LQts8ek/vMObq1F0ZpV1DftFoPGStZgN44sZKhpqZCUaVGZl9+O3iX2gBT6XT3GYoZjg+1y4HsE/Np/XH+sjywfQX3gSMVdU2BOU1AsYsHZzVVNB9IT0v+Xa/SUJYfX+9FNXuEOuz/lFGvtxKKY3JHhIHdbeBxOa55t4NOacIutHvEZC8DTNH4PqrImpXsugEQ2SAS7u6GFOOZETeUcut1Hely3rJldkXGNO3kRyryfNPPku/J4E6hwdYT0caqpJLD99/e2/xOnzpPMIW1htIx4Bp6/5TIw5lXJJN/hfEQJO97RQzghugxiKrc4Kn/xGC06IzeGuJjrMsh+T740mct7OPcGjwQ=
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: ee0b7f9f-e137-4d42-4340-08dbc65f7a50
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Oct 2023 11:29:18.1972
 (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: moXqxOqr9cUI3j6wGGD7AyfxzcqO/sqYphlX5GpZnw/BM7IO9uFAafdkAZ93EQGLM4ut+YKsfRmGVBj4Tq2/3A==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR03MB5927

On Fri, Oct 06, 2023 at 12:19:29PM +0100, Andrew Cooper wrote:
> On 06/10/2023 12:02 pm, Roger Pau Monné wrote:
> > On Fri, Oct 06, 2023 at 11:47:48AM +0100, Andrew Cooper wrote:
> >> diff --git a/xen/common/domain.c b/xen/common/domain.c
> >> index b8281d7cff9d..df994bd30fd2 100644
> >> --- a/xen/common/domain.c
> >> +++ b/xen/common/domain.c
> >> @@ -1998,6 +1998,10 @@ long common_vcpu_op(int cmd, struct vcpu *v
> >>      {
> >>          struct vcpu_register_runstate_memory_area area;
> >>  
> >> +        rc = -ENOSYS;
> >> +        if ( 0 /* TODO: Dom's XENFEAT_runstate_phys_area setting */ )
> >> +            break;
> >> +
> >>          rc = -EFAULT;
> >>          if ( copy_from_guest(&area.addr.p, arg, 1) )
> >>              break;
> >>
> >> and a matching one for XENFEAT_vcpu_time_phys_area because I'm even more
> >> serious about this becoming a domain controllable setting following what
> >> OSSTest had to say overnight.
> > While this is all fine, please note that the newly added code
> > {,un}map_guest_area() is also used by the existing
> > VCPUOP_register_vcpu_info hypercall, and that one can't be disabled.
> 
> Yeah, I'm aware we're stuck there, but a crap interface from the past is
> not an excuse not to do new interfaces properly.

Right, want I intended to say is that if we are worried the new
{,un}map_guest_area() might be buggy, and would like to have a way to
disable it, just preventing usage of
VCPUOP_register_{runstate,vcpu_info}_phys_area won't be enough as the
newly introduced function is also used by the existing
VCPUOP_register_vcpu_info.

Not that we shouldn't add the checks, just that those won't cover all
usages of {,un}map_guest_area().

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Fri Oct 06 12:32:05 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 12:32:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613560.954145 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qojza-0007PY-GI; Fri, 06 Oct 2023 12:31:42 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613560.954145; Fri, 06 Oct 2023 12:31: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 1qojza-0007PR-Cf; Fri, 06 Oct 2023 12:31:42 +0000
Received: by outflank-mailman (input) for mailman id 613560;
 Fri, 06 Oct 2023 12:31:41 +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 1qojzZ-0007PL-Br
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 12:31:41 +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 1qojzY-00064C-RH; Fri, 06 Oct 2023 12:31:40 +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 1qojzY-0003fo-G3; Fri, 06 Oct 2023 12:31: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=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=L8tFD6l79uOF362InIY6ByFda+T0oYWqvpN7RPyZZCQ=; b=6ruLKMs0kxNmFg30npBXjKXo2r
	f/M9hpL2Ely+OWzZJvG6KqQO80CYvjBN1z83npEfcnf9mQogfPYdJu5dn89ytRPbrimqA+qwjgQVd
	FkklEWrSPz86p3BSqdUQkXNL0T5c1ggx+VyzArGvgKKRajosqZLlkAWiv5nQA0KQl7XI=;
Message-ID: <64feb572-6799-4d9c-a66e-94d5828081fd@xen.org>
Date: Fri, 6 Oct 2023 13:31:38 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [for-4.18][PATCH 2/2] xen/public: arch-arm: Update list of
 supported hypercalls
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>,
 "Daniel P. Smith" <dpsmith@apertussolutions.com>, Henry.Wang@arm.com
References: <20231006075142.9803-1-michal.orzel@amd.com>
 <20231006075142.9803-3-michal.orzel@amd.com>
 <b9d30cbc-255f-473c-974d-6dd262f22325@xen.org>
 <40878a29-d681-485b-8d58-0187ec586a2b@amd.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <40878a29-d681-485b-8d58-0187ec586a2b@amd.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit



On 06/10/2023 11:20, Michal Orzel wrote:
> On 06/10/2023 12:11, Julien Grall wrote:
>>
>>
>> Hi Michal,
>>
>> On 06/10/2023 08:51, Michal Orzel wrote:
>>> The list is out of date and does not specify all the hypercalls/sub-ops
>>> we support, so update it.
>>>
>>> Signed-off-by: Michal Orzel <michal.orzel@amd.com>
>>> ---
>>>    xen/include/public/arch-arm.h | 21 +++++++++++++++++++++
>>>    1 file changed, 21 insertions(+)
>>>
>>> diff --git a/xen/include/public/arch-arm.h b/xen/include/public/arch-arm.h
>>> index 6a4467e8f5d1..263b1e182eb3 100644
>>> --- a/xen/include/public/arch-arm.h
>>> +++ b/xen/include/public/arch-arm.h
>>> @@ -104,6 +104,7 @@
>>>     *   Exactly these sub-operations are supported:
>>>     *    * HVMOP_set_param
>>>     *    * HVMOP_get_param
>>> + *    * HVMOP_guest_request_vm_event
>>>     *
>>>     *  HYPERVISOR_grant_table_op
>>>     *   All generic sub-operations
>>> @@ -116,6 +117,26 @@
>>>     *  HYPERVISOR_argo_op
>>>     *   All generic sub-operations
>>>     *
>>> + *  HYPERVISOR_hypfs_op
>>> + *   All generic sub-operations
>>> + *
>>> + *  HYPERVISOR_platform_op
>>> + *   Exactly these sub-operations are supported:
>>> + *    * XENPF_settime64
>>> + *
>>> + *  HYPERVISOR_vm_assist
>>> + *   All generic sub-operations
>>> + *
>>> + *  HYPERVISOR_dm_op
>>> + *   All ioreq server sub-operations are supported as well as:
>>
>> I interpret this sentence as all the hypercall with 'ioreq' in their
>> name is supported. But, for Arm, we at least don't support
>> XEN_DMOP_map_mem_type_to_ioreq_server.
> What I meant is that we support all sub-ops from ioreq_server_dm_op (ioreq.c).
> XEN_DMOP_map_mem_type_to_ioreq_server is only accessible on x86 and not part of ioreq.c


The header is a public interface and meant to be read by OS developper 
which may not be familiar with the source code. How about listing the 
subops we support?

This will avoid the developper to go through the source code to find out 
if a sub-op is implemented in ioreq.c or not.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Fri Oct 06 12:33:32 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 12:33:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613564.954155 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qok1K-0007wX-R3; Fri, 06 Oct 2023 12:33:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613564.954155; Fri, 06 Oct 2023 12: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 1qok1K-0007wQ-O9; Fri, 06 Oct 2023 12:33:30 +0000
Received: by outflank-mailman (input) for mailman id 613564;
 Fri, 06 Oct 2023 12:33: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 1qok1K-0007wI-A8
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 12:33: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 1qok1J-00066C-Mu; Fri, 06 Oct 2023 12:33: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 1qok1J-0003sw-G6; Fri, 06 Oct 2023 12:33: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=kuxg9iV9fZrTqw84KJg+Ggv2pFTJYpjIJ8QW1C3CPQc=; b=h8+6OzgW75BNgSxpbS/76rQbnY
	/I+GrwAENhPEPQPEa54mLqdo1hZDUriTOona24DHTUVOgZNDMRbnORgFihqADcJBqX2sEX8EWnOJx
	a8AM/z3OgLEXpsQm6ItBfBzoYVMwQ+ns3xPE/bsrfcamdREA6pXXaDsbmtx2T6lR0nfE=;
Message-ID: <c97bd628-1be1-46bf-a506-6ffb90cf801e@xen.org>
Date: Fri, 6 Oct 2023 13:33:27 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN PATCH][for-4.19 1/2] xen: introduce a deviation for Rule
 11.9
Content-Language: en-GB
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, Simone Ballarin <simone.ballarin@bugseng.com>,
 Doug Goldstein <cardoe@cardoe.com>, George Dunlap
 <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>
References: <cover.1696494834.git.nicola.vetrini@bugseng.com>
 <98bc1d90b93856ed7516a19114facf6528120248.1696494834.git.nicola.vetrini@bugseng.com>
 <605f8045-754d-4d3c-b1b3-3bb34112bfc8@xen.org>
 <2aafb9710b4754e8d57acc1f769693b4@bugseng.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <2aafb9710b4754e8d57acc1f769693b4@bugseng.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit



On 06/10/2023 10:58, Nicola Vetrini wrote:
> On 06/10/2023 11:27, Julien Grall wrote:
>> Hi,
>>
>> On 05/10/2023 09:45, Nicola Vetrini wrote:
>>> The constant 0 is used instead of NULL in '__ACCESS_ONCE' as a
>>> compile-time check to detect non-scalar types; its usage for this
>>> purpose is documented in rules.rst as an exception.
>> Documenting ACCESS_ONCE() in rules.rst seems a bit odd. I am guessing
>> that other analysis tool may point out the same error and therefore it
>> would seem more appropriate to use a deviation.
>>
>> This would also avoid having a specific rule in the Eclair
>> configuration for __ACCESS_ONCE().
>>
> 
> I figured a single accepted use would benefit from an explicit exclusion.
> I can rework it to use an in-code comment to deviate, in whatever form 
> that comment may be
> (still with some bits of ECLAIR-specific configuration anyway, as 
> discussed for R2.1).

I think it would be preferrable to have a deviation in the code. This 
would be helpful for other analysis tools.

> 
>>>
>>> Furthermore, the 'access_field' and 'typeof_field' macros are
>>> introduced as a general way to deal with accesses to structs
>>> without declaring a struct variable.
>>>
>>> Cleanup of spurious MISRA deviations.
>>
>> Please don't do that. This is making the review of the patches a lot
>> more complicated because there are unrelated changes (see [1]).
>>
>> We often allow simple clean-up if they are in the context. But this is
>> not the case here.
>>
> 
> Understood. There will be a separate MISRA deviations cleanup/update 
> patch anyway,
> so these can be included there.

Sounds good to me. Thanks!

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Fri Oct 06 12:38:46 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 12:38:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613568.954165 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qok6M-0000cY-Co; Fri, 06 Oct 2023 12:38:42 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613568.954165; Fri, 06 Oct 2023 12: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 1qok6M-0000cR-9w; Fri, 06 Oct 2023 12:38:42 +0000
Received: by outflank-mailman (input) for mailman id 613568;
 Fri, 06 Oct 2023 12:38: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=5b7L=FU=amd.com=Michal.Orzel@srs-se1.protection.inumbo.net>)
 id 1qok6L-0000cL-Gw
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 12:38:41 +0000
Received: from NAM10-DM6-obe.outbound.protection.outlook.com
 (mail-dm6nam10on2060d.outbound.protection.outlook.com
 [2a01:111:f400:7e88::60d])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 45ea4020-6445-11ee-9b0d-b553b5be7939;
 Fri, 06 Oct 2023 14:38:38 +0200 (CEST)
Received: from CH2PR03CA0028.namprd03.prod.outlook.com (2603:10b6:610:59::38)
 by CH2PR12MB4165.namprd12.prod.outlook.com (2603:10b6:610:a4::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.38; Fri, 6 Oct
 2023 12:38:33 +0000
Received: from DS2PEPF00003439.namprd02.prod.outlook.com
 (2603:10b6:610:59:cafe::9d) by CH2PR03CA0028.outlook.office365.com
 (2603:10b6:610:59::38) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.29 via Frontend
 Transport; Fri, 6 Oct 2023 12:38:33 +0000
Received: from SATLEXMB04.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.6838.14 via Frontend Transport; Fri, 6 Oct 2023 12:38:32 +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, 6 Oct
 2023 07:38:31 -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, 6 Oct
 2023 07:38:13 -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, 6 Oct 2023 07:38: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: 45ea4020-6445-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=cDbKLz+eU98NuM+eE8PcJz1vwJGAXY4s8ZXBoRJ2Hb3Sn1e22r9b8ymuofFm0K9Dos58zJ5ET2sU1tE1LM3RXKhaxJ15hMpZyNakqvFKFej2901vJwswutlei/ZqEr/9P920XE9d9wvqQ4adDDwMUMezoVF12GE515AjwBi0VfekPsLoUsC2mxZBhTE06pZseUUTMT4zB0mfQCUENwc5HUio7GUd45dgB2aHrV3XMp6Cvolsm2tFowGXk4xiPlsRB9L9260YKs4RYkTrCg3sL+1PgAKHdBxlqN8c3fRIsQEPcauPjvVvclHUrT5Ob5xREUDSYYw6bte+s0CVxDqCsQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=OnovF2ihUuBGtv88M6SFxNgqJn3YmjWQ9awzZ6cApT0=;
 b=ByBnFHTfk2lbmq+qiR3TuGvLWPrcA3mIuoJZIduG23QzbXKWrwxsOhCc/7aV/VUzO5kkiiJK7loFCbQL1ASvPahPnKeco97H0ri/lL1MBnd4KE04ii95FY4sftL8tHfG1qaYcYHd9PxJNuppCSRKtJtjY47MGZ94NOgn0qq7bEhJuYzX+rsmCnFm5EgCZan1B/hg9vEJWhwKGGUqjevkbogVggSudyZrn/+4zXR9iI1dOxXBZDTO4l3MJ1K7BGAamhRBRZOkim5ffWRzk3ouFhe6sdBNVTgdOsCWS8jgORcIQswCk0vGJenjgWOrdltnyxV1/xfO0eBrv8/y+5+w5Q==
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=OnovF2ihUuBGtv88M6SFxNgqJn3YmjWQ9awzZ6cApT0=;
 b=L7TGFZGpmp+XPi3FUO90Adw+akBRVzJRbHtwzmiu68l/OOxmUU9UdOc/1COyc9XgqZiCGBiA+NSku8SI4+mFDh2g2f2aOfL+2uMcMqkXn1xzs+Ky0uc1dxMbHA9jEqZ5fz/tx9gSnxAqfXR131InDMR0R6MxaCIkY12m7BzchXY=
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: <215ce137-0b0f-4804-b500-548e16f0cca2@amd.com>
Date: Fri, 6 Oct 2023 14:38:10 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [for-4.18][PATCH 2/2] xen/public: arch-arm: Update list of
 supported hypercalls
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>,
	"Daniel P. Smith" <dpsmith@apertussolutions.com>, <Henry.Wang@arm.com>
References: <20231006075142.9803-1-michal.orzel@amd.com>
 <20231006075142.9803-3-michal.orzel@amd.com>
 <b9d30cbc-255f-473c-974d-6dd262f22325@xen.org>
 <40878a29-d681-485b-8d58-0187ec586a2b@amd.com>
 <64feb572-6799-4d9c-a66e-94d5828081fd@xen.org>
From: Michal Orzel <michal.orzel@amd.com>
In-Reply-To: <64feb572-6799-4d9c-a66e-94d5828081fd@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 7bit
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DS2PEPF00003439:EE_|CH2PR12MB4165:EE_
X-MS-Office365-Filtering-Correlation-Id: 040d7c3e-41b3-4a85-2992-08dbc6692685
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	xIQLsiVEFouHb4XuPG1QZTAbRTFh6XpbkV3jSviRIBjvpv+MVScZ/vsXKA4UWDetiEq5Yj8Sm8bLa0624ifW8E/FEyygAQ9ZysGucKwKcOSjRhj7Z+NlDTbWRIXq2crS2uFMbmISPl0G+lxSe2c+7TUYmbsv8Q9xmM52pComKCRi2Ks8j5BEIvLU4RrrHTehb6drMKku79P2gZCqoIAs8VpzRzxwH+f5U5myB1+elG0zd6+MHD5EBBXjmnTi1vSE8a3QEyAiWoyKZ1lQ6KCfrOTYAVljfwthiwrSdk0cXVF/q5XlAncrx+qBA82qcqaxF0bHpGn7JVZxQk3IVOIU0dACQi0bF4ME1j/CTOzcVhNIQZ4qMbrjUY2/uok9OYpQlwKt0LnZYvz+N6ddR1DFl/Jva2OOAcrGBOfglltueIg7YvVrSzUCndcE4Y1CV5c9AKBClderJ1YulWARAwStNmBWGU4ZeBrb3gyUOju5jLS42ACiwBXY4ydb1fkV35y+6PLn0KbWuGARsbSeOio+X8RX62uYDTSb2snLOZMDW21XMDnwSd6CTkWmPmI0OQpKNi1kP7KvNDZXFnAiAwTgFQ4fVS2ozwWyvo120uXNrTNbQK36A5jE98oyjxZ/0zgGKpFCq5As3x+LeAECpCIOTR6KQqrlJpWJaAaGVd9Pu9FTuvnYUY4SW7Jgbqe9r91N2Tu1GM7n6S0sM97NfvJyfK4zI/zz4NeMo1Jb+Iy2RXuQCSATNUNMrNSWHOLPckSxd9V7ieWOd2OBZ7Cbo9JdHug96ULRF8ggjSCDG8PhQtxM/8A8wiSGoTcuhvNeUHvf
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)(451199024)(64100799003)(186009)(82310400011)(46966006)(40470700004)(36840700001)(40480700001)(40460700003)(31686004)(53546011)(478600001)(82740400003)(36860700001)(86362001)(81166007)(31696002)(356005)(2906002)(15650500001)(47076005)(83380400001)(426003)(336012)(26005)(2616005)(36756003)(70586007)(8676002)(316002)(8936002)(70206006)(54906003)(44832011)(110136005)(5660300002)(4326008)(16576012)(41300700001)(43740500002)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Oct 2023 12:38:32.2402
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 040d7c3e-41b3-4a85-2992-08dbc6692685
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:
	DS2PEPF00003439.namprd02.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH2PR12MB4165

Hello,

On 06/10/2023 14:31, Julien Grall wrote:
> Caution: This message originated from an External Source. Use proper caution when opening attachments, clicking links, or responding.
> 
> 
> On 06/10/2023 11:20, Michal Orzel wrote:
>> On 06/10/2023 12:11, Julien Grall wrote:
>>>
>>>
>>> Hi Michal,
>>>
>>> On 06/10/2023 08:51, Michal Orzel wrote:
>>>> The list is out of date and does not specify all the hypercalls/sub-ops
>>>> we support, so update it.
>>>>
>>>> Signed-off-by: Michal Orzel <michal.orzel@amd.com>
>>>> ---
>>>>    xen/include/public/arch-arm.h | 21 +++++++++++++++++++++
>>>>    1 file changed, 21 insertions(+)
>>>>
>>>> diff --git a/xen/include/public/arch-arm.h b/xen/include/public/arch-arm.h
>>>> index 6a4467e8f5d1..263b1e182eb3 100644
>>>> --- a/xen/include/public/arch-arm.h
>>>> +++ b/xen/include/public/arch-arm.h
>>>> @@ -104,6 +104,7 @@
>>>>     *   Exactly these sub-operations are supported:
>>>>     *    * HVMOP_set_param
>>>>     *    * HVMOP_get_param
>>>> + *    * HVMOP_guest_request_vm_event
>>>>     *
>>>>     *  HYPERVISOR_grant_table_op
>>>>     *   All generic sub-operations
>>>> @@ -116,6 +117,26 @@
>>>>     *  HYPERVISOR_argo_op
>>>>     *   All generic sub-operations
>>>>     *
>>>> + *  HYPERVISOR_hypfs_op
>>>> + *   All generic sub-operations
>>>> + *
>>>> + *  HYPERVISOR_platform_op
>>>> + *   Exactly these sub-operations are supported:
>>>> + *    * XENPF_settime64
>>>> + *
>>>> + *  HYPERVISOR_vm_assist
>>>> + *   All generic sub-operations
>>>> + *
>>>> + *  HYPERVISOR_dm_op
>>>> + *   All ioreq server sub-operations are supported as well as:
>>>
>>> I interpret this sentence as all the hypercall with 'ioreq' in their
>>> name is supported. But, for Arm, we at least don't support
>>> XEN_DMOP_map_mem_type_to_ioreq_server.
>> What I meant is that we support all sub-ops from ioreq_server_dm_op (ioreq.c).
>> XEN_DMOP_map_mem_type_to_ioreq_server is only accessible on x86 and not part of ioreq.c
> 
> 
> The header is a public interface and meant to be read by OS developper
> which may not be familiar with the source code. How about listing the
> subops we support?
> 
> This will avoid the developper to go through the source code to find out
> if a sub-op is implemented in ioreq.c or not.
Sure, I fully agree so I will then send a v2 with:
 *  HYPERVISOR_dm_op
 *   Exactly these sub-operations are supported:
 *    * XEN_DMOP_create_ioreq_server
 *    * XEN_DMOP_get_ioreq_server_info
 *    * XEN_DMOP_map_io_range_to_ioreq_server
 *    * XEN_DMOP_unmap_io_range_from_ioreq_server
 *    * XEN_DMOP_set_ioreq_server_state
 *    * XEN_DMOP_destroy_ioreq_server
 *    * XEN_DMOP_set_irq_level
 *    * XEN_DMOP_nr_vcpus

I will also skip x86 patch given that Andrew wants to extend it.

~Michal


From xen-devel-bounces@lists.xenproject.org Fri Oct 06 12:39:22 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 12:39:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613571.954175 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qok6z-00016R-Lg; Fri, 06 Oct 2023 12:39:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613571.954175; Fri, 06 Oct 2023 12:39: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 1qok6z-00016K-J4; Fri, 06 Oct 2023 12:39:21 +0000
Received: by outflank-mailman (input) for mailman id 613571;
 Fri, 06 Oct 2023 12:39: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 1qok6y-00016C-HP
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 12:39: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 1qok6x-0006Mk-Ue; Fri, 06 Oct 2023 12:39:19 +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 1qok6x-0004Ac-Jb; Fri, 06 Oct 2023 12:39: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:
	References:Cc:To:From:Subject:MIME-Version:Date:Message-ID;
	bh=3ZF/GMh9B/0JNKkxms261LIoMGhn+Y9bFkbAJSfZbL4=; b=N6SoS/Y3ML61PCiVGSabBTRcES
	umjekOR8HchxmGHRiEhwG6GWhv88neR02hYzdqSUjseWLSbQoagnT/U5SUDypi2GoCu4PkjQCA+Cx
	hO+4qf0W1aZYGxQRjjwvCwjbLSoTN+5YRjkODM9dd7GmJgMBzpEJSZQdui8JvGDotD2E=;
Message-ID: <6b39c149-06af-4152-b86e-72510a22e330@xen.org>
Date: Fri, 6 Oct 2023 13:39:17 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v3] arm/ioreq: guard interaction data on read/write
 operations
Content-Language: en-GB
From: Julien Grall <julien@xen.org>
To: Andrii Chepurnyi <Andrii_Chepurnyi@epam.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Oleksandr Tyshchenko <Oleksandr_Tyshchenko@epam.com>,
 "andrii.chepurnyi82@gmail.com" <andrii.chepurnyi82@gmail.com>,
 "Henry.Wang@arm.com" <Henry.Wang@arm.com>,
 Michal Orzel <michal.orzel@amd.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
References: <20231005133011.2606054-1-andrii_chepurnyi@epam.com>
 <e092e1ac-e457-40e4-bb2d-79419d703e71@xen.org>
In-Reply-To: <e092e1ac-e457-40e4-bb2d-79419d703e71@xen.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit



On 05/10/2023 16:17, Julien Grall wrote:
> Hi Andrii,

Hi,

> On 05/10/2023 14:30, Andrii Chepurnyi wrote:
>> For read operations, there's a potential issue when the data field
>> of the ioreq struct is partially updated in the response. To address
>> this, zero data field during read operations. This modification
>> serves as a safeguard against implementations that may inadvertently
>> partially update the data field in response to read requests.
>> For instance, consider an 8-bit read operation. In such cases, QEMU,
>> returns the same content of the data field with only 8 bits of
>> updated data. This behavior could potentially result in the
>> propagation of incorrect or unintended data to ioreq clients.
>> During a write access, the Device Model only need to know the content
>> of the bits associated with the access size (e.g. for 8-bit, the lower
>> 8-bits). During a read access, the Device Model don't need to know any
>> value. So restrict the value it can access.
>>
>> Signed-off-by: Andrii Chepurnyi <andrii_chepurnyi@epam.com>
> 
> Reviewed-by: Julien Grall <jgrall@amazon.com>
> 
> Unless there are any objections, I will commit the patch tomorrow (Friday).

And now committed. Thanks!

I am not sure I would consider it for backport because the IOREQ is 
still a tech preview on Arm. We should consider to switch to SUPPORT, 
that said there is at least one bug that would need to be fixed first [1].

Cheers,

[1] 20201005140817.1339-1-paul@xen.org

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Fri Oct 06 12:40:34 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 12:40:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613576.954185 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qok8A-0002Wd-0N; Fri, 06 Oct 2023 12:40:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613576.954185; Fri, 06 Oct 2023 12: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 1qok89-0002WW-Tr; Fri, 06 Oct 2023 12:40:33 +0000
Received: by outflank-mailman (input) for mailman id 613576;
 Fri, 06 Oct 2023 12:40:32 +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 1qok87-0002Vx-VY
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 12:40:31 +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 1qok87-0006OK-Kt; Fri, 06 Oct 2023 12:40:31 +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 1qok87-0004Ac-Fz; Fri, 06 Oct 2023 12:40: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=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=8eeiZZQ4HDS+aRXypRrGiyh1EFJMl+r+lwZ0vmE3KSw=; b=H91bMzqOROgBm6d4R16tQh3q90
	HLrzQPaYtCTDrTL1JRhXKVudL4ue7cIKdYbpfquhvfFKt/tGDHBpLsf1tVNX2A6HM4YvJCHgONGh8
	Gef5nGxTAo/IfYlkCijrX+427aOro8HhwiNjd5hr/cHCJRtgX0gkL4o5gh/lyLxivb/8=;
Message-ID: <e6486fd1-bc4c-45dd-8139-4ea988ad6811@xen.org>
Date: Fri, 6 Oct 2023 13:40:30 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [for-4.18][PATCH 2/2] xen/public: arch-arm: Update list of
 supported hypercalls
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>,
 "Daniel P. Smith" <dpsmith@apertussolutions.com>, Henry.Wang@arm.com
References: <20231006075142.9803-1-michal.orzel@amd.com>
 <20231006075142.9803-3-michal.orzel@amd.com>
 <b9d30cbc-255f-473c-974d-6dd262f22325@xen.org>
 <40878a29-d681-485b-8d58-0187ec586a2b@amd.com>
 <64feb572-6799-4d9c-a66e-94d5828081fd@xen.org>
 <215ce137-0b0f-4804-b500-548e16f0cca2@amd.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <215ce137-0b0f-4804-b500-548e16f0cca2@amd.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit



On 06/10/2023 13:38, Michal Orzel wrote:
> Hello,
> 
> On 06/10/2023 14:31, Julien Grall wrote:
>> Caution: This message originated from an External Source. Use proper caution when opening attachments, clicking links, or responding.
>>
>>
>> On 06/10/2023 11:20, Michal Orzel wrote:
>>> On 06/10/2023 12:11, Julien Grall wrote:
>>>>
>>>>
>>>> Hi Michal,
>>>>
>>>> On 06/10/2023 08:51, Michal Orzel wrote:
>>>>> The list is out of date and does not specify all the hypercalls/sub-ops
>>>>> we support, so update it.
>>>>>
>>>>> Signed-off-by: Michal Orzel <michal.orzel@amd.com>
>>>>> ---
>>>>>     xen/include/public/arch-arm.h | 21 +++++++++++++++++++++
>>>>>     1 file changed, 21 insertions(+)
>>>>>
>>>>> diff --git a/xen/include/public/arch-arm.h b/xen/include/public/arch-arm.h
>>>>> index 6a4467e8f5d1..263b1e182eb3 100644
>>>>> --- a/xen/include/public/arch-arm.h
>>>>> +++ b/xen/include/public/arch-arm.h
>>>>> @@ -104,6 +104,7 @@
>>>>>      *   Exactly these sub-operations are supported:
>>>>>      *    * HVMOP_set_param
>>>>>      *    * HVMOP_get_param
>>>>> + *    * HVMOP_guest_request_vm_event
>>>>>      *
>>>>>      *  HYPERVISOR_grant_table_op
>>>>>      *   All generic sub-operations
>>>>> @@ -116,6 +117,26 @@
>>>>>      *  HYPERVISOR_argo_op
>>>>>      *   All generic sub-operations
>>>>>      *
>>>>> + *  HYPERVISOR_hypfs_op
>>>>> + *   All generic sub-operations
>>>>> + *
>>>>> + *  HYPERVISOR_platform_op
>>>>> + *   Exactly these sub-operations are supported:
>>>>> + *    * XENPF_settime64
>>>>> + *
>>>>> + *  HYPERVISOR_vm_assist
>>>>> + *   All generic sub-operations
>>>>> + *
>>>>> + *  HYPERVISOR_dm_op
>>>>> + *   All ioreq server sub-operations are supported as well as:
>>>>
>>>> I interpret this sentence as all the hypercall with 'ioreq' in their
>>>> name is supported. But, for Arm, we at least don't support
>>>> XEN_DMOP_map_mem_type_to_ioreq_server.
>>> What I meant is that we support all sub-ops from ioreq_server_dm_op (ioreq.c).
>>> XEN_DMOP_map_mem_type_to_ioreq_server is only accessible on x86 and not part of ioreq.c
>>
>>
>> The header is a public interface and meant to be read by OS developper
>> which may not be familiar with the source code. How about listing the
>> subops we support?
>>
>> This will avoid the developper to go through the source code to find out
>> if a sub-op is implemented in ioreq.c or not.
> Sure, I fully agree so I will then send a v2 with:
>   *  HYPERVISOR_dm_op
>   *   Exactly these sub-operations are supported:
>   *    * XEN_DMOP_create_ioreq_server
>   *    * XEN_DMOP_get_ioreq_server_info
>   *    * XEN_DMOP_map_io_range_to_ioreq_server
>   *    * XEN_DMOP_unmap_io_range_from_ioreq_server
>   *    * XEN_DMOP_set_ioreq_server_state
>   *    * XEN_DMOP_destroy_ioreq_server
>   *    * XEN_DMOP_set_irq_level
>   *    * XEN_DMOP_nr_vcpus

Thanks! With that you can add:

Acked-by: Julien Grall <jgrall@amazon.com>

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Fri Oct 06 12:50:43 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 12:50:43 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613583.954195 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qokHt-0004nm-1Y; Fri, 06 Oct 2023 12:50:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613583.954195; Fri, 06 Oct 2023 12: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 1qokHs-0004nf-U2; Fri, 06 Oct 2023 12:50:36 +0000
Received: by outflank-mailman (input) for mailman id 613583;
 Fri, 06 Oct 2023 12:50: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=2TT5=FU=bugseng.com=federico.serafini@srs-se1.protection.inumbo.net>)
 id 1qokHs-0004nZ-ID
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 12:50:36 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id f084f8bf-6446-11ee-9b0d-b553b5be7939;
 Fri, 06 Oct 2023 14:50:34 +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 893524EE0738;
 Fri,  6 Oct 2023 14:50: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: f084f8bf-6446-11ee-9b0d-b553b5be7939
Message-ID: <f7207b73-9913-453a-8d04-7b97af24e78b@bugseng.com>
Date: Fri, 6 Oct 2023 14:50:32 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN PATCH] automation/eclair: update deviations and accepted
 guidelines
Content-Language: en-US, it
To: Simone Ballarin <simone.ballarin@bugseng.com>,
 xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com, Doug Goldstein <cardoe@cardoe.com>,
 Stefano Stabellini <sstabellini@kernel.org>
References: <f7fb64aa1b78dfa57a2bf781f5a3cec6219c2de5.1696587777.git.simone.ballarin@bugseng.com>
From: Federico Serafini <federico.serafini@bugseng.com>
Organization: BUGSENG srl
In-Reply-To: <f7fb64aa1b78dfa57a2bf781f5a3cec6219c2de5.1696587777.git.simone.ballarin@bugseng.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 06/10/23 12:23, Simone Ballarin wrote:
> +-doc_begin="XEN only supports architectures where signed integers are
> +representend using two's complement and all the XEN developers are aware of
> +this."
> +-config=MC3R1.R10.1,etypes+={safe,
> +  "stmt(operator(and||or||xor||not||and_assign||or_assign||xor_assign))",
> +  "any()"}
> +-doc_end
> +
> +-doc_begin="See Section \"4.5 Integers\" of \"GCC_MANUAL\", where it says that
> +\"Signed `>>' acts on negative numbers by sign extension. As an extension to the
> +C language, GCC does not use the latitude given in C99 and C11 only to treat
> +certain aspects of signed `<<' as undefined. However, -fsanitize=shift (and
> +-fsanitize=undefined) will diagnose such cases. They are also diagnosed where
> +constant expressions are required.\""
> +-config=MC3R1.R10.1,etypes+={safe,
> +  "stmt(operator(shl||shr||shl_assign||shr_assign))",
> +  "any()"}
> +-doc_end

These two deviations for Rule 10.1 have been already proposed by me
in the following (not committed) patch:
https://lists.xenproject.org/archives/html/xen-devel/2023-10/msg00146.html

So, I would suggest dropping my patch in favor of the one
proposed by Simone.

Regards
-- 
Federico Serafini, M.Sc.

Software Engineer, BUGSENG (http://bugseng.com)


From xen-devel-bounces@lists.xenproject.org Fri Oct 06 12:53:31 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 12:53:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613589.954204 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qokKg-0005XB-D2; Fri, 06 Oct 2023 12:53:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613589.954204; Fri, 06 Oct 2023 12:53: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 1qokKg-0005X4-AV; Fri, 06 Oct 2023 12:53:30 +0000
Received: by outflank-mailman (input) for mailman id 613589;
 Fri, 06 Oct 2023 12:53: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=5b7L=FU=amd.com=Michal.Orzel@srs-se1.protection.inumbo.net>)
 id 1qokKf-0005Wy-9b
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 12:53:29 +0000
Received: from NAM12-DM6-obe.outbound.protection.outlook.com
 (mail-dm6nam12on20613.outbound.protection.outlook.com
 [2a01:111:f400:fe59::613])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 56d4afac-6447-11ee-9b0d-b553b5be7939;
 Fri, 06 Oct 2023 14:53:27 +0200 (CEST)
Received: from CY5PR15CA0146.namprd15.prod.outlook.com (2603:10b6:930:67::15)
 by MN2PR12MB4125.namprd12.prod.outlook.com (2603:10b6:208:1d9::9)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.27; Fri, 6 Oct
 2023 12:53:23 +0000
Received: from CY4PEPF0000E9D0.namprd03.prod.outlook.com
 (2603:10b6:930:67:cafe::9e) by CY5PR15CA0146.outlook.office365.com
 (2603:10b6:930:67::15) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.29 via Frontend
 Transport; Fri, 6 Oct 2023 12:53:23 +0000
Received: from SATLEXMB03.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.6838.22 via Frontend Transport; Fri, 6 Oct 2023 12:53:22 +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, 6 Oct
 2023 07:53:21 -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, 6 Oct
 2023 05:53: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; Fri, 6 Oct 2023 07:53: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: 56d4afac-6447-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=dHDDM6c2zGUKHIUJFcSX6jrb65Ot3iP0XnMmMn77NY299NQHkNq12nDYGyQimmHztUaejuCDly9ZlDCZ0npdzHZJwOBSRyKIGf8sEkgPH/XtMDQ9MdUrd1x75w9g5R1L0/+QpdcxT7c7/qBD7DOaEUwPzbztx9oknQqb75HYEu42vDAhjLtCocNIRkDqPHWO/3OIdpmpGiqNLK0EWzLfV1SyaSihOO83zDEaS4n7OSzTqamVv0qaMzE8aTE1BS2apL9ftMcrhFP3CXxkYT6hyo6VmLz7+KuyYsFzUOOSCYfbB7RtIOf7vqey+RE+o12WDzwUAhH2TXMjovdnCL1Fog==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=DH9OYO/IeEV5lYK8tXvnW2zlCqA4ION4doAauhDkWL8=;
 b=QTuiKcrdcBGnqMiQkYkz9WS+XfENcnonBsJCou5VdnasdeH27Qe6tV9NjyFPT4YlTAq8nFT5Y85rEhQxbbqtwy8SrcEkU6msWouSrEGU9GMWl7p+e0RaZBBmxStKh29yEWjGcYE4pmJbnDF8On/B3rXmqdsT6CTkLg3ssr5hhNQZObFYgchc0M8PxCw9OggjTf0w38hbkX7Y+JVBPmya7voDu5E3PmUMDbumOQWXx7BSY48VHLqYgsxEKJcgyePB1fE/Re7COCByJx3c1ze9nOYfgObwri71a/dTUiOPEfx1rNoGWWTJT6+EJuYgaWsOZ/mAjtOesuCQb2estWgJ4Q==
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=DH9OYO/IeEV5lYK8tXvnW2zlCqA4ION4doAauhDkWL8=;
 b=oSGnN1v7YaS0gPv7z0xp4+0P4NcmBZ73JghcVWArzebV7BTTVfi8xr8bssJsZ+tWwKCyT/8Obh3t9BGg8kwdRO6xkY0f5lx0Uqp9RwTKo4+WbVFYVY/QyrD7FZy5maYiJ0p8g+0NgH6n8PJXECzqzSZcwWKZTcTUAIBp7CFhuto=
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>,
	"Daniel P. Smith" <dpsmith@apertussolutions.com>, Henry Wang
	<Henry.Wang@arm.com>, Julien Grall <jgrall@amazon.com>
Subject: [for-4.18][PATCH v2] xen/public: arch-arm: Update list of supported hypercalls
Date: Fri, 6 Oct 2023 14:52:20 +0200
Message-ID: <20231006125220.23140-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: CY4PEPF0000E9D0:EE_|MN2PR12MB4125:EE_
X-MS-Office365-Filtering-Correlation-Id: 4e221564-5bf5-43b5-9862-08dbc66b395c
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	E8TUYJCLcHVgPHpsM+jx7RIxQ+jkIjmg0jaovQUGltY9xmsBzkafm6Ai7fswDBkI4Yph1gGxpb4i9iaEtydvVnbVhxVmIuj6MWkjvMd3kPmmfi5jiuuFHVFsc+SLbHpX4Pv0IHK7sioGDnM+gAwE/metuKUIssgFYisPHZJ/k4z4vdKDEPqxELhid2UziLVPhXnI6HuMtITbGUKGtagWOLWI2flLERu+NPibDhhtyxwlapbG3rlUDHTvomcRmzK3cKVlANY9Zu2XpcaM/SqlCtioX54DtQIcQ+KyfHW9sP1y7wVOdZkqWKDayAdSYTi7niqXEibjALoIGAXlQdl5f28agqGy2tlD9/KK0jcbhBoq4LNcCYfFyH79+MUghgMUliKTYJRpHgvieDTZB4wOmyNon7Akf3bL4dh0EtaltpeE8doLS/3jUKzllTCcuqsBTXZhdzbQYsYaZ7xz9oUFM7Uvh0Z+Lzsx99Kmnetu1FPhHGuoTaregNEBbOwu/kc+3DiXZ7rm9+yDZWO/gHRXNn0fu45PQg+t31xXRJl1SPzzoJ7lsN01frmR1KyPtMebmL6UX43qLwJT1Yg9IWZwS5cP65CIyQlNeox67uy0hyPLK70jsb0y88qY0lWmDiZWdQysskzkBwTKJMKSagyYtMFHP8rF8fRLCgcLzhaDynkvfts2UU6Kt9sDlP8N0NLj89eyvOTYLoC23AQgBcUAtlZIA0b7Cg94FmJipLEMay+dZy+8aasDgCnSkgrpXvqTDfEGcYTlt5tu6Jup5ajcoA==
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)(82310400011)(64100799003)(451199024)(186009)(1800799009)(40470700004)(46966006)(36840700001)(81166007)(6666004)(1076003)(2616005)(8936002)(5660300002)(4326008)(26005)(2906002)(478600001)(8676002)(15650500001)(44832011)(316002)(54906003)(70206006)(336012)(86362001)(41300700001)(6916009)(70586007)(40460700003)(426003)(36860700001)(82740400003)(40480700001)(356005)(36756003)(83380400001)(47076005)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Oct 2023 12:53:22.8133
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 4e221564-5bf5-43b5-9862-08dbc66b395c
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:
	CY4PEPF0000E9D0.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN2PR12MB4125

The list is out of date and does not specify all the hypercalls/sub-ops
we support, so update it.

Signed-off-by: Michal Orzel <michal.orzel@amd.com>
Release-acked-by: Henry Wang <Henry.Wang@arm.com>
Acked-by: Julien Grall <jgrall@amazon.com>
---
Changes in v2:
 - explicitly list dm_op sub-ops
 - add Julien's Ab, Henry's Rab
---
 xen/include/public/arch-arm.h | 27 +++++++++++++++++++++++++++
 1 file changed, 27 insertions(+)

diff --git a/xen/include/public/arch-arm.h b/xen/include/public/arch-arm.h
index 6a4467e8f5d1..a25e87dbda3a 100644
--- a/xen/include/public/arch-arm.h
+++ b/xen/include/public/arch-arm.h
@@ -104,6 +104,7 @@
  *   Exactly these sub-operations are supported:
  *    * HVMOP_set_param
  *    * HVMOP_get_param
+ *    * HVMOP_guest_request_vm_event
  *
  *  HYPERVISOR_grant_table_op
  *   All generic sub-operations
@@ -116,6 +117,32 @@
  *  HYPERVISOR_argo_op
  *   All generic sub-operations
  *
+ *  HYPERVISOR_hypfs_op
+ *   All generic sub-operations
+ *
+ *  HYPERVISOR_platform_op
+ *   Exactly these sub-operations are supported:
+ *    * XENPF_settime64
+ *
+ *  HYPERVISOR_vm_assist
+ *   All generic sub-operations
+ *
+ *  HYPERVISOR_dm_op
+ *   Exactly these sub-operations are supported:
+ *    * XEN_DMOP_create_ioreq_server
+ *    * XEN_DMOP_get_ioreq_server_info
+ *    * XEN_DMOP_map_io_range_to_ioreq_server
+ *    * XEN_DMOP_unmap_io_range_from_ioreq_server
+ *    * XEN_DMOP_set_ioreq_server_state
+ *    * XEN_DMOP_destroy_ioreq_server
+ *    * XEN_DMOP_set_irq_level
+ *    * XEN_DMOP_nr_vcpus
+ *
+ *  HYPERVISOR_xsm_op
+ *   All generic sub-operations
+ *
+ *  HYPERVISOR_multicall
+ *
  * Other notes on the ARM ABI:
  *
  * - struct start_info is not exported to ARM guests.
-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Fri Oct 06 13:02:02 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 13:02:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613594.954214 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qokSr-0007XO-73; Fri, 06 Oct 2023 13:01:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613594.954214; Fri, 06 Oct 2023 13:01: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 1qokSr-0007XH-4S; Fri, 06 Oct 2023 13:01:57 +0000
Received: by outflank-mailman (input) for mailman id 613594;
 Fri, 06 Oct 2023 13:01: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=Twl1=FU=citrix.com=prvs=63654eace=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qokSp-0007X6-8k
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 13:01:55 +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 831a10e2-6448-11ee-9b0d-b553b5be7939;
 Fri, 06 Oct 2023 15:01:51 +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;
 06 Oct 2023 09:01:44 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by BL1PR03MB6024.namprd03.prod.outlook.com (2603:10b6:208:316::10)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.39; Fri, 6 Oct
 2023 13:01:41 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::66ca:3a42:baeb:9ecf]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::66ca:3a42:baeb:9ecf%6]) with mapi id 15.20.6838.030; Fri, 6 Oct 2023
 13:01: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: 831a10e2-6448-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1696597311;
  h=from:to:cc:subject:date:message-id:
   content-transfer-encoding:mime-version;
  bh=qCYyTpNPjOJv3YwKIrbsK2yGzwNUnBZobPvDDFnwikM=;
  b=Xxjko2gwh3hhXZmltOM0CRPWPxaEPM145GIOolXlb+YHCnqlGBJEZD/D
   dmEukHxdQWV43iAM5MmfRHFC+6vZoaj4ZprVTnRhZQte0jWIRPjruk33c
   smnR1qa/sWJVJTxoVUM0ylxkFSzdAuvgNVQ/BnlfxXdapowwMDwUrHveP
   U=;
X-CSE-ConnectionGUID: XFzr78a5RXOQcs84/sxXQQ==
X-CSE-MsgGUID: BbymaxLBSWWX5rKspncfzQ==
X-IronPort-RemoteIP: 104.47.58.169
X-IronPort-MID: 124080199
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:EiJK86M6+tXDF0jvrR0hlsFynXyQoLVcMsEvi/4bfWQNrUorhWcOm
 zFMWT2Obq2LNDT3L94lb97k9RgC7ZGGmoI3Sgto+SlhQUwRpJueD7x1DKtS0wC6dZSfER09v
 63yTvGacajYm1eF/k/F3oDJ9CQ6jefQAOOkVIYoAwgpLSd8UiAtlBl/rOAwh49skLCRDhiE/
 Nj/uKUzAnf8s9JPGjxSs/nrRC9H5qyo42pA5gJmPJingXeF/5UrJMNHTU2OByOQrrl8RoaSW
 +vFxbelyWLVlz9F5gSNy+uTnuUiG9Y+DCDW4pZkc/HKbitq/0Te5p0TJvsEAXq7vh3S9zxHJ
 HehgrTrIeshFvWkdO3wyHC0GQkmVUFN0OevzXRSLaV/ZqAJGpfh66wGMa04AWEX0tZZE3sRp
 fVFEgAqVxuY177x26KLc9A506zPLOGzVG8ekldJ6GiASNwAEdXESaiM4sJE1jAtgMwIBezZe
 8cSdTtoalLHfgFLPVAUTpk5mY9EhFGmK2Ee9A3T+PpxujaCpOBy+OGF3N79YNuFSN8Thk+Fj
 mnH4374ElcRM9n3JT+tqyjw3r+XxHKqMG4UPJey5/tjkHm5/VMsOEAMdkCjp/K3mHfrDrqzL
 GRRoELCt5Ma5EGtC9XwQRC8iHqFpQIHHcpdFfUg7wOAwbaS5ByWbkAkQzhbeZoZvck5bTUw0
 xmCmNaBLT5lvaCRSHmd3qyJtj70Mi8QRUcAeCsFQA0t89Tl5oYpgXrnVc1/GaS4itn0HzDYw
 D2QqiU6wbIJgqYjyKGT7V3BxTW2qfDhRQkw4xjRX360qAZwYoeqapaA+VXd9exHLouSUh+Gp
 ndspiSFxOUHDJXInirdRuwIReit/6zcbmyahkNzFZ488Tjr42SkYY1b/DB5IgFuL9oAfjjqJ
 kTUvGu9+aNuAZdjVocvC6rZNijg5fGI+QjNPhwMUudzXw==
IronPort-HdrOrdr: A9a23:XUPKrKtYtSfVzalwnrStegwO7skDRtV00zEX/kB9WHVpm6uj+/
 xG/c516faQsl0ssR4b9+xoVJPgfZq/z+8X3WBhB9eftWDd0QPDQb2Ki7GSpgEIcBeOlNK1u5
 0QFZRWOZndCkV7kNa/wCTQKadY/DBfytHNuQ4J9QYLcT1X
X-Talos-CUID: 9a23:IDvgK2Du3PCGMYH6ExlJ5lRLSsl4SE369XzLcxP/EnZZcYTAHA==
X-Talos-MUID: 9a23:Ts15swYNKCF2MOBTnTX9gThyEO1T3JueVVouio0AsMeWDHkl
X-IronPort-AV: E=Sophos;i="6.03,204,1694750400"; 
   d="scan'208";a="124080199"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=c2NAUgN85FUHdF56MxCMtx1dab/t+/ufj3caF6yECRf8j00ZH30QaS3KcftXl5fLf8bmJMV+YECs6fygsRMKus82d4BmGu8+5TNrw+nbXkOHvsl6creY2CN2p0ypn80o66rQ7wXEoFscO1vPESZXF3Ts3KuOkmMEaCHv2P19PXeYcEbV96oKAF9yaF3e5xNR6r2LtfNn6i+axwrWeYUPo+LMmP5tjaBxSGiLrlaNRUIelWahyzThi0Y9VYtVf+/V8cn8KQufSGumJZ5zNFnOUhTtmlRFxIWVWBv+VWFIEWxNQn4RM4pKFp6tB3jS6p9hxbapLS8lzh5fSSb8pkU1zQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=IH1pis6T8jQ5sk2PQzURXM10ZzAg16i/u9FM25oCPQU=;
 b=PYOhaGDnZcMmYSvm7dkJjqNPfD1gyS1DzcF/0ktBsQI3TRo4FesAaeLJjq1TwnRRBFmhS/lLoITd9Hpg1k5dIBelFODnkNUimMrduFauap5elDfAwwoDbQFZrzh0fRWAFGHUDFer52Ws2LJsDyBj3hTf9QLPYqdzYBOLAlXosTBFz5Y9RBxyQ/qTmTVDAQ7QXp8RSm+QDoe1WhQe2VFlVpo++LpJDiA7V+WtQ3ZLKPs9O3GpXcFpZUbUgDFBMzkHbcyv3+XpAN64Ok9TFEEHDBDTLSvCwXiFpUjF4VqF8ZohxMMxIjwfGAwrA86pnzG5U9mPFTiD8KUqC1v5SfQN6g==
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=IH1pis6T8jQ5sk2PQzURXM10ZzAg16i/u9FM25oCPQU=;
 b=Ldx49kGozEcGLaCw5aVBxL8UV3PJBQimmMDjL4v7hozAM6+DQGHXEp91npG5G2mWKuK51ZkaSUIYPME/NeSgkngQOb5fdxwKGkVcUqHklRN9r3LnvEhbh4ic6GBNPrksTKNEhEGlxydqc7rTzrW9tPA5pIpGb7MjB6iF7yBh234=
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: Henry Wang <Henry.Wang@arm.com>,
	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>,
	Community Manager <community.manager@xenproject.org>
Subject: [PATCH v2 0/2] domain: followup for phys address mapping series
Date: Fri,  6 Oct 2023 15:00:57 +0200
Message-ID: <20231006130059.97700-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: LO4P123CA0263.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:194::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_|BL1PR03MB6024:EE_
X-MS-Office365-Filtering-Correlation-Id: 80384a8d-6586-4d52-95db-08dbc66c6247
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:
	d1AJB5EHqzaFzDtyDd/m4h2NRJh3iRRRaEbKMyD0aq2h+HbIzHSYe3dH/mKPqYLlrbK2NWX5D5ALTiTdx0mJIkiYamc2Uv11JG6n1JLFYGTeUSRIeJBOpDoCmDR9bvBH9hv1zMDKPUw+bIYquGCswydrWsOShP0rsYHUwGmppbvA4mdQOzQQYja3BmCItluz9F+ic6pAWIMkRigD0cTqJupM17EIdzEmF61qPlpA+vNa5K+ROhom5KS6/7e3CI0DYiu5bzBYw/HtIQQm+x1rBEz7On+vcICvLZWug9F+45AB5ItOo5Hnif4AvBe/AwlfoKId8+3PqUHw2iqkaplQFgs/VS77ir5wh8hFyfUqnYGuN0WkndEnuRcb+sRZZ5xErSmaqXMs+MMz2BFJPq0rf0Od8qH5RKhxS/c5YPIn1X+hKPG/QWyG9UdsQFAf+RtrieMAT7Xi1wKeGIvola5Pq16jWrG/Rzlg1eGgzR2IS2aCkQF0Zx2KyhXSk57zh7a/+hw3poHHr1YEdwvFHmhRXkgINL8JEWbwNt9QsXPOnQ9r/zEP7DHPEVYTXUkYk1zg
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)(366004)(376002)(136003)(39860400002)(230922051799003)(451199024)(1800799009)(186009)(64100799003)(83380400001)(6512007)(6506007)(6666004)(478600001)(6486002)(86362001)(82960400001)(38100700002)(7416002)(2906002)(4744005)(1076003)(26005)(2616005)(36756003)(316002)(66556008)(66476007)(54906003)(66946007)(5660300002)(6916009)(41300700001)(4326008)(8936002)(8676002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?V0tCbFBtbjZiYUZJdzJQV2VJcFM5WU12RjhBMG9CRWZJZU5VVUo0RExRdVht?=
 =?utf-8?B?dCtEZHVjd05WUXovRkpVUU1BKzNZSU5QWVQyNUtZcTB2QmwzTEU3RkZnNUdn?=
 =?utf-8?B?WEcrcW1OTnFnMldDZ2w4d1YySkVzUEJPTjR3TWF1dVBiN2d4aUcxSkl3eVpo?=
 =?utf-8?B?OGlDSFhZV3hHTHJ0ZWFCWGNIWWFQK0lYWGlMdW1NQkFjZnlhMTBUM2RDWUlT?=
 =?utf-8?B?QUJTOUg5dVhXUzJEWVpQWm9pNGtOTE1PWHF2L3QydEJKQnlLQ1BHS3YyNEU4?=
 =?utf-8?B?bG13MFgxQUlra1dOQjdpNVZrMHhLTU5rSEd6WXhid3NzSUNERUV3N0xEVlNh?=
 =?utf-8?B?UitjczdWTmhvZHJxbHZwdEpBenZxYU9jN1pXM2xXNWUxeUVXenMxNmFTaXl5?=
 =?utf-8?B?SklkU2Zzb1VITkZVcE52SDlNMWRibGRkcjdiVjVtbll4NUIxVFI2RnBWVldK?=
 =?utf-8?B?TnhUOEQzc1YyOWJ3cSsxOHQ0TVhXYnFnOWJ1eU5WUTVRY2I4dWRJaGV4VW9s?=
 =?utf-8?B?SWlZa2l6dXRqSDV0WVBwazcvWDErZ01lSkJHZkpwSCthaWZpY081Nk45YWVK?=
 =?utf-8?B?bFpxdlo5Z1FqL0lsMFNaQ2VWU09DcmIvVmpmdDVKUGtyNlJPaHJvd3VLRGVQ?=
 =?utf-8?B?RzRTV0pwM1lvUkI2NzIrdHNnUFZWUjVsbU5yRjhxVXVOUU1YWHhHK3dEN00r?=
 =?utf-8?B?ekRPbHVmZVN0RzNWRk5Pb2lneXczTGlxbFM5bWNzQ2hYTi9LZVU1WkYxTWRW?=
 =?utf-8?B?MFFnbTdoa0dqcW85U3h6amRoWHVKaWNRb2E0RDJWTjlnQ3FpaHB0TG40MG9U?=
 =?utf-8?B?aUtuVU9Rc0hhV0hxeEkxVHEzU0pEUGQ2NTVnL0R1RVRHZlZBYTVobzdpd3l2?=
 =?utf-8?B?eVRaenZVMTZUNzd4S25pOXYybldNWFBDMzhIdXlRZlFXbkFCeSs1YkZnNmFC?=
 =?utf-8?B?dlBIZ1AycFYrREZpVXlPK0JGWGRnZjRsczR1Z1ZKa25VZW9EaWtlWHk2TnpB?=
 =?utf-8?B?cUVDVURhRFY3NE5HR0N6SDZyU3dFTnhESHNKQS9US01abG55ZWY5eDhyNkhi?=
 =?utf-8?B?RnY3Wk1qV1QrZ2NQRmRMVCtYWmZ0SG5mcUtONFJOVXpPN21jR0s1NVFrMUR4?=
 =?utf-8?B?dmJQVmV6ellHcnQxc0N1enRRa1V6d0VrRGY5L0ptMXBESHdzVjlXUjNBVExq?=
 =?utf-8?B?QmM2bnhjRTZEYTNmcmJXS1h3Tjc4NkZGcVE1Q0JkSGp4WnBFTTEvY0wrQzNz?=
 =?utf-8?B?MWRhbXg0R3lpV09EclQwK1BxRDlKQWtGbUllY1BYeTRxd0dOM0lpZE0xQVFK?=
 =?utf-8?B?Y0pUK0Y5MHQyREUxVXl6MHNFM0t1a3k5SHNXcmRWTm1LSy9keFFISGpBOVI4?=
 =?utf-8?B?NytlcFJuSmx4dmYzSHl6RSszZkxJL253enNFbXR6NDQ2SlVESmd5VWhlc21G?=
 =?utf-8?B?OWt5bVdGZS8zYVBMNEphVms2aUV6dUF1aE9SdElJeHVVL3VtQUpBRFR1RFUz?=
 =?utf-8?B?emlyenNjbXI3T3YrRThYU212QVJFVlVFUlZHM3p5WTdWVk8yQ1pFVDJkSWxS?=
 =?utf-8?B?dVpvTk1UdHpWa0tyWVlDWm9lZXVJYmoyclM0SlNBbkZvMk9xODBrNWMrZ0FM?=
 =?utf-8?B?Q29jNFg5VXR1U3hJS0pnc3RzbTdPMDQzbjBUM3VMQlI2NUxGdnlvQzJXZjQy?=
 =?utf-8?B?ZW1ydkErc251MTlkRmlUVy9sR1J2YUVsMTJERFF6a3lqektpZGREWGxGSjVh?=
 =?utf-8?B?S0xBNkdIbzcrbXJ1OUVZMVhPYk5sMU43U0VOS0cxMWFUVTBlTWl3TmI1aElq?=
 =?utf-8?B?YzYyajkwUUhsNG91Zmx1Q3M3Z2xUYmI2TzBTQlNMbHZpRW1QZE1maHU1NTNG?=
 =?utf-8?B?b3hrTy9rZFpQa0JsSnZRY3RSeXI5d09WbWFLMFhmcDZHZnRQc1V5YWFUZlRk?=
 =?utf-8?B?R1NBc3hwVisvZjVyZjk5UFFTVHkrV3U5bEgwWDU5UHE5dytwYk9RWVozZ3Z2?=
 =?utf-8?B?eE5tQVJQTDVabkhKZEJLNERLOHJRQUVxamVIcEt4SDQvbW5QbG5NSUpXRDVT?=
 =?utf-8?B?VEZ5TWdqYzFISTg2aEREUXhFaGs1QkFxWjREN2tIcmlBemtWcm01NE5YeTZK?=
 =?utf-8?B?VUkyU1dlV1RPaDQ5aE1MdlB5RGw5NXlxNnBZSjllbW5DQk15eHBUWit2cHIr?=
 =?utf-8?B?clE9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	XHE0ovjxPuf5ZWk7DfNq2a3bhT3xezF5XNkW6NIKWJniCcj6V8D0Ek/ZdMLUB34FncEhcvFgI5uFy2xTAyS1YGOs4b4rO+SeZXy+55OXrUD2LUeOD76pP0HDbdvCAAp+I7dYYZhx/08qcIxfEt5xwZoU1vXGsnaMPtAMU0IuEE3igiX4YWS/kxkSNS6LlnyHMiJz/tAScvJUn9J4drbDaBJ/qUM9Tcg0QBGNtfZoRQ0zasWJRvPIvpYlP7Hwhvd5N9jTM8bh6A7tXfTXU0zAK3+AllQ4ulG7avmBbd7sn6GuuCkeTzvn2mBnNYul1ME7u+2qx4xXBi8tygMcNDk4PYl2Dex2NdQH1y3ef/z7WazYBUvS7wg0Kf0KBCwS/C8qLcPsPFgzg0D6s06Tq8fOrOQV5AmNCSmThu5AwG6JpEvjJ+PVc/qqQjbsMIj7TuGu0imJj6dsBBOVRiAPtxxYoNWPGKVl5wWnHNzD7ZVKz3e9FpFpYDeX5o+ItuSQwxamLNYNv6lNqYM4FOwOy1nHo9Ziry8kkLidsGXapthFKuBuGf7rJI6i84/m9krVSK4iyZzYwlbwiICRg1sAIfGy6qv2SCkGdRJQJcRyTi8NQ9K/BKT+6GERH6ldhHQeizv3yitmLNHP1KmPbqdAVGpbAhI41XQ4sVwX28l8SMmZVCzz6zUvNW4QkIc2EcmR8I36Q22TBI3GSw8hlNved1BTaGBKdorCPEvCucJY+j8TewVGDT6hbkI63Q35nrFCqHpqxAB2eh7i50HSvIFL2sq4UW+PbX8mzJcWvk6JlYDHZtIyZ8sObSl31DBtNFPBrH4vMvu9uSZx7XQLKWUu7vMrwms2vNrZq2lFGGf7PzuXT325mindxqGyiJ6k564aXKeACyKmtYMo9ruMiwH1IndvAupUg0hLTA5q76DA/Rn+BQo=
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 80384a8d-6586-4d52-95db-08dbc66c6247
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Oct 2023 13:01:41.2142
 (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: omb4638B1Gccx1IljFEYptL4rOC3+tMGRpJwUuKvTBucal4FENQFAUB3nyj9ombsMOSvUMUwYtLs9/M77Sx8gw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BL1PR03MB6024

Hello,

First patch fixes a bug reported by osstest, second patch is an addition
requested by Andrew, I think this should remove the blocker raised
against the series.

Roger Pau Monne (2):
  domain: fix misaligned unmap address in {,un}map_guest_area()
  domain: expose newly introduced hypercalls as XENFEAT

 CHANGELOG.md                  | 2 ++
 xen/arch/x86/domain.c         | 4 ++++
 xen/common/domain.c           | 8 ++++++--
 xen/common/kernel.c           | 6 +++++-
 xen/include/public/features.h | 9 +++++++++
 xen/include/public/vcpu.h     | 3 +++
 6 files changed, 29 insertions(+), 3 deletions(-)

-- 
2.42.0



From xen-devel-bounces@lists.xenproject.org Fri Oct 06 13:02:03 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 13:02:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613595.954220 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qokSr-0007aC-Fb; Fri, 06 Oct 2023 13:01:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613595.954220; Fri, 06 Oct 2023 13:01: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 1qokSr-0007ZY-BZ; Fri, 06 Oct 2023 13:01:57 +0000
Received: by outflank-mailman (input) for mailman id 613595;
 Fri, 06 Oct 2023 13:01: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=Twl1=FU=citrix.com=prvs=63654eace=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qokSp-0007X6-T5
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 13:01:55 +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 83c65d31-6448-11ee-9b0d-b553b5be7939;
 Fri, 06 Oct 2023 15:01:52 +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;
 06 Oct 2023 09:01:49 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by BL1PR03MB6024.namprd03.prod.outlook.com (2603:10b6:208:316::10)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.39; Fri, 6 Oct
 2023 13:01:47 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::66ca:3a42:baeb:9ecf]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::66ca:3a42:baeb:9ecf%6]) with mapi id 15.20.6838.030; Fri, 6 Oct 2023
 13:01: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: 83c65d31-6448-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1696597312;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:content-transfer-encoding:mime-version;
  bh=YjeDujQhkCSuotTmusn7paGxFGmyKhPrDHPA33kBIm4=;
  b=BAe215+o82Di3fEQwSUMDhbsRoz/oYiuGWFo9vEU35BiDMVsgtWTihvx
   s+mKhXffeTHNQ38ANjtYRc/7OQvRpapI2vmX8jpL4ZvTdFNYPgmBIo0J6
   JmAYUhLZM+qCb9ZPA49uNUBuplsFs2qEp9SqZ4DadKO7xd2QD5TCeBx3M
   g=;
X-CSE-ConnectionGUID: Bv6MBkPWTUaSQC83zpI/Xw==
X-CSE-MsgGUID: AHSINDi/TGKhUBe7OGi3kw==
X-IronPort-RemoteIP: 104.47.58.169
X-IronPort-MID: 125254119
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:jGq7zq7kU4eKT5he9G4WvQxRtOLGchMFZxGqfqrLsTDasY5as4F+v
 mEYXW+Ha/6CMzH0LYt+adyyp0MPvsOHztdnGgJtqytmHi5G8cbLO4+Ufxz6V8+wwm8vb2o8t
 plDNYOQRCwQZiWBzvt4GuG59RGQ7YnRG/ykTraCY3gtLeNdYH9JoQp5nOIkiZJfj9G8Agec0
 fv/uMSaM1K+s9JOGjt8B5mr9lU355wehBtC5gZlPKgT4geH/5UoJMl3yZ+ZfiOQrrZ8RoZWd
 86bpJml82XQ+QsaC9/Nut4XpWVTH9Y+lSDX4pZnc/DKbipq/0Te4Y5iXBYoUm9Fii3hojxE4
 I4lWapc6+seFvakdOw1C3G0GszlVEFM0OevzXOX6aR/w6BaGpdFLjoH4EweZOUlFuhL7W5m3
 +JGDRoOVi+/uuuN+ZnrEft0p4MTM5y+VG8fkikIITDxK98DGMmGaYOaoNhS0XE3m9xEGuvYa
 4wBcz1zYR/cYhpJfFAKFJY5m+TujX76G9FagAvN+exrvC6OnEoojumF3Nn9I7RmQe1PmUmVv
 CTe9nnRCRAGLt2PjzGC9xpAg8eWx36hBd5LTezQGvhCqX2o50o/CVoqeni7nNO01WmRWolcN
 BlBksYphe1onKCxdfHtUhv9rHOasxo0X9tLD/Z8+AyL0rDT4QuSGi4DVDEpQPwrstUnAwMj0
 FChlsnsQzdotdW9S3iQ67OVpjOaIjUOICkJYipsZQkY59jupqkjgxSJScxseIaulcH8Ezz0x
 zGMrQA9iq8VgMpN0L+0lXjYhxq8q56PSRQ6jjg7RUqg5wJ9IYSjN4qh7AGC6e4addjICF6co
 HIDhs6SqvgUCo2AnzCMR+NLG6y14/GCM3vXhlsH84QdyglBMkWLJeh4iAyS7m8wWirYUVcFu
 HPuhD4=
IronPort-HdrOrdr: A9a23:YLL766k8auY2aYM1r6K4Arf0GUvpDfIi3DAbv31ZSRFFG/Fw9v
 rDoB1/73TJYVkqN03I9ervBEDjexPhHO9OgLX5VI3KNGOKhILCFvAA0WKN+UyEJwTOssJbyK
 d8Y+xfJbTLfDxHZB/BkWuFL+o=
X-Talos-CUID: 9a23:8GjBYmMOc11BFO5Dcjc50WQXIv8ZT3Tm9VyAeF2gKCFZV+jA
X-Talos-MUID: =?us-ascii?q?9a23=3AtltEJg70T3HFeMQHZKaipBrixoxBw5+PLmwM1qk?=
 =?us-ascii?q?pmMm5HyEvHBic1zeoF9o=3D?=
X-IronPort-AV: E=Sophos;i="6.03,204,1694750400"; 
   d="scan'208";a="125254119"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=YnMzNDRQq8o8TcWWguHw07fZkaPcaLuvv+zoCKL8D+ornZfO6eD9VmXRUUmD0P/2yomvWK1FyItNvvMdM9xINv0QNeLk3aLEEh5z/9jaCsL1I5e0RC2PY11HFqtMvPUR+eojs1F+s0v3v2vR4gIh7wl8wskKlX6K6U0yFwE3GuVaRrbQDzDWkXcyfllhk9gJuaKa9hKOoqu2wW0RSNKBNKtMd8lXDbA8bTkDSM92xAg/Odnn2Qj7pJuW1PqdIWcue3a1/PkZbosJ7fFx/5FTC4jnHdBSB6lBi1S1bMRpfgx4IGNZZo1vMEOF3ixXmvLx43VZZCejZcCSn1a+HFwbCg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=thBVzZHE25HD5UvaIrP9q3ANVbkmnqpnKglf4PdZI5g=;
 b=O/NGxsXNcSyi481lwWl1aPdP4ZZpPK38mbI8SJpVNc7fJzcsZaDRdTfKLPAxS35WYSeRHY684+ubNrrAyJatDIEBuK2PcM5xSy3bgf+hW5u8NvEFJOOk5tUyZBvg0OWJ2L9Geoc32numoBWhRrcsQYYctbLC5Iumm5FbIotdu7EbieNYjjHdfrjeifRAlpF8xhwy6NJUGmXPO1e+7W9Ede517zr2var5p8eF6p6ZPo71QPAJ8egAN6cBzuFUIjdqYkwi3dWw18fkmMlbQSelLyFw6EpWePlJ2Cdouhw2Lp9wXzUjXku6BhCJ+qscqdy2fmEmdfforODYk3V9akbdRQ==
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=thBVzZHE25HD5UvaIrP9q3ANVbkmnqpnKglf4PdZI5g=;
 b=jvTh7cv7p/TSLw/YuO/0kZ+G9yHeS107kBSvNbs5YSq0uu9U+EoQPLefl2KUfV/CssV07blNPdcrUv2PaQ60u8yHW7Q1qJjAzxliHsr8D4LQ+DNOZdZkPh3ku8QKyF4wqoGVncMsYKFbVhoKagWwKc8MIOVQkvYVMS2wwC0kLxw=
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: Henry Wang <Henry.Wang@arm.com>,
	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 v2 1/2] domain: fix misaligned unmap address in {,un}map_guest_area()
Date: Fri,  6 Oct 2023 15:00:58 +0200
Message-ID: <20231006130059.97700-2-roger.pau@citrix.com>
X-Mailer: git-send-email 2.42.0
In-Reply-To: <20231006130059.97700-1-roger.pau@citrix.com>
References: <20231006130059.97700-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: LO4P123CA0324.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:197::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_|BL1PR03MB6024:EE_
X-MS-Office365-Filtering-Correlation-Id: 99255386-b674-4109-6966-08dbc66c65d1
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:
	GyqUK8a882Z4hYNiTVVbpqW+6BqtwGKgS5WgBCITGd5shvPy2XalVQLu92H4H1+1KWccteCTwknHZcfuDFkPV2ZCbtE8wMsJh907QutxVQT8TAxdCB/G3Cu3VQfnKjBLiQwOXMlLxH1Yx0UZCiV1HJGrHUykgkr3xStUpmA2Dvb0rnq7R19KQI3NFz1beFB0aLM7xD8OF7r25vXq1ZxpFYd3uINdqoC2FNNEZInpJkGXKg3aBvgMwHVATCfTAiJftGPtbjcKhu6B1r6yLrUOlRYewV++/Yy+LJCL6BX016mNiJqogc7VrXhyBH458lzPVO+LY4HCK0E8bXv0F6b3c/G1hfPaB+Sd452iaEcQin6NM1f+jeJvA2UXzhlc2fDzeajqjrQ5UpbyFvyExHtl5bd5Z+Xfji0+/AHvzuISkxOhT3f68/dW8qCH8PFndypMwJijhqXYZTua/d+I9mLpB+gbgYMTiPW9c1kTt7M7BWeyM1ijrSi2TevCiUyi80Be2V3NTS0bZVf1AhZbEnq1JsDb+OTXtkCjjUKJuCW/bU7dA2qdk/ANV+CWzDju9bDB
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)(366004)(376002)(136003)(39860400002)(230922051799003)(451199024)(1800799009)(186009)(64100799003)(83380400001)(6512007)(6506007)(6666004)(478600001)(6486002)(86362001)(82960400001)(38100700002)(2906002)(1076003)(26005)(2616005)(36756003)(316002)(66556008)(66476007)(54906003)(66946007)(5660300002)(6916009)(41300700001)(4326008)(8936002)(8676002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?U0ZBcy9BU3Y4STU0SFVVc1htaGdoZ0NhNUxRYXJRMlpkc1RxUFdtWXNxYXlv?=
 =?utf-8?B?U1YrNFFVREJ0TnFiZnkvemc3aEk4dktSWGRreU80Vk13RUNlUGtMbFYrZDMv?=
 =?utf-8?B?ckhkUm1GZzRYZjJJWUZJQkNudStXZTFjdjNtLy92L1FDbkcxeFh0VDB4Q2U5?=
 =?utf-8?B?T2lOTW1xVVJFbUhaTjlWOERiRkswa3RXY3k4UERuMXhBYkxNSUJCSlR5NDBI?=
 =?utf-8?B?Z1pmKzVhQklYUTJrLzNJRjRIN1BaNjRuMzg2Vk9oWWdHQWdFeFNtUTY3ci9q?=
 =?utf-8?B?Zzl4NTRvTHl3Nm9yZ3AzRmNZVmRJc0dxelJjWXppSDU5S2tZZi9sUXVjYWFX?=
 =?utf-8?B?VUNjMDRLT0pLVm1xU083dWJnYkhXL200ODJKZ2d4Sk8xbmt5dVp0RHZEbW9T?=
 =?utf-8?B?VWdxMUtRdkkzaW9DMFkxVk0vWUdEZmRoUEJmZzErMDQ1NjRHUHdjUWxncjVG?=
 =?utf-8?B?SnlsWDFzVko5K3ZvOTkxOGFtZEhJQzI1eHk0KzFjWDZ6Y0hNcWxVZW9RU0t0?=
 =?utf-8?B?bTNZT1lWdWhQejltMk9Db0QwM0c0b2xjVzVuKzV6OTE3V3dPTmUyMGd5dXk1?=
 =?utf-8?B?cHRTUm5RQ1A2V2VXd1hCeWU1a3BhdjVQV09nK3NJWjFHVlZkZEhqdS9oQWdn?=
 =?utf-8?B?bmdldjZnTnJwbGdoR3pwZjBJVTBrcWd5TGNacUx6NXl3RDdpNnhiWjAvaEZv?=
 =?utf-8?B?YUhuaHcxTmVYVVBJajlDaUlYTHpoQW5hV3hiemNBVEFqWGEyaFVzT3k5SDM4?=
 =?utf-8?B?WW9TVzByVnBQbXZoN1NwSjN3M1Y2ck5wVGFueWs3ZjVWR1NYUksvM1ZObEdH?=
 =?utf-8?B?TzZ1dzB5Z09WVEZ2azNNNXFpMjk5NndBZTRrWjl6OHdQclpNYU85NWRBZFJI?=
 =?utf-8?B?Z2tQTjZFdmlLRVpydWlVemR1REZGQzlGZ0tZVEY0dWpreDF2RFJZR3pZa2dC?=
 =?utf-8?B?QnYrUmI5MEVLYk5aa3ZHZU1WdEgzTHo4Qk9JTmxISFFNWTA3TEdmY2gwSEJ1?=
 =?utf-8?B?RitWYTUvbjdxbDJUL0YySWw3a2oyYkZHL2NxeUc1Y1h2VXZQeGNxMlpZTVBo?=
 =?utf-8?B?ZUtYYlFyNkpkZ25zdWtnZGVxYm13UnFOZi9zekJqMFZKdTZWOCtiNmZyVEZx?=
 =?utf-8?B?U3ZpSnphVTN6a1JFNWU0bERYVnhmZ1RsQk10U0Ewb0tIN2JSMjRaODVMOU9J?=
 =?utf-8?B?Rzg5UkhyMWVTQzdSbzdSbkNVSHVFSGpsRFJ5WDdCOWJNenhXTXg4L09nK1VP?=
 =?utf-8?B?WVlTRHdxRnU1Ym50dERHQ1hyeFN4LzhadnZZZnNyVlFTUGFPV2lzNFp4VmI5?=
 =?utf-8?B?SDdiNGduRTFIaUl5RlhtdGd5NVZIcCtVSnhQOFZkVTFFWUN5VklCQm91R2NN?=
 =?utf-8?B?Mlg3UlF5eGw3ejQ0ZjdlL2RjeUQycnMwMURKTmtlb0h2THhYNmhmZDlCUE5G?=
 =?utf-8?B?eHYwNlBoL1dTU0dmMHl2aDIxVnBCNndKdTVRWjRrY0d0aEM2T1hhTGtpbXFV?=
 =?utf-8?B?TFNMU0ZDVXZEd2oxUkY1OXUxK3lkNVlMYkJnSXVpdXoxK3dmYWFLWUZrbnNi?=
 =?utf-8?B?WDhyZ3FWSzlNYThyNUlkTU9EdUJHcTZKVjg1M1BaUVExWVBPdDJNRnQ5ancv?=
 =?utf-8?B?Q0ZiRjd1Wk5TQ05mM3hyV2VGM01wenN6MSt4bDZGUUpIWlFmVnkvVkZYVEt3?=
 =?utf-8?B?cnRncm5TbXpZOEJZTTdjWVhDSmE0UmVxa3ZwZytDenMzN2oxNDhvY01VM2tJ?=
 =?utf-8?B?MWJDWWxmeExERUdhSzc3alhJMnZOWnZTYVU4cWxHbmc4Y1JXY1pmNW15bmtC?=
 =?utf-8?B?MkxxYzFxNi80TGFoSHIxV1BMQzlGaTBZcytJMDR2Z0xqMUpNYVoxRmtLcXc5?=
 =?utf-8?B?enBjOGlGak1kYUh4K2htd3lWNFFzdnBWMjdZMnNjZDFKQy9nUWI2VG9DVVB5?=
 =?utf-8?B?bnVoUkUydEFJNVVVeGRVSld0dlIwOUFvUzN5NitFM3pNWHUzZU12UGs5Mm5D?=
 =?utf-8?B?WG1JVDg5cjRWWnRBY2dwdXl6K08rK3BRcnZ5ZW90S21ZMkpqMHl5dXUyZlo1?=
 =?utf-8?B?ckF5aVJBdnIwa0NCZ1F4S0pwL1liNURWZ3d3Wmx6bHJwYjBPRHRRMnVSZkgz?=
 =?utf-8?B?R0tRV2pCZkp2QUxyRVM1ODFhZFlEYzdqSTE0WG9PenlvKzNWR0hyeG9uVmQ1?=
 =?utf-8?B?b0E9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	WxTWDjgMzwZOV+DMCnzTgPR3AZL6hIbcH89lwR6ZwsA24Y9WTgLl6orLaamhg4uxuLN3MLdwyWhlrscgKiApYTjDKKS0O38S6PrhD+/MmxVXDOJYZozH7rSGyNOiFCtz7gPwaLw0wzRIWthENg+xAyMAwTvwZ9pQSgeLAklwEdFEzm/or+eFO/GPkksciecsBv3RkS3391UDu+w6vNesipZiMXEGbNS+vP0mWkBsoRTWUPV/LF2DPHLoWaIKtrZiy6ADwJGTc36QsbFVRXk5fhFgf8vT9bQL3IguRSBIi59bSMUa0Xpc7chjj+XoEjrZ28Ta0VQF/PzJ2wkCbv9jj3QnNY/YjRErD5oPJ1VOk2niLdEU/dWM3OhX57w6RPUhBud9wroj3cp3S6HleyYT/ND82TNJ7SlQFWwOWv86R/gKcywF1xPercGdpx74zt+p/BGm/AW1XQo1f3jTG7oq63qfx2OllXUTAa+qdEQTzu6/jnsrDRkVLLs9DBO87ZlaYlE1KZTY0r9g1OLWBKa6ARXr450fKl1sIPHco+lBmOAMn0xP/Na9fMTTsS0AnU2cHBolVfw11KcASTzEfsEw7hx7tJU5sbcaDHcEtgEGwUM9dTJ+mx9Dec+sQh2BYLgMFHgLb5Qsuvl7tY9pgotLAq/3J/VZUPE+4ZmbZ5OgWNzX9eiMUP2BVBPmHOTxpx7I0fEGzztY5/XGRhsTCgldHG9yrOQD64XL+GJ+Gc219CZ23HzceXAJX+IcbJSiSLWTtd3iO+Ylp9EuVmPU3l6b1Z1yuleteYP9VOskGPZpbshKme36AAIYxfLluxMjPbr9KHh17yRAVcfom+QxAoHto1DB3IaWkECKOVBzUq8L0uJMXwO63BVUiJgR/hGhCpNT
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 99255386-b674-4109-6966-08dbc66c65d1
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Oct 2023 13:01:47.2479
 (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: MN5H1GtDzUNrxPub1u25HtNOLAMQCQgI8JV1XL4WYX4lTkhH0E1SNLbJ3lsJnTEAsY1nzwo8WsobJiqDwtJPlQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BL1PR03MB6024

unmap_domain_page_global() expects the provided address to be page aligned, or
else some of the called functions will trigger assertions, like
modify_xen_mappings() on x86 or destroy_xen_mappings() on Arm.

The following assert has been reported by osstest arm 32bit tests:

(XEN) Assertion 'IS_ALIGNED(s, PAGE_SIZE)' failed at arch/arm/mm.c:1243
(XEN) ----[ Xen-4.18-rc  arm32  debug=y  Not tainted ]----
(XEN) CPU:    0
(XEN) PC:     00271a38 destroy_xen_mappings+0x50/0x5c
[...]
(XEN) Xen call trace:
(XEN)    [<00271a38>] destroy_xen_mappings+0x50/0x5c (PC)
(XEN)    [<00235aa8>] vunmap+0x30/0x1a0 (LR)
(XEN)    [<0026ad88>] unmap_domain_page_global+0x10/0x20
(XEN)    [<00208e38>] unmap_guest_area+0x90/0xec
(XEN)    [<00208f98>] domain_kill+0x104/0x180
(XEN)    [<00239e3c>] do_domctl+0x8ac/0x14fc
(XEN)    [<0027ae34>] do_trap_guest_sync+0x570/0x66c
(XEN)    [<002019f0>] arch/arm/arm32/entry.o#return_from_trap+0/0x4

Fixes: eadc288cbb0d ('domain: map/unmap GADDR based shared guest areas')
Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
---
Changes since v1:
 - Also page-align the address in map_guest_area().
---
 xen/common/domain.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/xen/common/domain.c b/xen/common/domain.c
index b8281d7cff9d..1468638ade8b 100644
--- a/xen/common/domain.c
+++ b/xen/common/domain.c
@@ -1601,7 +1601,7 @@ int map_guest_area(struct vcpu *v, paddr_t gaddr, unsigned int size,
  unmap:
     if ( pg )
     {
-        unmap_domain_page_global(map);
+        unmap_domain_page_global((void *)((unsigned long)map & PAGE_MASK));
         put_page_and_type(pg);
     }
 
@@ -1634,7 +1634,7 @@ void unmap_guest_area(struct vcpu *v, struct guest_area *area)
 
     if ( pg )
     {
-        unmap_domain_page_global(map);
+        unmap_domain_page_global((void *)((unsigned long)map & PAGE_MASK));
         put_page_and_type(pg);
     }
 }
-- 
2.42.0



From xen-devel-bounces@lists.xenproject.org Fri Oct 06 13:02:06 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 13:02:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613596.954235 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qokT0-00086t-Qe; Fri, 06 Oct 2023 13:02:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613596.954235; Fri, 06 Oct 2023 13:02: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 1qokT0-00086m-O1; Fri, 06 Oct 2023 13:02:06 +0000
Received: by outflank-mailman (input) for mailman id 613596;
 Fri, 06 Oct 2023 13:02: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=Twl1=FU=citrix.com=prvs=63654eace=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qokSy-00085i-Ja
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 13:02:04 +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 89f0fef1-6448-11ee-98d3-6d05b1d4d9a1;
 Fri, 06 Oct 2023 15:02:02 +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;
 06 Oct 2023 09:01:59 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by BL1PR03MB6024.namprd03.prod.outlook.com (2603:10b6:208:316::10)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.39; Fri, 6 Oct
 2023 13:01:57 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::66ca:3a42:baeb:9ecf]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::66ca:3a42:baeb:9ecf%6]) with mapi id 15.20.6838.030; Fri, 6 Oct 2023
 13: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>
X-Inumbo-ID: 89f0fef1-6448-11ee-98d3-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1696597322;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:content-transfer-encoding:mime-version;
  bh=q9WWfWAkLiKL9bTKZOYna340S9McrAJSBpCBi1mBNvA=;
  b=EGHNN/PNQZP1EIkTBEySCDlo03g5Fh9FhLhKYk9HF13KF8SRgXjRDvnS
   jf/oqkYRouxP1erelI4LjVCz89aY9drPCUT2ZJpZoREcLJq4sKO9B6vSY
   aQZiPLaquJDHH7OOoiiYMb7XoovwQKfN4JkVQsxmTIhoMvNWQ4hRlFGlA
   E=;
X-CSE-ConnectionGUID: zdvHY1jERRuCuGZJFk+JRQ==
X-CSE-MsgGUID: GGINF2EgRgmDxN9CXK/EQA==
X-IronPort-RemoteIP: 104.47.58.168
X-IronPort-MID: 124080232
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:e7XWda0w9Tg9/YvWa/bD5Vdwkn2cJEfYwER7XKvMYLTBsI5bpzVWz
 2IdD2vTb6rcZWD3eIh3PN/k8ksF7ZLWnd9rTFY6pC1hF35El5HIVI+TRqvS04F+DeWYFR46s
 J9OAjXkBJppJpMJjk71atANlVEliOfQAOK6UbaYUsxIbVcMYD87jh5+kPIOjIdtgNyoayuAo
 tq3qMDEULOf82cc3lk8teTb83uDgNyo4GlD5wRmO6gS1LPjvyJ94Kw3dPnZw0TQGuG4LsbiL
 87fwbew+H/u/htFIrtJRZ6iLyXm6paLVeS/oiI+t5qK23CulQRrukoPD9IOaF8/ttm8t4sZJ
 OOhF3CHYVxB0qXkwIzxWvTDes10FfUuFLTveRBTvSEPpqFvnrSFL/hGVSkL0YMkFulfE21Q1
 c1BKh03VA2oms2E4py4CctWv5F2RCXrFNt3VnBI6xj8VK9ja7aTBqLA6JlfwSs6gd1IEbDGf
 c0FZDFzbRPGJRpSJlMQD5F4l+Ct7pX9W2QA9BTJ+uxqsy6KklwZPLvFabI5fvSQQspYhACAr
 3/u9GXlGBAKcteYzFJp91r13LOXzXuhA9h6+LuQ2dFLpnPJ62MpBxg6RX3qismazWOHcocKQ
 6AT0m90xUQoz2S7Q9+4UxCmrXqsuh8HR8EWA+A88BuKyKff/0CeHGdsZh5MbsY38vA/QzMC3
 0WM2djuAFRHu7qQTG+b96uF6za7PyEaIHUqdSICVREC4dTovMc0lB2nZtRpHbOxj9b1MSrt2
 D3Mpy87750RkMoK2qOT7V3BxTW2qfDhVRUp7w/aWmak6AJRZ4O/YYGsr1/B4p5oM4KxXlSH+
 n8elKCjAPsmCJiMkGmHRrULFbTwvvKdamSC0RhoAoUr8Cmr9zi7Z4dM7TpiJUBvdMEZZTvuZ
 0yVsgRUjHNOAEaXgWZMS9rZI6wXIWLIT7wJiti8ggJyX6VM
IronPort-HdrOrdr: A9a23:p+rzR6kZNHpblk8cR2G7NAyqSOfpDfLo3DAbv31ZSRFFG/Fw9/
 rCoB17726QtN91YhsdcL+7V5VoLUmzyXcX2/hyAV7BZmnbUQKTRekP0WKL+Vbd8kbFh41gPM
 lbEpSXCLfLfCJHZcSR2njELz73quP3jJxBho3lvghQpRkBUdAF0+/gYDzranGfQmN9dP0EPa
 vZ3OVrjRy6d08aa8yqb0N1JNQq97Xw5fTbiQdtPW9f1DWz
X-Talos-CUID: 9a23:lmLoHmPxBUPtRO5DSiV51H9NGO0fSGD20VjiAWG7SkRTcejA
X-Talos-MUID: =?us-ascii?q?9a23=3AfmOl4wxNm1Z5tL0Ew+rlyVIYLOyaqIuBKWYjy7g?=
 =?us-ascii?q?JgcaBGTxWahytr3Oae6Zyfw=3D=3D?=
X-IronPort-AV: E=Sophos;i="6.03,204,1694750400"; 
   d="scan'208";a="124080232"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=HatLaQaf9607+FPTCsxftOShzFdcrc1ouuD0TJEZ2iTwAAZKbKI56q2yu3UQG8YFzI+h1sfMfMphVdr3Px8rTAdPBE2r7EoSqShJAolHQabSHz8B+ftuTWIyAAXF0iuBJeqfLhYeOywXb1KYeGlG2jrw+fog8EOtfjCeoeM07hrWNHc7Yccxf8WMCzvIv7N7ukFnI0KaXd1I7HyIiJ5AFP+oC22dKRJ3CDKoMDQsjk9jUpND4RLNWmhLr0d2yY+VdiXGAcWpFmCmSrUYoVt9Hz3EROYa4QotlJWmI+8TgUxTF76FRuZyN15LhYdGC78POg3DLtF1mUmTiLRFRvCHfQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=vbrwg8wsku3XWRoPqMOqqdVQ5jyqnzvdDHhWtg8wd3g=;
 b=Nroz2+rygCqf8ioxstX+9Yof6InIkVKEHZ3uO43VZvS7sE5p/5Y+T7j6KNvOnTXIz19ILa5QGiFe0Kq8t8R0c0/3Hj6vrf2aBe/E8JxgJSTKanDy0oHM7lZAbYdMgQSQAX5K/m8nojCM/hhrGvxsMTZHvBMDKvb+Rtfbbs/sslhFXbfFW0amw7aKQYllAMo1rZj3aLqYeoSjkaHyL9SIbpH+Al4CEvpjg8kdUdws2DKs9O2grwOPr2ZMFRr5+q6T+c4W45aZ3gFylmH5Tgvu5S+gSNpC9JH7/+51qUhtCYySZBFe9K8NGLqHYlhi+ZQFrVBD6B3c3+sT8thN/rbQCw==
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=vbrwg8wsku3XWRoPqMOqqdVQ5jyqnzvdDHhWtg8wd3g=;
 b=B9XqkiQFnYj3edAP18lcuYImDjLE1w+fpsqMNXGAzY2va9HZowCvumj6bFN56jiXMBzkPN73Rh7K0rpXkV/fnwmIYv/5dHqPQsaLxKaygGs8YdjT9J02yP/aHnvUUV4B8AaYStY01G9WrrTIseP7f9lx7NWQdSf2eIhvIBCZujI=
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: Henry Wang <Henry.Wang@arm.com>,
	Roger Pau Monne <roger.pau@citrix.com>,
	Community Manager <community.manager@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: [PATCH v2 2/2] domain: expose newly introduced hypercalls as XENFEAT
Date: Fri,  6 Oct 2023 15:00:59 +0200
Message-ID: <20231006130059.97700-3-roger.pau@citrix.com>
X-Mailer: git-send-email 2.42.0
In-Reply-To: <20231006130059.97700-1-roger.pau@citrix.com>
References: <20231006130059.97700-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: LO2P265CA0328.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:a4::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_|BL1PR03MB6024:EE_
X-MS-Office365-Filtering-Correlation-Id: 2146d73b-e0ed-42cd-12af-08dbc66c6bf9
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:
	EnCAHMxvhf00WK+y/jtXeMnQMsXXkaAD4mKaVoGRakloD9uZmoCPcM9vu2218yULl7QgHjJrv9dBPt4dkgmeeDFGnM+jikxAegnvEz21WxOpu49FNdBV+IihOAK2n6fLLVq7+0IxgRnD6dDcMB9KgvW/h7MpzmzJxaIS1V/VDitMl7rB/U6h+sif0CgqXG7WK1Z2cU7vOtqtUw7Gr7Y859wpZsFtJjQhcVi+rJ3jsKUFMVPhb54k6Dub2QZ14Y2a7kSSlXxN47f1JWqM/OREexLlQBIIvymcK45wa0vv5iFQZn9KuJMTV2EU+zMWUaYdnyHCZMxdTDzxW6n2uRdV7XGzNRelLvB1EpyzSF9++6h5ONl6AcUEfCjyP/L34tsx4ZDiXF8+kRctVDzqmPPRNv5SooVP1O9mBACjl1l8vZe2ioCYLMjpexv4cmIOW0gpb2OBAgHFWNcl/8YynrV6TcIyWv4uhWJ8OTOHM04LlUV+Y6Jsg2g+gKVRZimjYijQqrNpy5sRSos7IXRm6JXoMBa5omcjYuzByA+9UWJLHIw=
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)(366004)(376002)(136003)(39860400002)(230922051799003)(451199024)(1800799009)(186009)(64100799003)(83380400001)(6512007)(6506007)(478600001)(6486002)(86362001)(82960400001)(38100700002)(7416002)(2906002)(1076003)(26005)(2616005)(36756003)(316002)(66556008)(66476007)(54906003)(66946007)(5660300002)(6916009)(41300700001)(4326008)(8936002)(8676002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?S1ZtVHdUaGFoZTFlc1hlc2pSZzhQSnNJVWpveEIxcmFycnZ2S2wyZ0w2eVJE?=
 =?utf-8?B?cHQrbVdXYUcxVTBPWGw0dU51RXQzOFdDRmNiYlc0QWdLUEJFeXFaVVh2VmJn?=
 =?utf-8?B?VU1TZHp5cy9HS205a0VYZW1KaHc5K0RXMjZoUVN6aW0vb3JITDRKaE9tOVYz?=
 =?utf-8?B?THBkaXVpWFRWYnprbkNtWlVQdUNjbzJiVGFUQzF0ZHBNYy9SRmZRZXBkWnRt?=
 =?utf-8?B?ODV2eTRpcVc4VUZraXpmbmkrQS9kb2NkYUpxeUUxYW8rSHhMUUJ2R1dsc1BS?=
 =?utf-8?B?ODQ5UTBTajN2R0t0d2h6aTdHUkZ3MmdIZjNxTzhkVW15cTdXd1NYV3pocGZX?=
 =?utf-8?B?cnEzK2pJNUFXZjFvRnBYdXl3cTIyQnI5eHZNbEZKQWZqWm9acjJlOW5RNzZa?=
 =?utf-8?B?Wm9wNkRYZTlhd2RhNGcrUUw5YktQekcvV3Z4RzhIQzNnYVM5NU5DM2VPTUxJ?=
 =?utf-8?B?Vm5xeEEyVkpReG9FcXJOd1dQNzRPR0tuaWdWL2V3MU5TMU1MeEF4Q2h2VmhK?=
 =?utf-8?B?QUdhVE53RTFSNithaW8vWHNOOU8xUyt5RWdhWGRXV3gyZUcyVGpDRG5EMjRj?=
 =?utf-8?B?TU16TnB4dkdhd1NCY2R5Z3pBWitCLzBWYWNuNDBBaHRNTU9ibVhVemZWT0lL?=
 =?utf-8?B?TWdRSloreWNud2ZOMUdsMGx0TWVZZHAvOU5NTGpMQkVhZ3lzaVUyemFkRCtj?=
 =?utf-8?B?VWhMMXNUVFo0amxsSkkzSUFyTzFkNDYycUZkaDE5Uk9ueHUwNG45MFo5ckxW?=
 =?utf-8?B?VGlQRVJ4VndFaDhzenZXZjZFTWlaTDJYOWozeVdZZDM2T3VWdXNyUHI1OXRL?=
 =?utf-8?B?bUFtVm1rL1VWOGNNY0JtUW9welFGMjdtRTQ3dmlhVTBaRmwvSXpDaGpGeDlH?=
 =?utf-8?B?WnJCRFI5bVdKbEhGL21YU2p3UEdsK29WVG5KR0xtcng4eGRlUDNxMmlpclVL?=
 =?utf-8?B?WjJMSXRGLzQ0bU5LL0Rwc1dmcFNpTlQxV1lzdUYvTGdqVlV5WHlmQjhNYkVw?=
 =?utf-8?B?MElQWGRweE1tWU1TNmNCMnIzc25LbHRqai9kR2Q2cFh0aUowWkx5KysvS0ZY?=
 =?utf-8?B?bzdaR2V2KzIzZytjd2E5QUVIMWgzcGI0Ykpjblp5b1R2RnMwNno3elJTNnhP?=
 =?utf-8?B?bG42djFNdDBBOVFHbDRwcDJMbXdTZ1Zib1BnUlViYnVaS2xaVThadHgrUXV1?=
 =?utf-8?B?RjhKU3YyY0U0MlRWUFM2ejN1R2NuT2IvQXB6eERLQVVMMElwMk9sS0NWcVhK?=
 =?utf-8?B?NnUyR3NtWWh2Z0Q2UVl6YXVta21uS0dFaGpiWTdETWcrSlZVZWFORmlxZ2l3?=
 =?utf-8?B?QzZDMmJaSm9kTEh2dmE5L0k2Vk5TNVZjYjlvZkU1TWNRWTVaQ2VDblpoaDZV?=
 =?utf-8?B?cGI2NEk4dkV0TnF4V3ZlRlB4Tm56SVpuS0ZKQmdsQmU2aFl3b0lRRktkZUxI?=
 =?utf-8?B?dzVIcmk1dmZ0R1JZKzhsTnY1SkoyUU5VaWxxeDcrait4Q2lCNmM3c1V5RXpG?=
 =?utf-8?B?UXRHVDFDb2EvZFpnVWhpYnl0ZDNONFIvNkt4VzVTVEFLOXdrUnBWcWovN0lH?=
 =?utf-8?B?TEF6OVBIV0VFMHBId1V2RGw4N3Q3VFV3T1ZZWHBPaGo4R0l6US9jcUZwekUr?=
 =?utf-8?B?UDhDNU9iNEFBV2xXWnJqQitRRGcvQys0QXNQZWxEU3hQSUY4QUFmdDY2VXpq?=
 =?utf-8?B?TmRadzk5R09JQXhYZ1dPLzFoYndPUVNJekRIRElEZDhOaHA2LzJxTVFISEk4?=
 =?utf-8?B?ZEpZb2c4UDdNMXBwS1BJdXBpS2pJUnFaOEdGUVl0WndLRm9xQzdZbC9KdnFU?=
 =?utf-8?B?TkZsaDBTZkJMTG9tWE1XaUhVcHpucDNsUkt6Z0xZL1VQbi9ubk9LUlJpOGoz?=
 =?utf-8?B?OGQ4Y0pJNWNuRmVVVW50c1pQbGw1RnN1U3FVdE4zOHVWeUFWbmxWb1lTM084?=
 =?utf-8?B?NFV6Q1QxM21BY3pDVEdWRWVXYzUrZ01jUDJEc2tyVTU5N2hOSUFRNFNucGNX?=
 =?utf-8?B?ckFjL0RLZUV4T2x1c2ZFOFBQRGs2NFNoR3hBRHVReEN5Z2FlUkZKZzNDcmxK?=
 =?utf-8?B?SGZqaU5TR2JFMi82STlVNFA3QlRyejFCQlEwYnVsd1lVWGhJQzh4T2FFaTJh?=
 =?utf-8?B?SlAxQUZFVVpwUEJCdHJSVExMMkNUYWtqMmtNV0ZOUG82SjdQTGRWb2tZK1l5?=
 =?utf-8?B?TVE9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	lWVx//C5v7sauqCuaLbPewzuOzw+wZsIsWPxKaCN7PjwE3uWwTFsOcluh/mqx7Dvn+/PUYifsXAiU9yf4G0BYccifQ36DCP1/X0n6UtOiNp7rInlc2dN90suEe7A6QXyalg0Qs/XIjtr0L7pJ1Hr8D5VKUsR+375YlYVhgQkqcjzLnOx4zfw1WF8r6V5P9bwvU4CRgkX2suvuB3myHzRNgKtmA5UfIj7sXaQ9nadnkO/B9QTDtjr8LE14KYUfCL2Qp9h6fx0mcV7snoIL+E4lAT9EfVtw7lwU+h0GqThItBn3crVs6+2laJAH3HkqPLbG+rFoGC+AO2WBg4gXCOwXHv/zmJypwTilpYwKI0/kkEB8VzBW/u/rDuetAT61FML5VCNXSV3tldiWK81ZvKpQ5CD+S32vuHji92+Aw4zGUByTxkkFDM5E5LhlzNyNzgc23W9BrZ0mWiXEaEhNNThqwTFABHX093wCT5bg61D/XLv0o61zLAeqot6jP/Jrmyjxw51JDTZMNQHY/5Dp81jSZNXTRvkNPyDtxcjMQceluPqow+47BQU25g/ZptAVie83oJSkqfUWL9mH20fhBjI4iuk/ZQwovErxzf0jXQs2XzxeSQSUZ/s4TnOM6bZBA8WUXar4t+5h7oeZAO48yTGovcebSH4lhmG7WV0NrqYD4ZKwX+pj7v0ZMndOxQQ7FiCIVfQpgj3TAJi7L9J+wxJEF4LZI1tPsh6bnsVIFdtM3xPmBIqlpgreTFHtnLYFwvGvZHlPnEK/AqwUT0ak13hQfvpVRP53UbY+U3sxR5ODRd77fc5nrJjQCJPYA0V91+cLXXMB45+fAB9eV4ZIbOqE2d2pSRM2TfrtxzFvHA5jErKIleKMz5zRlMvxq7HaP1NBO+nByBx4gpQzTVqRaxMf0aFPWpl8PiTMqVKEaP0py4=
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 2146d73b-e0ed-42cd-12af-08dbc66c6bf9
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Oct 2023 13:01:57.4642
 (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: j71tUMVBDrCLpoPzMPcI0apc201kAy1Zh5YBPSFKK1iDUEfM9gUUpfxGecJBjAUB6KrQqOLsWqc7rKrVjemd8Q==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BL1PR03MB6024

XENFEAT_runstate_phys_area is exposed to all architectures, while
XENFEAT_vcpu_time_phys_area is currently only implemented for x86, and hence
the feature flag is also only exposed on x86.

Additionally add dummy guards with TODOs in the respective hypercall
implementations, to signal the intention to control the availability of those
hypercalls on a guest-by-guest basis from the toolstack.

Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
---
Changes since v1:
 - Adjust comments, and add new one in vcpu.h
 - Add dummy guard with TDOD in hypercall implementations.
---
 CHANGELOG.md                  | 2 ++
 xen/arch/x86/domain.c         | 4 ++++
 xen/common/domain.c           | 4 ++++
 xen/common/kernel.c           | 6 +++++-
 xen/include/public/features.h | 9 +++++++++
 xen/include/public/vcpu.h     | 3 +++
 6 files changed, 27 insertions(+), 1 deletion(-)

diff --git a/CHANGELOG.md b/CHANGELOG.md
index e33cf4e1b113..47ea9e275462 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -31,6 +31,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
  - 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).
+ - Introduce two new hypercalls to map the vCPU runstate and time areas by
+   physical rather than linear/virtual addresses.
 
 ### Removed
  - On x86, the "pku" command line option has been removed.  It has never
diff --git a/xen/arch/x86/domain.c b/xen/arch/x86/domain.c
index 8e0af2278104..8d3d52034a6d 100644
--- a/xen/arch/x86/domain.c
+++ b/xen/arch/x86/domain.c
@@ -1580,6 +1580,10 @@ long do_vcpu_op(int cmd, unsigned int vcpuid, XEN_GUEST_HANDLE_PARAM(void) arg)
     {
         struct vcpu_register_time_memory_area area;
 
+        rc = -ENOSYS;
+        if ( 0 /* TODO: Dom's XENFEAT_vcpu_time_phys_area setting */ )
+            break;
+
         rc = -EFAULT;
         if ( copy_from_guest(&area.addr.p, arg, 1) )
             break;
diff --git a/xen/common/domain.c b/xen/common/domain.c
index 1468638ade8b..8f9ab01c0cb7 100644
--- a/xen/common/domain.c
+++ b/xen/common/domain.c
@@ -1998,6 +1998,10 @@ long common_vcpu_op(int cmd, struct vcpu *v, XEN_GUEST_HANDLE_PARAM(void) arg)
     {
         struct vcpu_register_runstate_memory_area area;
 
+        rc = -ENOSYS;
+        if ( 0 /* TODO: Dom's XENFEAT_runstate_phys_area setting */ )
+            break;
+
         rc = -EFAULT;
         if ( copy_from_guest(&area.addr.p, arg, 1) )
             break;
diff --git a/xen/common/kernel.c b/xen/common/kernel.c
index 52aa28762782..b6302e44b34e 100644
--- a/xen/common/kernel.c
+++ b/xen/common/kernel.c
@@ -607,7 +607,11 @@ long do_xen_version(int cmd, XEN_GUEST_HANDLE_PARAM(void) arg)
         switch ( fi.submap_idx )
         {
         case 0:
-            fi.submap = (1U << XENFEAT_memory_op_vnode_supported);
+            fi.submap = (1U << XENFEAT_memory_op_vnode_supported) |
+#ifdef CONFIG_X86
+                        (1U << XENFEAT_vcpu_time_phys_area) |
+#endif
+                        (1U << XENFEAT_runstate_phys_area);
             if ( VM_ASSIST(d, pae_extended_cr3) )
                 fi.submap |= (1U << XENFEAT_pae_pgdir_above_4gb);
             if ( paging_mode_translate(d) )
diff --git a/xen/include/public/features.h b/xen/include/public/features.h
index d2a9175aae67..22713a51b520 100644
--- a/xen/include/public/features.h
+++ b/xen/include/public/features.h
@@ -111,6 +111,15 @@
 #define XENFEAT_not_direct_mapped         16
 #define XENFEAT_direct_mapped             17
 
+/*
+ * Signal whether the domain is permitted to use the following hypercalls:
+ *
+ * VCPUOP_register_runstate_phys_area
+ * VCPUOP_register_vcpu_time_phys_area
+ */
+#define XENFEAT_runstate_phys_area	  18
+#define XENFEAT_vcpu_time_phys_area	  19
+
 #define XENFEAT_NR_SUBMAPS 1
 
 #endif /* __XEN_PUBLIC_FEATURES_H__ */
diff --git a/xen/include/public/vcpu.h b/xen/include/public/vcpu.h
index 8fb0bd1b6c03..03b031a3e557 100644
--- a/xen/include/public/vcpu.h
+++ b/xen/include/public/vcpu.h
@@ -236,6 +236,9 @@ DEFINE_XEN_GUEST_HANDLE(vcpu_register_time_memory_area_t);
  * 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.
+ *
+ * XENFEAT_{runstate,vcpu_time}_phys_area feature bits signal if the domain is
+ * permitted the usage of the hypercalls.
  */
 #define VCPUOP_register_runstate_phys_area      14
 #define VCPUOP_register_vcpu_time_phys_area     15
-- 
2.42.0



From xen-devel-bounces@lists.xenproject.org Fri Oct 06 13:05:26 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 13:05:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613611.954244 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qokWD-00011m-9a; Fri, 06 Oct 2023 13:05:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613611.954244; Fri, 06 Oct 2023 13:05: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 1qokWD-00011f-73; Fri, 06 Oct 2023 13:05:25 +0000
Received: by outflank-mailman (input) for mailman id 613611;
 Fri, 06 Oct 2023 13: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=vVKM=FU=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qokWA-00011Z-RA
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 13:05:23 +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 007e495c-6449-11ee-98d3-6d05b1d4d9a1;
 Fri, 06 Oct 2023 15:05:20 +0200 (CEST)
Received: by mail-wm1-x332.google.com with SMTP id
 5b1f17b1804b1-4064876e8b8so20254425e9.0
 for <xen-devel@lists.xenproject.org>; Fri, 06 Oct 2023 06:05:20 -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
 c18-20020adfa312000000b003296c087df7sm1000753wrb.33.2023.10.06.06.05.18
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Fri, 06 Oct 2023 06:05: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: 007e495c-6449-11ee-98d3-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1696597519; x=1697202319; darn=lists.xenproject.org;
        h=content-transfer-encoding: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=IP+EK/3Zb3ADDr1irI+voTPzKxChVzyOFQvfHd1SkDc=;
        b=N7dM9Nsintjd4kBTHIhsg8R7FOrx5FmcFaIiYNnEym3U8/cfRTdavO5YN0wXE3gnUv
         YhPOsBRYVm8RNTeVOiG+q3Eyom75zurwawxlhzqm+8h/OzCloSB6WgKucQTTJ2kp2QqG
         II7e3KjDkOCjkbhGEdWs/pZU9hyM5SJGWsRYs=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1696597519; x=1697202319;
        h=content-transfer-encoding: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=IP+EK/3Zb3ADDr1irI+voTPzKxChVzyOFQvfHd1SkDc=;
        b=fSo2LinNeQ+0T6NUDqmJGNwWzHtBVU/8PacEFLcHLACwrCLAsaDDqKBELRMiaOjFsW
         RoZ7zsR/W7i+H/BI7XV6pzpoo6G/FZn6jdk7dRSwbszpEF2lC0y6Jz9bbfqDWu0XhEYJ
         4l9xQsnwwENB+LxTQ1WUoS7EvIe8WYwfgjTkNoKK/zhooh9fIa6TUkyv+XiJhbV/k/ze
         X/jIEcPjxRr3JJvAr7ivHJVrL1GQu1Eu2rhScAkPINVwsGQylkOQ/cNojAgmq3QUoqEn
         13SXRIFrMH1q0CDv2ItQ0pl0HLQ8miWAviTUCHsmY9JWley1sS9/fA5jSdaIhNzY1ZsM
         5Jmw==
X-Gm-Message-State: AOJu0YxO9jnFaadDBuPdhADuQNf4hYVrvDBvm4oXceHhFA4QnD1jndTC
	o4e2L2buoMJ7sTCNRryuFkirHa5I/hgObcQY4HFVLg==
X-Google-Smtp-Source: AGHT+IEMJfC7EcerV0thtiPE4CdWUcjjOCV9Z51bQV1jYPP+jXEBKJZ0G6pzUmyEvRc0IO78ROLdCg==
X-Received: by 2002:a05:600c:22d5:b0:406:52e4:cd23 with SMTP id 21-20020a05600c22d500b0040652e4cd23mr7482871wmg.0.1696597518947;
        Fri, 06 Oct 2023 06:05:18 -0700 (PDT)
Message-ID: <e45d0273-834b-4d7f-b158-29341845d3be@citrix.com>
Date: Fri, 6 Oct 2023 14:05:18 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH v2 2/2] domain: expose newly introduced hypercalls as
 XENFEAT
Content-Language: en-GB
To: Roger Pau Monne <roger.pau@citrix.com>, xen-devel@lists.xenproject.org
Cc: Henry Wang <Henry.Wang@arm.com>,
 Community Manager <community.manager@xenproject.org>,
 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: <20231006130059.97700-1-roger.pau@citrix.com>
 <20231006130059.97700-3-roger.pau@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: <20231006130059.97700-3-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 06/10/2023 2:00 pm, Roger Pau Monne wrote:
> diff --git a/xen/include/public/features.h b/xen/include/public/features.h
> index d2a9175aae67..22713a51b520 100644
> --- a/xen/include/public/features.h
> +++ b/xen/include/public/features.h
> @@ -111,6 +111,15 @@
>  #define XENFEAT_not_direct_mapped         16
>  #define XENFEAT_direct_mapped             17
>  
> +/*
> + * Signal whether the domain is permitted to use the following hypercalls:
> + *
> + * VCPUOP_register_runstate_phys_area
> + * VCPUOP_register_vcpu_time_phys_area
> + */
> +#define XENFEAT_runstate_phys_area	  18
> +#define XENFEAT_vcpu_time_phys_area	  19
> +
>  #define XENFEAT_NR_SUBMAPS 1
>  
>  #endif /* __XEN_PUBLIC_FEATURES_H__ */
> diff --git a/xen/include/public/vcpu.h b/xen/include/public/vcpu.h
> index 8fb0bd1b6c03..03b031a3e557 100644
> --- a/xen/include/public/vcpu.h
> +++ b/xen/include/public/vcpu.h
> @@ -236,6 +236,9 @@ DEFINE_XEN_GUEST_HANDLE(vcpu_register_time_memory_area_t);
>   * 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.
> + *
> + * XENFEAT_{runstate,vcpu_time}_phys_area feature bits signal if the domain is
> + * permitted the usage of the hypercalls.
>   */
>  #define VCPUOP_register_runstate_phys_area      14
>  #define VCPUOP_register_vcpu_time_phys_area     15

For both of these, I'd suggest s/permitted/able/.  For older versions of
Xen which don't advertise the XENFEAT, it's a matter of capability, not
permission.

Otherwise, Reviewed-by: Andrew Cooper <andrew.cooper3@citrix.com> and
I'm happy to adjust on commit to save sending out a v3.

Thanks,

~Andrew


From xen-devel-bounces@lists.xenproject.org Fri Oct 06 13:16:05 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 13:16:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613618.954254 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qokgM-0003ps-7J; Fri, 06 Oct 2023 13:15:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613618.954254; Fri, 06 Oct 2023 13:15: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 1qokgM-0003pl-4Y; Fri, 06 Oct 2023 13:15:54 +0000
Received: by outflank-mailman (input) for mailman id 613618;
 Fri, 06 Oct 2023 13:15: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=kIW7=FU=cloud.com=ross.lagerwall@srs-se1.protection.inumbo.net>)
 id 1qokgL-0003pf-CR
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 13:15:53 +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 7815190b-644a-11ee-9b0d-b553b5be7939;
 Fri, 06 Oct 2023 15:15:50 +0200 (CEST)
Received: by mail-wm1-x333.google.com with SMTP id
 5b1f17b1804b1-405505b07dfso19698035e9.0
 for <xen-devel@lists.xenproject.org>; Fri, 06 Oct 2023 06:15: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: 7815190b-644a-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1696598149; x=1697202949; 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=6u3No+tEtAczGHwk0FS59fcQbsVL06vZXyJIYRaE8Tk=;
        b=Ka3dAip90Ytl6nG3QvSbDlKqYF6Ycw2mACB9kEwr0PhR3Fh4+lqpr9x6Er+jP0uIUR
         oYQ0+PW1luu8s4IZ2un2D3asksJMIKLqHHELZqU0f/vnV3/3u8qeQwr2u6pS3iFKHjIi
         KNkkGUO8+3cvzzPnuP+de3pm8fzfH5vzg6G5U=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1696598149; x=1697202949;
        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=6u3No+tEtAczGHwk0FS59fcQbsVL06vZXyJIYRaE8Tk=;
        b=l2pPGCoakxVZuBExjGC0g/TZHcGhOZj5VuebQkv5L01efFX4wN0weMe8JT2+tOySG6
         17uiTh32lacufgpuZutxW6e/HpX7xMKLkkGm+E9ZgKL/Q09U+rZRaC1eViaD7J3N/EZB
         elFfHhTSskNW345OmDFTRsHQxDA0Ml1Aai7BPlDYU0BTBbJE+/U8ugxnnsh3YkXwBEwx
         V1vZZamcfJAk6xUF9iML8I1JYCfAwulErCGV1hM2txoDH9OQRerEI6IuRauBESlBa2UJ
         vbcH05eCkjeLsyYjQx/5I7avJtDwoRggmXZL5R55Prf/Tnc8ItkwxO164NMoLC2qGz0o
         V3lQ==
X-Gm-Message-State: AOJu0YzVxS97FeD914Pcqv2lqBxFMSOdjwGPtfK/SrpnDTuclMj3N7Hc
	qElrm9CHhZ/o1Sfe54DRu9F2yzcySbbxSgDpjMXy
X-Google-Smtp-Source: AGHT+IEhVvOcQOtLTbsHnMfSpeq7GltoUpxG99Rgayd8nZ8RlSHyh7d1e0syV2RPhnErDHz48fOjez/pJ/HH9GmkPGM=
X-Received: by 2002:a05:600c:3795:b0:401:b92f:eec5 with SMTP id
 o21-20020a05600c379500b00401b92feec5mr4056905wmr.9.1696598149645; Fri, 06 Oct
 2023 06:15:49 -0700 (PDT)
MIME-Version: 1.0
References: <20231005140831.89117-1-roger.pau@citrix.com>
In-Reply-To: <20231005140831.89117-1-roger.pau@citrix.com>
From: Ross Lagerwall <ross.lagerwall@citrix.com>
Date: Fri, 6 Oct 2023 14:15:38 +0100
Message-ID: <CAG7k0Er8cVKHF2NwogmXtuN57iYb0rGoQH4aZgg7boy2Hv4-fw@mail.gmail.com>
Subject: Re: [PATCH] xen-netback: use default TX queue size for vifs
To: Roger Pau Monne <roger.pau@citrix.com>
Cc: linux-kernel@vger.kernel.org, Wei Liu <wei.liu@kernel.org>, 
	Paul Durrant <paul@xen.org>, "David S. Miller" <davem@davemloft.net>, Eric Dumazet <edumazet@google.com>, 
	Jakub Kicinski <kuba@kernel.org>, Paolo Abeni <pabeni@redhat.com>, 
	Ian Campbell <Ian.Campbell@citrix.com>, Ben Hutchings <bhutchings@solarflare.com>, 
	xen-devel@lists.xenproject.org, netdev@vger.kernel.org
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Thu, Oct 5, 2023 at 3:08=E2=80=AFPM Roger Pau Monne <roger.pau@citrix.co=
m> wrote:
>
> Do not set netback interfaces (vifs) default TX queue size to the ring si=
ze.
> The TX queue size is not related to the ring size, and using the ring siz=
e (32)
> as the queue size can lead to packet drops.  Note the TX side of the vif
> interface in the netback domain is the one receiving packets to be inject=
ed
> to the guest.
>
> Do not explicitly set the TX queue length to any value when creating the
> interface, and instead use the system default.  Note that the queue lengt=
h can
> also be adjusted at runtime.
>
> Fixes: f942dc2552b8 ('xen network backend driver')
> Signed-off-by: Roger Pau Monn=C3=A9 <roger.pau@citrix.com>
> ---

Reviewed-by: Ross Lagerwall <ross.lagerwall@citrix.com>


From xen-devel-bounces@lists.xenproject.org Fri Oct 06 13:20:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 13:20:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613624.954265 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qokkU-0005jv-Sb; Fri, 06 Oct 2023 13:20:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613624.954265; Fri, 06 Oct 2023 13: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 1qokkU-0005jo-PN; Fri, 06 Oct 2023 13:20:10 +0000
Received: by outflank-mailman (input) for mailman id 613624;
 Fri, 06 Oct 2023 13: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=Twl1=FU=citrix.com=prvs=63654eace=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qokkT-0004u1-7q
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 13:20:09 +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 10642560-644b-11ee-9b0d-b553b5be7939;
 Fri, 06 Oct 2023 15:20:06 +0200 (CEST)
Received: from mail-dm6nam10lp2103.outbound.protection.outlook.com (HELO
 NAM10-DM6-obe.outbound.protection.outlook.com) ([104.47.58.103])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 06 Oct 2023 09:20:05 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by MN2PR03MB4927.namprd03.prod.outlook.com (2603:10b6:208:1a8::8)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.39; Fri, 6 Oct
 2023 13:20:00 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::66ca:3a42:baeb:9ecf]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::66ca:3a42:baeb:9ecf%6]) with mapi id 15.20.6838.030; Fri, 6 Oct 2023
 13: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: 10642560-644b-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1696598407;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=THSVjEoGlbAl9AnspNsBcgVizq9nnlLZYDqCNr6KU4I=;
  b=BTju5Ma/z4vaYToAPXesJFAXZriZa5dWzwgeOnYUhkbYsfDmmHKv+gqa
   oGsH3KBA9MFTUYlr6hM/uSZFwfsWAWAKv1yEts+KOMcD0Nq64NHI0tCWS
   Hwycj2fJ8g/woCgFvRb2W+BVrw48p+PSx6IYMP5lgnD0qjsLrU9XDL901
   k=;
X-CSE-ConnectionGUID: LpA486b4R8mu4e/9qGpt6A==
X-CSE-MsgGUID: nzeyiSqmR2CwcOYuwVGOYQ==
X-IronPort-RemoteIP: 104.47.58.103
X-IronPort-MID: 124082142
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:bIfSiKLX7rMHlzcPFE+RVZQlxSXFcZb7ZxGr2PjKsXjdYENShTUOn
 WVNWWGGOqmKNGP2coxxa960p0lT6p/VzdM3QVBlqX01Q3x08seUXt7xwmUcnc+xBpaaEB84t
 ZV2hv3odp1coqr0/0/1WlTZhSAhk/nOHvylULKs1hlZHWdMUD0mhQ9oh9k3i4tphcnRKw6Ws
 Jb5rta31GWNglaYCUpKrfrYwP9TlK6q4mhB5gRgPakjUGL2zBH5MrpOfcldEFOgKmVkNrbSb
 /rOyri/4lTY838FYj9yuu+mGqGiaue60Tmm0hK6aYD76vRxjnVaPpIAHOgdcS9qZwChxLid/
 jnvWauYEm/FNoWU8AgUvoIx/ytWZcWq85efSZSzXFD6I+QrvBIAzt03ZHzaM7H09c5TGUgSp
 aISdApdaw3fiqXn2Z2jVrdF05FLwMnDZOvzu1lG5BSAVbMKZM6GRK/Ho9hFwD03m8ZCW+7EY
 NYUYiZuaxKGZABTPlAQC9Q1m+LAanvXKmUE7g7K4/dnpTGLl2Sd05C0WDbRUsaNSshP2F6Ru
 0rN/njjAwFcP9uaodaA2iv22refx3qnAur+EpW+5PN7gWaKw1ZJIwIdcmqmvseWrX+HDoc3x
 0s8v3BGQbIJ3FymSJzxUgO1pFaAvwUAQJxAHusi8gaPx6HIpQGDCQAsbjNHcs1gi8YwShQjz
 FrPlNTsbRRkt7iQVHSc6qbSqDq0MCcYN0cSaCkcVwwH7tL/5oYpgXrnTNxuDaq0hd3dAizrz
 naBqy1Wr7cOic8G0Y2r8FaBhCijzrDSVRI87AjTWmOj7yt6aZSjaoju7kLUhd5fKK6JQ1/Hu
 2IL8/Vy98gLBJCJ0SCIHuMEGejx4+7faWWHx1lyA5Mm6jKhvWa5epxd6y1/I0EvNdsYfTjuY
 wnYvgY5CIJvAUZGpJRfO+qZY/nGB4C5fTg5fpg4tuZzX6U=
IronPort-HdrOrdr: A9a23:Fmp46KlshJA+wG30XIt+OHBJcafpDfLo3DAbv31ZSRFFG/Fw9/
 rCoB17726QtN91YhsdcL+7V5VoLUmzyXcX2/hyAV7BZmnbUQKTRekP0WKL+Vbd8kbFh41gPM
 lbEpSXCLfLfCJHZcSR2njELz73quP3jJxBho3lvghQpRkBUdAF0+/gYDzranGfQmN9dP0EPa
 vZ3OVrjRy6d08aa8yqb0N1JNQq97Xw5fTbiQdtPW9f1DWz
X-Talos-CUID: =?us-ascii?q?9a23=3AlcvRh2r+OcXjGm6MM21oXOHmUeQ9WyGNkn2MGR+?=
 =?us-ascii?q?9FDpkD+yMZkeMpooxxg=3D=3D?=
X-Talos-MUID: 9a23:o1FTDwkW5ulxJT9O8QHAdnpkJsp54p+3DXpXuooNnPiZKhJfHAak2WE=
X-IronPort-AV: E=Sophos;i="6.03,204,1694750400"; 
   d="scan'208";a="124082142"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Sz1U1lOHonOSwfMcjhJHxIsuwI7PmIGj/umkGA3esy3xorREEK1kgyq+ZDujyf+xzcXhDVEoPD+HeHZjKn0CTgj2lMP2TNDwL7xBN8yzX2AD/zQgC87Abe4s/MqZGcluVwG/1j1hB/Sh2XM1210Ywpr78K54RKkr5gDJxOj68jQejND7JIfw5+1QajkIDShSG4bKgoDNkiWD74BUEARKbxgxkES4JSwj8qKwnqJrTbcL2GKvHNIeKgncJNBUHbCYynvoCsiPvhZUBjZFtxGeI37ob84+08okkzfvE9oetdAG2VLQFeXxjMUVJJnL0b8fXApvY2Y89t5ykX951r3fAQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=TvZGn6ffIlfllwxjj9VeANjGXEPjnVFMRzYwixlHsZM=;
 b=GhPY3AVaW/iO79KvgRFh7vu0xTw9kcBDwlyHWhw5f6ifPshDJzrWDTF1ywirjXjbJi0S79AdWUJxbJTYWKTeUPDOgm1px7TdyqF6gC3TbCd5oGX2oU7BjGnWc0YoZzttD6njDM/gZdksB/s4K2IovucJsk9HukgMgSBa4aHF/YwOE3dsunuDQbKfNf2jn78CuGE6fR1d/6dN6sap+jX1cYlDX61HiVEbvg0aXngWoZ4xvAERmc5ONFHGS24IvN0Z3isMkZfH811oTjf445hzZ5f6k4v8QpkfW8K/gHr9HzKF6griXyQviZ5QFYEfPfolFPf7GIIIxJYv5UmLse3vwA==
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=TvZGn6ffIlfllwxjj9VeANjGXEPjnVFMRzYwixlHsZM=;
 b=WlvKKPYdFUKrENjtzJJB3nBtK9V2kVIG0ub8PfqmpjtbyTtRtcSzyEy4KXM/RY3DKxE11AZ1P5Moy5oPO3XMpxrnzT/ADI9HopjZCdKwrjzo1ilclyxzxEqmty76/v1BSy6bPSlzBvlcu26P2IrcDH455ECLGOJloVP2xfUscwA=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Fri, 6 Oct 2023 15:19:55 +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, Henry Wang <Henry.Wang@arm.com>,
	Community Manager <community.manager@xenproject.org>,
	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] domain: expose newly introduced hypercalls as
 XENFEAT
Message-ID: <ZSAJewLiAgcDrzc8@MacBookPdeRoger>
References: <20231006130059.97700-1-roger.pau@citrix.com>
 <20231006130059.97700-3-roger.pau@citrix.com>
 <e45d0273-834b-4d7f-b158-29341845d3be@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <e45d0273-834b-4d7f-b158-29341845d3be@citrix.com>
X-ClientProxiedBy: LNXP265CA0039.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:5c::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_|MN2PR03MB4927:EE_
X-MS-Office365-Filtering-Correlation-Id: c939b8be-0998-42ad-9221-08dbc66ef164
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:
	v+hlJaCm/GXe5Wubu1wboDyp+s+AglrgokKX4n12tentL8dMAoAaRTuYcTmPoYCMFK67ZMa/+geAG+aQ3CYEKXK65tnbSwBifRh4fcHEdgnhGlO0OGIU7AvBhdlULUTVLWxp1YwFIfyMVZabx6CN//SpbaYzDUkke41EZQT0aBbQmHHUl3sqAi0+TzTYvggQFdAi+xxL4AodW0RxNGbR+2gC0CZq50Taew0imCV7g8hh8f06gCQ79EkSVLXfUt9jZbRzgSEEUmL2OL+6mLc9oFRu08spIHMRR86j/npG2zNi2/UXyv/pXdWYN6YWidJ7XVYmntMFBJl35X/sOGamBuReBhgoM7a7x5GGljPA2jS3l2RtLYO3zO/a8S4hHOx3GmD40ikVIDAHz0ppA4T+xSolWfNLS8DVa9mBLu1JNVAMA7zXCBtLrA6BEVI7VpZN5cMa0z4+539z/t5Oz3ZFQ+3AJwHtzBKriBg4vbCNVcWQor5VvSq8h1lNyjDeuIg0gGNCVbAsfmUeljlLplqQSdK6NuspRAStuqUoDl1Ni/A=
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)(396003)(376002)(136003)(366004)(230922051799003)(1800799009)(451199024)(64100799003)(186009)(6506007)(6666004)(53546011)(966005)(6512007)(6486002)(478600001)(38100700002)(86362001)(82960400001)(2906002)(316002)(41300700001)(33716001)(83380400001)(26005)(9686003)(85182001)(66946007)(66556008)(66476007)(5660300002)(6636002)(54906003)(4326008)(8936002)(8676002)(6862004);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?RlhydVo3OTJuTkVzeSt3eGlVdmFqYXQ3d3Y3ejFndElxQ3Ntam1oeFJFUStI?=
 =?utf-8?B?a1BKdnl6a0RydFBKK2FET0RxcVJxenY0dFBNVzRuQU12M0E0ZW1adjRmNkVF?=
 =?utf-8?B?Y2hxL0xibFRrMHN0OHJEM2t1ZHVlUkFIRG50eE5zc0cwZnZ1M1E5QWducStO?=
 =?utf-8?B?UDFlTmk3Z2Q0c3RkMmJVWUt2cW9ZbURrNXRPM2M1dWpKaWlIMVNscWgvZnhi?=
 =?utf-8?B?RUhiNmdFS1pETllrZmdOUlJsMU1YZTErRmpORmx2WUJ0SlBOQ01KOGREaDFS?=
 =?utf-8?B?YU5lVzVqdkc2bTViTHNjUVU3ZjRyeVg3SG1YNEFObER4aTduS3dHSXpML1hj?=
 =?utf-8?B?c2h5cjc3MzlEM21JVlVINklEN2hPUnR3QUJxcys3OHVtYk5md29kTWZIckNN?=
 =?utf-8?B?ejljMjljYzlvNGtFU0d5RWxub2dMK0ZCbEFJcDJGRE5wU0hRSmtKYmN5dXRZ?=
 =?utf-8?B?QlJ0QTVxcEJ2TWxWSjV4OFBzd1VSRGRTVkd0WHlKU2VORVUwSGhZRUg5cUYv?=
 =?utf-8?B?YXh1elYxejhqVUliZEI1UEJ1WDl6RVNJZFQwSHdEUmZrbzQyZmpuWHMyWHlZ?=
 =?utf-8?B?UnRKa3YrbUNhZWZKY3hyVkdkb3NFT2tBcDJ1Ykg3T3V5NUx0Nm11clNtL1dC?=
 =?utf-8?B?dlI0NWhMNVRQTUFsWnZ2Zlhuc1AxNDd0YWp3MERWdFhkcDVNcTVZU1FoSmZa?=
 =?utf-8?B?YjFLT3I4dXpuN2JjcFV3STVTRXZpSkhuM04zSVFwcU5PaWdPMU5UTWtXV0ly?=
 =?utf-8?B?bTZEb0lCNUhjQlgrSWt4ZTZRSWkyMWF5elRkRzFreWM1V2N0QXVidDB5dWc4?=
 =?utf-8?B?YUc3dGRoaTZhWVM0TyttYXhGZUQ1U1hYZzNQTXhVemo5VDVZK2lQbXI3bW9r?=
 =?utf-8?B?RmNLSlh0dkJaY1NVazZWTXBISTNad3lWb0N6SFlDeUZjR0hYcFhGbCtzVDhh?=
 =?utf-8?B?VGhpeENlS0NuZW03bXcvTEJHNitvUFhkVzRFMFdNRGg1VDM0UkR2STd4bE5i?=
 =?utf-8?B?VG85Yk1vVG52WFZRUCtLZDFIc1VGcWxNcGFUekU0c0V6dTNySitWU2ZLUlZn?=
 =?utf-8?B?R2NscFBjT3hQWXM1d2ZOM0RvSVJnNFNVY2VMN2I2NG5pSEhqa2F4aGp4UmVy?=
 =?utf-8?B?NzdjNHN5Ym9DOExhUkpRU25DeXdXeE1pa3dGTnFCcXM2RittRmluTlNLbXdW?=
 =?utf-8?B?NmRLWW5nZllyMUM3MWNRbG8vQ2hsUEpDMzdEMEV3UnNwWnlEZ3RFeEhIN0R6?=
 =?utf-8?B?SHdUemVXUjFnWHFzQTMwMnlpWkxTbldsYXB1MDNkbDF1MHBUTFFlUVdVWldR?=
 =?utf-8?B?aEg1TEQxWXZ5enRxSWZWNmNlakVrcjRSQndLK0pUOHU2NmljUG5vVjdZZ0sz?=
 =?utf-8?B?QjViR08wYTAwRHc4MWI3Ykg2TElVTExkUkFBV2NTTWZRSDFybTBWZytuSG1u?=
 =?utf-8?B?Z3l0U2JoSk9zQ0t1c3FvL3hNMG9hK0Q0UXBodkZZSGRHcmdiWkt2VFQwdWhp?=
 =?utf-8?B?NWFuczBtcDlVN05VeDBGbkJEd2lRMHdUTzNmdXZvakI1anNhVE5sa2FTYno5?=
 =?utf-8?B?RnJJMzB1U1VRWmZMMFd5cHY2c0FCdHlQZytwbXNoeWtYd0VYTHJydmJ5eHE3?=
 =?utf-8?B?bkNCTXhTUEcvOGRUNFo2U0IvVFd6RklBT1NBYVVUYmttajhiZUZBV0tvSFkv?=
 =?utf-8?B?RVAzWHFSaHZvQVU5cGF5Y3BNOCs4b1U1SCtrNkhqa2E5S2UwSEREeDFwRWw0?=
 =?utf-8?B?TXNMV0UyRkNRdS8yZWlEZml0Y3B1RW05djl1WFFjcWJpUmtVM1l3Qy93TXNo?=
 =?utf-8?B?WUVQRnZTU3B2RHgvRVN3UmJVNFhtSlpzVFhUSndqYm1Bb0xoMUUvVVhwbllo?=
 =?utf-8?B?TVIrUkk1c0JNb09WdW02NlRLWVNnakY4ejdIajExMVZqeUZsSExCYU9MYzcw?=
 =?utf-8?B?SE8xWnY3Rlh6SUZXNHo5ZWMrZ2pKNk9FTEZab2V4K3B6QkxCVjJGa1F6eUQx?=
 =?utf-8?B?TzY1SHJMR2ZvSGVRQndOdlo0dHJleG90eXJLOVlaY0FITGs0ZmNKZ0pZdFlz?=
 =?utf-8?B?b3hXR0luSGlxSVN6cDl2ZG5hU29sU0pWTENncWdGOUNtWXNmZHN2Z0wvK21U?=
 =?utf-8?B?YU03bzVIYWNmMnIvNjlIWEkxWlhOUkhCb1FMcHBEcmhwazFuSVZjY0dJa0JH?=
 =?utf-8?B?K3c9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	lEQvx3fQJJ8461B29UXiRa5GAec7o8wBmsXaHFji6xeWwb+ut/F97BlxjhTcvpsXkbl0qq7uYWfn2mP6DCvXHTjT0pMFmfhsyyiL496n4yPO3VG9qwtKRbMk8AOJ7lL0A4I+jJ5bgrqm6vTgXrVydAQcuJfAsOHRYN96qCsWABypsexobsjbLcGttkrWZvoRXRN4cUIYzd72ods/WV8QsCo9uJeN6+aWAX6KCPJRuSW3CW/8YWlsfQgUGRYguIFzHkZsQgbEM0A8dSLvdwjLZfTMsTDiaGQxEb9k/VSLbGzV7h5VBcFwgfNgg6ZI5v6hpWJCK8sao0UDSEd40sJcnnIGGgt7kmmsUy+OoKlzfUtafVguQ/lDyO5WVJI70Pnwhs8B2ifQaaoQp7SxrfZ4NRRhw4d4F2DGIuWLCQzmvfMMo++Vf2xQax+EsB58IAX7CfkUBkL2221peQLb4oeCiliBzlgB6d3S+S3aB7PIh+ptmPuTSzttdZWt7Wznp22ivmi2+jKkeC8y/mfztPUxfj88L/aDQL0W0J2Swfumttu5ov6vMYXajHGfHNrpXTmhKKSJxvvq62aBatvMA5lu5UMffNaE6EMDBJ7CS/o9VaFyFaGXOo6Gc/WXv8jSWmwDpGDYIgBOhFZ84dcbKV/TgluNzz9CckPIz6sYZ0TM3lhziCsvLGHLv+vUs5QB2hfFaLhlp6S9lxYG8xp8BzBI6FZfmbzmS4NoLCSmF1agzBKsGZcifCLMpsz2IoXNql1Zxkyi1VCLNudUsJ4WLW2XLlDRhuUYppxCZkSAtWVvP/tr5vjORY4qjeiaMyOthcWV3CXD/3zv+XCn391AxfjlNeo4Ji+3KuU395EqF7HuHwm3LWPGIW5SBnkdY/HqC/sM8BVl+8LxDZGZlo4KaEAsdedCF7JniFtQ4dc4B5AH994=
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: c939b8be-0998-42ad-9221-08dbc66ef164
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Oct 2023 13:20:00.4270
 (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: j060rygWsUP/RU/GqEhvI+EOiSsNiNZGIK0OIItlMMRTIp7fbTdzU1B4ZgqT4z1AIm1bFAo6AY8mJcwnmZtVRg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN2PR03MB4927

On Fri, Oct 06, 2023 at 02:05:18PM +0100, Andrew Cooper wrote:
> On 06/10/2023 2:00 pm, Roger Pau Monne wrote:
> > diff --git a/xen/include/public/features.h b/xen/include/public/features.h
> > index d2a9175aae67..22713a51b520 100644
> > --- a/xen/include/public/features.h
> > +++ b/xen/include/public/features.h
> > @@ -111,6 +111,15 @@
> >  #define XENFEAT_not_direct_mapped         16
> >  #define XENFEAT_direct_mapped             17
> >  
> > +/*
> > + * Signal whether the domain is permitted to use the following hypercalls:
> > + *
> > + * VCPUOP_register_runstate_phys_area
> > + * VCPUOP_register_vcpu_time_phys_area
> > + */
> > +#define XENFEAT_runstate_phys_area	  18
> > +#define XENFEAT_vcpu_time_phys_area	  19
> > +
> >  #define XENFEAT_NR_SUBMAPS 1
> >  
> >  #endif /* __XEN_PUBLIC_FEATURES_H__ */
> > diff --git a/xen/include/public/vcpu.h b/xen/include/public/vcpu.h
> > index 8fb0bd1b6c03..03b031a3e557 100644
> > --- a/xen/include/public/vcpu.h
> > +++ b/xen/include/public/vcpu.h
> > @@ -236,6 +236,9 @@ DEFINE_XEN_GUEST_HANDLE(vcpu_register_time_memory_area_t);
> >   * 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.
> > + *
> > + * XENFEAT_{runstate,vcpu_time}_phys_area feature bits signal if the domain is
> > + * permitted the usage of the hypercalls.
> >   */
> >  #define VCPUOP_register_runstate_phys_area      14
> >  #define VCPUOP_register_vcpu_time_phys_area     15
> 
> For both of these, I'd suggest s/permitted/able/.  For older versions of
> Xen which don't advertise the XENFEAT, it's a matter of capability, not
> permission.
> 
> Otherwise, Reviewed-by: Andrew Cooper <andrew.cooper3@citrix.com> and
> I'm happy to adjust on commit to save sending out a v3.

TBH I've used permitted because that's the wording you used in your
reply to v1, I'm perfectly fine with switching to able.

https://lore.kernel.org/xen-devel/ac4842a9-7f62-4c64-9a3a-2ec2b1e97699@citrix.com/

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Fri Oct 06 13:20:31 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 13:20:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613625.954275 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qokkp-00067F-3P; Fri, 06 Oct 2023 13:20:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613625.954275; Fri, 06 Oct 2023 13: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 1qokkp-000678-0a; Fri, 06 Oct 2023 13:20:31 +0000
Received: by outflank-mailman (input) for mailman id 613625;
 Fri, 06 Oct 2023 13:20: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=vVKM=FU=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qokkn-00065D-0x
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 13:20: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 1dccf630-644b-11ee-98d3-6d05b1d4d9a1;
 Fri, 06 Oct 2023 15:20:28 +0200 (CEST)
Received: by mail-wm1-x332.google.com with SMTP id
 5b1f17b1804b1-4065f29e933so20243915e9.1
 for <xen-devel@lists.xenproject.org>; Fri, 06 Oct 2023 06:20: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
 4-20020a05600c228400b003fee53feab5sm3731943wmf.10.2023.10.06.06.20.27
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Fri, 06 Oct 2023 06:20: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: 1dccf630-644b-11ee-98d3-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1696598427; x=1697203227; darn=lists.xenproject.org;
        h=content-transfer-encoding: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=BZCC6XDJDYvYNkF3Bh5qPLeCRD4/n/HrWcFTswrWBmw=;
        b=hs7SkQ7Hinx1rfhdF3Wc4x7zBuxINwqCQ8sGMtj2kLpnOR59BkYU+Jqmk4kU0S5jjr
         FRC/IMKpkjZ21SzWlI0Rgx4XR1AmF3R3a/Q576QA8FT/XqshvPltfNTrN/uAgH5bca2z
         MpAtPNgweAFloUz5Tu3GWOVTdGZLYzXnsXFnQ=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1696598427; x=1697203227;
        h=content-transfer-encoding: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=BZCC6XDJDYvYNkF3Bh5qPLeCRD4/n/HrWcFTswrWBmw=;
        b=lWCITrDIRSIbZ5ofNzU50W/YpDJ1cjzYoI6AC6zK9AoezmYBk7u9XMEjVSpenPedNy
         p6ApdkDs4hmErAn6P5NEHmTaPW0tS/XCV8fc4EB21uN/ergeJjlfsf06Vt2Fa4dE7FAv
         7m6whntu36eTr0MCkzB2bo6dymWNqpJagTLDWGi1I+bh+EVDsd/Dt9m0DnmGqEpe2R/6
         HjaGYeryxm6iRlSFpQGUbCgqoB1jG7wvc0HrUEaGzcJVLvODbjFluUiXoFfbhyyUknuW
         TWL3xGmYGW0/SBJktEjC1BlLTDytmVV0n2TcO+W3YXiTBOY9l6PkhzUO4Vb0/F2IyLIQ
         wFgg==
X-Gm-Message-State: AOJu0YyOkEs8tfIgE/3jH4Ht0ApmyYKKNVeZHXI0xhMbD4htcJT2tik8
	Mw/JLNR0cVDsSIiWw4yDutiCzQ==
X-Google-Smtp-Source: AGHT+IHsiFOZ9O9XEwD7P8VuCjzI8NnVD2XCg5cqbCS3lHQ9aFu2FijcxdUgLlEoB1We39ZB7/Ve8g==
X-Received: by 2002:a05:600c:b4b:b0:405:3f06:c084 with SMTP id k11-20020a05600c0b4b00b004053f06c084mr7267517wmr.13.1696598427672;
        Fri, 06 Oct 2023 06:20:27 -0700 (PDT)
Message-ID: <fbfbf68f-68ac-4ab3-996c-ad176c376e31@citrix.com>
Date: Fri, 6 Oct 2023 14:20:26 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
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: Shawn Anastasio <sanastasio@raptorengineering.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>
 <1e451293-68df-e71e-0f2b-343dcf9a246f@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: <1e451293-68df-e71e-0f2b-343dcf9a246f@raptorengineering.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 25/09/2023 6:37 pm, Shawn Anastasio wrote:
> 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.  I'll make suitable adjustments.

~Andrew


From xen-devel-bounces@lists.xenproject.org Fri Oct 06 13:54:33 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 13:54:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613635.954291 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qolHT-0005xC-Mq; Fri, 06 Oct 2023 13:54:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613635.954291; Fri, 06 Oct 2023 13: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 1qolHT-0005x5-Jt; Fri, 06 Oct 2023 13:54:15 +0000
Received: by outflank-mailman (input) for mailman id 613635;
 Fri, 06 Oct 2023 13: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=+U/E=FU=cloud.com=anthony.perard@srs-se1.protection.inumbo.net>)
 id 1qolHR-0005wz-TH
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 13:54:14 +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 d2eb3dfc-644f-11ee-9b0d-b553b5be7939;
 Fri, 06 Oct 2023 15:54:10 +0200 (CEST)
Received: by mail-wr1-x435.google.com with SMTP id
 ffacd0b85a97d-3214cdb4b27so2048079f8f.1
 for <xen-devel@lists.xenproject.org>; Fri, 06 Oct 2023 06:54:10 -0700 (PDT)
Received: from localhost.localdomain
 (cpc92320-cmbg19-2-0-cust35.5-4.cable.virginm.net. [82.13.64.36])
 by smtp.gmail.com with ESMTPSA id
 g7-20020a056000118700b003143c9beeaesm1716813wrx.44.2023.10.06.06.54.07
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Fri, 06 Oct 2023 06:54: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: d2eb3dfc-644f-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1696600449; x=1697205249; 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=pdVnJ3LbpA+IOpEvZoVsmn1JP9gqoux810A5+xViGDc=;
        b=wXNPFxHBLQasaACYS103WA7SYQZTEU/Vcn7jd9RXGFlRuF0edq9g3/KumQTewEx94g
         00r0W7VvaRs9KMRulcNsF32ny6+Oj7WBAx81axQdOk+/5THfKp6DgKrz9quyer1tGBIq
         g4/Fbor8oymVPAgwwYCrmmRgFFMabZuV4qsIk=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1696600449; x=1697205249;
        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=pdVnJ3LbpA+IOpEvZoVsmn1JP9gqoux810A5+xViGDc=;
        b=sYszjhdMQ0STgFRB97NZTCQSyrpchx4OBXenUKPi/GeTYXOPSupEDLCwnqLz6qmTyl
         MbwDyKAH3feu039kbnUu21DZPLY2JvKQ43GLm7zlvikEX3179JfiTe4a0rA2Dr+S4o1r
         Ab1S4j0s9DjsDmSE6feq6sIAhaxPCqmWPACBzu10aU4lLMggfxF9EPcI9LxZibRZkrMW
         2h9AXwvQxoQV2v2YE0oLnJgnufdUhHzk62yQyeqFsTz1m8wNn7lm2s+Brt0UhsOW/Lje
         z8fBpdZhR1zbq2cAyLBqIsUxijGYjoDh3KTHULHF+udpCe7kVe3FPN4GMkvdc12WhYfj
         7L2Q==
X-Gm-Message-State: AOJu0YzsC23/N+19QI75K77q/zY1Cv6EHLcaTeGjJSWSDOb3+L/1Vm8T
	29Fvu4dqytlNpu8yMwmscJT1IcPKWaUkG0bB4Y0=
X-Google-Smtp-Source: AGHT+IH6jRkG2r2yOB28nP4pAJfzl0dKSxJmwlCqN7Srbc6W6hIPYBJfewY7vjlW1IGhVBa85apRrA==
X-Received: by 2002:adf:cc8a:0:b0:319:82c9:8e7d with SMTP id p10-20020adfcc8a000000b0031982c98e7dmr7597360wrj.31.1696600449187;
        Fri, 06 Oct 2023 06:54:09 -0700 (PDT)
From: Anthony PERARD <anthony.perard@citrix.com>
To: xen-devel@lists.xenproject.org
Cc: Henry Wang <Henry.Wang@arm.com>,
	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>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Wei Liu <wl@xen.org>
Subject: [XEN PATCH] get_maintainer: Add THE REST for sections with reviewers only
Date: Fri,  6 Oct 2023 14:54:06 +0100
Message-Id: <20231006135406.52750-1-anthony.perard@citrix.com>
X-Mailer: git-send-email 2.39.2
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Sometime, a contributer would like to be CCed on part of the changes,
and it could happen that we end-up with a section that doesn't have
any maintainer, but a Ack from a maintainer would still be needed.

Rework get_maintainer so if there's no maintainers beside THE REST, it
doesn't drop THE REST emails.

Signed-off-by: Anthony PERARD <anthony.perard@citrix.com>
---

Notes:
    Soon, the RISCV section might be the first (I think) section without
    maintainer and without been nested in another section other than THE
    REST.
    
    Tests by checking that the following comnands returns the expected emails.
    ./scripts/get_maintainer.pl -f tools/libs/Makefile
    ./scripts/get_maintainer.pl -f xen/arch/riscv/Makefile
    ./scripts/get_maintainer.pl -f xen/arch/arm/Makefile
    
    An extra '--sections' argument list all sections, including THE REST.

 scripts/get_maintainer.pl | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/scripts/get_maintainer.pl b/scripts/get_maintainer.pl
index cf629cdf3c..533d0df72a 100755
--- a/scripts/get_maintainer.pl
+++ b/scripts/get_maintainer.pl
@@ -732,8 +732,15 @@ sub get_maintainers {
         my @email_new;
         my $do_replace = 0;
         foreach my $email (@email_to) {
-            if ($email->[1] ne 'supporter:THE REST') {
+            # Replace @email_to list with a list which drop "THE REST" if
+            # there's a role other than "reviewer", that is if there's a
+            # maintainer/supporter in a section other than THE REST.
+            if ($email->[1] ne 'supporter:THE REST' and $email->[1] ne 'reviewer') {
                 $do_replace = 1;
+            }
+            # Prepare a new list without "THE REST", to be used if $do_replace
+            # is true.
+            if ($email->[1] ne 'supporter:THE REST') {
                 push @email_new, $email;
             }
         }
-- 
Anthony PERARD



From xen-devel-bounces@lists.xenproject.org Fri Oct 06 13:55:37 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 13:55:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613639.954300 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qolIk-0006TZ-VZ; Fri, 06 Oct 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 613639.954300; Fri, 06 Oct 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 1qolIk-0006TS-T0; Fri, 06 Oct 2023 13:55:34 +0000
Received: by outflank-mailman (input) for mailman id 613639;
 Fri, 06 Oct 2023 13: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 1qolIj-0006T0-WE; Fri, 06 Oct 2023 13: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 1qolIj-00087N-OQ; Fri, 06 Oct 2023 13:55: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 1qolIj-0002dQ-Bh; Fri, 06 Oct 2023 13:55:33 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qolIj-0003zd-BG; Fri, 06 Oct 2023 13: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=mVtFESCcNLyIszPGHap5iynFVgw0OF8GkspOQvYeNfA=; b=Rd6pRA8Ur5GamT/CZtsw0iSnno
	0sl0WlOU+gtiYUftkiAPPEQNkCrpW0Jdt6UjCEPDhibUZVfHBll8l4yVCz+AgbmUncSSbVj838Hrt
	n8URoxAGRq0GvE2fSElrCICIfkfldAzffgJVt8Xsepxaa3uOtIy+44FPZb4lpUrWMAN4=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183283-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [libvirt test] 183283: 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: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-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt:saverestore-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=7cbd8c42305735375b60abf8abc47838a7a050d4
X-Osstest-Versions-That:
    libvirt=70f09acda44a540e1800449f723e4182dff8fd3c
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 06 Oct 2023 13:55:33 +0000

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

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183269
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183269
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183269
 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-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-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt     16 saverestore-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              7cbd8c42305735375b60abf8abc47838a7a050d4
baseline version:
 libvirt              70f09acda44a540e1800449f723e4182dff8fd3c

Last test of basis   183269  2023-10-05 04:20:30 Z    1 days
Testing same since   183283  2023-10-06 04:23:21 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
   70f09acda4..7cbd8c4230  7cbd8c42305735375b60abf8abc47838a7a050d4 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Fri Oct 06 13:57:55 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 13:57:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613646.954311 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qolL0-0007BC-G6; Fri, 06 Oct 2023 13:57:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613646.954311; Fri, 06 Oct 2023 13: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 1qolL0-0007B5-Cx; Fri, 06 Oct 2023 13:57:54 +0000
Received: by outflank-mailman (input) for mailman id 613646;
 Fri, 06 Oct 2023 13: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=LN/y=FU=citrix.com=prvs=63610b956=Andrew.Cooper3@srs-se1.protection.inumbo.net>)
 id 1qolKz-0007Ax-8G
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 13:57:53 +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 55ec0011-6450-11ee-98d3-6d05b1d4d9a1;
 Fri, 06 Oct 2023 15:57: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: 55ec0011-6450-11ee-98d3-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1696600671;
  h=from:to:cc:subject:date:message-id:mime-version:
   content-transfer-encoding;
  bh=udLcDi6gbiqFXrXjQqc3tJTVg6LavLN9WYX7Nea8UKw=;
  b=RAO+IozJbKFMQFlTkj5eEGDCt5VbSc/QNYkbSmTokD//PBtEdKDsOqHJ
   UCKDs7M7ye4iEjy/DH2ym37Nl7Z0wj28GSC/Yx2UPZilJXcA5gJOso0sh
   j1T/pPQxfjdEBu4lOHF9nPgyPgHKYplPP9nQpvAtJVSCRAxgnJRiyUTOo
   w=;
X-CSE-ConnectionGUID: dnYV5AdTRVS3xDjQysEu0w==
X-CSE-MsgGUID: s9N7m4CWROeEoOEf7aaJBQ==
Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
X-SBRS: 4.0
X-MesageID: 124695506
X-Ironport-Server: esa2.hc3370-68.iphmx.com
X-Remote-IP: 162.221.159.70
X-Policy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:IC7kp6syL6txf3GV1+jX2DrCoefnVHpeMUV32f8akzHdYApBsoF/q
 tZmKWHSO6uMZmGkKdt+aN6+9EwG7ZPWnYU1SFM+pHgyQnwS+JbJXdiXEBz9bniYRiHhoOCLz
 O1FM4Wdc5pkJpP4jk3wWlQ0hSAkjclkfpKlVaicfHg3HFc4IMsYoUoLs/YjhYJ1isSODQqIu
 Nfjy+XSI1bg0DNvWo4uw/vrRChH4rKq41v0gnRkPaoQ5QeGySFMZH4iDfrZw0XQE9E88tGSH
 44v/JnhlkvF8hEkDM+Sk7qTWiXmlZaLYGBiIlIPM0STqkAqSh4ai87XB9JFAatjsB2bnsgZ9
 Tl4ncfYpTHFnEH7sL91vxFwS0mSNEDdkVPNCSDXXce7lyUqf5ZwqhnH4Y5f0YAwo45K7W9yG
 fMwJDY8UE2qi96M/ongWsVuv9U4AdSzI9ZK0p1g5Wmx4fcORJnCR+PB5MNC3Sd2jcdLdRrcT
 5NHM3w1Nk2GOkAefAhPYH49tL7Aan3XWjtUsl+K44Ew5HDe1ldZ27nxKtvFPNeNQK25m27B/
 D6YrjmkWk9y2Nq30mujrXfwrdD1ui7WX6U/GuKx/9xAuQjGroAUIEJPDgbqyRWjsWauVtQaJ
 0EK9y4Gqakp6FftXtT7Rwe/onOPolgbQdU4O88Q5RyJy6HUyx2EHWVCRTlEAPQ5sOcmSDps0
 UWG9/v1DDlmq5WJSnaQ8LiFoDf0Mi8QRUciaCkeXE066t/siIgpi1TESdMLLUKupoSrQ3eqm
 WnM9XVvwepL5SIW60ml1VzBsgzxj5T1dDAOvRX7XFu09S5kPJHwMuRE9mPnAeZ8wJexFwfQ4
 iVVy5bFtYjiHrnXynbQHLtl8KWBoqbdaWKC2zaDCrF8r1yQF2ifkZe8Cd2UDH9uN94NfzihS
 kLasgM5CHR7ZyDyM/Efj25cEa0XIUnc+TfNDKq8giJmOMQZSeN+1HgGibSs927silMwtqo0J
 I2Wd82hZV5DV/U5kWHuFr5Fj+N6rszb+Y80bcmkpylLLJLEPCLFIVv7GATmgh8FAFOs/1yOr
 oc32zqiwBRDSuzuChQ7AqZKRW3m2UMTXMisw+QOL7LrH+aTMD15YxMn6e97KtMNcmU8vrugw
 0xRrWcDlwqn1Sefdl3RAp2hAZu2NatCQbsAFXREFT6VN7ILO+5DMI93m0MLQIQa
IronPort-HdrOrdr: A9a23:vRq7w6yh8Do/6TNyBIIVKrPw2r1zdoMgy1knxilNoHxuH/BwWf
 rPoB17726TtN91YhsdcL+7V5VoLUmzyXcx2/hyAV7AZniAhILLFvAA0WKK+VSJdxEWtNQtsJ
 uIG5IUNDSaNykfsS+V2miF+9ZL+qj5zEir792usUuEm2tRGtBdBwQSMHfqLqVvLjM2fKbQjP
 Cnl7d6TzzLQwVuUu2LQkMrcsLkvNPxmJfvcXc9dmIaAFnnt0LS1FbieSLopCsjbw==
X-Talos-CUID: 9a23:MGAU1WApGAvb6Y/6EyVhxXBJM8wZSEPml2f8IXapEkt0EKLAHA==
X-Talos-MUID: =?us-ascii?q?9a23=3AvoF+vA4LHSf1KmovoObeMxMXxoxzsoLxDRwmrq8?=
 =?us-ascii?q?htuSDEgF+ZD6Urh6OF9o=3D?=
X-IronPort-AV: E=Sophos;i="6.03,204,1694750400"; 
   d="scan'208";a="124695506"
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>, Tamas K Lengyel
	<tamas@tklengyel.com>, Henry Wang <Henry.Wang@arm.com>
Subject: [PATCH for-4.18] x86/memshr: Fix build in copy_vcpu_settings()
Date: Fri, 6 Oct 2023 14:57:45 +0100
Message-ID: <20231006135745.1038947-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 last user of this variable was dropped.

Fixes: 295514ff7550 ("common: convert vCPU info area registration")
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: Tamas K Lengyel <tamas@tklengyel.com>
CC: Henry Wang <Henry.Wang@arm.com>

I expect Gitlab randconfig to find this eventually, but it does depend on
CONFIG_MEM_SHARING being active to manifest.
---
 xen/arch/x86/mm/mem_sharing.c | 1 -
 1 file changed, 1 deletion(-)

diff --git a/xen/arch/x86/mm/mem_sharing.c b/xen/arch/x86/mm/mem_sharing.c
index 5217c755a299..94b6b782ef2e 100644
--- a/xen/arch/x86/mm/mem_sharing.c
+++ b/xen/arch/x86/mm/mem_sharing.c
@@ -1706,7 +1706,6 @@ static int copy_vcpu_settings(struct domain *cd, const struct domain *d)
 {
     unsigned int i;
     int ret = -EINVAL;
-    mfn_t vcpu_info_mfn;
 
     for ( i = 0; i < cd->max_vcpus; i++ )
     {
-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Fri Oct 06 14:01:47 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 14:01:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613651.954321 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qolOh-0000ET-VB; Fri, 06 Oct 2023 14:01:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613651.954321; Fri, 06 Oct 2023 14:01: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 1qolOh-0000EM-SI; Fri, 06 Oct 2023 14:01:43 +0000
Received: by outflank-mailman (input) for mailman id 613651;
 Fri, 06 Oct 2023 14:01: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=I3TD=FU=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qolOg-0000EG-L7
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 14:01:42 +0000
Received: from EUR03-DBA-obe.outbound.protection.outlook.com
 (mail-dbaeur03on2061c.outbound.protection.outlook.com
 [2a01:111:f400:fe1a::61c])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id deb66b6f-6450-11ee-9b0d-b553b5be7939;
 Fri, 06 Oct 2023 16:01:39 +0200 (CEST)
Received: from AM5PR0301CA0018.eurprd03.prod.outlook.com
 (2603:10a6:206:14::31) by AS2PR08MB9413.eurprd08.prod.outlook.com
 (2603:10a6:20b:597::20) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.33; Fri, 6 Oct
 2023 14:01:36 +0000
Received: from AM7EUR03FT062.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:206:14:cafe::4) by AM5PR0301CA0018.outlook.office365.com
 (2603:10a6:206:14::31) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.33 via Frontend
 Transport; Fri, 6 Oct 2023 14:01:36 +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.6863.26 via Frontend Transport; Fri, 6 Oct 2023 14:01:35 +0000
Received: ("Tessian outbound d219f9a4f5c9:v211");
 Fri, 06 Oct 2023 14:01:35 +0000
Received: from fcb68d44f724.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 0FD1C33E-71A5-4FC5-99EF-8B6618271BCA.1; 
 Fri, 06 Oct 2023 14:01:28 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id fcb68d44f724.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Fri, 06 Oct 2023 14:01:28 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by PA4PR08MB6046.eurprd08.prod.outlook.com (2603:10a6:102:e4::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.38; Fri, 6 Oct
 2023 14:01: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%7]) with mapi id 15.20.6838.033; Fri, 6 Oct 2023
 14: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: deb66b6f-6450-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=bXKiWVTs0jgY5PR++bLAGykx6oWZ5y3QR/PCTyCwyqk=;
 b=RowjpUtOLZqLRYWU/x3Vw2q7mceXWm0tCL/bjhKeJ9sK7Xq3n+t42DuvjOYAV3T8Zz5mMGaVnc1BzZB8Vqe9jrBAr2nLj6TIljGnd7ewyJCUFgVjJu8oz0MYPBo+yO6MQUjN2BvD25MgDrfuqLLm7rnAFa7tZw/bHfAwze4EOzQ=
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: 8caaa4090109cc7c
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=dxPcmWk5g0XXTHjo8QE7x5adUM+8H0GBgFLR52aaadzvjQT/EIMJfVKQfI7X5lftfLmqWc38XaaC78wwNo+eX+lX7daNkMW8gKNPrh/7r9PxKmrlF06XEKCVSYxol9EIK8oqb9fcTyP0bhxXO2rgfRlj/MsEL5rouz/9/Y92gGFw7Q4PzQeAMVlvIqI3Jne/XKwdVOYR9g3mUaQexynnceVpUnzYoxAJJRi1G5Pa3wsnSIgzLdeToKXmZkAqROdanvpUa3qT/3bkQfpGqSkHfewDhqazig5SVIUQGW2GwXYy/T25jMqUC3YP6qxk9bwe3ClayX5Q1Cqgp9p9cYEXUw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=bXKiWVTs0jgY5PR++bLAGykx6oWZ5y3QR/PCTyCwyqk=;
 b=bu3F9rvCKfObKYVtqBhRc2LtW6xS6GccukUw1Gt6/9kggtDioBzLLAMCHzJUh9j1bfCQIttK/EWgjsNrVgoGHorev1H8fkLfVstWIOQts84NOh5CCtikuxY1KdAZHPXUDAsaRmBRW+x28oBlOCLdJpYU3tpIX3WslygTYX2wljoM8uU3DiHxdKj3ijXkxGjVgwjAsC5CZhhpLhH7iQyzZ0qxyosYf3x1W0xFsyUPaxwpPyJObn4IvlJhEfb+7PVdiUGy2W6EJm7JHgdxClPUkpZeN/4wdhlL1oR1A7/qUrErtXzCUerbKPCEyu3Cyn02HnfbsDRhw7DXNzxlvM7ndw==
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=bXKiWVTs0jgY5PR++bLAGykx6oWZ5y3QR/PCTyCwyqk=;
 b=RowjpUtOLZqLRYWU/x3Vw2q7mceXWm0tCL/bjhKeJ9sK7Xq3n+t42DuvjOYAV3T8Zz5mMGaVnc1BzZB8Vqe9jrBAr2nLj6TIljGnd7ewyJCUFgVjJu8oz0MYPBo+yO6MQUjN2BvD25MgDrfuqLLm7rnAFa7tZw/bHfAwze4EOzQ=
From: Henry Wang <Henry.Wang@arm.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>
CC: Xen-devel <xen-devel@lists.xenproject.org>, Jan Beulich
	<JBeulich@suse.com>, =?utf-8?B?Um9nZXIgUGF1IE1vbm7DqQ==?=
	<roger.pau@citrix.com>, Wei Liu <wl@xen.org>, Tamas K Lengyel
	<tamas@tklengyel.com>
Subject: Re: [PATCH for-4.18] x86/memshr: Fix build in copy_vcpu_settings()
Thread-Topic: [PATCH for-4.18] x86/memshr: Fix build in copy_vcpu_settings()
Thread-Index: AQHZ+F0n5Y2AIoSXPky3KIS2scfL57A8ynIA
Date: Fri, 6 Oct 2023 14:01:26 +0000
Message-ID: <DD6E3A6F-E2DA-47B7-884F-E8805349C93E@arm.com>
References: <20231006135745.1038947-1-andrew.cooper3@citrix.com>
In-Reply-To: <20231006135745.1038947-1-andrew.cooper3@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_|PA4PR08MB6046:EE_|AM7EUR03FT062:EE_|AS2PR08MB9413:EE_
X-MS-Office365-Filtering-Correlation-Id: 33597cf1-8c8e-4f4a-0f2e-08dbc674c105
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:
 qFRjV03nsG0u1nynDebDJdlOhbYZ5Jak59yzILDeTrAVtbLugVq7hR2q1FIQTSZ2VJ9sCCmP9KI880+sP4rJM4v+jUPH935C+DyFDAGsNZLfVbIRZm7V5WrmjYZwJjTcpYeI3XulfL8K8lIhvMlQB+QqLuWCGx+QhcL3gJbZ8jmcYT01NtgxOB76tG5zqO6IffEpQ5YKAaF7Y/Km8p7fMLP2ZupLFyQUWYxXFj2Zeribu+ISAYfKe5pRy7Phb6JvVMUrtp65U5/mb9p9H6l1MCs49RbMhJuNLBtFJ1NkHcVbhx2dmNW7E7gp8hxbtSSyFvLZ9WMGUFUu00h8tkPDM0vjScjKaRaFfGCiftRZUxbnNrbO4gUzCxP6rp7jjh99vSfcQIJShF1Q1qJVWplfBygYMe9Zk2Kvix4IAq/kwi5zdjH+F4yR/pDrbWA3QXxU3gTzACfVkr/6VkQJRKoVw83Y8xOxOMbSEzBWqMrNPqn33Ny9UdlzBJuDDMjhz9aUisQP9TrIzyQSSv9oWfndED7IjruKQODWve6XiH42nSxfnkikSlzdZB7Lsu6WDTLRRD+4c/SL1ooVaMkMSBYRBC0JVv1hnPT5tNDCBcyUFMhix8dk3SXIg+6PgyvK+v7lYQ/yKp4QfbttCNrd8HwmMQ==
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)(376002)(39860400002)(346002)(230922051799003)(1800799009)(186009)(64100799003)(451199024)(4326008)(8676002)(8936002)(316002)(6916009)(5660300002)(41300700001)(2616005)(478600001)(26005)(6486002)(122000001)(6512007)(76116006)(83380400001)(66946007)(54906003)(64756008)(66446008)(66476007)(66556008)(91956017)(2906002)(4744005)(86362001)(33656002)(53546011)(71200400001)(38100700002)(38070700005)(6506007)(36756003)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <1E6B41D70D51DF49AA38424AA0B27B06@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR08MB6046
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:
	61b9b760-7821-40f7-a114-08dbc674bb55
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	U0GBGjgxArEXR0WYvSrKfUvaoT2A92rjVzuNFpFSBleIZWn+JYsKGwpX/pBk+t2wDxfmtkkmku4Xj43hJ6EqrhLwNb07vcnFM1xGxnw7836xQEGu1QBhiVluyZPT2586m8GcXypW5K2LwAuLxl8nX/v6CW/4K8jyts7pWuy8wifi2SrchRzrYpmF0EfV83P90gtjsslMB4/0kUMbRmbACIzXgBsZTJqm0mFXJdznq9rEnNosC10iZj59fJswuqzNK8T4NxkIj67DAFbm3MeaYK99TF7ISQXpKs5W0S+v/+frdbnpt3Qb5OnBlXjo0Yfc+hrMkWl4kvv+Ree579fMTORLrqaF6YyvvFXW9v4QK3pVVV3DtiTyGp+CWreCdXXdIlnKjdxEO1x1BOOr56gJXcWRgAPrUaGuUaGGRw7P0digCMpxQm4TqhKC63HzVd2N290kEqqAMT3yhXuviSuDqxvxGtjG8tuyhSauEUoL5nLc+5/SK/SQ+UMstSYLPdBjXwQflaNlDBfO6pnMOB8ip21y7hf4IULDI1NIbLmFh8vsOGW1xUTvmO0SBK2LuoKGZalDBqLp3Dh/JixujbroUmeQfMKL4fiSrQgw6O7HiBLd27XZN+dlJ+Ed48nFckUwUhA+2lLDjZkohqtH4Cr4EA6luYNWu7qx+EV8r00Upqkjgo///QcFeDKb81+jpzvEH+APmK/ZnO13zIrsLiq9Vr83SwBwyOKLMdv4RLMN3aRk87tQd1QGSaXj3nNhokYe
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)(346002)(376002)(230922051799003)(1800799009)(186009)(451199024)(82310400011)(64100799003)(46966006)(40470700004)(36840700001)(2616005)(82740400003)(8676002)(26005)(6862004)(5660300002)(8936002)(81166007)(4326008)(86362001)(478600001)(47076005)(356005)(6486002)(70206006)(40480700001)(40460700003)(70586007)(54906003)(36860700001)(53546011)(316002)(107886003)(2906002)(36756003)(6512007)(6506007)(336012)(33656002)(83380400001)(41300700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Oct 2023 14:01:35.9428
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 33597cf1-8c8e-4f4a-0f2e-08dbc674c105
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: AS2PR08MB9413

SGkgQW5kcmV3LA0KDQo+IE9uIE9jdCA2LCAyMDIzLCBhdCAyMTo1NywgQW5kcmV3IENvb3BlciA8
YW5kcmV3LmNvb3BlcjNAY2l0cml4LmNvbT4gd3JvdGU6DQo+IA0KPiBUaGUgbGFzdCB1c2VyIG9m
IHRoaXMgdmFyaWFibGUgd2FzIGRyb3BwZWQuDQo+IA0KPiBGaXhlczogMjk1NTE0ZmY3NTUwICgi
Y29tbW9uOiBjb252ZXJ0IHZDUFUgaW5mbyBhcmVhIHJlZ2lzdHJhdGlvbiIpDQo+IFNpZ25lZC1v
ZmYtYnk6IEFuZHJldyBDb29wZXIgPGFuZHJldy5jb29wZXIzQGNpdHJpeC5jb20+DQoNClJlbGVh
c2UtYWNrZWQtYnk6IEhlbnJ5IFdhbmcgPEhlbnJ5LldhbmdAYXJtLmNvbT4NCg0KS2luZCByZWdh
cmRzLA0KSGVucnkNCg0KPiAtLS0NCj4gQ0M6IEphbiBCZXVsaWNoIDxKQmV1bGljaEBzdXNlLmNv
bT4NCj4gQ0M6IFJvZ2VyIFBhdSBNb25uw6kgPHJvZ2VyLnBhdUBjaXRyaXguY29tPg0KPiBDQzog
V2VpIExpdSA8d2xAeGVuLm9yZz4NCj4gQ0M6IFRhbWFzIEsgTGVuZ3llbCA8dGFtYXNAdGtsZW5n
eWVsLmNvbT4NCj4gQ0M6IEhlbnJ5IFdhbmcgPEhlbnJ5LldhbmdAYXJtLmNvbT4NCj4gDQo+IEkg
ZXhwZWN0IEdpdGxhYiByYW5kY29uZmlnIHRvIGZpbmQgdGhpcyBldmVudHVhbGx5LCBidXQgaXQg
ZG9lcyBkZXBlbmQgb24NCj4gQ09ORklHX01FTV9TSEFSSU5HIGJlaW5nIGFjdGl2ZSB0byBtYW5p
ZmVzdC4NCj4gLS0tDQo+IHhlbi9hcmNoL3g4Ni9tbS9tZW1fc2hhcmluZy5jIHwgMSAtDQo+IDEg
ZmlsZSBjaGFuZ2VkLCAxIGRlbGV0aW9uKC0pDQo+IA0KPiBkaWZmIC0tZ2l0IGEveGVuL2FyY2gv
eDg2L21tL21lbV9zaGFyaW5nLmMgYi94ZW4vYXJjaC94ODYvbW0vbWVtX3NoYXJpbmcuYw0KPiBp
bmRleCA1MjE3Yzc1NWEyOTkuLjk0YjZiNzgyZWYyZSAxMDA2NDQNCj4gLS0tIGEveGVuL2FyY2gv
eDg2L21tL21lbV9zaGFyaW5nLmMNCj4gKysrIGIveGVuL2FyY2gveDg2L21tL21lbV9zaGFyaW5n
LmMNCj4gQEAgLTE3MDYsNyArMTcwNiw2IEBAIHN0YXRpYyBpbnQgY29weV92Y3B1X3NldHRpbmdz
KHN0cnVjdCBkb21haW4gKmNkLCBjb25zdCBzdHJ1Y3QgZG9tYWluICpkKQ0KPiB7DQo+ICAgICB1
bnNpZ25lZCBpbnQgaTsNCj4gICAgIGludCByZXQgPSAtRUlOVkFMOw0KPiAtICAgIG1mbl90IHZj
cHVfaW5mb19tZm47DQo+IA0KPiAgICAgZm9yICggaSA9IDA7IGkgPCBjZC0+bWF4X3ZjcHVzOyBp
KysgKQ0KPiAgICAgew0KPiAtLSANCj4gMi4zMC4yDQo+IA0KDQo=


From xen-devel-bounces@lists.xenproject.org Fri Oct 06 14:02:20 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 14:02:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613654.954331 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qolPI-0000fI-6y; Fri, 06 Oct 2023 14:02:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613654.954331; Fri, 06 Oct 2023 14:02: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 1qolPI-0000f9-3g; Fri, 06 Oct 2023 14:02:20 +0000
Received: by outflank-mailman (input) for mailman id 613654;
 Fri, 06 Oct 2023 14:02: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=I3TD=FU=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qolPG-0000EG-Mf
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 14:02:18 +0000
Received: from EUR01-DB5-obe.outbound.protection.outlook.com
 (mail-db5eur01on0600.outbound.protection.outlook.com
 [2a01:111:f400:fe02::600])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id f4ed4c1a-6450-11ee-9b0d-b553b5be7939;
 Fri, 06 Oct 2023 16:02:16 +0200 (CEST)
Received: from AM5PR0301CA0015.eurprd03.prod.outlook.com
 (2603:10a6:206:14::28) by AS2PR08MB8997.eurprd08.prod.outlook.com
 (2603:10a6:20b:5f9::18) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.38; Fri, 6 Oct
 2023 14:02:09 +0000
Received: from AM7EUR03FT005.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:206:14:cafe::d4) by AM5PR0301CA0015.outlook.office365.com
 (2603:10a6:206:14::28) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.29 via Frontend
 Transport; Fri, 6 Oct 2023 14:02:09 +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.6863.29 via Frontend Transport; Fri, 6 Oct 2023 14:02:09 +0000
Received: ("Tessian outbound 0ae75d4034ba:v211");
 Fri, 06 Oct 2023 14:02:08 +0000
Received: from 3829bc7b53eb.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 E2D302FE-1407-4DA7-8AD7-064B293E4F2C.1; 
 Fri, 06 Oct 2023 14:02:02 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 3829bc7b53eb.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Fri, 06 Oct 2023 14:02:02 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by PA4PR08MB6046.eurprd08.prod.outlook.com (2603:10a6:102:e4::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.38; Fri, 6 Oct
 2023 14:01:59 +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.033; Fri, 6 Oct 2023
 14:01: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: f4ed4c1a-6450-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=MFpcY2eOiSAkd1LC7JVS31B9R0FGGJUsrTImZaX50TQ=;
 b=OutiOiv/qR8lquOCubXu6XmQHWQnNIwKBq+BKRqomgcSJt03MO0YJJvSEaUPPtvX474SzkvlqILq8MsDue5IVI7UmDQ86EMK5NbCcS0Wi8GxpXUWndJMaJC22UD0db2PzotBsFaBPIO7QM9PdpW82t6zBJ4DYCevQlqZfeudVII=
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: 5acf354ae037334a
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=BzXaiKYmDq3SCv5miwMtFfCoORQxVOUWHaufDpnbjKsYzrjei6Pfo17inxMsfdDV5Yg70zmlpwyZ4zXZL0NUo6zq0eg25JyYm6/NnHOuKwL+HLqFkVZl5CTqc0TXoytUI7G+Gq+vAYTmHt9cqhTuKmlnzjCqew59j8obRw1DxgIY3Xaymd4YIDSkYvz/eOJvwzTefc1KwZslytRncvB20r458e5ZedmcXmaSanvWQiQDav5aUyK+g43VzlGzBj3GffNZ5BYZVi+PaYdqREJkK279WCildBp1bjeszuYsbQOR/CEUlTCubDQYZ0fSZ56gOlQt1JFzgwZ2c5EBijY8UQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=MFpcY2eOiSAkd1LC7JVS31B9R0FGGJUsrTImZaX50TQ=;
 b=FSy8mR36mN2611765yNZ6w0cW4JvLSFAUueTy9cNVeSIedNmssuOdZaUFGtnidsCQZy82OlP4MY/cJeeCMrZB2QGJFUhQyVwka5r4m7qg8an3bz51PJTSrqRd4QwYl2AYh+vjQfWPwRd5ttWnO2X8W7JWK4jZeYkzwiHiZOuX/nde0Y8TE3fGBqsfadgSUFSMmKlwhA0qHXTnd6c3lIr67x02d3Mtl7zqCRDFBtj3/qlO0JgiQp7nWW1iKGCmHGbhCMAIde+a07EfmQSV8dkP94XfWhuxU6xQ4dEm/+K1LfM7bT0KC6cTuPejlBsyKPUS5CFdFht4ASBr1mccJdKmQ==
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=MFpcY2eOiSAkd1LC7JVS31B9R0FGGJUsrTImZaX50TQ=;
 b=OutiOiv/qR8lquOCubXu6XmQHWQnNIwKBq+BKRqomgcSJt03MO0YJJvSEaUPPtvX474SzkvlqILq8MsDue5IVI7UmDQ86EMK5NbCcS0Wi8GxpXUWndJMaJC22UD0db2PzotBsFaBPIO7QM9PdpW82t6zBJ4DYCevQlqZfeudVII=
From: Henry Wang <Henry.Wang@arm.com>
To: Anthony PERARD <anthony.perard@citrix.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: [XEN PATCH] get_maintainer: Add THE REST for sections with
 reviewers only
Thread-Topic: [XEN PATCH] get_maintainer: Add THE REST for sections with
 reviewers only
Thread-Index: AQHZ+FyiaBVN8FQsE0aCzepjg4+08LA8ypOA
Date: Fri, 6 Oct 2023 14:01:59 +0000
Message-ID: <D94A9ED5-8612-4ACE-ADC9-8C37ACB0198C@arm.com>
References: <20231006135406.52750-1-anthony.perard@citrix.com>
In-Reply-To: <20231006135406.52750-1-anthony.perard@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_|PA4PR08MB6046:EE_|AM7EUR03FT005:EE_|AS2PR08MB8997:EE_
X-MS-Office365-Filtering-Correlation-Id: 5490d683-b9d8-4a61-8d81-08dbc674d4dd
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:
 Y1lzC2twZuyD6xWIZftuUulBUZobrQOJjoihPSX0JGJi6uv7zoiyMSlbWFZgGOn9HouDUhQLAGedjSs4EzCyS6EzatHDP62i497GRjlm+P8loYnWlUGe8DBCFjlfOCl06/ifsamMFGoWYTt5YHLnYx+rergKSfGBd7CYio+iY5YQ1YsJdQaEtc6cBUl52+EWuG/YtdxgRw2X0ujwHqT2iv+DMqmltm/rpvXt+U0+4LpELTMN/N25kmyhEFVYC5+MGPUeEWuxTfptFmYMaEQv2rjtdZdMUR6SfkmP0VN51UZOwGxa6bFcV26zA+zlPn7c5c2mYEa6S4i/+TsZiJpSDqf/PsYDMkIEKQTW8y94VQLhQig0TQq0raLqodCt5WadxZ0mcXZ3zgdVoMIf4qtgcEXWkM65zMPqLfaywba97jEOnXhWoo2KA/NTEiSjrYJ29sh6lABjz/sGuihXOHk6NZn5CDVc60tYRw45ppyYfDKxd3WYgYBrrmA0/Esdv11dcajuHxCXAEC2+7tEtBfGAFnAT/nOti74BAUiLVC80Eh1NO7xK1RC7JDAjhqXcxDI9dR4HnfqsgCCxJAc3/CYqCbVeE6kp5EAEzyHqRX+SC2H/AmAPIhXiIK2ur7IclOqgnoLCfROGdqn3O+XgsKz2w==
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)(376002)(39860400002)(346002)(230922051799003)(1800799009)(186009)(64100799003)(451199024)(4326008)(8676002)(8936002)(316002)(6916009)(5660300002)(41300700001)(2616005)(478600001)(26005)(6486002)(122000001)(6512007)(76116006)(83380400001)(66946007)(54906003)(64756008)(66446008)(66476007)(66556008)(91956017)(2906002)(86362001)(33656002)(53546011)(71200400001)(38100700002)(38070700005)(6506007)(36756003)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="us-ascii"
Content-ID: <F9055DB1937E554592303CFE589115A1@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR08MB6046
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:
	e093d863-a333-4233-b23e-08dbc674cf1d
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	FiH+CFch/82wHuuB39pfH5Eq0AFOVpjHRHfyPkkvLAii1+ItPurPKpnx6kHuM+5BTGtrlcu+NQ3QcPjNvejYM2VNeCEOFn+VEtrCXqO6uWXzh7vRP51XMBIiN2M7te4J5TaW29Ot+FwAcAAmvkXOZFy/LBIl2jteyEdoCIxJdD9CeFm/PuFqJ/rwYoBKs/W6G3kSWPm51+MgnSFuyGykI2L27Zabt91V0WiArc8fmsHTTM9XXSaDU3+Ps+kWLnx7b009xXu7HuBr+5LYrVRxbtd8yp4NC/Zsni4/7VKnkVcgF7CpTmVKrf/oAgvUqPtV/DtgYy/xvdER8mxtPHLFkQ/x0kq3XhGkoNnMS+zu8Oz9JoffLELsWTiqyD22qw5TadA7gul3kvbZfFPmQIjmUN0rJ4l+KQDwD+V+k9sopUEGKgdH+UA0vxhY2UWdgfOrg2OY/bMq/LS9Y0hPpyI5YV/MrITNSIULpsHk9QVten63AgI26hLyphTX7Jy1zAhg44t4ZX/CkLv93OHXolkw4naGXpxzzUpXgM0G4uK1g4N5Y+yjgnQSL0RcfQmFjh+vLRUJVLabJJ2+E9gW+u+BMFbYIYxOXrcx53ULKPwJN9LcWiiiv76hvdTeDznDfyTG7rQ72XmVArvJX/ainWKds5bwNO9eswCKb4xf9JmWFqv1rXinx2xD45GQHtjSH7CMqYxO8IXbIk3MN5a7n/rWdCtSw//5xezZU28DbBoBPhvZR1vCmm9XBvx8qFuQnLUx
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)(376002)(346002)(230922051799003)(451199024)(82310400011)(64100799003)(186009)(1800799009)(36840700001)(40470700004)(46966006)(40460700003)(40480700001)(53546011)(6506007)(478600001)(6486002)(6512007)(36860700001)(86362001)(82740400003)(33656002)(81166007)(356005)(2906002)(83380400001)(336012)(26005)(47076005)(2616005)(36756003)(70586007)(8936002)(5660300002)(54906003)(8676002)(4326008)(41300700001)(6862004)(70206006)(316002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Oct 2023 14:02:09.2071
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 5490d683-b9d8-4a61-8d81-08dbc674d4dd
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: AS2PR08MB8997

Hi Anthony,

> On Oct 6, 2023, at 21:54, Anthony PERARD <anthony.perard@citrix.com> wrot=
e:
>=20
> Sometime, a contributer would like to be CCed on part of the changes,
> and it could happen that we end-up with a section that doesn't have
> any maintainer, but a Ack from a maintainer would still be needed.
>=20
> Rework get_maintainer so if there's no maintainers beside THE REST, it
> doesn't drop THE REST emails.
>=20
> Signed-off-by: Anthony PERARD <anthony.perard@citrix.com>

Release-acked-by: Henry Wang <Henry.Wang@arm.com>

Kind regards,
Henry

> ---
>=20
> Notes:
>    Soon, the RISCV section might be the first (I think) section without
>    maintainer and without been nested in another section other than THE
>    REST.
>=20
>    Tests by checking that the following comnands returns the expected ema=
ils.
>    ./scripts/get_maintainer.pl -f tools/libs/Makefile
>    ./scripts/get_maintainer.pl -f xen/arch/riscv/Makefile
>    ./scripts/get_maintainer.pl -f xen/arch/arm/Makefile
>=20
>    An extra '--sections' argument list all sections, including THE REST.
>=20
> scripts/get_maintainer.pl | 9 ++++++++-
> 1 file changed, 8 insertions(+), 1 deletion(-)
>=20
> diff --git a/scripts/get_maintainer.pl b/scripts/get_maintainer.pl
> index cf629cdf3c..533d0df72a 100755
> --- a/scripts/get_maintainer.pl
> +++ b/scripts/get_maintainer.pl
> @@ -732,8 +732,15 @@ sub get_maintainers {
>         my @email_new;
>         my $do_replace =3D 0;
>         foreach my $email (@email_to) {
> -            if ($email->[1] ne 'supporter:THE REST') {
> +            # Replace @email_to list with a list which drop "THE REST" i=
f
> +            # there's a role other than "reviewer", that is if there's a
> +            # maintainer/supporter in a section other than THE REST.
> +            if ($email->[1] ne 'supporter:THE REST' and $email->[1] ne '=
reviewer') {
>                 $do_replace =3D 1;
> +            }
> +            # Prepare a new list without "THE REST", to be used if $do_r=
eplace
> +            # is true.
> +            if ($email->[1] ne 'supporter:THE REST') {
>                 push @email_new, $email;
>             }
>         }
> --=20
> Anthony PERARD
>=20



From xen-devel-bounces@lists.xenproject.org Fri Oct 06 14:02:41 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 14:02:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613659.954341 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qolPd-00016U-Jl; Fri, 06 Oct 2023 14:02:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613659.954341; Fri, 06 Oct 2023 14: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 1qolPd-00016N-Fs; Fri, 06 Oct 2023 14:02:41 +0000
Received: by outflank-mailman (input) for mailman id 613659;
 Fri, 06 Oct 2023 14:02: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=I3TD=FU=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qolPc-00013e-Ok
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 14:02:40 +0000
Received: from EUR02-AM0-obe.outbound.protection.outlook.com
 (mail-am0eur02on20628.outbound.protection.outlook.com
 [2a01:111:f400:fe13::628])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 02e1122a-6451-11ee-98d3-6d05b1d4d9a1;
 Fri, 06 Oct 2023 16:02:40 +0200 (CEST)
Received: from DU6P191CA0014.EURP191.PROD.OUTLOOK.COM (2603:10a6:10:540::15)
 by VI1PR08MB10147.eurprd08.prod.outlook.com (2603:10a6:800:1ce::10) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.35; Fri, 6 Oct
 2023 14:02:37 +0000
Received: from DBAEUR03FT055.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:540:cafe::53) by DU6P191CA0014.outlook.office365.com
 (2603:10a6:10:540::15) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.30 via Frontend
 Transport; Fri, 6 Oct 2023 14:02:36 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DBAEUR03FT055.mail.protection.outlook.com (100.127.142.171) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6863.26 via Frontend Transport; Fri, 6 Oct 2023 14:02:36 +0000
Received: ("Tessian outbound 0ae75d4034ba:v211");
 Fri, 06 Oct 2023 14:02:36 +0000
Received: from b7fdf0532ff5.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 26177A3C-A08B-409A-8D7D-EF9341D6B0EF.1; 
 Fri, 06 Oct 2023 14:02:29 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id b7fdf0532ff5.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Fri, 06 Oct 2023 14:02:29 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by PA4PR08MB6046.eurprd08.prod.outlook.com (2603:10a6:102:e4::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.38; Fri, 6 Oct
 2023 14:02: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%7]) with mapi id 15.20.6838.033; Fri, 6 Oct 2023
 14:02: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: 02e1122a-6451-11ee-98d3-6d05b1d4d9a1
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=yOQU+dqLCag2RJFZcdSsP3klK/RUhZ7eIVUMFZp8Lsc=;
 b=yVVDrzK7C+02yc8eFU3NTbx5Al4pZlCedVlJTzpFyjuYXttyMHhareHDEKkjYS5F5diJQtqkSmAl/eLs8U49NpOafsTVWIyD73SWGAn/DAjzXLqfI3uJPKUsEK/aU2QIFIRV6h1aCIIbexwmQHcmoeGhUKFtxdkW86O/DgAA/cM=
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: 90ed3efc96c60d7b
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=jWJMtznTV5/Oob4+k6AoQr0DQc4Z9/nMWJrlEwlGrdCqBgHihK08eo1MlJr74d/KXFGydCHfIs2NJjzW5JRFVVFjQgCWQIGexoxq1u7g8ZqSAFN9l5eeiLKU7NtwrbKJ0fyfIyB0eZmPscds1giC/IzsXL1Sy4O25tzrc0jAsIL6tM6AdTZ6MDE0FoUaVoQjxyEHEeyCDvXHosJI43BOjqqq2dMoDVwZZHRePteM60H9zX29Xh2DIn4Gd3Gxpe5tJk49DAL7NtIyv0MQx9DNl2tzRzeEL0TcNCm7fJJlgezpxSPILIy2JCsx6bDDyJJc/rPs9TXby+grq5PLedLBjg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=yOQU+dqLCag2RJFZcdSsP3klK/RUhZ7eIVUMFZp8Lsc=;
 b=Zst94xsqd0pQtk0eQlgokwkHLV5V0MGGTB4H3yITkr/b80Rt3MyL2Dcsp80wAG/afLfPHMsbbcyqjHWj6SPocxJYspxWPKyFloejv2IoHsf4QKnw/WEOnVSMXtzR3js4DQiAKBAcWwzVKFnNSmKFzItwL9k/oFQOQoHmLvAD+PZp9Umlu8OHPEgi2kAb1SKliLfM54kHSWa0KON1ZVrQOR/BU4yfcKyZ+/+QcPtdTz3hVwpT9+bPTRGigWSXTc/gCO08elYk/DqSw4Hgivd93sCve3/8HR+c2nD80vHrf3tpaVhEgZKNcDdl/rcb3PgHFlyBK4C9NlIR9D2vJh/uDw==
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=yOQU+dqLCag2RJFZcdSsP3klK/RUhZ7eIVUMFZp8Lsc=;
 b=yVVDrzK7C+02yc8eFU3NTbx5Al4pZlCedVlJTzpFyjuYXttyMHhareHDEKkjYS5F5diJQtqkSmAl/eLs8U49NpOafsTVWIyD73SWGAn/DAjzXLqfI3uJPKUsEK/aU2QIFIRV6h1aCIIbexwmQHcmoeGhUKFtxdkW86O/DgAA/cM=
From: Henry Wang <Henry.Wang@arm.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>
CC: Roger Pau Monne <roger.pau@citrix.com>, Xen-devel
	<xen-devel@lists.xenproject.org>, Community Manager
	<community.manager@xenproject.org>, 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] domain: expose newly introduced hypercalls as
 XENFEAT
Thread-Topic: [PATCH v2 2/2] domain: expose newly introduced hypercalls as
 XENFEAT
Thread-Index: AQHZ+FVZUPfMale+2EmZAlhfgl1uHrA8utcAgAAP6wA=
Date: Fri, 6 Oct 2023 14:02:27 +0000
Message-ID: <7E90A084-3D08-4657-ABDB-17001FCE6E2D@arm.com>
References: <20231006130059.97700-1-roger.pau@citrix.com>
 <20231006130059.97700-3-roger.pau@citrix.com>
 <e45d0273-834b-4d7f-b158-29341845d3be@citrix.com>
In-Reply-To: <e45d0273-834b-4d7f-b158-29341845d3be@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_|PA4PR08MB6046:EE_|DBAEUR03FT055:EE_|VI1PR08MB10147:EE_
X-MS-Office365-Filtering-Correlation-Id: 39666263-876e-405b-686f-08dbc674e505
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:
 NWKNe1EU2nD5Oj232p8yoCPPMHvsjSBcC9NeVw2p9JhHw836+eHx4evlcycaCx2L1a3R1mhHdyPX0ie72Qj05yoq0HPhFzs1YLlOYrXMNv85/oRFOnhLajy3wnK1ZDDcmQKqI3Y2ZXwGiwyoK5wqtf/q1efL9J0QhLKvErWIfbddTyPi/xHHFy0Llvg0RQW6Ki3f5OaY6lYtH2kjp3RLM3LtMBerZFNaNhWWdh/EpacJGeAP6lXPF6fqvd8+ceF3DD6SEb3VRRkTU6bX7AT3isMBbpqhxqXQUir1MlgaaF3YscitLbUySO+tl/uXbqbD1C5oTEcdoq8jgGo8pcAt3bkqUiM/4Fs7vY29pJ+Ev54gf3zXLVHMdDwEbgzp1Tv9vvekrsR8s1FN5pcUSr2SV+jVPEfL0DP1npHzffJlW2bkmoiXvwxNQNFirMdvT8DgZRWccy8DyaLJvTtR+EsC7zosCCL9YBD0jtjXwSQ0SNkI7UBDgSaKhyIgD60WG9JU6AzNNzN5gRWZnY1zzHqSqWEx+QXDPbHOW60vS+hBSNfIStlWnz7uIDTriRyUZaxq7FmlM6MkfQlGG5Mtt6A9sKsFhubohxVVB7KEkLh67mODk/FinTpi8wCpO3PtRc67SnDhhiN8CmS2oS9Ivmatiw==
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)(376002)(39860400002)(346002)(230922051799003)(1800799009)(186009)(64100799003)(451199024)(4326008)(8676002)(8936002)(316002)(6916009)(5660300002)(41300700001)(2616005)(478600001)(26005)(6486002)(122000001)(6512007)(76116006)(83380400001)(66946007)(54906003)(64756008)(66446008)(66476007)(66556008)(91956017)(2906002)(86362001)(33656002)(53546011)(71200400001)(38100700002)(38070700005)(6506007)(36756003)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="us-ascii"
Content-ID: <2BD3C651CB771E42BAF06FD92365A7A5@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR08MB6046
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:
 DBAEUR03FT055.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	152dec68-9c2d-40ec-abd1-08dbc674dfa5
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	GXoYYmxa3Y70rWj0m3Z239Zqv5MXe+k6Bz/bYXIxjGw7HxOoDXi/xzEDviOCKXROj/0L7rgTJv+mxHO0w+BLKe49SteU7jDB5oSDEfwMHpjNzDTVk64ZXRSoSCT97O1vsG48NrXxEEEB6jFXIz7M8omRdc3k4K8ExWbi6Xd3gU7x3zZx1h+40/J2HKUI+Alfg189Ytrq8dX5Ns5bDDVNMoKzeafsbJLSKe7hLvxqJfowDIvAfO2h242Zbd+rgd9SW0IaWtSyfw1SghvFWg5I7VLuq8CLDgT3NpP7z7oUyvU71ek2W1uboyrQ9u64r9U/RrOmEPEIUUNiyFzm77Sj5R56hXRmB3EdRPhIfP4j3bLAdep4yBCzC0dNtJlkx5nVrBgwjl7O/VoOVHxU4xauVE6ItkMyMQNak6MsvjqCicByljPel1F/awgJJkr1T1VUTIR/BDxcQNEMyLjpjE6LRn18k390SN5E5mlzvinFuP/jNXR9KIS//SVdOqrrTSBcgjpaIQPPE7h2K0RvgeuIiPKVqJdXHITLwh3bwHl81zWWN54ppzJ/i4SR5kXtjPMCb5OEmenZhVsPdUh89v59bhFLjzdpfzdLnvzN28tZK+k7wl6nYRexAGmGVEpLCvTARQlVOx5qf+fkd+zfIxl/cCqio+nIeNNfbQlRX9W4UtqEHDMftSVGK59fZ2q0xjEVaVibrwEJU2/RO9hXxx/Nmg==
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)(1800799009)(82310400011)(186009)(64100799003)(451199024)(36840700001)(46966006)(47076005)(6506007)(53546011)(478600001)(6486002)(6512007)(41300700001)(2616005)(36756003)(2906002)(26005)(8676002)(70206006)(6862004)(70586007)(8936002)(4326008)(54906003)(5660300002)(316002)(33656002)(83380400001)(86362001)(36860700001)(356005)(81166007)(82740400003)(336012)(40480700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Oct 2023 14:02:36.3431
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 39666263-876e-405b-686f-08dbc674e505
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:
	DBAEUR03FT055.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR08MB10147

Hi,

> On Oct 6, 2023, at 21:05, Andrew Cooper <andrew.cooper3@citrix.com> wrote=
:
>=20
> On 06/10/2023 2:00 pm, Roger Pau Monne wrote:
>> diff --git a/xen/include/public/features.h b/xen/include/public/features=
.h
>> index d2a9175aae67..22713a51b520 100644
>> --- a/xen/include/public/features.h
>> +++ b/xen/include/public/features.h
>> @@ -111,6 +111,15 @@
>> #define XENFEAT_not_direct_mapped         16
>> #define XENFEAT_direct_mapped             17
>>=20
>> +/*
>> + * Signal whether the domain is permitted to use the following hypercal=
ls:
>> + *
>> + * VCPUOP_register_runstate_phys_area
>> + * VCPUOP_register_vcpu_time_phys_area
>> + */
>> +#define XENFEAT_runstate_phys_area  18
>> +#define XENFEAT_vcpu_time_phys_area  19
>> +
>> #define XENFEAT_NR_SUBMAPS 1
>>=20
>> #endif /* __XEN_PUBLIC_FEATURES_H__ */
>> diff --git a/xen/include/public/vcpu.h b/xen/include/public/vcpu.h
>> index 8fb0bd1b6c03..03b031a3e557 100644
>> --- a/xen/include/public/vcpu.h
>> +++ b/xen/include/public/vcpu.h
>> @@ -236,6 +236,9 @@ DEFINE_XEN_GUEST_HANDLE(vcpu_register_time_memory_ar=
ea_t);
>>  * Note that the area registered via VCPUOP_register_runstate_memory_are=
a will
>>  * be updated in the same manner as the one registered via virtual addre=
ss PLUS
>>  * VMASST_TYPE_runstate_update_flag engaged by the domain.
>> + *
>> + * XENFEAT_{runstate,vcpu_time}_phys_area feature bits signal if the do=
main is
>> + * permitted the usage of the hypercalls.
>>  */
>> #define VCPUOP_register_runstate_phys_area      14
>> #define VCPUOP_register_vcpu_time_phys_area     15
>=20
> For both of these, I'd suggest s/permitted/able/.  For older versions of
> Xen which don't advertise the XENFEAT, it's a matter of capability, not
> permission.
>=20
> Otherwise, Reviewed-by: Andrew Cooper <andrew.cooper3@citrix.com> and
> I'm happy to adjust on commit to save sending out a v3.

Release-acked-by: Henry Wang <Henry.Wang@arm.com>

Kind regards,
Henry

>=20
> Thanks,
>=20
> ~Andrew



From xen-devel-bounces@lists.xenproject.org Fri Oct 06 14:03:00 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 14:03:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613661.954351 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qolPv-0001YX-S4; Fri, 06 Oct 2023 14:02:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613661.954351; Fri, 06 Oct 2023 14:02: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 1qolPv-0001YQ-Od; Fri, 06 Oct 2023 14:02:59 +0000
Received: by outflank-mailman (input) for mailman id 613661;
 Fri, 06 Oct 2023 14:02: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=I3TD=FU=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qolPu-0000EG-NS
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 14:02:58 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com
 (mail-db3eur04on0630.outbound.protection.outlook.com
 [2a01:111:f400:fe0c::630])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 0cccc234-6451-11ee-9b0d-b553b5be7939;
 Fri, 06 Oct 2023 16:02:57 +0200 (CEST)
Received: from DU2P250CA0026.EURP250.PROD.OUTLOOK.COM (2603:10a6:10:231::31)
 by VI1PR08MB5471.eurprd08.prod.outlook.com (2603:10a6:803:137::8) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.37; Fri, 6 Oct
 2023 14:02:53 +0000
Received: from DBAEUR03FT032.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:231:cafe::e7) by DU2P250CA0026.outlook.office365.com
 (2603:10a6:10:231::31) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.33 via Frontend
 Transport; Fri, 6 Oct 2023 14:02:53 +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.6863.26 via Frontend Transport; Fri, 6 Oct 2023 14:02:53 +0000
Received: ("Tessian outbound d219f9a4f5c9:v211");
 Fri, 06 Oct 2023 14:02:52 +0000
Received: from 0d2f78b0b1f6.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 D5768022-2048-41A7-8114-BCB88DCC9C1A.1; 
 Fri, 06 Oct 2023 14:02:43 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 0d2f78b0b1f6.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Fri, 06 Oct 2023 14:02:43 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by PA4PR08MB6046.eurprd08.prod.outlook.com (2603:10a6:102:e4::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.38; Fri, 6 Oct
 2023 14:02: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%7]) with mapi id 15.20.6838.033; Fri, 6 Oct 2023
 14: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: 0cccc234-6451-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=T+sg5o01tWqh+EKHLQM5Cc/Te0Kem7cdrOS1Bjlt9q8=;
 b=6i4CnbMctnBQTb5ENzWJ9b8C3lCMXtfprbDpmrgcNVWAlKpcTMZMjsSDYBZNxTSqSKeaBgYvzjK6k+yxjIUAVzVb7E2HL/osur4VT7sXW3aPeYwI/0oLryjgUjL6IyfQOIrn42beFNfyXBXWcQLnLplehW6NSmAT2T6DITKZeAM=
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: 0529d14d7e05b3db
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Kuu55Whe3VdOYxMbzKCejwxGudJuYIldOrw07l5hY8yuEUySOkBIG4kVjlgJ1Dz7BA5YOOga3DbZJd+fNx5EhJ2vf6Xhm0r9jZLj3eWR/20YwfGLXYS1c4+CmzSp9fOdFHFMtZq5VTNm3XkPvmPyiANEO6vEOoN7sDi3lAUAaG1r4bbMYW9CrBi+IJV5L5R7A73i7F1eHWTQICEyVy4TvhK6NxUvK2o4a6z03z+fVCisM02UL7TjA+TklPe5M54DBu+zqaYRKwQ6K+IEM7aSjD7hYXN5F5vOP4IGVqS/6SsvULRvJUOe4zePVTG39DLdVMkOcv1pOxvpmYHxwkEtpA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-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+sg5o01tWqh+EKHLQM5Cc/Te0Kem7cdrOS1Bjlt9q8=;
 b=lsingF3FOQZBn3SXbgHCdY3akPWN1K4Qmwig7OIuydMA3XJJtMKQ7/zAGlAsUzlieCeph9QiMuNyiqdCKKHbFCLO6by+vwHpznbpZKK4tAx6cWlXM95JklTYAXZgAEWWejh+2GBzKn2TAjZ8sasu4vX5yKm7EgHt5BPnIql1nF6aCdDG3Qw93YMemu3kd4k/f6jsoFhLoNUAqJwy+7QGhBLG6VwF4roVIDmuh1Ns8eqNCdXNGBumY8KevR+pE3HynYfrivMDBS3L93wEsmgf/pSiI1U7yUyysz6WPGGgAgZ3CAnbnjOMRmkArZjoG1eE2pfeFPrTVE2NCKqUg+lUsw==
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=T+sg5o01tWqh+EKHLQM5Cc/Te0Kem7cdrOS1Bjlt9q8=;
 b=6i4CnbMctnBQTb5ENzWJ9b8C3lCMXtfprbDpmrgcNVWAlKpcTMZMjsSDYBZNxTSqSKeaBgYvzjK6k+yxjIUAVzVb7E2HL/osur4VT7sXW3aPeYwI/0oLryjgUjL6IyfQOIrn42beFNfyXBXWcQLnLplehW6NSmAT2T6DITKZeAM=
From: Henry Wang <Henry.Wang@arm.com>
To: Roger Pau Monne <roger.pau@citrix.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 1/2] domain: fix misaligned unmap address in
 {,un}map_guest_area()
Thread-Topic: [PATCH v2 1/2] domain: fix misaligned unmap address in
 {,un}map_guest_area()
Thread-Index: AQHZ+FVSiuHBkWxcn0ecPd7Xf/rLHLA8ytIA
Date: Fri, 6 Oct 2023 14:02:41 +0000
Message-ID: <81E3D4F8-E5A8-46F1-BA2A-E74AE7207D13@arm.com>
References: <20231006130059.97700-1-roger.pau@citrix.com>
 <20231006130059.97700-2-roger.pau@citrix.com>
In-Reply-To: <20231006130059.97700-2-roger.pau@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_|PA4PR08MB6046:EE_|DBAEUR03FT032:EE_|VI1PR08MB5471:EE_
X-MS-Office365-Filtering-Correlation-Id: dca7386d-2c46-4b4d-db63-08dbc674ef2d
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:
 mk+g2ksEURdycaxljwcYw2ziKNVH5yRo6lGRRHyHmm39jROMMzF8J0s5X9O/hdt2xDzMBzVx+Tf8/SMkKCog8GNSFC7G7QOskvGlWFjdkk9yvovR3qHCHhlVkBFlx5jZfJ6eoZCO8WhLXYJKzwPy1NHft24PP8KyvpMClyJkFmQ3e+jRs8pgfFHBNXXYrhphxUe9Jl8qGngV/U5xbAwjek2CD3iMPG43j8Z5v4SpXJwt9tcHOsI6orNWSRsNUl+91adLLw91oVmYe7NxWhSI2RG6XtV7RYB4w6+/3+ibEYo2JQVHyhRaIO/yMZYIsVEkSW5hBfyPxLev2xIYc/kXzTSAWD0o2JGm/p459YPSwISr5Kw4GhkP5jMNori7FfYT8/Puw0vV+KZyw+5Rrf3pqxRauoir5Hz+/E0zXyacP5ERVxStVwQf9KHq7mHugZxsjdJcqP1MnNkSevb5zWfWtkWzK4fIKYr9mppJPI11DOqIzZmUGo8/VDrQe/jbp4sDTUPoZDUo25bD6p/w+CR0nEtUlhs9CtzqA4XytoHEepIenoRE42/UvBGb4NMcPlpz3Nffd6hJcIZdzx9onvw0jS3k+Idl5hR248KV4CqH9kWL5eRFGAZBWRdH3InYyY0gwofABgRL7mRxgpR7ustDzg==
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)(376002)(39860400002)(346002)(230922051799003)(1800799009)(186009)(64100799003)(451199024)(4326008)(8676002)(8936002)(316002)(6916009)(5660300002)(41300700001)(2616005)(478600001)(26005)(6486002)(122000001)(6512007)(76116006)(83380400001)(66946007)(54906003)(64756008)(66446008)(66476007)(66556008)(91956017)(2906002)(86362001)(33656002)(53546011)(71200400001)(38100700002)(38070700005)(6506007)(36756003)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <618D38452EAD574787BD18DB3B982E1B@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR08MB6046
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:
	06692ab5-5b3e-4d2e-77c4-08dbc674e7e8
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	kg4LxHaRI4t3WnHNcSJAvfGyQY8hVqCNYxjKsV8VIdyGg11cUW0I9PoH5ZE80f66DoUow80cSUYM9gv2kIgknRV1+xAudpij5T7IBswkIzObXlWHiuhQzOhiWYnPzDrS3+rJAyKa1GelDgQZN9h79WfVfMLyRJDawlDjQLnKp3tHMksqY/H8XHMZstO7viRNQ7bXD3+vlNlWIq66spwiSnmQWFVXIqk8vcMynWwpfeP3XWxHmRvzeEFqspU4qNuPimTjbNFw4qyMKgytKiWPUyb5xMiGiU4CDJkU1aPhKAOwrVBtodZ2gVLaIMSFRERR1DkwtvqNdohwOsRuDgyeuQlDZuKle/BrNjEN2fo+UYKhvG0Wva34mYyQatvL5wQFvu50934SSgNSUHk/Gy+8L9uOZdQS0jiNPs+zr4acx2CE7Ih2kgLYfgqeLyt5lXX42AtNSJw42bjtoMsPyin6ATWSdPl1GmF0M+yQLEy2Yt4XH+9eIEYXGNNSK9i9X7Vbn3Zq0nAxpuxTT/FCjNfQmnJHNUOSmS1MZxhGUcQs5cwi/VnY2ik7SZ4qnpNSrrdvGpg55sEJLwwZmcOtDAQCzStEpjCnFpi1sy7qBJbkeZUGHCYZ+0/ZTGF7Y/GdAGERKTtzqo8pR4OXMkQNxxzmISagtO1DszkQGfTOQlLzjexrDudEP6dnRWm8VKj9LvSh+kybXZmjMVQScqMRHv9j8w==
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)(64100799003)(186009)(1800799009)(451199024)(82310400011)(46966006)(36840700001)(33656002)(36756003)(86362001)(2906002)(47076005)(83380400001)(336012)(26005)(2616005)(36860700001)(82740400003)(81166007)(356005)(6506007)(5660300002)(6512007)(6862004)(4326008)(8676002)(8936002)(53546011)(478600001)(6486002)(41300700001)(316002)(54906003)(40480700001)(70206006)(70586007);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Oct 2023 14:02:53.4323
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: dca7386d-2c46-4b4d-db63-08dbc674ef2d
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: VI1PR08MB5471

SGkgUm9nZXIsDQoNCj4gT24gT2N0IDYsIDIwMjMsIGF0IDIxOjAwLCBSb2dlciBQYXUgTW9ubmUg
PHJvZ2VyLnBhdUBjaXRyaXguY29tPiB3cm90ZToNCj4gDQo+IHVubWFwX2RvbWFpbl9wYWdlX2ds
b2JhbCgpIGV4cGVjdHMgdGhlIHByb3ZpZGVkIGFkZHJlc3MgdG8gYmUgcGFnZSBhbGlnbmVkLCBv
cg0KPiBlbHNlIHNvbWUgb2YgdGhlIGNhbGxlZCBmdW5jdGlvbnMgd2lsbCB0cmlnZ2VyIGFzc2Vy
dGlvbnMsIGxpa2UNCj4gbW9kaWZ5X3hlbl9tYXBwaW5ncygpIG9uIHg4NiBvciBkZXN0cm95X3hl
bl9tYXBwaW5ncygpIG9uIEFybS4NCj4gDQo+IFRoZSBmb2xsb3dpbmcgYXNzZXJ0IGhhcyBiZWVu
IHJlcG9ydGVkIGJ5IG9zc3Rlc3QgYXJtIDMyYml0IHRlc3RzOg0KPiANCj4gKFhFTikgQXNzZXJ0
aW9uICdJU19BTElHTkVEKHMsIFBBR0VfU0laRSknIGZhaWxlZCBhdCBhcmNoL2FybS9tbS5jOjEy
NDMNCj4gKFhFTikgLS0tLVsgWGVuLTQuMTgtcmMgIGFybTMyICBkZWJ1Zz15ICBOb3QgdGFpbnRl
ZCBdLS0tLQ0KPiAoWEVOKSBDUFU6ICAgIDANCj4gKFhFTikgUEM6ICAgICAwMDI3MWEzOCBkZXN0
cm95X3hlbl9tYXBwaW5ncysweDUwLzB4NWMNCj4gWy4uLl0NCj4gKFhFTikgWGVuIGNhbGwgdHJh
Y2U6DQo+IChYRU4pICAgIFs8MDAyNzFhMzg+XSBkZXN0cm95X3hlbl9tYXBwaW5ncysweDUwLzB4
NWMgKFBDKQ0KPiAoWEVOKSAgICBbPDAwMjM1YWE4Pl0gdnVubWFwKzB4MzAvMHgxYTAgKExSKQ0K
PiAoWEVOKSAgICBbPDAwMjZhZDg4Pl0gdW5tYXBfZG9tYWluX3BhZ2VfZ2xvYmFsKzB4MTAvMHgy
MA0KPiAoWEVOKSAgICBbPDAwMjA4ZTM4Pl0gdW5tYXBfZ3Vlc3RfYXJlYSsweDkwLzB4ZWMNCj4g
KFhFTikgICAgWzwwMDIwOGY5OD5dIGRvbWFpbl9raWxsKzB4MTA0LzB4MTgwDQo+IChYRU4pICAg
IFs8MDAyMzllM2M+XSBkb19kb21jdGwrMHg4YWMvMHgxNGZjDQo+IChYRU4pICAgIFs8MDAyN2Fl
MzQ+XSBkb190cmFwX2d1ZXN0X3N5bmMrMHg1NzAvMHg2NmMNCj4gKFhFTikgICAgWzwwMDIwMTlm
MD5dIGFyY2gvYXJtL2FybTMyL2VudHJ5Lm8jcmV0dXJuX2Zyb21fdHJhcCswLzB4NA0KPiANCj4g
Rml4ZXM6IGVhZGMyODhjYmIwZCAoJ2RvbWFpbjogbWFwL3VubWFwIEdBRERSIGJhc2VkIHNoYXJl
ZCBndWVzdCBhcmVhcycpDQo+IFNpZ25lZC1vZmYtYnk6IFJvZ2VyIFBhdSBNb25uw6kgPHJvZ2Vy
LnBhdUBjaXRyaXguY29tPg0KDQpSZWxlYXNlLWFja2VkLWJ5OiBIZW5yeSBXYW5nIDxIZW5yeS5X
YW5nQGFybS5jb20+DQoNCktpbmQgcmVnYXJkcywNCkhlbnJ5DQoNCj4gLS0tDQo+IENoYW5nZXMg
c2luY2UgdjE6DQo+IC0gQWxzbyBwYWdlLWFsaWduIHRoZSBhZGRyZXNzIGluIG1hcF9ndWVzdF9h
cmVhKCkuDQo+IC0tLQ0KPiB4ZW4vY29tbW9uL2RvbWFpbi5jIHwgNCArKy0tDQo+IDEgZmlsZSBj
aGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pDQo+IA0KPiBkaWZmIC0tZ2l0
IGEveGVuL2NvbW1vbi9kb21haW4uYyBiL3hlbi9jb21tb24vZG9tYWluLmMNCj4gaW5kZXggYjgy
ODFkN2NmZjlkLi4xNDY4NjM4YWRlOGIgMTAwNjQ0DQo+IC0tLSBhL3hlbi9jb21tb24vZG9tYWlu
LmMNCj4gKysrIGIveGVuL2NvbW1vbi9kb21haW4uYw0KPiBAQCAtMTYwMSw3ICsxNjAxLDcgQEAg
aW50IG1hcF9ndWVzdF9hcmVhKHN0cnVjdCB2Y3B1ICp2LCBwYWRkcl90IGdhZGRyLCB1bnNpZ25l
ZCBpbnQgc2l6ZSwNCj4gIHVubWFwOg0KPiAgICAgaWYgKCBwZyApDQo+ICAgICB7DQo+IC0gICAg
ICAgIHVubWFwX2RvbWFpbl9wYWdlX2dsb2JhbChtYXApOw0KPiArICAgICAgICB1bm1hcF9kb21h
aW5fcGFnZV9nbG9iYWwoKHZvaWQgKikoKHVuc2lnbmVkIGxvbmcpbWFwICYgUEFHRV9NQVNLKSk7
DQo+ICAgICAgICAgcHV0X3BhZ2VfYW5kX3R5cGUocGcpOw0KPiAgICAgfQ0KPiANCj4gQEAgLTE2
MzQsNyArMTYzNCw3IEBAIHZvaWQgdW5tYXBfZ3Vlc3RfYXJlYShzdHJ1Y3QgdmNwdSAqdiwgc3Ry
dWN0IGd1ZXN0X2FyZWEgKmFyZWEpDQo+IA0KPiAgICAgaWYgKCBwZyApDQo+ICAgICB7DQo+IC0g
ICAgICAgIHVubWFwX2RvbWFpbl9wYWdlX2dsb2JhbChtYXApOw0KPiArICAgICAgICB1bm1hcF9k
b21haW5fcGFnZV9nbG9iYWwoKHZvaWQgKikoKHVuc2lnbmVkIGxvbmcpbWFwICYgUEFHRV9NQVNL
KSk7DQo+ICAgICAgICAgcHV0X3BhZ2VfYW5kX3R5cGUocGcpOw0KPiAgICAgfQ0KPiB9DQo+IC0t
IA0KPiAyLjQyLjANCj4gDQoNCg==


From xen-devel-bounces@lists.xenproject.org Fri Oct 06 14:04:58 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 14:04:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613669.954361 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qolRn-0002ag-6P; Fri, 06 Oct 2023 14:04:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613669.954361; Fri, 06 Oct 2023 14:04: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 1qolRn-0002aZ-3O; Fri, 06 Oct 2023 14:04:55 +0000
Received: by outflank-mailman (input) for mailman id 613669;
 Fri, 06 Oct 2023 14:04: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 1qolRl-0002aR-DC
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 14:04: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 1qolRl-0008Or-0Y; Fri, 06 Oct 2023 14:04:53 +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 1qolRk-0007yE-RX; Fri, 06 Oct 2023 14:04: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=K7Nk+i7ni1YWOL4o8gzxbHTCFUC7tVClWTzpppeFuHA=; b=1VW/j6MYebxMQrW5iEwxEkYZT8
	mOle/a8rYRCy9xZ3o+OX8d2iTIGTrA1o/juu2+DbMlJGXm3Wm+KdxqfgQ1oIF5HTT3MoeJu8TEY5h
	9/a6AxnN6lV+yLI96WLQ00tYj1rAp85sYRtubMZFlpEg2j1/c9FZkvwaRdMKL/tGlRi8=;
Message-ID: <4546cecf-46d8-42e8-93e1-c10f43cc879f@xen.org>
Date: Fri, 6 Oct 2023 15:04:51 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v2 1/2] domain: fix misaligned unmap address in
 {,un}map_guest_area()
Content-Language: en-GB
To: Roger Pau Monne <roger.pau@citrix.com>, xen-devel@lists.xenproject.org
Cc: Henry Wang <Henry.Wang@arm.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: <20231006130059.97700-1-roger.pau@citrix.com>
 <20231006130059.97700-2-roger.pau@citrix.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <20231006130059.97700-2-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

Hi Roger,

On 06/10/2023 14:00, Roger Pau Monne wrote:
> unmap_domain_page_global() expects the provided address to be page aligned, or
> else some of the called functions will trigger assertions, like
> modify_xen_mappings() on x86 or destroy_xen_mappings() on Arm.
> 
> The following assert has been reported by osstest arm 32bit tests:
> 
> (XEN) Assertion 'IS_ALIGNED(s, PAGE_SIZE)' failed at arch/arm/mm.c:1243
> (XEN) ----[ Xen-4.18-rc  arm32  debug=y  Not tainted ]----
> (XEN) CPU:    0
> (XEN) PC:     00271a38 destroy_xen_mappings+0x50/0x5c
> [...]
> (XEN) Xen call trace:
> (XEN)    [<00271a38>] destroy_xen_mappings+0x50/0x5c (PC)
> (XEN)    [<00235aa8>] vunmap+0x30/0x1a0 (LR)
> (XEN)    [<0026ad88>] unmap_domain_page_global+0x10/0x20
> (XEN)    [<00208e38>] unmap_guest_area+0x90/0xec
> (XEN)    [<00208f98>] domain_kill+0x104/0x180
> (XEN)    [<00239e3c>] do_domctl+0x8ac/0x14fc
> (XEN)    [<0027ae34>] do_trap_guest_sync+0x570/0x66c
> (XEN)    [<002019f0>] arch/arm/arm32/entry.o#return_from_trap+0/0x4
> 
> Fixes: eadc288cbb0d ('domain: map/unmap GADDR based shared guest areas')
> Signed-off-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 Fri Oct 06 14:08:33 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 14:08:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613675.954371 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qolVD-0003Qi-Nq; Fri, 06 Oct 2023 14:08:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613675.954371; Fri, 06 Oct 2023 14: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 1qolVD-0003Qb-LD; Fri, 06 Oct 2023 14:08:27 +0000
Received: by outflank-mailman (input) for mailman id 613675;
 Fri, 06 Oct 2023 14:08: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=Twl1=FU=citrix.com=prvs=63654eace=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qolVB-0003QV-Iv
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 14:08:25 +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 ce0c90aa-6451-11ee-9b0d-b553b5be7939;
 Fri, 06 Oct 2023 16:08:22 +0200 (CEST)
Received: from mail-bn1nam02lp2049.outbound.protection.outlook.com (HELO
 NAM02-BN1-obe.outbound.protection.outlook.com) ([104.47.51.49])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 06 Oct 2023 10:08:17 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by PH0PR03MB5799.namprd03.prod.outlook.com (2603:10b6:510:34::21)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.37; Fri, 6 Oct
 2023 14:08:15 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::66ca:3a42:baeb:9ecf]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::66ca:3a42:baeb:9ecf%6]) with mapi id 15.20.6838.030; Fri, 6 Oct 2023
 14:08: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: ce0c90aa-6451-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1696601303;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=hLaLOttSCGaxBHvU5ne1YJj5o+FazEShSayYlL63IIY=;
  b=chtu6WZP/61w/UrAYyV8M/a7JdXNAJ4X151r7Puu1q2dzw1Ih3vwnp8L
   xqsHVnHsjXdP6Y0re73ZbAP6HvIH12/faJGnyJKfBhs7HyCnPfzCEiSjH
   a+g7GVv2n9cxNelLN7bI9KvXWuFYI/81dMNQrl3BWY3eIIx+/fRS4h3Wf
   Q=;
X-CSE-ConnectionGUID: 7wOtqKa1ThaNgP9muXAF1w==
X-CSE-MsgGUID: 2DumwwloT+6qGC9SqUeF4Q==
X-IronPort-RemoteIP: 104.47.51.49
X-IronPort-MID: 124088147
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:iZltVqBPX3sTUBVW/+fiw5YqxClBgxIJ4kV8jS/XYbTApGlx0TdUx
 zBOCm6DOf2NYDbwct4gPYTn/UwEu8XcnNNjQQY4rX1jcSlH+JHPbTi7wuUcHAvJd5GeExg3h
 yk6QoOdRCzhZiaE/n9BCpC48D8kk/nOH+KgYAL9EngZbRd+Tys8gg5Ulec8g4p56fC0GArIs
 t7pyyHlEAbNNwVcbCRMsMpvlDs15K6p4WtA4ARnDRx2lAS2e0c9Xcp3yZ6ZdxMUcqEMdsamS
 uDKyq2O/2+x13/B3fv8z94X2mVTKlLjFVDmZkh+AsBOsTAbzsAG6Y4pNeJ0VKtio27hc+ada
 jl6ncfYpQ8BZsUgkQmGOvVSO3kW0aZuoNcrLZUj2CA6IoKvn3bEmp1T4E8K0YIwpflQHXht/
 KUkKDkrYSjSgv+G6ZziVbw57igjBJGD0II3nFhFlWucJ9B/BJfJTuPN+MNS2yo2ioZWB/HCa
 sEFaD1pKhPdfxlIPVRRA5U79AuqriCnL3sE9xTI/OxrsgA/zyQouFTpGMDSddGQA91cg26Tp
 37c/nS/CRYfXDCa4WPfrir81raTwksXXqpIOKC96eFuh2HQmHU8I0wtTGa2j6WA3xvWt9V3b
 hZ8FjAVhbg/8gmnQ8fwWzW8oWWYpVgMVtxICeo45QqRjK3O7G6xJEIJUzpAY9wOr9ItSHoh0
 Vrht8ztLSxitvuSU3313qudqDqpETQWKWIEaj4JSU0O5NyLiKE+iAjeCOlqFqGdh8fwXzr3x
 li3QDMWgrwSiYsB0fy99FWf2Ta0/MCVH0gy+xndWX+j4kVhfom5aoe06F/dq/FdMIKeSVrHt
 38B8ySD0N0z4Vi2vHTlaI0w8HuBvp5p7BW0bYZTIqQc
IronPort-HdrOrdr: A9a23:YXOYkax6W1LPUI8U0aWiKrPw6L1zdoMgy1knxilNoHxuH/Bw9v
 re+cjzsCWftN9/Yh4dcLy7VpVoIkmsl6Kdg7NwAV7KZmCP1FdARLsI0WKI+UyCJ8SRzI9gPa
 cLSdkFNDXzZ2IK8PoTNmODYqodKNrsytHWuQ/HpU0dKT2D88tbnn9E4gDwKDwQeCB2QaAXOb
 C7/cR9qz+paR0sH7+G7ilsZZmkmzXT/qiWGCI7Ow==
X-Talos-CUID: 9a23:owqpBWHTdUJ8/4WHqmI462kIA+MsK0HdxVHfGx69FFZAZuSKHAo=
X-Talos-MUID: =?us-ascii?q?9a23=3AZdY8LQ+U7LKtNvNZ3zXWf2yQf51E/qGxF0QKrdZ?=
 =?us-ascii?q?YouavZBdpBjqz0A3iFw=3D=3D?=
X-IronPort-AV: E=Sophos;i="6.03,204,1694750400"; 
   d="scan'208";a="124088147"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=eDxzHGUIETetSi1FVmaeuPlzepjY+iGfUw6C185mxLZqjKrYYj6t1m3xGxMT21dBrRbagrlZ8NDNln3cQXUJVrKEMIgj+YLkaAblj6OLx5QUKuP3E8yDbZnWRsDTcJ/98YomVLEHGPU0+Bvkj1Cqc0JPTMz68k0OBY/Vohxqd8cq6+Z8vLrSVXISraEyPNcE0x1aGPQZ04jryW0X9RZo+Y1u2sKas7BkDAb2i9yMxHMmVsvzP8GcJyNdWtSqUS6ewCNzj+4MVr33FZs1kf2S1SnPDqT8eCFWPaNibiwgkyalM05l7uoR+RtPemI9cd03rLyNmoZT08FeqLNHzCz9tA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=F+kbasoiMuZuVNyadTFreht3NdfuCowoZRPYdR7aD4A=;
 b=gqg6XeqCg0yJOT+Z6YMChSwEU2qzGWgjlsvWEYz8/I/C21eHaO+Pf3CAdP0s3PKSJTqqApgiE44N9QHr5kI0aSt68hfUw4usuQPFz7dNJ9dQZYIHXsZ27FBL8VyqKeehI+nv3PYIXdJa/FMIeMhJdVwmZLQc905aHkzMiVn6OffKV4FxW/wV55HudxtWPvz9aXUZrEGxmW2N8EEi2F0PTuIYg26HFDEGkqHj0Wj0UZ9KUEKTJhl0KEgi8WpdDJzjnw7nZoNA1BIUca1gUr00CB9/aezYZ3Ako7NRTMGB/j3h1KWLZsKe8wM63ru/xw6SZY2l5ShDQ/7OIHtmabTh7Q==
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=F+kbasoiMuZuVNyadTFreht3NdfuCowoZRPYdR7aD4A=;
 b=Z3nXqCTpmmfdOFiV3scnzZZufVJW/74H/yuN7CNz0Sm4NBhbA4EcPyBJlckNUcSudKiYRBXIY74njF2a8tzZmEl1kRU7dZ17NKh/BNees5yQfnHYWYXzvtGLClmI24kYeM+xuL/BJA46lzY0IZlmpUNuCOQKzDT5L+gFW60x4J4=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Fri, 6 Oct 2023 16:08:10 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: Xen-devel <xen-devel@lists.xenproject.org>,
	Jan Beulich <JBeulich@suse.com>, Wei Liu <wl@xen.org>,
	Tamas K Lengyel <tamas@tklengyel.com>,
	Henry Wang <Henry.Wang@arm.com>
Subject: Re: [PATCH for-4.18] x86/memshr: Fix build in copy_vcpu_settings()
Message-ID: <ZSAUyoq8pbam2nZ-@MacBookPdeRoger>
References: <20231006135745.1038947-1-andrew.cooper3@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <20231006135745.1038947-1-andrew.cooper3@citrix.com>
X-ClientProxiedBy: LO4P123CA0248.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:1a7::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_|PH0PR03MB5799:EE_
X-MS-Office365-Filtering-Correlation-Id: 46c2f289-4992-4d97-d52a-08dbc675aef5
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:
	dgHszvzZXVv29HcHThKjRR0bk6niHGZArmg7Sax1k0Cw/Fu0s2HYYhUyl69YEXn+Dx8HzEiANDx7g+CyttmeQnmTPlIPoEtmk0yebppbLH93x1BCKD0t1LIVBUkLnfsCLlGJmKFdp584nd6FCLAGxWsPtnQ7HJgOhbuo3jx32QCvlpYEvqKIasM7YJPU0RkYHTVcJGm+/WRhxH6N66ZYEtgqWCQAAlQsFmAENvlxeXc/HE0rJ4TI4VjKUtZd4qyzxusfLekexA/0U5dbMqa7WbZXG06fYcmQ3RU9NeYxWod9CqNRhHacgKP1VMTLeaOGsceUOgoZjeu0LQbkb27Vw8dMce2cIqWxQ1ehxMWUM4sBDynnwVV0uZuNRlng4mCLyb9wQ2s3sp4ta7vDJes+TuE3pfgXdcF+P0CNIS+JG0g4u3VWg0Ls45ObT2etQne2HxqKs+/EQ5WNyg1nDeAqmm3tOKV5HAmPlo/p5oFhPpPghY85/mvtOj9IVs09CO310UzTAOQ7yslSxgbttnCboCAVknGlW/C/evAqgZgKb6bXHVPfw7k+jIfgEx4nYCpK
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)(366004)(396003)(39860400002)(376002)(230922051799003)(64100799003)(451199024)(1800799009)(186009)(66476007)(66556008)(6636002)(41300700001)(54906003)(66946007)(9686003)(6512007)(26005)(6666004)(85182001)(6506007)(38100700002)(6486002)(82960400001)(478600001)(86362001)(33716001)(316002)(4744005)(2906002)(4326008)(6862004)(8936002)(8676002)(5660300002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?eTgrNmNKNm81TDd4ZDlzTmpLVklZSnhnTEU3cWVsVGtlY2VWYVg4Z29LbmVs?=
 =?utf-8?B?eW5hWmQyQUNCcGpCZDdsa2hUU0ZYdTIrS0FIVW8xeTZLNVpYeGNzQjVDNE1F?=
 =?utf-8?B?VWFaWjB1Ry9ydW8rSWV6Y2JTREZqZXJCdldFY2JhRHpIQk84Z0Q0dTE1aUZz?=
 =?utf-8?B?WCtkOGtIaDNzUHFtRnhtWGtPS0tsbWdSZUVWRnlvVGZJeU1IcHI3VEpiQjJB?=
 =?utf-8?B?OU1oMEhlb1JXZVE3elFJOHRzOW5COHlySGNPZjR1a2JtRUhJSVoxai8zNm5Y?=
 =?utf-8?B?K283dllNL0lRS25ZQTVxanFEVTYvdEkrb0hJTElxUFVyZTFwcExhajhGSWkx?=
 =?utf-8?B?eFFOSlpURFRDS0dFR2Z6bS9PTGxJVGY5Tm4zbGRWbUR0TXB2ekpaT2lBRzMr?=
 =?utf-8?B?V1NpK25Vc3R5M1U4cUdwd3lPbHZSMUVleE1waTQraUtScFErbjhqSDVPSVJY?=
 =?utf-8?B?WWlqZDExMkM1dWpoZmpYWHUydDl1dXU1c2pkbG82MEExZWUyekw4REdZZGlp?=
 =?utf-8?B?WXlNdTNDSzdkN05QWFd2a2d6YmM4Z2ZiN0h6MDI4dHNOYXg5YlRCK0haUXpk?=
 =?utf-8?B?cWNISDQzNnUvYTRoQk1oQ0ZsR1YyS2wyYlo4b3pXL1B4ZTlsSGMzY29nbkky?=
 =?utf-8?B?SjRvTVFUR2crRnowam54aGZOa3RCaE1mMjR4VzltemxXTkoyR241QkNBUVQz?=
 =?utf-8?B?c2VjTzJkSTlGakk1ZkxiNUJTZDN0TW04TU5IZlE3djhQbHYvL2NnVGtPUXF0?=
 =?utf-8?B?SFRXenpCdjFRYWFBTGRHRHhUS0V4bEg1MDB6KzI1QmhRZHVLQUpWZjd0RGdB?=
 =?utf-8?B?dHZia2JVelBmL241TGVQclVMeEIyTXJpN3V1dG1aMEJOSU0vVHlDU0dJNnhM?=
 =?utf-8?B?RnZ0UndjbHlFV1k0STZYWmF0NXo1VVpYMnJ6d0tvQ0gxYkJBVDVqbTY1YnRj?=
 =?utf-8?B?WlFIbkJITG15eWkzdCtNS1RVTDl4VTRvSlFWRmFtempoM1NxUzQ1eU5Kd0Nm?=
 =?utf-8?B?bmlFN0dzTnVFWHFhS0RyVE9haHBtZEpkeXlYTFpybHdBb2d5cktrUUJCNHJy?=
 =?utf-8?B?WHlCeFhlM3FHWnBEMlhGcVU2b05UakpEZWc1cDl4RUlKNkVzaGxmT1RCM2RL?=
 =?utf-8?B?RHFMbzQxZ1piMXhCNU5LeVBTNjNGMFYveEtWa0pNRDl4Y05hbUVhWkF4K2tk?=
 =?utf-8?B?Nys5TWtQdzNQNHB4SGtSUkt4OTRPcURXbFBqditnMlZYa25keklUanJ0c1RY?=
 =?utf-8?B?ZHQvZ3VINGYzVTdMRllEZFloSzdUSTR0cC9qTkxtUHZuSktvVUhYZG12TlFm?=
 =?utf-8?B?MjIxbHN4eG5sRm1wVXZVcndLdHhDWnBsbjIvWkhra0hxeHFRblFtUlV1Mk1a?=
 =?utf-8?B?M1UzZ0xKeDYrQUxURjlMSVF0cGFlOCtTMWJXdlRGNWpOMUJpSTN4cTVwa0xh?=
 =?utf-8?B?dWNKbFgvNjl3MkJHYTJVLzJlM1gvRDZ4SDFySXMrUDQycCtwU2FMNnVXRExU?=
 =?utf-8?B?L0tmSjhiUktyRDIvVmRtQlNNNm5pdUQ3QW5jaWU2aUkxNDVsTERuQ2lLUTdF?=
 =?utf-8?B?OE5lL200SFU3WFZQNWFSOGV2cXBuT0ZEN2V4VU82eHhDbkdLRXloUlZ0ckVZ?=
 =?utf-8?B?NUpPY3JJVjFDdjFZSDNyL3NQdjVVbUM3UExRb0dzcmlQejEyZlFwQTdqbjlv?=
 =?utf-8?B?OG44ZC9BNVJmVHhJNklzTmJtZDdFeVptUVhpQ1YybElRZFQ5c3JFOGJHeTk3?=
 =?utf-8?B?WWJBNWUvYjdqOUhvNlVuRTZ1S3UrRE42UXE3RFRHczhWVGMwOUJDMk5aUDU2?=
 =?utf-8?B?WVdrdkJ4aU9HRXRyUHRjR252Qyt0Q0NGZUNaVDhjVjBoa1ZYelRtVkUrVHZD?=
 =?utf-8?B?OGZiTWRWWExRMCtqNWo2NTd6RENoekcwTzl2eVVmTDN4ZHBrV2Rhci96U0Y1?=
 =?utf-8?B?Mk1mdk5pUHVtWmRvY3RaUDJEYzVCbTJVUUxmaHk2ZXg1VjdiNVExb1dXcFk5?=
 =?utf-8?B?YytLdmdlUlRrOHRWeVZPVHRPYXpWcE93QWU3OFJKc3l0QWJudEt4UlRyeWg5?=
 =?utf-8?B?M1lwREcxSDZEekNuU0o3VXJsMDJDTU9vdTZZL2dRQjJ0S1JuTVVicGdIMTk2?=
 =?utf-8?B?RkNNdEpuc0hRbTZCU2x4NWxuRUk3cHBkUEV6N0tLS242ajdKV1krOUpqT1Jj?=
 =?utf-8?B?Unc9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	9Tx0wMj28AiQbYmGd0g1/KxC8eLMR1IqPMKyJS4pylbyL7K9sypZlojADySnjt59/ag6WNH1uyxVNoQx88XJAIBPSCwnevJNB9JDgi99ii5+LQ0SPFkuzp3tzBlvPOnPM7MxDmuPg8jb3lU0/Kyt+ODQGrTpFPUgHcFPRiOi72aBTGvKVAHpeQu7ZpYecwQjCDENgMbVb7Pp5ZPcYe9Cb4jmmbvSBmhZyEQ+8BW+chYwk86tRdsqa09b4/XMuvPpNaICaEYBNCXVKjxo76HHV2kew5v5UAnV6evU8g2P80YFFXe+zvKdIQIXUTzhuRFk+wUPZ4vmXr9ONPh/E1Iu25zuFafgNKLL52MgcnZIDLJnnIYS3eltdAaehdaOmuPPz485Em78DBn80FRHhR3ty/fs5DpXgyDHOPk7xKoWPT7X1v3BYRtV4EKx7rzPoVRohrXx4iOdhgtjyRw9afmFAeLUQbo3dYMf81439Co4fp7amxMCTXLy5WE34feQwr3MzeIgbRtuUtOw9itP3QFxhSwYAqNMRpSs8Gj2iD7foB6j/Rrudch52QPF/ZHmjVzX3kRopVPzseqWousCj6SlnxuZtdriKnTuq36JKZoAwC9d4kllpFtgfJ92jl7tBxTlIEUY0HC4vw7EmjKMsZnpqCbnyvEEe0EZYLJWc2gbMxVnUnm5hvUFWyeGfw9grDoHVED4z30D4XrLkGh8pfYt84bJBsiDcX+1VBsiog35hUbk1T0UTHQ+HasCujd5zTjWLzqeJg8HaZI0sPynUAULaebkMW60Enf295j2p2JOVBm7WzaP5aYQw8+w5pckOUqv1kHYjfh20hspRm/21YikupCM2dei/DL72IlxlLzaCti5pdtpTMqdoWLJy9J+XE9g
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 46c2f289-4992-4d97-d52a-08dbc675aef5
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Oct 2023 14:08:15.2930
 (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: HeuStyh6LRgxOLSCKCpplp5qaaywkgNC4vzntu7MCXmy9qPPW/2mpwMFRJPVWa+c0IX3uYN5YAnhjK+5Me6ipA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR03MB5799

On Fri, Oct 06, 2023 at 02:57:45PM +0100, Andrew Cooper wrote:
> The last user of this variable was dropped.
> 
> Fixes: 295514ff7550 ("common: convert vCPU info area registration")
> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>

Reviewed-by: Roger Pau Monné <roger.pau@citrix.com>

Thanks for noticing this.


From xen-devel-bounces@lists.xenproject.org Fri Oct 06 14:35:18 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 14:35:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613683.954380 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qolv1-0002iK-PU; Fri, 06 Oct 2023 14:35:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613683.954380; Fri, 06 Oct 2023 14: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 1qolv1-0002iD-Mx; Fri, 06 Oct 2023 14:35:07 +0000
Received: by outflank-mailman (input) for mailman id 613683;
 Fri, 06 Oct 2023 14:35: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 1qolv0-0002gv-UV
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 14:35: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 1qolv0-0000fQ-78; Fri, 06 Oct 2023 14:35: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 1qoluz-0000p9-S9; Fri, 06 Oct 2023 14:35: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=psRT5MGWcjiU5brtRRgxoh2NT39120iDc48ELCzt/co=; b=HnncgcaW1jYiOZNailnNkkTeKv
	YYNPphRS7dFA+fxA9U2GAItRMTCBg7WJSs1dsP+DbZmSP9dp90vXG7pBVerPMVKhJIMn9M8i1NXd1
	4TZEiic7d23ZOncUIsaEDMTtm9IaHuYKNJeFtFIo8sdBJx29j+0jIWP28vstW9rgcUGU=;
Message-ID: <01fd528d-845d-4342-a17a-e080a921273f@xen.org>
Date: Fri, 6 Oct 2023 15:35:03 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN PATCH][for-4.19 1/9] xen/include: add macro LOWEST_POW2
Content-Language: en-GB
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, Simone Ballarin <simone.ballarin@bugseng.com>,
 Doug Goldstein <cardoe@cardoe.com>, George Dunlap
 <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>
References: <cover.1696514677.git.nicola.vetrini@bugseng.com>
 <d27f52eaaa62ec4ebb9ce8b6cf243779d341367d.1696514677.git.nicola.vetrini@bugseng.com>
 <6102db25-2fd6-49fa-be66-ec2b627b019b@xen.org>
 <0197ecdcc5869dddecc98907f67ba0f1@bugseng.com>
 <63f172c1-bda5-447b-bc8b-90563f3f3c2a@xen.org>
 <4ecd59b63bc5b7b8f4c24672432ba027@bugseng.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <4ecd59b63bc5b7b8f4c24672432ba027@bugseng.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi Nicola,

On 06/10/2023 11:34, Nicola Vetrini wrote:
> On 06/10/2023 12:22, Julien Grall wrote:
>> On 06/10/2023 11:02, Nicola Vetrini wrote:
>>> On 06/10/2023 11:29, Julien Grall wrote:
>>>> Hi,
>>>>
>>>> On 06/10/2023 09:26, Nicola Vetrini wrote:
>>>>> The purpose of this macro is to encapsulate the well-known expression
>>>>> 'x & -x', that in 2's complement architectures on unsigned integers 
>>>>> will
>>>>> give 2^ffs(x), where ffs(x) is the position of the lowest set bit 
>>>>> in x.
>>>>>
>>>>> A deviation for ECLAIR is also introduced.
>>>>
>>>> Can you explain why this is a deviation in ECLAIR rather than one with
>>>> /* SAF-* */ (or whichever name we decide to rename to)? Is this
>>>> because the code is correct from MISRA perspective but the tool is
>>>> confused?
>>>>
>>>
>>> The code does violate Rule 10.1 (a unary minus applied to an unsigned 
>>> value is
>>> deemed inappropriate by MISRA), but rather than changing a whole lot 
>>> of places where this
>>> construct is used (mainly in x86 code), the reasoning is that it 
>>> makes more sense to isolate
>>> it and justify its presence by the fact that on 2's complement 
>>> architectures the result is
>>> indeed correct.
>>
>> This is explaining to me why you are adding LOWEST_POW2(). But this
>> doesn't explain why you are not using /* SAF-* */ on top of
>> LOWEST_POW2().
>>
>> To me, we should only use ECLAIR specific deviation when this is a
>> shortcoming with the tool.
>>
>> Cheers,
> 
> Because of the way ECLAIR deviation comments work implies that in most 
> cases the real
> place where to put the deviation is the usage site
> (the so-called top expansion location of the macro). Now, for 
> widely-used macros this is
> cumbersome and would clutter the code unnecessarily. It's way cleaner 
> imo to have a single
> line in the configuration with a clear justification that is present in 
> the textual output
> of the tool.

Just to clarify, you are saying that the following would not work for 
Eclair:

/* SAF-XXX */
#define LOWEST_POW2()

Instead you would need the following:

void foo()
{
	/* SAF-XXX */
	LOWEST()
}

Am I correct? If so, would something like below (untested) work?

#define LOWEST_POW2(...) ({ \
    /* SAFE-XXX */           \
    ...
    })

> But then there are tool interoperability considerations, that would call 
> for standardized
> deviation mechanisms, if they do detect this as a violation (which I 
> don't know).

I don't think we need to know whether a tool detects it. We only need to 
know whether this is  violation to MISRA. If this is one, then this is a 
call to have a marker in the code.

If this is a false positive, then adding the deviation in the tool 
configuration is best (unless there are multiple tools affected).

> 
> In the end, it could be done with a textual deviation, if that's 
> preferred, but keep in mind
> that those are more fragile w.r.t. code movement.

If the comment is around the macro there are limited chance that this 
will be missed. But if you are worried about code movement, you should 
be worried about macro renaming with your approach (one may not know 
Eclair has a deviation) and/or function with the same name.

I am curious to know what the other thinks.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Fri Oct 06 14:44:37 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 14:44:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613689.954392 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qom49-0006KM-OZ; Fri, 06 Oct 2023 14:44:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613689.954392; Fri, 06 Oct 2023 14:44: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 1qom49-0006KF-Jk; Fri, 06 Oct 2023 14:44:33 +0000
Received: by outflank-mailman (input) for mailman id 613689;
 Fri, 06 Oct 2023 14:44: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=LN/y=FU=citrix.com=prvs=63610b956=Andrew.Cooper3@srs-se1.protection.inumbo.net>)
 id 1qom48-0006K9-Gn
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 14:44:32 +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 d9fcf772-6456-11ee-9b0d-b553b5be7939;
 Fri, 06 Oct 2023 16:44: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: d9fcf772-6456-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1696603469;
  h=from:to:cc:subject:date:message-id:mime-version:
   content-transfer-encoding;
  bh=yNK5TfQTNvUmT9IcZE7wifs6J1Tcp6mxFKGvaGLUBiY=;
  b=BrWq+PcLP1s2g8x5+6MDj8XGfQjUy8xYdkJc9anxnXIuYa8IcTYcyd6t
   V41vVj5i1+dkpnmbQ88TX9MeEt7F0gmccTbms6Iel3wFYe5vfNtyiG5ES
   xaYh3WV/uhbAcaASQlDpw9MpDdvOYklHkN6rqQw2evzXEeFKDvPx1Bw2c
   c=;
X-CSE-ConnectionGUID: OXgx/E9PRjqQzm8apXeeUQ==
X-CSE-MsgGUID: ZGIi8VZtRRGnwBLrU3w6iw==
Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
X-SBRS: 4.0
X-MesageID: 127601295
X-Ironport-Server: esa4.hc3370-68.iphmx.com
X-Remote-IP: 162.221.159.70
X-Policy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:jium6a9ysMeF3dFQdf2oDrUDCH6TJUtcMsCJ2f8bNWPcYEJGY0x3y
 zcdWWqOPKmINGHxKt4kPti1pE4AupbWyNNkSApoqHg8E34SpcT7XtnIdU2Y0wF+jCHgZBk+s
 5hBMImowOQcFCK0SsKFa+C5xZVE/fjVAOK6UKidYnwZqTZMEE8JkQhkl/MynrlmiN24BxLlk
 d7pqojUNUTNNwRcawr40Ird7ks01BjOkGlA5AdnPagV5Aa2e0Q9V/rzG4ngdxMUfaEMdgKKb
 76r5K20+Grf4yAsBruN+losWhRXKlJ6FVHmZkt+A8BOsDAbzsAB+v9T2M4nQVVWk120c+VZk
 72hg3ASpTABZcUgkMxFO/VR/roX0aduoNcrKlDn2SCfItGvn9IBDJyCAWlvVbD09NqbDklpx
 fMIbx1cViqBntukxeKyUtlhi/kaeZyD0IM34hmMzBncBPciB5vCX7/L9ZlT2zJYasJmRKiEI
 ZBDMHw2MUWGPEUn1lQ/UfrSmM+BgHXlfiIeg1WSvactuEDYzRBr0airO93QEjCPbZwPwRjA/
 ziXogwVBDkoG/2emQS37kiWqenQtwfhZdkNSryno6sCbFq7mTVIVUx+uUGAiem0jAuyVsxSL
 2QQ+zEytu4i+UqzVN7/Uhak5nmesXY0WdVKGuk+wAiIw7jT5UCSAW1sZiVIbtU9qMYtRDsCz
 FaRg9TzCDpgsbuYRGic8LjSpjS3UQASKWIBfi4FCwgY+d7ooII0ph3KR9dnVqWyi7XdOTz22
 SHMkyE4iJ0al8tN3KK+lXjlqT+xopnCTiYu+x7aGGmi62tRf5W5boal7Vza6/doL4uDSFSF+
 n8elKC28+QmHZyL0iuXT40lHqyt5vuDGC3RhxhoBZZJyti20yf9J8YKumg4fRo4dJlcEdP0X
 KPNkSRh648UESqSV61uWpC0W80y/aXtKO2wA5g4ceFyjohNmB6vpX8/OxPBjz62ySDAgollZ
 83GLZjE4WIyTPQ/lWXoHY/xxJd2nkgDKXXvqYcXJvhN+YKZYWacT7BNGlaHZeBRAEis+16Nr
 Yg32ydn0XxivAzCjsr/q9R7wagidyRTOHwPg5U/mhS/CgRnAno9LPTa3KksfYdo94wMyLaWo
 yrlCxYAlgau7ZEiFeltQik8AI4DoL4l9S5rVcDSFQnAN4cfjXaHs/5EKspfkUgP/+1/1/9kJ
 8TpiO3Zasmjvg/vomxHBbGk9dAKSfherV7WV8ZTSGRlLsEIqs2g0oOMQzYDAwFVUXrv5ZFm/
 OX7vu4ZKLJaLzlf4A/tQKrH5zuMUbI1wYqeg2OgzgFvRXjR
IronPort-HdrOrdr: A9a23:mjiJXa5PSUMScJb4UQPXwPLXdLJyesId70hD6qkmc20zTiX+rb
 HMoB1773/JYVkqM03I9errBEDiexLhHPxOjrX5Zo3SODUO0VHARL2Ki7GO/9SKIUPDH4BmuZ
 uJ3MJFebvN5fQRt7eZ3OEYeexQpeW6zA==
X-Talos-CUID: 9a23:61HVD26BzgXLMFrfp9ss034bCocII0Xnzm7pMUroAH5ZRbCocArF
X-Talos-MUID: 9a23:XzZkIgSnD7kNfBRzRXTeqxBjZPla/56UJ0YSu7EchpKbay1vbmI=
X-IronPort-AV: E=Sophos;i="6.03,204,1694750400"; 
   d="scan'208";a="127601295"
From: Andrew Cooper <andrew.cooper3@citrix.com>
To: Xen-devel <xen-devel@lists.xenproject.org>
CC: Alejandro Vallejo <alejandro.vallejo@cloud.com>, Julien Grall
	<jgrall@amazon.com>, Andrew Cooper <andrew.cooper3@citrix.com>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>, Shawn Anastasio
	<sanastasio@raptorengineering.com>, Oleksii Kurochko
	<oleksii.kurochko@gmail.com>, Henry Wang <Henry.Wang@arm.com>, George Dunlap
	<George.Dunlap@eu.citrix.com>, Jan Beulich <JBeulich@suse.com>, "Stefano
 Stabellini" <sstabellini@kernel.org>, Wei Liu <wl@xen.org>, Julien Grall
	<julien@xen.org>
Subject: [PATCH for-4.18 v5] xen/pdx: Make CONFIG_PDX_COMPRESSION a common Kconfig option
Date: Fri, 6 Oct 2023 15:44:05 +0100
Message-ID: <20231006144405.1078260-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

From: Alejandro Vallejo <alejandro.vallejo@cloud.com>

Adds a new compile-time flag to allow disabling PDX compression and
compiles out compression-related code/data. It also shorts the pdx<->pfn
conversion macros and creates stubs for masking functions.

While at it, removes the old arch-defined CONFIG_HAS_PDX flag.  Despite the
illusion of choice, it was not optional.

There are ARM and PPC platforms with sparse RAM banks - leave compression
active by default there.  OTOH, there are no known production x86 systems with
sparse RAM banks, so disable compression.  This decision can be revisited if
such a platform comes along.

Signed-off-by: Alejandro Vallejo <alejandro.vallejo@cloud.com>
Reviewed-by: Julien Grall <jgrall@amazon.com>
Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
---
CC: Roger Pau Monné <roger.pau@citrix.com>
CC: Shawn Anastasio <sanastasio@raptorengineering.com>
CC: Oleksii Kurochko <oleksii.kurochko@gmail.com>
CC: Henry Wang <Henry.Wang@arm.com>
CC: George Dunlap <George.Dunlap@eu.citrix.com>
CC: Jan Beulich <JBeulich@suse.com>
CC: Stefano Stabellini <sstabellini@kernel.org>
CC: Wei Liu <wl@xen.org>
CC: Julien Grall <julien@xen.org>

v5:
 * Fix typos
 * Fix what would be a MISRA violation from mismatch paddr_t/unsigned long
 * Rebase over PPC's use of "select HAS_PDX"
 * Rework Kconfig text for non-developers to follow

It is hard to overstate how much of a performace improvement this is on x86.
The compiletime delta is:

  add/remove: 1/24 grow/shrink: 16/401 up/down: 2317/-32367 (-30050)

with 5 memory reads removed from every fastpath involving pagetable
manipulation - which is many.  Prior more-targeted optimisations have netted
gains of 10% by avoiding this pagetable overhead at specific points in the
context switch path.

Oleksii: I've not touched RISCV yet, because I don't know how the platforms
typically look.  I'm happy to default it active in RISCV too if that's the
right thing to do.

But for everyone else, it's probably very worthwhile looking for alternative
options to support multiple RAM banks...
---
 xen/arch/arm/Kconfig  |  1 -
 xen/arch/ppc/Kconfig  |  1 -
 xen/arch/x86/Kconfig  |  1 -
 xen/arch/x86/domain.c | 19 +++++++++++++------
 xen/common/Kconfig    | 18 +++++++++++++++---
 xen/common/Makefile   |  2 +-
 xen/common/pdx.c      | 16 ++++++++++++----
 xen/include/xen/pdx.h | 38 +++++++++++++++++++++++++++++++++++---
 8 files changed, 76 insertions(+), 20 deletions(-)

diff --git a/xen/arch/arm/Kconfig b/xen/arch/arm/Kconfig
index 632dd9792e3c..2939db429b78 100644
--- a/xen/arch/arm/Kconfig
+++ b/xen/arch/arm/Kconfig
@@ -14,7 +14,6 @@ config ARM
 	select HAS_ALTERNATIVE
 	select HAS_DEVICE_TREE
 	select HAS_PASSTHROUGH
-	select HAS_PDX
 	select HAS_PMAP
 	select HAS_UBSAN
 	select IOMMU_FORCE_PT_SHARE
diff --git a/xen/arch/ppc/Kconfig b/xen/arch/ppc/Kconfig
index a6eae597afac..ab116ffb2a70 100644
--- a/xen/arch/ppc/Kconfig
+++ b/xen/arch/ppc/Kconfig
@@ -1,7 +1,6 @@
 config PPC
 	def_bool y
 	select HAS_DEVICE_TREE
-	select HAS_PDX
 
 config PPC64
 	def_bool y
diff --git a/xen/arch/x86/Kconfig b/xen/arch/x86/Kconfig
index 92f3a627da3c..30df085d969e 100644
--- a/xen/arch/x86/Kconfig
+++ b/xen/arch/x86/Kconfig
@@ -24,7 +24,6 @@ config X86
 	select HAS_PASSTHROUGH
 	select HAS_PCI
 	select HAS_PCI_MSI
-	select HAS_PDX
 	select HAS_SCHED_GRANULARITY
 	select HAS_UBSAN
 	select HAS_VPCI if HVM
diff --git a/xen/arch/x86/domain.c b/xen/arch/x86/domain.c
index 8e0af2278104..59a6a2368876 100644
--- a/xen/arch/x86/domain.c
+++ b/xen/arch/x86/domain.c
@@ -458,7 +458,7 @@ void domain_cpu_policy_changed(struct domain *d)
     }
 }
 
-#ifndef CONFIG_BIGMEM
+#if !defined(CONFIG_BIGMEM) && defined(CONFIG_PDX_COMPRESSION)
 /*
  * The hole may be at or above the 44-bit boundary, so we need to determine
  * the total bit count until reaching 32 significant (not squashed out) bits
@@ -485,13 +485,20 @@ static unsigned int __init noinline _domain_struct_bits(void)
 struct domain *alloc_domain_struct(void)
 {
     struct domain *d;
-#ifdef CONFIG_BIGMEM
-    const unsigned int bits = 0;
-#else
+
     /*
-     * We pack the PDX of the domain structure into a 32-bit field within
-     * the page_info structure. Hence the MEMF_bits() restriction.
+     * Without CONFIG_BIGMEM, we pack the PDX of the domain structure into
+     * a 32-bit field within the page_info structure. Hence the MEMF_bits()
+     * restriction. With PDX compression in place the number of bits must
+     * be calculated at runtime, but it's fixed otherwise.
+     *
+     * On systems with CONFIG_BIGMEM there's no packing, and so there's no
+     * such restriction.
      */
+#if defined(CONFIG_BIGMEM) || !defined(CONFIG_PDX_COMPRESSION)
+    const unsigned int bits = IS_ENABLED(CONFIG_BIGMEM) ? 0 :
+                                                          32 + PAGE_SHIFT;
+#else
     static unsigned int __read_mostly bits;
 
     if ( unlikely(!bits) )
diff --git a/xen/common/Kconfig b/xen/common/Kconfig
index 0d248ab94108..4ba9884f52c9 100644
--- a/xen/common/Kconfig
+++ b/xen/common/Kconfig
@@ -23,6 +23,21 @@ config GRANT_TABLE
 
 	  If unsure, say Y.
 
+config PDX_COMPRESSION
+	bool "PDX (Page inDeX) compression" if EXPERT && !X86
+	default ARM || PPC
+	help
+	  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.
+
 config ALTERNATIVE_CALL
 	bool
 
@@ -53,9 +68,6 @@ config HAS_IOPORTS
 config HAS_KEXEC
 	bool
 
-config HAS_PDX
-	bool
-
 config HAS_PMAP
 	bool
 
diff --git a/xen/common/Makefile b/xen/common/Makefile
index e7e96b1087ae..69d6aa626c7f 100644
--- a/xen/common/Makefile
+++ b/xen/common/Makefile
@@ -30,7 +30,7 @@ obj-y += multicall.o
 obj-y += notifier.o
 obj-$(CONFIG_NUMA) += numa.o
 obj-y += page_alloc.o
-obj-$(CONFIG_HAS_PDX) += pdx.o
+obj-y += pdx.o
 obj-$(CONFIG_PERF_COUNTERS) += perfc.o
 obj-bin-$(CONFIG_HAS_PMAP) += pmap.init.o
 obj-y += preempt.o
diff --git a/xen/common/pdx.c b/xen/common/pdx.c
index d3d38965bde9..d3d63b075032 100644
--- a/xen/common/pdx.c
+++ b/xen/common/pdx.c
@@ -31,11 +31,16 @@ unsigned long __read_mostly pdx_group_valid[BITS_TO_LONGS(
 
 bool __mfn_valid(unsigned long mfn)
 {
-    if ( unlikely(evaluate_nospec(mfn >= max_page)) )
+    bool invalid = mfn >= max_page;
+
+#ifdef CONFIG_PDX_COMPRESSION
+    invalid |= mfn & pfn_hole_mask;
+#endif
+
+    if ( unlikely(evaluate_nospec(invalid)) )
         return false;
-    return likely(!(mfn & pfn_hole_mask)) &&
-           likely(test_bit(pfn_to_pdx(mfn) / PDX_GROUP_COUNT,
-                           pdx_group_valid));
+
+    return test_bit(pfn_to_pdx(mfn) / PDX_GROUP_COUNT, pdx_group_valid);
 }
 
 void set_pdx_range(unsigned long smfn, unsigned long emfn)
@@ -49,6 +54,8 @@ void set_pdx_range(unsigned long smfn, unsigned long emfn)
         __set_bit(idx, pdx_group_valid);
 }
 
+#ifdef CONFIG_PDX_COMPRESSION
+
 /*
  * Diagram to make sense of the following variables. The masks and shifts
  * are done on mfn values in order to convert to/from pdx:
@@ -176,6 +183,7 @@ void __init pfn_pdx_hole_setup(unsigned long mask)
     ma_top_mask         = pfn_top_mask << PAGE_SHIFT;
 }
 
+#endif /* CONFIG_PDX_COMPRESSION */
 
 /*
  * Local variables:
diff --git a/xen/include/xen/pdx.h b/xen/include/xen/pdx.h
index f3fbc4273aa4..bd535009ea8f 100644
--- a/xen/include/xen/pdx.h
+++ b/xen/include/xen/pdx.h
@@ -67,8 +67,6 @@
  * region involved.
  */
 
-#ifdef CONFIG_HAS_PDX
-
 extern unsigned long max_pdx;
 
 #define PDX_GROUP_COUNT ((1 << PDX_GROUP_SHIFT) / \
@@ -100,6 +98,8 @@ bool __mfn_valid(unsigned long mfn);
 #define mfn_to_pdx(mfn) pfn_to_pdx(mfn_x(mfn))
 #define pdx_to_mfn(pdx) _mfn(pdx_to_pfn(pdx))
 
+#ifdef CONFIG_PDX_COMPRESSION
+
 extern unsigned long pfn_pdx_bottom_mask, ma_va_bottom_mask;
 extern unsigned int pfn_pdx_hole_shift;
 extern unsigned long pfn_hole_mask;
@@ -206,7 +206,39 @@ static inline paddr_t directmapoff_to_maddr(unsigned long offset)
  */
 void pfn_pdx_hole_setup(unsigned long mask);
 
-#endif /* HAS_PDX */
+#else /* !CONFIG_PDX_COMPRESSION */
+
+/* Without PDX compression we can skip some computations */
+
+/* pdx<->pfn == identity */
+#define pdx_to_pfn(x) (x)
+#define pfn_to_pdx(x) (x)
+
+/* directmap is indexed by by maddr */
+#define maddr_to_directmapoff(x) (x)
+#define directmapoff_to_maddr(x) (x)
+
+static inline bool pdx_is_region_compressible(paddr_t base,
+                                              unsigned long npages)
+{
+    return true;
+}
+
+static inline uint64_t pdx_init_mask(uint64_t base_addr)
+{
+    return 0;
+}
+
+static inline uint64_t pdx_region_mask(uint64_t base, uint64_t len)
+{
+    return 0;
+}
+
+static inline void pfn_pdx_hole_setup(unsigned long mask)
+{
+}
+
+#endif /* CONFIG_PDX_COMPRESSION */
 #endif /* __XEN_PDX_H__ */
 
 /*

base-commit: 295514ff7550626de4fb5e43b51deb25d9331cd5
prerequisite-patch-id: a3880342434550d7612ebc2e760dcd098dabd1d9
-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Fri Oct 06 14:47:21 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 14:47:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613696.954401 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qom6o-0006zB-83; Fri, 06 Oct 2023 14:47:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613696.954401; Fri, 06 Oct 2023 14:47: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 1qom6o-0006z4-4q; Fri, 06 Oct 2023 14:47:18 +0000
Received: by outflank-mailman (input) for mailman id 613696;
 Fri, 06 Oct 2023 14:47: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 1qom6n-0006yy-4l
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 14:47: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 1qom6m-00013x-CR; Fri, 06 Oct 2023 14:47: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 1qom6m-0001PW-1K; Fri, 06 Oct 2023 14:47: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=If8ts4yvvvKAzDAFscbrbwQzTB34Z5aNiinlYdvvOt8=; b=pingBYDInbrLz0isfFIuXiv0hp
	YWfsYCrOTunVXwUpkeMxRBvfNLzBn2KiLoR51oID4TOUUxUZFceDzomrx5YeVIK42jogI19B3msLO
	Ce53MjfvNWmBufzNhM7d9pz5gAIGcU3Sqsrg5iky8TeqIybDwypz3trsiTKC3sEHwH+g=;
Message-ID: <354c6138-509e-4106-9a27-3c75c85b85e5@xen.org>
Date: Fri, 6 Oct 2023 15:47:13 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN PATCH][for-4.19 8/9] xen/types: address Rule 10.1 for
 DECLARE_BITMAP use
Content-Language: en-GB
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, Paul Durrant <paul@xen.org>,
 George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>
References: <cover.1696514677.git.nicola.vetrini@bugseng.com>
 <9642dcb4ab51ec9eaeedf16056fbcd946a3efbea.1696514677.git.nicola.vetrini@bugseng.com>
 <80101145-1958-457a-8c80-cae816ae74aa@xen.org>
 <4b144869407871011c538af48b311c31@bugseng.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <4b144869407871011c538af48b311c31@bugseng.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

Hi Nicola,

On 06/10/2023 11:10, Nicola Vetrini wrote:
> On 06/10/2023 11:34, Julien Grall wrote:
>> Hi Nicola,
>>
>> On 06/10/2023 09:26, 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
>>> in macro 'BITS_TO_LONGS'.
>>>
>>> A comment in BITS_TO_LONGS is added to make it clear that
>>> values passed are meant to be positive.
>>
>> I am confused. If the value is meant to be positive. Then...
>>
>>>
>>> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
>>> ---
>>>   xen/include/xen/iommu.h | 2 +-
>>>   xen/include/xen/types.h | 1 +
>>>   2 files changed, 2 insertions(+), 1 deletion(-)
>>>
>>> diff --git a/xen/include/xen/iommu.h b/xen/include/xen/iommu.h
>>> index 0e747b0bbc1c..34aa0b9b5b81 100644
>>> --- a/xen/include/xen/iommu.h
>>> +++ b/xen/include/xen/iommu.h
>>> @@ -360,7 +360,7 @@ struct domain_iommu {
>>>   #endif
>>>         /* Features supported by the IOMMU */
>>> -    DECLARE_BITMAP(features, IOMMU_FEAT_count);
>>> +    DECLARE_BITMAP(features, (int)IOMMU_FEAT_count);
>>
>> ... why do we cast to (int) rather than (unsigned int)? Also, I think
>> this cast deserve a comment on top because this is not a very obvious
>> one.
>>
>>>         /* Does the guest share HAP mapping with the IOMMU? */
>>>       bool hap_pt_share;
>>> diff --git a/xen/include/xen/types.h b/xen/include/xen/types.h
>>> index aea259db1ef2..936e83d333a0 100644
>>> --- a/xen/include/xen/types.h
>>> +++ b/xen/include/xen/types.h
>>> @@ -22,6 +22,7 @@ typedef signed long ssize_t;
>>>     typedef __PTRDIFF_TYPE__ ptrdiff_t;
>>>   +/* Users of this macro are expected to pass a positive value */
>>>   #define BITS_TO_LONGS(bits) \
>>>       (((bits)+BITS_PER_LONG-1)/BITS_PER_LONG)
>>>   #define DECLARE_BITMAP(name,bits) \
>>
>> Cheers,
> 
> See [1] for the reason why I did so. I should have mentioned that in the 
> commit notes, sorry.
> In short, making BITS_TO_LONGS essentially unsigned would cause a 
> cascade of build errors and
> possibly other essential type violations.
Can you share some of the errors?

> If this is to be fixed that 
> way, the effort required
> is far greater. Either way, a comment on top of can be added, along the 
> lines of:
> 
> Leaving this as an enum would violate MISRA C:2012 Rule 10.1

I read this as you are simply trying to silence your tool. I think this 
the wrong approach as you are now making the code confusing for the 
reader (you pass a signed int to a function that is supposed to take a 
positive number).

I appreciate that this will result to more violations at the beginning. 
But the whole point of MISRA is to make the code better.

If this is too complex to solve now, then a possible option is to 
deviate for the time being.

Cheers,

> 
> [1] 
> https://lore.kernel.org/xen-devel/6495ba58bda01eae1f4baa46096424eb@bugseng.com/
> 

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Fri Oct 06 14:47:24 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 14:47:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613697.954411 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qom6u-0007GI-FO; Fri, 06 Oct 2023 14:47:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613697.954411; Fri, 06 Oct 2023 14:47: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 1qom6u-0007GB-CV; Fri, 06 Oct 2023 14:47:24 +0000
Received: by outflank-mailman (input) for mailman id 613697;
 Fri, 06 Oct 2023 14:47: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=vVKM=FU=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qom6t-0007Fj-70
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 14:47:23 +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 40e8ef0c-6457-11ee-9b0d-b553b5be7939;
 Fri, 06 Oct 2023 16:47:21 +0200 (CEST)
Received: by mail-wr1-x430.google.com with SMTP id
 ffacd0b85a97d-32483535e51so2143140f8f.0
 for <xen-devel@lists.xenproject.org>; Fri, 06 Oct 2023 07:47:21 -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
 p4-20020a5d68c4000000b003232f167df5sm1804792wrw.108.2023.10.06.07.47.19
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Fri, 06 Oct 2023 07:47: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: 40e8ef0c-6457-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1696603640; x=1697208440; darn=lists.xenproject.org;
        h=content-transfer-encoding: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=ZRhZ8QIDYu+uiryCIrqpTBp6AefhqnKPf4DAl6e8Fos=;
        b=EBaYW4cRWRaJQO2FHj7Uv6/deuP26zTOQEyN4Z5JzqB+0E4bFoY0kAFvRXh5KmjwdM
         X3ebLjJB9mE7AMHI2IXampcZwMSdqGw97J55N+Ntxh8lYn6PD9kA/sDDK3IZSpCEtDCh
         9iWanWsYpz7ufke+VkdyNzCbMPMvQSPNH6WbY=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1696603640; x=1697208440;
        h=content-transfer-encoding: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=ZRhZ8QIDYu+uiryCIrqpTBp6AefhqnKPf4DAl6e8Fos=;
        b=i3B5qaxh1gnHw4LxBe7OKU78dxKoB/wv1XmPJcklzvqduznyQL2XoO2942CfXvQh73
         F+4Wo6WWHX0i9ryrE7TwdhEgMIDdRInJNTEWON/f1E0J3jPIZLThi6b/wWIS+uRNAj9q
         ZF6aCmnmdgL/m+JN2/HmUWoFJodWWHzIWS7v/3mi80iPD0ZPCyMl27tgs1+qOuQvanAK
         dk3ylJKgjREub7nEDHEOZHdvB+xO4QMOf986TwZXG+cSP05lgPabQt6rclrTZk0+jOso
         wUPRGVBE7hXcqBMnY4/wZBlDL2niqzOuoqIEn//Q5bLr8emRsmHVcifDAB6Eqzbs2ENE
         LWsg==
X-Gm-Message-State: AOJu0Yydx8DF7o6wYvSaafb2dwrm6EwFiqHxLPYO1Fafg8J5k2uJtJ8Y
	DXSh54v/xHVBWq/pb3Krz2x1SQ==
X-Google-Smtp-Source: AGHT+IE4K7289JiD8t9Hs1l5W4xp607JhyFtI+oBadTNEQd2Z/R1yBaVkTpZHAt6eabIdEMSRCLWqg==
X-Received: by 2002:a5d:6642:0:b0:31f:f2d4:a71a with SMTP id f2-20020a5d6642000000b0031ff2d4a71amr7360883wrw.8.1696603640396;
        Fri, 06 Oct 2023 07:47:20 -0700 (PDT)
Message-ID: <70a6e559-f43f-4b2f-a3f6-79b3065b6b65@citrix.com>
Date: Fri, 6 Oct 2023 15:47:19 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH v2 2/2] domain: expose newly introduced hypercalls as
 XENFEAT
Content-Language: en-GB
To: =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>
Cc: xen-devel@lists.xenproject.org, Henry Wang <Henry.Wang@arm.com>,
 Community Manager <community.manager@xenproject.org>,
 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: <20231006130059.97700-1-roger.pau@citrix.com>
 <20231006130059.97700-3-roger.pau@citrix.com>
 <e45d0273-834b-4d7f-b158-29341845d3be@citrix.com>
 <ZSAJewLiAgcDrzc8@MacBookPdeRoger>
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: <ZSAJewLiAgcDrzc8@MacBookPdeRoger>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 06/10/2023 2:19 pm, Roger Pau Monné wrote:
> On Fri, Oct 06, 2023 at 02:05:18PM +0100, Andrew Cooper wrote:
>> On 06/10/2023 2:00 pm, Roger Pau Monne wrote:
>>> diff --git a/xen/include/public/features.h b/xen/include/public/features.h
>>> index d2a9175aae67..22713a51b520 100644
>>> --- a/xen/include/public/features.h
>>> +++ b/xen/include/public/features.h
>>> @@ -111,6 +111,15 @@
>>>  #define XENFEAT_not_direct_mapped         16
>>>  #define XENFEAT_direct_mapped             17
>>>  
>>> +/*
>>> + * Signal whether the domain is permitted to use the following hypercalls:
>>> + *
>>> + * VCPUOP_register_runstate_phys_area
>>> + * VCPUOP_register_vcpu_time_phys_area
>>> + */
>>> +#define XENFEAT_runstate_phys_area	  18
>>> +#define XENFEAT_vcpu_time_phys_area	  19
>>> +
>>>  #define XENFEAT_NR_SUBMAPS 1
>>>  
>>>  #endif /* __XEN_PUBLIC_FEATURES_H__ */
>>> diff --git a/xen/include/public/vcpu.h b/xen/include/public/vcpu.h
>>> index 8fb0bd1b6c03..03b031a3e557 100644
>>> --- a/xen/include/public/vcpu.h
>>> +++ b/xen/include/public/vcpu.h
>>> @@ -236,6 +236,9 @@ DEFINE_XEN_GUEST_HANDLE(vcpu_register_time_memory_area_t);
>>>   * 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.
>>> + *
>>> + * XENFEAT_{runstate,vcpu_time}_phys_area feature bits signal if the domain is
>>> + * permitted the usage of the hypercalls.
>>>   */
>>>  #define VCPUOP_register_runstate_phys_area      14
>>>  #define VCPUOP_register_vcpu_time_phys_area     15
>> For both of these, I'd suggest s/permitted/able/.  For older versions of
>> Xen which don't advertise the XENFEAT, it's a matter of capability, not
>> permission.
>>
>> Otherwise, Reviewed-by: Andrew Cooper <andrew.cooper3@citrix.com> and
>> I'm happy to adjust on commit to save sending out a v3.
> TBH I've used permitted because that's the wording you used in your
> reply to v1, I'm perfectly fine with switching to able.
>
> https://lore.kernel.org/xen-devel/ac4842a9-7f62-4c64-9a3a-2ec2b1e97699@citrix.com/

Yeah, sorry.  I didn't think fully before making the suggestion.

I was mainly looking to avoid saying "what the hypervisor is capable of" :)

~Andrew


From xen-devel-bounces@lists.xenproject.org Fri Oct 06 14:52:05 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 14:52:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613704.954421 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qomBN-0000Z3-0f; Fri, 06 Oct 2023 14:52:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613704.954421; Fri, 06 Oct 2023 14:52: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 1qomBM-0000Yw-U8; Fri, 06 Oct 2023 14:52:00 +0000
Received: by outflank-mailman (input) for mailman id 613704;
 Fri, 06 Oct 2023 14:51: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=Twl1=FU=citrix.com=prvs=63654eace=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qomBK-0000Y4-VV
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 14:51:59 +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 e499e78b-6457-11ee-98d3-6d05b1d4d9a1;
 Fri, 06 Oct 2023 16:51:56 +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;
 06 Oct 2023 10:51:53 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by CH3PR03MB7343.namprd03.prod.outlook.com (2603:10b6:610:19e::5)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.37; Fri, 6 Oct
 2023 14:51:49 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::66ca:3a42:baeb:9ecf]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::66ca:3a42:baeb:9ecf%6]) with mapi id 15.20.6838.030; Fri, 6 Oct 2023
 14:51: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: e499e78b-6457-11ee-98d3-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1696603916;
  h=from:to:cc:subject:date:message-id:
   content-transfer-encoding:mime-version;
  bh=1vko/4xx0yxaNwNK+5LTWXnm3f+gh5vMcGKvvtElVRY=;
  b=TxWmMlo8NI1MazHVlqODPFHLr7k5TbErrxqH5c0xhB4F2u9vP0lb9myZ
   +Hn7IJMeJxjXtNMqo+JqXxN1A83eiuxVdtsMn1IGYQBbuK5EZasyoVUWZ
   l+h+e6DX+260XLDBonuzw2i++RqKakvHQEcfNZhPu3kc8mManF/0OeUSB
   Y=;
X-CSE-ConnectionGUID: FHRUL8jnRQy6fDcKc8vKjQ==
X-CSE-MsgGUID: 5QIwnenDTTenro3/yofWaw==
X-IronPort-RemoteIP: 104.47.55.168
X-IronPort-MID: 124701934
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:0w/IvK41H/DSrFAPm+oMFQxRtPvGchMFZxGqfqrLsTDasY5as4F+v
 jRMD26BM/aJMWqmf9F2a4rnpksF7cCDzNJgQAdlpH1gHi5G8cbLO4+Ufxz6V8+wwm8vb2o8t
 plDNYOQRCwQZiWBzvt4GuG59RGQ7YnRG/ykTraCY3gtLeNdYH9JoQp5nOIkiZJfj9G8Agec0
 fv/uMSaM1K+s9JOGjt8B5mr9lU355wehBtC5gZlPKgT4geH/5UoJMl3yZ+ZfiOQrrZ8RoZWd
 86bpJml82XQ+QsaC9/Nut4XpWVTH9Y+lSDX4pZnc/DKbipq/0Te4Y5iXBYoUm9Fii3hojxE4
 I4lWapc6+seFvakdOw1C3G0GszlVEFM0OevzXOX6aR/w6BaGpdFLjoH4EweZOUlFuhL7W5m2
 9wiFRRdbBa5vvPozp6waeI8mOchFZy+VG8fkikIITDxK98DGMqGaYOaoNhS0XE3m9xEGuvYa
 4wBcz1zYR/cYhpJfFAKFJY5m+TujX76G9FagAvN+exrvC6OkUoojuiF3Nn9I7RmQe1PmUmVv
 CTe9nnRCRAGLt2PjzGC9xpAg8eWx3+kANtDT+HQGvhC3WSy2WoeDjEqaVa9u/7izV+5Ve1WN
 BlBksYphe1onKCxdfHtUhv9rHOasxo0X9tLD/Z8+AyL0rDT4QuSGi4DVDEpQPwrstUnAwMj0
 FChlsnsQzdotdW9QnWY86qSrC+jfy0cK2YNaDUsXQYD+8Pkoow4klTIVNkLOLGxps34H3f32
 T/ikcQlr7AajMpO3aPr+1nC2miovsKQEF5z4RjLVGW46A8/fJSie4Gj9Vnc67BHMZqdSV6C+
 nMDnqBy8dwzMH1ErwTVKM1lIV1jz6/t3OH06bK3I6Qcyg==
IronPort-HdrOrdr: A9a23:aSY8paBmajtQThXlHemi55DYdb4zR+YMi2TDtnocdfUxSKelfq
 +V88jzuSWbtN9yYhEdcKG7WZVoKEm0nfQZ3WB7B8bAYOCJghrMEKhSqafk3j38C2nf24dmpM
 NdmnFFeb/NMWQ=
X-Talos-CUID: =?us-ascii?q?9a23=3AR5moVmj27eHYj1osKKhj4VVyIzJuXF3n8VOAIUm?=
 =?us-ascii?q?CMHc3RpGealTA5oBmqp87?=
X-Talos-MUID: =?us-ascii?q?9a23=3A7boHhg8uAGvhJp5Jx13BmDKQf5pRwruoBUYhrak?=
 =?us-ascii?q?LvdODbmthPDmihSviFw=3D=3D?=
X-IronPort-AV: E=Sophos;i="6.03,204,1694750400"; 
   d="scan'208";a="124701934"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ly7x+ga73p2NocDOgDhQ5jomCf4kratyMG0bgz9lzFQabv8WB4n0h2o56IpW/z2bzVSqxQTegp+gCdJrTkESyvQUerGYS5EEgpDoBazVMsW+Gxrl0emd/2MOCtPL72EJkY+mfOuDPfLxyYAPievhPg07iPxskU5ZjXFr54PkTKcw2m8CnyrFqm4phD0tMzdtUo+fYX2EMz3jkxzZZwqKLhPyBrUWNcyKELQvUC2rWJo7sqWJNaadFwUmPC5ww11mn62nTBOJAI0GsChNPK7PJJ1rn74xGH4Ff8jLT6yu+a4pnPOIpvVUNi0RfNDESVscbyU6/DiI/PHTRmxdPv8fzw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=gnj1Ab8dn8NDQ8jLFdQwRkAZP8ogg9fDaL/cApnkaWM=;
 b=DkVaCI0r0l76O9LQNiITv9IYJ1Gau+S3RySRuqq6mM9zyLlzsfQp1dXWnLIb6mHwL+fPsQpYsMykVVj/r1Jk7GG949KKLIjjGLQRKdjbSiJ0WWPM2kxwzI8Di3XHyYcaBAKvFiZWLW3K8LsS1Uw5QsAacFlVNIdST1y9nRtzfDkTUB0EmYxY03aDSCczwJg61fNSfFm2q0W+DrPL4xCkXsZKIelPtBVDG20PA2wThKdVCbfnsCw/ipnGQhQGLCWtTRPG6xM2K4Z17ovNmzmnV4DZxmrfTJXDQLKal+VJW3YMLp12UXEpyGe1TUrbURtzy9DwdT8fNw5FuPoYd5Ku/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=gnj1Ab8dn8NDQ8jLFdQwRkAZP8ogg9fDaL/cApnkaWM=;
 b=nCUHa4/UtMVa3iS3+hrEMb3j1nIQbSp+cToNfepSeqWUnrGq8Teg33EkdFKJRO/a0RDsxgEUGgYKJtxIiysuJTy9BFJ9kOkBEjbudRzo36fKiWZfsCtxwyGdjmbqJesI5sbZlDg6JwSXn9mHpmcS1NQ9OVxunItAruWPMGNf6Zw=
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: Henry Wang <Henry.Wang@arm.com>,
	Roger Pau Monne <roger.pau@citrix.com>,
	Community Manager <community.manager@xenproject.org>,
	Wei Liu <wl@xen.org>,
	Anthony PERARD <anthony.perard@citrix.com>
Subject: [PATCH] tools/xenpvboot: remove as unable to convert to Python 3
Date: Fri,  6 Oct 2023 16:50:46 +0200
Message-ID: <20231006145046.98450-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: LO6P123CA0037.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:2fe::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_|CH3PR03MB7343:EE_
X-MS-Office365-Filtering-Correlation-Id: 4e3e944e-002d-4699-7c33-08dbc67bc4c5
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:
	EKrMF6v4cnFDLwl35bh09ZnrdtEhzblRgN01aBJaLtCKWUilOVISjMYAg+5ehJUILPeHou7aFFtwlTkaptU45k1LsvsqRJtpsIlulhQpAbxg7t7Ypjfuj4HtnoVmU0gn1UO5c/5wj/xHVkwjGJP1lH3zVDzrTEqpSUDiZHfcnjtH2IcMjijmk+4LlVRv6VazT5/EPAL+zP678mZDYcg7dx8ZEGOdRdhOwdr7dWAkJcW2Eb8rfHCqdBQqnUct7HN4aoAIwghtD1SZfXEui5RFdXgJbGA3gfT2vWnH56hlPp/RxtUaml8z7KtHDZocKq25Ew95RjrhBYeW35cXaTiJLnUm63+B1xwCOvoheH42J4dYNult015muz6cZL2C0nofwjpJ0hhXAmJkjBZ46cv5GFmyYPLp7LCZ/tvfVVV97BbqcvuTGcugp2QNtsC5tfSAGhSF9pmNlwybULKBU7QTGZ+B7v7Lbm31wTTZNZfnwHXZSA0Tn2XcDWDtdI62cZW/hKZ9W5VCUQ7SWXBq5tKyoPyyeTZtWHyUuWRSj5/HRIBW7UKCe8Xm3ewu92/6VGML+52vU2P1iqehiuNH83n711mQm4hOJeg2ksL3/PHsc1w=
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)(376002)(136003)(396003)(366004)(39860400002)(230922051799003)(1800799009)(451199024)(186009)(64100799003)(4001150100001)(5660300002)(8676002)(4326008)(8936002)(30864003)(2906002)(2616005)(66946007)(316002)(41300700001)(6916009)(66476007)(54906003)(66556008)(6666004)(1076003)(26005)(6506007)(36756003)(107886003)(6512007)(82960400001)(966005)(83380400001)(6486002)(86362001)(478600001)(38100700002)(2004002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?MjVwbzF1L3EzSjM4YlJTTXI3cGZUc2VmeXUyWDBIWGlyeU5PcEtLVW4vUmpS?=
 =?utf-8?B?M0JQNVBObk5nc1VoTzV4a0pEdDh1aTZPMjNnWTZKS0RqVkpWcEUvQ0ZDNHND?=
 =?utf-8?B?RjEvUWF1dFJxczVOQklxOTB4ZnNpaXM1aTNtNXd5QTltVTZqQXVUcEl2M1Zh?=
 =?utf-8?B?R2ZMZnMxQjFHVGcrdGdaMTZiWS8yOU5kVVJncXlCNCtqWXFKWkxoSXdhT3o4?=
 =?utf-8?B?aUJkaUlPOEx1b1lud0NrMzdFUTFHb0tINmdGSXVnN1h2U0tTaWlPRFpMVFVV?=
 =?utf-8?B?d0pmMk0va0FYMWorcjMxVkJScUVZSWdwWVZLdnludWtlSmZxRHBjaFJVV3dK?=
 =?utf-8?B?SFZVdEk1VUhuSW0rWm9pUHFLbDUxOGtjTEI3a3V6WUE2dkovVXd0a2lYcmRH?=
 =?utf-8?B?dVZjUm9mbFhveGxVek5IbXF3dHF1alVZZXR0bjZPT1lFemRiU1hQUG9RMWtL?=
 =?utf-8?B?UVFwT0kwWTQxakwvRnNwWjZLQm80dUxubTlQdkFlNVlreWhxVkhXRU9FbHlq?=
 =?utf-8?B?bUxwcEJxb3Q4UzBVT3E4cktSWWpNR2d1UmVrNGhaWmlxTHlWZWJJZ3hJbG9y?=
 =?utf-8?B?NStCVVN2SnNVRFlZdUh5UXBPdE94U2RuVmdTRUJvUjZyL1ZjeVlab0xCT2pN?=
 =?utf-8?B?bUw2UHEvbFA5NDZMUzlmakhMcU90UVNyZlpvMVd0T2FPcjRCTFpiWjJJUXFP?=
 =?utf-8?B?bG1YRHpXTFZHTEZUS2hPdk9WTUxJQ0lsYUYyUlRhVFhZdFJGVFBpTG82ODhQ?=
 =?utf-8?B?d3hCNXF4TjNkZ25Ua29kbC84WC9TYXJEODFRMUNXdE5nMGdKblJNeVVFejhs?=
 =?utf-8?B?MU5WWWNSeXhEeXhOZlBFdXR2ZWZCWHdEblNTR2VTQTlyeDRWeWxEcnNycElp?=
 =?utf-8?B?a2pWclZXc0p1OU5RQldXNEc1cEtFbE5CbmQyVTBJVWErdmRXSlJGcVZUTHBy?=
 =?utf-8?B?M0J5NG8zWHFjWkZ5NTBPUjhXT1ExYVpJd0lCdFFFNjM2L3pydHEzVUovWTE5?=
 =?utf-8?B?SlRlczg5TWpETm40TC96UHBNNC80cTBSMlRpSmFlNWVVaEVKS2ZCQXR2TUNC?=
 =?utf-8?B?SmM1eFBZelVBZ3RyWTlqTytYNExEWHZWbWV6TGluQW9sRnQwM2JQNkVOV3BZ?=
 =?utf-8?B?ZjNFdzM2aFpvOUEzTGt0aVV3MDZXS1JBaUE4emFKV2UySkMybVZkUVdoTnhI?=
 =?utf-8?B?bVNBTUl1RGlZblN3di9TbFFBWHBOWG13TG1HYjloSUdhYnBuODNHQkFLek91?=
 =?utf-8?B?RWtnWVNEaEZoZUJSbVBObUpNN1Bud1VxTmRVczJDUGxEd2svTFFzR0JSeEdS?=
 =?utf-8?B?UWNUN0xlb0VOZzU0WFRFMTBMcHo2UVVEa1pZNzluWTNrdmV1cHRyUmd4L1h0?=
 =?utf-8?B?c2tUT2hkL2hnTDVGd2xZMzF4RjAxTVZjbDJ6a1lRQzBXSzZ2Nk83ZzhHMW9I?=
 =?utf-8?B?Y0Y5N3RheWZEYjM5R2thM09zWURyc0pYY3JxOHVZUHk0ZjB4ZDFVRG1KUC95?=
 =?utf-8?B?Q1NpdEtVZHBKaTFybkVqajIrYlVCWi9EWHNScDhuN2NaRXJPY3lhV25GaHUz?=
 =?utf-8?B?RWpKVHNieVVUOWZ0clppSlljNVNCUm5OOGJNTXgycWl6QkFEWEpOUG1iVTk5?=
 =?utf-8?B?WG5yL3NDTzViVi9GTWt3c3gxN3FlQk56amRQbHcybnhVcUJmV1RKOVBSRWRy?=
 =?utf-8?B?TWZZZEpqa3cybm05M2c0dis0UGRGNk91dFVHTGoySWh4bFR0ejNBMHFLNldz?=
 =?utf-8?B?b0NKTllyM3Rmak0xNXQveFV3UFBTckM5aWtTbHhTN2ZxQkkzK05sVUhXODMw?=
 =?utf-8?B?OEZYNjdoc1hkdDBSWWY4M05OcG5OdFJHczZVckgxL1BIQk5pK3NQY3d2cUk2?=
 =?utf-8?B?aHk1RTdLYWZ3Q094SmhWWnhmZXFFa01lM0tTWVEva1ZWdWZwSWxNblRUVDNB?=
 =?utf-8?B?R21vZGJRWEFlaXRYaGlROFppWVpQSHQ2R1JpTTljd2U3OFMxMDZHNTU0Nis5?=
 =?utf-8?B?SGRBdGpnLzBGRCtYY1dDbWF1SmZxVWZlRkJ6MzExaC92bm1qanpHMG1OYS9n?=
 =?utf-8?B?WjZRWHBianFaT0V2U0t3a0I0WC9FMklWVFB2UlJxakx2VlhlUHB4d250K0li?=
 =?utf-8?B?VTVCU0crQndadVpZNWlOODhNb3FiQ3ZBQ1RsblhFMkJhQ2trNGpuY0pZakd0?=
 =?utf-8?B?aFE9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	CVBNTwRNWLBPm9BJ37qYCrUhiSerzWOgrgeD6n6yLgjLDa8po16+vGMtiqwGb4BJHUK0m48kUX8EXIqihW+AOvuh6ENiil/zwcDxCQbdA7Fwczt4zXwW0XHt6toAuBitoSOpuXm3gUNMcr7P6PIi3vMjQM/wOQQ4pa1fPaThObC7gn3OO/pZTGsOOHCAYQgarUb7oB/lmC1U6yRJidrAbIdClvPDU+ny0QgXNpwpiXt48cN96WKU/QLSi8GYvS4SILlZBepLJihIVOSBgRtGfNh9cQSL8ffSEDsig0K64nehnTmMpBPzJgWpo7BvcHhcFcUjcaUlSpfmoP1D5GPkposx9MaYhQCJnyx8Sa9r6/dKuZQX4PnvagP9HCO5kSiJz6rw2GKCNYHv6xSuOfkGFfvdjrIxuwQzjirCR6/O9xSXmf3zgsAotD4pDT3geFSU4FWCYaJEHYrDhjpCkNYCa3HarjuA8gMZlomRLDoycxs27OCCUODpBv3ptbuzMcU6GhRD8Qk4Uw9RTzIGc4BGFhPn/8BYfPdREHf5qnrI+zf1Pqsx0ncQoK56R2PddNGURPF+9WqsxaYvYdNqDTvwL8b7os7tq3QZccvxycS5xkw56NgJV6x07eUuAzVT/FQYVQw/iRB6oU4j6AjTXdigRuOKdhI1TBmaKHrq/7wxBFGwlAOU7SzSwtNKvS7QHLOetOQA1hLBMFbWtcOfWyg8k3Tn70xo9M/KWH7VaqOyhEHnUzUxkXzSTJvIYJUzn/PVU8CixXljaB05mTGYk8r7UowlsR7OI5ZqG976TWUUGULCvnygMwsXK1uI8ZSnfG40sIG+PVFdl4d3UYDMRjchyTZaeGv8uz/ou1Ma3BBL+Ww=
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 4e3e944e-002d-4699-7c33-08dbc67bc4c5
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Oct 2023 14:51:48.9323
 (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: Fkk285VZRvX3/p/nmy1rLXecBuNR2J/EkCG4vlWWgMhDXUgeffugUSBTDh39git2H5SuaR0lA3xnyBOmgFoWKg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH3PR03MB7343

The script heavily relies on the urlgrabber python module, which doesn't seem
to be packaged by all distros, it's missing from newer Debian versions at
least.

Also the usage of the commands module has been deprecated since Python 2.6, and
removed in Python 3, so the code would need to be re-written to not rely on
urlgrabber and the commands modules.

Arguably the purpose of the xenpvnetboot bootloader can also be achieved with
an isolated script that fetches the kernel and ramdisk before attempting to
launch the domain, without having to run in libxl context.  There are no xl.cfg
options consumed by the bootloader apart from the base location and the
subpaths of the kernel and ramdisk to fetch.

Any interested parties in keeping such functionality are free to submit an
updated script that works with Python 3.

Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
---
 CHANGELOG.md            |   1 +
 tools/misc/Makefile     |   7 +-
 tools/misc/xenpvnetboot | 291 ----------------------------------------
 3 files changed, 2 insertions(+), 297 deletions(-)
 delete mode 100755 tools/misc/xenpvnetboot

diff --git a/CHANGELOG.md b/CHANGELOG.md
index 47ea9e275462..165c5caf9bea 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -38,6 +38,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
  - On x86, the "pku" command line option has been removed.  It has never
    behaved precisely as described, and was redundant with the unsupported
    "cpuid=no-pku".  Visibility of PKU to guests should be via its vm.cfg file.
+ - xenpvnetboot removed as unable to convert to Python 3.
 
 ## [4.17.0](https://xenbits.xen.org/gitweb/?p=xen.git;a=shortlog;h=RELEASE-4.17.0) - 2022-12-12
 
diff --git a/tools/misc/Makefile b/tools/misc/Makefile
index 233a7948c050..9938bc235968 100644
--- a/tools/misc/Makefile
+++ b/tools/misc/Makefile
@@ -36,11 +36,8 @@ INSTALL_SBIN                   += xen-livepatch
 INSTALL_SBIN                   += xen-diag
 INSTALL_SBIN += $(INSTALL_SBIN-y)
 
-# Everything to be installed in a private bin/
-INSTALL_PRIVBIN                += xenpvnetboot
-
 # Everything to be installed
-TARGETS_ALL := $(INSTALL_BIN) $(INSTALL_SBIN) $(INSTALL_PRIVBIN)
+TARGETS_ALL := $(INSTALL_BIN) $(INSTALL_SBIN)
 
 # Everything which only needs copying to install
 TARGETS_COPY += xencov_split
@@ -59,11 +56,9 @@ install: all
 	$(INSTALL_DIR) $(DESTDIR)$(LIBEXEC_BIN)
 	$(INSTALL_PYTHON_PROG) $(INSTALL_BIN) $(DESTDIR)$(bindir)
 	$(INSTALL_PYTHON_PROG) $(INSTALL_SBIN) $(DESTDIR)$(sbindir)
-	$(INSTALL_PYTHON_PROG) $(INSTALL_PRIVBIN) $(DESTDIR)$(LIBEXEC_BIN)
 
 .PHONY: uninstall
 uninstall:
-	rm -f $(addprefix $(DESTDIR)$(LIBEXEC_BIN)/, $(INSTALL_PRIVBIN))
 	rm -f $(addprefix $(DESTDIR)$(sbindir)/, $(INSTALL_SBIN))
 	rm -f $(addprefix $(DESTDIR)$(bindir)/, $(INSTALL_BIN))
 
diff --git a/tools/misc/xenpvnetboot b/tools/misc/xenpvnetboot
deleted file mode 100755
index be972b9e19b7..000000000000
--- a/tools/misc/xenpvnetboot
+++ /dev/null
@@ -1,291 +0,0 @@
-#!/usr/bin/env python
-#
-# Copyright (C) 2010 Oracle. All rights reserved.
-#
-# This program is free software; you can redistribute it and/or modify it under
-# the terms of the GNU General Public License as published by the Free Software
-# Foundation, version 2.  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 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/>.
-
-import sys
-import os
-import stat
-import time
-import string
-import random
-import tempfile
-import commands
-import subprocess
-import urlgrabber
-from optparse import OptionParser
-
-
-XEN_PATHS = [
-    ('images/xen/vmlinuz', 'images/xen/initrd.img'), # Fedora <= 10 and OL = 5
-    ('boot/i386/vmlinuz-xen', 'boot/i386/initrd-xen'), # openSUSE >= 10.2 and SLES >= 10
-    ('boot/x86_64/vmlinuz-xen', 'boot/x86_64/initrd-xen'), # openSUSE >= 10.2 and SLES >= 10
-    ('current/images/netboot/xen/vmlinuz', 'current/images/netboot/xen/initrd.gz'), # Debian
-    ('images/pxeboot/vmlinuz', 'images/pxeboot/initrd.img'), # Fedora >=10 and OL >= 6
-    ('isolinux/vmlinuz', 'isolinux/initrd.img'), # Fedora >= 10 and OL >= 6
-]
-
-
-def format_sxp(kernel, ramdisk, args):
-    s = 'linux (kernel %s)' % kernel
-    if ramdisk:
-        s += '(ramdisk %s)' % ramdisk
-    if args:
-        s += '(args "%s")' % args
-    return s
-
-
-def format_simple(kernel, ramdisk, args, sep):
-    s = ('kernel %s' % kernel) + sep
-    if ramdisk:
-        s += ('ramdisk %s' % ramdisk) + sep
-    if args:
-        s += ('args %s' % args) + sep
-    s += sep
-    return s
-
-
-def mount(dev, path, option=''):
-    if os.uname()[0] == 'SunOS':
-        mountcmd = '/usr/sbin/mount'
-    else:
-        mountcmd = '/bin/mount'
-    cmd = ' '.join([mountcmd, option, dev, path])
-    (status, output) = commands.getstatusoutput(cmd)
-    if status != 0:
-        raise RuntimeError('Command: (%s) failed: (%s) %s' % (cmd, status, output))
-
-
-def umount(path):
-    if os.uname()[0] == 'SunOS':
-        cmd = ['/usr/sbin/umount', path]
-    else:
-        cmd = ['/bin/umount', path]
-    subprocess.call(cmd)
-
-
-class Fetcher:
-    def __init__(self, location, tmpdir):
-        self.location = location
-        self.tmpdir = tmpdir
-        self.srcdir = location
-
-    def prepare(self):
-        if not os.path.exists(self.tmpdir):
-            os.makedirs(self.tmpdir, 0750)
-
-    def cleanup(self):
-        pass
-
-    def get_file(self, filename):
-        url = os.path.join(self.srcdir, filename)
-        suffix = ''.join(random.sample(string.ascii_letters, 6))
-        local_name = os.path.join(self.tmpdir, 'xenpvboot.%s.%s' % (os.path.basename(filename), suffix))
-        try:
-            return urlgrabber.urlgrab(url, local_name, copy_local=1)
-        except Exception, err:
-            raise RuntimeError('Cannot get file %s: %s' % (url, err))
-
-
-class MountedFetcher(Fetcher):
-    def prepare(self):
-        Fetcher.prepare(self)
-        self.srcdir = tempfile.mkdtemp(prefix='xenpvboot.', dir=self.tmpdir)
-        if self.location.startswith('nfs:'):
-            mount(self.location[4:], self.srcdir, '-o ro')
-        else:
-            if stat.S_ISBLK(os.stat(self.location)[stat.ST_MODE]):
-                option = '-o ro'
-            else:
-                option = '-o ro,loop'
-            if os.uname()[0] == 'SunOS':
-                option += ' -F hsfs'
-            mount(self.location, self.srcdir, option)
-
-    def cleanup(self):
-        umount(self.srcdir)
-        try:
-            os.rmdir(self.srcdir)
-        except:
-            pass
-
-
-class NFSISOFetcher(MountedFetcher):
-    def __init__(self, location, tmpdir):
-        self.nfsdir = None
-        MountedFetcher.__init__(self, location, tmpdir)
-
-    def prepare(self):
-        Fetcher.prepare(self)
-        self.nfsdir = tempfile.mkdtemp(prefix='xenpvboot.', dir=self.tmpdir)
-        self.srcdir = tempfile.mkdtemp(prefix='xenpvboot.', dir=self.tmpdir)
-        nfs = os.path.dirname(self.location[8:])
-        iso = os.path.basename(self.location[8:])
-        mount(nfs, self.nfsdir, '-o ro')
-        option = '-o ro,loop'
-        if os.uname()[0] == 'SunOS':
-            option += ' -F hsfs'
-        mount(os.path.join(self.nfsdir, iso), self.srcdir, option)
-
-    def cleanup(self):
-        MountedFetcher.cleanup(self)
-        time.sleep(1)
-        umount(self.nfsdir)
-        try:
-            os.rmdir(self.nfsdir)
-        except:
-            pass
-
-
-class TFTPFetcher(Fetcher):
-    def get_file(self, filename):
-        if '/' in self.location[7:]:
-            host = self.location[7:].split('/', 1)[0].replace(':', ' ')
-            basedir = self.location[7:].split('/', 1)[1]
-        else:
-            host = self.location[7:].replace(':', ' ')
-            basedir = ''
-        suffix = ''.join(random.sample(string.ascii_letters, 6))
-        local_name = os.path.join(self.tmpdir, 'xenpvboot.%s.%s' % (os.path.basename(filename), suffix))
-        cmd = '/usr/bin/tftp %s -c get %s %s' % (host, os.path.join(basedir, filename), local_name)
-        (status, output) = commands.getstatusoutput(cmd)
-        if status != 0:
-            raise RuntimeError('Command: (%s) failed: (%s) %s' % (cmd, status, output))
-        return local_name
-
-
-def main():
-    usage = '''%prog [option]
-
-Get boot images from the given location and prepare for Xen to use.
-
-Supported locations:
-
- - http://host/path
- - https://host/path
- - ftp://host/path
- - file:///path
- - tftp://host/path
- - nfs:host:/path
- - /path
- - /path/file.iso
- - /path/filesystem.img
- - /dev/sda1
- - nfs+iso:host:/path/file.iso
- - nfs+iso:host:/path/filesystem.img'''
-    version = '%prog version 0.1'
-    parser = OptionParser(usage=usage, version=version)
-    parser.add_option('', '--location',
-                      help='The base url for kernel and ramdisk files.')
-    parser.add_option('', '--kernel',
-                      help='The kernel image file.')
-    parser.add_option('', '--ramdisk',
-                      help='The initial ramdisk file.')
-    parser.add_option('', '--args',
-                      help='Arguments pass to the kernel.')
-    parser.add_option('', '--output',
-                      help='Redirect output to this file instead of stdout.')
-    parser.add_option('', '--output-directory', default='/var/run/libxl',
-                      help='Output directory.')
-    parser.add_option('', '--output-format', default='sxp',
-                      help='Output format: sxp, simple or simple0.')
-    parser.add_option('-q', '--quiet', action='store_true',
-                      help='Be quiet.')
-    (opts, args) = parser.parse_args()
-
-    if not opts.location and not opts.kernel and not opts.ramdisk:
-        if not opts.quiet:
-            print >> sys.stderr, 'You should at least specify a location or kernel/ramdisk.'
-            parser.print_help(sys.stderr)
-        sys.exit(1)
-
-    if not opts.output or opts.output == '-':
-        fd = sys.stdout.fileno()
-    else:
-        fd = os.open(opts.output, os.O_WRONLY)
-
-    if opts.location:
-        location = opts.location
-    else:
-        location = ''
-    if (location == ''
-        or location.startswith('http://') or location.startswith('https://')
-        or location.startswith('ftp://') or location.startswith('file://')
-        or (os.path.exists(location) and os.path.isdir(location))):
-        fetcher = Fetcher(location, opts.output_directory)
-    elif location.startswith('nfs:') or (os.path.exists(location) and not os.path.isdir(location)):
-        fetcher = MountedFetcher(location, opts.output_directory)
-    elif location.startswith('nfs+iso:'):
-        fetcher = NFSISOFetcher(location, opts.output_directory)
-    elif location.startswith('tftp://'):
-        fetcher = TFTPFetcher(location, opts.output_directory)
-    else:
-        if not opts.quiet:
-            print >> sys.stderr, 'Unsupported location: %s' % location
-        sys.exit(1)
-
-    try:
-        fetcher.prepare()
-    except Exception, err:
-        if not opts.quiet:
-            print >> sys.stderr, str(err)
-        fetcher.cleanup()
-        sys.exit(1)
-
-    try:
-        kernel = None
-        if opts.kernel:
-            kernel = fetcher.get_file(opts.kernel)
-        else:
-            for (kernel_path, _) in XEN_PATHS:
-                try:
-                    kernel = fetcher.get_file(kernel_path)
-                except Exception, err:
-                    if not opts.quiet:
-                        print >> sys.stderr, str(err)
-                    continue
-                break
-
-        if not kernel:
-            if not opts.quiet:
-                print >> sys.stderr, 'Cannot get kernel from loacation: %s' % location
-            sys.exit(1)
-
-        ramdisk = None
-        if opts.ramdisk:
-            ramdisk = fetcher.get_file(opts.ramdisk)
-        else:
-            for (_, ramdisk_path) in XEN_PATHS:
-                try:
-                    ramdisk = fetcher.get_file(ramdisk_path)
-                except Exception, err:
-                    if not opts.quiet:
-                        print >> sys.stderr, str(err)
-                    continue
-                break
-    finally:
-        fetcher.cleanup()
-
-    if opts.output_format == 'sxp':
-        output = format_sxp(kernel, ramdisk, opts.args)
-    elif opts.output_format == 'simple':
-        output = format_simple(kernel, ramdisk, opts.args, '\n')
-    elif opts.output_format == 'simple0':
-        output = format_simple(kernel, ramdisk, opts.args, '\0')
-    else:
-        print >> sys.stderr, 'Unknown output format: %s' % opts.output_format
-        sys.exit(1)
-
-    sys.stdout.flush()
-    os.write(fd, output)
-
-
-if __name__ == '__main__':
-    main()
-- 
2.42.0



From xen-devel-bounces@lists.xenproject.org Fri Oct 06 14:55:37 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 14:55:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613710.954431 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qomEi-0001jN-Jq; Fri, 06 Oct 2023 14:55:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613710.954431; Fri, 06 Oct 2023 14:55: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 1qomEi-0001jG-Ge; Fri, 06 Oct 2023 14:55:28 +0000
Received: by outflank-mailman (input) for mailman id 613710;
 Fri, 06 Oct 2023 14:55: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=vVKM=FU=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qomEh-0001jA-7r
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 14:55:27 +0000
Received: from mail-wr1-x42b.google.com (mail-wr1-x42b.google.com
 [2a00:1450:4864:20::42b])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 60698cb6-6458-11ee-9b0d-b553b5be7939;
 Fri, 06 Oct 2023 16:55:23 +0200 (CEST)
Received: by mail-wr1-x42b.google.com with SMTP id
 ffacd0b85a97d-3248aa5cf4eso2139145f8f.1
 for <xen-devel@lists.xenproject.org>; Fri, 06 Oct 2023 07:55: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
 v15-20020a5d4b0f000000b00325aca09ad1sm1850482wrq.24.2023.10.06.07.55.22
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Fri, 06 Oct 2023 07:55: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: 60698cb6-6458-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1696604123; x=1697208923; 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=5Hdz5cBp+GdEkXOTTbyvBK0CsaIL7wqslRbMKsfY5bM=;
        b=Z6HiMiQVioRDPRLuNp3pr7R5Z2MtRowb1UOucfSf1wZxfJDVrVN/P/EPsgBA797nqf
         NV78J9wRVwTOAOUGDkt1OgH5CvuP8eFc3Ad3rtsH2TXySPXER3ZH3CDt1A4lv65z2nnB
         b5J4w5NMESM3lj7cjwLRh9B6l/RV9uyxAJOss=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1696604123; x=1697208923;
        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=5Hdz5cBp+GdEkXOTTbyvBK0CsaIL7wqslRbMKsfY5bM=;
        b=wK0zEFd8sT8s1bMtj5Ybvfpo2NywJzGhbCknpkf1INIi5WoKra9Y1MUYcTFGyUt07D
         7PtBJcEcjr4sz6+qD9LwGFjSAUaP5vXxYl6Gcxf16mnWRX122JKfWJ5ObCdusoqt8me6
         OekIQdC0qhqFnAw0QLw26WViExRMolKaTKm2nUW/kMWguBWwMRmfLjxxIIfSSl6mlHyv
         7CbqD8Pp9QayM+UIQMYQtsqRt0sQnDYiNkviXbl9lwjJF1lYdBzcfzzAd0FpTRAW/HKb
         0Rcxj5ShLS9fJnHu/txiUeawskHTTn2Qz0bgncjuKqM+S34LCCJKST93L5DRNIbtgxZs
         KyBw==
X-Gm-Message-State: AOJu0YxyXZ6Pede8uBC92u0SPEi2huDBnpJa65pr2XNvOSmknDxir3aP
	QSESMdQP6Tl5PQNFz9HvFNLQTA==
X-Google-Smtp-Source: AGHT+IH0pfuqEH5hXDRZ4RVl6pEe3l4VLvXITIXi6UMRjaH+dWP30YcmrGnaPkD2L7Y+E1zfDEBwdA==
X-Received: by 2002:a5d:63cb:0:b0:321:5d9f:2d9f with SMTP id c11-20020a5d63cb000000b003215d9f2d9fmr7715083wrw.47.1696604122862;
        Fri, 06 Oct 2023 07:55:22 -0700 (PDT)
Message-ID: <6c7661a7-316d-4551-9a1f-d832f80c55ab@citrix.com>
Date: Fri, 6 Oct 2023 15:55:22 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH] tools/xenpvboot: remove as unable to convert to Python 3
Content-Language: en-GB
To: Roger Pau Monne <roger.pau@citrix.com>, xen-devel@lists.xenproject.org
Cc: Henry Wang <Henry.Wang@arm.com>,
 Community Manager <community.manager@xenproject.org>, Wei Liu <wl@xen.org>,
 Anthony PERARD <anthony.perard@citrix.com>,
 =?UTF-8?Q?Marek_Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>
References: <20231006145046.98450-1-roger.pau@citrix.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: <20231006145046.98450-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 06/10/2023 3:50 pm, Roger Pau Monne wrote:
> The script heavily relies on the urlgrabber python module, which doesn't seem
> to be packaged by all distros, it's missing from newer Debian versions at
> least.
>
> Also the usage of the commands module has been deprecated since Python 2.6, and
> removed in Python 3, so the code would need to be re-written to not rely on
> urlgrabber and the commands modules.
>
> Arguably the purpose of the xenpvnetboot bootloader can also be achieved with
> an isolated script that fetches the kernel and ramdisk before attempting to
> launch the domain, without having to run in libxl context.  There are no xl.cfg
> options consumed by the bootloader apart from the base location and the
> subpaths of the kernel and ramdisk to fetch.
>
> Any interested parties in keeping such functionality are free to submit an
> updated script that works with Python 3.

Resolves: xen-project/xen#172

> Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>

Reviewed-by: Andrew Cooper <andrew.cooper3@citrix.com>

Thanks for doing this.

~Andrew


From xen-devel-bounces@lists.xenproject.org Fri Oct 06 14:57:40 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 14:57:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613713.954440 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qomGi-0002pE-Uz; Fri, 06 Oct 2023 14:57:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613713.954440; Fri, 06 Oct 2023 14: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 1qomGi-0002p7-SI; Fri, 06 Oct 2023 14:57:32 +0000
Received: by outflank-mailman (input) for mailman id 613713;
 Fri, 06 Oct 2023 14:57: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=I3TD=FU=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qomGh-0002nk-US
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 14:57:31 +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 abac25ec-6458-11ee-98d3-6d05b1d4d9a1;
 Fri, 06 Oct 2023 16:57:29 +0200 (CEST)
Received: from AM5PR1001CA0024.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:206:2::37)
 by DB9PR08MB6377.eurprd08.prod.outlook.com (2603:10a6:10:259::8) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.35; Fri, 6 Oct
 2023 14:57:27 +0000
Received: from AM7EUR03FT016.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:206:2:cafe::39) by AM5PR1001CA0024.outlook.office365.com
 (2603:10a6:206:2::37) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.37 via Frontend
 Transport; Fri, 6 Oct 2023 14:57:25 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM7EUR03FT016.mail.protection.outlook.com (100.127.140.106) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6863.26 via Frontend Transport; Fri, 6 Oct 2023 14:57:25 +0000
Received: ("Tessian outbound fb5c0777b309:v211");
 Fri, 06 Oct 2023 14:57:25 +0000
Received: from f73fa1a4af4c.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 704D2128-838F-4A54-BAFA-E9B567116645.1; 
 Fri, 06 Oct 2023 14:57:18 +0000
Received: from EUR01-HE1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id f73fa1a4af4c.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Fri, 06 Oct 2023 14:57:18 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by DB9PR08MB6442.eurprd08.prod.outlook.com (2603:10a6:10:259::9) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.31; Fri, 6 Oct
 2023 14:57:15 +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.033; Fri, 6 Oct 2023
 14:57: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: abac25ec-6458-11ee-98d3-6d05b1d4d9a1
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=kRt0gxeNiKlYBfOjGCHbGIkRam60tGaeGXPUfV2ErnU=;
 b=eH7FKVSZr9FQV5A6GfRyhV/t6dTxrx8Fo3Trg6r5Z3p+Nhtql64CG5t8L6Ha5wUihaUWGOmhG7r80/5AH8R9UqmECQHgFsCxYw3f5BwWRPa8M43mLE44ldNajh/d8pr0pfnaWVGV16EQ+khpCwodZpNK8EbF74nroPZ8gefnvtY=
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: 4e7b589237b5f9c8
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=YxkylTd4BXGdNf82pUJCtWJ26DLIeUs68lH32LOPXrNhOrdknptDN0E3wFBtXJyXRUMpbpgLcwnKqfXOHhv/1qn9RAWJqRihVVzaLVGppp7a1GfK5P5NzFiiBzco9hSN4PmFn7kiAGHVOldjaeItY2rnecWSVyitSbr5g5NR6YKRW900G3cw6azvtERVOLtRUQyLIX2CyKrySQMZkXeGJMZ0YNuE8e+Xn0Zs5wJr9321fkf3CZqJEHwsSiKF+kssOc2j+/C8akjh9XXTN4sUHdHlomKbWUKWsIKEECBg/WMeeQrF5nA+gf/XKuJHbqOqKJ+wuyEJ3EveRcIiouRO+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=kRt0gxeNiKlYBfOjGCHbGIkRam60tGaeGXPUfV2ErnU=;
 b=TaJKr53KvLKS03gpbgaa8g2hS8L3e91Kzz+PKgTgFYdVcSIut48XuoY0VwBEa1lg0FAyEn49/Idk2TIsS1FiNupU1OVD/BIPDvhgoaLkU6jbzhWCW4hkO2wHyJytxQzu+B9tCaA7KsTVtTIKFS9CUPoepW/uIUmVXoRQseJmIPu2EUKl5aCdbG5PZ2YlnVAUuywEn847I5azaY9YxH5drWWcqih1y9e+y+KpCzpE4ue7TfMVQTQSVYyonHqDlQ/qt2bPuLgAk9Kom5wUSQMs7UVKuTdcNHs/FGMuDh61ibehkCqkdFQR7IgYVO3iF3xovuD52CqbNTLGMvUvi9yKTw==
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=kRt0gxeNiKlYBfOjGCHbGIkRam60tGaeGXPUfV2ErnU=;
 b=eH7FKVSZr9FQV5A6GfRyhV/t6dTxrx8Fo3Trg6r5Z3p+Nhtql64CG5t8L6Ha5wUihaUWGOmhG7r80/5AH8R9UqmECQHgFsCxYw3f5BwWRPa8M43mLE44ldNajh/d8pr0pfnaWVGV16EQ+khpCwodZpNK8EbF74nroPZ8gefnvtY=
From: Henry Wang <Henry.Wang@arm.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>
CC: Roger Pau Monne <roger.pau@citrix.com>, Xen-devel
	<xen-devel@lists.xenproject.org>, Community Manager
	<community.manager@xenproject.org>, Wei Liu <wl@xen.org>, Anthony PERARD
	<anthony.perard@citrix.com>, =?utf-8?B?TWFyZWsgTWFyY3p5a293c2tpLUfDs3JlY2tp?=
	<marmarek@invisiblethingslab.com>
Subject: Re: [PATCH] tools/xenpvboot: remove as unable to convert to Python 3
Thread-Topic: [PATCH] tools/xenpvboot: remove as unable to convert to Python 3
Thread-Index: AQHZ+GSuiyqA87xC/k2xl+J2CZcV8bA82XkAgAAAdwA=
Date: Fri, 6 Oct 2023 14:57:12 +0000
Message-ID: <3CA70B97-8C94-4B00-B0E8-DDD7B112C2E7@arm.com>
References: <20231006145046.98450-1-roger.pau@citrix.com>
 <6c7661a7-316d-4551-9a1f-d832f80c55ab@citrix.com>
In-Reply-To: <6c7661a7-316d-4551-9a1f-d832f80c55ab@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_|DB9PR08MB6442:EE_|AM7EUR03FT016:EE_|DB9PR08MB6377:EE_
X-MS-Office365-Filtering-Correlation-Id: fcc3fb52-af22-41fb-74dc-08dbc67c8d5f
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:
 6fMjAnvElt/Ls7tkdt/xzJiZp0RwB0Emb8/kvsdVtQt77OnT3VgSCUU+2e/FDfoy3qLhJYGks4SPLZp1iBQ0oJ4FWJ81Va1bshfChBhq96xCwB2FLXEHrttbX7H5YiKpsf1SeK2TEGcXzIOd7+qUYBEJq0jeiNX0L1s4q/040KlK86mU0AZ9IZe+wn7kvjsuwDmF0ZP7Cze0AUri+aBJBaeHE1NgAOaOxWEv+0Ji1t7KOOMD8jebjqWViUIRxLRBqM0wO5kYCBjRj6glLBginUphfX/CZ/c8aaGFHBNVK7ViDWlndH+y/kdb/1Mee+F0EQJ7dUuS2g0fIVi6vfwoiqou4QWeQm3atAQ5yYHbxFW2mzevxuwdG6Ph5+h5EMvI+fKuVcV+KKIsUkVSqvyh0VM3YUIDvecn6oJCka5mYPxp+OXY1OZJ5RvXi6BEhrExgCBBWHpjdUFaxIua/HfuMUnyZyxgJwzfsUkZCYAlwk2yBSaW5UVe4uqYAGoCG+ayjpQo35eGWkN0p67UOkmSvNA44RPvvLQdcvt1PLCqRMu9BH0YZ5uILSR3QYhvQSEKarVsE6IcUZkHWjCp0vjqsTHaFcI/haNaI8G4EsiEZOjaOUpxAq6q16eVBwTwwP2Dwt2hmd8z2zOmh/Dz2PFI7w==
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)(396003)(39860400002)(346002)(136003)(230922051799003)(451199024)(64100799003)(186009)(1800799009)(478600001)(53546011)(2616005)(6506007)(6512007)(6666004)(33656002)(122000001)(38100700002)(86362001)(38070700005)(36756003)(66556008)(26005)(2906002)(66946007)(71200400001)(6486002)(83380400001)(8676002)(4326008)(8936002)(41300700001)(66476007)(316002)(54906003)(5660300002)(64756008)(91956017)(6916009)(66446008)(76116006)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <B88919AAA0800A4DA3CED0F91FA94730@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR08MB6442
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:
 AM7EUR03FT016.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	9cfc24ea-fca8-4e49-dd19-08dbc67c85cf
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	6HcESemTk75tp0UVI9a5S7Gy08o9oP8in3UJ4efRg+BPtkXR26/rTnILJ8jvvkMlLhM0nrQTVolqOXZAOFbg6goofxWAOKDciHrvHBVLO3hm42Gw8kQqmxDwl92PuRKirTJHm+CMiByb4mxhTgdvtrydqdlP0ve9rMl41wzvHO7O5J8PPtkiUS0BBxGxn+mH7yfHfXEonb/m47BcC4GtEjin2m96gBjbQP7/jmKedOqIvsYRVuP44hQ41XI+XjSGr1SlgHxbdqfKeqB3tTB1QF0y1bwBtzLjGbpbhnDb7kCNyS30jYrJnEXpeEynOERrwv3/Sfh+mknEN7Zhtg0m9ZTKJMa18xeghb97becfp9UE7+Jev33UwRm2eFu5LDoT8at3O8RgKeLZAcVD97P+Ip23hPkmTrh4HGQMPNbrWY8leBSkhmQ8/+cM3R1lOpffcRks1tYb7sgHsm4q2+nogDRsTU3ImaHtfp5a7FX8mE6i1hBnT64Ja1Nhm6mlby7S4Jd+SF4QcfDL6IO7GXOxsvtHoLaJ/AusrKdI0NqQftZE/FqPW9tZh8w5lKAOg34Hzkpg6VgNAccUNBs7sT2wxxBqqm13fK1Z0MsCTmNcF65XsVxE8p7wE1tERDRrQt5l1VJf/APdbehuJvDHcm1JvnU2/3y8ZbMoupecmldeUaYenyacWexwhmRViF4HEs0QGHDc6ppVf1l5ZrxX4jaks2hFqGe4Ig8G2pTKbbA9OJPfsaxCL09LqKersp19rLPU
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)(230922051799003)(82310400011)(64100799003)(186009)(451199024)(1800799009)(36840700001)(40470700004)(46966006)(26005)(40460700003)(316002)(36860700001)(36756003)(6862004)(86362001)(33656002)(47076005)(8936002)(82740400003)(6506007)(53546011)(83380400001)(2616005)(107886003)(6666004)(336012)(356005)(4326008)(81166007)(6512007)(8676002)(40480700001)(5660300002)(478600001)(2906002)(6486002)(70206006)(70586007)(54906003)(41300700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Oct 2023 14:57:25.2519
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: fcc3fb52-af22-41fb-74dc-08dbc67c8d5f
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:
	AM7EUR03FT016.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR08MB6377

SGksDQoNCj4gT24gT2N0IDYsIDIwMjMsIGF0IDIyOjU1LCBBbmRyZXcgQ29vcGVyIDxhbmRyZXcu
Y29vcGVyM0BjaXRyaXguY29tPiB3cm90ZToNCj4gDQo+IE9uIDA2LzEwLzIwMjMgMzo1MCBwbSwg
Um9nZXIgUGF1IE1vbm5lIHdyb3RlOg0KPj4gVGhlIHNjcmlwdCBoZWF2aWx5IHJlbGllcyBvbiB0
aGUgdXJsZ3JhYmJlciBweXRob24gbW9kdWxlLCB3aGljaCBkb2Vzbid0IHNlZW0NCj4+IHRvIGJl
IHBhY2thZ2VkIGJ5IGFsbCBkaXN0cm9zLCBpdCdzIG1pc3NpbmcgZnJvbSBuZXdlciBEZWJpYW4g
dmVyc2lvbnMgYXQNCj4+IGxlYXN0Lg0KPj4gDQo+PiBBbHNvIHRoZSB1c2FnZSBvZiB0aGUgY29t
bWFuZHMgbW9kdWxlIGhhcyBiZWVuIGRlcHJlY2F0ZWQgc2luY2UgUHl0aG9uIDIuNiwgYW5kDQo+
PiByZW1vdmVkIGluIFB5dGhvbiAzLCBzbyB0aGUgY29kZSB3b3VsZCBuZWVkIHRvIGJlIHJlLXdy
aXR0ZW4gdG8gbm90IHJlbHkgb24NCj4+IHVybGdyYWJiZXIgYW5kIHRoZSBjb21tYW5kcyBtb2R1
bGVzLg0KPj4gDQo+PiBBcmd1YWJseSB0aGUgcHVycG9zZSBvZiB0aGUgeGVucHZuZXRib290IGJv
b3Rsb2FkZXIgY2FuIGFsc28gYmUgYWNoaWV2ZWQgd2l0aA0KPj4gYW4gaXNvbGF0ZWQgc2NyaXB0
IHRoYXQgZmV0Y2hlcyB0aGUga2VybmVsIGFuZCByYW1kaXNrIGJlZm9yZSBhdHRlbXB0aW5nIHRv
DQo+PiBsYXVuY2ggdGhlIGRvbWFpbiwgd2l0aG91dCBoYXZpbmcgdG8gcnVuIGluIGxpYnhsIGNv
bnRleHQuICBUaGVyZSBhcmUgbm8geGwuY2ZnDQo+PiBvcHRpb25zIGNvbnN1bWVkIGJ5IHRoZSBi
b290bG9hZGVyIGFwYXJ0IGZyb20gdGhlIGJhc2UgbG9jYXRpb24gYW5kIHRoZQ0KPj4gc3VicGF0
aHMgb2YgdGhlIGtlcm5lbCBhbmQgcmFtZGlzayB0byBmZXRjaC4NCj4+IA0KPj4gQW55IGludGVy
ZXN0ZWQgcGFydGllcyBpbiBrZWVwaW5nIHN1Y2ggZnVuY3Rpb25hbGl0eSBhcmUgZnJlZSB0byBz
dWJtaXQgYW4NCj4+IHVwZGF0ZWQgc2NyaXB0IHRoYXQgd29ya3Mgd2l0aCBQeXRob24gMy4NCj4g
DQo+IFJlc29sdmVzOiB4ZW4tcHJvamVjdC94ZW4jMTcyDQo+IA0KPj4gU2lnbmVkLW9mZi1ieTog
Um9nZXIgUGF1IE1vbm7DqSA8cm9nZXIucGF1QGNpdHJpeC5jb20+DQo+IA0KPiBSZXZpZXdlZC1i
eTogQW5kcmV3IENvb3BlciA8YW5kcmV3LmNvb3BlcjNAY2l0cml4LmNvbT4NCg0KUmVsZWFzZS1h
Y2tlZC1ieTogSGVucnkgV2FuZyA8SGVucnkuV2FuZ0Bhcm0uY29tPg0KDQo+IA0KPiBUaGFua3Mg
Zm9yIGRvaW5nIHRoaXMuDQoNCisxDQoNCktpbmQgcmVnYXJkcywNCkhlbnJ5DQoNCj4gDQo+IH5B
bmRyZXcNCg0K


From xen-devel-bounces@lists.xenproject.org Fri Oct 06 15:09:30 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 15:09:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613719.954450 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qomSB-0005NZ-UO; Fri, 06 Oct 2023 15:09:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613719.954450; Fri, 06 Oct 2023 15:09: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 1qomSB-0005NS-Ru; Fri, 06 Oct 2023 15:09:23 +0000
Received: by outflank-mailman (input) for mailman id 613719;
 Fri, 06 Oct 2023 15:09: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 1qomSA-0005NK-Pc
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 15:09: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 1qomSA-0001ew-4x; Fri, 06 Oct 2023 15:09:22 +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 1qomS9-0002TB-TL; Fri, 06 Oct 2023 15:09: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=wEpgoB1xunWTX87z+A0zgvbHFCxpd0KIcyofWc8LU28=; b=Ao4nM3IqDYk7kbSHzmJL6OQZBw
	PbDQCxB5F52ef5Zq7yBm6niQgg8vMLb03lZpy029z1l4vYl3+A/uWlE2W2cr5Lurl8n/6dhNH+s/N
	xMjRelDiVDPWjHGNddEIC8vFqUig/YgJLK/cayr8Mn03313RaEFbIBcOVScGJf0JkDog=;
Message-ID: <efc2b22e-6650-4c1f-b4cf-9971d4d08b49@xen.org>
Date: Fri, 6 Oct 2023 16:09:19 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH for-4.18 v5] xen/pdx: Make CONFIG_PDX_COMPRESSION a common
 Kconfig option
Content-Language: en-GB
To: Andrew Cooper <andrew.cooper3@citrix.com>,
 Xen-devel <xen-devel@lists.xenproject.org>
Cc: Alejandro Vallejo <alejandro.vallejo@cloud.com>,
 Julien Grall <jgrall@amazon.com>, =?UTF-8?Q?Roger_Pau_Monn=C3=A9?=
 <roger.pau@citrix.com>, Shawn Anastasio <sanastasio@raptorengineering.com>,
 Oleksii Kurochko <oleksii.kurochko@gmail.com>,
 Henry Wang <Henry.Wang@arm.com>, George Dunlap
 <George.Dunlap@eu.citrix.com>, Jan Beulich <JBeulich@suse.com>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
References: <20231006144405.1078260-1-andrew.cooper3@citrix.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <20231006144405.1078260-1-andrew.cooper3@citrix.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit



On 06/10/2023 15:44, Andrew Cooper wrote:
> From: Alejandro Vallejo <alejandro.vallejo@cloud.com>
> 
> Adds a new compile-time flag to allow disabling PDX compression and
> compiles out compression-related code/data. It also shorts the pdx<->pfn
> conversion macros and creates stubs for masking functions.
> 
> While at it, removes the old arch-defined CONFIG_HAS_PDX flag.  Despite the
> illusion of choice, it was not optional.
> 
> There are ARM and PPC platforms with sparse RAM banks - leave compression
> active by default there.  OTOH, there are no known production x86 systems with
> sparse RAM banks, so disable compression.  This decision can be revisited if
> such a platform comes along.

(Process remarks rather than the code itself)

Jan is away this week so I want to make sure this doesn't go in without 
him having a say.

While I don't particularly care about the approach taken for x86, Jan 
voiced concerned with this approach and so far I didn't see any 
conclusion. If there is any, then please point me to them.

For the record, the objections from Jan are in [1]. If we want to ignore 
them, then I think we need a vote. Possibly only from the x86 folks (?).

> 
> Signed-off-by: Alejandro Vallejo <alejandro.vallejo@cloud.com>
> Reviewed-by: Julien Grall <jgrall@amazon.com>

Cheers,

[1] b0296908-5081-5d34-8487-b8293eee97ca@suse.com

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Fri Oct 06 15:18:28 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 15:18:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613724.954464 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qomas-0000b9-QT; Fri, 06 Oct 2023 15:18:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613724.954464; Fri, 06 Oct 2023 15: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 1qomas-0000b2-Nn; Fri, 06 Oct 2023 15:18:22 +0000
Received: by outflank-mailman (input) for mailman id 613724;
 Fri, 06 Oct 2023 15: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=Twl1=FU=citrix.com=prvs=63654eace=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qomaq-0000Zg-Lc
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 15:18: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 927e431d-645b-11ee-98d3-6d05b1d4d9a1;
 Fri, 06 Oct 2023 17:18:18 +0200 (CEST)
Received: from mail-co1nam11lp2176.outbound.protection.outlook.com (HELO
 NAM11-CO1-obe.outbound.protection.outlook.com) ([104.47.56.176])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 06 Oct 2023 11:18:14 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by PH0PR03MB7037.namprd03.prod.outlook.com (2603:10b6:510:293::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.33; Fri, 6 Oct
 2023 15:18:11 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::66ca:3a42:baeb:9ecf]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::66ca:3a42:baeb:9ecf%6]) with mapi id 15.20.6838.030; Fri, 6 Oct 2023
 15:18: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: 927e431d-645b-11ee-98d3-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1696605498;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=7gBB4rD6/Mdk0Hzci/I+lG/rNPOl26bNkzQNDzmnAcU=;
  b=cV/PTvixv2lIRgRUZUWzhEEtTGNLlBH/HPBRVj1THtNUVxQZyXmt5YhF
   nhq28Ar2ETsRXeGQqQMFWgQn9UMwd6WZH+03kFBfQHRRDUMDxTtXq1HSY
   jXLy+bc1fwQeyoYQpK0SSbhbaykVwDr4M/lollPQ/a1MELT8KrCzc0FdR
   8=;
X-CSE-ConnectionGUID: qKTpbkDUTOuHZvD2htyYLA==
X-CSE-MsgGUID: xQ2DLBncTm2byHTVPKTOGA==
X-IronPort-RemoteIP: 104.47.56.176
X-IronPort-MID: 124846856
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:RJM5A6xK22XpVHbV/bF6t+d/xirEfRIJ4+MujC+fZmUNrF6WrkUGy
 2ZMC2uDbKmCYjf9fY0kPdy1oRhUsZ7XmINjTQRspSAxQypGp/SeCIXCJC8cHc8wwu7rFxs7s
 ppEOrEsCOhuExcwcz/0auCJQUFUjPzOHvykTrecZkidfCc8IA85kxVvhuUltYBhhNm9Emult
 Mj75sbSIzdJ4RYtWo4vw/zF8EgHUMja4mtC5QVmPa4T5TcyqlFOZH4hDfDpR5fHatE88t6SH
 47r0Ly/92XFyBYhYvvNfmHTKxBirhb6ZGBiu1IOM0SQqkEqSh8ai87XAME0e0ZP4whlqvgqo
 Dl7WT5cfi9yVkHEsLx1vxC1iEiSN4UekFPMCSDXXcB+UyQq2pYjqhljJBheAGEWxgp4KXhty
 eQSKxwwUjeep9Co7Oi7Vvhdou12eaEHPKtH0p1h5RfwKK9/BLvkGuDN79Ie2yosjMdTG/qYf
 9AedTdkcBXHZVtIJ0sTD5U92uyvgxETcRUB8A7T+fVxvjaVlVMvuFTuGIO9ltiiX8Jak1zev
 mvb12/4HgsbJJqUzj/tHneE37WTzX+lCN9MfFG+3u5T2nG37GoYNBhMX0qbnceBqXKZdPsKf
 iT4/QJr98De7neDXtT7GhG1vnOAlhodQMZLVf037hmXzajZ6BrfAXILJhZIbNEkvck6Xztsy
 FaNm97rAhRktLqIRTSW8bL8hTG9IyERKUcLYCYWSg1D6N7myKkohxTGVcpqC6+ypsf8AS332
 T2Moyk4irgJjMgEka68+DjvhDahpYPIT0g2+x/QVWKm6St2YYekY8qj7l2zxdZNKpyICGaIu
 ncsktKbqusJCPmltgaAXeEMF7GB/OuePXvXhlsHN4I66z2n9nqnfIZRyDJzPkFkNoADYzCBS
 FDXkRNc4tlUJnTCRa1qZ4O8Dew6wK6mEs7qPs04dfJLa5l1MQSApSdnYBfJ23i3yRdy16YiJ
 Z2cbMCgS24ADrhqxya3QOFb1qI3wic5xiXYQpWTIwmb7IdyrUW9Ed8tWGZipMhghE9YiG05K
 +piCvY=
IronPort-HdrOrdr: A9a23:c3dJxq6Rx8ORwmVOfgPXwBLXdLJyesId70hD6qkXc20xTiX4rb
 HNoB1/73XJYVkqKRIdcLy7SdK9qFLnhPhICOsqTM2ftAiPghrREGgK1+KLqF3d8kXFl9K1vp
 0QFJSWZueAaWSSTvyX3OB7KbsdKRW8n5xA/t2utkuFhDsFV4hl7wN0ThmWCVd3Qg4uP+tFKK
 ah
X-Talos-CUID: 9a23:BeSn+G59WK91bQogZdss7W0oAsomXkDh62rwEVGUU2Z1WYyxYArF
X-Talos-MUID: =?us-ascii?q?9a23=3Ajnbadgw9bCJNwpJ51Au1njOOIySaqLSXUmwpu5M?=
 =?us-ascii?q?Nh8zePz1QBwmlrwiQbaZyfw=3D=3D?=
X-IronPort-AV: E=Sophos;i="6.03,204,1694750400"; 
   d="scan'208";a="124846856"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=iTim+lS9XfKjWH7YKPnMWOh13qmyvwLWto9FruMyT88BM8nSAsCemCeZh/JtR4pGwzr/2c6KcNfv1vIGzzB74E1J7b/XhY3qKNM4+4wxh4EPQaR/3qclxWSW+JxRLh5EftYT+pRIrLKS6pqAR+H20kJojrmY5ifGFRlbsQtk1fLgePhtfL1PKPr5vNzBK6yjG5WlzRBDvDXkp81l0kEX4dhtZjYJhqEdahyqrkjNWOEG/mOWeR22gdWAy1ExmeFcBq1LB5HnjytwNb1/IEYG50cenwj25pOfwd4DBdx7n/su1mEooDpBs9z3Sqh6MbE2iTvEyUHtiHDCxZWCMq/iMw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=wlPwlojfnOPOJrTqWhQg69YRNT9GWtUGLt5F89zVzQA=;
 b=ShxfjW6FniW6b2vbyB1hzvqSczXCRkTXXn1SxpM+oIq43w1CMmh2CazwA0myflxmYlLkyjKt5pVb9WTNqOduMm2yJOwk+UsRhW4PRHnf79xnzQaNIIrydbSSROKflKR7YGQjre1lbU6EGeeDMbs5ePrloLDLT4ML7K8tsgvGutlkFHPNx8J9omg+szVdqgcmAsnTR3qNn/hbUlJUe+wK2qXBCBtYQAEj4AN5FIIPiNSDYfUYClWrsb+7JGneWEQdW81sDFEEsgO0iETuMJeSXTi7MY5QoGy74RXbWgGzShz45b1N07I7ClIiLKKXsOk5qgDdcqe5TZJxXSPnyGw+iA==
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=wlPwlojfnOPOJrTqWhQg69YRNT9GWtUGLt5F89zVzQA=;
 b=wBNXujxPycpfbzLCFGXX9k4/MxRkmxKOGMdCYXT1QLSvqjMORyMEjeEnaKpemAWBTvp2Bhyx3DCZX4fBomoGvImu4o0gD2GHZ6UO04k2In7Qszmr2kseRT3FSuwTQYxbXx7Wn11G2EGOXS0ptTBq2YEvKRAJyMpNU/RkOOQtAxQ=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Fri, 6 Oct 2023 17:18:06 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: Xen-devel <xen-devel@lists.xenproject.org>,
	Alejandro Vallejo <alejandro.vallejo@cloud.com>,
	Julien Grall <jgrall@amazon.com>,
	Shawn Anastasio <sanastasio@raptorengineering.com>,
	Oleksii Kurochko <oleksii.kurochko@gmail.com>,
	Henry Wang <Henry.Wang@arm.com>,
	George Dunlap <George.Dunlap@eu.citrix.com>,
	Jan Beulich <JBeulich@suse.com>,
	Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
	Julien Grall <julien@xen.org>
Subject: Re: [PATCH for-4.18 v5] xen/pdx: Make CONFIG_PDX_COMPRESSION a
 common Kconfig option
Message-ID: <ZSAlLuJ-j4wDgfKg@MacBookPdeRoger>
References: <20231006144405.1078260-1-andrew.cooper3@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <20231006144405.1078260-1-andrew.cooper3@citrix.com>
X-ClientProxiedBy: LO4P265CA0199.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:318::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_|PH0PR03MB7037:EE_
X-MS-Office365-Filtering-Correlation-Id: b394cc6f-65f2-4b03-b0e2-08dbc67f73e8
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:
	63ldCHxGk2bUFfHWO8AkZyBNLin38k6VHf0KREhFS3TpM64j3w1PtuKyQ5Rjy2u9LrUIAy2rPb86VEjefyiXpEhAtLHgUGqGPozh1sV+SW0nab78xeyLPPRWYdqjQwKkiTfKw4IdiSwb1YfmoFEGQYIbSzsREv/yeMz0fYqpKHGGOw6n7eNabckIPIgsXPQsiq+eSBYl1i0mkAtT4Nhd8dp8FIOCtWqskIVJ+4Ru3sHZQLtM0k26QUTXDiTYzSSkM6gQz59PGX/apVm9BotrvQZl57Orc9evosLCoy+mwrHHLD8buIYIr5WDpmBdtTToz1dhZV3Mo/3YQmeU5HZ1xob/W/ZfJOXkk8RzeUgtlkvHnLXJf58/MgfgPn+egNMHHaZjGV47ipqjV2q2Rt3kFIV6DsGk3imb10T/BHKm6a7/Uthtwa/XKv5PpxLH38sYrGbp1kps050LtI97v8ocqwu7YFvWQEhTWIpyOa2bCshaCj7QQkpxRM9ngoUr/7J7YUfjO2uPb3DJe+KyACd/psdCj+hmkjKKT2Uwxfwa/EuUEKUwS38tTSABrm2ZpV33
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)(39860400002)(366004)(346002)(396003)(136003)(230922051799003)(451199024)(64100799003)(1800799009)(186009)(2906002)(7416002)(4744005)(6486002)(478600001)(6666004)(85182001)(26005)(33716001)(38100700002)(83380400001)(6506007)(6512007)(9686003)(86362001)(82960400001)(316002)(8936002)(8676002)(4326008)(41300700001)(6862004)(5660300002)(66946007)(66556008)(66476007)(54906003)(6636002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?RU1sWU9wdWV4dmpIclBPeDJWY3dIeTVORnFNaitoV2NoSld1Sk8yNTlUVkdL?=
 =?utf-8?B?S0R5RXRsQ0NRdWlvd1cvbWtpb1l4MWhXbG1KT0xnSzM1MGY0dklkMGx5MGU2?=
 =?utf-8?B?eUhvS3FSaW1ib3F0NGk1T2xxckd4YmNDSUhFbmdFNHMyKzc3eFgwUG5sVk1u?=
 =?utf-8?B?YXpRV1dBaU9YS1RIempiMXJYYzJxWlMwQjhOVjI0QmdGenhYck9jYzR1dFlI?=
 =?utf-8?B?UXBwUUJsaGpZayt0Tnl4YjYyeC8yRzJsbEkzVTE1TXZ1eEtuYTZ6N1BjM29U?=
 =?utf-8?B?M3dLS1BHZVIvMTlzbjh6dEhoTHYyR3IxZDRvYnV1TTEvRTdjUGI4WGJ5MENP?=
 =?utf-8?B?Qk5xTWlEUkE2U29VdFhWaExDL1ErVUJSKzhZalA4UHBiZUhRT25zelR1aVhn?=
 =?utf-8?B?cUM0REdJRmpZclpzVTlMV3dBcDZPMFp6cnlzazZUL0htckJCYk1GV1o4SXcy?=
 =?utf-8?B?WEoxYW9Pamhpc0xXVTFqdXhWQ0gvdktrYjhJNXJ0QmpVLzFBSUFRNmNnbXI4?=
 =?utf-8?B?RkpHd3JOVXdLcTZPWFVicmJsbStqMWJlYkptd2w3R0dUOEtoa2tYc2dFK1BO?=
 =?utf-8?B?OW14eEVVMHovWGxkNnFKeWIxejRJTXpDVDVJb3pwakZZN1pkUkp6NW5jRVp5?=
 =?utf-8?B?Rk05ZDd2dVI4TzB0MVpZTDBJeUFETmxKcE8rNVpkNkl3REtQNlZmWHQ2bm9W?=
 =?utf-8?B?RmZSbE5RVFBuaGRMUjFQdXBrS2RXWWJyMmZMWnJ1RkNqbnZlRmFvN3VhYnF3?=
 =?utf-8?B?d3ZiVmYrWHQrOFNvMGpmbWJDTEpmRE5TTXBSR0xLQTd4QzdJNndtOTZ1b3dW?=
 =?utf-8?B?ajY1ejMxQlBvRmF1eFRrVjRVdEdwMHFGNWdpYlNUUnFtWGk3T21SY3o2MWpu?=
 =?utf-8?B?aG0yZDh2dm83OGJiekt3clIrVGxaVW04UW41WEtYd282UElUYy9XZ3hqODBq?=
 =?utf-8?B?ZS9qMExaelpIdERzRDlDSm82bUdqTExFMlIvRXVoWVdGNW1RQlNVT1l6SC90?=
 =?utf-8?B?aUMrQnNhT1RLM2ZhalptaTloOTBsN3oxNXZlNE9vQjU0L0hoblJWZXBTazJx?=
 =?utf-8?B?UzVNZWNORnZmc3JwK2MxRUFzWVBEV3lhdkRTY1djekZ1ODlOcnhBSDRmL3ZI?=
 =?utf-8?B?aHI3YjJ4TVBnaFZjWUdqVEo5TXV3QUs2dVFINll0ZEVRVmdJOEFuN2RTajVT?=
 =?utf-8?B?UHdQSXU4Q3BVd0VXZDc3RUpsM0hHVyt5Q0lFbVVUVWNiRENJcGtuT3loWEUz?=
 =?utf-8?B?VytLbm5TSnVJTjUwcGdrMnpaWWF6ZzJ6a3ZiaGxsdDNjYlhlSlBMS1RYOHpO?=
 =?utf-8?B?RXNNVm1oTE5iZzFyL0tjM29MZnpuem0zSXczMmw2alA1WXQyRHoydlltK1JN?=
 =?utf-8?B?ZGkyRkZQTFRURjBTQ2EvRUMwbU1PTFkyVVkyTFdGaU5CN2hzYVpreG1uMmlJ?=
 =?utf-8?B?b1FDU2RMNUhmSWlqMnlDKytOVHg4b1FIb2pPdDhkdHhyRjZIV1dCcFlaSm5l?=
 =?utf-8?B?dU56a0ZvMkpuc1hQMWRxWDFJM2lTc2R6cTRwc0xrRFhXdDJkOFlGdmQzOXd2?=
 =?utf-8?B?UUlQZGY5eXRzckNsa0dPTHRuODVFc3NQUEU2bkJiNUZINHZ3QmhQZCt5Ym1h?=
 =?utf-8?B?MlVHTkZKR3dSZlpjU0hzQTBKZGlYV3dsMnJvVnVRSk9pS3NRUHkrZVNvM2w3?=
 =?utf-8?B?MkJOTzZ1Y2Z2b0drUUVHbEx2blNpZ2V6YnNaQTJVRXFYSCtMRy83bCtCSkJa?=
 =?utf-8?B?dGhzWXNXTG9iRDgwaXkwUHRiTEc3allMTWhZbGV4RWI2alQ4VVJnaUJRd1dj?=
 =?utf-8?B?NGIwRFd3TXNtZFZSMjQra0hpc3I3RXZUTzlucHRwMkRlQldhNDVTVVBXVS9L?=
 =?utf-8?B?UVNGMEZwUzRGdzN0Ykk2dkUzVmpuUmN0R1ROZ09HeXhzcmFBS3pvdmxjZzM4?=
 =?utf-8?B?bmFWQ2hCQUpYVTdxRlY1WUZnU0JNK0lRQ2t1WkZYeUoremo3SlE0U2tPRDQw?=
 =?utf-8?B?b1BBcnRYSWo0K2M5QmlvdTNKcmZVSHRBd2ZxUkx2RFp1MFRpRHhrZ3RvSEZu?=
 =?utf-8?B?dlVYUVk5ZXluWWJHUDd0ZkdlV2pDS2tyaDdmVVFkczAwQ3ROWDZRQ1RiM2NV?=
 =?utf-8?B?VDc1QkE0Z0tYdFhFRlFMZ3FWZStXOVBlQkpZc2kwODhwYTZvU3lDdkV5anlJ?=
 =?utf-8?B?TEE9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	=?utf-8?B?Qk9veW95ZEJyenROZDlqK3lrWS9ieDAyVDBFazQrZ0VabWNzdEhTYjBVdWth?=
 =?utf-8?B?bHdtTDdWRjBXVGJHZTcxMVpQS2orQm5iY0F4Znl6TjRmdkxKSFdiUDJMRmQ5?=
 =?utf-8?B?T05hOFFISnFuRERhZlRsK2ZMeDRPa0ZKRVE0enRlREtoZTl1aTZGcU84dlhj?=
 =?utf-8?B?YlIzZnZNOWxSaTg1NjBSK0szQzBNVkxqYjdPN3k2MzM0dXkxR0Z5eHh2aXdG?=
 =?utf-8?B?TEhzelBqQVFUVzNRSGFoMGNKTGtOVVcva3RQWUNITDJNQUxlMnZEc3pYTzlF?=
 =?utf-8?B?cUZXczNnUGZLZmhRTHZkRkpDSjE2MDMybDFONzFUemtNT1Z2cFpXMnU1Mko0?=
 =?utf-8?B?ZG43VTMxVXJkNUh1N0Nyc1RzK2tPTVI1VE1VaDZTdkFGYkVHMXFpV2svUFE4?=
 =?utf-8?B?M1VIbVFVb0VmNDcwNENielV2YURaWnpzQ3FSZzJIR0xCdnFYcE5uK1lPbGRI?=
 =?utf-8?B?ZlJGS2N2b1hScHZReEpSK1gzOEdVNUNIcC9QejgzdUJ5TmliSHJNeXhFeWEw?=
 =?utf-8?B?TGdNNUVnYm43cjhVTUtPSnpySmRuRnBaY1UwdmZKckNJeTYrVGlGV2hxQUY1?=
 =?utf-8?B?TGRJK01tdCt3QXkyZ3BZaDBlMjBSUlpxeFM3OUpraloxYzNGLzZwaStlbko3?=
 =?utf-8?B?OWdWaWhUTmlaSnZVWjZjWEUrTHFqM0xwbm5RQlp3VXluOVh4NGVHQkVSNU1h?=
 =?utf-8?B?dEVZa3paamh3ajZZMUlJQitidzJIN3RxRlpna2IwLzgrTklJQi96aGl6Zmxo?=
 =?utf-8?B?U09LTmpCNmlxR2dnRXN5S2hkNm02TDhqeTlXSC9TeEFUL0JZc2EyOVNESzhE?=
 =?utf-8?B?RG9lQkdYa0pMQTFRZERITThud1VxRjlucEF6NHBCRWxQNkhCWi9XL2kvT2xO?=
 =?utf-8?B?K2RCNzEwVG1EdDhiaTk4aDdGNnBCQmgraVVjbGtRc01XUUl4RWZvM3VFd3Ft?=
 =?utf-8?B?ZHQ1aUZWQlBqeFdaL2Q5YmFMNldMdkFqM2xVMnowT25wOThuZEkyYlVERnoz?=
 =?utf-8?B?bDl4TE9iUWY2V2x0WVppL1lUVDFuMDMxVjhXK3Q1WEk3MVdFcFdLN2FYTmpI?=
 =?utf-8?B?Y0FiVkxXK2tXeUZieDAzdkMvUmpZVk9zYjRvWkgyampEMUN4ZGExWFhVa2pT?=
 =?utf-8?B?Sy9XSW1EYlIzV2xaL0JQVGFIeVkzaUpZNVI0Um5GcS9yWndlbXJGZjJWTzFW?=
 =?utf-8?B?V000UUVqamVJK3hRNDI5a04zQVVDNUFyakE1MGlJR2ZHWkRoM3lLYVBBdksw?=
 =?utf-8?B?ZlJRZDh4U0NoVGY5cWIyejNFT2lZMFpObDBRQjE0MHkzVFdwNmRScXlBaWhC?=
 =?utf-8?B?alp5aG84dEd4eVFSK2NyVTdZMnRtYkxNeHNjd3RXcEMvTGszMkZBaWlNcCtQ?=
 =?utf-8?B?eTNWTWlsOHNEcUE9PQ==?=
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: b394cc6f-65f2-4b03-b0e2-08dbc67f73e8
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Oct 2023 15:18:11.3565
 (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: AFNRf/LBf462m/qhD9UoH9BWh16hLvG1yXyiZte9X2hsAiqnIbJJihD0D8MLpwhvuFEx62P00ZN7tUiw75diVw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR03MB7037

On Fri, Oct 06, 2023 at 03:44:05PM +0100, Andrew Cooper wrote:
> From: Alejandro Vallejo <alejandro.vallejo@cloud.com>
> 
> Adds a new compile-time flag to allow disabling PDX compression and
> compiles out compression-related code/data. It also shorts the pdx<->pfn
> conversion macros and creates stubs for masking functions.
> 
> While at it, removes the old arch-defined CONFIG_HAS_PDX flag.  Despite the
> illusion of choice, it was not optional.
> 
> There are ARM and PPC platforms with sparse RAM banks - leave compression
> active by default there.  OTOH, there are no known production x86 systems with
> sparse RAM banks, so disable compression.  This decision can be revisited if
> such a platform comes along.
> 
> Signed-off-by: Alejandro Vallejo <alejandro.vallejo@cloud.com>
> Reviewed-by: Julien Grall <jgrall@amazon.com>
> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>

Reviewed-by: Roger Pau Monné <roger.pau@citrix.com>

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Fri Oct 06 15:28:06 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 15:28:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613732.954477 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qomk9-0003y2-Tf; Fri, 06 Oct 2023 15:27:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613732.954477; Fri, 06 Oct 2023 15:27: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 1qomk9-0003xv-Qv; Fri, 06 Oct 2023 15:27:57 +0000
Received: by outflank-mailman (input) for mailman id 613732;
 Fri, 06 Oct 2023 15:27: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=Twl1=FU=citrix.com=prvs=63654eace=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qomk8-0003xn-KR
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 15:27:56 +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 ea2f2db0-645c-11ee-9b0d-b553b5be7939;
 Fri, 06 Oct 2023 17:27:53 +0200 (CEST)
Received: from mail-dm6nam10lp2107.outbound.protection.outlook.com (HELO
 NAM10-DM6-obe.outbound.protection.outlook.com) ([104.47.58.107])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 06 Oct 2023 11:27:34 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by MN2PR03MB5312.namprd03.prod.outlook.com (2603:10b6:208:1e9::15)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.34; Fri, 6 Oct
 2023 15:27:32 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::66ca:3a42:baeb:9ecf]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::66ca:3a42:baeb:9ecf%6]) with mapi id 15.20.6838.030; Fri, 6 Oct 2023
 15:27: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: ea2f2db0-645c-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1696606073;
  h=date:from:to:cc:subject:message-id:references:
   in-reply-to:mime-version;
  bh=dG4Kxn7tnkmoBemxWUdLkfPy0GZaMaEBXnUKlRm+aJc=;
  b=SIPgKZyBUiwTsKVFjwvyUSEcNDIe6kT6NbjHFXO4Fr+3v6vwoesjh+Ao
   q9V23rlvgL0hRgaK/V53pRwA/rKKklyw2iv67hfMB5ocZconbww4iOvfd
   EWwKQnGjGRFSx1h8KB6ickgwFmZL3H9TdEx76u2wS2LeMCfnxNhwr94FB
   Q=;
X-CSE-ConnectionGUID: 4CGPXR9HTA+07bqoChkJ/Q==
X-CSE-MsgGUID: uzsKziJNSl+3r5V9DbjTng==
X-IronPort-RemoteIP: 104.47.58.107
X-IronPort-MID: 124096767
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:tuVneq76ahFghd6h8gamdwxRtHDHchMFZxGqfqrLsTDasY5as4F+v
 mMWWzuEPaveZ2rxetokbtvgoBgOu8LdzdE2SgFrrSk3Hi5G8cbLO4+Ufxz6V8+wwm8vb2o8t
 plDNYOQRCwQZiWBzvt4GuG59RGQ7YnRG/ykTraCY3gtLeNdYH9JoQp5nOIkiZJfj9G8Agec0
 fv/uMSaM1K+s9JOGjt8B5mr9lU355wehBtC5gZlPKgT4geH/5UoJMl3yZ+ZfiOQrrZ8RoZWd
 86bpJml82XQ+QsaC9/Nut4XpWVTH9Y+lSDX4pZnc/DKbipq/0Te4Y5iXBYoUm9Fii3hojxE4
 I4lWapc6+seFvakdOw1C3G0GszlVEFM0OevzXOX6aR/w6BaGpdFLjoH4EweZOUlFuhL7W5mq
 dc3EAA3PzC/rqHun7iiTcJsheZkFZy+VG8fkikIITDxK98DGMiGb4CUoNhS0XE3m9xEGuvYa
 4wBcz1zYR/cYhpJfFAKFJY5m+TujX76G9FagAvN+exrvC6OnEooiOeF3Nn9I7RmQe1PmUmVv
 CTe9nnRCRAGLt2PjzGC9xpAg8eWx3+jCdxNSuLQGvhCnU+I5X4SKjstURjgu6SH22K0We5ZJ
 BlBksYphe1onKCxdfH/Qhm5rXisrhMaHd1KHIUS+AyLj6bZ/QudLmwFVSJaLswrstcsQj4n3
 UPPmMnmbRRmtLCXQHSR7LDSszq2PSUXKkcJYSgZQU0O5NyLiIM8lBvLSv5qFaeniduzEjb1q
 xiRpS43nKkals8M/7+y5UzAmT+qqZnPQwMv5wPYGGmi62tRY4qoZJep6B7Y8OxHJ4aaSXGOu
 XEFn46V6+VmJbGAkjacBtoEGr6B7uyAdjbbhDZHPbMs6jCs8H6LZp1L7Xd1I0IBGt0fZTbjb
 UvXuAVQzJxeJn2naelweY3ZI9su5bjtE5LiTP+8UzZVSp14dQvC8CQwY0eVhjjpiBJ1yf55P
 oqHe8GxC3pcEb5g0De9W+Ya1/ks2zw6wmTQA5v8ynxLzIajWZJccp9dWHPmUwzzxPrsTNn9m
 zqHC/a39g==
IronPort-HdrOrdr: A9a23:+6om66vfqGl01dOG3khIM71o7skDstV00zEX/kB9WHVpm6yj+v
 xG/c5rsCMc7Qx6ZJhOo7+90cW7L080lqQFg7X5X43DYOCOggLBQL2KhbGI/9SKIVycygcy78
 Zdm6gVMqyLMbB55/yKnTVRxbwbsaW6GKPDv5ag8590JzsaD52Jd21Ce36m+ksdfnggObMJUK
 Cyy+BgvDSadXEefq2AdwI4t7iqnaysqHr+CyR2fiIa1A==
X-Talos-CUID: 9a23:THOrcG9qefgea0DdT1mVvxI/NfgVSCz98F6TexCyEGFCSL63DmbFrQ==
X-Talos-MUID: 9a23:JAtiqwWV9lp5nSrq/CL+nxJwNeVO2KDtU1pQr8Qqscu4MyMlbg==
X-IronPort-AV: E=Sophos;i="6.03,204,1694750400"; 
   d="scan'208";a="124096767"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=eJs4dVXfGNOFSwSdxAMbo+XND9IuA9hVB/rmy5GXkCuZJjk31JXJuA9RoU769zPbmIpB/Jq/xwc80FACHr3kCpJnQq+r6i7K/pgiyMmuT2dK5ohNTY5RXtI0+dKhJ2eVuolRBq0rIoCw5kDECmqLXu+xgPDVH75Tu1Ih+E0vTqK3l+Xx5f3ua9bz5CmUNxs5cUQsO4SWwd9H/wzKanZcZ28AhQbqrVdkebXNc4kaSrRcWmrEjHEoYl27oTgjKdMVz6/+bI2yrUOjCyfKVh7QVaMuc11An+YoV09194EPWOqOk+Si5ipz4PJaFmBlpl/HMazpi2WECAAJIqz8Tk7hDw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=zhtiX/bDtVEhk3fOYwNRjd7Ao4M2PcFhsPYgkWH5CeE=;
 b=RP09ycyrX5BXmDUXfLbk5bqvcesTFzvzYYmdmdR5267njx87454caPSe6S8BSv7k2EFzxWCXRB6ymeAkI1+G/qFyKHHJWcyjerhuvL/bfQrq8zeznV37SIUjCpRyXaIkjDkrRNLnhnFWVrGZvOQ+fcCkWeJmTkI8fVYISA209B/O53oZJ+xQ1c0BLtag3oNUFBRZa5m+xZ6s8pdvhft7C+McQSyNYdaSh7aQLlO+nIIuLApcB0DIEqGhPe86cUasTccZDcGaSflAqb0JxiQhMTlhfiTJfi6QTT/eU8zT53l3WJOg11pXDi0KKOWCigWi9qR7T7FdOUjIDZofXi+Dhg==
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=zhtiX/bDtVEhk3fOYwNRjd7Ao4M2PcFhsPYgkWH5CeE=;
 b=P6BAaUGeDTBA1+5gVnbCFmvWdCBc38dtlVNSeYCzH90kioXLylzIXOdZePZ3V3eMxa7/z1wDoBTZy3oagACAuUu+Qo2Hc2W5CN+gSqAnYLTVZh2TGsTNGTSLp+etRXmTQ3soHQxrP9DyRgIAzaPmMw7Tm22F1vAtXb9XsDRTZqs=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Fri, 6 Oct 2023 17:27:27 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Julien Grall <julien@xen.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
	Xen-devel <xen-devel@lists.xenproject.org>,
	Alejandro Vallejo <alejandro.vallejo@cloud.com>,
	Julien Grall <jgrall@amazon.com>,
	Shawn Anastasio <sanastasio@raptorengineering.com>,
	Oleksii Kurochko <oleksii.kurochko@gmail.com>,
	Henry Wang <Henry.Wang@arm.com>,
	George Dunlap <George.Dunlap@eu.citrix.com>,
	Jan Beulich <JBeulich@suse.com>,
	Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
Subject: Re: [PATCH for-4.18 v5] xen/pdx: Make CONFIG_PDX_COMPRESSION a
 common Kconfig option
Message-ID: <ZSAnX3xjM91-tYbE@MacBookPdeRoger>
References: <20231006144405.1078260-1-andrew.cooper3@citrix.com>
 <efc2b22e-6650-4c1f-b4cf-9971d4d08b49@xen.org>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <efc2b22e-6650-4c1f-b4cf-9971d4d08b49@xen.org>
X-ClientProxiedBy: LNXP265CA0096.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:76::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_|MN2PR03MB5312:EE_
X-MS-Office365-Filtering-Correlation-Id: e951a15e-1f69-4d2f-b0af-08dbc680c25e
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:
	g3AyqFV+RD59b0tmfUTFV72Rd9T+xojLN36eczkc8yqwD49UUa7vVhCkqFJbKyqHhqqriGvaZMS5D3H+wJ3yYk5W1pVaSw9bws8OMvvzM7XNFH52uKe5G+OT9nZa4dKO5M9t1mwVgPBEQ3mahDeWz5pzTh4QrBUSqzqEoPbJS8pDkIrec0qkzwPdwzbh17vqbUsfBCN8dC6nV/H7dim2DZy5BZuwsNEz8AEd5Xxd/GakHnEICmvN7wS3TOAzXkIsDH1O0UbV2gBAnpQUs4GKtMu8t9BD8eurpdgYrcNm34yen5eeirEg3kokwES3arQBv03ffuEaYCax7Tlb3DEbOCLQ64QjhkpqRcxbBMwvNINK3t7SRZ9so4vdXJqy/12dwjVS7QyGgc5pmu30FXH9PFt1JrxAP8i8aLqiMW6JJ+G7TU4Y6LQQ8e5eeuBGNTyCx5qDuyVI8+vIEsxIEcXFafT+zXN4JvPS7ROCQpybXV5OcVj7pGT4FhXWV4MWhUX7+SEE9HQ1JZPY7kJa0BDVohkmJz7aERPllxlSYbsEMrOF5tONxW/sWfxsMjdC1vyx
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)(346002)(366004)(396003)(376002)(230922051799003)(64100799003)(186009)(1800799009)(451199024)(6666004)(86362001)(9686003)(53546011)(41300700001)(82960400001)(6512007)(5660300002)(2906002)(4326008)(38100700002)(478600001)(6506007)(7416002)(8936002)(8676002)(54906003)(66476007)(26005)(66556008)(66946007)(316002)(6486002)(85182001)(6916009)(83380400001)(33716001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?NW01bDZSMEQ2OUROb1NUdngwZHV3MFNyQlo1NWJhSjJva3hYUDZVNkZWVEtM?=
 =?utf-8?B?eiswalY3RTU3VE1kamFGelRrK01iKzVlVzlxRFJBby9LZkVRSHN4UTFaWXl0?=
 =?utf-8?B?U2t5MGlhaDIrcW5nUWVYR1JCZUlqSXN2ZDBqK1BPdXAzc01BYnlpenBGc2Jx?=
 =?utf-8?B?aWNCaEROSCtaK0cwWlhBRU9hQW1tT2JvR09sTmRzVkN2NmVUSkIzZHg5SWRC?=
 =?utf-8?B?Nm1TMDNoeGRHcDUrZ1BDWmwrTHhOQVZ1WXlnaE5RZStCK1pDd2twYUlnRVM2?=
 =?utf-8?B?SGZ2djRGMGE4ZTBnNnl2enB0OXJlZk43b2dBbHFJd04wYThTQ3M4TFdIRDZz?=
 =?utf-8?B?NjJ4UUVRWjcvWVZTZmhKVWgzUGI1ajlCOWNEcTVscmhwSkRXc1dnaDhDUExn?=
 =?utf-8?B?bXhjRCszYWxoakxUOHlBNmlKVGRBVWllT2NqRXYvRkhsV2RqRGdZdmIweCtH?=
 =?utf-8?B?UlE2Q2dKait1L3laZWM4NkFzSkJmYzFHdGU1ajFzRjNkRmQrTFl6ZVkvbzhR?=
 =?utf-8?B?b2ZrOXdLaUFKcFRJeUxFVWFQTGlyRGtreStBR0RHNzFBSldobGRUbkhiNGR1?=
 =?utf-8?B?bkJ1ZGJ5bkt3N3RmSWpqTzBqTTEvcVRxanVNdlVER3hyUXdqU0xBMjZEZ1No?=
 =?utf-8?B?czlwd0tIcUVnVDB4WVVkOWM1S2Y2TjNoOExvMXFNLzlud1M1ZXluUHpOS3lj?=
 =?utf-8?B?M1IwcDZ6dUp1eFdMc0g4Wk83V3p0K0xuTm5vRHVick9NQVpNK2Jlc01zZVBY?=
 =?utf-8?B?Q1NaOXF1d3lTc2RDWm9hZWx6R1hVcHAxNHJYQUJDSXM3M1NtdnQ1ckxXZmdM?=
 =?utf-8?B?NUNBS3Z0ZGx6RklLYlZOMTdMUkdESTQ3ME9rRTY1NmxXU0FxVTUrL0tFZVRS?=
 =?utf-8?B?VWFoM2sxZVNwdXcxcXF2Zk1rWk5CUThNRk40cEx3UERLZW9UUHk2RFFCRzZz?=
 =?utf-8?B?RlVUMjZ3RitTY29MQUxvMExQMllISW03NFVjS1BzQWtBZFgwOVpXdXg5TlJ5?=
 =?utf-8?B?dVFWVXpPRFViSElZVWxkaFQxaFFPYkFKVVgxSkpuckhCbVQxMGZoVXlpcWR5?=
 =?utf-8?B?MENSRGhIbEowWlZjcjdwTzZFTU9VdkhLa1dTVytLSUlxVlU4NGR2RWpLbGxV?=
 =?utf-8?B?SkJaS2NwbUJQUzBUWFV0Y2dQQzNGdWdPbG05TC9FT1lhV0NJajFMNUd0MGdY?=
 =?utf-8?B?TEFyWGM2L1U0MCtWbEUxMzh2K2REMnEveUYwOHlyZWxma1Y2QTl5U3p3ZFd5?=
 =?utf-8?B?cUhjSGNhdzYzeVBuWjZmVyt1MjdWRE5tQ1VWazZSSkNycEYwL09wb2VHZ0Ri?=
 =?utf-8?B?ZFU0VmlEUERmU0NUWTVmV2J2Y0JZcGhjdUZRSDhjbmx3S1pkQndGM014ZHBt?=
 =?utf-8?B?dXFWVC9vYU1UN0swQjd5aXR4WDNtNnNJdEpOUmliN2kybnRQS2NYT1dVa1c1?=
 =?utf-8?B?eUd4V2l1Z0ExQlRGbGtrUFZhQ3BiWHo2R3FxVnFkVHRHbHZTWXF0dWdYLzl5?=
 =?utf-8?B?TXgxdTgvQXQ5aFhqVCtka3JlRkxNcWdxcDI4S1ErM0k0eVg4bmE3K0NtbFBX?=
 =?utf-8?B?WTErTG9zUWV5WWJpYmM1VkxteStEaVdEYlZBT0ZwcUxqOUNRODhpZ0tVdVIy?=
 =?utf-8?B?TlVoWTA2bnRIODVPVG1Kd1Yxb1g4d2lITlFBUURvQkI2N3lrN2RRa3lmOVg2?=
 =?utf-8?B?VG1MWHJ0SEFBL20rSzhXVVZDUytXS053SWNCNGozT3A5Tnp0VWtzQXFmb0xE?=
 =?utf-8?B?RE5SNjlSLzJrSnRUeTV4enpQUXJNYjJCYUZIRzhBYlZJSGE4d3NiUGoyaG5N?=
 =?utf-8?B?R1dlSUJwTWJCUHJMZVJ6SGI5WDlZUXRIeEVGcU8wRWpxWkdPUUtISk1lemxZ?=
 =?utf-8?B?ZWJmLzBYcUtLZHl0NzNLZ1JhY1RjRTV0NzllVHFzbnMxR0h6YitjVjRQVGxt?=
 =?utf-8?B?aURhQ2FQaTdiOVBtWVRJMDhTSEQrYmVDaEpRdVpuamRJVCszWHhmNWFib2pE?=
 =?utf-8?B?N0RGNTB0OG9Lbmp4N1BHUWRQOUxXUVhIS2MwSVU2NG0wcnlIWUNxOUlnRmk2?=
 =?utf-8?B?SEtaa0FlcEtnUTNLSzhjb1lSWTdGM21POFVybUJ1Nk1UdFhFamVwVVNjR0hU?=
 =?utf-8?B?ZUE3OXdvVlhmS0d0b2lFU1JWZ1EvSFVGYmErM3BNZ2Rsb2Z4Ni9SWjF1T3hj?=
 =?utf-8?B?dXc9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	=?utf-8?B?OVE4U1JqTkNvZWxmZDhvY1J0RHJRTmxLMFRVTFZZc3lXcTZHNGJBczY5Qk1a?=
 =?utf-8?B?Um9pR0lVaHJXaHY5Z1UrbDJpdlY4SGJHa0RYSG1ZdTcvN0NTN3drNXA0cmhu?=
 =?utf-8?B?ZEEwOVBRNmFGOXNLTWxubkNmdFVQa2Z3NEVHejN5d2UrMEVxS2N2blo0VkVU?=
 =?utf-8?B?SHdwN0tVRnA5K0x6ZUtUdHVreUtzelpJWnJ4UkV3KytBcVJwNjFTUGRWQXpN?=
 =?utf-8?B?NnlmNFl6OGxpcTB0OUl5b0FGKzhobWt3TUVadHJmNWtiYWVBNHF6Y0dtWjdu?=
 =?utf-8?B?TU9WZWp2dytNYm81MXkxSVJyM2hDZk1QZlVDMURHMnNjOUZnM1NQWkZ6NHdW?=
 =?utf-8?B?ZjBpTnRpYTJUMkdURkxUWGYzNmJYbFREOEVubUZzOUZlQmpQNHUrSmI2cjQz?=
 =?utf-8?B?ZVYydmc2UVRHZWJZREhobThlbjNCeEZBZ0tEOWFnZGJoV0EzZHR3K0hMUFl4?=
 =?utf-8?B?QTM4NDhwR0dlbHg0MzJLK2hZTVpmZDViSXc4TzgwTERRTkJqNDZCRnVkNUxB?=
 =?utf-8?B?VWMwbk5PNnIySGExRmZGb2xKdTI5M2M1WUhXenBrNU02T1cyMlMwZ1dsd1dP?=
 =?utf-8?B?V21EKzRCV1Z3aUx0L1p4cFUzbnZsUXNOQ0dDVFVEMFk5Q2dVN2l6SDNXSzdi?=
 =?utf-8?B?V214cldYVHM2bGJpRE95RjJJV3FxYloyOVJNZ0hyNXhxNzhpT1FORmVqZ2Nv?=
 =?utf-8?B?QUhhYm1acXprRGZ1UlhqZ3BEb3Ircjk3dlZEM1MyZHJ6cG04TGlOcTNqL3o3?=
 =?utf-8?B?QTFHb3hpMUg2a2RQcnZUTnVuUU5hN1VBVUMrRWNWTkpZbm5yRkl2VEhjSlh1?=
 =?utf-8?B?M0tjNjZDc3hFWWd0OEpOOWdIMXdFbEw3ZzNGTlRDcWlsdVhHWUZCbmE5aW1l?=
 =?utf-8?B?bjhTZXZBYXJTRmE5V094WUMyZ3JYSnpQTTlrOUhjYVhicUZ6RTVxWVdDWVJy?=
 =?utf-8?B?MkpoREoreTF4bFp3cklHSEFrYUM2YUNMZ1N6QjJ6WDhHK3Vrc0lDWStyNDFM?=
 =?utf-8?B?bVRMcVRTRk5wMkFPYnJHZE94STVoM2VCZ0xIRWljK1RncHdpeDZ3VHM3QnNE?=
 =?utf-8?B?bnVQN2Z6ZU9oZkRtbFUxMHdBeW8rS3kxT3JJSDJtL2xMVXBtaWZnaTVjUHhq?=
 =?utf-8?B?b0VkQ21JbkRxK0k4RnBzSXRhNWIveUVNY0ZqZ28xNCs0SjFtd2hLeWhZTDBr?=
 =?utf-8?B?REdpdDZ5czZJVklGYXlkdkJCeGJ3ZXBrZmp6NzBZcXZjMC94c0dJbHdhcjJU?=
 =?utf-8?B?NkJXang2UFRwbGpENHJ0MW55L1lCYk9yYmlMYktZakYrWGVPTmtNVUJ6VHJm?=
 =?utf-8?B?NDVndy9rU3lYcml0OXZIT0NuYXlSQUR3OUw1M1kyN003QWwzeG1YRDNKeTlk?=
 =?utf-8?B?VGhELzVuWE0vMFE9PQ==?=
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: e951a15e-1f69-4d2f-b0af-08dbc680c25e
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Oct 2023 15:27:32.6163
 (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: 024AZqLxJc1OVqH1qAZva/haEye4FML3SvAMHNzD3pSCJwUvuo/IANZlZ22Pmy00GvG810cKKzg8hCZqyqVHTw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN2PR03MB5312

On Fri, Oct 06, 2023 at 04:09:19PM +0100, Julien Grall wrote:
> 
> 
> On 06/10/2023 15:44, Andrew Cooper wrote:
> > From: Alejandro Vallejo <alejandro.vallejo@cloud.com>
> > 
> > Adds a new compile-time flag to allow disabling PDX compression and
> > compiles out compression-related code/data. It also shorts the pdx<->pfn
> > conversion macros and creates stubs for masking functions.
> > 
> > While at it, removes the old arch-defined CONFIG_HAS_PDX flag.  Despite the
> > illusion of choice, it was not optional.
> > 
> > There are ARM and PPC platforms with sparse RAM banks - leave compression
> > active by default there.  OTOH, there are no known production x86 systems with
> > sparse RAM banks, so disable compression.  This decision can be revisited if
> > such a platform comes along.
> 
> (Process remarks rather than the code itself)
> 
> Jan is away this week so I want to make sure this doesn't go in without him
> having a say.
> 
> While I don't particularly care about the approach taken for x86, Jan voiced
> concerned with this approach and so far I didn't see any conclusion. If
> there is any, then please point me to them.
> 
> For the record, the objections from Jan are in [1]. If we want to ignore
> them, then I think we need a vote. Possibly only from the x86 folks (?).

I would be fine in leaving the option to be selected if we knew that
such x86 systems might be feasible, but so far we have seen 0 x86
systems with sparse RAM.  That said, I don't have a strong opinion, but
the hiding on x86 seems fine to me.  Interested parties can always
forcefully select the option, and a case can be made to make it
available again on Kconfig.

I'm fine with waiting for Jan, in case he has more to add.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Fri Oct 06 15:36:39 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 15:36:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613738.954486 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qomsT-00063k-OJ; Fri, 06 Oct 2023 15:36:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613738.954486; Fri, 06 Oct 2023 15:36: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 1qomsT-00063c-Ln; Fri, 06 Oct 2023 15:36:33 +0000
Received: by outflank-mailman (input) for mailman id 613738;
 Fri, 06 Oct 2023 15:36: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=bl8M=FU=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qomsS-00063W-HA
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 15:36:32 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 1eb52248-645e-11ee-9b0d-b553b5be7939;
 Fri, 06 Oct 2023 17:36:30 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id B4E3A4EE073E;
 Fri,  6 Oct 2023 17:36: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: 1eb52248-645e-11ee-9b0d-b553b5be7939
MIME-Version: 1.0
Date: Fri, 06 Oct 2023 17:36:29 +0200
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: Julien Grall <julien@xen.org>
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, Simone Ballarin <simone.ballarin@bugseng.com>, Doug
 Goldstein <cardoe@cardoe.com>, George Dunlap <george.dunlap@citrix.com>, Wei
 Liu <wl@xen.org>
Subject: Re: [XEN PATCH][for-4.19 1/9] xen/include: add macro LOWEST_POW2
In-Reply-To: <01fd528d-845d-4342-a17a-e080a921273f@xen.org>
References: <cover.1696514677.git.nicola.vetrini@bugseng.com>
 <d27f52eaaa62ec4ebb9ce8b6cf243779d341367d.1696514677.git.nicola.vetrini@bugseng.com>
 <6102db25-2fd6-49fa-be66-ec2b627b019b@xen.org>
 <0197ecdcc5869dddecc98907f67ba0f1@bugseng.com>
 <63f172c1-bda5-447b-bc8b-90563f3f3c2a@xen.org>
 <4ecd59b63bc5b7b8f4c24672432ba027@bugseng.com>
 <01fd528d-845d-4342-a17a-e080a921273f@xen.org>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <377546c8b21ad375c0fcdd8372db65ac@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 06/10/2023 16:35, Julien Grall wrote:
> Hi Nicola,
> 
> On 06/10/2023 11:34, Nicola Vetrini wrote:
>> On 06/10/2023 12:22, Julien Grall wrote:
>>> On 06/10/2023 11:02, Nicola Vetrini wrote:
>>>> On 06/10/2023 11:29, Julien Grall wrote:
>>>>> Hi,
>>>>> 
>>>>> On 06/10/2023 09:26, Nicola Vetrini wrote:
>>>>>> The purpose of this macro is to encapsulate the well-known 
>>>>>> expression
>>>>>> 'x & -x', that in 2's complement architectures on unsigned 
>>>>>> integers will
>>>>>> give 2^ffs(x), where ffs(x) is the position of the lowest set bit 
>>>>>> in x.
>>>>>> 
>>>>>> A deviation for ECLAIR is also introduced.
>>>>> 
>>>>> Can you explain why this is a deviation in ECLAIR rather than one 
>>>>> with
>>>>> /* SAF-* */ (or whichever name we decide to rename to)? Is this
>>>>> because the code is correct from MISRA perspective but the tool is
>>>>> confused?
>>>>> 
>>>> 
>>>> The code does violate Rule 10.1 (a unary minus applied to an 
>>>> unsigned value is
>>>> deemed inappropriate by MISRA), but rather than changing a whole lot 
>>>> of places where this
>>>> construct is used (mainly in x86 code), the reasoning is that it 
>>>> makes more sense to isolate
>>>> it and justify its presence by the fact that on 2's complement 
>>>> architectures the result is
>>>> indeed correct.
>>> 
>>> This is explaining to me why you are adding LOWEST_POW2(). But this
>>> doesn't explain why you are not using /* SAF-* */ on top of
>>> LOWEST_POW2().
>>> 
>>> To me, we should only use ECLAIR specific deviation when this is a
>>> shortcoming with the tool.
>>> 
>>> Cheers,
>> 
>> Because of the way ECLAIR deviation comments work implies that in most 
>> cases the real
>> place where to put the deviation is the usage site
>> (the so-called top expansion location of the macro). Now, for 
>> widely-used macros this is
>> cumbersome and would clutter the code unnecessarily. It's way cleaner 
>> imo to have a single
>> line in the configuration with a clear justification that is present 
>> in the textual output
>> of the tool.
> 
> Just to clarify, you are saying that the following would not work for 
> Eclair:
> 
> /* SAF-XXX */
> #define LOWEST_POW2()
> 
> Instead you would need the following:
> 
> void foo()
> {
> 	/* SAF-XXX */
> 	LOWEST()
> }
> 
> Am I correct? If so, would something like below (untested) work?
> 
> #define LOWEST_POW2(...) ({ \
>    /* SAFE-XXX */           \
>    ...
>    })
> 

Option (2) would work. I'm not sure about (3), I'll test it.

>> But then there are tool interoperability considerations, that would 
>> call for standardized
>> deviation mechanisms, if they do detect this as a violation (which I 
>> don't know).
> 
> I don't think we need to know whether a tool detects it. We only need
> to know whether this is  violation to MISRA. If this is one, then this
> is a call to have a marker in the code.
> 
> If this is a false positive, then adding the deviation in the tool
> configuration is best (unless there are multiple tools affected).
> 

This is definitely a MISRA violation.

>> 
>> In the end, it could be done with a textual deviation, if that's 
>> preferred, but keep in mind
>> that those are more fragile w.r.t. code movement.
> 
> If the comment is around the macro there are limited chance that this
> will be missed. But if you are worried about code movement, you should
> be worried about macro renaming with your approach (one may not know
> Eclair has a deviation) and/or function with the same name.
> 

True, but if you introduce a violation on a guideline that is supposed 
to be clean then
the analysis will fail and show what's wrong (not by making the pipeline 
fail right now, but
ideally that's the plan). Reused identifiers are addressed by separate 
rules
(mainly Series 5).

> I am curious to know what the other thinks.
> 
> Cheers,

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


From xen-devel-bounces@lists.xenproject.org Fri Oct 06 16:02:05 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 16:02:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613744.954498 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qonGu-0004kT-Td; Fri, 06 Oct 2023 16:01:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613744.954498; Fri, 06 Oct 2023 16: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 1qonGu-0004kM-Nr; Fri, 06 Oct 2023 16:01:48 +0000
Received: by outflank-mailman (input) for mailman id 613744;
 Fri, 06 Oct 2023 16:01: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=vVKM=FU=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qonGt-0004kG-Gu
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 16:01:47 +0000
Received: from mail-wm1-x335.google.com (mail-wm1-x335.google.com
 [2a00:1450:4864:20::335])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id a5d4567c-6461-11ee-98d3-6d05b1d4d9a1;
 Fri, 06 Oct 2023 18:01:45 +0200 (CEST)
Received: by mail-wm1-x335.google.com with SMTP id
 5b1f17b1804b1-40651a726acso20828325e9.1
 for <xen-devel@lists.xenproject.org>; Fri, 06 Oct 2023 09:01:45 -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
 ay20-20020a05600c1e1400b0040640073d25sm4088608wmb.16.2023.10.06.09.01.44
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Fri, 06 Oct 2023 09: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: a5d4567c-6461-11ee-98d3-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1696608105; x=1697212905; darn=lists.xenproject.org;
        h=content-transfer-encoding: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=Oz3hj6YbxS7+NsoIRQ5kUSI4xOf4m7CXOGyEthgsV8U=;
        b=FIZmcTHrOARBf4j/si5/0X2mRY1zxvm+PNkub7nQGyPWcvjLYdcOqg04+u2kct/B8l
         xZ8HxUX6NechtFqDO6ijs3aEthq0M+Nkxijuu/EGbHlruhue/youtXdr5zsnp+GQZRDT
         vgf49JqwKDH4HQJhec1PeroDEVDdriw69CKeQ=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1696608105; x=1697212905;
        h=content-transfer-encoding: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=Oz3hj6YbxS7+NsoIRQ5kUSI4xOf4m7CXOGyEthgsV8U=;
        b=iwPNG/WSbN4bMkR3S/h2KjU0bcm0ZmFu/AA3SXjw1BGOrBuwUjmy81KXfb7tJ3/1Mu
         audZDBibMJtuJ4VjVZ0opimVORUxBHFCiDt+FWCk0HHkESe9hGYMr34Q+6BFbKgjv689
         epoOgagWkM4pxxMWeWOiX2JBHeu/8CbTQc2UXyBFjBwOlgS0fY9uE8fsQnfkfriCE6kf
         vQjlsu0nAPk/Rn3ER1bpyQW+D0AD0yTgmolY/Rn006pJxtJOuWXqYpHZT8sjV2xOZjfb
         m3dzO8KlyMec4sCKnrIuxonc6Dwu+fkaBJyjpUzJH7eTv8M3096UQQ+7yYemZt1ArnqO
         Jp6w==
X-Gm-Message-State: AOJu0YyKa0blOLwv7XqbCyq+Yc52GnB2qt0FqMeiPTjKdixuukfjD85Y
	2BhgCpKgIR2zhre1cpY0xevIRA==
X-Google-Smtp-Source: AGHT+IGCw/BGyrDkJ6zO6xd5GEX5tZJL+x+v08ooQGglKuEmnoMd2M8YZy7yjI4JdgJywWP9KyIOxQ==
X-Received: by 2002:a05:600c:2044:b0:402:e68f:8896 with SMTP id p4-20020a05600c204400b00402e68f8896mr8166321wmg.0.1696608104666;
        Fri, 06 Oct 2023 09:01:44 -0700 (PDT)
Message-ID: <b95fa9cd-2534-4d7a-9843-2bc71695655d@citrix.com>
Date: Fri, 6 Oct 2023 17:01:43 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH for-4.18 v5] xen/pdx: Make CONFIG_PDX_COMPRESSION a common
 Kconfig option
Content-Language: en-GB
To: Julien Grall <julien@xen.org>, Xen-devel <xen-devel@lists.xenproject.org>
Cc: Alejandro Vallejo <alejandro.vallejo@cloud.com>,
 Julien Grall <jgrall@amazon.com>, =?UTF-8?Q?Roger_Pau_Monn=C3=A9?=
 <roger.pau@citrix.com>, Shawn Anastasio <sanastasio@raptorengineering.com>,
 Oleksii Kurochko <oleksii.kurochko@gmail.com>,
 Henry Wang <Henry.Wang@arm.com>, George Dunlap
 <George.Dunlap@eu.citrix.com>, Jan Beulich <JBeulich@suse.com>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
References: <20231006144405.1078260-1-andrew.cooper3@citrix.com>
 <efc2b22e-6650-4c1f-b4cf-9971d4d08b49@xen.org>
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: <efc2b22e-6650-4c1f-b4cf-9971d4d08b49@xen.org>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 06/10/2023 4:09 pm, Julien Grall wrote:
> 
> 
> On 06/10/2023 15:44, Andrew Cooper wrote:
>> From: Alejandro Vallejo <alejandro.vallejo@cloud.com>
>>
>> Adds a new compile-time flag to allow disabling PDX compression and
>> compiles out compression-related code/data. It also shorts the pdx<->pfn
>> conversion macros and creates stubs for masking functions.
>>
>> While at it, removes the old arch-defined CONFIG_HAS_PDX flag. 
>> Despite the
>> illusion of choice, it was not optional.
>>
>> There are ARM and PPC platforms with sparse RAM banks - leave compression
>> active by default there.  OTOH, there are no known production x86
>> systems with
>> sparse RAM banks, so disable compression.  This decision can be
>> revisited if
>> such a platform comes along.
> 
> (Process remarks rather than the code itself)
> 
> Jan is away this week so I want to make sure this doesn't go in without
> him having a say.
> 
> While I don't particularly care about the approach taken for x86, Jan
> voiced concerned with this approach and so far I didn't see any
> conclusion. If there is any, then please point me to them.
> 
> For the record, the objections from Jan are in [1]. If we want to ignore
> them, then I think we need a vote. Possibly only from the x86 folks (?).


What do you think the 2 x86 maintainer tags on this patch in this exact
form, following far too much wasted time already, represents.  The vote
has already concluded.

~Andrew


From xen-devel-bounces@lists.xenproject.org Fri Oct 06 16:04:02 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 16:04:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613748.954507 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qonJ3-0005SF-Df; Fri, 06 Oct 2023 16:04:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613748.954507; Fri, 06 Oct 2023 16:04: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 1qonJ3-0005S8-AL; Fri, 06 Oct 2023 16:04:01 +0000
Received: by outflank-mailman (input) for mailman id 613748;
 Fri, 06 Oct 2023 16:04: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 1qonJ2-0005Rw-3l; Fri, 06 Oct 2023 16:04: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 1qonJ1-0003IU-Nh; Fri, 06 Oct 2023 16:03: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 1qonJ1-0005g9-E2; Fri, 06 Oct 2023 16:03:59 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qonJ1-0004DT-Dd; Fri, 06 Oct 2023 16:03: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=5xTuarejL/BiU/ZTlc9+YnIVGMNkJ6s96n9fAxX6XXQ=; b=bFK7MF/sJcGPgJrQ/QZa289P3O
	T0CnSRMB9oMX0jwaYfW9RKrF4u0AuEkDmpaLecAEbx9R9X6DjANf2Bl7J3NkholeJclPZkfJdYBbk
	KlvVAVJX0bKkM7IIg2itNVoo8AFkYZ57myc4Isw1DQW48ce2UwpR9DmIqWy3S2Eco9Ow=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183291-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 183291: regressions - FAIL
X-Osstest-Failures:
    xen-unstable-smoke:test-armhf-armhf-xl:guest-start/debian.repeat: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
    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=295514ff7550626de4fb5e43b51deb25d9331cd5
X-Osstest-Versions-That:
    xen=02c98966360b76052779b0186784437af88f301e
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 06 Oct 2023 16:03:59 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-armhf-armhf-xl         18 guest-start/debian.repeat fail REGR. vs. 183270

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                  295514ff7550626de4fb5e43b51deb25d9331cd5
baseline version:
 xen                  02c98966360b76052779b0186784437af88f301e

Last test of basis   183270  2023-10-05 13:03:52 Z    1 days
Testing same since   183272  2023-10-05 16:00:24 Z    1 days    4 attempts

------------------------------------------------------------
People who touched revisions under test:
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.com>
  Roger Pau Monne <roger.pau@citrix.com>
  Roger Pau Monné <roger.pau@citrix.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                                          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 295514ff7550626de4fb5e43b51deb25d9331cd5
Author: Jan Beulich <jbeulich@suse.com>
Date:   Mon Oct 2 17:11:27 2023 +0200

    common: convert vCPU info area registration
    
    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).
    
    Signed-off-by: Jan Beulich <jbeulich@suse.com>
    Reviewed-by: Roger Pau Monné <roger.pau@citrix.com>
    Acked-by: Julien Grall <jgrall@amazon.com>
    Release-acked-by: Henry Wang <Henry.Wang@arm.com>

commit 60e544a8c58fdc720de05f6a721178f9516436d1
Author: Jan Beulich <jbeulich@suse.com>
Date:   Mon Oct 2 17:11:26 2023 +0200

    x86: introduce GADDR based secondary time area registration alternative
    
    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>
    Acked-by: Julien Grall <jgrall@amazon.com>
    Release-acked-by: Henry Wang <Henry.Wang@arm.com>

commit d5df44275e7af690ef18b56cc58762ce33a37149
Author: Jan Beulich <jbeulich@suse.com>
Date:   Mon Oct 2 17:11:25 2023 +0200

    domain: introduce GADDR based runstate area registration alternative
    
    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>
    Acked-by: Julien Grall <jgrall@amazon.com>
    Release-acked-by: Henry Wang <Henry.Wang@arm.com>

commit eadc288cbb0ddc432ff8c9c639fb25b7538325de
Author: Jan Beulich <jbeulich@suse.com>
Date:   Mon Oct 2 17:11:24 2023 +0200

    domain: map/unmap GADDR based shared guest areas
    
    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>
    Reviewed-by: Roger Pau Monné <roger.pau@citrix.com>
    Reviewed-by: Julien Grall <jgrall@amazon.com>
    Release-acked-by: Henry Wang <Henry.Wang@arm.com>

commit c4dde71e3e6961f817e2a574ce4918041cb30fb9
Author: Jan Beulich <jbeulich@suse.com>
Date:   Wed Oct 4 15:53:31 2023 +0200

    x86/mem-sharing: copy GADDR based shared guest areas
    
    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>
    Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
    Acked-by: Tamas K Lengyel <tamas@tklengyel.com>
    Release-acked-by: Henry Wang <Henry.Wang@arm.com>

commit c2e285ea0e6dea9cc6f4578e49d76075a153baa0
Author: Jan Beulich <jbeulich@suse.com>
Date:   Mon Oct 2 17:11:22 2023 +0200

    x86: update GADDR based secondary time area
    
    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>
    Release-acked-by: Henry Wang <Henry.Wang@arm.com>

commit e1ddb822ca2e3c332d42d508e2a5fbd7be018815
Author: Jan Beulich <jbeulich@suse.com>
Date:   Mon Oct 2 17:11:21 2023 +0200

    domain: update GADDR based runstate guest area
    
    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>
    Release-acked-by: Henry Wang <Henry.Wang@arm.com>

commit c4630e316240508f3fb619678adc4cfb47bf13d2
Author: Jan Beulich <jbeulich@suse.com>
Date:   Mon Oct 2 17:11:20 2023 +0200

    domain: GADDR based shared guest area registration alternative - teardown
    
    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>
    Acked-by: Roger Pau Monné <roger.pau@citrix.com>
    Release-acked-by: Henry Wang <Henry.Wang@arm.com>

commit 826da6e30cf37a22b3f32dba33477856125df91b
Author: Jan Beulich <jbeulich@suse.com>
Date:   Mon Oct 2 17:11:19 2023 +0200

    x86/shim: zap runstate and time area handles during shutdown
    
    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>
    Release-acked-by: Henry Wang <Henry.Wang@arm.com>

commit 9a499a84a2724757ad59b684e7858dfb60521290
Author: Roger Pau Monne <roger.pau@citrix.com>
Date:   Mon Oct 2 17:11:18 2023 +0200

    mem_sharing/fork: do not attempt to populate vcpu_info page
    
    Instead let map_vcpu_info() and it's call to get_page_from_gfn()
    populate the page in the child as needed.  Also remove the bogus
    copy_domain_page(): should be placed before the call to map_vcpu_info(),
    as the later can update the contents of the vcpu_info page.
    
    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.
    
    Fixes: 41548c5472a3 ('mem_sharing: VM forking')
    Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
    Acked-by: Tamas K Lengyel <tamas@tklengyel.com>
    Release-acked-by: Henry Wang <Henry.Wang@arm.com>
(qemu changes not included)


From xen-devel-bounces@lists.xenproject.org Fri Oct 06 16:36:04 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 16:36:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613757.954517 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qonnw-0003pk-0d; Fri, 06 Oct 2023 16:35:56 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613757.954517; Fri, 06 Oct 2023 16:35: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 1qonnv-0003pd-Tq; Fri, 06 Oct 2023 16:35:55 +0000
Received: by outflank-mailman (input) for mailman id 613757;
 Fri, 06 Oct 2023 16:35: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=vVKM=FU=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qonnv-0003pT-3D
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 16:35:55 +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 6a57a633-6466-11ee-9b0d-b553b5be7939;
 Fri, 06 Oct 2023 18:35:53 +0200 (CEST)
Received: by mail-wm1-x32f.google.com with SMTP id
 5b1f17b1804b1-40684f53bfcso21214835e9.0
 for <xen-devel@lists.xenproject.org>; Fri, 06 Oct 2023 09:35:53 -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
 y24-20020a7bcd98000000b004064741f855sm4050337wmj.47.2023.10.06.09.35.51
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Fri, 06 Oct 2023 09:35: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: 6a57a633-6466-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1696610152; x=1697214952; darn=lists.xenproject.org;
        h=content-transfer-encoding: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=Mse9fEALa2K/SkaQlfmLnl2odXahkEBxlqPmS4z+I7s=;
        b=mN5oMzOGvzaHOJh3pF6dfW4nKFScq7xIFfADKHssjL0q4eRYkwNNhLs9ECd/dufxG1
         YPdeeAbad6M33C+mDfvadFMGdme2Qj/Olu7sny5TvylVLqBZqatQYfa7BVf5q+X3B2E6
         wJEFuBy4A9CCg81Xt+iUXF1NFq6kiIMEgj01o=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1696610152; x=1697214952;
        h=content-transfer-encoding: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=Mse9fEALa2K/SkaQlfmLnl2odXahkEBxlqPmS4z+I7s=;
        b=sp6x77rEms73Iwdr7BliyeBd7nb+6CqpXQRk41cAApLzJvVFJzQu4+bXz//HByN355
         a5VVUSCHox2Sp2V+4yT7OpwPFDGeNk4QIkPC6suaSjyhGVu+QxIMjtsqPQnqTWK7+rbC
         dzoXrgD+xhXX8/n18Fep8n/vJaVrI/tB2GCFMHjqSLrH1c496A1pQwP+9cPYkdwvb5xw
         CIi13fxh82bilDwSfpSJDhHS0cP3LtLiGW12pyajKXAYStnaQkGyCC1hTXbi8uT6PgLD
         3ABZIJN2ju1IFB3AAKkn8SOoxEMATcczJznyfYjX63fWlsNkXRyuD8JeuLf9GlAU2RWx
         sW1Q==
X-Gm-Message-State: AOJu0YzRzA9ON77hkcl1aI5iHT55a4/mGxKsrwwnIDYMhNIH/7accyxt
	+pEoDSveblfg4Iiwe16+IKYTbA==
X-Google-Smtp-Source: AGHT+IHMZ5Ybq0LocD7iKi/g/0ZdnIKUxo9ZbiiFNPGyIv44IcWio+FUmQbX4klcGuQOUg3Yg1BqtQ==
X-Received: by 2002:a05:600c:214f:b0:405:3251:47a1 with SMTP id v15-20020a05600c214f00b00405325147a1mr8100976wml.40.1696610152390;
        Fri, 06 Oct 2023 09:35:52 -0700 (PDT)
Message-ID: <fadc9eb9-152b-4956-8809-1188a706eac6@citrix.com>
Date: Fri, 6 Oct 2023 17:35:51 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
From: andrew.cooper3@citrix.com
Subject: Re: [XEN PATCH][for-4.19 1/9] xen/include: add macro LOWEST_POW2
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, Simone Ballarin <simone.ballarin@bugseng.com>,
 Doug Goldstein <cardoe@cardoe.com>, George Dunlap
 <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Wei Liu <wl@xen.org>
References: <cover.1696514677.git.nicola.vetrini@bugseng.com>
 <d27f52eaaa62ec4ebb9ce8b6cf243779d341367d.1696514677.git.nicola.vetrini@bugseng.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: <d27f52eaaa62ec4ebb9ce8b6cf243779d341367d.1696514677.git.nicola.vetrini@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit

On 06/10/2023 9:26 am, Nicola Vetrini wrote:
> diff --git a/xen/include/xen/macros.h b/xen/include/xen/macros.h
> index d0caae7db298..bb9a1c9a53d0 100644
> --- a/xen/include/xen/macros.h
> +++ b/xen/include/xen/macros.h
> @@ -8,8 +8,10 @@
>  #define DIV_ROUND(n, d) (((n) + (d) / 2) / (d))
>  #define DIV_ROUND_UP(n, d) (((n) + (d) - 1) / (d))
>  
> -#define MASK_EXTR(v, m) (((v) & (m)) / ((m) & -(m)))
> -#define MASK_INSR(v, m) (((v) * ((m) & -(m))) & (m))
> +#define LOWEST_POW2(x) ((x) & -(x))

Naming wise, LOWEST_BIT() please.

The fact it's a power of two is incidental, and POW2 is ambiguous,
because it includes interpretations such as "calculate the lowest power
of two greater than x".

~Andrew


From xen-devel-bounces@lists.xenproject.org Fri Oct 06 17:16:20 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 17:16:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613761.954527 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qooQl-00020I-W3; Fri, 06 Oct 2023 17:16:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613761.954527; Fri, 06 Oct 2023 17: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 1qooQl-00020B-Sx; Fri, 06 Oct 2023 17:16:03 +0000
Received: by outflank-mailman (input) for mailman id 613761;
 Fri, 06 Oct 2023 17:16: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=vVKM=FU=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qooQl-000205-6V
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 17:16:03 +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 0459ce24-646c-11ee-9b0d-b553b5be7939;
 Fri, 06 Oct 2023 19:15:58 +0200 (CEST)
Received: by mail-wm1-x335.google.com with SMTP id
 5b1f17b1804b1-406618d080eso22470485e9.2
 for <xen-devel@lists.xenproject.org>; Fri, 06 Oct 2023 10:15:58 -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
 p15-20020a7bcc8f000000b003fee6e170f9sm4135382wma.45.2023.10.06.10.15.57
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Fri, 06 Oct 2023 10:15: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: 0459ce24-646c-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1696612558; x=1697217358; 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=pNWvy7BHUD/YMjuNX6o/apal2zMJkBxILDvNWBBy4uo=;
        b=vZxUoUOjW6Ad5Hq92bpDG+IOfQCcCr2aNtYOYD4mjGRYvXWVS4A8DaWZkQbRTvOHDx
         9Bf/4ONu96dnt6uhMOP6vtiKWxQn0Dfddc8EayEzlx+cXtOJx0Ekm/aba6DMnpFyegUm
         RPXDVasYINt2Zc55lYParyc7oxqwGaNLwVusY=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1696612558; x=1697217358;
        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=pNWvy7BHUD/YMjuNX6o/apal2zMJkBxILDvNWBBy4uo=;
        b=EnwPfA+3rtNy9+Br25h6H5GRxYMkojIkXD1DbQykeyJbfftIKeixtkH6Z2k9zicjj/
         MzPrerhkM+6VBq6pJToX0eLmQtDLjJM1POhMw+ZzaGqpJlWAfY2zAGZYU+/F2irpfmyr
         GSUo3RhPR7nWyfFlT0d9RehmXa3Eo04WGLJObZ+S8L5SucoGAxa7LoEq1+BH1Edu18OY
         2JuZMK6VN6+141LFTB0HZ7qcG8j7ObDkDX97TZNNlQ5B0n1ghAWuZ8RbKtMHxuftYP/a
         Saj7Plb2pGh9kR8pcTtvN4BnbyqnpJOzdHeiXFJQwy4UywSxmMq2IG5MQgeBfmynHV6M
         JIAw==
X-Gm-Message-State: AOJu0YxfJlKgVVlHZPKN7QYURYpFRicMwIlfE9d++FecL8tBVvwiB5cs
	Tan+Ay5Oc2zjShtewG71F1D2Tw==
X-Google-Smtp-Source: AGHT+IE2QeMtyOwYh3IXa7wqYU8Zrfr8W7YutlN5yhjnIvKdZoayYCLGHKahsem1DeKtARmpQJ4gcA==
X-Received: by 2002:a7b:cbd5:0:b0:403:9b7:a720 with SMTP id n21-20020a7bcbd5000000b0040309b7a720mr8452647wmi.1.1696612558298;
        Fri, 06 Oct 2023 10:15:58 -0700 (PDT)
Message-ID: <063309b4-d66f-47f4-ba9e-c709ad1ab31e@citrix.com>
Date: Fri, 6 Oct 2023 18:15:57 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH] tools/xenpvboot: remove as unable to convert to Python 3
Content-Language: en-GB
To: Roger Pau Monne <roger.pau@citrix.com>, xen-devel@lists.xenproject.org
Cc: Henry Wang <Henry.Wang@arm.com>,
 Community Manager <community.manager@xenproject.org>, Wei Liu <wl@xen.org>,
 Anthony PERARD <anthony.perard@citrix.com>
References: <20231006145046.98450-1-roger.pau@citrix.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: <20231006145046.98450-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 06/10/2023 3:50 pm, Roger Pau Monne wrote:
> diff --git a/tools/misc/Makefile b/tools/misc/Makefile
> index 233a7948c050..9938bc235968 100644
> --- a/tools/misc/Makefile
> +++ b/tools/misc/Makefile
> @@ -36,11 +36,8 @@ INSTALL_SBIN                   += xen-livepatch
>  INSTALL_SBIN                   += xen-diag
>  INSTALL_SBIN += $(INSTALL_SBIN-y)
>  
> -# Everything to be installed in a private bin/
> -INSTALL_PRIVBIN                += xenpvnetboot
> -
>  # Everything to be installed
> -TARGETS_ALL := $(INSTALL_BIN) $(INSTALL_SBIN) $(INSTALL_PRIVBIN)
> +TARGETS_ALL := $(INSTALL_BIN) $(INSTALL_SBIN)
>  
>  # Everything which only needs copying to install
>  TARGETS_COPY += xencov_split

FYI.

Just out of context here is one more reference.  I've folded in the
following hunk.

diff --git a/tools/misc/Makefile b/tools/misc/Makefile
index 9938bc235968..66d0d6b09029 100644
--- a/tools/misc/Makefile
+++ b/tools/misc/Makefile
@@ -41,7 +41,6 @@ TARGETS_ALL := $(INSTALL_BIN) $(INSTALL_SBIN)
 
 # Everything which only needs copying to install
 TARGETS_COPY += xencov_split
-TARGETS_COPY += xenpvnetboot
 
 # Everything which needs to be built
 TARGETS := $(filter-out $(TARGETS_COPY),$(TARGETS_ALL))

~Andrew


From xen-devel-bounces@lists.xenproject.org Fri Oct 06 17:57:19 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 17:57:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613793.954560 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qop4c-0000Zo-H0; Fri, 06 Oct 2023 17:57:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613793.954560; Fri, 06 Oct 2023 17: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 1qop4c-0000Zh-E1; Fri, 06 Oct 2023 17:57:14 +0000
Received: by outflank-mailman (input) for mailman id 613793;
 Fri, 06 Oct 2023 17: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=vVKM=FU=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qop4a-0000ZV-AT
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 17:57:12 +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 c561ddec-6471-11ee-9b0d-b553b5be7939;
 Fri, 06 Oct 2023 19:57:10 +0200 (CEST)
Received: by mail-wr1-x42d.google.com with SMTP id
 ffacd0b85a97d-31427ddd3fbso2328077f8f.0
 for <xen-devel@lists.xenproject.org>; Fri, 06 Oct 2023 10:57: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
 i14-20020a05600c354e00b004068de50c64sm4103236wmq.46.2023.10.06.10.57.08
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Fri, 06 Oct 2023 10: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: c561ddec-6471-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1696615029; x=1697219829; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:autocrypt:content-language
         :references:cc:to:subject:from:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=cTLquPLV/NW4dTlK3IWqIvCdSwrVNdf8Cd7ENbWYK1Y=;
        b=IsocByg0zNW3vQh3OD2g0bNEqJOc4Af81zMycv9IFOcRnY8QgeKDYTm73PwYrPCnwk
         yGhlsQhhEqFBUc4kYXAqRJ8Yx06jleKPWrvN8TsOo77Z77fmnh3oH16O60WtIVuOmnaX
         qaloyWwz4bw1myalXhau+V6WVeQO7qCsDXiDQ=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1696615029; x=1697219829;
        h=content-transfer-encoding:in-reply-to:autocrypt: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=cTLquPLV/NW4dTlK3IWqIvCdSwrVNdf8Cd7ENbWYK1Y=;
        b=H+CTlgxkDs00CzdFnjt2iPqiq8nG6KhOrQ/K0H22jhaNfmdJT/MbL9CNv7TMUORs0e
         SBjyEeqcTfDtGs5AZAo5yMv6a1TEeQ4vEf+346yTNAklpi3nGPnDCZOD/IfPmhxjUoOl
         /NAyYxjn+kPNYPmMaz4ClVh1qsNy0PMulnymp/673Uu4JnE4sh0QPJ/dHrogDFCZ7sN/
         7rtQ6iJScXe2qFI7H6tRSQeF/wcqjBme2U9bpYDEm45WrgGViZ1lrTwucD7lzxMhccpJ
         0oSTmIkGBZCQi+ygUFDh2FUcXfoEl+uizZqAF6W0bJ4ywvW9WCzYQinefeAD3tEK1FhE
         enDg==
X-Gm-Message-State: AOJu0Yx60vS68Bxd8aMXgZr45TJdl4/CVz4k9rBi2qRuUByhz0KzlDfK
	67kheJxCaCXczvcnr3kBp8TvHw==
X-Google-Smtp-Source: AGHT+IF4jM3Qr8xMgKwA/pNmRLuyuCvS3NdguTr4xQhPuZSZse08fyH97eicHEJYVGIjqFzlM+EvNA==
X-Received: by 2002:a05:6000:1102:b0:323:37af:c7c7 with SMTP id z2-20020a056000110200b0032337afc7c7mr7987262wrw.69.1696615029579;
        Fri, 06 Oct 2023 10:57:09 -0700 (PDT)
Message-ID: <91d900b5-1298-4bb3-bd3d-6a829819a030@citrix.com>
Date: Fri, 6 Oct 2023 18:57:08 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [XEN PATCH 5/9] x86/cpu-policy: address violations of MISRA C
 Rule 10.1
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>
References: <cover.1696514677.git.nicola.vetrini@bugseng.com>
 <463572d126a7700e5e90ef3a49104bd4b8c1c389.1696514677.git.nicola.vetrini@bugseng.com>
Content-Language: en-GB
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: <463572d126a7700e5e90ef3a49104bd4b8c1c389.1696514677.git.nicola.vetrini@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 06/10/2023 9:26 am, Nicola Vetrini wrote:
> The COUNT_LEAVES macro is introduced to avoid using an essentially
> boolean value in a subtraction.
>
> No functional change.
>
> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
> ---
>  xen/include/xen/lib/x86/cpu-policy.h | 13 +++++++------
>  1 file changed, 7 insertions(+), 6 deletions(-)
>
> diff --git a/xen/include/xen/lib/x86/cpu-policy.h b/xen/include/xen/lib/x86/cpu-policy.h
> index bab3eecda6c1..700993cc67e8 100644
> --- a/xen/include/xen/lib/x86/cpu-policy.h
> +++ b/xen/include/xen/lib/x86/cpu-policy.h
> @@ -95,17 +95,18 @@ const char *x86_cpuid_vendor_to_str(unsigned int vendor);
>  #define CPUID_GUEST_NR_EXTD       MAX(CPUID_GUEST_NR_EXTD_INTEL, \
>                                        CPUID_GUEST_NR_EXTD_AMD)
>  
> +#define COUNT_LEAVES(X) ((X) - ((X) ? 1 : 0))
>  /*
>   * Maximum number of leaves a struct cpu_policy turns into when serialised for
>   * interaction with the toolstack.  (Sum of all leaves in each union, less the
>   * entries in basic which sub-unions hang off of.)
>   */
> -#define CPUID_MAX_SERIALISED_LEAVES                     \
> -    (CPUID_GUEST_NR_BASIC +                             \
> -     CPUID_GUEST_NR_FEAT   - !!CPUID_GUEST_NR_FEAT +    \
> -     CPUID_GUEST_NR_CACHE  - !!CPUID_GUEST_NR_CACHE +   \
> -     CPUID_GUEST_NR_TOPO   - !!CPUID_GUEST_NR_TOPO +    \
> -     CPUID_GUEST_NR_XSTATE - !!CPUID_GUEST_NR_XSTATE +  \
> +#define CPUID_MAX_SERIALISED_LEAVES         \
> +    (CPUID_GUEST_NR_BASIC +                 \
> +     COUNT_LEAVES(CPUID_GUEST_NR_FEAT) +    \
> +     COUNT_LEAVES(CPUID_GUEST_NR_CACHE) +   \
> +     COUNT_LEAVES(CPUID_GUEST_NR_TOPO) +    \
> +     COUNT_LEAVES(CPUID_GUEST_NR_XSTATE) +  \
>       CPUID_GUEST_NR_EXTD + 2 /* hv_limit and hv2_limit */ )

This may not have been a MISRA-approved calculation, but encapsulating
it like this breaks any ability to follow what's going on.

CPUID data in x86 is mostly a sparse 1-D array (BASIC, EXTD, HV blocks),
but a couple of elements in the BASIC array have arrays themselves.

The struct is laid out for O(1) access, so you can't just say
sizeof(struct) / sizeof(element).  The BASIC array has elements (0x4,
0x7, 0xb, 0xd) which hold no data because there's actually an array
elsewhere containing all the data.

So logically, it's:

(BASIC + (FEAT - 1) + (CACHE - 1) + (TOPO - 1) + (XSTATE - 1)) + EXTD + 2

And in practice I'd far rather express it with a plain -1 than a -
!!NR_, if the latter isn't an option.

Presumably MISRA would be happy with that?

If so, I can submit a patch.  There's also a typo in that the comment
that wants fixing.

~Andrew


From xen-devel-bounces@lists.xenproject.org Fri Oct 06 18:54:30 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 18:54:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613802.954570 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qopxt-0000XN-Hs; Fri, 06 Oct 2023 18:54:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613802.954570; Fri, 06 Oct 2023 18:54: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 1qopxt-0000XG-Ea; Fri, 06 Oct 2023 18:54:21 +0000
Received: by outflank-mailman (input) for mailman id 613802;
 Fri, 06 Oct 2023 18:54: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=LN/y=FU=citrix.com=prvs=63610b956=Andrew.Cooper3@srs-se1.protection.inumbo.net>)
 id 1qopxr-0000VZ-K6
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 18:54:19 +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 bd9498bb-6479-11ee-9b0d-b553b5be7939;
 Fri, 06 Oct 2023 20:54: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: bd9498bb-6479-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1696618455;
  h=from:to:cc:subject:date:message-id:mime-version:
   content-transfer-encoding;
  bh=Om+X/N6E2jDFei7jy3ZFPxBuupW7Zfo7NoJMoWmL0Ik=;
  b=BspI1zR0fx1RPXc1JVuMChqHEwBY729Oaw0kSXKiAViRer1LRMzBOwA4
   HGQ/eqOFEXayQahvM/WHvi6aclKlw3bAuyimOwUv4UVzjMHwDdjhqGOWi
   n0fsisAuSnm4AHlo1/4vjIRp2bLR5zVcp/q6BOZ3RnAbBMP4VTMRD9rlO
   U=;
X-CSE-ConnectionGUID: FvEREW8TSwKmhlQAgEn1mw==
X-CSE-MsgGUID: hjgEgPX5RSq2XyppzJs/xQ==
Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
X-SBRS: 4.0
X-MesageID: 125288251
X-Ironport-Server: esa1.hc3370-68.iphmx.com
X-Remote-IP: 162.221.159.70
X-Policy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:ocEy7asMSPjCdeYdj2BLibeXN+fnVIFeMUV32f8akzHdYApBsoF/q
 tZmKW+PPvePZDPzL4wgb4q+9hgAup7Uz9NnSQBoqXpnQi0R+JbJXdiXEBz9bniYRiHhoOCLz
 O1FM4Wdc5pkJpP4jk3wWlQ0hSAkjclkfpKlVaicfHg3HFc4IMsYoUoLs/YjhYJ1isSODQqIu
 Nfjy+XSI1bg0DNvWo4uw/vrRChH4rKq41v0gnRkPaoQ5QeGySFMZH4iDfrZw0XQE9E88tGSH
 44v/JnhlkvF8hEkDM+Sk7qTWiXmlZaLYGBiIlIPM0STqkAqSh4ai87XB9JFAatjsB2bnsgZ9
 Tl4ncfYpTHFnEH7sL91vxFwS0mSNEDdkVPNCSDXXce7lyUqf5ZwqhnH4Y5f0YAwo45K7W9yG
 fMwBi4gVD28196N35G+Su1Vr8sOKpDuI9ZK0p1g5Wmx4fcORJnCR+PB5MNC3Sd2jcdLdRrcT
 5NHM3w1Nk2GOkAefAhPYH49tL7Aan3XWjtUsl+K44Ew5HDe1ldZ27nxKtvFPNeNQK25m27B/
 D+crzSjX0hy2Nq3yTiK332UtrL1pjqhaJMKDK+a7bl6uQjGroAUIEJPDgbqyRWjsWauVtQaJ
 0EK9y4Gqakp6FftXtT7Rwe/onOPolgbQdU4O88Q5RyJy6HUyx2EHWVCRTlEAPQ9r9M/TzEu0
 l6PnvvqCCZpvbnTTmiSnp+LqRuiNC5TKnUNDQcGUA8E7t/LsIw1yBXVQb5LFa++jtTxXzbq0
 T2OhCE7i/MYistj/4W2+0rWxQ2loJfhRxQwoA7QWwqYAhhRPdD/IdbysB6CsKcGc97xokS9U
 GYstdaz1s0xXa22iw+IQOE0Nb6E4a+AL2iJ6bJwJKXN5whB6lb6I9EOvWAuehwwWioXUWW3O
 hKP52u98LcWbCPzMvEtC26kI5lypZUMA+gJQRw9gjBmWp90bAaB+2lEaEeb3wgBe2B3yvlhZ
 /93nSu2ZEv26JiLLxLsHY/xKZdxmkgDKZr7HPgXNSiP37uEf2KyQrwYKlaIZe1RxPra8VuIq
 I4ObpPUl0Q3vAjCjs7/qNF7ELz3BSJjWcCeRzJ/KYZv3TaK6El+UqSMkNvNiqRunrhPl/egw
 51OchYw9bYLvlWecV/iQik6NNvSsWNX8SpT0doEYQz5hBDOoO+HsM8iSnfAVeN3qrQzkK8lE
 KFtlgfpKq0ndwkrMg81NfHVxLGOvjzy7e5SF0JJuAQCQqM=
IronPort-HdrOrdr: A9a23:lmKNDqCu3k+qvWvlHeme55DYdb4zR+YMi2TDtnofdfUxSKelfq
 +V7ZAmPHPP6Qr5IUtQ+uxoW5PvfZq/z+8W3WB5B97LNmSLhILPFvAG0WKI+V3d8kPFh5dg/J
 YlX69iCMDhSXhW5PyKmDVQyuxQp+VvJprY49vj8w==
X-Talos-CUID: 9a23:ImPhjWM4pFTqYu5DdjdKzmMrSvwebV7YzHPpCkCVDz9sV+jA
X-Talos-MUID: 9a23:avAD0wY+x9vBbeBTtz3jqT5aBJpS2L30OFEViYckoI6UDHkl
X-IronPort-AV: E=Sophos;i="6.03,204,1694750400"; 
   d="scan'208";a="125288251"
From: Andrew Cooper <andrew.cooper3@citrix.com>
To: Xen-devel <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, George Dunlap
	<George.Dunlap@eu.citrix.com>, Jan Beulich <JBeulich@suse.com>, "Stefano
 Stabellini" <sstabellini@kernel.org>, Wei Liu <wl@xen.org>, Julien Grall
	<julien@xen.org>, Michal Orzel <michal.orzel@amd.com>, Henry Wang
	<Henry.Wang@arm.com>
Subject: [PATCH for-4.18 v2 0/2] docs:Clarify that only 5 hypercall parameters are supported
Date: Fri, 6 Oct 2023 19:54:00 +0100
Message-ID: <20231006185402.1098400-1-andrew.cooper3@citrix.com>
X-Mailer: git-send-email 2.30.2
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain

An extention to the original patch Michal did, providing the historical
context.

Arguably for backport to 4.17.

Andrew Cooper (1):
  docs/spnix: Switch hypercall-abi.rst to named footnotes

Michal Orzel (1):
  x86: Clarify that only 5 hypercall parameters are supported

 docs/guest-guide/x86/hypercall-abi.rst   | 39 ++++++++++++++----------
 xen/include/public/arch-x86/xen-x86_32.h |  2 +-
 xen/include/public/arch-x86/xen-x86_64.h |  2 +-
 3 files changed, 25 insertions(+), 18 deletions(-)


base-commit: 01343f99de858c7e24bcfcb4ad4fc584559bcc08
-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Fri Oct 06 18:54:30 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 18:54:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613803.954576 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qopxt-0000am-RE; Fri, 06 Oct 2023 18:54:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613803.954576; Fri, 06 Oct 2023 18:54: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 1qopxt-0000Zs-Lx; Fri, 06 Oct 2023 18:54:21 +0000
Received: by outflank-mailman (input) for mailman id 613803;
 Fri, 06 Oct 2023 18:54: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=LN/y=FU=citrix.com=prvs=63610b956=Andrew.Cooper3@srs-se1.protection.inumbo.net>)
 id 1qopxs-0000VZ-Mk
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 18:54:20 +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 c0d2ed51-6479-11ee-9b0d-b553b5be7939;
 Fri, 06 Oct 2023 20:54: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: c0d2ed51-6479-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1696618458;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=2uX+SHBDUuq7urjzE6lLyQyHdoxcJfW0g6f2j1ELSfY=;
  b=Ari9gFR8upEq6vbnQ/O73bvai/CDX0qdF4odcCb9clakxuLwCRS6M8wA
   Co+4P9ag6bjilsZW+9nnQBci1FGONA0JCzgvJTttRwFpb2p1X5RUpOjhI
   BDxdStDmdbuLCJaBLiwS0XAEUZvle682iLqvz0MQay6a/MuFkcGUVh0Cx
   M=;
X-CSE-ConnectionGUID: FvEREW8TSwKmhlQAgEn1mw==
X-CSE-MsgGUID: U5FcZ4ZQTzquIYfDl+/Q/A==
Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
X-SBRS: 4.0
X-MesageID: 125288252
X-Ironport-Server: esa1.hc3370-68.iphmx.com
X-Remote-IP: 162.221.159.70
X-Policy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:t0Lb0qk0J3uwuUk/Er/l0gPo5gxWJkRdPkR7XQ2eYbSJt1+Wr1Gzt
 xJLUG/Ua/eJZzShcth0PN+29B8DvsLQx4JjTAVt+CxnQiMWpZLJC+rCIxarNUt+DCFhoGFPt
 JxCN4aafKjYaleG+39B55C49SEUOZmgH+e6UKicfHkpGWeIcQ954Tp7gek1n4V0ttawBgKJq
 LvartbWfVSowFaYCEpNg064gE0p5K+aVA8w5ARkPqkT5AGGzhH5MbpETU2PByqgKmVrNrbSq
 9brlNmR4m7f9hExPdKp+p6TnpoiG+O60aCm0xK6aoD66vRwjnVaPpUTbZLwXXx/mTSR9+2d/
 f0W3XCGpaXFCYWX8AgVe0Ew/yiTpsSq8pefSZS0mZT7I0Er7xIAahihZa07FdRwxwp5PY1B3
 dIGBQogUUC/vP2VxbK/c8Bjq8J6Kda+aevzulk4pd3YJfMvQJSFSKTW/95Imjw3g6iiH96HO
 ZBfM2A2Kk2dMlsQYj/7C7pn9AusrlD5fydVtxS+oq0v7nKI5AdwzKLsIJzefdniqcB9xxzF/
 DKWpTmjav0cHOHC5zG3rkCVuv3WgALKVq4WV/qBsdc/1TV/wURMUUZLBDNXu8KRmkO4Ht5SN
 UEQ0i4vtrQpslymSMHnWB+1q2LCuQQTM/JyOeAn7ACGyoLP/h2UQGMDS1Zpc8c6vcU7QTgr0
 F6hnN7zAzFr9rqPRhq16bO8vT60fy8PIgcqZzIATAYDy8nupsc0lB2nZtNiG668ipvyAyP9x
 xiDqSR4jLIW5eYr2qOh7Bb4ijSjjpHTS0g+4QC/Y46+xlonPsj/PdXusAWKq6kYRGqEcrWfl
 FYatvKz07AyNo6ukSyJecwCMbfw4unQZVUwnmVT84kdGyWFoiDyI90BsG8lfS+FIe5eJ2W0P
 BG7VRd5oc8LZST0N8ebdqrsU6wXIb7c+cMJvxw+RuJJZ4B4cgjP1ixnbk74M4vFyxN0z/9X1
 Xt2a6+R4Zcm5UdPlmDeqx81i+ND+8zH7Tq7qWrH5xqmy6GCQ3WeVK0INlCDBshgsvLa/V6No
 o8HaZfbo/m6bAEZSnCImbP/0HhQdSRrbXwIg5M/mhG/zvpORzh6Vq65LUIJcI15haVF/tokD
 VnkMnK0PGHX3CWdQS3TMywLVV8adconxZ7NFXB2bAnANrlKSdrH0ZrzgLNtLed/pLEynKEsJ
 xTHEu3Zaslypv3802x1RfHAQEZKLXxHWSrm0/KZXQUC
IronPort-HdrOrdr: A9a23:UmLlf6j6VeOu9hOiqxMB+QiFL3BQXugji2hC6mlwRA09TyX4ra
 +TdZEgviMc5wxhPE3I9ergBED4ewK+yXcX2+cs1NWZLWvbUQKTRekJgOffKlvbakjDH4VmtZ
 uIHZIOceHYPBxXitv7/Rn9M/tI+qj+zElwv5a48566d3ANV51d
X-Talos-CUID: 9a23:XN2fKWDlafLbGKf6Ewd52XQ5JZAZSWL+yXfUGma3JGAwTaLAHA==
X-Talos-MUID: 9a23:VHfJ8QmAUFwtrwjE2wHKdnpfaelj0ficMXwfiIgniseoMW83AnC02WE=
X-IronPort-AV: E=Sophos;i="6.03,204,1694750400"; 
   d="scan'208";a="125288252"
From: Andrew Cooper <andrew.cooper3@citrix.com>
To: Xen-devel <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, George Dunlap
	<George.Dunlap@eu.citrix.com>, Jan Beulich <JBeulich@suse.com>, "Stefano
 Stabellini" <sstabellini@kernel.org>, Wei Liu <wl@xen.org>, Julien Grall
	<julien@xen.org>, Michal Orzel <michal.orzel@amd.com>, Henry Wang
	<Henry.Wang@arm.com>
Subject: [PATCH for-4.18 v2 1/2] docs/spnix: Switch hypercall-abi.rst to named footnotes
Date: Fri, 6 Oct 2023 19:54:01 +0100
Message-ID: <20231006185402.1098400-2-andrew.cooper3@citrix.com>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <20231006185402.1098400-1-andrew.cooper3@citrix.com>
References: <20231006185402.1098400-1-andrew.cooper3@citrix.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain

This will simplify inserting a new one in the middle.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
---
CC: George Dunlap <George.Dunlap@eu.citrix.com>
CC: Jan Beulich <JBeulich@suse.com>
CC: Stefano Stabellini <sstabellini@kernel.org>
CC: Wei Liu <wl@xen.org>
CC: Julien Grall <julien@xen.org>
CC: Michal Orzel <michal.orzel@amd.com>
CC: Henry Wang <Henry.Wang@arm.com>
---
 docs/guest-guide/x86/hypercall-abi.rst | 24 ++++++++++++------------
 1 file changed, 12 insertions(+), 12 deletions(-)

diff --git a/docs/guest-guide/x86/hypercall-abi.rst b/docs/guest-guide/x86/hypercall-abi.rst
index 14c48929d748..42a820386b68 100644
--- a/docs/guest-guide/x86/hypercall-abi.rst
+++ b/docs/guest-guide/x86/hypercall-abi.rst
@@ -6,7 +6,7 @@ Hypercall ABI
 Hypercalls are system calls to Xen.  Two modes of guest operation are
 supported, and up to 6 individual parameters are supported.
 
-Hypercalls may only be issued by kernel-level software [1]_.
+Hypercalls may only be issued by kernel-level software [#kern]_.
 
 Registers
 ---------
@@ -33,7 +33,7 @@ The registers used for hypercalls depends on the operating mode of the guest.
 
 32 and 64bit PV guests have an ABI fixed by their guest type.  The ABI for an
 HVM guest depends on whether the vCPU is operating in a 64bit segment or not
-[2]_.
+[#mode]_.
 
 
 Parameters
@@ -87,7 +87,7 @@ written by Xen, is mapped with executable permissions so it may be used.
 Multiple hypercall pages may be created by the guest, if it wishes.
 
 The stubs are arranged by hypercall index, and start on 32-byte boundaries.
-To invoke a specific hypercall, ``call`` the relevant stub [3]_:
+To invoke a specific hypercall, ``call`` the relevant stub [#iret]_:
 
 .. code-block:: none
 
@@ -116,14 +116,14 @@ means.
 
 .. rubric:: Footnotes
 
-.. [1] For HVM guests, ``HVMOP_guest_request_vm_event`` may be configured to
-       be usable from userspace, but this behaviour is not default.
+.. [#kern] For HVM guests, ``HVMOP_guest_request_vm_event`` may be configured
+   to be usable from userspace, but this behaviour is not default.
 
-.. [2] While it is possible to use compatibility mode segments in a 64bit
-       kernel, hypercalls issues from such a mode will be interpreted with the
-       32bit ABI.  Such a setup is not expected in production scenarios.
+.. [#mode] While it is possible to use compatibility mode segments in a 64bit
+   kernel, hypercalls issues from such a mode will be interpreted with the
+   32bit ABI.  Such a setup is not expected in production scenarios.
 
-.. [3] ``HYPERCALL_iret`` is special.  It is only implemented for PV guests
-       and takes all its parameters on the stack.  This stub should be
-       ``jmp``'d to, rather than ``call``'d.  HVM guests have this stub
-       implemented as ``ud2a`` to prevent accidental use.
+.. [#iret] ``HYPERCALL_iret`` is special.  It is only implemented for PV
+   guests and takes all its parameters on the stack.  This stub should be
+   ``jmp``'d to, rather than ``call``'d.  HVM guests have this stub
+   implemented as ``ud2a`` to prevent accidental use.
-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Fri Oct 06 18:54:30 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 18:54:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613804.954590 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qopxv-00010w-1p; Fri, 06 Oct 2023 18:54:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613804.954590; Fri, 06 Oct 2023 18:54: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 1qopxu-00010p-VE; Fri, 06 Oct 2023 18:54:22 +0000
Received: by outflank-mailman (input) for mailman id 613804;
 Fri, 06 Oct 2023 18:54: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=LN/y=FU=citrix.com=prvs=63610b956=Andrew.Cooper3@srs-se1.protection.inumbo.net>)
 id 1qopxu-0000VZ-9Q
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 18:54: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 c0a731e7-6479-11ee-9b0d-b553b5be7939;
 Fri, 06 Oct 2023 20:54: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: c0a731e7-6479-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1696618459;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=rMavS1NfaJw4CYhTkB8gR9Bg90slPE68f/jMV8qjH/E=;
  b=fP5t09zOqGeXvNjZD2sN+SrMkly/qN5lSFC00rFne7+HAxqkvPaM3qjh
   Mk/UXITM6GCkgqbyCNRUxeORo5t4/ST0e2fBYmKOaLqGOUtkpUh64wsG3
   MveEhLLAkbNs0Gme8H/Feb3z5GW/DpqCPQGKdiP0ejE4WCorg12qi74JB
   M=;
X-CSE-ConnectionGUID: zbM/wUseSAGyzS4rw3cmBQ==
X-CSE-MsgGUID: S2+NhLujSDi0i7KMN1/qLg==
Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
X-SBRS: 4.0
X-MesageID: 123474049
X-Ironport-Server: esa5.hc3370-68.iphmx.com
X-Remote-IP: 162.221.159.70
X-Policy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:EuqDNq1UxZnDtU0oDvbD5QRxkn2cJEfYwER7XKvMYLTBsI5bp2MBy
 TNJX2CDP/yDYmr9fYpzao+08UxQsZbdxoBlSQo9pC1hF35El5HIVI+TRqvS04F+DeWYFR46s
 J9OAjXkBJppJpMJjk71atANlVEliOfQAOK6UbaYUsxIbVcMYD87jh5+kPIOjIdtgNyoayuAo
 tq3qMDEULOf82cc3lk8teTb83uDgNyo4GlD5wRmO6gS1LPjvyJ94Kw3dPnZw0TQGuG4LsbiL
 87fwbew+H/u/htFIrtJRZ6iLyXm6paLVeS/oiI+t5qK23CulQRrukoPD9IOaF8/ttm8t4sZJ
 OOhF3CHYVxB0qXkwIzxWvTDes10FfUuFLTveRBTvSEPpqFvnrSFL/hGVSkL0YMkFulfE2trs
 uMlMz02Rz+Sldnq2q3gQexGv5F2RCXrFNt3VnBIyDjYCbAtQIzZQrWM7thdtNsyrpkQR7CEP
 ZNfMGc+KkuYC/FMEg5/5JYWteGknHTgNRZfr0qYv/Ef6GnP1g1hlrPqNbI5f/TTH54JwRrA+
 jOuE2LROUtZEty71Di+3nP0h7DsuAWiH5s2G+jtnhJtqALKnTFCYPEMbnOrrP/8hkOgVtZ3L
 00P5jFovaU07FasTNT2Q1u/unHslhsdUNpZF6s98hOAzoLd5grfDW8BJhZjQtE7sM49RRQxy
 0SE2djuAFRHq6aJQHiQ8rOVqzKaOiUPK2IGIygeQmMt/N3LsIw1yBXVQb5LErOxj9DzMSH9x
 XaNtidWr5Uei9QakZqy+1/viiip4JPOS2YICh7/Bzz/qFkjPcj8Ot3utgCzAet8wJixXFOk+
 2c5gMWlxc8fH6rRjjPWS+AnJeT8jxqaCwEwkWKDDrF4qWXzpi/zI9sJiN1tDB03aJtYJ1cFd
 GeW6VsIu8EJVJe/RfIvC79dHfjG2kQJ+T7NbvfRdtNIZdBbeQaM/EmCjmbLhDizziDAfUwlU
 Kp3kPpA7l5AU8yLNBLsG48gPUYDn0jSP1/7S5Hh1AiA2rGDfnOTQrptGALQP75kt/vV+V2Lr
 4c32y62J/J3CbKWX8Uq2dRLcQBiwYYTWvgaVPC7hsbce1E7SQnN+tfawK87epwNokimvr6gw
 51JYWcBkACXrSSedW23hoVLNOuHsWBX8ShqYkTB/D+AhxAeXGpYxP1PKcNnIOh2q7QLIDwdZ
 6BtRvhsy89nElzvkwnxp7GkxGC+XHxHXT6zAhc=
IronPort-HdrOrdr: A9a23:OvIHZKlLSynGIm2BwlZrRX4MkmzpDfLo3DAbv31ZSRFFG/Fw9/
 rCoB17726QtN91YhsdcL+7V5VoLUmzyXcX2/hyAV7BZmnbUQKTRekP0WKL+Vbd8kbFh41gPM
 lbEpSXCLfLfCJHZcSR2njELz73quP3jJxBho3lvghQpRkBUdAF0+/gYDzranGfQmN9dP0EPa
 vZ3OVrjRy6d08aa8yqb0N1JNQq97Xw5fTbiQdtPW9f1DWz
X-Talos-CUID: 9a23:M2BQCmDN0wiCWXv6Eztt0QkLJ9soSVTy3WXrf1WnUm1sYoTAHA==
X-Talos-MUID: 9a23:DUhXTwkxHl9I5J0n9kcPdnpZboRO44CzCnshkM0H5OqhE3U3IhOS2WE=
X-IronPort-AV: E=Sophos;i="6.03,204,1694750400"; 
   d="scan'208";a="123474049"
From: Andrew Cooper <andrew.cooper3@citrix.com>
To: Xen-devel <xen-devel@lists.xenproject.org>
CC: Michal Orzel <michal.orzel@amd.com>, Andrew Cooper
	<andrew.cooper3@citrix.com>, George Dunlap <George.Dunlap@eu.citrix.com>,
	"Jan Beulich" <JBeulich@suse.com>, Stefano Stabellini
	<sstabellini@kernel.org>, "Wei Liu" <wl@xen.org>, Julien Grall
	<julien@xen.org>, Henry Wang <Henry.Wang@arm.com>
Subject: [PATCH for-4.18 v2 2/2] x86: Clarify that only 5 hypercall parameters are supported
Date: Fri, 6 Oct 2023 19:54:02 +0100
Message-ID: <20231006185402.1098400-3-andrew.cooper3@citrix.com>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <20231006185402.1098400-1-andrew.cooper3@citrix.com>
References: <20231006185402.1098400-1-andrew.cooper3@citrix.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain

From: Michal Orzel <michal.orzel@amd.com>

The x86 hypercall ABI really used to have 6-argument hypercalls.  V4V, the
downstream predecessor to Argo did take 6th args.

However, the 6th arg being %ebp in the 32bit ABI makes it unusable in
practice, because that's the frame pointer in builds with frame pointers
enabled.  Therefore Argo was altered to being a 5-arg hypercall when it was
upstreamed.

c/s 2f531c122e95 ("x86: limit number of hypercall parameters to 5") removed
the ability for hypercalls to take 6 arguments.

Update the documentation to match reality.

Signed-off-by: Michal Orzel <michal.orzel@amd.com>
Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
---
CC: George Dunlap <George.Dunlap@eu.citrix.com>
CC: Jan Beulich <JBeulich@suse.com>
CC: Stefano Stabellini <sstabellini@kernel.org>
CC: Wei Liu <wl@xen.org>
CC: Julien Grall <julien@xen.org>
CC: Michal Orzel <michal.orzel@amd.com>
CC: Henry Wang <Henry.Wang@arm.com>

v2:
 * Extend with the historical context of how 6-arg hypercalls have come and gone.
---
 docs/guest-guide/x86/hypercall-abi.rst   | 15 +++++++++++----
 xen/include/public/arch-x86/xen-x86_32.h |  2 +-
 xen/include/public/arch-x86/xen-x86_64.h |  2 +-
 3 files changed, 13 insertions(+), 6 deletions(-)

diff --git a/docs/guest-guide/x86/hypercall-abi.rst b/docs/guest-guide/x86/hypercall-abi.rst
index 42a820386b68..c7a11a76712f 100644
--- a/docs/guest-guide/x86/hypercall-abi.rst
+++ b/docs/guest-guide/x86/hypercall-abi.rst
@@ -4,7 +4,7 @@ Hypercall ABI
 =============
 
 Hypercalls are system calls to Xen.  Two modes of guest operation are
-supported, and up to 6 individual parameters are supported.
+supported, and up to 5 individual parameters are supported.
 
 Hypercalls may only be issued by kernel-level software [#kern]_.
 
@@ -18,17 +18,17 @@ The registers used for hypercalls depends on the operating mode of the guest.
 
    * - ABI
      - Hypercall Index
-     - Parameters (1 - 6)
+     - Parameters (1 - 5) [#params]_
      - Result
 
    * - 64bit
      - RAX
-     - RDI RSI RDX R10 R8 R9
+     - RDI RSI RDX R10 R8
      - RAX
 
    * - 32bit
      - EAX
-     - EBX ECX EDX ESI EDI EBP
+     - EBX ECX EDX ESI EDI
      - EAX
 
 32 and 64bit PV guests have an ABI fixed by their guest type.  The ABI for an
@@ -119,6 +119,13 @@ means.
 .. [#kern] For HVM guests, ``HVMOP_guest_request_vm_event`` may be configured
    to be usable from userspace, but this behaviour is not default.
 
+.. [#params] Xen's ABI used to declare support for 6 hypercall arguments,
+   using ``r9`` and ``ebp``.  However, such an ABI clobbers the frame pointer
+   in the 32bit code and does interact nicely with guest-side debugging.  The
+   predecessor to ``HYPERCALL_argo_op`` was a 6-argument hypercall, but the
+   ABI was intentionally altered when Argo was upstreamed (Xen 4.13) to be the
+   5-argument hypercall it now is.
+
 .. [#mode] While it is possible to use compatibility mode segments in a 64bit
    kernel, hypercalls issues from such a mode will be interpreted with the
    32bit ABI.  Such a setup is not expected in production scenarios.
diff --git a/xen/include/public/arch-x86/xen-x86_32.h b/xen/include/public/arch-x86/xen-x86_32.h
index 139438e83534..9e3bf06b121e 100644
--- a/xen/include/public/arch-x86/xen-x86_32.h
+++ b/xen/include/public/arch-x86/xen-x86_32.h
@@ -12,7 +12,7 @@
 
 /*
  * Hypercall interface:
- *  Input:  %ebx, %ecx, %edx, %esi, %edi, %ebp (arguments 1-6)
+ *  Input:  %ebx, %ecx, %edx, %esi, %edi (arguments 1-5)
  *  Output: %eax
  * Access is via hypercall page (set up by guest loader or via a Xen MSR):
  *  call hypercall_page + hypercall-number * 32
diff --git a/xen/include/public/arch-x86/xen-x86_64.h b/xen/include/public/arch-x86/xen-x86_64.h
index 5d9035ed2230..43f6e3d22001 100644
--- a/xen/include/public/arch-x86/xen-x86_64.h
+++ b/xen/include/public/arch-x86/xen-x86_64.h
@@ -12,7 +12,7 @@
 
 /*
  * Hypercall interface:
- *  Input:  %rdi, %rsi, %rdx, %r10, %r8, %r9 (arguments 1-6)
+ *  Input:  %rdi, %rsi, %rdx, %r10, %r8 (arguments 1-5)
  *  Output: %rax
  * Access is via hypercall page (set up by guest loader or via a Xen MSR):
  *  call hypercall_page + hypercall-number * 32
-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Fri Oct 06 19:12:05 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 19:12:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613817.954600 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoqEw-0004qR-MW; Fri, 06 Oct 2023 19:11:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613817.954600; Fri, 06 Oct 2023 19: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 1qoqEw-0004qK-I6; Fri, 06 Oct 2023 19:11:58 +0000
Received: by outflank-mailman (input) for mailman id 613817;
 Fri, 06 Oct 2023 19:11: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=vVKM=FU=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qoqEv-0004pT-4i
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 19:11:57 +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 365c951b-647c-11ee-9b0d-b553b5be7939;
 Fri, 06 Oct 2023 21:11:54 +0200 (CEST)
Received: by mail-wm1-x32f.google.com with SMTP id
 5b1f17b1804b1-4064867903cso23852405e9.2
 for <xen-devel@lists.xenproject.org>; Fri, 06 Oct 2023 12:11: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
 4-20020a05600c248400b004060f0a0fd5sm4322441wms.13.2023.10.06.12.11.53
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Fri, 06 Oct 2023 12:11: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: 365c951b-647c-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1696619514; x=1697224314; darn=lists.xenproject.org;
        h=content-transfer-encoding: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=ez9g6FQqqxK8S2+enxf0z3E6o1Msn8EaPo9dyZSLJR0=;
        b=KCG2lbNsEffbMcvkpTB2ucLM4WzLRHgzppndNxiUJqX2fv8SWDWDSaHbqwRhUMVUto
         OxNnMKUoS4Hfje+2mUbSNxcl5L3Try8Z5SOLC13+/+SXK6B/YPooP1HOtnhdzOt5NtTl
         qdPquwa8E8gj5rWFYkwigtDqzqvzO51WtODiM=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1696619514; x=1697224314;
        h=content-transfer-encoding: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=ez9g6FQqqxK8S2+enxf0z3E6o1Msn8EaPo9dyZSLJR0=;
        b=khDn/6QZ1pl1ssUyJgczbl6wclrG+PiTP+3xKyYKzcdOMpb6j2TTKUPjA20cgFPsab
         X9rQFQbJrRjmid6/GEpSyTzmizdDlazsicAZXyN1TK3+HYjYjmG8gYo894IqD8/4zFV+
         Y0eJlG8+mu99stuE9xcZZ5EU/Iu8YnVNF5vLekx3JRmVaIfHAgibKQgPm4ZT4PLQ9qHh
         JAPDYrJPOb/amuOkW167I+96YuCYcWxldcyjhJFrzhOA2nJ/ztGcX0WOt1+h2p/37aFq
         PhAIiXyqpbjLZxv0ans6NnHU0Ko6nIT0JH/vpnRO5oawkYjmDtQ9n3JqjdLiexpNpUgf
         mOFA==
X-Gm-Message-State: AOJu0YxUkldKKBrwlIByV2quCSUhtIYvMmnsNqG1093XYppYOaCMollf
	QnYCro3sicgGeeEXfYWoYTC48A==
X-Google-Smtp-Source: AGHT+IFR5c60KJPYTNqTHa7JN/bm4EWNdYh9BkfL9dvSg96zdRwiScYPxEShD0dg7wm1WVH3u5NQMA==
X-Received: by 2002:a7b:cc8f:0:b0:406:4a32:52fc with SMTP id p15-20020a7bcc8f000000b004064a3252fcmr8521516wma.21.1696619514171;
        Fri, 06 Oct 2023 12:11:54 -0700 (PDT)
Message-ID: <85bd4923-a710-43eb-a8e1-04d757b0ee78@citrix.com>
Date: Fri, 6 Oct 2023 20:11:53 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
From: andrew.cooper3@citrix.com
Subject: Re: [XEN PATCH 7/9] x86/mce: Move MC_NCLASSES into the enum
 mctelem_class
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>
References: <cover.1696514677.git.nicola.vetrini@bugseng.com>
 <08293d72e236a7a6aec0305bc3f901a6636747ab.1696514677.git.nicola.vetrini@bugseng.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: <08293d72e236a7a6aec0305bc3f901a6636747ab.1696514677.git.nicola.vetrini@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit

On 06/10/2023 9:26 am, Nicola Vetrini wrote:
> The definition of MC_NCLASSES contained a violation of MISRA C:2012
> Rule 10.1, therefore by moving it as an enumeration constant resolves the
> violation and makes it more resilient to possible additions to that enum.
>
> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>

Acked-by: Andrew Cooper <andrew.cooper3@citrix.com>

I've started my normal for-next branch around releases, and included
this patch.

https://xenbits.xen.org/gitweb/?p=people/andrewcoop/xen.git;a=shortlog;h=refs/heads/for-next

I'll keep the rebased and add it to 4.19 when the tree re-opens.

~Andrew


From xen-devel-bounces@lists.xenproject.org Fri Oct 06 19:16:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 19:16:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613820.954610 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoqJf-0005xI-7b; Fri, 06 Oct 2023 19:16:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613820.954610; Fri, 06 Oct 2023 19: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 1qoqJf-0005xB-3U; Fri, 06 Oct 2023 19:16:51 +0000
Received: by outflank-mailman (input) for mailman id 613820;
 Fri, 06 Oct 2023 19: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=vVKM=FU=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qoqJd-0005x5-D6
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 19:16:49 +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 e3cb82c3-647c-11ee-98d3-6d05b1d4d9a1;
 Fri, 06 Oct 2023 21:16:48 +0200 (CEST)
Received: by mail-wr1-x42f.google.com with SMTP id
 ffacd0b85a97d-3296a998234so763256f8f.2
 for <xen-devel@lists.xenproject.org>; Fri, 06 Oct 2023 12:16:45 -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
 i2-20020a05600c290200b004063d8b43e7sm6581346wmd.48.2023.10.06.12.16.44
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Fri, 06 Oct 2023 12:16: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: e3cb82c3-647c-11ee-98d3-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1696619805; x=1697224605; darn=lists.xenproject.org;
        h=content-transfer-encoding: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=3N799plwAKl43IUROs4CjB73sQd3BitVoqMx6z7lmZ0=;
        b=Eh0ZlPKqS/iRX4Xjd6NuSIVQU3/Znf4t8DX5pcwBBTTkbGN+hj1k4y1Wf7fjLXJLuU
         OwNOtPQmzWeCSK5N1XC9okZNe47R+8VDr7R9m5GH7QOdZjetkpEeUOiX+nMZKZ7w9BUw
         riTHdMS4G1J5xXTk7gPVgj30y7l2djmyXdCJk=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1696619805; x=1697224605;
        h=content-transfer-encoding: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=3N799plwAKl43IUROs4CjB73sQd3BitVoqMx6z7lmZ0=;
        b=VguTZrn0PuPvha27Ol0fzNrVeuxa0gdnEIRmjpFVpHsdPZpO6YmuWzBO+nOhNuvhpj
         HMgTx7ZtM40TBFGQ3/+86H6LfXZMJ514rDWNRlmEnVH7UQhIEJBqFyd5KYa2CDLoeWGb
         4npE2VIOhw8d+9h9TMKAfPQMExHHA0P63u8pKb2blNybeNFZQzKaZTNgcrfjDETeGcYJ
         ZsfRcBLQ7p7/mcxLPrV2esyZGkDShxBNzucRlg4K51fXug9udsF1xcSTvWoViObg249m
         cJ/0CqNKdAWp46A0LfaOxTP7t395DUvOS5QvVRECyMZ5vTitYAFDzD1O06rccZ7v/cSG
         MjAQ==
X-Gm-Message-State: AOJu0YwlbYnvYYZ3NuXTNWLm5VqLCLlw5vPeENJ9xsdn1bRMHJaPaGaV
	3q6HQuFusAJW9So6iv7zhu6kiw==
X-Google-Smtp-Source: AGHT+IHrFWFA2DXG7NyKf0L/ORfstFqvBfd+qzBCx3ycFT5MnjOh2X7LEjS6PuRe7Et80cvQy6AJWw==
X-Received: by 2002:adf:ec82:0:b0:321:65f3:4100 with SMTP id z2-20020adfec82000000b0032165f34100mr8330996wrn.7.1696619805164;
        Fri, 06 Oct 2023 12:16:45 -0700 (PDT)
Message-ID: <7762a894-62e0-4e78-a292-8d4b033c38d2@citrix.com>
Date: Fri, 6 Oct 2023 20:16:44 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
From: andrew.cooper3@citrix.com
Subject: Re: [XEN PATCH][for-4.19 2/2] xen/spinlock: fix use of 0 as a null
 pointer constant
Content-Language: en-GB
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,
 jbeulich@suse.com, roger.pau@citrix.com,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Wei Liu <wl@xen.org>
References: <cover.1696494834.git.nicola.vetrini@bugseng.com>
 <44395904e6cca0cc83a9d01abbc50047ecba961e.1696494834.git.nicola.vetrini@bugseng.com>
 <alpine.DEB.2.22.394.2310051806570.2348112@ubuntu-linux-20-04-desktop>
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: <alpine.DEB.2.22.394.2310051806570.2348112@ubuntu-linux-20-04-desktop>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 06/10/2023 2:07 am, Stefano Stabellini wrote:
> On Thu, 5 Oct 2023, Nicola Vetrini wrote:
>> The constant 0 is used as a null pointer constant, in
>> violation of MISRA C:2012 Rule 11.9, in builds with
>> CONFIG_DEBUG_LOCK_PROFILE defined.
>>
>> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>

I've picked this up for 4.19.  It's trivial and not liable to conflict
with other work.

~Andrew


From xen-devel-bounces@lists.xenproject.org Fri Oct 06 20:00:09 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 20:00:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613823.954619 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoqzK-0004tH-Cl; Fri, 06 Oct 2023 19:59:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613823.954619; Fri, 06 Oct 2023 19:59: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 1qoqzK-0004tA-9o; Fri, 06 Oct 2023 19:59:54 +0000
Received: by outflank-mailman (input) for mailman id 613823;
 Fri, 06 Oct 2023 19:59: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 1qoqzJ-0004t0-J0; Fri, 06 Oct 2023 19:59: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 1qoqzJ-0000V4-9K; Fri, 06 Oct 2023 19:59: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 1qoqzJ-0002k9-1s; Fri, 06 Oct 2023 19:59:53 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qoqzJ-00070m-1M; Fri, 06 Oct 2023 19:59: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=dkL1f0orR3xNnVGiTx9lOS9dzDSLRSZotjiHRxoYSzg=; b=UQ8ldxgqvQxtQDRfdMQi48BeIH
	Cq6W/L5jbX9eEoHdMQ8rDcLDP1z4SmjF4/3lsoxXHOWQOprr5zLqSHNcS+2YsZ8/melVbsMxjcroZ
	Ad5TVUMomwaQI8t117LxQf5hwf0yag+MHYcDeNPFB5TQoEfFIEu4Iv6/Hj9gfPwfTbdE=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183298-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 183298: regressions - FAIL
X-Osstest-Failures:
    xen-unstable-smoke:test-armhf-armhf-xl:guest-start/debian.repeat: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
    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=01343f99de858c7e24bcfcb4ad4fc584559bcc08
X-Osstest-Versions-That:
    xen=02c98966360b76052779b0186784437af88f301e
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 06 Oct 2023 19:59:53 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-armhf-armhf-xl         18 guest-start/debian.repeat fail REGR. vs. 183270

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                  01343f99de858c7e24bcfcb4ad4fc584559bcc08
baseline version:
 xen                  02c98966360b76052779b0186784437af88f301e

Last test of basis   183270  2023-10-05 13:03:52 Z    1 days
Failing since        183272  2023-10-05 16:00:24 Z    1 days    5 attempts
Testing same since   183298  2023-10-06 17:00:25 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrii Chepurnyi <andrii_chepurnyi@epam.com>
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.com>
  Roger Pau Monne <roger.pau@citrix.com>
  Roger Pau Monné <roger.pau@citrix.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                                          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 01343f99de858c7e24bcfcb4ad4fc584559bcc08
Author: Andrii Chepurnyi <Andrii_Chepurnyi@epam.com>
Date:   Thu Oct 5 13:30:14 2023 +0000

    arm/ioreq: guard interaction data on read/write operations
    
    For read operations, there's a potential issue when the data field
    of the ioreq struct is partially updated in the response. To address
    this, zero data field during read operations. This modification
    serves as a safeguard against implementations that may inadvertently
    partially update the data field in response to read requests.
    For instance, consider an 8-bit read operation. In such cases, QEMU,
    returns the same content of the data field with only 8 bits of
    updated data. This behavior could potentially result in the
    propagation of incorrect or unintended data to ioreq clients.
    During a write access, the Device Model only need to know the content
    of the bits associated with the access size (e.g. for 8-bit, the lower
    8-bits). During a read access, the Device Model don't need to know any
    value. So restrict the value it can access.
    
    Signed-off-by: Andrii Chepurnyi <andrii_chepurnyi@epam.com>
    Release-acked-by: Henry Wang <Henry.Wang@arm.com>
    Reviewed-by: Julien Grall <jgrall@amazon.com>

commit 295514ff7550626de4fb5e43b51deb25d9331cd5
Author: Jan Beulich <jbeulich@suse.com>
Date:   Mon Oct 2 17:11:27 2023 +0200

    common: convert vCPU info area registration
    
    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).
    
    Signed-off-by: Jan Beulich <jbeulich@suse.com>
    Reviewed-by: Roger Pau Monné <roger.pau@citrix.com>
    Acked-by: Julien Grall <jgrall@amazon.com>
    Release-acked-by: Henry Wang <Henry.Wang@arm.com>

commit 60e544a8c58fdc720de05f6a721178f9516436d1
Author: Jan Beulich <jbeulich@suse.com>
Date:   Mon Oct 2 17:11:26 2023 +0200

    x86: introduce GADDR based secondary time area registration alternative
    
    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>
    Acked-by: Julien Grall <jgrall@amazon.com>
    Release-acked-by: Henry Wang <Henry.Wang@arm.com>

commit d5df44275e7af690ef18b56cc58762ce33a37149
Author: Jan Beulich <jbeulich@suse.com>
Date:   Mon Oct 2 17:11:25 2023 +0200

    domain: introduce GADDR based runstate area registration alternative
    
    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>
    Acked-by: Julien Grall <jgrall@amazon.com>
    Release-acked-by: Henry Wang <Henry.Wang@arm.com>

commit eadc288cbb0ddc432ff8c9c639fb25b7538325de
Author: Jan Beulich <jbeulich@suse.com>
Date:   Mon Oct 2 17:11:24 2023 +0200

    domain: map/unmap GADDR based shared guest areas
    
    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>
    Reviewed-by: Roger Pau Monné <roger.pau@citrix.com>
    Reviewed-by: Julien Grall <jgrall@amazon.com>
    Release-acked-by: Henry Wang <Henry.Wang@arm.com>

commit c4dde71e3e6961f817e2a574ce4918041cb30fb9
Author: Jan Beulich <jbeulich@suse.com>
Date:   Wed Oct 4 15:53:31 2023 +0200

    x86/mem-sharing: copy GADDR based shared guest areas
    
    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>
    Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
    Acked-by: Tamas K Lengyel <tamas@tklengyel.com>
    Release-acked-by: Henry Wang <Henry.Wang@arm.com>

commit c2e285ea0e6dea9cc6f4578e49d76075a153baa0
Author: Jan Beulich <jbeulich@suse.com>
Date:   Mon Oct 2 17:11:22 2023 +0200

    x86: update GADDR based secondary time area
    
    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>
    Release-acked-by: Henry Wang <Henry.Wang@arm.com>

commit e1ddb822ca2e3c332d42d508e2a5fbd7be018815
Author: Jan Beulich <jbeulich@suse.com>
Date:   Mon Oct 2 17:11:21 2023 +0200

    domain: update GADDR based runstate guest area
    
    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>
    Release-acked-by: Henry Wang <Henry.Wang@arm.com>

commit c4630e316240508f3fb619678adc4cfb47bf13d2
Author: Jan Beulich <jbeulich@suse.com>
Date:   Mon Oct 2 17:11:20 2023 +0200

    domain: GADDR based shared guest area registration alternative - teardown
    
    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>
    Acked-by: Roger Pau Monné <roger.pau@citrix.com>
    Release-acked-by: Henry Wang <Henry.Wang@arm.com>

commit 826da6e30cf37a22b3f32dba33477856125df91b
Author: Jan Beulich <jbeulich@suse.com>
Date:   Mon Oct 2 17:11:19 2023 +0200

    x86/shim: zap runstate and time area handles during shutdown
    
    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>
    Release-acked-by: Henry Wang <Henry.Wang@arm.com>

commit 9a499a84a2724757ad59b684e7858dfb60521290
Author: Roger Pau Monne <roger.pau@citrix.com>
Date:   Mon Oct 2 17:11:18 2023 +0200

    mem_sharing/fork: do not attempt to populate vcpu_info page
    
    Instead let map_vcpu_info() and it's call to get_page_from_gfn()
    populate the page in the child as needed.  Also remove the bogus
    copy_domain_page(): should be placed before the call to map_vcpu_info(),
    as the later can update the contents of the vcpu_info page.
    
    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.
    
    Fixes: 41548c5472a3 ('mem_sharing: VM forking')
    Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
    Acked-by: Tamas K Lengyel <tamas@tklengyel.com>
    Release-acked-by: Henry Wang <Henry.Wang@arm.com>
(qemu changes not included)


From xen-devel-bounces@lists.xenproject.org Fri Oct 06 21:28:47 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 21:28:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613834.954639 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qosN6-0000Aq-Tz; Fri, 06 Oct 2023 21:28:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613834.954639; Fri, 06 Oct 2023 21: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 1qosN6-0000Aj-R6; Fri, 06 Oct 2023 21:28:32 +0000
Received: by outflank-mailman (input) for mailman id 613834;
 Fri, 06 Oct 2023 21:28: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 1qosN5-0000AZ-SQ; Fri, 06 Oct 2023 21:28: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 1qosN5-0002qe-JE; Fri, 06 Oct 2023 21:28: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 1qosN5-0004tk-5T; Fri, 06 Oct 2023 21:28:31 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qosN5-00073p-4z; Fri, 06 Oct 2023 21:28: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=WGAMxh7dLvrYtCWQ8pO1yWL7K4ht4rEV8wmuz4WuC58=; b=hPeFa88FhEdX9JzEb1kqaAPreE
	V3s7aHGJmui3X7QEhxB3ORi+DKmNqan/fUyYi5iarmPI7wyUofSyINhs1nt6MDaB+qT10NLL0Ks9T
	ugLzs6YBHE1VuKQ/N4tqCtM0lQBSYF5nNSDNc+BoDKUtSWu/0U8P/8e4dXpjpK/HwMeo=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183284-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 183284: tolerable FAIL - PUSHED
X-Osstest-Failures:
    linux-linus:test-amd64-amd64-xl-vhd:guest-localmigrate/x10:fail:heisenbug
    linux-linus:test-armhf-armhf-libvirt-qcow2:guest-start/debian.repeat:fail:heisenbug
    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-armhf-armhf-libvirt: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-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-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-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-xl-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu: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-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-raw:migrate-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-amd64-amd64-libvirt:migrate-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
    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-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:saverestore-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-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=b78b18fb8ee19f7a05f20c3abc865b3bfe182884
X-Osstest-Versions-That:
    linux=f291209eca5eba0b4704fa0832af57b12dbc1a02
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 06 Oct 2023 21:28:31 +0000

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

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-amd64-amd64-xl-vhd   19 guest-localmigrate/x10 fail pass in 183302-retest
 test-armhf-armhf-libvirt-qcow2 17 guest-start/debian.repeat fail pass in 183302-retest

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183273
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183273
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183273
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183273
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183273
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183273
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183273
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183273
 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-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-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-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-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-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-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-amd64-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-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-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-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-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                b78b18fb8ee19f7a05f20c3abc865b3bfe182884
baseline version:
 linux                f291209eca5eba0b4704fa0832af57b12dbc1a02

Last test of basis   183273  2023-10-05 18:42:30 Z    1 days
Testing same since   183284  2023-10-06 05:23:40 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Bastien Nocera <hadess@hadess.net>
  Christophe JAILLET <christophe.jaillet@wanadoo.fr>
  Dan Carpenter <dan.carpenter@linaro.org>
  Fabian Vogt <fabian@ritter-vogt.de>
  Gao Xiang <hsiangkao@linux.alibaba.com>
  Hans de Goede <hdegoede@redhat.com>
  Jingbo Xu <jefflexu@linux.alibaba.com>
  Jiri Kosina <jkosina@suse.cz>
  Kai-Heng Feng <kai.heng.feng@canonical.com>
  Linus Torvalds <torvalds@linux-foundation.org>
  Ma Ke <make_ruc2021@163.com>
  Martino Fontana <tinozzo123@gmail.com>
  Rahul Rameshbabu <rrameshbabu@nvidia.com>
  Rahul Rameshbabu <sergeantsagara@protonmail.com>
  Randy Dunlap <rdunlap@infradead.org>
  Srinivas Pandruvada <srinivas.pandruvada@linux.intel.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                               fail    
 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                                      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


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
   f291209eca5e..b78b18fb8ee1  b78b18fb8ee19f7a05f20c3abc865b3bfe182884 -> tested/linux-linus


From xen-devel-bounces@lists.xenproject.org Fri Oct 06 21:44:38 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 21:44:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613841.954652 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoscX-0002jQ-9Z; Fri, 06 Oct 2023 21:44:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613841.954652; Fri, 06 Oct 2023 21: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 1qoscX-0002jJ-6Y; Fri, 06 Oct 2023 21:44:29 +0000
Received: by outflank-mailman (input) for mailman id 613841;
 Fri, 06 Oct 2023 21: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=Lmit=FU=gmail.com=wei.liu.linux@srs-se1.protection.inumbo.net>)
 id 1qoscW-0002jD-47
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 21:44:28 +0000
Received: from mail-pl1-f172.google.com (mail-pl1-f172.google.com
 [209.85.214.172]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 835bbb2c-6491-11ee-9b0d-b553b5be7939;
 Fri, 06 Oct 2023 23:44:24 +0200 (CEST)
Received: by mail-pl1-f172.google.com with SMTP id
 d9443c01a7336-1c5c91bece9so21743355ad.3
 for <xen-devel@lists.xenproject.org>; Fri, 06 Oct 2023 14:44:24 -0700 (PDT)
Received: from liuwe-devbox-debian-v2 ([20.69.120.36])
 by smtp.gmail.com with ESMTPSA id
 g5-20020a170902c38500b001adf6b21c77sm4428040plg.107.2023.10.06.14.44.21
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Fri, 06 Oct 2023 14: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: 835bbb2c-6491-11ee-9b0d-b553b5be7939
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1696628662; x=1697233462;
        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=NIVn4u1yJXE9GPf/dzGUtUFy43rKq970JPbAFojeRKM=;
        b=b6cmu4Zz4n9pPaI3DkMyTLC/phpvWSGkuxYlXW5qsNdySih4hg5UD2FYe1J6Smrdlq
         qFq2c982p9YTFzWeQ7Sv8WM7Y9hkTZrb9hXZlGj4mdkTl19o/EgV7ql8RQr10Hn2vhEp
         BuJe3IeBEv/YdKrOgQdWPEcuWBezYKQn1hkHFtOv6DPDDW1YzN+SM1WO0VJYDy+3WM1s
         I+Ym+EnWM93wriGXNGnCqXWw+yUlvjjGHIaJpFC6FcF38ScDvB6RMDHkX5XDeA0alOOW
         OVXnRc+3B+v2Ra0Nq6zWUmj4admf1IpO1mAgN3TxrMybfgQoAuPY7bUKmslIpK3nwA/c
         o/tQ==
X-Gm-Message-State: AOJu0YweoABxJ/Lfznr0s9oz+/IWm3P8UiF31qjCVKtSyfLBVYU/JGoK
	Kdxwwpf6t0nQ1axqNdzapMI=
X-Google-Smtp-Source: AGHT+IFUYU/5tT+wcfbTt7FLR7SeyP5pqtB/vKdWiw5BY+hmbuX8hYUXNJeVPi7le5S0sbJt7bwJAQ==
X-Received: by 2002:a17:902:dac8:b0:1bf:22b7:86d with SMTP id q8-20020a170902dac800b001bf22b7086dmr10846553plx.3.1696628662557;
        Fri, 06 Oct 2023 14:44:22 -0700 (PDT)
Date: Fri, 6 Oct 2023 21:44:20 +0000
From: Wei Liu <wei.liu@kernel.org>
To: Roger Pau Monne <roger.pau@citrix.com>
Cc: linux-kernel@vger.kernel.org,
	Ross Lagerwall <ross.lagerwall@citrix.com>,
	Wei Liu <wei.liu@kernel.org>, Paul Durrant <paul@xen.org>,
	"David S. Miller" <davem@davemloft.net>,
	Eric Dumazet <edumazet@google.com>,
	Jakub Kicinski <kuba@kernel.org>, Paolo Abeni <pabeni@redhat.com>,
	Ian Campbell <Ian.Campbell@citrix.com>,
	Ben Hutchings <bhutchings@solarflare.com>,
	xen-devel@lists.xenproject.org, netdev@vger.kernel.org
Subject: Re: [PATCH] xen-netback: use default TX queue size for vifs
Message-ID: <ZSB/tKydP056arIy@liuwe-devbox-debian-v2>
References: <20231005140831.89117-1-roger.pau@citrix.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=iso-8859-1
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <20231005140831.89117-1-roger.pau@citrix.com>

On Thu, Oct 05, 2023 at 04:08:31PM +0200, Roger Pau Monne wrote:
> Do not set netback interfaces (vifs) default TX queue size to the ring size.
> The TX queue size is not related to the ring size, and using the ring size (32)
> as the queue size can lead to packet drops.  Note the TX side of the vif
> interface in the netback domain is the one receiving packets to be injected
> to the guest.
> 
> Do not explicitly set the TX queue length to any value when creating the
> interface, and instead use the system default.  Note that the queue length can
> also be adjusted at runtime.
> 
> Fixes: f942dc2552b8 ('xen network backend driver')
> Signed-off-by: Roger Pau Monn <roger.pau@citrix.com>

Acked-by: Wei Liu <wei.liu@kernel.org>


From xen-devel-bounces@lists.xenproject.org Fri Oct 06 22:24:58 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 22:24:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613848.954665 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qotFY-0007ad-5s; Fri, 06 Oct 2023 22:24:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613848.954665; Fri, 06 Oct 2023 22: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 1qotFY-0007aW-34; Fri, 06 Oct 2023 22:24:48 +0000
Received: by outflank-mailman (input) for mailman id 613848;
 Fri, 06 Oct 2023 22:24: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 1qotFW-0007aM-Rb; Fri, 06 Oct 2023 22:24: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 1qotFW-0004Gv-JX; Fri, 06 Oct 2023 22:24: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 1qotFW-0006GQ-9t; Fri, 06 Oct 2023 22:24:46 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qotFW-0000Be-9V; Fri, 06 Oct 2023 22:24: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=/p1OSKtVX2OerMe/S4giav23SbVmk141rp4HjJEJBeY=; b=hYKJz9p0pcrOjnNu8A2Acn+N/H
	MRSgLgQCGHUh2SqMxqPncf8lGa5vLoxiqcXkvlPKtzkZaLdR2r01INxDMrR6hgrTGbZDc7NNt+m01
	ObX+umASav7GhQ3b1XV++Yh1DjigEnNVIgEwaU2MLjCGJWulvSCHsYHbu4Ny2vfFJdGw=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183301-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 183301: 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=ffa1437686712045953c33c5e77a4ebdd9973916
X-Osstest-Versions-That:
    xen=02c98966360b76052779b0186784437af88f301e
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 06 Oct 2023 22:24:46 +0000

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

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                  ffa1437686712045953c33c5e77a4ebdd9973916
baseline version:
 xen                  02c98966360b76052779b0186784437af88f301e

Last test of basis   183270  2023-10-05 13:03:52 Z    1 days
Failing since        183272  2023-10-05 16:00:24 Z    1 days    6 attempts
Testing same since   183301  2023-10-06 20:00:25 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Andrii Chepurnyi <andrii_chepurnyi@epam.com>
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.com>
  Roger Pau Monne <roger.pau@citrix.com>
  Roger Pau Monné <roger.pau@citrix.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
   02c9896636..ffa1437686  ffa1437686712045953c33c5e77a4ebdd9973916 -> smoke


From xen-devel-bounces@lists.xenproject.org Fri Oct 06 23:59:20 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 23:59:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613856.954678 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qouim-0000Fu-0V; Fri, 06 Oct 2023 23:59:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613856.954678; Fri, 06 Oct 2023 23: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 1qouil-0000Fn-Th; Fri, 06 Oct 2023 23:59:03 +0000
Received: by outflank-mailman (input) for mailman id 613856;
 Fri, 06 Oct 2023 23:59: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=I3TD=FU=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qouik-0000Fc-IK
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 23:59:02 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com
 (mail-db3eur04on0602.outbound.protection.outlook.com
 [2a01:111:f400:fe0c::602])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 4ee9995e-64a4-11ee-9b0d-b553b5be7939;
 Sat, 07 Oct 2023 01:58:56 +0200 (CEST)
Received: from AS4P190CA0024.EURP190.PROD.OUTLOOK.COM (2603:10a6:20b:5d0::15)
 by VI1PR08MB10052.eurprd08.prod.outlook.com (2603:10a6:800:1c7::7)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.37; Fri, 6 Oct
 2023 23:58:48 +0000
Received: from AM7EUR03FT027.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:20b:5d0:cafe::37) by AS4P190CA0024.outlook.office365.com
 (2603:10a6:20b:5d0::15) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.33 via Frontend
 Transport; Fri, 6 Oct 2023 23:58:48 +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.6886.17 via Frontend Transport; Fri, 6 Oct 2023 23:58:47 +0000
Received: ("Tessian outbound fb5c0777b309:v211");
 Fri, 06 Oct 2023 23:58:46 +0000
Received: from f58b4441f286.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 A44B26ED-7345-4D1F-92F1-BA610456CD14.1; 
 Fri, 06 Oct 2023 23:58:40 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id f58b4441f286.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Fri, 06 Oct 2023 23:58:40 +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.6838.35; Fri, 6 Oct
 2023 23:58: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.040; Fri, 6 Oct 2023
 23:58: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: 4ee9995e-64a4-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=Tk9ukUfAwqaY1S5PssxvM4J0viIgAEzY8L0eArFhfsk=;
 b=L3E+SFyjw79fJal6pMxWzy0rsxkSKSsS+6MwH2gqBmH56xktyU7LY976abUXejMOu0COBpbO77fhM0sPp0GBlhr7GyZxRzCUf1t3YHxzNx2F40obZ/qk5rAHlqzYlnsuHRDPsMnPATKUbkigcUUG0esiJZKyo0kFXNeXnJlAWVA=
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: 51a88817f2d08d81
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=SgN2dCKF2gXC6AAc5I29Gyb8hNjqkB/Ot0VzMW9QHR+92rEmMwcdylao1PmMJe1ozqgqanK/ZY9mLBl4fXQhl/TZcqDEgC7pZXabZRffeooIq8dHLjJBGzbhDqpkwoDaM6IpbtMjhrhl62jWeDSKrc5hBpLX8InlzFKKrQeeZ7kDb9x2N/ImCKzTVZZ69x+2yT+10368P/7tUXx4XGhDYJFbAIXazbrIdK3L8xM0pu98FZeSc7gANChO+4xDoHFfx7pK3VwXiD3WI70zwJCAV0xX83nVJIqkybuVdcYjjHeesjC7R8ITL154PP2ahBbgiEF/ddMs91pdR1FEOT+mJQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=Tk9ukUfAwqaY1S5PssxvM4J0viIgAEzY8L0eArFhfsk=;
 b=U3jjKtXnsz59QmKAlrxkz7avhpsBbuJfIfJVFpz9d3hdSjt7Me5JRoc3V1ZMfxcoRHA5A/gItdKTIurSvyZnz3w07Oj5M3lYphLPR7hYGBdxmFo3/ZIUfLouYb4UsQQrldGdqTe5o8lkWWwKuldbREPNvB1JDM0+FQTxoYHeqyBBASB6lvkVH10ISjv53J+Z8ix9RTZVuYoMSS6Ow+V1qBGWVjGhkSwVVzHPW992SngHmJDj7ZSBX5trnkiBS/Gx6RJu0gKKziHZgbMgvI2CR8I2hdyNtosk5FwBJNBHQaT8KCvk9s8MRB4lHv6VOdWpl3DkCQvLCMDGOAVUYsmJiQ==
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=Tk9ukUfAwqaY1S5PssxvM4J0viIgAEzY8L0eArFhfsk=;
 b=L3E+SFyjw79fJal6pMxWzy0rsxkSKSsS+6MwH2gqBmH56xktyU7LY976abUXejMOu0COBpbO77fhM0sPp0GBlhr7GyZxRzCUf1t3YHxzNx2F40obZ/qk5rAHlqzYlnsuHRDPsMnPATKUbkigcUUG0esiJZKyo0kFXNeXnJlAWVA=
From: Henry Wang <Henry.Wang@arm.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>
CC: Xen-devel <xen-devel@lists.xenproject.org>, George Dunlap
	<George.Dunlap@eu.citrix.com>, Jan Beulich <JBeulich@suse.com>, Stefano
 Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>, Julien Grall
	<julien@xen.org>, Michal Orzel <michal.orzel@amd.com>
Subject: Re: [PATCH for-4.18 v2 1/2] docs/spnix: Switch hypercall-abi.rst to
 named footnotes
Thread-Topic: [PATCH for-4.18 v2 1/2] docs/spnix: Switch hypercall-abi.rst to
 named footnotes
Thread-Index: AQHZ+IaKby48NZZwo0qwoJDsTtN9HrA9cO+A
Date: Fri, 6 Oct 2023 23:58:36 +0000
Message-ID: <4F5006AE-01A7-49CB-B49B-7F1B6BD27BAC@arm.com>
References: <20231006185402.1098400-1-andrew.cooper3@citrix.com>
 <20231006185402.1098400-2-andrew.cooper3@citrix.com>
In-Reply-To: <20231006185402.1098400-2-andrew.cooper3@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_|PA4PR08MB6032:EE_|AM7EUR03FT027:EE_|VI1PR08MB10052:EE_
X-MS-Office365-Filtering-Correlation-Id: 85f2a10a-19d8-4796-95e9-08dbc6c82e2a
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:
 K5amFKT3eK2c4b+liOGDCuvNLQY/KysUz5BwJx2TjmXgtZIlXEiffncLfZ/CFrVDcqpSRH5RK9g8oaGtSdY9AUeJlGbgBRs6ZwsNj3UPwUfZ/JEQ/FaUeH0yl+1KPd3Zfa1F2YPzLHONZ89OCgqxHKL3SFkIPBuzucMEpvPlGTy0+yv8vhgmqs1MRAcKl0rq/yXH3NseIwxaCRbKXbls081saiFf50hDQDDH36xk1kK0xD3DrfOvNDd+oB0K+21LsqP1H371Vl4vrRGc/p8+uhmC/3Kuu7ijMpmaIiBZH9wBHaLPIS6IQilFAncGcqiDlWvgjKv1QLni1m9tslmmAVxlb1vbhDYQrJ/4tRF44xTIsYTBSAZK6ZxNRL+AS8q8+5gc9bpwIN98yKsZITnlAmOL/SRILM/IxCxEKckf0ja1v2814l0lf1A/ZNNUY8TtKe701bUuElFfXSDdKjSoPVEFGbXs7IANtz2oj7dViYMnGZvQqpvBtPfMn2GdGtPAStdvSz8s/1vsLx/8fNx1V8iqURcHT7QPZq5k4gntxkqJpLHeW1V47r23W+L9kj8CV8mtoYKH80Zzpzeitxh/v32eGRhXz6lF+cQHSTpTrI1Jf7WS8Mu5WqlXbFzZznMjIX+u8lH6ZFBazq5rEO0nWA==
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)(346002)(396003)(376002)(230922051799003)(451199024)(64100799003)(186009)(1800799009)(5660300002)(8936002)(4326008)(86362001)(8676002)(83380400001)(33656002)(2906002)(41300700001)(54906003)(64756008)(316002)(66476007)(6916009)(66446008)(66556008)(91956017)(26005)(36756003)(6512007)(66946007)(76116006)(53546011)(6486002)(6506007)(122000001)(478600001)(38100700002)(38070700005)(2616005)(71200400001)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="us-ascii"
Content-ID: <905EB56FEE693949A75593E9B3B90543@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:
 AM7EUR03FT027.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	039c5ea8-d6e4-491d-891e-08dbc6c82772
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	XUjb8mL8ZpnkLZcJZJeAlBZ7rXlJ95k5CZwvtg3h8+YWFENvbM2i53CnzpJeh2Kv086PWO/ghjE8eSYnctgF48iov5UIWYGHH91aXZJKWUSZAuIOo28tlX4j5QEblsHYlimkrDXvqLNRmP7Zac5Yy1+Lusn10atOyVA3Wayjq4zBnSH6nHPmBGr1sLrPSRJf2kWijPzZjPTx0ZbwrlhlhhXAoEDmz8s5xnGCyQdvKJ2IdmygxoN0m2Ze6+7WRZbSxrmTVIi7iHpoaGSBvgINSEFNG8IIFDxio9Xk2IZ06NSo3I/wg+RKrydoV4FW42Yu0uKM6GU0zlR7+WLcd5mCMYJw/HmUaZ0gjcKpJJOgvAm0EXhDmhPPQjVSu4dsMAHVmhLC9vIt6URvngN8ghHtOA8KW2Lr4GEvSWUiRZKWX6Lm+AFBLHiSlucQFG+y0DZuvn7wXekUUtUn5qxBmHTsoM2XgarekPuqSBMirL3/AE3XwNcubRyGlAjYE36/SaKeDT7QbPUXU+Cg6UnpXhlyzucmUfUco45PZk7FpPuoZ07UbxmmnG1PV6uXW8m3JKiK3MuiL92UqUjzMPFx6+ERy+O2giSfumb0xyllZYM8mJEeeu3v3HiR7FuCiXqHVI/n3pPqh63t2AsxLLCRNN4YMOmSlihnljKjes9oz7H4yZga8AhwP4fpwOXuqFXQIMa1FqkFmMUYuE+AniPk7pq+13QpYSKVcc6iDioNVxXpfypXQt8bIJJ8vTmcMaxClOZg
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)(136003)(39850400004)(396003)(230922051799003)(64100799003)(186009)(1800799009)(82310400011)(451199024)(40470700004)(46966006)(36840700001)(40460700003)(2906002)(81166007)(356005)(83380400001)(40480700001)(41300700001)(8676002)(36756003)(5660300002)(8936002)(4326008)(6862004)(316002)(54906003)(86362001)(2616005)(33656002)(478600001)(70586007)(70206006)(6486002)(6506007)(26005)(53546011)(336012)(6512007)(82740400003)(36860700001)(47076005);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Oct 2023 23:58:47.2733
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 85f2a10a-19d8-4796-95e9-08dbc6c82e2a
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: VI1PR08MB10052

Hi Andrew,

Title typo: s/spnix/sphinx/. Can be fixed on commit.

> On Oct 7, 2023, at 02:54, Andrew Cooper <andrew.cooper3@citrix.com> wrote=
:
>=20
> This will simplify inserting a new one in the middle.
>=20
> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>

Release-acked-by: Henry Wang <Henry.Wang@arm.com>

Kind regards,
Henry

> ---
> CC: George Dunlap <George.Dunlap@eu.citrix.com>
> CC: Jan Beulich <JBeulich@suse.com>
> CC: Stefano Stabellini <sstabellini@kernel.org>
> CC: Wei Liu <wl@xen.org>
> CC: Julien Grall <julien@xen.org>
> CC: Michal Orzel <michal.orzel@amd.com>
> CC: Henry Wang <Henry.Wang@arm.com>
> ---
> docs/guest-guide/x86/hypercall-abi.rst | 24 ++++++++++++------------
> 1 file changed, 12 insertions(+), 12 deletions(-)
>=20
> diff --git a/docs/guest-guide/x86/hypercall-abi.rst b/docs/guest-guide/x8=
6/hypercall-abi.rst
> index 14c48929d748..42a820386b68 100644
> --- a/docs/guest-guide/x86/hypercall-abi.rst
> +++ b/docs/guest-guide/x86/hypercall-abi.rst
> @@ -6,7 +6,7 @@ Hypercall ABI
> Hypercalls are system calls to Xen.  Two modes of guest operation are
> supported, and up to 6 individual parameters are supported.
>=20
> -Hypercalls may only be issued by kernel-level software [1]_.
> +Hypercalls may only be issued by kernel-level software [#kern]_.
>=20
> Registers
> ---------
> @@ -33,7 +33,7 @@ The registers used for hypercalls depends on the operat=
ing mode of the guest.
>=20
> 32 and 64bit PV guests have an ABI fixed by their guest type.  The ABI fo=
r an
> HVM guest depends on whether the vCPU is operating in a 64bit segment or =
not
> -[2]_.
> +[#mode]_.
>=20
>=20
> Parameters
> @@ -87,7 +87,7 @@ written by Xen, is mapped with executable permissions s=
o it may be used.
> Multiple hypercall pages may be created by the guest, if it wishes.
>=20
> The stubs are arranged by hypercall index, and start on 32-byte boundarie=
s.
> -To invoke a specific hypercall, ``call`` the relevant stub [3]_:
> +To invoke a specific hypercall, ``call`` the relevant stub [#iret]_:
>=20
> .. code-block:: none
>=20
> @@ -116,14 +116,14 @@ means.
>=20
> .. rubric:: Footnotes
>=20
> -.. [1] For HVM guests, ``HVMOP_guest_request_vm_event`` may be configure=
d to
> -       be usable from userspace, but this behaviour is not default.
> +.. [#kern] For HVM guests, ``HVMOP_guest_request_vm_event`` may be confi=
gured
> +   to be usable from userspace, but this behaviour is not default.
>=20
> -.. [2] While it is possible to use compatibility mode segments in a 64bi=
t
> -       kernel, hypercalls issues from such a mode will be interpreted wi=
th the
> -       32bit ABI.  Such a setup is not expected in production scenarios.
> +.. [#mode] While it is possible to use compatibility mode segments in a =
64bit
> +   kernel, hypercalls issues from such a mode will be interpreted with t=
he
> +   32bit ABI.  Such a setup is not expected in production scenarios.
>=20
> -.. [3] ``HYPERCALL_iret`` is special.  It is only implemented for PV gue=
sts
> -       and takes all its parameters on the stack.  This stub should be
> -       ``jmp``'d to, rather than ``call``'d.  HVM guests have this stub
> -       implemented as ``ud2a`` to prevent accidental use.
> +.. [#iret] ``HYPERCALL_iret`` is special.  It is only implemented for PV
> +   guests and takes all its parameters on the stack.  This stub should b=
e
> +   ``jmp``'d to, rather than ``call``'d.  HVM guests have this stub
> +   implemented as ``ud2a`` to prevent accidental use.
> --=20
> 2.30.2
>=20



From xen-devel-bounces@lists.xenproject.org Fri Oct 06 23:59:21 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 06 Oct 2023 23:59:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613857.954688 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qouj3-0000ZY-BY; Fri, 06 Oct 2023 23:59:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613857.954688; Fri, 06 Oct 2023 23:59: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 1qouj3-0000ZR-8g; Fri, 06 Oct 2023 23:59:21 +0000
Received: by outflank-mailman (input) for mailman id 613857;
 Fri, 06 Oct 2023 23:59: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=I3TD=FU=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qouj1-0000YN-CS
 for xen-devel@lists.xenproject.org; Fri, 06 Oct 2023 23:59:19 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur04on0602.outbound.protection.outlook.com
 [2a01:111:f400:fe0e::602])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 5bbece42-64a4-11ee-98d3-6d05b1d4d9a1;
 Sat, 07 Oct 2023 01:59:17 +0200 (CEST)
Received: from AM6PR04CA0002.eurprd04.prod.outlook.com (2603:10a6:20b:92::15)
 by DU0PR08MB8953.eurprd08.prod.outlook.com (2603:10a6:10:464::15)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.41; Fri, 6 Oct
 2023 23:59:05 +0000
Received: from AM7EUR03FT062.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:20b:92:cafe::e1) by AM6PR04CA0002.outlook.office365.com
 (2603:10a6:20b:92::15) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.30 via Frontend
 Transport; Fri, 6 Oct 2023 23:59:05 +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.6863.26 via Frontend Transport; Fri, 6 Oct 2023 23:59:04 +0000
Received: ("Tessian outbound ab4fc72d2cd4:v211");
 Fri, 06 Oct 2023 23:59:03 +0000
Received: from d9fdb36b343a.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 7098A23B-E5E6-47EA-A6E9-4164005190C2.1; 
 Fri, 06 Oct 2023 23:58:58 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id d9fdb36b343a.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Fri, 06 Oct 2023 23:58:58 +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.6838.35; Fri, 6 Oct
 2023 23:58:55 +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.040; Fri, 6 Oct 2023
 23:58: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: 5bbece42-64a4-11ee-98d3-6d05b1d4d9a1
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=aDXCvUPkeaup1b5gu9nPPdYP3fyl6kClTr38z+v5/Yk=;
 b=ev2S3w49lgTXz8ebOX7OtgaW+wNHqCRdQ7Iyf5kR9M33K8oHAhkcR9iih0rxzAhCVq+iFQVRcYBbeJLZpXzlTNnZ2FrbxltLTsvqunsvy9EFvxrbPvdgq98FSug4M9JN+qyUZU8sDaEZtBDgHE0JGL/x4/ydV23utz5acrsaXLc=
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: 3f9675d73e597d9a
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=iOPueBEvplnLoL1KzJ7+eOs1UOzmjBpiAAPPf9jOOl1ICyMwUNNd0OQ9CGYwzLB9EirZ2zGymabSvUi0M9F62rD+x44UJLDlRBu/vhB7iEgfi0s7MDSR2KE9zAR8u73TG0BlEJ/vjeEHxYZJGEh2C70UOYrmYKhJTkmaDzhEMfr2pguG8eOVVvssh6krWZjbrGwb9yEZ+z8YiTNLfbg2P94iNvYEFn9l/Su1OlFoG9GjqB0pT+vvYe3OSvjlDR4r54va81gz+/LCgdS7xd0SKjVDdkBFhaKOTRxYhF33jo5q9CtHU5VrFRh04xZoNj20ZrL1IzanlxEeuzUKDK2QeA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=aDXCvUPkeaup1b5gu9nPPdYP3fyl6kClTr38z+v5/Yk=;
 b=kTuEqRuv2aAif/+HTfT0oE+a8I35TbjiyK1+MrjWc4KtQ0Cp99uL6ct7Dfzearzk+s8oVwvx99izU5L6HnVsNvcue9YEgQb3MRmTciqm4uScoZU/Ngme6PnsSrwqq60aIdRZP01Owh1Tgzjlzfu/OlyWN9mzvw8vQ8VCzYaFYzVYYq6YxVrToviBc6xjjEhckL9wIQDMRCPpNl4XWDW0zHUoVmPYjony08QAqUjXFCRINnE4H2wPxM6jHYKEj7lTNXcHB9OPHfLGqgSmNsA7OeeeHaO+4pcJIF/R1O8cahtD5If1zdAO8gMopT78d6pmEBxbRH3kZsWzvQxSch4jLQ==
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=aDXCvUPkeaup1b5gu9nPPdYP3fyl6kClTr38z+v5/Yk=;
 b=ev2S3w49lgTXz8ebOX7OtgaW+wNHqCRdQ7Iyf5kR9M33K8oHAhkcR9iih0rxzAhCVq+iFQVRcYBbeJLZpXzlTNnZ2FrbxltLTsvqunsvy9EFvxrbPvdgq98FSug4M9JN+qyUZU8sDaEZtBDgHE0JGL/x4/ydV23utz5acrsaXLc=
From: Henry Wang <Henry.Wang@arm.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>
CC: Xen-devel <xen-devel@lists.xenproject.org>, Michal Orzel
	<michal.orzel@amd.com>, George Dunlap <George.Dunlap@eu.citrix.com>, Jan
 Beulich <JBeulich@suse.com>, Stefano Stabellini <sstabellini@kernel.org>, Wei
 Liu <wl@xen.org>, Julien Grall <julien@xen.org>
Subject: Re: [PATCH for-4.18 v2 2/2] x86: Clarify that only 5 hypercall
 parameters are supported
Thread-Topic: [PATCH for-4.18 v2 2/2] x86: Clarify that only 5 hypercall
 parameters are supported
Thread-Index: AQHZ+IaJFU7NfyVjOkmfZ+oclxtwaLA9cQeA
Date: Fri, 6 Oct 2023 23:58:55 +0000
Message-ID: <E381997A-820F-4041-A528-E906843E9811@arm.com>
References: <20231006185402.1098400-1-andrew.cooper3@citrix.com>
 <20231006185402.1098400-3-andrew.cooper3@citrix.com>
In-Reply-To: <20231006185402.1098400-3-andrew.cooper3@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_|PA4PR08MB6032:EE_|AM7EUR03FT062:EE_|DU0PR08MB8953:EE_
X-MS-Office365-Filtering-Correlation-Id: c12243d9-1bbf-4230-288e-08dbc6c83860
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:
 uUr3p4NyPIeqEDblPOV6Yi4WU9yJAdNdBjWgyZ9EUv5PKyf4KWzpLdv4gn7Y9Wr0ocrCa03qeseEkrnj8qviSPy16rUV1Jytu8dCFLoqGD/cHuLlhXhBncINFsANiECwJI2dHvQSnH3vnTju3CH+FkGUvzQgydGYRSa/iumA/Fu4H7GyQWaLuz4jhQwhFPLC0J+Oa4YTMp++iaK9FBctASpRdHbBvzqJF+zEN1GW/EuFgB2Yf7bFalFC/xnQyZOLZkgbL4VhJ96C3xYYaWhmYuxVQ1pu2hhvCJmFnj2AlTi6GOl+FoJhJLIVaMncWzHixzixlaLE8wlPXwRRDIh4vhDtMSrF5J8hy6eF3OsJCiHNuLOs3gPqVKv8UAxVNPc39A19kYFSQZdxtlHl0ToXSg+T5iVDLOuBeUqGzRo0el1ohXHukJLUAw9uTldu7rTxB1ZamfjSr6LgJ7wsC6ne+DVkejx6GgFKOiQK7Wn0X6lf64Fojr8vg+46Z8h6cVh6PYvGijTTMXeXiI4RTNK2JN7laIV65DdHF0P74NWWDWvKSRbmcNZDz2UmBA3Li1Kzug+nUQ1rGxGwDM/XdCBcK2taLpAMNzNUbt2Qhu429WU/UYGWRsO3QV5N1PivkOvVD3L5S197yt2LTaKynogOhQ==
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)(346002)(396003)(376002)(230922051799003)(451199024)(64100799003)(186009)(1800799009)(5660300002)(8936002)(4326008)(86362001)(8676002)(83380400001)(33656002)(2906002)(41300700001)(54906003)(64756008)(316002)(66476007)(6916009)(66446008)(66556008)(91956017)(26005)(36756003)(6512007)(66946007)(76116006)(53546011)(6486002)(6506007)(122000001)(478600001)(38100700002)(38070700005)(2616005)(71200400001)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="us-ascii"
Content-ID: <1A3FF03DC0B61C4B8E7E6AC6B16B1E6A@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:
 AM7EUR03FT062.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	eea55666-f453-4de0-a4c9-08dbc6c8332e
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	0vgidJbzd02vMAe1l9ZiWNb/xZ31XrpXZnqhUYieVDUMSAIZvm9LiEoPMjFYZvmq6zTWOH281NCOiB8pTuVa+CldTpUvOSGybaa1kzMvX8fUHZT/GoCRxoPVLRzvx9mmmYXWsSaoWBnmOqylSA+gnUWYLiYKWS4fFhu9dcjR9cgpkJwWaT1i/rD0GI8O0A0NOTUx4xWES5wq7rmmXFHTWkmBjzS2WjkrHl9AI53txFrnGWRd8eUz/uPoILb9ln1aikNupNHZPwrpZ0cotKQLE0QVNguF5k4jkKhVGbLKHHpmDgi1HSkqC8O1nPtN+Wor+bkJsJ+QKsxVAp4XxeD2wBAQR6JkmhMsDZ54zSltaZZOhnJ8pPdcObQFfJL6na0uW/cYBA2IKN8Trw9JmX6U2MBSgAVzFUoSwd7MS/Gu1qoA7n3LRnj4L+zLb8O7A9f+2VB98sWiepX5KtlflSoqMoYJrmWwIDwAOAbcA/MUVgPGY5rGt/g6CR9R5BVTnSycF7yferpKn3yWR4c+nGACWJyPXfXqLHMp1KfmgW28hglGlQtH3TzgijqPOw/b5ya9FsElaxNnxAdeQWiuU0tlvp6nhaJA1L1hJB7RgXq/CXLfaC7AiElHO3jNCj/WgqG8eorvGGOTd3aXdjEpEhTNv47KgI+oT3Wxo2GOURolKEevFt0CyZEpJREpYSZBnfeb+TVVScSYQC77sjh5nCofNRrXEEhDk4GIr8DHaNfDpGD00loL91mrGvxmA3FFS0Lt
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)(186009)(82310400011)(64100799003)(1800799009)(451199024)(46966006)(36840700001)(40470700004)(47076005)(36860700001)(40460700003)(6512007)(478600001)(70206006)(70586007)(54906003)(316002)(6506007)(53546011)(81166007)(82740400003)(356005)(6486002)(2616005)(5660300002)(26005)(41300700001)(4326008)(6862004)(8676002)(8936002)(36756003)(40480700001)(86362001)(336012)(2906002)(83380400001)(33656002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Oct 2023 23:59:04.3704
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: c12243d9-1bbf-4230-288e-08dbc6c83860
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: DU0PR08MB8953

Hi,

> On Oct 7, 2023, at 02:54, Andrew Cooper <andrew.cooper3@citrix.com> wrote=
:
>=20
> From: Michal Orzel <michal.orzel@amd.com>
>=20
> The x86 hypercall ABI really used to have 6-argument hypercalls.  V4V, th=
e
> downstream predecessor to Argo did take 6th args.
>=20
> However, the 6th arg being %ebp in the 32bit ABI makes it unusable in
> practice, because that's the frame pointer in builds with frame pointers
> enabled.  Therefore Argo was altered to being a 5-arg hypercall when it w=
as
> upstreamed.
>=20
> c/s 2f531c122e95 ("x86: limit number of hypercall parameters to 5") remov=
ed
> the ability for hypercalls to take 6 arguments.
>=20
> Update the documentation to match reality.
>=20
> Signed-off-by: Michal Orzel <michal.orzel@amd.com>
> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>

Release-acked-by: Henry Wang <Henry.Wang@arm.com>

Kind regards,
Henry

> ---
> CC: George Dunlap <George.Dunlap@eu.citrix.com>
> CC: Jan Beulich <JBeulich@suse.com>
> CC: Stefano Stabellini <sstabellini@kernel.org>
> CC: Wei Liu <wl@xen.org>
> CC: Julien Grall <julien@xen.org>
> CC: Michal Orzel <michal.orzel@amd.com>
> CC: Henry Wang <Henry.Wang@arm.com>
>=20
> v2:
> * Extend with the historical context of how 6-arg hypercalls have come an=
d gone.
> ---
> docs/guest-guide/x86/hypercall-abi.rst   | 15 +++++++++++----
> xen/include/public/arch-x86/xen-x86_32.h |  2 +-
> xen/include/public/arch-x86/xen-x86_64.h |  2 +-
> 3 files changed, 13 insertions(+), 6 deletions(-)
>=20
> diff --git a/docs/guest-guide/x86/hypercall-abi.rst b/docs/guest-guide/x8=
6/hypercall-abi.rst
> index 42a820386b68..c7a11a76712f 100644
> --- a/docs/guest-guide/x86/hypercall-abi.rst
> +++ b/docs/guest-guide/x86/hypercall-abi.rst
> @@ -4,7 +4,7 @@ Hypercall ABI
> =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
>=20
> Hypercalls are system calls to Xen.  Two modes of guest operation are
> -supported, and up to 6 individual parameters are supported.
> +supported, and up to 5 individual parameters are supported.
>=20
> Hypercalls may only be issued by kernel-level software [#kern]_.
>=20
> @@ -18,17 +18,17 @@ The registers used for hypercalls depends on the oper=
ating mode of the guest.
>=20
>    * - ABI
>      - Hypercall Index
> -     - Parameters (1 - 6)
> +     - Parameters (1 - 5) [#params]_
>      - Result
>=20
>    * - 64bit
>      - RAX
> -     - RDI RSI RDX R10 R8 R9
> +     - RDI RSI RDX R10 R8
>      - RAX
>=20
>    * - 32bit
>      - EAX
> -     - EBX ECX EDX ESI EDI EBP
> +     - EBX ECX EDX ESI EDI
>      - EAX
>=20
> 32 and 64bit PV guests have an ABI fixed by their guest type.  The ABI fo=
r an
> @@ -119,6 +119,13 @@ means.
> .. [#kern] For HVM guests, ``HVMOP_guest_request_vm_event`` may be config=
ured
>    to be usable from userspace, but this behaviour is not default.
>=20
> +.. [#params] Xen's ABI used to declare support for 6 hypercall arguments=
,
> +   using ``r9`` and ``ebp``.  However, such an ABI clobbers the frame po=
inter
> +   in the 32bit code and does interact nicely with guest-side debugging.=
  The
> +   predecessor to ``HYPERCALL_argo_op`` was a 6-argument hypercall, but =
the
> +   ABI was intentionally altered when Argo was upstreamed (Xen 4.13) to =
be the
> +   5-argument hypercall it now is.
> +
> .. [#mode] While it is possible to use compatibility mode segments in a 6=
4bit
>    kernel, hypercalls issues from such a mode will be interpreted with th=
e
>    32bit ABI.  Such a setup is not expected in production scenarios.
> diff --git a/xen/include/public/arch-x86/xen-x86_32.h b/xen/include/publi=
c/arch-x86/xen-x86_32.h
> index 139438e83534..9e3bf06b121e 100644
> --- a/xen/include/public/arch-x86/xen-x86_32.h
> +++ b/xen/include/public/arch-x86/xen-x86_32.h
> @@ -12,7 +12,7 @@
>=20
> /*
>  * Hypercall interface:
> - *  Input:  %ebx, %ecx, %edx, %esi, %edi, %ebp (arguments 1-6)
> + *  Input:  %ebx, %ecx, %edx, %esi, %edi (arguments 1-5)
>  *  Output: %eax
>  * Access is via hypercall page (set up by guest loader or via a Xen MSR)=
:
>  *  call hypercall_page + hypercall-number * 32
> diff --git a/xen/include/public/arch-x86/xen-x86_64.h b/xen/include/publi=
c/arch-x86/xen-x86_64.h
> index 5d9035ed2230..43f6e3d22001 100644
> --- a/xen/include/public/arch-x86/xen-x86_64.h
> +++ b/xen/include/public/arch-x86/xen-x86_64.h
> @@ -12,7 +12,7 @@
>=20
> /*
>  * Hypercall interface:
> - *  Input:  %rdi, %rsi, %rdx, %r10, %r8, %r9 (arguments 1-6)
> + *  Input:  %rdi, %rsi, %rdx, %r10, %r8 (arguments 1-5)
>  *  Output: %rax
>  * Access is via hypercall page (set up by guest loader or via a Xen MSR)=
:
>  *  call hypercall_page + hypercall-number * 32
> --=20
> 2.30.2
>=20



From xen-devel-bounces@lists.xenproject.org Sat Oct 07 00:05:31 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 07 Oct 2023 00:05:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613866.954698 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qouow-00038T-Am; Sat, 07 Oct 2023 00:05:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613866.954698; Sat, 07 Oct 2023 00: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 1qouow-00038M-6i; Sat, 07 Oct 2023 00:05:26 +0000
Received: by outflank-mailman (input) for mailman id 613866;
 Sat, 07 Oct 2023 00: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=BHja=FV=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qouou-00038G-6T
 for xen-devel@lists.xenproject.org; Sat, 07 Oct 2023 00:05:24 +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 35c5ea43-64a5-11ee-98d3-6d05b1d4d9a1;
 Sat, 07 Oct 2023 02:05:23 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by ams.source.kernel.org (Postfix) with ESMTP id B00F3B82AE9;
 Sat,  7 Oct 2023 00:05:22 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 37AA8C433C9;
 Sat,  7 Oct 2023 00:05: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: 35c5ea43-64a5-11ee-98d3-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696637122;
	bh=+QKjNxqdK1HZCzgDxdrEmWcvRAWh2B43KmOmZ/DuQks=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=jgW87xYn55vmDF4pkcQ7rhBxJ3APr2viJCQqis8s/0w8uui3cGKRSbmReJXj7TBfA
	 VhOS3d03/Z8Suf/sRm3bgMb0qhdLgE6+9vomfjJykuhTkt3P8H1ecLrjAj/en12NFA
	 QGgjjlF9D7lusQPQbHKDRbjtvlElrz4cn73w4331zY/XAaOVNMgoNUDERhEPT21pwR
	 CjdU80FKwv5PHSoLoevP3oNtXc0nJLUuk6noKS1P52xt6Y0V5URxx/XaRer5Kc33x7
	 34wdWwYW/jJIv3Vehdfms+kdtqiv8EfXswENB1IqHTKv+5dqVwmsQBBR3u5OtmwdBT
	 LV8rLvORTLZPA==
Date: Fri, 6 Oct 2023 17:05:18 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Julien Grall <julien@xen.org>
cc: Nicola Vetrini <nicola.vetrini@bugseng.com>, 
    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, Simone Ballarin <simone.ballarin@bugseng.com>, 
    Doug Goldstein <cardoe@cardoe.com>, 
    George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>
Subject: Re: [XEN PATCH][for-4.19 1/9] xen/include: add macro LOWEST_POW2
In-Reply-To: <01fd528d-845d-4342-a17a-e080a921273f@xen.org>
Message-ID: <alpine.DEB.2.22.394.2310061654470.3431292@ubuntu-linux-20-04-desktop>
References: <cover.1696514677.git.nicola.vetrini@bugseng.com> <d27f52eaaa62ec4ebb9ce8b6cf243779d341367d.1696514677.git.nicola.vetrini@bugseng.com> <6102db25-2fd6-49fa-be66-ec2b627b019b@xen.org> <0197ecdcc5869dddecc98907f67ba0f1@bugseng.com>
 <63f172c1-bda5-447b-bc8b-90563f3f3c2a@xen.org> <4ecd59b63bc5b7b8f4c24672432ba027@bugseng.com> <01fd528d-845d-4342-a17a-e080a921273f@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, 6 Oct 2023, Julien Grall wrote:
> Hi Nicola,
> 
> On 06/10/2023 11:34, Nicola Vetrini wrote:
> > On 06/10/2023 12:22, Julien Grall wrote:
> > > On 06/10/2023 11:02, Nicola Vetrini wrote:
> > > > On 06/10/2023 11:29, Julien Grall wrote:
> > > > > Hi,
> > > > > 
> > > > > On 06/10/2023 09:26, Nicola Vetrini wrote:
> > > > > > The purpose of this macro is to encapsulate the well-known
> > > > > > expression
> > > > > > 'x & -x', that in 2's complement architectures on unsigned integers
> > > > > > will
> > > > > > give 2^ffs(x), where ffs(x) is the position of the lowest set bit in
> > > > > > x.
> > > > > > 
> > > > > > A deviation for ECLAIR is also introduced.
> > > > > 
> > > > > Can you explain why this is a deviation in ECLAIR rather than one with
> > > > > /* SAF-* */ (or whichever name we decide to rename to)? Is this
> > > > > because the code is correct from MISRA perspective but the tool is
> > > > > confused?
> > > > > 
> > > > 
> > > > The code does violate Rule 10.1 (a unary minus applied to an unsigned
> > > > value is
> > > > deemed inappropriate by MISRA), but rather than changing a whole lot of
> > > > places where this
> > > > construct is used (mainly in x86 code), the reasoning is that it makes
> > > > more sense to isolate
> > > > it and justify its presence by the fact that on 2's complement
> > > > architectures the result is
> > > > indeed correct.
> > > 
> > > This is explaining to me why you are adding LOWEST_POW2(). But this
> > > doesn't explain why you are not using /* SAF-* */ on top of
> > > LOWEST_POW2().
> > > 
> > > To me, we should only use ECLAIR specific deviation when this is a
> > > shortcoming with the tool.
> > > 
> > > Cheers,
> > 
> > Because of the way ECLAIR deviation comments work implies that in most cases
> > the real
> > place where to put the deviation is the usage site
> > (the so-called top expansion location of the macro). Now, for widely-used
> > macros this is
> > cumbersome and would clutter the code unnecessarily. It's way cleaner imo to
> > have a single
> > line in the configuration with a clear justification that is present in the
> > textual output
> > of the tool.
> 
> Just to clarify, you are saying that the following would not work for Eclair:
> 
> /* SAF-XXX */
> #define LOWEST_POW2()
> 
> Instead you would need the following:
> 
> void foo()
> {
> 	/* SAF-XXX */
> 	LOWEST()
> }
> 
> Am I correct? If so, would something like below (untested) work?
> 
> #define LOWEST_POW2(...) ({ \
>    /* SAFE-XXX */           \
>    ...
>    })
> 
> > But then there are tool interoperability considerations, that would call for
> > standardized
> > deviation mechanisms, if they do detect this as a violation (which I don't
> > know).
> 
> I don't think we need to know whether a tool detects it. We only need to know
> whether this is  violation to MISRA. If this is one, then this is a call to
> have a marker in the code.
> 
> If this is a false positive, then adding the deviation in the tool
> configuration is best (unless there are multiple tools affected).
> 
> > 
> > In the end, it could be done with a textual deviation, if that's preferred,
> > but keep in mind
> > that those are more fragile w.r.t. code movement.
> 
> If the comment is around the macro there are limited chance that this will be
> missed. But if you are worried about code movement, you should be worried
> about macro renaming with your approach (one may not know Eclair has a
> deviation) and/or function with the same name.
> 
> I am curious to know what the other thinks.

I agree.

I think that we should use the SAF-x-safe framework as much as possible.
That is the most flexible and easier to maintain deviation system we
have. If we can make it work in this specific case with Julien's
suggestion above, then great.

But it is becoming clear that the SAF-x-safe framework has limitations,
for instance  https://marc.info/?l=xen-devel&m=169657904027210

There are going to be cases where SAF-x-safe won't work. In those cases,
we will probably end up using an ECLAIR specific configuration. Those
cases should be hopefully few and should be well documented, also
outside of the ECLAIR config file, which is very ECLAIR specific and
optimized to be machine readable. 

We need another RST document under docs/misra to document any deviations
that are not dealt by SAF-x-safe comments. Today we are basically using
the notes section in the docs/misra/rules.rst table but that doesn't
scale.

So I think we should:
- create new RST file like docs/misra/deviations.rst
- deviations.rst will list any deviation that is not a SAF-x-safe
  deviation
- all ECLAIR special deviations in the ECLAIR config file should be
  documented in deviations.rst
- in the future special ECLAIR deviations in the config file should
  come with a new documentation entry in deviations.rst


This doesn't entirely address Julien's valid concern but at least it
makes it easier to recognize the problem when it occurs.


From xen-devel-bounces@lists.xenproject.org Sat Oct 07 00:30:06 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 07 Oct 2023 00:30:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613872.954708 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qovCg-0006Ea-7c; Sat, 07 Oct 2023 00:29:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613872.954708; Sat, 07 Oct 2023 00:29: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 1qovCg-0006ET-4N; Sat, 07 Oct 2023 00:29:58 +0000
Received: by outflank-mailman (input) for mailman id 613872;
 Sat, 07 Oct 2023 00:29: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=BHja=FV=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qovCe-0006EJ-TL
 for xen-devel@lists.xenproject.org; Sat, 07 Oct 2023 00:29:56 +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 a1b12bad-64a8-11ee-9b0d-b553b5be7939;
 Sat, 07 Oct 2023 02:29: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 1FCE761426;
 Sat,  7 Oct 2023 00:29:52 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id F3444C433C8;
 Sat,  7 Oct 2023 00:29: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: a1b12bad-64a8-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696638591;
	bh=dwXOrNKOJ+GMgIknBjrWkHPk60vQGJkBgxH8d6d3CRs=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=ZBhojBebbtxl753h8mrAG8Qx7Ikh2eYZybbHr4fugMOLYNN6d9a51XYS02Df5Y6Fd
	 ZgmX7bS/HQOrf8HMWPfYnx0xLmafVkhdusNKegGKybTNHpyjxoZfrb5KihbWbnmQSS
	 dKQxKm92JXlx/XFlY5lpMJqnHui4gKkrENoRYHgyIHqO9wRSa0t3TwHpgvXco8kj9+
	 JTrR3y3FKjZbLPb0kI6DpXeBmy8ZlocYDXkWfBY8f7WzkIzf4m2Vp95KjW2qmRQ25h
	 tndukuvElJyVWVHsLXGbTH+N909motfziSrbfw0Fskh3LZghaRQmyHq6+RDvgIXDoc
	 seyh2kFpA9KHQ==
Date: Fri, 6 Oct 2023 17:29:48 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Stefano Stabellini <sstabellini@kernel.org>
cc: Julien Grall <julien@xen.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, jbeulich@suse.com, andrew.cooper3@citrix.com, 
    roger.pau@citrix.com, Simone Ballarin <simone.ballarin@bugseng.com>, 
    Doug Goldstein <cardoe@cardoe.com>, 
    George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>
Subject: Re: [XEN PATCH][for-4.19 1/9] xen/include: add macro LOWEST_POW2
In-Reply-To: <alpine.DEB.2.22.394.2310061654470.3431292@ubuntu-linux-20-04-desktop>
Message-ID: <alpine.DEB.2.22.394.2310061729220.3431292@ubuntu-linux-20-04-desktop>
References: <cover.1696514677.git.nicola.vetrini@bugseng.com> <d27f52eaaa62ec4ebb9ce8b6cf243779d341367d.1696514677.git.nicola.vetrini@bugseng.com> <6102db25-2fd6-49fa-be66-ec2b627b019b@xen.org> <0197ecdcc5869dddecc98907f67ba0f1@bugseng.com>
 <63f172c1-bda5-447b-bc8b-90563f3f3c2a@xen.org> <4ecd59b63bc5b7b8f4c24672432ba027@bugseng.com> <01fd528d-845d-4342-a17a-e080a921273f@xen.org> <alpine.DEB.2.22.394.2310061654470.3431292@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

On Fri, 6 Oct 2023, Stefano Stabellini wrote:
> On Fri, 6 Oct 2023, Julien Grall wrote:
> > Hi Nicola,
> > 
> > On 06/10/2023 11:34, Nicola Vetrini wrote:
> > > On 06/10/2023 12:22, Julien Grall wrote:
> > > > On 06/10/2023 11:02, Nicola Vetrini wrote:
> > > > > On 06/10/2023 11:29, Julien Grall wrote:
> > > > > > Hi,
> > > > > > 
> > > > > > On 06/10/2023 09:26, Nicola Vetrini wrote:
> > > > > > > The purpose of this macro is to encapsulate the well-known
> > > > > > > expression
> > > > > > > 'x & -x', that in 2's complement architectures on unsigned integers
> > > > > > > will
> > > > > > > give 2^ffs(x), where ffs(x) is the position of the lowest set bit in
> > > > > > > x.
> > > > > > > 
> > > > > > > A deviation for ECLAIR is also introduced.
> > > > > > 
> > > > > > Can you explain why this is a deviation in ECLAIR rather than one with
> > > > > > /* SAF-* */ (or whichever name we decide to rename to)? Is this
> > > > > > because the code is correct from MISRA perspective but the tool is
> > > > > > confused?
> > > > > > 
> > > > > 
> > > > > The code does violate Rule 10.1 (a unary minus applied to an unsigned
> > > > > value is
> > > > > deemed inappropriate by MISRA), but rather than changing a whole lot of
> > > > > places where this
> > > > > construct is used (mainly in x86 code), the reasoning is that it makes
> > > > > more sense to isolate
> > > > > it and justify its presence by the fact that on 2's complement
> > > > > architectures the result is
> > > > > indeed correct.
> > > > 
> > > > This is explaining to me why you are adding LOWEST_POW2(). But this
> > > > doesn't explain why you are not using /* SAF-* */ on top of
> > > > LOWEST_POW2().
> > > > 
> > > > To me, we should only use ECLAIR specific deviation when this is a
> > > > shortcoming with the tool.
> > > > 
> > > > Cheers,
> > > 
> > > Because of the way ECLAIR deviation comments work implies that in most cases
> > > the real
> > > place where to put the deviation is the usage site
> > > (the so-called top expansion location of the macro). Now, for widely-used
> > > macros this is
> > > cumbersome and would clutter the code unnecessarily. It's way cleaner imo to
> > > have a single
> > > line in the configuration with a clear justification that is present in the
> > > textual output
> > > of the tool.
> > 
> > Just to clarify, you are saying that the following would not work for Eclair:
> > 
> > /* SAF-XXX */
> > #define LOWEST_POW2()
> > 
> > Instead you would need the following:
> > 
> > void foo()
> > {
> > 	/* SAF-XXX */
> > 	LOWEST()
> > }
> > 
> > Am I correct? If so, would something like below (untested) work?
> > 
> > #define LOWEST_POW2(...) ({ \
> >    /* SAFE-XXX */           \
> >    ...
> >    })
> > 
> > > But then there are tool interoperability considerations, that would call for
> > > standardized
> > > deviation mechanisms, if they do detect this as a violation (which I don't
> > > know).
> > 
> > I don't think we need to know whether a tool detects it. We only need to know
> > whether this is  violation to MISRA. If this is one, then this is a call to
> > have a marker in the code.
> > 
> > If this is a false positive, then adding the deviation in the tool
> > configuration is best (unless there are multiple tools affected).
> > 
> > > 
> > > In the end, it could be done with a textual deviation, if that's preferred,
> > > but keep in mind
> > > that those are more fragile w.r.t. code movement.
> > 
> > If the comment is around the macro there are limited chance that this will be
> > missed. But if you are worried about code movement, you should be worried
> > about macro renaming with your approach (one may not know Eclair has a
> > deviation) and/or function with the same name.
> > 
> > I am curious to know what the other thinks.
> 
> I agree.
> 
> I think that we should use the SAF-x-safe framework as much as possible.
> That is the most flexible and easier to maintain deviation system we
> have. If we can make it work in this specific case with Julien's
> suggestion above, then great.
> 
> But it is becoming clear that the SAF-x-safe framework has limitations,
> for instance  https://marc.info/?l=xen-devel&m=169657904027210
> 
> There are going to be cases where SAF-x-safe won't work. In those cases,
> we will probably end up using an ECLAIR specific configuration. Those
> cases should be hopefully few and should be well documented, also
> outside of the ECLAIR config file, which is very ECLAIR specific and
> optimized to be machine readable. 
> 
> We need another RST document under docs/misra to document any deviations
> that are not dealt by SAF-x-safe comments. Today we are basically using
> the notes section in the docs/misra/rules.rst table but that doesn't
> scale.
> 
> So I think we should:
> - create new RST file like docs/misra/deviations.rst
> - deviations.rst will list any deviation that is not a SAF-x-safe
>   deviation
> - all ECLAIR special deviations in the ECLAIR config file should be
>   documented in deviations.rst
> - in the future special ECLAIR deviations in the config file should
>   come with a new documentation entry in deviations.rst
> 
> 
> This doesn't entirely address Julien's valid concern but at least it
> makes it easier to recognize the problem when it occurs.


We already have docs/misra/documenting-violations.rst, so maybe we could
have one more section at the end of the document with a list of
"special" deviations.


From xen-devel-bounces@lists.xenproject.org Sat Oct 07 00:34:06 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 07 Oct 2023 00:34:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613878.954718 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qovGf-0007zL-Qu; Sat, 07 Oct 2023 00:34:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613878.954718; Sat, 07 Oct 2023 00:34: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 1qovGf-0007zE-O0; Sat, 07 Oct 2023 00:34:05 +0000
Received: by outflank-mailman (input) for mailman id 613878;
 Sat, 07 Oct 2023 00:34: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=BHja=FV=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qovGe-0007z8-9z
 for xen-devel@lists.xenproject.org; Sat, 07 Oct 2023 00:34: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 3702f99d-64a9-11ee-98d3-6d05b1d4d9a1;
 Sat, 07 Oct 2023 02:34: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 82AD9B82AE9;
 Sat,  7 Oct 2023 00:34:02 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id B4D61C433C7;
 Sat,  7 Oct 2023 00:33: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: 3702f99d-64a9-11ee-98d3-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696638841;
	bh=iOu2P33iWZBrA99bkQvEGJANMGZ9a1TdEVWLZysdn/s=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=fD1EkUDiz3VgKlXD2+2Tb7RZG43Tq3AkAXE+cC5zx6Evexa1FnSgrMwzI+Yz6FhHS
	 pL24wW/s+2+YFUq+PcASLfGG0XTF5jTJXLtGIP990O3LqryVdoPV9sm+ZxetUqL5VQ
	 L44MZQE7pzNenhsj4CvYhfmcQEH06sxjx4E3HjidRQwWt1hqVL+4JscUc8vDIHzfem
	 jV+WG0Lf1Z6X5LDOcw2i2mC6L7S3D2e8QsgVyoG7iwQdRBaUeIpxwRYCdYDu/DXlzd
	 CJ3j7SCsZMHM7y4kvQYXvXh3iTI+ZF7Y7Tik0UcgdAuETQoPLWJXSki1CuKieFaav0
	 nukOWRXFXhCxw==
Date: Fri, 6 Oct 2023 17:33:58 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Julien Grall <julien@xen.org>
cc: Nicola Vetrini <nicola.vetrini@bugseng.com>, 
    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, Simone Ballarin <simone.ballarin@bugseng.com>, 
    Doug Goldstein <cardoe@cardoe.com>, 
    George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>
Subject: Re: [XEN PATCH][for-4.19 1/2] xen: introduce a deviation for Rule
 11.9
In-Reply-To: <c97bd628-1be1-46bf-a506-6ffb90cf801e@xen.org>
Message-ID: <alpine.DEB.2.22.394.2310061730460.3431292@ubuntu-linux-20-04-desktop>
References: <cover.1696494834.git.nicola.vetrini@bugseng.com> <98bc1d90b93856ed7516a19114facf6528120248.1696494834.git.nicola.vetrini@bugseng.com> <605f8045-754d-4d3c-b1b3-3bb34112bfc8@xen.org> <2aafb9710b4754e8d57acc1f769693b4@bugseng.com>
 <c97bd628-1be1-46bf-a506-6ffb90cf801e@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, 6 Oct 2023, Julien Grall wrote:
> On 06/10/2023 10:58, Nicola Vetrini wrote:
> > On 06/10/2023 11:27, Julien Grall wrote:
> > > Hi,
> > > 
> > > On 05/10/2023 09:45, Nicola Vetrini wrote:
> > > > The constant 0 is used instead of NULL in '__ACCESS_ONCE' as a
> > > > compile-time check to detect non-scalar types; its usage for this
> > > > purpose is documented in rules.rst as an exception.
> > > Documenting ACCESS_ONCE() in rules.rst seems a bit odd. I am guessing
> > > that other analysis tool may point out the same error and therefore it
> > > would seem more appropriate to use a deviation.
> > > 
> > > This would also avoid having a specific rule in the Eclair
> > > configuration for __ACCESS_ONCE().
> > > 
> > 
> > I figured a single accepted use would benefit from an explicit exclusion.
> > I can rework it to use an in-code comment to deviate, in whatever form that
> > comment may be
> > (still with some bits of ECLAIR-specific configuration anyway, as discussed
> > for R2.1).
> 
> I think it would be preferrable to have a deviation in the code. This would be
> helpful for other analysis tools.

Yes exactly, see my reply:
https://marc.info/?l=xen-devel&m=169663696228889

I know I acked the patch but I agree with Julien. A deviation as an
in-code comment (SAF-x-safe) is always the best option. If that doesn't
work, we cannot keep adding stuff in the notes section of rules.rst. It
doesn't scale. We should create a new document, like deviations.rst, or
add a new section at the bottom of documenting-violations.rst or
possibly safe.json.


From xen-devel-bounces@lists.xenproject.org Sat Oct 07 00:41:04 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 07 Oct 2023 00:41:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613882.954727 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qovNL-00017c-Gc; Sat, 07 Oct 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 613882.954727; Sat, 07 Oct 2023 00:40: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 1qovNL-00017V-Dp; Sat, 07 Oct 2023 00:40:59 +0000
Received: by outflank-mailman (input) for mailman id 613882;
 Sat, 07 Oct 2023 00:40: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=BHja=FV=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qovNK-00017P-32
 for xen-devel@lists.xenproject.org; Sat, 07 Oct 2023 00:40:58 +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 2cad4e42-64aa-11ee-9b0d-b553b5be7939;
 Sat, 07 Oct 2023 02:40:55 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by ams.source.kernel.org (Postfix) with ESMTP id A18A4B82B23;
 Sat,  7 Oct 2023 00:40:54 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 773D2C433C7;
 Sat,  7 Oct 2023 00:40: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: 2cad4e42-64aa-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696639253;
	bh=dV7ZtP2m8gqo5+YHkJ+gNbYOZA6O5NlANGMLqSnOhzc=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=sN+uERGidpWOA2aqC1iCseVwbLmTVQf7HY79Mgp0MOZ7U02CJedOQk1ggwooYig9Z
	 8QrkkskL2yBjqOAAY1HZN1niISJHSyi6UX7XqXaIaI57UVOw87T3hACu9vXK4MbAz4
	 qKWv8WJXWy1oqmIky+ZPM5rang3eGhzf2RqNAqlZ6OyrQMZeyB0J6ojIYNLCpyi9i0
	 WsznZIHJqLLKA4NKJA8J8ajOQ9kFqttfk3viDZHjUdB8sqV/W+vITGpKsDG6ip4oeg
	 9qHHR4klvUjlpitVuE8J//x20SBcbSxJXtc1l5d9Mazm5pXlPcCnfbfELRZ9P/7BQm
	 ZKfv2AXn3oFTg==
Date: Fri, 6 Oct 2023 17:40:50 -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 deviations and accepted
 guidelines
In-Reply-To: <f7fb64aa1b78dfa57a2bf781f5a3cec6219c2de5.1696587777.git.simone.ballarin@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2310061739070.3431292@ubuntu-linux-20-04-desktop>
References: <f7fb64aa1b78dfa57a2bf781f5a3cec6219c2de5.1696587777.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 Fri, 6 Oct 2023, Simone Ballarin wrote:
> Remove deviations for ERROR_EXIT, ERROR_EXIT_DOM and PIN_FAIL:
> the aforementioned macros have been removed.
> Add deviation for Rule 2.1 for pure declarations.
> Remove legacy text-based deviations: these are now implemented
> with SAF comments.
> Add deviations for Dir 4.3 and Rules 8.4, 10.1, 13.5, 14.2, 14.3.
> Remove deviations for guidelines not yet accepted or rejected.
> 
> Add MC3R1.R11.7, MC3R1.R11.8, MC3R1.R11.9, MC3R1.R15.3 and MC3R1.R14.2
> to the accepted guidelines selector.

Thanks, this looks like a great improvement!

For the few new deviations (Dir 4.3, Rules 8.4, 10.1, 13.5, 14.2, 14.3)
can we have a description of the deviation in a new rst documentation
file under docs/misra?

See https://marc.info/?l=xen-devel&m=169663696228889

The rest is great, especially the removal of so many ad-hoc deviations.



> Update clean guidelines selector.
> 
> Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>
> ---
>  .../eclair_analysis/ECLAIR/deviations.ecl     | 138 +++++++++---------
>  automation/eclair_analysis/ECLAIR/tagging.ecl |   4 +-
>  2 files changed, 69 insertions(+), 73 deletions(-)
> 
> diff --git a/automation/eclair_analysis/ECLAIR/deviations.ecl b/automation/eclair_analysis/ECLAIR/deviations.ecl
> index d8170106b4..c00b9d5f38 100644
> --- a/automation/eclair_analysis/ECLAIR/deviations.ecl
> +++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
> @@ -15,14 +15,19 @@ Constant expressions and unreachable branches of if and switch statements are ex
>  -doc_end
>  
>  -doc_begin="Unreachability caused by calls to the following functions or macros is deliberate and there is no risk of code being unexpectedly left out."
> --config=MC3R1.R2.1,statements+={deliberate,"macro(name(BUG||assert_failed||ERROR_EXIT||ERROR_EXIT_DOM||PIN_FAIL))"}
> +-config=MC3R1.R2.1,statements+={deliberate,"macro(name(BUG||assert_failed))"}
>  -config=MC3R1.R2.1,statements+={deliberate, "call(decl(name(__builtin_unreachable||panic||do_unexpected_trap||machine_halt||machine_restart||maybe_reboot)))"}
>  -doc_end
>  
> --doc_begin="Unreachability of an ASSERT_UNREACHABLE() and analogous macro calls is deliberate and safe."
> +-doc_begin="Unreachability inside an ASSERT_UNREACHABLE() and analogous macro calls is deliberate and safe."
>  -config=MC3R1.R2.1,reports+={deliberate, "any_area(any_loc(any_exp(macro(name(ASSERT_UNREACHABLE||PARSE_ERR_RET||PARSE_ERR||FAIL_MSR||FAIL_CPUID)))))"}
>  -doc_end
>  
> +-doc_begin="Pure declarations (i.e., declarations without initialization) are
> +not executable, and therefore it is safe for them to be unreachable."
> +-config=MC3R1.R2.1,ignored_stmts+={"any()", "pure_decl()"}
> +-doc_end
> +
>  -doc_begin="Proving compliance with respect to Rule 2.2 is generally impossible:
>  see https://arxiv.org/abs/2212.13933 for details. Moreover, peer review gives us
>  confidence that no evidence of errors in the program's logic has been missed due
> @@ -49,33 +54,12 @@ they are not instances of commented-out code."
>  -config=MC3R1.D4.3,reports+={disapplied,"!(any_area(any_loc(file(^xen/arch/arm/arm64/.*$))))"}
>  -doc_end
>  
> --doc_begin="Depending on the compiler, rewriting the following function-like
> -macros as inline functions is not guaranteed to have the same effect."
> --config=MC3R1.D4.9,macros+={deliberate,"name(likely)"}
> --config=MC3R1.D4.9,macros+={deliberate,"name(unlikely)"}
> --config=MC3R1.D4.9,macros+={deliberate,"name(unreachable)"}
> --doc_end
> -
> --doc_begin="These macros can be used on both pointers and unsigned long type values."
> --config=MC3R1.D4.9,macros+={safe,"name(virt_to_maddr)"}
> --config=MC3R1.D4.9,macros+={safe,"name(virt_to_mfn)"}
> --doc_end
> -
> --doc_begin="Rewriting variadic macros as variadic functions might have a negative impact on safety."
> --config=MC3R1.D4.9,macros+={deliberate,"variadic()"}
> --doc_end
> -
> --doc_begin="Rewriting macros with arguments that are, in turn, arguments of
> -__builtin_constant_p() can change the behavior depending on the optimization
> -level."
> --config=MC3R1.D4.9,macro_argument_context+="skip_to(class(type||expr||decl,any),
> -                                            call(name(__builtin_constant_p)))"
> --doc_end
> -
> --doc_begin="Function-like macros defined in public headers are meant to be
> -usable in C89 mode without any extensions. Hence they cannot be replaced by
> -inline functions."
> --config=MC3R1.D4.9,macros+={deliberate, "loc(file(api:public))"}
> +-doc_begin="The inline asm in 'arm64/lib/bitops.c' is tightly coupled with the
> +surronding C code that acts as a wrapper, so it has been decided not to add an
> +additional encapsulation layer."
> +-file_tag+={arm64_bitops, "^xen/arch/arm/arm64/lib/bitops\\.c$"}
> +-config=MC3R1.D4.3,reports+={deliberate, "all_area(any_loc(file(arm64_bitops)&&any_exp(macro(^(bit|test)op$))))"}
> +-config=MC3R1.D4.3,reports+={deliberate, "any_area(any_loc(file(arm64_bitops))&&context(name(int_clear_mask16)))"}
>  -doc_end
>  
>  -doc_begin="This header file is autogenerated or empty, therefore it poses no
> @@ -105,29 +89,6 @@ conform to the directive."
>  -config=MC3R1.R5.3,reports+={safe, "any_area(any_loc(any_exp(macro(^read_debugreg$))&&any_exp(macro(^write_debugreg$))))"}
>  -doc_end
>  
> --doc_begin="Function-like macros cannot be confused with identifiers that are
> -neither functions nor pointers to functions."
> --config=MC3R1.R5.5,reports={safe,"all_area(decl(node(enum_decl||record_decl||field_decl||param_decl||var_decl)&&!type(canonical(address((node(function||function_no_proto))))))||macro(function_like()))"}
> --doc_end
> -
> --doc_begin="The use of these identifiers for both macro names and other entities
> -is deliberate and does not generate developer confusion."
> --config=MC3R1.R5.5,reports+={safe, "any_area(text(^\\s*/\\*\\s+SAF-[0-9]+-safe\\s+MC3R1\\.R5\\.5.*$, begin-1))"}
> --doc_end
> -
> --doc_begin="The definition of macros and functions ending in '_bit' that use the
> -same identifier in 'bitops.h' is deliberate and safe."
> --file_tag+={bitops_h, "^xen/arch/x86/include/asm/bitops\\.h$"}
> --config=MC3R1.R5.5,reports+={safe, "all_area((decl(^.*_bit\\(.*$)||macro(^.*_bit$))&&all_loc(file(bitops_h)))"}
> --doc_end
> -
> --doc_begin="The definition of macros and functions beginning in 'str' or 'mem'
> -that use the same identifier in 'xen/include/xen/string.h' is deliberate and
> -safe."
> --file_tag+={string_h, "^xen/include/xen/string\\.h$"}
> --config=MC3R1.R5.5,reports+={safe, "any_area((decl(^(mem|str).*$)||macro(^(mem|str).*$))&&all_loc(file(string_h)))"}
> --doc_end
> -
>  #
>  # Series 7.
>  #
> @@ -156,11 +117,6 @@ particular use of it done in xen_mk_ulong."
>  -config=MC3R1.R7.2,reports+={deliberate,"any_area(any_loc(macro(name(BUILD_BUG_ON))))"}
>  -doc_end
>  
> --doc_begin="The following string literals are assigned to pointers to non
> -const-qualified char."
> --config=MC3R1.R7.4,reports+={safe, "any_area(text(^\\s*/\\*\\s+SAF-[0-9]+-safe\\s+MC3R1\\.R7\\.4.*$, begin-1))"}
> --doc_end
> -
>  -doc_begin="Allow pointers of non-character type as long as the pointee is
>  const-qualified."
>  -config=MC3R1.R7.4,same_pointee=false
> @@ -204,6 +160,16 @@ const-qualified."
>  -config=MC3R1.R8.3,reports+={deliberate,"any_area(any_loc(file(adopted_mpparse_r8_3)))&&any_area(any_loc(file(^xen/arch/x86/include/asm/mpspec\\.h$)))"}
>  -doc_end
>  
> +-doc_begin="The definitions present in this file are meant to generate definitions for asm modules, and are not called by C code. Therefore the absence of prior declarations is safe."
> +-config=MC3R1.R8.4,reports+={safe, "first_area(any_loc(file(asm_offsets)))"}
> +-doc_end
> +
> +-doc_begin="The functions defined in this file are meant to be called from gcc-generated code in a non-release build configuration.
> +Therefore the absence of prior declarations is safe."
> +-file_tag+={gcov, "^xen/common/coverage/gcov_base\\.c$"}
> +-config=MC3R1.R8.4,reports+={safe, "first_area(any_loc(file(gcov)))"}
> +-doc_end
> +
>  -doc_begin="The following variables are compiled in multiple translation units
>  belonging to different executables and therefore are safe."
>  -config=MC3R1.R8.6,declarations+={safe, "name(current_stack_pointer||bsearch||sort)"}
> @@ -222,12 +188,6 @@ definition is compiled-out or optimized-out by the compiler)"
>  # Series 9.
>  #
>  
> --doc_begin="The following variables are written before being set, therefore no
> -access to uninitialized memory locations happens, as explained in the deviation
> -comment."
> --config=MC3R1.R9.1,reports+={safe, "any_area(text(^\\s*/\\*\\s+SAF-[0-9]+-safe\\s+MC3R1\\.R9\\.1.*$, begin-1))"}
> --doc_end
> -
>  -doc_begin="Violations in files that maintainers have asked to not modify in the
>  context of R9.1."
>  -file_tag+={adopted_r9_1,"^xen/arch/arm/arm64/lib/find_next_bit\\.c$"}
> @@ -274,22 +234,47 @@ still non-negative."
>  -config=MC3R1.R10.1,etypes+={safe, "stmt(operator(logical)||node(conditional_operator||binary_conditional_operator))", "dst_type(ebool||boolean)"}
>  -doc_end
>  
> -### Set 3 ###
> +-doc_begin="XEN only supports architectures where signed integers are
> +representend using two's complement and all the XEN developers are aware of
> +this."
> +-config=MC3R1.R10.1,etypes+={safe,
> +  "stmt(operator(and||or||xor||not||and_assign||or_assign||xor_assign))",
> +  "any()"}
> +-doc_end
> +
> +-doc_begin="See Section \"4.5 Integers\" of \"GCC_MANUAL\", where it says that
> +\"Signed `>>' acts on negative numbers by sign extension. As an extension to the
> +C language, GCC does not use the latitude given in C99 and C11 only to treat
> +certain aspects of signed `<<' as undefined. However, -fsanitize=shift (and
> +-fsanitize=undefined) will diagnose such cases. They are also diagnosed where
> +constant expressions are required.\""
> +-config=MC3R1.R10.1,etypes+={safe,
> +  "stmt(operator(shl||shr||shl_assign||shr_assign))",
> +  "any()"}
> +-doc_end
>  
>  #
> -# Series 18.
> +# Series 13
>  #
>  
> --doc_begin="FIXME: explain why pointer differences involving this macro are safe."
> --config=MC3R1.R18.2,reports+={safe,"all_area(all_loc(any_exp(macro(^ACPI_PTR_DIFF$))))"}
> +-doc_begin="All developers and reviewers can be safely assumed to be well aware
> +of the short-circuit evaluation strategy of such logical operators."
> +-config=MC3R1.R13.5,reports+={disapplied,"any()"}
>  -doc_end
>  
> --doc_begin="FIXME: explain why pointer differences involving this macro are safe."
> --config=MC3R1.R18.2,reports+={safe,"all_area(all_loc(any_exp(macro(^page_to_mfn$))))"}
> +#
> +# Series 14
> +#
> +
> +-doc_begin="The severe restrictions imposed by this rule on the use of for
> +statements are not balanced by the presumed facilitation of the peer review
> +activity."
> +-config=MC3R1.R14.2,reports+={disapplied,"any()"}
>  -doc_end
>  
> --doc_begin="FIXME: explain why pointer differences involving this macro are safe."
> --config=MC3R1.R18.2,reports+={safe,"all_area(all_loc(any_exp(macro(^page_to_pdx$))))"}
> +-doc_begin="The XEN team relies on the fact that invariant conditions of 'if'
> +statements are deliberate"
> +-config=MC3R1.R14.3,statements={deliberate , "wrapped(any(),node(if_stmt))" }
>  -doc_end
>  
>  #
> @@ -306,6 +291,17 @@ in assignments."
>  {safe, "left_right(^[(,\\[]$,^[),\\]]$)"}
>  -doc_end
>  
> +#
> +# General
> +#
> +
> +-doc_begin="do-while-0 is a well recognized loop idiom by the xen community."
> +-loop_idioms={do_stmt, "literal(0)"}
> +-doc_end
> +-doc_begin="while-[01] is a well recognized loop idiom by the xen community."
> +-loop_idioms+={while_stmt, "literal(0)||literal(1)"}
> +-doc_end
> +
>  #
>  # Developer confusion
>  #
> diff --git a/automation/eclair_analysis/ECLAIR/tagging.ecl b/automation/eclair_analysis/ECLAIR/tagging.ecl
> index 78a0bc948b..e82277fea3 100644
> --- a/automation/eclair_analysis/ECLAIR/tagging.ecl
> +++ b/automation/eclair_analysis/ECLAIR/tagging.ecl
> @@ -19,7 +19,7 @@
>  
>  -doc="Accepted guidelines as reported in XEN/docs/misra/rules.rst"
>  -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"
> +    "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.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.R11.7||MC3R1.R11.8||MC3R1.R11.9||MC3R1.R12.5||MC3R1.R13.1||MC3R1.R13.5||MC3R1.R13.6||MC3R1.R14.1||MC3R1.R14.2||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)"}
> @@ -30,7 +30,7 @@
>  
>  -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.R4.2||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.R20.13||MC3R1.R20.14||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")
> -- 
> 2.34.1
> 


From xen-devel-bounces@lists.xenproject.org Sat Oct 07 00:43:36 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 07 Oct 2023 00:43:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613886.954738 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qovPq-0001qF-TI; Sat, 07 Oct 2023 00:43:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613886.954738; Sat, 07 Oct 2023 00: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 1qovPq-0001q8-Px; Sat, 07 Oct 2023 00:43:34 +0000
Received: by outflank-mailman (input) for mailman id 613886;
 Sat, 07 Oct 2023 00:43: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=BHja=FV=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qovPo-0001op-UG
 for xen-devel@lists.xenproject.org; Sat, 07 Oct 2023 00:43: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 8927adb6-64aa-11ee-98d3-6d05b1d4d9a1;
 Sat, 07 Oct 2023 02:43:31 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by dfw.source.kernel.org (Postfix) with ESMTP id 8AAE0612B1;
 Sat,  7 Oct 2023 00:43:29 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 2B2C4C433C7;
 Sat,  7 Oct 2023 00:43: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: 8927adb6-64aa-11ee-98d3-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696639409;
	bh=h92SqO4Ry35tMBJuGZ3D1ISEI+LHZkw2Qvg+4KS9FBs=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=plr8iJMPlGBg29lb0gY3CkuTQVP3E0y7J2AqqtUV6ZdlRh/hNq2HqmpZ8dsIFoJjY
	 XH4/8mcyuCTMNKbx7xLdQxFiLTMn2KpEtuIJB1GJ2EOoPiiXR6XS6HsDoS1UlOvDD3
	 87MvZUTm1dLkkkERPX5+vilhZJOdt6jxL/lD4TNP0KsyHeyl+smWEKi5PC/Uj2b5Vg
	 CSGzmpRMluZsC6iACg8LL+nYjmoe7WjnRit6ydILL7qCyF89YrkE0D4ga1MOEuDE/M
	 nZ6ZffodAORpQt74z2O4Z5vQLVSsFOanbnOHY9TeQ/mfiH/J0sP5CEkDmhDVosurlI
	 s6OMh97KV0BrA==
Date: Fri, 6 Oct 2023 17:43:25 -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>, 
    Nicola Vetrini <nicola.vetrini@bugseng.com>, 
    Xen-devel <xen-devel@lists.xenproject.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>, 
    Jan Beulich <jbeulich@suse.com>, 
    =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>, 
    Henry Wang <Henry.Wang@arm.com>, 
    Simone Ballarin <simone.ballarin@bugseng.com>, 
    Doug Goldstein <cardoe@cardoe.com>, 
    George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>, 
    Wei Liu <wl@xen.org>, Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [XEN PATCH] xen: Add SAF deviations for MISRA C:2012 Rule 7.1
In-Reply-To: <C2DDFAB5-D943-4A24-9C14-AF35BE2A7C90@arm.com>
Message-ID: <alpine.DEB.2.22.394.2310061741130.3431292@ubuntu-linux-20-04-desktop>
References: <338d8e574db943a86c7605e4c6d9a299d45f067d.1696347345.git.nicola.vetrini@bugseng.com> <alpine.DEB.2.22.394.2310031345190.2348112@ubuntu-linux-20-04-desktop> <e1736215-52ba-4737-9da3-8f1ba7e832a6@citrix.com> <DB96C095-5FAF-40A1-9CA8-002291AA1933@arm.com>
 <2894008e8f612296da84267346ae4240@bugseng.com> <B00BC78B-E707-4043-A0B4-D320C6717472@arm.com> <alpine.DEB.2.22.394.2310041625170.2348112@ubuntu-linux-20-04-desktop> <9DD525D9-DB6D-4888-9266-FB45906A0E0F@arm.com> <alpine.DEB.2.22.394.2310051756360.2348112@ubuntu-linux-20-04-desktop>
 <C2DDFAB5-D943-4A24-9C14-AF35BE2A7C90@arm.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="8323329-1643282194-1696639408=:3431292"

  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-1643282194-1696639408=:3431292
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8BIT

On Fri, 6 Oct 2023, Luca Fancellu wrote:
> > On 6 Oct 2023, at 02:02, Stefano Stabellini <sstabellini@kernel.org> wrote:
> > 
> > On Thu, 5 Oct 2023, Luca Fancellu wrote:
> >>> On 5 Oct 2023, at 00:32, Stefano Stabellini <sstabellini@kernel.org> wrote:
> >>> 
> >>> On Wed, 4 Oct 2023, Luca Fancellu wrote:
> >>>>> On 4 Oct 2023, at 11:29, Nicola Vetrini <nicola.vetrini@bugseng.com> wrote:
> >>>>> On 04/10/2023 12:06, Luca Fancellu wrote:
> >>>>>> Hi Nicola,
> >>>>>>> On 4 Oct 2023, at 10:56, andrew.cooper3@citrix.com wrote:
> >>>>>>> On 03/10/2023 9:46 pm, Stefano Stabellini wrote:
> >>>>>>>> On Tue, 3 Oct 2023, Nicola Vetrini wrote:
> >>>>>>>>> As specified in rules.rst, these constants can be used
> >>>>>>>>> in the code.
> >>>>>>>>> Their deviation is now accomplished by using a SAF comment,
> >>>>>>>>> rather than an ECLAIR configuration.
> >>>>>>>>> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
> >>>>>>>> "SAF" discussion aside that can be resolved elsewhere:
> >>>>>>>> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
> >>>>>>> Well no.  "SAF" aside (and SAF does need fixing before reposting this patch, otherwise it's just unnecessary churn), ...
> >>>>>>>>> diff --git a/xen/arch/x86/hvm/svm/svm.h b/xen/arch/x86/hvm/svm/svm.h
> >>>>>>>>> index d2a781fc3fb5..d0623b72ccfa 100644
> >>>>>>>>> --- a/xen/arch/x86/hvm/svm/svm.h
> >>>>>>>>> +++ b/xen/arch/x86/hvm/svm/svm.h
> >>>>>>>>> @@ -57,14 +57,23 @@ static inline void svm_invlpga(unsigned long linear, uint32_t asid)
> >>>>>>>>> #define INSTR_INT3 INSTR_ENC(X86EMUL_OPC( 0, 0xcc), 0)
> >>>>>>>>> #define INSTR_ICEBP INSTR_ENC(X86EMUL_OPC( 0, 0xf1), 0)
> >>>>>>>>> #define INSTR_HLT INSTR_ENC(X86EMUL_OPC( 0, 0xf4), 0)
> >>>>>>>>> +/* SAF-2-safe */
> >>>>>>>>> #define INSTR_XSETBV INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0321)
> >>>>>>>>> +/* SAF-2-safe */
> >>>>>>>>> #define INSTR_VMRUN INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0330)
> >>>>>>>>> +/* SAF-2-safe */
> >>>>>>>>> #define INSTR_VMCALL INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0331)
> >>>>>>>>> +/* SAF-2-safe */
> >>>>>>>>> #define INSTR_VMLOAD INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0332)
> >>>>>>>>> +/* SAF-2-safe */
> >>>>>>>>> #define INSTR_VMSAVE INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0333)
> >>>>>>>>> +/* SAF-2-safe */
> >>>>>>>>> #define INSTR_STGI INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0334)
> >>>>>>>>> +/* SAF-2-safe */
> >>>>>>>>> #define INSTR_CLGI INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0335)
> >>>>>>>>> +/* SAF-2-safe */
> >>>>>>>>> #define INSTR_INVLPGA INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0337)
> >>>>>>>>> +/* SAF-2-safe */
> >>>>>>>>> #define INSTR_RDTSCP INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0371)
> >>>>>>>>> #define INSTR_INVD INSTR_ENC(X86EMUL_OPC(0x0f, 0x08), 0)
> >>>>>>>>> #define INSTR_WBINVD INSTR_ENC(X86EMUL_OPC(0x0f, 0x09), 0)
> >>>>>>> ... this has broken a tabulated structure to have comments ahead of lines with octal numbers, while ...
> >>>>>>>>> diff --git a/xen/arch/x86/hvm/svm/emulate.c b/xen/arch/x86/hvm/svm/emulate.c
> >>>>>>>>> index aa2c61c433b3..c5e3341c6316 100644
> >>>>>>>>> --- a/xen/arch/x86/hvm/svm/emulate.c
> >>>>>>>>> +++ b/xen/arch/x86/hvm/svm/emulate.c
> >>>>>>>>> @@ -90,9 +90,9 @@ unsigned int svm_get_insn_len(struct vcpu *v, unsigned int instr_enc)
> >>>>>>>>> if ( !instr_modrm )
> >>>>>>>>> return emul_len;
> >>>>>>>>> - if ( modrm_mod == MASK_EXTR(instr_modrm, 0300) &&
> >>>>>>>>> - (modrm_reg & 7) == MASK_EXTR(instr_modrm, 0070) &&
> >>>>>>>>> - (modrm_rm & 7) == MASK_EXTR(instr_modrm, 0007) )
> >>>>>>>>> + if ( modrm_mod == MASK_EXTR(instr_modrm, 0300) && /* SAF-2-safe */
> >>>>>>>>> + (modrm_reg & 7) == MASK_EXTR(instr_modrm, 0070) && /* SAF-2-safe */
> >>>>>>>>> + (modrm_rm & 7) == MASK_EXTR(instr_modrm, 0007) ) /* SAF-2-safe */
> >>>>>>>>> return emul_len;
> >>>>>>>>> }
> >>>>>>> ... this has comments at the end of lines with octal numbers.
> >>>>>>> So which is it?
> >>>>>> I agree with Andrew here in this sense: the in-code comment is
> >>>>>> supposed to be on the line *before* the violation,
> >>>>>> not on the same line, so I’m also wondering how it is fixing the very
> >>>>>> first violation.
> >>>>>> Cheers,
> >>>>>> Luca
> >>>>> 
> >>>> 
> >>>> Hi Nicola,
> >>>> 
> >>>>> Actually it justifies what is on either the previous line or the same because it's
> >>>>> translated to /* -E> safe MC3R1.R7.1 1 */, where the last number is how many lines besides
> >>>>> the current one are to be deviated (e.g. you can have 0 deviate only the current line).
> >>>> 
> >>>> Just to understand, does this way:
> >>>> 
> >>>> <line A>
> >>>> /* -E> safe MC3R1.R7.1 1 */
> >>>> <line B>
> >>>> 
> >>>> Justifies only line B? Because I thought so, but now I want to be sure, otherwise it doesn’t act
> >>>> as intended.
> >>>> 
> >>>> 
> >>>>> Most of the times the current form is what's needed, as you would put the comment on a line
> >>>>> of its own. In the case of the if that would break the formatting. The downside of doing the same thing on the table is that the first entry not to be deviated would actually be deviated.
> >>>>> 
> >>>>> #define INSTR_INVD INSTR_ENC(X86EMUL_OPC(0x0f, 0x08), 0)
> >>>>> 
> >>>>> This may not be problematic, since 0 could be considered an octal constant, but is an
> >>>>> exception explicitly listed in the MISRA rule.
> >>>>> For the same reason the line
> >>>>> 
> >>>>> return emul_len;
> >>>>> 
> >>>>> is deviated by the above comment, but putting an octal constant there would for sure
> >>>>> be the result of a deliberate choice. There's the alternative of:
> >>>>> 
> >>>>>                        /* SAF-2-safe */
> >>>>> if ( modrm_mod      == MASK_EXTR(instr_modrm, 0300) &&
> >>>>>                        /* SAF-2-safe */
> >>>>>     (modrm_reg & 7) == MASK_EXTR(instr_modrm, 0070) &&
> >>>>>                        /* SAF-2-safe */
> >>>>>     (modrm_rm & 7)  == MASK_EXTR(instr_modrm, 0007) )
> >>>>> 
> >>>>> to make it consistent with the table and avoid any "hidden" deviated line or, again,
> >>>>> the modification of the translation script so that it doesn't use a fixed "1" offset, which
> >>>>> is motivated by what you wrote on the thread of the modification of xen_analysis.py.
> >>>> 
> >>>> From the documentation:
> >>>> 
> >>>>   In the Xen codebase, these tags will be used to document and suppress findings:
> >>>> 
> >>>>   - SAF-X-safe: This tag means that the next line of code contains a finding, but
> >>>>     the non compliance to the checker is analysed and demonstrated to be safe.
> >>>> 
> >>>> I understand that Eclair is capable of suppressing also the line in which the in-code suppression
> >>>> comment resides, but these generic Xen in-code suppression comment are meant to be used
> >>>> by multiple static analysis tools and many of them suppress only the line next to the comment
> >>>> (Coverity, cppcheck).
> >>> 
> >>> As we see more realistic examples, it turns out that this is limiting.
> >>> 
> >>> Given that the SAF-2-safe comment needs to go through xen-analysis.py
> >>> translations anyway, could we implement something a bit more flexible in
> >>> xen-analysis.py?
> >>> 
> >>> For instance, could we implement a format with the number of lines of
> >>> code like this as we discussed in a previous thread?
> >>> 
> >>> /* SAF-2-safe start */
> >>> if ( modrm_mod      == MASK_EXTR(instr_modrm, 0300) &&
> >>>   (modrm_reg & 7) == MASK_EXTR(instr_modrm, 0070) &&
> >>>   (modrm_rm & 7)  == MASK_EXTR(instr_modrm, 0007) )
> >>> /* SAF-2-safe end */
> >>> 
> >>> Firstly, let ask Andrew, do you prefer this?
> >>> 
> >>> 
> >>> And also this second format:
> >>> 
> >>> if ( modrm_mod      == MASK_EXTR(instr_modrm, 0300) && /* SAF-2-safe */
> >>>   (modrm_reg & 7) == MASK_EXTR(instr_modrm, 0070) && /* SAF-2-safe */
> >>>   (modrm_rm & 7)  == MASK_EXTR(instr_modrm, 0007) ) /* SAF-2-safe */
> >>> 
> >>> 
> >>> Could we implement in xen-analysis.py a conversion that would turn the
> >>> two formats above that are not understood by cppcheck into:
> >>> 
> >>> /* cppcheck tag */
> >>> if ( modrm_mod      == MASK_EXTR(instr_modrm, 0300) &&
> >>> /* cppcheck tag */
> >>>   (modrm_reg & 7) == MASK_EXTR(instr_modrm, 0070) &&
> >>> /* cppcheck tag */
> >>>   (modrm_rm & 7)  == MASK_EXTR(instr_modrm, 0007) )
> >>> 
> >>> Or this is a problem because it would end up changing lines of code
> >>> numbers in the source file?
> >> 
> >> Yes this is the real issue why we didn’t do the /* ... start */ code /* ... end */
> > 
> > Right so the results would be all off by a few lines of code so when
> > you go to read the report generated by cppcheck, the references
> > wouldn't match anymore.
> > 
> > Before giving up and accepting that we are constrained to only formats
> > that don't change the LOC numbers, can we check what Coverity supports?
> > 
> > I am asking because we could get away with implementing the formats
> > above in cppcheck, given that cppcheck is open source. But for Coverity
> > we need to stay with what is already supported by it.
> > 
> > Does Coverity support anything other than:
> > 
> > <tag on previous line>
> > <next line is code with deviation>
> 
> Unfortunately not, from its documentation I can’t see anything apart from the above,
> I can ask someone from synopsys though to double check.

I wonder how people would feel to have an exception to our coding style
in these cases and have longer than 80 chars lines. I am asking because
this is better than many of the other options above:

/* SAF-x-safe */
if ( modrm_mod == MASK_EXTR(instr_modrm, 0300) && (modrm_reg & 7) == MASK_EXTR(instr_modrm, 0070) && (modrm_rm & 7)  == MASK_EXTR(instr_modrm, 0007) )

Any other ideas?
--8323329-1643282194-1696639408=:3431292--


From xen-devel-bounces@lists.xenproject.org Sat Oct 07 01:05:16 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 07 Oct 2023 01:05:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613893.954748 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qovkc-0004JQ-N3; Sat, 07 Oct 2023 01:05:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613893.954748; Sat, 07 Oct 2023 01: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 1qovkc-0004JJ-KP; Sat, 07 Oct 2023 01:05:02 +0000
Received: by outflank-mailman (input) for mailman id 613893;
 Sat, 07 Oct 2023 01:05: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=BHja=FV=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qovkb-0004JB-SB
 for xen-devel@lists.xenproject.org; Sat, 07 Oct 2023 01:05:01 +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 887ff276-64ad-11ee-9b0d-b553b5be7939;
 Sat, 07 Oct 2023 03:04:58 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by ams.source.kernel.org (Postfix) with ESMTP id 1D524B82AE9;
 Sat,  7 Oct 2023 01:04:57 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 22CFDC433C8;
 Sat,  7 Oct 2023 01:04:54 +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: 887ff276-64ad-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696640695;
	bh=xIlz0zXhbJUodbsFXZRvIB/D7BuzQKWTW2E12Mz7sy0=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=T5dyjAMi84GoKpkXX2ER7o6RbVVz2Z2vWv9jccPT2chAPeN1cJcgYzjqlARI3Hm/c
	 X6YbQJSOOcDAPxJkBCWJWip4NhO3Xff/kKx5kq5uSam9YaE/Wh2yRJ1qkL8CSU68FO
	 mG0gBrmZfFOedUTSCuoAMzZ3x1L24UPuOJCBd+gp+tPVLBro2xRKoQUYvi+S+x+Zck
	 aAxRPF1ubbGQA/k7+3CT4fK8her/666Me/eBXMxv+ZZghc2FQSKI/A2a2GycdCO0Sx
	 J7hz+p6NtkdgxZ7iTEJVr6iz31U0Z/3rvqiJq9fyOOqz5mwAsPNhDm+VRZDdeJQf/3
	 bXeyq07QPwydA==
Date: Fri, 6 Oct 2023 18:04:52 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Julien Grall <julien@xen.org>
cc: Nicola Vetrini <nicola.vetrini@bugseng.com>, 
    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, Paul Durrant <paul@xen.org>, 
    George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>
Subject: Re: [XEN PATCH][for-4.19 8/9] xen/types: address Rule 10.1 for
 DECLARE_BITMAP use
In-Reply-To: <354c6138-509e-4106-9a27-3c75c85b85e5@xen.org>
Message-ID: <alpine.DEB.2.22.394.2310061746190.3431292@ubuntu-linux-20-04-desktop>
References: <cover.1696514677.git.nicola.vetrini@bugseng.com> <9642dcb4ab51ec9eaeedf16056fbcd946a3efbea.1696514677.git.nicola.vetrini@bugseng.com> <80101145-1958-457a-8c80-cae816ae74aa@xen.org> <4b144869407871011c538af48b311c31@bugseng.com>
 <354c6138-509e-4106-9a27-3c75c85b85e5@xen.org>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: multipart/mixed; BOUNDARY="8323329-1793844254-1696639648=:3431292"
Content-ID: <alpine.DEB.2.22.394.2310061748330.3431292@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-1793844254-1696639648=:3431292
Content-Type: text/plain; CHARSET=UTF-8
Content-Transfer-Encoding: 8BIT
Content-ID: <alpine.DEB.2.22.394.2310061748331.3431292@ubuntu-linux-20-04-desktop>

On Fri, 6 Oct 2023, Julien Grall wrote:
> Hi Nicola,
> 
> On 06/10/2023 11:10, Nicola Vetrini wrote:
> > On 06/10/2023 11:34, Julien Grall wrote:
> > > Hi Nicola,
> > > 
> > > On 06/10/2023 09:26, 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
> > > > in macro 'BITS_TO_LONGS'.
> > > > 
> > > > A comment in BITS_TO_LONGS is added to make it clear that
> > > > values passed are meant to be positive.
> > > 
> > > I am confused. If the value is meant to be positive. Then...
> > > 
> > > > 
> > > > Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
> > > > ---
> > > >   xen/include/xen/iommu.h | 2 +-
> > > >   xen/include/xen/types.h | 1 +
> > > >   2 files changed, 2 insertions(+), 1 deletion(-)
> > > > 
> > > > diff --git a/xen/include/xen/iommu.h b/xen/include/xen/iommu.h
> > > > index 0e747b0bbc1c..34aa0b9b5b81 100644
> > > > --- a/xen/include/xen/iommu.h
> > > > +++ b/xen/include/xen/iommu.h
> > > > @@ -360,7 +360,7 @@ struct domain_iommu {
> > > >   #endif
> > > >         /* Features supported by the IOMMU */
> > > > -    DECLARE_BITMAP(features, IOMMU_FEAT_count);
> > > > +    DECLARE_BITMAP(features, (int)IOMMU_FEAT_count);
> > > 
> > > ... why do we cast to (int) rather than (unsigned int)? Also, I think
> > > this cast deserve a comment on top because this is not a very obvious
> > > one.
> > > 
> > > >         /* Does the guest share HAP mapping with the IOMMU? */
> > > >       bool hap_pt_share;
> > > > diff --git a/xen/include/xen/types.h b/xen/include/xen/types.h
> > > > index aea259db1ef2..936e83d333a0 100644
> > > > --- a/xen/include/xen/types.h
> > > > +++ b/xen/include/xen/types.h
> > > > @@ -22,6 +22,7 @@ typedef signed long ssize_t;
> > > >     typedef __PTRDIFF_TYPE__ ptrdiff_t;
> > > >   +/* Users of this macro are expected to pass a positive value */
> > > >   #define BITS_TO_LONGS(bits) \
> > > >       (((bits)+BITS_PER_LONG-1)/BITS_PER_LONG)
> > > >   #define DECLARE_BITMAP(name,bits) \
> > > 
> > > Cheers,
> > 
> > See [1] for the reason why I did so. I should have mentioned that in the
> > commit notes, sorry.
> > In short, making BITS_TO_LONGS essentially unsigned would cause a cascade of
> > build errors and
> > possibly other essential type violations.
> Can you share some of the errors?
> 
> > If this is to be fixed that way, the effort required
> > is far greater. Either way, a comment on top of can be added, along the
> > lines of:
> > 
> > Leaving this as an enum would violate MISRA C:2012 Rule 10.1
> 
> I read this as you are simply trying to silence your tool. I think this the
> wrong approach as you are now making the code confusing for the reader (you
> pass a signed int to a function that is supposed to take a positive number).
> 
> I appreciate that this will result to more violations at the beginning. But
> the whole point of MISRA is to make the code better.
> 
> If this is too complex to solve now, then a possible option is to deviate for
> the time being.

I agree on everything Julien's wrote and I was about to suggest to use a
SAF comment to suppress the warning because it is clearer than a int
cast.

But then I realized that even if BITS_TO_LONGS was fixed, wouldn't still
we have a problem because IOMMU_FEAT_count is an enum?

Is it the case that IOMMU_FEAT_count would have to be cast regardless,
either to int or unsigned int or whatever to be used in DECLARE_BITMAP?


So we have 2 problems here: one problem is DECLARE_BITMAP taking int
instead of unsigned int, and another problem is IOMMU_FEAT_count being
an enum.

If I got it right, then I would go with the cast to int (like done in
this patch) with a decent comment on top of it.
--8323329-1793844254-1696639648=:3431292--


From xen-devel-bounces@lists.xenproject.org Sat Oct 07 03:31:33 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 07 Oct 2023 03:31:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613900.954758 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoy27-0000Dt-TN; Sat, 07 Oct 2023 03:31:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613900.954758; Sat, 07 Oct 2023 03:31: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 1qoy27-0000Dm-Px; Sat, 07 Oct 2023 03:31:15 +0000
Received: by outflank-mailman (input) for mailman id 613900;
 Sat, 07 Oct 2023 03:31: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 1qoy26-0000Dc-Vp; Sat, 07 Oct 2023 03:31: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 1qoy26-0002Y8-Pz; Sat, 07 Oct 2023 03:31: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 1qoy26-0006hH-Gk; Sat, 07 Oct 2023 03:31:14 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qoy26-0001rc-GJ; Sat, 07 Oct 2023 03: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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=MZ9X7YTA2i+gdktlakHwlMKSeEBSq9Lu/O9BP8STdNU=; b=BxqnZ0GHRdfkiJgmShZL7l+vRV
	dEcR4ErRHtpVnfXVbElAlKcwuRSM4o0mD4BWaFm7AADoawkHyQgPt7Sbwj5NO98vMvVCTonj1JmgC
	nDagZc6BAYrEEq5IbS9oi8PVkBmmfz0O9gpEvifi6xFlU6WT+ewtAKzwGiUf+M8Bxftw=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183307-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 183307: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=82191f8a0e57f674657c7461189e194b6f863e26
X-Osstest-Versions-That:
    ovmf=d073a545119140070c83e4b2b249bf0448c6f89e
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 07 Oct 2023 03:31:14 +0000

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

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 82191f8a0e57f674657c7461189e194b6f863e26
baseline version:
 ovmf                 d073a545119140070c83e4b2b249bf0448c6f89e

Last test of basis   183263  2023-10-04 16:12:23 Z    2 days
Testing same since   183307  2023-10-07 00:42:35 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
   d073a54511..82191f8a0e  82191f8a0e57f674657c7461189e194b6f863e26 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Sat Oct 07 04:37:30 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 07 Oct 2023 04:37:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613907.954768 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qoz41-0007ZW-DI; Sat, 07 Oct 2023 04:37:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613907.954768; Sat, 07 Oct 2023 04: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 1qoz41-0007ZP-9G; Sat, 07 Oct 2023 04:37:17 +0000
Received: by outflank-mailman (input) for mailman id 613907;
 Sat, 07 Oct 2023 04:37: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 1qoz3z-0007ZF-Lj; Sat, 07 Oct 2023 04:37: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 1qoz3y-0004Cm-Lt; Sat, 07 Oct 2023 04:37: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 1qoz3y-0002AP-5h; Sat, 07 Oct 2023 04:37:14 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qoz3y-0001pI-5D; Sat, 07 Oct 2023 04:37: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=GfTSCtDph02MlATNnnpsQxoCOrb7JNr576Laqa5XIEs=; b=lQ9wr19oeQtB1loUyyyQONVmTE
	ldYNYIZPpvy3mYQJWnK7sXE11j8JZe8R+EVpuVM/RuCK06xhUtp74v6NxpZj3H5+HqA1/zZ7138w1
	Z/7P2vETCwcTxDSD1eqLx0Op/5zkLoZffr5CLEE2p7aqAKhakSi1O3A4L4vdj7Ghcowo=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183304-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 183304: tolerable FAIL - PUSHED
X-Osstest-Failures:
    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-armhf-armhf-libvirt: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-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-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-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-xl-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu: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-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-raw:migrate-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-amd64-amd64-libvirt:migrate-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
    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-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:saverestore-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-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=af95dc6fdc25e616051d0234aad638e15c02ec8f
X-Osstest-Versions-That:
    linux=b78b18fb8ee19f7a05f20c3abc865b3bfe182884
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 07 Oct 2023 04:37:14 +0000

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

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 183284
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183284
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183284
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183284
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183284
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183284
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183284
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183284
 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-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-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-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-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-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-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-amd64-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-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-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-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-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                af95dc6fdc25e616051d0234aad638e15c02ec8f
baseline version:
 linux                b78b18fb8ee19f7a05f20c3abc865b3bfe182884

Last test of basis   183284  2023-10-06 05:23:40 Z    0 days
Testing same since   183304  2023-10-06 21:41:37 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Alex Deucher <alexander.deucher@amd.com>
  Andi Shyti <andi.shyti@linux.intel.com>
  Armin Wolf <W_Armin@gmx.de>
  Arthur Grillo <arthurgrillo@riseup.net>
  Aurabindo Pillai <aurabindo.pillai@amd.com>
  Bjorn Helgaas <bhelgaas@google.com>
  Chris Wilson <chris.p.wilson@intel.com>
  Daniel Wheeler <daniel.wheeler@amd.com>
  Danilo Krummrich <dakr@redhat.com>
  Dave Airlie <airlied@redhat.com>
  David Perry <David.Perry@amd.com>
  David Sterba <dsterba@suse.com>
  Faith Ekstrand <faith.ekstrand@collabora.com>
  Filipe Manana <fdmanana@suse.com>
  Hans de Goede <hdegoede@redhat.com>
  Jing Zhang <renyu.zj@linux.alibaba.com>
  Jithu Joseph <jithu.joseph@intel.com>
  Jonathan Cavitt <jonathan.cavitt@intel.com>
  Josef Bacik <josef@toxicpanda.com>
  Kai Uwe Broulik <foss-linux@broulik.de>
  Kenneth Feng <kenneth.feng@amd.com>
  Linus Torvalds <torvalds@linux-foundation.org>
  Liviu Dudau <liviu.dudau@arm.com>
  Lizhi Hou <lizhi.hou@amd.com>
  Luben Tuikov <luben.tuikov@amd.com>
  Mario Limonciello <mario.limonciello@amd.com>
  Mathias Krause <minipli@grsecurity.net>
  Matt Roper <matthew.d.roper@intel.com>
  Maxime Ripard <mripard@kernel.org>
  Maíra Canal <mairacanal@riseup.net>
  Mika Westerberg <mika.westerberg@linux.intel.com>
  Nirmoy Das <nirmoy.das@intel.com>
  Oza Pawandeep <quic_poza@quicinc.com>
  Qu Wenruo <wqu@suse.com>
  Rafael J. Wysocki <rafael.j.wysocki@intel.com>
  Randy Dunlap <rdunlap@infradead.org>
  Renan Guilherme Lebre Ramos <japareaggae@gmail.com>
  Rob Herring <robh@kernel.org>
  Robert Marko <robimarko@gmail.com>
  Rodrigo Vivi <rodrigo.vivi@intel.com>
  Samson Tam <samson.tam@amd.com>
  Sricharan Ramabadhran <quic_srichara@quicinc.com>
  Tapani Pälli <tapani.palli@intel.com>
  Thomas Zimmermann <tzimmermann@suse.de>
  Tomasz Swiatek <swiatektomasz99@gmail.com>
  Tvrtko Ursulin <tvrtko.ursulin@intel.com>
  Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
  Will Deacon <will@kernel.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-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
   b78b18fb8ee1..af95dc6fdc25  af95dc6fdc25e616051d0234aad638e15c02ec8f -> tested/linux-linus


From xen-devel-bounces@lists.xenproject.org Sat Oct 07 07:09:19 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 07 Oct 2023 07:09:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613917.954778 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qp1Qn-0006Z1-9K; Sat, 07 Oct 2023 07:08:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613917.954778; Sat, 07 Oct 2023 07:08: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 1qp1Qn-0006Yu-6V; Sat, 07 Oct 2023 07:08:57 +0000
Received: by outflank-mailman (input) for mailman id 613917;
 Sat, 07 Oct 2023 07:08: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 1qp1Qm-0006Yk-M2; Sat, 07 Oct 2023 07:08: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 1qp1Qm-0008G9-D6; Sat, 07 Oct 2023 07:08: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 1qp1Qm-0001Yh-1S; Sat, 07 Oct 2023 07:08:56 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qp1Qm-0003Dl-11; Sat, 07 Oct 2023 07:08: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=zRrFd8FMzYB5E40+l06B8k82d1mvznNJDje064nNaLI=; b=yxy7KoNh/SlqrAx978WnPfKAs2
	hs1LmQv82eUPPbvBjhwzSIVI5xVGu7trVCqf60MzD/ursa/g1Z5OrwGpIO/Vjm+MQFW1GkK/nta1H
	ulm24frEy5RFCtKpz1FwgElBYj47D8QjFs0aE3RckIHvcDd/okKE7h7OocZjEqWPLKEQ=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183306-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 183306: regressions - FAIL
X-Osstest-Failures:
    xen-unstable:test-amd64-amd64-xl:debian-fixup:fail:regression
    xen-unstable:build-arm64-xsm:xen-build:fail:regression
    xen-unstable:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:build-check(1):blocked: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-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-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-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-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-unstable:test-amd64-amd64-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-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-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-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt: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-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2: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-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1: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=ffa1437686712045953c33c5e77a4ebdd9973916
X-Osstest-Versions-That:
    xen=02c98966360b76052779b0186784437af88f301e
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 07 Oct 2023 07:08:56 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-xl          13 debian-fixup             fail REGR. vs. 183278
 build-arm64-xsm               6 xen-build                fail REGR. vs. 183278

Tests which did not succeed, but are not blocking:
 test-arm64-arm64-libvirt-xsm  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 183278
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183278
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 183278
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183278
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183278
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183278
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 183278
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 183278
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183278
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183278
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 183278
 test-amd64-amd64-xl-qemuu-win7-amd64 12 windows-install       fail like 183278
 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-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-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-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-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-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-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-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-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-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                  ffa1437686712045953c33c5e77a4ebdd9973916
baseline version:
 xen                  02c98966360b76052779b0186784437af88f301e

Last test of basis   183278  2023-10-06 01:52:00 Z    1 days
Testing same since   183306  2023-10-06 22:40:25 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Andrii Chepurnyi <andrii_chepurnyi@epam.com>
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.com>
  Roger Pau Monne <roger.pau@citrix.com>
  Roger Pau Monné <roger.pau@citrix.com>
  Tamas K Lengyel <tamas@tklengyel.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              fail    
 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                                          fail    
 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                                 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-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.

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


From xen-devel-bounces@lists.xenproject.org Sat Oct 07 15:08:40 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 07 Oct 2023 15:08:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613942.954796 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qp8uf-0005SI-TK; Sat, 07 Oct 2023 15:08:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613942.954796; Sat, 07 Oct 2023 15:08: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 1qp8uf-0005SB-QR; Sat, 07 Oct 2023 15:08:17 +0000
Received: by outflank-mailman (input) for mailman id 613942;
 Sat, 07 Oct 2023 15:08: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=TImy=FV=gmail.com=jandryuk@srs-se1.protection.inumbo.net>)
 id 1qp8ue-0005S5-B7
 for xen-devel@lists.xenproject.org; Sat, 07 Oct 2023 15:08:16 +0000
Received: from mail-ed1-x52a.google.com (mail-ed1-x52a.google.com
 [2a00:1450:4864:20::52a])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 564256d0-6523-11ee-98d3-6d05b1d4d9a1;
 Sat, 07 Oct 2023 17:08:14 +0200 (CEST)
Received: by mail-ed1-x52a.google.com with SMTP id
 4fb4d7f45d1cf-53627feca49so5214863a12.1
 for <xen-devel@lists.xenproject.org>; Sat, 07 Oct 2023 08:08: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: 564256d0-6523-11ee-98d3-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1696691293; x=1697296093; 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=iBE8Q9h8e8kvIlo6bMpJIW9LEvVr/atUEFEuV64FS+c=;
        b=cP1kZB1rgXpfS4kA8sYAng5aQd1fM/igJwttp2dyJnXx70zX2ax3KVXg9YKIkB7Ypw
         fcxzAGVcU8wzHGAkgW5v7Og4Q8bwlaZD8s3uLLDtINGjd/7Xd8jrWGaXK4CBROQVKWsW
         xQ0SrSxRmZkl2uV6GBwoXZVaoVZmldFx1C+WBTzl+efRAlm5yp/imhmZmRl9vnTLMqXw
         /E34A4WV0x4FLomyvjCVnAi7hAFz0oIz4Tt0lanFurg5JYA3uedgs/cX3zT0N+9bCrLC
         tHPVVUVmYPpM69/El0Qh9TeIoyP8rFRV7wJ9oIe38B7ezEy/UkUz/m9+T1Z3f6Kf7rK/
         LT/w==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1696691293; x=1697296093;
        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=iBE8Q9h8e8kvIlo6bMpJIW9LEvVr/atUEFEuV64FS+c=;
        b=gRBYwSAV/iIFDbybWommEEepDqTrlglCit1RbMkFVZDRdv7zxZHlI7LMSVfITgbT+4
         5tT3TWbPBdgR22sLOELwNlPpREPWnHb5nmEqIrFqJZ5LJMCVD4AYpDsLOrOr8bfahIiK
         53uNzut2FnTqo4e199mqJzZhlLGZTxB3nYaICU8fS2hWgArvVO0u56EEmGn/CbYyThiD
         R1mVqSgJuFgTiyg+3+jpx/E1WKzBVs3t1Js2XD84NnlV6o+u/naKYKxGCXbsfyCJG4qb
         eVFG+tzyP3W6RQZJEXBwQCmgazmT9fO0KT3UK4RC8mFhRVIsVuj1jzjr+oN7UzplZoi4
         +GPg==
X-Gm-Message-State: AOJu0YwQgdZj83n0UmxNfSFfOzp7xmltDXTrF1YQj9fbjsl0vUwYA4r+
	Oqfy5/vN3j41IijL5sgtUOpum6wlo+CxcsHl3H8=
X-Google-Smtp-Source: AGHT+IEo0XYBtGtFUl06LMFfBApocIRihu4UFYOwsRTa6ZSqXDNQndad8B9PTdHcPvwdI+nuO7k/cjWL7Ts6j7NQ9HU=
X-Received: by 2002:aa7:d945:0:b0:523:2e30:aaee with SMTP id
 l5-20020aa7d945000000b005232e30aaeemr9524027eds.32.1696691293437; Sat, 07 Oct
 2023 08:08:13 -0700 (PDT)
MIME-Version: 1.0
References: <20231006185402.1098400-1-andrew.cooper3@citrix.com> <20231006185402.1098400-3-andrew.cooper3@citrix.com>
In-Reply-To: <20231006185402.1098400-3-andrew.cooper3@citrix.com>
From: Jason Andryuk <jandryuk@gmail.com>
Date: Sat, 7 Oct 2023 11:08:01 -0400
Message-ID: <CAKf6xptUPaqMvNM0qGyDO=VjMyNtDM74xksA6kuMDzL-bzBwGg@mail.gmail.com>
Subject: Re: [PATCH for-4.18 v2 2/2] x86: Clarify that only 5 hypercall
 parameters are supported
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: Xen-devel <xen-devel@lists.xenproject.org>, Michal Orzel <michal.orzel@amd.com>, 
	George Dunlap <George.Dunlap@eu.citrix.com>, Jan Beulich <JBeulich@suse.com>, 
	Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>, Julien Grall <julien@xen.org>, 
	Henry Wang <Henry.Wang@arm.com>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Fri, Oct 6, 2023 at 4:29=E2=80=AFPM Andrew Cooper <andrew.cooper3@citrix=
.com> wrote:
>
> From: Michal Orzel <michal.orzel@amd.com>
>
> The x86 hypercall ABI really used to have 6-argument hypercalls.  V4V, th=
e
> downstream predecessor to Argo did take 6th args.
>
> However, the 6th arg being %ebp in the 32bit ABI makes it unusable in
> practice, because that's the frame pointer in builds with frame pointers
> enabled.  Therefore Argo was altered to being a 5-arg hypercall when it w=
as
> upstreamed.
>
> c/s 2f531c122e95 ("x86: limit number of hypercall parameters to 5") remov=
ed
> the ability for hypercalls to take 6 arguments.
>
> Update the documentation to match reality.
>
> Signed-off-by: Michal Orzel <michal.orzel@amd.com>
> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
> ---
> CC: George Dunlap <George.Dunlap@eu.citrix.com>
> CC: Jan Beulich <JBeulich@suse.com>
> CC: Stefano Stabellini <sstabellini@kernel.org>
> CC: Wei Liu <wl@xen.org>
> CC: Julien Grall <julien@xen.org>
> CC: Michal Orzel <michal.orzel@amd.com>
> CC: Henry Wang <Henry.Wang@arm.com>
>
> v2:
>  * Extend with the historical context of how 6-arg hypercalls have come a=
nd gone.
> ---
>  docs/guest-guide/x86/hypercall-abi.rst   | 15 +++++++++++----
>  xen/include/public/arch-x86/xen-x86_32.h |  2 +-
>  xen/include/public/arch-x86/xen-x86_64.h |  2 +-
>  3 files changed, 13 insertions(+), 6 deletions(-)
>
> diff --git a/docs/guest-guide/x86/hypercall-abi.rst b/docs/guest-guide/x8=
6/hypercall-abi.rst
> index 42a820386b68..c7a11a76712f 100644
> --- a/docs/guest-guide/x86/hypercall-abi.rst
> +++ b/docs/guest-guide/x86/hypercall-abi.rst

> @@ -119,6 +119,13 @@ means.
>  .. [#kern] For HVM guests, ``HVMOP_guest_request_vm_event`` may be confi=
gured
>     to be usable from userspace, but this behaviour is not default.
>
> +.. [#params] Xen's ABI used to declare support for 6 hypercall arguments=
,
> +   using ``r9`` and ``ebp``.  However, such an ABI clobbers the frame po=
inter
> +   in the 32bit code and does interact nicely with guest-side debugging.=
  The

I think you want s/does/does not/.

With that,

Reviewed-by: Jason Andryuk <jandryuk@gmail.com>

> +   predecessor to ``HYPERCALL_argo_op`` was a 6-argument hypercall, but =
the

Also, I think it would be worth just naming v4v with "...predecessor
to ``HYPERCALL_argo_op``, v4v, was...", so a future reader doesn't
have to investigate to find out what the predecessor was.

Regards,
Jason

> +   ABI was intentionally altered when Argo was upstreamed (Xen 4.13) to =
be the
> +   5-argument hypercall it now is.
> +
>  .. [#mode] While it is possible to use compatibility mode segments in a =
64bit
>     kernel, hypercalls issues from such a mode will be interpreted with t=
he
>     32bit ABI.  Such a setup is not expected in production scenarios.


From xen-devel-bounces@lists.xenproject.org Sat Oct 07 20:17:59 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 07 Oct 2023 20:17:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613986.954838 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qpDk5-0000CM-Ct; Sat, 07 Oct 2023 20:17:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613986.954838; Sat, 07 Oct 2023 20:17: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 1qpDk5-0000CF-9t; Sat, 07 Oct 2023 20:17:41 +0000
Received: by outflank-mailman (input) for mailman id 613986;
 Sat, 07 Oct 2023 20:17: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 1qpDk4-0000C5-4s; Sat, 07 Oct 2023 20:17: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 1qpDk4-0002RE-0I; Sat, 07 Oct 2023 20:17: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 1qpDk3-00062s-KZ; Sat, 07 Oct 2023 20:17:39 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qpDk3-0001Wv-K9; Sat, 07 Oct 2023 20:17: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=nw0TV9PELED7d6nuVix4+urerOq9xgqRO8sE662YWcs=; b=aD6kmhJe7XsxlytmVCxBRGv6dJ
	01yB7pOCxWkSJNjXr9wgjPHx+38DHKgbNEIbHKszdRUtV70hHrW3f/5KCExQh6rm8FUk82KNRgExW
	TScUjJDIKYFH9UGDPY111YrzrAJmrYA9ljuE4B/kkTAljyjt+cw6JaH3VQZLJlPvSjOk=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183315-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 183315: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=5087a07736452518a508a7776002afbce360128b
X-Osstest-Versions-That:
    ovmf=82191f8a0e57f674657c7461189e194b6f863e26
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 07 Oct 2023 20:17:39 +0000

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

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 5087a07736452518a508a7776002afbce360128b
baseline version:
 ovmf                 82191f8a0e57f674657c7461189e194b6f863e26

Last test of basis   183307  2023-10-07 00:42:35 Z    0 days
Testing same since   183315  2023-10-07 14:12:49 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
   82191f8a0e..5087a07736  5087a07736452518a508a7776002afbce360128b -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Sun Oct 08 01:05:01 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 08 Oct 2023 01:05:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.613995.954848 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qpIDs-00050k-HS; Sun, 08 Oct 2023 01:04:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 613995.954848; Sun, 08 Oct 2023 01:04: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 1qpIDs-00050d-Et; Sun, 08 Oct 2023 01:04:44 +0000
Received: by outflank-mailman (input) for mailman id 613995;
 Sun, 08 Oct 2023 01:04: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 1qpIDq-00050T-JP; Sun, 08 Oct 2023 01:04: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 1qpIDq-0008Bz-6t; Sun, 08 Oct 2023 01:04: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 1qpIDp-0006Tr-PL; Sun, 08 Oct 2023 01:04:41 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qpIDp-0003RE-Ox; Sun, 08 Oct 2023 01:04: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=9cgp4Dxmt0lnDF9yoAsdQTLRj+3tsgq9bMyi3sMz5hc=; b=lzO/mp5HL6d1mHEk9X9K5JXIAX
	e+aVnTq4ZJr0QErdW770m0/6VxVShO2tKXKkMuZNV96DfGy4FRiW+hZrNj+YHV6e2oAl3nWqwSvvG
	EQUQ2VZ3rJyH1Y93yqOp4C4wnctov5qXlzQueFJDt5y2oJGhp6EH4QQSMiF4TNO9gvR4=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183308-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 183308: tolerable FAIL - PUSHED
X-Osstest-Failures:
    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-armhf-armhf-libvirt: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-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-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-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-xl-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu: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-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-raw:migrate-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-amd64-amd64-libvirt:migrate-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
    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-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:saverestore-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-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=82714078aee4ccbd6ee7579d5a21f8a72155d0fb
X-Osstest-Versions-That:
    linux=af95dc6fdc25e616051d0234aad638e15c02ec8f
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sun, 08 Oct 2023 01:04:41 +0000

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

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 183304
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183304
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183304
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183304
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183304
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183304
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183304
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183304
 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-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-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-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-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-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-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-amd64-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-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-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-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-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                82714078aee4ccbd6ee7579d5a21f8a72155d0fb
baseline version:
 linux                af95dc6fdc25e616051d0234aad638e15c02ec8f

Last test of basis   183304  2023-10-06 21:41:37 Z    1 days
Testing same since   183308  2023-10-07 04:40:23 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Christoph Hellwig <hch@lst.de>
  David Jeffery <djeffery@redhat.com>
  Jeff Moyer <jmoyer@redhat.com>
  Jens Axboe <axboe@kernel.dk>
  Linus Torvalds <torvalds@linux-foundation.org>
  Pavankumar Kondeti <quic_pkondeti@quicinc.com>
  Rafael J. Wysocki <rafael.j.wysocki@intel.com>
  Samuel Holland <samuel.holland@sifive.com>
  Song Liu <song@kernel.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-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
   af95dc6fdc25..82714078aee4  82714078aee4ccbd6ee7579d5a21f8a72155d0fb -> tested/linux-linus


From xen-devel-bounces@lists.xenproject.org Sun Oct 08 05:28:20 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 08 Oct 2023 05:28:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614002.954859 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qpMKi-0007iJ-QK; Sun, 08 Oct 2023 05:28:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614002.954859; Sun, 08 Oct 2023 05: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 1qpMKi-0007iC-NJ; Sun, 08 Oct 2023 05:28:04 +0000
Received: by outflank-mailman (input) for mailman id 614002;
 Sun, 08 Oct 2023 05:28: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 1qpMKh-0007i2-P9; Sun, 08 Oct 2023 05:28: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 1qpMKh-0006p9-IT; Sun, 08 Oct 2023 05:28: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 1qpMKh-0007lX-2Q; Sun, 08 Oct 2023 05:28:03 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qpMKh-0007Wt-1p; Sun, 08 Oct 2023 05:28: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=QpLuy6i+74Z8fI/2Drc2wbFUtkz2+bOgGdRXyzvE3Dk=; b=RofAQmrFfG3HVKWc4ASHsZJmhY
	IRk6LZA1bQJpSnoHleZqKUpIZGSLBRRaUc3IkibrBvV6uPzg8gZGbNhslKQNEuUOcHDqQjpbFOmBF
	f6Syb7/jnIbpxFiNvm63qyW9N06WQCk8kC6FBmjBH1uulq/4lgvmxFsMg22oR2Zyyng0=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183310-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 183310: regressions - FAIL
X-Osstest-Failures:
    xen-unstable:build-arm64-xsm:xen-build:fail:regression
    xen-unstable:test-amd64-amd64-xl:debian-fixup:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-vhd:guest-start/debian.repeat:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl:xen-boot:fail:heisenbug
    xen-unstable:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking
    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-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl: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-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-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-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-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check: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-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-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-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-amd64-amd64-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-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-arndale:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-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-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-libvirt-qcow2:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=ffa1437686712045953c33c5e77a4ebdd9973916
X-Osstest-Versions-That:
    xen=02c98966360b76052779b0186784437af88f301e
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sun, 08 Oct 2023 05:28:03 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 build-arm64-xsm               6 xen-build      fail in 183306 REGR. vs. 183278

Tests which are failing intermittently (not blocking):
 test-amd64-amd64-xl          13 debian-fixup     fail in 183306 pass in 183310
 test-armhf-armhf-xl-vhd      17 guest-start/debian.repeat  fail pass in 183306
 test-armhf-armhf-xl           8 xen-boot                   fail pass in 183306

Tests which did not succeed, but are not blocking:
 test-arm64-arm64-xl-xsm       1 build-check(1)           blocked in 183306 n/a
 test-arm64-arm64-libvirt-xsm  1 build-check(1)           blocked in 183306 n/a
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop      fail blocked in 183278
 test-amd64-amd64-xl-qemuu-win7-amd64 12 windows-install fail in 183306 like 183278
 test-armhf-armhf-xl         15 migrate-support-check fail in 183306 never pass
 test-armhf-armhf-xl     16 saverestore-support-check fail in 183306 never pass
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183278
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183278
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 183278
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183278
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183278
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183278
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 183278
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183278
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183278
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 183278
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 183278
 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-i386-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-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-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-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-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-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-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-libvirt-qcow2 14 migrate-support-check        fail never pass

version targeted for testing:
 xen                  ffa1437686712045953c33c5e77a4ebdd9973916
baseline version:
 xen                  02c98966360b76052779b0186784437af88f301e

Last test of basis   183278  2023-10-06 01:52:00 Z    2 days
Testing same since   183306  2023-10-06 22:40:25 Z    1 days    2 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Andrii Chepurnyi <andrii_chepurnyi@epam.com>
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.com>
  Roger Pau Monne <roger.pau@citrix.com>
  Roger Pau Monné <roger.pau@citrix.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                                          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                                      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 324 lines long.)


From xen-devel-bounces@lists.xenproject.org Sun Oct 08 10:45:48 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 08 Oct 2023 10:45:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614017.954869 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qpRHq-0007CX-Pc; Sun, 08 Oct 2023 10:45:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614017.954869; Sun, 08 Oct 2023 10:45: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 1qpRHq-0007CQ-M3; Sun, 08 Oct 2023 10:45:26 +0000
Received: by outflank-mailman (input) for mailman id 614017;
 Sun, 08 Oct 2023 10:45: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 1qpRHp-0007CG-RX; Sun, 08 Oct 2023 10:45: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 1qpRHp-0006H1-Jx; Sun, 08 Oct 2023 10:45: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 1qpRHp-0005Te-58; Sun, 08 Oct 2023 10:45:25 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qpRHp-0000pq-4c; Sun, 08 Oct 2023 10:45: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=XzamCbhB5tBMKhSApirVCUZ+ZVFecO3MOlM9O6rixR8=; b=2mG0qSnUjghg/n2B0/RJu6eSME
	c4KdAqRFBPo7o3uGXPNYYVURSF+Ua7Y2fJ+CRt53pKzM/k3KxbVwn3SbL6JJiMglTFKqRPJJJb6om
	mlWw+ozqoSft5ejoBgvFUUCOuxOjHSHKrRy8pkWbWm23l+YykmmWTEwb0OloYyKQfseU=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183318-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 183318: tolerable FAIL - PUSHED
X-Osstest-Failures:
    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-armhf-armhf-libvirt: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-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-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-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-xl-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu: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-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-raw:migrate-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-amd64-amd64-libvirt:migrate-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
    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-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:saverestore-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-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=b9ddbb0cde2adcedda26045cc58f31316a492215
X-Osstest-Versions-That:
    linux=82714078aee4ccbd6ee7579d5a21f8a72155d0fb
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sun, 08 Oct 2023 10:45:25 +0000

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

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 183308
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183308
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183308
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183308
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183308
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183308
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183308
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183308
 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-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-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-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-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-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-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-amd64-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-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-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-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-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                b9ddbb0cde2adcedda26045cc58f31316a492215
baseline version:
 linux                82714078aee4ccbd6ee7579d5a21f8a72155d0fb

Last test of basis   183308  2023-10-07 04:40:23 Z    1 days
Testing same since   183318  2023-10-08 01:13:26 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Arnd Bergmann <arnd@arndb.de>
  Artem Chernyshev <artem.chernyshev@red-soft.ru>
  Bart Van Assche <bvanassche@acm.org>
  Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
  Bernard Metzler <bmt@zurich.ibm.com>
  Chandan Babu R <chandanbabu@kernel.org>
  Cheng Xu <chengyou@linux.alibaba.com>
  Christophe JAILLET <christophe.jaillet@wanadoo.fr>
  Conor Dooley <conor.dooley@microchip.com>
  Dan Carpenter <dan.carpenter@linaro.org>
  Dave Chinner <dchinner@redhat.com>
  Duje Mihanović <duje.mihanovic@skole.hr>
  Fabio Estevam <festevam@denx.de>
  Fedor Pchelkin <pchelkin@ispras.ru>
  Geert Uytterhoeven <geert+renesas@glider.be>
  Hamdan Igbaria <hamdani@nvidia.com>
  Hans Verkuil <hverkuil-cisco@xs4all.nl>
  Helge Deller <deller@gmx.de>
  Irui Wang <irui.wang@mediatek.com>
  Ivanov Mikhail <ivanov.mikhail1@huawei-partners.com>
  John David Anglin <dave.anglin@bell.net>
  John David Anglin <dave@parisc-linux.org>
  Jordan Rife <jrife@google.com>
  Konstantin Meskhidze <konstantin.meskhidze@huawei.com>
  Leon Romanovsky <leon@kernel.org>
  Leon Romanovsky <leonro@nvidia.com>
  Linus Torvalds <torvalds@linux-foundation.org>
  Luca Ceresoli <luca.ceresoli@bootlin.com>
  Mark Zhang <markzhang@nvidia.com>
  Michael Guralnik <michaelgur@nvidia.com>
  Mike Snitzer <snitzer@kernel.org>
  Paulo Alcantara (SUSE) <pc@manguebit.com>
  Paulo Alcantara <pc@manguebit.com>
  Rob Herring <robh@kernel.org>
  Sakari Ailus <sakari.ailus@linux.intel.com>
  Saravanan Vajravel <saravanan.vajravel@broadcom.com>
  Selvin Xavier <selvin.xavier@broadcom.com>
  Shay Drory <shayd@nvidia.com>
  Steve French <stfrench@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-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
   82714078aee4..b9ddbb0cde2a  b9ddbb0cde2adcedda26045cc58f31316a492215 -> tested/linux-linus


From xen-devel-bounces@lists.xenproject.org Sun Oct 08 13:02:19 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 08 Oct 2023 13:02:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614033.954879 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qpTPz-0005DQ-Qd; Sun, 08 Oct 2023 13:01:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614033.954879; Sun, 08 Oct 2023 13: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 1qpTPz-0005DJ-N5; Sun, 08 Oct 2023 13:01:59 +0000
Received: by outflank-mailman (input) for mailman id 614033;
 Sun, 08 Oct 2023 13:01: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=bxd3=FW=kernel.org=patchwork-bot+netdevbpf@srs-se1.protection.inumbo.net>)
 id 1qpTPx-0005Bg-Ha
 for xen-devel@lists.xenproject.org; Sun, 08 Oct 2023 13:01:57 +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 d865e83e-65da-11ee-9b0d-b553b5be7939;
 Sun, 08 Oct 2023 15:01:52 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by sin.source.kernel.org (Postfix) with ESMTP id 1CA22CE001D;
 Sun,  8 Oct 2023 13:01:46 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPS id 56AD9C433C9;
 Sun,  8 Oct 2023 13:01:45 +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
 37774E11F5C; Sun,  8 Oct 2023 13:01: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: d865e83e-65da-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696770105;
	bh=DQk+Uo1Aj7m6CN1WR/ZmAdwJnWTi1NCYCK8zikDFlOk=;
	h=Subject:From:Date:References:In-Reply-To:To:Cc:From;
	b=QAvRQ3ao3Vl8wpZWph0A/wBAApb3xqHFpF7ki5GRsl+xTA7nthe5xhWDBpgosTwG2
	 /tb2JuNL2BbJl/E6L/Ax5jN7e9rjv2ZUW8db1aqZDV26h9PeEyfvoBhZBVK2y/MX0s
	 kTC8+y5jNEVT3NPidyvqQlHDRFj7TLx2GMVZkVP6EqG5XBdhOH6fyW+orqX2pafaiH
	 mstHg4cV0hsaEvx+QMElQAZeot2u0hnGoW0DmA7Uk5iYnY36AVgkPP+pkCjgRBalAm
	 +Xm6r5irjkQzrywjH/v57LuOlhTcxWgQr1CT/S5KPoJN29iEzzoAcdtrgVgMCY5Noz
	 jOg+boJA5StrQ==
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Subject: Re: [PATCH] xen-netback: use default TX queue size for vifs
From: patchwork-bot+netdevbpf@kernel.org
Message-Id: 
 <169677010522.31796.399436279906419737.git-patchwork-notify@kernel.org>
Date: Sun, 08 Oct 2023 13:01:45 +0000
References: <20231005140831.89117-1-roger.pau@citrix.com>
In-Reply-To: <20231005140831.89117-1-roger.pau@citrix.com>
To: =?utf-8?b?Um9nZXIgUGF1IE1vbm7DqSA8cm9nZXIucGF1QGNpdHJpeC5jb20+?=@ci.codeaurora.org
Cc: linux-kernel@vger.kernel.org, ross.lagerwall@citrix.com,
 wei.liu@kernel.org, paul@xen.org, davem@davemloft.net, edumazet@google.com,
 kuba@kernel.org, pabeni@redhat.com, Ian.Campbell@citrix.com,
 bhutchings@solarflare.com, xen-devel@lists.xenproject.org,
 netdev@vger.kernel.org

Hello:

This patch was applied to netdev/net.git (main)
by David S. Miller <davem@davemloft.net>:

On Thu,  5 Oct 2023 16:08:31 +0200 you wrote:
> Do not set netback interfaces (vifs) default TX queue size to the ring size.
> The TX queue size is not related to the ring size, and using the ring size (32)
> as the queue size can lead to packet drops.  Note the TX side of the vif
> interface in the netback domain is the one receiving packets to be injected
> to the guest.
> 
> Do not explicitly set the TX queue length to any value when creating the
> interface, and instead use the system default.  Note that the queue length can
> also be adjusted at runtime.
> 
> [...]

Here is the summary with links:
  - xen-netback: use default TX queue size for vifs
    https://git.kernel.org/netdev/net/c/66cf7435a269

You are awesome, thank you!
-- 
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/patchwork/pwbot.html




From xen-devel-bounces@lists.xenproject.org Sun Oct 08 13:04:02 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 08 Oct 2023 13:04:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614036.954889 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qpTRx-0005t2-7w; Sun, 08 Oct 2023 13:04:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614036.954889; Sun, 08 Oct 2023 13:04: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 1qpTRx-0005sv-30; Sun, 08 Oct 2023 13:04:01 +0000
Received: by outflank-mailman (input) for mailman id 614036;
 Sun, 08 Oct 2023 13:03: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 1qpTRv-0005sl-SX; Sun, 08 Oct 2023 13:03: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 1qpTRv-00010H-Kp; Sun, 08 Oct 2023 13:03: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 1qpTRv-0000yo-93; Sun, 08 Oct 2023 13:03:59 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qpTRv-00075J-8Z; Sun, 08 Oct 2023 13:03: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=loYvgBetNKUQDZBaYKYL3sAZG8a7jnf6KOtnsLs/ZHw=; b=2F6+SbRmOkmcoWsyeLwUUAcj4F
	3HelCPDsw95ULncPmpKjz7wNfrLcq1fOCX2P4qSYxUapAhFCqn/EgrXKsBNNQ6SxFwCZAn7e+zGVi
	9gbyoIgCG8+rK8ZKA3nSNRt2s05feWv8XHjbOHofEyRBst3N7WLyjOZHbxJhrv1qFq0A=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183320-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 183320: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=4ddd8ac3a29d9c5974a19f36c1dc5896d813dc6e
X-Osstest-Versions-That:
    ovmf=5087a07736452518a508a7776002afbce360128b
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sun, 08 Oct 2023 13:03:59 +0000

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

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 4ddd8ac3a29d9c5974a19f36c1dc5896d813dc6e
baseline version:
 ovmf                 5087a07736452518a508a7776002afbce360128b

Last test of basis   183315  2023-10-07 14:12:49 Z    0 days
Testing same since   183320  2023-10-08 11:13:57 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-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
   5087a07736..4ddd8ac3a2  4ddd8ac3a29d9c5974a19f36c1dc5896d813dc6e -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Sun Oct 08 14:50:34 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 08 Oct 2023 14:50:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614044.954899 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qpV6o-0001J8-LR; Sun, 08 Oct 2023 14:50:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614044.954899; Sun, 08 Oct 2023 14:50: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 1qpV6o-0001J1-Hl; Sun, 08 Oct 2023 14:50:18 +0000
Received: by outflank-mailman (input) for mailman id 614044;
 Sun, 08 Oct 2023 14:50: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 1qpV6n-0001Ir-KB; Sun, 08 Oct 2023 14:50: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 1qpV6n-0003aH-BX; Sun, 08 Oct 2023 14:50: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 1qpV6m-0003Pn-Ux; Sun, 08 Oct 2023 14:50:17 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qpV6m-0007IC-UO; Sun, 08 Oct 2023 14:50: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=9SoSlRWZQ33LJUT1Lg9mJNFZRAhntjrI+yO6PMBLXsk=; b=Pgg2Jd3UUVYZf+xbwZCOfMH7em
	h6SCs3VUsy8qjI7cMNcE5X77T029JT2T/n3OoB4X4tZ1AzaizVyBevb5NGCWUTKYfJNzwC9/9j7Rl
	x6oz6mYAVCH2jpDzKy3tLuHizcGKb1P1cMSaaWn0CIZg0ZCqmUnFZTa/p81ySKYGPn6Y=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183319-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 183319: tolerable FAIL - PUSHED
X-Osstest-Failures:
    xen-unstable:test-armhf-armhf-xl-vhd:guest-start/debian.repeat:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl:xen-boot:fail:heisenbug
    xen-unstable:test-amd64-i386-qemuu-rhel6hvm-amd:xen-install:fail:heisenbug
    xen-unstable:test-armhf-armhf-libvirt-raw:guest-start/debian.repeat:fail:heisenbug
    xen-unstable:test-amd64-amd64-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-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-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-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-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-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check: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-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-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-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-amd64-amd64-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-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-arndale:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-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-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-libvirt-qcow2:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=ffa1437686712045953c33c5e77a4ebdd9973916
X-Osstest-Versions-That:
    xen=02c98966360b76052779b0186784437af88f301e
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sun, 08 Oct 2023 14:50:16 +0000

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

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-armhf-armhf-xl-vhd 17 guest-start/debian.repeat fail in 183310 pass in 183319
 test-armhf-armhf-xl           8 xen-boot         fail in 183310 pass in 183319
 test-amd64-i386-qemuu-rhel6hvm-amd  7 xen-install          fail pass in 183310
 test-armhf-armhf-libvirt-raw 17 guest-start/debian.repeat  fail pass in 183310

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop      fail blocked in 183278
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183278
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183278
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 183278
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183278
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183278
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183278
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 183278
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183278
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183278
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 183278
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 183278
 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-i386-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-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-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-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-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-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-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-libvirt-qcow2 14 migrate-support-check        fail never pass

version targeted for testing:
 xen                  ffa1437686712045953c33c5e77a4ebdd9973916
baseline version:
 xen                  02c98966360b76052779b0186784437af88f301e

Last test of basis   183278  2023-10-06 01:52:00 Z    2 days
Testing same since   183306  2023-10-06 22:40:25 Z    1 days    3 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Andrii Chepurnyi <andrii_chepurnyi@epam.com>
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.com>
  Roger Pau Monne <roger.pau@citrix.com>
  Roger Pau Monné <roger.pau@citrix.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                           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


Pushing revision :

To xenbits.xen.org:/home/xen/git/xen.git
   02c9896636..ffa1437686  ffa1437686712045953c33c5e77a4ebdd9973916 -> master


From xen-devel-bounces@lists.xenproject.org Mon Oct 09 00:40:39 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 09 Oct 2023 00:40:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614067.954969 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qpeJl-0004g7-Jz; Mon, 09 Oct 2023 00:40:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614067.954969; Mon, 09 Oct 2023 00:40: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 1qpeJl-0004g0-GY; Mon, 09 Oct 2023 00:40:17 +0000
Received: by outflank-mailman (input) for mailman id 614067;
 Mon, 09 Oct 2023 00:40: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 1qpeJk-0004fq-Ta; Mon, 09 Oct 2023 00:40: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 1qpeJk-0001NU-M9; Mon, 09 Oct 2023 00:40: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 1qpeJk-0003as-6N; Mon, 09 Oct 2023 00:40:16 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qpeJk-0008TU-5t; Mon, 09 Oct 2023 00:40: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=s+n4HFrzHNNIQFueJMCqieINOYmWM1fl8TI7Y3xwUQk=; b=V5AwzDA1H2Cliqw6oXM0I1vnq1
	Hg4xb92q51kqKVJ4mfrV7iHGxU4dz8AWru/OceR3EMf6j4VBLucxlx4duSMYjchBi0igozPFfBMfl
	LluNmbucAmz7I04w1MG+tGsWAo2bnBLD9pgjGEcjwytlG2NDVsnpnUy0uNZAR++Kpt0w=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183321-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 183321: tolerable FAIL - PUSHED
X-Osstest-Failures:
    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-armhf-armhf-libvirt: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-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-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: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-xl-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu: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-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-raw:migrate-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-amd64-amd64-libvirt:migrate-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
    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-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:saverestore-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-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=37faf07bf90ace7c8e34c6b825dcfbb587d2e701
X-Osstest-Versions-That:
    linux=b9ddbb0cde2adcedda26045cc58f31316a492215
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 09 Oct 2023 00:40:16 +0000

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

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 183318
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183318
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183318
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183318
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183318
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183318
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183318
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183318
 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-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          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-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-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-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-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-amd64-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-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-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-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-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                37faf07bf90ace7c8e34c6b825dcfbb587d2e701
baseline version:
 linux                b9ddbb0cde2adcedda26045cc58f31316a492215

Last test of basis   183318  2023-10-08 01:13:26 Z    0 days
Testing same since   183321  2023-10-08 18:13:25 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  "Rafael J. Wysocki" <rafael@kernel.org>
  Borislav Petkov (AMD) <bp@alien8.de>
  Guohua Yan <guohua.yan@unisoc.com>
  Ingo Molnar <mingo@kernel.org>
  Linus Torvalds <torvalds@linux-foundation.org>
  luosili <rootlab@huawei.com>
  Namjae Jeon <linkinjeon@kernel.org>
  Peter Zijlstra (Intel) <peterz@infradead.org>
  Peter Zijlstra <peterz@infradead.org>
  Steve French <stfrench@microsoft.com>
  Tom Lendacky <thomas.lendacky@amd.com>
  Xuewen Yan <xuewen.yan@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
   b9ddbb0cde2a..37faf07bf90a  37faf07bf90ace7c8e34c6b825dcfbb587d2e701 -> tested/linux-linus


From xen-devel-bounces@lists.xenproject.org Mon Oct 09 01:03:36 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 09 Oct 2023 01:03:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614075.954989 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qpegI-0005pK-Ks; Mon, 09 Oct 2023 01:03:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614075.954989; Mon, 09 Oct 2023 01: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 1qpegI-0005p9-Gz; Mon, 09 Oct 2023 01:03:34 +0000
Received: by outflank-mailman (input) for mailman id 614075;
 Mon, 09 Oct 2023 01:03: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=uDuw=FX=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qpegH-0005Zt-Ql
 for xen-devel@lists.xenproject.org; Mon, 09 Oct 2023 01:03:34 +0000
Received: from foss.arm.com (foss.arm.com [217.140.110.172])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTP
 id a9f340cb-663f-11ee-98d3-6d05b1d4d9a1;
 Mon, 09 Oct 2023 03:03:31 +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 70788FEC;
 Sun,  8 Oct 2023 18:04:11 -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 C8F173F5A1;
 Sun,  8 Oct 2023 18:03: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: a9f340cb-663f-11ee-98d3-6d05b1d4d9a1
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>,
	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: [PATCH v7 1/8] xen/arm: Split page table related code to mmu/pt.c
Date: Mon,  9 Oct 2023 09:03:06 +0800
Message-Id: <20231009010313.3668423-2-Henry.Wang@arm.com>
X-Mailer: git-send-email 2.25.1
In-Reply-To: <20231009010313.3668423-1-Henry.Wang@arm.com>
References: <20231009010313.3668423-1-Henry.Wang@arm.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

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.

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>
---
v7:
- Do not move pte_of_xenaddr() to mmu/pt.c.
- Do not expose global variable phys_offset.
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/mm.c         | 717 -------------------------------------
 xen/arch/arm/mmu/Makefile |   1 +
 xen/arch/arm/mmu/pt.c     | 736 ++++++++++++++++++++++++++++++++++++++
 4 files changed, 738 insertions(+), 717 deletions(-)
 create mode 100644 xen/arch/arm/mmu/Makefile
 create mode 100644 xen/arch/arm/mmu/pt.c

diff --git a/xen/arch/arm/Makefile b/xen/arch/arm/Makefile
index 7bf07e9920..c45b08b31e 100644
--- a/xen/arch/arm/Makefile
+++ b/xen/arch/arm/Makefile
@@ -1,5 +1,6 @@
 obj-$(CONFIG_ARM_32) += arm32/
 obj-$(CONFIG_ARM_64) += arm64/
+obj-$(CONFIG_MMU) += mmu/
 obj-$(CONFIG_ACPI) += acpi/
 obj-$(CONFIG_HAS_PCI) += pci/
 ifneq ($(CONFIG_NO_PLAT),y)
diff --git a/xen/arch/arm/mm.c b/xen/arch/arm/mm.c
index c34cc94c90..fd02493564 100644
--- a/xen/arch/arm/mm.c
+++ b/xen/arch/arm/mm.c
@@ -9,22 +9,14 @@
  */
 
 #include <xen/domain_page.h>
-#include <xen/errno.h>
 #include <xen/grant_table.h>
 #include <xen/guest_access.h>
-#include <xen/init.h>
 #include <xen/libfdt/libfdt.h>
 #include <xen/mm.h>
-#include <xen/pfn.h>
-#include <xen/pmap.h>
-#include <xen/sched.h>
 #include <xen/sizes.h>
-#include <xen/types.h>
-#include <xen/vmap.h>
 
 #include <xsm/xsm.h>
 
-#include <asm/fixmap.h>
 #include <asm/setup.h>
 
 #include <public/memory.h>
@@ -35,19 +27,6 @@
 #undef mfn_to_virt
 #define mfn_to_virt(mfn) __mfn_to_virt(mfn_x(mfn))
 
-#ifdef NDEBUG
-static inline void
-__attribute__ ((__format__ (__printf__, 1, 2)))
-mm_printk(const char *fmt, ...) {}
-#else
-#define mm_printk(fmt, args...)             \
-    do                                      \
-    {                                       \
-        dprintk(XENLOG_ERR, fmt, ## args);  \
-        WARN();                             \
-    } while (0)
-#endif
-
 /* 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.
@@ -92,12 +71,10 @@ DEFINE_BOOT_PAGE_TABLES(boot_third, XEN_NR_ENTRIES(2));
  */
 
 #ifdef CONFIG_ARM_64
-#define HYP_PT_ROOT_LEVEL 0
 DEFINE_PAGE_TABLE(xen_pgtable);
 static DEFINE_PAGE_TABLE(xen_first);
 #define THIS_CPU_PGTABLE xen_pgtable
 #else
-#define HYP_PT_ROOT_LEVEL 1
 /* 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);
@@ -200,179 +177,6 @@ static void __init __maybe_unused build_assertions(void)
 #undef CHECK_DIFFERENT_SLOT
 }
 
-static lpae_t *xen_map_table(mfn_t mfn)
-{
-    /*
-     * During early boot, map_domain_page() may be unusable. Use the
-     * PMAP to map temporarily a page-table.
-     */
-    if ( system_state == SYS_STATE_early_boot )
-        return pmap_map(mfn);
-
-    return map_domain_page(mfn);
-}
-
-static void xen_unmap_table(const lpae_t *table)
-{
-    /*
-     * During early boot, xen_map_table() will not use map_domain_page()
-     * but the PMAP.
-     */
-    if ( system_state == SYS_STATE_early_boot )
-        pmap_unmap(table);
-    else
-        unmap_domain_page(table);
-}
-
-void dump_pt_walk(paddr_t ttbr, paddr_t addr,
-                  unsigned int root_level,
-                  unsigned int nr_root_tables)
-{
-    static const char *level_strs[4] = { "0TH", "1ST", "2ND", "3RD" };
-    const mfn_t root_mfn = maddr_to_mfn(ttbr);
-    DECLARE_OFFSETS(offsets, addr);
-    lpae_t pte, *mapping;
-    unsigned int level, root_table;
-
-#ifdef CONFIG_ARM_32
-    BUG_ON(root_level < 1);
-#endif
-    BUG_ON(root_level > 3);
-
-    if ( nr_root_tables > 1 )
-    {
-        /*
-         * Concatenated root-level tables. The table number will be
-         * the offset at the previous level. It is not possible to
-         * concatenate a level-0 root.
-         */
-        BUG_ON(root_level == 0);
-        root_table = offsets[root_level - 1];
-        printk("Using concatenated root table %u\n", root_table);
-        if ( root_table >= nr_root_tables )
-        {
-            printk("Invalid root table offset\n");
-            return;
-        }
-    }
-    else
-        root_table = 0;
-
-    mapping = xen_map_table(mfn_add(root_mfn, root_table));
-
-    for ( level = root_level; ; level++ )
-    {
-        if ( offsets[level] > XEN_PT_LPAE_ENTRIES )
-            break;
-
-        pte = mapping[offsets[level]];
-
-        printk("%s[0x%03x] = 0x%"PRIx64"\n",
-               level_strs[level], offsets[level], pte.bits);
-
-        if ( level == 3 || !pte.walk.valid || !pte.walk.table )
-            break;
-
-        /* For next iteration */
-        xen_unmap_table(mapping);
-        mapping = xen_map_table(lpae_get_mfn(pte));
-    }
-
-    xen_unmap_table(mapping);
-}
-
-void dump_hyp_walk(vaddr_t addr)
-{
-    uint64_t ttbr = READ_SYSREG64(TTBR0_EL2);
-
-    printk("Walking Hypervisor VA 0x%"PRIvaddr" "
-           "on CPU%d via TTBR 0x%016"PRIx64"\n",
-           addr, smp_processor_id(), ttbr);
-
-    dump_pt_walk(ttbr, addr, HYP_PT_ROOT_LEVEL, 1);
-}
-
-lpae_t mfn_to_xen_entry(mfn_t mfn, unsigned int attr)
-{
-    lpae_t e = (lpae_t) {
-        .pt = {
-            .valid = 1,           /* Mappings are present */
-            .table = 0,           /* Set to 1 for links and 4k maps */
-            .ai = attr,
-            .ns = 1,              /* Hyp mode is in the non-secure world */
-            .up = 1,              /* See below */
-            .ro = 0,              /* Assume read-write */
-            .af = 1,              /* No need for access tracking */
-            .ng = 1,              /* Makes TLB flushes easier */
-            .contig = 0,          /* Assume non-contiguous */
-            .xn = 1,              /* No need to execute outside .text */
-            .avail = 0,           /* Reference count for domheap mapping */
-        }};
-    /*
-     * For EL2 stage-1 page table, up (aka AP[1]) is RES1 as the translation
-     * regime applies to only one exception level (see D4.4.4 and G4.6.1
-     * in ARM DDI 0487B.a). If this changes, remember to update the
-     * hard-coded values in head.S too.
-     */
-
-    switch ( attr )
-    {
-    case MT_NORMAL_NC:
-        /*
-         * ARM ARM: Overlaying the shareability attribute (DDI
-         * 0406C.b B3-1376 to 1377)
-         *
-         * A memory region with a resultant memory type attribute of Normal,
-         * and a resultant cacheability attribute of Inner Non-cacheable,
-         * Outer Non-cacheable, must have a resultant shareability attribute
-         * of Outer Shareable, otherwise shareability is UNPREDICTABLE.
-         *
-         * On ARMv8 sharability is ignored and explicitly treated as Outer
-         * Shareable for Normal Inner Non_cacheable, Outer Non-cacheable.
-         */
-        e.pt.sh = LPAE_SH_OUTER;
-        break;
-    case MT_DEVICE_nGnRnE:
-    case MT_DEVICE_nGnRE:
-        /*
-         * Shareability is ignored for non-Normal memory, Outer is as
-         * good as anything.
-         *
-         * On ARMv8 sharability is ignored and explicitly treated as Outer
-         * Shareable for any device memory type.
-         */
-        e.pt.sh = LPAE_SH_OUTER;
-        break;
-    default:
-        e.pt.sh = LPAE_SH_INNER;  /* Xen mappings are SMP coherent */
-        break;
-    }
-
-    ASSERT(!(mfn_to_maddr(mfn) & ~PADDR_MASK));
-
-    lpae_set_mfn(e, mfn);
-
-    return e;
-}
-
-/* Map a 4k page in a fixmap entry */
-void set_fixmap(unsigned int map, mfn_t mfn, unsigned int flags)
-{
-    int res;
-
-    res = map_pages_to_xen(FIXMAP_ADDR(map), mfn, 1, flags);
-    BUG_ON(res != 0);
-}
-
-/* Remove a mapping from a fixmap entry */
-void clear_fixmap(unsigned int map)
-{
-    int res;
-
-    res = destroy_xen_mappings(FIXMAP_ADDR(map), FIXMAP_ADDR(map) + PAGE_SIZE);
-    BUG_ON(res != 0);
-}
-
 void flush_page_to_ram(unsigned long mfn, bool sync_icache)
 {
     void *v = map_domain_page(_mfn(mfn));
@@ -733,527 +537,6 @@ void *__init arch_vmap_virt_end(void)
     return (void *)(VMAP_VIRT_START + VMAP_VIRT_SIZE);
 }
 
-/*
- * This function should only be used to remap device address ranges
- * TODO: add a check to verify this assumption
- */
-void *ioremap_attr(paddr_t start, size_t len, unsigned int attributes)
-{
-    mfn_t mfn = _mfn(PFN_DOWN(start));
-    unsigned int offs = start & (PAGE_SIZE - 1);
-    unsigned int nr = PFN_UP(offs + len);
-    void *ptr = __vmap(&mfn, nr, 1, 1, attributes, VMAP_DEFAULT);
-
-    if ( ptr == NULL )
-        return NULL;
-
-    return ptr + offs;
-}
-
-void *ioremap(paddr_t pa, size_t len)
-{
-    return ioremap_attr(pa, len, PAGE_HYPERVISOR_NOCACHE);
-}
-
-static int create_xen_table(lpae_t *entry)
-{
-    mfn_t mfn;
-    void *p;
-    lpae_t pte;
-
-    if ( system_state != SYS_STATE_early_boot )
-    {
-        struct page_info *pg = alloc_domheap_page(NULL, 0);
-
-        if ( pg == NULL )
-            return -ENOMEM;
-
-        mfn = page_to_mfn(pg);
-    }
-    else
-        mfn = alloc_boot_pages(1, 1);
-
-    p = xen_map_table(mfn);
-    clear_page(p);
-    xen_unmap_table(p);
-
-    pte = mfn_to_xen_entry(mfn, MT_NORMAL);
-    pte.pt.table = 1;
-    write_pte(entry, pte);
-    /*
-     * No ISB here. It is deferred to xen_pt_update() as the new table
-     * will not be used for hardware translation table access as part of
-     * the mapping update.
-     */
-
-    return 0;
-}
-
-#define XEN_TABLE_MAP_FAILED 0
-#define XEN_TABLE_SUPER_PAGE 1
-#define XEN_TABLE_NORMAL_PAGE 2
-
-/*
- * Take the currently mapped table, find the corresponding entry,
- * and map the next table, if available.
- *
- * The read_only parameters indicates whether intermediate tables should
- * be allocated when not present.
- *
- * Return values:
- *  XEN_TABLE_MAP_FAILED: Either read_only was set and the entry
- *  was empty, or allocating a new page failed.
- *  XEN_TABLE_NORMAL_PAGE: next level mapped normally
- *  XEN_TABLE_SUPER_PAGE: The next entry points to a superpage.
- */
-static int xen_pt_next_level(bool read_only, unsigned int level,
-                             lpae_t **table, unsigned int offset)
-{
-    lpae_t *entry;
-    int ret;
-    mfn_t mfn;
-
-    entry = *table + offset;
-
-    if ( !lpae_is_valid(*entry) )
-    {
-        if ( read_only )
-            return XEN_TABLE_MAP_FAILED;
-
-        ret = create_xen_table(entry);
-        if ( ret )
-            return XEN_TABLE_MAP_FAILED;
-    }
-
-    /* The function xen_pt_next_level is never called at the 3rd level */
-    if ( lpae_is_mapping(*entry, level) )
-        return XEN_TABLE_SUPER_PAGE;
-
-    mfn = lpae_get_mfn(*entry);
-
-    xen_unmap_table(*table);
-    *table = xen_map_table(mfn);
-
-    return XEN_TABLE_NORMAL_PAGE;
-}
-
-/* Sanity check of the entry */
-static bool xen_pt_check_entry(lpae_t entry, mfn_t mfn, unsigned int level,
-                               unsigned int flags)
-{
-    /* Sanity check when modifying an entry. */
-    if ( (flags & _PAGE_PRESENT) && mfn_eq(mfn, INVALID_MFN) )
-    {
-        /* We don't allow modifying an invalid entry. */
-        if ( !lpae_is_valid(entry) )
-        {
-            mm_printk("Modifying invalid entry is not allowed.\n");
-            return false;
-        }
-
-        /* We don't allow modifying a table entry */
-        if ( !lpae_is_mapping(entry, level) )
-        {
-            mm_printk("Modifying a table entry is not allowed.\n");
-            return false;
-        }
-
-        /* We don't allow changing memory attributes. */
-        if ( entry.pt.ai != PAGE_AI_MASK(flags) )
-        {
-            mm_printk("Modifying memory attributes is not allowed (0x%x -> 0x%x).\n",
-                      entry.pt.ai, PAGE_AI_MASK(flags));
-            return false;
-        }
-
-        /* We don't allow modifying entry with contiguous bit set. */
-        if ( entry.pt.contig )
-        {
-            mm_printk("Modifying entry with contiguous bit set is not allowed.\n");
-            return false;
-        }
-    }
-    /* Sanity check when inserting a mapping */
-    else if ( flags & _PAGE_PRESENT )
-    {
-        /* We should be here with a valid MFN. */
-        ASSERT(!mfn_eq(mfn, INVALID_MFN));
-
-        /*
-         * We don't allow replacing any valid entry.
-         *
-         * Note that the function xen_pt_update() relies on this
-         * assumption and will skip the TLB flush. The function will need
-         * to be updated if the check is relaxed.
-         */
-        if ( lpae_is_valid(entry) )
-        {
-            if ( lpae_is_mapping(entry, level) )
-                mm_printk("Changing MFN for a valid entry is not allowed (%#"PRI_mfn" -> %#"PRI_mfn").\n",
-                          mfn_x(lpae_get_mfn(entry)), mfn_x(mfn));
-            else
-                mm_printk("Trying to replace a table with a mapping.\n");
-            return false;
-        }
-    }
-    /* Sanity check when removing a mapping. */
-    else if ( (flags & (_PAGE_PRESENT|_PAGE_POPULATE)) == 0 )
-    {
-        /* We should be here with an invalid MFN. */
-        ASSERT(mfn_eq(mfn, INVALID_MFN));
-
-        /* We don't allow removing a table */
-        if ( lpae_is_table(entry, level) )
-        {
-            mm_printk("Removing a table is not allowed.\n");
-            return false;
-        }
-
-        /* We don't allow removing a mapping with contiguous bit set. */
-        if ( entry.pt.contig )
-        {
-            mm_printk("Removing entry with contiguous bit set is not allowed.\n");
-            return false;
-        }
-    }
-    /* Sanity check when populating the page-table. No check so far. */
-    else
-    {
-        ASSERT(flags & _PAGE_POPULATE);
-        /* We should be here with an invalid MFN */
-        ASSERT(mfn_eq(mfn, INVALID_MFN));
-    }
-
-    return true;
-}
-
-/* Update an entry at the level @target. */
-static int xen_pt_update_entry(mfn_t root, unsigned long virt,
-                               mfn_t mfn, unsigned int target,
-                               unsigned int flags)
-{
-    int rc;
-    unsigned int level;
-    lpae_t *table;
-    /*
-     * The intermediate page tables are read-only when the MFN is not valid
-     * and we are not populating page table.
-     * This means we either modify permissions or remove an entry.
-     */
-    bool read_only = mfn_eq(mfn, INVALID_MFN) && !(flags & _PAGE_POPULATE);
-    lpae_t pte, *entry;
-
-    /* convenience aliases */
-    DECLARE_OFFSETS(offsets, (paddr_t)virt);
-
-    /* _PAGE_POPULATE and _PAGE_PRESENT should never be set together. */
-    ASSERT((flags & (_PAGE_POPULATE|_PAGE_PRESENT)) != (_PAGE_POPULATE|_PAGE_PRESENT));
-
-    table = xen_map_table(root);
-    for ( level = HYP_PT_ROOT_LEVEL; level < target; level++ )
-    {
-        rc = xen_pt_next_level(read_only, level, &table, offsets[level]);
-        if ( rc == XEN_TABLE_MAP_FAILED )
-        {
-            /*
-             * We are here because xen_pt_next_level has failed to map
-             * the intermediate page table (e.g the table does not exist
-             * and the pt is read-only). It is a valid case when
-             * removing a mapping as it may not exist in the page table.
-             * In this case, just ignore it.
-             */
-            if ( flags & (_PAGE_PRESENT|_PAGE_POPULATE) )
-            {
-                mm_printk("%s: Unable to map level %u\n", __func__, level);
-                rc = -ENOENT;
-                goto out;
-            }
-            else
-            {
-                rc = 0;
-                goto out;
-            }
-        }
-        else if ( rc != XEN_TABLE_NORMAL_PAGE )
-            break;
-    }
-
-    if ( level != target )
-    {
-        mm_printk("%s: Shattering superpage is not supported\n", __func__);
-        rc = -EOPNOTSUPP;
-        goto out;
-    }
-
-    entry = table + offsets[level];
-
-    rc = -EINVAL;
-    if ( !xen_pt_check_entry(*entry, mfn, level, flags) )
-        goto out;
-
-    /* If we are only populating page-table, then we are done. */
-    rc = 0;
-    if ( flags & _PAGE_POPULATE )
-        goto out;
-
-    /* We are removing the page */
-    if ( !(flags & _PAGE_PRESENT) )
-        memset(&pte, 0x00, sizeof(pte));
-    else
-    {
-        /* We are inserting a mapping => Create new pte. */
-        if ( !mfn_eq(mfn, INVALID_MFN) )
-        {
-            pte = mfn_to_xen_entry(mfn, PAGE_AI_MASK(flags));
-
-            /*
-             * First and second level pages set pte.pt.table = 0, but
-             * third level entries set pte.pt.table = 1.
-             */
-            pte.pt.table = (level == 3);
-        }
-        else /* We are updating the permission => Copy the current pte. */
-            pte = *entry;
-
-        /* Set permission */
-        pte.pt.ro = PAGE_RO_MASK(flags);
-        pte.pt.xn = PAGE_XN_MASK(flags);
-        /* Set contiguous bit */
-        pte.pt.contig = !!(flags & _PAGE_CONTIG);
-    }
-
-    write_pte(entry, pte);
-    /*
-     * No ISB or TLB flush here. They are deferred to xen_pt_update()
-     * as the entry will not be used as part of the mapping update.
-     */
-
-    rc = 0;
-
-out:
-    xen_unmap_table(table);
-
-    return rc;
-}
-
-/* Return the level where mapping should be done */
-static int xen_pt_mapping_level(unsigned long vfn, mfn_t mfn, unsigned long nr,
-                                unsigned int flags)
-{
-    unsigned int level;
-    unsigned long mask;
-
-    /*
-      * Don't take into account the MFN when removing mapping (i.e
-      * MFN_INVALID) to calculate the correct target order.
-      *
-      * Per the Arm Arm, `vfn` and `mfn` must be both superpage aligned.
-      * They are or-ed together and then checked against the size of
-      * each level.
-      *
-      * `left` is not included and checked separately to allow
-      * superpage mapping even if it is not properly aligned (the
-      * user may have asked to map 2MB + 4k).
-      */
-     mask = !mfn_eq(mfn, INVALID_MFN) ? mfn_x(mfn) : 0;
-     mask |= vfn;
-
-     /*
-      * Always use level 3 mapping unless the caller request block
-      * mapping.
-      */
-     if ( likely(!(flags & _PAGE_BLOCK)) )
-         level = 3;
-     else if ( !(mask & (BIT(FIRST_ORDER, UL) - 1)) &&
-               (nr >= BIT(FIRST_ORDER, UL)) )
-         level = 1;
-     else if ( !(mask & (BIT(SECOND_ORDER, UL) - 1)) &&
-               (nr >= BIT(SECOND_ORDER, UL)) )
-         level = 2;
-     else
-         level = 3;
-
-     return level;
-}
-
-#define XEN_PT_4K_NR_CONTIG 16
-
-/*
- * Check whether the contiguous bit can be set. Return the number of
- * contiguous entry allowed. If not allowed, return 1.
- */
-static unsigned int xen_pt_check_contig(unsigned long vfn, mfn_t mfn,
-                                        unsigned int level, unsigned long left,
-                                        unsigned int flags)
-{
-    unsigned long nr_contig;
-
-    /*
-     * Allow the contiguous bit to set when the caller requests block
-     * mapping.
-     */
-    if ( !(flags & _PAGE_BLOCK) )
-        return 1;
-
-    /*
-     * We don't allow to remove mapping with the contiguous bit set.
-     * So shortcut the logic and directly return 1.
-     */
-    if ( mfn_eq(mfn, INVALID_MFN) )
-        return 1;
-
-    /*
-     * The number of contiguous entries varies depending on the page
-     * granularity used. The logic below assumes 4KB.
-     */
-    BUILD_BUG_ON(PAGE_SIZE != SZ_4K);
-
-    /*
-     * In order to enable the contiguous bit, we should have enough entries
-     * to map left and both the virtual and physical address should be
-     * aligned to the size of 16 translation tables entries.
-     */
-    nr_contig = BIT(XEN_PT_LEVEL_ORDER(level), UL) * XEN_PT_4K_NR_CONTIG;
-
-    if ( (left < nr_contig) || ((mfn_x(mfn) | vfn) & (nr_contig - 1)) )
-        return 1;
-
-    return XEN_PT_4K_NR_CONTIG;
-}
-
-static DEFINE_SPINLOCK(xen_pt_lock);
-
-static int xen_pt_update(unsigned long virt,
-                         mfn_t mfn,
-                         /* const on purpose as it is used for TLB flush */
-                         const unsigned long nr_mfns,
-                         unsigned int flags)
-{
-    int rc = 0;
-    unsigned long vfn = virt >> PAGE_SHIFT;
-    unsigned long left = nr_mfns;
-
-    /*
-     * For arm32, page-tables are different on each CPUs. Yet, they share
-     * some common mappings. It is assumed that only common mappings
-     * will be modified with this function.
-     *
-     * XXX: Add a check.
-     */
-    const mfn_t root = maddr_to_mfn(READ_SYSREG64(TTBR0_EL2));
-
-    /*
-     * The hardware was configured to forbid mapping both writeable and
-     * executable.
-     * When modifying/creating mapping (i.e _PAGE_PRESENT is set),
-     * prevent any update if this happen.
-     */
-    if ( (flags & _PAGE_PRESENT) && !PAGE_RO_MASK(flags) &&
-         !PAGE_XN_MASK(flags) )
-    {
-        mm_printk("Mappings should not be both Writeable and Executable.\n");
-        return -EINVAL;
-    }
-
-    if ( flags & _PAGE_CONTIG )
-    {
-        mm_printk("_PAGE_CONTIG is an internal only flag.\n");
-        return -EINVAL;
-    }
-
-    if ( !IS_ALIGNED(virt, PAGE_SIZE) )
-    {
-        mm_printk("The virtual address is not aligned to the page-size.\n");
-        return -EINVAL;
-    }
-
-    spin_lock(&xen_pt_lock);
-
-    while ( left )
-    {
-        unsigned int order, level, nr_contig, new_flags;
-
-        level = xen_pt_mapping_level(vfn, mfn, left, flags);
-        order = XEN_PT_LEVEL_ORDER(level);
-
-        ASSERT(left >= BIT(order, UL));
-
-        /*
-         * Check if we can set the contiguous mapping and update the
-         * flags accordingly.
-         */
-        nr_contig = xen_pt_check_contig(vfn, mfn, level, left, flags);
-        new_flags = flags | ((nr_contig > 1) ? _PAGE_CONTIG : 0);
-
-        for ( ; nr_contig > 0; nr_contig-- )
-        {
-            rc = xen_pt_update_entry(root, vfn << PAGE_SHIFT, mfn, level,
-                                     new_flags);
-            if ( rc )
-                break;
-
-            vfn += 1U << order;
-            if ( !mfn_eq(mfn, INVALID_MFN) )
-                mfn = mfn_add(mfn, 1U << order);
-
-            left -= (1U << order);
-        }
-
-        if ( rc )
-            break;
-    }
-
-    /*
-     * The TLBs flush can be safely skipped when a mapping is inserted
-     * as we don't allow mapping replacement (see xen_pt_check_entry()).
-     * Although we still need an ISB to ensure any DSB in
-     * write_pte() will complete because the mapping may be used soon
-     * after.
-     *
-     * For all the other cases, the TLBs will be flushed unconditionally
-     * even if the mapping has failed. This is because we may have
-     * partially modified the PT. This will prevent any unexpected
-     * behavior afterwards.
-     */
-    if ( !((flags & _PAGE_PRESENT) && !mfn_eq(mfn, INVALID_MFN)) )
-        flush_xen_tlb_range_va(virt, PAGE_SIZE * nr_mfns);
-    else
-        isb();
-
-    spin_unlock(&xen_pt_lock);
-
-    return rc;
-}
-
-int map_pages_to_xen(unsigned long virt,
-                     mfn_t mfn,
-                     unsigned long nr_mfns,
-                     unsigned int flags)
-{
-    return xen_pt_update(virt, mfn, nr_mfns, flags);
-}
-
-int __init populate_pt_range(unsigned long virt, unsigned long nr_mfns)
-{
-    return xen_pt_update(virt, INVALID_MFN, nr_mfns, _PAGE_POPULATE);
-}
-
-int destroy_xen_mappings(unsigned long s, unsigned long e)
-{
-    ASSERT(IS_ALIGNED(s, PAGE_SIZE));
-    ASSERT(IS_ALIGNED(e, PAGE_SIZE));
-    ASSERT(s <= e);
-    return xen_pt_update(s, INVALID_MFN, (e - s) >> PAGE_SHIFT, 0);
-}
-
-int modify_xen_mappings(unsigned long s, unsigned long e, unsigned int flags)
-{
-    ASSERT(IS_ALIGNED(s, PAGE_SIZE));
-    ASSERT(IS_ALIGNED(e, PAGE_SIZE));
-    ASSERT(s <= e);
-    return xen_pt_update(s, INVALID_MFN, (e - s) >> PAGE_SHIFT, flags);
-}
-
 /* Release all __init and __initdata ranges to be reused */
 void free_init_memory(void)
 {
diff --git a/xen/arch/arm/mmu/Makefile b/xen/arch/arm/mmu/Makefile
new file mode 100644
index 0000000000..bdfc2e077d
--- /dev/null
+++ b/xen/arch/arm/mmu/Makefile
@@ -0,0 +1 @@
+obj-y += pt.o
diff --git a/xen/arch/arm/mmu/pt.c b/xen/arch/arm/mmu/pt.c
new file mode 100644
index 0000000000..e6fc5ed45a
--- /dev/null
+++ b/xen/arch/arm/mmu/pt.c
@@ -0,0 +1,736 @@
+/* SPDX-License-Identifier: GPL-2.0-or-later */
+/*
+ * xen/arch/arm/mmu/pt.c
+ *
+ * MMU system page table related functions.
+ */
+
+#include <xen/domain_page.h>
+#include <xen/init.h>
+#include <xen/pfn.h>
+#include <xen/sizes.h>
+#include <xen/vmap.h>
+
+#include <asm/fixmap.h>
+
+#ifdef NDEBUG
+static inline void
+__attribute__ ((__format__ (__printf__, 1, 2)))
+mm_printk(const char *fmt, ...) {}
+#else
+#define mm_printk(fmt, args...)             \
+    do                                      \
+    {                                       \
+        dprintk(XENLOG_ERR, fmt, ## args);  \
+        WARN();                             \
+    } while (0)
+#endif
+
+#ifdef CONFIG_ARM_64
+#define HYP_PT_ROOT_LEVEL 0
+#else
+#define HYP_PT_ROOT_LEVEL 1
+#endif
+
+static lpae_t *xen_map_table(mfn_t mfn)
+{
+    /*
+     * During early boot, map_domain_page() may be unusable. Use the
+     * PMAP to map temporarily a page-table.
+     */
+    if ( system_state == SYS_STATE_early_boot )
+        return pmap_map(mfn);
+
+    return map_domain_page(mfn);
+}
+
+static void xen_unmap_table(const lpae_t *table)
+{
+    /*
+     * During early boot, xen_map_table() will not use map_domain_page()
+     * but the PMAP.
+     */
+    if ( system_state == SYS_STATE_early_boot )
+        pmap_unmap(table);
+    else
+        unmap_domain_page(table);
+}
+
+void dump_pt_walk(paddr_t ttbr, paddr_t addr,
+                  unsigned int root_level,
+                  unsigned int nr_root_tables)
+{
+    static const char *level_strs[4] = { "0TH", "1ST", "2ND", "3RD" };
+    const mfn_t root_mfn = maddr_to_mfn(ttbr);
+    DECLARE_OFFSETS(offsets, addr);
+    lpae_t pte, *mapping;
+    unsigned int level, root_table;
+
+#ifdef CONFIG_ARM_32
+    BUG_ON(root_level < 1);
+#endif
+    BUG_ON(root_level > 3);
+
+    if ( nr_root_tables > 1 )
+    {
+        /*
+         * Concatenated root-level tables. The table number will be
+         * the offset at the previous level. It is not possible to
+         * concatenate a level-0 root.
+         */
+        BUG_ON(root_level == 0);
+        root_table = offsets[root_level - 1];
+        printk("Using concatenated root table %u\n", root_table);
+        if ( root_table >= nr_root_tables )
+        {
+            printk("Invalid root table offset\n");
+            return;
+        }
+    }
+    else
+        root_table = 0;
+
+    mapping = xen_map_table(mfn_add(root_mfn, root_table));
+
+    for ( level = root_level; ; level++ )
+    {
+        if ( offsets[level] > XEN_PT_LPAE_ENTRIES )
+            break;
+
+        pte = mapping[offsets[level]];
+
+        printk("%s[0x%03x] = 0x%"PRIx64"\n",
+               level_strs[level], offsets[level], pte.bits);
+
+        if ( level == 3 || !pte.walk.valid || !pte.walk.table )
+            break;
+
+        /* For next iteration */
+        xen_unmap_table(mapping);
+        mapping = xen_map_table(lpae_get_mfn(pte));
+    }
+
+    xen_unmap_table(mapping);
+}
+
+void dump_hyp_walk(vaddr_t addr)
+{
+    uint64_t ttbr = READ_SYSREG64(TTBR0_EL2);
+
+    printk("Walking Hypervisor VA 0x%"PRIvaddr" "
+           "on CPU%d via TTBR 0x%016"PRIx64"\n",
+           addr, smp_processor_id(), ttbr);
+
+    dump_pt_walk(ttbr, addr, HYP_PT_ROOT_LEVEL, 1);
+}
+
+lpae_t mfn_to_xen_entry(mfn_t mfn, unsigned int attr)
+{
+    lpae_t e = (lpae_t) {
+        .pt = {
+            .valid = 1,           /* Mappings are present */
+            .table = 0,           /* Set to 1 for links and 4k maps */
+            .ai = attr,
+            .ns = 1,              /* Hyp mode is in the non-secure world */
+            .up = 1,              /* See below */
+            .ro = 0,              /* Assume read-write */
+            .af = 1,              /* No need for access tracking */
+            .ng = 1,              /* Makes TLB flushes easier */
+            .contig = 0,          /* Assume non-contiguous */
+            .xn = 1,              /* No need to execute outside .text */
+            .avail = 0,           /* Reference count for domheap mapping */
+        }};
+    /*
+     * For EL2 stage-1 page table, up (aka AP[1]) is RES1 as the translation
+     * regime applies to only one exception level (see D4.4.4 and G4.6.1
+     * in ARM DDI 0487B.a). If this changes, remember to update the
+     * hard-coded values in head.S too.
+     */
+
+    switch ( attr )
+    {
+    case MT_NORMAL_NC:
+        /*
+         * ARM ARM: Overlaying the shareability attribute (DDI
+         * 0406C.b B3-1376 to 1377)
+         *
+         * A memory region with a resultant memory type attribute of Normal,
+         * and a resultant cacheability attribute of Inner Non-cacheable,
+         * Outer Non-cacheable, must have a resultant shareability attribute
+         * of Outer Shareable, otherwise shareability is UNPREDICTABLE.
+         *
+         * On ARMv8 sharability is ignored and explicitly treated as Outer
+         * Shareable for Normal Inner Non_cacheable, Outer Non-cacheable.
+         */
+        e.pt.sh = LPAE_SH_OUTER;
+        break;
+    case MT_DEVICE_nGnRnE:
+    case MT_DEVICE_nGnRE:
+        /*
+         * Shareability is ignored for non-Normal memory, Outer is as
+         * good as anything.
+         *
+         * On ARMv8 sharability is ignored and explicitly treated as Outer
+         * Shareable for any device memory type.
+         */
+        e.pt.sh = LPAE_SH_OUTER;
+        break;
+    default:
+        e.pt.sh = LPAE_SH_INNER;  /* Xen mappings are SMP coherent */
+        break;
+    }
+
+    ASSERT(!(mfn_to_maddr(mfn) & ~PADDR_MASK));
+
+    lpae_set_mfn(e, mfn);
+
+    return e;
+}
+
+/* Map a 4k page in a fixmap entry */
+void set_fixmap(unsigned int map, mfn_t mfn, unsigned int flags)
+{
+    int res;
+
+    res = map_pages_to_xen(FIXMAP_ADDR(map), mfn, 1, flags);
+    BUG_ON(res != 0);
+}
+
+/* Remove a mapping from a fixmap entry */
+void clear_fixmap(unsigned int map)
+{
+    int res;
+
+    res = destroy_xen_mappings(FIXMAP_ADDR(map), FIXMAP_ADDR(map) + PAGE_SIZE);
+    BUG_ON(res != 0);
+}
+
+/*
+ * This function should only be used to remap device address ranges
+ * TODO: add a check to verify this assumption
+ */
+void *ioremap_attr(paddr_t start, size_t len, unsigned int attributes)
+{
+    mfn_t mfn = _mfn(PFN_DOWN(start));
+    unsigned int offs = start & (PAGE_SIZE - 1);
+    unsigned int nr = PFN_UP(offs + len);
+    void *ptr = __vmap(&mfn, nr, 1, 1, attributes, VMAP_DEFAULT);
+
+    if ( ptr == NULL )
+        return NULL;
+
+    return ptr + offs;
+}
+
+void *ioremap(paddr_t pa, size_t len)
+{
+    return ioremap_attr(pa, len, PAGE_HYPERVISOR_NOCACHE);
+}
+
+static int create_xen_table(lpae_t *entry)
+{
+    mfn_t mfn;
+    void *p;
+    lpae_t pte;
+
+    if ( system_state != SYS_STATE_early_boot )
+    {
+        struct page_info *pg = alloc_domheap_page(NULL, 0);
+
+        if ( pg == NULL )
+            return -ENOMEM;
+
+        mfn = page_to_mfn(pg);
+    }
+    else
+        mfn = alloc_boot_pages(1, 1);
+
+    p = xen_map_table(mfn);
+    clear_page(p);
+    xen_unmap_table(p);
+
+    pte = mfn_to_xen_entry(mfn, MT_NORMAL);
+    pte.pt.table = 1;
+    write_pte(entry, pte);
+    /*
+     * No ISB here. It is deferred to xen_pt_update() as the new table
+     * will not be used for hardware translation table access as part of
+     * the mapping update.
+     */
+
+    return 0;
+}
+
+#define XEN_TABLE_MAP_FAILED 0
+#define XEN_TABLE_SUPER_PAGE 1
+#define XEN_TABLE_NORMAL_PAGE 2
+
+/*
+ * Take the currently mapped table, find the corresponding entry,
+ * and map the next table, if available.
+ *
+ * The read_only parameters indicates whether intermediate tables should
+ * be allocated when not present.
+ *
+ * Return values:
+ *  XEN_TABLE_MAP_FAILED: Either read_only was set and the entry
+ *  was empty, or allocating a new page failed.
+ *  XEN_TABLE_NORMAL_PAGE: next level mapped normally
+ *  XEN_TABLE_SUPER_PAGE: The next entry points to a superpage.
+ */
+static int xen_pt_next_level(bool read_only, unsigned int level,
+                             lpae_t **table, unsigned int offset)
+{
+    lpae_t *entry;
+    int ret;
+    mfn_t mfn;
+
+    entry = *table + offset;
+
+    if ( !lpae_is_valid(*entry) )
+    {
+        if ( read_only )
+            return XEN_TABLE_MAP_FAILED;
+
+        ret = create_xen_table(entry);
+        if ( ret )
+            return XEN_TABLE_MAP_FAILED;
+    }
+
+    /* The function xen_pt_next_level is never called at the 3rd level */
+    if ( lpae_is_mapping(*entry, level) )
+        return XEN_TABLE_SUPER_PAGE;
+
+    mfn = lpae_get_mfn(*entry);
+
+    xen_unmap_table(*table);
+    *table = xen_map_table(mfn);
+
+    return XEN_TABLE_NORMAL_PAGE;
+}
+
+/* Sanity check of the entry */
+static bool xen_pt_check_entry(lpae_t entry, mfn_t mfn, unsigned int level,
+                               unsigned int flags)
+{
+    /* Sanity check when modifying an entry. */
+    if ( (flags & _PAGE_PRESENT) && mfn_eq(mfn, INVALID_MFN) )
+    {
+        /* We don't allow modifying an invalid entry. */
+        if ( !lpae_is_valid(entry) )
+        {
+            mm_printk("Modifying invalid entry is not allowed.\n");
+            return false;
+        }
+
+        /* We don't allow modifying a table entry */
+        if ( !lpae_is_mapping(entry, level) )
+        {
+            mm_printk("Modifying a table entry is not allowed.\n");
+            return false;
+        }
+
+        /* We don't allow changing memory attributes. */
+        if ( entry.pt.ai != PAGE_AI_MASK(flags) )
+        {
+            mm_printk("Modifying memory attributes is not allowed (0x%x -> 0x%x).\n",
+                      entry.pt.ai, PAGE_AI_MASK(flags));
+            return false;
+        }
+
+        /* We don't allow modifying entry with contiguous bit set. */
+        if ( entry.pt.contig )
+        {
+            mm_printk("Modifying entry with contiguous bit set is not allowed.\n");
+            return false;
+        }
+    }
+    /* Sanity check when inserting a mapping */
+    else if ( flags & _PAGE_PRESENT )
+    {
+        /* We should be here with a valid MFN. */
+        ASSERT(!mfn_eq(mfn, INVALID_MFN));
+
+        /*
+         * We don't allow replacing any valid entry.
+         *
+         * Note that the function xen_pt_update() relies on this
+         * assumption and will skip the TLB flush. The function will need
+         * to be updated if the check is relaxed.
+         */
+        if ( lpae_is_valid(entry) )
+        {
+            if ( lpae_is_mapping(entry, level) )
+                mm_printk("Changing MFN for a valid entry is not allowed (%#"PRI_mfn" -> %#"PRI_mfn").\n",
+                          mfn_x(lpae_get_mfn(entry)), mfn_x(mfn));
+            else
+                mm_printk("Trying to replace a table with a mapping.\n");
+            return false;
+        }
+    }
+    /* Sanity check when removing a mapping. */
+    else if ( (flags & (_PAGE_PRESENT|_PAGE_POPULATE)) == 0 )
+    {
+        /* We should be here with an invalid MFN. */
+        ASSERT(mfn_eq(mfn, INVALID_MFN));
+
+        /* We don't allow removing a table */
+        if ( lpae_is_table(entry, level) )
+        {
+            mm_printk("Removing a table is not allowed.\n");
+            return false;
+        }
+
+        /* We don't allow removing a mapping with contiguous bit set. */
+        if ( entry.pt.contig )
+        {
+            mm_printk("Removing entry with contiguous bit set is not allowed.\n");
+            return false;
+        }
+    }
+    /* Sanity check when populating the page-table. No check so far. */
+    else
+    {
+        ASSERT(flags & _PAGE_POPULATE);
+        /* We should be here with an invalid MFN */
+        ASSERT(mfn_eq(mfn, INVALID_MFN));
+    }
+
+    return true;
+}
+
+/* Update an entry at the level @target. */
+static int xen_pt_update_entry(mfn_t root, unsigned long virt,
+                               mfn_t mfn, unsigned int target,
+                               unsigned int flags)
+{
+    int rc;
+    unsigned int level;
+    lpae_t *table;
+    /*
+     * The intermediate page tables are read-only when the MFN is not valid
+     * and we are not populating page table.
+     * This means we either modify permissions or remove an entry.
+     */
+    bool read_only = mfn_eq(mfn, INVALID_MFN) && !(flags & _PAGE_POPULATE);
+    lpae_t pte, *entry;
+
+    /* convenience aliases */
+    DECLARE_OFFSETS(offsets, (paddr_t)virt);
+
+    /* _PAGE_POPULATE and _PAGE_PRESENT should never be set together. */
+    ASSERT((flags & (_PAGE_POPULATE|_PAGE_PRESENT)) != (_PAGE_POPULATE|_PAGE_PRESENT));
+
+    table = xen_map_table(root);
+    for ( level = HYP_PT_ROOT_LEVEL; level < target; level++ )
+    {
+        rc = xen_pt_next_level(read_only, level, &table, offsets[level]);
+        if ( rc == XEN_TABLE_MAP_FAILED )
+        {
+            /*
+             * We are here because xen_pt_next_level has failed to map
+             * the intermediate page table (e.g the table does not exist
+             * and the pt is read-only). It is a valid case when
+             * removing a mapping as it may not exist in the page table.
+             * In this case, just ignore it.
+             */
+            if ( flags & (_PAGE_PRESENT|_PAGE_POPULATE) )
+            {
+                mm_printk("%s: Unable to map level %u\n", __func__, level);
+                rc = -ENOENT;
+                goto out;
+            }
+            else
+            {
+                rc = 0;
+                goto out;
+            }
+        }
+        else if ( rc != XEN_TABLE_NORMAL_PAGE )
+            break;
+    }
+
+    if ( level != target )
+    {
+        mm_printk("%s: Shattering superpage is not supported\n", __func__);
+        rc = -EOPNOTSUPP;
+        goto out;
+    }
+
+    entry = table + offsets[level];
+
+    rc = -EINVAL;
+    if ( !xen_pt_check_entry(*entry, mfn, level, flags) )
+        goto out;
+
+    /* If we are only populating page-table, then we are done. */
+    rc = 0;
+    if ( flags & _PAGE_POPULATE )
+        goto out;
+
+    /* We are removing the page */
+    if ( !(flags & _PAGE_PRESENT) )
+        memset(&pte, 0x00, sizeof(pte));
+    else
+    {
+        /* We are inserting a mapping => Create new pte. */
+        if ( !mfn_eq(mfn, INVALID_MFN) )
+        {
+            pte = mfn_to_xen_entry(mfn, PAGE_AI_MASK(flags));
+
+            /*
+             * First and second level pages set pte.pt.table = 0, but
+             * third level entries set pte.pt.table = 1.
+             */
+            pte.pt.table = (level == 3);
+        }
+        else /* We are updating the permission => Copy the current pte. */
+            pte = *entry;
+
+        /* Set permission */
+        pte.pt.ro = PAGE_RO_MASK(flags);
+        pte.pt.xn = PAGE_XN_MASK(flags);
+        /* Set contiguous bit */
+        pte.pt.contig = !!(flags & _PAGE_CONTIG);
+    }
+
+    write_pte(entry, pte);
+    /*
+     * No ISB or TLB flush here. They are deferred to xen_pt_update()
+     * as the entry will not be used as part of the mapping update.
+     */
+
+    rc = 0;
+
+out:
+    xen_unmap_table(table);
+
+    return rc;
+}
+
+/* Return the level where mapping should be done */
+static int xen_pt_mapping_level(unsigned long vfn, mfn_t mfn, unsigned long nr,
+                                unsigned int flags)
+{
+    unsigned int level;
+    unsigned long mask;
+
+    /*
+      * Don't take into account the MFN when removing mapping (i.e
+      * MFN_INVALID) to calculate the correct target order.
+      *
+      * Per the Arm Arm, `vfn` and `mfn` must be both superpage aligned.
+      * They are or-ed together and then checked against the size of
+      * each level.
+      *
+      * `left` is not included and checked separately to allow
+      * superpage mapping even if it is not properly aligned (the
+      * user may have asked to map 2MB + 4k).
+      */
+     mask = !mfn_eq(mfn, INVALID_MFN) ? mfn_x(mfn) : 0;
+     mask |= vfn;
+
+     /*
+      * Always use level 3 mapping unless the caller request block
+      * mapping.
+      */
+     if ( likely(!(flags & _PAGE_BLOCK)) )
+         level = 3;
+     else if ( !(mask & (BIT(FIRST_ORDER, UL) - 1)) &&
+               (nr >= BIT(FIRST_ORDER, UL)) )
+         level = 1;
+     else if ( !(mask & (BIT(SECOND_ORDER, UL) - 1)) &&
+               (nr >= BIT(SECOND_ORDER, UL)) )
+         level = 2;
+     else
+         level = 3;
+
+     return level;
+}
+
+#define XEN_PT_4K_NR_CONTIG 16
+
+/*
+ * Check whether the contiguous bit can be set. Return the number of
+ * contiguous entry allowed. If not allowed, return 1.
+ */
+static unsigned int xen_pt_check_contig(unsigned long vfn, mfn_t mfn,
+                                        unsigned int level, unsigned long left,
+                                        unsigned int flags)
+{
+    unsigned long nr_contig;
+
+    /*
+     * Allow the contiguous bit to set when the caller requests block
+     * mapping.
+     */
+    if ( !(flags & _PAGE_BLOCK) )
+        return 1;
+
+    /*
+     * We don't allow to remove mapping with the contiguous bit set.
+     * So shortcut the logic and directly return 1.
+     */
+    if ( mfn_eq(mfn, INVALID_MFN) )
+        return 1;
+
+    /*
+     * The number of contiguous entries varies depending on the page
+     * granularity used. The logic below assumes 4KB.
+     */
+    BUILD_BUG_ON(PAGE_SIZE != SZ_4K);
+
+    /*
+     * In order to enable the contiguous bit, we should have enough entries
+     * to map left and both the virtual and physical address should be
+     * aligned to the size of 16 translation tables entries.
+     */
+    nr_contig = BIT(XEN_PT_LEVEL_ORDER(level), UL) * XEN_PT_4K_NR_CONTIG;
+
+    if ( (left < nr_contig) || ((mfn_x(mfn) | vfn) & (nr_contig - 1)) )
+        return 1;
+
+    return XEN_PT_4K_NR_CONTIG;
+}
+
+static DEFINE_SPINLOCK(xen_pt_lock);
+
+static int xen_pt_update(unsigned long virt,
+                         mfn_t mfn,
+                         /* const on purpose as it is used for TLB flush */
+                         const unsigned long nr_mfns,
+                         unsigned int flags)
+{
+    int rc = 0;
+    unsigned long vfn = virt >> PAGE_SHIFT;
+    unsigned long left = nr_mfns;
+
+    /*
+     * For arm32, page-tables are different on each CPUs. Yet, they share
+     * some common mappings. It is assumed that only common mappings
+     * will be modified with this function.
+     *
+     * XXX: Add a check.
+     */
+    const mfn_t root = maddr_to_mfn(READ_SYSREG64(TTBR0_EL2));
+
+    /*
+     * The hardware was configured to forbid mapping both writeable and
+     * executable.
+     * When modifying/creating mapping (i.e _PAGE_PRESENT is set),
+     * prevent any update if this happen.
+     */
+    if ( (flags & _PAGE_PRESENT) && !PAGE_RO_MASK(flags) &&
+         !PAGE_XN_MASK(flags) )
+    {
+        mm_printk("Mappings should not be both Writeable and Executable.\n");
+        return -EINVAL;
+    }
+
+    if ( flags & _PAGE_CONTIG )
+    {
+        mm_printk("_PAGE_CONTIG is an internal only flag.\n");
+        return -EINVAL;
+    }
+
+    if ( !IS_ALIGNED(virt, PAGE_SIZE) )
+    {
+        mm_printk("The virtual address is not aligned to the page-size.\n");
+        return -EINVAL;
+    }
+
+    spin_lock(&xen_pt_lock);
+
+    while ( left )
+    {
+        unsigned int order, level, nr_contig, new_flags;
+
+        level = xen_pt_mapping_level(vfn, mfn, left, flags);
+        order = XEN_PT_LEVEL_ORDER(level);
+
+        ASSERT(left >= BIT(order, UL));
+
+        /*
+         * Check if we can set the contiguous mapping and update the
+         * flags accordingly.
+         */
+        nr_contig = xen_pt_check_contig(vfn, mfn, level, left, flags);
+        new_flags = flags | ((nr_contig > 1) ? _PAGE_CONTIG : 0);
+
+        for ( ; nr_contig > 0; nr_contig-- )
+        {
+            rc = xen_pt_update_entry(root, vfn << PAGE_SHIFT, mfn, level,
+                                     new_flags);
+            if ( rc )
+                break;
+
+            vfn += 1U << order;
+            if ( !mfn_eq(mfn, INVALID_MFN) )
+                mfn = mfn_add(mfn, 1U << order);
+
+            left -= (1U << order);
+        }
+
+        if ( rc )
+            break;
+    }
+
+    /*
+     * The TLBs flush can be safely skipped when a mapping is inserted
+     * as we don't allow mapping replacement (see xen_pt_check_entry()).
+     * Although we still need an ISB to ensure any DSB in
+     * write_pte() will complete because the mapping may be used soon
+     * after.
+     *
+     * For all the other cases, the TLBs will be flushed unconditionally
+     * even if the mapping has failed. This is because we may have
+     * partially modified the PT. This will prevent any unexpected
+     * behavior afterwards.
+     */
+    if ( !((flags & _PAGE_PRESENT) && !mfn_eq(mfn, INVALID_MFN)) )
+        flush_xen_tlb_range_va(virt, PAGE_SIZE * nr_mfns);
+    else
+        isb();
+
+    spin_unlock(&xen_pt_lock);
+
+    return rc;
+}
+
+int map_pages_to_xen(unsigned long virt,
+                     mfn_t mfn,
+                     unsigned long nr_mfns,
+                     unsigned int flags)
+{
+    return xen_pt_update(virt, mfn, nr_mfns, flags);
+}
+
+int __init populate_pt_range(unsigned long virt, unsigned long nr_mfns)
+{
+    return xen_pt_update(virt, INVALID_MFN, nr_mfns, _PAGE_POPULATE);
+}
+
+int destroy_xen_mappings(unsigned long s, unsigned long e)
+{
+    ASSERT(IS_ALIGNED(s, PAGE_SIZE));
+    ASSERT(IS_ALIGNED(e, PAGE_SIZE));
+    ASSERT(s <= e);
+    return xen_pt_update(s, INVALID_MFN, (e - s) >> PAGE_SHIFT, 0);
+}
+
+int modify_xen_mappings(unsigned long s, unsigned long e, unsigned int flags)
+{
+    ASSERT(IS_ALIGNED(s, PAGE_SIZE));
+    ASSERT(IS_ALIGNED(e, PAGE_SIZE));
+    ASSERT(s <= e);
+    return xen_pt_update(s, INVALID_MFN, (e - s) >> PAGE_SHIFT, flags);
+}
+
+/*
+ * 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 Mon Oct 09 01:03:36 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 09 Oct 2023 01:03:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614074.954978 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qpegE-0005a6-Cg; Mon, 09 Oct 2023 01:03:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614074.954978; Mon, 09 Oct 2023 01:03: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 1qpegE-0005Zz-A6; Mon, 09 Oct 2023 01:03:30 +0000
Received: by outflank-mailman (input) for mailman id 614074;
 Mon, 09 Oct 2023 01: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=uDuw=FX=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qpegC-0005Zt-En
 for xen-devel@lists.xenproject.org; Mon, 09 Oct 2023 01:03:28 +0000
Received: from foss.arm.com (foss.arm.com [217.140.110.172])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTP
 id a6b111c5-663f-11ee-98d3-6d05b1d4d9a1;
 Mon, 09 Oct 2023 03:03:27 +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 E0025C15;
 Sun,  8 Oct 2023 18:04:05 -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 C4B353F5A1;
 Sun,  8 Oct 2023 18:03: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: a6b111c5-663f-11ee-98d3-6d05b1d4d9a1
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>,
	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: [PATCH v7 0/8] xen/arm: Split MMU code as the prepration of MPU work
Date: Mon,  9 Oct 2023 09:03:05 +0800
Message-Id: <20231009010313.3668423-1-Henry.Wang@arm.com>
X-Mailer: git-send-email 2.25.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Based on the discussion in the Xen Summit [1], sending this series out after
addressing the comments in v6 [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:
ffa1437686 tools/xenpvboot: remove as unable to convert to Python 3

[1] https://lore.kernel.org/xen-devel/AS8PR08MB799122F8B0CB841DED64F4819226A@AS8PR08MB7991.eurprd08.prod.outlook.com/
[2] https://lore.kernel.org/xen-devel/20230828013224.669433-1-Henry.Wang@arm.com/
[3] https://gitlab.com/xen-project/people/henryw/xen/-/pipelines/1029280530 

Henry Wang (6):
  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}

 xen/arch/arm/Kconfig               |    2 +-
 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        |    1 -
 xen/arch/arm/arm64/mmu/Makefile    |    1 +
 xen/arch/arm/arm64/mmu/head.S      |   21 +
 xen/arch/arm/arm64/{ => mmu}/mm.c  |   84 ++
 xen/arch/arm/include/asm/mm.h      |   31 +-
 xen/arch/arm/include/asm/mmu/mm.h  |   44 +
 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              |  736 +++++++++++
 xen/arch/arm/mmu/setup.c           |  376 ++++++
 xen/arch/arm/mmu/smpboot.c         |  124 ++
 xen/arch/arm/p2m.c                 | 1837 +---------------------------
 xen/arch/arm/setup.c               |  324 +----
 xen/arch/arm/smpboot.c             |    4 +-
 26 files changed, 3565 insertions(+), 3390 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 (60%)
 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 Oct 09 01:03:40 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 09 Oct 2023 01:03:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614076.954999 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qpegO-000685-09; Mon, 09 Oct 2023 01:03:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614076.954999; Mon, 09 Oct 2023 01:03: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 1qpegN-00067s-TY; Mon, 09 Oct 2023 01:03:39 +0000
Received: by outflank-mailman (input) for mailman id 614076;
 Mon, 09 Oct 2023 01:03: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=uDuw=FX=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qpegM-00066c-DN
 for xen-devel@lists.xenproject.org; Mon, 09 Oct 2023 01:03:38 +0000
Received: from foss.arm.com (foss.arm.com [217.140.110.172])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTP
 id ac506406-663f-11ee-9b0d-b553b5be7939;
 Mon, 09 Oct 2023 03:03: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 6FF7CC15;
 Sun,  8 Oct 2023 18:04:15 -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 5965C3F5A1;
 Sun,  8 Oct 2023 18:03: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: ac506406-663f-11ee-9b0d-b553b5be7939
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>,
	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: [PATCH v7 2/8] xen/arm: Split MMU system SMP MM bringup code to mmu/smpboot.c
Date: Mon,  9 Oct 2023 09:03:07 +0800
Message-Id: <20231009010313.3668423-3-Henry.Wang@arm.com>
X-Mailer: git-send-email 2.25.1
In-Reply-To: <20231009010313.3668423-1-Henry.Wang@arm.com>
References: <20231009010313.3668423-1-Henry.Wang@arm.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

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

Since arm32 global variable cpu0_pgtable will be used by both
arch/arm/mm.c and arch/arm/mmu/smpboot.c, to avoid exporting this
variable, change the variable usage in arch/arm/mmu/smpboot.c to
per_cpu(xen_pgtable, 0).

To avoid exposing global variable phys_offset, use virt_to_maddr()
to calculate init_ttbr for arm64.

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>
---
v7:
- Do not export cpu0_pgtable, replace the variable usage in
  arch/arm/mmu/smpboot.c to per_cpu(xen_pgtable, 0).
- Also move global variable init_ttbr to arch/arm/mmu/smpboot.c.
- Use virt_to_maddr() instead of phys_offset to calculate init_ttbr
  in arm64 implementation of init_secondary_pagetables().
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/mm.c          | 104 -------------------------------
 xen/arch/arm/mmu/Makefile  |   1 +
 xen/arch/arm/mmu/smpboot.c | 124 +++++++++++++++++++++++++++++++++++++
 3 files changed, 125 insertions(+), 104 deletions(-)
 create mode 100644 xen/arch/arm/mmu/smpboot.c

diff --git a/xen/arch/arm/mm.c b/xen/arch/arm/mm.c
index fd02493564..b7eb3a6e08 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 */
 
 /*
@@ -94,9 +61,6 @@ DEFINE_BOOT_PAGE_TABLE(xen_fixmap);
  */
 static DEFINE_PAGE_TABLES(xen_xenmap, XEN_NR_ENTRIES(2));
 
-/* Non-boot CPUs use this to find the correct pagetables. */
-uint64_t init_ttbr;
-
 static paddr_t phys_offset;
 
 /* Limits of the Xen heap */
@@ -284,13 +248,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)
@@ -369,67 +326,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..eac805c74c
--- /dev/null
+++ b/xen/arch/arm/mmu/smpboot.c
@@ -0,0 +1,124 @@
+/* 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));
+
+/* Non-boot CPUs use this to find the correct pagetables. */
+uint64_t init_ttbr;
+
+/* 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 = virt_to_maddr((uintptr_t) xen_pgtable);
+    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, per_cpu(xen_pgtable, 0), 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
+
+/*
+ * 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 Mon Oct 09 01:03:42 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 09 Oct 2023 01:03:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614077.955008 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qpegQ-0006PS-7f; Mon, 09 Oct 2023 01:03:42 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614077.955008; Mon, 09 Oct 2023 01: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 1qpegQ-0006PJ-4T; Mon, 09 Oct 2023 01:03:42 +0000
Received: by outflank-mailman (input) for mailman id 614077;
 Mon, 09 Oct 2023 01:03: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=uDuw=FX=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qpegO-0005Zt-I8
 for xen-devel@lists.xenproject.org; Mon, 09 Oct 2023 01:03:40 +0000
Received: from foss.arm.com (foss.arm.com [217.140.110.172])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTP
 id aeb5ffca-663f-11ee-98d3-6d05b1d4d9a1;
 Mon, 09 Oct 2023 03:03: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 68897C15;
 Sun,  8 Oct 2023 18:04:19 -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 51F2E3F5A1;
 Sun,  8 Oct 2023 18:03: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: aeb5ffca-663f-11ee-98d3-6d05b1d4d9a1
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>,
	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: [PATCH v7 3/8] xen/arm: Fold mmu_init_secondary_cpu() to head.S
Date: Mon,  9 Oct 2023 09:03:08 +0800
Message-Id: <20231009010313.3668423-4-Henry.Wang@arm.com>
X-Mailer: git-send-email 2.25.1
In-Reply-To: <20231009010313.3668423-1-Henry.Wang@arm.com>
References: <20231009010313.3668423-1-Henry.Wang@arm.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

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>
---
v7:
- No change.
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 88075ef083..e4b07594b5 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
+
 /*
  * Macro to find the slot number at a given page-table level
  *
@@ -308,6 +327,8 @@ ENTRY(enable_secondary_cpu_mm)
         bl    enable_mmu
         mov   lr, x5
 
+        pt_enforce_wxn x0
+
         /* Return to the virtual address requested by the caller. */
         ret
 ENDPROC(enable_secondary_cpu_mm)
diff --git a/xen/arch/arm/include/asm/mm.h b/xen/arch/arm/include/asm/mm.h
index d25e59f828..163d22ecd3 100644
--- a/xen/arch/arm/include/asm/mm.h
+++ b/xen/arch/arm/include/asm/mm.h
@@ -214,8 +214,6 @@ 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);
-/* Switch secondary CPUS to its own pagetables and finalise MMU setup */
-extern void mmu_init_secondary_cpu(void);
 /*
  * 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.
diff --git a/xen/arch/arm/mm.c b/xen/arch/arm/mm.c
index b7eb3a6e08..923a90925c 100644
--- a/xen/arch/arm/mm.c
+++ b/xen/arch/arm/mm.c
@@ -326,12 +326,6 @@ void __init setup_pagetables(unsigned long boot_phys_offset)
 #endif
 }
 
-/* MMU setup for secondary CPUS (which already have paging enabled) */
-void mmu_init_secondary_cpu(void)
-{
-    xen_pt_enforce_wnx();
-}
-
 #ifdef CONFIG_ARM_32
 /*
  * Set up the direct-mapped xenheap:
diff --git a/xen/arch/arm/smpboot.c b/xen/arch/arm/smpboot.c
index ec76de3cac..beb137d06e 100644
--- a/xen/arch/arm/smpboot.c
+++ b/xen/arch/arm/smpboot.c
@@ -361,8 +361,6 @@ void start_secondary(void)
      */
     update_system_features(&current_cpu_data);
 
-    mmu_init_secondary_cpu();
-
     gic_init_secondary_cpu();
 
     set_current(idle_vcpu[cpuid]);
-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Mon Oct 09 01:03:48 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 09 Oct 2023 01:03:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614080.955019 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qpegW-0006pS-HC; Mon, 09 Oct 2023 01:03:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614080.955019; Mon, 09 Oct 2023 01: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 1qpegW-0006pJ-Dk; Mon, 09 Oct 2023 01:03:48 +0000
Received: by outflank-mailman (input) for mailman id 614080;
 Mon, 09 Oct 2023 01:03: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=uDuw=FX=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qpegU-00066c-Ra
 for xen-devel@lists.xenproject.org; Mon, 09 Oct 2023 01:03:47 +0000
Received: from foss.arm.com (foss.arm.com [217.140.110.172])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTP
 id b1115c22-663f-11ee-9b0d-b553b5be7939;
 Mon, 09 Oct 2023 03:03: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 5CA90C15;
 Sun,  8 Oct 2023 18:04:23 -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 451E33F5A1;
 Sun,  8 Oct 2023 18: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: b1115c22-663f-11ee-9b0d-b553b5be7939
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>,
	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: [PATCH v7 4/8] xen/arm: Extract MMU-specific MM code
Date: Mon,  9 Oct 2023 09:03:09 +0800
Message-Id: <20231009010313.3668423-5-Henry.Wang@arm.com>
X-Mailer: git-send-email 2.25.1
In-Reply-To: <20231009010313.3668423-1-Henry.Wang@arm.com>
References: <20231009010313.3668423-1-Henry.Wang@arm.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

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.
While moving, mark pte_of_xenaddr() as __init to make clear that
this helper is only intended to be used during early boot.

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, declaration of global variable init_ttbr 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>
---
v7:
- Move pte_of_xenaddr() to mmu/setup.c and mark it as __init.
- Also move the declaration of init_ttbr to asm/mmu/mm.h.
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     |  25 +-
 xen/arch/arm/include/asm/mmu/mm.h |  50 ++++
 xen/arch/arm/include/asm/page.h   |  15 --
 xen/arch/arm/mm.c                 | 385 ------------------------------
 xen/arch/arm/mmu/Makefile         |   1 +
 xen/arch/arm/mmu/setup.c          | 349 +++++++++++++++++++++++++++
 12 files changed, 477 insertions(+), 420 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 163d22ecd3..d23ebc7df6 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)
 
@@ -165,16 +171,6 @@ struct page_info
 #define _PGC_need_scrub   _PGC_allocated
 #define PGC_need_scrub    PGC_allocated
 
-/* Non-boot CPUs use this to find the correct pagetables. */
-extern uint64_t init_ttbr;
-
-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) ({                                 \
@@ -197,7 +193,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;
 
@@ -207,19 +202,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..439ae314fd
--- /dev/null
+++ b/xen/arch/arm/include/asm/mmu/mm.h
@@ -0,0 +1,50 @@
+/* SPDX-License-Identifier: GPL-2.0-or-later */
+#ifndef __ARM_MMU_MM_H__
+#define __ARM_MMU_MM_H__
+
+/* Non-boot CPUs use this to find the correct pagetables. */
+extern uint64_t init_ttbr;
+
+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
+
+#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 aa0080e8d7..ebaf5964f1 100644
--- a/xen/arch/arm/include/asm/page.h
+++ b/xen/arch/arm/include/asm/page.h
@@ -264,21 +264,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 923a90925c..eeb65ca6bb 100644
--- a/xen/arch/arm/mm.c
+++ b/xen/arch/arm/mm.c
@@ -11,136 +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 */
-static 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));
-
-static 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));
@@ -160,229 +43,6 @@ void flush_page_to_ram(unsigned long mfn, bool sync_icache)
         invalidate_icache();
 }
 
-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);
-}
-
-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)
 {
@@ -422,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..c2df976ab2
--- /dev/null
+++ b/xen/arch/arm/mmu/setup.c
@@ -0,0 +1,349 @@
+/* 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 */
+static 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));
+
+static 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
+}
+
+lpae_t __init pte_of_xenaddr(vaddr_t va)
+{
+    paddr_t ma = va + phys_offset;
+
+    return mfn_to_xen_entry(maddr_to_mfn(ma), MT_NORMAL);
+}
+
+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 Mon Oct 09 01:03:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 09 Oct 2023 01:03:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614082.955029 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qpegY-00078y-4v; Mon, 09 Oct 2023 01:03:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614082.955029; Mon, 09 Oct 2023 01: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 1qpegY-00077X-0A; Mon, 09 Oct 2023 01:03:50 +0000
Received: by outflank-mailman (input) for mailman id 614082;
 Mon, 09 Oct 2023 01:03: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=uDuw=FX=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qpegX-0005Zt-2P
 for xen-devel@lists.xenproject.org; Mon, 09 Oct 2023 01:03:49 +0000
Received: from foss.arm.com (foss.arm.com [217.140.110.172])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTP
 id b3578838-663f-11ee-98d3-6d05b1d4d9a1;
 Mon, 09 Oct 2023 03:03: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 59B93FEC;
 Sun,  8 Oct 2023 18:04:27 -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 422D03F5A1;
 Sun,  8 Oct 2023 18:03: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: b3578838-663f-11ee-98d3-6d05b1d4d9a1
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>,
	Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Penny Zheng <penny.zheng@arm.com>,
	Wei Chen <wei.chen@arm.com>
Subject: [PATCH v7 5/8] xen/arm: Split MMU-specific setup_mm() and related code out
Date: Mon,  9 Oct 2023 09:03:10 +0800
Message-Id: <20231009010313.3668423-6-Henry.Wang@arm.com>
X-Mailer: git-send-email 2.25.1
In-Reply-To: <20231009010313.3668423-1-Henry.Wang@arm.com>
References: <20231009010313.3668423-1-Henry.Wang@arm.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

setup_mm() is used for Xen to setup memory management subsystem,
such as boot allocator, direct-mapping, xenheap initialization,
frametable and static memory pages, at boot time.

We could inherit some components seamlessly for MPU support, such
as the setup of boot allocator, whilst we need to implement some
components differently for MPU, such as xenheap, etc. Also, there
are some components that is specific to MMU only, for example the
direct-mapping.

Therefore in this commit, we split the MMU-specific setup_mm() and
related code out. Since arm32 and arm64 have completely different
setup_mm() implementation, take the opportunity to split the
arch-specific setup_mm() to arch-specific files, so that we can
avoid #ifdef. Also, make init_pdx(), init_staticmem_pages(),
setup_mm(), and populate_boot_allocator() public for future MPU
implementation.

With above code movement, mark setup_directmap_mappings() as static
because the only caller of this function is now in the same file
with it. Drop the original setup_directmap_mappings() declaration
and move the in-code comment on top of the declaration on top of
the function implementation.

Signed-off-by: Henry Wang <Henry.Wang@arm.com>
Signed-off-by: Penny Zheng <penny.zheng@arm.com>
Signed-off-by: Wei Chen <wei.chen@arm.com>
---
v7:
- No change.
v6:
- Rework the original patch:
  [v5,10/13] xen/arm: mmu: move MMU-specific setup_mm to mmu/setup.c
---
 xen/arch/arm/arm32/mmu/mm.c       | 278 ++++++++++++++++++++++++-
 xen/arch/arm/arm64/mmu/mm.c       |  51 ++++-
 xen/arch/arm/include/asm/mmu/mm.h |   6 -
 xen/arch/arm/include/asm/setup.h  |   5 +
 xen/arch/arm/setup.c              | 324 +-----------------------------
 5 files changed, 331 insertions(+), 333 deletions(-)

diff --git a/xen/arch/arm/arm32/mmu/mm.c b/xen/arch/arm/arm32/mmu/mm.c
index 647baf4a81..94d6cab49c 100644
--- a/xen/arch/arm/arm32/mmu/mm.c
+++ b/xen/arch/arm/arm32/mmu/mm.c
@@ -1,14 +1,21 @@
 /* SPDX-License-Identifier: GPL-2.0 */
 
 #include <xen/init.h>
+#include <xen/lib.h>
+#include <xen/libfdt/libfdt-xen.h>
+#include <xen/param.h>
+#include <xen/pfn.h>
 #include <asm/fixmap.h>
 
+static unsigned long opt_xenheap_megabytes __initdata;
+integer_param("xenheap_megabytes", opt_xenheap_megabytes);
+
 /*
- * Set up the direct-mapped xenheap:
- * up to 1GB of contiguous, always-mapped memory.
+ * 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.
  */
-void __init setup_directmap_mappings(unsigned long base_mfn,
-                                     unsigned long nr_mfns)
+static void __init setup_directmap_mappings(unsigned long base_mfn,
+                                            unsigned long nr_mfns)
 {
     int rc;
 
@@ -21,6 +28,269 @@ void __init setup_directmap_mappings(unsigned long base_mfn,
     directmap_virt_end = XENHEAP_VIRT_START + nr_mfns * PAGE_SIZE;
 }
 
+/*
+ * Returns the end address of the highest region in the range s..e
+ * with required size and alignment that does not conflict with the
+ * modules from first_mod to nr_modules.
+ *
+ * For non-recursive callers first_mod should normally be 0 (all
+ * modules and Xen itself) or 1 (all modules but not Xen).
+ */
+static paddr_t __init consider_modules(paddr_t s, paddr_t e,
+                                       uint32_t size, paddr_t align,
+                                       int first_mod)
+{
+    const struct bootmodules *mi = &bootinfo.modules;
+    int i;
+    int nr;
+
+    s = (s+align-1) & ~(align-1);
+    e = e & ~(align-1);
+
+    if ( s > e ||  e - s < size )
+        return 0;
+
+    /* First check the boot modules */
+    for ( i = first_mod; i < mi->nr_mods; i++ )
+    {
+        paddr_t mod_s = mi->module[i].start;
+        paddr_t mod_e = mod_s + mi->module[i].size;
+
+        if ( s < mod_e && mod_s < e )
+        {
+            mod_e = consider_modules(mod_e, e, size, align, i+1);
+            if ( mod_e )
+                return mod_e;
+
+            return consider_modules(s, mod_s, size, align, i+1);
+        }
+    }
+
+    /* Now check any fdt reserved areas. */
+
+    nr = fdt_num_mem_rsv(device_tree_flattened);
+
+    for ( ; i < mi->nr_mods + nr; i++ )
+    {
+        paddr_t mod_s, mod_e;
+
+        if ( fdt_get_mem_rsv_paddr(device_tree_flattened,
+                                   i - mi->nr_mods,
+                                   &mod_s, &mod_e ) < 0 )
+            /* If we can't read it, pretend it doesn't exist... */
+            continue;
+
+        /* fdt_get_mem_rsv_paddr returns length */
+        mod_e += mod_s;
+
+        if ( s < mod_e && mod_s < e )
+        {
+            mod_e = consider_modules(mod_e, e, size, align, i+1);
+            if ( mod_e )
+                return mod_e;
+
+            return consider_modules(s, mod_s, size, align, i+1);
+        }
+    }
+
+    /*
+     * i is the current bootmodule we are evaluating, across all
+     * possible kinds of bootmodules.
+     *
+     * When retrieving the corresponding reserved-memory addresses, we
+     * need to index the bootinfo.reserved_mem bank starting from 0, and
+     * only counting the reserved-memory modules. Hence, we need to use
+     * i - nr.
+     */
+    nr += mi->nr_mods;
+    for ( ; i - nr < bootinfo.reserved_mem.nr_banks; i++ )
+    {
+        paddr_t r_s = bootinfo.reserved_mem.bank[i - nr].start;
+        paddr_t r_e = r_s + bootinfo.reserved_mem.bank[i - nr].size;
+
+        if ( s < r_e && r_s < e )
+        {
+            r_e = consider_modules(r_e, e, size, align, i + 1);
+            if ( r_e )
+                return r_e;
+
+            return consider_modules(s, r_s, size, align, i + 1);
+        }
+    }
+    return e;
+}
+
+/*
+ * Find a contiguous region that fits in the static heap region with
+ * required size and alignment, and return the end address of the region
+ * if found otherwise 0.
+ */
+static paddr_t __init fit_xenheap_in_static_heap(uint32_t size, paddr_t align)
+{
+    unsigned int i;
+    paddr_t end = 0, aligned_start, aligned_end;
+    paddr_t bank_start, bank_size, bank_end;
+
+    for ( i = 0 ; i < bootinfo.reserved_mem.nr_banks; i++ )
+    {
+        if ( bootinfo.reserved_mem.bank[i].type != MEMBANK_STATIC_HEAP )
+            continue;
+
+        bank_start = bootinfo.reserved_mem.bank[i].start;
+        bank_size = bootinfo.reserved_mem.bank[i].size;
+        bank_end = bank_start + bank_size;
+
+        if ( bank_size < size )
+            continue;
+
+        aligned_end = bank_end & ~(align - 1);
+        aligned_start = (aligned_end - size) & ~(align - 1);
+
+        if ( aligned_start > bank_start )
+            /*
+             * Allocate the xenheap as high as possible to keep low-memory
+             * available (assuming the admin supplied region below 4GB)
+             * for other use (e.g. domain memory allocation).
+             */
+            end = max(end, aligned_end);
+    }
+
+    return end;
+}
+
+void __init setup_mm(void)
+{
+    paddr_t ram_start, ram_end, ram_size, e, bank_start, bank_end, bank_size;
+    paddr_t static_heap_end = 0, static_heap_size = 0;
+    unsigned long heap_pages, xenheap_pages, domheap_pages;
+    unsigned int i;
+    const uint32_t ctr = READ_CP32(CTR);
+
+    if ( !bootinfo.mem.nr_banks )
+        panic("No memory bank\n");
+
+    /* We only supports instruction caches implementing the IVIPT extension. */
+    if ( ((ctr >> CTR_L1IP_SHIFT) & CTR_L1IP_MASK) == ICACHE_POLICY_AIVIVT )
+        panic("AIVIVT instruction cache not supported\n");
+
+    init_pdx();
+
+    ram_start = bootinfo.mem.bank[0].start;
+    ram_size  = bootinfo.mem.bank[0].size;
+    ram_end   = ram_start + ram_size;
+
+    for ( i = 1; i < bootinfo.mem.nr_banks; i++ )
+    {
+        bank_start = bootinfo.mem.bank[i].start;
+        bank_size = bootinfo.mem.bank[i].size;
+        bank_end = bank_start + bank_size;
+
+        ram_size  = ram_size + bank_size;
+        ram_start = min(ram_start,bank_start);
+        ram_end   = max(ram_end,bank_end);
+    }
+
+    total_pages = ram_size >> PAGE_SHIFT;
+
+    if ( bootinfo.static_heap )
+    {
+        for ( i = 0 ; i < bootinfo.reserved_mem.nr_banks; i++ )
+        {
+            if ( bootinfo.reserved_mem.bank[i].type != MEMBANK_STATIC_HEAP )
+                continue;
+
+            bank_start = bootinfo.reserved_mem.bank[i].start;
+            bank_size = bootinfo.reserved_mem.bank[i].size;
+            bank_end = bank_start + bank_size;
+
+            static_heap_size += bank_size;
+            static_heap_end = max(static_heap_end, bank_end);
+        }
+
+        heap_pages = static_heap_size >> PAGE_SHIFT;
+    }
+    else
+        heap_pages = total_pages;
+
+    /*
+     * If the user has not requested otherwise via the command line
+     * then locate the xenheap using these constraints:
+     *
+     *  - must be contiguous
+     *  - must be 32 MiB aligned
+     *  - must not include Xen itself or the boot modules
+     *  - must be at most 1GB or 1/32 the total RAM in the system (or static
+          heap if enabled) if less
+     *  - must be at least 32M
+     *
+     * We try to allocate the largest xenheap possible within these
+     * constraints.
+     */
+    if ( opt_xenheap_megabytes )
+        xenheap_pages = opt_xenheap_megabytes << (20-PAGE_SHIFT);
+    else
+    {
+        xenheap_pages = (heap_pages/32 + 0x1fffUL) & ~0x1fffUL;
+        xenheap_pages = max(xenheap_pages, 32UL<<(20-PAGE_SHIFT));
+        xenheap_pages = min(xenheap_pages, 1UL<<(30-PAGE_SHIFT));
+    }
+
+    do
+    {
+        e = bootinfo.static_heap ?
+            fit_xenheap_in_static_heap(pfn_to_paddr(xenheap_pages), MB(32)) :
+            consider_modules(ram_start, ram_end,
+                             pfn_to_paddr(xenheap_pages),
+                             32<<20, 0);
+        if ( e )
+            break;
+
+        xenheap_pages >>= 1;
+    } while ( !opt_xenheap_megabytes && xenheap_pages > 32<<(20-PAGE_SHIFT) );
+
+    if ( ! e )
+        panic("Not enough space for xenheap\n");
+
+    domheap_pages = heap_pages - xenheap_pages;
+
+    printk("Xen heap: %"PRIpaddr"-%"PRIpaddr" (%lu pages%s)\n",
+           e - (pfn_to_paddr(xenheap_pages)), e, xenheap_pages,
+           opt_xenheap_megabytes ? ", from command-line" : "");
+    printk("Dom heap: %lu pages\n", domheap_pages);
+
+    /*
+     * We need some memory to allocate the page-tables used for the
+     * directmap mappings. So populate the boot allocator first.
+     *
+     * This requires us to set directmap_mfn_{start, end} first so the
+     * direct-mapped Xenheap region can be avoided.
+     */
+    directmap_mfn_start = _mfn((e >> PAGE_SHIFT) - xenheap_pages);
+    directmap_mfn_end = mfn_add(directmap_mfn_start, xenheap_pages);
+
+    populate_boot_allocator();
+
+    setup_directmap_mappings(mfn_x(directmap_mfn_start), xenheap_pages);
+
+    /* Frame table covers all of RAM region, including holes */
+    setup_frametable_mappings(ram_start, ram_end);
+    max_page = PFN_DOWN(ram_end);
+
+    /*
+     * The allocators may need to use map_domain_page() (such as for
+     * scrubbing pages). So we need to prepare the domheap area first.
+     */
+    if ( !init_domheap_mappings(smp_processor_id()) )
+        panic("CPU%u: Unable to prepare the domheap page-tables\n",
+              smp_processor_id());
+
+    /* Add xenheap memory that was not already added to the boot allocator. */
+    init_xenheap_pages(mfn_to_maddr(directmap_mfn_start),
+                       mfn_to_maddr(directmap_mfn_end));
+
+    init_staticmem_pages();
+}
+
 /*
  * Local variables:
  * mode: C
diff --git a/xen/arch/arm/arm64/mmu/mm.c b/xen/arch/arm/arm64/mmu/mm.c
index 36073041ed..c0f166a437 100644
--- a/xen/arch/arm/arm64/mmu/mm.c
+++ b/xen/arch/arm/arm64/mmu/mm.c
@@ -2,6 +2,7 @@
 
 #include <xen/init.h>
 #include <xen/mm.h>
+#include <xen/pfn.h>
 
 #include <asm/setup.h>
 
@@ -152,8 +153,8 @@ void __init switch_ttbr(uint64_t ttbr)
 }
 
 /* Map the region in the directmap area. */
-void __init setup_directmap_mappings(unsigned long base_mfn,
-                                     unsigned long nr_mfns)
+static void __init setup_directmap_mappings(unsigned long base_mfn,
+                                            unsigned long nr_mfns)
 {
     int rc;
 
@@ -188,6 +189,52 @@ void __init setup_directmap_mappings(unsigned long base_mfn,
         panic("Unable to setup the directmap mappings.\n");
 }
 
+void __init setup_mm(void)
+{
+    const struct meminfo *banks = &bootinfo.mem;
+    paddr_t ram_start = INVALID_PADDR;
+    paddr_t ram_end = 0;
+    paddr_t ram_size = 0;
+    unsigned int i;
+
+    init_pdx();
+
+    /*
+     * We need some memory to allocate the page-tables used for the directmap
+     * mappings. But some regions may contain memory already allocated
+     * for other uses (e.g. modules, reserved-memory...).
+     *
+     * For simplicity, add all the free regions in the boot allocator.
+     */
+    populate_boot_allocator();
+
+    total_pages = 0;
+
+    for ( i = 0; i < banks->nr_banks; i++ )
+    {
+        const struct membank *bank = &banks->bank[i];
+        paddr_t bank_end = bank->start + bank->size;
+
+        ram_size = ram_size + bank->size;
+        ram_start = min(ram_start, bank->start);
+        ram_end = max(ram_end, bank_end);
+
+        setup_directmap_mappings(PFN_DOWN(bank->start),
+                                 PFN_DOWN(bank->size));
+    }
+
+    total_pages += ram_size >> PAGE_SHIFT;
+
+    directmap_virt_end = XENHEAP_VIRT_START + ram_end - ram_start;
+    directmap_mfn_start = maddr_to_mfn(ram_start);
+    directmap_mfn_end = maddr_to_mfn(ram_end);
+
+    setup_frametable_mappings(ram_start, ram_end);
+    max_page = PFN_DOWN(ram_end);
+
+    init_staticmem_pages();
+}
+
 /*
  * Local variables:
  * mode: C
diff --git a/xen/arch/arm/include/asm/mmu/mm.h b/xen/arch/arm/include/asm/mmu/mm.h
index 439ae314fd..c5e03a66bf 100644
--- a/xen/arch/arm/include/asm/mmu/mm.h
+++ b/xen/arch/arm/include/asm/mmu/mm.h
@@ -31,12 +31,6 @@ void dump_pt_walk(paddr_t ttbr, paddr_t addr,
 
 /* 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__ */
 
diff --git a/xen/arch/arm/include/asm/setup.h b/xen/arch/arm/include/asm/setup.h
index b8866c20f4..863e9b88cd 100644
--- a/xen/arch/arm/include/asm/setup.h
+++ b/xen/arch/arm/include/asm/setup.h
@@ -159,6 +159,11 @@ struct bootcmdline *boot_cmdline_find_by_kind(bootmodule_kind kind);
 struct bootcmdline * boot_cmdline_find_by_name(const char *name);
 const char *boot_module_kind_as_string(bootmodule_kind kind);
 
+void init_pdx(void);
+void init_staticmem_pages(void);
+void populate_boot_allocator(void);
+void setup_mm(void);
+
 extern uint32_t hyp_traps_vector[];
 void init_traps(void);
 
diff --git a/xen/arch/arm/setup.c b/xen/arch/arm/setup.c
index db748839d3..5983546e64 100644
--- a/xen/arch/arm/setup.c
+++ b/xen/arch/arm/setup.c
@@ -58,11 +58,6 @@ struct cpuinfo_arm __read_mostly system_cpuinfo;
 bool __read_mostly acpi_disabled;
 #endif
 
-#ifdef CONFIG_ARM_32
-static unsigned long opt_xenheap_megabytes __initdata;
-integer_param("xenheap_megabytes", opt_xenheap_megabytes);
-#endif
-
 domid_t __read_mostly max_init_domid;
 
 static __used void init_done(void)
@@ -547,138 +542,6 @@ static void * __init relocate_fdt(paddr_t dtb_paddr, size_t dtb_size)
     return fdt;
 }
 
-#ifdef CONFIG_ARM_32
-/*
- * Returns the end address of the highest region in the range s..e
- * with required size and alignment that does not conflict with the
- * modules from first_mod to nr_modules.
- *
- * For non-recursive callers first_mod should normally be 0 (all
- * modules and Xen itself) or 1 (all modules but not Xen).
- */
-static paddr_t __init consider_modules(paddr_t s, paddr_t e,
-                                       uint32_t size, paddr_t align,
-                                       int first_mod)
-{
-    const struct bootmodules *mi = &bootinfo.modules;
-    int i;
-    int nr;
-
-    s = (s+align-1) & ~(align-1);
-    e = e & ~(align-1);
-
-    if ( s > e ||  e - s < size )
-        return 0;
-
-    /* First check the boot modules */
-    for ( i = first_mod; i < mi->nr_mods; i++ )
-    {
-        paddr_t mod_s = mi->module[i].start;
-        paddr_t mod_e = mod_s + mi->module[i].size;
-
-        if ( s < mod_e && mod_s < e )
-        {
-            mod_e = consider_modules(mod_e, e, size, align, i+1);
-            if ( mod_e )
-                return mod_e;
-
-            return consider_modules(s, mod_s, size, align, i+1);
-        }
-    }
-
-    /* Now check any fdt reserved areas. */
-
-    nr = fdt_num_mem_rsv(device_tree_flattened);
-
-    for ( ; i < mi->nr_mods + nr; i++ )
-    {
-        paddr_t mod_s, mod_e;
-
-        if ( fdt_get_mem_rsv_paddr(device_tree_flattened,
-                                   i - mi->nr_mods,
-                                   &mod_s, &mod_e ) < 0 )
-            /* If we can't read it, pretend it doesn't exist... */
-            continue;
-
-        /* fdt_get_mem_rsv_paddr returns length */
-        mod_e += mod_s;
-
-        if ( s < mod_e && mod_s < e )
-        {
-            mod_e = consider_modules(mod_e, e, size, align, i+1);
-            if ( mod_e )
-                return mod_e;
-
-            return consider_modules(s, mod_s, size, align, i+1);
-        }
-    }
-
-    /*
-     * i is the current bootmodule we are evaluating, across all
-     * possible kinds of bootmodules.
-     *
-     * When retrieving the corresponding reserved-memory addresses, we
-     * need to index the bootinfo.reserved_mem bank starting from 0, and
-     * only counting the reserved-memory modules. Hence, we need to use
-     * i - nr.
-     */
-    nr += mi->nr_mods;
-    for ( ; i - nr < bootinfo.reserved_mem.nr_banks; i++ )
-    {
-        paddr_t r_s = bootinfo.reserved_mem.bank[i - nr].start;
-        paddr_t r_e = r_s + bootinfo.reserved_mem.bank[i - nr].size;
-
-        if ( s < r_e && r_s < e )
-        {
-            r_e = consider_modules(r_e, e, size, align, i + 1);
-            if ( r_e )
-                return r_e;
-
-            return consider_modules(s, r_s, size, align, i + 1);
-        }
-    }
-    return e;
-}
-
-/*
- * Find a contiguous region that fits in the static heap region with
- * required size and alignment, and return the end address of the region
- * if found otherwise 0.
- */
-static paddr_t __init fit_xenheap_in_static_heap(uint32_t size, paddr_t align)
-{
-    unsigned int i;
-    paddr_t end = 0, aligned_start, aligned_end;
-    paddr_t bank_start, bank_size, bank_end;
-
-    for ( i = 0 ; i < bootinfo.reserved_mem.nr_banks; i++ )
-    {
-        if ( bootinfo.reserved_mem.bank[i].type != MEMBANK_STATIC_HEAP )
-            continue;
-
-        bank_start = bootinfo.reserved_mem.bank[i].start;
-        bank_size = bootinfo.reserved_mem.bank[i].size;
-        bank_end = bank_start + bank_size;
-
-        if ( bank_size < size )
-            continue;
-
-        aligned_end = bank_end & ~(align - 1);
-        aligned_start = (aligned_end - size) & ~(align - 1);
-
-        if ( aligned_start > bank_start )
-            /*
-             * Allocate the xenheap as high as possible to keep low-memory
-             * available (assuming the admin supplied region below 4GB)
-             * for other use (e.g. domain memory allocation).
-             */
-            end = max(end, aligned_end);
-    }
-
-    return end;
-}
-#endif
-
 /*
  * Return the end of the non-module region starting at s. In other
  * words return s the start of the next modules after s.
@@ -713,7 +576,7 @@ static paddr_t __init next_module(paddr_t s, paddr_t *end)
     return lowest;
 }
 
-static void __init init_pdx(void)
+void __init init_pdx(void)
 {
     paddr_t bank_start, bank_size, bank_end;
 
@@ -758,7 +621,7 @@ static void __init init_pdx(void)
 }
 
 /* Static memory initialization */
-static void __init init_staticmem_pages(void)
+void __init init_staticmem_pages(void)
 {
 #ifdef CONFIG_STATIC_MEMORY
     unsigned int bank;
@@ -792,7 +655,7 @@ static void __init init_staticmem_pages(void)
  * allocator with the corresponding regions only, but with Xenheap excluded
  * on arm32.
  */
-static void __init populate_boot_allocator(void)
+void __init populate_boot_allocator(void)
 {
     unsigned int i;
     const struct meminfo *banks = &bootinfo.mem;
@@ -861,187 +724,6 @@ static void __init populate_boot_allocator(void)
     }
 }
 
-#ifdef CONFIG_ARM_32
-static void __init setup_mm(void)
-{
-    paddr_t ram_start, ram_end, ram_size, e, bank_start, bank_end, bank_size;
-    paddr_t static_heap_end = 0, static_heap_size = 0;
-    unsigned long heap_pages, xenheap_pages, domheap_pages;
-    unsigned int i;
-    const uint32_t ctr = READ_CP32(CTR);
-
-    if ( !bootinfo.mem.nr_banks )
-        panic("No memory bank\n");
-
-    /* We only supports instruction caches implementing the IVIPT extension. */
-    if ( ((ctr >> CTR_L1IP_SHIFT) & CTR_L1IP_MASK) == ICACHE_POLICY_AIVIVT )
-        panic("AIVIVT instruction cache not supported\n");
-
-    init_pdx();
-
-    ram_start = bootinfo.mem.bank[0].start;
-    ram_size  = bootinfo.mem.bank[0].size;
-    ram_end   = ram_start + ram_size;
-
-    for ( i = 1; i < bootinfo.mem.nr_banks; i++ )
-    {
-        bank_start = bootinfo.mem.bank[i].start;
-        bank_size = bootinfo.mem.bank[i].size;
-        bank_end = bank_start + bank_size;
-
-        ram_size  = ram_size + bank_size;
-        ram_start = min(ram_start,bank_start);
-        ram_end   = max(ram_end,bank_end);
-    }
-
-    total_pages = ram_size >> PAGE_SHIFT;
-
-    if ( bootinfo.static_heap )
-    {
-        for ( i = 0 ; i < bootinfo.reserved_mem.nr_banks; i++ )
-        {
-            if ( bootinfo.reserved_mem.bank[i].type != MEMBANK_STATIC_HEAP )
-                continue;
-
-            bank_start = bootinfo.reserved_mem.bank[i].start;
-            bank_size = bootinfo.reserved_mem.bank[i].size;
-            bank_end = bank_start + bank_size;
-
-            static_heap_size += bank_size;
-            static_heap_end = max(static_heap_end, bank_end);
-        }
-
-        heap_pages = static_heap_size >> PAGE_SHIFT;
-    }
-    else
-        heap_pages = total_pages;
-
-    /*
-     * If the user has not requested otherwise via the command line
-     * then locate the xenheap using these constraints:
-     *
-     *  - must be contiguous
-     *  - must be 32 MiB aligned
-     *  - must not include Xen itself or the boot modules
-     *  - must be at most 1GB or 1/32 the total RAM in the system (or static
-          heap if enabled) if less
-     *  - must be at least 32M
-     *
-     * We try to allocate the largest xenheap possible within these
-     * constraints.
-     */
-    if ( opt_xenheap_megabytes )
-        xenheap_pages = opt_xenheap_megabytes << (20-PAGE_SHIFT);
-    else
-    {
-        xenheap_pages = (heap_pages/32 + 0x1fffUL) & ~0x1fffUL;
-        xenheap_pages = max(xenheap_pages, 32UL<<(20-PAGE_SHIFT));
-        xenheap_pages = min(xenheap_pages, 1UL<<(30-PAGE_SHIFT));
-    }
-
-    do
-    {
-        e = bootinfo.static_heap ?
-            fit_xenheap_in_static_heap(pfn_to_paddr(xenheap_pages), MB(32)) :
-            consider_modules(ram_start, ram_end,
-                             pfn_to_paddr(xenheap_pages),
-                             32<<20, 0);
-        if ( e )
-            break;
-
-        xenheap_pages >>= 1;
-    } while ( !opt_xenheap_megabytes && xenheap_pages > 32<<(20-PAGE_SHIFT) );
-
-    if ( ! e )
-        panic("Not enough space for xenheap\n");
-
-    domheap_pages = heap_pages - xenheap_pages;
-
-    printk("Xen heap: %"PRIpaddr"-%"PRIpaddr" (%lu pages%s)\n",
-           e - (pfn_to_paddr(xenheap_pages)), e, xenheap_pages,
-           opt_xenheap_megabytes ? ", from command-line" : "");
-    printk("Dom heap: %lu pages\n", domheap_pages);
-
-    /*
-     * We need some memory to allocate the page-tables used for the
-     * directmap mappings. So populate the boot allocator first.
-     *
-     * This requires us to set directmap_mfn_{start, end} first so the
-     * direct-mapped Xenheap region can be avoided.
-     */
-    directmap_mfn_start = _mfn((e >> PAGE_SHIFT) - xenheap_pages);
-    directmap_mfn_end = mfn_add(directmap_mfn_start, xenheap_pages);
-
-    populate_boot_allocator();
-
-    setup_directmap_mappings(mfn_x(directmap_mfn_start), xenheap_pages);
-
-    /* Frame table covers all of RAM region, including holes */
-    setup_frametable_mappings(ram_start, ram_end);
-    max_page = PFN_DOWN(ram_end);
-
-    /*
-     * The allocators may need to use map_domain_page() (such as for
-     * scrubbing pages). So we need to prepare the domheap area first.
-     */
-    if ( !init_domheap_mappings(smp_processor_id()) )
-        panic("CPU%u: Unable to prepare the domheap page-tables\n",
-              smp_processor_id());
-
-    /* Add xenheap memory that was not already added to the boot allocator. */
-    init_xenheap_pages(mfn_to_maddr(directmap_mfn_start),
-                       mfn_to_maddr(directmap_mfn_end));
-
-    init_staticmem_pages();
-}
-#else /* CONFIG_ARM_64 */
-static void __init setup_mm(void)
-{
-    const struct meminfo *banks = &bootinfo.mem;
-    paddr_t ram_start = INVALID_PADDR;
-    paddr_t ram_end = 0;
-    paddr_t ram_size = 0;
-    unsigned int i;
-
-    init_pdx();
-
-    /*
-     * We need some memory to allocate the page-tables used for the directmap
-     * mappings. But some regions may contain memory already allocated
-     * for other uses (e.g. modules, reserved-memory...).
-     *
-     * For simplicity, add all the free regions in the boot allocator.
-     */
-    populate_boot_allocator();
-
-    total_pages = 0;
-
-    for ( i = 0; i < banks->nr_banks; i++ )
-    {
-        const struct membank *bank = &banks->bank[i];
-        paddr_t bank_end = bank->start + bank->size;
-
-        ram_size = ram_size + bank->size;
-        ram_start = min(ram_start, bank->start);
-        ram_end = max(ram_end, bank_end);
-
-        setup_directmap_mappings(PFN_DOWN(bank->start),
-                                 PFN_DOWN(bank->size));
-    }
-
-    total_pages += ram_size >> PAGE_SHIFT;
-
-    directmap_virt_end = XENHEAP_VIRT_START + ram_end - ram_start;
-    directmap_mfn_start = maddr_to_mfn(ram_start);
-    directmap_mfn_end = maddr_to_mfn(ram_end);
-
-    setup_frametable_mappings(ram_start, ram_end);
-    max_page = PFN_DOWN(ram_end);
-
-    init_staticmem_pages();
-}
-#endif
-
 static bool __init is_dom0less_mode(void)
 {
     struct bootmodules *mods = &bootinfo.modules;
-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Mon Oct 09 01:03:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 09 Oct 2023 01:03:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614086.955039 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qpegc-0007fE-Eg; Mon, 09 Oct 2023 01:03:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614086.955039; Mon, 09 Oct 2023 01: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 1qpegc-0007f3-AV; Mon, 09 Oct 2023 01:03:54 +0000
Received: by outflank-mailman (input) for mailman id 614086;
 Mon, 09 Oct 2023 01: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=uDuw=FX=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qpegb-00066c-9u
 for xen-devel@lists.xenproject.org; Mon, 09 Oct 2023 01:03:53 +0000
Received: from foss.arm.com (foss.arm.com [217.140.110.172])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTP
 id b5a50a1d-663f-11ee-9b0d-b553b5be7939;
 Mon, 09 Oct 2023 03:03:51 +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 2B4A2C15;
 Sun,  8 Oct 2023 18:04:31 -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 1532C3F5A1;
 Sun,  8 Oct 2023 18:03: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: b5a50a1d-663f-11ee-9b0d-b553b5be7939
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>,
	Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Penny Zheng <penny.zheng@arm.com>,
	Wei Chen <wei.chen@arm.com>
Subject: [PATCH v7 6/8] xen/arm: Fold pmap and fixmap into MMU system
Date: Mon,  9 Oct 2023 09:03:11 +0800
Message-Id: <20231009010313.3668423-7-Henry.Wang@arm.com>
X-Mailer: git-send-email 2.25.1
In-Reply-To: <20231009010313.3668423-1-Henry.Wang@arm.com>
References: <20231009010313.3668423-1-Henry.Wang@arm.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

fixmap and pmap are MMU-specific features, so fold them to the
MMU system. Do the folding for pmap by moving the HAS_PMAP Kconfig
selection under MMU. Since none of the definitions in asm/fixmap.h
actually makes sense for the MPU, so do the folding for fixmap by
limiting the inclusion of asm/fixmap.h for MPU code when necessary.
To guarantee that, moving the implementation of copy_from_paddr()
from kernel.c to mmu/setup.c, so that inclusion of asm/fixmap.h in
the kernel.c can be dropped.

Signed-off-by: Henry Wang <Henry.Wang@arm.com>
Signed-off-by: Penny Zheng <penny.zheng@arm.com>
Signed-off-by: Wei Chen <wei.chen@arm.com>
---
v7:
- No change.
v6:
- Rework original patch:
  [v5,08/13] xen/arm: Fold pmap and fixmap into MMU system
  and fold in the original patch:
  [v5,12/13] xen/arm: mmu: relocate copy_from_paddr() to setup.c
---
 xen/arch/arm/Kconfig     |  2 +-
 xen/arch/arm/kernel.c    | 28 ----------------------------
 xen/arch/arm/mmu/setup.c | 27 +++++++++++++++++++++++++++
 3 files changed, 28 insertions(+), 29 deletions(-)

diff --git a/xen/arch/arm/Kconfig b/xen/arch/arm/Kconfig
index 632dd9792e..4b21a12b8b 100644
--- a/xen/arch/arm/Kconfig
+++ b/xen/arch/arm/Kconfig
@@ -15,7 +15,6 @@ config ARM
 	select HAS_DEVICE_TREE
 	select HAS_PASSTHROUGH
 	select HAS_PDX
-	select HAS_PMAP
 	select HAS_UBSAN
 	select IOMMU_FORCE_PT_SHARE
 
@@ -61,6 +60,7 @@ config PADDR_BITS
 
 config MMU
 	def_bool y
+	select HAS_PMAP
 
 source "arch/Kconfig"
 
diff --git a/xen/arch/arm/kernel.c b/xen/arch/arm/kernel.c
index 508c54824d..bc3e5bd6f9 100644
--- a/xen/arch/arm/kernel.c
+++ b/xen/arch/arm/kernel.c
@@ -16,7 +16,6 @@
 #include <xen/vmap.h>
 
 #include <asm/byteorder.h>
-#include <asm/fixmap.h>
 #include <asm/kernel.h>
 #include <asm/setup.h>
 
@@ -41,33 +40,6 @@ struct minimal_dtb_header {
 
 #define DTB_MAGIC 0xd00dfeedU
 
-/**
- * copy_from_paddr - copy data from a physical address
- * @dst: destination virtual address
- * @paddr: source physical address
- * @len: length to copy
- */
-void __init copy_from_paddr(void *dst, paddr_t paddr, unsigned long len)
-{
-    void *src = (void *)FIXMAP_ADDR(FIXMAP_MISC);
-
-    while (len) {
-        unsigned long l, s;
-
-        s = paddr & (PAGE_SIZE-1);
-        l = min(PAGE_SIZE - s, len);
-
-        set_fixmap(FIXMAP_MISC, maddr_to_mfn(paddr), PAGE_HYPERVISOR_WC);
-        memcpy(dst, src + s, l);
-        clean_dcache_va_range(dst, l);
-        clear_fixmap(FIXMAP_MISC);
-
-        paddr += l;
-        dst += l;
-        len -= l;
-    }
-}
-
 static void __init place_modules(struct kernel_info *info,
                                  paddr_t kernbase, paddr_t kernend)
 {
diff --git a/xen/arch/arm/mmu/setup.c b/xen/arch/arm/mmu/setup.c
index c2df976ab2..dff81f6125 100644
--- a/xen/arch/arm/mmu/setup.c
+++ b/xen/arch/arm/mmu/setup.c
@@ -339,6 +339,33 @@ void free_init_memory(void)
     printk("Freed %ldkB init memory.\n", (long)(__init_end-__init_begin)>>10);
 }
 
+/**
+ * copy_from_paddr - copy data from a physical address
+ * @dst: destination virtual address
+ * @paddr: source physical address
+ * @len: length to copy
+ */
+void __init copy_from_paddr(void *dst, paddr_t paddr, unsigned long len)
+{
+    void *src = (void *)FIXMAP_ADDR(FIXMAP_MISC);
+
+    while (len) {
+        unsigned long l, s;
+
+        s = paddr & (PAGE_SIZE-1);
+        l = min(PAGE_SIZE - s, len);
+
+        set_fixmap(FIXMAP_MISC, maddr_to_mfn(paddr), PAGE_HYPERVISOR_WC);
+        memcpy(dst, src + s, l);
+        clean_dcache_va_range(dst, l);
+        clear_fixmap(FIXMAP_MISC);
+
+        paddr += l;
+        dst += l;
+        len -= l;
+    }
+}
+
 /*
  * Local variables:
  * mode: C
-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Mon Oct 09 01:03:57 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 09 Oct 2023 01:03:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614089.955049 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qpegf-00084w-1z; Mon, 09 Oct 2023 01:03:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614089.955049; Mon, 09 Oct 2023 01: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 1qpege-00083h-Sg; Mon, 09 Oct 2023 01:03:56 +0000
Received: by outflank-mailman (input) for mailman id 614089;
 Mon, 09 Oct 2023 01:03: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=uDuw=FX=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qpege-0005Zt-Aw
 for xen-devel@lists.xenproject.org; Mon, 09 Oct 2023 01:03:56 +0000
Received: from foss.arm.com (foss.arm.com [217.140.110.172])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTP
 id b7fe8a1d-663f-11ee-98d3-6d05b1d4d9a1;
 Mon, 09 Oct 2023 03:03:55 +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 0AEC3C15;
 Sun,  8 Oct 2023 18:04:35 -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 E8ACF3F5A1;
 Sun,  8 Oct 2023 18:03: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: b7fe8a1d-663f-11ee-98d3-6d05b1d4d9a1
From: Henry Wang <Henry.Wang@arm.com>
To: xen-devel@lists.xenproject.org
Cc: Penny Zheng <penny.zheng@arm.com>,
	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>,
	Henry Wang <Henry.Wang@arm.com>
Subject: [PATCH v7 7/8] xen/arm: Rename init_secondary_pagetables() to prepare_secondary_mm()
Date: Mon,  9 Oct 2023 09:03:12 +0800
Message-Id: <20231009010313.3668423-8-Henry.Wang@arm.com>
X-Mailer: git-send-email 2.25.1
In-Reply-To: <20231009010313.3668423-1-Henry.Wang@arm.com>
References: <20231009010313.3668423-1-Henry.Wang@arm.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

From: Penny Zheng <penny.zheng@arm.com>

init_secondary_pagetables() is a function in the common code path
of both MMU and future MPU support. Since "page table" is a MMU
specific concept, rename init_secondary_pagetables() to a generic
name prepare_secondary_mm() as the preparation for MPU support.

Take the opportunity to fix the incorrect coding style of the in-code
comments.

Signed-off-by: Penny Zheng <penny.zheng@arm.com>
Signed-off-by: Henry Wang <Henry.Wang@arm.com>
---
v7:
- No change.
v6:
- Only rename init_secondary_pagetables() to prepare_secondary_mm().
---
 xen/arch/arm/arm32/head.S     | 2 +-
 xen/arch/arm/include/asm/mm.h | 8 +++++---
 xen/arch/arm/mmu/smpboot.c    | 4 ++--
 xen/arch/arm/smpboot.c        | 2 +-
 4 files changed, 9 insertions(+), 7 deletions(-)

diff --git a/xen/arch/arm/arm32/head.S b/xen/arch/arm/arm32/head.S
index 39218cf15f..c7b2efb8f0 100644
--- a/xen/arch/arm/arm32/head.S
+++ b/xen/arch/arm/arm32/head.S
@@ -257,7 +257,7 @@ GLOBAL(init_secondary)
 secondary_switched:
         /*
          * Non-boot CPUs need to move on to the proper pagetables, which were
-         * setup in init_secondary_pagetables.
+         * setup in prepare_secondary_mm.
          *
          * XXX: This is not compliant with the Arm Arm.
          */
diff --git a/xen/arch/arm/include/asm/mm.h b/xen/arch/arm/include/asm/mm.h
index d23ebc7df6..db6d889826 100644
--- a/xen/arch/arm/include/asm/mm.h
+++ b/xen/arch/arm/include/asm/mm.h
@@ -204,9 +204,11 @@ extern void setup_pagetables(unsigned long boot_phys_offset);
 extern void *early_fdt_map(paddr_t fdt_paddr);
 /* 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);
+/*
+ * Allocate and initialise pagetables for a secondary CPU.
+ * Sets init_ttbr to the new page table.
+ */
+extern int prepare_secondary_mm(int cpu);
 /* 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/mmu/smpboot.c b/xen/arch/arm/mmu/smpboot.c
index eac805c74c..f05c53a087 100644
--- a/xen/arch/arm/mmu/smpboot.c
+++ b/xen/arch/arm/mmu/smpboot.c
@@ -67,7 +67,7 @@ static void clear_boot_pagetables(void)
 }
 
 #ifdef CONFIG_ARM_64
-int init_secondary_pagetables(int cpu)
+int prepare_secondary_mm(int cpu)
 {
     clear_boot_pagetables();
 
@@ -80,7 +80,7 @@ int init_secondary_pagetables(int cpu)
     return 0;
 }
 #else
-int init_secondary_pagetables(int cpu)
+int prepare_secondary_mm(int cpu)
 {
     lpae_t *first;
 
diff --git a/xen/arch/arm/smpboot.c b/xen/arch/arm/smpboot.c
index beb137d06e..ac451e9b3e 100644
--- a/xen/arch/arm/smpboot.c
+++ b/xen/arch/arm/smpboot.c
@@ -448,7 +448,7 @@ int __cpu_up(unsigned int cpu)
 
     printk("Bringing up CPU%d\n", cpu);
 
-    rc = init_secondary_pagetables(cpu);
+    rc = prepare_secondary_mm(cpu);
     if ( rc < 0 )
         return rc;
 
-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Mon Oct 09 01:13:16 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 09 Oct 2023 01:13:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614099.955058 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qpepb-0002fQ-Ta; Mon, 09 Oct 2023 01:13:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614099.955058; Mon, 09 Oct 2023 01: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 1qpepb-0002fB-QO; Mon, 09 Oct 2023 01:13:11 +0000
Received: by outflank-mailman (input) for mailman id 614099;
 Mon, 09 Oct 2023 01: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=uDuw=FX=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qpegm-00066c-0q
 for xen-devel@lists.xenproject.org; Mon, 09 Oct 2023 01:04:04 +0000
Received: from foss.arm.com (foss.arm.com [217.140.110.172])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTP
 id baa7d72c-663f-11ee-9b0d-b553b5be7939;
 Mon, 09 Oct 2023 03:03:59 +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 94E94C15;
 Sun,  8 Oct 2023 18:04:39 -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 AB4D43F5A1;
 Sun,  8 Oct 2023 18:03: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: baa7d72c-663f-11ee-9b0d-b553b5be7939
From: Henry Wang <Henry.Wang@arm.com>
To: xen-devel@lists.xenproject.org
Cc: 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>,
	Wei Chen <wei.chen@arm.com>,
	Henry Wang <Henry.Wang@arm.com>
Subject: [PATCH v7 8/8] xen/arm: mmu: move MMU specific P2M code to mmu/p2m.{c,h}
Date: Mon,  9 Oct 2023 09:03:13 +0800
Message-Id: <20231009010313.3668423-9-Henry.Wang@arm.com>
X-Mailer: git-send-email 2.25.1
In-Reply-To: <20231009010313.3668423-1-Henry.Wang@arm.com>
References: <20231009010313.3668423-1-Henry.Wang@arm.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

From: Penny Zheng <penny.zheng@arm.com>

Current P2M implementation is designed for MMU system only.
We move the MMU-specific codes into mmu/p2m.c, and only keep generic
codes in p2m.c, like VMID allocator, etc. We also move MMU-specific
definitions and declarations to mmu/p2m.h, such as p2m_tlb_flush_sync().
Also expose previously static functions p2m_vmid_allocator_init(),
p2m_alloc_vmid(), and setup_virt_paging_one() for further MPU usage.

With the code movement, global variable max_vmid is used in multiple
files instead of a single file (and will be used in MPU P2M
implementation), declare it in the header and remove the "static" of
this variable.

Signed-off-by: Penny Zheng <penny.zheng@arm.com>
Signed-off-by: Wei Chen <wei.chen@arm.com>
Signed-off-by: Henry Wang <Henry.Wang@arm.com>
---
v7:
- No change.
v6:
- Also move relinquish_p2m_mapping() to mmu/p2m.c, make
  __p2m_set_entry() static.
- Also move p2m_clear_root_pages() and p2m_flush_vm() to mmu/p2m.c.
- Don't add #ifdef CONFIG_MMU to the p2m_tlb_flush_sync() in
  p2m_write_unlock(), this need further discussion.
- Correct typo in commit message.
v5:
- No change
v4:
- Rework the patch to drop the unnecessary changes.
- Rework the commit msg a bit.
v3:
- remove MPU stubs
- adapt to the introduction of new directories: mmu/
v2:
- new commit
---
 xen/arch/arm/include/asm/mmu/p2m.h |   18 +
 xen/arch/arm/include/asm/p2m.h     |   26 +-
 xen/arch/arm/mmu/Makefile          |    1 +
 xen/arch/arm/mmu/p2m.c             | 1736 ++++++++++++++++++++++++++
 xen/arch/arm/p2m.c                 | 1837 +---------------------------
 5 files changed, 1832 insertions(+), 1786 deletions(-)
 create mode 100644 xen/arch/arm/include/asm/mmu/p2m.h
 create mode 100644 xen/arch/arm/mmu/p2m.c

diff --git a/xen/arch/arm/include/asm/mmu/p2m.h b/xen/arch/arm/include/asm/mmu/p2m.h
new file mode 100644
index 0000000000..f829e325ce
--- /dev/null
+++ b/xen/arch/arm/include/asm/mmu/p2m.h
@@ -0,0 +1,18 @@
+/* SPDX-License-Identifier: GPL-2.0-or-later */
+#ifndef __ARM_MMU_P2M_H__
+#define __ARM_MMU_P2M_H__
+
+struct p2m_domain;
+void p2m_force_tlb_flush_sync(struct p2m_domain *p2m);
+void p2m_tlb_flush_sync(struct p2m_domain *p2m);
+
+#endif /* __ARM_MMU_P2M_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/p2m.h b/xen/arch/arm/include/asm/p2m.h
index 940495d42b..a9622dac9a 100644
--- a/xen/arch/arm/include/asm/p2m.h
+++ b/xen/arch/arm/include/asm/p2m.h
@@ -19,6 +19,22 @@ extern unsigned int p2m_root_level;
 #define P2M_ROOT_ORDER    p2m_root_order
 #define P2M_ROOT_LEVEL p2m_root_level
 
+#define MAX_VMID_8_BIT  (1UL << 8)
+#define MAX_VMID_16_BIT (1UL << 16)
+
+#define INVALID_VMID 0 /* VMID 0 is reserved */
+
+#ifdef CONFIG_ARM_64
+extern unsigned int max_vmid;
+/* VMID is by default 8 bit width on AArch64 */
+#define MAX_VMID       max_vmid
+#else
+/* VMID is always 8 bit width on AArch32 */
+#define MAX_VMID        MAX_VMID_8_BIT
+#endif
+
+#define P2M_ROOT_PAGES    (1<<P2M_ROOT_ORDER)
+
 struct domain;
 
 extern void memory_type_changed(struct domain *);
@@ -156,6 +172,10 @@ typedef enum {
 #endif
 #include <xen/p2m-common.h>
 
+#ifdef CONFIG_MMU
+#include <asm/mmu/p2m.h>
+#endif
+
 static inline bool arch_acquire_resource_check(struct domain *d)
 {
     /*
@@ -180,7 +200,11 @@ void p2m_altp2m_check(struct vcpu *v, uint16_t idx)
  */
 void p2m_restrict_ipa_bits(unsigned int ipa_bits);
 
+void p2m_vmid_allocator_init(void);
+int p2m_alloc_vmid(struct domain *d);
+
 /* Second stage paging setup, to be called on all CPUs */
+void setup_virt_paging_one(void *data);
 void setup_virt_paging(void);
 
 /* Init the datastructures for later use by the p2m code */
@@ -242,8 +266,6 @@ static inline int p2m_is_write_locked(struct p2m_domain *p2m)
     return rw_is_write_locked(&p2m->lock);
 }
 
-void p2m_tlb_flush_sync(struct p2m_domain *p2m);
-
 /* Look up the MFN corresponding to a domain's GFN. */
 mfn_t p2m_lookup(struct domain *d, gfn_t gfn, p2m_type_t *t);
 
diff --git a/xen/arch/arm/mmu/Makefile b/xen/arch/arm/mmu/Makefile
index 98aea965df..67475fcd80 100644
--- a/xen/arch/arm/mmu/Makefile
+++ b/xen/arch/arm/mmu/Makefile
@@ -1,3 +1,4 @@
+obj-y += p2m.o
 obj-y += pt.o
 obj-y += setup.o
 obj-y += smpboot.o
diff --git a/xen/arch/arm/mmu/p2m.c b/xen/arch/arm/mmu/p2m.c
new file mode 100644
index 0000000000..189c8cc564
--- /dev/null
+++ b/xen/arch/arm/mmu/p2m.c
@@ -0,0 +1,1736 @@
+/* SPDX-License-Identifier: GPL-2.0 */
+#include <xen/domain_page.h>
+#include <xen/ioreq.h>
+#include <xen/lib.h>
+#include <xen/sched.h>
+#include <xen/softirq.h>
+
+#include <asm/alternative.h>
+#include <asm/event.h>
+#include <asm/flushtlb.h>
+#include <asm/page.h>
+
+unsigned int __read_mostly p2m_root_order;
+unsigned int __read_mostly p2m_root_level;
+
+static mfn_t __read_mostly empty_root_mfn;
+
+static uint64_t generate_vttbr(uint16_t vmid, mfn_t root_mfn)
+{
+    return (mfn_to_maddr(root_mfn) | ((uint64_t)vmid << 48));
+}
+
+static struct page_info *p2m_alloc_page(struct domain *d)
+{
+    struct page_info *pg;
+
+    /*
+     * For hardware domain, there should be no limit in the number of pages that
+     * can be allocated, so that the kernel may take advantage of the extended
+     * regions. Hence, allocate p2m pages for hardware domains from heap.
+     */
+    if ( is_hardware_domain(d) )
+    {
+        pg = alloc_domheap_page(NULL, 0);
+        if ( pg == NULL )
+            printk(XENLOG_G_ERR "Failed to allocate P2M pages for hwdom.\n");
+    }
+    else
+    {
+        spin_lock(&d->arch.paging.lock);
+        pg = page_list_remove_head(&d->arch.paging.p2m_freelist);
+        spin_unlock(&d->arch.paging.lock);
+    }
+
+    return pg;
+}
+
+static void p2m_free_page(struct domain *d, struct page_info *pg)
+{
+    if ( is_hardware_domain(d) )
+        free_domheap_page(pg);
+    else
+    {
+        spin_lock(&d->arch.paging.lock);
+        page_list_add_tail(pg, &d->arch.paging.p2m_freelist);
+        spin_unlock(&d->arch.paging.lock);
+    }
+}
+
+/* Return the size of the pool, in bytes. */
+int arch_get_paging_mempool_size(struct domain *d, uint64_t *size)
+{
+    *size = (uint64_t)ACCESS_ONCE(d->arch.paging.p2m_total_pages) << PAGE_SHIFT;
+    return 0;
+}
+
+/*
+ * Set the pool of pages to the required number of pages.
+ * Returns 0 for success, non-zero for failure.
+ * Call with d->arch.paging.lock held.
+ */
+int p2m_set_allocation(struct domain *d, unsigned long pages, bool *preempted)
+{
+    struct page_info *pg;
+
+    ASSERT(spin_is_locked(&d->arch.paging.lock));
+
+    for ( ; ; )
+    {
+        if ( d->arch.paging.p2m_total_pages < pages )
+        {
+            /* Need to allocate more memory from domheap */
+            pg = alloc_domheap_page(NULL, 0);
+            if ( pg == NULL )
+            {
+                printk(XENLOG_ERR "Failed to allocate P2M pages.\n");
+                return -ENOMEM;
+            }
+            ACCESS_ONCE(d->arch.paging.p2m_total_pages) =
+                d->arch.paging.p2m_total_pages + 1;
+            page_list_add_tail(pg, &d->arch.paging.p2m_freelist);
+        }
+        else if ( d->arch.paging.p2m_total_pages > pages )
+        {
+            /* Need to return memory to domheap */
+            pg = page_list_remove_head(&d->arch.paging.p2m_freelist);
+            if( pg )
+            {
+                ACCESS_ONCE(d->arch.paging.p2m_total_pages) =
+                    d->arch.paging.p2m_total_pages - 1;
+                free_domheap_page(pg);
+            }
+            else
+            {
+                printk(XENLOG_ERR
+                       "Failed to free P2M pages, P2M freelist is empty.\n");
+                return -ENOMEM;
+            }
+        }
+        else
+            break;
+
+        /* Check to see if we need to yield and try again */
+        if ( preempted && general_preempt_check() )
+        {
+            *preempted = true;
+            return -ERESTART;
+        }
+    }
+
+    return 0;
+}
+
+int arch_set_paging_mempool_size(struct domain *d, uint64_t size)
+{
+    unsigned long pages = size >> PAGE_SHIFT;
+    bool preempted = false;
+    int rc;
+
+    if ( (size & ~PAGE_MASK) ||          /* Non page-sized request? */
+         pages != (size >> PAGE_SHIFT) ) /* 32-bit overflow? */
+        return -EINVAL;
+
+    spin_lock(&d->arch.paging.lock);
+    rc = p2m_set_allocation(d, pages, &preempted);
+    spin_unlock(&d->arch.paging.lock);
+
+    ASSERT(preempted == (rc == -ERESTART));
+
+    return rc;
+}
+
+int p2m_teardown_allocation(struct domain *d)
+{
+    int ret = 0;
+    bool preempted = false;
+
+    spin_lock(&d->arch.paging.lock);
+    if ( d->arch.paging.p2m_total_pages != 0 )
+    {
+        ret = p2m_set_allocation(d, 0, &preempted);
+        if ( preempted )
+        {
+            spin_unlock(&d->arch.paging.lock);
+            return -ERESTART;
+        }
+        ASSERT(d->arch.paging.p2m_total_pages == 0);
+    }
+    spin_unlock(&d->arch.paging.lock);
+
+    return ret;
+}
+
+void p2m_dump_info(struct domain *d)
+{
+    struct p2m_domain *p2m = p2m_get_hostp2m(d);
+
+    p2m_read_lock(p2m);
+    printk("p2m mappings for domain %d (vmid %d):\n",
+           d->domain_id, p2m->vmid);
+    BUG_ON(p2m->stats.mappings[0] || p2m->stats.shattered[0]);
+    printk("  1G mappings: %ld (shattered %ld)\n",
+           p2m->stats.mappings[1], p2m->stats.shattered[1]);
+    printk("  2M mappings: %ld (shattered %ld)\n",
+           p2m->stats.mappings[2], p2m->stats.shattered[2]);
+    printk("  4K mappings: %ld\n", p2m->stats.mappings[3]);
+    p2m_read_unlock(p2m);
+}
+
+/*
+ * p2m_save_state and p2m_restore_state work in pair to workaround
+ * ARM64_WORKAROUND_AT_SPECULATE. p2m_save_state will set-up VTTBR to
+ * point to the empty page-tables to stop allocating TLB entries.
+ */
+void p2m_save_state(struct vcpu *p)
+{
+    p->arch.sctlr = READ_SYSREG(SCTLR_EL1);
+
+    if ( cpus_have_const_cap(ARM64_WORKAROUND_AT_SPECULATE) )
+    {
+        WRITE_SYSREG64(generate_vttbr(INVALID_VMID, empty_root_mfn), VTTBR_EL2);
+        /*
+         * Ensure VTTBR_EL2 is correctly synchronized so we can restore
+         * the next vCPU context without worrying about AT instruction
+         * speculation.
+         */
+        isb();
+    }
+}
+
+void p2m_restore_state(struct vcpu *n)
+{
+    struct p2m_domain *p2m = p2m_get_hostp2m(n->domain);
+    uint8_t *last_vcpu_ran;
+
+    if ( is_idle_vcpu(n) )
+        return;
+
+    WRITE_SYSREG(n->arch.sctlr, SCTLR_EL1);
+    WRITE_SYSREG(n->arch.hcr_el2, HCR_EL2);
+
+    /*
+     * ARM64_WORKAROUND_AT_SPECULATE: VTTBR_EL2 should be restored after all
+     * registers associated to EL1/EL0 translations regime have been
+     * synchronized.
+     */
+    asm volatile(ALTERNATIVE("nop", "isb", ARM64_WORKAROUND_AT_SPECULATE));
+    WRITE_SYSREG64(p2m->vttbr, VTTBR_EL2);
+
+    last_vcpu_ran = &p2m->last_vcpu_ran[smp_processor_id()];
+
+    /*
+     * While we are restoring an out-of-context translation regime
+     * we still need to ensure:
+     *  - VTTBR_EL2 is synchronized before flushing the TLBs
+     *  - All registers for EL1 are synchronized before executing an AT
+     *  instructions targeting S1/S2.
+     */
+    isb();
+
+    /*
+     * Flush local TLB for the domain to prevent wrong TLB translation
+     * when running multiple vCPU of the same domain on a single pCPU.
+     */
+    if ( *last_vcpu_ran != INVALID_VCPU_ID && *last_vcpu_ran != n->vcpu_id )
+        flush_guest_tlb_local();
+
+    *last_vcpu_ran = n->vcpu_id;
+}
+
+/*
+ * Force a synchronous P2M TLB flush.
+ *
+ * Must be called with the p2m lock held.
+ */
+void p2m_force_tlb_flush_sync(struct p2m_domain *p2m)
+{
+    unsigned long flags = 0;
+    uint64_t ovttbr;
+
+    ASSERT(p2m_is_write_locked(p2m));
+
+    /*
+     * ARM only provides an instruction to flush TLBs for the current
+     * VMID. So switch to the VTTBR of a given P2M if different.
+     */
+    ovttbr = READ_SYSREG64(VTTBR_EL2);
+    if ( ovttbr != p2m->vttbr )
+    {
+        uint64_t vttbr;
+
+        local_irq_save(flags);
+
+        /*
+         * ARM64_WORKAROUND_AT_SPECULATE: We need to stop AT to allocate
+         * TLBs entries because the context is partially modified. We
+         * only need the VMID for flushing the TLBs, so we can generate
+         * a new VTTBR with the VMID to flush and the empty root table.
+         */
+        if ( !cpus_have_const_cap(ARM64_WORKAROUND_AT_SPECULATE) )
+            vttbr = p2m->vttbr;
+        else
+            vttbr = generate_vttbr(p2m->vmid, empty_root_mfn);
+
+        WRITE_SYSREG64(vttbr, VTTBR_EL2);
+
+        /* Ensure VTTBR_EL2 is synchronized before flushing the TLBs */
+        isb();
+    }
+
+    flush_guest_tlb();
+
+    if ( ovttbr != READ_SYSREG64(VTTBR_EL2) )
+    {
+        WRITE_SYSREG64(ovttbr, VTTBR_EL2);
+        /* Ensure VTTBR_EL2 is back in place before continuing. */
+        isb();
+        local_irq_restore(flags);
+    }
+
+    p2m->need_flush = false;
+}
+
+void p2m_tlb_flush_sync(struct p2m_domain *p2m)
+{
+    if ( p2m->need_flush )
+        p2m_force_tlb_flush_sync(p2m);
+}
+
+/*
+ * Find and map the root page table. The caller is responsible for
+ * unmapping the table.
+ *
+ * The function will return NULL if the offset of the root table is
+ * invalid.
+ */
+static lpae_t *p2m_get_root_pointer(struct p2m_domain *p2m,
+                                    gfn_t gfn)
+{
+    unsigned long root_table;
+
+    /*
+     * While the root table index is the offset from the previous level,
+     * we can't use (P2M_ROOT_LEVEL - 1) because the root level might be
+     * 0. Yet we still want to check if all the unused bits are zeroed.
+     */
+    root_table = gfn_x(gfn) >> (XEN_PT_LEVEL_ORDER(P2M_ROOT_LEVEL) +
+                                XEN_PT_LPAE_SHIFT);
+    if ( root_table >= P2M_ROOT_PAGES )
+        return NULL;
+
+    return __map_domain_page(p2m->root + root_table);
+}
+
+/*
+ * Lookup the MFN corresponding to a domain's GFN.
+ * Lookup mem access in the ratrix tree.
+ * The entries associated to the GFN is considered valid.
+ */
+static p2m_access_t p2m_mem_access_radix_get(struct p2m_domain *p2m, gfn_t gfn)
+{
+    void *ptr;
+
+    if ( !p2m->mem_access_enabled )
+        return p2m->default_access;
+
+    ptr = radix_tree_lookup(&p2m->mem_access_settings, gfn_x(gfn));
+    if ( !ptr )
+        return p2m_access_rwx;
+    else
+        return radix_tree_ptr_to_int(ptr);
+}
+
+/*
+ * In the case of the P2M, the valid bit is used for other purpose. Use
+ * the type to check whether an entry is valid.
+ */
+static inline bool p2m_is_valid(lpae_t pte)
+{
+    return pte.p2m.type != p2m_invalid;
+}
+
+/*
+ * lpae_is_* helpers don't check whether the valid bit is set in the
+ * PTE. Provide our own overlay to check the valid bit.
+ */
+static inline bool p2m_is_mapping(lpae_t pte, unsigned int level)
+{
+    return p2m_is_valid(pte) && lpae_is_mapping(pte, level);
+}
+
+static inline bool p2m_is_superpage(lpae_t pte, unsigned int level)
+{
+    return p2m_is_valid(pte) && lpae_is_superpage(pte, level);
+}
+
+#define GUEST_TABLE_MAP_FAILED 0
+#define GUEST_TABLE_SUPER_PAGE 1
+#define GUEST_TABLE_NORMAL_PAGE 2
+
+static int p2m_create_table(struct p2m_domain *p2m, lpae_t *entry);
+
+/*
+ * Take the currently mapped table, find the corresponding GFN entry,
+ * and map the next table, if available. The previous table will be
+ * unmapped if the next level was mapped (e.g GUEST_TABLE_NORMAL_PAGE
+ * returned).
+ *
+ * The read_only parameters indicates whether intermediate tables should
+ * be allocated when not present.
+ *
+ * Return values:
+ *  GUEST_TABLE_MAP_FAILED: Either read_only was set and the entry
+ *  was empty, or allocating a new page failed.
+ *  GUEST_TABLE_NORMAL_PAGE: next level mapped normally
+ *  GUEST_TABLE_SUPER_PAGE: The next entry points to a superpage.
+ */
+static int p2m_next_level(struct p2m_domain *p2m, bool read_only,
+                          unsigned int level, lpae_t **table,
+                          unsigned int offset)
+{
+    lpae_t *entry;
+    int ret;
+    mfn_t mfn;
+
+    entry = *table + offset;
+
+    if ( !p2m_is_valid(*entry) )
+    {
+        if ( read_only )
+            return GUEST_TABLE_MAP_FAILED;
+
+        ret = p2m_create_table(p2m, entry);
+        if ( ret )
+            return GUEST_TABLE_MAP_FAILED;
+    }
+
+    /* The function p2m_next_level is never called at the 3rd level */
+    ASSERT(level < 3);
+    if ( p2m_is_mapping(*entry, level) )
+        return GUEST_TABLE_SUPER_PAGE;
+
+    mfn = lpae_get_mfn(*entry);
+
+    unmap_domain_page(*table);
+    *table = map_domain_page(mfn);
+
+    return GUEST_TABLE_NORMAL_PAGE;
+}
+
+/*
+ * Get the details of a given gfn.
+ *
+ * If the entry is present, the associated MFN will be returned and the
+ * access and type filled up. The page_order will correspond to the
+ * order of the mapping in the page table (i.e it could be a superpage).
+ *
+ * If the entry is not present, INVALID_MFN will be returned and the
+ * page_order will be set according to the order of the invalid range.
+ *
+ * valid will contain the value of bit[0] (e.g valid bit) of the
+ * entry.
+ */
+mfn_t p2m_get_entry(struct p2m_domain *p2m, gfn_t gfn,
+                    p2m_type_t *t, p2m_access_t *a,
+                    unsigned int *page_order,
+                    bool *valid)
+{
+    paddr_t addr = gfn_to_gaddr(gfn);
+    unsigned int level = 0;
+    lpae_t entry, *table;
+    int rc;
+    mfn_t mfn = INVALID_MFN;
+    p2m_type_t _t;
+    DECLARE_OFFSETS(offsets, addr);
+
+    ASSERT(p2m_is_locked(p2m));
+    BUILD_BUG_ON(THIRD_MASK != PAGE_MASK);
+
+    /* Allow t to be NULL */
+    t = t ?: &_t;
+
+    *t = p2m_invalid;
+
+    if ( valid )
+        *valid = false;
+
+    /* XXX: Check if the mapping is lower than the mapped gfn */
+
+    /* This gfn is higher than the highest the p2m map currently holds */
+    if ( gfn_x(gfn) > gfn_x(p2m->max_mapped_gfn) )
+    {
+        for ( level = P2M_ROOT_LEVEL; level < 3; level++ )
+            if ( (gfn_x(gfn) & (XEN_PT_LEVEL_MASK(level) >> PAGE_SHIFT)) >
+                 gfn_x(p2m->max_mapped_gfn) )
+                break;
+
+        goto out;
+    }
+
+    table = p2m_get_root_pointer(p2m, gfn);
+
+    /*
+     * the table should always be non-NULL because the gfn is below
+     * p2m->max_mapped_gfn and the root table pages are always present.
+     */
+    if ( !table )
+    {
+        ASSERT_UNREACHABLE();
+        level = P2M_ROOT_LEVEL;
+        goto out;
+    }
+
+    for ( level = P2M_ROOT_LEVEL; level < 3; level++ )
+    {
+        rc = p2m_next_level(p2m, true, level, &table, offsets[level]);
+        if ( rc == GUEST_TABLE_MAP_FAILED )
+            goto out_unmap;
+        else if ( rc != GUEST_TABLE_NORMAL_PAGE )
+            break;
+    }
+
+    entry = table[offsets[level]];
+
+    if ( p2m_is_valid(entry) )
+    {
+        *t = entry.p2m.type;
+
+        if ( a )
+            *a = p2m_mem_access_radix_get(p2m, gfn);
+
+        mfn = lpae_get_mfn(entry);
+        /*
+         * The entry may point to a superpage. Find the MFN associated
+         * to the GFN.
+         */
+        mfn = mfn_add(mfn,
+                      gfn_x(gfn) & ((1UL << XEN_PT_LEVEL_ORDER(level)) - 1));
+
+        if ( valid )
+            *valid = lpae_is_valid(entry);
+    }
+
+out_unmap:
+    unmap_domain_page(table);
+
+out:
+    if ( page_order )
+        *page_order = XEN_PT_LEVEL_ORDER(level);
+
+    return mfn;
+}
+
+static void p2m_set_permission(lpae_t *e, p2m_type_t t, p2m_access_t a)
+{
+    /* First apply type permissions */
+    switch ( t )
+    {
+    case p2m_ram_rw:
+        e->p2m.xn = 0;
+        e->p2m.write = 1;
+        break;
+
+    case p2m_ram_ro:
+        e->p2m.xn = 0;
+        e->p2m.write = 0;
+        break;
+
+    case p2m_iommu_map_rw:
+    case p2m_map_foreign_rw:
+    case p2m_grant_map_rw:
+    case p2m_mmio_direct_dev:
+    case p2m_mmio_direct_nc:
+    case p2m_mmio_direct_c:
+        e->p2m.xn = 1;
+        e->p2m.write = 1;
+        break;
+
+    case p2m_iommu_map_ro:
+    case p2m_map_foreign_ro:
+    case p2m_grant_map_ro:
+    case p2m_invalid:
+        e->p2m.xn = 1;
+        e->p2m.write = 0;
+        break;
+
+    case p2m_max_real_type:
+        BUG();
+        break;
+    }
+
+    /* Then restrict with access permissions */
+    switch ( a )
+    {
+    case p2m_access_rwx:
+        break;
+    case p2m_access_wx:
+        e->p2m.read = 0;
+        break;
+    case p2m_access_rw:
+        e->p2m.xn = 1;
+        break;
+    case p2m_access_w:
+        e->p2m.read = 0;
+        e->p2m.xn = 1;
+        break;
+    case p2m_access_rx:
+    case p2m_access_rx2rw:
+        e->p2m.write = 0;
+        break;
+    case p2m_access_x:
+        e->p2m.write = 0;
+        e->p2m.read = 0;
+        break;
+    case p2m_access_r:
+        e->p2m.write = 0;
+        e->p2m.xn = 1;
+        break;
+    case p2m_access_n:
+    case p2m_access_n2rwx:
+        e->p2m.read = e->p2m.write = 0;
+        e->p2m.xn = 1;
+        break;
+    }
+}
+
+static lpae_t mfn_to_p2m_entry(mfn_t mfn, p2m_type_t t, p2m_access_t a)
+{
+    /*
+     * sh, xn and write bit will be defined in the following switches
+     * based on mattr and t.
+     */
+    lpae_t e = (lpae_t) {
+        .p2m.af = 1,
+        .p2m.read = 1,
+        .p2m.table = 1,
+        .p2m.valid = 1,
+        .p2m.type = t,
+    };
+
+    BUILD_BUG_ON(p2m_max_real_type > (1 << 4));
+
+    switch ( t )
+    {
+    case p2m_mmio_direct_dev:
+        e.p2m.mattr = MATTR_DEV;
+        e.p2m.sh = LPAE_SH_OUTER;
+        break;
+
+    case p2m_mmio_direct_c:
+        e.p2m.mattr = MATTR_MEM;
+        e.p2m.sh = LPAE_SH_OUTER;
+        break;
+
+    /*
+     * ARM ARM: Overlaying the shareability attribute (DDI
+     * 0406C.b B3-1376 to 1377)
+     *
+     * A memory region with a resultant memory type attribute of Normal,
+     * and a resultant cacheability attribute of Inner Non-cacheable,
+     * Outer Non-cacheable, must have a resultant shareability attribute
+     * of Outer Shareable, otherwise shareability is UNPREDICTABLE.
+     *
+     * On ARMv8 shareability is ignored and explicitly treated as Outer
+     * Shareable for Normal Inner Non_cacheable, Outer Non-cacheable.
+     * See the note for table D4-40, in page 1788 of the ARM DDI 0487A.j.
+     */
+    case p2m_mmio_direct_nc:
+        e.p2m.mattr = MATTR_MEM_NC;
+        e.p2m.sh = LPAE_SH_OUTER;
+        break;
+
+    default:
+        e.p2m.mattr = MATTR_MEM;
+        e.p2m.sh = LPAE_SH_INNER;
+    }
+
+    p2m_set_permission(&e, t, a);
+
+    ASSERT(!(mfn_to_maddr(mfn) & ~PADDR_MASK));
+
+    lpae_set_mfn(e, mfn);
+
+    return e;
+}
+
+/* Generate table entry with correct attributes. */
+static lpae_t page_to_p2m_table(struct page_info *page)
+{
+    /*
+     * The access value does not matter because the hardware will ignore
+     * the permission fields for table entry.
+     *
+     * We use p2m_ram_rw so the entry has a valid type. This is important
+     * for p2m_is_valid() to return valid on table entries.
+     */
+    return mfn_to_p2m_entry(page_to_mfn(page), p2m_ram_rw, p2m_access_rwx);
+}
+
+static inline void p2m_write_pte(lpae_t *p, lpae_t pte, bool clean_pte)
+{
+    write_pte(p, pte);
+    if ( clean_pte )
+        clean_dcache(*p);
+}
+
+static inline void p2m_remove_pte(lpae_t *p, bool clean_pte)
+{
+    lpae_t pte;
+
+    memset(&pte, 0x00, sizeof(pte));
+    p2m_write_pte(p, pte, clean_pte);
+}
+
+/* Allocate a new page table page and hook it in via the given entry. */
+static int p2m_create_table(struct p2m_domain *p2m, lpae_t *entry)
+{
+    struct page_info *page;
+    lpae_t *p;
+
+    ASSERT(!p2m_is_valid(*entry));
+
+    page = p2m_alloc_page(p2m->domain);
+    if ( page == NULL )
+        return -ENOMEM;
+
+    page_list_add(page, &p2m->pages);
+
+    p = __map_domain_page(page);
+    clear_page(p);
+
+    if ( p2m->clean_pte )
+        clean_dcache_va_range(p, PAGE_SIZE);
+
+    unmap_domain_page(p);
+
+    p2m_write_pte(entry, page_to_p2m_table(page), p2m->clean_pte);
+
+    return 0;
+}
+
+static int p2m_mem_access_radix_set(struct p2m_domain *p2m, gfn_t gfn,
+                                    p2m_access_t a)
+{
+    int rc;
+
+    if ( !p2m->mem_access_enabled )
+        return 0;
+
+    if ( p2m_access_rwx == a )
+    {
+        radix_tree_delete(&p2m->mem_access_settings, gfn_x(gfn));
+        return 0;
+    }
+
+    rc = radix_tree_insert(&p2m->mem_access_settings, gfn_x(gfn),
+                           radix_tree_int_to_ptr(a));
+    if ( rc == -EEXIST )
+    {
+        /* If a setting already exists, change it to the new one */
+        radix_tree_replace_slot(
+            radix_tree_lookup_slot(
+                &p2m->mem_access_settings, gfn_x(gfn)),
+            radix_tree_int_to_ptr(a));
+        rc = 0;
+    }
+
+    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)
+{
+    mfn_t mfn = lpae_get_mfn(pte);
+
+    ASSERT(p2m_is_valid(pte));
+
+    /*
+     * TODO: Handle other p2m types
+     *
+     * It's safe to do the put_page here because page_alloc will
+     * flush the TLBs if the page is reallocated before the end of
+     * this loop.
+     */
+    if ( p2m_is_foreign(pte.p2m.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) )
+        page_set_xenheap_gfn(mfn_to_page(mfn), INVALID_GFN);
+}
+
+/* Free lpae sub-tree behind an entry */
+static void p2m_free_entry(struct p2m_domain *p2m,
+                           lpae_t entry, unsigned int level)
+{
+    unsigned int i;
+    lpae_t *table;
+    mfn_t mfn;
+    struct page_info *pg;
+
+    /* Nothing to do if the entry is invalid. */
+    if ( !p2m_is_valid(entry) )
+        return;
+
+    if ( p2m_is_superpage(entry, level) || (level == 3) )
+    {
+#ifdef CONFIG_IOREQ_SERVER
+        /*
+         * If this gets called then either the entry was replaced by an entry
+         * with a different base (valid case) or the shattering of a superpage
+         * has failed (error case).
+         * So, at worst, the spurious mapcache invalidation might be sent.
+         */
+        if ( p2m_is_ram(entry.p2m.type) &&
+             domain_has_ioreq_server(p2m->domain) )
+            ioreq_request_mapcache_invalidate(p2m->domain);
+#endif
+
+        p2m->stats.mappings[level]--;
+        /* Nothing to do if the entry is a super-page. */
+        if ( level == 3 )
+            p2m_put_l3_page(entry);
+        return;
+    }
+
+    table = map_domain_page(lpae_get_mfn(entry));
+    for ( i = 0; i < XEN_PT_LPAE_ENTRIES; i++ )
+        p2m_free_entry(p2m, *(table + i), level + 1);
+
+    unmap_domain_page(table);
+
+    /*
+     * Make sure all the references in the TLB have been removed before
+     * freing the intermediate page table.
+     * XXX: Should we defer the free of the page table to avoid the
+     * flush?
+     */
+    p2m_tlb_flush_sync(p2m);
+
+    mfn = lpae_get_mfn(entry);
+    ASSERT(mfn_valid(mfn));
+
+    pg = mfn_to_page(mfn);
+
+    page_list_del(pg, &p2m->pages);
+    p2m_free_page(p2m->domain, pg);
+}
+
+static bool p2m_split_superpage(struct p2m_domain *p2m, lpae_t *entry,
+                                unsigned int level, unsigned int target,
+                                const unsigned int *offsets)
+{
+    struct page_info *page;
+    unsigned int i;
+    lpae_t pte, *table;
+    bool rv = true;
+
+    /* Convenience aliases */
+    mfn_t mfn = lpae_get_mfn(*entry);
+    unsigned int next_level = level + 1;
+    unsigned int level_order = XEN_PT_LEVEL_ORDER(next_level);
+
+    /*
+     * This should only be called with target != level and the entry is
+     * a superpage.
+     */
+    ASSERT(level < target);
+    ASSERT(p2m_is_superpage(*entry, level));
+
+    page = p2m_alloc_page(p2m->domain);
+    if ( !page )
+        return false;
+
+    page_list_add(page, &p2m->pages);
+    table = __map_domain_page(page);
+
+    /*
+     * We are either splitting a first level 1G page into 512 second level
+     * 2M pages, or a second level 2M page into 512 third level 4K pages.
+     */
+    for ( i = 0; i < XEN_PT_LPAE_ENTRIES; i++ )
+    {
+        lpae_t *new_entry = table + i;
+
+        /*
+         * Use the content of the superpage entry and override
+         * the necessary fields. So the correct permission are kept.
+         */
+        pte = *entry;
+        lpae_set_mfn(pte, mfn_add(mfn, i << level_order));
+
+        /*
+         * First and second level pages set p2m.table = 0, but third
+         * level entries set p2m.table = 1.
+         */
+        pte.p2m.table = (next_level == 3);
+
+        write_pte(new_entry, pte);
+    }
+
+    /* Update stats */
+    p2m->stats.shattered[level]++;
+    p2m->stats.mappings[level]--;
+    p2m->stats.mappings[next_level] += XEN_PT_LPAE_ENTRIES;
+
+    /*
+     * Shatter superpage in the page to the level we want to make the
+     * changes.
+     * This is done outside the loop to avoid checking the offset to
+     * know whether the entry should be shattered for every entry.
+     */
+    if ( next_level != target )
+        rv = p2m_split_superpage(p2m, table + offsets[next_level],
+                                 level + 1, target, offsets);
+
+    if ( p2m->clean_pte )
+        clean_dcache_va_range(table, PAGE_SIZE);
+
+    unmap_domain_page(table);
+
+    /*
+     * Even if we failed, we should install the newly allocated LPAE
+     * entry. The caller will be in charge to free the sub-tree.
+     */
+    p2m_write_pte(entry, page_to_p2m_table(page), p2m->clean_pte);
+
+    return rv;
+}
+
+/*
+ * Insert an entry in the p2m. This should be called with a mapping
+ * equal to a page/superpage (4K, 2M, 1G).
+ */
+static int __p2m_set_entry(struct p2m_domain *p2m,
+                           gfn_t sgfn,
+                           unsigned int page_order,
+                           mfn_t smfn,
+                           p2m_type_t t,
+                           p2m_access_t a)
+{
+    unsigned int level = 0;
+    unsigned int target = 3 - (page_order / XEN_PT_LPAE_SHIFT);
+    lpae_t *entry, *table, orig_pte;
+    int rc;
+    /* A mapping is removed if the MFN is invalid. */
+    bool removing_mapping = mfn_eq(smfn, INVALID_MFN);
+    DECLARE_OFFSETS(offsets, gfn_to_gaddr(sgfn));
+
+    ASSERT(p2m_is_write_locked(p2m));
+
+    /*
+     * Check if the level target is valid: we only support
+     * 4K - 2M - 1G mapping.
+     */
+    ASSERT(target > 0 && target <= 3);
+
+    table = p2m_get_root_pointer(p2m, sgfn);
+    if ( !table )
+        return -EINVAL;
+
+    for ( level = P2M_ROOT_LEVEL; level < target; level++ )
+    {
+        /*
+         * Don't try to allocate intermediate page table if the mapping
+         * is about to be removed.
+         */
+        rc = p2m_next_level(p2m, removing_mapping,
+                            level, &table, offsets[level]);
+        if ( rc == GUEST_TABLE_MAP_FAILED )
+        {
+            /*
+             * We are here because p2m_next_level has failed to map
+             * the intermediate page table (e.g the table does not exist
+             * and they p2m tree is read-only). It is a valid case
+             * when removing a mapping as it may not exist in the
+             * page table. In this case, just ignore it.
+             */
+            rc = removing_mapping ?  0 : -ENOENT;
+            goto out;
+        }
+        else if ( rc != GUEST_TABLE_NORMAL_PAGE )
+            break;
+    }
+
+    entry = table + offsets[level];
+
+    /*
+     * If we are here with level < target, we must be at a leaf node,
+     * and we need to break up the superpage.
+     */
+    if ( level < target )
+    {
+        /* We need to split the original page. */
+        lpae_t split_pte = *entry;
+
+        ASSERT(p2m_is_superpage(*entry, level));
+
+        if ( !p2m_split_superpage(p2m, &split_pte, level, target, offsets) )
+        {
+            /*
+             * The current super-page is still in-place, so re-increment
+             * the stats.
+             */
+            p2m->stats.mappings[level]++;
+
+            /* Free the allocated sub-tree */
+            p2m_free_entry(p2m, split_pte, level);
+
+            rc = -ENOMEM;
+            goto out;
+        }
+
+        /*
+         * Follow the break-before-sequence to update the entry.
+         * For more details see (D4.7.1 in ARM DDI 0487A.j).
+         */
+        p2m_remove_pte(entry, p2m->clean_pte);
+        p2m_force_tlb_flush_sync(p2m);
+
+        p2m_write_pte(entry, split_pte, p2m->clean_pte);
+
+        /* then move to the level we want to make real changes */
+        for ( ; level < target; level++ )
+        {
+            rc = p2m_next_level(p2m, true, level, &table, offsets[level]);
+
+            /*
+             * The entry should be found and either be a table
+             * or a superpage if level 3 is not targeted
+             */
+            ASSERT(rc == GUEST_TABLE_NORMAL_PAGE ||
+                   (rc == GUEST_TABLE_SUPER_PAGE && target < 3));
+        }
+
+        entry = table + offsets[level];
+    }
+
+    /*
+     * We should always be there with the correct level because
+     * all the intermediate tables have been installed if necessary.
+     */
+    ASSERT(level == target);
+
+    orig_pte = *entry;
+
+    /*
+     * The radix-tree can only work on 4KB. This is only used when
+     * memaccess is enabled and during shutdown.
+     */
+    ASSERT(!p2m->mem_access_enabled || page_order == 0 ||
+           p2m->domain->is_dying);
+    /*
+     * The access type should always be p2m_access_rwx when the mapping
+     * is removed.
+     */
+    ASSERT(!mfn_eq(INVALID_MFN, smfn) || (a == p2m_access_rwx));
+    /*
+     * Update the mem access permission before update the P2M. So we
+     * don't have to revert the mapping if it has failed.
+     */
+    rc = p2m_mem_access_radix_set(p2m, sgfn, a);
+    if ( rc )
+        goto out;
+
+    /*
+     * Always remove the entry in order to follow the break-before-make
+     * sequence when updating the translation table (D4.7.1 in ARM DDI
+     * 0487A.j).
+     */
+    if ( lpae_is_valid(orig_pte) || removing_mapping )
+        p2m_remove_pte(entry, p2m->clean_pte);
+
+    if ( removing_mapping )
+        /* Flush can be deferred if the entry is removed */
+        p2m->need_flush |= !!lpae_is_valid(orig_pte);
+    else
+    {
+        lpae_t pte = mfn_to_p2m_entry(smfn, t, a);
+
+        if ( level < 3 )
+            pte.p2m.table = 0; /* Superpage entry */
+
+        /*
+         * It is necessary to flush the TLB before writing the new entry
+         * to keep coherency when the previous entry was valid.
+         *
+         * Although, it could be defered when only the permissions are
+         * changed (e.g in case of memaccess).
+         */
+        if ( lpae_is_valid(orig_pte) )
+        {
+            if ( likely(!p2m->mem_access_enabled) ||
+                 P2M_CLEAR_PERM(pte) != P2M_CLEAR_PERM(orig_pte) )
+                p2m_force_tlb_flush_sync(p2m);
+            else
+                p2m->need_flush = true;
+        }
+        else if ( !p2m_is_valid(orig_pte) ) /* new mapping */
+            p2m->stats.mappings[level]++;
+
+        p2m_write_pte(entry, pte, p2m->clean_pte);
+
+        p2m->max_mapped_gfn = gfn_max(p2m->max_mapped_gfn,
+                                      gfn_add(sgfn, (1UL << page_order) - 1));
+        p2m->lowest_mapped_gfn = gfn_min(p2m->lowest_mapped_gfn, sgfn);
+    }
+
+    if ( is_iommu_enabled(p2m->domain) &&
+         (lpae_is_valid(orig_pte) || lpae_is_valid(*entry)) )
+    {
+        unsigned int flush_flags = 0;
+
+        if ( lpae_is_valid(orig_pte) )
+            flush_flags |= IOMMU_FLUSHF_modified;
+        if ( lpae_is_valid(*entry) )
+            flush_flags |= IOMMU_FLUSHF_added;
+
+        rc = iommu_iotlb_flush(p2m->domain, _dfn(gfn_x(sgfn)),
+                               1UL << page_order, flush_flags);
+    }
+    else
+        rc = 0;
+
+    /*
+     * Free the entry only if the original pte was valid and the base
+     * is different (to avoid freeing when permission is changed).
+     */
+    if ( p2m_is_valid(orig_pte) &&
+         !mfn_eq(lpae_get_mfn(*entry), lpae_get_mfn(orig_pte)) )
+        p2m_free_entry(p2m, orig_pte, level);
+
+out:
+    unmap_domain_page(table);
+
+    return rc;
+}
+
+int p2m_set_entry(struct p2m_domain *p2m,
+                  gfn_t sgfn,
+                  unsigned long nr,
+                  mfn_t smfn,
+                  p2m_type_t t,
+                  p2m_access_t a)
+{
+    int rc = 0;
+
+    /*
+     * Any reference taken by the P2M mappings (e.g. foreign mapping) will
+     * be dropped in relinquish_p2m_mapping(). As the P2M will still
+     * be accessible after, we need to prevent mapping to be added when the
+     * domain is dying.
+     */
+    if ( unlikely(p2m->domain->is_dying) )
+        return -ENOMEM;
+
+    while ( nr )
+    {
+        unsigned long mask;
+        unsigned long order;
+
+        /*
+         * Don't take into account the MFN when removing mapping (i.e
+         * MFN_INVALID) to calculate the correct target order.
+         *
+         * XXX: Support superpage mappings if nr is not aligned to a
+         * superpage size.
+         */
+        mask = !mfn_eq(smfn, INVALID_MFN) ? mfn_x(smfn) : 0;
+        mask |= gfn_x(sgfn) | nr;
+
+        /* Always map 4k by 4k when memaccess is enabled */
+        if ( unlikely(p2m->mem_access_enabled) )
+            order = THIRD_ORDER;
+        else if ( !(mask & ((1UL << FIRST_ORDER) - 1)) )
+            order = FIRST_ORDER;
+        else if ( !(mask & ((1UL << SECOND_ORDER) - 1)) )
+            order = SECOND_ORDER;
+        else
+            order = THIRD_ORDER;
+
+        rc = __p2m_set_entry(p2m, sgfn, order, smfn, t, a);
+        if ( rc )
+            break;
+
+        sgfn = gfn_add(sgfn, (1 << order));
+        if ( !mfn_eq(smfn, INVALID_MFN) )
+           smfn = mfn_add(smfn, (1 << order));
+
+        nr -= (1 << order);
+    }
+
+    return rc;
+}
+
+/* Invalidate all entries in the table. The p2m should be write locked. */
+static void p2m_invalidate_table(struct p2m_domain *p2m, mfn_t mfn)
+{
+    lpae_t *table;
+    unsigned int i;
+
+    ASSERT(p2m_is_write_locked(p2m));
+
+    table = map_domain_page(mfn);
+
+    for ( i = 0; i < XEN_PT_LPAE_ENTRIES; i++ )
+    {
+        lpae_t pte = table[i];
+
+        /*
+         * Writing an entry can be expensive because it may involve
+         * cleaning the cache. So avoid updating the entry if the valid
+         * bit is already cleared.
+         */
+        if ( !pte.p2m.valid )
+            continue;
+
+        pte.p2m.valid = 0;
+
+        p2m_write_pte(&table[i], pte, p2m->clean_pte);
+    }
+
+    unmap_domain_page(table);
+
+    p2m->need_flush = true;
+}
+
+/*
+ * The domain will not be scheduled anymore, so in theory we should
+ * not need to flush the TLBs. Do it for safety purpose.
+ * Note that all the devices have already been de-assigned. So we don't
+ * need to flush the IOMMU TLB here.
+ */
+void p2m_clear_root_pages(struct p2m_domain *p2m)
+{
+    unsigned int i;
+
+    p2m_write_lock(p2m);
+
+    for ( i = 0; i < P2M_ROOT_PAGES; i++ )
+        clear_and_clean_page(p2m->root + i);
+
+    p2m_force_tlb_flush_sync(p2m);
+
+    p2m_write_unlock(p2m);
+}
+
+/*
+ * Invalidate all entries in the root page-tables. This is
+ * useful to get fault on entry and do an action.
+ *
+ * p2m_invalid_root() should not be called when the P2M is shared with
+ * the IOMMU because it will cause IOMMU fault.
+ */
+void p2m_invalidate_root(struct p2m_domain *p2m)
+{
+    unsigned int i;
+
+    ASSERT(!iommu_use_hap_pt(p2m->domain));
+
+    p2m_write_lock(p2m);
+
+    for ( i = 0; i < P2M_ROOT_LEVEL; i++ )
+        p2m_invalidate_table(p2m, page_to_mfn(p2m->root + i));
+
+    p2m_write_unlock(p2m);
+}
+
+/*
+ * Resolve any translation fault due to change in the p2m. This
+ * includes break-before-make and valid bit cleared.
+ */
+bool p2m_resolve_translation_fault(struct domain *d, gfn_t gfn)
+{
+    struct p2m_domain *p2m = p2m_get_hostp2m(d);
+    unsigned int level = 0;
+    bool resolved = false;
+    lpae_t entry, *table;
+
+    /* Convenience aliases */
+    DECLARE_OFFSETS(offsets, gfn_to_gaddr(gfn));
+
+    p2m_write_lock(p2m);
+
+    /* This gfn is higher than the highest the p2m map currently holds */
+    if ( gfn_x(gfn) > gfn_x(p2m->max_mapped_gfn) )
+        goto out;
+
+    table = p2m_get_root_pointer(p2m, gfn);
+    /*
+     * The table should always be non-NULL because the gfn is below
+     * p2m->max_mapped_gfn and the root table pages are always present.
+     */
+    if ( !table )
+    {
+        ASSERT_UNREACHABLE();
+        goto out;
+    }
+
+    /*
+     * Go down the page-tables until an entry has the valid bit unset or
+     * a block/page entry has been hit.
+     */
+    for ( level = P2M_ROOT_LEVEL; level <= 3; level++ )
+    {
+        int rc;
+
+        entry = table[offsets[level]];
+
+        if ( level == 3 )
+            break;
+
+        /* Stop as soon as we hit an entry with the valid bit unset. */
+        if ( !lpae_is_valid(entry) )
+            break;
+
+        rc = p2m_next_level(p2m, true, level, &table, offsets[level]);
+        if ( rc == GUEST_TABLE_MAP_FAILED )
+            goto out_unmap;
+        else if ( rc != GUEST_TABLE_NORMAL_PAGE )
+            break;
+    }
+
+    /*
+     * If the valid bit of the entry is set, it means someone was playing with
+     * the Stage-2 page table. Nothing to do and mark the fault as resolved.
+     */
+    if ( lpae_is_valid(entry) )
+    {
+        resolved = true;
+        goto out_unmap;
+    }
+
+    /*
+     * The valid bit is unset. If the entry is still not valid then the fault
+     * cannot be resolved, exit and report it.
+     */
+    if ( !p2m_is_valid(entry) )
+        goto out_unmap;
+
+    /*
+     * Now we have an entry with valid bit unset, but still valid from
+     * the P2M point of view.
+     *
+     * If an entry is pointing to a table, each entry of the table will
+     * have there valid bit cleared. This allows a function to clear the
+     * full p2m with just a couple of write. The valid bit will then be
+     * propagated on the fault.
+     * If an entry is pointing to a block/page, no work to do for now.
+     */
+    if ( lpae_is_table(entry, level) )
+        p2m_invalidate_table(p2m, lpae_get_mfn(entry));
+
+    /*
+     * Now that the work on the entry is done, set the valid bit to prevent
+     * another fault on that entry.
+     */
+    resolved = true;
+    entry.p2m.valid = 1;
+
+    p2m_write_pte(table + offsets[level], entry, p2m->clean_pte);
+
+    /*
+     * No need to flush the TLBs as the modified entry had the valid bit
+     * unset.
+     */
+
+out_unmap:
+    unmap_domain_page(table);
+
+out:
+    p2m_write_unlock(p2m);
+
+    return resolved;
+}
+
+static struct page_info *p2m_allocate_root(void)
+{
+    struct page_info *page;
+    unsigned int i;
+
+    page = alloc_domheap_pages(NULL, P2M_ROOT_ORDER, 0);
+    if ( page == NULL )
+        return NULL;
+
+    /* Clear both first level pages */
+    for ( i = 0; i < P2M_ROOT_PAGES; i++ )
+        clear_and_clean_page(page + i);
+
+    return page;
+}
+
+static int p2m_alloc_table(struct domain *d)
+{
+    struct p2m_domain *p2m = p2m_get_hostp2m(d);
+
+    p2m->root = p2m_allocate_root();
+    if ( !p2m->root )
+        return -ENOMEM;
+
+    p2m->vttbr = generate_vttbr(p2m->vmid, page_to_mfn(p2m->root));
+
+    /*
+     * Make sure that all TLBs corresponding to the new VMID are flushed
+     * before using it
+     */
+    p2m_write_lock(p2m);
+    p2m_force_tlb_flush_sync(p2m);
+    p2m_write_unlock(p2m);
+
+    return 0;
+}
+
+int p2m_teardown(struct domain *d)
+{
+    struct p2m_domain *p2m = p2m_get_hostp2m(d);
+    unsigned long count = 0;
+    struct page_info *pg;
+    int rc = 0;
+
+    p2m_write_lock(p2m);
+
+    while ( (pg = page_list_remove_head(&p2m->pages)) )
+    {
+        p2m_free_page(p2m->domain, pg);
+        count++;
+        /* Arbitrarily preempt every 512 iterations */
+        if ( !(count % 512) && hypercall_preempt_check() )
+        {
+            rc = -ERESTART;
+            break;
+        }
+    }
+
+    p2m_write_unlock(p2m);
+
+    return rc;
+}
+
+int p2m_init(struct domain *d)
+{
+    struct p2m_domain *p2m = p2m_get_hostp2m(d);
+    int rc;
+    unsigned int cpu;
+
+    rwlock_init(&p2m->lock);
+    spin_lock_init(&d->arch.paging.lock);
+    INIT_PAGE_LIST_HEAD(&p2m->pages);
+    INIT_PAGE_LIST_HEAD(&d->arch.paging.p2m_freelist);
+
+    p2m->vmid = INVALID_VMID;
+    p2m->max_mapped_gfn = _gfn(0);
+    p2m->lowest_mapped_gfn = _gfn(ULONG_MAX);
+
+    p2m->default_access = p2m_access_rwx;
+    p2m->mem_access_enabled = false;
+    radix_tree_init(&p2m->mem_access_settings);
+
+    /*
+     * Some IOMMUs don't support coherent PT walk. When the p2m is
+     * shared with the CPU, Xen has to make sure that the PT changes have
+     * reached the memory
+     */
+    p2m->clean_pte = is_iommu_enabled(d) &&
+        !iommu_has_feature(d, IOMMU_FEAT_COHERENT_WALK);
+
+    /*
+     * Make sure that the type chosen to is able to store the an vCPU ID
+     * between 0 and the maximum of virtual CPUS supported as long as
+     * the INVALID_VCPU_ID.
+     */
+    BUILD_BUG_ON((1 << (sizeof(p2m->last_vcpu_ran[0]) * 8)) < MAX_VIRT_CPUS);
+    BUILD_BUG_ON((1 << (sizeof(p2m->last_vcpu_ran[0])* 8)) < INVALID_VCPU_ID);
+
+    for_each_possible_cpu(cpu)
+       p2m->last_vcpu_ran[cpu] = INVALID_VCPU_ID;
+
+    /*
+     * "Trivial" initialisation is now complete.  Set the backpointer so
+     * p2m_teardown() and friends know to do something.
+     */
+    p2m->domain = d;
+
+    rc = p2m_alloc_vmid(d);
+    if ( rc )
+        return rc;
+
+    rc = p2m_alloc_table(d);
+    if ( rc )
+        return rc;
+
+    return 0;
+}
+
+/*
+ * The function will go through the p2m and remove page reference when it
+ * is required. The mapping will be removed from the p2m.
+ *
+ * XXX: See whether the mapping can be left intact in the p2m.
+ */
+int relinquish_p2m_mapping(struct domain *d)
+{
+    struct p2m_domain *p2m = p2m_get_hostp2m(d);
+    unsigned long count = 0;
+    p2m_type_t t;
+    int rc = 0;
+    unsigned int order;
+    gfn_t start, end;
+
+    BUG_ON(!d->is_dying);
+    /* No mappings can be added in the P2M after the P2M lock is released. */
+    p2m_write_lock(p2m);
+
+    start = p2m->lowest_mapped_gfn;
+    end = gfn_add(p2m->max_mapped_gfn, 1);
+
+    for ( ; gfn_x(start) < gfn_x(end);
+          start = gfn_next_boundary(start, order) )
+    {
+        mfn_t mfn = p2m_get_entry(p2m, start, &t, NULL, &order, NULL);
+
+        count++;
+        /*
+         * Arbitrarily preempt every 512 iterations.
+         */
+        if ( !(count % 512) && hypercall_preempt_check() )
+        {
+            rc = -ERESTART;
+            break;
+        }
+
+        /*
+         * p2m_set_entry will take care of removing reference on page
+         * when it is necessary and removing the mapping in the p2m.
+         */
+        if ( !mfn_eq(mfn, INVALID_MFN) )
+        {
+            /*
+             * For valid mapping, the start will always be aligned as
+             * entry will be removed whilst relinquishing.
+             */
+            rc = __p2m_set_entry(p2m, start, order, INVALID_MFN,
+                                 p2m_invalid, p2m_access_rwx);
+            if ( unlikely(rc) )
+            {
+                printk(XENLOG_G_ERR "Unable to remove mapping gfn=%#"PRI_gfn" order=%u from the p2m of domain %d\n", gfn_x(start), order, d->domain_id);
+                break;
+            }
+        }
+    }
+
+    /*
+     * Update lowest_mapped_gfn so on the next call we still start where
+     * we stopped.
+     */
+    p2m->lowest_mapped_gfn = start;
+
+    p2m_write_unlock(p2m);
+
+    return rc;
+}
+
+/*
+ * Clean & invalidate RAM associated to the guest vCPU.
+ *
+ * The function can only work with the current vCPU and should be called
+ * with IRQ enabled as the vCPU could get preempted.
+ */
+void p2m_flush_vm(struct vcpu *v)
+{
+    struct p2m_domain *p2m = p2m_get_hostp2m(v->domain);
+    int rc;
+    gfn_t start = _gfn(0);
+
+    ASSERT(v == current);
+    ASSERT(local_irq_is_enabled());
+    ASSERT(v->arch.need_flush_to_ram);
+
+    do
+    {
+        rc = p2m_cache_flush_range(v->domain, &start, _gfn(ULONG_MAX));
+        if ( rc == -ERESTART )
+            do_softirq();
+    } while ( rc == -ERESTART );
+
+    if ( rc != 0 )
+        gprintk(XENLOG_WARNING,
+                "P2M has not been correctly cleaned (rc = %d)\n",
+                rc);
+
+    /*
+     * Invalidate the p2m to track which page was modified by the guest
+     * between call of p2m_flush_vm().
+     */
+    p2m_invalidate_root(p2m);
+
+    v->arch.need_flush_to_ram = false;
+}
+
+/* VTCR value to be configured by all CPUs. Set only once by the boot CPU */
+static register_t __read_mostly vtcr;
+
+void setup_virt_paging_one(void *data)
+{
+    WRITE_SYSREG(vtcr, VTCR_EL2);
+
+    /*
+     * ARM64_WORKAROUND_AT_SPECULATE: We want to keep the TLBs free from
+     * entries related to EL1/EL0 translation regime until a guest vCPU
+     * is running. For that, we need to set-up VTTBR to point to an empty
+     * page-table and turn on stage-2 translation. The TLB entries
+     * associated with EL1/EL0 translation regime will also be flushed in case
+     * an AT instruction was speculated before hand.
+     */
+    if ( cpus_have_cap(ARM64_WORKAROUND_AT_SPECULATE) )
+    {
+        WRITE_SYSREG64(generate_vttbr(INVALID_VMID, empty_root_mfn), VTTBR_EL2);
+        WRITE_SYSREG(READ_SYSREG(HCR_EL2) | HCR_VM, HCR_EL2);
+        isb();
+
+        flush_all_guests_tlb_local();
+    }
+}
+
+void __init setup_virt_paging(void)
+{
+    /* Setup Stage 2 address translation */
+    register_t val = VTCR_RES1|VTCR_SH0_IS|VTCR_ORGN0_WBWA|VTCR_IRGN0_WBWA;
+
+    static const struct {
+        unsigned int pabits; /* Physical Address Size */
+        unsigned int t0sz;   /* Desired T0SZ, minimum in comment */
+        unsigned int root_order; /* Page order of the root of the p2m */
+        unsigned int sl0;    /* Desired SL0, maximum in comment */
+    } pa_range_info[] __initconst = {
+        /* T0SZ minimum and SL0 maximum from ARM DDI 0487H.a Table D5-6 */
+        /*      PA size, t0sz(min), root-order, sl0(max) */
+#ifdef CONFIG_ARM_64
+        [0] = { 32,      32/*32*/,  0,          1 },
+        [1] = { 36,      28/*28*/,  0,          1 },
+        [2] = { 40,      24/*24*/,  1,          1 },
+        [3] = { 42,      22/*22*/,  3,          1 },
+        [4] = { 44,      20/*20*/,  0,          2 },
+        [5] = { 48,      16/*16*/,  0,          2 },
+        [6] = { 52,      12/*12*/,  4,          2 },
+        [7] = { 0 }  /* Invalid */
+#else
+        { 32,      0/*0*/,    0,          1 },
+        { 40,      24/*24*/,  1,          1 }
+#endif
+    };
+
+    unsigned int i;
+    unsigned int pa_range = 0x10; /* Larger than any possible value */
+
+#ifdef CONFIG_ARM_32
+    /*
+     * Typecast pa_range_info[].t0sz into arm32 bit variant.
+     *
+     * VTCR.T0SZ is bits [3:0] and S(sign extension), bit[4] for arm322.
+     * Thus, pa_range_info[].t0sz is translated to its arm32 variant using
+     * struct bitfields.
+     */
+    struct
+    {
+        signed int val:5;
+    } t0sz_32;
+#else
+    /*
+     * Restrict "p2m_ipa_bits" if needed. As P2M table is always configured
+     * with IPA bits == PA bits, compare against "pabits".
+     */
+    if ( pa_range_info[system_cpuinfo.mm64.pa_range].pabits < p2m_ipa_bits )
+        p2m_ipa_bits = pa_range_info[system_cpuinfo.mm64.pa_range].pabits;
+
+    /*
+     * cpu info sanitization made sure we support 16bits VMID only if all
+     * cores are supporting it.
+     */
+    if ( system_cpuinfo.mm64.vmid_bits == MM64_VMID_16_BITS_SUPPORT )
+        max_vmid = MAX_VMID_16_BIT;
+#endif
+
+    /* Choose suitable "pa_range" according to the resulted "p2m_ipa_bits". */
+    for ( i = 0; i < ARRAY_SIZE(pa_range_info); i++ )
+    {
+        if ( p2m_ipa_bits == pa_range_info[i].pabits )
+        {
+            pa_range = i;
+            break;
+        }
+    }
+
+    /* Check if we found the associated entry in the array */
+    if ( pa_range >= ARRAY_SIZE(pa_range_info) || !pa_range_info[pa_range].pabits )
+        panic("%u-bit P2M is not supported\n", p2m_ipa_bits);
+
+#ifdef CONFIG_ARM_64
+    val |= VTCR_PS(pa_range);
+    val |= VTCR_TG0_4K;
+
+    /* Set the VS bit only if 16 bit VMID is supported. */
+    if ( MAX_VMID == MAX_VMID_16_BIT )
+        val |= VTCR_VS;
+#endif
+
+    val |= VTCR_SL0(pa_range_info[pa_range].sl0);
+    val |= VTCR_T0SZ(pa_range_info[pa_range].t0sz);
+
+    p2m_root_order = pa_range_info[pa_range].root_order;
+    p2m_root_level = 2 - pa_range_info[pa_range].sl0;
+
+#ifdef CONFIG_ARM_64
+    p2m_ipa_bits = 64 - pa_range_info[pa_range].t0sz;
+#else
+    t0sz_32.val = pa_range_info[pa_range].t0sz;
+    p2m_ipa_bits = 32 - t0sz_32.val;
+#endif
+
+    printk("P2M: %d-bit IPA with %d-bit PA and %d-bit VMID\n",
+           p2m_ipa_bits,
+           pa_range_info[pa_range].pabits,
+           ( MAX_VMID == MAX_VMID_16_BIT ) ? 16 : 8);
+
+    printk("P2M: %d levels with order-%d root, VTCR 0x%"PRIregister"\n",
+           4 - P2M_ROOT_LEVEL, P2M_ROOT_ORDER, val);
+
+    p2m_vmid_allocator_init();
+
+    /* It is not allowed to concatenate a level zero root */
+    BUG_ON( P2M_ROOT_LEVEL == 0 && P2M_ROOT_ORDER > 0 );
+    vtcr = val;
+
+    /*
+     * ARM64_WORKAROUND_AT_SPECULATE requires to allocate root table
+     * with all entries zeroed.
+     */
+    if ( cpus_have_cap(ARM64_WORKAROUND_AT_SPECULATE) )
+    {
+        struct page_info *root;
+
+        root = p2m_allocate_root();
+        if ( !root )
+            panic("Unable to allocate root table for ARM64_WORKAROUND_AT_SPECULATE\n");
+
+        empty_root_mfn = page_to_mfn(root);
+    }
+
+    setup_virt_paging_one(NULL);
+    smp_call_function(setup_virt_paging_one, NULL, 1);
+}
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: "BSD"
+ * c-basic-offset: 4
+ * indent-tabs-mode: nil
+ * End:
+ */
diff --git a/xen/arch/arm/p2m.c b/xen/arch/arm/p2m.c
index de32a2d638..b8aca110d5 100644
--- a/xen/arch/arm/p2m.c
+++ b/xen/arch/arm/p2m.c
@@ -1,191 +1,26 @@
 /* SPDX-License-Identifier: GPL-2.0 */
 #include <xen/cpu.h>
-#include <xen/domain_page.h>
 #include <xen/iocap.h>
-#include <xen/ioreq.h>
 #include <xen/lib.h>
 #include <xen/sched.h>
 #include <xen/softirq.h>
 
-#include <asm/alternative.h>
 #include <asm/event.h>
 #include <asm/flushtlb.h>
 #include <asm/guest_walk.h>
 #include <asm/page.h>
 #include <asm/traps.h>
 
-#define MAX_VMID_8_BIT  (1UL << 8)
-#define MAX_VMID_16_BIT (1UL << 16)
-
-#define INVALID_VMID 0 /* VMID 0 is reserved */
-
-unsigned int __read_mostly p2m_root_order;
-unsigned int __read_mostly p2m_root_level;
 #ifdef CONFIG_ARM_64
-static unsigned int __read_mostly max_vmid = MAX_VMID_8_BIT;
-/* VMID is by default 8 bit width on AArch64 */
-#define MAX_VMID       max_vmid
-#else
-/* VMID is always 8 bit width on AArch32 */
-#define MAX_VMID        MAX_VMID_8_BIT
+unsigned int __read_mostly max_vmid = MAX_VMID_8_BIT;
 #endif
 
-#define P2M_ROOT_PAGES    (1<<P2M_ROOT_ORDER)
-
 /*
  * Set to the maximum configured support for IPA bits, so the number of IPA bits can be
  * restricted by external entity (e.g. IOMMU).
  */
 unsigned int __read_mostly p2m_ipa_bits = PADDR_BITS;
 
-static mfn_t __read_mostly empty_root_mfn;
-
-static uint64_t generate_vttbr(uint16_t vmid, mfn_t root_mfn)
-{
-    return (mfn_to_maddr(root_mfn) | ((uint64_t)vmid << 48));
-}
-
-static struct page_info *p2m_alloc_page(struct domain *d)
-{
-    struct page_info *pg;
-
-    /*
-     * For hardware domain, there should be no limit in the number of pages that
-     * can be allocated, so that the kernel may take advantage of the extended
-     * regions. Hence, allocate p2m pages for hardware domains from heap.
-     */
-    if ( is_hardware_domain(d) )
-    {
-        pg = alloc_domheap_page(NULL, 0);
-        if ( pg == NULL )
-            printk(XENLOG_G_ERR "Failed to allocate P2M pages for hwdom.\n");
-    }
-    else
-    {
-        spin_lock(&d->arch.paging.lock);
-        pg = page_list_remove_head(&d->arch.paging.p2m_freelist);
-        spin_unlock(&d->arch.paging.lock);
-    }
-
-    return pg;
-}
-
-static void p2m_free_page(struct domain *d, struct page_info *pg)
-{
-    if ( is_hardware_domain(d) )
-        free_domheap_page(pg);
-    else
-    {
-        spin_lock(&d->arch.paging.lock);
-        page_list_add_tail(pg, &d->arch.paging.p2m_freelist);
-        spin_unlock(&d->arch.paging.lock);
-    }
-}
-
-/* Return the size of the pool, in bytes. */
-int arch_get_paging_mempool_size(struct domain *d, uint64_t *size)
-{
-    *size = (uint64_t)ACCESS_ONCE(d->arch.paging.p2m_total_pages) << PAGE_SHIFT;
-    return 0;
-}
-
-/*
- * Set the pool of pages to the required number of pages.
- * Returns 0 for success, non-zero for failure.
- * Call with d->arch.paging.lock held.
- */
-int p2m_set_allocation(struct domain *d, unsigned long pages, bool *preempted)
-{
-    struct page_info *pg;
-
-    ASSERT(spin_is_locked(&d->arch.paging.lock));
-
-    for ( ; ; )
-    {
-        if ( d->arch.paging.p2m_total_pages < pages )
-        {
-            /* Need to allocate more memory from domheap */
-            pg = alloc_domheap_page(NULL, 0);
-            if ( pg == NULL )
-            {
-                printk(XENLOG_ERR "Failed to allocate P2M pages.\n");
-                return -ENOMEM;
-            }
-            ACCESS_ONCE(d->arch.paging.p2m_total_pages) =
-                d->arch.paging.p2m_total_pages + 1;
-            page_list_add_tail(pg, &d->arch.paging.p2m_freelist);
-        }
-        else if ( d->arch.paging.p2m_total_pages > pages )
-        {
-            /* Need to return memory to domheap */
-            pg = page_list_remove_head(&d->arch.paging.p2m_freelist);
-            if( pg )
-            {
-                ACCESS_ONCE(d->arch.paging.p2m_total_pages) =
-                    d->arch.paging.p2m_total_pages - 1;
-                free_domheap_page(pg);
-            }
-            else
-            {
-                printk(XENLOG_ERR
-                       "Failed to free P2M pages, P2M freelist is empty.\n");
-                return -ENOMEM;
-            }
-        }
-        else
-            break;
-
-        /* Check to see if we need to yield and try again */
-        if ( preempted && general_preempt_check() )
-        {
-            *preempted = true;
-            return -ERESTART;
-        }
-    }
-
-    return 0;
-}
-
-int arch_set_paging_mempool_size(struct domain *d, uint64_t size)
-{
-    unsigned long pages = size >> PAGE_SHIFT;
-    bool preempted = false;
-    int rc;
-
-    if ( (size & ~PAGE_MASK) ||          /* Non page-sized request? */
-         pages != (size >> PAGE_SHIFT) ) /* 32-bit overflow? */
-        return -EINVAL;
-
-    spin_lock(&d->arch.paging.lock);
-    rc = p2m_set_allocation(d, pages, &preempted);
-    spin_unlock(&d->arch.paging.lock);
-
-    ASSERT(preempted == (rc == -ERESTART));
-
-    return rc;
-}
-
-int p2m_teardown_allocation(struct domain *d)
-{
-    int ret = 0;
-    bool preempted = false;
-
-    spin_lock(&d->arch.paging.lock);
-    if ( d->arch.paging.p2m_total_pages != 0 )
-    {
-        ret = p2m_set_allocation(d, 0, &preempted);
-        if ( preempted )
-        {
-            spin_unlock(&d->arch.paging.lock);
-            return -ERESTART;
-        }
-        ASSERT(d->arch.paging.p2m_total_pages == 0);
-    }
-    spin_unlock(&d->arch.paging.lock);
-
-    return ret;
-}
-
 /* Unlock the flush and do a P2M TLB flush if necessary */
 void p2m_write_unlock(struct p2m_domain *p2m)
 {
@@ -196,1271 +31,82 @@ void p2m_write_unlock(struct p2m_domain *p2m)
      */
     p2m_tlb_flush_sync(p2m);
 
-    write_unlock(&p2m->lock);
-}
-
-void p2m_dump_info(struct domain *d)
-{
-    struct p2m_domain *p2m = p2m_get_hostp2m(d);
-
-    p2m_read_lock(p2m);
-    printk("p2m mappings for domain %d (vmid %d):\n",
-           d->domain_id, p2m->vmid);
-    BUG_ON(p2m->stats.mappings[0] || p2m->stats.shattered[0]);
-    printk("  1G mappings: %ld (shattered %ld)\n",
-           p2m->stats.mappings[1], p2m->stats.shattered[1]);
-    printk("  2M mappings: %ld (shattered %ld)\n",
-           p2m->stats.mappings[2], p2m->stats.shattered[2]);
-    printk("  4K mappings: %ld\n", p2m->stats.mappings[3]);
-    p2m_read_unlock(p2m);
-}
-
-void memory_type_changed(struct domain *d)
-{
-}
-
-void dump_p2m_lookup(struct domain *d, paddr_t addr)
-{
-    struct p2m_domain *p2m = p2m_get_hostp2m(d);
-
-    printk("dom%d IPA 0x%"PRIpaddr"\n", d->domain_id, addr);
-
-    printk("P2M @ %p mfn:%#"PRI_mfn"\n",
-           p2m->root, mfn_x(page_to_mfn(p2m->root)));
-
-    dump_pt_walk(page_to_maddr(p2m->root), addr,
-                 P2M_ROOT_LEVEL, P2M_ROOT_PAGES);
-}
-
-/*
- * p2m_save_state and p2m_restore_state work in pair to workaround
- * ARM64_WORKAROUND_AT_SPECULATE. p2m_save_state will set-up VTTBR to
- * point to the empty page-tables to stop allocating TLB entries.
- */
-void p2m_save_state(struct vcpu *p)
-{
-    p->arch.sctlr = READ_SYSREG(SCTLR_EL1);
-
-    if ( cpus_have_const_cap(ARM64_WORKAROUND_AT_SPECULATE) )
-    {
-        WRITE_SYSREG64(generate_vttbr(INVALID_VMID, empty_root_mfn), VTTBR_EL2);
-        /*
-         * Ensure VTTBR_EL2 is correctly synchronized so we can restore
-         * the next vCPU context without worrying about AT instruction
-         * speculation.
-         */
-        isb();
-    }
-}
-
-void p2m_restore_state(struct vcpu *n)
-{
-    struct p2m_domain *p2m = p2m_get_hostp2m(n->domain);
-    uint8_t *last_vcpu_ran;
-
-    if ( is_idle_vcpu(n) )
-        return;
-
-    WRITE_SYSREG(n->arch.sctlr, SCTLR_EL1);
-    WRITE_SYSREG(n->arch.hcr_el2, HCR_EL2);
-
-    /*
-     * ARM64_WORKAROUND_AT_SPECULATE: VTTBR_EL2 should be restored after all
-     * registers associated to EL1/EL0 translations regime have been
-     * synchronized.
-     */
-    asm volatile(ALTERNATIVE("nop", "isb", ARM64_WORKAROUND_AT_SPECULATE));
-    WRITE_SYSREG64(p2m->vttbr, VTTBR_EL2);
-
-    last_vcpu_ran = &p2m->last_vcpu_ran[smp_processor_id()];
-
-    /*
-     * While we are restoring an out-of-context translation regime
-     * we still need to ensure:
-     *  - VTTBR_EL2 is synchronized before flushing the TLBs
-     *  - All registers for EL1 are synchronized before executing an AT
-     *  instructions targeting S1/S2.
-     */
-    isb();
-
-    /*
-     * Flush local TLB for the domain to prevent wrong TLB translation
-     * when running multiple vCPU of the same domain on a single pCPU.
-     */
-    if ( *last_vcpu_ran != INVALID_VCPU_ID && *last_vcpu_ran != n->vcpu_id )
-        flush_guest_tlb_local();
-
-    *last_vcpu_ran = n->vcpu_id;
-}
-
-/*
- * Force a synchronous P2M TLB flush.
- *
- * Must be called with the p2m lock held.
- */
-static void p2m_force_tlb_flush_sync(struct p2m_domain *p2m)
-{
-    unsigned long flags = 0;
-    uint64_t ovttbr;
-
-    ASSERT(p2m_is_write_locked(p2m));
-
-    /*
-     * ARM only provides an instruction to flush TLBs for the current
-     * VMID. So switch to the VTTBR of a given P2M if different.
-     */
-    ovttbr = READ_SYSREG64(VTTBR_EL2);
-    if ( ovttbr != p2m->vttbr )
-    {
-        uint64_t vttbr;
-
-        local_irq_save(flags);
-
-        /*
-         * ARM64_WORKAROUND_AT_SPECULATE: We need to stop AT to allocate
-         * TLBs entries because the context is partially modified. We
-         * only need the VMID for flushing the TLBs, so we can generate
-         * a new VTTBR with the VMID to flush and the empty root table.
-         */
-        if ( !cpus_have_const_cap(ARM64_WORKAROUND_AT_SPECULATE) )
-            vttbr = p2m->vttbr;
-        else
-            vttbr = generate_vttbr(p2m->vmid, empty_root_mfn);
-
-        WRITE_SYSREG64(vttbr, VTTBR_EL2);
-
-        /* Ensure VTTBR_EL2 is synchronized before flushing the TLBs */
-        isb();
-    }
-
-    flush_guest_tlb();
-
-    if ( ovttbr != READ_SYSREG64(VTTBR_EL2) )
-    {
-        WRITE_SYSREG64(ovttbr, VTTBR_EL2);
-        /* Ensure VTTBR_EL2 is back in place before continuing. */
-        isb();
-        local_irq_restore(flags);
-    }
-
-    p2m->need_flush = false;
-}
-
-void p2m_tlb_flush_sync(struct p2m_domain *p2m)
-{
-    if ( p2m->need_flush )
-        p2m_force_tlb_flush_sync(p2m);
-}
-
-/*
- * Find and map the root page table. The caller is responsible for
- * unmapping the table.
- *
- * The function will return NULL if the offset of the root table is
- * invalid.
- */
-static lpae_t *p2m_get_root_pointer(struct p2m_domain *p2m,
-                                    gfn_t gfn)
-{
-    unsigned long root_table;
-
-    /*
-     * While the root table index is the offset from the previous level,
-     * we can't use (P2M_ROOT_LEVEL - 1) because the root level might be
-     * 0. Yet we still want to check if all the unused bits are zeroed.
-     */
-    root_table = gfn_x(gfn) >> (XEN_PT_LEVEL_ORDER(P2M_ROOT_LEVEL) +
-                                XEN_PT_LPAE_SHIFT);
-    if ( root_table >= P2M_ROOT_PAGES )
-        return NULL;
-
-    return __map_domain_page(p2m->root + root_table);
-}
-
-/*
- * Lookup the MFN corresponding to a domain's GFN.
- * Lookup mem access in the ratrix tree.
- * The entries associated to the GFN is considered valid.
- */
-static p2m_access_t p2m_mem_access_radix_get(struct p2m_domain *p2m, gfn_t gfn)
-{
-    void *ptr;
-
-    if ( !p2m->mem_access_enabled )
-        return p2m->default_access;
-
-    ptr = radix_tree_lookup(&p2m->mem_access_settings, gfn_x(gfn));
-    if ( !ptr )
-        return p2m_access_rwx;
-    else
-        return radix_tree_ptr_to_int(ptr);
-}
-
-/*
- * In the case of the P2M, the valid bit is used for other purpose. Use
- * the type to check whether an entry is valid.
- */
-static inline bool p2m_is_valid(lpae_t pte)
-{
-    return pte.p2m.type != p2m_invalid;
-}
-
-/*
- * lpae_is_* helpers don't check whether the valid bit is set in the
- * PTE. Provide our own overlay to check the valid bit.
- */
-static inline bool p2m_is_mapping(lpae_t pte, unsigned int level)
-{
-    return p2m_is_valid(pte) && lpae_is_mapping(pte, level);
-}
-
-static inline bool p2m_is_superpage(lpae_t pte, unsigned int level)
-{
-    return p2m_is_valid(pte) && lpae_is_superpage(pte, level);
-}
-
-#define GUEST_TABLE_MAP_FAILED 0
-#define GUEST_TABLE_SUPER_PAGE 1
-#define GUEST_TABLE_NORMAL_PAGE 2
-
-static int p2m_create_table(struct p2m_domain *p2m, lpae_t *entry);
-
-/*
- * Take the currently mapped table, find the corresponding GFN entry,
- * and map the next table, if available. The previous table will be
- * unmapped if the next level was mapped (e.g GUEST_TABLE_NORMAL_PAGE
- * returned).
- *
- * The read_only parameters indicates whether intermediate tables should
- * be allocated when not present.
- *
- * Return values:
- *  GUEST_TABLE_MAP_FAILED: Either read_only was set and the entry
- *  was empty, or allocating a new page failed.
- *  GUEST_TABLE_NORMAL_PAGE: next level mapped normally
- *  GUEST_TABLE_SUPER_PAGE: The next entry points to a superpage.
- */
-static int p2m_next_level(struct p2m_domain *p2m, bool read_only,
-                          unsigned int level, lpae_t **table,
-                          unsigned int offset)
-{
-    lpae_t *entry;
-    int ret;
-    mfn_t mfn;
-
-    entry = *table + offset;
-
-    if ( !p2m_is_valid(*entry) )
-    {
-        if ( read_only )
-            return GUEST_TABLE_MAP_FAILED;
-
-        ret = p2m_create_table(p2m, entry);
-        if ( ret )
-            return GUEST_TABLE_MAP_FAILED;
-    }
-
-    /* The function p2m_next_level is never called at the 3rd level */
-    ASSERT(level < 3);
-    if ( p2m_is_mapping(*entry, level) )
-        return GUEST_TABLE_SUPER_PAGE;
-
-    mfn = lpae_get_mfn(*entry);
-
-    unmap_domain_page(*table);
-    *table = map_domain_page(mfn);
-
-    return GUEST_TABLE_NORMAL_PAGE;
-}
-
-/*
- * Get the details of a given gfn.
- *
- * If the entry is present, the associated MFN will be returned and the
- * access and type filled up. The page_order will correspond to the
- * order of the mapping in the page table (i.e it could be a superpage).
- *
- * If the entry is not present, INVALID_MFN will be returned and the
- * page_order will be set according to the order of the invalid range.
- *
- * valid will contain the value of bit[0] (e.g valid bit) of the
- * entry.
- */
-mfn_t p2m_get_entry(struct p2m_domain *p2m, gfn_t gfn,
-                    p2m_type_t *t, p2m_access_t *a,
-                    unsigned int *page_order,
-                    bool *valid)
-{
-    paddr_t addr = gfn_to_gaddr(gfn);
-    unsigned int level = 0;
-    lpae_t entry, *table;
-    int rc;
-    mfn_t mfn = INVALID_MFN;
-    p2m_type_t _t;
-    DECLARE_OFFSETS(offsets, addr);
-
-    ASSERT(p2m_is_locked(p2m));
-    BUILD_BUG_ON(THIRD_MASK != PAGE_MASK);
-
-    /* Allow t to be NULL */
-    t = t ?: &_t;
-
-    *t = p2m_invalid;
-
-    if ( valid )
-        *valid = false;
-
-    /* XXX: Check if the mapping is lower than the mapped gfn */
-
-    /* This gfn is higher than the highest the p2m map currently holds */
-    if ( gfn_x(gfn) > gfn_x(p2m->max_mapped_gfn) )
-    {
-        for ( level = P2M_ROOT_LEVEL; level < 3; level++ )
-            if ( (gfn_x(gfn) & (XEN_PT_LEVEL_MASK(level) >> PAGE_SHIFT)) >
-                 gfn_x(p2m->max_mapped_gfn) )
-                break;
-
-        goto out;
-    }
-
-    table = p2m_get_root_pointer(p2m, gfn);
-
-    /*
-     * the table should always be non-NULL because the gfn is below
-     * p2m->max_mapped_gfn and the root table pages are always present.
-     */
-    if ( !table )
-    {
-        ASSERT_UNREACHABLE();
-        level = P2M_ROOT_LEVEL;
-        goto out;
-    }
-
-    for ( level = P2M_ROOT_LEVEL; level < 3; level++ )
-    {
-        rc = p2m_next_level(p2m, true, level, &table, offsets[level]);
-        if ( rc == GUEST_TABLE_MAP_FAILED )
-            goto out_unmap;
-        else if ( rc != GUEST_TABLE_NORMAL_PAGE )
-            break;
-    }
-
-    entry = table[offsets[level]];
-
-    if ( p2m_is_valid(entry) )
-    {
-        *t = entry.p2m.type;
-
-        if ( a )
-            *a = p2m_mem_access_radix_get(p2m, gfn);
-
-        mfn = lpae_get_mfn(entry);
-        /*
-         * The entry may point to a superpage. Find the MFN associated
-         * to the GFN.
-         */
-        mfn = mfn_add(mfn,
-                      gfn_x(gfn) & ((1UL << XEN_PT_LEVEL_ORDER(level)) - 1));
-
-        if ( valid )
-            *valid = lpae_is_valid(entry);
-    }
-
-out_unmap:
-    unmap_domain_page(table);
-
-out:
-    if ( page_order )
-        *page_order = XEN_PT_LEVEL_ORDER(level);
-
-    return mfn;
-}
-
-mfn_t p2m_lookup(struct domain *d, gfn_t gfn, p2m_type_t *t)
-{
-    mfn_t mfn;
-    struct p2m_domain *p2m = p2m_get_hostp2m(d);
-
-    p2m_read_lock(p2m);
-    mfn = p2m_get_entry(p2m, gfn, t, NULL, NULL, NULL);
-    p2m_read_unlock(p2m);
-
-    return mfn;
-}
-
-struct page_info *p2m_get_page_from_gfn(struct domain *d, gfn_t gfn,
-                                        p2m_type_t *t)
-{
-    struct page_info *page;
-    p2m_type_t p2mt;
-    mfn_t mfn = p2m_lookup(d, gfn, &p2mt);
-
-    if ( t )
-        *t = p2mt;
-
-    if ( !p2m_is_any_ram(p2mt) )
-        return NULL;
-
-    if ( !mfn_valid(mfn) )
-        return NULL;
-
-    page = mfn_to_page(mfn);
-
-    /*
-     * get_page won't work on foreign mapping because the page doesn't
-     * belong to the current domain.
-     */
-    if ( p2m_is_foreign(p2mt) )
-    {
-        struct domain *fdom = page_get_owner_and_reference(page);
-        ASSERT(fdom != NULL);
-        ASSERT(fdom != d);
-        return page;
-    }
-
-    return get_page(page, d) ? page : NULL;
-}
-
-int guest_physmap_mark_populate_on_demand(struct domain *d,
-                                          unsigned long gfn,
-                                          unsigned int order)
-{
-    return -ENOSYS;
-}
-
-unsigned long p2m_pod_decrease_reservation(struct domain *d, gfn_t gfn,
-                                           unsigned int order)
-{
-    return 0;
-}
-
-static void p2m_set_permission(lpae_t *e, p2m_type_t t, p2m_access_t a)
-{
-    /* First apply type permissions */
-    switch ( t )
-    {
-    case p2m_ram_rw:
-        e->p2m.xn = 0;
-        e->p2m.write = 1;
-        break;
-
-    case p2m_ram_ro:
-        e->p2m.xn = 0;
-        e->p2m.write = 0;
-        break;
-
-    case p2m_iommu_map_rw:
-    case p2m_map_foreign_rw:
-    case p2m_grant_map_rw:
-    case p2m_mmio_direct_dev:
-    case p2m_mmio_direct_nc:
-    case p2m_mmio_direct_c:
-        e->p2m.xn = 1;
-        e->p2m.write = 1;
-        break;
-
-    case p2m_iommu_map_ro:
-    case p2m_map_foreign_ro:
-    case p2m_grant_map_ro:
-    case p2m_invalid:
-        e->p2m.xn = 1;
-        e->p2m.write = 0;
-        break;
-
-    case p2m_max_real_type:
-        BUG();
-        break;
-    }
-
-    /* Then restrict with access permissions */
-    switch ( a )
-    {
-    case p2m_access_rwx:
-        break;
-    case p2m_access_wx:
-        e->p2m.read = 0;
-        break;
-    case p2m_access_rw:
-        e->p2m.xn = 1;
-        break;
-    case p2m_access_w:
-        e->p2m.read = 0;
-        e->p2m.xn = 1;
-        break;
-    case p2m_access_rx:
-    case p2m_access_rx2rw:
-        e->p2m.write = 0;
-        break;
-    case p2m_access_x:
-        e->p2m.write = 0;
-        e->p2m.read = 0;
-        break;
-    case p2m_access_r:
-        e->p2m.write = 0;
-        e->p2m.xn = 1;
-        break;
-    case p2m_access_n:
-    case p2m_access_n2rwx:
-        e->p2m.read = e->p2m.write = 0;
-        e->p2m.xn = 1;
-        break;
-    }
-}
-
-static lpae_t mfn_to_p2m_entry(mfn_t mfn, p2m_type_t t, p2m_access_t a)
-{
-    /*
-     * sh, xn and write bit will be defined in the following switches
-     * based on mattr and t.
-     */
-    lpae_t e = (lpae_t) {
-        .p2m.af = 1,
-        .p2m.read = 1,
-        .p2m.table = 1,
-        .p2m.valid = 1,
-        .p2m.type = t,
-    };
-
-    BUILD_BUG_ON(p2m_max_real_type > (1 << 4));
-
-    switch ( t )
-    {
-    case p2m_mmio_direct_dev:
-        e.p2m.mattr = MATTR_DEV;
-        e.p2m.sh = LPAE_SH_OUTER;
-        break;
-
-    case p2m_mmio_direct_c:
-        e.p2m.mattr = MATTR_MEM;
-        e.p2m.sh = LPAE_SH_OUTER;
-        break;
-
-    /*
-     * ARM ARM: Overlaying the shareability attribute (DDI
-     * 0406C.b B3-1376 to 1377)
-     *
-     * A memory region with a resultant memory type attribute of Normal,
-     * and a resultant cacheability attribute of Inner Non-cacheable,
-     * Outer Non-cacheable, must have a resultant shareability attribute
-     * of Outer Shareable, otherwise shareability is UNPREDICTABLE.
-     *
-     * On ARMv8 shareability is ignored and explicitly treated as Outer
-     * Shareable for Normal Inner Non_cacheable, Outer Non-cacheable.
-     * See the note for table D4-40, in page 1788 of the ARM DDI 0487A.j.
-     */
-    case p2m_mmio_direct_nc:
-        e.p2m.mattr = MATTR_MEM_NC;
-        e.p2m.sh = LPAE_SH_OUTER;
-        break;
-
-    default:
-        e.p2m.mattr = MATTR_MEM;
-        e.p2m.sh = LPAE_SH_INNER;
-    }
-
-    p2m_set_permission(&e, t, a);
-
-    ASSERT(!(mfn_to_maddr(mfn) & ~PADDR_MASK));
-
-    lpae_set_mfn(e, mfn);
-
-    return e;
-}
-
-/* Generate table entry with correct attributes. */
-static lpae_t page_to_p2m_table(struct page_info *page)
-{
-    /*
-     * The access value does not matter because the hardware will ignore
-     * the permission fields for table entry.
-     *
-     * We use p2m_ram_rw so the entry has a valid type. This is important
-     * for p2m_is_valid() to return valid on table entries.
-     */
-    return mfn_to_p2m_entry(page_to_mfn(page), p2m_ram_rw, p2m_access_rwx);
-}
-
-static inline void p2m_write_pte(lpae_t *p, lpae_t pte, bool clean_pte)
-{
-    write_pte(p, pte);
-    if ( clean_pte )
-        clean_dcache(*p);
-}
-
-static inline void p2m_remove_pte(lpae_t *p, bool clean_pte)
-{
-    lpae_t pte;
-
-    memset(&pte, 0x00, sizeof(pte));
-    p2m_write_pte(p, pte, clean_pte);
-}
-
-/* Allocate a new page table page and hook it in via the given entry. */
-static int p2m_create_table(struct p2m_domain *p2m, lpae_t *entry)
-{
-    struct page_info *page;
-    lpae_t *p;
-
-    ASSERT(!p2m_is_valid(*entry));
-
-    page = p2m_alloc_page(p2m->domain);
-    if ( page == NULL )
-        return -ENOMEM;
-
-    page_list_add(page, &p2m->pages);
-
-    p = __map_domain_page(page);
-    clear_page(p);
-
-    if ( p2m->clean_pte )
-        clean_dcache_va_range(p, PAGE_SIZE);
-
-    unmap_domain_page(p);
-
-    p2m_write_pte(entry, page_to_p2m_table(page), p2m->clean_pte);
-
-    return 0;
-}
-
-static int p2m_mem_access_radix_set(struct p2m_domain *p2m, gfn_t gfn,
-                                    p2m_access_t a)
-{
-    int rc;
-
-    if ( !p2m->mem_access_enabled )
-        return 0;
-
-    if ( p2m_access_rwx == a )
-    {
-        radix_tree_delete(&p2m->mem_access_settings, gfn_x(gfn));
-        return 0;
-    }
-
-    rc = radix_tree_insert(&p2m->mem_access_settings, gfn_x(gfn),
-                           radix_tree_int_to_ptr(a));
-    if ( rc == -EEXIST )
-    {
-        /* If a setting already exists, change it to the new one */
-        radix_tree_replace_slot(
-            radix_tree_lookup_slot(
-                &p2m->mem_access_settings, gfn_x(gfn)),
-            radix_tree_int_to_ptr(a));
-        rc = 0;
-    }
-
-    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)
-{
-    mfn_t mfn = lpae_get_mfn(pte);
-
-    ASSERT(p2m_is_valid(pte));
-
-    /*
-     * TODO: Handle other p2m types
-     *
-     * It's safe to do the put_page here because page_alloc will
-     * flush the TLBs if the page is reallocated before the end of
-     * this loop.
-     */
-    if ( p2m_is_foreign(pte.p2m.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) )
-        page_set_xenheap_gfn(mfn_to_page(mfn), INVALID_GFN);
-}
-
-/* Free lpae sub-tree behind an entry */
-static void p2m_free_entry(struct p2m_domain *p2m,
-                           lpae_t entry, unsigned int level)
-{
-    unsigned int i;
-    lpae_t *table;
-    mfn_t mfn;
-    struct page_info *pg;
-
-    /* Nothing to do if the entry is invalid. */
-    if ( !p2m_is_valid(entry) )
-        return;
-
-    if ( p2m_is_superpage(entry, level) || (level == 3) )
-    {
-#ifdef CONFIG_IOREQ_SERVER
-        /*
-         * If this gets called then either the entry was replaced by an entry
-         * with a different base (valid case) or the shattering of a superpage
-         * has failed (error case).
-         * So, at worst, the spurious mapcache invalidation might be sent.
-         */
-        if ( p2m_is_ram(entry.p2m.type) &&
-             domain_has_ioreq_server(p2m->domain) )
-            ioreq_request_mapcache_invalidate(p2m->domain);
-#endif
-
-        p2m->stats.mappings[level]--;
-        /* Nothing to do if the entry is a super-page. */
-        if ( level == 3 )
-            p2m_put_l3_page(entry);
-        return;
-    }
-
-    table = map_domain_page(lpae_get_mfn(entry));
-    for ( i = 0; i < XEN_PT_LPAE_ENTRIES; i++ )
-        p2m_free_entry(p2m, *(table + i), level + 1);
-
-    unmap_domain_page(table);
-
-    /*
-     * Make sure all the references in the TLB have been removed before
-     * freing the intermediate page table.
-     * XXX: Should we defer the free of the page table to avoid the
-     * flush?
-     */
-    p2m_tlb_flush_sync(p2m);
-
-    mfn = lpae_get_mfn(entry);
-    ASSERT(mfn_valid(mfn));
-
-    pg = mfn_to_page(mfn);
-
-    page_list_del(pg, &p2m->pages);
-    p2m_free_page(p2m->domain, pg);
-}
-
-static bool p2m_split_superpage(struct p2m_domain *p2m, lpae_t *entry,
-                                unsigned int level, unsigned int target,
-                                const unsigned int *offsets)
-{
-    struct page_info *page;
-    unsigned int i;
-    lpae_t pte, *table;
-    bool rv = true;
-
-    /* Convenience aliases */
-    mfn_t mfn = lpae_get_mfn(*entry);
-    unsigned int next_level = level + 1;
-    unsigned int level_order = XEN_PT_LEVEL_ORDER(next_level);
-
-    /*
-     * This should only be called with target != level and the entry is
-     * a superpage.
-     */
-    ASSERT(level < target);
-    ASSERT(p2m_is_superpage(*entry, level));
-
-    page = p2m_alloc_page(p2m->domain);
-    if ( !page )
-        return false;
-
-    page_list_add(page, &p2m->pages);
-    table = __map_domain_page(page);
-
-    /*
-     * We are either splitting a first level 1G page into 512 second level
-     * 2M pages, or a second level 2M page into 512 third level 4K pages.
-     */
-    for ( i = 0; i < XEN_PT_LPAE_ENTRIES; i++ )
-    {
-        lpae_t *new_entry = table + i;
-
-        /*
-         * Use the content of the superpage entry and override
-         * the necessary fields. So the correct permission are kept.
-         */
-        pte = *entry;
-        lpae_set_mfn(pte, mfn_add(mfn, i << level_order));
-
-        /*
-         * First and second level pages set p2m.table = 0, but third
-         * level entries set p2m.table = 1.
-         */
-        pte.p2m.table = (next_level == 3);
-
-        write_pte(new_entry, pte);
-    }
-
-    /* Update stats */
-    p2m->stats.shattered[level]++;
-    p2m->stats.mappings[level]--;
-    p2m->stats.mappings[next_level] += XEN_PT_LPAE_ENTRIES;
-
-    /*
-     * Shatter superpage in the page to the level we want to make the
-     * changes.
-     * This is done outside the loop to avoid checking the offset to
-     * know whether the entry should be shattered for every entry.
-     */
-    if ( next_level != target )
-        rv = p2m_split_superpage(p2m, table + offsets[next_level],
-                                 level + 1, target, offsets);
-
-    if ( p2m->clean_pte )
-        clean_dcache_va_range(table, PAGE_SIZE);
-
-    unmap_domain_page(table);
-
-    /*
-     * Even if we failed, we should install the newly allocated LPAE
-     * entry. The caller will be in charge to free the sub-tree.
-     */
-    p2m_write_pte(entry, page_to_p2m_table(page), p2m->clean_pte);
-
-    return rv;
-}
-
-/*
- * Insert an entry in the p2m. This should be called with a mapping
- * equal to a page/superpage (4K, 2M, 1G).
- */
-static int __p2m_set_entry(struct p2m_domain *p2m,
-                           gfn_t sgfn,
-                           unsigned int page_order,
-                           mfn_t smfn,
-                           p2m_type_t t,
-                           p2m_access_t a)
-{
-    unsigned int level = 0;
-    unsigned int target = 3 - (page_order / XEN_PT_LPAE_SHIFT);
-    lpae_t *entry, *table, orig_pte;
-    int rc;
-    /* A mapping is removed if the MFN is invalid. */
-    bool removing_mapping = mfn_eq(smfn, INVALID_MFN);
-    DECLARE_OFFSETS(offsets, gfn_to_gaddr(sgfn));
-
-    ASSERT(p2m_is_write_locked(p2m));
-
-    /*
-     * Check if the level target is valid: we only support
-     * 4K - 2M - 1G mapping.
-     */
-    ASSERT(target > 0 && target <= 3);
-
-    table = p2m_get_root_pointer(p2m, sgfn);
-    if ( !table )
-        return -EINVAL;
-
-    for ( level = P2M_ROOT_LEVEL; level < target; level++ )
-    {
-        /*
-         * Don't try to allocate intermediate page table if the mapping
-         * is about to be removed.
-         */
-        rc = p2m_next_level(p2m, removing_mapping,
-                            level, &table, offsets[level]);
-        if ( rc == GUEST_TABLE_MAP_FAILED )
-        {
-            /*
-             * We are here because p2m_next_level has failed to map
-             * the intermediate page table (e.g the table does not exist
-             * and they p2m tree is read-only). It is a valid case
-             * when removing a mapping as it may not exist in the
-             * page table. In this case, just ignore it.
-             */
-            rc = removing_mapping ?  0 : -ENOENT;
-            goto out;
-        }
-        else if ( rc != GUEST_TABLE_NORMAL_PAGE )
-            break;
-    }
-
-    entry = table + offsets[level];
-
-    /*
-     * If we are here with level < target, we must be at a leaf node,
-     * and we need to break up the superpage.
-     */
-    if ( level < target )
-    {
-        /* We need to split the original page. */
-        lpae_t split_pte = *entry;
-
-        ASSERT(p2m_is_superpage(*entry, level));
-
-        if ( !p2m_split_superpage(p2m, &split_pte, level, target, offsets) )
-        {
-            /*
-             * The current super-page is still in-place, so re-increment
-             * the stats.
-             */
-            p2m->stats.mappings[level]++;
-
-            /* Free the allocated sub-tree */
-            p2m_free_entry(p2m, split_pte, level);
-
-            rc = -ENOMEM;
-            goto out;
-        }
-
-        /*
-         * Follow the break-before-sequence to update the entry.
-         * For more details see (D4.7.1 in ARM DDI 0487A.j).
-         */
-        p2m_remove_pte(entry, p2m->clean_pte);
-        p2m_force_tlb_flush_sync(p2m);
-
-        p2m_write_pte(entry, split_pte, p2m->clean_pte);
-
-        /* then move to the level we want to make real changes */
-        for ( ; level < target; level++ )
-        {
-            rc = p2m_next_level(p2m, true, level, &table, offsets[level]);
-
-            /*
-             * The entry should be found and either be a table
-             * or a superpage if level 3 is not targeted
-             */
-            ASSERT(rc == GUEST_TABLE_NORMAL_PAGE ||
-                   (rc == GUEST_TABLE_SUPER_PAGE && target < 3));
-        }
-
-        entry = table + offsets[level];
-    }
-
-    /*
-     * We should always be there with the correct level because
-     * all the intermediate tables have been installed if necessary.
-     */
-    ASSERT(level == target);
-
-    orig_pte = *entry;
-
-    /*
-     * The radix-tree can only work on 4KB. This is only used when
-     * memaccess is enabled and during shutdown.
-     */
-    ASSERT(!p2m->mem_access_enabled || page_order == 0 ||
-           p2m->domain->is_dying);
-    /*
-     * The access type should always be p2m_access_rwx when the mapping
-     * is removed.
-     */
-    ASSERT(!mfn_eq(INVALID_MFN, smfn) || (a == p2m_access_rwx));
-    /*
-     * Update the mem access permission before update the P2M. So we
-     * don't have to revert the mapping if it has failed.
-     */
-    rc = p2m_mem_access_radix_set(p2m, sgfn, a);
-    if ( rc )
-        goto out;
-
-    /*
-     * Always remove the entry in order to follow the break-before-make
-     * sequence when updating the translation table (D4.7.1 in ARM DDI
-     * 0487A.j).
-     */
-    if ( lpae_is_valid(orig_pte) || removing_mapping )
-        p2m_remove_pte(entry, p2m->clean_pte);
-
-    if ( removing_mapping )
-        /* Flush can be deferred if the entry is removed */
-        p2m->need_flush |= !!lpae_is_valid(orig_pte);
-    else
-    {
-        lpae_t pte = mfn_to_p2m_entry(smfn, t, a);
-
-        if ( level < 3 )
-            pte.p2m.table = 0; /* Superpage entry */
-
-        /*
-         * It is necessary to flush the TLB before writing the new entry
-         * to keep coherency when the previous entry was valid.
-         *
-         * Although, it could be defered when only the permissions are
-         * changed (e.g in case of memaccess).
-         */
-        if ( lpae_is_valid(orig_pte) )
-        {
-            if ( likely(!p2m->mem_access_enabled) ||
-                 P2M_CLEAR_PERM(pte) != P2M_CLEAR_PERM(orig_pte) )
-                p2m_force_tlb_flush_sync(p2m);
-            else
-                p2m->need_flush = true;
-        }
-        else if ( !p2m_is_valid(orig_pte) ) /* new mapping */
-            p2m->stats.mappings[level]++;
-
-        p2m_write_pte(entry, pte, p2m->clean_pte);
-
-        p2m->max_mapped_gfn = gfn_max(p2m->max_mapped_gfn,
-                                      gfn_add(sgfn, (1UL << page_order) - 1));
-        p2m->lowest_mapped_gfn = gfn_min(p2m->lowest_mapped_gfn, sgfn);
-    }
-
-    if ( is_iommu_enabled(p2m->domain) &&
-         (lpae_is_valid(orig_pte) || lpae_is_valid(*entry)) )
-    {
-        unsigned int flush_flags = 0;
-
-        if ( lpae_is_valid(orig_pte) )
-            flush_flags |= IOMMU_FLUSHF_modified;
-        if ( lpae_is_valid(*entry) )
-            flush_flags |= IOMMU_FLUSHF_added;
-
-        rc = iommu_iotlb_flush(p2m->domain, _dfn(gfn_x(sgfn)),
-                               1UL << page_order, flush_flags);
-    }
-    else
-        rc = 0;
-
-    /*
-     * Free the entry only if the original pte was valid and the base
-     * is different (to avoid freeing when permission is changed).
-     */
-    if ( p2m_is_valid(orig_pte) &&
-         !mfn_eq(lpae_get_mfn(*entry), lpae_get_mfn(orig_pte)) )
-        p2m_free_entry(p2m, orig_pte, level);
-
-out:
-    unmap_domain_page(table);
-
-    return rc;
-}
-
-int p2m_set_entry(struct p2m_domain *p2m,
-                  gfn_t sgfn,
-                  unsigned long nr,
-                  mfn_t smfn,
-                  p2m_type_t t,
-                  p2m_access_t a)
-{
-    int rc = 0;
-
-    /*
-     * Any reference taken by the P2M mappings (e.g. foreign mapping) will
-     * be dropped in relinquish_p2m_mapping(). As the P2M will still
-     * be accessible after, we need to prevent mapping to be added when the
-     * domain is dying.
-     */
-    if ( unlikely(p2m->domain->is_dying) )
-        return -ENOMEM;
-
-    while ( nr )
-    {
-        unsigned long mask;
-        unsigned long order;
-
-        /*
-         * Don't take into account the MFN when removing mapping (i.e
-         * MFN_INVALID) to calculate the correct target order.
-         *
-         * XXX: Support superpage mappings if nr is not aligned to a
-         * superpage size.
-         */
-        mask = !mfn_eq(smfn, INVALID_MFN) ? mfn_x(smfn) : 0;
-        mask |= gfn_x(sgfn) | nr;
-
-        /* Always map 4k by 4k when memaccess is enabled */
-        if ( unlikely(p2m->mem_access_enabled) )
-            order = THIRD_ORDER;
-        else if ( !(mask & ((1UL << FIRST_ORDER) - 1)) )
-            order = FIRST_ORDER;
-        else if ( !(mask & ((1UL << SECOND_ORDER) - 1)) )
-            order = SECOND_ORDER;
-        else
-            order = THIRD_ORDER;
-
-        rc = __p2m_set_entry(p2m, sgfn, order, smfn, t, a);
-        if ( rc )
-            break;
-
-        sgfn = gfn_add(sgfn, (1 << order));
-        if ( !mfn_eq(smfn, INVALID_MFN) )
-           smfn = mfn_add(smfn, (1 << order));
-
-        nr -= (1 << order);
-    }
-
-    return rc;
-}
-
-/* Invalidate all entries in the table. The p2m should be write locked. */
-static void p2m_invalidate_table(struct p2m_domain *p2m, mfn_t mfn)
-{
-    lpae_t *table;
-    unsigned int i;
-
-    ASSERT(p2m_is_write_locked(p2m));
-
-    table = map_domain_page(mfn);
-
-    for ( i = 0; i < XEN_PT_LPAE_ENTRIES; i++ )
-    {
-        lpae_t pte = table[i];
-
-        /*
-         * Writing an entry can be expensive because it may involve
-         * cleaning the cache. So avoid updating the entry if the valid
-         * bit is already cleared.
-         */
-        if ( !pte.p2m.valid )
-            continue;
-
-        pte.p2m.valid = 0;
-
-        p2m_write_pte(&table[i], pte, p2m->clean_pte);
-    }
-
-    unmap_domain_page(table);
-
-    p2m->need_flush = true;
-}
-
-/*
- * The domain will not be scheduled anymore, so in theory we should
- * not need to flush the TLBs. Do it for safety purpose.
- * Note that all the devices have already been de-assigned. So we don't
- * need to flush the IOMMU TLB here.
- */
-void p2m_clear_root_pages(struct p2m_domain *p2m)
-{
-    unsigned int i;
-
-    p2m_write_lock(p2m);
-
-    for ( i = 0; i < P2M_ROOT_PAGES; i++ )
-        clear_and_clean_page(p2m->root + i);
-
-    p2m_force_tlb_flush_sync(p2m);
-
-    p2m_write_unlock(p2m);
+    write_unlock(&p2m->lock);
 }
 
-/*
- * Invalidate all entries in the root page-tables. This is
- * useful to get fault on entry and do an action.
- *
- * p2m_invalid_root() should not be called when the P2M is shared with
- * the IOMMU because it will cause IOMMU fault.
- */
-void p2m_invalidate_root(struct p2m_domain *p2m)
+void memory_type_changed(struct domain *d)
 {
-    unsigned int i;
+}
 
-    ASSERT(!iommu_use_hap_pt(p2m->domain));
+void dump_p2m_lookup(struct domain *d, paddr_t addr)
+{
+    struct p2m_domain *p2m = p2m_get_hostp2m(d);
 
-    p2m_write_lock(p2m);
+    printk("dom%d IPA 0x%"PRIpaddr"\n", d->domain_id, addr);
 
-    for ( i = 0; i < P2M_ROOT_LEVEL; i++ )
-        p2m_invalidate_table(p2m, page_to_mfn(p2m->root + i));
+    printk("P2M @ %p mfn:%#"PRI_mfn"\n",
+           p2m->root, mfn_x(page_to_mfn(p2m->root)));
 
-    p2m_write_unlock(p2m);
+    dump_pt_walk(page_to_maddr(p2m->root), addr,
+                 P2M_ROOT_LEVEL, P2M_ROOT_PAGES);
 }
 
-/*
- * Resolve any translation fault due to change in the p2m. This
- * includes break-before-make and valid bit cleared.
- */
-bool p2m_resolve_translation_fault(struct domain *d, gfn_t gfn)
+mfn_t p2m_lookup(struct domain *d, gfn_t gfn, p2m_type_t *t)
 {
+    mfn_t mfn;
     struct p2m_domain *p2m = p2m_get_hostp2m(d);
-    unsigned int level = 0;
-    bool resolved = false;
-    lpae_t entry, *table;
-
-    /* Convenience aliases */
-    DECLARE_OFFSETS(offsets, gfn_to_gaddr(gfn));
-
-    p2m_write_lock(p2m);
 
-    /* This gfn is higher than the highest the p2m map currently holds */
-    if ( gfn_x(gfn) > gfn_x(p2m->max_mapped_gfn) )
-        goto out;
+    p2m_read_lock(p2m);
+    mfn = p2m_get_entry(p2m, gfn, t, NULL, NULL, NULL);
+    p2m_read_unlock(p2m);
 
-    table = p2m_get_root_pointer(p2m, gfn);
-    /*
-     * The table should always be non-NULL because the gfn is below
-     * p2m->max_mapped_gfn and the root table pages are always present.
-     */
-    if ( !table )
-    {
-        ASSERT_UNREACHABLE();
-        goto out;
-    }
+    return mfn;
+}
 
-    /*
-     * Go down the page-tables until an entry has the valid bit unset or
-     * a block/page entry has been hit.
-     */
-    for ( level = P2M_ROOT_LEVEL; level <= 3; level++ )
-    {
-        int rc;
+struct page_info *p2m_get_page_from_gfn(struct domain *d, gfn_t gfn,
+                                        p2m_type_t *t)
+{
+    struct page_info *page;
+    p2m_type_t p2mt;
+    mfn_t mfn = p2m_lookup(d, gfn, &p2mt);
 
-        entry = table[offsets[level]];
+    if ( t )
+        *t = p2mt;
 
-        if ( level == 3 )
-            break;
+    if ( !p2m_is_any_ram(p2mt) )
+        return NULL;
 
-        /* Stop as soon as we hit an entry with the valid bit unset. */
-        if ( !lpae_is_valid(entry) )
-            break;
+    if ( !mfn_valid(mfn) )
+        return NULL;
 
-        rc = p2m_next_level(p2m, true, level, &table, offsets[level]);
-        if ( rc == GUEST_TABLE_MAP_FAILED )
-            goto out_unmap;
-        else if ( rc != GUEST_TABLE_NORMAL_PAGE )
-            break;
-    }
+    page = mfn_to_page(mfn);
 
     /*
-     * If the valid bit of the entry is set, it means someone was playing with
-     * the Stage-2 page table. Nothing to do and mark the fault as resolved.
+     * get_page won't work on foreign mapping because the page doesn't
+     * belong to the current domain.
      */
-    if ( lpae_is_valid(entry) )
+    if ( p2m_is_foreign(p2mt) )
     {
-        resolved = true;
-        goto out_unmap;
+        struct domain *fdom = page_get_owner_and_reference(page);
+        ASSERT(fdom != NULL);
+        ASSERT(fdom != d);
+        return page;
     }
 
-    /*
-     * The valid bit is unset. If the entry is still not valid then the fault
-     * cannot be resolved, exit and report it.
-     */
-    if ( !p2m_is_valid(entry) )
-        goto out_unmap;
-
-    /*
-     * Now we have an entry with valid bit unset, but still valid from
-     * the P2M point of view.
-     *
-     * If an entry is pointing to a table, each entry of the table will
-     * have there valid bit cleared. This allows a function to clear the
-     * full p2m with just a couple of write. The valid bit will then be
-     * propagated on the fault.
-     * If an entry is pointing to a block/page, no work to do for now.
-     */
-    if ( lpae_is_table(entry, level) )
-        p2m_invalidate_table(p2m, lpae_get_mfn(entry));
-
-    /*
-     * Now that the work on the entry is done, set the valid bit to prevent
-     * another fault on that entry.
-     */
-    resolved = true;
-    entry.p2m.valid = 1;
-
-    p2m_write_pte(table + offsets[level], entry, p2m->clean_pte);
-
-    /*
-     * No need to flush the TLBs as the modified entry had the valid bit
-     * unset.
-     */
-
-out_unmap:
-    unmap_domain_page(table);
+    return get_page(page, d) ? page : NULL;
+}
 
-out:
-    p2m_write_unlock(p2m);
+int guest_physmap_mark_populate_on_demand(struct domain *d,
+                                          unsigned long gfn,
+                                          unsigned int order)
+{
+    return -ENOSYS;
+}
 
-    return resolved;
+unsigned long p2m_pod_decrease_reservation(struct domain *d, gfn_t gfn,
+                                           unsigned int order)
+{
+    return 0;
 }
 
 int p2m_insert_mapping(struct domain *d, gfn_t start_gfn, unsigned long nr,
@@ -1612,44 +258,6 @@ int set_foreign_p2m_entry(struct domain *d, const struct domain *fd,
     return rc;
 }
 
-static struct page_info *p2m_allocate_root(void)
-{
-    struct page_info *page;
-    unsigned int i;
-
-    page = alloc_domheap_pages(NULL, P2M_ROOT_ORDER, 0);
-    if ( page == NULL )
-        return NULL;
-
-    /* Clear both first level pages */
-    for ( i = 0; i < P2M_ROOT_PAGES; i++ )
-        clear_and_clean_page(page + i);
-
-    return page;
-}
-
-static int p2m_alloc_table(struct domain *d)
-{
-    struct p2m_domain *p2m = p2m_get_hostp2m(d);
-
-    p2m->root = p2m_allocate_root();
-    if ( !p2m->root )
-        return -ENOMEM;
-
-    p2m->vttbr = generate_vttbr(p2m->vmid, page_to_mfn(p2m->root));
-
-    /*
-     * Make sure that all TLBs corresponding to the new VMID are flushed
-     * before using it
-     */
-    p2m_write_lock(p2m);
-    p2m_force_tlb_flush_sync(p2m);
-    p2m_write_unlock(p2m);
-
-    return 0;
-}
-
-
 static spinlock_t vmid_alloc_lock = SPIN_LOCK_UNLOCKED;
 
 /*
@@ -1660,7 +268,7 @@ static spinlock_t vmid_alloc_lock = SPIN_LOCK_UNLOCKED;
  */
 static unsigned long *vmid_mask;
 
-static void p2m_vmid_allocator_init(void)
+void p2m_vmid_allocator_init(void)
 {
     /*
      * allocate space for vmid_mask based on MAX_VMID
@@ -1673,7 +281,7 @@ static void p2m_vmid_allocator_init(void)
     set_bit(INVALID_VMID, vmid_mask);
 }
 
-static int p2m_alloc_vmid(struct domain *d)
+int p2m_alloc_vmid(struct domain *d)
 {
     struct p2m_domain *p2m = p2m_get_hostp2m(d);
 
@@ -1713,32 +321,6 @@ static void p2m_free_vmid(struct domain *d)
     spin_unlock(&vmid_alloc_lock);
 }
 
-int p2m_teardown(struct domain *d)
-{
-    struct p2m_domain *p2m = p2m_get_hostp2m(d);
-    unsigned long count = 0;
-    struct page_info *pg;
-    int rc = 0;
-
-    p2m_write_lock(p2m);
-
-    while ( (pg = page_list_remove_head(&p2m->pages)) )
-    {
-        p2m_free_page(p2m->domain, pg);
-        count++;
-        /* Arbitrarily preempt every 512 iterations */
-        if ( !(count % 512) && hypercall_preempt_check() )
-        {
-            rc = -ERESTART;
-            break;
-        }
-    }
-
-    p2m_write_unlock(p2m);
-
-    return rc;
-}
-
 void p2m_final_teardown(struct domain *d)
 {
     struct p2m_domain *p2m = p2m_get_hostp2m(d);
@@ -1771,129 +353,6 @@ void p2m_final_teardown(struct domain *d)
     p2m->domain = NULL;
 }
 
-int p2m_init(struct domain *d)
-{
-    struct p2m_domain *p2m = p2m_get_hostp2m(d);
-    int rc;
-    unsigned int cpu;
-
-    rwlock_init(&p2m->lock);
-    spin_lock_init(&d->arch.paging.lock);
-    INIT_PAGE_LIST_HEAD(&p2m->pages);
-    INIT_PAGE_LIST_HEAD(&d->arch.paging.p2m_freelist);
-
-    p2m->vmid = INVALID_VMID;
-    p2m->max_mapped_gfn = _gfn(0);
-    p2m->lowest_mapped_gfn = _gfn(ULONG_MAX);
-
-    p2m->default_access = p2m_access_rwx;
-    p2m->mem_access_enabled = false;
-    radix_tree_init(&p2m->mem_access_settings);
-
-    /*
-     * Some IOMMUs don't support coherent PT walk. When the p2m is
-     * shared with the CPU, Xen has to make sure that the PT changes have
-     * reached the memory
-     */
-    p2m->clean_pte = is_iommu_enabled(d) &&
-        !iommu_has_feature(d, IOMMU_FEAT_COHERENT_WALK);
-
-    /*
-     * Make sure that the type chosen to is able to store the an vCPU ID
-     * between 0 and the maximum of virtual CPUS supported as long as
-     * the INVALID_VCPU_ID.
-     */
-    BUILD_BUG_ON((1 << (sizeof(p2m->last_vcpu_ran[0]) * 8)) < MAX_VIRT_CPUS);
-    BUILD_BUG_ON((1 << (sizeof(p2m->last_vcpu_ran[0])* 8)) < INVALID_VCPU_ID);
-
-    for_each_possible_cpu(cpu)
-       p2m->last_vcpu_ran[cpu] = INVALID_VCPU_ID;
-
-    /*
-     * "Trivial" initialisation is now complete.  Set the backpointer so
-     * p2m_teardown() and friends know to do something.
-     */
-    p2m->domain = d;
-
-    rc = p2m_alloc_vmid(d);
-    if ( rc )
-        return rc;
-
-    rc = p2m_alloc_table(d);
-    if ( rc )
-        return rc;
-
-    return 0;
-}
-
-/*
- * The function will go through the p2m and remove page reference when it
- * is required. The mapping will be removed from the p2m.
- *
- * XXX: See whether the mapping can be left intact in the p2m.
- */
-int relinquish_p2m_mapping(struct domain *d)
-{
-    struct p2m_domain *p2m = p2m_get_hostp2m(d);
-    unsigned long count = 0;
-    p2m_type_t t;
-    int rc = 0;
-    unsigned int order;
-    gfn_t start, end;
-
-    BUG_ON(!d->is_dying);
-    /* No mappings can be added in the P2M after the P2M lock is released. */
-    p2m_write_lock(p2m);
-
-    start = p2m->lowest_mapped_gfn;
-    end = gfn_add(p2m->max_mapped_gfn, 1);
-
-    for ( ; gfn_x(start) < gfn_x(end);
-          start = gfn_next_boundary(start, order) )
-    {
-        mfn_t mfn = p2m_get_entry(p2m, start, &t, NULL, &order, NULL);
-
-        count++;
-        /*
-         * Arbitrarily preempt every 512 iterations.
-         */
-        if ( !(count % 512) && hypercall_preempt_check() )
-        {
-            rc = -ERESTART;
-            break;
-        }
-
-        /*
-         * p2m_set_entry will take care of removing reference on page
-         * when it is necessary and removing the mapping in the p2m.
-         */
-        if ( !mfn_eq(mfn, INVALID_MFN) )
-        {
-            /*
-             * For valid mapping, the start will always be aligned as
-             * entry will be removed whilst relinquishing.
-             */
-            rc = __p2m_set_entry(p2m, start, order, INVALID_MFN,
-                                 p2m_invalid, p2m_access_rwx);
-            if ( unlikely(rc) )
-            {
-                printk(XENLOG_G_ERR "Unable to remove mapping gfn=%#"PRI_gfn" order=%u from the p2m of domain %d\n", gfn_x(start), order, d->domain_id);
-                break;
-            }
-        }
-    }
-
-    /*
-     * Update lowest_mapped_gfn so on the next call we still start where
-     * we stopped.
-     */
-    p2m->lowest_mapped_gfn = start;
-
-    p2m_write_unlock(p2m);
-
-    return rc;
-}
-
 int p2m_cache_flush_range(struct domain *d, gfn_t *pstart, gfn_t end)
 {
     struct p2m_domain *p2m = p2m_get_hostp2m(d);
@@ -1987,43 +446,6 @@ int p2m_cache_flush_range(struct domain *d, gfn_t *pstart, gfn_t end)
     return rc;
 }
 
-/*
- * Clean & invalidate RAM associated to the guest vCPU.
- *
- * The function can only work with the current vCPU and should be called
- * with IRQ enabled as the vCPU could get preempted.
- */
-void p2m_flush_vm(struct vcpu *v)
-{
-    struct p2m_domain *p2m = p2m_get_hostp2m(v->domain);
-    int rc;
-    gfn_t start = _gfn(0);
-
-    ASSERT(v == current);
-    ASSERT(local_irq_is_enabled());
-    ASSERT(v->arch.need_flush_to_ram);
-
-    do
-    {
-        rc = p2m_cache_flush_range(v->domain, &start, _gfn(ULONG_MAX));
-        if ( rc == -ERESTART )
-            do_softirq();
-    } while ( rc == -ERESTART );
-
-    if ( rc != 0 )
-        gprintk(XENLOG_WARNING,
-                "P2M has not been correctly cleaned (rc = %d)\n",
-                rc);
-
-    /*
-     * Invalidate the p2m to track which page was modified by the guest
-     * between call of p2m_flush_vm().
-     */
-    p2m_invalidate_root(p2m);
-
-    v->arch.need_flush_to_ram = false;
-}
-
 /*
  * See note at ARMv7 ARM B1.14.4 (DDI 0406C.c) (TL;DR: S/W ops are not
  * easily virtualized).
@@ -2217,159 +639,6 @@ void __init p2m_restrict_ipa_bits(unsigned int ipa_bits)
         p2m_ipa_bits = ipa_bits;
 }
 
-/* VTCR value to be configured by all CPUs. Set only once by the boot CPU */
-static register_t __read_mostly vtcr;
-
-static void setup_virt_paging_one(void *data)
-{
-    WRITE_SYSREG(vtcr, VTCR_EL2);
-
-    /*
-     * ARM64_WORKAROUND_AT_SPECULATE: We want to keep the TLBs free from
-     * entries related to EL1/EL0 translation regime until a guest vCPU
-     * is running. For that, we need to set-up VTTBR to point to an empty
-     * page-table and turn on stage-2 translation. The TLB entries
-     * associated with EL1/EL0 translation regime will also be flushed in case
-     * an AT instruction was speculated before hand.
-     */
-    if ( cpus_have_cap(ARM64_WORKAROUND_AT_SPECULATE) )
-    {
-        WRITE_SYSREG64(generate_vttbr(INVALID_VMID, empty_root_mfn), VTTBR_EL2);
-        WRITE_SYSREG(READ_SYSREG(HCR_EL2) | HCR_VM, HCR_EL2);
-        isb();
-
-        flush_all_guests_tlb_local();
-    }
-}
-
-void __init setup_virt_paging(void)
-{
-    /* Setup Stage 2 address translation */
-    register_t val = VTCR_RES1|VTCR_SH0_IS|VTCR_ORGN0_WBWA|VTCR_IRGN0_WBWA;
-
-    static const struct {
-        unsigned int pabits; /* Physical Address Size */
-        unsigned int t0sz;   /* Desired T0SZ, minimum in comment */
-        unsigned int root_order; /* Page order of the root of the p2m */
-        unsigned int sl0;    /* Desired SL0, maximum in comment */
-    } pa_range_info[] __initconst = {
-        /* T0SZ minimum and SL0 maximum from ARM DDI 0487H.a Table D5-6 */
-        /*      PA size, t0sz(min), root-order, sl0(max) */
-#ifdef CONFIG_ARM_64
-        [0] = { 32,      32/*32*/,  0,          1 },
-        [1] = { 36,      28/*28*/,  0,          1 },
-        [2] = { 40,      24/*24*/,  1,          1 },
-        [3] = { 42,      22/*22*/,  3,          1 },
-        [4] = { 44,      20/*20*/,  0,          2 },
-        [5] = { 48,      16/*16*/,  0,          2 },
-        [6] = { 52,      12/*12*/,  4,          2 },
-        [7] = { 0 }  /* Invalid */
-#else
-        { 32,      0/*0*/,    0,          1 },
-        { 40,      24/*24*/,  1,          1 }
-#endif
-    };
-
-    unsigned int i;
-    unsigned int pa_range = 0x10; /* Larger than any possible value */
-
-#ifdef CONFIG_ARM_32
-    /*
-     * Typecast pa_range_info[].t0sz into arm32 bit variant.
-     *
-     * VTCR.T0SZ is bits [3:0] and S(sign extension), bit[4] for arm322.
-     * Thus, pa_range_info[].t0sz is translated to its arm32 variant using
-     * struct bitfields.
-     */
-    struct
-    {
-        signed int val:5;
-    } t0sz_32;
-#else
-    /*
-     * Restrict "p2m_ipa_bits" if needed. As P2M table is always configured
-     * with IPA bits == PA bits, compare against "pabits".
-     */
-    if ( pa_range_info[system_cpuinfo.mm64.pa_range].pabits < p2m_ipa_bits )
-        p2m_ipa_bits = pa_range_info[system_cpuinfo.mm64.pa_range].pabits;
-
-    /*
-     * cpu info sanitization made sure we support 16bits VMID only if all
-     * cores are supporting it.
-     */
-    if ( system_cpuinfo.mm64.vmid_bits == MM64_VMID_16_BITS_SUPPORT )
-        max_vmid = MAX_VMID_16_BIT;
-#endif
-
-    /* Choose suitable "pa_range" according to the resulted "p2m_ipa_bits". */
-    for ( i = 0; i < ARRAY_SIZE(pa_range_info); i++ )
-    {
-        if ( p2m_ipa_bits == pa_range_info[i].pabits )
-        {
-            pa_range = i;
-            break;
-        }
-    }
-
-    /* Check if we found the associated entry in the array */
-    if ( pa_range >= ARRAY_SIZE(pa_range_info) || !pa_range_info[pa_range].pabits )
-        panic("%u-bit P2M is not supported\n", p2m_ipa_bits);
-
-#ifdef CONFIG_ARM_64
-    val |= VTCR_PS(pa_range);
-    val |= VTCR_TG0_4K;
-
-    /* Set the VS bit only if 16 bit VMID is supported. */
-    if ( MAX_VMID == MAX_VMID_16_BIT )
-        val |= VTCR_VS;
-#endif
-
-    val |= VTCR_SL0(pa_range_info[pa_range].sl0);
-    val |= VTCR_T0SZ(pa_range_info[pa_range].t0sz);
-
-    p2m_root_order = pa_range_info[pa_range].root_order;
-    p2m_root_level = 2 - pa_range_info[pa_range].sl0;
-
-#ifdef CONFIG_ARM_64
-    p2m_ipa_bits = 64 - pa_range_info[pa_range].t0sz;
-#else
-    t0sz_32.val = pa_range_info[pa_range].t0sz;
-    p2m_ipa_bits = 32 - t0sz_32.val;
-#endif
-
-    printk("P2M: %d-bit IPA with %d-bit PA and %d-bit VMID\n",
-           p2m_ipa_bits,
-           pa_range_info[pa_range].pabits,
-           ( MAX_VMID == MAX_VMID_16_BIT ) ? 16 : 8);
-
-    printk("P2M: %d levels with order-%d root, VTCR 0x%"PRIregister"\n",
-           4 - P2M_ROOT_LEVEL, P2M_ROOT_ORDER, val);
-
-    p2m_vmid_allocator_init();
-
-    /* It is not allowed to concatenate a level zero root */
-    BUG_ON( P2M_ROOT_LEVEL == 0 && P2M_ROOT_ORDER > 0 );
-    vtcr = val;
-
-    /*
-     * ARM64_WORKAROUND_AT_SPECULATE requires to allocate root table
-     * with all entries zeroed.
-     */
-    if ( cpus_have_cap(ARM64_WORKAROUND_AT_SPECULATE) )
-    {
-        struct page_info *root;
-
-        root = p2m_allocate_root();
-        if ( !root )
-            panic("Unable to allocate root table for ARM64_WORKAROUND_AT_SPECULATE\n");
-
-        empty_root_mfn = page_to_mfn(root);
-    }
-
-    setup_virt_paging_one(NULL);
-    smp_call_function(setup_virt_paging_one, NULL, 1);
-}
-
 static int cpu_virt_paging_callback(struct notifier_block *nfb,
                                     unsigned long action,
                                     void *hcpu)
-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Mon Oct 09 06:55:12 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 09 Oct 2023 06:55:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614149.955124 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qpkAX-0006nN-HG; Mon, 09 Oct 2023 06:55:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614149.955124; Mon, 09 Oct 2023 06: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 1qpkAX-0006mz-9k; Mon, 09 Oct 2023 06:55:09 +0000
Received: by outflank-mailman (input) for mailman id 614149;
 Mon, 09 Oct 2023 06: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=o9Np=FX=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qpkAW-0005Uv-IB
 for xen-devel@lists.xenproject.org; Mon, 09 Oct 2023 06:55:08 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id c8534936-6670-11ee-98d3-6d05b1d4d9a1;
 Mon, 09 Oct 2023 08:55:08 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id 378CE4EE0748;
 Mon,  9 Oct 2023 08:55: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: c8534936-6670-11ee-98d3-6d05b1d4d9a1
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>
Subject: [XEN PATCH][for-4.19 v2 6/7] xen/console: make function static inline
Date: Mon,  9 Oct 2023 08:54:51 +0200
Message-Id: <6ca7d9834079b7824f9432799cce2308aa88d159.1696833629.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1696833629.git.nicola.vetrini@bugseng.com>
References: <cover.1696833629.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The definition of 'consoled_guest_tx' can be static inline,
thereby fixing a violation of MISRA C:2012 Rule 8.4.

Fixes: 5ef49f185c2d ("x86/pv-shim: shadow PV console's page for L2 DomU")
Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
---
 xen/include/xen/consoled.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/xen/include/xen/consoled.h b/xen/include/xen/consoled.h
index fd5d220a8aca..e943d8d48f7b 100644
--- a/xen/include/xen/consoled.h
+++ b/xen/include/xen/consoled.h
@@ -12,7 +12,7 @@ size_t consoled_guest_tx(char c);
 
 #else
 
-size_t consoled_guest_tx(char c) { return 0; }
+static inline size_t consoled_guest_tx(char c) { return 0; }
 
 #endif /* !CONFIG_PV_SHIM */
 #endif /* __XEN_CONSOLED_H__ */
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Mon Oct 09 06:55:12 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 09 Oct 2023 06:55:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614147.955109 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qpkAV-0006TC-UL; Mon, 09 Oct 2023 06:55:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614147.955109; Mon, 09 Oct 2023 06: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 1qpkAV-0006Rx-Nm; Mon, 09 Oct 2023 06:55:07 +0000
Received: by outflank-mailman (input) for mailman id 614147;
 Mon, 09 Oct 2023 06:55: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=o9Np=FX=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qpkAT-0005gg-SC
 for xen-devel@lists.xenproject.org; Mon, 09 Oct 2023 06:55:05 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id c516bf5e-6670-11ee-9b0d-b553b5be7939;
 Mon, 09 Oct 2023 08:55:02 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id 014274EE0745;
 Mon,  9 Oct 2023 08:55: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: c516bf5e-6670-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>
Subject: [XEN PATCH v2 3/7] x86: add deviation comments for asm-only functions
Date: Mon,  9 Oct 2023 08:54:48 +0200
Message-Id: <6476706490cc15406bcf3377a57b7c4a303c4901.1696833629.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1696833629.git.nicola.vetrini@bugseng.com>
References: <cover.1696833629.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

As stated in rules.rst, functions used only in asm code
are allowed to have no prior declaration visible when being
defined, hence these functions are deviated.
This also fixes violations of MISRA C:2012 Rule 8.4.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
---
 xen/arch/x86/hvm/svm/intr.c      | 1 +
 xen/arch/x86/hvm/svm/nestedsvm.c | 1 +
 xen/arch/x86/hvm/svm/svm.c       | 2 ++
 xen/arch/x86/traps.c             | 1 +
 xen/arch/x86/x86_64/traps.c      | 1 +
 5 files changed, 6 insertions(+)

diff --git a/xen/arch/x86/hvm/svm/intr.c b/xen/arch/x86/hvm/svm/intr.c
index 192e17ebbfbb..bd9dc560bbc6 100644
--- a/xen/arch/x86/hvm/svm/intr.c
+++ b/xen/arch/x86/hvm/svm/intr.c
@@ -123,6 +123,7 @@ static void svm_enable_intr_window(struct vcpu *v, struct hvm_intack intack)
         vmcb, general1_intercepts | GENERAL1_INTERCEPT_VINTR);
 }

+/* SAF-1-safe */
 void svm_intr_assist(void)
 {
     struct vcpu *v = current;
diff --git a/xen/arch/x86/hvm/svm/nestedsvm.c b/xen/arch/x86/hvm/svm/nestedsvm.c
index a09b6abaaeaf..c80d59e0728e 100644
--- a/xen/arch/x86/hvm/svm/nestedsvm.c
+++ b/xen/arch/x86/hvm/svm/nestedsvm.c
@@ -1441,6 +1441,7 @@ nestedsvm_vcpu_vmexit(struct vcpu *v, struct cpu_user_regs *regs,
 }

 /* VCPU switch */
+/* SAF-1-safe */
 void nsvm_vcpu_switch(void)
 {
     struct cpu_user_regs *regs = guest_cpu_user_regs();
diff --git a/xen/arch/x86/hvm/svm/svm.c b/xen/arch/x86/hvm/svm/svm.c
index beb076ea8d62..b9fabd45a119 100644
--- a/xen/arch/x86/hvm/svm/svm.c
+++ b/xen/arch/x86/hvm/svm/svm.c
@@ -1044,6 +1044,7 @@ static void noreturn cf_check svm_do_resume(void)
     reset_stack_and_jump(svm_asm_do_resume);
 }

+/* SAF-1-safe */
 void svm_vmenter_helper(void)
 {
     const struct cpu_user_regs *regs = guest_cpu_user_regs();
@@ -2574,6 +2575,7 @@ const struct hvm_function_table * __init start_svm(void)
     return &svm_function_table;
 }

+/* SAF-1-safe */
 void svm_vmexit_handler(void)
 {
     struct cpu_user_regs *regs = guest_cpu_user_regs();
diff --git a/xen/arch/x86/traps.c b/xen/arch/x86/traps.c
index 0a005f088bca..f27ddb728b2c 100644
--- a/xen/arch/x86/traps.c
+++ b/xen/arch/x86/traps.c
@@ -2260,6 +2260,7 @@ void asm_domain_crash_synchronous(unsigned long addr)
 }

 #ifdef CONFIG_DEBUG
+/* SAF-1-safe */
 void check_ist_exit(const struct cpu_user_regs *regs, bool ist_exit)
 {
     const unsigned int ist_mask =
diff --git a/xen/arch/x86/x86_64/traps.c b/xen/arch/x86/x86_64/traps.c
index e03e80813e36..5963d26d7848 100644
--- a/xen/arch/x86/x86_64/traps.c
+++ b/xen/arch/x86/x86_64/traps.c
@@ -266,6 +266,7 @@ void show_page_walk(unsigned long addr)
            l1_table_offset(addr), l1e_get_intpte(l1e), pfn);
 }

+/* SAF-1-safe */
 void do_double_fault(struct cpu_user_regs *regs)
 {
     unsigned int cpu;
--
2.34.1


From xen-devel-bounces@lists.xenproject.org Mon Oct 09 06:55:12 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 09 Oct 2023 06:55:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614148.955119 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qpkAX-0006l7-5f; Mon, 09 Oct 2023 06:55:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614148.955119; Mon, 09 Oct 2023 06: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 1qpkAX-0006kz-1x; Mon, 09 Oct 2023 06:55:09 +0000
Received: by outflank-mailman (input) for mailman id 614148;
 Mon, 09 Oct 2023 06: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=o9Np=FX=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qpkAV-0005gg-NH
 for xen-devel@lists.xenproject.org; Mon, 09 Oct 2023 06:55:07 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id c7482249-6670-11ee-9b0d-b553b5be7939;
 Mon, 09 Oct 2023 08:55:06 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id 452324EE0747;
 Mon,  9 Oct 2023 08:55: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: c7482249-6670-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>,
	Tamas K Lengyel <tamas@tklengyel.com>,
	Alexandru Isaila <aisaila@bitdefender.com>,
	Petre Pircalabu <ppircalabu@bitdefender.com>,
	Wei Liu <wl@xen.org>
Subject: [XEN PATCH][for-next v2 5/7] x86/vm_event: add missing include for hvm_vm_event_do_resume
Date: Mon,  9 Oct 2023 08:54:50 +0200
Message-Id: <4f506769acca31d3d9f36b893822581720050d61.1696833629.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1696833629.git.nicola.vetrini@bugseng.com>
References: <cover.1696833629.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The missing header makes the declaration visible when the function
is defined, thereby fixing a violation of MISRA C:2012 Rule 8.4.

Fixes: 1366a0e76db6 ("x86/vm_event: add hvm/vm_event.{h,c}")
Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
---
 xen/arch/x86/hvm/vm_event.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/xen/arch/x86/hvm/vm_event.c b/xen/arch/x86/hvm/vm_event.c
index 3b064bcfade5..c1af230e7aed 100644
--- a/xen/arch/x86/hvm/vm_event.c
+++ b/xen/arch/x86/hvm/vm_event.c
@@ -24,6 +24,7 @@
 #include <xen/vm_event.h>
 #include <asm/hvm/emulate.h>
 #include <asm/hvm/support.h>
+#include <asm/hvm/vm_event.h>
 #include <asm/vm_event.h>
 
 static void hvm_vm_event_set_registers(const struct vcpu *v)
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Mon Oct 09 06:55:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 09 Oct 2023 06:55:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614146.955091 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qpkAU-0005tB-KX; Mon, 09 Oct 2023 06:55:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614146.955091; Mon, 09 Oct 2023 06: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 1qpkAU-0005rg-Dw; Mon, 09 Oct 2023 06:55:06 +0000
Received: by outflank-mailman (input) for mailman id 614146;
 Mon, 09 Oct 2023 06:55: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=o9Np=FX=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qpkAS-0005gg-Rx
 for xen-devel@lists.xenproject.org; Mon, 09 Oct 2023 06:55:04 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id c42bf46e-6670-11ee-9b0d-b553b5be7939;
 Mon, 09 Oct 2023 08:55:01 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id 70A6D4EE0744;
 Mon,  9 Oct 2023 08:54: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: c42bf46e-6670-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>
Subject: [XEN PATCH v2 2/7] x86: add deviations for variables only used in asm code
Date: Mon,  9 Oct 2023 08:54:47 +0200
Message-Id: <5131b75996d0b91d4a98466f11dd927be910d7e5.1696833629.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1696833629.git.nicola.vetrini@bugseng.com>
References: <cover.1696833629.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

These variables are only used by asm code, and therefore
the lack of a declaration is justified by the corresponding
deviation comment.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
---
 xen/arch/x86/include/asm/asm_defns.h | 1 +
 xen/arch/x86/setup.c                 | 1 +
 2 files changed, 2 insertions(+)

diff --git a/xen/arch/x86/include/asm/asm_defns.h b/xen/arch/x86/include/asm/asm_defns.h
index baaaccb26e17..a2516de7749b 100644
--- a/xen/arch/x86/include/asm/asm_defns.h
+++ b/xen/arch/x86/include/asm/asm_defns.h
@@ -31,6 +31,7 @@ asm ( "\t.equ CONFIG_INDIRECT_THUNK, "
  * gets set up by the containing function.
  */
 #ifdef CONFIG_FRAME_POINTER
+/* SAF-1-safe */
 register unsigned long current_stack_pointer asm("rsp");
 # define ASM_CALL_CONSTRAINT , "+r" (current_stack_pointer)
 #else
diff --git a/xen/arch/x86/setup.c b/xen/arch/x86/setup.c
index 08ba1f95d635..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 };
--
2.34.1


From xen-devel-bounces@lists.xenproject.org Mon Oct 09 06:55:12 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 09 Oct 2023 06:55:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614150.955139 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qpkAZ-0007KV-Uu; Mon, 09 Oct 2023 06:55:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614150.955139; Mon, 09 Oct 2023 06: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 1qpkAZ-0007KE-Pm; Mon, 09 Oct 2023 06:55:11 +0000
Received: by outflank-mailman (input) for mailman id 614150;
 Mon, 09 Oct 2023 06:55: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=o9Np=FX=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qpkAY-0005Uv-FZ
 for xen-devel@lists.xenproject.org; Mon, 09 Oct 2023 06:55:10 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id c978df84-6670-11ee-98d3-6d05b1d4d9a1;
 Mon, 09 Oct 2023 08:55:09 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id ECB2C4EE073F;
 Mon,  9 Oct 2023 08:55: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: c978df84-6670-11ee-98d3-6d05b1d4d9a1
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>,
	Tamas K Lengyel <tamas@tklengyel.com>,
	Alexandru Isaila <aisaila@bitdefender.com>,
	Petre Pircalabu <ppircalabu@bitdefender.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Wei Liu <wl@xen.org>
Subject: [XEN PATCH][for-next v2 7/7] x86/mem_access: make function static
Date: Mon,  9 Oct 2023 08:54:52 +0200
Message-Id: <f9dcb169ad472fe888d6a03234264ec73e290df9.1696833629.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1696833629.git.nicola.vetrini@bugseng.com>
References: <cover.1696833629.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The function is used only within this file, and therefore can be static.

No functional change.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
---
 xen/arch/x86/mm/mem_access.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/xen/arch/x86/mm/mem_access.c b/xen/arch/x86/mm/mem_access.c
index c472fa1ee58b..78633d335d72 100644
--- a/xen/arch/x86/mm/mem_access.c
+++ b/xen/arch/x86/mm/mem_access.c
@@ -249,7 +249,7 @@ bool p2m_mem_access_check(paddr_t gpa, unsigned long gla,
     return (p2ma != p2m_access_n2rwx);
 }
 
-int p2m_set_altp2m_mem_access(struct domain *d, struct p2m_domain *hp2m,
+static int p2m_set_altp2m_mem_access(struct domain *d, struct p2m_domain *hp2m,
                               struct p2m_domain *ap2m, p2m_access_t a,
                               gfn_t gfn)
 {
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Mon Oct 09 06:55:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 09 Oct 2023 06:55:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614144.955079 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qpkAU-0005kU-1A; Mon, 09 Oct 2023 06:55:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614144.955079; Mon, 09 Oct 2023 06:55: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 1qpkAT-0005kN-U2; Mon, 09 Oct 2023 06:55:05 +0000
Received: by outflank-mailman (input) for mailman id 614144;
 Mon, 09 Oct 2023 06:55: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=o9Np=FX=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qpkAS-0005gg-Kn
 for xen-devel@lists.xenproject.org; Mon, 09 Oct 2023 06:55:04 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id c341d12e-6670-11ee-9b0d-b553b5be7939;
 Mon, 09 Oct 2023 08:54:59 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id 7FDD94EE0743;
 Mon,  9 Oct 2023 08:54: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: c341d12e-6670-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>,
	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>
Subject: [XEN PATCH v2 1/7] xen: add declarations for variables where needed
Date: Mon,  9 Oct 2023 08:54:46 +0200
Message-Id: <002d58b1d15619a8c4b2ec6c2b5f20960ed0a428.1696833629.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1696833629.git.nicola.vetrini@bugseng.com>
References: <cover.1696833629.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Some variables with external linkage used in C code do not have
a visible declaration where they are defined. Providing such
declaration also resolves violations of MISRA C:2012 Rule 8.4.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
---
Changes in v2:
- make xenpf_lock static on ARM
- moved the declaration of cr4_pv32_mask to the appropriate file
---
 xen/arch/arm/include/asm/setup.h  |  3 +++
 xen/arch/arm/include/asm/smp.h    |  3 +++
 xen/arch/arm/platform_hypercall.c |  2 +-
 xen/arch/x86/cpu/mcheck/mce.c     |  6 +++---
 xen/arch/x86/include/asm/compat.h |  1 +
 xen/arch/x86/include/asm/setup.h  |  1 +
 xen/arch/x86/irq.c                |  2 +-
 xen/common/symbols.c              | 17 -----------------
 xen/include/xen/symbols.h         | 18 ++++++++++++++++++
 9 files changed, 31 insertions(+), 22 deletions(-)

diff --git a/xen/arch/arm/include/asm/setup.h b/xen/arch/arm/include/asm/setup.h
index b8866c20f462..8806a74b216d 100644
--- a/xen/arch/arm/include/asm/setup.h
+++ b/xen/arch/arm/include/asm/setup.h
@@ -183,9 +183,12 @@ int map_range_to_domain(const struct dt_device_node *dev,
 extern lpae_t boot_pgtable[XEN_PT_LPAE_ENTRIES];

 #ifdef CONFIG_ARM_64
+extern lpae_t boot_first[XEN_PT_LPAE_ENTRIES];
 extern lpae_t boot_first_id[XEN_PT_LPAE_ENTRIES];
 #endif
+extern lpae_t boot_second[XEN_PT_LPAE_ENTRIES];
 extern lpae_t boot_second_id[XEN_PT_LPAE_ENTRIES];
+extern lpae_t boot_third[XEN_PT_LPAE_ENTRIES * XEN_NR_ENTRIES(2)];
 extern lpae_t boot_third_id[XEN_PT_LPAE_ENTRIES];

 /* Find where Xen will be residing at runtime and return a PT entry */
diff --git a/xen/arch/arm/include/asm/smp.h b/xen/arch/arm/include/asm/smp.h
index 4fabdf5310d8..28bf24a01d95 100644
--- a/xen/arch/arm/include/asm/smp.h
+++ b/xen/arch/arm/include/asm/smp.h
@@ -6,6 +6,9 @@
 #include <asm/current.h>
 #endif

+extern struct init_info init_data;
+extern unsigned long smp_up_cpu;
+
 DECLARE_PER_CPU(cpumask_var_t, cpu_sibling_mask);
 DECLARE_PER_CPU(cpumask_var_t, cpu_core_mask);

diff --git a/xen/arch/arm/platform_hypercall.c b/xen/arch/arm/platform_hypercall.c
index 743687a30390..fde4bc3e5809 100644
--- a/xen/arch/arm/platform_hypercall.c
+++ b/xen/arch/arm/platform_hypercall.c
@@ -17,7 +17,7 @@
 #include <asm/current.h>
 #include <asm/event.h>

-DEFINE_SPINLOCK(xenpf_lock);
+static DEFINE_SPINLOCK(xenpf_lock);

 long do_platform_op(XEN_GUEST_HANDLE_PARAM(xen_platform_op_t) u_xenpf_op)
 {
diff --git a/xen/arch/x86/cpu/mcheck/mce.c b/xen/arch/x86/cpu/mcheck/mce.c
index 6141b7eb9cf1..e855f958030d 100644
--- a/xen/arch/x86/cpu/mcheck/mce.c
+++ b/xen/arch/x86/cpu/mcheck/mce.c
@@ -1682,13 +1682,13 @@ long do_mca(XEN_GUEST_HANDLE_PARAM(xen_mc_t) u_xen_mc)
     return ret;
 }

-int mcinfo_dumpped;
+static int mcinfo_dumped;
 static int cf_check x86_mcinfo_dump_panic(mctelem_cookie_t mctc)
 {
     struct mc_info *mcip = mctelem_dataptr(mctc);

     x86_mcinfo_dump(mcip);
-    mcinfo_dumpped++;
+    mcinfo_dumped++;

     return 0;
 }
@@ -1702,7 +1702,7 @@ static void mc_panic_dump(void)
     for_each_online_cpu(cpu)
         mctelem_process_deferred(cpu, x86_mcinfo_dump_panic,
                                  mctelem_has_deferred_lmce(cpu));
-    dprintk(XENLOG_ERR, "End dump mc_info, %x mcinfo dumped\n", mcinfo_dumpped);
+    dprintk(XENLOG_ERR, "End dump mc_info, %x mcinfo dumped\n", mcinfo_dumped);
 }

 void mc_panic(const char *s)
diff --git a/xen/arch/x86/include/asm/compat.h b/xen/arch/x86/include/asm/compat.h
index 818cad87db67..6f84f1571666 100644
--- a/xen/arch/x86/include/asm/compat.h
+++ b/xen/arch/x86/include/asm/compat.h
@@ -13,6 +13,7 @@ typedef unsigned long full_ptr_t;

 struct domain;
 #ifdef CONFIG_PV32
+extern unsigned long cr4_pv32_mask;
 int switch_compat(struct domain *);
 #else
 #include <xen/errno.h>
diff --git a/xen/arch/x86/include/asm/setup.h b/xen/arch/x86/include/asm/setup.h
index dfdd9e555149..6d22d3bd467a 100644
--- a/xen/arch/x86/include/asm/setup.h
+++ b/xen/arch/x86/include/asm/setup.h
@@ -13,6 +13,7 @@ extern char __2M_rwdata_start[], __2M_rwdata_end[];
 extern unsigned long xenheap_initial_phys_start;
 extern uint64_t boot_tsc_stamp;

+extern char cpu0_stack[STACK_SIZE];
 extern void *stack_start;

 void early_cpu_init(void);
diff --git a/xen/arch/x86/irq.c b/xen/arch/x86/irq.c
index 6abfd8162120..604dba94b052 100644
--- a/xen/arch/x86/irq.c
+++ b/xen/arch/x86/irq.c
@@ -43,7 +43,7 @@ int __read_mostly opt_irq_vector_map = OPT_IRQ_VECTOR_MAP_DEFAULT;
 static unsigned char __read_mostly irq_max_guests;
 integer_param("irq-max-guests", irq_max_guests);

-vmask_t global_used_vector_map;
+static vmask_t global_used_vector_map;

 struct irq_desc __read_mostly *irq_desc = NULL;

diff --git a/xen/common/symbols.c b/xen/common/symbols.c
index 691e61792506..7c3514c65f2e 100644
--- a/xen/common/symbols.c
+++ b/xen/common/symbols.c
@@ -21,23 +21,6 @@
 #include <xen/guest_access.h>
 #include <xen/errno.h>

-#ifdef SYMBOLS_ORIGIN
-extern const unsigned int symbols_offsets[];
-#define symbols_address(n) (SYMBOLS_ORIGIN + symbols_offsets[n])
-#else
-extern const unsigned long symbols_addresses[];
-#define symbols_address(n) symbols_addresses[n]
-#endif
-extern const unsigned int symbols_num_syms;
-extern const u8 symbols_names[];
-
-extern const struct symbol_offset symbols_sorted_offsets[];
-
-extern const u8 symbols_token_table[];
-extern const u16 symbols_token_index[];
-
-extern const unsigned int symbols_markers[];
-
 /* expand a compressed symbol data into the resulting uncompressed string,
    given the offset to where the symbol is in the compressed stream */
 static unsigned int symbols_expand_symbol(unsigned int off, char *result)
diff --git a/xen/include/xen/symbols.h b/xen/include/xen/symbols.h
index 20bbb28ef226..92540409265e 100644
--- a/xen/include/xen/symbols.h
+++ b/xen/include/xen/symbols.h
@@ -33,4 +33,22 @@ struct symbol_offset {
     uint32_t stream; /* .. in the compressed stream.*/
     uint32_t addr;   /* .. and in the fixed size address array. */
 };
+
+#ifdef SYMBOLS_ORIGIN
+extern const unsigned int symbols_offsets[];
+#define symbols_address(n) (SYMBOLS_ORIGIN + symbols_offsets[n])
+#else
+extern const unsigned long symbols_addresses[];
+#define symbols_address(n) symbols_addresses[n]
+#endif
+extern const unsigned int symbols_num_syms;
+extern const u8 symbols_names[];
+
+extern const struct symbol_offset symbols_sorted_offsets[];
+
+extern const u8 symbols_token_table[];
+extern const u16 symbols_token_index[];
+
+extern const unsigned int symbols_markers[];
+
 #endif /*_XEN_SYMBOLS_H*/
--
2.34.1


From xen-devel-bounces@lists.xenproject.org Mon Oct 09 06:55:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 09 Oct 2023 06:55:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614145.955083 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qpkAU-0005o3-8x; Mon, 09 Oct 2023 06:55:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614145.955083; Mon, 09 Oct 2023 06: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 1qpkAU-0005n5-5Z; Mon, 09 Oct 2023 06:55:06 +0000
Received: by outflank-mailman (input) for mailman id 614145;
 Mon, 09 Oct 2023 06:55: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=o9Np=FX=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qpkAS-0005Uv-OE
 for xen-devel@lists.xenproject.org; Mon, 09 Oct 2023 06:55:04 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id c61dae02-6670-11ee-98d3-6d05b1d4d9a1;
 Mon, 09 Oct 2023 08:55:04 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id 849784EE0746;
 Mon,  9 Oct 2023 08:55: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: c61dae02-6670-11ee-98d3-6d05b1d4d9a1
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>
Subject: [XEN PATCH][for-next v2 4/7] x86/grant: switch included header to make declarations visible
Date: Mon,  9 Oct 2023 08:54:49 +0200
Message-Id: <d49c648e940a651790fa6075a3fde40009501262.1696833629.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1696833629.git.nicola.vetrini@bugseng.com>
References: <cover.1696833629.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The declarations for {create,replace}_grant_p2m_mapping are
not visible when these functions are defined, therefore the right
header needs to be included to allow them to be visible.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
---
 xen/arch/x86/hvm/grant_table.c             | 3 +--
 xen/arch/x86/include/asm/hvm/grant_table.h | 2 ++
 2 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/xen/arch/x86/hvm/grant_table.c b/xen/arch/x86/hvm/grant_table.c
index 30d51d54a949..afe449d8882c 100644
--- a/xen/arch/x86/hvm/grant_table.c
+++ b/xen/arch/x86/hvm/grant_table.c
@@ -9,8 +9,7 @@
 
 #include <xen/types.h>
 
-#include <public/grant_table.h>
-
+#include <asm/hvm/grant_table.h>
 #include <asm/p2m.h>
 
 int create_grant_p2m_mapping(uint64_t addr, mfn_t frame,
diff --git a/xen/arch/x86/include/asm/hvm/grant_table.h b/xen/arch/x86/include/asm/hvm/grant_table.h
index 33c1da1a25f3..576aeb50adf4 100644
--- a/xen/arch/x86/include/asm/hvm/grant_table.h
+++ b/xen/arch/x86/include/asm/hvm/grant_table.h
@@ -10,6 +10,8 @@
 #ifndef __X86_HVM_GRANT_TABLE_H__
 #define __X86_HVM_GRANT_TABLE_H__
 
+#include <asm/paging.h>
+
 #ifdef CONFIG_HVM
 
 int create_grant_p2m_mapping(uint64_t addr, mfn_t frame,
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Mon Oct 09 06:55:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 09 Oct 2023 06:55:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614143.955068 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qpkAO-0005V8-Or; Mon, 09 Oct 2023 06:55:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614143.955068; Mon, 09 Oct 2023 06:55: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 1qpkAO-0005V1-MM; Mon, 09 Oct 2023 06:55:00 +0000
Received: by outflank-mailman (input) for mailman id 614143;
 Mon, 09 Oct 2023 06:55: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=o9Np=FX=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qpkAO-0005Uv-2n
 for xen-devel@lists.xenproject.org; Mon, 09 Oct 2023 06:55:00 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id c23997c8-6670-11ee-98d3-6d05b1d4d9a1;
 Mon, 09 Oct 2023 08:54:58 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id 459AE4EE073F;
 Mon,  9 Oct 2023 08:54: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: c23997c8-6670-11ee-98d3-6d05b1d4d9a1
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>,
	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>,
	Tamas K Lengyel <tamas@tklengyel.com>,
	Alexandru Isaila <aisaila@bitdefender.com>,
	Petre Pircalabu <ppircalabu@bitdefender.com>,
	Henry Wang <Henry.Wang@arm.com>
Subject: [XEN PATCH][for-4.19 v2 0/7] Fix or deviate various instances of missing declarations
Date: Mon,  9 Oct 2023 08:54:45 +0200
Message-Id: <cover.1696833629.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The patches in this series aim to fix or deviate various instances where a
function or variable do not have a declaration visible when such entity is
defined (in violation of MISRA C:2012 Rule 8.4).
An exception listed under docs/misra/rules.rst allows asm-only functions and
variables to be exempted, while the other instances are either changed
(e.g., making them static) or a missing header inclusion is added.

Some of the patches in this series are potential candidates for bug fixes, or
just general improvements that may be suited for inclusion in the next rc.

The deviation comment used by these patches is still SAF-x-safe, which is being
phased out in favour of some other name, as discussed here [1]. When such a name
has been determined, a new (trivial) version of this series can be produced,
the change could be made on commit or as part of the SAF rename troughout the
codebase.

Nicola Vetrini (7):
  xen: add declarations for variables where needed
  x86: add deviations for variables only used in asm code
  x86: add deviation comments for  asm-only functions
  x86/grant: switch included header to make declarations visible
  x86/vm_event: add missing include for hvm_vm_event_do_resume
  xen/console: make function static inline
  x86/mem_access: make function static

 xen/arch/arm/include/asm/setup.h           |  3 +++
 xen/arch/arm/include/asm/smp.h             |  3 +++
 xen/arch/arm/platform_hypercall.c          |  2 +-
 xen/arch/x86/cpu/mcheck/mce.c              |  6 +++---
 xen/arch/x86/hvm/grant_table.c             |  3 +--
 xen/arch/x86/hvm/svm/intr.c                |  1 +
 xen/arch/x86/hvm/svm/nestedsvm.c           |  1 +
 xen/arch/x86/hvm/svm/svm.c                 |  2 ++
 xen/arch/x86/hvm/vm_event.c                |  1 +
 xen/arch/x86/include/asm/asm_defns.h       |  1 +
 xen/arch/x86/include/asm/compat.h          |  1 +
 xen/arch/x86/include/asm/hvm/grant_table.h |  2 ++
 xen/arch/x86/include/asm/setup.h           |  1 +
 xen/arch/x86/irq.c                         |  2 +-
 xen/arch/x86/mm/mem_access.c               |  2 +-
 xen/arch/x86/setup.c                       |  1 +
 xen/arch/x86/traps.c                       |  1 +
 xen/arch/x86/x86_64/traps.c                |  1 +
 xen/common/symbols.c                       | 17 -----------------
 xen/include/xen/consoled.h                 |  2 +-
 xen/include/xen/symbols.h                  | 18 ++++++++++++++++++
 21 files changed, 45 insertions(+), 26 deletions(-)

--
2.34.1


From xen-devel-bounces@lists.xenproject.org Mon Oct 09 07:08:48 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 09 Oct 2023 07:08:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614184.955148 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qpkNc-0002dS-2i; Mon, 09 Oct 2023 07:08:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614184.955148; Mon, 09 Oct 2023 07:08: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 1qpkNc-0002dL-09; Mon, 09 Oct 2023 07:08:40 +0000
Received: by outflank-mailman (input) for mailman id 614184;
 Mon, 09 Oct 2023 07:08: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=o9Np=FX=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qpkNb-0002dF-LH
 for xen-devel@lists.xenproject.org; Mon, 09 Oct 2023 07:08:39 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id aadcb673-6672-11ee-9b0d-b553b5be7939;
 Mon, 09 Oct 2023 09:08:37 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id EB8E64EE073F;
 Mon,  9 Oct 2023 09:08: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: aadcb673-6672-11ee-9b0d-b553b5be7939
MIME-Version: 1.0
Date: Mon, 09 Oct 2023 09:08:36 +0200
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: andrew.cooper3@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, jbeulich@suse.com, roger.pau@citrix.com, Simone
 Ballarin <simone.ballarin@bugseng.com>, Doug Goldstein <cardoe@cardoe.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>, Wei
 Liu <wl@xen.org>
Subject: Re: [XEN PATCH][for-4.19 1/9] xen/include: add macro LOWEST_POW2
In-Reply-To: <fadc9eb9-152b-4956-8809-1188a706eac6@citrix.com>
References: <cover.1696514677.git.nicola.vetrini@bugseng.com>
 <d27f52eaaa62ec4ebb9ce8b6cf243779d341367d.1696514677.git.nicola.vetrini@bugseng.com>
 <fadc9eb9-152b-4956-8809-1188a706eac6@citrix.com>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <e337f150e5d1a01c8074f9438ceacb41@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 06/10/2023 18:35, andrew.cooper3@citrix.com wrote:
> On 06/10/2023 9:26 am, Nicola Vetrini wrote:
>> diff --git a/xen/include/xen/macros.h b/xen/include/xen/macros.h
>> index d0caae7db298..bb9a1c9a53d0 100644
>> --- a/xen/include/xen/macros.h
>> +++ b/xen/include/xen/macros.h
>> @@ -8,8 +8,10 @@
>>  #define DIV_ROUND(n, d) (((n) + (d) / 2) / (d))
>>  #define DIV_ROUND_UP(n, d) (((n) + (d) - 1) / (d))
>> 
>> -#define MASK_EXTR(v, m) (((v) & (m)) / ((m) & -(m)))
>> -#define MASK_INSR(v, m) (((v) * ((m) & -(m))) & (m))
>> +#define LOWEST_POW2(x) ((x) & -(x))
> 
> Naming wise, LOWEST_BIT() please.
> 
> The fact it's a power of two is incidental, and POW2 is ambiguous,
> because it includes interpretations such as "calculate the lowest power
> of two greater than x".
> 
> ~Andrew

You have a point. I'll change it.

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


From xen-devel-bounces@lists.xenproject.org Mon Oct 09 07:13:19 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 09 Oct 2023 07:13:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614193.955159 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qpkS5-00045W-Jt; Mon, 09 Oct 2023 07:13:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614193.955159; Mon, 09 Oct 2023 07:13: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 1qpkS5-00045P-HB; Mon, 09 Oct 2023 07:13:17 +0000
Received: by outflank-mailman (input) for mailman id 614193;
 Mon, 09 Oct 2023 07:13: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=o9Np=FX=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qpkS4-00044X-88
 for xen-devel@lists.xenproject.org; Mon, 09 Oct 2023 07:13:16 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 50a0c244-6673-11ee-98d3-6d05b1d4d9a1;
 Mon, 09 Oct 2023 09:13:15 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id 5F61A4EE073F;
 Mon,  9 Oct 2023 09:13: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: 50a0c244-6673-11ee-98d3-6d05b1d4d9a1
MIME-Version: 1.0
Date: Mon, 09 Oct 2023 09:13:15 +0200
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: Andrew Cooper <andrew.cooper3@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, jbeulich@suse.com, roger.pau@citrix.com, Wei Liu
 <wl@xen.org>
Subject: Re: [XEN PATCH 5/9] x86/cpu-policy: address violations of MISRA C
 Rule 10.1
In-Reply-To: <91d900b5-1298-4bb3-bd3d-6a829819a030@citrix.com>
References: <cover.1696514677.git.nicola.vetrini@bugseng.com>
 <463572d126a7700e5e90ef3a49104bd4b8c1c389.1696514677.git.nicola.vetrini@bugseng.com>
 <91d900b5-1298-4bb3-bd3d-6a829819a030@citrix.com>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <5f83ddda5c176cccce275f52f7905de5@bugseng.com>
X-Sender: nicola.vetrini@bugseng.com
Organization: BUGSENG s.r.l.
Content-Type: text/plain; charset=UTF-8;
 format=flowed
Content-Transfer-Encoding: 8bit

On 06/10/2023 19:57, Andrew Cooper wrote:
> On 06/10/2023 9:26 am, Nicola Vetrini wrote:
>> The COUNT_LEAVES macro is introduced to avoid using an essentially
>> boolean value in a subtraction.
>> 
>> No functional change.
>> 
>> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
>> ---
>>  xen/include/xen/lib/x86/cpu-policy.h | 13 +++++++------
>>  1 file changed, 7 insertions(+), 6 deletions(-)
>> 
>> diff --git a/xen/include/xen/lib/x86/cpu-policy.h 
>> b/xen/include/xen/lib/x86/cpu-policy.h
>> index bab3eecda6c1..700993cc67e8 100644
>> --- a/xen/include/xen/lib/x86/cpu-policy.h
>> +++ b/xen/include/xen/lib/x86/cpu-policy.h
>> @@ -95,17 +95,18 @@ const char *x86_cpuid_vendor_to_str(unsigned int 
>> vendor);
>>  #define CPUID_GUEST_NR_EXTD       MAX(CPUID_GUEST_NR_EXTD_INTEL, \
>>                                        CPUID_GUEST_NR_EXTD_AMD)
>> 
>> +#define COUNT_LEAVES(X) ((X) - ((X) ? 1 : 0))
>>  /*
>>   * Maximum number of leaves a struct cpu_policy turns into when 
>> serialised for
>>   * interaction with the toolstack.  (Sum of all leaves in each union, 
>> less the
>>   * entries in basic which sub-unions hang off of.)
>>   */
>> -#define CPUID_MAX_SERIALISED_LEAVES                     \
>> -    (CPUID_GUEST_NR_BASIC +                             \
>> -     CPUID_GUEST_NR_FEAT   - !!CPUID_GUEST_NR_FEAT +    \
>> -     CPUID_GUEST_NR_CACHE  - !!CPUID_GUEST_NR_CACHE +   \
>> -     CPUID_GUEST_NR_TOPO   - !!CPUID_GUEST_NR_TOPO +    \
>> -     CPUID_GUEST_NR_XSTATE - !!CPUID_GUEST_NR_XSTATE +  \
>> +#define CPUID_MAX_SERIALISED_LEAVES         \
>> +    (CPUID_GUEST_NR_BASIC +                 \
>> +     COUNT_LEAVES(CPUID_GUEST_NR_FEAT) +    \
>> +     COUNT_LEAVES(CPUID_GUEST_NR_CACHE) +   \
>> +     COUNT_LEAVES(CPUID_GUEST_NR_TOPO) +    \
>> +     COUNT_LEAVES(CPUID_GUEST_NR_XSTATE) +  \
>>       CPUID_GUEST_NR_EXTD + 2 /* hv_limit and hv2_limit */ )
> 
> This may not have been a MISRA-approved calculation, but encapsulating
> it like this breaks any ability to follow what's going on.
> 
> CPUID data in x86 is mostly a sparse 1-D array (BASIC, EXTD, HV 
> blocks),
> but a couple of elements in the BASIC array have arrays themselves.
> 
> The struct is laid out for O(1) access, so you can't just say
> sizeof(struct) / sizeof(element).  The BASIC array has elements (0x4,
> 0x7, 0xb, 0xd) which hold no data because there's actually an array
> elsewhere containing all the data.
> 
> So logically, it's:
> 
> (BASIC + (FEAT - 1) + (CACHE - 1) + (TOPO - 1) + (XSTATE - 1)) + EXTD + 
> 2
> 
> And in practice I'd far rather express it with a plain -1 than a -
> !!NR_, if the latter isn't an option.
> 
> Presumably MISRA would be happy with that?
> 
> If so, I can submit a patch.  There's also a typo in that the comment
> that wants fixing.
> 
> ~Andrew

Yes, that should be fine. I'll be happy to test that.

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


From xen-devel-bounces@lists.xenproject.org Mon Oct 09 07:15:25 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 09 Oct 2023 07:15:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614199.955168 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qpkU3-0004gQ-UM; Mon, 09 Oct 2023 07:15:19 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614199.955168; Mon, 09 Oct 2023 07:15: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 1qpkU3-0004gJ-Rd; Mon, 09 Oct 2023 07:15:19 +0000
Received: by outflank-mailman (input) for mailman id 614199;
 Mon, 09 Oct 2023 07: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=o9Np=FX=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qpkU2-0004fT-PQ
 for xen-devel@lists.xenproject.org; Mon, 09 Oct 2023 07:15:18 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 99ad3c20-6673-11ee-98d3-6d05b1d4d9a1;
 Mon, 09 Oct 2023 09:15:18 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id B58E14EE073F;
 Mon,  9 Oct 2023 09:15: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: 99ad3c20-6673-11ee-98d3-6d05b1d4d9a1
MIME-Version: 1.0
Date: Mon, 09 Oct 2023 09:15:17 +0200
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: andrew.cooper3@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, jbeulich@suse.com, roger.pau@citrix.com, Wei Liu
 <wl@xen.org>
Subject: Re: [XEN PATCH 7/9] x86/mce: Move MC_NCLASSES into the enum
 mctelem_class
In-Reply-To: <85bd4923-a710-43eb-a8e1-04d757b0ee78@citrix.com>
References: <cover.1696514677.git.nicola.vetrini@bugseng.com>
 <08293d72e236a7a6aec0305bc3f901a6636747ab.1696514677.git.nicola.vetrini@bugseng.com>
 <85bd4923-a710-43eb-a8e1-04d757b0ee78@citrix.com>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <4f1cdfe65520bd732e5d2029bbe302a3@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 06/10/2023 21:11, andrew.cooper3@citrix.com wrote:
> On 06/10/2023 9:26 am, Nicola Vetrini wrote:
>> The definition of MC_NCLASSES contained a violation of MISRA C:2012
>> Rule 10.1, therefore by moving it as an enumeration constant resolves 
>> the
>> violation and makes it more resilient to possible additions to that 
>> enum.
>> 
>> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
> 
> Acked-by: Andrew Cooper <andrew.cooper3@citrix.com>
> 
> I've started my normal for-next branch around releases, and included
> this patch.
> 
> https://xenbits.xen.org/gitweb/?p=people/andrewcoop/xen.git;a=shortlog;h=refs/heads/for-next
> 
> I'll keep the rebased and add it to 4.19 when the tree re-opens.
> 
> ~Andrew

Thanks, this helps a lot. I'll tag patches intended for this tree with 
[for-next].

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


From xen-devel-bounces@lists.xenproject.org Mon Oct 09 07:45:10 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 09 Oct 2023 07:45:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614207.955178 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qpkwp-0008D7-4v; Mon, 09 Oct 2023 07:45:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614207.955178; Mon, 09 Oct 2023 07:45: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 1qpkwp-0008D0-2L; Mon, 09 Oct 2023 07:45:03 +0000
Received: by outflank-mailman (input) for mailman id 614207;
 Mon, 09 Oct 2023 07:45: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=o9Np=FX=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qpkwo-0008Cs-78
 for xen-devel@lists.xenproject.org; Mon, 09 Oct 2023 07:45:02 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id bfc60f07-6677-11ee-9b0d-b553b5be7939;
 Mon, 09 Oct 2023 09:45:00 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id 993374EE073F;
 Mon,  9 Oct 2023 09:44: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: bfc60f07-6677-11ee-9b0d-b553b5be7939
MIME-Version: 1.0
Date: Mon, 09 Oct 2023 09:44:59 +0200
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: Julien Grall <julien@xen.org>
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, Paul Durrant <paul@xen.org>, George Dunlap
 <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>
Subject: Re: [XEN PATCH][for-4.19 8/9] xen/types: address Rule 10.1 for
 DECLARE_BITMAP use
In-Reply-To: <354c6138-509e-4106-9a27-3c75c85b85e5@xen.org>
References: <cover.1696514677.git.nicola.vetrini@bugseng.com>
 <9642dcb4ab51ec9eaeedf16056fbcd946a3efbea.1696514677.git.nicola.vetrini@bugseng.com>
 <80101145-1958-457a-8c80-cae816ae74aa@xen.org>
 <4b144869407871011c538af48b311c31@bugseng.com>
 <354c6138-509e-4106-9a27-3c75c85b85e5@xen.org>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <f8ce739932699bb44900570c262acbc8@bugseng.com>
X-Sender: nicola.vetrini@bugseng.com
Organization: BUGSENG s.r.l.
Content-Type: text/plain; charset=UTF-8;
 format=flowed
Content-Transfer-Encoding: 8bit

On 06/10/2023 16:47, Julien Grall wrote:
> Hi Nicola,
> 
> On 06/10/2023 11:10, Nicola Vetrini wrote:
>> On 06/10/2023 11:34, Julien Grall wrote:
>>> Hi Nicola,
>>> 
>>> On 06/10/2023 09:26, 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
>>>> in macro 'BITS_TO_LONGS'.
>>>> 
>>>> A comment in BITS_TO_LONGS is added to make it clear that
>>>> values passed are meant to be positive.
>>> 
>>> I am confused. If the value is meant to be positive. Then...
>>> 
>>>> 
>>>> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
>>>> ---
>>>>   xen/include/xen/iommu.h | 2 +-
>>>>   xen/include/xen/types.h | 1 +
>>>>   2 files changed, 2 insertions(+), 1 deletion(-)
>>>> 
>>>> diff --git a/xen/include/xen/iommu.h b/xen/include/xen/iommu.h
>>>> index 0e747b0bbc1c..34aa0b9b5b81 100644
>>>> --- a/xen/include/xen/iommu.h
>>>> +++ b/xen/include/xen/iommu.h
>>>> @@ -360,7 +360,7 @@ struct domain_iommu {
>>>>   #endif
>>>>         /* Features supported by the IOMMU */
>>>> -    DECLARE_BITMAP(features, IOMMU_FEAT_count);
>>>> +    DECLARE_BITMAP(features, (int)IOMMU_FEAT_count);
>>> 
>>> ... why do we cast to (int) rather than (unsigned int)? Also, I think
>>> this cast deserve a comment on top because this is not a very obvious
>>> one.
>>> 
>>>>         /* Does the guest share HAP mapping with the IOMMU? */
>>>>       bool hap_pt_share;
>>>> diff --git a/xen/include/xen/types.h b/xen/include/xen/types.h
>>>> index aea259db1ef2..936e83d333a0 100644
>>>> --- a/xen/include/xen/types.h
>>>> +++ b/xen/include/xen/types.h
>>>> @@ -22,6 +22,7 @@ typedef signed long ssize_t;
>>>>     typedef __PTRDIFF_TYPE__ ptrdiff_t;
>>>>   +/* Users of this macro are expected to pass a positive value */
>>>>   #define BITS_TO_LONGS(bits) \
>>>>       (((bits)+BITS_PER_LONG-1)/BITS_PER_LONG)
>>>>   #define DECLARE_BITMAP(name,bits) \
>>> 
>>> Cheers,
>> 
>> See [1] for the reason why I did so. I should have mentioned that in 
>> the commit notes, sorry.
>> In short, making BITS_TO_LONGS essentially unsigned would cause a 
>> cascade of build errors and
>> possibly other essential type violations.
> Can you share some of the errors?
> 

I don't have that build log at hand, but you can reproduce them by 
defining

#define BYTES_PER_LONG (_AC(1,U) << LONG_BYTEORDER)
#define BITS_PER_LONG (BYTES_PER_LONG << 3)

#define BITS_TO_LONGS(bits) \
   (((bits)+BITS_PER_LONG-1U)/BITS_PER_LONG)

and then fiddle a bit with the signedness of the constants in
xen/arch/x86/include/asm/page-bits.h.

They are essentially pointer comparison errors in the instances of 'min' 
and 'max'
that involve those macros or macros derived from those, which make the 
build fail because
they (rightfully) trigger a warning from gcc.

>> If this is to be fixed that way, the effort required
>> is far greater. Either way, a comment on top of can be added, along 
>> the lines of:
>> 
>> Leaving this as an enum would violate MISRA C:2012 Rule 10.1
> 
> I read this as you are simply trying to silence your tool. I think
> this the wrong approach as you are now making the code confusing for
> the reader (you pass a signed int to a function that is supposed to
> take a positive number).
> 
> I appreciate that this will result to more violations at the
> beginning. But the whole point of MISRA is to make the code better.
> 
> If this is too complex to solve now, then a possible option is to
> deviate for the time being.
> 
> Cheers,
> 

You have a point in that is sort of hides a deeper issue that is 
constituted by the
signedness of the macro, but I'd suggest adding to this patch a comment 
explaining what
needs to be done, rather than a deviation comment that hides the 
violations. The reason
is that in the former case, if you put an unsigned argument too big to 
fit in an integer
it will generate a new report, while if a negative argument is used, 
there is a warning
comment on the macro definition (not an ideal countermeasure, though).

>> 
>> [1] 
>> https://lore.kernel.org/xen-devel/6495ba58bda01eae1f4baa46096424eb@bugseng.com/
>> 

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


From xen-devel-bounces@lists.xenproject.org Mon Oct 09 07:48:22 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 09 Oct 2023 07:48:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614213.955189 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qpl01-0000OD-JP; Mon, 09 Oct 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 614213.955189; Mon, 09 Oct 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 1qpl01-0000O6-FO; Mon, 09 Oct 2023 07:48:21 +0000
Received: by outflank-mailman (input) for mailman id 614213;
 Mon, 09 Oct 2023 07:48: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=o9Np=FX=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qpl00-0000O0-6I
 for xen-devel@lists.xenproject.org; Mon, 09 Oct 2023 07:48:20 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 35e02209-6678-11ee-9b0d-b553b5be7939;
 Mon, 09 Oct 2023 09:48:18 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id EB99A4EE073F;
 Mon,  9 Oct 2023 09:48: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: 35e02209-6678-11ee-9b0d-b553b5be7939
MIME-Version: 1.0
Date: Mon, 09 Oct 2023 09:48:17 +0200
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: Stefano Stabellini <sstabellini@kernel.org>
Cc: Julien Grall <julien@xen.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, Paul Durrant <paul@xen.org>, George Dunlap
 <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>
Subject: Re: [XEN PATCH][for-4.19 8/9] xen/types: address Rule 10.1 for
 DECLARE_BITMAP use
In-Reply-To: <alpine.DEB.2.22.394.2310061746190.3431292@ubuntu-linux-20-04-desktop>
References: <cover.1696514677.git.nicola.vetrini@bugseng.com>
 <9642dcb4ab51ec9eaeedf16056fbcd946a3efbea.1696514677.git.nicola.vetrini@bugseng.com>
 <80101145-1958-457a-8c80-cae816ae74aa@xen.org>
 <4b144869407871011c538af48b311c31@bugseng.com>
 <354c6138-509e-4106-9a27-3c75c85b85e5@xen.org>
 <alpine.DEB.2.22.394.2310061746190.3431292@ubuntu-linux-20-04-desktop>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <a5a8820fe3e78651da0f78738e646786@bugseng.com>
X-Sender: nicola.vetrini@bugseng.com
Organization: BUGSENG s.r.l.
Content-Type: text/plain; charset=UTF-8;
 format=flowed
Content-Transfer-Encoding: 8bit

On 07/10/2023 03:04, Stefano Stabellini wrote:
> On Fri, 6 Oct 2023, Julien Grall wrote:
>> Hi Nicola,
>> 
>> On 06/10/2023 11:10, Nicola Vetrini wrote:
>> > On 06/10/2023 11:34, Julien Grall wrote:
>> > > Hi Nicola,
>> > >
>> > > On 06/10/2023 09:26, 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
>> > > > in macro 'BITS_TO_LONGS'.
>> > > >
>> > > > A comment in BITS_TO_LONGS is added to make it clear that
>> > > > values passed are meant to be positive.
>> > >
>> > > I am confused. If the value is meant to be positive. Then...
>> > >
>> > > >
>> > > > Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
>> > > > ---
>> > > >   xen/include/xen/iommu.h | 2 +-
>> > > >   xen/include/xen/types.h | 1 +
>> > > >   2 files changed, 2 insertions(+), 1 deletion(-)
>> > > >
>> > > > diff --git a/xen/include/xen/iommu.h b/xen/include/xen/iommu.h
>> > > > index 0e747b0bbc1c..34aa0b9b5b81 100644
>> > > > --- a/xen/include/xen/iommu.h
>> > > > +++ b/xen/include/xen/iommu.h
>> > > > @@ -360,7 +360,7 @@ struct domain_iommu {
>> > > >   #endif
>> > > >         /* Features supported by the IOMMU */
>> > > > -    DECLARE_BITMAP(features, IOMMU_FEAT_count);
>> > > > +    DECLARE_BITMAP(features, (int)IOMMU_FEAT_count);
>> > >
>> > > ... why do we cast to (int) rather than (unsigned int)? Also, I think
>> > > this cast deserve a comment on top because this is not a very obvious
>> > > one.
>> > >
>> > > >         /* Does the guest share HAP mapping with the IOMMU? */
>> > > >       bool hap_pt_share;
>> > > > diff --git a/xen/include/xen/types.h b/xen/include/xen/types.h
>> > > > index aea259db1ef2..936e83d333a0 100644
>> > > > --- a/xen/include/xen/types.h
>> > > > +++ b/xen/include/xen/types.h
>> > > > @@ -22,6 +22,7 @@ typedef signed long ssize_t;
>> > > >     typedef __PTRDIFF_TYPE__ ptrdiff_t;
>> > > >   +/* Users of this macro are expected to pass a positive value */
>> > > >   #define BITS_TO_LONGS(bits) \
>> > > >       (((bits)+BITS_PER_LONG-1)/BITS_PER_LONG)
>> > > >   #define DECLARE_BITMAP(name,bits) \
>> > >
>> > > Cheers,
>> >
>> > See [1] for the reason why I did so. I should have mentioned that in the
>> > commit notes, sorry.
>> > In short, making BITS_TO_LONGS essentially unsigned would cause a cascade of
>> > build errors and
>> > possibly other essential type violations.
>> Can you share some of the errors?
>> 
>> > If this is to be fixed that way, the effort required
>> > is far greater. Either way, a comment on top of can be added, along the
>> > lines of:
>> >
>> > Leaving this as an enum would violate MISRA C:2012 Rule 10.1
>> 
>> I read this as you are simply trying to silence your tool. I think 
>> this the
>> wrong approach as you are now making the code confusing for the reader 
>> (you
>> pass a signed int to a function that is supposed to take a positive 
>> number).
>> 
>> I appreciate that this will result to more violations at the 
>> beginning. But
>> the whole point of MISRA is to make the code better.
>> 
>> If this is too complex to solve now, then a possible option is to 
>> deviate for
>> the time being.
> 
> I agree on everything Julien's wrote and I was about to suggest to use 
> a
> SAF comment to suppress the warning because it is clearer than a int
> cast.
> 
> But then I realized that even if BITS_TO_LONGS was fixed, wouldn't 
> still
> we have a problem because IOMMU_FEAT_count is an enum?
> 

Indeed. MISRA interprets enums as unordered sets of constants.

> Is it the case that IOMMU_FEAT_count would have to be cast regardless,
> either to int or unsigned int or whatever to be used in DECLARE_BITMAP?
> 

Correct. See also my reply to Julien's message: right now 
value-preserving conversions
do not generate violations, but a non-value preserving conversion from 
unsigned to signed
will generate one.

> 
> So we have 2 problems here: one problem is DECLARE_BITMAP taking int
> instead of unsigned int, and another problem is IOMMU_FEAT_count being
> an enum.
> 
> If I got it right, then I would go with the cast to int (like done in
> this patch) with a decent comment on top of it.

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


From xen-devel-bounces@lists.xenproject.org Mon Oct 09 08:10:53 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 09 Oct 2023 08:10:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614225.955199 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qplLR-0001G7-EK; Mon, 09 Oct 2023 08:10:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614225.955199; Mon, 09 Oct 2023 08: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 1qplLR-0001Fl-8D; Mon, 09 Oct 2023 08:10:29 +0000
Received: by outflank-mailman (input) for mailman id 614225;
 Mon, 09 Oct 2023 08: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=UOJq=FX=arm.com=Luca.Fancellu@srs-se1.protection.inumbo.net>)
 id 1qplLP-0001Ff-Jq
 for xen-devel@lists.xenproject.org; Mon, 09 Oct 2023 08:10:27 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 (mail-db8eur05on20615.outbound.protection.outlook.com
 [2a01:111:f400:7e1a::615])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 4bc80e28-667b-11ee-9b0d-b553b5be7939;
 Mon, 09 Oct 2023 10:10:23 +0200 (CEST)
Received: from DUZPR01CA0160.eurprd01.prod.exchangelabs.com
 (2603:10a6:10:4bd::20) by DB9PR08MB9947.eurprd08.prod.outlook.com
 (2603:10a6:10:3d1::7) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.29; Mon, 9 Oct
 2023 08:10:05 +0000
Received: from DBAEUR03FT061.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:4bd:cafe::c3) by DUZPR01CA0160.outlook.office365.com
 (2603:10a6:10:4bd::20) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.36 via Frontend
 Transport; Mon, 9 Oct 2023 08:10:05 +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.6886.21 via Frontend Transport; Mon, 9 Oct 2023 08:10:04 +0000
Received: ("Tessian outbound 9aeaca65ec26:v211");
 Mon, 09 Oct 2023 08:10:04 +0000
Received: from d9ec9e857713.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 30D71BFF-6B22-482B-AB85-D0CD6A7856DB.1; 
 Mon, 09 Oct 2023 08:09:53 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id d9ec9e857713.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Mon, 09 Oct 2023 08:09:53 +0000
Received: from AM6PR08MB3749.eurprd08.prod.outlook.com (2603:10a6:20b:8f::22)
 by DU0PR08MB9488.eurprd08.prod.outlook.com (2603:10a6:10:44f::18)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.28; Mon, 9 Oct
 2023 08:09:50 +0000
Received: from AM6PR08MB3749.eurprd08.prod.outlook.com
 ([fe80::501a:489c:410b:338]) by AM6PR08MB3749.eurprd08.prod.outlook.com
 ([fe80::501a:489c:410b:338%6]) with mapi id 15.20.6863.032; Mon, 9 Oct 2023
 08: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: 4bc80e28-667b-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=IeHYZgPOkRfRU58T+8bb0aPnAZtVyoIphMkF+3yvsjk=;
 b=mBvsWn3apOSDxSOR2WJVk1S8AlOK3mMkNQgluyAOuQWpVCZD2G+AlQKL9fBSwXoOGqA59q2pGNeOUeOaA9BpVlbmZAkSYsABoQW34vdBNGd0OydUNAk2L5CufiB6WZR4Yn+85go/BwpL0oQtk+K3t+3Ws0HyF9sqbsxOrWHHg+8=
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: 8ca577a799ba393a
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=UFv6P1+fIEsygZ1yST71GGSI6cM9bUvdKbxHvU2w6TQ/5fe+VcYE0dx0IJ3XDGy4ttGmgnauE82rNAsphLYuIAk52RlGWVQ+mFxl8kEPB4TQCQJo28COWfwBjwkxmUAQ5XOKAAZE7tbusO85v+U+VZN71J6d6l0Ah36DtadOHuqIRJKoY4HPpGYm7ebXSpDrXD6diE/h/6Cx6QiEXRM2eif/nDlDoEFg3/MGrxhMUHn7z337U2l+NCNPKk446YKb3q82Us6laR30ARVAiLoBvt+55bWttTdY5B19qM6+7u0ChT7OJlDwslxkanH/h8T216fNfZmInkq9qLO6LvttKg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=IeHYZgPOkRfRU58T+8bb0aPnAZtVyoIphMkF+3yvsjk=;
 b=NmnZYs1nhrCJUuQMl355A2mXfDPsYmKlFOJUwJEJPLVsUNIqWRVjE9BnR0XiHt6qMkedsvAMoe0Dnrqrrd15TegnO7xp8y40J5VoFL0NwabpzpKmQzQZHnNpLnJ/PFPTzl1Cph8jhXldnl9rMrs5SR/YM/B7wPyrlJAqF/klhLGUgBo1Hu1P7Yo6aaKAp/uBVadx9DWbQzGK7JOou90u8f0i6tBpwuoDFsKg4st6aI6AT1X3EIxh/QlFgSs4ilphKYW17aqO/4bxX6xEeLKe4Qtjy3FYH5kXfpxVysH5WB9Cxw/a6ooe+l3KjEXHm0bVA9YBBMT+8wS4DpYRXoyI6Q==
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=IeHYZgPOkRfRU58T+8bb0aPnAZtVyoIphMkF+3yvsjk=;
 b=mBvsWn3apOSDxSOR2WJVk1S8AlOK3mMkNQgluyAOuQWpVCZD2G+AlQKL9fBSwXoOGqA59q2pGNeOUeOaA9BpVlbmZAkSYsABoQW34vdBNGd0OydUNAk2L5CufiB6WZR4Yn+85go/BwpL0oQtk+K3t+3Ws0HyF9sqbsxOrWHHg+8=
From: Luca Fancellu <Luca.Fancellu@arm.com>
To: Stefano Stabellini <sstabellini@kernel.org>
CC: Nicola Vetrini <nicola.vetrini@bugseng.com>, Xen-devel
	<xen-devel@lists.xenproject.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>, Jan Beulich
	<jbeulich@suse.com>, =?utf-8?B?Um9nZXIgUGF1IE1vbm7DqQ==?=
	<roger.pau@citrix.com>, Henry Wang <Henry.Wang@arm.com>, Simone Ballarin
	<simone.ballarin@bugseng.com>, Doug Goldstein <cardoe@cardoe.com>, George
 Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>, Wei Liu
	<wl@xen.org>, Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [XEN PATCH] xen: Add SAF deviations for MISRA C:2012 Rule 7.1
Thread-Topic: [XEN PATCH] xen: Add SAF deviations for MISRA C:2012 Rule 7.1
Thread-Index:
 AQHZ9qj87vFsnMRst0ybMa+ffKOLU7A5Z4mAgAAGhgCAAAYzgIAA1KIAgACGqQCAASTEgIAAdASAgAEY6ICAA6FXgA==
Date: Mon, 9 Oct 2023 08:09:49 +0000
Message-ID: <01206405-F295-427C-AA10-3DB191427FE4@arm.com>
References:
 <338d8e574db943a86c7605e4c6d9a299d45f067d.1696347345.git.nicola.vetrini@bugseng.com>
 <alpine.DEB.2.22.394.2310031345190.2348112@ubuntu-linux-20-04-desktop>
 <e1736215-52ba-4737-9da3-8f1ba7e832a6@citrix.com>
 <DB96C095-5FAF-40A1-9CA8-002291AA1933@arm.com>
 <2894008e8f612296da84267346ae4240@bugseng.com>
 <B00BC78B-E707-4043-A0B4-D320C6717472@arm.com>
 <alpine.DEB.2.22.394.2310041625170.2348112@ubuntu-linux-20-04-desktop>
 <9DD525D9-DB6D-4888-9266-FB45906A0E0F@arm.com>
 <alpine.DEB.2.22.394.2310051756360.2348112@ubuntu-linux-20-04-desktop>
 <C2DDFAB5-D943-4A24-9C14-AF35BE2A7C90@arm.com>
 <alpine.DEB.2.22.394.2310061741130.3431292@ubuntu-linux-20-04-desktop>
In-Reply-To:
 <alpine.DEB.2.22.394.2310061741130.3431292@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_|DU0PR08MB9488:EE_|DBAEUR03FT061:EE_|DB9PR08MB9947:EE_
X-MS-Office365-Filtering-Correlation-Id: 07a6bc9f-6dec-4753-77d2-08dbc89f24eb
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:
 yt8vcwya7sUnjSSylGu3iW130wcEdDl31QoQfrGhwfFWvrLQeapZ7nxM5UsXiTv49mhhk2VXOJpbAnNm24gUFptJgvmNbB8LY4EQONYNfKJ2d1O/EOLzmEUGfG1XwjwXp1CzzKbuHJ1hvD2c4qipAvhllV1FDLmlhgUh4A1yZ2eVlIb37VusWCMnxx1BoA4XXOmdPxJAvEv9xlHL+Slgu7GwH6Ch10qHSsnGKYqSo9uYN/YGpgv7Hu/IKDBX1gdl1QglxHTBGSB2oLpaThlXfnZoIkbsJ9OoexlzyIUywmQDUKRcs0FNcdUj7KHh3V+Ep3e7pzr6TtR+4e64F8J2RXNc2QCb0Fvje1WdQry0TvcLsLY7BJ3PUOh2URF3vaeHdqm/HrOEU1KLnQKDfBFcoce91pavZCev0Ak48o/Uvtky0Kq7Bcp0XT+UcSxoH5MVjIRZ5TpetXXKd7gUoyZ3OK8RtEiiCj3To8Rn99kBSCAyudfriJhvzjYTkP8hZMVDNntR36oQqt3mwfRMG7KaM3Tp0AmDphAkvK/PMu3BQa74QlgpiPCezeO/asUTsC+/y47+RGEMF6UdS7+S3O8rB9LifhRDiGKMWUHFWDuTuGb7Y9R08tDj38aJ2LZKrXdABO4sPi7AWMrqX0kC5YozLw==
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)(346002)(376002)(136003)(396003)(366004)(230922051799003)(451199024)(1800799009)(186009)(64100799003)(91956017)(66476007)(76116006)(26005)(4326008)(5660300002)(8676002)(66946007)(6916009)(54906003)(8936002)(66556008)(66446008)(6486002)(478600001)(6506007)(64756008)(41300700001)(6512007)(71200400001)(2906002)(7416002)(316002)(2616005)(38070700005)(122000001)(38100700002)(36756003)(33656002)(86362001)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <F715F65D1B05724390FF102A0480D644@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR08MB9488
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:
	28e5f1fb-5c15-4c6f-efde-08dbc89f1c1a
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	KCxii84Pj49cHnbnreGNR+MdBPvvfhT4j1j+6QDHeZj/WntGWD0STN9/6Of0tSTRmpGQGId+ips3b7eHPKfXa9mioLg+s8PZlqRR1OiphBdqQE6U1MT0KVeDrwcVrXaP+W+u9q2f4Eef30okfi+M80/WRbcXX3mnLSMoaS/N3ChsvHHzGJtNu7zCol2jTCaJCpQ3WR8WGyjHUasSt3hMGavvsMhR96/yG02WIvnvHyZBOzsP8CdnjmeBRKBEPwDzQhoYs9ocOu0olGeLmv0lCnuk/jgw3OjM+2X+5OlM759ybQXHaTezAsDx4YL3ooQDtomv1BjXZtP8Ofcrw4MpkLgvQBZ10aZfxU4FiItPUmViNxj3Oe7IWqEtWNoP0v1teKG45nXSHQGXyW0Ycd9zhrLg9t16RrNoYHfNIclH+XJ32QImFC24cJElOpKEp+AXIcupjjkyINUBtrMEqi9nsuqrVJwkmT0AT4M685HgVsho1L7e8LuXxCeIxZqnkjFe1iFgX82XGGANOnxova1RFuXVErU8ZzlPEstTiymkgs8ImZWuSIEvzIDrMgZEvLCJT0j21rTgE1KwjVBvsWA6GNG7uV7QaXHMHCuMa295iUU7E1b4ver76Eg168wpE4qv0jg9QCbSm6mi/OuewooINuj3CD24+ayQFF0XgfdkWWJjoSuTIuLPypTfELeosyEKBcLFxvyxG7r78Kvp+MUj+zg5byvt5+PjhSrIbiDKPJ+s5QCAUpfd50cTfBRiASeZlEUXmmJNl7Zyj0jKAV00TmQcEFUD4SUTqE0tj6PlT48=
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)(396003)(39860400002)(136003)(230922051799003)(82310400011)(1800799009)(64100799003)(186009)(451199024)(40470700004)(36840700001)(46966006)(40460700003)(336012)(6512007)(33656002)(2616005)(107886003)(86362001)(26005)(81166007)(356005)(36860700001)(36756003)(5660300002)(40480700001)(82740400003)(6486002)(478600001)(47076005)(70586007)(41300700001)(70206006)(6862004)(54906003)(316002)(4326008)(6506007)(8676002)(8936002)(2906002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Oct 2023 08:10:04.7355
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 07a6bc9f-6dec-4753-77d2-08dbc89f24eb
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: DB9PR08MB9947

Pj4+IA0KPj4+IFJpZ2h0IHNvIHRoZSByZXN1bHRzIHdvdWxkIGJlIGFsbCBvZmYgYnkgYSBmZXcg
bGluZXMgb2YgY29kZSBzbyB3aGVuDQo+Pj4geW91IGdvIHRvIHJlYWQgdGhlIHJlcG9ydCBnZW5l
cmF0ZWQgYnkgY3BwY2hlY2ssIHRoZSByZWZlcmVuY2VzDQo+Pj4gd291bGRuJ3QgbWF0Y2ggYW55
bW9yZS4NCj4+PiANCj4+PiBCZWZvcmUgZ2l2aW5nIHVwIGFuZCBhY2NlcHRpbmcgdGhhdCB3ZSBh
cmUgY29uc3RyYWluZWQgdG8gb25seSBmb3JtYXRzDQo+Pj4gdGhhdCBkb24ndCBjaGFuZ2UgdGhl
IExPQyBudW1iZXJzLCBjYW4gd2UgY2hlY2sgd2hhdCBDb3Zlcml0eSBzdXBwb3J0cz8NCj4+PiAN
Cj4+PiBJIGFtIGFza2luZyBiZWNhdXNlIHdlIGNvdWxkIGdldCBhd2F5IHdpdGggaW1wbGVtZW50
aW5nIHRoZSBmb3JtYXRzDQo+Pj4gYWJvdmUgaW4gY3BwY2hlY2ssIGdpdmVuIHRoYXQgY3BwY2hl
Y2sgaXMgb3BlbiBzb3VyY2UuIEJ1dCBmb3IgQ292ZXJpdHkNCj4+PiB3ZSBuZWVkIHRvIHN0YXkg
d2l0aCB3aGF0IGlzIGFscmVhZHkgc3VwcG9ydGVkIGJ5IGl0Lg0KPj4+IA0KPj4+IERvZXMgQ292
ZXJpdHkgc3VwcG9ydCBhbnl0aGluZyBvdGhlciB0aGFuOg0KPj4+IA0KPj4+IDx0YWcgb24gcHJl
dmlvdXMgbGluZT4NCj4+PiA8bmV4dCBsaW5lIGlzIGNvZGUgd2l0aCBkZXZpYXRpb24+DQo+PiAN
Cj4+IFVuZm9ydHVuYXRlbHkgbm90LCBmcm9tIGl0cyBkb2N1bWVudGF0aW9uIEkgY2Fu4oCZdCBz
ZWUgYW55dGhpbmcgYXBhcnQgZnJvbSB0aGUgYWJvdmUsDQo+PiBJIGNhbiBhc2sgc29tZW9uZSBm
cm9tIHN5bm9wc3lzIHRob3VnaCB0byBkb3VibGUgY2hlY2suDQo+IA0KPiBJIHdvbmRlciBob3cg
cGVvcGxlIHdvdWxkIGZlZWwgdG8gaGF2ZSBhbiBleGNlcHRpb24gdG8gb3VyIGNvZGluZyBzdHls
ZQ0KPiBpbiB0aGVzZSBjYXNlcyBhbmQgaGF2ZSBsb25nZXIgdGhhbiA4MCBjaGFycyBsaW5lcy4g
SSBhbSBhc2tpbmcgYmVjYXVzZQ0KPiB0aGlzIGlzIGJldHRlciB0aGFuIG1hbnkgb2YgdGhlIG90
aGVyIG9wdGlvbnMgYWJvdmU6DQo+IA0KPiAvKiBTQUYteC1zYWZlICovDQo+IGlmICggbW9kcm1f
bW9kID09IE1BU0tfRVhUUihpbnN0cl9tb2RybSwgMDMwMCkgJiYgKG1vZHJtX3JlZyAmIDcpID09
IE1BU0tfRVhUUihpbnN0cl9tb2RybSwgMDA3MCkgJiYgKG1vZHJtX3JtICYgNykgID09IE1BU0tf
RVhUUihpbnN0cl9tb2RybSwgMDAwNykgKQ0KPiANCj4gQW55IG90aGVyIGlkZWFzPw0KDQpIaSBT
dGVmYW5vLCANCg0KSeKAmXZlIHN1Z2dlc3RlZCBzb21lIG1haWxzIGFnbyB0byB1c2UgI2RlZmlu
ZSBmb3IgdGhlIE1BU0tfRVhUUiBzbyB0aGF0DQpldmVyeSBpbnN0YW5jZSBvZiB0aGUgdmlvbGF0
aW9uIGdvZXMgaW50byBhIGRpZmZlcmVudCBsaW5lLCBidXQgdGhpcyB3b3JrcyBvbmx5DQpJZiBF
Y2xhaXIgaXMgdGhyb3dpbmcgdGhlIHZpb2xhdGlvbiBhdCB0aGUgZGVmaW5pdGlvbiBhbmQgbm90
IGF0IGl0cyB1c2FnZS4NCg0KSSByZW1lbWJlciB3ZSBoYWQgYSBkaXNjdXNzaW9uIG1vbnRocyBh
Z28gYWJvdXQgdGhhdCBidXQgSSBkb27igJl0IHJlbWVtYmVyDQpJZiBSb2JlcnRvIHRvbGQgdXMg
dGhhdCB0aGlzIGJlaGF2aW91ciBjYW4gYmUgYWRqdXN0ZWQgaW4gRWNsYWlyIG9yIG5vdC4NCg0K
QW4gZXhjZXB0aW9uIGluIHRoZSBjb2Rpbmcgc3R5bGUgd291bGQgbWFrZSB0aGUgYWRvcHRpb24g
b2YgYW4gYXV0b21hdGljIHRvb2wNCmRpZmZpY3VsdC4NCg0KQ2hlZXJzLA0KTHVjYQ0KDQo=


From xen-devel-bounces@lists.xenproject.org Mon Oct 09 08:24:07 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 09 Oct 2023 08:24:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614231.955209 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qplYV-00038S-LY; Mon, 09 Oct 2023 08:23:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614231.955209; Mon, 09 Oct 2023 08: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 1qplYV-00038K-IR; Mon, 09 Oct 2023 08:23:59 +0000
Received: by outflank-mailman (input) for mailman id 614231;
 Mon, 09 Oct 2023 08: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=o9Np=FX=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qplYU-00038E-9E
 for xen-devel@lists.xenproject.org; Mon, 09 Oct 2023 08:23:58 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 2fe7e277-667d-11ee-9b0d-b553b5be7939;
 Mon, 09 Oct 2023 10:23:55 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id 4723D4EE073F;
 Mon,  9 Oct 2023 10:23: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: 2fe7e277-667d-11ee-9b0d-b553b5be7939
MIME-Version: 1.0
Date: Mon, 09 Oct 2023 10:23:55 +0200
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: Stefano Stabellini <sstabellini@kernel.org>
Cc: Julien Grall <julien@xen.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, Simone Ballarin <simone.ballarin@bugseng.com>, Doug
 Goldstein <cardoe@cardoe.com>, George Dunlap <george.dunlap@citrix.com>, Wei
 Liu <wl@xen.org>
Subject: Re: [XEN PATCH][for-4.19 1/9] xen/include: add macro LOWEST_POW2
In-Reply-To: <alpine.DEB.2.22.394.2310061729220.3431292@ubuntu-linux-20-04-desktop>
References: <cover.1696514677.git.nicola.vetrini@bugseng.com>
 <d27f52eaaa62ec4ebb9ce8b6cf243779d341367d.1696514677.git.nicola.vetrini@bugseng.com>
 <6102db25-2fd6-49fa-be66-ec2b627b019b@xen.org>
 <0197ecdcc5869dddecc98907f67ba0f1@bugseng.com>
 <63f172c1-bda5-447b-bc8b-90563f3f3c2a@xen.org>
 <4ecd59b63bc5b7b8f4c24672432ba027@bugseng.com>
 <01fd528d-845d-4342-a17a-e080a921273f@xen.org>
 <alpine.DEB.2.22.394.2310061654470.3431292@ubuntu-linux-20-04-desktop>
 <alpine.DEB.2.22.394.2310061729220.3431292@ubuntu-linux-20-04-desktop>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <cbb5aa9cc452f55d56cfc7b0a2b72727@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/10/2023 02:29, Stefano Stabellini wrote:
> On Fri, 6 Oct 2023, Stefano Stabellini wrote:
>> On Fri, 6 Oct 2023, Julien Grall wrote:
>> > Hi Nicola,
>> >
>> > On 06/10/2023 11:34, Nicola Vetrini wrote:
>> > > On 06/10/2023 12:22, Julien Grall wrote:
>> > > > On 06/10/2023 11:02, Nicola Vetrini wrote:
>> > > > > On 06/10/2023 11:29, Julien Grall wrote:
>> > > > > > Hi,
>> > > > > >
>> > > > > > On 06/10/2023 09:26, Nicola Vetrini wrote:
>> > > > > > > The purpose of this macro is to encapsulate the well-known
>> > > > > > > expression
>> > > > > > > 'x & -x', that in 2's complement architectures on unsigned integers
>> > > > > > > will
>> > > > > > > give 2^ffs(x), where ffs(x) is the position of the lowest set bit in
>> > > > > > > x.
>> > > > > > >
>> > > > > > > A deviation for ECLAIR is also introduced.
>> > > > > >
>> > > > > > Can you explain why this is a deviation in ECLAIR rather than one with
>> > > > > > /* SAF-* */ (or whichever name we decide to rename to)? Is this
>> > > > > > because the code is correct from MISRA perspective but the tool is
>> > > > > > confused?
>> > > > > >
>> > > > >
>> > > > > The code does violate Rule 10.1 (a unary minus applied to an unsigned
>> > > > > value is
>> > > > > deemed inappropriate by MISRA), but rather than changing a whole lot of
>> > > > > places where this
>> > > > > construct is used (mainly in x86 code), the reasoning is that it makes
>> > > > > more sense to isolate
>> > > > > it and justify its presence by the fact that on 2's complement
>> > > > > architectures the result is
>> > > > > indeed correct.
>> > > >
>> > > > This is explaining to me why you are adding LOWEST_POW2(). But this
>> > > > doesn't explain why you are not using /* SAF-* */ on top of
>> > > > LOWEST_POW2().
>> > > >
>> > > > To me, we should only use ECLAIR specific deviation when this is a
>> > > > shortcoming with the tool.
>> > > >
>> > > > Cheers,
>> > >
>> > > Because of the way ECLAIR deviation comments work implies that in most cases
>> > > the real
>> > > place where to put the deviation is the usage site
>> > > (the so-called top expansion location of the macro). Now, for widely-used
>> > > macros this is
>> > > cumbersome and would clutter the code unnecessarily. It's way cleaner imo to
>> > > have a single
>> > > line in the configuration with a clear justification that is present in the
>> > > textual output
>> > > of the tool.
>> >
>> > Just to clarify, you are saying that the following would not work for Eclair:
>> >
>> > /* SAF-XXX */
>> > #define LOWEST_POW2()
>> >
>> > Instead you would need the following:
>> >
>> > void foo()
>> > {
>> > 	/* SAF-XXX */
>> > 	LOWEST()
>> > }
>> >
>> > Am I correct? If so, would something like below (untested) work?
>> >
>> > #define LOWEST_POW2(...) ({ \
>> >    /* SAFE-XXX */           \
>> >    ...
>> >    })
>> >
>> > > But then there are tool interoperability considerations, that would call for
>> > > standardized
>> > > deviation mechanisms, if they do detect this as a violation (which I don't
>> > > know).
>> >
>> > I don't think we need to know whether a tool detects it. We only need to know
>> > whether this is  violation to MISRA. If this is one, then this is a call to
>> > have a marker in the code.
>> >
>> > If this is a false positive, then adding the deviation in the tool
>> > configuration is best (unless there are multiple tools affected).
>> >
>> > >
>> > > In the end, it could be done with a textual deviation, if that's preferred,
>> > > but keep in mind
>> > > that those are more fragile w.r.t. code movement.
>> >
>> > If the comment is around the macro there are limited chance that this will be
>> > missed. But if you are worried about code movement, you should be worried
>> > about macro renaming with your approach (one may not know Eclair has a
>> > deviation) and/or function with the same name.
>> >
>> > I am curious to know what the other thinks.
>> 
>> I agree.
>> 
>> I think that we should use the SAF-x-safe framework as much as 
>> possible.
>> That is the most flexible and easier to maintain deviation system we
>> have. If we can make it work in this specific case with Julien's
>> suggestion above, then great.
>> 
>> But it is becoming clear that the SAF-x-safe framework has 
>> limitations,
>> for instance  https://marc.info/?l=xen-devel&m=169657904027210
>> 
>> There are going to be cases where SAF-x-safe won't work. In those 
>> cases,
>> we will probably end up using an ECLAIR specific configuration. Those
>> cases should be hopefully few and should be well documented, also
>> outside of the ECLAIR config file, which is very ECLAIR specific and
>> optimized to be machine readable.
>> 
>> We need another RST document under docs/misra to document any 
>> deviations
>> that are not dealt by SAF-x-safe comments. Today we are basically 
>> using
>> the notes section in the docs/misra/rules.rst table but that doesn't
>> scale.
>> 
>> So I think we should:
>> - create new RST file like docs/misra/deviations.rst
>> - deviations.rst will list any deviation that is not a SAF-x-safe
>>   deviation
>> - all ECLAIR special deviations in the ECLAIR config file should be
>>   documented in deviations.rst
>> - in the future special ECLAIR deviations in the config file should
>>   come with a new documentation entry in deviations.rst
>> 
>> 
>> This doesn't entirely address Julien's valid concern but at least it
>> makes it easier to recognize the problem when it occurs.
> 
> 
> We already have docs/misra/documenting-violations.rst, so maybe we 
> could
> have one more section at the end of the document with a list of
> "special" deviations.

Sounds good. I'll submit it as part of the ecl updates patch by Simone 
[1].
I think a separate file is better, There's a pointer in rules.rst to
documenting-violations.rst, and a reference to deviations.rst can be 
added here.

[1] https://marc.info/?l=xen-devel&m=169658766432087&w=2

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


From xen-devel-bounces@lists.xenproject.org Mon Oct 09 08:52:11 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 09 Oct 2023 08:52:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614237.955219 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qplzf-0006ly-TU; Mon, 09 Oct 2023 08:52:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614237.955219; Mon, 09 Oct 2023 08:52: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 1qplzf-0006lr-Qe; Mon, 09 Oct 2023 08:52:03 +0000
Received: by outflank-mailman (input) for mailman id 614237;
 Mon, 09 Oct 2023 08:52: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 1qplze-0006ll-C9
 for xen-devel@lists.xenproject.org; Mon, 09 Oct 2023 08:52: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 1qplzc-0001Ze-Qi; Mon, 09 Oct 2023 08:52:00 +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 1qplzc-0001sw-Hw; Mon, 09 Oct 2023 08:52: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=dYVH9cxkNtdZNrCkQT+3SHTAgDwcyiRMGkQ4Z86jDbc=; b=a3hNh4kjFuY8bRBGF7ipQ/wnNL
	gIY/+GjjUgU2eQCixwDa2W89DoGarhjpT7i94yAtMnDg9iHgffmTPJyb88ad1lmdNl1FExEe1eeZd
	W36oNSVCckdij79jkkqGGxSNqLQWD9KL0EUpkZZVyqDgqkSLtcPJe+wfjtKo7zlhEhi8=;
Message-ID: <1ceb5aa0-d374-4357-964f-1341468d542e@xen.org>
Date: Mon, 9 Oct 2023 09:51:57 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN PATCH] xen: Add SAF deviations for MISRA C:2012 Rule 7.1
Content-Language: en-GB
To: Stefano Stabellini <sstabellini@kernel.org>,
 Luca Fancellu <Luca.Fancellu@arm.com>
Cc: Nicola Vetrini <nicola.vetrini@bugseng.com>,
 Xen-devel <xen-devel@lists.xenproject.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>,
 Jan Beulich <jbeulich@suse.com>, =?UTF-8?Q?Roger_Pau_Monn=C3=A9?=
 <roger.pau@citrix.com>, Henry Wang <Henry.Wang@arm.com>,
 Simone Ballarin <simone.ballarin@bugseng.com>,
 Doug Goldstein <cardoe@cardoe.com>, George Dunlap
 <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>,
 Andrew Cooper <andrew.cooper3@citrix.com>
References: <338d8e574db943a86c7605e4c6d9a299d45f067d.1696347345.git.nicola.vetrini@bugseng.com>
 <alpine.DEB.2.22.394.2310031345190.2348112@ubuntu-linux-20-04-desktop>
 <e1736215-52ba-4737-9da3-8f1ba7e832a6@citrix.com>
 <DB96C095-5FAF-40A1-9CA8-002291AA1933@arm.com>
 <2894008e8f612296da84267346ae4240@bugseng.com>
 <B00BC78B-E707-4043-A0B4-D320C6717472@arm.com>
 <alpine.DEB.2.22.394.2310041625170.2348112@ubuntu-linux-20-04-desktop>
 <9DD525D9-DB6D-4888-9266-FB45906A0E0F@arm.com>
 <alpine.DEB.2.22.394.2310051756360.2348112@ubuntu-linux-20-04-desktop>
 <C2DDFAB5-D943-4A24-9C14-AF35BE2A7C90@arm.com>
 <alpine.DEB.2.22.394.2310061741130.3431292@ubuntu-linux-20-04-desktop>
From: Julien Grall <julien@xen.org>
In-Reply-To: <alpine.DEB.2.22.394.2310061741130.3431292@ubuntu-linux-20-04-desktop>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

Hi,

On 07/10/2023 01:43, Stefano Stabellini wrote:
> On Fri, 6 Oct 2023, Luca Fancellu wrote:
>>> On 6 Oct 2023, at 02:02, Stefano Stabellini <sstabellini@kernel.org> wrote:
>>>
>>> On Thu, 5 Oct 2023, Luca Fancellu wrote:
>>>>> On 5 Oct 2023, at 00:32, Stefano Stabellini <sstabellini@kernel.org> wrote:
>>>>>
>>>>> On Wed, 4 Oct 2023, Luca Fancellu wrote:
>>>>>>> On 4 Oct 2023, at 11:29, Nicola Vetrini <nicola.vetrini@bugseng.com> wrote:
>>>>>>> On 04/10/2023 12:06, Luca Fancellu wrote:
>>>>>>>> Hi Nicola,
>>>>>>>>> On 4 Oct 2023, at 10:56, andrew.cooper3@citrix.com wrote:
>>>>>>>>> On 03/10/2023 9:46 pm, Stefano Stabellini wrote:
>>>>>>>>>> On Tue, 3 Oct 2023, Nicola Vetrini wrote:
>>>>>>>>>>> As specified in rules.rst, these constants can be used
>>>>>>>>>>> in the code.
>>>>>>>>>>> Their deviation is now accomplished by using a SAF comment,
>>>>>>>>>>> rather than an ECLAIR configuration.
>>>>>>>>>>> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
>>>>>>>>>> "SAF" discussion aside that can be resolved elsewhere:
>>>>>>>>>> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
>>>>>>>>> Well no.  "SAF" aside (and SAF does need fixing before reposting this patch, otherwise it's just unnecessary churn), ...
>>>>>>>>>>> diff --git a/xen/arch/x86/hvm/svm/svm.h b/xen/arch/x86/hvm/svm/svm.h
>>>>>>>>>>> index d2a781fc3fb5..d0623b72ccfa 100644
>>>>>>>>>>> --- a/xen/arch/x86/hvm/svm/svm.h
>>>>>>>>>>> +++ b/xen/arch/x86/hvm/svm/svm.h
>>>>>>>>>>> @@ -57,14 +57,23 @@ static inline void svm_invlpga(unsigned long linear, uint32_t asid)
>>>>>>>>>>> #define INSTR_INT3 INSTR_ENC(X86EMUL_OPC( 0, 0xcc), 0)
>>>>>>>>>>> #define INSTR_ICEBP INSTR_ENC(X86EMUL_OPC( 0, 0xf1), 0)
>>>>>>>>>>> #define INSTR_HLT INSTR_ENC(X86EMUL_OPC( 0, 0xf4), 0)
>>>>>>>>>>> +/* SAF-2-safe */
>>>>>>>>>>> #define INSTR_XSETBV INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0321)
>>>>>>>>>>> +/* SAF-2-safe */
>>>>>>>>>>> #define INSTR_VMRUN INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0330)
>>>>>>>>>>> +/* SAF-2-safe */
>>>>>>>>>>> #define INSTR_VMCALL INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0331)
>>>>>>>>>>> +/* SAF-2-safe */
>>>>>>>>>>> #define INSTR_VMLOAD INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0332)
>>>>>>>>>>> +/* SAF-2-safe */
>>>>>>>>>>> #define INSTR_VMSAVE INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0333)
>>>>>>>>>>> +/* SAF-2-safe */
>>>>>>>>>>> #define INSTR_STGI INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0334)
>>>>>>>>>>> +/* SAF-2-safe */
>>>>>>>>>>> #define INSTR_CLGI INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0335)
>>>>>>>>>>> +/* SAF-2-safe */
>>>>>>>>>>> #define INSTR_INVLPGA INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0337)
>>>>>>>>>>> +/* SAF-2-safe */
>>>>>>>>>>> #define INSTR_RDTSCP INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0371)
>>>>>>>>>>> #define INSTR_INVD INSTR_ENC(X86EMUL_OPC(0x0f, 0x08), 0)
>>>>>>>>>>> #define INSTR_WBINVD INSTR_ENC(X86EMUL_OPC(0x0f, 0x09), 0)
>>>>>>>>> ... this has broken a tabulated structure to have comments ahead of lines with octal numbers, while ...
>>>>>>>>>>> diff --git a/xen/arch/x86/hvm/svm/emulate.c b/xen/arch/x86/hvm/svm/emulate.c
>>>>>>>>>>> index aa2c61c433b3..c5e3341c6316 100644
>>>>>>>>>>> --- a/xen/arch/x86/hvm/svm/emulate.c
>>>>>>>>>>> +++ b/xen/arch/x86/hvm/svm/emulate.c
>>>>>>>>>>> @@ -90,9 +90,9 @@ unsigned int svm_get_insn_len(struct vcpu *v, unsigned int instr_enc)
>>>>>>>>>>> if ( !instr_modrm )
>>>>>>>>>>> return emul_len;
>>>>>>>>>>> - if ( modrm_mod == MASK_EXTR(instr_modrm, 0300) &&
>>>>>>>>>>> - (modrm_reg & 7) == MASK_EXTR(instr_modrm, 0070) &&
>>>>>>>>>>> - (modrm_rm & 7) == MASK_EXTR(instr_modrm, 0007) )
>>>>>>>>>>> + if ( modrm_mod == MASK_EXTR(instr_modrm, 0300) && /* SAF-2-safe */
>>>>>>>>>>> + (modrm_reg & 7) == MASK_EXTR(instr_modrm, 0070) && /* SAF-2-safe */
>>>>>>>>>>> + (modrm_rm & 7) == MASK_EXTR(instr_modrm, 0007) ) /* SAF-2-safe */
>>>>>>>>>>> return emul_len;
>>>>>>>>>>> }
>>>>>>>>> ... this has comments at the end of lines with octal numbers.
>>>>>>>>> So which is it?
>>>>>>>> I agree with Andrew here in this sense: the in-code comment is
>>>>>>>> supposed to be on the line *before* the violation,
>>>>>>>> not on the same line, so I’m also wondering how it is fixing the very
>>>>>>>> first violation.
>>>>>>>> Cheers,
>>>>>>>> Luca
>>>>>>>
>>>>>>
>>>>>> Hi Nicola,
>>>>>>
>>>>>>> Actually it justifies what is on either the previous line or the same because it's
>>>>>>> translated to /* -E> safe MC3R1.R7.1 1 */, where the last number is how many lines besides
>>>>>>> the current one are to be deviated (e.g. you can have 0 deviate only the current line).
>>>>>>
>>>>>> Just to understand, does this way:
>>>>>>
>>>>>> <line A>
>>>>>> /* -E> safe MC3R1.R7.1 1 */
>>>>>> <line B>
>>>>>>
>>>>>> Justifies only line B? Because I thought so, but now I want to be sure, otherwise it doesn’t act
>>>>>> as intended.
>>>>>>
>>>>>>
>>>>>>> Most of the times the current form is what's needed, as you would put the comment on a line
>>>>>>> of its own. In the case of the if that would break the formatting. The downside of doing the same thing on the table is that the first entry not to be deviated would actually be deviated.
>>>>>>>
>>>>>>> #define INSTR_INVD INSTR_ENC(X86EMUL_OPC(0x0f, 0x08), 0)
>>>>>>>
>>>>>>> This may not be problematic, since 0 could be considered an octal constant, but is an
>>>>>>> exception explicitly listed in the MISRA rule.
>>>>>>> For the same reason the line
>>>>>>>
>>>>>>> return emul_len;
>>>>>>>
>>>>>>> is deviated by the above comment, but putting an octal constant there would for sure
>>>>>>> be the result of a deliberate choice. There's the alternative of:
>>>>>>>
>>>>>>>                         /* SAF-2-safe */
>>>>>>> if ( modrm_mod      == MASK_EXTR(instr_modrm, 0300) &&
>>>>>>>                         /* SAF-2-safe */
>>>>>>>      (modrm_reg & 7) == MASK_EXTR(instr_modrm, 0070) &&
>>>>>>>                         /* SAF-2-safe */
>>>>>>>      (modrm_rm & 7)  == MASK_EXTR(instr_modrm, 0007) )
>>>>>>>
>>>>>>> to make it consistent with the table and avoid any "hidden" deviated line or, again,
>>>>>>> the modification of the translation script so that it doesn't use a fixed "1" offset, which
>>>>>>> is motivated by what you wrote on the thread of the modification of xen_analysis.py.
>>>>>>
>>>>>>  From the documentation:
>>>>>>
>>>>>>    In the Xen codebase, these tags will be used to document and suppress findings:
>>>>>>
>>>>>>    - SAF-X-safe: This tag means that the next line of code contains a finding, but
>>>>>>      the non compliance to the checker is analysed and demonstrated to be safe.
>>>>>>
>>>>>> I understand that Eclair is capable of suppressing also the line in which the in-code suppression
>>>>>> comment resides, but these generic Xen in-code suppression comment are meant to be used
>>>>>> by multiple static analysis tools and many of them suppress only the line next to the comment
>>>>>> (Coverity, cppcheck).
>>>>>
>>>>> As we see more realistic examples, it turns out that this is limiting.
>>>>>
>>>>> Given that the SAF-2-safe comment needs to go through xen-analysis.py
>>>>> translations anyway, could we implement something a bit more flexible in
>>>>> xen-analysis.py?
>>>>>
>>>>> For instance, could we implement a format with the number of lines of
>>>>> code like this as we discussed in a previous thread?
>>>>>
>>>>> /* SAF-2-safe start */
>>>>> if ( modrm_mod      == MASK_EXTR(instr_modrm, 0300) &&
>>>>>    (modrm_reg & 7) == MASK_EXTR(instr_modrm, 0070) &&
>>>>>    (modrm_rm & 7)  == MASK_EXTR(instr_modrm, 0007) )
>>>>> /* SAF-2-safe end */
>>>>>
>>>>> Firstly, let ask Andrew, do you prefer this?
>>>>>
>>>>>
>>>>> And also this second format:
>>>>>
>>>>> if ( modrm_mod      == MASK_EXTR(instr_modrm, 0300) && /* SAF-2-safe */
>>>>>    (modrm_reg & 7) == MASK_EXTR(instr_modrm, 0070) && /* SAF-2-safe */
>>>>>    (modrm_rm & 7)  == MASK_EXTR(instr_modrm, 0007) ) /* SAF-2-safe */
>>>>>
>>>>>
>>>>> Could we implement in xen-analysis.py a conversion that would turn the
>>>>> two formats above that are not understood by cppcheck into:
>>>>>
>>>>> /* cppcheck tag */
>>>>> if ( modrm_mod      == MASK_EXTR(instr_modrm, 0300) &&
>>>>> /* cppcheck tag */
>>>>>    (modrm_reg & 7) == MASK_EXTR(instr_modrm, 0070) &&
>>>>> /* cppcheck tag */
>>>>>    (modrm_rm & 7)  == MASK_EXTR(instr_modrm, 0007) )
>>>>>
>>>>> Or this is a problem because it would end up changing lines of code
>>>>> numbers in the source file?
>>>>
>>>> Yes this is the real issue why we didn’t do the /* ... start */ code /* ... end */
>>>
>>> Right so the results would be all off by a few lines of code so when
>>> you go to read the report generated by cppcheck, the references
>>> wouldn't match anymore.
>>>
>>> Before giving up and accepting that we are constrained to only formats
>>> that don't change the LOC numbers, can we check what Coverity supports?
>>>
>>> I am asking because we could get away with implementing the formats
>>> above in cppcheck, given that cppcheck is open source. But for Coverity
>>> we need to stay with what is already supported by it.
>>>
>>> Does Coverity support anything other than:
>>>
>>> <tag on previous line>
>>> <next line is code with deviation>
>>
>> Unfortunately not, from its documentation I can’t see anything apart from the above,
>> I can ask someone from synopsys though to double check.
> 
> I wonder how people would feel to have an exception to our coding style
> in these cases and have longer than 80 chars lines. I am asking because
> this is better than many of the other options above:

I am not sure this is better. This is a long line to read. But this is a 
personal opinion.

On the technical side, can we easily teach a tool to format this kind of 
exception? If not, then this should not be an exception we should implement.

> 
> /* SAF-x-safe */
> if ( modrm_mod == MASK_EXTR(instr_modrm, 0300) && (modrm_reg & 7) == MASK_EXTR(instr_modrm, 0070) && (modrm_rm & 7)  == MASK_EXTR(instr_modrm, 0007) )
> 
> Any other ideas?

Could we have a number in the comment to indicate the number of lines 
the comment applies to?

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Mon Oct 09 09:09:30 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 09 Oct 2023 09:09:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614241.955229 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qpmGS-0000NQ-BO; Mon, 09 Oct 2023 09:09:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614241.955229; Mon, 09 Oct 2023 09:09: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 1qpmGS-0000NJ-7s; Mon, 09 Oct 2023 09:09:24 +0000
Received: by outflank-mailman (input) for mailman id 614241;
 Mon, 09 Oct 2023 09:09: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 1qpmGQ-0000ND-QW
 for xen-devel@lists.xenproject.org; Mon, 09 Oct 2023 09:09: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 1qpmGP-00024p-LK; Mon, 09 Oct 2023 09:09: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 1qpmGP-0002jX-FQ; Mon, 09 Oct 2023 09:09: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=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=cbWPbU/GHynzwBp4tvO2Ar68SLko/PAJRHtQJ7s2t6U=; b=rf/vW7tiFacHV6gXL5tBORUbny
	Ddzd4/8NlUtmW5d9N5M5QyLGIc432bDRtn8my3k7eZ/VRl/RGY/UwuuVeeM+K2bIuITojs/Pkvvg3
	rtqUsSn3J08snNeyjH/rgejNuaW48QQy+2vaZf1/idXm4oYxVnQh3foYS3Fit6zVMRD4=;
Message-ID: <d90524b8-70ee-457e-8d6a-9e69f135b81d@xen.org>
Date: Mon, 9 Oct 2023 10:09:19 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN PATCH][for-4.19 8/9] xen/types: address Rule 10.1 for
 DECLARE_BITMAP use
Content-Language: en-GB
To: Stefano Stabellini <sstabellini@kernel.org>
Cc: 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,
 jbeulich@suse.com, andrew.cooper3@citrix.com, roger.pau@citrix.com,
 Paul Durrant <paul@xen.org>, George Dunlap <george.dunlap@citrix.com>,
 Wei Liu <wl@xen.org>
References: <cover.1696514677.git.nicola.vetrini@bugseng.com>
 <9642dcb4ab51ec9eaeedf16056fbcd946a3efbea.1696514677.git.nicola.vetrini@bugseng.com>
 <80101145-1958-457a-8c80-cae816ae74aa@xen.org>
 <4b144869407871011c538af48b311c31@bugseng.com>
 <354c6138-509e-4106-9a27-3c75c85b85e5@xen.org>
 <alpine.DEB.2.22.394.2310061746190.3431292@ubuntu-linux-20-04-desktop>
From: Julien Grall <julien@xen.org>
In-Reply-To: <alpine.DEB.2.22.394.2310061746190.3431292@ubuntu-linux-20-04-desktop>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit



On 07/10/2023 02:04, Stefano Stabellini wrote:
> On Fri, 6 Oct 2023, Julien Grall wrote:
>> Hi Nicola,
>>
>> On 06/10/2023 11:10, Nicola Vetrini wrote:
>>> On 06/10/2023 11:34, Julien Grall wrote:
>>>> Hi Nicola,
>>>>
>>>> On 06/10/2023 09:26, 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
>>>>> in macro 'BITS_TO_LONGS'.
>>>>>
>>>>> A comment in BITS_TO_LONGS is added to make it clear that
>>>>> values passed are meant to be positive.
>>>>
>>>> I am confused. If the value is meant to be positive. Then...
>>>>
>>>>>
>>>>> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
>>>>> ---
>>>>>    xen/include/xen/iommu.h | 2 +-
>>>>>    xen/include/xen/types.h | 1 +
>>>>>    2 files changed, 2 insertions(+), 1 deletion(-)
>>>>>
>>>>> diff --git a/xen/include/xen/iommu.h b/xen/include/xen/iommu.h
>>>>> index 0e747b0bbc1c..34aa0b9b5b81 100644
>>>>> --- a/xen/include/xen/iommu.h
>>>>> +++ b/xen/include/xen/iommu.h
>>>>> @@ -360,7 +360,7 @@ struct domain_iommu {
>>>>>    #endif
>>>>>          /* Features supported by the IOMMU */
>>>>> -    DECLARE_BITMAP(features, IOMMU_FEAT_count);
>>>>> +    DECLARE_BITMAP(features, (int)IOMMU_FEAT_count);
>>>>
>>>> ... why do we cast to (int) rather than (unsigned int)? Also, I think
>>>> this cast deserve a comment on top because this is not a very obvious
>>>> one.
>>>>
>>>>>          /* Does the guest share HAP mapping with the IOMMU? */
>>>>>        bool hap_pt_share;
>>>>> diff --git a/xen/include/xen/types.h b/xen/include/xen/types.h
>>>>> index aea259db1ef2..936e83d333a0 100644
>>>>> --- a/xen/include/xen/types.h
>>>>> +++ b/xen/include/xen/types.h
>>>>> @@ -22,6 +22,7 @@ typedef signed long ssize_t;
>>>>>      typedef __PTRDIFF_TYPE__ ptrdiff_t;
>>>>>    +/* Users of this macro are expected to pass a positive value */
>>>>>    #define BITS_TO_LONGS(bits) \
>>>>>        (((bits)+BITS_PER_LONG-1)/BITS_PER_LONG)
>>>>>    #define DECLARE_BITMAP(name,bits) \
>>>>
>>>> Cheers,
>>>
>>> See [1] for the reason why I did so. I should have mentioned that in the
>>> commit notes, sorry.
>>> In short, making BITS_TO_LONGS essentially unsigned would cause a cascade of
>>> build errors and
>>> possibly other essential type violations.
>> Can you share some of the errors?
>>
>>> If this is to be fixed that way, the effort required
>>> is far greater. Either way, a comment on top of can be added, along the
>>> lines of:
>>>
>>> Leaving this as an enum would violate MISRA C:2012 Rule 10.1
>>
>> I read this as you are simply trying to silence your tool. I think this the
>> wrong approach as you are now making the code confusing for the reader (you
>> pass a signed int to a function that is supposed to take a positive number).
>>
>> I appreciate that this will result to more violations at the beginning. But
>> the whole point of MISRA is to make the code better.
>>
>> If this is too complex to solve now, then a possible option is to deviate for
>> the time being.
> 
> I agree on everything Julien's wrote and I was about to suggest to use a
> SAF comment to suppress the warning because it is clearer than a int
> cast.
> 
> But then I realized that even if BITS_TO_LONGS was fixed, wouldn't still
> we have a problem because IOMMU_FEAT_count is an enum?
> 
> Is it the case that IOMMU_FEAT_count would have to be cast regardless,
> either to int or unsigned int or whatever to be used in DECLARE_BITMAP?
> 
> 
> So we have 2 problems here: one problem is DECLARE_BITMAP taking int
> instead of unsigned int, and another problem is IOMMU_FEAT_count being
> an enum.
> 
> If I got it right, then I would go with the cast to int (like done in
> this patch) with a decent comment on top of it.

I might be missing something here. But why should we use cast rather 
than /* SAF-X */ just above? I would have expected we wanted to 
highlight the violation rather than hiding it.

Ultimately, the code is mantained by Jan. So this is his call.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Mon Oct 09 09:38:28 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 09 Oct 2023 09:38:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614247.955239 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qpmiL-0004cV-VQ; Mon, 09 Oct 2023 09:38:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614247.955239; Mon, 09 Oct 2023 09: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 1qpmiL-0004cO-Sr; Mon, 09 Oct 2023 09:38:13 +0000
Received: by outflank-mailman (input) for mailman id 614247;
 Mon, 09 Oct 2023 09:38: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 1qpmiK-0004cE-HN; Mon, 09 Oct 2023 09:38: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 1qpmiK-0002j2-EK; Mon, 09 Oct 2023 09:38: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 1qpmiK-00027P-0u; Mon, 09 Oct 2023 09:38:12 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qpmiK-0002ib-0O; Mon, 09 Oct 2023 09:38: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=QudWCRuLMUh9SltrJ8pG/rDGJfw6hwJFIb+EaLNmm7U=; b=eyFvMc9+8ag8YHp/pPRh2GMQ6H
	/YUPm1IomX1QIxDvmbCnRtcP9OXeEVPqy03/9dwIezOquPSYIs9usV0m5ZtNgO9mpSVHL/zbTSsez
	9K/bqz1rWtQ5csnjZr7llkX1fxAn/qSccazvjgjVwAxbGSJ3SCckrAxvu7WWcWCvq98w=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183322-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 183322: tolerable FAIL - PUSHED
X-Osstest-Failures:
    linux-linus:test-amd64-amd64-xl-credit2:guest-localmigrate/x10:fail:heisenbug
    linux-linus:test-armhf-armhf-libvirt-qcow2:host-ping-check-xen:fail:heisenbug
    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-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-armhf-armhf-libvirt: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-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-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: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-xl-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu: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-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-raw:migrate-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-amd64-amd64-libvirt:migrate-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
    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-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:saverestore-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-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=94f6f0550c625fab1f373bb86a6669b45e9748b3
X-Osstest-Versions-That:
    linux=37faf07bf90ace7c8e34c6b825dcfbb587d2e701
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 09 Oct 2023 09:38:12 +0000

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

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-amd64-amd64-xl-credit2 20 guest-localmigrate/x10 fail pass in 183324-retest
 test-armhf-armhf-libvirt-qcow2 10 host-ping-check-xen fail pass in 183324-retest

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail in 183324 like 183321
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail in 183324 never pass
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183321
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183321
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183321
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183321
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183321
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183321
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183321
 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-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          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-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-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-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-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-amd64-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-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-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-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-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass

version targeted for testing:
 linux                94f6f0550c625fab1f373bb86a6669b45e9748b3
baseline version:
 linux                37faf07bf90ace7c8e34c6b825dcfbb587d2e701

Last test of basis   183321  2023-10-08 18:13:25 Z    0 days
Testing same since   183322  2023-10-09 01:11:16 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Linus Torvalds <torvalds@linux-foundation.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-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                                  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                               fail    
 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
   37faf07bf90a..94f6f0550c62  94f6f0550c625fab1f373bb86a6669b45e9748b3 -> tested/linux-linus


From xen-devel-bounces@lists.xenproject.org Mon Oct 09 09:51:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 09 Oct 2023 09:51:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614254.955249 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qpmvV-0007JN-96; Mon, 09 Oct 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 614254.955249; Mon, 09 Oct 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 1qpmvV-0007JG-63; Mon, 09 Oct 2023 09:51:49 +0000
Received: by outflank-mailman (input) for mailman id 614254;
 Mon, 09 Oct 2023 09:51: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=F0fN=FX=linaro.org=alex.bennee@srs-se1.protection.inumbo.net>)
 id 1qpmvT-0007JA-Sz
 for xen-devel@lists.xenproject.org; Mon, 09 Oct 2023 09:51:47 +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 74f67017-6689-11ee-9b0d-b553b5be7939;
 Mon, 09 Oct 2023 11:51:45 +0200 (CEST)
Received: by mail-wr1-x435.google.com with SMTP id
 ffacd0b85a97d-32329d935d4so3904003f8f.2
 for <xen-devel@lists.xenproject.org>; Mon, 09 Oct 2023 02:51:45 -0700 (PDT)
Received: from zen.linaroharston ([85.9.250.243])
 by smtp.gmail.com with ESMTPSA id
 n9-20020adff089000000b0031ad2f9269dsm9117293wro.40.2023.10.09.02.51.44
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 09 Oct 2023 02:51:44 -0700 (PDT)
Received: from zen (localhost [127.0.0.1])
 by zen.linaroharston (Postfix) with ESMTP id 47D0E1FFBB;
 Mon,  9 Oct 2023 10:51:44 +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: 74f67017-6689-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=linaro.org; s=google; t=1696845105; x=1697449905; 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=NAHGsTZCeUxfPqrrTshtCf2/Bq/A/OJTigVgFiLPkAI=;
        b=Y9RTNj1JW8GWrHbQ5PbQcFiefenhFERipDfGmz/iTuA3sCJdDbe3+OxMeR7cjDg/gC
         eQH7XpHs1lI7j+alFfMffyb7q+yCz0PLoehx+tffSUjYqLugX74GbutzlKSIA7uE0ujh
         SnbP+qP0+3W5T9vnRVAhvYvE/97aLhHpofw2LOQDRnkvry14kBV1kzId8mMRm/6YUbqt
         e6ObaO/kTcV6f/I5orY8nXa4RcWwQYCiHQzF5Ws7t7ommt2l1Bv8Y5nxWFe9qyYhN5Am
         yobWCFeuG3V0bc+uIWmpYWatdP40YghQDzpWHOL+yvRAZFLxeZ2KVfxlRMemR5tuTrAH
         5POw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1696845105; x=1697449905;
        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=NAHGsTZCeUxfPqrrTshtCf2/Bq/A/OJTigVgFiLPkAI=;
        b=DRss+ALpoLg6e+xJuyc8GnvUj2bX+LgUpA+ePXqOjH07L/T5b7I3MMJiFmtPhCTDFt
         NyFrF4SuYJR2tefOjQXFocWWqUh1iqZ8BtGoLoq/RduFT7OwcFXSRTT5jMLyA7aCRew5
         h3vVhKpxmcYft87qjHR8kPuRL8o+iVo3q7YoyU51trSQ1OaCBH8nETWi9YFfanj4TlkE
         cf5M4eLmBNxlO30EUaEXC1I42V8AUlkSEXCs156cDAJ8Gtmb+6BOwxrTCg2MJA84a1j4
         NBjY1vkL1ZeHgBn95+MuEb0YecsmVTIWRUZJcrZrXcyBN49wqoCNbaGQNTqVGs5CI38A
         vVQw==
X-Gm-Message-State: AOJu0YwSkRBg4wSmxlfQjyXNMecKZjPgR8CdjphySK54M8oFM+TkMCdg
	q5kblahlrYE6ThdM0uBE+ryMBA==
X-Google-Smtp-Source: AGHT+IFmkRg7YbI2Ea7JVADPY1W3RJWHoMKWbT5uycw7piPqswo1SNCfaKYsHAeYee6tgLPbqHLkgQ==
X-Received: by 2002:a05:6000:1758:b0:329:6d09:61f7 with SMTP id m24-20020a056000175800b003296d0961f7mr6094220wrf.48.1696845105028;
        Mon, 09 Oct 2023 02:51:45 -0700 (PDT)
References: <cover.1693311370.git.viresh.kumar@linaro.org>
 <52b07a3861a34fb0deb6251bae8bd885815c6944.1693311370.git.viresh.kumar@linaro.org>
 <fb79fa9a-e91c-4bb7-8aee-c384b99df953@suse.com>
 <20231005063231.vqwhfnlc64phwmto@vireshk-i7>
User-agent: mu4e 1.11.22; emacs 29.1.50
From: Alex =?utf-8?Q?Benn=C3=A9e?= <alex.bennee@linaro.org>
To: Viresh Kumar <viresh.kumar@linaro.org>
Cc: Juergen Gross <jgross@suse.com>, Stefano Stabellini
 <sstabellini@kernel.org>, Oleksandr Tyshchenko
 <oleksandr_tyshchenko@epam.com>, Vincent Guittot
 <vincent.guittot@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 2/2] xen: privcmd: Add support for ioeventfd
Date: Mon, 09 Oct 2023 10:40:48 +0100
In-reply-to: <20231005063231.vqwhfnlc64phwmto@vireshk-i7>
Message-ID: <877cnwqg27.fsf@linaro.org>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable


Viresh Kumar <viresh.kumar@linaro.org> writes:

> On 29-09-23, 07:46, Juergen Gross wrote:
>> On 29.08.23 14:29, Viresh Kumar wrote:
>> > +static irqreturn_t ioeventfd_interrupt(int irq, void *dev_id)
>> > +{
>> > +	struct ioreq_port *port =3D dev_id;
>> > +	struct privcmd_kernel_ioreq *kioreq =3D port->kioreq;
>> > +	struct ioreq *ioreq =3D &kioreq->ioreq[port->vcpu];
>> > +	struct privcmd_kernel_ioeventfd *kioeventfd;
>> > +	unsigned int state =3D STATE_IOREQ_READY;
>> > +
>> > +	if (ioreq->state !=3D STATE_IOREQ_READY ||
>> > +	    ioreq->type !=3D IOREQ_TYPE_COPY || ioreq->dir !=3D IOREQ_WRITE)
>> > +		return IRQ_NONE;
>> > +
>> > +	smp_mb();
>> > +	ioreq->state =3D STATE_IOREQ_INPROCESS;
>> > +
>> > +	mutex_lock(&kioreq->lock);
>> > +	list_for_each_entry(kioeventfd, &kioreq->ioeventfds, list) {
>> > +		if (ioreq->addr =3D=3D kioeventfd->addr + VIRTIO_MMIO_QUEUE_NOTIFY =
&&
>> > +		    ioreq->size =3D=3D kioeventfd->addr_len &&
>> > +		    (ioreq->data & QUEUE_NOTIFY_VQ_MASK) =3D=3D kioeventfd->vq) {
>> > +			eventfd_signal(kioeventfd->eventfd, 1);
>> > +			state =3D STATE_IORESP_READY;
>> > +			break;
>> > +		}
>> > +	}
>> > +	mutex_unlock(&kioreq->lock);
>> > +
>> > +	smp_mb();
>>=20
>> Is this really needed after calling mutex_unlock()? I think you are tryi=
ng to
>> avoid any accesses to go past ioreq->state modification. If so, add a co=
mment
>> (either why you need the barrier, or that you don't need it due to the u=
nlock).
>
> Right, want all writes to finish before updating state.

I thought generally sync points act as full barriers. Doing a bunch of
grepping I think ends at:

  static __always_inline bool __mutex_unlock_fast(struct mutex *lock)
  {
          unsigned long curr =3D (unsigned long)current;

          return atomic_long_try_cmpxchg_release(&lock->owner, &curr, 0UL);
  }

so you should already have completed your writes by that point.

>
>> In general, shouldn't the state be checked and modified in the locked ar=
ea?
>
> The handler runs separately for each vcpu and shouldn't run in parallel f=
or the
> same vcpu. And so only one thread should ever be accessing ioreq port str=
ucture.
>
> The lock is there to protect the ioeventfds list (as mentioned in struct
> declaration) against parallel access, as threads for different vcpus may =
end up
> accessing it simultaneously.


--=20
Alex Benn=C3=A9e
Virtualisation Tech Lead @ Linaro


From xen-devel-bounces@lists.xenproject.org Mon Oct 09 10:50:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 09 Oct 2023 10:50:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614261.955259 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qpnpm-0005yR-WD; Mon, 09 Oct 2023 10:49:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614261.955259; Mon, 09 Oct 2023 10:49: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 1qpnpm-0005yK-Rc; Mon, 09 Oct 2023 10:49:58 +0000
Received: by outflank-mailman (input) for mailman id 614261;
 Mon, 09 Oct 2023 10:49: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 1qpnpm-0005yA-Bu; Mon, 09 Oct 2023 10:49: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 1qpnpm-0004d4-9i; Mon, 09 Oct 2023 10:49: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 1qpnpl-00047L-Tn; Mon, 09 Oct 2023 10:49:57 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qpnpl-00085Q-TR; Mon, 09 Oct 2023 10:49: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=iaTPo099/Wo6g0zp5sYelksEyBZPmxDJ/mxkYVbg3cU=; b=w2p8bYjTfUT9PzmozKW4dBKjPw
	wc5sASLlN3uup6KjlelMDwFykncHLlZFqlCxouXNsbxG6ETeOCnjfYdX9yDftzG7czP1AWXac1apT
	hA28mvmrbuaPA4IxDvwAVm+pUvrSU1X2nXtrKasEvmUA6bUionZSkQXfSfJtLdeRB9iM=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183326-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 183326: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=137f799aaed91e592700e0488067292495b7ea7e
X-Osstest-Versions-That:
    ovmf=4ddd8ac3a29d9c5974a19f36c1dc5896d813dc6e
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 09 Oct 2023 10:49:57 +0000

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

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 137f799aaed91e592700e0488067292495b7ea7e
baseline version:
 ovmf                 4ddd8ac3a29d9c5974a19f36c1dc5896d813dc6e

Last test of basis   183320  2023-10-08 11:13:57 Z    0 days
Testing same since   183326  2023-10-09 08:42:21 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Ray Ni <ray.ni@intel.com>
  Yuanhao Xie <yuanhao.xie@intel.com>
  YuanhaoXie <yuanhao.xie@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
   4ddd8ac3a2..137f799aae  137f799aaed91e592700e0488067292495b7ea7e -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Mon Oct 09 10:53:30 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 09 Oct 2023 10:53:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614267.955269 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qpntB-0007T5-DL; Mon, 09 Oct 2023 10:53:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614267.955269; Mon, 09 Oct 2023 10: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 1qpntB-0007Sy-AS; Mon, 09 Oct 2023 10:53:29 +0000
Received: by outflank-mailman (input) for mailman id 614267;
 Mon, 09 Oct 2023 10: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=qkxv=FX=linaro.org=viresh.kumar@srs-se1.protection.inumbo.net>)
 id 1qpnt9-0007RR-PJ
 for xen-devel@lists.xenproject.org; Mon, 09 Oct 2023 10:53:27 +0000
Received: from mail-pf1-x430.google.com (mail-pf1-x430.google.com
 [2607:f8b0:4864:20::430])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 119e8d93-6692-11ee-9b0d-b553b5be7939;
 Mon, 09 Oct 2023 12:53:25 +0200 (CEST)
Received: by mail-pf1-x430.google.com with SMTP id
 d2e1a72fcca58-690b7cb71aeso3178806b3a.0
 for <xen-devel@lists.xenproject.org>; Mon, 09 Oct 2023 03:53:25 -0700 (PDT)
Received: from localhost ([122.172.81.92]) by smtp.gmail.com with ESMTPSA id
 g2-20020a63ad02000000b00584d035c08asm8018705pgf.24.2023.10.09.03.53.22
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 09 Oct 2023 03:53: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: 119e8d93-6692-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=linaro.org; s=google; t=1696848803; x=1697453603; 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=Hjpz99pKtSDqY7Lxx2Kmyl5doNN9PYMFGMw6h35LBMc=;
        b=XabKcBG9pI5KTKxzn8XrtcXEbyqcsGYbhsc1u1P0VmdxTQ6/CUmMJFrGvszn7LdD5P
         mFmreEN9TmDjjxoFpIZZbSvIBjVPq73urftLZ814lD7oVV8HKJSO7iq/spNLVQuWTj2i
         piiMSuenqzv5aP+lSYy313mpSVtu1uA48wj/eIi6yHU8fGuJLXcJe81I61hMbbtVO358
         gee15zsS+TUfXX4CkFS4m552tAEKBsMULX79W2tcGD2h4aDV1pw/8fpvr/6e3ymkoHvZ
         XRylYXIjezZ+aJTKsc+QTbhESwomhBlRR4o92Vek/yfO+Q/gvY7OsliN+GBHkZId0FA5
         mklw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1696848803; x=1697453603;
        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=Hjpz99pKtSDqY7Lxx2Kmyl5doNN9PYMFGMw6h35LBMc=;
        b=FbmRh3/jlILm5HhGt4kK/5ortlprZ1XxTGzuFPAiuZ0wkYbEzN+bL3vnoABvkCju+D
         uWZLXL6NgCSJZIQxSsLDTMBmnQALZnH33TlfKiT5GdFAHxkltHweaOVAVcCcGqoN1znT
         9p9kiBmkQTjrqrxuaDAP9cHZYM3mBZ8+B9rst0EjQVwZdpcK3SUA4vREMIQdmKHf22UT
         wOqtkbQFEBrKBmRzMf+piKkKuCMJMeZ42o4rDXY0dJjzmFFgACayA1wuQ5ROnW9mGdeV
         nkpRZFra44/G8uz/0l2iN+XRqOSFtCYv/Ivo6amb/8Yzp2Tlp5YbrynIlqZvH/sLheY8
         23hA==
X-Gm-Message-State: AOJu0Yx7zj0J2sRsVcITiplfnUZ3fbPzFnszy6b4ww8kGwVbx2vvfzuu
	4z5XZ+CT5SPOsPeBpMCnx/o3Rg==
X-Google-Smtp-Source: AGHT+IEVfOR4NoAnaSIGgCYioI/Xey27e7ZEqzjGtmASnTwitAxG2F2Q7OoKyuVPHInKVZV5l5+DIQ==
X-Received: by 2002:a05:6a00:cd4:b0:68f:c1e0:a2c4 with SMTP id b20-20020a056a000cd400b0068fc1e0a2c4mr17399432pfv.3.1696848803584;
        Mon, 09 Oct 2023 03:53:23 -0700 (PDT)
Date: Mon, 9 Oct 2023 16:23:20 +0530
From: Viresh Kumar <viresh.kumar@linaro.org>
To: Alex =?utf-8?Q?Benn=C3=A9e?= <alex.bennee@linaro.org>
Cc: Juergen Gross <jgross@suse.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>,
	Vincent Guittot <vincent.guittot@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 2/2] xen: privcmd: Add support for ioeventfd
Message-ID: <20231009105320.scljokj4ies2s5r4@vireshk-i7>
References: <cover.1693311370.git.viresh.kumar@linaro.org>
 <52b07a3861a34fb0deb6251bae8bd885815c6944.1693311370.git.viresh.kumar@linaro.org>
 <fb79fa9a-e91c-4bb7-8aee-c384b99df953@suse.com>
 <20231005063231.vqwhfnlc64phwmto@vireshk-i7>
 <877cnwqg27.fsf@linaro.org>
MIME-Version: 1.0
Content-Type: text/plain; charset=iso-8859-1
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <877cnwqg27.fsf@linaro.org>

On 09-10-23, 10:40, Alex Benne wrote:
> I thought generally sync points act as full barriers. Doing a bunch of
> grepping I think ends at:
> 
>   static __always_inline bool __mutex_unlock_fast(struct mutex *lock)
>   {
>           unsigned long curr = (unsigned long)current;
> 
>           return atomic_long_try_cmpxchg_release(&lock->owner, &curr, 0UL);
>   }
> 
> so you should already have completed your writes by that point.

I am not sure if depending on such indirect mechanisms to implement
barriers for you is a good idea.

The situation here probably requires explicit barriers to make sure it
doesn't break in future ?

-- 
viresh


From xen-devel-bounces@lists.xenproject.org Mon Oct 09 10:58:32 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 09 Oct 2023 10:58:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614272.955278 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qpnxz-0008B7-W4; Mon, 09 Oct 2023 10:58:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614272.955278; Mon, 09 Oct 2023 10: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 1qpnxz-0008B0-TD; Mon, 09 Oct 2023 10:58:27 +0000
Received: by outflank-mailman (input) for mailman id 614272;
 Mon, 09 Oct 2023 10: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=9pMo=FX=suse.com=jgross@srs-se1.protection.inumbo.net>)
 id 1qpnxy-0008Au-Ty
 for xen-devel@lists.xenproject.org; Mon, 09 Oct 2023 10:58:26 +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 c54936e4-6692-11ee-98d3-6d05b1d4d9a1;
 Mon, 09 Oct 2023 12:58:25 +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 238431F381;
 Mon,  9 Oct 2023 10:58: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 BBC3413586;
 Mon,  9 Oct 2023 10:58:24 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap2.suse-dmz.suse.de with ESMTPSA id 2/lgLNDcI2VyEQAAMHmgww
 (envelope-from <jgross@suse.com>); Mon, 09 Oct 2023 10: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: c54936e4-6692-11ee-98d3-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1696849105; 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=0LpeFg5qdNhR6njp6vWcfUTyyl+iwBCi6mM0cYcHF9E=;
	b=hJvYZPIPkZ49EueoaTRpSuy9InoSytVGT0Dbm87FVjX414WFeGCglEh/T7YX3JGgBcSgby
	KTKgcHY85bxhfxZKwKfLQmrZ/Y0giMj4J86rtkSG4H/Do7wz8R5E2WRfuJbugYaZWnTJi3
	QJjh36Mqw8hza5ChW7JQsq1GcFL52vg=
Message-ID: <6d313c8a-0d3e-40bd-a3f4-86b2ebc5f59a@suse.com>
Date: Mon, 9 Oct 2023 12:58:24 +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>,
 =?UTF-8?Q?Alex_Benn=C3=A9e?= <alex.bennee@linaro.org>
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>,
 Vincent Guittot <vincent.guittot@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>
 <fb79fa9a-e91c-4bb7-8aee-c384b99df953@suse.com>
 <20231005063231.vqwhfnlc64phwmto@vireshk-i7> <877cnwqg27.fsf@linaro.org>
 <20231009105320.scljokj4ies2s5r4@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: <20231009105320.scljokj4ies2s5r4@vireshk-i7>
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature";
 boundary="------------U0fZzxddxBSnthky09kux01h"

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--------------U0fZzxddxBSnthky09kux01h
Content-Type: multipart/mixed; boundary="------------1aZETfJVPaezyYzr2oAWnWDg";
 protected-headers="v1"
From: Juergen Gross <jgross@suse.com>
To: Viresh Kumar <viresh.kumar@linaro.org>,
 =?UTF-8?Q?Alex_Benn=C3=A9e?= <alex.bennee@linaro.org>
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>,
 Vincent Guittot <vincent.guittot@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: <6d313c8a-0d3e-40bd-a3f4-86b2ebc5f59a@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>
 <fb79fa9a-e91c-4bb7-8aee-c384b99df953@suse.com>
 <20231005063231.vqwhfnlc64phwmto@vireshk-i7> <877cnwqg27.fsf@linaro.org>
 <20231009105320.scljokj4ies2s5r4@vireshk-i7>
In-Reply-To: <20231009105320.scljokj4ies2s5r4@vireshk-i7>

--------------1aZETfJVPaezyYzr2oAWnWDg
Content-Type: multipart/mixed; boundary="------------7qX3HgG4RNjh2gbwtFme0Med"

--------------7qX3HgG4RNjh2gbwtFme0Med
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: base64

T24gMDkuMTAuMjMgMTI6NTMsIFZpcmVzaCBLdW1hciB3cm90ZToNCj4gT24gMDktMTAtMjMs
IDEwOjQwLCBBbGV4IEJlbm7DqWUgd3JvdGU6DQo+PiBJIHRob3VnaHQgZ2VuZXJhbGx5IHN5
bmMgcG9pbnRzIGFjdCBhcyBmdWxsIGJhcnJpZXJzLiBEb2luZyBhIGJ1bmNoIG9mDQo+PiBn
cmVwcGluZyBJIHRoaW5rIGVuZHMgYXQ6DQo+Pg0KPj4gICAgc3RhdGljIF9fYWx3YXlzX2lu
bGluZSBib29sIF9fbXV0ZXhfdW5sb2NrX2Zhc3Qoc3RydWN0IG11dGV4ICpsb2NrKQ0KPj4g
ICAgew0KPj4gICAgICAgICAgICB1bnNpZ25lZCBsb25nIGN1cnIgPSAodW5zaWduZWQgbG9u
ZyljdXJyZW50Ow0KPj4NCj4+ICAgICAgICAgICAgcmV0dXJuIGF0b21pY19sb25nX3RyeV9j
bXB4Y2hnX3JlbGVhc2UoJmxvY2stPm93bmVyLCAmY3VyciwgMFVMKTsNCj4+ICAgIH0NCj4+
DQo+PiBzbyB5b3Ugc2hvdWxkIGFscmVhZHkgaGF2ZSBjb21wbGV0ZWQgeW91ciB3cml0ZXMg
YnkgdGhhdCBwb2ludC4NCj4gDQo+IEkgYW0gbm90IHN1cmUgaWYgZGVwZW5kaW5nIG9uIHN1
Y2ggaW5kaXJlY3QgbWVjaGFuaXNtcyB0byBpbXBsZW1lbnQNCj4gYmFycmllcnMgZm9yIHlv
dSBpcyBhIGdvb2QgaWRlYS4NCj4gDQo+IFRoZSBzaXR1YXRpb24gaGVyZSBwcm9iYWJseSBy
ZXF1aXJlcyBleHBsaWNpdCBiYXJyaWVycyB0byBtYWtlIHN1cmUgaXQNCj4gZG9lc24ndCBi
cmVhayBpbiBmdXR1cmUgPw0KPiANCg0KRGVwZW5kaW5nIG9uIGxvY2sgaW1wbGVtZW50YXRp
b25zIHRvIGluY2x1ZGUgdGhlIG5lZWRlZCBiYXJyaWVycyBpcyBmaW5lIElNTy4NCg0KVGhh
dCBpcyBvbmUgY2VudHJhbCBvYmplY3RpdmUgbG9ja3MgbXVzdCBlbnN1cmU6IHRvIG1ha2Ug
c3VyZSBhbnkgdXBkYXRlcyBpbg0KYSBsb2NrZWQgcmVnaW9uIGFyZSBvcGVyYXRpbmcgb24g
Y29uc2lzdGVudCBkYXRhIGFuZCBiZWluZyBvYnNlcnZhYmxlIGJ5DQpvdGhlcnMgYWZ0ZXIg
bGVhdmluZyB0aGUgbG9ja2VkIHJlZ2lvbi4NCg0KDQpKdWVyZ2VuDQo=
--------------7qX3HgG4RNjh2gbwtFme0Med
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-----

--------------7qX3HgG4RNjh2gbwtFme0Med--

--------------1aZETfJVPaezyYzr2oAWnWDg--

--------------U0fZzxddxBSnthky09kux01h
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/Ey8FAmUj3NAFAwAAAAAACgkQsN6d1ii/Ey/k
OwgAixnl88TPF9G0jsL9/22s0hp2GY2U5FtVHooTnzn3DyUe4XEpgze6j79hvRpXtDkOnFJPDzQk
QVnfQoQAjKZAVpc7ktBN09E0Hy/ATni9wZs/T0Ntii8X7BZvBfdxZQUVF42eksEkzEXOv/+NG6Y6
06uBr3HRqkA0phaKxibDTjmn86LpwsMFmnw6eYN2bO9izKcfU5e9aNszpXx+i8giZMXZToGq3bTI
BVIU2ehNd8k8YLzBojvdXnNpGWx7as/Ypt5Ez9J4/E0STFppIqVHs/SxD1rUb6JoVJK/Dfw9B8EO
ZmMk3yOHbLfgt1EgRAXA/ie/lXAA0N6FWQcKGY9RsQ==
=bjRL
-----END PGP SIGNATURE-----

--------------U0fZzxddxBSnthky09kux01h--


From xen-devel-bounces@lists.xenproject.org Mon Oct 09 11:08:29 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 09 Oct 2023 11:08:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614278.955306 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qpo7b-00021O-7r; Mon, 09 Oct 2023 11:08:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614278.955306; Mon, 09 Oct 2023 11:08: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 1qpo7b-00021H-4Y; Mon, 09 Oct 2023 11:08:23 +0000
Received: by outflank-mailman (input) for mailman id 614278;
 Mon, 09 Oct 2023 11:08: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=uDuw=FX=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qpo7Z-0001bz-Rd
 for xen-devel@lists.xenproject.org; Mon, 09 Oct 2023 11:08:22 +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 2439d60b-6694-11ee-9b0d-b553b5be7939;
 Mon, 09 Oct 2023 13:08:15 +0200 (CEST)
Received: from DU2PR04CA0186.eurprd04.prod.outlook.com (2603:10a6:10:28d::11)
 by AS8PR08MB9315.eurprd08.prod.outlook.com (2603:10a6:20b:5a6::11)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.37; Mon, 9 Oct
 2023 11:08:09 +0000
Received: from DBAEUR03FT058.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:28d:cafe::53) 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.6863.36 via Frontend
 Transport; Mon, 9 Oct 2023 11:08:09 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DBAEUR03FT058.mail.protection.outlook.com (100.127.142.120) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6886.20 via Frontend Transport; Mon, 9 Oct 2023 11:08:09 +0000
Received: ("Tessian outbound ab4fc72d2cd4:v211");
 Mon, 09 Oct 2023 11:08:09 +0000
Received: from 0fbd0d27e95d.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 058A6830-EA77-4969-A167-86CDD1795D7E.1; 
 Mon, 09 Oct 2023 11:08:02 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 0fbd0d27e95d.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Mon, 09 Oct 2023 11:08:01 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by AS8PR08MB5880.eurprd08.prod.outlook.com (2603:10a6:20b:29f::18)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.43; Mon, 9 Oct
 2023 11:07:59 +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.040; Mon, 9 Oct 2023
 11:07: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: 2439d60b-6694-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=AQjVMLTgpgEjfR+3QKUYBrpAoeQvuFaOKnEnX2XQAqE=;
 b=s6/L4yk2LMwboj9tkc5pgy1asykk6klUEap8u1qyBaabEDmcgwq6LSEmNBHw+sHfboaF2lEUbwmg42KGQSEST881ormWv51E8QxAGapEjYfdMRIL/vXbX3sUakU40K7+CRUtpFelrqn0SNoUKXLhi+BwLFj40VPw2GbQ6jTLd2k=
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: 645b25b299766c37
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=SKVJMmjMAFDXuW3Hem/Id5Jin4Lto2pWMBeT19wTPjfg7asTDvf959OcpOoDzfW66ARJCs/KZu3iofwlP6owTUvl+gQWGn2Sj67nKIa/lKiQpZdrKVUdgZ73yRi3CuCBVACvP73txQZtdwpT3OtG7KvioLox1Gy15mv2pKZnCr8CHcBZOJtycL085+8xxe0iCZx9GbjSknH3tpo9Je9Z4DeP/8QPTAJSSHxfgIFNlUbr/ikjxzb+CmWk5696s3AMkJnQBDxJVqMgAKvUdrgMo0qAv/0I6Ok516MWxgumrF80GLHcJw7Dnid3G1KIJX2mBP8H5ewkubeKbC1B60mhEQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=AQjVMLTgpgEjfR+3QKUYBrpAoeQvuFaOKnEnX2XQAqE=;
 b=V/mf8371Yp/k6JEbbOHW4BcK2OQzfl2H3kNzFsrOthSK6mSLEoqxaqSW0+aVxxB6KnyhVgWRIAZH4UUvbJ4zncOPh6t6ZvaRmUMb8YWodLPYI04OIaxW2+4HryUbfjSseDibq5+2mq866pTfPdus5c5dnPWpRM6yysAtImRTXUPYgsyqmgn1JFpBSFvEzezyaFd69Z9xICZPoOzQWTJaRwbPIwv+HcgMx4uohRS4EX44cIqchsbUTS5XRNVw/WLTWFM7a1oQ8bykk7ZcAMaj/seBXXSZvoy9HwEW2QZU+9nUEMLDmFbBZehABPfnShxIKiB/fTOTL82GrAPYg4uJfQ==
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=AQjVMLTgpgEjfR+3QKUYBrpAoeQvuFaOKnEnX2XQAqE=;
 b=s6/L4yk2LMwboj9tkc5pgy1asykk6klUEap8u1qyBaabEDmcgwq6LSEmNBHw+sHfboaF2lEUbwmg42KGQSEST881ormWv51E8QxAGapEjYfdMRIL/vXbX3sUakU40K7+CRUtpFelrqn0SNoUKXLhi+BwLFj40VPw2GbQ6jTLd2k=
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 rc2
Thread-Topic: Xen 4.18 rc2
Thread-Index: AQHZ+qDd85bVXHDsNkeZSKfv1VMiPg==
Date: Mon, 9 Oct 2023 11:07:59 +0000
Message-ID: <77CD1005-B3AB-44B3-B747-49D6A6208D95@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_|AS8PR08MB5880:EE_|DBAEUR03FT058:EE_|AS8PR08MB9315:EE_
X-MS-Office365-Filtering-Correlation-Id: 5b79d79e-0b07-44f2-5f40-08dbc8b80564
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:
 Vex6+V0+YQ1jMyB34wBPW+u8VB64lfD5r+H+Fww89GM13PQ5b9urg59zEXX/jtbO+7oyYsaGyUqGLcBAla3rMr19RzLPGpJSATPe2RkJjtrQrukaZ2fyox352YYAUM8zV7u6B/j4ryylpUm2Iop+UVPlRFH5HBBTpLyPBbc8Hp6kWn/leC8NmScHzfTVr1N06BXUcNVpFDYiNCCTxxJ6xqHiVG6trj85ozYAuQ7SoVuQ6ErA8i0jfGLc4vRSW9cTRO/UOYCckEjt4Qyew8LmqUIQwtBKkkMK/lvgV8ohmhSgtrODGXclJDfFpN8Es4hky8RRiGP1899Km25ZP9aOv9ZKF5nITYRg9DFmUSAXT/e3Nk+mF/uOYEpmm4/aKauy/EHF+77IkZ8o0yJnvObXTRyMt7ct1WopemZw7VLWL8xHLTvW5zfk6zGoioeaKZeNe5QWCBMxMQGltn1CuIb1Yy8Je6sD7gbjsxokdeherbxy/QYV6Y140rMFPO/c/qnlsq8uD+daWZTebTXVLYV5EWLJLXcX0QQGcpaoEuarSTmcAJZyXHuc8H90svK7nnMcFsvfZlhMtcDlHmAk96FprORt44fNPX5ktcd4zLcqRWtTa76leLQlIL5WS3EWzXrh
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)(376002)(39860400002)(346002)(230922051799003)(64100799003)(451199024)(186009)(1800799009)(91956017)(76116006)(66556008)(66446008)(66946007)(66476007)(966005)(64756008)(316002)(110136005)(6512007)(2616005)(26005)(71200400001)(4744005)(83380400001)(2906002)(41300700001)(7116003)(4326008)(6486002)(6506007)(5660300002)(8676002)(8936002)(478600001)(38070700005)(38100700002)(122000001)(36756003)(86362001)(33656002)(45980500001);DIR:OUT;SFP:1101;
Content-Type: multipart/alternative;
	boundary="_000_77CD1005B3AB44B3B74749D6A6208D95armcom_"
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB5880
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:
 DBAEUR03FT058.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	5626b6bf-7080-443a-3946-08dbc8b7ffb7
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	A8lGEc1A85vvPRn7skqN+T5yyWAnEltui0Mda3afnoBA+hk566xoCUrbAxi0XgFn/pJCsoyA4kRS9X4c50v5kCQprVPIXzs8AHBSQScOk0UHR2kS9LN/N9IGwzw+FKwgdeH0FDvoGGHX+UV6OAS5V0kzsXZX5ceJ1Xevi5eKosfV1WHyAhTKEAZZT1oXLU0wuVpfKuX5QvPyko7zeBK9PxET81VCaTDG9meBujBAP1M2TnRrkfjPrZEPjjsxSS856M9FJOWFnvIh3wJ0b+jFbIQpccepaGblACZJfKFG4nGLXHTzWl3qTBe347ZwHZwyLQvgbRAJE8QpCald5grXc4X8PlOARM2roMxGCYTRjZuJVZzgAX7UQPngxBX8XZaMfWm3vz0cP6cpMYId45CfDB1o16ZlSxCbTP6QmhkEEeIjMb3OK+WEMhuwCTzWLIB9Ir/1YqXxRb+qucXrjkAVPoaLZsKzgwuTRvR5f49UoGxU/lQ8OKt7nTNmcRugmRbK6xPKk2VOYSFW5EZ1jM2/JyIes1RSpmAqRX6CClYRGUoxMOT/z9FT3y2eaR0yJfdHQj6r/hQigW6nFPdbpuv3wvcut51ohNxcT2UDTbyto4pxrH3y5ZqUBHFdgf82A97zs4e6ep2I/g6G8kf8Ur/ULCtenobWUzWxXdbRGgwYyEf5LqVSE12auNZfYYgI1kiCek0CVxebGYJHN8DNH5RXjov5ltSEwbKIcXr2YO/W3Bg=
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)(82310400011)(186009)(451199024)(1800799009)(64100799003)(46966006)(36840700001)(40470700004)(6512007)(6506007)(2616005)(478600001)(966005)(6486002)(45080400002)(41300700001)(336012)(47076005)(26005)(83380400001)(2906002)(5660300002)(110136005)(70586007)(70206006)(4326008)(8676002)(7116003)(316002)(450100002)(8936002)(40460700003)(82740400003)(36860700001)(356005)(33656002)(36756003)(40480700001)(81166007)(86362001);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Oct 2023 11:08:09.2902
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 5b79d79e-0b07-44f2-5f40-08dbc8b80564
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:
	DBAEUR03FT058.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB9315

--_000_77CD1005B3AB44B3B74749D6A6208D95armcom_
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

Hi all,

Xen 4.18 rc2 is tagged. You can check that out from xen.git:

git://xenbits.xen.org/xen.git 4.18.0-rc2

For your convenience there is also a tarball at:
https://downloads.xenproject.org/release/xen/4.18.0-rc2/xen-4.18.0-rc2.tar.=
gz

And the signature is at:
https://downloads.xenproject.org/release/xen/4.18.0-rc2/xen-4.18.0-rc2.tar.=
gz.sig

Please send bug reports and test reports to xen-devel@lists.xenproject.org.
When sending bug reports, please CC relevant maintainers and me
(Henry.Wang@arm.com).

Kind regards,
Henry

--_000_77CD1005B3AB44B3B74749D6A6208D95armcom_
Content-Type: text/html; charset="us-ascii"
Content-ID: <6551E3874FB8E0418DBFFCAD948E6FA6@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable

<html>
<head>
<meta http-equiv=3D"Content-Type" content=3D"text/html; charset=3Dus-ascii"=
>
</head>
<body style=3D"overflow-wrap: break-word; -webkit-nbsp-mode: space; line-br=
eak: after-white-space;">
<meta name=3D"ProgId" content=3D"Word.Document">
<meta name=3D"Generator" content=3D"Microsoft Word 15">
<meta name=3D"Originator" content=3D"Microsoft Word 15">
<link rel=3D"File-List" href=3D"cid:filelist.xml@01D9FAE3.2FD79CC0"><!--[if=
 gte mso 9]><xml>
<o:OfficeDocumentSettings>
<o:AllowPNG/>
</o:OfficeDocumentSettings>
</xml><![endif]--><!--[if gte mso 9]><xml>
<w:WordDocument>
<w:SpellingState>Clean</w:SpellingState>
<w:GrammarState>Clean</w:GrammarState>
<w:DocumentKind>DocumentEmail</w:DocumentKind>
<w:TrackMoves/>
<w:TrackFormatting/>
<w:EnvelopeVis/>
<w:ValidateAgainstSchemas/>
<w:SaveIfXMLInvalid>false</w:SaveIfXMLInvalid>
<w:IgnoreMixedContent>false</w:IgnoreMixedContent>
<w:AlwaysShowPlaceholderText>false</w:AlwaysShowPlaceholderText>
<w:DoNotPromoteQF/>
<w:LidThemeOther>en-CN</w:LidThemeOther>
<w:LidThemeAsian>ZH-CN</w:LidThemeAsian>
<w:LidThemeComplexScript>X-NONE</w:LidThemeComplexScript>
<w:Compatibility>
<w:DoNotExpandShiftReturn/>
<w:BreakWrappedTables/>
<w:SplitPgBreakAndParaMark/>
<w:EnableOpenTypeKerning/>
<w:UseFELayout/>
</w:Compatibility>
<m:mathPr>
<m:mathFont m:val=3D"Cambria Math"/>
<m:brkBin m:val=3D"before"/>
<m:brkBinSub m:val=3D"&#45;-"/>
<m:smallFrac m:val=3D"off"/>
<m:dispDef/>
<m:lMargin m:val=3D"0"/>
<m:rMargin m:val=3D"0"/>
<m:defJc m:val=3D"centerGroup"/>
<m:wrapIndent m:val=3D"1440"/>
<m:intLim m:val=3D"subSup"/>
<m:naryLim m:val=3D"undOvr"/>
</m:mathPr></w:WordDocument>
</xml><![endif]--><!--[if gte mso 9]><xml>
<w:LatentStyles DefLockedState=3D"false" DefUnhideWhenUsed=3D"false" DefSem=
iHidden=3D"false" DefQFormat=3D"false" DefPriority=3D"99" LatentStyleCount=
=3D"376">
<w:LsdException Locked=3D"false" Priority=3D"0" QFormat=3D"true" Name=3D"No=
rmal"/>
<w:LsdException Locked=3D"false" Priority=3D"9" QFormat=3D"true" Name=3D"he=
ading 1"/>
<w:LsdException Locked=3D"false" Priority=3D"9" SemiHidden=3D"true" UnhideW=
henUsed=3D"true" QFormat=3D"true" Name=3D"heading 2"/>
<w:LsdException Locked=3D"false" Priority=3D"9" SemiHidden=3D"true" UnhideW=
henUsed=3D"true" QFormat=3D"true" Name=3D"heading 3"/>
<w:LsdException Locked=3D"false" Priority=3D"9" SemiHidden=3D"true" UnhideW=
henUsed=3D"true" QFormat=3D"true" Name=3D"heading 4"/>
<w:LsdException Locked=3D"false" Priority=3D"9" SemiHidden=3D"true" UnhideW=
henUsed=3D"true" QFormat=3D"true" Name=3D"heading 5"/>
<w:LsdException Locked=3D"false" Priority=3D"9" SemiHidden=3D"true" UnhideW=
henUsed=3D"true" QFormat=3D"true" Name=3D"heading 6"/>
<w:LsdException Locked=3D"false" Priority=3D"9" SemiHidden=3D"true" UnhideW=
henUsed=3D"true" QFormat=3D"true" Name=3D"heading 7"/>
<w:LsdException Locked=3D"false" Priority=3D"9" SemiHidden=3D"true" UnhideW=
henUsed=3D"true" QFormat=3D"true" Name=3D"heading 8"/>
<w:LsdException Locked=3D"false" Priority=3D"9" SemiHidden=3D"true" UnhideW=
henUsed=3D"true" QFormat=3D"true" Name=3D"heading 9"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"index 1"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"index 2"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"index 3"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"index 4"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"index 5"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"index 6"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"index 7"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"index 8"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"index 9"/>
<w:LsdException Locked=3D"false" Priority=3D"39" SemiHidden=3D"true" Unhide=
WhenUsed=3D"true" Name=3D"toc 1"/>
<w:LsdException Locked=3D"false" Priority=3D"39" SemiHidden=3D"true" Unhide=
WhenUsed=3D"true" Name=3D"toc 2"/>
<w:LsdException Locked=3D"false" Priority=3D"39" SemiHidden=3D"true" Unhide=
WhenUsed=3D"true" Name=3D"toc 3"/>
<w:LsdException Locked=3D"false" Priority=3D"39" SemiHidden=3D"true" Unhide=
WhenUsed=3D"true" Name=3D"toc 4"/>
<w:LsdException Locked=3D"false" Priority=3D"39" SemiHidden=3D"true" Unhide=
WhenUsed=3D"true" Name=3D"toc 5"/>
<w:LsdException Locked=3D"false" Priority=3D"39" SemiHidden=3D"true" Unhide=
WhenUsed=3D"true" Name=3D"toc 6"/>
<w:LsdException Locked=3D"false" Priority=3D"39" SemiHidden=3D"true" Unhide=
WhenUsed=3D"true" Name=3D"toc 7"/>
<w:LsdException Locked=3D"false" Priority=3D"39" SemiHidden=3D"true" Unhide=
WhenUsed=3D"true" Name=3D"toc 8"/>
<w:LsdException Locked=3D"false" Priority=3D"39" SemiHidden=3D"true" Unhide=
WhenUsed=3D"true" Name=3D"toc 9"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"Normal Indent"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"footnote text"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"annotation text"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"header"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"footer"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"index heading"/>
<w:LsdException Locked=3D"false" Priority=3D"35" SemiHidden=3D"true" Unhide=
WhenUsed=3D"true" QFormat=3D"true" Name=3D"caption"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"table of figures"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"envelope address"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"envelope return"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"footnote reference"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"annotation reference"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"line number"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"page number"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"endnote reference"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"endnote text"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"table of authorities"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"macro"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"toa heading"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"List"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"List Bullet"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"List Number"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"List 2"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"List 3"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"List 4"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"List 5"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"List Bullet 2"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"List Bullet 3"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"List Bullet 4"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"List Bullet 5"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"List Number 2"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"List Number 3"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"List Number 4"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"List Number 5"/>
<w:LsdException Locked=3D"false" Priority=3D"10" QFormat=3D"true" Name=3D"T=
itle"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"Closing"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"Signature"/>
<w:LsdException Locked=3D"false" Priority=3D"1" SemiHidden=3D"true" UnhideW=
henUsed=3D"true" Name=3D"Default Paragraph Font"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"Body Text"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"Body Text Indent"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"List Continue"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"List Continue 2"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"List Continue 3"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"List Continue 4"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"List Continue 5"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"Message Header"/>
<w:LsdException Locked=3D"false" Priority=3D"11" QFormat=3D"true" Name=3D"S=
ubtitle"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"Salutation"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"Date"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"Body Text First Indent"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"Body Text First Indent 2"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"Note Heading"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"Body Text 2"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"Body Text 3"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"Body Text Indent 2"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"Body Text Indent 3"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"Block Text"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"Hyperlink"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"FollowedHyperlink"/>
<w:LsdException Locked=3D"false" Priority=3D"22" QFormat=3D"true" Name=3D"S=
trong"/>
<w:LsdException Locked=3D"false" Priority=3D"20" QFormat=3D"true" Name=3D"E=
mphasis"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"Document Map"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"Plain Text"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"E-mail Signature"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"HTML Top of Form"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"HTML Bottom of Form"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"Normal (Web)"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"HTML Acronym"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"HTML Address"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"HTML Cite"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"HTML Code"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"HTML Definition"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"HTML Keyboard"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"HTML Preformatted"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"HTML Sample"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"HTML Typewriter"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"HTML Variable"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"Normal Table"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"annotation subject"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"No List"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"Outline List 1"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"Outline List 2"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"Outline List 3"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"Table Simple 1"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"Table Simple 2"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"Table Simple 3"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"Table Classic 1"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"Table Classic 2"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"Table Classic 3"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"Table Classic 4"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"Table Colorful 1"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"Table Colorful 2"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"Table Colorful 3"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"Table Columns 1"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"Table Columns 2"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"Table Columns 3"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"Table Columns 4"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"Table Columns 5"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"Table Grid 1"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"Table Grid 2"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"Table Grid 3"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"Table Grid 4"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"Table Grid 5"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"Table Grid 6"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"Table Grid 7"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"Table Grid 8"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"Table List 1"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"Table List 2"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"Table List 3"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"Table List 4"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"Table List 5"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"Table List 6"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"Table List 7"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"Table List 8"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"Table 3D effects 1"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"Table 3D effects 2"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"Table 3D effects 3"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"Table Contemporary"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"Table Elegant"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"Table Professional"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"Table Subtle 1"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"Table Subtle 2"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"Table Web 1"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"Table Web 2"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"Table Web 3"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"Balloon Text"/>
<w:LsdException Locked=3D"false" Priority=3D"39" Name=3D"Table Grid"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"Table Theme"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" Name=3D"Placeholder Te=
xt"/>
<w:LsdException Locked=3D"false" Priority=3D"1" QFormat=3D"true" Name=3D"No=
 Spacing"/>
<w:LsdException Locked=3D"false" Priority=3D"60" Name=3D"Light Shading"/>
<w:LsdException Locked=3D"false" Priority=3D"61" Name=3D"Light List"/>
<w:LsdException Locked=3D"false" Priority=3D"62" Name=3D"Light Grid"/>
<w:LsdException Locked=3D"false" Priority=3D"63" Name=3D"Medium Shading 1"/=
>
<w:LsdException Locked=3D"false" Priority=3D"64" Name=3D"Medium Shading 2"/=
>
<w:LsdException Locked=3D"false" Priority=3D"65" Name=3D"Medium List 1"/>
<w:LsdException Locked=3D"false" Priority=3D"66" Name=3D"Medium List 2"/>
<w:LsdException Locked=3D"false" Priority=3D"67" Name=3D"Medium Grid 1"/>
<w:LsdException Locked=3D"false" Priority=3D"68" Name=3D"Medium Grid 2"/>
<w:LsdException Locked=3D"false" Priority=3D"69" Name=3D"Medium Grid 3"/>
<w:LsdException Locked=3D"false" Priority=3D"70" Name=3D"Dark List"/>
<w:LsdException Locked=3D"false" Priority=3D"71" Name=3D"Colorful Shading"/=
>
<w:LsdException Locked=3D"false" Priority=3D"72" Name=3D"Colorful List"/>
<w:LsdException Locked=3D"false" Priority=3D"73" Name=3D"Colorful Grid"/>
<w:LsdException Locked=3D"false" Priority=3D"60" Name=3D"Light Shading Acce=
nt 1"/>
<w:LsdException Locked=3D"false" Priority=3D"61" Name=3D"Light List Accent =
1"/>
<w:LsdException Locked=3D"false" Priority=3D"62" Name=3D"Light Grid Accent =
1"/>
<w:LsdException Locked=3D"false" Priority=3D"63" Name=3D"Medium Shading 1 A=
ccent 1"/>
<w:LsdException Locked=3D"false" Priority=3D"64" Name=3D"Medium Shading 2 A=
ccent 1"/>
<w:LsdException Locked=3D"false" Priority=3D"65" Name=3D"Medium List 1 Acce=
nt 1"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" Name=3D"Revision"/>
<w:LsdException Locked=3D"false" Priority=3D"34" QFormat=3D"true" Name=3D"L=
ist Paragraph"/>
<w:LsdException Locked=3D"false" Priority=3D"29" QFormat=3D"true" Name=3D"Q=
uote"/>
<w:LsdException Locked=3D"false" Priority=3D"30" QFormat=3D"true" Name=3D"I=
ntense Quote"/>
<w:LsdException Locked=3D"false" Priority=3D"66" Name=3D"Medium List 2 Acce=
nt 1"/>
<w:LsdException Locked=3D"false" Priority=3D"67" Name=3D"Medium Grid 1 Acce=
nt 1"/>
<w:LsdException Locked=3D"false" Priority=3D"68" Name=3D"Medium Grid 2 Acce=
nt 1"/>
<w:LsdException Locked=3D"false" Priority=3D"69" Name=3D"Medium Grid 3 Acce=
nt 1"/>
<w:LsdException Locked=3D"false" Priority=3D"70" Name=3D"Dark List Accent 1=
"/>
<w:LsdException Locked=3D"false" Priority=3D"71" Name=3D"Colorful Shading A=
ccent 1"/>
<w:LsdException Locked=3D"false" Priority=3D"72" Name=3D"Colorful List Acce=
nt 1"/>
<w:LsdException Locked=3D"false" Priority=3D"73" Name=3D"Colorful Grid Acce=
nt 1"/>
<w:LsdException Locked=3D"false" Priority=3D"60" Name=3D"Light Shading Acce=
nt 2"/>
<w:LsdException Locked=3D"false" Priority=3D"61" Name=3D"Light List Accent =
2"/>
<w:LsdException Locked=3D"false" Priority=3D"62" Name=3D"Light Grid Accent =
2"/>
<w:LsdException Locked=3D"false" Priority=3D"63" Name=3D"Medium Shading 1 A=
ccent 2"/>
<w:LsdException Locked=3D"false" Priority=3D"64" Name=3D"Medium Shading 2 A=
ccent 2"/>
<w:LsdException Locked=3D"false" Priority=3D"65" Name=3D"Medium List 1 Acce=
nt 2"/>
<w:LsdException Locked=3D"false" Priority=3D"66" Name=3D"Medium List 2 Acce=
nt 2"/>
<w:LsdException Locked=3D"false" Priority=3D"67" Name=3D"Medium Grid 1 Acce=
nt 2"/>
<w:LsdException Locked=3D"false" Priority=3D"68" Name=3D"Medium Grid 2 Acce=
nt 2"/>
<w:LsdException Locked=3D"false" Priority=3D"69" Name=3D"Medium Grid 3 Acce=
nt 2"/>
<w:LsdException Locked=3D"false" Priority=3D"70" Name=3D"Dark List Accent 2=
"/>
<w:LsdException Locked=3D"false" Priority=3D"71" Name=3D"Colorful Shading A=
ccent 2"/>
<w:LsdException Locked=3D"false" Priority=3D"72" Name=3D"Colorful List Acce=
nt 2"/>
<w:LsdException Locked=3D"false" Priority=3D"73" Name=3D"Colorful Grid Acce=
nt 2"/>
<w:LsdException Locked=3D"false" Priority=3D"60" Name=3D"Light Shading Acce=
nt 3"/>
<w:LsdException Locked=3D"false" Priority=3D"61" Name=3D"Light List Accent =
3"/>
<w:LsdException Locked=3D"false" Priority=3D"62" Name=3D"Light Grid Accent =
3"/>
<w:LsdException Locked=3D"false" Priority=3D"63" Name=3D"Medium Shading 1 A=
ccent 3"/>
<w:LsdException Locked=3D"false" Priority=3D"64" Name=3D"Medium Shading 2 A=
ccent 3"/>
<w:LsdException Locked=3D"false" Priority=3D"65" Name=3D"Medium List 1 Acce=
nt 3"/>
<w:LsdException Locked=3D"false" Priority=3D"66" Name=3D"Medium List 2 Acce=
nt 3"/>
<w:LsdException Locked=3D"false" Priority=3D"67" Name=3D"Medium Grid 1 Acce=
nt 3"/>
<w:LsdException Locked=3D"false" Priority=3D"68" Name=3D"Medium Grid 2 Acce=
nt 3"/>
<w:LsdException Locked=3D"false" Priority=3D"69" Name=3D"Medium Grid 3 Acce=
nt 3"/>
<w:LsdException Locked=3D"false" Priority=3D"70" Name=3D"Dark List Accent 3=
"/>
<w:LsdException Locked=3D"false" Priority=3D"71" Name=3D"Colorful Shading A=
ccent 3"/>
<w:LsdException Locked=3D"false" Priority=3D"72" Name=3D"Colorful List Acce=
nt 3"/>
<w:LsdException Locked=3D"false" Priority=3D"73" Name=3D"Colorful Grid Acce=
nt 3"/>
<w:LsdException Locked=3D"false" Priority=3D"60" Name=3D"Light Shading Acce=
nt 4"/>
<w:LsdException Locked=3D"false" Priority=3D"61" Name=3D"Light List Accent =
4"/>
<w:LsdException Locked=3D"false" Priority=3D"62" Name=3D"Light Grid Accent =
4"/>
<w:LsdException Locked=3D"false" Priority=3D"63" Name=3D"Medium Shading 1 A=
ccent 4"/>
<w:LsdException Locked=3D"false" Priority=3D"64" Name=3D"Medium Shading 2 A=
ccent 4"/>
<w:LsdException Locked=3D"false" Priority=3D"65" Name=3D"Medium List 1 Acce=
nt 4"/>
<w:LsdException Locked=3D"false" Priority=3D"66" Name=3D"Medium List 2 Acce=
nt 4"/>
<w:LsdException Locked=3D"false" Priority=3D"67" Name=3D"Medium Grid 1 Acce=
nt 4"/>
<w:LsdException Locked=3D"false" Priority=3D"68" Name=3D"Medium Grid 2 Acce=
nt 4"/>
<w:LsdException Locked=3D"false" Priority=3D"69" Name=3D"Medium Grid 3 Acce=
nt 4"/>
<w:LsdException Locked=3D"false" Priority=3D"70" Name=3D"Dark List Accent 4=
"/>
<w:LsdException Locked=3D"false" Priority=3D"71" Name=3D"Colorful Shading A=
ccent 4"/>
<w:LsdException Locked=3D"false" Priority=3D"72" Name=3D"Colorful List Acce=
nt 4"/>
<w:LsdException Locked=3D"false" Priority=3D"73" Name=3D"Colorful Grid Acce=
nt 4"/>
<w:LsdException Locked=3D"false" Priority=3D"60" Name=3D"Light Shading Acce=
nt 5"/>
<w:LsdException Locked=3D"false" Priority=3D"61" Name=3D"Light List Accent =
5"/>
<w:LsdException Locked=3D"false" Priority=3D"62" Name=3D"Light Grid Accent =
5"/>
<w:LsdException Locked=3D"false" Priority=3D"63" Name=3D"Medium Shading 1 A=
ccent 5"/>
<w:LsdException Locked=3D"false" Priority=3D"64" Name=3D"Medium Shading 2 A=
ccent 5"/>
<w:LsdException Locked=3D"false" Priority=3D"65" Name=3D"Medium List 1 Acce=
nt 5"/>
<w:LsdException Locked=3D"false" Priority=3D"66" Name=3D"Medium List 2 Acce=
nt 5"/>
<w:LsdException Locked=3D"false" Priority=3D"67" Name=3D"Medium Grid 1 Acce=
nt 5"/>
<w:LsdException Locked=3D"false" Priority=3D"68" Name=3D"Medium Grid 2 Acce=
nt 5"/>
<w:LsdException Locked=3D"false" Priority=3D"69" Name=3D"Medium Grid 3 Acce=
nt 5"/>
<w:LsdException Locked=3D"false" Priority=3D"70" Name=3D"Dark List Accent 5=
"/>
<w:LsdException Locked=3D"false" Priority=3D"71" Name=3D"Colorful Shading A=
ccent 5"/>
<w:LsdException Locked=3D"false" Priority=3D"72" Name=3D"Colorful List Acce=
nt 5"/>
<w:LsdException Locked=3D"false" Priority=3D"73" Name=3D"Colorful Grid Acce=
nt 5"/>
<w:LsdException Locked=3D"false" Priority=3D"60" Name=3D"Light Shading Acce=
nt 6"/>
<w:LsdException Locked=3D"false" Priority=3D"61" Name=3D"Light List Accent =
6"/>
<w:LsdException Locked=3D"false" Priority=3D"62" Name=3D"Light Grid Accent =
6"/>
<w:LsdException Locked=3D"false" Priority=3D"63" Name=3D"Medium Shading 1 A=
ccent 6"/>
<w:LsdException Locked=3D"false" Priority=3D"64" Name=3D"Medium Shading 2 A=
ccent 6"/>
<w:LsdException Locked=3D"false" Priority=3D"65" Name=3D"Medium List 1 Acce=
nt 6"/>
<w:LsdException Locked=3D"false" Priority=3D"66" Name=3D"Medium List 2 Acce=
nt 6"/>
<w:LsdException Locked=3D"false" Priority=3D"67" Name=3D"Medium Grid 1 Acce=
nt 6"/>
<w:LsdException Locked=3D"false" Priority=3D"68" Name=3D"Medium Grid 2 Acce=
nt 6"/>
<w:LsdException Locked=3D"false" Priority=3D"69" Name=3D"Medium Grid 3 Acce=
nt 6"/>
<w:LsdException Locked=3D"false" Priority=3D"70" Name=3D"Dark List Accent 6=
"/>
<w:LsdException Locked=3D"false" Priority=3D"71" Name=3D"Colorful Shading A=
ccent 6"/>
<w:LsdException Locked=3D"false" Priority=3D"72" Name=3D"Colorful List Acce=
nt 6"/>
<w:LsdException Locked=3D"false" Priority=3D"73" Name=3D"Colorful Grid Acce=
nt 6"/>
<w:LsdException Locked=3D"false" Priority=3D"19" QFormat=3D"true" Name=3D"S=
ubtle Emphasis"/>
<w:LsdException Locked=3D"false" Priority=3D"21" QFormat=3D"true" Name=3D"I=
ntense Emphasis"/>
<w:LsdException Locked=3D"false" Priority=3D"31" QFormat=3D"true" Name=3D"S=
ubtle Reference"/>
<w:LsdException Locked=3D"false" Priority=3D"32" QFormat=3D"true" Name=3D"I=
ntense Reference"/>
<w:LsdException Locked=3D"false" Priority=3D"33" QFormat=3D"true" Name=3D"B=
ook Title"/>
<w:LsdException Locked=3D"false" Priority=3D"37" SemiHidden=3D"true" Unhide=
WhenUsed=3D"true" Name=3D"Bibliography"/>
<w:LsdException Locked=3D"false" Priority=3D"39" SemiHidden=3D"true" Unhide=
WhenUsed=3D"true" QFormat=3D"true" Name=3D"TOC Heading"/>
<w:LsdException Locked=3D"false" Priority=3D"41" Name=3D"Plain Table 1"/>
<w:LsdException Locked=3D"false" Priority=3D"42" Name=3D"Plain Table 2"/>
<w:LsdException Locked=3D"false" Priority=3D"43" Name=3D"Plain Table 3"/>
<w:LsdException Locked=3D"false" Priority=3D"44" Name=3D"Plain Table 4"/>
<w:LsdException Locked=3D"false" Priority=3D"45" Name=3D"Plain Table 5"/>
<w:LsdException Locked=3D"false" Priority=3D"40" Name=3D"Grid Table Light"/=
>
<w:LsdException Locked=3D"false" Priority=3D"46" Name=3D"Grid Table 1 Light=
"/>
<w:LsdException Locked=3D"false" Priority=3D"47" Name=3D"Grid Table 2"/>
<w:LsdException Locked=3D"false" Priority=3D"48" Name=3D"Grid Table 3"/>
<w:LsdException Locked=3D"false" Priority=3D"49" Name=3D"Grid Table 4"/>
<w:LsdException Locked=3D"false" Priority=3D"50" Name=3D"Grid Table 5 Dark"=
/>
<w:LsdException Locked=3D"false" Priority=3D"51" Name=3D"Grid Table 6 Color=
ful"/>
<w:LsdException Locked=3D"false" Priority=3D"52" Name=3D"Grid Table 7 Color=
ful"/>
<w:LsdException Locked=3D"false" Priority=3D"46" Name=3D"Grid Table 1 Light=
 Accent 1"/>
<w:LsdException Locked=3D"false" Priority=3D"47" Name=3D"Grid Table 2 Accen=
t 1"/>
<w:LsdException Locked=3D"false" Priority=3D"48" Name=3D"Grid Table 3 Accen=
t 1"/>
<w:LsdException Locked=3D"false" Priority=3D"49" Name=3D"Grid Table 4 Accen=
t 1"/>
<w:LsdException Locked=3D"false" Priority=3D"50" Name=3D"Grid Table 5 Dark =
Accent 1"/>
<w:LsdException Locked=3D"false" Priority=3D"51" Name=3D"Grid Table 6 Color=
ful Accent 1"/>
<w:LsdException Locked=3D"false" Priority=3D"52" Name=3D"Grid Table 7 Color=
ful Accent 1"/>
<w:LsdException Locked=3D"false" Priority=3D"46" Name=3D"Grid Table 1 Light=
 Accent 2"/>
<w:LsdException Locked=3D"false" Priority=3D"47" Name=3D"Grid Table 2 Accen=
t 2"/>
<w:LsdException Locked=3D"false" Priority=3D"48" Name=3D"Grid Table 3 Accen=
t 2"/>
<w:LsdException Locked=3D"false" Priority=3D"49" Name=3D"Grid Table 4 Accen=
t 2"/>
<w:LsdException Locked=3D"false" Priority=3D"50" Name=3D"Grid Table 5 Dark =
Accent 2"/>
<w:LsdException Locked=3D"false" Priority=3D"51" Name=3D"Grid Table 6 Color=
ful Accent 2"/>
<w:LsdException Locked=3D"false" Priority=3D"52" Name=3D"Grid Table 7 Color=
ful Accent 2"/>
<w:LsdException Locked=3D"false" Priority=3D"46" Name=3D"Grid Table 1 Light=
 Accent 3"/>
<w:LsdException Locked=3D"false" Priority=3D"47" Name=3D"Grid Table 2 Accen=
t 3"/>
<w:LsdException Locked=3D"false" Priority=3D"48" Name=3D"Grid Table 3 Accen=
t 3"/>
<w:LsdException Locked=3D"false" Priority=3D"49" Name=3D"Grid Table 4 Accen=
t 3"/>
<w:LsdException Locked=3D"false" Priority=3D"50" Name=3D"Grid Table 5 Dark =
Accent 3"/>
<w:LsdException Locked=3D"false" Priority=3D"51" Name=3D"Grid Table 6 Color=
ful Accent 3"/>
<w:LsdException Locked=3D"false" Priority=3D"52" Name=3D"Grid Table 7 Color=
ful Accent 3"/>
<w:LsdException Locked=3D"false" Priority=3D"46" Name=3D"Grid Table 1 Light=
 Accent 4"/>
<w:LsdException Locked=3D"false" Priority=3D"47" Name=3D"Grid Table 2 Accen=
t 4"/>
<w:LsdException Locked=3D"false" Priority=3D"48" Name=3D"Grid Table 3 Accen=
t 4"/>
<w:LsdException Locked=3D"false" Priority=3D"49" Name=3D"Grid Table 4 Accen=
t 4"/>
<w:LsdException Locked=3D"false" Priority=3D"50" Name=3D"Grid Table 5 Dark =
Accent 4"/>
<w:LsdException Locked=3D"false" Priority=3D"51" Name=3D"Grid Table 6 Color=
ful Accent 4"/>
<w:LsdException Locked=3D"false" Priority=3D"52" Name=3D"Grid Table 7 Color=
ful Accent 4"/>
<w:LsdException Locked=3D"false" Priority=3D"46" Name=3D"Grid Table 1 Light=
 Accent 5"/>
<w:LsdException Locked=3D"false" Priority=3D"47" Name=3D"Grid Table 2 Accen=
t 5"/>
<w:LsdException Locked=3D"false" Priority=3D"48" Name=3D"Grid Table 3 Accen=
t 5"/>
<w:LsdException Locked=3D"false" Priority=3D"49" Name=3D"Grid Table 4 Accen=
t 5"/>
<w:LsdException Locked=3D"false" Priority=3D"50" Name=3D"Grid Table 5 Dark =
Accent 5"/>
<w:LsdException Locked=3D"false" Priority=3D"51" Name=3D"Grid Table 6 Color=
ful Accent 5"/>
<w:LsdException Locked=3D"false" Priority=3D"52" Name=3D"Grid Table 7 Color=
ful Accent 5"/>
<w:LsdException Locked=3D"false" Priority=3D"46" Name=3D"Grid Table 1 Light=
 Accent 6"/>
<w:LsdException Locked=3D"false" Priority=3D"47" Name=3D"Grid Table 2 Accen=
t 6"/>
<w:LsdException Locked=3D"false" Priority=3D"48" Name=3D"Grid Table 3 Accen=
t 6"/>
<w:LsdException Locked=3D"false" Priority=3D"49" Name=3D"Grid Table 4 Accen=
t 6"/>
<w:LsdException Locked=3D"false" Priority=3D"50" Name=3D"Grid Table 5 Dark =
Accent 6"/>
<w:LsdException Locked=3D"false" Priority=3D"51" Name=3D"Grid Table 6 Color=
ful Accent 6"/>
<w:LsdException Locked=3D"false" Priority=3D"52" Name=3D"Grid Table 7 Color=
ful Accent 6"/>
<w:LsdException Locked=3D"false" Priority=3D"46" Name=3D"List Table 1 Light=
"/>
<w:LsdException Locked=3D"false" Priority=3D"47" Name=3D"List Table 2"/>
<w:LsdException Locked=3D"false" Priority=3D"48" Name=3D"List Table 3"/>
<w:LsdException Locked=3D"false" Priority=3D"49" Name=3D"List Table 4"/>
<w:LsdException Locked=3D"false" Priority=3D"50" Name=3D"List Table 5 Dark"=
/>
<w:LsdException Locked=3D"false" Priority=3D"51" Name=3D"List Table 6 Color=
ful"/>
<w:LsdException Locked=3D"false" Priority=3D"52" Name=3D"List Table 7 Color=
ful"/>
<w:LsdException Locked=3D"false" Priority=3D"46" Name=3D"List Table 1 Light=
 Accent 1"/>
<w:LsdException Locked=3D"false" Priority=3D"47" Name=3D"List Table 2 Accen=
t 1"/>
<w:LsdException Locked=3D"false" Priority=3D"48" Name=3D"List Table 3 Accen=
t 1"/>
<w:LsdException Locked=3D"false" Priority=3D"49" Name=3D"List Table 4 Accen=
t 1"/>
<w:LsdException Locked=3D"false" Priority=3D"50" Name=3D"List Table 5 Dark =
Accent 1"/>
<w:LsdException Locked=3D"false" Priority=3D"51" Name=3D"List Table 6 Color=
ful Accent 1"/>
<w:LsdException Locked=3D"false" Priority=3D"52" Name=3D"List Table 7 Color=
ful Accent 1"/>
<w:LsdException Locked=3D"false" Priority=3D"46" Name=3D"List Table 1 Light=
 Accent 2"/>
<w:LsdException Locked=3D"false" Priority=3D"47" Name=3D"List Table 2 Accen=
t 2"/>
<w:LsdException Locked=3D"false" Priority=3D"48" Name=3D"List Table 3 Accen=
t 2"/>
<w:LsdException Locked=3D"false" Priority=3D"49" Name=3D"List Table 4 Accen=
t 2"/>
<w:LsdException Locked=3D"false" Priority=3D"50" Name=3D"List Table 5 Dark =
Accent 2"/>
<w:LsdException Locked=3D"false" Priority=3D"51" Name=3D"List Table 6 Color=
ful Accent 2"/>
<w:LsdException Locked=3D"false" Priority=3D"52" Name=3D"List Table 7 Color=
ful Accent 2"/>
<w:LsdException Locked=3D"false" Priority=3D"46" Name=3D"List Table 1 Light=
 Accent 3"/>
<w:LsdException Locked=3D"false" Priority=3D"47" Name=3D"List Table 2 Accen=
t 3"/>
<w:LsdException Locked=3D"false" Priority=3D"48" Name=3D"List Table 3 Accen=
t 3"/>
<w:LsdException Locked=3D"false" Priority=3D"49" Name=3D"List Table 4 Accen=
t 3"/>
<w:LsdException Locked=3D"false" Priority=3D"50" Name=3D"List Table 5 Dark =
Accent 3"/>
<w:LsdException Locked=3D"false" Priority=3D"51" Name=3D"List Table 6 Color=
ful Accent 3"/>
<w:LsdException Locked=3D"false" Priority=3D"52" Name=3D"List Table 7 Color=
ful Accent 3"/>
<w:LsdException Locked=3D"false" Priority=3D"46" Name=3D"List Table 1 Light=
 Accent 4"/>
<w:LsdException Locked=3D"false" Priority=3D"47" Name=3D"List Table 2 Accen=
t 4"/>
<w:LsdException Locked=3D"false" Priority=3D"48" Name=3D"List Table 3 Accen=
t 4"/>
<w:LsdException Locked=3D"false" Priority=3D"49" Name=3D"List Table 4 Accen=
t 4"/>
<w:LsdException Locked=3D"false" Priority=3D"50" Name=3D"List Table 5 Dark =
Accent 4"/>
<w:LsdException Locked=3D"false" Priority=3D"51" Name=3D"List Table 6 Color=
ful Accent 4"/>
<w:LsdException Locked=3D"false" Priority=3D"52" Name=3D"List Table 7 Color=
ful Accent 4"/>
<w:LsdException Locked=3D"false" Priority=3D"46" Name=3D"List Table 1 Light=
 Accent 5"/>
<w:LsdException Locked=3D"false" Priority=3D"47" Name=3D"List Table 2 Accen=
t 5"/>
<w:LsdException Locked=3D"false" Priority=3D"48" Name=3D"List Table 3 Accen=
t 5"/>
<w:LsdException Locked=3D"false" Priority=3D"49" Name=3D"List Table 4 Accen=
t 5"/>
<w:LsdException Locked=3D"false" Priority=3D"50" Name=3D"List Table 5 Dark =
Accent 5"/>
<w:LsdException Locked=3D"false" Priority=3D"51" Name=3D"List Table 6 Color=
ful Accent 5"/>
<w:LsdException Locked=3D"false" Priority=3D"52" Name=3D"List Table 7 Color=
ful Accent 5"/>
<w:LsdException Locked=3D"false" Priority=3D"46" Name=3D"List Table 1 Light=
 Accent 6"/>
<w:LsdException Locked=3D"false" Priority=3D"47" Name=3D"List Table 2 Accen=
t 6"/>
<w:LsdException Locked=3D"false" Priority=3D"48" Name=3D"List Table 3 Accen=
t 6"/>
<w:LsdException Locked=3D"false" Priority=3D"49" Name=3D"List Table 4 Accen=
t 6"/>
<w:LsdException Locked=3D"false" Priority=3D"50" Name=3D"List Table 5 Dark =
Accent 6"/>
<w:LsdException Locked=3D"false" Priority=3D"51" Name=3D"List Table 6 Color=
ful Accent 6"/>
<w:LsdException Locked=3D"false" Priority=3D"52" Name=3D"List Table 7 Color=
ful Accent 6"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"Mention"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"Smart Hyperlink"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"Hashtag"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"Unresolved Mention"/>
<w:LsdException Locked=3D"false" SemiHidden=3D"true" UnhideWhenUsed=3D"true=
" Name=3D"Smart Link"/>
</w:LatentStyles>
</xml><![endif]--><style><!--
/* Font Definitions */
@font-face
	{font-family:"Cambria Math";
	panose-1:2 4 5 3 5 4 6 3 2 4;
	mso-font-charset:0;
	mso-generic-font-family:roman;
	mso-font-pitch:variable;
	mso-font-signature:-536870145 1107305727 0 0 415 0;}
@font-face
	{font-family:DengXian;
	panose-1:2 1 6 0 3 1 1 1 1 1;
	mso-font-alt:\7B49 \7EBF ;
	mso-font-charset:134;
	mso-generic-font-family:auto;
	mso-font-pitch:variable;
	mso-font-signature:-1610612033 953122042 22 0 262159 0;}
@font-face
	{font-family:Calibri;
	panose-1:2 15 5 2 2 2 4 3 2 4;
	mso-font-charset:0;
	mso-generic-font-family:swiss;
	mso-font-pitch:variable;
	mso-font-signature:-536859905 -1073732485 9 0 511 0;}
@font-face
	{font-family:"\@DengXian";
	panose-1:2 1 6 0 3 1 1 1 1 1;
	mso-font-charset:134;
	mso-generic-font-family:auto;
	mso-font-pitch:variable;
	mso-font-signature:-1610612033 953122042 22 0 262159 0;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
	{mso-style-unhide:no;
	mso-style-qformat:yes;
	mso-style-parent:"";
	margin:0cm;
	mso-pagination:widow-orphan;
	font-size:11.0pt;
	font-family:"Calibri",sans-serif;
	mso-ascii-font-family:Calibri;
	mso-fareast-font-family:DengXian;
	mso-hansi-font-family:Calibri;
	mso-bidi-font-family:"Times New Roman";
	mso-font-kerning:1.0pt;
	mso-ligatures:standardcontextual;}
a:link, span.MsoHyperlink
	{mso-style-noshow:yes;
	mso-style-priority:99;
	color:#0563C1;
	text-decoration:underline;
	text-underline:single;}
a:visited, span.MsoHyperlinkFollowed
	{mso-style-noshow:yes;
	mso-style-priority:99;
	color:#954F72;
	text-decoration:underline;
	text-underline:single;}
span.EmailStyle17
	{mso-style-type:personal-compose;
	mso-style-noshow:yes;
	mso-style-unhide:no;
	mso-ansi-font-size:11.0pt;
	mso-bidi-font-size:11.0pt;
	font-family:"Calibri",sans-serif;
	mso-ascii-font-family:Calibri;
	mso-fareast-font-family:DengXian;
	mso-hansi-font-family:Calibri;
	mso-bidi-font-family:"Times New Roman";
	color:windowtext;}
.MsoChpDefault
	{mso-style-type:export-only;
	mso-default-props:yes;
	mso-ascii-font-family:Calibri;
	mso-fareast-font-family:DengXian;
	mso-hansi-font-family:Calibri;
	mso-bidi-font-family:"Times New Roman";}
@page WordSection1
	{size:612.0pt 792.0pt;
	margin:72.0pt 72.0pt 72.0pt 72.0pt;
	mso-header-margin:36.0pt;
	mso-footer-margin:36.0pt;
	mso-paper-source:0;}
div.WordSection1
	{page:WordSection1;}
--></style><!--[if gte mso 10]><style>/* Style Definitions */
table.MsoNormalTable
	{mso-style-name:"Table Normal";
	mso-tstyle-rowband-size:0;
	mso-tstyle-colband-size:0;
	mso-style-noshow:yes;
	mso-style-priority:99;
	mso-style-parent:"";
	mso-padding-alt:0cm 5.4pt 0cm 5.4pt;
	mso-para-margin:0cm;
	mso-pagination:widow-orphan;
	font-size:11.0pt;
	font-family:"Calibri",sans-serif;
	mso-ascii-font-family:Calibri;
	mso-hansi-font-family:Calibri;
	mso-bidi-font-family:"Times New Roman";
	mso-font-kerning:1.0pt;
	mso-ligatures:standardcontextual;}
</style><![endif]-->
<div lang=3D"en-CN" link=3D"#0563C1" vlink=3D"#954F72" style=3D"tab-interva=
l:36.0pt;word-wrap:break-word">
<div class=3D"WordSection1">
<p class=3D"MsoNormal"><span style=3D"font-size: 11pt;">Hi all,</span></p>
<p class=3D"MsoNormal"><br>
</p>
<p class=3D"MsoNormal">Xen 4.18 rc2 is tagged. You can check that out from =
xen.git:</p>
<p class=3D"MsoNormal"><br>
</p>
<p class=3D"MsoNormal">git://xenbits.xen.org/xen.git 4.18.0-rc2</p>
<p class=3D"MsoNormal"><br>
</p>
<p class=3D"MsoNormal">For your convenience there is also a tarball at:</p>
<p class=3D"MsoNormal">https://downloads.xenproject.org/release/xen/4.18.0-=
rc2/xen-4.18.0-rc2.tar.gz</p>
<p class=3D"MsoNormal"><br>
</p>
<p class=3D"MsoNormal">And the signature is at:</p>
<p class=3D"MsoNormal">https://downloads.xenproject.org/release/xen/4.18.0-=
rc2/xen-4.18.0-rc2.tar.gz.sig</p>
<p class=3D"MsoNormal"><br>
</p>
<p class=3D"MsoNormal">Please send bug reports and test reports to xen-deve=
l@lists.xenproject.org.</p>
<p class=3D"MsoNormal">When sending bug reports, please CC relevant maintai=
ners and me</p>
<p class=3D"MsoNormal">(Henry.Wang@arm.com).</p>
<p class=3D"MsoNormal"><br>
</p>
<p class=3D"MsoNormal">Kind regards,</p>
<p class=3D"MsoNormal">Henry</p>
</div>
</div>
</body>
</html>

--_000_77CD1005B3AB44B3B74749D6A6208D95armcom_--


From xen-devel-bounces@lists.xenproject.org Mon Oct 09 11:29:48 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 09 Oct 2023 11:29:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614316.955326 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qpoSF-0006Ye-As; Mon, 09 Oct 2023 11:29:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614316.955326; Mon, 09 Oct 2023 11: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 1qpoSF-0006YX-6n; Mon, 09 Oct 2023 11:29:43 +0000
Received: by outflank-mailman (input) for mailman id 614316;
 Mon, 09 Oct 2023 11: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=qkxv=FX=linaro.org=viresh.kumar@srs-se1.protection.inumbo.net>)
 id 1qpoSE-0006Jg-Nk
 for xen-devel@lists.xenproject.org; Mon, 09 Oct 2023 11:29:42 +0000
Received: from mail-pf1-x435.google.com (mail-pf1-x435.google.com
 [2607:f8b0:4864:20::435])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 23413e81-6697-11ee-98d3-6d05b1d4d9a1;
 Mon, 09 Oct 2023 13:29:42 +0200 (CEST)
Received: by mail-pf1-x435.google.com with SMTP id
 d2e1a72fcca58-694f3444f94so3593243b3a.2
 for <xen-devel@lists.xenproject.org>; Mon, 09 Oct 2023 04:29:42 -0700 (PDT)
Received: from localhost ([122.172.81.92]) by smtp.gmail.com with ESMTPSA id
 a21-20020a62bd15000000b00693498a846esm6129376pff.80.2023.10.09.04.29.39
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 09 Oct 2023 04:29: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: 23413e81-6697-11ee-98d3-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=linaro.org; s=google; t=1696850980; x=1697455780; 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=VA2GT8eqbiQpihVq6IatV7jxO70qnqwP/ImeaPQmFQY=;
        b=c9oM6zsol6JCwa4xxFuBsBG/UuQZYKKj/y+jp9pD2P7U2m+YT1oqqYbQrioiEKROA4
         FhC1vXcdUEECD76bK/GaMaxUCNFR/i/wY32NzDkMxdHHNpRQBaruase9cgOjVwjD4b4L
         9DlOfOcE4wHviKGTGK71och7M/ZgQ/vwnI0WC7wjssJuDryPO15pcTObmljzUXC9hPgP
         AveV5/QnVKZyj1qYGbknKJk8Lc1SSkEDPcTPG9JrMmXZHS64sUzS571mBEmpx8sBGnxj
         fbfURCqKFU2aYCIYRVXcK6HsmqIi9alIqovYTkAeUyuXl9mh/ZQfwauwx/ZJ9kL/CPTG
         +GAA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1696850980; x=1697455780;
        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=VA2GT8eqbiQpihVq6IatV7jxO70qnqwP/ImeaPQmFQY=;
        b=IB3zrEVBXSAizmza9OPXaXotGdJCod7j1i7WUpCjP+3i8MrX2amX9hInZiZmFBODfc
         H5mTEGXaEvj/7aVyyuSIwogeuTkNtUg01xd1onfCYizdnhUisdBBbiNs9BXy74p7yxMf
         +vENGaVChkQBrhMGIkiLlwAoa5cozKfKX7tFgEqy+1tIRWqiBSFafcNs2oXSN/8cv00z
         cSRnfEqgxXCnsF7RNsVm0pz3X3NI2KJ6y4zQ7DEa1yNn6rY6dW2fyHYfkp8PxBacahIi
         fDqU6vm6Hi+Edzwu/MFpVQIFhfFf+fJq5gt0bFi3IGe/OOnZNiK9rm8IdPaxZAw3x7HW
         6Qhg==
X-Gm-Message-State: AOJu0YzbIm2rVCidbEJ2piXxu3H3ZwC6KP72UYjQusyfqEIF8Gt1f8/q
	U0dwzaXF3kSy9oha4+nriM8sCA==
X-Google-Smtp-Source: AGHT+IGb6yho3N2vKqm69w/2J2A7jX8tPga8/bSYK0Z0iBic3N7lSd2HTvgeG7X2IAqd1oF0NoQoWA==
X-Received: by 2002:a05:6a00:22c9:b0:690:2ecd:a593 with SMTP id f9-20020a056a0022c900b006902ecda593mr19268889pfj.26.1696850980690;
        Mon, 09 Oct 2023 04:29:40 -0700 (PDT)
From: Viresh Kumar <viresh.kumar@linaro.org>
To: Juergen Gross <jgross@suse.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>
Cc: Viresh Kumar <viresh.kumar@linaro.org>,
	Vincent Guittot <vincent.guittot@linaro.org>,
	=?UTF-8?q?Alex=20Benn=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
Subject: [PATCH V3 1/2] xen: evtchn: Allow shared registration of IRQ handers
Date: Mon,  9 Oct 2023 16:59:24 +0530
Message-Id: <8380c7b1c8cd9edb2e45e9a204650b34df3458a7.1696850733.git.viresh.kumar@linaro.org>
X-Mailer: git-send-email 2.31.1.272.g89b43f80a514
In-Reply-To: <cover.1696850733.git.viresh.kumar@linaro.org>
References: <cover.1696850733.git.viresh.kumar@linaro.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Currently the handling of events is supported either in the kernel or
userspace, but not both.

In order to support fast delivery of interrupts from the guest to the
backend, we need to handle the Queue notify part of Virtio protocol in
kernel and the rest in userspace.

Update the interrupt handler registration flag to IRQF_SHARED for event
channels, which would allow multiple entities to bind their interrupt
handler for the same event channel port.

Also increment the reference count of irq_info when multiple entities
try to bind event channel to irqchip, so the unbinding happens only
after all the users are gone.

Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
---
 drivers/xen/events/events_base.c | 3 ++-
 drivers/xen/evtchn.c             | 2 +-
 2 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/drivers/xen/events/events_base.c b/drivers/xen/events/events_base.c
index c7715f8bd452..d72fb26cc051 100644
--- a/drivers/xen/events/events_base.c
+++ b/drivers/xen/events/events_base.c
@@ -1238,7 +1238,8 @@ static int bind_evtchn_to_irq_chip(evtchn_port_t evtchn, struct irq_chip *chip,
 		bind_evtchn_to_cpu(evtchn, 0, false);
 	} else {
 		struct irq_info *info = info_for_irq(irq);
-		WARN_ON(info == NULL || info->type != IRQT_EVTCHN);
+		if (!WARN_ON(!info || info->type != IRQT_EVTCHN))
+			info->refcnt++;
 	}
 
 out:
diff --git a/drivers/xen/evtchn.c b/drivers/xen/evtchn.c
index c99415a70051..43f77915feb5 100644
--- a/drivers/xen/evtchn.c
+++ b/drivers/xen/evtchn.c
@@ -397,7 +397,7 @@ static int evtchn_bind_to_user(struct per_user_data *u, evtchn_port_t port)
 	if (rc < 0)
 		goto err;
 
-	rc = bind_evtchn_to_irqhandler_lateeoi(port, evtchn_interrupt, 0,
+	rc = bind_evtchn_to_irqhandler_lateeoi(port, evtchn_interrupt, IRQF_SHARED,
 					       u->name, evtchn);
 	if (rc < 0)
 		goto err;
-- 
2.31.1.272.g89b43f80a514



From xen-devel-bounces@lists.xenproject.org Mon Oct 09 11:29:48 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 09 Oct 2023 11:29:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614315.955316 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qpoSE-0006Jt-3G; Mon, 09 Oct 2023 11:29:42 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614315.955316; Mon, 09 Oct 2023 11: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 1qpoSD-0006Jm-VJ; Mon, 09 Oct 2023 11:29:41 +0000
Received: by outflank-mailman (input) for mailman id 614315;
 Mon, 09 Oct 2023 11:29: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=qkxv=FX=linaro.org=viresh.kumar@srs-se1.protection.inumbo.net>)
 id 1qpoSC-0006Jg-D7
 for xen-devel@lists.xenproject.org; Mon, 09 Oct 2023 11:29:40 +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 21641c66-6697-11ee-98d3-6d05b1d4d9a1;
 Mon, 09 Oct 2023 13:29:39 +0200 (CEST)
Received: by mail-pl1-x629.google.com with SMTP id
 d9443c01a7336-1c60f1a2652so32391385ad.0
 for <xen-devel@lists.xenproject.org>; Mon, 09 Oct 2023 04:29:39 -0700 (PDT)
Received: from localhost ([122.172.81.92]) by smtp.gmail.com with ESMTPSA id
 b10-20020a170903228a00b001b03a1a3151sm9357515plh.70.2023.10.09.04.29.36
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 09 Oct 2023 04:29: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: 21641c66-6697-11ee-98d3-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=linaro.org; s=google; t=1696850977; x=1697455777; 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=3Tdfc33f4Wm5FyFF+cSLn1Dj1lOMRUny12yMiSOCHJc=;
        b=RpXGuZZlrzy191g4Ho01OcGYgdeIMTzq98i8eE/QkMPYYd/Tj4db2ZFIOVK5tQF8iL
         NhsdUVmaHnkwhW8UfNxTks++jPYqx2Vf9po0YoqX6GR5dUeVPmaFmcjsHmPvufco/d3r
         b+ycJMbLV9ZYad5kqqyvdoV4tOqXo/0SyZSl8hmoKsc8bxPNZf5xu0aA93um/vRAYPms
         ibo8zKT8IbtWLw9+CkgfX+/OvRR9Wbhm1yWgs0S20Tz6c6RPRhNnFSNl1SUhOIEJIldi
         IS5QXFJtqAs6kItS6sXUnnNk3lj+dgi3lJ9Imo7N8NZmK4HvUUh3FabG9GUqJnYeVhR7
         HK0w==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1696850977; x=1697455777;
        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=3Tdfc33f4Wm5FyFF+cSLn1Dj1lOMRUny12yMiSOCHJc=;
        b=HoK3S7a+1yOWHazG9mES4LLsP3e8eCzJyqNZUWRdWPP6dazrgehoqYgrze1f6GqYB+
         r6ZV0qRbhSBeregHXCb7HT1lgFM2GYqiUm90Pw3dVebCnex+mK/nNvOIMhmFcOwnDbNZ
         g6L9YCX5uGcY6WDu4Fn7zK8G7jKsjMD4SB3iCmqu+e4Py4tOPTLoDykAw07Rv7rejOit
         Ufawe3rBpFJQHETLrZXFhkLc+dqfSsmxMrKNHlt/5XY4t+lduHcFLYxIj9LkiuEMO/B0
         Iqsi4Yqw14HujL0VJAp+IjSNM4S3v+BzAItZi7u6sucOdag3/VLQInMfpoEWNZ3TR+SI
         YFJA==
X-Gm-Message-State: AOJu0YyKIxXMLM16zEpsfJNgAnCGLrMUyp7IHwxJHROBcXAP8O44Brl1
	LMGMcVqTfvRXiZNAE78kLuB4cA==
X-Google-Smtp-Source: AGHT+IH3QKti6SrLc7Vbwklr4lokjNXQqdplcm3TYHJl/kWr314EMtmtgjCJcVE1fLl4T8F1t7doZw==
X-Received: by 2002:a17:902:c70b:b0:1c6:2866:5aeb with SMTP id p11-20020a170902c70b00b001c628665aebmr11765287plp.9.1696850977501;
        Mon, 09 Oct 2023 04:29:37 -0700 (PDT)
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: Viresh Kumar <viresh.kumar@linaro.org>,
	Vincent Guittot <vincent.guittot@linaro.org>,
	=?UTF-8?q?Alex=20Benn=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: [PATCH V3 0/2] xen: privcmd: Add ioeventfd support
Date: Mon,  9 Oct 2023 16:59:23 +0530
Message-Id: <cover.1696850733.git.viresh.kumar@linaro.org>
X-Mailer: git-send-email 2.31.1.272.g89b43f80a514
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

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.

--
Viresh

V2->V3:
- Remove explicit barriers and depend on spin lock instead to take care of it.
- Move check for empty ioeventfds list to privcmd_ioeventfd_deassign(), which
  could earlier call ioreq_free() even when the list wasn't empty and so we
  returned without printing a warning in v1 earlier. V2 implemented it
  incorrectly.

V1->V2:
- Increment irq_info refcnt only for valid info.
- Use u64 type for addr.
- Add comments for use of barriers.
- Use spin lock instead of mutex as we need to use them in irq handler.
- Add a warning when kioreq is getting freed and ioeventfds list isn't empty.
- Use struct_size().
- Validate number of vcpus as well.

Viresh Kumar (2):
  xen: evtchn: Allow shared registration of IRQ handers
  xen: privcmd: Add support for ioeventfd

 drivers/xen/Kconfig               |   8 +-
 drivers/xen/events/events_base.c  |   3 +-
 drivers/xen/evtchn.c              |   2 +-
 drivers/xen/privcmd.c             | 405 +++++++++++++++++++++++++++++-
 include/uapi/xen/privcmd.h        |  18 ++
 include/xen/interface/hvm/ioreq.h |  51 ++++
 6 files changed, 479 insertions(+), 8 deletions(-)
 create mode 100644 include/xen/interface/hvm/ioreq.h

-- 
2.31.1.272.g89b43f80a514



From xen-devel-bounces@lists.xenproject.org Mon Oct 09 11:29:48 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 09 Oct 2023 11:29:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614317.955336 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qpoSK-0006q1-Ik; Mon, 09 Oct 2023 11:29:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614317.955336; Mon, 09 Oct 2023 11:29: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 1qpoSK-0006pu-EW; Mon, 09 Oct 2023 11:29:48 +0000
Received: by outflank-mailman (input) for mailman id 614317;
 Mon, 09 Oct 2023 11:29: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=qkxv=FX=linaro.org=viresh.kumar@srs-se1.protection.inumbo.net>)
 id 1qpoSJ-0006Jg-9t
 for xen-devel@lists.xenproject.org; Mon, 09 Oct 2023 11:29:47 +0000
Received: from mail-pl1-x636.google.com (mail-pl1-x636.google.com
 [2607:f8b0:4864:20::636])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 25985dec-6697-11ee-98d3-6d05b1d4d9a1;
 Mon, 09 Oct 2023 13:29:46 +0200 (CEST)
Received: by mail-pl1-x636.google.com with SMTP id
 d9443c01a7336-1c61acd1285so25513895ad.2
 for <xen-devel@lists.xenproject.org>; Mon, 09 Oct 2023 04:29:46 -0700 (PDT)
Received: from localhost ([122.172.81.92]) by smtp.gmail.com with ESMTPSA id
 ij7-20020a170902ab4700b001c56157f062sm9464560plb.227.2023.10.09.04.29.43
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 09 Oct 2023 04:29: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: 25985dec-6697-11ee-98d3-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=linaro.org; s=google; t=1696850984; x=1697455784; 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=ssJ8oL1AFbpQgMLo7zpohKn5yvEaIefIrMRFB+83YzQ=;
        b=GNrWUQMH432BhrOafIyk41p+s91pxmPSBsA1wvyszR5Ds2fMQlXO6ksrPMNfIiLUwy
         GMDLaNXqe7ZgK1xXpvl+GXutu48zTdL6rTdzrOIwroItuxfrbzjd/q6Q1LDR9tWZV1BO
         eGJczIrNFZnlQkzYWdsJVXCWu9I/N0/klmx6hhyVIzQ2sg20g3UZ7Dt6LDCvm4UCiXyf
         48nZK+ZxNd6MNTX/olQwcKQbd4IEoDOBXEOd0VnuioJDMEZ911Wawm7irghSouW/mv9A
         PaIkG+8yXPiaj7KwyKnWR07HjxN2dJJlG+utL7xTV5CFktlqIUG9ak9thsIAATiCVckD
         93gQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1696850984; x=1697455784;
        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=ssJ8oL1AFbpQgMLo7zpohKn5yvEaIefIrMRFB+83YzQ=;
        b=Whm+g9BhWlelwrPvY4NJFYK0P/rg1S+fKFp0L5NfWSt9GRDJx1EKlrKhpbqWdUMYxZ
         QNolSNtYmBhqlaT34LpsDBd6H7RFEbwXE6rVhto11UKKeYG4+dGv7Cpbb58NAB3SljWq
         Y5lZ7+5Iptq8ld5gk+W4TRVgiCFs/qhxzZ1WrSznseeM9y1szzKGfvBCREjPWUnyJDia
         awOVDvt6m1G27TcvFW5S2yfASYroOV0MH8X5knwGlZpRIA9QBk3fZ/ud8YYyXIZXV0re
         VTcQLJK2BH862zNcHegWaEi4GQr9Cs0obhHJ9KGK48gSH9EorA9xgeibzun+z19jpS3v
         V0dg==
X-Gm-Message-State: AOJu0Yz2Vq032dptJxxDup7KPTW3ihArLG6opE1ifk/lUDD/Fqs2hjh7
	tOjGq682eR9zh5DsQdxHXqgMQw==
X-Google-Smtp-Source: AGHT+IFoGACbY4rSN4iN3ppDo6vsn7HtzzwJDWL1P0dZIvw1kE7FpbJXmVs04GD73jd1RV4nFO9viQ==
X-Received: by 2002:a17:902:c20c:b0:1c5:f5a9:4ad6 with SMTP id 12-20020a170902c20c00b001c5f5a94ad6mr11870245pll.1.1696850984548;
        Mon, 09 Oct 2023 04:29:44 -0700 (PDT)
From: Viresh Kumar <viresh.kumar@linaro.org>
To: Juergen Gross <jgross@suse.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>
Cc: Viresh Kumar <viresh.kumar@linaro.org>,
	Vincent Guittot <vincent.guittot@linaro.org>,
	=?UTF-8?q?Alex=20Benn=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: [PATCH V3 2/2] xen: privcmd: Add support for ioeventfd
Date: Mon,  9 Oct 2023 16:59:25 +0530
Message-Id: <957de2a53dde99a653b47af9c95bc17692870294.1696850733.git.viresh.kumar@linaro.org>
X-Mailer: git-send-email 2.31.1.272.g89b43f80a514
In-Reply-To: <cover.1696850733.git.viresh.kumar@linaro.org>
References: <cover.1696850733.git.viresh.kumar@linaro.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Virtio guests send VIRTIO_MMIO_QUEUE_NOTIFY notification when they need
to notify the backend of an update to the status of the virtqueue. The
backend or another entity, polls the MMIO address for updates to know
when the notification is sent.

It works well if the backend does this polling by itself. But as we move
towards generic backend implementations, we end up implementing this in
a separate user-space program.

Generally, the Virtio backends are implemented to work with the Eventfd
based mechanism. In order to make such backends work with Xen, another
software layer needs to do the polling and send an event via eventfd to
the backend once the notification from guest is received. This results
in an extra context switch.

This is not a new problem in Linux though. It is present with other
hypervisors like KVM, etc. as well. The generic solution implemented in
the kernel for them is to provide an IOCTL call to pass the address to
poll and eventfd, which lets the kernel take care of polling and raise
an event on the eventfd, instead of handling this in user space (which
involves an extra context switch).

This patch adds similar support for xen.

Inspired by existing implementations for KVM, etc..

This also copies ioreq.h header file (only struct ioreq and related
macros) from Xen's source tree (Top commit 5d84f07fe6bf ("xen/pci: drop
remaining uses of bool_t")).

Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
---
 drivers/xen/Kconfig               |   8 +-
 drivers/xen/privcmd.c             | 405 +++++++++++++++++++++++++++++-
 include/uapi/xen/privcmd.h        |  18 ++
 include/xen/interface/hvm/ioreq.h |  51 ++++
 4 files changed, 476 insertions(+), 6 deletions(-)
 create mode 100644 include/xen/interface/hvm/ioreq.h

diff --git a/drivers/xen/Kconfig b/drivers/xen/Kconfig
index d43153fec18e..d5989871dd5d 100644
--- a/drivers/xen/Kconfig
+++ b/drivers/xen/Kconfig
@@ -269,12 +269,12 @@ config XEN_PRIVCMD
 	  disaggregated Xen setups this driver might be needed for other
 	  domains, too.
 
-config XEN_PRIVCMD_IRQFD
-	bool "Xen irqfd support"
+config XEN_PRIVCMD_EVENTFD
+	bool "Xen Ioeventfd and irqfd support"
 	depends on XEN_PRIVCMD && XEN_VIRTIO && EVENTFD
 	help
-	  Using the irqfd mechanism a virtio backend running in a daemon can
-	  speed up interrupt injection into a guest.
+	  Using the ioeventfd / irqfd mechanism a virtio backend running in a
+	  daemon can speed up interrupt delivery from / to a guest.
 
 config XEN_ACPI_PROCESSOR
 	tristate "Xen ACPI processor"
diff --git a/drivers/xen/privcmd.c b/drivers/xen/privcmd.c
index 120af57999fc..6bff178cd12b 100644
--- a/drivers/xen/privcmd.c
+++ b/drivers/xen/privcmd.c
@@ -29,15 +29,18 @@
 #include <linux/seq_file.h>
 #include <linux/miscdevice.h>
 #include <linux/moduleparam.h>
+#include <linux/virtio_mmio.h>
 
 #include <asm/xen/hypervisor.h>
 #include <asm/xen/hypercall.h>
 
 #include <xen/xen.h>
+#include <xen/events.h>
 #include <xen/privcmd.h>
 #include <xen/interface/xen.h>
 #include <xen/interface/memory.h>
 #include <xen/interface/hvm/dm_op.h>
+#include <xen/interface/hvm/ioreq.h>
 #include <xen/features.h>
 #include <xen/page.h>
 #include <xen/xen-ops.h>
@@ -782,6 +785,7 @@ static long privcmd_ioctl_mmap_resource(struct file *file,
 			goto out;
 
 		pages = vma->vm_private_data;
+
 		for (i = 0; i < kdata.num; i++) {
 			xen_pfn_t pfn =
 				page_to_xen_pfn(pages[i / XEN_PFN_PER_PAGE]);
@@ -838,7 +842,7 @@ static long privcmd_ioctl_mmap_resource(struct file *file,
 	return rc;
 }
 
-#ifdef CONFIG_XEN_PRIVCMD_IRQFD
+#ifdef CONFIG_XEN_PRIVCMD_EVENTFD
 /* Irqfd support */
 static struct workqueue_struct *irqfd_cleanup_wq;
 static DEFINE_MUTEX(irqfds_lock);
@@ -1079,6 +1083,389 @@ static void privcmd_irqfd_exit(void)
 
 	destroy_workqueue(irqfd_cleanup_wq);
 }
+
+/* Ioeventfd Support */
+#define QUEUE_NOTIFY_VQ_MASK 0xFFFF
+
+static DEFINE_MUTEX(ioreq_lock);
+static LIST_HEAD(ioreq_list);
+
+/* per-eventfd structure */
+struct privcmd_kernel_ioeventfd {
+	struct eventfd_ctx *eventfd;
+	struct list_head list;
+	u64 addr;
+	unsigned int addr_len;
+	unsigned int vq;
+};
+
+/* per-guest CPU / port structure */
+struct ioreq_port {
+	int vcpu;
+	unsigned int port;
+	struct privcmd_kernel_ioreq *kioreq;
+};
+
+/* per-guest structure */
+struct privcmd_kernel_ioreq {
+	domid_t dom;
+	unsigned int vcpus;
+	void __user *uioreq;
+	struct ioreq *ioreq;
+	spinlock_t lock; /* Protects ioeventfds list */
+	struct list_head ioeventfds;
+	struct list_head list;
+	struct ioreq_port ports[0];
+};
+
+static irqreturn_t ioeventfd_interrupt(int irq, void *dev_id)
+{
+	struct ioreq_port *port = dev_id;
+	struct privcmd_kernel_ioreq *kioreq = port->kioreq;
+	struct ioreq *ioreq = &kioreq->ioreq[port->vcpu];
+	struct privcmd_kernel_ioeventfd *kioeventfd;
+	unsigned int state = STATE_IOREQ_READY;
+
+	if (ioreq->state != STATE_IOREQ_READY ||
+	    ioreq->type != IOREQ_TYPE_COPY || ioreq->dir != IOREQ_WRITE)
+		return IRQ_NONE;
+
+	/*
+	 * We need a barrier, smp_mb(), here to ensure reads are finished before
+	 * `state` is updated. Since the lock implementation ensures that
+	 * appropriate barrier will be added anyway, we can avoid adding
+	 * explicit barrier here.
+	 *
+	 * Ideally we don't need to update `state` within the locks, but we do
+	 * that here to avoid adding explicit barrier.
+	 */
+
+	spin_lock(&kioreq->lock);
+	ioreq->state = STATE_IOREQ_INPROCESS;
+
+	list_for_each_entry(kioeventfd, &kioreq->ioeventfds, list) {
+		if (ioreq->addr == kioeventfd->addr + VIRTIO_MMIO_QUEUE_NOTIFY &&
+		    ioreq->size == kioeventfd->addr_len &&
+		    (ioreq->data & QUEUE_NOTIFY_VQ_MASK) == kioeventfd->vq) {
+			eventfd_signal(kioeventfd->eventfd, 1);
+			state = STATE_IORESP_READY;
+			break;
+		}
+	}
+	spin_unlock(&kioreq->lock);
+
+	/*
+	 * We need a barrier, smp_mb(), here to ensure writes are finished
+	 * before `state` is updated. Since the lock implementation ensures that
+	 * appropriate barrier will be added anyway, we can avoid adding
+	 * explicit barrier here.
+	 */
+
+	ioreq->state = state;
+
+	if (state == STATE_IORESP_READY) {
+		notify_remote_via_evtchn(port->port);
+		return IRQ_HANDLED;
+	}
+
+	return IRQ_NONE;
+}
+
+static void ioreq_free(struct privcmd_kernel_ioreq *kioreq)
+{
+	struct ioreq_port *ports = kioreq->ports;
+	int i;
+
+	lockdep_assert_held(&ioreq_lock);
+
+	list_del(&kioreq->list);
+
+	for (i = kioreq->vcpus - 1; i >= 0; i--)
+		unbind_from_irqhandler(irq_from_evtchn(ports[i].port), &ports[i]);
+
+	kfree(kioreq);
+}
+
+static
+struct privcmd_kernel_ioreq *alloc_ioreq(struct privcmd_ioeventfd *ioeventfd)
+{
+	struct privcmd_kernel_ioreq *kioreq;
+	struct mm_struct *mm = current->mm;
+	struct vm_area_struct *vma;
+	struct page **pages;
+	unsigned int *ports;
+	int ret, size, i;
+
+	lockdep_assert_held(&ioreq_lock);
+
+	size = struct_size(kioreq, ports, ioeventfd->vcpus);
+	kioreq = kzalloc(size, GFP_KERNEL);
+	if (!kioreq)
+		return ERR_PTR(-ENOMEM);
+
+	kioreq->dom = ioeventfd->dom;
+	kioreq->vcpus = ioeventfd->vcpus;
+	kioreq->uioreq = ioeventfd->ioreq;
+	spin_lock_init(&kioreq->lock);
+	INIT_LIST_HEAD(&kioreq->ioeventfds);
+
+	/* The memory for ioreq server must have been mapped earlier */
+	mmap_write_lock(mm);
+	vma = find_vma(mm, (unsigned long)ioeventfd->ioreq);
+	if (!vma) {
+		pr_err("Failed to find vma for ioreq page!\n");
+		mmap_write_unlock(mm);
+		ret = -EFAULT;
+		goto error_kfree;
+	}
+
+	pages = vma->vm_private_data;
+	kioreq->ioreq = (struct ioreq *)(page_to_virt(pages[0]));
+	mmap_write_unlock(mm);
+
+	size = sizeof(*ports) * kioreq->vcpus;
+	ports = kzalloc(size, GFP_KERNEL);
+	if (!ports) {
+		ret = -ENOMEM;
+		goto error_kfree;
+	}
+
+	if (copy_from_user(ports, ioeventfd->ports, size)) {
+		ret = -EFAULT;
+		goto error_kfree_ports;
+	}
+
+	for (i = 0; i < kioreq->vcpus; i++) {
+		kioreq->ports[i].vcpu = i;
+		kioreq->ports[i].port = ports[i];
+		kioreq->ports[i].kioreq = kioreq;
+
+		ret = bind_evtchn_to_irqhandler_lateeoi(ports[i],
+				ioeventfd_interrupt, IRQF_SHARED, "ioeventfd",
+				&kioreq->ports[i]);
+		if (ret < 0)
+			goto error_unbind;
+	}
+
+	kfree(ports);
+
+	list_add_tail(&kioreq->list, &ioreq_list);
+
+	return kioreq;
+
+error_unbind:
+	while (--i >= 0)
+		unbind_from_irqhandler(irq_from_evtchn(ports[i]), &kioreq->ports[i]);
+error_kfree_ports:
+	kfree(ports);
+error_kfree:
+	kfree(kioreq);
+	return ERR_PTR(ret);
+}
+
+static struct privcmd_kernel_ioreq *
+get_ioreq(struct privcmd_ioeventfd *ioeventfd, struct eventfd_ctx *eventfd)
+{
+	struct privcmd_kernel_ioreq *kioreq;
+	unsigned long flags;
+
+	list_for_each_entry(kioreq, &ioreq_list, list) {
+		struct privcmd_kernel_ioeventfd *kioeventfd;
+
+		/*
+		 * kioreq fields can be accessed here without a lock as they are
+		 * never updated after being added to the ioreq_list.
+		 */
+		if (kioreq->uioreq != ioeventfd->ioreq) {
+			continue;
+		} else if (kioreq->dom != ioeventfd->dom ||
+			   kioreq->vcpus != ioeventfd->vcpus) {
+			pr_err("Invalid ioeventfd configuration mismatch, dom (%u vs %u), vcpus (%u vs %u)\n",
+			       kioreq->dom, ioeventfd->dom, kioreq->vcpus,
+			       ioeventfd->vcpus);
+			return ERR_PTR(-EINVAL);
+		}
+
+		/* Look for a duplicate eventfd for the same guest */
+		spin_lock_irqsave(&kioreq->lock, flags);
+		list_for_each_entry(kioeventfd, &kioreq->ioeventfds, list) {
+			if (eventfd == kioeventfd->eventfd) {
+				spin_unlock_irqrestore(&kioreq->lock, flags);
+				return ERR_PTR(-EBUSY);
+			}
+		}
+		spin_unlock_irqrestore(&kioreq->lock, flags);
+
+		return kioreq;
+	}
+
+	/* Matching kioreq isn't found, allocate a new one */
+	return alloc_ioreq(ioeventfd);
+}
+
+static void ioeventfd_free(struct privcmd_kernel_ioeventfd *kioeventfd)
+{
+	list_del(&kioeventfd->list);
+	eventfd_ctx_put(kioeventfd->eventfd);
+	kfree(kioeventfd);
+}
+
+static int privcmd_ioeventfd_assign(struct privcmd_ioeventfd *ioeventfd)
+{
+	struct privcmd_kernel_ioeventfd *kioeventfd;
+	struct privcmd_kernel_ioreq *kioreq;
+	unsigned long flags;
+	struct fd f;
+	int ret;
+
+	/* Check for range overflow */
+	if (ioeventfd->addr + ioeventfd->addr_len < ioeventfd->addr)
+		return -EINVAL;
+
+	/* Vhost requires us to support length 1, 2, 4, and 8 */
+	if (!(ioeventfd->addr_len == 1 || ioeventfd->addr_len == 2 ||
+	      ioeventfd->addr_len == 4 || ioeventfd->addr_len == 8))
+		return -EINVAL;
+
+	/* 4096 vcpus limit enough ? */
+	if (!ioeventfd->vcpus || ioeventfd->vcpus > 4096)
+		return -EINVAL;
+
+	kioeventfd = kzalloc(sizeof(*kioeventfd), GFP_KERNEL);
+	if (!kioeventfd)
+		return -ENOMEM;
+
+	f = fdget(ioeventfd->event_fd);
+	if (!f.file) {
+		ret = -EBADF;
+		goto error_kfree;
+	}
+
+	kioeventfd->eventfd = eventfd_ctx_fileget(f.file);
+	fdput(f);
+
+	if (IS_ERR(kioeventfd->eventfd)) {
+		ret = PTR_ERR(kioeventfd->eventfd);
+		goto error_kfree;
+	}
+
+	kioeventfd->addr = ioeventfd->addr;
+	kioeventfd->addr_len = ioeventfd->addr_len;
+	kioeventfd->vq = ioeventfd->vq;
+
+	mutex_lock(&ioreq_lock);
+	kioreq = get_ioreq(ioeventfd, kioeventfd->eventfd);
+	if (IS_ERR(kioreq)) {
+		mutex_unlock(&ioreq_lock);
+		ret = PTR_ERR(kioreq);
+		goto error_eventfd;
+	}
+
+	spin_lock_irqsave(&kioreq->lock, flags);
+	list_add_tail(&kioeventfd->list, &kioreq->ioeventfds);
+	spin_unlock_irqrestore(&kioreq->lock, flags);
+
+	mutex_unlock(&ioreq_lock);
+
+	return 0;
+
+error_eventfd:
+	eventfd_ctx_put(kioeventfd->eventfd);
+
+error_kfree:
+	kfree(kioeventfd);
+	return ret;
+}
+
+static int privcmd_ioeventfd_deassign(struct privcmd_ioeventfd *ioeventfd)
+{
+	struct privcmd_kernel_ioreq *kioreq, *tkioreq;
+	struct eventfd_ctx *eventfd;
+	unsigned long flags;
+	int ret = 0;
+
+	eventfd = eventfd_ctx_fdget(ioeventfd->event_fd);
+	if (IS_ERR(eventfd))
+		return PTR_ERR(eventfd);
+
+	mutex_lock(&ioreq_lock);
+	list_for_each_entry_safe(kioreq, tkioreq, &ioreq_list, list) {
+		struct privcmd_kernel_ioeventfd *kioeventfd, *tmp;
+		/*
+		 * kioreq fields can be accessed here without a lock as they are
+		 * never updated after being added to the ioreq_list.
+		 */
+		if (kioreq->dom != ioeventfd->dom ||
+		    kioreq->uioreq != ioeventfd->ioreq ||
+		    kioreq->vcpus != ioeventfd->vcpus)
+			continue;
+
+		spin_lock_irqsave(&kioreq->lock, flags);
+		list_for_each_entry_safe(kioeventfd, tmp, &kioreq->ioeventfds, list) {
+			if (eventfd == kioeventfd->eventfd) {
+				ioeventfd_free(kioeventfd);
+				spin_unlock_irqrestore(&kioreq->lock, flags);
+
+				if (list_empty(&kioreq->ioeventfds))
+					ioreq_free(kioreq);
+				goto unlock;
+			}
+		}
+		spin_unlock_irqrestore(&kioreq->lock, flags);
+		break;
+	}
+
+	pr_err("Ioeventfd isn't already assigned, dom: %u, addr: %llu\n",
+	       ioeventfd->dom, ioeventfd->addr);
+	ret = -ENODEV;
+
+unlock:
+	mutex_unlock(&ioreq_lock);
+	eventfd_ctx_put(eventfd);
+
+	return ret;
+}
+
+static long privcmd_ioctl_ioeventfd(struct file *file, void __user *udata)
+{
+	struct privcmd_data *data = file->private_data;
+	struct privcmd_ioeventfd ioeventfd;
+
+	if (copy_from_user(&ioeventfd, udata, sizeof(ioeventfd)))
+		return -EFAULT;
+
+	/* No other flags should be set */
+	if (ioeventfd.flags & ~PRIVCMD_IOEVENTFD_FLAG_DEASSIGN)
+		return -EINVAL;
+
+	/* If restriction is in place, check the domid matches */
+	if (data->domid != DOMID_INVALID && data->domid != ioeventfd.dom)
+		return -EPERM;
+
+	if (ioeventfd.flags & PRIVCMD_IOEVENTFD_FLAG_DEASSIGN)
+		return privcmd_ioeventfd_deassign(&ioeventfd);
+
+	return privcmd_ioeventfd_assign(&ioeventfd);
+}
+
+static void privcmd_ioeventfd_exit(void)
+{
+	struct privcmd_kernel_ioreq *kioreq, *tmp;
+	unsigned long flags;
+
+	mutex_lock(&ioreq_lock);
+	list_for_each_entry_safe(kioreq, tmp, &ioreq_list, list) {
+		struct privcmd_kernel_ioeventfd *kioeventfd, *tmp;
+
+		spin_lock_irqsave(&kioreq->lock, flags);
+		list_for_each_entry_safe(kioeventfd, tmp, &kioreq->ioeventfds, list)
+			ioeventfd_free(kioeventfd);
+		spin_unlock_irqrestore(&kioreq->lock, flags);
+
+		ioreq_free(kioreq);
+	}
+	mutex_unlock(&ioreq_lock);
+}
 #else
 static inline long privcmd_ioctl_irqfd(struct file *file, void __user *udata)
 {
@@ -1093,7 +1480,16 @@ static inline int privcmd_irqfd_init(void)
 static inline void privcmd_irqfd_exit(void)
 {
 }
-#endif /* CONFIG_XEN_PRIVCMD_IRQFD */
+
+static inline long privcmd_ioctl_ioeventfd(struct file *file, void __user *udata)
+{
+	return -EOPNOTSUPP;
+}
+
+static inline void privcmd_ioeventfd_exit(void)
+{
+}
+#endif /* CONFIG_XEN_PRIVCMD_EVENTFD */
 
 static long privcmd_ioctl(struct file *file,
 			  unsigned int cmd, unsigned long data)
@@ -1134,6 +1530,10 @@ static long privcmd_ioctl(struct file *file,
 		ret = privcmd_ioctl_irqfd(file, udata);
 		break;
 
+	case IOCTL_PRIVCMD_IOEVENTFD:
+		ret = privcmd_ioctl_ioeventfd(file, udata);
+		break;
+
 	default:
 		break;
 	}
@@ -1278,6 +1678,7 @@ static int __init privcmd_init(void)
 
 static void __exit privcmd_exit(void)
 {
+	privcmd_ioeventfd_exit();
 	privcmd_irqfd_exit();
 	misc_deregister(&privcmd_dev);
 	misc_deregister(&xen_privcmdbuf_dev);
diff --git a/include/uapi/xen/privcmd.h b/include/uapi/xen/privcmd.h
index 375718ba4ab6..ce71390f0024 100644
--- a/include/uapi/xen/privcmd.h
+++ b/include/uapi/xen/privcmd.h
@@ -110,6 +110,22 @@ struct privcmd_irqfd {
 	__u8 pad[2];
 };
 
+/* For privcmd_ioeventfd::flags */
+#define PRIVCMD_IOEVENTFD_FLAG_DEASSIGN (1 << 0)
+
+struct privcmd_ioeventfd {
+	void __user *ioreq;
+	unsigned int __user *ports;
+	__u64 addr;
+	__u32 addr_len;
+	__u32 event_fd;
+	__u32 vcpus;
+	__u32 vq;
+	__u32 flags;
+	domid_t dom;
+	__u8 pad[2];
+};
+
 /*
  * @cmd: IOCTL_PRIVCMD_HYPERCALL
  * @arg: &privcmd_hypercall_t
@@ -139,5 +155,7 @@ struct privcmd_irqfd {
 	_IOC(_IOC_NONE, 'P', 7, sizeof(struct privcmd_mmap_resource))
 #define IOCTL_PRIVCMD_IRQFD					\
 	_IOC(_IOC_NONE, 'P', 8, sizeof(struct privcmd_irqfd))
+#define IOCTL_PRIVCMD_IOEVENTFD					\
+	_IOC(_IOC_NONE, 'P', 9, sizeof(struct privcmd_ioeventfd))
 
 #endif /* __LINUX_PUBLIC_PRIVCMD_H__ */
diff --git a/include/xen/interface/hvm/ioreq.h b/include/xen/interface/hvm/ioreq.h
new file mode 100644
index 000000000000..b02cfeae7eb5
--- /dev/null
+++ b/include/xen/interface/hvm/ioreq.h
@@ -0,0 +1,51 @@
+/* SPDX-License-Identifier: MIT */
+/*
+ * ioreq.h: I/O request definitions for device models
+ * Copyright (c) 2004, Intel Corporation.
+ */
+
+#ifndef __XEN_PUBLIC_HVM_IOREQ_H__
+#define __XEN_PUBLIC_HVM_IOREQ_H__
+
+#define IOREQ_READ      1
+#define IOREQ_WRITE     0
+
+#define STATE_IOREQ_NONE        0
+#define STATE_IOREQ_READY       1
+#define STATE_IOREQ_INPROCESS   2
+#define STATE_IORESP_READY      3
+
+#define IOREQ_TYPE_PIO          0 /* pio */
+#define IOREQ_TYPE_COPY         1 /* mmio ops */
+#define IOREQ_TYPE_PCI_CONFIG   2
+#define IOREQ_TYPE_TIMEOFFSET   7
+#define IOREQ_TYPE_INVALIDATE   8 /* mapcache */
+
+/*
+ * VMExit dispatcher should cooperate with instruction decoder to
+ * prepare this structure and notify service OS and DM by sending
+ * virq.
+ *
+ * For I/O type IOREQ_TYPE_PCI_CONFIG, the physical address is formatted
+ * as follows:
+ *
+ * 63....48|47..40|39..35|34..32|31........0
+ * SEGMENT |BUS   |DEV   |FN    |OFFSET
+ */
+struct ioreq {
+	uint64_t addr;          /* physical address */
+	uint64_t data;          /* data (or paddr of data) */
+	uint32_t count;         /* for rep prefixes */
+	uint32_t size;          /* size in bytes */
+	uint32_t vp_eport;      /* evtchn for notifications to/from device model */
+	uint16_t _pad0;
+	uint8_t state:4;
+	uint8_t data_is_ptr:1;  /* if 1, data above is the guest paddr
+				 * of the real data to use. */
+	uint8_t dir:1;          /* 1=read, 0=write */
+	uint8_t df:1;
+	uint8_t _pad1:1;
+	uint8_t type;           /* I/O type */
+};
+
+#endif /* __XEN_PUBLIC_HVM_IOREQ_H__ */
-- 
2.31.1.272.g89b43f80a514



From xen-devel-bounces@lists.xenproject.org Mon Oct 09 11:30:30 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 09 Oct 2023 11:30:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614331.955346 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qpoSz-0000FV-Vo; Mon, 09 Oct 2023 11:30:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614331.955346; Mon, 09 Oct 2023 11:30: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 1qpoSz-0000FO-T5; Mon, 09 Oct 2023 11:30:29 +0000
Received: by outflank-mailman (input) for mailman id 614331;
 Mon, 09 Oct 2023 11:30: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 1qpoSy-0000FA-Ik
 for xen-devel@lists.xenproject.org; Mon, 09 Oct 2023 11:30: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 1qpoSy-0005VX-0S; Mon, 09 Oct 2023 11:30: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 1qpoSx-0001ap-Ov; Mon, 09 Oct 2023 11:30: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:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=wOW9OmiIK/DjWo6WXfbdZcIP+vtPhlOcm0qAiXzHG20=; b=VFeU9LC91jjS1RPDGKEHm/50Su
	RV0uk6sr2/LYjkHpve4N3pitb/gHAWGp3AsrXZbnq/r+nlQUREz4BoJNHme+zbpZXEz5fGYzsQKq3
	aUOesBQqwT/xkxNv/PHx85RfZA88Q/3Kus2Fkblfd9oM4Ne/WRpM4kl0uMLVKRehEpVg=;
Message-ID: <cc403bb2-2f32-4696-a248-7e8680ff4823@xen.org>
Date: Mon, 9 Oct 2023 12:30:25 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH for-4.18 v5] xen/pdx: Make CONFIG_PDX_COMPRESSION a common
 Kconfig option
Content-Language: en-GB
To: Andrew Cooper <andrew.cooper3@citrix.com>,
 Xen-devel <xen-devel@lists.xenproject.org>
Cc: Alejandro Vallejo <alejandro.vallejo@cloud.com>,
 Julien Grall <jgrall@amazon.com>, =?UTF-8?Q?Roger_Pau_Monn=C3=A9?=
 <roger.pau@citrix.com>, Shawn Anastasio <sanastasio@raptorengineering.com>,
 Oleksii Kurochko <oleksii.kurochko@gmail.com>,
 Henry Wang <Henry.Wang@arm.com>, George Dunlap
 <George.Dunlap@eu.citrix.com>, Jan Beulich <JBeulich@suse.com>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
References: <20231006144405.1078260-1-andrew.cooper3@citrix.com>
 <efc2b22e-6650-4c1f-b4cf-9971d4d08b49@xen.org>
 <b95fa9cd-2534-4d7a-9843-2bc71695655d@citrix.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <b95fa9cd-2534-4d7a-9843-2bc71695655d@citrix.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit



On 06/10/2023 17:01, Andrew Cooper wrote:
> On 06/10/2023 4:09 pm, Julien Grall wrote:
>>
>>
>> On 06/10/2023 15:44, Andrew Cooper wrote:
>>> From: Alejandro Vallejo <alejandro.vallejo@cloud.com>
>>>
>>> Adds a new compile-time flag to allow disabling PDX compression and
>>> compiles out compression-related code/data. It also shorts the pdx<->pfn
>>> conversion macros and creates stubs for masking functions.
>>>
>>> While at it, removes the old arch-defined CONFIG_HAS_PDX flag.
>>> Despite the
>>> illusion of choice, it was not optional.
>>>
>>> There are ARM and PPC platforms with sparse RAM banks - leave compression
>>> active by default there.  OTOH, there are no known production x86
>>> systems with
>>> sparse RAM banks, so disable compression.  This decision can be
>>> revisited if
>>> such a platform comes along.
>>
>> (Process remarks rather than the code itself)
>>
>> Jan is away this week so I want to make sure this doesn't go in without
>> him having a say.
>>
>> While I don't particularly care about the approach taken for x86, Jan
>> voiced concerned with this approach and so far I didn't see any
>> conclusion. If there is any, then please point me to them.
>>
>> For the record, the objections from Jan are in [1]. If we want to ignore
>> them, then I think we need a vote. Possibly only from the x86 folks (?).
> 
> 
> What do you think the 2 x86 maintainer tags on this patch in this exact
> form, 

Have you actually looked at the timeline before writing this e-mail?

15:44 -> You sent the series
16:09 -> I have asked for a vote/second review
16:18 -> Roger provided a second reviewed-by

 > The vote has already concluded.

Indeed. But this was only after my e-mail was sent. I would have replied 
differently if Roger had replied before hand.

I am merely trying to make sure we are following the process and don't 
get things committed without unnaddressed objections (you likely 
remember the series I am talking about...).

Next time, I suggest to check the timeline before implying that I am 
putting roadblocks.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Mon Oct 09 12:03:06 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 09 Oct 2023 12:03:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614350.955356 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qpoyL-0006pl-M3; Mon, 09 Oct 2023 12:02:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614350.955356; Mon, 09 Oct 2023 12:02: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 1qpoyL-0006pe-If; Mon, 09 Oct 2023 12:02:53 +0000
Received: by outflank-mailman (input) for mailman id 614350;
 Mon, 09 Oct 2023 12:02: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 1qpoyK-0006pN-98; Mon, 09 Oct 2023 12:02: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 1qpoyK-0006It-5B; Mon, 09 Oct 2023 12:02: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 1qpoyJ-0005kC-M2; Mon, 09 Oct 2023 12:02:51 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qpoyJ-0001kf-Ld; Mon, 09 Oct 2023 12:02: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=iz6jYS4A0VhRNuEBXLlqwdVvJc2G0HAkpdoMw11GAlk=; b=odL4+MV/mbg76u532RCkILJ5d6
	qy+2+Vi8I0YHhctPEuEpLCCKeukld+rRq0W96WSooUGeBjt6MK/FZCxk8D1JaAvQySLxp2A0YcXtq
	fLhtyec637KFgrgXgQ+6MgysBqmtdLrucjqw2/odjwCoC34ppj2XXh+iPFhed3d+J86M=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183323-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 183323: tolerable FAIL
X-Osstest-Failures:
    xen-unstable:test-amd64-i386-qemuu-rhel6hvm-amd:xen-install:fail:heisenbug
    xen-unstable:test-armhf-armhf-libvirt-raw:guest-start/debian.repeat:fail:heisenbug
    xen-unstable:test-amd64-i386-xl-vhd:xen-install:fail:heisenbug
    xen-unstable:test-amd64-i386-livepatch:xen-install:fail:heisenbug
    xen-unstable:test-amd64-i386-pair:xen-install/dst_host: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-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-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-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-win7-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-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check: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-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-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-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-amd64-amd64-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-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-arndale:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm: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-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-libvirt-qcow2:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=ffa1437686712045953c33c5e77a4ebdd9973916
X-Osstest-Versions-That:
    xen=ffa1437686712045953c33c5e77a4ebdd9973916
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 09 Oct 2023 12:02:51 +0000

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

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-amd64-i386-qemuu-rhel6hvm-amd 7 xen-install fail in 183319 pass in 183323
 test-armhf-armhf-libvirt-raw 17 guest-start/debian.repeat fail in 183319 pass in 183323
 test-amd64-i386-xl-vhd        7 xen-install                fail pass in 183319
 test-amd64-i386-livepatch     7 xen-install                fail pass in 183319
 test-amd64-i386-pair         11 xen-install/dst_host       fail pass in 183319

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183319
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183319
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 183319
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183319
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183319
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183319
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 183319
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183319
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183319
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 183319
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 183319
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183319
 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      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-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-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-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-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-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-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-libvirt-qcow2 14 migrate-support-check        fail never pass

version targeted for testing:
 xen                  ffa1437686712045953c33c5e77a4ebdd9973916
baseline version:
 xen                  ffa1437686712045953c33c5e77a4ebdd9973916

Last test of basis   183323  2023-10-09 01:53:35 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                                    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                                         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                                       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


Published tested tree is already up to date.



From xen-devel-bounces@lists.xenproject.org Mon Oct 09 12:51:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 09 Oct 2023 12:51:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614359.955367 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qppjh-000793-8M; Mon, 09 Oct 2023 12:51:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614359.955367; Mon, 09 Oct 2023 12: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 1qppjh-00078w-3j; Mon, 09 Oct 2023 12:51:49 +0000
Received: by outflank-mailman (input) for mailman id 614359;
 Mon, 09 Oct 2023 12:51: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=nTJG=FX=cloud.com=george.dunlap@srs-se1.protection.inumbo.net>)
 id 1qppjf-00078l-Tm
 for xen-devel@lists.xenproject.org; Mon, 09 Oct 2023 12:51:47 +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 9adc7897-66a2-11ee-98d3-6d05b1d4d9a1;
 Mon, 09 Oct 2023 14:51:46 +0200 (CEST)
Received: by mail-wr1-x435.google.com with SMTP id
 ffacd0b85a97d-313e742a787so2652804f8f.1
 for <xen-devel@lists.xenproject.org>; Mon, 09 Oct 2023 05:51:46 -0700 (PDT)
Received: from georged-x-u.eng.citrite.net ([185.25.67.249])
 by smtp.gmail.com with ESMTPSA id
 c16-20020a5d4f10000000b00324ae863ac1sm9589576wru.35.2023.10.09.05.51.45
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 09 Oct 2023 05:51: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: 9adc7897-66a2-11ee-98d3-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1696855905; x=1697460705; 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=WP8vXvNB2nz+9RrTuxTPylfUNyGiJI34/c05e47LP0Q=;
        b=DaXpOcXIMrmriEtb6+fCAgRWlyl9d3XW6866MWeKTm6WYXK2+D1rs+VPaD+hXWqgzf
         qBI+ohXUo85sa60QpYSAfIrvctF9ScRSgiKYN5s4PCYDCR+b34L/dp0vQrpJ82xSbslA
         8POObYE9wZ/9sYUtnbK6RZVDq9luNGieDGFe4=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1696855905; x=1697460705;
        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=WP8vXvNB2nz+9RrTuxTPylfUNyGiJI34/c05e47LP0Q=;
        b=Q2/Knv7qUx/StnBfLCDr3kWqZmNJ+L0xymz503QOIhX4s+pgQ0HzXoUFNSKkHGAxen
         7FsOEH6E5IB7w4Wt47SP+pi2/6T1gptfdRAIfutxRzBoCzooqmNma6pNZBH5Z3L6YVU4
         FQx+/j8NgjqBuOYWuIH1pS6GMVwhWTsZkuaSbeTVIFYSSE8EugemxfEUzdzYkyVTo0ET
         AI1M8ePevDRmFEpvOfrEv9Rml9fI6wsPOsk4bOs2yzLQvCX5lg13SaGC2TByxSRn6e74
         7vABQzltaWgB7Ghjbq0tstqAYSMb8w4ayoSwP9zAXhOgdOxvlwBhA29nTQRrK0PJQWGD
         gMqw==
X-Gm-Message-State: AOJu0YynuxKLsSqacMUmpySDy3ENyVoJqxMs8cFdR88gEBwAIF0cYChR
	8GpA81hub7AGL+MQZQrRXaEr3oLefyQIsHpUm5c=
X-Google-Smtp-Source: AGHT+IHifaENnhwP4o8Lwd6f6H2t+N+EjdW8I/OAgl92qyJPbDMNBUEMdUqtmx1tFRzPjiU/NC9ZNQ==
X-Received: by 2002:a5d:658e:0:b0:329:6b53:2c82 with SMTP id q14-20020a5d658e000000b003296b532c82mr7243303wru.31.1696855905626;
        Mon, 09 Oct 2023 05:51:45 -0700 (PDT)
From: George Dunlap <george.dunlap@cloud.com>
To: xen-devel@lists.xenproject.org
Cc: Olaf Hering <olaf@aepfle.de>,
	Henry Wang <Henry.Wang@arm.com>
Subject: [PATCH for-4.18 0/5] xenalyze: Miscellaneous fixes
Date: Mon,  9 Oct 2023 13:51:32 +0100
Message-Id: <20231009125137.1329146-1-george.dunlap@cloud.com>
X-Mailer: git-send-email 2.25.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

None of these are critical; but they're also in a fairly low
criticality part of the code.  I'd be fine with either putting them in
now or waiting until 4.19.




From xen-devel-bounces@lists.xenproject.org Mon Oct 09 12:51:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 09 Oct 2023 12:51:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614361.955386 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qppji-0007cj-QY; Mon, 09 Oct 2023 12:51:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614361.955386; Mon, 09 Oct 2023 12:51: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 1qppji-0007cc-NX; Mon, 09 Oct 2023 12:51:50 +0000
Received: by outflank-mailman (input) for mailman id 614361;
 Mon, 09 Oct 2023 12:51: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=nTJG=FX=cloud.com=george.dunlap@srs-se1.protection.inumbo.net>)
 id 1qppjh-00078l-Ol
 for xen-devel@lists.xenproject.org; Mon, 09 Oct 2023 12:51:49 +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 9c74c572-66a2-11ee-98d3-6d05b1d4d9a1;
 Mon, 09 Oct 2023 14:51:49 +0200 (CEST)
Received: by mail-wr1-x429.google.com with SMTP id
 ffacd0b85a97d-307d58b3efbso4066747f8f.0
 for <xen-devel@lists.xenproject.org>; Mon, 09 Oct 2023 05:51:49 -0700 (PDT)
Received: from georged-x-u.eng.citrite.net ([185.25.67.249])
 by smtp.gmail.com with ESMTPSA id
 c16-20020a5d4f10000000b00324ae863ac1sm9589576wru.35.2023.10.09.05.51.48
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 09 Oct 2023 05:51: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: 9c74c572-66a2-11ee-98d3-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1696855908; x=1697460708; 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=THzNB7D3yfsNIFN3S2Q+YKzkNqwGb3jd/DGHxsmTa/0=;
        b=UQ+qzgUsGoEMX6kMisYTtrX9leU2grjl0fmR+3Wl1h4Kwd8Low9YPfEWzjUINfXq6X
         sTcJzPVWzNx3cH+DuU4AEGu/Y/LtZQbU99bjmZ7RcodQTKkwmBYfaOdZvRUsPgXQTN+D
         WMoqRjuMYdemuq/kfs4h1lJGso0TyqrcorOrc=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1696855908; x=1697460708;
        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=THzNB7D3yfsNIFN3S2Q+YKzkNqwGb3jd/DGHxsmTa/0=;
        b=mA5g8XUIjnJXHxjGCBmOpB3J9NcjrPS+tN6Pg9pQD/UcuEnc8NkxcO9I3m4mQWFNyj
         TmCfBI+WWFmgOBEAjOsM4+Vh7kSw1d11OkzCLb0PulGHzFl3eIa0ArVvOn6YEXMu2YkZ
         KyU6OCPz/q4IBARGr3Q6+XG93vCOIpGN0QA5mf1ILnLfzfJXKJQNk9Bvn7EOFbSNUcuy
         mDEsQYa1vyt6kxDg+xkCWEGQxXrP+XAq+iR4aDle9vrA/g4eLQNhdmi9ufsbNMRf2b1A
         wZP5HdgHaX0bVzFQhSe2Yn+qvGRYIWmXfcAVfuyQDNHjLumDWYuNexmfDsiaNTyfFfh3
         cmLg==
X-Gm-Message-State: AOJu0YyK+YQtMuDAWh7CBy5uSamnoXzAxMJ0+yQkfErWAZkoFeQrHBza
	nwN5WSBmAXs7Lv7L7dSBEa1TfAxcoGrD9sKzWK0=
X-Google-Smtp-Source: AGHT+IE0KzyEMxN/4/m/o1Fbe6ulKEZNjItfXCB2hJEiVHe7D+kt9WF0YiVDc6JrIceOeblEGvckvA==
X-Received: by 2002:adf:f20c:0:b0:320:77f:a982 with SMTP id p12-20020adff20c000000b00320077fa982mr14105036wro.45.1696855908547;
        Mon, 09 Oct 2023 05:51:48 -0700 (PDT)
From: George Dunlap <george.dunlap@cloud.com>
To: xen-devel@lists.xenproject.org
Cc: Olaf Hering <olaf@aepfle.de>,
	Henry Wang <Henry.Wang@arm.com>,
	George Dunlap <george.dunlap@cloud.com>,
	Anthony Perard <anthony.perard@cloud.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Xenia Ragiodakou <xenia.ragiadakou@amd.com>
Subject: [PATCH for-4.18 5/5] xenalyze: Reduce warnings about leaving a vcpu in INIT
Date: Mon,  9 Oct 2023 13:51:37 +0100
Message-Id: <20231009125137.1329146-6-george.dunlap@cloud.com>
X-Mailer: git-send-email 2.25.1
In-Reply-To: <20231009125137.1329146-1-george.dunlap@cloud.com>
References: <20231009125137.1329146-1-george.dunlap@cloud.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

We warn when we see data for a vcpu moving into a non-RUNNING state,
just so that people know why we're ignoring it.  On full traces, this
happens only once.  However, if the trace was limited to a subset of
pcpus, then this will happen every time the domain in question is
woken on that pcpu.

Add a 'delayed_init' flag to the vcpu struct to indicate when a vcpu
has experienced a delayed init.  Print a warning message once when
entering the state, and once when leaving it.

Signed-off-by: George Dunlap <george.dunlap@cloud.com>
---
Release justification: By removing extraneous output which makes the
tool annoying to use, this could be considered a bug fix; a minor one,
but also in a non-critical part of the code.

CC: Anthony Perard <anthony.perard@cloud.com>
CC: Stefano Stabellini <sstabellini@kernel.org>
CC: Xenia Ragiodakou <xenia.ragiadakou@amd.com>
---
 tools/xentrace/xenalyze.c | 13 ++++++++++---
 1 file changed, 10 insertions(+), 3 deletions(-)

diff --git a/tools/xentrace/xenalyze.c b/tools/xentrace/xenalyze.c
index 4b6db59d87..ce6a85d50b 100644
--- a/tools/xentrace/xenalyze.c
+++ b/tools/xentrace/xenalyze.c
@@ -1625,7 +1625,7 @@ struct vlapic_struct {
 struct vcpu_data {
     int vid;
     struct domain_data *d; /* up-pointer */
-    unsigned activated:1;
+    unsigned activated:1, delayed_init:1;
 
     int guest_paging_levels;
 
@@ -6979,10 +6979,17 @@ void vcpu_start(struct pcpu_info *p, struct vcpu_data *v,
      * bring a vcpu out of INIT until it's seen to be actually
      * running somewhere. */
     if ( new_runstate != RUNSTATE_RUNNING ) {
-        fprintf(warn, "First schedule for d%dv%d doesn't take us into a running state; leaving INIT\n",
-                v->d->did, v->vid);
+        if ( !v->delayed_init ) {
+            fprintf(warn, "First schedule for d%dv%d doesn't take us into a running state; leaving in INIT\n",
+                    v->d->did, v->vid);
+            v->delayed_init = 1;
+        }
 
         return;
+    } else if ( v->delayed_init ) {
+        fprintf(warn, "d%dv%d RUNSTATE_RUNNING detected, leaving INIT",
+                v->d->did, v->vid);
+        v->delayed_init = 0;
     }
 
     tsc = ri_tsc;
-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Mon Oct 09 12:51:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 09 Oct 2023 12:51:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614360.955372 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qppjh-0007CK-HX; Mon, 09 Oct 2023 12:51:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614360.955372; Mon, 09 Oct 2023 12: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 1qppjh-0007BN-B2; Mon, 09 Oct 2023 12:51:49 +0000
Received: by outflank-mailman (input) for mailman id 614360;
 Mon, 09 Oct 2023 12:51: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=nTJG=FX=cloud.com=george.dunlap@srs-se1.protection.inumbo.net>)
 id 1qppjg-00078l-HL
 for xen-devel@lists.xenproject.org; Mon, 09 Oct 2023 12:51:48 +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 9b0f8110-66a2-11ee-98d3-6d05b1d4d9a1;
 Mon, 09 Oct 2023 14:51:46 +0200 (CEST)
Received: by mail-wr1-x42a.google.com with SMTP id
 ffacd0b85a97d-3231d6504e1so4169940f8f.2
 for <xen-devel@lists.xenproject.org>; Mon, 09 Oct 2023 05:51:46 -0700 (PDT)
Received: from georged-x-u.eng.citrite.net ([185.25.67.249])
 by smtp.gmail.com with ESMTPSA id
 c16-20020a5d4f10000000b00324ae863ac1sm9589576wru.35.2023.10.09.05.51.45
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 09 Oct 2023 05:51: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: 9b0f8110-66a2-11ee-98d3-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1696855906; x=1697460706; 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=6stkbuoMjurJJxIep2GjOtQsiPgi52HYjGuQHL8XeTA=;
        b=UkwUn+FIuR+viR52eNz1ac04R4sbTeOiJyacIMZ4XTIkFtKpfF6OFY2BvzCCi2nZ4K
         4cdLS3GE4lL+BtbmnkQayh3EG+0h5MlL6G0YefndyYQfu+s253UQa6L5va9AIFwhLymI
         0/GEQrAOlwLUOaPQ6ewFiZJyGHd3jS4ubhI5I=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1696855906; x=1697460706;
        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=6stkbuoMjurJJxIep2GjOtQsiPgi52HYjGuQHL8XeTA=;
        b=hWTGRbPc1WXA1Jjy+tkdnk39Wxn1Bg+2uqI5SPxEkKdtb4dT+0hxhLe8GB4YWWHSMI
         Gbm2v3NHadNubN+u1F5KZ2JgbiE9/VDx84aJDZt3+TuzVt+IOIFJXgpe8z2Q5uWTld02
         RlFam3QEVl3ZVYzHaaYE8AK3MKJ85UWUY3HJb2Uf2SxGITHDo0nZvsDB/MmBBgR4kMMV
         tSlxJFYo86DwybE2sT84OGvvV+34WcpAJ5fKCg3oySkg3e39bUHH221RxTEyGIA/0nri
         UEEA/10NKLvVEucOWZuocbNUGYUZnFNLShBWpqV+/yXEA4qlZ6vi3HF2rJC6I3qj19o2
         vCpg==
X-Gm-Message-State: AOJu0YxdbuprtNlDIZX7wbm+i0AuGYT/o3Hj5SOy2w9loNblAiyqtq48
	43aqkqXdZeenGzPpG5Df+J//9G8JFRgad66rYmI=
X-Google-Smtp-Source: AGHT+IHlGUQPPC9qfmT0Qyh34OC4lfMNEfG2cjBVEKz0WNNE916f49D85GHpAAladmXXCTSP3Uq15Q==
X-Received: by 2002:a5d:4cc3:0:b0:31f:e761:d47c with SMTP id c3-20020a5d4cc3000000b0031fe761d47cmr13041144wrt.32.1696855906074;
        Mon, 09 Oct 2023 05:51:46 -0700 (PDT)
From: George Dunlap <george.dunlap@cloud.com>
To: xen-devel@lists.xenproject.org
Cc: Olaf Hering <olaf@aepfle.de>,
	Henry Wang <Henry.Wang@arm.com>,
	George Dunlap <george.dunlap@cloud.com>,
	Anthony Perard <anthony.perard@cloud.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Xenia Ragiodakou <xenia.ragiadakou@amd.com>
Subject: [PATCH for-4.18 1/5] xenalyze: Only accumulate data from one vmexit without a handler
Date: Mon,  9 Oct 2023 13:51:33 +0100
Message-Id: <20231009125137.1329146-2-george.dunlap@cloud.com>
X-Mailer: git-send-email 2.25.1
In-Reply-To: <20231009125137.1329146-1-george.dunlap@cloud.com>
References: <20231009125137.1329146-1-george.dunlap@cloud.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

If a vmentry/exit arc unexpectedly doesn't have a handler, we throw an
error, and then log the information under HVM event 0; thus those
particular traces within the vmexit reason will have stats gathered,
and will show up with "(no handler)".  This is useful in the event
that there are unusual paths through the hypervisor which don't have
trace points.

However, if there are more than one of these, then although we detect and warn
that this is happening, we subsequently continue to stuff data about all exits
into that one exit, even though we only show it in one place.

Instead, refator things to only allow a single exit reason to be
accumulated into any given event.

Also put a comment explaining what's going on, and how to fix it.

Signed-off-by: George Dunlap <george.dunlap@cloud.com>
---
Release justification: This is a bug fix; a minor one, but also in a
non-critical part of the code.

CC: Anthony Perard <anthony.perard@cloud.com>
CC: Stefano Stabellini <sstabellini@kernel.org>
CC: Xenia Ragiodakou <xenia.ragiadakou@amd.com>
---
 tools/xentrace/xenalyze.c | 34 ++++++++++++++++++++++++++--------
 1 file changed, 26 insertions(+), 8 deletions(-)

diff --git a/tools/xentrace/xenalyze.c b/tools/xentrace/xenalyze.c
index 4cb67062c9..1359e096f9 100644
--- a/tools/xentrace/xenalyze.c
+++ b/tools/xentrace/xenalyze.c
@@ -4652,6 +4652,19 @@ void hvm_generic_postprocess(struct hvm_data *h)
                       ? "[clipped]"
                       : h->exit_reason_name[h->exit_reason]);
             warned[h->exit_reason]=1;
+
+            /* 
+             * NB that we don't return here; the result will be that `evt`
+             * will be "0", and there will be a "(no handler)" entry for the
+             * given VMEXIT.
+             * 
+             * This does mean that if two different exits have no HVM
+             * handlers, that only the first one will accumulate data;
+             * if accumulating a separate "(no handler)" data for more
+             * than one exit reason is needed, we'll have to make Yet
+             * Another Array.  But for now, since we try to avoid
+             * it happening, just tolerate it.
+             */ 
         }
     }
 
@@ -4664,18 +4677,19 @@ void hvm_generic_postprocess(struct hvm_data *h)
     }
 
     if(opt.summary_info) {
-        update_cycles(&h->summary.generic[evt],
-                       h->arc_cycles);
-
         /* NB that h->exit_reason may be 0, so we offset by 1 */
         if ( registered[evt] )
         {
             static unsigned warned[HVM_EXIT_REASON_MAX] = { 0 };
-            if ( registered[evt] != h->exit_reason+1 && !warned[h->exit_reason])
+            if ( registered[evt] != h->exit_reason+1 )
             {
-                fprintf(warn, "%s: HVM evt %lx in %x and %x!\n",
-                        __func__, evt, registered[evt]-1, h->exit_reason);
-                warned[h->exit_reason]=1;
+                if ( !warned[h->exit_reason] )
+                {
+                    fprintf(warn, "%s: HVM evt %lx in %x and %x!\n",
+                            __func__, evt, registered[evt]-1, h->exit_reason);
+                    warned[h->exit_reason]=1;
+                }
+                return;
             }
         }
         else
@@ -4686,7 +4700,11 @@ void hvm_generic_postprocess(struct hvm_data *h)
                         __func__, ret);
             registered[evt]=h->exit_reason+1;
         }
-        /* HLT checked at hvm_vmexit_close() */
+
+        update_cycles(&h->summary.generic[evt],
+                       h->arc_cycles);
+
+       /* HLT checked at hvm_vmexit_close() */
     }
 }
 
-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Mon Oct 09 12:51:55 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 09 Oct 2023 12:51:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614362.955396 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qppjn-0007ve-2V; Mon, 09 Oct 2023 12:51:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614362.955396; Mon, 09 Oct 2023 12: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 1qppjm-0007vX-Ve; Mon, 09 Oct 2023 12:51:54 +0000
Received: by outflank-mailman (input) for mailman id 614362;
 Mon, 09 Oct 2023 12:51: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=nTJG=FX=cloud.com=george.dunlap@srs-se1.protection.inumbo.net>)
 id 1qppjl-0007s6-7M
 for xen-devel@lists.xenproject.org; Mon, 09 Oct 2023 12:51:53 +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 9c46ed85-66a2-11ee-9b0d-b553b5be7939;
 Mon, 09 Oct 2023 14:51:48 +0200 (CEST)
Received: by mail-wr1-x42f.google.com with SMTP id
 ffacd0b85a97d-31c5cac3ae2so4057909f8f.3
 for <xen-devel@lists.xenproject.org>; Mon, 09 Oct 2023 05:51:48 -0700 (PDT)
Received: from georged-x-u.eng.citrite.net ([185.25.67.249])
 by smtp.gmail.com with ESMTPSA id
 c16-20020a5d4f10000000b00324ae863ac1sm9589576wru.35.2023.10.09.05.51.47
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 09 Oct 2023 05:51: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: 9c46ed85-66a2-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1696855908; x=1697460708; 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=Nhjljp1hIYeTK8QNgAPsHEKUsnXQ5nu3twtO4N6FJQ8=;
        b=g6KASNx/Bog4uPepRD/A2p29Ni5PXtZQviC9mw0jQ2FyEbJqgBIC4ef3Uwqfy4pyTV
         czQzXvOl+qI+ZHjdojQfSTd6GHw0IVWjdJJdMVKlrXYCRFpzX+M+aKvzYo2OHuC35HfI
         lyk0DSYZ1FHt9RbRFMT35t0UFm6XXPa9zhJFQ=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1696855908; x=1697460708;
        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=Nhjljp1hIYeTK8QNgAPsHEKUsnXQ5nu3twtO4N6FJQ8=;
        b=KwlOSQJl4I22deEogY5S3beZyF2+H/MQVb9i6efWRMVKqA48VotPzYVGm7GLlyh8sk
         YnNOQmJLnzBe5masAmzhura8jeOnAc3ZQF5/9KQMKu10F0UkzATsD7mkLZ4OWxfvRqcM
         Btu/zzMlvM137Niv+Ahn5Y8CIRAhymvwJXSLEVno5Bq45LpSPH2Fdbmgoy1LyWmgecru
         Pby8NUOGXD55xFB5Srqxnbvx4F+vTWLpWrzQTgNbWODSHxWHdQY4ODYkT7y1RCFdA0k0
         ax43WNztJSDcACdy1JlohYHxNaMVXAMStmwhtSzeJ1klevumwHaYp7SBWxiDp6Q+Sk7h
         sSug==
X-Gm-Message-State: AOJu0YyA+wPP4G4HLerib43CoLIFWl182OJkrrjfBuftCqI6IKzVcPRA
	LeHXyJc08JK0cHno6U2nkvJtwvuZygTvVxCjNU0=
X-Google-Smtp-Source: AGHT+IGAIWOrXAv49CGPWktBV8PFQWL29FrsyRsuJ2gKs92LU+0NH/i0uCDvwzkLHmCwqrXMt+hN3Q==
X-Received: by 2002:a05:6000:110b:b0:31f:a259:73c with SMTP id z11-20020a056000110b00b0031fa259073cmr13213365wrw.27.1696855908096;
        Mon, 09 Oct 2023 05:51:48 -0700 (PDT)
From: George Dunlap <george.dunlap@cloud.com>
To: xen-devel@lists.xenproject.org
Cc: Olaf Hering <olaf@aepfle.de>,
	Henry Wang <Henry.Wang@arm.com>,
	George Dunlap <george.dunlap@cloud.com>,
	Anthony Perard <anthony.perard@cloud.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Xenia Ragiodakou <xenia.ragiadakou@amd.com>
Subject: [PATCH for-4.18 4/5] xenalyze: Fix interrupt EIP reporting
Date: Mon,  9 Oct 2023 13:51:36 +0100
Message-Id: <20231009125137.1329146-5-george.dunlap@cloud.com>
X-Mailer: git-send-email 2.25.1
In-Reply-To: <20231009125137.1329146-1-george.dunlap@cloud.com>
References: <20231009125137.1329146-1-george.dunlap@cloud.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

EIP lists are generalized across several use cases.  For many of them,
it make sense to have a cycle per sample; but not really for interrupt
EIP lists.  For this reason, it normally just passes 0 as for the tsc
value, which will in turn down at the bottom of update_cycles(),
update only the summary.event_count, but nothing else.

The dump_eip() function attempted to handle this by calling the generic
cycle print handler if the summary contained *any* cycles, and by collecting
and printing its own stats, based solely on counts, if not.

Unfortunately, it used the wrong element for this: it collected the
total from samples.count rather samples.event_count; in the case that
there are no cycles, this will always be zero.  It then divided by
this zero value.  This results in output that looked like this:

```
  ffff89d29656                                             :        0  -nan%
  ffff89d298b6                                             :        0  -nan%
  ffff89d298c0                                             :        0  -nan%
```

It's better than nothing, but a lot less informative than one would
like.

Use event_count rather than count for collecting the total, and the
reporting when there are no cycles in the summary information.  This results
in output that looks like this:

```
   ffff89d29656                                             :        2  1.21%
   ffff89d298b6                                             :        1  0.61%
   ffff89d298c0                                             :        1  0.61%
```

Signed-off-by: George Dunlap <george.dunlap@cloud.com>
---
Rationale: This is a bug fix.  It's a minor one, but it's also in a
non-critical part of the code.

CC: Anthony Perard <anthony.perard@cloud.com>
CC: Stefano Stabellini <sstabellini@kernel.org>
CC: Xenia Ragiodakou <xenia.ragiadakou@amd.com>
---
 tools/xentrace/xenalyze.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/tools/xentrace/xenalyze.c b/tools/xentrace/xenalyze.c
index 2faf66500d..4b6db59d87 100644
--- a/tools/xentrace/xenalyze.c
+++ b/tools/xentrace/xenalyze.c
@@ -2866,7 +2866,7 @@ void dump_eip(struct eip_list_struct *head) {
 
     for(p=head; p; p=p->next)
     {
-        total += p->summary.count;
+        total += p->summary.event_count;
         N++;
     }
 
@@ -2901,8 +2901,8 @@ void dump_eip(struct eip_list_struct *head) {
                           p->eip,
                           find_symbol(p->eip));
             printf(" %7d %5.2lf%%\n",
-                   p->summary.count,
-                   ((double)p->summary.count*100)/total);
+                   p->summary.event_count,
+                   ((double)p->summary.event_count*100)/total);
         }
 
 
-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Mon Oct 09 12:51:55 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 09 Oct 2023 12:51:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614363.955401 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qppjn-0007yy-Dk; Mon, 09 Oct 2023 12:51:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614363.955401; Mon, 09 Oct 2023 12: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 1qppjn-0007yb-7z; Mon, 09 Oct 2023 12:51:55 +0000
Received: by outflank-mailman (input) for mailman id 614363;
 Mon, 09 Oct 2023 12:51: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=nTJG=FX=cloud.com=george.dunlap@srs-se1.protection.inumbo.net>)
 id 1qppjl-0007s6-EK
 for xen-devel@lists.xenproject.org; Mon, 09 Oct 2023 12:51:53 +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 9b7511a3-66a2-11ee-9b0d-b553b5be7939;
 Mon, 09 Oct 2023 14:51:47 +0200 (CEST)
Received: by mail-wr1-x42f.google.com with SMTP id
 ffacd0b85a97d-3231df68584so4187563f8f.1
 for <xen-devel@lists.xenproject.org>; Mon, 09 Oct 2023 05:51:47 -0700 (PDT)
Received: from georged-x-u.eng.citrite.net ([185.25.67.249])
 by smtp.gmail.com with ESMTPSA id
 c16-20020a5d4f10000000b00324ae863ac1sm9589576wru.35.2023.10.09.05.51.46
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 09 Oct 2023 05:51: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: 9b7511a3-66a2-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1696855907; x=1697460707; 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=DD/Rtcmf93B68CFAL5jWDoRcvsTne4a1HEEQsNM+F40=;
        b=l0sln6m8nBF7dF4t8pdCSij8Tgs86p94L3ICslQuE09vCyXcufLg3uKedeLUWtv3vU
         4b+1Ghiu82S/8JHmiEQpyUFqAIaYFDaPsC/rxkzFpuB80O3LZsIlTx5s2EeTSBuQmYZR
         B9I4rqSorWCL6wpQ8JNHMEPvfaFUQoMA+KsHk=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1696855907; x=1697460707;
        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=DD/Rtcmf93B68CFAL5jWDoRcvsTne4a1HEEQsNM+F40=;
        b=UKK4d24BjZQkpG7ClJA2OxJNjwssIDjAH5pUb4DwudvIa3dDStmVNnksMPJZTIzNX5
         MPDoAqzViH11rbzfYO2ulLcQaOK2BbWrczh/PDqiyHKwQIpR+OiRexy1L+AekOEFaRO3
         +/jsPpn6UNIJGrMr7gvr/61qUYZtf+ul4UWPrxi2H00A0Jv/JlkzuOcydIC+sCQq6jFh
         PmndvV3nhX6kJ0hHD2/FiP34+hs95gTxYXs3Mvs1ezU9QRNF/lD89QlayfYalsojHOIa
         Jq6RH+w7dkVT4COzjA6X70coBhqxdlNlyuHkgKtmDHfI+0CbeLl5nEFNvYApkToy8Hba
         gO/g==
X-Gm-Message-State: AOJu0Yz0lQj/Twh4f5RZBLs8FC/8C/n0CrnXC6I/5idii+dm0WlXECH9
	cAcVbvS8qxn5xW4oqqDSCkiWX4jPKvTrla1wh5I=
X-Google-Smtp-Source: AGHT+IHWmt4KguiMPo7Vjsf42uLk6RSQqhQqtBY8Q5VlJ+kitI+BnI6wYokp+Gg5XEHJcYs8F0a22g==
X-Received: by 2002:a5d:6681:0:b0:317:618a:c72 with SMTP id l1-20020a5d6681000000b00317618a0c72mr12976740wru.64.1696855906869;
        Mon, 09 Oct 2023 05:51:46 -0700 (PDT)
From: George Dunlap <george.dunlap@cloud.com>
To: xen-devel@lists.xenproject.org
Cc: Olaf Hering <olaf@aepfle.de>,
	Henry Wang <Henry.Wang@arm.com>,
	George Dunlap <george.dunlap@cloud.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Xenia Ragiadakou <xenia.ragiadakou@amd.com>,
	Anthony Perard <anthony.perard@cloud.com>
Subject: [PATCH for-4.18 2/5] xenalyze: AMD's VMEXIT_VINTR doesn't need a trace record
Date: Mon,  9 Oct 2023 13:51:34 +0100
Message-Id: <20231009125137.1329146-3-george.dunlap@cloud.com>
X-Mailer: git-send-email 2.25.1
In-Reply-To: <20231009125137.1329146-1-george.dunlap@cloud.com>
References: <20231009125137.1329146-1-george.dunlap@cloud.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Just like Intel's PENDING_VIRT_INTR, AMD's VINTR doesn't need an HVM
trace record.  Expect that.

Signed-off-by: George Dunlap <george.dunlap@cloud.com>
---
Release justification: This is a bug fix.  It's a *very* small one,
but then the code path is not very critical either.

CC: Stefano Stabellini <sstabellini@kernel.org>
CC: Xenia Ragiadakou <xenia.ragiadakou@amd.com>
CC: Anthony Perard <anthony.perard@cloud.com>
---
 tools/xentrace/xenalyze.c | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/tools/xentrace/xenalyze.c b/tools/xentrace/xenalyze.c
index 1359e096f9..fc25ac3589 100644
--- a/tools/xentrace/xenalyze.c
+++ b/tools/xentrace/xenalyze.c
@@ -4628,6 +4628,13 @@ void hvm_generic_postprocess(struct hvm_data *h)
         /* Some exits we don't expect a handler; just return */
         if(opt.svm_mode)
         {
+            switch(h->exit_reason)
+            {
+            case VMEXIT_VINTR: /* Equivalent of PENDING_VIRT_INTR */
+                return;
+            default:
+                break;
+            }
         }
         else
         {
-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Mon Oct 09 12:51:55 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 09 Oct 2023 12:51:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614364.955406 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qppjn-00085C-O2; Mon, 09 Oct 2023 12:51:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614364.955406; Mon, 09 Oct 2023 12: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 1qppjn-00082y-Is; Mon, 09 Oct 2023 12:51:55 +0000
Received: by outflank-mailman (input) for mailman id 614364;
 Mon, 09 Oct 2023 12:51: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=nTJG=FX=cloud.com=george.dunlap@srs-se1.protection.inumbo.net>)
 id 1qppjm-0007s6-43
 for xen-devel@lists.xenproject.org; Mon, 09 Oct 2023 12:51:54 +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 9c04f31c-66a2-11ee-9b0d-b553b5be7939;
 Mon, 09 Oct 2023 14:51:48 +0200 (CEST)
Received: by mail-wm1-x329.google.com with SMTP id
 5b1f17b1804b1-40684f53bfcso41473925e9.0
 for <xen-devel@lists.xenproject.org>; Mon, 09 Oct 2023 05:51:48 -0700 (PDT)
Received: from georged-x-u.eng.citrite.net ([185.25.67.249])
 by smtp.gmail.com with ESMTPSA id
 c16-20020a5d4f10000000b00324ae863ac1sm9589576wru.35.2023.10.09.05.51.46
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 09 Oct 2023 05:51: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: 9c04f31c-66a2-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1696855907; x=1697460707; 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=RJrVk7LMkW0zXyVZPEan5SEC7eFr57cgF9BbE1wu9kQ=;
        b=dMJKf9gUQMIb2G9kivhJBzjZ8FeeqDer0X3ES1cNX/7GztKs3RUU/lJCX0BvN9GYu5
         Q9nrsqgqNJ585dOArfjkXx0j+JlQ2dnc2BgEJjudEoLVS+gP1BOh8gfSFEYqMfzEAjG2
         wkJ9XKY1kTa8TNQlRlXUpoWxZ0mMpdhmZOTd4=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1696855907; x=1697460707;
        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=RJrVk7LMkW0zXyVZPEan5SEC7eFr57cgF9BbE1wu9kQ=;
        b=dQRGs0vBp4b0H1LEhfuDB4H/7S5A/eIq1gVTCXM9q0eDXlSUJdzqprEMzyFuzta7CQ
         moJXhe4fk47XnpJgH+2oTFlWkzJcNiifxdaHrCuyoFXctk7jO1XpVZAnVAD5PLQQLm5s
         INvxudxCVEmB1oU8Laj0GwaFTkVMJJxhnFEgJw9bg2mHElUYB0AcQ6Fw3LoE8t6n15cv
         YIhY1sQY9KteNckqiuSnHQ7WS575CUPWHRhyVPhy4WIsqT2jg6iFUJPsgRSqBVrHAU1s
         9FtZ60GLx6RxeY+GcLSkh7tBu8PmEgyrC3rC3PgfGcfnRaHpQaL/Tk77kBOR7sEz/B2e
         //Pw==
X-Gm-Message-State: AOJu0YzzJasZ1WQxjXhIdmpr1FP3LGeo+SUCFOgdvXY3AU5WMMxEzv3N
	++dFTfQBhZs68z2k4F3DP79Silu7XLCoawiqhqA=
X-Google-Smtp-Source: AGHT+IESjYH2aLK0ihomB1LR5F4AseZXlMV2cuD6IJLvNY5H4vuHIn7kzIHSjhTNJ93N/w3aW2SXyQ==
X-Received: by 2002:a5d:6051:0:b0:321:4b47:d1c0 with SMTP id j17-20020a5d6051000000b003214b47d1c0mr11245954wrt.71.1696855907562;
        Mon, 09 Oct 2023 05:51:47 -0700 (PDT)
From: George Dunlap <george.dunlap@cloud.com>
To: xen-devel@lists.xenproject.org
Cc: Olaf Hering <olaf@aepfle.de>,
	Henry Wang <Henry.Wang@arm.com>,
	George Dunlap <george.dunlap@cloud.com>,
	Anthony Perard <anthony.perard@cloud.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Xenia Ragiodakou <xenia.ragiadakou@amd.com>
Subject: [PATCH for-4.18 3/5] xenalyze: Don't expect an HVM_HANDLER trace for PAUSE vmexits
Date: Mon,  9 Oct 2023 13:51:35 +0100
Message-Id: <20231009125137.1329146-4-george.dunlap@cloud.com>
X-Mailer: git-send-email 2.25.1
In-Reply-To: <20231009125137.1329146-1-george.dunlap@cloud.com>
References: <20231009125137.1329146-1-george.dunlap@cloud.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Neither vmx nor svm trace anything, nor is there anything obvious
worth tracing.

Signed-off-by: George Dunlap <george.dunlap@cloud.com>
---
Release justification: This is a bug fix; a minor one, but also in a
non-critical part of the code.

CC: Anthony Perard <anthony.perard@cloud.com>
CC: Stefano Stabellini <sstabellini@kernel.org>
CC: Xenia Ragiodakou <xenia.ragiadakou@amd.com>
---
 tools/xentrace/xenalyze.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/tools/xentrace/xenalyze.c b/tools/xentrace/xenalyze.c
index fc25ac3589..2faf66500d 100644
--- a/tools/xentrace/xenalyze.c
+++ b/tools/xentrace/xenalyze.c
@@ -4631,6 +4631,7 @@ void hvm_generic_postprocess(struct hvm_data *h)
             switch(h->exit_reason)
             {
             case VMEXIT_VINTR: /* Equivalent of PENDING_VIRT_INTR */
+            case VMEXIT_PAUSE:
                 return;
             default:
                 break;
@@ -4643,6 +4644,7 @@ void hvm_generic_postprocess(struct hvm_data *h)
                 /* These just need us to go through the return path */
             case EXIT_REASON_PENDING_VIRT_INTR:
             case EXIT_REASON_TPR_BELOW_THRESHOLD:
+            case EXIT_REASON_PAUSE_INSTRUCTION:
                 /* Not much to log now; may need later */
             case EXIT_REASON_WBINVD:
                 return;
-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Mon Oct 09 14:23:43 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 09 Oct 2023 14:23:43 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614394.955426 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qprAN-0000jq-CX; Mon, 09 Oct 2023 14:23:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614394.955426; Mon, 09 Oct 2023 14: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 1qprAN-0000jj-9x; Mon, 09 Oct 2023 14:23:27 +0000
Received: by outflank-mailman (input) for mailman id 614394;
 Mon, 09 Oct 2023 14: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=PXv8=FX=bugseng.com=federico.serafini@srs-se1.protection.inumbo.net>)
 id 1qprAL-0000jd-ML
 for xen-devel@lists.xenproject.org; Mon, 09 Oct 2023 14:23:25 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 662f4008-66af-11ee-9b0d-b553b5be7939;
 Mon, 09 Oct 2023 16:23:22 +0200 (CEST)
Received: from Dell.bugseng.com (unknown [37.161.82.74])
 by support.bugseng.com (Postfix) with ESMTPSA id 2EBA54EE0740;
 Mon,  9 Oct 2023 16:23: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: 662f4008-66af-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>,
	George Dunlap <george.dunlap@citrix.com>,
	Dario Faggioli <dfaggioli@suse.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Henry Wang <henry.wang@arm.com>
Subject: [XEN PATCH v2] xen/sched: address violations of MISRA C:2012 Rule 8.2
Date: Mon,  9 Oct 2023 16:23:13 +0200
Message-Id: <033b6f5f10e17409650dc438b22a0f0e0d5918a7.1696598833.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. No functional change.

Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
---
Changes in v2:
- added parameter names in accordance with schedulers in xen/common/sched/*;
- improved comment format.
---
 xen/common/sched/private.h | 99 ++++++++++++++++++++------------------
 1 file changed, 53 insertions(+), 46 deletions(-)

diff --git a/xen/common/sched/private.h b/xen/common/sched/private.h
index c516976c37..79e3f56c5a 100644
--- a/xen/common/sched/private.h
+++ b/xen/common/sched/private.h
@@ -37,10 +37,11 @@ enum sched_gran {
  * locks.  The generic schedule init code will point each schedule lock
  * pointer to the schedule lock; if the scheduler wants to remap them,
  * it can simply modify the schedule locks.
- * 
+ *
  * For cache betterness, keep the actual lock in the same cache area
  * as the rest of the struct.  Just have the scheduler point to the
- * one it wants (This may be the one right in front of it).*/
+ * one it wants (This may be the one right in front of it).
+ */
 struct sched_resource {
     struct scheduler   *scheduler;
     struct cpupool     *cpupool;
@@ -280,59 +281,65 @@ struct scheduler {
 
     int          (*global_init)    (void);
 
-    int          (*init)           (struct scheduler *);
-    void         (*deinit)         (struct scheduler *);
+    int          (*init)           (struct scheduler *ops);
+    void         (*deinit)         (struct scheduler *ops);
+
+    void         (*free_udata)     (const struct scheduler *ops, void *priv);
+    void *       (*alloc_udata)    (const struct scheduler *ops,
+                                    struct sched_unit *unit, void *dd);
 
-    void         (*free_udata)     (const struct scheduler *, void *);
-    void *       (*alloc_udata)    (const struct scheduler *,
-                                    struct sched_unit *, void *);
-    void         (*free_pdata)     (const struct scheduler *, void *, int);
-    void *       (*alloc_pdata)    (const struct scheduler *, int);
-    void         (*deinit_pdata)   (const struct scheduler *, void *, int);
+    void         (*free_pdata)     (const struct scheduler *ops,
+                                    void *pcpu, int cpu);
+    void *       (*alloc_pdata)    (const struct scheduler *ops, int cpu);
+    void         (*deinit_pdata)   (const struct scheduler *ops,
+                                    void *pcpu, int cpu);
 
     /* Returns ERR_PTR(-err) for error, NULL for 'nothing needed'. */
-    void *       (*alloc_domdata)  (const struct scheduler *, struct domain *);
+    void *       (*alloc_domdata)  (const struct scheduler *ops,
+                                    struct domain *dom);
     /* Idempotent. */
-    void         (*free_domdata)   (const struct scheduler *, void *);
+    void         (*free_domdata)   (const struct scheduler *ops, void *data);
 
-    spinlock_t * (*switch_sched)   (struct scheduler *, unsigned int,
-                                    void *, void *);
+    spinlock_t * (*switch_sched)   (struct scheduler *new_ops, unsigned int cpu,
+                                    void *pdata, void *vdata);
 
     /* Activate / deactivate units in a cpu pool */
-    void         (*insert_unit)    (const struct scheduler *,
-                                    struct sched_unit *);
-    void         (*remove_unit)    (const struct scheduler *,
-                                    struct sched_unit *);
-
-    void         (*sleep)          (const struct scheduler *,
-                                    struct sched_unit *);
-    void         (*wake)           (const struct scheduler *,
-                                    struct sched_unit *);
-    void         (*yield)          (const struct scheduler *,
-                                    struct sched_unit *);
-    void         (*context_saved)  (const struct scheduler *,
-                                    struct sched_unit *);
-
-    void         (*do_schedule)    (const struct scheduler *,
-                                    struct sched_unit *, s_time_t,
+    void         (*insert_unit)    (const struct scheduler *ops,
+                                    struct sched_unit *unit);
+    void         (*remove_unit)    (const struct scheduler *ops,
+                                    struct sched_unit *unit);
+
+    void         (*sleep)          (const struct scheduler *ops,
+                                    struct sched_unit *unit);
+    void         (*wake)           (const struct scheduler *ops,
+                                    struct sched_unit *unit);
+    void         (*yield)          (const struct scheduler *ops,
+                                    struct sched_unit *unit);
+    void         (*context_saved)  (const struct scheduler *ops,
+                                    struct sched_unit *unit);
+
+    void         (*do_schedule)    (const struct scheduler *ops,
+                                    struct sched_unit *currunit, s_time_t now,
                                     bool tasklet_work_scheduled);
 
-    struct sched_resource *(*pick_resource)(const struct scheduler *,
-                                            const struct sched_unit *);
-    void         (*migrate)        (const struct scheduler *,
-                                    struct sched_unit *, unsigned int);
-    int          (*adjust)         (const struct scheduler *, struct domain *,
-                                    struct xen_domctl_scheduler_op *);
-    void         (*adjust_affinity)(const struct scheduler *,
-                                    struct sched_unit *,
-                                    const struct cpumask *,
-                                    const struct cpumask *);
-    int          (*adjust_global)  (const struct scheduler *,
-                                    struct xen_sysctl_scheduler_op *);
-    void         (*dump_settings)  (const struct scheduler *);
-    void         (*dump_cpu_state) (const struct scheduler *, int);
-    void         (*move_timers)    (const struct scheduler *,
-                                    struct sched_resource *);
+    struct sched_resource *(*pick_resource)(const struct scheduler *ops,
+                                            const struct sched_unit *unit);
+    void         (*migrate)        (const struct scheduler *ops,
+                                    struct sched_unit *unit,
+                                    unsigned int new_cpu);
+    int          (*adjust)         (const struct scheduler *ops,
+                                    struct domain *d,
+                                    struct xen_domctl_scheduler_op *op);
+    void         (*adjust_affinity)(const struct scheduler *ops,
+                                    struct sched_unit *unit,
+                                    const struct cpumask *hard,
+                                    const struct cpumask *soft);
+    int          (*adjust_global)  (const struct scheduler *ops,
+                                    struct xen_sysctl_scheduler_op *sc);
+    void         (*dump_settings)  (const struct scheduler *ops);
+    void         (*dump_cpu_state) (const struct scheduler *ops, int cpu);
+    void         (*move_timers)    (const struct scheduler *ops,
+                                    struct sched_resource *sr);
 };
 
 static inline int sched_init(struct scheduler *s)
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Mon Oct 09 15:45:10 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 09 Oct 2023 15:45:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614402.955446 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qpsRJ-00038X-NG; Mon, 09 Oct 2023 15:45:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614402.955446; Mon, 09 Oct 2023 15: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 1qpsRJ-00038P-K5; Mon, 09 Oct 2023 15:45:01 +0000
Received: by outflank-mailman (input) for mailman id 614402;
 Mon, 09 Oct 2023 15:45: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=o9Np=FX=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qpsRI-00034W-U5
 for xen-devel@lists.xenproject.org; Mon, 09 Oct 2023 15:45:01 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id cd31f109-66ba-11ee-98d3-6d05b1d4d9a1;
 Mon, 09 Oct 2023 17:44:59 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id C1DD64EE0742;
 Mon,  9 Oct 2023 17:44: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: cd31f109-66ba-11ee-98d3-6d05b1d4d9a1
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>
Subject: [XEN PATCH][for-4.19 v2 1/2] automation/eclair: update deviations and accepted guidelines
Date: Mon,  9 Oct 2023 17:44:28 +0200
Message-Id: <c67293c3351287a218d4e3df3cc3ef2cf937fc2a.1696865051.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1696865051.git.nicola.vetrini@bugseng.com>
References: <cover.1696865051.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

From: Simone Ballarin <simone.ballarin@bugseng.com>

Remove deviations for ERROR_EXIT, ERROR_EXIT_DOM and PIN_FAIL:
the aforementioned macros have been removed.
Add deviation for Rule 2.1 for pure declarations.
Remove legacy text-based deviations: these are now implemented
with SAF comments.
Add deviations for Rules 8.4, 10.1, 13.5, 14.2, 14.3.
Remove deviations for guidelines not yet accepted or rejected.

Add MC3R1.R11.7, MC3R1.R11.8, MC3R1.R11.9, MC3R1.R15.3 and MC3R1.R14.2
to the accepted guidelines selector.

Update clean guidelines selector.

Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>
---
 .../eclair_analysis/ECLAIR/deviations.ecl     | 135 ++++++++----------
 automation/eclair_analysis/ECLAIR/tagging.ecl |   4 +-
 2 files changed, 64 insertions(+), 75 deletions(-)

diff --git a/automation/eclair_analysis/ECLAIR/deviations.ecl b/automation/eclair_analysis/ECLAIR/deviations.ecl
index d8170106b449..fa56e5c00a27 100644
--- a/automation/eclair_analysis/ECLAIR/deviations.ecl
+++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
@@ -15,14 +15,19 @@ Constant expressions and unreachable branches of if and switch statements are ex
 -doc_end
 
 -doc_begin="Unreachability caused by calls to the following functions or macros is deliberate and there is no risk of code being unexpectedly left out."
--config=MC3R1.R2.1,statements+={deliberate,"macro(name(BUG||assert_failed||ERROR_EXIT||ERROR_EXIT_DOM||PIN_FAIL))"}
+-config=MC3R1.R2.1,statements+={deliberate,"macro(name(BUG||assert_failed))"}
 -config=MC3R1.R2.1,statements+={deliberate, "call(decl(name(__builtin_unreachable||panic||do_unexpected_trap||machine_halt||machine_restart||maybe_reboot)))"}
 -doc_end
 
--doc_begin="Unreachability of an ASSERT_UNREACHABLE() and analogous macro calls is deliberate and safe."
+-doc_begin="Unreachability inside an ASSERT_UNREACHABLE() and analogous macro calls is deliberate and safe."
 -config=MC3R1.R2.1,reports+={deliberate, "any_area(any_loc(any_exp(macro(name(ASSERT_UNREACHABLE||PARSE_ERR_RET||PARSE_ERR||FAIL_MSR||FAIL_CPUID)))))"}
 -doc_end
 
+-doc_begin="Pure declarations (i.e., declarations without initialization) are
+not executable, and therefore it is safe for them to be unreachable."
+-config=MC3R1.R2.1,ignored_stmts+={"any()", "pure_decl()"}
+-doc_end
+
 -doc_begin="Proving compliance with respect to Rule 2.2 is generally impossible:
 see https://arxiv.org/abs/2212.13933 for details. Moreover, peer review gives us
 confidence that no evidence of errors in the program's logic has been missed due
@@ -49,35 +54,6 @@ they are not instances of commented-out code."
 -config=MC3R1.D4.3,reports+={disapplied,"!(any_area(any_loc(file(^xen/arch/arm/arm64/.*$))))"}
 -doc_end
 
--doc_begin="Depending on the compiler, rewriting the following function-like
-macros as inline functions is not guaranteed to have the same effect."
--config=MC3R1.D4.9,macros+={deliberate,"name(likely)"}
--config=MC3R1.D4.9,macros+={deliberate,"name(unlikely)"}
--config=MC3R1.D4.9,macros+={deliberate,"name(unreachable)"}
--doc_end
-
--doc_begin="These macros can be used on both pointers and unsigned long type values."
--config=MC3R1.D4.9,macros+={safe,"name(virt_to_maddr)"}
--config=MC3R1.D4.9,macros+={safe,"name(virt_to_mfn)"}
--doc_end
-
--doc_begin="Rewriting variadic macros as variadic functions might have a negative impact on safety."
--config=MC3R1.D4.9,macros+={deliberate,"variadic()"}
--doc_end
-
--doc_begin="Rewriting macros with arguments that are, in turn, arguments of
-__builtin_constant_p() can change the behavior depending on the optimization
-level."
--config=MC3R1.D4.9,macro_argument_context+="skip_to(class(type||expr||decl,any),
-                                            call(name(__builtin_constant_p)))"
--doc_end
-
--doc_begin="Function-like macros defined in public headers are meant to be
-usable in C89 mode without any extensions. Hence they cannot be replaced by
-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$"}
@@ -105,29 +81,6 @@ conform to the directive."
 -config=MC3R1.R5.3,reports+={safe, "any_area(any_loc(any_exp(macro(^read_debugreg$))&&any_exp(macro(^write_debugreg$))))"}
 -doc_end
 
--doc_begin="Function-like macros cannot be confused with identifiers that are
-neither functions nor pointers to functions."
--config=MC3R1.R5.5,reports={safe,"all_area(decl(node(enum_decl||record_decl||field_decl||param_decl||var_decl)&&!type(canonical(address((node(function||function_no_proto))))))||macro(function_like()))"}
--doc_end
-
--doc_begin="The use of these identifiers for both macro names and other entities
-is deliberate and does not generate developer confusion."
--config=MC3R1.R5.5,reports+={safe, "any_area(text(^\\s*/\\*\\s+SAF-[0-9]+-safe\\s+MC3R1\\.R5\\.5.*$, begin-1))"}
--doc_end
-
--doc_begin="The definition of macros and functions ending in '_bit' that use the
-same identifier in 'bitops.h' is deliberate and safe."
--file_tag+={bitops_h, "^xen/arch/x86/include/asm/bitops\\.h$"}
--config=MC3R1.R5.5,reports+={safe, "all_area((decl(^.*_bit\\(.*$)||macro(^.*_bit$))&&all_loc(file(bitops_h)))"}
--doc_end
-
--doc_begin="The definition of macros and functions beginning in 'str' or 'mem'
-that use the same identifier in 'xen/include/xen/string.h' is deliberate and
-safe."
--file_tag+={string_h, "^xen/include/xen/string\\.h$"}
--config=MC3R1.R5.5,reports+={safe, "any_area((decl(^(mem|str).*$)||macro(^(mem|str).*$))&&all_loc(file(string_h)))"}
--doc_end
-
 #
 # Series 7.
 #
@@ -156,11 +109,6 @@ particular use of it done in xen_mk_ulong."
 -config=MC3R1.R7.2,reports+={deliberate,"any_area(any_loc(macro(name(BUILD_BUG_ON))))"}
 -doc_end
 
--doc_begin="The following string literals are assigned to pointers to non
-const-qualified char."
--config=MC3R1.R7.4,reports+={safe, "any_area(text(^\\s*/\\*\\s+SAF-[0-9]+-safe\\s+MC3R1\\.R7\\.4.*$, begin-1))"}
--doc_end
-
 -doc_begin="Allow pointers of non-character type as long as the pointee is
 const-qualified."
 -config=MC3R1.R7.4,same_pointee=false
@@ -204,6 +152,17 @@ const-qualified."
 -config=MC3R1.R8.3,reports+={deliberate,"any_area(any_loc(file(adopted_mpparse_r8_3)))&&any_area(any_loc(file(^xen/arch/x86/include/asm/mpspec\\.h$)))"}
 -doc_end
 
+-doc_begin="The definitions present in this file are meant to generate definitions for asm modules, and are not called by C code. Therefore the absence of prior declarations is safe."
+-file_tag+={asm_offsets, "^xen/arch/(arm|x86)/(arm32|arm64|x86_64)/asm-offsets\\.c$"}
+-config=MC3R1.R8.4,reports+={safe, "first_area(any_loc(file(asm_offsets)))"}
+-doc_end
+
+-doc_begin="The functions defined in this file are meant to be called from gcc-generated code in a non-release build configuration.
+Therefore the absence of prior declarations is safe."
+-file_tag+={gcov, "^xen/common/coverage/gcov_base\\.c$"}
+-config=MC3R1.R8.4,reports+={safe, "first_area(any_loc(file(gcov)))"}
+-doc_end
+
 -doc_begin="The following variables are compiled in multiple translation units
 belonging to different executables and therefore are safe."
 -config=MC3R1.R8.6,declarations+={safe, "name(current_stack_pointer||bsearch||sort)"}
@@ -222,12 +181,6 @@ definition is compiled-out or optimized-out by the compiler)"
 # Series 9.
 #
 
--doc_begin="The following variables are written before being set, therefore no
-access to uninitialized memory locations happens, as explained in the deviation
-comment."
--config=MC3R1.R9.1,reports+={safe, "any_area(text(^\\s*/\\*\\s+SAF-[0-9]+-safe\\s+MC3R1\\.R9\\.1.*$, begin-1))"}
--doc_end
-
 -doc_begin="Violations in files that maintainers have asked to not modify in the
 context of R9.1."
 -file_tag+={adopted_r9_1,"^xen/arch/arm/arm64/lib/find_next_bit\\.c$"}
@@ -274,22 +227,47 @@ still non-negative."
 -config=MC3R1.R10.1,etypes+={safe, "stmt(operator(logical)||node(conditional_operator||binary_conditional_operator))", "dst_type(ebool||boolean)"}
 -doc_end
 
-### Set 3 ###
+-doc_begin="XEN only supports architectures where signed integers are
+representend using two's complement and all the XEN developers are aware of
+this."
+-config=MC3R1.R10.1,etypes+={safe,
+  "stmt(operator(and||or||xor||not||and_assign||or_assign||xor_assign))",
+  "any()"}
+-doc_end
+
+-doc_begin="See Section \"4.5 Integers\" of \"GCC_MANUAL\", where it says that
+\"Signed `>>' acts on negative numbers by sign extension. As an extension to the
+C language, GCC does not use the latitude given in C99 and C11 only to treat
+certain aspects of signed `<<' as undefined. However, -fsanitize=shift (and
+-fsanitize=undefined) will diagnose such cases. They are also diagnosed where
+constant expressions are required.\""
+-config=MC3R1.R10.1,etypes+={safe,
+  "stmt(operator(shl||shr||shl_assign||shr_assign))",
+  "any()"}
+-doc_end
 
 #
-# Series 18.
+# Series 13
 #
 
--doc_begin="FIXME: explain why pointer differences involving this macro are safe."
--config=MC3R1.R18.2,reports+={safe,"all_area(all_loc(any_exp(macro(^ACPI_PTR_DIFF$))))"}
+-doc_begin="All developers and reviewers can be safely assumed to be well aware
+of the short-circuit evaluation strategy of such logical operators."
+-config=MC3R1.R13.5,reports+={disapplied,"any()"}
 -doc_end
 
--doc_begin="FIXME: explain why pointer differences involving this macro are safe."
--config=MC3R1.R18.2,reports+={safe,"all_area(all_loc(any_exp(macro(^page_to_mfn$))))"}
+#
+# Series 14
+#
+
+-doc_begin="The severe restrictions imposed by this rule on the use of for
+statements are not balanced by the presumed facilitation of the peer review
+activity."
+-config=MC3R1.R14.2,reports+={disapplied,"any()"}
 -doc_end
 
--doc_begin="FIXME: explain why pointer differences involving this macro are safe."
--config=MC3R1.R18.2,reports+={safe,"all_area(all_loc(any_exp(macro(^page_to_pdx$))))"}
+-doc_begin="The XEN team relies on the fact that invariant conditions of 'if'
+statements are deliberate"
+-config=MC3R1.R14.3,statements={deliberate , "wrapped(any(),node(if_stmt))" }
 -doc_end
 
 #
@@ -306,6 +284,17 @@ in assignments."
 {safe, "left_right(^[(,\\[]$,^[),\\]]$)"}
 -doc_end
 
+#
+# General
+#
+
+-doc_begin="do-while-0 is a well recognized loop idiom by the xen community."
+-loop_idioms={do_stmt, "literal(0)"}
+-doc_end
+-doc_begin="while-[01] is a well recognized loop idiom by the xen community."
+-loop_idioms+={while_stmt, "literal(0)||literal(1)"}
+-doc_end
+
 #
 # Developer confusion
 #
diff --git a/automation/eclair_analysis/ECLAIR/tagging.ecl b/automation/eclair_analysis/ECLAIR/tagging.ecl
index 78a0bc948ba5..e82277fea3c1 100644
--- a/automation/eclair_analysis/ECLAIR/tagging.ecl
+++ b/automation/eclair_analysis/ECLAIR/tagging.ecl
@@ -19,7 +19,7 @@
 
 -doc="Accepted guidelines as reported in XEN/docs/misra/rules.rst"
 -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"
+    "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.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.R11.7||MC3R1.R11.8||MC3R1.R11.9||MC3R1.R12.5||MC3R1.R13.1||MC3R1.R13.5||MC3R1.R13.6||MC3R1.R14.1||MC3R1.R14.2||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)"}
@@ -30,7 +30,7 @@
 
 -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.R4.2||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.R20.13||MC3R1.R20.14||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")
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Mon Oct 09 15:45:10 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 09 Oct 2023 15:45:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614403.955456 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qpsRM-0003OZ-VG; Mon, 09 Oct 2023 15:45:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614403.955456; Mon, 09 Oct 2023 15: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 1qpsRM-0003OQ-Sd; Mon, 09 Oct 2023 15:45:04 +0000
Received: by outflank-mailman (input) for mailman id 614403;
 Mon, 09 Oct 2023 15: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=o9Np=FX=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qpsRL-00034W-Jm
 for xen-devel@lists.xenproject.org; Mon, 09 Oct 2023 15:45:03 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id cf78e4c0-66ba-11ee-98d3-6d05b1d4d9a1;
 Mon, 09 Oct 2023 17:45:02 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id 6679A4EE0743;
 Mon,  9 Oct 2023 17:45: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: cf78e4c0-66ba-11ee-98d3-6d05b1d4d9a1
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>
Subject: [XEN PATCH][for-4.19 v2 2/2] docs/misra: add deviations.rst to document additional deviations.
Date: Mon,  9 Oct 2023 17:44:29 +0200
Message-Id: <ccda90b6be8f6977cff14ae65749ffc7fa429c3c.1696865051.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1696865051.git.nicola.vetrini@bugseng.com>
References: <cover.1696865051.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

This file contains the deviation that are not marked by
a deviation comment, as specified in
docs/misra/documenting-violations.rst.

Suggested-by: Stefano Stabellini <sstabellini@kernel.org>
Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
---
 docs/index.rst            |   1 +
 docs/misra/deviations.rst | 240 ++++++++++++++++++++++++++++++++++++++
 docs/misra/rules.rst      |   2 +-
 3 files changed, 242 insertions(+), 1 deletion(-)
 create mode 100644 docs/misra/deviations.rst

diff --git a/docs/index.rst b/docs/index.rst
index 2c47cfa999f2..f3f779f89ce5 100644
--- a/docs/index.rst
+++ b/docs/index.rst
@@ -63,6 +63,7 @@ Xen hypervisor code.
    :maxdepth: 2

    misra/rules
+   misra/deviations


 Miscellanea
diff --git a/docs/misra/deviations.rst b/docs/misra/deviations.rst
new file mode 100644
index 000000000000..19743e34ce03
--- /dev/null
+++ b/docs/misra/deviations.rst
@@ -0,0 +1,240 @@
+.. SPDX-License-Identifier: CC-BY-4.0
+
+MISRA C deviations for Xen
+==========================
+
+The following is the list of MISRA C:2012 deviations for the Xen codebase that
+are not covered by a `SAF-x-safe` or `SAF-x-false-positive-<tool>` comment, as
+specified in docs/misra/documenting-violations.rst; the lack of
+such comments is usually due to the excessive clutter they would bring to the
+codebase or the impossibility to express such a deviation (e.g., if it's
+composed of several conditions).
+
+Deviations related to MISRA C:2012 Directives:
+----------------------------------------------
+
+.. list-table::
+   :header-rows: 1
+
+   * - Directive identifier
+     - Justification
+     - Notes
+
+   * - D4.3
+     - Accepted for the ARM64 codebase
+     - Tagged as `disapplied` for ECLAIR on any other violation report.
+
+   * - D4.3
+     - The inline asm in 'xen/arch/arm/arm64/lib/bitops.c' is tightly coupled
+       with the surronding C code that acts as a wrapper, so it has been decided
+       not to add an additional encapsulation layer.
+     - Tagged as `deliberate` for ECLAIR.
+
+Deviations related to MISRA C:2012 Rules:
+-----------------------------------------
+
+.. list-table::
+   :header-rows: 1
+
+   * - Rule identifier
+     - Justification
+     - Notes
+
+   * - R2.1
+     - The compiler implementation guarantees that the unreachable code is
+       removed. Constant expressions and unreachable branches of if and switch
+       statements are expected.
+     - Tagged as `safe` for ECLAIR.
+
+   * - R2.1
+     - Some functions are intended not to be referenced.
+     - Tagged as `deliberate` for ECLAIR.
+
+   * - R2.1
+     - Unreachability caused by calls to the following functions or macros is
+       deliberate and there is no risk of code being unexpectedly left out.
+     - Tagged as `deliberate` for ECLAIR. Such macros are:
+			 - BUG
+			 - assert_failed
+			 - __builtin_unreachable
+			 - ASSERT_UNREACHABLE
+
+   * - R2.1
+     - Pure declarations, that is, declarations without initializations are not
+       executable, and therefore it is safe for them to be unreachable. The most
+       notable example of such a pattern being used in the codebase is that of
+       a variable declaration that should be available in all the clauses of a
+       switch statement.
+     - ECLAIR has been configured to ignore those statements.
+
+   * - R2.2
+     - Proving compliance with respect to Rule 2.2 is generally impossible:
+       see `<https://arxiv.org/abs/2212.13933>`_ for details. Moreover, peer
+       review gives us confidence that no evidence of errors in the program's
+       logic has been missed due to undetected violations of Rule 2.2, if any.
+       Testing on time behavior gives us confidence on the fact that, should the
+       program contain dead code that is not removed by the compiler, the
+       resulting slowdown is negligible.
+     - Project-wide deviation, tagged as `disapplied` for ECLAIR.
+
+   * - R3.1
+     - Comments starting with '/\*' and containing hyperlinks are safe as they
+       are not instances of commented-out code.
+     - Tagged as `safe` for ECLAIR.
+
+   * - R5.3
+     - As specified in rules.rst, shadowing due to macros being used as macro
+       arguments is allowed, as it's deemed not at risk of causing developer
+       confusion.
+     - Tagged as `safe` for ECLAIR. So far, the following macros are deviated:
+         - READ_SYSREG and WRITE_SYSREG
+         - max_{t}? and min_{t}?
+         - read_[bwlq] and read_[bwlq]_relaxed
+         - per_cpu and this_cpu
+         - __emulate_2op and __emulate_2op_nobyte
+         - read_debugreg and write_debugreg
+
+   * - R7.2
+     - Violations caused by __HYPERVISOR_VIRT_START are related to the
+       particular use of it done in xen_mk_ulong.
+     - Tagged as `deliberate` for ECLAIR.
+
+   * - R7.4
+     - Allow pointers of non-character type as long as the pointee is
+       const-qualified.
+     - ECLAIR has been configured to ignore these assignments.
+
+   * - R8.3
+     - The type ret_t is deliberately used and defined as int or long depending
+       on the architecture.
+     - Tagged as `deliberate` for ECLAIR.
+
+   * - R8.3
+     - Some files are not subject to respect MISRA rules at
+       the moment, but some entity from a file in scope is used; therefore
+       ECLAIR does report a violation, since not all the files involved in the
+       violation are excluded from the analysis.
+     - Tagged as `deliberate` for ECLAIR. Such excluded files are:
+         - xen/arch/x86/time.c
+         - xen/arch/x86/acpi/cpu_idle.c
+         - xen/arch/x86/mpparse.c
+         - xen/common/bunzip2.c
+         - xen/common/unlz4.c
+         - xen/common/unlzma.c
+         - xen/common/unlzo.c
+         - xen/common/unxz.c
+         - xen/common/unzstd.c
+
+   * - R8.4
+     - The definitions present in the files 'asm-offsets.c' for any architecture
+       are used to generate definitions for asm modules, and are not called by
+       C code. Therefore the absence of prior declarations is safe.
+     - Tagged as `safe` for ECLAIR.
+
+   * - R8.4
+     - The functions defined in the file xen/common/coverage/gcov_base.c are
+       meant to be called from gcc-generated code in a non-release build
+       configuration. Therefore, the absence of prior declarations is safe.
+     - Tagged as `safe` for ECLAIR.
+
+   * - R8.6
+     - The following variables are compiled in multiple translation units
+       belonging to different executables and therefore are safe.
+
+       - current_stack_pointer
+       - bsearch
+       - sort
+     - Tagged as `safe` for ECLAIR.
+
+   * - R8.6
+     - Declarations without definitions are allowed (specifically when the
+       definition is compiled-out or optimized-out by the compiler).
+     - Tagged as `deliberate` in ECLAIR.
+
+   * - R8.10
+     - The gnu_inline attribute without static is deliberately allowed.
+     - Tagged as `deliberate` for ECLAIR.
+
+   * - R9.5
+     - The possibility of committing mistakes by specifying an explicit
+       dimension is higher than omitting the dimension, therefore all such
+       instances of violations are deviated.
+     - Project-wide deviation, tagged as `deliberate` for ECLAIR.
+
+   * - R10.1, R10.3, R10.4
+     - The value-preserving conversions of integer constants are safe.
+     - Tagged as `safe` for ECLAIR.
+
+   * - R10.1
+     - Shifting non-negative integers to the right is safe.
+     - Tagged as `safe` for ECLAIR.
+
+   * - R10.1
+     - Shifting non-negative integers to the left is safe if the result is still
+       non-negative.
+     - Tagged as `safe` for ECLAIR.
+
+   * - R10.1
+     - Bitwise logical operations on non-negative integers are safe.
+     - Tagged as `safe` for ECLAIR.
+
+   * - R10.1
+     - The implicit conversion to Boolean for logical operator arguments is
+       well-known to all Xen developers to be a comparison with 0.
+     - Tagged as `safe` for ECLAIR.
+
+   * - R10.1
+     - Xen only supports architectures where signed integers are representend
+       using two's complement and all the Xen developers are aware of this. For
+       this reason, bitwise operations are safe.
+     - Tagged as `safe` for ECLAIR.
+
+   * - R10.1
+     - Given the assumptions on the toolchain detailed in
+       docs/misra/C-language-toolchain.rst and the build flags used by the
+       project, it is deemed safe to use bitwise shift operators.
+       See automation/eclair_analysis/deviations.ecl for the full explanation.
+     - Tagged as `safe` for ECLAIR.
+
+   * - R13.5
+     - All developers and reviewers can be safely assumed to be well aware of
+       the short-circuit evaluation strategy for logical operators.
+     - Project-wide deviation; tagged as `disapplied` for ECLAIR.
+
+   * - R14.2
+     - The severe restrictions imposed by this rule on the use of 'for'
+       statements are not counterbalanced by the presumed facilitation of the
+       peer review activity.
+     - Project-wide deviation; tagged as `disapplied` for ECLAIR.
+
+   * - R14.3
+     - The Xen team relies on the fact that invariant conditions of 'if'
+       statements are deliberate.
+     - Project-wide deviation; tagged as `disapplied` for ECLAIR.
+
+   * - R20.7
+     - Code violating Rule 20.7 is safe when macro parameters are used:
+       (1) as function arguments;
+       (2) as macro arguments;
+       (3) as array indices;
+       (4) as lhs in assignments.
+     - Tagged as `safe` for ECLAIR.
+
+Other deviations:
+-----------------
+
+.. list-table::
+   :header-rows: 1
+
+   * - Deviation
+     - Justification
+
+   * - do-while-0 loops
+     - The do-while-0 is a well-recognized loop idiom used by the Xen community
+       and can therefore be used, even though it would cause a number of
+       violations in some instances.
+
+   * - while-0 and while-1 loops
+     - while-0 and while-1 are well-recognized loop idioms used by the Xen
+       community and can therefore be used, even though they would cause a
+       number of violations in some instances.
diff --git a/docs/misra/rules.rst b/docs/misra/rules.rst
index 3139ca7ae6dd..6efe66195de3 100644
--- a/docs/misra/rules.rst
+++ b/docs/misra/rules.rst
@@ -18,7 +18,7 @@ It is possible that in specific circumstances it is best not to follow a
 rule because it is not possible or because the alternative leads to
 better code quality. Those cases are called "deviations". They are
 permissible as long as they are documented. For details, please refer to
-docs/misra/documenting-violations.rst
+docs/misra/documenting-violations.rst and docs/misra/deviations.rst

 Other documentation mechanisms are work-in-progress.

--
2.34.1


From xen-devel-bounces@lists.xenproject.org Mon Oct 09 15:45:10 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 09 Oct 2023 15:45:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614401.955436 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qpsRH-0002tk-Ff; Mon, 09 Oct 2023 15:44:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614401.955436; Mon, 09 Oct 2023 15: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 1qpsRH-0002td-D6; Mon, 09 Oct 2023 15:44:59 +0000
Received: by outflank-mailman (input) for mailman id 614401;
 Mon, 09 Oct 2023 15:44: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=o9Np=FX=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qpsRG-0002tX-LZ
 for xen-devel@lists.xenproject.org; Mon, 09 Oct 2023 15:44:58 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id cadcc5b0-66ba-11ee-9b0d-b553b5be7939;
 Mon, 09 Oct 2023 17:44:55 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id 25A4C4EE0740;
 Mon,  9 Oct 2023 17:44: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: cadcc5b0-66ba-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>,
	Simone Ballarin <simone.ballarin@bugseng.com>,
	Doug Goldstein <cardoe@cardoe.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Julien Grall <julien@xen.org>,
	Wei Liu <wl@xen.org>
Subject: [XEN PATCH][for-4.19 v2 0/2] update ecl configurations and deviations
Date: Mon,  9 Oct 2023 17:44:27 +0200
Message-Id: <cover.1696865051.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

This series brings updates to the configuration of the ECLAIR static analysis
tool, as well as a new document detailing the deviations from MISRA guidelines
that have no noticeable indication in the source code, as detailed by Stefano
Stabellini here [1].

[1] https://marc.info/?l=xen-devel&m=169663845629358&w=2

Nicola Vetrini (1):
  docs/misra: add deviations.rst to document additional deviations.

Simone Ballarin (1):
  automation/eclair: update deviations and accepted guidelines

 .../eclair_analysis/ECLAIR/deviations.ecl     | 135 +++++-----
 automation/eclair_analysis/ECLAIR/tagging.ecl |   4 +-
 docs/index.rst                                |   1 +
 docs/misra/deviations.rst                     | 240 ++++++++++++++++++
 docs/misra/rules.rst                          |   2 +-
 5 files changed, 306 insertions(+), 76 deletions(-)
 create mode 100644 docs/misra/deviations.rst

--
2.34.1


From xen-devel-bounces@lists.xenproject.org Mon Oct 09 18:55:58 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 09 Oct 2023 18:55:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614425.955466 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qpvPp-0008Ek-74; Mon, 09 Oct 2023 18:55:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614425.955466; Mon, 09 Oct 2023 18:55: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 1qpvPp-0008Ed-3x; Mon, 09 Oct 2023 18:55:41 +0000
Received: by outflank-mailman (input) for mailman id 614425;
 Mon, 09 Oct 2023 18:55: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=jERe=FX=kernel.org=gustavoars@srs-se1.protection.inumbo.net>)
 id 1qpvPn-0008EX-ST
 for xen-devel@lists.xenproject.org; Mon, 09 Oct 2023 18:55:39 +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 6d68288e-66d5-11ee-9b0d-b553b5be7939;
 Mon, 09 Oct 2023 20:55:35 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by dfw.source.kernel.org (Postfix) with ESMTP id CCF716131D;
 Mon,  9 Oct 2023 18:55:33 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 9F04BC433C7;
 Mon,  9 Oct 2023 18:55:32 +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: 6d68288e-66d5-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696877733;
	bh=GFc4Q5qaXcf/ZjZp9N+g0hF8nyG1r4y/dZRvyq8Du9A=;
	h=Date:From:To:Cc:Subject:From;
	b=E5t4oZoZGUwok3/PFxqTFm3bx+BQDZJJ+vyjeQKx5qfH3NW3T8avl6qgl+bnyUYJC
	 zO1yvhHO+sP4fFX8+Jb4cqmWJslQJwmigAelDrmyPqCA58TgriU+tkTzbfJb5SuovZ
	 jmqfndJSghzEQXm51nn5/kzyOz9T/Y1tXPAfnCjNoUTr4bTsLW0LPDmZeCVakppUDH
	 jEcJR2BKfR9ECTm+7FG2ekhXkNGfJJsXybno9Pv1LFe6AsPro4qWuKH7WRyXxsIk1O
	 o7ESnWSiQu2Nh1It7cAwnSiFhLfLU8drWQ2MQTfz+NjJJgjGI/aYtvnD6rJ7+HzeyS
	 ydCrTBcQ7J1Mg==
Date: Mon, 9 Oct 2023 12:55:30 -0600
From: "Gustavo A. R. Silva" <gustavoars@kernel.org>
To: Juergen Gross <jgross@suse.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>
Cc: xen-devel@lists.xenproject.org, linux-kernel@vger.kernel.org,
	"Gustavo A. R. Silva" <gustavoars@kernel.org>,
	linux-hardening@vger.kernel.org
Subject: [PATCH][next] xen/xenbus: Add __counted_by for struct read_buffer
 and use struct_size()
Message-ID: <ZSRMosLuJJS5Y/io@work>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline

Prepare for the coming implementation by GCC and Clang of the __counted_by
attribute. Flexible array members annotated with __counted_by can have
their accesses bounds-checked at run-time via CONFIG_UBSAN_BOUNDS (for
array indexing) and CONFIG_FORTIFY_SOURCE (for strcpy/memcpy-family
functions).

While there, use struct_size() helper, instead of the open-coded
version, to calculate the size for the allocation of the whole
flexible structure, including of course, the flexible-array member.

This code was found with the help of Coccinelle, and audited and
fixed manually.

Signed-off-by: Gustavo A. R. Silva <gustavoars@kernel.org>
---
 drivers/xen/xenbus/xenbus_dev_frontend.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/xen/xenbus/xenbus_dev_frontend.c b/drivers/xen/xenbus/xenbus_dev_frontend.c
index 0792fda49a15..6f56640092a9 100644
--- a/drivers/xen/xenbus/xenbus_dev_frontend.c
+++ b/drivers/xen/xenbus/xenbus_dev_frontend.c
@@ -82,7 +82,7 @@ struct read_buffer {
 	struct list_head list;
 	unsigned int cons;
 	unsigned int len;
-	char msg[];
+	char msg[] __counted_by(len);
 };
 
 struct xenbus_file_priv {
@@ -195,7 +195,7 @@ static int queue_reply(struct list_head *queue, const void *data, size_t len)
 	if (len > XENSTORE_PAYLOAD_MAX)
 		return -EINVAL;
 
-	rb = kmalloc(sizeof(*rb) + len, GFP_KERNEL);
+	rb = kmalloc(struct_size(rb, msg, len), GFP_KERNEL);
 	if (rb == NULL)
 		return -ENOMEM;
 
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Mon Oct 09 19:01:34 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 09 Oct 2023 19:01:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614429.955476 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qpvVR-0001Ia-Pm; Mon, 09 Oct 2023 19:01:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614429.955476; Mon, 09 Oct 2023 19:01: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 1qpvVR-0001IT-M9; Mon, 09 Oct 2023 19:01:29 +0000
Received: by outflank-mailman (input) for mailman id 614429;
 Mon, 09 Oct 2023 19:01: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=5tbQ=FX=chromium.org=keescook@srs-se1.protection.inumbo.net>)
 id 1qpvVQ-0001IN-ED
 for xen-devel@lists.xenproject.org; Mon, 09 Oct 2023 19:01:28 +0000
Received: from mail-pf1-x431.google.com (mail-pf1-x431.google.com
 [2607:f8b0:4864:20::431])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 3f3c9d7a-66d6-11ee-98d3-6d05b1d4d9a1;
 Mon, 09 Oct 2023 21:01:27 +0200 (CEST)
Received: by mail-pf1-x431.google.com with SMTP id
 d2e1a72fcca58-690bd59322dso3542670b3a.3
 for <xen-devel@lists.xenproject.org>; Mon, 09 Oct 2023 12:01:27 -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
 f24-20020aa78b18000000b0068fd026b496sm6613220pfd.46.2023.10.09.12.01.24
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 09 Oct 2023 12:01: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: 3f3c9d7a-66d6-11ee-98d3-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=chromium.org; s=google; t=1696878086; x=1697482886; 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=3IFH55pRhzV5onmAR0V0RcmvgjZQ6iKkHWC3kCd8jJc=;
        b=iyayy6nNuwlNH1j4dTXg27vXR/mBIvjOiPBWhPS4Sn6XVF2OTLuYd2kaptr9KxRuE0
         i7FiAZ7F+0nSLKbZtP4vrqRFv9eJtpbmbiaf4c1Ab+DiTiOrz2S/nKwxPtLB9Oi8EddC
         z+pcsBqM8S5Ul9yOZZxjS/qa9P0MagV+JqFjY=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1696878086; x=1697482886;
        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=3IFH55pRhzV5onmAR0V0RcmvgjZQ6iKkHWC3kCd8jJc=;
        b=k1A+ufU1QBhYr9wu2e/lRbDIwLd1ZzCXisjzneJvea3PT76GbREoMf45e+3rYfsVxi
         jogB3/eXpHiLGa+DQSExxDZJLkBsibRGvCD5/G2SMlr/4MCm9wvJQjZ8VbEx/ZnwpPi4
         kT6oQVguwEux/s6JqElenGPTyQPSx4AMvcXVPWaobJ9vXft/VCdVKLPimqum04Gh50AZ
         3lAnNovDZEC0FjFic1fkXAncDT1b9R03NGXzYZ1d84VY5AnYi2xFPLqjTJq5VhV7eSNG
         IkHSFDviLS3TNqjOie5G5cfqhPLgqnxN7bYczGjN00H+nP03wRPMS36HStU9RcgQw/t1
         BMSg==
X-Gm-Message-State: AOJu0YxE9fcjbKo68IwUXImeARtNeJAPNOuA0ik8caDtmm0/F2ogEgNS
	aUt4/SeBJI2I1BR8qf/o2e7yMEKZEEAfV2L8t5U=
X-Google-Smtp-Source: AGHT+IEdiLUEPaXGkHEsA/tYV+jvxhXR25Tgergrl7cSdjdxq9CSr6ZJuinl4dMflGBaKnVK+mZmDw==
X-Received: by 2002:a05:6a00:b82:b0:68f:e810:e894 with SMTP id g2-20020a056a000b8200b0068fe810e894mr17362981pfj.33.1696878085896;
        Mon, 09 Oct 2023 12:01:25 -0700 (PDT)
Date: Mon, 9 Oct 2023 12:01:23 -0700
From: Kees Cook <keescook@chromium.org>
To: "Gustavo A. R. Silva" <gustavoars@kernel.org>
Cc: Juergen Gross <jgross@suse.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>,
	xen-devel@lists.xenproject.org, linux-kernel@vger.kernel.org,
	linux-hardening@vger.kernel.org
Subject: Re: [PATCH][next] xen/xenbus: Add __counted_by for struct
 read_buffer and use struct_size()
Message-ID: <202310091200.2DFF1FE4B5@keescook>
References: <ZSRMosLuJJS5Y/io@work>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <ZSRMosLuJJS5Y/io@work>

On Mon, Oct 09, 2023 at 12:55:30PM -0600, Gustavo A. R. Silva wrote:
> Prepare for the coming implementation by GCC and Clang of the __counted_by
> attribute. Flexible array members annotated with __counted_by can have
> their accesses bounds-checked at run-time via CONFIG_UBSAN_BOUNDS (for
> array indexing) and CONFIG_FORTIFY_SOURCE (for strcpy/memcpy-family
> functions).
> 
> While there, use struct_size() helper, instead of the open-coded
> version, to calculate the size for the allocation of the whole
> flexible structure, including of course, the flexible-array member.
> 
> This code was found with the help of Coccinelle, and audited and
> fixed manually.
> 
> Signed-off-by: Gustavo A. R. Silva <gustavoars@kernel.org>

Looks good. There are going to be lots of 1-byte flex array members...

Reviewed-by: Kees Cook <keescook@chromium.org>

-- 
Kees Cook


From xen-devel-bounces@lists.xenproject.org Mon Oct 09 19:11:19 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 09 Oct 2023 19:11:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614432.955485 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qpveo-0002zi-LM; Mon, 09 Oct 2023 19:11:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614432.955485; Mon, 09 Oct 2023 19: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 1qpveo-0002zb-Io; Mon, 09 Oct 2023 19:11:10 +0000
Received: by outflank-mailman (input) for mailman id 614432;
 Mon, 09 Oct 2023 19:11: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=rjZ2=FX=amd.com=Stewart.Hildebrand@srs-se1.protection.inumbo.net>)
 id 1qpven-0002zV-9W
 for xen-devel@lists.xenproject.org; Mon, 09 Oct 2023 19:11:09 +0000
Received: from NAM12-BN8-obe.outbound.protection.outlook.com
 (mail-bn8nam12on20629.outbound.protection.outlook.com
 [2a01:111:f400:fe5b::629])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 9667b4fc-66d7-11ee-9b0d-b553b5be7939;
 Mon, 09 Oct 2023 21:11:03 +0200 (CEST)
Received: from CH0PR03CA0441.namprd03.prod.outlook.com (2603:10b6:610:10e::34)
 by MN6PR12MB8489.namprd12.prod.outlook.com (2603:10b6:208:474::10)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.41; Mon, 9 Oct
 2023 19:10:58 +0000
Received: from DS3PEPF000099E0.namprd04.prod.outlook.com
 (2603:10b6:610:10e:cafe::bd) by CH0PR03CA0441.outlook.office365.com
 (2603:10b6:610:10e::34) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.29 via Frontend
 Transport; Mon, 9 Oct 2023 19:10:58 +0000
Received: from SATLEXMB03.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.6838.14 via Frontend Transport; Mon, 9 Oct 2023 19:10:57 +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, 9 Oct
 2023 14:10:57 -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, 9 Oct
 2023 14:10:56 -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, 9 Oct 2023 14:10: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: 9667b4fc-66d7-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=RGphredbcp03qISj2Vyl5t4UVlij/3g4tGMmg11yeHkh4iAJulzrLjubH4beSvlVTcWZW4zlgAu0vCcABc2SQam/CwWXdk0oHqAyN/SCbTizY8aew2l7jy+gJ8tTwo+FiaklmRPX+/yOsjatz5QhMZ8aRjUpH5u07B9mS9SUlYscUHI7j2T5QHB5uttsMxJyD0QWJGRELSCXEvluCTiN0o61KFP6+o9P3UKaHCzAT8zn2G9wKBiyQNCcW0PUqxPSsA5AmhgtR/P8STOWefCORfemWUtqN2cXJZVjOsm8g1dHLxaMZdRS+vSqQsqSeTwmUedf4Cfcbew2Ne6TDn6vGQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=MGvupoSa9xWkw736Jziut1T+NiF+SMfbhTpjHqbLNCg=;
 b=bUeu7EE9o+8uj9nXk/riQGXJyZ0/eoOkc6vqwceRSQOJGmeeQ9fgz5fnF9QzwOr+YkpgrNrlKXOJqwqKvYnhXbLwkSt/6ndFvvBHTC8i7udsb4F9oq7t8n0BHPLDPqDudxB5PK3L8TaZaopzVszack3D37K/8mumEK+CUkT/hjKaPGzU3wCN/cXApGmhOXDH5or5bJElHRl+yZpjtR+dLYIlOSWd2q1n/NtLyOUqwTC6QmsognOrnci2OinZ8zLhJ9gduyu9Dzae5H+6Z1RhrrMeYj3F60Sf4ufh9gjQWjTkaviDNC999Ran+m6WLXL7QGKuMBOMterWoy5WY1Rf1Q==
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=MGvupoSa9xWkw736Jziut1T+NiF+SMfbhTpjHqbLNCg=;
 b=L8xxTF0s1ICM8NeUTlbWX9l8U0ojpYPSe3Z+6nJUbaRW8YQ91211OAxSXP4hWuwR4oYxQWpK/H1Z3nMtRG7DVsN2e09cZc+0KodUQDQcnwaTA+d3OBhpTaafBKtiPYDhrO3M7UFHSoaH+jp08u2ZX9WCzmxTmlYIz+7DWJivqN0=
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: <f92f9302-64a7-44db-8cba-dc98670de417@amd.com>
Date: Mon, 9 Oct 2023 15:11:02 -0400
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
From: Stewart Hildebrand <stewart.hildebrand@amd.com>
Subject: Re: [PATCH v2 2/3] xen/arm: make has_vpci depend on CONFIG_HAS_VPCI
To: Julien Grall <julien@xen.org>, <xen-devel@lists.xenproject.org>
CC: Oleksandr Andrushchenko <oleksandr_andrushchenko@epam.com>, "Stefano
 Stabellini" <sstabellini@kernel.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>, Oleksandr Tyshchenko
	<oleksandr_tyshchenko@epam.com>, Artem Mygaiev <artem_mygaiev@epam.com>,
	Rahul Singh <rahul.singh@arm.com>
References: <20230707014754.51333-1-stewart.hildebrand@amd.com>
 <20230707014754.51333-3-stewart.hildebrand@amd.com>
 <d7964e48-4461-2126-5570-3425cbe5ce24@xen.org>
Content-Language: en-US
In-Reply-To: <d7964e48-4461-2126-5570-3425cbe5ce24@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DS3PEPF000099E0:EE_|MN6PR12MB8489:EE_
X-MS-Office365-Filtering-Correlation-Id: a0161676-35a0-4108-c23e-08dbc8fb77f0
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	jBKVb3fKUNsvwbcneyZ2UsoUsphUjM+pxJq/uNCXHUXaSiayE5ftAOKDchVyur6yG5YN/cABuV1cbBcjxVWFv81lscdSB4Ix1a8bqAmG5VmSCAhqIs5fA5U8t8Cnv5PEZq/a9JNHQDcqOE9OliKhNQp1PnxckkyR/e7T+OcghTKRTjpSf+15KFPhRzws861HEP0Xok6CoOb4J01IKTmtPrPL5UjCqK+1/gChvVkZnsE/AZkum+LFvuQYu5XOVYvkzs94qRZg2sXKozO72m9UeiS/XzROYFk2uw8/XA0a+nzwgm/2o6zhi6/Vgp9hVn7uKVZFSyQVaYsm5JPejCFgKUQuXu3GVyAe2IBwVeL83nhDAS9MZRGTNeQkKVDiAuUPnVN0QbdDlOY0ou7rSYuewPBQuxHQ4o2Kaeo0vLOqqEbtnUg2s9AmGADP6AL972aajGms4GIUni3YBFeO0MmCzmGxZmmzRT0shfwUJCKhbu31iYiqccuK8WdMhqYipmv63DimmwsNtqKTB4br3l0MKsvJirPDAUsvOsyivAz1qTb/T6H9POUYayXWrCWkX1SSIXsHnc+d3ylEXOzD6FIOHp+oLj6k0FGbcpZZvHcCfzHdFGwbR+Orjg73kbZliLHdCWYEhLUcn/1Y1ao+nQVlqP17OWY2gKpvaAwnCvEoEYaxdN832/uP2+CHEr/6YpFX0PfrfW4+7mc4eOdPJLl9MnnOJfb8lKicQvEy9Q1YstxVEVy5Bodk5KmSsYhvVmeQzXeSB4A1q7Mat503FD3GQmCEsppKomTdPVqn7s0p4kZxUkyzGN0CCw1s2HnxvjpT6v7LdLk2Rq0Wt1NQNcIFWg==
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)(230922051799003)(64100799003)(451199024)(82310400011)(186009)(1800799009)(36840700001)(46966006)(40470700004)(2616005)(40480700001)(31686004)(40460700003)(53546011)(6666004)(478600001)(966005)(82740400003)(86362001)(31696002)(47076005)(81166007)(356005)(41300700001)(7416002)(8936002)(426003)(36756003)(316002)(336012)(2906002)(26005)(83380400001)(110136005)(8676002)(36860700001)(5660300002)(4326008)(54906003)(16576012)(44832011)(70206006)(70586007)(36900700001)(43740500002);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Oct 2023 19:10:57.6889
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: a0161676-35a0-4108-c23e-08dbc8fb77f0
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:
	DS3PEPF000099E0.namprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN6PR12MB8489

On 7/7/23 04:55, Julien Grall wrote:
> Hi,
> 
> On 07/07/2023 02:47, Stewart Hildebrand wrote:
>> From: Oleksandr Andrushchenko <oleksandr_andrushchenko@epam.com>
>>
>> VPCI is disabled on ARM. Make it depend on CONFIG_HAS_VPCI to test the PCI
>> passthrough support. Also make it depend on is_hardware_domain for now. The
>> is_hardware_domain check should be removed when vPCI is upstreamed.
>>
>> While here, remove the comment on the preceding line.
>>
>> Signed-off-by: Oleksandr Andrushchenko <oleksandr_andrushchenko@epam.com>
>> Signed-off-by: Rahul Singh <rahul.singh@arm.com>
>> Signed-off-by: Stewart Hildebrand <stewart.hildebrand@amd.com>
>> ---
>> There are two downstreams [1] [2] that have independently made a version this
>> change, each with different Signed-off-by's. I simply picked one at random for
>> the Author: field, and added both Signed-off-by lines. Please let me know if
>> there are any objections.
>>
>> v1->v2:
>> * add is_hardware_domain check. This will need to be removed after the vPCI
>>    series [3] is merged.
>>
>> downstream->v1:
>> * change to IS_ENABLED(CONFIG_HAS_VPCI) instead of hardcoded to true
>> * remove the comment on the preceding line
>>
>> [1] https://gitlab.com/xen-project/people/bmarquis/xen-arm-poc/-/commit/27be1729ce8128dbe37275ce7946b2fbd2e5a382
>> [2] https://github.com/xen-troops/xen/commit/bf12185e6fb2e31db0d8e6ea9ccd8a02abadec17
>> [3] https://lists.xenproject.org/archives/html/xen-devel/2023-06/msg00863.html
>> ---
>>   xen/arch/arm/include/asm/domain.h | 3 +--
>>   1 file changed, 1 insertion(+), 2 deletions(-)
>>
>> diff --git a/xen/arch/arm/include/asm/domain.h b/xen/arch/arm/include/asm/domain.h
>> index 99e798ffff68..1a13965a26b8 100644
>> --- a/xen/arch/arm/include/asm/domain.h
>> +++ b/xen/arch/arm/include/asm/domain.h
>> @@ -298,8 +298,7 @@ static inline void arch_vcpu_block(struct vcpu *v) {}
>>
>>   #define arch_vm_assist_valid_mask(d) (1UL << VMASST_TYPE_runstate_update_flag)
>>
>> -/* vPCI is not available on Arm */
>> -#define has_vpci(d)    ({ (void)(d); false; })
>> +#define has_vpci(d) ({ IS_ENABLED(CONFIG_HAS_VPCI) && is_hardware_domain(d); })
> 
> So in v1, I asked whether we should use is_hardware_domain() or
> d->arch.pci. I see you went with the former, but wouldn't this mean that
> the vPCI is always enabled for dom0 when CONFIG_HAS_VPCI=y?

Yes...

> Shouldn't this instead be conditional to pci_passthrough_enabled?

That could be a possibility, however, in v5 of the PCI ARM SMMU series [4], we propose removing the pci_passthrough_enabled flag (as a way to use PCI devices in dom0 without pci-passthrough=yes). If pci_passthrough_enabled is gone, the conditions under which vpci should be enabled for dom0 aren't entirely clear to me (other than CONFIG_HAS_VPCI=y).

[4] https://lists.xenproject.org/archives/html/xen-devel/2023-10/msg00210.html

> So you could return d->arch.pci in has_vcpi(). The field would be set by
> domain_create() based on the flags passed by the caller. I would
> properly plumb to xen_domctl_createdomain and has a check in
> arch_sanitise_domain_config() to confirm the flag can be set.

I'll plumb this for v3 of this series.

> 
> Cheers,
> 
> -- 
> Julien Grall


From xen-devel-bounces@lists.xenproject.org Mon Oct 09 19:12:09 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 09 Oct 2023 19:12:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614436.955495 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qpvfl-0003U6-0a; Mon, 09 Oct 2023 19:12:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614436.955495; Mon, 09 Oct 2023 19:12: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 1qpvfk-0003Tz-UG; Mon, 09 Oct 2023 19:12:08 +0000
Received: by outflank-mailman (input) for mailman id 614436;
 Mon, 09 Oct 2023 19:12: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=rjZ2=FX=amd.com=Stewart.Hildebrand@srs-se1.protection.inumbo.net>)
 id 1qpvfj-0003Tp-QF
 for xen-devel@lists.xenproject.org; Mon, 09 Oct 2023 19:12:07 +0000
Received: from NAM11-DM6-obe.outbound.protection.outlook.com
 (mail-dm6nam11on20630.outbound.protection.outlook.com
 [2a01:111:f400:7eaa::630])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id bb7a879c-66d7-11ee-9b0d-b553b5be7939;
 Mon, 09 Oct 2023 21:12:05 +0200 (CEST)
Received: from DM6PR06CA0008.namprd06.prod.outlook.com (2603:10b6:5:120::21)
 by BL1PR12MB5351.namprd12.prod.outlook.com (2603:10b6:208:317::16) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.38; Mon, 9 Oct
 2023 19:12:02 +0000
Received: from DS1PEPF00017097.namprd05.prod.outlook.com
 (2603:10b6:5:120:cafe::20) by DM6PR06CA0008.outlook.office365.com
 (2603:10b6:5:120::21) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.36 via Frontend
 Transport; Mon, 9 Oct 2023 19:12:01 +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.6838.14 via Frontend Transport; Mon, 9 Oct 2023 19:12: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, 9 Oct
 2023 14:12: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, 9 Oct
 2023 12:11:57 -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; Mon, 9 Oct 2023 14:11: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: bb7a879c-66d7-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=CuM/2eVD6wkx3a4SE5RnhpMPrTktGZIhCBI5c5uWhLIMBTDurwb7aFHKUEut/rCcR2E2BNRCY4UEkuLOI+d4VdgRQ1SXNW+Fo01Okh3ukZHzAnye/6LbL/kPTy3zujK+9R6Zu5VT0xTwbja+EkC0jnpXsTBKst1I3og+eAdKjyo3jNPPzCwG8nS1+cRzDKMYLi2hbevyLzWFV5/OLUWfnZhJbugrK3sz1itxeSBV92DEzFwRTHhN1lPy+eTaVMvor2/SBe3RMrLUwnJVuJ7yWqi4Ost/z9AgYqGyh+Ef7I3sHbtnQnmYwDtNVznA0hY5h172peL95AkIAc964orDyw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=YXX3+enYEIy9Xuha+38PyOpC55xe1RxOCwUP88fO3t4=;
 b=DiWHxge58iSsVn01ypmI9d9K5UhAVmRJDNgzXG54tqd9A709Jx2+D2MkLcLaBsMsJDVyaEY31WTTy6jFr9ihQ+BUQMh8MJBfWxY58KLQQxORTvbko1S1RCC0x5dwb1PJdVgqQ2hOm3nf3rkrcrvZxhE94D1V4MwbMhaw3LzC6+84RnZkgl4PqquVYn1TmI2nLEkhYeng9d47DMdlGS/deX8FbW0+8byi0a9vu/aNPxViIFMNTmB0azamf1kl9BZSVHJlWNMX0iY5AM7jkhOm/YaS29CUxPF8WYNE6iu1ZTeLtukGqiWKeBNYbU3bMIdsvImifZ9NruEsukuGsCiRuw==
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=YXX3+enYEIy9Xuha+38PyOpC55xe1RxOCwUP88fO3t4=;
 b=wmkmzG/7/vz5CX2Ot9VtwufwUwLd20zKNrFgoqY3JBTDiRl3EptaT2H3Wbbbg5GEtQNIfItfUPGjLsgr4CTneSQkS+UnggRIvNKy1sFw2jzDHLEmDMQFJH3gP2fJw8yAIM7579gEGuThRZSqaaW26MlknK9ldaeo5vmgHah2u4k=
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: <6523e5eb-e46c-49fd-b119-7026fbb686f6@amd.com>
Date: Mon, 9 Oct 2023 15:12:02 -0400
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v2 3/3] [FUTURE] xen/arm: enable vPCI for domUs
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>,
	=?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>, Oleksandr Tyshchenko
	<oleksandr_tyshchenko@epam.com>, Artem Mygaiev <artem_mygaiev@epam.com>
References: <20230707014754.51333-1-stewart.hildebrand@amd.com>
 <20230707014754.51333-4-stewart.hildebrand@amd.com>
 <e5a0ed8a-d85b-fb60-609a-f46884433c60@xen.org>
From: Stewart Hildebrand <stewart.hildebrand@amd.com>
In-Reply-To: <e5a0ed8a-d85b-fb60-609a-f46884433c60@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 7bit
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DS1PEPF00017097:EE_|BL1PR12MB5351:EE_
X-MS-Office365-Filtering-Correlation-Id: 4b1c38ca-9664-4db9-c5a5-08dbc8fb9df4
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	aubYSTN93ogbGFmj4uBe8xQWpDjR5a1G8izyXtP9gK+mFqtQvKMtn4Bqy97hkYCzG+zO+X2BGcvM2r0nf/gie6E6bYk66+rHhvGjI1k7fhml6+CPW7bprF4PBMB2vJ485GdllqFQLLmwaafAV9FARjnKkw8zgAtzPW0SBtKdMMv6qf7rWgNy5j6pbbDbOcRQsYvwtvEdORWrwihrHWzMACuGiuLuUgXxgXLKWc2Qv0T6Pc3VPc5N1xO+yDANWWcvmunE7g9dSQ0dAl06vUdnxy9P0B8alQr9HEYQ5kWkjvPHlvCwtcWWCZDOuABKmwZwrHRDR2rBBbsgoUAb2sCgZNOv/jmZoIFXOAcSKKW5EiAMryN/BAvWHQJjakBbfJ5Ud2XSwHNgRfJxNiSO2Tr1UZ70Dh4+cNUcAnBtA067x4gFTUXsJH/oIkViaAz/jA8UgUbdBW6as0FHtoWttAdrM8EZ5GyrVc2bOHPZex4/lYnX+wvJqVvPlOESN0iNLQa0WF2vXcGSpQ3rqqwdKdnR3g3gmsjk2cP+3FRAbYnXm2QhocZQMcO2KQ9sH0nNcm1nOCRagjTb3V7YEeuuxaAykQwZEW8wJF6dejolCit6djwpM+MNx0BDgNDTkYbsmOh4K9POpiivYnSO8zbyao54VGqrl4Pk0CM3tiHxqJnOk5C9DBXv61KDNg2tDHIxtLY8JWUrB8aat2jmxUBkg7RNSSJsJS7dSVW4fAZ9foIpXXJVmVQUeBnQLQ50NpEYSYGkM0ZTq4PAiLwmGWXncrUmE2x4mL58DYOd2beEryshUns=
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)(230922051799003)(64100799003)(451199024)(82310400011)(1800799009)(186009)(40470700004)(36840700001)(46966006)(31696002)(356005)(86362001)(36756003)(81166007)(31686004)(82740400003)(40480700001)(2906002)(966005)(44832011)(4744005)(478600001)(41300700001)(53546011)(8936002)(5660300002)(4326008)(8676002)(6666004)(336012)(2616005)(426003)(40460700003)(70206006)(54906003)(110136005)(16576012)(70586007)(316002)(26005)(36860700001)(47076005)(36900700001)(43740500002);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Oct 2023 19:12:01.4686
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 4b1c38ca-9664-4db9-c5a5-08dbc8fb9df4
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: BL1PR12MB5351

On 7/7/23 05:00, Julien Grall wrote:
> Hi,
> 
> On 07/07/2023 02:47, Stewart Hildebrand wrote:
>> Remove is_hardware_domain check in has_vpci, and select HAS_VPCI_GUEST_SUPPORT
>> in Kconfig.
>>
>> [1] https://lists.xenproject.org/archives/html/xen-devel/2023-06/msg00863.html
>>
>> Signed-off-by: Stewart Hildebrand <stewart.hildebrand@amd.com>
>> ---
>> As the tag implies, this patch is not intended to be merged (yet).
> 
> Can this be included in the vPCI series or resent afterwards?

Yes, I'll coordinate with Volodymyr. Since this has a dependency on ("xen/arm: pci: introduce PCI_PASSTHROUGH Kconfig option") I'll continue to include it in this series until the prerequisites are committed.

>>
>> Note that CONFIG_HAS_VPCI_GUEST_SUPPORT is not currently used in the upstream
>> code base. It will be used by the vPCI series [1]. This patch is intended to be
>> merged as part of the vPCI series.
>>
>> v1->v2:
>> * new patch


From xen-devel-bounces@lists.xenproject.org Mon Oct 09 19:26:09 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 09 Oct 2023 19:26:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614441.955506 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qpvtE-0005t7-7g; Mon, 09 Oct 2023 19:26:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614441.955506; Mon, 09 Oct 2023 19: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 1qpvtE-0005t0-4Y; Mon, 09 Oct 2023 19:26:04 +0000
Received: by outflank-mailman (input) for mailman id 614441;
 Mon, 09 Oct 2023 19: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=Xq5o=FX=tklengyel.com=tamas@srs-se1.protection.inumbo.net>)
 id 1qpvtD-0005su-0U
 for xen-devel@lists.xenproject.org; Mon, 09 Oct 2023 19:26:03 +0000
Received: from sender4-op-o12.zoho.com (sender4-op-o12.zoho.com
 [136.143.188.12]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id ac004e1b-66d9-11ee-9b0d-b553b5be7939;
 Mon, 09 Oct 2023 21:26:00 +0200 (CEST)
Received: from mail-yb1-f178.google.com (mail-yb1-f178.google.com
 [209.85.219.178]) by mx.zohomail.com
 with SMTPS id 1696879554439198.56562758093196;
 Mon, 9 Oct 2023 12:25:54 -0700 (PDT)
Received: by mail-yb1-f178.google.com with SMTP id
 3f1490d57ef6-d8673a90f56so5148045276.0
 for <xen-devel@lists.xenproject.org>; Mon, 09 Oct 2023 12:25: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: ac004e1b-66d9-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; t=1696879556; cv=none; 
	d=zohomail.com; s=zohoarc; 
	b=epLr6YlUiri8a+7+C7uX7Dl9uS6QIYivkX5j/I2DKY7O5cjih9fDKDc7EcEuXFSMluMnbcXcdwhJasEEv2Z+TbUiRKxFxVOeNc3lTI/HewD74p0XybYNEC6xcBCJxZbqXVFR9HtHYwxFb/JOW8P9j32VRlHxy2dB7JUroiC2kBs=
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; 
	t=1696879556; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:MIME-Version:Message-ID:References:Subject:Subject:To:To:Message-Id:Reply-To; 
	bh=qFKBvHh2n933efa+5z6EkgCUMcNkftWthOO5thaMdvo=; 
	b=gUkCM1T6pfEQSb0hs3eN+VI+35H9yS8Mx6TnhjLRo8Np9ON3o6a1M0VyHFeGIFqEGK84xRExeDPnfVS7vB4mvtQScL/loJLYmpoH8E61/iZpcPSUJGCIBtkYmqozi9PXiphOoJNKeNBmyyyqplI9a33VU+ZnEAl3HO4eDgLiPf0=
ARC-Authentication-Results: i=1; mx.zohomail.com;
	dkim=pass  header.i=tklengyel.com;
	spf=pass  smtp.mailfrom=tamas@tklengyel.com;
	dmarc=pass header.from=<tamas@tklengyel.com>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; t=1696879556;
	s=zmail; d=tklengyel.com; i=tamas@tklengyel.com;
	h=MIME-Version:References:In-Reply-To:From:From:Date:Date:Message-ID:Subject:Subject:To:To:Cc:Cc:Content-Type:Content-Transfer-Encoding:Message-Id:Reply-To;
	bh=qFKBvHh2n933efa+5z6EkgCUMcNkftWthOO5thaMdvo=;
	b=IPC63Kic3WvqNQmQJpy19ubrHyOk8ot9ZaRW6lMXIR+pYtwdhRS5KNf544BiRAht
	nEYSsWK9PQ0Dh+6pjKZ6oPJcOPqDUsLqNe4lvJs35Ku65cZ7Sb7FLm0EfxyiVG8WM+O
	pLS4kq4dYWGdmTK53z/uKiI6Bnj9I+c2hlKwVmXw=
X-Gm-Message-State: AOJu0Yz2pj0xPlLPf7sbEfixZp7CyUwstX0yiM8NagRrbgiqVaKXgiP9
	bHKpaEMRFmFJfCxXCCOg84uiyqJSIWu3M9mTWpU=
X-Google-Smtp-Source: AGHT+IG2URxlCPLxZyx5J/AtzmfU8nwUWgNIeWf/MnZ6UXrstX6ESJUsl0+q7sD9tuGV63TZrNykdDsw5rIG+dMGSAs=
X-Received: by 2002:a25:838a:0:b0:d9a:5071:716f with SMTP id
 t10-20020a25838a000000b00d9a5071716fmr332823ybk.59.1696879553405; Mon, 09 Oct
 2023 12:25:53 -0700 (PDT)
MIME-Version: 1.0
References: <cover.1696833629.git.nicola.vetrini@bugseng.com> <4f506769acca31d3d9f36b893822581720050d61.1696833629.git.nicola.vetrini@bugseng.com>
In-Reply-To: <4f506769acca31d3d9f36b893822581720050d61.1696833629.git.nicola.vetrini@bugseng.com>
From: Tamas K Lengyel <tamas@tklengyel.com>
Date: Mon, 9 Oct 2023 15:25:17 -0400
X-Gmail-Original-Message-ID: <CABfawhkD2XwidWF6KezWz8cd=1yBWSfR0gOLrDFH7ZyN+Xrctw@mail.gmail.com>
Message-ID: <CABfawhkD2XwidWF6KezWz8cd=1yBWSfR0gOLrDFH7ZyN+Xrctw@mail.gmail.com>
Subject: Re: [XEN PATCH][for-next v2 5/7] x86/vm_event: add missing include
 for hvm_vm_event_do_resume
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, Alexandru Isaila <aisaila@bitdefender.com>, 
	Petre Pircalabu <ppircalabu@bitdefender.com>, Wei Liu <wl@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Mon, Oct 9, 2023 at 2:55=E2=80=AFAM Nicola Vetrini
<nicola.vetrini@bugseng.com> wrote:
>
> The missing header makes the declaration visible when the function
> is defined, thereby fixing a violation of MISRA C:2012 Rule 8.4.
>
> Fixes: 1366a0e76db6 ("x86/vm_event: add hvm/vm_event.{h,c}")
> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>

Acked-by: Tamas K Lengyel <tamas@tklengyel.com>


From xen-devel-bounces@lists.xenproject.org Mon Oct 09 19:26:41 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 09 Oct 2023 19:26:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614445.955517 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qpvto-0006Q8-KQ; Mon, 09 Oct 2023 19:26:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614445.955517; Mon, 09 Oct 2023 19:26: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 1qpvto-0006Q1-FX; Mon, 09 Oct 2023 19:26:40 +0000
Received: by outflank-mailman (input) for mailman id 614445;
 Mon, 09 Oct 2023 19:26: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=Xq5o=FX=tklengyel.com=tamas@srs-se1.protection.inumbo.net>)
 id 1qpvtn-0005su-59
 for xen-devel@lists.xenproject.org; Mon, 09 Oct 2023 19:26:39 +0000
Received: from sender4-op-o12.zoho.com (sender4-op-o12.zoho.com
 [136.143.188.12]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id c2f225bb-66d9-11ee-9b0d-b553b5be7939;
 Mon, 09 Oct 2023 21:26:37 +0200 (CEST)
Received: from mail-yw1-f171.google.com (mail-yw1-f171.google.com
 [209.85.128.171]) by mx.zohomail.com
 with SMTPS id 1696879593265438.689526195775;
 Mon, 9 Oct 2023 12:26:33 -0700 (PDT)
Received: by mail-yw1-f171.google.com with SMTP id
 00721157ae682-5a7a80a96dbso5690977b3.0
 for <xen-devel@lists.xenproject.org>; Mon, 09 Oct 2023 12: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: c2f225bb-66d9-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; t=1696879595; cv=none; 
	d=zohomail.com; s=zohoarc; 
	b=iFgqhNxjCUWDucF/IOJg6yMfhAAyQB5Ih1Aad0dNxZfrnvmdrhyviHqjCmTi9SOYfBHes0uwhsyN4zk6q81SrTKIpu1Z4nJX6lqeiHlgk+HahqEBD6RJJR7ptkNmVIv8HM/oxBsIiS+lv0jI5KKPNU4rz50mgR+J4tM27Ww/ekE=
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; 
	t=1696879595; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:MIME-Version:Message-ID:References:Subject:Subject:To:To:Message-Id:Reply-To; 
	bh=5OwDAaMh+lWsIjohWuk2Qyb1hsbZccbWqHu1Djv1yPA=; 
	b=TUMRpWkLFdf6+vufOYCozeSkHn83PCI099oCf8JRyiOamZ8Vc9RapFD4IWnBW9eITEQy7g1/VqGCpAmwNnsBIRV3G8+AdLZrV0ZaBsNxHnRuMGjOylXQ1ZHtilvR1UKQaoOKh9WnsNQgZciXOpQaLJuWilse0zhID40KWXrPlsE=
ARC-Authentication-Results: i=1; mx.zohomail.com;
	dkim=pass  header.i=tklengyel.com;
	spf=pass  smtp.mailfrom=tamas@tklengyel.com;
	dmarc=pass header.from=<tamas@tklengyel.com>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; t=1696879595;
	s=zmail; d=tklengyel.com; i=tamas@tklengyel.com;
	h=MIME-Version:References:In-Reply-To:From:From:Date:Date:Message-ID:Subject:Subject:To:To:Cc:Cc:Content-Type:Content-Transfer-Encoding:Message-Id:Reply-To;
	bh=5OwDAaMh+lWsIjohWuk2Qyb1hsbZccbWqHu1Djv1yPA=;
	b=bgyrxsXVBRF0SUNWWCflJHZ0IOQf9xnnRjDbMZZPdTwOWckp1Fkg0fQ+YqhdqBof
	+idC2EKqMjxBc9cbAsgM5hwdEQRKvHSrNMcYOgDKtfElYYzX50rKgPM3k1CIqfzrty2
	ydU48ysAtpVeM4Ap3KnRvfOK5LSwT2QVQ1Kfzu4M=
X-Gm-Message-State: AOJu0Yz+YbU/fgS9Uc0o1sLtdvBGBgflTdCu1EAAHZx6JQk2RdwUSvU+
	y2CPWS9W2Yw9Vz5N/CcUrCsN1isPKrMrEMKrwVo=
X-Google-Smtp-Source: AGHT+IEIgT7UFEhapC+nS7ag9bJFrNfTElK0iwfwp7cYYMWHsYwwiAUS3gL9YjqhGcl9dzCMomd3Z+QCzkBp+Len1Tw=
X-Received: by 2002:a25:ea0a:0:b0:d7b:9d44:769a with SMTP id
 p10-20020a25ea0a000000b00d7b9d44769amr7114023ybd.0.1696879592190; Mon, 09 Oct
 2023 12:26:32 -0700 (PDT)
MIME-Version: 1.0
References: <cover.1696833629.git.nicola.vetrini@bugseng.com> <f9dcb169ad472fe888d6a03234264ec73e290df9.1696833629.git.nicola.vetrini@bugseng.com>
In-Reply-To: <f9dcb169ad472fe888d6a03234264ec73e290df9.1696833629.git.nicola.vetrini@bugseng.com>
From: Tamas K Lengyel <tamas@tklengyel.com>
Date: Mon, 9 Oct 2023 15:25:56 -0400
X-Gmail-Original-Message-ID: <CABfawhm6Cv0MxCN6tzYV1Ryz_Ek=E_UN1Z_F1_1KFy6-AZHE2Q@mail.gmail.com>
Message-ID: <CABfawhm6Cv0MxCN6tzYV1Ryz_Ek=E_UN1Z_F1_1KFy6-AZHE2Q@mail.gmail.com>
Subject: Re: [XEN PATCH][for-next v2 7/7] x86/mem_access: make function static
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, Alexandru Isaila <aisaila@bitdefender.com>, 
	Petre Pircalabu <ppircalabu@bitdefender.com>, George Dunlap <george.dunlap@citrix.com>, 
	Wei Liu <wl@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Mon, Oct 9, 2023 at 2:55=E2=80=AFAM Nicola Vetrini
<nicola.vetrini@bugseng.com> wrote:
>
> The function is used only within this file, and therefore can be static.
>
> No functional change.
>
> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>

Acked-by: Tamas K Lengyel <tamas@tklengyel.com>


From xen-devel-bounces@lists.xenproject.org Mon Oct 09 19:58:09 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 09 Oct 2023 19:58:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614453.955526 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qpwO3-0003Bl-Vk; Mon, 09 Oct 2023 19:57:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614453.955526; Mon, 09 Oct 2023 19:57: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 1qpwO3-0003Be-T1; Mon, 09 Oct 2023 19:57:55 +0000
Received: by outflank-mailman (input) for mailman id 614453;
 Mon, 09 Oct 2023 19:57: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=rjZ2=FX=amd.com=Stewart.Hildebrand@srs-se1.protection.inumbo.net>)
 id 1qpwO2-0003BY-Ec
 for xen-devel@lists.xenproject.org; Mon, 09 Oct 2023 19:57:54 +0000
Received: from NAM04-DM6-obe.outbound.protection.outlook.com
 (mail-dm6nam04on2062b.outbound.protection.outlook.com
 [2a01:111:f400:7e8b::62b])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 20a73433-66de-11ee-98d3-6d05b1d4d9a1;
 Mon, 09 Oct 2023 21:57:52 +0200 (CEST)
Received: from DS7PR03CA0271.namprd03.prod.outlook.com (2603:10b6:5:3ad::6) 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.6863.37; Mon, 9 Oct 2023 19:57:46 +0000
Received: from CY4PEPF0000EE3C.namprd03.prod.outlook.com
 (2603:10b6:5:3ad:cafe::6a) by DS7PR03CA0271.outlook.office365.com
 (2603:10b6:5:3ad::6) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.38 via Frontend
 Transport; Mon, 9 Oct 2023 19:57:46 +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.6838.22 via Frontend Transport; Mon, 9 Oct 2023 19:57: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; Mon, 9 Oct
 2023 14:57:43 -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; Mon, 9 Oct 2023 14:57: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: 20a73433-66de-11ee-98d3-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=FRBqeYB75obSSLcvybMQXZCbWnm5/SJ3RXtJw+MGYMO2BXiYtKG85H9v23NbEXVvXPP/AeKQDVXSJ+cT57+ihUoOLw7sOwmFdu0tKgMZuNXXV1+QihrAy2N3lKtdbOZpoc9f4/b9rS1F8LM4tyEo7GtUPmsf89DFxYWLuKJ3HLKJPgDXZ8vknhTeVOnUHaqrnviEzbSmXShA9SD83GqXQntnvzFh6BnxxFozfibxAFzd2CAip91R2alFo5dgYll8jKI3IwmPtTZmNNDOmHvmy8h/nIzYAJxp8gifoQDQNPeUsm3z2ORGnT59vntpBhnp46oRWuk37Dh6gehPOWjhCw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=wSZDHImSqdRuigQkfHjF59Q9D7kMTqQsrqFqKJCnv9I=;
 b=kCMWvGiNBKqfitBR0ZNsd9u6kw/iVbfDswxiNV5H6UM84XmkKBy3JxWI0/iYTvNe87lKxcHqo6ZRP6rJIuEj6omVhMV5/bbbKCVy+hqo5uoXbB09a4zOp51x6a40VdI/LqRgDIu+LVvvEjwsTv/22I0y8hxdXUwP/CH4ZJaforsorckwhXLD0WANgyoRgoKFJNcC0wi7xEJbMjG2Psb9wMlyUKzVRPXVCujiNXlHPy7nzlzCHpz1KYMTRbmeVP2RpIqDI1WcOGmCi5PlYiepluw11RVJGpEHa+D8Uel2pT2emKRWKPZZomUZUP9vBPInwzLOx3Q4A2RaBs5NWkyTDQ==
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=wSZDHImSqdRuigQkfHjF59Q9D7kMTqQsrqFqKJCnv9I=;
 b=Ayd/0+WiHZx8jk0uGWPaqDH9uFubpt1xyJjgW+4esrscFhAnIXtwh6vLolYsyR7Lp1q4Ly2Kh9Cc9H9QNrm2kfRlKF0mNxUw8H/HUX4LAtvITh8LInMdTcWu9mzizvoLvyqhc3OuEa0J7TReZR/QdFpxD+14M8QW/hU9fed74NU=
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>, 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>, Anthony PERARD <anthony.perard@citrix.com>, Juergen Gross
	<jgross@suse.com>, =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?=
	<roger.pau@citrix.com>
Subject: [PATCH v3 0/5] Kconfig for PCI passthrough on ARM
Date: Mon, 9 Oct 2023 15:57:39 -0400
Message-ID: <20231009195747.889326-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_|CH3PR12MB9393:EE_
X-MS-Office365-Filtering-Correlation-Id: 3d27864e-eac8-4f3a-c646-08dbc90201c6
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	zX0EITC9L8KAaFQmirf2HxFi8KkvF39iYWf8CLmtOFtpBnHcYI8WZJn6bLhKtNXpHqStdU3qG9ge/AWcj/syhC/JO/dMxBQGV70Qy/ZpRicIoGtnte+ue4ibi2RjNrdcBUzUAkxsU18bvYEJz00sjLQTxG02iLhHPcU6kt6zdscrtPWYxuT7IGv4MJla26s24PK3Ons0BxUfCfF4cAUt/cpNDqovIFOV+88M4eGqWtlNXl9YnGqFJhgynQ12Ch7+IlZGuQG9AYzXR2A01tBlRVlU9iC/W1tXnF5lmqooYvds6rilD+G+k1hEVlAuMo7a4x9asjQ/2yCkpzNu4UZERItP4Zgj2rVVL3F83pa3neGrXAGGD9aMP3gJ4teKQDGbdcq0X4PGwCxUBWvbtAXKak6AiAdFjPARMdUtvuKBz21YPPuklmYP4h6TFiM/PNwiuNFCnpQlcIKZ7tY/QE19XM6E3kNfVrw3mzubPr5ze1KcJu+kPfzgrOMm1iDN0RZliKU/+YXO+WsOmjql4NcCw1oIUmf8FEUzComQQivtg9P22lpiHhysd0z7GURyCkN0buCds6xyktn//Voe3ER9TWAJZPdOnlbj/2gH0ERLemBvLmKOgld49AkmYzFQDmUfNKpm0amgTGFqEanNpBz1TQJQuNsI0ERIgNuQpvhhwGmGVg8RXS7NZU9qWJ18jOl3b71S8RKPtnWBL/RRhi7OPfw/NcrA/WRFJhV2gewJd24e0zHxoZJ7Ud1bruAnQqhkF4PQ80uo7aaFyylAbueyCw==
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)(230922051799003)(82310400011)(1800799009)(451199024)(186009)(64100799003)(40470700004)(36840700001)(46966006)(81166007)(86362001)(356005)(36756003)(40480700001)(2906002)(478600001)(966005)(82740400003)(5660300002)(41300700001)(8936002)(44832011)(4326008)(8676002)(426003)(83380400001)(336012)(1076003)(2616005)(40460700003)(54906003)(70206006)(6916009)(70586007)(7416002)(316002)(26005)(47076005)(36860700001)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Oct 2023 19:57:45.8885
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 3d27864e-eac8-4f3a-c646-08dbc90201c6
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: CH3PR12MB9393

There are multiple series in development/review [1], [2] that will benefit from
having a Kconfig option for PCI passthrough on ARM. Hence I have sent this
series independent from any other series.

v2->v3:
* add ("xen/arm: pci: plumb xen_arch_domainconfig with pci info")
* rename ("xen/arm: make has_vpci depend on CONFIG_HAS_VPCI")
      to ("xen/arm: make has_vpci() depend on d->arch.has_vpci")
* add ("xen/arm: enable vPCI for dom0")

v1->v2:
* add ("[FUTURE] xen/arm: enable vPCI for domUs")

[1] https://lists.xenproject.org/archives/html/xen-devel/2023-08/msg02361.html
[2] https://lists.xenproject.org/archives/html/xen-devel/2023-10/msg00210.html

Oleksandr Andrushchenko (1):
  xen/arm: make has_vpci() depend on d->arch.has_vpci

Rahul Singh (1):
  xen/arm: pci: introduce PCI_PASSTHROUGH Kconfig option

Stewart Hildebrand (3):
  xen/arm: pci: plumb xen_arch_domainconfig with pci info
  xen/arm: enable vPCI for dom0
  [FUTURE] xen/arm: enable vPCI for domUs

 tools/libs/light/libxl_arm.c      |  3 +++
 xen/arch/arm/Kconfig              | 10 ++++++++++
 xen/arch/arm/domain.c             | 10 ++++++++++
 xen/arch/arm/domain_build.c       |  3 +++
 xen/arch/arm/include/asm/domain.h |  5 +++--
 xen/include/public/arch-arm.h     |  4 ++++
 xen/include/public/domctl.h       |  2 +-
 7 files changed, 34 insertions(+), 3 deletions(-)


base-commit: ffa1437686712045953c33c5e77a4ebdd9973916
-- 
2.42.0



From xen-devel-bounces@lists.xenproject.org Mon Oct 09 19:58:18 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 09 Oct 2023 19:58:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614456.955535 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qpwOQ-0003Y7-8H; Mon, 09 Oct 2023 19:58:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614456.955535; Mon, 09 Oct 2023 19:58: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 1qpwOQ-0003Y0-5E; Mon, 09 Oct 2023 19:58:18 +0000
Received: by outflank-mailman (input) for mailman id 614456;
 Mon, 09 Oct 2023 19:58: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=rjZ2=FX=amd.com=Stewart.Hildebrand@srs-se1.protection.inumbo.net>)
 id 1qpwOP-0003Ue-06
 for xen-devel@lists.xenproject.org; Mon, 09 Oct 2023 19:58:17 +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 2df0c804-66de-11ee-9b0d-b553b5be7939;
 Mon, 09 Oct 2023 21:58:14 +0200 (CEST)
Received: from MN2PR11CA0029.namprd11.prod.outlook.com (2603:10b6:208:23b::34)
 by BL1PR12MB5378.namprd12.prod.outlook.com (2603:10b6:208:31d::16)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.37; Mon, 9 Oct
 2023 19:58:10 +0000
Received: from BL6PEPF0001AB58.namprd02.prod.outlook.com
 (2603:10b6:208:23b:cafe::39) by MN2PR11CA0029.outlook.office365.com
 (2603:10b6:208:23b::34) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.36 via Frontend
 Transport; Mon, 9 Oct 2023 19:58:10 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 BL6PEPF0001AB58.mail.protection.outlook.com (10.167.241.10) 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, 9 Oct 2023 19:58:09 +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, 9 Oct
 2023 14:58: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; Mon, 9 Oct
 2023 12:57:59 -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; Mon, 9 Oct 2023 14:57: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: 2df0c804-66de-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=KzIRiSvH2+8AHEmJpDg3ZDlWH+d6pVDS1Fd5PxYl04hMFB4V3uYC2lyBn1422Urvp5KPuMRwThvDHBCSVruwoCqNvQUB8w3L+eATw+tbQueMBSM4OWe/2RhXIe3Dmio5mcBWfOc50whkETRStyvpTcHBozsLWOwE0VQtRWj0yIYrAwhAQkHZd2aiE0qH/OqV1Utk2nx/C/RxF+l5IBukl3czthFDwgMJyF2iL7BQ0k9anXEwHa0VqfKtmWR97lYVTpiS2N53zb60ZLbNIzlJXJG+zwX2WRkcBtnx9oZ0gY0iXAVFpA1nApEpUFjKWDZUYGa7mkem3iD8FXue0tRc7A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=5tFoqijnrmC0w4wv+Wq5XMW+oCAoSLFk0LkyRA0dK/o=;
 b=cp1RJ9A/hFW/CJ3WvcTo4jrOaxvUEACv1iVIpf+rcFu1sxhLGHKmloIlz3TUrIdMC0LnLfc4/nYKTENIZHwsSvuEBvJInXcfhJwx1RNAtGHuO3Y6J4GOH6YQXdQbHiLJLK8F7Exw6ek4R/8Gz/onpT8qlidztVTZKNt/C5Y/skWvDSUiuf4oeMi5cFsCBnYtR1OYcy7H3qzs1BNUrPQ/XyWhrblGnDY1tDW5VLjNfXHuQG3rBML7IdOjsSi/+WJKDS8/SiXlTjYFPDkMZ3Zb0t4KDVchNsNETywnF/Q3+bCOYevRD9JluZTU+42yFzhdTSIz3dVXrNrptkc8dFP8uw==
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=5tFoqijnrmC0w4wv+Wq5XMW+oCAoSLFk0LkyRA0dK/o=;
 b=HjBBSPZkc3JyTJBw5p4shdWBpWXzuikgf/l2bGiP8FUqrazOEaWxWSqrAIgZxaHwgl7u+3B0CoGM1StPAA1VzBChSZb4Aqbl2AN0aRSLniMP25qfZ2Z2dnQBxUSchLDlLlMnwiIll3ia9HF+484N6jfeiXJ/bWEHlWzAX6/pTlM=
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: Rahul Singh <rahul.singh@arm.com>, Stefano Stabellini
	<sstabellini@kernel.org>, Julien Grall <julien@xen.org>, Bertrand Marquis
	<bertrand.marquis@arm.com>, Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Stewart Hildebrand <stewart.hildebrand@amd.com>, Stefano Stabellini
	<stefano.stabellini@amd.com>, Julien Grall <jgrall@amazon.com>
Subject: [PATCH v3 1/5] xen/arm: pci: introduce PCI_PASSTHROUGH Kconfig option
Date: Mon, 9 Oct 2023 15:57:40 -0400
Message-ID: <20231009195747.889326-2-stewart.hildebrand@amd.com>
X-Mailer: git-send-email 2.42.0
In-Reply-To: <20231009195747.889326-1-stewart.hildebrand@amd.com>
References: <20231009195747.889326-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: BL6PEPF0001AB58:EE_|BL1PR12MB5378:EE_
X-MS-Office365-Filtering-Correlation-Id: 66e59378-0410-4dd6-06b6-08dbc9020fc2
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	HJU+0TlR3XQIkUK5cygvK1KAwvCDhR99BvJh6RIX96ULMBg18ERDufeIKbQ1V7eCWnsGntj2wYAD/uoF1RpyD0/oFPbo8FfBSmAxtpPvPwPj0haUT4nEH2jOjFUjAoN7FjJMrjmz9aUrtQ5ScTk6Efd2EDxXyCTfqgdYQiRxSkCZ5/IFjIHPUw377ikUKwLu5+0xWIK1VpJAag4O1jrh4reG1tdBTDXLHDOqZ5vFrQCpWva4vDFvh/GEjlMEM1flqbWyjhlc7z+6aQjNcCfL639oV77uZIcOHGv2KZzfcJeAR6KdZgqHw0aNM4YXYgr3kK4G+vljcfD8Fz2DOWPsYWMg4rzcReQy1h6xJ7QkOg61+yJMQ174SmMqRvaaLlwt4a5l9Yv9e0QGbUGz/CiBlYC2Ix2yVQFO2NUuedoEfiSAcD2Re2mvq+HvsIJJrjg0ojYz7JTLhrKdRHJ9LpG+obJxBMGX+L48IBwLtLNnuE22obXVCsZtlf4I96Cnbd7wicJCEEyEKRSfXMHvxsu9nJeq+WSqGuoy0GdjzRRqPzyiBOBujckkTTg7CmH6UXxMIKg4TIslxRjXYYSXLIENAbde3Xv2GCGyTN6bg/JlkCkPL/mev3OP6dzfIbI8NPbqKG8Z0sRrDZtMgl7dx68lBW77MpY5lzsCNM61qD1Y+a8J1bhSqMRKYhjSoS4xl91D3NS4dl5SXCS8sIiBg+xu4URpsHja21GsarvnKVw0E/BMTPR8iu5W/mimuNWx/PS1PfFoVjqG34TydbQveHun/Q==
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)(39860400002)(396003)(376002)(230922051799003)(186009)(451199024)(64100799003)(1800799009)(82310400011)(40470700004)(46966006)(36840700001)(2616005)(426003)(26005)(336012)(1076003)(40460700003)(81166007)(82740400003)(86362001)(36756003)(356005)(40480700001)(8936002)(44832011)(2906002)(4326008)(478600001)(6666004)(47076005)(36860700001)(8676002)(5660300002)(6916009)(316002)(966005)(41300700001)(54906003)(70206006)(70586007)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Oct 2023 19:58:09.3767
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 66e59378-0410-4dd6-06b6-08dbc9020fc2
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:
	BL6PEPF0001AB58.namprd02.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BL1PR12MB5378

From: Rahul Singh <rahul.singh@arm.com>

Setting CONFIG_PCI_PASSTHROUGH=y will enable PCI passthrough on ARM, even though
the feature is not yet complete in the current upstream codebase. The purpose of
this is to make it easier to enable the necessary configs (HAS_PCI, HAS_VPCI) for
testing and development of PCI passthrough on ARM.

Since PCI passthrough on ARM is still work in progress at this time, make it
depend on EXPERT.

Signed-off-by: Rahul Singh <rahul.singh@arm.com>
Signed-off-by: Stewart Hildebrand <stewart.hildebrand@amd.com>
Signed-off-by: Stefano Stabellini <stefano.stabellini@amd.com>
Acked-by: Julien Grall <jgrall@amazon.com>
---
(cherry picked from commit 9a08f1f7ce28ec619640ba9ce11018bf443e9a0e from the
 downstream branch [1])

v2->v3:
* add Julien's A-b

v1->v2:
* drop "ARM" naming since it is already in an ARM category
* depend on EXPERT instead of UNSUPPORTED

Changes from downstream to v1:
* depends on ARM_64 (Stefano)
* Don't select HAS_VPCI_GUEST_SUPPORT since this config option is not currently
  used in the upstream codebase. This will want to be re-added here once the
  vpci series [2] is merged.
* Don't select ARM_SMMU_V3 since this option can already be selected
  independently. While PCI passthrough on ARM depends on an SMMU, it does not
  depend on a particular version or variant of an SMMU.
* Don't select HAS_ITS since this option can already be selected independently.
  HAS_ITS may want to be added here once the MSI series [1] is merged.
* Don't select LATE_HWDOM since this option is unrelated to PCI passthrough.

[1] https://gitlab.com/xen-project/people/bmarquis/xen-arm-poc/-/commits/poc/pci-passthrough
[2] https://lists.xenproject.org/archives/html/xen-devel/2023-08/msg02361.html
---
 xen/arch/arm/Kconfig | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/xen/arch/arm/Kconfig b/xen/arch/arm/Kconfig
index 632dd9792e3c..fcb5a0920c5c 100644
--- a/xen/arch/arm/Kconfig
+++ b/xen/arch/arm/Kconfig
@@ -191,6 +191,15 @@ config STATIC_SHM
 	help
 	  This option enables statically shared memory on a dom0less system.
 
+config PCI_PASSTHROUGH
+	bool "PCI passthrough" if EXPERT
+	depends on ARM_64
+	select HAS_PCI
+	select HAS_VPCI
+	default n
+	help
+	  This option enables PCI device passthrough
+
 endmenu
 
 menu "ARM errata workaround via the alternative framework"
-- 
2.42.0



From xen-devel-bounces@lists.xenproject.org Mon Oct 09 19:58:24 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 09 Oct 2023 19:58:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614457.955546 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qpwOW-0003sL-IG; Mon, 09 Oct 2023 19:58:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614457.955546; Mon, 09 Oct 2023 19:58: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 1qpwOW-0003sC-FJ; Mon, 09 Oct 2023 19:58:24 +0000
Received: by outflank-mailman (input) for mailman id 614457;
 Mon, 09 Oct 2023 19:58: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=rjZ2=FX=amd.com=Stewart.Hildebrand@srs-se1.protection.inumbo.net>)
 id 1qpwOV-0003Ue-GX
 for xen-devel@lists.xenproject.org; Mon, 09 Oct 2023 19:58:23 +0000
Received: from NAM04-MW2-obe.outbound.protection.outlook.com
 (mail-mw2nam04on2062f.outbound.protection.outlook.com
 [2a01:111:f400:7e8c::62f])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 31fde5ea-66de-11ee-9b0d-b553b5be7939;
 Mon, 09 Oct 2023 21:58:21 +0200 (CEST)
Received: from MN2PR12CA0011.namprd12.prod.outlook.com (2603:10b6:208:a8::24)
 by DM4PR12MB6277.namprd12.prod.outlook.com (2603:10b6:8:a5::20) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.36; Mon, 9 Oct
 2023 19:58:17 +0000
Received: from BL6PEPF0001AB54.namprd02.prod.outlook.com
 (2603:10b6:208:a8:cafe::f6) by MN2PR12CA0011.outlook.office365.com
 (2603:10b6:208:a8::24) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.36 via Frontend
 Transport; Mon, 9 Oct 2023 19:58:17 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 BL6PEPF0001AB54.mail.protection.outlook.com (10.167.241.6) 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, 9 Oct 2023 19:58:17 +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, 9 Oct
 2023 14:58:16 -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; Mon, 9 Oct 2023 14:58: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: 31fde5ea-66de-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=X98xNMBmrTWnBRF/PrQMksTjP8Ww9l7DhxPVIrTMb0qhdX34siUTpiqOvplT3+9kk+BZsMklLZtgsbsJxtuJxcUHEUT9dRfdWjyG/x72aQ7PKILsTsOnY93h7W6M8o1i87KYzV+/mJ7ypAvSDcPNt7C7m9TvRxRMdFoYcWnKfof8tP52/MulZQGlfrGpDd1s7k8tBnEhcsbffPeUg5JLHQGIWb1Bw3kZB+Ra5xlNUuom1p5BCS8DhIQi8Pq7baWcAd+PON62UWZ21vSEhhaDNaMGCULhyKnQ6w15MQlveNo/pdDp9WG6VmlJolOOQVOEe/83WSjBY9JFI+KgvNT2Hw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=EmlGqKWuCnjtMUmBTT4XxuCpBI3jirRl8+SAumX9cok=;
 b=ZQqI+mAJ0N1Hp1G9+KNw7nn5vPqp56HjgteOaXvbsRoVzb+uBYV1IGAZPHqCrThxlee8KprxdVUehT3O2wiCP+kl54LC4TepGXfT1qDJrKmQCfADpC4bVioMHdSxUBfprXkIsyGf1OHB3fLMNiJaDsmP5Ik0p9PrU1yo8KbEbQU5otZnSDT2ROeWb51/LgXKRPhIdKcmAjONm0GpKMf8uCKRkJkOcUxu22ZrzZwZbnk+pghs5EkDap+XdrqU0YAAyktBjqLHFuIgEPNFiMG4A/+qxayJKpSWoVtMBcNIPiJMoaVD22IoTLBGWRDQG/2DcAVeyUNWLXGdduLRBJ/UxA==
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=EmlGqKWuCnjtMUmBTT4XxuCpBI3jirRl8+SAumX9cok=;
 b=TDcyOLKfGKn7fSuxu9WtSMZcpyI1o+SSUCnqTZ/ErUQwMsvWZdBEw3/WPqRIkxAEU8AoyDcuqXQ30DrKj5bp4VGl9knlyfQn0tYbxYuEgvMzxWnuofWLT9F6JSVF9vvsVsKXpocM/29w7BoH93IBgSI0KJzOc1y5tJhSe8qkl5w=
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>, 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>, =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>
Subject: [PATCH v3 2/5] xen/arm: pci: plumb xen_arch_domainconfig with pci info
Date: Mon, 9 Oct 2023 15:57:41 -0400
Message-ID: <20231009195747.889326-3-stewart.hildebrand@amd.com>
X-Mailer: git-send-email 2.42.0
In-Reply-To: <20231009195747.889326-1-stewart.hildebrand@amd.com>
References: <20231009195747.889326-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: BL6PEPF0001AB54:EE_|DM4PR12MB6277:EE_
X-MS-Office365-Filtering-Correlation-Id: 6640b990-1e25-4928-6937-08dbc9021498
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	oA8S9neqiZOn8F+7xLbug+1XADmhxrFbnUqtBM9F3nEO6v/esyxHcb1ZoZRwwF3hEq0BXD2nm5sPzpWe86BYFRElyDXWteQn8hIrIQzLottSyJOIrj7itS8ktqvzUGsaMX9GyctsybcvU9LKFXTGSMYKg7mGyUZiKSzI7dKshzSbyQmUKDLjQqMHErhBciGCWG8kGA2Ww0fMfu9tnrYpIrHKaF0TMAQtoZJQerjVQjIlcAv/0bkZTpKWKle2gEic0CKPtIFPjWXNo8Zw58y7TBGPeJSAKfuljXVwnJUVmJ4iZ5h8WE7Wmc/eVdU2JrfBQ0GGmd3GSW8/a0R2FdjXjvUQ0n4Z1TAEf7rmn/b/zE/ezcEP7/yRIpdhlITnZKTgVlsK0wOlz5beIsvmZDyG8hBFO9BQm/b5j5Zdg+b1/gYRUp1eLVNdT1LKftjI7T9rfI6T0taEWaIO9VNoAcETOzj2/6H99ofmByL64+3AsrCDodMjur9xBPEGcUubA4Dk//clL51sWf0W+a3jIK3Hhb9V6T3LXL6ZxMfLlnGI6VFn6sU9+lAk9Ls9FbV2vcvZDOu9qrdZSLhmBkq6dWtmGPa5vEPBS0R36qBF4tSR3MEy8LfYn/yFBh6a2FPkSoGqnNl2lEzdSvlOnZUQs9AC8na8RLfnP7NyUwKQapQv8+4LkwSO4mF/2TXdUEljgp3nn08TYqkidhsoMSMR9UWhagYYWSaG2rIt8kdQ3xuUOmjX5ii1BTsCCbAfLLkQ3MSSL3BzpLV8ZP3Bnl1lhdO36w==
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)(230922051799003)(82310400011)(451199024)(64100799003)(186009)(1800799009)(36840700001)(46966006)(40470700004)(86362001)(82740400003)(81166007)(356005)(36756003)(40460700003)(2906002)(40480700001)(478600001)(4326008)(44832011)(41300700001)(5660300002)(8936002)(8676002)(336012)(426003)(1076003)(2616005)(54906003)(83380400001)(6916009)(7416002)(70586007)(70206006)(6666004)(316002)(26005)(36860700001)(47076005)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Oct 2023 19:58:17.5238
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 6640b990-1e25-4928-6937-08dbc9021498
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:
	BL6PEPF0001AB54.namprd02.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR12MB6277

Add a flag to struct xen_arch_domainconfig to allow specifying at domain
creation time whether the domain uses vPCI.

Add a corresponding flag to struct arch_domain to indicate vPCI and set it
accordingly.

Bump XEN_DOMCTL_INTERFACE_VERSION since we're modifying struct
xen_arch_domainconfig.

Signed-off-by: Stewart Hildebrand <stewart.hildebrand@amd.com>
---
v2->v3:
* new patch
---
 xen/arch/arm/domain.c             | 10 ++++++++++
 xen/arch/arm/include/asm/domain.h |  2 ++
 xen/include/public/arch-arm.h     |  4 ++++
 xen/include/public/domctl.h       |  2 +-
 4 files changed, 17 insertions(+), 1 deletion(-)

diff --git a/xen/arch/arm/domain.c b/xen/arch/arm/domain.c
index 28e3aaa5e482..9470c28595da 100644
--- a/xen/arch/arm/domain.c
+++ b/xen/arch/arm/domain.c
@@ -687,6 +687,13 @@ int arch_sanitise_domain_config(struct xen_domctl_createdomain *config)
         return -EINVAL;
     }
 
+    if ( (config->arch.pci_flags & XEN_DOMCTL_CONFIG_PCI_VPCI) &&
+         !IS_ENABLED(CONFIG_HAS_VPCI) )
+    {
+        dprintk(XENLOG_INFO, "vPCI support not enabled\n");
+        return -EINVAL;
+    }
+
     return 0;
 }
 
@@ -737,6 +744,9 @@ int arch_domain_create(struct domain *d,
         BUG();
     }
 
+    if ( config->arch.pci_flags & XEN_DOMCTL_CONFIG_PCI_VPCI )
+        d->arch.has_vpci = true;
+
     if ( (rc = domain_vgic_register(d, &count)) != 0 )
         goto fail;
 
diff --git a/xen/arch/arm/include/asm/domain.h b/xen/arch/arm/include/asm/domain.h
index 99e798ffff68..0a66ed09a617 100644
--- a/xen/arch/arm/include/asm/domain.h
+++ b/xen/arch/arm/include/asm/domain.h
@@ -119,6 +119,8 @@ struct arch_domain
     void *tee;
 #endif
 
+    bool has_vpci;
+
 }  __cacheline_aligned;
 
 struct arch_vcpu
diff --git a/xen/include/public/arch-arm.h b/xen/include/public/arch-arm.h
index 6a4467e8f5d1..5c8424341aad 100644
--- a/xen/include/public/arch-arm.h
+++ b/xen/include/public/arch-arm.h
@@ -300,6 +300,8 @@ DEFINE_XEN_GUEST_HANDLE(vcpu_guest_context_t);
 #define XEN_DOMCTL_CONFIG_TEE_OPTEE     1
 #define XEN_DOMCTL_CONFIG_TEE_FFA       2
 
+#define XEN_DOMCTL_CONFIG_PCI_VPCI      (1U << 0)
+
 struct xen_arch_domainconfig {
     /* IN/OUT */
     uint8_t gic_version;
@@ -323,6 +325,8 @@ struct xen_arch_domainconfig {
      *
      */
     uint32_t clock_frequency;
+    /* IN */
+    uint8_t pci_flags;
 };
 #endif /* __XEN__ || __XEN_TOOLS__ */
 
diff --git a/xen/include/public/domctl.h b/xen/include/public/domctl.h
index a33f9ec32b08..dcd42b3d603d 100644
--- a/xen/include/public/domctl.h
+++ b/xen/include/public/domctl.h
@@ -21,7 +21,7 @@
 #include "hvm/save.h"
 #include "memory.h"
 
-#define XEN_DOMCTL_INTERFACE_VERSION 0x00000016
+#define XEN_DOMCTL_INTERFACE_VERSION 0x00000017
 
 /*
  * NB. xen_domctl.domain is an IN/OUT parameter for this operation.
-- 
2.42.0



From xen-devel-bounces@lists.xenproject.org Mon Oct 09 19:58:41 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 09 Oct 2023 19:58:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614461.955556 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qpwOn-0004QJ-07; Mon, 09 Oct 2023 19:58:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614461.955556; Mon, 09 Oct 2023 19:58: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 1qpwOm-0004QC-TX; Mon, 09 Oct 2023 19:58:40 +0000
Received: by outflank-mailman (input) for mailman id 614461;
 Mon, 09 Oct 2023 19: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=rjZ2=FX=amd.com=Stewart.Hildebrand@srs-se1.protection.inumbo.net>)
 id 1qpwOl-0003BY-Uh
 for xen-devel@lists.xenproject.org; Mon, 09 Oct 2023 19:58:39 +0000
Received: from NAM10-MW2-obe.outbound.protection.outlook.com
 (mail-mw2nam10on20630.outbound.protection.outlook.com
 [2a01:111:f400:7e89::630])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 3c661224-66de-11ee-98d3-6d05b1d4d9a1;
 Mon, 09 Oct 2023 21:58:39 +0200 (CEST)
Received: from MN2PR14CA0024.namprd14.prod.outlook.com (2603:10b6:208:23e::29)
 by PH0PR12MB7840.namprd12.prod.outlook.com (2603:10b6:510:28a::16)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.37; Mon, 9 Oct
 2023 19:58:34 +0000
Received: from BL6PEPF0001AB55.namprd02.prod.outlook.com
 (2603:10b6:208:23e:cafe::c1) by MN2PR14CA0024.outlook.office365.com
 (2603:10b6:208:23e::29) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.37 via Frontend
 Transport; Mon, 9 Oct 2023 19:58:34 +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.6838.14 via Frontend Transport; Mon, 9 Oct 2023 19:58: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; Mon, 9 Oct
 2023 14:58:34 -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, 9 Oct
 2023 14:58: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; Mon, 9 Oct 2023 14:58: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: 3c661224-66de-11ee-98d3-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=LJOZwGEsBeE83cSOr9msavyWscOISD6/IPDPwLViRPbZ4Q72d883YDW3ykht2uDR0ZQMjFKSYVAfpqsBK33kG+3sowM9UcKcCrZLjEfUh8b8wueYh6Na4M06zcuauK9tvysJonuNv4RdLkWAHJVj5K3y19bMHlHTSBWTAyZAG0SNXPipSSqLhM+Vewu5LLW65bBV+OKY2HMLRtea+wIV2QZL398byhTSPBmQ5uvYDRpQpjnXMkcb06E0Hc4Y/dzqcvJaXj8THL8Pl8ypdFZp3CvXPGzz7/1/QrwZUdq2cm5St/oJJMOCc5VFKmO1mOooHFt2ccX0NO+K83d6cxBGKQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=LOZmhrmNckz6NkJakVLSz/H8hX/OOGQLeh4TaQxTWhU=;
 b=J2KugG39pg7JAxKg+FDYS9NCrP7yR8wxfiWa0dEwSl8iiyyML0apPMbOBN74f0L2pLbLpDCWv8rOacc0d2sq+GaHFaDT3bl/OK5MgK66W/tZ5rcb3xk1P+MG4yuZrdKFSSABN1c31m8rc5hQX6hYqugX3wsCTSyv+rVS3ZP7WGeaQ4mt9eXaCJrKHqHoc3SV1NqzHkH+jWmfUQhJ1Mq6WVUZLn8me7LcqQzgqailNNU3oqJ3HC5aDFa9UYVwFCOXr/QLe36qIMt6eMGrJGlRPYKO3Yavvoa8V9W1sZI7Rw/f7X2KthR9cElSyFnfzv4GHiCsMpIkVUiM94AIvLKyBg==
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=LOZmhrmNckz6NkJakVLSz/H8hX/OOGQLeh4TaQxTWhU=;
 b=SwoZCxbb1qlbtGR4K8kkDIzfhowXdf732ZI1eJXx9lbU0vJSwezvqQTqz8MNHWvNffNCMGv7HpzoGQ/HB9q46bxMtB4bxfZtt5cRD4HUObXVW6EkF1TithQTqNDVZwcnyFcSigd1dHtjJEF0QnzpyLUzSEhsWFxEL7WROE0XpVA=
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: Oleksandr Andrushchenko <oleksandr_andrushchenko@epam.com>, "Stefano
 Stabellini" <sstabellini@kernel.org>, Julien Grall <julien@xen.org>, Bertrand
 Marquis <bertrand.marquis@arm.com>, Volodymyr Babchuk
	<Volodymyr_Babchuk@epam.com>, Rahul Singh <rahul.singh@arm.com>, "Stewart
 Hildebrand" <stewart.hildebrand@amd.com>
Subject: [PATCH v3 3/5] xen/arm: make has_vpci() depend on d->arch.has_vpci
Date: Mon, 9 Oct 2023 15:57:42 -0400
Message-ID: <20231009195747.889326-4-stewart.hildebrand@amd.com>
X-Mailer: git-send-email 2.42.0
In-Reply-To: <20231009195747.889326-1-stewart.hildebrand@amd.com>
References: <20231009195747.889326-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: BL6PEPF0001AB55:EE_|PH0PR12MB7840:EE_
X-MS-Office365-Filtering-Correlation-Id: 775c1503-b014-443b-b828-08dbc9021eaa
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	TxCCyZBVM1GbquonS/9QKZN/EYaLRIgQV84EYUSoRTp27dREMtSNQZpZfEwkSv54ovsImuOn7XNhU+ZZ0F7zBoxtsNrzgP6Hmg+NYxfBWhojimZyNoXWWDCYsaIm3Ks60jFgDbUD9R+/6wl9saV4ixDthzHLT3Yj0I5S7xFc6f6ezD3dVMAsUcQcwFQwgnT9oRN2LdF4PxFYeOREGaPzGiFfMaW/LqzrQFznrOZ3FyNpJrmWbKBr+atW1bvpeUlt65Byr8bGPebuuOH+WqPr0qAYk6fSqGf2hM4NiRLyzQCWbcWPYX8DYeoPFF2A6l4dlEzy5iaovkdj0rTy5M1o01p2LTvcJqQLOGTLTo8Is7YYT705sXUxbLd9comPva2VAH/ypK7ImZpVfhwZF9Z+zmw0k4vl3lZ3k9f9HVQRIyTtmLK6Ws3EyrrEcND0Z8/NUrD4eWpKdnQ4i+kp+8qpVoE7pAk0P9gfmUXA0qJV+ktcY20W7bFcsdWrQSHKRDyU3GflgYBoA4S4Jlk8mZg8LwcSrKmEA/qiPxHj6SfkiL8mIzhK4dVTr1JA6pheNzdz/XWWS/wbE0Na5f1PyPrYhyr/eaSAmZfApytbLa/CuMm937gWxRvNgxDgQ7jOm9nRXqdz6xn5WYUEFQrmEf0Y9fJcIyke7Jc7HArPURcUrJh+ArNTzR74miLYqqaQpcHYX8I0TLCx9zYCngqaSAsGwxFRxmGBfy/E2WZRepNYqsm03tLomZZ9se5l3k5dCkIPbJ3arUVUsrLnLcLUa/VDmZCujdNENGdENNbVIrRMi6g=
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)(346002)(376002)(39860400002)(230922051799003)(1800799009)(82310400011)(64100799003)(451199024)(186009)(36840700001)(40470700004)(46966006)(356005)(86362001)(81166007)(36756003)(40460700003)(40480700001)(82740400003)(2906002)(966005)(478600001)(41300700001)(8936002)(5660300002)(4326008)(44832011)(8676002)(6666004)(426003)(2616005)(336012)(1076003)(83380400001)(54906003)(36860700001)(316002)(6916009)(70206006)(47076005)(26005)(70586007)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Oct 2023 19:58:34.4210
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 775c1503-b014-443b-b828-08dbc9021eaa
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: PH0PR12MB7840

From: Oleksandr Andrushchenko <oleksandr_andrushchenko@epam.com>

VPCI is disabled on ARM. Make it depend on d->arch.has_vpci to enable the PCI
passthrough support on ARM.

While here, remove the comment on the preceding line.

Signed-off-by: Oleksandr Andrushchenko <oleksandr_andrushchenko@epam.com>
Signed-off-by: Rahul Singh <rahul.singh@arm.com>
Signed-off-by: Stewart Hildebrand <stewart.hildebrand@amd.com>
---
There are two downstreams [1] [2] that have independently made a version this
change, each with different Signed-off-by's. I simply picked one at random for
the Author: field, and added both Signed-off-by lines. Please let me know if
there are any objections.

v2->v3:
* use d->arch.has_vpci since plumbing struct arch_domain with a vPCI flag

v1->v2:
* add is_hardware_domain check. This will need to be removed after the vPCI
  series [3] is merged.

downstream->v1:
* change to IS_ENABLED(CONFIG_HAS_VPCI) instead of hardcoded to true
* remove the comment on the preceding line

[1] https://gitlab.com/xen-project/people/bmarquis/xen-arm-poc/-/commit/27be1729ce8128dbe37275ce7946b2fbd2e5a382
[2] https://github.com/xen-troops/xen/commit/bf12185e6fb2e31db0d8e6ea9ccd8a02abadec17
[3] https://lists.xenproject.org/archives/html/xen-devel/2023-08/msg02361.html
---
 xen/arch/arm/include/asm/domain.h | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/xen/arch/arm/include/asm/domain.h b/xen/arch/arm/include/asm/domain.h
index 0a66ed09a617..ebba2c25dceb 100644
--- a/xen/arch/arm/include/asm/domain.h
+++ b/xen/arch/arm/include/asm/domain.h
@@ -300,8 +300,7 @@ static inline void arch_vcpu_block(struct vcpu *v) {}
 
 #define arch_vm_assist_valid_mask(d) (1UL << VMASST_TYPE_runstate_update_flag)
 
-/* vPCI is not available on Arm */
-#define has_vpci(d)    ({ (void)(d); false; })
+#define has_vpci(d) ( (d)->arch.has_vpci )
 
 struct arch_vcpu_io {
     struct instr_details dabt_instr; /* when the instruction is decoded */
-- 
2.42.0



From xen-devel-bounces@lists.xenproject.org Mon Oct 09 19:59:01 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 09 Oct 2023 19:59:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614471.955566 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qpwP7-000571-8k; Mon, 09 Oct 2023 19:59:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614471.955566; Mon, 09 Oct 2023 19:59: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 1qpwP7-00056s-5b; Mon, 09 Oct 2023 19:59:01 +0000
Received: by outflank-mailman (input) for mailman id 614471;
 Mon, 09 Oct 2023 19:59: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=rjZ2=FX=amd.com=Stewart.Hildebrand@srs-se1.protection.inumbo.net>)
 id 1qpwP6-0003Ue-08
 for xen-devel@lists.xenproject.org; Mon, 09 Oct 2023 19:59:00 +0000
Received: from NAM11-CO1-obe.outbound.protection.outlook.com
 (mail-co1nam11on20600.outbound.protection.outlook.com
 [2a01:111:f400:7eab::600])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 48871664-66de-11ee-9b0d-b553b5be7939;
 Mon, 09 Oct 2023 21:58:58 +0200 (CEST)
Received: from MN2PR13CA0008.namprd13.prod.outlook.com (2603:10b6:208:160::21)
 by SA1PR12MB6680.namprd12.prod.outlook.com (2603:10b6:806:253::14)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.27; Mon, 9 Oct
 2023 19:58:53 +0000
Received: from BL6PEPF0001AB57.namprd02.prod.outlook.com
 (2603:10b6:208:160:cafe::da) by MN2PR13CA0008.outlook.office365.com
 (2603:10b6:208:160::21) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.20 via Frontend
 Transport; Mon, 9 Oct 2023 19:58:53 +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; Mon, 9 Oct 2023 19:58:53 +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, 9 Oct
 2023 14:58:52 -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; Mon, 9 Oct 2023 14:58: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: 48871664-66de-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=cQuDWzum0CuhmzM7egEHV7OjwogQRjxtzGaO5JaKbbcfkzZkKCIR4YsM9odwy5zmgiHf7iOg48+fvlbVxL5pfBjTMUj2C/0IJhTugrsQvKv7Yt1IJ9taDKr3skc5fD/31T/MEbGJC9qTe0id6xZlU2HsaWgO4sKxvBlF4LXvZY7ls4+BgT9o/S4mPWXxbo7w7yEzJos0Kpo5G/Ai+l0QHUGG/lpiDAba3JF+tYRxJuq4cKIUoH82xVEqElrwneteYRE1zsmW2sk6mxnfP+YDEGam6fqFZTJpn9XWsw38UTo3s7c0mWWDiHWDc/cIkZ51g4Msh0sri88T2AFhAjjw1g==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=I6WEOoMs+pzdjzi1jL0lpLVB/53RytXMX+c0QXchhzI=;
 b=AspjglAjvn3niV+v2naQZ8tQ3Y29rJdAa6Dx43duQoygJJ224fk6se8Vhh8dxdwH+69L2qKRAp1tDU7KLH9TLFrnkbpXAAeDHu1nwcZOcdJAPH5lsCDrwBNMQf5hwpG61fPCYrMcbSpiA2MLntkA2jH+h3ECP98B/1wWGtyM6T24zC66HYBePB/+XeSTZ04NAKmcdT3lq4mYxZzBwlwITW+NGHvg4/r4cUgmpA2JUFFDacsnPR+LvFx3PlJm+2SriE/XVqyHQQdvsgaOfnRkWpqsTMVLHOxo/Qbt6jkkNXHF/baOOxJGo4nBKrg/H9efOb1DpTyruOMumQ+uyrSJ+g==
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=I6WEOoMs+pzdjzi1jL0lpLVB/53RytXMX+c0QXchhzI=;
 b=KXwNpb13M2p6gkH/DuwsaWqyoIiEiPQcFW2pfbuOOomco6fFD9IHmlvh0eW+OWfm+ZZhrhVSCqYiwPiuySp8s0SomFukRaAaqLlRyTYexL8eRu6ePvANY5bKtmA6QzXutv2P1TBha+My0M6RbtXb3VKVOWRQD+oHsJQ6Oeu+bgo=
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>, Julien Grall <julien@xen.org>, Bertrand Marquis
	<bertrand.marquis@arm.com>, Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: [PATCH v3 4/5] xen/arm: enable vPCI for dom0
Date: Mon, 9 Oct 2023 15:57:43 -0400
Message-ID: <20231009195747.889326-5-stewart.hildebrand@amd.com>
X-Mailer: git-send-email 2.42.0
In-Reply-To: <20231009195747.889326-1-stewart.hildebrand@amd.com>
References: <20231009195747.889326-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: BL6PEPF0001AB57:EE_|SA1PR12MB6680:EE_
X-MS-Office365-Filtering-Correlation-Id: bf522a57-67e7-4c2a-149d-08dbc90229e2
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	px2o0iB+6/+jM6kCe48/vmf50l1tVLUGgXBHhbdXe4IEOGcRo2BeRtozkbCIIVw2HOLC1LWZ1w2z9PytOKzGe+g3hE0ymtU/Gw2tEsC0LEDxQNwtX0/0PjeZ+ELn6NsKql1VQPtClRYuuTVH83PWgQiYXR/LQvmSW07mLDYve49qFU4yCMI97Ajuso66Lf8KeO8S7LdZIsjB9sB0Hvkwtn2w5ZXMvcwuPLnCLKYOP+G7WkMI4VI04wzts2yLNCOCAayNlS43os4RptKmbUz0EZQg0D/6RwaMCp4N5MWwlSrNGV93o4BxhqYdtLyRGoErXlKts7i1rsGNmwno84l+N3uJW1CMh18Gce53k4rP+0p88BxhsdHTbbpQ1LPtad222Talir723pyiDDwmw7XMxT02YMxX195HA8rL1OYzRvnV+6P+dMEtALAnhpgZdZG98Ur5lDfR4TbEXVQh1VNUHaxcaelMMF3Rma3QXCi9HKXa+kxdj0mphfA3fIfuOOGRgFjS9WS6Oia2cEv09fFmb6Pn7J+LXcAPG1E0LRk6kdAgr3+aoHdzq2TcrZENjuY5gHfciwlTG7lSqddfDAigrIn2WeS15xDbYxvSu2hdqH135bBzhWb2By7jtFgozK3XgWIPOI1ERcmv/3+q/2AKEEURiMRm7xdUHbZHKGM6oGBTzh6fE1o6WkNEzKDb82G7fCsJAjEDatKd3xKmHw+QXqs4m6ErzpXn9wPUSUW5bS0I4e74cMZInOuOQ3tXv0/w
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)(39860400002)(396003)(376002)(230922051799003)(186009)(1800799009)(82310400011)(64100799003)(451199024)(46966006)(36840700001)(40470700004)(36860700001)(41300700001)(81166007)(2616005)(356005)(70206006)(316002)(6916009)(54906003)(70586007)(966005)(2906002)(44832011)(5660300002)(8936002)(4326008)(8676002)(478600001)(40460700003)(86362001)(47076005)(40480700001)(1076003)(426003)(336012)(26005)(6666004)(82740400003)(36756003)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Oct 2023 19:58:53.2388
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: bf522a57-67e7-4c2a-149d-08dbc90229e2
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: SA1PR12MB6680

Set the pci flags in xen_arch_domainconfig to enable vPCI for dom0.

Signed-off-by: Stewart Hildebrand <stewart.hildebrand@amd.com>
---
Julien had a suggestion to make this conditional on pci_passthrough_enabled [1].
However, in v5 of the PCI ARM SMMU series [2], we propose removing the
pci_passthrough_enabled flag. If pci_passthrough_enabled is gone, the conditions
under which vPCI should be enabled for dom0 aren't entirely clear to me (other
than CONFIG_HAS_VPCI=y).

v2->v3:
* new patch

[1] https://lists.xenproject.org/archives/html/xen-devel/2023-10/msg00475.html
[2] https://lists.xenproject.org/archives/html/xen-devel/2023-10/msg00210.html
---
 xen/arch/arm/domain_build.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/xen/arch/arm/domain_build.c b/xen/arch/arm/domain_build.c
index 24c9019cc43c..c1174535f430 100644
--- a/xen/arch/arm/domain_build.c
+++ b/xen/arch/arm/domain_build.c
@@ -3912,6 +3912,9 @@ void __init create_dom0(void)
             panic("SVE vector length error\n");
     }
 
+    if ( IS_ENABLED(CONFIG_HAS_VPCI) )
+        dom0_cfg.arch.pci_flags = XEN_DOMCTL_CONFIG_PCI_VPCI;
+
     dom0 = domain_create(0, &dom0_cfg, CDF_privileged | CDF_directmap);
     if ( IS_ERR(dom0) )
         panic("Error creating domain 0 (rc = %ld)\n", PTR_ERR(dom0));
-- 
2.42.0



From xen-devel-bounces@lists.xenproject.org Mon Oct 09 20:03:25 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 09 Oct 2023 20:03:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614476.955576 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qpwTJ-0007AV-PT; Mon, 09 Oct 2023 20:03:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614476.955576; Mon, 09 Oct 2023 20:03: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 1qpwTJ-0007AO-Mo; Mon, 09 Oct 2023 20:03:21 +0000
Received: by outflank-mailman (input) for mailman id 614476;
 Mon, 09 Oct 2023 20:03: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=rjZ2=FX=amd.com=Stewart.Hildebrand@srs-se1.protection.inumbo.net>)
 id 1qpwPP-0003BY-Hf
 for xen-devel@lists.xenproject.org; Mon, 09 Oct 2023 19:59:19 +0000
Received: from NAM12-DM6-obe.outbound.protection.outlook.com
 (mail-dm6nam12on2062f.outbound.protection.outlook.com
 [2a01:111:f400:fe59::62f])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 54d874eb-66de-11ee-98d3-6d05b1d4d9a1;
 Mon, 09 Oct 2023 21:59:18 +0200 (CEST)
Received: from BLAPR03CA0165.namprd03.prod.outlook.com (2603:10b6:208:32f::9)
 by MW6PR12MB8957.namprd12.prod.outlook.com (2603:10b6:303:23a::5)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.36; Mon, 9 Oct
 2023 19:59:15 +0000
Received: from BL6PEPF0001AB53.namprd02.prod.outlook.com
 (2603:10b6:208:32f:cafe::82) by BLAPR03CA0165.outlook.office365.com
 (2603:10b6:208:32f::9) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.37 via Frontend
 Transport; Mon, 9 Oct 2023 19:59:13 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 BL6PEPF0001AB53.mail.protection.outlook.com (10.167.241.5) 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, 9 Oct 2023 19:59:13 +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, 9 Oct
 2023 14:59:12 -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, 9 Oct
 2023 14:59:12 -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; Mon, 9 Oct 2023 14:59: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: 54d874eb-66de-11ee-98d3-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Y/anAwwkZngEKRyIF/ZqHr+NR4hGb1WJK3OIlbi47P5FNBT3ulYSRSnhM7/Uue0pFhQfvhTK53Yu5mQGcNOO/zBbjBJ+nvarCTHN0At7SgJtpz23igClfI+P5hSOuL9qr+fJdSqa2ERCiAMxrkGkC1gCKpPLcRagA/BtM967yonuGW3TWiuxVGAlSmyNhUJkQGY8Xg0OEroXjl0zBmA+dk2KkEzh8QBqshqCii67qPD6aVQ5thoxD5gR0qhH5vGVBjNrCbyY2YMjLT1+yVfCZ/dUomSazhgCiykixcpS8anMCKqJEbV9xpqvBWkHW5IxWNsLBTK0Jo9Cj/rQL9YiUw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=3Wqj1m40g3xzBzCIIdI1/Tnlmb7S3hlwdRDoDUE9rvM=;
 b=noUmLRDL6YMkUym/bT304o3W78Ibf9CGAwzkbM2nYzXRRgxPtgNGb/zX98slCCgxNzQBlBJRffioUoIJ2aSb5rVPjDgQzJlNYyZcinMJnXqYPs0ntDo5UdihqisSIMb37ajlbUAReV6MKH2gYvof0oawBljanf1Lfe5dI7SbCNnUqXrkLzAX9Se8ybLkkMbmildtn9pQ+/yTkxQ/chtI15duXlvzdPP4c6lqopLfizUhhexMimB/tA2uQoLwq1llxU5YVL8Adq5pjaLcxufJyNBJJaFucKLytBpOUgjEMGkTTdiXT/AAXJm7gFOg/ShENz3onpi296FarxvIash0bQ==
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=3Wqj1m40g3xzBzCIIdI1/Tnlmb7S3hlwdRDoDUE9rvM=;
 b=gOlxOMgvp7k7LEt0CYMqiJDHe99I59Y/3Xzfg+D4dKgv5F5rM0V2aLLHevvGXlg1GfPK04Lbx7P3oWNPsSWP8TEWlIusEBLBC54TDgI5IpHfMHAgOyYKYMBst3XeFwBKo6qrH3UpVeAHPLOCLSvehRGlrv+W/V6V9vNNxc176gc=
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>, Wei Liu <wl@xen.org>,
	Anthony PERARD <anthony.perard@citrix.com>, Juergen Gross <jgross@suse.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 v3 5/5] [FUTURE] xen/arm: enable vPCI for domUs
Date: Mon, 9 Oct 2023 15:57:44 -0400
Message-ID: <20231009195747.889326-6-stewart.hildebrand@amd.com>
X-Mailer: git-send-email 2.42.0
In-Reply-To: <20231009195747.889326-1-stewart.hildebrand@amd.com>
References: <20231009195747.889326-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: BL6PEPF0001AB53:EE_|MW6PR12MB8957:EE_
X-MS-Office365-Filtering-Correlation-Id: ba39dcb4-52ac-4e55-d66b-08dbc90235a7
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	nhYyEbDac9PtHgA1RXkabYZapbM+IAhiYaAtu2loOexcgYu5ZXjMcNTlUK9Aenv3zVZI0BLiAwpxfY4OHa0vtwVMIOTT+Fbxag0fWEOF19rdlB1ajPFTrhmly8NV1Ky+RIRmZhxONhjhlndf0LsWQMYdSNF5EcVhwBZaeR9ewRrD7JRJLCF2TLKUUJcpcJdlhuE7dttVpvTDn+t+3bkeL7aW4gnLEFKcNlY3cNlqxhC2qALo605PYEgO0a/IXBVRiNgHuAsIRUaFLW7PZZ3SPSvjLa1X1hP2FcpgCigrYe0owuCn4tA6MLeaOmrsCmc1kptRKA+7gpPHLXGRCgJg4qdfOa9+r3epEzwkAxkPG3eUj2Xko8xw04zD5zAjcPTH8POaAk2B0Mdyj1UDHEW2VyDno2RaQU16RVYKWqV3A1721223n58XtbbP98zn0rgRbRzRaf7Nwjur8u4S3C7pcn6FF0Z7+lDEFCdUfvR6n7kV1M54LoiZ5Q4kanhBLONRlIfIm3pwBLjb7MCpTQOzXK/L6Yynd+GepYGaAKC/PjfX1+028zfIWkRoB76teSi+o28qB+yafXLIegsDV8YS4ic6REOHUbl6cY+PNt+nkeFutaeWPxobYEiYuezQ5ZLperV0QQyY4g6AQmqqkitbdRVffdusVmAloHDFzLpPht37lVCSs4akiO2K2Yd2Uxs4qq98fcJu2Ed9/TwLKGFSDCu4P/Ayn3a6dGPPHrNOfkjG1Sfmf+H7AXM7dK73OZdk
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)(230922051799003)(64100799003)(451199024)(186009)(1800799009)(82310400011)(40470700004)(46966006)(36840700001)(356005)(86362001)(36756003)(81166007)(82740400003)(40480700001)(2906002)(478600001)(966005)(41300700001)(8676002)(4326008)(5660300002)(44832011)(8936002)(6666004)(336012)(2616005)(426003)(1076003)(40460700003)(316002)(6916009)(54906003)(26005)(70206006)(70586007)(36860700001)(47076005)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Oct 2023 19:59:13.0054
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: ba39dcb4-52ac-4e55-d66b-08dbc90235a7
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:
	BL6PEPF0001AB53.namprd02.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW6PR12MB8957

Select HAS_VPCI_GUEST_SUPPORT in Kconfig for enabling vPCI in domUs.

Set the pci flags in xen_arch_domainconfig to enable vPCI if a pci device has
been specified in the xl domain config file.

Signed-off-by: Stewart Hildebrand <stewart.hildebrand@amd.com>
---
As the tag implies, this patch is not intended to be merged (yet).

Note that CONFIG_HAS_VPCI_GUEST_SUPPORT is not currently used in the upstream
code base. It will be used by the vPCI series [1]. This patch is intended to be
merged as part of the vPCI series. I'll coordinate with Volodymyr to include
this in the vPCI series or resend afterwards. Meanwhile, I'll include it here
until the Kconfig and xen_arch_domainconfig prerequisites have been committed.

v2->v3:
* set pci flags in toolstack

v1->v2:
* new patch

[1] https://lists.xenproject.org/archives/html/xen-devel/2023-08/msg02361.html
---
 tools/libs/light/libxl_arm.c | 3 +++
 xen/arch/arm/Kconfig         | 1 +
 2 files changed, 4 insertions(+)

diff --git a/tools/libs/light/libxl_arm.c b/tools/libs/light/libxl_arm.c
index 15391917748c..931b2f8852ff 100644
--- a/tools/libs/light/libxl_arm.c
+++ b/tools/libs/light/libxl_arm.c
@@ -222,6 +222,9 @@ int libxl__arch_domain_prepare_config(libxl__gc *gc,
         config->arch.sve_vl = d_config->b_info.arch_arm.sve_vl / 128U;
     }
 
+    if (d_config->num_pcidevs)
+        config->arch.pci_flags = XEN_DOMCTL_CONFIG_PCI_VPCI;
+
     return 0;
 }
 
diff --git a/xen/arch/arm/Kconfig b/xen/arch/arm/Kconfig
index fcb5a0920c5c..6f33373f9035 100644
--- a/xen/arch/arm/Kconfig
+++ b/xen/arch/arm/Kconfig
@@ -196,6 +196,7 @@ config PCI_PASSTHROUGH
 	depends on ARM_64
 	select HAS_PCI
 	select HAS_VPCI
+	select HAS_VPCI_GUEST_SUPPORT
 	default n
 	help
 	  This option enables PCI device passthrough
-- 
2.42.0



From xen-devel-bounces@lists.xenproject.org Mon Oct 09 22:19:47 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 09 Oct 2023 22:19:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614486.955586 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qpyb6-0004AB-Gk; Mon, 09 Oct 2023 22:19:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614486.955586; Mon, 09 Oct 2023 22: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 1qpyb6-0004A4-Cc; Mon, 09 Oct 2023 22:19:32 +0000
Received: by outflank-mailman (input) for mailman id 614486;
 Mon, 09 Oct 2023 22:19: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=RedC=FX=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qpyb5-00049y-Hb
 for xen-devel@lists.xenproject.org; Mon, 09 Oct 2023 22:19:31 +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 e8d8e39b-66f1-11ee-9b0d-b553b5be7939;
 Tue, 10 Oct 2023 00:19:27 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by ams.source.kernel.org (Postfix) with ESMTP id 1F035B8184D;
 Mon,  9 Oct 2023 22:19:27 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 2D0D8C433C8;
 Mon,  9 Oct 2023 22:19: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: e8d8e39b-66f1-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696889966;
	bh=87JzS7Eq9k+OjYaB0vRO6jMoZhhTorVRU9Et8FueYgU=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=KmkwqjImC3QokdjpVM+ieGEnCvs98wVPpthgnns9GTDINxyicDjOFDbID1u9FOrtw
	 hLNsnmXfO2Qj8NrndxpwGQ9TkBX3IIFP88F8nAmHKk2NNAMETCyPabJ8YaIo445mCr
	 iMx3Nhhw+L3R1ukX25TU+Qs6ylFa/P8urETfpy2e+xB/9NKnQPDpojDR/ALkXlxDP7
	 vPOw3/AFteIpD3v2IjYDsoVnx4wsHHBbX54o5+R0tzMdNRspjAwIklnZLuteQs906P
	 L8odypABl+Y1M9BhyC4ThdByUPA8xWNMhpk5vFHGPxFQ9QV+e5c87+VEh05ba+TmDX
	 WkQaSn1f4zypw==
Date: Mon, 9 Oct 2023 15:19:21 -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>, 
    Luca Fancellu <Luca.Fancellu@arm.com>, 
    Nicola Vetrini <nicola.vetrini@bugseng.com>, 
    Xen-devel <xen-devel@lists.xenproject.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>, 
    Jan Beulich <jbeulich@suse.com>, 
    =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>, 
    Henry Wang <Henry.Wang@arm.com>, 
    Simone Ballarin <simone.ballarin@bugseng.com>, 
    Doug Goldstein <cardoe@cardoe.com>, 
    George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>, 
    Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [XEN PATCH] xen: Add SAF deviations for MISRA C:2012 Rule 7.1
In-Reply-To: <1ceb5aa0-d374-4357-964f-1341468d542e@xen.org>
Message-ID: <alpine.DEB.2.22.394.2310091251080.3431292@ubuntu-linux-20-04-desktop>
References: <338d8e574db943a86c7605e4c6d9a299d45f067d.1696347345.git.nicola.vetrini@bugseng.com> <alpine.DEB.2.22.394.2310031345190.2348112@ubuntu-linux-20-04-desktop> <e1736215-52ba-4737-9da3-8f1ba7e832a6@citrix.com> <DB96C095-5FAF-40A1-9CA8-002291AA1933@arm.com>
 <2894008e8f612296da84267346ae4240@bugseng.com> <B00BC78B-E707-4043-A0B4-D320C6717472@arm.com> <alpine.DEB.2.22.394.2310041625170.2348112@ubuntu-linux-20-04-desktop> <9DD525D9-DB6D-4888-9266-FB45906A0E0F@arm.com> <alpine.DEB.2.22.394.2310051756360.2348112@ubuntu-linux-20-04-desktop>
 <C2DDFAB5-D943-4A24-9C14-AF35BE2A7C90@arm.com> <alpine.DEB.2.22.394.2310061741130.3431292@ubuntu-linux-20-04-desktop> <1ceb5aa0-d374-4357-964f-1341468d542e@xen.org>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: multipart/mixed; BOUNDARY="8323329-1230605755-1696881415=:3431292"
Content-ID: <alpine.DEB.2.22.394.2310091512460.3431292@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-1230605755-1696881415=:3431292
Content-Type: text/plain; CHARSET=UTF-8
Content-Transfer-Encoding: 8BIT
Content-ID: <alpine.DEB.2.22.394.2310091512461.3431292@ubuntu-linux-20-04-desktop>

On Mon, 9 Oct 2023, Julien Grall wrote:
> On 07/10/2023 01:43, Stefano Stabellini wrote:
> > On Fri, 6 Oct 2023, Luca Fancellu wrote:
> > > > On 6 Oct 2023, at 02:02, Stefano Stabellini <sstabellini@kernel.org>
> > > > wrote:
> > > > 
> > > > On Thu, 5 Oct 2023, Luca Fancellu wrote:
> > > > > > On 5 Oct 2023, at 00:32, Stefano Stabellini <sstabellini@kernel.org>
> > > > > > wrote:
> > > > > > 
> > > > > > On Wed, 4 Oct 2023, Luca Fancellu wrote:
> > > > > > > > On 4 Oct 2023, at 11:29, Nicola Vetrini
> > > > > > > > <nicola.vetrini@bugseng.com> wrote:
> > > > > > > > On 04/10/2023 12:06, Luca Fancellu wrote:
> > > > > > > > > Hi Nicola,
> > > > > > > > > > On 4 Oct 2023, at 10:56, andrew.cooper3@citrix.com wrote:
> > > > > > > > > > On 03/10/2023 9:46 pm, Stefano Stabellini wrote:
> > > > > > > > > > > On Tue, 3 Oct 2023, Nicola Vetrini wrote:
> > > > > > > > > > > > As specified in rules.rst, these constants can be used
> > > > > > > > > > > > in the code.
> > > > > > > > > > > > Their deviation is now accomplished by using a SAF
> > > > > > > > > > > > comment,
> > > > > > > > > > > > rather than an ECLAIR configuration.
> > > > > > > > > > > > Signed-off-by: Nicola Vetrini
> > > > > > > > > > > > <nicola.vetrini@bugseng.com>
> > > > > > > > > > > "SAF" discussion aside that can be resolved elsewhere:
> > > > > > > > > > > Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
> > > > > > > > > > Well no.  "SAF" aside (and SAF does need fixing before
> > > > > > > > > > reposting this patch, otherwise it's just unnecessary
> > > > > > > > > > churn), ...
> > > > > > > > > > > > diff --git a/xen/arch/x86/hvm/svm/svm.h
> > > > > > > > > > > > b/xen/arch/x86/hvm/svm/svm.h
> > > > > > > > > > > > index d2a781fc3fb5..d0623b72ccfa 100644
> > > > > > > > > > > > --- a/xen/arch/x86/hvm/svm/svm.h
> > > > > > > > > > > > +++ b/xen/arch/x86/hvm/svm/svm.h
> > > > > > > > > > > > @@ -57,14 +57,23 @@ static inline void
> > > > > > > > > > > > svm_invlpga(unsigned long linear, uint32_t asid)
> > > > > > > > > > > > #define INSTR_INT3 INSTR_ENC(X86EMUL_OPC( 0, 0xcc), 0)
> > > > > > > > > > > > #define INSTR_ICEBP INSTR_ENC(X86EMUL_OPC( 0, 0xf1), 0)
> > > > > > > > > > > > #define INSTR_HLT INSTR_ENC(X86EMUL_OPC( 0, 0xf4), 0)
> > > > > > > > > > > > +/* SAF-2-safe */
> > > > > > > > > > > > #define INSTR_XSETBV INSTR_ENC(X86EMUL_OPC(0x0f, 0x01),
> > > > > > > > > > > > 0321)
> > > > > > > > > > > > +/* SAF-2-safe */
> > > > > > > > > > > > #define INSTR_VMRUN INSTR_ENC(X86EMUL_OPC(0x0f, 0x01),
> > > > > > > > > > > > 0330)
> > > > > > > > > > > > +/* SAF-2-safe */
> > > > > > > > > > > > #define INSTR_VMCALL INSTR_ENC(X86EMUL_OPC(0x0f, 0x01),
> > > > > > > > > > > > 0331)
> > > > > > > > > > > > +/* SAF-2-safe */
> > > > > > > > > > > > #define INSTR_VMLOAD INSTR_ENC(X86EMUL_OPC(0x0f, 0x01),
> > > > > > > > > > > > 0332)
> > > > > > > > > > > > +/* SAF-2-safe */
> > > > > > > > > > > > #define INSTR_VMSAVE INSTR_ENC(X86EMUL_OPC(0x0f, 0x01),
> > > > > > > > > > > > 0333)
> > > > > > > > > > > > +/* SAF-2-safe */
> > > > > > > > > > > > #define INSTR_STGI INSTR_ENC(X86EMUL_OPC(0x0f, 0x01),
> > > > > > > > > > > > 0334)
> > > > > > > > > > > > +/* SAF-2-safe */
> > > > > > > > > > > > #define INSTR_CLGI INSTR_ENC(X86EMUL_OPC(0x0f, 0x01),
> > > > > > > > > > > > 0335)
> > > > > > > > > > > > +/* SAF-2-safe */
> > > > > > > > > > > > #define INSTR_INVLPGA INSTR_ENC(X86EMUL_OPC(0x0f, 0x01),
> > > > > > > > > > > > 0337)
> > > > > > > > > > > > +/* SAF-2-safe */
> > > > > > > > > > > > #define INSTR_RDTSCP INSTR_ENC(X86EMUL_OPC(0x0f, 0x01),
> > > > > > > > > > > > 0371)
> > > > > > > > > > > > #define INSTR_INVD INSTR_ENC(X86EMUL_OPC(0x0f, 0x08), 0)
> > > > > > > > > > > > #define INSTR_WBINVD INSTR_ENC(X86EMUL_OPC(0x0f, 0x09),
> > > > > > > > > > > > 0)
> > > > > > > > > > ... this has broken a tabulated structure to have comments
> > > > > > > > > > ahead of lines with octal numbers, while ...
> > > > > > > > > > > > diff --git a/xen/arch/x86/hvm/svm/emulate.c
> > > > > > > > > > > > b/xen/arch/x86/hvm/svm/emulate.c
> > > > > > > > > > > > index aa2c61c433b3..c5e3341c6316 100644
> > > > > > > > > > > > --- a/xen/arch/x86/hvm/svm/emulate.c
> > > > > > > > > > > > +++ b/xen/arch/x86/hvm/svm/emulate.c
> > > > > > > > > > > > @@ -90,9 +90,9 @@ unsigned int svm_get_insn_len(struct
> > > > > > > > > > > > vcpu *v, unsigned int instr_enc)
> > > > > > > > > > > > if ( !instr_modrm )
> > > > > > > > > > > > return emul_len;
> > > > > > > > > > > > - if ( modrm_mod == MASK_EXTR(instr_modrm, 0300) &&
> > > > > > > > > > > > - (modrm_reg & 7) == MASK_EXTR(instr_modrm, 0070) &&
> > > > > > > > > > > > - (modrm_rm & 7) == MASK_EXTR(instr_modrm, 0007) )
> > > > > > > > > > > > + if ( modrm_mod == MASK_EXTR(instr_modrm, 0300) && /*
> > > > > > > > > > > > SAF-2-safe */
> > > > > > > > > > > > + (modrm_reg & 7) == MASK_EXTR(instr_modrm, 0070) && /*
> > > > > > > > > > > > SAF-2-safe */
> > > > > > > > > > > > + (modrm_rm & 7) == MASK_EXTR(instr_modrm, 0007) ) /*
> > > > > > > > > > > > SAF-2-safe */
> > > > > > > > > > > > return emul_len;
> > > > > > > > > > > > }
> > > > > > > > > > ... this has comments at the end of lines with octal
> > > > > > > > > > numbers.
> > > > > > > > > > So which is it?
> > > > > > > > > I agree with Andrew here in this sense: the in-code comment is
> > > > > > > > > supposed to be on the line *before* the violation,
> > > > > > > > > not on the same line, so I’m also wondering how it is fixing
> > > > > > > > > the very
> > > > > > > > > first violation.
> > > > > > > > > Cheers,
> > > > > > > > > Luca
> > > > > > > > 
> > > > > > > 
> > > > > > > Hi Nicola,
> > > > > > > 
> > > > > > > > Actually it justifies what is on either the previous line or the
> > > > > > > > same because it's
> > > > > > > > translated to /* -E> safe MC3R1.R7.1 1 */, where the last number
> > > > > > > > is how many lines besides
> > > > > > > > the current one are to be deviated (e.g. you can have 0 deviate
> > > > > > > > only the current line).
> > > > > > > 
> > > > > > > Just to understand, does this way:
> > > > > > > 
> > > > > > > <line A>
> > > > > > > /* -E> safe MC3R1.R7.1 1 */
> > > > > > > <line B>
> > > > > > > 
> > > > > > > Justifies only line B? Because I thought so, but now I want to be
> > > > > > > sure, otherwise it doesn’t act
> > > > > > > as intended.
> > > > > > > 
> > > > > > > 
> > > > > > > > Most of the times the current form is what's needed, as you
> > > > > > > > would put the comment on a line
> > > > > > > > of its own. In the case of the if that would break the
> > > > > > > > formatting. The downside of doing the same thing on the table is
> > > > > > > > that the first entry not to be deviated would actually be
> > > > > > > > deviated.
> > > > > > > > 
> > > > > > > > #define INSTR_INVD INSTR_ENC(X86EMUL_OPC(0x0f, 0x08), 0)
> > > > > > > > 
> > > > > > > > This may not be problematic, since 0 could be considered an
> > > > > > > > octal constant, but is an
> > > > > > > > exception explicitly listed in the MISRA rule.
> > > > > > > > For the same reason the line
> > > > > > > > 
> > > > > > > > return emul_len;
> > > > > > > > 
> > > > > > > > is deviated by the above comment, but putting an octal constant
> > > > > > > > there would for sure
> > > > > > > > be the result of a deliberate choice. There's the alternative
> > > > > > > > of:
> > > > > > > > 
> > > > > > > >                         /* SAF-2-safe */
> > > > > > > > if ( modrm_mod      == MASK_EXTR(instr_modrm, 0300) &&
> > > > > > > >                         /* SAF-2-safe */
> > > > > > > >      (modrm_reg & 7) == MASK_EXTR(instr_modrm, 0070) &&
> > > > > > > >                         /* SAF-2-safe */
> > > > > > > >      (modrm_rm & 7)  == MASK_EXTR(instr_modrm, 0007) )
> > > > > > > > 
> > > > > > > > to make it consistent with the table and avoid any "hidden"
> > > > > > > > deviated line or, again,
> > > > > > > > the modification of the translation script so that it doesn't
> > > > > > > > use a fixed "1" offset, which
> > > > > > > > is motivated by what you wrote on the thread of the modification
> > > > > > > > of xen_analysis.py.
> > > > > > > 
> > > > > > >  From the documentation:
> > > > > > > 
> > > > > > >    In the Xen codebase, these tags will be used to document and
> > > > > > > suppress findings:
> > > > > > > 
> > > > > > >    - SAF-X-safe: This tag means that the next line of code
> > > > > > > contains a finding, but
> > > > > > >      the non compliance to the checker is analysed and
> > > > > > > demonstrated to be safe.
> > > > > > > 
> > > > > > > I understand that Eclair is capable of suppressing also the line
> > > > > > > in which the in-code suppression
> > > > > > > comment resides, but these generic Xen in-code suppression comment
> > > > > > > are meant to be used
> > > > > > > by multiple static analysis tools and many of them suppress only
> > > > > > > the line next to the comment
> > > > > > > (Coverity, cppcheck).
> > > > > > 
> > > > > > As we see more realistic examples, it turns out that this is
> > > > > > limiting.
> > > > > > 
> > > > > > Given that the SAF-2-safe comment needs to go through
> > > > > > xen-analysis.py
> > > > > > translations anyway, could we implement something a bit more
> > > > > > flexible in
> > > > > > xen-analysis.py?
> > > > > > 
> > > > > > For instance, could we implement a format with the number of lines
> > > > > > of
> > > > > > code like this as we discussed in a previous thread?
> > > > > > 
> > > > > > /* SAF-2-safe start */
> > > > > > if ( modrm_mod      == MASK_EXTR(instr_modrm, 0300) &&
> > > > > >    (modrm_reg & 7) == MASK_EXTR(instr_modrm, 0070) &&
> > > > > >    (modrm_rm & 7)  == MASK_EXTR(instr_modrm, 0007) )
> > > > > > /* SAF-2-safe end */
> > > > > > 
> > > > > > Firstly, let ask Andrew, do you prefer this?
> > > > > > 
> > > > > > 
> > > > > > And also this second format:
> > > > > > 
> > > > > > if ( modrm_mod      == MASK_EXTR(instr_modrm, 0300) && /* SAF-2-safe
> > > > > > */
> > > > > >    (modrm_reg & 7) == MASK_EXTR(instr_modrm, 0070) && /* SAF-2-safe
> > > > > > */
> > > > > >    (modrm_rm & 7)  == MASK_EXTR(instr_modrm, 0007) ) /* SAF-2-safe
> > > > > > */
> > > > > > 
> > > > > > 
> > > > > > Could we implement in xen-analysis.py a conversion that would turn
> > > > > > the
> > > > > > two formats above that are not understood by cppcheck into:
> > > > > > 
> > > > > > /* cppcheck tag */
> > > > > > if ( modrm_mod      == MASK_EXTR(instr_modrm, 0300) &&
> > > > > > /* cppcheck tag */
> > > > > >    (modrm_reg & 7) == MASK_EXTR(instr_modrm, 0070) &&
> > > > > > /* cppcheck tag */
> > > > > >    (modrm_rm & 7)  == MASK_EXTR(instr_modrm, 0007) )
> > > > > > 
> > > > > > Or this is a problem because it would end up changing lines of code
> > > > > > numbers in the source file?
> > > > > 
> > > > > Yes this is the real issue why we didn’t do the /* ... start */ code
> > > > > /* ... end */
> > > > 
> > > > Right so the results would be all off by a few lines of code so when
> > > > you go to read the report generated by cppcheck, the references
> > > > wouldn't match anymore.
> > > > 
> > > > Before giving up and accepting that we are constrained to only formats
> > > > that don't change the LOC numbers, can we check what Coverity supports?
> > > > 
> > > > I am asking because we could get away with implementing the formats
> > > > above in cppcheck, given that cppcheck is open source. But for Coverity
> > > > we need to stay with what is already supported by it.
> > > > 
> > > > Does Coverity support anything other than:
> > > > 
> > > > <tag on previous line>
> > > > <next line is code with deviation>
> > > 
> > > Unfortunately not, from its documentation I can’t see anything apart from
> > > the above,
> > > I can ask someone from synopsys though to double check.
> > 
> > I wonder how people would feel to have an exception to our coding style
> > in these cases and have longer than 80 chars lines. I am asking because
> > this is better than many of the other options above:
> 
> I am not sure this is better. This is a long line to read. But this is a
> personal opinion.
> 
> On the technical side, can we easily teach a tool to format this kind of
> exception? If not, then this should not be an exception we should implement.

I am not sure I understand what you mean by "can we easily teach a tool
to format this kind of exception". Do you mean whether we can teach a
tool to interpret a multiline statement as a single statement?

If so, my understanding is that neither Coverity not cppcheck can do
that.


> > /* SAF-x-safe */
> > if ( modrm_mod == MASK_EXTR(instr_modrm, 0300) && (modrm_reg & 7) ==
> > MASK_EXTR(instr_modrm, 0070) && (modrm_rm & 7)  == MASK_EXTR(instr_modrm,
> > 0007) )
> > 
> > Any other ideas?
> 
> Could we have a number in the comment to indicate the number of lines the
> comment applies to?

Luca can confirm that what I am about to write is correct; my
understanding is that ECLAIR supports it, but cppcheck does not. Which
means for cppcheck we would have to translate the SAF tag with
xen_analyize to:

/* cppcheck tag */
line1
/* cppcheck tag */
line2
/* cppcheck tag */
line3

and that would end up changing the line numbers in the source files so
the cppcheck report wouldn't match with the original line numbers any
longer
--8323329-1230605755-1696881415=:3431292--


From xen-devel-bounces@lists.xenproject.org Mon Oct 09 23:52:16 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 09 Oct 2023 23:52:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614494.955595 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qq02b-0008Dm-DS; Mon, 09 Oct 2023 23:52:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614494.955595; Mon, 09 Oct 2023 23:52: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 1qq02b-0008Df-Aw; Mon, 09 Oct 2023 23:52:01 +0000
Received: by outflank-mailman (input) for mailman id 614494;
 Mon, 09 Oct 2023 23:52: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=RedC=FX=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qq02a-0008DZ-B2
 for xen-devel@lists.xenproject.org; Mon, 09 Oct 2023 23:52:00 +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 d51a086e-66fe-11ee-98d3-6d05b1d4d9a1;
 Tue, 10 Oct 2023 01:51:58 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by dfw.source.kernel.org (Postfix) with ESMTP id 5BCBC61333;
 Mon,  9 Oct 2023 23:51:57 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 715B3C433C8;
 Mon,  9 Oct 2023 23:51: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: d51a086e-66fe-11ee-98d3-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696895517;
	bh=0t9mc7kq38natk9LCJNhC7Fgb6FB3ybv005st60Nd/4=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=JVXKbXRclAx2DSQwG49RBnhRaeFahGuO804b+nqtMIEcfAkfbQh2U7RKs+0YVzQOV
	 XllB/ITyIKmrCKgpWv9B55cYwHc70HMZEUiXAZafo/tHTrdvARsGbvtpXmR5+MhBc4
	 qCHcFK86HjIxAADfOT5CmSvVYsJZnRm9p3faACmwHmzYBh+plA5Jdoj7HObKKrE0ET
	 tgo7Uj4MSzv9NnfT4c0U5ulNlEczcPLxq7tETMOTbXNszsHcyIA2ZvURpgXQTv6yAO
	 P4ox/20EF65hW7zRDIztuocjMvH9y5i9YU8sQY68PsflL4/QKiKd/z8wVMAbNU/AcJ
	 hYNk1tuGWksIA==
Date: Mon, 9 Oct 2023 16:51:53 -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: qemu-devel@nongnu.org, sstabellini@kernel.org, 
    Juergen Gross <jgross@suse.com>, 
    Anthony Perard <anthony.perard@citrix.com>, Paul Durrant <paul@xen.org>, 
    "Michael S. Tsirkin" <mst@redhat.com>, 
    Marcel Apfelbaum <marcel.apfelbaum@gmail.com>, 
    Paolo Bonzini <pbonzini@redhat.com>, 
    Richard Henderson <richard.henderson@linaro.org>, 
    Eduardo Habkost <eduardo@habkost.net>, 
    "open list:X86 Xen CPUs" <xen-devel@lists.xenproject.org>
Subject: Re: [QEMU][PATCH v1 1/7] xen: when unplugging emulated devices skip
 virtio devices
In-Reply-To: <20231005181629.4046-2-vikram.garhwal@amd.com>
Message-ID: <alpine.DEB.2.22.394.2310091651110.3431292@ubuntu-linux-20-04-desktop>
References: <20231005181629.4046-1-vikram.garhwal@amd.com> <20231005181629.4046-2-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, 5 Oct 2023, Vikram Garhwal wrote:
> From: Juergen Gross <jgross@suse.com>
> 
> Virtio devices should never be unplugged at boot time, as they are
> similar to pci passthrough devices.
> 
> Signed-off-by: Juergen Gross <jgross@suse.com>
> Signed-off-by: Vikram Garhwal <vikram.garhwal@amd.com>
> ---
>  hw/i386/xen/xen_platform.c | 8 +++++++-
>  1 file changed, 7 insertions(+), 1 deletion(-)
> 
> diff --git a/hw/i386/xen/xen_platform.c b/hw/i386/xen/xen_platform.c
> index 17457ff3de..3560eaf8c8 100644
> --- a/hw/i386/xen/xen_platform.c
> +++ b/hw/i386/xen/xen_platform.c
> @@ -28,6 +28,7 @@
>  #include "hw/ide/pci.h"
>  #include "hw/pci/pci.h"
>  #include "migration/vmstate.h"
> +#include "hw/virtio/virtio-bus.h"
>  #include "net/net.h"
>  #include "trace.h"
>  #include "sysemu/xen.h"
> @@ -132,7 +133,8 @@ static void unplug_nic(PCIBus *b, PCIDevice *d, void *o)
>      /* We have to ignore passthrough devices */
>      if (pci_get_word(d->config + PCI_CLASS_DEVICE) ==
>              PCI_CLASS_NETWORK_ETHERNET
> -            && !pci_device_is_passthrough(d)) {
> +            && !pci_device_is_passthrough(d)
> +            && !qdev_get_child_bus(&d->qdev, TYPE_VIRTIO_BUS)) {

Please update the in-code comment above to say "ignore passthrough
devices and virtio devices"


>          object_unparent(OBJECT(d));
>      }
>  }
> @@ -208,6 +210,10 @@ static void unplug_disks(PCIBus *b, PCIDevice *d, void *opaque)
>      /* We have to ignore passthrough devices */
>      if (pci_device_is_passthrough(d))
>          return;
> +    /* Ignore virtio devices */
> +    if (qdev_get_child_bus(&d->qdev, TYPE_VIRTIO_BUS)) {
> +        return;
> +    }
>  
>      switch (pci_get_word(d->config + PCI_CLASS_DEVICE)) {
>      case PCI_CLASS_STORAGE_IDE:
> -- 
> 2.17.1
> 


From xen-devel-bounces@lists.xenproject.org Tue Oct 10 00:02:31 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 10 Oct 2023 00:02:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614498.955605 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qq0Cg-0002A7-2k; Tue, 10 Oct 2023 00:02:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614498.955605; Tue, 10 Oct 2023 00: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 1qq0Cg-0002A0-0E; Tue, 10 Oct 2023 00:02:26 +0000
Received: by outflank-mailman (input) for mailman id 614498;
 Tue, 10 Oct 2023 00:02: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=Z25Z=FY=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qq0Ce-00029e-81
 for xen-devel@lists.xenproject.org; Tue, 10 Oct 2023 00:02:24 +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 48195012-6700-11ee-9b0d-b553b5be7939;
 Tue, 10 Oct 2023 02:02: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 19C8661467;
 Tue, 10 Oct 2023 00:02:20 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 4D8AFC433C8;
 Tue, 10 Oct 2023 00:02: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: 48195012-6700-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696896139;
	bh=4iYTwEmPZb1jiFlgBkYVXVww5GMKtN89UiP07vhNGN0=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=CznwwrSaYzTyR2FBoOfEQ5UutoZSH8L4nZikWnnWDBV824wAe1wP8sTpYjVXliWZY
	 qiNjjGaGoEqea8RlWcxsZdohmNBPyMGnoAaYnzKYzK/nEq9GWJ6DJsHw9BVXshM8Hi
	 W4YZCbBuYptv0k/j5YyP/PkP5YBPCMiB2pCiC7Zug9VNAPO4NkA6+r9NNSUUDH9fVg
	 0MLxO5D8eyFNvnGmsCeeRLJf7bMMarViywSf8Mr/wj2MTcbPyEPCVSNWqIWsduKhJY
	 vICD2x9F43LC9leObCH9kZS7N5/XbbFqJw9vBu0wADbr2ECD+8ZkT5KxGjkmL/NEjn
	 0cq6aVOxfyFlw==
Date: Mon, 9 Oct 2023 17:02:14 -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: qemu-devel@nongnu.org, sstabellini@kernel.org, 
    Juergen Gross <jgross@suse.com>, 
    Anthony Perard <anthony.perard@citrix.com>, Paul Durrant <paul@xen.org>, 
    "Michael S. Tsirkin" <mst@redhat.com>, 
    Marcel Apfelbaum <marcel.apfelbaum@gmail.com>, 
    Paolo Bonzini <pbonzini@redhat.com>, 
    Richard Henderson <richard.henderson@linaro.org>, 
    Eduardo Habkost <eduardo@habkost.net>, Peter Xu <peterx@redhat.com>, 
    David Hildenbrand <david@redhat.com>, 
    =?UTF-8?Q?Philippe_Mathieu-Daud=C3=A9?= <philmd@linaro.org>, 
    "open list:X86 Xen CPUs" <xen-devel@lists.xenproject.org>
Subject: Re: [QEMU][PATCH v1 2/7] xen: add pseudo RAM region for grant
 mappings
In-Reply-To: <20231005181629.4046-3-vikram.garhwal@amd.com>
Message-ID: <alpine.DEB.2.22.394.2310091653270.3431292@ubuntu-linux-20-04-desktop>
References: <20231005181629.4046-1-vikram.garhwal@amd.com> <20231005181629.4046-3-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, 5 Oct 2023, Vikram Garhwal wrote:
> From: Juergen Gross <jgross@suse.com>
> 
> Add a memory region which can be used to automatically map granted
> memory. It is starting at 0x8000000000000000ULL in order to be able to
> distinguish it from normal RAM.
> 
> For this reason the xen.ram memory region is expanded, which has no
> further impact as it is used just as a container of the real RAM
> regions and now the grant region.
> 
> Signed-off-by: Juergen Gross <jgross@suse.com>
> Signed-off-by: Vikram Garhwal <vikram.garhwal@amd.com>

This patch doesn't apply to staging anymore


> ---
>  hw/i386/xen/xen-hvm.c           |  3 ++
>  hw/xen/xen-hvm-common.c         |  4 +--
>  hw/xen/xen-mapcache.c           | 27 ++++++++++++++
>  include/exec/ram_addr.h         |  1 +
>  include/hw/xen/xen-hvm-common.h |  2 ++
>  include/hw/xen/xen_pvdev.h      |  3 ++
>  include/sysemu/xen-mapcache.h   |  3 ++
>  softmmu/physmem.c               | 62 +++++++++++++++++++++------------
>  8 files changed, 80 insertions(+), 25 deletions(-)
> 
> diff --git a/hw/i386/xen/xen-hvm.c b/hw/i386/xen/xen-hvm.c
> index f42621e674..67a55558a6 100644
> --- a/hw/i386/xen/xen-hvm.c
> +++ b/hw/i386/xen/xen-hvm.c
> @@ -172,6 +172,9 @@ static void xen_ram_init(PCMachineState *pcms,
>                                   x86ms->above_4g_mem_size);
>          memory_region_add_subregion(sysmem, 0x100000000ULL, &ram_hi);
>      }
> +
> +    /* Add grant mappings as a pseudo RAM region. */
> +    ram_grants = *xen_init_grant_ram();
>  }
>  
>  static XenPhysmap *get_physmapping(hwaddr start_addr, ram_addr_t size)
> diff --git a/hw/xen/xen-hvm-common.c b/hw/xen/xen-hvm-common.c
> index 565dc39c8f..b7255977a5 100644
> --- a/hw/xen/xen-hvm-common.c
> +++ b/hw/xen/xen-hvm-common.c
> @@ -9,7 +9,7 @@
>  #include "hw/boards.h"
>  #include "hw/xen/arch_hvm.h"
>  
> -MemoryRegion ram_memory;
> +MemoryRegion ram_memory, ram_grants;
>  
>  void xen_ram_alloc(ram_addr_t ram_addr, ram_addr_t size, MemoryRegion *mr,
>                     Error **errp)
> @@ -26,7 +26,7 @@ void xen_ram_alloc(ram_addr_t ram_addr, ram_addr_t size, MemoryRegion *mr,
>          return;
>      }
>  
> -    if (mr == &ram_memory) {
> +    if (mr == &ram_memory || mr == &ram_grants) {
>          return;
>      }
>  
> diff --git a/hw/xen/xen-mapcache.c b/hw/xen/xen-mapcache.c
> index f7d974677d..8115c44c00 100644
> --- a/hw/xen/xen-mapcache.c
> +++ b/hw/xen/xen-mapcache.c
> @@ -14,7 +14,9 @@
>  
>  #include <sys/resource.h>
>  
> +#include "hw/xen/xen-hvm-common.h"
>  #include "hw/xen/xen_native.h"
> +#include "hw/xen/xen_pvdev.h"
>  #include "qemu/bitmap.h"
>  
>  #include "sysemu/runstate.h"
> @@ -597,3 +599,28 @@ uint8_t *xen_replace_cache_entry(hwaddr old_phys_addr,
>      mapcache_unlock();
>      return p;
>  }
> +
> +MemoryRegion *xen_init_grant_ram(void)
> +{
> +    RAMBlock *block;
> +
> +    memory_region_init(&ram_grants, NULL, "xen.grants",
> +                       XEN_MAX_VIRTIO_GRANTS * XC_PAGE_SIZE);
> +    block = g_malloc0(sizeof(*block));
> +    block->mr = &ram_grants;
> +    block->used_length = XEN_MAX_VIRTIO_GRANTS * XC_PAGE_SIZE;
> +    block->max_length = XEN_MAX_VIRTIO_GRANTS * XC_PAGE_SIZE;
> +    block->fd = -1;
> +    block->page_size = XC_PAGE_SIZE;
> +    block->host = (void *)XEN_GRANT_ADDR_OFF;
> +    block->offset = XEN_GRANT_ADDR_OFF;
> +    block->flags = RAM_PREALLOC;
> +    ram_grants.ram_block = block;
> +    ram_grants.ram = true;
> +    ram_grants.terminates = true;
> +    ram_block_add_list(block);
> +    memory_region_add_subregion(get_system_memory(), XEN_GRANT_ADDR_OFF,
> +                                &ram_grants);
> +
> +    return &ram_grants;

It doesn't look like xen_init_grant_ram has anything to do with the
mapcache. It should be in another file. Maybe ./hw/xen/xen-hvm-common.c
or ./hw/i386/xen/xen-hvm.c (but this is x86 specific and we need grants
on ARM too)


> +}
> diff --git a/include/exec/ram_addr.h b/include/exec/ram_addr.h
> index 90676093f5..c0b5f9a7d0 100644
> --- a/include/exec/ram_addr.h
> +++ b/include/exec/ram_addr.h
> @@ -139,6 +139,7 @@ void qemu_ram_free(RAMBlock *block);
>  int qemu_ram_resize(RAMBlock *block, ram_addr_t newsize, Error **errp);
>  
>  void qemu_ram_msync(RAMBlock *block, ram_addr_t start, ram_addr_t length);
> +void ram_block_add_list(RAMBlock *new_block);
>  
>  /* Clear whole block of mem */
>  static inline void qemu_ram_block_writeback(RAMBlock *block)
> diff --git a/include/hw/xen/xen-hvm-common.h b/include/hw/xen/xen-hvm-common.h
> index 4e9904f1a6..0d300ba898 100644
> --- a/include/hw/xen/xen-hvm-common.h
> +++ b/include/hw/xen/xen-hvm-common.h
> @@ -17,6 +17,8 @@
>  #include <xen/hvm/ioreq.h>
>  
>  extern MemoryRegion ram_memory;
> +
> +extern MemoryRegion ram_grants;
>  extern MemoryListener xen_io_listener;
>  extern DeviceListener xen_device_listener;
>  
> diff --git a/include/hw/xen/xen_pvdev.h b/include/hw/xen/xen_pvdev.h
> index ddad4b9f36..0f1b5edfa9 100644
> --- a/include/hw/xen/xen_pvdev.h
> +++ b/include/hw/xen/xen_pvdev.h
> @@ -80,4 +80,7 @@ int xen_pv_send_notify(struct XenLegacyDevice *xendev);
>  void xen_pv_printf(struct XenLegacyDevice *xendev, int msg_level,
>                     const char *fmt, ...)  G_GNUC_PRINTF(3, 4);
>  
> +#define XEN_GRANT_ADDR_OFF    0x8000000000000000ULL
> +#define XEN_MAX_VIRTIO_GRANTS 65536
> +
>  #endif /* QEMU_HW_XEN_PVDEV_H */
> diff --git a/include/sysemu/xen-mapcache.h b/include/sysemu/xen-mapcache.h
> index c8e7c2f6cf..f4bedb1c11 100644
> --- a/include/sysemu/xen-mapcache.h
> +++ b/include/sysemu/xen-mapcache.h
> @@ -10,6 +10,7 @@
>  #define XEN_MAPCACHE_H
>  
>  #include "exec/cpu-common.h"
> +#include "exec/ram_addr.h"
>  
>  typedef hwaddr (*phys_offset_to_gaddr_t)(hwaddr phys_offset,
>                                           ram_addr_t size);
> @@ -25,6 +26,8 @@ void xen_invalidate_map_cache(void);
>  uint8_t *xen_replace_cache_entry(hwaddr old_phys_addr,
>                                   hwaddr new_phys_addr,
>                                   hwaddr size);
> +MemoryRegion *xen_init_grant_ram(void);
> +
>  #else
>  
>  static inline void xen_map_cache_init(phys_offset_to_gaddr_t f,
> diff --git a/softmmu/physmem.c b/softmmu/physmem.c
> index 309653c722..e182a2fa07 100644
> --- a/softmmu/physmem.c
> +++ b/softmmu/physmem.c


You might want to split this change out of this patch to make it easier
to get the physmem.c maintainers' attention


> @@ -1803,12 +1803,47 @@ static void dirty_memory_extend(ram_addr_t old_ram_size,
>      }
>  }
>  
> +static void ram_block_add_list_locked(RAMBlock *new_block)
> + {
> +     RAMBlock *block;
> +     RAMBlock *last_block = NULL;
> +
> +    /*
> +     * Keep the list sorted from biggest to smallest block.  Unlike QTAILQ,
> +     * QLIST (which has an RCU-friendly variant) does not have insertion at
> +     * tail, so save the last element in last_block.
> +     */
> +    RAMBLOCK_FOREACH(block) {
> +        last_block = block;
> +        if (block->max_length < new_block->max_length) {
> +            break;
> +        }
> +    }
> +    if (block) {
> +        QLIST_INSERT_BEFORE_RCU(block, new_block, next);
> +    } else if (last_block) {
> +        QLIST_INSERT_AFTER_RCU(last_block, new_block, next);
> +    } else { /* list is empty */
> +        QLIST_INSERT_HEAD_RCU(&ram_list.blocks, new_block, next);
> +    }
> +    ram_list.mru_block = NULL;
> +
> +    /* Write list before version */
> +    smp_wmb();
> +    ram_list.version++;
> +}
> +
> +void ram_block_add_list(RAMBlock *new_block)
> +{
> +    qemu_mutex_lock_ramlist();
> +    ram_block_add_list_locked(new_block);
> +    qemu_mutex_unlock_ramlist();
> +}
> +
>  static void ram_block_add(RAMBlock *new_block, Error **errp)
>  {
>      const bool noreserve = qemu_ram_is_noreserve(new_block);
>      const bool shared = qemu_ram_is_shared(new_block);
> -    RAMBlock *block;
> -    RAMBlock *last_block = NULL;
>      ram_addr_t old_ram_size, new_ram_size;
>      Error *err = NULL;
>  
> @@ -1846,28 +1881,9 @@ static void ram_block_add(RAMBlock *new_block, Error **errp)
>      if (new_ram_size > old_ram_size) {
>          dirty_memory_extend(old_ram_size, new_ram_size);
>      }
> -    /* Keep the list sorted from biggest to smallest block.  Unlike QTAILQ,
> -     * QLIST (which has an RCU-friendly variant) does not have insertion at
> -     * tail, so save the last element in last_block.
> -     */
> -    RAMBLOCK_FOREACH(block) {
> -        last_block = block;
> -        if (block->max_length < new_block->max_length) {
> -            break;
> -        }
> -    }
> -    if (block) {
> -        QLIST_INSERT_BEFORE_RCU(block, new_block, next);
> -    } else if (last_block) {
> -        QLIST_INSERT_AFTER_RCU(last_block, new_block, next);
> -    } else { /* list is empty */
> -        QLIST_INSERT_HEAD_RCU(&ram_list.blocks, new_block, next);
> -    }
> -    ram_list.mru_block = NULL;
>  
> -    /* Write list before version */
> -    smp_wmb();
> -    ram_list.version++;
> +    ram_block_add_list_locked(new_block);
> +
>      qemu_mutex_unlock_ramlist();
>  
>      cpu_physical_memory_set_dirty_range(new_block->offset,
> -- 
> 2.17.1
> 


From xen-devel-bounces@lists.xenproject.org Tue Oct 10 00:13:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 10 Oct 2023 00:13:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614504.955617 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qq0Nd-0004HG-5T; Tue, 10 Oct 2023 00:13:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614504.955617; Tue, 10 Oct 2023 00: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 1qq0Nd-0004H9-0l; Tue, 10 Oct 2023 00:13:45 +0000
Received: by outflank-mailman (input) for mailman id 614504;
 Tue, 10 Oct 2023 00:13: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=Z25Z=FY=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qq0Nb-0004Gz-Pq
 for xen-devel@lists.xenproject.org; Tue, 10 Oct 2023 00:13: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 de1be0f4-6701-11ee-98d3-6d05b1d4d9a1;
 Tue, 10 Oct 2023 02:13: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 E89416145D;
 Tue, 10 Oct 2023 00:13:40 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id A9F5FC433C8;
 Tue, 10 Oct 2023 00:13: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: de1be0f4-6701-11ee-98d3-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696896820;
	bh=pFShj7E3teMu9hJW8EV5RvbTmKj4bVtl8O/wRY3ZG7M=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=rSWwqSmBwJb5Dl2qzyJsJ8Nv5st7powAi+gOwKy3X3EFBNT1MufUYMEYMsjc8Ali7
	 h7QWSqCRLEeihNelze6EJ45RLodm8f2u+LVJ3O257jpaiTkMCQQlWEUW9mhTzwRvEJ
	 ipmcQ2GAmESz9/6ElOfCoirfCi4BImsb0ByLXE27SP60xxf9RT0mYvvHnz0URxjquv
	 nvHOAZwld4ZL0iU6W6b/fHxWKMTk5DKGFs5gac1eJyrZN869NXhMcUsbZvrMwPWPF8
	 C5IusCS3xZgKk48eKXyIRuaHMWB/WZtpl/0dqh0bX/eYp+cqXhTIsOIiVpQUQ3JbQI
	 jtgeEJdMWGejQ==
Date: Mon, 9 Oct 2023 17:13:37 -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: qemu-devel@nongnu.org, sstabellini@kernel.org, 
    Juergen Gross <jgross@suse.com>, 
    Anthony Perard <anthony.perard@citrix.com>, Paul Durrant <paul@xen.org>, 
    "open list:X86 Xen CPUs" <xen-devel@lists.xenproject.org>
Subject: Re: [QEMU][PATCH v1 4/7] xen: let xen_ram_addr_from_mapcache() return
 -1 in case of not found entry
In-Reply-To: <20231005181629.4046-5-vikram.garhwal@amd.com>
Message-ID: <alpine.DEB.2.22.394.2310091713200.3431292@ubuntu-linux-20-04-desktop>
References: <20231005181629.4046-1-vikram.garhwal@amd.com> <20231005181629.4046-5-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, 5 Oct 2023, Vikram Garhwal wrote:
> From: Juergen Gross <jgross@suse.com>
> 
> Today xen_ram_addr_from_mapcache() will either abort() or return 0 in
> case it can't find a matching entry for a pointer value. Both cases
> are bad, so change that to return an invalid address instead.
> 
> Signed-off-by: Juergen Gross <jgross@suse.com>

Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>


> ---
>  hw/xen/xen-mapcache.c | 12 +++---------
>  1 file changed, 3 insertions(+), 9 deletions(-)
> 
> diff --git a/hw/xen/xen-mapcache.c b/hw/xen/xen-mapcache.c
> index 8115c44c00..8a61c7dde6 100644
> --- a/hw/xen/xen-mapcache.c
> +++ b/hw/xen/xen-mapcache.c
> @@ -404,13 +404,8 @@ ram_addr_t xen_ram_addr_from_mapcache(void *ptr)
>          }
>      }
>      if (!found) {
> -        fprintf(stderr, "%s, could not find %p\n", __func__, ptr);
> -        QTAILQ_FOREACH(reventry, &mapcache->locked_entries, next) {
> -            DPRINTF("   "HWADDR_FMT_plx" -> %p is present\n", reventry->paddr_index,
> -                    reventry->vaddr_req);
> -        }
> -        abort();
> -        return 0;
> +        mapcache_unlock();
> +        return RAM_ADDR_INVALID;
>      }
>  
>      entry = &mapcache->entry[paddr_index % mapcache->nr_buckets];
> @@ -418,8 +413,7 @@ ram_addr_t xen_ram_addr_from_mapcache(void *ptr)
>          entry = entry->next;
>      }
>      if (!entry) {
> -        DPRINTF("Trying to find address %p that is not in the mapcache!\n", ptr);
> -        raddr = 0;
> +        raddr = RAM_ADDR_INVALID;
>      } else {
>          raddr = (reventry->paddr_index << MCACHE_BUCKET_SHIFT) +
>               ((unsigned long) ptr - (unsigned long) entry->vaddr_base);
> -- 
> 2.17.1
> 


From xen-devel-bounces@lists.xenproject.org Tue Oct 10 00:28:12 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 10 Oct 2023 00:28:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614509.955626 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qq0bV-0006CY-Bi; Tue, 10 Oct 2023 00:28:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614509.955626; Tue, 10 Oct 2023 00:28: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 1qq0bV-0006CR-8m; Tue, 10 Oct 2023 00:28:05 +0000
Received: by outflank-mailman (input) for mailman id 614509;
 Tue, 10 Oct 2023 00: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=Z25Z=FY=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qq0bT-0006CJ-RC
 for xen-devel@lists.xenproject.org; Tue, 10 Oct 2023 00:28:03 +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 df34e7bc-6703-11ee-98d3-6d05b1d4d9a1;
 Tue, 10 Oct 2023 02:28:02 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by ams.source.kernel.org (Postfix) with ESMTP id C6541B8092E;
 Tue, 10 Oct 2023 00:28:01 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id A4EE7C433C7;
 Tue, 10 Oct 2023 00:27: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: df34e7bc-6703-11ee-98d3-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696897681;
	bh=n+8+kl0l5qmiaXi9T/lzTbJXS41Rqkh31n8ODesFFDc=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=GkmcLmsW5uOr3PYNV+wFCan7+dD7MB4Ut9rncB7I0ckaliyDuAX/tNZFTCdXJ1SKQ
	 4BmEGVBvvyAWIcm4NoGqxN+PDzu+gNPNNsJGXnrVVEyDboTwQ6lXOiSRDHkqao1z4i
	 IShMKDdHfoS907mCbXjlNtYH4J7w28xe1RyRedFHr4RcqcTlWLb5uUoQJAH+SZ2I1a
	 oiWKi14Dekljh6tJmEJsWXjHd6he4gn1606QVO+Ce8riradu0sTsT30s5qOjnru+b2
	 NNWiExLT16h/bShCbpYx6d40b5ntOwgxsb+arnCgfyF33SZdruKeYOCqvjBeC4DlFW
	 OGqn8oNVwpgeg==
Date: Mon, 9 Oct 2023 17:27:58 -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: qemu-devel@nongnu.org, sstabellini@kernel.org, 
    Juergen Gross <jgross@suse.com>, 
    Anthony Perard <anthony.perard@citrix.com>, Paul Durrant <paul@xen.org>, 
    Paolo Bonzini <pbonzini@redhat.com>, Peter Xu <peterx@redhat.com>, 
    David Hildenbrand <david@redhat.com>, 
    =?UTF-8?Q?Philippe_Mathieu-Daud=C3=A9?= <philmd@linaro.org>, 
    "open list:X86 Xen CPUs" <xen-devel@lists.xenproject.org>
Subject: Re: [QEMU][PATCH v1 6/7] xen: add map and unmap callbacks for grant
 region
In-Reply-To: <20231005181629.4046-7-vikram.garhwal@amd.com>
Message-ID: <alpine.DEB.2.22.394.2310091727390.3431292@ubuntu-linux-20-04-desktop>
References: <20231005181629.4046-1-vikram.garhwal@amd.com> <20231005181629.4046-7-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, 5 Oct 2023, Vikram Garhwal wrote:
> From: Juergen Gross <jgross@suse.com>
> 
> Add the callbacks for mapping/unmapping guest memory via grants to the
> special grant memory region.
> 
> Signed-off-by: Juergen Gross <jgross@suse.com>
> Signed-off-by: Vikram Garhwal <vikram.garhwal@amd.com>

This looks good. We need to add a check to make sure we don't exceed
XEN_MAX_VIRTIO_GRANTS.



> ---
>  hw/xen/xen-mapcache.c | 167 +++++++++++++++++++++++++++++++++++++++++-
>  softmmu/physmem.c     |  11 ++-
>  2 files changed, 173 insertions(+), 5 deletions(-)
> 
> diff --git a/hw/xen/xen-mapcache.c b/hw/xen/xen-mapcache.c
> index 8a61c7dde6..52844a6a9d 100644
> --- a/hw/xen/xen-mapcache.c
> +++ b/hw/xen/xen-mapcache.c
> @@ -9,6 +9,8 @@
>   */
>  
>  #include "qemu/osdep.h"
> +#include "qemu/queue.h"
> +#include "qemu/thread.h"
>  #include "qemu/units.h"
>  #include "qemu/error-report.h"
>  
> @@ -23,6 +25,8 @@
>  #include "sysemu/xen-mapcache.h"
>  #include "trace.h"
>  
> +#include <xenevtchn.h>
> +#include <xengnttab.h>
>  
>  //#define MAPCACHE_DEBUG
>  
> @@ -385,7 +389,7 @@ uint8_t *xen_map_cache(hwaddr phys_addr, hwaddr size,
>      return p;
>  }
>  
> -ram_addr_t xen_ram_addr_from_mapcache(void *ptr)
> +static ram_addr_t xen_ram_addr_from_mapcache_try(void *ptr)
>  {
>      MapCacheEntry *entry = NULL;
>      MapCacheRev *reventry;
> @@ -594,10 +598,170 @@ uint8_t *xen_replace_cache_entry(hwaddr old_phys_addr,
>      return p;
>  }
>  
> +struct XENMappedGrantRegion {
> +    void *addr;
> +    unsigned int pages;
> +    unsigned int refs;
> +    unsigned int prot;
> +    uint32_t idx;
> +    QLIST_ENTRY(XENMappedGrantRegion) list;
> +};
> +
> +static xengnttab_handle *xen_region_gnttabdev;
> +static QLIST_HEAD(GrantRegionList, XENMappedGrantRegion) xen_grant_mappings =
> +    QLIST_HEAD_INITIALIZER(xen_grant_mappings);
> +static QemuMutex xen_map_mutex;
> +
> +static void *xen_map_grant_dyn(MemoryRegion **mr, hwaddr addr, hwaddr *plen,
> +                               bool is_write, MemTxAttrs attrs)
> +{
> +    unsigned int page_off = addr & (XC_PAGE_SIZE - 1);
> +    unsigned int i;
> +    unsigned int nrefs = (page_off + *plen + XC_PAGE_SIZE - 1) >> XC_PAGE_SHIFT;
> +    uint32_t ref = (addr - XEN_GRANT_ADDR_OFF) >> XC_PAGE_SHIFT;
> +    uint32_t *refs = NULL;
> +    unsigned int prot = PROT_READ;
> +    struct XENMappedGrantRegion *mgr = NULL;
> +
> +    if (is_write) {
> +        prot |= PROT_WRITE;
> +    }
> +
> +    qemu_mutex_lock(&xen_map_mutex);
> +
> +    QLIST_FOREACH(mgr, &xen_grant_mappings, list) {
> +        if (mgr->idx == ref &&
> +            mgr->pages == nrefs &&
> +            (mgr->prot & prot) == prot) {
> +            break;
> +        }
> +    }
> +    if (!mgr) {
> +        mgr = g_new(struct XENMappedGrantRegion, 1);
> +
> +        if (nrefs == 1) {
> +            refs = &ref;
> +        } else {
> +            refs = g_new(uint32_t, nrefs);
> +            for (i = 0; i < nrefs; i++) {
> +                refs[i] = ref + i;
> +            }
> +        }
> +        mgr->addr = xengnttab_map_domain_grant_refs(xen_region_gnttabdev, nrefs,
> +                                                    xen_domid, refs, prot);
> +        if (mgr->addr) {
> +            mgr->pages = nrefs;
> +            mgr->refs = 1;
> +            mgr->prot = prot;
> +            mgr->idx = ref;
> +
> +            QLIST_INSERT_HEAD(&xen_grant_mappings, mgr, list);
> +        } else {
> +            g_free(mgr);
> +            mgr = NULL;
> +        }
> +    } else {
> +        mgr->refs++;
> +    }
> +
> +    qemu_mutex_unlock(&xen_map_mutex);
> +
> +    if (nrefs > 1) {
> +        g_free(refs);
> +    }
> +
> +    return mgr ? mgr->addr + page_off : NULL;
> +}
> +
> +static void xen_unmap_grant_dyn(MemoryRegion *mr, void *buffer, ram_addr_t addr,
> +                                hwaddr len, bool is_write, hwaddr access_len)
> +{
> +    unsigned int page_off = (unsigned long)buffer & (XC_PAGE_SIZE - 1);
> +    unsigned int nrefs = (page_off + len + XC_PAGE_SIZE - 1) >> XC_PAGE_SHIFT;
> +    unsigned int prot = PROT_READ;
> +    struct XENMappedGrantRegion *mgr = NULL;
> +
> +    if (is_write) {
> +        prot |= PROT_WRITE;
> +    }
> +
> +    qemu_mutex_lock(&xen_map_mutex);
> +
> +    QLIST_FOREACH(mgr, &xen_grant_mappings, list) {
> +        if (mgr->addr == buffer - page_off &&
> +            mgr->pages == nrefs &&
> +            (mgr->prot & prot) == prot) {
> +            break;
> +        }
> +    }
> +    if (mgr) {
> +        mgr->refs--;
> +        if (!mgr->refs) {
> +            xengnttab_unmap(xen_region_gnttabdev, mgr->addr, nrefs);
> +
> +            QLIST_REMOVE(mgr, list);
> +            g_free(mgr);
> +        }
> +    } else {
> +        error_report("xen_unmap_grant_dyn() trying to unmap unknown buffer");
> +    }
> +
> +    qemu_mutex_unlock(&xen_map_mutex);
> +}
> +
> +static ram_addr_t xen_ram_addr_from_grant_cache(void *ptr)
> +{
> +    unsigned int page_off = (unsigned long)ptr & (XC_PAGE_SIZE - 1);
> +    struct XENMappedGrantRegion *mgr = NULL;
> +    ram_addr_t raddr = RAM_ADDR_INVALID;
> +
> +    qemu_mutex_lock(&xen_map_mutex);
> +
> +    QLIST_FOREACH(mgr, &xen_grant_mappings, list) {
> +        if (mgr->addr == ptr - page_off) {
> +            break;
> +        }
> +    }
> +
> +    if (mgr) {
> +        raddr = (mgr->idx << XC_PAGE_SHIFT) + page_off + XEN_GRANT_ADDR_OFF;
> +    }
> +
> +    qemu_mutex_unlock(&xen_map_mutex);
> +
> +    return raddr;
> +}
> +
> +ram_addr_t xen_ram_addr_from_mapcache(void *ptr)
> +{
> +    ram_addr_t raddr;
> +
> +    raddr = xen_ram_addr_from_mapcache_try(ptr);
> +    if (raddr == RAM_ADDR_INVALID) {
> +        raddr = xen_ram_addr_from_grant_cache(ptr);
> +    }
> +
> +    return raddr;
> +}
> +
> +static const struct MemoryRegionOps xen_grant_mr_ops = {
> +    .map = xen_map_grant_dyn,
> +    .unmap = xen_unmap_grant_dyn,
> +    .endianness = DEVICE_LITTLE_ENDIAN,
> +};
> +
>  MemoryRegion *xen_init_grant_ram(void)
>  {
>      RAMBlock *block;
>  
> +    qemu_mutex_init(&xen_map_mutex);
> +
> +    xen_region_gnttabdev = xengnttab_open(NULL, 0);
> +    if (xen_region_gnttabdev == NULL) {
> +        fprintf(stderr, "can't open gnttab device\n");
> +        return NULL;
> +    }
> +
>      memory_region_init(&ram_grants, NULL, "xen.grants",
>                         XEN_MAX_VIRTIO_GRANTS * XC_PAGE_SIZE);
>      block = g_malloc0(sizeof(*block));
> @@ -612,6 +776,7 @@ MemoryRegion *xen_init_grant_ram(void)
>      ram_grants.ram_block = block;
>      ram_grants.ram = true;
>      ram_grants.terminates = true;
> +    ram_grants.ops = &xen_grant_mr_ops;
>      ram_block_add_list(block);
>      memory_region_add_subregion(get_system_memory(), XEN_GRANT_ADDR_OFF,
>                                  &ram_grants);
> diff --git a/softmmu/physmem.c b/softmmu/physmem.c
> index 5f425bea1c..e5346386db 100644
> --- a/softmmu/physmem.c
> +++ b/softmmu/physmem.c
> @@ -2250,13 +2250,16 @@ RAMBlock *qemu_ram_block_from_host(void *ptr, bool round_offset,
>  
>      if (xen_enabled()) {
>          ram_addr_t ram_addr;
> +
>          RCU_READ_LOCK_GUARD();
>          ram_addr = xen_ram_addr_from_mapcache(ptr);
> -        block = qemu_get_ram_block(ram_addr);
> -        if (block) {
> -            *offset = ram_addr - block->offset;
> +        if (ram_addr != RAM_ADDR_INVALID) {
> +            block = qemu_get_ram_block(ram_addr);
> +            if (block) {
> +                *offset = ram_addr - block->offset;
> +            }
> +            return block;
>          }
> -        return block;
>      }
>  
>      RCU_READ_LOCK_GUARD();
> -- 
> 2.17.1
> 


From xen-devel-bounces@lists.xenproject.org Tue Oct 10 00:30:00 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 10 Oct 2023 00:30:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614515.955636 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qq0dK-0006o8-Rb; Tue, 10 Oct 2023 00:29:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614515.955636; Tue, 10 Oct 2023 00:29: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 1qq0dK-0006o1-Nm; Tue, 10 Oct 2023 00:29:58 +0000
Received: by outflank-mailman (input) for mailman id 614515;
 Tue, 10 Oct 2023 00:29: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=Z25Z=FY=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qq0dI-0006nt-Qs
 for xen-devel@lists.xenproject.org; Tue, 10 Oct 2023 00:29:56 +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 2241010b-6704-11ee-9b0d-b553b5be7939;
 Tue, 10 Oct 2023 02:29: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 78098B816F6;
 Tue, 10 Oct 2023 00:29:54 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 0C526C433C7;
 Tue, 10 Oct 2023 00:29: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: 2241010b-6704-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696897793;
	bh=+wRMvUQqKAhGEuI+n5i2O9uzzBEO/HlE+ubvDlGkp2Q=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=BoSuOvxuBibbPpDmtKrIBuxFAiXS7rNupNCI4GvQ4ExotTQ2Fq9RtAN/ddOrwM9ii
	 TkstE0C23LuTHNNnX5ZmbS1zVrlpAk+9Y2R8+UuzVza289Tmmlbds1yBoXERgPSKzl
	 zyvuV8wnSg4skEm/etnckgOLYzxn3r08D7791ZKBJlyt7a9Gi2mVadLNYoEmApsmi6
	 f1fCt2EXmUn0VgXIBwUh0hgLOJ74hW9n4DFei6feqhs365QsLM6gQf3uknD/AM32ZF
	 /v2jiEV1YzLN/6TUAzpPwsIpuRCf65odhD79onQjlfxpISNUwNDBnfTZe4mGlMjGwP
	 Uz8jJBsO731sQ==
Date: Mon, 9 Oct 2023 17:29:50 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Stefano Stabellini <sstabellini@kernel.org>
cc: Vikram Garhwal <vikram.garhwal@amd.com>, qemu-devel@nongnu.org, 
    Juergen Gross <jgross@suse.com>, 
    Anthony Perard <anthony.perard@citrix.com>, Paul Durrant <paul@xen.org>, 
    "Michael S. Tsirkin" <mst@redhat.com>, 
    Marcel Apfelbaum <marcel.apfelbaum@gmail.com>, 
    Paolo Bonzini <pbonzini@redhat.com>, 
    Richard Henderson <richard.henderson@linaro.org>, 
    Eduardo Habkost <eduardo@habkost.net>, Peter Xu <peterx@redhat.com>, 
    David Hildenbrand <david@redhat.com>, 
    =?UTF-8?Q?Philippe_Mathieu-Daud=C3=A9?= <philmd@linaro.org>, 
    "open list:X86 Xen CPUs" <xen-devel@lists.xenproject.org>
Subject: Re: [QEMU][PATCH v1 2/7] xen: add pseudo RAM region for grant
 mappings
In-Reply-To: <alpine.DEB.2.22.394.2310091653270.3431292@ubuntu-linux-20-04-desktop>
Message-ID: <alpine.DEB.2.22.394.2310091728500.3431292@ubuntu-linux-20-04-desktop>
References: <20231005181629.4046-1-vikram.garhwal@amd.com> <20231005181629.4046-3-vikram.garhwal@amd.com> <alpine.DEB.2.22.394.2310091653270.3431292@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

On Mon, 9 Oct 2023, Stefano Stabellini wrote:
> On Thu, 5 Oct 2023, Vikram Garhwal wrote:
> > From: Juergen Gross <jgross@suse.com>
> > 
> > Add a memory region which can be used to automatically map granted
> > memory. It is starting at 0x8000000000000000ULL in order to be able to
> > distinguish it from normal RAM.
> > 
> > For this reason the xen.ram memory region is expanded, which has no
> > further impact as it is used just as a container of the real RAM
> > regions and now the grant region.
> > 
> > Signed-off-by: Juergen Gross <jgross@suse.com>
> > Signed-off-by: Vikram Garhwal <vikram.garhwal@amd.com>
> 
> This patch doesn't apply to staging anymore
> 
> 
> > ---
> >  hw/i386/xen/xen-hvm.c           |  3 ++
> >  hw/xen/xen-hvm-common.c         |  4 +--
> >  hw/xen/xen-mapcache.c           | 27 ++++++++++++++
> >  include/exec/ram_addr.h         |  1 +
> >  include/hw/xen/xen-hvm-common.h |  2 ++
> >  include/hw/xen/xen_pvdev.h      |  3 ++
> >  include/sysemu/xen-mapcache.h   |  3 ++
> >  softmmu/physmem.c               | 62 +++++++++++++++++++++------------
> >  8 files changed, 80 insertions(+), 25 deletions(-)
> > 
> > diff --git a/hw/i386/xen/xen-hvm.c b/hw/i386/xen/xen-hvm.c
> > index f42621e674..67a55558a6 100644
> > --- a/hw/i386/xen/xen-hvm.c
> > +++ b/hw/i386/xen/xen-hvm.c
> > @@ -172,6 +172,9 @@ static void xen_ram_init(PCMachineState *pcms,
> >                                   x86ms->above_4g_mem_size);
> >          memory_region_add_subregion(sysmem, 0x100000000ULL, &ram_hi);
> >      }
> > +
> > +    /* Add grant mappings as a pseudo RAM region. */
> > +    ram_grants = *xen_init_grant_ram();
> >  }
> >  
> >  static XenPhysmap *get_physmapping(hwaddr start_addr, ram_addr_t size)
> > diff --git a/hw/xen/xen-hvm-common.c b/hw/xen/xen-hvm-common.c
> > index 565dc39c8f..b7255977a5 100644
> > --- a/hw/xen/xen-hvm-common.c
> > +++ b/hw/xen/xen-hvm-common.c
> > @@ -9,7 +9,7 @@
> >  #include "hw/boards.h"
> >  #include "hw/xen/arch_hvm.h"
> >  
> > -MemoryRegion ram_memory;
> > +MemoryRegion ram_memory, ram_grants;
> >  
> >  void xen_ram_alloc(ram_addr_t ram_addr, ram_addr_t size, MemoryRegion *mr,
> >                     Error **errp)
> > @@ -26,7 +26,7 @@ void xen_ram_alloc(ram_addr_t ram_addr, ram_addr_t size, MemoryRegion *mr,
> >          return;
> >      }
> >  
> > -    if (mr == &ram_memory) {
> > +    if (mr == &ram_memory || mr == &ram_grants) {
> >          return;
> >      }
> >  
> > diff --git a/hw/xen/xen-mapcache.c b/hw/xen/xen-mapcache.c
> > index f7d974677d..8115c44c00 100644
> > --- a/hw/xen/xen-mapcache.c
> > +++ b/hw/xen/xen-mapcache.c
> > @@ -14,7 +14,9 @@
> >  
> >  #include <sys/resource.h>
> >  
> > +#include "hw/xen/xen-hvm-common.h"
> >  #include "hw/xen/xen_native.h"
> > +#include "hw/xen/xen_pvdev.h"
> >  #include "qemu/bitmap.h"
> >  
> >  #include "sysemu/runstate.h"
> > @@ -597,3 +599,28 @@ uint8_t *xen_replace_cache_entry(hwaddr old_phys_addr,
> >      mapcache_unlock();
> >      return p;
> >  }
> > +
> > +MemoryRegion *xen_init_grant_ram(void)
> > +{
> > +    RAMBlock *block;
> > +
> > +    memory_region_init(&ram_grants, NULL, "xen.grants",
> > +                       XEN_MAX_VIRTIO_GRANTS * XC_PAGE_SIZE);
> > +    block = g_malloc0(sizeof(*block));
> > +    block->mr = &ram_grants;
> > +    block->used_length = XEN_MAX_VIRTIO_GRANTS * XC_PAGE_SIZE;
> > +    block->max_length = XEN_MAX_VIRTIO_GRANTS * XC_PAGE_SIZE;
> > +    block->fd = -1;
> > +    block->page_size = XC_PAGE_SIZE;
> > +    block->host = (void *)XEN_GRANT_ADDR_OFF;
> > +    block->offset = XEN_GRANT_ADDR_OFF;
> > +    block->flags = RAM_PREALLOC;
> > +    ram_grants.ram_block = block;
> > +    ram_grants.ram = true;
> > +    ram_grants.terminates = true;
> > +    ram_block_add_list(block);
> > +    memory_region_add_subregion(get_system_memory(), XEN_GRANT_ADDR_OFF,
> > +                                &ram_grants);
> > +
> > +    return &ram_grants;
> 
> It doesn't look like xen_init_grant_ram has anything to do with the
> mapcache. It should be in another file. Maybe ./hw/xen/xen-hvm-common.c
> or ./hw/i386/xen/xen-hvm.c (but this is x86 specific and we need grants
> on ARM too)

Now having seen all the other patches, it might be OK to keep this here.
I am OK with this patch once it is rebased on the latest staging. I
would still advise to split the physdev.c changes to a separate patch.


From xen-devel-bounces@lists.xenproject.org Tue Oct 10 00:46:09 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 10 Oct 2023 00:46:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614520.955646 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qq0sr-0001xM-4l; Tue, 10 Oct 2023 00:46:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614520.955646; Tue, 10 Oct 2023 00:46: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 1qq0sr-0001xF-1O; Tue, 10 Oct 2023 00:46:01 +0000
Received: by outflank-mailman (input) for mailman id 614520;
 Tue, 10 Oct 2023 00:45: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=Z25Z=FY=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qq0so-0001x9-Uz
 for xen-devel@lists.xenproject.org; Tue, 10 Oct 2023 00:45: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 5e9f5990-6706-11ee-9b0d-b553b5be7939;
 Tue, 10 Oct 2023 02:45:56 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by sin.source.kernel.org (Postfix) with ESMTP id 0EDD4CE1919;
 Tue, 10 Oct 2023 00:45:52 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 97521C433C8;
 Tue, 10 Oct 2023 00:45: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: 5e9f5990-6706-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696898751;
	bh=OVV1ZStN1M/FWxT8rFRWguxElvgWA0balYb+yWWAI+s=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=lVRkZ/jWo2+PYq/DmUbcTjUuRpfcIGnu4JzGftSJzyqNKyLcRPV8FzVu0EaY7g2Mn
	 RPdkI6hQxrWbZbNTv6joZeeSDZB9uNjT5u94mSHNkZ7aWhKmWhWCQOW03sDwpmDFhb
	 5OujWG4xypFwQ95uqaPfOli2jKWDv0Alai8q95JaEfo1f+fKVALDdKx4ZjdMCqXjmw
	 tqlp1YZpWwLbo4fjHZ0RkkZrFVTKmopqI0gKs4FxqWYlX43+hcJqAKB77liBBqP5Jr
	 0fRyKkM7l8B6kcX3Q6gQZ9ZXELYFG0YxqVlP7YNFpV4hw81ydz4iEcpp9VLbfhhjBC
	 I0gJkJsJGYF4Q==
Date: Mon, 9 Oct 2023 17:45:47 -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, Julien Grall <julien@xen.org>, 
    Bertrand Marquis <bertrand.marquis@arm.com>, 
    Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: Re: [XEN PATCH][for-4.19 2/9] arm/bitops: encapsulate violation of
 MISRA C:2012 Rule 10.1
In-Reply-To: <a789098c17d5a45b7388dcf1333751df1126f123.1696514677.git.nicola.vetrini@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2310091745160.3431292@ubuntu-linux-20-04-desktop>
References: <cover.1696514677.git.nicola.vetrini@bugseng.com> <a789098c17d5a45b7388dcf1333751df1126f123.1696514677.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, 6 Oct 2023, Nicola Vetrini wrote:
> The definitions of ffs{l}? violate Rule 10.1, by using the well-known
> pattern (x & -x); its usage is wrapped by the LOWEST_POW2 macro.
> 
> No functional change.

Once we settle on a name for LOWEST_POW2 I can provided by reviewed-by
for this and the other patches in this series where LOWEST_POW2 is added


> ---
>  xen/arch/arm/include/asm/bitops.h | 6 ++++--
>  1 file changed, 4 insertions(+), 2 deletions(-)
> 
> diff --git a/xen/arch/arm/include/asm/bitops.h b/xen/arch/arm/include/asm/bitops.h
> index 71ae14cab355..d119e1ccc952 100644
> --- a/xen/arch/arm/include/asm/bitops.h
> +++ b/xen/arch/arm/include/asm/bitops.h
> @@ -9,6 +9,8 @@
>  #ifndef _ARM_BITOPS_H
>  #define _ARM_BITOPS_H
>  
> +#include <xen/macros.h>
> +
>  #include <asm/asm_defns.h>
>  
>  /*
> @@ -155,8 +157,8 @@ static inline int fls(unsigned int x)
>  }
>  
>  
> -#define ffs(x) ({ unsigned int __t = (x); fls(__t & -__t); })
> -#define ffsl(x) ({ unsigned long __t = (x); flsl(__t & -__t); })
> +#define ffs(x) ({ unsigned int __t = (x); fls(LOWEST_POW2(__t)); })
> +#define ffsl(x) ({ unsigned long __t = (x); flsl(LOWEST_POW2(__t)); })
>  
>  /**
>   * find_first_set_bit - find the first set bit in @word
> -- 
> 2.34.1
> 


From xen-devel-bounces@lists.xenproject.org Tue Oct 10 00:48:38 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 10 Oct 2023 00:48:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614525.955656 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qq0vN-0002Vv-Gk; Tue, 10 Oct 2023 00:48:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614525.955656; Tue, 10 Oct 2023 00:48: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 1qq0vN-0002Vo-E4; Tue, 10 Oct 2023 00:48:37 +0000
Received: by outflank-mailman (input) for mailman id 614525;
 Tue, 10 Oct 2023 00:48: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=Z25Z=FY=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qq0vM-0002Vi-Fv
 for xen-devel@lists.xenproject.org; Tue, 10 Oct 2023 00:48:36 +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 bdb2dcca-6706-11ee-9b0d-b553b5be7939;
 Tue, 10 Oct 2023 02:48: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 1B757B8092E;
 Tue, 10 Oct 2023 00:48:34 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 1A0C1C433C8;
 Tue, 10 Oct 2023 00:48: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: bdb2dcca-6706-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696898913;
	bh=0pE8XrCr88TtH3JJfQmdAaCrLPohXKdZOIcYtpxPTAM=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=cdvVd4+RSeekyD8OEZZn/edNiiDyHFm5Aq0L5ODbM0P+PUjtd9Ku6KSEy/JruAvJ5
	 nN9cpy/SowSmwkozcz2L8rfn5nDsykKoCAMv95B9L+ZgA47CPnFHIqvkJa1mDyOHbC
	 Y45ZU3YHILmwfpwOcNxda7Tme5zjfREWu/kqRBTA5iZ2KRuG3/6w8x2zYKb843UCKw
	 Z2yottJ9cdgdbJA77f1Z2Yejvjmzr20jE+l/QZzqL69fLDgSPeR+SCWiAuQHZAMfJh
	 q2D7pOOQw8OiWaTFceZHwIlD4abKe4PCBZ/DbGUu7fcribrf1BUm9UxqqrofeBGkn1
	 asz6hjb3wEM+g==
Date: Mon, 9 Oct 2023 17:48:30 -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>
Subject: Re: [XEN PATCH 6/9] x86/io_apic: address violation of MISRA C:2012
 Rule 10.1
In-Reply-To: <7def4be3f63306569a2ac1776c2d6ed24ff24ee2.1696514677.git.nicola.vetrini@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2310091748220.3431292@ubuntu-linux-20-04-desktop>
References: <cover.1696514677.git.nicola.vetrini@bugseng.com> <7def4be3f63306569a2ac1776c2d6ed24ff24ee2.1696514677.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, 6 Oct 2023, Nicola Vetrini wrote:
> The definition of IO_APIC_BASE contains a sum of an essentially enum
> value (FIX_IO_APIC_BASE_0) that is positive with an index that, in all
> instances, is unsigned, therefore the former is cast to unsigned, so that
> the operands are of the same essential type.
> 
> No functional change.

Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>


> ---
>  xen/arch/x86/include/asm/io_apic.h | 7 ++++---
>  1 file changed, 4 insertions(+), 3 deletions(-)
> 
> diff --git a/xen/arch/x86/include/asm/io_apic.h b/xen/arch/x86/include/asm/io_apic.h
> index a7e4c9e146de..a0fc50d601fe 100644
> --- a/xen/arch/x86/include/asm/io_apic.h
> +++ b/xen/arch/x86/include/asm/io_apic.h
> @@ -14,9 +14,10 @@
>   * Copyright (C) 1997, 1998, 1999, 2000 Ingo Molnar
>   */
>  
> -#define IO_APIC_BASE(idx)                                               \
> -    ((volatile uint32_t *)(__fix_to_virt(FIX_IO_APIC_BASE_0 + (idx))    \
> -                           + (mp_ioapics[idx].mpc_apicaddr & ~PAGE_MASK)))
> +#define IO_APIC_BASE(idx)                                     \
> +    ((volatile uint32_t *)                                    \
> +     (__fix_to_virt((unsigned int)FIX_IO_APIC_BASE_0 + (idx)) \
> +      + (mp_ioapics[idx].mpc_apicaddr & ~PAGE_MASK)))
>  
>  #define IO_APIC_ID(idx) (mp_ioapics[idx].mpc_apicid)
>  
> -- 
> 2.34.1
> 


From xen-devel-bounces@lists.xenproject.org Tue Oct 10 00:55:12 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 10 Oct 2023 00:55:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614530.955666 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qq11Y-0004ON-6c; Tue, 10 Oct 2023 00:55:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614530.955666; Tue, 10 Oct 2023 00:55: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 1qq11Y-0004OG-2a; Tue, 10 Oct 2023 00:55:00 +0000
Received: by outflank-mailman (input) for mailman id 614530;
 Tue, 10 Oct 2023 00:54: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=sc7t=FY=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qq11X-0004Mw-FQ
 for xen-devel@lists.xenproject.org; Tue, 10 Oct 2023 00:54:59 +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 a07d63a6-6707-11ee-9b0d-b553b5be7939;
 Tue, 10 Oct 2023 02:54:55 +0200 (CEST)
Received: from FR3P281CA0077.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:1f::10)
 by PAVPR08MB9745.eurprd08.prod.outlook.com (2603:10a6:102:31c::21) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.36; Tue, 10 Oct
 2023 00:54:52 +0000
Received: from VI1EUR03FT054.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:d10:1f:cafe::d8) by FR3P281CA0077.outlook.office365.com
 (2603:10a6:d10:1f::10) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.20 via Frontend
 Transport; Tue, 10 Oct 2023 00:54:52 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 VI1EUR03FT054.mail.protection.outlook.com (100.127.144.193) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6886.20 via Frontend Transport; Tue, 10 Oct 2023 00:54:51 +0000
Received: ("Tessian outbound ab4fc72d2cd4:v211");
 Tue, 10 Oct 2023 00:54:50 +0000
Received: from 83aab5151d11.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 3B3407F2-E44E-4350-A196-C7934916A05F.1; 
 Tue, 10 Oct 2023 00:54:45 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 83aab5151d11.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Tue, 10 Oct 2023 00:54:45 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by GV1PR08MB8741.eurprd08.prod.outlook.com (2603:10a6:150:85::10)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.43; Tue, 10 Oct
 2023 00:54:42 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41%4]) with mapi id 15.20.6863.032; Tue, 10 Oct 2023
 00:54: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: a07d63a6-6707-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=afe1U9zKnZx4eH+OyQZF6dtUvWtuEHnnsoaliymYUzc=;
 b=4dV9/LMzvAoYs4cinc7pGVJXKeDm2ZGMw5UrrW1poQcvTwtgh5mD61qmYRE4EkAdI0lbT9Zy9vJGGtEeOiXFZecSDipwkSyL85x8xVBbokIvCg8HWLiOjJdEHKtYR1qBq3x9EZS3cRSLFUjVSB2wJPReqEqlScLYe7fQQihl7KY=
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: bd8da20320a269b8
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=VaPKffTT4k5L3XLQ4xmEqdDnfKdyxB3N7c2SvTYuRKFGPPrf4C0d0nXvHd1hrZ0Y+R6EWaWpLzNpchbaM34OPDZsrd0zknnUHeKJ51OoXOBZmyf47yeTObSSPhQ+w+SOH8a2YtO2a2ztBbGPJrtlrYB1NxcSDNgQItwgVuaH3fWxLN968KCi5mca7dULmOPdraX2BNiine37PdNYhxKv17r0kGJ9+i0D65EdxNN3xcTyN7Fd6hvmI/ywxxn09jR1ogD+WVXXWGsylchN6KGaPTtmmyQ6mY/Hw8H/kpbizz53cqZK1zKF4g4cORJBFEUc9IU0KA304/x/G5r6XTfAkw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=afe1U9zKnZx4eH+OyQZF6dtUvWtuEHnnsoaliymYUzc=;
 b=XsXjB9yTLZItUSHl/7vQjX9DJ8gVdcbbxNNYoNRjuTQ3PGW8omB0R8igTHVZweUre3Kvb1eZ/BGBELn2/c7459sir09ENkQuMJzdRyo64c1+srnpiFOceJd8ZPOe1gSlmMwbmGNXETfthXbBTbox8zil/AV7WPxwEwOiJwlGmnzNDaCKXhM2yvGRRwLIh6cpiApJlW73p7xRv6wf8SjN0Ki9LnTce19o/9TxMOs7BCts2lAtWJhZk2GXgLZa1otHyrpNbhMKpIti6fYbdlQLJuRvw5r3w+wAEVcN/4b2QFr6+AaV5dPQ98C8RtB4uGY8w59EHMJNiHNTabnQJEYD7A==
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=afe1U9zKnZx4eH+OyQZF6dtUvWtuEHnnsoaliymYUzc=;
 b=4dV9/LMzvAoYs4cinc7pGVJXKeDm2ZGMw5UrrW1poQcvTwtgh5mD61qmYRE4EkAdI0lbT9Zy9vJGGtEeOiXFZecSDipwkSyL85x8xVBbokIvCg8HWLiOjJdEHKtYR1qBq3x9EZS3cRSLFUjVSB2wJPReqEqlScLYe7fQQihl7KY=
From: Henry Wang <Henry.Wang@arm.com>
To: George Dunlap <george.dunlap@cloud.com>
CC: Xen-devel <xen-devel@lists.xenproject.org>, Olaf Hering <olaf@aepfle.de>
Subject: Re: [PATCH for-4.18 0/5] xenalyze: Miscellaneous fixes
Thread-Topic: [PATCH for-4.18 0/5] xenalyze: Miscellaneous fixes
Thread-Index: AQHZ+q9iHFNjuG2A+U6m1bEthA3FTLBCM0cA
Date: Tue, 10 Oct 2023 00:54:41 +0000
Message-ID: <C50D920D-9B93-4C11-9C66-68193B335074@arm.com>
References: <20231009125137.1329146-1-george.dunlap@cloud.com>
In-Reply-To: <20231009125137.1329146-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_|GV1PR08MB8741:EE_|VI1EUR03FT054:EE_|PAVPR08MB9745:EE_
X-MS-Office365-Filtering-Correlation-Id: cd5a55d3-c49c-425f-19da-08dbc92b82aa
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:
 uPNeN0ibNj7exrdK5qX8mASXnLDY7D3POEeuVD8ihtAb2iTk+fSZ707gacELPQ5g2oB4ghM1BULB5BRgyTXtuwbL5pnUHtz+RZl1GigP0FPjN9213A2Kn0v6KWfU5MgXnrpHGwigS213oEvOgXga+bYhBgEDaUuPNxOWF2EoFGfpEMMjW2NUxmCL6Odz0UU1fQFJ8TVX1LnGswfB2Uaamk3UetRY0YsfRKc/csA9CKYEfZn99aedqQK+pRBlksSRSQWcy4dsWSvahkvN4jnQokop8rA24o2fz8stCSZUuNMhfO5mnpF6u+w1XoovhujEbf841vF/YCa+kGbtES8AvPwaUGVxqvK5KMpIN9zOUZc4DILOse6nq4gDjXn5tm1iTDA9EmLvq8qC6Hz7XKDWPt+GDDloSmP9OAN5MvK+aFa3Au/xfQsnkRtBJm7dGdDfQae9oFttpNroQxbp8A3/FDPtgOrwf3ect2QuX1Ik3D76+rkNdsYe+3dCmGuegrC3D5TXthQIiDrsIMPs4S13sfxG4SgoLm3hAGCovTejH2GNQppNy9bKFco2mKRrnebCRKezrW08ovkssrXo4UU18E4jBUtgPPaPL8C4iksSrvwr0or7PTFyWm2Z4KdnyBMUR8glJq6GmTxpFZd9tdYlu80JRYl9bnWEUrH1hMp6wXK2zXi3dRyXW/ig46fr4WX4G1l6mHfrXAG6s7KuqFIWvQ==
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)(39860400002)(366004)(136003)(396003)(230922051799003)(64100799003)(451199024)(1800799009)(186009)(86362001)(122000001)(38070700005)(38100700002)(36756003)(33656002)(8936002)(6512007)(6486002)(2906002)(478600001)(4744005)(71200400001)(4326008)(8676002)(6506007)(41300700001)(5660300002)(53546011)(2616005)(66556008)(66476007)(316002)(6916009)(54906003)(91956017)(66446008)(76116006)(64756008)(66946007)(26005)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="us-ascii"
Content-ID: <1418FAD13449F44D9BB783641794AFF9@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV1PR08MB8741
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:
 VI1EUR03FT054.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	b5055b0b-09d5-4cfc-24d7-08dbc92b7ca1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	ghLTh8RxZ4OejPzD89OuOtRm0tVo0Wx9OPYUlSzuxeYSTAayREsc/S+2LGSTa/O6dzlX1z+gL+Zb9pfmNKvgLYmuI0n4qlsIQqaeRGnHXRDzjoRpcXGNNrAYejiPZx1mFLeGA1HjuNYFiE5sLn1dotrJTQETfmNww0cycthtF1Tf2nDVi/GAGz4nYMCZNj25egYfdE5oo8xL22oupLCz61odfcANXAZKDniIwT167Q+z4wn+PZkB/dcdkKw9CUDsLqXUwiND13bd3vSgMafUssh0ulnCVYCtMWxn3FgcMAltzSm/Rx7h4pv83mwY37gLIlUy4Tar6rsqSWtBHJH4EVFxAa0CvNXdc9FtpQ3BvmZR2aCPAB4siGzA8Vjw4ptZBfh5gP2CMUjZhVbHxdM6+Y90thDaM15ho9lVQmWOBnBD3JGD6pQy7JOUlzf/T43BS6sG7rcWtwck62Ssm6BDndrKNhsNNlDrovs0g883+ak1OTwXrO23ns5OisRDVQgUrPej8+D3nWTRD4bkZznnx0Wq1RV3EzgAmoCoslr5wQ7uANE/hNbVmPW3TVkkXpIfONu82oaXph1C1J2x4kBQpACty55ieaO3G2+dCmYv1MxtE9wu7W+3qbTM/LNjuJa9MTossfY+TxiU9jHIy7+Atl4ml6JOUr4zruKVlA9wQ0nwYXRcWrf2uOcL59x0JcQr3viZ1m0IeizYx6VHvXBQvXozKS7yNCQNW2h1eWC0cFB3s2F3bN1CbmN9RCVNdIsE
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)(39860400002)(396003)(376002)(230922051799003)(451199024)(64100799003)(186009)(82310400011)(1800799009)(46966006)(36840700001)(40470700004)(40480700001)(8936002)(316002)(40460700003)(2616005)(336012)(107886003)(54906003)(47076005)(36860700001)(26005)(70206006)(8676002)(70586007)(5660300002)(6862004)(4326008)(6506007)(41300700001)(53546011)(2906002)(6512007)(478600001)(6486002)(82740400003)(4744005)(33656002)(36756003)(356005)(81166007)(86362001);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 10 Oct 2023 00:54:51.5082
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: cd5a55d3-c49c-425f-19da-08dbc92b82aa
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:
	VI1EUR03FT054.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAVPR08MB9745

Hi George,

> On Oct 9, 2023, at 20:51, George Dunlap <george.dunlap@cloud.com> wrote:
>=20
> None of these are critical; but they're also in a fairly low
> criticality part of the code.  I'd be fine with either putting them in
> now or waiting until 4.19.

I saw most of the patches are bugfix so I am fine with including them in 4.=
18,
so if this series can get proper review before the release, please feel fre=
e to
have:

Release-acked-by: Henry Wang <Henry.Wang@arm.com>

Kind regards,
Henry

>=20
>=20



From xen-devel-bounces@lists.xenproject.org Tue Oct 10 01:02:22 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 10 Oct 2023 01:02:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614533.955675 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qq18X-0004Rx-SY; Tue, 10 Oct 2023 01:02:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614533.955675; Tue, 10 Oct 2023 01:02: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 1qq18X-0004Rq-PZ; Tue, 10 Oct 2023 01:02:13 +0000
Received: by outflank-mailman (input) for mailman id 614533;
 Tue, 10 Oct 2023 01:02: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=Z25Z=FY=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qq18W-0004Rj-7i
 for xen-devel@lists.xenproject.org; Tue, 10 Oct 2023 01:02:12 +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 a43b8336-6708-11ee-98d3-6d05b1d4d9a1;
 Tue, 10 Oct 2023 03:02:11 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by ams.source.kernel.org (Postfix) with ESMTP id 83817B818C8;
 Tue, 10 Oct 2023 01:02:10 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 470F1C433C7;
 Tue, 10 Oct 2023 01:02: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: a43b8336-6708-11ee-98d3-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696899729;
	bh=OPWkVPjvYvfNB7SF+9vkwQe3e6bfeNuc3c2yjKgJehU=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=Zz2QgsWqsobxCnYuP0GFdaUrQOKYlJpnoE1AOdvOBdeNkBZ7fjODBTXisTMG2SOq2
	 pc5KsvtnJjw/5Uex1LYpNoA5/I1D2UtMeDD7FInGTDtNBlR6XqpK1KYK9LU6daP8i7
	 yCbCtD7hLpMY0pk+Vrpzk4+ggN1rVO2XMF+LDcUARSRjo3jX8Ge/cxH0rwPZ9G6Tyq
	 oHX50p+bS7pd5q2w1vmbV2U46jjHR/KWv/feUH6FBvv1Hsj022QwnitVCBikd2GTHO
	 Jf9C4O12Xxx71nZjyaqIoeWd2JkuLntomZVi5yUEcTa2YVMvEtB6AtWElrtkiLv0ye
	 +qHYfVQV0Yu3A==
Date: Mon, 9 Oct 2023 18:02:06 -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>
Subject: Re: [XEN PATCH 9/9] xen/compat: address Rule 10.1 for macros
 CHECK_SIZE
In-Reply-To: <7edf60c0e7bd0680d8b8f8d3aec1264ee5a43878.1696514677.git.nicola.vetrini@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2310091749380.3431292@ubuntu-linux-20-04-desktop>
References: <cover.1696514677.git.nicola.vetrini@bugseng.com> <7edf60c0e7bd0680d8b8f8d3aec1264ee5a43878.1696514677.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, 6 Oct 2023, Nicola Vetrini wrote:
> The essential type of the result of an inequality operator is
> essentially boolean, therefore it shouldn't be used as an argument of
> the multiplication operator, which expects an integer.
> 
> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
> ---
>  xen/include/xen/compat.h | 10 ++++++----
>  1 file changed, 6 insertions(+), 4 deletions(-)
> 
> diff --git a/xen/include/xen/compat.h b/xen/include/xen/compat.h
> index f2ce5bb3580a..5ffee6a9fed1 100644
> --- a/xen/include/xen/compat.h
> +++ b/xen/include/xen/compat.h
> @@ -151,12 +151,14 @@ CHECK_NAME_(k, n, T)(k xen_ ## n *x, \
>      return x == c; \
>  }
>  
> +#define SIZE_NEQUAL(a, b) \
> +    (sizeof(a) != sizeof(b) ? 1 : 0)
>  #define CHECK_SIZE(name) \
> -    typedef int CHECK_NAME(name, S)[1 - (sizeof(xen_ ## name ## _t) != \
> -                                         sizeof(compat_ ## name ## _t)) * 2]
> +    typedef int CHECK_NAME(name, S)[1 - (SIZE_NEQUAL(xen_ ## name ## _t, \
> +                                                     compat_ ## name ## _t)) * 2]
>  #define CHECK_SIZE_(k, n) \
> -    typedef int CHECK_NAME_(k, n, S)[1 - (sizeof(k xen_ ## n) != \
> -                                          sizeof(k compat_ ## n)) * 2]
> +    typedef int CHECK_NAME_(k, n, S)[1 - (SIZE_NEQUAL(k xen_ ## n, \
> +                                                      k compat_ ## n)) * 2]

I think this style is easier to read but I'll let the x86 maintainers
decide

    typedef int CHECK_NAME(name, S)[(sizeof(xen_ ## name ## _t) == \
                                     sizeof(compat_ ## name ## _t)) ? 1 : -1]

Also am I reading this correctly that we are using -1 as array index? I
must have made a calculation mistake?


From xen-devel-bounces@lists.xenproject.org Tue Oct 10 01:09:22 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 10 Oct 2023 01:09:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614539.955686 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qq1FN-0005y6-KV; Tue, 10 Oct 2023 01:09:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614539.955686; Tue, 10 Oct 2023 01:09: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 1qq1FN-0005xz-HF; Tue, 10 Oct 2023 01:09:17 +0000
Received: by outflank-mailman (input) for mailman id 614539;
 Tue, 10 Oct 2023 01:09: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=Z25Z=FY=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qq1FM-0005xt-4r
 for xen-devel@lists.xenproject.org; Tue, 10 Oct 2023 01:09:16 +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 a01e658e-6709-11ee-98d3-6d05b1d4d9a1;
 Tue, 10 Oct 2023 03:09:14 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by dfw.source.kernel.org (Postfix) with ESMTP id D1CBD61478;
 Tue, 10 Oct 2023 01:09:12 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id B57E1C433C8;
 Tue, 10 Oct 2023 01:09:10 +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: a01e658e-6709-11ee-98d3-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696900152;
	bh=MafH1u1Ps6DpY5z+PhoWulFmxJ4Pn3cjwdkjt/p0SEs=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=ejR7q/vt2ig5Am/kJvxVowW0vhkK4hVVX5yzBGq/UEv9FrtdNkrrtvQdwSoWazfDy
	 fJNZ0VzRFXnMpY9dCsI1ri/YcOqS7iB+fVxJefC2sgc6/uMyFQ31faFfhlP9l7zSLb
	 YsSunt2xVVBTjD8cFn8QlOkk90fjPPEw3zuPc6n2qPUUKqoWncvnpuGxUH8uXqXGGg
	 t0UE4oAShTYXUgJYjIjTJ0IbEghLTXDmjkljIYnJkgg/wzl6BuNQ6UL85fF0WOe4Zs
	 QAC1544Y+d077jH1+oQl/wUf72RTUs/s7G5FSwuZWysok3MFbyhwChVnE5aVPTuUSi
	 5ijKFy1NGyxIg==
Date: Mon, 9 Oct 2023 18:09:08 -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>, 
    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, jbeulich@suse.com, andrew.cooper3@citrix.com, 
    roger.pau@citrix.com, Paul Durrant <paul@xen.org>, 
    George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>
Subject: Re: [XEN PATCH][for-4.19 8/9] xen/types: address Rule 10.1 for
 DECLARE_BITMAP use
In-Reply-To: <d90524b8-70ee-457e-8d6a-9e69f135b81d@xen.org>
Message-ID: <alpine.DEB.2.22.394.2310091803060.3431292@ubuntu-linux-20-04-desktop>
References: <cover.1696514677.git.nicola.vetrini@bugseng.com> <9642dcb4ab51ec9eaeedf16056fbcd946a3efbea.1696514677.git.nicola.vetrini@bugseng.com> <80101145-1958-457a-8c80-cae816ae74aa@xen.org> <4b144869407871011c538af48b311c31@bugseng.com>
 <354c6138-509e-4106-9a27-3c75c85b85e5@xen.org> <alpine.DEB.2.22.394.2310061746190.3431292@ubuntu-linux-20-04-desktop> <d90524b8-70ee-457e-8d6a-9e69f135b81d@xen.org>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: multipart/mixed; BOUNDARY="8323329-934372179-1696900100=:3431292"
Content-ID: <alpine.DEB.2.22.394.2310091808380.3431292@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-934372179-1696900100=:3431292
Content-Type: text/plain; CHARSET=UTF-8
Content-Transfer-Encoding: 8BIT
Content-ID: <alpine.DEB.2.22.394.2310091808381.3431292@ubuntu-linux-20-04-desktop>

On Mon, 9 Oct 2023, Julien Grall wrote:
> On 07/10/2023 02:04, Stefano Stabellini wrote:
> > On Fri, 6 Oct 2023, Julien Grall wrote:
> > > Hi Nicola,
> > > 
> > > On 06/10/2023 11:10, Nicola Vetrini wrote:
> > > > On 06/10/2023 11:34, Julien Grall wrote:
> > > > > Hi Nicola,
> > > > > 
> > > > > On 06/10/2023 09:26, 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
> > > > > > in macro 'BITS_TO_LONGS'.
> > > > > > 
> > > > > > A comment in BITS_TO_LONGS is added to make it clear that
> > > > > > values passed are meant to be positive.
> > > > > 
> > > > > I am confused. If the value is meant to be positive. Then...
> > > > > 
> > > > > > 
> > > > > > Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
> > > > > > ---
> > > > > >    xen/include/xen/iommu.h | 2 +-
> > > > > >    xen/include/xen/types.h | 1 +
> > > > > >    2 files changed, 2 insertions(+), 1 deletion(-)
> > > > > > 
> > > > > > diff --git a/xen/include/xen/iommu.h b/xen/include/xen/iommu.h
> > > > > > index 0e747b0bbc1c..34aa0b9b5b81 100644
> > > > > > --- a/xen/include/xen/iommu.h
> > > > > > +++ b/xen/include/xen/iommu.h
> > > > > > @@ -360,7 +360,7 @@ struct domain_iommu {
> > > > > >    #endif
> > > > > >          /* Features supported by the IOMMU */
> > > > > > -    DECLARE_BITMAP(features, IOMMU_FEAT_count);
> > > > > > +    DECLARE_BITMAP(features, (int)IOMMU_FEAT_count);
> > > > > 
> > > > > ... why do we cast to (int) rather than (unsigned int)? Also, I think
> > > > > this cast deserve a comment on top because this is not a very obvious
> > > > > one.
> > > > > 
> > > > > >          /* Does the guest share HAP mapping with the IOMMU? */
> > > > > >        bool hap_pt_share;
> > > > > > diff --git a/xen/include/xen/types.h b/xen/include/xen/types.h
> > > > > > index aea259db1ef2..936e83d333a0 100644
> > > > > > --- a/xen/include/xen/types.h
> > > > > > +++ b/xen/include/xen/types.h
> > > > > > @@ -22,6 +22,7 @@ typedef signed long ssize_t;
> > > > > >      typedef __PTRDIFF_TYPE__ ptrdiff_t;
> > > > > >    +/* Users of this macro are expected to pass a positive value */
> > > > > >    #define BITS_TO_LONGS(bits) \
> > > > > >        (((bits)+BITS_PER_LONG-1)/BITS_PER_LONG)
> > > > > >    #define DECLARE_BITMAP(name,bits) \
> > > > > 
> > > > > Cheers,
> > > > 
> > > > See [1] for the reason why I did so. I should have mentioned that in the
> > > > commit notes, sorry.
> > > > In short, making BITS_TO_LONGS essentially unsigned would cause a
> > > > cascade of
> > > > build errors and
> > > > possibly other essential type violations.
> > > Can you share some of the errors?
> > > 
> > > > If this is to be fixed that way, the effort required
> > > > is far greater. Either way, a comment on top of can be added, along the
> > > > lines of:
> > > > 
> > > > Leaving this as an enum would violate MISRA C:2012 Rule 10.1
> > > 
> > > I read this as you are simply trying to silence your tool. I think this
> > > the
> > > wrong approach as you are now making the code confusing for the reader
> > > (you
> > > pass a signed int to a function that is supposed to take a positive
> > > number).
> > > 
> > > I appreciate that this will result to more violations at the beginning.
> > > But
> > > the whole point of MISRA is to make the code better.
> > > 
> > > If this is too complex to solve now, then a possible option is to deviate
> > > for
> > > the time being.
> > 
> > I agree on everything Julien's wrote and I was about to suggest to use a
> > SAF comment to suppress the warning because it is clearer than a int
> > cast.
> > 
> > But then I realized that even if BITS_TO_LONGS was fixed, wouldn't still
> > we have a problem because IOMMU_FEAT_count is an enum?
> > 
> > Is it the case that IOMMU_FEAT_count would have to be cast regardless,
> > either to int or unsigned int or whatever to be used in DECLARE_BITMAP?
> > 
> > 
> > So we have 2 problems here: one problem is DECLARE_BITMAP taking int
> > instead of unsigned int, and another problem is IOMMU_FEAT_count being
> > an enum.
> > 
> > If I got it right, then I would go with the cast to int (like done in
> > this patch) with a decent comment on top of it.
> 
> I might be missing something here. But why should we use cast rather than /*
> SAF-X */ just above? I would have expected we wanted to highlight the
> violation rather than hiding it.

My understanding is that the cast is required when converting an enum
type to an integer type and vice versa. The idea is that we shouldn't do
implicit conversions as they are error prone, only explicit conversions
are allowed between enum and integers.

So we need either (int) or (unsigned int). The question is which one
between the two, and theoretically (unsigned int) is better but due to
the reasons above (int) is the simplest choice.

Yes, instead of the cast we can also add a SAF-x comment, which refers
to a deviation that says something along the lines "we could fix this
with a cast but we prefer a deviation because it makes the code easier
to read".

In general my personal preference would be to use a cast, because we
shouldn't implicitly convert enums to integers. However, in this
specific case where there is int vs. unsigned int discussion, I can see
that also SAF-x could be a way to go.
--8323329-934372179-1696900100=:3431292--


From xen-devel-bounces@lists.xenproject.org Tue Oct 10 01:19:51 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 10 Oct 2023 01:19:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614544.955696 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qq1PR-0008OI-Hh; Tue, 10 Oct 2023 01:19:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614544.955696; Tue, 10 Oct 2023 01: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 1qq1PR-0008OB-Ek; Tue, 10 Oct 2023 01:19:41 +0000
Received: by outflank-mailman (input) for mailman id 614544;
 Tue, 10 Oct 2023 01:19: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=Z25Z=FY=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qq1PP-0008O3-IF
 for xen-devel@lists.xenproject.org; Tue, 10 Oct 2023 01:19:39 +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 1346e2da-670b-11ee-9b0d-b553b5be7939;
 Tue, 10 Oct 2023 03:19:36 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by dfw.source.kernel.org (Postfix) with ESMTP id 8AE8161418;
 Tue, 10 Oct 2023 01:19:35 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 5701AC433C7;
 Tue, 10 Oct 2023 01:19: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: 1346e2da-670b-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696900775;
	bh=rsBzHMI0aQnNqVsXu8qBw73hQNcToEbawrrPoml7xrA=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=HOBiB0XGF+1h+KWdst6GkuGuXtNkdvV32mntA6m0jLb+QvZclROr6ouqpl89case9
	 kOAJTHGgqS09DzZhRzPjFdZYUcu1134xbUoH79gL8FYm8rRXFc8zyJTUPlE3hNDEp7
	 s/AjgPTGh7DlvMozagGDUTWT4ZLmMM8geqH8hNVddwoOKmfz7+O7K0aLfYWVhxxFaO
	 uj2GlBilAK5ulcxALNWQBSmPAEEyyH3ue6LIHS4wChesp0E3PTa9GVv+n1H0ow/K/M
	 2D6yx5qGIJxkGMCl2Ejz37y4YkLRCkqwrRIp7uSEoZ3qjOX45PIYCH/MGtRIq+UXjP
	 3Yi9Khwmg3AJA==
Date: Mon, 9 Oct 2023 18:19:31 -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@arm.com
Subject: Re: [XEN PATCH][for-4.19 v2 2/2] docs/misra: add deviations.rst to
 document additional deviations.
In-Reply-To: <ccda90b6be8f6977cff14ae65749ffc7fa429c3c.1696865051.git.nicola.vetrini@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2310091811190.3431292@ubuntu-linux-20-04-desktop>
References: <cover.1696865051.git.nicola.vetrini@bugseng.com> <ccda90b6be8f6977cff14ae65749ffc7fa429c3c.1696865051.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

+Henry

On Mon, 9 Oct 2023, Nicola Vetrini wrote:
> This file contains the deviation that are not marked by
> a deviation comment, as specified in
> docs/misra/documenting-violations.rst.
> 
> Suggested-by: Stefano Stabellini <sstabellini@kernel.org>
> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>

This is great! Thank you so much!

I have a few questions below but even as-is it is way better than
nothing. I think we should add this for 4.18


> ---
>  docs/index.rst            |   1 +
>  docs/misra/deviations.rst | 240 ++++++++++++++++++++++++++++++++++++++
>  docs/misra/rules.rst      |   2 +-
>  3 files changed, 242 insertions(+), 1 deletion(-)
>  create mode 100644 docs/misra/deviations.rst
> 
> diff --git a/docs/index.rst b/docs/index.rst
> index 2c47cfa999f2..f3f779f89ce5 100644
> --- a/docs/index.rst
> +++ b/docs/index.rst
> @@ -63,6 +63,7 @@ Xen hypervisor code.
>     :maxdepth: 2
> 
>     misra/rules
> +   misra/deviations
> 
> 
>  Miscellanea
> diff --git a/docs/misra/deviations.rst b/docs/misra/deviations.rst
> new file mode 100644
> index 000000000000..19743e34ce03
> --- /dev/null
> +++ b/docs/misra/deviations.rst
> @@ -0,0 +1,240 @@
> +.. SPDX-License-Identifier: CC-BY-4.0
> +
> +MISRA C deviations for Xen
> +==========================
> +
> +The following is the list of MISRA C:2012 deviations for the Xen codebase that
> +are not covered by a `SAF-x-safe` or `SAF-x-false-positive-<tool>` comment, as
> +specified in docs/misra/documenting-violations.rst; the lack of
> +such comments is usually due to the excessive clutter they would bring to the
> +codebase or the impossibility to express such a deviation (e.g., if it's
> +composed of several conditions).
> +
> +Deviations related to MISRA C:2012 Directives:
> +----------------------------------------------
> +
> +.. list-table::
> +   :header-rows: 1
> +
> +   * - Directive identifier
> +     - Justification
> +     - Notes
> +
> +   * - D4.3
> +     - Accepted for the ARM64 codebase
> +     - Tagged as `disapplied` for ECLAIR on any other violation report.

This mean it has been applied for ARM64 but not x86, right?


> +   * - D4.3
> +     - The inline asm in 'xen/arch/arm/arm64/lib/bitops.c' is tightly coupled
> +       with the surronding C code that acts as a wrapper, so it has been decided
> +       not to add an additional encapsulation layer.
> +     - Tagged as `deliberate` for ECLAIR.
> +
> +Deviations related to MISRA C:2012 Rules:
> +-----------------------------------------
> +
> +.. list-table::
> +   :header-rows: 1
> +
> +   * - Rule identifier
> +     - Justification
> +     - Notes
> +
> +   * - R2.1
> +     - The compiler implementation guarantees that the unreachable code is
> +       removed. Constant expressions and unreachable branches of if and switch
> +       statements are expected.
> +     - Tagged as `safe` for ECLAIR.
> +
> +   * - R2.1
> +     - Some functions are intended not to be referenced.
> +     - Tagged as `deliberate` for ECLAIR.

What does it mean "some functions" in this case? Should we list which
functions?

Other than this, I checked and everything else looks great



From xen-devel-bounces@lists.xenproject.org Tue Oct 10 01:20:10 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 10 Oct 2023 01:20:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614546.955706 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qq1Pt-0001Ee-Qf; Tue, 10 Oct 2023 01:20:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614546.955706; Tue, 10 Oct 2023 01:20: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 1qq1Pt-0001EX-MQ; Tue, 10 Oct 2023 01:20:09 +0000
Received: by outflank-mailman (input) for mailman id 614546;
 Tue, 10 Oct 2023 01:20: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=Z25Z=FY=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qq1Pt-0001B4-2x
 for xen-devel@lists.xenproject.org; Tue, 10 Oct 2023 01:20:09 +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 2637e0dc-670b-11ee-98d3-6d05b1d4d9a1;
 Tue, 10 Oct 2023 03:20:08 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by ams.source.kernel.org (Postfix) with ESMTP id 85CEDB80B55;
 Tue, 10 Oct 2023 01:20:07 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id A9EFAC433C8;
 Tue, 10 Oct 2023 01:20: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: 2637e0dc-670b-11ee-98d3-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696900806;
	bh=E1LNVoizITBUV1v6sbEcvby/Pba3S/QQztxr6p7I0xg=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=RE+/o+ZpKTuk0dSTC2kBNOs7FA9qepsxJkV2zooh7JGavys3isc76A6q2v0wnS2NC
	 tAAnrUZzzRE1CsGbr55zcMySGJIy5T99Oh3qi/UtD9XPAUtH7Ub5sbIHaWnJgD+2XN
	 XuLFFlG9BWw+Fp7c5nA6jiCMNA9ahXz8Qd6FcCnUeJd56NiJ35fQRfJFjgC3lUd6aJ
	 MuWdfe3vOQl1OIdVSxVJXCgUn+1kZ4U8SREnZVKGXKQT+WPJtLQ2SMgHlf9LYLS9Tj
	 rnGlMg109c0T1WbvOcb8R5IQ2bR6A/Q9dpCs0SLjthftfWkIt3R60pLRga6cK/PGjj
	 pL6/6ueRhiTqQ==
Date: Mon, 9 Oct 2023 18:20:03 -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, Simone Ballarin <simone.ballarin@bugseng.com>, 
    Doug Goldstein <cardoe@cardoe.com>
Subject: Re: [XEN PATCH][for-4.19 v2 1/2] automation/eclair: update deviations
 and accepted guidelines
In-Reply-To: <c67293c3351287a218d4e3df3cc3ef2cf937fc2a.1696865051.git.nicola.vetrini@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2310091811100.3431292@ubuntu-linux-20-04-desktop>
References: <cover.1696865051.git.nicola.vetrini@bugseng.com> <c67293c3351287a218d4e3df3cc3ef2cf937fc2a.1696865051.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, 9 Oct 2023, Nicola Vetrini wrote:
> From: Simone Ballarin <simone.ballarin@bugseng.com>
> 
> Remove deviations for ERROR_EXIT, ERROR_EXIT_DOM and PIN_FAIL:
> the aforementioned macros have been removed.
> Add deviation for Rule 2.1 for pure declarations.
> Remove legacy text-based deviations: these are now implemented
> with SAF comments.
> Add deviations for Rules 8.4, 10.1, 13.5, 14.2, 14.3.
> Remove deviations for guidelines not yet accepted or rejected.
> 
> Add MC3R1.R11.7, MC3R1.R11.8, MC3R1.R11.9, MC3R1.R15.3 and MC3R1.R14.2
> to the accepted guidelines selector.
> 
> Update clean guidelines selector.
> 
> Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>

Acked-by: Stefano Stabellini <sstabellini@kernel.org>



From xen-devel-bounces@lists.xenproject.org Tue Oct 10 01:21:48 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 10 Oct 2023 01:21:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614551.955716 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qq1RT-0001vB-4Q; Tue, 10 Oct 2023 01:21:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614551.955716; Tue, 10 Oct 2023 01:21: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 1qq1RT-0001v2-1O; Tue, 10 Oct 2023 01:21:47 +0000
Received: by outflank-mailman (input) for mailman id 614551;
 Tue, 10 Oct 2023 01:21: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=sc7t=FY=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qq1RR-0001us-HZ
 for xen-devel@lists.xenproject.org; Tue, 10 Oct 2023 01:21:45 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 (mail-db8eur05on20617.outbound.protection.outlook.com
 [2a01:111:f400:7e1a::617])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 5ef0acce-670b-11ee-9b0d-b553b5be7939;
 Tue, 10 Oct 2023 03:21:43 +0200 (CEST)
Received: from AS9PR06CA0777.eurprd06.prod.outlook.com (2603:10a6:20b:484::31)
 by VI1PR08MB10297.eurprd08.prod.outlook.com (2603:10a6:800:1be::22)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.42; Tue, 10 Oct
 2023 01:21:25 +0000
Received: from AM7EUR03FT040.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:20b:484:cafe::f6) by AS9PR06CA0777.outlook.office365.com
 (2603:10a6:20b:484::31) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.38 via Frontend
 Transport; Tue, 10 Oct 2023 01:21:25 +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.6886.20 via Frontend Transport; Tue, 10 Oct 2023 01:21:22 +0000
Received: ("Tessian outbound 6d14f3380669:v211");
 Tue, 10 Oct 2023 01:21:22 +0000
Received: from 801c8b4375eb.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 5C78ACFD-C56D-406B-9375-92C173F648D9.1; 
 Tue, 10 Oct 2023 01:21:15 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 801c8b4375eb.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Tue, 10 Oct 2023 01:21:15 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by DU0PR08MB9680.eurprd08.prod.outlook.com (2603:10a6:10:444::11)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.36; Tue, 10 Oct
 2023 01:21:10 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41%4]) with mapi id 15.20.6863.032; Tue, 10 Oct 2023
 01:21: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: 5ef0acce-670b-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=aB2tBVcLTvqLHp9ZcjGpsxBB8RpuQi4/xK+z8QNLDjM=;
 b=CFNAA0OG1umb3GMTU3g5SPEJgrg3JNBNjCrJlvEcfY52ZlRiwGzv7PgvJ1/rbcqNJ4uzg96dAXa/z3iLtWTdyrJt0MstqdZWEUGmn4qHzKbWMV5K06OBmhXtYvaVqYHjem6Lt8ztLIVP5luXVthfR2ml39RosGHN1rhiPV4PCrk=
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: b0b1ee636308a67a
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Fa1bJihKInQZBz14F1R+B3p9p3r7x0GblbBcvumHJc21lWempg/Fha1o2L8XNCgREaDDftWYsbjXcBU+wtFeOAJZf0ahvfKlJSH6WCFIj6PEMKmpT5tUjm+XcFBXhwOwpFDhDKkHAdIEf8nANPh37/3gdcx/HyaXX0idzZITWkltsBWEx9G83xRksJJyvWSbWuL1T8xjBj1rvyPKVuPJ7t9fCmTBI9CPqL0CJiO+6eoP7G55HJQP6s/yUJ3TiBhEn9oj/u3ZJbK9OHu1nVy99KK4GEe99sD15Z9BZS/Xydz/do/lWb35MoQM1gJRcTezDOvqdp1+eWlwc1l91BCqLg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=aB2tBVcLTvqLHp9ZcjGpsxBB8RpuQi4/xK+z8QNLDjM=;
 b=kpmm5EgM4dcN2+KDbQlSFczpGTk3TZHoj3NhvEXWarFtZ3mPQ6J7nYrtbXZZ2sS5fkOEgFgqGi0QvQVnhwY6GyBmKWY3Ycwv05T1DusAtsKXRWKv1wDbiN6opxYW0q2qfm3fBIADLIC+8HyT3mgdJiM/aksdHhj4PDuK2Op3CfpAeu8u6lJvY3kVgeL89o971lOWECIOSMNhV78287X8YJ5A5RCSKhYHjjgUeiW606xlY9BnAxOH8I8/io/QTGt3YhDl7/wCtcxJTQYxL3EAImuJb0VjNu5E734pbnE0H4DLYHtFUYEzhB9DwdvRwP63PhCKgNJ2fs8edMlMiBmKpA==
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=aB2tBVcLTvqLHp9ZcjGpsxBB8RpuQi4/xK+z8QNLDjM=;
 b=CFNAA0OG1umb3GMTU3g5SPEJgrg3JNBNjCrJlvEcfY52ZlRiwGzv7PgvJ1/rbcqNJ4uzg96dAXa/z3iLtWTdyrJt0MstqdZWEUGmn4qHzKbWMV5K06OBmhXtYvaVqYHjem6Lt8ztLIVP5luXVthfR2ml39RosGHN1rhiPV4PCrk=
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>, George Dunlap
	<george.dunlap@citrix.com>, Julien Grall <julien@xen.org>, Wei Liu
	<wl@xen.org>
Subject: Re: [XEN PATCH][for-4.19 v2 2/2] docs/misra: add deviations.rst to
 document additional deviations.
Thread-Topic: [XEN PATCH][for-4.19 v2 2/2] docs/misra: add deviations.rst to
 document additional deviations.
Thread-Index: AQHZ+segby6j0+MjZUy15UDbBfO/ubBCOhSAgAAAagA=
Date: Tue, 10 Oct 2023 01:21:10 +0000
Message-ID: <6F1DF161-AFCB-4173-8F1F-C7664C51156D@arm.com>
References: <cover.1696865051.git.nicola.vetrini@bugseng.com>
 <ccda90b6be8f6977cff14ae65749ffc7fa429c3c.1696865051.git.nicola.vetrini@bugseng.com>
 <alpine.DEB.2.22.394.2310091811190.3431292@ubuntu-linux-20-04-desktop>
In-Reply-To:
 <alpine.DEB.2.22.394.2310091811190.3431292@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_|DU0PR08MB9680:EE_|AM7EUR03FT040:EE_|VI1PR08MB10297:EE_
X-MS-Office365-Filtering-Correlation-Id: aebc89dc-a1fa-4384-2601-08dbc92f3737
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:
 FPdPhPaLIxJs7uGxXT8UlI3NPhcx/b5vqjs8YChPTcphtMdQb4rtR+WDbedX+g7KyDhC7F7jsUitFGg6rN96JPkFmxk92BCRj4zqsEnAV6+N2+Dzebq+qj7VjJ4Civ1thgW4OGjQ/RBk3/zg1/As6zDs4q+DLoUTsgmiJv6HYXzojzt3SX5Jmz+2k0+JblpUF/k78I/W3Zpev2N2qiee0wgl4eT+J+EvvUpQL/w46vgGiZwv6/LGVm3Ev721jc4fRwSELTf/QBBf7re/cQ50E1Tuw+iL1YTcOf7pqgsLCzEhMeXRabXKl4SK7efEOP/xip3/aXUyjcN8xhnMAfDEsiZh4ZZhNdvxEhbEv7HlW7TQCuywexLKil7blSYcqogy0ClVZZ+BRuhgvOoh8yo2Qriqj6C+0CW8MgOPE2YDyvRJe6ltdKGWrNbVR71aDXmv9QNQS391bQJhIUsifc9KxLZXUbKWWlFJN4iEwquecM0pllhNYcBY5YxKCR1wZAHVzAJ65w2WLr1shKXpqHy1XcIsBowkMdm3Rm1pvdBBet4lrwqaiW4CDOI16fujKdeYzAFn08ncdb5L1ru+u+7ggsB3KKxTz5zjNN5hI+8fLcM1k2/6wFlQWE+hhs9R8uwktcpXyDrcsHKpP1z137UTNw==
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)(136003)(376002)(230922051799003)(451199024)(64100799003)(1800799009)(186009)(122000001)(86362001)(38070700005)(38100700002)(33656002)(36756003)(2906002)(6486002)(6512007)(478600001)(41300700001)(8676002)(4326008)(5660300002)(71200400001)(53546011)(6506007)(8936002)(2616005)(83380400001)(64756008)(316002)(66476007)(66556008)(6916009)(66946007)(7416002)(66446008)(91956017)(54906003)(76116006)(26005)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="us-ascii"
Content-ID: <BBE4575BAE8C5542923D9F33F2A307C8@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR08MB9680
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:
	749871c5-b20c-420b-32ec-08dbc92f2fd1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	nRHRwfbnWfS29Y/ZoKbiuTOuUvX6lypNm+W7lcO3gLPcsvR1+l+dN2zC7vo54pK8LJtbKIlrion6PrFM5h2ikPGFXSULZYhO7/VgVRgsvueIkk33MsuXACz/Ls4uzt0uImE5OIJTbkQ0KJjcxO6uwz4GUSwb6mI9/PN1VcH+S5ZxVkc+dIFyo+wm6GAZYIAE1hLxLqdo5R5McBEfSfpdPuXgGVYAhjsILh+jxIm2KmnbSBVRTazicK+LfIWjmSQCsvxiYTGqf2uk8MtGC05pTyhUu/tx1c7nnz1OfsML8n6H+kJ5VA8OeOnWQl+QdXIGCO/HgAinqzabikT8kLKyJng/NcE4F/AaYTWUbg4aKueeXkzvYhlUOhN08a1UrB2qU+08rf6Gny9m0bKlz+nb2saSbSu0lskW8ymPOBIK9YxgPmhAMlJVQ3XyJgOaRmCJVZ0NSgINs12bbJ06RLfpzNmzG4NGd5+6N7tcyNdLJ5f09O6T3wNrkpap+sikoadg2V5cEi+ZzIjxzgZIJlq2Ge3fe3VIjTLthC78OfPkY7jhygATpvXv454ZiBJBBMmlTF4jEkQxQ+B2tGL4Nw0rUYFpwQNCFhTT8WyICP2WFN4kU7fVbUb8v1+335C/HoNUspZSSKqQjyPMWQhpbK4/B1TmB1sB+MvRxojNaJh1d9qP+xQMoSbiL1DBkCns8vh+eON+dKFj0A6chUaEKAJwYEZZbORm+iby3PLnfr0629VI5rCUOWJNDoyfQ8YAwxRm
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)(39860400002)(136003)(346002)(230922051799003)(1800799009)(64100799003)(186009)(82310400011)(451199024)(36840700001)(46966006)(40470700004)(53546011)(6512007)(40460700003)(40480700001)(33656002)(36756003)(86362001)(356005)(81166007)(82740400003)(36860700001)(336012)(83380400001)(6486002)(2906002)(2616005)(6506007)(478600001)(8936002)(8676002)(41300700001)(47076005)(6862004)(4326008)(26005)(70586007)(316002)(54906003)(5660300002)(70206006);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 10 Oct 2023 01:21:22.9439
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: aebc89dc-a1fa-4384-2601-08dbc92f3737
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: VI1PR08MB10297

Hi Stefano,

> On Oct 10, 2023, at 09:19, Stefano Stabellini <sstabellini@kernel.org> wr=
ote:
>=20
> +Henry

Thank you.

>=20
> On Mon, 9 Oct 2023, Nicola Vetrini wrote:
>> This file contains the deviation that are not marked by
>> a deviation comment, as specified in
>> docs/misra/documenting-violations.rst.
>>=20
>> Suggested-by: Stefano Stabellini <sstabellini@kernel.org>
>> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
>=20
> This is great! Thank you so much!
>=20
> I have a few questions below but even as-is it is way better than
> nothing. I think we should add this for 4.18

I am fine with that as this patch is purely doc changes.

Release-acked-by: Henry Wang <Henry.Wang@arm.com>

Kind regards,
Henry

>=20
>=20
>> ---
>> docs/index.rst            |   1 +
>> docs/misra/deviations.rst | 240 ++++++++++++++++++++++++++++++++++++++
>> docs/misra/rules.rst      |   2 +-
>> 3 files changed, 242 insertions(+), 1 deletion(-)
>> create mode 100644 docs/misra/deviations.rst
>>=20
>> diff --git a/docs/index.rst b/docs/index.rst
>> index 2c47cfa999f2..f3f779f89ce5 100644
>> --- a/docs/index.rst
>> +++ b/docs/index.rst
>> @@ -63,6 +63,7 @@ Xen hypervisor code.
>>    :maxdepth: 2
>>=20
>>    misra/rules
>> +   misra/deviations
>>=20
>>=20
>> Miscellanea
>> diff --git a/docs/misra/deviations.rst b/docs/misra/deviations.rst
>> new file mode 100644
>> index 000000000000..19743e34ce03
>> --- /dev/null
>> +++ b/docs/misra/deviations.rst
>> @@ -0,0 +1,240 @@
>> +.. SPDX-License-Identifier: CC-BY-4.0
>> +
>> +MISRA C deviations for Xen
>> +=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D
>> +
>> +The following is the list of MISRA C:2012 deviations for the Xen codeba=
se that
>> +are not covered by a `SAF-x-safe` or `SAF-x-false-positive-<tool>` comm=
ent, as
>> +specified in docs/misra/documenting-violations.rst; the lack of
>> +such comments is usually due to the excessive clutter they would bring =
to the
>> +codebase or the impossibility to express such a deviation (e.g., if it'=
s
>> +composed of several conditions).
>> +
>> +Deviations related to MISRA C:2012 Directives:
>> +----------------------------------------------
>> +
>> +.. list-table::
>> +   :header-rows: 1
>> +
>> +   * - Directive identifier
>> +     - Justification
>> +     - Notes
>> +
>> +   * - D4.3
>> +     - Accepted for the ARM64 codebase
>> +     - Tagged as `disapplied` for ECLAIR on any other violation report.
>=20
> This mean it has been applied for ARM64 but not x86, right?
>=20
>=20
>> +   * - D4.3
>> +     - The inline asm in 'xen/arch/arm/arm64/lib/bitops.c' is tightly c=
oupled
>> +       with the surronding C code that acts as a wrapper, so it has bee=
n decided
>> +       not to add an additional encapsulation layer.
>> +     - Tagged as `deliberate` for ECLAIR.
>> +
>> +Deviations related to MISRA C:2012 Rules:
>> +-----------------------------------------
>> +
>> +.. list-table::
>> +   :header-rows: 1
>> +
>> +   * - Rule identifier
>> +     - Justification
>> +     - Notes
>> +
>> +   * - R2.1
>> +     - The compiler implementation guarantees that the unreachable code=
 is
>> +       removed. Constant expressions and unreachable branches of if and=
 switch
>> +       statements are expected.
>> +     - Tagged as `safe` for ECLAIR.
>> +
>> +   * - R2.1
>> +     - Some functions are intended not to be referenced.
>> +     - Tagged as `deliberate` for ECLAIR.
>=20
> What does it mean "some functions" in this case? Should we list which
> functions?
>=20
> Other than this, I checked and everything else looks great
>=20



From xen-devel-bounces@lists.xenproject.org Tue Oct 10 01:25:23 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 10 Oct 2023 01:25:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614558.955726 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qq1Us-0003Oz-Mi; Tue, 10 Oct 2023 01:25:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614558.955726; Tue, 10 Oct 2023 01:25: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 1qq1Us-0003Os-K4; Tue, 10 Oct 2023 01:25:18 +0000
Received: by outflank-mailman (input) for mailman id 614558;
 Tue, 10 Oct 2023 01:25: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=Z25Z=FY=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qq1Ur-0003Om-1M
 for xen-devel@lists.xenproject.org; Tue, 10 Oct 2023 01:25: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 dc170f0f-670b-11ee-9b0d-b553b5be7939;
 Tue, 10 Oct 2023 03:25:14 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by sin.source.kernel.org (Postfix) with ESMTP id 97D99CE0E34;
 Tue, 10 Oct 2023 01:25:08 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id E70B6C433C8;
 Tue, 10 Oct 2023 01:25: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: dc170f0f-670b-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696901107;
	bh=3PbKuti3xO0kk3Lurn+1O4agBscXpO0s4wGVvCmyOHs=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=utFgQ1to9xnWk0a0RGlotT65X7PxZUjJw0Wop+xKayuxMYkFJO9PZE8+hcoXY3u5O
	 fwolKtA3+V/Ey2rshSXBIMPqrF+zoWLS8HZ9DQ956YmQU8I5kD8HdYSnUGBwgOPyXi
	 +ddK8HnxH9PZ5oNxDshf9UFMw1Md0Mo08N6rTu5exyTN60REDkS+ZQBUcH+LYBAQ9U
	 Lp+/bk8CmW76D/kXKHWaTj4u4Bz/GHQC0XmqQjheD/UvhQCIZBpTvbjorGs8Yi6COw
	 Kgl6ndR/6cOJkMEGTvWFEvqHB7fmxePKOrUXqXaJLBM19zxx6iDyzBiRS1sfVhWxNN
	 xtxuCJrElLnkA==
Date: Mon, 9 Oct 2023 18:25:05 -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, 
    George Dunlap <george.dunlap@citrix.com>, 
    Dario Faggioli <dfaggioli@suse.com>, 
    Stefano Stabellini <sstabellini@kernel.org>, 
    Henry Wang <henry.wang@arm.com>
Subject: Re: [XEN PATCH v2] xen/sched: address violations of MISRA C:2012
 Rule 8.2
In-Reply-To: <033b6f5f10e17409650dc438b22a0f0e0d5918a7.1696598833.git.federico.serafini@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2310091824560.3431292@ubuntu-linux-20-04-desktop>
References: <033b6f5f10e17409650dc438b22a0f0e0d5918a7.1696598833.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 Mon, 9 Oct 2023, Federico Serafini wrote:
> Add missing parameter names. 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 Tue Oct 10 01:26:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 10 Oct 2023 01:26:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614562.955736 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qq1WL-0004Kd-03; Tue, 10 Oct 2023 01:26:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614562.955736; Tue, 10 Oct 2023 01: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 1qq1WK-0004KW-Tb; Tue, 10 Oct 2023 01:26:48 +0000
Received: by outflank-mailman (input) for mailman id 614562;
 Tue, 10 Oct 2023 01:26: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=sc7t=FY=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qq1WJ-0004KM-FS
 for xen-devel@lists.xenproject.org; Tue, 10 Oct 2023 01:26:47 +0000
Received: from EUR03-AM7-obe.outbound.protection.outlook.com
 (mail-am7eur03on20619.outbound.protection.outlook.com
 [2a01:111:f400:7eaf::619])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 130ab060-670c-11ee-9b0d-b553b5be7939;
 Tue, 10 Oct 2023 03:26:45 +0200 (CEST)
Received: from AS9PR05CA0350.eurprd05.prod.outlook.com (2603:10a6:20b:490::11)
 by DB8PR08MB5484.eurprd08.prod.outlook.com (2603:10a6:10:111::15)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.36; Tue, 10 Oct
 2023 01:26:38 +0000
Received: from AM7EUR03FT038.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:20b:490:cafe::c9) by AS9PR05CA0350.outlook.office365.com
 (2603:10a6:20b:490::11) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.36 via Frontend
 Transport; Tue, 10 Oct 2023 01:26:37 +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.6886.20 via Frontend Transport; Tue, 10 Oct 2023 01:26:37 +0000
Received: ("Tessian outbound fdf44c93bd44:v211");
 Tue, 10 Oct 2023 01:26:37 +0000
Received: from d788eba0ee68.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 41A5AAAA-BA36-41E0-A84B-C00C96A8C31A.1; 
 Tue, 10 Oct 2023 01:26:30 +0000
Received: from EUR01-VE1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id d788eba0ee68.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Tue, 10 Oct 2023 01:26:30 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by DB9PR08MB7472.eurprd08.prod.outlook.com (2603:10a6:10:36c::20)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.41; Tue, 10 Oct
 2023 01:26:28 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41%4]) with mapi id 15.20.6863.032; Tue, 10 Oct 2023
 01:26: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: 130ab060-670c-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=lSPlqCBqTaW8fVEkJno/VrU3cvXmTxKgBpYutAIh33g=;
 b=NHaEp/sgVtTUzFEJw9U7HexFGKkZjq0e2BPG2v4sFkgpZaH9BFS1voS7MrVqDb9PSn1VcUOYnRW8TDF718Y1QB9tm3pi16HP5ZqcFGgEFzOx7Hqa9MtRQuGokttuN7z9qWDj7MP4oyV0svuFcsy++qye+G3tb7FmdBhvfpy7L78=
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: 843a4a58c41db37f
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=gN7wFe3F177wQ2PAk39jqgEe12Pmor2Ecrd7EZ10UaI9K3zwAV/1nrL89+5t9BqxxYrZtIqDzfg0XcrcImdp4a77rLXOqkw6IKA2AV3V6vkofrLAJ3DNqWcG5P6VHbaI2G51njQwlnPhiqP7E52lr0CP1BXIBIFnpWI+XNzRCQdwxKdJ9AKW8TaMDAF2+TSerEO0AtIkTkaM21jwh6CZMytvAey8ov8vEJfMSFtUjIJtwNGj8ngHdlimTbg11AHz5Rm9t6ZrVDQc0QI+Ao88TA+E2RNyC4S7Rm518ktmYUQ0tcuRCL2uMiwAfZuunrPb3rbePVInqKSYZSFSg69Evg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=lSPlqCBqTaW8fVEkJno/VrU3cvXmTxKgBpYutAIh33g=;
 b=RWovEtme64ixAPXYvgYRglshPo7PusFea89NY/TjAXNmxocWyA4w/m1wua6ALFIZL36Hiui4A+TnmCT8m0AlOAMH+lQTTOufbkVQ/yrMj8MOf9pzAB4o7kCaGF5HmrnhK5iX5km7rgmVHrmdzZENnbvE5tlAslM5KkCFEUQgv4FTgSfYL5k4Gcijers7H/pfAXBvfLRmFzsbanQvM2H7DlDrYVq30ae3lmxPv1ga5H2ZjsCNZ47galB4CYJxQYzcrUA8rSlIa4wtGi5n2eI+RUFjm5Ii4f194xZq2HS5luzrFMZyWqD1iDbWtEoi8620FVGZpIDByteJebuhza+AQw==
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=lSPlqCBqTaW8fVEkJno/VrU3cvXmTxKgBpYutAIh33g=;
 b=NHaEp/sgVtTUzFEJw9U7HexFGKkZjq0e2BPG2v4sFkgpZaH9BFS1voS7MrVqDb9PSn1VcUOYnRW8TDF718Y1QB9tm3pi16HP5ZqcFGgEFzOx7Hqa9MtRQuGokttuN7z9qWDj7MP4oyV0svuFcsy++qye+G3tb7FmdBhvfpy7L78=
From: Henry Wang <Henry.Wang@arm.com>
To: Stefano Stabellini <sstabellini@kernel.org>
CC: Federico Serafini <federico.serafini@bugseng.com>, Xen-devel
	<xen-devel@lists.xenproject.org>, "consulting@bugseng.com"
	<consulting@bugseng.com>, George Dunlap <george.dunlap@citrix.com>, Dario
 Faggioli <dfaggioli@suse.com>
Subject: Re: [XEN PATCH v2] xen/sched: address violations of MISRA C:2012 Rule
 8.2
Thread-Topic: [XEN PATCH v2] xen/sched: address violations of MISRA C:2012
 Rule 8.2
Thread-Index: AQHZ+rwuWdNAgpKVZEuK1EbrmSJrKLBCO7mAgAAAVwA=
Date: Tue, 10 Oct 2023 01:26:28 +0000
Message-ID: <70AD5949-7F80-4671-9998-6239588EA61E@arm.com>
References:
 <033b6f5f10e17409650dc438b22a0f0e0d5918a7.1696598833.git.federico.serafini@bugseng.com>
 <alpine.DEB.2.22.394.2310091824560.3431292@ubuntu-linux-20-04-desktop>
In-Reply-To:
 <alpine.DEB.2.22.394.2310091824560.3431292@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_|DB9PR08MB7472:EE_|AM7EUR03FT038:EE_|DB8PR08MB5484:EE_
X-MS-Office365-Filtering-Correlation-Id: a223446d-7cab-4d19-d226-08dbc92ff2d2
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:
 dyhCYwTDEMnc2w/6cLf6hJdU58+vIb9Zr9mD9PFbr6ybaV86i8W6aUiblOwqGYh3HUkgRetwGTYzhtBYGNN4TvLmGuZ6yYYoIpVNbkJBHNiVVOawcG7LAEPCOMwjtp/R5n6CwvsfjiQKSqQLvvSgpsxASjqYEG2m5W3ZzqnJ5mHeSdoC12OVcF5ITLXE+tMJ3PMrruNIzFt5TUtrjezaW5lCkHpiJF43AJ1WzA/1q24IELKxKKZ1dqQT1PIh7JZseN4dCSNSAndbxBRDywhgvqGL05kab5oK9D820/SnkcUZrlmIWNEdN0yiyYf+6R0CYoUpvXSqjvyhVzq7Go+WoIV26M32ibxZEdMNpiZve2D6TENyoEONvjYW9LZecxdOv9ETRxU0XwrL+ZBENq4F9gsTqbbiHhnZNr2vduumpt4Nu/uoFCU5/BJ0y1NjMrDZqKEQ5r1PmEkmdxcMXE7PiLaDwe4XDqjpxQzVtmwJnqEFDORaRaeYNm1FxkcZaPe0LJR+ZKK96hfbJDzKFNArPdA/ht2KGd5ZjdAGk39iTC2rcepKXW+QSWgZRxFTl4fdwDCOVQBLbi2jtOGe6Y37XgHI0gnPTRX57NbRCcrXvb5olXNKfh43sgLpaAFHBOeB5R/AwhUbeXf02NP35AHhnw==
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)(39860400002)(136003)(346002)(396003)(230922051799003)(64100799003)(451199024)(1800799009)(186009)(71200400001)(53546011)(6506007)(478600001)(6486002)(41300700001)(6512007)(26005)(33656002)(86362001)(38070700005)(558084003)(38100700002)(2906002)(122000001)(316002)(2616005)(36756003)(66476007)(5660300002)(54906003)(76116006)(66446008)(66556008)(64756008)(4326008)(6916009)(66946007)(91956017)(8936002)(8676002)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="us-ascii"
Content-ID: <22089195D4C404489BDDF0BB0FB54769@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR08MB7472
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:
	81f11791-0455-4a7f-4ccd-08dbc92fed42
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	RKC8YXo7vPO4YpakaIMyND9sddd0dYPZWxItgY2XkSCH98MQRmWBsC7x3KWv5vP2sfesKeIK47zlQowMjJaMFkRz+t4/ZI/c5TiAULozm6GfiMRNyALOQjmZ4ZieoU3+jZWgaJfYRSnWNw+ANx4KFpL8Jix3vmT6SezudJqq9dFy7NIWyHMbUaPo4jSFYEepjxsNIY0YUKN/ppwXQL+0zOH9sy3vrgZoyw4MCvv/YccsYwpcu+C+ICLtuhIopiK56NZVaSQTJAcwipvP+2osyDNPIKcwNxDIS/Qg+xc4bLGRRCNb6mqomex8iYepjRoeJ562C4/QQh4+IHtnKRriASK/pMW0P3ZA31IROb9kvNElATP8why9SycbJnrbSL8DkSwcFwOzQWMi/7qK7a2hU0uCEDsnhPMMEPHrQSFBZ9H4kJc6BbdDzXlXIRerCT/WqI41yXkzAAedRu7EOK6QpGu6B4aU7abGkctARhC9Pu15fasDjYZxl9bPrf3j2777468COHFdQO3D/LuJw8KjcFMy3NuO1GkdVVHKpSoF4GR9TTrBURBgmrxHoNtLe8dTtAHaoBOwu6/PyHKYpgqK/2ghSkWVnR8312rn9mWZ41yis075q7CJp7A391+9kRvaMWPigbvxHFV5VXdFkqfKhcQYcfysK1jVtoHOahrv8VEZFdKdze+mKZjFOIp2XWG+kMAUTbV2nJfOi995z+Eu6ckJ/EtleRCBp2FJkqHOurJTDCTHnd78lrcLy/01erSA
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)(230922051799003)(82310400011)(64100799003)(186009)(1800799009)(451199024)(36840700001)(46966006)(40470700004)(26005)(2616005)(336012)(53546011)(36860700001)(8676002)(47076005)(6512007)(6862004)(4744005)(107886003)(2906002)(478600001)(6506007)(4326008)(54906003)(70206006)(70586007)(6486002)(8936002)(5660300002)(316002)(41300700001)(40460700003)(81166007)(356005)(86362001)(36756003)(40480700001)(82740400003)(33656002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 10 Oct 2023 01:26:37.7136
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: a223446d-7cab-4d19-d226-08dbc92ff2d2
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: DB8PR08MB5484

Hi,

> On Oct 10, 2023, at 09:25, Stefano Stabellini <sstabellini@kernel.org> wr=
ote:
>=20
> On Mon, 9 Oct 2023, Federico Serafini wrote:
>> Add missing parameter names. 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

>=20



From xen-devel-bounces@lists.xenproject.org Tue Oct 10 01:32:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 10 Oct 2023 01:32:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614567.955745 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qq1c4-0005oh-Io; Tue, 10 Oct 2023 01:32:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614567.955745; Tue, 10 Oct 2023 01: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 1qq1c4-0005oa-GC; Tue, 10 Oct 2023 01:32:44 +0000
Received: by outflank-mailman (input) for mailman id 614567;
 Tue, 10 Oct 2023 01:32: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=Z25Z=FY=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qq1c3-0005oU-D8
 for xen-devel@lists.xenproject.org; Tue, 10 Oct 2023 01:32:43 +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 e77c2c59-670c-11ee-98d3-6d05b1d4d9a1;
 Tue, 10 Oct 2023 03:32: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 57A15B816F6;
 Tue, 10 Oct 2023 01:32:41 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id C39E3C433C7;
 Tue, 10 Oct 2023 01:32: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: e77c2c59-670c-11ee-98d3-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696901560;
	bh=Jz+lPCUPdhQTuswpr5X8gVomj5A9J2OcreA5H99E1L4=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=lthD4nCfU4eL7hkKtLffu+lCnjMOmSAo23iMp5Ytzr5Kacwo/0/dZ3+JcXRwy3qhD
	 AMZLZ6OgHL9nmcAL6nIpNMwdV5LTcY6BFNXhNZqwQvxM2Iwo9ObkHo6bHMeHz/TorJ
	 2UHe0a95NdDOvvciA5M+8698hPWPyd73L67tBbLfRj3g2K0WrWkmNha/D77UFVdUdp
	 1sHausF1NFRcUtjO1Xoad6dqal64ERcvSRY7xjGxNOA+hMd10fkjjHkAXmB8IY6+JQ
	 TV0UMTGYpA8rTAjycJKyVC/vQPOcN3JNPhaY7QGVtCT1DSJQaXsMJaCEV605bCDPdH
	 heE5oW7xzKHuw==
Date: Mon, 9 Oct 2023 18:32:37 -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, 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>
Subject: Re: [XEN PATCH v2 1/7] xen: add declarations for variables where
 needed
In-Reply-To: <002d58b1d15619a8c4b2ec6c2b5f20960ed0a428.1696833629.git.nicola.vetrini@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2310091832300.3431292@ubuntu-linux-20-04-desktop>
References: <cover.1696833629.git.nicola.vetrini@bugseng.com> <002d58b1d15619a8c4b2ec6c2b5f20960ed0a428.1696833629.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, 9 Oct 2023, Nicola Vetrini wrote:
> Some variables with external linkage used in C code do not have
> a visible declaration where they are defined. Providing such
> declaration also resolves violations of MISRA C:2012 Rule 8.4.
> 
> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>

Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>


From xen-devel-bounces@lists.xenproject.org Tue Oct 10 01:57:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 10 Oct 2023 01:57:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614572.955755 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qq1zW-0004Cm-Er; Tue, 10 Oct 2023 01:56:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614572.955755; Tue, 10 Oct 2023 01:56: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 1qq1zW-0004Cf-CA; Tue, 10 Oct 2023 01:56:58 +0000
Received: by outflank-mailman (input) for mailman id 614572;
 Tue, 10 Oct 2023 01:56: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=Z25Z=FY=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qq1zU-0004BM-HD
 for xen-devel@lists.xenproject.org; Tue, 10 Oct 2023 01:56:56 +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 4914f946-6710-11ee-98d3-6d05b1d4d9a1;
 Tue, 10 Oct 2023 03:56:54 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by dfw.source.kernel.org (Postfix) with ESMTP id 6ADD761477;
 Tue, 10 Oct 2023 01:56:53 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 8F748C433C7;
 Tue, 10 Oct 2023 01:56: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: 4914f946-6710-11ee-98d3-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696903013;
	bh=8Ulxio6D+JHDAmi5hAaNX7bz28rzG/V8egW2RBoMVIQ=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=XIH3DFppAU9NNyYXUG1f1aYZvq9USH4sy4zJ7sBGMcxIrwVi23/uvzOm2KQb9qN0l
	 BFnQKmXHyjaxir+MmSxMxao0HJS7QEKCbHXlX6nBII8DtP9eRknZbrk051XMulmSeK
	 JsLV8g6AC33Hh0jlm1TvisMBrvR1d+S2Ef9G8s2J7lLVaM5myN1ohQu02A5j/P4lGq
	 omBVR+AlPMzgt59UAFXBoyywkJsjkvGdDz1bMP99DFT9EbWDE0+D7CkUCKKyTZd68z
	 r0FbTMQ8Tn6tB8+wC8cpxHMf7HnPvQzGyC5JXWTVVTz1SuUHs1x6OkbYQY3A+tPiDJ
	 fVjf//EdrgQnw==
Date: Mon, 9 Oct 2023 18:56:49 -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 <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>, Bertrand Marquis <bertrand.marquis@arm.com>, 
    consulting@bugseng.com, roger.pau@citrix.com, dfaggioli@suse.com
Subject: Re: Rule 10.1 violations in perfc_incra and PERFCOUNTER_ARRAY
In-Reply-To: <5cfaaaceb163af3244981b020ed55f3f@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2310091838510.3431292@ubuntu-linux-20-04-desktop>
References: <5cfaaaceb163af3244981b020ed55f3f@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, 6 Oct 2023, Nicola Vetrini wrote:
> Given the following macros in <xen/perfc.h> and
> 
> #define perfc_incra(x,y)                                                \
>     ( (y) <= PERFC_LAST_ ## x - PERFC_ ## x ?                           \
> 	 ++this_cpu(perfcounters)[PERFC_ ## x + (y)] : 0 )
> 
> and the following violation
> 
> xen/arch/arm/traps.c:1407.5-1407.32:
>   reference to enum constant `PERFC_hypercalls' has essential type `enum
> perfcounter'
>   and standard type `int'
>  <preprocessed xen/arch/arm/traps.c>:11606.29-11606.44: preprocessed tokens
>  <scratch space>:137.1-137.16: expanded from macro `PERFC_'
>  xen/include/xen/perfc.h:69.35-69.45: expanded from macro `perfc_incra'
> xen/arch/arm/traps.c:1407.5-1407.32:
>   `+' addition operator expects a number or a character
>  <preprocessed xen/arch/arm/traps.c>:11606.46: preprocessed tokens
>  xen/include/xen/perfc.h:69.47: expanded from macro `perfc_incra'
> 
> the difference between enumerated values is forbidden by the Rule. In the
> coding standard's
> interpretation, named enums are unordered list of symbols, which can only be
> compared for
> equality.
> There are a few possible paths forward:
> 
> 1. use means different from named enums to generate these constants (such as
> #define-s or
>    constants integers);

This is a viable option


> 2. explicitly deviate subtraction of enums, therefore defining an explicit
> ordering on
>    enumerated values;

I would prefer to avoid a project-wide deviation, because I think in
general it is a good rule to have. If we go with a deviation, I think it
would be better to deviate PERFCOUNTER or perfc.h specifically. This is
a file that changes very rarely. We could make the case that this is
safe with GCC (most probably is) and this case was reviewed carefully
and doesn't change often (3 changes in the last 10 yeas).


> 3. use an unnamed enum, effectively considering the enumerated values as plain
> integers.
>    This does not violate the Rule.

What do you mean by unname enum?


From xen-devel-bounces@lists.xenproject.org Tue Oct 10 07:29:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 10 Oct 2023 07:29:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614578.955766 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qq7BS-0001SS-UF; Tue, 10 Oct 2023 07:29:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614578.955766; Tue, 10 Oct 2023 07: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 1qq7BS-0001SL-RK; Tue, 10 Oct 2023 07:29:38 +0000
Received: by outflank-mailman (input) for mailman id 614578;
 Tue, 10 Oct 2023 07:29: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=wBiT=FY=arm.com=Luca.Fancellu@srs-se1.protection.inumbo.net>)
 id 1qq7BR-0001SF-4p
 for xen-devel@lists.xenproject.org; Tue, 10 Oct 2023 07:29:37 +0000
Received: from EUR02-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur02on2060f.outbound.protection.outlook.com
 [2a01:111:f400:fe16::60f])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id c26b6499-673e-11ee-98d3-6d05b1d4d9a1;
 Tue, 10 Oct 2023 09:29:34 +0200 (CEST)
Received: from DU2PR04CA0336.eurprd04.prod.outlook.com (2603:10a6:10:2b4::15)
 by DB9PR08MB7820.eurprd08.prod.outlook.com (2603:10a6:10:39c::18)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.38; Tue, 10 Oct
 2023 07:29:21 +0000
Received: from DBAEUR03FT010.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:2b4:cafe::90) by DU2PR04CA0336.outlook.office365.com
 (2603:10a6:10:2b4::15) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.38 via Frontend
 Transport; Tue, 10 Oct 2023 07:29:21 +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.6886.23 via Frontend Transport; Tue, 10 Oct 2023 07:29:20 +0000
Received: ("Tessian outbound fdf44c93bd44:v211");
 Tue, 10 Oct 2023 07:29:20 +0000
Received: from a71be2fdc350.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 4BE6E833-63B0-4192-BC6D-6609BD46FB5C.1; 
 Tue, 10 Oct 2023 07:29:10 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id a71be2fdc350.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Tue, 10 Oct 2023 07:29:09 +0000
Received: from AM6PR08MB3749.eurprd08.prod.outlook.com (2603:10a6:20b:8f::22)
 by AS8PR08MB7370.eurprd08.prod.outlook.com (2603:10a6:20b:446::21)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.37; Tue, 10 Oct
 2023 07:29:01 +0000
Received: from AM6PR08MB3749.eurprd08.prod.outlook.com
 ([fe80::501a:489c:410b:338]) by AM6PR08MB3749.eurprd08.prod.outlook.com
 ([fe80::501a:489c:410b:338%6]) with mapi id 15.20.6863.032; Tue, 10 Oct 2023
 07:29: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: c26b6499-673e-11ee-98d3-6d05b1d4d9a1
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=84emrquxgtm2KwJ6ssXPajqSXWUJXQ3I7jVMGIR44zI=;
 b=Yk4uwDsf1f8rasnTLhYtnAiDN7F6OKeGGi/NCGWIZ1WBLb77xc+rEMcs/GDLzs7fQSDoUDvRCU9fFOHK67/D3Uaasq7tHBzHIF5Yu+2XguxxFIpqwMgV5ne9fwnJf1Kaxi31KqzXKxnFtxvoG3bDfhnZBq3gpOEjhR3vIIzQrqA=
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: 069a9f37057d44da
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=kFHk00e4iHorZlhaIbzdNSoePXZhnYr2VDwehVJlWaA1wZMZPg1dkgJJF3dLFLFI2sxOAjIVwmMwdkTyW+2AUTYJ6nIysD8B/MI1ay+TGctGZ1A8E7ot+tGnNyVY12Auevm8OneRoPH4GZwSHmRviDOMjMvVaFggkPumGcyle1p/fjIzYM50W1yoxc0SaQfbWlTbpr2ARmfBRmcPePmbdkPlE26WzNjmQGHLzZzJRoULTjOtunbOP+Pz5GXHxYrdj6xjilxkhsZlZgSIrIeCN1RTnMuSXNzpdBxVH1rYixqSq56yVzqeJdsKRmf5y1xqhLydyjfMdhqUzugQV/8pVw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=84emrquxgtm2KwJ6ssXPajqSXWUJXQ3I7jVMGIR44zI=;
 b=nBQ0iQpVIUGrGker9vXtEoSbihGlbiSZaPf4+2w8rrC7nQHQskNLq4cMjBzMkqGbnFMK76lJ27w2IuvqqzFzzAeEx11p8JmxzR+ScBi7kYfyDUF0ThyWvQROdOFwKCUzri9UuNyFaV9V3zSzwAxlr8+JMRL9yq33NtlfiuDFGsuk25g+zx9o6r4U/6LoX7/jgd2nhgWYOHop6iCuGIX6Kh3ooHGnDbYYOBJbGLM2U5uReJuj6suDJVrFGIdOfCxK79rZMfcVdveG79s1VWumTbkli7dM99uJD/4ureeP/HKsVsDj4TLTGZPIHYvu2H4/UdGnc9YXStd28K9oGGGI5g==
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=84emrquxgtm2KwJ6ssXPajqSXWUJXQ3I7jVMGIR44zI=;
 b=Yk4uwDsf1f8rasnTLhYtnAiDN7F6OKeGGi/NCGWIZ1WBLb77xc+rEMcs/GDLzs7fQSDoUDvRCU9fFOHK67/D3Uaasq7tHBzHIF5Yu+2XguxxFIpqwMgV5ne9fwnJf1Kaxi31KqzXKxnFtxvoG3bDfhnZBq3gpOEjhR3vIIzQrqA=
From: Luca Fancellu <Luca.Fancellu@arm.com>
To: Stefano Stabellini <sstabellini@kernel.org>
CC: Julien Grall <julien@xen.org>, Nicola Vetrini
	<nicola.vetrini@bugseng.com>, Xen-devel <xen-devel@lists.xenproject.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>, Jan Beulich
	<jbeulich@suse.com>, =?utf-8?B?Um9nZXIgUGF1IE1vbm7DqQ==?=
	<roger.pau@citrix.com>, Henry Wang <Henry.Wang@arm.com>, Simone Ballarin
	<simone.ballarin@bugseng.com>, Doug Goldstein <cardoe@cardoe.com>, George
 Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>, Andrew Cooper
	<andrew.cooper3@citrix.com>
Subject: Re: [XEN PATCH] xen: Add SAF deviations for MISRA C:2012 Rule 7.1
Thread-Topic: [XEN PATCH] xen: Add SAF deviations for MISRA C:2012 Rule 7.1
Thread-Index:
 AQHZ9qj87vFsnMRst0ybMa+ffKOLU7A5Z4mAgAAGhgCAAAYzgIAA1KIAgACGqQCAASTEgIAAdASAgAEY6ICAA60ogIAA4ZaAgACZhgA=
Date: Tue, 10 Oct 2023 07:29:00 +0000
Message-ID: <2AC05F6B-477A-45C3-A865-E0917692EE12@arm.com>
References:
 <338d8e574db943a86c7605e4c6d9a299d45f067d.1696347345.git.nicola.vetrini@bugseng.com>
 <alpine.DEB.2.22.394.2310031345190.2348112@ubuntu-linux-20-04-desktop>
 <e1736215-52ba-4737-9da3-8f1ba7e832a6@citrix.com>
 <DB96C095-5FAF-40A1-9CA8-002291AA1933@arm.com>
 <2894008e8f612296da84267346ae4240@bugseng.com>
 <B00BC78B-E707-4043-A0B4-D320C6717472@arm.com>
 <alpine.DEB.2.22.394.2310041625170.2348112@ubuntu-linux-20-04-desktop>
 <9DD525D9-DB6D-4888-9266-FB45906A0E0F@arm.com>
 <alpine.DEB.2.22.394.2310051756360.2348112@ubuntu-linux-20-04-desktop>
 <C2DDFAB5-D943-4A24-9C14-AF35BE2A7C90@arm.com>
 <alpine.DEB.2.22.394.2310061741130.3431292@ubuntu-linux-20-04-desktop>
 <1ceb5aa0-d374-4357-964f-1341468d542e@xen.org>
 <alpine.DEB.2.22.394.2310091251080.3431292@ubuntu-linux-20-04-desktop>
In-Reply-To:
 <alpine.DEB.2.22.394.2310091251080.3431292@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_|AS8PR08MB7370:EE_|DBAEUR03FT010:EE_|DB9PR08MB7820:EE_
X-MS-Office365-Filtering-Correlation-Id: 77b143df-6876-4614-2727-08dbc9629eb6
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:
 aNKuu0gXxOSDEz1u3+ZZeKcVUMKl+KxoEo7QIALuMsCwrYlZx7ksPj/OSKg6Rudie+DI6VPSkdfbttdulGtFUkZjbDT0xsidHdda92oDpR/WQKkWkWmdHkmQbkkZJDUVlyW2NnNp+WP0cfZlikeYB8DnSVpbqUCrl2pTqJ25jTCO5w+hhs1m4mjLwDBU5AsuGOoKasa0RP45tW7kn7Gsr7DrPPsbC7brKyIWH/8nOxdVayv5yAK8QYnp1L4U+43iTclDuQqMKOznKgiqWKP7HWjne0HIvFcVxOldfBjdURLjf8NMSAVsdR3T9STyzxd+VJfLqkRMs2r2Kx8+VQOCHlexyouqFq045KjPncniSi/ZgpG3NcrSKIw4b1ke4bwG1Uq02IrtCzj0iuW5i4dT1rEVUJdIhXubw/Mr12M5MaHQWZ2jfYItMsH2MbmlViwLAtvNnnxKovHis2d3Q3dl3dJT1PTIZHhL/UjoUc0F3EjGudp5Kh5XjXOjbH80udw7Qn7NApx79vHyVAB2nFfjZcQSzgZCu4vHPGhTVqZ2Tvzb7lugCDO/pUdIXaeYaTb/6R7X2OzNvRN2aDIpfPCD1t/7VpUoqwslfYOXDI58ZKjvEAbGjCQkqOuvsJTYRQOlKCQGYgDla/cn0fO1qncVeg==
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)(366004)(396003)(376002)(39860400002)(136003)(230922051799003)(451199024)(186009)(64100799003)(1800799009)(6506007)(6512007)(2616005)(86362001)(33656002)(36756003)(38070700005)(122000001)(38100700002)(83380400001)(6486002)(7416002)(2906002)(71200400001)(478600001)(41300700001)(4326008)(8676002)(8936002)(26005)(5660300002)(64756008)(76116006)(316002)(66556008)(66476007)(6916009)(91956017)(54906003)(66446008)(66946007)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <80E614921261334186BD461393F918B1@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB7370
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:
	35df6cca-e811-4fd0-e3f8-08dbc96292ce
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	iwn5D2xJV8pbirhk2aRLOrlo837pN79T4xa4N37IeTSs0+9cBcXHYzbuCPjkO2IzzOY/1o3tfa/HFHD0fJ9ENRSW4SO6M2GvN/+iHMe2/Pt4KwOpuJFZlUTPNk8wBAyVEw2LtPa44OQ03YUEUdgtjPcgMxF2wCVO0Wyb0vEytbx+si/cdt1E+XMlF6HzU8+PyYba8trljWOuxIvXYVTNKEB8FrJJNv9pTv2FEqu1ZXgOsjIToKIvJeBPlSR/4kemvb64pEypEw/QNbZ7QBpkNVCCmi8NoVJEkNRfD4PHeBUjJ+cViJetdlHjjKK0EOTsxZm6W9WSezKMJngdJ3YmCi3664MJQvC/kNULRSK1dqedQLpSWfTEy/VrYknWZvsW8ZndncYsI0Oh7GhN45IporGiRfQsjoDIDxv5CVUh4Qmn5bUyP25ZMjs/8J7SrKCZEMir5PsG9deoono1v4Gn7xWSmnn4h4FUVVFa7vpN4cn2glEZ5b/05Di1fAcCHDDesHmZxPiHuvA5VpFVX+0wHyOt//3aVbI8noFjJrcCYa7fhRIyZSh1ii0bkFRFT1WHdsosiq/Pr0jL5ba4m1UPa33qgheXPs6lMH8YYTcxzhEpb3TcjiBZfzIqcChy9ks7nZxLIfDALYVU82/3S+JN6wIvvtk8Fb3N+5FPXoL2m2JkD/4IJgjrhnp1TwrW7KcHFb8EzshLxwZ9j7RVaQmODjKkhYGz0IRtMvDgFPxJVyOQnCY9NvjBGxQmM7jVg/FN
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)(136003)(376002)(230922051799003)(1800799009)(186009)(64100799003)(451199024)(82310400011)(36840700001)(46966006)(40470700004)(107886003)(6512007)(40460700003)(33656002)(36756003)(86362001)(40480700001)(356005)(82740400003)(36860700001)(81166007)(26005)(47076005)(336012)(83380400001)(2906002)(6486002)(2616005)(6506007)(478600001)(8936002)(8676002)(6862004)(4326008)(316002)(41300700001)(5660300002)(70586007)(70206006)(54906003);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 10 Oct 2023 07:29:20.9460
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 77b143df-6876-4614-2727-08dbc9629eb6
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: DB9PR08MB7820

PiANCj4+PiAvKiBTQUYteC1zYWZlICovDQo+Pj4gaWYgKCBtb2RybV9tb2QgPT0gTUFTS19FWFRS
KGluc3RyX21vZHJtLCAwMzAwKSAmJiAobW9kcm1fcmVnICYgNykgPT0NCj4+PiBNQVNLX0VYVFIo
aW5zdHJfbW9kcm0sIDAwNzApICYmIChtb2RybV9ybSAmIDcpICA9PSBNQVNLX0VYVFIoaW5zdHJf
bW9kcm0sDQo+Pj4gMDAwNykgKQ0KPj4+IA0KPj4+IEFueSBvdGhlciBpZGVhcz8NCj4+IA0KPj4g
Q291bGQgd2UgaGF2ZSBhIG51bWJlciBpbiB0aGUgY29tbWVudCB0byBpbmRpY2F0ZSB0aGUgbnVt
YmVyIG9mIGxpbmVzIHRoZQ0KPj4gY29tbWVudCBhcHBsaWVzIHRvPw0KPiANCj4gTHVjYSBjYW4g
Y29uZmlybSB0aGF0IHdoYXQgSSBhbSBhYm91dCB0byB3cml0ZSBpcyBjb3JyZWN0OyBteQ0KPiB1
bmRlcnN0YW5kaW5nIGlzIHRoYXQgRUNMQUlSIHN1cHBvcnRzIGl0LCBidXQgY3BwY2hlY2sgZG9l
cyBub3QuIFdoaWNoDQo+IG1lYW5zIGZvciBjcHBjaGVjayB3ZSB3b3VsZCBoYXZlIHRvIHRyYW5z
bGF0ZSB0aGUgU0FGIHRhZyB3aXRoDQo+IHhlbl9hbmFseWl6ZSB0bzoNCj4gDQo+IC8qIGNwcGNo
ZWNrIHRhZyAqLw0KPiBsaW5lMQ0KPiAvKiBjcHBjaGVjayB0YWcgKi8NCj4gbGluZTINCj4gLyog
Y3BwY2hlY2sgdGFnICovDQo+IGxpbmUzDQo+IA0KPiBhbmQgdGhhdCB3b3VsZCBlbmQgdXAgY2hh
bmdpbmcgdGhlIGxpbmUgbnVtYmVycyBpbiB0aGUgc291cmNlIGZpbGVzIHNvDQo+IHRoZSBjcHBj
aGVjayByZXBvcnQgd291bGRuJ3QgbWF0Y2ggd2l0aCB0aGUgb3JpZ2luYWwgbGluZSBudW1iZXJz
IGFueQ0KPiBsb25nZXINCg0KWWVzLCBidXQgaXTigJlzIG5vdCBvbmx5IENwcGNoZWNrLCBpdOKA
mXMgYWxzbyBDb3Zlcml0eSB0aGF0IHN1cHBvcnRzIG9ubHkgdGhlIGFib3ZlIG5vdGF0aW9uLg0K
DQpGb3IgQ3BwY2hlY2sgd2UgY291bGQgZG8gc29tZXRoaW5nLCBidXQgZm9yIENvdmVyaXR5IHdl
IGNhbuKAmXQuDQoNCkFueXdheSwgU3RlZmFubyBvciBOaWNvbGEsIEkgd291bGQgbGlrZSB0byB1
bmRlcnN0YW5kIHdoZXJlIEVjbGFpciByZXBvcnRzIHRoZSB2aW9sYXRpb24NCmluIHRoZSBjYXNl
IG9mICNkZWZpbmUsIGRvZXMgaXQgcmVwb3J0IGF0IHRoZSB1c2FnZSBvciBhdCB0aGUgZGVmaW5p
dGlvbj8NCg0KQ2hlZXJzLA0KTHVjYQ0KDQoNCg==


From xen-devel-bounces@lists.xenproject.org Tue Oct 10 07:58:32 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 10 Oct 2023 07:58:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614584.955775 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qq7dJ-0005Pi-2V; Tue, 10 Oct 2023 07:58:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614584.955775; Tue, 10 Oct 2023 07:58: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 1qq7dI-0005Pb-W2; Tue, 10 Oct 2023 07:58:24 +0000
Received: by outflank-mailman (input) for mailman id 614584;
 Tue, 10 Oct 2023 07:58: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=SSWa=FY=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qq7dI-0005PV-Iz
 for xen-devel@lists.xenproject.org; Tue, 10 Oct 2023 07:58:24 +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 c87c9c01-6742-11ee-9b0d-b553b5be7939;
 Tue, 10 Oct 2023 09:58:22 +0200 (CEST)
Received: by mail-lf1-x134.google.com with SMTP id
 2adb3069b0e04-503056c8195so6946717e87.1
 for <xen-devel@lists.xenproject.org>; Tue, 10 Oct 2023 00:58:22 -0700 (PDT)
Received: from [192.168.201.133] ([94.75.70.14])
 by smtp.gmail.com with ESMTPSA id
 m1-20020a195201000000b005047bf13b6fsm1698236lfb.134.2023.10.10.00.58.20
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Tue, 10 Oct 2023 00:58: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: c87c9c01-6742-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1696924702; x=1697529502; 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=IaHW21ryWxl8j9O4P2OixRwJOf8Bj0ldVSLRlSfoDjA=;
        b=HXelOGoxMUIfnirn4fdoFp303FoqiTA1FEkZr7N2IGrqv0vVdnLdPOnLNyXF+MAkfI
         Fh+XjRmxJb7qiOMS3BykH4GbyUoUpUmuqH3UTQ9od90H5SNFnxGcOFA2hNiWEZPzcj7N
         SnXdiakvpEtBX+KYWb2I3o3F0Rkr81oXA5jVCFWfhwRJN8n1UzQ6D52sNOQnBCuAldqE
         h8AlIjIXswN2Fz/Ji1/xvIGMFMWE+d2faoZzZ4zGgWV8mrFuL6I9/i6X2YkVFdBNPmE4
         VN2JA9uS3LixK81T/BJnJ3MyPvRZLi+szZShivqTp/Vl53FJQlkw2kkWce8KCyc4jGFe
         B2WA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1696924702; x=1697529502;
        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=IaHW21ryWxl8j9O4P2OixRwJOf8Bj0ldVSLRlSfoDjA=;
        b=PW+MZCaxKZISW3mJOgusYsMa4C3wO1aLI0WqE7lT5y5JiAOJlqnPvsaul8wRmrdZVF
         yxLw96ZsAWxK+n56bMUf7MjR6uehvu2fI8lpppXwo2b3Axl16zfQjzbX3MchF21xe6uh
         DvAF4mu76zgp0rFi7ESAqI3BfOYF0ldchwBNOe/TR++P4G36gkWBJXIima0y4u7KjGSo
         2jnC2bJJ+n14rPuw8uhqfC44gJy6e0wXwJEd+Vt4kVPqrMMTmJTH7PLrVKnp2e+h+JpD
         7/hgv703Mk82FY4tvhtuSNgyxTu3Uo3Zo9baAsp6aBjB7kbICK7IPBl8GHb9/BLLaiXr
         IIRw==
X-Gm-Message-State: AOJu0YzapUSlnYbU9PNFtvY+l6PO4rkv7EdLhp5071m+CsMzmM7xha3G
	/KOl9LvoFhETeVSgsB4xC6k=
X-Google-Smtp-Source: AGHT+IGW/AHHBkB2kNlRoRNBLFifyke3RxX17haB8cFpF1J6tfYHymnYc+LWgrAqA6yWxKx1ECgqtQ==
X-Received: by 2002:a05:6512:3495:b0:503:3398:9d3b with SMTP id v21-20020a056512349500b0050333989d3bmr12684529lfr.10.1696924701688;
        Tue, 10 Oct 2023 00:58:21 -0700 (PDT)
Message-ID: <45df1c3a44fcd4ebf87a30ada34141d6ebd9ccab.camel@gmail.com>
Subject: Re: [PATCH for-4.18 v5] xen/pdx: Make CONFIG_PDX_COMPRESSION a
 common Kconfig option
From: Oleksii <oleksii.kurochko@gmail.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>, Xen-devel
	 <xen-devel@lists.xenproject.org>
Cc: Alejandro Vallejo <alejandro.vallejo@cloud.com>, Julien Grall
 <jgrall@amazon.com>, Roger Pau =?ISO-8859-1?Q?Monn=E9?=
 <roger.pau@citrix.com>,  Shawn Anastasio
 <sanastasio@raptorengineering.com>, Henry Wang <Henry.Wang@arm.com>, George
 Dunlap <George.Dunlap@eu.citrix.com>, Jan Beulich <JBeulich@suse.com>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>, Julien
 Grall <julien@xen.org>
Date: Tue, 10 Oct 2023 10:58:19 +0300
In-Reply-To: <20231006144405.1078260-1-andrew.cooper3@citrix.com>
References: <20231006144405.1078260-1-andrew.cooper3@citrix.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

>=20
> Oleksii: I've not touched RISCV yet, because I don't know how the
> platforms
> typically look.=C2=A0 I'm happy to default it active in RISCV too if
> that's the
> right thing to do.
We are still waiting for a platform with hypervisor extension support
but I am using PDX in my Xen's repo.

~ Oleksii


From xen-devel-bounces@lists.xenproject.org Tue Oct 10 08:02:18 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 10 Oct 2023 08:02:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614593.955786 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qq7h2-0007Pb-08; Tue, 10 Oct 2023 08:02:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614593.955786; Tue, 10 Oct 2023 08: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 1qq7h1-0007PU-Tq; Tue, 10 Oct 2023 08:02:15 +0000
Received: by outflank-mailman (input) for mailman id 614593;
 Tue, 10 Oct 2023 08: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=c+X1=FY=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qq7h0-0007PO-5Y
 for xen-devel@lists.xenproject.org; Tue, 10 Oct 2023 08:02:14 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 5129ebc8-6743-11ee-9b0d-b553b5be7939;
 Tue, 10 Oct 2023 10:02:12 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id 512AD4EE0742;
 Tue, 10 Oct 2023 10:02: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: 5129ebc8-6743-11ee-9b0d-b553b5be7939
MIME-Version: 1.0
Date: Tue, 10 Oct 2023 10:02:11 +0200
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: Stefano Stabellini <sstabellini@kernel.org>
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>, Wei Liu
 <wl@xen.org>, Bertrand Marquis <bertrand.marquis@arm.com>,
 consulting@bugseng.com, roger.pau@citrix.com, dfaggioli@suse.com
Subject: Re: Rule 10.1 violations in perfc_incra and PERFCOUNTER_ARRAY
In-Reply-To: <alpine.DEB.2.22.394.2310091838510.3431292@ubuntu-linux-20-04-desktop>
References: <5cfaaaceb163af3244981b020ed55f3f@bugseng.com>
 <alpine.DEB.2.22.394.2310091838510.3431292@ubuntu-linux-20-04-desktop>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <771624f5199fe76ce266a00d0c649428@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 10/10/2023 03:56, Stefano Stabellini wrote:
> On Fri, 6 Oct 2023, Nicola Vetrini wrote:
>> Given the following macros in <xen/perfc.h> and
>> 
>> #define perfc_incra(x,y)                                               
>>  \
>>     ( (y) <= PERFC_LAST_ ## x - PERFC_ ## x ?                          
>>  \
>> 	 ++this_cpu(perfcounters)[PERFC_ ## x + (y)] : 0 )
>> 
>> and the following violation
>> 
>> xen/arch/arm/traps.c:1407.5-1407.32:
>>   reference to enum constant `PERFC_hypercalls' has essential type 
>> `enum
>> perfcounter'
>>   and standard type `int'
>>  <preprocessed xen/arch/arm/traps.c>:11606.29-11606.44: preprocessed 
>> tokens
>>  <scratch space>:137.1-137.16: expanded from macro `PERFC_'
>>  xen/include/xen/perfc.h:69.35-69.45: expanded from macro 
>> `perfc_incra'
>> xen/arch/arm/traps.c:1407.5-1407.32:
>>   `+' addition operator expects a number or a character
>>  <preprocessed xen/arch/arm/traps.c>:11606.46: preprocessed tokens
>>  xen/include/xen/perfc.h:69.47: expanded from macro `perfc_incra'
>> 
>> the difference between enumerated values is forbidden by the Rule. In 
>> the
>> coding standard's
>> interpretation, named enums are unordered list of symbols, which can 
>> only be
>> compared for
>> equality.
>> There are a few possible paths forward:
>> 
>> 1. use means different from named enums to generate these constants 
>> (such as
>> #define-s or
>>    constants integers);
> 
> This is a viable option
> 
> 
>> 2. explicitly deviate subtraction of enums, therefore defining an 
>> explicit
>> ordering on
>>    enumerated values;
> 
> I would prefer to avoid a project-wide deviation, because I think in
> general it is a good rule to have. If we go with a deviation, I think 
> it
> would be better to deviate PERFCOUNTER or perfc.h specifically. This is
> a file that changes very rarely. We could make the case that this is
> safe with GCC (most probably is) and this case was reviewed carefully
> and doesn't change often (3 changes in the last 10 yeas).
> 
> 
>> 3. use an unnamed enum, effectively considering the enumerated values 
>> as plain
>> integers.
>>    This does not violate the Rule.
> 
> What do you mean by unname enum?

e.g.

enum {
#include <xen/perfc_defn.h>
	NUM_PERFCOUNTERS
};

instead of

enum perfcounter {
#include <xen/perfc_defn.h>
	NUM_PERFCOUNTERS
};

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


From xen-devel-bounces@lists.xenproject.org Tue Oct 10 08:23:44 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 10 Oct 2023 08:23:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614613.955796 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qq81J-0001wV-NE; Tue, 10 Oct 2023 08:23:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614613.955796; Tue, 10 Oct 2023 08:23: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 1qq81J-0001wO-KX; Tue, 10 Oct 2023 08:23:13 +0000
Received: by outflank-mailman (input) for mailman id 614613;
 Tue, 10 Oct 2023 08:23: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=c+X1=FY=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qq81I-0001wI-3M
 for xen-devel@lists.xenproject.org; Tue, 10 Oct 2023 08:23:12 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 3f015aa5-6746-11ee-9b0d-b553b5be7939;
 Tue, 10 Oct 2023 10:23:09 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id 637FA4EE0742;
 Tue, 10 Oct 2023 10:23: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: 3f015aa5-6746-11ee-9b0d-b553b5be7939
MIME-Version: 1.0
Date: Tue, 10 Oct 2023 10:23:09 +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@arm.com
Subject: Re: [XEN PATCH][for-4.19 v2 2/2] docs/misra: add deviations.rst to
 document additional deviations.
In-Reply-To: <alpine.DEB.2.22.394.2310091811190.3431292@ubuntu-linux-20-04-desktop>
References: <cover.1696865051.git.nicola.vetrini@bugseng.com>
 <ccda90b6be8f6977cff14ae65749ffc7fa429c3c.1696865051.git.nicola.vetrini@bugseng.com>
 <alpine.DEB.2.22.394.2310091811190.3431292@ubuntu-linux-20-04-desktop>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <a5635fc5e51518c205d776ac8a9600ba@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 10/10/2023 03:19, Stefano Stabellini wrote:
> +Henry
> 
> On Mon, 9 Oct 2023, Nicola Vetrini wrote:
>> This file contains the deviation that are not marked by
>> a deviation comment, as specified in
>> docs/misra/documenting-violations.rst.
>> 
>> Suggested-by: Stefano Stabellini <sstabellini@kernel.org>
>> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
> 
> This is great! Thank you so much!
> 
> I have a few questions below but even as-is it is way better than
> nothing. I think we should add this for 4.18
> 
> 
>> ---
>>  docs/index.rst            |   1 +
>>  docs/misra/deviations.rst | 240 
>> ++++++++++++++++++++++++++++++++++++++
>>  docs/misra/rules.rst      |   2 +-
>>  3 files changed, 242 insertions(+), 1 deletion(-)
>>  create mode 100644 docs/misra/deviations.rst
>> 
>> diff --git a/docs/index.rst b/docs/index.rst
>> index 2c47cfa999f2..f3f779f89ce5 100644
>> --- a/docs/index.rst
>> +++ b/docs/index.rst
>> @@ -63,6 +63,7 @@ Xen hypervisor code.
>>     :maxdepth: 2
>> 
>>     misra/rules
>> +   misra/deviations
>> 
>> 
>>  Miscellanea
>> diff --git a/docs/misra/deviations.rst b/docs/misra/deviations.rst
>> new file mode 100644
>> index 000000000000..19743e34ce03
>> --- /dev/null
>> +++ b/docs/misra/deviations.rst
>> @@ -0,0 +1,240 @@
>> +.. SPDX-License-Identifier: CC-BY-4.0
>> +
>> +MISRA C deviations for Xen
>> +==========================
>> +
>> +The following is the list of MISRA C:2012 deviations for the Xen 
>> codebase that
>> +are not covered by a `SAF-x-safe` or `SAF-x-false-positive-<tool>` 
>> comment, as
>> +specified in docs/misra/documenting-violations.rst; the lack of
>> +such comments is usually due to the excessive clutter they would 
>> bring to the
>> +codebase or the impossibility to express such a deviation (e.g., if 
>> it's
>> +composed of several conditions).
>> +
>> +Deviations related to MISRA C:2012 Directives:
>> +----------------------------------------------
>> +
>> +.. list-table::
>> +   :header-rows: 1
>> +
>> +   * - Directive identifier
>> +     - Justification
>> +     - Notes
>> +
>> +   * - D4.3
>> +     - Accepted for the ARM64 codebase
>> +     - Tagged as `disapplied` for ECLAIR on any other violation 
>> report.
> 
> This mean it has been applied for ARM64 but not x86, right?
> 
> 

Yes.

>> +   * - D4.3
>> +     - The inline asm in 'xen/arch/arm/arm64/lib/bitops.c' is tightly 
>> coupled
>> +       with the surronding C code that acts as a wrapper, so it has 
>> been decided
>> +       not to add an additional encapsulation layer.
>> +     - Tagged as `deliberate` for ECLAIR.
>> +
>> +Deviations related to MISRA C:2012 Rules:
>> +-----------------------------------------
>> +
>> +.. list-table::
>> +   :header-rows: 1
>> +
>> +   * - Rule identifier
>> +     - Justification
>> +     - Notes
>> +
>> +   * - R2.1
>> +     - The compiler implementation guarantees that the unreachable 
>> code is
>> +       removed. Constant expressions and unreachable branches of if 
>> and switch
>> +       statements are expected.
>> +     - Tagged as `safe` for ECLAIR.
>> +
>> +   * - R2.1
>> +     - Some functions are intended not to be referenced.
>> +     - Tagged as `deliberate` for ECLAIR.
> 
> What does it mean "some functions" in this case? Should we list which
> functions?
> 

Well, there are a lot, typically resulting from build configurations 
that do not
use them, or because they are used only in asm code. I can mention these 
reasons in the
document, to make it easier to understand.

> Other than this, I checked and everything else looks great

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


From xen-devel-bounces@lists.xenproject.org Tue Oct 10 08:52:37 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 10 Oct 2023 08:52:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614619.955806 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qq8TW-0005x4-0H; Tue, 10 Oct 2023 08:52:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614619.955806; Tue, 10 Oct 2023 08: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 1qq8TV-0005wx-TU; Tue, 10 Oct 2023 08:52:21 +0000
Received: by outflank-mailman (input) for mailman id 614619;
 Tue, 10 Oct 2023 08:52: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=LWWS=FY=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qq8TU-0005wq-L8
 for xen-devel@lists.xenproject.org; Tue, 10 Oct 2023 08:52:20 +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 517ac6f1-674a-11ee-98d3-6d05b1d4d9a1;
 Tue, 10 Oct 2023 10:52:18 +0200 (CEST)
Received: by mail-lj1-x22e.google.com with SMTP id
 38308e7fff4ca-2b95d5ee18dso65517001fa.1
 for <xen-devel@lists.xenproject.org>; Tue, 10 Oct 2023 01:52:18 -0700 (PDT)
Received: from [10.157.20.173] ([103.14.252.248])
 by smtp.gmail.com with ESMTPSA id
 p18-20020aa78612000000b00689f5940061sm7921331pfn.17.2023.10.10.01.52.13
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 10 Oct 2023 01:52: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: 517ac6f1-674a-11ee-98d3-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1696927938; x=1697532738; darn=lists.xenproject.org;
        h=content-transfer-encoding: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=33bS7CtpHtdOLEWNpYQ4AXVUkg9DRGvgTpTm8UbxtuY=;
        b=XNcvHi5vXr3t2uUGATB8hs/ASld0UZJEMrTzXXwIV5BqjW7ShdUFBGvpZZwsHESSFM
         CF5FNM8lYYWYZYxxZ3hrEBk68EHNuss/OdrVFp8WtNscjg56ahW6WPhx9zXSLhv7507O
         KN2jNymrrNxJu7AnDmENj5aDfoPKzrY3m3GT4=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1696927938; x=1697532738;
        h=content-transfer-encoding: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=33bS7CtpHtdOLEWNpYQ4AXVUkg9DRGvgTpTm8UbxtuY=;
        b=IPd5tvBrPHqJ01nWvxM2SHx+XpzYYPikveijhw0WmqhgTjZxwyYhAaDQ8/c5/9CL5R
         NTTvifTQQSFymaI0cbgLNLVWpsK4Xu8NOws3+KOXRTz+0o2KBY+NPa+WbbGsIwkCUKI8
         /Hq3waZYvfJWpWta4hES/7EFHTFkVB6xmJ+c9o05Po/IOv91y/G72jXjzutgXCKyV1Y4
         0AKjuMjXAYR3TQMMXyLMVcLvYQ8CfsN5yZbeOl84+eFM8jtWmHyjxC5xmO7dD/PQf+IT
         k8F65HSGUK4ytsJRlA/dO2YXOOHlCFoXfrBzmzdgHdGjInVOybfkI2PiAN9hbKRO1B6R
         Il1w==
X-Gm-Message-State: AOJu0YxCRskMFZ7DqRA+nnQ4wZbH/pwewfT+6PYM/9MReaPXihAKczZU
	naZkan7g2yIMUif7+QWzr9uR8g==
X-Google-Smtp-Source: AGHT+IGCYliroO9lsAtmg/sSNYkpSJUtH/HrxrV4LXy1SGJMYNVgSuJwj6C3PecXrhcezbCLaAAkUg==
X-Received: by 2002:a2e:9650:0:b0:2c2:96af:820b with SMTP id z16-20020a2e9650000000b002c296af820bmr15687576ljh.30.1696927938291;
        Tue, 10 Oct 2023 01:52:18 -0700 (PDT)
Message-ID: <a2ed825d-2bdf-46a5-a1d4-b43a84ad43a5@citrix.com>
Date: Tue, 10 Oct 2023 16:52:11 +0800
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH for-4.18 v5] xen/pdx: Make CONFIG_PDX_COMPRESSION a common
 Kconfig option
Content-Language: en-GB
To: Oleksii <oleksii.kurochko@gmail.com>,
 Xen-devel <xen-devel@lists.xenproject.org>
Cc: Alejandro Vallejo <alejandro.vallejo@cloud.com>,
 Julien Grall <jgrall@amazon.com>, =?UTF-8?Q?Roger_Pau_Monn=C3=A9?=
 <roger.pau@citrix.com>, Shawn Anastasio <sanastasio@raptorengineering.com>,
 Henry Wang <Henry.Wang@arm.com>, George Dunlap
 <George.Dunlap@eu.citrix.com>, Jan Beulich <JBeulich@suse.com>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 Julien Grall <julien@xen.org>
References: <20231006144405.1078260-1-andrew.cooper3@citrix.com>
 <45df1c3a44fcd4ebf87a30ada34141d6ebd9ccab.camel@gmail.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: <45df1c3a44fcd4ebf87a30ada34141d6ebd9ccab.camel@gmail.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 10/10/2023 3:58 pm, Oleksii wrote:
>> Oleksii: I've not touched RISCV yet, because I don't know how the
>> platforms
>> typically look.  I'm happy to default it active in RISCV too if
>> that's the
>> right thing to do.
> We are still waiting for a platform with hypervisor extension support
> but I am using PDX in my Xen's repo.

Yes, but are you using that because Xen wouldn't build without it, or
because it's necessary for RISC-V platforms?

This patch fixes the problem where PDX had the illusion of being
necessary, but was actually mandatory.

~Andrew


From xen-devel-bounces@lists.xenproject.org Tue Oct 10 09:04:35 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 10 Oct 2023 09:04:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614623.955816 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qq8fF-0007uJ-2M; Tue, 10 Oct 2023 09:04:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614623.955816; Tue, 10 Oct 2023 09: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 1qq8fE-0007uC-VN; Tue, 10 Oct 2023 09:04:28 +0000
Received: by outflank-mailman (input) for mailman id 614623;
 Tue, 10 Oct 2023 09: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=c+X1=FY=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qq8fE-0007u6-DW
 for xen-devel@lists.xenproject.org; Tue, 10 Oct 2023 09:04:28 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 03ae73b0-674c-11ee-98d3-6d05b1d4d9a1;
 Tue, 10 Oct 2023 11:04:27 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id DC4B54EE0742;
 Tue, 10 Oct 2023 11:04: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: 03ae73b0-674c-11ee-98d3-6d05b1d4d9a1
MIME-Version: 1.0
Date: Tue, 10 Oct 2023 11:04:26 +0200
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: Luca Fancellu <Luca.Fancellu@arm.com>
Cc: Stefano Stabellini <sstabellini@kernel.org>, Julien Grall
 <julien@xen.org>, Xen-devel <xen-devel@lists.xenproject.org>,
 michal.orzel@amd.com, xenia.ragiadakou@amd.com, Ayan Kumar Halder
 <ayan.kumar.halder@amd.com>, consulting@bugseng.com, Jan Beulich
 <jbeulich@suse.com>, =?UTF-8?Q?Roger_Pau_Monn=C3=A9?=
 <roger.pau@citrix.com>, Henry Wang <Henry.Wang@arm.com>, Simone Ballarin
 <simone.ballarin@bugseng.com>, Doug Goldstein <cardoe@cardoe.com>, George
 Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>, Andrew Cooper
 <andrew.cooper3@citrix.com>
Subject: Re: [XEN PATCH] xen: Add SAF deviations for MISRA C:2012 Rule 7.1
In-Reply-To: <2AC05F6B-477A-45C3-A865-E0917692EE12@arm.com>
References: <338d8e574db943a86c7605e4c6d9a299d45f067d.1696347345.git.nicola.vetrini@bugseng.com>
 <alpine.DEB.2.22.394.2310031345190.2348112@ubuntu-linux-20-04-desktop>
 <e1736215-52ba-4737-9da3-8f1ba7e832a6@citrix.com>
 <DB96C095-5FAF-40A1-9CA8-002291AA1933@arm.com>
 <2894008e8f612296da84267346ae4240@bugseng.com>
 <B00BC78B-E707-4043-A0B4-D320C6717472@arm.com>
 <alpine.DEB.2.22.394.2310041625170.2348112@ubuntu-linux-20-04-desktop>
 <9DD525D9-DB6D-4888-9266-FB45906A0E0F@arm.com>
 <alpine.DEB.2.22.394.2310051756360.2348112@ubuntu-linux-20-04-desktop>
 <C2DDFAB5-D943-4A24-9C14-AF35BE2A7C90@arm.com>
 <alpine.DEB.2.22.394.2310061741130.3431292@ubuntu-linux-20-04-desktop>
 <1ceb5aa0-d374-4357-964f-1341468d542e@xen.org>
 <alpine.DEB.2.22.394.2310091251080.3431292@ubuntu-linux-20-04-desktop>
 <2AC05F6B-477A-45C3-A865-E0917692EE12@arm.com>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <784666fd145d1bdcd2afc4607de12dd1@bugseng.com>
X-Sender: nicola.vetrini@bugseng.com
Organization: BUGSENG s.r.l.
Content-Type: text/plain; charset=UTF-8;
 format=flowed
Content-Transfer-Encoding: 8bit

On 10/10/2023 09:29, Luca Fancellu wrote:
>> 
>>>> /* SAF-x-safe */
>>>> if ( modrm_mod == MASK_EXTR(instr_modrm, 0300) && (modrm_reg & 7) ==
>>>> MASK_EXTR(instr_modrm, 0070) && (modrm_rm & 7)  == 
>>>> MASK_EXTR(instr_modrm,
>>>> 0007) )
>>>> 
>>>> Any other ideas?
>>> 
>>> Could we have a number in the comment to indicate the number of lines 
>>> the
>>> comment applies to?
>> 
>> Luca can confirm that what I am about to write is correct; my
>> understanding is that ECLAIR supports it, but cppcheck does not. Which
>> means for cppcheck we would have to translate the SAF tag with
>> xen_analyize to:
>> 
>> /* cppcheck tag */
>> line1
>> /* cppcheck tag */
>> line2
>> /* cppcheck tag */
>> line3
>> 
>> and that would end up changing the line numbers in the source files so
>> the cppcheck report wouldn't match with the original line numbers any
>> longer
> 
> Yes, but it’s not only Cppcheck, it’s also Coverity that supports only
> the above notation.
> 
> For Cppcheck we could do something, but for Coverity we can’t.
> 
> Anyway, Stefano or Nicola, I would like to understand where Eclair
> reports the violation
> in the case of #define, does it report at the usage or at the 
> definition?
> 
> Cheers,
> Luca

The report is at the usage site, but ECLAIR can be configured to deviate 
based on a comment
at the macro definition, or also just the macro name for reports of that 
rule (e.g. Q[1-3]):

#define M(a, b) (b)
/* -E> safe MC3R1.R7.1 1 blabla */
#define Q1(s) M(s, 0300)
/* -E> safe MC3R1.R7.1 1 blabla */
#define Q2(s) M(s, 0070)
/* -E> safe MC3R1.R7.1 1 blabla */
#define Q3(s) M(s, 0007)

void f(void) {
   int x = 1;
   int y = 2;
   if ( (x & 2) == Q1(y) &&
        (x & 3) == Q2(y) &&
        (x & 7) == Q3(y) )
   {
      y = y + 1;
   }
}

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


From xen-devel-bounces@lists.xenproject.org Tue Oct 10 09:19:41 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 10 Oct 2023 09:19:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614628.955825 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qq8tq-0001Sn-9p; Tue, 10 Oct 2023 09:19:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614628.955825; Tue, 10 Oct 2023 09: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 1qq8tq-0001Sg-7J; Tue, 10 Oct 2023 09:19:34 +0000
Received: by outflank-mailman (input) for mailman id 614628;
 Tue, 10 Oct 2023 09:19: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=LWWS=FY=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qq8tp-0001Sa-Ed
 for xen-devel@lists.xenproject.org; Tue, 10 Oct 2023 09:19: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 1e0ea845-674e-11ee-9b0d-b553b5be7939;
 Tue, 10 Oct 2023 11:19:30 +0200 (CEST)
Received: by mail-lj1-x232.google.com with SMTP id
 38308e7fff4ca-2b9d07a8d84so68747221fa.3
 for <xen-devel@lists.xenproject.org>; Tue, 10 Oct 2023 02:19:30 -0700 (PDT)
Received: from [10.157.20.173] ([103.14.252.248])
 by smtp.gmail.com with ESMTPSA id
 c18-20020a170903235200b001c62b9a51c0sm11218884plh.103.2023.10.10.02.19.27
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 10 Oct 2023 02:19: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: 1e0ea845-674e-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1696929570; x=1697534370; darn=lists.xenproject.org;
        h=content-transfer-encoding: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=TFeC/dNky6HttFdJvu4PzPwqQg818xGae3qC+PSaa4c=;
        b=cppeB8wIVB94YHiE/q8KzsQ9quTyLkr6ndLrJJImeQuQ3NSKmechRUb6Aoevpaa/s3
         XqMtaqo8/5OvT2ZartmHqL+e7Ciuqszfp2bWkg0XoBv1SV6Yd7shGLMnjjwWSAJNVcTq
         kaslYLAeVULzE/wMFOJ0fc6KlGAm+FmtPRJ/o=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1696929570; x=1697534370;
        h=content-transfer-encoding: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=TFeC/dNky6HttFdJvu4PzPwqQg818xGae3qC+PSaa4c=;
        b=wH/fLVqwfnOuru+H9VNmXXx4e1L947VhrnLLe97aU5A/Za/sD3cOKPe/IIZFYJftnb
         atq5N0D9OXQxZweR6jTu4A9pvZEKQpvAxveikhOxdXzmQjqf7/R+avInKX7YUaHzhTl/
         hA6vVm40TUgypj2AaC9loedME+bLi1qhtaj/RSVXFUd9p2DI+1ZcV8MmrXN2YfkVpeTK
         hZIWYMYBgNDPCBBzhxzUmrbSSxHpYydWRDjgnQ1PN1P8svbQxdhHA3tjXukGTGoVWCfb
         oZwkyX8JhFtTR4hKWI7AHt8Y7W1bjRY5olpB2+24BedBgvqH3T5EZAwuDs0e/o/YvP4e
         11Rg==
X-Gm-Message-State: AOJu0YxTZ46CMa8B1N9NiM8CodZQFRouGre0jh2BfQHOtY9TCTwAMu0L
	0tQFBFdMq+9RkwOJMVA+Q7YulQ==
X-Google-Smtp-Source: AGHT+IEKZOs1pib+7fYFgJaPdvhh2uCbzOchfF7zyRqisW97HRuteL4+UChQuEZHI1Iamb4+xCBPfQ==
X-Received: by 2002:a2e:9c4e:0:b0:2c0:a0c:be7 with SMTP id t14-20020a2e9c4e000000b002c00a0c0be7mr12027427ljj.8.1696929570030;
        Tue, 10 Oct 2023 02:19:30 -0700 (PDT)
Message-ID: <dabb48f2-5a7b-46f6-bc0c-deaa1c6ef861@citrix.com>
Date: Tue, 10 Oct 2023 17:19:25 +0800
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH v8 0/4] Prevent attempting updates known to fail
Content-Language: en-GB
To: Alejandro Vallejo <alejandro.vallejo@cloud.com>,
 Xen-devel <xen-devel@lists.xenproject.org>, Henry Wang <Henry.Wang@arm.com>
Cc: Jan Beulich <jbeulich@suse.com>, =?UTF-8?Q?Roger_Pau_Monn=C3=A9?=
 <roger.pau@citrix.com>, Wei Liu <wl@xen.org>
References: <20230830155326.10199-1-alejandro.vallejo@cloud.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: <20230830155326.10199-1-alejandro.vallejo@cloud.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 30/08/2023 11:53 pm, Alejandro Vallejo wrote:
> Now that XENLOG_INFO is the default logging level...
>
> v8:
>   * Fixed last bits mentioned by Jan in v7/patch1 (v8/patch2)
>   * Rolled back to having new printk as INFO
>   * Added v8/patch1 to ensure the existing early exit from
>     early_cpu_init() has INFO severity as well.

This was posted before we got into RCs.  Any view to a release ack?

It seems to be in a good state, but I need to double check on affected
systems first.

Thanks,

~Andrew


From xen-devel-bounces@lists.xenproject.org Tue Oct 10 09:31:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 10 Oct 2023 09:31:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614635.955836 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qq94z-0004Dn-IS; Tue, 10 Oct 2023 09:31:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614635.955836; Tue, 10 Oct 2023 09:31: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 1qq94z-0004Dg-Fa; Tue, 10 Oct 2023 09:31:05 +0000
Received: by outflank-mailman (input) for mailman id 614635;
 Tue, 10 Oct 2023 09:31: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=c+X1=FY=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qq94x-0004DY-Er
 for xen-devel@lists.xenproject.org; Tue, 10 Oct 2023 09:31:03 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id ba1a13c3-674f-11ee-98d3-6d05b1d4d9a1;
 Tue, 10 Oct 2023 11:31:02 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id 5B5074EE0742;
 Tue, 10 Oct 2023 11:31: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: ba1a13c3-674f-11ee-98d3-6d05b1d4d9a1
MIME-Version: 1.0
Date: Tue, 10 Oct 2023 11:31:01 +0200
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: Xen-devel <xen-devel@lists.xenproject.org>
Cc: consulting@bugseng.com, Stefano Stabellini <sstabellini@kernel.org>,
 Andrew Cooper <andrew.cooper3@citrix.com>, Jan Beulich <jbeulich@suse.com>,
 Julien Grall <julien@xen.org>, Bertrand Marquis <bertrand.marquis@arm.com>,
 roger.pau@citrix.com, George Dunlap <george.dunlap@citrix.com>, Wei Liu
 <wl@xen.org>
Subject: MISRA C:2012 D4.11 caution on staging
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <7972c20f361126022fa97f6b51ca2d9c@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,

as you can see from [1], there's a MISRA C guideline, D4.11, that is 
supposed to be clean
(i.e., have no reports), but has a caution on an argument to memcpy
(the second argument might be null according to the checker, given a set 
of assumptions on
the control flow). To access the report just click on the second link in 
the log, which should take you to a webpage with a list of
MISRA guidelines. Click on D4.11 and you'll see the full report, which I 
pasted below for convenience.

If the finding is genuine, then some countermeasure needs to be taken 
against this
possible bug, otherwise it needs to be motivated why the field 
config->handle can't
be null at that point.
The finding is likely the result of an improvement made to the checker, 
because the first
analysis I can see that spots it happened when rc1 has been tagged, but 
that commit does not
touch the involved files.

[1] https://gitlab.com/xen-project/xen/-/jobs/5251222578

  caution for MC3R1.D4.11 untagged
xen/common/domain.c:758.27-758.40:
[59] null pointer passed as 2nd argument to memory copy function
xen/common/domain.c:590.10-590.15:
[1] assuming 'config' is null
xen/common/domain.c:593.10-593.44:
[2] assuming the condition is false; taking false branch
<preprocessed xen/common/domain.c>:11332.10-11332.50:
preprocessed tokens
xen/include/xen/types.h:31.23:
expanded from macro `NULL'
xen/common/domain.c:603.12-603.27:
[3] '?' condition is true
<preprocessed xen/common/domain.c>:11336.37-11336.52:
preprocessed tokens
xen/include/xen/compiler.h:21.43:
expanded from macro `unlikely'
xen/include/xen/lib.h:26.15-26.28:
expanded from macro `ASSERT'
xen/include/xen/lib.h:26.26:
expanded from macro `ASSERT'
xen/common/domain.c:603.5-603.65:
[4] taking false branch
<preprocessed xen/common/domain.c>:11336.10-11336.11:
preprocessed tokens
xen/include/xen/lib.h:26.10-26.11:
expanded from macro `ASSERT'
xen/common/domain.c:603.5-603.65:
[5] loop condition is false:  exiting loop
<preprocessed xen/common/domain.c>:11336.5-11336.6:
preprocessed tokens
xen/include/xen/lib.h:26.5-26.6:
expanded from macro `ASSERT'
xen/common/domain.c:605.10-605.15:
[6] 'config' is null
xen/common/domain.c:605.5-605.6:
[7] taking false branch
xen/common/domain.c:615.10-615.14:
[8] 'domid' is not equal to 0
xen/common/domain.c:615.24-615.28:
[9] 'domid' is not equal to hardware_domid
xen/common/domain.c:615.5-615.6:
[10] taking false branch
xen/common/domain.c:624.5-624.44:
[11] taking false branch
<preprocessed xen/common/domain.c>:11356.10-11356.11:
preprocessed tokens
xen/include/xen/trace.h:86.9-86.10:
expanded from macro `TRACE_varD'
xen/include/xen/trace.h:94.5-94.22:
expanded from macro `TRACE_1D'
xen/common/domain.c:624.5-624.44:
[12] loop condition is false:  exiting loop
<preprocessed xen/common/domain.c>:11356.5-11356.6:
preprocessed tokens
xen/include/xen/trace.h:85.5-85.6:
expanded from macro `TRACE_varD'
xen/include/xen/trace.h:94.5-94.22:
expanded from macro `TRACE_1D'
xen/common/domain.c:630.5-630.39:
[13] assuming 'prof' is null; taking true branch
<preprocessed xen/common/domain.c>:11362.111-11362.115:
preprocessed tokens
xen/include/xen/spinlock.h:114.14-114.18:
expanded from macro `spin_lock_init_prof'
xen/common/domain.c:630.5-630.39:
[14]  execution continues on line 631
<preprocessed xen/common/domain.c>:11363.104-11363.108:
preprocessed tokens
xen/include/xen/spinlock.h:119.13-119.17:
expanded from macro `spin_lock_init_prof'
xen/common/domain.c:631.5-631.43:
[15] assuming 'prof' is null; taking true branch
<preprocessed xen/common/domain.c>:11367.115-11367.119:
preprocessed tokens
xen/include/xen/spinlock.h:114.14-114.18:
expanded from macro `spin_lock_init_prof'
xen/common/domain.c:631.5-631.43:
[16]  execution continues on line 632
<preprocessed xen/common/domain.c>:11368.112-11368.116:
preprocessed tokens
xen/include/xen/spinlock.h:119.13-119.17:
expanded from macro `spin_lock_init_prof'
xen/common/domain.c:642.24-642.36:
[17] '?' condition is true
<preprocessed xen/common/domain.c>:11377.92:
preprocessed tokens
xen/include/xen/bitmap.h:97.9:
expanded from macro `BITMAP_LAST_WORD_MASK'
xen/include/xen/nodemask.h:238.29-238.63:
expanded from macro `NODE_MASK_LAST_WORD'
xen/include/xen/nodemask.h:244.43-244.61:
expanded from macro `NODE_MASK_ALL'
xen/common/domain.c:662.5-662.6:
[18] taking false branch

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


From xen-devel-bounces@lists.xenproject.org Tue Oct 10 09:33:03 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 10 Oct 2023 09:33:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614640.955846 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qq96r-0004na-Uv; Tue, 10 Oct 2023 09:33:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614640.955846; Tue, 10 Oct 2023 09:33: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 1qq96r-0004nT-R2; Tue, 10 Oct 2023 09:33:01 +0000
Received: by outflank-mailman (input) for mailman id 614640;
 Tue, 10 Oct 2023 09:33: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=sc7t=FY=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qq96q-0004nK-TO
 for xen-devel@lists.xenproject.org; Tue, 10 Oct 2023 09:33:01 +0000
Received: from EUR02-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur02on20608.outbound.protection.outlook.com
 [2a01:111:f400:fe16::608])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 0018cbba-6750-11ee-98d3-6d05b1d4d9a1;
 Tue, 10 Oct 2023 11:32:59 +0200 (CEST)
Received: from DU2PR04CA0278.eurprd04.prod.outlook.com (2603:10a6:10:28c::13)
 by PAVPR08MB9016.eurprd08.prod.outlook.com (2603:10a6:102:325::12)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.36; Tue, 10 Oct
 2023 09:32:56 +0000
Received: from DBAEUR03FT030.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:28c:cafe::74) by DU2PR04CA0278.outlook.office365.com
 (2603:10a6:10:28c::13) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.38 via Frontend
 Transport; Tue, 10 Oct 2023 09:32:56 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DBAEUR03FT030.mail.protection.outlook.com (100.127.142.197) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6886.23 via Frontend Transport; Tue, 10 Oct 2023 09:32:56 +0000
Received: ("Tessian outbound fb5c0777b309:v211");
 Tue, 10 Oct 2023 09:32:55 +0000
Received: from ac952a9434a5.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 7B219985-12EF-47E5-99B8-36867AE9A5C4.1; 
 Tue, 10 Oct 2023 09:32:49 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id ac952a9434a5.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Tue, 10 Oct 2023 09:32:49 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by PA4PR08MB6096.eurprd08.prod.outlook.com (2603:10a6:102:eb::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.38; Tue, 10 Oct
 2023 09:32:47 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41%4]) with mapi id 15.20.6863.032; Tue, 10 Oct 2023
 09:32: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: 0018cbba-6750-11ee-98d3-6d05b1d4d9a1
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=Z9FqmO8JDEMz5l7i+lD1yhEBBOjVFEtJ0dJkgajDxak=;
 b=Dn7Z/Mc1kXd+xN6D3xkqn8N9KKIxXDTkaPbADiegNci3l0hRGwjIMqF/scfcPHfFy/+ndUBMrnklN5zatVnghWXcy1VdXV8CuO2PvTTgqHmJCxaWU8PVDVpCk6ezb8eoN4RaMHxUv6or2ZPxOavt7zAI8ypQmbR5G8x6wQ7NPoA=
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: a309f32c249cfb48
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=LTIxqvubhBbH2m5OqvoODrYZOkb1ujaYNJK1RdVUBTzPKZ7gQe+4T6A9V2irp5ELDDxIessCo0Dc1XAkaiRlWlznB8D+flVdTwg7l/H+l1sWyKZsg15SAq+HvibXLOBDLd9Q0o44HPA8mNtzgrr/fLhGdgFXKT48JQQs+EAnwejhoGkEsMyfKmcKx3+D/fEruCWj55eQTysftyZE9SYE5bjoz+EGb73SrEf3txn2EuxYIF3vxYEom/DQvSqpMzUu4I3Rd5TX4wFSv2JLnT/3Jt66GvdxBG5XaDIrVUPxvqAZxbCIyW7zAyJmeXZUOeTL+6yhodvqcAXGpq/ppe4cTA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=Z9FqmO8JDEMz5l7i+lD1yhEBBOjVFEtJ0dJkgajDxak=;
 b=iLLqO6I2NUU0tQHC7WGaTw8ddNfVJeP9xehBiVQozi8Gf+0RvWHJ7J4DtwyOVzWMgmW/Obk3QmoWhqYYHW4VWyEUONw5ByCNcuwae8lU1kay9QFIO+fqQ1/scZxUsohCgn6v0FcwdiXg44oSkWUJbOG+kRaxOKUjlP8b54V9pZS9kUDXWJL1Na8WJG9MohsF3gcPSMipZDggsVYu0k57MS3qF7xLifaXA8ZOeREUYHh3wLtckF/r3SKokNkTJLpQhdkth0Cr+mvYfr1Od/0qgL2U/u7DJQsr3MRtyf7s49z0trAv10VW7DDPno22J2KaY09/8rGpcoWBnJ5+9XiFtw==
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=Z9FqmO8JDEMz5l7i+lD1yhEBBOjVFEtJ0dJkgajDxak=;
 b=Dn7Z/Mc1kXd+xN6D3xkqn8N9KKIxXDTkaPbADiegNci3l0hRGwjIMqF/scfcPHfFy/+ndUBMrnklN5zatVnghWXcy1VdXV8CuO2PvTTgqHmJCxaWU8PVDVpCk6ezb8eoN4RaMHxUv6or2ZPxOavt7zAI8ypQmbR5G8x6wQ7NPoA=
From: Henry Wang <Henry.Wang@arm.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>
CC: Alejandro Vallejo <alejandro.vallejo@cloud.com>, Xen-devel
	<xen-devel@lists.xenproject.org>, Jan Beulich <jbeulich@suse.com>,
	=?iso-8859-1?Q?Roger_Pau_Monn=E9?= <roger.pau@citrix.com>, Wei Liu
	<wl@xen.org>
Subject: Re: [PATCH v8 0/4] Prevent attempting updates known to fail
Thread-Topic: [PATCH v8 0/4] Prevent attempting updates known to fail
Thread-Index: AQHZ21ouU/78f5pdKkage6VapGXyvrBC/wSAgAADrwA=
Date: Tue, 10 Oct 2023 09:32:47 +0000
Message-ID: <EEF64BC9-90D6-4130-B18B-DC2AA8926745@arm.com>
References: <20230830155326.10199-1-alejandro.vallejo@cloud.com>
 <dabb48f2-5a7b-46f6-bc0c-deaa1c6ef861@citrix.com>
In-Reply-To: <dabb48f2-5a7b-46f6-bc0c-deaa1c6ef861@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_|PA4PR08MB6096:EE_|DBAEUR03FT030:EE_|PAVPR08MB9016:EE_
X-MS-Office365-Filtering-Correlation-Id: a0d61d34-5753-404e-9dfa-08dbc973e275
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:
 8LfUKxAEtQ+8fQMywLMgp3BFwMiVZRuCoDL2Crh8sdiYQZ6/J08KHxsZ8BzaLaro2Z1Rl3pZH1hFtw7xUzkQe52zyfI9vCyXKlfYAvY1n49AhpDEi/NPuoYGP/jWIQqiE+jARRq4l868+GXMJdmimdCd1e6l1yTfvBnkF0g8wzn/xRea4tb7zsn0Q9wQs9x8SnJKYpArIJkRpfXvYEx4W8U4d7BJ9XsZTRLSkTLddRr5bSioerj+k9yHpj7zz6fdoqgqWYW57IL+PsKY0OtOp7L4BKrOS9b4v97n+ZiTFxiqlXUc3D42OvLmh6XAnDvFM0XGVhzqQb8G7OlU8ebv6LOrh0waKAiqGOX8OM3YjNZ7L5vqQPka/sj64jGnrX0eJXOZEU+9BePV54B1t0DEXWgQ4klRSmx9duTcYIBTmOn454BuBhl9Y8sM9hARWjcz/F75sNc4YKG3XMK8tdJP1G2mxS8kQEZUhJztHfTzRHzzFOvWkmoMO5XrIPKFiMf380ya46Awf0aFQ2nUuMpXKhRwbA0oPM9784fWzYZEuau83GD6kba8PV6o+g5AdE/h+cGALWKNORg3D+VOVS7u016xYRvf1i1TK5nqPouRijzBrLEW1jTS3Q2EgoGT/cUOf2WxFBZ5llAGMbzYndJ44Q==
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)(230922051799003)(451199024)(1800799009)(64100799003)(186009)(86362001)(4744005)(2906002)(38070700005)(122000001)(38100700002)(66446008)(33656002)(66476007)(6512007)(316002)(66556008)(66946007)(76116006)(6916009)(54906003)(64756008)(91956017)(6506007)(53546011)(26005)(2616005)(478600001)(6486002)(71200400001)(36756003)(41300700001)(8936002)(5660300002)(8676002)(4326008)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="iso-8859-1"
Content-ID: <25C0E795379B9942AAEA46D4650587EF@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR08MB6096
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:
 DBAEUR03FT030.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	2d28a6a3-4480-4ab5-bca4-08dbc973dd48
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	WiCrplKlnbstABO79iHR5XfzLaARMf21OrIH/PqJqhgrntURD8WZSKy5pITbFo9vyOSOAdRuh4/08C3XicTIUVLE2+8E/X14RBdSdt+suFuffbXCEA2RGMnciGoYrOdewt5zUycqhYGzWdK0L/gTrSrfKR3WbsmpP0dJh9Gzgqs8WhJaySfLzndXEP4cTIEto5Pxp+hVkEkZgmycMOxUSr5pEp+kzsYtFmso3TU8wbzZD22V2eWxm0DKwRJZVFvsMCWW4h9r8/OJGIfjsPdPSjR1J2UnH6Jm4TOqbrnPEpQUlS117P+Ajbk1X41IwiV8ZlC8NivqKbByTvB94g79g+4W60R/IMRERtNfLCPZQTijAC4iQ/p3+6gnTi+UPkwFLQAr+/XGmagkgCNG32p7WB8OfAjRhWnLyIfxV/AzU0SvmK3ZY5GTOKDd6T816zGvI4vdxv0EMjBlFgBbABGEF58OLq0qBMGJaZZd4fQW/DjnWfjm6SfJravzr2yqI5tFJA1QoLQ8CuBTIDOsJGcZa7P4W9WPRSvyGqZvf7CzI6kP2CvRWOXkUUNs3eGtI4ma50R7aLhHnFdlZ2BY/rDBDZIv4aKNqurnJQ17jmpnV6MHizZh+ucnFMxv+yuh8ud/l2Y4E/OS7uoTztWWnquxSAxVafOgl5G7K5dITQ2l0nBVB02DP12VZszMXq207xpJJJO2KCbxsYIH7NxZZ3K5LwaVH8L6GGW/QREkBwNDW5MP57mcz7wbyUb9FiuZR56+
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)(396003)(376002)(230922051799003)(82310400011)(186009)(64100799003)(1800799009)(451199024)(36840700001)(46966006)(40470700004)(26005)(2616005)(336012)(53546011)(8676002)(6512007)(47076005)(36860700001)(4744005)(6862004)(2906002)(478600001)(6506007)(4326008)(54906003)(70586007)(70206006)(6486002)(5660300002)(8936002)(316002)(41300700001)(81166007)(40460700003)(356005)(86362001)(40480700001)(36756003)(82740400003)(33656002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 10 Oct 2023 09:32:56.0525
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: a0d61d34-5753-404e-9dfa-08dbc973e275
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:
	DBAEUR03FT030.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAVPR08MB9016

Hi Andrew,

> On Oct 10, 2023, at 17:19, Andrew Cooper <andrew.cooper3@citrix.com> wrot=
e:
>=20
> On 30/08/2023 11:53 pm, Alejandro Vallejo wrote:
>> Now that XENLOG_INFO is the default logging level...
>>=20
>> v8:
>>  * Fixed last bits mentioned by Jan in v7/patch1 (v8/patch2)
>>  * Rolled back to having new printk as INFO
>>  * Added v8/patch1 to ensure the existing early exit from
>>    early_cpu_init() has INFO severity as well.
>=20
> This was posted before we got into RCs.  Any view to a release ack?

I am ok with that, given the status of this series, but you do need to prov=
ide
a R-b or A-b to the first patch, with that (can be handled on commit):

Release-acked-by: Henry Wang <Henry.Wang@arm.com>

>=20
> It seems to be in a good state, but I need to double check on affected
> systems first.

Please do and if possible make sure it will not blow up the CI :)

Kind regards,
Henry

>=20
> Thanks,
>=20
> ~Andrew



From xen-devel-bounces@lists.xenproject.org Tue Oct 10 09:54:41 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 10 Oct 2023 09:54:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614647.955856 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qq9Rb-0008PB-HP; Tue, 10 Oct 2023 09:54:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614647.955856; Tue, 10 Oct 2023 09:54: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 1qq9Rb-0008P4-E3; Tue, 10 Oct 2023 09:54:27 +0000
Received: by outflank-mailman (input) for mailman id 614647;
 Tue, 10 Oct 2023 09:54: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=c+X1=FY=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qq9Ra-0008Oy-Fp
 for xen-devel@lists.xenproject.org; Tue, 10 Oct 2023 09:54:26 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id fe7cf795-6752-11ee-98d3-6d05b1d4d9a1;
 Tue, 10 Oct 2023 11:54:25 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id 98DB94EE0742;
 Tue, 10 Oct 2023 11:54: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: fe7cf795-6752-11ee-98d3-6d05b1d4d9a1
MIME-Version: 1.0
Date: Tue, 10 Oct 2023 11:54:24 +0200
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: Stefano Stabellini <sstabellini@kernel.org>
Cc: Julien Grall <julien@xen.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, Simone Ballarin <simone.ballarin@bugseng.com>, Doug
 Goldstein <cardoe@cardoe.com>, George Dunlap <george.dunlap@citrix.com>, Wei
 Liu <wl@xen.org>
Subject: Re: [XEN PATCH][for-4.19 1/2] xen: introduce a deviation for Rule
 11.9
In-Reply-To: <alpine.DEB.2.22.394.2310061730460.3431292@ubuntu-linux-20-04-desktop>
References: <cover.1696494834.git.nicola.vetrini@bugseng.com>
 <98bc1d90b93856ed7516a19114facf6528120248.1696494834.git.nicola.vetrini@bugseng.com>
 <605f8045-754d-4d3c-b1b3-3bb34112bfc8@xen.org>
 <2aafb9710b4754e8d57acc1f769693b4@bugseng.com>
 <c97bd628-1be1-46bf-a506-6ffb90cf801e@xen.org>
 <alpine.DEB.2.22.394.2310061730460.3431292@ubuntu-linux-20-04-desktop>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <7168dfb8bcfae953c0d65fe05699ca9b@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/10/2023 02:33, Stefano Stabellini wrote:
> On Fri, 6 Oct 2023, Julien Grall wrote:
>> On 06/10/2023 10:58, Nicola Vetrini wrote:
>> > On 06/10/2023 11:27, Julien Grall wrote:
>> > > Hi,
>> > >
>> > > On 05/10/2023 09:45, Nicola Vetrini wrote:
>> > > > The constant 0 is used instead of NULL in '__ACCESS_ONCE' as a
>> > > > compile-time check to detect non-scalar types; its usage for this
>> > > > purpose is documented in rules.rst as an exception.
>> > > Documenting ACCESS_ONCE() in rules.rst seems a bit odd. I am guessing
>> > > that other analysis tool may point out the same error and therefore it
>> > > would seem more appropriate to use a deviation.
>> > >
>> > > This would also avoid having a specific rule in the Eclair
>> > > configuration for __ACCESS_ONCE().
>> > >
>> >
>> > I figured a single accepted use would benefit from an explicit exclusion.
>> > I can rework it to use an in-code comment to deviate, in whatever form that
>> > comment may be
>> > (still with some bits of ECLAIR-specific configuration anyway, as discussed
>> > for R2.1).
>> 
>> I think it would be preferrable to have a deviation in the code. This 
>> would be
>> helpful for other analysis tools.
> 
> Yes exactly, see my reply:
> https://marc.info/?l=xen-devel&m=169663696228889
> 
> I know I acked the patch but I agree with Julien. A deviation as an
> in-code comment (SAF-x-safe) is always the best option. If that doesn't
> work, we cannot keep adding stuff in the notes section of rules.rst. It
> doesn't scale. We should create a new document, like deviations.rst, or
> add a new section at the bottom of documenting-violations.rst or
> possibly safe.json.

I'll rebase this patch with an entry in deviations.rst, so that this 
applies to staging
cleanly.

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


From xen-devel-bounces@lists.xenproject.org Tue Oct 10 09:58:00 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 10 Oct 2023 09:58:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614653.955866 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qq9V1-0000Zs-0g; Tue, 10 Oct 2023 09:57:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614653.955866; Tue, 10 Oct 2023 09: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 1qq9V0-0000Zl-T8; Tue, 10 Oct 2023 09:57:58 +0000
Received: by outflank-mailman (input) for mailman id 614653;
 Tue, 10 Oct 2023 09: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=EVYk=FY=citrix.com=prvs=64039df0c=Andrew.Cooper3@srs-se1.protection.inumbo.net>)
 id 1qq9Uz-0000Zb-2G
 for xen-devel@lists.xenproject.org; Tue, 10 Oct 2023 09:57:57 +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 7a83d517-6753-11ee-9b0d-b553b5be7939;
 Tue, 10 Oct 2023 11: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: 7a83d517-6753-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1696931874;
  h=from:to:cc:subject:date:message-id:mime-version:
   content-transfer-encoding;
  bh=XFUlfhoZvMHmB7+XO7vsO+/1R92MFgKP5/e539Ce+gM=;
  b=gMlxotDmq4ezxlMLKznTNv2vCPLFT29YlbGT67DdxZcahWMGRmafhO1g
   YV4/HEH7gH7cFDE40bCawl5KlMaA5yULKGehqpiPy8PKPrkCE2SXAoPQF
   fgRLLeT3pVfapRFzHlwB7ouPYgBH3DbPq55sHT0zjmdi01Fz24YRmgTmX
   4=;
X-CSE-ConnectionGUID: WeZzT1J/R/6c+wQWO38EQw==
X-CSE-MsgGUID: 6dixwcayQP+jorURmse1mQ==
Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
X-SBRS: 4.0
X-MesageID: 124981856
X-Ironport-Server: esa2.hc3370-68.iphmx.com
X-Remote-IP: 162.221.159.70
X-Policy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:ZnkDLq7H718CBBQDGKxgbQxRtCvHchMFZxGqfqrLsTDasY5as4F+v
 mofCmqHa/+MMGfzct13Oozi9BsGu5SDzNM2GwBvrC8zHi5G8cbLO4+Ufxz6V8+wwm8vb2o8t
 plDNYOQRCwQZiWBzvt4GuG59RGQ7YnRG/ykTraCY3gtLeNdYH9JoQp5nOIkiZJfj9G8Agec0
 fv/uMSaM1K+s9JOGjt8B5mr9lU355wehBtC5gZlPKgS5AeH/5UoJMl3yZ+ZfiOQrrZ8RoZWd
 86bpJml82XQ+QsaC9/Nut4XpWVTH9Y+lSDX4pZnc/DKbipq/0Te4Y5iXBYoUm9Fii3hojxE4
 I4lWapc6+seFvakdOw1C3G0GszlVEFM0OevzXOX6aR/w6BaGpdFLjoH4EweZOUlFuhL7W5my
 vEqOgxUTFe5wLy9g62Cdc431ukaM5y+VG8fkikIITDxCP8nRdbIQrnQ5M8e1zA17ixMNa+AP
 YxDM2MpNUmRJUIXUrsUIMtWcOOAr3/zaTBH7nmSorI6+TP7xw1tyrn9dtHSf7RmQO0MxBrJ9
 juWojqR7hcyatCe2SWO+2OVvqzNmjnGYocJGeS9z6s/6LGU7jNKU0BHPbehmtGph0j7V99BJ
 kg8/is1sbN05EGtVsP6XRCzvDiDpBF0c9xRGOo+4UeTx7bO4gCYLmIZQSVMbtNgv8gzLRQI/
 FKUm9LiBRR0raaYD3ma89+8sjeaKSUTa2gYakc5oRAtuoe55ttp11SWE4clT/bdYsDJ9S/Y/
 D24vhRnpfIpypAAlLqCwnec0x+Vuc2cJuIq3Tk7Tl5J/ysgOt/7NtT4tQmHhRpTBNzHFATd4
 hDoj+DbvLhXUs/X/MCYaL9VdIxF8cppJ9E1bbRHJ54k7z2r/DaJcIlb4FmSz28yaZ5aJ1cFj
 KLJ0D69BaO/31PwN8ebm6rrV6wXIVHITLwJrMz8YNtUeYRWfwSa5ixobkP49zmzwRZ8zv9iY
 czAKpzE4ZMm5UNPlWXeegvg+eVzmnBWKZ37GPgXMChLIZLBPSXIGN/pwXOFb/wj7bPsnTg5B
 +13bpPQoz0GCb2WX8Ui2dJLRbz8BSRhVM+eRg0+XrLrHzeK70l6UqSAmulxJ9cNcmY8vr6gw
 0xRk3RwkDLX7UAr4y3TApy/QNsDhapCkE8=
IronPort-HdrOrdr: A9a23:ShiZn6Efu/JKdW0upLqFnpLXdLJyesId70hD6qkvc3Fom52j/f
 xGws5x6fatskdlZJjko6HJBEGBKUmsiKKdkrNhSYtKPTOW+FdASbsP0WKM+UyQJ8STzJ8n6U
 4kSdkNNDSSNyk4sS+Z2njJLz9I+rDun87Y5pa9vg4dNT2Gc5sB0+46MHfpLqQffngCOXNTLu
 vh2iMznUvfRZ1hVLXFOpBqZZm4mzT+ruOjXTc2QzI34gyHjTel85/9CQWV0y0fXTRG3Ks4/X
 KAtwDi/K2sv8ihzBXRzXXe4v1t6b7c4+oGKN2Hj8AULjn2qgKwf4RnRpWJoTAyp4iUmTAXue
 iJjwYrOsxy73/LXmWtuhvrxizpzToo4W+K8y7+vVLT5eDpTjczC85MnrtDdArIzkI8sNZ3wM
 twrgakXtdsfEn9dOuU3amIazha0m6P5VYym+8aiHJSFaMYdb9qtIQauHhYFZ8RdRiKpLzORI
 NVbf301bJzSxe3fnrZtm5gzJiHRXIoBCqLRUAEp4i8zyVWtGoR9TpK+OUv2lM7sL4tQZhN4O
 rJdo5ykqtVc8MQZaVhQM8cXMqMDHDXSx6kChPDHb3eLtBUB5vxke+o3Fx13pD0RHUw9upvpH
 0VaiIIiYYwE3ieRPFmkqc7sGGZfI16NQ6djf22rKIJzYEUf4CbexFqkjgV4pKdSsUkc4vmsr
 6ISeRr6t/YXDPT8NVyrlbDs287EwhRbCXj0uxLFG5m5Pi7d7EDuoHgAb/uzZLWYH0ZZl8=
X-Talos-CUID: 9a23:IlLW9WMvrJRXd+5DZyRV5nJNOIcfNSPWj2jpHGjjWUtQV+jA
X-Talos-MUID: 9a23:mjNjnQQqZqI1mB4mRXSyiDByK8xh8p2WS0IKi6g8vtKJbClJbmI=
X-IronPort-AV: E=Sophos;i="6.03,212,1694750400"; 
   d="scan'208";a="124981856"
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>
Subject: [PATCH for-4.19] x86/cpu-policy: Adjust CPUID_MAX_SERIALISED_LEAVES to placate MISRA
Date: Tue, 10 Oct 2023 10:57:48 +0100
Message-ID: <20231010095748.1205365-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

MISRA doesn't like !!CONST being used in place of a 1 (Rule 10.1).  Update the
expression to just be a plain 1, which still matches the description.

No functional change.

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: Nicola Vetrini <nicola.vetrini@bugseng.com>

After considering the comment several times, I've decided to leave it as is.
It's slightly awkward grammar but it's ok.
---
 xen/include/xen/lib/x86/cpu-policy.h | 15 ++++++++-------
 1 file changed, 8 insertions(+), 7 deletions(-)

diff --git a/xen/include/xen/lib/x86/cpu-policy.h b/xen/include/xen/lib/x86/cpu-policy.h
index bab3eecda6c1..d5e447e9dc06 100644
--- a/xen/include/xen/lib/x86/cpu-policy.h
+++ b/xen/include/xen/lib/x86/cpu-policy.h
@@ -100,13 +100,14 @@ const char *x86_cpuid_vendor_to_str(unsigned int vendor);
  * interaction with the toolstack.  (Sum of all leaves in each union, less the
  * entries in basic which sub-unions hang off of.)
  */
-#define CPUID_MAX_SERIALISED_LEAVES                     \
-    (CPUID_GUEST_NR_BASIC +                             \
-     CPUID_GUEST_NR_FEAT   - !!CPUID_GUEST_NR_FEAT +    \
-     CPUID_GUEST_NR_CACHE  - !!CPUID_GUEST_NR_CACHE +   \
-     CPUID_GUEST_NR_TOPO   - !!CPUID_GUEST_NR_TOPO +    \
-     CPUID_GUEST_NR_XSTATE - !!CPUID_GUEST_NR_XSTATE +  \
-     CPUID_GUEST_NR_EXTD + 2 /* hv_limit and hv2_limit */ )
+#define CPUID_MAX_SERIALISED_LEAVES             \
+    (CPUID_GUEST_NR_BASIC +                     \
+     CPUID_GUEST_NR_FEAT   - 1 +                \
+     CPUID_GUEST_NR_CACHE  - 1 +                \
+     CPUID_GUEST_NR_TOPO   - 1 +                \
+     CPUID_GUEST_NR_XSTATE - 1 +                \
+     CPUID_GUEST_NR_EXTD +                      \
+     2 /* hv_limit and hv2_limit */ )
 
 /* Maximum number of MSRs written when serialising a cpu_policy. */
 #define MSR_MAX_SERIALISED_ENTRIES 2

base-commit: c035151902689aa5a3765aeb16fa52755917b9ca
-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Tue Oct 10 10:19:55 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 10 Oct 2023 10:19:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614660.955875 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qq9q7-00040f-Pr; Tue, 10 Oct 2023 10:19:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614660.955875; Tue, 10 Oct 2023 10:19: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 1qq9q7-00040Y-N7; Tue, 10 Oct 2023 10:19:47 +0000
Received: by outflank-mailman (input) for mailman id 614660;
 Tue, 10 Oct 2023 10:19: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 1qq9q6-00040O-1b; Tue, 10 Oct 2023 10:19: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 1qq9q5-0005AH-Rq; Tue, 10 Oct 2023 10:19: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 1qq9q5-0001dg-BJ; Tue, 10 Oct 2023 10:19:45 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qq9q5-0007cd-Ar; Tue, 10 Oct 2023 10:19: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=l2b0Zn+IdevXsJlffxRT+HUuN48TQElR8t7ds5CMQT4=; b=QX3YDmmSLRg16GENhNmvgnvuSt
	62PDsVmpAgmheyNknSEWBjMg2BIWBZmB4MerhBAALa6IRhFTqweTOaZt53otKc9n5ykzYWq+VHcn4
	m9CbRqp5CTYaiQAPQqhGhkMCL70PRV0q74PUzqZKbwmOsohoYcDuG89xJZ4BwyXCmIJo=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183329-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [libvirt test] 183329: 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-amd64-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt:saverestore-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-xsm:saverestore-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=d448eccf697e1995da68a7ddac99e6414be6aef0
X-Osstest-Versions-That:
    libvirt=7cbd8c42305735375b60abf8abc47838a7a050d4
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 10 Oct 2023 10:19:45 +0000

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

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183283
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183283
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183283
 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-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-arm64-arm64-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt     16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-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              d448eccf697e1995da68a7ddac99e6414be6aef0
baseline version:
 libvirt              7cbd8c42305735375b60abf8abc47838a7a050d4

Last test of basis   183283  2023-10-06 04:23:21 Z    4 days
Testing same since   183329  2023-10-10 04:20:35 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Göran Uddeborg <goeran@uddeborg.se>
  Han Han <hhan@redhat.com>
  Ján Tomko <jtomko@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
   7cbd8c4230..d448eccf69  d448eccf697e1995da68a7ddac99e6414be6aef0 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Tue Oct 10 10:46:58 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 10 Oct 2023 10:46:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614666.955885 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqAGI-0008Ib-U9; Tue, 10 Oct 2023 10:46:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614666.955885; Tue, 10 Oct 2023 10: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 1qqAGI-0008IU-R6; Tue, 10 Oct 2023 10:46:50 +0000
Received: by outflank-mailman (input) for mailman id 614666;
 Tue, 10 Oct 2023 10:46: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 1qqAGH-0008IO-2o
 for xen-devel@lists.xenproject.org; Tue, 10 Oct 2023 10:46: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 1qqAGF-0005t9-EE; Tue, 10 Oct 2023 10:46:47 +0000
Received: from [15.248.2.156] (helo=[10.24.67.48])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qqAGF-0007D7-67; Tue, 10 Oct 2023 10:46: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=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=eXzjVBJ2/RWdMueLaDXCPBM2R1nCFROGqqSAeP3URPM=; b=q2NK/X1zdX+1akpOSOWZm1ChZ5
	SwjN+wJ1V9WJVR0dNOngjxwPY1N8BgfzcEoO+8BqlOcYuUqQaHebyKt0i7JmYzwbIDzWL3qp0in8z
	DBVkrI2Na+ALMQCesqdonSUqx2ALH0MM7AqjztWwD/hDCqDa8OkxKOpF39DdCXFxSt8o=;
Message-ID: <8c3d7933-c139-49dd-8c62-2d4543176f8f@xen.org>
Date: Tue, 10 Oct 2023 11:46:44 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN PATCH] xen: Add SAF deviations for MISRA C:2012 Rule 7.1
Content-Language: en-GB
To: Stefano Stabellini <sstabellini@kernel.org>
Cc: Luca Fancellu <Luca.Fancellu@arm.com>,
 Nicola Vetrini <nicola.vetrini@bugseng.com>,
 Xen-devel <xen-devel@lists.xenproject.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>,
 Jan Beulich <jbeulich@suse.com>, =?UTF-8?Q?Roger_Pau_Monn=C3=A9?=
 <roger.pau@citrix.com>, Henry Wang <Henry.Wang@arm.com>,
 Simone Ballarin <simone.ballarin@bugseng.com>,
 Doug Goldstein <cardoe@cardoe.com>, George Dunlap
 <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>,
 Andrew Cooper <andrew.cooper3@citrix.com>
References: <338d8e574db943a86c7605e4c6d9a299d45f067d.1696347345.git.nicola.vetrini@bugseng.com>
 <alpine.DEB.2.22.394.2310031345190.2348112@ubuntu-linux-20-04-desktop>
 <e1736215-52ba-4737-9da3-8f1ba7e832a6@citrix.com>
 <DB96C095-5FAF-40A1-9CA8-002291AA1933@arm.com>
 <2894008e8f612296da84267346ae4240@bugseng.com>
 <B00BC78B-E707-4043-A0B4-D320C6717472@arm.com>
 <alpine.DEB.2.22.394.2310041625170.2348112@ubuntu-linux-20-04-desktop>
 <9DD525D9-DB6D-4888-9266-FB45906A0E0F@arm.com>
 <alpine.DEB.2.22.394.2310051756360.2348112@ubuntu-linux-20-04-desktop>
 <C2DDFAB5-D943-4A24-9C14-AF35BE2A7C90@arm.com>
 <alpine.DEB.2.22.394.2310061741130.3431292@ubuntu-linux-20-04-desktop>
 <1ceb5aa0-d374-4357-964f-1341468d542e@xen.org>
 <alpine.DEB.2.22.394.2310091251080.3431292@ubuntu-linux-20-04-desktop>
From: Julien Grall <julien@xen.org>
In-Reply-To: <alpine.DEB.2.22.394.2310091251080.3431292@ubuntu-linux-20-04-desktop>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi Stefano,

On 09/10/2023 23:19, Stefano Stabellini wrote:
>>
>> I am not sure this is better. This is a long line to read. But this is a
>> personal opinion.
>>
>> On the technical side, can we easily teach a tool to format this kind of
>> exception? If not, then this should not be an exception we should implement.
> 
> I am not sure I understand what you mean by "can we easily teach a tool
> to format this kind of exception". Do you mean whether we can teach a
> tool to interpret a multiline statement as a single statement?

Sorry for the wording was not clear. I was referring to tools formatting 
the code (e.g. clang-format). Hopefully, at some point, we will finally 
have a way to automatically format the code. So we need a coding style 
that can be easily be checked.

It is not clear to me whether your proposed exception would work. We may 
have to allow longer lines (and this has drawback).

> /* cppcheck tag */
> line1
> /* cppcheck tag */
> line2
> /* cppcheck tag */
> line3
> 
> and that would end up changing the line numbers in the source files so
> the cppcheck report wouldn't match with the original line numbers any
> longer

Would cppcheck accepts tag at the end of the line? If so, the following 
would not modify the line count:

/* cppcheck tag */
line1 /* added cppcheck tag */
line2 /* added cppcheck tag */
line3 /* added cppcheck tag */

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Oct 10 10:53:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 10 Oct 2023 10:53:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614671.955895 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqAMy-0001Oc-Ju; Tue, 10 Oct 2023 10:53:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614671.955895; Tue, 10 Oct 2023 10: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 1qqAMy-0001OV-HK; Tue, 10 Oct 2023 10:53:44 +0000
Received: by outflank-mailman (input) for mailman id 614671;
 Tue, 10 Oct 2023 10:53:43 +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 1qqAMx-0001OP-Mg
 for xen-devel@lists.xenproject.org; Tue, 10 Oct 2023 10:53:43 +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 1qqAMw-00063s-NT; Tue, 10 Oct 2023 10:53:42 +0000
Received: from [15.248.2.156] (helo=[10.24.67.48])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qqAMw-0007LK-H9; Tue, 10 Oct 2023 10:53: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=ixf8k1756FNFD8mFB8+qcMRr7YVyy7RBToj5fk7EBFc=; b=nKD44a1Kf6XzeZxfDqeXt14cuR
	oZCHNdc7aerVlgbNgKu/IpeskEqSvAkeVWjGo2i1ZKyWmn65o2ulHqsCoaIqKqnXIz7xSr7kYpHAQ
	poLVr36mOjhfP2i7/IkE+jADrzQQxTvLMhlqM0wFUS+0gbGXDVX20mBpPvB7KBkVH+74=;
Message-ID: <f9a24504-97e7-4a2e-8601-8e4672b45f88@xen.org>
Date: Tue, 10 Oct 2023 11:53:40 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN PATCH][for-4.19 8/9] xen/types: address Rule 10.1 for
 DECLARE_BITMAP use
Content-Language: en-GB
To: Stefano Stabellini <sstabellini@kernel.org>
Cc: 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,
 jbeulich@suse.com, andrew.cooper3@citrix.com, roger.pau@citrix.com,
 Paul Durrant <paul@xen.org>, George Dunlap <george.dunlap@citrix.com>,
 Wei Liu <wl@xen.org>
References: <cover.1696514677.git.nicola.vetrini@bugseng.com>
 <9642dcb4ab51ec9eaeedf16056fbcd946a3efbea.1696514677.git.nicola.vetrini@bugseng.com>
 <80101145-1958-457a-8c80-cae816ae74aa@xen.org>
 <4b144869407871011c538af48b311c31@bugseng.com>
 <354c6138-509e-4106-9a27-3c75c85b85e5@xen.org>
 <alpine.DEB.2.22.394.2310061746190.3431292@ubuntu-linux-20-04-desktop>
 <d90524b8-70ee-457e-8d6a-9e69f135b81d@xen.org>
 <alpine.DEB.2.22.394.2310091803060.3431292@ubuntu-linux-20-04-desktop>
From: Julien Grall <julien@xen.org>
In-Reply-To: <alpine.DEB.2.22.394.2310091803060.3431292@ubuntu-linux-20-04-desktop>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit



On 10/10/2023 02:09, Stefano Stabellini wrote:
> On Mon, 9 Oct 2023, Julien Grall wrote:
>> On 07/10/2023 02:04, Stefano Stabellini wrote:
>>> On Fri, 6 Oct 2023, Julien Grall wrote:
>>>> Hi Nicola,
>>>>
>>>> On 06/10/2023 11:10, Nicola Vetrini wrote:
>>>>> On 06/10/2023 11:34, Julien Grall wrote:
>>>>>> Hi Nicola,
>>>>>>
>>>>>> On 06/10/2023 09:26, 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
>>>>>>> in macro 'BITS_TO_LONGS'.
>>>>>>>
>>>>>>> A comment in BITS_TO_LONGS is added to make it clear that
>>>>>>> values passed are meant to be positive.
>>>>>>
>>>>>> I am confused. If the value is meant to be positive. Then...
>>>>>>
>>>>>>>
>>>>>>> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
>>>>>>> ---
>>>>>>>     xen/include/xen/iommu.h | 2 +-
>>>>>>>     xen/include/xen/types.h | 1 +
>>>>>>>     2 files changed, 2 insertions(+), 1 deletion(-)
>>>>>>>
>>>>>>> diff --git a/xen/include/xen/iommu.h b/xen/include/xen/iommu.h
>>>>>>> index 0e747b0bbc1c..34aa0b9b5b81 100644
>>>>>>> --- a/xen/include/xen/iommu.h
>>>>>>> +++ b/xen/include/xen/iommu.h
>>>>>>> @@ -360,7 +360,7 @@ struct domain_iommu {
>>>>>>>     #endif
>>>>>>>           /* Features supported by the IOMMU */
>>>>>>> -    DECLARE_BITMAP(features, IOMMU_FEAT_count);
>>>>>>> +    DECLARE_BITMAP(features, (int)IOMMU_FEAT_count);
>>>>>>
>>>>>> ... why do we cast to (int) rather than (unsigned int)? Also, I think
>>>>>> this cast deserve a comment on top because this is not a very obvious
>>>>>> one.
>>>>>>
>>>>>>>           /* Does the guest share HAP mapping with the IOMMU? */
>>>>>>>         bool hap_pt_share;
>>>>>>> diff --git a/xen/include/xen/types.h b/xen/include/xen/types.h
>>>>>>> index aea259db1ef2..936e83d333a0 100644
>>>>>>> --- a/xen/include/xen/types.h
>>>>>>> +++ b/xen/include/xen/types.h
>>>>>>> @@ -22,6 +22,7 @@ typedef signed long ssize_t;
>>>>>>>       typedef __PTRDIFF_TYPE__ ptrdiff_t;
>>>>>>>     +/* Users of this macro are expected to pass a positive value */
>>>>>>>     #define BITS_TO_LONGS(bits) \
>>>>>>>         (((bits)+BITS_PER_LONG-1)/BITS_PER_LONG)
>>>>>>>     #define DECLARE_BITMAP(name,bits) \
>>>>>>
>>>>>> Cheers,
>>>>>
>>>>> See [1] for the reason why I did so. I should have mentioned that in the
>>>>> commit notes, sorry.
>>>>> In short, making BITS_TO_LONGS essentially unsigned would cause a
>>>>> cascade of
>>>>> build errors and
>>>>> possibly other essential type violations.
>>>> Can you share some of the errors?
>>>>
>>>>> If this is to be fixed that way, the effort required
>>>>> is far greater. Either way, a comment on top of can be added, along the
>>>>> lines of:
>>>>>
>>>>> Leaving this as an enum would violate MISRA C:2012 Rule 10.1
>>>>
>>>> I read this as you are simply trying to silence your tool. I think this
>>>> the
>>>> wrong approach as you are now making the code confusing for the reader
>>>> (you
>>>> pass a signed int to a function that is supposed to take a positive
>>>> number).
>>>>
>>>> I appreciate that this will result to more violations at the beginning.
>>>> But
>>>> the whole point of MISRA is to make the code better.
>>>>
>>>> If this is too complex to solve now, then a possible option is to deviate
>>>> for
>>>> the time being.
>>>
>>> I agree on everything Julien's wrote and I was about to suggest to use a
>>> SAF comment to suppress the warning because it is clearer than a int
>>> cast.
>>>
>>> But then I realized that even if BITS_TO_LONGS was fixed, wouldn't still
>>> we have a problem because IOMMU_FEAT_count is an enum?
>>>
>>> Is it the case that IOMMU_FEAT_count would have to be cast regardless,
>>> either to int or unsigned int or whatever to be used in DECLARE_BITMAP?
>>>
>>>
>>> So we have 2 problems here: one problem is DECLARE_BITMAP taking int
>>> instead of unsigned int, and another problem is IOMMU_FEAT_count being
>>> an enum.
>>>
>>> If I got it right, then I would go with the cast to int (like done in
>>> this patch) with a decent comment on top of it.
>>
>> I might be missing something here. But why should we use cast rather than /*
>> SAF-X */ just above? I would have expected we wanted to highlight the
>> violation rather than hiding it.
> 
> My understanding is that the cast is required when converting an enum
> type to an integer type and vice versa. The idea is that we shouldn't do
> implicit conversions as they are error prone, only explicit conversions
> are allowed between enum and integers.

We have a lot of places in Xen using implicit conversion from enum to 
integer (for instance in the P2M code for p2m_type_t). Does ECLAIR 
report all of them? If not, then why?

> 
> So we need either (int) or (unsigned int). The question is which one
> between the two, and theoretically (unsigned int) is better but due to
> the reasons above (int) is the simplest choice.
> 
> Yes, instead of the cast we can also add a SAF-x comment, which refers
> to a deviation that says something along the lines "we could fix this
> with a cast but we prefer a deviation because it makes the code easier
> to read".
> 
> In general my personal preference would be to use a cast, because we
> shouldn't implicitly convert enums to integers.

See above. I'd like to understand whether we are going to sprinkle the 
code with cast. If so, I am afraid I am against this solution.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Oct 10 11:14:28 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 10 Oct 2023 11:14:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614678.955906 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqAgp-0004fW-Ay; Tue, 10 Oct 2023 11:14:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614678.955906; Tue, 10 Oct 2023 11:14: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 1qqAgp-0004fP-6h; Tue, 10 Oct 2023 11:14:15 +0000
Received: by outflank-mailman (input) for mailman id 614678;
 Tue, 10 Oct 2023 11:14: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 1qqAgo-0004fF-2g; Tue, 10 Oct 2023 11:14: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 1qqAgn-0006eP-Uc; Tue, 10 Oct 2023 11:14: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 1qqAgn-00034h-HZ; Tue, 10 Oct 2023 11:14:13 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qqAgn-00063e-H7; Tue, 10 Oct 2023 11:14: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=nulyegkyPNxju1dvcjQBIINZ0pW4ojDMwpc6c/6TC+4=; b=VYjB4BLbLMewbfX5pq9CW5nXBu
	ku6Xs2Jn80zygnFpw8oksC7mX9HZgRXHefunjVgrmW5snXJLkXncRkqvmp8/LQDur/wJFFeFBCgxo
	KUhAfiswFJo5UaNz8WtYNYZIwxSpIjZWxRwuKhn/jvFPM1VJS4IHuekxFiQ134ck6hdw=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183328-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 183328: tolerable FAIL
X-Osstest-Failures:
    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-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-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-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-win7-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:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check: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-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-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-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-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-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-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-arndale:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm: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-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-libvirt-qcow2:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=ffa1437686712045953c33c5e77a4ebdd9973916
X-Osstest-Versions-That:
    xen=ffa1437686712045953c33c5e77a4ebdd9973916
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 10 Oct 2023 11:14:13 +0000

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

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183323
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183323
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 183323
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183323
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183323
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183323
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 183323
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183323
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183323
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 183323
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 183323
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183323
 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-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-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-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-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-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-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-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-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-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-libvirt-qcow2 14 migrate-support-check        fail never pass

version targeted for testing:
 xen                  ffa1437686712045953c33c5e77a4ebdd9973916
baseline version:
 xen                  ffa1437686712045953c33c5e77a4ebdd9973916

Last test of basis   183328  2023-10-10 01:53:43 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 Tue Oct 10 11:41:37 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 10 Oct 2023 11:41:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614687.955916 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqB7C-0000be-JH; Tue, 10 Oct 2023 11:41:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614687.955916; Tue, 10 Oct 2023 11:41: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 1qqB7C-0000bX-Gc; Tue, 10 Oct 2023 11:41:30 +0000
Received: by outflank-mailman (input) for mailman id 614687;
 Tue, 10 Oct 2023 11:41: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=Rlhl=FY=collabora.com=dmitry.osipenko@srs-se1.protection.inumbo.net>)
 id 1qqB7B-0000bR-BX
 for xen-devel@lists.xenproject.org; Tue, 10 Oct 2023 11:41:29 +0000
Received: from madras.collabora.co.uk (madras.collabora.co.uk [46.235.227.172])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id f2bbe16d-6761-11ee-98d3-6d05b1d4d9a1;
 Tue, 10 Oct 2023 13:41:28 +0200 (CEST)
Received: from [192.168.2.166] (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))
 (No client certificate requested)
 (Authenticated sender: dmitry.osipenko)
 by madras.collabora.co.uk (Postfix) with ESMTPSA id 7BD9866072AE;
 Tue, 10 Oct 2023 12:41:25 +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: f2bbe16d-6761-11ee-98d3-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=collabora.com;
	s=mail; t=1696938087;
	bh=Cu2AL7ysZU6zdFI02/HLm99aCHAoK8R3r7kMZ6tAY9c=;
	h=Date:Subject:To:Cc:References:From:In-Reply-To:From;
	b=Ht+//PK6HzadiUhAghbBQ7eBJB3KqcDaMr01ruj7+mGbSxfMHjus+dLFz2R6/Ii4H
	 paekH4nuo4QfB4IkshpdgAXCbpvjicrxeIXsetPl9OjE4N+2YsK9IJ6+sAA6n6hZIc
	 ubWyMthhvGwYuSuoPIIJ1lDObQvuFmhWp6/HXauv6LwRwbG7yaeNHoRParPQNXKeTS
	 zkVymWfv5MyYZHIkSQiaac2k0uxoOPrqJymTg4A7Gml98uC+HRu7ZfyBUgXoZkGf98
	 SYoxrpoQDMUZ/2Mjsa/o+PQHProVoMNLaTUZkRRbgOJ3kjEQvUYT2bWShkWJARbHZI
	 x+NL5DbPykHvw==
Message-ID: <16520a76-7177-f97c-049b-302d8baea616@collabora.com>
Date: Tue, 10 Oct 2023 14:41:22 +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 05/13] virtio-gpu: Configure context init for
 virglrenderer
Content-Language: en-US
To: Huang Rui <ray.huang@amd.com>, 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>,
 =?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-6-ray.huang@amd.com>
From: Dmitry Osipenko <dmitry.osipenko@collabora.com>
In-Reply-To: <20230915111130.24064-6-ray.huang@amd.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit

On 9/15/23 14:11, 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>
> ---
> 
> 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))
The "cc.has_function" doesn't work properly with PKG_CONFIG_PATH. It ignores the the given pkg and uses system includes. Antonio was aware about that problem [1].

[1] https://gitlab.freedesktop.org/Fahien/qemu/-/commit/ea1c252a707940983ccce71e92a292b49496bfcd

Given that virglrenderer 1.0 has been released couple weeks ago, can we make the v1.0 a mandatory requirement for qemu and remove all the ifdefs? I doubt that anyone is going to test newer qemu using older libviglrenderer, all that ifdef code will be bitrotting.

@@ -1060,6 +1060,7 @@ virgl = not_found
 have_vhost_user_gpu = have_tools and targetos == 'linux' and pixman.found()
 if not get_option('virglrenderer').auto() or have_system or have_vhost_user_gpu
   virgl = dependency('virglrenderer',
+                     version: '>=1.0.0',
                      method: 'pkg-config',
                      required: get_option('virglrenderer'))
   if virgl.found()


Best regards,
Dmitry



From xen-devel-bounces@lists.xenproject.org Tue Oct 10 11:48:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 10 Oct 2023 11:48:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614691.955925 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqBEE-0001eK-Ab; Tue, 10 Oct 2023 11:48:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614691.955925; Tue, 10 Oct 2023 11:48: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 1qqBEE-0001eD-87; Tue, 10 Oct 2023 11:48:46 +0000
Received: by outflank-mailman (input) for mailman id 614691;
 Tue, 10 Oct 2023 11:48: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=Rlhl=FY=collabora.com=dmitry.osipenko@srs-se1.protection.inumbo.net>)
 id 1qqBEC-0001e3-LK
 for xen-devel@lists.xenproject.org; Tue, 10 Oct 2023 11:48:44 +0000
Received: from madras.collabora.co.uk (madras.collabora.co.uk
 [2a00:1098:0:82:1000:25:2eeb:e5ab])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id f643d21a-6762-11ee-98d3-6d05b1d4d9a1;
 Tue, 10 Oct 2023 13:48:43 +0200 (CEST)
Received: from [192.168.2.166] (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))
 (No client certificate requested)
 (Authenticated sender: dmitry.osipenko)
 by madras.collabora.co.uk (Postfix) with ESMTPSA id C9F0566072B4;
 Tue, 10 Oct 2023 12:48:40 +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: f643d21a-6762-11ee-98d3-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=collabora.com;
	s=mail; t=1696938522;
	bh=g5jDLGrd4bhczzoKB2hcbsDdHVqqFGszi17qoFClguM=;
	h=Date:Subject:To:Cc:References:From:In-Reply-To:From;
	b=i2WbxqECpdQmDRhXT3GrjI+KJaSAOMjiHE/IK57JwqkNwsI+pdS0gkXdvTQlhMl41
	 bbO6KVcWJXBDUnmEdhygJpn+BfKgBxJKR2U3uSauPkGjshxnD1rtChyeEO3GeKJLKT
	 /lYwZTBKx5/yGKxsvcVR7DaGrsBrISdRleeXXJOmJ0Q5ZYblTqXi2lAexZ5QgkzUhH
	 OEBDQIXhhw6jB7TsNj7rMyXz+jMTusXJzRM6Ixl2qyi6D3OUV/usGa6StTpXLTzeVj
	 xgn8kdgEHZWywic/tSyQJ1GDmCPMEELALRIbzkd4jcwOv7LzWLbd05cH/8iYolREAt
	 1+LR91QFjEHfQ==
Message-ID: <6316694e-2adf-6655-583a-b59be309dccb@collabora.com>
Date: Tue, 10 Oct 2023 14:48:37 +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 13/13] virtio-gpu: Enable virglrenderer render
 server flag for venus
Content-Language: en-US
To: Huang Rui <ray.huang@amd.com>, 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>,
 =?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-14-ray.huang@amd.com>
From: Dmitry Osipenko <dmitry.osipenko@collabora.com>
In-Reply-To: <20230915111130.24064-14-ray.huang@amd.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit

On 9/15/23 14:11, Huang Rui wrote:
> 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);

This change should be squashed into the previous "Initialize Venus" patch.

-- 
Best regards,
Dmitry



From xen-devel-bounces@lists.xenproject.org Tue Oct 10 11:51:17 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 10 Oct 2023 11:51:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614695.955936 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqBGe-000354-N3; Tue, 10 Oct 2023 11:51:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614695.955936; Tue, 10 Oct 2023 11:51: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 1qqBGe-00034x-KU; Tue, 10 Oct 2023 11:51:16 +0000
Received: by outflank-mailman (input) for mailman id 614695;
 Tue, 10 Oct 2023 11:51: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=hNPq=FY=redhat.com=berrange@srs-se1.protection.inumbo.net>)
 id 1qqBGd-00034n-9U
 for xen-devel@lists.xenproject.org; Tue, 10 Oct 2023 11:51: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 4f0c3e45-6763-11ee-9b0d-b553b5be7939;
 Tue, 10 Oct 2023 13:51:13 +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-688-_Z6j7pO0OdGQzsJlpV6pmg-1; Tue, 10 Oct 2023 07:51:08 -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 815681C0651E;
 Tue, 10 Oct 2023 11:51:07 +0000 (UTC)
Received: from redhat.com (unknown [10.42.28.49])
 by smtp.corp.redhat.com (Postfix) with ESMTPS id 1828F15C39;
 Tue, 10 Oct 2023 11:51: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: 4f0c3e45-6763-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
	s=mimecast20190719; t=1696938671;
	h=from:from:reply-to: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=ZOhCdUZSoyDy7RW411TpTrHbpiHeI9FVoha0+mNGq/8=;
	b=eZrkIBQPEMAodMyvZFwadL1uuL8SELPCUbOrPS1isKKRxe5N3pSE3q1CNWWRx8PO+omHB6
	RBdlOK8zgVjlqX7Wq2Pate+ekoeYCSq1ZjQJypEhF9eLE0ZoCKkTxprFxxGdQkmtY6AJLw
	KBM4EwWiYyAC9xLZAa6vWpOl1wZKzG8=
X-MC-Unique: _Z6j7pO0OdGQzsJlpV6pmg-1
Date: Tue, 10 Oct 2023 12:51:02 +0100
From: Daniel =?utf-8?B?UC4gQmVycmFuZ8Op?= <berrange@redhat.com>
To: Dmitry Osipenko <dmitry.osipenko@collabora.com>
Cc: Huang Rui <ray.huang@amd.com>, 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>,
	Alex =?utf-8?Q?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,
	Philippe =?utf-8?Q?Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
	Alyssa Ross <hi@alyssa.is>,
	Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>,
	Alex Deucher <alexander.deucher@amd.com>,
	Christian =?utf-8?B?S8O2bmln?= <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>
Subject: Re: [QEMU PATCH v5 05/13] virtio-gpu: Configure context init for
 virglrenderer
Message-ID: <ZSU6pqcyBxTPTcwc@redhat.com>
Reply-To: Daniel =?utf-8?B?UC4gQmVycmFuZ8Op?= <berrange@redhat.com>
References: <20230915111130.24064-1-ray.huang@amd.com>
 <20230915111130.24064-6-ray.huang@amd.com>
 <16520a76-7177-f97c-049b-302d8baea616@collabora.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <16520a76-7177-f97c-049b-302d8baea616@collabora.com>
User-Agent: Mutt/2.2.9 (2022-11-12)
X-Scanned-By: MIMEDefang 3.4.1 on 10.11.54.1

On Tue, Oct 10, 2023 at 02:41:22PM +0300, Dmitry Osipenko wrote:
> On 9/15/23 14:11, 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>
> > ---
> > 
> > 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))
> The "cc.has_function" doesn't work properly with PKG_CONFIG_PATH. It ignores the the given pkg and uses system includes. Antonio was aware about that problem [1].
> 
> [1] https://gitlab.freedesktop.org/Fahien/qemu/-/commit/ea1c252a707940983ccce71e92a292b49496bfcd
> 
> Given that virglrenderer 1.0 has been released couple weeks ago,
> can we make the v1.0 a mandatory requirement for qemu and remove
> all the ifdefs? I doubt that anyone is going to test newer qemu
> using older libviglrenderer, all that ifdef code will be bitrotting.

We cannot do that. If is is only weeks old, no distro will
have virglrenderer 1.0 present. QEMU has a defined set of
platforms that it targets compatibility with:

  https://www.qemu.org/docs/master/about/build-platforms.html

For newly added functionality we can set the min version to
something newer than the oldest QEMU target platform.

For existing functionality though, we must not regress wrt
the currently supported set of target platforms. So we can
only bump the min version to that present in the oldest
platform we target.

With regards,
Daniel
-- 
|: https://berrange.com      -o-    https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org         -o-            https://fstop138.berrange.com :|
|: https://entangle-photo.org    -o-    https://www.instagram.com/dberrange :|



From xen-devel-bounces@lists.xenproject.org Tue Oct 10 11:57:33 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 10 Oct 2023 11:57:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614700.955945 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqBMa-0004Gc-B3; Tue, 10 Oct 2023 11:57:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614700.955945; Tue, 10 Oct 2023 11: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 1qqBMa-0004GV-88; Tue, 10 Oct 2023 11:57:24 +0000
Received: by outflank-mailman (input) for mailman id 614700;
 Tue, 10 Oct 2023 11:57: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=Rlhl=FY=collabora.com=dmitry.osipenko@srs-se1.protection.inumbo.net>)
 id 1qqBMZ-0004GP-2K
 for xen-devel@lists.xenproject.org; Tue, 10 Oct 2023 11:57:23 +0000
Received: from madras.collabora.co.uk (madras.collabora.co.uk [46.235.227.172])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 2b72ab68-6764-11ee-98d3-6d05b1d4d9a1;
 Tue, 10 Oct 2023 13:57:22 +0200 (CEST)
Received: from [192.168.2.166] (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))
 (No client certificate requested)
 (Authenticated sender: dmitry.osipenko)
 by madras.collabora.co.uk (Postfix) with ESMTPSA id A113366072B4;
 Tue, 10 Oct 2023 12:57:19 +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: 2b72ab68-6764-11ee-98d3-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=collabora.com;
	s=mail; t=1696939041;
	bh=wJYs30MEiuAzJZmbMZ3VI4oXBaOgMnqSjxIcpU2jV2M=;
	h=Date:Subject:To:Cc:References:From:In-Reply-To:From;
	b=DpsPJxqSR+ASF1Kug9+XAPPcWk91pF6GiOxnNLPkP+PruSexjirRJIrWkU3RkAmJf
	 JumiJK2Pqe8x7/D7NAA96dUAgKk5KhQvKiWi02ucceAg6Ad/YNtWydmNcySptbcgNE
	 ooovbQlD9+dty/rlR0XPR+PNtpx0ZaunHXjwotdrgdaPxuI/M4sQFyHct7JNLtXY3f
	 Q8TtXPp69qYhlXU3btZ8s76Xi7SMr80BwW1hpKIyK/XiUfKs//8rYU2G78kTD/4e5b
	 szKx1wvR0A3OiB08tiPxm2tAB6hvTSEiTas0cUe3A5ZHyHPSzz6qcFiELDjoBWOqNu
	 HsspeywEE/rLA==
Message-ID: <ff99baee-a1c7-69cf-bc27-55cf2d0208ab@collabora.com>
Date: Tue, 10 Oct 2023 14:57:17 +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 00/13] Support blob memory and venus on qemu
Content-Language: en-US
To: Huang Rui <ray.huang@amd.com>, 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>,
 =?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>
From: Dmitry Osipenko <dmitry.osipenko@collabora.com>
In-Reply-To: <20230915111130.24064-1-ray.huang@amd.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit

On 9/15/23 14:11, Huang Rui wrote:
> 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.

Venus uses blob buffers. In order to display Venus/VK application using
GL display server, the VIRTIO_GPU_CMD_SET_SCANOUT_BLOB must be
supported. Otherwise Venus itself isn't practically useful because you
can't run VK application with a usual Linux DE because Venus will error
out due to the unsupported command.

The VIRTIO_GPU_CMD_SET_SCANOUT_BLOB support needs to be a part of this
series, IMO. Can we add it to the next patchset version?

-- 
Best regards,
Dmitry



From xen-devel-bounces@lists.xenproject.org Tue Oct 10 12:06:21 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 10 Oct 2023 12:06:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614710.955982 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqBVA-0006WF-Os; Tue, 10 Oct 2023 12:06:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614710.955982; Tue, 10 Oct 2023 12:06: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 1qqBVA-0006W8-Ll; Tue, 10 Oct 2023 12:06:16 +0000
Received: by outflank-mailman (input) for mailman id 614710;
 Tue, 10 Oct 2023 12:06: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=8mmp=FY=xenbits.xen.org=julieng@srs-se1.protection.inumbo.net>)
 id 1qqBV8-00062X-RI
 for xen-devel@lists.xen.org; Tue, 10 Oct 2023 12:06:14 +0000
Received: from mail.xenproject.org (mail.xenproject.org [104.130.215.37])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 6713e493-6765-11ee-98d3-6d05b1d4d9a1;
 Tue, 10 Oct 2023 14:06:13 +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 1qqBUv-0007u2-Lf; Tue, 10 Oct 2023 12:06:01 +0000
Received: from julieng by xenbits.xenproject.org with local (Exim 4.92)
 (envelope-from <julieng@xenbits.xen.org>)
 id 1qqBUv-0002HO-Is; Tue, 10 Oct 2023 12:06: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: 6713e493-6765-11ee-98d3-6d05b1d4d9a1
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=K2lt6cJE5t+D8CxjCaXxlcARhHDQeGgkh+3U8vR7Wxw=; b=u0YN7rzH6hHPf4VBIVkaecmBmB
	m/OqSzv9nRzsdgHFc15xUR3R4/ZDGxZCdmyiL0zWVTzcBFjtGg0NxBauPo0GtOqZR9NVAIeMUJWj+
	bBncunSK6wJWb3UADNKdeV0A8tTSqg+1F/XOvoeNtHwT61ak9jv+gn4RDKgAQ7aRhEC4=;
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 441 v4 (CVE-2023-34324) - Possible deadlock
 in Linux kernel event handling
Message-Id: <E1qqBUv-0002HO-Is@xenbits.xenproject.org>
Date: Tue, 10 Oct 2023 12:06:01 +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-34324 / XSA-441
                               version 4

           Possible deadlock in Linux kernel event handling

UPDATES IN VERSION 4
====================

Public release.

Modified advisory again to state that Arm32 guests are NOT affected.

ISSUE DESCRIPTION
=================

Closing of an event channel in the Linux kernel can result in a deadlock.
This happens when the close is being performed in parallel to an unrelated
Xen console action and the handling of a Xen console interrupt in an
unprivileged guest.

The closing of an event channel is e.g. triggered by removal of a
paravirtual device on the other side. As this action will cause console
messages to be issued on the other side quite often, the chance of
triggering the deadlock is not neglectable.

Note that 32-bit Arm-guests are not affected, as the 32-bit Linux kernel
on Arm doesn't use queued-RW-locks, which are required to trigger the
issue (on Arm32 a waiting writer doesn't block further readers to get
the lock).

IMPACT
======

A (malicious) guest administrator could cause a denial of service (DoS)
in a backend domain (other than dom0) by disabling a paravirtualized
device.

A malicious backend could cause DoS in a guest running a Linux kernel by
disabling a paravirtualized device.

VULNERABLE SYSTEMS
==================

All unprivileged guests running a Linux kernel of version 5.10 and later,
or with the fixes for XSA-332, are vulnerable.

All guest types are vulnerable.

Only x86- and 64-bit Arm-guests are vulnerable.

Arm-guests running in 32-bit mode are not vulnerable.

Guests not using paravirtualized drivers are not vulnerable.

MITIGATION
==========

There is no known mitigation.

CREDITS
=======

This issue was discovered as a bug by Marek Marczykowski-Górecki of
Invisible Things Lab; the security impact was recognised by Jürgen
Groß of SUSE.

RESOLUTION
==========

Applying the 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.

xsa441-linux.patch     Linux

$ sha256sum xsa441*
937406d86dd6dd3e389fdae726a25e5f0e960f7004c314e370cb2369d6715c24  xsa441-linux.patch
$

DEPLOYMENT DURING EMBARGO
=========================

Deployment of the patches and/or mitigations described above (or
others which are substantially similar) on the host and on VMs being
administered and used only by organisations which are members of the Xen
Project Security Issue Predisclosure List is permitted during the embargo,
even on public-facing systems with other 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.

Deployment of patches or mitigations is NOT permitted on VMs being
administered or used by organisations which are not members of the Xen
Project Security Issue Predisclosure List. On those VMs deployment is
permitted only AFTER the embargo ends.

(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/4UyVfoK9kFAmUlNOkMHHBncEB4ZW4u
b3JnAAoJEIP+FMlX6CvZOmAH/3D7dRH11wIRyFZ/nj4pwkPfPXvCDtUmaRXfAaV4
Xe9ODMSevcEQpSFW4VY6eK7DP6kqYMM7myoy+np8Ttnin7+y+PYUJkxM+liqhLyT
fhGi74NNuQLMvGcSKp26aIHAJNtZqWFeRTlEFJHlY4S6ENRoupWd2T2qgnts00NX
R4NzZ8yQFcsmvy9gqgq6MYoa2VIrhQlpiDPX81pA/HViv0GiXab1QSYTyI9jQ2EX
WC19sELYSK2jMAjuejHlw28B+giy0KxcJv6zewn3Jwn8h3ft4AI1OIh4KfOtEad+
wptYB87EM76Lr3B8ipFEvN4sSU1yBnE4iVOgZpAs74mylN8=
=hOm2
-----END PGP SIGNATURE-----

--=separator
Content-Type: application/octet-stream; name="xsa441-linux.patch"
Content-Disposition: attachment; filename="xsa441-linux.patch"
Content-Transfer-Encoding: base64

RnJvbSBiOTUxOGJiMTA1NjM1MTQ0YWNkYmY5MTYwNTgzYWI5ODUyMWFmODll
IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBKdWVyZ2VuIEdyb3Nz
IDxqZ3Jvc3NAc3VzZS5jb20+CkRhdGU6IE1vbiwgMjggQXVnIDIwMjMgMDg6
MDk6NDcgKzAyMDAKU3ViamVjdDogW1BBVENIIHYzXSB4ZW4vZXZlbnRzOiBy
ZXBsYWNlIGV2dGNobl9yd2xvY2sgd2l0aCBSQ1UKCkluIHVucHJpdmlsZWdl
ZCBYZW4gZ3Vlc3RzIGV2ZW50IGhhbmRsaW5nIGNhbiBjYXVzZSBhIGRlYWRs
b2NrIHdpdGgKWGVuIGNvbnNvbGUgaGFuZGxpbmcuIFRoZSBldnRjaG5fcnds
b2NrIGFuZCB0aGUgaHZjX2xvY2sgYXJlIHRha2VuIGluCm9wcG9zaXRlIHNl
cXVlbmNlIGluIF9faHZjX3BvbGwoKSBhbmQgaW4gWGVuIGNvbnNvbGUgSVJR
IGhhbmRsaW5nLgpOb3JtYWxseSB0aGlzIGlzIG5vIHByb2JsZW0sIGFzIHRo
ZSBldnRjaG5fcndsb2NrIGlzIHRha2VuIGFzIGEgcmVhZGVyCmluIGJvdGgg
cGF0aHMsIGJ1dCBhcyBzb29uIGFzIGFuIGV2ZW50IGNoYW5uZWwgaXMgYmVp
bmcgY2xvc2VkLCB0aGUKbG9jayB3aWxsIGJlIHRha2VuIGFzIGEgd3JpdGVy
LCB3aGljaCB3aWxsIGNhdXNlIHJlYWRfbG9jaygpIHRvIGJsb2NrOgoKQ1BV
MCAgICAgICAgICAgICAgICAgICAgIENQVTEgICAgICAgICAgICAgICAgQ1BV
MgooSVJRIGhhbmRsaW5nKSAgICAgICAgICAgKF9faHZjX3BvbGwoKSkgICAg
ICAoY2xvc2luZyBldmVudCBjaGFubmVsKQoKcmVhZF9sb2NrKGV2dGNobl9y
d2xvY2spCiAgICAgICAgICAgICAgICAgICAgICAgICBzcGluX2xvY2soaHZj
X2xvY2spCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIHdyaXRlX2xvY2soZXZ0Y2huX3J3bG9jaykKICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtibG9ja3Nd
CnNwaW5fbG9jayhodmNfbG9jaykKICAgIFtibG9ja3NdCiAgICAgICAgICAg
ICAgICAgICAgICAgIHJlYWRfbG9jayhldnRjaG5fcndsb2NrKQogICAgICAg
ICAgICAgICAgICAgICAgICAgICAgW2Jsb2NrcyBkdWUgdG8gd3JpdGVyIHdh
aXRpbmcsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYW5kIG5vdCBp
bl9pbnRlcnJ1cHQoKV0KClRoaXMgaXNzdWUgY2FuIGJlIGF2b2lkZWQgYnkg
cmVwbGFjaW5nIGV2dGNobl9yd2xvY2sgd2l0aCBSQ1UgaW4KeGVuX2ZyZWVf
aXJxKCkuIE5vdGUgdGhhdCBSQ1UgaXMgdXNlZCBvbmx5IHRvIGRlbGF5IGZy
ZWVpbmcgb2YgdGhlCmlycV9pbmZvIG1lbW9yeS4gVGhlcmUgaXMgbm8gUkNV
IGJhc2VkIGRlcmVmZXJlbmNpbmcgb3IgcmVwbGFjZW1lbnQgb2YKcG9pbnRl
cnMgaW52b2x2ZWQuCgpJbiBvcmRlciB0byBhdm9pZCBwb3RlbnRpYWwgcmFj
ZXMgYmV0d2VlbiByZW1vdmluZyB0aGUgaXJxX2luZm8KcmVmZXJlbmNlIGFu
ZCBoYW5kbGluZyBvZiBpbnRlcnJ1cHRzLCBzZXQgdGhlIGlycV9pbmZvIHBv
aW50ZXIgdG8gTlVMTApvbmx5IHdoZW4gZnJlZWluZyBpdHMgbWVtb3J5LiBU
aGUgSVJRIGl0c2VsZiBtdXN0IGJlIGZyZWVkIGF0IHRoYXQKdGltZSwgdG9v
LCBhcyBvdGhlcndpc2UgdGhlIHNhbWUgSVJRIG51bWJlciBjb3VsZCBiZSBh
bGxvY2F0ZWQgYWdhaW4KYmVmb3JlIGhhbmRsaW5nIG9mIHRoZSBvbGQgaW5z
dGFuY2Ugd291bGQgaGF2ZSBiZWVuIGZpbmlzaGVkLgoKVGhpcyBpcyBYU0Et
NDQxIC8gQ1ZFLTIwMjMtMzQzMjQuCgpSZXBvcnRlZC1ieTogTWFyZWsgTWFy
Y3p5a293c2tpLUfDs3JlY2tpIDxtYXJtYXJla0BpbnZpc2libGV0aGluZ3Ns
YWIuY29tPgpGaXhlczogNTRjOWRlODk4OTVlICgieGVuL2V2ZW50czogYWRk
IGEgbmV3ICJsYXRlIEVPSSIgZXZ0Y2huIGZyYW1ld29yayIpClNpZ25lZC1v
ZmYtYnk6IEp1ZXJnZW4gR3Jvc3MgPGpncm9zc0BzdXNlLmNvbT4KUmV2aWV3
ZWQtYnk6IEp1bGllbiBHcmFsbCA8amdyYWxsQGFtYXpvbi5jb20+Ci0tLQog
ZHJpdmVycy94ZW4vZXZlbnRzL2V2ZW50c19iYXNlLmMgfCA4NyArKysrKysr
KysrKysrKysrKy0tLS0tLS0tLS0tLS0tLQogMSBmaWxlIGNoYW5nZWQsIDQ2
IGluc2VydGlvbnMoKyksIDQxIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBh
L2RyaXZlcnMveGVuL2V2ZW50cy9ldmVudHNfYmFzZS5jIGIvZHJpdmVycy94
ZW4vZXZlbnRzL2V2ZW50c19iYXNlLmMKaW5kZXggMGJiODZlNmM0ZDBhLi4x
YjIxMzZmZTBmYTUgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMveGVuL2V2ZW50cy9l
dmVudHNfYmFzZS5jCisrKyBiL2RyaXZlcnMveGVuL2V2ZW50cy9ldmVudHNf
YmFzZS5jCkBAIC0zMyw2ICszMyw3IEBACiAjaW5jbHVkZSA8bGludXgvc2xh
Yi5oPgogI2luY2x1ZGUgPGxpbnV4L2lycW5yLmg+CiAjaW5jbHVkZSA8bGlu
dXgvcGNpLmg+CisjaW5jbHVkZSA8bGludXgvcmN1cGRhdGUuaD4KICNpbmNs
dWRlIDxsaW51eC9zcGlubG9jay5oPgogI2luY2x1ZGUgPGxpbnV4L2NwdWhv
dHBsdWcuaD4KICNpbmNsdWRlIDxsaW51eC9hdG9taWMuaD4KQEAgLTk2LDYg
Kzk3LDcgQEAgZW51bSB4ZW5faXJxX3R5cGUgewogc3RydWN0IGlycV9pbmZv
IHsKIAlzdHJ1Y3QgbGlzdF9oZWFkIGxpc3Q7CiAJc3RydWN0IGxpc3RfaGVh
ZCBlb2lfbGlzdDsKKwlzdHJ1Y3QgcmN1X3dvcmsgcndvcms7CiAJc2hvcnQg
cmVmY250OwogCXU4IHNwdXJpb3VzX2NudDsKIAl1OCBpc19hY2NvdW50ZWQ7
CkBAIC0xNDYsMjMgKzE0OCwxMyBAQCBjb25zdCBzdHJ1Y3QgZXZ0Y2huX29w
cyAqZXZ0Y2huX29wczsKICAqLwogc3RhdGljIERFRklORV9NVVRFWChpcnFf
bWFwcGluZ191cGRhdGVfbG9jayk7CiAKLS8qCi0gKiBMb2NrIHByb3RlY3Rp
bmcgZXZlbnQgaGFuZGxpbmcgbG9vcCBhZ2FpbnN0IHJlbW92aW5nIGV2ZW50
IGNoYW5uZWxzLgotICogQWRkaW5nIG9mIGV2ZW50IGNoYW5uZWxzIGlzIG5v
IGlzc3VlIGFzIHRoZSBhc3NvY2lhdGVkIElSUSBiZWNvbWVzIGFjdGl2ZQot
ICogb25seSBhZnRlciBldmVyeXRoaW5nIGlzIHNldHVwIChiZWZvcmUgcmVx
dWVzdF9bdGhyZWFkZWRfXWlycSgpIHRoZSBoYW5kbGVyCi0gKiBjYW4ndCBi
ZSBlbnRlcmVkIGZvciBhbiBldmVudCwgYXMgdGhlIGV2ZW50IGNoYW5uZWwg
d2lsbCBiZSB1bm1hc2tlZCBvbmx5Ci0gKiB0aGVuKS4KLSAqLwotc3RhdGlj
IERFRklORV9SV0xPQ0soZXZ0Y2huX3J3bG9jayk7Ci0KIC8qCiAgKiBMb2Nr
IGhpZXJhcmNoeToKICAqCiAgKiBpcnFfbWFwcGluZ191cGRhdGVfbG9jawot
ICogICBldnRjaG5fcndsb2NrCi0gKiAgICAgSVJRLWRlc2MgbG9jawotICog
ICAgICAgcGVyY3B1IGVvaV9saXN0X2xvY2sKLSAqICAgICAgICAgaXJxX2lu
Zm8tPmxvY2sKKyAqICAgSVJRLWRlc2MgbG9jaworICogICAgIHBlcmNwdSBl
b2lfbGlzdF9sb2NrCisgKiAgICAgICBpcnFfaW5mby0+bG9jawogICovCiAK
IHN0YXRpYyBMSVNUX0hFQUQoeGVuX2lycV9saXN0X2hlYWQpOwpAQCAtMzA2
LDYgKzI5OCwyMiBAQCBzdGF0aWMgdm9pZCBjaGFubmVsc19vbl9jcHVfaW5j
KHN0cnVjdCBpcnFfaW5mbyAqaW5mbykKIAlpbmZvLT5pc19hY2NvdW50ZWQg
PSAxOwogfQogCitzdGF0aWMgdm9pZCBkZWxheWVkX2ZyZWVfaXJxKHN0cnVj
dCB3b3JrX3N0cnVjdCAqd29yaykKK3sKKwlzdHJ1Y3QgaXJxX2luZm8gKmlu
Zm8gPSBjb250YWluZXJfb2YodG9fcmN1X3dvcmsod29yayksIHN0cnVjdCBp
cnFfaW5mbywKKwkJCQkJICAgICByd29yayk7CisJdW5zaWduZWQgaW50IGly
cSA9IGluZm8tPmlycTsKKworCS8qIFJlbW92ZSB0aGUgaW5mbyBwb2ludGVy
IG9ubHkgbm93LCB3aXRoIG5vIHBvdGVudGlhbCB1c2VycyBsZWZ0LiAqLwor
CXNldF9pbmZvX2Zvcl9pcnEoaXJxLCBOVUxMKTsKKworCWtmcmVlKGluZm8p
OworCisJLyogTGVnYWN5IElSUSBkZXNjcmlwdG9ycyBhcmUgbWFuYWdlZCBi
eSB0aGUgYXJjaC4gKi8KKwlpZiAoaXJxID49IG5yX2xlZ2FjeV9pcnFzKCkp
CisJCWlycV9mcmVlX2Rlc2MoaXJxKTsKK30KKwogLyogQ29uc3RydWN0b3Jz
IGZvciBwYWNrZWQgSVJRIGluZm9ybWF0aW9uLiAqLwogc3RhdGljIGludCB4
ZW5faXJxX2luZm9fY29tbW9uX3NldHVwKHN0cnVjdCBpcnFfaW5mbyAqaW5m
bywKIAkJCQkgICAgIHVuc2lnbmVkIGlycSwKQEAgLTY2OCwzMyArNjc2LDM2
IEBAIHN0YXRpYyB2b2lkIHhlbl9pcnFfbGF0ZWVvaV93b3JrZXIoc3RydWN0
IHdvcmtfc3RydWN0ICp3b3JrKQogCiAJZW9pID0gY29udGFpbmVyX29mKHRv
X2RlbGF5ZWRfd29yayh3b3JrKSwgc3RydWN0IGxhdGVlb2lfd29yaywgZGVs
YXllZCk7CiAKLQlyZWFkX2xvY2tfaXJxc2F2ZSgmZXZ0Y2huX3J3bG9jaywg
ZmxhZ3MpOworCXJjdV9yZWFkX2xvY2soKTsKIAogCXdoaWxlICh0cnVlKSB7
Ci0JCXNwaW5fbG9jaygmZW9pLT5lb2lfbGlzdF9sb2NrKTsKKwkJc3Bpbl9s
b2NrX2lycXNhdmUoJmVvaS0+ZW9pX2xpc3RfbG9jaywgZmxhZ3MpOwogCiAJ
CWluZm8gPSBsaXN0X2ZpcnN0X2VudHJ5X29yX251bGwoJmVvaS0+ZW9pX2xp
c3QsIHN0cnVjdCBpcnFfaW5mbywKIAkJCQkJCWVvaV9saXN0KTsKIAotCQlp
ZiAoaW5mbyA9PSBOVUxMIHx8IG5vdyA8IGluZm8tPmVvaV90aW1lKSB7Ci0J
CQlzcGluX3VubG9jaygmZW9pLT5lb2lfbGlzdF9sb2NrKTsKKwkJaWYgKGlu
Zm8gPT0gTlVMTCkKKwkJCWJyZWFrOworCisJCWlmIChub3cgPCBpbmZvLT5l
b2lfdGltZSkgeworCQkJbW9kX2RlbGF5ZWRfd29ya19vbihpbmZvLT5lb2lf
Y3B1LCBzeXN0ZW1fd3EsCisJCQkJCSAgICAmZW9pLT5kZWxheWVkLAorCQkJ
CQkgICAgaW5mby0+ZW9pX3RpbWUgLSBub3cpOwogCQkJYnJlYWs7CiAJCX0K
IAogCQlsaXN0X2RlbF9pbml0KCZpbmZvLT5lb2lfbGlzdCk7CiAKLQkJc3Bp
bl91bmxvY2soJmVvaS0+ZW9pX2xpc3RfbG9jayk7CisJCXNwaW5fdW5sb2Nr
X2lycXJlc3RvcmUoJmVvaS0+ZW9pX2xpc3RfbG9jaywgZmxhZ3MpOwogCiAJ
CWluZm8tPmVvaV90aW1lID0gMDsKIAogCQl4ZW5faXJxX2xhdGVlb2lfbG9j
a2VkKGluZm8sIGZhbHNlKTsKIAl9CiAKLQlpZiAoaW5mbykKLQkJbW9kX2Rl
bGF5ZWRfd29ya19vbihpbmZvLT5lb2lfY3B1LCBzeXN0ZW1fd3EsCi0JCQkJ
ICAgICZlb2ktPmRlbGF5ZWQsIGluZm8tPmVvaV90aW1lIC0gbm93KTsKKwlz
cGluX3VubG9ja19pcnFyZXN0b3JlKCZlb2ktPmVvaV9saXN0X2xvY2ssIGZs
YWdzKTsKIAotCXJlYWRfdW5sb2NrX2lycXJlc3RvcmUoJmV2dGNobl9yd2xv
Y2ssIGZsYWdzKTsKKwlyY3VfcmVhZF91bmxvY2soKTsKIH0KIAogc3RhdGlj
IHZvaWQgeGVuX2NwdV9pbml0X2VvaSh1bnNpZ25lZCBpbnQgY3B1KQpAQCAt
NzA5LDE2ICs3MjAsMTUgQEAgc3RhdGljIHZvaWQgeGVuX2NwdV9pbml0X2Vv
aSh1bnNpZ25lZCBpbnQgY3B1KQogdm9pZCB4ZW5faXJxX2xhdGVlb2kodW5z
aWduZWQgaW50IGlycSwgdW5zaWduZWQgaW50IGVvaV9mbGFncykKIHsKIAlz
dHJ1Y3QgaXJxX2luZm8gKmluZm87Ci0JdW5zaWduZWQgbG9uZyBmbGFnczsK
IAotCXJlYWRfbG9ja19pcnFzYXZlKCZldnRjaG5fcndsb2NrLCBmbGFncyk7
CisJcmN1X3JlYWRfbG9jaygpOwogCiAJaW5mbyA9IGluZm9fZm9yX2lycShp
cnEpOwogCiAJaWYgKGluZm8pCiAJCXhlbl9pcnFfbGF0ZWVvaV9sb2NrZWQo
aW5mbywgZW9pX2ZsYWdzICYgWEVOX0VPSV9GTEFHX1NQVVJJT1VTKTsKIAot
CXJlYWRfdW5sb2NrX2lycXJlc3RvcmUoJmV2dGNobl9yd2xvY2ssIGZsYWdz
KTsKKwlyY3VfcmVhZF91bmxvY2soKTsKIH0KIEVYUE9SVF9TWU1CT0xfR1BM
KHhlbl9pcnFfbGF0ZWVvaSk7CiAKQEAgLTczMiw2ICs3NDIsNyBAQCBzdGF0
aWMgdm9pZCB4ZW5faXJxX2luaXQodW5zaWduZWQgaXJxKQogCiAJaW5mby0+
dHlwZSA9IElSUVRfVU5CT1VORDsKIAlpbmZvLT5yZWZjbnQgPSAtMTsKKwlJ
TklUX1JDVV9XT1JLKCZpbmZvLT5yd29yaywgZGVsYXllZF9mcmVlX2lycSk7
CiAKIAlzZXRfaW5mb19mb3JfaXJxKGlycSwgaW5mbyk7CiAJLyoKQEAgLTc4
OSwzMSArODAwLDE4IEBAIHN0YXRpYyBpbnQgX19tdXN0X2NoZWNrIHhlbl9h
bGxvY2F0ZV9pcnFfZ3NpKHVuc2lnbmVkIGdzaSkKIHN0YXRpYyB2b2lkIHhl
bl9mcmVlX2lycSh1bnNpZ25lZCBpcnEpCiB7CiAJc3RydWN0IGlycV9pbmZv
ICppbmZvID0gaW5mb19mb3JfaXJxKGlycSk7Ci0JdW5zaWduZWQgbG9uZyBm
bGFnczsKIAogCWlmIChXQVJOX09OKCFpbmZvKSkKIAkJcmV0dXJuOwogCi0J
d3JpdGVfbG9ja19pcnFzYXZlKCZldnRjaG5fcndsb2NrLCBmbGFncyk7Ci0K
IAlpZiAoIWxpc3RfZW1wdHkoJmluZm8tPmVvaV9saXN0KSkKIAkJbGF0ZWVv
aV9saXN0X2RlbChpbmZvKTsKIAogCWxpc3RfZGVsKCZpbmZvLT5saXN0KTsK
IAotCXNldF9pbmZvX2Zvcl9pcnEoaXJxLCBOVUxMKTsKLQogCVdBUk5fT04o
aW5mby0+cmVmY250ID4gMCk7CiAKLQl3cml0ZV91bmxvY2tfaXJxcmVzdG9y
ZSgmZXZ0Y2huX3J3bG9jaywgZmxhZ3MpOwotCi0Ja2ZyZWUoaW5mbyk7Ci0K
LQkvKiBMZWdhY3kgSVJRIGRlc2NyaXB0b3JzIGFyZSBtYW5hZ2VkIGJ5IHRo
ZSBhcmNoLiAqLwotCWlmIChpcnEgPCBucl9sZWdhY3lfaXJxcygpKQotCQly
ZXR1cm47Ci0KLQlpcnFfZnJlZV9kZXNjKGlycSk7CisJcXVldWVfcmN1X3dv
cmsoc3lzdGVtX3dxLCAmaW5mby0+cndvcmspOwogfQogCiAvKiBOb3QgY2Fs
bGVkIGZvciBsYXRlZW9pIGV2ZW50cy4gKi8KQEAgLTE3MTEsNyArMTcwOSwx
NCBAQCBpbnQgeGVuX2V2dGNobl9kb191cGNhbGwodm9pZCkKIAlpbnQgY3B1
ID0gc21wX3Byb2Nlc3Nvcl9pZCgpOwogCXN0cnVjdCBldnRjaG5fbG9vcF9j
dHJsIGN0cmwgPSB7IDAgfTsKIAotCXJlYWRfbG9jaygmZXZ0Y2huX3J3bG9j
ayk7CisJLyoKKwkgKiBXaGVuIGNsb3NpbmcgYW4gZXZlbnQgY2hhbm5lbCB0
aGUgYXNzb2NpYXRlZCBJUlEgbXVzdCBub3QgYmUgZnJlZWQKKwkgKiB1bnRp
bCBhbGwgY3B1cyBoYXZlIGxlZnQgdGhlIGV2ZW50IGhhbmRsaW5nIGxvb3Au
IFRoaXMgaXMgZW5zdXJlZAorCSAqIGJ5IHRha2luZyB0aGUgcmN1X3JlYWRf
bG9jaygpIHdoaWxlIGhhbmRsaW5nIGV2ZW50cywgYXMgZnJlZWluZyBvZgor
CSAqIHRoZSBJUlEgaXMgaGFuZGxlZCB2aWEgcXVldWVfcmN1X3dvcmsoKSBf
YWZ0ZXJfIGNsb3NpbmcgdGhlIGV2ZW50CisJICogY2hhbm5lbC4KKwkgKi8K
KwlyY3VfcmVhZF9sb2NrKCk7CiAKIAlkbyB7CiAJCXZjcHVfaW5mby0+ZXZ0
Y2huX3VwY2FsbF9wZW5kaW5nID0gMDsKQEAgLTE3MjQsNyArMTcyOSw3IEBA
IGludCB4ZW5fZXZ0Y2huX2RvX3VwY2FsbCh2b2lkKQogCiAJfSB3aGlsZSAo
dmNwdV9pbmZvLT5ldnRjaG5fdXBjYWxsX3BlbmRpbmcpOwogCi0JcmVhZF91
bmxvY2soJmV2dGNobl9yd2xvY2spOworCXJjdV9yZWFkX3VubG9jaygpOwog
CiAJLyoKIAkgKiBJbmNyZW1lbnQgaXJxX2Vwb2NoIG9ubHkgbm93IHRvIGRl
ZmVyIEVPSXMgb25seSBmb3IKLS0gCjIuMzUuMwoK

--=separator--


From xen-devel-bounces@lists.xenproject.org Tue Oct 10 12:06:21 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 10 Oct 2023 12:06:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614714.956017 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqBVD-0007Hz-QR; Tue, 10 Oct 2023 12:06:19 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614714.956017; Tue, 10 Oct 2023 12:06: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 1qqBVD-0007EY-KF; Tue, 10 Oct 2023 12:06:19 +0000
Received: by outflank-mailman (input) for mailman id 614714;
 Tue, 10 Oct 2023 12:06: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=8mmp=FY=xenbits.xen.org=julieng@srs-se1.protection.inumbo.net>)
 id 1qqBVB-00062X-Ri
 for xen-devel@lists.xen.org; Tue, 10 Oct 2023 12:06:18 +0000
Received: from mail.xenproject.org (mail.xenproject.org [104.130.215.37])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 68f43463-6765-11ee-98d3-6d05b1d4d9a1;
 Tue, 10 Oct 2023 14:06:15 +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 1qqBUy-0007uj-UZ; Tue, 10 Oct 2023 12:06:04 +0000
Received: from julieng by xenbits.xenproject.org with local (Exim 4.92)
 (envelope-from <julieng@xenbits.xen.org>)
 id 1qqBUy-0002en-TW; Tue, 10 Oct 2023 12:06: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: 68f43463-6765-11ee-98d3-6d05b1d4d9a1
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=IxyoajQA7oj3V1k0eBDpKicAZftFOtI4ajEAmLoYvns=; b=FquLX7zIOX4YH7y6gpikV9yavf
	3jLS+3gdq869ylbBR4kMJrpbw1TnWgYyxeoNo54QF/PMAZ2YsbhRQuvB10sZBG6zNrqEX1gIwO+9I
	nL4PDXN1J3ed9Lo0fr+1PRPhfak9BaUvb6rhdZvAac4XIb6xZiMpqM+9Uyj7ioOxI2gk=;
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 442 v2 (CVE-2023-34326) - x86/AMD: missing
 IOMMU TLB flushing
Message-Id: <E1qqBUy-0002en-TW@xenbits.xenproject.org>
Date: Tue, 10 Oct 2023 12:06:04 +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-34326 / XSA-442
                               version 2

                  x86/AMD: missing IOMMU TLB flushing

UPDATES IN VERSION 2
====================

Public release.

ISSUE DESCRIPTION
=================

The caching invalidation guidelines from the AMD-Vi specification (48882—Rev
3.07-PUB—Oct 2022) is incorrect on some hardware, as devices will malfunction
(see stale DMA mappings) if some fields of the DTE are updated but the IOMMU
TLB is not flushed.

Such stale DMA mappings can point to memory ranges not owned by the guest, thus
allowing access to unindented memory regions.

IMPACT
======

Privilege escalation, Denial of Service (DoS) affecting the entire host,
and information leaks.

VULNERABLE SYSTEMS
==================

All Xen versions supporting PCI passthrough are affected.

Only x86 AMD systems with IOMMU hardware are vulnerable.

Only x86 guests which have physical devices passed through to them can
leverage the vulnerability.

MITIGATION
==========

Not passing through physical devices to guests will avoid the vulnerability.

CREDITS
=======

This issue was discovered by Roger Pau Monné of XenServer.

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.

xsa442.patch           xen-unstable
xsa442-4.17.patch      Xen 4.17.x - Xen 4.16.x
xsa442-4.15.patch      Xen 4.15.x

$ sha256sum xsa442*
e897c24953f33e24557666975662f74bd634e354108e7df293c1f56179ee97a9  xsa442.patch
e7413df9a217d674f8fa71cdcc18adc98201f4fca502a3bb632424e8afc32717  xsa442-4.15.patch
0690fab47c521cae2e14e4c0cf5fcb16a7e4278ef057413ce42e0611b0739070  xsa442-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/4UyVfoK9kFAmUlNOoMHHBncEB4ZW4u
b3JnAAoJEIP+FMlX6CvZ9rkH/RHZ6djmDOQJhRPgxJnzXnkgd36RNXkZtnMzVeYD
V4FP0QwvrkEjTfcPy/iDzkpbL9YPcr8DcXubmOuI+VxjFAlIyVkRIqOMaVKH509V
ewlSMXhCLI+yG6s61K0PqQO4KPtzpKXlevqsSn/HF8ZCIyxXvd3UfNX08342RZZZ
Aw6Wr6Q08TvDWE4CTuc1jxTcRiTHvdSd2rSAZznJbaluL/wmgoGvI2mG/NmYPe6E
aItatb9C0mPfmT/meqa3JOzJ/IOfFw+TGPkXvfTu5C2b8aCfXjcGf26r33mvkQO8
A4wKf6wisxs8ZVl0qDB0u+u2N8ihUfjopLH7QTiQzg4StyY=
=oXbA
-----END PGP SIGNATURE-----

--=separator
Content-Type: application/octet-stream; name="xsa442.patch"
Content-Disposition: attachment; filename="xsa442.patch"
Content-Transfer-Encoding: base64

RnJvbSA0ZjhjOTcxOWE0ZjhkY2U4ZThhZjZkZWQzOTgyMTY4YWUwZTkwN2Nm
IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBSb2dlciBQYXUgTW9u
bmUgPHJvZ2VyLnBhdUBjaXRyaXguY29tPgpEYXRlOiBUdWUsIDEzIEp1biAy
MDIzIDE1OjAxOjA1ICswMjAwClN1YmplY3Q6IFtQQVRDSF0gaW9tbXUvYW1k
LXZpOiBmbHVzaCBJT01NVSBUTEIgd2hlbiBmbHVzaGluZyB0aGUgRFRFCk1J
TUUtVmVyc2lvbjogMS4wCkNvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjsgY2hh
cnNldD1VVEYtOApDb250ZW50LVRyYW5zZmVyLUVuY29kaW5nOiA4Yml0CgpU
aGUgY2FjaGluZyBpbnZhbGlkYXRpb24gZ3VpZGVsaW5lcyBmcm9tIHRoZSBB
TUQtVmkgc3BlY2lmaWNhdGlvbiAoNDg4ODLigJRSZXYKMy4wNy1QVULigJRP
Y3QgMjAyMikgc2VlbSB0byBiZSBtaXNsZWFkaW5nIG9uIHNvbWUgaGFyZHdh
cmUsIGFzIGRldmljZXMgd2lsbAptYWxmdW5jdGlvbiAoc2VlIHN0YWxlIERN
QSBtYXBwaW5ncykgaWYgc29tZSBmaWVsZHMgb2YgdGhlIERURSBhcmUgdXBk
YXRlZCBidXQKdGhlIElPTU1VIFRMQiBpcyBub3QgZmx1c2hlZC4gVGhpcyBo
YXMgYmVlbiBvYnNlcnZlZCBpbiBwcmFjdGljZSBvbiBBTUQKc3lzdGVtcy4g
IER1ZSB0byB0aGUgbGFjayBvZiBndWlkYW5jZSBmcm9tIHRoZSBjdXJyZW50
bHkgcHVibGlzaGVkCnNwZWNpZmljYXRpb24gdGhpcyBwYXRjaCBhaW1zIHRv
IGluY3JlYXNlIHRoZSBmbHVzaGluZyBkb25lIGluIG9yZGVyIHRvIHByZXZl
bnQKZGV2aWNlIG1hbGZ1bmN0aW9uLgoKSW4gb3JkZXIgdG8gZml4LCBpc3N1
ZSBhbiBJTlZBTElEQVRFX0lPTU1VX1BBR0VTIGNvbW1hbmQgZnJvbQphbWRf
aW9tbXVfZmx1c2hfZGV2aWNlKCksIGZsdXNoaW5nIGFsbCB0aGUgYWRkcmVz
cyBzcGFjZS4gIE5vdGUgdGhpcyByZXF1aXJlcwpjYWxsZXJzIHRvIGJlIGFk
anVzdGVkIGluIG9yZGVyIHRvIHBhc3MgdGhlIERvbUlEIG9uIHRoZSBEVEUg
cHJldmlvdXMgdG8gdGhlCm1vZGlmaWNhdGlvbi4KClNvbWUgY2FsbCBzaXRl
cyBkb24ndCBwcm92aWRlIGEgdmFsaWQgRG9tSUQgdG8gYW1kX2lvbW11X2Zs
dXNoX2RldmljZSgpIGluCm9yZGVyIHRvIGF2b2lkIHRoZSBmbHVzaC4gIFRo
YXQncyBiZWNhdXNlIHRoZSBkZXZpY2UgaGFkIGFkZHJlc3MgdHJhbnNsYXRp
b25zCmRpc2FibGVkIGFuZCBoZW5jZSB0aGUgcHJldmlvdXMgRG9tSUQgb24g
dGhlIERURSBpcyBub3QgdmFsaWQuICBOb3RlIHRoZQpjdXJyZW50IGxvZ2lj
IHJlbGllcyBvbiB0aGUgZW50aXR5IGRpc2FibGluZyBhZGRyZXNzIHRyYW5z
bGF0aW9ucyB0byBhbHNvIGZsdXNoCnRoZSBUTEIgb2YgdGhlIGluIHVzZSBE
b21JRC4KCkRldmljZSBJL08gVExCIGZsdXNoaW5nIHdoZW4gQVRTIGFyZSBl
bmFibGVkIGlzIG5vdCBjb3ZlcmVkIGJ5IHRoZSBjdXJyZW50CmNoYW5nZSwg
YXMgQVRTIHVzYWdlIGlzIG5vdCBzZWN1cml0eSBzdXBwb3J0ZWQuCgpUaGlz
IGlzIFhTQS00NDIgLyBDVkUtMjAyMy0zNDMyNgoKU2lnbmVkLW9mZi1ieTog
Um9nZXIgUGF1IE1vbm7DqSA8cm9nZXIucGF1QGNpdHJpeC5jb20+ClJldmll
d2VkLWJ5OiBKYW4gQmV1bGljaCA8amJldWxpY2hAc3VzZS5jb20+Ci0tLQog
eGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvYW1kL2lvbW11LmggICAgICAgICB8
ICAzICsrLQogeGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvYW1kL2lvbW11X2Nt
ZC5jICAgICB8IDEwICsrKysrKysrKy0KIHhlbi9kcml2ZXJzL3Bhc3N0aHJv
dWdoL2FtZC9pb21tdV9ndWVzdC5jICAgfCAgNSArKystLQogeGVuL2RyaXZl
cnMvcGFzc3Rocm91Z2gvYW1kL2lvbW11X2luaXQuYyAgICB8ICA2ICsrKysr
LQogeGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvYW1kL3BjaV9hbWRfaW9tbXUu
YyB8IDE0ICsrKysrKysrKystLS0tCiA1IGZpbGVzIGNoYW5nZWQsIDI5IGlu
c2VydGlvbnMoKyksIDkgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEveGVu
L2RyaXZlcnMvcGFzc3Rocm91Z2gvYW1kL2lvbW11LmggYi94ZW4vZHJpdmVy
cy9wYXNzdGhyb3VnaC9hbWQvaW9tbXUuaAppbmRleCAwMjExMWQyM2RmYzIu
LmQ0NDE2ZWJjNDM4OSAxMDA2NDQKLS0tIGEveGVuL2RyaXZlcnMvcGFzc3Ro
cm91Z2gvYW1kL2lvbW11LmgKKysrIGIveGVuL2RyaXZlcnMvcGFzc3Rocm91
Z2gvYW1kL2lvbW11LmgKQEAgLTI4Myw3ICsyODMsOCBAQCB2b2lkIGFtZF9p
b21tdV9mbHVzaF9wYWdlcyhzdHJ1Y3QgZG9tYWluICpkLCB1bnNpZ25lZCBs
b25nIGRmbiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVk
IGludCBvcmRlcik7CiB2b2lkIGFtZF9pb21tdV9mbHVzaF9pb3RsYih1OCBk
ZXZmbiwgY29uc3Qgc3RydWN0IHBjaV9kZXYgKnBkZXYsCiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBkYWRkcl90IGRhZGRyLCB1bnNpZ25lZCBpbnQg
b3JkZXIpOwotdm9pZCBhbWRfaW9tbXVfZmx1c2hfZGV2aWNlKHN0cnVjdCBh
bWRfaW9tbXUgKmlvbW11LCB1aW50MTZfdCBiZGYpOwordm9pZCBhbWRfaW9t
bXVfZmx1c2hfZGV2aWNlKHN0cnVjdCBhbWRfaW9tbXUgKmlvbW11LCB1aW50
MTZfdCBiZGYsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgZG9taWRf
dCBkb21pZCk7CiB2b2lkIGFtZF9pb21tdV9mbHVzaF9pbnRyZW1hcChzdHJ1
Y3QgYW1kX2lvbW11ICppb21tdSwgdWludDE2X3QgYmRmKTsKIHZvaWQgYW1k
X2lvbW11X2ZsdXNoX2FsbF9jYWNoZXMoc3RydWN0IGFtZF9pb21tdSAqaW9t
bXUpOwogCmRpZmYgLS1naXQgYS94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC9h
bWQvaW9tbXVfY21kLmMgYi94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC9hbWQv
aW9tbXVfY21kLmMKaW5kZXggNDBkZGYzNjZiYjRkLi5jYjI4YjM2YWJjMzgg
MTAwNjQ0Ci0tLSBhL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL2FtZC9pb21t
dV9jbWQuYworKysgYi94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC9hbWQvaW9t
bXVfY21kLmMKQEAgLTM2MywxMCArMzYzLDE4IEBAIHZvaWQgYW1kX2lvbW11
X2ZsdXNoX3BhZ2VzKHN0cnVjdCBkb21haW4gKmQsCiAgICAgX2FtZF9pb21t
dV9mbHVzaF9wYWdlcyhkLCBfX2Rmbl90b19kYWRkcihkZm4pLCBvcmRlcik7
CiB9CiAKLXZvaWQgYW1kX2lvbW11X2ZsdXNoX2RldmljZShzdHJ1Y3QgYW1k
X2lvbW11ICppb21tdSwgdWludDE2X3QgYmRmKQordm9pZCBhbWRfaW9tbXVf
Zmx1c2hfZGV2aWNlKHN0cnVjdCBhbWRfaW9tbXUgKmlvbW11LCB1aW50MTZf
dCBiZGYsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgZG9taWRfdCBk
b21pZCkKIHsKICAgICBpbnZhbGlkYXRlX2Rldl90YWJsZV9lbnRyeShpb21t
dSwgYmRmKTsKICAgICBmbHVzaF9jb21tYW5kX2J1ZmZlcihpb21tdSwgMCk7
CisKKyAgICAvKiBBbHNvIGludmFsaWRhdGUgSU9NTVUgVExCIGVudHJpZXMg
d2hlbiBmbHVzaGluZyB0aGUgRFRFLiAqLworICAgIGlmICggZG9taWQgIT0g
RE9NSURfSU5WQUxJRCApCisgICAgeworICAgICAgICBpbnZhbGlkYXRlX2lv
bW11X3BhZ2VzKGlvbW11LCBJTlZfSU9NTVVfQUxMX1BBR0VTX0FERFJFU1Ms
IGRvbWlkLCAwKTsKKyAgICAgICAgZmx1c2hfY29tbWFuZF9idWZmZXIoaW9t
bXUsIDApOworICAgIH0KIH0KIAogdm9pZCBhbWRfaW9tbXVfZmx1c2hfaW50
cmVtYXAoc3RydWN0IGFtZF9pb21tdSAqaW9tbXUsIHVpbnQxNl90IGJkZikK
ZGlmZiAtLWdpdCBhL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL2FtZC9pb21t
dV9ndWVzdC5jIGIveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvYW1kL2lvbW11
X2d1ZXN0LmMKaW5kZXggODBkMjg5YjhiZmIxLi40YzQyNTJlZWExMTYgMTAw
NjQ0Ci0tLSBhL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL2FtZC9pb21tdV9n
dWVzdC5jCisrKyBiL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL2FtZC9pb21t
dV9ndWVzdC5jCkBAIC0zODUsNyArMzg1LDcgQEAgc3RhdGljIGludCBkb19j
b21wbGV0aW9uX3dhaXQoc3RydWN0IGRvbWFpbiAqZCwgY21kX2VudHJ5X3Qg
KmNtZCkKIAogc3RhdGljIGludCBkb19pbnZhbGlkYXRlX2R0ZShzdHJ1Y3Qg
ZG9tYWluICpkLCBjbWRfZW50cnlfdCAqY21kKQogewotICAgIHVpbnQxNl90
IGdiZGYsIG1iZGYsIHJlcV9pZCwgZ2RvbV9pZCwgaGRvbV9pZDsKKyAgICB1
aW50MTZfdCBnYmRmLCBtYmRmLCByZXFfaWQsIGdkb21faWQsIGhkb21faWQs
IHByZXZfZG9taWQ7CiAgICAgc3RydWN0IGFtZF9pb21tdV9kdGUgKmdkdGUs
ICptZHRlLCAqZHRlX2Jhc2U7CiAgICAgc3RydWN0IGFtZF9pb21tdSAqaW9t
bXUgPSBOVUxMOwogICAgIHN0cnVjdCBndWVzdF9pb21tdSAqZ19pb21tdTsK
QEAgLTQ0NSwxMyArNDQ1LDE0IEBAIHN0YXRpYyBpbnQgZG9faW52YWxpZGF0
ZV9kdGUoc3RydWN0IGRvbWFpbiAqZCwgY21kX2VudHJ5X3QgKmNtZCkKICAg
ICByZXFfaWQgPSBnZXRfZG1hX3JlcXVlc3Rvcl9pZChpb21tdS0+c2VnLCBt
YmRmKTsKICAgICBkdGVfYmFzZSA9IGlvbW11LT5kZXZfdGFibGUuYnVmZmVy
OwogICAgIG1kdGUgPSAmZHRlX2Jhc2VbcmVxX2lkXTsKKyAgICBwcmV2X2Rv
bWlkID0gbWR0ZS0+ZG9tYWluX2lkOwogCiAgICAgc3Bpbl9sb2NrX2lycXNh
dmUoJmlvbW11LT5sb2NrLCBmbGFncyk7CiAgICAgZHRlX3NldF9nY3IzX3Rh
YmxlKG1kdGUsIGhkb21faWQsIGdjcjNfbWZuIDw8IFBBR0VfU0hJRlQsIGd2
LCBnbHgpOwogCiAgICAgc3Bpbl91bmxvY2tfaXJxcmVzdG9yZSgmaW9tbXUt
PmxvY2ssIGZsYWdzKTsKIAotICAgIGFtZF9pb21tdV9mbHVzaF9kZXZpY2Uo
aW9tbXUsIHJlcV9pZCk7CisgICAgYW1kX2lvbW11X2ZsdXNoX2RldmljZShp
b21tdSwgcmVxX2lkLCBwcmV2X2RvbWlkKTsKIAogICAgIHJldHVybiAwOwog
fQpkaWZmIC0tZ2l0IGEveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvYW1kL2lv
bW11X2luaXQuYyBiL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL2FtZC9pb21t
dV9pbml0LmMKaW5kZXggNDFlYzM4YmI3MmViLi45YzAxYTQ5NDM1OWMgMTAw
NjQ0Ci0tLSBhL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL2FtZC9pb21tdV9p
bml0LmMKKysrIGIveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvYW1kL2lvbW11
X2luaXQuYwpAQCAtMTU1MSw3ICsxNTUxLDExIEBAIHN0YXRpYyBpbnQgY2Zf
Y2hlY2sgX2ludmFsaWRhdGVfYWxsX2RldmljZXMoCiAgICAgICAgIHJlcV9p
ZCA9IGl2cnNfbWFwcGluZ3NbYmRmXS5kdGVfcmVxdWVzdG9yX2lkOwogICAg
ICAgICBpZiAoIGlvbW11ICkKICAgICAgICAgewotICAgICAgICAgICAgYW1k
X2lvbW11X2ZsdXNoX2RldmljZShpb21tdSwgcmVxX2lkKTsKKyAgICAgICAg
ICAgIC8qCisgICAgICAgICAgICAgKiBJT01NVSBUTEIgZmx1c2ggcGVyZm9y
bWVkIHNlcGFyYXRlbHkgKHNlZQorICAgICAgICAgICAgICogaW52YWxpZGF0
ZV9hbGxfZG9tYWluX3BhZ2VzKCkpLgorICAgICAgICAgICAgICovCisgICAg
ICAgICAgICBhbWRfaW9tbXVfZmx1c2hfZGV2aWNlKGlvbW11LCByZXFfaWQs
IERPTUlEX0lOVkFMSUQpOwogICAgICAgICAgICAgYW1kX2lvbW11X2ZsdXNo
X2ludHJlbWFwKGlvbW11LCByZXFfaWQpOwogICAgICAgICB9CiAgICAgfQpk
aWZmIC0tZ2l0IGEveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvYW1kL3BjaV9h
bWRfaW9tbXUuYyBiL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL2FtZC9wY2lf
YW1kX2lvbW11LmMKaW5kZXggODM2YzI0YjAyZWRlLi42YmM3M2RjMjEwNTIg
MTAwNjQ0Ci0tLSBhL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL2FtZC9wY2lf
YW1kX2lvbW11LmMKKysrIGIveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvYW1k
L3BjaV9hbWRfaW9tbXUuYwpAQCAtMTkyLDEwICsxOTIsMTMgQEAgc3RhdGlj
IGludCBfX211c3RfY2hlY2sgYW1kX2lvbW11X3NldHVwX2RvbWFpbl9kZXZp
Y2UoCiAKICAgICAgICAgc3Bpbl91bmxvY2tfaXJxcmVzdG9yZSgmaW9tbXUt
PmxvY2ssIGZsYWdzKTsKIAotICAgICAgICBhbWRfaW9tbXVfZmx1c2hfZGV2
aWNlKGlvbW11LCByZXFfaWQpOworICAgICAgICAvKiBEVEUgZGlkbid0IGhh
dmUgRE1BIHRyYW5zbGF0aW9ucyBlbmFibGVkLCBkbyBub3QgZmx1c2ggdGhl
IFRMQi4gKi8KKyAgICAgICAgYW1kX2lvbW11X2ZsdXNoX2RldmljZShpb21t
dSwgcmVxX2lkLCBET01JRF9JTlZBTElEKTsKICAgICB9CiAgICAgZWxzZSBp
ZiAoIGR0ZS0+cHRfcm9vdCAhPSBtZm5feChwYWdlX3RvX21mbihyb290X3Bn
KSkgKQogICAgIHsKKyAgICAgICAgZG9taWRfdCBwcmV2X2RvbWlkID0gZHRl
LT5kb21haW5faWQ7CisKICAgICAgICAgLyoKICAgICAgICAgICogU3RyaWN0
bHkgc3BlYWtpbmcgaWYgdGhlIGRldmljZSBpcyB0aGUgb25seSBvbmUgd2l0
aCB0aGlzIHJlcXVlc3RvcgogICAgICAgICAgKiBJRCwgaXQgY291bGQgYmUg
YWxsb3dlZCB0byBiZSByZS1hc3NpZ25lZCByZWdhcmRsZXNzIG9mIHVuaXR5
IG1hcApAQCAtMjUyLDcgKzI1NSw3IEBAIHN0YXRpYyBpbnQgX19tdXN0X2No
ZWNrIGFtZF9pb21tdV9zZXR1cF9kb21haW5fZGV2aWNlKAogCiAgICAgICAg
IHNwaW5fdW5sb2NrX2lycXJlc3RvcmUoJmlvbW11LT5sb2NrLCBmbGFncyk7
CiAKLSAgICAgICAgYW1kX2lvbW11X2ZsdXNoX2RldmljZShpb21tdSwgcmVx
X2lkKTsKKyAgICAgICAgYW1kX2lvbW11X2ZsdXNoX2RldmljZShpb21tdSwg
cmVxX2lkLCBwcmV2X2RvbWlkKTsKICAgICB9CiAgICAgZWxzZQogICAgICAg
ICBzcGluX3VubG9ja19pcnFyZXN0b3JlKCZpb21tdS0+bG9jaywgZmxhZ3Mp
OwpAQCAtNDIxLDYgKzQyNCw4IEBAIHN0YXRpYyB2b2lkIGFtZF9pb21tdV9k
aXNhYmxlX2RvbWFpbl9kZXZpY2UoY29uc3Qgc3RydWN0IGRvbWFpbiAqZG9t
YWluLAogICAgIHNwaW5fbG9ja19pcnFzYXZlKCZpb21tdS0+bG9jaywgZmxh
Z3MpOwogICAgIGlmICggZHRlLT50diB8fCBkdGUtPnYgKQogICAgIHsKKyAg
ICAgICAgZG9taWRfdCBwcmV2X2RvbWlkID0gZHRlLT5kb21haW5faWQ7CisK
ICAgICAgICAgLyogU2VlIHRoZSBjb21tZW50IGluIGFtZF9pb21tdV9zZXR1
cF9kZXZpY2VfdGFibGUoKS4gKi8KICAgICAgICAgZHRlLT5pbnRfY3RsID0g
SU9NTVVfREVWX1RBQkxFX0lOVF9DT05UUk9MX0FCT1JURUQ7CiAgICAgICAg
IHNtcF93bWIoKTsKQEAgLTQzOSw3ICs0NDQsNyBAQCBzdGF0aWMgdm9pZCBh
bWRfaW9tbXVfZGlzYWJsZV9kb21haW5fZGV2aWNlKGNvbnN0IHN0cnVjdCBk
b21haW4gKmRvbWFpbiwKIAogICAgICAgICBzcGluX3VubG9ja19pcnFyZXN0
b3JlKCZpb21tdS0+bG9jaywgZmxhZ3MpOwogCi0gICAgICAgIGFtZF9pb21t
dV9mbHVzaF9kZXZpY2UoaW9tbXUsIHJlcV9pZCk7CisgICAgICAgIGFtZF9p
b21tdV9mbHVzaF9kZXZpY2UoaW9tbXUsIHJlcV9pZCwgcHJldl9kb21pZCk7
CiAKICAgICAgICAgQU1EX0lPTU1VX0RFQlVHKCJEaXNhYmxlOiBkZXZpY2Ug
aWQgPSAlI3gsICIKICAgICAgICAgICAgICAgICAgICAgICAgICJkb21haW4g
PSAlZCwgcGFnaW5nIG1vZGUgPSAlZFxuIiwKQEAgLTYxMCw3ICs2MTUsOCBA
QCBzdGF0aWMgaW50IGNmX2NoZWNrIGFtZF9pb21tdV9hZGRfZGV2aWNlKHU4
IGRldmZuLCBzdHJ1Y3QgcGNpX2RldiAqcGRldikKIAogICAgICAgICBzcGlu
X3VubG9ja19pcnFyZXN0b3JlKCZpb21tdS0+bG9jaywgZmxhZ3MpOwogCi0g
ICAgICAgIGFtZF9pb21tdV9mbHVzaF9kZXZpY2UoaW9tbXUsIGJkZik7Cisg
ICAgICAgIC8qIERURSBkaWRuJ3QgaGF2ZSBETUEgdHJhbnNsYXRpb25zIGVu
YWJsZWQsIGRvIG5vdCBmbHVzaCB0aGUgVExCLiAqLworICAgICAgICBhbWRf
aW9tbXVfZmx1c2hfZGV2aWNlKGlvbW11LCBiZGYsIERPTUlEX0lOVkFMSUQp
OwogICAgIH0KIAogICAgIGlmICggYW1kX2lvbW11X3Jlc2VydmVfZG9tYWlu
X3VuaXR5X21hcCgKLS0gCjIuNDIuMAoK

--=separator
Content-Type: application/octet-stream; name="xsa442-4.15.patch"
Content-Disposition: attachment; filename="xsa442-4.15.patch"
Content-Transfer-Encoding: base64

RnJvbSA0MjYxNDk3MDgzMzQ2N2Q4YjlhYWY5ZGVmOWYwNjJjNmM3NDI1ZGFk
IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBSb2dlciBQYXUgTW9u
bmUgPHJvZ2VyLnBhdUBjaXRyaXguY29tPgpEYXRlOiBUdWUsIDEzIEp1biAy
MDIzIDE1OjAxOjA1ICswMjAwClN1YmplY3Q6IFtQQVRDSF0gaW9tbXUvYW1k
LXZpOiBmbHVzaCBJT01NVSBUTEIgd2hlbiBmbHVzaGluZyB0aGUgRFRFCk1J
TUUtVmVyc2lvbjogMS4wCkNvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjsgY2hh
cnNldD1VVEYtOApDb250ZW50LVRyYW5zZmVyLUVuY29kaW5nOiA4Yml0CgpU
aGUgY2FjaGluZyBpbnZhbGlkYXRpb24gZ3VpZGVsaW5lcyBmcm9tIHRoZSBB
TUQtVmkgc3BlY2lmaWNhdGlvbiAoNDg4ODLigJRSZXYKMy4wNy1QVULigJRP
Y3QgMjAyMikgc2VlbSB0byBiZSBtaXNsZWFkaW5nIG9uIHNvbWUgaGFyZHdh
cmUsIGFzIGRldmljZXMgd2lsbAptYWxmdW5jdGlvbiAoc2VlIHN0YWxlIERN
QSBtYXBwaW5ncykgaWYgc29tZSBmaWVsZHMgb2YgdGhlIERURSBhcmUgdXBk
YXRlZCBidXQKdGhlIElPTU1VIFRMQiBpcyBub3QgZmx1c2hlZC4gVGhpcyBo
YXMgYmVlbiBvYnNlcnZlZCBpbiBwcmFjdGljZSBvbiBBTUQKc3lzdGVtcy4g
IER1ZSB0byB0aGUgbGFjayBvZiBndWlkYW5jZSBmcm9tIHRoZSBjdXJyZW50
bHkgcHVibGlzaGVkCnNwZWNpZmljYXRpb24gdGhpcyBwYXRjaCBhaW1zIHRv
IGluY3JlYXNlIHRoZSBmbHVzaGluZyBkb25lIGluIG9yZGVyIHRvIHByZXZl
bnQKZGV2aWNlIG1hbGZ1bmN0aW9uLgoKSW4gb3JkZXIgdG8gZml4LCBpc3N1
ZSBhbiBJTlZBTElEQVRFX0lPTU1VX1BBR0VTIGNvbW1hbmQgZnJvbQphbWRf
aW9tbXVfZmx1c2hfZGV2aWNlKCksIGZsdXNoaW5nIGFsbCB0aGUgYWRkcmVz
cyBzcGFjZS4gIE5vdGUgdGhpcyByZXF1aXJlcwpjYWxsZXJzIHRvIGJlIGFk
anVzdGVkIGluIG9yZGVyIHRvIHBhc3MgdGhlIERvbUlEIG9uIHRoZSBEVEUg
cHJldmlvdXMgdG8gdGhlCm1vZGlmaWNhdGlvbi4KClNvbWUgY2FsbCBzaXRl
cyBkb24ndCBwcm92aWRlIGEgdmFsaWQgRG9tSUQgdG8gYW1kX2lvbW11X2Zs
dXNoX2RldmljZSgpIGluCm9yZGVyIHRvIGF2b2lkIHRoZSBmbHVzaC4gIFRo
YXQncyBiZWNhdXNlIHRoZSBkZXZpY2UgaGFkIGFkZHJlc3MgdHJhbnNsYXRp
b25zCmRpc2FibGVkIGFuZCBoZW5jZSB0aGUgcHJldmlvdXMgRG9tSUQgb24g
dGhlIERURSBpcyBub3QgdmFsaWQuICBOb3RlIHRoZQpjdXJyZW50IGxvZ2lj
IHJlbGllcyBvbiB0aGUgZW50aXR5IGRpc2FibGluZyBhZGRyZXNzIHRyYW5z
bGF0aW9ucyB0byBhbHNvIGZsdXNoCnRoZSBUTEIgb2YgdGhlIGluIHVzZSBE
b21JRC4KCkRldmljZSBJL08gVExCIGZsdXNoaW5nIHdoZW4gQVRTIGFyZSBl
bmFibGVkIGlzIG5vdCBjb3ZlcmVkIGJ5IHRoZSBjdXJyZW50CmNoYW5nZSwg
YXMgQVRTIHVzYWdlIGlzIG5vdCBzZWN1cml0eSBzdXBwb3J0ZWQuCgpUaGlz
IGlzIFhTQS00NDIgLyBDVkUtMjAyMy0zNDMyNgoKU2lnbmVkLW9mZi1ieTog
Um9nZXIgUGF1IE1vbm7DqSA8cm9nZXIucGF1QGNpdHJpeC5jb20+ClJldmll
d2VkLWJ5OiBKYW4gQmV1bGljaCA8amJldWxpY2hAc3VzZS5jb20+Ci0tLQog
eGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvYW1kL2lvbW11LmggICAgICAgICB8
ICAzICsrLQogeGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvYW1kL2lvbW11X2Nt
ZC5jICAgICB8IDEwICsrKysrKysrKy0KIHhlbi9kcml2ZXJzL3Bhc3N0aHJv
dWdoL2FtZC9pb21tdV9ndWVzdC5jICAgfCAgNSArKystLQogeGVuL2RyaXZl
cnMvcGFzc3Rocm91Z2gvYW1kL2lvbW11X2luaXQuYyAgICB8ICA2ICsrKysr
LQogeGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvYW1kL3BjaV9hbWRfaW9tbXUu
YyB8IDE0ICsrKysrKysrKystLS0tCiA1IGZpbGVzIGNoYW5nZWQsIDI5IGlu
c2VydGlvbnMoKyksIDkgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEveGVu
L2RyaXZlcnMvcGFzc3Rocm91Z2gvYW1kL2lvbW11LmggYi94ZW4vZHJpdmVy
cy9wYXNzdGhyb3VnaC9hbWQvaW9tbXUuaAppbmRleCAwZDlkOTc2ZmFhZWEu
LjRlMzU1ZWY0YzEyZiAxMDA2NDQKLS0tIGEveGVuL2RyaXZlcnMvcGFzc3Ro
cm91Z2gvYW1kL2lvbW11LmgKKysrIGIveGVuL2RyaXZlcnMvcGFzc3Rocm91
Z2gvYW1kL2lvbW11LmgKQEAgLTI2NSw3ICsyNjUsOCBAQCB2b2lkIGFtZF9p
b21tdV9mbHVzaF9wYWdlcyhzdHJ1Y3QgZG9tYWluICpkLCB1bnNpZ25lZCBs
b25nIGRmbiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVk
IGludCBvcmRlcik7CiB2b2lkIGFtZF9pb21tdV9mbHVzaF9pb3RsYih1OCBk
ZXZmbiwgY29uc3Qgc3RydWN0IHBjaV9kZXYgKnBkZXYsCiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICB1aW50NjRfdCBnYWRkciwgdW5zaWduZWQgaW50
IG9yZGVyKTsKLXZvaWQgYW1kX2lvbW11X2ZsdXNoX2RldmljZShzdHJ1Y3Qg
YW1kX2lvbW11ICppb21tdSwgdWludDE2X3QgYmRmKTsKK3ZvaWQgYW1kX2lv
bW11X2ZsdXNoX2RldmljZShzdHJ1Y3QgYW1kX2lvbW11ICppb21tdSwgdWlu
dDE2X3QgYmRmLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRvbWlk
X3QgZG9taWQpOwogdm9pZCBhbWRfaW9tbXVfZmx1c2hfaW50cmVtYXAoc3Ry
dWN0IGFtZF9pb21tdSAqaW9tbXUsIHVpbnQxNl90IGJkZik7CiB2b2lkIGFt
ZF9pb21tdV9mbHVzaF9hbGxfY2FjaGVzKHN0cnVjdCBhbWRfaW9tbXUgKmlv
bW11KTsKIApkaWZmIC0tZ2l0IGEveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gv
YW1kL2lvbW11X2NtZC5jIGIveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvYW1k
L2lvbW11X2NtZC5jCmluZGV4IGRmYjhiMWM4NjBkMS4uMTk2ZTNkY2UzYWVj
IDEwMDY0NAotLS0gYS94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC9hbWQvaW9t
bXVfY21kLmMKKysrIGIveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvYW1kL2lv
bW11X2NtZC5jCkBAIC0zNjIsMTIgKzM2MiwyMCBAQCB2b2lkIGFtZF9pb21t
dV9mbHVzaF9wYWdlcyhzdHJ1Y3QgZG9tYWluICpkLAogICAgIF9hbWRfaW9t
bXVfZmx1c2hfcGFnZXMoZCwgX19kZm5fdG9fZGFkZHIoZGZuKSwgb3JkZXIp
OwogfQogCi12b2lkIGFtZF9pb21tdV9mbHVzaF9kZXZpY2Uoc3RydWN0IGFt
ZF9pb21tdSAqaW9tbXUsIHVpbnQxNl90IGJkZikKK3ZvaWQgYW1kX2lvbW11
X2ZsdXNoX2RldmljZShzdHJ1Y3QgYW1kX2lvbW11ICppb21tdSwgdWludDE2
X3QgYmRmLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRvbWlkX3Qg
ZG9taWQpCiB7CiAgICAgQVNTRVJUKCBzcGluX2lzX2xvY2tlZCgmaW9tbXUt
PmxvY2spICk7CiAKICAgICBpbnZhbGlkYXRlX2Rldl90YWJsZV9lbnRyeShp
b21tdSwgYmRmKTsKICAgICBmbHVzaF9jb21tYW5kX2J1ZmZlcihpb21tdSwg
MCk7CisKKyAgICAvKiBBbHNvIGludmFsaWRhdGUgSU9NTVUgVExCIGVudHJp
ZXMgd2hlbiBmbHVzaGluZyB0aGUgRFRFLiAqLworICAgIGlmICggZG9taWQg
IT0gRE9NSURfSU5WQUxJRCApCisgICAgeworICAgICAgICBpbnZhbGlkYXRl
X2lvbW11X3BhZ2VzKGlvbW11LCBJTlZfSU9NTVVfQUxMX1BBR0VTX0FERFJF
U1MsIGRvbWlkLCAwKTsKKyAgICAgICAgZmx1c2hfY29tbWFuZF9idWZmZXIo
aW9tbXUsIDApOworICAgIH0KIH0KIAogdm9pZCBhbWRfaW9tbXVfZmx1c2hf
aW50cmVtYXAoc3RydWN0IGFtZF9pb21tdSAqaW9tbXUsIHVpbnQxNl90IGJk
ZikKZGlmZiAtLWdpdCBhL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL2FtZC9p
b21tdV9ndWVzdC5jIGIveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvYW1kL2lv
bW11X2d1ZXN0LmMKaW5kZXggMDBjNWNjZDdiNWQyLi5mNDA0ZTM4MmYwMTkg
MTAwNjQ0Ci0tLSBhL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL2FtZC9pb21t
dV9ndWVzdC5jCisrKyBiL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL2FtZC9p
b21tdV9ndWVzdC5jCkBAIC0zODUsNyArMzg1LDcgQEAgc3RhdGljIGludCBk
b19jb21wbGV0aW9uX3dhaXQoc3RydWN0IGRvbWFpbiAqZCwgY21kX2VudHJ5
X3QgKmNtZCkKIAogc3RhdGljIGludCBkb19pbnZhbGlkYXRlX2R0ZShzdHJ1
Y3QgZG9tYWluICpkLCBjbWRfZW50cnlfdCAqY21kKQogewotICAgIHVpbnQx
Nl90IGdiZGYsIG1iZGYsIHJlcV9pZCwgZ2RvbV9pZCwgaGRvbV9pZDsKKyAg
ICB1aW50MTZfdCBnYmRmLCBtYmRmLCByZXFfaWQsIGdkb21faWQsIGhkb21f
aWQsIHByZXZfZG9taWQ7CiAgICAgc3RydWN0IGFtZF9pb21tdV9kdGUgKmdk
dGUsICptZHRlLCAqZHRlX2Jhc2U7CiAgICAgc3RydWN0IGFtZF9pb21tdSAq
aW9tbXUgPSBOVUxMOwogICAgIHN0cnVjdCBndWVzdF9pb21tdSAqZ19pb21t
dTsKQEAgLTQ0NSwxMSArNDQ1LDEyIEBAIHN0YXRpYyBpbnQgZG9faW52YWxp
ZGF0ZV9kdGUoc3RydWN0IGRvbWFpbiAqZCwgY21kX2VudHJ5X3QgKmNtZCkK
ICAgICByZXFfaWQgPSBnZXRfZG1hX3JlcXVlc3Rvcl9pZChpb21tdS0+c2Vn
LCBtYmRmKTsKICAgICBkdGVfYmFzZSA9IGlvbW11LT5kZXZfdGFibGUuYnVm
ZmVyOwogICAgIG1kdGUgPSAmZHRlX2Jhc2VbcmVxX2lkXTsKKyAgICBwcmV2
X2RvbWlkID0gbWR0ZS0+ZG9tYWluX2lkOwogCiAgICAgc3Bpbl9sb2NrX2ly
cXNhdmUoJmlvbW11LT5sb2NrLCBmbGFncyk7CiAgICAgZHRlX3NldF9nY3Iz
X3RhYmxlKG1kdGUsIGhkb21faWQsIGdjcjNfbWZuIDw8IFBBR0VfU0hJRlQs
IGd2LCBnbHgpOwogCi0gICAgYW1kX2lvbW11X2ZsdXNoX2RldmljZShpb21t
dSwgcmVxX2lkKTsKKyAgICBhbWRfaW9tbXVfZmx1c2hfZGV2aWNlKGlvbW11
LCByZXFfaWQsIHByZXZfZG9taWQpOwogICAgIHNwaW5fdW5sb2NrX2lycXJl
c3RvcmUoJmlvbW11LT5sb2NrLCBmbGFncyk7CiAKICAgICByZXR1cm4gMDsK
ZGlmZiAtLWdpdCBhL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL2FtZC9pb21t
dV9pbml0LmMgYi94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC9hbWQvaW9tbXVf
aW5pdC5jCmluZGV4IGJiNTJjMTgxZjhjZC4uNGE5NmY3ZmJlYzNjIDEwMDY0
NAotLS0gYS94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC9hbWQvaW9tbXVfaW5p
dC5jCisrKyBiL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL2FtZC9pb21tdV9p
bml0LmMKQEAgLTE1NTQsNyArMTU1NCwxMSBAQCBzdGF0aWMgaW50IF9pbnZh
bGlkYXRlX2FsbF9kZXZpY2VzKAogICAgICAgICBpZiAoIGlvbW11ICkKICAg
ICAgICAgewogICAgICAgICAgICAgc3Bpbl9sb2NrX2lycXNhdmUoJmlvbW11
LT5sb2NrLCBmbGFncyk7Ci0gICAgICAgICAgICBhbWRfaW9tbXVfZmx1c2hf
ZGV2aWNlKGlvbW11LCByZXFfaWQpOworICAgICAgICAgICAgLyoKKyAgICAg
ICAgICAgICAqIElPTU1VIFRMQiBmbHVzaCBwZXJmb3JtZWQgc2VwYXJhdGVs
eSAoc2VlCisgICAgICAgICAgICAgKiBpbnZhbGlkYXRlX2FsbF9kb21haW5f
cGFnZXMoKSkuCisgICAgICAgICAgICAgKi8KKyAgICAgICAgICAgIGFtZF9p
b21tdV9mbHVzaF9kZXZpY2UoaW9tbXUsIHJlcV9pZCwgRE9NSURfSU5WQUxJ
RCk7CiAgICAgICAgICAgICBhbWRfaW9tbXVfZmx1c2hfaW50cmVtYXAoaW9t
bXUsIHJlcV9pZCk7CiAgICAgICAgICAgICBzcGluX3VubG9ja19pcnFyZXN0
b3JlKCZpb21tdS0+bG9jaywgZmxhZ3MpOwogICAgICAgICB9CmRpZmYgLS1n
aXQgYS94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC9hbWQvcGNpX2FtZF9pb21t
dS5jIGIveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvYW1kL3BjaV9hbWRfaW9t
bXUuYwppbmRleCBlODA0ZmRjMzRmY2QuLjg3Mjk1NTU2NjYwOCAxMDA2NDQK
LS0tIGEveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvYW1kL3BjaV9hbWRfaW9t
bXUuYworKysgYi94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC9hbWQvcGNpX2Ft
ZF9pb21tdS5jCkBAIC0xODMsMTAgKzE4MywxMyBAQCBzdGF0aWMgaW50IF9f
bXVzdF9jaGVjayBhbWRfaW9tbXVfc2V0dXBfZG9tYWluX2RldmljZSgKICAg
ICAgICAgICAgICBpb21tdV9oYXNfY2FwKGlvbW11LCBQQ0lfQ0FQX0lPVExC
X1NISUZUKSApCiAgICAgICAgICAgICBkdGUtPmkgPSBhdHNfZW5hYmxlZDsK
IAotICAgICAgICBhbWRfaW9tbXVfZmx1c2hfZGV2aWNlKGlvbW11LCByZXFf
aWQpOworICAgICAgICAvKiBEVEUgZGlkbid0IGhhdmUgRE1BIHRyYW5zbGF0
aW9ucyBlbmFibGVkLCBkbyBub3QgZmx1c2ggdGhlIFRMQi4gKi8KKyAgICAg
ICAgYW1kX2lvbW11X2ZsdXNoX2RldmljZShpb21tdSwgcmVxX2lkLCBET01J
RF9JTlZBTElEKTsKICAgICB9CiAgICAgZWxzZSBpZiAoIGR0ZS0+cHRfcm9v
dCAhPSBtZm5feChwYWdlX3RvX21mbihyb290X3BnKSkgKQogICAgIHsKKyAg
ICAgICAgZG9taWRfdCBwcmV2X2RvbWlkID0gZHRlLT5kb21haW5faWQ7CisK
ICAgICAgICAgLyoKICAgICAgICAgICogU3RyaWN0bHkgc3BlYWtpbmcgaWYg
dGhlIGRldmljZSBpcyB0aGUgb25seSBvbmUgd2l0aCB0aGlzIHJlcXVlc3Rv
cgogICAgICAgICAgKiBJRCwgaXQgY291bGQgYmUgYWxsb3dlZCB0byBiZSBy
ZS1hc3NpZ25lZCByZWdhcmRsZXNzIG9mIHVuaXR5IG1hcApAQCAtMjQwLDcg
KzI0Myw3IEBAIHN0YXRpYyBpbnQgX19tdXN0X2NoZWNrIGFtZF9pb21tdV9z
ZXR1cF9kb21haW5fZGV2aWNlKAogICAgICAgICAgICAgIGlvbW11X2hhc19j
YXAoaW9tbXUsIFBDSV9DQVBfSU9UTEJfU0hJRlQpICkKICAgICAgICAgICAg
IEFTU0VSVChkdGUtPmkgPT0gYXRzX2VuYWJsZWQpOwogCi0gICAgICAgIGFt
ZF9pb21tdV9mbHVzaF9kZXZpY2UoaW9tbXUsIHJlcV9pZCk7CisgICAgICAg
IGFtZF9pb21tdV9mbHVzaF9kZXZpY2UoaW9tbXUsIHJlcV9pZCwgcHJldl9k
b21pZCk7CiAgICAgfQogCiAgICAgc3Bpbl91bmxvY2tfaXJxcmVzdG9yZSgm
aW9tbXUtPmxvY2ssIGZsYWdzKTsKQEAgLTM4OSw2ICszOTIsOCBAQCBzdGF0
aWMgdm9pZCBhbWRfaW9tbXVfZGlzYWJsZV9kb21haW5fZGV2aWNlKGNvbnN0
IHN0cnVjdCBkb21haW4gKmRvbWFpbiwKICAgICBzcGluX2xvY2tfaXJxc2F2
ZSgmaW9tbXUtPmxvY2ssIGZsYWdzKTsKICAgICBpZiAoIGR0ZS0+dHYgfHwg
ZHRlLT52ICkKICAgICB7CisgICAgICAgIGRvbWlkX3QgcHJldl9kb21pZCA9
IGR0ZS0+ZG9tYWluX2lkOworCiAgICAgICAgIC8qIFNlZSB0aGUgY29tbWVu
dCBpbiBhbWRfaW9tbXVfc2V0dXBfZGV2aWNlX3RhYmxlKCkuICovCiAgICAg
ICAgIGR0ZS0+aW50X2N0bCA9IElPTU1VX0RFVl9UQUJMRV9JTlRfQ09OVFJP
TF9BQk9SVEVEOwogICAgICAgICBzbXBfd21iKCk7CkBAIC00MDUsNyArNDEw
LDcgQEAgc3RhdGljIHZvaWQgYW1kX2lvbW11X2Rpc2FibGVfZG9tYWluX2Rl
dmljZShjb25zdCBzdHJ1Y3QgZG9tYWluICpkb21haW4sCiAgICAgICAgIHNt
cF93bWIoKTsKICAgICAgICAgZHRlLT52ID0gdHJ1ZTsKIAotICAgICAgICBh
bWRfaW9tbXVfZmx1c2hfZGV2aWNlKGlvbW11LCByZXFfaWQpOworICAgICAg
ICBhbWRfaW9tbXVfZmx1c2hfZGV2aWNlKGlvbW11LCByZXFfaWQsIHByZXZf
ZG9taWQpOwogCiAgICAgICAgIEFNRF9JT01NVV9ERUJVRygiRGlzYWJsZTog
ZGV2aWNlIGlkID0gJSN4LCAiCiAgICAgICAgICAgICAgICAgICAgICAgICAi
ZG9tYWluID0gJWQsIHBhZ2luZyBtb2RlID0gJWRcbiIsCkBAIC01NzgsNyAr
NTgzLDggQEAgc3RhdGljIGludCBhbWRfaW9tbXVfYWRkX2RldmljZSh1OCBk
ZXZmbiwgc3RydWN0IHBjaV9kZXYgKnBkZXYpCiAgICAgICAgICAgICBpb21t
dS0+ZGV2X3RhYmxlLmJ1ZmZlciArIChiZGYgKiBJT01NVV9ERVZfVEFCTEVf
RU5UUllfU0laRSksCiAgICAgICAgICAgICBpdnJzX21hcHBpbmdzW2JkZl0u
aW50cmVtYXBfdGFibGUsIGlvbW11LCBpb21tdV9pbnRyZW1hcCk7CiAKLSAg
ICAgICAgYW1kX2lvbW11X2ZsdXNoX2RldmljZShpb21tdSwgYmRmKTsKKyAg
ICAgICAgLyogRFRFIGRpZG4ndCBoYXZlIERNQSB0cmFuc2xhdGlvbnMgZW5h
YmxlZCwgZG8gbm90IGZsdXNoIHRoZSBUTEIuICovCisgICAgICAgIGFtZF9p
b21tdV9mbHVzaF9kZXZpY2UoaW9tbXUsIGJkZiwgRE9NSURfSU5WQUxJRCk7
CiAKICAgICAgICAgc3Bpbl91bmxvY2tfaXJxcmVzdG9yZSgmaW9tbXUtPmxv
Y2ssIGZsYWdzKTsKICAgICB9Ci0tIAoyLjQyLjAKCg==

--=separator
Content-Type: application/octet-stream; name="xsa442-4.17.patch"
Content-Disposition: attachment; filename="xsa442-4.17.patch"
Content-Transfer-Encoding: base64

RnJvbSA1YjJjY2I2MGZmMjJmYmZmNDRkZDY2MjE0YzI5NTZhNDM0ZWU2Mjcx
IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBSb2dlciBQYXUgTW9u
bmUgPHJvZ2VyLnBhdUBjaXRyaXguY29tPgpEYXRlOiBUdWUsIDEzIEp1biAy
MDIzIDE1OjAxOjA1ICswMjAwClN1YmplY3Q6IFtQQVRDSF0gaW9tbXUvYW1k
LXZpOiBmbHVzaCBJT01NVSBUTEIgd2hlbiBmbHVzaGluZyB0aGUgRFRFCk1J
TUUtVmVyc2lvbjogMS4wCkNvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjsgY2hh
cnNldD1VVEYtOApDb250ZW50LVRyYW5zZmVyLUVuY29kaW5nOiA4Yml0CgpU
aGUgY2FjaGluZyBpbnZhbGlkYXRpb24gZ3VpZGVsaW5lcyBmcm9tIHRoZSBB
TUQtVmkgc3BlY2lmaWNhdGlvbiAoNDg4ODLigJRSZXYKMy4wNy1QVULigJRP
Y3QgMjAyMikgc2VlbSB0byBiZSBtaXNsZWFkaW5nIG9uIHNvbWUgaGFyZHdh
cmUsIGFzIGRldmljZXMgd2lsbAptYWxmdW5jdGlvbiAoc2VlIHN0YWxlIERN
QSBtYXBwaW5ncykgaWYgc29tZSBmaWVsZHMgb2YgdGhlIERURSBhcmUgdXBk
YXRlZCBidXQKdGhlIElPTU1VIFRMQiBpcyBub3QgZmx1c2hlZC4gVGhpcyBo
YXMgYmVlbiBvYnNlcnZlZCBpbiBwcmFjdGljZSBvbiBBTUQKc3lzdGVtcy4g
IER1ZSB0byB0aGUgbGFjayBvZiBndWlkYW5jZSBmcm9tIHRoZSBjdXJyZW50
bHkgcHVibGlzaGVkCnNwZWNpZmljYXRpb24gdGhpcyBwYXRjaCBhaW1zIHRv
IGluY3JlYXNlIHRoZSBmbHVzaGluZyBkb25lIGluIG9yZGVyIHRvIHByZXZl
bnQKZGV2aWNlIG1hbGZ1bmN0aW9uLgoKSW4gb3JkZXIgdG8gZml4LCBpc3N1
ZSBhbiBJTlZBTElEQVRFX0lPTU1VX1BBR0VTIGNvbW1hbmQgZnJvbQphbWRf
aW9tbXVfZmx1c2hfZGV2aWNlKCksIGZsdXNoaW5nIGFsbCB0aGUgYWRkcmVz
cyBzcGFjZS4gIE5vdGUgdGhpcyByZXF1aXJlcwpjYWxsZXJzIHRvIGJlIGFk
anVzdGVkIGluIG9yZGVyIHRvIHBhc3MgdGhlIERvbUlEIG9uIHRoZSBEVEUg
cHJldmlvdXMgdG8gdGhlCm1vZGlmaWNhdGlvbi4KClNvbWUgY2FsbCBzaXRl
cyBkb24ndCBwcm92aWRlIGEgdmFsaWQgRG9tSUQgdG8gYW1kX2lvbW11X2Zs
dXNoX2RldmljZSgpIGluCm9yZGVyIHRvIGF2b2lkIHRoZSBmbHVzaC4gIFRo
YXQncyBiZWNhdXNlIHRoZSBkZXZpY2UgaGFkIGFkZHJlc3MgdHJhbnNsYXRp
b25zCmRpc2FibGVkIGFuZCBoZW5jZSB0aGUgcHJldmlvdXMgRG9tSUQgb24g
dGhlIERURSBpcyBub3QgdmFsaWQuICBOb3RlIHRoZQpjdXJyZW50IGxvZ2lj
IHJlbGllcyBvbiB0aGUgZW50aXR5IGRpc2FibGluZyBhZGRyZXNzIHRyYW5z
bGF0aW9ucyB0byBhbHNvIGZsdXNoCnRoZSBUTEIgb2YgdGhlIGluIHVzZSBE
b21JRC4KCkRldmljZSBJL08gVExCIGZsdXNoaW5nIHdoZW4gQVRTIGFyZSBl
bmFibGVkIGlzIG5vdCBjb3ZlcmVkIGJ5IHRoZSBjdXJyZW50CmNoYW5nZSwg
YXMgQVRTIHVzYWdlIGlzIG5vdCBzZWN1cml0eSBzdXBwb3J0ZWQuCgpUaGlz
IGlzIFhTQS00NDIgLyBDVkUtMjAyMy0zNDMyNgoKU2lnbmVkLW9mZi1ieTog
Um9nZXIgUGF1IE1vbm7DqSA8cm9nZXIucGF1QGNpdHJpeC5jb20+ClJldmll
d2VkLWJ5OiBKYW4gQmV1bGljaCA8amJldWxpY2hAc3VzZS5jb20+Ci0tLQog
eGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvYW1kL2lvbW11LmggICAgICAgICB8
ICAzICsrLQogeGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvYW1kL2lvbW11X2Nt
ZC5jICAgICB8IDEwICsrKysrKysrKy0KIHhlbi9kcml2ZXJzL3Bhc3N0aHJv
dWdoL2FtZC9pb21tdV9ndWVzdC5jICAgfCAgNSArKystLQogeGVuL2RyaXZl
cnMvcGFzc3Rocm91Z2gvYW1kL2lvbW11X2luaXQuYyAgICB8ICA2ICsrKysr
LQogeGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvYW1kL3BjaV9hbWRfaW9tbXUu
YyB8IDE0ICsrKysrKysrKystLS0tCiA1IGZpbGVzIGNoYW5nZWQsIDI5IGlu
c2VydGlvbnMoKyksIDkgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEveGVu
L2RyaXZlcnMvcGFzc3Rocm91Z2gvYW1kL2lvbW11LmggYi94ZW4vZHJpdmVy
cy9wYXNzdGhyb3VnaC9hbWQvaW9tbXUuaAppbmRleCA1NDI5YWRhNThlZjUu
LmE1OGJlMjhiZjk2ZCAxMDA2NDQKLS0tIGEveGVuL2RyaXZlcnMvcGFzc3Ro
cm91Z2gvYW1kL2lvbW11LmgKKysrIGIveGVuL2RyaXZlcnMvcGFzc3Rocm91
Z2gvYW1kL2lvbW11LmgKQEAgLTI4Myw3ICsyODMsOCBAQCB2b2lkIGFtZF9p
b21tdV9mbHVzaF9wYWdlcyhzdHJ1Y3QgZG9tYWluICpkLCB1bnNpZ25lZCBs
b25nIGRmbiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVk
IGludCBvcmRlcik7CiB2b2lkIGFtZF9pb21tdV9mbHVzaF9pb3RsYih1OCBk
ZXZmbiwgY29uc3Qgc3RydWN0IHBjaV9kZXYgKnBkZXYsCiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICB1aW50NjRfdCBnYWRkciwgdW5zaWduZWQgaW50
IG9yZGVyKTsKLXZvaWQgYW1kX2lvbW11X2ZsdXNoX2RldmljZShzdHJ1Y3Qg
YW1kX2lvbW11ICppb21tdSwgdWludDE2X3QgYmRmKTsKK3ZvaWQgYW1kX2lv
bW11X2ZsdXNoX2RldmljZShzdHJ1Y3QgYW1kX2lvbW11ICppb21tdSwgdWlu
dDE2X3QgYmRmLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRvbWlk
X3QgZG9taWQpOwogdm9pZCBhbWRfaW9tbXVfZmx1c2hfaW50cmVtYXAoc3Ry
dWN0IGFtZF9pb21tdSAqaW9tbXUsIHVpbnQxNl90IGJkZik7CiB2b2lkIGFt
ZF9pb21tdV9mbHVzaF9hbGxfY2FjaGVzKHN0cnVjdCBhbWRfaW9tbXUgKmlv
bW11KTsKIApkaWZmIC0tZ2l0IGEveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gv
YW1kL2lvbW11X2NtZC5jIGIveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvYW1k
L2lvbW11X2NtZC5jCmluZGV4IDQwZGRmMzY2YmI0ZC4uY2IyOGIzNmFiYzM4
IDEwMDY0NAotLS0gYS94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC9hbWQvaW9t
bXVfY21kLmMKKysrIGIveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvYW1kL2lv
bW11X2NtZC5jCkBAIC0zNjMsMTAgKzM2MywxOCBAQCB2b2lkIGFtZF9pb21t
dV9mbHVzaF9wYWdlcyhzdHJ1Y3QgZG9tYWluICpkLAogICAgIF9hbWRfaW9t
bXVfZmx1c2hfcGFnZXMoZCwgX19kZm5fdG9fZGFkZHIoZGZuKSwgb3JkZXIp
OwogfQogCi12b2lkIGFtZF9pb21tdV9mbHVzaF9kZXZpY2Uoc3RydWN0IGFt
ZF9pb21tdSAqaW9tbXUsIHVpbnQxNl90IGJkZikKK3ZvaWQgYW1kX2lvbW11
X2ZsdXNoX2RldmljZShzdHJ1Y3QgYW1kX2lvbW11ICppb21tdSwgdWludDE2
X3QgYmRmLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRvbWlkX3Qg
ZG9taWQpCiB7CiAgICAgaW52YWxpZGF0ZV9kZXZfdGFibGVfZW50cnkoaW9t
bXUsIGJkZik7CiAgICAgZmx1c2hfY29tbWFuZF9idWZmZXIoaW9tbXUsIDAp
OworCisgICAgLyogQWxzbyBpbnZhbGlkYXRlIElPTU1VIFRMQiBlbnRyaWVz
IHdoZW4gZmx1c2hpbmcgdGhlIERURS4gKi8KKyAgICBpZiAoIGRvbWlkICE9
IERPTUlEX0lOVkFMSUQgKQorICAgIHsKKyAgICAgICAgaW52YWxpZGF0ZV9p
b21tdV9wYWdlcyhpb21tdSwgSU5WX0lPTU1VX0FMTF9QQUdFU19BRERSRVNT
LCBkb21pZCwgMCk7CisgICAgICAgIGZsdXNoX2NvbW1hbmRfYnVmZmVyKGlv
bW11LCAwKTsKKyAgICB9CiB9CiAKIHZvaWQgYW1kX2lvbW11X2ZsdXNoX2lu
dHJlbWFwKHN0cnVjdCBhbWRfaW9tbXUgKmlvbW11LCB1aW50MTZfdCBiZGYp
CmRpZmYgLS1naXQgYS94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC9hbWQvaW9t
bXVfZ3Vlc3QuYyBiL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL2FtZC9pb21t
dV9ndWVzdC5jCmluZGV4IDgwYTMzMWY1NDZlZC4uYmU4NmJjZTZmYjAzIDEw
MDY0NAotLS0gYS94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC9hbWQvaW9tbXVf
Z3Vlc3QuYworKysgYi94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC9hbWQvaW9t
bXVfZ3Vlc3QuYwpAQCAtMzg1LDcgKzM4NSw3IEBAIHN0YXRpYyBpbnQgZG9f
Y29tcGxldGlvbl93YWl0KHN0cnVjdCBkb21haW4gKmQsIGNtZF9lbnRyeV90
ICpjbWQpCiAKIHN0YXRpYyBpbnQgZG9faW52YWxpZGF0ZV9kdGUoc3RydWN0
IGRvbWFpbiAqZCwgY21kX2VudHJ5X3QgKmNtZCkKIHsKLSAgICB1aW50MTZf
dCBnYmRmLCBtYmRmLCByZXFfaWQsIGdkb21faWQsIGhkb21faWQ7CisgICAg
dWludDE2X3QgZ2JkZiwgbWJkZiwgcmVxX2lkLCBnZG9tX2lkLCBoZG9tX2lk
LCBwcmV2X2RvbWlkOwogICAgIHN0cnVjdCBhbWRfaW9tbXVfZHRlICpnZHRl
LCAqbWR0ZSwgKmR0ZV9iYXNlOwogICAgIHN0cnVjdCBhbWRfaW9tbXUgKmlv
bW11ID0gTlVMTDsKICAgICBzdHJ1Y3QgZ3Vlc3RfaW9tbXUgKmdfaW9tbXU7
CkBAIC00NDUsMTMgKzQ0NSwxNCBAQCBzdGF0aWMgaW50IGRvX2ludmFsaWRh
dGVfZHRlKHN0cnVjdCBkb21haW4gKmQsIGNtZF9lbnRyeV90ICpjbWQpCiAg
ICAgcmVxX2lkID0gZ2V0X2RtYV9yZXF1ZXN0b3JfaWQoaW9tbXUtPnNlZywg
bWJkZik7CiAgICAgZHRlX2Jhc2UgPSBpb21tdS0+ZGV2X3RhYmxlLmJ1ZmZl
cjsKICAgICBtZHRlID0gJmR0ZV9iYXNlW3JlcV9pZF07CisgICAgcHJldl9k
b21pZCA9IG1kdGUtPmRvbWFpbl9pZDsKIAogICAgIHNwaW5fbG9ja19pcnFz
YXZlKCZpb21tdS0+bG9jaywgZmxhZ3MpOwogICAgIGR0ZV9zZXRfZ2NyM190
YWJsZShtZHRlLCBoZG9tX2lkLCBnY3IzX21mbiA8PCBQQUdFX1NISUZULCBn
diwgZ2x4KTsKIAogICAgIHNwaW5fdW5sb2NrX2lycXJlc3RvcmUoJmlvbW11
LT5sb2NrLCBmbGFncyk7CiAKLSAgICBhbWRfaW9tbXVfZmx1c2hfZGV2aWNl
KGlvbW11LCByZXFfaWQpOworICAgIGFtZF9pb21tdV9mbHVzaF9kZXZpY2Uo
aW9tbXUsIHJlcV9pZCwgcHJldl9kb21pZCk7CiAKICAgICByZXR1cm4gMDsK
IH0KZGlmZiAtLWdpdCBhL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL2FtZC9p
b21tdV9pbml0LmMgYi94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC9hbWQvaW9t
bXVfaW5pdC5jCmluZGV4IDE2NjU3MDY0OGQyNi4uMTAxYTYwY2UxNzk0IDEw
MDY0NAotLS0gYS94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC9hbWQvaW9tbXVf
aW5pdC5jCisrKyBiL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL2FtZC9pb21t
dV9pbml0LmMKQEAgLTE1NDcsNyArMTU0NywxMSBAQCBzdGF0aWMgaW50IGNm
X2NoZWNrIF9pbnZhbGlkYXRlX2FsbF9kZXZpY2VzKAogICAgICAgICByZXFf
aWQgPSBpdnJzX21hcHBpbmdzW2JkZl0uZHRlX3JlcXVlc3Rvcl9pZDsKICAg
ICAgICAgaWYgKCBpb21tdSApCiAgICAgICAgIHsKLSAgICAgICAgICAgIGFt
ZF9pb21tdV9mbHVzaF9kZXZpY2UoaW9tbXUsIHJlcV9pZCk7CisgICAgICAg
ICAgICAvKgorICAgICAgICAgICAgICogSU9NTVUgVExCIGZsdXNoIHBlcmZv
cm1lZCBzZXBhcmF0ZWx5IChzZWUKKyAgICAgICAgICAgICAqIGludmFsaWRh
dGVfYWxsX2RvbWFpbl9wYWdlcygpKS4KKyAgICAgICAgICAgICAqLworICAg
ICAgICAgICAgYW1kX2lvbW11X2ZsdXNoX2RldmljZShpb21tdSwgcmVxX2lk
LCBET01JRF9JTlZBTElEKTsKICAgICAgICAgICAgIGFtZF9pb21tdV9mbHVz
aF9pbnRyZW1hcChpb21tdSwgcmVxX2lkKTsKICAgICAgICAgfQogICAgIH0K
ZGlmZiAtLWdpdCBhL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL2FtZC9wY2lf
YW1kX2lvbW11LmMgYi94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC9hbWQvcGNp
X2FtZF9pb21tdS5jCmluZGV4IDk0ZTM3NzU1MDY0Yi4uODY0MWI4NDcxMmEw
IDEwMDY0NAotLS0gYS94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC9hbWQvcGNp
X2FtZF9pb21tdS5jCisrKyBiL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL2Ft
ZC9wY2lfYW1kX2lvbW11LmMKQEAgLTE5MiwxMCArMTkyLDEzIEBAIHN0YXRp
YyBpbnQgX19tdXN0X2NoZWNrIGFtZF9pb21tdV9zZXR1cF9kb21haW5fZGV2
aWNlKAogCiAgICAgICAgIHNwaW5fdW5sb2NrX2lycXJlc3RvcmUoJmlvbW11
LT5sb2NrLCBmbGFncyk7CiAKLSAgICAgICAgYW1kX2lvbW11X2ZsdXNoX2Rl
dmljZShpb21tdSwgcmVxX2lkKTsKKyAgICAgICAgLyogRFRFIGRpZG4ndCBo
YXZlIERNQSB0cmFuc2xhdGlvbnMgZW5hYmxlZCwgZG8gbm90IGZsdXNoIHRo
ZSBUTEIuICovCisgICAgICAgIGFtZF9pb21tdV9mbHVzaF9kZXZpY2UoaW9t
bXUsIHJlcV9pZCwgRE9NSURfSU5WQUxJRCk7CiAgICAgfQogICAgIGVsc2Ug
aWYgKCBkdGUtPnB0X3Jvb3QgIT0gbWZuX3gocGFnZV90b19tZm4ocm9vdF9w
ZykpICkKICAgICB7CisgICAgICAgIGRvbWlkX3QgcHJldl9kb21pZCA9IGR0
ZS0+ZG9tYWluX2lkOworCiAgICAgICAgIC8qCiAgICAgICAgICAqIFN0cmlj
dGx5IHNwZWFraW5nIGlmIHRoZSBkZXZpY2UgaXMgdGhlIG9ubHkgb25lIHdp
dGggdGhpcyByZXF1ZXN0b3IKICAgICAgICAgICogSUQsIGl0IGNvdWxkIGJl
IGFsbG93ZWQgdG8gYmUgcmUtYXNzaWduZWQgcmVnYXJkbGVzcyBvZiB1bml0
eSBtYXAKQEAgLTI1Miw3ICsyNTUsNyBAQCBzdGF0aWMgaW50IF9fbXVzdF9j
aGVjayBhbWRfaW9tbXVfc2V0dXBfZG9tYWluX2RldmljZSgKIAogICAgICAg
ICBzcGluX3VubG9ja19pcnFyZXN0b3JlKCZpb21tdS0+bG9jaywgZmxhZ3Mp
OwogCi0gICAgICAgIGFtZF9pb21tdV9mbHVzaF9kZXZpY2UoaW9tbXUsIHJl
cV9pZCk7CisgICAgICAgIGFtZF9pb21tdV9mbHVzaF9kZXZpY2UoaW9tbXUs
IHJlcV9pZCwgcHJldl9kb21pZCk7CiAgICAgfQogICAgIGVsc2UKICAgICAg
ICAgc3Bpbl91bmxvY2tfaXJxcmVzdG9yZSgmaW9tbXUtPmxvY2ssIGZsYWdz
KTsKQEAgLTQyMSw2ICs0MjQsOCBAQCBzdGF0aWMgdm9pZCBhbWRfaW9tbXVf
ZGlzYWJsZV9kb21haW5fZGV2aWNlKGNvbnN0IHN0cnVjdCBkb21haW4gKmRv
bWFpbiwKICAgICBzcGluX2xvY2tfaXJxc2F2ZSgmaW9tbXUtPmxvY2ssIGZs
YWdzKTsKICAgICBpZiAoIGR0ZS0+dHYgfHwgZHRlLT52ICkKICAgICB7Cisg
ICAgICAgIGRvbWlkX3QgcHJldl9kb21pZCA9IGR0ZS0+ZG9tYWluX2lkOwor
CiAgICAgICAgIC8qIFNlZSB0aGUgY29tbWVudCBpbiBhbWRfaW9tbXVfc2V0
dXBfZGV2aWNlX3RhYmxlKCkuICovCiAgICAgICAgIGR0ZS0+aW50X2N0bCA9
IElPTU1VX0RFVl9UQUJMRV9JTlRfQ09OVFJPTF9BQk9SVEVEOwogICAgICAg
ICBzbXBfd21iKCk7CkBAIC00MzksNyArNDQ0LDcgQEAgc3RhdGljIHZvaWQg
YW1kX2lvbW11X2Rpc2FibGVfZG9tYWluX2RldmljZShjb25zdCBzdHJ1Y3Qg
ZG9tYWluICpkb21haW4sCiAKICAgICAgICAgc3Bpbl91bmxvY2tfaXJxcmVz
dG9yZSgmaW9tbXUtPmxvY2ssIGZsYWdzKTsKIAotICAgICAgICBhbWRfaW9t
bXVfZmx1c2hfZGV2aWNlKGlvbW11LCByZXFfaWQpOworICAgICAgICBhbWRf
aW9tbXVfZmx1c2hfZGV2aWNlKGlvbW11LCByZXFfaWQsIHByZXZfZG9taWQp
OwogCiAgICAgICAgIEFNRF9JT01NVV9ERUJVRygiRGlzYWJsZTogZGV2aWNl
IGlkID0gJSN4LCAiCiAgICAgICAgICAgICAgICAgICAgICAgICAiZG9tYWlu
ID0gJWQsIHBhZ2luZyBtb2RlID0gJWRcbiIsCkBAIC02MTAsNyArNjE1LDgg
QEAgc3RhdGljIGludCBjZl9jaGVjayBhbWRfaW9tbXVfYWRkX2RldmljZSh1
OCBkZXZmbiwgc3RydWN0IHBjaV9kZXYgKnBkZXYpCiAKICAgICAgICAgc3Bp
bl91bmxvY2tfaXJxcmVzdG9yZSgmaW9tbXUtPmxvY2ssIGZsYWdzKTsKIAot
ICAgICAgICBhbWRfaW9tbXVfZmx1c2hfZGV2aWNlKGlvbW11LCBiZGYpOwor
ICAgICAgICAvKiBEVEUgZGlkbid0IGhhdmUgRE1BIHRyYW5zbGF0aW9ucyBl
bmFibGVkLCBkbyBub3QgZmx1c2ggdGhlIFRMQi4gKi8KKyAgICAgICAgYW1k
X2lvbW11X2ZsdXNoX2RldmljZShpb21tdSwgYmRmLCBET01JRF9JTlZBTElE
KTsKICAgICB9CiAKICAgICBpZiAoIGFtZF9pb21tdV9yZXNlcnZlX2RvbWFp
bl91bml0eV9tYXAoCi0tIAoyLjQyLjAKCg==

--=separator--


From xen-devel-bounces@lists.xenproject.org Tue Oct 10 12:06:21 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 10 Oct 2023 12:06:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614715.956027 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqBVE-0007PF-Fo; Tue, 10 Oct 2023 12:06:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614715.956027; Tue, 10 Oct 2023 12:06: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 1qqBVE-0007NF-4Y; Tue, 10 Oct 2023 12:06:20 +0000
Received: by outflank-mailman (input) for mailman id 614715;
 Tue, 10 Oct 2023 12:06: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=8mmp=FY=xenbits.xen.org=julieng@srs-se1.protection.inumbo.net>)
 id 1qqBVC-0006hr-E5
 for xen-devel@lists.xen.org; Tue, 10 Oct 2023 12:06:18 +0000
Received: from mail.xenproject.org (mail.xenproject.org [104.130.215.37])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 6523cda4-6765-11ee-9b0d-b553b5be7939;
 Tue, 10 Oct 2023 14:06:11 +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 1qqBUr-0007te-DN; Tue, 10 Oct 2023 12:05:57 +0000
Received: from julieng by xenbits.xenproject.org with local (Exim 4.92)
 (envelope-from <julieng@xenbits.xen.org>)
 id 1qqBUr-0002FK-BR; Tue, 10 Oct 2023 12:05: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: 6523cda4-6765-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=D37PBAC+RolY3esUiWHAEVeU0TNDo2qa+fvFZqvFW40=; b=pW495gIoBCV6hyolajy4eEsnWF
	61JxceFiXPg3KLY3azjMnlyO3Y1u7KnjJ5VFHio7qHVtT/sWrvI/Yvx8TrJhWP3bTjnfdPjIRAp5z
	chDbep5J/BYnlR2oRJZp2xAQa3f/uVgKWFn3/sddGtVhMrMVyAFIuyhVjWJ/YBXMo7eM=;
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 440 v3 (CVE-2023-34323) - xenstored: A
 transaction conflict can crash C Xenstored
Message-Id: <E1qqBUr-0002FK-BR@xenbits.xenproject.org>
Date: Tue, 10 Oct 2023 12:05:57 +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-34323 / XSA-440
                               version 3

        xenstored: A transaction conflict can crash C Xenstored

UPDATES IN VERSION 3
====================

Public release.

ISSUE DESCRIPTION
=================

When a transaction is committed, C Xenstored will first check
the quota is correct before attempting to commit any nodes.  It would
be possible that accounting is temporarily negative if a node has
been removed outside of the transaction.

Unfortunately, some versions of C Xenstored are assuming that the
quota cannot be negative and are using assert() to confirm it.  This
will lead to C Xenstored crash when tools are built without -DNDEBUG
(this is the default).

IMPACT
======

A malicious guest could craft a transaction that will hit the C
Xenstored bug and crash it.  This will result to the inability to
perform any further domain administration like starting new guests,
or adding/removing resources to or from any existing guest.

VULNERABLE SYSTEMS
==================

All versions of Xen up to and including 4.17 are vulnerable if XSA-326
was ingested.

All Xen systems using C Xenstored are vulnerable.  C Xenstored built
using -DNDEBUG (can be specified via EXTRA_CFLAGS_XEN_TOOLS=-DNDEBUG)
are not vulnerable.  Systems using the OCaml variant of Xenstored are
not vulnerable.

MITIGATION
==========

The problem can be avoided by using OCaml Xenstored variant.

CREDITS
=======

This issue was discovered by Stanislav Uschakow and Julien Grall, all
from 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.

xsa440-4.17.patch      Xen 4.17.x - Xen 4.15.x.

$ sha256sum xsa440*
187b7edef4f509f3d7ec1662901fa638a900ab4213447438171fb2935f387014  xsa440.meta
431dab53baf2b57a299d1a151b330b62d9a007715d700e8515db71ff813d0037  xsa440-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/4UyVfoK9kFAmUlNOMMHHBncEB4ZW4u
b3JnAAoJEIP+FMlX6CvZy64IAIZBqlKJAGVeGMzSpuJfkP2YXLe9JNeR46HRG90e
mV94MWmsf+4kMu2ZhnXQaR2+lafjNfAQVdh9nXV0tdJu//yzLRfXnLfFWrroqBTS
g69/9zvgGRYvobHe6X/WmLwXCV8N27q04zLK7R9nYwntw2mJBBCvUfRPVHk/6lpH
4Ke6o0XbjmOjForl2PA3ISRqXKD5nB0pWp1cEfPt3PzCUV02kI/N3veWDRN2wyPN
jclvwlVVASJdCrcs0+NlOalN5XhD9+K5RN+VVGu3dchXpaa3qEOiTc/V5T1U5cX8
pqNqUBlo4ECFLygE2aUTITIX+dpLaGYD8rmFq0CPnsB6E5U=
=6W84
-----END PGP SIGNATURE-----

--=separator
Content-Type: application/octet-stream; name="xsa440.meta"
Content-Disposition: attachment; filename="xsa440.meta"
Content-Transfer-Encoding: base64

ewogICJYU0EiOiA0NDAsCiAgIlN1cHBvcnRlZFZlcnNpb25zIjogWwogICAg
Im1hc3RlciIsCiAgICAiNC4xNyIsCiAgICAiNC4xNiIsCiAgICAiNC4xNSIK
ICBdLAogICJUcmVlcyI6IFsKICAgICJ4ZW4iCiAgXSwKICAiUmVjaXBlcyI6
IHsKICAgICI0LjE1IjogewogICAgICAiUmVjaXBlcyI6IHsKICAgICAgICAi
eGVuIjogewogICAgICAgICAgIlN0YWJsZVJlZiI6ICIzYTlhMjkwMWNjOGIy
NGYyOGRiZGM2ZmI2M2Y1NzAwNmM3N2ExZjQ3IiwKICAgICAgICAgICJQcmVy
ZXFzIjogW10sCiAgICAgICAgICAiUGF0Y2hlcyI6IFsKICAgICAgICAgICAg
InhzYTQ0MC00LjE3LnBhdGNoIgogICAgICAgICAgXQogICAgICAgIH0KICAg
ICAgfQogICAgfSwKICAgICI0LjE2IjogewogICAgICAiUmVjaXBlcyI6IHsK
ICAgICAgICAieGVuIjogewogICAgICAgICAgIlN0YWJsZVJlZiI6ICJjNDUw
YTRiYzExZTk3ZWFiZTk3ZGNlZmUwNmY1MTBkN2FjZWE4ZDZkIiwKICAgICAg
ICAgICJQcmVyZXFzIjogW10sCiAgICAgICAgICAiUGF0Y2hlcyI6IFsKICAg
ICAgICAgICAgInhzYTQ0MC00LjE3LnBhdGNoIgogICAgICAgICAgXQogICAg
ICAgIH0KICAgICAgfQogICAgfSwKICAgICI0LjE3IjogewogICAgICAiUmVj
aXBlcyI6IHsKICAgICAgICAieGVuIjogewogICAgICAgICAgIlN0YWJsZVJl
ZiI6ICI5MGM1NDBjNTg5ODVkYzc3NGNmMGExZDJkYzQyMzQ3M2QzZjM3MjY3
IiwKICAgICAgICAgICJQcmVyZXFzIjogW10sCiAgICAgICAgICAiUGF0Y2hl
cyI6IFsKICAgICAgICAgICAgInhzYTQ0MC00LjE3LnBhdGNoIgogICAgICAg
ICAgXQogICAgICAgIH0KICAgICAgfQogICAgfSwKICAgICJtYXN0ZXIiOiB7
CiAgICAgICJSZWNpcGVzIjogewogICAgICAgICJ4ZW4iOiB7CiAgICAgICAg
ICAiU3RhYmxlUmVmIjogImQwOWU0NGU1ZDhmZGZlMGE4YjhhZjFlZjYwNGRi
YzY5OTQ5N2UxMWEiLAogICAgICAgICAgIlByZXJlcXMiOiBbXSwKICAgICAg
ICAgICJQYXRjaGVzIjogW10KICAgICAgICB9CiAgICAgIH0KICAgIH0KICB9
Cn0=

--=separator
Content-Type: application/octet-stream; name="xsa440-4.17.patch"
Content-Disposition: attachment; filename="xsa440-4.17.patch"
Content-Transfer-Encoding: base64

RnJvbSA1ZDhiM2QxZWM5OGU1NjE1NWQ5NjUwZDdmNGE3MGNkOGJhOWRjMjdk
IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBKdWxpZW4gR3JhbGwg
PGpncmFsbEBhbWF6b24uY29tPgpEYXRlOiBGcmksIDIyIFNlcCAyMDIzIDEx
OjMyOjE2ICswMTAwClN1YmplY3Q6IHRvb2xzL3hlbnN0b3JlZDogZG9tYWlu
X2VudHJ5X2ZpeCgpOiBIYW5kbGUgY29uZmxpY3RpbmcgdHJhbnNhY3Rpb24K
ClRoZSBmdW5jdGlvbiBkb21haW5fZW50cnlfZml4KCkgd2lsbCBiZSBpbml0
aWFsbHkgY2FsbGVkIHRvIGNoZWNrIGlmIHRoZQpxdW90YSBpcyBjb3JyZWN0
IGJlZm9yZSBhdHRlbXB0IHRvIGNvbW1pdCBhbnkgbm9kZXMuIFNvIGl0IHdv
dWxkIGJlCnBvc3NpYmxlIHRoYXQgYWNjb3VudGluZyBpcyB0ZW1wb3Jhcmls
eSBuZWdhdGl2ZS4gVGhpcyBpcyB0aGUgY2FzZQppbiB0aGUgZm9sbG93aW5n
IHNlcXVlbmNlOgoKICAxKSBDcmVhdGUgNTAgbm9kZXMKICAyKSBTdGFydCB0
d28gdHJhbnNhY3Rpb25zCiAgMykgRGVsZXRlIGFsbCB0aGUgbm9kZXMgaW4g
ZWFjaCB0cmFuc2FjdGlvbgogIDQpIENvbW1pdCB0aGUgdHdvIHRyYW5zYWN0
aW9ucwoKQmVjYXVzZSB0aGUgZmlyc3QgdHJhbnNhY3Rpb24gd2lsbCBoYXZl
IHN1Y2NlZWQgYW5kIHVwZGF0ZWQgdGhlCmFjY291bnRpbmcsIHRoZXJlIGlz
IG5vIGd1YXJhbnRlZSB0aGF0ICdkLT5uYmVudHJ5ICsgbnVtJyB3aWxsIHN0
aWxsCmJlIGFib3ZlIDAuIFNvIHRoZSBhc3NlcnQoKSB3b3VsZCBiZSB0cmln
Z2VyZWQuClRoZSBhc3NlcnQoKSB3YXMgaW50cm9kdWNlZCBpbiBkYmVmMWY3
NDgyODkgKCJ0b29scy94ZW5zdG9yZTogc2ltcGxpZnkKYW5kIGZpeCBwZXIg
ZG9tYWluIG5vZGUgYWNjb3VudGluZyIpIHdpdGggdGhlIGFzc3VtcHRpb24g
dGhhdCB0aGUKdmFsdWUgY2FuJ3QgYmUgbmVnYXRpdmUuIEFzIHRoaXMgaXMg
bm90IHRydWUgcmV2ZXJ0IHRvIHRoZSBvcmlnaW5hbApjaGVjayBidXQgcmVz
dHJpY3RlZCB0byB0aGUgcGF0aCB3aGVyZSB3ZSBkb24ndCB1cGRhdGUuIFRh
a2UgdGhlCm9wcG9ydHVuaXR5IHRvIGV4cGxhaW4gdGhlIHJhdGlvbmFsZSBi
ZWhpbmQgdGhlIGNoZWNrLgoKVGhpcyBDVkUtMjAyMy0zNDMyMyAvIFhTQS00
NDAuCgpSZXBvcnRlZC1ieTogU3RhbmlzbGF2IFVzY2hha293IDxzdXNjaGFr
b0BhbWF6b24uZGU+CkZpeGVzOiBkYmVmMWY3NDgyODkgKCJ0b29scy94ZW5z
dG9yZTogc2ltcGxpZnkgYW5kIGZpeCBwZXIgZG9tYWluIG5vZGUgYWNjb3Vu
dGluZyIpClNpZ25lZC1vZmYtYnk6IEp1bGllbiBHcmFsbCA8amdyYWxsQGFt
YXpvbi5jb20+ClJldmlld2VkLWJ5OiBKdWVyZ2VuIEdyb3NzIDxqZ3Jvc3NA
c3VzZS5jb20+CgpkaWZmIC0tZ2l0IGEvdG9vbHMveGVuc3RvcmUveGVuc3Rv
cmVkX2RvbWFpbi5jIGIvdG9vbHMveGVuc3RvcmUveGVuc3RvcmVkX2RvbWFp
bi5jCmluZGV4IGFhODY4OTJmZWQ5ZS4uNjA3NGRmMjEwYzZlIDEwMDY0NAot
LS0gYS90b29scy94ZW5zdG9yZS94ZW5zdG9yZWRfZG9tYWluLmMKKysrIGIv
dG9vbHMveGVuc3RvcmUveGVuc3RvcmVkX2RvbWFpbi5jCkBAIC0xMDk0LDEw
ICsxMDk0LDIwIEBAIGludCBkb21haW5fZW50cnlfZml4KHVuc2lnbmVkIGlu
dCBkb21pZCwgaW50IG51bSwgYm9vbCB1cGRhdGUpCiAJfQogCiAJY250ID0g
ZC0+bmJlbnRyeSArIG51bTsKLQlhc3NlcnQoY250ID49IDApOwogCi0JaWYg
KHVwZGF0ZSkKKwlpZiAodXBkYXRlKSB7CisJCWFzc2VydChjbnQgPj0gMCk7
CiAJCWQtPm5iZW50cnkgPSBjbnQ7CisJfSBlbHNlIGlmIChjbnQgPCAwKSB7
CisJCS8qCisJCSAqIEluIGEgdHJhbnNhY3Rpb24gd2hlbiBhIG5vZGUgaXMg
YmVpbmcgYWRkZWQvcmVtb3ZlZCBBTkQKKwkJICogdGhlIHNhbWUgbm9kZSBo
YXMgYmVlbiBhZGRlZC9yZW1vdmVkIG91dHNpZGUgdGhlCisJCSAqIHRyYW5z
YWN0aW9uIGluIHBhcmFsbGVsLCB0aGUgcmVzdWx0IHZhbHVlIG1heSBiZSBu
ZWdhdGl2ZS4KKwkJICogVGhpcyBpcyBubyBwcm9ibGVtLCBhcyB0aGUgdHJh
bnNhY3Rpb24gd2lsbCBmYWlsIGR1ZSB0bworCQkgKiB0aGUgcmVzdWx0aW5n
IGNvbmZsaWN0LiBTbyBvdmVycmlkZSAnY250Jy4KKwkJICovCisJCWNudCA9
IDA7CisJfQogCiAJcmV0dXJuIGRvbWlkX2lzX3VucHJpdmlsZWdlZChkb21p
ZCkgPyBjbnQgOiAwOwogfQo=

--=separator--


From xen-devel-bounces@lists.xenproject.org Tue Oct 10 12:13:53 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 10 Oct 2023 12:13:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614795.956085 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqBcI-0006HZ-90; Tue, 10 Oct 2023 12:13:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614795.956085; Tue, 10 Oct 2023 12:13: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 1qqBcI-0006HS-69; Tue, 10 Oct 2023 12:13:38 +0000
Received: by outflank-mailman (input) for mailman id 614795;
 Tue, 10 Oct 2023 12:13: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 1qqBcH-0006HM-Hz
 for xen-devel@lists.xenproject.org; Tue, 10 Oct 2023 12:13: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 1qqBcG-0008As-D7; Tue, 10 Oct 2023 12:13:36 +0000
Received: from [15.248.2.156] (helo=[10.24.67.48])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qqBcG-0000qt-46; Tue, 10 Oct 2023 12:13: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=RLveUHV8OQlcFW/+suergQrYvKlbJ+9d/JJs3E9kxsI=; b=0+AU6tIkEB1wZud+0pEz6Mk8Zu
	5dgSkULtyswcs1XlgVLWemZOlzEtii6/xRAb4lg2HdGLU7FZ1AooQMAnD3SgzlceMKtQl9Nns5Cbv
	IKRLdrEUkR599e050/G3sc+3xztRW/OGCNHzmCYjbSQE+MrZ9IZUp66jO4VqqtBFguSE=;
Message-ID: <bcc81d48-fafb-417a-a609-d6e0c17daf99@xen.org>
Date: Tue, 10 Oct 2023 13:13:33 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN PATCH][for-4.19 8/9] xen/types: address Rule 10.1 for
 DECLARE_BITMAP use
Content-Language: en-GB
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,
 Paul Durrant <paul@xen.org>, George Dunlap <george.dunlap@citrix.com>,
 Wei Liu <wl@xen.org>
References: <cover.1696514677.git.nicola.vetrini@bugseng.com>
 <9642dcb4ab51ec9eaeedf16056fbcd946a3efbea.1696514677.git.nicola.vetrini@bugseng.com>
 <80101145-1958-457a-8c80-cae816ae74aa@xen.org>
 <4b144869407871011c538af48b311c31@bugseng.com>
 <354c6138-509e-4106-9a27-3c75c85b85e5@xen.org>
 <alpine.DEB.2.22.394.2310061746190.3431292@ubuntu-linux-20-04-desktop>
 <d90524b8-70ee-457e-8d6a-9e69f135b81d@xen.org>
 <alpine.DEB.2.22.394.2310091803060.3431292@ubuntu-linux-20-04-desktop>
 <f9a24504-97e7-4a2e-8601-8e4672b45f88@xen.org>
 <eda6269602e89abf5bd1e23cc81d0528@bugseng.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <eda6269602e89abf5bd1e23cc81d0528@bugseng.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit



On 10/10/2023 13:07, Nicola Vetrini wrote:
> 
>>>>>
>>>>> I agree on everything Julien's wrote and I was about to suggest to 
>>>>> use a
>>>>> SAF comment to suppress the warning because it is clearer than a int
>>>>> cast.
>>>>>
>>>>> But then I realized that even if BITS_TO_LONGS was fixed, wouldn't 
>>>>> still
>>>>> we have a problem because IOMMU_FEAT_count is an enum?
>>>>>
>>>>> Is it the case that IOMMU_FEAT_count would have to be cast regardless,
>>>>> either to int or unsigned int or whatever to be used in 
>>>>> DECLARE_BITMAP?
>>>>>
>>>>>
>>>>> So we have 2 problems here: one problem is DECLARE_BITMAP taking int
>>>>> instead of unsigned int, and another problem is IOMMU_FEAT_count being
>>>>> an enum.
>>>>>
>>>>> If I got it right, then I would go with the cast to int (like done in
>>>>> this patch) with a decent comment on top of it.
>>>>
>>>> I might be missing something here. But why should we use cast rather 
>>>> than /*
>>>> SAF-X */ just above? I would have expected we wanted to highlight the
>>>> violation rather than hiding it.
>>>
>>> My understanding is that the cast is required when converting an enum
>>> type to an integer type and vice versa. The idea is that we shouldn't do
>>> implicit conversions as they are error prone, only explicit conversions
>>> are allowed between enum and integers.
>>
>> We have a lot of places in Xen using implicit conversion from enum to
>> integer (for instance in the P2M code for p2m_type_t). Does ECLAIR
>> report all of them? If not, then why?
>>
> 
> Can you give some pointers as to where this enum is used in arithmetic 
> operations?

I can't think of any right now. But reply from Stefano suggested that it 
was necessary anytime we were using 'enum' as an '(unsigned) int'.

>  From a cursory glace I can see equality comparisons and
> as arguments to the array subscript operator, which are both compliant.

How about assigning an enum to an '(unsigned) int : X'? (where X is the 
number of bits.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Oct 10 12:15:49 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 10 Oct 2023 12:15:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614826.956095 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqBeK-0007E7-QG; Tue, 10 Oct 2023 12:15:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614826.956095; Tue, 10 Oct 2023 12:15: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 1qqBeK-0007Dz-Mx; Tue, 10 Oct 2023 12:15:44 +0000
Received: by outflank-mailman (input) for mailman id 614826;
 Tue, 10 Oct 2023 12:15: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=8mmp=FY=xenbits.xen.org=julieng@srs-se1.protection.inumbo.net>)
 id 1qqBYX-00044v-BA
 for xen-devel@lists.xen.org; Tue, 10 Oct 2023 12:09:45 +0000
Received: from mail.xenproject.org (mail.xenproject.org [104.130.215.37])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id e4da1f6a-6765-11ee-98d3-6d05b1d4d9a1;
 Tue, 10 Oct 2023 14:09:42 +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 1qqBYL-00084T-JJ; Tue, 10 Oct 2023 12:09:33 +0000
Received: from julieng by xenbits.xenproject.org with local (Exim 4.92)
 (envelope-from <julieng@xenbits.xen.org>)
 id 1qqBYL-0006qP-Hn; Tue, 10 Oct 2023 12:09: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: e4da1f6a-6765-11ee-98d3-6d05b1d4d9a1
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=yu+rMZGg4R2x2KurhkAHOf8QXTZjGW9SzsudQebrdT4=; b=SNBJOVlz304zMEJm5WiTukOjLg
	nVWZL6KqxmpI0NGuVlggQaHflyEUZO+UVuekcvViXPORO0sPi4U3MyEfVkrTkuKYTCVegRK8Beg9U
	9LJkOmuRkbbLtxlxu48fgBm4E9H870Ikcjcm6MaJmh7ta1XeCYxp+4X2T0+O5cUWK/j8=;
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 443 v3 (CVE-2023-34325) - Multiple
 vulnerabilities in libfsimage disk handling
Message-Id: <E1qqBYL-0006qP-Hn@xenbits.xenproject.org>
Date: Tue, 10 Oct 2023 12:09:33 +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-34325 / XSA-443
                               version 3

	   Multiple vulnerabilities in libfsimage disk handling

UPDATES IN VERSION 3
====================

Public release.

ISSUE DESCRIPTION
=================

libfsimage contains parsing code for several filesystems, most of them based on
grub-legacy code.  libfsimage is used by pygrub to inspect guest disks.

Pygrub runs as the same user as the toolstack (root in a priviledged domain).

At least one issue has been reported to the Xen Security Team that allows an
attacker to trigger a stack buffer overflow in libfsimage.  After further
analisys the Xen Security Team is no longer confident in the suitability of
libfsimage when run against guest controlled input with super user priviledges.

In order to not affect current deployments that rely on pygrub patches are
provided in the resolution section of the advisory that allow running pygrub in
deprivileged mode.

IMPACT
======

A guest using pygrub can escalate its privilege to that of the domain
construction tools (i.e., normally, to control of the host).

VULNERABLE SYSTEMS
==================

All Xen versions are affected.

MITIGATION
==========

Ensuring that guests do not use the pygrub bootloader will avoid this
vulnerability.

For cases where the PV guest is known to be 64bit, and uses grub2 as a
bootloader, pvgrub is a suitable alternative pygrub.

Running only HVM guests will avoid the vulnerability.

CREDITS
=======

This issue was discovered by Ferdinand Nölscher of Google.

RESOLUTION
==========

Applying patches 1-4 resolves the libfsimage XFS stack overflow.  Applying
patches 5-11 add additional functionality to pygrub and libxl in order to run
pygrub in a restricted environment using a specific UID.  Check xl.cfg man page
for information on the bootloader_restrict option.

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.

xsa443/xsa443-??.patch          xen-unstable
xsa443/xsa443-4.17-??.patch     Xen 4.17.x
xsa443/xsa443-4.16-??.patch     Xen 4.16.x
xsa443/xsa443-4.15-??.patch     Xen 4.15.x

$ sha256sum xsa443*/*
d2b306efd35b1e207904f4142be724c4b70bacafae73f8efd5ee12570eb235a1  xsa443/xsa443-01.patch
3af33399c9966465ef65461c344fe0c3184a21a59830de8e3701122cda4f5483  xsa443/xsa443-02.patch
a260be66f02307143d9e776cac2b95735011056bebd718f175680f879563ea21  xsa443/xsa443-03.patch
170d511df3a3898ab0302f7e85bc63127cb0b75f73fdcd83104d3f358365f648  xsa443/xsa443-4.15-01.patch
16c942da8929ab240a8807da05d9b39bbabfb34adc4f5a63bc3d2d99568973b1  xsa443/xsa443-4.15-02.patch
13fd27948f5a5e21e1a8e0ddf218ec79b44f1fca55fdc371c932ad2dfa5c23ea  xsa443/xsa443-4.15-03.patch
1c865b8f0048483ea76e8cfbeba1536ca6cbde04c58a7e0d485d46c063046cf4  xsa443/xsa443-4.15-04.patch
115b9561c0ea8f155d60049a1e60a26e5261147b1d2672d8a96313aef5dd95e6  xsa443/xsa443-4.15-05.patch
5e54fe8fcd56de43e9035e57ed964cc677aca853b6f205f8576f56aa8f968bf0  xsa443/xsa443-4.15-06.patch
a0bd7681bd541b21d069cd025cfb97c798c35041300d5cc86f59941471b88b3c  xsa443/xsa443-4.15-07.patch
165795217669df7fa2f6bcb3eb820f93391c7d46422eb941ae359b43ce5c510f  xsa443/xsa443-4.15-08.patch
fe8be8c39f83567597ec5077bd6fe8b57324d5f6bed7f5cfbed7df43008f7835  xsa443/xsa443-4.15-09.patch
48936926848af29786490dd6db3dcfaf8ed8443f1d6ae896dcb95c930e2f4c21  xsa443/xsa443-4.15-10.patch
213b6a45198869869248b2e3c096fd327f7b0cccbd68faa12335134172c7c908  xsa443/xsa443-4.15-11.patch
170d511df3a3898ab0302f7e85bc63127cb0b75f73fdcd83104d3f358365f648  xsa443/xsa443-4.16-01.patch
16c942da8929ab240a8807da05d9b39bbabfb34adc4f5a63bc3d2d99568973b1  xsa443/xsa443-4.16-02.patch
13fd27948f5a5e21e1a8e0ddf218ec79b44f1fca55fdc371c932ad2dfa5c23ea  xsa443/xsa443-4.16-03.patch
1c865b8f0048483ea76e8cfbeba1536ca6cbde04c58a7e0d485d46c063046cf4  xsa443/xsa443-4.16-04.patch
115b9561c0ea8f155d60049a1e60a26e5261147b1d2672d8a96313aef5dd95e6  xsa443/xsa443-4.16-05.patch
5e54fe8fcd56de43e9035e57ed964cc677aca853b6f205f8576f56aa8f968bf0  xsa443/xsa443-4.16-06.patch
a0bd7681bd541b21d069cd025cfb97c798c35041300d5cc86f59941471b88b3c  xsa443/xsa443-4.16-07.patch
165795217669df7fa2f6bcb3eb820f93391c7d46422eb941ae359b43ce5c510f  xsa443/xsa443-4.16-08.patch
fe8be8c39f83567597ec5077bd6fe8b57324d5f6bed7f5cfbed7df43008f7835  xsa443/xsa443-4.16-09.patch
c9538238f4b636b7d093a59610b0eab2e7fd409a7cc9e988d006bee4c9b944f7  xsa443/xsa443-4.16-10.patch
62147de7a6b8a0073c7abe204da25e94871a32c4e3851f9feccf065976dc0267  xsa443/xsa443-4.16-11.patch
3322213303481fea964cf18e09b172d42caf21fe662c947ae6ddc0d8a1789fa1  xsa443/xsa443-4.17-01.patch
02cf94559407d693ef2dcfc47671b63f5f27019dd759bae3b5eaaa922fb4ea74  xsa443/xsa443-4.17-02.patch
189bef69380d6fbd7f571b2fe11908bac26a650e2b0d040e12b8c1266373f8c8  xsa443/xsa443-4.17-03.patch
cdb4f0dd47a6c8a759ae4ffd400f2ce72675b8779ca5576dea74e372ca77a021  xsa443/xsa443-4.17-04.patch
2147dcf95b1ad36da0961e2c084072fa9eb59486e9c0ed43444d268a17d01ee1  xsa443/xsa443-4.17-05.patch
a523273792a77fa55a7ab8925369edcb9d9ae50e8e9236be43f23e66aaa0f5e2  xsa443/xsa443-4.17-06.patch
54f97e027c80bfed8e3559ba8d89a69d2f4c48e1017c2090af029a01efe49741  xsa443/xsa443-4.17-07.patch
79667e7b8fbfa43f9135ba14ca364c63e1e7e7c3a68ae12513fe0204e57fa2bd  xsa443/xsa443-4.17-08.patch
11125e8da5f9e8313d943e6cbba2ff160478681c290b1413c88113292cca91c4  xsa443/xsa443-4.17-09.patch
113bbc294e10be4e8bf9855536114f875add033f790504f5c744b38da85d1b11  xsa443/xsa443-4.17-10.patch
7e5c7d4ef0b148ce9421c1856ced8b023bae22abc8e13956fe2832628c9d4189  xsa443/xsa443-4.17-11.patch
eb81bcbaf1016bce77696c1f2f5cd90b22e11eaa02d15c36c4c704b02981c50d  xsa443/xsa443-04.patch
5a099d8bf6a06e318f9ff92491ae4191fd2a3f8637a3c9616173bd2c7d56dbb6  xsa443/xsa443-05.patch
32733ee7dd1baf81338d50532876f211660dd65eb44f3ea121604b4c897ba30f  xsa443/xsa443-06.patch
9dfe8e70ed3007dbe46de75d6790baa770d91ac42d6abf642ca0f11b8b2d6b6d  xsa443/xsa443-07.patch
b8040da4d2ef22ed9f96e1648fa8c4682f82bce2d17bbdd9f2250c48f8858d10  xsa443/xsa443-08.patch
4b0fa7efd271de010943a2974e178d6e9c44c5181a94fc58ddd3f9ecd953d572  xsa443/xsa443-09.patch
f1b97a6ee5dc15a2b85ffde12242eb65d885b244419f34d737eb4489769f7224  xsa443/xsa443-10.patch
eafccd01a5458baf2a7f39b3e533fd3638d6f728078c437247dc712856422706  xsa443/xsa443-11.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/4UyVfoK9kFAmUlPtsMHHBncEB4ZW4u
b3JnAAoJEIP+FMlX6CvZ6lMH/3f5DIVYOXpxa8SQoBSwvcqkaFvDTxYBZnB3EsyT
LJu3qc4h02ocl+128vmn1f6L2yz9bC1aXZeQdipMQfyHkdZZtmG6RrEeqR53zD65
s+r2eux/i5F5rTa//2IRfTuupWFbp7B8cHZGNFGWdL4US9KRC2ZqYOch701zz+FN
bTPNME21WYhlohHN1o3VLfY0BfF3ESFkoRg4KCdSyuyl1JZlEg07X/azW/0VSo9K
O3zbYo7kVEgqorWAYtZ8WMb/7DCO7lyHp88pFozQGtkE5oP00+nZioXG56kBH6+T
3URgM26eI/EiECSqHi1v56Glcj9uAWnduCRCutrBmaNOR+E=
=Grkm
-----END PGP SIGNATURE-----

--=separator
Content-Type: application/octet-stream; name="xsa443/xsa443-01.patch"
Content-Disposition: attachment; filename="xsa443/xsa443-01.patch"
Content-Transfer-Encoding: base64

RnJvbSBiMWE0YmIzNWI0ZmEwYmU2M2U4MDg1OTE5Yzc0NzU0NjllNjAyMGYx
IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBBbGVqYW5kcm8gVmFs
bGVqbyA8YWxlamFuZHJvLnZhbGxlam9AY2xvdWQuY29tPgpEYXRlOiBUaHUs
IDE0IFNlcCAyMDIzIDEzOjIyOjUwICswMTAwClN1YmplY3Q6IFtQQVRDSCAw
MS8xMV0gbGliZnNpbWFnZS94ZnM6IFJlbW92ZSBkZWFkIGNvZGUKCnhmc19p
bmZvLmFnbm9sb2cgKGFuZCByZWxhdGVkIGNvZGUpIGFuZCBYRlNfSU5PX0FH
Qk5PX0JJVFMgYXJlIGRlYWQgY29kZQp0aGF0IHNlcnZlIG5vIHB1cnBvc2Uu
CgpUaGlzIGlzIHBhcnQgb2YgWFNBLTQ0MyAvIENWRS0yMDIzLTM0MzI1CgpT
aWduZWQtb2ZmLWJ5OiBBbGVqYW5kcm8gVmFsbGVqbyA8YWxlamFuZHJvLnZh
bGxlam9AY2xvdWQuY29tPgpSZXZpZXdlZC1ieTogSmFuIEJldWxpY2ggPGpi
ZXVsaWNoQHN1c2UuY29tPgotLS0KIHRvb2xzL2xpYmZzaW1hZ2UveGZzL2Zz
eXNfeGZzLmMgfCAxOCAtLS0tLS0tLS0tLS0tLS0tLS0KIDEgZmlsZSBjaGFu
Z2VkLCAxOCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS90b29scy9saWJm
c2ltYWdlL3hmcy9mc3lzX3hmcy5jIGIvdG9vbHMvbGliZnNpbWFnZS94ZnMv
ZnN5c194ZnMuYwppbmRleCBiOGI0Y2E5MjhjYzUuLjI0NWFlOWExOGIzYiAx
MDA2NDQKLS0tIGEvdG9vbHMvbGliZnNpbWFnZS94ZnMvZnN5c194ZnMuYwor
KysgYi90b29scy9saWJmc2ltYWdlL3hmcy9mc3lzX3hmcy5jCkBAIC0zOCw3
ICszOCw2IEBAIHN0cnVjdCB4ZnNfaW5mbyB7CiAJaW50IGJsa2xvZzsKIAlp
bnQgaW5vcGJsb2c7CiAJaW50IGFnYmxrbG9nOwotCWludCBhZ25vbG9nOwog
CXVuc2lnbmVkIGludCBuZXh0ZW50czsKIAl4ZnNfZGFkZHJfdCBuZXh0Owog
CXhmc19kYWRkcl90IGRhZGRyOwpAQCAtNjYsOSArNjUsNyBAQCBzdGF0aWMg
c3RydWN0IHhmc19pbmZvIHhmczsKIAogI2RlZmluZQlYRlNfSU5PX01BU0so
aykJCSgoeGZzX3VpbnQzMl90KSgoMVVMTCA8PCAoaykpIC0gMSkpCiAjZGVm
aW5lCVhGU19JTk9fT0ZGU0VUX0JJVFMJeGZzLmlub3BibG9nCi0jZGVmaW5l
CVhGU19JTk9fQUdCTk9fQklUUwl4ZnMuYWdibGtsb2cKICNkZWZpbmUJWEZT
X0lOT19BR0lOT19CSVRTCSh4ZnMuYWdibGtsb2cgKyB4ZnMuaW5vcGJsb2cp
Ci0jZGVmaW5lCVhGU19JTk9fQUdOT19CSVRTCXhmcy5hZ25vbG9nCiAKIHN0
YXRpYyBpbmxpbmUgeGZzX2FnYmxvY2tfdAogYWdpbm8yYWdibm8gKHhmc19h
Z2lub190IGFnaW5vKQpAQCAtMTUwLDIwICsxNDcsNiBAQCB4dF9sZW4gKHhm
c19ibWJ0X3JlY18zMl90ICpyKQogCXJldHVybiBsZTMyKHItPmwzKSAmIG1h
c2szMmxvKDIxKTsKIH0KIAotc3RhdGljIGlubGluZSBpbnQKLXhmc19oaWdo
Yml0MzIoeGZzX3VpbnQzMl90IHYpCi17Ci0JaW50IGk7Ci0KLQlpZiAoLS12
KSB7Ci0JCWZvciAoaSA9IDA7IGkgPCAzMTsgaSsrLCB2ID4+PSAxKSB7Ci0J
CQlpZiAodiA9PSAwKQotCQkJCXJldHVybiBpOwotCQl9Ci0JfQotCXJldHVy
biAwOwotfQotCiBzdGF0aWMgaW50CiBpc2lueHQgKHhmc19maWxlb2ZmX3Qg
a2V5LCB4ZnNfZmlsZW9mZl90IG9mZnNldCwgeGZzX2ZpbGJsa3NfdCBsZW4p
CiB7CkBAIC00NzAsNyArNDUzLDYgQEAgeGZzX21vdW50IChmc2lfZmlsZV90
ICpmZmksIGNvbnN0IGNoYXIgKm9wdGlvbnMpCiAKIAl4ZnMuaW5vcGJsb2cg
PSBzdXBlci5zYl9pbm9wYmxvZzsKIAl4ZnMuYWdibGtsb2cgPSBzdXBlci5z
Yl9hZ2Jsa2xvZzsKLQl4ZnMuYWdub2xvZyA9IHhmc19oaWdoYml0MzIgKGxl
MzIoc3VwZXIuc2JfYWdjb3VudCkpOwogCiAJeGZzLmJ0bm9kZV9wdHIwX29m
ZiA9CiAJCSgoeGZzLmJzaXplIC0gc2l6ZW9mKHhmc19idHJlZV9ibG9ja190
KSkgLwotLSAKMi40Mi4wCgo=

--=separator
Content-Type: application/octet-stream; name="xsa443/xsa443-02.patch"
Content-Disposition: attachment; filename="xsa443/xsa443-02.patch"
Content-Transfer-Encoding: base64

RnJvbSA4MTBmNGE1M2MxYWQ5Y2U2MDIwN2IwYWJhNzFiYjdiZWMzYjFlYzhl
IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBBbGVqYW5kcm8gVmFs
bGVqbyA8YWxlamFuZHJvLnZhbGxlam9AY2xvdWQuY29tPgpEYXRlOiBUaHUs
IDE0IFNlcCAyMDIzIDEzOjIyOjUxICswMTAwClN1YmplY3Q6IFtQQVRDSCAw
Mi8xMV0gbGliZnNpbWFnZS94ZnM6IEFtZW5kIG1hc2szMmxvKCkgdG8gYWxs
b3cgdGhlIHZhbHVlIDMyCgphZ2Jsa2xvZyBjb3VsZCBwbGF1c2libHkgYmUg
MzIsIGJ1dCB0aGF0IHdvdWxkIG92ZXJmbG93IHRoaXMgc2hpZnQuClBlcmZv
cm0gdGhlIHNoaWZ0IGFzIFVMTCBhbmQgY2FzdCB0byB1MzIgYXQgdGhlIGVu
ZCBpbnN0ZWFkLgoKVGhpcyBpcyBwYXJ0IG9mIFhTQS00NDMgLyBDVkUtMjAy
My0zNDMyNQoKU2lnbmVkLW9mZi1ieTogQWxlamFuZHJvIFZhbGxlam8gPGFs
ZWphbmRyby52YWxsZWpvQGNsb3VkLmNvbT4KQWNrZWQtYnk6IEphbiBCZXVs
aWNoIDxqYmV1bGljaEBzdXNlLmNvbT4KLS0tCiB0b29scy9saWJmc2ltYWdl
L3hmcy9mc3lzX3hmcy5jIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5z
ZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvdG9vbHMv
bGliZnNpbWFnZS94ZnMvZnN5c194ZnMuYyBiL3Rvb2xzL2xpYmZzaW1hZ2Uv
eGZzL2ZzeXNfeGZzLmMKaW5kZXggMjQ1YWU5YTE4YjNiLi5kYmRiMjFkMTU2
ZTAgMTAwNjQ0Ci0tLSBhL3Rvb2xzL2xpYmZzaW1hZ2UveGZzL2ZzeXNfeGZz
LmMKKysrIGIvdG9vbHMvbGliZnNpbWFnZS94ZnMvZnN5c194ZnMuYwpAQCAt
NjEsNyArNjEsNyBAQCBzdGF0aWMgc3RydWN0IHhmc19pbmZvIHhmczsKICNk
ZWZpbmUgaW5vZGUJCSgoeGZzX2Rpbm9kZV90ICopKChjaGFyICopRlNZU19C
VUYgKyA4MTkyKSkKICNkZWZpbmUgaWNvcmUJCShpbm9kZS0+ZGlfY29yZSkK
IAotI2RlZmluZQltYXNrMzJsbyhuKQkoKCh4ZnNfdWludDMyX3QpMSA8PCAo
bikpIC0gMSkKKyNkZWZpbmUJbWFzazMybG8obikJKCh4ZnNfdWludDMyX3Qp
KCgxdWxsIDw8IChuKSkgLSAxKSkKIAogI2RlZmluZQlYRlNfSU5PX01BU0so
aykJCSgoeGZzX3VpbnQzMl90KSgoMVVMTCA8PCAoaykpIC0gMSkpCiAjZGVm
aW5lCVhGU19JTk9fT0ZGU0VUX0JJVFMJeGZzLmlub3BibG9nCi0tIAoyLjQy
LjAKCg==

--=separator
Content-Type: application/octet-stream; name="xsa443/xsa443-03.patch"
Content-Disposition: attachment; filename="xsa443/xsa443-03.patch"
Content-Transfer-Encoding: base64

RnJvbSBkZjhmYzE2ZjU3MDQ4N2RiOTM4NTg2ZGNkZjhlOWNiNjYyOGU5YjA2
IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBBbGVqYW5kcm8gVmFs
bGVqbyA8YWxlamFuZHJvLnZhbGxlam9AY2xvdWQuY29tPgpEYXRlOiBUaHUs
IDE0IFNlcCAyMDIzIDEzOjIyOjUyICswMTAwClN1YmplY3Q6IFtQQVRDSCAw
My8xMV0gbGliZnNpbWFnZS94ZnM6IFNhbml0eS1jaGVjayB0aGUgc3VwZXJi
bG9jayBkdXJpbmcKIG1vdW50cwoKU2FuaXR5LWNoZWNrIHRoZSBYRlMgc3Vw
ZXJibG9jayBmb3Igd2VsbGZvcm1lZG5lc3MgYXQgdGhlIG1vdW50IGhhbmRs
ZXIuClRoaXMgZm9yY2VzIHB5Z3J1YiB0byBhYm9ydCBwYXJzaW5nIGEgcG90
ZW50aWFsbHkgbWFsZm9ybWVkIGZpbGVzeXN0ZW0gYW5kCmVuc3VyZXMgdGhl
IGludmFyaWFudHMgYXNzdW1lZCB0aHJvdWdob3V0IHRoZSByZXN0IG9mIHRo
ZSBjb2RlIGhvbGQuCgpBbHNvLCBkZXJpdmUgcGFyYW1ldGVycyBmcm9tIHBy
ZXZpb3VzbHkgc2FuaXRpemVkIHBhcmFtZXRlcnMgd2hlcmUgcG9zc2libGUK
KHJhdGhlciB0aGFuIHJlYWRpbmcgdGhlbSBvZmYgdGhlIHN1cGVyYmxvY2sp
CgpUaGUgY29kZSBkb2Vzbid0IHRyeSB0byBhdm9pZCBvdmVyZmxvd2luZyB0
aGUgZW5kIG9mIHRoZSBkaXNrLCBiZWNhdXNlCnRoYXQncyBhbiB1bmxpa2Vs
eSBhbmQgYmVuaWduIGVycm9yLiBQYXJhbWV0ZXJzIHVzZWQgaW4gY2FsY3Vs
YXRpb25zIG9mCnhmc19kYWRkcl90IChsaWtlIHRoZSByb290IGlub2RlIGlu
ZGV4KSBhcmVuJ3QgaW4gY3JpdGljYWwgbmVlZCBvZiBiZWluZwpzYW5pdGl6
ZWQuCgpUaGUgc2FuaXRpemF0aW9uIG9mIGFnYmxrbG9nIGlzIGJhc2ljYWxs
eSBjaGVja2luZyB0aGF0IG5vIG9idmlvdXMKb3ZlcmZsb3dzIGhhcHBlbiBv
biBhZ2Jsa2xvZywgYW5kIHRoZW4gZW5zdXJpbmcgYWdibG9ja3MgaXMgY29u
dGFpbmVkIGluCnRoZSByYW5nZSAoMl4oc2JfYWdibGtsb2ctMSksIDJec2Jf
YWdibGtsb2ddLgoKVGhpcyBpcyBwYXJ0IG9mIFhTQS00NDMgLyBDVkUtMjAy
My0zNDMyNQoKUmVwb3J0ZWQtYnk6IEZlcmRpbmFuZCBOw7Zsc2NoZXIgPG5v
ZWxzY2hlckBnb29nbGUuY29tPgpTaWduZWQtb2ZmLWJ5OiBBbGVqYW5kcm8g
VmFsbGVqbyA8YWxlamFuZHJvLnZhbGxlam9AY2xvdWQuY29tPgpSZXZpZXdl
ZC1ieTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgotLS0KIHRv
b2xzL2xpYmZzaW1hZ2UveGZzL2ZzeXNfeGZzLmMgfCA0OCArKysrKysrKysr
KysrKysrKysrKysrKysrKy0tLS0tLS0KIHRvb2xzL2xpYmZzaW1hZ2UveGZz
L3hmcy5oICAgICAgfCAxMiArKysrKysrKysKIDIgZmlsZXMgY2hhbmdlZCwg
NTAgaW5zZXJ0aW9ucygrKSwgMTAgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0
IGEvdG9vbHMvbGliZnNpbWFnZS94ZnMvZnN5c194ZnMuYyBiL3Rvb2xzL2xp
YmZzaW1hZ2UveGZzL2ZzeXNfeGZzLmMKaW5kZXggZGJkYjIxZDE1NmUwLi5i
NWM1M2QzZDIyMmIgMTAwNjQ0Ci0tLSBhL3Rvb2xzL2xpYmZzaW1hZ2UveGZz
L2ZzeXNfeGZzLmMKKysrIGIvdG9vbHMvbGliZnNpbWFnZS94ZnMvZnN5c194
ZnMuYwpAQCAtMTgsNiArMTgsNyBAQAogICovCiAKICNpbmNsdWRlIDxzdGRk
ZWYuaD4KKyNpbmNsdWRlIDxzdGRib29sLmg+CiAjaW5jbHVkZSA8eGVuZnNp
bWFnZV9ncnViLmg+CiAjaW5jbHVkZSAieGZzLmgiCiAKQEAgLTQzMSwyOSAr
NDMyLDU2IEBAIGZpcnN0X2RlbnRyeSAoZnNpX2ZpbGVfdCAqZmZpLCB4ZnNf
aW5vX3QgKmlubykKIAlyZXR1cm4gbmV4dF9kZW50cnkgKGZmaSwgaW5vKTsK
IH0KIAorc3RhdGljIGJvb2wKK3hmc19zYl9pc19pbnZhbGlkIChjb25zdCB4
ZnNfc2JfdCAqc3VwZXIpCit7CisJcmV0dXJuIChsZTMyKHN1cGVyLT5zYl9t
YWdpY251bSkgIT0gWEZTX1NCX01BR0lDKQorCSAgICB8fCAoKGxlMTYoc3Vw
ZXItPnNiX3ZlcnNpb25udW0pICYgWEZTX1NCX1ZFUlNJT05fTlVNQklUUykg
IT0KKwkgICAgICAgIFhGU19TQl9WRVJTSU9OXzQpCisJICAgIHx8IChzdXBl
ci0+c2JfaW5vZGVsb2cgPCBYRlNfU0JfSU5PREVMT0dfTUlOKQorCSAgICB8
fCAoc3VwZXItPnNiX2lub2RlbG9nID4gWEZTX1NCX0lOT0RFTE9HX01BWCkK
KwkgICAgfHwgKHN1cGVyLT5zYl9ibG9ja2xvZyA8IFhGU19TQl9CTE9DS0xP
R19NSU4pCisJICAgIHx8IChzdXBlci0+c2JfYmxvY2tsb2cgPiBYRlNfU0Jf
QkxPQ0tMT0dfTUFYKQorCSAgICB8fCAoc3VwZXItPnNiX2Jsb2NrbG9nIDwg
c3VwZXItPnNiX2lub2RlbG9nKQorCSAgICB8fCAoc3VwZXItPnNiX2FnYmxr
bG9nID4gWEZTX1NCX0FHQkxLTE9HX01BWCkKKwkgICAgfHwgKCgxdWxsIDw8
IHN1cGVyLT5zYl9hZ2Jsa2xvZykgPCBsZTMyKHN1cGVyLT5zYl9hZ2Jsb2Nr
cykpCisJICAgIHx8ICgoKDF1bGwgPDwgc3VwZXItPnNiX2FnYmxrbG9nKSA+
PiAxKSA+PQorCSAgICAgICAgbGUzMihzdXBlci0+c2JfYWdibG9ja3MpKQor
CSAgICB8fCAoKHN1cGVyLT5zYl9ibG9ja2xvZyArIHN1cGVyLT5zYl9kaXJi
bGtsb2cpID49CisJICAgICAgICBYRlNfU0JfRElSQkxLX05VTUJJVFMpOwor
fQorCiBzdGF0aWMgaW50CiB4ZnNfbW91bnQgKGZzaV9maWxlX3QgKmZmaSwg
Y29uc3QgY2hhciAqb3B0aW9ucykKIHsKIAl4ZnNfc2JfdCBzdXBlcjsKIAog
CWlmICghZGV2cmVhZCAoZmZpLCAwLCAwLCBzaXplb2Yoc3VwZXIpLCAoY2hh
ciAqKSZzdXBlcikKLQkgICAgfHwgKGxlMzIoc3VwZXIuc2JfbWFnaWNudW0p
ICE9IFhGU19TQl9NQUdJQykKLQkgICAgfHwgKChsZTE2KHN1cGVyLnNiX3Zl
cnNpb25udW0pIAotCQkmIFhGU19TQl9WRVJTSU9OX05VTUJJVFMpICE9IFhG
U19TQl9WRVJTSU9OXzQpICkgeworCSAgICB8fCB4ZnNfc2JfaXNfaW52YWxp
ZCgmc3VwZXIpKSB7CiAJCXJldHVybiAwOwogCX0KIAotCXhmcy5ic2l6ZSA9
IGxlMzIgKHN1cGVyLnNiX2Jsb2Nrc2l6ZSk7Ci0JeGZzLmJsa2xvZyA9IHN1
cGVyLnNiX2Jsb2NrbG9nOwotCXhmcy5iZGxvZyA9IHhmcy5ibGtsb2cgLSBT
RUNUT1JfQklUUzsKKwkvKgorCSAqIE5vdCBzYW5pdGl6ZWQuIEl0J3MgZXhj
bHVzaXZlbHkgdXNlZCB0byBnZW5lcmF0ZSBkaXNrIGFkZHJlc3NlcywKKwkg
KiBzbyBpdCdzIG5vdCBpbXBvcnRhbnQgZnJvbSBhIHNlY3VyaXR5IHN0YW5k
cG9pbnQuCisJICovCiAJeGZzLnJvb3Rpbm8gPSBsZTY0IChzdXBlci5zYl9y
b290aW5vKTsKLQl4ZnMuaXNpemUgPSBsZTE2IChzdXBlci5zYl9pbm9kZXNp
emUpOwotCXhmcy5hZ2Jsb2NrcyA9IGxlMzIgKHN1cGVyLnNiX2FnYmxvY2tz
KTsKLQl4ZnMuZGlyYnNpemUgPSB4ZnMuYnNpemUgPDwgc3VwZXIuc2JfZGly
YmxrbG9nOwogCi0JeGZzLmlub3BibG9nID0gc3VwZXIuc2JfaW5vcGJsb2c7
CisJLyoKKwkgKiBTYW5pdGl6ZWQgdG8gYmUgY29uc2lzdGVudCB3aXRoIGVh
Y2ggb3RoZXIsIG9ubHkgdXNlZCB0bworCSAqIGdlbmVyYXRlIGRpc2sgYWRk
cmVzc2VzLCBzbyBpdCdzIHNhZmUKKwkgKi8KKwl4ZnMuYWdibG9ja3MgPSBs
ZTMyIChzdXBlci5zYl9hZ2Jsb2Nrcyk7CiAJeGZzLmFnYmxrbG9nID0gc3Vw
ZXIuc2JfYWdibGtsb2c7CiAKKwkvKiBEZXJpdmVkIGZyb20gc2FuaXRpemVk
IHBhcmFtZXRlcnMgKi8KKwl4ZnMuYnNpemUgPSAxIDw8IHN1cGVyLnNiX2Js
b2NrbG9nOworCXhmcy5ibGtsb2cgPSBzdXBlci5zYl9ibG9ja2xvZzsKKwl4
ZnMuYmRsb2cgPSBzdXBlci5zYl9ibG9ja2xvZyAtIFNFQ1RPUl9CSVRTOwor
CXhmcy5pc2l6ZSA9IDEgPDwgc3VwZXIuc2JfaW5vZGVsb2c7CisJeGZzLmRp
cmJzaXplID0gMSA8PCAoc3VwZXIuc2JfYmxvY2tsb2cgKyBzdXBlci5zYl9k
aXJibGtsb2cpOworCXhmcy5pbm9wYmxvZyA9IHN1cGVyLnNiX2Jsb2NrbG9n
IC0gc3VwZXIuc2JfaW5vZGVsb2c7CisKIAl4ZnMuYnRub2RlX3B0cjBfb2Zm
ID0KIAkJKCh4ZnMuYnNpemUgLSBzaXplb2YoeGZzX2J0cmVlX2Jsb2NrX3Qp
KSAvCiAJCShzaXplb2YgKHhmc19ibWJ0X2tleV90KSArIHNpemVvZiAoeGZz
X2JtYnRfcHRyX3QpKSkKZGlmZiAtLWdpdCBhL3Rvb2xzL2xpYmZzaW1hZ2Uv
eGZzL3hmcy5oIGIvdG9vbHMvbGliZnNpbWFnZS94ZnMveGZzLmgKaW5kZXgg
NDA2OTkyODFlNDRkLi5iODdlMzdkM2Q3ZTkgMTAwNjQ0Ci0tLSBhL3Rvb2xz
L2xpYmZzaW1hZ2UveGZzL3hmcy5oCisrKyBiL3Rvb2xzL2xpYmZzaW1hZ2Uv
eGZzL3hmcy5oCkBAIC0xMzQsNiArMTM0LDE4IEBAIHR5cGVkZWYgc3RydWN0
IHhmc19zYgogICAgICAgICB4ZnNfdWludDhfdCAgICAgICBzYl9kdW1teVs3
XTsgICAgLyogcGFkZGluZyAqLwogfSB4ZnNfc2JfdDsKIAorLyogQm91bmQg
dGFrZW4gZnJvbSB4ZnMuYyBpbiBHUlVCMi4gSXQgZG9lc24ndCBleGlzdCBp
biB0aGUgc3BlYyAqLworI2RlZmluZQlYRlNfU0JfRElSQkxLX05VTUJJVFMJ
MjcKKy8qIEltcGxpZWQgYnkgdGhlIFhGUyBzcGVjaWZpY2F0aW9uLiBUaGUg
bWluaW11bSBibG9jayBzaXplIGlzIDUxMiBvY3RldHMgKi8KKyNkZWZpbmUJ
WEZTX1NCX0JMT0NLTE9HX01JTgk5CisvKiBJbXBsaWVkIGJ5IHRoZSBYRlMg
c3BlY2lmaWNhdGlvbi4gVGhlIG1heGltdW0gYmxvY2sgc2l6ZSBpcyA2NTUz
NiBvY3RldHMgKi8KKyNkZWZpbmUJWEZTX1NCX0JMT0NLTE9HX01BWAkxNgor
LyogSW1wbGllZCBieSB0aGUgWEZTIHNwZWNpZmljYXRpb24uIFRoZSBtaW5p
bXVtIGlub2RlIHNpemUgaXMgMjU2IG9jdGV0cyAqLworI2RlZmluZQlYRlNf
U0JfSU5PREVMT0dfTUlOCTgKKy8qIEltcGxpZWQgYnkgdGhlIFhGUyBzcGVj
aWZpY2F0aW9uLiBUaGUgbWF4aW11bSBpbm9kZSBzaXplIGlzIDIwNDggb2N0
ZXRzICovCisjZGVmaW5lCVhGU19TQl9JTk9ERUxPR19NQVgJMTEKKy8qIEhp
Z2ggYm91bmQgZm9yIHNiX2FnYmxrbG9nICovCisjZGVmaW5lCVhGU19TQl9B
R0JMS0xPR19NQVgJMzIKIAogLyogdGhvc2UgYXJlIGZyb20geGZzX2J0cmVl
LmggKi8KIAotLSAKMi40Mi4wCgo=

--=separator
Content-Type: application/octet-stream; name="xsa443/xsa443-4.15-01.patch"
Content-Disposition: attachment; filename="xsa443/xsa443-4.15-01.patch"
Content-Transfer-Encoding: base64

RnJvbSBjNGQ1OTdmNjM4MzJhNTNiYmIxYjgyNmFmN2E0Njc3ZTQwZTlmZGVk
IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBBbGVqYW5kcm8gVmFs
bGVqbyA8YWxlamFuZHJvLnZhbGxlam9AY2xvdWQuY29tPgpEYXRlOiBUaHUs
IDE0IFNlcCAyMDIzIDEzOjIyOjUwICswMTAwClN1YmplY3Q6IFtQQVRDSCAw
MS8xMV0gbGliZnNpbWFnZS94ZnM6IFJlbW92ZSBkZWFkIGNvZGUKCnhmc19p
bmZvLmFnbm9sb2cgKGFuZCByZWxhdGVkIGNvZGUpIGFuZCBYRlNfSU5PX0FH
Qk5PX0JJVFMgYXJlIGRlYWQgY29kZQp0aGF0IHNlcnZlIG5vIHB1cnBvc2Uu
CgpUaGlzIGlzIHBhcnQgb2YgWFNBLTQ0MyAvIENWRS0yMDIzLTM0MzI1CgpT
aWduZWQtb2ZmLWJ5OiBBbGVqYW5kcm8gVmFsbGVqbyA8YWxlamFuZHJvLnZh
bGxlam9AY2xvdWQuY29tPgpSZXZpZXdlZC1ieTogSmFuIEJldWxpY2ggPGpi
ZXVsaWNoQHN1c2UuY29tPgotLS0KIHRvb2xzL2xpYmZzaW1hZ2UveGZzL2Zz
eXNfeGZzLmMgfCAxOCAtLS0tLS0tLS0tLS0tLS0tLS0KIDEgZmlsZSBjaGFu
Z2VkLCAxOCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS90b29scy9saWJm
c2ltYWdlL3hmcy9mc3lzX3hmcy5jIGIvdG9vbHMvbGliZnNpbWFnZS94ZnMv
ZnN5c194ZnMuYwppbmRleCBkNzM1YTg4ZTU1ZjMuLjI4MDA2OTlmNTk4NSAx
MDA2NDQKLS0tIGEvdG9vbHMvbGliZnNpbWFnZS94ZnMvZnN5c194ZnMuYwor
KysgYi90b29scy9saWJmc2ltYWdlL3hmcy9mc3lzX3hmcy5jCkBAIC0zNyw3
ICszNyw2IEBAIHN0cnVjdCB4ZnNfaW5mbyB7CiAJaW50IGJsa2xvZzsKIAlp
bnQgaW5vcGJsb2c7CiAJaW50IGFnYmxrbG9nOwotCWludCBhZ25vbG9nOwog
CXVuc2lnbmVkIGludCBuZXh0ZW50czsKIAl4ZnNfZGFkZHJfdCBuZXh0Owog
CXhmc19kYWRkcl90IGRhZGRyOwpAQCAtNjUsOSArNjQsNyBAQCBzdGF0aWMg
c3RydWN0IHhmc19pbmZvIHhmczsKIAogI2RlZmluZQlYRlNfSU5PX01BU0so
aykJCSgoeGZzX3VpbnQzMl90KSgoMVVMTCA8PCAoaykpIC0gMSkpCiAjZGVm
aW5lCVhGU19JTk9fT0ZGU0VUX0JJVFMJeGZzLmlub3BibG9nCi0jZGVmaW5l
CVhGU19JTk9fQUdCTk9fQklUUwl4ZnMuYWdibGtsb2cKICNkZWZpbmUJWEZT
X0lOT19BR0lOT19CSVRTCSh4ZnMuYWdibGtsb2cgKyB4ZnMuaW5vcGJsb2cp
Ci0jZGVmaW5lCVhGU19JTk9fQUdOT19CSVRTCXhmcy5hZ25vbG9nCiAKIHN0
YXRpYyBpbmxpbmUgeGZzX2FnYmxvY2tfdAogYWdpbm8yYWdibm8gKHhmc19h
Z2lub190IGFnaW5vKQpAQCAtMTQ5LDIwICsxNDYsNiBAQCB4dF9sZW4gKHhm
c19ibWJ0X3JlY18zMl90ICpyKQogCXJldHVybiBsZTMyKHItPmwzKSAmIG1h
c2szMmxvKDIxKTsKIH0KIAotc3RhdGljIGlubGluZSBpbnQKLXhmc19oaWdo
Yml0MzIoeGZzX3VpbnQzMl90IHYpCi17Ci0JaW50IGk7Ci0KLQlpZiAoLS12
KSB7Ci0JCWZvciAoaSA9IDA7IGkgPCAzMTsgaSsrLCB2ID4+PSAxKSB7Ci0J
CQlpZiAodiA9PSAwKQotCQkJCXJldHVybiBpOwotCQl9Ci0JfQotCXJldHVy
biAwOwotfQotCiBzdGF0aWMgaW50CiBpc2lueHQgKHhmc19maWxlb2ZmX3Qg
a2V5LCB4ZnNfZmlsZW9mZl90IG9mZnNldCwgeGZzX2ZpbGJsa3NfdCBsZW4p
CiB7CkBAIC00NzIsNyArNDU1LDYgQEAgeGZzX21vdW50IChmc2lfZmlsZV90
ICpmZmksIGNvbnN0IGNoYXIgKm9wdGlvbnMpCiAKIAl4ZnMuaW5vcGJsb2cg
PSBzdXBlci5zYl9pbm9wYmxvZzsKIAl4ZnMuYWdibGtsb2cgPSBzdXBlci5z
Yl9hZ2Jsa2xvZzsKLQl4ZnMuYWdub2xvZyA9IHhmc19oaWdoYml0MzIgKGxl
MzIoc3VwZXIuc2JfYWdjb3VudCkpOwogCiAJeGZzLmJ0bm9kZV9wdHIwX29m
ZiA9CiAJCSgoeGZzLmJzaXplIC0gc2l6ZW9mKHhmc19idHJlZV9ibG9ja190
KSkgLwotLSAKMi40Mi4wCgo=

--=separator
Content-Type: application/octet-stream; name="xsa443/xsa443-4.15-02.patch"
Content-Disposition: attachment; filename="xsa443/xsa443-4.15-02.patch"
Content-Transfer-Encoding: base64

RnJvbSBmNzViMGE3MGRhMzkyNjcyZmI3ZDlmZWVkMmE5ZTk1MTVkNzRkZjJj
IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBBbGVqYW5kcm8gVmFs
bGVqbyA8YWxlamFuZHJvLnZhbGxlam9AY2xvdWQuY29tPgpEYXRlOiBUaHUs
IDE0IFNlcCAyMDIzIDEzOjIyOjUxICswMTAwClN1YmplY3Q6IFtQQVRDSCAw
Mi8xMV0gbGliZnNpbWFnZS94ZnM6IEFtZW5kIG1hc2szMmxvKCkgdG8gYWxs
b3cgdGhlIHZhbHVlIDMyCgphZ2Jsa2xvZyBjb3VsZCBwbGF1c2libHkgYmUg
MzIsIGJ1dCB0aGF0IHdvdWxkIG92ZXJmbG93IHRoaXMgc2hpZnQuClBlcmZv
cm0gdGhlIHNoaWZ0IGFzIFVMTCBhbmQgY2FzdCB0byB1MzIgYXQgdGhlIGVu
ZCBpbnN0ZWFkLgoKVGhpcyBpcyBwYXJ0IG9mIFhTQS00NDMgLyBDVkUtMjAy
My0zNDMyNQoKU2lnbmVkLW9mZi1ieTogQWxlamFuZHJvIFZhbGxlam8gPGFs
ZWphbmRyby52YWxsZWpvQGNsb3VkLmNvbT4KQWNrZWQtYnk6IEphbiBCZXVs
aWNoIDxqYmV1bGljaEBzdXNlLmNvbT4KLS0tCiB0b29scy9saWJmc2ltYWdl
L3hmcy9mc3lzX3hmcy5jIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5z
ZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvdG9vbHMv
bGliZnNpbWFnZS94ZnMvZnN5c194ZnMuYyBiL3Rvb2xzL2xpYmZzaW1hZ2Uv
eGZzL2ZzeXNfeGZzLmMKaW5kZXggMjgwMDY5OWY1OTg1Li40NzIwYmI0NTA1
YzggMTAwNjQ0Ci0tLSBhL3Rvb2xzL2xpYmZzaW1hZ2UveGZzL2ZzeXNfeGZz
LmMKKysrIGIvdG9vbHMvbGliZnNpbWFnZS94ZnMvZnN5c194ZnMuYwpAQCAt
NjAsNyArNjAsNyBAQCBzdGF0aWMgc3RydWN0IHhmc19pbmZvIHhmczsKICNk
ZWZpbmUgaW5vZGUJCSgoeGZzX2Rpbm9kZV90ICopKChjaGFyICopRlNZU19C
VUYgKyA4MTkyKSkKICNkZWZpbmUgaWNvcmUJCShpbm9kZS0+ZGlfY29yZSkK
IAotI2RlZmluZQltYXNrMzJsbyhuKQkoKCh4ZnNfdWludDMyX3QpMSA8PCAo
bikpIC0gMSkKKyNkZWZpbmUJbWFzazMybG8obikJKCh4ZnNfdWludDMyX3Qp
KCgxdWxsIDw8IChuKSkgLSAxKSkKIAogI2RlZmluZQlYRlNfSU5PX01BU0so
aykJCSgoeGZzX3VpbnQzMl90KSgoMVVMTCA8PCAoaykpIC0gMSkpCiAjZGVm
aW5lCVhGU19JTk9fT0ZGU0VUX0JJVFMJeGZzLmlub3BibG9nCi0tIAoyLjQy
LjAKCg==

--=separator
Content-Type: application/octet-stream; name="xsa443/xsa443-4.15-03.patch"
Content-Disposition: attachment; filename="xsa443/xsa443-4.15-03.patch"
Content-Transfer-Encoding: base64

RnJvbSAyNWZhZTIzYjMyZWU0ZDk5MGFlMTEzNjhlZTIxZTI4ZTY2ZGJmYTI1
IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBBbGVqYW5kcm8gVmFs
bGVqbyA8YWxlamFuZHJvLnZhbGxlam9AY2xvdWQuY29tPgpEYXRlOiBUaHUs
IDE0IFNlcCAyMDIzIDEzOjIyOjUyICswMTAwClN1YmplY3Q6IFtQQVRDSCAw
My8xMV0gbGliZnNpbWFnZS94ZnM6IFNhbml0eS1jaGVjayB0aGUgc3VwZXJi
bG9jayBkdXJpbmcKIG1vdW50cwoKU2FuaXR5LWNoZWNrIHRoZSBYRlMgc3Vw
ZXJibG9jayBmb3Igd2VsbGZvcm1lZG5lc3MgYXQgdGhlIG1vdW50IGhhbmRs
ZXIuClRoaXMgZm9yY2VzIHB5Z3J1YiB0byBhYm9ydCBwYXJzaW5nIGEgcG90
ZW50aWFsbHkgbWFsZm9ybWVkIGZpbGVzeXN0ZW0gYW5kCmVuc3VyZXMgdGhl
IGludmFyaWFudHMgYXNzdW1lZCB0aHJvdWdob3V0IHRoZSByZXN0IG9mIHRo
ZSBjb2RlIGhvbGQuCgpBbHNvLCBkZXJpdmUgcGFyYW1ldGVycyBmcm9tIHBy
ZXZpb3VzbHkgc2FuaXRpemVkIHBhcmFtZXRlcnMgd2hlcmUgcG9zc2libGUK
KHJhdGhlciB0aGFuIHJlYWRpbmcgdGhlbSBvZmYgdGhlIHN1cGVyYmxvY2sp
CgpUaGUgY29kZSBkb2Vzbid0IHRyeSB0byBhdm9pZCBvdmVyZmxvd2luZyB0
aGUgZW5kIG9mIHRoZSBkaXNrLCBiZWNhdXNlCnRoYXQncyBhbiB1bmxpa2Vs
eSBhbmQgYmVuaWduIGVycm9yLiBQYXJhbWV0ZXJzIHVzZWQgaW4gY2FsY3Vs
YXRpb25zIG9mCnhmc19kYWRkcl90IChsaWtlIHRoZSByb290IGlub2RlIGlu
ZGV4KSBhcmVuJ3QgaW4gY3JpdGljYWwgbmVlZCBvZiBiZWluZwpzYW5pdGl6
ZWQuCgpUaGUgc2FuaXRpemF0aW9uIG9mIGFnYmxrbG9nIGlzIGJhc2ljYWxs
eSBjaGVja2luZyB0aGF0IG5vIG9idmlvdXMKb3ZlcmZsb3dzIGhhcHBlbiBv
biBhZ2Jsa2xvZywgYW5kIHRoZW4gZW5zdXJpbmcgYWdibG9ja3MgaXMgY29u
dGFpbmVkIGluCnRoZSByYW5nZSAoMl4oc2JfYWdibGtsb2ctMSksIDJec2Jf
YWdibGtsb2ddLgoKVGhpcyBpcyBwYXJ0IG9mIFhTQS00NDMgLyBDVkUtMjAy
My0zNDMyNQoKUmVwb3J0ZWQtYnk6IEZlcmRpbmFuZCBOw7Zsc2NoZXIgPG5v
ZWxzY2hlckBnb29nbGUuY29tPgpTaWduZWQtb2ZmLWJ5OiBBbGVqYW5kcm8g
VmFsbGVqbyA8YWxlamFuZHJvLnZhbGxlam9AY2xvdWQuY29tPgpSZXZpZXdl
ZC1ieTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgotLS0KIHRv
b2xzL2xpYmZzaW1hZ2UveGZzL2ZzeXNfeGZzLmMgfCA0OCArKysrKysrKysr
KysrKysrKysrKysrKysrKy0tLS0tLS0KIHRvb2xzL2xpYmZzaW1hZ2UveGZz
L3hmcy5oICAgICAgfCAxMiArKysrKysrKysKIDIgZmlsZXMgY2hhbmdlZCwg
NTAgaW5zZXJ0aW9ucygrKSwgMTAgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0
IGEvdG9vbHMvbGliZnNpbWFnZS94ZnMvZnN5c194ZnMuYyBiL3Rvb2xzL2xp
YmZzaW1hZ2UveGZzL2ZzeXNfeGZzLmMKaW5kZXggNDcyMGJiNDUwNWM4Li5l
NGViN2UxZWUyNmYgMTAwNjQ0Ci0tLSBhL3Rvb2xzL2xpYmZzaW1hZ2UveGZz
L2ZzeXNfeGZzLmMKKysrIGIvdG9vbHMvbGliZnNpbWFnZS94ZnMvZnN5c194
ZnMuYwpAQCAtMTcsNiArMTcsNyBAQAogICogIGFsb25nIHdpdGggdGhpcyBw
cm9ncmFtOyBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vu
c2VzLz4uCiAgKi8KIAorI2luY2x1ZGUgPHN0ZGJvb2wuaD4KICNpbmNsdWRl
IDx4ZW5mc2ltYWdlX2dydWIuaD4KICNpbmNsdWRlICJ4ZnMuaCIKIApAQCAt
NDMzLDI5ICs0MzQsNTYgQEAgZmlyc3RfZGVudHJ5IChmc2lfZmlsZV90ICpm
ZmksIHhmc19pbm9fdCAqaW5vKQogCXJldHVybiBuZXh0X2RlbnRyeSAoZmZp
LCBpbm8pOwogfQogCitzdGF0aWMgYm9vbAoreGZzX3NiX2lzX2ludmFsaWQg
KGNvbnN0IHhmc19zYl90ICpzdXBlcikKK3sKKwlyZXR1cm4gKGxlMzIoc3Vw
ZXItPnNiX21hZ2ljbnVtKSAhPSBYRlNfU0JfTUFHSUMpCisJICAgIHx8ICgo
bGUxNihzdXBlci0+c2JfdmVyc2lvbm51bSkgJiBYRlNfU0JfVkVSU0lPTl9O
VU1CSVRTKSAhPQorCSAgICAgICAgWEZTX1NCX1ZFUlNJT05fNCkKKwkgICAg
fHwgKHN1cGVyLT5zYl9pbm9kZWxvZyA8IFhGU19TQl9JTk9ERUxPR19NSU4p
CisJICAgIHx8IChzdXBlci0+c2JfaW5vZGVsb2cgPiBYRlNfU0JfSU5PREVM
T0dfTUFYKQorCSAgICB8fCAoc3VwZXItPnNiX2Jsb2NrbG9nIDwgWEZTX1NC
X0JMT0NLTE9HX01JTikKKwkgICAgfHwgKHN1cGVyLT5zYl9ibG9ja2xvZyA+
IFhGU19TQl9CTE9DS0xPR19NQVgpCisJICAgIHx8IChzdXBlci0+c2JfYmxv
Y2tsb2cgPCBzdXBlci0+c2JfaW5vZGVsb2cpCisJICAgIHx8IChzdXBlci0+
c2JfYWdibGtsb2cgPiBYRlNfU0JfQUdCTEtMT0dfTUFYKQorCSAgICB8fCAo
KDF1bGwgPDwgc3VwZXItPnNiX2FnYmxrbG9nKSA8IGxlMzIoc3VwZXItPnNi
X2FnYmxvY2tzKSkKKwkgICAgfHwgKCgoMXVsbCA8PCBzdXBlci0+c2JfYWdi
bGtsb2cpID4+IDEpID49CisJICAgICAgICBsZTMyKHN1cGVyLT5zYl9hZ2Js
b2NrcykpCisJICAgIHx8ICgoc3VwZXItPnNiX2Jsb2NrbG9nICsgc3VwZXIt
PnNiX2RpcmJsa2xvZykgPj0KKwkgICAgICAgIFhGU19TQl9ESVJCTEtfTlVN
QklUUyk7Cit9CisKIHN0YXRpYyBpbnQKIHhmc19tb3VudCAoZnNpX2ZpbGVf
dCAqZmZpLCBjb25zdCBjaGFyICpvcHRpb25zKQogewogCXhmc19zYl90IHN1
cGVyOwogCiAJaWYgKCFkZXZyZWFkIChmZmksIDAsIDAsIHNpemVvZihzdXBl
ciksIChjaGFyICopJnN1cGVyKQotCSAgICB8fCAobGUzMihzdXBlci5zYl9t
YWdpY251bSkgIT0gWEZTX1NCX01BR0lDKQotCSAgICB8fCAoKGxlMTYoc3Vw
ZXIuc2JfdmVyc2lvbm51bSkgCi0JCSYgWEZTX1NCX1ZFUlNJT05fTlVNQklU
UykgIT0gWEZTX1NCX1ZFUlNJT05fNCkgKSB7CisJICAgIHx8IHhmc19zYl9p
c19pbnZhbGlkKCZzdXBlcikpIHsKIAkJcmV0dXJuIDA7CiAJfQogCi0JeGZz
LmJzaXplID0gbGUzMiAoc3VwZXIuc2JfYmxvY2tzaXplKTsKLQl4ZnMuYmxr
bG9nID0gc3VwZXIuc2JfYmxvY2tsb2c7Ci0JeGZzLmJkbG9nID0geGZzLmJs
a2xvZyAtIFNFQ1RPUl9CSVRTOworCS8qCisJICogTm90IHNhbml0aXplZC4g
SXQncyBleGNsdXNpdmVseSB1c2VkIHRvIGdlbmVyYXRlIGRpc2sgYWRkcmVz
c2VzLAorCSAqIHNvIGl0J3Mgbm90IGltcG9ydGFudCBmcm9tIGEgc2VjdXJp
dHkgc3RhbmRwb2ludC4KKwkgKi8KIAl4ZnMucm9vdGlubyA9IGxlNjQgKHN1
cGVyLnNiX3Jvb3Rpbm8pOwotCXhmcy5pc2l6ZSA9IGxlMTYgKHN1cGVyLnNi
X2lub2Rlc2l6ZSk7Ci0JeGZzLmFnYmxvY2tzID0gbGUzMiAoc3VwZXIuc2Jf
YWdibG9ja3MpOwotCXhmcy5kaXJic2l6ZSA9IHhmcy5ic2l6ZSA8PCBzdXBl
ci5zYl9kaXJibGtsb2c7CiAKLQl4ZnMuaW5vcGJsb2cgPSBzdXBlci5zYl9p
bm9wYmxvZzsKKwkvKgorCSAqIFNhbml0aXplZCB0byBiZSBjb25zaXN0ZW50
IHdpdGggZWFjaCBvdGhlciwgb25seSB1c2VkIHRvCisJICogZ2VuZXJhdGUg
ZGlzayBhZGRyZXNzZXMsIHNvIGl0J3Mgc2FmZQorCSAqLworCXhmcy5hZ2Js
b2NrcyA9IGxlMzIgKHN1cGVyLnNiX2FnYmxvY2tzKTsKIAl4ZnMuYWdibGts
b2cgPSBzdXBlci5zYl9hZ2Jsa2xvZzsKIAorCS8qIERlcml2ZWQgZnJvbSBz
YW5pdGl6ZWQgcGFyYW1ldGVycyAqLworCXhmcy5ic2l6ZSA9IDEgPDwgc3Vw
ZXIuc2JfYmxvY2tsb2c7CisJeGZzLmJsa2xvZyA9IHN1cGVyLnNiX2Jsb2Nr
bG9nOworCXhmcy5iZGxvZyA9IHN1cGVyLnNiX2Jsb2NrbG9nIC0gU0VDVE9S
X0JJVFM7CisJeGZzLmlzaXplID0gMSA8PCBzdXBlci5zYl9pbm9kZWxvZzsK
Kwl4ZnMuZGlyYnNpemUgPSAxIDw8IChzdXBlci5zYl9ibG9ja2xvZyArIHN1
cGVyLnNiX2RpcmJsa2xvZyk7CisJeGZzLmlub3BibG9nID0gc3VwZXIuc2Jf
YmxvY2tsb2cgLSBzdXBlci5zYl9pbm9kZWxvZzsKKwogCXhmcy5idG5vZGVf
cHRyMF9vZmYgPQogCQkoKHhmcy5ic2l6ZSAtIHNpemVvZih4ZnNfYnRyZWVf
YmxvY2tfdCkpIC8KIAkJKHNpemVvZiAoeGZzX2JtYnRfa2V5X3QpICsgc2l6
ZW9mICh4ZnNfYm1idF9wdHJfdCkpKQpkaWZmIC0tZ2l0IGEvdG9vbHMvbGli
ZnNpbWFnZS94ZnMveGZzLmggYi90b29scy9saWJmc2ltYWdlL3hmcy94ZnMu
aAppbmRleCA0MDY5OTI4MWU0NGQuLmI4N2UzN2QzZDdlOSAxMDA2NDQKLS0t
IGEvdG9vbHMvbGliZnNpbWFnZS94ZnMveGZzLmgKKysrIGIvdG9vbHMvbGli
ZnNpbWFnZS94ZnMveGZzLmgKQEAgLTEzNCw2ICsxMzQsMTggQEAgdHlwZWRl
ZiBzdHJ1Y3QgeGZzX3NiCiAgICAgICAgIHhmc191aW50OF90ICAgICAgIHNi
X2R1bW15WzddOyAgICAvKiBwYWRkaW5nICovCiB9IHhmc19zYl90OwogCisv
KiBCb3VuZCB0YWtlbiBmcm9tIHhmcy5jIGluIEdSVUIyLiBJdCBkb2Vzbid0
IGV4aXN0IGluIHRoZSBzcGVjICovCisjZGVmaW5lCVhGU19TQl9ESVJCTEtf
TlVNQklUUwkyNworLyogSW1wbGllZCBieSB0aGUgWEZTIHNwZWNpZmljYXRp
b24uIFRoZSBtaW5pbXVtIGJsb2NrIHNpemUgaXMgNTEyIG9jdGV0cyAqLwor
I2RlZmluZQlYRlNfU0JfQkxPQ0tMT0dfTUlOCTkKKy8qIEltcGxpZWQgYnkg
dGhlIFhGUyBzcGVjaWZpY2F0aW9uLiBUaGUgbWF4aW11bSBibG9jayBzaXpl
IGlzIDY1NTM2IG9jdGV0cyAqLworI2RlZmluZQlYRlNfU0JfQkxPQ0tMT0df
TUFYCTE2CisvKiBJbXBsaWVkIGJ5IHRoZSBYRlMgc3BlY2lmaWNhdGlvbi4g
VGhlIG1pbmltdW0gaW5vZGUgc2l6ZSBpcyAyNTYgb2N0ZXRzICovCisjZGVm
aW5lCVhGU19TQl9JTk9ERUxPR19NSU4JOAorLyogSW1wbGllZCBieSB0aGUg
WEZTIHNwZWNpZmljYXRpb24uIFRoZSBtYXhpbXVtIGlub2RlIHNpemUgaXMg
MjA0OCBvY3RldHMgKi8KKyNkZWZpbmUJWEZTX1NCX0lOT0RFTE9HX01BWAkx
MQorLyogSGlnaCBib3VuZCBmb3Igc2JfYWdibGtsb2cgKi8KKyNkZWZpbmUJ
WEZTX1NCX0FHQkxLTE9HX01BWAkzMgogCiAvKiB0aG9zZSBhcmUgZnJvbSB4
ZnNfYnRyZWUuaCAqLwogCi0tIAoyLjQyLjAKCg==

--=separator
Content-Type: application/octet-stream; name="xsa443/xsa443-4.15-04.patch"
Content-Disposition: attachment; filename="xsa443/xsa443-4.15-04.patch"
Content-Transfer-Encoding: base64

RnJvbSBlNzJjNjhlNzAyZGQ5MzBiYzYwMTMxODJiYjQ0ZDNlOGZiYmI2YmY0
IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBBbGVqYW5kcm8gVmFs
bGVqbyA8YWxlamFuZHJvLnZhbGxlam9AY2xvdWQuY29tPgpEYXRlOiBUaHUs
IDE0IFNlcCAyMDIzIDEzOjIyOjUzICswMTAwClN1YmplY3Q6IFtQQVRDSCAw
NC8xMV0gbGliZnNpbWFnZS94ZnM6IEFkZCBjb21waWxlLXRpbWUgY2hlY2sg
dG8gbGliZnNpbWFnZQoKQWRkcyB0aGUgY29tbW9uIHRvb2xzIGluY2x1ZGUg
Zm9sZGVyIHRvIHRoZSAtSSBjb21waWxlIGZsYWdzCm9mIGxpYmZzaW1hZ2Uu
IFRoaXMgYWxsb3dzIHVzIHRvIHVzZToKICB4ZW4tdG9vbHMvY29tbW9uLW1h
Y3Jvcy5oOkJVSUxEX0JVR19PTigpCgpXaXRoIGl0LCBzdGF0aWNhbGx5IGFz
c2VydCBhIHNhbml0aXplZCAiYmxvY2tsb2cgLSBTRUNUT1JfQklUUyIgY2Fu
bm90CnVuZGVyZmxvdy4KClRoaXMgaXMgcGFydCBvZiBYU0EtNDQzIC8gQ1ZF
LTIwMjMtMzQzMjUKClNpZ25lZC1vZmYtYnk6IEFsZWphbmRybyBWYWxsZWpv
IDxhbGVqYW5kcm8udmFsbGVqb0BjbG91ZC5jb20+ClJldmlld2VkLWJ5OiBK
YW4gQmV1bGljaCA8amJldWxpY2hAc3VzZS5jb20+Ci0tLQogdG9vbHMvbGli
ZnNpbWFnZS9SdWxlcy5tayAgICAgICB8IDIgKy0KIHRvb2xzL2xpYmZzaW1h
Z2UveGZzL2ZzeXNfeGZzLmMgfCA0ICsrKy0KIDIgZmlsZXMgY2hhbmdlZCwg
NCBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBh
L3Rvb2xzL2xpYmZzaW1hZ2UvUnVsZXMubWsgYi90b29scy9saWJmc2ltYWdl
L1J1bGVzLm1rCmluZGV4IGJiNmQ0MmFiYjQ5NC4uODA1OThmYjcwYWE3IDEw
MDY0NAotLS0gYS90b29scy9saWJmc2ltYWdlL1J1bGVzLm1rCisrKyBiL3Rv
b2xzL2xpYmZzaW1hZ2UvUnVsZXMubWsKQEAgLTEsNiArMSw2IEBACiBpbmNs
dWRlICQoWEVOX1JPT1QpL3Rvb2xzL1J1bGVzLm1rCiAKLUNGTEFHUyArPSAt
V25vLXVua25vd24tcHJhZ21hcyAtSSQoWEVOX1JPT1QpL3Rvb2xzL2xpYmZz
aW1hZ2UvY29tbW9uLyAtREZTSU1BR0VfRlNESVI9XCIkKEZTRElSKVwiCitD
RkxBR1MgKz0gLVduby11bmtub3duLXByYWdtYXMgLUkkKFhFTl9ST09UKS90
b29scy9saWJmc2ltYWdlL2NvbW1vbi8gJChDRkxBR1NfeGVuaW5jbHVkZSkg
LURGU0lNQUdFX0ZTRElSPVwiJChGU0RJUilcIgogQ0ZMQUdTICs9IC1XZXJy
b3IgLURfR05VX1NPVVJDRQogTERGTEFHUyArPSAtTC4uL2NvbW1vbi8KIApk
aWZmIC0tZ2l0IGEvdG9vbHMvbGliZnNpbWFnZS94ZnMvZnN5c194ZnMuYyBi
L3Rvb2xzL2xpYmZzaW1hZ2UveGZzL2ZzeXNfeGZzLmMKaW5kZXggZTRlYjdl
MWVlMjZmLi40YThkZDZmMjM5N2IgMTAwNjQ0Ci0tLSBhL3Rvb2xzL2xpYmZz
aW1hZ2UveGZzL2ZzeXNfeGZzLmMKKysrIGIvdG9vbHMvbGliZnNpbWFnZS94
ZnMvZnN5c194ZnMuYwpAQCAtMTksNiArMTksNyBAQAogCiAjaW5jbHVkZSA8
c3RkYm9vbC5oPgogI2luY2x1ZGUgPHhlbmZzaW1hZ2VfZ3J1Yi5oPgorI2lu
Y2x1ZGUgPHhlbi10b29scy9saWJzLmg+CiAjaW5jbHVkZSAieGZzLmgiCiAK
ICNkZWZpbmUgTUFYX0xJTktfQ09VTlQJOApAQCAtNDc3LDkgKzQ3OCwxMCBA
QCB4ZnNfbW91bnQgKGZzaV9maWxlX3QgKmZmaSwgY29uc3QgY2hhciAqb3B0
aW9ucykKIAl4ZnMuYWdibGtsb2cgPSBzdXBlci5zYl9hZ2Jsa2xvZzsKIAog
CS8qIERlcml2ZWQgZnJvbSBzYW5pdGl6ZWQgcGFyYW1ldGVycyAqLworCUJV
SUxEX0JVR19PTihYRlNfU0JfQkxPQ0tMT0dfTUlOIDwgU0VDVE9SX0JJVFMp
OworCXhmcy5iZGxvZyA9IHN1cGVyLnNiX2Jsb2NrbG9nIC0gU0VDVE9SX0JJ
VFM7CiAJeGZzLmJzaXplID0gMSA8PCBzdXBlci5zYl9ibG9ja2xvZzsKIAl4
ZnMuYmxrbG9nID0gc3VwZXIuc2JfYmxvY2tsb2c7Ci0JeGZzLmJkbG9nID0g
c3VwZXIuc2JfYmxvY2tsb2cgLSBTRUNUT1JfQklUUzsKIAl4ZnMuaXNpemUg
PSAxIDw8IHN1cGVyLnNiX2lub2RlbG9nOwogCXhmcy5kaXJic2l6ZSA9IDEg
PDwgKHN1cGVyLnNiX2Jsb2NrbG9nICsgc3VwZXIuc2JfZGlyYmxrbG9nKTsK
IAl4ZnMuaW5vcGJsb2cgPSBzdXBlci5zYl9ibG9ja2xvZyAtIHN1cGVyLnNi
X2lub2RlbG9nOwotLSAKMi40Mi4wCgo=

--=separator
Content-Type: application/octet-stream; name="xsa443/xsa443-4.15-05.patch"
Content-Disposition: attachment; filename="xsa443/xsa443-4.15-05.patch"
Content-Transfer-Encoding: base64

RnJvbSA3NWZkYzAzYzVhNmI3ZmFjMGMzYTVhYzA2YTViZWFhYzczYWFkMzZm
IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBBbGVqYW5kcm8gVmFs
bGVqbyA8YWxlamFuZHJvLnZhbGxlam9AY2xvdWQuY29tPgpEYXRlOiBNb24s
IDI1IFNlcCAyMDIzIDE4OjMyOjIxICswMTAwClN1YmplY3Q6IFtQQVRDSCAw
NS8xMV0gdG9vbHMvcHlncnViOiBSZW1vdmUgdW5uZWNlc3NhcnkgaHlwZXJj
YWxsCgpUaGVyZSdzIGEgaHlwZXJjYWxsIGJlaW5nIGlzc3VlZCBpbiBvcmRl
ciB0byBkZXRlcm1pbmUgd2hldGhlciBQVjY0IGlzCnN1cHBvcnRlZCwgYnV0
IHNpbmNlIFhlbiA0LjMgdGhhdCdzIHN0cmljdGx5IHRydWUgc28gaXQncyBu
b3QgcmVxdWlyZWQuCgpQbHVzLCB0aGlzIHdheSB3ZSBjYW4gYXZvaWQgbWFw
cGluZyB0aGUgcHJpdmNtZCBpbnRlcmZhY2UgYWx0b2dldGhlciBpbiB0aGUK
ZGVwcml2IHB5Z3J1Yi4KClRoaXMgaXMgcGFydCBvZiBYU0EtNDQzIC8gQ1ZF
LTIwMjMtMzQzMjUKClNpZ25lZC1vZmYtYnk6IEFsZWphbmRybyBWYWxsZWpv
IDxhbGVqYW5kcm8udmFsbGVqb0BjbG91ZC5jb20+ClJldmlld2VkLWJ5OiBB
bmRyZXcgQ29vcGVyIDxhbmRyZXcuY29vcGVyM0BjaXRyaXguY29tPgotLS0K
IHRvb2xzL3B5Z3J1Yi9zcmMvcHlncnViIHwgMTIgKy0tLS0tLS0tLS0tCiAx
IGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDExIGRlbGV0aW9ucygt
KQoKZGlmZiAtLWdpdCBhL3Rvb2xzL3B5Z3J1Yi9zcmMvcHlncnViIGIvdG9v
bHMvcHlncnViL3NyYy9weWdydWIKaW5kZXggY2U3YWIwZWI4Y2YzLi5jZTRl
MDdkM2U4MjMgMTAwNzU1Ci0tLSBhL3Rvb2xzL3B5Z3J1Yi9zcmMvcHlncnVi
CisrKyBiL3Rvb2xzL3B5Z3J1Yi9zcmMvcHlncnViCkBAIC0xOCw3ICsxOCw2
IEBAIGltcG9ydCBvcywgc3lzLCBzdHJpbmcsIHN0cnVjdCwgdGVtcGZpbGUs
IHJlLCB0cmFjZWJhY2ssIHN0YXQsIGVycm5vCiBpbXBvcnQgY29weQogaW1w
b3J0IGxvZ2dpbmcKIGltcG9ydCBwbGF0Zm9ybQotaW1wb3J0IHhlbi5sb3ds
ZXZlbC54YwogCiBpbXBvcnQgY3Vyc2VzLCBfY3Vyc2VzLCBjdXJzZXMudGV4
dHBhZCwgY3Vyc2VzLmFzY2lpCiBpbXBvcnQgZ2V0b3B0CkBAIC02NjgsMTQg
KzY2Nyw2IEBAIGRlZiBydW5fZ3J1YihmaWxlLCBlbnRyeSwgZnMsIGNmZ19h
cmdzKToKIAogICAgIHJldHVybiBncnViY2ZnCiAKLWRlZiBzdXBwb3J0czY0
Yml0UFZndWVzdCgpOgotICAgIHhjID0geGVuLmxvd2xldmVsLnhjLnhjKCkK
LSAgICBjYXBzID0geGMueGVuaW5mbygpWyd4ZW5fY2FwcyddLnNwbGl0KCIg
IikKLSAgICBmb3IgY2FwIGluIGNhcHM6Ci0gICAgICAgIGlmIGNhcCA9PSAi
eGVuLTMuMC14ODZfNjQiOgotICAgICAgICAgICAgcmV0dXJuIFRydWUKLSAg
ICByZXR1cm4gRmFsc2UKLQogIyBJZiBub3RoaW5nIGhhcyBiZWVuIHNwZWNp
ZmllZCwgbG9vayBmb3IgYSBTb2xhcmlzIGRvbVUuIElmIGZvdW5kLCBwZXJm
b3JtIHRoZQogIyBuZWNlc3NhcnkgdHdlYWtzLgogZGVmIHNuaWZmX3NvbGFy
aXMoZnMsIGNmZyk6CkBAIC02ODQsOCArNjc1LDcgQEAgZGVmIHNuaWZmX3Nv
bGFyaXMoZnMsIGNmZyk6CiAgICAgICAgIHJldHVybiBjZmcKIAogICAgIGlm
IG5vdCBjZmdbImtlcm5lbCJdOgotICAgICAgICBpZiBzdXBwb3J0czY0Yml0
UFZndWVzdCgpIGFuZCBcCi0gICAgICAgICAgZnMuZmlsZV9leGlzdHMoIi9w
bGF0Zm9ybS9pODZ4cHYva2VybmVsL2FtZDY0L3VuaXgiKToKKyAgICAgICAg
aWYgZnMuZmlsZV9leGlzdHMoIi9wbGF0Zm9ybS9pODZ4cHYva2VybmVsL2Ft
ZDY0L3VuaXgiKToKICAgICAgICAgICAgIGNmZ1sia2VybmVsIl0gPSAiL3Bs
YXRmb3JtL2k4Nnhwdi9rZXJuZWwvYW1kNjQvdW5peCIKICAgICAgICAgICAg
IGNmZ1sicmFtZGlzayJdID0gIi9wbGF0Zm9ybS9pODZwYy9hbWQ2NC9ib290
X2FyY2hpdmUiCiAgICAgICAgIGVsaWYgZnMuZmlsZV9leGlzdHMoIi9wbGF0
Zm9ybS9pODZ4cHYva2VybmVsL3VuaXgiKToKLS0gCjIuNDIuMAoK

--=separator
Content-Type: application/octet-stream; name="xsa443/xsa443-4.15-06.patch"
Content-Disposition: attachment; filename="xsa443/xsa443-4.15-06.patch"
Content-Transfer-Encoding: base64

RnJvbSAxMDgzYTE2ZjYzNDYxZTg0NGU5NTE1YWM0ZDM1ZDQ4YmY1NTc4NWFm
IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBBbGVqYW5kcm8gVmFs
bGVqbyA8YWxlamFuZHJvLnZhbGxlam9AY2xvdWQuY29tPgpEYXRlOiBNb24s
IDI1IFNlcCAyMDIzIDE4OjMyOjIyICswMTAwClN1YmplY3Q6IFtQQVRDSCAw
Ni8xMV0gdG9vbHMvcHlncnViOiBTbWFsbCByZWZhY3RvcnMKClNtYWxsIHRp
ZHkgdXAgdG8gZW5zdXJlIG91dHB1dF9kaXJlY3RvcnkgYWx3YXlzIGhhcyBh
IHRyYWlsaW5nICcvJyB0byBlYXNlCmNvbmNhdGVuYXRpbmcgcGF0aHMgYW5k
IHRoYXQgYG91dHB1dGAgY2FuIG9ubHkgYmUgYSBmaWxlbmFtZSBvciBOb25l
LgoKVGhpcyBpcyBwYXJ0IG9mIFhTQS00NDMgLyBDVkUtMjAyMy0zNDMyNQoK
U2lnbmVkLW9mZi1ieTogQWxlamFuZHJvIFZhbGxlam8gPGFsZWphbmRyby52
YWxsZWpvQGNsb3VkLmNvbT4KQWNrZWQtYnk6IEFuZHJldyBDb29wZXIgPGFu
ZHJldy5jb29wZXIzQGNpdHJpeC5jb20+Ci0tLQogdG9vbHMvcHlncnViL3Ny
Yy9weWdydWIgfCAxMCArKysrKy0tLS0tCiAxIGZpbGUgY2hhbmdlZCwgNSBp
bnNlcnRpb25zKCspLCA1IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3Rv
b2xzL3B5Z3J1Yi9zcmMvcHlncnViIGIvdG9vbHMvcHlncnViL3NyYy9weWdy
dWIKaW5kZXggY2U0ZTA3ZDNlODIzLi4xMDQyYzA1Yjg2NzYgMTAwNzU1Ci0t
LSBhL3Rvb2xzL3B5Z3J1Yi9zcmMvcHlncnViCisrKyBiL3Rvb2xzL3B5Z3J1
Yi9zcmMvcHlncnViCkBAIC03OTMsNyArNzkzLDcgQEAgaWYgX19uYW1lX18g
PT0gIl9fbWFpbl9fIjoKICAgICBkZWJ1ZyA9IEZhbHNlCiAgICAgbm90X3Jl
YWxseSA9IEZhbHNlCiAgICAgb3V0cHV0X2Zvcm1hdCA9ICJzeHAiCi0gICAg
b3V0cHV0X2RpcmVjdG9yeSA9ICIvdmFyL3J1bi94ZW4vcHlncnViIgorICAg
IG91dHB1dF9kaXJlY3RvcnkgPSAiL3Zhci9ydW4veGVuL3B5Z3J1Yi8iCiAK
ICAgICAjIHdoYXQgd2FzIHBhc3NlZCBpbgogICAgIGluY2ZnID0geyAia2Vy
bmVsIjogTm9uZSwgInJhbWRpc2siOiBOb25lLCAiYXJncyI6ICIiIH0KQEAg
LTgxNSw3ICs4MTUsOCBAQCBpZiBfX25hbWVfXyA9PSAiX19tYWluX18iOgog
ICAgICAgICAgICAgdXNhZ2UoKQogICAgICAgICAgICAgc3lzLmV4aXQoKQog
ICAgICAgICBlbGlmIG8gaW4gKCItLW91dHB1dCIsKToKLSAgICAgICAgICAg
IG91dHB1dCA9IGEKKyAgICAgICAgICAgIGlmIGEgIT0gIi0iOgorICAgICAg
ICAgICAgICAgIG91dHB1dCA9IGEKICAgICAgICAgZWxpZiBvIGluICgiLS1r
ZXJuZWwiLCk6CiAgICAgICAgICAgICBpbmNmZ1sia2VybmVsIl0gPSBhCiAg
ICAgICAgIGVsaWYgbyBpbiAoIi0tcmFtZGlzayIsKToKQEAgLTg0NywxMiAr
ODQ4LDExIEBAIGlmIF9fbmFtZV9fID09ICJfX21haW5fXyI6CiAgICAgICAg
ICAgICBpZiBub3Qgb3MucGF0aC5pc2RpcihhKToKICAgICAgICAgICAgICAg
ICBwcmludCgiJXMgaXMgbm90IGFuIGV4aXN0aW5nIGRpcmVjdG9yeSIgJSBh
KQogICAgICAgICAgICAgICAgIHN5cy5leGl0KDEpCi0gICAgICAgICAgICBv
dXRwdXRfZGlyZWN0b3J5ID0gYQorICAgICAgICAgICAgb3V0cHV0X2RpcmVj
dG9yeSA9IGEgKyAnLycKIAogICAgIGlmIGRlYnVnOgogICAgICAgICBsb2dn
aW5nLmJhc2ljQ29uZmlnKGxldmVsPWxvZ2dpbmcuREVCVUcpCiAKLQogICAg
IHRyeToKICAgICAgICAgb3MubWFrZWRpcnMob3V0cHV0X2RpcmVjdG9yeSwg
MG83MDApCiAgICAgZXhjZXB0IE9TRXJyb3IgYXMgZToKQEAgLTg2MSw3ICs4
NjEsNyBAQCBpZiBfX25hbWVfXyA9PSAiX19tYWluX18iOgogICAgICAgICBl
bHNlOgogICAgICAgICAgICAgcmFpc2UKIAotICAgIGlmIG91dHB1dCBpcyBO
b25lIG9yIG91dHB1dCA9PSAiLSI6CisgICAgaWYgb3V0cHV0IGlzIE5vbmU6
CiAgICAgICAgIGZkID0gc3lzLnN0ZG91dC5maWxlbm8oKQogICAgIGVsc2U6
CiAgICAgICAgIGZkID0gb3Mub3BlbihvdXRwdXQsIG9zLk9fV1JPTkxZKQot
LSAKMi40Mi4wCgo=

--=separator
Content-Type: application/octet-stream; name="xsa443/xsa443-4.15-07.patch"
Content-Disposition: attachment; filename="xsa443/xsa443-4.15-07.patch"
Content-Transfer-Encoding: base64

RnJvbSAzNTBkYjMwZTMzZjM5YWY0MGMxZTM3NTJkNzNjMGEzMGVmMmQyNmU3
IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBBbGVqYW5kcm8gVmFs
bGVqbyA8YWxlamFuZHJvLnZhbGxlam9AY2xvdWQuY29tPgpEYXRlOiBNb24s
IDI1IFNlcCAyMDIzIDE4OjMyOjIzICswMTAwClN1YmplY3Q6IFtQQVRDSCAw
Ny8xMV0gdG9vbHMvcHlncnViOiBPcGVuIHRoZSBvdXRwdXQgZmlsZXMgZWFy
bGllcgoKVGhpcyBwYXRjaCBhbGxvd3MgcHlncnViIHRvIGdldCBhaG9sZCBv
ZiBldmVyeSBSVyBmaWxlIGRlc2NyaXB0b3IgaXQgbmVlZHMKZWFybHkgb24u
IEEgbGF0ZXIgcGF0Y2ggd2lsbCBjbGFtcCB0aGUgZmlsZXN5c3RlbSBpdCBj
YW4gYWNjZXNzIHNvIGl0IGNhbid0Cm9idGFpbiBhbnkgb3RoZXJzLgoKVGhp
cyBpcyBwYXJ0IG9mIFhTQS00NDMgLyBDVkUtMjAyMy0zNDMyNQoKU2lnbmVk
LW9mZi1ieTogQWxlamFuZHJvIFZhbGxlam8gPGFsZWphbmRyby52YWxsZWpv
QGNsb3VkLmNvbT4KQWNrZWQtYnk6IEFuZHJldyBDb29wZXIgPGFuZHJldy5j
b29wZXIzQGNpdHJpeC5jb20+Ci0tLQogdG9vbHMvcHlncnViL3NyYy9weWdy
dWIgfCAzNyArKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0t
CiAxIGZpbGUgY2hhbmdlZCwgMjIgaW5zZXJ0aW9ucygrKSwgMTUgZGVsZXRp
b25zKC0pCgpkaWZmIC0tZ2l0IGEvdG9vbHMvcHlncnViL3NyYy9weWdydWIg
Yi90b29scy9weWdydWIvc3JjL3B5Z3J1YgppbmRleCAxMDQyYzA1Yjg2NzYu
LjkxZTJlYzJhYjEwNSAxMDA3NTUKLS0tIGEvdG9vbHMvcHlncnViL3NyYy9w
eWdydWIKKysrIGIvdG9vbHMvcHlncnViL3NyYy9weWdydWIKQEAgLTczOCw4
ICs3MzgsNyBAQCBpZiBfX25hbWVfXyA9PSAiX19tYWluX18iOgogICAgIGRl
ZiB1c2FnZSgpOgogICAgICAgICBwcmludCgiVXNhZ2U6ICVzIFstcXwtLXF1
aWV0XSBbLWl8LS1pbnRlcmFjdGl2ZV0gWy1sfC0tbGlzdC1lbnRyaWVzXSBb
LW58LS1ub3QtcmVhbGx5XSBbLS1vdXRwdXQ9XSBbLS1rZXJuZWw9XSBbLS1y
YW1kaXNrPV0gWy0tYXJncz1dIFstLWVudHJ5PV0gWy0tb3V0cHV0LWRpcmVj
dG9yeT1dIFstLW91dHB1dC1mb3JtYXQ9c3hwfHNpbXBsZXxzaW1wbGUwXSBb
LS1vZmZzZXQ9XSA8aW1hZ2U+IiAlKHN5cy5hcmd2WzBdLCksIGZpbGU9c3lz
LnN0ZGVycikKIAotICAgIGRlZiBjb3B5X2Zyb21faW1hZ2UoZnMsIGZpbGVf
dG9fcmVhZCwgZmlsZV90eXBlLCBvdXRwdXRfZGlyZWN0b3J5LAotICAgICAg
ICAgICAgICAgICAgICAgICAgbm90X3JlYWxseSk6CisgICAgZGVmIGNvcHlf
ZnJvbV9pbWFnZShmcywgZmlsZV90b19yZWFkLCBmaWxlX3R5cGUsIGZkX2Rz
dCwgcGF0aF9kc3QsIG5vdF9yZWFsbHkpOgogICAgICAgICBpZiBub3RfcmVh
bGx5OgogICAgICAgICAgICAgaWYgZnMuZmlsZV9leGlzdHMoZmlsZV90b19y
ZWFkKToKICAgICAgICAgICAgICAgICByZXR1cm4gIjwlczolcz4iICUgKGZp
bGVfdHlwZSwgZmlsZV90b19yZWFkKQpAQCAtNzUwLDIxICs3NDksMTggQEAg
aWYgX19uYW1lX18gPT0gIl9fbWFpbl9fIjoKICAgICAgICAgZXhjZXB0IEV4
Y2VwdGlvbiBhcyBlOgogICAgICAgICAgICAgcHJpbnQoZSwgZmlsZT1zeXMu
c3RkZXJyKQogICAgICAgICAgICAgc3lzLmV4aXQoIkVycm9yIG9wZW5pbmcg
JXMgaW4gZ3Vlc3QiICUgZmlsZV90b19yZWFkKQotICAgICAgICAodGZkLCBy
ZXQpID0gdGVtcGZpbGUubWtzdGVtcChwcmVmaXg9ImJvb3RfIitmaWxlX3R5
cGUrIi4iLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBkaXI9b3V0cHV0X2RpcmVjdG9yeSkKICAgICAgICAgZGF0YW9mZiA9IDAK
ICAgICAgICAgd2hpbGUgVHJ1ZToKICAgICAgICAgICAgIGRhdGEgPSBkYXRh
ZmlsZS5yZWFkKEZTX1JFQURfTUFYLCBkYXRhb2ZmKQogICAgICAgICAgICAg
aWYgbGVuKGRhdGEpID09IDA6Ci0gICAgICAgICAgICAgICAgb3MuY2xvc2Uo
dGZkKQorICAgICAgICAgICAgICAgIG9zLmNsb3NlKGZkX2RzdCkKICAgICAg
ICAgICAgICAgICBkZWwgZGF0YWZpbGUKLSAgICAgICAgICAgICAgICByZXR1
cm4gcmV0CisgICAgICAgICAgICAgICAgcmV0dXJuCiAgICAgICAgICAgICB0
cnk6Ci0gICAgICAgICAgICAgICAgb3Mud3JpdGUodGZkLCBkYXRhKQorICAg
ICAgICAgICAgICAgIG9zLndyaXRlKGZkX2RzdCwgZGF0YSkKICAgICAgICAg
ICAgIGV4Y2VwdCBFeGNlcHRpb24gYXMgZToKICAgICAgICAgICAgICAgICBw
cmludChlLCBmaWxlPXN5cy5zdGRlcnIpCi0gICAgICAgICAgICAgICAgb3Mu
Y2xvc2UodGZkKQotICAgICAgICAgICAgICAgIG9zLnVubGluayhyZXQpCisg
ICAgICAgICAgICAgICAgb3MudW5saW5rKHBhdGhfZHN0KQogICAgICAgICAg
ICAgICAgIGRlbCBkYXRhZmlsZQogICAgICAgICAgICAgICAgIHN5cy5leGl0
KCJFcnJvciB3cml0aW5nIHRlbXBvcmFyeSBjb3B5IG9mICIrZmlsZV90eXBl
KQogICAgICAgICAgICAgZGF0YW9mZiArPSBsZW4oZGF0YSkKQEAgLTg2MSw2
ICs4NTcsMTQgQEAgaWYgX19uYW1lX18gPT0gIl9fbWFpbl9fIjoKICAgICAg
ICAgZWxzZToKICAgICAgICAgICAgIHJhaXNlCiAKKyAgICBpZiBub3RfcmVh
bGx5OgorICAgICAgICBmZF9rZXJuZWwgPSAgcGF0aF9rZXJuZWwgPSBmZF9y
YW1kaXNrID0gcGF0aF9yYW1kaXNrID0gTm9uZQorICAgIGVsc2U6CisgICAg
ICAgIChmZF9rZXJuZWwsIHBhdGhfa2VybmVsKSA9IHRlbXBmaWxlLm1rc3Rl
bXAocHJlZml4PSJib290X2tlcm5lbC4iLAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpcj1vdXRwdXRf
ZGlyZWN0b3J5KQorICAgICAgICAoZmRfcmFtZGlzaywgcGF0aF9yYW1kaXNr
KSA9IHRlbXBmaWxlLm1rc3RlbXAocHJlZml4PSJib290X3JhbWRpc2suIiwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGRpcj1vdXRwdXRfZGlyZWN0b3J5KQorCiAgICAgaWYgb3V0
cHV0IGlzIE5vbmU6CiAgICAgICAgIGZkID0gc3lzLnN0ZG91dC5maWxlbm8o
KQogICAgIGVsc2U6CkBAIC05MjAsMjAgKzkyNCwyMyBAQCBpZiBfX25hbWVf
XyA9PSAiX19tYWluX18iOgogICAgIGlmIGZzIGlzIE5vbmU6CiAgICAgICAg
IHJhaXNlIFJ1bnRpbWVFcnJvcigiVW5hYmxlIHRvIGZpbmQgcGFydGl0aW9u
IGNvbnRhaW5pbmcga2VybmVsIikKIAotICAgIGJvb3RjZmdbImtlcm5lbCJd
ID0gY29weV9mcm9tX2ltYWdlKGZzLCBjaG9zZW5jZmdbImtlcm5lbCJdLCAi
a2VybmVsIiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBvdXRwdXRfZGlyZWN0b3J5LCBub3RfcmVhbGx5KQorICAgIGNvcHlf
ZnJvbV9pbWFnZShmcywgY2hvc2VuY2ZnWyJrZXJuZWwiXSwgImtlcm5lbCIs
CisgICAgICAgICAgICAgICAgICAgIGZkX2tlcm5lbCwgcGF0aF9rZXJuZWws
IG5vdF9yZWFsbHkpCisgICAgYm9vdGNmZ1sia2VybmVsIl0gPSBwYXRoX2tl
cm5lbAogCiAgICAgaWYgY2hvc2VuY2ZnWyJyYW1kaXNrIl06CiAgICAgICAg
IHRyeToKLSAgICAgICAgICAgIGJvb3RjZmdbInJhbWRpc2siXSA9IGNvcHlf
ZnJvbV9pbWFnZShmcywgY2hvc2VuY2ZnWyJyYW1kaXNrIl0sCi0gICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInJh
bWRpc2siLCBvdXRwdXRfZGlyZWN0b3J5LAotICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5vdF9yZWFsbHkpCisg
ICAgICAgICAgICBjb3B5X2Zyb21faW1hZ2UoZnMsIGNob3NlbmNmZ1sicmFt
ZGlzayJdLCAicmFtZGlzayIsCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgZmRfcmFtZGlzaywgcGF0aF9yYW1kaXNrLCBub3RfcmVhbGx5KQogICAg
ICAgICBleGNlcHQ6CiAgICAgICAgICAgICBpZiBub3Qgbm90X3JlYWxseToK
LSAgICAgICAgICAgICAgICBvcy51bmxpbmsoYm9vdGNmZ1sia2VybmVsIl0p
CisgICAgICAgICAgICAgICAgb3MudW5saW5rKHBhdGhfa2VybmVsKQogICAg
ICAgICAgICAgcmFpc2UKKyAgICAgICAgYm9vdGNmZ1sicmFtZGlzayJdID0g
cGF0aF9yYW1kaXNrCiAgICAgZWxzZToKICAgICAgICAgaW5pdHJkID0gTm9u
ZQorICAgICAgICBpZiBub3Qgbm90X3JlYWxseToKKyAgICAgICAgICAgIG9z
LnVubGluayhwYXRoX3JhbWRpc2spCiAKICAgICBhcmdzID0gTm9uZQogICAg
IGlmIGNob3NlbmNmZ1siYXJncyJdOgotLSAKMi40Mi4wCgo=

--=separator
Content-Type: application/octet-stream; name="xsa443/xsa443-4.15-08.patch"
Content-Disposition: attachment; filename="xsa443/xsa443-4.15-08.patch"
Content-Transfer-Encoding: base64

RnJvbSAxNTQ4YWQyMjkxZWM3YTcyYWU2OTQ5YzExZDJlNTBjZWExMzVhNDhk
IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBBbGVqYW5kcm8gVmFs
bGVqbyA8YWxlamFuZHJvLnZhbGxlam9AY2xvdWQuY29tPgpEYXRlOiBNb24s
IDI1IFNlcCAyMDIzIDE4OjMyOjI0ICswMTAwClN1YmplY3Q6IFtQQVRDSCAw
OC8xMV0gdG9vbHMvbGliZnNpbWFnZTogRXhwb3J0IGEgbmV3IGZ1bmN0aW9u
IHRvIHByZWxvYWQgYWxsCiBwbHVnaW5zCgpUaGlzIGlzIHdvcmsgcmVxdWly
ZWQgaW4gb3JkZXIgdG8gbGV0IHB5Z3J1YiBvcGVyYXRlIGluIGhpZ2hseSBk
ZXByaXZpbGVnZWQKY2hyb290IG1vZGUuIFRoaXMgcGF0Y2ggYWRkcyBhIGZ1
bmN0aW9uIHRoYXQgcHJlbG9hZHMgZXZlcnkgcGx1Z2luLCBoZW5jZQplbnN1
cmluZyB0aGF0IGEgb24gZnVuY3Rpb24gZXhpdCwgZXZlcnkgc2hhcmVkIGxp
YnJhcnkgaXMgbG9hZGVkIGluIG1lbW9yeS4KClRoZSBuZXcgImluaXQiIGZ1
bmN0aW9uIGlzIHN1cHBvc2VkIHRvIGJlIHVzZWQgYmVmb3JlIGRlcHJpdiwg
YnV0IHRoYXQncwpmaW5lIGJlY2F1c2UgaXQncyBub3QgYWN0aW5nIG9uIHVu
dHJ1c3RlZCBkYXRhLgoKVGhpcyBpcyBwYXJ0IG9mIFhTQS00NDMgLyBDVkUt
MjAyMy0zNDMyNQoKU2lnbmVkLW9mZi1ieTogQWxlamFuZHJvIFZhbGxlam8g
PGFsZWphbmRyby52YWxsZWpvQGNsb3VkLmNvbT4KQWNrZWQtYnk6IEFuZHJl
dyBDb29wZXIgPGFuZHJldy5jb29wZXIzQGNpdHJpeC5jb20+Ci0tLQogdG9v
bHMvbGliZnNpbWFnZS9jb21tb24vZnNpbWFnZV9wbHVnaW4uYyB8ICA0ICsr
LS0KIHRvb2xzL2xpYmZzaW1hZ2UvY29tbW9uL21hcGZpbGUtR05VICAgICAg
fCAgMSArCiB0b29scy9saWJmc2ltYWdlL2NvbW1vbi9tYXBmaWxlLVN1bk9T
ICAgIHwgIDEgKwogdG9vbHMvbGliZnNpbWFnZS9jb21tb24veGVuZnNpbWFn
ZS5oICAgICB8ICA4ICsrKysrKysrCiB0b29scy9weWdydWIvc3JjL2ZzaW1h
Z2UvZnNpbWFnZS5jICAgICAgIHwgMTUgKysrKysrKysrKysrKysrCiA1IGZp
bGVzIGNoYW5nZWQsIDI3IGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0p
CgpkaWZmIC0tZ2l0IGEvdG9vbHMvbGliZnNpbWFnZS9jb21tb24vZnNpbWFn
ZV9wbHVnaW4uYyBiL3Rvb2xzL2xpYmZzaW1hZ2UvY29tbW9uL2ZzaW1hZ2Vf
cGx1Z2luLmMKaW5kZXggZGUxNDEyYjQyMzNhLi5kMGNiOWU5NmE2NTQgMTAw
NjQ0Ci0tLSBhL3Rvb2xzL2xpYmZzaW1hZ2UvY29tbW9uL2ZzaW1hZ2VfcGx1
Z2luLmMKKysrIGIvdG9vbHMvbGliZnNpbWFnZS9jb21tb24vZnNpbWFnZV9w
bHVnaW4uYwpAQCAtMTE5LDcgKzExOSw3IEBAIGZhaWw6CiAJcmV0dXJuICgt
MSk7CiB9CiAKLXN0YXRpYyBpbnQgbG9hZF9wbHVnaW5zKHZvaWQpCitpbnQg
ZnNpX2luaXQodm9pZCkKIHsKIAljb25zdCBjaGFyICpmc2RpciA9IGdldGVu
digiWEVOX0ZTSU1BR0VfRlNESVIiKTsKIAlzdHJ1Y3QgZGlyZW50ICpkcCA9
IE5VTEw7CkBAIC0xODAsNyArMTgwLDcgQEAgaW50IGZpbmRfcGx1Z2luKGZz
aV90ICpmc2ksIGNvbnN0IGNoYXIgKnBhdGgsIGNvbnN0IGNoYXIgKm9wdGlv
bnMpCiAJZnNpX3BsdWdpbl90ICpmcDsKIAlpbnQgcmV0ID0gMDsKIAotCWlm
IChwbHVnaW5zID09IE5VTEwgJiYgKHJldCA9IGxvYWRfcGx1Z2lucygpKSAh
PSAwKQorCWlmIChwbHVnaW5zID09IE5VTEwgJiYgKHJldCA9IGZzaV9pbml0
KCkpICE9IDApCiAJCWdvdG8gb3V0OwogCiAJZm9yIChmcCA9IHBsdWdpbnM7
IGZwICE9IE5VTEw7IGZwID0gZnAtPmZwX25leHQpIHsKZGlmZiAtLWdpdCBh
L3Rvb2xzL2xpYmZzaW1hZ2UvY29tbW9uL21hcGZpbGUtR05VIGIvdG9vbHMv
bGliZnNpbWFnZS9jb21tb24vbWFwZmlsZS1HTlUKaW5kZXggMjZkNGQ3YTY5
ZWM3Li4yZDU0ZDUyN2Q3ZjUgMTAwNjQ0Ci0tLSBhL3Rvb2xzL2xpYmZzaW1h
Z2UvY29tbW9uL21hcGZpbGUtR05VCisrKyBiL3Rvb2xzL2xpYmZzaW1hZ2Uv
Y29tbW9uL21hcGZpbGUtR05VCkBAIC0xLDYgKzEsNyBAQAogVkVSU0lPTiB7
CiAJbGliZnNpbWFnZS5zby4xLjAgewogCQlnbG9iYWw6CisJCQlmc2lfaW5p
dDsKIAkJCWZzaV9vcGVuX2ZzaW1hZ2U7CiAJCQlmc2lfY2xvc2VfZnNpbWFn
ZTsKIAkJCWZzaV9maWxlX2V4aXN0czsKZGlmZiAtLWdpdCBhL3Rvb2xzL2xp
YmZzaW1hZ2UvY29tbW9uL21hcGZpbGUtU3VuT1MgYi90b29scy9saWJmc2lt
YWdlL2NvbW1vbi9tYXBmaWxlLVN1bk9TCmluZGV4IGU5OWI5MGI2NTA3Ny4u
NDhkZWVkYjQyNTJmIDEwMDY0NAotLS0gYS90b29scy9saWJmc2ltYWdlL2Nv
bW1vbi9tYXBmaWxlLVN1bk9TCisrKyBiL3Rvb2xzL2xpYmZzaW1hZ2UvY29t
bW9uL21hcGZpbGUtU3VuT1MKQEAgLTEsNSArMSw2IEBACiBsaWJmc2ltYWdl
LnNvLjEuMCB7CiAJZ2xvYmFsOgorCQlmc2lfaW5pdDsKIAkJZnNpX29wZW5f
ZnNpbWFnZTsKIAkJZnNpX2Nsb3NlX2ZzaW1hZ2U7CiAJCWZzaV9maWxlX2V4
aXN0czsKZGlmZiAtLWdpdCBhL3Rvb2xzL2xpYmZzaW1hZ2UvY29tbW9uL3hl
bmZzaW1hZ2UuaCBiL3Rvb2xzL2xpYmZzaW1hZ2UvY29tbW9uL3hlbmZzaW1h
Z2UuaAppbmRleCAyMDFhYmQ1NGYyM2EuLjM0MTg4M2IyZDcxYSAxMDA2NDQK
LS0tIGEvdG9vbHMvbGliZnNpbWFnZS9jb21tb24veGVuZnNpbWFnZS5oCisr
KyBiL3Rvb2xzL2xpYmZzaW1hZ2UvY29tbW9uL3hlbmZzaW1hZ2UuaApAQCAt
MzUsNiArMzUsMTQgQEAgZXh0ZXJuIEMgewogdHlwZWRlZiBzdHJ1Y3QgZnNp
IGZzaV90OwogdHlwZWRlZiBzdHJ1Y3QgZnNpX2ZpbGUgZnNpX2ZpbGVfdDsK
IAorLyoKKyAqIE9wdGlvbmFsIGluaXRpYWxpemF0aW9uIGZ1bmN0aW9uLiBJ
ZiBpbnZva2VkIGl0IGxvYWRzIHRoZSBhc3NvY2lhdGVkCisgKiBkeW5hbWlj
IGxpYnJhcmllcyBmb3IgdGhlIGJhY2tlbmRzIGFoZWFkIG9mIHRpbWUuIFRo
aXMgaXMgcmVxdWlyZWQgaWYKKyAqIHRoZSBsaWJyYXJ5IGlzIHRvIHJ1biBh
cyBwYXJ0IG9mIGEgaGlnaGx5IGRlcHJpdmlsZWdlZCBleGVjdXRhYmxlLCBh
cworICogdGhlIGxpYnJhcmllcyBtYXkgbm90IGJlIHJlYWNoYWJsZSBhZnRl
ciBkZXByaXYuCisgKi8KK2ludCBmc2lfaW5pdCh2b2lkKTsKKwogZnNpX3Qg
KmZzaV9vcGVuX2ZzaW1hZ2UoY29uc3QgY2hhciAqLCB1aW50NjRfdCwgY29u
c3QgY2hhciAqKTsKIHZvaWQgZnNpX2Nsb3NlX2ZzaW1hZ2UoZnNpX3QgKik7
CiAKZGlmZiAtLWdpdCBhL3Rvb2xzL3B5Z3J1Yi9zcmMvZnNpbWFnZS9mc2lt
YWdlLmMgYi90b29scy9weWdydWIvc3JjL2ZzaW1hZ2UvZnNpbWFnZS5jCmlu
ZGV4IDJlYmJiZTM1ZGY5Mi4uOTJmYmYyODUxZjAxIDEwMDY0NAotLS0gYS90
b29scy9weWdydWIvc3JjL2ZzaW1hZ2UvZnNpbWFnZS5jCisrKyBiL3Rvb2xz
L3B5Z3J1Yi9zcmMvZnNpbWFnZS9mc2ltYWdlLmMKQEAgLTI4Niw2ICsyODYs
MTUgQEAgZnNpbWFnZV9nZXRib290c3RyaW5nKFB5T2JqZWN0ICpvLCBQeU9i
amVjdCAqYXJncykKIAlyZXR1cm4gUHlfQnVpbGRWYWx1ZSgicyIsIGJvb3Rz
dHJpbmcpOwogfQogCitzdGF0aWMgUHlPYmplY3QgKgorZnNpbWFnZV9pbml0
KFB5T2JqZWN0ICpvLCBQeU9iamVjdCAqYXJncykKK3sKKwlpZiAoIVB5QXJn
X1BhcnNlVHVwbGUoYXJncywgIiIpKQorCQlyZXR1cm4gKE5VTEwpOworCisJ
cmV0dXJuIFB5X0J1aWxkVmFsdWUoImkiLCBmc2lfaW5pdCgpKTsKK30KKwog
UHlEb2NfU1RSVkFSKGZzaW1hZ2Vfb3Blbl9fZG9jX18sCiAgICAgIm9wZW4o
bmFtZSwgW29mZnNldD1vZmZdKSAtIE9wZW4gdGhlIGdpdmVuIGZpbGUgYXMg
YSBmaWxlc3lzdGVtIGltYWdlLlxuIgogICAgICJcbiIKQEAgLTI5Nyw3ICsz
MDYsMTMgQEAgUHlEb2NfU1RSVkFSKGZzaW1hZ2VfZ2V0Ym9vdHN0cmluZ19f
ZG9jX18sCiAgICAgImdldGJvb3RzdHJpbmcoZnMpIC0gUmV0dXJuIHRoZSBi
b290IHN0cmluZyBuZWVkZWQgZm9yIHRoaXMgZmlsZSBzeXN0ZW0gIgogICAg
ICJvciBOVUxMIGlmIG5vbmUgaXMgbmVlZGVkLlxuIik7CiAKK1B5RG9jX1NU
UlZBUihmc2ltYWdlX2luaXRfX2RvY19fLAorICAgICJpbml0KCkgLSBMb2Fk
cyBldmVyeSBkeW5hbWljIGxpYnJhcnkgY29udGFpbmVkIGluIHhlbmZzaW1h
Z2UgIgorICAgICJpbnRvIG1lbW9yeSBzbyB0aGF0IGl0IGNhbiBiZSB1c2Vk
IGluIGNocm9vdGVkIGVudmlyb25tZW50cy5cbiIpOworCiBzdGF0aWMgc3Ry
dWN0IFB5TWV0aG9kRGVmIGZzaW1hZ2VfbW9kdWxlX21ldGhvZHNbXSA9IHsK
Kwl7ICJpbml0IiwgKFB5Q0Z1bmN0aW9uKWZzaW1hZ2VfaW5pdCwKKwkgICAg
TUVUSF9WQVJBUkdTLCBmc2ltYWdlX2luaXRfX2RvY19fIH0sCiAJeyAib3Bl
biIsIChQeUNGdW5jdGlvbilmc2ltYWdlX29wZW4sCiAJICAgIE1FVEhfVkFS
QVJHU3xNRVRIX0tFWVdPUkRTLCBmc2ltYWdlX29wZW5fX2RvY19fIH0sCiAJ
eyAiZ2V0Ym9vdHN0cmluZyIsIChQeUNGdW5jdGlvbilmc2ltYWdlX2dldGJv
b3RzdHJpbmcsCi0tIAoyLjQyLjAKCg==

--=separator
Content-Type: application/octet-stream; name="xsa443/xsa443-4.15-09.patch"
Content-Disposition: attachment; filename="xsa443/xsa443-4.15-09.patch"
Content-Transfer-Encoding: base64

RnJvbSA0ZDMzMWIwYjkxNGRmYzE3YmQyZDg4M2JjNTVhZWI3OTg5MzA4MzJh
IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBBbGVqYW5kcm8gVmFs
bGVqbyA8YWxlamFuZHJvLnZhbGxlam9AY2xvdWQuY29tPgpEYXRlOiBNb24s
IDI1IFNlcCAyMDIzIDE4OjMyOjI1ICswMTAwClN1YmplY3Q6IFtQQVRDSCAw
OS8xMV0gdG9vbHMvcHlncnViOiBEZXByaXZpbGVnZSBweWdydWIKCkludHJv
ZHVjZSBhIC0tcnVuYXM9PHVpZD4gZmxhZyB0byBkZXByaXZpbGVnZSBweWdy
dWIgb24gTGludXggYW5kICpCU0RzLiBJdAphbHNvIGltcGxpY2l0bHkgY3Jl
YXRlcyBhIGNocm9vdCBlbnYgd2hlcmUgaXQgZHJvcHMgYSBkZXByaXZpbGVn
ZWQgZm9ya2VkCnByb2Nlc3MuIFRoZSBjaHJvb3QgaXRzZWxmIGlzIGNsZWFu
ZWQgdXAgYXQgdGhlIGVuZC4KCklmIHRoZSAtLXJ1bmFzIGFyZyBpcyBwcmVz
ZW50LCB0aGVuIHB5Z3J1YiBmb3JrcywgbGVhdmluZyB0aGUgY2hpbGQgdG8K
ZGVwcml2aWxlZ2UgaXRzZWxmLCBhbmQgd2FpdGluZyBmb3IgaXQgdG8gY29t
cGxldGUuIFdoZW4gdGhlIGNoaWxkIGV4aXN0cywKdGhlIHBhcmVudCBwZXJm
b3JtcyBjbGVhbnVwIGFuZCBleGl0cyB3aXRoIHRoZSBzYW1lIGVycm9yIGNv
ZGUuCgpUaGlzIGlzIHJvdWdobHkgd2hhdCB0aGUgY2hpbGQgZG9lczoKICAx
LiBJbml0aWFsaXplIGxpYmZzaW1hZ2UgKHRoaXMgbG9hZHMgZXZlcnkgLnNv
IGluIG1lbW9yeSBzbyB0aGUgY2hyb290CiAgICAgY2FuIGF2b2lkIGJpbmQt
bW91bnRpbmcgL3ssdXNyfS9saWIqCiAgMi4gQ3JlYXRlIGEgdGVtcG9yYXJ5
IGVtcHR5IGNocm9vdCBkaXJlY3RvcnkKICAzLiBNb3VudCB0bXBmcyBpbiBp
dAogIDQuIEJpbmQgbW91bnQgdGhlIGRpc2sgaW5zaWRlLCBiZWNhdXNlIGxp
YmZzaW1hZ2UgZXhwZWN0cyBhIHBhdGgsIG5vdCBhCiAgICAgZmlsZSBkZXNj
cmlwdG9yLgogIDUuIFJlbW91bnQgdGhlIHJvb3QgdG1wZnMgdG8gYmUgc3Ry
aWN0ZXIgKHJvLG5vc3VpZCxub2RldikKICA2LiBTZXQgUkxJTUlUX0ZTSVpF
IHRvIGEgc2Vuc2libHkgaGlnaCBhbW91bnQgKDEyOCBNaUIpCiAgNy4gRGVw
cml2IGdpZCwgZ3JvdXBzIGFuZCB1aWQKCldpdGggdGhpcyBzY2hlbWUgaW4g
cGxhY2UsIHRoZSAib3V0cHV0IiBmaWxlcyBhcmUgd3JpdGFibGUgKHVwIHRv
ClJMSU1JVF9GU0laRSBvY3RldHMpIGFuZCB0aGUgZXhwb3NlZCBmaWxlc3lz
dGVtIGlzIGltbXV0YWJsZSBhbmQgY29udGFpbnMKdGhlIHNpbmdsZSBvbmx5
IGZpbGUgd2UgY2FuJ3QgZWFzaWx5IGdldCByaWQgb2YgKHRoZSBkaXNrKS4K
CklmIHJ1bm5pbmcgb24gTGludXgsIHRoZSBjaGlsZCBwcm9jZXNzIGFsc28g
dW5zaGFyZXMgbW91bnQsIElQQywgYW5kCm5ldHdvcmsgbmFtZXNwYWNlcyBi
ZWZvcmUgZHJvcHBpbmcgaXRzIHByaXZpbGVnZXMuCgpUaGlzIGlzIHBhcnQg
b2YgWFNBLTQ0MyAvIENWRS0yMDIzLTM0MzI1CgpTaWduZWQtb2ZmLWJ5OiBB
bGVqYW5kcm8gVmFsbGVqbyA8YWxlamFuZHJvLnZhbGxlam9AY2xvdWQuY29t
PgpBY2tlZC1ieTogQW5kcmV3IENvb3BlciA8YW5kcmV3LmNvb3BlcjNAY2l0
cml4LmNvbT4KLS0tCiB0b29scy9weWdydWIvc2V0dXAucHkgICB8ICAgMiAr
LQogdG9vbHMvcHlncnViL3NyYy9weWdydWIgfCAxNjIgKysrKysrKysrKysr
KysrKysrKysrKysrKysrKysrKysrKysrKy0tLQogMiBmaWxlcyBjaGFuZ2Vk
LCAxNTQgaW5zZXJ0aW9ucygrKSwgMTAgZGVsZXRpb25zKC0pCgpkaWZmIC0t
Z2l0IGEvdG9vbHMvcHlncnViL3NldHVwLnB5IGIvdG9vbHMvcHlncnViL3Nl
dHVwLnB5CmluZGV4IGI4ZjFkYzQ1OTBjZi4uZjE2MTg3YjZkMTE4IDEwMDY0
NAotLS0gYS90b29scy9weWdydWIvc2V0dXAucHkKKysrIGIvdG9vbHMvcHln
cnViL3NldHVwLnB5CkBAIC0xNyw3ICsxNyw3IEBAIHhlbmZzaW1hZ2UgPSBF
eHRlbnNpb24oInhlbmZzaW1hZ2UiLAogcGtncyA9IFsgJ2dydWInIF0KIAog
c2V0dXAobmFtZT0ncHlncnViJywKLSAgICAgIHZlcnNpb249JzAuNicsCisg
ICAgICB2ZXJzaW9uPScwLjcnLAogICAgICAgZGVzY3JpcHRpb249J0Jvb3Qg
bG9hZGVyIHRoYXQgbG9va3MgYSBsb3QgbGlrZSBncnViIGZvciBYZW4nLAog
ICAgICAgYXV0aG9yPSdKZXJlbXkgS2F0eicsCiAgICAgICBhdXRob3JfZW1h
aWw9J2thdHpqQHJlZGhhdC5jb20nLApkaWZmIC0tZ2l0IGEvdG9vbHMvcHln
cnViL3NyYy9weWdydWIgYi90b29scy9weWdydWIvc3JjL3B5Z3J1YgppbmRl
eCA5MWUyZWMyYWIxMDUuLjdjZWE0OTZhZGUwOCAxMDA3NTUKLS0tIGEvdG9v
bHMvcHlncnViL3NyYy9weWdydWIKKysrIGIvdG9vbHMvcHlncnViL3NyYy9w
eWdydWIKQEAgLTE2LDggKzE2LDExIEBAIGZyb20gX19mdXR1cmVfXyBpbXBv
cnQgcHJpbnRfZnVuY3Rpb24KIAogaW1wb3J0IG9zLCBzeXMsIHN0cmluZywg
c3RydWN0LCB0ZW1wZmlsZSwgcmUsIHRyYWNlYmFjaywgc3RhdCwgZXJybm8K
IGltcG9ydCBjb3B5CitpbXBvcnQgY3R5cGVzLCBjdHlwZXMudXRpbAogaW1w
b3J0IGxvZ2dpbmcKIGltcG9ydCBwbGF0Zm9ybQoraW1wb3J0IHJlc291cmNl
CitpbXBvcnQgc3VicHJvY2VzcwogCiBpbXBvcnQgY3Vyc2VzLCBfY3Vyc2Vz
LCBjdXJzZXMudGV4dHBhZCwgY3Vyc2VzLmFzY2lpCiBpbXBvcnQgZ2V0b3B0
CkBAIC0yNywxMCArMzAsMTM1IEBAIGltcG9ydCBncnViLkdydWJDb25mCiBp
bXBvcnQgZ3J1Yi5MaWxvQ29uZgogaW1wb3J0IGdydWIuRXh0TGludXhDb25m
CiAKLVBZR1JVQl9WRVIgPSAwLjYKK1BZR1JVQl9WRVIgPSAwLjcKIEZTX1JF
QURfTUFYID0gMTAyNCAqIDEwMjQKIFNFQ1RPUl9TSVpFID0gNTEyCiAKKyMg
VW5sZXNzIHByb3ZpZGVkIHRocm91Z2ggdGhlIGVudiB2YXJpYWJsZSBQWUdS
VUJfTUFYX0ZJTEVfU0laRV9NQiwgdGhlbgorIyB0aGlzIGlzIHRoZSBtYXhp
bXVtIGZpbGVzaXplIGFsbG93ZWQgZm9yIGZpbGVzIHdyaXR0ZW4gYnkgdGhl
IGRlcHJpdgorIyBweWdydWIKK0xJTUlUX0ZTSVpFID0gMTI4IDw8IDIwCisK
K0NMT05FX05FV05TID0gMHgwMDAyMDAwMCAjIG1vdW50IG5hbWVzcGFjZQor
Q0xPTkVfTkVXTkVUID0gMHg0MDAwMDAwMCAjIG5ldHdvcmsgbmFtZXNwYWNl
CitDTE9ORV9ORVdJUEMgPSAweDA4MDAwMDAwICMgSVBDIG5hbWVzcGFjZQor
CitkZWYgdW5zaGFyZShmbGFncyk6CisgICAgaWYgbm90IHN5cy5wbGF0Zm9y
bS5zdGFydHN3aXRoKCJsaW51eCIpOgorICAgICAgICBwcmludCgic2tpcF91
bnNoYXJlIHJlYXNvbj1ub3RfbGludXggcGxhdGZvcm09JXMiLCBzeXMucGxh
dGZvcm0sIGZpbGU9c3lzLnN0ZGVycikKKyAgICAgICAgcmV0dXJuCisKKyAg
ICBsaWJjID0gY3R5cGVzLkNETEwoY3R5cGVzLnV0aWwuZmluZF9saWJyYXJ5
KCdjJyksIHVzZV9lcnJubz1UcnVlKQorICAgIHVuc2hhcmVfcHJvdG90eXBl
ID0gY3R5cGVzLkNGVU5DVFlQRShjdHlwZXMuY19pbnQsIGN0eXBlcy5jX2lu
dCwgdXNlX2Vycm5vPVRydWUpCisgICAgdW5zaGFyZSA9IHVuc2hhcmVfcHJv
dG90eXBlKCgndW5zaGFyZScsIGxpYmMpKQorCisgICAgaWYgdW5zaGFyZShm
bGFncykgPCAwOgorICAgICAgICByYWlzZSBPU0Vycm9yKGN0eXBlcy5nZXRf
ZXJybm8oKSwgb3Muc3RyZXJyb3IoY3R5cGVzLmdldF9lcnJubygpKSkKKwor
ZGVmIGJpbmRfbW91bnQoc3JjLCBkc3QsIG9wdGlvbnMpOgorICAgIG9wZW4o
ZHN0LCAiYSIpLmNsb3NlKCkgIyB0b3VjaAorCisgICAgcmMgPSBzdWJwcm9j
ZXNzLmNhbGwoWyJtb3VudCIsICItLWJpbmQiLCAiLW8iLCBvcHRpb25zLCBz
cmMsIGRzdF0pCisgICAgaWYgcmMgIT0gMDoKKyAgICAgICAgcmFpc2UgUnVu
dGltZUVycm9yKCJiYWRfbW91bnQ6IHNyYz0lcyBkc3Q9JXMgb3B0cz0lcyIg
JQorICAgICAgICAgICAgICAgICAgICAgICAgICAgKHNyYywgZHN0LCBvcHRp
b25zKSkKKworZGVmIGRvd25ncmFkZV9ybGltaXRzKCk6CisgICAgIyBXaXBl
IHRoZSBhdXRob3JpdHkgdG8gdXNlIHVucmVxdWlyZWQgcmVzb3VyY2VzCisg
ICAgcmVzb3VyY2Uuc2V0cmxpbWl0KHJlc291cmNlLlJMSU1JVF9OUFJPQywg
ICAgKDAsIDApKQorICAgIHJlc291cmNlLnNldHJsaW1pdChyZXNvdXJjZS5S
TElNSVRfQ09SRSwgICAgICgwLCAwKSkKKyAgICByZXNvdXJjZS5zZXRybGlt
aXQocmVzb3VyY2UuUkxJTUlUX01FTUxPQ0ssICAoMCwgMCkpCisKKyAgICAj
IHB5MidzIHJlc291cmNlIG1vZHVsZSBkb2Vzbid0IGtub3cgYWJvdXQgcmVz
b3VyY2UuUkxJTUlUX01TR1FVRVVFCisgICAgIworICAgICMgVE9ETzogVXNl
IHJlc291cmNlLlJMSU1JVF9NU0dRVUVVRSBhZnRlciBweXRob24yIGlzIGRl
cHJlY2F0ZWQKKyAgICBpZiBzeXMucGxhdGZvcm0uc3RhcnRzd2l0aCgnbGlu
dXgnKToKKyAgICAgICAgUkxJTUlUX01TR1FVRVVFID0gMTIKKyAgICAgICAg
cmVzb3VyY2Uuc2V0cmxpbWl0KFJMSU1JVF9NU0dRVUVVRSwgKDAsIDApKQor
CisgICAgIyBUaGUgZmluYWwgbG9vayBvZiB0aGUgZmlsZXN5c3RlbSBmb3Ig
dGhpcyBwcm9jZXNzIGlzIGZ1bGx5IFJPLCBidXQKKyAgICAjIG5vdGUgd2Ug
aGF2ZSBzb21lIGZpbGUgZGVzY3JpcHRvciBhbHJlYWR5IG9wZW4gKG5vdGFi
bHksIGtlcm5lbCBhbmQKKyAgICAjIHJhbWRpc2spLiBJbiBvcmRlciB0byBh
dm9pZCBhIGNvbXByb21pc2VkIHB5Z3J1YiBmcm9tIGZpbGxpbmcgdXAgdGhl
CisgICAgIyBmaWxlc3lzdGVtIHdlIHNldCBSTElNSVRfRlNJWkUgdG8gYSBo
aWdoIGJvdW5kLCBzbyB0aGF0IHRoZSBmaWxlCisgICAgIyB3cml0ZSBwZXJt
aXNzaW9ucyBhcmUgYm91bmQuCisgICAgZnNpemUgPSBMSU1JVF9GU0laRQor
ICAgIGlmICJQWUdSVUJfTUFYX0ZJTEVfU0laRV9NQiIgaW4gb3MuZW52aXJv
bi5rZXlzKCk6CisgICAgICAgIGZzaXplID0gb3MuZW52aXJvblsiUFlHUlVC
X01BWF9GSUxFX1NJWkVfTUIiXSA8PCAyMAorCisgICAgcmVzb3VyY2Uuc2V0
cmxpbWl0KHJlc291cmNlLlJMSU1JVF9GU0laRSwgKGZzaXplLCBmc2l6ZSkp
CisKK2RlZiBkZXByaXYob3V0cHV0X2RpcmVjdG9yeSwgb3V0cHV0LCBkZXZp
Y2UsIHVpZCwgcGF0aF9rZXJuZWwsIHBhdGhfcmFtZGlzayk6CisgICAgIyBU
aGUgb25seSBwb2ludCBvZiB0aGlzIGNhbGwgaXMgdG8gZm9yY2UgdGhlIGxv
YWRpbmcgb2YgbGliZnNpbWFnZS4KKyAgICAjIFRoYXQgd2F5LCB3ZSBkb24n
dCBuZWVkIHRvIGJpbmQtbW91bnQgaXQgaW50byB0aGUgY2hyb290CisgICAg
cmMgPSB4ZW5mc2ltYWdlLmluaXQoKQorICAgIGlmIHJjICE9IDA6CisgICAg
ICAgIG9zLnVubGluayhwYXRoX3JhbWRpc2spCisgICAgICAgIG9zLnVubGlu
ayhwYXRoX2tlcm5lbCkKKyAgICAgICAgcmFpc2UgUnVudGltZUVycm9yKCJi
YWRfeGVuZnNpbWFnZTogcmM9JWQiICUgcmMpCisKKyAgICAjIENyZWF0ZSBh
IHRlbXBvcmFyeSBkaXJlY3RvcnkgZm9yIHRoZSBjaHJvb3QKKyAgICBjaHJv
b3QgPSB0ZW1wZmlsZS5ta2R0ZW1wKHByZWZpeD1zdHIodWlkKSsnLScsIGRp
cj1vdXRwdXRfZGlyZWN0b3J5KSArICcvJworICAgIGRldmljZV9wYXRoID0g
Jy9kZXZpY2UnCisKKyAgICBwaWQgPSBvcy5mb3JrKCkKKyAgICBpZiBwaWQ6
CisgICAgICAgICMgcGFyZW50CisgICAgICAgIF8sIHJjID0gb3Mud2FpdHBp
ZChwaWQsIDApCisKKyAgICAgICAgZm9yIHBhdGggaW4gW3BhdGhfa2VybmVs
LCBwYXRoX3JhbWRpc2tdOgorICAgICAgICAgICAgIyBJZiB0aGUgY2hpbGQg
ZGlkbid0IHdyaXRlIGFueXRoaW5nLCBqdXN0IGdldCByaWQgb2YgaXQsCisg
ICAgICAgICAgICAjIG90aGVyd2lzZSB3ZSBlbmQgdXAgY29uc3VtaW5nIGEg
MC1zaXplIGZpbGUgd2hlbiBwYXJzaW5nCisgICAgICAgICAgICAjIHN5c3Rl
bXMgd2l0aG91dCBhIHJhbWRpc2sgdGhhdCB0aGUgdWx0aW1hdGUgY2FsbGVy
IG9mIHB5Z3J1YgorICAgICAgICAgICAgIyBtYXkganVzdCBiZSB1bmF3YXJl
IG9mCisgICAgICAgICAgICBpZiByYyAhPSAwIG9yIG9zLnBhdGguZ2V0c2l6
ZShwYXRoKSA9PSAwOgorICAgICAgICAgICAgICAgIG9zLnVubGluayhwYXRo
KQorCisgICAgICAgICMgTm9ybWFsbHksIHVuc2hhcmUoQ0xPTkVfTkVXTlMp
IHdpbGwgZW5zdXJlIHRoaXMgaXMgbm90IHJlcXVpcmVkLgorICAgICAgICAj
IEhvd2V2ZXIsIHRoaXMgc3lzY2FsbCBkb2Vzbid0IGV4aXN0IGluICpCU0Qg
c3lzdGVtcyBhbmQgZG9lc24ndAorICAgICAgICAjIGF1dG8tdW5tb3VudCBl
dmVyeXRoaW5nIG9uIG9sZGVyIExpbnV4IGtlcm5lbHMgKEF0IGxlYXN0IGFz
IG9mCisgICAgICAgICMgTGludXggNC4xOSwgYnV0IGl0IHNlZW1zIGZpeGVk
IGluIDUuMTUpLiBFaXRoZXIgd2F5LAorICAgICAgICAjIHJlY3Vyc2l2ZWx5
IHVubW91bnQgZXZlcnl0aGluZyBpZiBuZWVkZWQuIFF1aWV0bHkuCisgICAg
ICAgIHdpdGggb3BlbignL2Rldi9udWxsJywgJ3cnKSBhcyBkZXZudWxsOgor
ICAgICAgICAgICAgc3VicHJvY2Vzcy5jYWxsKFsidW1vdW50IiwgIi1mIiwg
Y2hyb290ICsgZGV2aWNlX3BhdGhdLAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIHN0ZG91dD1kZXZudWxsLCBzdGRlcnI9ZGV2bnVsbCkKKyAgICAg
ICAgICAgIHN1YnByb2Nlc3MuY2FsbChbInVtb3VudCIsICItZiIsIGNocm9v
dF0sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Rkb3V0PWRldm51
bGwsIHN0ZGVycj1kZXZudWxsKQorICAgICAgICBvcy5ybWRpcihjaHJvb3Qp
CisKKyAgICAgICAgc3lzLmV4aXQocmMpCisKKyAgICAjIEJ5IHVuc2hhcmlu
ZyB0aGUgbmFtZXNwYWNlIHdlJ3JlIG1ha2luZyBzdXJlIGl0J3MgYWxsIGJ1
bGstcmVsZWFzZWQKKyAgICAjIGF0IHRoZSBlbmQsIHdoZW4gdGhlIG5hbWVz
cGFjZXMgZGlzYXBwZWFyLiBUaGlzIG1lYW5zIHRoZSBrZXJuZWwgZG9lcwor
ICAgICMgKGFsbW9zdCkgYWxsIHRoZSBjbGVhbnVwIGZvciB1cyBhbmQgdGhl
IHBhcmVudCBqdXN0IGhhcyB0byByZW1vdmUgdGhlCisgICAgIyB0ZW1wb3Jh
cnkgZGlyZWN0b3J5LgorICAgIHVuc2hhcmUoQ0xPTkVfTkVXTlMgfCBDTE9O
RV9ORVdJUEMgfCBDTE9ORV9ORVdORVQpCisKKyAgICAjIFNldCBzZW5zaWJs
ZSBsaW1pdHMgdXNpbmcgdGhlIHNldHJsaW1pdCBpbnRlcmZhY2UKKyAgICBk
b3duZ3JhZGVfcmxpbWl0cygpCisKKyAgICAjIFdlJ2xsIG1vdW50IHRtcGZz
IG9uIHRoZSBjaHJvb3QgdG8gZW5zdXJlIHRoZSBkZXByaXZpbGVnZWQgY2hp
bGQKKyAgICAjIGNhbm5vdCBhZmZlY3QgdGhlIHBlcnNpc3RlbnQgc3RhdGUu
IEl0J3MgUlcgbm93IGluIG9yZGVyIHRvCisgICAgIyBiaW5kLW1vdW50IHRo
ZSBkZXZpY2UsIGJ1dCBub3RlIGl0J3MgcmVtb3VudGVkIFJPIGFmdGVyIHRo
YXQuCisgICAgcmMgPSBzdWJwcm9jZXNzLmNhbGwoWyJtb3VudCIsICItdCIs
ICJ0bXBmcyIsICJub25lIiwgY2hyb290XSkKKyAgICBpZiByYyAhPSAwOgor
ICAgICAgICByYWlzZSBSdW50aW1lRXJyb3IoIm1vdW50X3RtcGZzIHJjPSVk
IGRzdD1cIiVzXCIiICUgKHJjLCBjaHJvb3QpKQorCisgICAgIyBCaW5kIHRo
ZSB1bnRydXN0ZWQgZGV2aWNlIFJPCisgICAgYmluZF9tb3VudChkZXZpY2Us
IGNocm9vdCArIGRldmljZV9wYXRoLCAicm8sbm9zdWlkLG5vZXhlYyIpCisK
KyAgICByYyA9IHN1YnByb2Nlc3MuY2FsbChbIm1vdW50IiwgIi10IiwgInRt
cGZzIiwgIi1vIiwgInJlbW91bnQscm8sbm9zdWlkLG5vZXhlYyxub2RldiIs
ICJub25lIiwgY2hyb290XSkKKyAgICBpZiByYyAhPSAwOgorICAgICAgICBy
YWlzZSBSdW50aW1lRXJyb3IoInJlbW91bnRfdG1wZnMgcmM9JWQgZHN0PVwi
JXNcIiIgJSAocmMsIGNocm9vdCkpCisKKyAgICAjIERyb3Agc3VwZXJwb3dl
cnMhCisgICAgb3MuY2hyb290KGNocm9vdCkKKyAgICBvcy5jaGRpcignLycp
CisgICAgb3Muc2V0Z2lkKHVpZCkKKyAgICBvcy5zZXRncm91cHMoW3VpZF0p
CisgICAgb3Muc2V0dWlkKHVpZCkKKworICAgIHJldHVybiBkZXZpY2VfcGF0
aAorCiBkZWYgcmVhZF9zaXplX3JvdW5kdXAoZmQsIHNpemUpOgogICAgIGlm
IHBsYXRmb3JtLnN5c3RlbSgpICE9ICdGcmVlQlNEJzoKICAgICAgICAgcmV0
dXJuIHNpemUKQEAgLTczNiw3ICs4NjQsNyBAQCBpZiBfX25hbWVfXyA9PSAi
X19tYWluX18iOgogICAgIHNlbCA9IE5vbmUKICAgICAKICAgICBkZWYgdXNh
Z2UoKToKLSAgICAgICAgcHJpbnQoIlVzYWdlOiAlcyBbLXF8LS1xdWlldF0g
Wy1pfC0taW50ZXJhY3RpdmVdIFstbHwtLWxpc3QtZW50cmllc10gWy1ufC0t
bm90LXJlYWxseV0gWy0tb3V0cHV0PV0gWy0ta2VybmVsPV0gWy0tcmFtZGlz
az1dIFstLWFyZ3M9XSBbLS1lbnRyeT1dIFstLW91dHB1dC1kaXJlY3Rvcnk9
XSBbLS1vdXRwdXQtZm9ybWF0PXN4cHxzaW1wbGV8c2ltcGxlMF0gWy0tb2Zm
c2V0PV0gPGltYWdlPiIgJShzeXMuYXJndlswXSwpLCBmaWxlPXN5cy5zdGRl
cnIpCisgICAgICAgIHByaW50KCJVc2FnZTogJXMgWy1xfC0tcXVpZXRdIFst
aXwtLWludGVyYWN0aXZlXSBbLWx8LS1saXN0LWVudHJpZXNdIFstbnwtLW5v
dC1yZWFsbHldIFstLW91dHB1dD1dIFstLWtlcm5lbD1dIFstLXJhbWRpc2s9
XSBbLS1hcmdzPV0gWy0tZW50cnk9XSBbLS1vdXRwdXQtZGlyZWN0b3J5PV0g
Wy0tb3V0cHV0LWZvcm1hdD1zeHB8c2ltcGxlfHNpbXBsZTBdIFstLXJ1bmFz
PV0gWy0tb2Zmc2V0PV0gPGltYWdlPiIgJShzeXMuYXJndlswXSwpLCBmaWxl
PXN5cy5zdGRlcnIpCiAKICAgICBkZWYgY29weV9mcm9tX2ltYWdlKGZzLCBm
aWxlX3RvX3JlYWQsIGZpbGVfdHlwZSwgZmRfZHN0LCBwYXRoX2RzdCwgbm90
X3JlYWxseSk6CiAgICAgICAgIGlmIG5vdF9yZWFsbHk6CkBAIC03NjAsNyAr
ODg4LDggQEAgaWYgX19uYW1lX18gPT0gIl9fbWFpbl9fIjoKICAgICAgICAg
ICAgICAgICBvcy53cml0ZShmZF9kc3QsIGRhdGEpCiAgICAgICAgICAgICBl
eGNlcHQgRXhjZXB0aW9uIGFzIGU6CiAgICAgICAgICAgICAgICAgcHJpbnQo
ZSwgZmlsZT1zeXMuc3RkZXJyKQotICAgICAgICAgICAgICAgIG9zLnVubGlu
ayhwYXRoX2RzdCkKKyAgICAgICAgICAgICAgICBpZiBwYXRoX2RzdDoKKyAg
ICAgICAgICAgICAgICAgICAgb3MudW5saW5rKHBhdGhfZHN0KQogICAgICAg
ICAgICAgICAgIGRlbCBkYXRhZmlsZQogICAgICAgICAgICAgICAgIHN5cy5l
eGl0KCJFcnJvciB3cml0aW5nIHRlbXBvcmFyeSBjb3B5IG9mICIrZmlsZV90
eXBlKQogICAgICAgICAgICAgZGF0YW9mZiArPSBsZW4oZGF0YSkKQEAgLTc2
OSw3ICs4OTgsNyBAQCBpZiBfX25hbWVfXyA9PSAiX19tYWluX18iOgogICAg
ICAgICBvcHRzLCBhcmdzID0gZ2V0b3B0LmdudV9nZXRvcHQoc3lzLmFyZ3Zb
MTpdLCAncWlsbmg6OicsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIFsicXVpZXQiLCAiaW50ZXJhY3RpdmUiLCAibGlzdC1lbnRyaWVz
IiwgIm5vdC1yZWFsbHkiLCAiaGVscCIsCiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAib3V0cHV0PSIsICJvdXRwdXQtZm9ybWF0PSIs
ICJvdXRwdXQtZGlyZWN0b3J5PSIsICJvZmZzZXQ9IiwKLSAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICJlbnRyeT0iLCAia2VybmVsPSIs
IAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInJ1bmFz
PSIsICJlbnRyeT0iLCAia2VybmVsPSIsCiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAicmFtZGlzaz0iLCAiYXJncz0iLCAiaXNjb25m
aWciLCAiZGVidWciXSkKICAgICBleGNlcHQgZ2V0b3B0LkdldG9wdEVycm9y
OgogICAgICAgICB1c2FnZSgpCkBAIC03OTAsNiArOTE5LDcgQEAgaWYgX19u
YW1lX18gPT0gIl9fbWFpbl9fIjoKICAgICBub3RfcmVhbGx5ID0gRmFsc2UK
ICAgICBvdXRwdXRfZm9ybWF0ID0gInN4cCIKICAgICBvdXRwdXRfZGlyZWN0
b3J5ID0gIi92YXIvcnVuL3hlbi9weWdydWIvIgorICAgIHVpZCA9IE5vbmUK
IAogICAgICMgd2hhdCB3YXMgcGFzc2VkIGluCiAgICAgaW5jZmcgPSB7ICJr
ZXJuZWwiOiBOb25lLCAicmFtZGlzayI6IE5vbmUsICJhcmdzIjogIiIgfQpA
QCAtODEzLDYgKzk0MywxMyBAQCBpZiBfX25hbWVfXyA9PSAiX19tYWluX18i
OgogICAgICAgICBlbGlmIG8gaW4gKCItLW91dHB1dCIsKToKICAgICAgICAg
ICAgIGlmIGEgIT0gIi0iOgogICAgICAgICAgICAgICAgIG91dHB1dCA9IGEK
KyAgICAgICAgZWxpZiBvIGluICgiLS1ydW5hcyIsKToKKyAgICAgICAgICAg
IHRyeToKKyAgICAgICAgICAgICAgICB1aWQgPSBpbnQoYSkKKyAgICAgICAg
ICAgIGV4Y2VwdCBWYWx1ZUVycm9yOgorICAgICAgICAgICAgICAgIHByaW50
KCJydW5hcyB2YWx1ZSBtdXN0IGJlIGFuIGludGVnZXIgdXNlciBpZCIpCisg
ICAgICAgICAgICAgICAgdXNhZ2UoKQorICAgICAgICAgICAgICAgIHN5cy5l
eGl0KDEpCiAgICAgICAgIGVsaWYgbyBpbiAoIi0ta2VybmVsIiwpOgogICAg
ICAgICAgICAgaW5jZmdbImtlcm5lbCJdID0gYQogICAgICAgICBlbGlmIG8g
aW4gKCItLXJhbWRpc2siLCk6CkBAIC04NDksNiArOTg2LDEwIEBAIGlmIF9f
bmFtZV9fID09ICJfX21haW5fXyI6CiAgICAgaWYgZGVidWc6CiAgICAgICAg
IGxvZ2dpbmcuYmFzaWNDb25maWcobGV2ZWw9bG9nZ2luZy5ERUJVRykKIAor
ICAgIGlmIGludGVyYWN0aXZlIGFuZCB1aWQ6CisgICAgICAgIHByaW50KCJJ
biBvcmRlciB0byB1c2UgLS1ydW5hcywgeW91IG11c3QgYWxzbyBzZXQgLS1l
bnRyeSBvciAtcSIsIGZpbGU9c3lzLnN0ZGVycikKKyAgICAgICAgc3lzLmV4
aXQoMSkKKwogICAgIHRyeToKICAgICAgICAgb3MubWFrZWRpcnMob3V0cHV0
X2RpcmVjdG9yeSwgMG83MDApCiAgICAgZXhjZXB0IE9TRXJyb3IgYXMgZToK
QEAgLTg3MCw2ICsxMDExLDkgQEAgaWYgX19uYW1lX18gPT0gIl9fbWFpbl9f
IjoKICAgICBlbHNlOgogICAgICAgICBmZCA9IG9zLm9wZW4ob3V0cHV0LCBv
cy5PX1dST05MWSkKIAorICAgIGlmIHVpZDoKKyAgICAgICAgZmlsZSA9IGRl
cHJpdihvdXRwdXRfZGlyZWN0b3J5LCBvdXRwdXQsIGZpbGUsIHVpZCwgcGF0
aF9rZXJuZWwsIHBhdGhfcmFtZGlzaykKKwogICAgICMgZGVidWcKICAgICBp
ZiBpc2NvbmZpZzoKICAgICAgICAgY2hvc2VuY2ZnID0gcnVuX2dydWIoZmls
ZSwgZW50cnksIGZzLCBpbmNmZ1siYXJncyJdKQpAQCAtOTI1LDIxICsxMDY5
LDIxIEBAIGlmIF9fbmFtZV9fID09ICJfX21haW5fXyI6CiAgICAgICAgIHJh
aXNlIFJ1bnRpbWVFcnJvcigiVW5hYmxlIHRvIGZpbmQgcGFydGl0aW9uIGNv
bnRhaW5pbmcga2VybmVsIikKIAogICAgIGNvcHlfZnJvbV9pbWFnZShmcywg
Y2hvc2VuY2ZnWyJrZXJuZWwiXSwgImtlcm5lbCIsCi0gICAgICAgICAgICAg
ICAgICAgIGZkX2tlcm5lbCwgcGF0aF9rZXJuZWwsIG5vdF9yZWFsbHkpCisg
ICAgICAgICAgICAgICAgICAgIGZkX2tlcm5lbCwgTm9uZSBpZiB1aWQgZWxz
ZSBwYXRoX2tlcm5lbCwgbm90X3JlYWxseSkKICAgICBib290Y2ZnWyJrZXJu
ZWwiXSA9IHBhdGhfa2VybmVsCiAKICAgICBpZiBjaG9zZW5jZmdbInJhbWRp
c2siXToKICAgICAgICAgdHJ5OgogICAgICAgICAgICAgY29weV9mcm9tX2lt
YWdlKGZzLCBjaG9zZW5jZmdbInJhbWRpc2siXSwgInJhbWRpc2siLAotICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGZkX3JhbWRpc2ssIHBhdGhfcmFt
ZGlzaywgbm90X3JlYWxseSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBmZF9yYW1kaXNrLCBOb25lIGlmIHVpZCBlbHNlIHBhdGhfcmFtZGlzaywg
bm90X3JlYWxseSkKICAgICAgICAgZXhjZXB0OgotICAgICAgICAgICAgaWYg
bm90IG5vdF9yZWFsbHk6Ci0gICAgICAgICAgICAgICAgb3MudW5saW5rKHBh
dGhfa2VybmVsKQorICAgICAgICAgICAgaWYgbm90IHVpZCBhbmQgbm90IG5v
dF9yZWFsbHk6CisgICAgICAgICAgICAgICAgICAgIG9zLnVubGluayhwYXRo
X2tlcm5lbCkKICAgICAgICAgICAgIHJhaXNlCiAgICAgICAgIGJvb3RjZmdb
InJhbWRpc2siXSA9IHBhdGhfcmFtZGlzawogICAgIGVsc2U6CiAgICAgICAg
IGluaXRyZCA9IE5vbmUKLSAgICAgICAgaWYgbm90IG5vdF9yZWFsbHk6Cisg
ICAgICAgIGlmIG5vdCB1aWQgYW5kIG5vdCBub3RfcmVhbGx5OgogICAgICAg
ICAgICAgb3MudW5saW5rKHBhdGhfcmFtZGlzaykKIAogICAgIGFyZ3MgPSBO
b25lCi0tIAoyLjQyLjAKCg==

--=separator
Content-Type: application/octet-stream; name="xsa443/xsa443-4.15-10.patch"
Content-Disposition: attachment; filename="xsa443/xsa443-4.15-10.patch"
Content-Transfer-Encoding: base64

RnJvbSA1NzZlN2FhMDJhYjgzOGI2NzY4YjQ5OGYzMTBjNzBjYTQ5NTM3MjAy
IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBSb2dlciBQYXUgTW9u
bmUgPHJvZ2VyLnBhdUBjaXRyaXguY29tPgpEYXRlOiBNb24sIDI1IFNlcCAy
MDIzIDE0OjMwOjIwICswMjAwClN1YmplY3Q6IFtQQVRDSCAxMC8xMV0gbGli
eGw6IGFkZCBzdXBwb3J0IGZvciBydW5uaW5nIGJvb3Rsb2FkZXIgaW4gcmVz
dHJpY3RlZAogbW9kZQpNSU1FLVZlcnNpb246IDEuMApDb250ZW50LVR5cGU6
IHRleHQvcGxhaW47IGNoYXJzZXQ9VVRGLTgKQ29udGVudC1UcmFuc2Zlci1F
bmNvZGluZzogOGJpdAoKTXVjaCBsaWtlIHRoZSBkZXZpY2UgbW9kZWwgZGVw
cml2IG1vZGUsIGFkZCB0aGUgc2FtZSBraW5kIG9mIHN1cHBvcnQgZm9yIHRo
ZQpib290bG9hZGVyLiAgU3VjaCBmZWF0dXJlIGFsbG93cyBwYXNzaW5nIGEg
VUlEIGFzIGEgcGFyYW1ldGVyIGZvciB0aGUKYm9vdGxvYWRlciB0byBydW4g
YXMsIHRvZ2V0aGVyIHdpdGggdGhlIGJvb3Rsb2FkZXIgaXRzZWxmIHRha2lu
ZyB0aGUgbmVjZXNzYXJ5CmFjdGlvbnMgdG8gaXNvbGF0ZS4KCk5vdGUgdGhh
dCB0aGUgdXNlciB0byBydW4gdGhlIGJvb3Rsb2FkZXIgYXMgbXVzdCBoYXZl
IHRoZSByaWdodCBwZXJtaXNzaW9ucyB0bwphY2Nlc3MgdGhlIGd1ZXN0IGRp
c2sgaW1hZ2UgKGluIHJlYWQgbW9kZSBvbmx5KSwgYW5kIHRoYXQgdGhlIGJv
b3Rsb2FkZXIgd2lsbApiZSBydW4gaW4gbm9uLWludGVyYWN0aXZlIG1vZGUg
d2hlbiByZXN0cmljdGVkLgoKSWYgZW5hYmxlZCBib290bG9hZGVyIHJlc3Ry
aWN0IG1vZGUgd2lsbCBhdHRlbXB0IHRvIHJlLXVzZSB0aGUgdXNlcihzKSBm
cm9tIHRoZQpRRU1VIGRlcHJpdiBpbXBsZW1lbnRhdGlvbiBpZiBubyB1c2Vy
IGlzIHByb3ZpZGVkIG9uIHRoZSBjb25maWd1cmF0aW9uIGZpbGUgb3IKdGhl
IGVudmlyb25tZW50LiAgU2VlIGRvY3MvZmVhdHVyZXMvcWVtdS1kZXByaXZp
bGVnZS5wYW5kb2MgZm9yIG1vcmUKaW5mb3JtYXRpb24gYWJvdXQgaG93IHRv
IHNldHVwIHRob3NlIHVzZXJzLgoKQm9vdGxvYWRlciByZXN0cmljdCBtb2Rl
IGlzIG5vdCBlbmFibGVkIGJ5IGRlZmF1bHQgYXMgaXQgcmVxdWlyZXMgY2Vy
dGFpbgpzZXR1cCB0byBiZSBkb25lIGZpcnN0IChzZXR1cCBvZiB0aGUgdXNl
cihzKSB0byB1c2UgaW4gcmVzdHJpY3QgbW9kZSkuCgpUaGlzIGlzIHBhcnQg
b2YgWFNBLTQ0MyAvIENWRS0yMDIzLTM0MzI1CgpTaWduZWQtb2ZmLWJ5OiBS
b2dlciBQYXUgTW9ubsOpIDxyb2dlci5wYXVAY2l0cml4LmNvbT4KUmV2aWV3
ZWQtYnk6IEFudGhvbnkgUEVSQVJEIDxhbnRob255LnBlcmFyZEBjaXRyaXgu
Y29tPgotLS0KIGRvY3MvbWFuL3hsLjEucG9kLmluICAgICAgICAgICAgICAg
IHwgMzMgKysrKysrKysrKysKIHRvb2xzL2xpYnMvbGlnaHQvbGlieGxfYm9v
dGxvYWRlci5jIHwgODkgKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0K
IHRvb2xzL2xpYnMvbGlnaHQvbGlieGxfZG0uYyAgICAgICAgIHwgIDggKy0t
CiB0b29scy9saWJzL2xpZ2h0L2xpYnhsX2ludGVybmFsLmggICB8ICA4ICsr
KwogNCBmaWxlcyBjaGFuZ2VkLCAxMzEgaW5zZXJ0aW9ucygrKSwgNyBkZWxl
dGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kb2NzL21hbi94bC4xLnBvZC5pbiBi
L2RvY3MvbWFuL3hsLjEucG9kLmluCmluZGV4IDQ1ZTE0MzBhZWI3NC4uOTZl
NmZiMWMzMmEzIDEwMDY0NAotLS0gYS9kb2NzL21hbi94bC4xLnBvZC5pbgor
KysgYi9kb2NzL21hbi94bC4xLnBvZC5pbgpAQCAtMTk3Niw2ICsxOTc2LDM5
IEBAIGlnbm9yZWQ6CiAKID1iYWNrCiAKKz1oZWFkMSBFTlZJUk9OTUVOVCBW
QVJJQUJMRVMKKworVGhlIGZvbGxvd2luZyBlbnZpcm9ubWVudCB2YXJpYWJs
ZXMgc2hhbGwgYWZmZWN0IHRoZSBleGVjdXRpb24gb2YgeGw6CisKKz1vdmVy
IDQKKworPWl0ZW0gTElCWExfQk9PVExPQURFUl9SRVNUUklDVAorCitBdHRl
bXB0IHRvIHJlc3RyaWN0IHRoZSBib290bG9hZGVyIGFmdGVyIHN0YXJ0dXAs
IHRvIGxpbWl0IHRoZQorY29uc2VxdWVuY2VzIG9mIHNlY3VyaXR5IHZ1bG5l
cmFiaWxpdGllcyBkdWUgdG8gcGFyc2luZyBndWVzdAorb3duZWQgaW1hZ2Ug
ZmlsZXMuCisKK1NlZSBkb2NzL2ZlYXR1cmVzL3FlbXUtZGVwcml2aWxlZ2Uu
cGFuZG9jIGZvciBtb3JlIGluZm9ybWF0aW9uCitvbiBob3cgdG8gc2V0dXAg
dGhlIHVucHJpdmlsZWdlZCB1c2Vycy4KKworTm90ZSB0aGF0IHJ1bm5pbmcg
dGhlIGJvb3Rsb2FkZXIgaW4gcmVzdHJpY3RlZCBtb2RlIGFsc28gaW1wbGll
cyB1c2luZworbm9uLWludGVyYWN0aXZlIG1vZGUsIGFuZCB0aGUgZGlzayBp
bWFnZSBtdXN0IGJlIHJlYWRhYmxlIGJ5IHRoZQorcmVzdHJpY3RlZCB1c2Vy
LgorCitIYXZpbmcgdGhpcyB2YXJpYWJsZSBzZXQgaXMgZXF1aXZhbGVudCB0
byBlbmFibGluZyB0aGUgb3B0aW9uLCBldmVuIGlmIHRoZQordmFsdWUgaXMg
MC4KKworPWl0ZW0gTElCWExfQk9PVExPQURFUl9VU0VSCisKK1doZW4gdXNp
bmcgYm9vdGxvYWRlcl9yZXN0cmljdCwgcnVuIHRoZSBib290bG9hZGVyIGFz
IHRoaXMgdXNlci4gIElmCitub3Qgc2V0IHRoZSBkZWZhdWx0IFFFTVUgcmVz
dHJpY3QgdXNlcnMgd2lsbCBiZSB1c2VkLgorCitOT1RFOiBFYWNoIGRvbWFp
biBNVVNUIGhhdmUgYSBTRVBBUkFURSB1c2VybmFtZS4KKworU2VlIGRvY3Mv
ZmVhdHVyZXMvcWVtdS1kZXByaXZpbGVnZS5wYW5kb2MgZm9yIG1vcmUgaW5m
b3JtYXRpb24uCisKKz1iYWNrCisKID1oZWFkMSBTRUUgQUxTTwogCiBUaGUg
Zm9sbG93aW5nIG1hbiBwYWdlczoKZGlmZiAtLWdpdCBhL3Rvb2xzL2xpYnMv
bGlnaHQvbGlieGxfYm9vdGxvYWRlci5jIGIvdG9vbHMvbGlicy9saWdodC9s
aWJ4bF9ib290bG9hZGVyLmMKaW5kZXggMThlOWViZDcxNDhjLi45N2Q5YmY0
ZGRjMGEgMTAwNjQ0Ci0tLSBhL3Rvb2xzL2xpYnMvbGlnaHQvbGlieGxfYm9v
dGxvYWRlci5jCisrKyBiL3Rvb2xzL2xpYnMvbGlnaHQvbGlieGxfYm9vdGxv
YWRlci5jCkBAIC0xNCw2ICsxNCw3IEBACiAKICNpbmNsdWRlICJsaWJ4bF9v
c2RlcHMuaCIgLyogbXVzdCBjb21lIGJlZm9yZSBhbnkgb3RoZXIgaGVhZGVy
cyAqLwogCisjaW5jbHVkZSA8cHdkLmg+CiAjaW5jbHVkZSA8dGVybWlvcy5o
PgogI2lmZGVmIEhBVkVfVVRNUF9ICiAjaW5jbHVkZSA8dXRtcC5oPgpAQCAt
NDYsOCArNDcsNzEgQEAgc3RhdGljIHZvaWQgYm9vdGxvYWRlcl9hcmcobGli
eGxfX2Jvb3Rsb2FkZXJfc3RhdGUgKmJsLCBjb25zdCBjaGFyICphcmcpCiAg
ICAgYmwtPmFyZ3NbYmwtPm5hcmdzKytdID0gYXJnOwogfQogCi1zdGF0aWMg
dm9pZCBtYWtlX2Jvb3Rsb2FkZXJfYXJncyhsaWJ4bF9fZ2MgKmdjLCBsaWJ4
bF9fYm9vdGxvYWRlcl9zdGF0ZSAqYmwsCi0gICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBjb25zdCBjaGFyICpib290bG9hZGVyX3BhdGgpCitz
dGF0aWMgaW50IGJvb3Rsb2FkZXJfdWlkKGxpYnhsX19nYyAqZ2MsIGRvbWlk
X3QgZ3Vlc3RfZG9taWQsCisgICAgICAgICAgICAgICAgICAgICAgICAgIGNv
bnN0IGNoYXIgKnVzZXIsIHVpZF90ICppbnRlbmRlZF91aWQpCit7CisgICAg
c3RydWN0IHBhc3N3ZCAqdXNlcl9iYXNlLCB1c2VyX3B3YnVmOworICAgIGlu
dCByYzsKKworICAgIGlmICh1c2VyKSB7CisgICAgICAgIHJjID0gdXNlcmxv
b2t1cF9oZWxwZXJfZ2V0cHduYW0oZ2MsIHVzZXIsICZ1c2VyX3B3YnVmLCAm
dXNlcl9iYXNlKTsKKyAgICAgICAgaWYgKHJjKSByZXR1cm4gcmM7CisKKyAg
ICAgICAgaWYgKCF1c2VyX2Jhc2UpIHsKKyAgICAgICAgICAgIExPR0QoRVJS
T1IsIGd1ZXN0X2RvbWlkLCAiQ291bGRuJ3QgZmluZCB1c2VyICVzIiwgdXNl
cik7CisgICAgICAgICAgICByZXR1cm4gRVJST1JfSU5WQUw7CisgICAgICAg
IH0KKworICAgICAgICAqaW50ZW5kZWRfdWlkID0gdXNlcl9iYXNlLT5wd191
aWQ7CisgICAgICAgIHJldHVybiAwOworICAgIH0KKworICAgIC8qIFJlLXVz
ZSBRRU1VIHVzZXIgcmFuZ2UgZm9yIHRoZSBib290bG9hZGVyLiAqLworICAg
IHJjID0gdXNlcmxvb2t1cF9oZWxwZXJfZ2V0cHduYW0oZ2MsIExJQlhMX1FF
TVVfVVNFUl9SQU5HRV9CQVNFLAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgJnVzZXJfcHdidWYsICZ1c2VyX2Jhc2UpOworICAgIGlm
IChyYykgcmV0dXJuIHJjOworCisgICAgaWYgKHVzZXJfYmFzZSkgeworICAg
ICAgICBzdHJ1Y3QgcGFzc3dkICp1c2VyX2NsYXNoLCB1c2VyX2NsYXNoX3B3
YnVmOworICAgICAgICB1aWRfdCB0ZW1wX3VpZCA9IHVzZXJfYmFzZS0+cHdf
dWlkICsgZ3Vlc3RfZG9taWQ7CisKKyAgICAgICAgcmMgPSB1c2VybG9va3Vw
X2hlbHBlcl9nZXRwd3VpZChnYywgdGVtcF91aWQsICZ1c2VyX2NsYXNoX3B3
YnVmLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICZ1c2VyX2NsYXNoKTsKKyAgICAgICAgaWYgKHJjKSByZXR1cm4gcmM7CisK
KyAgICAgICAgaWYgKHVzZXJfY2xhc2gpIHsKKyAgICAgICAgICAgIExPR0Qo
RVJST1IsIGd1ZXN0X2RvbWlkLAorICAgICAgICAgICAgICAgICAid2FudGVk
IHRvIHVzZSB1aWQgJWxkICglcyArICVkKSBidXQgdGhhdCBpcyB1c2VyICVz
ICEiLAorICAgICAgICAgICAgICAgICAobG9uZyl0ZW1wX3VpZCwgTElCWExf
UUVNVV9VU0VSX1JBTkdFX0JBU0UsCisgICAgICAgICAgICAgICAgIGd1ZXN0
X2RvbWlkLCB1c2VyX2NsYXNoLT5wd19uYW1lKTsKKyAgICAgICAgICAgIHJl
dHVybiBFUlJPUl9JTlZBTDsKKyAgICAgICAgfQorCisgICAgICAgICppbnRl
bmRlZF91aWQgPSB0ZW1wX3VpZDsKKyAgICAgICAgcmV0dXJuIDA7CisgICAg
fQorCisgICAgcmMgPSB1c2VybG9va3VwX2hlbHBlcl9nZXRwd25hbShnYywg
TElCWExfUUVNVV9VU0VSX1NIQVJFRCwgJnVzZXJfcHdidWYsCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmdXNlcl9iYXNlKTsKKyAg
ICBpZiAocmMpIHJldHVybiByYzsKKworICAgIGlmICh1c2VyX2Jhc2UpIHsK
KyAgICAgICAgTE9HRChXQVJOLCBndWVzdF9kb21pZCwgIkNvdWxkIG5vdCBm
aW5kIHVzZXIgJXMsIGZhbGxpbmcgYmFjayB0byAlcyIsCisgICAgICAgICAg
ICAgTElCWExfUUVNVV9VU0VSX1JBTkdFX0JBU0UsIExJQlhMX1FFTVVfVVNF
Ul9TSEFSRUQpOworICAgICAgICAqaW50ZW5kZWRfdWlkID0gdXNlcl9iYXNl
LT5wd191aWQ7CisKKyAgICAgICAgcmV0dXJuIDA7CisgICAgfQorCisgICAg
TE9HRChFUlJPUiwgZ3Vlc3RfZG9taWQsCisgICAgIkNvdWxkIG5vdCBmaW5k
IHVzZXIgJXMgb3IgcmFuZ2UgYmFzZSBwc2V1ZG8tdXNlciAlcywgY2Fubm90
IHJlc3RyaWN0IiwKKyAgICAgICAgIExJQlhMX1FFTVVfVVNFUl9TSEFSRUQs
IExJQlhMX1FFTVVfVVNFUl9SQU5HRV9CQVNFKTsKKworICAgIHJldHVybiBF
UlJPUl9JTlZBTDsKK30KKworc3RhdGljIGludCBtYWtlX2Jvb3Rsb2FkZXJf
YXJncyhsaWJ4bF9fZ2MgKmdjLCBsaWJ4bF9fYm9vdGxvYWRlcl9zdGF0ZSAq
YmwsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNo
YXIgKmJvb3Rsb2FkZXJfcGF0aCkKIHsKICAgICBjb25zdCBsaWJ4bF9kb21h
aW5fYnVpbGRfaW5mbyAqaW5mbyA9IGJsLT5pbmZvOwogCkBAIC02NSw2ICsx
MjksMjMgQEAgc3RhdGljIHZvaWQgbWFrZV9ib290bG9hZGVyX2FyZ3MobGli
eGxfX2djICpnYywgbGlieGxfX2Jvb3Rsb2FkZXJfc3RhdGUgKmJsLAogICAg
ICAgICBBUkcoR0NTUFJJTlRGKCItLXJhbWRpc2s9JXMiLCBpbmZvLT5yYW1k
aXNrKSk7CiAgICAgaWYgKGluZm8tPmNtZGxpbmUgJiYgKmluZm8tPmNtZGxp
bmUgIT0gJ1wwJykKICAgICAgICAgQVJHKEdDU1BSSU5URigiLS1hcmdzPSVz
IiwgaW5mby0+Y21kbGluZSkpOworICAgIGlmIChnZXRlbnYoIkxJQlhMX0JP
T1RMT0FERVJfUkVTVFJJQ1QiKSB8fAorICAgICAgICBnZXRlbnYoIkxJQlhM
X0JPT1RMT0FERVJfVVNFUiIpKSB7CisgICAgICAgIHVpZF90IHVpZCA9IC0x
OworICAgICAgICBpbnQgcmMgPSBib290bG9hZGVyX3VpZChnYywgYmwtPmRv
bWlkLCBnZXRlbnYoIkxJQlhMX0JPT1RMT0FERVJfVVNFUiIpLAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAmdWlkKTsKKworICAgICAgICBp
ZiAocmMpIHJldHVybiByYzsKKworICAgICAgICBhc3NlcnQodWlkICE9IC0x
KTsKKyAgICAgICAgaWYgKCF1aWQpIHsKKyAgICAgICAgICAgIExPR0QoRVJS
T1IsIGJsLT5kb21pZCwgImJvb3Rsb2FkZXIgcmVzdHJpY3QgVUlEIGlzIDAg
KHJvb3QpISIpOworICAgICAgICAgICAgcmV0dXJuIEVSUk9SX0lOVkFMOwor
ICAgICAgICB9CisgICAgICAgIExPR0QoREVCVUcsIGJsLT5kb21pZCwgInVz
aW5nIHVpZCAlbGQiLCAobG9uZyl1aWQpOworICAgICAgICBBUkcoR0NTUFJJ
TlRGKCItLXJ1bmFzPSVsZCIsIChsb25nKXVpZCkpOworICAgICAgICBBUkco
Ii0tcXVpZXQiKTsKKyAgICB9CiAKICAgICBBUkcoR0NTUFJJTlRGKCItLW91
dHB1dD0lcyIsIGJsLT5vdXRwdXRwYXRoKSk7CiAgICAgQVJHKCItLW91dHB1
dC1mb3JtYXQ9c2ltcGxlMCIpOwpAQCAtODMsNiArMTY0LDcgQEAgc3RhdGlj
IHZvaWQgbWFrZV9ib290bG9hZGVyX2FyZ3MobGlieGxfX2djICpnYywgbGli
eGxfX2Jvb3Rsb2FkZXJfc3RhdGUgKmJsLAogICAgIC8qIFNlbnRpbmVsIGZv
ciBleGVjdiAqLwogICAgIEFSRyhOVUxMKTsKIAorICAgIHJldHVybiAwOwog
I3VuZGVmIEFSRwogfQogCkBAIC00NDcsNyArNTI5LDggQEAgc3RhdGljIHZv
aWQgYm9vdGxvYWRlcl9kaXNrX2F0dGFjaGVkX2NiKGxpYnhsX19lZ2MgKmVn
YywKICAgICAgICAgICAgIGJvb3Rsb2FkZXIgPSBibHRtcDsKICAgICB9CiAK
LSAgICBtYWtlX2Jvb3Rsb2FkZXJfYXJncyhnYywgYmwsIGJvb3Rsb2FkZXIp
OworICAgIHJjID0gbWFrZV9ib290bG9hZGVyX2FyZ3MoZ2MsIGJsLCBib290
bG9hZGVyKTsKKyAgICBpZiAocmMpIGdvdG8gb3V0OwogCiAgICAgYmwtPm9w
ZW5wdHkuYW8gPSBhbzsKICAgICBibC0+b3BlbnB0eS5jYWxsYmFjayA9IGJv
b3Rsb2FkZXJfZ290cHR5czsKZGlmZiAtLWdpdCBhL3Rvb2xzL2xpYnMvbGln
aHQvbGlieGxfZG0uYyBiL3Rvb2xzL2xpYnMvbGlnaHQvbGlieGxfZG0uYwpp
bmRleCBiODZlOGNjYzg1OGYuLjU5ZGU1YzFhZTIyZiAxMDA2NDQKLS0tIGEv
dG9vbHMvbGlicy9saWdodC9saWJ4bF9kbS5jCisrKyBiL3Rvb2xzL2xpYnMv
bGlnaHQvbGlieGxfZG0uYwpAQCAtODAsMTAgKzgwLDEwIEBAIHN0YXRpYyBp
bnQgbGlieGxfX2NyZWF0ZV9xZW11X2xvZ2ZpbGUobGlieGxfX2djICpnYywg
Y2hhciAqbmFtZSkKICAqICBPbiBlcnJvciwgcmV0dXJuIGEgbGlieGwtc3R5
bGUgZXJyb3IgY29kZS4KICAqLwogI2RlZmluZSBERUZJTkVfVVNFUkxPT0tV
UF9IRUxQRVIoTkFNRSxTUEVDX1RZUEUsU1RSVUNUTkFNRSxTWVNDT05GKSAg
ICAgXAotICAgIHN0YXRpYyBpbnQgdXNlcmxvb2t1cF9oZWxwZXJfIyNOQU1F
KGxpYnhsX19nYyAqZ2MsICAgICAgICAgICAgICAgICAgXAotICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNQRUNfVFlQRSBzcGVj
LCAgICAgICAgICAgICAgICAgXAotICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHN0cnVjdCBTVFJVQ1ROQU1FICpyZXN1bHRidWYs
ICAgXAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHN0cnVjdCBTVFJVQ1ROQU1FICoqb3V0KSAgICAgICAgXAorICAgIGludCB1
c2VybG9va3VwX2hlbHBlcl8jI05BTUUobGlieGxfX2djICpnYywgICAgICAg
ICAgICAgICAgICAgICAgICAgXAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgU1BFQ19UWVBFIHNwZWMsICAgICAgICAgICAgICAgICAgICAg
ICAgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RydWN0
IFNUUlVDVE5BTUUgKnJlc3VsdGJ1ZiwgICAgICAgICAgXAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgc3RydWN0IFNUUlVDVE5BTUUgKipv
dXQpICAgICAgICAgICAgICAgXAogICAgIHsgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgXAogICAgICAgICBzdHJ1Y3QgU1RSVUNUTkFNRSAqcmVzdWx0cCA9IE5V
TEw7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAogICAgICAgICBj
aGFyICpidWYgPSBOVUxMOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgXApkaWZmIC0tZ2l0IGEvdG9vbHMvbGlicy9s
aWdodC9saWJ4bF9pbnRlcm5hbC5oIGIvdG9vbHMvbGlicy9saWdodC9saWJ4
bF9pbnRlcm5hbC5oCmluZGV4IGNjMjdjNzJlY2YzMC4uODQxNWQxZmVlZDE2
IDEwMDY0NAotLS0gYS90b29scy9saWJzL2xpZ2h0L2xpYnhsX2ludGVybmFs
LmgKKysrIGIvdG9vbHMvbGlicy9saWdodC9saWJ4bF9pbnRlcm5hbC5oCkBA
IC00ODY0LDYgKzQ4NjQsMTQgQEAgc3RydWN0IGxpYnhsX19jcHVfcG9saWN5
IHsKICAgICBzdHJ1Y3QgeGNfbXNyICptc3I7CiB9OwogCitzdHJ1Y3QgcGFz
c3dkOworX2hpZGRlbiBpbnQgdXNlcmxvb2t1cF9oZWxwZXJfZ2V0cHduYW0o
bGlieGxfX2djKiwgY29uc3QgY2hhciAqdXNlciwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIHN0cnVjdCBwYXNzd2QgKnJlcywK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cnVj
dCBwYXNzd2QgKipvdXQpOworX2hpZGRlbiBpbnQgdXNlcmxvb2t1cF9oZWxw
ZXJfZ2V0cHd1aWQobGlieGxfX2djKiwgdWlkX3QgdWlkLAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RydWN0IHBhc3N3ZCAq
cmVzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
c3RydWN0IHBhc3N3ZCAqKm91dCk7CisKICNlbmRpZgogCiAvKgotLSAKMi40
Mi4wCgo=

--=separator
Content-Type: application/octet-stream; name="xsa443/xsa443-4.15-11.patch"
Content-Disposition: attachment; filename="xsa443/xsa443-4.15-11.patch"
Content-Transfer-Encoding: base64

RnJvbSAzNDIyMTg4NDc1MmJiODM1YmJkYWI2NjM3OGIzY2VjYmYxMzNlM2Qz
IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBSb2dlciBQYXUgTW9u
bmUgPHJvZ2VyLnBhdUBjaXRyaXguY29tPgpEYXRlOiBUaHUsIDI4IFNlcCAy
MDIzIDEyOjIyOjM1ICswMjAwClN1YmplY3Q6IFtQQVRDSCAxMS8xMV0gbGli
eGw6IGxpbWl0IGJvb3Rsb2FkZXIgZXhlY3V0aW9uIGluIHJlc3RyaWN0ZWQg
bW9kZQpNSU1FLVZlcnNpb246IDEuMApDb250ZW50LVR5cGU6IHRleHQvcGxh
aW47IGNoYXJzZXQ9VVRGLTgKQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzog
OGJpdAoKSW50cm9kdWNlIGEgdGltZW91dCBmb3IgYm9vdGxvYWRlciBleGVj
dXRpb24gd2hlbiBydW5uaW5nIGluIHJlc3RyaWN0ZWQgbW9kZS4KCkFsbG93
IG92ZXJ3cml0aW5nIHRoZSBkZWZhdWx0IHRpbWUgb3V0IHdpdGggYW4gZW52
aXJvbm1lbnQgcHJvdmlkZWQgdmFsdWUuCgpUaGlzIGlzIHBhcnQgb2YgWFNB
LTQ0MyAvIENWRS0yMDIzLTM0MzI1CgpTaWduZWQtb2ZmLWJ5OiBSb2dlciBQ
YXUgTW9ubsOpIDxyb2dlci5wYXVAY2l0cml4LmNvbT4KUmV2aWV3ZWQtYnk6
IEFudGhvbnkgUEVSQVJEIDxhbnRob255LnBlcmFyZEBjaXRyaXguY29tPgot
LS0KIGRvY3MvbWFuL3hsLjEucG9kLmluICAgICAgICAgICAgICAgIHwgIDgg
KysrKysrCiB0b29scy9saWJzL2xpZ2h0L2xpYnhsX2Jvb3Rsb2FkZXIuYyB8
IDQwICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrCiB0b29scy9saWJz
L2xpZ2h0L2xpYnhsX2ludGVybmFsLmggICB8ICAyICsrCiAzIGZpbGVzIGNo
YW5nZWQsIDUwIGluc2VydGlvbnMoKykKCmRpZmYgLS1naXQgYS9kb2NzL21h
bi94bC4xLnBvZC5pbiBiL2RvY3MvbWFuL3hsLjEucG9kLmluCmluZGV4IDk2
ZTZmYjFjMzJhMy4uOGYwNTY0NTBhNzMwIDEwMDY0NAotLS0gYS9kb2NzL21h
bi94bC4xLnBvZC5pbgorKysgYi9kb2NzL21hbi94bC4xLnBvZC5pbgpAQCAt
MjAwNyw2ICsyMDA3LDE0IEBAIE5PVEU6IEVhY2ggZG9tYWluIE1VU1QgaGF2
ZSBhIFNFUEFSQVRFIHVzZXJuYW1lLgogCiBTZWUgZG9jcy9mZWF0dXJlcy9x
ZW11LWRlcHJpdmlsZWdlLnBhbmRvYyBmb3IgbW9yZSBpbmZvcm1hdGlvbi4K
IAorPWl0ZW0gTElCWExfQk9PVExPQURFUl9USU1FT1VUCisKK1RpbWVvdXQg
aW4gc2Vjb25kcyBmb3IgYm9vdGxvYWRlciBleGVjdXRpb24gd2hlbiBydW5u
aW5nIGluIHJlc3RyaWN0ZWQgbW9kZS4KK090aGVyd2lzZSB0aGUgYnVpbGQg
dGltZSBkZWZhdWx0IGluIExJQlhMX0JPT1RMT0FERVJfVElNRU9VVCB3aWxs
IGJlIHVzZWQuCisKK0lmIGRlZmluZWQgdGhlIHZhbHVlIG11c3QgYmUgYW4g
dW5zaWduZWQgaW50ZWdlciBiZXR3ZWVuIDAgYW5kIElOVF9NQVgsCitvdGhl
cndpc2UgYmVoYXZpb3IgaXMgdW5kZWZpbmVkLiAgU2V0dGluZyB0byAwIGRp
c2FibGVzIHRoZSB0aW1lb3V0LgorCiA9YmFjawogCiA9aGVhZDEgU0VFIEFM
U08KZGlmZiAtLWdpdCBhL3Rvb2xzL2xpYnMvbGlnaHQvbGlieGxfYm9vdGxv
YWRlci5jIGIvdG9vbHMvbGlicy9saWdodC9saWJ4bF9ib290bG9hZGVyLmMK
aW5kZXggOTdkOWJmNGRkYzBhLi4zY2E2NDYzZTVmNjMgMTAwNjQ0Ci0tLSBh
L3Rvb2xzL2xpYnMvbGlnaHQvbGlieGxfYm9vdGxvYWRlci5jCisrKyBiL3Rv
b2xzL2xpYnMvbGlnaHQvbGlieGxfYm9vdGxvYWRlci5jCkBAIC0zNCw2ICsz
NCw4IEBAIHN0YXRpYyB2b2lkIGJvb3Rsb2FkZXJfa2V5c3Ryb2tlc19jb3B5
ZmFpbChsaWJ4bF9fZWdjICplZ2MsCiAgICAgICAgbGlieGxfX2RhdGFjb3Bp
ZXJfc3RhdGUgKmRjLCBpbnQgcmMsIGludCBvbndyaXRlLCBpbnQgZXJybm92
YWwpOwogc3RhdGljIHZvaWQgYm9vdGxvYWRlcl9kaXNwbGF5X2NvcHlmYWls
KGxpYnhsX19lZ2MgKmVnYywKICAgICAgICBsaWJ4bF9fZGF0YWNvcGllcl9z
dGF0ZSAqZGMsIGludCByYywgaW50IG9ud3JpdGUsIGludCBlcnJub3ZhbCk7
CitzdGF0aWMgdm9pZCBib290bG9hZGVyX3RpbWVvdXQobGlieGxfX2VnYyAq
ZWdjLCBsaWJ4bF9fZXZfdGltZSAqZXYsCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgY29uc3Qgc3RydWN0IHRpbWV2YWwgKnJlcXVlc3RlZF9h
YnMsIGludCByYyk7CiBzdGF0aWMgdm9pZCBib290bG9hZGVyX2RvbWFpbmRl
YXRoKGxpYnhsX19lZ2MqLCBsaWJ4bF9fZG9tYWluZGVhdGhjaGVjayAqZGMs
CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCByYyk7
CiBzdGF0aWMgdm9pZCBib290bG9hZGVyX2ZpbmlzaGVkKGxpYnhsX19lZ2Mg
KmVnYywgbGlieGxfX2V2X2NoaWxkICpjaGlsZCwKQEAgLTMwMSw2ICszMDMs
NyBAQCB2b2lkIGxpYnhsX19ib290bG9hZGVyX2luaXQobGlieGxfX2Jvb3Rs
b2FkZXJfc3RhdGUgKmJsKQogICAgIGJsLT5wdHlzWzBdLm1hc3RlciA9IGJs
LT5wdHlzWzBdLnNsYXZlID0gMDsKICAgICBibC0+cHR5c1sxXS5tYXN0ZXIg
PSBibC0+cHR5c1sxXS5zbGF2ZSA9IDA7CiAgICAgbGlieGxfX2V2X2NoaWxk
X2luaXQoJmJsLT5jaGlsZCk7CisgICAgbGlieGxfX2V2X3RpbWVfaW5pdCgm
YmwtPnRpbWUpOwogICAgIGxpYnhsX19kb21haW5kZWF0aGNoZWNrX2luaXQo
JmJsLT5kZWF0aGNoZWNrKTsKICAgICBibC0+a2V5c3Ryb2tlcy5hbyA9IGJs
LT5hbzsgIGxpYnhsX19kYXRhY29waWVyX2luaXQoJmJsLT5rZXlzdHJva2Vz
KTsKICAgICBibC0+ZGlzcGxheS5hbyA9IGJsLT5hbzsgICAgIGxpYnhsX19k
YXRhY29waWVyX2luaXQoJmJsLT5kaXNwbGF5KTsKQEAgLTMxOCw2ICszMjEs
NyBAQCBzdGF0aWMgdm9pZCBib290bG9hZGVyX2NsZWFudXAobGlieGxfX2Vn
YyAqZWdjLCBsaWJ4bF9fYm9vdGxvYWRlcl9zdGF0ZSAqYmwpCiAgICAgbGli
eGxfX2RvbWFpbmRlYXRoY2hlY2tfc3RvcChnYywmYmwtPmRlYXRoY2hlY2sp
OwogICAgIGxpYnhsX19kYXRhY29waWVyX2tpbGwoJmJsLT5rZXlzdHJva2Vz
KTsKICAgICBsaWJ4bF9fZGF0YWNvcGllcl9raWxsKCZibC0+ZGlzcGxheSk7
CisgICAgbGlieGxfX2V2X3RpbWVfZGVyZWdpc3RlcihnYywgJmJsLT50aW1l
KTsKICAgICBmb3IgKGk9MDsgaTwyOyBpKyspIHsKICAgICAgICAgbGlieGxf
X2NhcmVmZF9jbG9zZShibC0+cHR5c1tpXS5tYXN0ZXIpOwogICAgICAgICBs
aWJ4bF9fY2FyZWZkX2Nsb3NlKGJsLT5wdHlzW2ldLnNsYXZlKTsKQEAgLTM3
OSw2ICszODMsNyBAQCBzdGF0aWMgdm9pZCBib290bG9hZGVyX3N0b3AobGli
eGxfX2VnYyAqZWdjLAogCiAgICAgbGlieGxfX2RhdGFjb3BpZXJfa2lsbCgm
YmwtPmtleXN0cm9rZXMpOwogICAgIGxpYnhsX19kYXRhY29waWVyX2tpbGwo
JmJsLT5kaXNwbGF5KTsKKyAgICBsaWJ4bF9fZXZfdGltZV9kZXJlZ2lzdGVy
KGdjLCAmYmwtPnRpbWUpOwogICAgIGlmIChsaWJ4bF9fZXZfY2hpbGRfaW51
c2UoJmJsLT5jaGlsZCkpIHsKICAgICAgICAgciA9IGtpbGwoYmwtPmNoaWxk
LnBpZCwgU0lHVEVSTSk7CiAgICAgICAgIGlmIChyKSBMT0dFRChXQVJOLCBi
bC0+ZG9taWQsICIlc2ZhaWxlZCB0byBraWxsIGJvb3Rsb2FkZXIgWyVsdV0i
LApAQCAtNjQxLDYgKzY0NiwyNSBAQCBzdGF0aWMgdm9pZCBib290bG9hZGVy
X2dvdHB0eXMobGlieGxfX2VnYyAqZWdjLCBsaWJ4bF9fb3BlbnB0eV9zdGF0
ZSAqb3ApCiAKICAgICBzdHJ1Y3QgdGVybWlvcyB0ZXJtYXR0cjsKIAorICAg
IGlmIChnZXRlbnYoIkxJQlhMX0JPT1RMT0FERVJfUkVTVFJJQ1QiKSB8fAor
ICAgICAgICBnZXRlbnYoIkxJQlhMX0JPT1RMT0FERVJfVVNFUiIpKSB7Cisg
ICAgICAgIGNvbnN0IGNoYXIgKnRpbWVvdXRfZW52ID0gZ2V0ZW52KCJMSUJY
TF9CT09UTE9BREVSX1RJTUVPVVQiKTsKKyAgICAgICAgaW50IHRpbWVvdXQg
PSB0aW1lb3V0X2VudiA/IGF0b2kodGltZW91dF9lbnYpCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgOiBMSUJYTF9CT09UTE9BREVSX1RJ
TUVPVVQ7CisKKyAgICAgICAgaWYgKHRpbWVvdXQpIHsKKyAgICAgICAgICAg
IC8qIFNldCBleGVjdXRpb24gdGltZW91dCAqLworICAgICAgICAgICAgcmMg
PSBsaWJ4bF9fZXZfdGltZV9yZWdpc3Rlcl9yZWwoYW8sICZibC0+dGltZSwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Ym9vdGxvYWRlcl90aW1lb3V0LAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICB0aW1lb3V0ICogMTAwMCk7CisgICAgICAg
ICAgICBpZiAocmMpIHsKKyAgICAgICAgICAgICAgICBMT0dFRChFUlJPUiwg
YmwtPmRvbWlkLAorICAgICAgICAgICAgICAgICAgICAgICJ1bmFibGUgdG8g
cmVnaXN0ZXIgdGltZW91dCBmb3IgYm9vdGxvYWRlciBleGVjdXRpb24iKTsK
KyAgICAgICAgICAgICAgICBnb3RvIG91dDsKKyAgICAgICAgICAgIH0KKyAg
ICAgICAgfQorICAgIH0KKwogICAgIHBpZF90IHBpZCA9IGxpYnhsX19ldl9j
aGlsZF9mb3JrKGdjLCAmYmwtPmNoaWxkLCBib290bG9hZGVyX2ZpbmlzaGVk
KTsKICAgICBpZiAocGlkID09IC0xKSB7CiAgICAgICAgIHJjID0gRVJST1Jf
RkFJTDsKQEAgLTcwNiw2ICs3MzAsMjEgQEAgc3RhdGljIHZvaWQgYm9vdGxv
YWRlcl9kaXNwbGF5X2NvcHlmYWlsKGxpYnhsX19lZ2MgKmVnYywKICAgICBs
aWJ4bF9fYm9vdGxvYWRlcl9zdGF0ZSAqYmwgPSBDT05UQUlORVJfT0YoZGMs
ICpibCwgZGlzcGxheSk7CiAgICAgYm9vdGxvYWRlcl9jb3B5ZmFpbChlZ2Ms
ICJib290bG9hZGVyIG91dHB1dCIsIGJsLCAxLCByYyxvbndyaXRlLGVycm5v
dmFsKTsKIH0KK3N0YXRpYyB2b2lkIGJvb3Rsb2FkZXJfdGltZW91dChsaWJ4
bF9fZWdjICplZ2MsIGxpYnhsX19ldl90aW1lICpldiwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBjb25zdCBzdHJ1Y3QgdGltZXZhbCAqcmVx
dWVzdGVkX2FicywgaW50IHJjKQoreworICAgIGxpYnhsX19ib290bG9hZGVy
X3N0YXRlICpibCA9IENPTlRBSU5FUl9PRihldiwgKmJsLCB0aW1lKTsKKyAg
ICBTVEFURV9BT19HQyhibC0+YW8pOworCisgICAgbGlieGxfX2V2X3RpbWVf
ZGVyZWdpc3RlcihnYywgJmJsLT50aW1lKTsKKworICAgIGFzc2VydChsaWJ4
bF9fZXZfY2hpbGRfaW51c2UoJmJsLT5jaGlsZCkpOworICAgIExPR0QoRVJS
T1IsIGJsLT5kb21pZCwgImtpbGxpbmcgYm9vdGxvYWRlciBiZWNhdXNlIG9m
IHRpbWVvdXQiKTsKKworICAgIGxpYnhsX19ldl9jaGlsZF9raWxsX2RlcmVn
aXN0ZXIoYW8sICZibC0+Y2hpbGQsIFNJR0tJTEwpOworCisgICAgYm9vdGxv
YWRlcl9jYWxsYmFjayhlZ2MsIGJsLCByYyk7Cit9CiAKIHN0YXRpYyB2b2lk
IGJvb3Rsb2FkZXJfZG9tYWluZGVhdGgobGlieGxfX2VnYyAqZWdjLAogICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaWJ4bF9fZG9tYWlu
ZGVhdGhjaGVjayAqZGMsCkBAIC03MjIsNiArNzYxLDcgQEAgc3RhdGljIHZv
aWQgYm9vdGxvYWRlcl9maW5pc2hlZChsaWJ4bF9fZWdjICplZ2MsIGxpYnhs
X19ldl9jaGlsZCAqY2hpbGQsCiAgICAgU1RBVEVfQU9fR0MoYmwtPmFvKTsK
ICAgICBpbnQgcmM7CiAKKyAgICBsaWJ4bF9fZXZfdGltZV9kZXJlZ2lzdGVy
KGdjLCAmYmwtPnRpbWUpOwogICAgIGxpYnhsX19kYXRhY29waWVyX2tpbGwo
JmJsLT5rZXlzdHJva2VzKTsKICAgICBsaWJ4bF9fZGF0YWNvcGllcl9raWxs
KCZibC0+ZGlzcGxheSk7CiAKZGlmZiAtLWdpdCBhL3Rvb2xzL2xpYnMvbGln
aHQvbGlieGxfaW50ZXJuYWwuaCBiL3Rvb2xzL2xpYnMvbGlnaHQvbGlieGxf
aW50ZXJuYWwuaAppbmRleCA4NDE1ZDFmZWVkMTYuLmE5NTgxMjg5ZjQ2MiAx
MDA2NDQKLS0tIGEvdG9vbHMvbGlicy9saWdodC9saWJ4bF9pbnRlcm5hbC5o
CisrKyBiL3Rvb2xzL2xpYnMvbGlnaHQvbGlieGxfaW50ZXJuYWwuaApAQCAt
MTAzLDYgKzEwMyw3IEBACiAjZGVmaW5lIExJQlhMX1FNUF9DTURfVElNRU9V
VCAxMAogI2RlZmluZSBMSUJYTF9TVFVCRE9NX1NUQVJUX1RJTUVPVVQgMzAK
ICNkZWZpbmUgTElCWExfUUVNVV9CT0RHRV9USU1FT1VUIDIKKyNkZWZpbmUg
TElCWExfQk9PVExPQURFUl9USU1FT1VUIDEyMAogI2RlZmluZSBMSUJYTF9Y
RU5DT05TT0xFX0xJTUlUIDEwNDg1NzYKICNkZWZpbmUgTElCWExfWEVOQ09O
U09MRV9QUk9UT0NPTCAidnQxMDAiCiAjZGVmaW5lIExJQlhMX01BWE1FTV9D
T05TVEFOVCAxMDI0CkBAIC0zNzM4LDYgKzM3MzksNyBAQCBzdHJ1Y3QgbGli
eGxfX2Jvb3Rsb2FkZXJfc3RhdGUgewogICAgIGxpYnhsX19vcGVucHR5X3N0
YXRlIG9wZW5wdHk7CiAgICAgbGlieGxfX29wZW5wdHlfcmVzdWx0IHB0eXNb
Ml07ICAvKiBbMF0gaXMgZm9yIGJvb3Rsb2FkZXIgKi8KICAgICBsaWJ4bF9f
ZXZfY2hpbGQgY2hpbGQ7CisgICAgbGlieGxfX2V2X3RpbWUgdGltZTsKICAg
ICBsaWJ4bF9fZG9tYWluZGVhdGhjaGVjayBkZWF0aGNoZWNrOwogICAgIGlu
dCBuYXJncywgYXJnc3NwYWNlOwogICAgIGNvbnN0IGNoYXIgKiphcmdzOwot
LSAKMi40Mi4wCgo=

--=separator
Content-Type: application/octet-stream; name="xsa443/xsa443-4.16-01.patch"
Content-Disposition: attachment; filename="xsa443/xsa443-4.16-01.patch"
Content-Transfer-Encoding: base64

RnJvbSBjNGQ1OTdmNjM4MzJhNTNiYmIxYjgyNmFmN2E0Njc3ZTQwZTlmZGVk
IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBBbGVqYW5kcm8gVmFs
bGVqbyA8YWxlamFuZHJvLnZhbGxlam9AY2xvdWQuY29tPgpEYXRlOiBUaHUs
IDE0IFNlcCAyMDIzIDEzOjIyOjUwICswMTAwClN1YmplY3Q6IFtQQVRDSCAw
MS8xMV0gbGliZnNpbWFnZS94ZnM6IFJlbW92ZSBkZWFkIGNvZGUKCnhmc19p
bmZvLmFnbm9sb2cgKGFuZCByZWxhdGVkIGNvZGUpIGFuZCBYRlNfSU5PX0FH
Qk5PX0JJVFMgYXJlIGRlYWQgY29kZQp0aGF0IHNlcnZlIG5vIHB1cnBvc2Uu
CgpUaGlzIGlzIHBhcnQgb2YgWFNBLTQ0MyAvIENWRS0yMDIzLTM0MzI1CgpT
aWduZWQtb2ZmLWJ5OiBBbGVqYW5kcm8gVmFsbGVqbyA8YWxlamFuZHJvLnZh
bGxlam9AY2xvdWQuY29tPgpSZXZpZXdlZC1ieTogSmFuIEJldWxpY2ggPGpi
ZXVsaWNoQHN1c2UuY29tPgotLS0KIHRvb2xzL2xpYmZzaW1hZ2UveGZzL2Zz
eXNfeGZzLmMgfCAxOCAtLS0tLS0tLS0tLS0tLS0tLS0KIDEgZmlsZSBjaGFu
Z2VkLCAxOCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS90b29scy9saWJm
c2ltYWdlL3hmcy9mc3lzX3hmcy5jIGIvdG9vbHMvbGliZnNpbWFnZS94ZnMv
ZnN5c194ZnMuYwppbmRleCBkNzM1YTg4ZTU1ZjMuLjI4MDA2OTlmNTk4NSAx
MDA2NDQKLS0tIGEvdG9vbHMvbGliZnNpbWFnZS94ZnMvZnN5c194ZnMuYwor
KysgYi90b29scy9saWJmc2ltYWdlL3hmcy9mc3lzX3hmcy5jCkBAIC0zNyw3
ICszNyw2IEBAIHN0cnVjdCB4ZnNfaW5mbyB7CiAJaW50IGJsa2xvZzsKIAlp
bnQgaW5vcGJsb2c7CiAJaW50IGFnYmxrbG9nOwotCWludCBhZ25vbG9nOwog
CXVuc2lnbmVkIGludCBuZXh0ZW50czsKIAl4ZnNfZGFkZHJfdCBuZXh0Owog
CXhmc19kYWRkcl90IGRhZGRyOwpAQCAtNjUsOSArNjQsNyBAQCBzdGF0aWMg
c3RydWN0IHhmc19pbmZvIHhmczsKIAogI2RlZmluZQlYRlNfSU5PX01BU0so
aykJCSgoeGZzX3VpbnQzMl90KSgoMVVMTCA8PCAoaykpIC0gMSkpCiAjZGVm
aW5lCVhGU19JTk9fT0ZGU0VUX0JJVFMJeGZzLmlub3BibG9nCi0jZGVmaW5l
CVhGU19JTk9fQUdCTk9fQklUUwl4ZnMuYWdibGtsb2cKICNkZWZpbmUJWEZT
X0lOT19BR0lOT19CSVRTCSh4ZnMuYWdibGtsb2cgKyB4ZnMuaW5vcGJsb2cp
Ci0jZGVmaW5lCVhGU19JTk9fQUdOT19CSVRTCXhmcy5hZ25vbG9nCiAKIHN0
YXRpYyBpbmxpbmUgeGZzX2FnYmxvY2tfdAogYWdpbm8yYWdibm8gKHhmc19h
Z2lub190IGFnaW5vKQpAQCAtMTQ5LDIwICsxNDYsNiBAQCB4dF9sZW4gKHhm
c19ibWJ0X3JlY18zMl90ICpyKQogCXJldHVybiBsZTMyKHItPmwzKSAmIG1h
c2szMmxvKDIxKTsKIH0KIAotc3RhdGljIGlubGluZSBpbnQKLXhmc19oaWdo
Yml0MzIoeGZzX3VpbnQzMl90IHYpCi17Ci0JaW50IGk7Ci0KLQlpZiAoLS12
KSB7Ci0JCWZvciAoaSA9IDA7IGkgPCAzMTsgaSsrLCB2ID4+PSAxKSB7Ci0J
CQlpZiAodiA9PSAwKQotCQkJCXJldHVybiBpOwotCQl9Ci0JfQotCXJldHVy
biAwOwotfQotCiBzdGF0aWMgaW50CiBpc2lueHQgKHhmc19maWxlb2ZmX3Qg
a2V5LCB4ZnNfZmlsZW9mZl90IG9mZnNldCwgeGZzX2ZpbGJsa3NfdCBsZW4p
CiB7CkBAIC00NzIsNyArNDU1LDYgQEAgeGZzX21vdW50IChmc2lfZmlsZV90
ICpmZmksIGNvbnN0IGNoYXIgKm9wdGlvbnMpCiAKIAl4ZnMuaW5vcGJsb2cg
PSBzdXBlci5zYl9pbm9wYmxvZzsKIAl4ZnMuYWdibGtsb2cgPSBzdXBlci5z
Yl9hZ2Jsa2xvZzsKLQl4ZnMuYWdub2xvZyA9IHhmc19oaWdoYml0MzIgKGxl
MzIoc3VwZXIuc2JfYWdjb3VudCkpOwogCiAJeGZzLmJ0bm9kZV9wdHIwX29m
ZiA9CiAJCSgoeGZzLmJzaXplIC0gc2l6ZW9mKHhmc19idHJlZV9ibG9ja190
KSkgLwotLSAKMi40Mi4wCgo=

--=separator
Content-Type: application/octet-stream; name="xsa443/xsa443-4.16-02.patch"
Content-Disposition: attachment; filename="xsa443/xsa443-4.16-02.patch"
Content-Transfer-Encoding: base64

RnJvbSBmNzViMGE3MGRhMzkyNjcyZmI3ZDlmZWVkMmE5ZTk1MTVkNzRkZjJj
IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBBbGVqYW5kcm8gVmFs
bGVqbyA8YWxlamFuZHJvLnZhbGxlam9AY2xvdWQuY29tPgpEYXRlOiBUaHUs
IDE0IFNlcCAyMDIzIDEzOjIyOjUxICswMTAwClN1YmplY3Q6IFtQQVRDSCAw
Mi8xMV0gbGliZnNpbWFnZS94ZnM6IEFtZW5kIG1hc2szMmxvKCkgdG8gYWxs
b3cgdGhlIHZhbHVlIDMyCgphZ2Jsa2xvZyBjb3VsZCBwbGF1c2libHkgYmUg
MzIsIGJ1dCB0aGF0IHdvdWxkIG92ZXJmbG93IHRoaXMgc2hpZnQuClBlcmZv
cm0gdGhlIHNoaWZ0IGFzIFVMTCBhbmQgY2FzdCB0byB1MzIgYXQgdGhlIGVu
ZCBpbnN0ZWFkLgoKVGhpcyBpcyBwYXJ0IG9mIFhTQS00NDMgLyBDVkUtMjAy
My0zNDMyNQoKU2lnbmVkLW9mZi1ieTogQWxlamFuZHJvIFZhbGxlam8gPGFs
ZWphbmRyby52YWxsZWpvQGNsb3VkLmNvbT4KQWNrZWQtYnk6IEphbiBCZXVs
aWNoIDxqYmV1bGljaEBzdXNlLmNvbT4KLS0tCiB0b29scy9saWJmc2ltYWdl
L3hmcy9mc3lzX3hmcy5jIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5z
ZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvdG9vbHMv
bGliZnNpbWFnZS94ZnMvZnN5c194ZnMuYyBiL3Rvb2xzL2xpYmZzaW1hZ2Uv
eGZzL2ZzeXNfeGZzLmMKaW5kZXggMjgwMDY5OWY1OTg1Li40NzIwYmI0NTA1
YzggMTAwNjQ0Ci0tLSBhL3Rvb2xzL2xpYmZzaW1hZ2UveGZzL2ZzeXNfeGZz
LmMKKysrIGIvdG9vbHMvbGliZnNpbWFnZS94ZnMvZnN5c194ZnMuYwpAQCAt
NjAsNyArNjAsNyBAQCBzdGF0aWMgc3RydWN0IHhmc19pbmZvIHhmczsKICNk
ZWZpbmUgaW5vZGUJCSgoeGZzX2Rpbm9kZV90ICopKChjaGFyICopRlNZU19C
VUYgKyA4MTkyKSkKICNkZWZpbmUgaWNvcmUJCShpbm9kZS0+ZGlfY29yZSkK
IAotI2RlZmluZQltYXNrMzJsbyhuKQkoKCh4ZnNfdWludDMyX3QpMSA8PCAo
bikpIC0gMSkKKyNkZWZpbmUJbWFzazMybG8obikJKCh4ZnNfdWludDMyX3Qp
KCgxdWxsIDw8IChuKSkgLSAxKSkKIAogI2RlZmluZQlYRlNfSU5PX01BU0so
aykJCSgoeGZzX3VpbnQzMl90KSgoMVVMTCA8PCAoaykpIC0gMSkpCiAjZGVm
aW5lCVhGU19JTk9fT0ZGU0VUX0JJVFMJeGZzLmlub3BibG9nCi0tIAoyLjQy
LjAKCg==

--=separator
Content-Type: application/octet-stream; name="xsa443/xsa443-4.16-03.patch"
Content-Disposition: attachment; filename="xsa443/xsa443-4.16-03.patch"
Content-Transfer-Encoding: base64

RnJvbSAyNWZhZTIzYjMyZWU0ZDk5MGFlMTEzNjhlZTIxZTI4ZTY2ZGJmYTI1
IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBBbGVqYW5kcm8gVmFs
bGVqbyA8YWxlamFuZHJvLnZhbGxlam9AY2xvdWQuY29tPgpEYXRlOiBUaHUs
IDE0IFNlcCAyMDIzIDEzOjIyOjUyICswMTAwClN1YmplY3Q6IFtQQVRDSCAw
My8xMV0gbGliZnNpbWFnZS94ZnM6IFNhbml0eS1jaGVjayB0aGUgc3VwZXJi
bG9jayBkdXJpbmcKIG1vdW50cwoKU2FuaXR5LWNoZWNrIHRoZSBYRlMgc3Vw
ZXJibG9jayBmb3Igd2VsbGZvcm1lZG5lc3MgYXQgdGhlIG1vdW50IGhhbmRs
ZXIuClRoaXMgZm9yY2VzIHB5Z3J1YiB0byBhYm9ydCBwYXJzaW5nIGEgcG90
ZW50aWFsbHkgbWFsZm9ybWVkIGZpbGVzeXN0ZW0gYW5kCmVuc3VyZXMgdGhl
IGludmFyaWFudHMgYXNzdW1lZCB0aHJvdWdob3V0IHRoZSByZXN0IG9mIHRo
ZSBjb2RlIGhvbGQuCgpBbHNvLCBkZXJpdmUgcGFyYW1ldGVycyBmcm9tIHBy
ZXZpb3VzbHkgc2FuaXRpemVkIHBhcmFtZXRlcnMgd2hlcmUgcG9zc2libGUK
KHJhdGhlciB0aGFuIHJlYWRpbmcgdGhlbSBvZmYgdGhlIHN1cGVyYmxvY2sp
CgpUaGUgY29kZSBkb2Vzbid0IHRyeSB0byBhdm9pZCBvdmVyZmxvd2luZyB0
aGUgZW5kIG9mIHRoZSBkaXNrLCBiZWNhdXNlCnRoYXQncyBhbiB1bmxpa2Vs
eSBhbmQgYmVuaWduIGVycm9yLiBQYXJhbWV0ZXJzIHVzZWQgaW4gY2FsY3Vs
YXRpb25zIG9mCnhmc19kYWRkcl90IChsaWtlIHRoZSByb290IGlub2RlIGlu
ZGV4KSBhcmVuJ3QgaW4gY3JpdGljYWwgbmVlZCBvZiBiZWluZwpzYW5pdGl6
ZWQuCgpUaGUgc2FuaXRpemF0aW9uIG9mIGFnYmxrbG9nIGlzIGJhc2ljYWxs
eSBjaGVja2luZyB0aGF0IG5vIG9idmlvdXMKb3ZlcmZsb3dzIGhhcHBlbiBv
biBhZ2Jsa2xvZywgYW5kIHRoZW4gZW5zdXJpbmcgYWdibG9ja3MgaXMgY29u
dGFpbmVkIGluCnRoZSByYW5nZSAoMl4oc2JfYWdibGtsb2ctMSksIDJec2Jf
YWdibGtsb2ddLgoKVGhpcyBpcyBwYXJ0IG9mIFhTQS00NDMgLyBDVkUtMjAy
My0zNDMyNQoKUmVwb3J0ZWQtYnk6IEZlcmRpbmFuZCBOw7Zsc2NoZXIgPG5v
ZWxzY2hlckBnb29nbGUuY29tPgpTaWduZWQtb2ZmLWJ5OiBBbGVqYW5kcm8g
VmFsbGVqbyA8YWxlamFuZHJvLnZhbGxlam9AY2xvdWQuY29tPgpSZXZpZXdl
ZC1ieTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgotLS0KIHRv
b2xzL2xpYmZzaW1hZ2UveGZzL2ZzeXNfeGZzLmMgfCA0OCArKysrKysrKysr
KysrKysrKysrKysrKysrKy0tLS0tLS0KIHRvb2xzL2xpYmZzaW1hZ2UveGZz
L3hmcy5oICAgICAgfCAxMiArKysrKysrKysKIDIgZmlsZXMgY2hhbmdlZCwg
NTAgaW5zZXJ0aW9ucygrKSwgMTAgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0
IGEvdG9vbHMvbGliZnNpbWFnZS94ZnMvZnN5c194ZnMuYyBiL3Rvb2xzL2xp
YmZzaW1hZ2UveGZzL2ZzeXNfeGZzLmMKaW5kZXggNDcyMGJiNDUwNWM4Li5l
NGViN2UxZWUyNmYgMTAwNjQ0Ci0tLSBhL3Rvb2xzL2xpYmZzaW1hZ2UveGZz
L2ZzeXNfeGZzLmMKKysrIGIvdG9vbHMvbGliZnNpbWFnZS94ZnMvZnN5c194
ZnMuYwpAQCAtMTcsNiArMTcsNyBAQAogICogIGFsb25nIHdpdGggdGhpcyBw
cm9ncmFtOyBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vu
c2VzLz4uCiAgKi8KIAorI2luY2x1ZGUgPHN0ZGJvb2wuaD4KICNpbmNsdWRl
IDx4ZW5mc2ltYWdlX2dydWIuaD4KICNpbmNsdWRlICJ4ZnMuaCIKIApAQCAt
NDMzLDI5ICs0MzQsNTYgQEAgZmlyc3RfZGVudHJ5IChmc2lfZmlsZV90ICpm
ZmksIHhmc19pbm9fdCAqaW5vKQogCXJldHVybiBuZXh0X2RlbnRyeSAoZmZp
LCBpbm8pOwogfQogCitzdGF0aWMgYm9vbAoreGZzX3NiX2lzX2ludmFsaWQg
KGNvbnN0IHhmc19zYl90ICpzdXBlcikKK3sKKwlyZXR1cm4gKGxlMzIoc3Vw
ZXItPnNiX21hZ2ljbnVtKSAhPSBYRlNfU0JfTUFHSUMpCisJICAgIHx8ICgo
bGUxNihzdXBlci0+c2JfdmVyc2lvbm51bSkgJiBYRlNfU0JfVkVSU0lPTl9O
VU1CSVRTKSAhPQorCSAgICAgICAgWEZTX1NCX1ZFUlNJT05fNCkKKwkgICAg
fHwgKHN1cGVyLT5zYl9pbm9kZWxvZyA8IFhGU19TQl9JTk9ERUxPR19NSU4p
CisJICAgIHx8IChzdXBlci0+c2JfaW5vZGVsb2cgPiBYRlNfU0JfSU5PREVM
T0dfTUFYKQorCSAgICB8fCAoc3VwZXItPnNiX2Jsb2NrbG9nIDwgWEZTX1NC
X0JMT0NLTE9HX01JTikKKwkgICAgfHwgKHN1cGVyLT5zYl9ibG9ja2xvZyA+
IFhGU19TQl9CTE9DS0xPR19NQVgpCisJICAgIHx8IChzdXBlci0+c2JfYmxv
Y2tsb2cgPCBzdXBlci0+c2JfaW5vZGVsb2cpCisJICAgIHx8IChzdXBlci0+
c2JfYWdibGtsb2cgPiBYRlNfU0JfQUdCTEtMT0dfTUFYKQorCSAgICB8fCAo
KDF1bGwgPDwgc3VwZXItPnNiX2FnYmxrbG9nKSA8IGxlMzIoc3VwZXItPnNi
X2FnYmxvY2tzKSkKKwkgICAgfHwgKCgoMXVsbCA8PCBzdXBlci0+c2JfYWdi
bGtsb2cpID4+IDEpID49CisJICAgICAgICBsZTMyKHN1cGVyLT5zYl9hZ2Js
b2NrcykpCisJICAgIHx8ICgoc3VwZXItPnNiX2Jsb2NrbG9nICsgc3VwZXIt
PnNiX2RpcmJsa2xvZykgPj0KKwkgICAgICAgIFhGU19TQl9ESVJCTEtfTlVN
QklUUyk7Cit9CisKIHN0YXRpYyBpbnQKIHhmc19tb3VudCAoZnNpX2ZpbGVf
dCAqZmZpLCBjb25zdCBjaGFyICpvcHRpb25zKQogewogCXhmc19zYl90IHN1
cGVyOwogCiAJaWYgKCFkZXZyZWFkIChmZmksIDAsIDAsIHNpemVvZihzdXBl
ciksIChjaGFyICopJnN1cGVyKQotCSAgICB8fCAobGUzMihzdXBlci5zYl9t
YWdpY251bSkgIT0gWEZTX1NCX01BR0lDKQotCSAgICB8fCAoKGxlMTYoc3Vw
ZXIuc2JfdmVyc2lvbm51bSkgCi0JCSYgWEZTX1NCX1ZFUlNJT05fTlVNQklU
UykgIT0gWEZTX1NCX1ZFUlNJT05fNCkgKSB7CisJICAgIHx8IHhmc19zYl9p
c19pbnZhbGlkKCZzdXBlcikpIHsKIAkJcmV0dXJuIDA7CiAJfQogCi0JeGZz
LmJzaXplID0gbGUzMiAoc3VwZXIuc2JfYmxvY2tzaXplKTsKLQl4ZnMuYmxr
bG9nID0gc3VwZXIuc2JfYmxvY2tsb2c7Ci0JeGZzLmJkbG9nID0geGZzLmJs
a2xvZyAtIFNFQ1RPUl9CSVRTOworCS8qCisJICogTm90IHNhbml0aXplZC4g
SXQncyBleGNsdXNpdmVseSB1c2VkIHRvIGdlbmVyYXRlIGRpc2sgYWRkcmVz
c2VzLAorCSAqIHNvIGl0J3Mgbm90IGltcG9ydGFudCBmcm9tIGEgc2VjdXJp
dHkgc3RhbmRwb2ludC4KKwkgKi8KIAl4ZnMucm9vdGlubyA9IGxlNjQgKHN1
cGVyLnNiX3Jvb3Rpbm8pOwotCXhmcy5pc2l6ZSA9IGxlMTYgKHN1cGVyLnNi
X2lub2Rlc2l6ZSk7Ci0JeGZzLmFnYmxvY2tzID0gbGUzMiAoc3VwZXIuc2Jf
YWdibG9ja3MpOwotCXhmcy5kaXJic2l6ZSA9IHhmcy5ic2l6ZSA8PCBzdXBl
ci5zYl9kaXJibGtsb2c7CiAKLQl4ZnMuaW5vcGJsb2cgPSBzdXBlci5zYl9p
bm9wYmxvZzsKKwkvKgorCSAqIFNhbml0aXplZCB0byBiZSBjb25zaXN0ZW50
IHdpdGggZWFjaCBvdGhlciwgb25seSB1c2VkIHRvCisJICogZ2VuZXJhdGUg
ZGlzayBhZGRyZXNzZXMsIHNvIGl0J3Mgc2FmZQorCSAqLworCXhmcy5hZ2Js
b2NrcyA9IGxlMzIgKHN1cGVyLnNiX2FnYmxvY2tzKTsKIAl4ZnMuYWdibGts
b2cgPSBzdXBlci5zYl9hZ2Jsa2xvZzsKIAorCS8qIERlcml2ZWQgZnJvbSBz
YW5pdGl6ZWQgcGFyYW1ldGVycyAqLworCXhmcy5ic2l6ZSA9IDEgPDwgc3Vw
ZXIuc2JfYmxvY2tsb2c7CisJeGZzLmJsa2xvZyA9IHN1cGVyLnNiX2Jsb2Nr
bG9nOworCXhmcy5iZGxvZyA9IHN1cGVyLnNiX2Jsb2NrbG9nIC0gU0VDVE9S
X0JJVFM7CisJeGZzLmlzaXplID0gMSA8PCBzdXBlci5zYl9pbm9kZWxvZzsK
Kwl4ZnMuZGlyYnNpemUgPSAxIDw8IChzdXBlci5zYl9ibG9ja2xvZyArIHN1
cGVyLnNiX2RpcmJsa2xvZyk7CisJeGZzLmlub3BibG9nID0gc3VwZXIuc2Jf
YmxvY2tsb2cgLSBzdXBlci5zYl9pbm9kZWxvZzsKKwogCXhmcy5idG5vZGVf
cHRyMF9vZmYgPQogCQkoKHhmcy5ic2l6ZSAtIHNpemVvZih4ZnNfYnRyZWVf
YmxvY2tfdCkpIC8KIAkJKHNpemVvZiAoeGZzX2JtYnRfa2V5X3QpICsgc2l6
ZW9mICh4ZnNfYm1idF9wdHJfdCkpKQpkaWZmIC0tZ2l0IGEvdG9vbHMvbGli
ZnNpbWFnZS94ZnMveGZzLmggYi90b29scy9saWJmc2ltYWdlL3hmcy94ZnMu
aAppbmRleCA0MDY5OTI4MWU0NGQuLmI4N2UzN2QzZDdlOSAxMDA2NDQKLS0t
IGEvdG9vbHMvbGliZnNpbWFnZS94ZnMveGZzLmgKKysrIGIvdG9vbHMvbGli
ZnNpbWFnZS94ZnMveGZzLmgKQEAgLTEzNCw2ICsxMzQsMTggQEAgdHlwZWRl
ZiBzdHJ1Y3QgeGZzX3NiCiAgICAgICAgIHhmc191aW50OF90ICAgICAgIHNi
X2R1bW15WzddOyAgICAvKiBwYWRkaW5nICovCiB9IHhmc19zYl90OwogCisv
KiBCb3VuZCB0YWtlbiBmcm9tIHhmcy5jIGluIEdSVUIyLiBJdCBkb2Vzbid0
IGV4aXN0IGluIHRoZSBzcGVjICovCisjZGVmaW5lCVhGU19TQl9ESVJCTEtf
TlVNQklUUwkyNworLyogSW1wbGllZCBieSB0aGUgWEZTIHNwZWNpZmljYXRp
b24uIFRoZSBtaW5pbXVtIGJsb2NrIHNpemUgaXMgNTEyIG9jdGV0cyAqLwor
I2RlZmluZQlYRlNfU0JfQkxPQ0tMT0dfTUlOCTkKKy8qIEltcGxpZWQgYnkg
dGhlIFhGUyBzcGVjaWZpY2F0aW9uLiBUaGUgbWF4aW11bSBibG9jayBzaXpl
IGlzIDY1NTM2IG9jdGV0cyAqLworI2RlZmluZQlYRlNfU0JfQkxPQ0tMT0df
TUFYCTE2CisvKiBJbXBsaWVkIGJ5IHRoZSBYRlMgc3BlY2lmaWNhdGlvbi4g
VGhlIG1pbmltdW0gaW5vZGUgc2l6ZSBpcyAyNTYgb2N0ZXRzICovCisjZGVm
aW5lCVhGU19TQl9JTk9ERUxPR19NSU4JOAorLyogSW1wbGllZCBieSB0aGUg
WEZTIHNwZWNpZmljYXRpb24uIFRoZSBtYXhpbXVtIGlub2RlIHNpemUgaXMg
MjA0OCBvY3RldHMgKi8KKyNkZWZpbmUJWEZTX1NCX0lOT0RFTE9HX01BWAkx
MQorLyogSGlnaCBib3VuZCBmb3Igc2JfYWdibGtsb2cgKi8KKyNkZWZpbmUJ
WEZTX1NCX0FHQkxLTE9HX01BWAkzMgogCiAvKiB0aG9zZSBhcmUgZnJvbSB4
ZnNfYnRyZWUuaCAqLwogCi0tIAoyLjQyLjAKCg==

--=separator
Content-Type: application/octet-stream; name="xsa443/xsa443-4.16-04.patch"
Content-Disposition: attachment; filename="xsa443/xsa443-4.16-04.patch"
Content-Transfer-Encoding: base64

RnJvbSBlNzJjNjhlNzAyZGQ5MzBiYzYwMTMxODJiYjQ0ZDNlOGZiYmI2YmY0
IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBBbGVqYW5kcm8gVmFs
bGVqbyA8YWxlamFuZHJvLnZhbGxlam9AY2xvdWQuY29tPgpEYXRlOiBUaHUs
IDE0IFNlcCAyMDIzIDEzOjIyOjUzICswMTAwClN1YmplY3Q6IFtQQVRDSCAw
NC8xMV0gbGliZnNpbWFnZS94ZnM6IEFkZCBjb21waWxlLXRpbWUgY2hlY2sg
dG8gbGliZnNpbWFnZQoKQWRkcyB0aGUgY29tbW9uIHRvb2xzIGluY2x1ZGUg
Zm9sZGVyIHRvIHRoZSAtSSBjb21waWxlIGZsYWdzCm9mIGxpYmZzaW1hZ2Uu
IFRoaXMgYWxsb3dzIHVzIHRvIHVzZToKICB4ZW4tdG9vbHMvY29tbW9uLW1h
Y3Jvcy5oOkJVSUxEX0JVR19PTigpCgpXaXRoIGl0LCBzdGF0aWNhbGx5IGFz
c2VydCBhIHNhbml0aXplZCAiYmxvY2tsb2cgLSBTRUNUT1JfQklUUyIgY2Fu
bm90CnVuZGVyZmxvdy4KClRoaXMgaXMgcGFydCBvZiBYU0EtNDQzIC8gQ1ZF
LTIwMjMtMzQzMjUKClNpZ25lZC1vZmYtYnk6IEFsZWphbmRybyBWYWxsZWpv
IDxhbGVqYW5kcm8udmFsbGVqb0BjbG91ZC5jb20+ClJldmlld2VkLWJ5OiBK
YW4gQmV1bGljaCA8amJldWxpY2hAc3VzZS5jb20+Ci0tLQogdG9vbHMvbGli
ZnNpbWFnZS9SdWxlcy5tayAgICAgICB8IDIgKy0KIHRvb2xzL2xpYmZzaW1h
Z2UveGZzL2ZzeXNfeGZzLmMgfCA0ICsrKy0KIDIgZmlsZXMgY2hhbmdlZCwg
NCBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBh
L3Rvb2xzL2xpYmZzaW1hZ2UvUnVsZXMubWsgYi90b29scy9saWJmc2ltYWdl
L1J1bGVzLm1rCmluZGV4IGJiNmQ0MmFiYjQ5NC4uODA1OThmYjcwYWE3IDEw
MDY0NAotLS0gYS90b29scy9saWJmc2ltYWdlL1J1bGVzLm1rCisrKyBiL3Rv
b2xzL2xpYmZzaW1hZ2UvUnVsZXMubWsKQEAgLTEsNiArMSw2IEBACiBpbmNs
dWRlICQoWEVOX1JPT1QpL3Rvb2xzL1J1bGVzLm1rCiAKLUNGTEFHUyArPSAt
V25vLXVua25vd24tcHJhZ21hcyAtSSQoWEVOX1JPT1QpL3Rvb2xzL2xpYmZz
aW1hZ2UvY29tbW9uLyAtREZTSU1BR0VfRlNESVI9XCIkKEZTRElSKVwiCitD
RkxBR1MgKz0gLVduby11bmtub3duLXByYWdtYXMgLUkkKFhFTl9ST09UKS90
b29scy9saWJmc2ltYWdlL2NvbW1vbi8gJChDRkxBR1NfeGVuaW5jbHVkZSkg
LURGU0lNQUdFX0ZTRElSPVwiJChGU0RJUilcIgogQ0ZMQUdTICs9IC1XZXJy
b3IgLURfR05VX1NPVVJDRQogTERGTEFHUyArPSAtTC4uL2NvbW1vbi8KIApk
aWZmIC0tZ2l0IGEvdG9vbHMvbGliZnNpbWFnZS94ZnMvZnN5c194ZnMuYyBi
L3Rvb2xzL2xpYmZzaW1hZ2UveGZzL2ZzeXNfeGZzLmMKaW5kZXggZTRlYjdl
MWVlMjZmLi40YThkZDZmMjM5N2IgMTAwNjQ0Ci0tLSBhL3Rvb2xzL2xpYmZz
aW1hZ2UveGZzL2ZzeXNfeGZzLmMKKysrIGIvdG9vbHMvbGliZnNpbWFnZS94
ZnMvZnN5c194ZnMuYwpAQCAtMTksNiArMTksNyBAQAogCiAjaW5jbHVkZSA8
c3RkYm9vbC5oPgogI2luY2x1ZGUgPHhlbmZzaW1hZ2VfZ3J1Yi5oPgorI2lu
Y2x1ZGUgPHhlbi10b29scy9saWJzLmg+CiAjaW5jbHVkZSAieGZzLmgiCiAK
ICNkZWZpbmUgTUFYX0xJTktfQ09VTlQJOApAQCAtNDc3LDkgKzQ3OCwxMCBA
QCB4ZnNfbW91bnQgKGZzaV9maWxlX3QgKmZmaSwgY29uc3QgY2hhciAqb3B0
aW9ucykKIAl4ZnMuYWdibGtsb2cgPSBzdXBlci5zYl9hZ2Jsa2xvZzsKIAog
CS8qIERlcml2ZWQgZnJvbSBzYW5pdGl6ZWQgcGFyYW1ldGVycyAqLworCUJV
SUxEX0JVR19PTihYRlNfU0JfQkxPQ0tMT0dfTUlOIDwgU0VDVE9SX0JJVFMp
OworCXhmcy5iZGxvZyA9IHN1cGVyLnNiX2Jsb2NrbG9nIC0gU0VDVE9SX0JJ
VFM7CiAJeGZzLmJzaXplID0gMSA8PCBzdXBlci5zYl9ibG9ja2xvZzsKIAl4
ZnMuYmxrbG9nID0gc3VwZXIuc2JfYmxvY2tsb2c7Ci0JeGZzLmJkbG9nID0g
c3VwZXIuc2JfYmxvY2tsb2cgLSBTRUNUT1JfQklUUzsKIAl4ZnMuaXNpemUg
PSAxIDw8IHN1cGVyLnNiX2lub2RlbG9nOwogCXhmcy5kaXJic2l6ZSA9IDEg
PDwgKHN1cGVyLnNiX2Jsb2NrbG9nICsgc3VwZXIuc2JfZGlyYmxrbG9nKTsK
IAl4ZnMuaW5vcGJsb2cgPSBzdXBlci5zYl9ibG9ja2xvZyAtIHN1cGVyLnNi
X2lub2RlbG9nOwotLSAKMi40Mi4wCgo=

--=separator
Content-Type: application/octet-stream; name="xsa443/xsa443-4.16-05.patch"
Content-Disposition: attachment; filename="xsa443/xsa443-4.16-05.patch"
Content-Transfer-Encoding: base64

RnJvbSA3NWZkYzAzYzVhNmI3ZmFjMGMzYTVhYzA2YTViZWFhYzczYWFkMzZm
IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBBbGVqYW5kcm8gVmFs
bGVqbyA8YWxlamFuZHJvLnZhbGxlam9AY2xvdWQuY29tPgpEYXRlOiBNb24s
IDI1IFNlcCAyMDIzIDE4OjMyOjIxICswMTAwClN1YmplY3Q6IFtQQVRDSCAw
NS8xMV0gdG9vbHMvcHlncnViOiBSZW1vdmUgdW5uZWNlc3NhcnkgaHlwZXJj
YWxsCgpUaGVyZSdzIGEgaHlwZXJjYWxsIGJlaW5nIGlzc3VlZCBpbiBvcmRl
ciB0byBkZXRlcm1pbmUgd2hldGhlciBQVjY0IGlzCnN1cHBvcnRlZCwgYnV0
IHNpbmNlIFhlbiA0LjMgdGhhdCdzIHN0cmljdGx5IHRydWUgc28gaXQncyBu
b3QgcmVxdWlyZWQuCgpQbHVzLCB0aGlzIHdheSB3ZSBjYW4gYXZvaWQgbWFw
cGluZyB0aGUgcHJpdmNtZCBpbnRlcmZhY2UgYWx0b2dldGhlciBpbiB0aGUK
ZGVwcml2IHB5Z3J1Yi4KClRoaXMgaXMgcGFydCBvZiBYU0EtNDQzIC8gQ1ZF
LTIwMjMtMzQzMjUKClNpZ25lZC1vZmYtYnk6IEFsZWphbmRybyBWYWxsZWpv
IDxhbGVqYW5kcm8udmFsbGVqb0BjbG91ZC5jb20+ClJldmlld2VkLWJ5OiBB
bmRyZXcgQ29vcGVyIDxhbmRyZXcuY29vcGVyM0BjaXRyaXguY29tPgotLS0K
IHRvb2xzL3B5Z3J1Yi9zcmMvcHlncnViIHwgMTIgKy0tLS0tLS0tLS0tCiAx
IGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDExIGRlbGV0aW9ucygt
KQoKZGlmZiAtLWdpdCBhL3Rvb2xzL3B5Z3J1Yi9zcmMvcHlncnViIGIvdG9v
bHMvcHlncnViL3NyYy9weWdydWIKaW5kZXggY2U3YWIwZWI4Y2YzLi5jZTRl
MDdkM2U4MjMgMTAwNzU1Ci0tLSBhL3Rvb2xzL3B5Z3J1Yi9zcmMvcHlncnVi
CisrKyBiL3Rvb2xzL3B5Z3J1Yi9zcmMvcHlncnViCkBAIC0xOCw3ICsxOCw2
IEBAIGltcG9ydCBvcywgc3lzLCBzdHJpbmcsIHN0cnVjdCwgdGVtcGZpbGUs
IHJlLCB0cmFjZWJhY2ssIHN0YXQsIGVycm5vCiBpbXBvcnQgY29weQogaW1w
b3J0IGxvZ2dpbmcKIGltcG9ydCBwbGF0Zm9ybQotaW1wb3J0IHhlbi5sb3ds
ZXZlbC54YwogCiBpbXBvcnQgY3Vyc2VzLCBfY3Vyc2VzLCBjdXJzZXMudGV4
dHBhZCwgY3Vyc2VzLmFzY2lpCiBpbXBvcnQgZ2V0b3B0CkBAIC02NjgsMTQg
KzY2Nyw2IEBAIGRlZiBydW5fZ3J1YihmaWxlLCBlbnRyeSwgZnMsIGNmZ19h
cmdzKToKIAogICAgIHJldHVybiBncnViY2ZnCiAKLWRlZiBzdXBwb3J0czY0
Yml0UFZndWVzdCgpOgotICAgIHhjID0geGVuLmxvd2xldmVsLnhjLnhjKCkK
LSAgICBjYXBzID0geGMueGVuaW5mbygpWyd4ZW5fY2FwcyddLnNwbGl0KCIg
IikKLSAgICBmb3IgY2FwIGluIGNhcHM6Ci0gICAgICAgIGlmIGNhcCA9PSAi
eGVuLTMuMC14ODZfNjQiOgotICAgICAgICAgICAgcmV0dXJuIFRydWUKLSAg
ICByZXR1cm4gRmFsc2UKLQogIyBJZiBub3RoaW5nIGhhcyBiZWVuIHNwZWNp
ZmllZCwgbG9vayBmb3IgYSBTb2xhcmlzIGRvbVUuIElmIGZvdW5kLCBwZXJm
b3JtIHRoZQogIyBuZWNlc3NhcnkgdHdlYWtzLgogZGVmIHNuaWZmX3NvbGFy
aXMoZnMsIGNmZyk6CkBAIC02ODQsOCArNjc1LDcgQEAgZGVmIHNuaWZmX3Nv
bGFyaXMoZnMsIGNmZyk6CiAgICAgICAgIHJldHVybiBjZmcKIAogICAgIGlm
IG5vdCBjZmdbImtlcm5lbCJdOgotICAgICAgICBpZiBzdXBwb3J0czY0Yml0
UFZndWVzdCgpIGFuZCBcCi0gICAgICAgICAgZnMuZmlsZV9leGlzdHMoIi9w
bGF0Zm9ybS9pODZ4cHYva2VybmVsL2FtZDY0L3VuaXgiKToKKyAgICAgICAg
aWYgZnMuZmlsZV9leGlzdHMoIi9wbGF0Zm9ybS9pODZ4cHYva2VybmVsL2Ft
ZDY0L3VuaXgiKToKICAgICAgICAgICAgIGNmZ1sia2VybmVsIl0gPSAiL3Bs
YXRmb3JtL2k4Nnhwdi9rZXJuZWwvYW1kNjQvdW5peCIKICAgICAgICAgICAg
IGNmZ1sicmFtZGlzayJdID0gIi9wbGF0Zm9ybS9pODZwYy9hbWQ2NC9ib290
X2FyY2hpdmUiCiAgICAgICAgIGVsaWYgZnMuZmlsZV9leGlzdHMoIi9wbGF0
Zm9ybS9pODZ4cHYva2VybmVsL3VuaXgiKToKLS0gCjIuNDIuMAoK

--=separator
Content-Type: application/octet-stream; name="xsa443/xsa443-4.16-06.patch"
Content-Disposition: attachment; filename="xsa443/xsa443-4.16-06.patch"
Content-Transfer-Encoding: base64

RnJvbSAxMDgzYTE2ZjYzNDYxZTg0NGU5NTE1YWM0ZDM1ZDQ4YmY1NTc4NWFm
IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBBbGVqYW5kcm8gVmFs
bGVqbyA8YWxlamFuZHJvLnZhbGxlam9AY2xvdWQuY29tPgpEYXRlOiBNb24s
IDI1IFNlcCAyMDIzIDE4OjMyOjIyICswMTAwClN1YmplY3Q6IFtQQVRDSCAw
Ni8xMV0gdG9vbHMvcHlncnViOiBTbWFsbCByZWZhY3RvcnMKClNtYWxsIHRp
ZHkgdXAgdG8gZW5zdXJlIG91dHB1dF9kaXJlY3RvcnkgYWx3YXlzIGhhcyBh
IHRyYWlsaW5nICcvJyB0byBlYXNlCmNvbmNhdGVuYXRpbmcgcGF0aHMgYW5k
IHRoYXQgYG91dHB1dGAgY2FuIG9ubHkgYmUgYSBmaWxlbmFtZSBvciBOb25l
LgoKVGhpcyBpcyBwYXJ0IG9mIFhTQS00NDMgLyBDVkUtMjAyMy0zNDMyNQoK
U2lnbmVkLW9mZi1ieTogQWxlamFuZHJvIFZhbGxlam8gPGFsZWphbmRyby52
YWxsZWpvQGNsb3VkLmNvbT4KQWNrZWQtYnk6IEFuZHJldyBDb29wZXIgPGFu
ZHJldy5jb29wZXIzQGNpdHJpeC5jb20+Ci0tLQogdG9vbHMvcHlncnViL3Ny
Yy9weWdydWIgfCAxMCArKysrKy0tLS0tCiAxIGZpbGUgY2hhbmdlZCwgNSBp
bnNlcnRpb25zKCspLCA1IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3Rv
b2xzL3B5Z3J1Yi9zcmMvcHlncnViIGIvdG9vbHMvcHlncnViL3NyYy9weWdy
dWIKaW5kZXggY2U0ZTA3ZDNlODIzLi4xMDQyYzA1Yjg2NzYgMTAwNzU1Ci0t
LSBhL3Rvb2xzL3B5Z3J1Yi9zcmMvcHlncnViCisrKyBiL3Rvb2xzL3B5Z3J1
Yi9zcmMvcHlncnViCkBAIC03OTMsNyArNzkzLDcgQEAgaWYgX19uYW1lX18g
PT0gIl9fbWFpbl9fIjoKICAgICBkZWJ1ZyA9IEZhbHNlCiAgICAgbm90X3Jl
YWxseSA9IEZhbHNlCiAgICAgb3V0cHV0X2Zvcm1hdCA9ICJzeHAiCi0gICAg
b3V0cHV0X2RpcmVjdG9yeSA9ICIvdmFyL3J1bi94ZW4vcHlncnViIgorICAg
IG91dHB1dF9kaXJlY3RvcnkgPSAiL3Zhci9ydW4veGVuL3B5Z3J1Yi8iCiAK
ICAgICAjIHdoYXQgd2FzIHBhc3NlZCBpbgogICAgIGluY2ZnID0geyAia2Vy
bmVsIjogTm9uZSwgInJhbWRpc2siOiBOb25lLCAiYXJncyI6ICIiIH0KQEAg
LTgxNSw3ICs4MTUsOCBAQCBpZiBfX25hbWVfXyA9PSAiX19tYWluX18iOgog
ICAgICAgICAgICAgdXNhZ2UoKQogICAgICAgICAgICAgc3lzLmV4aXQoKQog
ICAgICAgICBlbGlmIG8gaW4gKCItLW91dHB1dCIsKToKLSAgICAgICAgICAg
IG91dHB1dCA9IGEKKyAgICAgICAgICAgIGlmIGEgIT0gIi0iOgorICAgICAg
ICAgICAgICAgIG91dHB1dCA9IGEKICAgICAgICAgZWxpZiBvIGluICgiLS1r
ZXJuZWwiLCk6CiAgICAgICAgICAgICBpbmNmZ1sia2VybmVsIl0gPSBhCiAg
ICAgICAgIGVsaWYgbyBpbiAoIi0tcmFtZGlzayIsKToKQEAgLTg0NywxMiAr
ODQ4LDExIEBAIGlmIF9fbmFtZV9fID09ICJfX21haW5fXyI6CiAgICAgICAg
ICAgICBpZiBub3Qgb3MucGF0aC5pc2RpcihhKToKICAgICAgICAgICAgICAg
ICBwcmludCgiJXMgaXMgbm90IGFuIGV4aXN0aW5nIGRpcmVjdG9yeSIgJSBh
KQogICAgICAgICAgICAgICAgIHN5cy5leGl0KDEpCi0gICAgICAgICAgICBv
dXRwdXRfZGlyZWN0b3J5ID0gYQorICAgICAgICAgICAgb3V0cHV0X2RpcmVj
dG9yeSA9IGEgKyAnLycKIAogICAgIGlmIGRlYnVnOgogICAgICAgICBsb2dn
aW5nLmJhc2ljQ29uZmlnKGxldmVsPWxvZ2dpbmcuREVCVUcpCiAKLQogICAg
IHRyeToKICAgICAgICAgb3MubWFrZWRpcnMob3V0cHV0X2RpcmVjdG9yeSwg
MG83MDApCiAgICAgZXhjZXB0IE9TRXJyb3IgYXMgZToKQEAgLTg2MSw3ICs4
NjEsNyBAQCBpZiBfX25hbWVfXyA9PSAiX19tYWluX18iOgogICAgICAgICBl
bHNlOgogICAgICAgICAgICAgcmFpc2UKIAotICAgIGlmIG91dHB1dCBpcyBO
b25lIG9yIG91dHB1dCA9PSAiLSI6CisgICAgaWYgb3V0cHV0IGlzIE5vbmU6
CiAgICAgICAgIGZkID0gc3lzLnN0ZG91dC5maWxlbm8oKQogICAgIGVsc2U6
CiAgICAgICAgIGZkID0gb3Mub3BlbihvdXRwdXQsIG9zLk9fV1JPTkxZKQot
LSAKMi40Mi4wCgo=

--=separator
Content-Type: application/octet-stream; name="xsa443/xsa443-4.16-07.patch"
Content-Disposition: attachment; filename="xsa443/xsa443-4.16-07.patch"
Content-Transfer-Encoding: base64

RnJvbSAzNTBkYjMwZTMzZjM5YWY0MGMxZTM3NTJkNzNjMGEzMGVmMmQyNmU3
IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBBbGVqYW5kcm8gVmFs
bGVqbyA8YWxlamFuZHJvLnZhbGxlam9AY2xvdWQuY29tPgpEYXRlOiBNb24s
IDI1IFNlcCAyMDIzIDE4OjMyOjIzICswMTAwClN1YmplY3Q6IFtQQVRDSCAw
Ny8xMV0gdG9vbHMvcHlncnViOiBPcGVuIHRoZSBvdXRwdXQgZmlsZXMgZWFy
bGllcgoKVGhpcyBwYXRjaCBhbGxvd3MgcHlncnViIHRvIGdldCBhaG9sZCBv
ZiBldmVyeSBSVyBmaWxlIGRlc2NyaXB0b3IgaXQgbmVlZHMKZWFybHkgb24u
IEEgbGF0ZXIgcGF0Y2ggd2lsbCBjbGFtcCB0aGUgZmlsZXN5c3RlbSBpdCBj
YW4gYWNjZXNzIHNvIGl0IGNhbid0Cm9idGFpbiBhbnkgb3RoZXJzLgoKVGhp
cyBpcyBwYXJ0IG9mIFhTQS00NDMgLyBDVkUtMjAyMy0zNDMyNQoKU2lnbmVk
LW9mZi1ieTogQWxlamFuZHJvIFZhbGxlam8gPGFsZWphbmRyby52YWxsZWpv
QGNsb3VkLmNvbT4KQWNrZWQtYnk6IEFuZHJldyBDb29wZXIgPGFuZHJldy5j
b29wZXIzQGNpdHJpeC5jb20+Ci0tLQogdG9vbHMvcHlncnViL3NyYy9weWdy
dWIgfCAzNyArKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0t
CiAxIGZpbGUgY2hhbmdlZCwgMjIgaW5zZXJ0aW9ucygrKSwgMTUgZGVsZXRp
b25zKC0pCgpkaWZmIC0tZ2l0IGEvdG9vbHMvcHlncnViL3NyYy9weWdydWIg
Yi90b29scy9weWdydWIvc3JjL3B5Z3J1YgppbmRleCAxMDQyYzA1Yjg2NzYu
LjkxZTJlYzJhYjEwNSAxMDA3NTUKLS0tIGEvdG9vbHMvcHlncnViL3NyYy9w
eWdydWIKKysrIGIvdG9vbHMvcHlncnViL3NyYy9weWdydWIKQEAgLTczOCw4
ICs3MzgsNyBAQCBpZiBfX25hbWVfXyA9PSAiX19tYWluX18iOgogICAgIGRl
ZiB1c2FnZSgpOgogICAgICAgICBwcmludCgiVXNhZ2U6ICVzIFstcXwtLXF1
aWV0XSBbLWl8LS1pbnRlcmFjdGl2ZV0gWy1sfC0tbGlzdC1lbnRyaWVzXSBb
LW58LS1ub3QtcmVhbGx5XSBbLS1vdXRwdXQ9XSBbLS1rZXJuZWw9XSBbLS1y
YW1kaXNrPV0gWy0tYXJncz1dIFstLWVudHJ5PV0gWy0tb3V0cHV0LWRpcmVj
dG9yeT1dIFstLW91dHB1dC1mb3JtYXQ9c3hwfHNpbXBsZXxzaW1wbGUwXSBb
LS1vZmZzZXQ9XSA8aW1hZ2U+IiAlKHN5cy5hcmd2WzBdLCksIGZpbGU9c3lz
LnN0ZGVycikKIAotICAgIGRlZiBjb3B5X2Zyb21faW1hZ2UoZnMsIGZpbGVf
dG9fcmVhZCwgZmlsZV90eXBlLCBvdXRwdXRfZGlyZWN0b3J5LAotICAgICAg
ICAgICAgICAgICAgICAgICAgbm90X3JlYWxseSk6CisgICAgZGVmIGNvcHlf
ZnJvbV9pbWFnZShmcywgZmlsZV90b19yZWFkLCBmaWxlX3R5cGUsIGZkX2Rz
dCwgcGF0aF9kc3QsIG5vdF9yZWFsbHkpOgogICAgICAgICBpZiBub3RfcmVh
bGx5OgogICAgICAgICAgICAgaWYgZnMuZmlsZV9leGlzdHMoZmlsZV90b19y
ZWFkKToKICAgICAgICAgICAgICAgICByZXR1cm4gIjwlczolcz4iICUgKGZp
bGVfdHlwZSwgZmlsZV90b19yZWFkKQpAQCAtNzUwLDIxICs3NDksMTggQEAg
aWYgX19uYW1lX18gPT0gIl9fbWFpbl9fIjoKICAgICAgICAgZXhjZXB0IEV4
Y2VwdGlvbiBhcyBlOgogICAgICAgICAgICAgcHJpbnQoZSwgZmlsZT1zeXMu
c3RkZXJyKQogICAgICAgICAgICAgc3lzLmV4aXQoIkVycm9yIG9wZW5pbmcg
JXMgaW4gZ3Vlc3QiICUgZmlsZV90b19yZWFkKQotICAgICAgICAodGZkLCBy
ZXQpID0gdGVtcGZpbGUubWtzdGVtcChwcmVmaXg9ImJvb3RfIitmaWxlX3R5
cGUrIi4iLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBkaXI9b3V0cHV0X2RpcmVjdG9yeSkKICAgICAgICAgZGF0YW9mZiA9IDAK
ICAgICAgICAgd2hpbGUgVHJ1ZToKICAgICAgICAgICAgIGRhdGEgPSBkYXRh
ZmlsZS5yZWFkKEZTX1JFQURfTUFYLCBkYXRhb2ZmKQogICAgICAgICAgICAg
aWYgbGVuKGRhdGEpID09IDA6Ci0gICAgICAgICAgICAgICAgb3MuY2xvc2Uo
dGZkKQorICAgICAgICAgICAgICAgIG9zLmNsb3NlKGZkX2RzdCkKICAgICAg
ICAgICAgICAgICBkZWwgZGF0YWZpbGUKLSAgICAgICAgICAgICAgICByZXR1
cm4gcmV0CisgICAgICAgICAgICAgICAgcmV0dXJuCiAgICAgICAgICAgICB0
cnk6Ci0gICAgICAgICAgICAgICAgb3Mud3JpdGUodGZkLCBkYXRhKQorICAg
ICAgICAgICAgICAgIG9zLndyaXRlKGZkX2RzdCwgZGF0YSkKICAgICAgICAg
ICAgIGV4Y2VwdCBFeGNlcHRpb24gYXMgZToKICAgICAgICAgICAgICAgICBw
cmludChlLCBmaWxlPXN5cy5zdGRlcnIpCi0gICAgICAgICAgICAgICAgb3Mu
Y2xvc2UodGZkKQotICAgICAgICAgICAgICAgIG9zLnVubGluayhyZXQpCisg
ICAgICAgICAgICAgICAgb3MudW5saW5rKHBhdGhfZHN0KQogICAgICAgICAg
ICAgICAgIGRlbCBkYXRhZmlsZQogICAgICAgICAgICAgICAgIHN5cy5leGl0
KCJFcnJvciB3cml0aW5nIHRlbXBvcmFyeSBjb3B5IG9mICIrZmlsZV90eXBl
KQogICAgICAgICAgICAgZGF0YW9mZiArPSBsZW4oZGF0YSkKQEAgLTg2MSw2
ICs4NTcsMTQgQEAgaWYgX19uYW1lX18gPT0gIl9fbWFpbl9fIjoKICAgICAg
ICAgZWxzZToKICAgICAgICAgICAgIHJhaXNlCiAKKyAgICBpZiBub3RfcmVh
bGx5OgorICAgICAgICBmZF9rZXJuZWwgPSAgcGF0aF9rZXJuZWwgPSBmZF9y
YW1kaXNrID0gcGF0aF9yYW1kaXNrID0gTm9uZQorICAgIGVsc2U6CisgICAg
ICAgIChmZF9rZXJuZWwsIHBhdGhfa2VybmVsKSA9IHRlbXBmaWxlLm1rc3Rl
bXAocHJlZml4PSJib290X2tlcm5lbC4iLAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpcj1vdXRwdXRf
ZGlyZWN0b3J5KQorICAgICAgICAoZmRfcmFtZGlzaywgcGF0aF9yYW1kaXNr
KSA9IHRlbXBmaWxlLm1rc3RlbXAocHJlZml4PSJib290X3JhbWRpc2suIiwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGRpcj1vdXRwdXRfZGlyZWN0b3J5KQorCiAgICAgaWYgb3V0
cHV0IGlzIE5vbmU6CiAgICAgICAgIGZkID0gc3lzLnN0ZG91dC5maWxlbm8o
KQogICAgIGVsc2U6CkBAIC05MjAsMjAgKzkyNCwyMyBAQCBpZiBfX25hbWVf
XyA9PSAiX19tYWluX18iOgogICAgIGlmIGZzIGlzIE5vbmU6CiAgICAgICAg
IHJhaXNlIFJ1bnRpbWVFcnJvcigiVW5hYmxlIHRvIGZpbmQgcGFydGl0aW9u
IGNvbnRhaW5pbmcga2VybmVsIikKIAotICAgIGJvb3RjZmdbImtlcm5lbCJd
ID0gY29weV9mcm9tX2ltYWdlKGZzLCBjaG9zZW5jZmdbImtlcm5lbCJdLCAi
a2VybmVsIiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBvdXRwdXRfZGlyZWN0b3J5LCBub3RfcmVhbGx5KQorICAgIGNvcHlf
ZnJvbV9pbWFnZShmcywgY2hvc2VuY2ZnWyJrZXJuZWwiXSwgImtlcm5lbCIs
CisgICAgICAgICAgICAgICAgICAgIGZkX2tlcm5lbCwgcGF0aF9rZXJuZWws
IG5vdF9yZWFsbHkpCisgICAgYm9vdGNmZ1sia2VybmVsIl0gPSBwYXRoX2tl
cm5lbAogCiAgICAgaWYgY2hvc2VuY2ZnWyJyYW1kaXNrIl06CiAgICAgICAg
IHRyeToKLSAgICAgICAgICAgIGJvb3RjZmdbInJhbWRpc2siXSA9IGNvcHlf
ZnJvbV9pbWFnZShmcywgY2hvc2VuY2ZnWyJyYW1kaXNrIl0sCi0gICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInJh
bWRpc2siLCBvdXRwdXRfZGlyZWN0b3J5LAotICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5vdF9yZWFsbHkpCisg
ICAgICAgICAgICBjb3B5X2Zyb21faW1hZ2UoZnMsIGNob3NlbmNmZ1sicmFt
ZGlzayJdLCAicmFtZGlzayIsCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgZmRfcmFtZGlzaywgcGF0aF9yYW1kaXNrLCBub3RfcmVhbGx5KQogICAg
ICAgICBleGNlcHQ6CiAgICAgICAgICAgICBpZiBub3Qgbm90X3JlYWxseToK
LSAgICAgICAgICAgICAgICBvcy51bmxpbmsoYm9vdGNmZ1sia2VybmVsIl0p
CisgICAgICAgICAgICAgICAgb3MudW5saW5rKHBhdGhfa2VybmVsKQogICAg
ICAgICAgICAgcmFpc2UKKyAgICAgICAgYm9vdGNmZ1sicmFtZGlzayJdID0g
cGF0aF9yYW1kaXNrCiAgICAgZWxzZToKICAgICAgICAgaW5pdHJkID0gTm9u
ZQorICAgICAgICBpZiBub3Qgbm90X3JlYWxseToKKyAgICAgICAgICAgIG9z
LnVubGluayhwYXRoX3JhbWRpc2spCiAKICAgICBhcmdzID0gTm9uZQogICAg
IGlmIGNob3NlbmNmZ1siYXJncyJdOgotLSAKMi40Mi4wCgo=

--=separator
Content-Type: application/octet-stream; name="xsa443/xsa443-4.16-08.patch"
Content-Disposition: attachment; filename="xsa443/xsa443-4.16-08.patch"
Content-Transfer-Encoding: base64

RnJvbSAxNTQ4YWQyMjkxZWM3YTcyYWU2OTQ5YzExZDJlNTBjZWExMzVhNDhk
IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBBbGVqYW5kcm8gVmFs
bGVqbyA8YWxlamFuZHJvLnZhbGxlam9AY2xvdWQuY29tPgpEYXRlOiBNb24s
IDI1IFNlcCAyMDIzIDE4OjMyOjI0ICswMTAwClN1YmplY3Q6IFtQQVRDSCAw
OC8xMV0gdG9vbHMvbGliZnNpbWFnZTogRXhwb3J0IGEgbmV3IGZ1bmN0aW9u
IHRvIHByZWxvYWQgYWxsCiBwbHVnaW5zCgpUaGlzIGlzIHdvcmsgcmVxdWly
ZWQgaW4gb3JkZXIgdG8gbGV0IHB5Z3J1YiBvcGVyYXRlIGluIGhpZ2hseSBk
ZXByaXZpbGVnZWQKY2hyb290IG1vZGUuIFRoaXMgcGF0Y2ggYWRkcyBhIGZ1
bmN0aW9uIHRoYXQgcHJlbG9hZHMgZXZlcnkgcGx1Z2luLCBoZW5jZQplbnN1
cmluZyB0aGF0IGEgb24gZnVuY3Rpb24gZXhpdCwgZXZlcnkgc2hhcmVkIGxp
YnJhcnkgaXMgbG9hZGVkIGluIG1lbW9yeS4KClRoZSBuZXcgImluaXQiIGZ1
bmN0aW9uIGlzIHN1cHBvc2VkIHRvIGJlIHVzZWQgYmVmb3JlIGRlcHJpdiwg
YnV0IHRoYXQncwpmaW5lIGJlY2F1c2UgaXQncyBub3QgYWN0aW5nIG9uIHVu
dHJ1c3RlZCBkYXRhLgoKVGhpcyBpcyBwYXJ0IG9mIFhTQS00NDMgLyBDVkUt
MjAyMy0zNDMyNQoKU2lnbmVkLW9mZi1ieTogQWxlamFuZHJvIFZhbGxlam8g
PGFsZWphbmRyby52YWxsZWpvQGNsb3VkLmNvbT4KQWNrZWQtYnk6IEFuZHJl
dyBDb29wZXIgPGFuZHJldy5jb29wZXIzQGNpdHJpeC5jb20+Ci0tLQogdG9v
bHMvbGliZnNpbWFnZS9jb21tb24vZnNpbWFnZV9wbHVnaW4uYyB8ICA0ICsr
LS0KIHRvb2xzL2xpYmZzaW1hZ2UvY29tbW9uL21hcGZpbGUtR05VICAgICAg
fCAgMSArCiB0b29scy9saWJmc2ltYWdlL2NvbW1vbi9tYXBmaWxlLVN1bk9T
ICAgIHwgIDEgKwogdG9vbHMvbGliZnNpbWFnZS9jb21tb24veGVuZnNpbWFn
ZS5oICAgICB8ICA4ICsrKysrKysrCiB0b29scy9weWdydWIvc3JjL2ZzaW1h
Z2UvZnNpbWFnZS5jICAgICAgIHwgMTUgKysrKysrKysrKysrKysrCiA1IGZp
bGVzIGNoYW5nZWQsIDI3IGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0p
CgpkaWZmIC0tZ2l0IGEvdG9vbHMvbGliZnNpbWFnZS9jb21tb24vZnNpbWFn
ZV9wbHVnaW4uYyBiL3Rvb2xzL2xpYmZzaW1hZ2UvY29tbW9uL2ZzaW1hZ2Vf
cGx1Z2luLmMKaW5kZXggZGUxNDEyYjQyMzNhLi5kMGNiOWU5NmE2NTQgMTAw
NjQ0Ci0tLSBhL3Rvb2xzL2xpYmZzaW1hZ2UvY29tbW9uL2ZzaW1hZ2VfcGx1
Z2luLmMKKysrIGIvdG9vbHMvbGliZnNpbWFnZS9jb21tb24vZnNpbWFnZV9w
bHVnaW4uYwpAQCAtMTE5LDcgKzExOSw3IEBAIGZhaWw6CiAJcmV0dXJuICgt
MSk7CiB9CiAKLXN0YXRpYyBpbnQgbG9hZF9wbHVnaW5zKHZvaWQpCitpbnQg
ZnNpX2luaXQodm9pZCkKIHsKIAljb25zdCBjaGFyICpmc2RpciA9IGdldGVu
digiWEVOX0ZTSU1BR0VfRlNESVIiKTsKIAlzdHJ1Y3QgZGlyZW50ICpkcCA9
IE5VTEw7CkBAIC0xODAsNyArMTgwLDcgQEAgaW50IGZpbmRfcGx1Z2luKGZz
aV90ICpmc2ksIGNvbnN0IGNoYXIgKnBhdGgsIGNvbnN0IGNoYXIgKm9wdGlv
bnMpCiAJZnNpX3BsdWdpbl90ICpmcDsKIAlpbnQgcmV0ID0gMDsKIAotCWlm
IChwbHVnaW5zID09IE5VTEwgJiYgKHJldCA9IGxvYWRfcGx1Z2lucygpKSAh
PSAwKQorCWlmIChwbHVnaW5zID09IE5VTEwgJiYgKHJldCA9IGZzaV9pbml0
KCkpICE9IDApCiAJCWdvdG8gb3V0OwogCiAJZm9yIChmcCA9IHBsdWdpbnM7
IGZwICE9IE5VTEw7IGZwID0gZnAtPmZwX25leHQpIHsKZGlmZiAtLWdpdCBh
L3Rvb2xzL2xpYmZzaW1hZ2UvY29tbW9uL21hcGZpbGUtR05VIGIvdG9vbHMv
bGliZnNpbWFnZS9jb21tb24vbWFwZmlsZS1HTlUKaW5kZXggMjZkNGQ3YTY5
ZWM3Li4yZDU0ZDUyN2Q3ZjUgMTAwNjQ0Ci0tLSBhL3Rvb2xzL2xpYmZzaW1h
Z2UvY29tbW9uL21hcGZpbGUtR05VCisrKyBiL3Rvb2xzL2xpYmZzaW1hZ2Uv
Y29tbW9uL21hcGZpbGUtR05VCkBAIC0xLDYgKzEsNyBAQAogVkVSU0lPTiB7
CiAJbGliZnNpbWFnZS5zby4xLjAgewogCQlnbG9iYWw6CisJCQlmc2lfaW5p
dDsKIAkJCWZzaV9vcGVuX2ZzaW1hZ2U7CiAJCQlmc2lfY2xvc2VfZnNpbWFn
ZTsKIAkJCWZzaV9maWxlX2V4aXN0czsKZGlmZiAtLWdpdCBhL3Rvb2xzL2xp
YmZzaW1hZ2UvY29tbW9uL21hcGZpbGUtU3VuT1MgYi90b29scy9saWJmc2lt
YWdlL2NvbW1vbi9tYXBmaWxlLVN1bk9TCmluZGV4IGU5OWI5MGI2NTA3Ny4u
NDhkZWVkYjQyNTJmIDEwMDY0NAotLS0gYS90b29scy9saWJmc2ltYWdlL2Nv
bW1vbi9tYXBmaWxlLVN1bk9TCisrKyBiL3Rvb2xzL2xpYmZzaW1hZ2UvY29t
bW9uL21hcGZpbGUtU3VuT1MKQEAgLTEsNSArMSw2IEBACiBsaWJmc2ltYWdl
LnNvLjEuMCB7CiAJZ2xvYmFsOgorCQlmc2lfaW5pdDsKIAkJZnNpX29wZW5f
ZnNpbWFnZTsKIAkJZnNpX2Nsb3NlX2ZzaW1hZ2U7CiAJCWZzaV9maWxlX2V4
aXN0czsKZGlmZiAtLWdpdCBhL3Rvb2xzL2xpYmZzaW1hZ2UvY29tbW9uL3hl
bmZzaW1hZ2UuaCBiL3Rvb2xzL2xpYmZzaW1hZ2UvY29tbW9uL3hlbmZzaW1h
Z2UuaAppbmRleCAyMDFhYmQ1NGYyM2EuLjM0MTg4M2IyZDcxYSAxMDA2NDQK
LS0tIGEvdG9vbHMvbGliZnNpbWFnZS9jb21tb24veGVuZnNpbWFnZS5oCisr
KyBiL3Rvb2xzL2xpYmZzaW1hZ2UvY29tbW9uL3hlbmZzaW1hZ2UuaApAQCAt
MzUsNiArMzUsMTQgQEAgZXh0ZXJuIEMgewogdHlwZWRlZiBzdHJ1Y3QgZnNp
IGZzaV90OwogdHlwZWRlZiBzdHJ1Y3QgZnNpX2ZpbGUgZnNpX2ZpbGVfdDsK
IAorLyoKKyAqIE9wdGlvbmFsIGluaXRpYWxpemF0aW9uIGZ1bmN0aW9uLiBJ
ZiBpbnZva2VkIGl0IGxvYWRzIHRoZSBhc3NvY2lhdGVkCisgKiBkeW5hbWlj
IGxpYnJhcmllcyBmb3IgdGhlIGJhY2tlbmRzIGFoZWFkIG9mIHRpbWUuIFRo
aXMgaXMgcmVxdWlyZWQgaWYKKyAqIHRoZSBsaWJyYXJ5IGlzIHRvIHJ1biBh
cyBwYXJ0IG9mIGEgaGlnaGx5IGRlcHJpdmlsZWdlZCBleGVjdXRhYmxlLCBh
cworICogdGhlIGxpYnJhcmllcyBtYXkgbm90IGJlIHJlYWNoYWJsZSBhZnRl
ciBkZXByaXYuCisgKi8KK2ludCBmc2lfaW5pdCh2b2lkKTsKKwogZnNpX3Qg
KmZzaV9vcGVuX2ZzaW1hZ2UoY29uc3QgY2hhciAqLCB1aW50NjRfdCwgY29u
c3QgY2hhciAqKTsKIHZvaWQgZnNpX2Nsb3NlX2ZzaW1hZ2UoZnNpX3QgKik7
CiAKZGlmZiAtLWdpdCBhL3Rvb2xzL3B5Z3J1Yi9zcmMvZnNpbWFnZS9mc2lt
YWdlLmMgYi90b29scy9weWdydWIvc3JjL2ZzaW1hZ2UvZnNpbWFnZS5jCmlu
ZGV4IDJlYmJiZTM1ZGY5Mi4uOTJmYmYyODUxZjAxIDEwMDY0NAotLS0gYS90
b29scy9weWdydWIvc3JjL2ZzaW1hZ2UvZnNpbWFnZS5jCisrKyBiL3Rvb2xz
L3B5Z3J1Yi9zcmMvZnNpbWFnZS9mc2ltYWdlLmMKQEAgLTI4Niw2ICsyODYs
MTUgQEAgZnNpbWFnZV9nZXRib290c3RyaW5nKFB5T2JqZWN0ICpvLCBQeU9i
amVjdCAqYXJncykKIAlyZXR1cm4gUHlfQnVpbGRWYWx1ZSgicyIsIGJvb3Rz
dHJpbmcpOwogfQogCitzdGF0aWMgUHlPYmplY3QgKgorZnNpbWFnZV9pbml0
KFB5T2JqZWN0ICpvLCBQeU9iamVjdCAqYXJncykKK3sKKwlpZiAoIVB5QXJn
X1BhcnNlVHVwbGUoYXJncywgIiIpKQorCQlyZXR1cm4gKE5VTEwpOworCisJ
cmV0dXJuIFB5X0J1aWxkVmFsdWUoImkiLCBmc2lfaW5pdCgpKTsKK30KKwog
UHlEb2NfU1RSVkFSKGZzaW1hZ2Vfb3Blbl9fZG9jX18sCiAgICAgIm9wZW4o
bmFtZSwgW29mZnNldD1vZmZdKSAtIE9wZW4gdGhlIGdpdmVuIGZpbGUgYXMg
YSBmaWxlc3lzdGVtIGltYWdlLlxuIgogICAgICJcbiIKQEAgLTI5Nyw3ICsz
MDYsMTMgQEAgUHlEb2NfU1RSVkFSKGZzaW1hZ2VfZ2V0Ym9vdHN0cmluZ19f
ZG9jX18sCiAgICAgImdldGJvb3RzdHJpbmcoZnMpIC0gUmV0dXJuIHRoZSBi
b290IHN0cmluZyBuZWVkZWQgZm9yIHRoaXMgZmlsZSBzeXN0ZW0gIgogICAg
ICJvciBOVUxMIGlmIG5vbmUgaXMgbmVlZGVkLlxuIik7CiAKK1B5RG9jX1NU
UlZBUihmc2ltYWdlX2luaXRfX2RvY19fLAorICAgICJpbml0KCkgLSBMb2Fk
cyBldmVyeSBkeW5hbWljIGxpYnJhcnkgY29udGFpbmVkIGluIHhlbmZzaW1h
Z2UgIgorICAgICJpbnRvIG1lbW9yeSBzbyB0aGF0IGl0IGNhbiBiZSB1c2Vk
IGluIGNocm9vdGVkIGVudmlyb25tZW50cy5cbiIpOworCiBzdGF0aWMgc3Ry
dWN0IFB5TWV0aG9kRGVmIGZzaW1hZ2VfbW9kdWxlX21ldGhvZHNbXSA9IHsK
Kwl7ICJpbml0IiwgKFB5Q0Z1bmN0aW9uKWZzaW1hZ2VfaW5pdCwKKwkgICAg
TUVUSF9WQVJBUkdTLCBmc2ltYWdlX2luaXRfX2RvY19fIH0sCiAJeyAib3Bl
biIsIChQeUNGdW5jdGlvbilmc2ltYWdlX29wZW4sCiAJICAgIE1FVEhfVkFS
QVJHU3xNRVRIX0tFWVdPUkRTLCBmc2ltYWdlX29wZW5fX2RvY19fIH0sCiAJ
eyAiZ2V0Ym9vdHN0cmluZyIsIChQeUNGdW5jdGlvbilmc2ltYWdlX2dldGJv
b3RzdHJpbmcsCi0tIAoyLjQyLjAKCg==

--=separator
Content-Type: application/octet-stream; name="xsa443/xsa443-4.16-09.patch"
Content-Disposition: attachment; filename="xsa443/xsa443-4.16-09.patch"
Content-Transfer-Encoding: base64

RnJvbSA0ZDMzMWIwYjkxNGRmYzE3YmQyZDg4M2JjNTVhZWI3OTg5MzA4MzJh
IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBBbGVqYW5kcm8gVmFs
bGVqbyA8YWxlamFuZHJvLnZhbGxlam9AY2xvdWQuY29tPgpEYXRlOiBNb24s
IDI1IFNlcCAyMDIzIDE4OjMyOjI1ICswMTAwClN1YmplY3Q6IFtQQVRDSCAw
OS8xMV0gdG9vbHMvcHlncnViOiBEZXByaXZpbGVnZSBweWdydWIKCkludHJv
ZHVjZSBhIC0tcnVuYXM9PHVpZD4gZmxhZyB0byBkZXByaXZpbGVnZSBweWdy
dWIgb24gTGludXggYW5kICpCU0RzLiBJdAphbHNvIGltcGxpY2l0bHkgY3Jl
YXRlcyBhIGNocm9vdCBlbnYgd2hlcmUgaXQgZHJvcHMgYSBkZXByaXZpbGVn
ZWQgZm9ya2VkCnByb2Nlc3MuIFRoZSBjaHJvb3QgaXRzZWxmIGlzIGNsZWFu
ZWQgdXAgYXQgdGhlIGVuZC4KCklmIHRoZSAtLXJ1bmFzIGFyZyBpcyBwcmVz
ZW50LCB0aGVuIHB5Z3J1YiBmb3JrcywgbGVhdmluZyB0aGUgY2hpbGQgdG8K
ZGVwcml2aWxlZ2UgaXRzZWxmLCBhbmQgd2FpdGluZyBmb3IgaXQgdG8gY29t
cGxldGUuIFdoZW4gdGhlIGNoaWxkIGV4aXN0cywKdGhlIHBhcmVudCBwZXJm
b3JtcyBjbGVhbnVwIGFuZCBleGl0cyB3aXRoIHRoZSBzYW1lIGVycm9yIGNv
ZGUuCgpUaGlzIGlzIHJvdWdobHkgd2hhdCB0aGUgY2hpbGQgZG9lczoKICAx
LiBJbml0aWFsaXplIGxpYmZzaW1hZ2UgKHRoaXMgbG9hZHMgZXZlcnkgLnNv
IGluIG1lbW9yeSBzbyB0aGUgY2hyb290CiAgICAgY2FuIGF2b2lkIGJpbmQt
bW91bnRpbmcgL3ssdXNyfS9saWIqCiAgMi4gQ3JlYXRlIGEgdGVtcG9yYXJ5
IGVtcHR5IGNocm9vdCBkaXJlY3RvcnkKICAzLiBNb3VudCB0bXBmcyBpbiBp
dAogIDQuIEJpbmQgbW91bnQgdGhlIGRpc2sgaW5zaWRlLCBiZWNhdXNlIGxp
YmZzaW1hZ2UgZXhwZWN0cyBhIHBhdGgsIG5vdCBhCiAgICAgZmlsZSBkZXNj
cmlwdG9yLgogIDUuIFJlbW91bnQgdGhlIHJvb3QgdG1wZnMgdG8gYmUgc3Ry
aWN0ZXIgKHJvLG5vc3VpZCxub2RldikKICA2LiBTZXQgUkxJTUlUX0ZTSVpF
IHRvIGEgc2Vuc2libHkgaGlnaCBhbW91bnQgKDEyOCBNaUIpCiAgNy4gRGVw
cml2IGdpZCwgZ3JvdXBzIGFuZCB1aWQKCldpdGggdGhpcyBzY2hlbWUgaW4g
cGxhY2UsIHRoZSAib3V0cHV0IiBmaWxlcyBhcmUgd3JpdGFibGUgKHVwIHRv
ClJMSU1JVF9GU0laRSBvY3RldHMpIGFuZCB0aGUgZXhwb3NlZCBmaWxlc3lz
dGVtIGlzIGltbXV0YWJsZSBhbmQgY29udGFpbnMKdGhlIHNpbmdsZSBvbmx5
IGZpbGUgd2UgY2FuJ3QgZWFzaWx5IGdldCByaWQgb2YgKHRoZSBkaXNrKS4K
CklmIHJ1bm5pbmcgb24gTGludXgsIHRoZSBjaGlsZCBwcm9jZXNzIGFsc28g
dW5zaGFyZXMgbW91bnQsIElQQywgYW5kCm5ldHdvcmsgbmFtZXNwYWNlcyBi
ZWZvcmUgZHJvcHBpbmcgaXRzIHByaXZpbGVnZXMuCgpUaGlzIGlzIHBhcnQg
b2YgWFNBLTQ0MyAvIENWRS0yMDIzLTM0MzI1CgpTaWduZWQtb2ZmLWJ5OiBB
bGVqYW5kcm8gVmFsbGVqbyA8YWxlamFuZHJvLnZhbGxlam9AY2xvdWQuY29t
PgpBY2tlZC1ieTogQW5kcmV3IENvb3BlciA8YW5kcmV3LmNvb3BlcjNAY2l0
cml4LmNvbT4KLS0tCiB0b29scy9weWdydWIvc2V0dXAucHkgICB8ICAgMiAr
LQogdG9vbHMvcHlncnViL3NyYy9weWdydWIgfCAxNjIgKysrKysrKysrKysr
KysrKysrKysrKysrKysrKysrKysrKysrKy0tLQogMiBmaWxlcyBjaGFuZ2Vk
LCAxNTQgaW5zZXJ0aW9ucygrKSwgMTAgZGVsZXRpb25zKC0pCgpkaWZmIC0t
Z2l0IGEvdG9vbHMvcHlncnViL3NldHVwLnB5IGIvdG9vbHMvcHlncnViL3Nl
dHVwLnB5CmluZGV4IGI4ZjFkYzQ1OTBjZi4uZjE2MTg3YjZkMTE4IDEwMDY0
NAotLS0gYS90b29scy9weWdydWIvc2V0dXAucHkKKysrIGIvdG9vbHMvcHln
cnViL3NldHVwLnB5CkBAIC0xNyw3ICsxNyw3IEBAIHhlbmZzaW1hZ2UgPSBF
eHRlbnNpb24oInhlbmZzaW1hZ2UiLAogcGtncyA9IFsgJ2dydWInIF0KIAog
c2V0dXAobmFtZT0ncHlncnViJywKLSAgICAgIHZlcnNpb249JzAuNicsCisg
ICAgICB2ZXJzaW9uPScwLjcnLAogICAgICAgZGVzY3JpcHRpb249J0Jvb3Qg
bG9hZGVyIHRoYXQgbG9va3MgYSBsb3QgbGlrZSBncnViIGZvciBYZW4nLAog
ICAgICAgYXV0aG9yPSdKZXJlbXkgS2F0eicsCiAgICAgICBhdXRob3JfZW1h
aWw9J2thdHpqQHJlZGhhdC5jb20nLApkaWZmIC0tZ2l0IGEvdG9vbHMvcHln
cnViL3NyYy9weWdydWIgYi90b29scy9weWdydWIvc3JjL3B5Z3J1YgppbmRl
eCA5MWUyZWMyYWIxMDUuLjdjZWE0OTZhZGUwOCAxMDA3NTUKLS0tIGEvdG9v
bHMvcHlncnViL3NyYy9weWdydWIKKysrIGIvdG9vbHMvcHlncnViL3NyYy9w
eWdydWIKQEAgLTE2LDggKzE2LDExIEBAIGZyb20gX19mdXR1cmVfXyBpbXBv
cnQgcHJpbnRfZnVuY3Rpb24KIAogaW1wb3J0IG9zLCBzeXMsIHN0cmluZywg
c3RydWN0LCB0ZW1wZmlsZSwgcmUsIHRyYWNlYmFjaywgc3RhdCwgZXJybm8K
IGltcG9ydCBjb3B5CitpbXBvcnQgY3R5cGVzLCBjdHlwZXMudXRpbAogaW1w
b3J0IGxvZ2dpbmcKIGltcG9ydCBwbGF0Zm9ybQoraW1wb3J0IHJlc291cmNl
CitpbXBvcnQgc3VicHJvY2VzcwogCiBpbXBvcnQgY3Vyc2VzLCBfY3Vyc2Vz
LCBjdXJzZXMudGV4dHBhZCwgY3Vyc2VzLmFzY2lpCiBpbXBvcnQgZ2V0b3B0
CkBAIC0yNywxMCArMzAsMTM1IEBAIGltcG9ydCBncnViLkdydWJDb25mCiBp
bXBvcnQgZ3J1Yi5MaWxvQ29uZgogaW1wb3J0IGdydWIuRXh0TGludXhDb25m
CiAKLVBZR1JVQl9WRVIgPSAwLjYKK1BZR1JVQl9WRVIgPSAwLjcKIEZTX1JF
QURfTUFYID0gMTAyNCAqIDEwMjQKIFNFQ1RPUl9TSVpFID0gNTEyCiAKKyMg
VW5sZXNzIHByb3ZpZGVkIHRocm91Z2ggdGhlIGVudiB2YXJpYWJsZSBQWUdS
VUJfTUFYX0ZJTEVfU0laRV9NQiwgdGhlbgorIyB0aGlzIGlzIHRoZSBtYXhp
bXVtIGZpbGVzaXplIGFsbG93ZWQgZm9yIGZpbGVzIHdyaXR0ZW4gYnkgdGhl
IGRlcHJpdgorIyBweWdydWIKK0xJTUlUX0ZTSVpFID0gMTI4IDw8IDIwCisK
K0NMT05FX05FV05TID0gMHgwMDAyMDAwMCAjIG1vdW50IG5hbWVzcGFjZQor
Q0xPTkVfTkVXTkVUID0gMHg0MDAwMDAwMCAjIG5ldHdvcmsgbmFtZXNwYWNl
CitDTE9ORV9ORVdJUEMgPSAweDA4MDAwMDAwICMgSVBDIG5hbWVzcGFjZQor
CitkZWYgdW5zaGFyZShmbGFncyk6CisgICAgaWYgbm90IHN5cy5wbGF0Zm9y
bS5zdGFydHN3aXRoKCJsaW51eCIpOgorICAgICAgICBwcmludCgic2tpcF91
bnNoYXJlIHJlYXNvbj1ub3RfbGludXggcGxhdGZvcm09JXMiLCBzeXMucGxh
dGZvcm0sIGZpbGU9c3lzLnN0ZGVycikKKyAgICAgICAgcmV0dXJuCisKKyAg
ICBsaWJjID0gY3R5cGVzLkNETEwoY3R5cGVzLnV0aWwuZmluZF9saWJyYXJ5
KCdjJyksIHVzZV9lcnJubz1UcnVlKQorICAgIHVuc2hhcmVfcHJvdG90eXBl
ID0gY3R5cGVzLkNGVU5DVFlQRShjdHlwZXMuY19pbnQsIGN0eXBlcy5jX2lu
dCwgdXNlX2Vycm5vPVRydWUpCisgICAgdW5zaGFyZSA9IHVuc2hhcmVfcHJv
dG90eXBlKCgndW5zaGFyZScsIGxpYmMpKQorCisgICAgaWYgdW5zaGFyZShm
bGFncykgPCAwOgorICAgICAgICByYWlzZSBPU0Vycm9yKGN0eXBlcy5nZXRf
ZXJybm8oKSwgb3Muc3RyZXJyb3IoY3R5cGVzLmdldF9lcnJubygpKSkKKwor
ZGVmIGJpbmRfbW91bnQoc3JjLCBkc3QsIG9wdGlvbnMpOgorICAgIG9wZW4o
ZHN0LCAiYSIpLmNsb3NlKCkgIyB0b3VjaAorCisgICAgcmMgPSBzdWJwcm9j
ZXNzLmNhbGwoWyJtb3VudCIsICItLWJpbmQiLCAiLW8iLCBvcHRpb25zLCBz
cmMsIGRzdF0pCisgICAgaWYgcmMgIT0gMDoKKyAgICAgICAgcmFpc2UgUnVu
dGltZUVycm9yKCJiYWRfbW91bnQ6IHNyYz0lcyBkc3Q9JXMgb3B0cz0lcyIg
JQorICAgICAgICAgICAgICAgICAgICAgICAgICAgKHNyYywgZHN0LCBvcHRp
b25zKSkKKworZGVmIGRvd25ncmFkZV9ybGltaXRzKCk6CisgICAgIyBXaXBl
IHRoZSBhdXRob3JpdHkgdG8gdXNlIHVucmVxdWlyZWQgcmVzb3VyY2VzCisg
ICAgcmVzb3VyY2Uuc2V0cmxpbWl0KHJlc291cmNlLlJMSU1JVF9OUFJPQywg
ICAgKDAsIDApKQorICAgIHJlc291cmNlLnNldHJsaW1pdChyZXNvdXJjZS5S
TElNSVRfQ09SRSwgICAgICgwLCAwKSkKKyAgICByZXNvdXJjZS5zZXRybGlt
aXQocmVzb3VyY2UuUkxJTUlUX01FTUxPQ0ssICAoMCwgMCkpCisKKyAgICAj
IHB5MidzIHJlc291cmNlIG1vZHVsZSBkb2Vzbid0IGtub3cgYWJvdXQgcmVz
b3VyY2UuUkxJTUlUX01TR1FVRVVFCisgICAgIworICAgICMgVE9ETzogVXNl
IHJlc291cmNlLlJMSU1JVF9NU0dRVUVVRSBhZnRlciBweXRob24yIGlzIGRl
cHJlY2F0ZWQKKyAgICBpZiBzeXMucGxhdGZvcm0uc3RhcnRzd2l0aCgnbGlu
dXgnKToKKyAgICAgICAgUkxJTUlUX01TR1FVRVVFID0gMTIKKyAgICAgICAg
cmVzb3VyY2Uuc2V0cmxpbWl0KFJMSU1JVF9NU0dRVUVVRSwgKDAsIDApKQor
CisgICAgIyBUaGUgZmluYWwgbG9vayBvZiB0aGUgZmlsZXN5c3RlbSBmb3Ig
dGhpcyBwcm9jZXNzIGlzIGZ1bGx5IFJPLCBidXQKKyAgICAjIG5vdGUgd2Ug
aGF2ZSBzb21lIGZpbGUgZGVzY3JpcHRvciBhbHJlYWR5IG9wZW4gKG5vdGFi
bHksIGtlcm5lbCBhbmQKKyAgICAjIHJhbWRpc2spLiBJbiBvcmRlciB0byBh
dm9pZCBhIGNvbXByb21pc2VkIHB5Z3J1YiBmcm9tIGZpbGxpbmcgdXAgdGhl
CisgICAgIyBmaWxlc3lzdGVtIHdlIHNldCBSTElNSVRfRlNJWkUgdG8gYSBo
aWdoIGJvdW5kLCBzbyB0aGF0IHRoZSBmaWxlCisgICAgIyB3cml0ZSBwZXJt
aXNzaW9ucyBhcmUgYm91bmQuCisgICAgZnNpemUgPSBMSU1JVF9GU0laRQor
ICAgIGlmICJQWUdSVUJfTUFYX0ZJTEVfU0laRV9NQiIgaW4gb3MuZW52aXJv
bi5rZXlzKCk6CisgICAgICAgIGZzaXplID0gb3MuZW52aXJvblsiUFlHUlVC
X01BWF9GSUxFX1NJWkVfTUIiXSA8PCAyMAorCisgICAgcmVzb3VyY2Uuc2V0
cmxpbWl0KHJlc291cmNlLlJMSU1JVF9GU0laRSwgKGZzaXplLCBmc2l6ZSkp
CisKK2RlZiBkZXByaXYob3V0cHV0X2RpcmVjdG9yeSwgb3V0cHV0LCBkZXZp
Y2UsIHVpZCwgcGF0aF9rZXJuZWwsIHBhdGhfcmFtZGlzayk6CisgICAgIyBU
aGUgb25seSBwb2ludCBvZiB0aGlzIGNhbGwgaXMgdG8gZm9yY2UgdGhlIGxv
YWRpbmcgb2YgbGliZnNpbWFnZS4KKyAgICAjIFRoYXQgd2F5LCB3ZSBkb24n
dCBuZWVkIHRvIGJpbmQtbW91bnQgaXQgaW50byB0aGUgY2hyb290CisgICAg
cmMgPSB4ZW5mc2ltYWdlLmluaXQoKQorICAgIGlmIHJjICE9IDA6CisgICAg
ICAgIG9zLnVubGluayhwYXRoX3JhbWRpc2spCisgICAgICAgIG9zLnVubGlu
ayhwYXRoX2tlcm5lbCkKKyAgICAgICAgcmFpc2UgUnVudGltZUVycm9yKCJi
YWRfeGVuZnNpbWFnZTogcmM9JWQiICUgcmMpCisKKyAgICAjIENyZWF0ZSBh
IHRlbXBvcmFyeSBkaXJlY3RvcnkgZm9yIHRoZSBjaHJvb3QKKyAgICBjaHJv
b3QgPSB0ZW1wZmlsZS5ta2R0ZW1wKHByZWZpeD1zdHIodWlkKSsnLScsIGRp
cj1vdXRwdXRfZGlyZWN0b3J5KSArICcvJworICAgIGRldmljZV9wYXRoID0g
Jy9kZXZpY2UnCisKKyAgICBwaWQgPSBvcy5mb3JrKCkKKyAgICBpZiBwaWQ6
CisgICAgICAgICMgcGFyZW50CisgICAgICAgIF8sIHJjID0gb3Mud2FpdHBp
ZChwaWQsIDApCisKKyAgICAgICAgZm9yIHBhdGggaW4gW3BhdGhfa2VybmVs
LCBwYXRoX3JhbWRpc2tdOgorICAgICAgICAgICAgIyBJZiB0aGUgY2hpbGQg
ZGlkbid0IHdyaXRlIGFueXRoaW5nLCBqdXN0IGdldCByaWQgb2YgaXQsCisg
ICAgICAgICAgICAjIG90aGVyd2lzZSB3ZSBlbmQgdXAgY29uc3VtaW5nIGEg
MC1zaXplIGZpbGUgd2hlbiBwYXJzaW5nCisgICAgICAgICAgICAjIHN5c3Rl
bXMgd2l0aG91dCBhIHJhbWRpc2sgdGhhdCB0aGUgdWx0aW1hdGUgY2FsbGVy
IG9mIHB5Z3J1YgorICAgICAgICAgICAgIyBtYXkganVzdCBiZSB1bmF3YXJl
IG9mCisgICAgICAgICAgICBpZiByYyAhPSAwIG9yIG9zLnBhdGguZ2V0c2l6
ZShwYXRoKSA9PSAwOgorICAgICAgICAgICAgICAgIG9zLnVubGluayhwYXRo
KQorCisgICAgICAgICMgTm9ybWFsbHksIHVuc2hhcmUoQ0xPTkVfTkVXTlMp
IHdpbGwgZW5zdXJlIHRoaXMgaXMgbm90IHJlcXVpcmVkLgorICAgICAgICAj
IEhvd2V2ZXIsIHRoaXMgc3lzY2FsbCBkb2Vzbid0IGV4aXN0IGluICpCU0Qg
c3lzdGVtcyBhbmQgZG9lc24ndAorICAgICAgICAjIGF1dG8tdW5tb3VudCBl
dmVyeXRoaW5nIG9uIG9sZGVyIExpbnV4IGtlcm5lbHMgKEF0IGxlYXN0IGFz
IG9mCisgICAgICAgICMgTGludXggNC4xOSwgYnV0IGl0IHNlZW1zIGZpeGVk
IGluIDUuMTUpLiBFaXRoZXIgd2F5LAorICAgICAgICAjIHJlY3Vyc2l2ZWx5
IHVubW91bnQgZXZlcnl0aGluZyBpZiBuZWVkZWQuIFF1aWV0bHkuCisgICAg
ICAgIHdpdGggb3BlbignL2Rldi9udWxsJywgJ3cnKSBhcyBkZXZudWxsOgor
ICAgICAgICAgICAgc3VicHJvY2Vzcy5jYWxsKFsidW1vdW50IiwgIi1mIiwg
Y2hyb290ICsgZGV2aWNlX3BhdGhdLAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIHN0ZG91dD1kZXZudWxsLCBzdGRlcnI9ZGV2bnVsbCkKKyAgICAg
ICAgICAgIHN1YnByb2Nlc3MuY2FsbChbInVtb3VudCIsICItZiIsIGNocm9v
dF0sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Rkb3V0PWRldm51
bGwsIHN0ZGVycj1kZXZudWxsKQorICAgICAgICBvcy5ybWRpcihjaHJvb3Qp
CisKKyAgICAgICAgc3lzLmV4aXQocmMpCisKKyAgICAjIEJ5IHVuc2hhcmlu
ZyB0aGUgbmFtZXNwYWNlIHdlJ3JlIG1ha2luZyBzdXJlIGl0J3MgYWxsIGJ1
bGstcmVsZWFzZWQKKyAgICAjIGF0IHRoZSBlbmQsIHdoZW4gdGhlIG5hbWVz
cGFjZXMgZGlzYXBwZWFyLiBUaGlzIG1lYW5zIHRoZSBrZXJuZWwgZG9lcwor
ICAgICMgKGFsbW9zdCkgYWxsIHRoZSBjbGVhbnVwIGZvciB1cyBhbmQgdGhl
IHBhcmVudCBqdXN0IGhhcyB0byByZW1vdmUgdGhlCisgICAgIyB0ZW1wb3Jh
cnkgZGlyZWN0b3J5LgorICAgIHVuc2hhcmUoQ0xPTkVfTkVXTlMgfCBDTE9O
RV9ORVdJUEMgfCBDTE9ORV9ORVdORVQpCisKKyAgICAjIFNldCBzZW5zaWJs
ZSBsaW1pdHMgdXNpbmcgdGhlIHNldHJsaW1pdCBpbnRlcmZhY2UKKyAgICBk
b3duZ3JhZGVfcmxpbWl0cygpCisKKyAgICAjIFdlJ2xsIG1vdW50IHRtcGZz
IG9uIHRoZSBjaHJvb3QgdG8gZW5zdXJlIHRoZSBkZXByaXZpbGVnZWQgY2hp
bGQKKyAgICAjIGNhbm5vdCBhZmZlY3QgdGhlIHBlcnNpc3RlbnQgc3RhdGUu
IEl0J3MgUlcgbm93IGluIG9yZGVyIHRvCisgICAgIyBiaW5kLW1vdW50IHRo
ZSBkZXZpY2UsIGJ1dCBub3RlIGl0J3MgcmVtb3VudGVkIFJPIGFmdGVyIHRo
YXQuCisgICAgcmMgPSBzdWJwcm9jZXNzLmNhbGwoWyJtb3VudCIsICItdCIs
ICJ0bXBmcyIsICJub25lIiwgY2hyb290XSkKKyAgICBpZiByYyAhPSAwOgor
ICAgICAgICByYWlzZSBSdW50aW1lRXJyb3IoIm1vdW50X3RtcGZzIHJjPSVk
IGRzdD1cIiVzXCIiICUgKHJjLCBjaHJvb3QpKQorCisgICAgIyBCaW5kIHRo
ZSB1bnRydXN0ZWQgZGV2aWNlIFJPCisgICAgYmluZF9tb3VudChkZXZpY2Us
IGNocm9vdCArIGRldmljZV9wYXRoLCAicm8sbm9zdWlkLG5vZXhlYyIpCisK
KyAgICByYyA9IHN1YnByb2Nlc3MuY2FsbChbIm1vdW50IiwgIi10IiwgInRt
cGZzIiwgIi1vIiwgInJlbW91bnQscm8sbm9zdWlkLG5vZXhlYyxub2RldiIs
ICJub25lIiwgY2hyb290XSkKKyAgICBpZiByYyAhPSAwOgorICAgICAgICBy
YWlzZSBSdW50aW1lRXJyb3IoInJlbW91bnRfdG1wZnMgcmM9JWQgZHN0PVwi
JXNcIiIgJSAocmMsIGNocm9vdCkpCisKKyAgICAjIERyb3Agc3VwZXJwb3dl
cnMhCisgICAgb3MuY2hyb290KGNocm9vdCkKKyAgICBvcy5jaGRpcignLycp
CisgICAgb3Muc2V0Z2lkKHVpZCkKKyAgICBvcy5zZXRncm91cHMoW3VpZF0p
CisgICAgb3Muc2V0dWlkKHVpZCkKKworICAgIHJldHVybiBkZXZpY2VfcGF0
aAorCiBkZWYgcmVhZF9zaXplX3JvdW5kdXAoZmQsIHNpemUpOgogICAgIGlm
IHBsYXRmb3JtLnN5c3RlbSgpICE9ICdGcmVlQlNEJzoKICAgICAgICAgcmV0
dXJuIHNpemUKQEAgLTczNiw3ICs4NjQsNyBAQCBpZiBfX25hbWVfXyA9PSAi
X19tYWluX18iOgogICAgIHNlbCA9IE5vbmUKICAgICAKICAgICBkZWYgdXNh
Z2UoKToKLSAgICAgICAgcHJpbnQoIlVzYWdlOiAlcyBbLXF8LS1xdWlldF0g
Wy1pfC0taW50ZXJhY3RpdmVdIFstbHwtLWxpc3QtZW50cmllc10gWy1ufC0t
bm90LXJlYWxseV0gWy0tb3V0cHV0PV0gWy0ta2VybmVsPV0gWy0tcmFtZGlz
az1dIFstLWFyZ3M9XSBbLS1lbnRyeT1dIFstLW91dHB1dC1kaXJlY3Rvcnk9
XSBbLS1vdXRwdXQtZm9ybWF0PXN4cHxzaW1wbGV8c2ltcGxlMF0gWy0tb2Zm
c2V0PV0gPGltYWdlPiIgJShzeXMuYXJndlswXSwpLCBmaWxlPXN5cy5zdGRl
cnIpCisgICAgICAgIHByaW50KCJVc2FnZTogJXMgWy1xfC0tcXVpZXRdIFst
aXwtLWludGVyYWN0aXZlXSBbLWx8LS1saXN0LWVudHJpZXNdIFstbnwtLW5v
dC1yZWFsbHldIFstLW91dHB1dD1dIFstLWtlcm5lbD1dIFstLXJhbWRpc2s9
XSBbLS1hcmdzPV0gWy0tZW50cnk9XSBbLS1vdXRwdXQtZGlyZWN0b3J5PV0g
Wy0tb3V0cHV0LWZvcm1hdD1zeHB8c2ltcGxlfHNpbXBsZTBdIFstLXJ1bmFz
PV0gWy0tb2Zmc2V0PV0gPGltYWdlPiIgJShzeXMuYXJndlswXSwpLCBmaWxl
PXN5cy5zdGRlcnIpCiAKICAgICBkZWYgY29weV9mcm9tX2ltYWdlKGZzLCBm
aWxlX3RvX3JlYWQsIGZpbGVfdHlwZSwgZmRfZHN0LCBwYXRoX2RzdCwgbm90
X3JlYWxseSk6CiAgICAgICAgIGlmIG5vdF9yZWFsbHk6CkBAIC03NjAsNyAr
ODg4LDggQEAgaWYgX19uYW1lX18gPT0gIl9fbWFpbl9fIjoKICAgICAgICAg
ICAgICAgICBvcy53cml0ZShmZF9kc3QsIGRhdGEpCiAgICAgICAgICAgICBl
eGNlcHQgRXhjZXB0aW9uIGFzIGU6CiAgICAgICAgICAgICAgICAgcHJpbnQo
ZSwgZmlsZT1zeXMuc3RkZXJyKQotICAgICAgICAgICAgICAgIG9zLnVubGlu
ayhwYXRoX2RzdCkKKyAgICAgICAgICAgICAgICBpZiBwYXRoX2RzdDoKKyAg
ICAgICAgICAgICAgICAgICAgb3MudW5saW5rKHBhdGhfZHN0KQogICAgICAg
ICAgICAgICAgIGRlbCBkYXRhZmlsZQogICAgICAgICAgICAgICAgIHN5cy5l
eGl0KCJFcnJvciB3cml0aW5nIHRlbXBvcmFyeSBjb3B5IG9mICIrZmlsZV90
eXBlKQogICAgICAgICAgICAgZGF0YW9mZiArPSBsZW4oZGF0YSkKQEAgLTc2
OSw3ICs4OTgsNyBAQCBpZiBfX25hbWVfXyA9PSAiX19tYWluX18iOgogICAg
ICAgICBvcHRzLCBhcmdzID0gZ2V0b3B0LmdudV9nZXRvcHQoc3lzLmFyZ3Zb
MTpdLCAncWlsbmg6OicsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIFsicXVpZXQiLCAiaW50ZXJhY3RpdmUiLCAibGlzdC1lbnRyaWVz
IiwgIm5vdC1yZWFsbHkiLCAiaGVscCIsCiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAib3V0cHV0PSIsICJvdXRwdXQtZm9ybWF0PSIs
ICJvdXRwdXQtZGlyZWN0b3J5PSIsICJvZmZzZXQ9IiwKLSAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICJlbnRyeT0iLCAia2VybmVsPSIs
IAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInJ1bmFz
PSIsICJlbnRyeT0iLCAia2VybmVsPSIsCiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAicmFtZGlzaz0iLCAiYXJncz0iLCAiaXNjb25m
aWciLCAiZGVidWciXSkKICAgICBleGNlcHQgZ2V0b3B0LkdldG9wdEVycm9y
OgogICAgICAgICB1c2FnZSgpCkBAIC03OTAsNiArOTE5LDcgQEAgaWYgX19u
YW1lX18gPT0gIl9fbWFpbl9fIjoKICAgICBub3RfcmVhbGx5ID0gRmFsc2UK
ICAgICBvdXRwdXRfZm9ybWF0ID0gInN4cCIKICAgICBvdXRwdXRfZGlyZWN0
b3J5ID0gIi92YXIvcnVuL3hlbi9weWdydWIvIgorICAgIHVpZCA9IE5vbmUK
IAogICAgICMgd2hhdCB3YXMgcGFzc2VkIGluCiAgICAgaW5jZmcgPSB7ICJr
ZXJuZWwiOiBOb25lLCAicmFtZGlzayI6IE5vbmUsICJhcmdzIjogIiIgfQpA
QCAtODEzLDYgKzk0MywxMyBAQCBpZiBfX25hbWVfXyA9PSAiX19tYWluX18i
OgogICAgICAgICBlbGlmIG8gaW4gKCItLW91dHB1dCIsKToKICAgICAgICAg
ICAgIGlmIGEgIT0gIi0iOgogICAgICAgICAgICAgICAgIG91dHB1dCA9IGEK
KyAgICAgICAgZWxpZiBvIGluICgiLS1ydW5hcyIsKToKKyAgICAgICAgICAg
IHRyeToKKyAgICAgICAgICAgICAgICB1aWQgPSBpbnQoYSkKKyAgICAgICAg
ICAgIGV4Y2VwdCBWYWx1ZUVycm9yOgorICAgICAgICAgICAgICAgIHByaW50
KCJydW5hcyB2YWx1ZSBtdXN0IGJlIGFuIGludGVnZXIgdXNlciBpZCIpCisg
ICAgICAgICAgICAgICAgdXNhZ2UoKQorICAgICAgICAgICAgICAgIHN5cy5l
eGl0KDEpCiAgICAgICAgIGVsaWYgbyBpbiAoIi0ta2VybmVsIiwpOgogICAg
ICAgICAgICAgaW5jZmdbImtlcm5lbCJdID0gYQogICAgICAgICBlbGlmIG8g
aW4gKCItLXJhbWRpc2siLCk6CkBAIC04NDksNiArOTg2LDEwIEBAIGlmIF9f
bmFtZV9fID09ICJfX21haW5fXyI6CiAgICAgaWYgZGVidWc6CiAgICAgICAg
IGxvZ2dpbmcuYmFzaWNDb25maWcobGV2ZWw9bG9nZ2luZy5ERUJVRykKIAor
ICAgIGlmIGludGVyYWN0aXZlIGFuZCB1aWQ6CisgICAgICAgIHByaW50KCJJ
biBvcmRlciB0byB1c2UgLS1ydW5hcywgeW91IG11c3QgYWxzbyBzZXQgLS1l
bnRyeSBvciAtcSIsIGZpbGU9c3lzLnN0ZGVycikKKyAgICAgICAgc3lzLmV4
aXQoMSkKKwogICAgIHRyeToKICAgICAgICAgb3MubWFrZWRpcnMob3V0cHV0
X2RpcmVjdG9yeSwgMG83MDApCiAgICAgZXhjZXB0IE9TRXJyb3IgYXMgZToK
QEAgLTg3MCw2ICsxMDExLDkgQEAgaWYgX19uYW1lX18gPT0gIl9fbWFpbl9f
IjoKICAgICBlbHNlOgogICAgICAgICBmZCA9IG9zLm9wZW4ob3V0cHV0LCBv
cy5PX1dST05MWSkKIAorICAgIGlmIHVpZDoKKyAgICAgICAgZmlsZSA9IGRl
cHJpdihvdXRwdXRfZGlyZWN0b3J5LCBvdXRwdXQsIGZpbGUsIHVpZCwgcGF0
aF9rZXJuZWwsIHBhdGhfcmFtZGlzaykKKwogICAgICMgZGVidWcKICAgICBp
ZiBpc2NvbmZpZzoKICAgICAgICAgY2hvc2VuY2ZnID0gcnVuX2dydWIoZmls
ZSwgZW50cnksIGZzLCBpbmNmZ1siYXJncyJdKQpAQCAtOTI1LDIxICsxMDY5
LDIxIEBAIGlmIF9fbmFtZV9fID09ICJfX21haW5fXyI6CiAgICAgICAgIHJh
aXNlIFJ1bnRpbWVFcnJvcigiVW5hYmxlIHRvIGZpbmQgcGFydGl0aW9uIGNv
bnRhaW5pbmcga2VybmVsIikKIAogICAgIGNvcHlfZnJvbV9pbWFnZShmcywg
Y2hvc2VuY2ZnWyJrZXJuZWwiXSwgImtlcm5lbCIsCi0gICAgICAgICAgICAg
ICAgICAgIGZkX2tlcm5lbCwgcGF0aF9rZXJuZWwsIG5vdF9yZWFsbHkpCisg
ICAgICAgICAgICAgICAgICAgIGZkX2tlcm5lbCwgTm9uZSBpZiB1aWQgZWxz
ZSBwYXRoX2tlcm5lbCwgbm90X3JlYWxseSkKICAgICBib290Y2ZnWyJrZXJu
ZWwiXSA9IHBhdGhfa2VybmVsCiAKICAgICBpZiBjaG9zZW5jZmdbInJhbWRp
c2siXToKICAgICAgICAgdHJ5OgogICAgICAgICAgICAgY29weV9mcm9tX2lt
YWdlKGZzLCBjaG9zZW5jZmdbInJhbWRpc2siXSwgInJhbWRpc2siLAotICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGZkX3JhbWRpc2ssIHBhdGhfcmFt
ZGlzaywgbm90X3JlYWxseSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBmZF9yYW1kaXNrLCBOb25lIGlmIHVpZCBlbHNlIHBhdGhfcmFtZGlzaywg
bm90X3JlYWxseSkKICAgICAgICAgZXhjZXB0OgotICAgICAgICAgICAgaWYg
bm90IG5vdF9yZWFsbHk6Ci0gICAgICAgICAgICAgICAgb3MudW5saW5rKHBh
dGhfa2VybmVsKQorICAgICAgICAgICAgaWYgbm90IHVpZCBhbmQgbm90IG5v
dF9yZWFsbHk6CisgICAgICAgICAgICAgICAgICAgIG9zLnVubGluayhwYXRo
X2tlcm5lbCkKICAgICAgICAgICAgIHJhaXNlCiAgICAgICAgIGJvb3RjZmdb
InJhbWRpc2siXSA9IHBhdGhfcmFtZGlzawogICAgIGVsc2U6CiAgICAgICAg
IGluaXRyZCA9IE5vbmUKLSAgICAgICAgaWYgbm90IG5vdF9yZWFsbHk6Cisg
ICAgICAgIGlmIG5vdCB1aWQgYW5kIG5vdCBub3RfcmVhbGx5OgogICAgICAg
ICAgICAgb3MudW5saW5rKHBhdGhfcmFtZGlzaykKIAogICAgIGFyZ3MgPSBO
b25lCi0tIAoyLjQyLjAKCg==

--=separator
Content-Type: application/octet-stream; name="xsa443/xsa443-4.16-10.patch"
Content-Disposition: attachment; filename="xsa443/xsa443-4.16-10.patch"
Content-Transfer-Encoding: base64

RnJvbSBhNWJlN2U4YjA1NGY1ODZhZDkzNGU3ODYyMzJhZjI5ZmRjNmUzZWFk
IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBSb2dlciBQYXUgTW9u
bmUgPHJvZ2VyLnBhdUBjaXRyaXguY29tPgpEYXRlOiBNb24sIDI1IFNlcCAy
MDIzIDE0OjMwOjIwICswMjAwClN1YmplY3Q6IFtQQVRDSCAxMC8xMV0gbGli
eGw6IGFkZCBzdXBwb3J0IGZvciBydW5uaW5nIGJvb3Rsb2FkZXIgaW4gcmVz
dHJpY3RlZAogbW9kZQpNSU1FLVZlcnNpb246IDEuMApDb250ZW50LVR5cGU6
IHRleHQvcGxhaW47IGNoYXJzZXQ9VVRGLTgKQ29udGVudC1UcmFuc2Zlci1F
bmNvZGluZzogOGJpdAoKTXVjaCBsaWtlIHRoZSBkZXZpY2UgbW9kZWwgZGVw
cml2IG1vZGUsIGFkZCB0aGUgc2FtZSBraW5kIG9mIHN1cHBvcnQgZm9yIHRo
ZQpib290bG9hZGVyLiAgU3VjaCBmZWF0dXJlIGFsbG93cyBwYXNzaW5nIGEg
VUlEIGFzIGEgcGFyYW1ldGVyIGZvciB0aGUKYm9vdGxvYWRlciB0byBydW4g
YXMsIHRvZ2V0aGVyIHdpdGggdGhlIGJvb3Rsb2FkZXIgaXRzZWxmIHRha2lu
ZyB0aGUgbmVjZXNzYXJ5CmFjdGlvbnMgdG8gaXNvbGF0ZS4KCk5vdGUgdGhh
dCB0aGUgdXNlciB0byBydW4gdGhlIGJvb3Rsb2FkZXIgYXMgbXVzdCBoYXZl
IHRoZSByaWdodCBwZXJtaXNzaW9ucyB0bwphY2Nlc3MgdGhlIGd1ZXN0IGRp
c2sgaW1hZ2UgKGluIHJlYWQgbW9kZSBvbmx5KSwgYW5kIHRoYXQgdGhlIGJv
b3Rsb2FkZXIgd2lsbApiZSBydW4gaW4gbm9uLWludGVyYWN0aXZlIG1vZGUg
d2hlbiByZXN0cmljdGVkLgoKSWYgZW5hYmxlZCBib290bG9hZGVyIHJlc3Ry
aWN0IG1vZGUgd2lsbCBhdHRlbXB0IHRvIHJlLXVzZSB0aGUgdXNlcihzKSBm
cm9tIHRoZQpRRU1VIGRlcHJpdiBpbXBsZW1lbnRhdGlvbiBpZiBubyB1c2Vy
IGlzIHByb3ZpZGVkIG9uIHRoZSBjb25maWd1cmF0aW9uIGZpbGUgb3IKdGhl
IGVudmlyb25tZW50LiAgU2VlIGRvY3MvZmVhdHVyZXMvcWVtdS1kZXByaXZp
bGVnZS5wYW5kb2MgZm9yIG1vcmUKaW5mb3JtYXRpb24gYWJvdXQgaG93IHRv
IHNldHVwIHRob3NlIHVzZXJzLgoKQm9vdGxvYWRlciByZXN0cmljdCBtb2Rl
IGlzIG5vdCBlbmFibGVkIGJ5IGRlZmF1bHQgYXMgaXQgcmVxdWlyZXMgY2Vy
dGFpbgpzZXR1cCB0byBiZSBkb25lIGZpcnN0IChzZXR1cCBvZiB0aGUgdXNl
cihzKSB0byB1c2UgaW4gcmVzdHJpY3QgbW9kZSkuCgpUaGlzIGlzIHBhcnQg
b2YgWFNBLTQ0MyAvIENWRS0yMDIzLTM0MzI1CgpTaWduZWQtb2ZmLWJ5OiBS
b2dlciBQYXUgTW9ubsOpIDxyb2dlci5wYXVAY2l0cml4LmNvbT4KUmV2aWV3
ZWQtYnk6IEFudGhvbnkgUEVSQVJEIDxhbnRob255LnBlcmFyZEBjaXRyaXgu
Y29tPgotLS0KIGRvY3MvbWFuL3hsLjEucG9kLmluICAgICAgICAgICAgICAg
IHwgMzMgKysrKysrKysrKysKIHRvb2xzL2xpYnMvbGlnaHQvbGlieGxfYm9v
dGxvYWRlci5jIHwgODkgKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0K
IHRvb2xzL2xpYnMvbGlnaHQvbGlieGxfZG0uYyAgICAgICAgIHwgIDggKy0t
CiB0b29scy9saWJzL2xpZ2h0L2xpYnhsX2ludGVybmFsLmggICB8ICA4ICsr
KwogNCBmaWxlcyBjaGFuZ2VkLCAxMzEgaW5zZXJ0aW9ucygrKSwgNyBkZWxl
dGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kb2NzL21hbi94bC4xLnBvZC5pbiBi
L2RvY3MvbWFuL3hsLjEucG9kLmluCmluZGV4IDQ1ZTE0MzBhZWI3NC4uOTZl
NmZiMWMzMmEzIDEwMDY0NAotLS0gYS9kb2NzL21hbi94bC4xLnBvZC5pbgor
KysgYi9kb2NzL21hbi94bC4xLnBvZC5pbgpAQCAtMTk3Niw2ICsxOTc2LDM5
IEBAIGlnbm9yZWQ6CiAKID1iYWNrCiAKKz1oZWFkMSBFTlZJUk9OTUVOVCBW
QVJJQUJMRVMKKworVGhlIGZvbGxvd2luZyBlbnZpcm9ubWVudCB2YXJpYWJs
ZXMgc2hhbGwgYWZmZWN0IHRoZSBleGVjdXRpb24gb2YgeGw6CisKKz1vdmVy
IDQKKworPWl0ZW0gTElCWExfQk9PVExPQURFUl9SRVNUUklDVAorCitBdHRl
bXB0IHRvIHJlc3RyaWN0IHRoZSBib290bG9hZGVyIGFmdGVyIHN0YXJ0dXAs
IHRvIGxpbWl0IHRoZQorY29uc2VxdWVuY2VzIG9mIHNlY3VyaXR5IHZ1bG5l
cmFiaWxpdGllcyBkdWUgdG8gcGFyc2luZyBndWVzdAorb3duZWQgaW1hZ2Ug
ZmlsZXMuCisKK1NlZSBkb2NzL2ZlYXR1cmVzL3FlbXUtZGVwcml2aWxlZ2Uu
cGFuZG9jIGZvciBtb3JlIGluZm9ybWF0aW9uCitvbiBob3cgdG8gc2V0dXAg
dGhlIHVucHJpdmlsZWdlZCB1c2Vycy4KKworTm90ZSB0aGF0IHJ1bm5pbmcg
dGhlIGJvb3Rsb2FkZXIgaW4gcmVzdHJpY3RlZCBtb2RlIGFsc28gaW1wbGll
cyB1c2luZworbm9uLWludGVyYWN0aXZlIG1vZGUsIGFuZCB0aGUgZGlzayBp
bWFnZSBtdXN0IGJlIHJlYWRhYmxlIGJ5IHRoZQorcmVzdHJpY3RlZCB1c2Vy
LgorCitIYXZpbmcgdGhpcyB2YXJpYWJsZSBzZXQgaXMgZXF1aXZhbGVudCB0
byBlbmFibGluZyB0aGUgb3B0aW9uLCBldmVuIGlmIHRoZQordmFsdWUgaXMg
MC4KKworPWl0ZW0gTElCWExfQk9PVExPQURFUl9VU0VSCisKK1doZW4gdXNp
bmcgYm9vdGxvYWRlcl9yZXN0cmljdCwgcnVuIHRoZSBib290bG9hZGVyIGFz
IHRoaXMgdXNlci4gIElmCitub3Qgc2V0IHRoZSBkZWZhdWx0IFFFTVUgcmVz
dHJpY3QgdXNlcnMgd2lsbCBiZSB1c2VkLgorCitOT1RFOiBFYWNoIGRvbWFp
biBNVVNUIGhhdmUgYSBTRVBBUkFURSB1c2VybmFtZS4KKworU2VlIGRvY3Mv
ZmVhdHVyZXMvcWVtdS1kZXByaXZpbGVnZS5wYW5kb2MgZm9yIG1vcmUgaW5m
b3JtYXRpb24uCisKKz1iYWNrCisKID1oZWFkMSBTRUUgQUxTTwogCiBUaGUg
Zm9sbG93aW5nIG1hbiBwYWdlczoKZGlmZiAtLWdpdCBhL3Rvb2xzL2xpYnMv
bGlnaHQvbGlieGxfYm9vdGxvYWRlci5jIGIvdG9vbHMvbGlicy9saWdodC9s
aWJ4bF9ib290bG9hZGVyLmMKaW5kZXggMWJjNmU1MTgyN2I5Li5kM2E4YTRh
OWJhNTkgMTAwNjQ0Ci0tLSBhL3Rvb2xzL2xpYnMvbGlnaHQvbGlieGxfYm9v
dGxvYWRlci5jCisrKyBiL3Rvb2xzL2xpYnMvbGlnaHQvbGlieGxfYm9vdGxv
YWRlci5jCkBAIC0xNCw2ICsxNCw3IEBACiAKICNpbmNsdWRlICJsaWJ4bF9v
c2RlcHMuaCIgLyogbXVzdCBjb21lIGJlZm9yZSBhbnkgb3RoZXIgaGVhZGVy
cyAqLwogCisjaW5jbHVkZSA8cHdkLmg+CiAjaW5jbHVkZSA8dGVybWlvcy5o
PgogI2lmZGVmIEhBVkVfVVRNUF9ICiAjaW5jbHVkZSA8dXRtcC5oPgpAQCAt
NDIsOCArNDMsNzEgQEAgc3RhdGljIHZvaWQgYm9vdGxvYWRlcl9hcmcobGli
eGxfX2Jvb3Rsb2FkZXJfc3RhdGUgKmJsLCBjb25zdCBjaGFyICphcmcpCiAg
ICAgYmwtPmFyZ3NbYmwtPm5hcmdzKytdID0gYXJnOwogfQogCi1zdGF0aWMg
dm9pZCBtYWtlX2Jvb3Rsb2FkZXJfYXJncyhsaWJ4bF9fZ2MgKmdjLCBsaWJ4
bF9fYm9vdGxvYWRlcl9zdGF0ZSAqYmwsCi0gICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBjb25zdCBjaGFyICpib290bG9hZGVyX3BhdGgpCitz
dGF0aWMgaW50IGJvb3Rsb2FkZXJfdWlkKGxpYnhsX19nYyAqZ2MsIGRvbWlk
X3QgZ3Vlc3RfZG9taWQsCisgICAgICAgICAgICAgICAgICAgICAgICAgIGNv
bnN0IGNoYXIgKnVzZXIsIHVpZF90ICppbnRlbmRlZF91aWQpCit7CisgICAg
c3RydWN0IHBhc3N3ZCAqdXNlcl9iYXNlLCB1c2VyX3B3YnVmOworICAgIGlu
dCByYzsKKworICAgIGlmICh1c2VyKSB7CisgICAgICAgIHJjID0gdXNlcmxv
b2t1cF9oZWxwZXJfZ2V0cHduYW0oZ2MsIHVzZXIsICZ1c2VyX3B3YnVmLCAm
dXNlcl9iYXNlKTsKKyAgICAgICAgaWYgKHJjKSByZXR1cm4gcmM7CisKKyAg
ICAgICAgaWYgKCF1c2VyX2Jhc2UpIHsKKyAgICAgICAgICAgIExPR0QoRVJS
T1IsIGd1ZXN0X2RvbWlkLCAiQ291bGRuJ3QgZmluZCB1c2VyICVzIiwgdXNl
cik7CisgICAgICAgICAgICByZXR1cm4gRVJST1JfSU5WQUw7CisgICAgICAg
IH0KKworICAgICAgICAqaW50ZW5kZWRfdWlkID0gdXNlcl9iYXNlLT5wd191
aWQ7CisgICAgICAgIHJldHVybiAwOworICAgIH0KKworICAgIC8qIFJlLXVz
ZSBRRU1VIHVzZXIgcmFuZ2UgZm9yIHRoZSBib290bG9hZGVyLiAqLworICAg
IHJjID0gdXNlcmxvb2t1cF9oZWxwZXJfZ2V0cHduYW0oZ2MsIExJQlhMX1FF
TVVfVVNFUl9SQU5HRV9CQVNFLAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgJnVzZXJfcHdidWYsICZ1c2VyX2Jhc2UpOworICAgIGlm
IChyYykgcmV0dXJuIHJjOworCisgICAgaWYgKHVzZXJfYmFzZSkgeworICAg
ICAgICBzdHJ1Y3QgcGFzc3dkICp1c2VyX2NsYXNoLCB1c2VyX2NsYXNoX3B3
YnVmOworICAgICAgICB1aWRfdCB0ZW1wX3VpZCA9IHVzZXJfYmFzZS0+cHdf
dWlkICsgZ3Vlc3RfZG9taWQ7CisKKyAgICAgICAgcmMgPSB1c2VybG9va3Vw
X2hlbHBlcl9nZXRwd3VpZChnYywgdGVtcF91aWQsICZ1c2VyX2NsYXNoX3B3
YnVmLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICZ1c2VyX2NsYXNoKTsKKyAgICAgICAgaWYgKHJjKSByZXR1cm4gcmM7CisK
KyAgICAgICAgaWYgKHVzZXJfY2xhc2gpIHsKKyAgICAgICAgICAgIExPR0Qo
RVJST1IsIGd1ZXN0X2RvbWlkLAorICAgICAgICAgICAgICAgICAid2FudGVk
IHRvIHVzZSB1aWQgJWxkICglcyArICVkKSBidXQgdGhhdCBpcyB1c2VyICVz
ICEiLAorICAgICAgICAgICAgICAgICAobG9uZyl0ZW1wX3VpZCwgTElCWExf
UUVNVV9VU0VSX1JBTkdFX0JBU0UsCisgICAgICAgICAgICAgICAgIGd1ZXN0
X2RvbWlkLCB1c2VyX2NsYXNoLT5wd19uYW1lKTsKKyAgICAgICAgICAgIHJl
dHVybiBFUlJPUl9JTlZBTDsKKyAgICAgICAgfQorCisgICAgICAgICppbnRl
bmRlZF91aWQgPSB0ZW1wX3VpZDsKKyAgICAgICAgcmV0dXJuIDA7CisgICAg
fQorCisgICAgcmMgPSB1c2VybG9va3VwX2hlbHBlcl9nZXRwd25hbShnYywg
TElCWExfUUVNVV9VU0VSX1NIQVJFRCwgJnVzZXJfcHdidWYsCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmdXNlcl9iYXNlKTsKKyAg
ICBpZiAocmMpIHJldHVybiByYzsKKworICAgIGlmICh1c2VyX2Jhc2UpIHsK
KyAgICAgICAgTE9HRChXQVJOLCBndWVzdF9kb21pZCwgIkNvdWxkIG5vdCBm
aW5kIHVzZXIgJXMsIGZhbGxpbmcgYmFjayB0byAlcyIsCisgICAgICAgICAg
ICAgTElCWExfUUVNVV9VU0VSX1JBTkdFX0JBU0UsIExJQlhMX1FFTVVfVVNF
Ul9TSEFSRUQpOworICAgICAgICAqaW50ZW5kZWRfdWlkID0gdXNlcl9iYXNl
LT5wd191aWQ7CisKKyAgICAgICAgcmV0dXJuIDA7CisgICAgfQorCisgICAg
TE9HRChFUlJPUiwgZ3Vlc3RfZG9taWQsCisgICAgIkNvdWxkIG5vdCBmaW5k
IHVzZXIgJXMgb3IgcmFuZ2UgYmFzZSBwc2V1ZG8tdXNlciAlcywgY2Fubm90
IHJlc3RyaWN0IiwKKyAgICAgICAgIExJQlhMX1FFTVVfVVNFUl9TSEFSRUQs
IExJQlhMX1FFTVVfVVNFUl9SQU5HRV9CQVNFKTsKKworICAgIHJldHVybiBF
UlJPUl9JTlZBTDsKK30KKworc3RhdGljIGludCBtYWtlX2Jvb3Rsb2FkZXJf
YXJncyhsaWJ4bF9fZ2MgKmdjLCBsaWJ4bF9fYm9vdGxvYWRlcl9zdGF0ZSAq
YmwsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNo
YXIgKmJvb3Rsb2FkZXJfcGF0aCkKIHsKICAgICBjb25zdCBsaWJ4bF9kb21h
aW5fYnVpbGRfaW5mbyAqaW5mbyA9IGJsLT5pbmZvOwogCkBAIC02MSw2ICsx
MjUsMjMgQEAgc3RhdGljIHZvaWQgbWFrZV9ib290bG9hZGVyX2FyZ3MobGli
eGxfX2djICpnYywgbGlieGxfX2Jvb3Rsb2FkZXJfc3RhdGUgKmJsLAogICAg
ICAgICBBUkcoR0NTUFJJTlRGKCItLXJhbWRpc2s9JXMiLCBpbmZvLT5yYW1k
aXNrKSk7CiAgICAgaWYgKGluZm8tPmNtZGxpbmUgJiYgKmluZm8tPmNtZGxp
bmUgIT0gJ1wwJykKICAgICAgICAgQVJHKEdDU1BSSU5URigiLS1hcmdzPSVz
IiwgaW5mby0+Y21kbGluZSkpOworICAgIGlmIChnZXRlbnYoIkxJQlhMX0JP
T1RMT0FERVJfUkVTVFJJQ1QiKSB8fAorICAgICAgICBnZXRlbnYoIkxJQlhM
X0JPT1RMT0FERVJfVVNFUiIpKSB7CisgICAgICAgIHVpZF90IHVpZCA9IC0x
OworICAgICAgICBpbnQgcmMgPSBib290bG9hZGVyX3VpZChnYywgYmwtPmRv
bWlkLCBnZXRlbnYoIkxJQlhMX0JPT1RMT0FERVJfVVNFUiIpLAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAmdWlkKTsKKworICAgICAgICBp
ZiAocmMpIHJldHVybiByYzsKKworICAgICAgICBhc3NlcnQodWlkICE9IC0x
KTsKKyAgICAgICAgaWYgKCF1aWQpIHsKKyAgICAgICAgICAgIExPR0QoRVJS
T1IsIGJsLT5kb21pZCwgImJvb3Rsb2FkZXIgcmVzdHJpY3QgVUlEIGlzIDAg
KHJvb3QpISIpOworICAgICAgICAgICAgcmV0dXJuIEVSUk9SX0lOVkFMOwor
ICAgICAgICB9CisgICAgICAgIExPR0QoREVCVUcsIGJsLT5kb21pZCwgInVz
aW5nIHVpZCAlbGQiLCAobG9uZyl1aWQpOworICAgICAgICBBUkcoR0NTUFJJ
TlRGKCItLXJ1bmFzPSVsZCIsIChsb25nKXVpZCkpOworICAgICAgICBBUkco
Ii0tcXVpZXQiKTsKKyAgICB9CiAKICAgICBBUkcoR0NTUFJJTlRGKCItLW91
dHB1dD0lcyIsIGJsLT5vdXRwdXRwYXRoKSk7CiAgICAgQVJHKCItLW91dHB1
dC1mb3JtYXQ9c2ltcGxlMCIpOwpAQCAtNzksNiArMTYwLDcgQEAgc3RhdGlj
IHZvaWQgbWFrZV9ib290bG9hZGVyX2FyZ3MobGlieGxfX2djICpnYywgbGli
eGxfX2Jvb3Rsb2FkZXJfc3RhdGUgKmJsLAogICAgIC8qIFNlbnRpbmVsIGZv
ciBleGVjdiAqLwogICAgIEFSRyhOVUxMKTsKIAorICAgIHJldHVybiAwOwog
I3VuZGVmIEFSRwogfQogCkBAIC00NDMsNyArNTI1LDggQEAgc3RhdGljIHZv
aWQgYm9vdGxvYWRlcl9kaXNrX2F0dGFjaGVkX2NiKGxpYnhsX19lZ2MgKmVn
YywKICAgICAgICAgICAgIGJvb3Rsb2FkZXIgPSBibHRtcDsKICAgICB9CiAK
LSAgICBtYWtlX2Jvb3Rsb2FkZXJfYXJncyhnYywgYmwsIGJvb3Rsb2FkZXIp
OworICAgIHJjID0gbWFrZV9ib290bG9hZGVyX2FyZ3MoZ2MsIGJsLCBib290
bG9hZGVyKTsKKyAgICBpZiAocmMpIGdvdG8gb3V0OwogCiAgICAgYmwtPm9w
ZW5wdHkuYW8gPSBhbzsKICAgICBibC0+b3BlbnB0eS5jYWxsYmFjayA9IGJv
b3Rsb2FkZXJfZ290cHR5czsKZGlmZiAtLWdpdCBhL3Rvb2xzL2xpYnMvbGln
aHQvbGlieGxfZG0uYyBiL3Rvb2xzL2xpYnMvbGlnaHQvbGlieGxfZG0uYwpp
bmRleCBmYzI2NGEzYTEzYTYuLjE0YjU5MzExMGY3YyAxMDA2NDQKLS0tIGEv
dG9vbHMvbGlicy9saWdodC9saWJ4bF9kbS5jCisrKyBiL3Rvb2xzL2xpYnMv
bGlnaHQvbGlieGxfZG0uYwpAQCAtODAsMTAgKzgwLDEwIEBAIHN0YXRpYyBp
bnQgbGlieGxfX2NyZWF0ZV9xZW11X2xvZ2ZpbGUobGlieGxfX2djICpnYywg
Y2hhciAqbmFtZSkKICAqICBPbiBlcnJvciwgcmV0dXJuIGEgbGlieGwtc3R5
bGUgZXJyb3IgY29kZS4KICAqLwogI2RlZmluZSBERUZJTkVfVVNFUkxPT0tV
UF9IRUxQRVIoTkFNRSxTUEVDX1RZUEUsU1RSVUNUTkFNRSxTWVNDT05GKSAg
ICAgXAotICAgIHN0YXRpYyBpbnQgdXNlcmxvb2t1cF9oZWxwZXJfIyNOQU1F
KGxpYnhsX19nYyAqZ2MsICAgICAgICAgICAgICAgICAgXAotICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNQRUNfVFlQRSBzcGVj
LCAgICAgICAgICAgICAgICAgXAotICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHN0cnVjdCBTVFJVQ1ROQU1FICpyZXN1bHRidWYs
ICAgXAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHN0cnVjdCBTVFJVQ1ROQU1FICoqb3V0KSAgICAgICAgXAorICAgIGludCB1
c2VybG9va3VwX2hlbHBlcl8jI05BTUUobGlieGxfX2djICpnYywgICAgICAg
ICAgICAgICAgICAgICAgICAgXAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgU1BFQ19UWVBFIHNwZWMsICAgICAgICAgICAgICAgICAgICAg
ICAgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RydWN0
IFNUUlVDVE5BTUUgKnJlc3VsdGJ1ZiwgICAgICAgICAgXAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgc3RydWN0IFNUUlVDVE5BTUUgKipv
dXQpICAgICAgICAgICAgICAgXAogICAgIHsgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgXAogICAgICAgICBzdHJ1Y3QgU1RSVUNUTkFNRSAqcmVzdWx0cCA9IE5V
TEw7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAogICAgICAgICBj
aGFyICpidWYgPSBOVUxMOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgXApkaWZmIC0tZ2l0IGEvdG9vbHMvbGlicy9s
aWdodC9saWJ4bF9pbnRlcm5hbC5oIGIvdG9vbHMvbGlicy9saWdodC9saWJ4
bF9pbnRlcm5hbC5oCmluZGV4IGNjMjdjNzJlY2YzMC4uODQxNWQxZmVlZDE2
IDEwMDY0NAotLS0gYS90b29scy9saWJzL2xpZ2h0L2xpYnhsX2ludGVybmFs
LmgKKysrIGIvdG9vbHMvbGlicy9saWdodC9saWJ4bF9pbnRlcm5hbC5oCkBA
IC00ODY0LDYgKzQ4NjQsMTQgQEAgc3RydWN0IGxpYnhsX19jcHVfcG9saWN5
IHsKICAgICBzdHJ1Y3QgeGNfbXNyICptc3I7CiB9OwogCitzdHJ1Y3QgcGFz
c3dkOworX2hpZGRlbiBpbnQgdXNlcmxvb2t1cF9oZWxwZXJfZ2V0cHduYW0o
bGlieGxfX2djKiwgY29uc3QgY2hhciAqdXNlciwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIHN0cnVjdCBwYXNzd2QgKnJlcywK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cnVj
dCBwYXNzd2QgKipvdXQpOworX2hpZGRlbiBpbnQgdXNlcmxvb2t1cF9oZWxw
ZXJfZ2V0cHd1aWQobGlieGxfX2djKiwgdWlkX3QgdWlkLAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RydWN0IHBhc3N3ZCAq
cmVzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
c3RydWN0IHBhc3N3ZCAqKm91dCk7CisKICNlbmRpZgogCiAvKgotLSAKMi40
Mi4wCgo=

--=separator
Content-Type: application/octet-stream; name="xsa443/xsa443-4.16-11.patch"
Content-Disposition: attachment; filename="xsa443/xsa443-4.16-11.patch"
Content-Transfer-Encoding: base64

RnJvbSAyNzNjYzdlY2YwYTY2MzM0ZjI0ZjZmNzQwYmNkNDQxYjU0MmIzMzIz
IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBSb2dlciBQYXUgTW9u
bmUgPHJvZ2VyLnBhdUBjaXRyaXguY29tPgpEYXRlOiBUaHUsIDI4IFNlcCAy
MDIzIDEyOjIyOjM1ICswMjAwClN1YmplY3Q6IFtQQVRDSCAxMS8xMV0gbGli
eGw6IGxpbWl0IGJvb3Rsb2FkZXIgZXhlY3V0aW9uIGluIHJlc3RyaWN0ZWQg
bW9kZQpNSU1FLVZlcnNpb246IDEuMApDb250ZW50LVR5cGU6IHRleHQvcGxh
aW47IGNoYXJzZXQ9VVRGLTgKQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzog
OGJpdAoKSW50cm9kdWNlIGEgdGltZW91dCBmb3IgYm9vdGxvYWRlciBleGVj
dXRpb24gd2hlbiBydW5uaW5nIGluIHJlc3RyaWN0ZWQgbW9kZS4KCkFsbG93
IG92ZXJ3cml0aW5nIHRoZSBkZWZhdWx0IHRpbWUgb3V0IHdpdGggYW4gZW52
aXJvbm1lbnQgcHJvdmlkZWQgdmFsdWUuCgpUaGlzIGlzIHBhcnQgb2YgWFNB
LTQ0MyAvIENWRS0yMDIzLTM0MzI1CgpTaWduZWQtb2ZmLWJ5OiBSb2dlciBQ
YXUgTW9ubsOpIDxyb2dlci5wYXVAY2l0cml4LmNvbT4KUmV2aWV3ZWQtYnk6
IEFudGhvbnkgUEVSQVJEIDxhbnRob255LnBlcmFyZEBjaXRyaXguY29tPgot
LS0KIGRvY3MvbWFuL3hsLjEucG9kLmluICAgICAgICAgICAgICAgIHwgIDgg
KysrKysrCiB0b29scy9saWJzL2xpZ2h0L2xpYnhsX2Jvb3Rsb2FkZXIuYyB8
IDQwICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrCiB0b29scy9saWJz
L2xpZ2h0L2xpYnhsX2ludGVybmFsLmggICB8ICAyICsrCiAzIGZpbGVzIGNo
YW5nZWQsIDUwIGluc2VydGlvbnMoKykKCmRpZmYgLS1naXQgYS9kb2NzL21h
bi94bC4xLnBvZC5pbiBiL2RvY3MvbWFuL3hsLjEucG9kLmluCmluZGV4IDk2
ZTZmYjFjMzJhMy4uOGYwNTY0NTBhNzMwIDEwMDY0NAotLS0gYS9kb2NzL21h
bi94bC4xLnBvZC5pbgorKysgYi9kb2NzL21hbi94bC4xLnBvZC5pbgpAQCAt
MjAwNyw2ICsyMDA3LDE0IEBAIE5PVEU6IEVhY2ggZG9tYWluIE1VU1QgaGF2
ZSBhIFNFUEFSQVRFIHVzZXJuYW1lLgogCiBTZWUgZG9jcy9mZWF0dXJlcy9x
ZW11LWRlcHJpdmlsZWdlLnBhbmRvYyBmb3IgbW9yZSBpbmZvcm1hdGlvbi4K
IAorPWl0ZW0gTElCWExfQk9PVExPQURFUl9USU1FT1VUCisKK1RpbWVvdXQg
aW4gc2Vjb25kcyBmb3IgYm9vdGxvYWRlciBleGVjdXRpb24gd2hlbiBydW5u
aW5nIGluIHJlc3RyaWN0ZWQgbW9kZS4KK090aGVyd2lzZSB0aGUgYnVpbGQg
dGltZSBkZWZhdWx0IGluIExJQlhMX0JPT1RMT0FERVJfVElNRU9VVCB3aWxs
IGJlIHVzZWQuCisKK0lmIGRlZmluZWQgdGhlIHZhbHVlIG11c3QgYmUgYW4g
dW5zaWduZWQgaW50ZWdlciBiZXR3ZWVuIDAgYW5kIElOVF9NQVgsCitvdGhl
cndpc2UgYmVoYXZpb3IgaXMgdW5kZWZpbmVkLiAgU2V0dGluZyB0byAwIGRp
c2FibGVzIHRoZSB0aW1lb3V0LgorCiA9YmFjawogCiA9aGVhZDEgU0VFIEFM
U08KZGlmZiAtLWdpdCBhL3Rvb2xzL2xpYnMvbGlnaHQvbGlieGxfYm9vdGxv
YWRlci5jIGIvdG9vbHMvbGlicy9saWdodC9saWJ4bF9ib290bG9hZGVyLmMK
aW5kZXggZDNhOGE0YTliYTU5Li5hNGJlZmY0MjY1NGMgMTAwNjQ0Ci0tLSBh
L3Rvb2xzL2xpYnMvbGlnaHQvbGlieGxfYm9vdGxvYWRlci5jCisrKyBiL3Rv
b2xzL2xpYnMvbGlnaHQvbGlieGxfYm9vdGxvYWRlci5jCkBAIC0zMCw2ICsz
MCw4IEBAIHN0YXRpYyB2b2lkIGJvb3Rsb2FkZXJfa2V5c3Ryb2tlc19jb3B5
ZmFpbChsaWJ4bF9fZWdjICplZ2MsCiAgICAgICAgbGlieGxfX2RhdGFjb3Bp
ZXJfc3RhdGUgKmRjLCBpbnQgcmMsIGludCBvbndyaXRlLCBpbnQgZXJybm92
YWwpOwogc3RhdGljIHZvaWQgYm9vdGxvYWRlcl9kaXNwbGF5X2NvcHlmYWls
KGxpYnhsX19lZ2MgKmVnYywKICAgICAgICBsaWJ4bF9fZGF0YWNvcGllcl9z
dGF0ZSAqZGMsIGludCByYywgaW50IG9ud3JpdGUsIGludCBlcnJub3ZhbCk7
CitzdGF0aWMgdm9pZCBib290bG9hZGVyX3RpbWVvdXQobGlieGxfX2VnYyAq
ZWdjLCBsaWJ4bF9fZXZfdGltZSAqZXYsCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgY29uc3Qgc3RydWN0IHRpbWV2YWwgKnJlcXVlc3RlZF9h
YnMsIGludCByYyk7CiBzdGF0aWMgdm9pZCBib290bG9hZGVyX2RvbWFpbmRl
YXRoKGxpYnhsX19lZ2MqLCBsaWJ4bF9fZG9tYWluZGVhdGhjaGVjayAqZGMs
CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCByYyk7
CiBzdGF0aWMgdm9pZCBib290bG9hZGVyX2ZpbmlzaGVkKGxpYnhsX19lZ2Mg
KmVnYywgbGlieGxfX2V2X2NoaWxkICpjaGlsZCwKQEAgLTI5Nyw2ICsyOTks
NyBAQCB2b2lkIGxpYnhsX19ib290bG9hZGVyX2luaXQobGlieGxfX2Jvb3Rs
b2FkZXJfc3RhdGUgKmJsKQogICAgIGJsLT5wdHlzWzBdLm1hc3RlciA9IGJs
LT5wdHlzWzBdLnNsYXZlID0gMDsKICAgICBibC0+cHR5c1sxXS5tYXN0ZXIg
PSBibC0+cHR5c1sxXS5zbGF2ZSA9IDA7CiAgICAgbGlieGxfX2V2X2NoaWxk
X2luaXQoJmJsLT5jaGlsZCk7CisgICAgbGlieGxfX2V2X3RpbWVfaW5pdCgm
YmwtPnRpbWUpOwogICAgIGxpYnhsX19kb21haW5kZWF0aGNoZWNrX2luaXQo
JmJsLT5kZWF0aGNoZWNrKTsKICAgICBibC0+a2V5c3Ryb2tlcy5hbyA9IGJs
LT5hbzsgIGxpYnhsX19kYXRhY29waWVyX2luaXQoJmJsLT5rZXlzdHJva2Vz
KTsKICAgICBibC0+ZGlzcGxheS5hbyA9IGJsLT5hbzsgICAgIGxpYnhsX19k
YXRhY29waWVyX2luaXQoJmJsLT5kaXNwbGF5KTsKQEAgLTMxNCw2ICszMTcs
NyBAQCBzdGF0aWMgdm9pZCBib290bG9hZGVyX2NsZWFudXAobGlieGxfX2Vn
YyAqZWdjLCBsaWJ4bF9fYm9vdGxvYWRlcl9zdGF0ZSAqYmwpCiAgICAgbGli
eGxfX2RvbWFpbmRlYXRoY2hlY2tfc3RvcChnYywmYmwtPmRlYXRoY2hlY2sp
OwogICAgIGxpYnhsX19kYXRhY29waWVyX2tpbGwoJmJsLT5rZXlzdHJva2Vz
KTsKICAgICBsaWJ4bF9fZGF0YWNvcGllcl9raWxsKCZibC0+ZGlzcGxheSk7
CisgICAgbGlieGxfX2V2X3RpbWVfZGVyZWdpc3RlcihnYywgJmJsLT50aW1l
KTsKICAgICBmb3IgKGk9MDsgaTwyOyBpKyspIHsKICAgICAgICAgbGlieGxf
X2NhcmVmZF9jbG9zZShibC0+cHR5c1tpXS5tYXN0ZXIpOwogICAgICAgICBs
aWJ4bF9fY2FyZWZkX2Nsb3NlKGJsLT5wdHlzW2ldLnNsYXZlKTsKQEAgLTM3
NSw2ICszNzksNyBAQCBzdGF0aWMgdm9pZCBib290bG9hZGVyX3N0b3AobGli
eGxfX2VnYyAqZWdjLAogCiAgICAgbGlieGxfX2RhdGFjb3BpZXJfa2lsbCgm
YmwtPmtleXN0cm9rZXMpOwogICAgIGxpYnhsX19kYXRhY29waWVyX2tpbGwo
JmJsLT5kaXNwbGF5KTsKKyAgICBsaWJ4bF9fZXZfdGltZV9kZXJlZ2lzdGVy
KGdjLCAmYmwtPnRpbWUpOwogICAgIGlmIChsaWJ4bF9fZXZfY2hpbGRfaW51
c2UoJmJsLT5jaGlsZCkpIHsKICAgICAgICAgciA9IGtpbGwoYmwtPmNoaWxk
LnBpZCwgU0lHVEVSTSk7CiAgICAgICAgIGlmIChyKSBMT0dFRChXQVJOLCBi
bC0+ZG9taWQsICIlc2ZhaWxlZCB0byBraWxsIGJvb3Rsb2FkZXIgWyVsdV0i
LApAQCAtNjM3LDYgKzY0MiwyNSBAQCBzdGF0aWMgdm9pZCBib290bG9hZGVy
X2dvdHB0eXMobGlieGxfX2VnYyAqZWdjLCBsaWJ4bF9fb3BlbnB0eV9zdGF0
ZSAqb3ApCiAKICAgICBzdHJ1Y3QgdGVybWlvcyB0ZXJtYXR0cjsKIAorICAg
IGlmIChnZXRlbnYoIkxJQlhMX0JPT1RMT0FERVJfUkVTVFJJQ1QiKSB8fAor
ICAgICAgICBnZXRlbnYoIkxJQlhMX0JPT1RMT0FERVJfVVNFUiIpKSB7Cisg
ICAgICAgIGNvbnN0IGNoYXIgKnRpbWVvdXRfZW52ID0gZ2V0ZW52KCJMSUJY
TF9CT09UTE9BREVSX1RJTUVPVVQiKTsKKyAgICAgICAgaW50IHRpbWVvdXQg
PSB0aW1lb3V0X2VudiA/IGF0b2kodGltZW91dF9lbnYpCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgOiBMSUJYTF9CT09UTE9BREVSX1RJ
TUVPVVQ7CisKKyAgICAgICAgaWYgKHRpbWVvdXQpIHsKKyAgICAgICAgICAg
IC8qIFNldCBleGVjdXRpb24gdGltZW91dCAqLworICAgICAgICAgICAgcmMg
PSBsaWJ4bF9fZXZfdGltZV9yZWdpc3Rlcl9yZWwoYW8sICZibC0+dGltZSwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Ym9vdGxvYWRlcl90aW1lb3V0LAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICB0aW1lb3V0ICogMTAwMCk7CisgICAgICAg
ICAgICBpZiAocmMpIHsKKyAgICAgICAgICAgICAgICBMT0dFRChFUlJPUiwg
YmwtPmRvbWlkLAorICAgICAgICAgICAgICAgICAgICAgICJ1bmFibGUgdG8g
cmVnaXN0ZXIgdGltZW91dCBmb3IgYm9vdGxvYWRlciBleGVjdXRpb24iKTsK
KyAgICAgICAgICAgICAgICBnb3RvIG91dDsKKyAgICAgICAgICAgIH0KKyAg
ICAgICAgfQorICAgIH0KKwogICAgIHBpZF90IHBpZCA9IGxpYnhsX19ldl9j
aGlsZF9mb3JrKGdjLCAmYmwtPmNoaWxkLCBib290bG9hZGVyX2ZpbmlzaGVk
KTsKICAgICBpZiAocGlkID09IC0xKSB7CiAgICAgICAgIHJjID0gRVJST1Jf
RkFJTDsKQEAgLTcwMiw2ICs3MjYsMjEgQEAgc3RhdGljIHZvaWQgYm9vdGxv
YWRlcl9kaXNwbGF5X2NvcHlmYWlsKGxpYnhsX19lZ2MgKmVnYywKICAgICBs
aWJ4bF9fYm9vdGxvYWRlcl9zdGF0ZSAqYmwgPSBDT05UQUlORVJfT0YoZGMs
ICpibCwgZGlzcGxheSk7CiAgICAgYm9vdGxvYWRlcl9jb3B5ZmFpbChlZ2Ms
ICJib290bG9hZGVyIG91dHB1dCIsIGJsLCAxLCByYyxvbndyaXRlLGVycm5v
dmFsKTsKIH0KK3N0YXRpYyB2b2lkIGJvb3Rsb2FkZXJfdGltZW91dChsaWJ4
bF9fZWdjICplZ2MsIGxpYnhsX19ldl90aW1lICpldiwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBjb25zdCBzdHJ1Y3QgdGltZXZhbCAqcmVx
dWVzdGVkX2FicywgaW50IHJjKQoreworICAgIGxpYnhsX19ib290bG9hZGVy
X3N0YXRlICpibCA9IENPTlRBSU5FUl9PRihldiwgKmJsLCB0aW1lKTsKKyAg
ICBTVEFURV9BT19HQyhibC0+YW8pOworCisgICAgbGlieGxfX2V2X3RpbWVf
ZGVyZWdpc3RlcihnYywgJmJsLT50aW1lKTsKKworICAgIGFzc2VydChsaWJ4
bF9fZXZfY2hpbGRfaW51c2UoJmJsLT5jaGlsZCkpOworICAgIExPR0QoRVJS
T1IsIGJsLT5kb21pZCwgImtpbGxpbmcgYm9vdGxvYWRlciBiZWNhdXNlIG9m
IHRpbWVvdXQiKTsKKworICAgIGxpYnhsX19ldl9jaGlsZF9raWxsX2RlcmVn
aXN0ZXIoYW8sICZibC0+Y2hpbGQsIFNJR0tJTEwpOworCisgICAgYm9vdGxv
YWRlcl9jYWxsYmFjayhlZ2MsIGJsLCByYyk7Cit9CiAKIHN0YXRpYyB2b2lk
IGJvb3Rsb2FkZXJfZG9tYWluZGVhdGgobGlieGxfX2VnYyAqZWdjLAogICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaWJ4bF9fZG9tYWlu
ZGVhdGhjaGVjayAqZGMsCkBAIC03MTgsNiArNzU3LDcgQEAgc3RhdGljIHZv
aWQgYm9vdGxvYWRlcl9maW5pc2hlZChsaWJ4bF9fZWdjICplZ2MsIGxpYnhs
X19ldl9jaGlsZCAqY2hpbGQsCiAgICAgU1RBVEVfQU9fR0MoYmwtPmFvKTsK
ICAgICBpbnQgcmM7CiAKKyAgICBsaWJ4bF9fZXZfdGltZV9kZXJlZ2lzdGVy
KGdjLCAmYmwtPnRpbWUpOwogICAgIGxpYnhsX19kYXRhY29waWVyX2tpbGwo
JmJsLT5rZXlzdHJva2VzKTsKICAgICBsaWJ4bF9fZGF0YWNvcGllcl9raWxs
KCZibC0+ZGlzcGxheSk7CiAKZGlmZiAtLWdpdCBhL3Rvb2xzL2xpYnMvbGln
aHQvbGlieGxfaW50ZXJuYWwuaCBiL3Rvb2xzL2xpYnMvbGlnaHQvbGlieGxf
aW50ZXJuYWwuaAppbmRleCA4NDE1ZDFmZWVkMTYuLmE5NTgxMjg5ZjQ2MiAx
MDA2NDQKLS0tIGEvdG9vbHMvbGlicy9saWdodC9saWJ4bF9pbnRlcm5hbC5o
CisrKyBiL3Rvb2xzL2xpYnMvbGlnaHQvbGlieGxfaW50ZXJuYWwuaApAQCAt
MTAzLDYgKzEwMyw3IEBACiAjZGVmaW5lIExJQlhMX1FNUF9DTURfVElNRU9V
VCAxMAogI2RlZmluZSBMSUJYTF9TVFVCRE9NX1NUQVJUX1RJTUVPVVQgMzAK
ICNkZWZpbmUgTElCWExfUUVNVV9CT0RHRV9USU1FT1VUIDIKKyNkZWZpbmUg
TElCWExfQk9PVExPQURFUl9USU1FT1VUIDEyMAogI2RlZmluZSBMSUJYTF9Y
RU5DT05TT0xFX0xJTUlUIDEwNDg1NzYKICNkZWZpbmUgTElCWExfWEVOQ09O
U09MRV9QUk9UT0NPTCAidnQxMDAiCiAjZGVmaW5lIExJQlhMX01BWE1FTV9D
T05TVEFOVCAxMDI0CkBAIC0zNzM4LDYgKzM3MzksNyBAQCBzdHJ1Y3QgbGli
eGxfX2Jvb3Rsb2FkZXJfc3RhdGUgewogICAgIGxpYnhsX19vcGVucHR5X3N0
YXRlIG9wZW5wdHk7CiAgICAgbGlieGxfX29wZW5wdHlfcmVzdWx0IHB0eXNb
Ml07ICAvKiBbMF0gaXMgZm9yIGJvb3Rsb2FkZXIgKi8KICAgICBsaWJ4bF9f
ZXZfY2hpbGQgY2hpbGQ7CisgICAgbGlieGxfX2V2X3RpbWUgdGltZTsKICAg
ICBsaWJ4bF9fZG9tYWluZGVhdGhjaGVjayBkZWF0aGNoZWNrOwogICAgIGlu
dCBuYXJncywgYXJnc3NwYWNlOwogICAgIGNvbnN0IGNoYXIgKiphcmdzOwot
LSAKMi40Mi4wCgo=

--=separator
Content-Type: application/octet-stream; name="xsa443/xsa443-4.17-01.patch"
Content-Disposition: attachment; filename="xsa443/xsa443-4.17-01.patch"
Content-Transfer-Encoding: base64

RnJvbSA3ZTQ4NTYyYmYzNGU5MGY5MDc0OTFhMDU5NTc4MmQyZGFhMWZmM2Fk
IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBBbGVqYW5kcm8gVmFs
bGVqbyA8YWxlamFuZHJvLnZhbGxlam9AY2xvdWQuY29tPgpEYXRlOiBUaHUs
IDE0IFNlcCAyMDIzIDEzOjIyOjUwICswMTAwClN1YmplY3Q6IFtQQVRDSCAw
MS8xMV0gbGliZnNpbWFnZS94ZnM6IFJlbW92ZSBkZWFkIGNvZGUKCnhmc19p
bmZvLmFnbm9sb2cgKGFuZCByZWxhdGVkIGNvZGUpIGFuZCBYRlNfSU5PX0FH
Qk5PX0JJVFMgYXJlIGRlYWQgY29kZQp0aGF0IHNlcnZlIG5vIHB1cnBvc2Uu
CgpUaGlzIGlzIHBhcnQgb2YgWFNBLTQ0MyAvIENWRS0yMDIzLTM0MzI1CgpT
aWduZWQtb2ZmLWJ5OiBBbGVqYW5kcm8gVmFsbGVqbyA8YWxlamFuZHJvLnZh
bGxlam9AY2xvdWQuY29tPgpSZXZpZXdlZC1ieTogSmFuIEJldWxpY2ggPGpi
ZXVsaWNoQHN1c2UuY29tPgotLS0KIHRvb2xzL2xpYmZzaW1hZ2UveGZzL2Zz
eXNfeGZzLmMgfCAxOCAtLS0tLS0tLS0tLS0tLS0tLS0KIDEgZmlsZSBjaGFu
Z2VkLCAxOCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS90b29scy9saWJm
c2ltYWdlL3hmcy9mc3lzX3hmcy5jIGIvdG9vbHMvbGliZnNpbWFnZS94ZnMv
ZnN5c194ZnMuYwppbmRleCBkNzM1YTg4ZTU1ZjMuLjI4MDA2OTlmNTk4NSAx
MDA2NDQKLS0tIGEvdG9vbHMvbGliZnNpbWFnZS94ZnMvZnN5c194ZnMuYwor
KysgYi90b29scy9saWJmc2ltYWdlL3hmcy9mc3lzX3hmcy5jCkBAIC0zNyw3
ICszNyw2IEBAIHN0cnVjdCB4ZnNfaW5mbyB7CiAJaW50IGJsa2xvZzsKIAlp
bnQgaW5vcGJsb2c7CiAJaW50IGFnYmxrbG9nOwotCWludCBhZ25vbG9nOwog
CXVuc2lnbmVkIGludCBuZXh0ZW50czsKIAl4ZnNfZGFkZHJfdCBuZXh0Owog
CXhmc19kYWRkcl90IGRhZGRyOwpAQCAtNjUsOSArNjQsNyBAQCBzdGF0aWMg
c3RydWN0IHhmc19pbmZvIHhmczsKIAogI2RlZmluZQlYRlNfSU5PX01BU0so
aykJCSgoeGZzX3VpbnQzMl90KSgoMVVMTCA8PCAoaykpIC0gMSkpCiAjZGVm
aW5lCVhGU19JTk9fT0ZGU0VUX0JJVFMJeGZzLmlub3BibG9nCi0jZGVmaW5l
CVhGU19JTk9fQUdCTk9fQklUUwl4ZnMuYWdibGtsb2cKICNkZWZpbmUJWEZT
X0lOT19BR0lOT19CSVRTCSh4ZnMuYWdibGtsb2cgKyB4ZnMuaW5vcGJsb2cp
Ci0jZGVmaW5lCVhGU19JTk9fQUdOT19CSVRTCXhmcy5hZ25vbG9nCiAKIHN0
YXRpYyBpbmxpbmUgeGZzX2FnYmxvY2tfdAogYWdpbm8yYWdibm8gKHhmc19h
Z2lub190IGFnaW5vKQpAQCAtMTQ5LDIwICsxNDYsNiBAQCB4dF9sZW4gKHhm
c19ibWJ0X3JlY18zMl90ICpyKQogCXJldHVybiBsZTMyKHItPmwzKSAmIG1h
c2szMmxvKDIxKTsKIH0KIAotc3RhdGljIGlubGluZSBpbnQKLXhmc19oaWdo
Yml0MzIoeGZzX3VpbnQzMl90IHYpCi17Ci0JaW50IGk7Ci0KLQlpZiAoLS12
KSB7Ci0JCWZvciAoaSA9IDA7IGkgPCAzMTsgaSsrLCB2ID4+PSAxKSB7Ci0J
CQlpZiAodiA9PSAwKQotCQkJCXJldHVybiBpOwotCQl9Ci0JfQotCXJldHVy
biAwOwotfQotCiBzdGF0aWMgaW50CiBpc2lueHQgKHhmc19maWxlb2ZmX3Qg
a2V5LCB4ZnNfZmlsZW9mZl90IG9mZnNldCwgeGZzX2ZpbGJsa3NfdCBsZW4p
CiB7CkBAIC00NzIsNyArNDU1LDYgQEAgeGZzX21vdW50IChmc2lfZmlsZV90
ICpmZmksIGNvbnN0IGNoYXIgKm9wdGlvbnMpCiAKIAl4ZnMuaW5vcGJsb2cg
PSBzdXBlci5zYl9pbm9wYmxvZzsKIAl4ZnMuYWdibGtsb2cgPSBzdXBlci5z
Yl9hZ2Jsa2xvZzsKLQl4ZnMuYWdub2xvZyA9IHhmc19oaWdoYml0MzIgKGxl
MzIoc3VwZXIuc2JfYWdjb3VudCkpOwogCiAJeGZzLmJ0bm9kZV9wdHIwX29m
ZiA9CiAJCSgoeGZzLmJzaXplIC0gc2l6ZW9mKHhmc19idHJlZV9ibG9ja190
KSkgLwotLSAKMi40Mi4wCgo=

--=separator
Content-Type: application/octet-stream; name="xsa443/xsa443-4.17-02.patch"
Content-Disposition: attachment; filename="xsa443/xsa443-4.17-02.patch"
Content-Transfer-Encoding: base64

RnJvbSBjMjYzMjc3OTViNzhjOTNmNmZhNmQ1ZDQ2ZTM0ZjU5ZGM0MDQ2NjAx
IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBBbGVqYW5kcm8gVmFs
bGVqbyA8YWxlamFuZHJvLnZhbGxlam9AY2xvdWQuY29tPgpEYXRlOiBUaHUs
IDE0IFNlcCAyMDIzIDEzOjIyOjUxICswMTAwClN1YmplY3Q6IFtQQVRDSCAw
Mi8xMV0gbGliZnNpbWFnZS94ZnM6IEFtZW5kIG1hc2szMmxvKCkgdG8gYWxs
b3cgdGhlIHZhbHVlIDMyCgphZ2Jsa2xvZyBjb3VsZCBwbGF1c2libHkgYmUg
MzIsIGJ1dCB0aGF0IHdvdWxkIG92ZXJmbG93IHRoaXMgc2hpZnQuClBlcmZv
cm0gdGhlIHNoaWZ0IGFzIFVMTCBhbmQgY2FzdCB0byB1MzIgYXQgdGhlIGVu
ZCBpbnN0ZWFkLgoKVGhpcyBpcyBwYXJ0IG9mIFhTQS00NDMgLyBDVkUtMjAy
My0zNDMyNQoKU2lnbmVkLW9mZi1ieTogQWxlamFuZHJvIFZhbGxlam8gPGFs
ZWphbmRyby52YWxsZWpvQGNsb3VkLmNvbT4KQWNrZWQtYnk6IEphbiBCZXVs
aWNoIDxqYmV1bGljaEBzdXNlLmNvbT4KLS0tCiB0b29scy9saWJmc2ltYWdl
L3hmcy9mc3lzX3hmcy5jIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5z
ZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvdG9vbHMv
bGliZnNpbWFnZS94ZnMvZnN5c194ZnMuYyBiL3Rvb2xzL2xpYmZzaW1hZ2Uv
eGZzL2ZzeXNfeGZzLmMKaW5kZXggMjgwMDY5OWY1OTg1Li40NzIwYmI0NTA1
YzggMTAwNjQ0Ci0tLSBhL3Rvb2xzL2xpYmZzaW1hZ2UveGZzL2ZzeXNfeGZz
LmMKKysrIGIvdG9vbHMvbGliZnNpbWFnZS94ZnMvZnN5c194ZnMuYwpAQCAt
NjAsNyArNjAsNyBAQCBzdGF0aWMgc3RydWN0IHhmc19pbmZvIHhmczsKICNk
ZWZpbmUgaW5vZGUJCSgoeGZzX2Rpbm9kZV90ICopKChjaGFyICopRlNZU19C
VUYgKyA4MTkyKSkKICNkZWZpbmUgaWNvcmUJCShpbm9kZS0+ZGlfY29yZSkK
IAotI2RlZmluZQltYXNrMzJsbyhuKQkoKCh4ZnNfdWludDMyX3QpMSA8PCAo
bikpIC0gMSkKKyNkZWZpbmUJbWFzazMybG8obikJKCh4ZnNfdWludDMyX3Qp
KCgxdWxsIDw8IChuKSkgLSAxKSkKIAogI2RlZmluZQlYRlNfSU5PX01BU0so
aykJCSgoeGZzX3VpbnQzMl90KSgoMVVMTCA8PCAoaykpIC0gMSkpCiAjZGVm
aW5lCVhGU19JTk9fT0ZGU0VUX0JJVFMJeGZzLmlub3BibG9nCi0tIAoyLjQy
LjAKCg==

--=separator
Content-Type: application/octet-stream; name="xsa443/xsa443-4.17-03.patch"
Content-Disposition: attachment; filename="xsa443/xsa443-4.17-03.patch"
Content-Transfer-Encoding: base64

RnJvbSAxOTlmMDUzOGJiZWMwNTIwMjg2NzlhNTVlYTUxMjQzNzE3MDg1NGM5
IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBBbGVqYW5kcm8gVmFs
bGVqbyA8YWxlamFuZHJvLnZhbGxlam9AY2xvdWQuY29tPgpEYXRlOiBUaHUs
IDE0IFNlcCAyMDIzIDEzOjIyOjUyICswMTAwClN1YmplY3Q6IFtQQVRDSCAw
My8xMV0gbGliZnNpbWFnZS94ZnM6IFNhbml0eS1jaGVjayB0aGUgc3VwZXJi
bG9jayBkdXJpbmcKIG1vdW50cwoKU2FuaXR5LWNoZWNrIHRoZSBYRlMgc3Vw
ZXJibG9jayBmb3Igd2VsbGZvcm1lZG5lc3MgYXQgdGhlIG1vdW50IGhhbmRs
ZXIuClRoaXMgZm9yY2VzIHB5Z3J1YiB0byBhYm9ydCBwYXJzaW5nIGEgcG90
ZW50aWFsbHkgbWFsZm9ybWVkIGZpbGVzeXN0ZW0gYW5kCmVuc3VyZXMgdGhl
IGludmFyaWFudHMgYXNzdW1lZCB0aHJvdWdob3V0IHRoZSByZXN0IG9mIHRo
ZSBjb2RlIGhvbGQuCgpBbHNvLCBkZXJpdmUgcGFyYW1ldGVycyBmcm9tIHBy
ZXZpb3VzbHkgc2FuaXRpemVkIHBhcmFtZXRlcnMgd2hlcmUgcG9zc2libGUK
KHJhdGhlciB0aGFuIHJlYWRpbmcgdGhlbSBvZmYgdGhlIHN1cGVyYmxvY2sp
CgpUaGUgY29kZSBkb2Vzbid0IHRyeSB0byBhdm9pZCBvdmVyZmxvd2luZyB0
aGUgZW5kIG9mIHRoZSBkaXNrLCBiZWNhdXNlCnRoYXQncyBhbiB1bmxpa2Vs
eSBhbmQgYmVuaWduIGVycm9yLiBQYXJhbWV0ZXJzIHVzZWQgaW4gY2FsY3Vs
YXRpb25zIG9mCnhmc19kYWRkcl90IChsaWtlIHRoZSByb290IGlub2RlIGlu
ZGV4KSBhcmVuJ3QgaW4gY3JpdGljYWwgbmVlZCBvZiBiZWluZwpzYW5pdGl6
ZWQuCgpUaGUgc2FuaXRpemF0aW9uIG9mIGFnYmxrbG9nIGlzIGJhc2ljYWxs
eSBjaGVja2luZyB0aGF0IG5vIG9idmlvdXMKb3ZlcmZsb3dzIGhhcHBlbiBv
biBhZ2Jsa2xvZywgYW5kIHRoZW4gZW5zdXJpbmcgYWdibG9ja3MgaXMgY29u
dGFpbmVkIGluCnRoZSByYW5nZSAoMl4oc2JfYWdibGtsb2ctMSksIDJec2Jf
YWdibGtsb2ddLgoKVGhpcyBpcyBwYXJ0IG9mIFhTQS00NDMgLyBDVkUtMjAy
My0zNDMyNQoKUmVwb3J0ZWQtYnk6IEZlcmRpbmFuZCBOw7Zsc2NoZXIgPG5v
ZWxzY2hlckBnb29nbGUuY29tPgpTaWduZWQtb2ZmLWJ5OiBBbGVqYW5kcm8g
VmFsbGVqbyA8YWxlamFuZHJvLnZhbGxlam9AY2xvdWQuY29tPgpSZXZpZXdl
ZC1ieTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgotLS0KIHRv
b2xzL2xpYmZzaW1hZ2UveGZzL2ZzeXNfeGZzLmMgfCA0OCArKysrKysrKysr
KysrKysrKysrKysrKysrKy0tLS0tLS0KIHRvb2xzL2xpYmZzaW1hZ2UveGZz
L3hmcy5oICAgICAgfCAxMiArKysrKysrKysKIDIgZmlsZXMgY2hhbmdlZCwg
NTAgaW5zZXJ0aW9ucygrKSwgMTAgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0
IGEvdG9vbHMvbGliZnNpbWFnZS94ZnMvZnN5c194ZnMuYyBiL3Rvb2xzL2xp
YmZzaW1hZ2UveGZzL2ZzeXNfeGZzLmMKaW5kZXggNDcyMGJiNDUwNWM4Li5l
NGViN2UxZWUyNmYgMTAwNjQ0Ci0tLSBhL3Rvb2xzL2xpYmZzaW1hZ2UveGZz
L2ZzeXNfeGZzLmMKKysrIGIvdG9vbHMvbGliZnNpbWFnZS94ZnMvZnN5c194
ZnMuYwpAQCAtMTcsNiArMTcsNyBAQAogICogIGFsb25nIHdpdGggdGhpcyBw
cm9ncmFtOyBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vu
c2VzLz4uCiAgKi8KIAorI2luY2x1ZGUgPHN0ZGJvb2wuaD4KICNpbmNsdWRl
IDx4ZW5mc2ltYWdlX2dydWIuaD4KICNpbmNsdWRlICJ4ZnMuaCIKIApAQCAt
NDMzLDI5ICs0MzQsNTYgQEAgZmlyc3RfZGVudHJ5IChmc2lfZmlsZV90ICpm
ZmksIHhmc19pbm9fdCAqaW5vKQogCXJldHVybiBuZXh0X2RlbnRyeSAoZmZp
LCBpbm8pOwogfQogCitzdGF0aWMgYm9vbAoreGZzX3NiX2lzX2ludmFsaWQg
KGNvbnN0IHhmc19zYl90ICpzdXBlcikKK3sKKwlyZXR1cm4gKGxlMzIoc3Vw
ZXItPnNiX21hZ2ljbnVtKSAhPSBYRlNfU0JfTUFHSUMpCisJICAgIHx8ICgo
bGUxNihzdXBlci0+c2JfdmVyc2lvbm51bSkgJiBYRlNfU0JfVkVSU0lPTl9O
VU1CSVRTKSAhPQorCSAgICAgICAgWEZTX1NCX1ZFUlNJT05fNCkKKwkgICAg
fHwgKHN1cGVyLT5zYl9pbm9kZWxvZyA8IFhGU19TQl9JTk9ERUxPR19NSU4p
CisJICAgIHx8IChzdXBlci0+c2JfaW5vZGVsb2cgPiBYRlNfU0JfSU5PREVM
T0dfTUFYKQorCSAgICB8fCAoc3VwZXItPnNiX2Jsb2NrbG9nIDwgWEZTX1NC
X0JMT0NLTE9HX01JTikKKwkgICAgfHwgKHN1cGVyLT5zYl9ibG9ja2xvZyA+
IFhGU19TQl9CTE9DS0xPR19NQVgpCisJICAgIHx8IChzdXBlci0+c2JfYmxv
Y2tsb2cgPCBzdXBlci0+c2JfaW5vZGVsb2cpCisJICAgIHx8IChzdXBlci0+
c2JfYWdibGtsb2cgPiBYRlNfU0JfQUdCTEtMT0dfTUFYKQorCSAgICB8fCAo
KDF1bGwgPDwgc3VwZXItPnNiX2FnYmxrbG9nKSA8IGxlMzIoc3VwZXItPnNi
X2FnYmxvY2tzKSkKKwkgICAgfHwgKCgoMXVsbCA8PCBzdXBlci0+c2JfYWdi
bGtsb2cpID4+IDEpID49CisJICAgICAgICBsZTMyKHN1cGVyLT5zYl9hZ2Js
b2NrcykpCisJICAgIHx8ICgoc3VwZXItPnNiX2Jsb2NrbG9nICsgc3VwZXIt
PnNiX2RpcmJsa2xvZykgPj0KKwkgICAgICAgIFhGU19TQl9ESVJCTEtfTlVN
QklUUyk7Cit9CisKIHN0YXRpYyBpbnQKIHhmc19tb3VudCAoZnNpX2ZpbGVf
dCAqZmZpLCBjb25zdCBjaGFyICpvcHRpb25zKQogewogCXhmc19zYl90IHN1
cGVyOwogCiAJaWYgKCFkZXZyZWFkIChmZmksIDAsIDAsIHNpemVvZihzdXBl
ciksIChjaGFyICopJnN1cGVyKQotCSAgICB8fCAobGUzMihzdXBlci5zYl9t
YWdpY251bSkgIT0gWEZTX1NCX01BR0lDKQotCSAgICB8fCAoKGxlMTYoc3Vw
ZXIuc2JfdmVyc2lvbm51bSkgCi0JCSYgWEZTX1NCX1ZFUlNJT05fTlVNQklU
UykgIT0gWEZTX1NCX1ZFUlNJT05fNCkgKSB7CisJICAgIHx8IHhmc19zYl9p
c19pbnZhbGlkKCZzdXBlcikpIHsKIAkJcmV0dXJuIDA7CiAJfQogCi0JeGZz
LmJzaXplID0gbGUzMiAoc3VwZXIuc2JfYmxvY2tzaXplKTsKLQl4ZnMuYmxr
bG9nID0gc3VwZXIuc2JfYmxvY2tsb2c7Ci0JeGZzLmJkbG9nID0geGZzLmJs
a2xvZyAtIFNFQ1RPUl9CSVRTOworCS8qCisJICogTm90IHNhbml0aXplZC4g
SXQncyBleGNsdXNpdmVseSB1c2VkIHRvIGdlbmVyYXRlIGRpc2sgYWRkcmVz
c2VzLAorCSAqIHNvIGl0J3Mgbm90IGltcG9ydGFudCBmcm9tIGEgc2VjdXJp
dHkgc3RhbmRwb2ludC4KKwkgKi8KIAl4ZnMucm9vdGlubyA9IGxlNjQgKHN1
cGVyLnNiX3Jvb3Rpbm8pOwotCXhmcy5pc2l6ZSA9IGxlMTYgKHN1cGVyLnNi
X2lub2Rlc2l6ZSk7Ci0JeGZzLmFnYmxvY2tzID0gbGUzMiAoc3VwZXIuc2Jf
YWdibG9ja3MpOwotCXhmcy5kaXJic2l6ZSA9IHhmcy5ic2l6ZSA8PCBzdXBl
ci5zYl9kaXJibGtsb2c7CiAKLQl4ZnMuaW5vcGJsb2cgPSBzdXBlci5zYl9p
bm9wYmxvZzsKKwkvKgorCSAqIFNhbml0aXplZCB0byBiZSBjb25zaXN0ZW50
IHdpdGggZWFjaCBvdGhlciwgb25seSB1c2VkIHRvCisJICogZ2VuZXJhdGUg
ZGlzayBhZGRyZXNzZXMsIHNvIGl0J3Mgc2FmZQorCSAqLworCXhmcy5hZ2Js
b2NrcyA9IGxlMzIgKHN1cGVyLnNiX2FnYmxvY2tzKTsKIAl4ZnMuYWdibGts
b2cgPSBzdXBlci5zYl9hZ2Jsa2xvZzsKIAorCS8qIERlcml2ZWQgZnJvbSBz
YW5pdGl6ZWQgcGFyYW1ldGVycyAqLworCXhmcy5ic2l6ZSA9IDEgPDwgc3Vw
ZXIuc2JfYmxvY2tsb2c7CisJeGZzLmJsa2xvZyA9IHN1cGVyLnNiX2Jsb2Nr
bG9nOworCXhmcy5iZGxvZyA9IHN1cGVyLnNiX2Jsb2NrbG9nIC0gU0VDVE9S
X0JJVFM7CisJeGZzLmlzaXplID0gMSA8PCBzdXBlci5zYl9pbm9kZWxvZzsK
Kwl4ZnMuZGlyYnNpemUgPSAxIDw8IChzdXBlci5zYl9ibG9ja2xvZyArIHN1
cGVyLnNiX2RpcmJsa2xvZyk7CisJeGZzLmlub3BibG9nID0gc3VwZXIuc2Jf
YmxvY2tsb2cgLSBzdXBlci5zYl9pbm9kZWxvZzsKKwogCXhmcy5idG5vZGVf
cHRyMF9vZmYgPQogCQkoKHhmcy5ic2l6ZSAtIHNpemVvZih4ZnNfYnRyZWVf
YmxvY2tfdCkpIC8KIAkJKHNpemVvZiAoeGZzX2JtYnRfa2V5X3QpICsgc2l6
ZW9mICh4ZnNfYm1idF9wdHJfdCkpKQpkaWZmIC0tZ2l0IGEvdG9vbHMvbGli
ZnNpbWFnZS94ZnMveGZzLmggYi90b29scy9saWJmc2ltYWdlL3hmcy94ZnMu
aAppbmRleCA0MDY5OTI4MWU0NGQuLmI4N2UzN2QzZDdlOSAxMDA2NDQKLS0t
IGEvdG9vbHMvbGliZnNpbWFnZS94ZnMveGZzLmgKKysrIGIvdG9vbHMvbGli
ZnNpbWFnZS94ZnMveGZzLmgKQEAgLTEzNCw2ICsxMzQsMTggQEAgdHlwZWRl
ZiBzdHJ1Y3QgeGZzX3NiCiAgICAgICAgIHhmc191aW50OF90ICAgICAgIHNi
X2R1bW15WzddOyAgICAvKiBwYWRkaW5nICovCiB9IHhmc19zYl90OwogCisv
KiBCb3VuZCB0YWtlbiBmcm9tIHhmcy5jIGluIEdSVUIyLiBJdCBkb2Vzbid0
IGV4aXN0IGluIHRoZSBzcGVjICovCisjZGVmaW5lCVhGU19TQl9ESVJCTEtf
TlVNQklUUwkyNworLyogSW1wbGllZCBieSB0aGUgWEZTIHNwZWNpZmljYXRp
b24uIFRoZSBtaW5pbXVtIGJsb2NrIHNpemUgaXMgNTEyIG9jdGV0cyAqLwor
I2RlZmluZQlYRlNfU0JfQkxPQ0tMT0dfTUlOCTkKKy8qIEltcGxpZWQgYnkg
dGhlIFhGUyBzcGVjaWZpY2F0aW9uLiBUaGUgbWF4aW11bSBibG9jayBzaXpl
IGlzIDY1NTM2IG9jdGV0cyAqLworI2RlZmluZQlYRlNfU0JfQkxPQ0tMT0df
TUFYCTE2CisvKiBJbXBsaWVkIGJ5IHRoZSBYRlMgc3BlY2lmaWNhdGlvbi4g
VGhlIG1pbmltdW0gaW5vZGUgc2l6ZSBpcyAyNTYgb2N0ZXRzICovCisjZGVm
aW5lCVhGU19TQl9JTk9ERUxPR19NSU4JOAorLyogSW1wbGllZCBieSB0aGUg
WEZTIHNwZWNpZmljYXRpb24uIFRoZSBtYXhpbXVtIGlub2RlIHNpemUgaXMg
MjA0OCBvY3RldHMgKi8KKyNkZWZpbmUJWEZTX1NCX0lOT0RFTE9HX01BWAkx
MQorLyogSGlnaCBib3VuZCBmb3Igc2JfYWdibGtsb2cgKi8KKyNkZWZpbmUJ
WEZTX1NCX0FHQkxLTE9HX01BWAkzMgogCiAvKiB0aG9zZSBhcmUgZnJvbSB4
ZnNfYnRyZWUuaCAqLwogCi0tIAoyLjQyLjAKCg==

--=separator
Content-Type: application/octet-stream; name="xsa443/xsa443-4.17-04.patch"
Content-Disposition: attachment; filename="xsa443/xsa443-4.17-04.patch"
Content-Transfer-Encoding: base64

RnJvbSBjNjZmZDAxMjc3OTM5NjM0YzYyNGM4MzQwODM4NjgyZDlkNGZkODM5
IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBBbGVqYW5kcm8gVmFs
bGVqbyA8YWxlamFuZHJvLnZhbGxlam9AY2xvdWQuY29tPgpEYXRlOiBUaHUs
IDE0IFNlcCAyMDIzIDEzOjIyOjUzICswMTAwClN1YmplY3Q6IFtQQVRDSCAw
NC8xMV0gbGliZnNpbWFnZS94ZnM6IEFkZCBjb21waWxlLXRpbWUgY2hlY2sg
dG8gbGliZnNpbWFnZQoKQWRkcyB0aGUgY29tbW9uIHRvb2xzIGluY2x1ZGUg
Zm9sZGVyIHRvIHRoZSAtSSBjb21waWxlIGZsYWdzCm9mIGxpYmZzaW1hZ2Uu
IFRoaXMgYWxsb3dzIHVzIHRvIHVzZToKICB4ZW4tdG9vbHMvY29tbW9uLW1h
Y3Jvcy5oOkJVSUxEX0JVR19PTigpCgpXaXRoIGl0LCBzdGF0aWNhbGx5IGFz
c2VydCBhIHNhbml0aXplZCAiYmxvY2tsb2cgLSBTRUNUT1JfQklUUyIgY2Fu
bm90CnVuZGVyZmxvdy4KClRoaXMgaXMgcGFydCBvZiBYU0EtNDQzIC8gQ1ZF
LTIwMjMtMzQzMjUKClNpZ25lZC1vZmYtYnk6IEFsZWphbmRybyBWYWxsZWpv
IDxhbGVqYW5kcm8udmFsbGVqb0BjbG91ZC5jb20+ClJldmlld2VkLWJ5OiBK
YW4gQmV1bGljaCA8amJldWxpY2hAc3VzZS5jb20+Ci0tLQogdG9vbHMvbGli
ZnNpbWFnZS9jb21tb24ubWsgICAgICB8IDIgKy0KIHRvb2xzL2xpYmZzaW1h
Z2UveGZzL2ZzeXNfeGZzLmMgfCA0ICsrKy0KIDIgZmlsZXMgY2hhbmdlZCwg
NCBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBh
L3Rvb2xzL2xpYmZzaW1hZ2UvY29tbW9uLm1rIGIvdG9vbHMvbGliZnNpbWFn
ZS9jb21tb24ubWsKaW5kZXggNGZjOGM2Njc5NTk5Li5lNDMzNjgzN2QwNDUg
MTAwNjQ0Ci0tLSBhL3Rvb2xzL2xpYmZzaW1hZ2UvY29tbW9uLm1rCisrKyBi
L3Rvb2xzL2xpYmZzaW1hZ2UvY29tbW9uLm1rCkBAIC0xLDcgKzEsNyBAQAog
aW5jbHVkZSAkKFhFTl9ST09UKS90b29scy9SdWxlcy5tawogCiBGU0RJUiA6
PSAkKGxpYmRpcikveGVuZnNpbWFnZQotQ0ZMQUdTICs9IC1Xbm8tdW5rbm93
bi1wcmFnbWFzIC1JJChYRU5fUk9PVCkvdG9vbHMvbGliZnNpbWFnZS9jb21t
b24vIC1ERlNJTUFHRV9GU0RJUj1cIiQoRlNESVIpXCIKK0NGTEFHUyArPSAt
V25vLXVua25vd24tcHJhZ21hcyAtSSQoWEVOX1JPT1QpL3Rvb2xzL2xpYmZz
aW1hZ2UvY29tbW9uLyAkKENGTEFHU194ZW5pbmNsdWRlKSAtREZTSU1BR0Vf
RlNESVI9XCIkKEZTRElSKVwiCiBDRkxBR1MgKz0gLURfR05VX1NPVVJDRQog
TERGTEFHUyArPSAtTC4uL2NvbW1vbi8KIApkaWZmIC0tZ2l0IGEvdG9vbHMv
bGliZnNpbWFnZS94ZnMvZnN5c194ZnMuYyBiL3Rvb2xzL2xpYmZzaW1hZ2Uv
eGZzL2ZzeXNfeGZzLmMKaW5kZXggZTRlYjdlMWVlMjZmLi40YThkZDZmMjM5
N2IgMTAwNjQ0Ci0tLSBhL3Rvb2xzL2xpYmZzaW1hZ2UveGZzL2ZzeXNfeGZz
LmMKKysrIGIvdG9vbHMvbGliZnNpbWFnZS94ZnMvZnN5c194ZnMuYwpAQCAt
MTksNiArMTksNyBAQAogCiAjaW5jbHVkZSA8c3RkYm9vbC5oPgogI2luY2x1
ZGUgPHhlbmZzaW1hZ2VfZ3J1Yi5oPgorI2luY2x1ZGUgPHhlbi10b29scy9s
aWJzLmg+CiAjaW5jbHVkZSAieGZzLmgiCiAKICNkZWZpbmUgTUFYX0xJTktf
Q09VTlQJOApAQCAtNDc3LDkgKzQ3OCwxMCBAQCB4ZnNfbW91bnQgKGZzaV9m
aWxlX3QgKmZmaSwgY29uc3QgY2hhciAqb3B0aW9ucykKIAl4ZnMuYWdibGts
b2cgPSBzdXBlci5zYl9hZ2Jsa2xvZzsKIAogCS8qIERlcml2ZWQgZnJvbSBz
YW5pdGl6ZWQgcGFyYW1ldGVycyAqLworCUJVSUxEX0JVR19PTihYRlNfU0Jf
QkxPQ0tMT0dfTUlOIDwgU0VDVE9SX0JJVFMpOworCXhmcy5iZGxvZyA9IHN1
cGVyLnNiX2Jsb2NrbG9nIC0gU0VDVE9SX0JJVFM7CiAJeGZzLmJzaXplID0g
MSA8PCBzdXBlci5zYl9ibG9ja2xvZzsKIAl4ZnMuYmxrbG9nID0gc3VwZXIu
c2JfYmxvY2tsb2c7Ci0JeGZzLmJkbG9nID0gc3VwZXIuc2JfYmxvY2tsb2cg
LSBTRUNUT1JfQklUUzsKIAl4ZnMuaXNpemUgPSAxIDw8IHN1cGVyLnNiX2lu
b2RlbG9nOwogCXhmcy5kaXJic2l6ZSA9IDEgPDwgKHN1cGVyLnNiX2Jsb2Nr
bG9nICsgc3VwZXIuc2JfZGlyYmxrbG9nKTsKIAl4ZnMuaW5vcGJsb2cgPSBz
dXBlci5zYl9ibG9ja2xvZyAtIHN1cGVyLnNiX2lub2RlbG9nOwotLSAKMi40
Mi4wCgo=

--=separator
Content-Type: application/octet-stream; name="xsa443/xsa443-4.17-05.patch"
Content-Disposition: attachment; filename="xsa443/xsa443-4.17-05.patch"
Content-Transfer-Encoding: base64

RnJvbSBhZDVkMGRiNWU2OGU1ZDRlNzkyNTVmYTg1ZDljYjAwNjliYjFjNWQ1
IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBBbGVqYW5kcm8gVmFs
bGVqbyA8YWxlamFuZHJvLnZhbGxlam9AY2xvdWQuY29tPgpEYXRlOiBNb24s
IDI1IFNlcCAyMDIzIDE4OjMyOjIxICswMTAwClN1YmplY3Q6IFtQQVRDSCAw
NS8xMV0gdG9vbHMvcHlncnViOiBSZW1vdmUgdW5uZWNlc3NhcnkgaHlwZXJj
YWxsCgpUaGVyZSdzIGEgaHlwZXJjYWxsIGJlaW5nIGlzc3VlZCBpbiBvcmRl
ciB0byBkZXRlcm1pbmUgd2hldGhlciBQVjY0IGlzCnN1cHBvcnRlZCwgYnV0
IHNpbmNlIFhlbiA0LjMgdGhhdCdzIHN0cmljdGx5IHRydWUgc28gaXQncyBu
b3QgcmVxdWlyZWQuCgpQbHVzLCB0aGlzIHdheSB3ZSBjYW4gYXZvaWQgbWFw
cGluZyB0aGUgcHJpdmNtZCBpbnRlcmZhY2UgYWx0b2dldGhlciBpbiB0aGUK
ZGVwcml2IHB5Z3J1Yi4KClRoaXMgaXMgcGFydCBvZiBYU0EtNDQzIC8gQ1ZF
LTIwMjMtMzQzMjUKClNpZ25lZC1vZmYtYnk6IEFsZWphbmRybyBWYWxsZWpv
IDxhbGVqYW5kcm8udmFsbGVqb0BjbG91ZC5jb20+ClJldmlld2VkLWJ5OiBB
bmRyZXcgQ29vcGVyIDxhbmRyZXcuY29vcGVyM0BjaXRyaXguY29tPgotLS0K
IHRvb2xzL3B5Z3J1Yi9zcmMvcHlncnViIHwgMTIgKy0tLS0tLS0tLS0tCiAx
IGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDExIGRlbGV0aW9ucygt
KQoKZGlmZiAtLWdpdCBhL3Rvb2xzL3B5Z3J1Yi9zcmMvcHlncnViIGIvdG9v
bHMvcHlncnViL3NyYy9weWdydWIKaW5kZXggY2U3YWIwZWI4Y2YzLi5jZTRl
MDdkM2U4MjMgMTAwNzU1Ci0tLSBhL3Rvb2xzL3B5Z3J1Yi9zcmMvcHlncnVi
CisrKyBiL3Rvb2xzL3B5Z3J1Yi9zcmMvcHlncnViCkBAIC0xOCw3ICsxOCw2
IEBAIGltcG9ydCBvcywgc3lzLCBzdHJpbmcsIHN0cnVjdCwgdGVtcGZpbGUs
IHJlLCB0cmFjZWJhY2ssIHN0YXQsIGVycm5vCiBpbXBvcnQgY29weQogaW1w
b3J0IGxvZ2dpbmcKIGltcG9ydCBwbGF0Zm9ybQotaW1wb3J0IHhlbi5sb3ds
ZXZlbC54YwogCiBpbXBvcnQgY3Vyc2VzLCBfY3Vyc2VzLCBjdXJzZXMudGV4
dHBhZCwgY3Vyc2VzLmFzY2lpCiBpbXBvcnQgZ2V0b3B0CkBAIC02NjgsMTQg
KzY2Nyw2IEBAIGRlZiBydW5fZ3J1YihmaWxlLCBlbnRyeSwgZnMsIGNmZ19h
cmdzKToKIAogICAgIHJldHVybiBncnViY2ZnCiAKLWRlZiBzdXBwb3J0czY0
Yml0UFZndWVzdCgpOgotICAgIHhjID0geGVuLmxvd2xldmVsLnhjLnhjKCkK
LSAgICBjYXBzID0geGMueGVuaW5mbygpWyd4ZW5fY2FwcyddLnNwbGl0KCIg
IikKLSAgICBmb3IgY2FwIGluIGNhcHM6Ci0gICAgICAgIGlmIGNhcCA9PSAi
eGVuLTMuMC14ODZfNjQiOgotICAgICAgICAgICAgcmV0dXJuIFRydWUKLSAg
ICByZXR1cm4gRmFsc2UKLQogIyBJZiBub3RoaW5nIGhhcyBiZWVuIHNwZWNp
ZmllZCwgbG9vayBmb3IgYSBTb2xhcmlzIGRvbVUuIElmIGZvdW5kLCBwZXJm
b3JtIHRoZQogIyBuZWNlc3NhcnkgdHdlYWtzLgogZGVmIHNuaWZmX3NvbGFy
aXMoZnMsIGNmZyk6CkBAIC02ODQsOCArNjc1LDcgQEAgZGVmIHNuaWZmX3Nv
bGFyaXMoZnMsIGNmZyk6CiAgICAgICAgIHJldHVybiBjZmcKIAogICAgIGlm
IG5vdCBjZmdbImtlcm5lbCJdOgotICAgICAgICBpZiBzdXBwb3J0czY0Yml0
UFZndWVzdCgpIGFuZCBcCi0gICAgICAgICAgZnMuZmlsZV9leGlzdHMoIi9w
bGF0Zm9ybS9pODZ4cHYva2VybmVsL2FtZDY0L3VuaXgiKToKKyAgICAgICAg
aWYgZnMuZmlsZV9leGlzdHMoIi9wbGF0Zm9ybS9pODZ4cHYva2VybmVsL2Ft
ZDY0L3VuaXgiKToKICAgICAgICAgICAgIGNmZ1sia2VybmVsIl0gPSAiL3Bs
YXRmb3JtL2k4Nnhwdi9rZXJuZWwvYW1kNjQvdW5peCIKICAgICAgICAgICAg
IGNmZ1sicmFtZGlzayJdID0gIi9wbGF0Zm9ybS9pODZwYy9hbWQ2NC9ib290
X2FyY2hpdmUiCiAgICAgICAgIGVsaWYgZnMuZmlsZV9leGlzdHMoIi9wbGF0
Zm9ybS9pODZ4cHYva2VybmVsL3VuaXgiKToKLS0gCjIuNDIuMAoK

--=separator
Content-Type: application/octet-stream; name="xsa443/xsa443-4.17-06.patch"
Content-Disposition: attachment; filename="xsa443/xsa443-4.17-06.patch"
Content-Transfer-Encoding: base64

RnJvbSBkM2NlYjBiMzE0MDA1YTY1NmRkMmNhNGIyODIxNTc1YTM2Zjg0MjZk
IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBBbGVqYW5kcm8gVmFs
bGVqbyA8YWxlamFuZHJvLnZhbGxlam9AY2xvdWQuY29tPgpEYXRlOiBNb24s
IDI1IFNlcCAyMDIzIDE4OjMyOjIyICswMTAwClN1YmplY3Q6IFtQQVRDSCAw
Ni8xMV0gdG9vbHMvcHlncnViOiBTbWFsbCByZWZhY3RvcnMKClNtYWxsIHRp
ZHkgdXAgdG8gZW5zdXJlIG91dHB1dF9kaXJlY3RvcnkgYWx3YXlzIGhhcyBh
IHRyYWlsaW5nICcvJyB0byBlYXNlCmNvbmNhdGVuYXRpbmcgcGF0aHMgYW5k
IHRoYXQgYG91dHB1dGAgY2FuIG9ubHkgYmUgYSBmaWxlbmFtZSBvciBOb25l
LgoKVGhpcyBpcyBwYXJ0IG9mIFhTQS00NDMgLyBDVkUtMjAyMy0zNDMyNQoK
U2lnbmVkLW9mZi1ieTogQWxlamFuZHJvIFZhbGxlam8gPGFsZWphbmRyby52
YWxsZWpvQGNsb3VkLmNvbT4KQWNrZWQtYnk6IEFuZHJldyBDb29wZXIgPGFu
ZHJldy5jb29wZXIzQGNpdHJpeC5jb20+Ci0tLQogdG9vbHMvcHlncnViL3Ny
Yy9weWdydWIgfCAxMCArKysrKy0tLS0tCiAxIGZpbGUgY2hhbmdlZCwgNSBp
bnNlcnRpb25zKCspLCA1IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3Rv
b2xzL3B5Z3J1Yi9zcmMvcHlncnViIGIvdG9vbHMvcHlncnViL3NyYy9weWdy
dWIKaW5kZXggY2U0ZTA3ZDNlODIzLi4xMDQyYzA1Yjg2NzYgMTAwNzU1Ci0t
LSBhL3Rvb2xzL3B5Z3J1Yi9zcmMvcHlncnViCisrKyBiL3Rvb2xzL3B5Z3J1
Yi9zcmMvcHlncnViCkBAIC03OTMsNyArNzkzLDcgQEAgaWYgX19uYW1lX18g
PT0gIl9fbWFpbl9fIjoKICAgICBkZWJ1ZyA9IEZhbHNlCiAgICAgbm90X3Jl
YWxseSA9IEZhbHNlCiAgICAgb3V0cHV0X2Zvcm1hdCA9ICJzeHAiCi0gICAg
b3V0cHV0X2RpcmVjdG9yeSA9ICIvdmFyL3J1bi94ZW4vcHlncnViIgorICAg
IG91dHB1dF9kaXJlY3RvcnkgPSAiL3Zhci9ydW4veGVuL3B5Z3J1Yi8iCiAK
ICAgICAjIHdoYXQgd2FzIHBhc3NlZCBpbgogICAgIGluY2ZnID0geyAia2Vy
bmVsIjogTm9uZSwgInJhbWRpc2siOiBOb25lLCAiYXJncyI6ICIiIH0KQEAg
LTgxNSw3ICs4MTUsOCBAQCBpZiBfX25hbWVfXyA9PSAiX19tYWluX18iOgog
ICAgICAgICAgICAgdXNhZ2UoKQogICAgICAgICAgICAgc3lzLmV4aXQoKQog
ICAgICAgICBlbGlmIG8gaW4gKCItLW91dHB1dCIsKToKLSAgICAgICAgICAg
IG91dHB1dCA9IGEKKyAgICAgICAgICAgIGlmIGEgIT0gIi0iOgorICAgICAg
ICAgICAgICAgIG91dHB1dCA9IGEKICAgICAgICAgZWxpZiBvIGluICgiLS1r
ZXJuZWwiLCk6CiAgICAgICAgICAgICBpbmNmZ1sia2VybmVsIl0gPSBhCiAg
ICAgICAgIGVsaWYgbyBpbiAoIi0tcmFtZGlzayIsKToKQEAgLTg0NywxMiAr
ODQ4LDExIEBAIGlmIF9fbmFtZV9fID09ICJfX21haW5fXyI6CiAgICAgICAg
ICAgICBpZiBub3Qgb3MucGF0aC5pc2RpcihhKToKICAgICAgICAgICAgICAg
ICBwcmludCgiJXMgaXMgbm90IGFuIGV4aXN0aW5nIGRpcmVjdG9yeSIgJSBh
KQogICAgICAgICAgICAgICAgIHN5cy5leGl0KDEpCi0gICAgICAgICAgICBv
dXRwdXRfZGlyZWN0b3J5ID0gYQorICAgICAgICAgICAgb3V0cHV0X2RpcmVj
dG9yeSA9IGEgKyAnLycKIAogICAgIGlmIGRlYnVnOgogICAgICAgICBsb2dn
aW5nLmJhc2ljQ29uZmlnKGxldmVsPWxvZ2dpbmcuREVCVUcpCiAKLQogICAg
IHRyeToKICAgICAgICAgb3MubWFrZWRpcnMob3V0cHV0X2RpcmVjdG9yeSwg
MG83MDApCiAgICAgZXhjZXB0IE9TRXJyb3IgYXMgZToKQEAgLTg2MSw3ICs4
NjEsNyBAQCBpZiBfX25hbWVfXyA9PSAiX19tYWluX18iOgogICAgICAgICBl
bHNlOgogICAgICAgICAgICAgcmFpc2UKIAotICAgIGlmIG91dHB1dCBpcyBO
b25lIG9yIG91dHB1dCA9PSAiLSI6CisgICAgaWYgb3V0cHV0IGlzIE5vbmU6
CiAgICAgICAgIGZkID0gc3lzLnN0ZG91dC5maWxlbm8oKQogICAgIGVsc2U6
CiAgICAgICAgIGZkID0gb3Mub3BlbihvdXRwdXQsIG9zLk9fV1JPTkxZKQot
LSAKMi40Mi4wCgo=

--=separator
Content-Type: application/octet-stream; name="xsa443/xsa443-4.17-07.patch"
Content-Disposition: attachment; filename="xsa443/xsa443-4.17-07.patch"
Content-Transfer-Encoding: base64

RnJvbSA5ZTgwY2ZlY2RlMzM4Y2VhMGRiMTM2YzJmYjVlZDc4ZDYwODFlMDVm
IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBBbGVqYW5kcm8gVmFs
bGVqbyA8YWxlamFuZHJvLnZhbGxlam9AY2xvdWQuY29tPgpEYXRlOiBNb24s
IDI1IFNlcCAyMDIzIDE4OjMyOjIzICswMTAwClN1YmplY3Q6IFtQQVRDSCAw
Ny8xMV0gdG9vbHMvcHlncnViOiBPcGVuIHRoZSBvdXRwdXQgZmlsZXMgZWFy
bGllcgoKVGhpcyBwYXRjaCBhbGxvd3MgcHlncnViIHRvIGdldCBhaG9sZCBv
ZiBldmVyeSBSVyBmaWxlIGRlc2NyaXB0b3IgaXQgbmVlZHMKZWFybHkgb24u
IEEgbGF0ZXIgcGF0Y2ggd2lsbCBjbGFtcCB0aGUgZmlsZXN5c3RlbSBpdCBj
YW4gYWNjZXNzIHNvIGl0IGNhbid0Cm9idGFpbiBhbnkgb3RoZXJzLgoKVGhp
cyBpcyBwYXJ0IG9mIFhTQS00NDMgLyBDVkUtMjAyMy0zNDMyNQoKU2lnbmVk
LW9mZi1ieTogQWxlamFuZHJvIFZhbGxlam8gPGFsZWphbmRyby52YWxsZWpv
QGNsb3VkLmNvbT4KQWNrZWQtYnk6IEFuZHJldyBDb29wZXIgPGFuZHJldy5j
b29wZXIzQGNpdHJpeC5jb20+Ci0tLQogdG9vbHMvcHlncnViL3NyYy9weWdy
dWIgfCAzNyArKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0t
CiAxIGZpbGUgY2hhbmdlZCwgMjIgaW5zZXJ0aW9ucygrKSwgMTUgZGVsZXRp
b25zKC0pCgpkaWZmIC0tZ2l0IGEvdG9vbHMvcHlncnViL3NyYy9weWdydWIg
Yi90b29scy9weWdydWIvc3JjL3B5Z3J1YgppbmRleCAxMDQyYzA1Yjg2NzYu
LjkxZTJlYzJhYjEwNSAxMDA3NTUKLS0tIGEvdG9vbHMvcHlncnViL3NyYy9w
eWdydWIKKysrIGIvdG9vbHMvcHlncnViL3NyYy9weWdydWIKQEAgLTczOCw4
ICs3MzgsNyBAQCBpZiBfX25hbWVfXyA9PSAiX19tYWluX18iOgogICAgIGRl
ZiB1c2FnZSgpOgogICAgICAgICBwcmludCgiVXNhZ2U6ICVzIFstcXwtLXF1
aWV0XSBbLWl8LS1pbnRlcmFjdGl2ZV0gWy1sfC0tbGlzdC1lbnRyaWVzXSBb
LW58LS1ub3QtcmVhbGx5XSBbLS1vdXRwdXQ9XSBbLS1rZXJuZWw9XSBbLS1y
YW1kaXNrPV0gWy0tYXJncz1dIFstLWVudHJ5PV0gWy0tb3V0cHV0LWRpcmVj
dG9yeT1dIFstLW91dHB1dC1mb3JtYXQ9c3hwfHNpbXBsZXxzaW1wbGUwXSBb
LS1vZmZzZXQ9XSA8aW1hZ2U+IiAlKHN5cy5hcmd2WzBdLCksIGZpbGU9c3lz
LnN0ZGVycikKIAotICAgIGRlZiBjb3B5X2Zyb21faW1hZ2UoZnMsIGZpbGVf
dG9fcmVhZCwgZmlsZV90eXBlLCBvdXRwdXRfZGlyZWN0b3J5LAotICAgICAg
ICAgICAgICAgICAgICAgICAgbm90X3JlYWxseSk6CisgICAgZGVmIGNvcHlf
ZnJvbV9pbWFnZShmcywgZmlsZV90b19yZWFkLCBmaWxlX3R5cGUsIGZkX2Rz
dCwgcGF0aF9kc3QsIG5vdF9yZWFsbHkpOgogICAgICAgICBpZiBub3RfcmVh
bGx5OgogICAgICAgICAgICAgaWYgZnMuZmlsZV9leGlzdHMoZmlsZV90b19y
ZWFkKToKICAgICAgICAgICAgICAgICByZXR1cm4gIjwlczolcz4iICUgKGZp
bGVfdHlwZSwgZmlsZV90b19yZWFkKQpAQCAtNzUwLDIxICs3NDksMTggQEAg
aWYgX19uYW1lX18gPT0gIl9fbWFpbl9fIjoKICAgICAgICAgZXhjZXB0IEV4
Y2VwdGlvbiBhcyBlOgogICAgICAgICAgICAgcHJpbnQoZSwgZmlsZT1zeXMu
c3RkZXJyKQogICAgICAgICAgICAgc3lzLmV4aXQoIkVycm9yIG9wZW5pbmcg
JXMgaW4gZ3Vlc3QiICUgZmlsZV90b19yZWFkKQotICAgICAgICAodGZkLCBy
ZXQpID0gdGVtcGZpbGUubWtzdGVtcChwcmVmaXg9ImJvb3RfIitmaWxlX3R5
cGUrIi4iLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBkaXI9b3V0cHV0X2RpcmVjdG9yeSkKICAgICAgICAgZGF0YW9mZiA9IDAK
ICAgICAgICAgd2hpbGUgVHJ1ZToKICAgICAgICAgICAgIGRhdGEgPSBkYXRh
ZmlsZS5yZWFkKEZTX1JFQURfTUFYLCBkYXRhb2ZmKQogICAgICAgICAgICAg
aWYgbGVuKGRhdGEpID09IDA6Ci0gICAgICAgICAgICAgICAgb3MuY2xvc2Uo
dGZkKQorICAgICAgICAgICAgICAgIG9zLmNsb3NlKGZkX2RzdCkKICAgICAg
ICAgICAgICAgICBkZWwgZGF0YWZpbGUKLSAgICAgICAgICAgICAgICByZXR1
cm4gcmV0CisgICAgICAgICAgICAgICAgcmV0dXJuCiAgICAgICAgICAgICB0
cnk6Ci0gICAgICAgICAgICAgICAgb3Mud3JpdGUodGZkLCBkYXRhKQorICAg
ICAgICAgICAgICAgIG9zLndyaXRlKGZkX2RzdCwgZGF0YSkKICAgICAgICAg
ICAgIGV4Y2VwdCBFeGNlcHRpb24gYXMgZToKICAgICAgICAgICAgICAgICBw
cmludChlLCBmaWxlPXN5cy5zdGRlcnIpCi0gICAgICAgICAgICAgICAgb3Mu
Y2xvc2UodGZkKQotICAgICAgICAgICAgICAgIG9zLnVubGluayhyZXQpCisg
ICAgICAgICAgICAgICAgb3MudW5saW5rKHBhdGhfZHN0KQogICAgICAgICAg
ICAgICAgIGRlbCBkYXRhZmlsZQogICAgICAgICAgICAgICAgIHN5cy5leGl0
KCJFcnJvciB3cml0aW5nIHRlbXBvcmFyeSBjb3B5IG9mICIrZmlsZV90eXBl
KQogICAgICAgICAgICAgZGF0YW9mZiArPSBsZW4oZGF0YSkKQEAgLTg2MSw2
ICs4NTcsMTQgQEAgaWYgX19uYW1lX18gPT0gIl9fbWFpbl9fIjoKICAgICAg
ICAgZWxzZToKICAgICAgICAgICAgIHJhaXNlCiAKKyAgICBpZiBub3RfcmVh
bGx5OgorICAgICAgICBmZF9rZXJuZWwgPSAgcGF0aF9rZXJuZWwgPSBmZF9y
YW1kaXNrID0gcGF0aF9yYW1kaXNrID0gTm9uZQorICAgIGVsc2U6CisgICAg
ICAgIChmZF9rZXJuZWwsIHBhdGhfa2VybmVsKSA9IHRlbXBmaWxlLm1rc3Rl
bXAocHJlZml4PSJib290X2tlcm5lbC4iLAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpcj1vdXRwdXRf
ZGlyZWN0b3J5KQorICAgICAgICAoZmRfcmFtZGlzaywgcGF0aF9yYW1kaXNr
KSA9IHRlbXBmaWxlLm1rc3RlbXAocHJlZml4PSJib290X3JhbWRpc2suIiwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGRpcj1vdXRwdXRfZGlyZWN0b3J5KQorCiAgICAgaWYgb3V0
cHV0IGlzIE5vbmU6CiAgICAgICAgIGZkID0gc3lzLnN0ZG91dC5maWxlbm8o
KQogICAgIGVsc2U6CkBAIC05MjAsMjAgKzkyNCwyMyBAQCBpZiBfX25hbWVf
XyA9PSAiX19tYWluX18iOgogICAgIGlmIGZzIGlzIE5vbmU6CiAgICAgICAg
IHJhaXNlIFJ1bnRpbWVFcnJvcigiVW5hYmxlIHRvIGZpbmQgcGFydGl0aW9u
IGNvbnRhaW5pbmcga2VybmVsIikKIAotICAgIGJvb3RjZmdbImtlcm5lbCJd
ID0gY29weV9mcm9tX2ltYWdlKGZzLCBjaG9zZW5jZmdbImtlcm5lbCJdLCAi
a2VybmVsIiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBvdXRwdXRfZGlyZWN0b3J5LCBub3RfcmVhbGx5KQorICAgIGNvcHlf
ZnJvbV9pbWFnZShmcywgY2hvc2VuY2ZnWyJrZXJuZWwiXSwgImtlcm5lbCIs
CisgICAgICAgICAgICAgICAgICAgIGZkX2tlcm5lbCwgcGF0aF9rZXJuZWws
IG5vdF9yZWFsbHkpCisgICAgYm9vdGNmZ1sia2VybmVsIl0gPSBwYXRoX2tl
cm5lbAogCiAgICAgaWYgY2hvc2VuY2ZnWyJyYW1kaXNrIl06CiAgICAgICAg
IHRyeToKLSAgICAgICAgICAgIGJvb3RjZmdbInJhbWRpc2siXSA9IGNvcHlf
ZnJvbV9pbWFnZShmcywgY2hvc2VuY2ZnWyJyYW1kaXNrIl0sCi0gICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInJh
bWRpc2siLCBvdXRwdXRfZGlyZWN0b3J5LAotICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5vdF9yZWFsbHkpCisg
ICAgICAgICAgICBjb3B5X2Zyb21faW1hZ2UoZnMsIGNob3NlbmNmZ1sicmFt
ZGlzayJdLCAicmFtZGlzayIsCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgZmRfcmFtZGlzaywgcGF0aF9yYW1kaXNrLCBub3RfcmVhbGx5KQogICAg
ICAgICBleGNlcHQ6CiAgICAgICAgICAgICBpZiBub3Qgbm90X3JlYWxseToK
LSAgICAgICAgICAgICAgICBvcy51bmxpbmsoYm9vdGNmZ1sia2VybmVsIl0p
CisgICAgICAgICAgICAgICAgb3MudW5saW5rKHBhdGhfa2VybmVsKQogICAg
ICAgICAgICAgcmFpc2UKKyAgICAgICAgYm9vdGNmZ1sicmFtZGlzayJdID0g
cGF0aF9yYW1kaXNrCiAgICAgZWxzZToKICAgICAgICAgaW5pdHJkID0gTm9u
ZQorICAgICAgICBpZiBub3Qgbm90X3JlYWxseToKKyAgICAgICAgICAgIG9z
LnVubGluayhwYXRoX3JhbWRpc2spCiAKICAgICBhcmdzID0gTm9uZQogICAg
IGlmIGNob3NlbmNmZ1siYXJncyJdOgotLSAKMi40Mi4wCgo=

--=separator
Content-Type: application/octet-stream; name="xsa443/xsa443-4.17-08.patch"
Content-Disposition: attachment; filename="xsa443/xsa443-4.17-08.patch"
Content-Transfer-Encoding: base64

RnJvbSAyZmI0Y2RjZWRkODcyMGY3OGM0YmQ0NDczOWE1ZDMwZGQxYTdkOWE1
IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBBbGVqYW5kcm8gVmFs
bGVqbyA8YWxlamFuZHJvLnZhbGxlam9AY2xvdWQuY29tPgpEYXRlOiBNb24s
IDI1IFNlcCAyMDIzIDE4OjMyOjI0ICswMTAwClN1YmplY3Q6IFtQQVRDSCAw
OC8xMV0gdG9vbHMvbGliZnNpbWFnZTogRXhwb3J0IGEgbmV3IGZ1bmN0aW9u
IHRvIHByZWxvYWQgYWxsCiBwbHVnaW5zCgpUaGlzIGlzIHdvcmsgcmVxdWly
ZWQgaW4gb3JkZXIgdG8gbGV0IHB5Z3J1YiBvcGVyYXRlIGluIGhpZ2hseSBk
ZXByaXZpbGVnZWQKY2hyb290IG1vZGUuIFRoaXMgcGF0Y2ggYWRkcyBhIGZ1
bmN0aW9uIHRoYXQgcHJlbG9hZHMgZXZlcnkgcGx1Z2luLCBoZW5jZQplbnN1
cmluZyB0aGF0IGEgb24gZnVuY3Rpb24gZXhpdCwgZXZlcnkgc2hhcmVkIGxp
YnJhcnkgaXMgbG9hZGVkIGluIG1lbW9yeS4KClRoZSBuZXcgImluaXQiIGZ1
bmN0aW9uIGlzIHN1cHBvc2VkIHRvIGJlIHVzZWQgYmVmb3JlIGRlcHJpdiwg
YnV0IHRoYXQncwpmaW5lIGJlY2F1c2UgaXQncyBub3QgYWN0aW5nIG9uIHVu
dHJ1c3RlZCBkYXRhLgoKVGhpcyBpcyBwYXJ0IG9mIFhTQS00NDMgLyBDVkUt
MjAyMy0zNDMyNQoKU2lnbmVkLW9mZi1ieTogQWxlamFuZHJvIFZhbGxlam8g
PGFsZWphbmRyby52YWxsZWpvQGNsb3VkLmNvbT4KQWNrZWQtYnk6IEFuZHJl
dyBDb29wZXIgPGFuZHJldy5jb29wZXIzQGNpdHJpeC5jb20+Ci0tLQogdG9v
bHMvbGliZnNpbWFnZS9jb21tb24vZnNpbWFnZV9wbHVnaW4uYyB8ICA0ICsr
LS0KIHRvb2xzL2xpYmZzaW1hZ2UvY29tbW9uL21hcGZpbGUtR05VICAgICAg
fCAgMSArCiB0b29scy9saWJmc2ltYWdlL2NvbW1vbi9tYXBmaWxlLVN1bk9T
ICAgIHwgIDEgKwogdG9vbHMvbGliZnNpbWFnZS9jb21tb24veGVuZnNpbWFn
ZS5oICAgICB8ICA4ICsrKysrKysrCiB0b29scy9weWdydWIvc3JjL2ZzaW1h
Z2UvZnNpbWFnZS5jICAgICAgIHwgMTUgKysrKysrKysrKysrKysrCiA1IGZp
bGVzIGNoYW5nZWQsIDI3IGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0p
CgpkaWZmIC0tZ2l0IGEvdG9vbHMvbGliZnNpbWFnZS9jb21tb24vZnNpbWFn
ZV9wbHVnaW4uYyBiL3Rvb2xzL2xpYmZzaW1hZ2UvY29tbW9uL2ZzaW1hZ2Vf
cGx1Z2luLmMKaW5kZXggZGUxNDEyYjQyMzNhLi5kMGNiOWU5NmE2NTQgMTAw
NjQ0Ci0tLSBhL3Rvb2xzL2xpYmZzaW1hZ2UvY29tbW9uL2ZzaW1hZ2VfcGx1
Z2luLmMKKysrIGIvdG9vbHMvbGliZnNpbWFnZS9jb21tb24vZnNpbWFnZV9w
bHVnaW4uYwpAQCAtMTE5LDcgKzExOSw3IEBAIGZhaWw6CiAJcmV0dXJuICgt
MSk7CiB9CiAKLXN0YXRpYyBpbnQgbG9hZF9wbHVnaW5zKHZvaWQpCitpbnQg
ZnNpX2luaXQodm9pZCkKIHsKIAljb25zdCBjaGFyICpmc2RpciA9IGdldGVu
digiWEVOX0ZTSU1BR0VfRlNESVIiKTsKIAlzdHJ1Y3QgZGlyZW50ICpkcCA9
IE5VTEw7CkBAIC0xODAsNyArMTgwLDcgQEAgaW50IGZpbmRfcGx1Z2luKGZz
aV90ICpmc2ksIGNvbnN0IGNoYXIgKnBhdGgsIGNvbnN0IGNoYXIgKm9wdGlv
bnMpCiAJZnNpX3BsdWdpbl90ICpmcDsKIAlpbnQgcmV0ID0gMDsKIAotCWlm
IChwbHVnaW5zID09IE5VTEwgJiYgKHJldCA9IGxvYWRfcGx1Z2lucygpKSAh
PSAwKQorCWlmIChwbHVnaW5zID09IE5VTEwgJiYgKHJldCA9IGZzaV9pbml0
KCkpICE9IDApCiAJCWdvdG8gb3V0OwogCiAJZm9yIChmcCA9IHBsdWdpbnM7
IGZwICE9IE5VTEw7IGZwID0gZnAtPmZwX25leHQpIHsKZGlmZiAtLWdpdCBh
L3Rvb2xzL2xpYmZzaW1hZ2UvY29tbW9uL21hcGZpbGUtR05VIGIvdG9vbHMv
bGliZnNpbWFnZS9jb21tb24vbWFwZmlsZS1HTlUKaW5kZXggMjZkNGQ3YTY5
ZWM3Li4yZDU0ZDUyN2Q3ZjUgMTAwNjQ0Ci0tLSBhL3Rvb2xzL2xpYmZzaW1h
Z2UvY29tbW9uL21hcGZpbGUtR05VCisrKyBiL3Rvb2xzL2xpYmZzaW1hZ2Uv
Y29tbW9uL21hcGZpbGUtR05VCkBAIC0xLDYgKzEsNyBAQAogVkVSU0lPTiB7
CiAJbGliZnNpbWFnZS5zby4xLjAgewogCQlnbG9iYWw6CisJCQlmc2lfaW5p
dDsKIAkJCWZzaV9vcGVuX2ZzaW1hZ2U7CiAJCQlmc2lfY2xvc2VfZnNpbWFn
ZTsKIAkJCWZzaV9maWxlX2V4aXN0czsKZGlmZiAtLWdpdCBhL3Rvb2xzL2xp
YmZzaW1hZ2UvY29tbW9uL21hcGZpbGUtU3VuT1MgYi90b29scy9saWJmc2lt
YWdlL2NvbW1vbi9tYXBmaWxlLVN1bk9TCmluZGV4IGU5OWI5MGI2NTA3Ny4u
NDhkZWVkYjQyNTJmIDEwMDY0NAotLS0gYS90b29scy9saWJmc2ltYWdlL2Nv
bW1vbi9tYXBmaWxlLVN1bk9TCisrKyBiL3Rvb2xzL2xpYmZzaW1hZ2UvY29t
bW9uL21hcGZpbGUtU3VuT1MKQEAgLTEsNSArMSw2IEBACiBsaWJmc2ltYWdl
LnNvLjEuMCB7CiAJZ2xvYmFsOgorCQlmc2lfaW5pdDsKIAkJZnNpX29wZW5f
ZnNpbWFnZTsKIAkJZnNpX2Nsb3NlX2ZzaW1hZ2U7CiAJCWZzaV9maWxlX2V4
aXN0czsKZGlmZiAtLWdpdCBhL3Rvb2xzL2xpYmZzaW1hZ2UvY29tbW9uL3hl
bmZzaW1hZ2UuaCBiL3Rvb2xzL2xpYmZzaW1hZ2UvY29tbW9uL3hlbmZzaW1h
Z2UuaAppbmRleCAyMDFhYmQ1NGYyM2EuLjM0MTg4M2IyZDcxYSAxMDA2NDQK
LS0tIGEvdG9vbHMvbGliZnNpbWFnZS9jb21tb24veGVuZnNpbWFnZS5oCisr
KyBiL3Rvb2xzL2xpYmZzaW1hZ2UvY29tbW9uL3hlbmZzaW1hZ2UuaApAQCAt
MzUsNiArMzUsMTQgQEAgZXh0ZXJuIEMgewogdHlwZWRlZiBzdHJ1Y3QgZnNp
IGZzaV90OwogdHlwZWRlZiBzdHJ1Y3QgZnNpX2ZpbGUgZnNpX2ZpbGVfdDsK
IAorLyoKKyAqIE9wdGlvbmFsIGluaXRpYWxpemF0aW9uIGZ1bmN0aW9uLiBJ
ZiBpbnZva2VkIGl0IGxvYWRzIHRoZSBhc3NvY2lhdGVkCisgKiBkeW5hbWlj
IGxpYnJhcmllcyBmb3IgdGhlIGJhY2tlbmRzIGFoZWFkIG9mIHRpbWUuIFRo
aXMgaXMgcmVxdWlyZWQgaWYKKyAqIHRoZSBsaWJyYXJ5IGlzIHRvIHJ1biBh
cyBwYXJ0IG9mIGEgaGlnaGx5IGRlcHJpdmlsZWdlZCBleGVjdXRhYmxlLCBh
cworICogdGhlIGxpYnJhcmllcyBtYXkgbm90IGJlIHJlYWNoYWJsZSBhZnRl
ciBkZXByaXYuCisgKi8KK2ludCBmc2lfaW5pdCh2b2lkKTsKKwogZnNpX3Qg
KmZzaV9vcGVuX2ZzaW1hZ2UoY29uc3QgY2hhciAqLCB1aW50NjRfdCwgY29u
c3QgY2hhciAqKTsKIHZvaWQgZnNpX2Nsb3NlX2ZzaW1hZ2UoZnNpX3QgKik7
CiAKZGlmZiAtLWdpdCBhL3Rvb2xzL3B5Z3J1Yi9zcmMvZnNpbWFnZS9mc2lt
YWdlLmMgYi90b29scy9weWdydWIvc3JjL2ZzaW1hZ2UvZnNpbWFnZS5jCmlu
ZGV4IDJlYmJiZTM1ZGY5Mi4uOTJmYmYyODUxZjAxIDEwMDY0NAotLS0gYS90
b29scy9weWdydWIvc3JjL2ZzaW1hZ2UvZnNpbWFnZS5jCisrKyBiL3Rvb2xz
L3B5Z3J1Yi9zcmMvZnNpbWFnZS9mc2ltYWdlLmMKQEAgLTI4Niw2ICsyODYs
MTUgQEAgZnNpbWFnZV9nZXRib290c3RyaW5nKFB5T2JqZWN0ICpvLCBQeU9i
amVjdCAqYXJncykKIAlyZXR1cm4gUHlfQnVpbGRWYWx1ZSgicyIsIGJvb3Rz
dHJpbmcpOwogfQogCitzdGF0aWMgUHlPYmplY3QgKgorZnNpbWFnZV9pbml0
KFB5T2JqZWN0ICpvLCBQeU9iamVjdCAqYXJncykKK3sKKwlpZiAoIVB5QXJn
X1BhcnNlVHVwbGUoYXJncywgIiIpKQorCQlyZXR1cm4gKE5VTEwpOworCisJ
cmV0dXJuIFB5X0J1aWxkVmFsdWUoImkiLCBmc2lfaW5pdCgpKTsKK30KKwog
UHlEb2NfU1RSVkFSKGZzaW1hZ2Vfb3Blbl9fZG9jX18sCiAgICAgIm9wZW4o
bmFtZSwgW29mZnNldD1vZmZdKSAtIE9wZW4gdGhlIGdpdmVuIGZpbGUgYXMg
YSBmaWxlc3lzdGVtIGltYWdlLlxuIgogICAgICJcbiIKQEAgLTI5Nyw3ICsz
MDYsMTMgQEAgUHlEb2NfU1RSVkFSKGZzaW1hZ2VfZ2V0Ym9vdHN0cmluZ19f
ZG9jX18sCiAgICAgImdldGJvb3RzdHJpbmcoZnMpIC0gUmV0dXJuIHRoZSBi
b290IHN0cmluZyBuZWVkZWQgZm9yIHRoaXMgZmlsZSBzeXN0ZW0gIgogICAg
ICJvciBOVUxMIGlmIG5vbmUgaXMgbmVlZGVkLlxuIik7CiAKK1B5RG9jX1NU
UlZBUihmc2ltYWdlX2luaXRfX2RvY19fLAorICAgICJpbml0KCkgLSBMb2Fk
cyBldmVyeSBkeW5hbWljIGxpYnJhcnkgY29udGFpbmVkIGluIHhlbmZzaW1h
Z2UgIgorICAgICJpbnRvIG1lbW9yeSBzbyB0aGF0IGl0IGNhbiBiZSB1c2Vk
IGluIGNocm9vdGVkIGVudmlyb25tZW50cy5cbiIpOworCiBzdGF0aWMgc3Ry
dWN0IFB5TWV0aG9kRGVmIGZzaW1hZ2VfbW9kdWxlX21ldGhvZHNbXSA9IHsK
Kwl7ICJpbml0IiwgKFB5Q0Z1bmN0aW9uKWZzaW1hZ2VfaW5pdCwKKwkgICAg
TUVUSF9WQVJBUkdTLCBmc2ltYWdlX2luaXRfX2RvY19fIH0sCiAJeyAib3Bl
biIsIChQeUNGdW5jdGlvbilmc2ltYWdlX29wZW4sCiAJICAgIE1FVEhfVkFS
QVJHU3xNRVRIX0tFWVdPUkRTLCBmc2ltYWdlX29wZW5fX2RvY19fIH0sCiAJ
eyAiZ2V0Ym9vdHN0cmluZyIsIChQeUNGdW5jdGlvbilmc2ltYWdlX2dldGJv
b3RzdHJpbmcsCi0tIAoyLjQyLjAKCg==

--=separator
Content-Type: application/octet-stream; name="xsa443/xsa443-4.17-09.patch"
Content-Disposition: attachment; filename="xsa443/xsa443-4.17-09.patch"
Content-Transfer-Encoding: base64

RnJvbSAxNTA3NzFjZTg2YTA3ZTQ2OWUzNDk0MWE2M2M1NmUyY2YyNDIyMjNi
IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBBbGVqYW5kcm8gVmFs
bGVqbyA8YWxlamFuZHJvLnZhbGxlam9AY2xvdWQuY29tPgpEYXRlOiBNb24s
IDI1IFNlcCAyMDIzIDE4OjMyOjI1ICswMTAwClN1YmplY3Q6IFtQQVRDSCAw
OS8xMV0gdG9vbHMvcHlncnViOiBEZXByaXZpbGVnZSBweWdydWIKCkludHJv
ZHVjZSBhIC0tcnVuYXM9PHVpZD4gZmxhZyB0byBkZXByaXZpbGVnZSBweWdy
dWIgb24gTGludXggYW5kICpCU0RzLiBJdAphbHNvIGltcGxpY2l0bHkgY3Jl
YXRlcyBhIGNocm9vdCBlbnYgd2hlcmUgaXQgZHJvcHMgYSBkZXByaXZpbGVn
ZWQgZm9ya2VkCnByb2Nlc3MuIFRoZSBjaHJvb3QgaXRzZWxmIGlzIGNsZWFu
ZWQgdXAgYXQgdGhlIGVuZC4KCklmIHRoZSAtLXJ1bmFzIGFyZyBpcyBwcmVz
ZW50LCB0aGVuIHB5Z3J1YiBmb3JrcywgbGVhdmluZyB0aGUgY2hpbGQgdG8K
ZGVwcml2aWxlZ2UgaXRzZWxmLCBhbmQgd2FpdGluZyBmb3IgaXQgdG8gY29t
cGxldGUuIFdoZW4gdGhlIGNoaWxkIGV4aXN0cywKdGhlIHBhcmVudCBwZXJm
b3JtcyBjbGVhbnVwIGFuZCBleGl0cyB3aXRoIHRoZSBzYW1lIGVycm9yIGNv
ZGUuCgpUaGlzIGlzIHJvdWdobHkgd2hhdCB0aGUgY2hpbGQgZG9lczoKICAx
LiBJbml0aWFsaXplIGxpYmZzaW1hZ2UgKHRoaXMgbG9hZHMgZXZlcnkgLnNv
IGluIG1lbW9yeSBzbyB0aGUgY2hyb290CiAgICAgY2FuIGF2b2lkIGJpbmQt
bW91bnRpbmcgL3ssdXNyfS9saWIqCiAgMi4gQ3JlYXRlIGEgdGVtcG9yYXJ5
IGVtcHR5IGNocm9vdCBkaXJlY3RvcnkKICAzLiBNb3VudCB0bXBmcyBpbiBp
dAogIDQuIEJpbmQgbW91bnQgdGhlIGRpc2sgaW5zaWRlLCBiZWNhdXNlIGxp
YmZzaW1hZ2UgZXhwZWN0cyBhIHBhdGgsIG5vdCBhCiAgICAgZmlsZSBkZXNj
cmlwdG9yLgogIDUuIFJlbW91bnQgdGhlIHJvb3QgdG1wZnMgdG8gYmUgc3Ry
aWN0ZXIgKHJvLG5vc3VpZCxub2RldikKICA2LiBTZXQgUkxJTUlUX0ZTSVpF
IHRvIGEgc2Vuc2libHkgaGlnaCBhbW91bnQgKDEyOCBNaUIpCiAgNy4gRGVw
cml2IGdpZCwgZ3JvdXBzIGFuZCB1aWQKCldpdGggdGhpcyBzY2hlbWUgaW4g
cGxhY2UsIHRoZSAib3V0cHV0IiBmaWxlcyBhcmUgd3JpdGFibGUgKHVwIHRv
ClJMSU1JVF9GU0laRSBvY3RldHMpIGFuZCB0aGUgZXhwb3NlZCBmaWxlc3lz
dGVtIGlzIGltbXV0YWJsZSBhbmQgY29udGFpbnMKdGhlIHNpbmdsZSBvbmx5
IGZpbGUgd2UgY2FuJ3QgZWFzaWx5IGdldCByaWQgb2YgKHRoZSBkaXNrKS4K
CklmIHJ1bm5pbmcgb24gTGludXgsIHRoZSBjaGlsZCBwcm9jZXNzIGFsc28g
dW5zaGFyZXMgbW91bnQsIElQQywgYW5kCm5ldHdvcmsgbmFtZXNwYWNlcyBi
ZWZvcmUgZHJvcHBpbmcgaXRzIHByaXZpbGVnZXMuCgpUaGlzIGlzIHBhcnQg
b2YgWFNBLTQ0MyAvIENWRS0yMDIzLTM0MzI1CgpTaWduZWQtb2ZmLWJ5OiBB
bGVqYW5kcm8gVmFsbGVqbyA8YWxlamFuZHJvLnZhbGxlam9AY2xvdWQuY29t
PgpBY2tlZC1ieTogQW5kcmV3IENvb3BlciA8YW5kcmV3LmNvb3BlcjNAY2l0
cml4LmNvbT4KLS0tCiB0b29scy9weWdydWIvc2V0dXAucHkgICB8ICAgMiAr
LQogdG9vbHMvcHlncnViL3NyYy9weWdydWIgfCAxNjIgKysrKysrKysrKysr
KysrKysrKysrKysrKysrKysrKysrKysrKy0tLQogMiBmaWxlcyBjaGFuZ2Vk
LCAxNTQgaW5zZXJ0aW9ucygrKSwgMTAgZGVsZXRpb25zKC0pCgpkaWZmIC0t
Z2l0IGEvdG9vbHMvcHlncnViL3NldHVwLnB5IGIvdG9vbHMvcHlncnViL3Nl
dHVwLnB5CmluZGV4IDBlNGUzZDAyZDM3Mi4uMDZiOTY3MzNkMDIwIDEwMDY0
NAotLS0gYS90b29scy9weWdydWIvc2V0dXAucHkKKysrIGIvdG9vbHMvcHln
cnViL3NldHVwLnB5CkBAIC0xNyw3ICsxNyw3IEBAIHhlbmZzaW1hZ2UgPSBF
eHRlbnNpb24oInhlbmZzaW1hZ2UiLAogcGtncyA9IFsgJ2dydWInIF0KIAog
c2V0dXAobmFtZT0ncHlncnViJywKLSAgICAgIHZlcnNpb249JzAuNicsCisg
ICAgICB2ZXJzaW9uPScwLjcnLAogICAgICAgZGVzY3JpcHRpb249J0Jvb3Qg
bG9hZGVyIHRoYXQgbG9va3MgYSBsb3QgbGlrZSBncnViIGZvciBYZW4nLAog
ICAgICAgYXV0aG9yPSdKZXJlbXkgS2F0eicsCiAgICAgICBhdXRob3JfZW1h
aWw9J2thdHpqQHJlZGhhdC5jb20nLApkaWZmIC0tZ2l0IGEvdG9vbHMvcHln
cnViL3NyYy9weWdydWIgYi90b29scy9weWdydWIvc3JjL3B5Z3J1YgppbmRl
eCA5MWUyZWMyYWIxMDUuLjdjZWE0OTZhZGUwOCAxMDA3NTUKLS0tIGEvdG9v
bHMvcHlncnViL3NyYy9weWdydWIKKysrIGIvdG9vbHMvcHlncnViL3NyYy9w
eWdydWIKQEAgLTE2LDggKzE2LDExIEBAIGZyb20gX19mdXR1cmVfXyBpbXBv
cnQgcHJpbnRfZnVuY3Rpb24KIAogaW1wb3J0IG9zLCBzeXMsIHN0cmluZywg
c3RydWN0LCB0ZW1wZmlsZSwgcmUsIHRyYWNlYmFjaywgc3RhdCwgZXJybm8K
IGltcG9ydCBjb3B5CitpbXBvcnQgY3R5cGVzLCBjdHlwZXMudXRpbAogaW1w
b3J0IGxvZ2dpbmcKIGltcG9ydCBwbGF0Zm9ybQoraW1wb3J0IHJlc291cmNl
CitpbXBvcnQgc3VicHJvY2VzcwogCiBpbXBvcnQgY3Vyc2VzLCBfY3Vyc2Vz
LCBjdXJzZXMudGV4dHBhZCwgY3Vyc2VzLmFzY2lpCiBpbXBvcnQgZ2V0b3B0
CkBAIC0yNywxMCArMzAsMTM1IEBAIGltcG9ydCBncnViLkdydWJDb25mCiBp
bXBvcnQgZ3J1Yi5MaWxvQ29uZgogaW1wb3J0IGdydWIuRXh0TGludXhDb25m
CiAKLVBZR1JVQl9WRVIgPSAwLjYKK1BZR1JVQl9WRVIgPSAwLjcKIEZTX1JF
QURfTUFYID0gMTAyNCAqIDEwMjQKIFNFQ1RPUl9TSVpFID0gNTEyCiAKKyMg
VW5sZXNzIHByb3ZpZGVkIHRocm91Z2ggdGhlIGVudiB2YXJpYWJsZSBQWUdS
VUJfTUFYX0ZJTEVfU0laRV9NQiwgdGhlbgorIyB0aGlzIGlzIHRoZSBtYXhp
bXVtIGZpbGVzaXplIGFsbG93ZWQgZm9yIGZpbGVzIHdyaXR0ZW4gYnkgdGhl
IGRlcHJpdgorIyBweWdydWIKK0xJTUlUX0ZTSVpFID0gMTI4IDw8IDIwCisK
K0NMT05FX05FV05TID0gMHgwMDAyMDAwMCAjIG1vdW50IG5hbWVzcGFjZQor
Q0xPTkVfTkVXTkVUID0gMHg0MDAwMDAwMCAjIG5ldHdvcmsgbmFtZXNwYWNl
CitDTE9ORV9ORVdJUEMgPSAweDA4MDAwMDAwICMgSVBDIG5hbWVzcGFjZQor
CitkZWYgdW5zaGFyZShmbGFncyk6CisgICAgaWYgbm90IHN5cy5wbGF0Zm9y
bS5zdGFydHN3aXRoKCJsaW51eCIpOgorICAgICAgICBwcmludCgic2tpcF91
bnNoYXJlIHJlYXNvbj1ub3RfbGludXggcGxhdGZvcm09JXMiLCBzeXMucGxh
dGZvcm0sIGZpbGU9c3lzLnN0ZGVycikKKyAgICAgICAgcmV0dXJuCisKKyAg
ICBsaWJjID0gY3R5cGVzLkNETEwoY3R5cGVzLnV0aWwuZmluZF9saWJyYXJ5
KCdjJyksIHVzZV9lcnJubz1UcnVlKQorICAgIHVuc2hhcmVfcHJvdG90eXBl
ID0gY3R5cGVzLkNGVU5DVFlQRShjdHlwZXMuY19pbnQsIGN0eXBlcy5jX2lu
dCwgdXNlX2Vycm5vPVRydWUpCisgICAgdW5zaGFyZSA9IHVuc2hhcmVfcHJv
dG90eXBlKCgndW5zaGFyZScsIGxpYmMpKQorCisgICAgaWYgdW5zaGFyZShm
bGFncykgPCAwOgorICAgICAgICByYWlzZSBPU0Vycm9yKGN0eXBlcy5nZXRf
ZXJybm8oKSwgb3Muc3RyZXJyb3IoY3R5cGVzLmdldF9lcnJubygpKSkKKwor
ZGVmIGJpbmRfbW91bnQoc3JjLCBkc3QsIG9wdGlvbnMpOgorICAgIG9wZW4o
ZHN0LCAiYSIpLmNsb3NlKCkgIyB0b3VjaAorCisgICAgcmMgPSBzdWJwcm9j
ZXNzLmNhbGwoWyJtb3VudCIsICItLWJpbmQiLCAiLW8iLCBvcHRpb25zLCBz
cmMsIGRzdF0pCisgICAgaWYgcmMgIT0gMDoKKyAgICAgICAgcmFpc2UgUnVu
dGltZUVycm9yKCJiYWRfbW91bnQ6IHNyYz0lcyBkc3Q9JXMgb3B0cz0lcyIg
JQorICAgICAgICAgICAgICAgICAgICAgICAgICAgKHNyYywgZHN0LCBvcHRp
b25zKSkKKworZGVmIGRvd25ncmFkZV9ybGltaXRzKCk6CisgICAgIyBXaXBl
IHRoZSBhdXRob3JpdHkgdG8gdXNlIHVucmVxdWlyZWQgcmVzb3VyY2VzCisg
ICAgcmVzb3VyY2Uuc2V0cmxpbWl0KHJlc291cmNlLlJMSU1JVF9OUFJPQywg
ICAgKDAsIDApKQorICAgIHJlc291cmNlLnNldHJsaW1pdChyZXNvdXJjZS5S
TElNSVRfQ09SRSwgICAgICgwLCAwKSkKKyAgICByZXNvdXJjZS5zZXRybGlt
aXQocmVzb3VyY2UuUkxJTUlUX01FTUxPQ0ssICAoMCwgMCkpCisKKyAgICAj
IHB5MidzIHJlc291cmNlIG1vZHVsZSBkb2Vzbid0IGtub3cgYWJvdXQgcmVz
b3VyY2UuUkxJTUlUX01TR1FVRVVFCisgICAgIworICAgICMgVE9ETzogVXNl
IHJlc291cmNlLlJMSU1JVF9NU0dRVUVVRSBhZnRlciBweXRob24yIGlzIGRl
cHJlY2F0ZWQKKyAgICBpZiBzeXMucGxhdGZvcm0uc3RhcnRzd2l0aCgnbGlu
dXgnKToKKyAgICAgICAgUkxJTUlUX01TR1FVRVVFID0gMTIKKyAgICAgICAg
cmVzb3VyY2Uuc2V0cmxpbWl0KFJMSU1JVF9NU0dRVUVVRSwgKDAsIDApKQor
CisgICAgIyBUaGUgZmluYWwgbG9vayBvZiB0aGUgZmlsZXN5c3RlbSBmb3Ig
dGhpcyBwcm9jZXNzIGlzIGZ1bGx5IFJPLCBidXQKKyAgICAjIG5vdGUgd2Ug
aGF2ZSBzb21lIGZpbGUgZGVzY3JpcHRvciBhbHJlYWR5IG9wZW4gKG5vdGFi
bHksIGtlcm5lbCBhbmQKKyAgICAjIHJhbWRpc2spLiBJbiBvcmRlciB0byBh
dm9pZCBhIGNvbXByb21pc2VkIHB5Z3J1YiBmcm9tIGZpbGxpbmcgdXAgdGhl
CisgICAgIyBmaWxlc3lzdGVtIHdlIHNldCBSTElNSVRfRlNJWkUgdG8gYSBo
aWdoIGJvdW5kLCBzbyB0aGF0IHRoZSBmaWxlCisgICAgIyB3cml0ZSBwZXJt
aXNzaW9ucyBhcmUgYm91bmQuCisgICAgZnNpemUgPSBMSU1JVF9GU0laRQor
ICAgIGlmICJQWUdSVUJfTUFYX0ZJTEVfU0laRV9NQiIgaW4gb3MuZW52aXJv
bi5rZXlzKCk6CisgICAgICAgIGZzaXplID0gb3MuZW52aXJvblsiUFlHUlVC
X01BWF9GSUxFX1NJWkVfTUIiXSA8PCAyMAorCisgICAgcmVzb3VyY2Uuc2V0
cmxpbWl0KHJlc291cmNlLlJMSU1JVF9GU0laRSwgKGZzaXplLCBmc2l6ZSkp
CisKK2RlZiBkZXByaXYob3V0cHV0X2RpcmVjdG9yeSwgb3V0cHV0LCBkZXZp
Y2UsIHVpZCwgcGF0aF9rZXJuZWwsIHBhdGhfcmFtZGlzayk6CisgICAgIyBU
aGUgb25seSBwb2ludCBvZiB0aGlzIGNhbGwgaXMgdG8gZm9yY2UgdGhlIGxv
YWRpbmcgb2YgbGliZnNpbWFnZS4KKyAgICAjIFRoYXQgd2F5LCB3ZSBkb24n
dCBuZWVkIHRvIGJpbmQtbW91bnQgaXQgaW50byB0aGUgY2hyb290CisgICAg
cmMgPSB4ZW5mc2ltYWdlLmluaXQoKQorICAgIGlmIHJjICE9IDA6CisgICAg
ICAgIG9zLnVubGluayhwYXRoX3JhbWRpc2spCisgICAgICAgIG9zLnVubGlu
ayhwYXRoX2tlcm5lbCkKKyAgICAgICAgcmFpc2UgUnVudGltZUVycm9yKCJi
YWRfeGVuZnNpbWFnZTogcmM9JWQiICUgcmMpCisKKyAgICAjIENyZWF0ZSBh
IHRlbXBvcmFyeSBkaXJlY3RvcnkgZm9yIHRoZSBjaHJvb3QKKyAgICBjaHJv
b3QgPSB0ZW1wZmlsZS5ta2R0ZW1wKHByZWZpeD1zdHIodWlkKSsnLScsIGRp
cj1vdXRwdXRfZGlyZWN0b3J5KSArICcvJworICAgIGRldmljZV9wYXRoID0g
Jy9kZXZpY2UnCisKKyAgICBwaWQgPSBvcy5mb3JrKCkKKyAgICBpZiBwaWQ6
CisgICAgICAgICMgcGFyZW50CisgICAgICAgIF8sIHJjID0gb3Mud2FpdHBp
ZChwaWQsIDApCisKKyAgICAgICAgZm9yIHBhdGggaW4gW3BhdGhfa2VybmVs
LCBwYXRoX3JhbWRpc2tdOgorICAgICAgICAgICAgIyBJZiB0aGUgY2hpbGQg
ZGlkbid0IHdyaXRlIGFueXRoaW5nLCBqdXN0IGdldCByaWQgb2YgaXQsCisg
ICAgICAgICAgICAjIG90aGVyd2lzZSB3ZSBlbmQgdXAgY29uc3VtaW5nIGEg
MC1zaXplIGZpbGUgd2hlbiBwYXJzaW5nCisgICAgICAgICAgICAjIHN5c3Rl
bXMgd2l0aG91dCBhIHJhbWRpc2sgdGhhdCB0aGUgdWx0aW1hdGUgY2FsbGVy
IG9mIHB5Z3J1YgorICAgICAgICAgICAgIyBtYXkganVzdCBiZSB1bmF3YXJl
IG9mCisgICAgICAgICAgICBpZiByYyAhPSAwIG9yIG9zLnBhdGguZ2V0c2l6
ZShwYXRoKSA9PSAwOgorICAgICAgICAgICAgICAgIG9zLnVubGluayhwYXRo
KQorCisgICAgICAgICMgTm9ybWFsbHksIHVuc2hhcmUoQ0xPTkVfTkVXTlMp
IHdpbGwgZW5zdXJlIHRoaXMgaXMgbm90IHJlcXVpcmVkLgorICAgICAgICAj
IEhvd2V2ZXIsIHRoaXMgc3lzY2FsbCBkb2Vzbid0IGV4aXN0IGluICpCU0Qg
c3lzdGVtcyBhbmQgZG9lc24ndAorICAgICAgICAjIGF1dG8tdW5tb3VudCBl
dmVyeXRoaW5nIG9uIG9sZGVyIExpbnV4IGtlcm5lbHMgKEF0IGxlYXN0IGFz
IG9mCisgICAgICAgICMgTGludXggNC4xOSwgYnV0IGl0IHNlZW1zIGZpeGVk
IGluIDUuMTUpLiBFaXRoZXIgd2F5LAorICAgICAgICAjIHJlY3Vyc2l2ZWx5
IHVubW91bnQgZXZlcnl0aGluZyBpZiBuZWVkZWQuIFF1aWV0bHkuCisgICAg
ICAgIHdpdGggb3BlbignL2Rldi9udWxsJywgJ3cnKSBhcyBkZXZudWxsOgor
ICAgICAgICAgICAgc3VicHJvY2Vzcy5jYWxsKFsidW1vdW50IiwgIi1mIiwg
Y2hyb290ICsgZGV2aWNlX3BhdGhdLAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIHN0ZG91dD1kZXZudWxsLCBzdGRlcnI9ZGV2bnVsbCkKKyAgICAg
ICAgICAgIHN1YnByb2Nlc3MuY2FsbChbInVtb3VudCIsICItZiIsIGNocm9v
dF0sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Rkb3V0PWRldm51
bGwsIHN0ZGVycj1kZXZudWxsKQorICAgICAgICBvcy5ybWRpcihjaHJvb3Qp
CisKKyAgICAgICAgc3lzLmV4aXQocmMpCisKKyAgICAjIEJ5IHVuc2hhcmlu
ZyB0aGUgbmFtZXNwYWNlIHdlJ3JlIG1ha2luZyBzdXJlIGl0J3MgYWxsIGJ1
bGstcmVsZWFzZWQKKyAgICAjIGF0IHRoZSBlbmQsIHdoZW4gdGhlIG5hbWVz
cGFjZXMgZGlzYXBwZWFyLiBUaGlzIG1lYW5zIHRoZSBrZXJuZWwgZG9lcwor
ICAgICMgKGFsbW9zdCkgYWxsIHRoZSBjbGVhbnVwIGZvciB1cyBhbmQgdGhl
IHBhcmVudCBqdXN0IGhhcyB0byByZW1vdmUgdGhlCisgICAgIyB0ZW1wb3Jh
cnkgZGlyZWN0b3J5LgorICAgIHVuc2hhcmUoQ0xPTkVfTkVXTlMgfCBDTE9O
RV9ORVdJUEMgfCBDTE9ORV9ORVdORVQpCisKKyAgICAjIFNldCBzZW5zaWJs
ZSBsaW1pdHMgdXNpbmcgdGhlIHNldHJsaW1pdCBpbnRlcmZhY2UKKyAgICBk
b3duZ3JhZGVfcmxpbWl0cygpCisKKyAgICAjIFdlJ2xsIG1vdW50IHRtcGZz
IG9uIHRoZSBjaHJvb3QgdG8gZW5zdXJlIHRoZSBkZXByaXZpbGVnZWQgY2hp
bGQKKyAgICAjIGNhbm5vdCBhZmZlY3QgdGhlIHBlcnNpc3RlbnQgc3RhdGUu
IEl0J3MgUlcgbm93IGluIG9yZGVyIHRvCisgICAgIyBiaW5kLW1vdW50IHRo
ZSBkZXZpY2UsIGJ1dCBub3RlIGl0J3MgcmVtb3VudGVkIFJPIGFmdGVyIHRo
YXQuCisgICAgcmMgPSBzdWJwcm9jZXNzLmNhbGwoWyJtb3VudCIsICItdCIs
ICJ0bXBmcyIsICJub25lIiwgY2hyb290XSkKKyAgICBpZiByYyAhPSAwOgor
ICAgICAgICByYWlzZSBSdW50aW1lRXJyb3IoIm1vdW50X3RtcGZzIHJjPSVk
IGRzdD1cIiVzXCIiICUgKHJjLCBjaHJvb3QpKQorCisgICAgIyBCaW5kIHRo
ZSB1bnRydXN0ZWQgZGV2aWNlIFJPCisgICAgYmluZF9tb3VudChkZXZpY2Us
IGNocm9vdCArIGRldmljZV9wYXRoLCAicm8sbm9zdWlkLG5vZXhlYyIpCisK
KyAgICByYyA9IHN1YnByb2Nlc3MuY2FsbChbIm1vdW50IiwgIi10IiwgInRt
cGZzIiwgIi1vIiwgInJlbW91bnQscm8sbm9zdWlkLG5vZXhlYyxub2RldiIs
ICJub25lIiwgY2hyb290XSkKKyAgICBpZiByYyAhPSAwOgorICAgICAgICBy
YWlzZSBSdW50aW1lRXJyb3IoInJlbW91bnRfdG1wZnMgcmM9JWQgZHN0PVwi
JXNcIiIgJSAocmMsIGNocm9vdCkpCisKKyAgICAjIERyb3Agc3VwZXJwb3dl
cnMhCisgICAgb3MuY2hyb290KGNocm9vdCkKKyAgICBvcy5jaGRpcignLycp
CisgICAgb3Muc2V0Z2lkKHVpZCkKKyAgICBvcy5zZXRncm91cHMoW3VpZF0p
CisgICAgb3Muc2V0dWlkKHVpZCkKKworICAgIHJldHVybiBkZXZpY2VfcGF0
aAorCiBkZWYgcmVhZF9zaXplX3JvdW5kdXAoZmQsIHNpemUpOgogICAgIGlm
IHBsYXRmb3JtLnN5c3RlbSgpICE9ICdGcmVlQlNEJzoKICAgICAgICAgcmV0
dXJuIHNpemUKQEAgLTczNiw3ICs4NjQsNyBAQCBpZiBfX25hbWVfXyA9PSAi
X19tYWluX18iOgogICAgIHNlbCA9IE5vbmUKICAgICAKICAgICBkZWYgdXNh
Z2UoKToKLSAgICAgICAgcHJpbnQoIlVzYWdlOiAlcyBbLXF8LS1xdWlldF0g
Wy1pfC0taW50ZXJhY3RpdmVdIFstbHwtLWxpc3QtZW50cmllc10gWy1ufC0t
bm90LXJlYWxseV0gWy0tb3V0cHV0PV0gWy0ta2VybmVsPV0gWy0tcmFtZGlz
az1dIFstLWFyZ3M9XSBbLS1lbnRyeT1dIFstLW91dHB1dC1kaXJlY3Rvcnk9
XSBbLS1vdXRwdXQtZm9ybWF0PXN4cHxzaW1wbGV8c2ltcGxlMF0gWy0tb2Zm
c2V0PV0gPGltYWdlPiIgJShzeXMuYXJndlswXSwpLCBmaWxlPXN5cy5zdGRl
cnIpCisgICAgICAgIHByaW50KCJVc2FnZTogJXMgWy1xfC0tcXVpZXRdIFst
aXwtLWludGVyYWN0aXZlXSBbLWx8LS1saXN0LWVudHJpZXNdIFstbnwtLW5v
dC1yZWFsbHldIFstLW91dHB1dD1dIFstLWtlcm5lbD1dIFstLXJhbWRpc2s9
XSBbLS1hcmdzPV0gWy0tZW50cnk9XSBbLS1vdXRwdXQtZGlyZWN0b3J5PV0g
Wy0tb3V0cHV0LWZvcm1hdD1zeHB8c2ltcGxlfHNpbXBsZTBdIFstLXJ1bmFz
PV0gWy0tb2Zmc2V0PV0gPGltYWdlPiIgJShzeXMuYXJndlswXSwpLCBmaWxl
PXN5cy5zdGRlcnIpCiAKICAgICBkZWYgY29weV9mcm9tX2ltYWdlKGZzLCBm
aWxlX3RvX3JlYWQsIGZpbGVfdHlwZSwgZmRfZHN0LCBwYXRoX2RzdCwgbm90
X3JlYWxseSk6CiAgICAgICAgIGlmIG5vdF9yZWFsbHk6CkBAIC03NjAsNyAr
ODg4LDggQEAgaWYgX19uYW1lX18gPT0gIl9fbWFpbl9fIjoKICAgICAgICAg
ICAgICAgICBvcy53cml0ZShmZF9kc3QsIGRhdGEpCiAgICAgICAgICAgICBl
eGNlcHQgRXhjZXB0aW9uIGFzIGU6CiAgICAgICAgICAgICAgICAgcHJpbnQo
ZSwgZmlsZT1zeXMuc3RkZXJyKQotICAgICAgICAgICAgICAgIG9zLnVubGlu
ayhwYXRoX2RzdCkKKyAgICAgICAgICAgICAgICBpZiBwYXRoX2RzdDoKKyAg
ICAgICAgICAgICAgICAgICAgb3MudW5saW5rKHBhdGhfZHN0KQogICAgICAg
ICAgICAgICAgIGRlbCBkYXRhZmlsZQogICAgICAgICAgICAgICAgIHN5cy5l
eGl0KCJFcnJvciB3cml0aW5nIHRlbXBvcmFyeSBjb3B5IG9mICIrZmlsZV90
eXBlKQogICAgICAgICAgICAgZGF0YW9mZiArPSBsZW4oZGF0YSkKQEAgLTc2
OSw3ICs4OTgsNyBAQCBpZiBfX25hbWVfXyA9PSAiX19tYWluX18iOgogICAg
ICAgICBvcHRzLCBhcmdzID0gZ2V0b3B0LmdudV9nZXRvcHQoc3lzLmFyZ3Zb
MTpdLCAncWlsbmg6OicsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIFsicXVpZXQiLCAiaW50ZXJhY3RpdmUiLCAibGlzdC1lbnRyaWVz
IiwgIm5vdC1yZWFsbHkiLCAiaGVscCIsCiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAib3V0cHV0PSIsICJvdXRwdXQtZm9ybWF0PSIs
ICJvdXRwdXQtZGlyZWN0b3J5PSIsICJvZmZzZXQ9IiwKLSAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICJlbnRyeT0iLCAia2VybmVsPSIs
IAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInJ1bmFz
PSIsICJlbnRyeT0iLCAia2VybmVsPSIsCiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAicmFtZGlzaz0iLCAiYXJncz0iLCAiaXNjb25m
aWciLCAiZGVidWciXSkKICAgICBleGNlcHQgZ2V0b3B0LkdldG9wdEVycm9y
OgogICAgICAgICB1c2FnZSgpCkBAIC03OTAsNiArOTE5LDcgQEAgaWYgX19u
YW1lX18gPT0gIl9fbWFpbl9fIjoKICAgICBub3RfcmVhbGx5ID0gRmFsc2UK
ICAgICBvdXRwdXRfZm9ybWF0ID0gInN4cCIKICAgICBvdXRwdXRfZGlyZWN0
b3J5ID0gIi92YXIvcnVuL3hlbi9weWdydWIvIgorICAgIHVpZCA9IE5vbmUK
IAogICAgICMgd2hhdCB3YXMgcGFzc2VkIGluCiAgICAgaW5jZmcgPSB7ICJr
ZXJuZWwiOiBOb25lLCAicmFtZGlzayI6IE5vbmUsICJhcmdzIjogIiIgfQpA
QCAtODEzLDYgKzk0MywxMyBAQCBpZiBfX25hbWVfXyA9PSAiX19tYWluX18i
OgogICAgICAgICBlbGlmIG8gaW4gKCItLW91dHB1dCIsKToKICAgICAgICAg
ICAgIGlmIGEgIT0gIi0iOgogICAgICAgICAgICAgICAgIG91dHB1dCA9IGEK
KyAgICAgICAgZWxpZiBvIGluICgiLS1ydW5hcyIsKToKKyAgICAgICAgICAg
IHRyeToKKyAgICAgICAgICAgICAgICB1aWQgPSBpbnQoYSkKKyAgICAgICAg
ICAgIGV4Y2VwdCBWYWx1ZUVycm9yOgorICAgICAgICAgICAgICAgIHByaW50
KCJydW5hcyB2YWx1ZSBtdXN0IGJlIGFuIGludGVnZXIgdXNlciBpZCIpCisg
ICAgICAgICAgICAgICAgdXNhZ2UoKQorICAgICAgICAgICAgICAgIHN5cy5l
eGl0KDEpCiAgICAgICAgIGVsaWYgbyBpbiAoIi0ta2VybmVsIiwpOgogICAg
ICAgICAgICAgaW5jZmdbImtlcm5lbCJdID0gYQogICAgICAgICBlbGlmIG8g
aW4gKCItLXJhbWRpc2siLCk6CkBAIC04NDksNiArOTg2LDEwIEBAIGlmIF9f
bmFtZV9fID09ICJfX21haW5fXyI6CiAgICAgaWYgZGVidWc6CiAgICAgICAg
IGxvZ2dpbmcuYmFzaWNDb25maWcobGV2ZWw9bG9nZ2luZy5ERUJVRykKIAor
ICAgIGlmIGludGVyYWN0aXZlIGFuZCB1aWQ6CisgICAgICAgIHByaW50KCJJ
biBvcmRlciB0byB1c2UgLS1ydW5hcywgeW91IG11c3QgYWxzbyBzZXQgLS1l
bnRyeSBvciAtcSIsIGZpbGU9c3lzLnN0ZGVycikKKyAgICAgICAgc3lzLmV4
aXQoMSkKKwogICAgIHRyeToKICAgICAgICAgb3MubWFrZWRpcnMob3V0cHV0
X2RpcmVjdG9yeSwgMG83MDApCiAgICAgZXhjZXB0IE9TRXJyb3IgYXMgZToK
QEAgLTg3MCw2ICsxMDExLDkgQEAgaWYgX19uYW1lX18gPT0gIl9fbWFpbl9f
IjoKICAgICBlbHNlOgogICAgICAgICBmZCA9IG9zLm9wZW4ob3V0cHV0LCBv
cy5PX1dST05MWSkKIAorICAgIGlmIHVpZDoKKyAgICAgICAgZmlsZSA9IGRl
cHJpdihvdXRwdXRfZGlyZWN0b3J5LCBvdXRwdXQsIGZpbGUsIHVpZCwgcGF0
aF9rZXJuZWwsIHBhdGhfcmFtZGlzaykKKwogICAgICMgZGVidWcKICAgICBp
ZiBpc2NvbmZpZzoKICAgICAgICAgY2hvc2VuY2ZnID0gcnVuX2dydWIoZmls
ZSwgZW50cnksIGZzLCBpbmNmZ1siYXJncyJdKQpAQCAtOTI1LDIxICsxMDY5
LDIxIEBAIGlmIF9fbmFtZV9fID09ICJfX21haW5fXyI6CiAgICAgICAgIHJh
aXNlIFJ1bnRpbWVFcnJvcigiVW5hYmxlIHRvIGZpbmQgcGFydGl0aW9uIGNv
bnRhaW5pbmcga2VybmVsIikKIAogICAgIGNvcHlfZnJvbV9pbWFnZShmcywg
Y2hvc2VuY2ZnWyJrZXJuZWwiXSwgImtlcm5lbCIsCi0gICAgICAgICAgICAg
ICAgICAgIGZkX2tlcm5lbCwgcGF0aF9rZXJuZWwsIG5vdF9yZWFsbHkpCisg
ICAgICAgICAgICAgICAgICAgIGZkX2tlcm5lbCwgTm9uZSBpZiB1aWQgZWxz
ZSBwYXRoX2tlcm5lbCwgbm90X3JlYWxseSkKICAgICBib290Y2ZnWyJrZXJu
ZWwiXSA9IHBhdGhfa2VybmVsCiAKICAgICBpZiBjaG9zZW5jZmdbInJhbWRp
c2siXToKICAgICAgICAgdHJ5OgogICAgICAgICAgICAgY29weV9mcm9tX2lt
YWdlKGZzLCBjaG9zZW5jZmdbInJhbWRpc2siXSwgInJhbWRpc2siLAotICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGZkX3JhbWRpc2ssIHBhdGhfcmFt
ZGlzaywgbm90X3JlYWxseSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBmZF9yYW1kaXNrLCBOb25lIGlmIHVpZCBlbHNlIHBhdGhfcmFtZGlzaywg
bm90X3JlYWxseSkKICAgICAgICAgZXhjZXB0OgotICAgICAgICAgICAgaWYg
bm90IG5vdF9yZWFsbHk6Ci0gICAgICAgICAgICAgICAgb3MudW5saW5rKHBh
dGhfa2VybmVsKQorICAgICAgICAgICAgaWYgbm90IHVpZCBhbmQgbm90IG5v
dF9yZWFsbHk6CisgICAgICAgICAgICAgICAgICAgIG9zLnVubGluayhwYXRo
X2tlcm5lbCkKICAgICAgICAgICAgIHJhaXNlCiAgICAgICAgIGJvb3RjZmdb
InJhbWRpc2siXSA9IHBhdGhfcmFtZGlzawogICAgIGVsc2U6CiAgICAgICAg
IGluaXRyZCA9IE5vbmUKLSAgICAgICAgaWYgbm90IG5vdF9yZWFsbHk6Cisg
ICAgICAgIGlmIG5vdCB1aWQgYW5kIG5vdCBub3RfcmVhbGx5OgogICAgICAg
ICAgICAgb3MudW5saW5rKHBhdGhfcmFtZGlzaykKIAogICAgIGFyZ3MgPSBO
b25lCi0tIAoyLjQyLjAKCg==

--=separator
Content-Type: application/octet-stream; name="xsa443/xsa443-4.17-10.patch"
Content-Disposition: attachment; filename="xsa443/xsa443-4.17-10.patch"
Content-Transfer-Encoding: base64

RnJvbSA2OThiNDUxNDczYTZkODY4Y2EwZjYwYTEyNGZjNGYzMWQ4MWNkN2Ix
IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBSb2dlciBQYXUgTW9u
bmUgPHJvZ2VyLnBhdUBjaXRyaXguY29tPgpEYXRlOiBNb24sIDI1IFNlcCAy
MDIzIDE0OjMwOjIwICswMjAwClN1YmplY3Q6IFtQQVRDSCAxMC8xMV0gbGli
eGw6IGFkZCBzdXBwb3J0IGZvciBydW5uaW5nIGJvb3Rsb2FkZXIgaW4gcmVz
dHJpY3RlZAogbW9kZQpNSU1FLVZlcnNpb246IDEuMApDb250ZW50LVR5cGU6
IHRleHQvcGxhaW47IGNoYXJzZXQ9VVRGLTgKQ29udGVudC1UcmFuc2Zlci1F
bmNvZGluZzogOGJpdAoKTXVjaCBsaWtlIHRoZSBkZXZpY2UgbW9kZWwgZGVw
cml2IG1vZGUsIGFkZCB0aGUgc2FtZSBraW5kIG9mIHN1cHBvcnQgZm9yIHRo
ZQpib290bG9hZGVyLiAgU3VjaCBmZWF0dXJlIGFsbG93cyBwYXNzaW5nIGEg
VUlEIGFzIGEgcGFyYW1ldGVyIGZvciB0aGUKYm9vdGxvYWRlciB0byBydW4g
YXMsIHRvZ2V0aGVyIHdpdGggdGhlIGJvb3Rsb2FkZXIgaXRzZWxmIHRha2lu
ZyB0aGUgbmVjZXNzYXJ5CmFjdGlvbnMgdG8gaXNvbGF0ZS4KCk5vdGUgdGhh
dCB0aGUgdXNlciB0byBydW4gdGhlIGJvb3Rsb2FkZXIgYXMgbXVzdCBoYXZl
IHRoZSByaWdodCBwZXJtaXNzaW9ucyB0bwphY2Nlc3MgdGhlIGd1ZXN0IGRp
c2sgaW1hZ2UgKGluIHJlYWQgbW9kZSBvbmx5KSwgYW5kIHRoYXQgdGhlIGJv
b3Rsb2FkZXIgd2lsbApiZSBydW4gaW4gbm9uLWludGVyYWN0aXZlIG1vZGUg
d2hlbiByZXN0cmljdGVkLgoKSWYgZW5hYmxlZCBib290bG9hZGVyIHJlc3Ry
aWN0IG1vZGUgd2lsbCBhdHRlbXB0IHRvIHJlLXVzZSB0aGUgdXNlcihzKSBm
cm9tIHRoZQpRRU1VIGRlcHJpdiBpbXBsZW1lbnRhdGlvbiBpZiBubyB1c2Vy
IGlzIHByb3ZpZGVkIG9uIHRoZSBjb25maWd1cmF0aW9uIGZpbGUgb3IKdGhl
IGVudmlyb25tZW50LiAgU2VlIGRvY3MvZmVhdHVyZXMvcWVtdS1kZXByaXZp
bGVnZS5wYW5kb2MgZm9yIG1vcmUKaW5mb3JtYXRpb24gYWJvdXQgaG93IHRv
IHNldHVwIHRob3NlIHVzZXJzLgoKQm9vdGxvYWRlciByZXN0cmljdCBtb2Rl
IGlzIG5vdCBlbmFibGVkIGJ5IGRlZmF1bHQgYXMgaXQgcmVxdWlyZXMgY2Vy
dGFpbgpzZXR1cCB0byBiZSBkb25lIGZpcnN0IChzZXR1cCBvZiB0aGUgdXNl
cihzKSB0byB1c2UgaW4gcmVzdHJpY3QgbW9kZSkuCgpUaGlzIGlzIHBhcnQg
b2YgWFNBLTQ0MyAvIENWRS0yMDIzLTM0MzI1CgpTaWduZWQtb2ZmLWJ5OiBS
b2dlciBQYXUgTW9ubsOpIDxyb2dlci5wYXVAY2l0cml4LmNvbT4KUmV2aWV3
ZWQtYnk6IEFudGhvbnkgUEVSQVJEIDxhbnRob255LnBlcmFyZEBjaXRyaXgu
Y29tPgotLS0KIGRvY3MvbWFuL3hsLjEucG9kLmluICAgICAgICAgICAgICAg
IHwgMzMgKysrKysrKysrKysKIHRvb2xzL2xpYnMvbGlnaHQvbGlieGxfYm9v
dGxvYWRlci5jIHwgODkgKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0K
IHRvb2xzL2xpYnMvbGlnaHQvbGlieGxfZG0uYyAgICAgICAgIHwgIDggKy0t
CiB0b29scy9saWJzL2xpZ2h0L2xpYnhsX2ludGVybmFsLmggICB8ICA4ICsr
KwogNCBmaWxlcyBjaGFuZ2VkLCAxMzEgaW5zZXJ0aW9ucygrKSwgNyBkZWxl
dGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kb2NzL21hbi94bC4xLnBvZC5pbiBi
L2RvY3MvbWFuL3hsLjEucG9kLmluCmluZGV4IDEwMWUxNDI0MWQxYy4uNDgz
MWUxMjI0MjdkIDEwMDY0NAotLS0gYS9kb2NzL21hbi94bC4xLnBvZC5pbgor
KysgYi9kb2NzL21hbi94bC4xLnBvZC5pbgpAQCAtMTk1Nyw2ICsxOTU3LDM5
IEBAIGlnbm9yZWQ6CiAKID1iYWNrCiAKKz1oZWFkMSBFTlZJUk9OTUVOVCBW
QVJJQUJMRVMKKworVGhlIGZvbGxvd2luZyBlbnZpcm9ubWVudCB2YXJpYWJs
ZXMgc2hhbGwgYWZmZWN0IHRoZSBleGVjdXRpb24gb2YgeGw6CisKKz1vdmVy
IDQKKworPWl0ZW0gTElCWExfQk9PVExPQURFUl9SRVNUUklDVAorCitBdHRl
bXB0IHRvIHJlc3RyaWN0IHRoZSBib290bG9hZGVyIGFmdGVyIHN0YXJ0dXAs
IHRvIGxpbWl0IHRoZQorY29uc2VxdWVuY2VzIG9mIHNlY3VyaXR5IHZ1bG5l
cmFiaWxpdGllcyBkdWUgdG8gcGFyc2luZyBndWVzdAorb3duZWQgaW1hZ2Ug
ZmlsZXMuCisKK1NlZSBkb2NzL2ZlYXR1cmVzL3FlbXUtZGVwcml2aWxlZ2Uu
cGFuZG9jIGZvciBtb3JlIGluZm9ybWF0aW9uCitvbiBob3cgdG8gc2V0dXAg
dGhlIHVucHJpdmlsZWdlZCB1c2Vycy4KKworTm90ZSB0aGF0IHJ1bm5pbmcg
dGhlIGJvb3Rsb2FkZXIgaW4gcmVzdHJpY3RlZCBtb2RlIGFsc28gaW1wbGll
cyB1c2luZworbm9uLWludGVyYWN0aXZlIG1vZGUsIGFuZCB0aGUgZGlzayBp
bWFnZSBtdXN0IGJlIHJlYWRhYmxlIGJ5IHRoZQorcmVzdHJpY3RlZCB1c2Vy
LgorCitIYXZpbmcgdGhpcyB2YXJpYWJsZSBzZXQgaXMgZXF1aXZhbGVudCB0
byBlbmFibGluZyB0aGUgb3B0aW9uLCBldmVuIGlmIHRoZQordmFsdWUgaXMg
MC4KKworPWl0ZW0gTElCWExfQk9PVExPQURFUl9VU0VSCisKK1doZW4gdXNp
bmcgYm9vdGxvYWRlcl9yZXN0cmljdCwgcnVuIHRoZSBib290bG9hZGVyIGFz
IHRoaXMgdXNlci4gIElmCitub3Qgc2V0IHRoZSBkZWZhdWx0IFFFTVUgcmVz
dHJpY3QgdXNlcnMgd2lsbCBiZSB1c2VkLgorCitOT1RFOiBFYWNoIGRvbWFp
biBNVVNUIGhhdmUgYSBTRVBBUkFURSB1c2VybmFtZS4KKworU2VlIGRvY3Mv
ZmVhdHVyZXMvcWVtdS1kZXByaXZpbGVnZS5wYW5kb2MgZm9yIG1vcmUgaW5m
b3JtYXRpb24uCisKKz1iYWNrCisKID1oZWFkMSBTRUUgQUxTTwogCiBUaGUg
Zm9sbG93aW5nIG1hbiBwYWdlczoKZGlmZiAtLWdpdCBhL3Rvb2xzL2xpYnMv
bGlnaHQvbGlieGxfYm9vdGxvYWRlci5jIGIvdG9vbHMvbGlicy9saWdodC9s
aWJ4bF9ib290bG9hZGVyLmMKaW5kZXggMTA4MzI5YjRhNWJiLi4yM2MwZWYz
ZTg5MzUgMTAwNjQ0Ci0tLSBhL3Rvb2xzL2xpYnMvbGlnaHQvbGlieGxfYm9v
dGxvYWRlci5jCisrKyBiL3Rvb2xzL2xpYnMvbGlnaHQvbGlieGxfYm9vdGxv
YWRlci5jCkBAIC0xNCw2ICsxNCw3IEBACiAKICNpbmNsdWRlICJsaWJ4bF9v
c2RlcHMuaCIgLyogbXVzdCBjb21lIGJlZm9yZSBhbnkgb3RoZXIgaGVhZGVy
cyAqLwogCisjaW5jbHVkZSA8cHdkLmg+CiAjaW5jbHVkZSA8dGVybWlvcy5o
PgogI2lmZGVmIEhBVkVfVVRNUF9ICiAjaW5jbHVkZSA8dXRtcC5oPgpAQCAt
NDIsOCArNDMsNzEgQEAgc3RhdGljIHZvaWQgYm9vdGxvYWRlcl9hcmcobGli
eGxfX2Jvb3Rsb2FkZXJfc3RhdGUgKmJsLCBjb25zdCBjaGFyICphcmcpCiAg
ICAgYmwtPmFyZ3NbYmwtPm5hcmdzKytdID0gYXJnOwogfQogCi1zdGF0aWMg
dm9pZCBtYWtlX2Jvb3Rsb2FkZXJfYXJncyhsaWJ4bF9fZ2MgKmdjLCBsaWJ4
bF9fYm9vdGxvYWRlcl9zdGF0ZSAqYmwsCi0gICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBjb25zdCBjaGFyICpib290bG9hZGVyX3BhdGgpCitz
dGF0aWMgaW50IGJvb3Rsb2FkZXJfdWlkKGxpYnhsX19nYyAqZ2MsIGRvbWlk
X3QgZ3Vlc3RfZG9taWQsCisgICAgICAgICAgICAgICAgICAgICAgICAgIGNv
bnN0IGNoYXIgKnVzZXIsIHVpZF90ICppbnRlbmRlZF91aWQpCit7CisgICAg
c3RydWN0IHBhc3N3ZCAqdXNlcl9iYXNlLCB1c2VyX3B3YnVmOworICAgIGlu
dCByYzsKKworICAgIGlmICh1c2VyKSB7CisgICAgICAgIHJjID0gdXNlcmxv
b2t1cF9oZWxwZXJfZ2V0cHduYW0oZ2MsIHVzZXIsICZ1c2VyX3B3YnVmLCAm
dXNlcl9iYXNlKTsKKyAgICAgICAgaWYgKHJjKSByZXR1cm4gcmM7CisKKyAg
ICAgICAgaWYgKCF1c2VyX2Jhc2UpIHsKKyAgICAgICAgICAgIExPR0QoRVJS
T1IsIGd1ZXN0X2RvbWlkLCAiQ291bGRuJ3QgZmluZCB1c2VyICVzIiwgdXNl
cik7CisgICAgICAgICAgICByZXR1cm4gRVJST1JfSU5WQUw7CisgICAgICAg
IH0KKworICAgICAgICAqaW50ZW5kZWRfdWlkID0gdXNlcl9iYXNlLT5wd191
aWQ7CisgICAgICAgIHJldHVybiAwOworICAgIH0KKworICAgIC8qIFJlLXVz
ZSBRRU1VIHVzZXIgcmFuZ2UgZm9yIHRoZSBib290bG9hZGVyLiAqLworICAg
IHJjID0gdXNlcmxvb2t1cF9oZWxwZXJfZ2V0cHduYW0oZ2MsIExJQlhMX1FF
TVVfVVNFUl9SQU5HRV9CQVNFLAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgJnVzZXJfcHdidWYsICZ1c2VyX2Jhc2UpOworICAgIGlm
IChyYykgcmV0dXJuIHJjOworCisgICAgaWYgKHVzZXJfYmFzZSkgeworICAg
ICAgICBzdHJ1Y3QgcGFzc3dkICp1c2VyX2NsYXNoLCB1c2VyX2NsYXNoX3B3
YnVmOworICAgICAgICB1aWRfdCB0ZW1wX3VpZCA9IHVzZXJfYmFzZS0+cHdf
dWlkICsgZ3Vlc3RfZG9taWQ7CisKKyAgICAgICAgcmMgPSB1c2VybG9va3Vw
X2hlbHBlcl9nZXRwd3VpZChnYywgdGVtcF91aWQsICZ1c2VyX2NsYXNoX3B3
YnVmLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICZ1c2VyX2NsYXNoKTsKKyAgICAgICAgaWYgKHJjKSByZXR1cm4gcmM7CisK
KyAgICAgICAgaWYgKHVzZXJfY2xhc2gpIHsKKyAgICAgICAgICAgIExPR0Qo
RVJST1IsIGd1ZXN0X2RvbWlkLAorICAgICAgICAgICAgICAgICAid2FudGVk
IHRvIHVzZSB1aWQgJWxkICglcyArICVkKSBidXQgdGhhdCBpcyB1c2VyICVz
ICEiLAorICAgICAgICAgICAgICAgICAobG9uZyl0ZW1wX3VpZCwgTElCWExf
UUVNVV9VU0VSX1JBTkdFX0JBU0UsCisgICAgICAgICAgICAgICAgIGd1ZXN0
X2RvbWlkLCB1c2VyX2NsYXNoLT5wd19uYW1lKTsKKyAgICAgICAgICAgIHJl
dHVybiBFUlJPUl9JTlZBTDsKKyAgICAgICAgfQorCisgICAgICAgICppbnRl
bmRlZF91aWQgPSB0ZW1wX3VpZDsKKyAgICAgICAgcmV0dXJuIDA7CisgICAg
fQorCisgICAgcmMgPSB1c2VybG9va3VwX2hlbHBlcl9nZXRwd25hbShnYywg
TElCWExfUUVNVV9VU0VSX1NIQVJFRCwgJnVzZXJfcHdidWYsCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmdXNlcl9iYXNlKTsKKyAg
ICBpZiAocmMpIHJldHVybiByYzsKKworICAgIGlmICh1c2VyX2Jhc2UpIHsK
KyAgICAgICAgTE9HRChXQVJOLCBndWVzdF9kb21pZCwgIkNvdWxkIG5vdCBm
aW5kIHVzZXIgJXMsIGZhbGxpbmcgYmFjayB0byAlcyIsCisgICAgICAgICAg
ICAgTElCWExfUUVNVV9VU0VSX1JBTkdFX0JBU0UsIExJQlhMX1FFTVVfVVNF
Ul9TSEFSRUQpOworICAgICAgICAqaW50ZW5kZWRfdWlkID0gdXNlcl9iYXNl
LT5wd191aWQ7CisKKyAgICAgICAgcmV0dXJuIDA7CisgICAgfQorCisgICAg
TE9HRChFUlJPUiwgZ3Vlc3RfZG9taWQsCisgICAgIkNvdWxkIG5vdCBmaW5k
IHVzZXIgJXMgb3IgcmFuZ2UgYmFzZSBwc2V1ZG8tdXNlciAlcywgY2Fubm90
IHJlc3RyaWN0IiwKKyAgICAgICAgIExJQlhMX1FFTVVfVVNFUl9TSEFSRUQs
IExJQlhMX1FFTVVfVVNFUl9SQU5HRV9CQVNFKTsKKworICAgIHJldHVybiBF
UlJPUl9JTlZBTDsKK30KKworc3RhdGljIGludCBtYWtlX2Jvb3Rsb2FkZXJf
YXJncyhsaWJ4bF9fZ2MgKmdjLCBsaWJ4bF9fYm9vdGxvYWRlcl9zdGF0ZSAq
YmwsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNo
YXIgKmJvb3Rsb2FkZXJfcGF0aCkKIHsKICAgICBjb25zdCBsaWJ4bF9kb21h
aW5fYnVpbGRfaW5mbyAqaW5mbyA9IGJsLT5pbmZvOwogCkBAIC02MSw2ICsx
MjUsMjMgQEAgc3RhdGljIHZvaWQgbWFrZV9ib290bG9hZGVyX2FyZ3MobGli
eGxfX2djICpnYywgbGlieGxfX2Jvb3Rsb2FkZXJfc3RhdGUgKmJsLAogICAg
ICAgICBBUkcoR0NTUFJJTlRGKCItLXJhbWRpc2s9JXMiLCBpbmZvLT5yYW1k
aXNrKSk7CiAgICAgaWYgKGluZm8tPmNtZGxpbmUgJiYgKmluZm8tPmNtZGxp
bmUgIT0gJ1wwJykKICAgICAgICAgQVJHKEdDU1BSSU5URigiLS1hcmdzPSVz
IiwgaW5mby0+Y21kbGluZSkpOworICAgIGlmIChnZXRlbnYoIkxJQlhMX0JP
T1RMT0FERVJfUkVTVFJJQ1QiKSB8fAorICAgICAgICBnZXRlbnYoIkxJQlhM
X0JPT1RMT0FERVJfVVNFUiIpKSB7CisgICAgICAgIHVpZF90IHVpZCA9IC0x
OworICAgICAgICBpbnQgcmMgPSBib290bG9hZGVyX3VpZChnYywgYmwtPmRv
bWlkLCBnZXRlbnYoIkxJQlhMX0JPT1RMT0FERVJfVVNFUiIpLAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAmdWlkKTsKKworICAgICAgICBp
ZiAocmMpIHJldHVybiByYzsKKworICAgICAgICBhc3NlcnQodWlkICE9IC0x
KTsKKyAgICAgICAgaWYgKCF1aWQpIHsKKyAgICAgICAgICAgIExPR0QoRVJS
T1IsIGJsLT5kb21pZCwgImJvb3Rsb2FkZXIgcmVzdHJpY3QgVUlEIGlzIDAg
KHJvb3QpISIpOworICAgICAgICAgICAgcmV0dXJuIEVSUk9SX0lOVkFMOwor
ICAgICAgICB9CisgICAgICAgIExPR0QoREVCVUcsIGJsLT5kb21pZCwgInVz
aW5nIHVpZCAlbGQiLCAobG9uZyl1aWQpOworICAgICAgICBBUkcoR0NTUFJJ
TlRGKCItLXJ1bmFzPSVsZCIsIChsb25nKXVpZCkpOworICAgICAgICBBUkco
Ii0tcXVpZXQiKTsKKyAgICB9CiAKICAgICBBUkcoR0NTUFJJTlRGKCItLW91
dHB1dD0lcyIsIGJsLT5vdXRwdXRwYXRoKSk7CiAgICAgQVJHKCItLW91dHB1
dC1mb3JtYXQ9c2ltcGxlMCIpOwpAQCAtNzksNiArMTYwLDcgQEAgc3RhdGlj
IHZvaWQgbWFrZV9ib290bG9hZGVyX2FyZ3MobGlieGxfX2djICpnYywgbGli
eGxfX2Jvb3Rsb2FkZXJfc3RhdGUgKmJsLAogICAgIC8qIFNlbnRpbmVsIGZv
ciBleGVjdiAqLwogICAgIEFSRyhOVUxMKTsKIAorICAgIHJldHVybiAwOwog
I3VuZGVmIEFSRwogfQogCkBAIC00NDMsNyArNTI1LDggQEAgc3RhdGljIHZv
aWQgYm9vdGxvYWRlcl9kaXNrX2F0dGFjaGVkX2NiKGxpYnhsX19lZ2MgKmVn
YywKICAgICAgICAgICAgIGJvb3Rsb2FkZXIgPSBibHRtcDsKICAgICB9CiAK
LSAgICBtYWtlX2Jvb3Rsb2FkZXJfYXJncyhnYywgYmwsIGJvb3Rsb2FkZXIp
OworICAgIHJjID0gbWFrZV9ib290bG9hZGVyX2FyZ3MoZ2MsIGJsLCBib290
bG9hZGVyKTsKKyAgICBpZiAocmMpIGdvdG8gb3V0OwogCiAgICAgYmwtPm9w
ZW5wdHkuYW8gPSBhbzsKICAgICBibC0+b3BlbnB0eS5jYWxsYmFjayA9IGJv
b3Rsb2FkZXJfZ290cHR5czsKZGlmZiAtLWdpdCBhL3Rvb2xzL2xpYnMvbGln
aHQvbGlieGxfZG0uYyBiL3Rvb2xzL2xpYnMvbGlnaHQvbGlieGxfZG0uYwpp
bmRleCBmYzI2NGEzYTEzYTYuLjE0YjU5MzExMGY3YyAxMDA2NDQKLS0tIGEv
dG9vbHMvbGlicy9saWdodC9saWJ4bF9kbS5jCisrKyBiL3Rvb2xzL2xpYnMv
bGlnaHQvbGlieGxfZG0uYwpAQCAtODAsMTAgKzgwLDEwIEBAIHN0YXRpYyBp
bnQgbGlieGxfX2NyZWF0ZV9xZW11X2xvZ2ZpbGUobGlieGxfX2djICpnYywg
Y2hhciAqbmFtZSkKICAqICBPbiBlcnJvciwgcmV0dXJuIGEgbGlieGwtc3R5
bGUgZXJyb3IgY29kZS4KICAqLwogI2RlZmluZSBERUZJTkVfVVNFUkxPT0tV
UF9IRUxQRVIoTkFNRSxTUEVDX1RZUEUsU1RSVUNUTkFNRSxTWVNDT05GKSAg
ICAgXAotICAgIHN0YXRpYyBpbnQgdXNlcmxvb2t1cF9oZWxwZXJfIyNOQU1F
KGxpYnhsX19nYyAqZ2MsICAgICAgICAgICAgICAgICAgXAotICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNQRUNfVFlQRSBzcGVj
LCAgICAgICAgICAgICAgICAgXAotICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHN0cnVjdCBTVFJVQ1ROQU1FICpyZXN1bHRidWYs
ICAgXAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHN0cnVjdCBTVFJVQ1ROQU1FICoqb3V0KSAgICAgICAgXAorICAgIGludCB1
c2VybG9va3VwX2hlbHBlcl8jI05BTUUobGlieGxfX2djICpnYywgICAgICAg
ICAgICAgICAgICAgICAgICAgXAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgU1BFQ19UWVBFIHNwZWMsICAgICAgICAgICAgICAgICAgICAg
ICAgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RydWN0
IFNUUlVDVE5BTUUgKnJlc3VsdGJ1ZiwgICAgICAgICAgXAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgc3RydWN0IFNUUlVDVE5BTUUgKipv
dXQpICAgICAgICAgICAgICAgXAogICAgIHsgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgXAogICAgICAgICBzdHJ1Y3QgU1RSVUNUTkFNRSAqcmVzdWx0cCA9IE5V
TEw7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAogICAgICAgICBj
aGFyICpidWYgPSBOVUxMOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgXApkaWZmIC0tZ2l0IGEvdG9vbHMvbGlicy9s
aWdodC9saWJ4bF9pbnRlcm5hbC5oIGIvdG9vbHMvbGlicy9saWdodC9saWJ4
bF9pbnRlcm5hbC5oCmluZGV4IDdhZDM4ZGUzMGUwYi4uZjFlM2E5YTE1YjEz
IDEwMDY0NAotLS0gYS90b29scy9saWJzL2xpZ2h0L2xpYnhsX2ludGVybmFs
LmgKKysrIGIvdG9vbHMvbGlicy9saWdodC9saWJ4bF9pbnRlcm5hbC5oCkBA
IC00ODczLDYgKzQ4NzMsMTQgQEAgc3RydWN0IGxpYnhsX19jcHVfcG9saWN5
IHsKICAgICBzdHJ1Y3QgeGNfbXNyICptc3I7CiB9OwogCitzdHJ1Y3QgcGFz
c3dkOworX2hpZGRlbiBpbnQgdXNlcmxvb2t1cF9oZWxwZXJfZ2V0cHduYW0o
bGlieGxfX2djKiwgY29uc3QgY2hhciAqdXNlciwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIHN0cnVjdCBwYXNzd2QgKnJlcywK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cnVj
dCBwYXNzd2QgKipvdXQpOworX2hpZGRlbiBpbnQgdXNlcmxvb2t1cF9oZWxw
ZXJfZ2V0cHd1aWQobGlieGxfX2djKiwgdWlkX3QgdWlkLAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RydWN0IHBhc3N3ZCAq
cmVzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
c3RydWN0IHBhc3N3ZCAqKm91dCk7CisKICNlbmRpZgogCiAvKgotLSAKMi40
Mi4wCgo=

--=separator
Content-Type: application/octet-stream; name="xsa443/xsa443-4.17-11.patch"
Content-Disposition: attachment; filename="xsa443/xsa443-4.17-11.patch"
Content-Transfer-Encoding: base64

RnJvbSA5ZDQ4MDQyNmJmYTJjNjg4NDNhYzgzOTViNTEyZTA2ZmJkYmNmNTNl
IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBSb2dlciBQYXUgTW9u
bmUgPHJvZ2VyLnBhdUBjaXRyaXguY29tPgpEYXRlOiBUaHUsIDI4IFNlcCAy
MDIzIDEyOjIyOjM1ICswMjAwClN1YmplY3Q6IFtQQVRDSCAxMS8xMV0gbGli
eGw6IGxpbWl0IGJvb3Rsb2FkZXIgZXhlY3V0aW9uIGluIHJlc3RyaWN0ZWQg
bW9kZQpNSU1FLVZlcnNpb246IDEuMApDb250ZW50LVR5cGU6IHRleHQvcGxh
aW47IGNoYXJzZXQ9VVRGLTgKQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzog
OGJpdAoKSW50cm9kdWNlIGEgdGltZW91dCBmb3IgYm9vdGxvYWRlciBleGVj
dXRpb24gd2hlbiBydW5uaW5nIGluIHJlc3RyaWN0ZWQgbW9kZS4KCkFsbG93
IG92ZXJ3cml0aW5nIHRoZSBkZWZhdWx0IHRpbWUgb3V0IHdpdGggYW4gZW52
aXJvbm1lbnQgcHJvdmlkZWQgdmFsdWUuCgpUaGlzIGlzIHBhcnQgb2YgWFNB
LTQ0MyAvIENWRS0yMDIzLTM0MzI1CgpTaWduZWQtb2ZmLWJ5OiBSb2dlciBQ
YXUgTW9ubsOpIDxyb2dlci5wYXVAY2l0cml4LmNvbT4KUmV2aWV3ZWQtYnk6
IEFudGhvbnkgUEVSQVJEIDxhbnRob255LnBlcmFyZEBjaXRyaXguY29tPgot
LS0KIGRvY3MvbWFuL3hsLjEucG9kLmluICAgICAgICAgICAgICAgIHwgIDgg
KysrKysrCiB0b29scy9saWJzL2xpZ2h0L2xpYnhsX2Jvb3Rsb2FkZXIuYyB8
IDQwICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrCiB0b29scy9saWJz
L2xpZ2h0L2xpYnhsX2ludGVybmFsLmggICB8ICAyICsrCiAzIGZpbGVzIGNo
YW5nZWQsIDUwIGluc2VydGlvbnMoKykKCmRpZmYgLS1naXQgYS9kb2NzL21h
bi94bC4xLnBvZC5pbiBiL2RvY3MvbWFuL3hsLjEucG9kLmluCmluZGV4IDQ4
MzFlMTIyNDI3ZC4uYzNlYjY1NzBhYjhiIDEwMDY0NAotLS0gYS9kb2NzL21h
bi94bC4xLnBvZC5pbgorKysgYi9kb2NzL21hbi94bC4xLnBvZC5pbgpAQCAt
MTk4OCw2ICsxOTg4LDE0IEBAIE5PVEU6IEVhY2ggZG9tYWluIE1VU1QgaGF2
ZSBhIFNFUEFSQVRFIHVzZXJuYW1lLgogCiBTZWUgZG9jcy9mZWF0dXJlcy9x
ZW11LWRlcHJpdmlsZWdlLnBhbmRvYyBmb3IgbW9yZSBpbmZvcm1hdGlvbi4K
IAorPWl0ZW0gTElCWExfQk9PVExPQURFUl9USU1FT1VUCisKK1RpbWVvdXQg
aW4gc2Vjb25kcyBmb3IgYm9vdGxvYWRlciBleGVjdXRpb24gd2hlbiBydW5u
aW5nIGluIHJlc3RyaWN0ZWQgbW9kZS4KK090aGVyd2lzZSB0aGUgYnVpbGQg
dGltZSBkZWZhdWx0IGluIExJQlhMX0JPT1RMT0FERVJfVElNRU9VVCB3aWxs
IGJlIHVzZWQuCisKK0lmIGRlZmluZWQgdGhlIHZhbHVlIG11c3QgYmUgYW4g
dW5zaWduZWQgaW50ZWdlciBiZXR3ZWVuIDAgYW5kIElOVF9NQVgsCitvdGhl
cndpc2UgYmVoYXZpb3IgaXMgdW5kZWZpbmVkLiAgU2V0dGluZyB0byAwIGRp
c2FibGVzIHRoZSB0aW1lb3V0LgorCiA9YmFjawogCiA9aGVhZDEgU0VFIEFM
U08KZGlmZiAtLWdpdCBhL3Rvb2xzL2xpYnMvbGlnaHQvbGlieGxfYm9vdGxv
YWRlci5jIGIvdG9vbHMvbGlicy9saWdodC9saWJ4bF9ib290bG9hZGVyLmMK
aW5kZXggMjNjMGVmM2U4OTM1Li5lZTI2ZDA4ZjM3NjUgMTAwNjQ0Ci0tLSBh
L3Rvb2xzL2xpYnMvbGlnaHQvbGlieGxfYm9vdGxvYWRlci5jCisrKyBiL3Rv
b2xzL2xpYnMvbGlnaHQvbGlieGxfYm9vdGxvYWRlci5jCkBAIC0zMCw2ICsz
MCw4IEBAIHN0YXRpYyB2b2lkIGJvb3Rsb2FkZXJfa2V5c3Ryb2tlc19jb3B5
ZmFpbChsaWJ4bF9fZWdjICplZ2MsCiAgICAgICAgbGlieGxfX2RhdGFjb3Bp
ZXJfc3RhdGUgKmRjLCBpbnQgcmMsIGludCBvbndyaXRlLCBpbnQgZXJybm92
YWwpOwogc3RhdGljIHZvaWQgYm9vdGxvYWRlcl9kaXNwbGF5X2NvcHlmYWls
KGxpYnhsX19lZ2MgKmVnYywKICAgICAgICBsaWJ4bF9fZGF0YWNvcGllcl9z
dGF0ZSAqZGMsIGludCByYywgaW50IG9ud3JpdGUsIGludCBlcnJub3ZhbCk7
CitzdGF0aWMgdm9pZCBib290bG9hZGVyX3RpbWVvdXQobGlieGxfX2VnYyAq
ZWdjLCBsaWJ4bF9fZXZfdGltZSAqZXYsCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgY29uc3Qgc3RydWN0IHRpbWV2YWwgKnJlcXVlc3RlZF9h
YnMsIGludCByYyk7CiBzdGF0aWMgdm9pZCBib290bG9hZGVyX2RvbWFpbmRl
YXRoKGxpYnhsX19lZ2MqLCBsaWJ4bF9fZG9tYWluZGVhdGhjaGVjayAqZGMs
CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCByYyk7
CiBzdGF0aWMgdm9pZCBib290bG9hZGVyX2ZpbmlzaGVkKGxpYnhsX19lZ2Mg
KmVnYywgbGlieGxfX2V2X2NoaWxkICpjaGlsZCwKQEAgLTI5Nyw2ICsyOTks
NyBAQCB2b2lkIGxpYnhsX19ib290bG9hZGVyX2luaXQobGlieGxfX2Jvb3Rs
b2FkZXJfc3RhdGUgKmJsKQogICAgIGJsLT5wdHlzWzBdLm1hc3RlciA9IGJs
LT5wdHlzWzBdLnNsYXZlID0gMDsKICAgICBibC0+cHR5c1sxXS5tYXN0ZXIg
PSBibC0+cHR5c1sxXS5zbGF2ZSA9IDA7CiAgICAgbGlieGxfX2V2X2NoaWxk
X2luaXQoJmJsLT5jaGlsZCk7CisgICAgbGlieGxfX2V2X3RpbWVfaW5pdCgm
YmwtPnRpbWUpOwogICAgIGxpYnhsX19kb21haW5kZWF0aGNoZWNrX2luaXQo
JmJsLT5kZWF0aGNoZWNrKTsKICAgICBibC0+a2V5c3Ryb2tlcy5hbyA9IGJs
LT5hbzsgIGxpYnhsX19kYXRhY29waWVyX2luaXQoJmJsLT5rZXlzdHJva2Vz
KTsKICAgICBibC0+ZGlzcGxheS5hbyA9IGJsLT5hbzsgICAgIGxpYnhsX19k
YXRhY29waWVyX2luaXQoJmJsLT5kaXNwbGF5KTsKQEAgLTMxNCw2ICszMTcs
NyBAQCBzdGF0aWMgdm9pZCBib290bG9hZGVyX2NsZWFudXAobGlieGxfX2Vn
YyAqZWdjLCBsaWJ4bF9fYm9vdGxvYWRlcl9zdGF0ZSAqYmwpCiAgICAgbGli
eGxfX2RvbWFpbmRlYXRoY2hlY2tfc3RvcChnYywmYmwtPmRlYXRoY2hlY2sp
OwogICAgIGxpYnhsX19kYXRhY29waWVyX2tpbGwoJmJsLT5rZXlzdHJva2Vz
KTsKICAgICBsaWJ4bF9fZGF0YWNvcGllcl9raWxsKCZibC0+ZGlzcGxheSk7
CisgICAgbGlieGxfX2V2X3RpbWVfZGVyZWdpc3RlcihnYywgJmJsLT50aW1l
KTsKICAgICBmb3IgKGk9MDsgaTwyOyBpKyspIHsKICAgICAgICAgbGlieGxf
X2NhcmVmZF9jbG9zZShibC0+cHR5c1tpXS5tYXN0ZXIpOwogICAgICAgICBs
aWJ4bF9fY2FyZWZkX2Nsb3NlKGJsLT5wdHlzW2ldLnNsYXZlKTsKQEAgLTM3
NSw2ICszNzksNyBAQCBzdGF0aWMgdm9pZCBib290bG9hZGVyX3N0b3AobGli
eGxfX2VnYyAqZWdjLAogCiAgICAgbGlieGxfX2RhdGFjb3BpZXJfa2lsbCgm
YmwtPmtleXN0cm9rZXMpOwogICAgIGxpYnhsX19kYXRhY29waWVyX2tpbGwo
JmJsLT5kaXNwbGF5KTsKKyAgICBsaWJ4bF9fZXZfdGltZV9kZXJlZ2lzdGVy
KGdjLCAmYmwtPnRpbWUpOwogICAgIGlmIChsaWJ4bF9fZXZfY2hpbGRfaW51
c2UoJmJsLT5jaGlsZCkpIHsKICAgICAgICAgciA9IGtpbGwoYmwtPmNoaWxk
LnBpZCwgU0lHVEVSTSk7CiAgICAgICAgIGlmIChyKSBMT0dFRChXQVJOLCBi
bC0+ZG9taWQsICIlc2ZhaWxlZCB0byBraWxsIGJvb3Rsb2FkZXIgWyVsdV0i
LApAQCAtNjM3LDYgKzY0MiwyNSBAQCBzdGF0aWMgdm9pZCBib290bG9hZGVy
X2dvdHB0eXMobGlieGxfX2VnYyAqZWdjLCBsaWJ4bF9fb3BlbnB0eV9zdGF0
ZSAqb3ApCiAKICAgICBzdHJ1Y3QgdGVybWlvcyB0ZXJtYXR0cjsKIAorICAg
IGlmIChnZXRlbnYoIkxJQlhMX0JPT1RMT0FERVJfUkVTVFJJQ1QiKSB8fAor
ICAgICAgICBnZXRlbnYoIkxJQlhMX0JPT1RMT0FERVJfVVNFUiIpKSB7Cisg
ICAgICAgIGNvbnN0IGNoYXIgKnRpbWVvdXRfZW52ID0gZ2V0ZW52KCJMSUJY
TF9CT09UTE9BREVSX1RJTUVPVVQiKTsKKyAgICAgICAgaW50IHRpbWVvdXQg
PSB0aW1lb3V0X2VudiA/IGF0b2kodGltZW91dF9lbnYpCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgOiBMSUJYTF9CT09UTE9BREVSX1RJ
TUVPVVQ7CisKKyAgICAgICAgaWYgKHRpbWVvdXQpIHsKKyAgICAgICAgICAg
IC8qIFNldCBleGVjdXRpb24gdGltZW91dCAqLworICAgICAgICAgICAgcmMg
PSBsaWJ4bF9fZXZfdGltZV9yZWdpc3Rlcl9yZWwoYW8sICZibC0+dGltZSwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Ym9vdGxvYWRlcl90aW1lb3V0LAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICB0aW1lb3V0ICogMTAwMCk7CisgICAgICAg
ICAgICBpZiAocmMpIHsKKyAgICAgICAgICAgICAgICBMT0dFRChFUlJPUiwg
YmwtPmRvbWlkLAorICAgICAgICAgICAgICAgICAgICAgICJ1bmFibGUgdG8g
cmVnaXN0ZXIgdGltZW91dCBmb3IgYm9vdGxvYWRlciBleGVjdXRpb24iKTsK
KyAgICAgICAgICAgICAgICBnb3RvIG91dDsKKyAgICAgICAgICAgIH0KKyAg
ICAgICAgfQorICAgIH0KKwogICAgIHBpZF90IHBpZCA9IGxpYnhsX19ldl9j
aGlsZF9mb3JrKGdjLCAmYmwtPmNoaWxkLCBib290bG9hZGVyX2ZpbmlzaGVk
KTsKICAgICBpZiAocGlkID09IC0xKSB7CiAgICAgICAgIHJjID0gRVJST1Jf
RkFJTDsKQEAgLTcwMiw2ICs3MjYsMjEgQEAgc3RhdGljIHZvaWQgYm9vdGxv
YWRlcl9kaXNwbGF5X2NvcHlmYWlsKGxpYnhsX19lZ2MgKmVnYywKICAgICBs
aWJ4bF9fYm9vdGxvYWRlcl9zdGF0ZSAqYmwgPSBDT05UQUlORVJfT0YoZGMs
ICpibCwgZGlzcGxheSk7CiAgICAgYm9vdGxvYWRlcl9jb3B5ZmFpbChlZ2Ms
ICJib290bG9hZGVyIG91dHB1dCIsIGJsLCAxLCByYyxvbndyaXRlLGVycm5v
dmFsKTsKIH0KK3N0YXRpYyB2b2lkIGJvb3Rsb2FkZXJfdGltZW91dChsaWJ4
bF9fZWdjICplZ2MsIGxpYnhsX19ldl90aW1lICpldiwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBjb25zdCBzdHJ1Y3QgdGltZXZhbCAqcmVx
dWVzdGVkX2FicywgaW50IHJjKQoreworICAgIGxpYnhsX19ib290bG9hZGVy
X3N0YXRlICpibCA9IENPTlRBSU5FUl9PRihldiwgKmJsLCB0aW1lKTsKKyAg
ICBTVEFURV9BT19HQyhibC0+YW8pOworCisgICAgbGlieGxfX2V2X3RpbWVf
ZGVyZWdpc3RlcihnYywgJmJsLT50aW1lKTsKKworICAgIGFzc2VydChsaWJ4
bF9fZXZfY2hpbGRfaW51c2UoJmJsLT5jaGlsZCkpOworICAgIExPR0QoRVJS
T1IsIGJsLT5kb21pZCwgImtpbGxpbmcgYm9vdGxvYWRlciBiZWNhdXNlIG9m
IHRpbWVvdXQiKTsKKworICAgIGxpYnhsX19ldl9jaGlsZF9raWxsX2RlcmVn
aXN0ZXIoYW8sICZibC0+Y2hpbGQsIFNJR0tJTEwpOworCisgICAgYm9vdGxv
YWRlcl9jYWxsYmFjayhlZ2MsIGJsLCByYyk7Cit9CiAKIHN0YXRpYyB2b2lk
IGJvb3Rsb2FkZXJfZG9tYWluZGVhdGgobGlieGxfX2VnYyAqZWdjLAogICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaWJ4bF9fZG9tYWlu
ZGVhdGhjaGVjayAqZGMsCkBAIC03MTgsNiArNzU3LDcgQEAgc3RhdGljIHZv
aWQgYm9vdGxvYWRlcl9maW5pc2hlZChsaWJ4bF9fZWdjICplZ2MsIGxpYnhs
X19ldl9jaGlsZCAqY2hpbGQsCiAgICAgU1RBVEVfQU9fR0MoYmwtPmFvKTsK
ICAgICBpbnQgcmM7CiAKKyAgICBsaWJ4bF9fZXZfdGltZV9kZXJlZ2lzdGVy
KGdjLCAmYmwtPnRpbWUpOwogICAgIGxpYnhsX19kYXRhY29waWVyX2tpbGwo
JmJsLT5rZXlzdHJva2VzKTsKICAgICBsaWJ4bF9fZGF0YWNvcGllcl9raWxs
KCZibC0+ZGlzcGxheSk7CiAKZGlmZiAtLWdpdCBhL3Rvb2xzL2xpYnMvbGln
aHQvbGlieGxfaW50ZXJuYWwuaCBiL3Rvb2xzL2xpYnMvbGlnaHQvbGlieGxf
aW50ZXJuYWwuaAppbmRleCBmMWUzYTlhMTViMTMuLmQwNTc4MzYxN2ZmNSAx
MDA2NDQKLS0tIGEvdG9vbHMvbGlicy9saWdodC9saWJ4bF9pbnRlcm5hbC5o
CisrKyBiL3Rvb2xzL2xpYnMvbGlnaHQvbGlieGxfaW50ZXJuYWwuaApAQCAt
MTAyLDYgKzEwMiw3IEBACiAjZGVmaW5lIExJQlhMX1FNUF9DTURfVElNRU9V
VCAxMAogI2RlZmluZSBMSUJYTF9TVFVCRE9NX1NUQVJUX1RJTUVPVVQgMzAK
ICNkZWZpbmUgTElCWExfUUVNVV9CT0RHRV9USU1FT1VUIDIKKyNkZWZpbmUg
TElCWExfQk9PVExPQURFUl9USU1FT1VUIDEyMAogI2RlZmluZSBMSUJYTF9Y
RU5DT05TT0xFX0xJTUlUIDEwNDg1NzYKICNkZWZpbmUgTElCWExfWEVOQ09O
U09MRV9QUk9UT0NPTCAidnQxMDAiCiAjZGVmaW5lIExJQlhMX01BWE1FTV9D
T05TVEFOVCAxMDI0CkBAIC0zNzQ0LDYgKzM3NDUsNyBAQCBzdHJ1Y3QgbGli
eGxfX2Jvb3Rsb2FkZXJfc3RhdGUgewogICAgIGxpYnhsX19vcGVucHR5X3N0
YXRlIG9wZW5wdHk7CiAgICAgbGlieGxfX29wZW5wdHlfcmVzdWx0IHB0eXNb
Ml07ICAvKiBbMF0gaXMgZm9yIGJvb3Rsb2FkZXIgKi8KICAgICBsaWJ4bF9f
ZXZfY2hpbGQgY2hpbGQ7CisgICAgbGlieGxfX2V2X3RpbWUgdGltZTsKICAg
ICBsaWJ4bF9fZG9tYWluZGVhdGhjaGVjayBkZWF0aGNoZWNrOwogICAgIGlu
dCBuYXJncywgYXJnc3NwYWNlOwogICAgIGNvbnN0IGNoYXIgKiphcmdzOwot
LSAKMi40Mi4wCgo=

--=separator
Content-Type: application/octet-stream; name="xsa443/xsa443-04.patch"
Content-Disposition: attachment; filename="xsa443/xsa443-04.patch"
Content-Transfer-Encoding: base64

RnJvbSA2ZTliZGU1ODNkZGUxYTU5MTE1MmVjNzRlZGVkZTg4ZDk5YThlOTBl
IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBBbGVqYW5kcm8gVmFs
bGVqbyA8YWxlamFuZHJvLnZhbGxlam9AY2xvdWQuY29tPgpEYXRlOiBUaHUs
IDE0IFNlcCAyMDIzIDEzOjIyOjUzICswMTAwClN1YmplY3Q6IFtQQVRDSCAw
NC8xMV0gbGliZnNpbWFnZS94ZnM6IEFkZCBjb21waWxlLXRpbWUgY2hlY2sg
dG8gbGliZnNpbWFnZQoKQWRkcyB0aGUgY29tbW9uIHRvb2xzIGluY2x1ZGUg
Zm9sZGVyIHRvIHRoZSAtSSBjb21waWxlIGZsYWdzCm9mIGxpYmZzaW1hZ2Uu
IFRoaXMgYWxsb3dzIHVzIHRvIHVzZToKICB4ZW4tdG9vbHMvY29tbW9uLW1h
Y3Jvcy5oOkJVSUxEX0JVR19PTigpCgpXaXRoIGl0LCBzdGF0aWNhbGx5IGFz
c2VydCBhIHNhbml0aXplZCAiYmxvY2tsb2cgLSBTRUNUT1JfQklUUyIgY2Fu
bm90CnVuZGVyZmxvdy4KClRoaXMgaXMgcGFydCBvZiBYU0EtNDQzIC8gQ1ZF
LTIwMjMtMzQzMjUKClNpZ25lZC1vZmYtYnk6IEFsZWphbmRybyBWYWxsZWpv
IDxhbGVqYW5kcm8udmFsbGVqb0BjbG91ZC5jb20+ClJldmlld2VkLWJ5OiBK
YW4gQmV1bGljaCA8amJldWxpY2hAc3VzZS5jb20+Ci0tLQogdG9vbHMvbGli
ZnNpbWFnZS9jb21tb24ubWsgICAgICB8IDIgKy0KIHRvb2xzL2xpYmZzaW1h
Z2UveGZzL2ZzeXNfeGZzLmMgfCA0ICsrKy0KIDIgZmlsZXMgY2hhbmdlZCwg
NCBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBh
L3Rvb2xzL2xpYmZzaW1hZ2UvY29tbW9uLm1rIGIvdG9vbHMvbGliZnNpbWFn
ZS9jb21tb24ubWsKaW5kZXggNGZjOGM2Njc5NTk5Li5lNDMzNjgzN2QwNDUg
MTAwNjQ0Ci0tLSBhL3Rvb2xzL2xpYmZzaW1hZ2UvY29tbW9uLm1rCisrKyBi
L3Rvb2xzL2xpYmZzaW1hZ2UvY29tbW9uLm1rCkBAIC0xLDcgKzEsNyBAQAog
aW5jbHVkZSAkKFhFTl9ST09UKS90b29scy9SdWxlcy5tawogCiBGU0RJUiA6
PSAkKGxpYmRpcikveGVuZnNpbWFnZQotQ0ZMQUdTICs9IC1Xbm8tdW5rbm93
bi1wcmFnbWFzIC1JJChYRU5fUk9PVCkvdG9vbHMvbGliZnNpbWFnZS9jb21t
b24vIC1ERlNJTUFHRV9GU0RJUj1cIiQoRlNESVIpXCIKK0NGTEFHUyArPSAt
V25vLXVua25vd24tcHJhZ21hcyAtSSQoWEVOX1JPT1QpL3Rvb2xzL2xpYmZz
aW1hZ2UvY29tbW9uLyAkKENGTEFHU194ZW5pbmNsdWRlKSAtREZTSU1BR0Vf
RlNESVI9XCIkKEZTRElSKVwiCiBDRkxBR1MgKz0gLURfR05VX1NPVVJDRQog
TERGTEFHUyArPSAtTC4uL2NvbW1vbi8KIApkaWZmIC0tZ2l0IGEvdG9vbHMv
bGliZnNpbWFnZS94ZnMvZnN5c194ZnMuYyBiL3Rvb2xzL2xpYmZzaW1hZ2Uv
eGZzL2ZzeXNfeGZzLmMKaW5kZXggYjVjNTNkM2QyMjJiLi5lOThiMzY3OTAx
YTggMTAwNjQ0Ci0tLSBhL3Rvb2xzL2xpYmZzaW1hZ2UveGZzL2ZzeXNfeGZz
LmMKKysrIGIvdG9vbHMvbGliZnNpbWFnZS94ZnMvZnN5c194ZnMuYwpAQCAt
MjAsNiArMjAsNyBAQAogI2luY2x1ZGUgPHN0ZGRlZi5oPgogI2luY2x1ZGUg
PHN0ZGJvb2wuaD4KICNpbmNsdWRlIDx4ZW5mc2ltYWdlX2dydWIuaD4KKyNp
bmNsdWRlIDx4ZW4tdG9vbHMvY29tbW9uLW1hY3Jvcy5oPgogI2luY2x1ZGUg
Inhmcy5oIgogCiAjZGVmaW5lIE1BWF9MSU5LX0NPVU5UCTgKQEAgLTQ3NSw5
ICs0NzYsMTAgQEAgeGZzX21vdW50IChmc2lfZmlsZV90ICpmZmksIGNvbnN0
IGNoYXIgKm9wdGlvbnMpCiAJeGZzLmFnYmxrbG9nID0gc3VwZXIuc2JfYWdi
bGtsb2c7CiAKIAkvKiBEZXJpdmVkIGZyb20gc2FuaXRpemVkIHBhcmFtZXRl
cnMgKi8KKwlCVUlMRF9CVUdfT04oWEZTX1NCX0JMT0NLTE9HX01JTiA8IFNF
Q1RPUl9CSVRTKTsKKwl4ZnMuYmRsb2cgPSBzdXBlci5zYl9ibG9ja2xvZyAt
IFNFQ1RPUl9CSVRTOwogCXhmcy5ic2l6ZSA9IDEgPDwgc3VwZXIuc2JfYmxv
Y2tsb2c7CiAJeGZzLmJsa2xvZyA9IHN1cGVyLnNiX2Jsb2NrbG9nOwotCXhm
cy5iZGxvZyA9IHN1cGVyLnNiX2Jsb2NrbG9nIC0gU0VDVE9SX0JJVFM7CiAJ
eGZzLmlzaXplID0gMSA8PCBzdXBlci5zYl9pbm9kZWxvZzsKIAl4ZnMuZGly
YnNpemUgPSAxIDw8IChzdXBlci5zYl9ibG9ja2xvZyArIHN1cGVyLnNiX2Rp
cmJsa2xvZyk7CiAJeGZzLmlub3BibG9nID0gc3VwZXIuc2JfYmxvY2tsb2cg
LSBzdXBlci5zYl9pbm9kZWxvZzsKLS0gCjIuNDIuMAoK

--=separator
Content-Type: application/octet-stream; name="xsa443/xsa443-05.patch"
Content-Disposition: attachment; filename="xsa443/xsa443-05.patch"
Content-Transfer-Encoding: base64

RnJvbSAwYjJkYzI4Mzc1NjRmYzY1YmRkOTljMTlhY2ZhZjI3ODNiNDQ0OGFh
IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBBbGVqYW5kcm8gVmFs
bGVqbyA8YWxlamFuZHJvLnZhbGxlam9AY2xvdWQuY29tPgpEYXRlOiBNb24s
IDI1IFNlcCAyMDIzIDE4OjMyOjIxICswMTAwClN1YmplY3Q6IFtQQVRDSCAw
NS8xMV0gdG9vbHMvcHlncnViOiBSZW1vdmUgdW5uZWNlc3NhcnkgaHlwZXJj
YWxsCgpUaGVyZSdzIGEgaHlwZXJjYWxsIGJlaW5nIGlzc3VlZCBpbiBvcmRl
ciB0byBkZXRlcm1pbmUgd2hldGhlciBQVjY0IGlzCnN1cHBvcnRlZCwgYnV0
IHNpbmNlIFhlbiA0LjMgdGhhdCdzIHN0cmljdGx5IHRydWUgc28gaXQncyBu
b3QgcmVxdWlyZWQuCgpQbHVzLCB0aGlzIHdheSB3ZSBjYW4gYXZvaWQgbWFw
cGluZyB0aGUgcHJpdmNtZCBpbnRlcmZhY2UgYWx0b2dldGhlciBpbiB0aGUK
ZGVwcml2IHB5Z3J1Yi4KClRoaXMgaXMgcGFydCBvZiBYU0EtNDQzIC8gQ1ZF
LTIwMjMtMzQzMjUKClNpZ25lZC1vZmYtYnk6IEFsZWphbmRybyBWYWxsZWpv
IDxhbGVqYW5kcm8udmFsbGVqb0BjbG91ZC5jb20+ClJldmlld2VkLWJ5OiBB
bmRyZXcgQ29vcGVyIDxhbmRyZXcuY29vcGVyM0BjaXRyaXguY29tPgotLS0K
IHRvb2xzL3B5Z3J1Yi9zcmMvcHlncnViIHwgMTIgKy0tLS0tLS0tLS0tCiAx
IGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDExIGRlbGV0aW9ucygt
KQoKZGlmZiAtLWdpdCBhL3Rvb2xzL3B5Z3J1Yi9zcmMvcHlncnViIGIvdG9v
bHMvcHlncnViL3NyYy9weWdydWIKaW5kZXggYTc1OWQ5MGFkZTVlLi4wYmU2
NzIwY2UwMGIgMTAwNzU1Ci0tLSBhL3Rvb2xzL3B5Z3J1Yi9zcmMvcHlncnVi
CisrKyBiL3Rvb2xzL3B5Z3J1Yi9zcmMvcHlncnViCkBAIC0xOCw3ICsxOCw2
IEBAIGltcG9ydCBvcywgc3lzLCBzdHJpbmcsIHN0cnVjdCwgdGVtcGZpbGUs
IHJlLCB0cmFjZWJhY2ssIHN0YXQsIGVycm5vCiBpbXBvcnQgY29weQogaW1w
b3J0IGxvZ2dpbmcKIGltcG9ydCBwbGF0Zm9ybQotaW1wb3J0IHhlbi5sb3ds
ZXZlbC54YwogCiBpbXBvcnQgY3Vyc2VzLCBfY3Vyc2VzLCBjdXJzZXMudGV4
dHBhZCwgY3Vyc2VzLmFzY2lpCiBpbXBvcnQgZ2V0b3B0CkBAIC02NjgsMTQg
KzY2Nyw2IEBAIGRlZiBydW5fZ3J1YihmaWxlLCBlbnRyeSwgZnMsIGNmZ19h
cmdzKToKIAogICAgIHJldHVybiBncnViY2ZnCiAKLWRlZiBzdXBwb3J0czY0
Yml0UFZndWVzdCgpOgotICAgIHhjID0geGVuLmxvd2xldmVsLnhjLnhjKCkK
LSAgICBjYXBzID0geGMueGVuaW5mbygpWyd4ZW5fY2FwcyddLnNwbGl0KCIg
IikKLSAgICBmb3IgY2FwIGluIGNhcHM6Ci0gICAgICAgIGlmIGNhcCA9PSAi
eGVuLTMuMC14ODZfNjQiOgotICAgICAgICAgICAgcmV0dXJuIFRydWUKLSAg
ICByZXR1cm4gRmFsc2UKLQogIyBJZiBub3RoaW5nIGhhcyBiZWVuIHNwZWNp
ZmllZCwgbG9vayBmb3IgYSBTb2xhcmlzIGRvbVUuIElmIGZvdW5kLCBwZXJm
b3JtIHRoZQogIyBuZWNlc3NhcnkgdHdlYWtzLgogZGVmIHNuaWZmX3NvbGFy
aXMoZnMsIGNmZyk6CkBAIC02ODQsOCArNjc1LDcgQEAgZGVmIHNuaWZmX3Nv
bGFyaXMoZnMsIGNmZyk6CiAgICAgICAgIHJldHVybiBjZmcKIAogICAgIGlm
IG5vdCBjZmdbImtlcm5lbCJdOgotICAgICAgICBpZiBzdXBwb3J0czY0Yml0
UFZndWVzdCgpIGFuZCBcCi0gICAgICAgICAgZnMuZmlsZV9leGlzdHMoIi9w
bGF0Zm9ybS9pODZ4cHYva2VybmVsL2FtZDY0L3VuaXgiKToKKyAgICAgICAg
aWYgZnMuZmlsZV9leGlzdHMoIi9wbGF0Zm9ybS9pODZ4cHYva2VybmVsL2Ft
ZDY0L3VuaXgiKToKICAgICAgICAgICAgIGNmZ1sia2VybmVsIl0gPSAiL3Bs
YXRmb3JtL2k4Nnhwdi9rZXJuZWwvYW1kNjQvdW5peCIKICAgICAgICAgICAg
IGNmZ1sicmFtZGlzayJdID0gIi9wbGF0Zm9ybS9pODZwYy9hbWQ2NC9ib290
X2FyY2hpdmUiCiAgICAgICAgIGVsaWYgZnMuZmlsZV9leGlzdHMoIi9wbGF0
Zm9ybS9pODZ4cHYva2VybmVsL3VuaXgiKToKLS0gCjIuNDIuMAoK

--=separator
Content-Type: application/octet-stream; name="xsa443/xsa443-06.patch"
Content-Disposition: attachment; filename="xsa443/xsa443-06.patch"
Content-Transfer-Encoding: base64

RnJvbSBjNThiZDk2MDFhMDU3ZGFkNTZhNGY5M2NiZGNjMjk2YTQxNGE4Mjcx
IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBBbGVqYW5kcm8gVmFs
bGVqbyA8YWxlamFuZHJvLnZhbGxlam9AY2xvdWQuY29tPgpEYXRlOiBNb24s
IDI1IFNlcCAyMDIzIDE4OjMyOjIyICswMTAwClN1YmplY3Q6IFtQQVRDSCAw
Ni8xMV0gdG9vbHMvcHlncnViOiBTbWFsbCByZWZhY3RvcnMKClNtYWxsIHRp
ZHkgdXAgdG8gZW5zdXJlIG91dHB1dF9kaXJlY3RvcnkgYWx3YXlzIGhhcyBh
IHRyYWlsaW5nICcvJyB0byBlYXNlCmNvbmNhdGVuYXRpbmcgcGF0aHMgYW5k
IHRoYXQgYG91dHB1dGAgY2FuIG9ubHkgYmUgYSBmaWxlbmFtZSBvciBOb25l
LgoKVGhpcyBpcyBwYXJ0IG9mIFhTQS00NDMgLyBDVkUtMjAyMy0zNDMyNQoK
U2lnbmVkLW9mZi1ieTogQWxlamFuZHJvIFZhbGxlam8gPGFsZWphbmRyby52
YWxsZWpvQGNsb3VkLmNvbT4KQWNrZWQtYnk6IEFuZHJldyBDb29wZXIgPGFu
ZHJldy5jb29wZXIzQGNpdHJpeC5jb20+Ci0tLQogdG9vbHMvcHlncnViL3Ny
Yy9weWdydWIgfCAxMCArKysrKy0tLS0tCiAxIGZpbGUgY2hhbmdlZCwgNSBp
bnNlcnRpb25zKCspLCA1IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3Rv
b2xzL3B5Z3J1Yi9zcmMvcHlncnViIGIvdG9vbHMvcHlncnViL3NyYy9weWdy
dWIKaW5kZXggMGJlNjcyMGNlMDBiLi5kMzFhYzAxODc4YTAgMTAwNzU1Ci0t
LSBhL3Rvb2xzL3B5Z3J1Yi9zcmMvcHlncnViCisrKyBiL3Rvb2xzL3B5Z3J1
Yi9zcmMvcHlncnViCkBAIC03OTMsNyArNzkzLDcgQEAgaWYgX19uYW1lX18g
PT0gIl9fbWFpbl9fIjoKICAgICBkZWJ1ZyA9IEZhbHNlCiAgICAgbm90X3Jl
YWxseSA9IEZhbHNlCiAgICAgb3V0cHV0X2Zvcm1hdCA9ICJzeHAiCi0gICAg
b3V0cHV0X2RpcmVjdG9yeSA9ICIvdmFyL3J1bi94ZW4vcHlncnViIgorICAg
IG91dHB1dF9kaXJlY3RvcnkgPSAiL3Zhci9ydW4veGVuL3B5Z3J1Yi8iCiAK
ICAgICAjIHdoYXQgd2FzIHBhc3NlZCBpbgogICAgIGluY2ZnID0geyAia2Vy
bmVsIjogTm9uZSwgInJhbWRpc2siOiBOb25lLCAiYXJncyI6ICIiIH0KQEAg
LTgxNSw3ICs4MTUsOCBAQCBpZiBfX25hbWVfXyA9PSAiX19tYWluX18iOgog
ICAgICAgICAgICAgdXNhZ2UoKQogICAgICAgICAgICAgc3lzLmV4aXQoKQog
ICAgICAgICBlbGlmIG8gaW4gKCItLW91dHB1dCIsKToKLSAgICAgICAgICAg
IG91dHB1dCA9IGEKKyAgICAgICAgICAgIGlmIGEgIT0gIi0iOgorICAgICAg
ICAgICAgICAgIG91dHB1dCA9IGEKICAgICAgICAgZWxpZiBvIGluICgiLS1r
ZXJuZWwiLCk6CiAgICAgICAgICAgICBpbmNmZ1sia2VybmVsIl0gPSBhCiAg
ICAgICAgIGVsaWYgbyBpbiAoIi0tcmFtZGlzayIsKToKQEAgLTg0NywxMiAr
ODQ4LDExIEBAIGlmIF9fbmFtZV9fID09ICJfX21haW5fXyI6CiAgICAgICAg
ICAgICBpZiBub3Qgb3MucGF0aC5pc2RpcihhKToKICAgICAgICAgICAgICAg
ICBwcmludCgiJXMgaXMgbm90IGFuIGV4aXN0aW5nIGRpcmVjdG9yeSIgJSBh
KQogICAgICAgICAgICAgICAgIHN5cy5leGl0KDEpCi0gICAgICAgICAgICBv
dXRwdXRfZGlyZWN0b3J5ID0gYQorICAgICAgICAgICAgb3V0cHV0X2RpcmVj
dG9yeSA9IGEgKyAnLycKIAogICAgIGlmIGRlYnVnOgogICAgICAgICBsb2dn
aW5nLmJhc2ljQ29uZmlnKGxldmVsPWxvZ2dpbmcuREVCVUcpCiAKLQogICAg
IHRyeToKICAgICAgICAgb3MubWFrZWRpcnMob3V0cHV0X2RpcmVjdG9yeSwg
MG83MDApCiAgICAgZXhjZXB0IE9TRXJyb3IgYXMgZToKQEAgLTg2MSw3ICs4
NjEsNyBAQCBpZiBfX25hbWVfXyA9PSAiX19tYWluX18iOgogICAgICAgICBl
bHNlOgogICAgICAgICAgICAgcmFpc2UKIAotICAgIGlmIG91dHB1dCBpcyBO
b25lIG9yIG91dHB1dCA9PSAiLSI6CisgICAgaWYgb3V0cHV0IGlzIE5vbmU6
CiAgICAgICAgIGZkID0gc3lzLnN0ZG91dC5maWxlbm8oKQogICAgIGVsc2U6
CiAgICAgICAgIGZkID0gb3Mub3BlbihvdXRwdXQsIG9zLk9fV1JPTkxZKQot
LSAKMi40Mi4wCgo=

--=separator
Content-Type: application/octet-stream; name="xsa443/xsa443-07.patch"
Content-Disposition: attachment; filename="xsa443/xsa443-07.patch"
Content-Transfer-Encoding: base64

RnJvbSAzYWZkNGIyZWU2YjNlZjg4NDNjNDZhMzgxZDk2NGUwZDZiODdjMmY4
IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBBbGVqYW5kcm8gVmFs
bGVqbyA8YWxlamFuZHJvLnZhbGxlam9AY2xvdWQuY29tPgpEYXRlOiBNb24s
IDI1IFNlcCAyMDIzIDE4OjMyOjIzICswMTAwClN1YmplY3Q6IFtQQVRDSCAw
Ny8xMV0gdG9vbHMvcHlncnViOiBPcGVuIHRoZSBvdXRwdXQgZmlsZXMgZWFy
bGllcgoKVGhpcyBwYXRjaCBhbGxvd3MgcHlncnViIHRvIGdldCBhaG9sZCBv
ZiBldmVyeSBSVyBmaWxlIGRlc2NyaXB0b3IgaXQgbmVlZHMKZWFybHkgb24u
IEEgbGF0ZXIgcGF0Y2ggd2lsbCBjbGFtcCB0aGUgZmlsZXN5c3RlbSBpdCBj
YW4gYWNjZXNzIHNvIGl0IGNhbid0Cm9idGFpbiBhbnkgb3RoZXJzLgoKVGhp
cyBpcyBwYXJ0IG9mIFhTQS00NDMgLyBDVkUtMjAyMy0zNDMyNQoKU2lnbmVk
LW9mZi1ieTogQWxlamFuZHJvIFZhbGxlam8gPGFsZWphbmRyby52YWxsZWpv
QGNsb3VkLmNvbT4KQWNrZWQtYnk6IEFuZHJldyBDb29wZXIgPGFuZHJldy5j
b29wZXIzQGNpdHJpeC5jb20+Ci0tLQogdG9vbHMvcHlncnViL3NyYy9weWdy
dWIgfCAzNyArKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0t
CiAxIGZpbGUgY2hhbmdlZCwgMjIgaW5zZXJ0aW9ucygrKSwgMTUgZGVsZXRp
b25zKC0pCgpkaWZmIC0tZ2l0IGEvdG9vbHMvcHlncnViL3NyYy9weWdydWIg
Yi90b29scy9weWdydWIvc3JjL3B5Z3J1YgppbmRleCBkMzFhYzAxODc4YTAu
LmIwZWY1ZGEzODdiMSAxMDA3NTUKLS0tIGEvdG9vbHMvcHlncnViL3NyYy9w
eWdydWIKKysrIGIvdG9vbHMvcHlncnViL3NyYy9weWdydWIKQEAgLTczOCw4
ICs3MzgsNyBAQCBpZiBfX25hbWVfXyA9PSAiX19tYWluX18iOgogICAgIGRl
ZiB1c2FnZSgpOgogICAgICAgICBwcmludCgiVXNhZ2U6ICVzIFstcXwtLXF1
aWV0XSBbLWl8LS1pbnRlcmFjdGl2ZV0gWy1sfC0tbGlzdC1lbnRyaWVzXSBb
LW58LS1ub3QtcmVhbGx5XSBbLS1vdXRwdXQ9XSBbLS1rZXJuZWw9XSBbLS1y
YW1kaXNrPV0gWy0tYXJncz1dIFstLWVudHJ5PV0gWy0tb3V0cHV0LWRpcmVj
dG9yeT1dIFstLW91dHB1dC1mb3JtYXQ9c3hwfHNpbXBsZXxzaW1wbGUwXSBb
LS1vZmZzZXQ9XSA8aW1hZ2U+IiAlKHN5cy5hcmd2WzBdLCksIGZpbGU9c3lz
LnN0ZGVycikKIAotICAgIGRlZiBjb3B5X2Zyb21faW1hZ2UoZnMsIGZpbGVf
dG9fcmVhZCwgZmlsZV90eXBlLCBvdXRwdXRfZGlyZWN0b3J5LAotICAgICAg
ICAgICAgICAgICAgICAgICAgbm90X3JlYWxseSk6CisgICAgZGVmIGNvcHlf
ZnJvbV9pbWFnZShmcywgZmlsZV90b19yZWFkLCBmaWxlX3R5cGUsIGZkX2Rz
dCwgcGF0aF9kc3QsIG5vdF9yZWFsbHkpOgogICAgICAgICBpZiBub3RfcmVh
bGx5OgogICAgICAgICAgICAgaWYgZnMuZmlsZV9leGlzdHMoZmlsZV90b19y
ZWFkKToKICAgICAgICAgICAgICAgICByZXR1cm4gIjwlczolcz4iICUgKGZp
bGVfdHlwZSwgZmlsZV90b19yZWFkKQpAQCAtNzUwLDIxICs3NDksMTggQEAg
aWYgX19uYW1lX18gPT0gIl9fbWFpbl9fIjoKICAgICAgICAgZXhjZXB0IEV4
Y2VwdGlvbiBhcyBlOgogICAgICAgICAgICAgcHJpbnQoZSwgZmlsZT1zeXMu
c3RkZXJyKQogICAgICAgICAgICAgc3lzLmV4aXQoIkVycm9yIG9wZW5pbmcg
JXMgaW4gZ3Vlc3QiICUgZmlsZV90b19yZWFkKQotICAgICAgICAodGZkLCBy
ZXQpID0gdGVtcGZpbGUubWtzdGVtcChwcmVmaXg9ImJvb3RfIitmaWxlX3R5
cGUrIi4iLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBkaXI9b3V0cHV0X2RpcmVjdG9yeSkKICAgICAgICAgZGF0YW9mZiA9IDAK
ICAgICAgICAgd2hpbGUgVHJ1ZToKICAgICAgICAgICAgIGRhdGEgPSBkYXRh
ZmlsZS5yZWFkKEZTX1JFQURfTUFYLCBkYXRhb2ZmKQogICAgICAgICAgICAg
aWYgbGVuKGRhdGEpID09IDA6Ci0gICAgICAgICAgICAgICAgb3MuY2xvc2Uo
dGZkKQorICAgICAgICAgICAgICAgIG9zLmNsb3NlKGZkX2RzdCkKICAgICAg
ICAgICAgICAgICBkZWwgZGF0YWZpbGUKLSAgICAgICAgICAgICAgICByZXR1
cm4gcmV0CisgICAgICAgICAgICAgICAgcmV0dXJuCiAgICAgICAgICAgICB0
cnk6Ci0gICAgICAgICAgICAgICAgb3Mud3JpdGUodGZkLCBkYXRhKQorICAg
ICAgICAgICAgICAgIG9zLndyaXRlKGZkX2RzdCwgZGF0YSkKICAgICAgICAg
ICAgIGV4Y2VwdCBFeGNlcHRpb24gYXMgZToKICAgICAgICAgICAgICAgICBw
cmludChlLCBmaWxlPXN5cy5zdGRlcnIpCi0gICAgICAgICAgICAgICAgb3Mu
Y2xvc2UodGZkKQotICAgICAgICAgICAgICAgIG9zLnVubGluayhyZXQpCisg
ICAgICAgICAgICAgICAgb3MudW5saW5rKHBhdGhfZHN0KQogICAgICAgICAg
ICAgICAgIGRlbCBkYXRhZmlsZQogICAgICAgICAgICAgICAgIHN5cy5leGl0
KCJFcnJvciB3cml0aW5nIHRlbXBvcmFyeSBjb3B5IG9mICIrZmlsZV90eXBl
KQogICAgICAgICAgICAgZGF0YW9mZiArPSBsZW4oZGF0YSkKQEAgLTg2MSw2
ICs4NTcsMTQgQEAgaWYgX19uYW1lX18gPT0gIl9fbWFpbl9fIjoKICAgICAg
ICAgZWxzZToKICAgICAgICAgICAgIHJhaXNlCiAKKyAgICBpZiBub3RfcmVh
bGx5OgorICAgICAgICBmZF9rZXJuZWwgPSAgcGF0aF9rZXJuZWwgPSBmZF9y
YW1kaXNrID0gcGF0aF9yYW1kaXNrID0gTm9uZQorICAgIGVsc2U6CisgICAg
ICAgIChmZF9rZXJuZWwsIHBhdGhfa2VybmVsKSA9IHRlbXBmaWxlLm1rc3Rl
bXAocHJlZml4PSJib290X2tlcm5lbC4iLAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpcj1vdXRwdXRf
ZGlyZWN0b3J5KQorICAgICAgICAoZmRfcmFtZGlzaywgcGF0aF9yYW1kaXNr
KSA9IHRlbXBmaWxlLm1rc3RlbXAocHJlZml4PSJib290X3JhbWRpc2suIiwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGRpcj1vdXRwdXRfZGlyZWN0b3J5KQorCiAgICAgaWYgb3V0
cHV0IGlzIE5vbmU6CiAgICAgICAgIGZkID0gc3lzLnN0ZG91dC5maWxlbm8o
KQogICAgIGVsc2U6CkBAIC05MjAsMjAgKzkyNCwyMyBAQCBpZiBfX25hbWVf
XyA9PSAiX19tYWluX18iOgogICAgIGlmIGZzIGlzIE5vbmU6CiAgICAgICAg
IHJhaXNlIFJ1bnRpbWVFcnJvcigiVW5hYmxlIHRvIGZpbmQgcGFydGl0aW9u
IGNvbnRhaW5pbmcga2VybmVsIikKIAotICAgIGJvb3RjZmdbImtlcm5lbCJd
ID0gY29weV9mcm9tX2ltYWdlKGZzLCBjaG9zZW5jZmdbImtlcm5lbCJdLCAi
a2VybmVsIiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBvdXRwdXRfZGlyZWN0b3J5LCBub3RfcmVhbGx5KQorICAgIGNvcHlf
ZnJvbV9pbWFnZShmcywgY2hvc2VuY2ZnWyJrZXJuZWwiXSwgImtlcm5lbCIs
CisgICAgICAgICAgICAgICAgICAgIGZkX2tlcm5lbCwgcGF0aF9rZXJuZWws
IG5vdF9yZWFsbHkpCisgICAgYm9vdGNmZ1sia2VybmVsIl0gPSBwYXRoX2tl
cm5lbAogCiAgICAgaWYgY2hvc2VuY2ZnWyJyYW1kaXNrIl06CiAgICAgICAg
IHRyeToKLSAgICAgICAgICAgIGJvb3RjZmdbInJhbWRpc2siXSA9IGNvcHlf
ZnJvbV9pbWFnZShmcywgY2hvc2VuY2ZnWyJyYW1kaXNrIl0sCi0gICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInJh
bWRpc2siLCBvdXRwdXRfZGlyZWN0b3J5LAotICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5vdF9yZWFsbHkpCisg
ICAgICAgICAgICBjb3B5X2Zyb21faW1hZ2UoZnMsIGNob3NlbmNmZ1sicmFt
ZGlzayJdLCAicmFtZGlzayIsCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgZmRfcmFtZGlzaywgcGF0aF9yYW1kaXNrLCBub3RfcmVhbGx5KQogICAg
ICAgICBleGNlcHQ6CiAgICAgICAgICAgICBpZiBub3Qgbm90X3JlYWxseToK
LSAgICAgICAgICAgICAgICBvcy51bmxpbmsoYm9vdGNmZ1sia2VybmVsIl0p
CisgICAgICAgICAgICAgICAgb3MudW5saW5rKHBhdGhfa2VybmVsKQogICAg
ICAgICAgICAgcmFpc2UKKyAgICAgICAgYm9vdGNmZ1sicmFtZGlzayJdID0g
cGF0aF9yYW1kaXNrCiAgICAgZWxzZToKICAgICAgICAgaW5pdHJkID0gTm9u
ZQorICAgICAgICBpZiBub3Qgbm90X3JlYWxseToKKyAgICAgICAgICAgIG9z
LnVubGluayhwYXRoX3JhbWRpc2spCiAKICAgICBhcmdzID0gTm9uZQogICAg
IGlmIGNob3NlbmNmZ1siYXJncyJdOgotLSAKMi40Mi4wCgo=

--=separator
Content-Type: application/octet-stream; name="xsa443/xsa443-08.patch"
Content-Disposition: attachment; filename="xsa443/xsa443-08.patch"
Content-Transfer-Encoding: base64

RnJvbSAwYjlmNjBmMmYzMGU4MDVkNzMwZGNiZmI1YjkwYTY4MThmNTY1YTlk
IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBBbGVqYW5kcm8gVmFs
bGVqbyA8YWxlamFuZHJvLnZhbGxlam9AY2xvdWQuY29tPgpEYXRlOiBNb24s
IDI1IFNlcCAyMDIzIDE4OjMyOjI0ICswMTAwClN1YmplY3Q6IFtQQVRDSCAw
OC8xMV0gdG9vbHMvbGliZnNpbWFnZTogRXhwb3J0IGEgbmV3IGZ1bmN0aW9u
IHRvIHByZWxvYWQgYWxsCiBwbHVnaW5zCgpUaGlzIGlzIHdvcmsgcmVxdWly
ZWQgaW4gb3JkZXIgdG8gbGV0IHB5Z3J1YiBvcGVyYXRlIGluIGhpZ2hseSBk
ZXByaXZpbGVnZWQKY2hyb290IG1vZGUuIFRoaXMgcGF0Y2ggYWRkcyBhIGZ1
bmN0aW9uIHRoYXQgcHJlbG9hZHMgZXZlcnkgcGx1Z2luLCBoZW5jZQplbnN1
cmluZyB0aGF0IGEgb24gZnVuY3Rpb24gZXhpdCwgZXZlcnkgc2hhcmVkIGxp
YnJhcnkgaXMgbG9hZGVkIGluIG1lbW9yeS4KClRoZSBuZXcgImluaXQiIGZ1
bmN0aW9uIGlzIHN1cHBvc2VkIHRvIGJlIHVzZWQgYmVmb3JlIGRlcHJpdiwg
YnV0IHRoYXQncwpmaW5lIGJlY2F1c2UgaXQncyBub3QgYWN0aW5nIG9uIHVu
dHJ1c3RlZCBkYXRhLgoKVGhpcyBpcyBwYXJ0IG9mIFhTQS00NDMgLyBDVkUt
MjAyMy0zNDMyNQoKU2lnbmVkLW9mZi1ieTogQWxlamFuZHJvIFZhbGxlam8g
PGFsZWphbmRyby52YWxsZWpvQGNsb3VkLmNvbT4KQWNrZWQtYnk6IEFuZHJl
dyBDb29wZXIgPGFuZHJldy5jb29wZXIzQGNpdHJpeC5jb20+Ci0tLQogdG9v
bHMvbGliZnNpbWFnZS9jb21tb24vZnNpbWFnZV9wbHVnaW4uYyB8ICA0ICsr
LS0KIHRvb2xzL2xpYmZzaW1hZ2UvY29tbW9uL21hcGZpbGUtR05VICAgICAg
fCAgMSArCiB0b29scy9saWJmc2ltYWdlL2NvbW1vbi9tYXBmaWxlLVN1bk9T
ICAgIHwgIDEgKwogdG9vbHMvbGliZnNpbWFnZS9jb21tb24veGVuZnNpbWFn
ZS5oICAgICB8ICA4ICsrKysrKysrCiB0b29scy9weWdydWIvc3JjL2ZzaW1h
Z2UvZnNpbWFnZS5jICAgICAgIHwgMTUgKysrKysrKysrKysrKysrCiA1IGZp
bGVzIGNoYW5nZWQsIDI3IGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0p
CgpkaWZmIC0tZ2l0IGEvdG9vbHMvbGliZnNpbWFnZS9jb21tb24vZnNpbWFn
ZV9wbHVnaW4uYyBiL3Rvb2xzL2xpYmZzaW1hZ2UvY29tbW9uL2ZzaW1hZ2Vf
cGx1Z2luLmMKaW5kZXggZGUxNDEyYjQyMzNhLi5kMGNiOWU5NmE2NTQgMTAw
NjQ0Ci0tLSBhL3Rvb2xzL2xpYmZzaW1hZ2UvY29tbW9uL2ZzaW1hZ2VfcGx1
Z2luLmMKKysrIGIvdG9vbHMvbGliZnNpbWFnZS9jb21tb24vZnNpbWFnZV9w
bHVnaW4uYwpAQCAtMTE5LDcgKzExOSw3IEBAIGZhaWw6CiAJcmV0dXJuICgt
MSk7CiB9CiAKLXN0YXRpYyBpbnQgbG9hZF9wbHVnaW5zKHZvaWQpCitpbnQg
ZnNpX2luaXQodm9pZCkKIHsKIAljb25zdCBjaGFyICpmc2RpciA9IGdldGVu
digiWEVOX0ZTSU1BR0VfRlNESVIiKTsKIAlzdHJ1Y3QgZGlyZW50ICpkcCA9
IE5VTEw7CkBAIC0xODAsNyArMTgwLDcgQEAgaW50IGZpbmRfcGx1Z2luKGZz
aV90ICpmc2ksIGNvbnN0IGNoYXIgKnBhdGgsIGNvbnN0IGNoYXIgKm9wdGlv
bnMpCiAJZnNpX3BsdWdpbl90ICpmcDsKIAlpbnQgcmV0ID0gMDsKIAotCWlm
IChwbHVnaW5zID09IE5VTEwgJiYgKHJldCA9IGxvYWRfcGx1Z2lucygpKSAh
PSAwKQorCWlmIChwbHVnaW5zID09IE5VTEwgJiYgKHJldCA9IGZzaV9pbml0
KCkpICE9IDApCiAJCWdvdG8gb3V0OwogCiAJZm9yIChmcCA9IHBsdWdpbnM7
IGZwICE9IE5VTEw7IGZwID0gZnAtPmZwX25leHQpIHsKZGlmZiAtLWdpdCBh
L3Rvb2xzL2xpYmZzaW1hZ2UvY29tbW9uL21hcGZpbGUtR05VIGIvdG9vbHMv
bGliZnNpbWFnZS9jb21tb24vbWFwZmlsZS1HTlUKaW5kZXggMjZkNGQ3YTY5
ZWM3Li4yZDU0ZDUyN2Q3ZjUgMTAwNjQ0Ci0tLSBhL3Rvb2xzL2xpYmZzaW1h
Z2UvY29tbW9uL21hcGZpbGUtR05VCisrKyBiL3Rvb2xzL2xpYmZzaW1hZ2Uv
Y29tbW9uL21hcGZpbGUtR05VCkBAIC0xLDYgKzEsNyBAQAogVkVSU0lPTiB7
CiAJbGliZnNpbWFnZS5zby4xLjAgewogCQlnbG9iYWw6CisJCQlmc2lfaW5p
dDsKIAkJCWZzaV9vcGVuX2ZzaW1hZ2U7CiAJCQlmc2lfY2xvc2VfZnNpbWFn
ZTsKIAkJCWZzaV9maWxlX2V4aXN0czsKZGlmZiAtLWdpdCBhL3Rvb2xzL2xp
YmZzaW1hZ2UvY29tbW9uL21hcGZpbGUtU3VuT1MgYi90b29scy9saWJmc2lt
YWdlL2NvbW1vbi9tYXBmaWxlLVN1bk9TCmluZGV4IGU5OWI5MGI2NTA3Ny4u
NDhkZWVkYjQyNTJmIDEwMDY0NAotLS0gYS90b29scy9saWJmc2ltYWdlL2Nv
bW1vbi9tYXBmaWxlLVN1bk9TCisrKyBiL3Rvb2xzL2xpYmZzaW1hZ2UvY29t
bW9uL21hcGZpbGUtU3VuT1MKQEAgLTEsNSArMSw2IEBACiBsaWJmc2ltYWdl
LnNvLjEuMCB7CiAJZ2xvYmFsOgorCQlmc2lfaW5pdDsKIAkJZnNpX29wZW5f
ZnNpbWFnZTsKIAkJZnNpX2Nsb3NlX2ZzaW1hZ2U7CiAJCWZzaV9maWxlX2V4
aXN0czsKZGlmZiAtLWdpdCBhL3Rvb2xzL2xpYmZzaW1hZ2UvY29tbW9uL3hl
bmZzaW1hZ2UuaCBiL3Rvb2xzL2xpYmZzaW1hZ2UvY29tbW9uL3hlbmZzaW1h
Z2UuaAppbmRleCAyMDFhYmQ1NGYyM2EuLjM0MTg4M2IyZDcxYSAxMDA2NDQK
LS0tIGEvdG9vbHMvbGliZnNpbWFnZS9jb21tb24veGVuZnNpbWFnZS5oCisr
KyBiL3Rvb2xzL2xpYmZzaW1hZ2UvY29tbW9uL3hlbmZzaW1hZ2UuaApAQCAt
MzUsNiArMzUsMTQgQEAgZXh0ZXJuIEMgewogdHlwZWRlZiBzdHJ1Y3QgZnNp
IGZzaV90OwogdHlwZWRlZiBzdHJ1Y3QgZnNpX2ZpbGUgZnNpX2ZpbGVfdDsK
IAorLyoKKyAqIE9wdGlvbmFsIGluaXRpYWxpemF0aW9uIGZ1bmN0aW9uLiBJ
ZiBpbnZva2VkIGl0IGxvYWRzIHRoZSBhc3NvY2lhdGVkCisgKiBkeW5hbWlj
IGxpYnJhcmllcyBmb3IgdGhlIGJhY2tlbmRzIGFoZWFkIG9mIHRpbWUuIFRo
aXMgaXMgcmVxdWlyZWQgaWYKKyAqIHRoZSBsaWJyYXJ5IGlzIHRvIHJ1biBh
cyBwYXJ0IG9mIGEgaGlnaGx5IGRlcHJpdmlsZWdlZCBleGVjdXRhYmxlLCBh
cworICogdGhlIGxpYnJhcmllcyBtYXkgbm90IGJlIHJlYWNoYWJsZSBhZnRl
ciBkZXByaXYuCisgKi8KK2ludCBmc2lfaW5pdCh2b2lkKTsKKwogZnNpX3Qg
KmZzaV9vcGVuX2ZzaW1hZ2UoY29uc3QgY2hhciAqLCB1aW50NjRfdCwgY29u
c3QgY2hhciAqKTsKIHZvaWQgZnNpX2Nsb3NlX2ZzaW1hZ2UoZnNpX3QgKik7
CiAKZGlmZiAtLWdpdCBhL3Rvb2xzL3B5Z3J1Yi9zcmMvZnNpbWFnZS9mc2lt
YWdlLmMgYi90b29scy9weWdydWIvc3JjL2ZzaW1hZ2UvZnNpbWFnZS5jCmlu
ZGV4IGZkY2ZhMWEzYzA0MC4uMTJkZmNmZjZlMzVkIDEwMDY0NAotLS0gYS90
b29scy9weWdydWIvc3JjL2ZzaW1hZ2UvZnNpbWFnZS5jCisrKyBiL3Rvb2xz
L3B5Z3J1Yi9zcmMvZnNpbWFnZS9mc2ltYWdlLmMKQEAgLTI4Niw2ICsyODYs
MTUgQEAgZnNpbWFnZV9nZXRib290c3RyaW5nKFB5T2JqZWN0ICpvLCBQeU9i
amVjdCAqYXJncykKIAlyZXR1cm4gUHlfQnVpbGRWYWx1ZSgicyIsIGJvb3Rz
dHJpbmcpOwogfQogCitzdGF0aWMgUHlPYmplY3QgKgorZnNpbWFnZV9pbml0
KFB5T2JqZWN0ICpvLCBQeU9iamVjdCAqYXJncykKK3sKKwlpZiAoIVB5QXJn
X1BhcnNlVHVwbGUoYXJncywgIiIpKQorCQlyZXR1cm4gKE5VTEwpOworCisJ
cmV0dXJuIFB5X0J1aWxkVmFsdWUoImkiLCBmc2lfaW5pdCgpKTsKK30KKwog
UHlEb2NfU1RSVkFSKGZzaW1hZ2Vfb3Blbl9fZG9jX18sCiAgICAgIm9wZW4o
bmFtZSwgW29mZnNldD1vZmZdKSAtIE9wZW4gdGhlIGdpdmVuIGZpbGUgYXMg
YSBmaWxlc3lzdGVtIGltYWdlLlxuIgogICAgICJcbiIKQEAgLTI5Nyw3ICsz
MDYsMTMgQEAgUHlEb2NfU1RSVkFSKGZzaW1hZ2VfZ2V0Ym9vdHN0cmluZ19f
ZG9jX18sCiAgICAgImdldGJvb3RzdHJpbmcoZnMpIC0gUmV0dXJuIHRoZSBi
b290IHN0cmluZyBuZWVkZWQgZm9yIHRoaXMgZmlsZSBzeXN0ZW0gIgogICAg
ICJvciBOVUxMIGlmIG5vbmUgaXMgbmVlZGVkLlxuIik7CiAKK1B5RG9jX1NU
UlZBUihmc2ltYWdlX2luaXRfX2RvY19fLAorICAgICJpbml0KCkgLSBMb2Fk
cyBldmVyeSBkeW5hbWljIGxpYnJhcnkgY29udGFpbmVkIGluIHhlbmZzaW1h
Z2UgIgorICAgICJpbnRvIG1lbW9yeSBzbyB0aGF0IGl0IGNhbiBiZSB1c2Vk
IGluIGNocm9vdGVkIGVudmlyb25tZW50cy5cbiIpOworCiBzdGF0aWMgc3Ry
dWN0IFB5TWV0aG9kRGVmIGZzaW1hZ2VfbW9kdWxlX21ldGhvZHNbXSA9IHsK
Kwl7ICJpbml0IiwgKFB5Q0Z1bmN0aW9uKWZzaW1hZ2VfaW5pdCwKKwkgICAg
TUVUSF9WQVJBUkdTLCBmc2ltYWdlX2luaXRfX2RvY19fIH0sCiAJeyAib3Bl
biIsIChQeUNGdW5jdGlvbilmc2ltYWdlX29wZW4sCiAJICAgIE1FVEhfVkFS
QVJHU3xNRVRIX0tFWVdPUkRTLCBmc2ltYWdlX29wZW5fX2RvY19fIH0sCiAJ
eyAiZ2V0Ym9vdHN0cmluZyIsIChQeUNGdW5jdGlvbilmc2ltYWdlX2dldGJv
b3RzdHJpbmcsCi0tIAoyLjQyLjAKCg==

--=separator
Content-Type: application/octet-stream; name="xsa443/xsa443-09.patch"
Content-Disposition: attachment; filename="xsa443/xsa443-09.patch"
Content-Transfer-Encoding: base64

RnJvbSA5MTE5NDNmNDliYjQ0N2VmMWE2YzlkYWRmZDg0ODkxYTAyNDg2OTlj
IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBBbGVqYW5kcm8gVmFs
bGVqbyA8YWxlamFuZHJvLnZhbGxlam9AY2xvdWQuY29tPgpEYXRlOiBNb24s
IDI1IFNlcCAyMDIzIDE4OjMyOjI1ICswMTAwClN1YmplY3Q6IFtQQVRDSCAw
OS8xMV0gdG9vbHMvcHlncnViOiBEZXByaXZpbGVnZSBweWdydWIKCkludHJv
ZHVjZSBhIC0tcnVuYXM9PHVpZD4gZmxhZyB0byBkZXByaXZpbGVnZSBweWdy
dWIgb24gTGludXggYW5kICpCU0RzLiBJdAphbHNvIGltcGxpY2l0bHkgY3Jl
YXRlcyBhIGNocm9vdCBlbnYgd2hlcmUgaXQgZHJvcHMgYSBkZXByaXZpbGVn
ZWQgZm9ya2VkCnByb2Nlc3MuIFRoZSBjaHJvb3QgaXRzZWxmIGlzIGNsZWFu
ZWQgdXAgYXQgdGhlIGVuZC4KCklmIHRoZSAtLXJ1bmFzIGFyZyBpcyBwcmVz
ZW50LCB0aGVuIHB5Z3J1YiBmb3JrcywgbGVhdmluZyB0aGUgY2hpbGQgdG8K
ZGVwcml2aWxlZ2UgaXRzZWxmLCBhbmQgd2FpdGluZyBmb3IgaXQgdG8gY29t
cGxldGUuIFdoZW4gdGhlIGNoaWxkIGV4aXN0cywKdGhlIHBhcmVudCBwZXJm
b3JtcyBjbGVhbnVwIGFuZCBleGl0cyB3aXRoIHRoZSBzYW1lIGVycm9yIGNv
ZGUuCgpUaGlzIGlzIHJvdWdobHkgd2hhdCB0aGUgY2hpbGQgZG9lczoKICAx
LiBJbml0aWFsaXplIGxpYmZzaW1hZ2UgKHRoaXMgbG9hZHMgZXZlcnkgLnNv
IGluIG1lbW9yeSBzbyB0aGUgY2hyb290CiAgICAgY2FuIGF2b2lkIGJpbmQt
bW91bnRpbmcgL3ssdXNyfS9saWIqCiAgMi4gQ3JlYXRlIGEgdGVtcG9yYXJ5
IGVtcHR5IGNocm9vdCBkaXJlY3RvcnkKICAzLiBNb3VudCB0bXBmcyBpbiBp
dAogIDQuIEJpbmQgbW91bnQgdGhlIGRpc2sgaW5zaWRlLCBiZWNhdXNlIGxp
YmZzaW1hZ2UgZXhwZWN0cyBhIHBhdGgsIG5vdCBhCiAgICAgZmlsZSBkZXNj
cmlwdG9yLgogIDUuIFJlbW91bnQgdGhlIHJvb3QgdG1wZnMgdG8gYmUgc3Ry
aWN0ZXIgKHJvLG5vc3VpZCxub2RldikKICA2LiBTZXQgUkxJTUlUX0ZTSVpF
IHRvIGEgc2Vuc2libHkgaGlnaCBhbW91bnQgKDEyOCBNaUIpCiAgNy4gRGVw
cml2IGdpZCwgZ3JvdXBzIGFuZCB1aWQKCldpdGggdGhpcyBzY2hlbWUgaW4g
cGxhY2UsIHRoZSAib3V0cHV0IiBmaWxlcyBhcmUgd3JpdGFibGUgKHVwIHRv
ClJMSU1JVF9GU0laRSBvY3RldHMpIGFuZCB0aGUgZXhwb3NlZCBmaWxlc3lz
dGVtIGlzIGltbXV0YWJsZSBhbmQgY29udGFpbnMKdGhlIHNpbmdsZSBvbmx5
IGZpbGUgd2UgY2FuJ3QgZWFzaWx5IGdldCByaWQgb2YgKHRoZSBkaXNrKS4K
CklmIHJ1bm5pbmcgb24gTGludXgsIHRoZSBjaGlsZCBwcm9jZXNzIGFsc28g
dW5zaGFyZXMgbW91bnQsIElQQywgYW5kCm5ldHdvcmsgbmFtZXNwYWNlcyBi
ZWZvcmUgZHJvcHBpbmcgaXRzIHByaXZpbGVnZXMuCgpUaGlzIGlzIHBhcnQg
b2YgWFNBLTQ0MyAvIENWRS0yMDIzLTM0MzI1CgpTaWduZWQtb2ZmLWJ5OiBB
bGVqYW5kcm8gVmFsbGVqbyA8YWxlamFuZHJvLnZhbGxlam9AY2xvdWQuY29t
PgpBY2tlZC1ieTogQW5kcmV3IENvb3BlciA8YW5kcmV3LmNvb3BlcjNAY2l0
cml4LmNvbT4KLS0tCiB0b29scy9weWdydWIvc2V0dXAucHkgICB8ICAgMiAr
LQogdG9vbHMvcHlncnViL3NyYy9weWdydWIgfCAxNjIgKysrKysrKysrKysr
KysrKysrKysrKysrKysrKysrKysrKysrKy0tLQogMiBmaWxlcyBjaGFuZ2Vk
LCAxNTQgaW5zZXJ0aW9ucygrKSwgMTAgZGVsZXRpb25zKC0pCgpkaWZmIC0t
Z2l0IGEvdG9vbHMvcHlncnViL3NldHVwLnB5IGIvdG9vbHMvcHlncnViL3Nl
dHVwLnB5CmluZGV4IGM5Y2FjNDdlZWUxYS4uYmU1ZDNmZmQwNDFiIDEwMDY0
NAotLS0gYS90b29scy9weWdydWIvc2V0dXAucHkKKysrIGIvdG9vbHMvcHln
cnViL3NldHVwLnB5CkBAIC0yMCw3ICsyMCw3IEBAIHhlbmZzaW1hZ2UgPSBF
eHRlbnNpb24oInhlbmZzaW1hZ2UiLAogcGtncyA9IFsgJ2dydWInIF0KIAog
c2V0dXAobmFtZT0ncHlncnViJywKLSAgICAgIHZlcnNpb249JzAuNicsCisg
ICAgICB2ZXJzaW9uPScwLjcnLAogICAgICAgZGVzY3JpcHRpb249J0Jvb3Qg
bG9hZGVyIHRoYXQgbG9va3MgYSBsb3QgbGlrZSBncnViIGZvciBYZW4nLAog
ICAgICAgYXV0aG9yPSdKZXJlbXkgS2F0eicsCiAgICAgICBhdXRob3JfZW1h
aWw9J2thdHpqQHJlZGhhdC5jb20nLApkaWZmIC0tZ2l0IGEvdG9vbHMvcHln
cnViL3NyYy9weWdydWIgYi90b29scy9weWdydWIvc3JjL3B5Z3J1YgppbmRl
eCBiMGVmNWRhMzg3YjEuLmRjZGZjMDRmZjAwZiAxMDA3NTUKLS0tIGEvdG9v
bHMvcHlncnViL3NyYy9weWdydWIKKysrIGIvdG9vbHMvcHlncnViL3NyYy9w
eWdydWIKQEAgLTE2LDggKzE2LDExIEBAIGZyb20gX19mdXR1cmVfXyBpbXBv
cnQgcHJpbnRfZnVuY3Rpb24KIAogaW1wb3J0IG9zLCBzeXMsIHN0cmluZywg
c3RydWN0LCB0ZW1wZmlsZSwgcmUsIHRyYWNlYmFjaywgc3RhdCwgZXJybm8K
IGltcG9ydCBjb3B5CitpbXBvcnQgY3R5cGVzLCBjdHlwZXMudXRpbAogaW1w
b3J0IGxvZ2dpbmcKIGltcG9ydCBwbGF0Zm9ybQoraW1wb3J0IHJlc291cmNl
CitpbXBvcnQgc3VicHJvY2VzcwogCiBpbXBvcnQgY3Vyc2VzLCBfY3Vyc2Vz
LCBjdXJzZXMudGV4dHBhZCwgY3Vyc2VzLmFzY2lpCiBpbXBvcnQgZ2V0b3B0
CkBAIC0yNywxMCArMzAsMTM1IEBAIGltcG9ydCBncnViLkdydWJDb25mCiBp
bXBvcnQgZ3J1Yi5MaWxvQ29uZgogaW1wb3J0IGdydWIuRXh0TGludXhDb25m
CiAKLVBZR1JVQl9WRVIgPSAwLjYKK1BZR1JVQl9WRVIgPSAwLjcKIEZTX1JF
QURfTUFYID0gMTAyNCAqIDEwMjQKIFNFQ1RPUl9TSVpFID0gNTEyCiAKKyMg
VW5sZXNzIHByb3ZpZGVkIHRocm91Z2ggdGhlIGVudiB2YXJpYWJsZSBQWUdS
VUJfTUFYX0ZJTEVfU0laRV9NQiwgdGhlbgorIyB0aGlzIGlzIHRoZSBtYXhp
bXVtIGZpbGVzaXplIGFsbG93ZWQgZm9yIGZpbGVzIHdyaXR0ZW4gYnkgdGhl
IGRlcHJpdgorIyBweWdydWIKK0xJTUlUX0ZTSVpFID0gMTI4IDw8IDIwCisK
K0NMT05FX05FV05TID0gMHgwMDAyMDAwMCAjIG1vdW50IG5hbWVzcGFjZQor
Q0xPTkVfTkVXTkVUID0gMHg0MDAwMDAwMCAjIG5ldHdvcmsgbmFtZXNwYWNl
CitDTE9ORV9ORVdJUEMgPSAweDA4MDAwMDAwICMgSVBDIG5hbWVzcGFjZQor
CitkZWYgdW5zaGFyZShmbGFncyk6CisgICAgaWYgbm90IHN5cy5wbGF0Zm9y
bS5zdGFydHN3aXRoKCJsaW51eCIpOgorICAgICAgICBwcmludCgic2tpcF91
bnNoYXJlIHJlYXNvbj1ub3RfbGludXggcGxhdGZvcm09JXMiLCBzeXMucGxh
dGZvcm0sIGZpbGU9c3lzLnN0ZGVycikKKyAgICAgICAgcmV0dXJuCisKKyAg
ICBsaWJjID0gY3R5cGVzLkNETEwoY3R5cGVzLnV0aWwuZmluZF9saWJyYXJ5
KCdjJyksIHVzZV9lcnJubz1UcnVlKQorICAgIHVuc2hhcmVfcHJvdG90eXBl
ID0gY3R5cGVzLkNGVU5DVFlQRShjdHlwZXMuY19pbnQsIGN0eXBlcy5jX2lu
dCwgdXNlX2Vycm5vPVRydWUpCisgICAgdW5zaGFyZSA9IHVuc2hhcmVfcHJv
dG90eXBlKCgndW5zaGFyZScsIGxpYmMpKQorCisgICAgaWYgdW5zaGFyZShm
bGFncykgPCAwOgorICAgICAgICByYWlzZSBPU0Vycm9yKGN0eXBlcy5nZXRf
ZXJybm8oKSwgb3Muc3RyZXJyb3IoY3R5cGVzLmdldF9lcnJubygpKSkKKwor
ZGVmIGJpbmRfbW91bnQoc3JjLCBkc3QsIG9wdGlvbnMpOgorICAgIG9wZW4o
ZHN0LCAiYSIpLmNsb3NlKCkgIyB0b3VjaAorCisgICAgcmMgPSBzdWJwcm9j
ZXNzLmNhbGwoWyJtb3VudCIsICItLWJpbmQiLCAiLW8iLCBvcHRpb25zLCBz
cmMsIGRzdF0pCisgICAgaWYgcmMgIT0gMDoKKyAgICAgICAgcmFpc2UgUnVu
dGltZUVycm9yKCJiYWRfbW91bnQ6IHNyYz0lcyBkc3Q9JXMgb3B0cz0lcyIg
JQorICAgICAgICAgICAgICAgICAgICAgICAgICAgKHNyYywgZHN0LCBvcHRp
b25zKSkKKworZGVmIGRvd25ncmFkZV9ybGltaXRzKCk6CisgICAgIyBXaXBl
IHRoZSBhdXRob3JpdHkgdG8gdXNlIHVucmVxdWlyZWQgcmVzb3VyY2VzCisg
ICAgcmVzb3VyY2Uuc2V0cmxpbWl0KHJlc291cmNlLlJMSU1JVF9OUFJPQywg
ICAgKDAsIDApKQorICAgIHJlc291cmNlLnNldHJsaW1pdChyZXNvdXJjZS5S
TElNSVRfQ09SRSwgICAgICgwLCAwKSkKKyAgICByZXNvdXJjZS5zZXRybGlt
aXQocmVzb3VyY2UuUkxJTUlUX01FTUxPQ0ssICAoMCwgMCkpCisKKyAgICAj
IHB5MidzIHJlc291cmNlIG1vZHVsZSBkb2Vzbid0IGtub3cgYWJvdXQgcmVz
b3VyY2UuUkxJTUlUX01TR1FVRVVFCisgICAgIworICAgICMgVE9ETzogVXNl
IHJlc291cmNlLlJMSU1JVF9NU0dRVUVVRSBhZnRlciBweXRob24yIGlzIGRl
cHJlY2F0ZWQKKyAgICBpZiBzeXMucGxhdGZvcm0uc3RhcnRzd2l0aCgnbGlu
dXgnKToKKyAgICAgICAgUkxJTUlUX01TR1FVRVVFID0gMTIKKyAgICAgICAg
cmVzb3VyY2Uuc2V0cmxpbWl0KFJMSU1JVF9NU0dRVUVVRSwgKDAsIDApKQor
CisgICAgIyBUaGUgZmluYWwgbG9vayBvZiB0aGUgZmlsZXN5c3RlbSBmb3Ig
dGhpcyBwcm9jZXNzIGlzIGZ1bGx5IFJPLCBidXQKKyAgICAjIG5vdGUgd2Ug
aGF2ZSBzb21lIGZpbGUgZGVzY3JpcHRvciBhbHJlYWR5IG9wZW4gKG5vdGFi
bHksIGtlcm5lbCBhbmQKKyAgICAjIHJhbWRpc2spLiBJbiBvcmRlciB0byBh
dm9pZCBhIGNvbXByb21pc2VkIHB5Z3J1YiBmcm9tIGZpbGxpbmcgdXAgdGhl
CisgICAgIyBmaWxlc3lzdGVtIHdlIHNldCBSTElNSVRfRlNJWkUgdG8gYSBo
aWdoIGJvdW5kLCBzbyB0aGF0IHRoZSBmaWxlCisgICAgIyB3cml0ZSBwZXJt
aXNzaW9ucyBhcmUgYm91bmQuCisgICAgZnNpemUgPSBMSU1JVF9GU0laRQor
ICAgIGlmICJQWUdSVUJfTUFYX0ZJTEVfU0laRV9NQiIgaW4gb3MuZW52aXJv
bi5rZXlzKCk6CisgICAgICAgIGZzaXplID0gb3MuZW52aXJvblsiUFlHUlVC
X01BWF9GSUxFX1NJWkVfTUIiXSA8PCAyMAorCisgICAgcmVzb3VyY2Uuc2V0
cmxpbWl0KHJlc291cmNlLlJMSU1JVF9GU0laRSwgKGZzaXplLCBmc2l6ZSkp
CisKK2RlZiBkZXByaXYob3V0cHV0X2RpcmVjdG9yeSwgb3V0cHV0LCBkZXZp
Y2UsIHVpZCwgcGF0aF9rZXJuZWwsIHBhdGhfcmFtZGlzayk6CisgICAgIyBU
aGUgb25seSBwb2ludCBvZiB0aGlzIGNhbGwgaXMgdG8gZm9yY2UgdGhlIGxv
YWRpbmcgb2YgbGliZnNpbWFnZS4KKyAgICAjIFRoYXQgd2F5LCB3ZSBkb24n
dCBuZWVkIHRvIGJpbmQtbW91bnQgaXQgaW50byB0aGUgY2hyb290CisgICAg
cmMgPSB4ZW5mc2ltYWdlLmluaXQoKQorICAgIGlmIHJjICE9IDA6CisgICAg
ICAgIG9zLnVubGluayhwYXRoX3JhbWRpc2spCisgICAgICAgIG9zLnVubGlu
ayhwYXRoX2tlcm5lbCkKKyAgICAgICAgcmFpc2UgUnVudGltZUVycm9yKCJi
YWRfeGVuZnNpbWFnZTogcmM9JWQiICUgcmMpCisKKyAgICAjIENyZWF0ZSBh
IHRlbXBvcmFyeSBkaXJlY3RvcnkgZm9yIHRoZSBjaHJvb3QKKyAgICBjaHJv
b3QgPSB0ZW1wZmlsZS5ta2R0ZW1wKHByZWZpeD1zdHIodWlkKSsnLScsIGRp
cj1vdXRwdXRfZGlyZWN0b3J5KSArICcvJworICAgIGRldmljZV9wYXRoID0g
Jy9kZXZpY2UnCisKKyAgICBwaWQgPSBvcy5mb3JrKCkKKyAgICBpZiBwaWQ6
CisgICAgICAgICMgcGFyZW50CisgICAgICAgIF8sIHJjID0gb3Mud2FpdHBp
ZChwaWQsIDApCisKKyAgICAgICAgZm9yIHBhdGggaW4gW3BhdGhfa2VybmVs
LCBwYXRoX3JhbWRpc2tdOgorICAgICAgICAgICAgIyBJZiB0aGUgY2hpbGQg
ZGlkbid0IHdyaXRlIGFueXRoaW5nLCBqdXN0IGdldCByaWQgb2YgaXQsCisg
ICAgICAgICAgICAjIG90aGVyd2lzZSB3ZSBlbmQgdXAgY29uc3VtaW5nIGEg
MC1zaXplIGZpbGUgd2hlbiBwYXJzaW5nCisgICAgICAgICAgICAjIHN5c3Rl
bXMgd2l0aG91dCBhIHJhbWRpc2sgdGhhdCB0aGUgdWx0aW1hdGUgY2FsbGVy
IG9mIHB5Z3J1YgorICAgICAgICAgICAgIyBtYXkganVzdCBiZSB1bmF3YXJl
IG9mCisgICAgICAgICAgICBpZiByYyAhPSAwIG9yIG9zLnBhdGguZ2V0c2l6
ZShwYXRoKSA9PSAwOgorICAgICAgICAgICAgICAgIG9zLnVubGluayhwYXRo
KQorCisgICAgICAgICMgTm9ybWFsbHksIHVuc2hhcmUoQ0xPTkVfTkVXTlMp
IHdpbGwgZW5zdXJlIHRoaXMgaXMgbm90IHJlcXVpcmVkLgorICAgICAgICAj
IEhvd2V2ZXIsIHRoaXMgc3lzY2FsbCBkb2Vzbid0IGV4aXN0IGluICpCU0Qg
c3lzdGVtcyBhbmQgZG9lc24ndAorICAgICAgICAjIGF1dG8tdW5tb3VudCBl
dmVyeXRoaW5nIG9uIG9sZGVyIExpbnV4IGtlcm5lbHMgKEF0IGxlYXN0IGFz
IG9mCisgICAgICAgICMgTGludXggNC4xOSwgYnV0IGl0IHNlZW1zIGZpeGVk
IGluIDUuMTUpLiBFaXRoZXIgd2F5LAorICAgICAgICAjIHJlY3Vyc2l2ZWx5
IHVubW91bnQgZXZlcnl0aGluZyBpZiBuZWVkZWQuIFF1aWV0bHkuCisgICAg
ICAgIHdpdGggb3BlbignL2Rldi9udWxsJywgJ3cnKSBhcyBkZXZudWxsOgor
ICAgICAgICAgICAgc3VicHJvY2Vzcy5jYWxsKFsidW1vdW50IiwgIi1mIiwg
Y2hyb290ICsgZGV2aWNlX3BhdGhdLAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIHN0ZG91dD1kZXZudWxsLCBzdGRlcnI9ZGV2bnVsbCkKKyAgICAg
ICAgICAgIHN1YnByb2Nlc3MuY2FsbChbInVtb3VudCIsICItZiIsIGNocm9v
dF0sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Rkb3V0PWRldm51
bGwsIHN0ZGVycj1kZXZudWxsKQorICAgICAgICBvcy5ybWRpcihjaHJvb3Qp
CisKKyAgICAgICAgc3lzLmV4aXQocmMpCisKKyAgICAjIEJ5IHVuc2hhcmlu
ZyB0aGUgbmFtZXNwYWNlIHdlJ3JlIG1ha2luZyBzdXJlIGl0J3MgYWxsIGJ1
bGstcmVsZWFzZWQKKyAgICAjIGF0IHRoZSBlbmQsIHdoZW4gdGhlIG5hbWVz
cGFjZXMgZGlzYXBwZWFyLiBUaGlzIG1lYW5zIHRoZSBrZXJuZWwgZG9lcwor
ICAgICMgKGFsbW9zdCkgYWxsIHRoZSBjbGVhbnVwIGZvciB1cyBhbmQgdGhl
IHBhcmVudCBqdXN0IGhhcyB0byByZW1vdmUgdGhlCisgICAgIyB0ZW1wb3Jh
cnkgZGlyZWN0b3J5LgorICAgIHVuc2hhcmUoQ0xPTkVfTkVXTlMgfCBDTE9O
RV9ORVdJUEMgfCBDTE9ORV9ORVdORVQpCisKKyAgICAjIFNldCBzZW5zaWJs
ZSBsaW1pdHMgdXNpbmcgdGhlIHNldHJsaW1pdCBpbnRlcmZhY2UKKyAgICBk
b3duZ3JhZGVfcmxpbWl0cygpCisKKyAgICAjIFdlJ2xsIG1vdW50IHRtcGZz
IG9uIHRoZSBjaHJvb3QgdG8gZW5zdXJlIHRoZSBkZXByaXZpbGVnZWQgY2hp
bGQKKyAgICAjIGNhbm5vdCBhZmZlY3QgdGhlIHBlcnNpc3RlbnQgc3RhdGUu
IEl0J3MgUlcgbm93IGluIG9yZGVyIHRvCisgICAgIyBiaW5kLW1vdW50IHRo
ZSBkZXZpY2UsIGJ1dCBub3RlIGl0J3MgcmVtb3VudGVkIFJPIGFmdGVyIHRo
YXQuCisgICAgcmMgPSBzdWJwcm9jZXNzLmNhbGwoWyJtb3VudCIsICItdCIs
ICJ0bXBmcyIsICJub25lIiwgY2hyb290XSkKKyAgICBpZiByYyAhPSAwOgor
ICAgICAgICByYWlzZSBSdW50aW1lRXJyb3IoIm1vdW50X3RtcGZzIHJjPSVk
IGRzdD1cIiVzXCIiICUgKHJjLCBjaHJvb3QpKQorCisgICAgIyBCaW5kIHRo
ZSB1bnRydXN0ZWQgZGV2aWNlIFJPCisgICAgYmluZF9tb3VudChkZXZpY2Us
IGNocm9vdCArIGRldmljZV9wYXRoLCAicm8sbm9zdWlkLG5vZXhlYyIpCisK
KyAgICByYyA9IHN1YnByb2Nlc3MuY2FsbChbIm1vdW50IiwgIi10IiwgInRt
cGZzIiwgIi1vIiwgInJlbW91bnQscm8sbm9zdWlkLG5vZXhlYyxub2RldiIs
ICJub25lIiwgY2hyb290XSkKKyAgICBpZiByYyAhPSAwOgorICAgICAgICBy
YWlzZSBSdW50aW1lRXJyb3IoInJlbW91bnRfdG1wZnMgcmM9JWQgZHN0PVwi
JXNcIiIgJSAocmMsIGNocm9vdCkpCisKKyAgICAjIERyb3Agc3VwZXJwb3dl
cnMhCisgICAgb3MuY2hyb290KGNocm9vdCkKKyAgICBvcy5jaGRpcignLycp
CisgICAgb3Muc2V0Z2lkKHVpZCkKKyAgICBvcy5zZXRncm91cHMoW3VpZF0p
CisgICAgb3Muc2V0dWlkKHVpZCkKKworICAgIHJldHVybiBkZXZpY2VfcGF0
aAorCiBkZWYgcmVhZF9zaXplX3JvdW5kdXAoZmQsIHNpemUpOgogICAgIGlm
IHBsYXRmb3JtLnN5c3RlbSgpICE9ICdGcmVlQlNEJzoKICAgICAgICAgcmV0
dXJuIHNpemUKQEAgLTczNiw3ICs4NjQsNyBAQCBpZiBfX25hbWVfXyA9PSAi
X19tYWluX18iOgogICAgIHNlbCA9IE5vbmUKIAogICAgIGRlZiB1c2FnZSgp
OgotICAgICAgICBwcmludCgiVXNhZ2U6ICVzIFstcXwtLXF1aWV0XSBbLWl8
LS1pbnRlcmFjdGl2ZV0gWy1sfC0tbGlzdC1lbnRyaWVzXSBbLW58LS1ub3Qt
cmVhbGx5XSBbLS1vdXRwdXQ9XSBbLS1rZXJuZWw9XSBbLS1yYW1kaXNrPV0g
Wy0tYXJncz1dIFstLWVudHJ5PV0gWy0tb3V0cHV0LWRpcmVjdG9yeT1dIFst
LW91dHB1dC1mb3JtYXQ9c3hwfHNpbXBsZXxzaW1wbGUwXSBbLS1vZmZzZXQ9
XSA8aW1hZ2U+IiAlKHN5cy5hcmd2WzBdLCksIGZpbGU9c3lzLnN0ZGVycikK
KyAgICAgICAgcHJpbnQoIlVzYWdlOiAlcyBbLXF8LS1xdWlldF0gWy1pfC0t
aW50ZXJhY3RpdmVdIFstbHwtLWxpc3QtZW50cmllc10gWy1ufC0tbm90LXJl
YWxseV0gWy0tb3V0cHV0PV0gWy0ta2VybmVsPV0gWy0tcmFtZGlzaz1dIFst
LWFyZ3M9XSBbLS1lbnRyeT1dIFstLW91dHB1dC1kaXJlY3Rvcnk9XSBbLS1v
dXRwdXQtZm9ybWF0PXN4cHxzaW1wbGV8c2ltcGxlMF0gWy0tcnVuYXM9XSBb
LS1vZmZzZXQ9XSA8aW1hZ2U+IiAlKHN5cy5hcmd2WzBdLCksIGZpbGU9c3lz
LnN0ZGVycikKIAogICAgIGRlZiBjb3B5X2Zyb21faW1hZ2UoZnMsIGZpbGVf
dG9fcmVhZCwgZmlsZV90eXBlLCBmZF9kc3QsIHBhdGhfZHN0LCBub3RfcmVh
bGx5KToKICAgICAgICAgaWYgbm90X3JlYWxseToKQEAgLTc2MCw3ICs4ODgs
OCBAQCBpZiBfX25hbWVfXyA9PSAiX19tYWluX18iOgogICAgICAgICAgICAg
ICAgIG9zLndyaXRlKGZkX2RzdCwgZGF0YSkKICAgICAgICAgICAgIGV4Y2Vw
dCBFeGNlcHRpb24gYXMgZToKICAgICAgICAgICAgICAgICBwcmludChlLCBm
aWxlPXN5cy5zdGRlcnIpCi0gICAgICAgICAgICAgICAgb3MudW5saW5rKHBh
dGhfZHN0KQorICAgICAgICAgICAgICAgIGlmIHBhdGhfZHN0OgorICAgICAg
ICAgICAgICAgICAgICBvcy51bmxpbmsocGF0aF9kc3QpCiAgICAgICAgICAg
ICAgICAgZGVsIGRhdGFmaWxlCiAgICAgICAgICAgICAgICAgc3lzLmV4aXQo
IkVycm9yIHdyaXRpbmcgdGVtcG9yYXJ5IGNvcHkgb2YgIitmaWxlX3R5cGUp
CiAgICAgICAgICAgICBkYXRhb2ZmICs9IGxlbihkYXRhKQpAQCAtNzY5LDcg
Kzg5OCw3IEBAIGlmIF9fbmFtZV9fID09ICJfX21haW5fXyI6CiAgICAgICAg
IG9wdHMsIGFyZ3MgPSBnZXRvcHQuZ251X2dldG9wdChzeXMuYXJndlsxOl0s
ICdxaWxuaDo6JywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgWyJxdWlldCIsICJpbnRlcmFjdGl2ZSIsICJsaXN0LWVudHJpZXMiLCAi
bm90LXJlYWxseSIsICJoZWxwIiwKICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICJvdXRwdXQ9IiwgIm91dHB1dC1mb3JtYXQ9IiwgIm91
dHB1dC1kaXJlY3Rvcnk9IiwgIm9mZnNldD0iLAotICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgImVudHJ5PSIsICJrZXJuZWw9IiwKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJydW5hcz0iLCAi
ZW50cnk9IiwgImtlcm5lbD0iLAogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgInJhbWRpc2s9IiwgImFyZ3M9IiwgImlzY29uZmlnIiwg
ImRlYnVnIl0pCiAgICAgZXhjZXB0IGdldG9wdC5HZXRvcHRFcnJvcjoKICAg
ICAgICAgdXNhZ2UoKQpAQCAtNzkwLDYgKzkxOSw3IEBAIGlmIF9fbmFtZV9f
ID09ICJfX21haW5fXyI6CiAgICAgbm90X3JlYWxseSA9IEZhbHNlCiAgICAg
b3V0cHV0X2Zvcm1hdCA9ICJzeHAiCiAgICAgb3V0cHV0X2RpcmVjdG9yeSA9
ICIvdmFyL3J1bi94ZW4vcHlncnViLyIKKyAgICB1aWQgPSBOb25lCiAKICAg
ICAjIHdoYXQgd2FzIHBhc3NlZCBpbgogICAgIGluY2ZnID0geyAia2VybmVs
IjogTm9uZSwgInJhbWRpc2siOiBOb25lLCAiYXJncyI6ICIiIH0KQEAgLTgx
Myw2ICs5NDMsMTMgQEAgaWYgX19uYW1lX18gPT0gIl9fbWFpbl9fIjoKICAg
ICAgICAgZWxpZiBvIGluICgiLS1vdXRwdXQiLCk6CiAgICAgICAgICAgICBp
ZiBhICE9ICItIjoKICAgICAgICAgICAgICAgICBvdXRwdXQgPSBhCisgICAg
ICAgIGVsaWYgbyBpbiAoIi0tcnVuYXMiLCk6CisgICAgICAgICAgICB0cnk6
CisgICAgICAgICAgICAgICAgdWlkID0gaW50KGEpCisgICAgICAgICAgICBl
eGNlcHQgVmFsdWVFcnJvcjoKKyAgICAgICAgICAgICAgICBwcmludCgicnVu
YXMgdmFsdWUgbXVzdCBiZSBhbiBpbnRlZ2VyIHVzZXIgaWQiKQorICAgICAg
ICAgICAgICAgIHVzYWdlKCkKKyAgICAgICAgICAgICAgICBzeXMuZXhpdCgx
KQogICAgICAgICBlbGlmIG8gaW4gKCItLWtlcm5lbCIsKToKICAgICAgICAg
ICAgIGluY2ZnWyJrZXJuZWwiXSA9IGEKICAgICAgICAgZWxpZiBvIGluICgi
LS1yYW1kaXNrIiwpOgpAQCAtODQ5LDYgKzk4NiwxMCBAQCBpZiBfX25hbWVf
XyA9PSAiX19tYWluX18iOgogICAgIGlmIGRlYnVnOgogICAgICAgICBsb2dn
aW5nLmJhc2ljQ29uZmlnKGxldmVsPWxvZ2dpbmcuREVCVUcpCiAKKyAgICBp
ZiBpbnRlcmFjdGl2ZSBhbmQgdWlkOgorICAgICAgICBwcmludCgiSW4gb3Jk
ZXIgdG8gdXNlIC0tcnVuYXMsIHlvdSBtdXN0IGFsc28gc2V0IC0tZW50cnkg
b3IgLXEiLCBmaWxlPXN5cy5zdGRlcnIpCisgICAgICAgIHN5cy5leGl0KDEp
CisKICAgICB0cnk6CiAgICAgICAgIG9zLm1ha2VkaXJzKG91dHB1dF9kaXJl
Y3RvcnksIDBvNzAwKQogICAgIGV4Y2VwdCBPU0Vycm9yIGFzIGU6CkBAIC04
NzAsNiArMTAxMSw5IEBAIGlmIF9fbmFtZV9fID09ICJfX21haW5fXyI6CiAg
ICAgZWxzZToKICAgICAgICAgZmQgPSBvcy5vcGVuKG91dHB1dCwgb3MuT19X
Uk9OTFkpCiAKKyAgICBpZiB1aWQ6CisgICAgICAgIGZpbGUgPSBkZXByaXYo
b3V0cHV0X2RpcmVjdG9yeSwgb3V0cHV0LCBmaWxlLCB1aWQsIHBhdGhfa2Vy
bmVsLCBwYXRoX3JhbWRpc2spCisKICAgICAjIGRlYnVnCiAgICAgaWYgaXNj
b25maWc6CiAgICAgICAgIGNob3NlbmNmZyA9IHJ1bl9ncnViKGZpbGUsIGVu
dHJ5LCBmcywgaW5jZmdbImFyZ3MiXSkKQEAgLTkyNSwyMSArMTA2OSwyMSBA
QCBpZiBfX25hbWVfXyA9PSAiX19tYWluX18iOgogICAgICAgICByYWlzZSBS
dW50aW1lRXJyb3IoIlVuYWJsZSB0byBmaW5kIHBhcnRpdGlvbiBjb250YWlu
aW5nIGtlcm5lbCIpCiAKICAgICBjb3B5X2Zyb21faW1hZ2UoZnMsIGNob3Nl
bmNmZ1sia2VybmVsIl0sICJrZXJuZWwiLAotICAgICAgICAgICAgICAgICAg
ICBmZF9rZXJuZWwsIHBhdGhfa2VybmVsLCBub3RfcmVhbGx5KQorICAgICAg
ICAgICAgICAgICAgICBmZF9rZXJuZWwsIE5vbmUgaWYgdWlkIGVsc2UgcGF0
aF9rZXJuZWwsIG5vdF9yZWFsbHkpCiAgICAgYm9vdGNmZ1sia2VybmVsIl0g
PSBwYXRoX2tlcm5lbAogCiAgICAgaWYgY2hvc2VuY2ZnWyJyYW1kaXNrIl06
CiAgICAgICAgIHRyeToKICAgICAgICAgICAgIGNvcHlfZnJvbV9pbWFnZShm
cywgY2hvc2VuY2ZnWyJyYW1kaXNrIl0sICJyYW1kaXNrIiwKLSAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBmZF9yYW1kaXNrLCBwYXRoX3JhbWRpc2ss
IG5vdF9yZWFsbHkpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmRf
cmFtZGlzaywgTm9uZSBpZiB1aWQgZWxzZSBwYXRoX3JhbWRpc2ssIG5vdF9y
ZWFsbHkpCiAgICAgICAgIGV4Y2VwdDoKLSAgICAgICAgICAgIGlmIG5vdCBu
b3RfcmVhbGx5OgotICAgICAgICAgICAgICAgIG9zLnVubGluayhwYXRoX2tl
cm5lbCkKKyAgICAgICAgICAgIGlmIG5vdCB1aWQgYW5kIG5vdCBub3RfcmVh
bGx5OgorICAgICAgICAgICAgICAgICAgICBvcy51bmxpbmsocGF0aF9rZXJu
ZWwpCiAgICAgICAgICAgICByYWlzZQogICAgICAgICBib290Y2ZnWyJyYW1k
aXNrIl0gPSBwYXRoX3JhbWRpc2sKICAgICBlbHNlOgogICAgICAgICBpbml0
cmQgPSBOb25lCi0gICAgICAgIGlmIG5vdCBub3RfcmVhbGx5OgorICAgICAg
ICBpZiBub3QgdWlkIGFuZCBub3Qgbm90X3JlYWxseToKICAgICAgICAgICAg
IG9zLnVubGluayhwYXRoX3JhbWRpc2spCiAKICAgICBhcmdzID0gTm9uZQot
LSAKMi40Mi4wCgo=

--=separator
Content-Type: application/octet-stream; name="xsa443/xsa443-10.patch"
Content-Disposition: attachment; filename="xsa443/xsa443-10.patch"
Content-Transfer-Encoding: base64

RnJvbSAyOTNhOWI3NTNkODRjNWVmNmY3ZTI4OWQ2NDg2MTdhN2VhZjE5Yzk1
IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBSb2dlciBQYXUgTW9u
bmUgPHJvZ2VyLnBhdUBjaXRyaXguY29tPgpEYXRlOiBNb24sIDI1IFNlcCAy
MDIzIDE0OjMwOjIwICswMjAwClN1YmplY3Q6IFtQQVRDSCAxMC8xMV0gbGli
eGw6IGFkZCBzdXBwb3J0IGZvciBydW5uaW5nIGJvb3Rsb2FkZXIgaW4gcmVz
dHJpY3RlZAogbW9kZQpNSU1FLVZlcnNpb246IDEuMApDb250ZW50LVR5cGU6
IHRleHQvcGxhaW47IGNoYXJzZXQ9VVRGLTgKQ29udGVudC1UcmFuc2Zlci1F
bmNvZGluZzogOGJpdAoKTXVjaCBsaWtlIHRoZSBkZXZpY2UgbW9kZWwgZGVw
cml2IG1vZGUsIGFkZCB0aGUgc2FtZSBraW5kIG9mIHN1cHBvcnQgZm9yIHRo
ZQpib290bG9hZGVyLiAgU3VjaCBmZWF0dXJlIGFsbG93cyBwYXNzaW5nIGEg
VUlEIGFzIGEgcGFyYW1ldGVyIGZvciB0aGUKYm9vdGxvYWRlciB0byBydW4g
YXMsIHRvZ2V0aGVyIHdpdGggdGhlIGJvb3Rsb2FkZXIgaXRzZWxmIHRha2lu
ZyB0aGUgbmVjZXNzYXJ5CmFjdGlvbnMgdG8gaXNvbGF0ZS4KCk5vdGUgdGhh
dCB0aGUgdXNlciB0byBydW4gdGhlIGJvb3Rsb2FkZXIgYXMgbXVzdCBoYXZl
IHRoZSByaWdodCBwZXJtaXNzaW9ucyB0bwphY2Nlc3MgdGhlIGd1ZXN0IGRp
c2sgaW1hZ2UgKGluIHJlYWQgbW9kZSBvbmx5KSwgYW5kIHRoYXQgdGhlIGJv
b3Rsb2FkZXIgd2lsbApiZSBydW4gaW4gbm9uLWludGVyYWN0aXZlIG1vZGUg
d2hlbiByZXN0cmljdGVkLgoKSWYgZW5hYmxlZCBib290bG9hZGVyIHJlc3Ry
aWN0IG1vZGUgd2lsbCBhdHRlbXB0IHRvIHJlLXVzZSB0aGUgdXNlcihzKSBm
cm9tIHRoZQpRRU1VIGRlcHJpdiBpbXBsZW1lbnRhdGlvbiBpZiBubyB1c2Vy
IGlzIHByb3ZpZGVkIG9uIHRoZSBjb25maWd1cmF0aW9uIGZpbGUgb3IKdGhl
IGVudmlyb25tZW50LiAgU2VlIGRvY3MvZmVhdHVyZXMvcWVtdS1kZXByaXZp
bGVnZS5wYW5kb2MgZm9yIG1vcmUKaW5mb3JtYXRpb24gYWJvdXQgaG93IHRv
IHNldHVwIHRob3NlIHVzZXJzLgoKQm9vdGxvYWRlciByZXN0cmljdCBtb2Rl
IGlzIG5vdCBlbmFibGVkIGJ5IGRlZmF1bHQgYXMgaXQgcmVxdWlyZXMgY2Vy
dGFpbgpzZXR1cCB0byBiZSBkb25lIGZpcnN0IChzZXR1cCBvZiB0aGUgdXNl
cihzKSB0byB1c2UgaW4gcmVzdHJpY3QgbW9kZSkuCgpUaGlzIGlzIHBhcnQg
b2YgWFNBLTQ0MyAvIENWRS0yMDIzLTM0MzI1CgpTaWduZWQtb2ZmLWJ5OiBS
b2dlciBQYXUgTW9ubsOpIDxyb2dlci5wYXVAY2l0cml4LmNvbT4KUmV2aWV3
ZWQtYnk6IEFudGhvbnkgUEVSQVJEIDxhbnRob255LnBlcmFyZEBjaXRyaXgu
Y29tPgotLS0KIGRvY3MvbWFuL3hsLjEucG9kLmluICAgICAgICAgICAgICAg
IHwgMjQgKysrKysrKysKIGRvY3MvbWFuL3hsLmNmZy41LnBvZC5pbiAgICAg
ICAgICAgIHwgNDMgKysrKysrKysrKysrKysKIGRvY3MvbWFuL3hsLmNvbmYu
NS5wb2QuaW4gICAgICAgICAgIHwgIDYgKysKIHRvb2xzL2luY2x1ZGUvbGli
eGwuaCAgICAgICAgICAgICAgIHwgIDggKysrCiB0b29scy9saWJzL2xpZ2h0
L2xpYnhsX2Jvb3Rsb2FkZXIuYyB8IDg4ICsrKysrKysrKysrKysrKysrKysr
KysrKysrKystCiB0b29scy9saWJzL2xpZ2h0L2xpYnhsX2NyZWF0ZS5jICAg
ICB8IDExICsrKysKIHRvb2xzL2xpYnMvbGlnaHQvbGlieGxfZG0uYyAgICAg
ICAgIHwgIDggKy0tCiB0b29scy9saWJzL2xpZ2h0L2xpYnhsX2ludGVybmFs
LmggICB8ICA4ICsrKwogdG9vbHMvbGlicy9saWdodC9saWJ4bF90eXBlcy5p
ZGwgICAgfCAgMiArCiB0b29scy94bC94bC5jICAgICAgICAgICAgICAgICAg
ICAgICB8ICA0ICsrCiB0b29scy94bC94bC5oICAgICAgICAgICAgICAgICAg
ICAgICB8ICAxICsKIHRvb2xzL3hsL3hsX3BhcnNlLmMgICAgICAgICAgICAg
ICAgIHwgIDcgKysrCiAxMiBmaWxlcyBjaGFuZ2VkLCAyMDMgaW5zZXJ0aW9u
cygrKSwgNyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kb2NzL21hbi94
bC4xLnBvZC5pbiBiL2RvY3MvbWFuL3hsLjEucG9kLmluCmluZGV4IDliYTIy
YThmYTIyMi4uNzNlMmIzYjYxMTRjIDEwMDY0NAotLS0gYS9kb2NzL21hbi94
bC4xLnBvZC5pbgorKysgYi9kb2NzL21hbi94bC4xLnBvZC5pbgpAQCAtMTk2
Myw2ICsxOTYzLDMwIEBAIGlnbm9yZWQ6CiAKID1iYWNrCiAKKz1oZWFkMSBF
TlZJUk9OTUVOVCBWQVJJQUJMRVMKKworVGhlIGZvbGxvd2luZyBlbnZpcm9u
bWVudCB2YXJpYWJsZXMgc2hhbGwgYWZmZWN0IHRoZSBleGVjdXRpb24gb2Yg
eGw6CisKKz1vdmVyIDQKKworPWl0ZW0gTElCWExfQk9PVExPQURFUl9SRVNU
UklDVAorCitFcXVpdmFsZW50IHRvIEw8eGwuY2ZnKDUpPiBCPGJvb3Rsb2Fk
ZXJfcmVzdHJpY3Q+IG9wdGlvbi4gIFByb3ZpZGVkIGZvcgorY29tcGF0aWJp
bGl0eSByZWFzb25zLiAgSGF2aW5nIHRoaXMgdmFyaWFibGUgc2V0IGlzIGVx
dWl2YWxlbnQgdG8gZW5hYmxpbmcKK3RoZSBvcHRpb24sIGV2ZW4gaWYgdGhl
IHZhbHVlIGlzIDAuCisKK0lmIHNldCB0YWtlcyBwcmVjZWRlbmNlIG92ZXIg
TDx4bC5jZmcoNSk+IGFuZCBMPHhsLmNvbmYoNSk+CitCPGJvb3Rsb2FkZXJf
cmVzdHJpY3Q+IG9wdGlvbnMuCisKKz1pdGVtIExJQlhMX0JPT1RMT0FERVJf
VVNFUgorCitFcXVpdmFsZW50IHRvIEw8eGwuY2ZnKDUpPiBCPGJvb3Rsb2Fk
ZXJfdXNlcj4gb3B0aW9uLiAgUHJvdmlkZWQgZm9yCitjb21wYXRpYmlsaXR5
IHJlYXNvbnMuCisKK0lmIHNldCB0YWtlcyBwcmVjZWRlbmNlIG92ZXIgTDx4
bC5jZmcoNSk+IEI8Ym9vdGxvYWRlcl91c2VyPiBvcHRpb24uCisKKz1iYWNr
CisKID1oZWFkMSBTRUUgQUxTTwogCiBUaGUgZm9sbG93aW5nIG1hbiBwYWdl
czoKZGlmZiAtLWdpdCBhL2RvY3MvbWFuL3hsLmNmZy41LnBvZC5pbiBiL2Rv
Y3MvbWFuL3hsLmNmZy41LnBvZC5pbgppbmRleCBlYzQ4NjQ5NThlMGUuLjJl
MjM0YjQ1MGVmYiAxMDA2NDQKLS0tIGEvZG9jcy9tYW4veGwuY2ZnLjUucG9k
LmluCisrKyBiL2RvY3MvbWFuL3hsLmNmZy41LnBvZC5pbgpAQCAtMTY5NCw2
ICsxNjk0LDI4IEBAIEFwcGVuZCBCPEFSRz5zIHRvIHRoZSBhcmd1bWVudHMg
dG8gdGhlIEI8Ym9vdGxvYWRlcj4KIHByb2dyYW0uIEFsdGVybmF0aXZlbHkg
aWYgdGhlIGFyZ3VtZW50IGlzIGEgc2ltcGxlIHN0cmluZyB0aGVuIGl0IHdp
bGwKIGJlIHNwbGl0IGludG8gd29yZHMgYXQgd2hpdGVzcGFjZSBCPCh0aGlz
IHNlY29uZCBvcHRpb24gaXMgZGVwcmVjYXRlZCk+LgogCis9aXRlbSBCPGJv
b3Rsb2FkZXJfcmVzdHJpY3Q9Qk9PTEVBTj4KKworQXR0ZW1wdCB0byByZXN0
cmljdCB0aGUgYm9vdGxvYWRlciBhZnRlciBzdGFydHVwLCB0byBsaW1pdCB0
aGUKK2NvbnNlcXVlbmNlcyBvZiBzZWN1cml0eSB2dWxuZXJhYmlsaXRpZXMg
ZHVlIHRvIHBhcnNpbmcgZ3Vlc3QKK293bmVkIGltYWdlIGZpbGVzLgorCitT
ZWUgZG9jcy9mZWF0dXJlcy9xZW11LWRlcHJpdmlsZWdlLnBhbmRvYyBmb3Ig
bW9yZSBpbmZvcm1hdGlvbgorb24gaG93IHRvIHNldHVwIHRoZSB1bnByaXZp
bGVnZWQgdXNlcnMuCisKK05vdGUgdGhhdCBydW5uaW5nIHRoZSBib290bG9h
ZGVyIGluIHJlc3RyaWN0ZWQgbW9kZSBhbHNvIGltcGxpZXMgdXNpbmcKK25v
bi1pbnRlcmFjdGl2ZSBtb2RlLCBhbmQgdGhlIGRpc2sgaW1hZ2UgbXVzdCBi
ZSByZWFkYWJsZSBieSB0aGUKK3Jlc3RyaWN0ZWQgdXNlci4KKworPWl0ZW0g
Qjxib290bG9hZGVyX3VzZXI9VVNFUk5BTUU+CisKK1doZW4gdXNpbmcgYm9v
dGxvYWRlcl9yZXN0cmljdCwgcnVuIHRoZSBib290bG9hZGVyIGFzIHRoaXMg
dXNlci4gIElmIG5vdAorc2V0IHRoZSBkZWZhdWx0IFFFTVUgcmVzdHJpY3Qg
dXNlcnMgd2lsbCBiZSB1c2VkLgorCitOT1RFOiBFYWNoIGRvbWFpbiBNVVNU
IGhhdmUgYSBTRVBBUkFURSB1c2VybmFtZS4KKworU2VlIGRvY3MvZmVhdHVy
ZXMvcWVtdS1kZXByaXZpbGVnZS5wYW5kb2MgZm9yIG1vcmUgaW5mb3JtYXRp
b24uCisKID1pdGVtIEI8ZTgyMF9ob3N0PUJPT0xFQU4+CiAKIFNlbGVjdHMg
d2hldGhlciB0byBleHBvc2UgdGhlIGhvc3QgZTgyMCAobWVtb3J5IG1hcCkg
dG8gdGhlIGd1ZXN0IHZpYQpAQCAtMjczNiw2ICsyNzU4LDI3IEBAIEFwcGVu
ZCBCPEFSRz5zIHRvIHRoZSBhcmd1bWVudHMgdG8gdGhlIEI8Ym9vdGxvYWRl
cj4KIHByb2dyYW0uIEFsdGVybmF0aXZlbHkgaWYgdGhlIGFyZ3VtZW50IGlz
IGEgc2ltcGxlIHN0cmluZyB0aGVuIGl0IHdpbGwKIGJlIHNwbGl0IGludG8g
d29yZHMgYXQgd2hpdGVzcGFjZSBCPCh0aGlzIHNlY29uZCBvcHRpb24gaXMg
ZGVwcmVjYXRlZCk+LgogCis9aXRlbSBCPGJvb3Rsb2FkZXJfcmVzdHJpY3Q9
Qk9PTEVBTj4KKworQXR0ZW1wdCB0byByZXN0cmljdCB0aGUgYm9vdGxvYWRl
ciBhZnRlciBzdGFydHVwLCB0byBsaW1pdCB0aGUKK2NvbnNlcXVlbmNlcyBv
ZiBzZWN1cml0eSB2dWxuZXJhYmlsaXRpZXMgZHVlIHRvIHBhcnNpbmcgZ3Vl
c3QKK293bmVkIGltYWdlIGZpbGVzLgorCitTZWUgZG9jcy9mZWF0dXJlcy9x
ZW11LWRlcHJpdmlsZWdlLnBhbmRvYyBmb3IgbW9yZSBpbmZvcm1hdGlvbgor
b24gaG93IHRvIHNldHVwIHRoZSB1bnByaXZpbGVnZWQgdXNlcnMuCisKK05v
dGUgdGhhdCBydW5uaW5nIHRoZSBib290bG9hZGVyIGluIHJlc3RyaWN0ZWQg
bW9kZSBhbHNvIGltcGxpZXMgdXNpbmcKK25vbi1pbnRlcmFjdGl2ZSBtb2Rl
LCBhbmQgdGhlIGRpc2sgaW1hZ2UgbXVzdCBiZSByZWFkYWJsZSBieSB0aGUK
K3Jlc3RyaWN0ZWQgdXNlci4KKworPWl0ZW0gQjxib290bG9hZGVyX3VzZXI9
VVNFUk5BTUU+CisKK1doZW4gdXNpbmcgYm9vdGxvYWRlcl9yZXN0cmljdCwg
cnVuIHRoZSBib290bG9hZGVyIGFzIHRoaXMgdXNlci4KKworTk9URTogRWFj
aCBkb21haW4gTVVTVCBoYXZlIGEgU0VQQVJBVEUgdXNlcm5hbWUuCisKK1Nl
ZSBkb2NzL2ZlYXR1cmVzL3FlbXUtZGVwcml2aWxlZ2UucGFuZG9jIGZvciBt
b3JlIGluZm9ybWF0aW9uLgorCiA9aXRlbSBCPHRpbWVyX21vZGU9Ik1PREUi
PgogCiBTcGVjaWZpZXMgdGhlIG1vZGUgZm9yIFZpcnR1YWwgVGltZXJzLiBU
aGUgdmFsaWQgdmFsdWVzIGFyZSBhcyBmb2xsb3dzOgpkaWZmIC0tZ2l0IGEv
ZG9jcy9tYW4veGwuY29uZi41LnBvZC5pbiBiL2RvY3MvbWFuL3hsLmNvbmYu
NS5wb2QuaW4KaW5kZXggZGYyMGMwODEzN2JmLi40NDczOGI4MGJmMTUgMTAw
NjQ0Ci0tLSBhL2RvY3MvbWFuL3hsLmNvbmYuNS5wb2QuaW4KKysrIGIvZG9j
cy9tYW4veGwuY29uZi41LnBvZC5pbgpAQCAtMjIwLDYgKzIyMCwxMiBAQCBE
dWUgdG8gYnVnKHMpLCB0aGVzZSBvcHRpb25zIG1heSBub3QgaW50ZXJhY3Qg
d2VsbCB3aXRoIG90aGVyIG9wdGlvbnMKIGNvbmNlcm5pbmcgQ1BVIGFmZmlu
aXR5LiBPbmUgZXhhbXBsZSBpcyBDUFUgcG9vbHMuIFVzZXJzIHNob3VsZCBh
bHdheXMgZG91YmxlCiBjaGVjayB0aGF0IHRoZSByZXF1aXJlZCBhZmZpbml0
eSBoYXMgdGFrZW4gZWZmZWN0LgogCis9aXRlbSBCPGJvb3Rsb2FkZXJfcmVz
dHJpY3Q9Qk9PTEVBTj4KKworU3lzdGVtIHdpZGUgZGVmYXVsdCBmb3Igd2hl
dGhlciB0aGUgYm9vdGxvYWRlciBzaG91bGQgYmUgcnVuIGluIGEgcmVzdHJp
Y3RlZAorZW52aXJvbm1lbnQuICBTZWUgTDx4bC5jZmcoNSk+IEI8Ym9vdGxv
YWRlcl9yZXN0cmljdD4gZm9yIG1vcmUgaW5mb3JtYXRpb24gb24KK2hvdyB0
byBzZXR1cCBhbmQgdXNlIHRoZSBvcHRpb24uCisKID1iYWNrCiAKID1oZWFk
MSBTRUUgQUxTTwpkaWZmIC0tZ2l0IGEvdG9vbHMvaW5jbHVkZS9saWJ4bC5o
IGIvdG9vbHMvaW5jbHVkZS9saWJ4bC5oCmluZGV4IGFiYzVmZDUyZGE5Ny4u
OTA3YWEwYTMzMDNhIDEwMDY0NAotLS0gYS90b29scy9pbmNsdWRlL2xpYnhs
LmgKKysrIGIvdG9vbHMvaW5jbHVkZS9saWJ4bC5oCkBAIC02MDAsNiArNjAw
LDE0IEBACiAgKiBmaXJzdCBBQkkgaW5jb21wYXRpYmxlIGNoYW5nZSBpbiBh
IGRldmVsb3BtZW50IGJyYW5jaC4KICAqLwogCisjZGVmaW5lIExJQlhMX0hB
VkVfQk9PVExPQURFUl9SRVNUUklDVCAxCisvKgorICogTElCWExfSEFWRV9C
T09UTE9BREVSX1JFU1RSSUNUIGluZGljYXRlcyB0aGUgcHJlc2VuY2Ugb2Yg
dGhlCisgKiBib290bG9hZGVyX3Jlc3RyaWN0IGFuZCBib290bG9hZGVyX3Vz
ZXIgZmllbGRzIGluIGxpYnhsX2RvbWFpbl9idWlsZF9pbmZvLgorICogU3Vj
aCBmaWVsZHMgc2lnbmFsIHRoZSBuZWVkIHRvIHBhc3MgYSAtLXJ1bmFzIHBh
cmFtZXRlciB0byB0aGUgYm9vdGxvYWRlcgorICogZXhlY3V0YWJsZSBpbiBv
cmRlciB0byBub3QgcnVuIGl0IGFzIHRoZSBzYW1lIHVzZXIgYXMgbGlieGwu
CisgKi8KKwogLyoKICAqIGxpYnhsIG1lbW9yeSBtYW5hZ2VtZW50CiAgKgpk
aWZmIC0tZ2l0IGEvdG9vbHMvbGlicy9saWdodC9saWJ4bF9ib290bG9hZGVy
LmMgYi90b29scy9saWJzL2xpZ2h0L2xpYnhsX2Jvb3Rsb2FkZXIuYwppbmRl
eCAxMDgzMjliNGE1YmIuLmQ3MzIzNjdmYzA1MyAxMDA2NDQKLS0tIGEvdG9v
bHMvbGlicy9saWdodC9saWJ4bF9ib290bG9hZGVyLmMKKysrIGIvdG9vbHMv
bGlicy9saWdodC9saWJ4bF9ib290bG9hZGVyLmMKQEAgLTE0LDYgKzE0LDcg
QEAKIAogI2luY2x1ZGUgImxpYnhsX29zZGVwcy5oIiAvKiBtdXN0IGNvbWUg
YmVmb3JlIGFueSBvdGhlciBoZWFkZXJzICovCiAKKyNpbmNsdWRlIDxwd2Qu
aD4KICNpbmNsdWRlIDx0ZXJtaW9zLmg+CiAjaWZkZWYgSEFWRV9VVE1QX0gK
ICNpbmNsdWRlIDx1dG1wLmg+CkBAIC00Miw4ICs0Myw3MSBAQCBzdGF0aWMg
dm9pZCBib290bG9hZGVyX2FyZyhsaWJ4bF9fYm9vdGxvYWRlcl9zdGF0ZSAq
YmwsIGNvbnN0IGNoYXIgKmFyZykKICAgICBibC0+YXJnc1tibC0+bmFyZ3Mr
K10gPSBhcmc7CiB9CiAKLXN0YXRpYyB2b2lkIG1ha2VfYm9vdGxvYWRlcl9h
cmdzKGxpYnhsX19nYyAqZ2MsIGxpYnhsX19ib290bG9hZGVyX3N0YXRlICpi
bCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNo
YXIgKmJvb3Rsb2FkZXJfcGF0aCkKK3N0YXRpYyBpbnQgYm9vdGxvYWRlcl91
aWQobGlieGxfX2djICpnYywgZG9taWRfdCBndWVzdF9kb21pZCwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqdXNlciwgdWlkX3Qg
KmludGVuZGVkX3VpZCkKK3sKKyAgICBzdHJ1Y3QgcGFzc3dkICp1c2VyX2Jh
c2UsIHVzZXJfcHdidWY7CisgICAgaW50IHJjOworCisgICAgaWYgKHVzZXIp
IHsKKyAgICAgICAgcmMgPSB1c2VybG9va3VwX2hlbHBlcl9nZXRwd25hbShn
YywgdXNlciwgJnVzZXJfcHdidWYsICZ1c2VyX2Jhc2UpOworICAgICAgICBp
ZiAocmMpIHJldHVybiByYzsKKworICAgICAgICBpZiAoIXVzZXJfYmFzZSkg
eworICAgICAgICAgICAgTE9HRChFUlJPUiwgZ3Vlc3RfZG9taWQsICJDb3Vs
ZG4ndCBmaW5kIHVzZXIgJXMiLCB1c2VyKTsKKyAgICAgICAgICAgIHJldHVy
biBFUlJPUl9JTlZBTDsKKyAgICAgICAgfQorCisgICAgICAgICppbnRlbmRl
ZF91aWQgPSB1c2VyX2Jhc2UtPnB3X3VpZDsKKyAgICAgICAgcmV0dXJuIDA7
CisgICAgfQorCisgICAgLyogUmUtdXNlIFFFTVUgdXNlciByYW5nZSBmb3Ig
dGhlIGJvb3Rsb2FkZXIuICovCisgICAgcmMgPSB1c2VybG9va3VwX2hlbHBl
cl9nZXRwd25hbShnYywgTElCWExfUUVNVV9VU0VSX1JBTkdFX0JBU0UsCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmdXNlcl9wd2J1
ZiwgJnVzZXJfYmFzZSk7CisgICAgaWYgKHJjKSByZXR1cm4gcmM7CisKKyAg
ICBpZiAodXNlcl9iYXNlKSB7CisgICAgICAgIHN0cnVjdCBwYXNzd2QgKnVz
ZXJfY2xhc2gsIHVzZXJfY2xhc2hfcHdidWY7CisgICAgICAgIHVpZF90IHRl
bXBfdWlkID0gdXNlcl9iYXNlLT5wd191aWQgKyBndWVzdF9kb21pZDsKKwor
ICAgICAgICByYyA9IHVzZXJsb29rdXBfaGVscGVyX2dldHB3dWlkKGdjLCB0
ZW1wX3VpZCwgJnVzZXJfY2xhc2hfcHdidWYsCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgJnVzZXJfY2xhc2gpOworICAgICAg
ICBpZiAocmMpIHJldHVybiByYzsKKworICAgICAgICBpZiAodXNlcl9jbGFz
aCkgeworICAgICAgICAgICAgTE9HRChFUlJPUiwgZ3Vlc3RfZG9taWQsCisg
ICAgICAgICAgICAgICAgICJ3YW50ZWQgdG8gdXNlIHVpZCAlbGQgKCVzICsg
JWQpIGJ1dCB0aGF0IGlzIHVzZXIgJXMgISIsCisgICAgICAgICAgICAgICAg
IChsb25nKXRlbXBfdWlkLCBMSUJYTF9RRU1VX1VTRVJfUkFOR0VfQkFTRSwK
KyAgICAgICAgICAgICAgICAgZ3Vlc3RfZG9taWQsIHVzZXJfY2xhc2gtPnB3
X25hbWUpOworICAgICAgICAgICAgcmV0dXJuIEVSUk9SX0lOVkFMOworICAg
ICAgICB9CisKKyAgICAgICAgKmludGVuZGVkX3VpZCA9IHRlbXBfdWlkOwor
ICAgICAgICByZXR1cm4gMDsKKyAgICB9CisKKyAgICByYyA9IHVzZXJsb29r
dXBfaGVscGVyX2dldHB3bmFtKGdjLCBMSUJYTF9RRU1VX1VTRVJfU0hBUkVE
LCAmdXNlcl9wd2J1ZiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICZ1c2VyX2Jhc2UpOworICAgIGlmIChyYykgcmV0dXJuIHJjOwor
CisgICAgaWYgKHVzZXJfYmFzZSkgeworICAgICAgICBMT0dEKFdBUk4sIGd1
ZXN0X2RvbWlkLCAiQ291bGQgbm90IGZpbmQgdXNlciAlcywgZmFsbGluZyBi
YWNrIHRvICVzIiwKKyAgICAgICAgICAgICBMSUJYTF9RRU1VX1VTRVJfUkFO
R0VfQkFTRSwgTElCWExfUUVNVV9VU0VSX1NIQVJFRCk7CisgICAgICAgICpp
bnRlbmRlZF91aWQgPSB1c2VyX2Jhc2UtPnB3X3VpZDsKKworICAgICAgICBy
ZXR1cm4gMDsKKyAgICB9CisKKyAgICBMT0dEKEVSUk9SLCBndWVzdF9kb21p
ZCwKKyAgICAiQ291bGQgbm90IGZpbmQgdXNlciAlcyBvciByYW5nZSBiYXNl
IHBzZXVkby11c2VyICVzLCBjYW5ub3QgcmVzdHJpY3QiLAorICAgICAgICAg
TElCWExfUUVNVV9VU0VSX1NIQVJFRCwgTElCWExfUUVNVV9VU0VSX1JBTkdF
X0JBU0UpOworCisgICAgcmV0dXJuIEVSUk9SX0lOVkFMOworfQorCitzdGF0
aWMgaW50IG1ha2VfYm9vdGxvYWRlcl9hcmdzKGxpYnhsX19nYyAqZ2MsIGxp
YnhsX19ib290bG9hZGVyX3N0YXRlICpibCwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgY29uc3QgY2hhciAqYm9vdGxvYWRlcl9wYXRoKQog
ewogICAgIGNvbnN0IGxpYnhsX2RvbWFpbl9idWlsZF9pbmZvICppbmZvID0g
YmwtPmluZm87CiAKQEAgLTYxLDYgKzEyNSwyMiBAQCBzdGF0aWMgdm9pZCBt
YWtlX2Jvb3Rsb2FkZXJfYXJncyhsaWJ4bF9fZ2MgKmdjLCBsaWJ4bF9fYm9v
dGxvYWRlcl9zdGF0ZSAqYmwsCiAgICAgICAgIEFSRyhHQ1NQUklOVEYoIi0t
cmFtZGlzaz0lcyIsIGluZm8tPnJhbWRpc2spKTsKICAgICBpZiAoaW5mby0+
Y21kbGluZSAmJiAqaW5mby0+Y21kbGluZSAhPSAnXDAnKQogICAgICAgICBB
UkcoR0NTUFJJTlRGKCItLWFyZ3M9JXMiLCBpbmZvLT5jbWRsaW5lKSk7Cisg
ICAgaWYgKGxpYnhsX2RlZmJvb2xfdmFsKGluZm8tPmJvb3Rsb2FkZXJfcmVz
dHJpY3QpKSB7CisgICAgICAgIHVpZF90IHVpZCA9IC0xOworICAgICAgICBp
bnQgcmMgPSBib290bG9hZGVyX3VpZChnYywgYmwtPmRvbWlkLCBpbmZvLT5i
b290bG9hZGVyX3VzZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICZ1aWQpOworCisgICAgICAgIGlmIChyYykgcmV0dXJuIHJjOworCisg
ICAgICAgIGFzc2VydCh1aWQgIT0gLTEpOworICAgICAgICBpZiAoIXVpZCkg
eworICAgICAgICAgICAgTE9HRChFUlJPUiwgYmwtPmRvbWlkLCAiYm9vdGxv
YWRlciByZXN0cmljdCBVSUQgaXMgMCAocm9vdCkhIik7CisgICAgICAgICAg
ICByZXR1cm4gRVJST1JfSU5WQUw7CisgICAgICAgIH0KKyAgICAgICAgTE9H
RChERUJVRywgYmwtPmRvbWlkLCAidXNpbmcgdWlkICVsZCIsIChsb25nKXVp
ZCk7CisgICAgICAgIEFSRyhHQ1NQUklOVEYoIi0tcnVuYXM9JWxkIiwgKGxv
bmcpdWlkKSk7CisgICAgICAgIEFSRygiLS1xdWlldCIpOworICAgIH0KIAog
ICAgIEFSRyhHQ1NQUklOVEYoIi0tb3V0cHV0PSVzIiwgYmwtPm91dHB1dHBh
dGgpKTsKICAgICBBUkcoIi0tb3V0cHV0LWZvcm1hdD1zaW1wbGUwIik7CkBA
IC03OSw2ICsxNTksNyBAQCBzdGF0aWMgdm9pZCBtYWtlX2Jvb3Rsb2FkZXJf
YXJncyhsaWJ4bF9fZ2MgKmdjLCBsaWJ4bF9fYm9vdGxvYWRlcl9zdGF0ZSAq
YmwsCiAgICAgLyogU2VudGluZWwgZm9yIGV4ZWN2ICovCiAgICAgQVJHKE5V
TEwpOwogCisgICAgcmV0dXJuIDA7CiAjdW5kZWYgQVJHCiB9CiAKQEAgLTQ0
Myw3ICs1MjQsOCBAQCBzdGF0aWMgdm9pZCBib290bG9hZGVyX2Rpc2tfYXR0
YWNoZWRfY2IobGlieGxfX2VnYyAqZWdjLAogICAgICAgICAgICAgYm9vdGxv
YWRlciA9IGJsdG1wOwogICAgIH0KIAotICAgIG1ha2VfYm9vdGxvYWRlcl9h
cmdzKGdjLCBibCwgYm9vdGxvYWRlcik7CisgICAgcmMgPSBtYWtlX2Jvb3Rs
b2FkZXJfYXJncyhnYywgYmwsIGJvb3Rsb2FkZXIpOworICAgIGlmIChyYykg
Z290byBvdXQ7CiAKICAgICBibC0+b3BlbnB0eS5hbyA9IGFvOwogICAgIGJs
LT5vcGVucHR5LmNhbGxiYWNrID0gYm9vdGxvYWRlcl9nb3RwdHlzOwpkaWZm
IC0tZ2l0IGEvdG9vbHMvbGlicy9saWdodC9saWJ4bF9jcmVhdGUuYyBiL3Rv
b2xzL2xpYnMvbGlnaHQvbGlieGxfY3JlYXRlLmMKaW5kZXggYzkxMDU5ZDcx
MzA5Li5jZTFkNDMxMTAzMzYgMTAwNjQ0Ci0tLSBhL3Rvb2xzL2xpYnMvbGln
aHQvbGlieGxfY3JlYXRlLmMKKysrIGIvdG9vbHMvbGlicy9saWdodC9saWJ4
bF9jcmVhdGUuYwpAQCAtNDgyLDYgKzQ4MiwxNyBAQCBpbnQgbGlieGxfX2Rv
bWFpbl9idWlsZF9pbmZvX3NldGRlZmF1bHQobGlieGxfX2djICpnYywKICAg
ICAgICAgcmV0dXJuIC1FUlJPUl9JTlZBTDsKICAgICB9CiAKKyAgICAvKiBB
c3N1bWUgdGhhdCBwcm92aWRpbmcgYSBib290bG9hZGVyIHVzZXIgaW1wbGll
cyBlbmFibGluZyByZXN0cmljdC4gKi8KKyAgICBsaWJ4bF9kZWZib29sX3Nl
dGRlZmF1bHQoJmJfaW5mby0+Ym9vdGxvYWRlcl9yZXN0cmljdCwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgISFiX2luZm8tPmJvb3Rsb2FkZXJf
dXNlcik7CisgICAgLyogRU5WIHRha2VzIHByZWNlZGVuY2Ugb3ZlciBwcm92
aWRlZCBkb21haW5fYnVpbGRfaW5mby4gKi8KKyAgICBpZiAoZ2V0ZW52KCJM
SUJYTF9CT09UTE9BREVSX1JFU1RSSUNUIikgfHwKKyAgICAgICAgZ2V0ZW52
KCJMSUJYTF9CT09UTE9BREVSX1VTRVIiKSkKKyAgICAgICAgbGlieGxfZGVm
Ym9vbF9zZXQoJmJfaW5mby0+Ym9vdGxvYWRlcl9yZXN0cmljdCwgdHJ1ZSk7
CisgICAgaWYoZ2V0ZW52KCJMSUJYTF9CT09UTE9BREVSX1VTRVIiKSkKKyAg
ICAgICAgYl9pbmZvLT5ib290bG9hZGVyX3VzZXIgPQorICAgICAgICAgICAg
bGlieGxfX3N0cmR1cChnYywgZ2V0ZW52KCJMSUJYTF9CT09UTE9BREVSX1VT
RVIiKSk7CisKICAgICByZXR1cm4gMDsKIH0KIApkaWZmIC0tZ2l0IGEvdG9v
bHMvbGlicy9saWdodC9saWJ4bF9kbS5jIGIvdG9vbHMvbGlicy9saWdodC9s
aWJ4bF9kbS5jCmluZGV4IGZjMjY0YTNhMTNhNi4uMTRiNTkzMTEwZjdjIDEw
MDY0NAotLS0gYS90b29scy9saWJzL2xpZ2h0L2xpYnhsX2RtLmMKKysrIGIv
dG9vbHMvbGlicy9saWdodC9saWJ4bF9kbS5jCkBAIC04MCwxMCArODAsMTAg
QEAgc3RhdGljIGludCBsaWJ4bF9fY3JlYXRlX3FlbXVfbG9nZmlsZShsaWJ4
bF9fZ2MgKmdjLCBjaGFyICpuYW1lKQogICogIE9uIGVycm9yLCByZXR1cm4g
YSBsaWJ4bC1zdHlsZSBlcnJvciBjb2RlLgogICovCiAjZGVmaW5lIERFRklO
RV9VU0VSTE9PS1VQX0hFTFBFUihOQU1FLFNQRUNfVFlQRSxTVFJVQ1ROQU1F
LFNZU0NPTkYpICAgICBcCi0gICAgc3RhdGljIGludCB1c2VybG9va3VwX2hl
bHBlcl8jI05BTUUobGlieGxfX2djICpnYywgICAgICAgICAgICAgICAgICBc
Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU1BF
Q19UWVBFIHNwZWMsICAgICAgICAgICAgICAgICBcCi0gICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RydWN0IFNUUlVDVE5BTUUg
KnJlc3VsdGJ1ZiwgICBcCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgc3RydWN0IFNUUlVDVE5BTUUgKipvdXQpICAgICAgICBc
CisgICAgaW50IHVzZXJsb29rdXBfaGVscGVyXyMjTkFNRShsaWJ4bF9fZ2Mg
KmdjLCAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBTUEVDX1RZUEUgc3BlYywgICAgICAgICAg
ICAgICAgICAgICAgICBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBzdHJ1Y3QgU1RSVUNUTkFNRSAqcmVzdWx0YnVmLCAgICAgICAgICBc
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJ1Y3QgU1RS
VUNUTkFNRSAqKm91dCkgICAgICAgICAgICAgICBcCiAgICAgeyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBcCiAgICAgICAgIHN0cnVjdCBTVFJVQ1ROQU1FICpy
ZXN1bHRwID0gTlVMTDsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBc
CiAgICAgICAgIGNoYXIgKmJ1ZiA9IE5VTEw7ICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCmRpZmYgLS1naXQgYS90
b29scy9saWJzL2xpZ2h0L2xpYnhsX2ludGVybmFsLmggYi90b29scy9saWJz
L2xpZ2h0L2xpYnhsX2ludGVybmFsLmgKaW5kZXggYjFhN2NkOWY2MTViLi4x
MjE5ZmY4ZGJkODkgMTAwNjQ0Ci0tLSBhL3Rvb2xzL2xpYnMvbGlnaHQvbGli
eGxfaW50ZXJuYWwuaAorKysgYi90b29scy9saWJzL2xpZ2h0L2xpYnhsX2lu
dGVybmFsLmgKQEAgLTQ4NzQsNiArNDg3NCwxNCBAQCBzdHJ1Y3QgbGlieGxf
X2NwdV9wb2xpY3kgewogICAgIHN0cnVjdCB4Y19tc3IgKm1zcjsKIH07CiAK
K3N0cnVjdCBwYXNzd2Q7CitfaGlkZGVuIGludCB1c2VybG9va3VwX2hlbHBl
cl9nZXRwd25hbShsaWJ4bF9fZ2MqLCBjb25zdCBjaGFyICp1c2VyLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RydWN0IHBh
c3N3ZCAqcmVzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgc3RydWN0IHBhc3N3ZCAqKm91dCk7CitfaGlkZGVuIGludCB1c2Vy
bG9va3VwX2hlbHBlcl9nZXRwd3VpZChsaWJ4bF9fZ2MqLCB1aWRfdCB1aWQs
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJ1
Y3QgcGFzc3dkICpyZXMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBzdHJ1Y3QgcGFzc3dkICoqb3V0KTsKKwogI2VuZGlmCiAK
IC8qCmRpZmYgLS1naXQgYS90b29scy9saWJzL2xpZ2h0L2xpYnhsX3R5cGVz
LmlkbCBiL3Rvb2xzL2xpYnMvbGlnaHQvbGlieGxfdHlwZXMuaWRsCmluZGV4
IDNiZDY2MjkxYWZkNC4uN2Q4YmQ1ZDIxNjY3IDEwMDY0NAotLS0gYS90b29s
cy9saWJzL2xpZ2h0L2xpYnhsX3R5cGVzLmlkbAorKysgYi90b29scy9saWJz
L2xpZ2h0L2xpYnhsX3R5cGVzLmlkbApAQCAtNjI0LDYgKzYyNCw4IEBAIGxp
YnhsX2RvbWFpbl9idWlsZF9pbmZvID0gU3RydWN0KCJkb21haW5fYnVpbGRf
aW5mbyIsWwogICAgICgiYWNwaSIsICAgICAgICAgICAgIGxpYnhsX2RlZmJv
b2wpLAogICAgICgiYm9vdGxvYWRlciIsICAgICAgIHN0cmluZyksCiAgICAg
KCJib290bG9hZGVyX2FyZ3MiLCAgbGlieGxfc3RyaW5nX2xpc3QpLAorICAg
ICgiYm9vdGxvYWRlcl9yZXN0cmljdCIsIGxpYnhsX2RlZmJvb2wpLAorICAg
ICgiYm9vdGxvYWRlcl91c2VyIiwgIHN0cmluZyksCiAgICAgKCJ0aW1lcl9t
b2RlIiwgICAgICAgbGlieGxfdGltZXJfbW9kZSksCiAgICAgKCJuZXN0ZWRf
aHZtIiwgICAgICAgbGlieGxfZGVmYm9vbCksCiAgICAgKCJhcGljIiwgICAg
ICAgICAgICAgbGlieGxfZGVmYm9vbCksCmRpZmYgLS1naXQgYS90b29scy94
bC94bC5jIGIvdG9vbHMveGwveGwuYwppbmRleCAyZDFlYzE4ZWEzMGYuLmVj
NzJjYTYwYzMyYSAxMDA2NDQKLS0tIGEvdG9vbHMveGwveGwuYworKysgYi90
b29scy94bC94bC5jCkBAIC01Nyw2ICs1Nyw3IEBAIGludCBtYXhfZ3JhbnRf
ZnJhbWVzID0gLTE7CiBpbnQgbWF4X21hcHRyYWNrX2ZyYW1lcyA9IC0xOwog
aW50IG1heF9ncmFudF92ZXJzaW9uID0gTElCWExfTUFYX0dSQU5UX0RFRkFV
TFQ7CiBsaWJ4bF9kb21pZCBkb21pZF9wb2xpY3kgPSBJTlZBTElEX0RPTUlE
OworbGlieGxfZGVmYm9vbCBib290bG9hZGVyX3Jlc3RyaWN0OwogCiB4ZW50
b29sbG9nX2xldmVsIG1pbm1zZ2xldmVsID0gbWlubXNnbGV2ZWxfZGVmYXVs
dDsKIApAQCAtMjUzLDYgKzI1NCw5IEBAIHN0YXRpYyB2b2lkIHBhcnNlX2ds
b2JhbF9jb25maWcoY29uc3QgY2hhciAqY29uZmlnZmlsZSwKICAgICAgICAg
ICAgIGZwcmludGYoc3RkZXJyLCAiaW52YWxpZCBkb21pZF9wb2xpY3kgb3B0
aW9uIik7CiAgICAgfQogCisgICAgeGx1X2NmZ19nZXRfZGVmYm9vbChjb25m
aWcsICJib290bG9hZGVyX3Jlc3RyaWN0IiwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICZib290bG9hZGVyX3Jlc3RyaWN0LCAwKTsKKwogICAgIHhsdV9j
ZmdfZGVzdHJveShjb25maWcpOwogfQogCmRpZmYgLS1naXQgYS90b29scy94
bC94bC5oIGIvdG9vbHMveGwveGwuaAppbmRleCAzMDQ1YjVhOGUzZjAuLjlj
ODZiYjFkOTgyNCAxMDA2NDQKLS0tIGEvdG9vbHMveGwveGwuaAorKysgYi90
b29scy94bC94bC5oCkBAIC0yODgsNiArMjg4LDcgQEAgZXh0ZXJuIGxpYnhs
X2JpdG1hcCBnbG9iYWxfdm1fYWZmaW5pdHlfbWFzazsKIGV4dGVybiBsaWJ4
bF9iaXRtYXAgZ2xvYmFsX2h2bV9hZmZpbml0eV9tYXNrOwogZXh0ZXJuIGxp
YnhsX2JpdG1hcCBnbG9iYWxfcHZfYWZmaW5pdHlfbWFzazsKIGV4dGVybiBs
aWJ4bF9kb21pZCBkb21pZF9wb2xpY3k7CitleHRlcm4gbGlieGxfZGVmYm9v
bCBib290bG9hZGVyX3Jlc3RyaWN0OwogCiBlbnVtIG91dHB1dF9mb3JtYXQg
ewogICAgIE9VVFBVVF9GT1JNQVRfSlNPTiwKZGlmZiAtLWdpdCBhL3Rvb2xz
L3hsL3hsX3BhcnNlLmMgYi90b29scy94bC94bF9wYXJzZS5jCmluZGV4IDBl
OGM2MDRiYmYwNi4uZWQ5ODMyMDBjM2Y4IDEwMDY0NAotLS0gYS90b29scy94
bC94bF9wYXJzZS5jCisrKyBiL3Rvb2xzL3hsL3hsX3BhcnNlLmMKQEAgLTE3
MDAsNiArMTcwMCwxMyBAQCB2b2lkIHBhcnNlX2NvbmZpZ19kYXRhKGNvbnN0
IGNoYXIgKmNvbmZpZ19zb3VyY2UsCiAgICAgICAgIGV4aXQoLUVSUk9SX0ZB
SUwpOwogICAgIH0KICNlbmRpZgorICAgIHhsdV9jZmdfZ2V0X2RlZmJvb2wo
Y29uZmlnLCAiYm9vdGxvYWRlcl9yZXN0cmljdCIsCisgICAgICAgICAgICAg
ICAgICAgICAgICAmYl9pbmZvLT5ib290bG9hZGVyX3Jlc3RyaWN0LCAwKTsK
KyAgICBpZiAoIWxpYnhsX2RlZmJvb2xfaXNfZGVmYXVsdChib290bG9hZGVy
X3Jlc3RyaWN0KSkKKyAgICAgICAgbGlieGxfZGVmYm9vbF9zZXRkZWZhdWx0
KCZiX2luZm8tPmJvb3Rsb2FkZXJfcmVzdHJpY3QsCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBsaWJ4bF9kZWZib29sX3ZhbChib290bG9h
ZGVyX3Jlc3RyaWN0KSk7CisgICAgeGx1X2NmZ19yZXBsYWNlX3N0cmluZyhj
b25maWcsICJib290bG9hZGVyX3VzZXIiLAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgJmJfaW5mby0+Ym9vdGxvYWRlcl91c2VyLCAwKTsKIAogICAg
IHN3aXRjaCAoeGx1X2NmZ19nZXRfbGlzdF9hc19zdHJpbmdfbGlzdChjb25m
aWcsICJib290bG9hZGVyX2FyZ3MiLAogICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAmYl9pbmZvLT5ib290bG9hZGVyX2Fy
Z3MsIDEpKSB7Ci0tIAoyLjQyLjAKCg==

--=separator
Content-Type: application/octet-stream; name="xsa443/xsa443-11.patch"
Content-Disposition: attachment; filename="xsa443/xsa443-11.patch"
Content-Transfer-Encoding: base64

RnJvbSA5NTQzMjQ3Y2NlY2NmYTU3MTVjMmE0YmU1ZDExMGZhNDNiNGM0YWMx
IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBSb2dlciBQYXUgTW9u
bmUgPHJvZ2VyLnBhdUBjaXRyaXguY29tPgpEYXRlOiBUaHUsIDI4IFNlcCAy
MDIzIDEyOjIyOjM1ICswMjAwClN1YmplY3Q6IFtQQVRDSCAxMS8xMV0gbGli
eGw6IGxpbWl0IGJvb3Rsb2FkZXIgZXhlY3V0aW9uIGluIHJlc3RyaWN0ZWQg
bW9kZQpNSU1FLVZlcnNpb246IDEuMApDb250ZW50LVR5cGU6IHRleHQvcGxh
aW47IGNoYXJzZXQ9VVRGLTgKQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzog
OGJpdAoKSW50cm9kdWNlIGEgdGltZW91dCBmb3IgYm9vdGxvYWRlciBleGVj
dXRpb24gd2hlbiBydW5uaW5nIGluIHJlc3RyaWN0ZWQgbW9kZS4KCkFsbG93
IG92ZXJ3cml0aW5nIHRoZSBkZWZhdWx0IHRpbWUgb3V0IHdpdGggYW4gZW52
aXJvbm1lbnQgcHJvdmlkZWQgdmFsdWUuCgpUaGlzIGlzIHBhcnQgb2YgWFNB
LTQ0MyAvIENWRS0yMDIzLTM0MzI1CgpTaWduZWQtb2ZmLWJ5OiBSb2dlciBQ
YXUgTW9ubsOpIDxyb2dlci5wYXVAY2l0cml4LmNvbT4KUmV2aWV3ZWQtYnk6
IEFudGhvbnkgUEVSQVJEIDxhbnRob255LnBlcmFyZEBjaXRyaXguY29tPgot
LS0KIGRvY3MvbWFuL3hsLjEucG9kLmluICAgICAgICAgICAgICAgIHwgIDgg
KysrKysrCiB0b29scy9saWJzL2xpZ2h0L2xpYnhsX2Jvb3Rsb2FkZXIuYyB8
IDQwICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrCiB0b29scy9saWJz
L2xpZ2h0L2xpYnhsX2ludGVybmFsLmggICB8ICAyICsrCiAzIGZpbGVzIGNo
YW5nZWQsIDUwIGluc2VydGlvbnMoKykKCmRpZmYgLS1naXQgYS9kb2NzL21h
bi94bC4xLnBvZC5pbiBiL2RvY3MvbWFuL3hsLjEucG9kLmluCmluZGV4IDcz
ZTJiM2I2MTE0Yy4uYmVkODM5MzQ3M2M5IDEwMDY0NAotLS0gYS9kb2NzL21h
bi94bC4xLnBvZC5pbgorKysgYi9kb2NzL21hbi94bC4xLnBvZC5pbgpAQCAt
MTk4NSw2ICsxOTg1LDE0IEBAIGNvbXBhdGliaWxpdHkgcmVhc29ucy4KIAog
SWYgc2V0IHRha2VzIHByZWNlZGVuY2Ugb3ZlciBMPHhsLmNmZyg1KT4gQjxi
b290bG9hZGVyX3VzZXI+IG9wdGlvbi4KIAorPWl0ZW0gTElCWExfQk9PVExP
QURFUl9USU1FT1VUCisKK1RpbWVvdXQgaW4gc2Vjb25kcyBmb3IgYm9vdGxv
YWRlciBleGVjdXRpb24gd2hlbiBydW5uaW5nIGluIHJlc3RyaWN0ZWQgbW9k
ZS4KK090aGVyd2lzZSB0aGUgYnVpbGQgdGltZSBkZWZhdWx0IGluIExJQlhM
X0JPT1RMT0FERVJfVElNRU9VVCB3aWxsIGJlIHVzZWQuCisKK0lmIGRlZmlu
ZWQgdGhlIHZhbHVlIG11c3QgYmUgYW4gdW5zaWduZWQgaW50ZWdlciBiZXR3
ZWVuIDAgYW5kIElOVF9NQVgsCitvdGhlcndpc2UgYmVoYXZpb3IgaXMgdW5k
ZWZpbmVkLiAgU2V0dGluZyB0byAwIGRpc2FibGVzIHRoZSB0aW1lb3V0Lgor
CiA9YmFjawogCiA9aGVhZDEgU0VFIEFMU08KZGlmZiAtLWdpdCBhL3Rvb2xz
L2xpYnMvbGlnaHQvbGlieGxfYm9vdGxvYWRlci5jIGIvdG9vbHMvbGlicy9s
aWdodC9saWJ4bF9ib290bG9hZGVyLmMKaW5kZXggZDczMjM2N2ZjMDUzLi4y
NzlhOWNkZjkxZjYgMTAwNjQ0Ci0tLSBhL3Rvb2xzL2xpYnMvbGlnaHQvbGli
eGxfYm9vdGxvYWRlci5jCisrKyBiL3Rvb2xzL2xpYnMvbGlnaHQvbGlieGxf
Ym9vdGxvYWRlci5jCkBAIC0zMCw2ICszMCw4IEBAIHN0YXRpYyB2b2lkIGJv
b3Rsb2FkZXJfa2V5c3Ryb2tlc19jb3B5ZmFpbChsaWJ4bF9fZWdjICplZ2Ms
CiAgICAgICAgbGlieGxfX2RhdGFjb3BpZXJfc3RhdGUgKmRjLCBpbnQgcmMs
IGludCBvbndyaXRlLCBpbnQgZXJybm92YWwpOwogc3RhdGljIHZvaWQgYm9v
dGxvYWRlcl9kaXNwbGF5X2NvcHlmYWlsKGxpYnhsX19lZ2MgKmVnYywKICAg
ICAgICBsaWJ4bF9fZGF0YWNvcGllcl9zdGF0ZSAqZGMsIGludCByYywgaW50
IG9ud3JpdGUsIGludCBlcnJub3ZhbCk7CitzdGF0aWMgdm9pZCBib290bG9h
ZGVyX3RpbWVvdXQobGlieGxfX2VnYyAqZWdjLCBsaWJ4bF9fZXZfdGltZSAq
ZXYsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc3Ry
dWN0IHRpbWV2YWwgKnJlcXVlc3RlZF9hYnMsIGludCByYyk7CiBzdGF0aWMg
dm9pZCBib290bG9hZGVyX2RvbWFpbmRlYXRoKGxpYnhsX19lZ2MqLCBsaWJ4
bF9fZG9tYWluZGVhdGhjaGVjayAqZGMsCiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGludCByYyk7CiBzdGF0aWMgdm9pZCBib290bG9h
ZGVyX2ZpbmlzaGVkKGxpYnhsX19lZ2MgKmVnYywgbGlieGxfX2V2X2NoaWxk
ICpjaGlsZCwKQEAgLTI5Niw2ICsyOTgsNyBAQCB2b2lkIGxpYnhsX19ib290
bG9hZGVyX2luaXQobGlieGxfX2Jvb3Rsb2FkZXJfc3RhdGUgKmJsKQogICAg
IGJsLT5wdHlzWzBdLm1hc3RlciA9IGJsLT5wdHlzWzBdLnNsYXZlID0gMDsK
ICAgICBibC0+cHR5c1sxXS5tYXN0ZXIgPSBibC0+cHR5c1sxXS5zbGF2ZSA9
IDA7CiAgICAgbGlieGxfX2V2X2NoaWxkX2luaXQoJmJsLT5jaGlsZCk7Cisg
ICAgbGlieGxfX2V2X3RpbWVfaW5pdCgmYmwtPnRpbWUpOwogICAgIGxpYnhs
X19kb21haW5kZWF0aGNoZWNrX2luaXQoJmJsLT5kZWF0aGNoZWNrKTsKICAg
ICBibC0+a2V5c3Ryb2tlcy5hbyA9IGJsLT5hbzsgIGxpYnhsX19kYXRhY29w
aWVyX2luaXQoJmJsLT5rZXlzdHJva2VzKTsKICAgICBibC0+ZGlzcGxheS5h
byA9IGJsLT5hbzsgICAgIGxpYnhsX19kYXRhY29waWVyX2luaXQoJmJsLT5k
aXNwbGF5KTsKQEAgLTMxMyw2ICszMTYsNyBAQCBzdGF0aWMgdm9pZCBib290
bG9hZGVyX2NsZWFudXAobGlieGxfX2VnYyAqZWdjLCBsaWJ4bF9fYm9vdGxv
YWRlcl9zdGF0ZSAqYmwpCiAgICAgbGlieGxfX2RvbWFpbmRlYXRoY2hlY2tf
c3RvcChnYywmYmwtPmRlYXRoY2hlY2spOwogICAgIGxpYnhsX19kYXRhY29w
aWVyX2tpbGwoJmJsLT5rZXlzdHJva2VzKTsKICAgICBsaWJ4bF9fZGF0YWNv
cGllcl9raWxsKCZibC0+ZGlzcGxheSk7CisgICAgbGlieGxfX2V2X3RpbWVf
ZGVyZWdpc3RlcihnYywgJmJsLT50aW1lKTsKICAgICBmb3IgKGk9MDsgaTwy
OyBpKyspIHsKICAgICAgICAgbGlieGxfX2NhcmVmZF9jbG9zZShibC0+cHR5
c1tpXS5tYXN0ZXIpOwogICAgICAgICBsaWJ4bF9fY2FyZWZkX2Nsb3NlKGJs
LT5wdHlzW2ldLnNsYXZlKTsKQEAgLTM3NCw2ICszNzgsNyBAQCBzdGF0aWMg
dm9pZCBib290bG9hZGVyX3N0b3AobGlieGxfX2VnYyAqZWdjLAogCiAgICAg
bGlieGxfX2RhdGFjb3BpZXJfa2lsbCgmYmwtPmtleXN0cm9rZXMpOwogICAg
IGxpYnhsX19kYXRhY29waWVyX2tpbGwoJmJsLT5kaXNwbGF5KTsKKyAgICBs
aWJ4bF9fZXZfdGltZV9kZXJlZ2lzdGVyKGdjLCAmYmwtPnRpbWUpOwogICAg
IGlmIChsaWJ4bF9fZXZfY2hpbGRfaW51c2UoJmJsLT5jaGlsZCkpIHsKICAg
ICAgICAgciA9IGtpbGwoYmwtPmNoaWxkLnBpZCwgU0lHVEVSTSk7CiAgICAg
ICAgIGlmIChyKSBMT0dFRChXQVJOLCBibC0+ZG9taWQsICIlc2ZhaWxlZCB0
byBraWxsIGJvb3Rsb2FkZXIgWyVsdV0iLApAQCAtNjM1LDYgKzY0MCwyNSBA
QCBzdGF0aWMgdm9pZCBib290bG9hZGVyX2dvdHB0eXMobGlieGxfX2VnYyAq
ZWdjLCBsaWJ4bF9fb3BlbnB0eV9zdGF0ZSAqb3ApCiAgICAgICAgIExPR0Qo
REVCVUcsIGJsLT5kb21pZCwgIiAgYm9vdGxvYWRlciBhcmc6ICVzIiwgKmJs
YXJnKTsKIAogICAgIHN0cnVjdCB0ZXJtaW9zIHRlcm1hdHRyOworICAgIGNv
bnN0IGxpYnhsX2RvbWFpbl9idWlsZF9pbmZvICppbmZvID0gYmwtPmluZm87
CisKKyAgICBpZiAobGlieGxfZGVmYm9vbF92YWwoaW5mby0+Ym9vdGxvYWRl
cl9yZXN0cmljdCkpIHsKKyAgICAgICAgY29uc3QgY2hhciAqdGltZW91dF9l
bnYgPSBnZXRlbnYoIkxJQlhMX0JPT1RMT0FERVJfVElNRU9VVCIpOworICAg
ICAgICBpbnQgdGltZW91dCA9IHRpbWVvdXRfZW52ID8gYXRvaSh0aW1lb3V0
X2VudikKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6IExJ
QlhMX0JPT1RMT0FERVJfVElNRU9VVDsKKworICAgICAgICBpZiAodGltZW91
dCkgeworICAgICAgICAgICAgLyogU2V0IGV4ZWN1dGlvbiB0aW1lb3V0ICov
CisgICAgICAgICAgICByYyA9IGxpYnhsX19ldl90aW1lX3JlZ2lzdGVyX3Jl
bChhbywgJmJsLT50aW1lLAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBib290bG9hZGVyX3RpbWVvdXQsCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpbWVvdXQg
KiAxMDAwKTsKKyAgICAgICAgICAgIGlmIChyYykgeworICAgICAgICAgICAg
ICAgIExPR0VEKEVSUk9SLCBibC0+ZG9taWQsCisgICAgICAgICAgICAgICAg
ICAgICAgInVuYWJsZSB0byByZWdpc3RlciB0aW1lb3V0IGZvciBib290bG9h
ZGVyIGV4ZWN1dGlvbiIpOworICAgICAgICAgICAgICAgIGdvdG8gb3V0Owor
ICAgICAgICAgICAgfQorICAgICAgICB9CisgICAgfQogCiAgICAgcGlkX3Qg
cGlkID0gbGlieGxfX2V2X2NoaWxkX2ZvcmsoZ2MsICZibC0+Y2hpbGQsIGJv
b3Rsb2FkZXJfZmluaXNoZWQpOwogICAgIGlmIChwaWQgPT0gLTEpIHsKQEAg
LTcwMSw2ICs3MjUsMjEgQEAgc3RhdGljIHZvaWQgYm9vdGxvYWRlcl9kaXNw
bGF5X2NvcHlmYWlsKGxpYnhsX19lZ2MgKmVnYywKICAgICBsaWJ4bF9fYm9v
dGxvYWRlcl9zdGF0ZSAqYmwgPSBDT05UQUlORVJfT0YoZGMsICpibCwgZGlz
cGxheSk7CiAgICAgYm9vdGxvYWRlcl9jb3B5ZmFpbChlZ2MsICJib290bG9h
ZGVyIG91dHB1dCIsIGJsLCAxLCByYyxvbndyaXRlLGVycm5vdmFsKTsKIH0K
K3N0YXRpYyB2b2lkIGJvb3Rsb2FkZXJfdGltZW91dChsaWJ4bF9fZWdjICpl
Z2MsIGxpYnhsX19ldl90aW1lICpldiwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBjb25zdCBzdHJ1Y3QgdGltZXZhbCAqcmVxdWVzdGVkX2Fi
cywgaW50IHJjKQoreworICAgIGxpYnhsX19ib290bG9hZGVyX3N0YXRlICpi
bCA9IENPTlRBSU5FUl9PRihldiwgKmJsLCB0aW1lKTsKKyAgICBTVEFURV9B
T19HQyhibC0+YW8pOworCisgICAgbGlieGxfX2V2X3RpbWVfZGVyZWdpc3Rl
cihnYywgJmJsLT50aW1lKTsKKworICAgIGFzc2VydChsaWJ4bF9fZXZfY2hp
bGRfaW51c2UoJmJsLT5jaGlsZCkpOworICAgIExPR0QoRVJST1IsIGJsLT5k
b21pZCwgImtpbGxpbmcgYm9vdGxvYWRlciBiZWNhdXNlIG9mIHRpbWVvdXQi
KTsKKworICAgIGxpYnhsX19ldl9jaGlsZF9raWxsX2RlcmVnaXN0ZXIoYW8s
ICZibC0+Y2hpbGQsIFNJR0tJTEwpOworCisgICAgYm9vdGxvYWRlcl9jYWxs
YmFjayhlZ2MsIGJsLCByYyk7Cit9CiAKIHN0YXRpYyB2b2lkIGJvb3Rsb2Fk
ZXJfZG9tYWluZGVhdGgobGlieGxfX2VnYyAqZWdjLAogICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBsaWJ4bF9fZG9tYWluZGVhdGhjaGVj
ayAqZGMsCkBAIC03MTcsNiArNzU2LDcgQEAgc3RhdGljIHZvaWQgYm9vdGxv
YWRlcl9maW5pc2hlZChsaWJ4bF9fZWdjICplZ2MsIGxpYnhsX19ldl9jaGls
ZCAqY2hpbGQsCiAgICAgU1RBVEVfQU9fR0MoYmwtPmFvKTsKICAgICBpbnQg
cmM7CiAKKyAgICBsaWJ4bF9fZXZfdGltZV9kZXJlZ2lzdGVyKGdjLCAmYmwt
PnRpbWUpOwogICAgIGxpYnhsX19kYXRhY29waWVyX2tpbGwoJmJsLT5rZXlz
dHJva2VzKTsKICAgICBsaWJ4bF9fZGF0YWNvcGllcl9raWxsKCZibC0+ZGlz
cGxheSk7CiAKZGlmZiAtLWdpdCBhL3Rvb2xzL2xpYnMvbGlnaHQvbGlieGxf
aW50ZXJuYWwuaCBiL3Rvb2xzL2xpYnMvbGlnaHQvbGlieGxfaW50ZXJuYWwu
aAppbmRleCAxMjE5ZmY4ZGJkODkuLmQ1NzMyZDFjMzc5MiAxMDA2NDQKLS0t
IGEvdG9vbHMvbGlicy9saWdodC9saWJ4bF9pbnRlcm5hbC5oCisrKyBiL3Rv
b2xzL2xpYnMvbGlnaHQvbGlieGxfaW50ZXJuYWwuaApAQCAtMTAyLDYgKzEw
Miw3IEBACiAjZGVmaW5lIExJQlhMX1FNUF9DTURfVElNRU9VVCAxMAogI2Rl
ZmluZSBMSUJYTF9TVFVCRE9NX1NUQVJUX1RJTUVPVVQgMzAKICNkZWZpbmUg
TElCWExfUUVNVV9CT0RHRV9USU1FT1VUIDIKKyNkZWZpbmUgTElCWExfQk9P
VExPQURFUl9USU1FT1VUIDEyMAogI2RlZmluZSBMSUJYTF9YRU5DT05TT0xF
X0xJTUlUIDEwNDg1NzYKICNkZWZpbmUgTElCWExfWEVOQ09OU09MRV9QUk9U
T0NPTCAidnQxMDAiCiAjZGVmaW5lIExJQlhMX01BWE1FTV9DT05TVEFOVCAx
MDI0CkBAIC0zNzQ0LDYgKzM3NDUsNyBAQCBzdHJ1Y3QgbGlieGxfX2Jvb3Rs
b2FkZXJfc3RhdGUgewogICAgIGxpYnhsX19vcGVucHR5X3N0YXRlIG9wZW5w
dHk7CiAgICAgbGlieGxfX29wZW5wdHlfcmVzdWx0IHB0eXNbMl07ICAvKiBb
MF0gaXMgZm9yIGJvb3Rsb2FkZXIgKi8KICAgICBsaWJ4bF9fZXZfY2hpbGQg
Y2hpbGQ7CisgICAgbGlieGxfX2V2X3RpbWUgdGltZTsKICAgICBsaWJ4bF9f
ZG9tYWluZGVhdGhjaGVjayBkZWF0aGNoZWNrOwogICAgIGludCBuYXJncywg
YXJnc3NwYWNlOwogICAgIGNvbnN0IGNoYXIgKiphcmdzOwotLSAKMi40Mi4w
Cgo=

--=separator--


From xen-devel-bounces@lists.xenproject.org Tue Oct 10 12:16:04 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 10 Oct 2023 12:16:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614831.956104 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqBee-0007Yb-8Y; Tue, 10 Oct 2023 12:16:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614831.956104; Tue, 10 Oct 2023 12:16: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 1qqBee-0007YU-60; Tue, 10 Oct 2023 12:16:04 +0000
Received: by outflank-mailman (input) for mailman id 614831;
 Tue, 10 Oct 2023 12: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 1qqBec-0007Xt-Nv
 for xen-devel@lists.xenproject.org; Tue, 10 Oct 2023 12: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 1qqBeb-0008Dz-Kk; Tue, 10 Oct 2023 12:16:01 +0000
Received: from [15.248.2.156] (helo=[10.24.67.48])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qqBeb-0000sA-F7; Tue, 10 Oct 2023 12:16: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:
	References:Cc:To:From:Subject:MIME-Version:Date:Message-ID;
	bh=Co/ymX6Y7vmMvIN5n3sQ0wVntF2ZOXh6EIRgiEsoOOQ=; b=u52zAXGfycQE2ZwHvmZjiHXYdR
	caenfaFB1T9QPbs8E/DypedDGah+1rx5YxUkB+FjntU62d0bQSy/WoCpImKoVTxVhYOsP46YPcS8W
	wX8R6AVt6gskyqxhdnyEINkLd36oMzrhAe3K+QHn/P4a5IktaBPwSqwvTeGT5kHIl0aQ=;
Message-ID: <22895e24-b051-447a-b944-6ff173b0a790@xen.org>
Date: Tue, 10 Oct 2023 13:15:59 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN PATCH][for-4.19 8/9] xen/types: address Rule 10.1 for
 DECLARE_BITMAP use
Content-Language: en-GB
From: Julien Grall <julien@xen.org>
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,
 Paul Durrant <paul@xen.org>, George Dunlap <george.dunlap@citrix.com>,
 Wei Liu <wl@xen.org>
References: <cover.1696514677.git.nicola.vetrini@bugseng.com>
 <9642dcb4ab51ec9eaeedf16056fbcd946a3efbea.1696514677.git.nicola.vetrini@bugseng.com>
 <80101145-1958-457a-8c80-cae816ae74aa@xen.org>
 <4b144869407871011c538af48b311c31@bugseng.com>
 <354c6138-509e-4106-9a27-3c75c85b85e5@xen.org>
 <alpine.DEB.2.22.394.2310061746190.3431292@ubuntu-linux-20-04-desktop>
 <d90524b8-70ee-457e-8d6a-9e69f135b81d@xen.org>
 <alpine.DEB.2.22.394.2310091803060.3431292@ubuntu-linux-20-04-desktop>
 <f9a24504-97e7-4a2e-8601-8e4672b45f88@xen.org>
 <eda6269602e89abf5bd1e23cc81d0528@bugseng.com>
 <bcc81d48-fafb-417a-a609-d6e0c17daf99@xen.org>
In-Reply-To: <bcc81d48-fafb-417a-a609-d6e0c17daf99@xen.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit



On 10/10/2023 13:13, Julien Grall wrote:
> 
> 
> On 10/10/2023 13:07, Nicola Vetrini wrote:
>>
>>>>>>
>>>>>> I agree on everything Julien's wrote and I was about to suggest to 
>>>>>> use a
>>>>>> SAF comment to suppress the warning because it is clearer than a int
>>>>>> cast.
>>>>>>
>>>>>> But then I realized that even if BITS_TO_LONGS was fixed, wouldn't 
>>>>>> still
>>>>>> we have a problem because IOMMU_FEAT_count is an enum?
>>>>>>
>>>>>> Is it the case that IOMMU_FEAT_count would have to be cast 
>>>>>> regardless,
>>>>>> either to int or unsigned int or whatever to be used in 
>>>>>> DECLARE_BITMAP?
>>>>>>
>>>>>>
>>>>>> So we have 2 problems here: one problem is DECLARE_BITMAP taking int
>>>>>> instead of unsigned int, and another problem is IOMMU_FEAT_count 
>>>>>> being
>>>>>> an enum.
>>>>>>
>>>>>> If I got it right, then I would go with the cast to int (like done in
>>>>>> this patch) with a decent comment on top of it.
>>>>>
>>>>> I might be missing something here. But why should we use cast 
>>>>> rather than /*
>>>>> SAF-X */ just above? I would have expected we wanted to highlight the
>>>>> violation rather than hiding it.
>>>>
>>>> My understanding is that the cast is required when converting an enum
>>>> type to an integer type and vice versa. The idea is that we 
>>>> shouldn't do
>>>> implicit conversions as they are error prone, only explicit conversions
>>>> are allowed between enum and integers.
>>>
>>> We have a lot of places in Xen using implicit conversion from enum to
>>> integer (for instance in the P2M code for p2m_type_t). Does ECLAIR
>>> report all of them? If not, then why?
>>>
>>
>> Can you give some pointers as to where this enum is used in arithmetic 
>> operations?
> 
> I can't think of any right now.

Obviously, right after I pressed send, I remember of one in 
__acpi_map_table() (x86 code).

FIX_ACPI_END is an enum, assigned to an 'int' and then used in arithmetics.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Oct 10 12:16:42 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 10 Oct 2023 12:16:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614846.956114 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqBfG-0008Nm-He; Tue, 10 Oct 2023 12:16:42 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614846.956114; Tue, 10 Oct 2023 12:16: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 1qqBfG-0008Nf-F5; Tue, 10 Oct 2023 12:16:42 +0000
Received: by outflank-mailman (input) for mailman id 614846;
 Tue, 10 Oct 2023 12:16: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=Rlhl=FY=collabora.com=dmitry.osipenko@srs-se1.protection.inumbo.net>)
 id 1qqBZk-00044v-CP
 for xen-devel@lists.xenproject.org; Tue, 10 Oct 2023 12:11:00 +0000
Received: from madras.collabora.co.uk (madras.collabora.co.uk [46.235.227.172])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 12ee1d84-6766-11ee-98d3-6d05b1d4d9a1;
 Tue, 10 Oct 2023 14:10:59 +0200 (CEST)
Received: from [192.168.2.166] (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))
 (No client certificate requested)
 (Authenticated sender: dmitry.osipenko)
 by madras.collabora.co.uk (Postfix) with ESMTPSA id BF11966072B6;
 Tue, 10 Oct 2023 13:10:57 +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: 12ee1d84-6766-11ee-98d3-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=collabora.com;
	s=mail; t=1696939859;
	bh=rkoxdkzpBRiLsu+HZW222Ci6VJ4ZbNZnvJKASj8v+Qk=;
	h=Date:Subject:To:Cc:References:From:In-Reply-To:From;
	b=YJrAlLGQX7F5DItOeK9lDB4Rmq9LJ+dEuwNIqgU04qOPIEGYr8l8yqJaajzXd675O
	 CzGdif2PMURe7hVi7LTVvyng3h1YKcKjIf2bwgCH6yk/xCAFNOA3FVOcuUxeYY5Qa0
	 SjB5iETgnSpSGV/YFDPQsdgHzO9RVvtGbtlCQWoOoupb4LboKZv0Uc2wmpAtLS0c9q
	 eJeBeDes60d8mxTT+FAmhY6XbX5bD5DM81/VGf8Fsm5Hhzc0He9vxPH7LdsY2tgBLb
	 Jc02QCURXNBUMhyLSFeJxJyUbRneWqN80Zcc12Qa6RzjjlGQV8h/6yIrQgIyKBksEA
	 aZJQSDsC2PnyA==
Message-ID: <c5f04687-160b-08e7-1366-c29cba69f929@collabora.com>
Date: Tue, 10 Oct 2023 15:10:55 +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 12/13] virtio-gpu: Initialize Venus
Content-Language: en-US
To: Huang Rui <ray.huang@amd.com>, 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>,
 =?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-13-ray.huang@amd.com>
From: Dmitry Osipenko <dmitry.osipenko@collabora.com>
In-Reply-To: <20230915111130.24064-13-ray.huang@amd.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit

On 9/15/23 14:11, Huang Rui wrote:
> +  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

All the required APIs has been stabilized in virglrenderer 1.0, we
shouldn't use the VIRGL_RENDERER_UNSTABLE_APIS anymore. The unstable
APIs were used for development purposes and shouldn't present in the
final version.

Please remove the VIRGL_RENDERER_UNSTABLE_APIS in v6.

-- 
Best regards,
Dmitry



From xen-devel-bounces@lists.xenproject.org Tue Oct 10 12:19:51 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 10 Oct 2023 12:19:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614912.956158 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqBi7-0002y8-3I; Tue, 10 Oct 2023 12:19:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614912.956158; Tue, 10 Oct 2023 12:19: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 1qqBi7-0002y1-0e; Tue, 10 Oct 2023 12:19:39 +0000
Received: by outflank-mailman (input) for mailman id 614912;
 Tue, 10 Oct 2023 12:19: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=c+X1=FY=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qqBWH-0006hr-St
 for xen-devel@lists.xenproject.org; Tue, 10 Oct 2023 12:07:25 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 8bf94520-6765-11ee-9b0d-b553b5be7939;
 Tue, 10 Oct 2023 14:07:13 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id E77114EE0737;
 Tue, 10 Oct 2023 14:07: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: 8bf94520-6765-11ee-9b0d-b553b5be7939
MIME-Version: 1.0
Date: Tue, 10 Oct 2023 14:07:12 +0200
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: Julien Grall <julien@xen.org>
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, Paul
 Durrant <paul@xen.org>, George Dunlap <george.dunlap@citrix.com>, Wei Liu
 <wl@xen.org>
Subject: Re: [XEN PATCH][for-4.19 8/9] xen/types: address Rule 10.1 for
 DECLARE_BITMAP use
In-Reply-To: <f9a24504-97e7-4a2e-8601-8e4672b45f88@xen.org>
References: <cover.1696514677.git.nicola.vetrini@bugseng.com>
 <9642dcb4ab51ec9eaeedf16056fbcd946a3efbea.1696514677.git.nicola.vetrini@bugseng.com>
 <80101145-1958-457a-8c80-cae816ae74aa@xen.org>
 <4b144869407871011c538af48b311c31@bugseng.com>
 <354c6138-509e-4106-9a27-3c75c85b85e5@xen.org>
 <alpine.DEB.2.22.394.2310061746190.3431292@ubuntu-linux-20-04-desktop>
 <d90524b8-70ee-457e-8d6a-9e69f135b81d@xen.org>
 <alpine.DEB.2.22.394.2310091803060.3431292@ubuntu-linux-20-04-desktop>
 <f9a24504-97e7-4a2e-8601-8e4672b45f88@xen.org>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <eda6269602e89abf5bd1e23cc81d0528@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


>>>> 
>>>> I agree on everything Julien's wrote and I was about to suggest to 
>>>> use a
>>>> SAF comment to suppress the warning because it is clearer than a int
>>>> cast.
>>>> 
>>>> But then I realized that even if BITS_TO_LONGS was fixed, wouldn't 
>>>> still
>>>> we have a problem because IOMMU_FEAT_count is an enum?
>>>> 
>>>> Is it the case that IOMMU_FEAT_count would have to be cast 
>>>> regardless,
>>>> either to int or unsigned int or whatever to be used in 
>>>> DECLARE_BITMAP?
>>>> 
>>>> 
>>>> So we have 2 problems here: one problem is DECLARE_BITMAP taking int
>>>> instead of unsigned int, and another problem is IOMMU_FEAT_count 
>>>> being
>>>> an enum.
>>>> 
>>>> If I got it right, then I would go with the cast to int (like done 
>>>> in
>>>> this patch) with a decent comment on top of it.
>>> 
>>> I might be missing something here. But why should we use cast rather 
>>> than /*
>>> SAF-X */ just above? I would have expected we wanted to highlight the
>>> violation rather than hiding it.
>> 
>> My understanding is that the cast is required when converting an enum
>> type to an integer type and vice versa. The idea is that we shouldn't 
>> do
>> implicit conversions as they are error prone, only explicit 
>> conversions
>> are allowed between enum and integers.
> 
> We have a lot of places in Xen using implicit conversion from enum to
> integer (for instance in the P2M code for p2m_type_t). Does ECLAIR
> report all of them? If not, then why?
> 

Can you give some pointers as to where this enum is used in arithmetic 
operations?
 From a cursory glace I can see equality comparisons and
as arguments to the array subscript operator, which are both compliant.

>> 
>> So we need either (int) or (unsigned int). The question is which one
>> between the two, and theoretically (unsigned int) is better but due to
>> the reasons above (int) is the simplest choice.
>> 
>> Yes, instead of the cast we can also add a SAF-x comment, which refers
>> to a deviation that says something along the lines "we could fix this
>> with a cast but we prefer a deviation because it makes the code easier
>> to read".
>> 
>> In general my personal preference would be to use a cast, because we
>> shouldn't implicitly convert enums to integers.
> 
> See above. I'd like to understand whether we are going to sprinkle the
> code with cast. If so, I am afraid I am against this solution.
> 
> Cheers,

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


From xen-devel-bounces@lists.xenproject.org Tue Oct 10 12:23:19 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 10 Oct 2023 12:23:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614959.956170 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqBle-0005Ba-Jw; Tue, 10 Oct 2023 12:23:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614959.956170; Tue, 10 Oct 2023 12: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 1qqBle-0005BT-H8; Tue, 10 Oct 2023 12:23:18 +0000
Received: by outflank-mailman (input) for mailman id 614959;
 Tue, 10 Oct 2023 12: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=8mmp=FY=xenbits.xen.org=julieng@srs-se1.protection.inumbo.net>)
 id 1qqBYf-0006hr-HT
 for xen-devel@lists.xen.org; Tue, 10 Oct 2023 12:09:53 +0000
Received: from mail.xenproject.org (mail.xenproject.org [104.130.215.37])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id e68e70d8-6765-11ee-9b0d-b553b5be7939;
 Tue, 10 Oct 2023 14:09:45 +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 1qqBYP-00084r-15; Tue, 10 Oct 2023 12:09:37 +0000
Received: from julieng by xenbits.xenproject.org with local (Exim 4.92)
 (envelope-from <julieng@xenbits.xen.org>)
 id 1qqBYP-0006rf-09; Tue, 10 Oct 2023 12: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>
X-Inumbo-ID: e68e70d8-6765-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=p9JWqtGG+vTJxLk/4gJeZPJid2X9XQy/kQExGI1owlw=; b=yDUQAUBAfitB23joMYaLlt7bGr
	YUBapos9gbwPT0yt1yQA74YfxI0fDpKd+tzsKssiWcSRZOYNGUr5LNFasBT0WS80LiJADLl8hDGcm
	0reYpJVed6c106gmsZfeZXRWFAgLoy5b2vsvrjiafMdTLCepTfB4o+qF5rkKlgtVE7bQ=;
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 444 v3 (CVE-2023-34327,CVE-2023-34328) -
 x86/AMD: Debug Mask handling
Message-Id: <E1qqBYP-0006rf-09@xenbits.xenproject.org>
Date: Tue, 10 Oct 2023 12:09: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-34327,CVE-2023-34328 / XSA-444
                               version 3

                     x86/AMD: Debug Mask handling

UPDATES IN VERSION 3
====================

Public release.

ISSUE DESCRIPTION
=================

AMD CPUs since ~2014 have extensions to normal x86 debugging functionality.
Xen supports guests using these extensions.

Unfortunately there are errors in Xen's handling of the guest state, leading
to denials of service.

 1) CVE-2023-34327 - An HVM vCPU can end up operating in the context of
    a previous vCPUs debug mask state.

 2) CVE-2023-34328 - A PV vCPU can place a breakpoint over the live GDT.
    This allows the PV vCPU to exploit XSA-156 / CVE-2015-8104 and lock
    up the CPU entirely.

IMPACT
======

For CVE-2023-34327, any guest (PV or HVM) using Debug Masks normally for
it's own purposes can cause incorrect behaviour in an unrelated HVM
vCPU, most likely resulting in a guest crash.

For CVE-2023-34328, a buggy or malicious PV guest kernel can lock up the
host.

VULNERABLE SYSTEMS
==================

Only AMD/Hygon hardware supporting the DBEXT feature are vulnerable.
This is believed to be the Steamroller microarchitecture and later.

For CVE-2023-34327, Xen versions 4.5 and later are vulnerable.

For CVE-2023-34328, Xen version between 4.5 and 4.13 are vulnerable.
The issue is benign in Xen 4.14 and later owing to an unrelated change.

MITIGATION
==========

For CVE-2023-34327, HVM VMs which can see the DBEXT feature are not
susceptible to running in the wrong state.  By default, VMs will see the
DBEXT feature on capable hardware, and when not explicitly levelled for
migration compatibility.

For CVE-2023-34328, PV VMs which cannot see the DBEXT feature cannot
leverage the vulnerability.

CREDITS
=======

This issue was discovered by Andrew Cooper of XenServer.

RESOLUTION
==========

Applying the appropriate set of attached patches 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.

xsa444-?.patch           xen-unstable
xsa444-4.17-?.patch      Xen 4.17.x
xsa444-4.16-?.patch      Xen 4.16.x - Xen 4.15.x

$ sha256sum xsa444*
d1a10243d08295ffed2721aaa150efad9e9bd624428f0c24d04e69435a8ddc2e  xsa444-1.patch
9ce44c08030780c2e0432169ce679da0a5793ee254e38a0dbe506edf5f1587fd  xsa444-2.patch
ff0142be5b71679df0f425ea8f74e77589db5b5312e631541d2ab7968b9ea779  xsa444-4.16-1.patch
4ecf44680bd95fb4adddb1c5ced21e8b2754bca2f5cf3e028cf6ea3d9a90d239  xsa444-4.16-2.patch
9c1244f06c2cd0ad4c2023d224363d5d4ad063d80f8682ee66056520cabfb52d  xsa444-4.17-1.patch
18dcbb62b5c5f1fba205cfbc83f3b4b1ffa39490bbfd1f1263320f8aef16e83c  xsa444-4.17-2.patch
$

DEPLOYMENT DURING EMBARGO
=========================

Deployment of the patches and 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/4UyVfoK9kFAmUlNO0MHHBncEB4ZW4u
b3JnAAoJEIP+FMlX6CvZoGcH+gMuZqrzWTDFKflh1MO9EPI5iQzyJgQEHicacoBP
rO6gAUMQ2OvgqM1CO6e7qZ7qU+CPP2dfp1aR+Zxz0ynzeku2cVJY1SiAhZ+ZODso
pBZg/3DKtX0kGP27nStInbZQu2TGfTUQLJ80sYxb3A7Fl8uGWmlCFuZoYGK7R9+P
KU2sutmFJJipQVoQm38AQmTed1f+xjtX3AGwWFNGnuHkAC9pQGCQ29YL7wqhtvjw
FndF1aLLVCX5Wt6LIK6K5z8DncfrDTwXDha3XMbFmY37HGOOa96jTPJhThmnYEU1
SWc43m9HnCiP/DdBeQ9t2JmVVkx8Qc5kZQigFdpQ0aR/wj8=
=n97C
-----END PGP SIGNATURE-----

--=separator
Content-Type: application/octet-stream; name="xsa444-1.patch"
Content-Disposition: attachment; filename="xsa444-1.patch"
Content-Transfer-Encoding: base64

RnJvbTogQW5kcmV3IENvb3BlciA8YW5kcmV3LmNvb3BlcjNAY2l0cml4LmNv
bT4KU3ViamVjdDogeDg2L3N2bTogRml4IGFzeW1tZXRyeSB3aXRoIEFNRCBE
UiBNQVNLIGNvbnRleHQgc3dpdGNoaW5nCgpUaGUgaGFuZGxpbmcgb2YgTVNS
X0RSezAuLjN9X01BU0sgaXMgYXN5bW1ldHJpYyBiZXR3ZWVuIFBWIGFuZCBI
Vk0gZ3Vlc3RzLgoKSFZNIGd1ZXN0cyBjb250ZXh0IHN3aXRjaCBpbiBiYXNl
ZCBvbiB0aGUgZ3Vlc3QgdmlldyBvZiBEQkVYVCwgd2hlcmVhcyBQVgpndWVz
dCBzd2l0Y2ggaW4gYmFzZSBvbiB0aGUgaG9zdCBjYXBhYmlsaXR5LiAgQm90
aCBndWVzdCB0eXBlcyBsZWF2ZSB0aGUKY29udGV4dCBkaXJ0eSBmb3IgdGhl
IG5leHQgdkNQVS4KClRoaXMgbGVhZHMgdG8gdGhlIGZvbGxvd2luZyBpc3N1
ZToKCiAqIFBWIG9yIEhWTSBndWVzdCBoYXMgZGVidWdnaW5nIGFjdGl2ZSAo
JWRyNyArIG1hc2spCiAqIFN3aXRjaC1vdXQgZGVhY3RpdmF0ZXMgJWRyNyBi
dXQgbGVhdmVzIG90aGVyIHN0YXRlIHN0YWxlIGluIGhhcmR3YXJlCiAqIEFu
b3RoZXIgSFZNIGd1ZXN0IHdpdGggbWFza3MgdW5hdmFpbGFibGUgaGFzIGRl
YnVnZ2luZyBhY3RpdmUKICogU3dpdGNoIGluIGxvYWRzICVkcjcgYnV0IGxl
YXZlcyB0aGUgbWFzayBNU1JzIGFsb25lCgpOb3csIHRoZSBzZWNvbmQgZ3Vl
c3QncyB2Q1BVIGlzIG9wZXJhdGluZyBpbiB0aGUgY29udGV4dCBvZiB0aGUg
cHJpb3IgdkNQVSdzCm1hc2sgTVNSLCB3aGlsZSB0aGUgZW52aXJvbm1lbnQg
dGhlIHZDUFUgY2FuIHNlZSBzYXlzIHRoZXJlIGFyZSBubyBtYXNrIE1TUnMu
CgpBcyBhIHN0b3BnYXAsIGFkanVzdCB0aGUgSFZNIHBhdGggdG8gc3dpdGNo
IGluIHRoZSBtYXNrcyBiYXNlZCBvbiBob3N0CmNhcGFiaWxpdGllcyByYXRo
ZXIgdGhhbiBndWVzdCB2aXNpYmlsaXR5IChpLmUuIGxpa2UgdGhlIFBWIHBh
dGgpLiAgQWRqdXN0bWVudApvZiB0aGUgaW50ZXJjZXB0cyBzdGlsbCBuZWVk
cyB0byBiZSBkZXBlbmRlbnQgb24gdGhlIGd1ZXN0IHZpc2liaWxpdHkgb2YK
REJFWFQuCgpUaGlzIGlzIHBhcnQgb2YgWFNBLTQ0NCAvIENWRS0yMDIzLTM0
MzI3CgpGaXhlczogYzA5N2Y1NDkxMmQzICgieDg2L1NWTTogc3VwcG9ydCBk
YXRhIGJyZWFrcG9pbnQgZXh0ZW5zaW9uIHJlZ2lzdGVycyIpClNpZ25lZC1v
ZmYtYnk6IEFuZHJldyBDb29wZXIgPGFuZHJldy5jb29wZXIzQGNpdHJpeC5j
b20+ClJldmlld2VkLWJ5OiBKYW4gQmV1bGljaCA8amJldWxpY2hAc3VzZS5j
b20+CgpkaWZmIC0tZ2l0IGEveGVuL2FyY2gveDg2L2h2bS9zdm0vc3ZtLmMg
Yi94ZW4vYXJjaC94ODYvaHZtL3N2bS9zdm0uYwppbmRleCBiZWIwNzZlYThk
NjIuLjI0YzQxN2NhNzE5OSAxMDA2NDQKLS0tIGEveGVuL2FyY2gveDg2L2h2
bS9zdm0vc3ZtLmMKKysrIGIveGVuL2FyY2gveDg2L2h2bS9zdm0vc3ZtLmMK
QEAgLTMxNyw2ICszMTcsMTAgQEAgc3RhdGljIHZvaWQgc3ZtX3NhdmVfZHIo
c3RydWN0IHZjcHUgKnYpCiAgICAgdi0+YXJjaC5odm0uZmxhZ19kcl9kaXJ0
eSA9IDA7CiAgICAgdm1jYl9zZXRfZHJfaW50ZXJjZXB0cyh2bWNiLCB+MHUp
OwogCisgICAgLyoKKyAgICAgKiBUaGUgZ3Vlc3QgY2FuIG9ubHkgaGF2ZSBj
aGFuZ2VkIHRoZSBtYXNrIE1TUnMgaWYgd2UgcHJldmlvdXMgZHJvcHBlZAor
ICAgICAqIGludGVyY2VwdHMuICBSZS1yZWFkIHRoZW0gZnJvbSBoYXJkd2Fy
ZS4KKyAgICAgKi8KICAgICBpZiAoIHYtPmRvbWFpbi0+YXJjaC5jcHVpZC0+
ZXh0ZC5kYmV4dCApCiAgICAgewogICAgICAgICBzdm1faW50ZXJjZXB0X21z
cih2LCBNU1JfQU1ENjRfRFIwX0FERFJFU1NfTUFTSywgTVNSX0lOVEVSQ0VQ
VF9SVyk7CkBAIC0zNDgsMTcgKzM1MiwyNSBAQCBzdGF0aWMgdm9pZCBfX3Jl
c3RvcmVfZGVidWdfcmVnaXN0ZXJzKHN0cnVjdCB2bWNiX3N0cnVjdCAqdm1j
Yiwgc3RydWN0IHZjcHUgKnYpCiAKICAgICBBU1NFUlQodiA9PSBjdXJyZW50
KTsKIAotICAgIGlmICggdi0+ZG9tYWluLT5hcmNoLmNwdWlkLT5leHRkLmRi
ZXh0ICkKKyAgICAvKgorICAgICAqIEJvdGggdGhlIFBWIGFuZCBIVk0gcGF0
aHMgbGVhdmUgc3RhbGUgRFJfTUFTSyB2YWx1ZXMgaW4gaGFyZHdhcmUgb24K
KyAgICAgKiBjb250ZXh0LXN3aXRjaC1vdXQuICBJZiB3ZSdyZSBhY3RpdmF0
aW5nICVkcjcgZm9yIHRoZSBndWVzdCwgd2UgbXVzdAorICAgICAqIHN5bmMg
dGhlIERSX01BU0tzIHRvbywgd2hldGhlciBvciBub3QgdGhlIGd1ZXN0IGNh
biBzZWUgdGhlbS4KKyAgICAgKi8KKyAgICBpZiAoIGJvb3RfY3B1X2hhcyhY
ODZfRkVBVFVSRV9EQkVYVCkgKQogICAgIHsKLSAgICAgICAgc3ZtX2ludGVy
Y2VwdF9tc3IodiwgTVNSX0FNRDY0X0RSMF9BRERSRVNTX01BU0ssIE1TUl9J
TlRFUkNFUFRfTk9ORSk7Ci0gICAgICAgIHN2bV9pbnRlcmNlcHRfbXNyKHYs
IE1TUl9BTUQ2NF9EUjFfQUREUkVTU19NQVNLLCBNU1JfSU5URVJDRVBUX05P
TkUpOwotICAgICAgICBzdm1faW50ZXJjZXB0X21zcih2LCBNU1JfQU1ENjRf
RFIyX0FERFJFU1NfTUFTSywgTVNSX0lOVEVSQ0VQVF9OT05FKTsKLSAgICAg
ICAgc3ZtX2ludGVyY2VwdF9tc3IodiwgTVNSX0FNRDY0X0RSM19BRERSRVNT
X01BU0ssIE1TUl9JTlRFUkNFUFRfTk9ORSk7Ci0KICAgICAgICAgd3Jtc3Js
KE1TUl9BTUQ2NF9EUjBfQUREUkVTU19NQVNLLCB2LT5hcmNoLm1zcnMtPmRy
X21hc2tbMF0pOwogICAgICAgICB3cm1zcmwoTVNSX0FNRDY0X0RSMV9BRERS
RVNTX01BU0ssIHYtPmFyY2gubXNycy0+ZHJfbWFza1sxXSk7CiAgICAgICAg
IHdybXNybChNU1JfQU1ENjRfRFIyX0FERFJFU1NfTUFTSywgdi0+YXJjaC5t
c3JzLT5kcl9tYXNrWzJdKTsKICAgICAgICAgd3Jtc3JsKE1TUl9BTUQ2NF9E
UjNfQUREUkVTU19NQVNLLCB2LT5hcmNoLm1zcnMtPmRyX21hc2tbM10pOwor
CisgICAgICAgIGlmICggdi0+ZG9tYWluLT5hcmNoLmNwdWlkLT5leHRkLmRi
ZXh0ICkKKyAgICAgICAgeworICAgICAgICAgICAgc3ZtX2ludGVyY2VwdF9t
c3IodiwgTVNSX0FNRDY0X0RSMF9BRERSRVNTX01BU0ssIE1TUl9JTlRFUkNF
UFRfTk9ORSk7CisgICAgICAgICAgICBzdm1faW50ZXJjZXB0X21zcih2LCBN
U1JfQU1ENjRfRFIxX0FERFJFU1NfTUFTSywgTVNSX0lOVEVSQ0VQVF9OT05F
KTsKKyAgICAgICAgICAgIHN2bV9pbnRlcmNlcHRfbXNyKHYsIE1TUl9BTUQ2
NF9EUjJfQUREUkVTU19NQVNLLCBNU1JfSU5URVJDRVBUX05PTkUpOworICAg
ICAgICAgICAgc3ZtX2ludGVyY2VwdF9tc3IodiwgTVNSX0FNRDY0X0RSM19B
RERSRVNTX01BU0ssIE1TUl9JTlRFUkNFUFRfTk9ORSk7CisgICAgICAgIH0K
ICAgICB9CiAKICAgICB3cml0ZV9kZWJ1Z3JlZygwLCB2LT5hcmNoLmRyWzBd
KTsKZGlmZiAtLWdpdCBhL3hlbi9hcmNoL3g4Ni90cmFwcy5jIGIveGVuL2Fy
Y2gveDg2L3RyYXBzLmMKaW5kZXggMGEwMDVmMDg4YmNhLi5lMTM1NmY2OTZh
YmEgMTAwNjQ0Ci0tLSBhL3hlbi9hcmNoL3g4Ni90cmFwcy5jCisrKyBiL3hl
bi9hcmNoL3g4Ni90cmFwcy5jCkBAIC0yMjI1LDYgKzIyMjUsMTEgQEAgdm9p
ZCBhY3RpdmF0ZV9kZWJ1Z3JlZ3MoY29uc3Qgc3RydWN0IHZjcHUgKmN1cnIp
CiAgICAgaWYgKCBjdXJyLT5hcmNoLmRyNyAmIERSN19BQ1RJVkVfTUFTSyAp
CiAgICAgICAgIHdyaXRlX2RlYnVncmVnKDcsIGN1cnItPmFyY2guZHI3KTsK
IAorICAgIC8qCisgICAgICogQm90aCB0aGUgUFYgYW5kIEhWTSBwYXRocyBs
ZWF2ZSBzdGFsZSBEUl9NQVNLIHZhbHVlcyBpbiBoYXJkd2FyZSBvbgorICAg
ICAqIGNvbnRleHQtc3dpdGNoLW91dC4gIElmIHdlJ3JlIGFjdGl2YXRpbmcg
JWRyNyBmb3IgdGhlIGd1ZXN0LCB3ZSBtdXN0CisgICAgICogc3luYyB0aGUg
RFJfTUFTS3MgdG9vLCB3aGV0aGVyIG9yIG5vdCB0aGUgZ3Vlc3QgY2FuIHNl
ZSB0aGVtLgorICAgICAqLwogICAgIGlmICggYm9vdF9jcHVfaGFzKFg4Nl9G
RUFUVVJFX0RCRVhUKSApCiAgICAgewogICAgICAgICB3cm1zcmwoTVNSX0FN
RDY0X0RSMF9BRERSRVNTX01BU0ssIGN1cnItPmFyY2gubXNycy0+ZHJfbWFz
a1swXSk7Cg==

--=separator
Content-Type: application/octet-stream; name="xsa444-2.patch"
Content-Disposition: attachment; filename="xsa444-2.patch"
Content-Transfer-Encoding: base64

RnJvbTogQW5kcmV3IENvb3BlciA8YW5kcmV3LmNvb3BlcjNAY2l0cml4LmNv
bT4KU3ViamVjdDogeDg2L3B2OiBDb3JyZWN0IHRoZSBhdWRpdGluZyBvZiBn
dWVzdCBicmVha3BvaW50IGFkZHJlc3NlcwoKVGhlIHVzZSBvZiBhY2Nlc3Nf
b2soKSBpcyBidWdneSwgYmVjYXVzZSBpdCBwZXJtaXRzIGFjY2VzcyB0byB0
aGUgY29tcGF0CnRyYW5zbGF0aW9uIGFyZWEuICA2NGJpdCBQViBndWVzdHMg
ZG9uJ3QgdXNlIHRoZSBYTEFUIGFyZWEsIGJ1dCBvbiBBTUQKaGFyZHdhcmUs
IHRoZSBEQkVYVCBmZWF0dXJlIGFsbG93cyBhIGJyZWFrcG9pbnQgdG8gbWF0
Y2ggdXAgdG8gYSA0RyBhbGlnbmVkCnJlZ2lvbiwgYWxsb3dpbmcgdGhlIGJy
ZWFrcG9pbnQgdG8gcmVhY2ggb3V0c2lkZSBvZiB0aGUgWExBVCBhcmVhLgoK
UHJpb3IgdG8gYy9zIGNkYTE2YzFiYjIyMyAoIng4NjogbWlycm9yIGNvbXBh
dCBhcmd1bWVudCB0cmFuc2xhdGlvbiBhcmVhIGZvcgozMi1iaXQgUFYiKSwg
dGhlIGxpdmUgR0RUIHdhcyB3aXRoaW4gNEcgb2YgdGhlIFhMQVQgYXJlYS4K
CkFsbCB0b2dldGhlciwgdGhpcyBhbGxvd2VkIGEgbWFsaWNpb3VzIDY0Yml0
IFBWIGd1ZXN0IG9uIEFNRCBoYXJkd2FyZSB0byBwbGFjZQphIGJyZWFrcG9p
bnQgb3ZlciB0aGUgbGl2ZSBHRFQsIGFuZCB0cmlnZ2VyIGEgI0RCIGxpdmVs
b2NrIChDVkUtMjAxNS04MTA0KS4KCkludHJvZHVjZSBicmVha3BvaW50X2Fk
ZHJfb2soKSBhbmQgZXhwbGFpbiB3aHkgX19hZGRyX29rKCkgaGFwcGVucyB0
byBiZSBhbgphcHByb3ByaWF0ZSBjaGVjayBpbiB0aGlzIGNhc2UuCgpGb3Ig
WGVuIDQuMTQgYW5kIGxhdGVyLCB0aGlzIGlzIGEgbGF0ZW50IGJ1ZyBiZWNh
dXNlIHRoZSBYTEFUIGFyZWEgaGFzIG1vdmVkCnRvIGJlIG9uIGl0cyBvd24g
d2l0aCBub3RoaW5nIGludGVyZXN0aW5nIGFkamFjZW50LiAgRm9yIFhlbiA0
LjEzIGFuZCBvbGRlciBvbgpBTUQgaGFyZHdhcmUsIHRoaXMgZml4ZXMgYSBQ
Vi10cmlnZ2VyLWFibGUgRG9TLgoKVGhpcyBpcyBwYXJ0IG9mIFhTQS00NDQg
LyBDVkUtMjAyMy0zNDMyOC4KCkZpeGVzOiA2NWUzNTU0OTA4MTcgKCJ4ODYv
UFY6IHN1cHBvcnQgZGF0YSBicmVha3BvaW50IGV4dGVuc2lvbiByZWdpc3Rl
cnMiKQpTaWduZWQtb2ZmLWJ5OiBBbmRyZXcgQ29vcGVyIDxhbmRyZXcuY29v
cGVyM0BjaXRyaXguY29tPgpSZXZpZXdlZC1ieTogUm9nZXIgUGF1IE1vbm7D
qSA8cm9nZXIucGF1QGNpdHJpeC5jb20+ClJldmlld2VkLWJ5OiBKYW4gQmV1
bGljaCA8amJldWxpY2hAc3VzZS5jb20+CgpkaWZmIC0tZ2l0IGEveGVuL2Fy
Y2gveDg2L2RvbWFpbi5jIGIveGVuL2FyY2gveDg2L2RvbWFpbi5jCmluZGV4
IDY0NTY3NWQ4N2Q5ZC4uNGQ2MTg3MjYyNTEwIDEwMDY0NAotLS0gYS94ZW4v
YXJjaC94ODYvZG9tYWluLmMKKysrIGIveGVuL2FyY2gveDg2L2RvbWFpbi5j
CkBAIC0xMDg1LDcgKzEwODUsNyBAQCBpbnQgYXJjaF9zZXRfaW5mb19ndWVz
dCgKICAgICBpZiAoIGlzX3B2X2RvbWFpbihkKSApCiAgICAgewogICAgICAg
ICBmb3IgKCBpID0gMDsgaSA8IEFSUkFZX1NJWkUodi0+YXJjaC5kcik7IGkr
KyApCi0gICAgICAgICAgICBpZiAoICFhY2Nlc3Nfb2soYyhkZWJ1Z3JlZ1tp
XSksIHNpemVvZihsb25nKSkgKQorICAgICAgICAgICAgaWYgKCAhYnJlYWtw
b2ludF9hZGRyX29rKGMoZGVidWdyZWdbaV0pKSApCiAgICAgICAgICAgICAg
ICAgcmV0dXJuIC1FSU5WQUw7CiAgICAgICAgIC8qCiAgICAgICAgICAqIFBy
aW9yIHRvIFhlbiA0LjExLCBkcjUgd2FzIHVzZWQgdG8gaG9sZCB0aGUgZW11
bGF0ZWQtb25seQpkaWZmIC0tZ2l0IGEveGVuL2FyY2gveDg2L2luY2x1ZGUv
YXNtL2RlYnVncmVnLmggYi94ZW4vYXJjaC94ODYvaW5jbHVkZS9hc20vZGVi
dWdyZWcuaAppbmRleCAzOWJhMzEyYjg0ZWUuLmI2NDU0Y2MwNGU3MSAxMDA2
NDQKLS0tIGEveGVuL2FyY2gveDg2L2luY2x1ZGUvYXNtL2RlYnVncmVnLmgK
KysrIGIveGVuL2FyY2gveDg2L2luY2x1ZGUvYXNtL2RlYnVncmVnLmgKQEAg
LTc2LDYgKzc2LDI1IEBACiAgICAgX192YWw7ICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCiB9KQogCisvKgor
ICogQXJjaGl0ZWN0dXJhbGx5LCAlZHJ7MC4uM30gY2FuIGhhdmUgYW55IGFy
Yml0cmFyeSB2YWx1ZS4gIEhvd2V2ZXIsIFhlbgorICogY2FuJ3QgYWxsb3cg
dGhlIGd1ZXN0IHRvIGJyZWFrcG9pbnQgdGhlIFhlbiBhZGRyZXNzIHJhbmdl
LCBzbyB3ZSBsaW1pdCB0aGUKKyAqIGd1ZXN0IHRvIHRoZSBsb3dlciBjYW5v
bmljYWwgaGFsZiwgb3IgYWJvdmUgdGhlIFhlbiByYW5nZSBpbiB0aGUgaGln
aGVyCisgKiBjYW5vbmljYWwgaGFsZi4KKyAqCisgKiBCcmVha3BvaW50IGxl
bmd0aHMgYXJlIHNwZWNpZmllZCB0byBtYXNrIHRoZSBsb3cgb3JkZXIgYWRk
cmVzcyBiaXRzLAorICogbWVhbmluZyBhbGwgYnJlYWtwb2ludHMgYXJlIG5h
dHVyYWxseSBhbGlnbmVkLiAgV2l0aCAlZHI3LCB0aGUgd2lkZXN0CisgKiBi
cmVha3BvaW50IGlzIDggYnl0ZXMuICBXaXRoIERCRVhULCB0aGUgd2lkZXN0
IGJyZWFrcG9pbnQgaXMgNEcuICBCb3RoIG9mCisgKiB0aGUgWGVuIGJvdW5k
YXJpZXMgaGF2ZSA+NEcgYWxpZ25tZW50LgorICoKKyAqIEluIHByaW5jaXBs
ZSB3ZSBzaG91bGQgYWNjb3VudCBmb3IgSFlQRVJWSVNPUl9DT01QQVRfVklS
VF9TVEFSVChkKSwgYnV0CisgKiA2NGJpdCBYZW4gaGFzIG5ldmVyIGVuZm9y
Y2VkIHRoaXMgZm9yIGNvbXBhdCBndWVzdHMsIGFuZCB0aGVyZSdzIG5vIHBy
b2JsZW0KKyAqICh0byBYZW4pIGlmIHRoZSBndWVzdCBicmVha3BvaW50cyBp
dCdzIGFsaWFzIG9mIHRoZSBNMlAuICBTa2lwcGluZyB0aGlzCisgKiBhc3Bl
Y3Qgc2ltcGxpZmllcyB0aGUgbG9naWMsIGFuZCBjYXVzZXMgdXMgbm90IHRv
IHJlamVjdCBhIG1pZ3JhdGluZyBndWVzdAorICogd2hpY2ggb3BlcmF0ZWQg
ZmluZSBvbiBwcmlvciB2ZXJzaW9ucyBvZiBYZW4uCisgKi8KKyNkZWZpbmUg
YnJlYWtwb2ludF9hZGRyX29rKGEpIF9fYWRkcl9vayhhKQorCiBzdHJ1Y3Qg
dmNwdTsKIGxvbmcgc2V0X2RlYnVncmVnKHN0cnVjdCB2Y3B1ICosIHVuc2ln
bmVkIGludCByZWcsIHVuc2lnbmVkIGxvbmcgdmFsdWUpOwogdm9pZCBhY3Rp
dmF0ZV9kZWJ1Z3JlZ3MoY29uc3Qgc3RydWN0IHZjcHUgKik7CmRpZmYgLS1n
aXQgYS94ZW4vYXJjaC94ODYvcHYvbWlzYy1oeXBlcmNhbGxzLmMgYi94ZW4v
YXJjaC94ODYvcHYvbWlzYy1oeXBlcmNhbGxzLmMKaW5kZXggOTlmNTAyODEy
ODY4Li5iNTI5ZjAwZWExMjcgMTAwNjQ0Ci0tLSBhL3hlbi9hcmNoL3g4Ni9w
di9taXNjLWh5cGVyY2FsbHMuYworKysgYi94ZW4vYXJjaC94ODYvcHYvbWlz
Yy1oeXBlcmNhbGxzLmMKQEAgLTYxLDcgKzYxLDcgQEAgbG9uZyBzZXRfZGVi
dWdyZWcoc3RydWN0IHZjcHUgKnYsIHVuc2lnbmVkIGludCByZWcsIHVuc2ln
bmVkIGxvbmcgdmFsdWUpCiAgICAgc3dpdGNoICggcmVnICkKICAgICB7CiAg
ICAgY2FzZSAwIC4uLiAzOgotICAgICAgICBpZiAoICFhY2Nlc3Nfb2sodmFs
dWUsIHNpemVvZihsb25nKSkgKQorICAgICAgICBpZiAoICFicmVha3BvaW50
X2FkZHJfb2sodmFsdWUpICkKICAgICAgICAgICAgIHJldHVybiAtRVBFUk07
CiAKICAgICAgICAgdi0+YXJjaC5kcltyZWddID0gdmFsdWU7Cg==

--=separator
Content-Type: application/octet-stream; name="xsa444-4.16-1.patch"
Content-Disposition: attachment; filename="xsa444-4.16-1.patch"
Content-Transfer-Encoding: base64

RnJvbTogQW5kcmV3IENvb3BlciA8YW5kcmV3LmNvb3BlcjNAY2l0cml4LmNv
bT4KU3ViamVjdDogeDg2L3N2bTogRml4IGFzeW1tZXRyeSB3aXRoIEFNRCBE
UiBNQVNLIGNvbnRleHQgc3dpdGNoaW5nCgpUaGUgaGFuZGxpbmcgb2YgTVNS
X0RSezAuLjN9X01BU0sgaXMgYXN5bW1ldHJpYyBiZXR3ZWVuIFBWIGFuZCBI
Vk0gZ3Vlc3RzLgoKSFZNIGd1ZXN0cyBjb250ZXh0IHN3aXRjaCBpbiBiYXNl
ZCBvbiB0aGUgZ3Vlc3QgdmlldyBvZiBEQkVYVCwgd2hlcmVhcyBQVgpndWVz
dCBzd2l0Y2ggaW4gYmFzZSBvbiB0aGUgaG9zdCBjYXBhYmlsaXR5LiAgQm90
aCBndWVzdCB0eXBlcyBsZWF2ZSB0aGUKY29udGV4dCBkaXJ0eSBmb3IgdGhl
IG5leHQgdkNQVS4KClRoaXMgbGVhZHMgdG8gdGhlIGZvbGxvd2luZyBpc3N1
ZToKCiAqIFBWIG9yIEhWTSBndWVzdCBoYXMgZGVidWdnaW5nIGFjdGl2ZSAo
JWRyNyArIG1hc2spCiAqIFN3aXRjaC1vdXQgZGVhY3RpdmF0ZXMgJWRyNyBi
dXQgbGVhdmVzIG90aGVyIHN0YXRlIHN0YWxlIGluIGhhcmR3YXJlCiAqIEFu
b3RoZXIgSFZNIGd1ZXN0IHdpdGggbWFza3MgdW5hdmFpbGFibGUgaGFzIGRl
YnVnZ2luZyBhY3RpdmUKICogU3dpdGNoIGluIGxvYWRzICVkcjcgYnV0IGxl
YXZlcyB0aGUgbWFzayBNU1JzIGFsb25lCgpOb3csIHRoZSBzZWNvbmQgZ3Vl
c3QncyB2Q1BVIGlzIG9wZXJhdGluZyBpbiB0aGUgY29udGV4dCBvZiB0aGUg
cHJpb3IgdkNQVSdzCm1hc2sgTVNSLCB3aGlsZSB0aGUgZW52aXJvbm1lbnQg
dGhlIHZDUFUgY2FuIHNlZSBzYXlzIHRoZXJlIGFyZSBubyBtYXNrIE1TUnMu
CgpBcyBhIHN0b3BnYXAsIGFkanVzdCB0aGUgSFZNIHBhdGggdG8gc3dpdGNo
IGluIHRoZSBtYXNrcyBiYXNlZCBvbiBob3N0CmNhcGFiaWxpdGllcyByYXRo
ZXIgdGhhbiBndWVzdCB2aXNpYmlsaXR5IChpLmUuIGxpa2UgdGhlIFBWIHBh
dGgpLiAgQWRqdXN0bWVudApvZiB0aGUgaW50ZXJjZXB0cyBzdGlsbCBuZWVk
cyB0byBiZSBkZXBlbmRlbnQgb24gdGhlIGd1ZXN0IHZpc2liaWxpdHkgb2YK
REJFWFQuCgpUaGlzIGlzIHBhcnQgb2YgWFNBLTQ0NCAvIENWRS0yMDIzLTM0
MzI3CgpGaXhlczogYzA5N2Y1NDkxMmQzICgieDg2L1NWTTogc3VwcG9ydCBk
YXRhIGJyZWFrcG9pbnQgZXh0ZW5zaW9uIHJlZ2lzdGVycyIpClNpZ25lZC1v
ZmYtYnk6IEFuZHJldyBDb29wZXIgPGFuZHJldy5jb29wZXIzQGNpdHJpeC5j
b20+ClJldmlld2VkLWJ5OiBKYW4gQmV1bGljaCA8amJldWxpY2hAc3VzZS5j
b20+CgpkaWZmIC0tZ2l0IGEveGVuL2FyY2gveDg2L2h2bS9zdm0vc3ZtLmMg
Yi94ZW4vYXJjaC94ODYvaHZtL3N2bS9zdm0uYwppbmRleCBhMDE5ZDE5NmUw
NzEuLmJhNDA2OWY5MTAwYSAxMDA2NDQKLS0tIGEveGVuL2FyY2gveDg2L2h2
bS9zdm0vc3ZtLmMKKysrIGIveGVuL2FyY2gveDg2L2h2bS9zdm0vc3ZtLmMK
QEAgLTE4NSw2ICsxODUsMTAgQEAgc3RhdGljIHZvaWQgc3ZtX3NhdmVfZHIo
c3RydWN0IHZjcHUgKnYpCiAgICAgdi0+YXJjaC5odm0uZmxhZ19kcl9kaXJ0
eSA9IDA7CiAgICAgdm1jYl9zZXRfZHJfaW50ZXJjZXB0cyh2bWNiLCB+MHUp
OwogCisgICAgLyoKKyAgICAgKiBUaGUgZ3Vlc3QgY2FuIG9ubHkgaGF2ZSBj
aGFuZ2VkIHRoZSBtYXNrIE1TUnMgaWYgd2UgcHJldmlvdXMgZHJvcHBlZAor
ICAgICAqIGludGVyY2VwdHMuICBSZS1yZWFkIHRoZW0gZnJvbSBoYXJkd2Fy
ZS4KKyAgICAgKi8KICAgICBpZiAoIHYtPmRvbWFpbi0+YXJjaC5jcHVpZC0+
ZXh0ZC5kYmV4dCApCiAgICAgewogICAgICAgICBzdm1faW50ZXJjZXB0X21z
cih2LCBNU1JfQU1ENjRfRFIwX0FERFJFU1NfTUFTSywgTVNSX0lOVEVSQ0VQ
VF9SVyk7CkBAIC0yMTYsMTcgKzIyMCwyNSBAQCBzdGF0aWMgdm9pZCBfX3Jl
c3RvcmVfZGVidWdfcmVnaXN0ZXJzKHN0cnVjdCB2bWNiX3N0cnVjdCAqdm1j
Yiwgc3RydWN0IHZjcHUgKnYpCiAKICAgICBBU1NFUlQodiA9PSBjdXJyZW50
KTsKIAotICAgIGlmICggdi0+ZG9tYWluLT5hcmNoLmNwdWlkLT5leHRkLmRi
ZXh0ICkKKyAgICAvKgorICAgICAqIEJvdGggdGhlIFBWIGFuZCBIVk0gcGF0
aHMgbGVhdmUgc3RhbGUgRFJfTUFTSyB2YWx1ZXMgaW4gaGFyZHdhcmUgb24K
KyAgICAgKiBjb250ZXh0LXN3aXRjaC1vdXQuICBJZiB3ZSdyZSBhY3RpdmF0
aW5nICVkcjcgZm9yIHRoZSBndWVzdCwgd2UgbXVzdAorICAgICAqIHN5bmMg
dGhlIERSX01BU0tzIHRvbywgd2hldGhlciBvciBub3QgdGhlIGd1ZXN0IGNh
biBzZWUgdGhlbS4KKyAgICAgKi8KKyAgICBpZiAoIGJvb3RfY3B1X2hhcyhY
ODZfRkVBVFVSRV9EQkVYVCkgKQogICAgIHsKLSAgICAgICAgc3ZtX2ludGVy
Y2VwdF9tc3IodiwgTVNSX0FNRDY0X0RSMF9BRERSRVNTX01BU0ssIE1TUl9J
TlRFUkNFUFRfTk9ORSk7Ci0gICAgICAgIHN2bV9pbnRlcmNlcHRfbXNyKHYs
IE1TUl9BTUQ2NF9EUjFfQUREUkVTU19NQVNLLCBNU1JfSU5URVJDRVBUX05P
TkUpOwotICAgICAgICBzdm1faW50ZXJjZXB0X21zcih2LCBNU1JfQU1ENjRf
RFIyX0FERFJFU1NfTUFTSywgTVNSX0lOVEVSQ0VQVF9OT05FKTsKLSAgICAg
ICAgc3ZtX2ludGVyY2VwdF9tc3IodiwgTVNSX0FNRDY0X0RSM19BRERSRVNT
X01BU0ssIE1TUl9JTlRFUkNFUFRfTk9ORSk7Ci0KICAgICAgICAgd3Jtc3Js
KE1TUl9BTUQ2NF9EUjBfQUREUkVTU19NQVNLLCB2LT5hcmNoLm1zcnMtPmRy
X21hc2tbMF0pOwogICAgICAgICB3cm1zcmwoTVNSX0FNRDY0X0RSMV9BRERS
RVNTX01BU0ssIHYtPmFyY2gubXNycy0+ZHJfbWFza1sxXSk7CiAgICAgICAg
IHdybXNybChNU1JfQU1ENjRfRFIyX0FERFJFU1NfTUFTSywgdi0+YXJjaC5t
c3JzLT5kcl9tYXNrWzJdKTsKICAgICAgICAgd3Jtc3JsKE1TUl9BTUQ2NF9E
UjNfQUREUkVTU19NQVNLLCB2LT5hcmNoLm1zcnMtPmRyX21hc2tbM10pOwor
CisgICAgICAgIGlmICggdi0+ZG9tYWluLT5hcmNoLmNwdWlkLT5leHRkLmRi
ZXh0ICkKKyAgICAgICAgeworICAgICAgICAgICAgc3ZtX2ludGVyY2VwdF9t
c3IodiwgTVNSX0FNRDY0X0RSMF9BRERSRVNTX01BU0ssIE1TUl9JTlRFUkNF
UFRfTk9ORSk7CisgICAgICAgICAgICBzdm1faW50ZXJjZXB0X21zcih2LCBN
U1JfQU1ENjRfRFIxX0FERFJFU1NfTUFTSywgTVNSX0lOVEVSQ0VQVF9OT05F
KTsKKyAgICAgICAgICAgIHN2bV9pbnRlcmNlcHRfbXNyKHYsIE1TUl9BTUQ2
NF9EUjJfQUREUkVTU19NQVNLLCBNU1JfSU5URVJDRVBUX05PTkUpOworICAg
ICAgICAgICAgc3ZtX2ludGVyY2VwdF9tc3IodiwgTVNSX0FNRDY0X0RSM19B
RERSRVNTX01BU0ssIE1TUl9JTlRFUkNFUFRfTk9ORSk7CisgICAgICAgIH0K
ICAgICB9CiAKICAgICB3cml0ZV9kZWJ1Z3JlZygwLCB2LT5hcmNoLmRyWzBd
KTsKZGlmZiAtLWdpdCBhL3hlbi9hcmNoL3g4Ni90cmFwcy5jIGIveGVuL2Fy
Y2gveDg2L3RyYXBzLmMKaW5kZXggZjc5OTJmZjIzMGI1Li5hMTQyYTYzZGQ4
NjkgMTAwNjQ0Ci0tLSBhL3hlbi9hcmNoL3g4Ni90cmFwcy5jCisrKyBiL3hl
bi9hcmNoL3g4Ni90cmFwcy5jCkBAIC0yMzE0LDYgKzIzMTQsMTEgQEAgdm9p
ZCBhY3RpdmF0ZV9kZWJ1Z3JlZ3MoY29uc3Qgc3RydWN0IHZjcHUgKmN1cnIp
CiAgICAgaWYgKCBjdXJyLT5hcmNoLmRyNyAmIERSN19BQ1RJVkVfTUFTSyAp
CiAgICAgICAgIHdyaXRlX2RlYnVncmVnKDcsIGN1cnItPmFyY2guZHI3KTsK
IAorICAgIC8qCisgICAgICogQm90aCB0aGUgUFYgYW5kIEhWTSBwYXRocyBs
ZWF2ZSBzdGFsZSBEUl9NQVNLIHZhbHVlcyBpbiBoYXJkd2FyZSBvbgorICAg
ICAqIGNvbnRleHQtc3dpdGNoLW91dC4gIElmIHdlJ3JlIGFjdGl2YXRpbmcg
JWRyNyBmb3IgdGhlIGd1ZXN0LCB3ZSBtdXN0CisgICAgICogc3luYyB0aGUg
RFJfTUFTS3MgdG9vLCB3aGV0aGVyIG9yIG5vdCB0aGUgZ3Vlc3QgY2FuIHNl
ZSB0aGVtLgorICAgICAqLwogICAgIGlmICggYm9vdF9jcHVfaGFzKFg4Nl9G
RUFUVVJFX0RCRVhUKSApCiAgICAgewogICAgICAgICB3cm1zcmwoTVNSX0FN
RDY0X0RSMF9BRERSRVNTX01BU0ssIGN1cnItPmFyY2gubXNycy0+ZHJfbWFz
a1swXSk7Cg==

--=separator
Content-Type: application/octet-stream; name="xsa444-4.16-2.patch"
Content-Disposition: attachment; filename="xsa444-4.16-2.patch"
Content-Transfer-Encoding: base64

RnJvbTogQW5kcmV3IENvb3BlciA8YW5kcmV3LmNvb3BlcjNAY2l0cml4LmNv
bT4KU3ViamVjdDogeDg2L3B2OiBDb3JyZWN0IHRoZSBhdWRpdGluZyBvZiBn
dWVzdCBicmVha3BvaW50IGFkZHJlc3NlcwoKVGhlIHVzZSBvZiBhY2Nlc3Nf
b2soKSBpcyBidWdneSwgYmVjYXVzZSBpdCBwZXJtaXRzIGFjY2VzcyB0byB0
aGUgY29tcGF0CnRyYW5zbGF0aW9uIGFyZWEuICA2NGJpdCBQViBndWVzdHMg
ZG9uJ3QgdXNlIHRoZSBYTEFUIGFyZWEsIGJ1dCBvbiBBTUQKaGFyZHdhcmUs
IHRoZSBEQkVYVCBmZWF0dXJlIGFsbG93cyBhIGJyZWFrcG9pbnQgdG8gbWF0
Y2ggdXAgdG8gYSA0RyBhbGlnbmVkCnJlZ2lvbiwgYWxsb3dpbmcgdGhlIGJy
ZWFrcG9pbnQgdG8gcmVhY2ggb3V0c2lkZSBvZiB0aGUgWExBVCBhcmVhLgoK
UHJpb3IgdG8gYy9zIGNkYTE2YzFiYjIyMyAoIng4NjogbWlycm9yIGNvbXBh
dCBhcmd1bWVudCB0cmFuc2xhdGlvbiBhcmVhIGZvcgozMi1iaXQgUFYiKSwg
dGhlIGxpdmUgR0RUIHdhcyB3aXRoaW4gNEcgb2YgdGhlIFhMQVQgYXJlYS4K
CkFsbCB0b2dldGhlciwgdGhpcyBhbGxvd2VkIGEgbWFsaWNpb3VzIDY0Yml0
IFBWIGd1ZXN0IG9uIEFNRCBoYXJkd2FyZSB0byBwbGFjZQphIGJyZWFrcG9p
bnQgb3ZlciB0aGUgbGl2ZSBHRFQsIGFuZCB0cmlnZ2VyIGEgI0RCIGxpdmVs
b2NrIChDVkUtMjAxNS04MTA0KS4KCkludHJvZHVjZSBicmVha3BvaW50X2Fk
ZHJfb2soKSBhbmQgZXhwbGFpbiB3aHkgX19hZGRyX29rKCkgaGFwcGVucyB0
byBiZSBhbgphcHByb3ByaWF0ZSBjaGVjayBpbiB0aGlzIGNhc2UuCgpGb3Ig
WGVuIDQuMTQgYW5kIGxhdGVyLCB0aGlzIGlzIGEgbGF0ZW50IGJ1ZyBiZWNh
dXNlIHRoZSBYTEFUIGFyZWEgaGFzIG1vdmVkCnRvIGJlIG9uIGl0cyBvd24g
d2l0aCBub3RoaW5nIGludGVyZXN0aW5nIGFkamFjZW50LiAgRm9yIFhlbiA0
LjEzIGFuZCBvbGRlciBvbgpBTUQgaGFyZHdhcmUsIHRoaXMgZml4ZXMgYSBQ
Vi10cmlnZ2VyLWFibGUgRG9TLgoKVGhpcyBpcyBwYXJ0IG9mIFhTQS00NDQg
LyBDVkUtMjAyMy0zNDMyOC4KCkZpeGVzOiA2NWUzNTU0OTA4MTcgKCJ4ODYv
UFY6IHN1cHBvcnQgZGF0YSBicmVha3BvaW50IGV4dGVuc2lvbiByZWdpc3Rl
cnMiKQpTaWduZWQtb2ZmLWJ5OiBBbmRyZXcgQ29vcGVyIDxhbmRyZXcuY29v
cGVyM0BjaXRyaXguY29tPgpSZXZpZXdlZC1ieTogUm9nZXIgUGF1IE1vbm7D
qSA8cm9nZXIucGF1QGNpdHJpeC5jb20+ClJldmlld2VkLWJ5OiBKYW4gQmV1
bGljaCA8amJldWxpY2hAc3VzZS5jb20+CgpkaWZmIC0tZ2l0IGEveGVuL2Fy
Y2gveDg2L3B2L21pc2MtaHlwZXJjYWxscy5jIGIveGVuL2FyY2gveDg2L3B2
L21pc2MtaHlwZXJjYWxscy5jCmluZGV4IDVkYWRlMjQ3MjY4Ny4uNjgxYzE2
MTA4ZmQxIDEwMDY0NAotLS0gYS94ZW4vYXJjaC94ODYvcHYvbWlzYy1oeXBl
cmNhbGxzLmMKKysrIGIveGVuL2FyY2gveDg2L3B2L21pc2MtaHlwZXJjYWxs
cy5jCkBAIC02OCw3ICs2OCw3IEBAIGxvbmcgc2V0X2RlYnVncmVnKHN0cnVj
dCB2Y3B1ICp2LCB1bnNpZ25lZCBpbnQgcmVnLCB1bnNpZ25lZCBsb25nIHZh
bHVlKQogICAgIHN3aXRjaCAoIHJlZyApCiAgICAgewogICAgIGNhc2UgMCAu
Li4gMzoKLSAgICAgICAgaWYgKCAhYWNjZXNzX29rKHZhbHVlLCBzaXplb2Yo
bG9uZykpICkKKyAgICAgICAgaWYgKCAhYnJlYWtwb2ludF9hZGRyX29rKHZh
bHVlKSApCiAgICAgICAgICAgICByZXR1cm4gLUVQRVJNOwogCiAgICAgICAg
IHYtPmFyY2guZHJbcmVnXSA9IHZhbHVlOwpkaWZmIC0tZ2l0IGEveGVuL2lu
Y2x1ZGUvYXNtLXg4Ni9kZWJ1Z3JlZy5oIGIveGVuL2luY2x1ZGUvYXNtLXg4
Ni9kZWJ1Z3JlZy5oCmluZGV4IGM1NzkxNGVmYzZlOC4uY2MyOTgyNjUyNDRi
IDEwMDY0NAotLS0gYS94ZW4vaW5jbHVkZS9hc20teDg2L2RlYnVncmVnLmgK
KysrIGIveGVuL2luY2x1ZGUvYXNtLXg4Ni9kZWJ1Z3JlZy5oCkBAIC03Nyw2
ICs3NywyNiBAQAogICAgIGFzbSB2b2xhdGlsZSAoICJtb3YgJSVkYiIgI3Jl
ZyAiLCUwIiA6ICI9ciIgKF9fdmFsKSApOyAgXAogICAgIF9fdmFsOyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
XAogfSkKKworLyoKKyAqIEFyY2hpdGVjdHVyYWxseSwgJWRyezAuLjN9IGNh
biBoYXZlIGFueSBhcmJpdHJhcnkgdmFsdWUuICBIb3dldmVyLCBYZW4KKyAq
IGNhbid0IGFsbG93IHRoZSBndWVzdCB0byBicmVha3BvaW50IHRoZSBYZW4g
YWRkcmVzcyByYW5nZSwgc28gd2UgbGltaXQgdGhlCisgKiBndWVzdCB0byB0
aGUgbG93ZXIgY2Fub25pY2FsIGhhbGYsIG9yIGFib3ZlIHRoZSBYZW4gcmFu
Z2UgaW4gdGhlIGhpZ2hlcgorICogY2Fub25pY2FsIGhhbGYuCisgKgorICog
QnJlYWtwb2ludCBsZW5ndGhzIGFyZSBzcGVjaWZpZWQgdG8gbWFzayB0aGUg
bG93IG9yZGVyIGFkZHJlc3MgYml0cywKKyAqIG1lYW5pbmcgYWxsIGJyZWFr
cG9pbnRzIGFyZSBuYXR1cmFsbHkgYWxpZ25lZC4gIFdpdGggJWRyNywgdGhl
IHdpZGVzdAorICogYnJlYWtwb2ludCBpcyA4IGJ5dGVzLiAgV2l0aCBEQkVY
VCwgdGhlIHdpZGVzdCBicmVha3BvaW50IGlzIDRHLiAgQm90aCBvZgorICog
dGhlIFhlbiBib3VuZGFyaWVzIGhhdmUgPjRHIGFsaWdubWVudC4KKyAqCisg
KiBJbiBwcmluY2lwbGUgd2Ugc2hvdWxkIGFjY291bnQgZm9yIEhZUEVSVklT
T1JfQ09NUEFUX1ZJUlRfU1RBUlQoZCksIGJ1dAorICogNjRiaXQgWGVuIGhh
cyBuZXZlciBlbmZvcmNlZCB0aGlzIGZvciBjb21wYXQgZ3Vlc3RzLCBhbmQg
dGhlcmUncyBubyBwcm9ibGVtCisgKiAodG8gWGVuKSBpZiB0aGUgZ3Vlc3Qg
YnJlYWtwb2ludHMgaXQncyBhbGlhcyBvZiB0aGUgTTJQLiAgU2tpcHBpbmcg
dGhpcworICogYXNwZWN0IHNpbXBsaWZpZXMgdGhlIGxvZ2ljLCBhbmQgY2F1
c2VzIHVzIG5vdCB0byByZWplY3QgYSBtaWdyYXRpbmcgZ3Vlc3QKKyAqIHdo
aWNoIG9wZXJhdGVkIGZpbmUgb24gcHJpb3IgdmVyc2lvbnMgb2YgWGVuLgor
ICovCisjZGVmaW5lIGJyZWFrcG9pbnRfYWRkcl9vayhhKSBfX2FkZHJfb2so
YSkKKwogbG9uZyBzZXRfZGVidWdyZWcoc3RydWN0IHZjcHUgKiwgdW5zaWdu
ZWQgaW50IHJlZywgdW5zaWduZWQgbG9uZyB2YWx1ZSk7CiB2b2lkIGFjdGl2
YXRlX2RlYnVncmVncyhjb25zdCBzdHJ1Y3QgdmNwdSAqKTsKIAo=

--=separator
Content-Type: application/octet-stream; name="xsa444-4.17-1.patch"
Content-Disposition: attachment; filename="xsa444-4.17-1.patch"
Content-Transfer-Encoding: base64

RnJvbTogQW5kcmV3IENvb3BlciA8YW5kcmV3LmNvb3BlcjNAY2l0cml4LmNv
bT4KU3ViamVjdDogeDg2L3N2bTogRml4IGFzeW1tZXRyeSB3aXRoIEFNRCBE
UiBNQVNLIGNvbnRleHQgc3dpdGNoaW5nCgpUaGUgaGFuZGxpbmcgb2YgTVNS
X0RSezAuLjN9X01BU0sgaXMgYXN5bW1ldHJpYyBiZXR3ZWVuIFBWIGFuZCBI
Vk0gZ3Vlc3RzLgoKSFZNIGd1ZXN0cyBjb250ZXh0IHN3aXRjaCBpbiBiYXNl
ZCBvbiB0aGUgZ3Vlc3QgdmlldyBvZiBEQkVYVCwgd2hlcmVhcyBQVgpndWVz
dCBzd2l0Y2ggaW4gYmFzZSBvbiB0aGUgaG9zdCBjYXBhYmlsaXR5LiAgQm90
aCBndWVzdCB0eXBlcyBsZWF2ZSB0aGUKY29udGV4dCBkaXJ0eSBmb3IgdGhl
IG5leHQgdkNQVS4KClRoaXMgbGVhZHMgdG8gdGhlIGZvbGxvd2luZyBpc3N1
ZToKCiAqIFBWIG9yIEhWTSBndWVzdCBoYXMgZGVidWdnaW5nIGFjdGl2ZSAo
JWRyNyArIG1hc2spCiAqIFN3aXRjaC1vdXQgZGVhY3RpdmF0ZXMgJWRyNyBi
dXQgbGVhdmVzIG90aGVyIHN0YXRlIHN0YWxlIGluIGhhcmR3YXJlCiAqIEFu
b3RoZXIgSFZNIGd1ZXN0IHdpdGggbWFza3MgdW5hdmFpbGFibGUgaGFzIGRl
YnVnZ2luZyBhY3RpdmUKICogU3dpdGNoIGluIGxvYWRzICVkcjcgYnV0IGxl
YXZlcyB0aGUgbWFzayBNU1JzIGFsb25lCgpOb3csIHRoZSBzZWNvbmQgZ3Vl
c3QncyB2Q1BVIGlzIG9wZXJhdGluZyBpbiB0aGUgY29udGV4dCBvZiB0aGUg
cHJpb3IgdkNQVSdzCm1hc2sgTVNSLCB3aGlsZSB0aGUgZW52aXJvbm1lbnQg
dGhlIHZDUFUgY2FuIHNlZSBzYXlzIHRoZXJlIGFyZSBubyBtYXNrIE1TUnMu
CgpBcyBhIHN0b3BnYXAsIGFkanVzdCB0aGUgSFZNIHBhdGggdG8gc3dpdGNo
IGluIHRoZSBtYXNrcyBiYXNlZCBvbiBob3N0CmNhcGFiaWxpdGllcyByYXRo
ZXIgdGhhbiBndWVzdCB2aXNpYmlsaXR5IChpLmUuIGxpa2UgdGhlIFBWIHBh
dGgpLiAgQWRqdXN0bWVudApvZiB0aGUgaW50ZXJjZXB0cyBzdGlsbCBuZWVk
cyB0byBiZSBkZXBlbmRlbnQgb24gdGhlIGd1ZXN0IHZpc2liaWxpdHkgb2YK
REJFWFQuCgpUaGlzIGlzIHBhcnQgb2YgWFNBLTQ0NCAvIENWRS0yMDIzLTM0
MzI3CgpGaXhlczogYzA5N2Y1NDkxMmQzICgieDg2L1NWTTogc3VwcG9ydCBk
YXRhIGJyZWFrcG9pbnQgZXh0ZW5zaW9uIHJlZ2lzdGVycyIpClNpZ25lZC1v
ZmYtYnk6IEFuZHJldyBDb29wZXIgPGFuZHJldy5jb29wZXIzQGNpdHJpeC5j
b20+ClJldmlld2VkLWJ5OiBKYW4gQmV1bGljaCA8amJldWxpY2hAc3VzZS5j
b20+CgpkaWZmIC0tZ2l0IGEveGVuL2FyY2gveDg2L2h2bS9zdm0vc3ZtLmMg
Yi94ZW4vYXJjaC94ODYvaHZtL3N2bS9zdm0uYwppbmRleCBlOGY1MGU3YzVl
YzcuLmZkMzI2MDBhZTM2NCAxMDA2NDQKLS0tIGEveGVuL2FyY2gveDg2L2h2
bS9zdm0vc3ZtLmMKKysrIGIveGVuL2FyY2gveDg2L2h2bS9zdm0vc3ZtLmMK
QEAgLTMzOSw2ICszMzksMTAgQEAgc3RhdGljIHZvaWQgc3ZtX3NhdmVfZHIo
c3RydWN0IHZjcHUgKnYpCiAgICAgdi0+YXJjaC5odm0uZmxhZ19kcl9kaXJ0
eSA9IDA7CiAgICAgdm1jYl9zZXRfZHJfaW50ZXJjZXB0cyh2bWNiLCB+MHUp
OwogCisgICAgLyoKKyAgICAgKiBUaGUgZ3Vlc3QgY2FuIG9ubHkgaGF2ZSBj
aGFuZ2VkIHRoZSBtYXNrIE1TUnMgaWYgd2UgcHJldmlvdXMgZHJvcHBlZAor
ICAgICAqIGludGVyY2VwdHMuICBSZS1yZWFkIHRoZW0gZnJvbSBoYXJkd2Fy
ZS4KKyAgICAgKi8KICAgICBpZiAoIHYtPmRvbWFpbi0+YXJjaC5jcHVpZC0+
ZXh0ZC5kYmV4dCApCiAgICAgewogICAgICAgICBzdm1faW50ZXJjZXB0X21z
cih2LCBNU1JfQU1ENjRfRFIwX0FERFJFU1NfTUFTSywgTVNSX0lOVEVSQ0VQ
VF9SVyk7CkBAIC0zNzAsMTcgKzM3NCwyNSBAQCBzdGF0aWMgdm9pZCBfX3Jl
c3RvcmVfZGVidWdfcmVnaXN0ZXJzKHN0cnVjdCB2bWNiX3N0cnVjdCAqdm1j
Yiwgc3RydWN0IHZjcHUgKnYpCiAKICAgICBBU1NFUlQodiA9PSBjdXJyZW50
KTsKIAotICAgIGlmICggdi0+ZG9tYWluLT5hcmNoLmNwdWlkLT5leHRkLmRi
ZXh0ICkKKyAgICAvKgorICAgICAqIEJvdGggdGhlIFBWIGFuZCBIVk0gcGF0
aHMgbGVhdmUgc3RhbGUgRFJfTUFTSyB2YWx1ZXMgaW4gaGFyZHdhcmUgb24K
KyAgICAgKiBjb250ZXh0LXN3aXRjaC1vdXQuICBJZiB3ZSdyZSBhY3RpdmF0
aW5nICVkcjcgZm9yIHRoZSBndWVzdCwgd2UgbXVzdAorICAgICAqIHN5bmMg
dGhlIERSX01BU0tzIHRvbywgd2hldGhlciBvciBub3QgdGhlIGd1ZXN0IGNh
biBzZWUgdGhlbS4KKyAgICAgKi8KKyAgICBpZiAoIGJvb3RfY3B1X2hhcyhY
ODZfRkVBVFVSRV9EQkVYVCkgKQogICAgIHsKLSAgICAgICAgc3ZtX2ludGVy
Y2VwdF9tc3IodiwgTVNSX0FNRDY0X0RSMF9BRERSRVNTX01BU0ssIE1TUl9J
TlRFUkNFUFRfTk9ORSk7Ci0gICAgICAgIHN2bV9pbnRlcmNlcHRfbXNyKHYs
IE1TUl9BTUQ2NF9EUjFfQUREUkVTU19NQVNLLCBNU1JfSU5URVJDRVBUX05P
TkUpOwotICAgICAgICBzdm1faW50ZXJjZXB0X21zcih2LCBNU1JfQU1ENjRf
RFIyX0FERFJFU1NfTUFTSywgTVNSX0lOVEVSQ0VQVF9OT05FKTsKLSAgICAg
ICAgc3ZtX2ludGVyY2VwdF9tc3IodiwgTVNSX0FNRDY0X0RSM19BRERSRVNT
X01BU0ssIE1TUl9JTlRFUkNFUFRfTk9ORSk7Ci0KICAgICAgICAgd3Jtc3Js
KE1TUl9BTUQ2NF9EUjBfQUREUkVTU19NQVNLLCB2LT5hcmNoLm1zcnMtPmRy
X21hc2tbMF0pOwogICAgICAgICB3cm1zcmwoTVNSX0FNRDY0X0RSMV9BRERS
RVNTX01BU0ssIHYtPmFyY2gubXNycy0+ZHJfbWFza1sxXSk7CiAgICAgICAg
IHdybXNybChNU1JfQU1ENjRfRFIyX0FERFJFU1NfTUFTSywgdi0+YXJjaC5t
c3JzLT5kcl9tYXNrWzJdKTsKICAgICAgICAgd3Jtc3JsKE1TUl9BTUQ2NF9E
UjNfQUREUkVTU19NQVNLLCB2LT5hcmNoLm1zcnMtPmRyX21hc2tbM10pOwor
CisgICAgICAgIGlmICggdi0+ZG9tYWluLT5hcmNoLmNwdWlkLT5leHRkLmRi
ZXh0ICkKKyAgICAgICAgeworICAgICAgICAgICAgc3ZtX2ludGVyY2VwdF9t
c3IodiwgTVNSX0FNRDY0X0RSMF9BRERSRVNTX01BU0ssIE1TUl9JTlRFUkNF
UFRfTk9ORSk7CisgICAgICAgICAgICBzdm1faW50ZXJjZXB0X21zcih2LCBN
U1JfQU1ENjRfRFIxX0FERFJFU1NfTUFTSywgTVNSX0lOVEVSQ0VQVF9OT05F
KTsKKyAgICAgICAgICAgIHN2bV9pbnRlcmNlcHRfbXNyKHYsIE1TUl9BTUQ2
NF9EUjJfQUREUkVTU19NQVNLLCBNU1JfSU5URVJDRVBUX05PTkUpOworICAg
ICAgICAgICAgc3ZtX2ludGVyY2VwdF9tc3IodiwgTVNSX0FNRDY0X0RSM19B
RERSRVNTX01BU0ssIE1TUl9JTlRFUkNFUFRfTk9ORSk7CisgICAgICAgIH0K
ICAgICB9CiAKICAgICB3cml0ZV9kZWJ1Z3JlZygwLCB2LT5hcmNoLmRyWzBd
KTsKZGlmZiAtLWdpdCBhL3hlbi9hcmNoL3g4Ni90cmFwcy5jIGIveGVuL2Fy
Y2gveDg2L3RyYXBzLmMKaW5kZXggZTY1Y2M2MDA0MTQ4Li4wNmM0ZjM4Njhi
N2EgMTAwNjQ0Ci0tLSBhL3hlbi9hcmNoL3g4Ni90cmFwcy5jCisrKyBiL3hl
bi9hcmNoL3g4Ni90cmFwcy5jCkBAIC0yMjgxLDYgKzIyODEsMTEgQEAgdm9p
ZCBhY3RpdmF0ZV9kZWJ1Z3JlZ3MoY29uc3Qgc3RydWN0IHZjcHUgKmN1cnIp
CiAgICAgaWYgKCBjdXJyLT5hcmNoLmRyNyAmIERSN19BQ1RJVkVfTUFTSyAp
CiAgICAgICAgIHdyaXRlX2RlYnVncmVnKDcsIGN1cnItPmFyY2guZHI3KTsK
IAorICAgIC8qCisgICAgICogQm90aCB0aGUgUFYgYW5kIEhWTSBwYXRocyBs
ZWF2ZSBzdGFsZSBEUl9NQVNLIHZhbHVlcyBpbiBoYXJkd2FyZSBvbgorICAg
ICAqIGNvbnRleHQtc3dpdGNoLW91dC4gIElmIHdlJ3JlIGFjdGl2YXRpbmcg
JWRyNyBmb3IgdGhlIGd1ZXN0LCB3ZSBtdXN0CisgICAgICogc3luYyB0aGUg
RFJfTUFTS3MgdG9vLCB3aGV0aGVyIG9yIG5vdCB0aGUgZ3Vlc3QgY2FuIHNl
ZSB0aGVtLgorICAgICAqLwogICAgIGlmICggYm9vdF9jcHVfaGFzKFg4Nl9G
RUFUVVJFX0RCRVhUKSApCiAgICAgewogICAgICAgICB3cm1zcmwoTVNSX0FN
RDY0X0RSMF9BRERSRVNTX01BU0ssIGN1cnItPmFyY2gubXNycy0+ZHJfbWFz
a1swXSk7Cg==

--=separator
Content-Type: application/octet-stream; name="xsa444-4.17-2.patch"
Content-Disposition: attachment; filename="xsa444-4.17-2.patch"
Content-Transfer-Encoding: base64

RnJvbTogQW5kcmV3IENvb3BlciA8YW5kcmV3LmNvb3BlcjNAY2l0cml4LmNv
bT4KU3ViamVjdDogeDg2L3B2OiBDb3JyZWN0IHRoZSBhdWRpdGluZyBvZiBn
dWVzdCBicmVha3BvaW50IGFkZHJlc3NlcwoKVGhlIHVzZSBvZiBhY2Nlc3Nf
b2soKSBpcyBidWdneSwgYmVjYXVzZSBpdCBwZXJtaXRzIGFjY2VzcyB0byB0
aGUgY29tcGF0CnRyYW5zbGF0aW9uIGFyZWEuICA2NGJpdCBQViBndWVzdHMg
ZG9uJ3QgdXNlIHRoZSBYTEFUIGFyZWEsIGJ1dCBvbiBBTUQKaGFyZHdhcmUs
IHRoZSBEQkVYVCBmZWF0dXJlIGFsbG93cyBhIGJyZWFrcG9pbnQgdG8gbWF0
Y2ggdXAgdG8gYSA0RyBhbGlnbmVkCnJlZ2lvbiwgYWxsb3dpbmcgdGhlIGJy
ZWFrcG9pbnQgdG8gcmVhY2ggb3V0c2lkZSBvZiB0aGUgWExBVCBhcmVhLgoK
UHJpb3IgdG8gYy9zIGNkYTE2YzFiYjIyMyAoIng4NjogbWlycm9yIGNvbXBh
dCBhcmd1bWVudCB0cmFuc2xhdGlvbiBhcmVhIGZvcgozMi1iaXQgUFYiKSwg
dGhlIGxpdmUgR0RUIHdhcyB3aXRoaW4gNEcgb2YgdGhlIFhMQVQgYXJlYS4K
CkFsbCB0b2dldGhlciwgdGhpcyBhbGxvd2VkIGEgbWFsaWNpb3VzIDY0Yml0
IFBWIGd1ZXN0IG9uIEFNRCBoYXJkd2FyZSB0byBwbGFjZQphIGJyZWFrcG9p
bnQgb3ZlciB0aGUgbGl2ZSBHRFQsIGFuZCB0cmlnZ2VyIGEgI0RCIGxpdmVs
b2NrIChDVkUtMjAxNS04MTA0KS4KCkludHJvZHVjZSBicmVha3BvaW50X2Fk
ZHJfb2soKSBhbmQgZXhwbGFpbiB3aHkgX19hZGRyX29rKCkgaGFwcGVucyB0
byBiZSBhbgphcHByb3ByaWF0ZSBjaGVjayBpbiB0aGlzIGNhc2UuCgpGb3Ig
WGVuIDQuMTQgYW5kIGxhdGVyLCB0aGlzIGlzIGEgbGF0ZW50IGJ1ZyBiZWNh
dXNlIHRoZSBYTEFUIGFyZWEgaGFzIG1vdmVkCnRvIGJlIG9uIGl0cyBvd24g
d2l0aCBub3RoaW5nIGludGVyZXN0aW5nIGFkamFjZW50LiAgRm9yIFhlbiA0
LjEzIGFuZCBvbGRlciBvbgpBTUQgaGFyZHdhcmUsIHRoaXMgZml4ZXMgYSBQ
Vi10cmlnZ2VyLWFibGUgRG9TLgoKVGhpcyBpcyBwYXJ0IG9mIFhTQS00NDQg
LyBDVkUtMjAyMy0zNDMyOC4KCkZpeGVzOiA2NWUzNTU0OTA4MTcgKCJ4ODYv
UFY6IHN1cHBvcnQgZGF0YSBicmVha3BvaW50IGV4dGVuc2lvbiByZWdpc3Rl
cnMiKQpTaWduZWQtb2ZmLWJ5OiBBbmRyZXcgQ29vcGVyIDxhbmRyZXcuY29v
cGVyM0BjaXRyaXguY29tPgpSZXZpZXdlZC1ieTogUm9nZXIgUGF1IE1vbm7D
qSA8cm9nZXIucGF1QGNpdHJpeC5jb20+ClJldmlld2VkLWJ5OiBKYW4gQmV1
bGljaCA8amJldWxpY2hAc3VzZS5jb20+CgpkaWZmIC0tZ2l0IGEveGVuL2Fy
Y2gveDg2L2luY2x1ZGUvYXNtL2RlYnVncmVnLmggYi94ZW4vYXJjaC94ODYv
aW5jbHVkZS9hc20vZGVidWdyZWcuaAppbmRleCBjNTc5MTRlZmM2ZTguLmNj
Mjk4MjY1MjQ0YiAxMDA2NDQKLS0tIGEveGVuL2FyY2gveDg2L2luY2x1ZGUv
YXNtL2RlYnVncmVnLmgKKysrIGIveGVuL2FyY2gveDg2L2luY2x1ZGUvYXNt
L2RlYnVncmVnLmgKQEAgLTc3LDYgKzc3LDI2IEBACiAgICAgYXNtIHZvbGF0
aWxlICggIm1vdiAlJWRiIiAjcmVnICIsJTAiIDogIj1yIiAoX192YWwpICk7
ICBcCiAgICAgX192YWw7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBcCiB9KQorCisvKgorICogQXJjaGl0ZWN0
dXJhbGx5LCAlZHJ7MC4uM30gY2FuIGhhdmUgYW55IGFyYml0cmFyeSB2YWx1
ZS4gIEhvd2V2ZXIsIFhlbgorICogY2FuJ3QgYWxsb3cgdGhlIGd1ZXN0IHRv
IGJyZWFrcG9pbnQgdGhlIFhlbiBhZGRyZXNzIHJhbmdlLCBzbyB3ZSBsaW1p
dCB0aGUKKyAqIGd1ZXN0IHRvIHRoZSBsb3dlciBjYW5vbmljYWwgaGFsZiwg
b3IgYWJvdmUgdGhlIFhlbiByYW5nZSBpbiB0aGUgaGlnaGVyCisgKiBjYW5v
bmljYWwgaGFsZi4KKyAqCisgKiBCcmVha3BvaW50IGxlbmd0aHMgYXJlIHNw
ZWNpZmllZCB0byBtYXNrIHRoZSBsb3cgb3JkZXIgYWRkcmVzcyBiaXRzLAor
ICogbWVhbmluZyBhbGwgYnJlYWtwb2ludHMgYXJlIG5hdHVyYWxseSBhbGln
bmVkLiAgV2l0aCAlZHI3LCB0aGUgd2lkZXN0CisgKiBicmVha3BvaW50IGlz
IDggYnl0ZXMuICBXaXRoIERCRVhULCB0aGUgd2lkZXN0IGJyZWFrcG9pbnQg
aXMgNEcuICBCb3RoIG9mCisgKiB0aGUgWGVuIGJvdW5kYXJpZXMgaGF2ZSA+
NEcgYWxpZ25tZW50LgorICoKKyAqIEluIHByaW5jaXBsZSB3ZSBzaG91bGQg
YWNjb3VudCBmb3IgSFlQRVJWSVNPUl9DT01QQVRfVklSVF9TVEFSVChkKSwg
YnV0CisgKiA2NGJpdCBYZW4gaGFzIG5ldmVyIGVuZm9yY2VkIHRoaXMgZm9y
IGNvbXBhdCBndWVzdHMsIGFuZCB0aGVyZSdzIG5vIHByb2JsZW0KKyAqICh0
byBYZW4pIGlmIHRoZSBndWVzdCBicmVha3BvaW50cyBpdCdzIGFsaWFzIG9m
IHRoZSBNMlAuICBTa2lwcGluZyB0aGlzCisgKiBhc3BlY3Qgc2ltcGxpZmll
cyB0aGUgbG9naWMsIGFuZCBjYXVzZXMgdXMgbm90IHRvIHJlamVjdCBhIG1p
Z3JhdGluZyBndWVzdAorICogd2hpY2ggb3BlcmF0ZWQgZmluZSBvbiBwcmlv
ciB2ZXJzaW9ucyBvZiBYZW4uCisgKi8KKyNkZWZpbmUgYnJlYWtwb2ludF9h
ZGRyX29rKGEpIF9fYWRkcl9vayhhKQorCiBsb25nIHNldF9kZWJ1Z3JlZyhz
dHJ1Y3QgdmNwdSAqLCB1bnNpZ25lZCBpbnQgcmVnLCB1bnNpZ25lZCBsb25n
IHZhbHVlKTsKIHZvaWQgYWN0aXZhdGVfZGVidWdyZWdzKGNvbnN0IHN0cnVj
dCB2Y3B1ICopOwogCmRpZmYgLS1naXQgYS94ZW4vYXJjaC94ODYvcHYvbWlz
Yy1oeXBlcmNhbGxzLmMgYi94ZW4vYXJjaC94ODYvcHYvbWlzYy1oeXBlcmNh
bGxzLmMKaW5kZXggYWFhZjcwZWI2MzMwLi5mODYzNmRlOTA3YWUgMTAwNjQ0
Ci0tLSBhL3hlbi9hcmNoL3g4Ni9wdi9taXNjLWh5cGVyY2FsbHMuYworKysg
Yi94ZW4vYXJjaC94ODYvcHYvbWlzYy1oeXBlcmNhbGxzLmMKQEAgLTcyLDcg
KzcyLDcgQEAgbG9uZyBzZXRfZGVidWdyZWcoc3RydWN0IHZjcHUgKnYsIHVu
c2lnbmVkIGludCByZWcsIHVuc2lnbmVkIGxvbmcgdmFsdWUpCiAgICAgc3dp
dGNoICggcmVnICkKICAgICB7CiAgICAgY2FzZSAwIC4uLiAzOgotICAgICAg
ICBpZiAoICFhY2Nlc3Nfb2sodmFsdWUsIHNpemVvZihsb25nKSkgKQorICAg
ICAgICBpZiAoICFicmVha3BvaW50X2FkZHJfb2sodmFsdWUpICkKICAgICAg
ICAgICAgIHJldHVybiAtRVBFUk07CiAKICAgICAgICAgdi0+YXJjaC5kclty
ZWddID0gdmFsdWU7Cg==

--=separator--


From xen-devel-bounces@lists.xenproject.org Tue Oct 10 12:26:51 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 10 Oct 2023 12:26:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.614990.956181 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqBow-0006h8-Bq; Tue, 10 Oct 2023 12:26:42 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 614990.956181; Tue, 10 Oct 2023 12:26: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 1qqBow-0006h1-8J; Tue, 10 Oct 2023 12:26:42 +0000
Received: by outflank-mailman (input) for mailman id 614990;
 Tue, 10 Oct 2023 12:26: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 1qqBov-0006gr-I8; Tue, 10 Oct 2023 12:26: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 1qqBov-0008Sv-Gb; Tue, 10 Oct 2023 12:26: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 1qqBov-0004ma-0i; Tue, 10 Oct 2023 12:26:41 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qqBov-0008BN-0J; Tue, 10 Oct 2023 12:26: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=JGiitwb1lFKoJ95WkBgMBrZqSoR2nKO95XEIwL64m+8=; b=N/9SAwjRT3wwK0Mw3rM5e1T+VM
	lZybBO2khCZVxys7yiwopubIJ6xxp5GsngOX18+jvFvSeSMivwGGGxlXkGlsG3wNV8I+L0WvPPGb+
	q9NDnrkEIYjvE0viwC4oa35+bMUFeLcGWVhozbAUQVik32OdPy/XfREvTVKP1c4ZzZCk=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183331-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 183331: 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=c035151902689aa5a3765aeb16fa52755917b9ca
X-Osstest-Versions-That:
    xen=ffa1437686712045953c33c5e77a4ebdd9973916
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 10 Oct 2023 12:26:41 +0000

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

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                  c035151902689aa5a3765aeb16fa52755917b9ca
baseline version:
 xen                  ffa1437686712045953c33c5e77a4ebdd9973916

Last test of basis   183301  2023-10-06 20:00:25 Z    3 days
Testing same since   183331  2023-10-10 10:01:58 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.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
   ffa1437686..c035151902  c035151902689aa5a3765aeb16fa52755917b9ca -> smoke


From xen-devel-bounces@lists.xenproject.org Tue Oct 10 12:55:17 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 10 Oct 2023 12:55:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615044.956192 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqCGS-0000ck-To; Tue, 10 Oct 2023 12:55:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615044.956192; Tue, 10 Oct 2023 12: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 1qqCGS-0000cd-Pg; Tue, 10 Oct 2023 12:55:08 +0000
Received: by outflank-mailman (input) for mailman id 615044;
 Tue, 10 Oct 2023 12: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=c+X1=FY=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qqCGR-0000bM-3J
 for xen-devel@lists.xenproject.org; Tue, 10 Oct 2023 12:55:07 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 3b7292c8-676c-11ee-9b0d-b553b5be7939;
 Tue, 10 Oct 2023 14:55:04 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id 62B094EE0737;
 Tue, 10 Oct 2023 14:55: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: 3b7292c8-676c-11ee-9b0d-b553b5be7939
MIME-Version: 1.0
Date: Tue, 10 Oct 2023 14:55:04 +0200
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: Julien Grall <julien@xen.org>
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, Paul
 Durrant <paul@xen.org>, George Dunlap <george.dunlap@citrix.com>, Wei Liu
 <wl@xen.org>
Subject: Re: [XEN PATCH][for-4.19 8/9] xen/types: address Rule 10.1 for
 DECLARE_BITMAP use
In-Reply-To: <22895e24-b051-447a-b944-6ff173b0a790@xen.org>
References: <cover.1696514677.git.nicola.vetrini@bugseng.com>
 <9642dcb4ab51ec9eaeedf16056fbcd946a3efbea.1696514677.git.nicola.vetrini@bugseng.com>
 <80101145-1958-457a-8c80-cae816ae74aa@xen.org>
 <4b144869407871011c538af48b311c31@bugseng.com>
 <354c6138-509e-4106-9a27-3c75c85b85e5@xen.org>
 <alpine.DEB.2.22.394.2310061746190.3431292@ubuntu-linux-20-04-desktop>
 <d90524b8-70ee-457e-8d6a-9e69f135b81d@xen.org>
 <alpine.DEB.2.22.394.2310091803060.3431292@ubuntu-linux-20-04-desktop>
 <f9a24504-97e7-4a2e-8601-8e4672b45f88@xen.org>
 <eda6269602e89abf5bd1e23cc81d0528@bugseng.com>
 <bcc81d48-fafb-417a-a609-d6e0c17daf99@xen.org>
 <22895e24-b051-447a-b944-6ff173b0a790@xen.org>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <dbe64dec40acdb0944fc42f3983ace31@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 10/10/2023 14:15, Julien Grall wrote:
> On 10/10/2023 13:13, Julien Grall wrote:
>> 
>> 
>> On 10/10/2023 13:07, Nicola Vetrini wrote:
>>> 
>>>>>>> 
>>>>>>> I agree on everything Julien's wrote and I was about to suggest 
>>>>>>> to use a
>>>>>>> SAF comment to suppress the warning because it is clearer than a 
>>>>>>> int
>>>>>>> cast.
>>>>>>> 
>>>>>>> But then I realized that even if BITS_TO_LONGS was fixed, 
>>>>>>> wouldn't still
>>>>>>> we have a problem because IOMMU_FEAT_count is an enum?
>>>>>>> 
>>>>>>> Is it the case that IOMMU_FEAT_count would have to be cast 
>>>>>>> regardless,
>>>>>>> either to int or unsigned int or whatever to be used in 
>>>>>>> DECLARE_BITMAP?
>>>>>>> 
>>>>>>> 
>>>>>>> So we have 2 problems here: one problem is DECLARE_BITMAP taking 
>>>>>>> int
>>>>>>> instead of unsigned int, and another problem is IOMMU_FEAT_count 
>>>>>>> being
>>>>>>> an enum.
>>>>>>> 
>>>>>>> If I got it right, then I would go with the cast to int (like 
>>>>>>> done in
>>>>>>> this patch) with a decent comment on top of it.
>>>>>> 
>>>>>> I might be missing something here. But why should we use cast 
>>>>>> rather than /*
>>>>>> SAF-X */ just above? I would have expected we wanted to highlight 
>>>>>> the
>>>>>> violation rather than hiding it.
>>>>> 
>>>>> My understanding is that the cast is required when converting an 
>>>>> enum
>>>>> type to an integer type and vice versa. The idea is that we 
>>>>> shouldn't do
>>>>> implicit conversions as they are error prone, only explicit 
>>>>> conversions
>>>>> are allowed between enum and integers.
>>>> 
>>>> We have a lot of places in Xen using implicit conversion from enum 
>>>> to
>>>> integer (for instance in the P2M code for p2m_type_t). Does ECLAIR
>>>> report all of them? If not, then why?
>>>> 
>>> 
>>> Can you give some pointers as to where this enum is used in 
>>> arithmetic operations?
>> 
>> I can't think of any right now.
> 
> Obviously, right after I pressed send, I remember of one in
> __acpi_map_table() (x86 code).
> 
> FIX_ACPI_END is an enum, assigned to an 'int' and then used in 
> arithmetics.
> 
> Cheers,

A couple of remarks:
- that file is part of the exclude-list.json, therefore it's not bound 
to be MISRA compliant
   right now;
- assignment to a different essential type category is dealt with by 
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), so perhaps
   Luca's script does indeed capture it with gcc compilation flags.

Aside from this, if you feel that a deviation comment is a better 
choice, I'm ok with
dealing with it in this way.

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


From xen-devel-bounces@lists.xenproject.org Tue Oct 10 14:20:51 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 10 Oct 2023 14:20:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615055.956201 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqDbA-00085M-7G; Tue, 10 Oct 2023 14:20:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615055.956201; Tue, 10 Oct 2023 14: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 1qqDbA-00085F-3f; Tue, 10 Oct 2023 14:20:36 +0000
Received: by outflank-mailman (input) for mailman id 615055;
 Tue, 10 Oct 2023 14:20: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=c+X1=FY=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qqDb9-000857-3Z
 for xen-devel@lists.xenproject.org; Tue, 10 Oct 2023 14:20:35 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 2c6dd582-6778-11ee-98d3-6d05b1d4d9a1;
 Tue, 10 Oct 2023 16:20:33 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id 1D0844EE0737;
 Tue, 10 Oct 2023 16:20: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: 2c6dd582-6778-11ee-98d3-6d05b1d4d9a1
MIME-Version: 1.0
Date: Tue, 10 Oct 2023 16:20:33 +0200
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: Julien Grall <julien@xen.org>
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, Paul
 Durrant <paul@xen.org>, George Dunlap <george.dunlap@citrix.com>, Wei Liu
 <wl@xen.org>
Subject: Re: [XEN PATCH][for-4.19 8/9] xen/types: address Rule 10.1 for
 DECLARE_BITMAP use
In-Reply-To: <f9a24504-97e7-4a2e-8601-8e4672b45f88@xen.org>
References: <cover.1696514677.git.nicola.vetrini@bugseng.com>
 <9642dcb4ab51ec9eaeedf16056fbcd946a3efbea.1696514677.git.nicola.vetrini@bugseng.com>
 <80101145-1958-457a-8c80-cae816ae74aa@xen.org>
 <4b144869407871011c538af48b311c31@bugseng.com>
 <354c6138-509e-4106-9a27-3c75c85b85e5@xen.org>
 <alpine.DEB.2.22.394.2310061746190.3431292@ubuntu-linux-20-04-desktop>
 <d90524b8-70ee-457e-8d6a-9e69f135b81d@xen.org>
 <alpine.DEB.2.22.394.2310091803060.3431292@ubuntu-linux-20-04-desktop>
 <f9a24504-97e7-4a2e-8601-8e4672b45f88@xen.org>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <91de08fe10f909d2c878963ffec5be1d@bugseng.com>
X-Sender: nicola.vetrini@bugseng.com
Organization: BUGSENG s.r.l.
Content-Type: text/plain; charset=UTF-8;
 format=flowed
Content-Transfer-Encoding: 8bit

On 10/10/2023 12:53, Julien Grall wrote:
> On 10/10/2023 02:09, Stefano Stabellini wrote:
>> On Mon, 9 Oct 2023, Julien Grall wrote:
>>> On 07/10/2023 02:04, Stefano Stabellini wrote:
>>>> On Fri, 6 Oct 2023, Julien Grall wrote:
>>>>> Hi Nicola,
>>>>> 
>>>>> On 06/10/2023 11:10, Nicola Vetrini wrote:
>>>>>> On 06/10/2023 11:34, Julien Grall wrote:
>>>>>>> Hi Nicola,
>>>>>>> 
>>>>>>> On 06/10/2023 09:26, 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
>>>>>>>> in macro 'BITS_TO_LONGS'.
>>>>>>>> 
>>>>>>>> A comment in BITS_TO_LONGS is added to make it clear that
>>>>>>>> values passed are meant to be positive.
>>>>>>> 
>>>>>>> I am confused. If the value is meant to be positive. Then...
>>>>>>> 
>>>>>>>> 
>>>>>>>> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
>>>>>>>> ---
>>>>>>>>     xen/include/xen/iommu.h | 2 +-
>>>>>>>>     xen/include/xen/types.h | 1 +
>>>>>>>>     2 files changed, 2 insertions(+), 1 deletion(-)
>>>>>>>> 
>>>>>>>> diff --git a/xen/include/xen/iommu.h b/xen/include/xen/iommu.h
>>>>>>>> index 0e747b0bbc1c..34aa0b9b5b81 100644
>>>>>>>> --- a/xen/include/xen/iommu.h
>>>>>>>> +++ b/xen/include/xen/iommu.h
>>>>>>>> @@ -360,7 +360,7 @@ struct domain_iommu {
>>>>>>>>     #endif
>>>>>>>>           /* Features supported by the IOMMU */
>>>>>>>> -    DECLARE_BITMAP(features, IOMMU_FEAT_count);
>>>>>>>> +    DECLARE_BITMAP(features, (int)IOMMU_FEAT_count);
>>>>>>> 
>>>>>>> ... why do we cast to (int) rather than (unsigned int)? Also, I 
>>>>>>> think
>>>>>>> this cast deserve a comment on top because this is not a very 
>>>>>>> obvious
>>>>>>> one.
>>>>>>> 
>>>>>>>>           /* Does the guest share HAP mapping with the IOMMU? */
>>>>>>>>         bool hap_pt_share;
>>>>>>>> diff --git a/xen/include/xen/types.h b/xen/include/xen/types.h
>>>>>>>> index aea259db1ef2..936e83d333a0 100644
>>>>>>>> --- a/xen/include/xen/types.h
>>>>>>>> +++ b/xen/include/xen/types.h
>>>>>>>> @@ -22,6 +22,7 @@ typedef signed long ssize_t;
>>>>>>>>       typedef __PTRDIFF_TYPE__ ptrdiff_t;
>>>>>>>>     +/* Users of this macro are expected to pass a positive 
>>>>>>>> value */
>>>>>>>>     #define BITS_TO_LONGS(bits) \
>>>>>>>>         (((bits)+BITS_PER_LONG-1)/BITS_PER_LONG)
>>>>>>>>     #define DECLARE_BITMAP(name,bits) \
>>>>>>> 
>>>>>>> Cheers,
>>>>>> 
>>>>>> See [1] for the reason why I did so. I should have mentioned that 
>>>>>> in the
>>>>>> commit notes, sorry.
>>>>>> In short, making BITS_TO_LONGS essentially unsigned would cause a
>>>>>> cascade of
>>>>>> build errors and
>>>>>> possibly other essential type violations.
>>>>> Can you share some of the errors?
>>>>> 
>>>>>> If this is to be fixed that way, the effort required
>>>>>> is far greater. Either way, a comment on top of can be added, 
>>>>>> along the
>>>>>> lines of:
>>>>>> 
>>>>>> Leaving this as an enum would violate MISRA C:2012 Rule 10.1
>>>>> 
>>>>> I read this as you are simply trying to silence your tool. I think 
>>>>> this
>>>>> the
>>>>> wrong approach as you are now making the code confusing for the 
>>>>> reader
>>>>> (you
>>>>> pass a signed int to a function that is supposed to take a positive
>>>>> number).
>>>>> 
>>>>> I appreciate that this will result to more violations at the 
>>>>> beginning.
>>>>> But
>>>>> the whole point of MISRA is to make the code better.
>>>>> 
>>>>> If this is too complex to solve now, then a possible option is to 
>>>>> deviate
>>>>> for
>>>>> the time being.
>>>> 
>>>> I agree on everything Julien's wrote and I was about to suggest to 
>>>> use a
>>>> SAF comment to suppress the warning because it is clearer than a int
>>>> cast.
>>>> 
>>>> But then I realized that even if BITS_TO_LONGS was fixed, wouldn't 
>>>> still
>>>> we have a problem because IOMMU_FEAT_count is an enum?
>>>> 
>>>> Is it the case that IOMMU_FEAT_count would have to be cast 
>>>> regardless,
>>>> either to int or unsigned int or whatever to be used in 
>>>> DECLARE_BITMAP?
>>>> 
>>>> 
>>>> So we have 2 problems here: one problem is DECLARE_BITMAP taking int
>>>> instead of unsigned int, and another problem is IOMMU_FEAT_count 
>>>> being
>>>> an enum.
>>>> 
>>>> If I got it right, then I would go with the cast to int (like done 
>>>> in
>>>> this patch) with a decent comment on top of it.
>>> 
>>> I might be missing something here. But why should we use cast rather 
>>> than /*
>>> SAF-X */ just above? I would have expected we wanted to highlight the
>>> violation rather than hiding it.
>> 
>> My understanding is that the cast is required when converting an enum
>> type to an integer type and vice versa. The idea is that we shouldn't 
>> do
>> implicit conversions as they are error prone, only explicit 
>> conversions
>> are allowed between enum and integers.
> 
> We have a lot of places in Xen using implicit conversion from enum to
> integer (for instance in the P2M code for p2m_type_t). Does ECLAIR
> report all of them? If not, then why?
> 

Re-replying here, since in the other reply I didn't address your concern 
fully:
yes, there are more than a few places where this comes up for Rule 10.1, 
especially
in x86 code. In theory a cast is not the only option to bring the code 
into compliance,
but the specific solution should be checked on a case-by-case basis.

The main aim of the series on R10.1 is to deviate or fix the main 
offenders in terms
of violations with as little effort as possible, to have a more 
manageable analysis
result (in my branch, with some patches yet to be submitted I'm down to 
a few violations
on ARM and ~100 on x86).

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


From xen-devel-bounces@lists.xenproject.org Tue Oct 10 14:22:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 10 Oct 2023 14:22:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615061.956211 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqDdJ-0000Y3-II; Tue, 10 Oct 2023 14:22:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615061.956211; Tue, 10 Oct 2023 14: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 1qqDdJ-0000Xw-FW; Tue, 10 Oct 2023 14:22:49 +0000
Received: by outflank-mailman (input) for mailman id 615061;
 Tue, 10 Oct 2023 14:22: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=5KIu=FY=linaro.org=viresh.kumar@srs-se1.protection.inumbo.net>)
 id 1qqDdI-0000Xq-LN
 for xen-devel@lists.xenproject.org; Tue, 10 Oct 2023 14:22:48 +0000
Received: from mail-ed1-x533.google.com (mail-ed1-x533.google.com
 [2a00:1450:4864:20::533])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 7b98e550-6778-11ee-9b0d-b553b5be7939;
 Tue, 10 Oct 2023 16:22:46 +0200 (CEST)
Received: by mail-ed1-x533.google.com with SMTP id
 4fb4d7f45d1cf-53447d0241eso10229390a12.3
 for <xen-devel@lists.xenproject.org>; Tue, 10 Oct 2023 07:22: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: 7b98e550-6778-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=linaro.org; s=google; t=1696947766; x=1697552566; 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=jjgCMQrMRxO7UT+Dgjs8+PUls1MVudu/KuMSQSGIC0Q=;
        b=Jq7Lruc31OsRK4qLg0rrIxL+FvyFzip/Xq0aTznd1bZcUYUtgltOgZthb4xW9yl1ki
         13TwfBgKIlvYeg9AQZIdad9xZQ3YLpR+hvVTnqyYmHtHK6B3XfpT4WlVNa7uLeELiULI
         pra9Lj08Kb/m8J4NJ7lD3R5jm/FULVpz7PS1WN4THEXfa384apmUjjyVUpI3Fwyw1mwv
         +FlJ+2v1iaEHJMRvXzoFfMawjLgeLjZ7NNMCPMaO1ncR7anrKdRi9Xv60tg9/MfFCJ0V
         G3YMAfTxdepSjS8W4J0SKbExFCjojWFbKTnRkCyfSgTcee1sWx1ZJlcMSovZGinZNbuz
         mvzw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1696947766; x=1697552566;
        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=jjgCMQrMRxO7UT+Dgjs8+PUls1MVudu/KuMSQSGIC0Q=;
        b=xPf1wRRzDRlG4zzrFJZ1yO/aBpGOyhMVfiNiCf0tuPuNfWDU0T/nE1lLHLIzu1pHEo
         /cwd4wR7EQ8NzM0piWyahMbLLhOKTd/kYXi7h2jqCoPHTIJ3gOKhtqjrQN/9Av+f+H4O
         UVBb4+H7ihFKkbUJ4smmH22oQuzS4d2K7EcPfW+cF6bRDJLG27YNKStKKwPPpXwkZal/
         RzArfAjD46NfDh1DMdLhwHAd7jcEtkB3yPsVe1Vt5KnHK7ZLa2WQ5fo5oCoNeO1eXgmA
         F1q0RWulTkK5Bh4mKHp67tqIl69d35Bx8hJrtw3GjsBNlsO+lYKqM0qc7dwAQyCtkOVD
         Y6cw==
X-Gm-Message-State: AOJu0YwEQpJgpIaLEIW4bAIjBY6dsxrTLj/g/alPD+O/gwVjR/qd0BVH
	y6G4SeTlqXKMSSq73cT2I9oCoirxGuO11sETvPyhDw==
X-Google-Smtp-Source: AGHT+IGEzqDJ7Iy6V8fGm6hyIdbMLIhMRY6DQ2ciMjUlAXpHOvBPGkT6Hr6/thaPTJdBzt6mz7WRCQImQ+TQaICLcuc=
X-Received: by 2002:aa7:d5d0:0:b0:522:6e3f:b65 with SMTP id
 d16-20020aa7d5d0000000b005226e3f0b65mr15498021eds.33.1696947765800; Tue, 10
 Oct 2023 07:22:45 -0700 (PDT)
MIME-Version: 1.0
References: <cover.1696850733.git.viresh.kumar@linaro.org> <957de2a53dde99a653b47af9c95bc17692870294.1696850733.git.viresh.kumar@linaro.org>
 <920a671c-1927-4086-950f-db8e3293a989@linaro.org>
In-Reply-To: <920a671c-1927-4086-950f-db8e3293a989@linaro.org>
From: Viresh Kumar <viresh.kumar@linaro.org>
Date: Tue, 10 Oct 2023 19:52:32 +0530
Message-ID: <CAKohpon4aYmr9TxhS8H7fVTU_xyhvErr12qViuYAUEf8RX5DGg@mail.gmail.com>
Subject: Re: [Stratos-dev] [PATCH V3 2/2] xen: privcmd: Add support for ioeventfd
To: Bill Mills <bill.mills@linaro.org>
Cc: Juergen Gross <jgross@suse.com>, Stefano Stabellini <sstabellini@kernel.org>, 
	Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>, stratos-dev@op-lists.linaro.org, 
	Erik Schilling <erik.schilling@linaro.org>, 
	Manos Pitsidianakis <manos.pitsidianakis@linaro.org>, linux-kernel@vger.kernel.org, 
	xen-devel@lists.xenproject.org
Content-Type: text/plain; charset="UTF-8"

Hi Bill,

On Tue, 10 Oct 2023 at 18:52, Bill Mills <bill.mills@linaro.org> wrote:
> On 10/9/23 7:29 AM, Viresh Kumar via Stratos-dev wrote:

> > -config XEN_PRIVCMD_IRQFD
> > -     bool "Xen irqfd support"
> > +config XEN_PRIVCMD_EVENTFD
> > +     bool "Xen Ioeventfd and irqfd support"
>
> You certainly know about kernel policies better than I but why the
> CONGIG_ name change?
>
> With this change all downstream distros need to find this and re-enable
> it if they want to keep a working Xen system.
>
> I presume the kernel can still work in the old way and not use your new
> mode correct?
>
> I would certainly change the description but I wonder about keeping the
> CONFIG_ name the same.
>
> No issue if I am obviously wrong and this is done all the time.

You are absolutely right Bill, but this is a special case. The CONFIG option
here (XEN_PRIVCMD_IRQFD) is recently added (by me) and is currently
present in linux-next only. Hopefully this and the other commit will make it
to Linus's master together.

No one using this currently downstream and so life won't be that complicated
for anyone and so I wanted to put this under the same config option, since they
are related too.

Hope it makes sense.

--
Viresh


From xen-devel-bounces@lists.xenproject.org Tue Oct 10 14:26:48 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 10 Oct 2023 14:26:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615066.956221 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqDh6-0002z3-3i; Tue, 10 Oct 2023 14:26:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615066.956221; Tue, 10 Oct 2023 14:26: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 1qqDh5-0002yt-VQ; Tue, 10 Oct 2023 14:26:43 +0000
Received: by outflank-mailman (input) for mailman id 615066;
 Tue, 10 Oct 2023 14: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=wBiT=FY=arm.com=luca.fancellu@srs-se1.protection.inumbo.net>)
 id 1qqDh4-0002hy-UM
 for xen-devel@lists.xenproject.org; Tue, 10 Oct 2023 14:26:42 +0000
Received: from foss.arm.com (foss.arm.com [217.140.110.172])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTP
 id 06f3af0b-6779-11ee-9b0d-b553b5be7939;
 Tue, 10 Oct 2023 16:26:40 +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 4F9B61FB;
 Tue, 10 Oct 2023 07:27: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 ABF193F762;
 Tue, 10 Oct 2023 07:26: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: 06f3af0b-6779-11ee-9b0d-b553b5be7939
From: Luca Fancellu <luca.fancellu@arm.com>
To: linux-kernel@vger.kernel.org
Cc: Wei Liu <wei.liu@kernel.org>,
	Paul Durrant <paul@xen.org>,
	xen-devel@lists.xenproject.org,
	netdev@vger.kernel.org,
	Rahul Singh <rahul.singh@arm.com>
Subject: [PATCH 0/1] Add software timestamp capabilities to xen-netback device
Date: Tue, 10 Oct 2023 15:26:29 +0100
Message-Id: <20231010142630.984585-1-luca.fancellu@arm.com>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Hi all,

during some experiment using PTP (ptp4l) between a Dom0 domain and a DomU guest,
I noticed that the virtual interface brought up by the toolstack was not able
to be used as ptp4l interface on the Dom0 side, a brief investigation on the
drivers revealed that the backend driver doesn't have the SW timestamp
capabilities, so in order to provide them, I'm sending this patch.

Luca Fancellu (1):
  xen-netback: add software timestamp capabilities

 drivers/net/xen-netback/interface.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)


base-commit: cb0856346a60fe3eb837ba5e73588a41f81ac05f
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Tue Oct 10 14:26:48 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 10 Oct 2023 14:26:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615067.956231 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqDh7-0003Ds-9r; Tue, 10 Oct 2023 14:26:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615067.956231; Tue, 10 Oct 2023 14:26: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 1qqDh7-0003Dl-6i; Tue, 10 Oct 2023 14:26:45 +0000
Received: by outflank-mailman (input) for mailman id 615067;
 Tue, 10 Oct 2023 14:26: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=wBiT=FY=arm.com=luca.fancellu@srs-se1.protection.inumbo.net>)
 id 1qqDh5-0002hy-UR
 for xen-devel@lists.xenproject.org; Tue, 10 Oct 2023 14:26:43 +0000
Received: from foss.arm.com (foss.arm.com [217.140.110.172])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTP
 id 0792d664-6779-11ee-9b0d-b553b5be7939;
 Tue, 10 Oct 2023 16:26:41 +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 614DBC15;
 Tue, 10 Oct 2023 07:27: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 C85E93F762;
 Tue, 10 Oct 2023 07:26: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: 0792d664-6779-11ee-9b0d-b553b5be7939
From: Luca Fancellu <luca.fancellu@arm.com>
To: linux-kernel@vger.kernel.org
Cc: Wei Liu <wei.liu@kernel.org>,
	Paul Durrant <paul@xen.org>,
	xen-devel@lists.xenproject.org,
	netdev@vger.kernel.org,
	Rahul Singh <rahul.singh@arm.com>
Subject: [PATCH 1/1] xen-netback: add software timestamp capabilities
Date: Tue, 10 Oct 2023 15:26:30 +0100
Message-Id: <20231010142630.984585-2-luca.fancellu@arm.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20231010142630.984585-1-luca.fancellu@arm.com>
References: <20231010142630.984585-1-luca.fancellu@arm.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Add software timestamp capabilities to the xen-netback driver
by advertising it on the struct ethtool_ops and calling
skb_tx_timestamp before passing the buffer to the queue.

Signed-off-by: Luca Fancellu <luca.fancellu@arm.com>
---
 drivers/net/xen-netback/interface.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/drivers/net/xen-netback/interface.c b/drivers/net/xen-netback/interface.c
index f3f2c07423a6..b71158967123 100644
--- a/drivers/net/xen-netback/interface.c
+++ b/drivers/net/xen-netback/interface.c
@@ -254,6 +254,9 @@ xenvif_start_xmit(struct sk_buff *skb, struct net_device *dev)
 	if (vif->hash.alg == XEN_NETIF_CTRL_HASH_ALGORITHM_NONE)
 		skb_clear_hash(skb);
 
+	/* timestamp packet in software */
+	skb_tx_timestamp(skb);
+
 	if (!xenvif_rx_queue_tail(queue, skb))
 		goto drop;
 
@@ -460,7 +463,7 @@ static void xenvif_get_strings(struct net_device *dev, u32 stringset, u8 * data)
 
 static const struct ethtool_ops xenvif_ethtool_ops = {
 	.get_link	= ethtool_op_get_link,
-
+	.get_ts_info 	= ethtool_op_get_ts_info,
 	.get_sset_count = xenvif_get_sset_count,
 	.get_ethtool_stats = xenvif_get_ethtool_stats,
 	.get_strings = xenvif_get_strings,
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Tue Oct 10 14:39:57 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 10 Oct 2023 14:39:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615077.956240 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqDtm-0006PU-Ha; Tue, 10 Oct 2023 14:39:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615077.956240; Tue, 10 Oct 2023 14:39: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 1qqDtm-0006PN-F1; Tue, 10 Oct 2023 14:39:50 +0000
Received: by outflank-mailman (input) for mailman id 615077;
 Tue, 10 Oct 2023 14:39: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 1qqDtl-0006PH-7d
 for xen-devel@lists.xenproject.org; Tue, 10 Oct 2023 14:39: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 1qqDtk-0003b4-Vb; Tue, 10 Oct 2023 14:39:48 +0000
Received: from 54-240-197-231.amazon.com ([54.240.197.231]
 helo=[10.95.104.160]) by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qqDtk-0007Rz-P0; Tue, 10 Oct 2023 14:39: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=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=Gn+PXlKkr9bLmBg/Rq5v0W9MnQmb7tahUjtLRIWRdr8=; b=PzT+iaRkB960+ccJCY40jFN7M8
	LscD1HNTkOldCEazfWSYYqMoz2d/JiRW8IVqzrJDtsVIvAUwopwTl6fnCj2l607bsR1vvOrnFHRFL
	as4rkty5hPhS/CH/BvZ4OIgH1t3q7oSzBgoX93xouUjbsFJr+EAgaOe3ZwlHawpG6Mm4=;
Message-ID: <18f2879b-a4cb-43bc-9c70-7141200e331d@xen.org>
Date: Tue, 10 Oct 2023 15:39:46 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN PATCH] get_maintainer: Add THE REST for sections with
 reviewers only
Content-Language: en-GB
To: Anthony PERARD <anthony.perard@citrix.com>, xen-devel@lists.xenproject.org
Cc: Henry Wang <Henry.Wang@arm.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: <20231006135406.52750-1-anthony.perard@citrix.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <20231006135406.52750-1-anthony.perard@citrix.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi Anthony,

On 06/10/2023 14:54, Anthony PERARD wrote:
> Sometime, a contributer would like to be CCed on part of the changes,
> and it could happen that we end-up with a section that doesn't have
> any maintainer, but a Ack from a maintainer would still be needed.
> 
> Rework get_maintainer so if there's no maintainers beside THE REST, it
> doesn't drop THE REST emails.
> 
> Signed-off-by: Anthony PERARD <anthony.perard@citrix.com>

Reviewed-by: Julien Grall <jgrall@amazon.com>

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Oct 10 14:41:48 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 10 Oct 2023 14:41:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615080.956251 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqDvf-0007uJ-Ta; Tue, 10 Oct 2023 14:41:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615080.956251; Tue, 10 Oct 2023 14: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 1qqDvf-0007uC-QP; Tue, 10 Oct 2023 14:41:47 +0000
Received: by outflank-mailman (input) for mailman id 615080;
 Tue, 10 Oct 2023 14:41: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 1qqDve-0007u4-TR
 for xen-devel@lists.xenproject.org; Tue, 10 Oct 2023 14:41: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 1qqDve-0003dA-HX; Tue, 10 Oct 2023 14:41:46 +0000
Received: from 54-240-197-231.amazon.com ([54.240.197.231]
 helo=[10.95.104.160]) by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qqDve-0007XN-BJ; Tue, 10 Oct 2023 14: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>
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=8hJu90Jt4/dIFan37qP6dkXSe0FV4v70FMEGc6/NoWY=; b=vGNbnN+QxT8zwkHdfSbMtEPouL
	zRwQ2zTonMFBZhwBJDw1ufRN/d6RKOgyKYwMZLbvHm13kKp9gB4QlFtnpfHVEM8dlz1ufH6TmQCwu
	Ivibd/coPbOwYMOw4e3ixLEsGIJCM+9jr3aHtBpJV4SUb4JtypKbh8zOjnEl4N8HYgrs=;
Message-ID: <9e4f1ee1-1163-4a8a-b979-f75c423ac8c2@xen.org>
Date: Tue, 10 Oct 2023 15:41:44 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [for-4.18][PATCH v2] xen/public: arch-arm: Update list of
 supported hypercalls
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>,
 "Daniel P. Smith" <dpsmith@apertussolutions.com>,
 Henry Wang <Henry.Wang@arm.com>, Julien Grall <jgrall@amazon.com>
References: <20231006125220.23140-1-michal.orzel@amd.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <20231006125220.23140-1-michal.orzel@amd.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi,

On 06/10/2023 13:52, Michal Orzel wrote:
> The list is out of date and does not specify all the hypercalls/sub-ops
> we support, so update it.
> 
> Signed-off-by: Michal Orzel <michal.orzel@amd.com>
> Release-acked-by: Henry Wang <Henry.Wang@arm.com>
> Acked-by: Julien Grall <jgrall@amazon.com>

It is now committed.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Oct 10 14:48:09 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 10 Oct 2023 14:48:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615083.956262 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqE1l-0001uu-Jr; Tue, 10 Oct 2023 14:48:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615083.956262; Tue, 10 Oct 2023 14:48: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 1qqE1l-0001un-FF; Tue, 10 Oct 2023 14:48:05 +0000
Received: by outflank-mailman (input) for mailman id 615083;
 Tue, 10 Oct 2023 14:48: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 1qqE1k-0001tL-Qk
 for xen-devel@lists.xenproject.org; Tue, 10 Oct 2023 14:48: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 1qqE1k-0003m0-FK; Tue, 10 Oct 2023 14:48:04 +0000
Received: from 54-240-197-231.amazon.com ([54.240.197.231]
 helo=[10.95.104.160]) by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qqE1k-0007ns-98; Tue, 10 Oct 2023 14:48: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=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:
	References:Cc:To:From:Subject:MIME-Version:Date:Message-ID;
	bh=RVmbal3jyL4QGGCUAZHhC5+aj9yI6a+eoQxd4HidfUQ=; b=Zbawy6HoSkam7/6YUhB/T7MtbE
	63HYpH4+8V3ZGvoydgFs3XBNoV2nyvkABK1NEWU4VWH/mdO2n/OaRN2DEjqfRFqp1p6M8YdpPuyBV
	hIqu9twtVO1N1B6r4SptesH2alZ4zqtr9QOnoZh/McUa0xT0RIcqFnCotlQlcPfWDCiE=;
Message-ID: <4894d46e-97ab-434f-b637-d516db6564ea@xen.org>
Date: Tue, 10 Oct 2023 15:48:02 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH] xen/arm: Validate generic timer frequency
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>,
 Henry Wang <Henry.Wang@arm.com>
References: <20230928123435.2802-1-michal.orzel@amd.com>
 <d406c4c6-07f7-442f-8bef-8ba42308ae93@xen.org>
In-Reply-To: <d406c4c6-07f7-442f-8bef-8ba42308ae93@xen.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

(+ Henry)

Hi Michal,

On 29/09/2023 08:38, Julien Grall wrote:
> 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>

Going through the list of pending patches, I noticed Henry wasn't CCed. 
Is this patch intended for Xen 4.18? If so, can you provide some 
reasoning why would want it?

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Oct 10 14:55:35 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 10 Oct 2023 14:55:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615087.956271 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqE8u-0004zs-9G; Tue, 10 Oct 2023 14:55:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615087.956271; Tue, 10 Oct 2023 14:55: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 1qqE8u-0004zl-6S; Tue, 10 Oct 2023 14:55:28 +0000
Received: by outflank-mailman (input) for mailman id 615087;
 Tue, 10 Oct 2023 14:55: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=/YEo=FY=cloud.com=javi.merino@srs-se1.protection.inumbo.net>)
 id 1qqE8t-0004xB-FB
 for xen-devel@lists.xenproject.org; Tue, 10 Oct 2023 14:55:27 +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 0badcce0-677d-11ee-98d3-6d05b1d4d9a1;
 Tue, 10 Oct 2023 16:55:26 +0200 (CEST)
Received: by mail-wr1-x42f.google.com with SMTP id
 ffacd0b85a97d-32c9f2ce71aso740316f8f.1
 for <xen-devel@lists.xenproject.org>; Tue, 10 Oct 2023 07:55:26 -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
 v6-20020adff686000000b0031980294e9fsm12775002wrp.116.2023.10.10.07.55.24
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Tue, 10 Oct 2023 07:55: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: 0badcce0-677d-11ee-98d3-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1696949725; x=1697554525; 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=r/l4Hsd/Zof8XSfDIbZDzjkef1XTJ9Kr+1vkL+sFLQM=;
        b=Q5moYrswcvASRy3TA9pBOBEqJ8/SNUuJ4aTmdhYLGyZUHOHhUoZ0gzACYJWgcZ/siB
         gPlWzK7+ZaOo8f0Hfy8471dFJYFIjtsZo89d71vPa/y+CH5oNRIrhnMhTk7k+L8wntKP
         KgmOvM0L3mDzP0637xiICFwIS8v4N/bDR7jq0=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1696949725; x=1697554525;
        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=r/l4Hsd/Zof8XSfDIbZDzjkef1XTJ9Kr+1vkL+sFLQM=;
        b=MuPhiKWh5vRjcsdnQ288PuCoNDb0Za3m5zQ7bavnmC/5qvwyk1ZjjRR+7u85/nzVss
         n1IbDY0TZkkkn6fQMlfvpZw5McVO/DYAKsHAPZlY0mL+kkUE9/3spPO2zrN2kxG0AMjL
         Fopb7qX8FnOUuq8uCpg3vp1987BXP6471/FeCGYML4QBhDWOJkXxKp7+5bbGQOeXysZS
         bq0wnNpM5kEQgSUu5sDS06vXsZ92xv7AkO5mkDJyn2XUqCbd/KqJeOAWXbmbnCxzuEQq
         p81/EGGOjt1NgZWNCRnkvygkTwPJ9KKLsamBNNPuCP69Z5B/GOPsWsST/jOBo+aXUc76
         fCnA==
X-Gm-Message-State: AOJu0YzTZ/rTTACQ8HF/QmrnWmRsd42OvLgfOlFReqStcteuxw6Fmh+J
	V8//986dKfJceRTRXvOJKrc1rxiL/DNJhQx42o0=
X-Google-Smtp-Source: AGHT+IFMZcWAdQN3V33WEkI3iCxJ1rYjWGcgsUpmWqS6G1/Buep7GTvH6PcW2k1K9PF+1FGe2i5ONA==
X-Received: by 2002:adf:f005:0:b0:326:c623:3bbf with SMTP id j5-20020adff005000000b00326c6233bbfmr17284164wro.26.1696949725329;
        Tue, 10 Oct 2023 07:55:25 -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>,
	Wei Liu <wl@xen.org>,
	Anthony PERARD <anthony.perard@citrix.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	Javi Merino <javi.merino@cloud.com>
Subject: [XEN PATCH v1] tools/python: Add python3 compatibility
Date: Tue, 10 Oct 2023 15:18:45 +0100
Message-ID: <efb10e537e37df1995dd8f87c28a8eb64ec9b61e.1696947009.git.javi.merino@cloud.com>
X-Mailer: git-send-email 2.42.0
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Most of the work for python3 compatibility was done in
1430c5a8cad4 (tools/python: Python 3 compatibility, 2019-12-18).  This
just adds a few builtins needed for python3.

Resolves: xen-project/xen#156

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

I haven't tested it.

 README                                     | 1 +
 tools/python/scripts/convert-legacy-stream | 3 +++
 2 files changed, 4 insertions(+)

diff --git a/README b/README
index 855db01d36..44ed88c392 100644
--- a/README
+++ b/README
@@ -51,6 +51,7 @@ provided by your OS distributor:
     * POSIX compatible awk
     * Development install of zlib (e.g., zlib-dev)
     * Development install of Python 2.7 or later (e.g., python-dev)
+      - If using Python 2.7, you also need the future module.  This is not needed for Python 3.
     * 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)
diff --git a/tools/python/scripts/convert-legacy-stream b/tools/python/scripts/convert-legacy-stream
index 7fe375a668..26a66c50fc 100755
--- a/tools/python/scripts/convert-legacy-stream
+++ b/tools/python/scripts/convert-legacy-stream
@@ -8,6 +8,9 @@ Convert a legacy migration stream to a v2 stream.
 from __future__ import print_function
 from __future__ import division
 
+from builtins import zip
+from builtins import range
+from builtins import object
 import sys
 import os, os.path
 import syslog
-- 
2.42.0



From xen-devel-bounces@lists.xenproject.org Tue Oct 10 15:11:39 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 10 Oct 2023 15:11:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615094.956281 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqEOR-00017k-Kv; Tue, 10 Oct 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 615094.956281; Tue, 10 Oct 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 1qqEOR-00017d-II; Tue, 10 Oct 2023 15:11:31 +0000
Received: by outflank-mailman (input) for mailman id 615094;
 Tue, 10 Oct 2023 15:11: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 1qqEOQ-000161-5y
 for xen-devel@lists.xenproject.org; Tue, 10 Oct 2023 15:11: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 1qqEOP-0004Oi-Sj; Tue, 10 Oct 2023 15:11:29 +0000
Received: from 54-240-197-231.amazon.com ([54.240.197.231]
 helo=[10.95.104.160]) by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qqEOP-0000fC-MO; Tue, 10 Oct 2023 15:11: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=4Obq61kJUFEKTX7z8R6Sb7CT6aqwi9qgd/DZcaOpdsk=; b=T/4MdGXKEQBvGB7oq2BTKSV8/Z
	Oaaut1IoXt1GfLvRCNP2iQG3+Xl5hOYZ/8YzOwo3iBmwubbaiHHpLjLutn3RgvuLFbSDo6a00l+hN
	OGT2jxeAScs/0ZRl9pPBZ03SwxZ2DfXVQfLgHddl+sk3xD8rrQ/r1s/G7hscZ9ikLRFo=;
Message-ID: <d4418f19-940f-4839-bcce-cbdad8d2ca81@xen.org>
Date: Tue, 10 Oct 2023 16:11:27 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v7 1/8] 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: <20231009010313.3668423-1-Henry.Wang@arm.com>
 <20231009010313.3668423-2-Henry.Wang@arm.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <20231009010313.3668423-2-Henry.Wang@arm.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi Henry,

On 09/10/2023 02:03, 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.
> 
> 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>

Reviewed-by: Julien Grall <jgrall@amazon.com>

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Oct 10 15:27:25 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 10 Oct 2023 15:27:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615100.956291 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqEdc-0006Lq-UQ; Tue, 10 Oct 2023 15:27:12 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615100.956291; Tue, 10 Oct 2023 15:27: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 1qqEdc-0006Lj-Rg; Tue, 10 Oct 2023 15:27:12 +0000
Received: by outflank-mailman (input) for mailman id 615100;
 Tue, 10 Oct 2023 15:27: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=Phjn=FY=invisiblethingslab.com=marmarek@srs-se1.protection.inumbo.net>)
 id 1qqEda-0006Ld-KB
 for xen-devel@lists.xenproject.org; Tue, 10 Oct 2023 15:27:10 +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 78e3d9e5-6781-11ee-98d3-6d05b1d4d9a1;
 Tue, 10 Oct 2023 17:27:08 +0200 (CEST)
Received: from compute1.internal (compute1.nyi.internal [10.202.2.41])
 by mailout.nyi.internal (Postfix) with ESMTP id AE2DC5C00D6;
 Tue, 10 Oct 2023 11:27:06 -0400 (EDT)
Received: from mailfrontend1 ([10.202.2.162])
 by compute1.internal (MEProxy); Tue, 10 Oct 2023 11:27:06 -0400
Received: by mail.messagingengine.com (Postfix) with ESMTPA; Tue,
 10 Oct 2023 11:27:05 -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: 78e3d9e5-6781-11ee-98d3-6d05b1d4d9a1
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=
	1696951626; x=1697038026; bh=EWuTQUZrHYAty7+hic0E/Wo96JiZ+s+YocD
	ALHROmKU=; b=LJAp0wbmUnKyehflqNkCM4Dsi1p0vMhLOlzQ0/1ybq4FYcDxIBx
	LVRPfivFGLVFuBV3JDRQMgRLoEjY0cLf3jQMIyS6qupA7ZnEgdYV89iD7dz3gCTR
	jiPkc+GQmZ9zn2NddBwYixVMQ4Vn9pWgBWzePqeymGaZhNUgtcAG5AgyaKYw1FTD
	S5NAx2yQ31u34ITZV5h1B6qH8VgGZvPZxfZdyytfae1gWYrY/NkAIv6nwH6/tPhl
	56NeT8WDtcGm/wpVbzvoTQ4pO8DUDOlDNzfYBYxbUETK3ecQd/AYiOT9+S0Q8IMB
	i/E8R5aomVvQt2U1iYEFE1K2z+o6sGmcvow==
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=1696951626; x=1697038026; bh=EWuTQUZrHYAty
	7+hic0E/Wo96JiZ+s+YocDALHROmKU=; b=diYc6WLp2JQIjDAXR25KoW0B3dMzd
	+s9XOPQqdnotJ8Hqoo7ZbXcUCEj7nEnVXS3M8cszxapTnMPIy8vqPmr0R+ioWxSZ
	XTABbE79UPq57pxtPFa8aRCOWOYiXsFG7Ilt/L2YMacHVKJSDL96wE13EqayfPYw
	+R30Qc2u3lSwjZ6HKnBiL7TP4rAq27KBa8QzjPBJ88pZJzMDNmYxrpDriLAiE5TF
	cz2kchMUAnwwit37fAT0kUZQAtHWm11Du3/pMERZ83a9Pt3JaHy7QbXGlAgULmpp
	uasZVPNlsPwSvG8UuGkO0vh0sv3RN4da+tis0llUGnGIgI/vZAdXVR6lg==
X-ME-Sender: <xms:Sm0lZQubFBdfoyETH2M6ukjcZl2MZ9Qh8wwNgxXbO9FeuwbtZVV_8A>
    <xme:Sm0lZdcBLBeLQEtxnhAVtzsANXlEwrXK_u56c7cdmzc5i91expD1dS900w_UdulQr
    9zRcqVmLOlZ3Q>
X-ME-Received: <xmr:Sm0lZbxK-ILXyobf0Uwk7mRy2ibU3hRhkulXOhw3eyBptipFWiM29TOPMP1bziCT_il7SrpJNtskW0qpg9SjRr7ujAn65CbFAN8>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvkedrheehgdekjecutefuodetggdotefrodftvf
    curfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfghnecu
    uegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmdenuc
    fjughrpeffhffvvefukfhfgggtuggjsehgtderredttdejnecuhfhrohhmpeforghrvghk
    ucforghrtgiihihkohifshhkihdqifpkrhgvtghkihcuoehmrghrmhgrrhgvkhesihhnvh
    hishhisghlvghthhhinhhgshhlrggsrdgtohhmqeenucggtffrrghtthgvrhhnpefgudel
    teefvefhfeehieetleeihfejhfeludevteetkeevtedtvdegueetfeejudenucevlhhush
    htvghrufhiiigvpedtnecurfgrrhgrmhepmhgrihhlfhhrohhmpehmrghrmhgrrhgvkhes
    ihhnvhhishhisghlvghthhhinhhgshhlrggsrdgtohhm
X-ME-Proxy: <xmx:Sm0lZTMmEAkW-Jyfb78tohEB1PzxcmdcIdyC9a49qo1pudBj-PWHVA>
    <xmx:Sm0lZQ_aeQvcv_utkn0Iv3lvGkYJuF3lDc9c_i3_dPyP2Qg69Vht7w>
    <xmx:Sm0lZbXuheU8vmtV8W1AL3pO4CdQCMFFM5TJoODP0cffkqQWtAcKYQ>
    <xmx:Sm0lZSJ6Grvg-WiFS5ldVfshMjcUFUujx4mQcbyGrqALbf6UNnvGVg>
Feedback-ID: i1568416f:Fastmail
Date: Tue, 10 Oct 2023 17:27:03 +0200
From: Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>
To: Javi Merino <javi.merino@cloud.com>
Cc: xen-devel@lists.xenproject.org, Wei Liu <wl@xen.org>,
	Anthony PERARD <anthony.perard@citrix.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [XEN PATCH v1] tools/python: Add python3 compatibility
Message-ID: <ZSVtR1ct4Hik4XM8@mail-itl>
References: <efb10e537e37df1995dd8f87c28a8eb64ec9b61e.1696947009.git.javi.merino@cloud.com>
MIME-Version: 1.0
Content-Type: multipart/signed; micalg=pgp-sha256;
	protocol="application/pgp-signature"; boundary="XrEe8fIA8+tO70cE"
Content-Disposition: inline
In-Reply-To: <efb10e537e37df1995dd8f87c28a8eb64ec9b61e.1696947009.git.javi.merino@cloud.com>


--XrEe8fIA8+tO70cE
Content-Type: text/plain; protected-headers=v1; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable
Date: Tue, 10 Oct 2023 17:27:03 +0200
From: Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>
To: Javi Merino <javi.merino@cloud.com>
Cc: xen-devel@lists.xenproject.org, Wei Liu <wl@xen.org>,
	Anthony PERARD <anthony.perard@citrix.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [XEN PATCH v1] tools/python: Add python3 compatibility

On Tue, Oct 10, 2023 at 03:18:45PM +0100, Javi Merino wrote:
> Most of the work for python3 compatibility was done in
> 1430c5a8cad4 (tools/python: Python 3 compatibility, 2019-12-18).  This
> just adds a few builtins needed for python3.
>=20
> Resolves: xen-project/xen#156
>=20
> Signed-off-by: Javi Merino <javi.merino@cloud.com>
> ---
>=20
> I haven't tested it.
>=20
>  README                                     | 1 +
>  tools/python/scripts/convert-legacy-stream | 3 +++
>  2 files changed, 4 insertions(+)
>=20
> diff --git a/README b/README
> index 855db01d36..44ed88c392 100644
> --- a/README
> +++ b/README
> @@ -51,6 +51,7 @@ provided by your OS distributor:
>      * POSIX compatible awk
>      * Development install of zlib (e.g., zlib-dev)
>      * Development install of Python 2.7 or later (e.g., python-dev)
> +      - If using Python 2.7, you also need the future module.  This is n=
ot needed for Python 3.
>      * 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)
> diff --git a/tools/python/scripts/convert-legacy-stream b/tools/python/sc=
ripts/convert-legacy-stream
> index 7fe375a668..26a66c50fc 100755
> --- a/tools/python/scripts/convert-legacy-stream
> +++ b/tools/python/scripts/convert-legacy-stream
> @@ -8,6 +8,9 @@ Convert a legacy migration stream to a v2 stream.
>  from __future__ import print_function
>  from __future__ import division
> =20
> +from builtins import zip
> +from builtins import range
> +from builtins import object

In which python version it's needed? The thing about builtins is they
are available without explicit import.

>  import sys
>  import os, os.path
>  import syslog
> --=20
> 2.42.0
>=20

--=20
Best Regards,
Marek Marczykowski-G=C3=B3recki
Invisible Things Lab

--XrEe8fIA8+tO70cE
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQEzBAEBCAAdFiEEhrpukzGPukRmQqkK24/THMrX1ywFAmUlbUcACgkQ24/THMrX
1ywoTAgAmFUC4ImQoWXVAkUdUym0pvzujiWGRzQSjcZJB+HJ1TZc/phOOWKeSrC5
bz09Xq8RxmsMGk9374a0rShXCOOM83Y24tMMV+HIVk8nHGzViPCsvqqyXQ49Ek+k
c3Yz5muKzMLJhaY5RcjxwEYzZ4J4BNBn6P1vMDE+rPi91BW4U9zhMtd41Zl9KUBY
3a/Fubqf1hyowHBA6c4+7YzJDdgTw1T49/efCM/TFFeHCfVJDX3dTVWxxsi43Ycq
FJxvcdIroHwGfHefGp9B4rZ8a8PyQmIz7aapQEKnQbJ1uUD89qrxc1x5xV9UgugJ
A2Iqt+nsy44dTykFL26e4heYsLxo8w==
=i62F
-----END PGP SIGNATURE-----

--XrEe8fIA8+tO70cE--


From xen-devel-bounces@lists.xenproject.org Tue Oct 10 16:01:26 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 10 Oct 2023 16:01:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615106.956300 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqFAb-00085f-Fl; Tue, 10 Oct 2023 16:01:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615106.956300; Tue, 10 Oct 2023 16: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 1qqFAb-00085Y-D5; Tue, 10 Oct 2023 16:01:17 +0000
Received: by outflank-mailman (input) for mailman id 615106;
 Tue, 10 Oct 2023 16: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=LWWS=FY=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qqFAa-00085S-1k
 for xen-devel@lists.xenproject.org; Tue, 10 Oct 2023 16:01: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 3cda1dce-6786-11ee-98d3-6d05b1d4d9a1;
 Tue, 10 Oct 2023 18:01:14 +0200 (CEST)
Received: by mail-lf1-x12f.google.com with SMTP id
 2adb3069b0e04-50573e85ee0so6976931e87.3
 for <xen-devel@lists.xenproject.org>; Tue, 10 Oct 2023 09:01:13 -0700 (PDT)
Received: from [0.0.0.0] ([2001:41d0:8:52b7::])
 by smtp.gmail.com with ESMTPSA id
 vq2-20020a05620a558200b0076f058f5834sm4430898qkn.61.2023.10.10.09.01.03
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 10 Oct 2023 09:01: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: 3cda1dce-6786-11ee-98d3-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1696953673; x=1697558473; darn=lists.xenproject.org;
        h=content-transfer-encoding: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=UHTZ9PlEqk/tERxHhu/YAlyn2gDLSPNHlACUpmODSx8=;
        b=HyFc5ugJppU8bGrcaPfc8hbKtqEs3m5Z5s771QzaNdsCuTSnXlcWHVHlnhhm4f2yQ0
         TToXlFXMG56v+qGXxuNa51Cy/ky7a47lM+fpK6fuQoyHLNUF9OJhaZrl5GjCwnuYrJ3q
         w7DY4TFibLNma1yQWtZlIr5k+fZ367ufNZWX4=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1696953673; x=1697558473;
        h=content-transfer-encoding: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=UHTZ9PlEqk/tERxHhu/YAlyn2gDLSPNHlACUpmODSx8=;
        b=Ok3aDcZ9SDxKDVF7RBB4ujlC4eRkOirngJG0Tt9oziLyBU6XduqOZEgxiRTsVoVrqY
         rfmYYVsPQQOR7oLmvul1Lrop0Tho0zxatfF8rTvBshP6JdZdQ5GQjjzhh6voKWDyDLJ0
         7eUmSsBvpKo1TPkzfh76B2g8acHSVUPtklvxvynq0gjtCiLiajUMOVdcTVU2mowm4KQ9
         6r+w0E1IZcAoAq0tTtvSb7J4vupCmUVCwOknlcGJo44mDE0mkz3aPv3pRUgvABRfPn+F
         mJV38HDhqy8Exb+bC+v6+jYUwz8+FWpF6KPBJh2PdQS9K/VrJp/ojdnF9vy50o7tVGAX
         kxZA==
X-Gm-Message-State: AOJu0YwEb4GxuGQi3DESUeBHr5JnQW/jvQTc0KZKYRyx75HhQXube9yj
	a/pVjhEwH7UtmbH0G2Kego37xQ==
X-Google-Smtp-Source: AGHT+IEVLtpP5vdooZSC5LSoSdCYD5TiU9Zhe23nooPO28EWnC1lUxgtnNguIk1B+PjYA7Vwkwu2Gw==
X-Received: by 2002:a05:6512:3da0:b0:500:7c51:4684 with SMTP id k32-20020a0565123da000b005007c514684mr19933334lfv.56.1696953673430;
        Tue, 10 Oct 2023 09:01:13 -0700 (PDT)
Message-ID: <9ee8d16c-d34c-45c2-b5f7-53725bdc01c8@citrix.com>
Date: Wed, 11 Oct 2023 00:00:46 +0800
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [XEN PATCH 9/9] xen/compat: address Rule 10.1 for macros
 CHECK_SIZE
Content-Language: en-GB
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,
 jbeulich@suse.com, roger.pau@citrix.com,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Wei Liu <wl@xen.org>
References: <cover.1696514677.git.nicola.vetrini@bugseng.com>
 <7edf60c0e7bd0680d8b8f8d3aec1264ee5a43878.1696514677.git.nicola.vetrini@bugseng.com>
 <alpine.DEB.2.22.394.2310091749380.3431292@ubuntu-linux-20-04-desktop>
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: <alpine.DEB.2.22.394.2310091749380.3431292@ubuntu-linux-20-04-desktop>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 10/10/2023 9:02 am, Stefano Stabellini wrote:
> On Fri, 6 Oct 2023, Nicola Vetrini wrote:
>> The essential type of the result of an inequality operator is
>> essentially boolean, therefore it shouldn't be used as an argument of
>> the multiplication operator, which expects an integer.
>>
>> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
>> ---
>>  xen/include/xen/compat.h | 10 ++++++----
>>  1 file changed, 6 insertions(+), 4 deletions(-)
>>
>> diff --git a/xen/include/xen/compat.h b/xen/include/xen/compat.h
>> index f2ce5bb3580a..5ffee6a9fed1 100644
>> --- a/xen/include/xen/compat.h
>> +++ b/xen/include/xen/compat.h
>> @@ -151,12 +151,14 @@ CHECK_NAME_(k, n, T)(k xen_ ## n *x, \
>>      return x == c; \
>>  }
>>  
>> +#define SIZE_NEQUAL(a, b) \
>> +    (sizeof(a) != sizeof(b) ? 1 : 0)
>>  #define CHECK_SIZE(name) \
>> -    typedef int CHECK_NAME(name, S)[1 - (sizeof(xen_ ## name ## _t) != \
>> -                                         sizeof(compat_ ## name ## _t)) * 2]
>> +    typedef int CHECK_NAME(name, S)[1 - (SIZE_NEQUAL(xen_ ## name ## _t, \
>> +                                                     compat_ ## name ## _t)) * 2]
>>  #define CHECK_SIZE_(k, n) \
>> -    typedef int CHECK_NAME_(k, n, S)[1 - (sizeof(k xen_ ## n) != \
>> -                                          sizeof(k compat_ ## n)) * 2]
>> +    typedef int CHECK_NAME_(k, n, S)[1 - (SIZE_NEQUAL(k xen_ ## n, \
>> +                                                      k compat_ ## n)) * 2]
> I think this style is easier to read but I'll let the x86 maintainers
> decide
>
>     typedef int CHECK_NAME(name, S)[(sizeof(xen_ ## name ## _t) == \
>                                      sizeof(compat_ ## name ## _t)) ? 1 : -1]
>
> Also am I reading this correctly that we are using -1 as array index? I
> must have made a calculation mistake?

This is a NIH BUILD_BUG_ON().  It should be rewritten as

BUILD_BUG_ON(sizeof(xen ...) != sizeof(compat ...));

which will use _Static_assert() in modern compilers.

~Andrew


From xen-devel-bounces@lists.xenproject.org Tue Oct 10 16:06:26 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 10 Oct 2023 16:06:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615112.956311 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqFFX-0000aU-6z; Tue, 10 Oct 2023 16:06:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615112.956311; Tue, 10 Oct 2023 16:06: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 1qqFFX-0000aN-4M; Tue, 10 Oct 2023 16:06:23 +0000
Received: by outflank-mailman (input) for mailman id 615112;
 Tue, 10 Oct 2023 16:06: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=c+X1=FY=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qqFFV-0000aH-Jp
 for xen-devel@lists.xenproject.org; Tue, 10 Oct 2023 16:06:21 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id f2d3b7ca-6786-11ee-9b0d-b553b5be7939;
 Tue, 10 Oct 2023 18:06:19 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id EB9F94EE0743;
 Tue, 10 Oct 2023 18:06: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: f2d3b7ca-6786-11ee-9b0d-b553b5be7939
MIME-Version: 1.0
Date: Tue, 10 Oct 2023 18:06:18 +0200
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: Andrew Cooper <andrew.cooper3@citrix.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, roger.pau@citrix.com, George Dunlap
 <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>, Wei Liu
 <wl@xen.org>
Subject: Re: [XEN PATCH 9/9] xen/compat: address Rule 10.1 for macros
 CHECK_SIZE
In-Reply-To: <9ee8d16c-d34c-45c2-b5f7-53725bdc01c8@citrix.com>
References: <cover.1696514677.git.nicola.vetrini@bugseng.com>
 <7edf60c0e7bd0680d8b8f8d3aec1264ee5a43878.1696514677.git.nicola.vetrini@bugseng.com>
 <alpine.DEB.2.22.394.2310091749380.3431292@ubuntu-linux-20-04-desktop>
 <9ee8d16c-d34c-45c2-b5f7-53725bdc01c8@citrix.com>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <b40d9faac462c21e91392017b81bc68c@bugseng.com>
X-Sender: nicola.vetrini@bugseng.com
Organization: BUGSENG s.r.l.
Content-Type: text/plain; charset=UTF-8;
 format=flowed
Content-Transfer-Encoding: 8bit

On 10/10/2023 18:00, Andrew Cooper wrote:
> On 10/10/2023 9:02 am, Stefano Stabellini wrote:
>> On Fri, 6 Oct 2023, Nicola Vetrini wrote:
>>> The essential type of the result of an inequality operator is
>>> essentially boolean, therefore it shouldn't be used as an argument of
>>> the multiplication operator, which expects an integer.
>>> 
>>> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
>>> ---
>>>  xen/include/xen/compat.h | 10 ++++++----
>>>  1 file changed, 6 insertions(+), 4 deletions(-)
>>> 
>>> diff --git a/xen/include/xen/compat.h b/xen/include/xen/compat.h
>>> index f2ce5bb3580a..5ffee6a9fed1 100644
>>> --- a/xen/include/xen/compat.h
>>> +++ b/xen/include/xen/compat.h
>>> @@ -151,12 +151,14 @@ CHECK_NAME_(k, n, T)(k xen_ ## n *x, \
>>>      return x == c; \
>>>  }
>>> 
>>> +#define SIZE_NEQUAL(a, b) \
>>> +    (sizeof(a) != sizeof(b) ? 1 : 0)
>>>  #define CHECK_SIZE(name) \
>>> -    typedef int CHECK_NAME(name, S)[1 - (sizeof(xen_ ## name ## _t) 
>>> != \
>>> -                                         sizeof(compat_ ## name ## 
>>> _t)) * 2]
>>> +    typedef int CHECK_NAME(name, S)[1 - (SIZE_NEQUAL(xen_ ## name ## 
>>> _t, \
>>> +                                                     compat_ ## name 
>>> ## _t)) * 2]
>>>  #define CHECK_SIZE_(k, n) \
>>> -    typedef int CHECK_NAME_(k, n, S)[1 - (sizeof(k xen_ ## n) != \
>>> -                                          sizeof(k compat_ ## n)) * 
>>> 2]
>>> +    typedef int CHECK_NAME_(k, n, S)[1 - (SIZE_NEQUAL(k xen_ ## n, \
>>> +                                                      k compat_ ## 
>>> n)) * 2]
>> I think this style is easier to read but I'll let the x86 maintainers
>> decide
>> 
>>     typedef int CHECK_NAME(name, S)[(sizeof(xen_ ## name ## _t) == \
>>                                      sizeof(compat_ ## name ## _t)) ? 
>> 1 : -1]
>> 
>> Also am I reading this correctly that we are using -1 as array index? 
>> I
>> must have made a calculation mistake?
> 
> This is a NIH BUILD_BUG_ON().  It should be rewritten as
> 
> BUILD_BUG_ON(sizeof(xen ...) != sizeof(compat ...));
> 
> which will use _Static_assert() in modern compilers.
> 
> ~Andrew

Ok, thanks.

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


From xen-devel-bounces@lists.xenproject.org Tue Oct 10 16:20:29 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 10 Oct 2023 16:20:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615117.956321 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqFT4-0005Rj-E7; Tue, 10 Oct 2023 16:20:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615117.956321; Tue, 10 Oct 2023 16:20: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 1qqFT4-0005Rc-B1; Tue, 10 Oct 2023 16:20:22 +0000
Received: by outflank-mailman (input) for mailman id 615117;
 Tue, 10 Oct 2023 16: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=LWWS=FY=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qqFT2-0005RV-IR
 for xen-devel@lists.xenproject.org; Tue, 10 Oct 2023 16:20:20 +0000
Received: from mail-lf1-x12d.google.com (mail-lf1-x12d.google.com
 [2a00:1450:4864:20::12d])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id e7860493-6788-11ee-98d3-6d05b1d4d9a1;
 Tue, 10 Oct 2023 18:20:19 +0200 (CEST)
Received: by mail-lf1-x12d.google.com with SMTP id
 2adb3069b0e04-5045cb9c091so7835874e87.3
 for <xen-devel@lists.xenproject.org>; Tue, 10 Oct 2023 09:20:19 -0700 (PDT)
Received: from [0.0.0.0] ([2001:41d0:8:52b7::])
 by smtp.gmail.com with ESMTPSA id
 i9-20020a0cf109000000b006263a9e7c63sm4774537qvl.104.2023.10.10.09.20.08
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 10 Oct 2023 09:20: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: e7860493-6788-11ee-98d3-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1696954819; x=1697559619; darn=lists.xenproject.org;
        h=content-transfer-encoding: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=ocmqPnCH1euRR+x2wtSAYcjqZS/z+3j2pYf7NC0IzoQ=;
        b=jyRMHBay0Q7BDlAeOMmBUSAqEDFG3nOhtQciNbCcuN5cCWJzEgnNhEszhcaLvaq6t7
         WPh7MhDwL9EeHGaXMFfb4GpbGZ0YNQpNAxebs/EOdmSA0DxIVRH7Rg9e21diqCJWw/05
         KQX/Jr4Iu3Q21p3cvV4hf8YJVd8E7OIbCxBFo=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1696954819; x=1697559619;
        h=content-transfer-encoding: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=ocmqPnCH1euRR+x2wtSAYcjqZS/z+3j2pYf7NC0IzoQ=;
        b=ah4r/YsetVkAhG5V5/mV63oe41TOTTn2pAMF6Is3srdHfPzkTC/zt88fK3/Vs0BlJh
         ZEm2ddy0OjBqnLHgFFERRsPjXxeBMZPf4LmpGRxBEotUECReTT2COIXSpE4Rh1GeGYv6
         ujtUfLChsqbu3XBMz5fTma71GdP49gg4TpuDIVDeeISwurHn6WZaUC/kyr9Dv3Akerwo
         T40y/YGT0SRRcbozrx2m5Em+vfFnX+OMdEi4N6MPjefKmxYWWkWwWFc6/AqOcDcXMadE
         1AzVjciZKJ0FEBwF563OuoFcNOuwWXIk9RTvJKvbP6UY0JMeqRJwqn0S4GDJ/bwJCVdh
         BCNw==
X-Gm-Message-State: AOJu0YzM2cwAzo44LOcm/buXargf3RFi6G8VVePxd6KcAQ8QyWuRewUq
	CRM3voDM5g+O/WxDN7STtpcRlQ==
X-Google-Smtp-Source: AGHT+IE4TbubEjbDXfNvK4oSEemwBI685hvrvpqqf0qWXjLg9jiKG7h8rJ0iWlZZMxiqofUpJQ7HbA==
X-Received: by 2002:ac2:4da7:0:b0:500:daec:2817 with SMTP id h7-20020ac24da7000000b00500daec2817mr14367575lfe.54.1696954818731;
        Tue, 10 Oct 2023 09:20:18 -0700 (PDT)
Message-ID: <221aee01-d244-4441-b1c5-e8e39fbcb16a@citrix.com>
Date: Wed, 11 Oct 2023 00:19:58 +0800
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [XEN PATCH 9/9] xen/compat: address Rule 10.1 for macros
 CHECK_SIZE
Content-Language: en-GB
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, roger.pau@citrix.com,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Wei Liu <wl@xen.org>
References: <cover.1696514677.git.nicola.vetrini@bugseng.com>
 <7edf60c0e7bd0680d8b8f8d3aec1264ee5a43878.1696514677.git.nicola.vetrini@bugseng.com>
 <alpine.DEB.2.22.394.2310091749380.3431292@ubuntu-linux-20-04-desktop>
 <9ee8d16c-d34c-45c2-b5f7-53725bdc01c8@citrix.com>
 <b40d9faac462c21e91392017b81bc68c@bugseng.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: <b40d9faac462c21e91392017b81bc68c@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 11/10/2023 12:06 am, Nicola Vetrini wrote:
> On 10/10/2023 18:00, Andrew Cooper wrote:
>> On 10/10/2023 9:02 am, Stefano Stabellini wrote:
>>> On Fri, 6 Oct 2023, Nicola Vetrini wrote:
>>>> The essential type of the result of an inequality operator is
>>>> essentially boolean, therefore it shouldn't be used as an argument of
>>>> the multiplication operator, which expects an integer.
>>>>
>>>> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
>>>> ---
>>>>  xen/include/xen/compat.h | 10 ++++++----
>>>>  1 file changed, 6 insertions(+), 4 deletions(-)
>>>>
>>>> diff --git a/xen/include/xen/compat.h b/xen/include/xen/compat.h
>>>> index f2ce5bb3580a..5ffee6a9fed1 100644
>>>> --- a/xen/include/xen/compat.h
>>>> +++ b/xen/include/xen/compat.h
>>>> @@ -151,12 +151,14 @@ CHECK_NAME_(k, n, T)(k xen_ ## n *x, \
>>>>      return x == c; \
>>>>  }
>>>>
>>>> +#define SIZE_NEQUAL(a, b) \
>>>> +    (sizeof(a) != sizeof(b) ? 1 : 0)
>>>>  #define CHECK_SIZE(name) \
>>>> -    typedef int CHECK_NAME(name, S)[1 - (sizeof(xen_ ## name ##
>>>> _t) != \
>>>> -                                         sizeof(compat_ ## name ##
>>>> _t)) * 2]
>>>> +    typedef int CHECK_NAME(name, S)[1 - (SIZE_NEQUAL(xen_ ## name
>>>> ## _t, \
>>>> +                                                     compat_ ##
>>>> name ## _t)) * 2]
>>>>  #define CHECK_SIZE_(k, n) \
>>>> -    typedef int CHECK_NAME_(k, n, S)[1 - (sizeof(k xen_ ## n) != \
>>>> -                                          sizeof(k compat_ ## n))
>>>> * 2]
>>>> +    typedef int CHECK_NAME_(k, n, S)[1 - (SIZE_NEQUAL(k xen_ ## n, \
>>>> +                                                      k compat_ ##
>>>> n)) * 2]
>>> I think this style is easier to read but I'll let the x86 maintainers
>>> decide
>>>
>>>     typedef int CHECK_NAME(name, S)[(sizeof(xen_ ## name ## _t) == \
>>>                                      sizeof(compat_ ## name ## _t))
>>> ? 1 : -1]
>>>
>>> Also am I reading this correctly that we are using -1 as array index? I
>>> must have made a calculation mistake?
>>
>> This is a NIH BUILD_BUG_ON().  It should be rewritten as
>>
>> BUILD_BUG_ON(sizeof(xen ...) != sizeof(compat ...));
>>
>> which will use _Static_assert() in modern compilers.
>>
>> ~Andrew
>
> Ok, thanks.
>

I'm going to go out on a limb and say that every other pattern that
looks like this probably wants converting to a BUILD_BUG_ON().

This code quite possibly predates the introduction of BUILD_BUG_ON(),
but we want to end up using BUILD_BUG_ON() everywhere because it's the
construct that uses _Static_assert() wherever possible.

~Andrew


From xen-devel-bounces@lists.xenproject.org Tue Oct 10 16:34:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 10 Oct 2023 16:34:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615123.956331 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqFgv-0008NM-Jd; Tue, 10 Oct 2023 16:34:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615123.956331; Tue, 10 Oct 2023 16: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 1qqFgv-0008NF-H8; Tue, 10 Oct 2023 16:34:41 +0000
Received: by outflank-mailman (input) for mailman id 615123;
 Tue, 10 Oct 2023 16: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=LWWS=FY=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qqFgu-0008N9-6n
 for xen-devel@lists.xenproject.org; Tue, 10 Oct 2023 16:34:40 +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 e69bd988-678a-11ee-9b0d-b553b5be7939;
 Tue, 10 Oct 2023 18:34:36 +0200 (CEST)
Received: by mail-wm1-x32a.google.com with SMTP id
 5b1f17b1804b1-405505b07dfso118165e9.0
 for <xen-devel@lists.xenproject.org>; Tue, 10 Oct 2023 09:34:36 -0700 (PDT)
Received: from [0.0.0.0] ([2001:41d0:8:52b7::])
 by smtp.gmail.com with ESMTPSA id
 i1-20020a37c201000000b007742c2ad7dfsm4449226qkm.73.2023.10.10.09.34.32
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 10 Oct 2023 09:34: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: e69bd988-678a-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1696955676; x=1697560476; darn=lists.xenproject.org;
        h=content-transfer-encoding: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=/jsbBaWWysUZHibfyXWsBmxBdGQg70Lnk7x5g9N02Pk=;
        b=Puoo1FEbbOIf+9wxWbm4OSalhqdIl5N9bqBEywxdGv5Y1vrZTRw/72y021nJy7zU0d
         FtCi/p5JJMBOKDW0xkldCT1fk8LkwZds25V+1/4VuWbu8fyxNoeaIdREypQVtV4yt65m
         cB8+gcI3OCjT5QWILqjD1VsYSGKylebORZLe8=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1696955676; x=1697560476;
        h=content-transfer-encoding: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=/jsbBaWWysUZHibfyXWsBmxBdGQg70Lnk7x5g9N02Pk=;
        b=kVR86o4ptwnIz74Z1DQfrEoMQGP+449LC31XZTNfwJfqwo2uFvmGF8fDfcQhfhCKzM
         lloBfP7/UP6JSZz/rc2fr/Oml+XBmDbvXShXSREUWRWAmfDUSiIzUSO6Rzd8jU/OT2pF
         qFp/Etw+KYBannIljemI8cBbn1uqKMSowymR8zeafZw+QNOGDsuUs9u87mngbb8iHHE1
         LqC4hzVQckRRzfBUcmnQ4mkwWcpTJJUcRK8P5Jd/l7KGxmehgnO4y/M19VZFeORpTg+j
         hfmyIKxH1RsS7FAPArVJeDhBHzaqCrtR3FzMHThznH/yTrZgENxvazYEkb/yQx8JRMtX
         vp+A==
X-Gm-Message-State: AOJu0YzWhb1ZjU6I0wBEqoJFcRf60bL3dTAaZ9MrIpR2PFPVv6nGIK0M
	19WQhgwVE4PI/Hq3O6diFjZ7bQ==
X-Google-Smtp-Source: AGHT+IErYi8sc/P/FOYwsCSnLXpJZ6IriiNqjZgK9/kj3EboV/LzIQarudfTaw40waWLDecZSf2Fzw==
X-Received: by 2002:adf:e80d:0:b0:31d:db2d:27c6 with SMTP id o13-20020adfe80d000000b0031ddb2d27c6mr12986460wrm.30.1696955676310;
        Tue, 10 Oct 2023 09:34:36 -0700 (PDT)
Message-ID: <2ef1f6b6-9b50-4e77-abad-fa046eb2ca0a@citrix.com>
Date: Wed, 11 Oct 2023 00:34:27 +0800
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [XEN PATCH v1] tools/python: Add python3 compatibility
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>, Wei Liu <wl@xen.org>,
 Anthony PERARD <anthony.perard@citrix.com>
References: <efb10e537e37df1995dd8f87c28a8eb64ec9b61e.1696947009.git.javi.merino@cloud.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: <efb10e537e37df1995dd8f87c28a8eb64ec9b61e.1696947009.git.javi.merino@cloud.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit

On 10/10/2023 10:18 pm, Javi Merino wrote:
> Most of the work for python3 compatibility was done in
> 1430c5a8cad4 (tools/python: Python 3 compatibility, 2019-12-18).  This
> just adds a few builtins needed for python3.
>
> Resolves: xen-project/xen#156
>
> Signed-off-by: Javi Merino <javi.merino@cloud.com>
> ---
>
> I haven't tested it.
>
>  README                                     | 1 +
>  tools/python/scripts/convert-legacy-stream | 3 +++
>  2 files changed, 4 insertions(+)
>
> diff --git a/README b/README
> index 855db01d36..44ed88c392 100644
> --- a/README
> +++ b/README
> @@ -51,6 +51,7 @@ provided by your OS distributor:
>      * POSIX compatible awk
>      * Development install of zlib (e.g., zlib-dev)
>      * Development install of Python 2.7 or later (e.g., python-dev)
> +      - If using Python 2.7, you also need the future module.  This is not needed for Python 3.
>      * 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)
> diff --git a/tools/python/scripts/convert-legacy-stream b/tools/python/scripts/convert-legacy-stream
> index 7fe375a668..26a66c50fc 100755
> --- a/tools/python/scripts/convert-legacy-stream
> +++ b/tools/python/scripts/convert-legacy-stream
> @@ -8,6 +8,9 @@ Convert a legacy migration stream to a v2 stream.
>  from __future__ import print_function
>  from __future__ import division
>  
> +from builtins import zip
> +from builtins import range
> +from builtins import object

It can't be object because most other scripts use it just fine in py2
and py3.

There's only one single use of zip and range in this script, and range
is clearly fine (although it wants to be xrange() on py2 and we do
opencode that places), so I'm guessing the problem is with zip(), but
it's not exactly clear why?

~Andrew


From xen-devel-bounces@lists.xenproject.org Tue Oct 10 16:58:42 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 10 Oct 2023 16:58:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615127.956342 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqG41-00065b-Gk; Tue, 10 Oct 2023 16:58:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615127.956342; Tue, 10 Oct 2023 16: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 1qqG41-00065U-Bq; Tue, 10 Oct 2023 16:58:33 +0000
Received: by outflank-mailman (input) for mailman id 615127;
 Tue, 10 Oct 2023 16:58: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=QMDy=FY=cloud.com=marcus.granado@srs-se1.protection.inumbo.net>)
 id 1qqG40-00065O-5e
 for xen-devel@lists.xenproject.org; Tue, 10 Oct 2023 16:58:32 +0000
Received: from mail-ed1-x536.google.com (mail-ed1-x536.google.com
 [2a00:1450:4864:20::536])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 3d44c598-678e-11ee-98d3-6d05b1d4d9a1;
 Tue, 10 Oct 2023 18:58:30 +0200 (CEST)
Received: by mail-ed1-x536.google.com with SMTP id
 4fb4d7f45d1cf-5230a22cfd1so10418511a12.1
 for <xen-devel@lists.xenproject.org>; Tue, 10 Oct 2023 09:58: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: 3d44c598-678e-11ee-98d3-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1696957110; x=1697561910; 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=yCWuW4P+kvBvZNsMJgrMihuH8C66siFFEOKMDJDFNJk=;
        b=SxYdjfstmTTPuLaLF2P30GrsTEqbaHoPKc1KccR6EphfsN7Z4Y9Gu19DNzmUZuvDiB
         bMCh8eAPg3ps7qU9bPiGXWDfBmWwlEVxLFtPBmVQTt4tD/SDn4cRXwxlUG8jzwBrJ3iF
         ZieRk/qif9/r5agmB00lc/RqsI60k/eqyf2UM=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1696957110; x=1697561910;
        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=yCWuW4P+kvBvZNsMJgrMihuH8C66siFFEOKMDJDFNJk=;
        b=uLNe+Dm6N/3JFvoDNlZ1rN3X1PJwvB2oYqz2IVMfq2sZcDbGhksZPGkDJmbjXvcvCv
         p2LCMoK+r65WDxgG3TynozmjYpFPoXY4+5hJ91TmCQicNJkxm2JfLuaaPJvEg2WyjIrL
         yzbTHw6JVu5ZSV4uOqVYq3ghsH06OrHTh4NY69NPbjpPaBUGqeW1TxFymOZi7pYeMhlV
         lfZgquzZPYC1DXkdo14yehc5cAlZ4ZcJ98fyiHYTT1WN9URJ60pi2lUMDaT9xr/CACD/
         E3ORD9l0gqBurVXeCZy5LS0msFDm+7FT6lIwzbdgH1ubxU//4coTYsagbKuxgfpVtzGw
         3rFQ==
X-Gm-Message-State: AOJu0YzpUym2/WIY7eZYP/T0wGyFqUqjJlq/DZP8u8xzZkBHvKBwVj+S
	KwOvy4ZrcQn0W7+P1OxLo1YMb3Aen1oJyN9V2Bd9cA==
X-Google-Smtp-Source: AGHT+IHoclPOSJQGesXQRv8rpbXStvkuzXS6scYqLWHlq7jjSYIyPbCAnFNu2QFoJqZ7g6wfO2EBXqAaUIsBxgpLykY=
X-Received: by 2002:aa7:c302:0:b0:533:97c:8414 with SMTP id
 l2-20020aa7c302000000b00533097c8414mr17750476edq.7.1696957110200; Tue, 10 Oct
 2023 09:58:30 -0700 (PDT)
MIME-Version: 1.0
References: <20230921122352.2307574-1-george.dunlap@cloud.com>
 <20230921122352.2307574-2-george.dunlap@cloud.com> <CA+zSX=bmb5c3LR4u63kaZCBuMK1tvzLxaw=yenerrsV0=61XVA@mail.gmail.com>
In-Reply-To: <CA+zSX=bmb5c3LR4u63kaZCBuMK1tvzLxaw=yenerrsV0=61XVA@mail.gmail.com>
From: Marcus Granado <marcus.granado@cloud.com>
Date: Tue, 10 Oct 2023 17:58:19 +0100
Message-ID: <CANNkNPJRP_m_G-dEo+rPrXg6EGanLtJhi5NEfSWjeULpUV9sRg@mail.gmail.com>
Subject: Re: [PATCH v2 2/2] credit: Don't steal vcpus which have yielded
To: George Dunlap <george.dunlap@cloud.com>
Cc: xen-devel@lists.xenproject.org, Andrew Cooper <andrew.cooper3@citrix.com>, 
	Dario Faggioli <dfaggioli@suse.com>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Thu, 21 Sept 2023 at 15:14, George Dunlap <george.dunlap@cloud.com> wrot=
e:
>
> On Thu, Sep 21, 2023 at 1:23=E2=80=AFPM George Dunlap <george.dunlap@clou=
d.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
> >
>
> 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.
>
Yes, thanks for the summary, that's pretty much it.
Marcus


From xen-devel-bounces@lists.xenproject.org Tue Oct 10 17:11:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 10 Oct 2023 17:11:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615131.956350 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqGGs-0000Zz-K4; Tue, 10 Oct 2023 17:11:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615131.956350; Tue, 10 Oct 2023 17: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 1qqGGs-0000Zs-HS; Tue, 10 Oct 2023 17:11:50 +0000
Received: by outflank-mailman (input) for mailman id 615131;
 Tue, 10 Oct 2023 17: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=Gt9L=FY=siemens.com=dan.driscoll@srs-se1.protection.inumbo.net>)
 id 1qqGGr-0000Zm-1Q
 for xen-devel@lists.xenproject.org; Tue, 10 Oct 2023 17:11:49 +0000
Received: from NAM11-CO1-obe.outbound.protection.outlook.com
 (mail-co1nam11on20604.outbound.protection.outlook.com
 [2a01:111:f400:7eab::604])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 164ac3d7-6790-11ee-9b0d-b553b5be7939;
 Tue, 10 Oct 2023 19:11:45 +0200 (CEST)
Received: from DM6PR07MB4316.namprd07.prod.outlook.com (2603:10b6:5:c1::17) by
 CH0PR07MB8924.namprd07.prod.outlook.com (2603:10b6:610:109::15) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.38; Tue, 10 Oct
 2023 17:11:42 +0000
Received: from DM6PR07MB4316.namprd07.prod.outlook.com
 ([fe80::df03:f5d6:9210:8dd4]) by DM6PR07MB4316.namprd07.prod.outlook.com
 ([fe80::df03:f5d6:9210:8dd4%6]) with mapi id 15.20.6863.032; Tue, 10 Oct 2023
 17:11: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: 164ac3d7-6790-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=G7brKgOCfIsGdUxL/97/dqh/84FPbj0Lxx0r3C5EVLZ5hYE+WOyyVBcnII5iK8BmwZcvcbwB0eeWrfcmAoK+RlA1zNB7sqIsvUGy9xyq63ZiTi8gAOhAWEJjPkDeHJnqLle16pC2tdFln7LQA3VHKfSJ/T+LrCw7GFcfI476YO5bHfS+wb4SJ6r2uS34GWb70X7bRWCq8RRRX+t08L6UyciZOVX7qLr3OKBhJlbiGG3youSRDFzFwUd+fQR5hwIIdMO3hjguuK1tGqRNvPqbhFk31TX71D8DePHCVlerhZUe3Rbb7PWQAeJ7OZVv2YCghTSNPQ79KkySxwECkGE5tA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=betaDKU9pBkJ0XSaEJyJ/TwLMP5zHhxaWcNcUTf3Fp8=;
 b=RJZhpK35h8xNfMlKW/scCbgbR3KJvXyuWOoHVkOHmtDi3O4JSZ0bibiYt3A5zWIsldnDqG0tVZbj1yRjspxWd4z1AgjqvvpwN+E03fKnOEMsGrr1PjxxW1xmBM54VPaa8vF3kk66SQkyIgh47tUWKwgz8c9ylh3iUWkJQYR3AbT5lZ8IdqQ0MxcDv6+LcdVDaaG3/nsCAIltaVbh5KPHtwuHlwo2MzOGztcqt7D337mibacC5UnhFQscqHO3p6SWdLjIFcS12lYzDxjoT2UNzFEwLNsb/AR3xEwqaeoSUUR2wn1+DK8dv01l2umpB7sL1A2C5CAEgF0/cO23FYyoQg==
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=betaDKU9pBkJ0XSaEJyJ/TwLMP5zHhxaWcNcUTf3Fp8=;
 b=nevKMiaoKoknRwgpXtOKq0BLxRk+354ninqCNwSaIqA1kyHzQpdox1Uc2JZR4Iu5mk+E52aFEpCmv+L4Oxu1TC4ivknFd01enSKYJUseq7wrJWY5ALo9Vrf2mxguwIZmJ9OCtJ1bTpmIc7qnT93CuOPFBgWc16649HPdaN9UVLKiBx27c0kRzg1yJsf5NsHHIb4fe5WEjtPSXAXcrabKiQwYMlZ5fPBqPapOkD/azm3OtdJdrGpx/NK3U13iXyT6V6zisqm9MpgIUQZfj2m68wDs9C+imnvqsnUzbSvVnKMse0zjKpSqTww+boowYbjxtExPLOBR7Agiv4hZaPpRdg==
From: "Driscoll, Dan" <dan.driscoll@siemens.com>
To: Julien Grall <julien@xen.org>, "xen-devel@lists.xenproject.org"
	<xen-devel@lists.xenproject.org>
CC: "Henry.Wang@arm.com" <Henry.Wang@arm.com>, "arvind.raghuraman@siemens.com"
	<arvind.raghuraman@siemens.com>, "michal.orzel@amd.com"
	<michal.orzel@amd.com>, Julien Grall <jgrall@amazon.com>, Stefano Stabellini
	<sstabellini@kernel.org>, Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: RE: [PATCH] xen/arm: vtimer: Don't read/use the secure physical timer
 interrupt for ACPI
Thread-Topic: [PATCH] xen/arm: vtimer: Don't read/use the secure physical
 timer interrupt for ACPI
Thread-Index: AQHZ96yxZ+gVlhB35EKAv+vh3PAOIrBDSgIA
Date: Tue, 10 Oct 2023 17:11:42 +0000
Message-ID:
 <DM6PR07MB4316E6C8F062F93E800AFD6A9ACDA@DM6PR07MB4316.namprd07.prod.outlook.com>
References: <20231005165454.18143-1-julien@xen.org>
In-Reply-To: <20231005165454.18143-1-julien@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-10-10T17:11: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=17634b2b-a011-465e-bc34-852e0e76806b;
 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_|CH0PR07MB8924:EE_
x-ms-office365-filtering-correlation-id: 652b5f09-7f79-4185-eaef-08dbc9b3f93f
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info:
 du8m3eYsm+E6ZiIO/mp7bdo+6N4sdwr2P/4aUock5ht6J+2VWvJCvpCJlhPek2KVQ+OD7LK9YacMwQqtUUzmUiIRsTSEqr8nMH8u5+KIlbwfPK4hcSD9hsQJHLd6vLHAvktuE8NMlfSD+s+Uo/+qqJjJGzA/7fQyz6hTuJDDzgu+f+vQU7588DaHKSoY4Lc9YmMsbRVE1PMwXOWJyV5OW7GuOarrEfPsI7CjYJY5P7L2E8HuhyCYJm9KfE88U6r7JnXnEABiYUAkEQ2yHtQdRcmArN1AmiJy4Jmr2TEhEblYRjXuww5XPPpzX6UkAIg+hC3QJuJ+Djee2BsS14BqBYFQNnObmlmXhCQpc3N1MSZmV6aR4mrIMIm1XI6jzBPcGHCmu08VyVr0qUnliOen7TXHE8ZvQMn8gO4IXpv284cn1wCntBf5dTaatpXRALhoDOs717CKhUpmiA3eM3EmsZzyjsSmtB/7X2rBs948Kucr1HFdbhxklm6JLNzsxbUcDCSZK5fTRR8KTzPTlFFScpKncwiWmg1/y6UkLS1IBAkdx4/XJkrcaJSnU2cMs2GqWqTdPbgjXsT585Vcbg6QRCxy+KkuwyfdCqaUVaU1j13lMNit9XMCUxFEn37R2YYv
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)(39860400002)(396003)(366004)(376002)(230922051799003)(451199024)(64100799003)(186009)(1800799009)(55016003)(66946007)(53546011)(6506007)(83380400001)(110136005)(64756008)(26005)(66556008)(66476007)(66446008)(316002)(54906003)(76116006)(5660300002)(7696005)(52536014)(71200400001)(41300700001)(8676002)(2906002)(9686003)(478600001)(8936002)(4326008)(33656002)(38070700005)(38100700002)(86362001)(122000001)(82960400001);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0:
 =?us-ascii?Q?8qDkpVvROQ0Ifj1MU6+IdJYBSWpmIOTUl+evzEdL49sPbvPTyl91JHKkQttm?=
 =?us-ascii?Q?t8JqjCs2vYiGfZUnw5nXyEsHL0e4QLDRhixpPIA9Cl5yi6HiRGfBt9f374nN?=
 =?us-ascii?Q?xaS0oC2hdp8JPGggQTdhRJ4n3iFUbMdyGCRy3vBtaKIRwTVqqF6klwlxq149?=
 =?us-ascii?Q?X2gKwKOfeSweIf3s9geSGheb+RX/My3MDpO1rwjArvyhG2YFM3CtcI6tpS4H?=
 =?us-ascii?Q?EI+d/yj8GD47w29q9W0FZ3XB4oQSVCXvszw/bi0JmRC38rZkhiDjvyOVVIgf?=
 =?us-ascii?Q?7XYFdFxl86O1HVNNp91lbf/bqWV7n0yulqg66Ix4dfEoFMI/T2sns81DqZlQ?=
 =?us-ascii?Q?kKneLXUrEr1kiknfmiRPFeZ2CqvKiCJbv/Mdjzup0lbHBVuLDb4WFosZekTH?=
 =?us-ascii?Q?3tP2N9koVzjVQTDRH5/HV3qCbpYUnD1SHdrSxs4VbZrbBb4d5E3KUPc3Y5sy?=
 =?us-ascii?Q?lxzHRLhurnf3BCQb35Sl1yXxPfo9mfPp3MdH7TpB1vy989LQ+9V8AxBxVils?=
 =?us-ascii?Q?ewm8QNqYtbUX/vMzwrMalxeftyiuTK6bfwSP6u2/Yjmibim4s0AC5TNPAkut?=
 =?us-ascii?Q?QYrlAVVWEgmUj9bZiX45qQ329T5eMnNS32F+ccCV43IMYPKIZLExR/WUUCrA?=
 =?us-ascii?Q?nxlEASr2w2dLDAllu0IfDQRU3ixxqls4KzhyGbu7H6L0/kS7JUsehDnc3Ms6?=
 =?us-ascii?Q?SV2TCgy/sZojK311fZCuVeGSFeSVkMRAezOFraeSTqkQAXN/PZ51Gl74DY23?=
 =?us-ascii?Q?2S98r4ZHrL69tLtoku/qSecG13zPUi18iHiCDPTMeT9+tnf4dXS6KwKZ4aWZ?=
 =?us-ascii?Q?sVBDlNmYRPblBsUS8d9Y5jaNliEINf1FkDyg2/wjUTYcEQE2aZ9HGtI5iHh6?=
 =?us-ascii?Q?CT4EMwmbDlgE19YHyns7pRUR9xIhIChmxl3CgivnA06VuqT7qv42wEkdS30V?=
 =?us-ascii?Q?vfl0w/znCAauxEczttvywWna5E5WhsjY27Xo0ZuznH/saIcACjxULVanfREC?=
 =?us-ascii?Q?HAH5Df5BohAj0Gvj7K2sQEdlmkfddu1R0Mx0Lpf+2ZyA0i9YpqvqP6yBWfi9?=
 =?us-ascii?Q?Z3HBeZnNoVn18exN12uNHM5m2sDyvfk1q7f1AR2XA8VIzBn9zLXhfwwUmM41?=
 =?us-ascii?Q?6mp18hakPOZQEk3d4cqQKxqo988lqyKC65i2UwrSmbPyrsdWppE0I/QL4259?=
 =?us-ascii?Q?ZPsGtcfMuKnHmuIwX98k9g4d5gKn8hDFyTXjsaKiPeOdny7BmK775hAD5cpi?=
 =?us-ascii?Q?JLSIC7anIbJ9J6IMEnOBaGZ2+AOxnAuQYuN7rQlNTLl5/qYaifFOYbQfq8Ue?=
 =?us-ascii?Q?1XMSJcBguwNN9ZKHRRK/OVyZcEc5UdxaCAzsjXC9GCKHQ4ZPYl9j/kQolk1c?=
 =?us-ascii?Q?LcoZbJHZ2s/+tBMprC70KudGO3vKOfoSJofF9Gihb/XuAu/YzUvRPM2oD5dk?=
 =?us-ascii?Q?mu/MeWTRFHg5xuw1fos1J37Es4M86t74RUhaiI9HUZsvU2Sd0Q+gbs0fTuAT?=
 =?us-ascii?Q?hZF/m1EeNDsfsu3ND2vJXn4zWEnwsLkWSXbFKVT/nqRl7dgFQ59pYTEJ2ZX3?=
 =?us-ascii?Q?1dJv1q30dPdJ9O1nIUN76auW5EKpfimWZZx6WYo0?=
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: 652b5f09-7f79-4185-eaef-08dbc9b3f93f
X-MS-Exchange-CrossTenant-originalarrivaltime: 10 Oct 2023 17:11:42.0879
 (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: UhmA324Fz8/QXNDAHLSfebSva8H51wkA+UQNcdvu0fnQXcx8pZPq1XZUpz4NRMN5Au0quxJnfgmHPeNodXywfTiMjIfiSVhg7VSyoNfvOd0=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH0PR07MB8924

Julien,

	Verified this patch works on Graviton 2... so looks good from this perspec=
tive.

Thanks,
Dan

> -----Original Message-----
> From: Julien Grall <julien@xen.org>
> Sent: Thursday, October 5, 2023 11:55 AM
> To: xen-devel@lists.xenproject.org
> Cc: Henry.Wang@arm.com; Driscoll, Dan (DI SW CAS ES TO)
> <dan.driscoll@siemens.com>; Raghuraman, Arvind (DI SW CAS ES)
> <arvind.raghuraman@siemens.com>; michal.orzel@amd.com; Julien Grall
> <jgrall@amazon.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: vtimer: Don't read/use the secure physical time=
r
> interrupt for ACPI
>=20
> From: Julien Grall <jgrall@amazon.com>
>=20
> Per ACPI 6.5 section 5.2.25 ("Generic Timer Description Table (GTDT)"), t=
he fields
> "Secure EL1 Timer GSIV/Flags" are optional and an OS running in non-secur=
e
> world is meant to ignore the values.
>=20
> However, Xen is trying to reserve the value. When booting on Graviton
> 2 metal instances, this would result to crash a boot because the value is=
 0 which is
> already reserved (I haven't checked for which device).
> While nothing prevent a PPI to be shared, the field should have been igno=
red by
> Xen.
>=20
> For the Device-Tree case, I couldn't find a statement suggesting that the=
 secure
> physical timer interrupt  is ignored. In fact, I have found some code in =
Linux using it
> as a fallback. That said, it should never be used.
>=20
> As I am not aware of any issue when booting using Device-Tree, the physic=
al timer
> interrupt is only ignored for ACPI.
>=20
> Signed-off-by: Julien Grall <jgrall@amazon.com>
>=20
> ----
>=20
> This has not been tested on Graviton 2 because I can't seem to get the se=
rial
> console working properly. @Dan would you be able to try it?
>=20
> It would also be good to understand why 0 why already reserved. This may =
be a
> sign for other issues in the ACPI code.
> ---
>  xen/arch/arm/time.c   |  4 ----
>  xen/arch/arm/vtimer.c | 17 +++++++++++++++--
>  2 files changed, 15 insertions(+), 6 deletions(-)
>=20
> diff --git a/xen/arch/arm/time.c b/xen/arch/arm/time.c index
> 3535bd8ac7c7..8fc14cd3ff62 100644
> --- a/xen/arch/arm/time.c
> +++ b/xen/arch/arm/time.c
> @@ -78,10 +78,6 @@ static int __init arch_timer_acpi_init(struct
> acpi_table_header *header)
>      irq_set_type(gtdt->non_secure_el1_interrupt, irq_type);
>      timer_irq[TIMER_PHYS_NONSECURE_PPI] =3D gtdt->non_secure_el1_interru=
pt;
>=20
> -    irq_type =3D acpi_get_timer_irq_type(gtdt->secure_el1_flags);
> -    irq_set_type(gtdt->secure_el1_interrupt, irq_type);
> -    timer_irq[TIMER_PHYS_SECURE_PPI] =3D gtdt->secure_el1_interrupt;
> -
>      irq_type =3D acpi_get_timer_irq_type(gtdt->virtual_timer_flags);
>      irq_set_type(gtdt->virtual_timer_interrupt, irq_type);
>      timer_irq[TIMER_VIRT_PPI] =3D gtdt->virtual_timer_interrupt; diff --=
git
> a/xen/arch/arm/vtimer.c b/xen/arch/arm/vtimer.c index
> c54360e20266..e73ae33c1b58 100644
> --- a/xen/arch/arm/vtimer.c
> +++ b/xen/arch/arm/vtimer.c
> @@ -8,6 +8,7 @@
>   * Copyright (c) 2011 Citrix Systems.
>   */
>=20
> +#include <xen/acpi.h>
>  #include <xen/lib.h>
>  #include <xen/perfc.h>
>  #include <xen/sched.h>
> @@ -61,10 +62,22 @@ int domain_vtimer_init(struct domain *d, struct
> xen_arch_domainconfig *config)
>=20
>      config->clock_frequency =3D timer_dt_clock_frequency;
>=20
> -    /* At this stage vgic_reserve_virq can't fail */
> +    /*
> +     * Per the ACPI specification, providing a secure EL1 timer
> +     * interrupt is optional and will be ignored by non-secure OS.
> +     * Therefore don't reserve the interrupt number for the HW domain
> +     * and ACPI.
> +     *
> +     * Note that we should still reserve it when using the Device-Tree
> +     * because the interrupt is not optional. That said, we are not
> +     * expecting any OS to use it when running on top of Xen.
> +     *
> +     * At this stage vgic_reserve_virq() is not meant to fail.
> +    */
>      if ( is_hardware_domain(d) )
>      {
> -        if ( !vgic_reserve_virq(d, timer_get_irq(TIMER_PHYS_SECURE_PPI))=
 )
> +        if ( acpi_disabled &&
> +             !vgic_reserve_virq(d,
> + timer_get_irq(TIMER_PHYS_SECURE_PPI)) )
>              BUG();
>=20
>          if ( !vgic_reserve_virq(d, timer_get_irq(TIMER_PHYS_NONSECURE_PP=
I)) )
> --
> 2.40.1



From xen-devel-bounces@lists.xenproject.org Tue Oct 10 17:40:06 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 10 Oct 2023 17:40:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615138.956361 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqGhx-0006uC-SS; Tue, 10 Oct 2023 17:39:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615138.956361; Tue, 10 Oct 2023 17:39: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 1qqGhx-0006u5-PZ; Tue, 10 Oct 2023 17:39:49 +0000
Received: by outflank-mailman (input) for mailman id 615138;
 Tue, 10 Oct 2023 17:39: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=6vZW=FY=gmail.com=jandryuk@srs-se1.protection.inumbo.net>)
 id 1qqGhw-0006tz-64
 for xen-devel@lists.xenproject.org; Tue, 10 Oct 2023 17:39:48 +0000
Received: from mail-yb1-xb2d.google.com (mail-yb1-xb2d.google.com
 [2607:f8b0:4864:20::b2d])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id ffd1852f-6793-11ee-9b0d-b553b5be7939;
 Tue, 10 Oct 2023 19:39:45 +0200 (CEST)
Received: by mail-yb1-xb2d.google.com with SMTP id
 3f1490d57ef6-d81f079fe73so6918908276.3
 for <xen-devel@lists.xenproject.org>; Tue, 10 Oct 2023 10:39:45 -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
 y8-20020a0cf148000000b00655d711180dsm4930073qvl.17.2023.10.10.10.39.42
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Tue, 10 Oct 2023 10:39: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: ffd1852f-6793-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1696959584; x=1697564384; 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=c/yA30J39p3R+cEj+Qw2hre1tLrE/L7D+ruLEDIk3qM=;
        b=Afmt1xi1btPRr5v9DbzTDcbJIPAmL4HsP5M59dg+FA65TughyXv4hmLSo0AVejZREn
         ziz1hJLQ2b3AjqVCqgP7ydFtUKcCyVbonChUy9YJSXkKagdp7541A3U4UCWVs2VcX6dI
         m1Nu41FV1IeIoV1vnpBZhd81/G3DosbjfbJjQz/v6PO9wPFvcmO0vKRbX+akMCHkuqyz
         LgVHCaS9OiocABxQfmlMedD08NQWhgvnN2pH1U74H2gQeQUmPWXDjRh71c2K2ROkPCZY
         7BHKix/W8lO3F5+rgOBw6nNjwK3pOXkjhVFFtdLeN6i+Poedd1DkVsTPoRqpKsDY4+Wh
         HRXw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1696959584; x=1697564384;
        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=c/yA30J39p3R+cEj+Qw2hre1tLrE/L7D+ruLEDIk3qM=;
        b=hGvXzLvgFTi+e82l8MZ5s1NNnjCP6XODtd1HLAsbymUJ6CSeHDhYBccHjhRf5Y1GCk
         XXA2SKJWbvDAXiRD4uSDktcGwNNClaZLqKF6suiIpxgnuC/d6l8r0cQpLsTzEdPiMWf4
         DZUvVN34U7jRXtsDanCq39/b2c1eKWpctqf8t0dkuY9DYXhtx9xrczinpsG0l8qq+nSY
         iBkVyaB/h5LzMGeTfPhXhGvSn37R45kwTVHimw845ai6fARgIkd7b3UHUP1/uBNnA/5d
         Iob3Fu3ZZ21/Ku4VO+v62DAcsK9IMo3jFDOtHZ4fAZPQBLshs4VGocD8MmlM2yEgbvom
         WOmA==
X-Gm-Message-State: AOJu0YygsIjkj+TCfdYQt18LlQKLP2Voysk20e/syyjz9pNd61Lr83m3
	NnkElLQVSTGB8SuecGtqXQ8=
X-Google-Smtp-Source: AGHT+IH2Qw4C8iG+DuwqBgGLWMpC8w2kEty6i3xOSJxBWfFTL8DaOHH5TvMD6QyQeRt0Ruy2GjA4Ww==
X-Received: by 2002:a5b:a50:0:b0:d97:213b:4775 with SMTP id z16-20020a5b0a50000000b00d97213b4775mr10865311ybq.34.1696959583666;
        Tue, 10 Oct 2023 10:39:43 -0700 (PDT)
From: Jason Andryuk <jandryuk@gmail.com>
To: Juergen Gross <jgross@suse.com>,
	Boris Ostrovsky <boris.ostrovsky@oracle.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>
Cc: michal.wilczynski@intel.com,
	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>,
	linux-kernel@vger.kernel.org,
	xen-devel@lists.xenproject.org
Subject: [PATCH v3] acpi/processor: sanitize _OSC/_PDC capabilities for Xen dom0
Date: Tue, 10 Oct 2023 13:39:22 -0400
Message-ID: <20231010173924.44167-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 capability 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, the hypervisor is the entity
in charge of processor power management, and hence Xen needs to make
sure the capabilities reported by _OSC/_PDC 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
ACPI_PROC_CAP_COLLAB_PROC_PERF (bit 12) in the capability bits and the
_OSC/_PDC call will apply it.

[ jandryuk: Mention Xen HWP's need.  Support _OSC & _PDC ]
Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
Cc: stable@vger.kernel.org
Signed-off-by: Jason Andryuk <jandryuk@gmail.com>
---
v3:
Move xen_sanitize_pdc() call to arch_acpi_set_proc_cap_bits() to cover
_OSC and _PDC.
drivers/xen/pcpu.c is CONFIG_DOM0 && CONFIG_X86

v2:
Move local variables in acpi_processor_eval_pdc() to reuse in both conditions.
---
 arch/x86/include/asm/acpi.h           | 13 +++++++++++++
 arch/x86/include/asm/xen/hypervisor.h |  9 +++++++++
 drivers/xen/pcpu.c                    | 21 +++++++++++++++++++++
 3 files changed, 43 insertions(+)

diff --git a/arch/x86/include/asm/acpi.h b/arch/x86/include/asm/acpi.h
index c8a7fc23f63c..cc8d1669d6e8 100644
--- a/arch/x86/include/asm/acpi.h
+++ b/arch/x86/include/asm/acpi.h
@@ -16,6 +16,9 @@
 #include <asm/x86_init.h>
 #include <asm/cpufeature.h>
 #include <asm/irq_vectors.h>
+#include <asm/xen/hypervisor.h>
+
+#include <xen/xen.h>
 
 #ifdef CONFIG_ACPI_APEI
 # include <asm/pgtable_types.h>
@@ -127,6 +130,16 @@ static inline void arch_acpi_set_proc_cap_bits(u32 *cap)
 	if (!cpu_has(c, X86_FEATURE_MWAIT) ||
 	    boot_option_idle_override == IDLE_NOMWAIT)
 		*cap &= ~(ACPI_PROC_CAP_C_C1_FFH | ACPI_PROC_CAP_C_C2C3_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(cap);
+	}
 }
 
 static inline bool acpi_has_cpu_in_madt(void)
diff --git a/arch/x86/include/asm/xen/hypervisor.h b/arch/x86/include/asm/xen/hypervisor.h
index 7048dfacc04b..c6c2f174fa30 100644
--- a/arch/x86/include/asm/xen/hypervisor.h
+++ b/arch/x86/include/asm/xen/hypervisor.h
@@ -100,4 +100,13 @@ static inline void leave_lazy(enum xen_lazy_mode mode)
 
 enum xen_lazy_mode xen_get_lazy_mode(void);
 
+#if defined(CONFIG_XEN_DOM0) && defined(CONFIG_ACPI)
+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/drivers/xen/pcpu.c b/drivers/xen/pcpu.c
index b3e3d1bb37f3..859bb6027105 100644
--- a/drivers/xen/pcpu.c
+++ b/drivers/xen/pcpu.c
@@ -47,6 +47,9 @@
 #include <asm/xen/hypervisor.h>
 #include <asm/xen/hypercall.h>
 
+#ifdef CONFIG_ACPI
+#include <acpi/processor.h>
+#endif
 
 /*
  * @cpu_id: Xen physical cpu logic number
@@ -400,4 +403,22 @@ bool __init xen_processor_present(uint32_t acpi_id)
 
 	return online;
 }
+
+void xen_sanitize_pdc(uint32_t *cap)
+{
+	struct xen_platform_op op = {
+		.cmd			= XENPF_set_processor_pminfo,
+		.u.set_pminfo.id	= -1,
+		.u.set_pminfo.type	= XEN_PM_PDC,
+	};
+	u32 buf[3] = { ACPI_PDC_REVISION_ID, 1, *cap };
+	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);
+	*cap = buf[2];
+}
 #endif
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Tue Oct 10 17:52:45 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 10 Oct 2023 17:52:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615142.956371 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqGuJ-0001tw-Va; Tue, 10 Oct 2023 17:52:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615142.956371; Tue, 10 Oct 2023 17: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 1qqGuJ-0001tp-So; Tue, 10 Oct 2023 17:52:35 +0000
Received: by outflank-mailman (input) for mailman id 615142;
 Tue, 10 Oct 2023 17:52: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 1qqGuI-0001tf-IV; Tue, 10 Oct 2023 17:52: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 1qqGuI-0000BC-GK; Tue, 10 Oct 2023 17:52: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 1qqGuI-0001Vr-5N; Tue, 10 Oct 2023 17:52:34 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qqGuI-0006uh-3m; Tue, 10 Oct 2023 17:52: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=vdu+Xk0fAv9YHX58tyB5ZCEtqHhY+RAcBYZPPaDpUR0=; b=5N3UvWzcLCjDG16dcveFj/c6zH
	HU504WIda7dLZVziU8J+xu0a39UuL3Pc8ZgJuYDdJPcKeOXDqVgp3EfRK8St4fYle0mv+RRqpOxL+
	FBmwq+PgwXCFIbQgzfWz/ro8qmfTrQaXei1Ae2iBdQ2yFWZz5b31/Wu+foK3Xtdzxv+Q=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183333-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 183333: 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=9713423a06225bcf0f22cab15e8d04870200af7a
X-Osstest-Versions-That:
    xen=c035151902689aa5a3765aeb16fa52755917b9ca
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 10 Oct 2023 17:52:34 +0000

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

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                  9713423a06225bcf0f22cab15e8d04870200af7a
baseline version:
 xen                  c035151902689aa5a3765aeb16fa52755917b9ca

Last test of basis   183331  2023-10-10 10:01:58 Z    0 days
Testing same since   183333  2023-10-10 15:02:15 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
   c035151902..9713423a06  9713423a06225bcf0f22cab15e8d04870200af7a -> smoke


From xen-devel-bounces@lists.xenproject.org Tue Oct 10 20:24:44 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 10 Oct 2023 20:24:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615151.956380 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqJHL-0001gs-84; Tue, 10 Oct 2023 20:24:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615151.956380; Tue, 10 Oct 2023 20: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 1qqJHL-0001gl-5X; Tue, 10 Oct 2023 20:24:31 +0000
Received: by outflank-mailman (input) for mailman id 615151;
 Tue, 10 Oct 2023 20:24: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=IlcS=FY=amd.com=vikram.garhwal@srs-se1.protection.inumbo.net>)
 id 1qqJHK-0001gf-Dy
 for xen-devel@lists.xenproject.org; Tue, 10 Oct 2023 20:24:30 +0000
Received: from NAM10-MW2-obe.outbound.protection.outlook.com
 (mail-mw2nam10on2060c.outbound.protection.outlook.com
 [2a01:111:f400:7e89::60c])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 020f4944-67ab-11ee-98d3-6d05b1d4d9a1;
 Tue, 10 Oct 2023 22:24:28 +0200 (CEST)
Received: from MW3PR12MB4409.namprd12.prod.outlook.com (2603:10b6:303:2d::23)
 by CYXPR12MB9442.namprd12.prod.outlook.com (2603:10b6:930:e3::22)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.36; Tue, 10 Oct
 2023 20:24:23 +0000
Received: from MW3PR12MB4409.namprd12.prod.outlook.com
 ([fe80::7c95:99c7:7f5f:c24a]) by MW3PR12MB4409.namprd12.prod.outlook.com
 ([fe80::7c95:99c7:7f5f:c24a%4]) with mapi id 15.20.6863.032; Tue, 10 Oct 2023
 20:24: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: 020f4944-67ab-11ee-98d3-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=JPyT78ODqkHuXSzDMvstG3CAxlWAkBqwpkjlNaA4MMbiA1rC+gzrKQwz+8LslnyxgoGCd/Ix1PXw9EJgOvVBfr7FVybrArsw64sNG8IGxmyxj51IHfoYpZZLc52EbXpzR47gujtxOZm3IiDNeTzXOhTJR+dYqLFMaCfXttKZ4zKTF8vsYuo2Y1Gcj7Uo26XMkq3AaMVE/kE2rbzw08MOABLPQOSeQDS7w73cAvzVbkoTQ+r+BVAblaNnqQlmXg0oZ2XxFalDcD42MJs+9s/Jsb/Nx8kwqs0tWKE5ywzEWKKnT5ZUwgdf72WGRWZntS83RSeW39yqH6m8xqOvABrxfA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=TW5M88XSPh2mnv64QH1pzCHi+mM6Ti+xuwwtjMt0qZE=;
 b=fl5Vcai/94MefbUKUI3ej7buR7UCFn4xRc1fjNzeEubV0GXgpw1O0wMv3rYc2hp9GTs3cG50EQkZeWAIHbx2cx1gYhMP3qmE1c137AABi/GT+I9k3eutmZd8TzG+27YmbmKGCLcQ0C6re9uXe+OsOZcZFZQux2b2cnkaktJbOjnlP4Hky6e2yq/IxLArrxQHWTEWlbjfR1vL2GSAwF5OuCgjbVL6NhB9XD7tGgufFgJpalUCPztcWg1bEgZ7UvuwTwLsnTw8V0FKP9WA/em3D6gzBMwxl3IA51/odO9VXdd+GOHkccRzpsM4lH6vzFNvzvfRqmI7Mba3EwunLKGA2A==
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=TW5M88XSPh2mnv64QH1pzCHi+mM6Ti+xuwwtjMt0qZE=;
 b=E7rISsO+3QxiIUkMMTr1oWeXSrvzmyxMaNT+U2+qU0tCYho5T9ljFz4XxvG/NH+iePHXfPms+qgSkoSJn7whmhO8/njWLaJhdf0ACVm8gDnrYiExYQVd1ORnjKj+jmOgRdfOEo/mMyp91SqNJ6o0XjNOz3vEnijfm9Xm1cx2gPg=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=amd.com;
Date: Tue, 10 Oct 2023 13:24:20 -0700
From: Vikram Garhwal <vikram.garhwal@amd.com>
To: Stefano Stabellini <sstabellini@kernel.org>
Cc: qemu-devel@nongnu.org, Juergen Gross <jgross@suse.com>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>, "Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Richard Henderson <richard.henderson@linaro.org>,
	Eduardo Habkost <eduardo@habkost.net>,
	"open list:X86 Xen CPUs" <xen-devel@lists.xenproject.org>
Subject: Re: [QEMU][PATCH v1 1/7] xen: when unplugging emulated devices skip
 virtio devices
Message-ID: <ZSWy9P4tKvPv0M_d@amd.com>
References: <20231005181629.4046-1-vikram.garhwal@amd.com>
 <20231005181629.4046-2-vikram.garhwal@amd.com>
 <alpine.DEB.2.22.394.2310091651110.3431292@ubuntu-linux-20-04-desktop>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <alpine.DEB.2.22.394.2310091651110.3431292@ubuntu-linux-20-04-desktop>
X-ClientProxiedBy: BY5PR17CA0061.namprd17.prod.outlook.com
 (2603:10b6:a03:167::38) To MW3PR12MB4409.namprd12.prod.outlook.com
 (2603:10b6:303:2d::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: MW3PR12MB4409:EE_|CYXPR12MB9442:EE_
X-MS-Office365-Filtering-Correlation-Id: 66de529f-2770-4848-ab40-08dbc9cee424
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	3D770+FAU5q7Eu7a9jt8Mr2rmxpOHIuZeLeK0D3tw/OVyOz7tqHN/krtgnHgKn43tgOkFkZRAopbqPwXlhW5tk40cT163stYjr00sQOMsvernxFxGiJKSByLPYzH5Xwoxb/R+PL6VJUoAKEYzK0xG/t/4cPnXm0xsEyP8Q7YgPRZB8xda5me+3t5XvEN+HjFv2aRcAFPV3+BDZjUX4iLaAYwjKa40ltdIMkjg5hTC05d8Vo5Vddk5SNx7IMimNcACcIjp5t1+DR1TivuigZ0MvcukcNXDlDnbGH9T/jcOi0xRuncrj0Skl3nCzFvVHyOD9nPIeJMZWEwDkR2wMaSgqYUrNNjAyq+m7o1sP8xYYThGfA3AMjGaI5XB/rf/IxOblkwfonZ40Q5Z/9OIQ35pcttVMfKK29T/ZU/IR/uMuR33+6Eo+2ylwk2puU4v2iGtg4b/kWs+n0JI7bMYAW0phoIjzsbs8CENKM2SFnePCMdvCJ39i9tooOImYZ+wWUMt4j1jmfmevRpbGU+wSBNwPCciygE809cVpS1zjVbAecgVrl47zF/N9QS/OLeqY3P
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)(396003)(366004)(346002)(376002)(136003)(39860400002)(230922051799003)(1800799009)(64100799003)(451199024)(186009)(26005)(2616005)(8936002)(6512007)(83380400001)(6506007)(8676002)(478600001)(7416002)(6486002)(2906002)(4326008)(5660300002)(54906003)(66556008)(41300700001)(66946007)(6916009)(44832011)(66476007)(316002)(86362001)(38100700002)(36756003);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?dThVUytMeG1VbkRXUFVHT1dTSXlpWFJWSUx6SlJUT09ITEpqRVZ6bEhmYkZu?=
 =?utf-8?B?MGlXQjVTeGZJaEJibWkwWXBuYWNOeXhnWjJlTWFYOVlzRWNhS3JGT3B6VDZC?=
 =?utf-8?B?Z3NaZ3NSd2FGQUFvN3h5NWl6RDh0K0Eva1AwVldEV3d0eDlKU1EzdUFnMmZl?=
 =?utf-8?B?dmJrY1NKODRMRmI0Y0RzenpRTC9meFo3b081cVRZd2RUbHlkTk9GbkNkeW51?=
 =?utf-8?B?L3lCaStWUEJqZXFCWG51b0Zmcm8zZWsydEJNelNXTkl1d2lWVXVTZk5jTFBs?=
 =?utf-8?B?Q0VaS2NQeGorN1hibTBRUmxFM28yUHhlWTFoT0h0dUJ1NWxBbXRka043VHNQ?=
 =?utf-8?B?OThoVXNSSmg0VGRLU3I1WTdPeE5XbVlKOTNrU3h5YVF2bGZRdldROUcvd3Za?=
 =?utf-8?B?bnBKWXhmL2tLdldGVzY4U2NxWHN4S1lScG4wRG5mYTRyRE9VRjAvRCt1Wko3?=
 =?utf-8?B?SVVkQVVyRDBqTDQ0cW1uMjlEMnhvWTNpU1F6czVsSXZVZk04T2hkMkg4Zk90?=
 =?utf-8?B?TWxnMUtZcjhQQXZDV3htMkpXVEJoSXZVTlJFNFV1NkNFaFo1Ym1MTDYzbHZ2?=
 =?utf-8?B?OE9qWk81TS90WVRGQnBWYlAwemRnR2VYaEt1L0JFSXNVMUlUTHcxWjUvSDEz?=
 =?utf-8?B?cVpwVTJTY1MveWZuQ3BXNUxUNW8wbEthcW54UkpJZ1NIMjhHOU5VaG9BZmpv?=
 =?utf-8?B?YjdmYlo0cmJtT1ZuUGI2K0doOUhQVnJKK3d3MnBqanBLenRPUk5oMlY3YUxZ?=
 =?utf-8?B?ZURDTE9SRzQ3RWxya3VzWkplMlJNdFpIOG9YenYydUp4TDF6MUcycU5YRjds?=
 =?utf-8?B?STJscW9MNFlwbnA2Y2ZyU2JWZEdmbmhDbmZhR0dNb29TcnFZYkNNZjNIcmEw?=
 =?utf-8?B?NnhXTFpDTGtLT2ZzWWU0N0R0RCtFZVVuNDk5dThHbG1xT1ZPaHJ4d2tmMWh1?=
 =?utf-8?B?VWZENmUxS25MTlpmR3RsOEwyUlpna0hDTjhFa2lXL0RTZnMrL09wK2xCWkU4?=
 =?utf-8?B?azRhZjNoMmM3cmZjN2JyWktlMS9kbEJxcjVHK01EYjNtT0pKQk41cmZOa1JF?=
 =?utf-8?B?ZU9KYW1rRGFtbU92UHUvMGVlT25kSWk4SHhyTWpRRWdiUy9FdkpNRzJUdmpa?=
 =?utf-8?B?SmxUUURnR1lRTnB5ejlxUGo2VXBxcWFnUWdXTlZTbFp2cW8wQXA5bHlVZUpQ?=
 =?utf-8?B?bDF5WGJTOVZQaXJBNHI3dENqL0RRM3M2eHBLTDY2dnoxa1cyTk1lWUNMOFlv?=
 =?utf-8?B?d1JNZkdNb0VkTzEvL2VnSVdSK0VoSnFvSjh4T09vdEpMM3ZkMEluOGNNU1Nr?=
 =?utf-8?B?cWlMd1kvOGJQdkVKU1U1ZnRKTVQwK0dSdXdrOWo5alBIV0w1T0V4RStOeml3?=
 =?utf-8?B?MlRWb2ZsSU9QTUYzVW1WVXZXVm12Rld2UEFrUkNiZk05SXZHUm5pNTZsTm5G?=
 =?utf-8?B?OTc2K0FCc2ljbWJRN2g4MGJOekZ6V0M5YUhRTHhHZVh3VytBQXdaazRja1o3?=
 =?utf-8?B?UGo5RHFJNklERytKKzU1c0hPK29UOGxZcWlWT1FYTmVId2QwK3l6UE5od3dI?=
 =?utf-8?B?VmIxdG1XMnZ6UE45NXZybWZodUtCVmk0ZG1rT3BPZDUyNGFOK1JxTFJFaFZO?=
 =?utf-8?B?Tko4ZloyenZJN0ZlaDNwT21hQXhLeVpLVUUwTW9NTzMzd0FSRDlTS0VjckFG?=
 =?utf-8?B?K2t2SGo5SFlsNEpwTWo5NHVJOXdEdFk1dFhGMSt3bWoyWXBBMEovcTZ6N3Q5?=
 =?utf-8?B?U1NsK290Q3R3TG5CQW9tcVAvcDVkRmVtQ1pURkt6T0hLNTZzSWpJQjQvTExH?=
 =?utf-8?B?V1hMY0VwWkhXZTBoczZ2cDFFRXZNRzZ6VDlQcGdwcVQwRjh5NVJYSWt1alZ1?=
 =?utf-8?B?TmhyU2lhS0ttNDQ3Q3ZmQUZGQ0hMamNPS3NmaHNpN1BsazZWOVJvVVNEbDZL?=
 =?utf-8?B?Mmpxd2pqWG55amFZejhXdVFoK09uT0VrQlBDcWJITkFLdUdKY0hKOHFkbVla?=
 =?utf-8?B?cmNHK3B5NTgwTzVwYUFLOEwzdVhQYWJGWm9pTWVsdTBSelpqZllvMTAvUlV2?=
 =?utf-8?B?MVVzd0I4ejhJdlpYNFpXNHd0VkNPZExBNEdVN1hoeWs4aWVLeGN4d1o5ZEZH?=
 =?utf-8?Q?mp57rHOObsF7vZJ//YSYsKOQa?=
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 66de529f-2770-4848-ab40-08dbc9cee424
X-MS-Exchange-CrossTenant-AuthSource: MW3PR12MB4409.namprd12.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 10 Oct 2023 20:24:23.2688
 (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: P/uFlsUs5OZVV4+M15Q+MMSym7k0/CrB8NjesBwEhuz9dUuyxRAj0IqQ+/BhoEtjm68uF06fzGULi5NcdXr4Jw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: CYXPR12MB9442

Hi Stefano,
On Mon, Oct 09, 2023 at 04:51:53PM -0700, Stefano Stabellini wrote:
> On Thu, 5 Oct 2023, Vikram Garhwal wrote:
> > From: Juergen Gross <jgross@suse.com>
> > 
> > Virtio devices should never be unplugged at boot time, as they are
> > similar to pci passthrough devices.
> > 
> > Signed-off-by: Juergen Gross <jgross@suse.com>
> > Signed-off-by: Vikram Garhwal <vikram.garhwal@amd.com>
> > ---
> >  hw/i386/xen/xen_platform.c | 8 +++++++-
> >  1 file changed, 7 insertions(+), 1 deletion(-)
> > 
> > diff --git a/hw/i386/xen/xen_platform.c b/hw/i386/xen/xen_platform.c
> > index 17457ff3de..3560eaf8c8 100644
> > --- a/hw/i386/xen/xen_platform.c
> > +++ b/hw/i386/xen/xen_platform.c
> > @@ -28,6 +28,7 @@
> >  #include "hw/ide/pci.h"
> >  #include "hw/pci/pci.h"
> >  #include "migration/vmstate.h"
> > +#include "hw/virtio/virtio-bus.h"
> >  #include "net/net.h"
> >  #include "trace.h"
> >  #include "sysemu/xen.h"
> > @@ -132,7 +133,8 @@ static void unplug_nic(PCIBus *b, PCIDevice *d, void *o)
> >      /* We have to ignore passthrough devices */
> >      if (pci_get_word(d->config + PCI_CLASS_DEVICE) ==
> >              PCI_CLASS_NETWORK_ETHERNET
> > -            && !pci_device_is_passthrough(d)) {
> > +            && !pci_device_is_passthrough(d)
> > +            && !qdev_get_child_bus(&d->qdev, TYPE_VIRTIO_BUS)) {
> 
> Please update the in-code comment above to say "ignore passthrough
> devices and virtio devices"
Sounds good. Will update in the code comment in v2.
> 
> 
> >          object_unparent(OBJECT(d));
> >      }
> >  }
> > @@ -208,6 +210,10 @@ static void unplug_disks(PCIBus *b, PCIDevice *d, void *opaque)
> >      /* We have to ignore passthrough devices */
> >      if (pci_device_is_passthrough(d))
> >          return;
> > +    /* Ignore virtio devices */
> > +    if (qdev_get_child_bus(&d->qdev, TYPE_VIRTIO_BUS)) {
> > +        return;
> > +    }
> >  
> >      switch (pci_get_word(d->config + PCI_CLASS_DEVICE)) {
> >      case PCI_CLASS_STORAGE_IDE:
> > -- 
> > 2.17.1
> > 


From xen-devel-bounces@lists.xenproject.org Tue Oct 10 21:25:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 10 Oct 2023 21:25:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615157.956391 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqKES-0001j7-Ho; Tue, 10 Oct 2023 21:25:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615157.956391; Tue, 10 Oct 2023 21:25: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 1qqKES-0001j0-EZ; Tue, 10 Oct 2023 21:25:36 +0000
Received: by outflank-mailman (input) for mailman id 615157;
 Tue, 10 Oct 2023 21:25: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=IlcS=FY=amd.com=vikram.garhwal@srs-se1.protection.inumbo.net>)
 id 1qqKEQ-0001iu-VF
 for xen-devel@lists.xenproject.org; Tue, 10 Oct 2023 21:25:35 +0000
Received: from NAM10-DM6-obe.outbound.protection.outlook.com
 (mail-dm6nam10on2062d.outbound.protection.outlook.com
 [2a01:111:f400:7e88::62d])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 88ff2f36-67b3-11ee-98d3-6d05b1d4d9a1;
 Tue, 10 Oct 2023 23:25:30 +0200 (CEST)
Received: from MW3PR12MB4409.namprd12.prod.outlook.com (2603:10b6:303:2d::23)
 by IA1PR12MB8286.namprd12.prod.outlook.com (2603:10b6:208:3f8::19)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.36; Tue, 10 Oct
 2023 21:25:25 +0000
Received: from MW3PR12MB4409.namprd12.prod.outlook.com
 ([fe80::7c95:99c7:7f5f:c24a]) by MW3PR12MB4409.namprd12.prod.outlook.com
 ([fe80::7c95:99c7:7f5f:c24a%4]) with mapi id 15.20.6863.032; Tue, 10 Oct 2023
 21: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: 88ff2f36-67b3-11ee-98d3-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=hUSM7ViTS+OlQmHsavors+rDzVZT0LVG9CIia+r5KnXAhenr6Hv9iAj8otH3s3x1LA10dGb1/F9ZYoHtUsc/cLTqQrH+rSz6O4xuG3RaTj8w2uXb1m+Mt9yCh/5LNSGIr/30XpJq5jcKIfaDdwHEjClFJIq3gIsyUPxG2S9UGfTabAOXJTEIz4keVYcNBWke1yIbDyDakrQQC6R2gIFyeDH1PI0ASQp+RGEYqAhzLmmDV0SoGSpJXgKxnZ0hVNEWEW/jfCuvNCgpt+hdXudt1ckLaK0tG/5rBycKLE4YN/jgmL8pzZ+yEUOMypxLsy18JjAL/8SsEhjC8cfqrUuZZQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=Ru3iKP+0Xf8JpOwjbAlhgLW/NB+krGMTDzVgt1EF8bg=;
 b=Ty8dlrjUnPpEXKbusMLlzN+rdN3Qqw81RKUY8LLxUpskLuCCRXSvwrYvM9ADoqy2Tygs2gr+Ra7FMfyhC4E5PVElALae9PNURcP3pgSmcscsOjWvaiejzvpN13gexjCrRoP/GFfCwmj5vC/k15Ncyn+NyCkCAzdsjrDNuPW5rIKRzmg6aV3RfHQba4LZ8OGUu9IcrXAJAgkoX1q5yCzuE0VqU8AND6Elk2HhbT3nEkUOSTlvsYq4cu66iWkOS+q2Ofd106/HuG3M2jRFc2R0qBsh+Q2gQGATkgvvXjnWa2AX+wiJpGHF3twkE0bToI8zElo8SALIQePrn9/mCR8gNA==
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=Ru3iKP+0Xf8JpOwjbAlhgLW/NB+krGMTDzVgt1EF8bg=;
 b=rSuuQEUZtOb343DKq0ZxfRYDRANiSG/n+HfesDU2QOd1nIuLXrUB/Jv5adbniskH4zsCrJR7DJdQhS5P9It2xW6xJiwqEEzBnr/jRM3JG/whtn52D/Y8KKhGGOYNogarWyrMWOPa2dzsNFbvW9YDlVcyRVAHdwYrRoXJTSUcM1w=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=amd.com;
Date: Tue, 10 Oct 2023 14:25:18 -0700
From: Vikram Garhwal <vikram.garhwal@amd.com>
To: Stefano Stabellini <sstabellini@kernel.org>
Cc: qemu-devel@nongnu.org, Juergen Gross <jgross@suse.com>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>, "Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Richard Henderson <richard.henderson@linaro.org>,
	Eduardo Habkost <eduardo@habkost.net>, Peter Xu <peterx@redhat.com>,
	David Hildenbrand <david@redhat.com>,
	Philippe =?utf-8?Q?Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
	"open list:X86 Xen CPUs" <xen-devel@lists.xenproject.org>
Subject: Re: [QEMU][PATCH v1 2/7] xen: add pseudo RAM region for grant
 mappings
Message-ID: <ZSXBPlQF1Y2Gx5P1@amd.com>
References: <20231005181629.4046-1-vikram.garhwal@amd.com>
 <20231005181629.4046-3-vikram.garhwal@amd.com>
 <alpine.DEB.2.22.394.2310091653270.3431292@ubuntu-linux-20-04-desktop>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <alpine.DEB.2.22.394.2310091653270.3431292@ubuntu-linux-20-04-desktop>
X-ClientProxiedBy: SJ0PR03CA0081.namprd03.prod.outlook.com
 (2603:10b6:a03:331::26) To MW3PR12MB4409.namprd12.prod.outlook.com
 (2603:10b6:303:2d::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: MW3PR12MB4409:EE_|IA1PR12MB8286:EE_
X-MS-Office365-Filtering-Correlation-Id: 523ae2c3-c910-4e5e-ddbc-08dbc9d76b13
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	sq9PUDKTkn8Fw+yr7nFBRgSO89/lDTYbRRsXbwJhy0DetSk3lEbuQUWN6O11cF9gLfI0FCcQrNe9Ii1q2orLpdpdhJCe6I5A0q6HY4Ck8kPFbgfU5ymGdHPysXtzIRLDdid7v2EvAAsCPj2nVgIpfvF9p63HR3SnR2z/maYWDAQTNgbZr5u/MdU4NqUjhkb/BdMux1M8PbmskAsF0ULs+2qb1DxF9CCSr9aBtoW9zxDwJFVfYhF77uhMQ1K5dGmkcZ0bVxGKx3+dQaJzLVXPFyzyOjk3r6OUsl7kPLg6Gyo/emXQmuwUatKoTXyVL8X8wEzkch5qVLXZAAkg68i4dfxXFd5At6lCYrjbDmIcavlPkUp7BrRCG8Gyl2JlZwivEHjOympRLOqRqnfE/ygwe/2LO/Yub1QSk1iGu/IiSh6BnBv/8GWZupOEuMX/A5D+W0NgphGgJSnO/DyHr0Tk4hLFa92JkkMymfGOx0kQRazxwox4OCksAwdS5nGAd4R9dzUutDAiPLJnPJkrx3njKuI53ZidKEnJXnppGJ3/N5EMVC5PgBokrazbAzESqIUg
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)(136003)(376002)(346002)(39860400002)(396003)(366004)(230922051799003)(1800799009)(64100799003)(451199024)(186009)(26005)(2616005)(38100700002)(86362001)(36756003)(6512007)(4326008)(2906002)(7416002)(8936002)(6666004)(6506007)(478600001)(8676002)(44832011)(6916009)(66946007)(83380400001)(41300700001)(316002)(6486002)(66476007)(54906003)(5660300002)(66556008);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?STNuNEpvcW9BM0ROY2dxTDZqOWRyZCs5QjlMTzl0QlVXYURpZ2pHZkt1ZHFV?=
 =?utf-8?B?djQvQzdrS0cvRkJSN0xyRG1ISWU5Q2NhTFp6eElta0NZMkxmeXJ1VXNacDlx?=
 =?utf-8?B?eDM2dU4vS3RmbTRYR1ZBMXVpSUtOWUhxOWZ6RjlzR1R3QktZZ09TeHVUVGdV?=
 =?utf-8?B?WHVlQWpscTZ3ZkZoRUNnMXhCdWF0VlBXNjFCU0RyZWl2bTVqRm1rVDBzTEpx?=
 =?utf-8?B?NzZ2RnN3b2d1YUJlQkRyaEtWZFF2a1JmS01SdTZXbHN0K2tQU212QURydlJm?=
 =?utf-8?B?TUlUM3Z0cmFoSGE1bm1pcFJRQkgzc2FvbDB1VE55SmY4cEZaTEs3SHF3ekdP?=
 =?utf-8?B?NE94bUFkQ1RCMk41UWtxUlI0bnhucldOQkY5bW9BTXFMeUF0TUhENmsvWHZL?=
 =?utf-8?B?eW1YMVYvZXFMWlUxOW5TZzcvdnBSTUpsWmFmODhORXR4VTlkbEkwNG5xcFoy?=
 =?utf-8?B?OGhlSDNLZnpkKzhhUkNLd0JBSk1xRnpBSC8zZEh1NlhudEF4bzRhdEVnUUlG?=
 =?utf-8?B?L2VSTytGMG4zTFNZZGpYcXdPL0dyRHJZdi9aVUQvREx3RVlqS0pEeFVOTENS?=
 =?utf-8?B?bG1QNmx6YVlTYnp0ZlArMjJ6SzBWTUhKYlQxYjFSUDVHendvU0FuQ3o0VzVJ?=
 =?utf-8?B?ZkVXcVk1ak9SUVRiZlVJWlVnZGJwbWV4K0o3WkdaSXVpWm9STUVkVTVVWXJs?=
 =?utf-8?B?bnVvWVhNbFNNZkxFRmU3TmhzdlZReWVHY2hWV0FQa0hPYlh1dFRWbFVYUVo1?=
 =?utf-8?B?THlYWmtVcG5NV1lEdWVVRGVVaEZoSnBVYUlKTmpsYmVKa09uNmtvcFRkRXp4?=
 =?utf-8?B?VnRHVXJBWEYyVjJYNjgyWXVaN0lJNUdlaE5qSTBaNkh2TlRXK0VSUDAyZENR?=
 =?utf-8?B?MWhTeUJJUGQ3YXc3dTBOLytDR0VvZmsrZU16c21pc0JldHBDQzJ1SG44RHEz?=
 =?utf-8?B?RXlxSzh6UWF5MzdDOEVVdzZsL1Exd3VzVUtTYVFHeXUzbktlSzlubnE5RkJT?=
 =?utf-8?B?V0xwZmlrT2ZoY3dMZ1QwMFdUem90TU9tVW96ZUJMeGFDaXRnZXBISUJVMGFL?=
 =?utf-8?B?ZktOUVhXQnJCWUxCcXExckxmZDlER0FIOHJ3NHA5blJrZndBU0xrL0dNV21H?=
 =?utf-8?B?ZWw2c1FTY1RFeW1UVTF1dDZqYmNZWlpQZmpHM3lGYkIzRDJkOUdiS1hoMWdH?=
 =?utf-8?B?Qk1JYUNJY01VSUJCSFViM1RobzhZSHpTVktiM0I3SXpSWUttcm1qeGxrQ1hM?=
 =?utf-8?B?dUQ3VWdOMUwyeEFmMW9vMWhVSWxQVDRqWlNyb21JL2IrT1I5NCtUR2swZmY3?=
 =?utf-8?B?NE5GdEVtdkhvVjJ3VUhNbE9oSU16WjEzd0lvSkpOOTlwdVNpVndoNHdmY05y?=
 =?utf-8?B?dTZkRlhBcGdhUjhOTjdCRkRwcmRORUNuYmkvUzhCMWo2akxsWEltQjdVYWVE?=
 =?utf-8?B?Z3FzUVNEUTZOR2pNY3VENk9wUmZOcGFrRDUxUFMydDRFblpPZThiUm1BWVZO?=
 =?utf-8?B?cVVjUzhaeDFCNWk0Ny9Lcmx2Wk9PaitXU29kWWkzNzhtc2NiNjRCL2dNejNT?=
 =?utf-8?B?RjlYMmZYMlZrcDE5YmhhNTJRbDNhLzcrTlZUY29hSEovWDNvdU5abWpRZkRh?=
 =?utf-8?B?bGl5Y0ZSU2p6QTZoWmZnZFNiejJOR3JJSTYzdndJanFDNkRkYlVHRDdyc01I?=
 =?utf-8?B?N3pDTERZeDlBQVJzQytNSmtQV3c3SGs3eHJoQjlRckJPcDF2YldhbTU0NlFJ?=
 =?utf-8?B?UDdIaHcvdEpPT29kV0RJcVRHRklpcllFTHl2N2R5dkVMeVFKdCt6dmc0c2o2?=
 =?utf-8?B?aWxueUNIVmN2c3A5eUdVWi9KekVqZ2E2REV4VDdpL296OGdPZ1dYcGlQL1FK?=
 =?utf-8?B?SFJVZWFtSXh0KzR6aDI1STl0Y0hvVWhtZUxwdktjeE96bmY0bzNXcitlRjJj?=
 =?utf-8?B?WWJSZmErVXNaREw3OGcxb0xUNzFPR3JTN0hZWXlkMkkweFF1a1lFOFFOMW1s?=
 =?utf-8?B?Qlo1VmdpVy8vU1FQazBxeFpEd013Y285bDFKZkdxdVpqUHhuY21yWFMrMkFj?=
 =?utf-8?B?SXFSZkpSVWYvTlFGSUZEc09MYWxOYUlKaFBUdlBBdzV5Q3RqMWFBek9OSmIy?=
 =?utf-8?Q?ADfxc0oNFAJTA7X61uwiK4Iu3?=
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 523ae2c3-c910-4e5e-ddbc-08dbc9d76b13
X-MS-Exchange-CrossTenant-AuthSource: MW3PR12MB4409.namprd12.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 10 Oct 2023 21:25:25.6689
 (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: zionzn2nzBo8BrAfmOiRHwZnmS3l+tdnWTU6l04nxO+AF2CMbkC6BVGrp7OtfjWrxn1VOxkDuwVFE1sLV++iqQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA1PR12MB8286

Hi Stefano,
On Mon, Oct 09, 2023 at 05:02:14PM -0700, Stefano Stabellini wrote:
> On Thu, 5 Oct 2023, Vikram Garhwal wrote:
> > From: Juergen Gross <jgross@suse.com>
> > 
> > Add a memory region which can be used to automatically map granted
> > memory. It is starting at 0x8000000000000000ULL in order to be able to
> > distinguish it from normal RAM.
> > 
> > For this reason the xen.ram memory region is expanded, which has no
> > further impact as it is used just as a container of the real RAM
> > regions and now the grant region.
> > 
> > Signed-off-by: Juergen Gross <jgross@suse.com>
> > Signed-off-by: Vikram Garhwal <vikram.garhwal@amd.com>
> 
> This patch doesn't apply to staging anymore
Will re-base it. I rebased it against master branch.
> 
> 
> > ---
> >  hw/i386/xen/xen-hvm.c           |  3 ++
> >  hw/xen/xen-hvm-common.c         |  4 +--
> >  hw/xen/xen-mapcache.c           | 27 ++++++++++++++
> >  include/exec/ram_addr.h         |  1 +
> >  include/hw/xen/xen-hvm-common.h |  2 ++
> >  include/hw/xen/xen_pvdev.h      |  3 ++
> >  include/sysemu/xen-mapcache.h   |  3 ++
> >  softmmu/physmem.c               | 62 +++++++++++++++++++++------------
> >  8 files changed, 80 insertions(+), 25 deletions(-)
> > 
> > diff --git a/hw/i386/xen/xen-hvm.c b/hw/i386/xen/xen-hvm.c
> > index f42621e674..67a55558a6 100644
> > --- a/hw/i386/xen/xen-hvm.c
> > +++ b/hw/i386/xen/xen-hvm.c
> > @@ -172,6 +172,9 @@ static void xen_ram_init(PCMachineState *pcms,
> >                                   x86ms->above_4g_mem_size);
> >          memory_region_add_subregion(sysmem, 0x100000000ULL, &ram_hi);
> >      }
> > +
> > +    /* Add grant mappings as a pseudo RAM region. */
> > +    ram_grants = *xen_init_grant_ram();
> >  }
> >  
> >  static XenPhysmap *get_physmapping(hwaddr start_addr, ram_addr_t size)
> > diff --git a/hw/xen/xen-hvm-common.c b/hw/xen/xen-hvm-common.c
> > index 565dc39c8f..b7255977a5 100644
> > --- a/hw/xen/xen-hvm-common.c
> > +++ b/hw/xen/xen-hvm-common.c
> > @@ -9,7 +9,7 @@
> >  #include "hw/boards.h"
> >  #include "hw/xen/arch_hvm.h"
> >  
> > -MemoryRegion ram_memory;
> > +MemoryRegion ram_memory, ram_grants;
> >  
> >  void xen_ram_alloc(ram_addr_t ram_addr, ram_addr_t size, MemoryRegion *mr,
> >                     Error **errp)
> > @@ -26,7 +26,7 @@ void xen_ram_alloc(ram_addr_t ram_addr, ram_addr_t size, MemoryRegion *mr,
> >          return;
> >      }
> >  
> > -    if (mr == &ram_memory) {
> > +    if (mr == &ram_memory || mr == &ram_grants) {
> >          return;
> >      }
> >  
> > diff --git a/hw/xen/xen-mapcache.c b/hw/xen/xen-mapcache.c
> > index f7d974677d..8115c44c00 100644
> > --- a/hw/xen/xen-mapcache.c
> > +++ b/hw/xen/xen-mapcache.c
> > @@ -14,7 +14,9 @@
> >  
> >  #include <sys/resource.h>
> >  
> > +#include "hw/xen/xen-hvm-common.h"
> >  #include "hw/xen/xen_native.h"
> > +#include "hw/xen/xen_pvdev.h"
> >  #include "qemu/bitmap.h"
> >  
> >  #include "sysemu/runstate.h"
> > @@ -597,3 +599,28 @@ uint8_t *xen_replace_cache_entry(hwaddr old_phys_addr,
> >      mapcache_unlock();
> >      return p;
> >  }
> > +
> > +MemoryRegion *xen_init_grant_ram(void)
> > +{
> > +    RAMBlock *block;
> > +
> > +    memory_region_init(&ram_grants, NULL, "xen.grants",
> > +                       XEN_MAX_VIRTIO_GRANTS * XC_PAGE_SIZE);
> > +    block = g_malloc0(sizeof(*block));
> > +    block->mr = &ram_grants;
> > +    block->used_length = XEN_MAX_VIRTIO_GRANTS * XC_PAGE_SIZE;
> > +    block->max_length = XEN_MAX_VIRTIO_GRANTS * XC_PAGE_SIZE;
> > +    block->fd = -1;
> > +    block->page_size = XC_PAGE_SIZE;
> > +    block->host = (void *)XEN_GRANT_ADDR_OFF;
> > +    block->offset = XEN_GRANT_ADDR_OFF;
> > +    block->flags = RAM_PREALLOC;
> > +    ram_grants.ram_block = block;
> > +    ram_grants.ram = true;
> > +    ram_grants.terminates = true;
> > +    ram_block_add_list(block);
> > +    memory_region_add_subregion(get_system_memory(), XEN_GRANT_ADDR_OFF,
> > +                                &ram_grants);
> > +
> > +    return &ram_grants;
> 
> It doesn't look like xen_init_grant_ram has anything to do with the
> mapcache. It should be in another file. Maybe ./hw/xen/xen-hvm-common.c
> or ./hw/i386/xen/xen-hvm.c (but this is x86 specific and we need grants
> on ARM too)
Do you mean to move all grant related functions? As moving this alone will not
be sufficient. There are lot of new grant related function added in later patches.

I am okay with moving all to xen-hvm-common.c

Following code movement will happen in this case:
1. All grant related static function to xen-hvm-common.c.
    xen_ram_addr_from_grant_cache(), xen_ram_addr_from_mapcache(),
    xen_map_grant_dyn(), xen_unmap_grant_dyn and xen_init_grant_ram().
2. Remove static from xen_ram_addr_from_mapcache_try().

Does these changes looks good?
> 
> 
> > +}
> > diff --git a/include/exec/ram_addr.h b/include/exec/ram_addr.h
> > index 90676093f5..c0b5f9a7d0 100644
> > --- a/include/exec/ram_addr.h
> > +++ b/include/exec/ram_addr.h
> > @@ -139,6 +139,7 @@ void qemu_ram_free(RAMBlock *block);
> >  int qemu_ram_resize(RAMBlock *block, ram_addr_t newsize, Error **errp);
> >  
> >  void qemu_ram_msync(RAMBlock *block, ram_addr_t start, ram_addr_t length);
> > +void ram_block_add_list(RAMBlock *new_block);
> >  
> >  /* Clear whole block of mem */
> >  static inline void qemu_ram_block_writeback(RAMBlock *block)
> > diff --git a/include/hw/xen/xen-hvm-common.h b/include/hw/xen/xen-hvm-common.h
> > index 4e9904f1a6..0d300ba898 100644
> > --- a/include/hw/xen/xen-hvm-common.h
> > +++ b/include/hw/xen/xen-hvm-common.h
> > @@ -17,6 +17,8 @@
> >  #include <xen/hvm/ioreq.h>
> >  
> >  extern MemoryRegion ram_memory;
> > +
> > +extern MemoryRegion ram_grants;
> >  extern MemoryListener xen_io_listener;
> >  extern DeviceListener xen_device_listener;
> >  
> > diff --git a/include/hw/xen/xen_pvdev.h b/include/hw/xen/xen_pvdev.h
> > index ddad4b9f36..0f1b5edfa9 100644
> > --- a/include/hw/xen/xen_pvdev.h
> > +++ b/include/hw/xen/xen_pvdev.h
> > @@ -80,4 +80,7 @@ int xen_pv_send_notify(struct XenLegacyDevice *xendev);
> >  void xen_pv_printf(struct XenLegacyDevice *xendev, int msg_level,
> >                     const char *fmt, ...)  G_GNUC_PRINTF(3, 4);
> >  
> > +#define XEN_GRANT_ADDR_OFF    0x8000000000000000ULL
> > +#define XEN_MAX_VIRTIO_GRANTS 65536
> > +
> >  #endif /* QEMU_HW_XEN_PVDEV_H */
> > diff --git a/include/sysemu/xen-mapcache.h b/include/sysemu/xen-mapcache.h
> > index c8e7c2f6cf..f4bedb1c11 100644
> > --- a/include/sysemu/xen-mapcache.h
> > +++ b/include/sysemu/xen-mapcache.h
> > @@ -10,6 +10,7 @@
> >  #define XEN_MAPCACHE_H
> >  
> >  #include "exec/cpu-common.h"
> > +#include "exec/ram_addr.h"
> >  
> >  typedef hwaddr (*phys_offset_to_gaddr_t)(hwaddr phys_offset,
> >                                           ram_addr_t size);
> > @@ -25,6 +26,8 @@ void xen_invalidate_map_cache(void);
> >  uint8_t *xen_replace_cache_entry(hwaddr old_phys_addr,
> >                                   hwaddr new_phys_addr,
> >                                   hwaddr size);
> > +MemoryRegion *xen_init_grant_ram(void);
> > +
> >  #else
> >  
> >  static inline void xen_map_cache_init(phys_offset_to_gaddr_t f,
> > diff --git a/softmmu/physmem.c b/softmmu/physmem.c
> > index 309653c722..e182a2fa07 100644
> > --- a/softmmu/physmem.c
> > +++ b/softmmu/physmem.c
> 
> 
> You might want to split this change out of this patch to make it easier
> to get the physmem.c maintainers' attention
Understood, will create a new patch for this change.
> 
> 
> > @@ -1803,12 +1803,47 @@ static void dirty_memory_extend(ram_addr_t old_ram_size,
> >      }
> >  }
> >  
> > +static void ram_block_add_list_locked(RAMBlock *new_block)
> > + {
> > +     RAMBlock *block;
> > +     RAMBlock *last_block = NULL;
> > +
> > +    /*
> > +     * Keep the list sorted from biggest to smallest block.  Unlike QTAILQ,
> > +     * QLIST (which has an RCU-friendly variant) does not have insertion at
> > +     * tail, so save the last element in last_block.
> > +     */
> > +    RAMBLOCK_FOREACH(block) {
> > +        last_block = block;
> > +        if (block->max_length < new_block->max_length) {
> > +            break;
> > +        }
> > +    }
> > +    if (block) {
> > +        QLIST_INSERT_BEFORE_RCU(block, new_block, next);
> > +    } else if (last_block) {
> > +        QLIST_INSERT_AFTER_RCU(last_block, new_block, next);
> > +    } else { /* list is empty */
> > +        QLIST_INSERT_HEAD_RCU(&ram_list.blocks, new_block, next);
> > +    }
> > +    ram_list.mru_block = NULL;
> > +
> > +    /* Write list before version */
> > +    smp_wmb();
> > +    ram_list.version++;
> > +}
> > +
> > +void ram_block_add_list(RAMBlock *new_block)
> > +{
> > +    qemu_mutex_lock_ramlist();
> > +    ram_block_add_list_locked(new_block);
> > +    qemu_mutex_unlock_ramlist();
> > +}
> > +
> >  static void ram_block_add(RAMBlock *new_block, Error **errp)
> >  {
> >      const bool noreserve = qemu_ram_is_noreserve(new_block);
> >      const bool shared = qemu_ram_is_shared(new_block);
> > -    RAMBlock *block;
> > -    RAMBlock *last_block = NULL;
> >      ram_addr_t old_ram_size, new_ram_size;
> >      Error *err = NULL;
> >  
> > @@ -1846,28 +1881,9 @@ static void ram_block_add(RAMBlock *new_block, Error **errp)
> >      if (new_ram_size > old_ram_size) {
> >          dirty_memory_extend(old_ram_size, new_ram_size);
> >      }
> > -    /* Keep the list sorted from biggest to smallest block.  Unlike QTAILQ,
> > -     * QLIST (which has an RCU-friendly variant) does not have insertion at
> > -     * tail, so save the last element in last_block.
> > -     */
> > -    RAMBLOCK_FOREACH(block) {
> > -        last_block = block;
> > -        if (block->max_length < new_block->max_length) {
> > -            break;
> > -        }
> > -    }
> > -    if (block) {
> > -        QLIST_INSERT_BEFORE_RCU(block, new_block, next);
> > -    } else if (last_block) {
> > -        QLIST_INSERT_AFTER_RCU(last_block, new_block, next);
> > -    } else { /* list is empty */
> > -        QLIST_INSERT_HEAD_RCU(&ram_list.blocks, new_block, next);
> > -    }
> > -    ram_list.mru_block = NULL;
> >  
> > -    /* Write list before version */
> > -    smp_wmb();
> > -    ram_list.version++;
> > +    ram_block_add_list_locked(new_block);
> > +
> >      qemu_mutex_unlock_ramlist();
> >  
> >      cpu_physical_memory_set_dirty_range(new_block->offset,
> > -- 
> > 2.17.1
> > 


From xen-devel-bounces@lists.xenproject.org Tue Oct 10 22:23:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 10 Oct 2023 22:23:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615166.956400 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqL8h-0001nM-LX; Tue, 10 Oct 2023 22:23:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615166.956400; Tue, 10 Oct 2023 22:23: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 1qqL8h-0001nF-Ig; Tue, 10 Oct 2023 22:23:43 +0000
Received: by outflank-mailman (input) for mailman id 615166;
 Tue, 10 Oct 2023 22:23: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=Z25Z=FY=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qqL8g-0001n9-5X
 for xen-devel@lists.xenproject.org; Tue, 10 Oct 2023 22:23:42 +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 a827e2ae-67bb-11ee-9b0d-b553b5be7939;
 Wed, 11 Oct 2023 00:23:39 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by sin.source.kernel.org (Postfix) with ESMTP id 4CFDACE1E58;
 Tue, 10 Oct 2023 22:23:34 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 21574C433C7;
 Tue, 10 Oct 2023 22:23:32 +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: a827e2ae-67bb-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696976613;
	bh=+dX7i/pzKBCNzRfkTTQ5+O9/SrrEZZMaoBuluMgh9GQ=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=hX/D9ErWpR+yVP3hnPvudiyPJdBWaxF9HeeNYOkUeL6O4dnaHP6NhlYz8hoKMmF3o
	 ONoz1tr4mfBWah39JLMBSFkNR9/uce5sN8cgYgkusWnfdWBjI2tSE9gn03G7+eBWVM
	 A1kmUA42JsCwki7OhKo5R8AREX5Pk9+898uEmdRe921+aMU7SGGt4AQZ58ZNyHLNhe
	 4XEkWIGDL/2ygqxNjvx1XWs4KH5O/CNLLb2UUoFdmuR0ZC14nttghJ5oTosO3YZ909
	 dsgp5gk9F4OBF96aLkLsQCFarIjFBjo1EUSm269Bu+MukvzbSsINaDMspz6D10C8pK
	 Md9/OO7X6MmRA==
Date: Tue, 10 Oct 2023 15:23:30 -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 <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>, Wei Liu <wl@xen.org>, 
    Bertrand Marquis <bertrand.marquis@arm.com>, consulting@bugseng.com, 
    roger.pau@citrix.com, dfaggioli@suse.com
Subject: Re: Rule 10.1 violations in perfc_incra and PERFCOUNTER_ARRAY
In-Reply-To: <771624f5199fe76ce266a00d0c649428@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2310101515070.3431292@ubuntu-linux-20-04-desktop>
References: <5cfaaaceb163af3244981b020ed55f3f@bugseng.com> <alpine.DEB.2.22.394.2310091838510.3431292@ubuntu-linux-20-04-desktop> <771624f5199fe76ce266a00d0c649428@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, 10 Oct 2023, Nicola Vetrini wrote:
> On 10/10/2023 03:56, Stefano Stabellini wrote:
> > On Fri, 6 Oct 2023, Nicola Vetrini wrote:
> > > Given the following macros in <xen/perfc.h> and
> > > 
> > > #define perfc_incra(x,y)                                                \
> > >     ( (y) <= PERFC_LAST_ ## x - PERFC_ ## x ?                           \
> > > 	 ++this_cpu(perfcounters)[PERFC_ ## x + (y)] : 0 )
> > > 
> > > and the following violation
> > > 
> > > xen/arch/arm/traps.c:1407.5-1407.32:
> > >   reference to enum constant `PERFC_hypercalls' has essential type `enum
> > > perfcounter'
> > >   and standard type `int'
> > >  <preprocessed xen/arch/arm/traps.c>:11606.29-11606.44: preprocessed
> > > tokens
> > >  <scratch space>:137.1-137.16: expanded from macro `PERFC_'
> > >  xen/include/xen/perfc.h:69.35-69.45: expanded from macro `perfc_incra'
> > > xen/arch/arm/traps.c:1407.5-1407.32:
> > >   `+' addition operator expects a number or a character
> > >  <preprocessed xen/arch/arm/traps.c>:11606.46: preprocessed tokens
> > >  xen/include/xen/perfc.h:69.47: expanded from macro `perfc_incra'
> > > 
> > > the difference between enumerated values is forbidden by the Rule. In the
> > > coding standard's
> > > interpretation, named enums are unordered list of symbols, which can only
> > > be
> > > compared for
> > > equality.
> > > There are a few possible paths forward:
> > > 
> > > 1. use means different from named enums to generate these constants (such
> > > as
> > > #define-s or
> > >    constants integers);
> > 
> > This is a viable option
> > 
> > 
> > > 2. explicitly deviate subtraction of enums, therefore defining an explicit
> > > ordering on
> > >    enumerated values;
> > 
> > I would prefer to avoid a project-wide deviation, because I think in
> > general it is a good rule to have. If we go with a deviation, I think it
> > would be better to deviate PERFCOUNTER or perfc.h specifically. This is
> > a file that changes very rarely. We could make the case that this is
> > safe with GCC (most probably is) and this case was reviewed carefully
> > and doesn't change often (3 changes in the last 10 yeas).
> > 
> > 
> > > 3. use an unnamed enum, effectively considering the enumerated values as
> > > plain
> > > integers.
> > >    This does not violate the Rule.
> > 
> > What do you mean by unname enum?
> 
> e.g.
> 
> enum {
> #include <xen/perfc_defn.h>
> 	NUM_PERFCOUNTERS
> };
> 
> instead of
> 
> enum perfcounter {
> #include <xen/perfc_defn.h>
> 	NUM_PERFCOUNTERS
> };


I think this should be easy to do in this case. I gave it a quick try
and it seems to still build successfully. It could be the best way
forward for this instance.


However in general I am confused why unnamed enum can do comparisons
between members and named enums cannot. What is the reason? In any case,
I think we should clarify this detail in the notes section of
docs/misra/rules.rst, because I don't think it was clear to anyone that
there is a difference in behavior between named and unnamed enums.


From xen-devel-bounces@lists.xenproject.org Tue Oct 10 22:26:47 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 10 Oct 2023 22:26:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615171.956410 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqLBY-0002U0-2n; Tue, 10 Oct 2023 22:26:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615171.956410; Tue, 10 Oct 2023 22:26: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 1qqLBY-0002Tt-01; Tue, 10 Oct 2023 22:26:40 +0000
Received: by outflank-mailman (input) for mailman id 615171;
 Tue, 10 Oct 2023 22:26: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=XImq=FY=infradead.org=mcgrof@srs-se1.protection.inumbo.net>)
 id 1qqLBV-0002TV-U4
 for xen-devel@lists.xenproject.org; Tue, 10 Oct 2023 22:26:38 +0000
Received: from bombadil.infradead.org (bombadil.infradead.org
 [2607:7c80:54:3::133])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 124ef577-67bc-11ee-98d3-6d05b1d4d9a1;
 Wed, 11 Oct 2023 00:26:36 +0200 (CEST)
Received: from mcgrof by bombadil.infradead.org with local (Exim 4.96 #2 (Red
 Hat Linux)) id 1qqLAv-00EFvQ-2z; Tue, 10 Oct 2023 22:26: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
X-Inumbo-ID: 124ef577-67bc-11ee-98d3-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=bombadil.20210309; h=Sender:In-Reply-To:Content-Type:
	MIME-Version:References:Message-ID:Subject:Cc:To:From:Date:Reply-To:
	Content-Transfer-Encoding:Content-ID:Content-Description;
	bh=Jt7zMqKrLNJ4K7VS3w7XNGV+SpqUurU0PXBkkxalgKc=; b=1PL/j3Yl0CuSo7Wvorcy1SBbas
	I+6DqkyUbYtUIZ9pkGSDQa8ByQS3UkqTwbfjdaotfSES7NdqYqgxx29fk4+tzLW3FRROafO4ZtsvZ
	l+W8U6dorpda5yasc9Kqeau3Zz3sh/qCL49nsyxtkbllVRGWd6OzS9TccFLxGNwC4uVawQz8L4W7d
	AcCH9bEiJX5jVmwx9rhI9AetmVYQ337XpotHrDcgLYa0oedh5OhdR8LhKPPVwrBxYyGTxqsN2NJUq
	t3JisqYnKbp3RUciBZn8l5IbE1O6D3K7GhlblXGtYAWbn3INUlqHRA26oYGxooXJSmeyHUHhjfGWo
	wvcm+phA==;
Date: Tue, 10 Oct 2023 15:26:01 -0700
From: Luis Chamberlain <mcgrof@kernel.org>
To: j.granados@samsung.com
Cc: 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 v2 00/15] sysctl: Remove sentinel elements from drivers
Message-ID: <ZSXPeVDv6FfKiTp5@bombadil.infradead.org>
References: <20231002-jag-sysctl_remove_empty_elem_drivers-v2-0-02dd0d46f71e@samsung.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <20231002-jag-sysctl_remove_empty_elem_drivers-v2-0-02dd0d46f71e@samsung.com>
Sender: Luis Chamberlain <mcgrof@infradead.org>

On Mon, Oct 02, 2023 at 10:55:17AM +0200, Joel Granados via B4 Relay wrote:
> Changes in v2:
> - Left the dangling comma in the ctl_table arrays.
> - Link to v1: https://lore.kernel.org/r/20230928-jag-sysctl_remove_empty_elem_drivers-v1-0-e59120fca9f9@samsung.com

Thanks! Pushed onto sysctl-next for wider testing.

  Luis


From xen-devel-bounces@lists.xenproject.org Tue Oct 10 22:28:06 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 10 Oct 2023 22:28:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615174.956420 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqLCu-00030w-C4; Tue, 10 Oct 2023 22:28:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615174.956420; Tue, 10 Oct 2023 22: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 1qqLCu-00030p-9X; Tue, 10 Oct 2023 22:28:04 +0000
Received: by outflank-mailman (input) for mailman id 615174;
 Tue, 10 Oct 2023 22: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=Z25Z=FY=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qqLCt-00030g-7H
 for xen-devel@lists.xenproject.org; Tue, 10 Oct 2023 22:28:03 +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 45e32c60-67bc-11ee-98d3-6d05b1d4d9a1;
 Wed, 11 Oct 2023 00:28:02 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by ams.source.kernel.org (Postfix) with ESMTP id 8D110B81ECB;
 Tue, 10 Oct 2023 22:28:01 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 3C263C433C7;
 Tue, 10 Oct 2023 22:27: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: 45e32c60-67bc-11ee-98d3-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696976880;
	bh=e+HZNmLS0K4X4liZmJjbHTv3fJqFyyy4yzgkfzwMgbc=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=NavhYgUiuE/hX4gn+rffJ1aVZV0xVzEMjqOwH61IEp7P3z91tubJpEPM0sQWm4le+
	 /uS9jNPiLf6o7/arqvVbi0lGctjoGiTGc5MPoFo7bJtjiof1dznJZBZng/8bybAOI4
	 GzivDGx4mRcCF7UznJbbOISIJJ4MErwomxnZ9c49AB2zXaQ3+qKxlsDlzIdpAqMzGJ
	 WFh89D4fw8XLi3iFAZWcLkTbe1rbdVFWFRAQ6dVXORtithuI/GNS4DxwKZg+giCs6D
	 ARR7hDIej62k13CaH/XZWt08ebJ3g3hAp5RzjGvNF8VAyn5GESHQnMYcNnnc1RoVVb
	 OEU88BCZvUdEQ==
Date: Tue, 10 Oct 2023 15:27:57 -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@arm.com
Subject: Re: [XEN PATCH][for-4.19 v2 2/2] docs/misra: add deviations.rst to
 document additional deviations.
In-Reply-To: <a5635fc5e51518c205d776ac8a9600ba@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2310101524080.3431292@ubuntu-linux-20-04-desktop>
References: <cover.1696865051.git.nicola.vetrini@bugseng.com> <ccda90b6be8f6977cff14ae65749ffc7fa429c3c.1696865051.git.nicola.vetrini@bugseng.com> <alpine.DEB.2.22.394.2310091811190.3431292@ubuntu-linux-20-04-desktop>
 <a5635fc5e51518c205d776ac8a9600ba@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, 10 Oct 2023, Nicola Vetrini wrote:
> On 10/10/2023 03:19, Stefano Stabellini wrote:
> > +Henry
> > 
> > On Mon, 9 Oct 2023, Nicola Vetrini wrote:
> > > This file contains the deviation that are not marked by
> > > a deviation comment, as specified in
> > > docs/misra/documenting-violations.rst.
> > > 
> > > Suggested-by: Stefano Stabellini <sstabellini@kernel.org>
> > > Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
> > 
> > This is great! Thank you so much!
> > 
> > I have a few questions below but even as-is it is way better than
> > nothing. I think we should add this for 4.18
> > 
> > 
> > > ---
> > >  docs/index.rst            |   1 +
> > >  docs/misra/deviations.rst | 240 ++++++++++++++++++++++++++++++++++++++
> > >  docs/misra/rules.rst      |   2 +-
> > >  3 files changed, 242 insertions(+), 1 deletion(-)
> > >  create mode 100644 docs/misra/deviations.rst
> > > 
> > > diff --git a/docs/index.rst b/docs/index.rst
> > > index 2c47cfa999f2..f3f779f89ce5 100644
> > > --- a/docs/index.rst
> > > +++ b/docs/index.rst
> > > @@ -63,6 +63,7 @@ Xen hypervisor code.
> > >     :maxdepth: 2
> > > 
> > >     misra/rules
> > > +   misra/deviations
> > > 
> > > 
> > >  Miscellanea
> > > diff --git a/docs/misra/deviations.rst b/docs/misra/deviations.rst
> > > new file mode 100644
> > > index 000000000000..19743e34ce03
> > > --- /dev/null
> > > +++ b/docs/misra/deviations.rst
> > > @@ -0,0 +1,240 @@
> > > +.. SPDX-License-Identifier: CC-BY-4.0
> > > +
> > > +MISRA C deviations for Xen
> > > +==========================
> > > +
> > > +The following is the list of MISRA C:2012 deviations for the Xen codebase
> > > that
> > > +are not covered by a `SAF-x-safe` or `SAF-x-false-positive-<tool>`
> > > comment, as
> > > +specified in docs/misra/documenting-violations.rst; the lack of
> > > +such comments is usually due to the excessive clutter they would bring to
> > > the
> > > +codebase or the impossibility to express such a deviation (e.g., if it's
> > > +composed of several conditions).
> > > +
> > > +Deviations related to MISRA C:2012 Directives:
> > > +----------------------------------------------
> > > +
> > > +.. list-table::
> > > +   :header-rows: 1
> > > +
> > > +   * - Directive identifier
> > > +     - Justification
> > > +     - Notes
> > > +
> > > +   * - D4.3
> > > +     - Accepted for the ARM64 codebase
> > > +     - Tagged as `disapplied` for ECLAIR on any other violation report.
> > 
> > This mean it has been applied for ARM64 but not x86, right?
> > 
> > 
> 
> Yes.
> 
> > > +   * - D4.3
> > > +     - The inline asm in 'xen/arch/arm/arm64/lib/bitops.c' is tightly
> > > coupled
> > > +       with the surronding C code that acts as a wrapper, so it has been
> > > decided
> > > +       not to add an additional encapsulation layer.
> > > +     - Tagged as `deliberate` for ECLAIR.
> > > +
> > > +Deviations related to MISRA C:2012 Rules:
> > > +-----------------------------------------
> > > +
> > > +.. list-table::
> > > +   :header-rows: 1
> > > +
> > > +   * - Rule identifier
> > > +     - Justification
> > > +     - Notes
> > > +
> > > +   * - R2.1
> > > +     - The compiler implementation guarantees that the unreachable code
> > > is
> > > +       removed. Constant expressions and unreachable branches of if and
> > > switch
> > > +       statements are expected.
> > > +     - Tagged as `safe` for ECLAIR.
> > > +
> > > +   * - R2.1
> > > +     - Some functions are intended not to be referenced.
> > > +     - Tagged as `deliberate` for ECLAIR.
> > 
> > What does it mean "some functions" in this case? Should we list which
> > functions?
> > 
> 
> Well, there are a lot, typically resulting from build configurations that do
> not
> use them, or because they are used only in asm code. I can mention these
> reasons in the
> document, to make it easier to understand.

Yes, I think we need to clarify further this point, because saying "Some
functions" doesn't help the reader understand:
- whether all functions can be not referenced
- which subset of functions can be not referenced

How to distinguish between? How do we know whether a certain patch is
violating the rule or not?

If there is a clear list of functions that can be not referenced, then
we should list them here. If there is a methodology we can use to
distinguish between them (e.g. functions called from asm only) then we
can write the methodology here. Either way it is fine as long as the
criteria to know if it is OK if a function is not referenced is clear.


From xen-devel-bounces@lists.xenproject.org Tue Oct 10 22:30:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 10 Oct 2023 22:30:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615178.956431 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqLF8-0004SU-Pr; Tue, 10 Oct 2023 22:30:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615178.956431; Tue, 10 Oct 2023 22:30: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 1qqLF8-0004SN-MX; Tue, 10 Oct 2023 22:30:22 +0000
Received: by outflank-mailman (input) for mailman id 615178;
 Tue, 10 Oct 2023 22:30: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=Z25Z=FY=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qqLF7-0004SH-I9
 for xen-devel@lists.xenproject.org; Tue, 10 Oct 2023 22:30: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 987f2229-67bc-11ee-98d3-6d05b1d4d9a1;
 Wed, 11 Oct 2023 00:30:20 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by ams.source.kernel.org (Postfix) with ESMTP id 24947B81EC1;
 Tue, 10 Oct 2023 22:30:20 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id B271BC433C8;
 Tue, 10 Oct 2023 22:30: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: 987f2229-67bc-11ee-98d3-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696977019;
	bh=4KQ+fP5Z+CodzlHTsTZqTxQVs/IEOqNvqb0CVWSQekc=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=GmfCVSlzk9e0UsMxOdl0ZvIqU62/6FixIEi5DYFJ6SccekSiUV3pKzTd7wh6mFRgQ
	 D+VJlt3Ugakyiv2bZ31JbgDjYzNkDfSyX1UBZKPJNtBqxIoM3u72lMsuEhw/9j3phf
	 +zm8W1cD8vIirL4NDWBj3PdH1qyoWjZN294YV0Ttac24bkoujVRv5kb8wqyxH8WuWI
	 k+77To7i+CX8yLMmYwC/uuIQy+kSyghoOsm2WbyYjDiRzwAtv66vak8trCe8Ge6tJF
	 LsJVCd9EQ4JoPuwD7QxaWmO/8KWGx3nR6NO+R2r3SfsbIkL5OAHFpJzbCqkUWg5QPv
	 WdaastnJSLzVQ==
Date: Tue, 10 Oct 2023 15:30:16 -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: Stefano Stabellini <sstabellini@kernel.org>, qemu-devel@nongnu.org, 
    Juergen Gross <jgross@suse.com>, 
    Anthony Perard <anthony.perard@citrix.com>, Paul Durrant <paul@xen.org>, 
    "Michael S. Tsirkin" <mst@redhat.com>, 
    Marcel Apfelbaum <marcel.apfelbaum@gmail.com>, 
    Paolo Bonzini <pbonzini@redhat.com>, 
    Richard Henderson <richard.henderson@linaro.org>, 
    Eduardo Habkost <eduardo@habkost.net>, Peter Xu <peterx@redhat.com>, 
    David Hildenbrand <david@redhat.com>, 
    =?UTF-8?Q?Philippe_Mathieu-Daud=C3=A9?= <philmd@linaro.org>, 
    "open list:X86 Xen CPUs" <xen-devel@lists.xenproject.org>
Subject: Re: [QEMU][PATCH v1 2/7] xen: add pseudo RAM region for grant
 mappings
In-Reply-To: <ZSXBPlQF1Y2Gx5P1@amd.com>
Message-ID: <alpine.DEB.2.22.394.2310101529280.3431292@ubuntu-linux-20-04-desktop>
References: <20231005181629.4046-1-vikram.garhwal@amd.com> <20231005181629.4046-3-vikram.garhwal@amd.com> <alpine.DEB.2.22.394.2310091653270.3431292@ubuntu-linux-20-04-desktop> <ZSXBPlQF1Y2Gx5P1@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, 10 Oct 2023, Vikram Garhwal wrote:
> On Mon, Oct 09, 2023 at 05:02:14PM -0700, Stefano Stabellini wrote:
> > On Thu, 5 Oct 2023, Vikram Garhwal wrote:
> > > From: Juergen Gross <jgross@suse.com>
> > > 
> > > Add a memory region which can be used to automatically map granted
> > > memory. It is starting at 0x8000000000000000ULL in order to be able to
> > > distinguish it from normal RAM.
> > > 
> > > For this reason the xen.ram memory region is expanded, which has no
> > > further impact as it is used just as a container of the real RAM
> > > regions and now the grant region.
> > > 
> > > Signed-off-by: Juergen Gross <jgross@suse.com>
> > > Signed-off-by: Vikram Garhwal <vikram.garhwal@amd.com>
> > 
> > This patch doesn't apply to staging anymore
> Will re-base it. I rebased it against master branch.
> > 
> > 
> > > ---
> > >  hw/i386/xen/xen-hvm.c           |  3 ++
> > >  hw/xen/xen-hvm-common.c         |  4 +--
> > >  hw/xen/xen-mapcache.c           | 27 ++++++++++++++
> > >  include/exec/ram_addr.h         |  1 +
> > >  include/hw/xen/xen-hvm-common.h |  2 ++
> > >  include/hw/xen/xen_pvdev.h      |  3 ++
> > >  include/sysemu/xen-mapcache.h   |  3 ++
> > >  softmmu/physmem.c               | 62 +++++++++++++++++++++------------
> > >  8 files changed, 80 insertions(+), 25 deletions(-)
> > > 
> > > diff --git a/hw/i386/xen/xen-hvm.c b/hw/i386/xen/xen-hvm.c
> > > index f42621e674..67a55558a6 100644
> > > --- a/hw/i386/xen/xen-hvm.c
> > > +++ b/hw/i386/xen/xen-hvm.c
> > > @@ -172,6 +172,9 @@ static void xen_ram_init(PCMachineState *pcms,
> > >                                   x86ms->above_4g_mem_size);
> > >          memory_region_add_subregion(sysmem, 0x100000000ULL, &ram_hi);
> > >      }
> > > +
> > > +    /* Add grant mappings as a pseudo RAM region. */
> > > +    ram_grants = *xen_init_grant_ram();
> > >  }
> > >  
> > >  static XenPhysmap *get_physmapping(hwaddr start_addr, ram_addr_t size)
> > > diff --git a/hw/xen/xen-hvm-common.c b/hw/xen/xen-hvm-common.c
> > > index 565dc39c8f..b7255977a5 100644
> > > --- a/hw/xen/xen-hvm-common.c
> > > +++ b/hw/xen/xen-hvm-common.c
> > > @@ -9,7 +9,7 @@
> > >  #include "hw/boards.h"
> > >  #include "hw/xen/arch_hvm.h"
> > >  
> > > -MemoryRegion ram_memory;
> > > +MemoryRegion ram_memory, ram_grants;
> > >  
> > >  void xen_ram_alloc(ram_addr_t ram_addr, ram_addr_t size, MemoryRegion *mr,
> > >                     Error **errp)
> > > @@ -26,7 +26,7 @@ void xen_ram_alloc(ram_addr_t ram_addr, ram_addr_t size, MemoryRegion *mr,
> > >          return;
> > >      }
> > >  
> > > -    if (mr == &ram_memory) {
> > > +    if (mr == &ram_memory || mr == &ram_grants) {
> > >          return;
> > >      }
> > >  
> > > diff --git a/hw/xen/xen-mapcache.c b/hw/xen/xen-mapcache.c
> > > index f7d974677d..8115c44c00 100644
> > > --- a/hw/xen/xen-mapcache.c
> > > +++ b/hw/xen/xen-mapcache.c
> > > @@ -14,7 +14,9 @@
> > >  
> > >  #include <sys/resource.h>
> > >  
> > > +#include "hw/xen/xen-hvm-common.h"
> > >  #include "hw/xen/xen_native.h"
> > > +#include "hw/xen/xen_pvdev.h"
> > >  #include "qemu/bitmap.h"
> > >  
> > >  #include "sysemu/runstate.h"
> > > @@ -597,3 +599,28 @@ uint8_t *xen_replace_cache_entry(hwaddr old_phys_addr,
> > >      mapcache_unlock();
> > >      return p;
> > >  }
> > > +
> > > +MemoryRegion *xen_init_grant_ram(void)
> > > +{
> > > +    RAMBlock *block;
> > > +
> > > +    memory_region_init(&ram_grants, NULL, "xen.grants",
> > > +                       XEN_MAX_VIRTIO_GRANTS * XC_PAGE_SIZE);
> > > +    block = g_malloc0(sizeof(*block));
> > > +    block->mr = &ram_grants;
> > > +    block->used_length = XEN_MAX_VIRTIO_GRANTS * XC_PAGE_SIZE;
> > > +    block->max_length = XEN_MAX_VIRTIO_GRANTS * XC_PAGE_SIZE;
> > > +    block->fd = -1;
> > > +    block->page_size = XC_PAGE_SIZE;
> > > +    block->host = (void *)XEN_GRANT_ADDR_OFF;
> > > +    block->offset = XEN_GRANT_ADDR_OFF;
> > > +    block->flags = RAM_PREALLOC;
> > > +    ram_grants.ram_block = block;
> > > +    ram_grants.ram = true;
> > > +    ram_grants.terminates = true;
> > > +    ram_block_add_list(block);
> > > +    memory_region_add_subregion(get_system_memory(), XEN_GRANT_ADDR_OFF,
> > > +                                &ram_grants);
> > > +
> > > +    return &ram_grants;
> > 
> > It doesn't look like xen_init_grant_ram has anything to do with the
> > mapcache. It should be in another file. Maybe ./hw/xen/xen-hvm-common.c
> > or ./hw/i386/xen/xen-hvm.c (but this is x86 specific and we need grants
> > on ARM too)
> Do you mean to move all grant related functions? As moving this alone will not
> be sufficient. There are lot of new grant related function added in later patches.
> 
> I am okay with moving all to xen-hvm-common.c
> 
> Following code movement will happen in this case:
> 1. All grant related static function to xen-hvm-common.c.
>     xen_ram_addr_from_grant_cache(), xen_ram_addr_from_mapcache(),
>     xen_map_grant_dyn(), xen_unmap_grant_dyn and xen_init_grant_ram().
> 2. Remove static from xen_ram_addr_from_mapcache_try().
> 
> Does these changes looks good?

After reading all the patches, I think it is also OK to leave the code
here.


From xen-devel-bounces@lists.xenproject.org Tue Oct 10 23:40:12 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 10 Oct 2023 23:40:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615187.956441 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqMKU-00073I-Kh; Tue, 10 Oct 2023 23:39:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615187.956441; Tue, 10 Oct 2023 23: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 1qqMKU-00073B-HM; Tue, 10 Oct 2023 23:39:58 +0000
Received: by outflank-mailman (input) for mailman id 615187;
 Tue, 10 Oct 2023 23:39: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=Z25Z=FY=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qqMKT-000735-NK
 for xen-devel@lists.xenproject.org; Tue, 10 Oct 2023 23:39:57 +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 5000ccdb-67c6-11ee-98d3-6d05b1d4d9a1;
 Wed, 11 Oct 2023 01:39:55 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by sin.source.kernel.org (Postfix) with ESMTP id DF5B9CE21B7;
 Tue, 10 Oct 2023 23:39:50 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 22EBBC433C8;
 Tue, 10 Oct 2023 23:39: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: 5000ccdb-67c6-11ee-98d3-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696981189;
	bh=IG8tgLyPg/ZpmazdKQoGy1TuYfR5jdYUGh+mZHLUsNQ=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=SCctL5geusnu+qlz6I6JgBf5rwTOSee8NFMSVvjr+FsBbIUJJHjkcOLRP+RBSZRhI
	 gHzePG9bpajQSNyFrUNBUyjAXcBnPsz/NN4ELqWyyowS92iowt4Q9eXBuBzY6kF+jN
	 +aESKT6aht+jl1gdNGI32SP9afpnHl8JCraZECWariwq4BYYmFu2P3+1JL0yd8xNW9
	 UGnQOzGdznKB5qml8BjHQLt+iJJsNATxxfaqozJig2SatcxVXqHq72h6yZdC6+Wd/v
	 8SpG+zmByA6Z0Yi/lwMURNX21hgMv+LX7eeRrZanOcbCt3Dp84aS38T3E/m43NCdlC
	 sd5arnts4MIWg==
Date: Tue, 10 Oct 2023 16:39:45 -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>, 
    Luca Fancellu <Luca.Fancellu@arm.com>, 
    Nicola Vetrini <nicola.vetrini@bugseng.com>, 
    Xen-devel <xen-devel@lists.xenproject.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>, 
    Jan Beulich <jbeulich@suse.com>, 
    =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>, 
    Henry Wang <Henry.Wang@arm.com>, 
    Simone Ballarin <simone.ballarin@bugseng.com>, 
    Doug Goldstein <cardoe@cardoe.com>, 
    George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>, 
    Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [XEN PATCH] xen: Add SAF deviations for MISRA C:2012 Rule 7.1
In-Reply-To: <8c3d7933-c139-49dd-8c62-2d4543176f8f@xen.org>
Message-ID: <alpine.DEB.2.22.394.2310101635280.3431292@ubuntu-linux-20-04-desktop>
References: <338d8e574db943a86c7605e4c6d9a299d45f067d.1696347345.git.nicola.vetrini@bugseng.com> <alpine.DEB.2.22.394.2310031345190.2348112@ubuntu-linux-20-04-desktop> <e1736215-52ba-4737-9da3-8f1ba7e832a6@citrix.com> <DB96C095-5FAF-40A1-9CA8-002291AA1933@arm.com>
 <2894008e8f612296da84267346ae4240@bugseng.com> <B00BC78B-E707-4043-A0B4-D320C6717472@arm.com> <alpine.DEB.2.22.394.2310041625170.2348112@ubuntu-linux-20-04-desktop> <9DD525D9-DB6D-4888-9266-FB45906A0E0F@arm.com> <alpine.DEB.2.22.394.2310051756360.2348112@ubuntu-linux-20-04-desktop>
 <C2DDFAB5-D943-4A24-9C14-AF35BE2A7C90@arm.com> <alpine.DEB.2.22.394.2310061741130.3431292@ubuntu-linux-20-04-desktop> <1ceb5aa0-d374-4357-964f-1341468d542e@xen.org> <alpine.DEB.2.22.394.2310091251080.3431292@ubuntu-linux-20-04-desktop>
 <8c3d7933-c139-49dd-8c62-2d4543176f8f@xen.org>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Tue, 10 Oct 2023, Julien Grall wrote:
> Hi Stefano,
> 
> On 09/10/2023 23:19, Stefano Stabellini wrote:
> > > 
> > > I am not sure this is better. This is a long line to read. But this is a
> > > personal opinion.
> > > 
> > > On the technical side, can we easily teach a tool to format this kind of
> > > exception? If not, then this should not be an exception we should
> > > implement.
> > 
> > I am not sure I understand what you mean by "can we easily teach a tool
> > to format this kind of exception". Do you mean whether we can teach a
> > tool to interpret a multiline statement as a single statement?
> 
> Sorry for the wording was not clear. I was referring to tools formatting the
> code (e.g. clang-format). Hopefully, at some point, we will finally have a way
> to automatically format the code. So we need a coding style that can be easily
> be checked.
> 
> It is not clear to me whether your proposed exception would work. We may have
> to allow longer lines (and this has drawback).

Yes, that's a good point. It will probably be an issue with clang-format.


> > /* cppcheck tag */
> > line1
> > /* cppcheck tag */
> > line2
> > /* cppcheck tag */
> > line3
> > 
> > and that would end up changing the line numbers in the source files so
> > the cppcheck report wouldn't match with the original line numbers any
> > longer
> 
> Would cppcheck accepts tag at the end of the line? If so, the following would
> not modify the line count:
> 
> /* cppcheck tag */
> line1 /* added cppcheck tag */
> line2 /* added cppcheck tag */
> line3 /* added cppcheck tag */

Luca answered to a similar, more generic, question a few days ago about
Coverity: https://marc.info/?l=xen-devel&m=169657904027210

So even if we get cppcheck to work like that, we would lose Coverity
support.

It doesn't seem there are a lot of good options here. In this case Luca
came up with a good idea on how to refactor the code so we should be
good.

But it doesn't seem we'll be able to come up with a general solution to
the multiline statement problem.


From xen-devel-bounces@lists.xenproject.org Wed Oct 11 00:02:16 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 11 Oct 2023 00:02:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615193.956450 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqMfu-0003qR-9S; Wed, 11 Oct 2023 00:02:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615193.956450; Wed, 11 Oct 2023 00:02: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 1qqMfu-0003qK-6W; Wed, 11 Oct 2023 00:02:06 +0000
Received: by outflank-mailman (input) for mailman id 615193;
 Wed, 11 Oct 2023 00:02: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=+0Cd=FZ=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qqMfs-0003qE-14
 for xen-devel@lists.xenproject.org; Wed, 11 Oct 2023 00:02:04 +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 66388176-67c9-11ee-9b0d-b553b5be7939;
 Wed, 11 Oct 2023 02:02:01 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by sin.source.kernel.org (Postfix) with ESMTP id 0278ECE20D3;
 Wed, 11 Oct 2023 00:01:57 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id B9C52C433C9;
 Wed, 11 Oct 2023 00:01:54 +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: 66388176-67c9-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696982516;
	bh=Sy2P5+wuKWwt0VBUDtSdgFFzlPfxvcmlOkyzBB1w7t4=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=tQqEvNzPrlva2hDYExPf9ot6F8jdVliOCBA2FB+2v7C0Ztx9cpxoCX24h/6NFZNxl
	 tqzhoDYPD53yFNrRobw43NFF1nQjxaxwE8INrlB7DFVVvqABfxyrhsq+J26WLujnW0
	 +PD6U3eI1m3mg45LFyYg6KT+4/L/5oHkJ6mizLyWJlaOddkVEU0cFUdnZJdYuoiWW4
	 0X7mpSKfSL8+ht9rtFGMowXR/SdUffTntBFV4jeyv7F16V8aXsSSnDdClHJ5tkMUi7
	 RNOlEt8snQ3gACU5S9WfUpCi9D8iEBUnNdjb2JK85IHHxBnmGfh9pXfe8RXG2u9b0D
	 3sP61PNC7FCMg==
Date: Tue, 10 Oct 2023 17:01:53 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Nicola Vetrini <nicola.vetrini@bugseng.com>, julien@xen.org
cc: Xen-devel <xen-devel@lists.xenproject.org>, consulting@bugseng.com, 
    Stefano Stabellini <sstabellini@kernel.org>, 
    Andrew Cooper <andrew.cooper3@citrix.com>, Jan Beulich <jbeulich@suse.com>, 
    Julien Grall <julien@xen.org>, Bertrand Marquis <bertrand.marquis@arm.com>, 
    roger.pau@citrix.com, George Dunlap <george.dunlap@citrix.com>, 
    Wei Liu <wl@xen.org>
Subject: Re: MISRA C:2012 D4.11 caution on staging
In-Reply-To: <7972c20f361126022fa97f6b51ca2d9c@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2310101658030.3431292@ubuntu-linux-20-04-desktop>
References: <7972c20f361126022fa97f6b51ca2d9c@bugseng.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

Hey Julien, please double-check what I am writing below


On Tue, 10 Oct 2023, Nicola Vetrini wrote:
> Hi,
> 
> as you can see from [1], there's a MISRA C guideline, D4.11, that is supposed
> to be clean
> (i.e., have no reports), but has a caution on an argument to memcpy
> (the second argument might be null according to the checker, given a set of
> assumptions on
> the control flow). To access the report just click on the second link in the
> log, which should take you to a webpage with a list of
> MISRA guidelines. Click on D4.11 and you'll see the full report, which I
> pasted below for convenience.
> 
> If the finding is genuine, then some countermeasure needs to be taken against
> this
> possible bug, otherwise it needs to be motivated why the field config->handle
> can't
> be null at that point.
> The finding is likely the result of an improvement made to the checker,
> because the first
> analysis I can see that spots it happened when rc1 has been tagged, but that
> commit does not
> touch the involved files.
> 
> [1] https://gitlab.com/xen-project/xen/-/jobs/5251222578
> 
>  caution for MC3R1.D4.11 untagged
> xen/common/domain.c:758.27-758.40:
> [59] null pointer passed as 2nd argument to memory copy function


This looks like a genuine issue: in domain_create, config->handle could
be uninitialized. For example, domain_create can be called
from xen/arch/arm/domain_build.c:create_domUs, passing &d_cfg, and I
don't see where we initialize d_cfg.handle.

This was just by code inspection. Julien, did I miss anything?


From xen-devel-bounces@lists.xenproject.org Wed Oct 11 00:15:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 11 Oct 2023 00:15:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615198.956460 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqMt5-0006gW-ER; Wed, 11 Oct 2023 00:15:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615198.956460; Wed, 11 Oct 2023 00:15: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 1qqMt5-0006gP-BG; Wed, 11 Oct 2023 00:15:43 +0000
Received: by outflank-mailman (input) for mailman id 615198;
 Wed, 11 Oct 2023 00:15: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=kH0+=FZ=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qqMt4-0006gH-2j
 for xen-devel@lists.xenproject.org; Wed, 11 Oct 2023 00:15:42 +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 4ee2e46b-67cb-11ee-9b0d-b553b5be7939;
 Wed, 11 Oct 2023 02:15:39 +0200 (CEST)
Received: by mail-lf1-x12c.google.com with SMTP id
 2adb3069b0e04-503f39d3236so7520855e87.0
 for <xen-devel@lists.xenproject.org>; Tue, 10 Oct 2023 17:15:39 -0700 (PDT)
Received: from [0.0.0.0] ([2001:41d0:8:52b7::])
 by smtp.gmail.com with ESMTPSA id
 p17-20020a0ccb91000000b006360931c12fsm5181770qvk.96.2023.10.10.17.15.33
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 10 Oct 2023 17:15: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: 4ee2e46b-67cb-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1696983339; x=1697588139; darn=lists.xenproject.org;
        h=content-transfer-encoding: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=pLT0/rMMPFRyDfeOiS42yioPV7d2bLcG4DlRfEiQdek=;
        b=Mcs1DrRxU/G9PVUfFWUjiYdqcOkk3cFtvtxZy4xJZXsu8k2exzfpVfcZUO2vhSCJSG
         c1VIWXRQaxj10wumWQRMaYWbVR1rBPLW8F6iiAHDZlVJ1v9cUCZE9micFqynpjNp1Ge1
         ZMzTRBPFYIXj7hx/xJ7UAYEd0/MCtbhJsfHV8=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1696983339; x=1697588139;
        h=content-transfer-encoding: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=pLT0/rMMPFRyDfeOiS42yioPV7d2bLcG4DlRfEiQdek=;
        b=sW9NFw6hWjtdcWClQGQRkeFBnCtW8odP0bg0vSiPvTDuD5ZIUzd4kDm14DaPS/zRLk
         cTCsxvTlLxYDbU4QW9kucieNIJdJFmsnfMLCWFsW+g3VwsCikAUWhHmilC3guoKsZPT5
         HNSqurRGvwf9nHNuqswYydPMXh4tQockbDT+R20pyV+3iGgoD3wXs3F8pN7trydWId3b
         oJAvmczHC9vnrU3uviipQfsUA2YmmUOLwWunwfuTq1UgB8RY2kSIr4bqRs/qoKdRhsc4
         f8XSNajLcsrSZKHrPbabMnVYa4Ult44aJzUW9lCYrKcvvJ6s9vV6ZH0tP6u80WVXCmKw
         AKSQ==
X-Gm-Message-State: AOJu0YyDs/KPvxwfFz9NtqvUfE0Zqi5KGFYKIxKbP53M9DzPoeUyTkZZ
	gDcLKIsRv2RHB7c7CjtXLFUqPg==
X-Google-Smtp-Source: AGHT+IG1BvRiW9LxgtX4mcAUcoQ41LXd5V4IRIZ8yHJcPwfLv6enmPLMKuhC4U9huQMcqQI1cg2Ymw==
X-Received: by 2002:a19:8c5a:0:b0:504:7f2e:9391 with SMTP id i26-20020a198c5a000000b005047f2e9391mr15361359lfj.34.1696983338711;
        Tue, 10 Oct 2023 17:15:38 -0700 (PDT)
Message-ID: <61f04d4b-34d9-4fd1-a989-56b042b4f3d8@citrix.com>
Date: Wed, 11 Oct 2023 08:15:28 +0800
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: MISRA C:2012 D4.11 caution on staging
Content-Language: en-GB
To: Nicola Vetrini <nicola.vetrini@bugseng.com>,
 Xen-devel <xen-devel@lists.xenproject.org>
Cc: consulting@bugseng.com, Stefano Stabellini <sstabellini@kernel.org>,
 Jan Beulich <jbeulich@suse.com>, Julien Grall <julien@xen.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>, roger.pau@citrix.com,
 George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>
References: <7972c20f361126022fa97f6b51ca2d9c@bugseng.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: <7972c20f361126022fa97f6b51ca2d9c@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 10/10/2023 5:31 pm, Nicola Vetrini wrote:
> Hi,
>
> as you can see from [1], there's a MISRA C guideline, D4.11, that is
> supposed to be clean
> (i.e., have no reports), but has a caution on an argument to memcpy
> (the second argument might be null according to the checker, given a
> set of assumptions on
> the control flow). To access the report just click on the second link
> in the log, which should take you to a webpage with a list of
> MISRA guidelines. Click on D4.11 and you'll see the full report, which
> I pasted below for convenience.
>
> If the finding is genuine, then some countermeasure needs to be taken
> against this
> possible bug, otherwise it needs to be motivated why the field
> config->handle can't
> be null at that point.
> The finding is likely the result of an improvement made to the
> checker, because the first
> analysis I can see that spots it happened when rc1 has been tagged,
> but that commit does not
> touch the involved files.
>
> [1] https://gitlab.com/xen-project/xen/-/jobs/5251222578

That's a false positive, but I'm not entirely surprised that the checker
struggled to see it.

First,

ASSERT(is_system_domain(d) ? config == NULL : config != NULL);

All system domains (domid >= 0x7ff0, inc IDLE) pass a NULL config.  All
other domains pass a real config.

Next,

/* DOMID_{XEN,IO,etc} (other than IDLE) are sufficiently constructed. */
if ( is_system_domain(d) && !is_idle_domain(d) )
    return d;

So at this point we only have the IDLE domain and real domains.

And finally, the complained-about construct is inside an:

if ( !is_idle_domain(d) )
    ...

hence config cannot be NULL, but only because of the way in which
is_{system,idle}_domain() interact.

~Andrew


From xen-devel-bounces@lists.xenproject.org Wed Oct 11 02:30:19 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 11 Oct 2023 02:30:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615203.956472 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqOz3-0007I7-Vs; Wed, 11 Oct 2023 02:30:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615203.956472; Wed, 11 Oct 2023 02:30: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 1qqOz3-0007Ha-Q4; Wed, 11 Oct 2023 02:30:01 +0000
Received: by outflank-mailman (input) for mailman id 615203;
 Wed, 11 Oct 2023 02:30: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 1qqOz2-00077M-Fw; Wed, 11 Oct 2023 02:30: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 1qqOz2-0003bO-CT; Wed, 11 Oct 2023 02:30: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 1qqOz1-0005ga-UH; Wed, 11 Oct 2023 02:30:00 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qqOz1-0006Xe-ST; Wed, 11 Oct 2023 02:29: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=khUD4XThQWEDZG19zmTbuPl/bVigPNGTGzR+Y5wd9lo=; b=5Xx7peeZ8k8/QGaDtK4vp4yudl
	twaa/Ao017KpvLmiIzABFuHdF3uXeSMYVmXyPOhXXC3haMx6XcXyk9Avzc5CKqxVKgZre0HDD0bhz
	rsxaGqzN3Dltl8Mj1k3nSMhgqyD7FUg32V8x9CMeLlay7S+yw2gDvV9Ayu1t7ji0L9gc=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183332-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 183332: tolerable FAIL - PUSHED
X-Osstest-Failures:
    xen-unstable:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:debian-hvm-install:fail:heisenbug
    xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:windows-install:fail:heisenbug
    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-i386-qemuu-rhel6hvm-amd:xen-install: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-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-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-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-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check: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-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-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-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-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-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-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-arndale:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-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-rtds:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds: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=c035151902689aa5a3765aeb16fa52755917b9ca
X-Osstest-Versions-That:
    xen=ffa1437686712045953c33c5e77a4ebdd9973916
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 11 Oct 2023 02:29:59 +0000

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

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 183336-retest
 test-amd64-i386-xl-qemuu-ws16-amd64 12 windows-install fail pass in 183336-retest

Tests which did not succeed, but are not blocking:
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop   fail in 183336 like 183328
 test-amd64-amd64-xl-qemuu-win7-amd64 12 windows-install       fail like 183306
 test-amd64-i386-qemuu-rhel6hvm-amd  7 xen-install             fail like 183319
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183328
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183328
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 183328
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183328
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183328
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183328
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 183328
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183328
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183328
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 183328
 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-i386-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-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-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-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-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-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-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-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

version targeted for testing:
 xen                  c035151902689aa5a3765aeb16fa52755917b9ca
baseline version:
 xen                  ffa1437686712045953c33c5e77a4ebdd9973916

Last test of basis   183328  2023-10-10 01:53:43 Z    1 days
Testing same since   183332  2023-10-10 12:40:17 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.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                 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                                 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
   ffa1437686..c035151902  c035151902689aa5a3765aeb16fa52755917b9ca -> master


From xen-devel-bounces@lists.xenproject.org Wed Oct 11 05:14:24 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 11 Oct 2023 05:14:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615053.956489 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqRXt-0002e8-6w; Wed, 11 Oct 2023 05:14:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615053.956489; Wed, 11 Oct 2023 05:14: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 1qqRXt-0002e1-3Y; Wed, 11 Oct 2023 05:14:09 +0000
Received: by outflank-mailman (input) for mailman id 615053;
 Tue, 10 Oct 2023 13:22: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=oemd=FY=linaro.org=bill.mills@srs-se1.protection.inumbo.net>)
 id 1qqCgr-00073B-QB
 for xen-devel@lists.xenproject.org; Tue, 10 Oct 2023 13:22:25 +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 0c3c562d-6770-11ee-98d3-6d05b1d4d9a1;
 Tue, 10 Oct 2023 15:22:24 +0200 (CEST)
Received: by mail-oi1-x229.google.com with SMTP id
 5614622812f47-3ae55c2e12bso4102941b6e.0
 for <xen-devel@lists.xenproject.org>; Tue, 10 Oct 2023 06:22:24 -0700 (PDT)
Received: from [192.168.2.7] (pool-108-31-156-225.washdc.fios.verizon.net.
 [108.31.156.225]) by smtp.gmail.com with ESMTPSA id
 r5-20020ac85205000000b004181aa90b46sm4492961qtn.89.2023.10.10.06.22.22
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 10 Oct 2023 06:22: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: 0c3c562d-6770-11ee-98d3-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=linaro.org; s=google; t=1696944143; x=1697548943; 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=kFYaphee/OWYJ27akU61ySL2pcyi+L0fBa4hg4/3zoY=;
        b=c1igc+MBwY+ZeIgdnNdAKPPgcxB4GRg5Xk8bMFV1TzEMGbJgE+IXH5SGAhd3ItQikx
         nNYT5oGRTVaysCErHXSmElZF3H1YiQ8Rz/cdWA/7DqsW60Ph+7ZN43dex1eNL83xPx42
         9R5leJ9qGAtbI/my71JfRAN+dFs4RzaPBXgQf2oCUJqTkb4wwLZCLGYw+LAf213oAzVZ
         Yn+6hMMvebCTWI53r00BtP+N5yT/EKvWIJv/f+fy416ojvRCVu5MQMAwwpkHvE1SsOfo
         8QIPMbiF6S7/znYSkZYtv//IwNFgh7jMRRDokfcGUsD9+VfdKECe0T2bSsrL2GUdOvdd
         YmFw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1696944143; x=1697548943;
        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=kFYaphee/OWYJ27akU61ySL2pcyi+L0fBa4hg4/3zoY=;
        b=GcQUOt8AWISUBmMRn/+9ykZifIwULerOrRx7CP/0iPLlxYHzu+38j3GrPDz7qMk0hB
         OwTn4Xf0Wk7eGipv4vnWathXuR5P86f3BYF6j0O1q5b7kPSX/PsmqVzFRVUKfdd4q4k+
         fCQR8E3at7zdEftWgQv/YQOwHNan1E5oepY1mOpARSN2RhOsCCrf85jacEOLE/+DRHLL
         soAqYL8upWeiM4fVFBFM695yPx81XgjIMbWJY7rioqTtUNgGpQYkgljtO+Lu/0HoyKR9
         aTAPdFV9y3OnLTrKQVmlw3KSBlP6fZHGcfrwq+1adr88KIDHpZ7cuqZypvR3R2EZLdN3
         5qxg==
X-Gm-Message-State: AOJu0YxwYfgYq2SERGoqiBGyDWbc1Gjx6Js9tNhJJLIrCFia9+1Wvw+X
	Xn/RtfskwFwnV1wwWq0WiwInnQ==
X-Google-Smtp-Source: AGHT+IGt5DfbIAyyFbvDL1031BwHE+134NWp0GPw9ZXRVvuTrzv7JENSrRl2NlkoylidPQmariFEOw==
X-Received: by 2002:aca:1c18:0:b0:3ae:5c89:dcc2 with SMTP id c24-20020aca1c18000000b003ae5c89dcc2mr19889308oic.34.1696944142863;
        Tue, 10 Oct 2023 06:22:22 -0700 (PDT)
Message-ID: <920a671c-1927-4086-950f-db8e3293a989@linaro.org>
Date: Tue, 10 Oct 2023 09:22:21 -0400
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [Stratos-dev] [PATCH V3 2/2] xen: privcmd: Add support for
 ioeventfd
Content-Language: en-US
To: Viresh Kumar <viresh.kumar@linaro.org>, Juergen Gross <jgross@suse.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>
Cc: stratos-dev@op-lists.linaro.org,
 Erik Schilling <erik.schilling@linaro.org>,
 Manos Pitsidianakis <manos.pitsidianakis@linaro.org>,
 linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org
References: <cover.1696850733.git.viresh.kumar@linaro.org>
 <957de2a53dde99a653b47af9c95bc17692870294.1696850733.git.viresh.kumar@linaro.org>
From: Bill Mills <bill.mills@linaro.org>
In-Reply-To: <957de2a53dde99a653b47af9c95bc17692870294.1696850733.git.viresh.kumar@linaro.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi Viresh,

On 10/9/23 7:29 AM, Viresh Kumar via Stratos-dev wrote:
> Virtio guests send VIRTIO_MMIO_QUEUE_NOTIFY notification when they need
> to notify the backend of an update to the status of the virtqueue. The
> backend or another entity, polls the MMIO address for updates to know
> when the notification is sent.
> 
> It works well if the backend does this polling by itself. But as we move
> towards generic backend implementations, we end up implementing this in
> a separate user-space program.
> 
> Generally, the Virtio backends are implemented to work with the Eventfd
> based mechanism. In order to make such backends work with Xen, another
> software layer needs to do the polling and send an event via eventfd to
> the backend once the notification from guest is received. This results
> in an extra context switch.
> 
> This is not a new problem in Linux though. It is present with other
> hypervisors like KVM, etc. as well. The generic solution implemented in
> the kernel for them is to provide an IOCTL call to pass the address to
> poll and eventfd, which lets the kernel take care of polling and raise
> an event on the eventfd, instead of handling this in user space (which
> involves an extra context switch).
> 
> This patch adds similar support for xen.
> 
> Inspired by existing implementations for KVM, etc..
> 
> This also copies ioreq.h header file (only struct ioreq and related
> macros) from Xen's source tree (Top commit 5d84f07fe6bf ("xen/pci: drop
> remaining uses of bool_t")).
> 
> Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
> ---
>   drivers/xen/Kconfig               |   8 +-
>   drivers/xen/privcmd.c             | 405 +++++++++++++++++++++++++++++-
>   include/uapi/xen/privcmd.h        |  18 ++
>   include/xen/interface/hvm/ioreq.h |  51 ++++
>   4 files changed, 476 insertions(+), 6 deletions(-)
>   create mode 100644 include/xen/interface/hvm/ioreq.h
> 
> diff --git a/drivers/xen/Kconfig b/drivers/xen/Kconfig
> index d43153fec18e..d5989871dd5d 100644
> --- a/drivers/xen/Kconfig
> +++ b/drivers/xen/Kconfig
> @@ -269,12 +269,12 @@ config XEN_PRIVCMD
>   	  disaggregated Xen setups this driver might be needed for other
>   	  domains, too.
>   
> -config XEN_PRIVCMD_IRQFD
> -	bool "Xen irqfd support"
> +config XEN_PRIVCMD_EVENTFD
> +	bool "Xen Ioeventfd and irqfd support"

You certainly know about kernel policies better than I but why the 
CONGIG_ name change?

With this change all downstream distros need to find this and re-enable 
it if they want to keep a working Xen system.

I presume the kernel can still work in the old way and not use your new 
mode correct?

I would certainly change the description but I wonder about keeping the 
CONFIG_ name the same.

No issue if I am obviously wrong and this is done all the time.

Thanks,
Bill


From xen-devel-bounces@lists.xenproject.org Wed Oct 11 06:54:46 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 11 Oct 2023 06:54:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615219.956498 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqT71-0007Hs-7F; Wed, 11 Oct 2023 06:54:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615219.956498; Wed, 11 Oct 2023 06:54: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 1qqT71-0007Hl-4d; Wed, 11 Oct 2023 06:54:31 +0000
Received: by outflank-mailman (input) for mailman id 615219;
 Wed, 11 Oct 2023 06:54: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=BiMa=FZ=amd.com=Michal.Orzel@srs-se1.protection.inumbo.net>)
 id 1qqT6z-0007Hd-Ta
 for xen-devel@lists.xenproject.org; Wed, 11 Oct 2023 06:54:30 +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 04091429-6803-11ee-9b0d-b553b5be7939;
 Wed, 11 Oct 2023 08:54:25 +0200 (CEST)
Received: from SJ0PR03CA0255.namprd03.prod.outlook.com (2603:10b6:a03:3a0::20)
 by CY5PR12MB6550.namprd12.prod.outlook.com (2603:10b6:930:42::6) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.37; Wed, 11 Oct
 2023 06:54:22 +0000
Received: from CO1PEPF000044F2.namprd05.prod.outlook.com
 (2603:10b6:a03:3a0:cafe::a6) by SJ0PR03CA0255.outlook.office365.com
 (2603:10b6:a03:3a0::20) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.41 via Frontend
 Transport; Wed, 11 Oct 2023 06:54:22 +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.6838.22 via Frontend Transport; Wed, 11 Oct 2023 06:54:21 +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, 11 Oct
 2023 01:54:20 -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, 11 Oct
 2023 01:54: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; Wed, 11 Oct 2023 01:54: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: 04091429-6803-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Jz2hobgeXMtJhgpIaKO2JVLxwV9aDcCEnjZnb2QyGUkp1QqxuqyKH+7dv925kgs7/37QAhrRJ6ySZH4D4picUMENrKs3GPmg98Z7Bb/z7b3WtCk2YV+MLy63vJsE/07sQsMMXwlpu942U3EimYIq0KqFITQEKvoI+jb4ZXJNbEramHvAWwNnnF+iwywA8kaEGCAuT/3gt+izXhrqzX84/1ocPuypOrD7ig/wT7ldKQ4mZ+IaEWYmsjyeVpTrQo0/tbd48ctjr7u16mh+yk3YxQ4cuYsgZpw+dWdHMXL4nXVS8zmDJSYHWHFuP94Q4c2OztRvf3iaj7BuulLFHygOcg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=pP0Hy1gwjMcPU/hEs2ED01hHsHpiu72y//2bD4YicHI=;
 b=gLXAoBAGcxMOGlCsDeDs6Rkg1FgBhbiSq/UqRyYAyeRfHGQQAPgkj3JzYxLb/sAkwuG6jsi16Dy/itX4dPFDlhrLgOyKyroZpEJCuHeza5U9dTaaXs1SKRlTL+IW2JvK1Sh6HM2WJqHFmoWyhVRSMDQPd93tahD1LOHGHeTiQIEzX+GNHoZTFhMyNzggaZTPQjjN/SRVkixzmRjs2bnB+PlKITDXWLamN2KEsKqJxT+Wmvb4eYI+q4skPSTIOp/Rps2SgYoRLhRL2VYqKZgBxLOpiQWWtPWVQ83br/w69X+ffYP5hyKmAi/bm/kS7xf936thtKmV3V0vyk6NCyq5Jg==
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=pP0Hy1gwjMcPU/hEs2ED01hHsHpiu72y//2bD4YicHI=;
 b=nJcpd1FXmesmSZ2q9jw7oSq2bjyJpbJ58dc8RoKZQ/33uG88eY83vsn6w9J69VPI9QKbP6wP1JK9hcwbLI0rvsP+yUDDRkjQqyGSpNV0X0a4QBGFLgrhvyn1IT6NLOQiX6PBgfYZB3PX7iERbopR9+z5lM1QSHrSeDXhAopDFpI=
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: <75bb3d92-af1c-4165-8ebd-1c17590361cb@amd.com>
Date: Wed, 11 Oct 2023 08:54:13 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH] xen/arm: Validate generic timer frequency
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>,
	Henry Wang <Henry.Wang@arm.com>
References: <20230928123435.2802-1-michal.orzel@amd.com>
 <d406c4c6-07f7-442f-8bef-8ba42308ae93@xen.org>
 <4894d46e-97ab-434f-b637-d516db6564ea@xen.org>
Content-Language: en-US
From: Michal Orzel <michal.orzel@amd.com>
In-Reply-To: <4894d46e-97ab-434f-b637-d516db6564ea@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 7bit
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: CO1PEPF000044F2:EE_|CY5PR12MB6550:EE_
X-MS-Office365-Filtering-Correlation-Id: 9fa4f18c-0973-4076-63b5-08dbca26e5b7
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	vOKQ0CK47o2DODqAjf4jHrAhypNYqMipoD9owPnDyD3pik5cGlNN3t9wEEb4jGMgyYGdVhW9vvIp+17h6Obx99HamH9LZouz2LByK6U47q/XOouZdGq8VFDVYvpGkD4M+Il/S3D4iRuXlwQsUshHia71l4GLo6Wki1wVywHHDsawAjOdV0Qx3usPjwY4fqGgF53G9odYCFZZs1+uYsLXVqWkvTXcsfXSNcHgP5oKRgRQY2T9+pMqoeK6riCH5xajxdngPC4C7m7MnDqg9iYTsgIiH8bMNHYTpoTdTHvwMFr9EJXhx6V4ASoSlNhdMn4sBHAoEuXqIifaIB37nmsusv80qVMlxygH2XGWuDV39tMjwuuAEhwEJX4V6b4GIQMr1P2vpO4/gCxaJYQrV+vN6Id6F2hE5MA+zzmZpKLgPz5E+G8ybiSAstejCclH2Y8J8f5F94MWpiRA7enwE853j0r7vl6bzXFVdlYf75I1k+t/1lkuA8fVQkQcttp+NhX0DsQ2Tpaskx3Mf1SW63zXY28ACPryh1HmKjJNSiF3Yqm6Oby0tFlydluwd9/5dlI9+jlwyNXFbN4h+fxoEeU1WoEUCadt0ayzamrTqIQKYDWDJ4rTO+MCqwii3RgWdBDPGE91Eg63iF6LWjUMQOSPokpzzI2SV72PRfn2ZpYamHrzmPbClXMDdDQmMP3ehzu8zXOWcKGixVjC7Hz7XG0LFhRLgGYRUsZuAO9zHmTWXJ2TObn2vmvvsiuxljgtf9uU2pUtu44b+Ps/n4sGpJkTsE9frOgLb+239MeIuAfWyMONnOFvhnh3pO2EpajOsO6uG3W4SfhEvSIxO3EVj3AtlQ==
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)(396003)(376002)(230922051799003)(451199024)(82310400011)(186009)(1800799009)(64100799003)(36840700001)(46966006)(40470700004)(82740400003)(53546011)(2616005)(426003)(478600001)(15650500001)(336012)(31696002)(47076005)(2906002)(70206006)(8676002)(16576012)(5660300002)(110136005)(70586007)(54906003)(4326008)(8936002)(83380400001)(26005)(40460700003)(36860700001)(44832011)(356005)(36756003)(86362001)(40480700001)(316002)(81166007)(41300700001)(6666004)(31686004)(41533002)(36900700001)(43740500002);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 Oct 2023 06:54:21.3219
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 9fa4f18c-0973-4076-63b5-08dbca26e5b7
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: CY5PR12MB6550

Hi Julien, Henry,

On 10/10/2023 16:48, Julien Grall wrote:
> 
> 
> (+ Henry)
> 
> Hi Michal,
> 
> On 29/09/2023 08:38, Julien Grall wrote:
>> 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>
> 
> Going through the list of pending patches, I noticed Henry wasn't CCed.
> Is this patch intended for Xen 4.18? If so, can you provide some
> reasoning why would want it?
Strictly speaking, lack of "for-4.18" prefix indicates that I did not particularly aim for 4.18.
However, I find it useful, so I will leave it up to Henry to decide if we want that or not.

Benefits:
- fixes the invalid logic the consequence of which might result in inconsistency when booting
  the same OS as libxl domU and dom0less domU.
- prevents spreading out the error condition (i.e. rate < 1KHZ) that can lead to e.g. Xen inability to schedule,
  by panicing with proper msg
Risks:
- early init code, no critical path, in case of an error, panic returned with proper msg - no risks AFAICT

~Michal


From xen-devel-bounces@lists.xenproject.org Wed Oct 11 07:01:49 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 11 Oct 2023 07:01:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615225.956509 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqTE1-0000TH-WC; Wed, 11 Oct 2023 07:01:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615225.956509; Wed, 11 Oct 2023 07: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 1qqTE1-0000TA-SH; Wed, 11 Oct 2023 07:01:45 +0000
Received: by outflank-mailman (input) for mailman id 615225;
 Wed, 11 Oct 2023 07:01: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=xRUZ=FZ=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qqTE0-0000Si-By
 for xen-devel@lists.xenproject.org; Wed, 11 Oct 2023 07:01:44 +0000
Received: from EUR02-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur02on2062b.outbound.protection.outlook.com
 [2a01:111:f400:fe16::62b])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 07372e31-6804-11ee-9b0d-b553b5be7939;
 Wed, 11 Oct 2023 09:01:40 +0200 (CEST)
Received: from AS9PR06CA0206.eurprd06.prod.outlook.com (2603:10a6:20b:45d::26)
 by AS8PR08MB6038.eurprd08.prod.outlook.com (2603:10a6:20b:23f::24)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.38; Wed, 11 Oct
 2023 07:01:33 +0000
Received: from AM7EUR03FT039.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:20b:45d:cafe::be) by AS9PR06CA0206.outlook.office365.com
 (2603:10a6:20b:45d::26) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.43 via Frontend
 Transport; Wed, 11 Oct 2023 07:01:33 +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.6886.23 via Frontend Transport; Wed, 11 Oct 2023 07:01:32 +0000
Received: ("Tessian outbound fdf44c93bd44:v211");
 Wed, 11 Oct 2023 07:01:32 +0000
Received: from 8e53e0ba0238.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 CD784555-1BDF-432B-862D-5C22333DBDA6.1; 
 Wed, 11 Oct 2023 07:01:22 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 8e53e0ba0238.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Wed, 11 Oct 2023 07:01:22 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by GV2PR08MB9373.eurprd08.prod.outlook.com (2603:10a6:150:da::18)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.41; Wed, 11 Oct
 2023 07:01:17 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41%4]) with mapi id 15.20.6863.032; Wed, 11 Oct 2023
 07:01: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: 07372e31-6804-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=oI6z/DQ74miAYgZbmUPP2txDtsLvkbLOyNxeY7Ig74Y=;
 b=zhWDdnU/nmQiULQVDBFSYmp4hWHG9a0mg4kUEzZd61YNLUNM1qT31onbhsb6p0ATp1qN2+rGGIg1I5GxaP311hYNqRj7OZWosJoXwt+f0QQiw07jJsyiJwWEDrwGTgQdh0qYGmc1VqKSHiTHziD8FJUnQ0udcZCtdQdyTKqbqBY=
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: 134e2a28b93e2444
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ajW1aVEvXUKz/EBR8wSbEgLU3CMwFTidLrt6oMUPFqxwDQPbOoJ/2carsRODR9NtyKt6s3r1LA/aGbe8G+nZUJ5tUQ57GqP/Hx4oF8lfaBbCgd7ct61Du5xUtZhgHAv/VcydFAtOGBT0aeFQTDnpBOzfFQIVBJIooAyBwqMIVa5E0E2C6hpfyaeAcMwrKjgofHA29zWyuRiygquxsurwcisq6MU2zwFQoLLu0cILGkGnF7zNtjo1rLYD4fJjNqPzWrUKiQyZZVSv7bcfidcnEs0c9ENmFZndKdIE41QrtADXoKN6P6lKUpBNvdK812+2WaY1JHtZiiFR9gekoU8AiA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=oI6z/DQ74miAYgZbmUPP2txDtsLvkbLOyNxeY7Ig74Y=;
 b=J0ENC40NsQyiouTahGn8nJvQGDhZcRrCbVAzAYv+WFm7FSBkGyBHtffR4uSw4P09QgUnOti2Cc6W2k3orP9d4qwdSI68lmj5wfrlT4E/Q2hdnL7/hGjvnQiOz98ee9SfmynRnKq8Mn7RHqRQLDv/qvotG2C4wrEW85uO2e8D0tbkKrG0fVvpUqw80Yez2d7F6f09k/Ft4/IvnhY6hqjLifM/AZpwXJOJTze0eULP2HGlxJpwoupp6kiCFKg3/HxtDF7skvLuQcgN6WPiEL0Ziz6jbLcpH9dohpZex6rivNwRt+oZgSJWOLD6sNNqZm5iscuUmLwukfAhnOSydrrcfA==
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=oI6z/DQ74miAYgZbmUPP2txDtsLvkbLOyNxeY7Ig74Y=;
 b=zhWDdnU/nmQiULQVDBFSYmp4hWHG9a0mg4kUEzZd61YNLUNM1qT31onbhsb6p0ATp1qN2+rGGIg1I5GxaP311hYNqRj7OZWosJoXwt+f0QQiw07jJsyiJwWEDrwGTgQdh0qYGmc1VqKSHiTHziD8FJUnQ0udcZCtdQdyTKqbqBY=
From: Henry Wang <Henry.Wang@arm.com>
To: Michal Orzel <michal.orzel@amd.com>, Julien Grall <julien@xen.org>
CC: Xen-devel <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: Validate generic timer frequency
Thread-Topic: [PATCH] xen/arm: Validate generic timer frequency
Thread-Index: AQHZ8ghhUxpPHXka0EK/1dVmmxa3crAxa7iAgBHBwACAAQ3zgIAAAegA
Date: Wed, 11 Oct 2023 07:01:17 +0000
Message-ID: <B95911BA-5965-4100-A1FD-0E687424020B@arm.com>
References: <20230928123435.2802-1-michal.orzel@amd.com>
 <d406c4c6-07f7-442f-8bef-8ba42308ae93@xen.org>
 <4894d46e-97ab-434f-b637-d516db6564ea@xen.org>
 <75bb3d92-af1c-4165-8ebd-1c17590361cb@amd.com>
In-Reply-To: <75bb3d92-af1c-4165-8ebd-1c17590361cb@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_|GV2PR08MB9373:EE_|AM7EUR03FT039:EE_|AS8PR08MB6038:EE_
X-MS-Office365-Filtering-Correlation-Id: a55ad966-e4ca-455e-37be-08dbca27e6e7
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:
 teehDHAYbg3jzRU3bKsYL6UDjLUowshPQ7O5ZTAPgSkRfdNFdz4qJ7vumpbU2vr76MBcEZMSrTsOKPm8Go1zENX4iSojDBSErUAnCTniQ+sh0mZeoofjx84NH/OYIFt4Z18yKYcjx/tkzU9orRL37cYhbZrzSB/ElMe56D+hsMJo6m4I4Y3iE2N6bhueV8ubL+G+Bj1ZEIf8XVr3Gl2JNoCd0huGH9EDg4Zxj8XeksBWTYaNOyKRWOHsXhvWARK+j5lrE6ca8JAGWbwirs7Vpx8UCJTvNda12JwzWJ7EnfxyeMQUdAzlNm7bLo7CnG6Xn1LQF+utL6NT82AV2qKKWCHAz8+SoJ9ivgTlV/g2bAmzf3P5/Xn/vqrUORzTnLNvGmUKpD+qVLoJzK3U8t6GcF/cBNKoiRHpDtTyEpqDU7UcMMkroD6xBRxkbQCA5da/gZeMWqLinhslX4ocxxCFSaoYtAwU8FF/2tUqEu30koSJWzKrV1KZZ6zq1mwUjtdbdN+qlfpO5wt/ikFVQaKMH2YqA9Fxk2PlMKgYGgkxeLZpWguwD3XSB08oIM3yzdOT7vMw23bsUNqebuF0VZbBRjmOCiIHZEmKVGhJUMurAyqS304wfcW1jRh0XENx2Wacy7jT6V+s5m4XRXmYrReIuS01R86YWYXMcfXBffegNk0=
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)(396003)(376002)(39860400002)(366004)(230922051799003)(64100799003)(186009)(1800799009)(451199024)(53546011)(6512007)(36756003)(33656002)(122000001)(86362001)(38070700005)(38100700002)(2906002)(83380400001)(15650500001)(26005)(6486002)(71200400001)(2616005)(6506007)(478600001)(8936002)(4326008)(8676002)(316002)(66476007)(76116006)(110136005)(66556008)(91956017)(66946007)(64756008)(54906003)(66446008)(41300700001)(5660300002)(41533002)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="us-ascii"
Content-ID: <2EBD0F2585218C4380E6255E5764476C@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV2PR08MB9373
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:
	ae7b2054-6b2f-4f94-f15f-08dbca27dd6e
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	Og0onDXgC7CgUzVRTttdOwQdBR4SluQJAruGK766W4cBEY3ElxGEFWcz+RMsWJw8p/bVkClKQfKmqeFZDrU6mB/pazoXnNJR7Lq+7aAi1ybMwJk9ITuAisIvjTRxCI26cldOJg90hMLxnf7uBVW/SUrL8xJj27PWBzSDiZ2nqUHo3E7imyDaSNcg8UBDf69mIlq61UorzDIBkl6S8SyT+Xlm0WVE4XM6AxrIA/Ol5K/6jLq/A+MmBw1YfA2zWsWuE7RYXRFFBuvoNudPadoRVkMIR/8/DOX58RTNcMPDMBBFpelK8Peke0CVVmDuI0vd6Sh/b6M8EKPIkkQA2VEjHjrXkV+r56zOKp0fY+zczwNQvPP9YcgvWFxRlVTM8CzqulGcgcoY35xn/N0zu/SBnRQ/eHct43wnyvY/hy6Ag3ey1thK24ik5VFmVV577rUfEDctAwtGogRw/oYWDGmrVUPpAx/XXHr/Ydz6J6KkZ3pJW67p6CBTqTO2rA90kYCB+V2M0DEYrtCOhWj6CeCyG3m7hg0OAXKxBds41BFci2Q3jlqSQNOs6x5sJCZLhznKc0CVEptWYLp9Ya0sUwlqfHS9lTUlYYTvC+h+dKNJuB7ax5H9mP4ihBLSwuzd+Sej39UcuYD5FJ6YJDZWjUki1ejsaClCkZ90uSbMnd5STDbX3+avletAFHe0c+A8PB3VTp9d6VxpOR9e7YX3hsiQAbl5/DdYvAaz8MZzmSRhd3zmHAKmLepGqWqy0rdxFQkfz1P/5oyLr+YFlXVULPu/Eg==
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)(346002)(376002)(230922051799003)(82310400011)(64100799003)(186009)(451199024)(1800799009)(46966006)(40470700004)(36840700001)(6512007)(26005)(336012)(6506007)(53546011)(107886003)(83380400001)(2616005)(47076005)(6486002)(478600001)(40480700001)(8936002)(8676002)(36756003)(5660300002)(4326008)(41300700001)(81166007)(356005)(82740400003)(86362001)(2906002)(36860700001)(33656002)(15650500001)(54906003)(40460700003)(110136005)(70586007)(316002)(70206006)(41533002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 Oct 2023 07:01:32.9036
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: a55ad966-e4ca-455e-37be-08dbca27e6e7
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: AS8PR08MB6038

Hi Michal, Julien,

> On Oct 11, 2023, at 14:54, Michal Orzel <michal.orzel@amd.com> wrote:
>=20
> Hi Julien, Henry,
>=20
> On 10/10/2023 16:48, Julien Grall wrote:
>>=20
>>=20
>> (+ Henry)
>>=20
>> Hi Michal,
>>=20
>> On 29/09/2023 08:38, Julien Grall wrote:
>>> Hi Michal,
>>>=20
>>> On 28/09/2023 13:34, Michal Orzel wrote:
>>>> Generic timer dt node property "clock-frequency" (refer Linux dt bindi=
ng
>>>> Documentation/devicetree/bindings/timer/arm,arch_timer.yaml) is used t=
o
>>>> override the incorrect value set by firmware in CNTFRQ_EL0. If the val=
ue
>>>> of this property is 0 (i.e. by mistake), Xen would continue to work an=
d
>>>> 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" propert=
y,
>>>>  - dom0less domUs: "clock-frequency" property is taken from dt_host an=
d
>>>>    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 pani=
c
>>>> to let user know about incorrect setting. Going even further, we opera=
te
>>>> under assumption that the frequency must be at least 1KHz (i.e. cpu_kh=
z
>>>> not 0) in order for Xen to boot. Therefore, introduce a new helper
>>>> validate_timer_frequency() to verify this assumption and use it to che=
ck
>>>> the frequency obtained either from dt property or from sysreg.
>>>>=20
>>>> Signed-off-by: Michal Orzel <michal.orzel@amd.com>
>>>=20
>>> Acked-by: Julien Grall <jgrall@amazon.com>
>>=20
>> Going through the list of pending patches, I noticed Henry wasn't CCed.
>> Is this patch intended for Xen 4.18? If so, can you provide some
>> reasoning why would want it?
> Strictly speaking, lack of "for-4.18" prefix indicates that I did not par=
ticularly aim for 4.18.
> However, I find it useful, so I will leave it up to Henry to decide if we=
 want that or not.
>=20
> Benefits:
> - fixes the invalid logic the consequence of which might result in incons=
istency when booting
>  the same OS as libxl domU and dom0less domU.
> - prevents spreading out the error condition (i.e. rate < 1KHZ) that can =
lead to e.g. Xen inability to schedule,
>  by panicing with proper msg
> Risks:
> - early init code, no critical path, in case of an error, panic returned =
with proper msg - no risks AFAICT

Thanks for the explanation, this looks like an improvement for the
current code to me so I am fine with including it in 4.18=20

Release-acked-by: Henry Wang <Henry.Wang@arm.com>

Kind regards,
Henry

>=20
> ~Michal



From xen-devel-bounces@lists.xenproject.org Wed Oct 11 07:08:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 11 Oct 2023 07:08:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615232.956519 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqTKn-0001bT-Pe; Wed, 11 Oct 2023 07:08:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615232.956519; Wed, 11 Oct 2023 07:08: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 1qqTKn-0001bM-M8; Wed, 11 Oct 2023 07:08:45 +0000
Received: by outflank-mailman (input) for mailman id 615232;
 Wed, 11 Oct 2023 07:08: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 1qqTKm-0001aw-Qt; Wed, 11 Oct 2023 07:08: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 1qqTKm-0002j5-Ne; Wed, 11 Oct 2023 07:08: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 1qqTKm-0004dK-7M; Wed, 11 Oct 2023 07:08:44 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qqTKm-0001tI-6r; Wed, 11 Oct 2023 07: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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=yACvoybEooIoe9Knzy0LETJdUtunrQcQcE4UnsGvy6s=; b=VYHU6QiGBzYZhp8wtmX6d0f6EV
	JFMdG0agdQDlX+7xsK++Qct2IR58+Sa252jwy+DkmqqDUWbw+acdbicmbinlSkjUaj1X7jjBt29uV
	eZoVo0QV1Me5KV1KHDZK61u2Iv+BrIp/BUcKMnZ3JZB6N/Oc1GFC5S2yIILfJ8QR/7AQ=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183339-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 183339: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=95c9f470ca6eab23bfd016bd438f932d7263d395
X-Osstest-Versions-That:
    ovmf=137f799aaed91e592700e0488067292495b7ea7e
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 11 Oct 2023 07:08:44 +0000

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

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 95c9f470ca6eab23bfd016bd438f932d7263d395
baseline version:
 ovmf                 137f799aaed91e592700e0488067292495b7ea7e

Last test of basis   183326  2023-10-09 08:42:21 Z    1 days
Testing same since   183339  2023-10-11 05:10:50 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Abner Chang <abner.chang@amd.com>
  Nhi Pham <nhi@os.amperecomputing.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
   137f799aae..95c9f470ca  95c9f470ca6eab23bfd016bd438f932d7263d395 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Wed Oct 11 07:34:12 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 11 Oct 2023 07:34:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615239.956528 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqTjG-0005rO-K5; Wed, 11 Oct 2023 07:34:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615239.956528; Wed, 11 Oct 2023 07:34: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 1qqTjG-0005rG-Hb; Wed, 11 Oct 2023 07:34:02 +0000
Received: by outflank-mailman (input) for mailman id 615239;
 Wed, 11 Oct 2023 07:34: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=uJaT=FZ=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qqTjE-0005qq-QQ
 for xen-devel@lists.xenproject.org; Wed, 11 Oct 2023 07:34:00 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 8a2aca85-6808-11ee-98d4-6d05b1d4d9a1;
 Wed, 11 Oct 2023 09:33:59 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id CCCC54EE0743;
 Wed, 11 Oct 2023 09:33: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: 8a2aca85-6808-11ee-98d4-6d05b1d4d9a1
MIME-Version: 1.0
Date: Wed, 11 Oct 2023 09:33:57 +0200
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: Stefano Stabellini <sstabellini@kernel.org>
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>, Wei Liu
 <wl@xen.org>, Bertrand Marquis <bertrand.marquis@arm.com>,
 consulting@bugseng.com, roger.pau@citrix.com, dfaggioli@suse.com
Subject: Re: Rule 10.1 violations in perfc_incra and PERFCOUNTER_ARRAY
In-Reply-To: <alpine.DEB.2.22.394.2310101515070.3431292@ubuntu-linux-20-04-desktop>
References: <5cfaaaceb163af3244981b020ed55f3f@bugseng.com>
 <alpine.DEB.2.22.394.2310091838510.3431292@ubuntu-linux-20-04-desktop>
 <771624f5199fe76ce266a00d0c649428@bugseng.com>
 <alpine.DEB.2.22.394.2310101515070.3431292@ubuntu-linux-20-04-desktop>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <6a909c948a7faa3fe1ec2069e5dc649d@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


>> > > 3. use an unnamed enum, effectively considering the enumerated values as
>> > > plain
>> > > integers.
>> > >    This does not violate the Rule.
>> >
>> > What do you mean by unname enum?
>> 
>> e.g.
>> 
>> enum {
>> #include <xen/perfc_defn.h>
>> 	NUM_PERFCOUNTERS
>> };
>> 
>> instead of
>> 
>> enum perfcounter {
>> #include <xen/perfc_defn.h>
>> 	NUM_PERFCOUNTERS
>> };
> 
> 
> I think this should be easy to do in this case. I gave it a quick try
> and it seems to still build successfully. It could be the best way
> forward for this instance.
> 
> 
> However in general I am confused why unnamed enum can do comparisons
> between members and named enums cannot. What is the reason? In any 
> case,
> I think we should clarify this detail in the notes section of
> docs/misra/rules.rst, because I don't think it was clear to anyone that
> there is a difference in behavior between named and unnamed enums.

MISRA regards unnamed enums as nothing more than bags of constants that 
may or may not
be related. Such enumeration constants always have a signed essential 
type and also the
anonymous enum type cannot be used, for instance, in the definition of 
new types, as
opposed to a named "enum x {}" that introduces an essential type 
"enum<x>".
I'll send a patch and document the difference.

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


From xen-devel-bounces@lists.xenproject.org Wed Oct 11 07:47:39 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 11 Oct 2023 07:47:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615244.956538 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqTwI-00088m-QU; Wed, 11 Oct 2023 07:47:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615244.956538; Wed, 11 Oct 2023 07:47: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 1qqTwI-00088f-Ni; Wed, 11 Oct 2023 07:47:30 +0000
Received: by outflank-mailman (input) for mailman id 615244;
 Wed, 11 Oct 2023 07:47: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=uJaT=FZ=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qqTwH-00088G-OL
 for xen-devel@lists.xenproject.org; Wed, 11 Oct 2023 07:47:29 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 6d38a07b-680a-11ee-98d4-6d05b1d4d9a1;
 Wed, 11 Oct 2023 09:47:28 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id 4D5204EE0743;
 Wed, 11 Oct 2023 09:47: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: 6d38a07b-680a-11ee-98d4-6d05b1d4d9a1
MIME-Version: 1.0
Date: Wed, 11 Oct 2023 09:47:28 +0200
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: Xen-devel <xen-devel@lists.xenproject.org>, consulting@bugseng.com,
 Stefano Stabellini <sstabellini@kernel.org>, Jan Beulich
 <jbeulich@suse.com>, Julien Grall <julien@xen.org>, Bertrand Marquis
 <bertrand.marquis@arm.com>, roger.pau@citrix.com, George Dunlap
 <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>
Subject: Re: MISRA C:2012 D4.11 caution on staging
In-Reply-To: <61f04d4b-34d9-4fd1-a989-56b042b4f3d8@citrix.com>
References: <7972c20f361126022fa97f6b51ca2d9c@bugseng.com>
 <61f04d4b-34d9-4fd1-a989-56b042b4f3d8@citrix.com>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <baa73fa24385b39bc6e82c4ccb08bd13@bugseng.com>
X-Sender: nicola.vetrini@bugseng.com
Organization: BUGSENG s.r.l.
Content-Type: text/plain; charset=UTF-8;
 format=flowed
Content-Transfer-Encoding: 8bit

On 11/10/2023 02:15, Andrew Cooper wrote:
> On 10/10/2023 5:31 pm, Nicola Vetrini wrote:
>> Hi,
>> 
>> as you can see from [1], there's a MISRA C guideline, D4.11, that is
>> supposed to be clean
>> (i.e., have no reports), but has a caution on an argument to memcpy
>> (the second argument might be null according to the checker, given a
>> set of assumptions on
>> the control flow). To access the report just click on the second link
>> in the log, which should take you to a webpage with a list of
>> MISRA guidelines. Click on D4.11 and you'll see the full report, which
>> I pasted below for convenience.
>> 
>> If the finding is genuine, then some countermeasure needs to be taken
>> against this
>> possible bug, otherwise it needs to be motivated why the field
>> config->handle can't
>> be null at that point.
>> The finding is likely the result of an improvement made to the
>> checker, because the first
>> analysis I can see that spots it happened when rc1 has been tagged,
>> but that commit does not
>> touch the involved files.
>> 
>> [1] https://gitlab.com/xen-project/xen/-/jobs/5251222578
> 
> That's a false positive, but I'm not entirely surprised that the 
> checker
> struggled to see it.
> 
> First,
> 
> ASSERT(is_system_domain(d) ? config == NULL : config != NULL);
> 
> All system domains (domid >= 0x7ff0, inc IDLE) pass a NULL config.  All
> other domains pass a real config.
> 
> Next,
> 
> /* DOMID_{XEN,IO,etc} (other than IDLE) are sufficiently constructed. 
> */
> if ( is_system_domain(d) && !is_idle_domain(d) )
>     return d;
> 
> So at this point we only have the IDLE domain and real domains.
> 
> And finally, the complained-about construct is inside an:
> 
> if ( !is_idle_domain(d) )
>     ...
> 
> hence config cannot be NULL, but only because of the way in which
> is_{system,idle}_domain() interact.
> 
> ~Andrew

Ok. I think this should be documented as a false positive using the 
comment deviation mechanism
in the false-positive-eclair.json file (once a name for the prefix is 
settled on in the
other thread).

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


From xen-devel-bounces@lists.xenproject.org Wed Oct 11 07:51:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 11 Oct 2023 07:51:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615249.956548 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqU0U-0001C8-Au; Wed, 11 Oct 2023 07:51:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615249.956548; Wed, 11 Oct 2023 07:51: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 1qqU0U-0001C1-8B; Wed, 11 Oct 2023 07:51:50 +0000
Received: by outflank-mailman (input) for mailman id 615249;
 Wed, 11 Oct 2023 07:51: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=kH0+=FZ=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qqU0T-0001Bv-Bc
 for xen-devel@lists.xenproject.org; Wed, 11 Oct 2023 07:51:49 +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 068f79c0-680b-11ee-9b0d-b553b5be7939;
 Wed, 11 Oct 2023 09:51:46 +0200 (CEST)
Received: by mail-lj1-x230.google.com with SMTP id
 38308e7fff4ca-2c3ca6ff5a7so54333891fa.1
 for <xen-devel@lists.xenproject.org>; Wed, 11 Oct 2023 00:51:46 -0700 (PDT)
Received: from [10.157.20.243] ([103.14.252.248])
 by smtp.gmail.com with ESMTPSA id
 13-20020a170902c20d00b001b53c8659fesm13171152pll.30.2023.10.11.00.51.41
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 11 Oct 2023 00:51: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: 068f79c0-680b-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1697010706; x=1697615506; darn=lists.xenproject.org;
        h=content-transfer-encoding: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=u8M59+lXWDoLSiDR4wX/k7oPGYY6EZCNI6M7ttWjpzU=;
        b=hmjTdXQ8BOAoNOcvYbbSEL04x1Si8eQNfEFJqyMbIjCvuRdUw4Yp7/TTBHbUF7tBBB
         g3xDH536lpjsqoM65kMwuAvbyt94qRJ4IbFjihqp2Wt/BmTxcnPz2apOd3AYBTDRksEP
         +tFTAGMmIglKok5/2LvqZ9zKRDdLgGwRbQe0o=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697010706; x=1697615506;
        h=content-transfer-encoding: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=u8M59+lXWDoLSiDR4wX/k7oPGYY6EZCNI6M7ttWjpzU=;
        b=wiuZjv5/0ZyTk+wu3RfD9TrKYOOtWbwOeCBoaiXsDthoOMJHE36RC9zWCTSl8Y/JV5
         awrUmxfEEk0bTkodRdKrjs1LSYdWJfBEcmxpe26FMwdY0Njqy4ERnapUjNjozwJzNCGL
         li5zDIQWzTdx31j4iY6mUTo5/5rFd1o9AhN3dkl3yWk589DgWWR2Ca79vgJCdGURNVmx
         K/mBfPxC9OXMhNeXGbYgPIyo/mT+k06+J3BrYyIZdsf0chSQUT/gfJv4xFqhDmNzgOMt
         jry0BtKqWuzqv0oRWE7h1CAgmOJ7OPhKBVvSQko2D+0hHYlWDgqddpnytj0zB31gQuiR
         illQ==
X-Gm-Message-State: AOJu0YwIfxGavR2+eNsiSZiaUlTFGOBxT6efojF3kHgf2d4d1auwtKIs
	KSpArkytuqZQIhhCBaIvXwbOBA==
X-Google-Smtp-Source: AGHT+IGeQhp4cH3Wr0N0ONe7MgYrIFntm8IPn/ZH/p1+jSoGNUVPJpegNqPXsNSSScFB/6RdJzNeVQ==
X-Received: by 2002:a2e:b0e9:0:b0:2bc:be3c:9080 with SMTP id h9-20020a2eb0e9000000b002bcbe3c9080mr17955579ljl.27.1697010705683;
        Wed, 11 Oct 2023 00:51:45 -0700 (PDT)
Message-ID: <26f09702-9340-41ae-afcc-808becb67876@citrix.com>
Date: Wed, 11 Oct 2023 15:51:39 +0800
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: MISRA C:2012 D4.11 caution on staging
Content-Language: en-GB
To: Nicola Vetrini <nicola.vetrini@bugseng.com>
Cc: Xen-devel <xen-devel@lists.xenproject.org>, consulting@bugseng.com,
 Stefano Stabellini <sstabellini@kernel.org>, Jan Beulich
 <jbeulich@suse.com>, Julien Grall <julien@xen.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>, roger.pau@citrix.com,
 George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>
References: <7972c20f361126022fa97f6b51ca2d9c@bugseng.com>
 <61f04d4b-34d9-4fd1-a989-56b042b4f3d8@citrix.com>
 <baa73fa24385b39bc6e82c4ccb08bd13@bugseng.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: <baa73fa24385b39bc6e82c4ccb08bd13@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 11/10/2023 3:47 pm, Nicola Vetrini wrote:
> On 11/10/2023 02:15, Andrew Cooper wrote:
>> On 10/10/2023 5:31 pm, Nicola Vetrini wrote:
>>> Hi,
>>>
>>> as you can see from [1], there's a MISRA C guideline, D4.11, that is
>>> supposed to be clean
>>> (i.e., have no reports), but has a caution on an argument to memcpy
>>> (the second argument might be null according to the checker, given a
>>> set of assumptions on
>>> the control flow). To access the report just click on the second link
>>> in the log, which should take you to a webpage with a list of
>>> MISRA guidelines. Click on D4.11 and you'll see the full report, which
>>> I pasted below for convenience.
>>>
>>> If the finding is genuine, then some countermeasure needs to be taken
>>> against this
>>> possible bug, otherwise it needs to be motivated why the field
>>> config->handle can't
>>> be null at that point.
>>> The finding is likely the result of an improvement made to the
>>> checker, because the first
>>> analysis I can see that spots it happened when rc1 has been tagged,
>>> but that commit does not
>>> touch the involved files.
>>>
>>> [1] https://gitlab.com/xen-project/xen/-/jobs/5251222578
>>
>> That's a false positive, but I'm not entirely surprised that the checker
>> struggled to see it.
>>
>> First,
>>
>> ASSERT(is_system_domain(d) ? config == NULL : config != NULL);
>>
>> All system domains (domid >= 0x7ff0, inc IDLE) pass a NULL config.  All
>> other domains pass a real config.
>>
>> Next,
>>
>> /* DOMID_{XEN,IO,etc} (other than IDLE) are sufficiently constructed. */
>> if ( is_system_domain(d) && !is_idle_domain(d) )
>>     return d;
>>
>> So at this point we only have the IDLE domain and real domains.
>>
>> And finally, the complained-about construct is inside an:
>>
>> if ( !is_idle_domain(d) )
>>     ...
>>
>> hence config cannot be NULL, but only because of the way in which
>> is_{system,idle}_domain() interact.
>>
>> ~Andrew
>
> Ok. I think this should be documented as a false positive using the
> comment deviation mechanism
> in the false-positive-eclair.json file (once a name for the prefix is
> settled on in the
> other thread).
>

Yeah - I was expecting that.

This code is mid-cleanup (in my copious free time, so not for several
releases now...) but even when it is rearranged sufficiently for IDLE to
have an earlier exit, I still wouldn't expect a static analyser to be
able to recognise this as being safe.

~Andrew


From xen-devel-bounces@lists.xenproject.org Wed Oct 11 08:42:34 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 11 Oct 2023 08:42:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615265.956559 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqUnJ-0001AA-Ja; Wed, 11 Oct 2023 08:42:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615265.956559; Wed, 11 Oct 2023 08: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 1qqUnJ-0001A3-GS; Wed, 11 Oct 2023 08:42:17 +0000
Received: by outflank-mailman (input) for mailman id 615265;
 Wed, 11 Oct 2023 08:42: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 1qqUnH-00019t-RP; Wed, 11 Oct 2023 08:42: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 1qqUnH-0005s0-OI; Wed, 11 Oct 2023 08:42: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 1qqUnH-0000EF-BE; Wed, 11 Oct 2023 08:42:15 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qqUnH-0004Dv-Au; Wed, 11 Oct 2023 08:42: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=eioIFn5SolewIbeaYSMywfs9bNqMW0S2aK+68KrdRks=; b=d5M3tCTLgwGQaJDinlybQQYRWX
	Dr2QcZByQGP/6beSuuPPsm+k/SfwwBN9Gos3aEQ6dQmv/ouMxtW6YH7+hd7iLfdPhYTY4xB92lrFU
	MqTZ7BzW4vhCEqNspVBbwSJkzZYikYtxKGpory+kZ44jZWLJI1c24OhxNzIraHUar5dc=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183340-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 183340: 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=dc9d9aa62ddeb14abd5672690d30789829f58f7e
X-Osstest-Versions-That:
    xen=9713423a06225bcf0f22cab15e8d04870200af7a
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 11 Oct 2023 08:42:15 +0000

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

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                  dc9d9aa62ddeb14abd5672690d30789829f58f7e
baseline version:
 xen                  9713423a06225bcf0f22cab15e8d04870200af7a

Last test of basis   183333  2023-10-10 15:02:15 Z    0 days
Testing same since   183340  2023-10-11 06:02:02 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Alejandro Vallejo <alejandro.vallejo@cloud.com>
  Andrew Cooper <andrew.cooper3@citrix.com>
  Jan Beulich <jbeulich@suse.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
   9713423a06..dc9d9aa62d  dc9d9aa62ddeb14abd5672690d30789829f58f7e -> smoke


From xen-devel-bounces@lists.xenproject.org Wed Oct 11 08:59:43 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 11 Oct 2023 08:59:43 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615301.956587 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqV48-0004d2-F0; Wed, 11 Oct 2023 08:59:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615301.956587; Wed, 11 Oct 2023 08:59: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 1qqV48-0004cv-Aw; Wed, 11 Oct 2023 08:59:40 +0000
Received: by outflank-mailman (input) for mailman id 615301;
 Wed, 11 Oct 2023 08:59: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 1qqV47-0004cn-RA
 for xen-devel@lists.xenproject.org; Wed, 11 Oct 2023 08:59: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 1qqV47-0006IY-JK; Wed, 11 Oct 2023 08:59:39 +0000
Received: from [15.248.2.150] (helo=[10.24.67.30])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qqV47-0002gO-DL; Wed, 11 Oct 2023 08:59: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=1LF/b8uqMlKNe8DDG1FV7C52KsBcqNI0GEb07b8uiAQ=; b=VQbk2yT2VoJbXc+aNpuLpbIV3H
	WFtNtCGmoUyi/Sj7h9/ADvngaRXqpIJFRkQ/RrUrCu9KgjnNQ0+4lhvUh7glcynJv3odOe8Zz1q19
	FBNZsO9LCTH5iyvtH/7BLCEr/HD7nGR7GEvGoWng0rja+gmxO2+FmCEkCK6dJyaRY6oM=;
Message-ID: <e42ffdda-5460-4692-abdd-20a61b984829@xen.org>
Date: Wed, 11 Oct 2023 09:59:37 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH] xen/arm: Validate generic timer frequency
Content-Language: en-GB
To: Henry Wang <Henry.Wang@arm.com>, Michal Orzel <michal.orzel@amd.com>
Cc: Xen-devel <xen-devel@lists.xenproject.org>,
 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>
 <d406c4c6-07f7-442f-8bef-8ba42308ae93@xen.org>
 <4894d46e-97ab-434f-b637-d516db6564ea@xen.org>
 <75bb3d92-af1c-4165-8ebd-1c17590361cb@amd.com>
 <B95911BA-5965-4100-A1FD-0E687424020B@arm.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <B95911BA-5965-4100-A1FD-0E687424020B@arm.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit



On 11/10/2023 08:01, Henry Wang wrote:
> Hi Michal, Julien,
> 
>> On Oct 11, 2023, at 14:54, Michal Orzel <michal.orzel@amd.com> wrote:
>>
>> Hi Julien, Henry,
>>
>> On 10/10/2023 16:48, Julien Grall wrote:
>>>
>>>
>>> (+ Henry)
>>>
>>> Hi Michal,
>>>
>>> On 29/09/2023 08:38, Julien Grall wrote:
>>>> 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>
>>>
>>> Going through the list of pending patches, I noticed Henry wasn't CCed.
>>> Is this patch intended for Xen 4.18? If so, can you provide some
>>> reasoning why would want it?
>> Strictly speaking, lack of "for-4.18" prefix indicates that I did not particularly aim for 4.18.

I have seen a mix. Hence why I asked in case this was expected. To avoid 
confusion during the freeze period, I tend to also tag e-mail for the 
next release (e.g. for-next/for-4.19). So the intention is clear.

>> Benefits:
>> - fixes the invalid logic the consequence of which might result in inconsistency when booting
>>   the same OS as libxl domU and dom0less domU.
>> - prevents spreading out the error condition (i.e. rate < 1KHZ) that can lead to e.g. Xen inability to schedule,
>>   by panicing with proper msg
>> Risks:
>> - early init code, no critical path, in case of an error, panic returned with proper msg - no risks AFAICT
> 
> Thanks for the explanation, this looks like an improvement for the
> current code to me so I am fine with including it in 4.18
> 
> Release-acked-by: Henry Wang <Henry.Wang@arm.com>

Thanks. I will commit the patch later today.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Wed Oct 11 09:36:44 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 11 Oct 2023 09:36:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615431.956638 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqVdo-00065k-SR; Wed, 11 Oct 2023 09:36:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615431.956638; Wed, 11 Oct 2023 09:36: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 1qqVdo-00065d-OV; Wed, 11 Oct 2023 09:36:32 +0000
Received: by outflank-mailman (input) for mailman id 615431;
 Wed, 11 Oct 2023 09:36: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 1qqVdo-00065T-DB; Wed, 11 Oct 2023 09:36: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 1qqVdo-0007V1-AL; Wed, 11 Oct 2023 09:36: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 1qqVdo-0003o0-0R; Wed, 11 Oct 2023 09:36:32 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qqVdn-0002qS-V4; Wed, 11 Oct 2023 09: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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=rIwCOA0pJI3AE5S/yng7Fhg3Ot4pIJcENh/0G+CrS2c=; b=XLTfEt/1IRboE4HojYlpCZBE+c
	ETaDwmFCBBwNG+rrKOcAM/7GBe/tLGgILXUDjh6oAkEfoJsLV6xxDfg8/E/qTPQtByIVCgCv3NkrP
	WP7HneLUh2A7qyD3MEwJPrzPQP4hRc+0xkzz5609o+Nq5MrYuIEIozlm+2u/zBPmI5P4=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183334-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 183334: regressions - FAIL
X-Osstest-Failures:
    linux-linus:build-arm64-libvirt:libvirt-build:fail:regression
    linux-linus:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking
    linux-linus:test-armhf-armhf-libvirt-qcow2: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-armhf-armhf-libvirt: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-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-xl: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-xl-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu: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-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-raw:migrate-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-amd64-amd64-libvirt:migrate-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
    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-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:saverestore-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-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=1c8b86a3799f7e5be903c3f49fcdaee29fd385b5
X-Osstest-Versions-That:
    linux=94f6f0550c625fab1f373bb86a6669b45e9748b3
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 11 Oct 2023 09:36:31 +0000

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

Regressions :-(

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

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-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail blocked in 183322
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183322
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183322
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183322
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183322
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183322
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183322
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183322
 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-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-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-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-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-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-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-amd64-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-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-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-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-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                1c8b86a3799f7e5be903c3f49fcdaee29fd385b5
baseline version:
 linux                94f6f0550c625fab1f373bb86a6669b45e9748b3

Last test of basis   183322  2023-10-09 01:11:16 Z    2 days
Testing same since   183334  2023-10-10 19:11:59 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Alex Bee <knaerzche@gmail.com>
  Amadeusz Sławiński <amadeuszx.slawinski@linux.intel.com>
  Antoine Gennart <gennartan@disroot.org>
  Anup Patel <apatel@ventanamicro.com>
  Balamurugan C <balamurugan.c@intel.com>
  Bard Liao <yung-chuan.liao@linux.intel.com>
  Ben Wolsieffer <ben.wolsieffer@hefring.com>
  Biju Das <biju.das.jz@bp.renesas.com>
  Christos Skevis <xristos.thes@gmail.com>
  Claudiu Beznea <claudiu.beznea.uj@bp.renesas.com>
  Conor Dooley <conor.dooley@microchip.com>
  Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
  Fabio Estevam <festevam@denx.de>
  Geert Uytterhoeven <geert+renesas@glider.be>
  Herbert Xu <herbert@gondor.apana.org.au>
  Juergen Gross <jgross@suse.com>
  Kailang Yang <kailang@realtek.com>
  Konrad Dybcio <konrad.dybcio@linaro.org>
  Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
  Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
  Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>
  Linus Torvalds <torvalds@linux-foundation.org>
  Lorenzo Pieralisi <lpieralisi@kernel.org>
  Marc Zyngier <maz@kernel.org>
  Mark Brown <broonie@kernel.org>
  Mathias Krause <minipli@grsecurity.net>
  Matthias Reichl <hias@horus.com>
  Miquel Raynal <miquel.raynal@bootlin.com>
  Neil Armstrong <neil.armstrong@linaro.org>
  Olaf Hering <olaf@aepfle.de>
  Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
  Saurabh Sengar <ssengar@linux.microsoft.com>
  Shengjiu Wang <shengjiu.wang@nxp.com>
  Shradha Gupta <shradhagupta@linux.microsoft.com>
  Stefan Binding <sbinding@opensource.cirrus.com>
  Sumit Garg <sumit.garg@linaro.org>
  Sven Frotscher <sven.frotscher@gmail.com>
  Takashi Iwai <tiwai@suse.de>
  Thomas Gleixner <tglx@linutronix.de>
  Vijendar Mukunda <Vijendar.Mukunda@amd.com>
  Wei Liu <wei.liu@kernel.org>
  WhaleChang <whalechang@google.com>
  Zhang Shurong <zhang_shurong@foxmail.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                                          fail    
 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                                 blocked 
 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                                 blocked 
 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


Not pushing.

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


From xen-devel-bounces@lists.xenproject.org Wed Oct 11 09:45:49 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 11 Oct 2023 09:45:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615438.956648 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqVmc-0000D5-OW; Wed, 11 Oct 2023 09:45:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615438.956648; Wed, 11 Oct 2023 09:45: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 1qqVmc-0000Cy-L8; Wed, 11 Oct 2023 09:45:38 +0000
Received: by outflank-mailman (input) for mailman id 615438;
 Wed, 11 Oct 2023 09:45: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 1qqVmb-0000Cq-4f
 for xen-devel@lists.xenproject.org; Wed, 11 Oct 2023 09:45: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 1qqVmZ-0007hi-PH; Wed, 11 Oct 2023 09:45:35 +0000
Received: from [15.248.2.150] (helo=[10.24.67.30])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qqVmZ-0004wB-FZ; Wed, 11 Oct 2023 09:45: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=KqkX7hNFU1cPH+MlhfSSscJDa+ihYFBMCxDs64JFw10=; b=HJIxkXdjbvPB+lPlo3emT6gWq2
	CeLb/BZEVX+eex9ByCLdBke4vtZOda0xCb6WKyWIk6ShSP++14pktnrCjr6lz2Gt8BDD9SygFjI3x
	WOJhjvhT06+JYeUBDxUvCIbv3hAwufN6wQvdKZK6WYYbwKty/DCFqvUa0Dh/cz5iucQQ=;
Message-ID: <80f4df2b-a8b2-4494-94e0-47de55c01597@xen.org>
Date: Wed, 11 Oct 2023 10:45:32 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN PATCH] xen: Add SAF deviations for MISRA C:2012 Rule 7.1
Content-Language: en-GB
To: Stefano Stabellini <sstabellini@kernel.org>
Cc: Luca Fancellu <Luca.Fancellu@arm.com>,
 Nicola Vetrini <nicola.vetrini@bugseng.com>,
 Xen-devel <xen-devel@lists.xenproject.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>,
 Jan Beulich <jbeulich@suse.com>, =?UTF-8?Q?Roger_Pau_Monn=C3=A9?=
 <roger.pau@citrix.com>, Henry Wang <Henry.Wang@arm.com>,
 Simone Ballarin <simone.ballarin@bugseng.com>,
 Doug Goldstein <cardoe@cardoe.com>, George Dunlap
 <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>,
 Andrew Cooper <andrew.cooper3@citrix.com>
References: <338d8e574db943a86c7605e4c6d9a299d45f067d.1696347345.git.nicola.vetrini@bugseng.com>
 <alpine.DEB.2.22.394.2310031345190.2348112@ubuntu-linux-20-04-desktop>
 <e1736215-52ba-4737-9da3-8f1ba7e832a6@citrix.com>
 <DB96C095-5FAF-40A1-9CA8-002291AA1933@arm.com>
 <2894008e8f612296da84267346ae4240@bugseng.com>
 <B00BC78B-E707-4043-A0B4-D320C6717472@arm.com>
 <alpine.DEB.2.22.394.2310041625170.2348112@ubuntu-linux-20-04-desktop>
 <9DD525D9-DB6D-4888-9266-FB45906A0E0F@arm.com>
 <alpine.DEB.2.22.394.2310051756360.2348112@ubuntu-linux-20-04-desktop>
 <C2DDFAB5-D943-4A24-9C14-AF35BE2A7C90@arm.com>
 <alpine.DEB.2.22.394.2310061741130.3431292@ubuntu-linux-20-04-desktop>
 <1ceb5aa0-d374-4357-964f-1341468d542e@xen.org>
 <alpine.DEB.2.22.394.2310091251080.3431292@ubuntu-linux-20-04-desktop>
 <8c3d7933-c139-49dd-8c62-2d4543176f8f@xen.org>
 <alpine.DEB.2.22.394.2310101635280.3431292@ubuntu-linux-20-04-desktop>
From: Julien Grall <julien@xen.org>
In-Reply-To: <alpine.DEB.2.22.394.2310101635280.3431292@ubuntu-linux-20-04-desktop>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi Stefano,

On 11/10/2023 00:39, Stefano Stabellini wrote:
> On Tue, 10 Oct 2023, Julien Grall wrote:
>> Hi Stefano,
>>
>> On 09/10/2023 23:19, Stefano Stabellini wrote:
>>>>
>>>> I am not sure this is better. This is a long line to read. But this is a
>>>> personal opinion.
>>>>
>>>> On the technical side, can we easily teach a tool to format this kind of
>>>> exception? If not, then this should not be an exception we should
>>>> implement.
>>>
>>> I am not sure I understand what you mean by "can we easily teach a tool
>>> to format this kind of exception". Do you mean whether we can teach a
>>> tool to interpret a multiline statement as a single statement?
>>
>> Sorry for the wording was not clear. I was referring to tools formatting the
>> code (e.g. clang-format). Hopefully, at some point, we will finally have a way
>> to automatically format the code. So we need a coding style that can be easily
>> be checked.
>>
>> It is not clear to me whether your proposed exception would work. We may have
>> to allow longer lines (and this has drawback).
> 
> Yes, that's a good point. It will probably be an issue with clang-format.
> 
> 
>>> /* cppcheck tag */
>>> line1
>>> /* cppcheck tag */
>>> line2
>>> /* cppcheck tag */
>>> line3
>>>
>>> and that would end up changing the line numbers in the source files so
>>> the cppcheck report wouldn't match with the original line numbers any
>>> longer
>>
>> Would cppcheck accepts tag at the end of the line? If so, the following would
>> not modify the line count:
>>
>> /* cppcheck tag */
>> line1 /* added cppcheck tag */
>> line2 /* added cppcheck tag */
>> line3 /* added cppcheck tag */
> 
> Luca answered to a similar, more generic, question a few days ago about
> Coverity: https://marc.info/?l=xen-devel&m=169657904027210

Interesting.

> 
> So even if we get cppcheck to work like that, we would lose Coverity
> support.

I think my suggestion was probably misunderstood. So let me clarify it. 
To cover multi-line, we could write the following in Xen:

/* cppcheck tag next-3-lines */
line 1
line 2
line 3

AFAIU Eclair supports multi-line, so the tag would be transformed to 
there internal solution. For CPPCheck, this could be transformed to:

/* cppcheck tag next-3 lines */
line 1 /* generated cppcheck tag */
line 2 /* generated cppcheck tag */
line 3 /* generated cppcheck tag */

Now, I understand that coverity doesn't support any of the two format. 
So the only solution would be to add the comment before each line which 
would impact the line numbers. This is not great, but I think this is 
acceptable as the context would likely help to find where this is coming 
from.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Wed Oct 11 09:51:23 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 11 Oct 2023 09:51:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615443.956658 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqVs3-0002Av-I0; Wed, 11 Oct 2023 09:51:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615443.956658; Wed, 11 Oct 2023 09:51: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 1qqVs3-0002Ao-EB; Wed, 11 Oct 2023 09:51:15 +0000
Received: by outflank-mailman (input) for mailman id 615443;
 Wed, 11 Oct 2023 09:51: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 1qqVs2-0002Ai-KB
 for xen-devel@lists.xenproject.org; Wed, 11 Oct 2023 09:51: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 1qqVs1-0007pQ-EO; Wed, 11 Oct 2023 09:51:13 +0000
Received: from [15.248.2.150] (helo=[10.24.67.30])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qqVs1-00053H-1X; Wed, 11 Oct 2023 09:51: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:
	References:Cc:To:From:Subject:MIME-Version:Date:Message-ID;
	bh=zLEkR6S863FaWXhkpznKXuo5Cbu5VpUqLynezQ8mLpQ=; b=wDqplFbCqaq5xDSCRdVyx+aKft
	zJbRxNm5dPiyxL+KgJiSPUrenHirmGBtIvNley4yo7MOXdhsBEkTNzlgXFQy4r4v3qPbbg80yqU2E
	xjPYaOnr87dGIN3W9vEeCvLD0GgfDzmSjTqK8bsEfHhFJZnMThaBH4BprTQsT5nm5X98=;
Message-ID: <1766b5f3-490c-4bbe-902c-3970c28041a7@xen.org>
Date: Wed, 11 Oct 2023 10:51:10 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN PATCH] xen: Add SAF deviations for MISRA C:2012 Rule 7.1
Content-Language: en-GB
From: Julien Grall <julien@xen.org>
To: Stefano Stabellini <sstabellini@kernel.org>
Cc: Luca Fancellu <Luca.Fancellu@arm.com>,
 Nicola Vetrini <nicola.vetrini@bugseng.com>,
 Xen-devel <xen-devel@lists.xenproject.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>,
 Jan Beulich <jbeulich@suse.com>, =?UTF-8?Q?Roger_Pau_Monn=C3=A9?=
 <roger.pau@citrix.com>, Henry Wang <Henry.Wang@arm.com>,
 Simone Ballarin <simone.ballarin@bugseng.com>,
 Doug Goldstein <cardoe@cardoe.com>, George Dunlap
 <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>,
 Andrew Cooper <andrew.cooper3@citrix.com>
References: <338d8e574db943a86c7605e4c6d9a299d45f067d.1696347345.git.nicola.vetrini@bugseng.com>
 <alpine.DEB.2.22.394.2310031345190.2348112@ubuntu-linux-20-04-desktop>
 <e1736215-52ba-4737-9da3-8f1ba7e832a6@citrix.com>
 <DB96C095-5FAF-40A1-9CA8-002291AA1933@arm.com>
 <2894008e8f612296da84267346ae4240@bugseng.com>
 <B00BC78B-E707-4043-A0B4-D320C6717472@arm.com>
 <alpine.DEB.2.22.394.2310041625170.2348112@ubuntu-linux-20-04-desktop>
 <9DD525D9-DB6D-4888-9266-FB45906A0E0F@arm.com>
 <alpine.DEB.2.22.394.2310051756360.2348112@ubuntu-linux-20-04-desktop>
 <C2DDFAB5-D943-4A24-9C14-AF35BE2A7C90@arm.com>
 <alpine.DEB.2.22.394.2310061741130.3431292@ubuntu-linux-20-04-desktop>
 <1ceb5aa0-d374-4357-964f-1341468d542e@xen.org>
 <alpine.DEB.2.22.394.2310091251080.3431292@ubuntu-linux-20-04-desktop>
 <8c3d7933-c139-49dd-8c62-2d4543176f8f@xen.org>
 <alpine.DEB.2.22.394.2310101635280.3431292@ubuntu-linux-20-04-desktop>
 <80f4df2b-a8b2-4494-94e0-47de55c01597@xen.org>
In-Reply-To: <80f4df2b-a8b2-4494-94e0-47de55c01597@xen.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit



On 11/10/2023 10:45, Julien Grall wrote:
> Hi Stefano,
> 
> On 11/10/2023 00:39, Stefano Stabellini wrote:
>> On Tue, 10 Oct 2023, Julien Grall wrote:
>>> Hi Stefano,
>>>
>>> On 09/10/2023 23:19, Stefano Stabellini wrote:
>>>>>
>>>>> I am not sure this is better. This is a long line to read. But this 
>>>>> is a
>>>>> personal opinion.
>>>>>
>>>>> On the technical side, can we easily teach a tool to format this 
>>>>> kind of
>>>>> exception? If not, then this should not be an exception we should
>>>>> implement.
>>>>
>>>> I am not sure I understand what you mean by "can we easily teach a tool
>>>> to format this kind of exception". Do you mean whether we can teach a
>>>> tool to interpret a multiline statement as a single statement?
>>>
>>> Sorry for the wording was not clear. I was referring to tools 
>>> formatting the
>>> code (e.g. clang-format). Hopefully, at some point, we will finally 
>>> have a way
>>> to automatically format the code. So we need a coding style that can 
>>> be easily
>>> be checked.
>>>
>>> It is not clear to me whether your proposed exception would work. We 
>>> may have
>>> to allow longer lines (and this has drawback).
>>
>> Yes, that's a good point. It will probably be an issue with clang-format.
>>
>>
>>>> /* cppcheck tag */
>>>> line1
>>>> /* cppcheck tag */
>>>> line2
>>>> /* cppcheck tag */
>>>> line3
>>>>
>>>> and that would end up changing the line numbers in the source files so
>>>> the cppcheck report wouldn't match with the original line numbers any
>>>> longer
>>>
>>> Would cppcheck accepts tag at the end of the line? If so, the 
>>> following would
>>> not modify the line count:
>>>
>>> /* cppcheck tag */
>>> line1 /* added cppcheck tag */
>>> line2 /* added cppcheck tag */
>>> line3 /* added cppcheck tag */
>>
>> Luca answered to a similar, more generic, question a few days ago about
>> Coverity: https://marc.info/?l=xen-devel&m=169657904027210
> 
> Interesting.
> 
>>
>> So even if we get cppcheck to work like that, we would lose Coverity
>> support.
> 
> I think my suggestion was probably misunderstood. So let me clarify it. 
> To cover multi-line, we could write the following in Xen:
> 
> /* cppcheck tag next-3-lines */
> line 1
> line 2
> line 3
> 
> AFAIU Eclair supports multi-line, so the tag would be transformed to 
> there internal solution. For CPPCheck, this could be transformed to:
> 
> /* cppcheck tag next-3 lines */
> line 1 /* generated cppcheck tag */
> line 2 /* generated cppcheck tag */
> line 3 /* generated cppcheck tag */
> 
> Now, I understand that coverity doesn't support any of the two format. 
> So the only solution would be to add the comment before each line which 
> would impact the line numbers. This is not great, but I think this is 
> acceptable as the context would likely help to find where this is coming 
> from.

Just to clarify, here I meant that for coverity, a script before the 
scan could convert to the multi-line version. So the line change only 
impact Coverity.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Wed Oct 11 10:55:18 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 11 Oct 2023 10:55:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615450.956668 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqWrn-0006xN-FK; Wed, 11 Oct 2023 10:55:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615450.956668; Wed, 11 Oct 2023 10:55: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 1qqWrn-0006xG-CH; Wed, 11 Oct 2023 10:55:03 +0000
Received: by outflank-mailman (input) for mailman id 615450;
 Wed, 11 Oct 2023 10:55: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=WgCM=FZ=arm.com=Luca.Fancellu@srs-se1.protection.inumbo.net>)
 id 1qqWrl-0006x2-GE
 for xen-devel@lists.xenproject.org; Wed, 11 Oct 2023 10:55:01 +0000
Received: from EUR02-DB5-obe.outbound.protection.outlook.com
 (mail-db5eur02on20629.outbound.protection.outlook.com
 [2a01:111:f400:fe12::629])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 9d9f5542-6824-11ee-9b0d-b553b5be7939;
 Wed, 11 Oct 2023 12:54:57 +0200 (CEST)
Received: from DBBPR09CA0041.eurprd09.prod.outlook.com (2603:10a6:10:d4::29)
 by PAXPR08MB7465.eurprd08.prod.outlook.com (2603:10a6:102:2b9::17) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.43; Wed, 11 Oct
 2023 10:54:41 +0000
Received: from DBAEUR03FT051.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:d4:cafe::3e) by DBBPR09CA0041.outlook.office365.com
 (2603:10a6:10:d4::29) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.27 via Frontend
 Transport; Wed, 11 Oct 2023 10:54:41 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DBAEUR03FT051.mail.protection.outlook.com (100.127.142.148) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6886.27 via Frontend Transport; Wed, 11 Oct 2023 10:54:41 +0000
Received: ("Tessian outbound fb5c0777b309:v211");
 Wed, 11 Oct 2023 10:54:41 +0000
Received: from 9c6a770eeca4.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 AE443C74-C319-496A-BFDD-86BEB872623C.1; 
 Wed, 11 Oct 2023 10:53:58 +0000
Received: from EUR02-DB5-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 9c6a770eeca4.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Wed, 11 Oct 2023 10:53:58 +0000
Received: from AM6PR08MB3749.eurprd08.prod.outlook.com (2603:10a6:20b:8f::22)
 by AS2PR08MB9320.eurprd08.prod.outlook.com (2603:10a6:20b:598::12)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.36; Wed, 11 Oct
 2023 10:53:56 +0000
Received: from AM6PR08MB3749.eurprd08.prod.outlook.com
 ([fe80::501a:489c:410b:338]) by AM6PR08MB3749.eurprd08.prod.outlook.com
 ([fe80::501a:489c:410b:338%6]) with mapi id 15.20.6863.032; Wed, 11 Oct 2023
 10: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: 9d9f5542-6824-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=7B05IP0LF1YtdMjYZHGPJXUvFghrLe7+cpYr/c1UcDc=;
 b=PHW7LkYbZb/PjpdUW7C6cV3/S20d4ayxw4vDoM/DN4SPzH+rc1c0WoFWUcuwAUwk805fYS1nuvH4VsJPjU9NRXqOstgoK3++XH1RaP0+wfp0+9LkLd0z0wyc5NYUV/R6G4sbjvgsRwD0D6hy6BeHYmKp/D+LqPViAJTYAuf7TtY=
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: 9a2fea5dd0843a72
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=WFZ6JRkUR2VLWTt/cKwL0L1jGXF8o7KA8JkYhYoJYpanXBPVwmIMsqkRQvpz/0HnCo1xgRpIrWkFODqBYFy/1cSKZaY5XZ/hPM81IIwRa5IAdWF7XDL1tRarePpX/M32mVFbkyAwCpUxPUf9IeIPX7jIC9lbE5pm9iNxaaNuNoKvsq5K7nEUWdQMdDi1Jt70/pcwII2yD49t/1Fx8OhICIWH2d8UNGOo2jBqyqMW9zAvvmiDJc/cjIVZ+i7lvonWOClvduNg42+AiIpHYCgQXRg9y4QwNiw4bB7tqPAHk5UwWsziT/9fG+RbosXjuzj640/tGiCXdAmc+VaWWWUWWQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=7B05IP0LF1YtdMjYZHGPJXUvFghrLe7+cpYr/c1UcDc=;
 b=Z8B+tnmWVXD5WBDxiICDe3Li2WvMZCwd9g+LpObRgtpPLAMNkHmUhhPTx8akP/4CanR0Rqehs8RO7T3UyokhwqNk/hXxwbaUQE4vXmybbWJQ/xaZfiQpkThzzZfW05uJFZbGhMlLoTsfyTGfx4pQT/gqiR1KPyik9GD/qrOsDdXFyfnfCd71XZ2AbwmuD5peehW7pFo3+crL4cAYSa8ezS/cd3hv7GJeGcDFtYbVUD6vz8K9QC0rjy6mpJpTk/kW7caV2eldWAfKbXmTeBbv+HYxiCk9WibpYoBUSpfPMfA5uJEn6ojanHg0eJtYtZv/zSezVPtSZpPfD4Qk6pwclA==
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=7B05IP0LF1YtdMjYZHGPJXUvFghrLe7+cpYr/c1UcDc=;
 b=PHW7LkYbZb/PjpdUW7C6cV3/S20d4ayxw4vDoM/DN4SPzH+rc1c0WoFWUcuwAUwk805fYS1nuvH4VsJPjU9NRXqOstgoK3++XH1RaP0+wfp0+9LkLd0z0wyc5NYUV/R6G4sbjvgsRwD0D6hy6BeHYmKp/D+LqPViAJTYAuf7TtY=
From: Luca Fancellu <Luca.Fancellu@arm.com>
To: Julien Grall <julien@xen.org>
CC: Stefano Stabellini <sstabellini@kernel.org>, Nicola Vetrini
	<nicola.vetrini@bugseng.com>, Xen-devel <xen-devel@lists.xenproject.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>, Jan Beulich
	<jbeulich@suse.com>, =?utf-8?B?Um9nZXIgUGF1IE1vbm7DqQ==?=
	<roger.pau@citrix.com>, Henry Wang <Henry.Wang@arm.com>, Simone Ballarin
	<simone.ballarin@bugseng.com>, Doug Goldstein <cardoe@cardoe.com>, George
 Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>, Andrew Cooper
	<andrew.cooper3@citrix.com>
Subject: Re: [XEN PATCH] xen: Add SAF deviations for MISRA C:2012 Rule 7.1
Thread-Topic: [XEN PATCH] xen: Add SAF deviations for MISRA C:2012 Rule 7.1
Thread-Index:
 AQHZ9qj87vFsnMRst0ybMa+ffKOLU7A5Z4mAgAAGhgCAAAYzgIAA1KIAgACGqQCAASTEgIAAdASAgAEY6ICAA60ogIAA4ZaAgADQ0QCAANf6gIAAqUEAgAABkwCAABF9gA==
Date: Wed, 11 Oct 2023 10:53:56 +0000
Message-ID: <6BB62AEF-FCE1-412C-87DD-479319623092@arm.com>
References:
 <338d8e574db943a86c7605e4c6d9a299d45f067d.1696347345.git.nicola.vetrini@bugseng.com>
 <alpine.DEB.2.22.394.2310031345190.2348112@ubuntu-linux-20-04-desktop>
 <e1736215-52ba-4737-9da3-8f1ba7e832a6@citrix.com>
 <DB96C095-5FAF-40A1-9CA8-002291AA1933@arm.com>
 <2894008e8f612296da84267346ae4240@bugseng.com>
 <B00BC78B-E707-4043-A0B4-D320C6717472@arm.com>
 <alpine.DEB.2.22.394.2310041625170.2348112@ubuntu-linux-20-04-desktop>
 <9DD525D9-DB6D-4888-9266-FB45906A0E0F@arm.com>
 <alpine.DEB.2.22.394.2310051756360.2348112@ubuntu-linux-20-04-desktop>
 <C2DDFAB5-D943-4A24-9C14-AF35BE2A7C90@arm.com>
 <alpine.DEB.2.22.394.2310061741130.3431292@ubuntu-linux-20-04-desktop>
 <1ceb5aa0-d374-4357-964f-1341468d542e@xen.org>
 <alpine.DEB.2.22.394.2310091251080.3431292@ubuntu-linux-20-04-desktop>
 <8c3d7933-c139-49dd-8c62-2d4543176f8f@xen.org>
 <alpine.DEB.2.22.394.2310101635280.3431292@ubuntu-linux-20-04-desktop>
 <80f4df2b-a8b2-4494-94e0-47de55c01597@xen.org>
 <1766b5f3-490c-4bbe-902c-3970c28041a7@xen.org>
In-Reply-To: <1766b5f3-490c-4bbe-902c-3970c28041a7@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_|AS2PR08MB9320:EE_|DBAEUR03FT051:EE_|PAXPR08MB7465:EE_
X-MS-Office365-Filtering-Correlation-Id: 4f3bf956-6b70-4858-cdba-08dbca4878c3
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:
 9peaHsIZMH/3DsV+BLiArG8ZGqenVJBkjHXH2iyQrRzzWDzpdv72ZREY3DrjNwgDTfBrFntKLm+Im6Sr3m/njLFEiFxjjlgGV6dC2DYBYoZWEIuK/Gsok8LzIj1lRCdKtDmuNquygRIhJ6gzpSXIoNiPXBMwsg3WrqTKamFRQoKtkdPOqsHOKWmZR5rQCYesCBYU6Z4MzzZNUjJRJ8IgFM8xu5k4FwR+szo6jFixzHZOVl90tYjUdjv4ZGPmZKaQyJI0IrzxKGuG0u9e15QyxFYnckhSIt6Kijrf3/GAqJoocW6wPLUC3Dsq63uV4jHBSGsjVaSeQFeHt5x0/TxlOBRM6FsdjwwRUpmrOViF76xmXzwZVywEFqvudB+a8IuLAHHjs1VLczvPwvTIokfbRThoL0SHlrzDI/IVySV1ngWGuJpm2ByuV6f6yXYDUARUIaO/PMnAOiXXGIItSkG+Yho3gCfSMPVHne5GYq7Yi5G51rBh3QXwfDDXv1xC1kM14pt4s+mmJTveLqVYxJcmf0HIKoDGwhjTRgOwJ51BvElZmfa/G/sqU/3tBFjrTY4m0XO1pTFwM03Oc4LlnFQriSKnaBx0cD/7be9urGSZsH3qLb4sk3Ym4xhn4UnXtafV
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)(396003)(39860400002)(366004)(136003)(346002)(230922051799003)(64100799003)(186009)(451199024)(1800799009)(71200400001)(26005)(2616005)(6512007)(8676002)(66556008)(76116006)(8936002)(2906002)(7416002)(478600001)(4326008)(6506007)(66946007)(66476007)(64756008)(66446008)(54906003)(966005)(5660300002)(6486002)(316002)(91956017)(41300700001)(6916009)(38100700002)(122000001)(86362001)(38070700005)(36756003)(33656002)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <7035AFD0A7724643A58A42E0E80A25DD@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS2PR08MB9320
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:
 DBAEUR03FT051.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	0fb1269c-2f0d-4e9d-ae15-08dbca485dd2
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	TrXsTJmMXgt5Oaq2UY6IWQkBDW+ys26pAvbVzelYNACkAiB6sDgQSOMFzbekINQEFP1vE/EJKnBhoF+UxDEpNZ4/1RJKnd+yoQTkvpiKr6tK2XSTxoSFAj+k5GG5Noyzk1rP+gQ4WXbkvGmH1MAxYEI3G6KUO+UhRjMr8X7J5dPWVOHdNFSxX7YpxcCq0zYicIFW9eflEaRgDsZqGlfN+ccEbjbF4A3fKwnAMrJvSwJOXWXHV7L6I+WR6lUooQ5/IvJdfoL2oW3sdViClbY+rc6Q7yH6NaiNhqKHnUEC/QAjIdRedG10SbDTC9wv2SLQkJC3Ha9rbUc+3//Uka2ZWgOxe+NkIcTiCxc8KwYUbf29hOjKRxn92owZIObKIwRWZ1iAYiJgz/Hg8hzfNX3deJXu9zCHtgFOVTM1GGBc6YUvBoFBBGh9iqY4r4BDmeH/thh2kxoFlsG+jYRYgu7QV2mxdDpu7nEYEOR/DLSRhk4t2D2PzMs4sX5FQjB4HlqYTFcc7mlBSb28KNLgHGnyH4ax7IOI5pNQXMoY3WR8muOvbp/7cB270QgIMaRPsmARmAx118iBaYx0UCTfEBXMSoAzJbxOuBziQqX4ZOTR6Cez2MdRv11moUm+PKE4fvIuFJ7U6gNNg+lwblmxh6g0s3kjYdAdgndTOY9R4GDjRnfJlUH4siPnECtAIQVYQvLnE58d6XP1/IpJw8kAty42pDt4d62KFE0YxF2ZGyOQJ+g=
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)(39860400002)(396003)(136003)(230922051799003)(186009)(1800799009)(451199024)(82310400011)(64100799003)(36840700001)(46966006)(40470700004)(70586007)(70206006)(54906003)(316002)(6862004)(4326008)(8936002)(8676002)(41300700001)(36756003)(336012)(36860700001)(356005)(82740400003)(5660300002)(81166007)(33656002)(6512007)(2906002)(6486002)(966005)(47076005)(26005)(2616005)(478600001)(40460700003)(40480700001)(86362001)(107886003)(6506007);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 Oct 2023 10:54:41.5455
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 4f3bf956-6b70-4858-cdba-08dbca4878c3
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:
	DBAEUR03FT051.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR08MB7465

DQo+Pj4gDQo+Pj4gTHVjYSBhbnN3ZXJlZCB0byBhIHNpbWlsYXIsIG1vcmUgZ2VuZXJpYywgcXVl
c3Rpb24gYSBmZXcgZGF5cyBhZ28gYWJvdXQNCj4+PiBDb3Zlcml0eTogaHR0cHM6Ly9tYXJjLmlu
Zm8vP2w9eGVuLWRldmVsJm09MTY5NjU3OTA0MDI3MjEwDQo+PiBJbnRlcmVzdGluZy4NCj4+PiAN
Cj4+PiBTbyBldmVuIGlmIHdlIGdldCBjcHBjaGVjayB0byB3b3JrIGxpa2UgdGhhdCwgd2Ugd291
bGQgbG9zZSBDb3Zlcml0eQ0KPj4+IHN1cHBvcnQuDQo+PiBJIHRoaW5rIG15IHN1Z2dlc3Rpb24g
d2FzIHByb2JhYmx5IG1pc3VuZGVyc3Rvb2QuIFNvIGxldCBtZSBjbGFyaWZ5IGl0LiBUbyBjb3Zl
ciBtdWx0aS1saW5lLCB3ZSBjb3VsZCB3cml0ZSB0aGUgZm9sbG93aW5nIGluIFhlbjoNCj4+IC8q
IGNwcGNoZWNrIHRhZyBuZXh0LTMtbGluZXMgKi8NCj4+IGxpbmUgMQ0KPj4gbGluZSAyDQo+PiBs
aW5lIDMNCj4+IEFGQUlVIEVjbGFpciBzdXBwb3J0cyBtdWx0aS1saW5lLCBzbyB0aGUgdGFnIHdv
dWxkIGJlIHRyYW5zZm9ybWVkIHRvIHRoZXJlIGludGVybmFsIHNvbHV0aW9uLiBGb3IgQ1BQQ2hl
Y2ssIHRoaXMgY291bGQgYmUgdHJhbnNmb3JtZWQgdG86DQo+PiAvKiBjcHBjaGVjayB0YWcgbmV4
dC0zIGxpbmVzICovDQo+PiBsaW5lIDEgLyogZ2VuZXJhdGVkIGNwcGNoZWNrIHRhZyAqLw0KPj4g
bGluZSAyIC8qIGdlbmVyYXRlZCBjcHBjaGVjayB0YWcgKi8NCj4+IGxpbmUgMyAvKiBnZW5lcmF0
ZWQgY3BwY2hlY2sgdGFnICovDQo+PiBOb3csIEkgdW5kZXJzdGFuZCB0aGF0IGNvdmVyaXR5IGRv
ZXNuJ3Qgc3VwcG9ydCBhbnkgb2YgdGhlIHR3byBmb3JtYXQuIFNvIHRoZSBvbmx5IHNvbHV0aW9u
IHdvdWxkIGJlIHRvIGFkZCB0aGUgY29tbWVudCBiZWZvcmUgZWFjaCBsaW5lIHdoaWNoIHdvdWxk
IGltcGFjdCB0aGUgbGluZSBudW1iZXJzLiBUaGlzIGlzIG5vdCBncmVhdCwgYnV0IEkgdGhpbmsg
dGhpcyBpcyBhY2NlcHRhYmxlIGFzIHRoZSBjb250ZXh0IHdvdWxkIGxpa2VseSBoZWxwIHRvIGZp
bmQgd2hlcmUgdGhpcyBpcyBjb21pbmcgZnJvbS4NCj4gDQo+IEp1c3QgdG8gY2xhcmlmeSwgaGVy
ZSBJIG1lYW50IHRoYXQgZm9yIGNvdmVyaXR5LCBhIHNjcmlwdCBiZWZvcmUgdGhlIHNjYW4gY291
bGQgY29udmVydCB0byB0aGUgbXVsdGktbGluZSB2ZXJzaW9uLiBTbyB0aGUgbGluZSBjaGFuZ2Ug
b25seSBpbXBhY3QgQ292ZXJpdHkuDQoNCkhpIEp1bGllbiwNCg0KV2XigJl2ZSB0cmllZCB0byBh
dm9pZCB0aGF0IGJlY2F1c2Ugd2hlbiB0aGUgdG9vbCBpbnNlcnQgbGluZXMsIHRoZSByZXN1bHRh
bnQgcmVwb3J0IHdvdWxkIGdpdmUgd3JvbmcgbGluZXMgbnVtYmVycyBpZiBhbnkgdmlvbGF0aW9u
IGlzIHJlcG9ydGVkIGFmdGVyIHRoZQ0KaW5zZXJ0aW9uIHBvaW50cy4gU28gdGhlcmUgd2lsbCBi
ZSBhIG1pc21hdGNoIGJldHdlZW4gdGhlIGNvZGViYXNlIGFuZCB0aGUgcmVwb3J0IGZpbmRpbmdz
IGZyb20gc29tZSBwb2ludCBvbiBpbiB0aGUgZmlsZS4NCg0KSeKAmXZlIGNvbnRhY3RlZCBTeW5v
cHN5cyBhYm91dCB0aGUgaW4tY29kZSBjb21tZW50cywgdG8gZGlzY292ZXIgaWYgdGhleSBoYXZl
IGRpZmZlcmVudCBzeW50YXggKG9ubHkgdGhlIG9uZSB3ZSBrbm93IGlzIHByb3Bvc2VkIGluIHRo
ZSBkb2N1bWVudGF0aW9uKSwNCkkgd2lsbCBsZXQgeW91IGtub3cgaWYgc29tZXRoaW5nIGNvbWVz
IHVwLg0KDQpDaGVlcnMsDQpMdWNhDQoNCg==


From xen-devel-bounces@lists.xenproject.org Wed Oct 11 11:34:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 11 Oct 2023 11:34:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615455.956677 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqXUI-0006wg-Co; Wed, 11 Oct 2023 11:34:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615455.956677; Wed, 11 Oct 2023 11: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 1qqXUI-0006wZ-AE; Wed, 11 Oct 2023 11:34:50 +0000
Received: by outflank-mailman (input) for mailman id 615455;
 Wed, 11 Oct 2023 11: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=0pcp=FZ=casper.srs.infradead.org=BATV+eeba7f64cef51ed8f8b7+7353+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qqXUG-0006wP-5X
 for xen-devel@lists.xenproject.org; Wed, 11 Oct 2023 11:34:49 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 2d44496d-682a-11ee-98d4-6d05b1d4d9a1;
 Wed, 11 Oct 2023 13:34:47 +0200 (CEST)
Received: from [2001:8b0:10b:5:2db5:a8b2:de2d:f60d]
 (helo=u3832b3a9db3152.ant.amazon.com)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qqXTs-00AVuY-K4; Wed, 11 Oct 2023 11:34: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: 2d44496d-682a-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=MIME-Version:Content-Type:In-Reply-To:
	Date:Cc:To:From:Subject:Message-ID:Sender:Reply-To:Content-Transfer-Encoding:
	Content-ID:Content-Description:References;
	bh=f8B+mxfNayXzkgEgXQaWm5HvvwTooL47q1fv0wQwAsM=; b=PC5/+lll1suW0lUn2OywXWXO2C
	4PA9iW5TzcNSLaqNJe5svptNVG4jQguplHLnznhQbpSXbRHBwkm+aM+TaeqV0japKYUjbwJJYOOtJ
	XbuxCE2ROH9PWBa/6J8smdBJFGyIWet/QGUk9utLTDRn7S1FMhb5WAMdSJ9ZANRe0gEi2U9N0DbgO
	fJ2ywtGsX6yQtWKilx+4+drh8hcDgVNbTPQCV1ZsKftwDMXQh5Vak25YSAep9epqLRyh7aEHE/z7d
	2R1iSG4f7TCSOTboD9AzICqJsuBjwRTXWRqPdpYTGChSfu0k8vHorqYy1Oh1ZBCztB4McrjiV7Qzj
	EIlBuxRA==;
Message-ID: <b4e8835566bc6e9becc4f8adea7bb3c6cc558db2.camel@infradead.org>
Subject: Re: [Xen-devel] [PATCH] x86/sm{e, a}p: do not enable SMEP/SMAP in
 PV shim by default on AMD
From: David Woodhouse <dwmw2@infradead.org>
To: andrew.cooper3@citrix.com
Cc: George.Dunlap@eu.citrix.com, ian.jackson@eu.citrix.com, 
 igor.druzhinin@citrix.com, jbeulich@suse.com, julien@xen.org, 
 konrad.wilk@oracle.com, roger.pau@citrix.com, sstabellini@kernel.org,
 wl@xen.org,  xen-devel@lists.xenproject.org
Date: Wed, 11 Oct 2023 12:34:22 +0100
In-Reply-To: <40176a33-924e-8e81-7231-1b8df8b5e69f@citrix.com>
Content-Type: multipart/signed; micalg="sha-256"; protocol="application/pkcs7-signature";
	boundary="=-8t49VxOnUfk1P0Zn2TUb"
User-Agent: Evolution 3.44.4-0ubuntu2 
MIME-Version: 1.0
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html


--=-8t49VxOnUfk1P0Zn2TUb
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

>=20
> On 16/01/2020 16:00, Igor Druzhinin wrote:
> > Due to AMD and Hygon being unable to selectively trap CR4 bit modificat=
ions
> > running 32-bit PV guest inside PV shim comes with significant performan=
ce
> > hit. Moreover, for SMEP in particular every time CR4.SMEP changes on co=
ntext
> > switch to/from 32-bit PV guest, it gets trapped by L0 Xen which then
> > tries to perform global TLB invalidation for PV shim domain. This usual=
ly
> > results in eventual hang of a PV shim with at least several vCPUs.
> >
> > Since the overall security risk is generally lower for shim Xen as it b=
eing
> > there more of a defense-in-depth mechanism, choose to disable SMEP/SMAP=
 in
> > it by default on AMD and Hygon unless a user chose otherwise.
> >
> > Signed-off-by: Igor Druzhinin <igor.druzhinin@citrix.com>
> > ---
> > I'm a little bit on the fence with this one. We're having the same issu=
e with
> > general nested virt but I'm not inclined to trade security for a user i=
n
> > general case. Disabling it by default for PV shim only seems rather ino=
cuous
> > due to the use case restricion. I'd like to hear more opinions.
>=20
> So everyone on the list is up to date with the discussion we had IRL.
>=20
> SMEP/SMAP are defence in depth measures.  We support running on hardware
> without these features, and the overall result is the same, security wise=
.
>=20
> In the PV Shim case, there is only a single guest and nothing
> interesting in Xen, data wise.  We specifically do not have the risk of
> sideways data leakage from other guests to be worried about.
>=20
> We do however care for performance, and not taking a VMExit on every
> SYSCALL/Interrupt/Exception makes a massive difference overall.

FWIW when running the shim under KVM even on Intel, constantly frobbing
the CR4.SMEP bit still performs awfully.

(Yes, we should make KVM pass that bit through to its guest on Intel
hardware, just as Xen does when it's the HVM host. cf.
https://lore.kernel.org/kvm/7fba6d8fc3de0bcb86bf629a4f5b0217552fe999.camel@=
infradead.org/T/#m39a117e90f29fc862b78ec1441b761459e7be86a
)

But why does the shim even need to turn it off when switching to the
guest context? Its guest isn't running in supervisor mode so surely it
doesn't *matter* whether SMEP is enabled or not? Why not just leave it
on at all times?

--=-8t49VxOnUfk1P0Zn2TUb
Content-Type: application/pkcs7-signature; name="smime.p7s"
Content-Disposition: attachment; filename="smime.p7s"
Content-Transfer-Encoding: base64

MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgEFADCABgkqhkiG9w0BBwEAAKCCEkQw
ggYQMIID+KADAgECAhBNlCwQ1DvglAnFgS06KwZPMA0GCSqGSIb3DQEBDAUAMIGIMQswCQYDVQQG
EwJVUzETMBEGA1UECBMKTmV3IEplcnNleTEUMBIGA1UEBxMLSmVyc2V5IENpdHkxHjAcBgNVBAoT
FVRoZSBVU0VSVFJVU1QgTmV0d29yazEuMCwGA1UEAxMlVVNFUlRydXN0IFJTQSBDZXJ0aWZpY2F0
aW9uIEF1dGhvcml0eTAeFw0xODExMDIwMDAwMDBaFw0zMDEyMzEyMzU5NTlaMIGWMQswCQYDVQQG
EwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYD
VQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50
aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC
AQEAyjztlApB/975Rrno1jvm2pK/KxBOqhq8gr2+JhwpKirSzZxQgT9tlC7zl6hn1fXjSo5MqXUf
ItMltrMaXqcESJuK8dtK56NCSrq4iDKaKq9NxOXFmqXX2zN8HHGjQ2b2Xv0v1L5Nk1MQPKA19xeW
QcpGEGFUUd0kN+oHox+L9aV1rjfNiCj3bJk6kJaOPabPi2503nn/ITX5e8WfPnGw4VuZ79Khj1YB
rf24k5Ee1sLTHsLtpiK9OjG4iQRBdq6Z/TlVx/hGAez5h36bBJMxqdHLpdwIUkTqT8se3ed0PewD
ch/8kHPo5fZl5u1B0ecpq/sDN/5sCG52Ds+QU5O5EwIDAQABo4IBZDCCAWAwHwYDVR0jBBgwFoAU
U3m/WqorSs9UgOHYm8Cd8rIDZsswHQYDVR0OBBYEFAnA8vwL2pTbX/4r36iZQs/J4K0AMA4GA1Ud
DwEB/wQEAwIBhjASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEF
BQcDBDARBgNVHSAECjAIMAYGBFUdIAAwUAYDVR0fBEkwRzBFoEOgQYY/aHR0cDovL2NybC51c2Vy
dHJ1c3QuY29tL1VTRVJUcnVzdFJTQUNlcnRpZmljYXRpb25BdXRob3JpdHkuY3JsMHYGCCsGAQUF
BwEBBGowaDA/BggrBgEFBQcwAoYzaHR0cDovL2NydC51c2VydHJ1c3QuY29tL1VTRVJUcnVzdFJT
QUFkZFRydXN0Q0EuY3J0MCUGCCsGAQUFBzABhhlodHRwOi8vb2NzcC51c2VydHJ1c3QuY29tMA0G
CSqGSIb3DQEBDAUAA4ICAQBBRHUAqznCFfXejpVtMnFojADdF9d6HBA4kMjjsb0XMZHztuOCtKF+
xswhh2GqkW5JQrM8zVlU+A2VP72Ky2nlRA1GwmIPgou74TZ/XTarHG8zdMSgaDrkVYzz1g3nIVO9
IHk96VwsacIvBF8JfqIs+8aWH2PfSUrNxP6Ys7U0sZYx4rXD6+cqFq/ZW5BUfClN/rhk2ddQXyn7
kkmka2RQb9d90nmNHdgKrwfQ49mQ2hWQNDkJJIXwKjYA6VUR/fZUFeCUisdDe/0ABLTI+jheXUV1
eoYV7lNwNBKpeHdNuO6Aacb533JlfeUHxvBz9OfYWUiXu09sMAviM11Q0DuMZ5760CdO2VnpsXP4
KxaYIhvqPqUMWqRdWyn7crItNkZeroXaecG03i3mM7dkiPaCkgocBg0EBYsbZDZ8bsG3a08LwEsL
1Ygz3SBsyECa0waq4hOf/Z85F2w2ZpXfP+w8q4ifwO90SGZZV+HR/Jh6rEaVPDRF/CEGVqR1hiuQ
OZ1YL5ezMTX0ZSLwrymUE0pwi/KDaiYB15uswgeIAcA6JzPFf9pLkAFFWs1QNyN++niFhsM47qod
x/PL+5jR87myx5uYdBEQkkDc+lKB1Wct6ucXqm2EmsaQ0M95QjTmy+rDWjkDYdw3Ms6mSWE3Bn7i
5ZgtwCLXgAIe5W8mybM2JzCCBhQwggT8oAMCAQICEQDGvhmWZ0DEAx0oURL6O6l+MA0GCSqGSIb3
DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYD
VQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28g
UlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMB4XDTIyMDEwNzAw
MDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJARYTZHdtdzJAaW5mcmFkZWFkLm9y
ZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3GpC2bomUqk+91wLYBzDMcCj5C9m6
oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZHh7htyAkWYVoFsFPrwHounto8xTsy
SSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT9YgcBqKCo65pTFmOnR/VVbjJk4K2
xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNjP+qDrh0db7PAjO1D4d5ftfrsf+kd
RR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy2U+eITZ5LLE5s45mX2oPFknWqxBo
bQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3BgBEmfsYWlBXO8rVXfvPgLs32VdV
NZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/7auNVRmPB3v5SWEsH8xi4Bez2V9U
KxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmdlFYhAflWKQ03Ufiu8t3iBE3VJbc2
5oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9aelIl6vtbhMA+l0nfrsORMa4kobqQ5
C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMBAAGjggHMMIIByDAfBgNVHSMEGDAW
gBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeDMcimo0oz8o1R1Nver3ZVpSkwDgYD
VR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYwFAYIKwYBBQUHAwQGCCsGAQUFBwMC
MEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYBBQUHAgEWF2h0dHBzOi8vc2VjdGln
by5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9jcmwuc2VjdGlnby5jb20vU2VjdGln
b1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1haWxDQS5jcmwwgYoGCCsGAQUFBwEB
BH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdvLmNvbS9TZWN0aWdvUlNBQ2xpZW50
QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAjBggrBgEFBQcwAYYXaHR0cDovL29j
c3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5mcmFkZWFkLm9yZzANBgkqhkiG9w0B
AQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQvQ/fzPXmtR9t54rpmI2TfyvcKgOXp
qa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvIlSPrzIB4Z2wyIGQpaPLlYflrrVFK
v9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9ChWFfgSXvrWDZspnU3Gjw/rMHrGnql
Htlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0whpBtXdyDjzBtQTaZJ7zTT/vlehc/
tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9IzCCBhQwggT8oAMCAQICEQDGvhmW
Z0DEAx0oURL6O6l+MA0GCSqGSIb3DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3Jl
YXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0
ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJl
IEVtYWlsIENBMB4XDTIyMDEwNzAwMDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJ
ARYTZHdtdzJAaW5mcmFkZWFkLm9yZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3
GpC2bomUqk+91wLYBzDMcCj5C9m6oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZH
h7htyAkWYVoFsFPrwHounto8xTsySSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT
9YgcBqKCo65pTFmOnR/VVbjJk4K2xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNj
P+qDrh0db7PAjO1D4d5ftfrsf+kdRR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy
2U+eITZ5LLE5s45mX2oPFknWqxBobQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3
BgBEmfsYWlBXO8rVXfvPgLs32VdVNZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/
7auNVRmPB3v5SWEsH8xi4Bez2V9UKxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmd
lFYhAflWKQ03Ufiu8t3iBE3VJbc25oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9ae
lIl6vtbhMA+l0nfrsORMa4kobqQ5C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMB
AAGjggHMMIIByDAfBgNVHSMEGDAWgBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeD
Mcimo0oz8o1R1Nver3ZVpSkwDgYDVR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYw
FAYIKwYBBQUHAwQGCCsGAQUFBwMCMEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYB
BQUHAgEWF2h0dHBzOi8vc2VjdGlnby5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9j
cmwuc2VjdGlnby5jb20vU2VjdGlnb1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1h
aWxDQS5jcmwwgYoGCCsGAQUFBwEBBH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdv
LmNvbS9TZWN0aWdvUlNBQ2xpZW50QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAj
BggrBgEFBQcwAYYXaHR0cDovL29jc3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5m
cmFkZWFkLm9yZzANBgkqhkiG9w0BAQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQv
Q/fzPXmtR9t54rpmI2TfyvcKgOXpqa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvI
lSPrzIB4Z2wyIGQpaPLlYflrrVFKv9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9Ch
WFfgSXvrWDZspnU3Gjw/rMHrGnqlHtlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0w
hpBtXdyDjzBtQTaZJ7zTT/vlehc/tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9
IzGCBMcwggTDAgEBMIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVz
dGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMT
NVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEA
xr4ZlmdAxAMdKFES+jupfjANBglghkgBZQMEAgEFAKCCAeswGAYJKoZIhvcNAQkDMQsGCSqGSIb3
DQEHATAcBgkqhkiG9w0BCQUxDxcNMjMxMDExMTEzNDIyWjAvBgkqhkiG9w0BCQQxIgQgYGaHB/RJ
Xp7EHEW0iXVIORyCmlYoLRUBWaN8c9w2AUwwgb0GCSsGAQQBgjcQBDGBrzCBrDCBljELMAkGA1UE
BhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEYMBYG
A1UEChMPU2VjdGlnbyBMaW1pdGVkMT4wPAYDVQQDEzVTZWN0aWdvIFJTQSBDbGllbnQgQXV0aGVu
dGljYXRpb24gYW5kIFNlY3VyZSBFbWFpbCBDQQIRAMa+GZZnQMQDHShREvo7qX4wgb8GCyqGSIb3
DQEJEAILMYGvoIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVy
MRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNl
Y3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEAxr4Z
lmdAxAMdKFES+jupfjANBgkqhkiG9w0BAQEFAASCAgAQnhrVmWntsgZDLEGazFLBXYBkMcwdktxG
i2pH4EKIHvNmU79Ba9XERmGN2j/tKcGTHGImllPDZ2DjN9Sme57TGg6LRkPeaf40HHQWexGpInZt
2OpQV+LCoQybfRJ7DG30kSS2wIaJm3vcZcWpm1rD4bJtT4o3b61r1CSCQwEO7H6uYwrSRElHmJRS
mfXtzOrSEkc43EjKCF2uLpa8k0aheAOpxjwTnP6az4BMIDvb2COA32/LbIRmxVDgLf3NxQbi/U5E
T/LDNU7LPJvFdYdDV5RKX4WR7PpclxoNfPhPKQKZT8tgpg8pvAmbDEVX3L0nViprYfa/DNXf4Xgk
a2CpyhmGOtsxX3fHk3HbIfpUHs38is4Sg2GoSJCEmciTqriucADhjTxjUsYzTFO2mrM5/iMHiZ1m
RTYPw+vI1D8FDm2vDFdN2adw9DFAarKrylAAOExMcDP2uYCDRxMt7h4eglNsolQoTK/mj6woYs5w
gpu8aWv6g/bcL6sw9m0AmZi+o8ux3cr2XynriipGdk9W3u+1fXAKGpd24H7NzqJXidnsiw1sX6YV
2qeylw3pnfYbaTeQn4rHMIGtulNWd90eBw7sZeb3d79Iz090ulobjpYU5HugQ9wOPb9HDTfcpl79
IcPQzwJHQ1u10jmBXR+jceYEk+4tNmiPGSPg7LPhXAAAAAAAAA==


--=-8t49VxOnUfk1P0Zn2TUb--


From xen-devel-bounces@lists.xenproject.org Wed Oct 11 12:01:49 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 11 Oct 2023 12:01:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615461.956688 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqXu4-0004N9-JV; Wed, 11 Oct 2023 12:01:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615461.956688; Wed, 11 Oct 2023 12: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 1qqXu4-0004N2-Fz; Wed, 11 Oct 2023 12:01:28 +0000
Received: by outflank-mailman (input) for mailman id 615461;
 Wed, 11 Oct 2023 12:01: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 1qqXu3-0004Mw-K2
 for xen-devel@lists.xenproject.org; Wed, 11 Oct 2023 12:01: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 1qqXu1-0003Db-OR; Wed, 11 Oct 2023 12:01:25 +0000
Received: from [15.248.2.150] (helo=[10.24.67.30])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qqXu1-00025n-I5; Wed, 11 Oct 2023 12: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=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=qqSP0ZTyDWrQsgxJ8GyxwYNDpNcZ6BVSzay1NGqucfc=; b=YUTsaQHf27wfDE9yEjHSDBizlQ
	Am830N9rAgStFbvetylJLy5yC6WiOtDXHdryW/3lmb8D9nDgQ92qHp/xsFWtG3Dk4hm0iK01LTvCZ
	fqFcXNgS1A8M3xu7P4UDp0gw/t2RTY6JQK7iRKRMEOSYaI37NLytD9m2VfHUeFgHMwFI=;
Message-ID: <66ac185e-eace-4933-b48a-e2fe035fcb8b@xen.org>
Date: Wed, 11 Oct 2023 13:01:22 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN PATCH] xen: Add SAF deviations for MISRA C:2012 Rule 7.1
Content-Language: en-GB
To: Luca Fancellu <Luca.Fancellu@arm.com>
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 Nicola Vetrini <nicola.vetrini@bugseng.com>,
 Xen-devel <xen-devel@lists.xenproject.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>,
 Jan Beulich <jbeulich@suse.com>, =?UTF-8?Q?Roger_Pau_Monn=C3=A9?=
 <roger.pau@citrix.com>, Henry Wang <Henry.Wang@arm.com>,
 Simone Ballarin <simone.ballarin@bugseng.com>,
 Doug Goldstein <cardoe@cardoe.com>, George Dunlap
 <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>,
 Andrew Cooper <andrew.cooper3@citrix.com>
References: <338d8e574db943a86c7605e4c6d9a299d45f067d.1696347345.git.nicola.vetrini@bugseng.com>
 <e1736215-52ba-4737-9da3-8f1ba7e832a6@citrix.com>
 <DB96C095-5FAF-40A1-9CA8-002291AA1933@arm.com>
 <2894008e8f612296da84267346ae4240@bugseng.com>
 <B00BC78B-E707-4043-A0B4-D320C6717472@arm.com>
 <alpine.DEB.2.22.394.2310041625170.2348112@ubuntu-linux-20-04-desktop>
 <9DD525D9-DB6D-4888-9266-FB45906A0E0F@arm.com>
 <alpine.DEB.2.22.394.2310051756360.2348112@ubuntu-linux-20-04-desktop>
 <C2DDFAB5-D943-4A24-9C14-AF35BE2A7C90@arm.com>
 <alpine.DEB.2.22.394.2310061741130.3431292@ubuntu-linux-20-04-desktop>
 <1ceb5aa0-d374-4357-964f-1341468d542e@xen.org>
 <alpine.DEB.2.22.394.2310091251080.3431292@ubuntu-linux-20-04-desktop>
 <8c3d7933-c139-49dd-8c62-2d4543176f8f@xen.org>
 <alpine.DEB.2.22.394.2310101635280.3431292@ubuntu-linux-20-04-desktop>
 <80f4df2b-a8b2-4494-94e0-47de55c01597@xen.org>
 <1766b5f3-490c-4bbe-902c-3970c28041a7@xen.org>
 <6BB62AEF-FCE1-412C-87DD-479319623092@arm.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <6BB62AEF-FCE1-412C-87DD-479319623092@arm.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit



On 11/10/2023 11:53, Luca Fancellu wrote:
> 
>>>>
>>>> Luca answered to a similar, more generic, question a few days ago about
>>>> Coverity: https://marc.info/?l=xen-devel&m=169657904027210
>>> Interesting.
>>>>
>>>> So even if we get cppcheck to work like that, we would lose Coverity
>>>> support.
>>> I think my suggestion was probably misunderstood. So let me clarify it. To cover multi-line, we could write the following in Xen:
>>> /* cppcheck tag next-3-lines */
>>> line 1
>>> line 2
>>> line 3
>>> AFAIU Eclair supports multi-line, so the tag would be transformed to there internal solution. For CPPCheck, this could be transformed to:
>>> /* cppcheck tag next-3 lines */
>>> line 1 /* generated cppcheck tag */
>>> line 2 /* generated cppcheck tag */
>>> line 3 /* generated cppcheck tag */
>>> Now, I understand that coverity doesn't support any of the two format. So the only solution would be to add the comment before each line which would impact the line numbers. This is not great, but I think this is acceptable as the context would likely help to find where this is coming from.
>>
>> Just to clarify, here I meant that for coverity, a script before the scan could convert to the multi-line version. So the line change only impact Coverity.
> 
> Hi Julien,
> 
> We’ve tried to avoid that because when the tool insert lines, the resultant report would give wrong lines numbers if any violation is reported after the
> insertion points. So there will be a mismatch between the codebase and the report findings from some point on in the file.

I know. Stefano already pointed that out. But as I wrote, I don't think 
this is a big problem as it only affecte one tool (Coverity) and one 
would still be able to find the exact place based on the context.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Wed Oct 11 12:25:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 11 Oct 2023 12:25:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615466.956698 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqYHc-0000ai-Gi; Wed, 11 Oct 2023 12:25:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615466.956698; Wed, 11 Oct 2023 12: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 1qqYHc-0000ab-CK; Wed, 11 Oct 2023 12:25:48 +0000
Received: by outflank-mailman (input) for mailman id 615466;
 Wed, 11 Oct 2023 12:25: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=6si3=FZ=cloud.com=alejandro.vallejo@srs-se1.protection.inumbo.net>)
 id 1qqYHa-0000a2-NX
 for xen-devel@lists.xenproject.org; Wed, 11 Oct 2023 12:25:46 +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 4c3d659c-6831-11ee-9b0d-b553b5be7939;
 Wed, 11 Oct 2023 14:25:43 +0200 (CEST)
Received: by mail-wr1-x42a.google.com with SMTP id
 ffacd0b85a97d-3247cefa13aso6150593f8f.1
 for <xen-devel@lists.xenproject.org>; Wed, 11 Oct 2023 05:25:43 -0700 (PDT)
Received: from EMEAENGAAD19049.citrite.net
 (default-46-102-197-194.interdsl.co.uk. [46.102.197.194])
 by smtp.gmail.com with ESMTPSA id
 m15-20020adfe94f000000b0031984b370f2sm15346400wrn.47.2023.10.11.05.25.42
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 11 Oct 2023 05:25: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: 4c3d659c-6831-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1697027143; x=1697631943; 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=GP3SHDxG32NUcbGPIwJuxNha0yXtAXfsBO5VDAb7fXE=;
        b=hxnx7rRnheEYyg/O1uvIeeq+Z5VlKhuwYv4RckbmiiyqcvRLoC19u4lAmRqm7zf/Pw
         xEoHMs6uUxfW0cjBInCeIhyPUws/R8kjmmTilh9BAhPtL1lml9vOvw5ilnlnqdSPmmrh
         SH9Wsxm/9PWK3eatjr1WyF9GnkVRuXtEYgpv8=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697027143; x=1697631943;
        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=GP3SHDxG32NUcbGPIwJuxNha0yXtAXfsBO5VDAb7fXE=;
        b=fSQo9LApPcFn1tHr7THDiShxktrCC2BQBLxBNkjETQ6iIrdsD8rljXK5LuqhhjxqWU
         yRdUjCGxLHzOfOjE1uGVesz7vDPIMlYiAmH7nO/5RCxm9Zr7UqqIy627y14AVtwwouw0
         WA9sd4DJldLtbDNCgIVBgiu5Y3UGj5Z7c0GrGO6vpwk6J7/d2V7Tb4So05uO6Wp0ubYe
         LTYNoM8M43Zr8dG8hPiquQRd9c5KJJKUSZt+PMegQwmvQ3EymtmZYx0i5JetlN0+JC9E
         pgkUC4YdzNmG80YTczuMNZzafWR5AafKZfomLQoi9YT4qJfJN4anFVufSTZ2lgBMhMeN
         YZZw==
X-Gm-Message-State: AOJu0YxNBQFp70FLj8BPHd0ksgXJeINVOf2Y+iRlmoWGuy6y9MP3RW0U
	DsZt7KKtijrfLfJTMcLFaMZKoOQOgnTnBYq2xBQ=
X-Google-Smtp-Source: AGHT+IFFv7S0SNFFTbZOS99pcL5n9UBnSJV6Q8VKAXEEfdoCyH888FhZrJTyXke8fL88B+hL13jn4A==
X-Received: by 2002:adf:a4da:0:b0:32d:7615:372b with SMTP id h26-20020adfa4da000000b0032d7615372bmr2804384wrb.12.1697027142918;
        Wed, 11 Oct 2023 05:25:42 -0700 (PDT)
From: Alejandro Vallejo <alejandro.vallejo@cloud.com>
To: Xen-devel <xen-devel@lists.xenproject.org>
Cc: Alejandro Vallejo <alejandro.vallejo@cloud.com>,
	Wei Liu <wl@xen.org>,
	Anthony PERARD <anthony.perard@citrix.com>
Subject: [PATCH] tools/pygrub: Fix pygrub's --entry flag for python3
Date: Wed, 11 Oct 2023 13:25:20 +0100
Message-Id: <20231011122520.1826-1-alejandro.vallejo@cloud.com>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

string.atoi() has been deprecated since Python 2.0, has a big scary warning
in the python2.7 docs and is absent from python3 altogether. int() does the
same thing and is compatible with both.

See https://docs.python.org/2/library/string.html#string.atoi:

Signed-off-by: Alejandro Vallejo <alejandro.vallejo@cloud.com>
---
 tools/pygrub/src/pygrub | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/tools/pygrub/src/pygrub b/tools/pygrub/src/pygrub
index dcdfc04ff0..541e562327 100755
--- a/tools/pygrub/src/pygrub
+++ b/tools/pygrub/src/pygrub
@@ -731,7 +731,7 @@ class Grub:
 def get_entry_idx(cf, entry):
     # first, see if the given entry is numeric
     try:
-        idx = string.atoi(entry)
+        idx = int(entry)
         return idx
     except ValueError:
         pass
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Wed Oct 11 12:40:36 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 11 Oct 2023 12:40:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615470.956708 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqYVp-0004QY-Ok; Wed, 11 Oct 2023 12:40:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615470.956708; Wed, 11 Oct 2023 12: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 1qqYVp-0004QR-K6; Wed, 11 Oct 2023 12:40:29 +0000
Received: by outflank-mailman (input) for mailman id 615470;
 Wed, 11 Oct 2023 12:40: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 1qqYVo-0004QF-Ck; Wed, 11 Oct 2023 12:40: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 1qqYVo-0004LY-98; Wed, 11 Oct 2023 12:40: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 1qqYVn-0005rw-PK; Wed, 11 Oct 2023 12:40:27 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qqYVn-0007WP-OP; Wed, 11 Oct 2023 12:40: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=e4sHSm9jatFWZofQuVmlnmaRXxtq17eq4JHRZ5f0zRI=; b=tLI7HZIVPZFDXCXn393JcArfhf
	577l0xUfz+uVDf5d2eH3PbR6fi0TvjnCVCFcx/xzNy8o6GdfaRW+0Hhl2965aYPDZBT3iP4gNnEKr
	8iSLyTuYIvOllYmLyLGH/GH807RzfD9Gf9Opm9SFdhmbN6NBmfEYWasu6FDv3sDRTq5g=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183335-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-5.4 test] 183335: tolerable trouble: fail/pass/starved - PUSHED
X-Osstest-Failures:
    linux-5.4:test-armhf-armhf-xl-multivcpu:guest-start/debian.repeat:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-credit2:guest-start:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-rtds: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: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-qcow2:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt-qcow2:guest-start/debian.repeat: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-amd64-libvirt: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-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-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-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-armhf-armhf-libvirt: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-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-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-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-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-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
    linux-5.4:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-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-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-xsm:hosts-allocate:starved:nonblocking
X-Osstest-Versions-This:
    linux=02f78c59a0ed312a41d5d76397ea812c7cb19cb2
X-Osstest-Versions-That:
    linux=a140610d8aff1a06d36f8e4e9e66079b561d043d
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 11 Oct 2023 12:40:27 +0000

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

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-xl-multivcpu 18 guest-start/debian.repeat    fail like 183199
 test-armhf-armhf-xl-credit2  14 guest-start                  fail  like 183205
 test-armhf-armhf-xl-rtds     18 guest-start/debian.repeat    fail  like 183220
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183220
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183226
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183226
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 183226
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 183226
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183226
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183226
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183226
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183226
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 183226
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183226
 test-armhf-armhf-libvirt-qcow2 17 guest-start/debian.repeat   fail like 183226
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 183226
 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     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-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-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-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-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-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  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-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-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
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 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-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

version targeted for testing:
 linux                02f78c59a0ed312a41d5d76397ea812c7cb19cb2
baseline version:
 linux                a140610d8aff1a06d36f8e4e9e66079b561d043d

Last test of basis   183226  2023-09-30 15:31:03 Z   10 days
Testing same since   183335  2023-10-10 20:15:05 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Aaron Brown <aaron.f.brown@intel.com>
  Aleksandr Loktionov <aleksandr.loktionov@intel.com>
  Alex Deucher <alexander.deucher@amd.com>
  Alexandra Diupina <adiupina@astralinux.ru>
  Alexei Starovoitov <ast@kernel.org>
  Amanda Liu <amanda.liu@amd.com>
  Andrew Bowers <andrewx.bowers@intel.com>
  Andrew Morton <akpm@linux-foundation.org>
  Andy Shevchenko <andriy.shevchenko@linux.intel.com>
  Anna Schumaker <Anna.Schumaker@Netapp.com>
  Anthony Koo <Anthony.Koo@amd.com>
  Arkadiusz Kubalewski <arkadiusz.kubalewski@intel.com>
  Arnd Bergmann <arnd@arndb.de>
  Artem Chernyshev <artem.chernyshev@red-soft.ru>
  Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
  Ben Wolsieffer <ben.wolsieffer@hefring.com>
  Benjamin Block <bblock@linux.ibm.com>
  Benjamin Gray <bgray@linux.ibm.com>
  Bernard Metzler <bmt@zurich.ibm.com>
  Brian Norris <briannorris@chromium.org>
  Casey Schaufler <casey@schaufler-ca.com>
  Chia-Lin Kao (AceLan) <acelan.kao@canonical.com>
  Christoph Hellwig <hch@lst.de>
  Christophe JAILLET <christophe.jaillet@wanadoo.fr>
  Chuck Lever <chuck.lever@oracle.com>
  Damien Le Moal <dlemoal@kernel.org>
  Daniel Borkmann <daniel@iogearbox.net>
  Daniel P. Berrangé <berrange@redhat.com>
  David Howells <dhowells@redhat.com>
  David S. Miller <davem@davemloft.net>
  David Sterba <dsterba@suse.com>
  Dhruva Gole <d-gole@ti.com>
  Dinghao Liu <dinghao.liu@zju.edu.cn>
  Disha Goel <disgoel@linux.ibm.com>
  Dmitry Monakhov <dmtrmonakhov@yandex-team.ru>
  Dmitry Torokhov <dmitry.torokhov@gmail.com>
  Duje Mihanović <duje.mihanovic@skole.hr>
  Eric Dumazet <edumazet@google.com>
  Fabio Estevam <festevam@denx.de>
  Felix Fietkau <nbd@nbd.name>
  Florian Fainelli <florian.fainelli@broadcom.com>
  Florian Westphal <fw@strlen.de>
  Geert Uytterhoeven <geert+renesas@glider.be>
  Greg Kroah-Hartman <gregkh@linuxfoundation.org>
  Greg Ungerer <gerg@kernel.org>
  Gregory Greenman <gregory.greenman@intel.com>
  Grzegorz Szczurek <grzegorzx.szczurek@intel.com>
  Guenter Roeck <linux@roeck-us.net>
  Gustavo A. R. Silva <gustavoars@kernel.org>
  Hamza Mahfooz <hamza.mahfooz@amd.com>
  Han Xu <han.xu@nxp.com>
  Harshit Mogalapalli <harshit.m.mogalapalli@oracle.com>
  Heiner Kallweit <hkallweit1@gmail.com>
  Helge Deller <deller@gmx.de>
  Himanshu Madhani <hmadhani@marvell.com>
  Hsin-Wei Hung <hsinweih@uci.edu>
  Ilya Dryomov <idryomov@gmail.com>
  Ivan Babrou <ivan@cloudflare.com>
  Ivan Vecera <ivecera@redhat.com>
  Ivanov Mikhail <ivanov.mikhail1@huawei-partners.com>
  Jakub Kicinski <kuba@kernel.org>
  Jan Kara <jack@suse.cz>
  Jeff Kirsher <jeffrey.t.kirsher@intel.com>
  Jeremy Cline <jeremy@jcline.org>
  Jerome Brunet <jbrunet@baylibre.com>
  Jie Wang <wangjie125@huawei.com>
  Jijie Shao <shaojijie@huawei.com>
  Johannes Berg <johannes.berg@intel.com>
  John David Anglin <dave.anglin@bell.net>
  John David Anglin <dave@parisc-linux.org>
  John Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de>
  Johnathan Mantey <johnathanx.mantey@intel.com>
  Jon Hunter <jonathanh@nvidia.com>
  Jordan Rife <jrife@google.com>
  Josef Bacik <josef@toxicpanda.com>
  Jozsef Kadlecsik <kadlec@netfilter.org>
  Juergen Gross <jgross@suse.com>
  Julia Lawall <julia.lawall@inria.fr>
  Junxiao Bi <junxiao.bi@oracle.com>
  Kailang Yang <kailang@realtek.com>
  Kajol Jain <kjain@linux.ibm.com>
  Kalle Valo <kvalo@kernel.org>
  Karen Sornek <karen.sornek@intel.com>
  Kees Cook <keescook@chromium.org>
  Keith Busch <kbusch@kernel.org>
  Kemeng Shi <shikemeng@huaweicloud.com>
  Kevin Hilman <khilman@baylibre.com>
  Konrad Jankowski <konrad0.jankowski@intel.com>
  Konstantin Meskhidze <konstantin.meskhidze@huawei.com>
  Kyle Zeng <zengyhkyle@gmail.com>
  Leon Romanovsky <leon@kernel.org>
  Leon Romanovsky <leonro@nvidia.com>
  Linux Kernel Functional Testing <lkft@linaro.org>
  Lukas Bulwahn <lukas.bulwahn@gmail.com>
  Lukas Czerner <lczerner@redhat.com>
  Mark Brown <broonie@kernel.org>
  Martin K. Petersen <martin.petersen@oracle.com>
  Masahiro Yamada <masahiroy@kernel.org>
  Masami Hiramatsu (Google) <mhiramat@kernel.org>
  Matthias Schiffer <mschiffer@universe-factory.net>
  Mauricio Faria de Oliveira <mfo@canonical.com>
  Max Filippov <jcmvbkbc@gmail.com>
  Michael Ellerman <mpe@ellerman.id.au>
  Mika Westerberg <mika.westerberg@linux.intel.com>
  Mikko Perttunen <mperttunen@nvidia.com>
  Mimi Zohar <zohar@linux.ibm.com>
  Naresh Kamboju <naresh.kamboju@linaro.org>
  Neal Cardwell <ncardwell@google.com>
  Niklas Cassel <niklas.cassel@wdc.com>
  Nikolay Aleksandrov <razor@blackwall.org>
  Nilesh Javali <njavali@marvell.com>
  Oleksandr Tymoshenko <ovt@google.com>
  Pablo Neira Ayuso <pablo@netfilter.org>
  Pan Bian <bianpan2016@163.com>
  Paolo Abeni <pabeni@redhat.com>
  Pin-yen Lin <treapking@chromium.org>
  Pratyush Yadav <ptyadav@amazon.de>
  Qingqing Zhuo <qingqing.zhuo@amd.com>
  Quinn Tran <qutran@marvell.com>
  Rafal Romanowski <rafal.romanowski@intel.com>
  Randy Dunlap <rdunlap@infradead.org>
  Randy Dunlap <rdunlap@infradead.org> # build-tested
  Richard Fitzgerald <rf@opensource.cirrus.com>
  Richard Weinberger <richard@nod.at>
  Roberto Sassu <roberto.sassu@huawei.com>
  Rodrigo Siqueira <Rodrigo.Siqueira@amd.com>
  Ryusuke Konishi <konishi.ryusuke@gmail.com>
  Sabrina Dubroca <sd@queasysnail.net>
  Sasha Levin <sashal@kernel.org>
  Shay Drory <shayd@nvidia.com>
  Shengjiu Wang <shengjiu.wang@nxp.com>
  Shigeru Yoshida <syoshida@redhat.com>
  Shuah Khan <skhan@linuxfoundation.org>
  Stanislav Fomichev <sdf@google.com>
  Stefan Assmann <sassmann@kpanic.de>
  Stephen Boyd <sboyd@kernel.org>
  Steven Rostedt (Google) <rostedt@goodmis.org>
  Sylwia Wnuczko <sylwia.wnuczko@intel.com>
  Szuying Chen <chensiying21@gmail.com>
  Szuying Chen <Chloe_Chen@asmedia.com.tw>
  Takashi Iwai <tiwai@suse.de>
  Theodore Ts'o <tytso@mit.edu>
  Thomas Bogendoerfer <tsbogend@alpha.franken.de>
  Thomas Zimmermann <tzimmermann@suse.de>
  Timo Alho <talho@nvidia.com>
  Toke Høiland-Jørgensen <toke@redhat.com>
  Tony Brelinski <tony.brelinski@intel.com>
  Tony Lindgren <tony@atomide.com>
  Tony Nguyen <anthony.l.nguyen@intel.com>
  Trond Myklebust <trond.myklebust@hammerspace.com>
  Vishal Goel <vishal.goel@samsung.com>
  Wang Jianchao <wangjianchao@kuaishou.com>
  Wenhua Lin <Wenhua.Lin@unisoc.com>
  Werner Sembach <wse@tuxedocomputers.com>
  Wim Van Sebroeck <wim@linux-watchdog.org>
  Wolfram Sang <wsa@kernel.org>
  Xiaoke Wang <xkernel.wang@foxmail.com>
  Xin Long <lucien.xin@gmail.com>
  Zheng Yejian <zhengyejian1@huawei.com>
  Zhihao Cheng <chengzhihao1@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                                      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-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                                  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                                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                                      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 :

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
   a140610d8aff..02f78c59a0ed  02f78c59a0ed312a41d5d76397ea812c7cb19cb2 -> tested/linux-5.4


From xen-devel-bounces@lists.xenproject.org Wed Oct 11 12:47:00 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 11 Oct 2023 12:47:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615478.956717 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqYc3-0005pD-HD; Wed, 11 Oct 2023 12:46:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615478.956717; Wed, 11 Oct 2023 12: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 1qqYc3-0005p6-Ea; Wed, 11 Oct 2023 12:46:55 +0000
Received: by outflank-mailman (input) for mailman id 615478;
 Wed, 11 Oct 2023 12:46: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=uJaT=FZ=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qqYc2-0005p0-Ao
 for xen-devel@lists.xenproject.org; Wed, 11 Oct 2023 12:46:54 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 40499a5c-6834-11ee-9b0d-b553b5be7939;
 Wed, 11 Oct 2023 14:46:52 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id F22C64EE0744;
 Wed, 11 Oct 2023 14:46: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: 40499a5c-6834-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>,
	Simone Ballarin <simone.ballarin@bugseng.com>,
	Doug Goldstein <cardoe@cardoe.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Julien Grall <julien@xen.org>,
	Wei Liu <wl@xen.org>
Subject: [XEN PATCH][for-4.19 v2 0/1] address violations of MISRA C:2012 Rule 11.9
Date: Wed, 11 Oct 2023 14:46:45 +0200
Message-Id: <cover.1696948320.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Rule 11.9 forbids the usage of '0' as a null pointer constant, therefore uses of
this pattern have been amended. One exception, recorded in deviations.rst, is in
__ACCESS_ONCE to do a scalar type check.

Changes in v2:
- dropped patch 2, as it has already been committed to [1]
- rebased against [2] to insert the deviation record in the newly created
  deviations.rst

[1] https://gitlab.com/xen-project/people/andyhhp/xen/-/commits/for-next
[2] https://marc.info/?l=xen-devel&m=169686613720371&w=2

Nicola Vetrini (1):
  xen: introduce a deviation for Rule 11.9

 automation/eclair_analysis/ECLAIR/deviations.ecl | 9 +++++++++
 docs/misra/deviations.rst                        | 5 +++++
 xen/include/xen/compiler.h                       | 5 ++++-
 xen/include/xen/kernel.h                         | 2 +-
 4 files changed, 19 insertions(+), 2 deletions(-)

--
2.34.1


From xen-devel-bounces@lists.xenproject.org Wed Oct 11 12:47:00 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 11 Oct 2023 12:47:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615479.956728 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqYc5-00064k-OG; Wed, 11 Oct 2023 12:46:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615479.956728; Wed, 11 Oct 2023 12: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 1qqYc5-00064b-LB; Wed, 11 Oct 2023 12:46:57 +0000
Received: by outflank-mailman (input) for mailman id 615479;
 Wed, 11 Oct 2023 12:46: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=uJaT=FZ=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qqYc3-0005p0-JH
 for xen-devel@lists.xenproject.org; Wed, 11 Oct 2023 12:46:55 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 41602134-6834-11ee-9b0d-b553b5be7939;
 Wed, 11 Oct 2023 14:46:54 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id DCCF84EE0748;
 Wed, 11 Oct 2023 14:46: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: 41602134-6834-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>,
	Simone Ballarin <simone.ballarin@bugseng.com>,
	Doug Goldstein <cardoe@cardoe.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Julien Grall <julien@xen.org>,
	Wei Liu <wl@xen.org>
Subject: [XEN PATCH][for-4.19 v2 1/1] xen: introduce a deviation for Rule 11.9
Date: Wed, 11 Oct 2023 14:46:46 +0200
Message-Id: <c684c36402e6740472fa91d73436ca5790e5e109.1696948320.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1696948320.git.nicola.vetrini@bugseng.com>
References: <cover.1696948320.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The constant 0 is used instead of NULL in '__ACCESS_ONCE' as a
compile-time check to detect non-scalar types; its usage for this
purpose is deviated.

Furthermore, the 'access_field' and 'typeof_field' macros are
introduced as a general way to deal with accesses to structs
without declaring a struct variable.

No functional change intended.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
---
Changes in v2:
- added entry in deviations.rst
---
 automation/eclair_analysis/ECLAIR/deviations.ecl | 9 +++++++++
 docs/misra/deviations.rst                        | 5 +++++
 xen/include/xen/compiler.h                       | 5 ++++-
 xen/include/xen/kernel.h                         | 2 +-
 4 files changed, 19 insertions(+), 2 deletions(-)

diff --git a/automation/eclair_analysis/ECLAIR/deviations.ecl b/automation/eclair_analysis/ECLAIR/deviations.ecl
index fa56e5c00a27..28d9c37bedb2 100644
--- a/automation/eclair_analysis/ECLAIR/deviations.ecl
+++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
@@ -246,6 +246,15 @@ constant expressions are required.\""
   "any()"}
 -doc_end
 
+#
+# Series 11
+#
+
+-doc_begin="This construct is used to check if the type is scalar, and for this purpose the use of 0 as a null pointer constant is deliberate."
+-config=MC3R1.R11.9,reports+={deliberate, "any_area(any_loc(any_exp(macro(^__ACCESS_ONCE$))))"
+}
+-doc_end
+
 #
 # Series 13
 #
diff --git a/docs/misra/deviations.rst b/docs/misra/deviations.rst
index ee7aed0609d2..1b00e4e3e9b7 100644
--- a/docs/misra/deviations.rst
+++ b/docs/misra/deviations.rst
@@ -199,6 +199,11 @@ Deviations related to MISRA C:2012 Rules:
        See automation/eclair_analysis/deviations.ecl for the full explanation.
      - Tagged as `safe` for ECLAIR.
 
+   * - R11.9
+     - __ACCESS_ONCE uses a 0 as a null pointer constant to check if a type is
+       scalar, therefore its usage for this purpose is allowed.
+     - Tagged as `deliberate` for ECLAIR.
+
    * - R13.5
      - All developers and reviewers can be safely assumed to be well aware of
        the short-circuit evaluation strategy for logical operators.
diff --git a/xen/include/xen/compiler.h b/xen/include/xen/compiler.h
index dd99e573083f..15be9a750b23 100644
--- a/xen/include/xen/compiler.h
+++ b/xen/include/xen/compiler.h
@@ -109,13 +109,16 @@
 
 #define offsetof(a,b) __builtin_offsetof(a,b)
 
+/* Access the field of structure type, without defining a local variable */
+#define access_field(type, member) (((type *)NULL)->member)
+#define typeof_field(type, member) typeof(access_field(type, member))
 /**
  * sizeof_field(TYPE, MEMBER)
  *
  * @TYPE: The structure containing the field of interest
  * @MEMBER: The field to return the size of
  */
-#define sizeof_field(TYPE, MEMBER) sizeof((((TYPE *)0)->MEMBER))
+#define sizeof_field(TYPE, MEMBER) sizeof(access_field(TYPE, MEMBER))
 
 #if !defined(__STDC_VERSION__) || __STDC_VERSION__ < 201112L
 #define alignof __alignof__
diff --git a/xen/include/xen/kernel.h b/xen/include/xen/kernel.h
index 46b3c9c02625..2c5ed7736c99 100644
--- a/xen/include/xen/kernel.h
+++ b/xen/include/xen/kernel.h
@@ -51,7 +51,7 @@
  *
  */
 #define container_of(ptr, type, member) ({                      \
-        typeof( ((type *)0)->member ) *__mptr = (ptr);          \
+        typeof_field(type, member) *__mptr = (ptr);             \
         (type *)( (char *)__mptr - offsetof(type,member) );})
 
 /*
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Wed Oct 11 12:50:12 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 11 Oct 2023 12:50:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615488.956738 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqYfC-00082L-6K; Wed, 11 Oct 2023 12:50:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615488.956738; Wed, 11 Oct 2023 12:50: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 1qqYfC-00082D-3Q; Wed, 11 Oct 2023 12:50:10 +0000
Received: by outflank-mailman (input) for mailman id 615488;
 Wed, 11 Oct 2023 12: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=uJaT=FZ=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qqYfA-00080o-RY
 for xen-devel@lists.xenproject.org; Wed, 11 Oct 2023 12:50:08 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id b47543f6-6834-11ee-9b0d-b553b5be7939;
 Wed, 11 Oct 2023 14:50:07 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id AF2754EE0747;
 Wed, 11 Oct 2023 14:50: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: b47543f6-6834-11ee-9b0d-b553b5be7939
MIME-Version: 1.0
Date: Wed, 11 Oct 2023 14:50:06 +0200
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
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>
Subject: Re: [PATCH for-4.19] x86/cpu-policy: Adjust
 CPUID_MAX_SERIALISED_LEAVES to placate MISRA
In-Reply-To: <20231010095748.1205365-1-andrew.cooper3@citrix.com>
References: <20231010095748.1205365-1-andrew.cooper3@citrix.com>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <474253da350796cfd8c212fcc7d81087@bugseng.com>
X-Sender: nicola.vetrini@bugseng.com
Organization: BUGSENG s.r.l.
Content-Type: text/plain; charset=UTF-8;
 format=flowed
Content-Transfer-Encoding: 8bit

On 10/10/2023 11:57, Andrew Cooper wrote:
> MISRA doesn't like !!CONST being used in place of a 1 (Rule 10.1).  
> Update the
> expression to just be a plain 1, which still matches the description.
> 
> No functional change.
> 
> 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: Nicola Vetrini <nicola.vetrini@bugseng.com>
> 
> After considering the comment several times, I've decided to leave it 
> as is.
> It's slightly awkward grammar but it's ok.
> ---
>  xen/include/xen/lib/x86/cpu-policy.h | 15 ++++++++-------
>  1 file changed, 8 insertions(+), 7 deletions(-)
> 
> diff --git a/xen/include/xen/lib/x86/cpu-policy.h
> b/xen/include/xen/lib/x86/cpu-policy.h
> index bab3eecda6c1..d5e447e9dc06 100644
> --- a/xen/include/xen/lib/x86/cpu-policy.h
> +++ b/xen/include/xen/lib/x86/cpu-policy.h
> @@ -100,13 +100,14 @@ const char *x86_cpuid_vendor_to_str(unsigned int 
> vendor);
>   * interaction with the toolstack.  (Sum of all leaves in each union, 
> less the
>   * entries in basic which sub-unions hang off of.)
>   */
> -#define CPUID_MAX_SERIALISED_LEAVES                     \
> -    (CPUID_GUEST_NR_BASIC +                             \
> -     CPUID_GUEST_NR_FEAT   - !!CPUID_GUEST_NR_FEAT +    \
> -     CPUID_GUEST_NR_CACHE  - !!CPUID_GUEST_NR_CACHE +   \
> -     CPUID_GUEST_NR_TOPO   - !!CPUID_GUEST_NR_TOPO +    \
> -     CPUID_GUEST_NR_XSTATE - !!CPUID_GUEST_NR_XSTATE +  \
> -     CPUID_GUEST_NR_EXTD + 2 /* hv_limit and hv2_limit */ )
> +#define CPUID_MAX_SERIALISED_LEAVES             \
> +    (CPUID_GUEST_NR_BASIC +                     \
> +     CPUID_GUEST_NR_FEAT   - 1 +                \
> +     CPUID_GUEST_NR_CACHE  - 1 +                \
> +     CPUID_GUEST_NR_TOPO   - 1 +                \
> +     CPUID_GUEST_NR_XSTATE - 1 +                \
> +     CPUID_GUEST_NR_EXTD +                      \
> +     2 /* hv_limit and hv2_limit */ )
> 
>  /* Maximum number of MSRs written when serialising a cpu_policy. */
>  #define MSR_MAX_SERIALISED_ENTRIES 2
> 
> base-commit: c035151902689aa5a3765aeb16fa52755917b9ca

Looks good to me.

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


From xen-devel-bounces@lists.xenproject.org Wed Oct 11 13:04:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 11 Oct 2023 13:04:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615494.956748 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqYsW-0002D0-BB; Wed, 11 Oct 2023 13:03:56 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615494.956748; Wed, 11 Oct 2023 13:03: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 1qqYsW-0002Ct-8C; Wed, 11 Oct 2023 13:03:56 +0000
Received: by outflank-mailman (input) for mailman id 615494;
 Wed, 11 Oct 2023 13:03: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=uJaT=FZ=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qqYsV-0002Cf-7y
 for xen-devel@lists.xenproject.org; Wed, 11 Oct 2023 13:03:55 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id a17bf212-6836-11ee-98d4-6d05b1d4d9a1;
 Wed, 11 Oct 2023 15:03:54 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id 883F14EE0744;
 Wed, 11 Oct 2023 15:03: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: a17bf212-6836-11ee-98d4-6d05b1d4d9a1
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>
Subject: [XEN PATCH][for-4.19] xen/include: make enum perfcounter anonymous
Date: Wed, 11 Oct 2023 15:03:49 +0200
Message-Id: <d739fefde6f142cec10899ed2c5eb81f91618bf0.1697028983.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Using enumerators declared in a named enum, such as the one modified,
as operands to arithmetic operators is not allowed by MISRA C:2012 Rule 10.1.
The enumerators of an anonymous enum can be used instead.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
---
This violation manifeststs itself, for instance, in all uses of macro
'perfc_incra' from xen/include/xen/perfc.h, because the expansion
contains an arithmetic operation on two enum constants from enum perfcounter.

( (*nr) <= PERFC_LAST_hypercalls - PERFC_hypercalls ?  [...]

---
 docs/misra/rules.rst    | 3 +++
 xen/include/xen/perfc.h | 2 +-
 2 files changed, 4 insertions(+), 1 deletion(-)

diff --git a/docs/misra/rules.rst b/docs/misra/rules.rst
index 3139ca7ae6dd..26c3ff819948 100644
--- a/docs/misra/rules.rst
+++ b/docs/misra/rules.rst
@@ -341,6 +341,9 @@ maintainers if you want to suggest a change.
            compilers' extensions)
          - Implicit conversions to boolean for conditionals (?: if while
            for) and logical operators (! || &&)
+         - The essential type model allows the constants defined by anonymous
+           enums (e.g., enum { A, B, C }) to be used as operands to arithmetic
+           operators, as they have a signed essential type.

    * - `Rule 10.2 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/R_10_02.c>`_
      - Required
diff --git a/xen/include/xen/perfc.h b/xen/include/xen/perfc.h
index 7c5ce537bd02..96022c07481e 100644
--- a/xen/include/xen/perfc.h
+++ b/xen/include/xen/perfc.h
@@ -39,7 +39,7 @@
 #define PERFSTATUS       PERFCOUNTER
 #define PERFSTATUS_ARRAY PERFCOUNTER_ARRAY

-enum perfcounter {
+enum {
 #include <xen/perfc_defn.h>
 	NUM_PERFCOUNTERS
 };
--
2.34.1


From xen-devel-bounces@lists.xenproject.org Wed Oct 11 13:04:35 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 11 Oct 2023 13:04:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615497.956758 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqYt9-0002bx-K8; Wed, 11 Oct 2023 13:04:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615497.956758; Wed, 11 Oct 2023 13:04: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 1qqYt9-0002bq-G4; Wed, 11 Oct 2023 13:04:35 +0000
Received: by outflank-mailman (input) for mailman id 615497;
 Wed, 11 Oct 2023 13:04: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 1qqYt8-0002aK-7x
 for xen-devel@lists.xenproject.org; Wed, 11 Oct 2023 13:04: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 1qqYt7-00052M-1p; Wed, 11 Oct 2023 13:04:33 +0000
Received: from [15.248.2.150] (helo=[10.24.67.30])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qqYt6-0004uD-PQ; Wed, 11 Oct 2023 13: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>
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=mLIPEpNJeklH/hQJe4puXODD1fFnim0FDM4CsuYjTi4=; b=fCFyFda1XhI16L0Jb/rfQUWng5
	aNZT85HQIRzJQpep9wH+hoPbsQjCZ0xFtTjuRKNQgDzxFGnZroLrOz/vaXsMdI4+1ySotuNaEh51o
	sebrk477yE/l75STboVf22E/Uaa6ppj9pSsuZsrWEeY5+MnCxafm+CWyqYylJAOoezMg=;
Message-ID: <781c9b5c-1301-4a23-8c13-fba62c844b03@xen.org>
Date: Wed, 11 Oct 2023 14:04:30 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN PATCH][for-4.19 v2 2/2] docs/misra: add deviations.rst to
 document additional deviations.
Content-Language: en-GB
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,
 jbeulich@suse.com, andrew.cooper3@citrix.com, roger.pau@citrix.com,
 George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>,
 Henry.Wang@arm.com
References: <cover.1696865051.git.nicola.vetrini@bugseng.com>
 <ccda90b6be8f6977cff14ae65749ffc7fa429c3c.1696865051.git.nicola.vetrini@bugseng.com>
 <alpine.DEB.2.22.394.2310091811190.3431292@ubuntu-linux-20-04-desktop>
 <a5635fc5e51518c205d776ac8a9600ba@bugseng.com>
 <alpine.DEB.2.22.394.2310101524080.3431292@ubuntu-linux-20-04-desktop>
From: Julien Grall <julien@xen.org>
In-Reply-To: <alpine.DEB.2.22.394.2310101524080.3431292@ubuntu-linux-20-04-desktop>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi,

On 10/10/2023 23:27, Stefano Stabellini wrote:
> On Tue, 10 Oct 2023, Nicola Vetrini wrote:
>> On 10/10/2023 03:19, Stefano Stabellini wrote:
>>> +Henry
>>>
>>> On Mon, 9 Oct 2023, Nicola Vetrini wrote:
>>>> This file contains the deviation that are not marked by
>>>> a deviation comment, as specified in
>>>> docs/misra/documenting-violations.rst.
>>>>
>>>> Suggested-by: Stefano Stabellini <sstabellini@kernel.org>
>>>> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
>>>
>>> This is great! Thank you so much!
>>>
>>> I have a few questions below but even as-is it is way better than
>>> nothing. I think we should add this for 4.18
>>>
>>>
>>>> ---
>>>>   docs/index.rst            |   1 +
>>>>   docs/misra/deviations.rst | 240 ++++++++++++++++++++++++++++++++++++++
>>>>   docs/misra/rules.rst      |   2 +-
>>>>   3 files changed, 242 insertions(+), 1 deletion(-)
>>>>   create mode 100644 docs/misra/deviations.rst
>>>>
>>>> diff --git a/docs/index.rst b/docs/index.rst
>>>> index 2c47cfa999f2..f3f779f89ce5 100644
>>>> --- a/docs/index.rst
>>>> +++ b/docs/index.rst
>>>> @@ -63,6 +63,7 @@ Xen hypervisor code.
>>>>      :maxdepth: 2
>>>>
>>>>      misra/rules
>>>> +   misra/deviations
>>>>
>>>>
>>>>   Miscellanea
>>>> diff --git a/docs/misra/deviations.rst b/docs/misra/deviations.rst
>>>> new file mode 100644
>>>> index 000000000000..19743e34ce03
>>>> --- /dev/null
>>>> +++ b/docs/misra/deviations.rst
>>>> @@ -0,0 +1,240 @@
>>>> +.. SPDX-License-Identifier: CC-BY-4.0
>>>> +
>>>> +MISRA C deviations for Xen
>>>> +==========================
>>>> +
>>>> +The following is the list of MISRA C:2012 deviations for the Xen codebase
>>>> that
>>>> +are not covered by a `SAF-x-safe` or `SAF-x-false-positive-<tool>`
>>>> comment, as
>>>> +specified in docs/misra/documenting-violations.rst; the lack of
>>>> +such comments is usually due to the excessive clutter they would bring to
>>>> the
>>>> +codebase or the impossibility to express such a deviation (e.g., if it's
>>>> +composed of several conditions).
>>>> +
>>>> +Deviations related to MISRA C:2012 Directives:
>>>> +----------------------------------------------
>>>> +
>>>> +.. list-table::
>>>> +   :header-rows: 1
>>>> +
>>>> +   * - Directive identifier
>>>> +     - Justification
>>>> +     - Notes
>>>> +
>>>> +   * - D4.3
>>>> +     - Accepted for the ARM64 codebase
>>>> +     - Tagged as `disapplied` for ECLAIR on any other violation report.
>>>
>>> This mean it has been applied for ARM64 but not x86, right?
>>>
>>>
>>
>> Yes.
>>
>>>> +   * - D4.3
>>>> +     - The inline asm in 'xen/arch/arm/arm64/lib/bitops.c' is tightly
>>>> coupled
>>>> +       with the surronding C code that acts as a wrapper, so it has been
>>>> decided
>>>> +       not to add an additional encapsulation layer.
>>>> +     - Tagged as `deliberate` for ECLAIR.
>>>> +
>>>> +Deviations related to MISRA C:2012 Rules:
>>>> +-----------------------------------------
>>>> +
>>>> +.. list-table::
>>>> +   :header-rows: 1
>>>> +
>>>> +   * - Rule identifier
>>>> +     - Justification
>>>> +     - Notes
>>>> +
>>>> +   * - R2.1
>>>> +     - The compiler implementation guarantees that the unreachable code
>>>> is
>>>> +       removed. Constant expressions and unreachable branches of if and
>>>> switch
>>>> +       statements are expected.
>>>> +     - Tagged as `safe` for ECLAIR.
>>>> +
>>>> +   * - R2.1
>>>> +     - Some functions are intended not to be referenced.
>>>> +     - Tagged as `deliberate` for ECLAIR.
>>>
>>> What does it mean "some functions" in this case? Should we list which
>>> functions?
>>>
>>
>> Well, there are a lot, typically resulting from build configurations that do
>> not
>> use them, or because they are used only in asm code. I can mention these
>> reasons in the
>> document, to make it easier to understand.
> 
> Yes, I think we need to clarify further this point, because saying "Some
> functions" doesn't help the reader understand:
> - whether all functions can be not referenced
> - which subset of functions can be not referenced
> 
> How to distinguish between? How do we know whether a certain patch is
> violating the rule or not?
> 
> If there is a clear list of functions that can be not referenced, then
> we should list them here. If there is a methodology we can use to
> distinguish between them (e.g. functions called from asm only) then we
> can write the methodology here. Either way it is fine as long as the
> criteria to know if it is OK if a function is not referenced is clear.

Aren't they more or less the one we tagged with SAF-1-safe because there 
were no prototype? If so, we could use the same tags.

We could introduce an extra tags for the others. An alternative would be 
to add an attribute (e.g. asmcall) to mark each function used by assembly.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Wed Oct 11 13:06:05 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 11 Oct 2023 13:06:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615502.956768 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqYua-0003Kg-TG; Wed, 11 Oct 2023 13:06:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615502.956768; Wed, 11 Oct 2023 13: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 1qqYua-0003KZ-QJ; Wed, 11 Oct 2023 13:06:04 +0000
Received: by outflank-mailman (input) for mailman id 615502;
 Wed, 11 Oct 2023 13:06: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=uJaT=FZ=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qqYuY-0003KB-Tp
 for xen-devel@lists.xenproject.org; Wed, 11 Oct 2023 13:06:02 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id ed2b343b-6836-11ee-9b0d-b553b5be7939;
 Wed, 11 Oct 2023 15:06:01 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id C011B4EE0747;
 Wed, 11 Oct 2023 15:06: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: ed2b343b-6836-11ee-9b0d-b553b5be7939
MIME-Version: 1.0
Date: Wed, 11 Oct 2023 15:06:00 +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>
Subject: Re: [XEN PATCH][for-4.19] xen/include: make enum perfcounter
 anonymous
In-Reply-To: <d739fefde6f142cec10899ed2c5eb81f91618bf0.1697028983.git.nicola.vetrini@bugseng.com>
References: <d739fefde6f142cec10899ed2c5eb81f91618bf0.1697028983.git.nicola.vetrini@bugseng.com>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <43412e2e1c5c4bce181cb624e4201aa9@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 11/10/2023 15:03, Nicola Vetrini wrote:
> Using enumerators declared in a named enum, such as the one modified,
> as operands to arithmetic operators is not allowed by MISRA C:2012 Rule 
> 10.1.
> The enumerators of an anonymous enum can be used instead.
> 
> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
> ---
> This violation manifeststs itself, for instance, in all uses of macro
> 'perfc_incra' from xen/include/xen/perfc.h, because the expansion
> contains an arithmetic operation on two enum constants from enum 
> perfcounter.
> 
> ( (*nr) <= PERFC_LAST_hypercalls - PERFC_hypercalls ?  [...]
> 
> ---
>  docs/misra/rules.rst    | 3 +++
>  xen/include/xen/perfc.h | 2 +-
>  2 files changed, 4 insertions(+), 1 deletion(-)
> 
> diff --git a/docs/misra/rules.rst b/docs/misra/rules.rst
> index 3139ca7ae6dd..26c3ff819948 100644
> --- a/docs/misra/rules.rst
> +++ b/docs/misra/rules.rst
> @@ -341,6 +341,9 @@ maintainers if you want to suggest a change.
>             compilers' extensions)
>           - Implicit conversions to boolean for conditionals (?: if 
> while
>             for) and logical operators (! || &&)
> +         - The essential type model allows the constants defined by 
> anonymous
> +           enums (e.g., enum { A, B, C }) to be used as operands to 
> arithmetic
> +           operators, as they have a signed essential type.
> 
>     * - `Rule 10.2
> <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/R_10_02.c>`_
>       - Required
> diff --git a/xen/include/xen/perfc.h b/xen/include/xen/perfc.h
> index 7c5ce537bd02..96022c07481e 100644
> --- a/xen/include/xen/perfc.h
> +++ b/xen/include/xen/perfc.h
> @@ -39,7 +39,7 @@
>  #define PERFSTATUS       PERFCOUNTER
>  #define PERFSTATUS_ARRAY PERFCOUNTER_ARRAY
> 
> -enum perfcounter {
> +enum {
>  #include <xen/perfc_defn.h>
>  	NUM_PERFCOUNTERS
>  };
> --
> 2.34.1

See [1] for a discussion on the possible alternatives to this approach.

[1] https://marc.info/?l=xen-devel&m=169658364229813

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


From xen-devel-bounces@lists.xenproject.org Wed Oct 11 13:22:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 11 Oct 2023 13:22:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615508.956777 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqZAj-0007X4-7r; Wed, 11 Oct 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 615508.956777; Wed, 11 Oct 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 1qqZAj-0007Wx-5E; Wed, 11 Oct 2023 13:22:45 +0000
Received: by outflank-mailman (input) for mailman id 615508;
 Wed, 11 Oct 2023 13: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=3gNM=FZ=gmail.com=jandryuk@srs-se1.protection.inumbo.net>)
 id 1qqZAh-0007Wq-Cj
 for xen-devel@lists.xenproject.org; Wed, 11 Oct 2023 13:22:43 +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 41d9dae3-6839-11ee-98d4-6d05b1d4d9a1;
 Wed, 11 Oct 2023 15:22:42 +0200 (CEST)
Received: by mail-ed1-x529.google.com with SMTP id
 4fb4d7f45d1cf-533d31a8523so12125259a12.1
 for <xen-devel@lists.xenproject.org>; Wed, 11 Oct 2023 06:22: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: 41d9dae3-6839-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1697030562; x=1697635362; 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=gwj/RqxGPkzuOtK1UNPuFzJw65gTRa5z9/nkxrTcS64=;
        b=UGevgIhq6TZq/6Pd3xbJqHUVfpaGdo+MQKia7crn9JTAYD8TNMeEPAqQXgslGMi/QY
         IgKjFRFTsRm2wZH8y8jUIopjgR8J2vBPm7QK8z3VFuRvSnGA7k+O0oyPCjCn2p+hdOkZ
         t8K798Wx+VuPBA6FCB5DjZAAJqshkkPUiXXoU2OH8oda/4/yGjcSzqKAZ5ydp7vmUGNs
         YtNfZ7E1CH4u2zoTMiVgnAdnZTrZ8KjuFf3gP2ywgr6/6HFu7nDus+KX8VfBtOrzwhHX
         zw2wi2PG8iYDOiVKpot1uTuAzfQA9xivjrzzJMW753gh0gAsHy5mP8Hm9aRYCb/BcUcF
         Dxyg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697030562; x=1697635362;
        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=gwj/RqxGPkzuOtK1UNPuFzJw65gTRa5z9/nkxrTcS64=;
        b=B8DVihdqfqnHQFokCTKQ1q/3mqChbzuDP3KywaZutnp+ocXjP05SL+ddwsPObh0pce
         yhHredrJb4okm8QYIfJm+jpmyeM86GPIvStfHy7Rp4aITrPQgKWK7zroFfLnccPRGVqW
         j5V3V54UJcXvSrn/+Sqh1z6InikVe0VNsNg4nULeqnmnKarmtUIqhU38XJhwBK9eosXC
         0/7YBa+ubo6C7la295yN7lwbIGLlVuGA3QHmgT1D91Ecq0WCqOI1lju8lcJ/CDVzmq05
         jRZV09RpB8J696pMC8XjyBszrykVxKhq6MRq8oZwXa8/YdmyhgZjHS287+I6wChEFTga
         GLxQ==
X-Gm-Message-State: AOJu0YylqFH0nNlKGa46V6TfeTw54IPOt5N+iDHLF6BWUkmYtC/ThtHn
	+2i5GNJSwIdkLFSCeuRHyJHszuSt+SFixEUmvgE=
X-Google-Smtp-Source: AGHT+IFjwPBdU24OWt+9rcNzyGAp61bEypdrM0CvK15jqMZomnmNG0qOl212jrCcTf9kSexYP8Ppu/QQjvKHxhdmt1k=
X-Received: by 2002:a05:6402:60e:b0:523:33eb:1103 with SMTP id
 n14-20020a056402060e00b0052333eb1103mr19266775edv.14.1697030561468; Wed, 11
 Oct 2023 06:22:41 -0700 (PDT)
MIME-Version: 1.0
References: <ZSRMosLuJJS5Y/io@work>
In-Reply-To: <ZSRMosLuJJS5Y/io@work>
From: Jason Andryuk <jandryuk@gmail.com>
Date: Wed, 11 Oct 2023 09:22:29 -0400
Message-ID: <CAKf6xpu4vQSKFykwygcCtnnJtcQbgVTuaNvAwDLeV8cZAectHg@mail.gmail.com>
Subject: Re: [PATCH][next] xen/xenbus: Add __counted_by for struct read_buffer
 and use struct_size()
To: "Gustavo A. R. Silva" <gustavoars@kernel.org>
Cc: Juergen Gross <jgross@suse.com>, Stefano Stabellini <sstabellini@kernel.org>, 
	Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>, xen-devel@lists.xenproject.org, 
	linux-kernel@vger.kernel.org, linux-hardening@vger.kernel.org
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Mon, Oct 9, 2023 at 2:55=E2=80=AFPM Gustavo A. R. Silva
<gustavoars@kernel.org> wrote:
>
> Prepare for the coming implementation by GCC and Clang of the __counted_b=
y
> attribute. Flexible array members annotated with __counted_by can have
> their accesses bounds-checked at run-time via CONFIG_UBSAN_BOUNDS (for
> array indexing) and CONFIG_FORTIFY_SOURCE (for strcpy/memcpy-family
> functions).
>
> While there, use struct_size() helper, instead of the open-coded
> version, to calculate the size for the allocation of the whole
> flexible structure, including of course, the flexible-array member.
>
> This code was found with the help of Coccinelle, and audited and
> fixed manually.
>
> Signed-off-by: Gustavo A. R. Silva <gustavoars@kernel.org>

Reviewed-by: Jason Andryuk <jandryuk@gmail.com>


From xen-devel-bounces@lists.xenproject.org Wed Oct 11 13:39:28 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 11 Oct 2023 13:39:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615513.956788 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqZQo-0002Z1-QV; Wed, 11 Oct 2023 13:39:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615513.956788; Wed, 11 Oct 2023 13:39: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 1qqZQo-0002Yu-N6; Wed, 11 Oct 2023 13:39:22 +0000
Received: by outflank-mailman (input) for mailman id 615513;
 Wed, 11 Oct 2023 13:39: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=kH0+=FZ=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qqZQn-0002Yn-ML
 for xen-devel@lists.xenproject.org; Wed, 11 Oct 2023 13:39:21 +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 93bbbe1b-683b-11ee-9b0d-b553b5be7939;
 Wed, 11 Oct 2023 15:39:18 +0200 (CEST)
Received: by mail-lf1-x130.google.com with SMTP id
 2adb3069b0e04-5041335fb9cso8721656e87.0
 for <xen-devel@lists.xenproject.org>; Wed, 11 Oct 2023 06:39:18 -0700 (PDT)
Received: from [0.0.0.0] ([2001:41d0:8:52b7::])
 by smtp.gmail.com with ESMTPSA id
 az14-20020a05620a170e00b0077731466526sm948868qkb.70.2023.10.11.06.39.12
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 11 Oct 2023 06:39: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: 93bbbe1b-683b-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1697031558; x=1697636358; 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=kfpurETULtVfAqI3559s+GjLE0vHRUSyFH46jt1MhRI=;
        b=JAJ0AYiO1ZNmBjV1kAleMKwEaILL8yknHqLJZlQ7sn0jKbtU1WMENiLi1VvumvtgPW
         aXwCY6FzwKzwgS9Av3gOPbq0Y2R8OPRW4gZoXkBuGUE431H8NzzOVCk56PZixZDW/T9x
         z6wUlw3//ri6RD8ZQRNsS4bWzNIi/ViS1C2K4=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697031558; x=1697636358;
        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=kfpurETULtVfAqI3559s+GjLE0vHRUSyFH46jt1MhRI=;
        b=Tdy/pUOQOW9rcTJqpWj41i0amIflL8oViFH7AXX+G3R8UvaGA2PZvApAm3OhZR05b2
         fqcgA2iG2QgevfFct6ALhlZQ1kciCxbPHaLxgz/cKodnxkNdIl19MvnCbWcn2B6ZurfJ
         /Ltft1PM9iI3K6IBG6QDGCNhUqEqPo7Wsx4tjX7gqEK6QHtrqri7m+uOzuSP/7fjPgY4
         8SQGxdhnGHu5V1dqtLQcWuBche9MmgNME5XzWGzDjKIQ/eEUx28FQIqdAE3H0ZdeacvN
         9Z/k8zOZNBzzfctwT3M8lxnHUew3ktvPKNBWJqh2hRpBx1J+L2BHF8YOuMyEMN0xJ108
         u8Tw==
X-Gm-Message-State: AOJu0YyD2Bdj5ZMvmlRN7jKDE9TeLEpaJDheLg5y3dFUaDS7zALvpop0
	X2mpMnWJHWTjfBnZaJrXVGkclQ==
X-Google-Smtp-Source: AGHT+IFxDjK6XuKeK7GQ09H9H+cbzAcscsjyDhCEr1Ae55/h4azLXQPljGjOlQMbxh0yH/YEQXrF8g==
X-Received: by 2002:a05:6512:31c3:b0:500:8022:3dc7 with SMTP id j3-20020a05651231c300b0050080223dc7mr20839876lfe.10.1697031558001;
        Wed, 11 Oct 2023 06:39:18 -0700 (PDT)
Message-ID: <a541f02a-e28a-439c-97f6-6f97cc8a2dcd@citrix.com>
Date: Wed, 11 Oct 2023 21:39:16 +0800
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH for-4.18] tools/pygrub: Fix pygrub's --entry flag for
 python3
Content-Language: en-GB
To: Alejandro Vallejo <alejandro.vallejo@cloud.com>,
 Xen-devel <xen-devel@lists.xenproject.org>, Henry Wang <Henry.Wang@arm.com>
Cc: Wei Liu <wl@xen.org>, Anthony PERARD <anthony.perard@citrix.com>
References: <20231011122520.1826-1-alejandro.vallejo@cloud.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: <20231011122520.1826-1-alejandro.vallejo@cloud.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 11/10/2023 8:25 pm, Alejandro Vallejo wrote:
> string.atoi() has been deprecated since Python 2.0, has a big scary warning
> in the python2.7 docs and is absent from python3 altogether. int() does the
> same thing and is compatible with both.
>
> See https://docs.python.org/2/library/string.html#string.atoi:
>
> Signed-off-by: Alejandro Vallejo <alejandro.vallejo@cloud.com>
> ---
>  tools/pygrub/src/pygrub | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/tools/pygrub/src/pygrub b/tools/pygrub/src/pygrub
> index dcdfc04ff0..541e562327 100755
> --- a/tools/pygrub/src/pygrub
> +++ b/tools/pygrub/src/pygrub
> @@ -731,7 +731,7 @@ class Grub:
>  def get_entry_idx(cf, entry):
>      # first, see if the given entry is numeric
>      try:
> -        idx = string.atoi(entry)
> +        idx = int(entry)
>          return idx
>      except ValueError:
>          pass

CC Henry for 4.18.  This was discovered late in the XSA-443 work and is
one small extra bit of Python3 work.

Thanks,

~Andrew


From xen-devel-bounces@lists.xenproject.org Wed Oct 11 13:39:53 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 11 Oct 2023 13:39:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615515.956798 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqZRJ-000309-46; Wed, 11 Oct 2023 13:39:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615515.956798; Wed, 11 Oct 2023 13:39: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 1qqZRJ-000300-0J; Wed, 11 Oct 2023 13:39:53 +0000
Received: by outflank-mailman (input) for mailman id 615515;
 Wed, 11 Oct 2023 13:39: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=kH0+=FZ=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qqZRH-0002qx-FS
 for xen-devel@lists.xenproject.org; Wed, 11 Oct 2023 13:39:51 +0000
Received: from mail-lf1-x12b.google.com (mail-lf1-x12b.google.com
 [2a00:1450:4864:20::12b])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id a701973a-683b-11ee-98d4-6d05b1d4d9a1;
 Wed, 11 Oct 2023 15:39:51 +0200 (CEST)
Received: by mail-lf1-x12b.google.com with SMTP id
 2adb3069b0e04-5043a01ee20so8361933e87.0
 for <xen-devel@lists.xenproject.org>; Wed, 11 Oct 2023 06:39:51 -0700 (PDT)
Received: from [0.0.0.0] ([2001:41d0:8:52b7::])
 by smtp.gmail.com with ESMTPSA id
 s13-20020a0ce30d000000b0063d038df3f3sm5695728qvl.52.2023.10.11.06.39.47
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 11 Oct 2023 06:39: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: a701973a-683b-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1697031590; x=1697636390; 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=kfpurETULtVfAqI3559s+GjLE0vHRUSyFH46jt1MhRI=;
        b=Ijrm2pBURsdoFQwMg0ocVKNkrh/uegWektu5OodmTDw8RB8GQpw3W8TdPP4jFrusyA
         8bE/44sFr3e2tamSd7XYOp5GH8l44Tz6h0GbgjZoUH3rULP/UqU/Jo84Lbzgm1BjRJWN
         XvSUXI+pRG5z1JcEPXUFgXB4AD9x4W7nOlmsE=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697031590; x=1697636390;
        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=kfpurETULtVfAqI3559s+GjLE0vHRUSyFH46jt1MhRI=;
        b=kd8oo14mwBFVfW2PkCeXqK5DzdnqsImvFLol4jgpAeM+B2TJl8VaolnwHNiZmAI68b
         CYos7TyVOtFnDC3XdqFDelM9g54RCblpUGa4mblYn0d3Bl73aKZ39VmDVAmSSmb8R2mU
         ApuRez7hAs43JM8esYqFBkID+w0A4LlXf7LQsY+Jd9ywICg0t4ql5paccvCkx/wuAA2S
         RBb3T4LWVdenWD8pMVPRStsdSbgSEzOKrExXn5zzk0mSeiRUOsfQThFA9Z6Gjp7iE4E3
         c+UnFxA9ijKw4AeFveNgxKdmtIsq2Zl5iB/uLXzNjvL77GR4uWXtNWgOdoAZAiSsrId8
         m8Gw==
X-Gm-Message-State: AOJu0YyQANKCkNmLTCs05NtDFD9pY1+jfcPHDFlTXlDBrNw/RJhskV6k
	aBmMNh03E8MkfCt0GA7mtIwOiw==
X-Google-Smtp-Source: AGHT+IFMAWLAI/5SaZKd+Suf83SeLDl5rliwWddpYWgNR2jrG4tY91i5+rLbgIa9/ZUI0qlolHUxTg==
X-Received: by 2002:a19:6705:0:b0:503:eae:4896 with SMTP id b5-20020a196705000000b005030eae4896mr16183278lfc.39.1697031590714;
        Wed, 11 Oct 2023 06:39:50 -0700 (PDT)
Message-ID: <d5507808-fb01-43b8-9393-ba287fcbb240@citrix.com>
Date: Wed, 11 Oct 2023 21:39:45 +0800
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH for-4.18] tools/pygrub: Fix pygrub's --entry flag for
 python3
Content-Language: en-GB
To: Alejandro Vallejo <alejandro.vallejo@cloud.com>,
 Xen-devel <xen-devel@lists.xenproject.org>, Henry Wang <Henry.Wang@arm.com>
Cc: Wei Liu <wl@xen.org>, Anthony PERARD <anthony.perard@citrix.com>
References: <20231011122520.1826-1-alejandro.vallejo@cloud.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: <20231011122520.1826-1-alejandro.vallejo@cloud.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 11/10/2023 8:25 pm, Alejandro Vallejo wrote:
> string.atoi() has been deprecated since Python 2.0, has a big scary warning
> in the python2.7 docs and is absent from python3 altogether. int() does the
> same thing and is compatible with both.
>
> See https://docs.python.org/2/library/string.html#string.atoi:
>
> Signed-off-by: Alejandro Vallejo <alejandro.vallejo@cloud.com>
> ---
>  tools/pygrub/src/pygrub | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/tools/pygrub/src/pygrub b/tools/pygrub/src/pygrub
> index dcdfc04ff0..541e562327 100755
> --- a/tools/pygrub/src/pygrub
> +++ b/tools/pygrub/src/pygrub
> @@ -731,7 +731,7 @@ class Grub:
>  def get_entry_idx(cf, entry):
>      # first, see if the given entry is numeric
>      try:
> -        idx = string.atoi(entry)
> +        idx = int(entry)
>          return idx
>      except ValueError:
>          pass

CC Henry for 4.18.  This was discovered late in the XSA-443 work and is
one small extra bit of Python3 work.

Thanks,

~Andrew


From xen-devel-bounces@lists.xenproject.org Wed Oct 11 13:42:10 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 11 Oct 2023 13:42:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615524.956808 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqZTV-0004i7-FQ; Wed, 11 Oct 2023 13:42:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615524.956808; Wed, 11 Oct 2023 13: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 1qqZTV-0004i0-CU; Wed, 11 Oct 2023 13:42:09 +0000
Received: by outflank-mailman (input) for mailman id 615524;
 Wed, 11 Oct 2023 13: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=xRUZ=FZ=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qqZTT-0004hP-HM
 for xen-devel@lists.xenproject.org; Wed, 11 Oct 2023 13:42:07 +0000
Received: from EUR01-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur01on2075.outbound.protection.outlook.com [40.107.13.75])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id f74c1d1d-683b-11ee-9b0d-b553b5be7939;
 Wed, 11 Oct 2023 15:42:05 +0200 (CEST)
Received: from AS9PR01CA0024.eurprd01.prod.exchangelabs.com
 (2603:10a6:20b:540::29) by PA4PR08MB5983.eurprd08.prod.outlook.com
 (2603:10a6:102:e7::8) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.38; Wed, 11 Oct
 2023 13:41:35 +0000
Received: from AM7EUR03FT026.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:20b:540:cafe::f2) by AS9PR01CA0024.outlook.office365.com
 (2603:10a6:20b:540::29) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.37 via Frontend
 Transport; Wed, 11 Oct 2023 13:41: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.6886.27 via Frontend Transport; Wed, 11 Oct 2023 13:41:33 +0000
Received: ("Tessian outbound fdf44c93bd44:v211");
 Wed, 11 Oct 2023 13:41:33 +0000
Received: from c3d73aea3d8e.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 C80CB99A-CA8E-415E-82FF-1433EFBD7FD5.1; 
 Wed, 11 Oct 2023 13:41:27 +0000
Received: from EUR02-VI1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id c3d73aea3d8e.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Wed, 11 Oct 2023 13:41:27 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by DB9PR08MB7533.eurprd08.prod.outlook.com (2603:10a6:10:301::11)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.41; Wed, 11 Oct
 2023 13:41:24 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41%4]) with mapi id 15.20.6863.032; Wed, 11 Oct 2023
 13:41: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: f74c1d1d-683b-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=ZFUmOvOQrIMCfnKWS26Mjn70ytbwShNwwo3vXlyUw38=;
 b=urGPMbpytqXZXOVYYWltFXRURv6J/G/pMx6p2/BtcCyqRxcx2A1Q5A62lR7VSUE951ULnp3Gf8ikUdZhrze5yf8PqoPWE7m1wBiX28JRvidhfPRgByAR1Wc3duQBeRhFqH6ywlFotlRYjG6yLoXJb6T4X7Iwqe69xkchAAC4qII=
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: 36d8ad0d09cb5dd7
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=KcCA+kKUnesFRraSMhLGZSs0/x3XFntNSaU8vRelWBQj7TCUnEPKJMJasJZf7oWyZszKw6ME8MpG7TZ5563q5RDhiMFpZcNTD2G8ZS+rfzYMm8CeMIjtrO4Tp7JKVnhyjAWRBjh9FlRNwZcG2DW60VD9HoO7u40MJddLB6oFvUMrsHTnyrQxHCjbyd1Du6L+68zV8k1Qr2RFq040rMYnf228Bf0QrfiZQK0nYzsPFIHVSbYtr6H3NKgz6QkCOqx9Mmdifikb/pcBUy7P3uQ5ZlbmndcoQHb1baVWpaRkpga2CjrS3BvV+kDWlz9XPxJx6l2iRvNxG/GB+rmEs9ka9w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=ZFUmOvOQrIMCfnKWS26Mjn70ytbwShNwwo3vXlyUw38=;
 b=hkBD/MNgxtfB73DyOmPAgIWIPyUXJGi1s83vm5Fw+tWvmThW08Ufrbg13qDcgw15lzJHIIjC5h9hEz/W7y+PvmtYG9U3fbkSkpjl1OpyIKr6F9oA2qUvTWqMYSA7TtW1ekQm6ClEr8uZ/U/WspvbNjd7uJ6ib547PnQ+6YxeAy4ID270/LOuXsKvIyo89p49IFGLFnMmT9KFdiPXTkT9/7fct20U8DnIGXsNfhXL3Kw1vj4TM8zWZTOIZVV7elPz2L5OQ1IWOpowBc5whekrvP6deDDBqQ7RUzQPtYgAKlwBsND3q1h/hVUdhC6XnMjdAlJ2Aq/JzhxYiJWn8usvqg==
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=ZFUmOvOQrIMCfnKWS26Mjn70ytbwShNwwo3vXlyUw38=;
 b=urGPMbpytqXZXOVYYWltFXRURv6J/G/pMx6p2/BtcCyqRxcx2A1Q5A62lR7VSUE951ULnp3Gf8ikUdZhrze5yf8PqoPWE7m1wBiX28JRvidhfPRgByAR1Wc3duQBeRhFqH6ywlFotlRYjG6yLoXJb6T4X7Iwqe69xkchAAC4qII=
From: Henry Wang <Henry.Wang@arm.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>
CC: Alejandro Vallejo <alejandro.vallejo@cloud.com>, Xen-devel
	<xen-devel@lists.xenproject.org>, Wei Liu <wl@xen.org>, Anthony PERARD
	<anthony.perard@citrix.com>
Subject: Re: [PATCH for-4.18] tools/pygrub: Fix pygrub's --entry flag for
 python3
Thread-Topic: [PATCH for-4.18] tools/pygrub: Fix pygrub's --entry flag for
 python3
Thread-Index: AQHZ/EhwoShlUm8+hUyEFVohORc7NbBEmKCA
Date: Wed, 11 Oct 2023 13:41:21 +0000
Message-ID: <BA1AB165-F01B-40B1-A565-2B239E3FD6C1@arm.com>
References: <20231011122520.1826-1-alejandro.vallejo@cloud.com>
 <d5507808-fb01-43b8-9393-ba287fcbb240@citrix.com>
In-Reply-To: <d5507808-fb01-43b8-9393-ba287fcbb240@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_|DB9PR08MB7533:EE_|AM7EUR03FT026:EE_|PA4PR08MB5983:EE_
X-MS-Office365-Filtering-Correlation-Id: 1fc79fde-6744-4e30-1720-08dbca5fc87a
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:
 +UqVdE1fuR9p3cckf/5nvPw+LFaBTZFKqDAyqPtLFQvNreq4uosa5xWM8WBlsjP1kpRMxB2y7JCSTFmL04TBMiIYBrD+mv9WEg9f/XdCH+CEXD/ftC59M5Y5Xk0cbAL+Y58QtFAbnVTrR7Ocnm+buHhHUH/V6YYniRH6ZGZXQS7GiBG8+2H123Jac71S7BCr9Ztx1pDQ6pttHsDI1sWUWkI+FSly3uUkK8/Z+BERusKuRVf/IGZYoRvAPCUdes3qecSTRTYW5dmtnHLQyXNZasGbHqyz2jWwmB/3ndVEDXHA/hZpoPr2gw5zdY7gEwgk2o2LCpIeg+4gsjN8GlTBeR/chyxNZXdSWmVzRSVY1xrenMyV4VdM/HUqk/cZ/jl+53YKadi3vsqH8PpF81HcJ/2qdjLe3v0ykmsws9Wdico5J7Kqnfdm4U+uSfb78WgIb7rdGpYDorBvuBTfEHEzgP/Zfrejta9ru3uU5nM7meCH3GXJFsA1ZhzfN4gK8mcwvKta7bkVNjlB+tBy68D7siTOkr6/iMQaGxY1a3iEnLCbhaqu2qs+Z+UhchKC/OHbXeJcN6YNg++WfwhZmj7N68vN7BaNiY7IDXaxyI3bWg/j5Ehr13hdw8kpSlmcbDNc/5R2gj0A96bvd3WpeEu/Ww==
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)(39860400002)(366004)(396003)(376002)(346002)(230922051799003)(186009)(1800799009)(64100799003)(451199024)(2616005)(83380400001)(71200400001)(33656002)(6486002)(478600001)(38070700005)(53546011)(122000001)(26005)(6506007)(966005)(6512007)(38100700002)(66476007)(64756008)(66946007)(76116006)(91956017)(54906003)(66446008)(66556008)(41300700001)(4326008)(8676002)(8936002)(6916009)(316002)(86362001)(2906002)(36756003)(5660300002)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="us-ascii"
Content-ID: <9709B0FE361A7342A86607000D97E83D@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR08MB7533
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:
	80c3ba9c-b347-4b15-48f0-08dbca5fc168
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	XU9WHa6b1ZeYafreVUivOf7Q9TI1kuypWKhWV68BQQGqZAGbQajT5bcsoIF3jgZ53+PCNlt5zRtLwWvnD2bZ7cHF4VsQ1GAJI86Trp1ogA/Hm50ePqs9gn/SRJWRAoGT7Mk6J4oW3JKOWXyonG+nK4R6lLOKFI5YiLnIM5BZP/PXdlqTf+o4M9+RJ8cy4S1/Qp7bnRUZbdpBZPhe+sTC2C1zNyAs66nqXN3HSz+aGlcYg94Yk8XJ3uL5bc45AAY9Psf+6F+WJCfRK/dZtSgk7XKLzy3cZnIaKTX0ujZcFrBE9B/aduWGt2VnFxcTRZ+aEo4OfHEbF88UVXaK9Jl/QwmeDFLJjDdgKQ33UrfmTYwbicdOeVGypVApUBlUYAi/Jory2BQ/KkWDYywD0JjE+oTr85aIlD79mpD0nPNtKq4pwTKD+U+lZx+NsbIL+mYNReTZM7R7Y95TcUvCrme6XFVDTAJ3bLhC/tohRZ3VbazKVHQB9+RWcyVY1l+7O3vYc7t+UaUYUKNOvPeC1mhHYQAOwKD15Tos2iTHyC9asRpg9vGwLT99Ps99PX85nCdfoA1CEtFuLRQAu9xhguWO5mJY6MH0GRjrW11vrlHMMLvGXMc3inc9wfMmLGrEv/Iv1Q/1t09CuV17LcCvVSjO2bwUdi2dLPwC9Woq+dRM4VNXm38Or1duQvbkK4881XTefzUIZdwTNlvOxy3fE8k5dMf+ZfJaXmeuqjpCQia4DWk=
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)(230922051799003)(1800799009)(64100799003)(186009)(451199024)(82310400011)(40470700004)(36840700001)(46966006)(40480700001)(8936002)(40460700003)(8676002)(5660300002)(6862004)(316002)(41300700001)(36756003)(4326008)(2906002)(2616005)(336012)(26005)(36860700001)(47076005)(83380400001)(86362001)(6512007)(6506007)(107886003)(53546011)(356005)(81166007)(82740400003)(478600001)(966005)(6486002)(33656002)(70206006)(54906003)(70586007);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 Oct 2023 13:41:33.6580
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 1fc79fde-6744-4e30-1720-08dbca5fc87a
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: PA4PR08MB5983

Hi Andrew, Alejandro,

> On Oct 11, 2023, at 21:39, Andrew Cooper <andrew.cooper3@citrix.com> wrot=
e:
>=20
> On 11/10/2023 8:25 pm, Alejandro Vallejo wrote:
>> string.atoi() has been deprecated since Python 2.0, has a big scary warn=
ing
>> in the python2.7 docs and is absent from python3 altogether. int() does =
the
>> same thing and is compatible with both.
>>=20
>> See https://docs.python.org/2/library/string.html#string.atoi:
>>=20
>> Signed-off-by: Alejandro Vallejo <alejandro.vallejo@cloud.com>
>> ---
>> tools/pygrub/src/pygrub | 2 +-
>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>=20
>> diff --git a/tools/pygrub/src/pygrub b/tools/pygrub/src/pygrub
>> index dcdfc04ff0..541e562327 100755
>> --- a/tools/pygrub/src/pygrub
>> +++ b/tools/pygrub/src/pygrub
>> @@ -731,7 +731,7 @@ class Grub:
>> def get_entry_idx(cf, entry):
>>     # first, see if the given entry is numeric
>>     try:
>> -        idx =3D string.atoi(entry)
>> +        idx =3D int(entry)
>>         return idx
>>     except ValueError:
>>         pass
>=20
> CC Henry for 4.18.  This was discovered late in the XSA-443 work and is
> one small extra bit of Python3 work.

Thanks.

Release-acked-by: Henry Wang <Henry.Wang@arm.com>

Kind regards,
Henry


>=20
> Thanks,
>=20
> ~Andrew



From xen-devel-bounces@lists.xenproject.org Wed Oct 11 14:31:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 11 Oct 2023 14:31:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615529.956817 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqaFN-0008H5-6i; Wed, 11 Oct 2023 14:31:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615529.956817; Wed, 11 Oct 2023 14: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 1qqaFN-0008Gy-3k; Wed, 11 Oct 2023 14:31:37 +0000
Received: by outflank-mailman (input) for mailman id 615529;
 Wed, 11 Oct 2023 14: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=LxTT=FZ=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qqaFM-0008Gs-2p
 for xen-devel@lists.xenproject.org; Wed, 11 Oct 2023 14:31:36 +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 e0e0ea12-6842-11ee-98d4-6d05b1d4d9a1;
 Wed, 11 Oct 2023 16:31:34 +0200 (CEST)
Received: by mail-lj1-x236.google.com with SMTP id
 38308e7fff4ca-2c3ca6ff5a7so59162961fa.1
 for <xen-devel@lists.xenproject.org>; Wed, 11 Oct 2023 07:31:34 -0700 (PDT)
Received: from [192.168.201.133] ([94.75.70.14])
 by smtp.gmail.com with ESMTPSA id
 c16-20020a05651c015000b002c129687a0dsm2987067ljd.24.2023.10.11.07.31.32
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 11 Oct 2023 07: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: e0e0ea12-6842-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1697034694; x=1697639494; 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=Uy+cQGevffhSCu1fHZjFWwnYU61VIhdWG/60Aet6oMA=;
        b=GDNyLWEPNvz1aJFUUjBfin925h3a1eV81vuhPcFtqqsTEmPXAQeYeFQXtoU63HycFO
         Dgp7eNIiPFqrKjl/qjTuueevZ4tfxdRRfEl9HhFr0sRIIfqlP5eZrDGfbATNGhnEvh7d
         Mu9KSbThFBcw1McHNLWiHwsuDMVB9r4dTIBITJ5grGWhtfbRBbHk7qMEesH9y4eS1mN7
         uFZEH17zIgoQfiVOUspQ1vIg/2jaldKnxnQCgJ/ldQRb0uxdc49NBjKQHva4HIuwQndu
         RJltJCAaR4+Dti225ylH+XUQexfx34GIrGdCopaWYPwN0G85YFlFP81Q73/36isjVcce
         0yHw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697034694; x=1697639494;
        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=Uy+cQGevffhSCu1fHZjFWwnYU61VIhdWG/60Aet6oMA=;
        b=Obp62yH69E6yX9zD05bdXnOzyDh+dJpUwno5WwGcCoghBiuZJm34PTt50e5QeqYArR
         dRfCHjlNVKJxqkE6+5LwfwQACwh2zQKMnIOqBnla3bgVy5nWE6oxHiWNR36GqCibG6p+
         w6R01PKlYi6MvXHkdo7bpCG7rtBbqERjT0CZCR5CtKumVrhPxVb7fYpe9xNrp5utp5Ep
         92c3aRnNKALW8t4ORdsIzNAqQs0Z9kYLOUZYM/l/8DDWEkzdQ4DlOUxujQPx3W66dHfU
         RhsUSfRrN2T012gWzlWr58mV4Tg5tbomdIX82R9/8OHhP3AwlaKvjgoghed/L4WROO5R
         E2Rg==
X-Gm-Message-State: AOJu0YxkzLL2tWiziF2IpoP+BtWcyTSs/IEaTWLzElxYLNh5wJnFTKA6
	/dHt4/5XM2NuuKWYbnuXZAw=
X-Google-Smtp-Source: AGHT+IEvAHKd2KB5e4BMk9CReso47upR5We5yviZEr+la92H21ZeP52nWJ6flFi2FP2OHmi68AlDGw==
X-Received: by 2002:a2e:985a:0:b0:2bc:dcc2:b186 with SMTP id e26-20020a2e985a000000b002bcdcc2b186mr17361878ljj.36.1697034693680;
        Wed, 11 Oct 2023 07:31:33 -0700 (PDT)
Message-ID: <678f854879fdebe458dfed4fc3d587a34d159927.camel@gmail.com>
Subject: Re: [PATCH for-4.18 v5] xen/pdx: Make CONFIG_PDX_COMPRESSION a
 common Kconfig option
From: Oleksii <oleksii.kurochko@gmail.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>, Xen-devel
	 <xen-devel@lists.xenproject.org>
Cc: Alejandro Vallejo <alejandro.vallejo@cloud.com>, Julien Grall
 <jgrall@amazon.com>, Roger Pau =?ISO-8859-1?Q?Monn=E9?=
 <roger.pau@citrix.com>,  Shawn Anastasio
 <sanastasio@raptorengineering.com>, Henry Wang <Henry.Wang@arm.com>, George
 Dunlap <George.Dunlap@eu.citrix.com>, Jan Beulich <JBeulich@suse.com>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>, Julien
 Grall <julien@xen.org>
Date: Wed, 11 Oct 2023 17:31:32 +0300
In-Reply-To: <a2ed825d-2bdf-46a5-a1d4-b43a84ad43a5@citrix.com>
References: <20231006144405.1078260-1-andrew.cooper3@citrix.com>
	 <45df1c3a44fcd4ebf87a30ada34141d6ebd9ccab.camel@gmail.com>
	 <a2ed825d-2bdf-46a5-a1d4-b43a84ad43a5@citrix.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-10-10 at 16:52 +0800, Andrew Cooper wrote:
> On 10/10/2023 3:58 pm, Oleksii wrote:
> > > Oleksii: I've not touched RISCV yet, because I don't know how the
> > > platforms
> > > typically look.=C2=A0 I'm happy to default it active in RISCV too if
> > > that's the
> > > right thing to do.
> > We are still waiting for a platform with hypervisor extension
> > support
> > but I am using PDX in my Xen's repo.
>=20
> Yes, but are you using that because Xen wouldn't build without it, or
> because it's necessary for RISC-V platforms?
You are right I am using it because before this patch Xen can't be
built without PDX.
This is not necessary for RISC-V. At least platform I know they don't
use sparse RAM banks.

>=20
> This patch fixes the problem where PDX had the illusion of being
> necessary, but was actually mandatory.
>=20
> ~Andrew

~ Oleksii


From xen-devel-bounces@lists.xenproject.org Wed Oct 11 15:00:32 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 11 Oct 2023 15:00:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615535.956828 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqahE-0006vs-FJ; Wed, 11 Oct 2023 15:00:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615535.956828; Wed, 11 Oct 2023 15: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 1qqahE-0006vl-CO; Wed, 11 Oct 2023 15:00:24 +0000
Received: by outflank-mailman (input) for mailman id 615535;
 Wed, 11 Oct 2023 15:00: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=uJaT=FZ=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qqahD-0006vM-EQ
 for xen-devel@lists.xenproject.org; Wed, 11 Oct 2023 15:00:23 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id e5c06a26-6846-11ee-9b0d-b553b5be7939;
 Wed, 11 Oct 2023 17:00:20 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id DB1294EE0744;
 Wed, 11 Oct 2023 17:00: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: e5c06a26-6846-11ee-9b0d-b553b5be7939
MIME-Version: 1.0
Date: Wed, 11 Oct 2023 17:00:19 +0200
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: Julien Grall <julien@xen.org>
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>, Wei Liu <wl@xen.org>, Henry.Wang@arm.com
Subject: Re: [XEN PATCH][for-4.19 v2 2/2] docs/misra: add deviations.rst to
 document additional deviations.
In-Reply-To: <781c9b5c-1301-4a23-8c13-fba62c844b03@xen.org>
References: <cover.1696865051.git.nicola.vetrini@bugseng.com>
 <ccda90b6be8f6977cff14ae65749ffc7fa429c3c.1696865051.git.nicola.vetrini@bugseng.com>
 <alpine.DEB.2.22.394.2310091811190.3431292@ubuntu-linux-20-04-desktop>
 <a5635fc5e51518c205d776ac8a9600ba@bugseng.com>
 <alpine.DEB.2.22.394.2310101524080.3431292@ubuntu-linux-20-04-desktop>
 <781c9b5c-1301-4a23-8c13-fba62c844b03@xen.org>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <186af6b6c1b34fc9088a5fb226ff2482@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


>>>>> +
>>>>> +   * - R2.1
>>>>> +     - The compiler implementation guarantees that the unreachable 
>>>>> code
>>>>> is
>>>>> +       removed. Constant expressions and unreachable branches of 
>>>>> if and
>>>>> switch
>>>>> +       statements are expected.
>>>>> +     - Tagged as `safe` for ECLAIR.
>>>>> +
>>>>> +   * - R2.1
>>>>> +     - Some functions are intended not to be referenced.
>>>>> +     - Tagged as `deliberate` for ECLAIR.
>>>> 
>>>> What does it mean "some functions" in this case? Should we list 
>>>> which
>>>> functions?
>>>> 
>>> 
>>> Well, there are a lot, typically resulting from build configurations 
>>> that do
>>> not
>>> use them, or because they are used only in asm code. I can mention 
>>> these
>>> reasons in the
>>> document, to make it easier to understand.
>> 
>> Yes, I think we need to clarify further this point, because saying 
>> "Some
>> functions" doesn't help the reader understand:
>> - whether all functions can be not referenced
>> - which subset of functions can be not referenced
>> 
>> How to distinguish between? How do we know whether a certain patch is
>> violating the rule or not?
>> 
>> If there is a clear list of functions that can be not referenced, then
>> we should list them here. If there is a methodology we can use to
>> distinguish between them (e.g. functions called from asm only) then we
>> can write the methodology here. Either way it is fine as long as the
>> criteria to know if it is OK if a function is not referenced is clear.
> 
> Aren't they more or less the one we tagged with SAF-1-safe because
> there were no prototype? If so, we could use the same tags.
> 
> We could introduce an extra tags for the others. An alternative would
> be to add an attribute (e.g. asmcall) to mark each function used by
> assembly.
> 
> Cheers,

Both suggestion do have some value. As it is, it's not distinguishable 
what causes a
function to be unreferenced in a certain analysis config. However:

- functions only used by asm code can be specified in the ECLAIR config 
so that they will
   have an extra fake reference as far as the checker is concerned. I can 
do that on a
   separate patch and list them in deviations.rst. An attribute seems a 
good way to signal the
   intention.
- Functions that have no reference only in the current analysis should 
have their declaration
   #ifdef-ed out in the configurations where they are not used, in an 
ideal world.
- Truly unreferenced functions should be removed, or justified

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


From xen-devel-bounces@lists.xenproject.org Wed Oct 11 15:04:48 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 11 Oct 2023 15:04:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615539.956838 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqalR-0007mw-Vt; Wed, 11 Oct 2023 15:04:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615539.956838; Wed, 11 Oct 2023 15:04: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 1qqalR-0007mp-TH; Wed, 11 Oct 2023 15:04:45 +0000
Received: by outflank-mailman (input) for mailman id 615539;
 Wed, 11 Oct 2023 15:04: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=uJaT=FZ=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qqalQ-0007mf-V6
 for xen-devel@lists.xenproject.org; Wed, 11 Oct 2023 15:04:44 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 820440a3-6847-11ee-9b0d-b553b5be7939;
 Wed, 11 Oct 2023 17:04:43 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id AD2BD4EE0745;
 Wed, 11 Oct 2023 17:04: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: 820440a3-6847-11ee-9b0d-b553b5be7939
MIME-Version: 1.0
Date: Wed, 11 Oct 2023 17:04:42 +0200
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: Julien Grall <julien@xen.org>
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>, Wei Liu <wl@xen.org>, Henry.Wang@arm.com
Subject: Re: [XEN PATCH][for-4.19 v2 2/2] docs/misra: add deviations.rst to
 document additional deviations.
In-Reply-To: <186af6b6c1b34fc9088a5fb226ff2482@bugseng.com>
References: <cover.1696865051.git.nicola.vetrini@bugseng.com>
 <ccda90b6be8f6977cff14ae65749ffc7fa429c3c.1696865051.git.nicola.vetrini@bugseng.com>
 <alpine.DEB.2.22.394.2310091811190.3431292@ubuntu-linux-20-04-desktop>
 <a5635fc5e51518c205d776ac8a9600ba@bugseng.com>
 <alpine.DEB.2.22.394.2310101524080.3431292@ubuntu-linux-20-04-desktop>
 <781c9b5c-1301-4a23-8c13-fba62c844b03@xen.org>
 <186af6b6c1b34fc9088a5fb226ff2482@bugseng.com>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <9fc7241a16ca8b1db9bf788d4125fe16@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 11/10/2023 17:00, Nicola Vetrini wrote:
>>>>>> +
>>>>>> +   * - R2.1
>>>>>> +     - The compiler implementation guarantees that the 
>>>>>> unreachable code
>>>>>> is
>>>>>> +       removed. Constant expressions and unreachable branches of 
>>>>>> if and
>>>>>> switch
>>>>>> +       statements are expected.
>>>>>> +     - Tagged as `safe` for ECLAIR.
>>>>>> +
>>>>>> +   * - R2.1
>>>>>> +     - Some functions are intended not to be referenced.
>>>>>> +     - Tagged as `deliberate` for ECLAIR.
>>>>> 
>>>>> What does it mean "some functions" in this case? Should we list 
>>>>> which
>>>>> functions?
>>>>> 
>>>> 
>>>> Well, there are a lot, typically resulting from build configurations 
>>>> that do
>>>> not
>>>> use them, or because they are used only in asm code. I can mention 
>>>> these
>>>> reasons in the
>>>> document, to make it easier to understand.
>>> 
>>> Yes, I think we need to clarify further this point, because saying 
>>> "Some
>>> functions" doesn't help the reader understand:
>>> - whether all functions can be not referenced
>>> - which subset of functions can be not referenced
>>> 
>>> How to distinguish between? How do we know whether a certain patch is
>>> violating the rule or not?
>>> 
>>> If there is a clear list of functions that can be not referenced, 
>>> then
>>> we should list them here. If there is a methodology we can use to
>>> distinguish between them (e.g. functions called from asm only) then 
>>> we
>>> can write the methodology here. Either way it is fine as long as the
>>> criteria to know if it is OK if a function is not referenced is 
>>> clear.
>> 
>> Aren't they more or less the one we tagged with SAF-1-safe because
>> there were no prototype? If so, we could use the same tags.
>> 
>> We could introduce an extra tags for the others. An alternative would
>> be to add an attribute (e.g. asmcall) to mark each function used by
>> assembly.
>> 
>> Cheers,
> 
> Both suggestion do have some value. As it is, it's not distinguishable
> what causes a
> function to be unreferenced in a certain analysis config. However:
> 
> - functions only used by asm code can be specified in the ECLAIR
> config so that they will
>   have an extra fake reference as far as the checker is concerned. I
> can do that on a
>   separate patch and list them in deviations.rst. An attribute seems a
> good way to signal the
>   intention.
> - Functions that have no reference only in the current analysis should
> have their declaration
>   #ifdef-ed out in the configurations where they are not used, in an
> ideal world.
> - Truly unreferenced functions should be removed, or justified

Especially the last two appear somewhat tricky to disentangle, as they 
do require knowledge of
possible code paths.

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


From xen-devel-bounces@lists.xenproject.org Wed Oct 11 15:38:49 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 11 Oct 2023 15:38:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615545.956851 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqbIA-0006e6-OP; Wed, 11 Oct 2023 15:38:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615545.956851; Wed, 11 Oct 2023 15: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 1qqbIA-0006dz-L6; Wed, 11 Oct 2023 15:38:34 +0000
Received: by outflank-mailman (input) for mailman id 615545;
 Wed, 11 Oct 2023 15: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=/8XG=FZ=citrix.com=prvs=641e20fe7=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qqbI8-0006dJ-2w
 for xen-devel@lists.xenproject.org; Wed, 11 Oct 2023 15:38: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 38db537e-684c-11ee-98d4-6d05b1d4d9a1;
 Wed, 11 Oct 2023 17:38:29 +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;
 11 Oct 2023 11:38:21 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by SN7PR03MB7154.namprd03.prod.outlook.com (2603:10b6:806:321::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.38; Wed, 11 Oct
 2023 15:38:17 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::66ca:3a42:baeb:9ecf]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::66ca:3a42:baeb:9ecf%7]) with mapi id 15.20.6863.043; Wed, 11 Oct 2023
 15:38: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: 38db537e-684c-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1697038709;
  h=from:to:cc:subject:date:message-id:
   content-transfer-encoding:mime-version;
  bh=lm5EJ6NXYBCGBfvb722IOahrbRwZgsadv5VEHZ5o3nI=;
  b=NHfKm40/slsF8iThmAON7pZKl63i0iGL+swKr7Nwi0apylnXph+1DyfL
   BwOHkWP/gnsZPylV5yP//1LLIMLnt9FL3P60lnzQr71sc0yUegB2R2ZMd
   g9Sffhy8Sq1m3CuQPt9Rl4gYM4uwydsz7kes5R4cI7+51PqDItY+ZTE2F
   I=;
X-CSE-ConnectionGUID: XAd9UZwuRN61C6iEBH41Bg==
X-CSE-MsgGUID: UQUCoAiISTCAZTxJInVgjQ==
X-IronPort-RemoteIP: 104.47.55.168
X-IronPort-MID: 128041958
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:wd9K46A/gZT05RVW/zTiw5YqxClBgxIJ4kV8jS/XYbTApG8qgTYCn
 DEeWGjQP/eDN2L8KNl2Pt+w/EwA7MfRzdFkQQY4rX1jcSlH+JHPbTi7wuUcHAvJd5GeExg3h
 yk6QoOdRCzhZiaE/n9BCpC48D8kk/nOH+KgYAL9EngZbRd+Tys8gg5Ulec8g4p56fC0GArIs
 t7pyyHlEAbNNwVcbCRMsMpvlDs15K6p4WtB5wRkDRx2lAS2e0c9Xcp3yZ6ZdxMUcqEMdsamS
 uDKyq2O/2+x13/B3fv8z94X2mVTKlLjFVDmZkh+AsBOsTAbzsAG6Y4pNeJ0VKtio27hc+ada
 jl6ncfYpQ8BZsUgkQmGOvVSO3kW0aZuoNcrLZUj2CA6IoKvn3bEmp1T4E8K0YIwys97UFx86
 uEiDm5URU6CqsiWnOuRRbw57igjBJGD0II3nFhFlGucJ9B2BJfJTuPN+MNS2yo2ioZWB/HCa
 sEFaD1pKhPdfxlIPVRRA5U79AuqriCnL3sE9xTI+OxuvTi7IA9ZidABNPLPfdOHX4NNl1uwr
 WPa5WXpRBodMbRzzBLcqCL02raewHOTtIQ6KYSF3flDgXyo+kc6OiEGd3q9n/a7sxvrMz5YA
 wlOksY0loAi+UruQtTjUhmQpH+fogVaS9dWC/c96gyG1uzT+QnxLkgJSCRQLuMvssAeTCYvk
 FSOmrvU6SdHtbSUTTeX8OeSpDbrYywNdzZcNWkDUBcP5MTlrMcrlBXTQ91/EamzyNroBTX3x
 DPMpy8771kOsfM2O2yA1Qivq1qRSlLhF2bZOi2/srqZ0z5E
IronPort-HdrOrdr: A9a23:wIvjmKzylhwzRTy0cnjYKrPxy+skLtp133Aq2lEZdPULSKGlfp
 GV9sjziyWetN9IYgBHpTnyAtj4fZq8z+8D3WB1B9uftWbdyQ+Vxe1ZjLcKoAeQbREWlNQtsp
 uIGpIWYLKfMbEQt7eY3ODMKadE/DDxytHLuQ6x9RdQZDAvT5slwxZyCw6dHEEzbhJBH4AFGJ
 2V4dcCjya8eFwMB/7LTkUtbqzmnZnmhZjmaRkJC1oM8w+Vlw6l77b8DlyxwgoeaTVS2r0vmF
 K12DARp5/T+c1T+CWsm1M73K4m1+cJDeEzSvBkv/JlZwkETDzYJbiJFYfy/Azd69vfkGrC2O
 O82CvIef4Dok85N1vF2yfFyk3u1i0j5GTlzkLdiXz/odbhTDZ/EMZZg5lFGyGpmXbIkesMoJ
 6j5VjpxKZ/HFfFhmDw9tLIXxZlmg69pmcji/caizhaXZEFYLFcoIQD9AcNea1waB7S+cQiCq
 1jHcvc7PFZfReTaG3YpHBmxJipUm4oFhmLT0Aesoie0iRQnnp+00wErfZv60so5dY4Ud1J9u
 7EOqNnmPVHSdIXd7t0AKMbTc6+GgX2MGPx2aKpUCra/Y08Sg3wQsTMkcgIDcmRCeA18Kc=
X-Talos-CUID: =?us-ascii?q?9a23=3A47hr02g37UQ4//d6D51Z0haqIzJuQlTRnUriPFK?=
 =?us-ascii?q?CLzgwY+OUZHWwpPpOnJ87?=
X-Talos-MUID: 9a23:GB+27QXMtVJjo3Dq/ALVuRplHcZJ2JiFIXIxgbcnvfeLNxUlbg==
X-IronPort-AV: E=Sophos;i="6.03,216,1694750400"; 
   d="scan'208";a="128041958"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=DghZVyFOjUVXh6VDfxvLhbdclsWp9fybz6Dpp0mpWm4xSsgJwa+OF0pYTaSFqnBTU+CywRON7qe5N7hxWWKv0w3QMt1Il6TYvhIYAsP1VbbQEMzsbi6wGapfQXNaTv7mnvLu+C3DiFlxO3uNSUuNo83saM9QDR+tRiE1sFIk0UeW/1jEbwRku1V6Ipqxh18QmsxvcrqJqTxG0uG1BjeKbK3Csc1jZ15nYMA0+Qg3yjUW3QYRvl7LpvUos3WCcGDVslG6TltQZkqQ1By7+9F7kf0KEyvDbQoyWIrZEjwmMZSBrBZE3t53PtbGCcfTrYs9Ow8NC0Qvje856L8KdigW7A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=odgBZvwG9yZybfJ5d3Ff3qPuk0HdQDlP9RvefchBs7c=;
 b=OVUmbAlb3uFQZCj0/qJ7AGSxvbrPhv5tHqH2rK4lRtobQkBzANxcsxY0zYNkCofclVhN4IItVr9V7PdEKOf8u4hwD+KbE+WYLAiOw3TXwC+fy9l7Gl4nmqBAEb5tGRCcBerNPFcKWJjEBqvNErob9M3A7O/QrtVI93TpsDmKoWg2ukt12DtDou62FackYIluDdtMkWkRpZD/Wx7xMXl66UtMBFHlU3xEZ5Xem8zzN1zsdIiCNpGTVew8S5XH+JrDeZCsSJ9uWGDuAm5YLrki5vtEbkLQ1JfWXpK81TGNp2NCn/WoKQE2t0qoD2dZUQ61zElL7OI0xQNoJ4JdMN51Hw==
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=odgBZvwG9yZybfJ5d3Ff3qPuk0HdQDlP9RvefchBs7c=;
 b=asZ6QahDfiUVlj+20xjixfrCtMvBFhzsIIKgHMbe9mceSMW2q/qfVg1w/Gw4f0NYufpGzPWtwIv4q7996iY5OVXdHLLn3GNToV9COQPs25idABxtn+kzQ+Tc6nXX04mF7InfK0yxORQcn59vvQIz0fymoUrb7eHTiGb739ypouk=
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: Henry Wang <Henry.Wang@arm.com>,
	Roger Pau Monne <roger.pau@citrix.com>
Subject: [PATCH] x86/pvh: fix identity mapping of low 1MB
Date: Wed, 11 Oct 2023 17:37:56 +0200
Message-ID: <20231011153756.16714-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: LO4P123CA0235.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:1a7::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_|SN7PR03MB7154:EE_
X-MS-Office365-Filtering-Correlation-Id: 1dfca0ed-ecd7-41b1-20f6-08dbca701717
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:
	S2lQreSwuqFVBm1b9t2gM4WFDPZMuruVDfqO3XmvLLkL+1D6cGV9lfpRKGENhZxz2BZ0hvvu00+f56vUhm5NU7LNrnqclWgklTWNTySITDQscajb5tE8Ovx/XWPzv43TW30V2Ylwu0uCnBcfN6ocZYVM77eq0dHpEDm1ICtHJ+riHhXZFV/uDozh58aVI+cQ3PMKtay4+uZfZ3DBySCpFsZydnkmIWcXXvH5w+VtmGPHfi8AOXfC8cQIQQEniwB+15EkAh5qwgsznzYTI4FPjNrbqgwvg8tKqXpvtoZusJdn/8DzTSTSMiUFiPsCMyXP9is2FmyezfDtt7SdSpSnrwj/AN5TdrTLQYKh63Hpd49HpaSBIvsB04kKcll+j9xAuzdgN2FfV/DL/NC2wO1QaLH/yIx0YPp90QITv1ufnoN7JgvSt5c0jqYa2ZzMclmZdLrb82pT+1RmknfHpVuwJgC22HBUWoPIZ61IuSNEYnOKtxCFS4MMykqkgLuQW0DTkZpeq7PrYYoiVM+p8ZArrsjK57+Bq0y2pRBu2Z8sM7zwFccyZLRXA+IZBa62KRsV
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)(230922051799003)(186009)(1800799009)(451199024)(64100799003)(6506007)(107886003)(2616005)(6512007)(1076003)(86362001)(36756003)(38100700002)(26005)(66556008)(83380400001)(6666004)(478600001)(6486002)(82960400001)(8936002)(8676002)(316002)(4326008)(6916009)(66476007)(41300700001)(2906002)(66946007)(5660300002)(54906003);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?V2s2anhwVmgrOXdJQzV6ZzE4Y1FMeHd1TVl4VXQrNWJSTUFvL29zSUhKeGc4?=
 =?utf-8?B?dlE2K1JrdTFYZ3lsYXZJeDNSMVFKN2ExREYxb3Y2eXFkOEJGRzRRSTJxNTdH?=
 =?utf-8?B?cVh6Z2UrMjBPRkQ0cURSM1ZoYXppMFJORyttKzVXMmdpbEZwamJQajl2V3lG?=
 =?utf-8?B?RVA0NzR5eFprK2NLMU5DaExGVGhOUHJlMWZDNy81WkNTc3VGbGZzN1hFT25U?=
 =?utf-8?B?M3NjZzZUSC8wSXY0UzBmYU84VUo3ejc2T1ZxNWk5ZlBVdm5SdjRoWlNOZ216?=
 =?utf-8?B?OUd6c2VWNkttclQyWkVzYWN4N05TSEc4Mi8wWklveTZabWw2UFNDTEt4Rjhh?=
 =?utf-8?B?NGcwRGo2eVV4QWRxZnl3UzNDYUNMdDQrOFl5RURPQ3Fxbld3bVliTjVvNUhs?=
 =?utf-8?B?UXVET1g5clhsUW5tWCtoR3F0YVV3NjdPMFZhMEhoSjJZVUMvd3lVSGdaRHR5?=
 =?utf-8?B?SnpCU0huZkNveXh4K1VLemFaQnJxUkNQVUQ0OUJQaGZuMVVyRkZwdkczbGFK?=
 =?utf-8?B?NC9nQ3M1ZEdYemRxVE10djlYTHYza1RvTFNpbTVyQkxUU3ZtMEdHanFubWlD?=
 =?utf-8?B?Qlh4dko4YlRjR2p1S3MxRExTOFdXZTU4UzFIdk4vWU8xd0pKU1lKYi84YWJz?=
 =?utf-8?B?TUdkNklNWVUzL1g1WFhTaDJoQmY0VW9OdzIvZzhxSG5PSkZxYkk2K0tvTVZX?=
 =?utf-8?B?T1Qya0t2STdvNDFra1VuR0lnRVlPTndCV3QyUnV6WEE2NGR5MXhWNmpUc00z?=
 =?utf-8?B?V010VVdra2RxT3kvZU1IQnhqcGdOYmdqNTFBbWdkcjhFQ2xiUENtV3NYbk5O?=
 =?utf-8?B?dytxWjZGMUJJK0dVbndJazBYeDVVT1h5bDlHYTY0MkVnSWN6eC90ZzF4YjZv?=
 =?utf-8?B?c0k4MnB0YTMrdmkwMnJLRUdxcm5SU0k1TVdzUkhYaUx5TjFhTmFhcHpRUzRD?=
 =?utf-8?B?V2psS2srVUx5VWUyQzNITUh4YjRrUzQxQjkyU3ROU1RGU0tzTVJSTGw4UktF?=
 =?utf-8?B?OVJIUC9vdDRkL3Y0Z01tc2RJaGFpZGVPRFdFNGJoTlc5aW51TEVTUnpFR1pv?=
 =?utf-8?B?eHBLQ1VwdVRtS21aQmozTFRYSDZzblhTNWRCYUlTbDlyZUQwWjMzTEJxb3Bo?=
 =?utf-8?B?UVEzcWo0Qkh4MFI4VkwyR1loemNVT3hNcEdBZlNmNG11alZBVDlTQkdsN1N0?=
 =?utf-8?B?N3AwYlBDVkZ1OG5LbmZpOXVTRktGTDFGSDlTWVRlajVna2psOEtheXlzOEpZ?=
 =?utf-8?B?R0N6b3A3NkVjWDNMUTBCNU9JZjlaSk9HZmUyaDlzOXNpTHlFVXVBaG9RWkZy?=
 =?utf-8?B?b1ZlWXZaYVZEKzBEdWIwZEtmQkpobXRya1A1OHpWSkhqbi9LU1Iza24rSVpm?=
 =?utf-8?B?RGN2LzJ1YTdJc21aTFNWYkp1Z21YRkQ2NG5ZSmZxd3NTSTlBTFVLTWluaWxz?=
 =?utf-8?B?R1B6VlVCSERVZlRCUnFaYUtMNGwrTldZNE9jbk0vaUdudVVaaFRxM3V6WmVI?=
 =?utf-8?B?MTJhSEVVWTIzbno4b0FZS3Z1Q2ZreExjYmFwcnRSU1hxaWFQbURmaGo5Mkha?=
 =?utf-8?B?TUJDZ1ZlK0pXdEMyczVXeGdiM3BiejBjYm0rQnNJR2lOV1g4eC84Z1drUDRG?=
 =?utf-8?B?M1Ric3prenBKTnlDYkFUZEdDQkUyUFNIOEIxby8xZjZMeW9LU3pCR014RkpL?=
 =?utf-8?B?L3JzNEVZTnRLTnZjVUdEQS85c1g1eGN2UllMR0xORG1CK0pRRW0wRkd2Szdo?=
 =?utf-8?B?cGU2eXA4RXBwSU5UKzZ2MFlqL2hoWDYwUHplSFBLOVgzcUhtVThVSzI1V2VU?=
 =?utf-8?B?cWxHQXFpNVF5TFVZWHdCRFkxQWZydHRIOS9YZ2RnbFJKQlZDWTBGR1B3aWxP?=
 =?utf-8?B?ckYydklXdjRyODFidVl0SXpiZDZVN1pwd3puUEJkN2dUL21kWkhxNktQcWZw?=
 =?utf-8?B?dXM2TW5heFlldXB6eE4rRGJtNHpmeUJRQStiTTF6aDRud3AzOFlLMlc0dDJz?=
 =?utf-8?B?cDJSdzU4MkJldnhBb3V1YlFNUzFQUzFFaFVvYWF6aTJvVktzcDFndjcwRmg1?=
 =?utf-8?B?UjFiOUZUVnRkTWcvcjVXNDV6c3ZZaUVTeUdUaW1GMVdnemNObitBeHlYZ09G?=
 =?utf-8?Q?pH1slyg7hfg9BMhn/ejhJyf90?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	Gs1mkDbTC9+dDka39sB9AubKvaE8aHJ8Wgjf8cYJqwReUh9+P7fCPQYwwwLsf0LUQu3byCvLgRiF1qS9H2TspAtxnFSfHwonp6uwomuwdIiy6Tu1wlO5UVCwvcFoEaWkJx9WERcjcRzSwGsTM6IyZ34exn9WiE/tf1yfG2POgOibwSomzADosO2gypFJN+Li6Wem2G9AekoLLSCG+bqq4JldJxpFCPMfE0D244eyTkw8KSHUOkiuOb1/d+CIMsbBbd8fSsd7Xf0Re1STs+1oF8R/KVstufo6MKxBGwSnFu2bjux5g43WhUNl92P9ogFEAUM44HlZUvTjPBqQbXo4zR8WoCdiVcoviu7NKptgfnwYn6MSIF3bjevDi5Hg7Sa87+8HpnS/bti7URhdleAbCM1exZUg/2Tv2T6JL0+/YpqJBlmwrQGIAwqEva6CKqcPQIaNQC1ejg/oWJdv6WQBIWSTXC9zdGaIVJMSaFwa7o8xCp1Dj1u67pjkJdF9hgKA3Jvy+YqH5rrl9UT82v5o+HUzri1ampkCXPbFhiOA+bNF/Y29fLMXZWrSwv7gs18oBZLlUWqhDfqy8+wFEsepYm/MYalcKjZifBlZqg3S764O1rhxfozQ+M7JPUzp3LxjZb37H8JFHbFC91ELUpwlhfWVN4pSnxIIgivz+q2X+oNqa5PH+sk0vS6MLnEGzuMv0LINj50TYJc5JCFQByhP7EKSD4xu+rAOhbQ3z6KzA4bNmmlPmSi1wBF50xvKY0vAIHVCnazWX0FlD4KaiX2W/cXhpOUL9l5uc/a30NkrGH0=
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 1dfca0ed-ecd7-41b1-20f6-08dbca701717
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 Oct 2023 15:38:17.8281
 (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: VHCaioYfUcLkPwdbId5n61yQ4E2dAwUTGyeF+IhD072hje1pQjXhoNn/jk6DwIUNjb+bByDVQJVjFnX2gWjyDA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN7PR03MB7154

The mapping of memory regions below the 1MB mark was all done by the PVH dom0
builder code, thus completely avoiding that region in the arch-specific IOMMU
hardware domain initialization code.  That lead to the IOMMU being enabled
without reserved regions in the low 1MB identity mapped in the p2m for PVH
hardware domains.  Firmware with missing RMRR/IVMD ranges that would otherwise
be located in the low 1MB would transiently trigger IOMMU faults until the p2m
is populated by the PVH dom0 builder:

AMD-Vi: IO_PAGE_FAULT: 0000:00:13.1 d0 addr 00000000000eb380 flags 0x20 RW
AMD-Vi: IO_PAGE_FAULT: 0000:00:13.1 d0 addr 00000000000eb340 flags 0
AMD-Vi: IO_PAGE_FAULT: 0000:00:13.2 d0 addr 00000000000ea1c0 flags 0
AMD-Vi: IO_PAGE_FAULT: 0000:00:14.5 d0 addr 00000000000eb480 flags 0x20 RW
AMD-Vi: IO_PAGE_FAULT: 0000:00:12.0 d0 addr 00000000000eb080 flags 0x20 RW
AMD-Vi: IO_PAGE_FAULT: 0000:00:14.5 d0 addr 00000000000eb400 flags 0
AMD-Vi: IO_PAGE_FAULT: 0000:00:12.0 d0 addr 00000000000eb040 flags 0

Mostly remove the special handling of the low 1MB done by the PVH dom0 builder,
leaving just the data copy between RAM regions.  Otherwise rely on the IOMMU
arch init code to create any identity mappings for reserved regions in such
range (like it already does for all reserved regions).

Note there's a small difference in behavior, as holes in the low 1MB will no
longer be identity mapped to the p2m.

Fixes: 6b4f6a31ace1 ('x86/PVH: de-duplicate mappings for first Mb of Dom0 memory')
Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
---
 xen/arch/x86/hvm/dom0_build.c       | 22 ----------------------
 xen/drivers/passthrough/x86/iommu.c |  8 +-------
 2 files changed, 1 insertion(+), 29 deletions(-)

diff --git a/xen/arch/x86/hvm/dom0_build.c b/xen/arch/x86/hvm/dom0_build.c
index bc0e290db612..979db7d1ec4d 100644
--- a/xen/arch/x86/hvm/dom0_build.c
+++ b/xen/arch/x86/hvm/dom0_build.c
@@ -449,28 +449,6 @@ static int __init pvh_populate_p2m(struct domain *d)
         }
     }
 
-    /* Non-RAM regions of space below 1MB get identity mapped. */
-    for ( i = rc = 0; i < MB1_PAGES; ++i )
-    {
-        p2m_type_t p2mt;
-        mfn_t mfn = get_gfn_query(d, i, &p2mt);
-
-        if ( mfn_eq(mfn, INVALID_MFN) )
-            rc = set_mmio_p2m_entry(d, _gfn(i), _mfn(i), PAGE_ORDER_4K);
-        else
-            /*
-             * If the p2m entry is already set it must belong to a RMRR and
-             * already be identity mapped, or be a RAM region.
-             */
-            ASSERT(p2mt == p2m_ram_rw || mfn_eq(mfn, _mfn(i)));
-        put_gfn(d, i);
-        if ( rc )
-        {
-            printk("Failed to identity map PFN %x: %d\n", i, rc);
-            return rc;
-        }
-    }
-
     if ( cpu_has_vmx && paging_mode_hap(d) && !vmx_unrestricted_guest(v) )
     {
         /*
diff --git a/xen/drivers/passthrough/x86/iommu.c b/xen/drivers/passthrough/x86/iommu.c
index c85549ccad6e..857dccb6a465 100644
--- a/xen/drivers/passthrough/x86/iommu.c
+++ b/xen/drivers/passthrough/x86/iommu.c
@@ -400,13 +400,7 @@ void __hwdom_init arch_iommu_hwdom_init(struct domain *d)
     max_pfn = (GB(4) >> PAGE_SHIFT) - 1;
     top = max(max_pdx, pfn_to_pdx(max_pfn) + 1);
 
-    /*
-     * First Mb will get mapped in one go by pvh_populate_p2m(). Avoid
-     * setting up potentially conflicting mappings here.
-     */
-    start = paging_mode_translate(d) ? PFN_DOWN(MB(1)) : 0;
-
-    for ( i = pfn_to_pdx(start), count = 0; i < top; )
+    for ( i = 0, start = 0, count = 0; i < top; )
     {
         unsigned long pfn = pdx_to_pfn(i);
         unsigned int perms = hwdom_iommu_map(d, pfn, max_pfn);
-- 
2.42.0



From xen-devel-bounces@lists.xenproject.org Wed Oct 11 16:04:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 11 Oct 2023 16:04:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615551.956861 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqbhR-0004mY-NV; Wed, 11 Oct 2023 16:04:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615551.956861; Wed, 11 Oct 2023 16: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 1qqbhR-0004mR-Kv; Wed, 11 Oct 2023 16:04:41 +0000
Received: by outflank-mailman (input) for mailman id 615551;
 Wed, 11 Oct 2023 16:04: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=uJaT=FZ=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qqbhQ-0004lj-9S
 for xen-devel@lists.xenproject.org; Wed, 11 Oct 2023 16:04:40 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id e0e3c25a-684f-11ee-98d4-6d05b1d4d9a1;
 Wed, 11 Oct 2023 18:04:38 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id 73D974EE0738;
 Wed, 11 Oct 2023 18:04: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: e0e3c25a-684f-11ee-98d4-6d05b1d4d9a1
MIME-Version: 1.0
Date: Wed, 11 Oct 2023 18:04:37 +0200
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: Julien Grall <julien@xen.org>
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>, Wei Liu <wl@xen.org>, Henry.Wang@arm.com
Subject: Re: [XEN PATCH][for-4.19 v2 2/2] docs/misra: add deviations.rst to
 document additional deviations.
In-Reply-To: <9fc7241a16ca8b1db9bf788d4125fe16@bugseng.com>
References: <cover.1696865051.git.nicola.vetrini@bugseng.com>
 <ccda90b6be8f6977cff14ae65749ffc7fa429c3c.1696865051.git.nicola.vetrini@bugseng.com>
 <alpine.DEB.2.22.394.2310091811190.3431292@ubuntu-linux-20-04-desktop>
 <a5635fc5e51518c205d776ac8a9600ba@bugseng.com>
 <alpine.DEB.2.22.394.2310101524080.3431292@ubuntu-linux-20-04-desktop>
 <781c9b5c-1301-4a23-8c13-fba62c844b03@xen.org>
 <186af6b6c1b34fc9088a5fb226ff2482@bugseng.com>
 <9fc7241a16ca8b1db9bf788d4125fe16@bugseng.com>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <dbac7fa915f2fe83ddf674ef89f48e0a@bugseng.com>
X-Sender: nicola.vetrini@bugseng.com
Organization: BUGSENG s.r.l.
Content-Type: multipart/mixed;
 boundary="=_c095f7df348125a664696fff750515cf"

--=_c095f7df348125a664696fff750515cf
Content-Transfer-Encoding: 7bit
Content-Type: text/plain; charset=US-ASCII;
 format=flowed

Attached is a list of all the unreferenced functions for x86. It's a bit 
rough and does not
distinguish the categories mentioned in my previous reply, but it's a 
starting point for any
further work on this.

-- 
Nicola Vetrini, BSc
Software Engineer, BUGSENG srl (https://bugseng.com)
--=_c095f7df348125a664696fff750515cf
Content-Transfer-Encoding: base64
Content-Type: text/plain;
 name=unref.txt
Content-Disposition: attachment;
 filename=unref.txt;
 size=26454

Y3VscHJpdDogZnVuY3Rpb24gYGFjcGlfdGFibGVfZ2V0X2VudHJ5X21hZHQoZW51bSBhY3BpX21h
ZHRfdHlwZSwgdW5zaWduZWQpJyBpcyBuZXZlciByZWZlcmVuY2VkXQpjdWxwcml0OiBmdW5jdGlv
biBgYXBlaV9jaGVja19tY2Uodm9pZCknIGlzIG5ldmVyIHJlZmVyZW5jZWRdCmN1bHByaXQ6IGZ1
bmN0aW9uIGBhcGVpX2NsZWFyX21jZSh1NjQpJyBpcyBuZXZlciByZWZlcmVuY2VkXQpjdWxwcml0
OiBmdW5jdGlvbiBgYXBlaV9yZWFkX21jZShzdHJ1Y3QgbWNlKiwgdTY0KiknIGlzIG5ldmVyIHJl
ZmVyZW5jZWRdCmN1bHByaXQ6IGZ1bmN0aW9uIGBhcGljX2ljcl9yZWFkKHZvaWQpJyAobXVsdGlw
bGUgdW5pdHMpIGlzIG5ldmVyIHJlZmVyZW5jZWRdCmN1bHByaXQ6IGZ1bmN0aW9uIGBhcGljX3dy
aXRlX2F0b21pYyh1bnNpZ25lZCBsb25nLCB1MzIpJyAobXVsdGlwbGUgdW5pdHMpIGlzIG5ldmVy
IHJlZmVyZW5jZWRdCmN1bHByaXQ6IGZ1bmN0aW9uIGBhcmNoX2dldF9ubWlfcmVhc29uKGNvbnN0
IHN0cnVjdCBkb21haW4qKScgKG11bHRpcGxlIHVuaXRzKSBpcyBuZXZlciByZWZlcmVuY2VkXQpj
dWxwcml0OiBmdW5jdGlvbiBgYXJjaF9nZXRfcGZuX3RvX21mbl9mcmFtZV9saXN0X2xpc3QoY29u
c3Qgc3RydWN0IGRvbWFpbiopJyAobXVsdGlwbGUgdW5pdHMpIGlzIG5ldmVyIHJlZmVyZW5jZWRd
CmN1bHByaXQ6IGZ1bmN0aW9uIGBhcmNoX3NldF9jcjIoc3RydWN0IHZjcHUqLCB1bnNpZ25lZCBs
b25nKScgKG11bHRpcGxlIHVuaXRzKSBpcyBuZXZlciByZWZlcmVuY2VkXQpjdWxwcml0OiBmdW5j
dGlvbiBgYXJjaF9zZXRfbWF4X3BmbihzdHJ1Y3QgZG9tYWluKiwgdW5zaWduZWQgbG9uZyknICht
dWx0aXBsZSB1bml0cykgaXMgbmV2ZXIgcmVmZXJlbmNlZF0KY3VscHJpdDogZnVuY3Rpb24gYGFy
Y2hfc2V0X25taV9yZWFzb24oc3RydWN0IGRvbWFpbiosIHVuc2lnbmVkIGxvbmcpJyAobXVsdGlw
bGUgdW5pdHMpIGlzIG5ldmVyIHJlZmVyZW5jZWRdCmN1bHByaXQ6IGZ1bmN0aW9uIGBhcmNoX3Nl
dF9wZm5fdG9fbWZuX2ZyYW1lX2xpc3RfbGlzdChzdHJ1Y3QgZG9tYWluKiwgeGVuX3Bmbl90KScg
KG11bHRpcGxlIHVuaXRzKSBpcyBuZXZlciByZWZlcmVuY2VkXQpjdWxwcml0OiBmdW5jdGlvbiBg
YXNtX2RvbWFpbl9jcmFzaF9zeW5jaHJvbm91cyh1bnNpZ25lZCBsb25nKScgaXMgbmV2ZXIgcmVm
ZXJlbmNlZF0KY3VscHJpdDogZnVuY3Rpb24gYGF0b21pY19hZGQoaW50LCBhdG9taWNfdCopJyAo
bXVsdGlwbGUgdW5pdHMpIGlzIG5ldmVyIHJlZmVyZW5jZWRdCmN1bHByaXQ6IGZ1bmN0aW9uIGBh
dG9taWNfYWRkX25lZ2F0aXZlKGludCwgYXRvbWljX3QqKScgKG11bHRpcGxlIHVuaXRzKSBpcyBu
ZXZlciByZWZlcmVuY2VkXQpjdWxwcml0OiBmdW5jdGlvbiBgYXRvbWljX2FkZF91bmxlc3MoYXRv
bWljX3QqLCBpbnQsIGludCknIChtdWx0aXBsZSB1bml0cykgaXMgbmV2ZXIgcmVmZXJlbmNlZF0K
Y3VscHJpdDogZnVuY3Rpb24gYGF0b21pY19pbmNfYW5kX3Rlc3QoYXRvbWljX3QqKScgKG11bHRp
cGxlIHVuaXRzKSBpcyBuZXZlciByZWZlcmVuY2VkXQpjdWxwcml0OiBmdW5jdGlvbiBgYXRvbWlj
X2luY19yZXR1cm4oYXRvbWljX3QqKScgKG11bHRpcGxlIHVuaXRzKSBpcyBuZXZlciByZWZlcmVu
Y2VkXQpjdWxwcml0OiBmdW5jdGlvbiBgYXRvbWljX3N1Yl9hbmRfdGVzdChpbnQsIGF0b21pY190
KiknIChtdWx0aXBsZSB1bml0cykgaXMgbmV2ZXIgcmVmZXJlbmNlZF0KY3VscHJpdDogZnVuY3Rp
b24gYGJzZWFyY2goY29uc3Qgdm9pZCosIGNvbnN0IHZvaWQqLCBzaXplX3QsIHNpemVfdCwgaW50
KCopKGNvbnN0IHZvaWQqLCBjb25zdCB2b2lkKikpJyBpcyBuZXZlciByZWZlcmVuY2VkXQpjdWxw
cml0OiBmdW5jdGlvbiBgY2hhbmdlX2JpdChpbnQsIHZvbGF0aWxlIHZvaWQqKScgKG11bHRpcGxl
IHVuaXRzKSBpcyBuZXZlciByZWZlcmVuY2VkXQpjdWxwcml0OiBmdW5jdGlvbiBgY2hlY2tfZm9y
X3VuZXhwZWN0ZWRfbXNpKHVuc2lnbmVkKScgaXMgbmV2ZXIgcmVmZXJlbmNlZF0KY3VscHJpdDog
ZnVuY3Rpb24gYGNsZWFyX25vZGVfY3B1bWFzayh1bnNpZ25lZCknIChtdWx0aXBsZSB1bml0cykg
aXMgbmV2ZXIgcmVmZXJlbmNlZF0KY3VscHJpdDogZnVuY3Rpb24gYGNtZGxpbmVfcGFyc2VfZWFy
bHkoY29uc3QgY2hhciosIGVhcmx5X2Jvb3Rfb3B0c190KiknIGlzIG5ldmVyIHJlZmVyZW5jZWRd
CmN1bHByaXQ6IGZ1bmN0aW9uIGBjb25zb2xlX2lucHV0X2RvbWFpbih2b2lkKScgaXMgbmV2ZXIg
cmVmZXJlbmNlZF0KY3VscHJpdDogZnVuY3Rpb24gYGNvbnN0YW50X2NoYW5nZV9iaXQoaW50LCB2
b2lkKiknIChtdWx0aXBsZSB1bml0cykgaXMgbmV2ZXIgcmVmZXJlbmNlZF0KY3VscHJpdDogZnVu
Y3Rpb24gYGNvcHlfdG9fdW5zYWZlKHZvaWQqLCBjb25zdCB2b2lkKiwgdW5zaWduZWQpJyAobXVs
dGlwbGUgdW5pdHMpIGlzIG5ldmVyIHJlZmVyZW5jZWRdCmN1bHByaXQ6IGZ1bmN0aW9uIGBjcHVt
YXNrX2Z1bGwoY29uc3QgY3B1bWFza190KiknIChtdWx0aXBsZSB1bml0cykgaXMgbmV2ZXIgcmVm
ZXJlbmNlZF0KY3VscHJpdDogZnVuY3Rpb24gYF9fY3B1bWFza190ZXN0X2FuZF9zZXRfY3B1KGlu
dCwgY3B1bWFza190KiknIChtdWx0aXBsZSB1bml0cykgaXMgbmV2ZXIgcmVmZXJlbmNlZF0KY3Vs
cHJpdDogZnVuY3Rpb24gYGNwdW1hc2tfeG9yKGNwdW1hc2tfdCosIGNvbnN0IGNwdW1hc2tfdCos
IGNvbnN0IGNwdW1hc2tfdCopJyAobXVsdGlwbGUgdW5pdHMpIGlzIG5ldmVyIHJlZmVyZW5jZWRd
CmN1bHByaXQ6IGZ1bmN0aW9uIGBfX2NwdV90b19iZTE2cChjb25zdCBfX3UxNiopJyAobXVsdGlw
bGUgdW5pdHMpIGlzIG5ldmVyIHJlZmVyZW5jZWRdCmN1bHByaXQ6IGZ1bmN0aW9uIGBfX2NwdV90
b19iZTMycChjb25zdCBfX3UzMiopJyAobXVsdGlwbGUgdW5pdHMpIGlzIG5ldmVyIHJlZmVyZW5j
ZWRdCmN1bHByaXQ6IGZ1bmN0aW9uIGBfX2NwdV90b19iZTY0cChjb25zdCBfX3U2NCopJyAobXVs
dGlwbGUgdW5pdHMpIGlzIG5ldmVyIHJlZmVyZW5jZWRdCmN1bHByaXQ6IGZ1bmN0aW9uIGBfX2Nw
dV90b19sZTE2cChjb25zdCBfX3UxNiopJyAobXVsdGlwbGUgdW5pdHMpIGlzIG5ldmVyIHJlZmVy
ZW5jZWRdCmN1bHByaXQ6IGZ1bmN0aW9uIGBfX2NwdV90b19sZTMycChjb25zdCBfX3UzMiopJyAo
bXVsdGlwbGUgdW5pdHMpIGlzIG5ldmVyIHJlZmVyZW5jZWRdCmN1bHByaXQ6IGZ1bmN0aW9uIGBf
X2NwdV90b19sZTY0cChjb25zdCBfX3U2NCopJyAobXVsdGlwbGUgdW5pdHMpIGlzIG5ldmVyIHJl
ZmVyZW5jZWRdCmN1bHByaXQ6IGZ1bmN0aW9uIGBjcjNfcGNpZCh1bnNpZ25lZCBsb25nKScgKG11
bHRpcGxlIHVuaXRzKSBpcyBuZXZlciByZWZlcmVuY2VkXQpjdWxwcml0OiBmdW5jdGlvbiBgZG9f
ZGVidWcoc3RydWN0IGNwdV91c2VyX3JlZ3MqKScgaXMgbmV2ZXIgcmVmZXJlbmNlZF0KY3VscHJp
dDogZnVuY3Rpb24gYGRvX2RldmljZV9ub3RfYXZhaWxhYmxlKHN0cnVjdCBjcHVfdXNlcl9yZWdz
KiknIGlzIG5ldmVyIHJlZmVyZW5jZWRdCmN1bHByaXQ6IGZ1bmN0aW9uIGBkb19kb3VibGVfZmF1
bHQoc3RydWN0IGNwdV91c2VyX3JlZ3MqKScgaXMgbmV2ZXIgcmVmZXJlbmNlZF0KY3VscHJpdDog
ZnVuY3Rpb24gYGRvX2Vhcmx5X3BhZ2VfZmF1bHQoc3RydWN0IGNwdV91c2VyX3JlZ3MqKScgaXMg
bmV2ZXIgcmVmZXJlbmNlZF0KY3VscHJpdDogZnVuY3Rpb24gYGRvX2VudHJ5X0NQKHN0cnVjdCBj
cHVfdXNlcl9yZWdzKiknIGlzIG5ldmVyIHJlZmVyZW5jZWRdCmN1bHByaXQ6IGZ1bmN0aW9uIGBk
b19nZW5lcmFsX3Byb3RlY3Rpb24oc3RydWN0IGNwdV91c2VyX3JlZ3MqKScgaXMgbmV2ZXIgcmVm
ZXJlbmNlZF0KY3VscHJpdDogZnVuY3Rpb24gYGRvX2ludDMoc3RydWN0IGNwdV91c2VyX3JlZ3Mq
KScgaXMgbmV2ZXIgcmVmZXJlbmNlZF0KY3VscHJpdDogZnVuY3Rpb24gYGRvX2ludmFsaWRfb3Ao
c3RydWN0IGNwdV91c2VyX3JlZ3MqKScgaXMgbmV2ZXIgcmVmZXJlbmNlZF0KY3VscHJpdDogZnVu
Y3Rpb24gYGRvbWFpbl9oYXNfaW9yZXFfc2VydmVyKGNvbnN0IHN0cnVjdCBkb21haW4qKScgaXMg
bmV2ZXIgcmVmZXJlbmNlZF0KY3VscHJpdDogZnVuY3Rpb24gYGRvbWFpbl9zZXRfYWxsb2NfYml0
c2l6ZShzdHJ1Y3QgZG9tYWluKiknIGlzIG5ldmVyIHJlZmVyZW5jZWRdCmN1bHByaXQ6IGZ1bmN0
aW9uIGBkb19tY2EoX19ndWVzdF9oYW5kbGVfeGVuX21jX3QpJyBpcyBuZXZlciByZWZlcmVuY2Vk
XQpjdWxwcml0OiBmdW5jdGlvbiBgZG9fcGFnZV9mYXVsdChzdHJ1Y3QgY3B1X3VzZXJfcmVncyop
JyBpcyBuZXZlciByZWZlcmVuY2VkXQpjdWxwcml0OiBmdW5jdGlvbiBgZG9fdHJhcChzdHJ1Y3Qg
Y3B1X3VzZXJfcmVncyopJyBpcyBuZXZlciByZWZlcmVuY2VkXQpjdWxwcml0OiBmdW5jdGlvbiBg
ZG9fdW5oYW5kbGVkX3RyYXAoc3RydWN0IGNwdV91c2VyX3JlZ3MqKScgaXMgbmV2ZXIgcmVmZXJl
bmNlZF0KY3VscHJpdDogZnVuY3Rpb24gYGVmaV9oYWx0X3N5c3RlbSh2b2lkKScgaXMgbmV2ZXIg
cmVmZXJlbmNlZF0KY3VscHJpdDogZnVuY3Rpb24gYGVmaV9tdWx0aWJvb3QyKEVGSV9IQU5ETEUs
IEVGSV9TWVNURU1fVEFCTEUqLCBjb25zdCBjaGFyKiknIGlzIG5ldmVyIHJlZmVyZW5jZWRdCmN1
bHByaXQ6IGZ1bmN0aW9uIGBlZmlfc3RhcnQoRUZJX0hBTkRMRSwgRUZJX1NZU1RFTV9UQUJMRSop
JyBpcyBuZXZlciByZWZlcmVuY2VkXQpjdWxwcml0OiBmdW5jdGlvbiBgRUxGX0FEVkFOQ0VfREVT
VChzdHJ1Y3QgZWxmX2JpbmFyeSosIHVpbnQ2NF90KScgKG11bHRpcGxlIHVuaXRzKSBpcyBuZXZl
ciByZWZlcmVuY2VkXQpjdWxwcml0OiBmdW5jdGlvbiBgZWxmX2xvb2t1cF9hZGRyKHN0cnVjdCBl
bGZfYmluYXJ5KiwgY29uc3QgY2hhciopJyBpcyBuZXZlciByZWZlcmVuY2VkXQpjdWxwcml0OiBm
dW5jdGlvbiBgZWxmX3NldF92ZXJib3NlKHN0cnVjdCBlbGZfYmluYXJ5KiknIGlzIG5ldmVyIHJl
ZmVyZW5jZWRdCmN1bHByaXQ6IGZ1bmN0aW9uIGBlbGZfc3ltX2J5X2luZGV4KHN0cnVjdCBlbGZf
YmluYXJ5KiwgdW5zaWduZWQpJyBpcyBuZXZlciByZWZlcmVuY2VkXQpjdWxwcml0OiBmdW5jdGlv
biBgZWxmX3hlbl9mZWF0dXJlX2dldChpbnQsIHVpbnQzMl90KiknIChtdWx0aXBsZSB1bml0cykg
aXMgbmV2ZXIgcmVmZXJlbmNlZF0KY3VscHJpdDogZnVuY3Rpb24gYEVSUl9DQVNUKGNvbnN0IHZv
aWQqKScgKG11bHRpcGxlIHVuaXRzKSBpcyBuZXZlciByZWZlcmVuY2VkXQpjdWxwcml0OiBmdW5j
dGlvbiBgZXJzdF9nZXRfbmV4dF9yZWNvcmRfaWQodTY0KiknIGlzIG5ldmVyIHJlZmVyZW5jZWRd
CmN1bHByaXQ6IGZ1bmN0aW9uIGBlcnN0X3JlYWQodTY0LCBzdHJ1Y3QgY3Blcl9yZWNvcmRfaGVh
ZGVyKiwgc2l6ZV90KScgaXMgbmV2ZXIgcmVmZXJlbmNlZF0KY3VscHJpdDogZnVuY3Rpb24gYGZp
bGxfcm9fbXB0KG1mbl90KScgaXMgbmV2ZXIgcmVmZXJlbmNlZF0KY3VscHJpdDogZnVuY3Rpb24g
YGdlbmVyaWNfZmZzbCh1bnNpZ25lZCBsb25nKScgKG11bHRpcGxlIHVuaXRzKSBpcyBuZXZlciBy
ZWZlcmVuY2VkXQpjdWxwcml0OiBmdW5jdGlvbiBgZ2VuZXJpY19mbHNsKHVuc2lnbmVkIGxvbmcp
JyAobXVsdGlwbGUgdW5pdHMpIGlzIG5ldmVyIHJlZmVyZW5jZWRdCmN1bHByaXQ6IGZ1bmN0aW9u
IGBnZXRfYml0bWFza19vcmRlcih1bnNpZ25lZCknIChtdWx0aXBsZSB1bml0cykgaXMgbmV2ZXIg
cmVmZXJlbmNlZF0KY3VscHJpdDogZnVuY3Rpb24gYGdldF9tc3JfeHNzKHZvaWQpJyBpcyBuZXZl
ciByZWZlcmVuY2VkXQpjdWxwcml0OiBmdW5jdGlvbiBgZ2V0X3BhZ2VfZnJvbV9sMWUobDFfcGdl
bnRyeV90LCBzdHJ1Y3QgZG9tYWluKiwgc3RydWN0IGRvbWFpbiopJyBpcyBuZXZlciByZWZlcmVu
Y2VkXQpjdWxwcml0OiBmdW5jdGlvbiBgZ2V0X3BhZ2VfdHlwZV9wcmVlbXB0aWJsZShzdHJ1Y3Qg
cGFnZV9pbmZvKiwgdW5zaWduZWQgbG9uZyknIGlzIG5ldmVyIHJlZmVyZW5jZWRdCmN1bHByaXQ6
IGZ1bmN0aW9uIGBnZXRfcGF0X2ZsYWdzKHN0cnVjdCB2Y3B1KiwgdWludDMyX3QsIHBhZGRyX3Qs
IHBhZGRyX3QsIHVpbnQ4X3QpJyBpcyBuZXZlciByZWZlcmVuY2VkXQpjdWxwcml0OiBmdW5jdGlv
biBgZ2V0X3BnX293bmVyKGRvbWlkX3QpJyBpcyBuZXZlciByZWZlcmVuY2VkXQpjdWxwcml0OiBm
dW5jdGlvbiBgZ2ZuX21pbihnZm5fdCwgZ2ZuX3QpJyAobXVsdGlwbGUgdW5pdHMpIGlzIG5ldmVy
IHJlZmVyZW5jZWRdCmN1bHByaXQ6IGZ1bmN0aW9uIGBnZm5fdG9fcGFkZHIoZ2ZuX3QpJyAobXVs
dGlwbGUgdW5pdHMpIGlzIG5ldmVyIHJlZmVyZW5jZWRdCmN1bHByaXQ6IGZ1bmN0aW9uIGBndWVz
dF9pb21tdV9hZGRfZXZlbnRfbG9nKHN0cnVjdCBkb21haW4qLCB1MzIKY3VscHJpdDogZnVuY3Rp
b24gYGd1ZXN0X2lvbW11X2Rlc3Ryb3koc3RydWN0IGRvbWFpbiopJyBpcyBuZXZlciByZWZlcmVu
Y2VkXQpjdWxwcml0OiBmdW5jdGlvbiBgZ3Vlc3RfaW9tbXVfaW5pdChzdHJ1Y3QgZG9tYWluKikn
IGlzIG5ldmVyIHJlZmVyZW5jZWRdCmN1bHByaXQ6IGZ1bmN0aW9uIGBndWVzdF9pb21tdV9zZXRf
YmFzZShzdHJ1Y3QgZG9tYWluKiwgdWludDY0X3QpJyBpcyBuZXZlciByZWZlcmVuY2VkXQpjdWxw
cml0OiBmdW5jdGlvbiBgZ3Vlc3RfbDFlX2Zyb21fZ2ZuKGdmbl90LCB1MzIpJyAobXVsdGlwbGUg
dW5pdHMpIGlzIG5ldmVyIHJlZmVyZW5jZWRdCmN1bHByaXQ6IGZ1bmN0aW9uIGBndWVzdF9sMWVf
Z2V0X3BrZXkoZ3Vlc3RfbDFlX3QpJyAobXVsdGlwbGUgdW5pdHMpIGlzIG5ldmVyIHJlZmVyZW5j
ZWRdCmN1bHByaXQ6IGZ1bmN0aW9uIGBndWVzdF9sMmVfZnJvbV9nZm4oZ2ZuX3QsIHUzMiknICht
dWx0aXBsZSB1bml0cykgaXMgbmV2ZXIgcmVmZXJlbmNlZF0KY3VscHJpdDogZnVuY3Rpb24gYGd1
ZXN0X2wyZV9nZXRfcGtleShndWVzdF9sMmVfdCknIChtdWx0aXBsZSB1bml0cykgaXMgbmV2ZXIg
cmVmZXJlbmNlZF0KY3VscHJpdDogZnVuY3Rpb24gYGd1ZXN0X2wzZV9mcm9tX2dmbihnZm5fdCwg
dTMyKScgKG11bHRpcGxlIHVuaXRzKSBpcyBuZXZlciByZWZlcmVuY2VkXQpjdWxwcml0OiBmdW5j
dGlvbiBgZ3Vlc3RfbDNlX2dldF9wa2V5KGd1ZXN0X2wzZV90KScgKG11bHRpcGxlIHVuaXRzKSBp
cyBuZXZlciByZWZlcmVuY2VkXQpjdWxwcml0OiBmdW5jdGlvbiBgZ3Vlc3RfbDRlX2Zyb21fZ2Zu
KGdmbl90LCB1MzIpJyAobXVsdGlwbGUgdW5pdHMpIGlzIG5ldmVyIHJlZmVyZW5jZWRdCmN1bHBy
aXQ6IGZ1bmN0aW9uIGBndWVzdF93YWxrX3RvX2dwYShjb25zdCB3YWxrX3QqKScgKG11bHRpcGxl
IHVuaXRzKSBpcyBuZXZlciByZWZlcmVuY2VkXQpjdWxwcml0OiBmdW5jdGlvbiBgaGxpc3RfYWRk
X2FmdGVyX3JjdShzdHJ1Y3QgaGxpc3Rfbm9kZSosIHN0cnVjdCBobGlzdF9ub2RlKiknIChtdWx0
aXBsZSB1bml0cykgaXMgbmV2ZXIgcmVmZXJlbmNlZF0KY3VscHJpdDogZnVuY3Rpb24gYGhsaXN0
X2FkZF9hZnRlcihzdHJ1Y3QgaGxpc3Rfbm9kZSosIHN0cnVjdCBobGlzdF9ub2RlKiknIChtdWx0
aXBsZSB1bml0cykgaXMgbmV2ZXIgcmVmZXJlbmNlZF0KY3VscHJpdDogZnVuY3Rpb24gYGhsaXN0
X2FkZF9iZWZvcmVfcmN1KHN0cnVjdCBobGlzdF9ub2RlKiwgc3RydWN0IGhsaXN0X25vZGUqKScg
KG11bHRpcGxlIHVuaXRzKSBpcyBuZXZlciByZWZlcmVuY2VkXQpjdWxwcml0OiBmdW5jdGlvbiBg
aGxpc3RfYWRkX2JlZm9yZShzdHJ1Y3QgaGxpc3Rfbm9kZSosIHN0cnVjdCBobGlzdF9ub2RlKikn
IChtdWx0aXBsZSB1bml0cykgaXMgbmV2ZXIgcmVmZXJlbmNlZF0KY3VscHJpdDogZnVuY3Rpb24g
YGhsaXN0X2FkZF9oZWFkX3JjdShzdHJ1Y3QgaGxpc3Rfbm9kZSosIHN0cnVjdCBobGlzdF9oZWFk
KiknIChtdWx0aXBsZSB1bml0cykgaXMgbmV2ZXIgcmVmZXJlbmNlZF0KY3VscHJpdDogZnVuY3Rp
b24gYGhsaXN0X2FkZF9oZWFkKHN0cnVjdCBobGlzdF9ub2RlKiwgc3RydWN0IGhsaXN0X2hlYWQq
KScgKG11bHRpcGxlIHVuaXRzKSBpcyBuZXZlciByZWZlcmVuY2VkXQpjdWxwcml0OiBmdW5jdGlv
biBgaGxpc3RfZGVsX2luaXQoc3RydWN0IGhsaXN0X25vZGUqKScgKG11bHRpcGxlIHVuaXRzKSBp
cyBuZXZlciByZWZlcmVuY2VkXQpjdWxwcml0OiBmdW5jdGlvbiBgaGxpc3RfZGVsX3JjdShzdHJ1
Y3QgaGxpc3Rfbm9kZSopJyAobXVsdGlwbGUgdW5pdHMpIGlzIG5ldmVyIHJlZmVyZW5jZWRdCmN1
bHByaXQ6IGZ1bmN0aW9uIGBobGlzdF9kZWwoc3RydWN0IGhsaXN0X25vZGUqKScgKG11bHRpcGxl
IHVuaXRzKSBpcyBuZXZlciByZWZlcmVuY2VkXQpjdWxwcml0OiBmdW5jdGlvbiBgaGxpc3RfZW1w
dHkoY29uc3Qgc3RydWN0IGhsaXN0X2hlYWQqKScgKG11bHRpcGxlIHVuaXRzKSBpcyBuZXZlciBy
ZWZlcmVuY2VkXQpjdWxwcml0OiBmdW5jdGlvbiBgaGxpc3RfcmVwbGFjZV9yY3Uoc3RydWN0IGhs
aXN0X25vZGUqLCBzdHJ1Y3QgaGxpc3Rfbm9kZSopJyAobXVsdGlwbGUgdW5pdHMpIGlzIG5ldmVy
IHJlZmVyZW5jZWRdCmN1bHByaXQ6IGZ1bmN0aW9uIGBodm1fY29weV9jb250ZXh0X2FuZF9wYXJh
bXMoc3RydWN0IGRvbWFpbiosIHN0cnVjdCBkb21haW4qKScgaXMgbmV2ZXIgcmVmZXJlbmNlZF0K
Y3VscHJpdDogZnVuY3Rpb24gYGh2bV9nZXRfbm9ucmVnX3N0YXRlKHN0cnVjdCB2Y3B1Kiwgc3Ry
dWN0IGh2bV92Y3B1X25vbnJlZ19zdGF0ZSopJyAobXVsdGlwbGUgdW5pdHMpIGlzIG5ldmVyIHJl
ZmVyZW5jZWRdCmN1bHByaXQ6IGZ1bmN0aW9uIGBodm1fc2V0X25vbnJlZ19zdGF0ZShzdHJ1Y3Qg
dmNwdSosIHN0cnVjdCBodm1fdmNwdV9ub25yZWdfc3RhdGUqKScgKG11bHRpcGxlIHVuaXRzKSBp
cyBuZXZlciByZWZlcmVuY2VkXQpjdWxwcml0OiBmdW5jdGlvbiBgaHdlaWdodF9sb25nKHVuc2ln
bmVkIGxvbmcpJyAobXVsdGlwbGUgdW5pdHMpIGlzIG5ldmVyIHJlZmVyZW5jZWRdCmN1bHByaXQ6
IGZ1bmN0aW9uIGBoeXBlcnZpc29yX3Jlc3VtZSh2b2lkKScgKG11bHRpcGxlIHVuaXRzKSBpcyBu
ZXZlciByZWZlcmVuY2VkXQpjdWxwcml0OiBmdW5jdGlvbiBgaHlwZXJ2X3Byb2JlKHZvaWQpJyAo
bXVsdGlwbGUgdW5pdHMpIGlzIG5ldmVyIHJlZmVyZW5jZWRdCmN1bHByaXQ6IGZ1bmN0aW9uIGBp
bl9hdG9taWModm9pZCknIGlzIG5ldmVyIHJlZmVyZW5jZWRdCmN1bHByaXQ6IGZ1bmN0aW9uIGBp
bmxfcCh1bnNpZ25lZCBzaG9ydCknIChtdWx0aXBsZSB1bml0cykgaXMgbmV2ZXIgcmVmZXJlbmNl
ZF0KY3VscHJpdDogZnVuY3Rpb24gYGludnBjaWRfZmx1c2hfc2luZ2xlX2NvbnRleHQodW5zaWdu
ZWQpJyAobXVsdGlwbGUgdW5pdHMpIGlzIG5ldmVyIHJlZmVyZW5jZWRdCmN1bHByaXQ6IGZ1bmN0
aW9uIGBpbndfcCh1bnNpZ25lZCBzaG9ydCknIChtdWx0aXBsZSB1bml0cykgaXMgbmV2ZXIgcmVm
ZXJlbmNlZF0KY3VscHJpdDogZnVuY3Rpb24gYGlvX2FwaWNfbW9kaWZ5KHVuc2lnbmVkLCB1bnNp
Z25lZCwgdW5zaWduZWQpJyAobXVsdGlwbGUgdW5pdHMpIGlzIG5ldmVyIHJlZmVyZW5jZWRdCmN1
bHByaXQ6IGZ1bmN0aW9uIGBpb21tdV9hZGRfZXh0cmFfcmVzZXJ2ZWRfZGV2aWNlX21lbW9yeSh1
bnNpZ25lZCBsb25nLCB1bnNpZ25lZCBsb25nLCBwY2lfc2JkZl90KScgaXMgbmV2ZXIgcmVmZXJl
bmNlZF0KY3VscHJpdDogZnVuY3Rpb24gYGlvbW11X2NyYXNoX3NodXRkb3duKHZvaWQpJyBpcyBu
ZXZlciByZWZlcmVuY2VkXQpjdWxwcml0OiBmdW5jdGlvbiBgaW9tbXVfZGV2X2lvdGxiX2ZsdXNo
X3RpbWVvdXQoc3RydWN0IGRvbWFpbiosIHN0cnVjdCBwY2lfZGV2KiknIGlzIG5ldmVyIHJlZmVy
ZW5jZWRdCmN1bHByaXQ6IGZ1bmN0aW9uIGBpb21tdV9oYXNfZmVhdHVyZShzdHJ1Y3QgZG9tYWlu
KiwgZW51bSBpb21tdV9mZWF0dXJlKScgaXMgbmV2ZXIgcmVmZXJlbmNlZF0KY3VscHJpdDogZnVu
Y3Rpb24gYGlvbW11X2xvb2t1cF9wYWdlKHN0cnVjdCBkb21haW4qLCBkZm5fdCwgbWZuX3QqLCB1
bnNpZ25lZCopJyBpcyBuZXZlciByZWZlcmVuY2VkXQpjdWxwcml0OiBmdW5jdGlvbiBgaXNfZW5k
YnI2NF9wb2lzb24oY29uc3Qgdm9pZCopJyAobXVsdGlwbGUgdW5pdHMpIGlzIG5ldmVyIHJlZmVy
ZW5jZWRdCmN1bHByaXQ6IGZ1bmN0aW9uIGBpc19pb3JlcV9zZXJ2ZXJfcGFnZShzdHJ1Y3QgZG9t
YWluKiwgY29uc3Qgc3RydWN0IHBhZ2VfaW5mbyopJyBpcyBuZXZlciByZWZlcmVuY2VkXQpjdWxw
cml0OiBmdW5jdGlvbiBgaXNfbDF0Zl9zYWZlX21hZGRyKGludHB0ZV90KScgKG11bHRpcGxlIHVu
aXRzKSBpcyBuZXZlciByZWZlcmVuY2VkXQpjdWxwcml0OiBmdW5jdGlvbiBgaXNfcHZfNjRiaXRf
dmNwdShjb25zdCBzdHJ1Y3QgdmNwdSopJyAobXVsdGlwbGUgdW5pdHMpIGlzIG5ldmVyIHJlZmVy
ZW5jZWRdCmN1bHByaXQ6IGZ1bmN0aW9uIGBrZXhlY19jcmFzaF9zYXZlX2NwdSh2b2lkKScgKG11
bHRpcGxlIHVuaXRzKSBpcyBuZXZlciByZWZlcmVuY2VkXQpjdWxwcml0OiBmdW5jdGlvbiBgbDFl
X2Zyb21fcGFkZHIocGFkZHJfdCwgdW5zaWduZWQpJyAobXVsdGlwbGUgdW5pdHMpIGlzIG5ldmVy
IHJlZmVyZW5jZWRdCmN1bHByaXQ6IGZ1bmN0aW9uIGBsaXN0X2VtcHR5X2NhcmVmdWwoY29uc3Qg
c3RydWN0IGxpc3RfaGVhZCopJyAobXVsdGlwbGUgdW5pdHMpIGlzIG5ldmVyIHJlZmVyZW5jZWRd
CmN1bHByaXQ6IGZ1bmN0aW9uIGBsaXN0X2lzX2xhc3QoY29uc3Qgc3RydWN0IGxpc3RfaGVhZCos
IGNvbnN0IHN0cnVjdCBsaXN0X2hlYWQqKScgKG11bHRpcGxlIHVuaXRzKSBpcyBuZXZlciByZWZl
cmVuY2VkXQpjdWxwcml0OiBmdW5jdGlvbiBgbGlzdF9pc19zaW5ndWxhcihjb25zdCBzdHJ1Y3Qg
bGlzdF9oZWFkKiknIChtdWx0aXBsZSB1bml0cykgaXMgbmV2ZXIgcmVmZXJlbmNlZF0KY3VscHJp
dDogZnVuY3Rpb24gYGxpc3RfbW92ZV90YWlsKHN0cnVjdCBsaXN0X2hlYWQqLCBzdHJ1Y3QgbGlz
dF9oZWFkKiknIChtdWx0aXBsZSB1bml0cykgaXMgbmV2ZXIgcmVmZXJlbmNlZF0KY3VscHJpdDog
ZnVuY3Rpb24gYGxpc3RfcmVwbGFjZV9pbml0KHN0cnVjdCBsaXN0X2hlYWQqLCBzdHJ1Y3QgbGlz
dF9oZWFkKiknIChtdWx0aXBsZSB1bml0cykgaXMgbmV2ZXIgcmVmZXJlbmNlZF0KY3VscHJpdDog
ZnVuY3Rpb24gYGxpc3RfcmVwbGFjZV9yY3Uoc3RydWN0IGxpc3RfaGVhZCosIHN0cnVjdCBsaXN0
X2hlYWQqKScgKG11bHRpcGxlIHVuaXRzKSBpcyBuZXZlciByZWZlcmVuY2VkXQpjdWxwcml0OiBm
dW5jdGlvbiBgbWFwY2FjaGVfb3ZlcnJpZGVfY3VycmVudChzdHJ1Y3QgdmNwdSopJyBpcyBuZXZl
ciByZWZlcmVuY2VkXQpjdWxwcml0OiBmdW5jdGlvbiBgbWNlX2JhcnJpZXJfZGVjKHN0cnVjdCBt
Y2Vfc29mdGlycV9iYXJyaWVyKiknIGlzIG5ldmVyIHJlZmVyZW5jZWRdCmN1bHByaXQ6IGZ1bmN0
aW9uIGBtY2VfYmFycmllcl9pbml0KHN0cnVjdCBtY2Vfc29mdGlycV9iYXJyaWVyKiknIGlzIG5l
dmVyIHJlZmVyZW5jZWRdCmN1bHByaXQ6IGZ1bmN0aW9uIGBtY2VfYmFycmllcihzdHJ1Y3QgbWNl
X3NvZnRpcnFfYmFycmllciopJyBpcyBuZXZlciByZWZlcmVuY2VkXQpjdWxwcml0OiBmdW5jdGlv
biBgbWVtY2hyKGNvbnN0IHZvaWQqLCBpbnQsIHNpemVfdCknIGlzIG5ldmVyIHJlZmVyZW5jZWRd
CmN1bHByaXQ6IGZ1bmN0aW9uIGBtZW1jbXAoY29uc3Qgdm9pZCosIGNvbnN0IHZvaWQqLCBzaXpl
X3QpJyBpcyBuZXZlciByZWZlcmVuY2VkXQpjdWxwcml0OiBmdW5jdGlvbiBgbWVtbW92ZSh2b2lk
KiwgY29uc3Qgdm9pZCosIHNpemVfdCknIGlzIG5ldmVyIHJlZmVyZW5jZWRdCmN1bHByaXQ6IGZ1
bmN0aW9uIGBtZW1zZXQodm9pZCosIGludCwgc2l6ZV90KScgaXMgbmV2ZXIgcmVmZXJlbmNlZF0K
Y3VscHJpdDogZnVuY3Rpb24gYG1lbV9zaGFyaW5nX2ZvcmtfcmVzZXQoc3RydWN0IGRvbWFpbios
IF9Cb29sLCBfQm9vbCknIChtdWx0aXBsZSB1bml0cykgaXMgbmV2ZXIgcmVmZXJlbmNlZF0KY3Vs
cHJpdDogZnVuY3Rpb24gYG1mbl9tYXgobWZuX3QsIG1mbl90KScgKG11bHRpcGxlIHVuaXRzKSBp
cyBuZXZlciByZWZlcmVuY2VkXQpjdWxwcml0OiBmdW5jdGlvbiBgbW1fZW5mb3JjZV9vcmRlcl9s
b2NrX3Bvc3RfcGVyX3BhZ2Vfc2hhcmluZyhjb25zdCBzdHJ1Y3QgZG9tYWluKiwgaW50KiwgdW5z
aWduZWQgc2hvcnQqKScgKG11bHRpcGxlIHVuaXRzKSBpcyBuZXZlciByZWZlcmVuY2VkXQpjdWxw
cml0OiBmdW5jdGlvbiBgbW1fZW5mb3JjZV9vcmRlcl9sb2NrX3ByZV9wZXJfcGFnZV9zaGFyaW5n
KGNvbnN0IHN0cnVjdCBkb21haW4qKScgKG11bHRpcGxlIHVuaXRzKSBpcyBuZXZlciByZWZlcmVu
Y2VkXQpjdWxwcml0OiBmdW5jdGlvbiBgbW1fcmVhZF9sb2NrX2FsdHAybShjb25zdCBzdHJ1Y3Qg
ZG9tYWluKiwgbW1fcndsb2NrX3QqKScgKG11bHRpcGxlIHVuaXRzKSBpcyBuZXZlciByZWZlcmVu
Y2VkXQpjdWxwcml0OiBmdW5jdGlvbiBgbXRycl9hZGQodW5zaWduZWQgbG9uZywgdW5zaWduZWQg
bG9uZywgdW5zaWduZWQsIGNoYXIpJyBpcyBuZXZlciByZWZlcmVuY2VkXQpjdWxwcml0OiBmdW5j
dGlvbiBgbXRycl9icF9yZXN0b3JlKHZvaWQpJyBpcyBuZXZlciByZWZlcmVuY2VkXQpjdWxwcml0
OiBmdW5jdGlvbiBgbXRycl9kZWwoaW50LCB1bnNpZ25lZCBsb25nLCB1bnNpZ25lZCBsb25nKScg
aXMgbmV2ZXIgcmVmZXJlbmNlZF0KY3VscHJpdDogZnVuY3Rpb24gYF9fbm9kZXNfY29tcGxlbWVu
dChub2RlbWFza190KiwgY29uc3Qgbm9kZW1hc2tfdCosIGludCknIChtdWx0aXBsZSB1bml0cykg
aXMgbmV2ZXIgcmVmZXJlbmNlZF0KY3VscHJpdDogZnVuY3Rpb24gYF9fbm9kZXNfZXF1YWwoY29u
c3Qgbm9kZW1hc2tfdCosIGNvbnN0IG5vZGVtYXNrX3QqLCBpbnQpJyAobXVsdGlwbGUgdW5pdHMp
IGlzIG5ldmVyIHJlZmVyZW5jZWRdCmN1bHByaXQ6IGZ1bmN0aW9uIGBfX25vZGVzX3N1YnNldChj
b25zdCBub2RlbWFza190KiwgY29uc3Qgbm9kZW1hc2tfdCosIGludCknIChtdWx0aXBsZSB1bml0
cykgaXMgbmV2ZXIgcmVmZXJlbmNlZF0KY3VscHJpdDogZnVuY3Rpb24gYF9fbm9kZXNfeG9yKG5v
ZGVtYXNrX3QqLCBjb25zdCBub2RlbWFza190KiwgY29uc3Qgbm9kZW1hc2tfdCosIGludCknICht
dWx0aXBsZSB1bml0cykgaXMgbmV2ZXIgcmVmZXJlbmNlZF0KY3VscHJpdDogZnVuY3Rpb24gYG5v
dGlmaWVyX2NoYWluX3VucmVnaXN0ZXIoc3RydWN0IG5vdGlmaWVyX2hlYWQqLCBzdHJ1Y3Qgbm90
aWZpZXJfYmxvY2sqKScgaXMgbmV2ZXIgcmVmZXJlbmNlZF0KY3VscHJpdDogZnVuY3Rpb24gYG5z
dm1fdmNwdV9zd2l0Y2godm9pZCknIGlzIG5ldmVyIHJlZmVyZW5jZWRdCmN1bHByaXQ6IGZ1bmN0
aW9uIGBvdXRsX3AodW5zaWduZWQsIHVuc2lnbmVkIHNob3J0KScgKG11bHRpcGxlIHVuaXRzKSBp
cyBuZXZlciByZWZlcmVuY2VkXQpjdWxwcml0OiBmdW5jdGlvbiBgb3V0d19wKHVuc2lnbmVkIHNo
b3J0LCB1bnNpZ25lZCBzaG9ydCknIChtdWx0aXBsZSB1bml0cykgaXMgbmV2ZXIgcmVmZXJlbmNl
ZF0KY3VscHJpdDogZnVuY3Rpb24gYHBhZ2VfbGlzdF9maXJzdChjb25zdCBzdHJ1Y3QgcGFnZV9s
aXN0X2hlYWQqKScgKG11bHRpcGxlIHVuaXRzKSBpcyBuZXZlciByZWZlcmVuY2VkXQpjdWxwcml0
OiBmdW5jdGlvbiBgcGFnZV9saXN0X3ByZXYoY29uc3Qgc3RydWN0IHBhZ2VfaW5mbyosIGNvbnN0
IHN0cnVjdCBwYWdlX2xpc3RfaGVhZCopJyAobXVsdGlwbGUgdW5pdHMpIGlzIG5ldmVyIHJlZmVy
ZW5jZWRdCmN1bHByaXQ6IGZ1bmN0aW9uIGBwYWdlX2xvY2soc3RydWN0IHBhZ2VfaW5mbyopJyBp
cyBuZXZlciByZWZlcmVuY2VkXQpjdWxwcml0OiBmdW5jdGlvbiBgcGFnZV91bmxvY2soc3RydWN0
IHBhZ2VfaW5mbyopJyBpcyBuZXZlciByZWZlcmVuY2VkXQpjdWxwcml0OiBmdW5jdGlvbiBgcGFn
aW5nX2dldF9tb2RlKHN0cnVjdCB2Y3B1KiknIGlzIG5ldmVyIHJlZmVyZW5jZWRdCmN1bHByaXQ6
IGZ1bmN0aW9uIGBwYXJzZV9zaWduZWRfaW50ZWdlcihjb25zdCBjaGFyKiwgY29uc3QgY2hhcios
IGNvbnN0IGNoYXIqLCBsb25nIGxvbmcqKScgaXMgbmV2ZXIgcmVmZXJlbmNlZF0KY3VscHJpdDog
ZnVuY3Rpb24gYHBjaWVfYWVyX2dldF9maXJtd2FyZV9maXJzdChjb25zdCBzdHJ1Y3QgcGNpX2Rl
diopJyBpcyBuZXZlciByZWZlcmVuY2VkXQpjdWxwcml0OiBmdW5jdGlvbiBgcGNpX2ZpbmRfbmV4
dF9jYXAodTE2LCB1OCwgdW5zaWduZWQsIHU4LCBpbnQpJyBpcyBuZXZlciByZWZlcmVuY2VkXQpj
dWxwcml0OiBmdW5jdGlvbiBgcGNpX2tub3duX3NlZ21lbnQodTE2KScgaXMgbmV2ZXIgcmVmZXJl
bmNlZF0KY3VscHJpdDogZnVuY3Rpb24gYHBjcHVfc2NoZWR1bGVfbG9jayh1bnNpZ25lZCknICht
dWx0aXBsZSB1bml0cykgaXMgbmV2ZXIgcmVmZXJlbmNlZF0KY3VscHJpdDogZnVuY3Rpb24gYHBj
cHVfc2NoZWR1bGVfdW5sb2NrKHNwaW5sb2NrX3QqLCB1bnNpZ25lZCknIChtdWx0aXBsZSB1bml0
cykgaXMgbmV2ZXIgcmVmZXJlbmNlZF0KY3VscHJpdDogZnVuY3Rpb24gYHByaW50X2d3KGNvbnN0
IHdhbGtfdCopJyAobXVsdGlwbGUgdW5pdHMpIGlzIG5ldmVyIHJlZmVyZW5jZWRdCmN1bHByaXQ6
IGZ1bmN0aW9uIGBQVFJfUkVUKGNvbnN0IHZvaWQqKScgKG11bHRpcGxlIHVuaXRzKSBpcyBuZXZl
ciByZWZlcmVuY2VkXQpjdWxwcml0OiBmdW5jdGlvbiBgcHV0X3BhZ2VfZnJvbV9sMWUobDFfcGdl
bnRyeV90LCBzdHJ1Y3QgZG9tYWluKiknIGlzIG5ldmVyIHJlZmVyZW5jZWRdCmN1bHByaXQ6IGZ1
bmN0aW9uIGBwdXRfcGdfb3duZXIoc3RydWN0IGRvbWFpbiopJyAobXVsdGlwbGUgdW5pdHMpIGlz
IG5ldmVyIHJlZmVyZW5jZWRdCmN1bHByaXQ6IGZ1bmN0aW9uIGBwdXRfdW5hbGlnbmVkX2JlMTYo
dWludDE2X3QsIHZvaWQqKScgKG11bHRpcGxlIHVuaXRzKSBpcyBuZXZlciByZWZlcmVuY2VkXQpj
dWxwcml0OiBmdW5jdGlvbiBgcHZfY29uc29sZV9yeChzdHJ1Y3QgY3B1X3VzZXJfcmVncyopJyAo
dW5pdCBgeGVuL2RyaXZlcnMvY2hhci9jb25zb2xlLmMnIHdpdGggdGFyZ2V0IGB4ZW4vZHJpdmVy
cy9jaGFyL2NvbnNvbGUubycpIGlzIG5ldmVyIHJlZmVyZW5jZWRdCmN1bHByaXQ6IGZ1bmN0aW9u
IGBwdl9lbXVsYXRlX2dhdGVfb3Aoc3RydWN0IGNwdV91c2VyX3JlZ3MqKScgKG11bHRpcGxlIHVu
aXRzKSBpcyBuZXZlciByZWZlcmVuY2VkXQpjdWxwcml0OiBmdW5jdGlvbiBgcHZfZW11bGF0ZV9w
cml2aWxlZ2VkX29wKHN0cnVjdCBjcHVfdXNlcl9yZWdzKiknIChtdWx0aXBsZSB1bml0cykgaXMg
bmV2ZXIgcmVmZXJlbmNlZF0KY3VscHJpdDogZnVuY3Rpb24gYHB2X2luamVjdF9zd19pbnRlcnJ1
cHQodW5zaWduZWQpJyAobXVsdGlwbGUgdW5pdHMpIGlzIG5ldmVyIHJlZmVyZW5jZWRdCmN1bHBy
aXQ6IGZ1bmN0aW9uIGBwdl9tYXBfbGR0X3NoYWRvd19wYWdlKHVuc2lnbmVkKScgKG11bHRpcGxl
IHVuaXRzKSBpcyBuZXZlciByZWZlcmVuY2VkXQpjdWxwcml0OiBmdW5jdGlvbiBgcHZfcGl0X2hh
bmRsZXIoaW50LCBpbnQsIGludCknIGlzIG5ldmVyIHJlZmVyZW5jZWRdCmN1bHByaXQ6IGZ1bmN0
aW9uIGBwdl9zZXRfZ2R0KHN0cnVjdCB2Y3B1KiwgY29uc3QgdW5zaWduZWQgbG9uZwpjdWxwcml0
OiBmdW5jdGlvbiBgcHZfc2hpbV9maXh1cF9lODIwKHZvaWQpJyAobXVsdGlwbGUgdW5pdHMpIGlz
IG5ldmVyIHJlZmVyZW5jZWRdCmN1bHByaXQ6IGZ1bmN0aW9uIGBwdl9zaGltX2luamVjdF9ldnRj
aG4odW5zaWduZWQpJyAobXVsdGlwbGUgdW5pdHMpIGlzIG5ldmVyIHJlZmVyZW5jZWRdCmN1bHBy
aXQ6IGZ1bmN0aW9uIGBwdl9zaGltX3NldHVwX2RvbShzdHJ1Y3QgZG9tYWluKiwgbDRfcGdlbnRy
eV90KiwgdW5zaWduZWQgbG9uZywgdW5zaWduZWQgbG9uZywgdW5zaWduZWQgbG9uZywgdW5zaWdu
ZWQgbG9uZywgc3RhcnRfaW5mb190KiknIChtdWx0aXBsZSB1bml0cykgaXMgbmV2ZXIgcmVmZXJl
bmNlZF0KY3VscHJpdDogZnVuY3Rpb24gYHB2X3NvZnRfcmR0c2MoY29uc3Qgc3RydWN0IHZjcHUq
LCBjb25zdCBzdHJ1Y3QgY3B1X3VzZXJfcmVncyopJyBpcyBuZXZlciByZWZlcmVuY2VkXQpjdWxw
cml0OiBmdW5jdGlvbiBgcmFuZ2VzZXRfY2xhaW1fcmFuZ2Uoc3RydWN0IHJhbmdlc2V0KiwgdW5z
aWduZWQgbG9uZywgdW5zaWduZWQgbG9uZyopJyBpcyBuZXZlciByZWZlcmVuY2VkXQpjdWxwcml0
OiBmdW5jdGlvbiBgcmFuZ2VzZXRfc3dhcChzdHJ1Y3QgcmFuZ2VzZXQqLCBzdHJ1Y3QgcmFuZ2Vz
ZXQqKScgaXMgbmV2ZXIgcmVmZXJlbmNlZF0KY3VscHJpdDogZnVuY3Rpb24gYF9yZWFkX2xvY2tf
aXJxKHJ3bG9ja190KiknIChtdWx0aXBsZSB1bml0cykgaXMgbmV2ZXIgcmVmZXJlbmNlZF0KY3Vs
cHJpdDogZnVuY3Rpb24gYF9yZWFkX3VubG9ja19pcnEocndsb2NrX3QqKScgKG11bHRpcGxlIHVu
aXRzKSBpcyBuZXZlciByZWZlcmVuY2VkXQpjdWxwcml0OiBmdW5jdGlvbiBgcmVnaW9uX3RvX3Bh
Z2VzKHVuc2lnbmVkIGxvbmcsIHVuc2lnbmVkIGxvbmcpJyAobXVsdGlwbGUgdW5pdHMpIGlzIG5l
dmVyIHJlZmVyZW5jZWRdCmN1bHByaXQ6IGZ1bmN0aW9uIGByZWxlYXNlX2lycSh1bnNpZ25lZCwg
Y29uc3Qgdm9pZCopJyBpcyBuZXZlciByZWZlcmVuY2VkXQpjdWxwcml0OiBmdW5jdGlvbiBgcmVs
ZWFzZV9sYXBpY19ubWkodm9pZCknIGlzIG5ldmVyIHJlZmVyZW5jZWRdCmN1bHByaXQ6IGZ1bmN0
aW9uIGByZWxvYyh1aW50MzJfdCwgdWludDMyX3QsIHVpbnQzMl90LCB1aW50MzJfdCknIGlzIG5l
dmVyIHJlZmVyZW5jZWRdCmN1bHByaXQ6IGZ1bmN0aW9uIGByZXNlcnZlX2xhcGljX25taSh2b2lk
KScgaXMgbmV2ZXIgcmVmZXJlbmNlZF0KY3VscHJpdDogZnVuY3Rpb24gYHJvbDMyKF9fdTMyLCB1
bnNpZ25lZCknIChtdWx0aXBsZSB1bml0cykgaXMgbmV2ZXIgcmVmZXJlbmNlZF0KY3VscHJpdDog
ZnVuY3Rpb24gYHJvcjMyKF9fdTMyLCB1bnNpZ25lZCknIChtdWx0aXBsZSB1bml0cykgaXMgbmV2
ZXIgcmVmZXJlbmNlZF0KY3VscHJpdDogZnVuY3Rpb24gYHNhZmVfY29weV9zdHJpbmdfZnJvbV9n
dWVzdChfX2d1ZXN0X2hhbmRsZV9jaGFyLCBzaXplX3QsIHNpemVfdCknIGlzIG5ldmVyIHJlZmVy
ZW5jZWRdCmN1bHByaXQ6IGZ1bmN0aW9uIGBzY2hlZF9nZXRfaWRfYnlfbmFtZShjb25zdCBjaGFy
KiknIGlzIG5ldmVyIHJlZmVyZW5jZWRdCmN1bHByaXQ6IGZ1bmN0aW9uIGBzY2hlZF91bml0X3Bh
dXNlX25vc3luYyhjb25zdCBzdHJ1Y3Qgc2NoZWRfdW5pdCopJyAobXVsdGlwbGUgdW5pdHMpIGlz
IG5ldmVyIHJlZmVyZW5jZWRdCmN1bHByaXQ6IGZ1bmN0aW9uIGBzY2hlZF91bml0X3VucGF1c2Uo
Y29uc3Qgc3RydWN0IHNjaGVkX3VuaXQqKScgKG11bHRpcGxlIHVuaXRzKSBpcyBuZXZlciByZWZl
cmVuY2VkXQpjdWxwcml0OiBmdW5jdGlvbiBgc2VhcmNoX3ByZV9leGNlcHRpb25fdGFibGUoc3Ry
dWN0IGNwdV91c2VyX3JlZ3MqKScgaXMgbmV2ZXIgcmVmZXJlbmNlZF0KY3VscHJpdDogZnVuY3Rp
b24gYHNlcmlhbF9nZXRjKGludCknIGlzIG5ldmVyIHJlZmVyZW5jZWRdCmN1bHByaXQ6IGZ1bmN0
aW9uIGBzZXJpYWxfcHV0YyhpbnQsIGNoYXIpJyBpcyBuZXZlciByZWZlcmVuY2VkXQpjdWxwcml0
OiBmdW5jdGlvbiBgc2VyaWFsX3Z1YXJ0X2luZm8oaW50KScgaXMgbmV2ZXIgcmVmZXJlbmNlZF0K
Y3VscHJpdDogZnVuY3Rpb24gYF9fc2V0X2ZpeG1hcF94KGVudW0gZml4ZWRfYWRkcmVzc2VzX3gs
IHVuc2lnbmVkIGxvbmcsIHVuc2lnbmVkIGxvbmcpJyBpcyBuZXZlciByZWZlcmVuY2VkXQpjdWxw
cml0OiBmdW5jdGlvbiBgc2hhZG93X3JlbW92ZV9hbGxfc2hhZG93cyhzdHJ1Y3QgZG9tYWluKiwg
bWZuX3QpJyAobXVsdGlwbGUgdW5pdHMpIGlzIG5ldmVyIHJlZmVyZW5jZWRdCmN1bHByaXQ6IGZ1
bmN0aW9uIGBfc3Bpbl90cnlsb2NrX3JlY3Vyc2l2ZShzcGlubG9ja190KiknIGlzIG5ldmVyIHJl
ZmVyZW5jZWRdCmN1bHByaXQ6IGZ1bmN0aW9uIGBzdGFydF9zZWNvbmRhcnkodm9pZCknIGlzIG5l
dmVyIHJlZmVyZW5jZWRdCmN1bHByaXQ6IGZ1bmN0aW9uIGBfX3N0YXJ0X3hlbih1bnNpZ25lZCBs
b25nKScgaXMgbmV2ZXIgcmVmZXJlbmNlZF0KY3VscHJpdDogZnVuY3Rpb24gYHN0cmNhc2VjbXAo
Y29uc3QgY2hhciosIGNvbnN0IGNoYXIqKScgaXMgbmV2ZXIgcmVmZXJlbmNlZF0KY3VscHJpdDog
ZnVuY3Rpb24gYHN0cmNocihjb25zdCBjaGFyKiwgaW50KScgaXMgbmV2ZXIgcmVmZXJlbmNlZF0K
Y3VscHJpdDogZnVuY3Rpb24gYHN0cmNtcChjb25zdCBjaGFyKiwgY29uc3QgY2hhciopJyBpcyBu
ZXZlciByZWZlcmVuY2VkXQpjdWxwcml0OiBmdW5jdGlvbiBgc3RybGVuKGNvbnN0IGNoYXIqKScg
aXMgbmV2ZXIgcmVmZXJlbmNlZF0KY3VscHJpdDogZnVuY3Rpb24gYHN0cm5jYXNlY21wKGNvbnN0
IGNoYXIqLCBjb25zdCBjaGFyKiwgc2l6ZV90KScgaXMgbmV2ZXIgcmVmZXJlbmNlZF0KY3VscHJp
dDogZnVuY3Rpb24gYHN0cm5jbXAoY29uc3QgY2hhciosIGNvbnN0IGNoYXIqLCBzaXplX3QpJyBp
cyBuZXZlciByZWZlcmVuY2VkXQpjdWxwcml0OiBmdW5jdGlvbiBgc3RycmNocihjb25zdCBjaGFy
KiwgaW50KScgaXMgbmV2ZXIgcmVmZXJlbmNlZF0KY3VscHJpdDogZnVuY3Rpb24gYHN0cnNwbihj
b25zdCBjaGFyKiwgY29uc3QgY2hhciopJyBpcyBuZXZlciByZWZlcmVuY2VkXQpjdWxwcml0OiBm
dW5jdGlvbiBgc3Ryc3RyKGNvbnN0IGNoYXIqLCBjb25zdCBjaGFyKiknIGlzIG5ldmVyIHJlZmVy
ZW5jZWRdCmN1bHByaXQ6IGZ1bmN0aW9uIGBzdm1faW50cl9hc3Npc3Qodm9pZCknIGlzIG5ldmVy
IHJlZmVyZW5jZWRdCmN1bHByaXQ6IGZ1bmN0aW9uIGBzdm1fdm1lbnRlcl9oZWxwZXIodm9pZCkn
IGlzIG5ldmVyIHJlZmVyZW5jZWRdCmN1bHByaXQ6IGZ1bmN0aW9uIGBzdm1fdm1leGl0X2hhbmRs
ZXIodm9pZCknIGlzIG5ldmVyIHJlZmVyZW5jZWRdCmN1bHByaXQ6IGZ1bmN0aW9uIGBfX3N3YWIx
NnMoX191MTYqKScgKG11bHRpcGxlIHVuaXRzKSBpcyBuZXZlciByZWZlcmVuY2VkXQpjdWxwcml0
OiBmdW5jdGlvbiBgX19zd2FiMzJzKF9fdTMyKiknIChtdWx0aXBsZSB1bml0cykgaXMgbmV2ZXIg
cmVmZXJlbmNlZF0KY3VscHJpdDogZnVuY3Rpb24gYF9fc3dhYjY0cyhfX3U2NCopJyAobXVsdGlw
bGUgdW5pdHMpIGlzIG5ldmVyIHJlZmVyZW5jZWRdCmN1bHByaXQ6IGZ1bmN0aW9uIGBzeW1ib2xz
X2xvb2t1cF9ieV9uYW1lKGNvbnN0IGNoYXIqKScgaXMgbmV2ZXIgcmVmZXJlbmNlZF0KY3VscHJp
dDogZnVuY3Rpb24gYHRhc2tsZXRfaXNfc2NoZWR1bGVkKGNvbnN0IHN0cnVjdCB0YXNrbGV0Kikn
IChtdWx0aXBsZSB1bml0cykgaXMgbmV2ZXIgcmVmZXJlbmNlZF0KY3VscHJpdDogZnVuY3Rpb24g
YHRib290X3BhcnNlX2RtYXJfdGFibGUoYWNwaV90YWJsZV9oYW5kbGVyKScgKG11bHRpcGxlIHVu
aXRzKSBpcyBuZXZlciByZWZlcmVuY2VkXQpjdWxwcml0OiBmdW5jdGlvbiBgX190ZXN0X2FuZF9j
aGFuZ2VfYml0KGludCwgdm9pZCopJyAobXVsdGlwbGUgdW5pdHMpIGlzIG5ldmVyIHJlZmVyZW5j
ZWRdCmN1bHByaXQ6IGZ1bmN0aW9uIGB0ZXN0X2FuZF9jaGFuZ2VfYml0KGludCwgdm9sYXRpbGUg
dm9pZCopJyAobXVsdGlwbGUgdW5pdHMpIGlzIG5ldmVyIHJlZmVyZW5jZWRdCmN1bHByaXQ6IGZ1
bmN0aW9uIGB0ZXN0KGludCknIGlzIG5ldmVyIHJlZmVyZW5jZWRdCmN1bHByaXQ6IGZ1bmN0aW9u
IGB0cmFjZV9wdHdyX2VtdWxhdGlvbih1bnNpZ25lZCBsb25nLCBsMV9wZ2VudHJ5X3QpJyAodW5p
dCBgeGVuL2FyY2gveDg2L3RyYXBzLmMnIHdpdGggdGFyZ2V0IGB4ZW4vYXJjaC94ODYvdHJhcHMu
bycpIGlzIG5ldmVyIHJlZmVyZW5jZWRdCmN1bHByaXQ6IGZ1bmN0aW9uIGB0cmFjZV9wdl9wYWdl
X2ZhdWx0KHVuc2lnbmVkIGxvbmcsIHVuc2lnbmVkKScgKHVuaXQgYHhlbi9hcmNoL3g4Ni90cmFw
cy5jJyB3aXRoIHRhcmdldCBgeGVuL2FyY2gveDg2L3RyYXBzLm8nKSBpcyBuZXZlciByZWZlcmVu
Y2VkXQpjdWxwcml0OiBmdW5jdGlvbiBgdHJhY2VfcHZfdHJhcChpbnQsIHVuc2lnbmVkIGxvbmcs
IGludCwgdW5zaWduZWQpJyAodW5pdCBgeGVuL2FyY2gveDg2L3RyYXBzLmMnIHdpdGggdGFyZ2V0
IGB4ZW4vYXJjaC94ODYvdHJhcHMubycpIGlzIG5ldmVyIHJlZmVyZW5jZWRdCmN1bHByaXQ6IGZ1
bmN0aW9uIGB0cmFjZV90cmFwX29uZV9hZGRyKHVuc2lnbmVkLCB1bnNpZ25lZCBsb25nKScgKHVu
aXQgYHhlbi9hcmNoL3g4Ni90cmFwcy5jJyB3aXRoIHRhcmdldCBgeGVuL2FyY2gveDg2L3RyYXBz
Lm8nKSBpcyBuZXZlciByZWZlcmVuY2VkXQpjdWxwcml0OiBmdW5jdGlvbiBgdW5yZWdpc3Rlcl92
aXJ0dWFsX3JlZ2lvbihzdHJ1Y3QgdmlydHVhbF9yZWdpb24qKScgaXMgbmV2ZXIgcmVmZXJlbmNl
ZF0KY3VscHJpdDogZnVuY3Rpb24gYHVuc2V0X25taV9jYWxsYmFjayh2b2lkKScgaXMgbmV2ZXIg
cmVmZXJlbmNlZF0KY3VscHJpdDogZnVuY3Rpb24gYHVwZGF0ZV9jcjMoc3RydWN0IHZjcHUqKScg
aXMgbmV2ZXIgcmVmZXJlbmNlZF0KY3VscHJpdDogZnVuY3Rpb24gYF91cGRhdGVfZ2F0ZV9hZGRy
X2xvd2VyKGlkdF9lbnRyeV90Kiwgdm9pZCopJyAobXVsdGlwbGUgdW5pdHMpIGlzIG5ldmVyIHJl
ZmVyZW5jZWRdCmN1bHByaXQ6IGZ1bmN0aW9uIGB2YXJpYWJsZV9jaGFuZ2VfYml0KGludCwgdm9p
ZCopJyAobXVsdGlwbGUgdW5pdHMpIGlzIG5ldmVyIHJlZmVyZW5jZWRdCmN1bHByaXQ6IGZ1bmN0
aW9uIGB2bWFsbG9jX3hlbihzaXplX3QpJyBpcyBuZXZlciByZWZlcmVuY2VkXQpjdWxwcml0OiBm
dW5jdGlvbiBgdm1jYl9nZXRfZ21ldChjb25zdCBzdHJ1Y3Qgdm1jYl9zdHJ1Y3QqKScgKG11bHRp
cGxlIHVuaXRzKSBpcyBuZXZlciByZWZlcmVuY2VkXQpjdWxwcml0OiBmdW5jdGlvbiBgdm1jYl9n
ZXRfbXNyX2lzc3QoY29uc3Qgc3RydWN0IHZtY2Jfc3RydWN0KiknIChtdWx0aXBsZSB1bml0cykg
aXMgbmV2ZXIgcmVmZXJlbmNlZF0KY3VscHJpdDogZnVuY3Rpb24gYHZtY2JfZ2V0X21zcl9zX2Nl
dChjb25zdCBzdHJ1Y3Qgdm1jYl9zdHJ1Y3QqKScgKG11bHRpcGxlIHVuaXRzKSBpcyBuZXZlciBy
ZWZlcmVuY2VkXQpjdWxwcml0OiBmdW5jdGlvbiBgdm1jYl9nZXRfbnBfZW5hYmxlKGNvbnN0IHN0
cnVjdCB2bWNiX3N0cnVjdCopJyAobXVsdGlwbGUgdW5pdHMpIGlzIG5ldmVyIHJlZmVyZW5jZWRd
CmN1bHByaXQ6IGZ1bmN0aW9uIGB2bWNiX2dldF9wYXVzZV9maWx0ZXJfY291bnQoY29uc3Qgc3Ry
dWN0IHZtY2Jfc3RydWN0KiknIChtdWx0aXBsZSB1bml0cykgaXMgbmV2ZXIgcmVmZXJlbmNlZF0K
Y3VscHJpdDogZnVuY3Rpb24gYHZtY2JfZ2V0X3BhdXNlX2ZpbHRlcl90aHJlc2goY29uc3Qgc3Ry
dWN0IHZtY2Jfc3RydWN0KiknIChtdWx0aXBsZSB1bml0cykgaXMgbmV2ZXIgcmVmZXJlbmNlZF0K
Y3VscHJpdDogZnVuY3Rpb24gYHZtY2JfZ2V0X3Nldl9lbmFibGUoY29uc3Qgc3RydWN0IHZtY2Jf
c3RydWN0KiknIChtdWx0aXBsZSB1bml0cykgaXMgbmV2ZXIgcmVmZXJlbmNlZF0KY3VscHJpdDog
ZnVuY3Rpb24gYHZtY2JfZ2V0X3Nldl9lc19lbmFibGUoY29uc3Qgc3RydWN0IHZtY2Jfc3RydWN0
KiknIChtdWx0aXBsZSB1bml0cykgaXMgbmV2ZXIgcmVmZXJlbmNlZF0KY3VscHJpdDogZnVuY3Rp
b24gYHZtY2JfZ2V0X3NzcChjb25zdCBzdHJ1Y3Qgdm1jYl9zdHJ1Y3QqKScgKG11bHRpcGxlIHVu
aXRzKSBpcyBuZXZlciByZWZlcmVuY2VkXQpjdWxwcml0OiBmdW5jdGlvbiBgdm1jYl9nZXRfdnRl
KGNvbnN0IHN0cnVjdCB2bWNiX3N0cnVjdCopJyAobXVsdGlwbGUgdW5pdHMpIGlzIG5ldmVyIHJl
ZmVyZW5jZWRdCmN1bHByaXQ6IGZ1bmN0aW9uIGB2bWNiX3NldF9nbWV0KHN0cnVjdCB2bWNiX3N0
cnVjdCosIF9Cb29sKScgKG11bHRpcGxlIHVuaXRzKSBpcyBuZXZlciByZWZlcmVuY2VkXQpjdWxw
cml0OiBmdW5jdGlvbiBgdm1jYl9zZXRfaW9wbV9iYXNlX3BhKHN0cnVjdCB2bWNiX3N0cnVjdCos
IF9fdHlwZW9mX18oKHU2NCk/Pz8pKScgKG11bHRpcGxlIHVuaXRzKSBpcyBuZXZlciByZWZlcmVu
Y2VkXQpjdWxwcml0OiBmdW5jdGlvbiBgdm1jYl9zZXRfbXNyX2lzc3Qoc3RydWN0IHZtY2Jfc3Ry
dWN0KiwgX190eXBlb2ZfXygodTY0KT8/PykpJyAobXVsdGlwbGUgdW5pdHMpIGlzIG5ldmVyIHJl
ZmVyZW5jZWRdCmN1bHByaXQ6IGZ1bmN0aW9uIGB2bWNiX3NldF9tc3JwbV9iYXNlX3BhKHN0cnVj
dCB2bWNiX3N0cnVjdCosIF9fdHlwZW9mX18oKHU2NCk/Pz8pKScgKG11bHRpcGxlIHVuaXRzKSBp
cyBuZXZlciByZWZlcmVuY2VkXQpjdWxwcml0OiBmdW5jdGlvbiBgdm1jYl9zZXRfbXNyX3NfY2V0
KHN0cnVjdCB2bWNiX3N0cnVjdCosIF9fdHlwZW9mX18oKHU2NCk/Pz8pKScgKG11bHRpcGxlIHVu
aXRzKSBpcyBuZXZlciByZWZlcmVuY2VkXQpjdWxwcml0OiBmdW5jdGlvbiBgdm1jYl9zZXRfbnBf
Y3RybChzdHJ1Y3Qgdm1jYl9zdHJ1Y3QqLCBfX3R5cGVvZl9fKCh1aW50NjRfdCk/Pz8pKScgKG11
bHRpcGxlIHVuaXRzKSBpcyBuZXZlciByZWZlcmVuY2VkXQpjdWxwcml0OiBmdW5jdGlvbiBgdm1j
Yl9zZXRfcGF1c2VfZmlsdGVyX2NvdW50KHN0cnVjdCB2bWNiX3N0cnVjdCosIF9fdHlwZW9mX18o
KHUxNik/Pz8pKScgKG11bHRpcGxlIHVuaXRzKSBpcyBuZXZlciByZWZlcmVuY2VkXQpjdWxwcml0
OiBmdW5jdGlvbiBgdm1jYl9zZXRfcGF1c2VfZmlsdGVyX3RocmVzaChzdHJ1Y3Qgdm1jYl9zdHJ1
Y3QqLCBfX3R5cGVvZl9fKCh1MTYpPz8/KSknIChtdWx0aXBsZSB1bml0cykgaXMgbmV2ZXIgcmVm
ZXJlbmNlZF0KY3VscHJpdDogZnVuY3Rpb24gYHZtY2Jfc2V0X3Nldl9lbmFibGUoc3RydWN0IHZt
Y2Jfc3RydWN0KiwgX0Jvb2wpJyAobXVsdGlwbGUgdW5pdHMpIGlzIG5ldmVyIHJlZmVyZW5jZWRd
CmN1bHByaXQ6IGZ1bmN0aW9uIGB2bWNiX3NldF9zZXZfZXNfZW5hYmxlKHN0cnVjdCB2bWNiX3N0
cnVjdCosIF9Cb29sKScgKG11bHRpcGxlIHVuaXRzKSBpcyBuZXZlciByZWZlcmVuY2VkXQpjdWxw
cml0OiBmdW5jdGlvbiBgdm1jYl9zZXRfc3NwKHN0cnVjdCB2bWNiX3N0cnVjdCosIF9fdHlwZW9m
X18oKHU2NCk/Pz8pKScgKG11bHRpcGxlIHVuaXRzKSBpcyBuZXZlciByZWZlcmVuY2VkXQpjdWxw
cml0OiBmdW5jdGlvbiBgdm1jYl9zZXRfdnRlKHN0cnVjdCB2bWNiX3N0cnVjdCosIF9Cb29sKScg
KG11bHRpcGxlIHVuaXRzKSBpcyBuZXZlciByZWZlcmVuY2VkXQpjdWxwcml0OiBmdW5jdGlvbiBg
dm1fZXZlbnRfY2FuY2VsX3Nsb3Qoc3RydWN0IGRvbWFpbiosIHN0cnVjdCB2bV9ldmVudF9kb21h
aW4qKScgaXMgbmV2ZXIgcmVmZXJlbmNlZF0KY3VscHJpdDogZnVuY3Rpb24gYHZtX2V2ZW50X2Ns
YWltX3Nsb3Rfbm9zbGVlcChzdHJ1Y3QgZG9tYWluKiwgc3RydWN0IHZtX2V2ZW50X2RvbWFpbiop
JyAobXVsdGlwbGUgdW5pdHMpIGlzIG5ldmVyIHJlZmVyZW5jZWRdCmN1bHByaXQ6IGZ1bmN0aW9u
IGB2cGNpX3JlbW92ZV9yZWdpc3RlcihzdHJ1Y3QgdnBjaSosIHVuc2lnbmVkLCB1bnNpZ25lZCkn
IGlzIG5ldmVyIHJlZmVyZW5jZWRdCmN1bHByaXQ6IGZ1bmN0aW9uIGB2cG11X2FsbG9jYXRlX2Nv
bnRleHQoc3RydWN0IHZjcHUqKScgKG11bHRpcGxlIHVuaXRzKSBpcyBuZXZlciByZWZlcmVuY2Vk
XQpjdWxwcml0OiBmdW5jdGlvbiBgdnNjbnByaW50ZihjaGFyKiwgc2l6ZV90LCBjb25zdCBjaGFy
KiwgdmFfbGlzdCknIGlzIG5ldmVyIHJlZmVyZW5jZWRdCmN1bHByaXQ6IGZ1bmN0aW9uIGB3YWtl
X3VwX29uZShzdHJ1Y3Qgd2FpdHF1ZXVlX2hlYWQqKScgaXMgbmV2ZXIgcmVmZXJlbmNlZF0KY3Vs
cHJpdDogZnVuY3Rpb24gYHdibm9pbnZkKHZvaWQpJyAobXVsdGlwbGUgdW5pdHMpIGlzIG5ldmVy
IHJlZmVyZW5jZWRdCmN1bHByaXQ6IGZ1bmN0aW9uIGB3cml0ZV9mc19iYXNlKHVuc2lnbmVkIGxv
bmcpJyAobXVsdGlwbGUgdW5pdHMpIGlzIG5ldmVyIHJlZmVyZW5jZWRdCmN1bHByaXQ6IGZ1bmN0
aW9uIGB3cml0ZV9nc19iYXNlKHVuc2lnbmVkIGxvbmcpJyAobXVsdGlwbGUgdW5pdHMpIGlzIG5l
dmVyIHJlZmVyZW5jZWRdCmN1bHByaXQ6IGZ1bmN0aW9uIGBfd3JpdGVfbG9ja19pcnEocndsb2Nr
X3QqKScgKG11bHRpcGxlIHVuaXRzKSBpcyBuZXZlciByZWZlcmVuY2VkXQpjdWxwcml0OiBmdW5j
dGlvbiBgX3dyaXRlX3RyeWxvY2socndsb2NrX3QqKScgKG11bHRpcGxlIHVuaXRzKSBpcyBuZXZl
ciByZWZlcmVuY2VkXQpjdWxwcml0OiBmdW5jdGlvbiBgX3dyaXRlX3VubG9ja19pcnEocndsb2Nr
X3QqKScgKG11bHRpcGxlIHVuaXRzKSBpcyBuZXZlciByZWZlcmVuY2VkXQpjdWxwcml0OiBmdW5j
dGlvbiBgeDg2X2luc25faW1tZWRpYXRlKGNvbnN0IHN0cnVjdCB4ODZfZW11bGF0ZV9zdGF0ZSos
IHVuc2lnbmVkKScgaXMgbmV2ZXIgcmVmZXJlbmNlZF0KY3VscHJpdDogZnVuY3Rpb24gYHg4Nl9p
bnNuX29wZXJhbmRfZWEoY29uc3Qgc3RydWN0IHg4Nl9lbXVsYXRlX3N0YXRlKiwgZW51bSB4ODZf
c2VnbWVudCopJyBpcyBuZXZlciByZWZlcmVuY2VkXQpjdWxwcml0OiBmdW5jdGlvbiBgeDg2X2lu
c25fb3BzaXplKGNvbnN0IHN0cnVjdCB4ODZfZW11bGF0ZV9zdGF0ZSopJyBpcyBuZXZlciByZWZl
cmVuY2VkXQpjdWxwcml0OiBmdW5jdGlvbiBgeGVuX2NvbXBpbGVfaG9zdCh2b2lkKScgaXMgbmV2
ZXIgcmVmZXJlbmNlZF0KY3VscHJpdDogZnVuY3Rpb24gYHhlbl9jb21waWxlX3RpbWUodm9pZCkn
IGlzIG5ldmVyIHJlZmVyZW5jZWRdCmN1bHByaXQ6IGZ1bmN0aW9uIGB4Z19wcm9iZSh2b2lkKScg
KG11bHRpcGxlIHVuaXRzKSBpcyBuZXZlciByZWZlcmVuY2VkXQpjdWxwcml0OiBmdW5jdGlvbiBg
eGxhdF9zdGFydF9pbmZvKHN0cnVjdCBzdGFydF9pbmZvKiwgZW51bSBYTEFUX3N0YXJ0X2luZm9f
Y29uc29sZSknIGlzIG5ldmVyIHJlZmVyZW5jZWRdCmN1bHByaXQ6IGZ1bmN0aW9uIGB4bWVtX3Bv
b2xfZGVzdHJveShzdHJ1Y3QgeG1lbV9wb29sKiknIGlzIG5ldmVyIHJlZmVyZW5jZWRdCmN1bHBy
aXQ6IGZ1bmN0aW9uIGB4bWVtX3Bvb2xfZ2V0X3RvdGFsX3NpemUoc3RydWN0IHhtZW1fcG9vbCop
JyBpcyBuZXZlciByZWZlcmVuY2VkXQpjdWxwcml0OiBmdW5jdGlvbiBgeG1lbV9wb29sX21heGFs
bG9jKHN0cnVjdCB4bWVtX3Bvb2wqKScgaXMgbmV2ZXIgcmVmZXJlbmNlZF0KY3VscHJpdDogZnVu
Y3Rpb24gYF94cmVhbGxvYyh2b2lkKiwgdW5zaWduZWQgbG9uZywgdW5zaWduZWQgbG9uZyknIGlz
IG5ldmVyIHJlZmVyZW5jZWRdCmN1bHByaXQ6IGZ1bmN0aW9uIGB4c21faHlwZnNfb3AoeHNtX2Rl
ZmF1bHRfdCknIChtdWx0aXBsZSB1bml0cykgaXMgbmV2ZXIgcmVmZXJlbmNlZF0KY3VscHJpdDog
ZnVuY3Rpb24gYHhzbV9pbml0X2hhcmR3YXJlX2RvbWFpbih4c21fZGVmYXVsdF90LCBzdHJ1Y3Qg
ZG9tYWluKiknIChtdWx0aXBsZSB1bml0cykgaXMgbmV2ZXIgcmVmZXJlbmNlZF0KY3VscHJpdDog
ZnVuY3Rpb24gYHhzbV9rZXhlYyh4c21fZGVmYXVsdF90KScgKG11bHRpcGxlIHVuaXRzKSBpcyBu
ZXZlciByZWZlcmVuY2VkXQpjdWxwcml0OiBmdW5jdGlvbiBgeHNtX21lbW9yeV9waW5fcGFnZSh4
c21fZGVmYXVsdF90LCBzdHJ1Y3QgZG9tYWluKiwgc3RydWN0IGRvbWFpbiosIHN0cnVjdCBwYWdl
X2luZm8qKScgKG11bHRpcGxlIHVuaXRzKSBpcyBuZXZlciByZWZlcmVuY2VkXQpjdWxwcml0OiBm
dW5jdGlvbiBgeHNtX21lbV9zaGFyaW5nX29wKHhzbV9kZWZhdWx0X3QsIHN0cnVjdCBkb21haW4q
LCBzdHJ1Y3QgZG9tYWluKiwgaW50KScgKG11bHRpcGxlIHVuaXRzKSBpcyBuZXZlciByZWZlcmVu
Y2VkXQpjdWxwcml0OiBmdW5jdGlvbiBgeHNtX21tdWV4dF9vcCh4c21fZGVmYXVsdF90LCBzdHJ1
Y3QgZG9tYWluKiwgc3RydWN0IGRvbWFpbiopJyAobXVsdGlwbGUgdW5pdHMpIGlzIG5ldmVyIHJl
ZmVyZW5jZWRdCmN1bHByaXQ6IGZ1bmN0aW9uIGB4c21fbW11X3VwZGF0ZSh4c21fZGVmYXVsdF90
LCBzdHJ1Y3QgZG9tYWluKiwgc3RydWN0IGRvbWFpbiosIHN0cnVjdCBkb21haW4qLCB1aW50MzJf
dCknIChtdWx0aXBsZSB1bml0cykgaXMgbmV2ZXIgcmVmZXJlbmNlZF0KY3VscHJpdDogZnVuY3Rp
b24gYHhzbV9wcm9maWxlKHhzbV9kZWZhdWx0X3QsIHN0cnVjdCBkb21haW4qLCBpbnQpJyAobXVs
dGlwbGUgdW5pdHMpIGlzIG5ldmVyIHJlZmVyZW5jZWRdCmN1bHByaXQ6IGZ1bmN0aW9uIGB4c21f
dXBkYXRlX3ZhX21hcHBpbmcoeHNtX2RlZmF1bHRfdCwgc3RydWN0IGRvbWFpbiosIHN0cnVjdCBk
b21haW4qLCBsMV9wZ2VudHJ5X3QpJyAobXVsdGlwbGUgdW5pdHMpIGlzIG5ldmVyIHJlZmVyZW5j
ZWRdCmN1bHByaXQ6IGZ1bmN0aW9uIGB6YXBfcm9fbXB0KG1mbl90KScgaXMgbmV2ZXIgcmVmZXJl
bmNlZF0K
--=_c095f7df348125a664696fff750515cf--


From xen-devel-bounces@lists.xenproject.org Wed Oct 11 16:48:44 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 11 Oct 2023 16:48:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615559.956870 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqcNq-00063l-5E; Wed, 11 Oct 2023 16:48:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615559.956870; Wed, 11 Oct 2023 16:48: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 1qqcNq-00063e-2d; Wed, 11 Oct 2023 16:48:30 +0000
Received: by outflank-mailman (input) for mailman id 615559;
 Wed, 11 Oct 2023 16:48: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=kH0+=FZ=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qqcNo-000638-Jl
 for xen-devel@lists.xenproject.org; Wed, 11 Oct 2023 16:48:28 +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 ffed2a68-6855-11ee-98d4-6d05b1d4d9a1;
 Wed, 11 Oct 2023 18:48:27 +0200 (CEST)
Received: by mail-lj1-x22f.google.com with SMTP id
 38308e7fff4ca-2c296e6543fso88176711fa.3
 for <xen-devel@lists.xenproject.org>; Wed, 11 Oct 2023 09:48:27 -0700 (PDT)
Received: from [0.0.0.0] ([2001:41d0:8:52b7::])
 by smtp.gmail.com with ESMTPSA id
 q27-20020a05620a039b00b007757eb88172sm5370815qkm.21.2023.10.11.09.48.23
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 11 Oct 2023 09:48: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: ffed2a68-6855-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1697042906; x=1697647706; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:autocrypt:content-language
         :references:cc:to:subject:from:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=ceoI1sTR3pRmfE/RaxQckdQ+apnIEv8XYOouIIgthgc=;
        b=vWqfU06BRYRhDdOQtc1rfa5/aR0fMkCM/vR8FHFXzkrLa9AFZyN6GKnRxPDHWKT9nb
         nX2UH+6ovJHPkEhumc7iC3mjtZAerqIw0JaGBRnIHlhr1OScxKkJ+fphJPYMdzY2/I+K
         trwMnAf3YWPafD69SJ1FsPspXD4Zipfczdb1Y=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697042906; x=1697647706;
        h=content-transfer-encoding:in-reply-to:autocrypt: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=ceoI1sTR3pRmfE/RaxQckdQ+apnIEv8XYOouIIgthgc=;
        b=M2BpJo5Icj12d/o25c5VJDD2T5W7GdQmuiPObjQ08MzTOG5ow54446WX1fO6MgS1Em
         K2W5RzazrBKdNhkpQFZGgKI/oA3+K0gBuj3g9RNnBj6sLMjbav/7iqzAMx/W4gblhNqa
         TDySQH/Do+iriaoJyke1NgTkblppVIrqLJWm//+S3l3mN8dBLHtZtei57W6+npwToalk
         G9FdZGyhI1cwley0bcBYGUlBIre8s5n5VYb4VtRAKvWeYzweBaHf/b4R/3+78WxzpoVR
         IphOGiHu1UETzF8YEkHb2ghbeLkQB7FYlC27RQKMHklWJkjqQptu1iq46Ezoj2pYSPE5
         ifvw==
X-Gm-Message-State: AOJu0YycCNQ3CUL3zWzxRjNrDx2gc7wB5/oJ598P8cRkQJtBdZeq6Ta3
	oXqEPB0UjtZM1WajOoaMJmpEHA==
X-Google-Smtp-Source: AGHT+IGMeO2feXd8rf0Uwq9x5awP9rouVSen+EhPnchbalo3fTBUUKkYvwtP7EXpGRLjruS0/EcD4Q==
X-Received: by 2002:a2e:830c:0:b0:2c0:33be:3530 with SMTP id a12-20020a2e830c000000b002c033be3530mr16452496ljh.45.1697042906519;
        Wed, 11 Oct 2023 09:48:26 -0700 (PDT)
Message-ID: <75e8aca0-1e2f-4c19-9fee-20bb4e4ae00f@citrix.com>
Date: Thu, 12 Oct 2023 00:48:20 +0800
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH] x86/pvh: fix identity mapping of low 1MB
To: Roger Pau Monne <roger.pau@citrix.com>, xen-devel@lists.xenproject.org
Cc: Henry Wang <Henry.Wang@arm.com>, Jan Beulich <jbeulich@suse.com>,
 Wei Liu <wl@xen.org>
References: <20231011153756.16714-1-roger.pau@citrix.com>
Content-Language: en-GB
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: <20231011153756.16714-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 11/10/2023 11:37 pm, Roger Pau Monne wrote:
> The mapping of memory regions below the 1MB mark was all done by the PVH dom0
> builder code, thus completely avoiding that region in the arch-specific IOMMU
> hardware domain initialization code.

This took a while to parse.  I think it would be clearer to say "builder
code, causing the region to be avoided by the arch ..."

>   That lead to the IOMMU being enabled
> without reserved regions in the low 1MB identity mapped in the p2m for PVH
> hardware domains.  Firmware with missing RMRR/IVMD ranges that would otherwise
> be located in the low 1MB would transiently trigger IOMMU faults until the p2m
> is populated by the PVH dom0 builder:

"Firmware which happens to be missing RMRR/IVMD ranges describing E820
reserved regions in the low 1MB would ..." ?

> AMD-Vi: IO_PAGE_FAULT: 0000:00:13.1 d0 addr 00000000000eb380 flags 0x20 RW
> AMD-Vi: IO_PAGE_FAULT: 0000:00:13.1 d0 addr 00000000000eb340 flags 0
> AMD-Vi: IO_PAGE_FAULT: 0000:00:13.2 d0 addr 00000000000ea1c0 flags 0
> AMD-Vi: IO_PAGE_FAULT: 0000:00:14.5 d0 addr 00000000000eb480 flags 0x20 RW
> AMD-Vi: IO_PAGE_FAULT: 0000:00:12.0 d0 addr 00000000000eb080 flags 0x20 RW
> AMD-Vi: IO_PAGE_FAULT: 0000:00:14.5 d0 addr 00000000000eb400 flags 0
> AMD-Vi: IO_PAGE_FAULT: 0000:00:12.0 d0 addr 00000000000eb040 flags 0
>
> Mostly remove the special handling of the low 1MB done by the PVH dom0 builder,
> leaving just the data copy between RAM regions.  Otherwise rely on the IOMMU
> arch init code to create any identity mappings for reserved regions in such
> range (like it already does for all reserved regions).

"in such ranges", or in this case "in that range" would be better.  Also
"for reserved regions elsewhere" IMO.

Just to confirm, we're saying our default treatment of identity mapping
e820 reserved regions into the IOMMU is masking (or not) a missing
RMRR/IVMD entry?

>
> Note there's a small difference in behavior, as holes in the low 1MB will no
> longer be identity mapped to the p2m.
>
> Fixes: 6b4f6a31ace1 ('x86/PVH: de-duplicate mappings for first Mb of Dom0 memory')
> Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>

I suppose you intended to mark this for 4.18 as you CC'd Henry, and also
send it for x86 (CC added)?

I'm tempted to commit it based on the diffstat alone.  How do we still
have so much junk code like this lying around breaking things...

Anyway - it's a clear improvement.

But a question first.  Is this from debugging the XSA-442 fallout?  If
so, it's probably worth mentioning the hardware we saw this on (which
IIRC was fairly old AMD), and that XSA-442 unmasked a pre-existing bug. 
And we think it's USB/PS2 emulation?

Thanks,

~Andrew


From xen-devel-bounces@lists.xenproject.org Wed Oct 11 16:57:10 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 11 Oct 2023 16:57:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615565.956881 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqcWA-00004v-0Y; Wed, 11 Oct 2023 16:57:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615565.956881; Wed, 11 Oct 2023 16:57: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 1qqcW9-0008WU-Tr; Wed, 11 Oct 2023 16:57:05 +0000
Received: by outflank-mailman (input) for mailman id 615565;
 Wed, 11 Oct 2023 16:57: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=kH0+=FZ=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qqcW8-0008W7-11
 for xen-devel@lists.xenproject.org; Wed, 11 Oct 2023 16:57:04 +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 32d925be-6857-11ee-9b0d-b553b5be7939;
 Wed, 11 Oct 2023 18:57:02 +0200 (CEST)
Received: by mail-lj1-x231.google.com with SMTP id
 38308e7fff4ca-2c17de836fbso162531fa.1
 for <xen-devel@lists.xenproject.org>; Wed, 11 Oct 2023 09:57:02 -0700 (PDT)
Received: from [0.0.0.0] ([2001:41d0:8:52b7::])
 by smtp.gmail.com with ESMTPSA id
 v9-20020ae9e309000000b0076d25b11b62sm5351684qkf.38.2023.10.11.09.56.54
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 11 Oct 2023 09:57: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: 32d925be-6857-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1697043421; x=1697648221; darn=lists.xenproject.org;
        h=content-transfer-encoding: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=8QYwJlwxuuE4Ot80Y1Jemfy6h9yw2BCbj8PTmbeMBZg=;
        b=fUrB1iW42G4ps21Bf1nO3+QUSBOAaO3iI9026NyxZ51SVFvikbVWUR/bS4nsmuBO/j
         cIbhml2VpbDVKHAjHSensBEUryL6r+tusL8sOo7OBY0DIBs1Q4um3TDIZ9wtfvwEXOdW
         Rpj87JvIl7R7TDdsxoUyoWce0Fp2tFjtYWrc4=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697043421; x=1697648221;
        h=content-transfer-encoding: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=8QYwJlwxuuE4Ot80Y1Jemfy6h9yw2BCbj8PTmbeMBZg=;
        b=pkQoblsG8G1Qkd3VVP1RvhAm/fgioevr8JdVmUDFtWZBxqQ6Usj1xLSs4F5wGa14gp
         Ax1FVREsczuJdmb3n/lqV3iOpysMp5KUHZuTcxwUuIAGzQxzYuOmxRaIYhwhLMvc80n7
         dIHZUcZBt2Jrn+9XTTNeC7p7JrdJOyC/QXejj4snABSoFqHvIXYOw2K6mESmVTpNck8/
         g6yiwPjOV5s3y9zv7iDPfZ5bR3VYctZKdV82i8PiV4mVPiOpjEwNjb2hfgKVgypVN4JW
         oYA8Gqt8PMphvp6731qoH2R0lYCBUD5EhLoi+4XXge5vZClpzT/aH/Q/aaNJKT9MIcQ+
         B37g==
X-Gm-Message-State: AOJu0Yz8Jkd3uG/TMOu2Enbi6dayOI1n8pjRZ98pjoQ79IrROHbrvZsa
	rFRVbFBS24LgotPAEmpCm0roag==
X-Google-Smtp-Source: AGHT+IHOrPn2aO5XPlLbqJRQdLUY/ZJDOm0A53lGi55anUynHmIaxgoxioL7z8F2I+HNFkWU6RUGbg==
X-Received: by 2002:a2e:9ed9:0:b0:2c0:20c4:925a with SMTP id h25-20020a2e9ed9000000b002c020c4925amr15839564ljk.26.1697043421440;
        Wed, 11 Oct 2023 09:57:01 -0700 (PDT)
Message-ID: <9c728576-16e0-4d72-9019-d6f5fe8f033b@citrix.com>
Date: Thu, 12 Oct 2023 00:56:52 +0800
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
From: andrew.cooper3@citrix.com
Subject: Re: [XEN PATCH][for-4.19 v2 1/1] xen: introduce a deviation for Rule
 11.9
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, Simone Ballarin <simone.ballarin@bugseng.com>,
 Doug Goldstein <cardoe@cardoe.com>, George Dunlap
 <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Wei Liu <wl@xen.org>
References: <cover.1696948320.git.nicola.vetrini@bugseng.com>
 <c684c36402e6740472fa91d73436ca5790e5e109.1696948320.git.nicola.vetrini@bugseng.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: <c684c36402e6740472fa91d73436ca5790e5e109.1696948320.git.nicola.vetrini@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 11/10/2023 8:46 pm, Nicola Vetrini wrote:
> diff --git a/docs/misra/deviations.rst b/docs/misra/deviations.rst
> index ee7aed0609d2..1b00e4e3e9b7 100644
> --- a/docs/misra/deviations.rst
> +++ b/docs/misra/deviations.rst
> @@ -199,6 +199,11 @@ Deviations related to MISRA C:2012 Rules:
>         See automation/eclair_analysis/deviations.ecl for the full explanation.
>       - Tagged as `safe` for ECLAIR.
>  
> +   * - R11.9
> +     - __ACCESS_ONCE uses a 0 as a null pointer constant to check if a type is
> +       scalar, therefore its usage for this purpose is allowed.
> +     - Tagged as `deliberate` for ECLAIR.

Really?

#define __ACCESS_ONCE(x)
    (void)(typeof(x))0; /* Scalar typecheck. */

That's not a pointer.

If someone were to pass in an x who's type was pointer-to-object, then
yes it is technically a NULL pointer constant for long enough for the
build to error out.

What justification is Eclair using to suggest that it is a pointer?

If you really really want to shut things up, it doesn't need to be 0 -
it could be 1 or any other integer, but this honestly feels like a bug
in Eclair to me.

~Andrew


From xen-devel-bounces@lists.xenproject.org Wed Oct 11 17:26:17 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 11 Oct 2023 17:26:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615577.956891 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqcyH-000774-7W; Wed, 11 Oct 2023 17:26:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615577.956891; Wed, 11 Oct 2023 17:26: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 1qqcyH-00076u-4Y; Wed, 11 Oct 2023 17:26:09 +0000
Received: by outflank-mailman (input) for mailman id 615577;
 Wed, 11 Oct 2023 17:26: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=kH0+=FZ=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qqcyF-00076o-Va
 for xen-devel@lists.xenproject.org; Wed, 11 Oct 2023 17:26:08 +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 423bbb67-685b-11ee-9b0d-b553b5be7939;
 Wed, 11 Oct 2023 19:26:05 +0200 (CEST)
Received: by mail-wr1-x42f.google.com with SMTP id
 ffacd0b85a97d-32d895584f1so62783f8f.1
 for <xen-devel@lists.xenproject.org>; Wed, 11 Oct 2023 10:26:05 -0700 (PDT)
Received: from [0.0.0.0] ([2001:41d0:8:52b7::])
 by smtp.gmail.com with ESMTPSA id
 v11-20020a05620a122b00b0076f1d8b1c2dsm5374145qkj.12.2023.10.11.10.25.59
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 11 Oct 2023 10:26: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: 423bbb67-685b-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1697045165; x=1697649965; darn=lists.xenproject.org;
        h=content-transfer-encoding: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=5gyKLlUWTo58NTyJJebTqmA9nB4F1DDX20ll7GjMIkw=;
        b=ucBzTesqn8WSiyoRWhY2aCCugDOZdUZsaFucsMSn9WNwI2x+DwLeTayLVVk7hlBKnd
         w2yDP/gUsUXEnfIWnDxJEvNOHN6dXZIQWggcdn0N7Zw9nWTyI520aYAZdWGmdIhAP5Tp
         LA1/7k005fF9DFCyAobWU4pPtSHa+l3o1YrYI=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697045165; x=1697649965;
        h=content-transfer-encoding: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=5gyKLlUWTo58NTyJJebTqmA9nB4F1DDX20ll7GjMIkw=;
        b=XmH24kJx2B2Ne6zR5+KW5f4Es6DWUgk5exUq2ExbRViZX8ab29SmrSt4Q8b/VFfjZj
         8q6tIp7hKnm7/Xl53Qi10dJMlqXwZE5r5Rev0et0PTvbdBY9ehq9QFNMLl2L0FE3CiM+
         70s9cDsEPEnNN11aHiNTDpEfWpu4f31+1AWaRVEnntyg4D+FGZHxX8XiyG28vojtNjRu
         Ly6jvSIYO+VajiZfrNYVsqvfAnSr73ry/UtB9a2zKjZz5br2rK75aBeZ5pJhcEkocDhh
         VQRqzDZOMCXWv45us9xWeCKWCqY1S6vQvztkf2G7qoFI43KP/mrfiP0aWa7f4nVCOS2W
         n6ag==
X-Gm-Message-State: AOJu0YyQ4Ba/uVLrj23vfPNVVhAaLL1Y7Ic+QfQxsKZHV0Xz71+/bp8V
	ZNuEHtBtJnAYqxw/h+AAKA2noQ==
X-Google-Smtp-Source: AGHT+IFilWf2UlvwgKEEfEoiokIB+8ZhCFmga1kvbmqh8HlYE5KCqrbKs31cUc2aOwsi7b6MW97MMg==
X-Received: by 2002:a5d:60d1:0:b0:31f:d8ba:c997 with SMTP id x17-20020a5d60d1000000b0031fd8bac997mr18788121wrt.41.1697045165184;
        Wed, 11 Oct 2023 10:26:05 -0700 (PDT)
Message-ID: <6963c159-e4e3-4035-afcf-a823b0271042@citrix.com>
Date: Thu, 12 Oct 2023 01:25:59 +0800
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH for-4.18 v5] xen/pdx: Make CONFIG_PDX_COMPRESSION a common
 Kconfig option
Content-Language: en-GB
To: Oleksii <oleksii.kurochko@gmail.com>,
 Xen-devel <xen-devel@lists.xenproject.org>
Cc: Alejandro Vallejo <alejandro.vallejo@cloud.com>,
 Julien Grall <jgrall@amazon.com>, =?UTF-8?Q?Roger_Pau_Monn=C3=A9?=
 <roger.pau@citrix.com>, Shawn Anastasio <sanastasio@raptorengineering.com>,
 Henry Wang <Henry.Wang@arm.com>, George Dunlap
 <George.Dunlap@eu.citrix.com>, Jan Beulich <JBeulich@suse.com>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 Julien Grall <julien@xen.org>
References: <20231006144405.1078260-1-andrew.cooper3@citrix.com>
 <45df1c3a44fcd4ebf87a30ada34141d6ebd9ccab.camel@gmail.com>
 <a2ed825d-2bdf-46a5-a1d4-b43a84ad43a5@citrix.com>
 <678f854879fdebe458dfed4fc3d587a34d159927.camel@gmail.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: <678f854879fdebe458dfed4fc3d587a34d159927.camel@gmail.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 11/10/2023 10:31 pm, Oleksii wrote:
> On Tue, 2023-10-10 at 16:52 +0800, Andrew Cooper wrote:
>> On 10/10/2023 3:58 pm, Oleksii wrote:
>>>> Oleksii: I've not touched RISCV yet, because I don't know how the
>>>> platforms
>>>> typically look.  I'm happy to default it active in RISCV too if
>>>> that's the
>>>> right thing to do.
>>> We are still waiting for a platform with hypervisor extension
>>> support
>>> but I am using PDX in my Xen's repo.
>> Yes, but are you using that because Xen wouldn't build without it, or
>> because it's necessary for RISC-V platforms?
> You are right I am using it because before this patch Xen can't be
> built without PDX.
> This is not necessary for RISC-V. At least platform I know they don't
> use sparse RAM banks.

Ok thanks.  I'll leave the code as is, but tweak the commit message to
include RISC-V alongside x86.

And as already noted, we can always revisit the decision in the future
if things change.

~Andrew


From xen-devel-bounces@lists.xenproject.org Wed Oct 11 19:55:58 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 11 Oct 2023 19:55:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615628.956905 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqfJ2-00047p-MQ; Wed, 11 Oct 2023 19:55:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615628.956905; Wed, 11 Oct 2023 19:55: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 1qqfJ2-00047i-JR; Wed, 11 Oct 2023 19:55:44 +0000
Received: by outflank-mailman (input) for mailman id 615628;
 Wed, 11 Oct 2023 19:55: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 1qqfJ1-00047Y-0P; Wed, 11 Oct 2023 19:55: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 1qqfJ0-0006wv-UO; Wed, 11 Oct 2023 19:55: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 1qqfJ0-0005do-JK; Wed, 11 Oct 2023 19:55:42 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qqfJ0-0000ge-Ip; Wed, 11 Oct 2023 19:55: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=nLYovLOohJkdrsR9tRkAmzBRMc4r27hM6XDFqpymTag=; b=Kn+9k5jPanic8rZXnVsd8WXFqY
	IU+7EcrtQzYFF66a1cKi7sUAxql6lk19ej5JnisDY2VLvlHhqYWQhNSHvvXdUyke5t6X1g+P2esTJ
	PPHShu8MVcVOHQOX0CnTC0RZvVj/Y1lyYfvW77Sl8wCBd31sW8fsnQ1FobVbYLpuGvmo=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183337-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 183337: tolerable FAIL - PUSHED
X-Osstest-Failures:
    xen-unstable:test-armhf-armhf-xl-credit1:guest-start/debian.repeat:fail:heisenbug
    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-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-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-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-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-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check: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-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-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-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-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-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-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-arndale:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-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-rtds:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds: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=9713423a06225bcf0f22cab15e8d04870200af7a
X-Osstest-Versions-That:
    xen=c035151902689aa5a3765aeb16fa52755917b9ca
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 11 Oct 2023 19:55:42 +0000

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

Failures :-/ but no regressions.

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

Tests which did not succeed, but are not blocking:
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop       fail blocked in 183332
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop      fail blocked in 183332
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183332
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183332
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 183332
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183332
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183332
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183332
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 183332
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183332
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183332
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 183332
 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-i386-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-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-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-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-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-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-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-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

version targeted for testing:
 xen                  9713423a06225bcf0f22cab15e8d04870200af7a
baseline version:
 xen                  c035151902689aa5a3765aeb16fa52755917b9ca

Last test of basis   183332  2023-10-10 12:40:17 Z    1 days
Testing same since   183337  2023-10-11 02:32:27 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                                       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                                    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
   c035151902..9713423a06  9713423a06225bcf0f22cab15e8d04870200af7a -> master


From xen-devel-bounces@lists.xenproject.org Wed Oct 11 21:31:22 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 11 Oct 2023 21:31:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615640.956915 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqgnK-0007tu-Mn; Wed, 11 Oct 2023 21:31:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615640.956915; Wed, 11 Oct 2023 21: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 1qqgnK-0007tn-Jd; Wed, 11 Oct 2023 21:31:06 +0000
Received: by outflank-mailman (input) for mailman id 615640;
 Wed, 11 Oct 2023 21:31: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 1qqgnJ-0007td-6w; Wed, 11 Oct 2023 21:31: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 1qqgnJ-0000fM-4g; Wed, 11 Oct 2023 21:31: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 1qqgnI-0000bG-IS; Wed, 11 Oct 2023 21:31:04 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qqgnI-0002OB-I1; Wed, 11 Oct 2023 21:31: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=BN0zE2LuX8ZIKi/xg5Z9xUIIyt+lW2RD+v+gWcn6vRs=; b=wBssypA2eeIyPjQA0zZH/Cwhog
	ElbqDIlAqFv7l+oCQPPZxJI4PZJuViXLXg3/OwyMYkqNTQAp4C++u63G101gJePGHml+rMKF5vBsO
	OeXXh3DXMxfK3CRoQFwgqJCRybQXLB2/V6XC1HcTJ46RLIFo8iUKU2BIe5AHEIwAOZGw=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183342-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-4.15-testing test] 183342: tolerable trouble: fail/pass/starved - PUSHED
X-Osstest-Failures:
    xen-4.15-testing:test-amd64-i386-libvirt-raw:xen-install: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-amd64-xl-qemuu-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-amd64-amd64-xl-qemut-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-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-i386-xl-qemut-ws16-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-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-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-xl-pvshim:guest-start:fail:nonblocking
    xen-4.15-testing:test-amd64-i386-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: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-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-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-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-libvirt-qcow2: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-raw: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=4a4daf6bddbe8a741329df5cc8768f7dec664aed
X-Osstest-Versions-That:
    xen=3a9a2901cc8b24f28dbdc6fb63f57006c77a1f47
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 11 Oct 2023 21:31:04 +0000

flight 183342 xen-4.15-testing real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183342/

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-amd64-i386-libvirt-raw   7 xen-install                  fail  like 183110
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183110
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183110
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183110
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183110
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183110
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183110
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183110
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183110
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 183110
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 183110
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 183110
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 183110
 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-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-xl-pvshim    14 guest-start                  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-amd64-libvirt-vhd 14 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-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-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
 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-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                  4a4daf6bddbe8a741329df5cc8768f7dec664aed
baseline version:
 xen                  3a9a2901cc8b24f28dbdc6fb63f57006c77a1f47

Last test of basis   183110  2023-09-22 03:57:13 Z   19 days
Testing same since   183342  2023-10-11 06:07:06 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Alejandro Vallejo <alejandro.vallejo@cloud.com>
  Andrew Cooper <andrew.cooper3@citrix.com>
  Jan Beulich <jbeulich@suse.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                                          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                                  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
   3a9a2901cc..4a4daf6bdd  4a4daf6bddbe8a741329df5cc8768f7dec664aed -> stable-4.15


From xen-devel-bounces@lists.xenproject.org Wed Oct 11 22:15:49 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 11 Oct 2023 22:15:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615662.956984 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqhUT-0005GA-Nv; Wed, 11 Oct 2023 22:15:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615662.956984; Wed, 11 Oct 2023 22:15: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 1qqhUT-0005G3-LO; Wed, 11 Oct 2023 22:15:41 +0000
Received: by outflank-mailman (input) for mailman id 615662;
 Wed, 11 Oct 2023 22:15: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 1qqhUS-0005Ft-Cm; Wed, 11 Oct 2023 22:15: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 1qqhUS-0001k6-9W; Wed, 11 Oct 2023 22:15: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 1qqhUR-0002hK-RY; Wed, 11 Oct 2023 22:15:39 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qqhUR-00079Z-R5; Wed, 11 Oct 2023 22:15: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=4K2zwfaeQCxPAbQZuq+xN3NrTtRy6bU+VVY7mhCvfv8=; b=QdgbqXYOqLBCJA3We4rSETFC6Q
	OynwNROrZ5lBlI7LaASW2cCPDyw2NVzk2hvzFxd8t+s9Kvz2lviRnJ54gGA6D+scql+kiWQfn7eR4
	gpyG5a56tQ8L4cwtspJ0/xrbDfKefPhurnk9yb+I2C17AN0cuu+oEVrJbXzJn5Jqtnms=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183338-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [libvirt test] 183338: 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-amd64-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt:saverestore-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-xsm:saverestore-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=bb673117d5823030a47dda70712bafbf62fe302a
X-Osstest-Versions-That:
    libvirt=d448eccf697e1995da68a7ddac99e6414be6aef0
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 11 Oct 2023 22:15:39 +0000

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

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183329
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183329
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183329
 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-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-arm64-arm64-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt     16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 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-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              bb673117d5823030a47dda70712bafbf62fe302a
baseline version:
 libvirt              d448eccf697e1995da68a7ddac99e6414be6aef0

Last test of basis   183329  2023-10-10 04:20:35 Z    1 days
Testing same since   183338  2023-10-11 04:20:42 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Dmitry Frolov <frolov@swemel.ru>

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
   d448eccf69..bb673117d5  bb673117d5823030a47dda70712bafbf62fe302a -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Thu Oct 12 01:06:07 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 01:06:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615671.956995 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqk9C-0006PR-LT; Thu, 12 Oct 2023 01:05:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615671.956995; Thu, 12 Oct 2023 01:05: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 1qqk9C-0006PK-IL; Thu, 12 Oct 2023 01:05:54 +0000
Received: by outflank-mailman (input) for mailman id 615671;
 Thu, 12 Oct 2023 01:05: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=bo6N=F2=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qqk9A-0006PE-Qy
 for xen-devel@lists.xenproject.org; Thu, 12 Oct 2023 01:05:52 +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 7bad0d90-689b-11ee-98d4-6d05b1d4d9a1;
 Thu, 12 Oct 2023 03:05:50 +0200 (CEST)
Received: from AS9PR05CA0339.eurprd05.prod.outlook.com (2603:10a6:20b:490::7)
 by AS8PR08MB6440.eurprd08.prod.outlook.com (2603:10a6:20b:33f::9)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.41; Thu, 12 Oct
 2023 01:05:46 +0000
Received: from AM7EUR03FT033.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:20b:490:cafe::a6) by AS9PR05CA0339.outlook.office365.com
 (2603:10a6:20b:490::7) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.27 via Frontend
 Transport; Thu, 12 Oct 2023 01:05:46 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM7EUR03FT033.mail.protection.outlook.com (100.127.140.129) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6886.30 via Frontend Transport; Thu, 12 Oct 2023 01:05:45 +0000
Received: ("Tessian outbound d219f9a4f5c9:v211");
 Thu, 12 Oct 2023 01:05:45 +0000
Received: from cb272ad82df1.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 2649F218-0597-4C36-9577-AD09903901EB.1; 
 Thu, 12 Oct 2023 01:05:38 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id cb272ad82df1.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Thu, 12 Oct 2023 01:05:38 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by AM8PR08MB6466.eurprd08.prod.outlook.com (2603:10a6:20b:363::11)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.42; Thu, 12 Oct
 2023 01:05:34 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41%4]) with mapi id 15.20.6863.032; Thu, 12 Oct 2023
 01:05: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: 7bad0d90-689b-11ee-98d4-6d05b1d4d9a1
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=U9fA+DDpFbZWBcM4hQVXI+SVSbAVkOPh3O/2RdXmwrg=;
 b=G65gDXTdAPzpKFMCYnOYgESG0x4bZsgn/r71ltYbp4W/5PVC5wLtUhfy1sf9HLYPjeQgbXuvuK+0txU0a92S539Cc6luclcQ/has0Xpm+aCo+HVXLgrS/kLzMx7qb4KM1qT8Ln864Pxy30HCaVHcdUtKLvEmqoLmlHA31hRoPvE=
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: 876a2efdc4fe9fad
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=gEF/YCd0GBQYPBhRjlz0GjwGOH3/17np1bU2YMJD5488JFMBGPRM25GO8O0OGJGyDAiGEZFpPVeydp9PnHw7hevHfbQWeJEQMgM5ZJhdR9HPmas6Cn2LKegVpwaCZvfs2Z3r8d5dcaRfs0lNQn/aa4Xr2Fu/0k00ixl2abIwtciobRkIPjG4wYSiJCSAg6lHRfSUlkcqLm5rGrgpQNS2s+FX5evRf9qm0k6Q0NbESjIfaYe7Ed3sbBnXeoT3wtUTfeUnbk/q9oq/H4VlQXpj4YY7pJAyiiLp4+sElrgM2ZtGfywUfId0EPb9HQzaKA90WV9h5ZEv/OP1AK5TEH6zNg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=U9fA+DDpFbZWBcM4hQVXI+SVSbAVkOPh3O/2RdXmwrg=;
 b=LXMy98DZEp1F7oHCzwuFm3HNn4NtuFw7El++XXMQ41HaXuob5t69nrOfNq/MNnjvGheFuFccf9SEhdeGqKxjM7ZUaRT88yGcdeKzAgBeq/gPwkeWuVvbBTcXuYKEBUd0L5ar6vsnocpB8lipStg+0VtGbbvJuxTqrO50XYPjeJakPOFHR1ieJjqh22NKyiUZEZQpDkSp62cO9jd+Rfv4RW5HflIP7hHkIzfU9QVcnLVmeEtdHZ6mTd071zC7r7VaaO3dzaxQ/X+cZTmUkNNm+LVFJbitFDX5VVpsGrSjwnA9N33ATFGyTrcdTzSVw7Sbn7/RzW6ZJR1KwJPsKYruxg==
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=U9fA+DDpFbZWBcM4hQVXI+SVSbAVkOPh3O/2RdXmwrg=;
 b=G65gDXTdAPzpKFMCYnOYgESG0x4bZsgn/r71ltYbp4W/5PVC5wLtUhfy1sf9HLYPjeQgbXuvuK+0txU0a92S539Cc6luclcQ/has0Xpm+aCo+HVXLgrS/kLzMx7qb4KM1qT8Ln864Pxy30HCaVHcdUtKLvEmqoLmlHA31hRoPvE=
From: Henry Wang <Henry.Wang@arm.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>
CC: Oleksii <oleksii.kurochko@gmail.com>, Xen-devel
	<xen-devel@lists.xenproject.org>, Alejandro Vallejo
	<alejandro.vallejo@cloud.com>, Julien Grall <jgrall@amazon.com>,
	=?iso-8859-1?Q?Roger_Pau_Monn=E9?= <roger.pau@citrix.com>, Shawn Anastasio
	<sanastasio@raptorengineering.com>, George Dunlap
	<George.Dunlap@eu.citrix.com>, Jan Beulich <JBeulich@suse.com>, Stefano
 Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>, Julien Grall
	<julien@xen.org>
Subject: Re: [PATCH for-4.18 v5] xen/pdx: Make CONFIG_PDX_COMPRESSION a common
 Kconfig option
Thread-Topic: [PATCH for-4.18 v5] xen/pdx: Make CONFIG_PDX_COMPRESSION a
 common Kconfig option
Thread-Index: AQHZ+GOg88iN2g5+OkaTPmz6gnCP0bBCrkmAgAAPDICAAfEmAIAAML2AgACAVwA=
Date: Thu, 12 Oct 2023 01:05:31 +0000
Message-ID: <87ADFB5A-2848-4330-AF15-C605B1F30639@arm.com>
References: <20231006144405.1078260-1-andrew.cooper3@citrix.com>
 <45df1c3a44fcd4ebf87a30ada34141d6ebd9ccab.camel@gmail.com>
 <a2ed825d-2bdf-46a5-a1d4-b43a84ad43a5@citrix.com>
 <678f854879fdebe458dfed4fc3d587a34d159927.camel@gmail.com>
 <6963c159-e4e3-4035-afcf-a823b0271042@citrix.com>
In-Reply-To: <6963c159-e4e3-4035-afcf-a823b0271042@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_|AM8PR08MB6466:EE_|AM7EUR03FT033:EE_|AS8PR08MB6440:EE_
X-MS-Office365-Filtering-Correlation-Id: 834d3697-33d0-42ea-353d-08dbcabf5d6c
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:
 EMw847frSz0pXDyrsltjpvSQMa2NBQZ+uugO7gvSwq+FP0VkYctyQTxJAH/dMxlBH4ozpTts3UHA21/46t4c41+K99NKC8HdjMg/3ZwGCc/ntEHLG6WGq1wJyCec1RKmM59fDxAqrpa9EN2eaYqZJxGkW6JSJI6b6JFV2IPETwJ8QCjHwXtCdj4lFnKFVXVAfrBkKlLpSmaoKhDYkNDePEdawyTc+NKRD76oLNE5xecJjOvtQ3/1v5sQ2pJDAAGriLPBYx1GtI1KAv//uu4G5bkLLFHZHJNa7zkWWqiYccI+IKhYovuGyoIWrvWCaZao+d7VztXU3hMAhQUufnssgxVOqCiGqAIq+oC2I9c5kIn59tKrbebwH4zwTQQ/jUqZkU9+BmcTYZbFNugkihhRNbo06RYzKqaF7rEafs2e/ur/IHzM9mEgpzL3y+lQZSSw0PDhND3kL4Z0wZByklAVqBxMbms3BZ0rto6z9KNn1rm94wVRImvDFjzrVE/uactM8QLyRHMjjdslAXI38ChvwG/DPlJSYOYrHz2LDtNACewL/rcqVL6Q6Wc9UkPf+zALWJg271L8ZlomO0TyzOAv4bEjSjCbinGlJas0c0orgVH7vevUhQS5Pe/S1DLjROk9GqDjARZOtrtRPwVfDr5EpA==
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)(39860400002)(376002)(366004)(396003)(230922051799003)(451199024)(64100799003)(1800799009)(186009)(54906003)(66446008)(38100700002)(4001150100001)(66946007)(2906002)(7416002)(83380400001)(53546011)(71200400001)(5660300002)(2616005)(41300700001)(66556008)(66476007)(64756008)(76116006)(33656002)(6916009)(91956017)(316002)(6486002)(86362001)(6506007)(6512007)(4326008)(122000001)(8936002)(478600001)(26005)(38070700005)(36756003)(8676002)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="iso-8859-1"
Content-ID: <ED378FEC01FCA44691C765DC31E1BA2F@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8PR08MB6466
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:
 AM7EUR03FT033.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	868028f4-3a2a-421e-0da5-08dbcabf54c4
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	ixofUQ3Z6qrWx940arNrAX/Vp5EsLvzVvJbZEEE2Yg098fmzjPh0DHAzB8xcam6GREPmqcRc0rW0K4BH1BdIiRqfIpmCl87ceZC3t9NFDB5dlMy6lsL6AKJk14AHrFENQl1/+sMJYT/MD0C8ioJd2rjAquCuofNkB5DNluvLGoNEx7UgFhnB/aRiDLTuUBWRdM1J2dSemyIEKs6fTbXvB/RzcDn1DRtcKN//Lrut06ovkUXzoAijztTJ7HtBphIJ7pzgjOC8hgv6y16HAXaKQdLvpQm/v7R1fJt4HlSUNQaxBO0uwlR1dfP6UKKnNuzWiQbgfHoeuTcT2oTL9a6EmeO0+VsrQsnzTRci172vJ8/F3i1UvNA+Iy0Q/9HcZoZv7Dh+d7jnxcNu8M3GIicJKCdgCNqc/T2jLklKNI0RVO5TNCUkdbNGT2K/W7kmkQYnIFjGO9nZjL5ATYxaf1k4Gn7tB2h6XOYtanx8nI10inxvhxNMcMDXgJvYvPNI7FGXVx8dxVXzxl/07Jgq1xxeKK5qMNl1VUMxwreipDdDQV8HZmrawdqw6907JSqpV0jHaUQnFrsGU1/cf4YaoRBNFdQXh4jM/CcQCZABkok7pccqPR2OZ9cC0uf9ghZLvNQMq5nKdCca/S5mLhzsthyVbE9foFWTHgke1Z3z/dGhg36FJWjRQfTcyVmeUrCN8MgeLn09uwseJ5NKWpL6uWp0zr2yIDwp29sdqAG/0p/twvJ+BSdn1digafpHLKByMDgEJJQfeoyXsXXyNHg5TMJDUf56Fl1Iae+HiYMAgqTUofY=
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)(346002)(376002)(39860400002)(230922051799003)(451199024)(1800799009)(82310400011)(186009)(64100799003)(46966006)(36840700001)(40470700004)(47076005)(83380400001)(4001150100001)(26005)(81166007)(2616005)(6486002)(6512007)(478600001)(36860700001)(6506007)(53546011)(336012)(356005)(82740400003)(70586007)(316002)(41300700001)(70206006)(54906003)(8676002)(4326008)(6862004)(5660300002)(40480700001)(2906002)(36756003)(86362001)(40460700003)(8936002)(33656002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Oct 2023 01:05:45.7525
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 834d3697-33d0-42ea-353d-08dbcabf5d6c
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:
	AM7EUR03FT033.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB6440

Hi,

> On Oct 12, 2023, at 01:25, Andrew Cooper <andrew.cooper3@citrix.com> wrot=
e:
>=20
> On 11/10/2023 10:31 pm, Oleksii wrote:
>> On Tue, 2023-10-10 at 16:52 +0800, Andrew Cooper wrote:
>>> On 10/10/2023 3:58 pm, Oleksii wrote:
>>>>> Oleksii: I've not touched RISCV yet, because I don't know how the
>>>>> platforms
>>>>> typically look.  I'm happy to default it active in RISCV too if
>>>>> that's the
>>>>> right thing to do.
>>>> We are still waiting for a platform with hypervisor extension
>>>> support
>>>> but I am using PDX in my Xen's repo.
>>> Yes, but are you using that because Xen wouldn't build without it, or
>>> because it's necessary for RISC-V platforms?
>> You are right I am using it because before this patch Xen can't be
>> built without PDX.
>> This is not necessary for RISC-V. At least platform I know they don't
>> use sparse RAM banks.
>=20
> Ok thanks.  I'll leave the code as is, but tweak the commit message to
> include RISC-V alongside x86.
>=20
> And as already noted, we can always revisit the decision in the future
> if things change.

Looks like the discussion has been settled so:

Release-acked-by: Henry Wang <Henry.Wang@arm.com>

Kind regards,
Henry


>=20
> ~Andrew



From xen-devel-bounces@lists.xenproject.org Thu Oct 12 01:06:08 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 01:06:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615672.957005 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqk9Q-0006i4-2K; Thu, 12 Oct 2023 01:06:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615672.957005; Thu, 12 Oct 2023 01:06: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 1qqk9P-0006hx-Ve; Thu, 12 Oct 2023 01:06:07 +0000
Received: by outflank-mailman (input) for mailman id 615672;
 Thu, 12 Oct 2023 01:06: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=bo6N=F2=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qqk9P-0006PE-3l
 for xen-devel@lists.xenproject.org; Thu, 12 Oct 2023 01:06:07 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur04on060f.outbound.protection.outlook.com
 [2a01:111:f400:fe0e::60f])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 856c0d5f-689b-11ee-98d4-6d05b1d4d9a1;
 Thu, 12 Oct 2023 03:06:06 +0200 (CEST)
Received: from AS9PR06CA0335.eurprd06.prod.outlook.com (2603:10a6:20b:466::34)
 by AS2PR08MB9269.eurprd08.prod.outlook.com (2603:10a6:20b:59e::8)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.38; Thu, 12 Oct
 2023 01:06:02 +0000
Received: from AM7EUR03FT058.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:20b:466:cafe::bb) by AS9PR06CA0335.outlook.office365.com
 (2603:10a6:20b:466::34) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.38 via Frontend
 Transport; Thu, 12 Oct 2023 01:06:02 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM7EUR03FT058.mail.protection.outlook.com (100.127.140.247) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6886.29 via Frontend Transport; Thu, 12 Oct 2023 01:06:01 +0000
Received: ("Tessian outbound 0ae75d4034ba:v211");
 Thu, 12 Oct 2023 01:06:01 +0000
Received: from 0721ca77c177.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 ECB55C80-BEA0-4D70-B95C-DBFE7E69DC3E.1; 
 Thu, 12 Oct 2023 01:05:54 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 0721ca77c177.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Thu, 12 Oct 2023 01:05:54 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by AM8PR08MB6466.eurprd08.prod.outlook.com (2603:10a6:20b:363::11)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.42; Thu, 12 Oct
 2023 01:05:53 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41%4]) with mapi id 15.20.6863.032; Thu, 12 Oct 2023
 01:05: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: 856c0d5f-689b-11ee-98d4-6d05b1d4d9a1
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=3kAhKHMb243F747T48zMP7z7yg+3C3TYzKnuLlszRpI=;
 b=PYu/q0O+mvx1fTcAS1/xGf2qFOOwyALHdc/lwTf4rNR/gdF3sU5lYKZqCD+AXmfEeToVL5mbniI3K1/dSDDd9izd4oQMruw1dnaGPybl8M5LwvM/rlLZ3LxwGrcbn986oACyb0AFNPZA36V6teVmQBDsCyiQo2YcFzXiMFV24eg=
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: f810850efbf01202
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=NcLfkWn2p1UKHLBG8qeCTAeynrjcDxU9Je2MIKrHdYRJ5emzZWMj0zRkTkf70fS7Cd/NV+dHbe2TAoMm7KWhZqcmoqJ70SGqHtj3+FCRt9HtAoMF8M81SORpuU6LGNKuX2SrJPA4OHTM9Xg3vaFggNSwQIISoaS0uBNcDdyQWig09fB742dQy/THVPn3YVCbeiGbYuPMZ24NXS/Rz5BzdkxXAz/5FDMQdSr9QyFVVm2AbROqMaRZ5OdhSos1+esZ5N99MZpQrBfZ4L76TL3btXRv/5rxdqeT4dHLnyoFhgATdwHVtWo3ydPXegn4JAxQjuvheSsRLbiXcA9FrToR/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=3kAhKHMb243F747T48zMP7z7yg+3C3TYzKnuLlszRpI=;
 b=H8NUS7kfSY4L2x98KXy+ild/OdCOluqwd7RmOCHBXRcCXpYReridoyzEDNhRxGmKebWH/pgmOHZaitXbjaM8MgfMBYnnhCso9YVFSxiM7in+T9VFqJEzr1nrhwiZJMzy3YEWDJkxrqJkV5zW/VcTzeWu5ZAgqlR82ccSTgh5Zge4wlONPeaY5PCfMxoKkG1HD25UMfvbqGdtgc+QhqneLLioLNrHfKQs0aoIJF9TWsvkIUxHzW+5kgPmC1qbkjAx8kcxQcg8HTo+jWfd/FmxX5ZynrTDw1kSt0fwdWkec5xWo+qYt4JYmHaP5Ye8n3wzLGwHUYKGF4y1jegKzsEbqA==
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=3kAhKHMb243F747T48zMP7z7yg+3C3TYzKnuLlszRpI=;
 b=PYu/q0O+mvx1fTcAS1/xGf2qFOOwyALHdc/lwTf4rNR/gdF3sU5lYKZqCD+AXmfEeToVL5mbniI3K1/dSDDd9izd4oQMruw1dnaGPybl8M5LwvM/rlLZ3LxwGrcbn986oACyb0AFNPZA36V6teVmQBDsCyiQo2YcFzXiMFV24eg=
From: Henry Wang <Henry.Wang@arm.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>
CC: Roger Pau Monne <roger.pau@citrix.com>, Xen-devel
	<xen-devel@lists.xenproject.org>, Jan Beulich <jbeulich@suse.com>, Wei Liu
	<wl@xen.org>
Subject: Re: [PATCH] x86/pvh: fix identity mapping of low 1MB
Thread-Topic: [PATCH] x86/pvh: fix identity mapping of low 1MB
Thread-Index: AQHZ/FkBJ1Y4R9KHakOp0UUb/Jg2U7BEzMgAgACK9wA=
Date: Thu, 12 Oct 2023 01:05:53 +0000
Message-ID: <EC78B0C1-DE30-4B49-AAE2-616B25C87C90@arm.com>
References: <20231011153756.16714-1-roger.pau@citrix.com>
 <75e8aca0-1e2f-4c19-9fee-20bb4e4ae00f@citrix.com>
In-Reply-To: <75e8aca0-1e2f-4c19-9fee-20bb4e4ae00f@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_|AM8PR08MB6466:EE_|AM7EUR03FT058:EE_|AS2PR08MB9269:EE_
X-MS-Office365-Filtering-Correlation-Id: a0237bef-3113-4342-6fc7-08dbcabf66af
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:
 JzvPRXCFCfm/SWDHxe2XMwVHHhK+bJj6Wzfw2aPPicsAX6hfBRQcMMEPVlGYWDLQXcu4mbYoiAj8J7pWTz3HM8nOMwLkCFnnbCUwtxQcXEaSFKKpw0qpC88C27Pjj8Oy8D925oy8G395O8EzZG+1Hyww/OG9l9RSkRVs6oLD3J00ZjaPAoEriwDXpf9wcSU5HawhmI2acryDTYbgrT3hmGL65evDgUDI5HNIToZqb/DnwXIpdMvbbJF7/tfJ0UO8AGauAVYAlrHQbGo1Si0++lALi9p95qBgefdXAwObkHhqXXVGbl0DmH+6J+BfnwIKlcFRfjMApfGaEMp9r6Jr5VInhy68L4YnziB37h2PbhHE6BnzGOIrZE3hIKdDWRmAxuibusvywNWn7/fX5yxLsp2efY1YnkBXEKvBfIMXBgryrQ3zQv4tj6O40Z5JgHtqqZq1ChePRlQ9ysBvYugiQQbcRpiN1qGeAvzzpANGlHl1i0nlF/WIeKBpw9dfprmC/6GLdxgZXAVzKd8dXcvu17Z+avtm6k9vbfm2HJ6m204XhJ8iKcNZDHt25p7EEFVDe/cI3eCXLlrsIq2pvhWDsA+7GCVEA2rR1IlaxzS239RDzaiiyBazlpeOqWtPz+xO7f/tYPQQfhGY+15Dr1Z7Qg==
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)(39860400002)(376002)(366004)(396003)(230922051799003)(451199024)(64100799003)(1800799009)(186009)(54906003)(66446008)(38100700002)(66946007)(2906002)(83380400001)(53546011)(71200400001)(5660300002)(2616005)(41300700001)(66556008)(66476007)(64756008)(76116006)(33656002)(6916009)(91956017)(316002)(6486002)(86362001)(6506007)(6512007)(4326008)(122000001)(8936002)(478600001)(26005)(38070700005)(36756003)(8676002)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <6487ED5A9987BA47AAF056F65E655EE5@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8PR08MB6466
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:
 AM7EUR03FT058.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	451ad9ba-3eb9-4a74-9147-08dbcabf61cb
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	wlsVJ5GF2B0bOv6hgi2OwkmS1DWXRB+doaek9G/UjNr6J0oxchZ7uymo+5KevqdIIGEUS/1Tk21iWdX5jXhaJDfhsx9MRze75A0oLcCnZsylJkEm9t8jX9FXj4kOJYTAG78hyS2zt85wdc7xkesSLdj76GGI8FAZT5uV/ZEHbSBxfe0ih7Wdx63WiFfwW03I7k63RCk8D3Kw1VVlsrZGRwyWrW8Pyvu3qPHa6ybNIy0C8Q4K6ikCzwkenp4RB4BG1mIWLtToi4d577a88TcBLv8rO95kwLKMOzqah9HFQFaFsvjFv/y0GUspc3yx8SPwankDsIevkrBBFFLxDHcgYeTiNwH/wXYVZhJ2Enxy29RRDNyB6E+dFVfIGsWkpy7N1uifcGjtH/h5kfYSHE5n5CwpV/1opDE4VccOGl34yCynYMcJNrC/GBEiAX2pz5zl1R/hRlu7VBwuhHOx0RZBi9CCsGPRsrzoDws31HBUzX7AxWLgknJhDmvPH6k27nrRZczik8+erDltTh43Cs+KxXZbZvcrmaFQLkPYMW/7h7kqKAX0wynolKDd7bXxAvfo+F9oSF8gLhKtnw+bNb4aoeAjr9aQ30Q3c2OGCCSCl0TCfUxLImSEM1iSE74ECl2D6lMNwKgx5QwA+SC7TYGJ4fCBgongzR23lIUqcSqD9JqAz72TeBzTqj6xNIy/vNSLsH64amLi9/YQOmy4B3WwQef6oOaWprZGBMWFyERIbIGNYLc2O6ZImzs59pCB/uAJ
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)(1800799009)(64100799003)(82310400011)(451199024)(186009)(40470700004)(46966006)(36840700001)(40480700001)(2906002)(6862004)(26005)(54906003)(47076005)(336012)(83380400001)(356005)(82740400003)(8936002)(36860700001)(8676002)(81166007)(4326008)(2616005)(5660300002)(478600001)(316002)(53546011)(41300700001)(70206006)(6506007)(6486002)(40460700003)(70586007)(6512007)(33656002)(86362001)(36756003);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Oct 2023 01:06:01.2613
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: a0237bef-3113-4342-6fc7-08dbcabf66af
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:
	AM7EUR03FT058.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS2PR08MB9269

SGksDQoNCj4gT24gT2N0IDEyLCAyMDIzLCBhdCAwMDo0OCwgQW5kcmV3IENvb3BlciA8YW5kcmV3
LmNvb3BlcjNAY2l0cml4LmNvbT4gd3JvdGU6DQo+IA0KPiBPbiAxMS8xMC8yMDIzIDExOjM3IHBt
LCBSb2dlciBQYXUgTW9ubmUgd3JvdGU6DQo+PiBUaGUgbWFwcGluZyBvZiBtZW1vcnkgcmVnaW9u
cyBiZWxvdyB0aGUgMU1CIG1hcmsgd2FzIGFsbCBkb25lIGJ5IHRoZSBQVkggZG9tMA0KPj4gYnVp
bGRlciBjb2RlLCB0aHVzIGNvbXBsZXRlbHkgYXZvaWRpbmcgdGhhdCByZWdpb24gaW4gdGhlIGFy
Y2gtc3BlY2lmaWMgSU9NTVUNCj4+IGhhcmR3YXJlIGRvbWFpbiBpbml0aWFsaXphdGlvbiBjb2Rl
Lg0KPiANCj4gVGhpcyB0b29rIGEgd2hpbGUgdG8gcGFyc2UuICBJIHRoaW5rIGl0IHdvdWxkIGJl
IGNsZWFyZXIgdG8gc2F5ICJidWlsZGVyDQo+IGNvZGUsIGNhdXNpbmcgdGhlIHJlZ2lvbiB0byBi
ZSBhdm9pZGVkIGJ5IHRoZSBhcmNoIC4uLiINCj4gDQo+PiAgVGhhdCBsZWFkIHRvIHRoZSBJT01N
VSBiZWluZyBlbmFibGVkDQo+PiB3aXRob3V0IHJlc2VydmVkIHJlZ2lvbnMgaW4gdGhlIGxvdyAx
TUIgaWRlbnRpdHkgbWFwcGVkIGluIHRoZSBwMm0gZm9yIFBWSA0KPj4gaGFyZHdhcmUgZG9tYWlu
cy4gIEZpcm13YXJlIHdpdGggbWlzc2luZyBSTVJSL0lWTUQgcmFuZ2VzIHRoYXQgd291bGQgb3Ro
ZXJ3aXNlDQo+PiBiZSBsb2NhdGVkIGluIHRoZSBsb3cgMU1CIHdvdWxkIHRyYW5zaWVudGx5IHRy
aWdnZXIgSU9NTVUgZmF1bHRzIHVudGlsIHRoZSBwMm0NCj4+IGlzIHBvcHVsYXRlZCBieSB0aGUg
UFZIIGRvbTAgYnVpbGRlcjoNCj4gDQo+ICJGaXJtd2FyZSB3aGljaCBoYXBwZW5zIHRvIGJlIG1p
c3NpbmcgUk1SUi9JVk1EIHJhbmdlcyBkZXNjcmliaW5nIEU4MjANCj4gcmVzZXJ2ZWQgcmVnaW9u
cyBpbiB0aGUgbG93IDFNQiB3b3VsZCAuLi4iID8NCj4gDQo+PiBBTUQtVmk6IElPX1BBR0VfRkFV
TFQ6IDAwMDA6MDA6MTMuMSBkMCBhZGRyIDAwMDAwMDAwMDAwZWIzODAgZmxhZ3MgMHgyMCBSVw0K
Pj4gQU1ELVZpOiBJT19QQUdFX0ZBVUxUOiAwMDAwOjAwOjEzLjEgZDAgYWRkciAwMDAwMDAwMDAw
MGViMzQwIGZsYWdzIDANCj4+IEFNRC1WaTogSU9fUEFHRV9GQVVMVDogMDAwMDowMDoxMy4yIGQw
IGFkZHIgMDAwMDAwMDAwMDBlYTFjMCBmbGFncyAwDQo+PiBBTUQtVmk6IElPX1BBR0VfRkFVTFQ6
IDAwMDA6MDA6MTQuNSBkMCBhZGRyIDAwMDAwMDAwMDAwZWI0ODAgZmxhZ3MgMHgyMCBSVw0KPj4g
QU1ELVZpOiBJT19QQUdFX0ZBVUxUOiAwMDAwOjAwOjEyLjAgZDAgYWRkciAwMDAwMDAwMDAwMGVi
MDgwIGZsYWdzIDB4MjAgUlcNCj4+IEFNRC1WaTogSU9fUEFHRV9GQVVMVDogMDAwMDowMDoxNC41
IGQwIGFkZHIgMDAwMDAwMDAwMDBlYjQwMCBmbGFncyAwDQo+PiBBTUQtVmk6IElPX1BBR0VfRkFV
TFQ6IDAwMDA6MDA6MTIuMCBkMCBhZGRyIDAwMDAwMDAwMDAwZWIwNDAgZmxhZ3MgMA0KPj4gDQo+
PiBNb3N0bHkgcmVtb3ZlIHRoZSBzcGVjaWFsIGhhbmRsaW5nIG9mIHRoZSBsb3cgMU1CIGRvbmUg
YnkgdGhlIFBWSCBkb20wIGJ1aWxkZXIsDQo+PiBsZWF2aW5nIGp1c3QgdGhlIGRhdGEgY29weSBi
ZXR3ZWVuIFJBTSByZWdpb25zLiAgT3RoZXJ3aXNlIHJlbHkgb24gdGhlIElPTU1VDQo+PiBhcmNo
IGluaXQgY29kZSB0byBjcmVhdGUgYW55IGlkZW50aXR5IG1hcHBpbmdzIGZvciByZXNlcnZlZCBy
ZWdpb25zIGluIHN1Y2gNCj4+IHJhbmdlIChsaWtlIGl0IGFscmVhZHkgZG9lcyBmb3IgYWxsIHJl
c2VydmVkIHJlZ2lvbnMpLg0KPiANCj4gImluIHN1Y2ggcmFuZ2VzIiwgb3IgaW4gdGhpcyBjYXNl
ICJpbiB0aGF0IHJhbmdlIiB3b3VsZCBiZSBiZXR0ZXIuICBBbHNvDQo+ICJmb3IgcmVzZXJ2ZWQg
cmVnaW9ucyBlbHNld2hlcmUiIElNTy4NCj4gDQo+IEp1c3QgdG8gY29uZmlybSwgd2UncmUgc2F5
aW5nIG91ciBkZWZhdWx0IHRyZWF0bWVudCBvZiBpZGVudGl0eSBtYXBwaW5nDQo+IGU4MjAgcmVz
ZXJ2ZWQgcmVnaW9ucyBpbnRvIHRoZSBJT01NVSBpcyBtYXNraW5nIChvciBub3QpIGEgbWlzc2lu
Zw0KPiBSTVJSL0lWTUQgZW50cnk/DQo+IA0KPj4gDQo+PiBOb3RlIHRoZXJlJ3MgYSBzbWFsbCBk
aWZmZXJlbmNlIGluIGJlaGF2aW9yLCBhcyBob2xlcyBpbiB0aGUgbG93IDFNQiB3aWxsIG5vDQo+
PiBsb25nZXIgYmUgaWRlbnRpdHkgbWFwcGVkIHRvIHRoZSBwMm0uDQo+PiANCj4+IEZpeGVzOiA2
YjRmNmEzMWFjZTEgKCd4ODYvUFZIOiBkZS1kdXBsaWNhdGUgbWFwcGluZ3MgZm9yIGZpcnN0IE1i
IG9mIERvbTAgbWVtb3J5JykNCj4+IFNpZ25lZC1vZmYtYnk6IFJvZ2VyIFBhdSBNb25uw6kgPHJv
Z2VyLnBhdUBjaXRyaXguY29tPg0KPiANCj4gSSBzdXBwb3NlIHlvdSBpbnRlbmRlZCB0byBtYXJr
IHRoaXMgZm9yIDQuMTggYXMgeW91IENDJ2QgSGVucnksIGFuZCBhbHNvDQo+IHNlbmQgaXQgZm9y
IHg4NiAoQ0MgYWRkZWQpPw0KDQpGaW5lIGZvciBtZSB0byBpbmNsdWRlIHRoaXMgYnVnZml4LA0K
DQpSZWxlYXNlLWFja2VkLWJ5OiBIZW5yeSBXYW5nIDxIZW5yeS5XYW5nQGFybS5jb20+DQoNCktp
bmQgcmVnYXJkcywNCkhlbnJ5DQoNCg0KPiANCj4gSSdtIHRlbXB0ZWQgdG8gY29tbWl0IGl0IGJh
c2VkIG9uIHRoZSBkaWZmc3RhdCBhbG9uZS4gIEhvdyBkbyB3ZSBzdGlsbA0KPiBoYXZlIHNvIG11
Y2gganVuayBjb2RlIGxpa2UgdGhpcyBseWluZyBhcm91bmQgYnJlYWtpbmcgdGhpbmdzLi4uDQo+
IA0KPiBBbnl3YXkgLSBpdCdzIGEgY2xlYXIgaW1wcm92ZW1lbnQuDQo+IA0KPiBCdXQgYSBxdWVz
dGlvbiBmaXJzdC4gIElzIHRoaXMgZnJvbSBkZWJ1Z2dpbmcgdGhlIFhTQS00NDIgZmFsbG91dD8g
IElmDQo+IHNvLCBpdCdzIHByb2JhYmx5IHdvcnRoIG1lbnRpb25pbmcgdGhlIGhhcmR3YXJlIHdl
IHNhdyB0aGlzIG9uICh3aGljaA0KPiBJSVJDIHdhcyBmYWlybHkgb2xkIEFNRCksIGFuZCB0aGF0
IFhTQS00NDIgdW5tYXNrZWQgYSBwcmUtZXhpc3RpbmcgYnVnLiANCj4gQW5kIHdlIHRoaW5rIGl0
J3MgVVNCL1BTMiBlbXVsYXRpb24/DQo+IA0KPiBUaGFua3MsDQo+IA0KPiB+QW5kcmV3DQoNCg==


From xen-devel-bounces@lists.xenproject.org Thu Oct 12 02:13:38 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 02:13:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615682.957015 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqlCW-00086k-UO; Thu, 12 Oct 2023 02:13:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615682.957015; Thu, 12 Oct 2023 02: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 1qqlCW-00086d-QE; Thu, 12 Oct 2023 02:13:24 +0000
Received: by outflank-mailman (input) for mailman id 615682;
 Thu, 12 Oct 2023 02: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=HOn7=F2=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qqlCV-00086X-Jj
 for xen-devel@lists.xenproject.org; Thu, 12 Oct 2023 02:13:23 +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 eae051ee-68a4-11ee-98d4-6d05b1d4d9a1;
 Thu, 12 Oct 2023 04:13:22 +0200 (CEST)
Received: by mail-lf1-x12f.google.com with SMTP id
 2adb3069b0e04-50444e756deso721886e87.0
 for <xen-devel@lists.xenproject.org>; Wed, 11 Oct 2023 19:13:22 -0700 (PDT)
Received: from [10.157.20.243] ([103.14.252.248])
 by smtp.gmail.com with ESMTPSA id
 l18-20020a170902d35200b001c74df14e6esm595728plk.51.2023.10.11.19.13.17
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 11 Oct 2023 19:13: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: eae051ee-68a4-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1697076801; x=1697681601; darn=lists.xenproject.org;
        h=content-transfer-encoding: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=pkLWl7zdfFAAY5jEulAwXuGW1v1hxxfyppsZPE+H+3U=;
        b=XaKF1Dh4mg3GId2ep7OXNJ2GigbpbfxTUzacyct02RoHRGxGlTXQhSe1yn96CNCVb4
         LKznuSZ8zPiRgqRWIJEI2XWWgNo+G/Ezy8+IzuSKqWdi1CWMkTNS/tnIZN+RlQwLvXtP
         209Blt8IVivePMWT61Si1DgT4/RtYHvHtsWD0=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697076801; x=1697681601;
        h=content-transfer-encoding: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=pkLWl7zdfFAAY5jEulAwXuGW1v1hxxfyppsZPE+H+3U=;
        b=O5thX7NXiZn8u62hYFM7ERyQidzj4A2RBzL9yG4/3cHVWKVdnpJV9cgypwjXTZwasd
         mko96ExwIA997XdCjSvR2cahdyHceAsfVNa0GRDm/sGCzzfuPiUfkQzpitf62gbD+UpD
         T8JhQR1OByyeCGVuSNnNzWFzV4NLouV2A66ZAwqGuZ4UtOCnl9VWgonNnB7AQJE6ozpM
         GgaqQPVQYQQxlt0ahdDjOwcE858GAwMxxFnOlU1+VGGEhhDyXMVRdE5J2qg+453lL4Ga
         5I6FN8joMw1QmUqzi8SEprlJ9oSEzECdBx2xlMVyE5V3bVXBAqgkk+UXHhlgyhLySy0q
         GPxA==
X-Gm-Message-State: AOJu0YwUDTMMxjucKO1JPTt+O/rg+8A4Dc79eveXoLqrgWSpjYIBoEs3
	5KWctrEOuptlfsHZy+Zq4Lmepw==
X-Google-Smtp-Source: AGHT+IGUyIvaNnscSuCKLNbGU8A8K98dFMHNR+pmgbGYIyvLwaOcfeVA6NcBKU82s2CG3h9jFVFfbw==
X-Received: by 2002:ac2:58f1:0:b0:500:ac0b:8d52 with SMTP id v17-20020ac258f1000000b00500ac0b8d52mr17431506lfo.7.1697076801399;
        Wed, 11 Oct 2023 19:13:21 -0700 (PDT)
Message-ID: <b978a111-4cfb-45f3-850a-a5051298abef@citrix.com>
Date: Thu, 12 Oct 2023 10:13:15 +0800
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
From: andrew.cooper3@citrix.com
Subject: Re: [Xen-devel] [PATCH] x86/sm{e, a}p: do not enable SMEP/SMAP in PV
 shim by default on AMD
Content-Language: en-GB
To: David Woodhouse <dwmw2@infradead.org>
Cc: George.Dunlap@eu.citrix.com, jbeulich@suse.com, julien@xen.org,
 roger.pau@citrix.com, sstabellini@kernel.org, wl@xen.org,
 xen-devel@lists.xenproject.org
References: <b4e8835566bc6e9becc4f8adea7bb3c6cc558db2.camel@infradead.org>
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: <b4e8835566bc6e9becc4f8adea7bb3c6cc558db2.camel@infradead.org>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 11/10/2023 7:34 pm, David Woodhouse wrote:
>> On 16/01/2020 16:00, Igor Druzhinin wrote:
>>> Due to AMD and Hygon being unable to selectively trap CR4 bit modifications
>>> running 32-bit PV guest inside PV shim comes with significant performance
>>> hit. Moreover, for SMEP in particular every time CR4.SMEP changes on context
>>> switch to/from 32-bit PV guest, it gets trapped by L0 Xen which then
>>> tries to perform global TLB invalidation for PV shim domain. This usually
>>> results in eventual hang of a PV shim with at least several vCPUs.
>>>
>>> Since the overall security risk is generally lower for shim Xen as it being
>>> there more of a defense-in-depth mechanism, choose to disable SMEP/SMAP in
>>> it by default on AMD and Hygon unless a user chose otherwise.
>>>
>>> Signed-off-by: Igor Druzhinin <igor.druzhinin@citrix.com>
>>> ---
>>> I'm a little bit on the fence with this one. We're having the same issue with
>>> general nested virt but I'm not inclined to trade security for a user in
>>> general case. Disabling it by default for PV shim only seems rather inocuous
>>> due to the use case restricion. I'd like to hear more opinions.
>> So everyone on the list is up to date with the discussion we had IRL.
>>
>> SMEP/SMAP are defence in depth measures.  We support running on hardware
>> without these features, and the overall result is the same, security wise.
>>
>> In the PV Shim case, there is only a single guest and nothing
>> interesting in Xen, data wise.  We specifically do not have the risk of
>> sideways data leakage from other guests to be worried about.
>>
>> We do however care for performance, and not taking a VMExit on every
>> SYSCALL/Interrupt/Exception makes a massive difference overall.
> FWIW when running the shim under KVM even on Intel, constantly frobbing
> the CR4.SMEP bit still performs awfully.
>
> (Yes, we should make KVM pass that bit through to its guest on Intel
> hardware, just as Xen does when it's the HVM host. cf.
> https://lore.kernel.org/kvm/7fba6d8fc3de0bcb86bf629a4f5b0217552fe999.camel@infradead.org/T/#m39a117e90f29fc862b78ec1441b761459e7be86a
> )
>
> But why does the shim even need to turn it off when switching to the
> guest context? Its guest isn't running in supervisor mode so surely it
> doesn't *matter* whether SMEP is enabled or not? Why not just leave it
> on at all times?

32bit PV kernels run in Ring1.  Which is supervisor and not user.

Some older PV kernels do execute on user pages, and don't like getting
SMEP faults when they didn't turn it on to begin with.

SMAP is far more horrible.  STAC/CLAC are CPL0 instructions despite POPF
(changing AC) having the same architectural effect, but again, the guest
kernel doesn't tolerate SMAP faults when it didn't know it was enabled.

~Andrew


From xen-devel-bounces@lists.xenproject.org Thu Oct 12 02:58:33 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 02:58:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615687.957024 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqlu2-0005dB-5d; Thu, 12 Oct 2023 02:58:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615687.957024; Thu, 12 Oct 2023 02:58: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 1qqlu2-0005d4-32; Thu, 12 Oct 2023 02:58:22 +0000
Received: by outflank-mailman (input) for mailman id 615687;
 Thu, 12 Oct 2023 02:58: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 1qqlu0-0005cu-FM; Thu, 12 Oct 2023 02:58: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 1qqlu0-0007WQ-AC; Thu, 12 Oct 2023 02:58: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 1qqltz-0007Vm-RN; Thu, 12 Oct 2023 02:58:19 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qqltz-0004KD-Qg; Thu, 12 Oct 2023 02:58: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=IcuXDUt9q6nTwQUUD0Ih+4KpU2rvDBA3Q88aRYhtcvA=; b=Cya98LYpwuijQCYeSG+TdggfSH
	MGhtUcKjItaGhTLrheIpuK3i0geH1bj8rEPj5zvjQrO7zmHYisq3yZLn57O8BHlDC4mg+iTIpknoq
	BKewGcT2B5b4BWi2b6ppsl1u9bGdQmxFRS94bXXmbBfDvlYWDxvXE9caF0R8LbvBWnxI=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183341-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-4.16-testing test] 183341: regressions - FAIL
X-Osstest-Failures:
    xen-4.16-testing:test-amd64-i386-libvirt-pair:leak-check/check/src_host:fail:regression
    xen-4.16-testing:test-amd64-i386-libvirt-pair:guest-migrate/dst_host/src_host/debian.repeat:fail:heisenbug
    xen-4.16-testing:test-amd64-i386-qemuu-rhel6hvm-amd:xen-install:fail:heisenbug
    xen-4.16-testing:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:guest-start/debianhvm.repeat:fail:heisenbug
    xen-4.16-testing:test-amd64-i386-qemut-rhel6hvm-amd:xen-install:fail:heisenbug
    xen-4.16-testing:test-amd64-i386-xl-shadow:guest-localmigrate/x10:fail:heisenbug
    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-xl-qemuu-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-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-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-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-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-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-xsm:migrate-support-check:fail:nonblocking
    xen-4.16-testing:test-amd64-i386-libvirt:migrate-support-check: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-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-4.16-testing:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-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-credit2:migrate-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-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-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-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-libvirt: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-amd64-amd64-libvirt-vhd:migrate-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-amd64-i386-libvirt-raw: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-armhf-armhf-libvirt-qcow2:migrate-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-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
X-Osstest-Versions-This:
    xen=29efce0f8f10e381417a61f2f9988b40d4f6bcf0
X-Osstest-Versions-That:
    xen=c450a4bc11e97eabe97dcefe06f510d7acea8d6d
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 12 Oct 2023 02:58:19 +0000

flight 183341 xen-4.16-testing real [real]
flight 183348 xen-4.16-testing real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/183341/
http://logs.test-lab.xenproject.org/osstest/logs/183348/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-i386-libvirt-pair 30 leak-check/check/src_host fail REGR. vs. 183082

Tests which are failing intermittently (not blocking):
 test-amd64-i386-libvirt-pair 28 guest-migrate/dst_host/src_host/debian.repeat fail in 183348 pass in 183341
 test-amd64-i386-qemuu-rhel6hvm-amd  7 xen-install   fail pass in 183348-retest
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 18 guest-start/debianhvm.repeat fail pass in 183348-retest
 test-amd64-i386-qemut-rhel6hvm-amd  7 xen-install   fail pass in 183348-retest
 test-amd64-i386-xl-shadow 20 guest-localmigrate/x10 fail pass in 183348-retest

Tests which did not succeed, but are not blocking:
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 183082
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183082
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183082
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183082
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183082
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 183082
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183082
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183082
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183082
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183082
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 183082
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 183082
 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-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-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-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-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-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          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-credit2  16 saverestore-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-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-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

version targeted for testing:
 xen                  29efce0f8f10e381417a61f2f9988b40d4f6bcf0
baseline version:
 xen                  c450a4bc11e97eabe97dcefe06f510d7acea8d6d

Last test of basis   183082  2023-09-20 10:06:51 Z   21 days
Testing same since   183341  2023-10-11 06:07:02 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Alejandro Vallejo <alejandro.vallejo@cloud.com>
  Andrew Cooper <andrew.cooper3@citrix.com>
  Jan Beulich <jbeulich@suse.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            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                           fail    
 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-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                                    fail    
 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 356 lines long.)


From xen-devel-bounces@lists.xenproject.org Thu Oct 12 05:22:46 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 05:22:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615705.957054 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqo9Z-00078t-ON; Thu, 12 Oct 2023 05:22:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615705.957054; Thu, 12 Oct 2023 05: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 1qqo9Z-00078h-JN; Thu, 12 Oct 2023 05:22:33 +0000
Received: by outflank-mailman (input) for mailman id 615705;
 Thu, 12 Oct 2023 05: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 1qqo9Y-000786-Nn; Thu, 12 Oct 2023 05: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 1qqo9Y-0003IP-KO; Thu, 12 Oct 2023 05: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 1qqo9Y-00049p-AD; Thu, 12 Oct 2023 05:22:32 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qqo9Y-00038o-9J; Thu, 12 Oct 2023 05: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=fqPEkuWcUp1zX1YkjD7mRuxeELycsI7BaGdGNuMy1ao=; b=dySPCaZNrWIDmV44iJVvYJhRAo
	nTOZEzmR3/c22G1OOqTRQidaHrzkA494GbgmviIC9i6yZe/VfWy/MCkrfD96D4yKQSdXMB1m1VDqL
	2qBNVZXE/JEClNP1JeIliwvfQnBziT7gZVF1zWNqVUtLHPSyAnRta3N2xpZHpG/DpDOA=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183343-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-4.17-testing test] 183343: tolerable FAIL - PUSHED
X-Osstest-Failures:
    xen-4.17-testing:test-armhf-armhf-xl-rtds:xen-boot:fail:allowable
    xen-4.17-testing:test-amd64-i386-xl-qemut-win7-amd64:guest-stop: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-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-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-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-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-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-amd64-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: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-i386-libvirt-raw: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-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-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-credit1: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-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-libvirt: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-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-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-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
X-Osstest-Versions-This:
    xen=0b56bed864ca9b572473957f0254aefa797216f2
X-Osstest-Versions-That:
    xen=90c540c58985dc774cf0a1d2dc423473d3f37267
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 12 Oct 2023 05:22:32 +0000

flight 183343 xen-4.17-testing real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183343/

Failures :-/ but no regressions.

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

Tests which did not succeed, but are not blocking:
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 183102
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183102
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 183102
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183102
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183102
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183102
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183102
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 183102
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183102
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 183102
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183102
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183102
 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-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-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-i386-libvirt-raw  14 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-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-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          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          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-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-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-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                  0b56bed864ca9b572473957f0254aefa797216f2
baseline version:
 xen                  90c540c58985dc774cf0a1d2dc423473d3f37267

Last test of basis   183102  2023-09-21 08:31:40 Z   20 days
Testing same since   183343  2023-10-11 06:07:14 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Alejandro Vallejo <alejandro.vallejo@cloud.com>
  Andrew Cooper <andrew.cooper3@citrix.com>
  Jan Beulich <jbeulich@suse.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-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                                      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-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
   90c540c589..0b56bed864  0b56bed864ca9b572473957f0254aefa797216f2 -> stable-4.17


From xen-devel-bounces@lists.xenproject.org Thu Oct 12 07:26:07 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 07:26:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615725.957114 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqq4u-0004hQ-28; Thu, 12 Oct 2023 07:25:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615725.957114; Thu, 12 Oct 2023 07: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 1qqq4t-0004hJ-UE; Thu, 12 Oct 2023 07:25:51 +0000
Received: by outflank-mailman (input) for mailman id 615725;
 Thu, 12 Oct 2023 07:25: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=xPRN=F2=linux.ibm.com=hca@srs-se1.protection.inumbo.net>)
 id 1qqq4s-0004hD-5i
 for xen-devel@lists.xenproject.org; Thu, 12 Oct 2023 07:25:50 +0000
Received: from mx0b-001b2d01.pphosted.com (mx0b-001b2d01.pphosted.com
 [148.163.158.5]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 8e780ecc-68d0-11ee-98d4-6d05b1d4d9a1;
 Thu, 12 Oct 2023 09:25:45 +0200 (CEST)
Received: from pps.filterd (m0353722.ppops.net [127.0.0.1])
 by mx0a-001b2d01.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id
 39C7JN7v017051; Thu, 12 Oct 2023 07:25:11 GMT
Received: from pps.reinject (localhost [127.0.0.1])
 by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 3tpca988bj-1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT);
 Thu, 12 Oct 2023 07:25:11 +0000
Received: from m0353722.ppops.net (m0353722.ppops.net [127.0.0.1])
 by pps.reinject (8.17.1.5/8.17.1.5) with ESMTP id 39C7JNSY017085;
 Thu, 12 Oct 2023 07:25:10 GMT
Received: from ppma13.dal12v.mail.ibm.com
 (dd.9e.1632.ip4.static.sl-reverse.com [50.22.158.221])
 by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 3tpca988ax-1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT);
 Thu, 12 Oct 2023 07:25:10 +0000
Received: from pps.filterd (ppma13.dal12v.mail.ibm.com [127.0.0.1])
 by ppma13.dal12v.mail.ibm.com (8.17.1.19/8.17.1.19) with ESMTP id
 39C4sB2E001239; Thu, 12 Oct 2023 07:25:09 GMT
Received: from smtprelay06.fra02v.mail.ibm.com ([9.218.2.230])
 by ppma13.dal12v.mail.ibm.com (PPS) with ESMTPS id 3tkkvk5hry-1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT);
 Thu, 12 Oct 2023 07:25:09 +0000
Received: from smtpav01.fra02v.mail.ibm.com (smtpav01.fra02v.mail.ibm.com
 [10.20.54.100])
 by smtprelay06.fra02v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id
 39C7P7Zc27001390
 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK);
 Thu, 12 Oct 2023 07:25:08 GMT
Received: from smtpav01.fra02v.mail.ibm.com (unknown [127.0.0.1])
 by IMSVA (Postfix) with ESMTP id DA71020065;
 Thu, 12 Oct 2023 07:25:07 +0000 (GMT)
Received: from smtpav01.fra02v.mail.ibm.com (unknown [127.0.0.1])
 by IMSVA (Postfix) with ESMTP id 8AAA920063;
 Thu, 12 Oct 2023 07:25:07 +0000 (GMT)
Received: from osiris (unknown [9.152.212.60])
 by smtpav01.fra02v.mail.ibm.com (Postfix) with ESMTPS;
 Thu, 12 Oct 2023 07:25:07 +0000 (GMT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 8e780ecc-68d0-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ibm.com; h=date : from : to : cc :
 subject : message-id : references : mime-version : content-type :
 in-reply-to; s=pp1; bh=5MqhUHWaw+1K2HvrJPqGawKne8YN3vxBSsQbSVm1zg8=;
 b=p50xijw8s91A2Q9ug3Gd49JWz4ZvgqA6Hy+zMLFDqVv4bzeNaYOveL4uET4RJOp3gesp
 DAwgrwHJ03HgF9eeEvp+eOO7qwrmg+XNvm8OUqoLNt7lJlDAVEqtjN8CiKqDMXhlLcky
 eKGNUZ1kMUtv/z8/kUcfCyEga3J/tdfvDxnt6ZfgS26CGMmztvCMkSoI1bmaVHklgkOD
 4j0SuHSA9ruFRWECactW6nhgOGtTYpcc3OzdI19+LWOAFipwZEMmcg23yiLFkz2UiyBh
 lGMGaxZYCj+Q2PbNgyXx8ufLOeAMZwfSd+coiMBtiELvWv8yrxN+BKmJ1I/kFUJhuVnc VA== 
Date: Thu, 12 Oct 2023 09:25:05 +0200
From: Heiko Carstens <hca@linux.ibm.com>
To: "Vishal Moola (Oracle)" <vishal.moola@gmail.com>
Cc: Andrew Morton <akpm@linux-foundation.org>,
        Matthew Wilcox <willy@infradead.org>, linux-mm@kvack.org,
        linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org,
        linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org,
        loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org,
        linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org,
        linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org,
        linux-s390@vger.kernel.org, linux-sh@vger.kernel.org,
        sparclinux@vger.kernel.org, linux-um@lists.infradead.org,
        xen-devel@lists.xenproject.org, kvm@vger.kernel.org,
        Hugh Dickins <hughd@google.com>, David Hildenbrand <david@redhat.com>,
        Claudio Imbrenda <imbrenda@linux.ibm.com>,
        Mike Rapoport <rppt@kernel.org>
Subject: Re: [PATCH mm-unstable v9 14/31] s390: Convert various pgalloc
 functions to use ptdescs
Message-ID: <20231012072505.6160-A-hca@linux.ibm.com>
References: <20230807230513.102486-1-vishal.moola@gmail.com>
 <20230807230513.102486-15-vishal.moola@gmail.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <20230807230513.102486-15-vishal.moola@gmail.com>
X-TM-AS-GCONF: 00
X-Proofpoint-ORIG-GUID: R9BBv1jP5we_uE3OHfXIw10GtOr53ihr
X-Proofpoint-GUID: -0DchMoDG4gnKEi3H7t5YnEcLMTMxRGv
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-10-12_02,2023-10-11_01,2023-05-22_02
X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 bulkscore=0 spamscore=0
 mlxscore=0 priorityscore=1501 suspectscore=0 adultscore=0 mlxlogscore=661
 impostorscore=0 clxscore=1011 lowpriorityscore=0 malwarescore=0
 phishscore=0 classifier=spam adjust=0 reason=mlx scancount=1
 engine=8.12.0-2309180000 definitions=main-2310120061

On Mon, Aug 07, 2023 at 04:04:56PM -0700, Vishal Moola (Oracle) wrote:
> As part of the conversions to replace pgtable constructor/destructors with
> ptdesc equivalents, convert various page table functions to use ptdescs.
> 
> Some of the functions use the *get*page*() helper functions. Convert
> these to use pagetable_alloc() and ptdesc_address() instead to help
> standardize page tables further.
> 
> Acked-by: Mike Rapoport (IBM) <rppt@kernel.org>
> Signed-off-by: Vishal Moola (Oracle) <vishal.moola@gmail.com>
> ---
>  arch/s390/include/asm/pgalloc.h |   4 +-
>  arch/s390/include/asm/tlb.h     |   4 +-
>  arch/s390/mm/pgalloc.c          | 128 ++++++++++++++++----------------
>  3 files changed, 69 insertions(+), 67 deletions(-)
...
> diff --git a/arch/s390/mm/pgalloc.c b/arch/s390/mm/pgalloc.c
> index d7374add7820..07fc660a24aa 100644
> --- a/arch/s390/mm/pgalloc.c
> +++ b/arch/s390/mm/pgalloc.c
...
> @@ -488,16 +486,20 @@ static void base_pgt_free(unsigned long *table)
>  static unsigned long *base_crst_alloc(unsigned long val)
>  {
>  	unsigned long *table;
> +	struct ptdesc *ptdesc;
>  
> -	table =	(unsigned long *)__get_free_pages(GFP_KERNEL, CRST_ALLOC_ORDER);
> -	if (table)
> -		crst_table_init(table, val);
> +	ptdesc = pagetable_alloc(GFP_KERNEL & ~__GFP_HIGHMEM, CRST_ALLOC_ORDER);

I guess I must miss something, but what is the reason to mask out
__GFP_HIGHMEM here? It is not part of GFP_KERNEL, nor does s390 support
HIGHMEM.


From xen-devel-bounces@lists.xenproject.org Thu Oct 12 08:21:39 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 08:21:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615734.957124 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqqwm-0004Oc-ER; Thu, 12 Oct 2023 08:21:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615734.957124; Thu, 12 Oct 2023 08: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 1qqqwm-0004OV-AL; Thu, 12 Oct 2023 08:21:32 +0000
Received: by outflank-mailman (input) for mailman id 615734;
 Thu, 12 Oct 2023 08:21: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=ZdDw=F2=casper.srs.infradead.org=BATV+4118f3c7cdc1feb80d69+7354+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qqqwj-0004OP-V3
 for xen-devel@lists.xenproject.org; Thu, 12 Oct 2023 08:21:30 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 55097f4a-68d8-11ee-9b0e-b553b5be7939;
 Thu, 12 Oct 2023 10:21:25 +0200 (CEST)
Received: from [2001:8b0:10b:5:8fd2:9e3e:cd2f:735f]
 (helo=u3832b3a9db3152.ant.amazon.com)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qqqwX-00Fpdk-2V; Thu, 12 Oct 2023 08:21: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: 55097f4a-68d8-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=MIME-Version:Content-Type:References:
	In-Reply-To:Date:Cc:To:From:Subject:Message-ID:Sender:Reply-To:
	Content-Transfer-Encoding:Content-ID:Content-Description;
	bh=WyJbwfRbRsIQ9bA5jZUKwNOAL3dTToA3a9H+2mm2SpU=; b=TFOFA+02N/ZQ45oFURn/MI/YXI
	x7ubbJsIv4VlSBZLK0BLgJOSmWWGESqv0DAd8ugIbZyPZah2vg5GApWDMoRHbmABGua6MgHepc+Gk
	DY2nGjfk19WMgNaBENx5zCAjQYNbCqINP8KNKa945vOxLyVIzdWb73qFuHEVMcZU5gRORUQ9xbbGC
	MPp4DFpQpwzCzN7L2hPIi1TxBrY4PXfrRrtkYfmHGn6zW7JuqQ9McpF83Dg6i22Qm0jzMVm/e7oZc
	oJ1XOOaguoZlwEjAFZGG62lQKJSW5vens54TRhTjq9UssJuH1P9d/Fzv96bfR6QB8rtrJtVUV8MQt
	H9SeE+Fg==;
Message-ID: <26fd7f099ab39ffccc2a5db8b4224fac6806461e.camel@infradead.org>
Subject: Re: [Xen-devel] [PATCH] x86/sm{e, a}p: do not enable SMEP/SMAP in
 PV shim by default on AMD
From: David Woodhouse <dwmw2@infradead.org>
To: andrew.cooper3@citrix.com
Cc: George.Dunlap@eu.citrix.com, jbeulich@suse.com, julien@xen.org, 
	roger.pau@citrix.com, sstabellini@kernel.org, wl@xen.org, 
	xen-devel@lists.xenproject.org
Date: Thu, 12 Oct 2023 09:21:16 +0100
In-Reply-To: <b978a111-4cfb-45f3-850a-a5051298abef@citrix.com>
References: <b4e8835566bc6e9becc4f8adea7bb3c6cc558db2.camel@infradead.org>
	 <b978a111-4cfb-45f3-850a-a5051298abef@citrix.com>
Content-Type: multipart/signed; micalg="sha-256"; protocol="application/pkcs7-signature";
	boundary="=-BLZBethUjG7nr7C6HlTX"
User-Agent: Evolution 3.44.4-0ubuntu2 
MIME-Version: 1.0
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html


--=-BLZBethUjG7nr7C6HlTX
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Thu, 2023-10-12 at 10:13 +0800, andrew.cooper3@citrix.com wrote:
> On 11/10/2023 7:34 pm, David Woodhouse wrote:
> > But why does the shim even need to turn it off when switching to the
> > guest context? Its guest isn't running in supervisor mode so surely it
> > doesn't *matter* whether SMEP is enabled or not? Why not just leave it
> > on at all times?
>=20
> 32bit PV kernels run in Ring1.=C2=A0 Which is supervisor and not user.

Ah, thanks.

> Some older PV kernels do execute on user pages, and don't like getting
> SMEP faults when they didn't turn it on to begin with.

PV guests never actually had the option to turn SMEP on, did they?=20

(Otherwise I may have to rethink the approach of just putting
'smep=3Doff' onto the shim command line when running under KVM...)


--=-BLZBethUjG7nr7C6HlTX
Content-Type: application/pkcs7-signature; name="smime.p7s"
Content-Disposition: attachment; filename="smime.p7s"
Content-Transfer-Encoding: base64

MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgEFADCABgkqhkiG9w0BBwEAAKCCEkQw
ggYQMIID+KADAgECAhBNlCwQ1DvglAnFgS06KwZPMA0GCSqGSIb3DQEBDAUAMIGIMQswCQYDVQQG
EwJVUzETMBEGA1UECBMKTmV3IEplcnNleTEUMBIGA1UEBxMLSmVyc2V5IENpdHkxHjAcBgNVBAoT
FVRoZSBVU0VSVFJVU1QgTmV0d29yazEuMCwGA1UEAxMlVVNFUlRydXN0IFJTQSBDZXJ0aWZpY2F0
aW9uIEF1dGhvcml0eTAeFw0xODExMDIwMDAwMDBaFw0zMDEyMzEyMzU5NTlaMIGWMQswCQYDVQQG
EwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYD
VQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50
aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC
AQEAyjztlApB/975Rrno1jvm2pK/KxBOqhq8gr2+JhwpKirSzZxQgT9tlC7zl6hn1fXjSo5MqXUf
ItMltrMaXqcESJuK8dtK56NCSrq4iDKaKq9NxOXFmqXX2zN8HHGjQ2b2Xv0v1L5Nk1MQPKA19xeW
QcpGEGFUUd0kN+oHox+L9aV1rjfNiCj3bJk6kJaOPabPi2503nn/ITX5e8WfPnGw4VuZ79Khj1YB
rf24k5Ee1sLTHsLtpiK9OjG4iQRBdq6Z/TlVx/hGAez5h36bBJMxqdHLpdwIUkTqT8se3ed0PewD
ch/8kHPo5fZl5u1B0ecpq/sDN/5sCG52Ds+QU5O5EwIDAQABo4IBZDCCAWAwHwYDVR0jBBgwFoAU
U3m/WqorSs9UgOHYm8Cd8rIDZsswHQYDVR0OBBYEFAnA8vwL2pTbX/4r36iZQs/J4K0AMA4GA1Ud
DwEB/wQEAwIBhjASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEF
BQcDBDARBgNVHSAECjAIMAYGBFUdIAAwUAYDVR0fBEkwRzBFoEOgQYY/aHR0cDovL2NybC51c2Vy
dHJ1c3QuY29tL1VTRVJUcnVzdFJTQUNlcnRpZmljYXRpb25BdXRob3JpdHkuY3JsMHYGCCsGAQUF
BwEBBGowaDA/BggrBgEFBQcwAoYzaHR0cDovL2NydC51c2VydHJ1c3QuY29tL1VTRVJUcnVzdFJT
QUFkZFRydXN0Q0EuY3J0MCUGCCsGAQUFBzABhhlodHRwOi8vb2NzcC51c2VydHJ1c3QuY29tMA0G
CSqGSIb3DQEBDAUAA4ICAQBBRHUAqznCFfXejpVtMnFojADdF9d6HBA4kMjjsb0XMZHztuOCtKF+
xswhh2GqkW5JQrM8zVlU+A2VP72Ky2nlRA1GwmIPgou74TZ/XTarHG8zdMSgaDrkVYzz1g3nIVO9
IHk96VwsacIvBF8JfqIs+8aWH2PfSUrNxP6Ys7U0sZYx4rXD6+cqFq/ZW5BUfClN/rhk2ddQXyn7
kkmka2RQb9d90nmNHdgKrwfQ49mQ2hWQNDkJJIXwKjYA6VUR/fZUFeCUisdDe/0ABLTI+jheXUV1
eoYV7lNwNBKpeHdNuO6Aacb533JlfeUHxvBz9OfYWUiXu09sMAviM11Q0DuMZ5760CdO2VnpsXP4
KxaYIhvqPqUMWqRdWyn7crItNkZeroXaecG03i3mM7dkiPaCkgocBg0EBYsbZDZ8bsG3a08LwEsL
1Ygz3SBsyECa0waq4hOf/Z85F2w2ZpXfP+w8q4ifwO90SGZZV+HR/Jh6rEaVPDRF/CEGVqR1hiuQ
OZ1YL5ezMTX0ZSLwrymUE0pwi/KDaiYB15uswgeIAcA6JzPFf9pLkAFFWs1QNyN++niFhsM47qod
x/PL+5jR87myx5uYdBEQkkDc+lKB1Wct6ucXqm2EmsaQ0M95QjTmy+rDWjkDYdw3Ms6mSWE3Bn7i
5ZgtwCLXgAIe5W8mybM2JzCCBhQwggT8oAMCAQICEQDGvhmWZ0DEAx0oURL6O6l+MA0GCSqGSIb3
DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYD
VQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28g
UlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMB4XDTIyMDEwNzAw
MDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJARYTZHdtdzJAaW5mcmFkZWFkLm9y
ZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3GpC2bomUqk+91wLYBzDMcCj5C9m6
oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZHh7htyAkWYVoFsFPrwHounto8xTsy
SSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT9YgcBqKCo65pTFmOnR/VVbjJk4K2
xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNjP+qDrh0db7PAjO1D4d5ftfrsf+kd
RR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy2U+eITZ5LLE5s45mX2oPFknWqxBo
bQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3BgBEmfsYWlBXO8rVXfvPgLs32VdV
NZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/7auNVRmPB3v5SWEsH8xi4Bez2V9U
KxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmdlFYhAflWKQ03Ufiu8t3iBE3VJbc2
5oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9aelIl6vtbhMA+l0nfrsORMa4kobqQ5
C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMBAAGjggHMMIIByDAfBgNVHSMEGDAW
gBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeDMcimo0oz8o1R1Nver3ZVpSkwDgYD
VR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYwFAYIKwYBBQUHAwQGCCsGAQUFBwMC
MEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYBBQUHAgEWF2h0dHBzOi8vc2VjdGln
by5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9jcmwuc2VjdGlnby5jb20vU2VjdGln
b1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1haWxDQS5jcmwwgYoGCCsGAQUFBwEB
BH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdvLmNvbS9TZWN0aWdvUlNBQ2xpZW50
QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAjBggrBgEFBQcwAYYXaHR0cDovL29j
c3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5mcmFkZWFkLm9yZzANBgkqhkiG9w0B
AQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQvQ/fzPXmtR9t54rpmI2TfyvcKgOXp
qa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvIlSPrzIB4Z2wyIGQpaPLlYflrrVFK
v9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9ChWFfgSXvrWDZspnU3Gjw/rMHrGnql
Htlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0whpBtXdyDjzBtQTaZJ7zTT/vlehc/
tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9IzCCBhQwggT8oAMCAQICEQDGvhmW
Z0DEAx0oURL6O6l+MA0GCSqGSIb3DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3Jl
YXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0
ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJl
IEVtYWlsIENBMB4XDTIyMDEwNzAwMDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJ
ARYTZHdtdzJAaW5mcmFkZWFkLm9yZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3
GpC2bomUqk+91wLYBzDMcCj5C9m6oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZH
h7htyAkWYVoFsFPrwHounto8xTsySSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT
9YgcBqKCo65pTFmOnR/VVbjJk4K2xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNj
P+qDrh0db7PAjO1D4d5ftfrsf+kdRR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy
2U+eITZ5LLE5s45mX2oPFknWqxBobQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3
BgBEmfsYWlBXO8rVXfvPgLs32VdVNZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/
7auNVRmPB3v5SWEsH8xi4Bez2V9UKxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmd
lFYhAflWKQ03Ufiu8t3iBE3VJbc25oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9ae
lIl6vtbhMA+l0nfrsORMa4kobqQ5C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMB
AAGjggHMMIIByDAfBgNVHSMEGDAWgBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeD
Mcimo0oz8o1R1Nver3ZVpSkwDgYDVR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYw
FAYIKwYBBQUHAwQGCCsGAQUFBwMCMEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYB
BQUHAgEWF2h0dHBzOi8vc2VjdGlnby5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9j
cmwuc2VjdGlnby5jb20vU2VjdGlnb1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1h
aWxDQS5jcmwwgYoGCCsGAQUFBwEBBH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdv
LmNvbS9TZWN0aWdvUlNBQ2xpZW50QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAj
BggrBgEFBQcwAYYXaHR0cDovL29jc3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5m
cmFkZWFkLm9yZzANBgkqhkiG9w0BAQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQv
Q/fzPXmtR9t54rpmI2TfyvcKgOXpqa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvI
lSPrzIB4Z2wyIGQpaPLlYflrrVFKv9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9Ch
WFfgSXvrWDZspnU3Gjw/rMHrGnqlHtlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0w
hpBtXdyDjzBtQTaZJ7zTT/vlehc/tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9
IzGCBMcwggTDAgEBMIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVz
dGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMT
NVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEA
xr4ZlmdAxAMdKFES+jupfjANBglghkgBZQMEAgEFAKCCAeswGAYJKoZIhvcNAQkDMQsGCSqGSIb3
DQEHATAcBgkqhkiG9w0BCQUxDxcNMjMxMDEyMDgyMTE2WjAvBgkqhkiG9w0BCQQxIgQg9rNNZyoz
g/1RVCgIMOc8k7X+TIqa4SmYR1AK5ODNU74wgb0GCSsGAQQBgjcQBDGBrzCBrDCBljELMAkGA1UE
BhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEYMBYG
A1UEChMPU2VjdGlnbyBMaW1pdGVkMT4wPAYDVQQDEzVTZWN0aWdvIFJTQSBDbGllbnQgQXV0aGVu
dGljYXRpb24gYW5kIFNlY3VyZSBFbWFpbCBDQQIRAMa+GZZnQMQDHShREvo7qX4wgb8GCyqGSIb3
DQEJEAILMYGvoIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVy
MRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNl
Y3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEAxr4Z
lmdAxAMdKFES+jupfjANBgkqhkiG9w0BAQEFAASCAgA/86D4jALBdPcJEbVS8sW8n1h+87/0/T4P
z6+SsoPzlvjMmzp0g4vKT+q+bE73MIvb6CGEI2rOrT41wWofVd8LxsooPkhf71fK75LNU2jDnybW
y1csimnNkQ6yYXfuTw/DU7rTaqGpFGaj/GXcK8W0bO/T9nGq1Amdg5eUPxDkVortyk+QeaYqwmDI
J/95DlA3+8R17T3EPvd4IKzY0IqwDMDQwAfR/oHaEbCNyZxEE3SwR2J+qmClDHyDSJiit5yPvqbh
rxorAfb0ep5rAauEa7yUnyPddcJ3v6wFFIgl0GI3r6yeOFxUX1VuPQK7558s5AdoyNuKuZEQhUJq
/JRLDOCMZs6Ap0yJpKp/GwbKmX+O728ZPKLoizbTLJktoYkh0K2KkX1lSVMY/yxFVZqw59KsAWQd
/NGkWTa8u/9HYn+E2oNEM5KPzOWfLOdVmAJDNXAweGh1P1YGb/DadUfAL/clBYhs9RYLKu8gScsk
fNHeiEZLGMzJcu5Ziz+Hz8U8y1Xbpj7tfifCP0zUrDqsWPA9/DHUa1imxg1CdRLpLalYwyqcaO+l
1WGGkvQXTZOF9CZvTiOzUkPmrxP0kdvFGEke1hGyyU2COXVBi0Px75TsgrKKs/K5yUAp3X5rNSuE
Shx1PGF1nUjvHS9diGdT72+ZSpkZzYndCdn6g4O++wAAAAAAAA==


--=-BLZBethUjG7nr7C6HlTX--


From xen-devel-bounces@lists.xenproject.org Thu Oct 12 08:33:28 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 08:33:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615740.957138 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqr87-0006IC-M1; Thu, 12 Oct 2023 08:33:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615740.957138; Thu, 12 Oct 2023 08:33: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 1qqr87-0006I5-H6; Thu, 12 Oct 2023 08:33:15 +0000
Received: by outflank-mailman (input) for mailman id 615740;
 Thu, 12 Oct 2023 08:33: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=HOn7=F2=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qqr86-0006Hy-4I
 for xen-devel@lists.xenproject.org; Thu, 12 Oct 2023 08:33:14 +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 fadd555e-68d9-11ee-98d4-6d05b1d4d9a1;
 Thu, 12 Oct 2023 10:33:12 +0200 (CEST)
Received: by mail-lj1-x232.google.com with SMTP id
 38308e7fff4ca-2c00df105f8so8847531fa.2
 for <xen-devel@lists.xenproject.org>; Thu, 12 Oct 2023 01:33:12 -0700 (PDT)
Received: from [10.157.20.243] ([103.14.252.248])
 by smtp.gmail.com with ESMTPSA id
 18-20020a17090a1a5200b00279163e52bbsm1419935pjl.17.2023.10.12.01.33.08
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Thu, 12 Oct 2023 01:33: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: fadd555e-68d9-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1697099591; x=1697704391; darn=lists.xenproject.org;
        h=content-transfer-encoding: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=YQGXDiZOa4oZhnz1F/ZArXjooqt3M/3wb7GHD0KXc8o=;
        b=JWP7Fm5jEhcytDXTjuyrkXKq6jO0rto/yO1db7peYE8jSoS2RhO8GsYk/4sF6cEexk
         jrVS8jPdHn1mfi1UFWnI4MO3qxGCZFsey2wOm9B4MRFip9es0//KBw6cmbSQ/F91KR1e
         iZinWLAgpEUpa7xyR/xwXaJ/LB9dhcLrfsvZg=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697099591; x=1697704391;
        h=content-transfer-encoding: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=YQGXDiZOa4oZhnz1F/ZArXjooqt3M/3wb7GHD0KXc8o=;
        b=imh4JIAHe2cfvKNv5uE0aTflMjPe3xZxfCYHJ9JWgQXYSGB6b4rFaj8Ew6cPt0d3JZ
         uIu3ayyYjxO2mDjN2Fa2Mf9q2p662dTMgtkghpeMdNEc7hv89YfaF6gvpY/9c5URmqBi
         Hvb5QU/eCYfK8yhriigZ8IwkVk1sq2Zl6giTGClc+ffirXWfmcX3TSGr7pjZui8UtMRr
         3lgptJK0orKwG/igRgloUmiHJk4DXYTQ+42MjZxTDbePSCUY4Ly91wzgI0A5a53O0Uee
         Zfc4Oez+fWSJO71IQDrbdHPjPgVgbZ/8JD0/dD8VIRzZiK4571rO/m7zoBcJeE6t27Bi
         vALA==
X-Gm-Message-State: AOJu0YyDPZbcVQ6rCQ6FmPAbe+2QDnC6oUFqWsQaSAQ4utEMmmyVzx7Z
	L+Neg2ukkk605nlwkX5m1r+kkA==
X-Google-Smtp-Source: AGHT+IEPui0MMARyJjFbYHA3+HPIPqJAQIOCMHyAjyDbCwMJNfryepHbOaGogiaw1UY7Md9BKNAGzA==
X-Received: by 2002:a2e:998a:0:b0:2bc:b75e:b8b with SMTP id w10-20020a2e998a000000b002bcb75e0b8bmr20273047lji.38.1697099591585;
        Thu, 12 Oct 2023 01:33:11 -0700 (PDT)
Message-ID: <a055111e-c04e-4975-9fdc-81d6e74f1c74@citrix.com>
Date: Thu, 12 Oct 2023 16:33:05 +0800
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [Xen-devel] [PATCH] x86/sm{e, a}p: do not enable SMEP/SMAP in PV
 shim by default on AMD
Content-Language: en-GB
To: David Woodhouse <dwmw2@infradead.org>
Cc: George.Dunlap@eu.citrix.com, jbeulich@suse.com, julien@xen.org,
 roger.pau@citrix.com, sstabellini@kernel.org, wl@xen.org,
 xen-devel@lists.xenproject.org
References: <b4e8835566bc6e9becc4f8adea7bb3c6cc558db2.camel@infradead.org>
 <b978a111-4cfb-45f3-850a-a5051298abef@citrix.com>
 <26fd7f099ab39ffccc2a5db8b4224fac6806461e.camel@infradead.org>
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: <26fd7f099ab39ffccc2a5db8b4224fac6806461e.camel@infradead.org>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 12/10/2023 4:21 pm, David Woodhouse wrote:
> On Thu, 2023-10-12 at 10:13 +0800, andrew.cooper3@citrix.com wrote:
>> On 11/10/2023 7:34 pm, David Woodhouse wrote:
>>> But why does the shim even need to turn it off when switching to the
>>> guest context? Its guest isn't running in supervisor mode so surely it
>>> doesn't *matter* whether SMEP is enabled or not? Why not just leave it
>>> on at all times?
>>
>> 32bit PV kernels run in Ring1.  Which is supervisor and not user.
> 
> Ah, thanks.
> 
>> Some older PV kernels do execute on user pages, and don't like getting
>> SMEP faults when they didn't turn it on to begin with.
> 
> PV guests never actually had the option to turn SMEP on, did they? 
> 
> (Otherwise I may have to rethink the approach of just putting
> 'smep=off' onto the shim command line when running under KVM...)


Xen and PV guests share a set of pagetables.  There is no ability to
independently control SMEP/SMAP.

While we could in principle make SMEP an feature that PV kernels can opt
into, SMAP we really can't.  The emulation costs of STAC/CLAC are
obscene from a perf perspective.

One TODO which has yet to be done is to look at the PV kernel's
ELF32/64-ness.  For a shimmed 64bit guest, SMEP/SMAP should be on and
stay on.

TBH, it's probably best to just hide the SMEP/SMAP features, rather than
to play around with the cmdline.

~Andrew


From xen-devel-bounces@lists.xenproject.org Thu Oct 12 08:40:43 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 08:40:43 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615744.957147 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqrFF-00085L-BM; Thu, 12 Oct 2023 08:40:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615744.957147; Thu, 12 Oct 2023 08: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 1qqrFF-00085E-6a; Thu, 12 Oct 2023 08:40:37 +0000
Received: by outflank-mailman (input) for mailman id 615744;
 Thu, 12 Oct 2023 08: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 1qqrFE-000854-0m; Thu, 12 Oct 2023 08:40: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 1qqrFD-0000RC-Uz; Thu, 12 Oct 2023 08: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 1qqrFD-0005hQ-G0; Thu, 12 Oct 2023 08:40:35 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qqrFD-0007lO-FX; Thu, 12 Oct 2023 08: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=nTw2BJM/54LDAf7YhTfGW5mnY460jsufAAuzxfYOeJY=; b=SW8q+e9xTriIM30qzdNhFrlR2G
	qen04L9u30wbf4ckjPryViKX+ynKxVjeQ8lrQgOtaLZknHsXXc9Z1cHvrvY0pE633yfb/c0zY/sxu
	L+ItykzkrJxypRsY1dSunJ4/nAiiWM2WcAaYu9CIBFHBFSdXJBNtZ1cCpdToJ2WzDoRU=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183352-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 183352: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=eebd446875a4b1e4879e03764f63c6c358fd64f5
X-Osstest-Versions-That:
    ovmf=95c9f470ca6eab23bfd016bd438f932d7263d395
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 12 Oct 2023 08:40:35 +0000

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

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 eebd446875a4b1e4879e03764f63c6c358fd64f5
baseline version:
 ovmf                 95c9f470ca6eab23bfd016bd438f932d7263d395

Last test of basis   183339  2023-10-11 05:10:50 Z    1 days
Testing same since   183352  2023-10-12 05:42:31 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Wenxing Hou <wenxing.hou@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
   95c9f470ca..eebd446875  eebd446875a4b1e4879e03764f63c6c358fd64f5 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Thu Oct 12 10:03:06 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 10:03:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615752.957156 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqsWe-00027H-4c; Thu, 12 Oct 2023 10:02:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615752.957156; Thu, 12 Oct 2023 10:02: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 1qqsWe-00027A-21; Thu, 12 Oct 2023 10:02:40 +0000
Received: by outflank-mailman (input) for mailman id 615752;
 Thu, 12 Oct 2023 10:02: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 1qqsWc-000270-JP; Thu, 12 Oct 2023 10:02: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 1qqsWc-0002Oy-Eu; Thu, 12 Oct 2023 10:02: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 1qqsWb-000820-VB; Thu, 12 Oct 2023 10:02:38 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qqsWb-0001k6-Ug; Thu, 12 Oct 2023 10: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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=rJ7P/uZRfDcCtlZh+giYveX51rc08G6mneKIea5O430=; b=Lc3IwInGrs2jW52iA0gj7sNqKx
	UaD9H4V4TTWVdUGTg3qTSXOHRZ5VreH8r3V46e3U/33Xon+9L1KUXHsbjV7xoeHc+kMd0g8FDtU77
	lUPbxiiiwC/U3xTBh0S1FrbsScePadWFsbPariWogYwwUJBU0YEYfN7dqigf8LfCM3vg=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183350-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-4.16-testing test] 183350: regressions - trouble: fail/pass/starved
X-Osstest-Failures:
    xen-4.16-testing:test-amd64-i386-libvirt-pair:leak-check/check/src_host:fail:regression
    xen-4.16-testing:test-amd64-i386-qemut-rhel6hvm-amd:xen-install:fail:heisenbug
    xen-4.16-testing:test-amd64-i386-qemuu-rhel6hvm-amd:xen-install:fail:heisenbug
    xen-4.16-testing:test-amd64-i386-xl-shadow:guest-localmigrate/x10:fail:heisenbug
    xen-4.16-testing:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:guest-start/debianhvm.repeat:fail:heisenbug
    xen-4.16-testing:test-amd64-i386-libvirt-pair:guest-migrate/dst_host/src_host/debian.repeat:fail:heisenbug
    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-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-credit2:migrate-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-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-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-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-xl-qemuu-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-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-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-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.16-testing:test-amd64-i386-libvirt: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-qemuu-debianhvm-amd64-xsm: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-qemuu-debianhvm-amd64-xsm:migrate-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-arndale: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-arndale: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-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-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-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-amd64-i386-libvirt-raw:migrate-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-libvirt-xsm:hosts-allocate:starved:nonblocking
    xen-4.16-testing:test-arm64-arm64-libvirt-raw:hosts-allocate:starved:nonblocking
    xen-4.16-testing:test-arm64-arm64-xl-thunderx:hosts-allocate:starved:nonblocking
    xen-4.16-testing:test-arm64-arm64-xl-xsm:hosts-allocate:starved:nonblocking
    xen-4.16-testing:test-arm64-arm64-xl-vhd:hosts-allocate:starved:nonblocking
    xen-4.16-testing:test-arm64-arm64-xl-credit1:hosts-allocate:starved:nonblocking
    xen-4.16-testing:test-arm64-arm64-xl:hosts-allocate:starved:nonblocking
    xen-4.16-testing:test-arm64-arm64-xl-credit2:hosts-allocate:starved:nonblocking
X-Osstest-Versions-This:
    xen=29efce0f8f10e381417a61f2f9988b40d4f6bcf0
X-Osstest-Versions-That:
    xen=c450a4bc11e97eabe97dcefe06f510d7acea8d6d
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 12 Oct 2023 10:02:37 +0000

flight 183350 xen-4.16-testing real [real]
flight 183356 xen-4.16-testing real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/183350/
http://logs.test-lab.xenproject.org/osstest/logs/183356/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-i386-libvirt-pair 30 leak-check/check/src_host fail in 183341 REGR. vs. 183082

Tests which are failing intermittently (not blocking):
 test-amd64-i386-qemut-rhel6hvm-amd 7 xen-install fail in 183341 pass in 183350
 test-amd64-i386-qemuu-rhel6hvm-amd 7 xen-install fail in 183341 pass in 183350
 test-amd64-i386-xl-shadow 20 guest-localmigrate/x10 fail in 183341 pass in 183350
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 18 guest-start/debianhvm.repeat fail in 183341 pass in 183350
 test-amd64-i386-libvirt-pair 28 guest-migrate/dst_host/src_host/debian.repeat fail pass in 183341

Tests which did not succeed, but are not blocking:
 test-arm64-arm64-xl-thunderx 15 migrate-support-check fail in 183341 never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail in 183341 never pass
 test-arm64-arm64-xl-credit1 15 migrate-support-check fail in 183341 never pass
 test-arm64-arm64-xl-credit1 16 saverestore-support-check fail in 183341 never pass
 test-arm64-arm64-xl-credit2 15 migrate-support-check fail in 183341 never pass
 test-arm64-arm64-xl-credit2 16 saverestore-support-check fail in 183341 never pass
 test-arm64-arm64-xl-xsm     15 migrate-support-check fail in 183341 never pass
 test-arm64-arm64-xl-xsm 16 saverestore-support-check fail in 183341 never pass
 test-arm64-arm64-xl         15 migrate-support-check fail in 183341 never pass
 test-arm64-arm64-xl     16 saverestore-support-check fail in 183341 never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail in 183341 never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail in 183341 never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check fail in 183341 never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail in 183341 never pass
 test-arm64-arm64-xl-vhd     14 migrate-support-check fail in 183341 never pass
 test-arm64-arm64-xl-vhd 15 saverestore-support-check fail in 183341 never pass
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 183082
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183082
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183082
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183082
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183082
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 183082
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183082
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183082
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183082
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183082
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 183082
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 183082
 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-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-qemuu-debianhvm-amd64-xsm 13 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-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-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-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-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-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-xsm  3 hosts-allocate               starved  n/a
 test-arm64-arm64-libvirt-raw  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-arm64-arm64-xl-vhd       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-credit2   3 hosts-allocate               starved  n/a

version targeted for testing:
 xen                  29efce0f8f10e381417a61f2f9988b40d4f6bcf0
baseline version:
 xen                  c450a4bc11e97eabe97dcefe06f510d7acea8d6d

Last test of basis   183082  2023-09-20 10:06:51 Z   21 days
Testing same since   183341  2023-10-11 06:07:02 Z    1 days    2 attempts

------------------------------------------------------------
People who touched revisions under test:
  Alejandro Vallejo <alejandro.vallejo@cloud.com>
  Andrew Cooper <andrew.cooper3@citrix.com>
  Jan Beulich <jbeulich@suse.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                                          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                                  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.

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


From xen-devel-bounces@lists.xenproject.org Thu Oct 12 11:14:30 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 11:14:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615760.957167 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqtdy-0002wn-1N; Thu, 12 Oct 2023 11:14:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615760.957167; Thu, 12 Oct 2023 11: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 1qqtdx-0002wg-Tw; Thu, 12 Oct 2023 11:14:17 +0000
Received: by outflank-mailman (input) for mailman id 615760;
 Thu, 12 Oct 2023 11:14: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 1qqtdw-0002wW-Cd; Thu, 12 Oct 2023 11:14: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 1qqtdw-000448-68; Thu, 12 Oct 2023 11:14: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 1qqtdv-0003HL-Lw; Thu, 12 Oct 2023 11:14:15 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qqtdv-0003HU-LQ; Thu, 12 Oct 2023 11:14: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=yMfvOF/7KLbhiwMlil5guDv8Nx7EpbX38S2MQ3hNrgM=; b=yZWRmvSAOlrPNCfRdrAXezahUW
	rsxCiuh2lsZVd5q6ARc4PayEQeaRwKZ/0MY5eo54HJf5FYLddPfPfdJPyQX8udA9ajJVSXzWCl184
	Rq1z8yq79GkU33J3DXcTSFJIyxsO1MlEZDof4IiZEaeYZn4EvumoU+00jOIFX8dicmDo=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183355-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 183355: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=326b9e1d815c4ae4b0b207fcb0bfa16864af5400
X-Osstest-Versions-That:
    ovmf=eebd446875a4b1e4879e03764f63c6c358fd64f5
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 12 Oct 2023 11:14:15 +0000

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

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 326b9e1d815c4ae4b0b207fcb0bfa16864af5400
baseline version:
 ovmf                 eebd446875a4b1e4879e03764f63c6c358fd64f5

Last test of basis   183352  2023-10-12 05:42:31 Z    0 days
Testing same since   183355  2023-10-12 09:13:57 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Yuanhao Xie <yuanhao.xie@intel.com>
  YuanhaoXie <yuanhao.xie@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
   eebd446875..326b9e1d81  326b9e1d815c4ae4b0b207fcb0bfa16864af5400 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Thu Oct 12 11:22:48 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 11:22:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615766.957177 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqtm8-0004Qr-UQ; Thu, 12 Oct 2023 11:22:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615766.957177; Thu, 12 Oct 2023 11: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 1qqtm8-0004Qk-QX; Thu, 12 Oct 2023 11:22:44 +0000
Received: by outflank-mailman (input) for mailman id 615766;
 Thu, 12 Oct 2023 11:22: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=5AQY=F2=bounce.vates.tech=bounce-md_30504962.6527d700.v1-a3ec0086e1894dbd854b4fb55797cba4@srs-se1.protection.inumbo.net>)
 id 1qqtm7-0004Qe-Rd
 for xen-devel@lists.xenproject.org; Thu, 12 Oct 2023 11:22:43 +0000
Received: from mail177-2.suw61.mandrillapp.com
 (mail177-2.suw61.mandrillapp.com [198.2.177.2])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id a7f0485c-68f1-11ee-9b0e-b553b5be7939;
 Thu, 12 Oct 2023 13:22:41 +0200 (CEST)
Received: from pmta14.mandrill.prod.suw01.rsglab.com (localhost [127.0.0.1])
 by mail177-2.suw61.mandrillapp.com (Mailchimp) with ESMTP id 4S5nL82hvqzS62KcF
 for <xen-devel@lists.xenproject.org>; Thu, 12 Oct 2023 11:22:40 +0000 (GMT)
Received: from [37.26.189.201] by mandrillapp.com id
 a3ec0086e1894dbd854b4fb55797cba4; Thu, 12 Oct 2023 11: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: a7f0485c-68f1-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=vates.fr;
	s=mandrill; t=1697109760; x=1697370260; i=yann.dirson@vates.fr;
	bh=LDsl5IRKLm1e1gRX2ek5+bGwRs6jKWWm8waJS7mahQ0=;
	h=From:Subject:Message-Id:To:Feedback-ID:Date:MIME-Version:
	 Content-Type:Content-Transfer-Encoding:CC:Date:Subject:From;
	b=dug7DYzsBThINaGNDJ/aUc3RJSJ5EsVr2KHNUwsF8fMQG+sKB0gxRqSJBsKSgJUL8
	 BcY/zNOIclq+cW08GVgMtppScaiZ1vkoi1NRmHD7GA5GQCZdI8TUdlFQC14X4iTQ5q
	 UTGchtNFNVbDxmemH6Q9i7BcvL7jRqjtAxXEF8fk=
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=mandrillapp.com;
 i=@mandrillapp.com; q=dns/txt; s=mandrill; t=1697109760; h=from :
 subject : message-id : to : date : mime-version : content-type :
 content-transfer-encoding : from : x-mandrill-user : list-unsubscribe;
 bh=LDsl5IRKLm1e1gRX2ek5+bGwRs6jKWWm8waJS7mahQ0=;
 b=o9ej47QP1Ax2fw0Nh/lFfRdKYSFj6YiMaavcg2rgaRlMU46l8s7YTFI7Pd0BZd5c0BfUa
 EGtIo5CtTea69bVl+JpnRa63K+XFNEMxifx1+wPvt8tzwdV+D62iYrtKRCvXFrSe5cqO6YX
 +jXUPZopaDzbRUE4/hepxn9BmnGG2ng=
From: Yann Dirson <yann.dirson@vates.fr>
Subject: =?utf-8?Q?Rust=20Xen=20Guest=20Agent?=
X-Bm-Disclaimer: Yes
X-Bm-Milter-Handled: 3c3d82e7-ce49-4348-9fa1-d1b52dc338c1
X-Bm-Transport-Timestamp: 1697109759551
Message-Id: <a4ec7881-3c14-4f4e-ac29-d625a452b034@vates.fr>
To: xen-devel@lists.xenproject.org
X-Native-Encoded: 1
X-Report-Abuse: =?UTF-8?Q?Please=20forward=20a=20copy=20of=20this=20message,=20including=20all=20headers,=20to=20abuse@mandrill.com.=20You=20can=20also=20report=20abuse=20here:=20https://mandrillapp.com/contact/abuse=3Fid=3D30504962.a3ec0086e1894dbd854b4fb55797cba4?=
X-Mandrill-User: md_30504962
Feedback-ID: 30504962:30504962.20231012:md
Date: Thu, 12 Oct 2023 11:22:40 +0000
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 7bit

A new pre-release of our guest agent prototype written in Rust is 
available, numbered 0.2.0 [1].  Identified issues and work to be done 
are tracked in Gitlab issue tracker [3].

More details can be found in this blog post [2].

As always, feedback will be greatly appreciated!


[1] https://gitlab.com/xen-project/xen-guest-agent/-/releases/0.2.0
[2] https://xcp-ng.org/blog/2023/10/12/updates-on-the-rust-guest-tools/
[3] https://gitlab.com/xen-project/xen-guest-agent/-/issues


Yann Dirson | Vates Platform Developer

XCP-ng & Xen Orchestra - Vates solutions
web: https://vates.tech


From xen-devel-bounces@lists.xenproject.org Thu Oct 12 12:27:26 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 12:27:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615775.957187 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqumR-0004Px-Em; Thu, 12 Oct 2023 12:27:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615775.957187; Thu, 12 Oct 2023 12:27: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 1qqumR-0004Pq-Bs; Thu, 12 Oct 2023 12:27:07 +0000
Received: by outflank-mailman (input) for mailman id 615775;
 Thu, 12 Oct 2023 12:27: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=oWZW=F2=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qqumP-0004Pk-QR
 for xen-devel@lists.xenproject.org; Thu, 12 Oct 2023 12:27:05 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id a5341635-68fa-11ee-9b0e-b553b5be7939;
 Thu, 12 Oct 2023 14:27:02 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id 8124D4EE0739;
 Thu, 12 Oct 2023 14:27: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: a5341635-68fa-11ee-9b0e-b553b5be7939
MIME-Version: 1.0
Date: Thu, 12 Oct 2023 14:27:01 +0200
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: andrew.cooper3@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, jbeulich@suse.com, roger.pau@citrix.com, Simone
 Ballarin <simone.ballarin@bugseng.com>, Doug Goldstein <cardoe@cardoe.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>, Wei
 Liu <wl@xen.org>
Subject: Re: [XEN PATCH][for-4.19 v2 1/1] xen: introduce a deviation for Rule
 11.9
In-Reply-To: <9c728576-16e0-4d72-9019-d6f5fe8f033b@citrix.com>
References: <cover.1696948320.git.nicola.vetrini@bugseng.com>
 <c684c36402e6740472fa91d73436ca5790e5e109.1696948320.git.nicola.vetrini@bugseng.com>
 <9c728576-16e0-4d72-9019-d6f5fe8f033b@citrix.com>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <1747011c199a19b458079e04d49f9c45@bugseng.com>
X-Sender: nicola.vetrini@bugseng.com
Organization: BUGSENG s.r.l.
Content-Type: text/plain; charset=UTF-8;
 format=flowed
Content-Transfer-Encoding: 8bit

On 11/10/2023 18:56, andrew.cooper3@citrix.com wrote:
> On 11/10/2023 8:46 pm, Nicola Vetrini wrote:
>> diff --git a/docs/misra/deviations.rst b/docs/misra/deviations.rst
>> index ee7aed0609d2..1b00e4e3e9b7 100644
>> --- a/docs/misra/deviations.rst
>> +++ b/docs/misra/deviations.rst
>> @@ -199,6 +199,11 @@ Deviations related to MISRA C:2012 Rules:
>>         See automation/eclair_analysis/deviations.ecl for the full 
>> explanation.
>>       - Tagged as `safe` for ECLAIR.
>> 
>> +   * - R11.9
>> +     - __ACCESS_ONCE uses a 0 as a null pointer constant to check if 
>> a type is
>> +       scalar, therefore its usage for this purpose is allowed.
>> +     - Tagged as `deliberate` for ECLAIR.
> 
> Really?
> 
> #define __ACCESS_ONCE(x)
>     (void)(typeof(x))0; /* Scalar typecheck. */
> 
> That's not a pointer.
> 
> If someone were to pass in an x who's type was pointer-to-object, then
> yes it is technically a NULL pointer constant for long enough for the
> build to error out.
> 
> What justification is Eclair using to suggest that it is a pointer?
> 
> If you really really want to shut things up, it doesn't need to be 0 -
> it could be 1 or any other integer, but this honestly feels like a bug
> in Eclair to me.
> 
> ~Andrew

The non-compliant uses found by the checker were due to function 
pointers
e.g.

void (*fp)(int i);

violation for rule MC3R1.R11.9: (required) The macro `NULL' shall be the 
only permitted form of integer null pointer constant. (untagged)
p.c:12.3-12.7: (MACRO) Loc #1 [culprit: non-compliant use of null 
pointer constant]
   A(fp) = NULL;
   <~~~>
p.c:6.8-6.19: for #1 [culprit: expanded from macro `_A']
  (void)(typeof(X))0; \
        <~~~~~~~~~~>
p.c:9.16-9.20: for #1 [culprit: expanded from macro `A']
#define A(X) (*_A(X))
                <~~~>

These uses do not cause a build fail, and we deemed this usage of 0 to 
be correct
(a neutral value that would allow __ACCESS_ONCE to support any type of 
argument).
While perhaps some other value does have the same property (e.g., 1), we 
felt that it was
okay to let 0 remain there.

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


From xen-devel-bounces@lists.xenproject.org Thu Oct 12 12:58:59 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 12:58:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615780.957197 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqvH7-00008Q-UJ; Thu, 12 Oct 2023 12:58:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615780.957197; Thu, 12 Oct 2023 12:58: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 1qqvH7-00008J-Pc; Thu, 12 Oct 2023 12:58:49 +0000
Received: by outflank-mailman (input) for mailman id 615780;
 Thu, 12 Oct 2023 12:58: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 1qqvH7-000081-4a; Thu, 12 Oct 2023 12:58: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 1qqvH7-0006GP-0S; Thu, 12 Oct 2023 12:58: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 1qqvH6-0000ni-Jg; Thu, 12 Oct 2023 12:58:48 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qqvH6-0003nB-JL; Thu, 12 Oct 2023 12:58: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=Hboj52U8SGSEDjiMQkXPMWIyhVb/HfY4x3675A5l7w4=; b=53bAK66nNxNVt7aLbwg4rtTauN
	eRc9BORVexBiXth2dQlNhnRDjewRZqOBr9PnQ3QokF22NsNdUy7zrpW1yB7CKWycagQQFJPUhWQxB
	orMuHwGCC0Bs79YeltylrSb9KUKpZiTlsw53BJpbzRNhrQbYPpTf8Hs5ysH8mD1kRaHs=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183344-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 183344: tolerable FAIL - PUSHED
X-Osstest-Failures:
    linux-linus:test-armhf-armhf-libvirt-qcow2: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-armhf-armhf-libvirt: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-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-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: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-xl-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu: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-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-raw:migrate-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-amd64-amd64-libvirt:migrate-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
    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-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:saverestore-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-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=1c8b86a3799f7e5be903c3f49fcdaee29fd385b5
X-Osstest-Versions-That:
    linux=94f6f0550c625fab1f373bb86a6669b45e9748b3
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 12 Oct 2023 12:58:48 +0000

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

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail blocked in 183322
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183322
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183322
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183322
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183322
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183322
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183322
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183322
 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-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          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-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-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-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-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-amd64-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-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-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-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-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                1c8b86a3799f7e5be903c3f49fcdaee29fd385b5
baseline version:
 linux                94f6f0550c625fab1f373bb86a6669b45e9748b3

Last test of basis   183322  2023-10-09 01:11:16 Z    3 days
Testing same since   183334  2023-10-10 19:11:59 Z    1 days    2 attempts

------------------------------------------------------------
People who touched revisions under test:
  Alex Bee <knaerzche@gmail.com>
  Amadeusz Sławiński <amadeuszx.slawinski@linux.intel.com>
  Antoine Gennart <gennartan@disroot.org>
  Anup Patel <apatel@ventanamicro.com>
  Balamurugan C <balamurugan.c@intel.com>
  Bard Liao <yung-chuan.liao@linux.intel.com>
  Ben Wolsieffer <ben.wolsieffer@hefring.com>
  Biju Das <biju.das.jz@bp.renesas.com>
  Christos Skevis <xristos.thes@gmail.com>
  Claudiu Beznea <claudiu.beznea.uj@bp.renesas.com>
  Conor Dooley <conor.dooley@microchip.com>
  Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
  Fabio Estevam <festevam@denx.de>
  Geert Uytterhoeven <geert+renesas@glider.be>
  Herbert Xu <herbert@gondor.apana.org.au>
  Juergen Gross <jgross@suse.com>
  Kailang Yang <kailang@realtek.com>
  Konrad Dybcio <konrad.dybcio@linaro.org>
  Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
  Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
  Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>
  Linus Torvalds <torvalds@linux-foundation.org>
  Lorenzo Pieralisi <lpieralisi@kernel.org>
  Marc Zyngier <maz@kernel.org>
  Mark Brown <broonie@kernel.org>
  Mathias Krause <minipli@grsecurity.net>
  Matthias Reichl <hias@horus.com>
  Miquel Raynal <miquel.raynal@bootlin.com>
  Neil Armstrong <neil.armstrong@linaro.org>
  Olaf Hering <olaf@aepfle.de>
  Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
  Saurabh Sengar <ssengar@linux.microsoft.com>
  Shengjiu Wang <shengjiu.wang@nxp.com>
  Shradha Gupta <shradhagupta@linux.microsoft.com>
  Stefan Binding <sbinding@opensource.cirrus.com>
  Sumit Garg <sumit.garg@linaro.org>
  Sven Frotscher <sven.frotscher@gmail.com>
  Takashi Iwai <tiwai@suse.de>
  Thomas Gleixner <tglx@linutronix.de>
  Vijendar Mukunda <Vijendar.Mukunda@amd.com>
  Wei Liu <wei.liu@kernel.org>
  WhaleChang <whalechang@google.com>
  Zhang Shurong <zhang_shurong@foxmail.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
   94f6f0550c62..1c8b86a3799f  1c8b86a3799f7e5be903c3f49fcdaee29fd385b5 -> tested/linux-linus


From xen-devel-bounces@lists.xenproject.org Thu Oct 12 13:43:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 13:43:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615788.957207 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqvyR-0006T3-8G; Thu, 12 Oct 2023 13:43:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615788.957207; Thu, 12 Oct 2023 13:43: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 1qqvyR-0006Sw-52; Thu, 12 Oct 2023 13:43:35 +0000
Received: by outflank-mailman (input) for mailman id 615788;
 Thu, 12 Oct 2023 13:43: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=6Y9O=F2=cloud.com=javi.merino@srs-se1.protection.inumbo.net>)
 id 1qqvyQ-0006Sk-Eq
 for xen-devel@lists.xenproject.org; Thu, 12 Oct 2023 13:43:34 +0000
Received: from mail-ed1-x52a.google.com (mail-ed1-x52a.google.com
 [2a00:1450:4864:20::52a])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 55cb38e5-6905-11ee-98d4-6d05b1d4d9a1;
 Thu, 12 Oct 2023 15:43:33 +0200 (CEST)
Received: by mail-ed1-x52a.google.com with SMTP id
 4fb4d7f45d1cf-53da72739c3so1712926a12.3
 for <xen-devel@lists.xenproject.org>; Thu, 12 Oct 2023 06:43:33 -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
 r15-20020aa7c14f000000b0053448f23b33sm10107895edp.93.2023.10.12.06.43.32
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Thu, 12 Oct 2023 06:43: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: 55cb38e5-6905-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1697118212; x=1697723012; 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=71q/hEK3izRxQ+ggRh4p9lQ6o4Aa135thdYxQxhrZYU=;
        b=c+/UIJHyKOXHTVRzWfHUj+n/aye7NGfB0XA45XkOaXXBT6lQBCUBLve4zNhK2aa/8U
         DIHDaKKffKTHFrT59mJF5ymyeCf1uoznh/jG82PgPLcOxDFNDtMm1Z+J+kMdW8Rn1TJN
         uc+B0hK+RapsY/FP5TQWIEBvH91rkIkef0tKU=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697118212; x=1697723012;
        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=71q/hEK3izRxQ+ggRh4p9lQ6o4Aa135thdYxQxhrZYU=;
        b=xAdcVjWC5F5d9CFTPYBR7W52f4qya5FOtoNEJWqyrQnshW1RP7KHCxdS0JE5Ouc7Vo
         Y33ItUpIzJn2FBqvLGI1KoKgmUoPq7RwZb9xMqMolwMUwp4QTlCTR0tWXK3c1yMrhzco
         vERs//1e0BOw7m52bFO/PTs13FvK12fqkLTj4Xens1EBZ/7Dxo4FJioyZbiYaKQbrdSw
         /jy0y/EK5laHDMgkKQJKuYa9gG57790jCQbpF/ljBdycgboYraHRsJRfmfl92HETpAIh
         9cjshFspGKQep4hgam09is/jfeaClzHUiwapQQL/fh5OOIcLLJW1G1xAeBDhT0M7p3Cq
         QDfg==
X-Gm-Message-State: AOJu0YziINYlWj+2wY1shHqcRpFl/t81wD/IUov7cxFOU56ULkHlx8oU
	rZ6WKCb7CPmRH5tYXnNZ+wG6pw==
X-Google-Smtp-Source: AGHT+IFsgSDNVbTcaKb9H+efkZ6eKL74+8pvpEOUbdcyruOs7//orClJABpLLD2O9xcu7d1rZpc8GQ==
X-Received: by 2002:aa7:cd74:0:b0:52a:6497:d02b with SMTP id ca20-20020aa7cd74000000b0052a6497d02bmr22477521edb.16.1697118212649;
        Thu, 12 Oct 2023 06:43:32 -0700 (PDT)
Date: Thu, 12 Oct 2023 13:54:29 +0100
From: Javi Merino <javi.merino@cloud.com>
To: 
	Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>
Cc: xen-devel@lists.xenproject.org, Wei Liu <wl@xen.org>, 
	Anthony PERARD <anthony.perard@citrix.com>, Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [XEN PATCH v1] tools/python: Add python3 compatibility
Message-ID: <2c3hczqthfsg3lvv3sbrz7cdq4umgzxby4esiwoo6axgqvxciz@xdacvkdip4vv>
References: <efb10e537e37df1995dd8f87c28a8eb64ec9b61e.1696947009.git.javi.merino@cloud.com>
 <ZSVtR1ct4Hik4XM8@mail-itl>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <ZSVtR1ct4Hik4XM8@mail-itl>

On Tue, Oct 10, 2023 at 05:27:03PM +0200, Marek Marczykowski-Górecki wrote:
> On Tue, Oct 10, 2023 at 03:18:45PM +0100, Javi Merino wrote:
> > Most of the work for python3 compatibility was done in
> > 1430c5a8cad4 (tools/python: Python 3 compatibility, 2019-12-18).  This
> > just adds a few builtins needed for python3.
> > 
> > Resolves: xen-project/xen#156
> > 
> > Signed-off-by: Javi Merino <javi.merino@cloud.com>
> > ---
> > 
> > I haven't tested it.
> > 
> >  README                                     | 1 +
> >  tools/python/scripts/convert-legacy-stream | 3 +++
> >  2 files changed, 4 insertions(+)
> > 
> > diff --git a/README b/README
> > index 855db01d36..44ed88c392 100644
> > --- a/README
> > +++ b/README
> > @@ -51,6 +51,7 @@ provided by your OS distributor:
> >      * POSIX compatible awk
> >      * Development install of zlib (e.g., zlib-dev)
> >      * Development install of Python 2.7 or later (e.g., python-dev)
> > +      - If using Python 2.7, you also need the future module.  This is not needed for Python 3.
> >      * 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)
> > diff --git a/tools/python/scripts/convert-legacy-stream b/tools/python/scripts/convert-legacy-stream
> > index 7fe375a668..26a66c50fc 100755
> > --- a/tools/python/scripts/convert-legacy-stream
> > +++ b/tools/python/scripts/convert-legacy-stream
> > @@ -8,6 +8,9 @@ Convert a legacy migration stream to a v2 stream.
> >  from __future__ import print_function
> >  from __future__ import division
> >  
> > +from builtins import zip
> > +from builtins import range
> > +from builtins import object
> 
> In which python version it's needed? The thing about builtins is they
> are available without explicit import.

In python3, this change is a noop.  In python2, this change makes zip,
range and object be consistent with its python3 counterparts:

- zip: with the change, zip returns an iterator in python2,
  like it does in python3.  It's equivalent to izip from itertools or
  `from future_builtins import zip`[0]

- range: with the change, in python2 range behaves like xrange() used
  to. It returns an object instead of returning the list.[1]

- object: with the change, in python2 the string representation of
  VM() is in unicode, as it is for python3.

[0] https://stackless.readthedocs.io/en/2.7-slp/library/future_builtins.html#future_builtins.zip
[1] https://docs.python.org/3/library/stdtypes.html#ranges

Cheers,
Javi


From xen-devel-bounces@lists.xenproject.org Thu Oct 12 13:52:35 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 13:52:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615792.957216 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqw74-0007yB-39; Thu, 12 Oct 2023 13:52:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615792.957216; Thu, 12 Oct 2023 13:52: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 1qqw73-0007y4-W3; Thu, 12 Oct 2023 13:52:29 +0000
Received: by outflank-mailman (input) for mailman id 615792;
 Thu, 12 Oct 2023 13:52: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=6Y9O=F2=cloud.com=javi.merino@srs-se1.protection.inumbo.net>)
 id 1qqw72-0007xy-L0
 for xen-devel@lists.xenproject.org; Thu, 12 Oct 2023 13:52:28 +0000
Received: from mail-ej1-x62d.google.com (mail-ej1-x62d.google.com
 [2a00:1450:4864:20::62d])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 93946b19-6906-11ee-9b0e-b553b5be7939;
 Thu, 12 Oct 2023 15:52:26 +0200 (CEST)
Received: by mail-ej1-x62d.google.com with SMTP id
 a640c23a62f3a-9b96c3b4be4so154045566b.1
 for <xen-devel@lists.xenproject.org>; Thu, 12 Oct 2023 06:52:26 -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
 lc11-20020a170906f90b00b009b9aa8fffdasm11038954ejb.131.2023.10.12.06.52.25
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Thu, 12 Oct 2023 06:52: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: 93946b19-6906-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1697118746; x=1697723546; 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=NcL6JSviC6YZf7YuV65cuTS2dEqFCTe/yN7wJWGmdeM=;
        b=TqTjBAIilchyWpHWf+35U5EJiYT/Lwth25bmBP86duTnJkvRDeykBpuDbkLGlR1Rwf
         7UIqmhQdtp22ioJpPzh4+tzljDuXXLuT3i7+yNHWv5YjEqzkpZTJN+p2zT2dpCyR548j
         xRs/ojskwrPOhCF5A4gD0fhCrIlLfJX7XqL70=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697118746; x=1697723546;
        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=NcL6JSviC6YZf7YuV65cuTS2dEqFCTe/yN7wJWGmdeM=;
        b=nf/SHBaGQyEiKi2GZ8dzxA5I5OZ88Lm1aAwEU77VwjsM5aju6/STU6CfeR5JSX5S4h
         QsUv2f+69B9lBi5EGqGbiYRowQRt8k65jf+8G9DzyR9m8o89mwBJo6eh8g86opvhniSF
         IIlYwyryLrba/5p//NUexP+UT9y94qxgAbrwPf5HKfZ2DwKToRB5ZADINSuth3BbeEUB
         Hwx3TAJ5gIAAdyzCL34HrwcIuhtavFvjtMUjF5uDlubw7pyBVyuAHjDnGCkaIWlEvU6N
         XSsQZspL+GpdfB/wh7Z+S50Ee2Px00+7ikvwlnABqGgHtRMxCTXQwIq17LlyRfA0VLir
         yDpQ==
X-Gm-Message-State: AOJu0Yzu7XKMBn7bebaRjxJsM3KZz8mNRcaokh3U/uDJLCm960HI4iJX
	HPfPBBSMtaX7XMS0RW1MBLEUoQ==
X-Google-Smtp-Source: AGHT+IHmhCep1PaCawTk8YLG4yYXJMLOnyrIaYIXGKG4JmR1bsamrlAHACZKFuYieDWn/5Yf74mMCQ==
X-Received: by 2002:a17:907:778b:b0:9b2:df16:851d with SMTP id ky11-20020a170907778b00b009b2df16851dmr19904123ejc.57.1697118745711;
        Thu, 12 Oct 2023 06:52:25 -0700 (PDT)
Date: Thu, 12 Oct 2023 14:04:06 +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>, Wei Liu <wl@xen.org>, Anthony PERARD <anthony.perard@citrix.com>
Subject: Re: [XEN PATCH v1] tools/python: Add python3 compatibility
Message-ID: <6oqpexjqm4hbt7sqndfu7iowtcjynec74nmlrrxolr6blpod4o@6rdriz7tixda>
References: <efb10e537e37df1995dd8f87c28a8eb64ec9b61e.1696947009.git.javi.merino@cloud.com>
 <2ef1f6b6-9b50-4e77-abad-fa046eb2ca0a@citrix.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <2ef1f6b6-9b50-4e77-abad-fa046eb2ca0a@citrix.com>

On Wed, Oct 11, 2023 at 12:34:27AM +0800, Andrew Cooper wrote:
> On 10/10/2023 10:18 pm, Javi Merino wrote:
> > Most of the work for python3 compatibility was done in
> > 1430c5a8cad4 (tools/python: Python 3 compatibility, 2019-12-18).  This
> > just adds a few builtins needed for python3.
> >
> > Resolves: xen-project/xen#156
> >
> > Signed-off-by: Javi Merino <javi.merino@cloud.com>
> > ---
> >
> > I haven't tested it.
> >
> >  README                                     | 1 +
> >  tools/python/scripts/convert-legacy-stream | 3 +++
> >  2 files changed, 4 insertions(+)
> >
> > diff --git a/README b/README
> > index 855db01d36..44ed88c392 100644
> > --- a/README
> > +++ b/README
> > @@ -51,6 +51,7 @@ provided by your OS distributor:
> >      * POSIX compatible awk
> >      * Development install of zlib (e.g., zlib-dev)
> >      * Development install of Python 2.7 or later (e.g., python-dev)
> > +      - If using Python 2.7, you also need the future module.  This is not needed for Python 3.
> >      * 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)
> > diff --git a/tools/python/scripts/convert-legacy-stream b/tools/python/scripts/convert-legacy-stream
> > index 7fe375a668..26a66c50fc 100755
> > --- a/tools/python/scripts/convert-legacy-stream
> > +++ b/tools/python/scripts/convert-legacy-stream
> > @@ -8,6 +8,9 @@ Convert a legacy migration stream to a v2 stream.
> >  from __future__ import print_function
> >  from __future__ import division
> >  
> > +from builtins import zip
> > +from builtins import range
> > +from builtins import object
> 
> It can't be object because most other scripts use it just fine in py2
> and py3.

This just makes the VM() class behave like python3: str(vm) will
return a unicode string.  After a quick glance at the code I don't
think the code currently does this, but at least the behaviour will
now be consistent between the two versions.

> There's only one single use of zip and range in this script, and range
> is clearly fine (although it wants to be xrange() on py2 and we do
> opencode that places), so I'm guessing the problem is with zip(), but
> it's not exactly clear why?

These changes just make the code be more consistent between python2
and python3.  As I said under the commit message, I have not tested
the changes.

Cheers,
Javi


From xen-devel-bounces@lists.xenproject.org Thu Oct 12 13:53:24 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 13:53:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615797.957228 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqw7w-0000Pn-HR; Thu, 12 Oct 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 615797.957228; Thu, 12 Oct 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 1qqw7w-0000Pg-Ct; Thu, 12 Oct 2023 13:53:24 +0000
Received: by outflank-mailman (input) for mailman id 615797;
 Thu, 12 Oct 2023 13:53: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=ZdDw=F2=casper.srs.infradead.org=BATV+4118f3c7cdc1feb80d69+7354+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qqw7u-0000Gu-G4
 for xen-devel@lists.xenproject.org; Thu, 12 Oct 2023 13:53:23 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id b3d5d4cd-6906-11ee-98d4-6d05b1d4d9a1;
 Thu, 12 Oct 2023 15:53:21 +0200 (CEST)
Received: from [2001:8b0:10b:5:8fd2:9e3e:cd2f:735f]
 (helo=u3832b3a9db3152.ant.amazon.com)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qqw7e-00HF9K-PK; Thu, 12 Oct 2023 13:53: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: b3d5d4cd-6906-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=MIME-Version:Content-Type:References:
	In-Reply-To:Date:Cc:To:From:Subject:Message-ID:Sender:Reply-To:
	Content-Transfer-Encoding:Content-ID:Content-Description;
	bh=p6BwkcEmSmSrSpHSIri1bUfhXq/7wfBAJLSJFJQX86U=; b=Q07degRdV35/Iaxl2lvbzbefZ+
	XJ+i1Z2dZ11bG1BQ/5exDlYQtAqnatR5iMEV2COjGI+bdILudaMnjTx+MmLcfmjDcJv8H/cet+um4
	JJhreoYiUAIm632VHtyNJ4uW1kW2WTJk++QCLa8qgsnwaWJXXigEMtTTPd28lcJVou+cBw6ca1W7p
	VjtkkqsiFlquvGs9LbFPkGj+yEcN7P3Y87K0GufOZ4bF8Vmq5eKOA3jKIQvn/atemWeQvXYhuHQPQ
	tguUzI/Bf1zVox0myEeTqSsMrr/a9WBu++Bk265zBxPHDUhveI7OtILYCOJHEr+SYSMZ6J4A/G3SA
	+HXm/hTw==;
Message-ID: <4c63ee3634ccfed7d687fcbdd9db60663bce481f.camel@infradead.org>
Subject: Re: [PATCH v6 06/38] mm: Add default definition of set_ptes()
From: David Woodhouse <dwmw2@infradead.org>
To: "Matthew Wilcox (Oracle)" <willy@infradead.org>, Andrew Morton
	 <akpm@linux-foundation.org>
Cc: linux-arch@vger.kernel.org, linux-mm@kvack.org, 
	linux-kernel@vger.kernel.org, Mike Rapoport <rppt@kernel.org>, xen-devel
	 <xen-devel@lists.xenproject.org>
Date: Thu, 12 Oct 2023 14:53:05 +0100
In-Reply-To: <20230802151406.3735276-7-willy@infradead.org>
References: <20230802151406.3735276-1-willy@infradead.org>
	 <20230802151406.3735276-7-willy@infradead.org>
Content-Type: multipart/signed; micalg="sha-256"; protocol="application/pkcs7-signature";
	boundary="=-a3KmwuGX4I14b0YbaVNl"
User-Agent: Evolution 3.44.4-0ubuntu2 
MIME-Version: 1.0
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html


--=-a3KmwuGX4I14b0YbaVNl
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Wed, 2023-08-02 at 16:13 +0100, Matthew Wilcox (Oracle) wrote:
> Most architectures can just define set_pte() and PFN_PTE_SHIFT to
> use this definition.=C2=A0 It's also a handy spot to document the guarant=
ees
> provided by the MM.
>=20
> Suggested-by: Mike Rapoport (IBM) <rppt@kernel.org>
> Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org>
> Reviewed-by: Mike Rapoport (IBM) <rppt@kernel.org>
> ---
> =C2=A0include/linux/pgtable.h | 81 ++++++++++++++++++++++++++++++--------=
---
> =C2=A01 file changed, 60 insertions(+), 21 deletions(-)
>=20
> diff --git a/include/linux/pgtable.h b/include/linux/pgtable.h
> index f34e0f2cb4d8..3fde0d5d1c29 100644
> --- a/include/linux/pgtable.h
> +++ b/include/linux/pgtable.h
> @@ -182,6 +182,66 @@ static inline int pmd_young(pmd_t pmd)
> =C2=A0}
> =C2=A0#endif
> =C2=A0
> +/*
> + * A facility to provide lazy MMU batching.=C2=A0 This allows PTE update=
s and
> + * page invalidations to be delayed until a call to leave lazy MMU mode
> + * is issued.=C2=A0 Some architectures may benefit from doing this, and =
it is
> + * beneficial for both shadow and direct mode hypervisors, which may bat=
ch
> + * the PTE updates which happen during this window.=C2=A0 Note that usin=
g this
> + * interface requires that read hazards be removed from the code.=C2=A0 =
A read
> + * hazard could result in the direct mode hypervisor case, since the act=
ual
> + * write to the page tables may not yet have taken place, so reads thoug=
h
> + * a raw PTE pointer after it has been modified are not guaranteed to be
> + * up to date.=C2=A0 This mode can only be entered and left under the pr=
otection of
> + * the page table locks for all page tables which may be modified.=C2=A0=
 In the UP
> + * case, this is required so that preemption is disabled, and in the SMP=
 case,
> + * it must synchronize the delayed page table writes properly on other C=
PUs.
> + */
> +#ifndef __HAVE_ARCH_ENTER_LAZY_MMU_MODE
> +#define arch_enter_lazy_mmu_mode()=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0do {} wh=
ile (0)
> +#define arch_leave_lazy_mmu_mode()=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0do {} wh=
ile (0)
> +#define arch_flush_lazy_mmu_mode()=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0do {} wh=
ile (0)
> +#endif
> +
> +#ifndef set_ptes
> +#ifdef PFN_PTE_SHIFT
> +/**
> + * set_ptes - Map consecutive pages to a contiguous range of addresses.
> + * @mm: Address space to map the pages into.
> + * @addr: Address to map the first page at.
> + * @ptep: Page table pointer for the first entry.
> + * @pte: Page table entry for the first page.
> + * @nr: Number of pages to map.
> + *
> + * May be overridden by the architecture, or the architecture can define
> + * set_pte() and PFN_PTE_SHIFT.
> + *
> + * Context: The caller holds the page table lock.=C2=A0 The pages all be=
long
> + * to the same folio.=C2=A0 The PTEs are all in the same PMD.
> + */
> +static inline void set_ptes(struct mm_struct *mm, unsigned long addr,
> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0pte_t *ptep, pte_t pte, unsigned int nr)
> +{
> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0page_table_check_ptes_set(mm, =
ptep, pte, nr);
> +
> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0arch_enter_lazy_mmu_mode();
> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0for (;;) {
> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0set_pte(ptep, pte);
> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0if (--nr =3D=3D 0)
> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0break;
> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0ptep++;
> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0pte =3D __pte(pte_val(pte) + (1UL << PFN_PTE_SHIFT));
> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0}
> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0arch_leave_lazy_mmu_mode();
> +}


This breaks the Xen PV guest.

In move_ptes() in mm/mremap.c we arch_enter_lazy_mmu_mode() and then
loop calling set_pte_at(). Which now (or at least in a few commits time
when you wire it up for x86 in commit a3e1c9372c9b959) ends up in your
implementation of set_ptes(), calls arch_enter_lazy_mmu_mode() again,
and:

[    0.628700] ------------[ cut here ]------------
[    0.628718] kernel BUG at arch/x86/kernel/paravirt.c:144!
[    0.628743] invalid opcode: 0000 [#1] PREEMPT SMP NOPTI
[    0.628769] CPU: 0 PID: 1 Comm: init Not tainted 6.5.0-rc4+ #1295
[    0.628818] RIP: e030:paravirt_enter_lazy_mmu+0x24/0x30
[    0.628839] Code: 90 90 90 90 90 90 f3 0f 1e fa 0f 1f 44 00 00 65 8b 05 =
90 28 f9 7e 85 c0 75 10 65 c7 05 81 28 f9 7e 01 00 00 00 c3 cc cc cc cc <0f=
> 0b 66 2e 0f 1f 84 00 00 00 00 00 90 90 90 90 90 90 90 90 90 90
[    0.628875] RSP: e02b:ffffc9004000ba48 EFLAGS: 00010202
[    0.628891] RAX: 0000000000000001 RBX: ffff8880051b7100 RCX: 000ffffffff=
ff000
[    0.628908] RDX: 80000000763ff967 RSI: 80000000763ff967 RDI: ffff8880051=
b7100
[    0.628925] RBP: 80000000763ff967 R08: ffff8880051b6868 R09: 00007ffce1a=
20000
[    0.628943] R10: deadbeefdeadf00d R11: 0000000000000000 R12: 00007ffffff=
ff000
[    0.628964] R13: ffff8880050b7000 R14: 0000000000000001 R15: 00007ffffff=
fe000
[    0.628988] FS:  0000000000000000(0000) GS:ffff88807b800000(0000) knlGS:=
0000000000000000
[    0.629007] CS:  e030 DS: 0000 ES: 0000 CR0: 0000000080050033
[    0.629024] CR2: ffffc900003f5000 CR3: 0000000003904000 CR4: 00000000000=
50660
[    0.629046] Call Trace:
[    0.629055]  <TASK>
[    0.629066]  ? die+0x36/0x90
[    0.629081]  ? do_trap+0xda/0x100
[    0.629093]  ? paravirt_enter_lazy_mmu+0x24/0x30
[    0.629112]  ? do_error_trap+0x6a/0x90
[    0.629123]  ? paravirt_enter_lazy_mmu+0x24/0x30
[    0.629138]  ? exc_invalid_op+0x50/0x70
[    0.629155]  ? paravirt_enter_lazy_mmu+0x24/0x30
[    0.629169]  ? asm_exc_invalid_op+0x1a/0x20
[    0.629185]  ? paravirt_enter_lazy_mmu+0x24/0x30
[    0.629212]  ? pte_offset_map_nolock+0x48/0xc0
[    0.629226]  set_ptes.constprop.0+0xd/0x30
[    0.629240]  move_ptes.isra.0+0xdd/0x290
[    0.629253]  ? pmd_install+0xab/0xd0
[    0.629267]  move_page_tables+0x3a0/0x850
[    0.629294]  shift_arg_pages+0xf4/0x1d0
[    0.629317]  setup_arg_pages+0x205/0x380
[    0.629330]  load_elf_binary+0x398/0xe00


I'm working on making PV kernels testable in qemu. With...

 =E2=80=A2 some qemu fixes and a nasty hackish Xen console implementation:
   https://git.infradead.org/users/dwmw2/qemu.git/shortlog/refs/heads/xenfv=
-console
 =E2=80=A2 a CONFIG_PV_SHIM_EXCLUSIVE build of Xen itself to run in the gue=
st,
 =E2=80=A2 some suitable disk image lying around, in ${GUEST_IMAGE}, and
 =E2=80=A2 CONFIG_KVM_XEN enabled in your host kernel,

...you should be able to do something like:

 $ ./qemu-system-x86_64 --accel kvm,xen-version=3D0x40011,kernel-irqchip=3D=
split -drive file=3D${GUEST_IMAGE},if=3Dnone,id=3Ddisk -device xen-disk,dri=
ve=3Ddisk,vdev=3Dxvda -m 1G -kernel ~/git/xen/xen/xen -initrd ~/git/linux/a=
rch/x86/boot/bzImage -append "loglvl=3Dall -- console=3Dhvc0 root=3D/dev/xv=
da1" -display none






--=-a3KmwuGX4I14b0YbaVNl
Content-Type: application/pkcs7-signature; name="smime.p7s"
Content-Disposition: attachment; filename="smime.p7s"
Content-Transfer-Encoding: base64

MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgEFADCABgkqhkiG9w0BBwEAAKCCEkQw
ggYQMIID+KADAgECAhBNlCwQ1DvglAnFgS06KwZPMA0GCSqGSIb3DQEBDAUAMIGIMQswCQYDVQQG
EwJVUzETMBEGA1UECBMKTmV3IEplcnNleTEUMBIGA1UEBxMLSmVyc2V5IENpdHkxHjAcBgNVBAoT
FVRoZSBVU0VSVFJVU1QgTmV0d29yazEuMCwGA1UEAxMlVVNFUlRydXN0IFJTQSBDZXJ0aWZpY2F0
aW9uIEF1dGhvcml0eTAeFw0xODExMDIwMDAwMDBaFw0zMDEyMzEyMzU5NTlaMIGWMQswCQYDVQQG
EwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYD
VQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50
aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC
AQEAyjztlApB/975Rrno1jvm2pK/KxBOqhq8gr2+JhwpKirSzZxQgT9tlC7zl6hn1fXjSo5MqXUf
ItMltrMaXqcESJuK8dtK56NCSrq4iDKaKq9NxOXFmqXX2zN8HHGjQ2b2Xv0v1L5Nk1MQPKA19xeW
QcpGEGFUUd0kN+oHox+L9aV1rjfNiCj3bJk6kJaOPabPi2503nn/ITX5e8WfPnGw4VuZ79Khj1YB
rf24k5Ee1sLTHsLtpiK9OjG4iQRBdq6Z/TlVx/hGAez5h36bBJMxqdHLpdwIUkTqT8se3ed0PewD
ch/8kHPo5fZl5u1B0ecpq/sDN/5sCG52Ds+QU5O5EwIDAQABo4IBZDCCAWAwHwYDVR0jBBgwFoAU
U3m/WqorSs9UgOHYm8Cd8rIDZsswHQYDVR0OBBYEFAnA8vwL2pTbX/4r36iZQs/J4K0AMA4GA1Ud
DwEB/wQEAwIBhjASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEF
BQcDBDARBgNVHSAECjAIMAYGBFUdIAAwUAYDVR0fBEkwRzBFoEOgQYY/aHR0cDovL2NybC51c2Vy
dHJ1c3QuY29tL1VTRVJUcnVzdFJTQUNlcnRpZmljYXRpb25BdXRob3JpdHkuY3JsMHYGCCsGAQUF
BwEBBGowaDA/BggrBgEFBQcwAoYzaHR0cDovL2NydC51c2VydHJ1c3QuY29tL1VTRVJUcnVzdFJT
QUFkZFRydXN0Q0EuY3J0MCUGCCsGAQUFBzABhhlodHRwOi8vb2NzcC51c2VydHJ1c3QuY29tMA0G
CSqGSIb3DQEBDAUAA4ICAQBBRHUAqznCFfXejpVtMnFojADdF9d6HBA4kMjjsb0XMZHztuOCtKF+
xswhh2GqkW5JQrM8zVlU+A2VP72Ky2nlRA1GwmIPgou74TZ/XTarHG8zdMSgaDrkVYzz1g3nIVO9
IHk96VwsacIvBF8JfqIs+8aWH2PfSUrNxP6Ys7U0sZYx4rXD6+cqFq/ZW5BUfClN/rhk2ddQXyn7
kkmka2RQb9d90nmNHdgKrwfQ49mQ2hWQNDkJJIXwKjYA6VUR/fZUFeCUisdDe/0ABLTI+jheXUV1
eoYV7lNwNBKpeHdNuO6Aacb533JlfeUHxvBz9OfYWUiXu09sMAviM11Q0DuMZ5760CdO2VnpsXP4
KxaYIhvqPqUMWqRdWyn7crItNkZeroXaecG03i3mM7dkiPaCkgocBg0EBYsbZDZ8bsG3a08LwEsL
1Ygz3SBsyECa0waq4hOf/Z85F2w2ZpXfP+w8q4ifwO90SGZZV+HR/Jh6rEaVPDRF/CEGVqR1hiuQ
OZ1YL5ezMTX0ZSLwrymUE0pwi/KDaiYB15uswgeIAcA6JzPFf9pLkAFFWs1QNyN++niFhsM47qod
x/PL+5jR87myx5uYdBEQkkDc+lKB1Wct6ucXqm2EmsaQ0M95QjTmy+rDWjkDYdw3Ms6mSWE3Bn7i
5ZgtwCLXgAIe5W8mybM2JzCCBhQwggT8oAMCAQICEQDGvhmWZ0DEAx0oURL6O6l+MA0GCSqGSIb3
DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYD
VQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28g
UlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMB4XDTIyMDEwNzAw
MDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJARYTZHdtdzJAaW5mcmFkZWFkLm9y
ZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3GpC2bomUqk+91wLYBzDMcCj5C9m6
oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZHh7htyAkWYVoFsFPrwHounto8xTsy
SSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT9YgcBqKCo65pTFmOnR/VVbjJk4K2
xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNjP+qDrh0db7PAjO1D4d5ftfrsf+kd
RR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy2U+eITZ5LLE5s45mX2oPFknWqxBo
bQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3BgBEmfsYWlBXO8rVXfvPgLs32VdV
NZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/7auNVRmPB3v5SWEsH8xi4Bez2V9U
KxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmdlFYhAflWKQ03Ufiu8t3iBE3VJbc2
5oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9aelIl6vtbhMA+l0nfrsORMa4kobqQ5
C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMBAAGjggHMMIIByDAfBgNVHSMEGDAW
gBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeDMcimo0oz8o1R1Nver3ZVpSkwDgYD
VR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYwFAYIKwYBBQUHAwQGCCsGAQUFBwMC
MEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYBBQUHAgEWF2h0dHBzOi8vc2VjdGln
by5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9jcmwuc2VjdGlnby5jb20vU2VjdGln
b1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1haWxDQS5jcmwwgYoGCCsGAQUFBwEB
BH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdvLmNvbS9TZWN0aWdvUlNBQ2xpZW50
QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAjBggrBgEFBQcwAYYXaHR0cDovL29j
c3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5mcmFkZWFkLm9yZzANBgkqhkiG9w0B
AQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQvQ/fzPXmtR9t54rpmI2TfyvcKgOXp
qa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvIlSPrzIB4Z2wyIGQpaPLlYflrrVFK
v9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9ChWFfgSXvrWDZspnU3Gjw/rMHrGnql
Htlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0whpBtXdyDjzBtQTaZJ7zTT/vlehc/
tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9IzCCBhQwggT8oAMCAQICEQDGvhmW
Z0DEAx0oURL6O6l+MA0GCSqGSIb3DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3Jl
YXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0
ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJl
IEVtYWlsIENBMB4XDTIyMDEwNzAwMDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJ
ARYTZHdtdzJAaW5mcmFkZWFkLm9yZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3
GpC2bomUqk+91wLYBzDMcCj5C9m6oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZH
h7htyAkWYVoFsFPrwHounto8xTsySSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT
9YgcBqKCo65pTFmOnR/VVbjJk4K2xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNj
P+qDrh0db7PAjO1D4d5ftfrsf+kdRR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy
2U+eITZ5LLE5s45mX2oPFknWqxBobQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3
BgBEmfsYWlBXO8rVXfvPgLs32VdVNZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/
7auNVRmPB3v5SWEsH8xi4Bez2V9UKxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmd
lFYhAflWKQ03Ufiu8t3iBE3VJbc25oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9ae
lIl6vtbhMA+l0nfrsORMa4kobqQ5C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMB
AAGjggHMMIIByDAfBgNVHSMEGDAWgBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeD
Mcimo0oz8o1R1Nver3ZVpSkwDgYDVR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYw
FAYIKwYBBQUHAwQGCCsGAQUFBwMCMEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYB
BQUHAgEWF2h0dHBzOi8vc2VjdGlnby5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9j
cmwuc2VjdGlnby5jb20vU2VjdGlnb1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1h
aWxDQS5jcmwwgYoGCCsGAQUFBwEBBH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdv
LmNvbS9TZWN0aWdvUlNBQ2xpZW50QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAj
BggrBgEFBQcwAYYXaHR0cDovL29jc3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5m
cmFkZWFkLm9yZzANBgkqhkiG9w0BAQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQv
Q/fzPXmtR9t54rpmI2TfyvcKgOXpqa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvI
lSPrzIB4Z2wyIGQpaPLlYflrrVFKv9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9Ch
WFfgSXvrWDZspnU3Gjw/rMHrGnqlHtlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0w
hpBtXdyDjzBtQTaZJ7zTT/vlehc/tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9
IzGCBMcwggTDAgEBMIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVz
dGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMT
NVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEA
xr4ZlmdAxAMdKFES+jupfjANBglghkgBZQMEAgEFAKCCAeswGAYJKoZIhvcNAQkDMQsGCSqGSIb3
DQEHATAcBgkqhkiG9w0BCQUxDxcNMjMxMDEyMTM1MzA1WjAvBgkqhkiG9w0BCQQxIgQgW5uc5IJb
EPdxRgNcp1eTi5kGvLzRnKMBfgc0eo/td/gwgb0GCSsGAQQBgjcQBDGBrzCBrDCBljELMAkGA1UE
BhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEYMBYG
A1UEChMPU2VjdGlnbyBMaW1pdGVkMT4wPAYDVQQDEzVTZWN0aWdvIFJTQSBDbGllbnQgQXV0aGVu
dGljYXRpb24gYW5kIFNlY3VyZSBFbWFpbCBDQQIRAMa+GZZnQMQDHShREvo7qX4wgb8GCyqGSIb3
DQEJEAILMYGvoIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVy
MRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNl
Y3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEAxr4Z
lmdAxAMdKFES+jupfjANBgkqhkiG9w0BAQEFAASCAgArorcPaAMrHiU3s+6gmNh1a4j9uYn2lscJ
jp/NY26zHwg5B3TirmaqSoNfaAjIju+xwFH+sMU7Q34CDlHyNmQZxyC95viWugNjkl2Uyy+DyzIn
77TH1d6OXQla4IqKbBE6rS9ZXGC/Dqw/gwe7czmgbBVwhmdBI1SxCK9zmuwm+6BIjiH1Q5ZvXVgL
VbT0I8ll+EXce4tol4KpIepk0GyPeYYLWrXAZkNMUjfZGhvXAyTV+vDL5NJOHgv0z1oUtjs5p60h
JS2a0fUwUAT3x1inykJsDE5YIbQAp42yu7mYlyIyBlhDV20CkjCAxNDznSITSf10oReU1Edz6jYq
2PtpQD7DyPWd6Ohv2leWc/Zek/tPTzAjHw26n5r/77CMRE1Qv8lGgxirMT7yQX8doQW9BFOcwahy
mJhWmenhfv/jiL4jZnLZDg0528Zhr0tF3hj1/QzNvKtdJL25+Ig/FOS+vVx6eL+9qhOKm0GYjXbN
UYIlZgXZjnpyFflaVRIRiLsAAoGaNaVbDDOsxFDam4gaN1eVIA9nlPtHvvTqFkJM0v+Er8yrPi5o
XhoH+K2iQ69XPnPLuRhbRVoe4K2DxGcGikP7Bpe/F2ddlJqIx/+KoA8umPuXLUxp1f6xVRwKXnGo
I/cNo9J1biBVw8aAZ3XBglakENjEMIxcZ1G0Qq9yuAAAAAAAAA==


--=-a3KmwuGX4I14b0YbaVNl--


From xen-devel-bounces@lists.xenproject.org Thu Oct 12 14:05:18 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 14:05:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615803.957236 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqwJL-0002Ma-DY; Thu, 12 Oct 2023 14:05:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615803.957236; Thu, 12 Oct 2023 14:05: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 1qqwJL-0002MT-Ay; Thu, 12 Oct 2023 14:05:11 +0000
Received: by outflank-mailman (input) for mailman id 615803;
 Thu, 12 Oct 2023 14:05: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=VOhV=F2=infradead.org=willy@srs-se1.protection.inumbo.net>)
 id 1qqwJK-0002Ks-Cn
 for xen-devel@lists.xenproject.org; Thu, 12 Oct 2023 14:05:10 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 5a26a0e8-6908-11ee-98d4-6d05b1d4d9a1;
 Thu, 12 Oct 2023 16:05:09 +0200 (CEST)
Received: from willy by casper.infradead.org with local (Exim 4.94.2 #2 (Red
 Hat Linux)) id 1qqwJA-00HHti-AI; Thu, 12 Oct 2023 14:05: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: 5a26a0e8-6908-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=In-Reply-To:Content-Transfer-Encoding:
	Content-Type:MIME-Version:References:Message-ID:Subject:Cc:To:From:Date:
	Sender:Reply-To:Content-ID:Content-Description;
	bh=ZBo794QmPX3OSdLUZmZOt9sFww07PNz5cEeadQ3oMTs=; b=JnYKQQ0WWPVh7MTBsIeRXAwbLL
	3Mwulrlk764uN7k72IIbGXPlnVNdxd3DuP4FTtyqiQnYS/iJYcdNTemsLwfEgOqlceI9dvtMMyEHs
	tfsBcDwsfLzDTytRS+2uDlOzsYKG5vky7nyWiDPxhzrcUkNDlNEsbpRfSRlD91Ay1avH0/H8No0jf
	H6IApE3ZYsLteuzasQpZf0ILGJ8UT1mtlrE1sUqLngnW6ErDWU11lQn0s0bwMhqjlgdDLhALloRuP
	FdW1bavmsQroJdnauzfu0g4F4zr+DwIUpGvdzdq6oMChW9V6z73MZ7kHeFDwH58leQykL0PKBuaHJ
	SyuSi4IQ==;
Date: Thu, 12 Oct 2023 15:05:00 +0100
From: Matthew Wilcox <willy@infradead.org>
To: David Woodhouse <dwmw2@infradead.org>
Cc: Andrew Morton <akpm@linux-foundation.org>, linux-arch@vger.kernel.org,
	linux-mm@kvack.org, linux-kernel@vger.kernel.org,
	Mike Rapoport <rppt@kernel.org>,
	xen-devel <xen-devel@lists.xenproject.org>
Subject: Re: [PATCH v6 06/38] mm: Add default definition of set_ptes()
Message-ID: <ZSf9DNSvgbT9DLmk@casper.infradead.org>
References: <20230802151406.3735276-1-willy@infradead.org>
 <20230802151406.3735276-7-willy@infradead.org>
 <4c63ee3634ccfed7d687fcbdd9db60663bce481f.camel@infradead.org>
MIME-Version: 1.0
Content-Type: text/plain; charset=iso-8859-1
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <4c63ee3634ccfed7d687fcbdd9db60663bce481f.camel@infradead.org>

On Thu, Oct 12, 2023 at 02:53:05PM +0100, David Woodhouse wrote:
> > +arch_enter_lazy_mmu_mode();
> > +for (;;) {
> > +set_pte(ptep, pte);
> > +if (--nr == 0)
> > +break;
> > +ptep++;
> > +pte = __pte(pte_val(pte) + (1UL << PFN_PTE_SHIFT));
> > +}
> > +arch_leave_lazy_mmu_mode();
> 
> This breaks the Xen PV guest.
> 
> In move_ptes() in mm/mremap.c we arch_enter_lazy_mmu_mode() and then
> loop calling set_pte_at(). Which now (or at least in a few commits time
> when you wire it up for x86 in commit a3e1c9372c9b959) ends up in your
> implementation of set_ptes(), calls arch_enter_lazy_mmu_mode() again,
> and:
> 
> [    0.628700] ------------[ cut here ]------------
> [    0.628718] kernel BUG at arch/x86/kernel/paravirt.c:144!

Easy fix ... don't do that ;-)

diff --git a/include/linux/pgtable.h b/include/linux/pgtable.h
index af7639c3b0a3..f3da8836f689 100644
--- a/include/linux/pgtable.h
+++ b/include/linux/pgtable.h
@@ -231,9 +231,11 @@ static inline pte_t pte_next_pfn(pte_t pte)
 static inline void set_ptes(struct mm_struct *mm, unsigned long addr,
 		pte_t *ptep, pte_t pte, unsigned int nr)
 {
+	bool multiple = nr > 1;
 	page_table_check_ptes_set(mm, ptep, pte, nr);
 
-	arch_enter_lazy_mmu_mode();
+	if (multiple)
+		arch_enter_lazy_mmu_mode();
 	for (;;) {
 		set_pte(ptep, pte);
 		if (--nr == 0)
@@ -241,7 +243,8 @@ static inline void set_ptes(struct mm_struct *mm, unsigned long addr,
 		ptep++;
 		pte = pte_next_pfn(pte);
 	}
-	arch_leave_lazy_mmu_mode();
+	if (multiple)
+		arch_leave_lazy_mmu_mode();
 }
 #endif
 #define set_pte_at(mm, addr, ptep, pte) set_ptes(mm, addr, ptep, pte, 1)

I think long-term, we should make lazy_mmu_mode nestable.  But this is
a reasonable quick fix.


From xen-devel-bounces@lists.xenproject.org Thu Oct 12 14:06:16 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 14:06:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615808.957246 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqwKN-0002yQ-NY; Thu, 12 Oct 2023 14:06:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615808.957246; Thu, 12 Oct 2023 14:06: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 1qqwKN-0002yJ-Kr; Thu, 12 Oct 2023 14:06:15 +0000
Received: by outflank-mailman (input) for mailman id 615808;
 Thu, 12 Oct 2023 14:06: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 1qqwKM-0002y2-Fp; Thu, 12 Oct 2023 14:06: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 1qqwKM-00081W-B3; Thu, 12 Oct 2023 14:06: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 1qqwKL-0003pB-Vo; Thu, 12 Oct 2023 14:06:14 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qqwKL-0003pd-VN; Thu, 12 Oct 2023 14:06: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=CzZNdyiyXtqWP6AI3i1+lPBGEIHMGLGyo4PPWw+ScZo=; b=Lo8sW6zu0OU8ZHCASBKjz24fdT
	vUeIEEXTsPEIb3LBMNKm98PLDoQ972hrPy4ACx+weyL40Bnp9vQTw6tVFTogscx+TyhFnbtYpzoL5
	TPyVhr35qf3eqZBvGUJollU37tOQJoBBjfzIxdHa2Mo+dEzsGAtSyfC5yz4kV93Rv1OU=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183347-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 183347: tolerable trouble: fail/pass/starved - PUSHED
X-Osstest-Failures:
    xen-unstable:test-amd64-amd64-migrupgrade:debian-fixup/dst_host:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl:xen-boot: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:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl: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-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-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-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-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check: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-amd64-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-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-arndale:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-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-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-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
    xen-unstable:test-arm64-arm64-libvirt-raw:hosts-allocate:starved:nonblocking
    xen-unstable:test-arm64-arm64-xl:hosts-allocate:starved:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:hosts-allocate:starved:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:hosts-allocate:starved:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:hosts-allocate:starved:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:hosts-allocate:starved:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:hosts-allocate:starved:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:hosts-allocate:starved:nonblocking
X-Osstest-Versions-This:
    xen=dc9d9aa62ddeb14abd5672690d30789829f58f7e
X-Osstest-Versions-That:
    xen=9713423a06225bcf0f22cab15e8d04870200af7a
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 12 Oct 2023 14:06:13 +0000

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

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-amd64-amd64-migrupgrade 21 debian-fixup/dst_host fail pass in 183358-retest
 test-armhf-armhf-xl           8 xen-boot            fail pass in 183358-retest
 test-amd64-amd64-xl-qemuu-win7-amd64 12 windows-install fail pass in 183358-retest

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop  fail in 183358 like 183337
 test-armhf-armhf-xl         15 migrate-support-check fail in 183358 never pass
 test-armhf-armhf-xl     16 saverestore-support-check fail in 183358 never pass
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183337
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183337
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 183337
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183337
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183337
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183337
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 183337
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183337
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183337
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 183337
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 183337
 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-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-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-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-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-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-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-arm64-arm64-libvirt-raw  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-xsm       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-credit1   3 hosts-allocate               starved  n/a
 test-arm64-arm64-libvirt-xsm  3 hosts-allocate               starved  n/a

version targeted for testing:
 xen                  dc9d9aa62ddeb14abd5672690d30789829f58f7e
baseline version:
 xen                  9713423a06225bcf0f22cab15e8d04870200af7a

Last test of basis   183337  2023-10-11 02:32:27 Z    1 days
Testing same since   183347  2023-10-11 20:08:43 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Alejandro Vallejo <alejandro.vallejo@cloud.com>
  Andrew Cooper <andrew.cooper3@citrix.com>
  Jan Beulich <jbeulich@suse.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                                          starved 
 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                                 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-examine-bios                                pass    
 test-amd64-i386-examine-bios                                 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-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                                 fail    
 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-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
   9713423a06..dc9d9aa62d  dc9d9aa62ddeb14abd5672690d30789829f58f7e -> master


From xen-devel-bounces@lists.xenproject.org Thu Oct 12 14:44:23 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 14:44:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615832.957312 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqwv3-0000r9-EB; Thu, 12 Oct 2023 14:44:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615832.957312; Thu, 12 Oct 2023 14:44: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 1qqwv3-0000r2-Ax; Thu, 12 Oct 2023 14:44:09 +0000
Received: by outflank-mailman (input) for mailman id 615832;
 Thu, 12 Oct 2023 14:44: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=ZdDw=F2=casper.srs.infradead.org=BATV+4118f3c7cdc1feb80d69+7354+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qqwv1-0000qw-Mp
 for xen-devel@lists.xenproject.org; Thu, 12 Oct 2023 14:44:08 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id cb34eb7c-690d-11ee-98d4-6d05b1d4d9a1;
 Thu, 12 Oct 2023 16:44:06 +0200 (CEST)
Received: from [2001:8b0:10b:5:8fd2:9e3e:cd2f:735f]
 (helo=u3832b3a9db3152.ant.amazon.com)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qqwup-00HSUF-4K; Thu, 12 Oct 2023 14:43: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: cb34eb7c-690d-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=MIME-Version:Content-Type:References:
	In-Reply-To:Date:Cc:To:From:Subject:Message-ID:Sender:Reply-To:
	Content-Transfer-Encoding:Content-ID:Content-Description;
	bh=RCGoc6KqqltWggrW6SimibQ1DlxSv60q2tDrHJshffs=; b=VFVXm/pyFJYQilsOh0YcsxiAt/
	r97iKwxOKRNHJSoTDO1oXS7d2c3szm6gkkM8nvCv2HqXjywypDixbBPTCPX44hX62u8S/Mpxs5onF
	yjqwX5p7ugpU+iOO3WruLl3EwWtz4kjI1N4hQWBxcH95cCGySPVeANsHEcS6mjTDiY315UWgwFqhb
	FvhoV+Sdu8pSaCBe23tBOqRzG+0luoEHzww4Ck4t3QANgkXcpyJOlq2IH9Cc+9VHbPKmTPLOwxBST
	uxDbsc5S175i5R4/ZMXMQFm+xHPbB17emnkd5pIHulnEJnoJ7pNh1GQjYohTMzcZJGiUKUt+aLgwc
	Rjr3tNEQ==;
Message-ID: <bb0e7a9f016f22993303dd10c2c92a6ef3c7ebf6.camel@infradead.org>
Subject: Re: [PATCH v6 06/38] mm: Add default definition of set_ptes()
From: David Woodhouse <dwmw2@infradead.org>
To: Matthew Wilcox <willy@infradead.org>
Cc: Andrew Morton <akpm@linux-foundation.org>, linux-arch@vger.kernel.org, 
 linux-mm@kvack.org, linux-kernel@vger.kernel.org, Mike Rapoport
 <rppt@kernel.org>,  xen-devel <xen-devel@lists.xenproject.org>
Date: Thu, 12 Oct 2023 15:43:54 +0100
In-Reply-To: <ZSf9DNSvgbT9DLmk@casper.infradead.org>
References: <20230802151406.3735276-1-willy@infradead.org>
	 <20230802151406.3735276-7-willy@infradead.org>
	 <4c63ee3634ccfed7d687fcbdd9db60663bce481f.camel@infradead.org>
	 <ZSf9DNSvgbT9DLmk@casper.infradead.org>
Content-Type: multipart/signed; micalg="sha-256"; protocol="application/pkcs7-signature";
	boundary="=-BEEc0mgIHGyqyvDjEr79"
User-Agent: Evolution 3.44.4-0ubuntu2 
MIME-Version: 1.0
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html


--=-BEEc0mgIHGyqyvDjEr79
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: base64

T24gVGh1LCAyMDIzLTEwLTEyIGF0IDE1OjA1ICswMTAwLCBNYXR0aGV3IFdpbGNveCB3cm90ZToK
PiBPbiBUaHUsIE9jdCAxMiwgMjAyMyBhdCAwMjo1MzowNVBNICswMTAwLCBEYXZpZCBXb29kaG91
c2Ugd3JvdGU6Cj4gPiA+ICvCoMKgwqDCoMKgwqDCoGFyY2hfZW50ZXJfbGF6eV9tbXVfbW9kZSgp
Owo+ID4gPiArwqDCoMKgwqDCoMKgwqBmb3IgKDs7KSB7Cj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoMKgwqBzZXRfcHRlKHB0ZXAsIHB0ZSk7Cj4gPiA+ICvCoMKgwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoMKgwqBpZiAoLS1uciA9PSAwKQo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoGJyZWFrOwo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoMKgcHRlcCsrOwo+ID4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg
cHRlID0gX19wdGUocHRlX3ZhbChwdGUpICsgKDFVTCA8PCBQRk5fUFRFX1NISUZUKSk7Cj4gPiA+
ICvCoMKgwqDCoMKgwqDCoH0KPiA+ID4gK8KgwqDCoMKgwqDCoMKgYXJjaF9sZWF2ZV9sYXp5X21t
dV9tb2RlKCk7Cj4gPiAKPiA+IFRoaXMgYnJlYWtzIHRoZSBYZW4gUFYgZ3Vlc3QuCj4gPiAKPiA+
IEluIG1vdmVfcHRlcygpIGluIG1tL21yZW1hcC5jIHdlIGFyY2hfZW50ZXJfbGF6eV9tbXVfbW9k
ZSgpIGFuZCB0aGVuCj4gPiBsb29wIGNhbGxpbmcgc2V0X3B0ZV9hdCgpLiBXaGljaCBub3cgKG9y
IGF0IGxlYXN0IGluIGEgZmV3IGNvbW1pdHMgdGltZQo+ID4gd2hlbiB5b3Ugd2lyZSBpdCB1cCBm
b3IgeDg2IGluIGNvbW1pdCBhM2UxYzkzNzJjOWI5NTkpIGVuZHMgdXAgaW4geW91cgo+ID4gaW1w
bGVtZW50YXRpb24gb2Ygc2V0X3B0ZXMoKSwgY2FsbHMgYXJjaF9lbnRlcl9sYXp5X21tdV9tb2Rl
KCkgYWdhaW4sCj4gPiBhbmQ6Cj4gPiAKPiA+IFvCoMKgwqAgMC42Mjg3MDBdIC0tLS0tLS0tLS0t
LVsgY3V0IGhlcmUgXS0tLS0tLS0tLS0tLQo+ID4gW8KgwqDCoCAwLjYyODcxOF0ga2VybmVsIEJV
RyBhdCBhcmNoL3g4Ni9rZXJuZWwvcGFyYXZpcnQuYzoxNDQhCj4gCj4gRWFzeSBmaXggLi4uIGRv
bid0IGRvIHRoYXQgOy0pCj4gCj4gZGlmZiAtLWdpdCBhL2luY2x1ZGUvbGludXgvcGd0YWJsZS5o
IGIvaW5jbHVkZS9saW51eC9wZ3RhYmxlLmgKPiBpbmRleCBhZjc2MzljM2IwYTMuLmYzZGE4ODM2
ZjY4OSAxMDA2NDQKPiAtLS0gYS9pbmNsdWRlL2xpbnV4L3BndGFibGUuaAo+ICsrKyBiL2luY2x1
ZGUvbGludXgvcGd0YWJsZS5oCj4gQEAgLTIzMSw5ICsyMzEsMTEgQEAgc3RhdGljIGlubGluZSBw
dGVfdCBwdGVfbmV4dF9wZm4ocHRlX3QgcHRlKQo+IMKgc3RhdGljIGlubGluZSB2b2lkIHNldF9w
dGVzKHN0cnVjdCBtbV9zdHJ1Y3QgKm1tLCB1bnNpZ25lZCBsb25nIGFkZHIsCj4gwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqBwdGVfdCAqcHRlcCwgcHRlX3QgcHRlLCB1bnNpZ25lZCBp
bnQgbnIpCj4gwqB7Cj4gK8KgwqDCoMKgwqDCoMKgYm9vbCBtdWx0aXBsZSA9IG5yID4gMTsKPiDC
oMKgwqDCoMKgwqDCoMKgcGFnZV90YWJsZV9jaGVja19wdGVzX3NldChtbSwgcHRlcCwgcHRlLCBu
cik7Cj4gwqAKPiAtwqDCoMKgwqDCoMKgwqBhcmNoX2VudGVyX2xhenlfbW11X21vZGUoKTsKPiAr
wqDCoMKgwqDCoMKgwqBpZiAobXVsdGlwbGUpCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg
wqDCoGFyY2hfZW50ZXJfbGF6eV9tbXVfbW9kZSgpOwo+IMKgwqDCoMKgwqDCoMKgwqBmb3IgKDs7
KSB7Cj4gwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqBzZXRfcHRlKHB0ZXAsIHB0ZSk7
Cj4gwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqBpZiAoLS1uciA9PSAwKQo+IEBAIC0y
NDEsNyArMjQzLDggQEAgc3RhdGljIGlubGluZSB2b2lkIHNldF9wdGVzKHN0cnVjdCBtbV9zdHJ1
Y3QgKm1tLCB1bnNpZ25lZCBsb25nIGFkZHIsCj4gwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqBwdGVwKys7Cj4gwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqBwdGUgPSBwdGVf
bmV4dF9wZm4ocHRlKTsKPiDCoMKgwqDCoMKgwqDCoMKgfQo+IC3CoMKgwqDCoMKgwqDCoGFyY2hf
bGVhdmVfbGF6eV9tbXVfbW9kZSgpOwo+ICvCoMKgwqDCoMKgwqDCoGlmIChtdWx0aXBsZSkKPiAr
wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgYXJjaF9sZWF2ZV9sYXp5X21tdV9tb2RlKCk7
Cj4gwqB9Cj4gwqAjZW5kaWYKPiDCoCNkZWZpbmUgc2V0X3B0ZV9hdChtbSwgYWRkciwgcHRlcCwg
cHRlKSBzZXRfcHRlcyhtbSwgYWRkciwgcHRlcCwgcHRlLCAxKQo+IAo+IEkgdGhpbmsgbG9uZy10
ZXJtLCB3ZSBzaG91bGQgbWFrZSBsYXp5X21tdV9tb2RlIG5lc3RhYmxlLsKgIEJ1dCB0aGlzIGlz
Cj4gYSByZWFzb25hYmxlIHF1aWNrIGZpeC4KCkkgZG9uJ3QgbXVjaCBsaWtlIGRvaW5nIGl0IGlt
cGxpY2l0bHkgYmFzZWQgb24gKG5yPT0xKSBidXQgc3VyZSwgYXMgYQpxdWljayBmaXggdGhhdCB3
b3Jrcy4gVGhlIDY0LWJpdCBQViBndWVzdCBub3cgYm9vdHMgYWdhaW4uCgpUZXN0ZWQtYnk6IERh
dmlkIFdvb2Rob3VzZSA8ZHdtd0BhbWF6b24uY28udWs+CgpUaGFua3MuCg==


--=-BEEc0mgIHGyqyvDjEr79
Content-Type: application/pkcs7-signature; name="smime.p7s"
Content-Disposition: attachment; filename="smime.p7s"
Content-Transfer-Encoding: base64

MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgEFADCABgkqhkiG9w0BBwEAAKCCEkQw
ggYQMIID+KADAgECAhBNlCwQ1DvglAnFgS06KwZPMA0GCSqGSIb3DQEBDAUAMIGIMQswCQYDVQQG
EwJVUzETMBEGA1UECBMKTmV3IEplcnNleTEUMBIGA1UEBxMLSmVyc2V5IENpdHkxHjAcBgNVBAoT
FVRoZSBVU0VSVFJVU1QgTmV0d29yazEuMCwGA1UEAxMlVVNFUlRydXN0IFJTQSBDZXJ0aWZpY2F0
aW9uIEF1dGhvcml0eTAeFw0xODExMDIwMDAwMDBaFw0zMDEyMzEyMzU5NTlaMIGWMQswCQYDVQQG
EwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYD
VQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50
aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC
AQEAyjztlApB/975Rrno1jvm2pK/KxBOqhq8gr2+JhwpKirSzZxQgT9tlC7zl6hn1fXjSo5MqXUf
ItMltrMaXqcESJuK8dtK56NCSrq4iDKaKq9NxOXFmqXX2zN8HHGjQ2b2Xv0v1L5Nk1MQPKA19xeW
QcpGEGFUUd0kN+oHox+L9aV1rjfNiCj3bJk6kJaOPabPi2503nn/ITX5e8WfPnGw4VuZ79Khj1YB
rf24k5Ee1sLTHsLtpiK9OjG4iQRBdq6Z/TlVx/hGAez5h36bBJMxqdHLpdwIUkTqT8se3ed0PewD
ch/8kHPo5fZl5u1B0ecpq/sDN/5sCG52Ds+QU5O5EwIDAQABo4IBZDCCAWAwHwYDVR0jBBgwFoAU
U3m/WqorSs9UgOHYm8Cd8rIDZsswHQYDVR0OBBYEFAnA8vwL2pTbX/4r36iZQs/J4K0AMA4GA1Ud
DwEB/wQEAwIBhjASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEF
BQcDBDARBgNVHSAECjAIMAYGBFUdIAAwUAYDVR0fBEkwRzBFoEOgQYY/aHR0cDovL2NybC51c2Vy
dHJ1c3QuY29tL1VTRVJUcnVzdFJTQUNlcnRpZmljYXRpb25BdXRob3JpdHkuY3JsMHYGCCsGAQUF
BwEBBGowaDA/BggrBgEFBQcwAoYzaHR0cDovL2NydC51c2VydHJ1c3QuY29tL1VTRVJUcnVzdFJT
QUFkZFRydXN0Q0EuY3J0MCUGCCsGAQUFBzABhhlodHRwOi8vb2NzcC51c2VydHJ1c3QuY29tMA0G
CSqGSIb3DQEBDAUAA4ICAQBBRHUAqznCFfXejpVtMnFojADdF9d6HBA4kMjjsb0XMZHztuOCtKF+
xswhh2GqkW5JQrM8zVlU+A2VP72Ky2nlRA1GwmIPgou74TZ/XTarHG8zdMSgaDrkVYzz1g3nIVO9
IHk96VwsacIvBF8JfqIs+8aWH2PfSUrNxP6Ys7U0sZYx4rXD6+cqFq/ZW5BUfClN/rhk2ddQXyn7
kkmka2RQb9d90nmNHdgKrwfQ49mQ2hWQNDkJJIXwKjYA6VUR/fZUFeCUisdDe/0ABLTI+jheXUV1
eoYV7lNwNBKpeHdNuO6Aacb533JlfeUHxvBz9OfYWUiXu09sMAviM11Q0DuMZ5760CdO2VnpsXP4
KxaYIhvqPqUMWqRdWyn7crItNkZeroXaecG03i3mM7dkiPaCkgocBg0EBYsbZDZ8bsG3a08LwEsL
1Ygz3SBsyECa0waq4hOf/Z85F2w2ZpXfP+w8q4ifwO90SGZZV+HR/Jh6rEaVPDRF/CEGVqR1hiuQ
OZ1YL5ezMTX0ZSLwrymUE0pwi/KDaiYB15uswgeIAcA6JzPFf9pLkAFFWs1QNyN++niFhsM47qod
x/PL+5jR87myx5uYdBEQkkDc+lKB1Wct6ucXqm2EmsaQ0M95QjTmy+rDWjkDYdw3Ms6mSWE3Bn7i
5ZgtwCLXgAIe5W8mybM2JzCCBhQwggT8oAMCAQICEQDGvhmWZ0DEAx0oURL6O6l+MA0GCSqGSIb3
DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYD
VQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28g
UlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMB4XDTIyMDEwNzAw
MDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJARYTZHdtdzJAaW5mcmFkZWFkLm9y
ZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3GpC2bomUqk+91wLYBzDMcCj5C9m6
oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZHh7htyAkWYVoFsFPrwHounto8xTsy
SSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT9YgcBqKCo65pTFmOnR/VVbjJk4K2
xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNjP+qDrh0db7PAjO1D4d5ftfrsf+kd
RR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy2U+eITZ5LLE5s45mX2oPFknWqxBo
bQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3BgBEmfsYWlBXO8rVXfvPgLs32VdV
NZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/7auNVRmPB3v5SWEsH8xi4Bez2V9U
KxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmdlFYhAflWKQ03Ufiu8t3iBE3VJbc2
5oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9aelIl6vtbhMA+l0nfrsORMa4kobqQ5
C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMBAAGjggHMMIIByDAfBgNVHSMEGDAW
gBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeDMcimo0oz8o1R1Nver3ZVpSkwDgYD
VR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYwFAYIKwYBBQUHAwQGCCsGAQUFBwMC
MEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYBBQUHAgEWF2h0dHBzOi8vc2VjdGln
by5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9jcmwuc2VjdGlnby5jb20vU2VjdGln
b1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1haWxDQS5jcmwwgYoGCCsGAQUFBwEB
BH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdvLmNvbS9TZWN0aWdvUlNBQ2xpZW50
QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAjBggrBgEFBQcwAYYXaHR0cDovL29j
c3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5mcmFkZWFkLm9yZzANBgkqhkiG9w0B
AQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQvQ/fzPXmtR9t54rpmI2TfyvcKgOXp
qa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvIlSPrzIB4Z2wyIGQpaPLlYflrrVFK
v9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9ChWFfgSXvrWDZspnU3Gjw/rMHrGnql
Htlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0whpBtXdyDjzBtQTaZJ7zTT/vlehc/
tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9IzCCBhQwggT8oAMCAQICEQDGvhmW
Z0DEAx0oURL6O6l+MA0GCSqGSIb3DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3Jl
YXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0
ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJl
IEVtYWlsIENBMB4XDTIyMDEwNzAwMDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJ
ARYTZHdtdzJAaW5mcmFkZWFkLm9yZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3
GpC2bomUqk+91wLYBzDMcCj5C9m6oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZH
h7htyAkWYVoFsFPrwHounto8xTsySSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT
9YgcBqKCo65pTFmOnR/VVbjJk4K2xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNj
P+qDrh0db7PAjO1D4d5ftfrsf+kdRR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy
2U+eITZ5LLE5s45mX2oPFknWqxBobQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3
BgBEmfsYWlBXO8rVXfvPgLs32VdVNZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/
7auNVRmPB3v5SWEsH8xi4Bez2V9UKxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmd
lFYhAflWKQ03Ufiu8t3iBE3VJbc25oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9ae
lIl6vtbhMA+l0nfrsORMa4kobqQ5C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMB
AAGjggHMMIIByDAfBgNVHSMEGDAWgBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeD
Mcimo0oz8o1R1Nver3ZVpSkwDgYDVR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYw
FAYIKwYBBQUHAwQGCCsGAQUFBwMCMEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYB
BQUHAgEWF2h0dHBzOi8vc2VjdGlnby5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9j
cmwuc2VjdGlnby5jb20vU2VjdGlnb1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1h
aWxDQS5jcmwwgYoGCCsGAQUFBwEBBH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdv
LmNvbS9TZWN0aWdvUlNBQ2xpZW50QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAj
BggrBgEFBQcwAYYXaHR0cDovL29jc3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5m
cmFkZWFkLm9yZzANBgkqhkiG9w0BAQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQv
Q/fzPXmtR9t54rpmI2TfyvcKgOXpqa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvI
lSPrzIB4Z2wyIGQpaPLlYflrrVFKv9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9Ch
WFfgSXvrWDZspnU3Gjw/rMHrGnqlHtlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0w
hpBtXdyDjzBtQTaZJ7zTT/vlehc/tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9
IzGCBMcwggTDAgEBMIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVz
dGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMT
NVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEA
xr4ZlmdAxAMdKFES+jupfjANBglghkgBZQMEAgEFAKCCAeswGAYJKoZIhvcNAQkDMQsGCSqGSIb3
DQEHATAcBgkqhkiG9w0BCQUxDxcNMjMxMDEyMTQ0MzU0WjAvBgkqhkiG9w0BCQQxIgQgwua/EWmV
rsYuj5rGngR0/cZGHI3bnLJ5uRrlV5SPiuUwgb0GCSsGAQQBgjcQBDGBrzCBrDCBljELMAkGA1UE
BhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEYMBYG
A1UEChMPU2VjdGlnbyBMaW1pdGVkMT4wPAYDVQQDEzVTZWN0aWdvIFJTQSBDbGllbnQgQXV0aGVu
dGljYXRpb24gYW5kIFNlY3VyZSBFbWFpbCBDQQIRAMa+GZZnQMQDHShREvo7qX4wgb8GCyqGSIb3
DQEJEAILMYGvoIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVy
MRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNl
Y3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEAxr4Z
lmdAxAMdKFES+jupfjANBgkqhkiG9w0BAQEFAASCAgB95JMRvLcnOmCbO/ex5isAkO8+7Ebesu93
WDjcsUU7KhAz4BWHSFIBVc1usncnIn468Pl4E39jx7e8SdnXUMuU+iYDMrBpegAo+eXa+nOzIXYu
P92eiUgXSQakuCE9qUmiX8su55GQGnpWXxKKwzINiKLmxyD2EoW3S+yJjD1n4PTIqNwDAxJ7dGNz
sfEERUumVa371bNXdvUL3vjfYWJ6DQvDsfHHGwfrQEBZE332gYdyfN1rZC/kEr/9vzoJn6T/L5LL
uTNUoRt4DRkG6YY6UAEDC+sTpEl+u+pbgVzaXuF+qHARh91bNVRV6DjxU9VLtf8GDjwgvjbuDVku
eWoIExSNfNf9PCLRm2sWxBIkvZqmY9aNzxspZiX5cMsyyX7X3ZYVk+ObjhRpQq1dq22AZULmVoiK
LzlgqdGXvPIoMXAzdPg2O2nkrHa9+z/ynaIseo4fWa+v0suSdlimNHvZfhPrWfVmraSVywCE7l8N
PgHUB9GmSIRN9QOBAtm6QYk1/v8bB4/zm9p9OXL9UUT/GbF+loyQwfzEZwFkCJty8esgVLvPDjEB
doosxaYOvMjoqSfarf6UxJv1bgJpc0xMWPPbGqYU8uaChIUTsVNfoT4dW6zs/yQ5ThPEa1TOEnNg
Qc1eCLanpdPhnGsDt+zgbUU7pR8CwiuaaS9PhK2GpwAAAAAAAA==


--=-BEEc0mgIHGyqyvDjEr79--


From xen-devel-bounces@lists.xenproject.org Thu Oct 12 15:29:07 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 15:29:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615838.957323 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqxcT-0006QV-OP; Thu, 12 Oct 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 615838.957323; Thu, 12 Oct 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 1qqxcT-0006QO-LN; Thu, 12 Oct 2023 15:29:01 +0000
Received: by outflank-mailman (input) for mailman id 615838;
 Thu, 12 Oct 2023 15:29: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=oWZW=F2=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qqxcS-0006QC-Hf
 for xen-devel@lists.xenproject.org; Thu, 12 Oct 2023 15:29:00 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 0fb19b70-6914-11ee-9b0e-b553b5be7939;
 Thu, 12 Oct 2023 17:28:58 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id 8C4EB4EE0739;
 Thu, 12 Oct 2023 17:28: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: 0fb19b70-6914-11ee-9b0e-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>,
	Simone Ballarin <simone.ballarin@bugseng.com>,
	Doug Goldstein <cardoe@cardoe.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>,
	Paul Durrant <paul@xen.org>
Subject: [XEN PATCH v2 0/8] address violations of MISRA C:2012 Rule 10.1
Date: Thu, 12 Oct 2023 17:28:44 +0200
Message-Id: <cover.1697123806.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The widely-used construct
(x & -x), where x is an unsigned integer quantity represented in 2's complement,
does yield the expected result. Since all architectures that are targets for
compliance do fulfill such requirements, the construct is deemed safe and
deviated.

The use of 'DECLARE_BITMAP(features, IOMMU_FEAT_count);' is deviated, to avoid
harming code readability.

On the contrary, other uses of inappropriate types are changed.

Changes in v2:
- the patch 'x86/cpu-policy' has been dropped, in favour of the patch submitted
  by Andrew Cooper.

Nicola Vetrini (8):
  xen/include: add macro LOWEST_BIT
  arm/bitops: encapsulate violation of MISRA C:2012 Rule 10.1
  xen/pdx: amend definition of PDX_GROUP_COUNT
  x86_64/mm: express macro CNT using LOWEST_BIT
  x86/io_apic: address violation of MISRA C:2012 Rule 10.1
  x86/mce: Move MC_NCLASSES into the enum mctelem_class
  xen/types: address Rule 10.1 for DECLARE_BITMAP use
  xen/compat: use BUILD_BUG_ON in CHECK_SIZE macros

 .../eclair_analysis/ECLAIR/deviations.ecl      |  6 ++++++
 docs/misra/safe.json                           |  8 ++++++++
 xen/arch/arm/include/asm/bitops.h              |  6 ++++--
 xen/arch/x86/cpu/mcheck/mctelem.c              |  2 --
 xen/arch/x86/cpu/mcheck/mctelem.h              |  5 +++--
 xen/arch/x86/include/asm/io_apic.h             |  7 ++++---
 xen/arch/x86/x86_64/mm.c                       | 12 ++++++------
 xen/include/xen/compat.h                       | 18 +++++++++++++-----
 xen/include/xen/iommu.h                        |  1 +
 xen/include/xen/macros.h                       |  6 ++++--
 xen/include/xen/pdx.h                          |  2 +-
 xen/include/xen/types.h                        |  8 ++++++++
 12 files changed, 58 insertions(+), 23 deletions(-)

--
2.34.1


From xen-devel-bounces@lists.xenproject.org Thu Oct 12 15:29:07 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 15:29:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615843.957370 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqxcY-0007Yh-9l; Thu, 12 Oct 2023 15:29:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615843.957370; Thu, 12 Oct 2023 15:29: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 1qqxcY-0007Xp-4a; Thu, 12 Oct 2023 15:29:06 +0000
Received: by outflank-mailman (input) for mailman id 615843;
 Thu, 12 Oct 2023 15:29: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=oWZW=F2=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qqxcX-0006QI-6e
 for xen-devel@lists.xenproject.org; Thu, 12 Oct 2023 15:29:05 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 13b50218-6914-11ee-98d4-6d05b1d4d9a1;
 Thu, 12 Oct 2023 17:29:04 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id EC4F64EE0749;
 Thu, 12 Oct 2023 17:29: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: 13b50218-6914-11ee-98d4-6d05b1d4d9a1
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>
Subject: [XEN PATCH][for-next v2 5/8] x86/io_apic: address violation of MISRA C:2012 Rule 10.1
Date: Thu, 12 Oct 2023 17:28:49 +0200
Message-Id: <1fe7602b48cabb7710025f6b4e32e9b99a1faacd.1697123806.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1697123806.git.nicola.vetrini@bugseng.com>
References: <cover.1697123806.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The definition of IO_APIC_BASE contains a sum of an essentially enum
value (FIX_IO_APIC_BASE_0) that is positive with an index that, in all
instances, is unsigned, therefore the former is cast to unsigned, so that
the operands are of the same essential type.

No functional change.
---
 xen/arch/x86/include/asm/io_apic.h | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/xen/arch/x86/include/asm/io_apic.h b/xen/arch/x86/include/asm/io_apic.h
index a7e4c9e146de..a0fc50d601fe 100644
--- a/xen/arch/x86/include/asm/io_apic.h
+++ b/xen/arch/x86/include/asm/io_apic.h
@@ -14,9 +14,10 @@
  * Copyright (C) 1997, 1998, 1999, 2000 Ingo Molnar
  */
 
-#define IO_APIC_BASE(idx)                                               \
-    ((volatile uint32_t *)(__fix_to_virt(FIX_IO_APIC_BASE_0 + (idx))    \
-                           + (mp_ioapics[idx].mpc_apicaddr & ~PAGE_MASK)))
+#define IO_APIC_BASE(idx)                                     \
+    ((volatile uint32_t *)                                    \
+     (__fix_to_virt((unsigned int)FIX_IO_APIC_BASE_0 + (idx)) \
+      + (mp_ioapics[idx].mpc_apicaddr & ~PAGE_MASK)))
 
 #define IO_APIC_ID(idx) (mp_ioapics[idx].mpc_apicid)
 
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Thu Oct 12 15:29:07 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 15:29:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615841.957353 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqxcW-00079L-Es; Thu, 12 Oct 2023 15:29:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615841.957353; Thu, 12 Oct 2023 15: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 1qqxcW-00079E-Bv; Thu, 12 Oct 2023 15:29:04 +0000
Received: by outflank-mailman (input) for mailman id 615841;
 Thu, 12 Oct 2023 15:29: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=oWZW=F2=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qqxcV-0006QI-C9
 for xen-devel@lists.xenproject.org; Thu, 12 Oct 2023 15:29:03 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 128e930c-6914-11ee-98d4-6d05b1d4d9a1;
 Thu, 12 Oct 2023 17:29:02 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id 2DBBF4EE0747;
 Thu, 12 Oct 2023 17:29: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: 128e930c-6914-11ee-98d4-6d05b1d4d9a1
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>
Subject: [XEN PATCH][for-4.19 v2 3/8] xen/pdx: amend definition of PDX_GROUP_COUNT
Date: Thu, 12 Oct 2023 17:28:47 +0200
Message-Id: <62f8b9c36ad78352fc796878fd9759307ec3e380.1697123806.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1697123806.git.nicola.vetrini@bugseng.com>
References: <cover.1697123806.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The definition of PDX_GROUP_COUNT causes violations of
MISRA C:2012 Rule 10.1, therefore the problematic part now uses
the LOWEST_BIT macro, which encapsulates the pattern.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
---
 xen/include/xen/pdx.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/xen/include/xen/pdx.h b/xen/include/xen/pdx.h
index f3fbc4273aa4..36d618a8ba7d 100644
--- a/xen/include/xen/pdx.h
+++ b/xen/include/xen/pdx.h
@@ -72,7 +72,7 @@
 extern unsigned long max_pdx;
 
 #define PDX_GROUP_COUNT ((1 << PDX_GROUP_SHIFT) / \
-                         (sizeof(*frame_table) & -sizeof(*frame_table)))
+                         (LOWEST_BIT(sizeof(*frame_table))))
 extern unsigned long pdx_group_valid[];
 
 /**
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Thu Oct 12 15:29:07 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 15:29:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615840.957343 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqxcV-0006ty-7f; Thu, 12 Oct 2023 15:29:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615840.957343; Thu, 12 Oct 2023 15:29: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 1qqxcV-0006tr-4u; Thu, 12 Oct 2023 15:29:03 +0000
Received: by outflank-mailman (input) for mailman id 615840;
 Thu, 12 Oct 2023 15:29: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=oWZW=F2=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qqxcT-0006QI-Og
 for xen-devel@lists.xenproject.org; Thu, 12 Oct 2023 15:29:01 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 11a4e2d1-6914-11ee-98d4-6d05b1d4d9a1;
 Thu, 12 Oct 2023 17:29:01 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id 89A164EE0746;
 Thu, 12 Oct 2023 17:28: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: 11a4e2d1-6914-11ee-98d4-6d05b1d4d9a1
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>,
	Julien Grall <julien@xen.org>,
	Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: [XEN PATCH][for-4.19 v2 2/8] arm/bitops: encapsulate violation of MISRA C:2012 Rule 10.1
Date: Thu, 12 Oct 2023 17:28:46 +0200
Message-Id: <042f79da9c4480955c5fb82a25e4847c4777fbea.1697123806.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1697123806.git.nicola.vetrini@bugseng.com>
References: <cover.1697123806.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The definitions of ffs{l}? violate Rule 10.1, by using the well-known
pattern (x & -x); its usage is wrapped by the LOWEST_BIT macro.

No functional change.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
---
 xen/arch/arm/include/asm/bitops.h | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/xen/arch/arm/include/asm/bitops.h b/xen/arch/arm/include/asm/bitops.h
index 71ae14cab355..8b5d61545e19 100644
--- a/xen/arch/arm/include/asm/bitops.h
+++ b/xen/arch/arm/include/asm/bitops.h
@@ -9,6 +9,8 @@
 #ifndef _ARM_BITOPS_H
 #define _ARM_BITOPS_H
 
+#include <xen/macros.h>
+
 #include <asm/asm_defns.h>
 
 /*
@@ -155,8 +157,8 @@ static inline int fls(unsigned int x)
 }
 
 
-#define ffs(x) ({ unsigned int __t = (x); fls(__t & -__t); })
-#define ffsl(x) ({ unsigned long __t = (x); flsl(__t & -__t); })
+#define ffs(x) ({ unsigned int __t = (x); fls(LOWEST_BIT(__t)); })
+#define ffsl(x) ({ unsigned long __t = (x); flsl(LOWEST_BIT(__t)); })
 
 /**
  * find_first_set_bit - find the first set bit in @word
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Thu Oct 12 15:29:07 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 15:29:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615842.957363 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqxcX-0007Ph-OK; Thu, 12 Oct 2023 15:29:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615842.957363; Thu, 12 Oct 2023 15:29: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 1qqxcX-0007PS-JY; Thu, 12 Oct 2023 15:29:05 +0000
Received: by outflank-mailman (input) for mailman id 615842;
 Thu, 12 Oct 2023 15:29: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=oWZW=F2=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qqxcW-0006QI-Iq
 for xen-devel@lists.xenproject.org; Thu, 12 Oct 2023 15:29:04 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 134e2440-6914-11ee-98d4-6d05b1d4d9a1;
 Thu, 12 Oct 2023 17:29:04 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id CB0064EE0748;
 Thu, 12 Oct 2023 17:29: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: 134e2440-6914-11ee-98d4-6d05b1d4d9a1
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>
Subject: [XEN PATCH][for-next v2 4/8] x86_64/mm: express macro CNT using LOWEST_BIT
Date: Thu, 12 Oct 2023 17:28:48 +0200
Message-Id: <eb05327a3af71c883c3ff5ed3b4501a8859403d3.1697123806.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1697123806.git.nicola.vetrini@bugseng.com>
References: <cover.1697123806.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The various definitions of macro CNT (and the related BUILD_BUG_ON)
can be rewritten using LOWEST_BIT, encapsulating a violation of
MISRA C:2012 Rule 10.1.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
---
 xen/arch/x86/x86_64/mm.c | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/xen/arch/x86/x86_64/mm.c b/xen/arch/x86/x86_64/mm.c
index c3ebb777144a..0eb7b71124f5 100644
--- a/xen/arch/x86/x86_64/mm.c
+++ b/xen/arch/x86/x86_64/mm.c
@@ -351,9 +351,9 @@ static int setup_compat_m2p_table(struct mem_hotadd_info *info)
                 ~((1UL << (L2_PAGETABLE_SHIFT - 2)) - 1) );

 #define MFN(x) (((x) << L2_PAGETABLE_SHIFT) / sizeof(unsigned int))
-#define CNT ((sizeof(*frame_table) & -sizeof(*frame_table)) / \
+#define CNT (LOWEST_BIT(sizeof(*frame_table)) / \
              sizeof(*compat_machine_to_phys_mapping))
-    BUILD_BUG_ON((sizeof(*frame_table) & -sizeof(*frame_table)) % \
+    BUILD_BUG_ON(LOWEST_BIT(sizeof(*frame_table)) % \
                  sizeof(*compat_machine_to_phys_mapping));

     for ( i = smap; i < emap; i += (1UL << (L2_PAGETABLE_SHIFT - 2)) )
@@ -410,10 +410,10 @@ static int setup_m2p_table(struct mem_hotadd_info *info)
     va = RO_MPT_VIRT_START + smap * sizeof(*machine_to_phys_mapping);

 #define MFN(x) (((x) << L2_PAGETABLE_SHIFT) / sizeof(unsigned long))
-#define CNT ((sizeof(*frame_table) & -sizeof(*frame_table)) / \
+#define CNT (LOWEST_BIT(sizeof(*frame_table)) / \
              sizeof(*machine_to_phys_mapping))

-    BUILD_BUG_ON((sizeof(*frame_table) & -sizeof(*frame_table)) % \
+    BUILD_BUG_ON(LOWEST_BIT(sizeof(*frame_table)) % \
                  sizeof(*machine_to_phys_mapping));

     i = smap;
@@ -539,7 +539,7 @@ void __init paging_init(void)
     mpt_size  = (max_page * BYTES_PER_LONG) + (1UL << L2_PAGETABLE_SHIFT) - 1;
     mpt_size &= ~((1UL << L2_PAGETABLE_SHIFT) - 1UL);
 #define MFN(x) (((x) << L2_PAGETABLE_SHIFT) / sizeof(unsigned long))
-#define CNT ((sizeof(*frame_table) & -sizeof(*frame_table)) / \
+#define CNT (LOWEST_BIT(sizeof(*frame_table)) / \
              sizeof(*machine_to_phys_mapping))
     BUILD_BUG_ON((sizeof(*frame_table) & ~sizeof(*frame_table)) % \
                  sizeof(*machine_to_phys_mapping));
@@ -666,7 +666,7 @@ void __init paging_init(void)
         mpt_size = 0;

 #define MFN(x) (((x) << L2_PAGETABLE_SHIFT) / sizeof(unsigned int))
-#define CNT ((sizeof(*frame_table) & -sizeof(*frame_table)) / \
+#define CNT (LOWEST_BIT(sizeof(*frame_table)) / \
              sizeof(*compat_machine_to_phys_mapping))
     BUILD_BUG_ON((sizeof(*frame_table) & ~sizeof(*frame_table)) % \
                  sizeof(*compat_machine_to_phys_mapping));
--
2.34.1


From xen-devel-bounces@lists.xenproject.org Thu Oct 12 15:29:07 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 15:29:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615839.957329 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqxcU-0006UV-3m; Thu, 12 Oct 2023 15:29:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615839.957329; Thu, 12 Oct 2023 15:29: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 1qqxcT-0006TY-Ty; Thu, 12 Oct 2023 15:29:01 +0000
Received: by outflank-mailman (input) for mailman id 615839;
 Thu, 12 Oct 2023 15:29: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=oWZW=F2=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qqxcT-0006QI-1J
 for xen-devel@lists.xenproject.org; Thu, 12 Oct 2023 15:29:01 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 109d92c0-6914-11ee-98d4-6d05b1d4d9a1;
 Thu, 12 Oct 2023 17:28:59 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id E020B4EE0744;
 Thu, 12 Oct 2023 17:28: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: 109d92c0-6914-11ee-98d4-6d05b1d4d9a1
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>,
	George Dunlap <george.dunlap@citrix.com>,
	Julien Grall <julien@xen.org>,
	Wei Liu <wl@xen.org>
Subject: [XEN PATCH][for-next][for-4.19 v2 1/8] xen/include: add macro LOWEST_BIT
Date: Thu, 12 Oct 2023 17:28:45 +0200
Message-Id: <bb0ba44f8a3944c22a1c7cf19196c7060e8adb4b.1697123806.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1697123806.git.nicola.vetrini@bugseng.com>
References: <cover.1697123806.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The purpose of this macro is to encapsulate the well-known expression
'x & -x', that in 2's complement architectures on unsigned integers will
give 2^ffs(x), where ffs(x) is the position of the lowest set bit in x.

A deviation for ECLAIR is also introduced.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
---
Changes in v2:
- rename to LOWEST_BIT
---
 automation/eclair_analysis/ECLAIR/deviations.ecl | 6 ++++++
 xen/include/xen/macros.h                         | 6 ++++--
 2 files changed, 10 insertions(+), 2 deletions(-)

diff --git a/automation/eclair_analysis/ECLAIR/deviations.ecl b/automation/eclair_analysis/ECLAIR/deviations.ecl
index d8170106b449..b8e1155ee49d 100644
--- a/automation/eclair_analysis/ECLAIR/deviations.ecl
+++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
@@ -274,6 +274,12 @@ still non-negative."
 -config=MC3R1.R10.1,etypes+={safe, "stmt(operator(logical)||node(conditional_operator||binary_conditional_operator))", "dst_type(ebool||boolean)"}
 -doc_end

+-doc_begin="The macro LOWEST_BIT encapsulates a well-known pattern to obtain the value
+2^ffs(x) for unsigned integers on two's complement architectures
+(all the architectures supported by Xen satisfy this requirement)."
+-config=MC3R1.R10.1,reports+={safe, "any_area(any_loc(any_exp(macro(^LOWEST_BIT$))))"}
+-doc_end
+
 ### Set 3 ###

 #
diff --git a/xen/include/xen/macros.h b/xen/include/xen/macros.h
index d0caae7db298..af47179d1056 100644
--- a/xen/include/xen/macros.h
+++ b/xen/include/xen/macros.h
@@ -8,8 +8,10 @@
 #define DIV_ROUND(n, d) (((n) + (d) / 2) / (d))
 #define DIV_ROUND_UP(n, d) (((n) + (d) - 1) / (d))

-#define MASK_EXTR(v, m) (((v) & (m)) / ((m) & -(m)))
-#define MASK_INSR(v, m) (((v) * ((m) & -(m))) & (m))
+#define LOWEST_BIT(x) ((x) & -(x))
+
+#define MASK_EXTR(v, m) (((v) & (m)) / LOWEST_BIT(m))
+#define MASK_INSR(v, m) (((v) * LOWEST_BIT(m)) & (m))

 #define count_args_(dot, a1, a2, a3, a4, a5, a6, a7, a8, x, ...) x
 #define count_args(args...) \
--
2.34.1


From xen-devel-bounces@lists.xenproject.org Thu Oct 12 15:29:08 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 15:29:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615844.957383 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqxca-0007ys-I7; Thu, 12 Oct 2023 15:29:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615844.957383; Thu, 12 Oct 2023 15: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 1qqxca-0007yl-ER; Thu, 12 Oct 2023 15:29:08 +0000
Received: by outflank-mailman (input) for mailman id 615844;
 Thu, 12 Oct 2023 15:29: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=oWZW=F2=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qqxcY-0006QI-SX
 for xen-devel@lists.xenproject.org; Thu, 12 Oct 2023 15:29:06 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 14ade131-6914-11ee-98d4-6d05b1d4d9a1;
 Thu, 12 Oct 2023 17:29:06 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id 657A04EE074A;
 Thu, 12 Oct 2023 17:29: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: 14ade131-6914-11ee-98d4-6d05b1d4d9a1
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>,
	Paul Durrant <paul@xen.org>
Subject: [XEN PATCH][for-4.19 v2 7/8] xen/types: address Rule 10.1 for DECLARE_BITMAP use
Date: Thu, 12 Oct 2023 17:28:51 +0200
Message-Id: <f94b0c9411937a4003b86b5850b6d4ad91dff5d5.1697123806.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1697123806.git.nicola.vetrini@bugseng.com>
References: <cover.1697123806.git.nicola.vetrini@bugseng.com>
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
in macro 'BITS_TO_LONGS'.

This construct is deviated with a deviation comment.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
---
 docs/misra/safe.json    | 8 ++++++++
 xen/include/xen/iommu.h | 1 +
 xen/include/xen/types.h | 8 ++++++++
 3 files changed, 17 insertions(+)

diff --git a/docs/misra/safe.json b/docs/misra/safe.json
index 39c5c056c7d4..952324f85cf9 100644
--- a/docs/misra/safe.json
+++ b/docs/misra/safe.json
@@ -20,6 +20,14 @@
         },
         {
             "id": "SAF-2-safe",
+            "analyser": {
+                "eclair": "MC3R1.R10.1"
+            },
+            "name": "MC3R1.R10.1: use of an enumeration constant in an arithmetic operation",
+            "text": "This violation can be fixed with a cast to (int) of the enumeration constant, but a deviation was chosen due to code readability (see also the comment in BITS_TO_LONGS)."
+        },
+        {
+            "id": "SAF-3-safe",
             "analyser": {},
             "name": "Sentinel",
             "text": "Next ID to be used"
diff --git a/xen/include/xen/iommu.h b/xen/include/xen/iommu.h
index 0e747b0bbc1c..d5c25770915b 100644
--- a/xen/include/xen/iommu.h
+++ b/xen/include/xen/iommu.h
@@ -360,6 +360,7 @@ struct domain_iommu {
 #endif
 
     /* Features supported by the IOMMU */
+    /* SAF-2-safe enum constant in arithmetic operation */
     DECLARE_BITMAP(features, IOMMU_FEAT_count);
 
     /* Does the guest share HAP mapping with the IOMMU? */
diff --git a/xen/include/xen/types.h b/xen/include/xen/types.h
index aea259db1ef2..50171ea1ad28 100644
--- a/xen/include/xen/types.h
+++ b/xen/include/xen/types.h
@@ -22,6 +22,14 @@ typedef signed long ssize_t;
 
 typedef __PTRDIFF_TYPE__ ptrdiff_t;
 
+/*
+ * Users of this macro are expected to pass a positive value.
+ *
+ * Eventually, this should become an unsigned quantity, but this
+ * requires fixing various uses of this macro and BITS_PER_LONG in signed
+ * contexts, such as type-safe 'min' macro uses, which give rise to build errors
+ * when the arguments have differing signedness, due to the build flags used.
+ */
 #define BITS_TO_LONGS(bits) \
     (((bits)+BITS_PER_LONG-1)/BITS_PER_LONG)
 #define DECLARE_BITMAP(name,bits) \
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Thu Oct 12 15:29:09 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 15:29:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615845.957389 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqxca-000833-Vy; Thu, 12 Oct 2023 15:29:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615845.957389; Thu, 12 Oct 2023 15: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 1qqxca-000829-OL; Thu, 12 Oct 2023 15:29:08 +0000
Received: by outflank-mailman (input) for mailman id 615845;
 Thu, 12 Oct 2023 15: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=oWZW=F2=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qqxcZ-0006QC-0H
 for xen-devel@lists.xenproject.org; Thu, 12 Oct 2023 15:29:07 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 1429e5d5-6914-11ee-9b0e-b553b5be7939;
 Thu, 12 Oct 2023 17:29:05 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id A206E4EE074B;
 Thu, 12 Oct 2023 17:29: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: 1429e5d5-6914-11ee-9b0e-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>
Subject: [XEN PATCH][for-next v2 6/8] x86/mce: Move MC_NCLASSES into the enum mctelem_class
Date: Thu, 12 Oct 2023 17:28:50 +0200
Message-Id: <6622a2ec7079f86b73ae420e1e840d3d35ffb3a0.1697123806.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1697123806.git.nicola.vetrini@bugseng.com>
References: <cover.1697123806.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The definition of MC_NCLASSES contained a violation of MISRA C:2012
Rule 10.1, therefore by moving it as an enumeration constant resolves the
violation and makes it more resilient to possible additions to that enum.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
---
Note that the use of an enum constant as operand to [ ] and != is allowed
by the Rule.
---
 xen/arch/x86/cpu/mcheck/mctelem.c | 2 --
 xen/arch/x86/cpu/mcheck/mctelem.h | 5 +++--
 2 files changed, 3 insertions(+), 4 deletions(-)

diff --git a/xen/arch/x86/cpu/mcheck/mctelem.c b/xen/arch/x86/cpu/mcheck/mctelem.c
index 329ac20faf96..77a4d1d5ff48 100644
--- a/xen/arch/x86/cpu/mcheck/mctelem.c
+++ b/xen/arch/x86/cpu/mcheck/mctelem.c
@@ -64,8 +64,6 @@ struct mctelem_ent {
 
 #define MC_NENT (MC_URGENT_NENT + MC_NONURGENT_NENT)
 
-#define	MC_NCLASSES		(MC_NONURGENT + 1)
-
 #define	COOKIE2MCTE(c)		((struct mctelem_ent *)(c))
 #define	MCTE2COOKIE(tep)	((mctelem_cookie_t)(tep))
 
diff --git a/xen/arch/x86/cpu/mcheck/mctelem.h b/xen/arch/x86/cpu/mcheck/mctelem.h
index d4eba53ae0e5..21b251847bc0 100644
--- a/xen/arch/x86/cpu/mcheck/mctelem.h
+++ b/xen/arch/x86/cpu/mcheck/mctelem.h
@@ -55,8 +55,9 @@
 typedef struct mctelem_cookie *mctelem_cookie_t;
 
 typedef enum mctelem_class {
-	MC_URGENT,
-	MC_NONURGENT
+    MC_URGENT,
+    MC_NONURGENT,
+    MC_NCLASSES
 } mctelem_class_t;
 
 extern void mctelem_init(unsigned int);
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Thu Oct 12 15:29:09 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 15:29:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615846.957392 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqxcb-00087N-A9; Thu, 12 Oct 2023 15:29:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615846.957392; Thu, 12 Oct 2023 15: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 1qqxcb-00085x-25; Thu, 12 Oct 2023 15:29:09 +0000
Received: by outflank-mailman (input) for mailman id 615846;
 Thu, 12 Oct 2023 15:29: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=oWZW=F2=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qqxcZ-0006QI-No
 for xen-devel@lists.xenproject.org; Thu, 12 Oct 2023 15:29:07 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 1532993c-6914-11ee-98d4-6d05b1d4d9a1;
 Thu, 12 Oct 2023 17:29:07 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id 434474EE074C;
 Thu, 12 Oct 2023 17:29: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: 1532993c-6914-11ee-98d4-6d05b1d4d9a1
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>
Subject: [XEN PATCH][for-4.19 v2 8/8] xen/compat: use BUILD_BUG_ON in CHECK_SIZE macros
Date: Thu, 12 Oct 2023 17:28:52 +0200
Message-Id: <6138e02935236afd51a5db98d3527e5e2602468d.1697123806.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1697123806.git.nicola.vetrini@bugseng.com>
References: <cover.1697123806.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

BUILD_BUG_ON is the preferred way to induce a build error
upon statically determined incorrect conditions.

This also fixes a MISRA C:2012 Rule 10.1 violation in the
previous formulation.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
---
Changes in v2:
- replace the construct with a BUILD_BUG_ON.
---
 xen/include/xen/compat.h | 18 +++++++++++++-----
 1 file changed, 13 insertions(+), 5 deletions(-)

diff --git a/xen/include/xen/compat.h b/xen/include/xen/compat.h
index f2ce5bb3580a..4daa04183eac 100644
--- a/xen/include/xen/compat.h
+++ b/xen/include/xen/compat.h
@@ -151,12 +151,20 @@ CHECK_NAME_(k, n, T)(k xen_ ## n *x, \
     return x == c; \
 }
 
-#define CHECK_SIZE(name) \
-    typedef int CHECK_NAME(name, S)[1 - (sizeof(xen_ ## name ## _t) != \
-                                         sizeof(compat_ ## name ## _t)) * 2]
+#define CHECK_SIZE(name)                                  \
+static inline void __maybe_unused CHECK_SIZE_##name(void) \
+{                                                         \
+    typedef int CHECK_NAME(name, S)[1];                   \
+    BUILD_BUG_ON(sizeof(xen_ ## name ## _t) !=            \
+                 sizeof(compat_ ## name ## _t));          \
+}
 #define CHECK_SIZE_(k, n) \
-    typedef int CHECK_NAME_(k, n, S)[1 - (sizeof(k xen_ ## n) != \
-                                          sizeof(k compat_ ## n)) * 2]
+static inline void __maybe_unused CHECK_SIZE_##k_##n(void) \
+{                                                          \
+    typedef int CHECK_NAME_(k, n, S)[1];                   \
+    BUILD_BUG_ON(sizeof(k xen_ ## n) !=                    \
+                 sizeof(k compat_ ## n));                  \
+}
 
 #define CHECK_FIELD_COMMON(name, t, f) \
 static inline int __maybe_unused name(xen_ ## t ## _t *x, compat_ ## t ## _t *c) \
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Thu Oct 12 15:56:33 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 15:56:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615891.957413 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqy2q-0006Zu-G0; Thu, 12 Oct 2023 15:56:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615891.957413; Thu, 12 Oct 2023 15:56: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 1qqy2q-0006Zn-C2; Thu, 12 Oct 2023 15:56:16 +0000
Received: by outflank-mailman (input) for mailman id 615891;
 Thu, 12 Oct 2023 15:56: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=JG3O=F2=cloud.com=george.dunlap@srs-se1.protection.inumbo.net>)
 id 1qqy2p-0006Zg-78
 for xen-devel@lists.xenproject.org; Thu, 12 Oct 2023 15:56:15 +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 de5f0ad0-6917-11ee-9b0e-b553b5be7939;
 Thu, 12 Oct 2023 17:56:13 +0200 (CEST)
Received: by mail-lf1-x132.google.com with SMTP id
 2adb3069b0e04-507973f3b65so318000e87.3
 for <xen-devel@lists.xenproject.org>; Thu, 12 Oct 2023 08:56: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: de5f0ad0-6917-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1697126172; x=1697730972; 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=gm3NcfOf4NiJvL6gxng7QagtfQexuBA+kuLkJj2lEdY=;
        b=CRV2G76vrd/trYMPV0W7bekV7ejT7Rta8LV6uORN3IY+IW9CA7P30bc6bvx+OuvoHK
         Up7k5vl5cPnLimRtpkkYMVJ2o7ZpUxsjSTJnZlcCU7B3i850imnxw4s2hwkOzdEL0opK
         LtlI6Rb9GiXV1Nru61VrWMpJAfbiZJtjVgn4U=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697126172; x=1697730972;
        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=gm3NcfOf4NiJvL6gxng7QagtfQexuBA+kuLkJj2lEdY=;
        b=OSZRFOeAHOlh93PnGxRvF/JTL/lbyNbyCZ8y+g1ckHGGkPdS74gsKMo/sHBADvVhwi
         sSmv8dpfVQGFIMeEByLca6McA61SibgjSZRyb+sJVu52nNfrZfQmpQ8/zzlCoOxkeRi1
         lNRDop10Vg/oG7RZ9+G15Q01VXi0JLAv498Gk8/4XgXWkJWTgWe5+Npi9V/LBLgjFTao
         nnifBGQX1u3xtIxljlsY/eiXJ9iuYmbwRBKTNJ7FP4UX5MRXZJ7FNNYDse4SpbnHNwVk
         PrylihCiku4Lk2+1u4mvI2vs+Ph0HhwLN5C06IVTDanq7VwqgB6zphq3om9yPBchJfQX
         EZqA==
X-Gm-Message-State: AOJu0YyKSSsfmRcB4XhDYKX0WYeKlOimewNgX7r4AOhiOl83q+Cl7cmZ
	LHbPVBPxOk8TYfpwQCXUMn2Tg/4M185wzj2C3zmMJA==
X-Google-Smtp-Source: AGHT+IFia2H17ZzguktfthVbBAKew73rNhneTsIh1sqkfJWMfpVfL9PIwU0a93cbpjPS44ygxuuf/XdQKFND8xX24js=
X-Received: by 2002:a19:ca4a:0:b0:507:97a3:ae3c with SMTP id
 h10-20020a19ca4a000000b0050797a3ae3cmr161674lfj.11.1697126172525; Thu, 12 Oct
 2023 08:56:12 -0700 (PDT)
MIME-Version: 1.0
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> <alpine.DEB.2.22.394.2309271658500.1403502@ubuntu-linux-20-04-desktop>
In-Reply-To: <alpine.DEB.2.22.394.2309271658500.1403502@ubuntu-linux-20-04-desktop>
From: George Dunlap <george.dunlap@cloud.com>
Date: Thu, 12 Oct 2023 16:56:01 +0100
Message-ID: <CA+zSX=ZbeUFrfAUJShooJFJ+d89f4xdXfJJ9HoJKRh4UStkTFQ@mail.gmail.com>
Subject: Re: Xen 4.18 release: Reminder about code freeze
To: Stefano Stabellini <sstabellini@kernel.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>, 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>
Content-Type: text/plain; charset="UTF-8"

> > 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?

It moves a line from one function (do_domain_introduce()) into a
completely different function (introduce_domain()), nested inside two
if() statements; with no analysis on how the change will impact
things.

Are there any paths through do_domain_introduce() that now *won't* get
a domain_conn_reset() call?  Is that OK?

Is introduce_domain() called in other places?  Will those places now
get extra domain_conn_reset() calls they weren't expecting?  Is that
OK?

I mean, it certainly seems strange to set the state to CONNECTED, send
off an event channel, and then after that delete all watches /
transactions / buffered data and so on; but we need at least a basic
understanding of what's going on to know that this change isn't going
to break comething.

Not knowing much about the xenstore protocol: In the
(!domain->introduced) case, will there be anything to actually delete?
 It seems like it would only be necessary / useful on the
(domain->introduced) case.

 -George


From xen-devel-bounces@lists.xenproject.org Thu Oct 12 15:57:48 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 15:57:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615895.957422 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqy4J-00077M-PE; Thu, 12 Oct 2023 15:57:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615895.957422; Thu, 12 Oct 2023 15:57: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 1qqy4J-00077E-MJ; Thu, 12 Oct 2023 15:57:47 +0000
Received: by outflank-mailman (input) for mailman id 615895;
 Thu, 12 Oct 2023 15:57: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=oWZW=F2=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qqy4I-000777-OB
 for xen-devel@lists.xenproject.org; Thu, 12 Oct 2023 15:57:46 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 14fc8c69-6918-11ee-9b0e-b553b5be7939;
 Thu, 12 Oct 2023 17:57:44 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id CF3554EE0739;
 Thu, 12 Oct 2023 17:57: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: 14fc8c69-6918-11ee-9b0e-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>,
	Paul Durrant <paul@xen.org>
Subject: [XEN PATCH][for-4.19 0/2] use the macro LOWEST_BIT where appropriate
Date: Thu, 12 Oct 2023 17:57:37 +0200
Message-Id: <cover.1697125949.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

This series replaces two instances of the pattern (x & -x) with the
macro LOWEST_BIT, introduced by the series [1]. Therefore, these patches should
be applied on top of patch 1 from that series.

[1] https://marc.info/?l=xen-devel&m=169712438716424&w=2

Nicola Vetrini (2):
  xen/vmap: use LOWEST_BIT to wrap a violation of Rule 10.1
  xen/iommu: use LOWEST_BIT to wrap a violation of Rule 10.1

 xen/common/vmap.c               | 2 +-
 xen/drivers/passthrough/iommu.c | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

--
2.34.1


From xen-devel-bounces@lists.xenproject.org Thu Oct 12 15:57:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 15:57:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615896.957433 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqy4M-0007Mv-0S; Thu, 12 Oct 2023 15:57:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615896.957433; Thu, 12 Oct 2023 15:57: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 1qqy4L-0007Mo-TE; Thu, 12 Oct 2023 15:57:49 +0000
Received: by outflank-mailman (input) for mailman id 615896;
 Thu, 12 Oct 2023 15:57: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=oWZW=F2=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qqy4K-000777-5W
 for xen-devel@lists.xenproject.org; Thu, 12 Oct 2023 15:57:48 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 16183633-6918-11ee-9b0e-b553b5be7939;
 Thu, 12 Oct 2023 17:57:46 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id AAE554EE0746;
 Thu, 12 Oct 2023 17:57: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: 16183633-6918-11ee-9b0e-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>
Subject: [XEN PATCH][for-4.19 1/2] xen/vmap: use LOWEST_BIT to wrap a violation of Rule 10.1
Date: Thu, 12 Oct 2023 17:57:38 +0200
Message-Id: <29c1c01f54d6ac9fccc86b72ee96cc66672ac57a.1697125949.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1697125949.git.nicola.vetrini@bugseng.com>
References: <cover.1697125949.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

No functional change.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
---
 xen/common/vmap.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/xen/common/vmap.c b/xen/common/vmap.c
index 4fd6b3067ec1..34e99d780c03 100644
--- a/xen/common/vmap.c
+++ b/xen/common/vmap.c
@@ -53,7 +53,7 @@ static void *vm_alloc(unsigned int nr, unsigned int align,
     if ( !align )
         align = 1;
     else if ( align & (align - 1) )
-        align &= -align;
+        align = LOWEST_BIT(align);
 
     ASSERT((t >= VMAP_DEFAULT) && (t < VMAP_REGION_NR));
     if ( !vm_base[t] )
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Thu Oct 12 15:57:51 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 15:57:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615897.957442 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqy4N-0007ct-78; Thu, 12 Oct 2023 15:57:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615897.957442; Thu, 12 Oct 2023 15: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 1qqy4N-0007ci-4I; Thu, 12 Oct 2023 15:57:51 +0000
Received: by outflank-mailman (input) for mailman id 615897;
 Thu, 12 Oct 2023 15: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=oWZW=F2=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qqy4L-000777-Ua
 for xen-devel@lists.xenproject.org; Thu, 12 Oct 2023 15:57:49 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 1711a1ca-6918-11ee-9b0e-b553b5be7939;
 Thu, 12 Oct 2023 17:57:48 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id B5B874EE0747;
 Thu, 12 Oct 2023 17:57: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: 1711a1ca-6918-11ee-9b0e-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>,
	Paul Durrant <paul@xen.org>
Subject: [XEN PATCH][for-4.19 2/2] xen/iommu: use LOWEST_BIT to wrap a violation of Rule 10.1
Date: Thu, 12 Oct 2023 17:57:39 +0200
Message-Id: <26399294316ff7f468c05d7e8a8433227afb3177.1697125949.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1697125949.git.nicola.vetrini@bugseng.com>
References: <cover.1697125949.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

No functional change.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
---
 xen/drivers/passthrough/iommu.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/xen/drivers/passthrough/iommu.c b/xen/drivers/passthrough/iommu.c
index f9a9f53dbd44..558700788d4a 100644
--- a/xen/drivers/passthrough/iommu.c
+++ b/xen/drivers/passthrough/iommu.c
@@ -560,7 +560,7 @@ int __init iommu_setup(void)
         rc = iommu_hardware_setup();
         if ( !rc )
             ops = iommu_get_ops();
-        if ( ops && (ops->page_sizes & -ops->page_sizes) != PAGE_SIZE )
+        if ( ops && (LOWEST_BIT(ops->page_sizes)) != PAGE_SIZE )
         {
             printk(XENLOG_ERR "IOMMU: page size mask %lx unsupported\n",
                    ops->page_sizes);
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Thu Oct 12 16:12:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 16:12:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615913.957453 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqyIs-00039g-Mr; Thu, 12 Oct 2023 16:12:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615913.957453; Thu, 12 Oct 2023 16:12: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 1qqyIs-00039Z-KA; Thu, 12 Oct 2023 16:12:50 +0000
Received: by outflank-mailman (input) for mailman id 615913;
 Thu, 12 Oct 2023 16:12: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=Qqh1=F2=gmail.com=ubizjak@srs-se1.protection.inumbo.net>)
 id 1qqyIr-00039I-O4
 for xen-devel@lists.xenproject.org; Thu, 12 Oct 2023 16:12:49 +0000
Received: from mail-ej1-x635.google.com (mail-ej1-x635.google.com
 [2a00:1450:4864:20::635])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 2fc758d0-691a-11ee-98d4-6d05b1d4d9a1;
 Thu, 12 Oct 2023 18:12:48 +0200 (CEST)
Received: by mail-ej1-x635.google.com with SMTP id
 a640c23a62f3a-9adb9fa7200so234958266b.0
 for <xen-devel@lists.xenproject.org>; Thu, 12 Oct 2023 09:12:48 -0700 (PDT)
Received: from localhost.localdomain ([46.248.82.114])
 by smtp.gmail.com with ESMTPSA id
 ci24-20020a170906c35800b009a2235ed496sm11414461ejb.141.2023.10.12.09.12.47
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Thu, 12 Oct 2023 09:12: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: 2fc758d0-691a-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1697127168; x=1697731968; 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=HQbyfobss6xeclCGhQMgW1ClZu9bZ4s/snJGfv9Jbpo=;
        b=GVk5TceC7qTadNwETNKYbj8wjoY+1e/GJhTe//ZWwYCERthPW+ENoQpvvpx5zaMsbn
         uZE6EbVGC+bDvbkDOD8VietIZ/6Ck1s41y+PDWRW6v/xIWOuAMl1hEnH2vKTu2+4lQzA
         W55wOZQbdNgaAMae9nIEDyy+SpRdL/yiuuREqzHlFufVJOOKGnqltGLdGXljA8ahBqxA
         /D/5nY/93S0ykaByooNGo6/WmvxlmhkylJCQBZJseX75iws38p8N2ZuLM3AhXy0keFMV
         Wc7KaOQUFMrd5iViMtY0jKUR8qrCJcNCxstBIh5fK5rQ+16qrwuLLsNNngfyxdaOcANZ
         Yz3A==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697127168; x=1697731968;
        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=HQbyfobss6xeclCGhQMgW1ClZu9bZ4s/snJGfv9Jbpo=;
        b=A5gEiO8L3WM79XseGOuC341sXzn/jxiLQFv2C8aDXVGWQxg5HkE0LO5jmvAoG/v9gy
         pXrFsB2ZEXipkVS7UWpesaNesgRUDU2cxlZe8CbNWIMx78akabapD7E4VPHHyQ6V5JNu
         2tM0bTZb2G2gpq6MjQrPfdmyj+YZ+/+Ou/knj17TTm038uknRHnTM577X0LwOErjP8o2
         FiACC7rTSGBbZdsPzP3ZhUUAZLaSpxXFK+IfqEOcf8wpNLOt2Xbi/bMzlKS5MQk0gI7N
         L92aDrjLprpp0SeTIl7HrDFAO+ZfUewq1V10pqVKTdgWPbynx/SwdnBMxspPblsWd/St
         XtCg==
X-Gm-Message-State: AOJu0Yx4czBNr76kZ7xzUTHvYdhCeoqvyxHR3nJY/uZcWswBpVwacYEi
	LJD9RR9IJEx1NVh0GnkZc2g=
X-Google-Smtp-Source: AGHT+IFcqbuNzLQmgxkQeiKP2KIso3r6ZxxKVuexp+Jb8ccabLciAyOXFrL77NO8rhOPn+oPIIJ4xw==
X-Received: by 2002:a17:906:99c5:b0:9ae:3768:f0ce with SMTP id s5-20020a17090699c500b009ae3768f0cemr20792970ejn.0.1697127167910;
        Thu, 12 Oct 2023 09:12:47 -0700 (PDT)
From: Uros Bizjak <ubizjak@gmail.com>
To: x86@kernel.org,
	xen-devel@lists.xenproject.org,
	linux-kernel@vger.kernel.org
Cc: Uros Bizjak <ubizjak@gmail.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>,
	Peter Zijlstra <peterz@infradead.org>
Subject: [PATCH 1/4] x86/percpu: Use explicit segment registers in lib/cmpxchg{8,16}b_emu.S
Date: Thu, 12 Oct 2023 18:10:36 +0200
Message-ID: <20231012161237.114733-2-ubizjak@gmail.com>
X-Mailer: git-send-email 2.41.0
In-Reply-To: <20231012161237.114733-1-ubizjak@gmail.com>
References: <20231012161237.114733-1-ubizjak@gmail.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

PER_CPU_VAR macro is intended to be applied to a symbol, it is not
intended to be used as a selector between %fs and %gs segment
registers for general operands.

The address to these emulation functions is passed in a register, so
use explicit segment registers to access percpu variable instead.

Also add a missing function comment to this_cpu_cmpxchg8b_emu.

No functional changes intended.

Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: Borislav Petkov <bp@alien8.de>
Cc: Dave Hansen <dave.hansen@linux.intel.com>
Cc: "H. Peter Anvin" <hpa@zytor.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Signed-off-by: Uros Bizjak <ubizjak@gmail.com>
---
 arch/x86/lib/cmpxchg16b_emu.S | 12 ++++++------
 arch/x86/lib/cmpxchg8b_emu.S  | 30 +++++++++++++++++++++---------
 2 files changed, 27 insertions(+), 15 deletions(-)

diff --git a/arch/x86/lib/cmpxchg16b_emu.S b/arch/x86/lib/cmpxchg16b_emu.S
index 6962df315793..2bd8b89bce75 100644
--- a/arch/x86/lib/cmpxchg16b_emu.S
+++ b/arch/x86/lib/cmpxchg16b_emu.S
@@ -23,14 +23,14 @@ SYM_FUNC_START(this_cpu_cmpxchg16b_emu)
 	cli
 
 	/* if (*ptr == old) */
-	cmpq	PER_CPU_VAR(0(%rsi)), %rax
+	cmpq	%gs:(%rsi), %rax
 	jne	.Lnot_same
-	cmpq	PER_CPU_VAR(8(%rsi)), %rdx
+	cmpq	%gs:8(%rsi), %rdx
 	jne	.Lnot_same
 
 	/* *ptr = new */
-	movq	%rbx, PER_CPU_VAR(0(%rsi))
-	movq	%rcx, PER_CPU_VAR(8(%rsi))
+	movq	%rbx, %gs:(%rsi)
+	movq	%rcx, %gs:8(%rsi)
 
 	/* set ZF in EFLAGS to indicate success */
 	orl	$X86_EFLAGS_ZF, (%rsp)
@@ -42,8 +42,8 @@ SYM_FUNC_START(this_cpu_cmpxchg16b_emu)
 	/* *ptr != old */
 
 	/* old = *ptr */
-	movq	PER_CPU_VAR(0(%rsi)), %rax
-	movq	PER_CPU_VAR(8(%rsi)), %rdx
+	movq	%gs:(%rsi), %rax
+	movq	%gs:8(%rsi), %rdx
 
 	/* clear ZF in EFLAGS to indicate failure */
 	andl	$(~X86_EFLAGS_ZF), (%rsp)
diff --git a/arch/x86/lib/cmpxchg8b_emu.S b/arch/x86/lib/cmpxchg8b_emu.S
index 49805257b125..b7d68d5e2d31 100644
--- a/arch/x86/lib/cmpxchg8b_emu.S
+++ b/arch/x86/lib/cmpxchg8b_emu.S
@@ -24,12 +24,12 @@ SYM_FUNC_START(cmpxchg8b_emu)
 	pushfl
 	cli
 
-	cmpl	0(%esi), %eax
+	cmpl	(%esi), %eax
 	jne	.Lnot_same
 	cmpl	4(%esi), %edx
 	jne	.Lnot_same
 
-	movl	%ebx, 0(%esi)
+	movl	%ebx, (%esi)
 	movl	%ecx, 4(%esi)
 
 	orl	$X86_EFLAGS_ZF, (%esp)
@@ -38,7 +38,7 @@ SYM_FUNC_START(cmpxchg8b_emu)
 	RET
 
 .Lnot_same:
-	movl	0(%esi), %eax
+	movl	(%esi), %eax
 	movl	4(%esi), %edx
 
 	andl	$(~X86_EFLAGS_ZF), (%esp)
@@ -53,18 +53,30 @@ EXPORT_SYMBOL(cmpxchg8b_emu)
 
 #ifndef CONFIG_UML
 
+/*
+ * Emulate 'cmpxchg8b %fs:(%esi)'
+ *
+ * Inputs:
+ * %esi : memory location to compare
+ * %eax : low 32 bits of old value
+ * %edx : high 32 bits of old value
+ * %ebx : low 32 bits of new value
+ * %ecx : high 32 bits of new value
+ *
+ * Notably this is not LOCK prefixed and is not safe against NMIs
+ */
 SYM_FUNC_START(this_cpu_cmpxchg8b_emu)
 
 	pushfl
 	cli
 
-	cmpl	PER_CPU_VAR(0(%esi)), %eax
+	cmpl	%fs:(%esi), %eax
 	jne	.Lnot_same2
-	cmpl	PER_CPU_VAR(4(%esi)), %edx
+	cmpl	%fs:4(%esi), %edx
 	jne	.Lnot_same2
 
-	movl	%ebx, PER_CPU_VAR(0(%esi))
-	movl	%ecx, PER_CPU_VAR(4(%esi))
+	movl	%ebx, %fs:(%esi)
+	movl	%ecx, %fs:4(%esi)
 
 	orl	$X86_EFLAGS_ZF, (%esp)
 
@@ -72,8 +84,8 @@ SYM_FUNC_START(this_cpu_cmpxchg8b_emu)
 	RET
 
 .Lnot_same2:
-	movl	PER_CPU_VAR(0(%esi)), %eax
-	movl	PER_CPU_VAR(4(%esi)), %edx
+	movl	%fs:(%esi), %eax
+	movl	%fs:4(%esi), %edx
 
 	andl	$(~X86_EFLAGS_ZF), (%esp)
 
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Thu Oct 12 16:12:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 16:12:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615914.957457 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqyIs-0003CR-UR; Thu, 12 Oct 2023 16:12:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615914.957457; Thu, 12 Oct 2023 16:12: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 1qqyIs-0003BY-RI; Thu, 12 Oct 2023 16:12:50 +0000
Received: by outflank-mailman (input) for mailman id 615914;
 Thu, 12 Oct 2023 16:12: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=Qqh1=F2=gmail.com=ubizjak@srs-se1.protection.inumbo.net>)
 id 1qqyIs-00039J-0i
 for xen-devel@lists.xenproject.org; Thu, 12 Oct 2023 16:12:50 +0000
Received: from mail-ej1-x629.google.com (mail-ej1-x629.google.com
 [2a00:1450:4864:20::629])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 2f5c8eee-691a-11ee-9b0e-b553b5be7939;
 Thu, 12 Oct 2023 18:12:48 +0200 (CEST)
Received: by mail-ej1-x629.google.com with SMTP id
 a640c23a62f3a-9ad8a822508so192351966b.0
 for <xen-devel@lists.xenproject.org>; Thu, 12 Oct 2023 09:12:48 -0700 (PDT)
Received: from localhost.localdomain ([46.248.82.114])
 by smtp.gmail.com with ESMTPSA id
 ci24-20020a170906c35800b009a2235ed496sm11414461ejb.141.2023.10.12.09.12.46
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Thu, 12 Oct 2023 09:12: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: 2f5c8eee-691a-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1697127167; x=1697731967; 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=m324SzpB4tRrNifTcRyeznzQLigWiB6PcnuW2+zuICA=;
        b=NLxdhPFzKozxRqzCDwaBPDK5+ciYKuuU5fKrbY5WLqxhGLJ+M517ca1JaaVw/BoelN
         2RY4VibWkvkD5fRr03aEjFo7RzismvQDu1/aYA7+QQaOTKIx08PuLWHG4nj4kOdeB73T
         wMIwOvSqMNeuZBEk2EXbJyWRrNu+y2XtgvG7pXLUHmb1IphPUcHdu7yWYmcZVQa8UhF5
         aXHHR8yE8QhB/CdEsejgYefwZfLyvKzvLr40MJ3jBAEfYoBlLfBB2pb4evLTo4B1GE4V
         Z7M6Q1+IjzTWchZlI2zJ4+F1Z+0lXHpZB1voBQh14t8GR54NwWomNMfd7+fZzBYwv4Dk
         yDbw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697127167; x=1697731967;
        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=m324SzpB4tRrNifTcRyeznzQLigWiB6PcnuW2+zuICA=;
        b=B9L8/g7Xhg3cCmRulQ4/uiqa11ZuB0BsSmnP3M7S0dIBfTCR9yQNwnmAyyvtXy2cC2
         Rcj3arDZrZyklWQyUQFERgyEPiKFTY9yOQ/BVx368Khgpfny67bPyhaNgA0dvrx6AOxy
         vpqLqOiZEo28UxlyhKoCDcXEd/XC9WJ5yrp54OcM86hPJ1MvQxUD9ocxSjpMhV8SQNpS
         PeQt7hQGiPO3/OiJTcQ24grCAP7zh3cykMzA3JIrDeib/4/R7pmeAPwz67jwixdBAxTw
         GZO/2z1dDxcB2fUQTVs8C3VS8ea5DAQZJCA7KZbGRUJhLZkRltd/hSDNjI3lmmJbu8m3
         mclw==
X-Gm-Message-State: AOJu0YwphKpq9gPJXw+DFSeykrL1kJjGqKEaejMZt84nT2TUKv10hgPe
	FvKenAsnmGPTtmrIgJvOXF8=
X-Google-Smtp-Source: AGHT+IG3OATQwvAdDylZaY+NQE8rIqD1qHAB+PgGQkf9k1iPsawqa69X3y4KQT9BWLEr8K6NDqfqoQ==
X-Received: by 2002:a17:906:290:b0:9b2:89eb:79b5 with SMTP id 16-20020a170906029000b009b289eb79b5mr24236684ejf.35.1697127167247;
        Thu, 12 Oct 2023 09:12:47 -0700 (PDT)
From: Uros Bizjak <ubizjak@gmail.com>
To: x86@kernel.org,
	xen-devel@lists.xenproject.org,
	linux-kernel@vger.kernel.org
Cc: Uros Bizjak <ubizjak@gmail.com>,
	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>
Subject: [PATCH 0/4]  [PATCH 0/4] Introduce %rip-relative addressing to PER_CPU_VAR macro
Date: Thu, 12 Oct 2023 18:10:35 +0200
Message-ID: <20231012161237.114733-1-ubizjak@gmail.com>
X-Mailer: git-send-email 2.41.0
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The following patch series introduces %rip-relative addressing to
PER_CPU_VAR macro. Instruction with %rip-relative address operand is
one byte shorter than its absolute address counterpart and is also
compatible with position independent executable (-fpie) build.

The first three patches are cleanups that fix various inconsistencies
throughout the assembly code.

The last patch introduces (%rip) suffix and uses it for x86_64 target,
resulting in a small code size decrease:

   text    data     bss     dec     hex filename
25510677        4386685  808388 30705750        1d48856 vmlinux-new.o
25510629        4386685  808388 30705702        1d48826 vmlinux-old.o

Patch series is against current mainline and can be applied independently
of the ongoing percpu work.

Cc: Juergen Gross <jgross@suse.com>
Cc: Boris Ostrovsky <boris.ostrovsky@oracle.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: Borislav Petkov <bp@alien8.de>
Cc: Dave Hansen <dave.hansen@linux.intel.com>
Cc: "H. Peter Anvin" <hpa@zytor.com>

Uros Bizjak (4):
  x86/percpu: Use explicit segment registers in lib/cmpxchg{8,16}b_emu.S
  x86/percpu: Correct PER_CPU_VAR usage to include symbol and its addend
  x86/percpu, xen: Correct PER_CPU_VAR usage to include symbol and its
    addend
  x86/percpu: Introduce %rip-relative addressing to PER_CPU_VAR macro

 arch/x86/entry/calling.h      |  2 +-
 arch/x86/entry/entry_32.S     |  2 +-
 arch/x86/entry/entry_64.S     |  2 +-
 arch/x86/include/asm/percpu.h |  6 ++++--
 arch/x86/kernel/head_64.S     |  2 +-
 arch/x86/lib/cmpxchg16b_emu.S | 12 ++++++------
 arch/x86/lib/cmpxchg8b_emu.S  | 30 +++++++++++++++++++++---------
 arch/x86/xen/xen-asm.S        | 10 +++++-----
 8 files changed, 40 insertions(+), 26 deletions(-)

-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Thu Oct 12 16:12:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 16:12:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615916.957483 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqyIv-0003sN-Do; Thu, 12 Oct 2023 16:12:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615916.957483; Thu, 12 Oct 2023 16:12: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 1qqyIv-0003sA-Az; Thu, 12 Oct 2023 16:12:53 +0000
Received: by outflank-mailman (input) for mailman id 615916;
 Thu, 12 Oct 2023 16:12: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=Qqh1=F2=gmail.com=ubizjak@srs-se1.protection.inumbo.net>)
 id 1qqyIt-00039I-Dk
 for xen-devel@lists.xenproject.org; Thu, 12 Oct 2023 16:12:51 +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 307d2589-691a-11ee-98d4-6d05b1d4d9a1;
 Thu, 12 Oct 2023 18:12:50 +0200 (CEST)
Received: by mail-ej1-x632.google.com with SMTP id
 a640c23a62f3a-9b9a494cc59so174209566b.3
 for <xen-devel@lists.xenproject.org>; Thu, 12 Oct 2023 09:12:50 -0700 (PDT)
Received: from localhost.localdomain ([46.248.82.114])
 by smtp.gmail.com with ESMTPSA id
 ci24-20020a170906c35800b009a2235ed496sm11414461ejb.141.2023.10.12.09.12.48
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Thu, 12 Oct 2023 09:12: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: 307d2589-691a-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1697127169; x=1697731969; 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=yNuYyWEUkCBUvaAXEq0aoPImcZWnaX/wCmiSUbk6m0g=;
        b=eo5fxUe36dZDhzGMveObrzDeK18Eoy2+TmAeOndTr/74I429kXOAspj+zacEYAxfvm
         6np6W3dAVTa6Ih0g9c2VZYZf/8zER8PdBXXdQF8/YxvJhIpIbzGp9rIkrWeNkL/uhTSO
         NqB+RSkARdbbTwPSv98dqTfVcpgdTaWIOxl22CpINR2E0H9XEGN+RASdDyPFWPFJXzxI
         QkBhZ8B4okjiNXe5ZABceuPPid45PqjYc+D3Nnl0kWpRUnb5/AKhIAugPJNPIIbH3ZWd
         FmTLQvtFxDygHpnafJaqBeMpVKlxBIFt6ZcQi7jnEhtJjd4pEOjWLG4a33EMmyPgy8Gz
         XvCA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697127169; x=1697731969;
        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=yNuYyWEUkCBUvaAXEq0aoPImcZWnaX/wCmiSUbk6m0g=;
        b=MgWtAjHDKdphfCPI0qH1j2MG6iOinOsbevhfr7LRHxz7erV7EPpCqQmFFgG637g9fv
         kRakPgxCT74EMT/8nW5lTiQ4NZuKNuiJxpHvNMcHFSSm8rSrG43DO5hD+YwOek2JINJa
         pf/EpbomZjzP9e8cWwjzh4BT45QpOuLFax4QV9cLK33afJhoxobAMM3nBLyrJNOqHrdP
         T+BqhrwukjIAVr01srm3ENNyX327oVmN3wuYLj37+pbvhnmXjalbv+A987CmTSjZjLLR
         24N9FeLQdvfUceNuM5Cvwtt+BzafrPukkCfMNQAuUd4uAHVFd63A1JHeBsqGfdkonnUW
         Hb8w==
X-Gm-Message-State: AOJu0YwQcQDDwpT99dmAsO2s/B18O3RBMwXwR3iehsna4nEpto/ZIOqx
	UxNQkrjQsac9CLzNizyiCQ0=
X-Google-Smtp-Source: AGHT+IGx9PkHoJpnehpt9pu+WFKAxecc4I9gQHgLxLDfU4O7a5NswxaCFNLbcJfvXgFPcLDWLdekjw==
X-Received: by 2002:a17:906:218:b0:9ba:2b14:44f2 with SMTP id 24-20020a170906021800b009ba2b1444f2mr10518666ejd.73.1697127169365;
        Thu, 12 Oct 2023 09:12:49 -0700 (PDT)
From: Uros Bizjak <ubizjak@gmail.com>
To: x86@kernel.org,
	xen-devel@lists.xenproject.org,
	linux-kernel@vger.kernel.org
Cc: Uros Bizjak <ubizjak@gmail.com>,
	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>
Subject: [PATCH 3/4] x86/percpu, xen: Correct PER_CPU_VAR usage to include symbol and its addend
Date: Thu, 12 Oct 2023 18:10:38 +0200
Message-ID: <20231012161237.114733-4-ubizjak@gmail.com>
X-Mailer: git-send-email 2.41.0
In-Reply-To: <20231012161237.114733-1-ubizjak@gmail.com>
References: <20231012161237.114733-1-ubizjak@gmail.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

PER_CPU_VAR macro should be applied to a symbol and its addend.
Inconsisten usage is currently harmless, but needs to be corrected
before %rip-relative addressing is introduced to PER_CPU_VAR macro.

No functional changes intended.

Cc: Juergen Gross <jgross@suse.com>
Cc: Boris Ostrovsky <boris.ostrovsky@oracle.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: Borislav Petkov <bp@alien8.de>
Cc: Dave Hansen <dave.hansen@linux.intel.com>
Cc: "H. Peter Anvin" <hpa@zytor.com>
Signed-off-by: Uros Bizjak <ubizjak@gmail.com>
---
 arch/x86/xen/xen-asm.S | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/arch/x86/xen/xen-asm.S b/arch/x86/xen/xen-asm.S
index 9e5e68008785..448958ddbaf8 100644
--- a/arch/x86/xen/xen-asm.S
+++ b/arch/x86/xen/xen-asm.S
@@ -28,7 +28,7 @@
  * non-zero.
  */
 SYM_FUNC_START(xen_irq_disable_direct)
-	movb $1, PER_CPU_VAR(xen_vcpu_info) + XEN_vcpu_info_mask
+	movb $1, PER_CPU_VAR(xen_vcpu_info + XEN_vcpu_info_mask)
 	RET
 SYM_FUNC_END(xen_irq_disable_direct)
 
@@ -69,7 +69,7 @@ SYM_FUNC_END(check_events)
 SYM_FUNC_START(xen_irq_enable_direct)
 	FRAME_BEGIN
 	/* Unmask events */
-	movb $0, PER_CPU_VAR(xen_vcpu_info) + XEN_vcpu_info_mask
+	movb $0, PER_CPU_VAR(xen_vcpu_info + XEN_vcpu_info_mask)
 
 	/*
 	 * Preempt here doesn't matter because that will deal with any
@@ -78,7 +78,7 @@ SYM_FUNC_START(xen_irq_enable_direct)
 	 */
 
 	/* Test for pending */
-	testb $0xff, PER_CPU_VAR(xen_vcpu_info) + XEN_vcpu_info_pending
+	testb $0xff, PER_CPU_VAR(xen_vcpu_info + XEN_vcpu_info_pending)
 	jz 1f
 
 	call check_events
@@ -97,7 +97,7 @@ SYM_FUNC_END(xen_irq_enable_direct)
  * x86 use opposite senses (mask vs enable).
  */
 SYM_FUNC_START(xen_save_fl_direct)
-	testb $0xff, PER_CPU_VAR(xen_vcpu_info) + XEN_vcpu_info_mask
+	testb $0xff, PER_CPU_VAR(xen_vcpu_info + XEN_vcpu_info_mask)
 	setz %ah
 	addb %ah, %ah
 	RET
@@ -113,7 +113,7 @@ SYM_FUNC_END(xen_read_cr2);
 
 SYM_FUNC_START(xen_read_cr2_direct)
 	FRAME_BEGIN
-	_ASM_MOV PER_CPU_VAR(xen_vcpu_info) + XEN_vcpu_info_arch_cr2, %_ASM_AX
+	_ASM_MOV PER_CPU_VAR(xen_vcpu_info + XEN_vcpu_info_arch_cr2), %_ASM_AX
 	FRAME_END
 	RET
 SYM_FUNC_END(xen_read_cr2_direct);
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Thu Oct 12 16:12:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 16:12:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615917.957488 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqyIv-0003vg-P1; Thu, 12 Oct 2023 16:12:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615917.957488; Thu, 12 Oct 2023 16:12: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 1qqyIv-0003uy-K1; Thu, 12 Oct 2023 16:12:53 +0000
Received: by outflank-mailman (input) for mailman id 615917;
 Thu, 12 Oct 2023 16: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=Qqh1=F2=gmail.com=ubizjak@srs-se1.protection.inumbo.net>)
 id 1qqyIu-00039J-L3
 for xen-devel@lists.xenproject.org; Thu, 12 Oct 2023 16:12:52 +0000
Received: from mail-ej1-x62c.google.com (mail-ej1-x62c.google.com
 [2a00:1450:4864:20::62c])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 311d453e-691a-11ee-9b0e-b553b5be7939;
 Thu, 12 Oct 2023 18:12:51 +0200 (CEST)
Received: by mail-ej1-x62c.google.com with SMTP id
 a640c23a62f3a-991c786369cso186313166b.1
 for <xen-devel@lists.xenproject.org>; Thu, 12 Oct 2023 09:12:51 -0700 (PDT)
Received: from localhost.localdomain ([46.248.82.114])
 by smtp.gmail.com with ESMTPSA id
 ci24-20020a170906c35800b009a2235ed496sm11414461ejb.141.2023.10.12.09.12.49
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Thu, 12 Oct 2023 09:12: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: 311d453e-691a-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1697127170; x=1697731970; 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=vSHi5/2cUoPsahCtfSXb7KL8cBzud0m2fEvRiojl9UE=;
        b=jmLnJTSocAIocPdvkghOiaqt+L/vI15+glJvKXLkTjS64iN4Texl6JxcRW6H79Xaaj
         q/Nsu3oHfdwJ4uA8iIwekgmJz8P02TdIOR8jjQ9wZFdBuXiU+E0kPJOOpSNKBq9RYs9y
         jw440MSkgvnhE9lLaKZ98ijEKpFiSfo0intyL2ezzoujX2DZP3oaaOVHPRDJajd7rEje
         vp3P7U1UAq+xl9WdQTtnEJX9ag57bf6I6L8GZlUx+oi4H3sE61HgUljPVRR3grnw0ktN
         2viL+1ISSzWpUYfg3nfqEijrG3KIqJNtwekgK2BrTYGbEelFKyRbSUv1Oumzcdbb17IB
         nU1Q==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697127170; x=1697731970;
        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=vSHi5/2cUoPsahCtfSXb7KL8cBzud0m2fEvRiojl9UE=;
        b=JPUHBSU+O/W+AwxpL7BJHXbtVjkrkFe17EBPDFclQsiPMbOUuRtfFb/tQqpcUeSLiQ
         lY7mZmAfLeF0XL53J6FvltrYBCfM1hmxeopotQRDJnDxLdu9mQeRTti//5k1xYHQXj0i
         /73Vz2+utptlJ0Tx1RiwKsUlgrZNwxU3AIJ+cpD/AgLQxbL6zcrQgvcJiAye2ol2MCEB
         oeweDhMlHRfaVWXMZbEFvmsVlNacNyH4s68cPs3Bv7n0If0smiA4VEWvQtHrTlbi4ySW
         F/TtihIjLnsriwYGlv5kNg4BcbJAMsuq5hrxh6G+/N5UVeozHFs6LdHi9dcs1MgF3m0Z
         AKKw==
X-Gm-Message-State: AOJu0YzmJ0+gUfNDp0pLZ7b7NX4P5o3iUIJsUezCmRytABXvzwvDK4Px
	ZSAwXypcjBwx4dxSW9v2Kc0=
X-Google-Smtp-Source: AGHT+IFpYi1blV2KJsYt/+b2deArMIbm7cJzAsEuhn9TEMfBcKQAcEqKVR0HJV8k5hdf8tw21y1uTg==
X-Received: by 2002:a17:906:76cf:b0:9b7:303b:1ecb with SMTP id q15-20020a17090676cf00b009b7303b1ecbmr22078486ejn.61.1697127170254;
        Thu, 12 Oct 2023 09:12:50 -0700 (PDT)
From: Uros Bizjak <ubizjak@gmail.com>
To: x86@kernel.org,
	xen-devel@lists.xenproject.org,
	linux-kernel@vger.kernel.org
Cc: Uros Bizjak <ubizjak@gmail.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>,
	Peter Zijlstra <peterz@infradead.org>
Subject: [PATCH 4/4] x86/percpu: Introduce %rip-relative addressing to PER_CPU_VAR macro
Date: Thu, 12 Oct 2023 18:10:39 +0200
Message-ID: <20231012161237.114733-5-ubizjak@gmail.com>
X-Mailer: git-send-email 2.41.0
In-Reply-To: <20231012161237.114733-1-ubizjak@gmail.com>
References: <20231012161237.114733-1-ubizjak@gmail.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Introduce x86_64 %rip-relative addressing to PER_CPU_VAR macro.
Instruction with %rip-relative address operand is one byte shorter than
its absolute address counterpart and is also compatible with position
independent executable (-fpie) build.

Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: Borislav Petkov <bp@alien8.de>
Cc: Dave Hansen <dave.hansen@linux.intel.com>
Cc: "H. Peter Anvin" <hpa@zytor.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Signed-off-by: Uros Bizjak <ubizjak@gmail.com>
---
 arch/x86/include/asm/percpu.h | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/arch/x86/include/asm/percpu.h b/arch/x86/include/asm/percpu.h
index 34734d730463..9a5f1896c5ef 100644
--- a/arch/x86/include/asm/percpu.h
+++ b/arch/x86/include/asm/percpu.h
@@ -4,16 +4,18 @@
 
 #ifdef CONFIG_X86_64
 #define __percpu_seg		gs
+#define __percpu_rel		(%rip)
 #else
 #define __percpu_seg		fs
+#define __percpu_rel
 #endif
 
 #ifdef __ASSEMBLY__
 
 #ifdef CONFIG_SMP
-#define PER_CPU_VAR(var)	%__percpu_seg:var
+#define PER_CPU_VAR(var)	%__percpu_seg:(var)##__percpu_rel
 #else /* ! SMP */
-#define PER_CPU_VAR(var)	var
+#define PER_CPU_VAR(var)	(var)##__percpu_rel
 #endif	/* SMP */
 
 #ifdef CONFIG_X86_64_SMP
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Thu Oct 12 16:12:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 16:12:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615915.957472 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqyIu-0003d8-5E; Thu, 12 Oct 2023 16:12:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615915.957472; Thu, 12 Oct 2023 16: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 1qqyIu-0003d1-2X; Thu, 12 Oct 2023 16:12:52 +0000
Received: by outflank-mailman (input) for mailman id 615915;
 Thu, 12 Oct 2023 16:12: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=Qqh1=F2=gmail.com=ubizjak@srs-se1.protection.inumbo.net>)
 id 1qqyIs-00039I-DY
 for xen-devel@lists.xenproject.org; Thu, 12 Oct 2023 16:12:50 +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 2ffdc354-691a-11ee-98d4-6d05b1d4d9a1;
 Thu, 12 Oct 2023 18:12:49 +0200 (CEST)
Received: by mail-ej1-x634.google.com with SMTP id
 a640c23a62f3a-99c3c8adb27so185611266b.1
 for <xen-devel@lists.xenproject.org>; Thu, 12 Oct 2023 09:12:49 -0700 (PDT)
Received: from localhost.localdomain ([46.248.82.114])
 by smtp.gmail.com with ESMTPSA id
 ci24-20020a170906c35800b009a2235ed496sm11414461ejb.141.2023.10.12.09.12.48
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Thu, 12 Oct 2023 09:12: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: 2ffdc354-691a-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1697127168; x=1697731968; 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=hDMSEbE6Ie84T5BkOrHBUuyCR3ToRtFXIBnMpzsN9Bo=;
        b=hn8MyaatYHscqsveVfaTn48fml4MZnlVKcZ80z2VgUhQWJUTsnnJL74jCSa0gd7zuR
         A2gPZyN7S+JY7RlcuV+Htk4qmLcw4wx4suaaJqs8v2qejhLfSe+vhvt07z54zGq8rKPW
         y4GzQDR324Ki6hI+dV3zlJXjH5X4c+FrV5DXRD6a2ajQuCJ9A9MKHMbxVw48KkOUkfbn
         fyUku6nCaX/40rJgrtG4CcZS4VUYPOsl02dWjZvEOUtaB03h8u5Mm/cRmiPF0vDGbcCL
         XzGizY0S7gLpHO9KIO4ICexVNEAbOn1KckQ+t4vT8p1azbs4XDZEJVzC2At+FPZBNms8
         /BaQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697127168; x=1697731968;
        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=hDMSEbE6Ie84T5BkOrHBUuyCR3ToRtFXIBnMpzsN9Bo=;
        b=vH8fN9ikea+xZ9636kIBXP+bZw68ml5KQskTC5uL7QXV5hZQnc1S/VW5481ByjKz8U
         qsMOsrUs6l/5z2DPL+Y1zNNYzA6X6261QWqgi+zAfUMiieC/G8KNtXaSZqy5jxPcnb5/
         nU7feWyfe/3eS1U08EvF+L2uCi8DnS38dwf9HVIrYvkBX3ohfeef2mdr7WaB4cqguCSx
         ALficSmoOxlX+Do9rsHnWWi9eG74Dmmvtc/o5lmXEH4KqGoxhGZXmSyfwUaetCWYoqCw
         PAQXZVBOntWvyOJm1f2G5/BQkndPIORASiRCSPnbXrLI5wimaOyr45lmErOZbAB7I9gw
         s1vQ==
X-Gm-Message-State: AOJu0YwuT7DR+sn20TgV332wsEOxYiH8G2YL8V2rX75DgdZrXwaSEh52
	nA2vTNeV9pUJ56aP4EOg1SQ=
X-Google-Smtp-Source: AGHT+IEJe39mReMmuqoI7tLyKV8yCFM2VE+XW0dysIJl/d8IcLEFQpg5Cv5p2IFg4LrOKeuqQ65l1Q==
X-Received: by 2002:a17:906:2d1:b0:9b2:b765:8802 with SMTP id 17-20020a17090602d100b009b2b7658802mr24346581ejk.40.1697127168624;
        Thu, 12 Oct 2023 09:12:48 -0700 (PDT)
From: Uros Bizjak <ubizjak@gmail.com>
To: x86@kernel.org,
	xen-devel@lists.xenproject.org,
	linux-kernel@vger.kernel.org
Cc: Uros Bizjak <ubizjak@gmail.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>,
	Peter Zijlstra <peterz@infradead.org>
Subject: [PATCH 2/4] x86/percpu: Correct PER_CPU_VAR usage to include symbol and its addend
Date: Thu, 12 Oct 2023 18:10:37 +0200
Message-ID: <20231012161237.114733-3-ubizjak@gmail.com>
X-Mailer: git-send-email 2.41.0
In-Reply-To: <20231012161237.114733-1-ubizjak@gmail.com>
References: <20231012161237.114733-1-ubizjak@gmail.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

PER_CPU_VAR macro should be applied to a symbol and its addend.
Inconsistent usage is currently harmless, but needs to be corrected
before %rip-relative addressing is introduced to PER_CPU_VAR macro.

No functional changes intended.

Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: Borislav Petkov <bp@alien8.de>
Cc: Dave Hansen <dave.hansen@linux.intel.com>
Cc: "H. Peter Anvin" <hpa@zytor.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Signed-off-by: Uros Bizjak <ubizjak@gmail.com>
---
 arch/x86/entry/calling.h  | 2 +-
 arch/x86/entry/entry_32.S | 2 +-
 arch/x86/entry/entry_64.S | 2 +-
 arch/x86/kernel/head_64.S | 2 +-
 4 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/arch/x86/entry/calling.h b/arch/x86/entry/calling.h
index f6907627172b..47368ab0bda0 100644
--- a/arch/x86/entry/calling.h
+++ b/arch/x86/entry/calling.h
@@ -173,7 +173,7 @@ For 32-bit we have the following conventions - kernel is built with
 .endm
 
 #define THIS_CPU_user_pcid_flush_mask   \
-	PER_CPU_VAR(cpu_tlbstate) + TLB_STATE_user_pcid_flush_mask
+	PER_CPU_VAR(cpu_tlbstate + TLB_STATE_user_pcid_flush_mask)
 
 .macro SWITCH_TO_USER_CR3_NOSTACK scratch_reg:req scratch_reg2:req
 	ALTERNATIVE "jmp .Lend_\@", "", X86_FEATURE_PTI
diff --git a/arch/x86/entry/entry_32.S b/arch/x86/entry/entry_32.S
index 6e6af42e044a..d4e094b2c877 100644
--- a/arch/x86/entry/entry_32.S
+++ b/arch/x86/entry/entry_32.S
@@ -305,7 +305,7 @@
 .macro CHECK_AND_APPLY_ESPFIX
 #ifdef CONFIG_X86_ESPFIX32
 #define GDT_ESPFIX_OFFSET (GDT_ENTRY_ESPFIX_SS * 8)
-#define GDT_ESPFIX_SS PER_CPU_VAR(gdt_page) + GDT_ESPFIX_OFFSET
+#define GDT_ESPFIX_SS PER_CPU_VAR(gdt_page + GDT_ESPFIX_OFFSET)
 
 	ALTERNATIVE	"jmp .Lend_\@", "", X86_BUG_ESPFIX
 
diff --git a/arch/x86/entry/entry_64.S b/arch/x86/entry/entry_64.S
index 43606de22511..3d6770b87b87 100644
--- a/arch/x86/entry/entry_64.S
+++ b/arch/x86/entry/entry_64.S
@@ -252,7 +252,7 @@ SYM_FUNC_START(__switch_to_asm)
 
 #ifdef CONFIG_STACKPROTECTOR
 	movq	TASK_stack_canary(%rsi), %rbx
-	movq	%rbx, PER_CPU_VAR(fixed_percpu_data) + FIXED_stack_canary
+	movq	%rbx, PER_CPU_VAR(fixed_percpu_data + FIXED_stack_canary)
 #endif
 
 	/*
diff --git a/arch/x86/kernel/head_64.S b/arch/x86/kernel/head_64.S
index ea6995920b7a..bfe5ec2f4f83 100644
--- a/arch/x86/kernel/head_64.S
+++ b/arch/x86/kernel/head_64.S
@@ -449,7 +449,7 @@ SYM_CODE_START(soft_restart_cpu)
 	UNWIND_HINT_END_OF_STACK
 
 	/* Find the idle task stack */
-	movq	PER_CPU_VAR(pcpu_hot) + X86_current_task, %rcx
+	movq	PER_CPU_VAR(pcpu_hot + X86_current_task), %rcx
 	movq	TASK_threadsp(%rcx), %rsp
 
 	jmp	.Ljump_to_C_code
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Thu Oct 12 16:40:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 16:40:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615939.957502 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqyjI-0002Nb-3o; Thu, 12 Oct 2023 16:40:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615939.957502; Thu, 12 Oct 2023 16: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 1qqyjI-0002NU-1F; Thu, 12 Oct 2023 16:40:08 +0000
Received: by outflank-mailman (input) for mailman id 615939;
 Thu, 12 Oct 2023 16:40: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 1qqyjG-0002N1-En; Thu, 12 Oct 2023 16:40: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 1qqyjG-0003pw-Bz; Thu, 12 Oct 2023 16:40: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 1qqyjF-0004I9-Vy; Thu, 12 Oct 2023 16:40:06 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qqyjF-0003Vt-VY; Thu, 12 Oct 2023 16:40: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=rEUQyYVfqsD34QYBsLldDlvKAClUMhMljrVdTuzD3Bg=; b=jfoh4jDY030MQm9lywXhwpBbld
	7bGNxhjy+Sk2ib4f5gSJpyIxGEeXas/Tdvlp6h9s5IyJX9hyb95zQrFS1eJIrA8Lmzheu6tuiEApL
	bBSCz+2HzPdCHc+5bqCvLgJPcHJGRj/CNerxTk1e40eOHDvFTZ6BUeGXvbsqIW/77Rck=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183351-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [libvirt test] 183351: 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:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt:saverestore-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-amd64-libvirt-vhd:migrate-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-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=8eb09a2bb984f3550cc87074e57841b86be39601
X-Osstest-Versions-That:
    libvirt=bb673117d5823030a47dda70712bafbf62fe302a
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 12 Oct 2023 16:40:05 +0000

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

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183338
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183338
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183338
 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     15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt     16 saverestore-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-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-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              8eb09a2bb984f3550cc87074e57841b86be39601
baseline version:
 libvirt              bb673117d5823030a47dda70712bafbf62fe302a

Last test of basis   183338  2023-10-11 04:20:42 Z    1 days
Testing same since   183351  2023-10-12 04:18:45 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Erik Skultety <eskultet@redhat.com>
  Sergey Mironov <mironov@fintech.ru>

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
   bb673117d5..8eb09a2bb9  8eb09a2bb984f3550cc87074e57841b86be39601 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Thu Oct 12 17:26:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 17:26:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615949.957533 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqzRy-0001xM-U9; Thu, 12 Oct 2023 17:26:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615949.957533; Thu, 12 Oct 2023 17:26: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 1qqzRy-0001xF-RO; Thu, 12 Oct 2023 17:26:18 +0000
Received: by outflank-mailman (input) for mailman id 615949;
 Thu, 12 Oct 2023 17:26: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=K032=F2=cloud.com=alejandro.vallejo@srs-se1.protection.inumbo.net>)
 id 1qqzRw-0001Tc-TU
 for xen-devel@lists.xenproject.org; Thu, 12 Oct 2023 17:26:16 +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 72533c5b-6924-11ee-98d4-6d05b1d4d9a1;
 Thu, 12 Oct 2023 19:26:15 +0200 (CEST)
Received: by mail-ej1-x62d.google.com with SMTP id
 a640c23a62f3a-9b275afb6abso504690066b.1
 for <xen-devel@lists.xenproject.org>; Thu, 12 Oct 2023 10:26:15 -0700 (PDT)
Received: from EMEAENGAAD19049.citrite.net
 (default-46-102-197-194.interdsl.co.uk. [46.102.197.194])
 by smtp.gmail.com with ESMTPSA id
 c27-20020a17090603db00b009829d2e892csm11522697eja.15.2023.10.12.10.26.14
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Thu, 12 Oct 2023 10:26: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: 72533c5b-6924-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1697131575; x=1697736375; 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=PHonUX6qskc9LU/MXpGEpaoXVXfgW0/B6Ythy10CTCA=;
        b=S6fKjYO9qaLEy0hA4GbQ5dRdITEUgS7niOVT6/aF7VaQHD41GJYY14OM856SYqgMh2
         rN9Y75kSU9ZT7zG+JvpzYTsFwym3O0OOWABci/K4YJruVERpytLt3mYLcJnC3GtnVACI
         PlZCk+V3wj45ySJbXDGFOSFmsao4QVstBbw0k=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697131575; x=1697736375;
        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=PHonUX6qskc9LU/MXpGEpaoXVXfgW0/B6Ythy10CTCA=;
        b=P3m0ef1oittp9NCKX0N8icUVpVTGbURHcBnuK4wgVw/IYkSS5sMPL+ssfLAnw3jsoo
         Y678yPtGM4n56Wacoo8dAfp5G7uUPwR7F7V2mfGhEGHtRWn85GbBT+cz3n8phdgSrP9b
         hMJ4ur39k92rKRKRhm7cC5Z2aFExwLbaqt85isd1ZuIuCYNCo14k460z2IIq1XsZs7kL
         EObZNto2iT1YWIHf+2LV0QezUlyoFwjXeaVQhTlUqW0tRIslqCuMljXrwheLDDzcxHF+
         dK3KDrWUWNEYD3icamdJXki1fE5wdKdDrphKF5eJYBpmb59c2J9h54HAh1nejTMxnNOu
         VNQA==
X-Gm-Message-State: AOJu0Yzm9akC17CAlKoT/7dNd9EPBh3Wk26W/QPXp7Tjc6qaTaDuUOS5
	SijZkO2D0rw6S0Fd9wxdVTjo5gHA5ErUJwoAZa0=
X-Google-Smtp-Source: AGHT+IG0DlS7JEKfVHkAj3AyveqIG+PLDvU2Kj8UbESfWVaf/EtRySDFGTifCMBpejk5ttc8LmMKFA==
X-Received: by 2002:a17:906:3b8d:b0:9b2:b808:6a1c with SMTP id u13-20020a1709063b8d00b009b2b8086a1cmr20519203ejf.35.1697131574775;
        Thu, 12 Oct 2023 10:26:14 -0700 (PDT)
From: Alejandro Vallejo <alejandro.vallejo@cloud.com>
To: Xen-devel <xen-devel@lists.xenproject.org>
Cc: Alejandro Vallejo <alejandro.vallejo@cloud.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: [for-4.18][PATCH 2/2] x86/amd: Prevent potentially fetching wrong instruction bytes on Zen4
Date: Thu, 12 Oct 2023 18:26:01 +0100
Message-Id: <20231012172601.22600-3-alejandro.vallejo@cloud.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20231012172601.22600-1-alejandro.vallejo@cloud.com>
References: <20231012172601.22600-1-alejandro.vallejo@cloud.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

If Zen4 runs with SMT and without STIBP, then it may corrupt its own code
stream. This is erratum #1485 in the AMD specs.

Fix adapted off Linux's mailing list:
  https://lore.kernel.org/lkml/D99589F4-BC5D-430B-87B2-72C20370CF57@exactcode.com/T/#u

Signed-off-by: Alejandro Vallejo <alejandro.vallejo@cloud.com>
---
 xen/arch/x86/cpu/amd.c               | 11 +++++++++++
 xen/arch/x86/include/asm/amd.h       |  8 ++++++++
 xen/arch/x86/include/asm/msr-index.h |  2 ++
 3 files changed, 21 insertions(+)

diff --git a/xen/arch/x86/cpu/amd.c b/xen/arch/x86/cpu/amd.c
index 22aa8c0085..2426e4cf15 100644
--- a/xen/arch/x86/cpu/amd.c
+++ b/xen/arch/x86/cpu/amd.c
@@ -1166,6 +1166,17 @@ static void cf_check init_amd(struct cpuinfo_x86 *c)
 	if (c->x86 == 0x10)
 		__clear_bit(X86_FEATURE_MONITOR, c->x86_capability);
 
+	/*
+	 * Erratum #1485: Outdated microcode on Zen4 may cause corruption
+	 * in the code stream if SMT is enabled and STIBP is not. The fix
+	 * is cheap, so it's applied irrespective of the loaded microcode.
+	 */
+	if (!cpu_has_hypervisor && is_zen4_uarch()) {
+		rdmsrl(MSR_AMD64_BP_CFG, value);
+		wrmsrl(MSR_AMD64_BP_CFG,
+		       value | AMD64_BP_CFG_SHARED_BTB_FIX);
+	}
+
 	if (!cpu_has_amd_erratum(c, AMD_ERRATUM_121))
 		opt_allow_unsafe = 1;
 	else if (opt_allow_unsafe < 0)
diff --git a/xen/arch/x86/include/asm/amd.h b/xen/arch/x86/include/asm/amd.h
index 5a40bcc2ba..7d18f7c66b 100644
--- a/xen/arch/x86/include/asm/amd.h
+++ b/xen/arch/x86/include/asm/amd.h
@@ -145,12 +145,20 @@
  * Hygon (Fam18h) but without simple model number rules.  Instead, use STIBP
  * as a heuristic that distinguishes the two.
  *
+ * Zen3 and Zen4 are easier to spot by model number, but it's still not a
+ * single range. We use AutoIBRS to to discriminate instead, as that's a
+ * Zen4-specific feature.
+ *
  * The caller is required to perform the appropriate vendor check first.
  */
 #define is_zen1_uarch() ((boot_cpu_data.x86 == 0x17 || boot_cpu_data.x86 == 0x18) && \
                          !boot_cpu_has(X86_FEATURE_AMD_STIBP))
 #define is_zen2_uarch() (boot_cpu_data.x86 == 0x17 && \
                          boot_cpu_has(X86_FEATURE_AMD_STIBP))
+#define is_zen3_uarch() (boot_cpu_data.x86 == 0x19 && \
+                         !boot_cpu_has(X86_FEATURE_AUTO_IBRS))
+#define is_zen4_uarch() (boot_cpu_data.x86 == 0x19 && \
+                         boot_cpu_has(X86_FEATURE_AUTO_IBRS))
 
 struct cpuinfo_x86;
 int cpu_has_amd_erratum(const struct cpuinfo_x86 *, int, ...);
diff --git a/xen/arch/x86/include/asm/msr-index.h b/xen/arch/x86/include/asm/msr-index.h
index 11ffed543a..4437e8a63e 100644
--- a/xen/arch/x86/include/asm/msr-index.h
+++ b/xen/arch/x86/include/asm/msr-index.h
@@ -403,6 +403,8 @@
 #define MSR_AMD64_DE_CFG		0xc0011029
 #define AMD64_DE_CFG_LFENCE_SERIALISE	(_AC(1, ULL) << 1)
 #define MSR_AMD64_EX_CFG		0xc001102c
+#define MSR_AMD64_BP_CFG		0xc001102e
+#define AMD64_BP_CFG_SHARED_BTB_FIX	(_AC(1, ULL) << 5)
 #define MSR_AMD64_DE_CFG2		0xc00110e3
 
 #define MSR_AMD64_DR0_ADDRESS_MASK	0xc0011027
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Thu Oct 12 17:26:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 17:26:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615948.957522 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqzRx-0001if-NF; Thu, 12 Oct 2023 17:26:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615948.957522; Thu, 12 Oct 2023 17:26: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 1qqzRx-0001iY-KW; Thu, 12 Oct 2023 17:26:17 +0000
Received: by outflank-mailman (input) for mailman id 615948;
 Thu, 12 Oct 2023 17:26: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=K032=F2=cloud.com=alejandro.vallejo@srs-se1.protection.inumbo.net>)
 id 1qqzRv-0001Tc-U3
 for xen-devel@lists.xenproject.org; Thu, 12 Oct 2023 17:26:15 +0000
Received: from mail-ej1-x62f.google.com (mail-ej1-x62f.google.com
 [2a00:1450:4864:20::62f])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 71d2dda0-6924-11ee-98d4-6d05b1d4d9a1;
 Thu, 12 Oct 2023 19:26:14 +0200 (CEST)
Received: by mail-ej1-x62f.google.com with SMTP id
 a640c23a62f3a-9ad8a822508so204624866b.0
 for <xen-devel@lists.xenproject.org>; Thu, 12 Oct 2023 10:26:14 -0700 (PDT)
Received: from EMEAENGAAD19049.citrite.net
 (default-46-102-197-194.interdsl.co.uk. [46.102.197.194])
 by smtp.gmail.com with ESMTPSA id
 c27-20020a17090603db00b009829d2e892csm11522697eja.15.2023.10.12.10.26.13
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Thu, 12 Oct 2023 10:26: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: 71d2dda0-6924-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1697131574; x=1697736374; 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=uYHV7c90aO56gEQ/yK3mNJoFKYNlYbtCnmi3by1vlgc=;
        b=ZSXcIGPvSi6t2VwdCyqED9PMfrCIbXj0a/qLUZOFTtFUpQXXsLfui1HAU2tAS16maw
         mndIsEoP/7f+YrKnPU93ezNfVng8B1PrvgzzQ8Ukpah9f/T7Ht2r3P7pUoUt/Cxg72vn
         09xp4p/5amWxNHbWArfRt4xD2P0vQMw+bvXWA=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697131574; x=1697736374;
        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=uYHV7c90aO56gEQ/yK3mNJoFKYNlYbtCnmi3by1vlgc=;
        b=NcduBccM/smj45P70LU/g6+1yIJ9QBbj1xTNDJDE/NnbP+MxXL7cuftjtZFgPQeOfs
         z85xeA3d+acBA52egi6KGVaL2xXIDR8RqxPymd5i42xdBwxoeDDvaV3AF+xnWrJ9vTNP
         ymJtjBbmnh3AIz/42EkYnPQdlsvR1MrU3kKp8TvaJrjVtSSWUKVF2jAQp/VAK2JYTZ0U
         HEfUu7LJq85QsEnH2phM4HCWAROFK2knivOUEcJtMvpCOLWNdkiLMb+G6TNRQRDYc6TS
         8hc0TxOWAchmuDuh1+ieOZGgchLxoRTpdmdnvUVDU02qQKPG4SjXIpxkP9CquYgDOk3+
         1ABw==
X-Gm-Message-State: AOJu0Yyo2IogQJdU/weAndB9hk2t47w9UIHoNNCpjlUeYieVuhhGfJ2/
	rMEPlweSmaf7k23OIVDLrEI0ZtTURAlIrDFjozE=
X-Google-Smtp-Source: AGHT+IHRwpZDbak1cbJkyC0ODfF+hHpgBGwY1qDI0jSxs/Tj6PLxWKdj0EN48ydhsaE6q8DDy1FSfw==
X-Received: by 2002:a17:906:290:b0:9b2:89eb:79b5 with SMTP id 16-20020a170906029000b009b289eb79b5mr24435349ejf.35.1697131573891;
        Thu, 12 Oct 2023 10:26:13 -0700 (PDT)
From: Alejandro Vallejo <alejandro.vallejo@cloud.com>
To: Xen-devel <xen-devel@lists.xenproject.org>
Cc: Alejandro Vallejo <alejandro.vallejo@cloud.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: [for-4.18][PATCH 1/2] xen/x86: Add family guards to the is_zen[12]_uarch() macros
Date: Thu, 12 Oct 2023 18:26:00 +0100
Message-Id: <20231012172601.22600-2-alejandro.vallejo@cloud.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20231012172601.22600-1-alejandro.vallejo@cloud.com>
References: <20231012172601.22600-1-alejandro.vallejo@cloud.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

It slightly simplifies the code that uses them at no real cost because the
code is very rarely executed. This makes it harder to confuse zen uarches
due to missing or mistaken family checks.

No functional change intended.

Signed-off-by: Alejandro Vallejo <alejandro.vallejo@cloud.com>
---
 xen/arch/x86/cpu/amd.c         | 5 ++---
 xen/arch/x86/include/asm/amd.h | 9 +++++----
 xen/arch/x86/spec_ctrl.c       | 3 ---
 3 files changed, 7 insertions(+), 10 deletions(-)

diff --git a/xen/arch/x86/cpu/amd.c b/xen/arch/x86/cpu/amd.c
index 4f27187f92..22aa8c0085 100644
--- a/xen/arch/x86/cpu/amd.c
+++ b/xen/arch/x86/cpu/amd.c
@@ -1056,8 +1056,7 @@ static void cf_check init_amd(struct cpuinfo_x86 *c)
 
 	amd_init_ssbd(c);
 
-	if (c->x86 == 0x17)
-		amd_init_spectral_chicken();
+	amd_init_spectral_chicken();
 
 	/* Probe for NSCB on Zen2 CPUs when not virtualised */
 	if (!cpu_has_hypervisor && !cpu_has_nscb && c == &boot_cpu_data &&
@@ -1293,7 +1292,7 @@ static int __init cf_check zen2_c6_errata_check(void)
 	 */
 	s_time_t delta;
 
-	if (cpu_has_hypervisor || boot_cpu_data.x86 != 0x17 || !is_zen2_uarch())
+	if (cpu_has_hypervisor || !is_zen2_uarch())
 		return 0;
 
 	/*
diff --git a/xen/arch/x86/include/asm/amd.h b/xen/arch/x86/include/asm/amd.h
index d862cb7972..5a40bcc2ba 100644
--- a/xen/arch/x86/include/asm/amd.h
+++ b/xen/arch/x86/include/asm/amd.h
@@ -145,11 +145,12 @@
  * 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.
+ * The caller is required to perform the appropriate vendor check first.
  */
-#define is_zen1_uarch() (!boot_cpu_has(X86_FEATURE_AMD_STIBP))
-#define is_zen2_uarch()   boot_cpu_has(X86_FEATURE_AMD_STIBP)
+#define is_zen1_uarch() ((boot_cpu_data.x86 == 0x17 || boot_cpu_data.x86 == 0x18) && \
+                         !boot_cpu_has(X86_FEATURE_AMD_STIBP))
+#define is_zen2_uarch() (boot_cpu_data.x86 == 0x17 && \
+                         boot_cpu_has(X86_FEATURE_AMD_STIBP))
 
 struct cpuinfo_x86;
 int cpu_has_amd_erratum(const struct cpuinfo_x86 *, int, ...);
diff --git a/xen/arch/x86/spec_ctrl.c b/xen/arch/x86/spec_ctrl.c
index 6fd7d44ce4..508c454516 100644
--- a/xen/arch/x86/spec_ctrl.c
+++ b/xen/arch/x86/spec_ctrl.c
@@ -976,9 +976,6 @@ static bool __init has_div_vuln(void)
            (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();
 }
 
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Thu Oct 12 17:26:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 17:26:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615947.957513 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqzRw-0001Tu-GR; Thu, 12 Oct 2023 17:26:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615947.957513; Thu, 12 Oct 2023 17:26: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 1qqzRw-0001Tn-Du; Thu, 12 Oct 2023 17:26:16 +0000
Received: by outflank-mailman (input) for mailman id 615947;
 Thu, 12 Oct 2023 17:26: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=K032=F2=cloud.com=alejandro.vallejo@srs-se1.protection.inumbo.net>)
 id 1qqzRv-0001Tc-LX
 for xen-devel@lists.xenproject.org; Thu, 12 Oct 2023 17:26:15 +0000
Received: from mail-ej1-x62a.google.com (mail-ej1-x62a.google.com
 [2a00:1450:4864:20::62a])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 7162da70-6924-11ee-98d4-6d05b1d4d9a1;
 Thu, 12 Oct 2023 19:26:13 +0200 (CEST)
Received: by mail-ej1-x62a.google.com with SMTP id
 a640c23a62f3a-9ad810be221so195758866b.2
 for <xen-devel@lists.xenproject.org>; Thu, 12 Oct 2023 10:26:13 -0700 (PDT)
Received: from EMEAENGAAD19049.citrite.net
 (default-46-102-197-194.interdsl.co.uk. [46.102.197.194])
 by smtp.gmail.com with ESMTPSA id
 c27-20020a17090603db00b009829d2e892csm11522697eja.15.2023.10.12.10.26.12
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Thu, 12 Oct 2023 10:26: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: 7162da70-6924-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1697131573; x=1697736373; 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=IsShQqItdUAwhDe8vQUoiwqJuVenLNYiRZwU25mI/Xg=;
        b=avsqImvwpe68CJpMFIdpjzZEZzolzbleHLmCRvpUJMAgefKyL0PRI21MVbnDJV9JJZ
         ZI7cNC1YXsqw6qf9Dga1+g5/1Lc+uSqqW5hlViqBwO3FbHFyarS4mLXGM4EOKJLxPKjK
         rUY0XHqUQ3G0ZORkFw4Yp/rCVVPyUnuKJqfWM=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697131573; x=1697736373;
        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=IsShQqItdUAwhDe8vQUoiwqJuVenLNYiRZwU25mI/Xg=;
        b=QnwqdAvPOEOWJYnAFWhmSP97NYmMFXgmO1Hx466yaWmcYRkZr5z2JLgi0SAtPI/zHv
         P92Ddz8bOWZFty/cyCeArpB36p2z207/xMlyYKV8mF9Sd2BCBpx49Ps6VPRyG5XCcvCg
         UBOWaBD1rdffy0laHyQjjLfgQLh8RW8vQqipaSwGi9tRvBnW2NY61s53bcYRBliHwouS
         i6MKSk+nBzgp8YehdNzrs6duH7P2CippHlRNdvlzGNEyT/h8sX79/iAA+akjA9d2QIND
         8ERpC8qJgkGLiYafpaOwEclJpeRZbB+iISWwESw6SnNBxHTtZ+MABfYGnibw/BzrPEDb
         SVjQ==
X-Gm-Message-State: AOJu0Yyi1hsSylNXdFrTSy1tcUUH65jOrSj+MYD7jclR0+4fLq0CBu8T
	BDr3botTIC1hZXuJzwN6vQlp2550cWsamxjR3Po=
X-Google-Smtp-Source: AGHT+IFTVJsJAm6naNKXyiX5c2mFJkV4lk+63Z6lPWEM2vseu03boGDXe8Vcm4Aa0ugQWdawYpF75g==
X-Received: by 2002:a17:906:318f:b0:9a1:b05a:c07c with SMTP id 15-20020a170906318f00b009a1b05ac07cmr20588428ejy.55.1697131573061;
        Thu, 12 Oct 2023 10:26:13 -0700 (PDT)
From: Alejandro Vallejo <alejandro.vallejo@cloud.com>
To: Xen-devel <xen-devel@lists.xenproject.org>
Cc: Alejandro Vallejo <alejandro.vallejo@cloud.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: [for-4.18][PATCH 0/2] Fix AMD erratum #1485 on AMD Zen4
Date: Thu, 12 Oct 2023 18:25:59 +0100
Message-Id: <20231012172601.22600-1-alejandro.vallejo@cloud.com>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

This patch should make it to 4.18, as it prevents random crashes on AMD
Zen4 running outdated microcode.

Under certain conditions Zen4 may corrupt its own code stream when SMT is
enabled and STIBP is not. The Linux thread in which this was highlighted is
in patch2's commit message.

NOTE: Still running in CI as of now, but tested locally. Pipeline here.
    https://gitlab.com/xen-project/people/agvallejo/xen/-/pipelines/1034895039

Patch 1: is just a minor refactor to ensure we don't get microarchitectures
         of different families mixed up now that we have 3 different
         families involved (Fam17h, Fam18h and Fam19h)
Patch 2: The actual fix. It involves setting a bit in an MSR if it's a non
         virtualized zen4. It's not a direct copy of the Linux patch, as we
         have started using macros to find out microarchitectures from
         CPUID bits, rather than relying on models.

Alejandro Vallejo (2):
  xen/x86: Add family guards to the is_zen[12]_uarch() macros
  x86/amd: Prevent potentially fetching wrong instruction bytes on Zen4

 xen/arch/x86/cpu/amd.c               | 16 +++++++++++++---
 xen/arch/x86/include/asm/amd.h       | 17 +++++++++++++----
 xen/arch/x86/include/asm/msr-index.h |  2 ++
 xen/arch/x86/spec_ctrl.c             |  3 ---
 4 files changed, 28 insertions(+), 10 deletions(-)

-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Thu Oct 12 17:45:12 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 17:45:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615959.957542 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqzk8-0005l0-Dz; Thu, 12 Oct 2023 17:45:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615959.957542; Thu, 12 Oct 2023 17: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 1qqzk8-0005kt-BP; Thu, 12 Oct 2023 17:45:04 +0000
Received: by outflank-mailman (input) for mailman id 615959;
 Thu, 12 Oct 2023 17: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=ZCIp=F2=gmail.com=brgerst@srs-se1.protection.inumbo.net>)
 id 1qqzk7-0005kn-2b
 for xen-devel@lists.xenproject.org; Thu, 12 Oct 2023 17:45:03 +0000
Received: from mail-lf1-x129.google.com (mail-lf1-x129.google.com
 [2a00:1450:4864:20::129])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 11ed38e3-6927-11ee-98d4-6d05b1d4d9a1;
 Thu, 12 Oct 2023 19:45:02 +0200 (CEST)
Received: by mail-lf1-x129.google.com with SMTP id
 2adb3069b0e04-5042bfb4fe9so1656853e87.1
 for <xen-devel@lists.xenproject.org>; Thu, 12 Oct 2023 10:45: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: 11ed38e3-6927-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1697132701; x=1697737501; 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=eZnELMSWSCox5zkDrPZguBSaHcnzom5VtqzW5cdzO/Q=;
        b=KY7x6S9vgTk43FD5bclebFlp3edT007ptqduN3vsPBSz3Ma1YBKq/GzncNh8KXQBjr
         esbge3qt8Z8V9q9K3OA0F6HqJXJ0BMA74IBnqHR3IzL39kZc88WIX+N7E0d4keeoSDCm
         0qdGiFvGlGEwI3l2Lrq6jO9xHAl4wPwH9EIvFvGYn2b3HBSMh+XQtkunrIGeVIaBoH9f
         rkS0Tg8c6BoaGaY9qEYuFChlKZeuKzaZPfGfm9DdLD6IJj5VbMLlwN7pnpaRcvkoCsLO
         egKrDvezlzXTWr8LcSXt8IDx0J79yagahBarH1RhArMQDhaJenNH+9z3opbJvm6vzBdz
         r6kQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697132701; x=1697737501;
        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=eZnELMSWSCox5zkDrPZguBSaHcnzom5VtqzW5cdzO/Q=;
        b=JtRJEfg+m+9eQwwtVzuLtrWX5s49dG3V4WOYSDRqIElI0nZzl4AymbliK+lnsw7U9E
         CULTkdKWc19xUOsmJl6K3P8m1bNvr61q8iLXZWbAWfA7aB3R7Y2hI2E9C2Ddrb94BPlA
         VKTFJCFWWhrlMrYV6QihR4A+D4m3jg+1dy7MXvfNKzxd5g0C+k9eAns0ToGVJRX2qff4
         M4Hvic4YAPnMPcEOt+xxtSJPwPyrXGtZArfT42sefAf64QN2sdlBH6LFFse2NBRl+NeN
         nZtpZ9hgpriL7W6tR3nyrOaay9z36tc3LU0LSEQTrM8VFFyJ0nSV6JdThEhvd/xFwokp
         hbtw==
X-Gm-Message-State: AOJu0Yy3kD5PqQ4V/D3Q8tQ/F9wpXbZy1xIz3MfPtLzjzIdcgZB5tSth
	LbbPFDceeu8hnQJc6lgoC38GGxltBBA3M8CjBA==
X-Google-Smtp-Source: AGHT+IHCwMbJjDnnhzCqZvqf2XCN/6lmwhJEjVZYkv3cpRaTckQgJSY7Ku92vcGVEH6JnTqXufQnmC4syQW08bO8lKw=
X-Received: by 2002:a05:6512:2821:b0:502:f2a8:d391 with SMTP id
 cf33-20020a056512282100b00502f2a8d391mr28965256lfb.45.1697132701302; Thu, 12
 Oct 2023 10:45:01 -0700 (PDT)
MIME-Version: 1.0
References: <20231012161237.114733-1-ubizjak@gmail.com> <20231012161237.114733-2-ubizjak@gmail.com>
In-Reply-To: <20231012161237.114733-2-ubizjak@gmail.com>
From: Brian Gerst <brgerst@gmail.com>
Date: Thu, 12 Oct 2023 13:44:49 -0400
Message-ID: <CAMzpN2ii5qMr36PSw8RzNuVB-9KhoQgyfet=FpPtT5F3hOmLmQ@mail.gmail.com>
Subject: Re: [PATCH 1/4] x86/percpu: Use explicit segment registers in lib/cmpxchg{8,16}b_emu.S
To: Uros Bizjak <ubizjak@gmail.com>
Cc: x86@kernel.org, xen-devel@lists.xenproject.org, 
	linux-kernel@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>, 
	Peter Zijlstra <peterz@infradead.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Thu, Oct 12, 2023 at 12:13=E2=80=AFPM Uros Bizjak <ubizjak@gmail.com> wr=
ote:
>
> PER_CPU_VAR macro is intended to be applied to a symbol, it is not
> intended to be used as a selector between %fs and %gs segment
> registers for general operands.
>
> The address to these emulation functions is passed in a register, so
> use explicit segment registers to access percpu variable instead.
>
> Also add a missing function comment to this_cpu_cmpxchg8b_emu.
>
> No functional changes intended.
>
> Cc: Thomas Gleixner <tglx@linutronix.de>
> Cc: Ingo Molnar <mingo@redhat.com>
> Cc: Borislav Petkov <bp@alien8.de>
> Cc: Dave Hansen <dave.hansen@linux.intel.com>
> Cc: "H. Peter Anvin" <hpa@zytor.com>
> Cc: Peter Zijlstra <peterz@infradead.org>
> Signed-off-by: Uros Bizjak <ubizjak@gmail.com>
> ---
>  arch/x86/lib/cmpxchg16b_emu.S | 12 ++++++------
>  arch/x86/lib/cmpxchg8b_emu.S  | 30 +++++++++++++++++++++---------
>  2 files changed, 27 insertions(+), 15 deletions(-)
>
> diff --git a/arch/x86/lib/cmpxchg16b_emu.S b/arch/x86/lib/cmpxchg16b_emu.=
S
> index 6962df315793..2bd8b89bce75 100644
> --- a/arch/x86/lib/cmpxchg16b_emu.S
> +++ b/arch/x86/lib/cmpxchg16b_emu.S
> @@ -23,14 +23,14 @@ SYM_FUNC_START(this_cpu_cmpxchg16b_emu)
>         cli
>
>         /* if (*ptr =3D=3D old) */
> -       cmpq    PER_CPU_VAR(0(%rsi)), %rax
> +       cmpq    %gs:(%rsi), %rax
>         jne     .Lnot_same
> -       cmpq    PER_CPU_VAR(8(%rsi)), %rdx
> +       cmpq    %gs:8(%rsi), %rdx
>         jne     .Lnot_same
>
>         /* *ptr =3D new */
> -       movq    %rbx, PER_CPU_VAR(0(%rsi))
> -       movq    %rcx, PER_CPU_VAR(8(%rsi))
> +       movq    %rbx, %gs:(%rsi)
> +       movq    %rcx, %gs:8(%rsi)
>
>         /* set ZF in EFLAGS to indicate success */
>         orl     $X86_EFLAGS_ZF, (%rsp)
> @@ -42,8 +42,8 @@ SYM_FUNC_START(this_cpu_cmpxchg16b_emu)
>         /* *ptr !=3D old */
>
>         /* old =3D *ptr */
> -       movq    PER_CPU_VAR(0(%rsi)), %rax
> -       movq    PER_CPU_VAR(8(%rsi)), %rdx
> +       movq    %gs:(%rsi), %rax
> +       movq    %gs:8(%rsi), %rdx
>
>         /* clear ZF in EFLAGS to indicate failure */
>         andl    $(~X86_EFLAGS_ZF), (%rsp)
> diff --git a/arch/x86/lib/cmpxchg8b_emu.S b/arch/x86/lib/cmpxchg8b_emu.S
> index 49805257b125..b7d68d5e2d31 100644
> --- a/arch/x86/lib/cmpxchg8b_emu.S
> +++ b/arch/x86/lib/cmpxchg8b_emu.S
> @@ -24,12 +24,12 @@ SYM_FUNC_START(cmpxchg8b_emu)
>         pushfl
>         cli
>
> -       cmpl    0(%esi), %eax
> +       cmpl    (%esi), %eax
>         jne     .Lnot_same
>         cmpl    4(%esi), %edx
>         jne     .Lnot_same
>
> -       movl    %ebx, 0(%esi)
> +       movl    %ebx, (%esi)
>         movl    %ecx, 4(%esi)
>
>         orl     $X86_EFLAGS_ZF, (%esp)
> @@ -38,7 +38,7 @@ SYM_FUNC_START(cmpxchg8b_emu)
>         RET
>
>  .Lnot_same:
> -       movl    0(%esi), %eax
> +       movl    (%esi), %eax
>         movl    4(%esi), %edx
>
>         andl    $(~X86_EFLAGS_ZF), (%esp)
> @@ -53,18 +53,30 @@ EXPORT_SYMBOL(cmpxchg8b_emu)
>
>  #ifndef CONFIG_UML
>
> +/*
> + * Emulate 'cmpxchg8b %fs:(%esi)'
> + *
> + * Inputs:
> + * %esi : memory location to compare
> + * %eax : low 32 bits of old value
> + * %edx : high 32 bits of old value
> + * %ebx : low 32 bits of new value
> + * %ecx : high 32 bits of new value
> + *
> + * Notably this is not LOCK prefixed and is not safe against NMIs
> + */
>  SYM_FUNC_START(this_cpu_cmpxchg8b_emu)
>
>         pushfl
>         cli
>
> -       cmpl    PER_CPU_VAR(0(%esi)), %eax
> +       cmpl    %fs:(%esi), %eax
>         jne     .Lnot_same2
> -       cmpl    PER_CPU_VAR(4(%esi)), %edx
> +       cmpl    %fs:4(%esi), %edx
>         jne     .Lnot_same2
>
> -       movl    %ebx, PER_CPU_VAR(0(%esi))
> -       movl    %ecx, PER_CPU_VAR(4(%esi))
> +       movl    %ebx, %fs:(%esi)
> +       movl    %ecx, %fs:4(%esi)
>
>         orl     $X86_EFLAGS_ZF, (%esp)
>
> @@ -72,8 +84,8 @@ SYM_FUNC_START(this_cpu_cmpxchg8b_emu)
>         RET
>
>  .Lnot_same2:
> -       movl    PER_CPU_VAR(0(%esi)), %eax
> -       movl    PER_CPU_VAR(4(%esi)), %edx
> +       movl    %fs:(%esi), %eax
> +       movl    %fs:4(%esi), %edx
>
>         andl    $(~X86_EFLAGS_ZF), (%esp)
>
> --
> 2.41.0
>

This will break on !SMP builds, where per-cpu variables are just
regular data and not accessed with a segment prefix.

Brian Gerst


From xen-devel-bounces@lists.xenproject.org Thu Oct 12 17:54:44 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 17:54:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615964.957553 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qqztR-0008Qr-EV; Thu, 12 Oct 2023 17:54:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615964.957553; Thu, 12 Oct 2023 17:54: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 1qqztR-0008Qk-B6; Thu, 12 Oct 2023 17:54:41 +0000
Received: by outflank-mailman (input) for mailman id 615964;
 Thu, 12 Oct 2023 17:54: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=Qqh1=F2=gmail.com=ubizjak@srs-se1.protection.inumbo.net>)
 id 1qqztQ-0008Qd-Hp
 for xen-devel@lists.xenproject.org; Thu, 12 Oct 2023 17:54:40 +0000
Received: from mail-lf1-x136.google.com (mail-lf1-x136.google.com
 [2a00:1450:4864:20::136])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 6934aea0-6928-11ee-9b0e-b553b5be7939;
 Thu, 12 Oct 2023 19:54:38 +0200 (CEST)
Received: by mail-lf1-x136.google.com with SMTP id
 2adb3069b0e04-503397ee920so1616239e87.1
 for <xen-devel@lists.xenproject.org>; Thu, 12 Oct 2023 10:54: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: 6934aea0-6928-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1697133277; x=1697738077; 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=c2zaxolSorn5dIFC/Mbb3yIOz4fwasgFCXiOEAUO2GQ=;
        b=eEpLvJe+t5aiRJItbdTSxjQ36SlbFd+IHBCamWxfa83KB2eKDZNSTpIGB8Rusx1GT8
         nafQzWWASXFWpPrQluaCEAjLVeGwUq7s4cN+ppEatSOZBAz/Q9ADXzPzCpSt37viJl9J
         FG1TnZXXHRfdv2OiY3CZD4V5WwsKyVOLt8uMDi/i0snn8MksVR4pgn5to/SB+LpInOQ7
         0S8xS113Hiid8HsFJ7azlYoYkX90YnMi+klFGdFl3hdxVoTJ+eNu52Cv1sJf5YTFXHEL
         uzPdvIVIIRa427DKO1BTMw0VT0fIALLYpEiuJbxwmFIvCWPIbSOjnE2O2e9aGySBHDOT
         fjtw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697133277; x=1697738077;
        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=c2zaxolSorn5dIFC/Mbb3yIOz4fwasgFCXiOEAUO2GQ=;
        b=FYRi7Jy39npNGN/W6KjMTCRbT87KKg58vNMIlOGijIv/fA3lxFJ415boexygDaIwuo
         3fsYiG4Q8Zt838JGO0QerHmDe5ZaE07vpjdPaFEeE49HGsKqhtjQI+aB4EGrBX7YiKCU
         UVNGhIyCHE4kLYoAMj5NfddMycflITa0ZuaaUOgzOfMGBWg1VxHj8tkm6rPgtQ9TpTcE
         4gDXBczr4wESL2w7UnU/YN+jVOWiHtEOBQwU0uuoXeVJCNsPSGZoCrM7idkEsHa3YvtF
         Rz96GvjzppdabO90UQal8J3jGghrjeblpIuFPz1LIjrqAv7T8shspCjQCdwL+pQsaQsr
         T5AQ==
X-Gm-Message-State: AOJu0Yz3gTyD9cpc9YRw1XJmdXm65Q3upUKssi1vEkq/U79pEJVT87/Z
	3M0IhoMBmp5cpR5ooNGiJikugRm+89ok0s0P42Q=
X-Google-Smtp-Source: AGHT+IGzmlQaPUD4kujeCmNthDxgJnArN5Fz+FLBt1PRSFtjHsWik4OC+uhr8ul09D9evf1f5jP9iyxLn0vFztyjBuQ=
X-Received: by 2002:a05:6512:280d:b0:501:bee7:487b with SMTP id
 cf13-20020a056512280d00b00501bee7487bmr23794858lfb.11.1697133277207; Thu, 12
 Oct 2023 10:54:37 -0700 (PDT)
MIME-Version: 1.0
References: <20231012161237.114733-1-ubizjak@gmail.com> <20231012161237.114733-2-ubizjak@gmail.com>
 <CAMzpN2ii5qMr36PSw8RzNuVB-9KhoQgyfet=FpPtT5F3hOmLmQ@mail.gmail.com>
In-Reply-To: <CAMzpN2ii5qMr36PSw8RzNuVB-9KhoQgyfet=FpPtT5F3hOmLmQ@mail.gmail.com>
From: Uros Bizjak <ubizjak@gmail.com>
Date: Thu, 12 Oct 2023 19:54:26 +0200
Message-ID: <CAFULd4ZVvRvssyj--un6vrLU5M816ysEkc4xpXnGSN=hyhTTFQ@mail.gmail.com>
Subject: Re: [PATCH 1/4] x86/percpu: Use explicit segment registers in lib/cmpxchg{8,16}b_emu.S
To: Brian Gerst <brgerst@gmail.com>
Cc: x86@kernel.org, xen-devel@lists.xenproject.org, 
	linux-kernel@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>, 
	Peter Zijlstra <peterz@infradead.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Thu, Oct 12, 2023 at 7:45=E2=80=AFPM Brian Gerst <brgerst@gmail.com> wro=
te:
>
> On Thu, Oct 12, 2023 at 12:13=E2=80=AFPM Uros Bizjak <ubizjak@gmail.com> =
wrote:
> >
> > PER_CPU_VAR macro is intended to be applied to a symbol, it is not
> > intended to be used as a selector between %fs and %gs segment
> > registers for general operands.
> >
> > The address to these emulation functions is passed in a register, so
> > use explicit segment registers to access percpu variable instead.
> >
> > Also add a missing function comment to this_cpu_cmpxchg8b_emu.
> >
> > No functional changes intended.
> >
> > Cc: Thomas Gleixner <tglx@linutronix.de>
> > Cc: Ingo Molnar <mingo@redhat.com>
> > Cc: Borislav Petkov <bp@alien8.de>
> > Cc: Dave Hansen <dave.hansen@linux.intel.com>
> > Cc: "H. Peter Anvin" <hpa@zytor.com>
> > Cc: Peter Zijlstra <peterz@infradead.org>
> > Signed-off-by: Uros Bizjak <ubizjak@gmail.com>
> > ---
> >  arch/x86/lib/cmpxchg16b_emu.S | 12 ++++++------
> >  arch/x86/lib/cmpxchg8b_emu.S  | 30 +++++++++++++++++++++---------
> >  2 files changed, 27 insertions(+), 15 deletions(-)
> >
> > diff --git a/arch/x86/lib/cmpxchg16b_emu.S b/arch/x86/lib/cmpxchg16b_em=
u.S
> > index 6962df315793..2bd8b89bce75 100644
> > --- a/arch/x86/lib/cmpxchg16b_emu.S
> > +++ b/arch/x86/lib/cmpxchg16b_emu.S
> > @@ -23,14 +23,14 @@ SYM_FUNC_START(this_cpu_cmpxchg16b_emu)
> >         cli
> >
> >         /* if (*ptr =3D=3D old) */
> > -       cmpq    PER_CPU_VAR(0(%rsi)), %rax
> > +       cmpq    %gs:(%rsi), %rax
> >         jne     .Lnot_same
> > -       cmpq    PER_CPU_VAR(8(%rsi)), %rdx
> > +       cmpq    %gs:8(%rsi), %rdx
> >         jne     .Lnot_same
> >
> >         /* *ptr =3D new */
> > -       movq    %rbx, PER_CPU_VAR(0(%rsi))
> > -       movq    %rcx, PER_CPU_VAR(8(%rsi))
> > +       movq    %rbx, %gs:(%rsi)
> > +       movq    %rcx, %gs:8(%rsi)
> >
> >         /* set ZF in EFLAGS to indicate success */
> >         orl     $X86_EFLAGS_ZF, (%rsp)
> > @@ -42,8 +42,8 @@ SYM_FUNC_START(this_cpu_cmpxchg16b_emu)
> >         /* *ptr !=3D old */
> >
> >         /* old =3D *ptr */
> > -       movq    PER_CPU_VAR(0(%rsi)), %rax
> > -       movq    PER_CPU_VAR(8(%rsi)), %rdx
> > +       movq    %gs:(%rsi), %rax
> > +       movq    %gs:8(%rsi), %rdx
> >
> >         /* clear ZF in EFLAGS to indicate failure */
> >         andl    $(~X86_EFLAGS_ZF), (%rsp)
> > diff --git a/arch/x86/lib/cmpxchg8b_emu.S b/arch/x86/lib/cmpxchg8b_emu.=
S
> > index 49805257b125..b7d68d5e2d31 100644
> > --- a/arch/x86/lib/cmpxchg8b_emu.S
> > +++ b/arch/x86/lib/cmpxchg8b_emu.S
> > @@ -24,12 +24,12 @@ SYM_FUNC_START(cmpxchg8b_emu)
> >         pushfl
> >         cli
> >
> > -       cmpl    0(%esi), %eax
> > +       cmpl    (%esi), %eax
> >         jne     .Lnot_same
> >         cmpl    4(%esi), %edx
> >         jne     .Lnot_same
> >
> > -       movl    %ebx, 0(%esi)
> > +       movl    %ebx, (%esi)
> >         movl    %ecx, 4(%esi)
> >
> >         orl     $X86_EFLAGS_ZF, (%esp)
> > @@ -38,7 +38,7 @@ SYM_FUNC_START(cmpxchg8b_emu)
> >         RET
> >
> >  .Lnot_same:
> > -       movl    0(%esi), %eax
> > +       movl    (%esi), %eax
> >         movl    4(%esi), %edx
> >
> >         andl    $(~X86_EFLAGS_ZF), (%esp)
> > @@ -53,18 +53,30 @@ EXPORT_SYMBOL(cmpxchg8b_emu)
> >
> >  #ifndef CONFIG_UML
> >
> > +/*
> > + * Emulate 'cmpxchg8b %fs:(%esi)'
> > + *
> > + * Inputs:
> > + * %esi : memory location to compare
> > + * %eax : low 32 bits of old value
> > + * %edx : high 32 bits of old value
> > + * %ebx : low 32 bits of new value
> > + * %ecx : high 32 bits of new value
> > + *
> > + * Notably this is not LOCK prefixed and is not safe against NMIs
> > + */
> >  SYM_FUNC_START(this_cpu_cmpxchg8b_emu)
> >
> >         pushfl
> >         cli
> >
> > -       cmpl    PER_CPU_VAR(0(%esi)), %eax
> > +       cmpl    %fs:(%esi), %eax
> >         jne     .Lnot_same2
> > -       cmpl    PER_CPU_VAR(4(%esi)), %edx
> > +       cmpl    %fs:4(%esi), %edx
> >         jne     .Lnot_same2
> >
> > -       movl    %ebx, PER_CPU_VAR(0(%esi))
> > -       movl    %ecx, PER_CPU_VAR(4(%esi))
> > +       movl    %ebx, %fs:(%esi)
> > +       movl    %ecx, %fs:4(%esi)
> >
> >         orl     $X86_EFLAGS_ZF, (%esp)
> >
> > @@ -72,8 +84,8 @@ SYM_FUNC_START(this_cpu_cmpxchg8b_emu)
> >         RET
> >
> >  .Lnot_same2:
> > -       movl    PER_CPU_VAR(0(%esi)), %eax
> > -       movl    PER_CPU_VAR(4(%esi)), %edx
> > +       movl    %fs:(%esi), %eax
> > +       movl    %fs:4(%esi), %edx
> >
> >         andl    $(~X86_EFLAGS_ZF), (%esp)
> >
> > --
> > 2.41.0
> >
>
> This will break on !SMP builds, where per-cpu variables are just
> regular data and not accessed with a segment prefix.

Ugh, indeed. Let me rethink this a bit.

Thanks,
Uros.


From xen-devel-bounces@lists.xenproject.org Thu Oct 12 18:40:20 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 18:40:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615970.957564 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qr0bO-0008AX-SQ; Thu, 12 Oct 2023 18:40:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615970.957564; Thu, 12 Oct 2023 18:40: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 1qr0bO-0008AQ-OB; Thu, 12 Oct 2023 18:40:06 +0000
Received: by outflank-mailman (input) for mailman id 615970;
 Thu, 12 Oct 2023 18:40: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=Qqh1=F2=gmail.com=ubizjak@srs-se1.protection.inumbo.net>)
 id 1qr0bN-00080g-T7
 for xen-devel@lists.xenproject.org; Thu, 12 Oct 2023 18:40:05 +0000
Received: from mail-ed1-x52a.google.com (mail-ed1-x52a.google.com
 [2a00:1450:4864:20::52a])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id c210cc6d-692e-11ee-98d4-6d05b1d4d9a1;
 Thu, 12 Oct 2023 20:40:04 +0200 (CEST)
Received: by mail-ed1-x52a.google.com with SMTP id
 4fb4d7f45d1cf-53d9b94731aso2449492a12.1
 for <xen-devel@lists.xenproject.org>; Thu, 12 Oct 2023 11:40: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: c210cc6d-692e-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1697136003; x=1697740803; 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=y1aZVXohRge+v3Vv/6fsNhXCZ7AScOuTNQZ+ekrGnkw=;
        b=KbrkIvvdGCzuKg2UkvQixrq3/pCdyCyBjSJtKao3PugH1wRLOyA4Kbw3dlb1hlbK/t
         EKllvS/5s8u2P7gmPv9QhoYhGgMhu6fof6GEDZrC6JzZKDCNW1vRT+aHYXLU28WRKFA0
         fzzZ+bgmxVmVd/ol7xvVSQqo+16gWLu3xspF2CAetYUpAmp2vmHtQDveczVQNICpnxP+
         z0JEpJm/fUHrwEk2KssUsPs/UIaHrzCUFKQvtGP4rOQeOtO1d3LNhqBtbydq2BvMXIjt
         h++YkIIMJfl+ZxIjA1PG+m8aTW+0krHAWK+0AFd/wezA8/+BwqHSNSnylw38muIj5/ZN
         NtNg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697136003; x=1697740803;
        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=y1aZVXohRge+v3Vv/6fsNhXCZ7AScOuTNQZ+ekrGnkw=;
        b=k3f3uQVYL4uuBnKvKyUHdHqHHtrRLBTm7BXWpVxstCtb2cqsKLLuSljAcaELTXvy+2
         9VNDuXS0279kWEulVzMzRTzyQ0+CgIIrUUgorURiAiYlsG2OOXt/WeDh/mjIFqubSpOQ
         XuIEUHD5XrdsmDMsXq1Yp3t6X7OlxMOQCncqWk2GMJO64dedya7Vx3sUJBbWTKkX67lG
         4Y75WWTM8RA4bBMceKEEifJHYX+wke9OSfIOvKPqanqc/CpFQjIW99CaIlVmUuJpUIuk
         sab4kD++mAllTSf28RPxxPNrqILaBIVBOIrOCZnmrukPWhqVOqaPx40j9nd9Il+G4eM0
         QGhw==
X-Gm-Message-State: AOJu0YxbKpKjDG1mg1MXIIqECUgNdtwnIWCvEigDLXERNTUthx9bQpLj
	8+6hA/EeiDCarJl3zYmPoV2fM7aFM1cNUXpf9cc=
X-Google-Smtp-Source: AGHT+IEHHumjNQpn73kXZqpk0T02To9UzO7onfeg6sqCjti4bWA6fBS/ptoScbdqZYxE54CRPouSH8kbA0BFawhRjIw=
X-Received: by 2002:a05:6402:510a:b0:53e:3584:d394 with SMTP id
 m10-20020a056402510a00b0053e3584d394mr169774edd.33.1697136003595; Thu, 12 Oct
 2023 11:40:03 -0700 (PDT)
MIME-Version: 1.0
References: <20231012161237.114733-1-ubizjak@gmail.com> <20231012161237.114733-2-ubizjak@gmail.com>
 <CAMzpN2ii5qMr36PSw8RzNuVB-9KhoQgyfet=FpPtT5F3hOmLmQ@mail.gmail.com> <CAFULd4ZVvRvssyj--un6vrLU5M816ysEkc4xpXnGSN=hyhTTFQ@mail.gmail.com>
In-Reply-To: <CAFULd4ZVvRvssyj--un6vrLU5M816ysEkc4xpXnGSN=hyhTTFQ@mail.gmail.com>
From: Uros Bizjak <ubizjak@gmail.com>
Date: Thu, 12 Oct 2023 20:39:52 +0200
Message-ID: <CAFULd4b=S09YvHoJ3UkY=DbJRS+xqhFwrP50YEYomntxy6JtnQ@mail.gmail.com>
Subject: Re: [PATCH 1/4] x86/percpu: Use explicit segment registers in lib/cmpxchg{8,16}b_emu.S
To: Brian Gerst <brgerst@gmail.com>
Cc: x86@kernel.org, xen-devel@lists.xenproject.org, 
	linux-kernel@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>, 
	Peter Zijlstra <peterz@infradead.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Thu, Oct 12, 2023 at 7:54=E2=80=AFPM Uros Bizjak <ubizjak@gmail.com> wro=
te:
> > This will break on !SMP builds, where per-cpu variables are just
> > regular data and not accessed with a segment prefix.
>
> Ugh, indeed. Let me rethink this a bit.

Something like this:

#ifdef CONFIG_SMP
#define PER_CPU_ARG(arg)    %__percpu_seg:arg
#define PER_CPU_VAR(var)    %__percpu_seg:(var)##__percpu_rel
#else /* ! SMP */
#define PER_CPU_ARG(arg)    arg
#define PER_CPU_VAR(var)    (var)##__percpu_rel
#endif    /* SMP */

and using the above PER_CPU_ARG in /lib/cmpxchg{8,16}b_emu.S will
solve the issue.

I will prepare a v2.

Thanks,
Uros.


From xen-devel-bounces@lists.xenproject.org Thu Oct 12 19:57:53 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 19:57:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.615992.957633 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qr1oT-0002zq-19; Thu, 12 Oct 2023 19:57:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 615992.957633; Thu, 12 Oct 2023 19: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 1qr1oS-0002zj-U1; Thu, 12 Oct 2023 19:57:40 +0000
Received: by outflank-mailman (input) for mailman id 615992;
 Thu, 12 Oct 2023 19:57: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 1qr1oR-0002zW-NZ; Thu, 12 Oct 2023 19:57: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 1qr1oR-0008P2-L9; Thu, 12 Oct 2023 19:57: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 1qr1oR-0006zB-4Z; Thu, 12 Oct 2023 19:57:39 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qr1oR-0001BC-3w; Thu, 12 Oct 2023 19:57: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=CvCtJeC6+5plaCEyXZrsxT+gJvJG0jq6tOtnWfmpKyQ=; b=aWeZ14kJDwWfcItgSJr8cCkLFY
	AYLVkF3UQCcfH238bg+m0PHVmIy15hpz3UT7WiTU38Cg4QrA16jzVZydYJ1W1PcyJWkOab9zvy7dw
	pXzEtKlvwha1WwRgv9e/vQs9Wpb3ZCnxbXEpDEQawQJMfg48KuwqtiXcNWjqYWzBuuIQ=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183357-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-4.16-testing test] 183357: tolerable FAIL - PUSHED
X-Osstest-Failures:
    xen-4.16-testing:test-amd64-i386-libvirt-pair:guest-migrate/dst_host/src_host/debian.repeat:fail:heisenbug
    xen-4.16-testing:test-amd64-i386-xl-qemuu-ws16-amd64:xen-install:fail:heisenbug
    xen-4.16-testing:test-amd64-i386-xl-qemuu-ws16-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-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-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-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-amd64-i386-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-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:migrate-support-check:fail:nonblocking
    xen-4.16-testing:test-amd64-amd64-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-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-credit2:migrate-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: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-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-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-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-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-armhf-armhf-xl-arndale: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-rtds:migrate-support-check:fail:nonblocking
    xen-4.16-testing:test-armhf-armhf-xl-arndale:saverestore-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-credit2: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-amd64-i386-libvirt-raw:migrate-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-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-libvirt-xsm:hosts-allocate:starved:nonblocking
    xen-4.16-testing:test-arm64-arm64-libvirt-raw:hosts-allocate:starved:nonblocking
    xen-4.16-testing:test-arm64-arm64-xl-thunderx:hosts-allocate:starved:nonblocking
    xen-4.16-testing:test-arm64-arm64-xl-xsm:hosts-allocate:starved:nonblocking
    xen-4.16-testing:test-arm64-arm64-xl-vhd:hosts-allocate:starved:nonblocking
    xen-4.16-testing:test-arm64-arm64-xl-credit1:hosts-allocate:starved:nonblocking
    xen-4.16-testing:test-arm64-arm64-xl:hosts-allocate:starved:nonblocking
    xen-4.16-testing:test-arm64-arm64-xl-credit2:hosts-allocate:starved:nonblocking
X-Osstest-Versions-This:
    xen=29efce0f8f10e381417a61f2f9988b40d4f6bcf0
X-Osstest-Versions-That:
    xen=c450a4bc11e97eabe97dcefe06f510d7acea8d6d
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 12 Oct 2023 19:57:39 +0000

flight 183357 xen-4.16-testing real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183357/

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-amd64-i386-libvirt-pair 28 guest-migrate/dst_host/src_host/debian.repeat fail in 183350 pass in 183357
 test-amd64-i386-xl-qemuu-ws16-amd64  7 xen-install         fail pass in 183350

Tests which did not succeed, but are not blocking:
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop   fail in 183350 like 183082
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183082
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183082
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183082
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 183082
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183082
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 183082
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183082
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183082
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183082
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183082
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 183082
 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-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     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-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-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-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-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-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-i386-libvirt-raw  14 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-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-xsm  3 hosts-allocate           starved in 183350 n/a
 test-arm64-arm64-libvirt-raw  3 hosts-allocate           starved in 183350 n/a
 test-arm64-arm64-xl-thunderx  3 hosts-allocate           starved in 183350 n/a
 test-arm64-arm64-xl-xsm       3 hosts-allocate           starved in 183350 n/a
 test-arm64-arm64-xl-vhd       3 hosts-allocate           starved in 183350 n/a
 test-arm64-arm64-xl-credit1   3 hosts-allocate           starved in 183350 n/a
 test-arm64-arm64-xl           3 hosts-allocate           starved in 183350 n/a
 test-arm64-arm64-xl-credit2   3 hosts-allocate           starved in 183350 n/a

version targeted for testing:
 xen                  29efce0f8f10e381417a61f2f9988b40d4f6bcf0
baseline version:
 xen                  c450a4bc11e97eabe97dcefe06f510d7acea8d6d

Last test of basis   183082  2023-09-20 10:06:51 Z   22 days
Testing same since   183341  2023-10-11 06:07:02 Z    1 days    3 attempts

------------------------------------------------------------
People who touched revisions under test:
  Alejandro Vallejo <alejandro.vallejo@cloud.com>
  Andrew Cooper <andrew.cooper3@citrix.com>
  Jan Beulich <jbeulich@suse.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-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                                      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
   c450a4bc11..29efce0f8f  29efce0f8f10e381417a61f2f9988b40d4f6bcf0 -> stable-4.16


From xen-devel-bounces@lists.xenproject.org Thu Oct 12 20:18:02 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 20:18:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616004.957668 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qr288-0006cc-NG; Thu, 12 Oct 2023 20:18:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616004.957668; Thu, 12 Oct 2023 20: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 1qr288-0006c3-Gt; Thu, 12 Oct 2023 20:18:00 +0000
Received: by outflank-mailman (input) for mailman id 616004;
 Thu, 12 Oct 2023 20:17: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=Qqh1=F2=gmail.com=ubizjak@srs-se1.protection.inumbo.net>)
 id 1qr286-000668-6M
 for xen-devel@lists.xenproject.org; Thu, 12 Oct 2023 20:17:58 +0000
Received: from mail-ej1-x630.google.com (mail-ej1-x630.google.com
 [2a00:1450:4864:20::630])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 6dcea540-693c-11ee-9b0e-b553b5be7939;
 Thu, 12 Oct 2023 22:17:55 +0200 (CEST)
Received: by mail-ej1-x630.google.com with SMTP id
 a640c23a62f3a-9936b3d0286so230654366b.0
 for <xen-devel@lists.xenproject.org>; Thu, 12 Oct 2023 13:17:55 -0700 (PDT)
Received: from localhost.localdomain ([46.248.82.114])
 by smtp.gmail.com with ESMTPSA id
 i3-20020a1709064ec300b00997d7aa59fasm11692552ejv.14.2023.10.12.13.17.54
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Thu, 12 Oct 2023 13:17: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: 6dcea540-693c-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1697141875; x=1697746675; 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=dP3aL79sYs1c4BQa/blYah2PDJJ2vnSgtty8PYNApno=;
        b=k3Ts3T4x/777fdwyVtE44EAZIoybirBYtdpc0zmZ+uEm2pS8nVoXL1M3Yx1JJrpIXH
         pc8e7qW6Zm5Lle9rpf9AVWfO9KbCyPQTmeMOxb3ZmqV0E6KfFmzWsjQkVShzJToxI7xe
         Zea84028NANMIYBTosdd0Bb+smrcmVwtaeXvHc9+rN2vO+1fmCDjTG9sQsA6i1u4XDHC
         G1OYiCdtwJxaBkNi7g9qH7NoX5McQNGJalvgBMxrihHxvi8DJiUK/zy2XRuVmOxmK0Sa
         Q192VUiJfaC2KQN1fxrWhJ7n8SEpygTCjJRp+7nQ0cR5OgEiR2ulUCrSHixSlxGvlHj1
         1R1w==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697141875; x=1697746675;
        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=dP3aL79sYs1c4BQa/blYah2PDJJ2vnSgtty8PYNApno=;
        b=PKydG79fdr5W+3bhMUi9VQpw9wz7UJw7beFMUI/1A+6sML4+WTuLr4fDnbvxBAz0ZR
         lgNq5QIar5aygd8tFn9U387EtZhO/AyfHgrDy4MFRYpt3eY4ng5YH7yWIKbVFSqtgljq
         ML5UjYK7dKwJfYez1YHQ0TeDmErpUJBePxhaZreg4PTPqrNw3+McHnp5b7KsNZxECdZC
         /QJqs0TkvzS5BMoEvd/jwtR1sX0ywy7H9zB4Cd+LNFSgp89Nl7Hm7RkQcBPEWebi6S+Q
         n4FCD986hVkPPg7bZw1OWuixyROxHHFvBehnA3fCyLpHgKSCXLJBIjLW72m+qm7vDLdR
         IWmg==
X-Gm-Message-State: AOJu0YwZmmy1LO3vRzwxUy5wrtI6vVWM/VcspKXnyvUlWdRhWU5mt9fe
	POitHbBri3Skxeyba6k1BKc=
X-Google-Smtp-Source: AGHT+IELD/QO6fBcwqkcTgyrHC0COQGBYhxDdLfdbjk87Rjg0EnZvIr/K2PKpKW7JQhrL4PcCINltg==
X-Received: by 2002:a17:907:c205:b0:9a5:c54f:da1c with SMTP id ti5-20020a170907c20500b009a5c54fda1cmr22823408ejc.47.1697141874988;
        Thu, 12 Oct 2023 13:17:54 -0700 (PDT)
From: Uros Bizjak <ubizjak@gmail.com>
To: x86@kernel.org,
	xen-devel@lists.xenproject.org,
	linux-kernel@vger.kernel.org
Cc: Uros Bizjak <ubizjak@gmail.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>,
	Peter Zijlstra <peterz@infradead.org>
Subject: [PATCH v2 1/4] x86/percpu: Introduce PER_CPU_ARG and use it in cmpxchg{8,16}b_emu.S
Date: Thu, 12 Oct 2023 22:12:04 +0200
Message-ID: <20231012201743.292149-2-ubizjak@gmail.com>
X-Mailer: git-send-email 2.41.0
In-Reply-To: <20231012201743.292149-1-ubizjak@gmail.com>
References: <20231012201743.292149-1-ubizjak@gmail.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

PER_CPU_VAR macro is intended to be applied to a symbol and should not
be used with general operands. Introduce new PER_CPU_ARG macro and
use it in cmpxchg{8,16}b_emu.S instead.

PER_CPU_VAR macro will be repurposed for %rip-relative addressing.

Also add a missing function comment to this_cpu_cmpxchg8b_emu.

No functional changes intended.

Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: Borislav Petkov <bp@alien8.de>
Cc: Dave Hansen <dave.hansen@linux.intel.com>
Cc: "H. Peter Anvin" <hpa@zytor.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Signed-off-by: Uros Bizjak <ubizjak@gmail.com>
--
v2: Introduce PER_CPU_ARG macro to conditionally enable
    segment registers in cmpxchg{8,16}b_emu.S for CONFIG_SMP.
---
 arch/x86/include/asm/percpu.h |  2 ++
 arch/x86/lib/cmpxchg16b_emu.S | 12 ++++++------
 arch/x86/lib/cmpxchg8b_emu.S  | 24 ++++++++++++++++++------
 3 files changed, 26 insertions(+), 12 deletions(-)

diff --git a/arch/x86/include/asm/percpu.h b/arch/x86/include/asm/percpu.h
index 34734d730463..83e6a4bcea38 100644
--- a/arch/x86/include/asm/percpu.h
+++ b/arch/x86/include/asm/percpu.h
@@ -11,8 +11,10 @@
 #ifdef __ASSEMBLY__
 
 #ifdef CONFIG_SMP
+#define PER_CPU_ARG(arg)	%__percpu_seg:arg
 #define PER_CPU_VAR(var)	%__percpu_seg:var
 #else /* ! SMP */
+#define PER_CPU_ARG(arg)	arg
 #define PER_CPU_VAR(var)	var
 #endif	/* SMP */
 
diff --git a/arch/x86/lib/cmpxchg16b_emu.S b/arch/x86/lib/cmpxchg16b_emu.S
index 6962df315793..b6b942d07a00 100644
--- a/arch/x86/lib/cmpxchg16b_emu.S
+++ b/arch/x86/lib/cmpxchg16b_emu.S
@@ -23,14 +23,14 @@ SYM_FUNC_START(this_cpu_cmpxchg16b_emu)
 	cli
 
 	/* if (*ptr == old) */
-	cmpq	PER_CPU_VAR(0(%rsi)), %rax
+	cmpq	PER_CPU_ARG(0(%rsi)), %rax
 	jne	.Lnot_same
-	cmpq	PER_CPU_VAR(8(%rsi)), %rdx
+	cmpq	PER_CPU_ARG(8(%rsi)), %rdx
 	jne	.Lnot_same
 
 	/* *ptr = new */
-	movq	%rbx, PER_CPU_VAR(0(%rsi))
-	movq	%rcx, PER_CPU_VAR(8(%rsi))
+	movq	%rbx, PER_CPU_ARG(0(%rsi))
+	movq	%rcx, PER_CPU_ARG(8(%rsi))
 
 	/* set ZF in EFLAGS to indicate success */
 	orl	$X86_EFLAGS_ZF, (%rsp)
@@ -42,8 +42,8 @@ SYM_FUNC_START(this_cpu_cmpxchg16b_emu)
 	/* *ptr != old */
 
 	/* old = *ptr */
-	movq	PER_CPU_VAR(0(%rsi)), %rax
-	movq	PER_CPU_VAR(8(%rsi)), %rdx
+	movq	PER_CPU_ARG(0(%rsi)), %rax
+	movq	PER_CPU_ARG(8(%rsi)), %rdx
 
 	/* clear ZF in EFLAGS to indicate failure */
 	andl	$(~X86_EFLAGS_ZF), (%rsp)
diff --git a/arch/x86/lib/cmpxchg8b_emu.S b/arch/x86/lib/cmpxchg8b_emu.S
index 49805257b125..9a0a7feeaf7c 100644
--- a/arch/x86/lib/cmpxchg8b_emu.S
+++ b/arch/x86/lib/cmpxchg8b_emu.S
@@ -53,18 +53,30 @@ EXPORT_SYMBOL(cmpxchg8b_emu)
 
 #ifndef CONFIG_UML
 
+/*
+ * Emulate 'cmpxchg8b %fs:(%rsi)'
+ *
+ * Inputs:
+ * %esi : memory location to compare
+ * %eax : low 32 bits of old value
+ * %edx : high 32 bits of old value
+ * %ebx : low 32 bits of new value
+ * %ecx : high 32 bits of new value
+ *
+ * Notably this is not LOCK prefixed and is not safe against NMIs
+ */
 SYM_FUNC_START(this_cpu_cmpxchg8b_emu)
 
 	pushfl
 	cli
 
-	cmpl	PER_CPU_VAR(0(%esi)), %eax
+	cmpl	PER_CPU_ARG(0(%esi)), %eax
 	jne	.Lnot_same2
-	cmpl	PER_CPU_VAR(4(%esi)), %edx
+	cmpl	PER_CPU_ARG(4(%esi)), %edx
 	jne	.Lnot_same2
 
-	movl	%ebx, PER_CPU_VAR(0(%esi))
-	movl	%ecx, PER_CPU_VAR(4(%esi))
+	movl	%ebx, PER_CPU_ARG(0(%esi))
+	movl	%ecx, PER_CPU_ARG(4(%esi))
 
 	orl	$X86_EFLAGS_ZF, (%esp)
 
@@ -72,8 +84,8 @@ SYM_FUNC_START(this_cpu_cmpxchg8b_emu)
 	RET
 
 .Lnot_same2:
-	movl	PER_CPU_VAR(0(%esi)), %eax
-	movl	PER_CPU_VAR(4(%esi)), %edx
+	movl	PER_CPU_ARG(0(%esi)), %eax
+	movl	PER_CPU_ARG(4(%esi)), %edx
 
 	andl	$(~X86_EFLAGS_ZF), (%esp)
 
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Thu Oct 12 20:18:02 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 20:18:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616001.957643 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qr285-00065o-R5; Thu, 12 Oct 2023 20:17:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616001.957643; Thu, 12 Oct 2023 20: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 1qr285-00065h-Ns; Thu, 12 Oct 2023 20:17:57 +0000
Received: by outflank-mailman (input) for mailman id 616001;
 Thu, 12 Oct 2023 20: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=Qqh1=F2=gmail.com=ubizjak@srs-se1.protection.inumbo.net>)
 id 1qr284-00065W-9G
 for xen-devel@lists.xenproject.org; Thu, 12 Oct 2023 20:17:56 +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 6d80738e-693c-11ee-98d4-6d05b1d4d9a1;
 Thu, 12 Oct 2023 22:17:55 +0200 (CEST)
Received: by mail-ej1-x62c.google.com with SMTP id
 a640c23a62f3a-9936b3d0286so230652866b.0
 for <xen-devel@lists.xenproject.org>; Thu, 12 Oct 2023 13:17:55 -0700 (PDT)
Received: from localhost.localdomain ([46.248.82.114])
 by smtp.gmail.com with ESMTPSA id
 i3-20020a1709064ec300b00997d7aa59fasm11692552ejv.14.2023.10.12.13.17.53
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Thu, 12 Oct 2023 13:17: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: 6d80738e-693c-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1697141875; x=1697746675; 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=WEFicMsW4s3skYy4mNr+LHCDs51WUiGt3MBVpKqJRSI=;
        b=J8unfYQ81dUQvqq9Fn2m++xjFelS3IwDbLDZ4qjrb0ss9KCn7bqWU0x6Tog5o4Ltya
         hAevEPswrUCFgsXLcnAprS38leDEPC4P/rEFDWmkWNkcSFbu/hcyRhIUGdqRIGe4MmeQ
         uiw9lRuZlcKq+w54jCKtBvh5u9umKJ3eskoV6pQ27xTF2LtgJI09fCRC9elOkXsly695
         PRWWEABCVJZbKN14BEEHW7W+gI3Ry5B4bVR9qFYf3wZ3yp2so7eWCAsmJdwOcUAszukA
         vm77XVhccuCFtIyk2mBV6LZS6PqJI+2az4GR/d6HYJSUXL/J+9ZAqJ36NiXUnZRxLxIc
         641A==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697141875; x=1697746675;
        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=WEFicMsW4s3skYy4mNr+LHCDs51WUiGt3MBVpKqJRSI=;
        b=aRIaTx069VUuJWQx0bj5a0fZhyJQOprd84QQqQ2CmAkWjzpCG40N4DTTAQtUKDTPb1
         D9jUFuFh3mi4dZD0SghoI5ugD8rJ5QO0eAFPm2GShmM7hOqkyB8LJGdL1fwG7qKRXgVa
         Nn5r5T2yMKDaECFVukkOKUY2RM3rbsh9u8G7FMVoxbwclzHdTh5U/p5Xb5xov6hP4wqT
         8xXcptOOqgTq1WiuPRbxTU8vI8M71HDj1dBFg81VrNJNn25YZGLAtLrQvtUA0G7Qmud4
         SWpEfRZ9ZVMocRGTanEI8/nL6H0SlF/TGE6sejWfmo9sgSTNc0bX7vFD2qsseN693d1i
         A88A==
X-Gm-Message-State: AOJu0Yzwzj7XWF+1h0QuPWQh2RBBHUZjcFb3j9JStsdlc0rYTKxf4DDe
	ld450dzcmgkZnZNjL/dine0=
X-Google-Smtp-Source: AGHT+IHCzOG5Qj1uWOXe+fHsuoCjTwSpfunPEUadKxQrsehhq/m4xv7XrF8ve3tA1LAlh7XjukB2Ww==
X-Received: by 2002:a17:906:73db:b0:9ae:6a9b:274e with SMTP id n27-20020a17090673db00b009ae6a9b274emr24705973ejl.8.1697141874375;
        Thu, 12 Oct 2023 13:17:54 -0700 (PDT)
From: Uros Bizjak <ubizjak@gmail.com>
To: x86@kernel.org,
	xen-devel@lists.xenproject.org,
	linux-kernel@vger.kernel.org
Cc: Uros Bizjak <ubizjak@gmail.com>,
	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>
Subject: [PATCH v2 0/4]  Introduce %rip-relative addressing to PER_CPU_VAR macro
Date: Thu, 12 Oct 2023 22:12:03 +0200
Message-ID: <20231012201743.292149-1-ubizjak@gmail.com>
X-Mailer: git-send-email 2.41.0
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The following patch series introduces %rip-relative addressing to
PER_CPU_VAR macro. Instruction with %rip-relative address operand is
one byte shorter than its absolute address counterpart and is also
compatible with position independent executable (-fpie) build.

The first three patches are cleanups that fix various inconsistencies
throughout the assembly code.

The last patch introduces (%rip) suffix and uses it for x86_64 target,
resulting in a small code size decrease:

   text    data     bss     dec     hex filename
25510677        4386685  808388 30705750        1d48856 vmlinux-new.o
25510629        4386685  808388 30705702        1d48826 vmlinux-old.o

Patch series is against current mainline and can be applied independently
of ongoing percpu work.

v2: Introduce PER_CPU_ARG macro to conditionally enable
    segment registers in cmpxchg{8,16}b_emu.S for CONFIG_SMP.

Cc: Juergen Gross <jgross@suse.com>
Cc: Boris Ostrovsky <boris.ostrovsky@oracle.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: Borislav Petkov <bp@alien8.de>
Cc: Dave Hansen <dave.hansen@linux.intel.com>
Cc: "H. Peter Anvin" <hpa@zytor.com>

Uros Bizjak (4):
  x86/percpu: Introduce PER_CPU_ARG and use it in cmpxchg{8,16}b_emu.S
  x86/percpu: Correct PER_CPU_VAR usage to include symbol and its addend
  x86/percpu, xen: Correct PER_CPU_VAR usage to include symbol and its
    addend
  x86/percpu: Introduce %rip-relative addressing to PER_CPU_VAR macro

 arch/x86/entry/calling.h      |  2 +-
 arch/x86/entry/entry_32.S     |  2 +-
 arch/x86/entry/entry_64.S     |  2 +-
 arch/x86/include/asm/percpu.h | 10 +++++++---
 arch/x86/kernel/head_64.S     |  2 +-
 arch/x86/lib/cmpxchg16b_emu.S | 12 ++++++------
 arch/x86/lib/cmpxchg8b_emu.S  | 24 ++++++++++++++++++------
 arch/x86/xen/xen-asm.S        | 10 +++++-----
 8 files changed, 40 insertions(+), 24 deletions(-)

-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Thu Oct 12 20:18:02 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 20:18:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616002.957649 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qr286-00069T-7C; Thu, 12 Oct 2023 20:17:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616002.957649; Thu, 12 Oct 2023 20:17: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 1qr285-000696-Vb; Thu, 12 Oct 2023 20:17:57 +0000
Received: by outflank-mailman (input) for mailman id 616002;
 Thu, 12 Oct 2023 20: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=Qqh1=F2=gmail.com=ubizjak@srs-se1.protection.inumbo.net>)
 id 1qr284-00065W-Tk
 for xen-devel@lists.xenproject.org; Thu, 12 Oct 2023 20:17:56 +0000
Received: from mail-ej1-x629.google.com (mail-ej1-x629.google.com
 [2a00:1450:4864:20::629])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 6e02db8e-693c-11ee-98d4-6d05b1d4d9a1;
 Thu, 12 Oct 2023 22:17:56 +0200 (CEST)
Received: by mail-ej1-x629.google.com with SMTP id
 a640c23a62f3a-9b9faf05f51so211927066b.2
 for <xen-devel@lists.xenproject.org>; Thu, 12 Oct 2023 13:17:56 -0700 (PDT)
Received: from localhost.localdomain ([46.248.82.114])
 by smtp.gmail.com with ESMTPSA id
 i3-20020a1709064ec300b00997d7aa59fasm11692552ejv.14.2023.10.12.13.17.55
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Thu, 12 Oct 2023 13: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: 6e02db8e-693c-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1697141875; x=1697746675; 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=hDMSEbE6Ie84T5BkOrHBUuyCR3ToRtFXIBnMpzsN9Bo=;
        b=HKW2VW07oRHR+EE7e693Prw/yDl9jPk7xnPtRYI0DpEScXozacnbJ7+dMsAzUvv8uj
         WFFyYC+hmAJdtDdR5skipow80yxnD0tIarn5ndnnGwVs4nOaYI3pPfZjEzm91i1mGp2C
         agN30yoTnce4OWGXIamrGovRaHkYIZSzVTDEF6R7kiHstOezPuApZGzlj6b6GZ0WgJEy
         7jnDxVoyw3oCly+aypNIGqily1JAUWJO+65Hb43R6WHFe72aRLiuBKwcqNYic3Psxocc
         CXaqIavRjboMlIVzGKcdlqU7A9pitLAVD4K4/4ESSIZA/0tF8wJRfKWfVCU6KK5R49BK
         RJXg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697141875; x=1697746675;
        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=hDMSEbE6Ie84T5BkOrHBUuyCR3ToRtFXIBnMpzsN9Bo=;
        b=O8td+M1m9qgZab606f/N3QSWcJw/FuOSIRY+ZddtYQu8otYl2324BP6uhCsL7gkZDq
         bBlZpekkAIkgiEMUEeYEHC1GkdTyYZhHuSCmum5iwIkE/mBRy4pWJgufrJ2yigfDQruR
         r5qw/R5zzmEZCi4SAIYkhbqTR+qDqRJi7vLmQssNK5VNN3zRSWYCVPZ9kaXoHV+bX93w
         GJTAGdITb2hZh2mzPhQvUnQN4bnVUTD5GjNo9xEty//LW4Dl05LoEMZ6yopbc0AYO5eX
         Y2D78dJq/stxZau/b0sXcISRt6Y7UsJY/bIZ2oQQ+FCTGrGWvH4IFl09D16isb77j7St
         uqLw==
X-Gm-Message-State: AOJu0Yxht8tI3o5tIahsoQT0advc6fJYTygw199L/kzg9EVRUAUtk5V2
	gNLGTt6D5ppU3mrJGVyLiek=
X-Google-Smtp-Source: AGHT+IGhoWha4M/ka8e2JRhDL76Q3hwso5VE/0ZSrUJ5K72lB/D3qkiWMd0b7LflyD+sVTpFdiWVHw==
X-Received: by 2002:a17:906:3e52:b0:9b2:aa2f:ab69 with SMTP id t18-20020a1709063e5200b009b2aa2fab69mr24396120eji.30.1697141875609;
        Thu, 12 Oct 2023 13:17:55 -0700 (PDT)
From: Uros Bizjak <ubizjak@gmail.com>
To: x86@kernel.org,
	xen-devel@lists.xenproject.org,
	linux-kernel@vger.kernel.org
Cc: Uros Bizjak <ubizjak@gmail.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>,
	Peter Zijlstra <peterz@infradead.org>
Subject: [PATCH v2 2/4] x86/percpu: Correct PER_CPU_VAR usage to include symbol and its addend
Date: Thu, 12 Oct 2023 22:12:05 +0200
Message-ID: <20231012201743.292149-3-ubizjak@gmail.com>
X-Mailer: git-send-email 2.41.0
In-Reply-To: <20231012201743.292149-1-ubizjak@gmail.com>
References: <20231012201743.292149-1-ubizjak@gmail.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

PER_CPU_VAR macro should be applied to a symbol and its addend.
Inconsistent usage is currently harmless, but needs to be corrected
before %rip-relative addressing is introduced to PER_CPU_VAR macro.

No functional changes intended.

Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: Borislav Petkov <bp@alien8.de>
Cc: Dave Hansen <dave.hansen@linux.intel.com>
Cc: "H. Peter Anvin" <hpa@zytor.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Signed-off-by: Uros Bizjak <ubizjak@gmail.com>
---
 arch/x86/entry/calling.h  | 2 +-
 arch/x86/entry/entry_32.S | 2 +-
 arch/x86/entry/entry_64.S | 2 +-
 arch/x86/kernel/head_64.S | 2 +-
 4 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/arch/x86/entry/calling.h b/arch/x86/entry/calling.h
index f6907627172b..47368ab0bda0 100644
--- a/arch/x86/entry/calling.h
+++ b/arch/x86/entry/calling.h
@@ -173,7 +173,7 @@ For 32-bit we have the following conventions - kernel is built with
 .endm
 
 #define THIS_CPU_user_pcid_flush_mask   \
-	PER_CPU_VAR(cpu_tlbstate) + TLB_STATE_user_pcid_flush_mask
+	PER_CPU_VAR(cpu_tlbstate + TLB_STATE_user_pcid_flush_mask)
 
 .macro SWITCH_TO_USER_CR3_NOSTACK scratch_reg:req scratch_reg2:req
 	ALTERNATIVE "jmp .Lend_\@", "", X86_FEATURE_PTI
diff --git a/arch/x86/entry/entry_32.S b/arch/x86/entry/entry_32.S
index 6e6af42e044a..d4e094b2c877 100644
--- a/arch/x86/entry/entry_32.S
+++ b/arch/x86/entry/entry_32.S
@@ -305,7 +305,7 @@
 .macro CHECK_AND_APPLY_ESPFIX
 #ifdef CONFIG_X86_ESPFIX32
 #define GDT_ESPFIX_OFFSET (GDT_ENTRY_ESPFIX_SS * 8)
-#define GDT_ESPFIX_SS PER_CPU_VAR(gdt_page) + GDT_ESPFIX_OFFSET
+#define GDT_ESPFIX_SS PER_CPU_VAR(gdt_page + GDT_ESPFIX_OFFSET)
 
 	ALTERNATIVE	"jmp .Lend_\@", "", X86_BUG_ESPFIX
 
diff --git a/arch/x86/entry/entry_64.S b/arch/x86/entry/entry_64.S
index 43606de22511..3d6770b87b87 100644
--- a/arch/x86/entry/entry_64.S
+++ b/arch/x86/entry/entry_64.S
@@ -252,7 +252,7 @@ SYM_FUNC_START(__switch_to_asm)
 
 #ifdef CONFIG_STACKPROTECTOR
 	movq	TASK_stack_canary(%rsi), %rbx
-	movq	%rbx, PER_CPU_VAR(fixed_percpu_data) + FIXED_stack_canary
+	movq	%rbx, PER_CPU_VAR(fixed_percpu_data + FIXED_stack_canary)
 #endif
 
 	/*
diff --git a/arch/x86/kernel/head_64.S b/arch/x86/kernel/head_64.S
index ea6995920b7a..bfe5ec2f4f83 100644
--- a/arch/x86/kernel/head_64.S
+++ b/arch/x86/kernel/head_64.S
@@ -449,7 +449,7 @@ SYM_CODE_START(soft_restart_cpu)
 	UNWIND_HINT_END_OF_STACK
 
 	/* Find the idle task stack */
-	movq	PER_CPU_VAR(pcpu_hot) + X86_current_task, %rcx
+	movq	PER_CPU_VAR(pcpu_hot + X86_current_task), %rcx
 	movq	TASK_threadsp(%rcx), %rsp
 
 	jmp	.Ljump_to_C_code
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Thu Oct 12 20:18:02 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 20:18:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616005.957675 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qr289-0006id-1x; Thu, 12 Oct 2023 20:18:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616005.957675; Thu, 12 Oct 2023 20: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 1qr288-0006hq-Qr; Thu, 12 Oct 2023 20:18:00 +0000
Received: by outflank-mailman (input) for mailman id 616005;
 Thu, 12 Oct 2023 20: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=Qqh1=F2=gmail.com=ubizjak@srs-se1.protection.inumbo.net>)
 id 1qr287-000668-8Y
 for xen-devel@lists.xenproject.org; Thu, 12 Oct 2023 20:17:59 +0000
Received: from mail-ej1-x629.google.com (mail-ej1-x629.google.com
 [2a00:1450:4864:20::629])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 6ef65c04-693c-11ee-9b0e-b553b5be7939;
 Thu, 12 Oct 2023 22:17:57 +0200 (CEST)
Received: by mail-ej1-x629.google.com with SMTP id
 a640c23a62f3a-9ae7383b7ecso539667466b.0
 for <xen-devel@lists.xenproject.org>; Thu, 12 Oct 2023 13:17:57 -0700 (PDT)
Received: from localhost.localdomain ([46.248.82.114])
 by smtp.gmail.com with ESMTPSA id
 i3-20020a1709064ec300b00997d7aa59fasm11692552ejv.14.2023.10.12.13.17.56
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Thu, 12 Oct 2023 13:17: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: 6ef65c04-693c-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1697141877; x=1697746677; 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=ALeoGKxiNsNupqhZSQanqEeTZk7gDRiZ8s33h27zT00=;
        b=E+JH0n5WXyAT6++c3A81kHS8x3g7+pypAo4OLAhsxjKwbnFlLq5uIt+GzWt2KH2qmv
         24qo7rLatVC0XaybYNQVZW0QdghYKXtmnPKyPhuTkhA/lbzNnDHPgusfprvxGLAsEjDs
         R0pg4iijttj5crmuvN9HkM0hlwhta4hrc9DOhv2PGWph8dx0LI8pVdrZlMGNoMtZFQF3
         /8bdgptkp0oYUfR24jrAHFV2cHooCvCtMZyk8RIkPH3DJEvfrpML0wtTOs6xH0iUJ+UF
         B4iclaj2LGHXdgmv6L+LSOAomAcHr6SApjI2u6wmRNZx8WbZdbKcyKvZT0Ejz+3XAtk7
         yOWA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697141877; x=1697746677;
        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=ALeoGKxiNsNupqhZSQanqEeTZk7gDRiZ8s33h27zT00=;
        b=RQwaZz+LemqUcL5BElaVqkgELA0VxBI+67tMgV4wMFU20rOQyT//nym58/ft+qd3Ed
         5NZmYC2JQeXZE9ztqviz+eV69Pc2Lns5vhFkI8N/O6nxp6VC/Qt0QlXg/BSE9ivlincA
         GaMyXbo9nnHvtrEMUJIF6yoPRedBwb4FsJ0p9xHdsjeh0xqW+qJK+1LEtwffcm2ja3qa
         89V26pOR3WlYJngeX8X+KoisAv2XsxQWKkk5fQdQYspIlRApM53odztYR2iLz9GjAkY3
         9s2e7TvY5wTsOBzq7jGjgKQaHu3w0Xcw/L8BGpQWZj1HmmairX/7XV/vi/rf+BEWscIc
         kyqw==
X-Gm-Message-State: AOJu0YwDlGt3OhabphMXf+naVUZQHGFlANBv7QT65Rq8UFv+Y08dEqJE
	aMSvA0VBbYl3SDliGNLM480=
X-Google-Smtp-Source: AGHT+IGL/aK1BGpYJaP/mMy11SXb55Cywvjox0gtbzUH0yanedqIAwh6/5blT0OJLYZSBuGZJQt9Dw==
X-Received: by 2002:a17:907:9715:b0:9ae:705a:8451 with SMTP id jg21-20020a170907971500b009ae705a8451mr21130335ejc.25.1697141877018;
        Thu, 12 Oct 2023 13:17:57 -0700 (PDT)
From: Uros Bizjak <ubizjak@gmail.com>
To: x86@kernel.org,
	xen-devel@lists.xenproject.org,
	linux-kernel@vger.kernel.org
Cc: Uros Bizjak <ubizjak@gmail.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>,
	Peter Zijlstra <peterz@infradead.org>
Subject: [PATCH v2 4/4] x86/percpu: Introduce %rip-relative addressing to PER_CPU_VAR macro
Date: Thu, 12 Oct 2023 22:12:07 +0200
Message-ID: <20231012201743.292149-5-ubizjak@gmail.com>
X-Mailer: git-send-email 2.41.0
In-Reply-To: <20231012201743.292149-1-ubizjak@gmail.com>
References: <20231012201743.292149-1-ubizjak@gmail.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Introduce x86_64 %rip-relative addressing to PER_CPU_VAR macro.
Instruction with %rip-relative address operand is one byte shorter than
its absolute address counterpart and is also compatible with position
independent executable (-fpie) build.

Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: Borislav Petkov <bp@alien8.de>
Cc: Dave Hansen <dave.hansen@linux.intel.com>
Cc: "H. Peter Anvin" <hpa@zytor.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Signed-off-by: Uros Bizjak <ubizjak@gmail.com>
---
 arch/x86/include/asm/percpu.h | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/arch/x86/include/asm/percpu.h b/arch/x86/include/asm/percpu.h
index 83e6a4bcea38..c53c5a7f8e78 100644
--- a/arch/x86/include/asm/percpu.h
+++ b/arch/x86/include/asm/percpu.h
@@ -4,19 +4,21 @@
 
 #ifdef CONFIG_X86_64
 #define __percpu_seg		gs
+#define __percpu_rel		(%rip)
 #else
 #define __percpu_seg		fs
+#define __percpu_rel
 #endif
 
 #ifdef __ASSEMBLY__
 
 #ifdef CONFIG_SMP
 #define PER_CPU_ARG(arg)	%__percpu_seg:arg
-#define PER_CPU_VAR(var)	%__percpu_seg:var
+#define PER_CPU_VAR(var)	%__percpu_seg:(var)##__percpu_rel
 #else /* ! SMP */
 #define PER_CPU_ARG(arg)	arg
-#define PER_CPU_VAR(var)	var
-#endif	/* SMP */
+#define PER_CPU_VAR(var)	(var)##__percpu_rel
+#endif /* SMP */
 
 #ifdef CONFIG_X86_64_SMP
 #define INIT_PER_CPU_VAR(var)  init_per_cpu__##var
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Thu Oct 12 20:18:03 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 20:18:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616003.957663 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qr288-0006a1-Bw; Thu, 12 Oct 2023 20:18:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616003.957663; Thu, 12 Oct 2023 20: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 1qr288-0006Zu-94; Thu, 12 Oct 2023 20:18:00 +0000
Received: by outflank-mailman (input) for mailman id 616003;
 Thu, 12 Oct 2023 20:17: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=Qqh1=F2=gmail.com=ubizjak@srs-se1.protection.inumbo.net>)
 id 1qr286-00065W-0e
 for xen-devel@lists.xenproject.org; Thu, 12 Oct 2023 20:17:58 +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 6ee2337e-693c-11ee-98d4-6d05b1d4d9a1;
 Thu, 12 Oct 2023 22:17:57 +0200 (CEST)
Received: by mail-ej1-x62c.google.com with SMTP id
 a640c23a62f3a-9ae75ece209so226064166b.3
 for <xen-devel@lists.xenproject.org>; Thu, 12 Oct 2023 13:17:57 -0700 (PDT)
Received: from localhost.localdomain ([46.248.82.114])
 by smtp.gmail.com with ESMTPSA id
 i3-20020a1709064ec300b00997d7aa59fasm11692552ejv.14.2023.10.12.13.17.55
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Thu, 12 Oct 2023 13:17: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: 6ee2337e-693c-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1697141877; x=1697746677; 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=yNuYyWEUkCBUvaAXEq0aoPImcZWnaX/wCmiSUbk6m0g=;
        b=K7+SVIUgeZgWdxjKBU1cI0+jjvUTJWmAlFiFS9dqucq79JTIByojTtQGxBVCwW55+I
         zV4zTFPwybuLhA3lXoqP5HrT2f47iosOBjQ/3dQa3UAsOnLARjRawCfhCL72GUXZnxlI
         qRuV94ta88pVrczD95eppAuLxkGLfpmSt9GBkOLAmAqj+Bz7LUN5CBftwrZ5SPz/aU3Q
         8BT2TnagMbSAko/0NXyXlhwGWGloLtas9/e6N+XUL5jit65110LKK1TH4/7WVq/wp+KN
         Hwz6a8GPOcufEYOuG3Wv/sdLGyQCyy9wmk7+PGRV324xSE0JCfLBOZ3VlAP81MWYoSea
         U15g==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697141877; x=1697746677;
        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=yNuYyWEUkCBUvaAXEq0aoPImcZWnaX/wCmiSUbk6m0g=;
        b=aaxjnMiMue9bTq7cf680m/s6Lp3wPhrbqw7uRIc6vVrvq5fSTfud9SnlFWAVznFeC9
         9+v+SedZ8sejMSGIvN+cXyXq04KldyiiY5eU7l9j0zo9IXIQ0TN7qc0xwlq8z0oWG+Z9
         O0LT4SiPPYC7NcI2uFgrKOIhL1Xp6ZchIOCenB8q7tqhXvPUDK6KG1DOST8TuPb2SmvF
         G4WFeactj5oRJqYr/cCewk5MKc4hkX9iMTXDmZaGLBWaeAgo0ZqCDyXX6yntDEg+8DTP
         k1qJ/RxVeMW1cYfcDTRF1/fpd7I5oHlhKOmcWBWF5eMoa3K/H3bpkdOyK6Cts1+WpXRV
         6JBw==
X-Gm-Message-State: AOJu0YwUlIdbybr1NHOhTufwCkid5Ykb0Ae1KHfJMlQ7MIovUhofhekv
	xsMwf4VpWjDNQ8tl3I53PiU=
X-Google-Smtp-Source: AGHT+IGmOK7ZIlt1roxwebKg2U7mq6HSiacaJSzpvBLJtS6/apvSq2Xo3cDatgmKdrTKmuZCNTp1Yw==
X-Received: by 2002:a17:906:3003:b0:9b2:8df4:c692 with SMTP id 3-20020a170906300300b009b28df4c692mr22597068ejz.27.1697141876293;
        Thu, 12 Oct 2023 13:17:56 -0700 (PDT)
From: Uros Bizjak <ubizjak@gmail.com>
To: x86@kernel.org,
	xen-devel@lists.xenproject.org,
	linux-kernel@vger.kernel.org
Cc: Uros Bizjak <ubizjak@gmail.com>,
	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>
Subject: [PATCH v2 3/4] x86/percpu, xen: Correct PER_CPU_VAR usage to include symbol and its addend
Date: Thu, 12 Oct 2023 22:12:06 +0200
Message-ID: <20231012201743.292149-4-ubizjak@gmail.com>
X-Mailer: git-send-email 2.41.0
In-Reply-To: <20231012201743.292149-1-ubizjak@gmail.com>
References: <20231012201743.292149-1-ubizjak@gmail.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

PER_CPU_VAR macro should be applied to a symbol and its addend.
Inconsisten usage is currently harmless, but needs to be corrected
before %rip-relative addressing is introduced to PER_CPU_VAR macro.

No functional changes intended.

Cc: Juergen Gross <jgross@suse.com>
Cc: Boris Ostrovsky <boris.ostrovsky@oracle.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: Borislav Petkov <bp@alien8.de>
Cc: Dave Hansen <dave.hansen@linux.intel.com>
Cc: "H. Peter Anvin" <hpa@zytor.com>
Signed-off-by: Uros Bizjak <ubizjak@gmail.com>
---
 arch/x86/xen/xen-asm.S | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/arch/x86/xen/xen-asm.S b/arch/x86/xen/xen-asm.S
index 9e5e68008785..448958ddbaf8 100644
--- a/arch/x86/xen/xen-asm.S
+++ b/arch/x86/xen/xen-asm.S
@@ -28,7 +28,7 @@
  * non-zero.
  */
 SYM_FUNC_START(xen_irq_disable_direct)
-	movb $1, PER_CPU_VAR(xen_vcpu_info) + XEN_vcpu_info_mask
+	movb $1, PER_CPU_VAR(xen_vcpu_info + XEN_vcpu_info_mask)
 	RET
 SYM_FUNC_END(xen_irq_disable_direct)
 
@@ -69,7 +69,7 @@ SYM_FUNC_END(check_events)
 SYM_FUNC_START(xen_irq_enable_direct)
 	FRAME_BEGIN
 	/* Unmask events */
-	movb $0, PER_CPU_VAR(xen_vcpu_info) + XEN_vcpu_info_mask
+	movb $0, PER_CPU_VAR(xen_vcpu_info + XEN_vcpu_info_mask)
 
 	/*
 	 * Preempt here doesn't matter because that will deal with any
@@ -78,7 +78,7 @@ SYM_FUNC_START(xen_irq_enable_direct)
 	 */
 
 	/* Test for pending */
-	testb $0xff, PER_CPU_VAR(xen_vcpu_info) + XEN_vcpu_info_pending
+	testb $0xff, PER_CPU_VAR(xen_vcpu_info + XEN_vcpu_info_pending)
 	jz 1f
 
 	call check_events
@@ -97,7 +97,7 @@ SYM_FUNC_END(xen_irq_enable_direct)
  * x86 use opposite senses (mask vs enable).
  */
 SYM_FUNC_START(xen_save_fl_direct)
-	testb $0xff, PER_CPU_VAR(xen_vcpu_info) + XEN_vcpu_info_mask
+	testb $0xff, PER_CPU_VAR(xen_vcpu_info + XEN_vcpu_info_mask)
 	setz %ah
 	addb %ah, %ah
 	RET
@@ -113,7 +113,7 @@ SYM_FUNC_END(xen_read_cr2);
 
 SYM_FUNC_START(xen_read_cr2_direct)
 	FRAME_BEGIN
-	_ASM_MOV PER_CPU_VAR(xen_vcpu_info) + XEN_vcpu_info_arch_cr2, %_ASM_AX
+	_ASM_MOV PER_CPU_VAR(xen_vcpu_info + XEN_vcpu_info_arch_cr2), %_ASM_AX
 	FRAME_END
 	RET
 SYM_FUNC_END(xen_read_cr2_direct);
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Thu Oct 12 20:54:18 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 20:54:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616027.957693 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qr2h6-0006eQ-Si; Thu, 12 Oct 2023 20:54:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616027.957693; Thu, 12 Oct 2023 20:54: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 1qr2h6-0006eJ-PN; Thu, 12 Oct 2023 20:54:08 +0000
Received: by outflank-mailman (input) for mailman id 616027;
 Thu, 12 Oct 2023 20:54: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=dQZf=F2=intel.com=dave.hansen@srs-se1.protection.inumbo.net>)
 id 1qr2h5-0006cP-3e
 for xen-devel@lists.xenproject.org; Thu, 12 Oct 2023 20:54:07 +0000
Received: from mgamail.intel.com (mgamail.intel.com [192.55.52.136])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 79591b39-6941-11ee-98d4-6d05b1d4d9a1;
 Thu, 12 Oct 2023 22:54:04 +0200 (CEST)
Received: from fmsmga006.fm.intel.com ([10.253.24.20])
 by fmsmga106.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 12 Oct 2023 13:53:48 -0700
Received: from aarka-mobl.amr.corp.intel.com (HELO [10.209.59.94])
 ([10.209.59.94])
 by fmsmga006-auth.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 12 Oct 2023 13:53: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: 79591b39-6941-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1697144044; x=1728680044;
  h=message-id:date:mime-version:subject:to:cc:references:
   from:in-reply-to:content-transfer-encoding;
  bh=tlHU+qyH4HPMXXzF01oswP1uhj0qbzGbfJXKzg0lJyg=;
  b=kNMjhH8FsoqMjIkNUI3xNxwXpfX8yDrYbl0v6GLkF7oMxY4A/9DlWvjf
   mFKtg+MLKrMw0866pMlwxSo1flJc3tvfqb3rxGvIkPjzVT+F4Qj6j8NuV
   iT9B6zDUC9JbP7W0E3+1rWiPV6IHJep1jOHoT+p3WE3b05P5qNvDbR6Du
   XXYuo0OWW0fKU3h1PBfdyklUhLgCZuOgnCQnYZQn3T9Ob1xaCBbScUnF9
   pgvc1YuCM85JYiTuXR6QooorZ69DdW/4RzVnGLrfiy4rDi5wqehCk7iIb
   XUnVz1XOSmBZmUbZ5G2Gf0DfzevzVu9Nl1rQIuT2Wd0/yqbnP1N0dOwxP
   Q==;
X-IronPort-AV: E=McAfee;i="6600,9927,10861"; a="364402849"
X-IronPort-AV: E=Sophos;i="6.03,219,1694761200"; 
   d="scan'208";a="364402849"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10861"; a="1001651564"
X-IronPort-AV: E=Sophos;i="6.03,219,1694761200"; 
   d="scan'208";a="1001651564"
Message-ID: <3af8dcec-66ec-4bd4-b7bf-4bc6f5f3c70f@intel.com>
Date: Thu, 12 Oct 2023 13:53:47 -0700
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v2 0/4] Introduce %rip-relative addressing to PER_CPU_VAR
 macro
Content-Language: en-US
To: Uros Bizjak <ubizjak@gmail.com>, x86@kernel.org,
 xen-devel@lists.xenproject.org, linux-kernel@vger.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>
References: <20231012201743.292149-1-ubizjak@gmail.com>
From: Dave Hansen <dave.hansen@intel.com>
Autocrypt: addr=dave.hansen@intel.com; keydata=
 xsFNBE6HMP0BEADIMA3XYkQfF3dwHlj58Yjsc4E5y5G67cfbt8dvaUq2fx1lR0K9h1bOI6fC
 oAiUXvGAOxPDsB/P6UEOISPpLl5IuYsSwAeZGkdQ5g6m1xq7AlDJQZddhr/1DC/nMVa/2BoY
 2UnKuZuSBu7lgOE193+7Uks3416N2hTkyKUSNkduyoZ9F5twiBhxPJwPtn/wnch6n5RsoXsb
 ygOEDxLEsSk/7eyFycjE+btUtAWZtx+HseyaGfqkZK0Z9bT1lsaHecmB203xShwCPT49Blxz
 VOab8668QpaEOdLGhtvrVYVK7x4skyT3nGWcgDCl5/Vp3TWA4K+IofwvXzX2ON/Mj7aQwf5W
 iC+3nWC7q0uxKwwsddJ0Nu+dpA/UORQWa1NiAftEoSpk5+nUUi0WE+5DRm0H+TXKBWMGNCFn
 c6+EKg5zQaa8KqymHcOrSXNPmzJuXvDQ8uj2J8XuzCZfK4uy1+YdIr0yyEMI7mdh4KX50LO1
 pmowEqDh7dLShTOif/7UtQYrzYq9cPnjU2ZW4qd5Qz2joSGTG9eCXLz5PRe5SqHxv6ljk8mb
 ApNuY7bOXO/A7T2j5RwXIlcmssqIjBcxsRRoIbpCwWWGjkYjzYCjgsNFL6rt4OL11OUF37wL
 QcTl7fbCGv53KfKPdYD5hcbguLKi/aCccJK18ZwNjFhqr4MliQARAQABzUVEYXZpZCBDaHJp
 c3RvcGhlciBIYW5zZW4gKEludGVsIFdvcmsgQWRkcmVzcykgPGRhdmUuaGFuc2VuQGludGVs
 LmNvbT7CwXgEEwECACIFAlQ+9J0CGwMGCwkIBwMCBhUIAgkKCwQWAgMBAh4BAheAAAoJEGg1
 lTBwyZKwLZUP/0dnbhDc229u2u6WtK1s1cSd9WsflGXGagkR6liJ4um3XCfYWDHvIdkHYC1t
 MNcVHFBwmQkawxsYvgO8kXT3SaFZe4ISfB4K4CL2qp4JO+nJdlFUbZI7cz/Td9z8nHjMcWYF
 IQuTsWOLs/LBMTs+ANumibtw6UkiGVD3dfHJAOPNApjVr+M0P/lVmTeP8w0uVcd2syiaU5jB
 aht9CYATn+ytFGWZnBEEQFnqcibIaOrmoBLu2b3fKJEd8Jp7NHDSIdrvrMjYynmc6sZKUqH2
 I1qOevaa8jUg7wlLJAWGfIqnu85kkqrVOkbNbk4TPub7VOqA6qG5GCNEIv6ZY7HLYd/vAkVY
 E8Plzq/NwLAuOWxvGrOl7OPuwVeR4hBDfcrNb990MFPpjGgACzAZyjdmYoMu8j3/MAEW4P0z
 F5+EYJAOZ+z212y1pchNNauehORXgjrNKsZwxwKpPY9qb84E3O9KYpwfATsqOoQ6tTgr+1BR
 CCwP712H+E9U5HJ0iibN/CDZFVPL1bRerHziuwuQuvE0qWg0+0SChFe9oq0KAwEkVs6ZDMB2
 P16MieEEQ6StQRlvy2YBv80L1TMl3T90Bo1UUn6ARXEpcbFE0/aORH/jEXcRteb+vuik5UGY
 5TsyLYdPur3TXm7XDBdmmyQVJjnJKYK9AQxj95KlXLVO38lczsFNBFRjzmoBEACyAxbvUEhd
 GDGNg0JhDdezyTdN8C9BFsdxyTLnSH31NRiyp1QtuxvcqGZjb2trDVuCbIzRrgMZLVgo3upr
 MIOx1CXEgmn23Zhh0EpdVHM8IKx9Z7V0r+rrpRWFE8/wQZngKYVi49PGoZj50ZEifEJ5qn/H
 Nsp2+Y+bTUjDdgWMATg9DiFMyv8fvoqgNsNyrrZTnSgoLzdxr89FGHZCoSoAK8gfgFHuO54B
 lI8QOfPDG9WDPJ66HCodjTlBEr/Cwq6GruxS5i2Y33YVqxvFvDa1tUtl+iJ2SWKS9kCai2DR
 3BwVONJEYSDQaven/EHMlY1q8Vln3lGPsS11vSUK3QcNJjmrgYxH5KsVsf6PNRj9mp8Z1kIG
 qjRx08+nnyStWC0gZH6NrYyS9rpqH3j+hA2WcI7De51L4Rv9pFwzp161mvtc6eC/GxaiUGuH
 BNAVP0PY0fqvIC68p3rLIAW3f97uv4ce2RSQ7LbsPsimOeCo/5vgS6YQsj83E+AipPr09Caj
 0hloj+hFoqiticNpmsxdWKoOsV0PftcQvBCCYuhKbZV9s5hjt9qn8CE86A5g5KqDf83Fxqm/
 vXKgHNFHE5zgXGZnrmaf6resQzbvJHO0Fb0CcIohzrpPaL3YepcLDoCCgElGMGQjdCcSQ+Ci
 FCRl0Bvyj1YZUql+ZkptgGjikQARAQABwsFfBBgBAgAJBQJUY85qAhsMAAoJEGg1lTBwyZKw
 l4IQAIKHs/9po4spZDFyfDjunimEhVHqlUt7ggR1Hsl/tkvTSze8pI1P6dGp2XW6AnH1iayn
 yRcoyT0ZJ+Zmm4xAH1zqKjWplzqdb/dO28qk0bPso8+1oPO8oDhLm1+tY+cOvufXkBTm+whm
 +AyNTjaCRt6aSMnA/QHVGSJ8grrTJCoACVNhnXg/R0g90g8iV8Q+IBZyDkG0tBThaDdw1B2l
 asInUTeb9EiVfL/Zjdg5VWiF9LL7iS+9hTeVdR09vThQ/DhVbCNxVk+DtyBHsjOKifrVsYep
 WpRGBIAu3bK8eXtyvrw1igWTNs2wazJ71+0z2jMzbclKAyRHKU9JdN6Hkkgr2nPb561yjcB8
 sIq1pFXKyO+nKy6SZYxOvHxCcjk2fkw6UmPU6/j/nQlj2lfOAgNVKuDLothIxzi8pndB8Jju
 KktE5HJqUUMXePkAYIxEQ0mMc8Po7tuXdejgPMwgP7x65xtfEqI0RuzbUioFltsp1jUaRwQZ
 MTsCeQDdjpgHsj+P2ZDeEKCbma4m6Ez/YWs4+zDm1X8uZDkZcfQlD9NldbKDJEXLIjYWo1PH
 hYepSffIWPyvBMBTW2W5FRjJ4vLRrJSUoEfJuPQ3vW9Y73foyo/qFoURHO48AinGPZ7PC7TF
 vUaNOTjKedrqHkaOcqB185ahG2had0xnFsDPlx5y
In-Reply-To: <20231012201743.292149-1-ubizjak@gmail.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit

On 10/12/23 13:12, Uros Bizjak wrote:
> The last patch introduces (%rip) suffix and uses it for x86_64 target,
> resulting in a small code size decrease: text data bss dec hex filename
> 25510677 4386685 808388 30705750 1d48856 vmlinux-new.o 25510629 4386685
> 808388 30705702 1d48826 vmlinux-old.o

I feel like I'm missing some of the motivation here.

50 bytes is great and all, but it isn't without the cost of changing
some rules and introducing potential PER_CPU_ARG() vs. PER_CPU_VAR()
confusion.

Are there some other side benefits?  What else does this enable?


From xen-devel-bounces@lists.xenproject.org Thu Oct 12 21:00:02 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 21:00:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616030.957703 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qr2md-0007Vt-Fl; Thu, 12 Oct 2023 20:59:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616030.957703; Thu, 12 Oct 2023 20: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 1qr2md-0007Vm-D9; Thu, 12 Oct 2023 20:59:51 +0000
Received: by outflank-mailman (input) for mailman id 616030;
 Thu, 12 Oct 2023 20:59: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=Qqh1=F2=gmail.com=ubizjak@srs-se1.protection.inumbo.net>)
 id 1qr2mc-0007Vg-Iv
 for xen-devel@lists.xenproject.org; Thu, 12 Oct 2023 20:59:50 +0000
Received: from mail-ed1-x52c.google.com (mail-ed1-x52c.google.com
 [2a00:1450:4864:20::52c])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 48102159-6942-11ee-98d4-6d05b1d4d9a1;
 Thu, 12 Oct 2023 22:59:49 +0200 (CEST)
Received: by mail-ed1-x52c.google.com with SMTP id
 4fb4d7f45d1cf-53e08e439c7so2054165a12.0
 for <xen-devel@lists.xenproject.org>; Thu, 12 Oct 2023 13:59: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: 48102159-6942-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1697144389; x=1697749189; 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=BCC/dYmMqHRaR4te/Bo8/FimzrWr4aPFE83miAoEsEU=;
        b=YTywEXS+wJB510pw7GQB5ZrFxkHoagAuwj7V/2piluDXQJOHnrfAeJ7exHlROFP4g7
         rKugHh7XnK4T3FaRaFTXuHbJiFeHrDvMj3SX/98OTEyO8BC6Tuo+FUgJ1G5FbjGYKdrL
         aR+zI8cLHE2LGTXjs9p1vr751bIBHVf3Am1Sdg5osKc7o5Ri8jpMdRTYb0KloYFXG77Z
         QnsXumZwBTNHhX3xiERzCqVWEBpka4NzOywmpwEv+UxnsVverPB6s+Yqo2jQov6EP+cz
         kpZPuAx4wnnC0zh9Pe8qD6h6XxoR/cFG2qYcjh+CM+0cJvUz3SoH+x/uhT2eTENALgtR
         dfeA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697144389; x=1697749189;
        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=BCC/dYmMqHRaR4te/Bo8/FimzrWr4aPFE83miAoEsEU=;
        b=R98TcwNOwSUCGKDEkQeHl7bYa8Vzs718NWwApI3j002VLjmxy02IG3kGXGUYfJi0xn
         +EwfSX8cQACVyU7anU56QEqFal1LDg8FACS0kXgYWaPVA1Ey5Qh1dRJ+T/r+QMWRqvCG
         qWGkBflDvQHuC0/RJPW6TZpVbe5XQB2gi4bjFj3v5xdjNsRcD/86k/p/1OC+/FsnQ/Rx
         JTY7lQDRckqVOUBD+poa1j+G56D2PU6FOS4e16JytUYJsRzv1ArWi4tc8zo9iuZJQlMv
         uVRxM/65SAMdQL+Hvuedt4Naz+BAYVeWv4J9N7v1xS82n81EAA9VEk86WCeMYZr0ZZ/5
         m07A==
X-Gm-Message-State: AOJu0YwO/ZBcuqE7+h1lhAVNimXw1xPUDJX5nZva38LDSY1Z8cPXUmNU
	QeCycEb36smi8XQnGdyFM0x2mrt6jqrGC76uFXQ=
X-Google-Smtp-Source: AGHT+IHZwMvd2wgWbNi1gGdYLOSduJ0nYCAO57TK6PS6Rx2dIRYj1pM6S3C+nzgoUWkC0bS4WzGbE3OYqm4XYpZhvuY=
X-Received: by 2002:a05:6402:520b:b0:53d:9471:76b3 with SMTP id
 s11-20020a056402520b00b0053d947176b3mr8876672edd.7.1697144388617; Thu, 12 Oct
 2023 13:59:48 -0700 (PDT)
MIME-Version: 1.0
References: <20231012201743.292149-1-ubizjak@gmail.com> <3af8dcec-66ec-4bd4-b7bf-4bc6f5f3c70f@intel.com>
In-Reply-To: <3af8dcec-66ec-4bd4-b7bf-4bc6f5f3c70f@intel.com>
From: Uros Bizjak <ubizjak@gmail.com>
Date: Thu, 12 Oct 2023 22:59:37 +0200
Message-ID: <CAFULd4byzHyoz4xM1gL_T1wFkNE-ab8K4upXfPirxM9PdX5JWg@mail.gmail.com>
Subject: Re: [PATCH v2 0/4] Introduce %rip-relative addressing to PER_CPU_VAR macro
To: Dave Hansen <dave.hansen@intel.com>
Cc: x86@kernel.org, xen-devel@lists.xenproject.org, 
	linux-kernel@vger.kernel.org, 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>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Thu, Oct 12, 2023 at 10:53=E2=80=AFPM Dave Hansen <dave.hansen@intel.com=
> wrote:
>
> On 10/12/23 13:12, Uros Bizjak wrote:
> > The last patch introduces (%rip) suffix and uses it for x86_64 target,
> > resulting in a small code size decrease: text data bss dec hex filename
> > 25510677 4386685 808388 30705750 1d48856 vmlinux-new.o 25510629 4386685
> > 808388 30705702 1d48826 vmlinux-old.o
>
> I feel like I'm missing some of the motivation here.
>
> 50 bytes is great and all, but it isn't without the cost of changing
> some rules and introducing potential PER_CPU_ARG() vs. PER_CPU_VAR()
> confusion.
>
> Are there some other side benefits?  What else does this enable?

These changes are necessary to build the kernel as Position
Independent Executable (PIE) on x86_64 [1]. And since I was working in
percpu area I thought that it was worth implementing them.

[1] https://lore.kernel.org/lkml/cover.1682673542.git.houwenlong.hwl@antgro=
up.com/

Uros.


From xen-devel-bounces@lists.xenproject.org Thu Oct 12 21:03:04 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 21:03:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616034.957712 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qr2pi-0000Y4-U9; Thu, 12 Oct 2023 21:03:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616034.957712; Thu, 12 Oct 2023 21:03: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 1qr2pi-0000Xx-RQ; Thu, 12 Oct 2023 21:03:02 +0000
Received: by outflank-mailman (input) for mailman id 616034;
 Thu, 12 Oct 2023 21:03: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=WWXW=F2=zytor.com=hpa@srs-se1.protection.inumbo.net>)
 id 1qr2ph-0000XL-40
 for xen-devel@lists.xenproject.org; Thu, 12 Oct 2023 21:03:01 +0000
Received: from mail.zytor.com (unknown [2607:7c80:54:3::138])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id b838391b-6942-11ee-98d4-6d05b1d4d9a1;
 Thu, 12 Oct 2023 23:02:59 +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 39CL2DY81845907
 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NO);
 Thu, 12 Oct 2023 14:02:14 -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: b838391b-6942-11ee-98d4-6d05b1d4d9a1
DKIM-Filter: OpenDKIM Filter v2.11.0 mail.zytor.com 39CL2DY81845907
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=zytor.com;
	s=2023091101; t=1697144534;
	bh=q56mKPoe4hCxwoHF+UPZpSu/qOZ6GuzzYRQj/W6qKCs=;
	h=Date:From:To:CC:Subject:In-Reply-To:References:From;
	b=uoN1e+CWPrYLHNeCHmC78rmN/Tob+gntiRqFoOwTBRqEh9KrJdCjalO/kvA0QD+fN
	 wCl6Ge6HJhiPgP4DJj5Dk9FDZIPTpvRK8hTskB9YQYsnv5gxGAcqpwyxthjxQbaNcp
	 E6RGaifNOmFDqhxsmibHsRJ9ijNffFwZ1H1K87m+WHgy42c3fbwGI/pw3rEhtsfaCk
	 Ugvc1FujWuPyYTIlbr3/FaAGEgJAzsdOQ8bAu52hUVVdkB+xCyGHR8sr02hBTqLVOn
	 XGgTgAPBxf4axQuTOOEnl6sYQtcyR73+VRMKPk+1/bgBJfD08b8jJh6/PQy4EqeqGb
	 uINQxOccjTjoA==
Date: Thu, 12 Oct 2023 14:02:12 -0700
From: "H. Peter Anvin" <hpa@zytor.com>
To: Uros Bizjak <ubizjak@gmail.com>, x86@kernel.org,
        xen-devel@lists.xenproject.org, linux-kernel@vger.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>,
        Peter Zijlstra <peterz@infradead.org>
Subject: =?US-ASCII?Q?Re=3A_=5BPATCH_1/4=5D_x86/percpu=3A_Use_explicit_se?= =?US-ASCII?Q?gment_registers_in_lib/cmpxchg=7B8=2C16=7Db=5Femu=2ES?=
User-Agent: K-9 Mail for Android
In-Reply-To: <20231012161237.114733-2-ubizjak@gmail.com>
References: <20231012161237.114733-1-ubizjak@gmail.com> <20231012161237.114733-2-ubizjak@gmail.com>
Message-ID: <E2A4E3BD-10C1-43F7-AD6D-1037C7106F8B@zytor.com>
MIME-Version: 1.0
Content-Type: text/plain;
 charset=utf-8
Content-Transfer-Encoding: quoted-printable

On October 12, 2023 9:10:36 AM PDT, Uros Bizjak <ubizjak@gmail=2Ecom> wrote=
:
>PER_CPU_VAR macro is intended to be applied to a symbol, it is not
>intended to be used as a selector between %fs and %gs segment
>registers for general operands=2E
>
>The address to these emulation functions is passed in a register, so
>use explicit segment registers to access percpu variable instead=2E
>
>Also add a missing function comment to this_cpu_cmpxchg8b_emu=2E
>
>No functional changes intended=2E
>
>Cc: Thomas Gleixner <tglx@linutronix=2Ede>
>Cc: Ingo Molnar <mingo@redhat=2Ecom>
>Cc: Borislav Petkov <bp@alien8=2Ede>
>Cc: Dave Hansen <dave=2Ehansen@linux=2Eintel=2Ecom>
>Cc: "H=2E Peter Anvin" <hpa@zytor=2Ecom>
>Cc: Peter Zijlstra <peterz@infradead=2Eorg>
>Signed-off-by: Uros Bizjak <ubizjak@gmail=2Ecom>
>---
> arch/x86/lib/cmpxchg16b_emu=2ES | 12 ++++++------
> arch/x86/lib/cmpxchg8b_emu=2ES  | 30 +++++++++++++++++++++---------
> 2 files changed, 27 insertions(+), 15 deletions(-)
>
>diff --git a/arch/x86/lib/cmpxchg16b_emu=2ES b/arch/x86/lib/cmpxchg16b_em=
u=2ES
>index 6962df315793=2E=2E2bd8b89bce75 100644
>--- a/arch/x86/lib/cmpxchg16b_emu=2ES
>+++ b/arch/x86/lib/cmpxchg16b_emu=2ES
>@@ -23,14 +23,14 @@ SYM_FUNC_START(this_cpu_cmpxchg16b_emu)
> 	cli
>=20
> 	/* if (*ptr =3D=3D old) */
>-	cmpq	PER_CPU_VAR(0(%rsi)), %rax
>+	cmpq	%gs:(%rsi), %rax
> 	jne	=2ELnot_same
>-	cmpq	PER_CPU_VAR(8(%rsi)), %rdx
>+	cmpq	%gs:8(%rsi), %rdx
> 	jne	=2ELnot_same
>=20
> 	/* *ptr =3D new */
>-	movq	%rbx, PER_CPU_VAR(0(%rsi))
>-	movq	%rcx, PER_CPU_VAR(8(%rsi))
>+	movq	%rbx, %gs:(%rsi)
>+	movq	%rcx, %gs:8(%rsi)
>=20
> 	/* set ZF in EFLAGS to indicate success */
> 	orl	$X86_EFLAGS_ZF, (%rsp)
>@@ -42,8 +42,8 @@ SYM_FUNC_START(this_cpu_cmpxchg16b_emu)
> 	/* *ptr !=3D old */
>=20
> 	/* old =3D *ptr */
>-	movq	PER_CPU_VAR(0(%rsi)), %rax
>-	movq	PER_CPU_VAR(8(%rsi)), %rdx
>+	movq	%gs:(%rsi), %rax
>+	movq	%gs:8(%rsi), %rdx
>=20
> 	/* clear ZF in EFLAGS to indicate failure */
> 	andl	$(~X86_EFLAGS_ZF), (%rsp)
>diff --git a/arch/x86/lib/cmpxchg8b_emu=2ES b/arch/x86/lib/cmpxchg8b_emu=
=2ES
>index 49805257b125=2E=2Eb7d68d5e2d31 100644
>--- a/arch/x86/lib/cmpxchg8b_emu=2ES
>+++ b/arch/x86/lib/cmpxchg8b_emu=2ES
>@@ -24,12 +24,12 @@ SYM_FUNC_START(cmpxchg8b_emu)
> 	pushfl
> 	cli
>=20
>-	cmpl	0(%esi), %eax
>+	cmpl	(%esi), %eax
> 	jne	=2ELnot_same
> 	cmpl	4(%esi), %edx
> 	jne	=2ELnot_same
>=20
>-	movl	%ebx, 0(%esi)
>+	movl	%ebx, (%esi)
> 	movl	%ecx, 4(%esi)
>=20
> 	orl	$X86_EFLAGS_ZF, (%esp)
>@@ -38,7 +38,7 @@ SYM_FUNC_START(cmpxchg8b_emu)
> 	RET
>=20
> =2ELnot_same:
>-	movl	0(%esi), %eax
>+	movl	(%esi), %eax
> 	movl	4(%esi), %edx
>=20
> 	andl	$(~X86_EFLAGS_ZF), (%esp)
>@@ -53,18 +53,30 @@ EXPORT_SYMBOL(cmpxchg8b_emu)
>=20
> #ifndef CONFIG_UML
>=20
>+/*
>+ * Emulate 'cmpxchg8b %fs:(%esi)'
>+ *
>+ * Inputs:
>+ * %esi : memory location to compare
>+ * %eax : low 32 bits of old value
>+ * %edx : high 32 bits of old value
>+ * %ebx : low 32 bits of new value
>+ * %ecx : high 32 bits of new value
>+ *
>+ * Notably this is not LOCK prefixed and is not safe against NMIs
>+ */
> SYM_FUNC_START(this_cpu_cmpxchg8b_emu)
>=20
> 	pushfl
> 	cli
>=20
>-	cmpl	PER_CPU_VAR(0(%esi)), %eax
>+	cmpl	%fs:(%esi), %eax
> 	jne	=2ELnot_same2
>-	cmpl	PER_CPU_VAR(4(%esi)), %edx
>+	cmpl	%fs:4(%esi), %edx
> 	jne	=2ELnot_same2
>=20
>-	movl	%ebx, PER_CPU_VAR(0(%esi))
>-	movl	%ecx, PER_CPU_VAR(4(%esi))
>+	movl	%ebx, %fs:(%esi)
>+	movl	%ecx, %fs:4(%esi)
>=20
> 	orl	$X86_EFLAGS_ZF, (%esp)
>=20
>@@ -72,8 +84,8 @@ SYM_FUNC_START(this_cpu_cmpxchg8b_emu)
> 	RET
>=20
> =2ELnot_same2:
>-	movl	PER_CPU_VAR(0(%esi)), %eax
>-	movl	PER_CPU_VAR(4(%esi)), %edx
>+	movl	%fs:(%esi), %eax
>+	movl	%fs:4(%esi), %edx
>=20
> 	andl	$(~X86_EFLAGS_ZF), (%esp)
>=20

%fs??


From xen-devel-bounces@lists.xenproject.org Thu Oct 12 21:06:00 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 21:06:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616039.957723 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qr2sT-0001Xk-CB; Thu, 12 Oct 2023 21:05:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616039.957723; Thu, 12 Oct 2023 21:05: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 1qr2sT-0001Xd-7t; Thu, 12 Oct 2023 21:05:53 +0000
Received: by outflank-mailman (input) for mailman id 616039;
 Thu, 12 Oct 2023 21:05: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=Qqh1=F2=gmail.com=ubizjak@srs-se1.protection.inumbo.net>)
 id 1qr2sS-0001XX-1I
 for xen-devel@lists.xenproject.org; Thu, 12 Oct 2023 21:05:52 +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 1f926e5e-6943-11ee-98d4-6d05b1d4d9a1;
 Thu, 12 Oct 2023 23:05:51 +0200 (CEST)
Received: by mail-ed1-x534.google.com with SMTP id
 4fb4d7f45d1cf-5333fb34be3so2447798a12.1
 for <xen-devel@lists.xenproject.org>; Thu, 12 Oct 2023 14:05: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: 1f926e5e-6943-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1697144750; x=1697749550; 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=DmYbDLi462mhz/h94tn+FuQJl/K+QQJOfQDRUT1QidM=;
        b=h4PiPjzilLV1XTQa04iQ3M99iVMlC/cQM1A8r2X54cVOMoxogRXRkTumMmbmfE8oBS
         En/lstiXoJ2GuIwm5g+8RDfpTJftuYnfKzGeoe/Ccr1PQfkGeufPOs9BsJz4xwnC5eeX
         58gwQW9VvcC4w6YCnE/u+hUu6Y+g4XTf+iQMUjH7RtmSWkTHViNjJP66AnbOMbl/bdcP
         WmWMPmoDluSaQRiP+Lo8fU5B8OJ/KBjd7oUVjvZVwuVricNXuw7aoOcclk2WlfMZU9N5
         tsxdBmhf25MusiH/KQGzS+7Q5nNrB9vgk+MYuhZimJx92ukkhn9fX5OoU/I0tOv5KPBS
         Glfg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697144750; x=1697749550;
        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=DmYbDLi462mhz/h94tn+FuQJl/K+QQJOfQDRUT1QidM=;
        b=qD22rR+d4s8kwHZerqImpSoiL7zFprs75thPTy6JAS8nllZZQESzZt5gZnGAkRiAUW
         daS+x4JmBIg8TVFtO80HLpBS+HT1skNEIgEgryuIJm6vZOh5WEOnuTccgguQzdxIlhN5
         Webp+ZQWYSt3UfxNJ/wzE9Fu/BZU/EypSQQOMVrj1J8+A3tlFHIPF3ogWB+XhISE7+8o
         PO26/8vWrkXT6hI/Fd2UAManBCk6T85b0fSkihw5XU8K4UeDSwMegqAVhiLR9cSxvWVI
         5ctUnZKgdWxWs3fgWHEKKy6thb892zj1x6+fIgciWhszP4mmVNkYn827mliyns9dubWf
         QgNg==
X-Gm-Message-State: AOJu0Yy+DcpB0YA7eTeCDAuVaibRsuzXoNKXyM5fIxyF3aY/cFsvcaXM
	hJafqHywFK1sBF93J0nOdwcZ/bEvqXTRrnXXEx0=
X-Google-Smtp-Source: AGHT+IEt2n0n2zZH9B3GUR1cImxXZzuqugVwxdUIpE6C3qgF95LQqZgOxgXHebB4KGlgQKyBRgxQUDBeeZp+2AHZaZw=
X-Received: by 2002:a05:6402:2314:b0:53e:1741:d76b with SMTP id
 l20-20020a056402231400b0053e1741d76bmr1943019eda.39.1697144750412; Thu, 12
 Oct 2023 14:05:50 -0700 (PDT)
MIME-Version: 1.0
References: <20231012161237.114733-1-ubizjak@gmail.com> <20231012161237.114733-2-ubizjak@gmail.com>
 <E2A4E3BD-10C1-43F7-AD6D-1037C7106F8B@zytor.com>
In-Reply-To: <E2A4E3BD-10C1-43F7-AD6D-1037C7106F8B@zytor.com>
From: Uros Bizjak <ubizjak@gmail.com>
Date: Thu, 12 Oct 2023 23:05:39 +0200
Message-ID: <CAFULd4brKzOJCU7Koc7gyMt5QNAznRr=a-TwP7k+gXT2B2S7=g@mail.gmail.com>
Subject: Re: [PATCH 1/4] x86/percpu: Use explicit segment registers in lib/cmpxchg{8,16}b_emu.S
To: "H. Peter Anvin" <hpa@zytor.com>
Cc: x86@kernel.org, xen-devel@lists.xenproject.org, 
	linux-kernel@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>, Peter Zijlstra <peterz@infradead.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Thu, Oct 12, 2023 at 11:02=E2=80=AFPM H. Peter Anvin <hpa@zytor.com> wro=
te:
>
> On October 12, 2023 9:10:36 AM PDT, Uros Bizjak <ubizjak@gmail.com> wrote=
:
> >PER_CPU_VAR macro is intended to be applied to a symbol, it is not
> >intended to be used as a selector between %fs and %gs segment
> >registers for general operands.
> >
> >The address to these emulation functions is passed in a register, so
> >use explicit segment registers to access percpu variable instead.
> >
> >Also add a missing function comment to this_cpu_cmpxchg8b_emu.
> >
> >No functional changes intended.
> >
> >Cc: Thomas Gleixner <tglx@linutronix.de>
> >Cc: Ingo Molnar <mingo@redhat.com>
> >Cc: Borislav Petkov <bp@alien8.de>
> >Cc: Dave Hansen <dave.hansen@linux.intel.com>
> >Cc: "H. Peter Anvin" <hpa@zytor.com>
> >Cc: Peter Zijlstra <peterz@infradead.org>
> >Signed-off-by: Uros Bizjak <ubizjak@gmail.com>
> >---
> > arch/x86/lib/cmpxchg16b_emu.S | 12 ++++++------
> > arch/x86/lib/cmpxchg8b_emu.S  | 30 +++++++++++++++++++++---------
> > 2 files changed, 27 insertions(+), 15 deletions(-)
> >
> >diff --git a/arch/x86/lib/cmpxchg16b_emu.S b/arch/x86/lib/cmpxchg16b_emu=
.S
> >index 6962df315793..2bd8b89bce75 100644
> >--- a/arch/x86/lib/cmpxchg16b_emu.S
> >+++ b/arch/x86/lib/cmpxchg16b_emu.S
> >@@ -23,14 +23,14 @@ SYM_FUNC_START(this_cpu_cmpxchg16b_emu)
> >       cli
> >
> >       /* if (*ptr =3D=3D old) */
> >-      cmpq    PER_CPU_VAR(0(%rsi)), %rax
> >+      cmpq    %gs:(%rsi), %rax
> >       jne     .Lnot_same
> >-      cmpq    PER_CPU_VAR(8(%rsi)), %rdx
> >+      cmpq    %gs:8(%rsi), %rdx
> >       jne     .Lnot_same
> >
> >       /* *ptr =3D new */
> >-      movq    %rbx, PER_CPU_VAR(0(%rsi))
> >-      movq    %rcx, PER_CPU_VAR(8(%rsi))
> >+      movq    %rbx, %gs:(%rsi)
> >+      movq    %rcx, %gs:8(%rsi)
> >
> >       /* set ZF in EFLAGS to indicate success */
> >       orl     $X86_EFLAGS_ZF, (%rsp)
> >@@ -42,8 +42,8 @@ SYM_FUNC_START(this_cpu_cmpxchg16b_emu)
> >       /* *ptr !=3D old */
> >
> >       /* old =3D *ptr */
> >-      movq    PER_CPU_VAR(0(%rsi)), %rax
> >-      movq    PER_CPU_VAR(8(%rsi)), %rdx
> >+      movq    %gs:(%rsi), %rax
> >+      movq    %gs:8(%rsi), %rdx
> >
> >       /* clear ZF in EFLAGS to indicate failure */
> >       andl    $(~X86_EFLAGS_ZF), (%rsp)
> >diff --git a/arch/x86/lib/cmpxchg8b_emu.S b/arch/x86/lib/cmpxchg8b_emu.S
> >index 49805257b125..b7d68d5e2d31 100644
> >--- a/arch/x86/lib/cmpxchg8b_emu.S
> >+++ b/arch/x86/lib/cmpxchg8b_emu.S
> >@@ -24,12 +24,12 @@ SYM_FUNC_START(cmpxchg8b_emu)
> >       pushfl
> >       cli
> >
> >-      cmpl    0(%esi), %eax
> >+      cmpl    (%esi), %eax
> >       jne     .Lnot_same
> >       cmpl    4(%esi), %edx
> >       jne     .Lnot_same
> >
> >-      movl    %ebx, 0(%esi)
> >+      movl    %ebx, (%esi)
> >       movl    %ecx, 4(%esi)
> >
> >       orl     $X86_EFLAGS_ZF, (%esp)
> >@@ -38,7 +38,7 @@ SYM_FUNC_START(cmpxchg8b_emu)
> >       RET
> >
> > .Lnot_same:
> >-      movl    0(%esi), %eax
> >+      movl    (%esi), %eax
> >       movl    4(%esi), %edx
> >
> >       andl    $(~X86_EFLAGS_ZF), (%esp)
> >@@ -53,18 +53,30 @@ EXPORT_SYMBOL(cmpxchg8b_emu)
> >
> > #ifndef CONFIG_UML
> >
> >+/*
> >+ * Emulate 'cmpxchg8b %fs:(%esi)'
> >+ *
> >+ * Inputs:
> >+ * %esi : memory location to compare
> >+ * %eax : low 32 bits of old value
> >+ * %edx : high 32 bits of old value
> >+ * %ebx : low 32 bits of new value
> >+ * %ecx : high 32 bits of new value
> >+ *
> >+ * Notably this is not LOCK prefixed and is not safe against NMIs
> >+ */
> > SYM_FUNC_START(this_cpu_cmpxchg8b_emu)
> >
> >       pushfl
> >       cli
> >
> >-      cmpl    PER_CPU_VAR(0(%esi)), %eax
> >+      cmpl    %fs:(%esi), %eax
> >       jne     .Lnot_same2
> >-      cmpl    PER_CPU_VAR(4(%esi)), %edx
> >+      cmpl    %fs:4(%esi), %edx
> >       jne     .Lnot_same2
> >
> >-      movl    %ebx, PER_CPU_VAR(0(%esi))
> >-      movl    %ecx, PER_CPU_VAR(4(%esi))
> >+      movl    %ebx, %fs:(%esi)
> >+      movl    %ecx, %fs:4(%esi)
> >
> >       orl     $X86_EFLAGS_ZF, (%esp)
> >
> >@@ -72,8 +84,8 @@ SYM_FUNC_START(this_cpu_cmpxchg8b_emu)
> >       RET
> >
> > .Lnot_same2:
> >-      movl    PER_CPU_VAR(0(%esi)), %eax
> >-      movl    PER_CPU_VAR(4(%esi)), %edx
> >+      movl    %fs:(%esi), %eax
> >+      movl    %fs:4(%esi), %edx
> >
> >       andl    $(~X86_EFLAGS_ZF), (%esp)
> >
>
> %fs??

Yes, 32-bit targets default to %fs. Please also note a new version
(v2) of the patch that reimplements this part.

Uros.


From xen-devel-bounces@lists.xenproject.org Thu Oct 12 21:06:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 21:06:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616043.957733 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qr2tQ-000289-MC; Thu, 12 Oct 2023 21:06:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616043.957733; Thu, 12 Oct 2023 21: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 1qr2tQ-000282-H2; Thu, 12 Oct 2023 21:06:52 +0000
Received: by outflank-mailman (input) for mailman id 616043;
 Thu, 12 Oct 2023 21:06: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=WWXW=F2=zytor.com=hpa@srs-se1.protection.inumbo.net>)
 id 1qr2tP-0001XX-PY
 for xen-devel@lists.xenproject.org; Thu, 12 Oct 2023 21:06:51 +0000
Received: from mail.zytor.com (unknown [2607:7c80:54:3::138])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 42ca38e6-6943-11ee-98d4-6d05b1d4d9a1;
 Thu, 12 Oct 2023 23:06:51 +0200 (CEST)
Received: from [IPV6:2601:646:9a00:1821:7c45:267e:5aad:82e7]
 ([IPv6:2601:646:9a00:1821:7c45:267e:5aad:82e7])
 (authenticated bits=0)
 by mail.zytor.com (8.17.1/8.17.1) with ESMTPSA id 39CL5pvr1848458
 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NO);
 Thu, 12 Oct 2023 14:05: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: 42ca38e6-6943-11ee-98d4-6d05b1d4d9a1
DKIM-Filter: OpenDKIM Filter v2.11.0 mail.zytor.com 39CL5pvr1848458
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=zytor.com;
	s=2023091101; t=1697144752;
	bh=ysnLFQZInQJMkyXvu4T440l0cKiHTOm5vno6/SZClRU=;
	h=Date:Subject:From:To:Cc:References:In-Reply-To:From;
	b=AHDJzDUSaTGeTjCUadg3ZNnOjmq8H9Y1SN0oUYx7EgqWknIFbRo7RTL8IF8AyMoBN
	 o2LqlZzHuVcFFxWmyfvMqXe8Q3oJ+Xfm1sAOUd1S498wB0fpdRb+dGGWjThtwf1aPk
	 uI6N7Jx8GDd10wtIytif9OsRMEY63Ur1nFKx5lrHLATbcdfjRccs1Kn2Z1IrjkAHOG
	 vLwRVNuubYTYXqjPSB/ppZgNEWChRLQuFKHMKLkEk/FWao8pykF5tIFcQfwBkcaYM3
	 oECpqgNucwQlQ6+agy7vQpP+M006/oI3B0Fm3c08A4wuWZi5p+LyHdln2LsXSpeG2a
	 /DrNIikWMSVkA==
Message-ID: <19a92ce0-742b-4bb4-8564-1e20a4dcf2c0@zytor.com>
Date: Thu, 12 Oct 2023 14:05:45 -0700
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH 1/4] x86/percpu: Use explicit segment registers in
 lib/cmpxchg{8,16}b_emu.S
Content-Language: en-US
From: "H. Peter Anvin" <hpa@zytor.com>
To: Uros Bizjak <ubizjak@gmail.com>, x86@kernel.org,
        xen-devel@lists.xenproject.org, linux-kernel@vger.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>,
        Peter Zijlstra <peterz@infradead.org>
References: <20231012161237.114733-1-ubizjak@gmail.com>
 <20231012161237.114733-2-ubizjak@gmail.com>
 <E2A4E3BD-10C1-43F7-AD6D-1037C7106F8B@zytor.com>
In-Reply-To: <E2A4E3BD-10C1-43F7-AD6D-1037C7106F8B@zytor.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 10/12/23 14:02, H. Peter Anvin wrote:>
> %fs??
 >

Nevermind, I forgot that we changed from %gs to %fs on i386 at some 
point in the now-distant past.

	-hpa


From xen-devel-bounces@lists.xenproject.org Thu Oct 12 21:09:20 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 21:09:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616049.957742 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qr2vn-00039c-5U; Thu, 12 Oct 2023 21:09:19 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616049.957742; Thu, 12 Oct 2023 21:09: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 1qr2vn-00039V-31; Thu, 12 Oct 2023 21:09:19 +0000
Received: by outflank-mailman (input) for mailman id 616049;
 Thu, 12 Oct 2023 21:09: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=WWXW=F2=zytor.com=hpa@srs-se1.protection.inumbo.net>)
 id 1qr2vl-00039P-9B
 for xen-devel@lists.xenproject.org; Thu, 12 Oct 2023 21:09:17 +0000
Received: from mail.zytor.com (unknown [2607:7c80:54:3::138])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 9806107b-6943-11ee-9b0e-b553b5be7939;
 Thu, 12 Oct 2023 23:09:14 +0200 (CEST)
Received: from [IPV6:2601:646:9a00:1821:7c45:267e:5aad:82e7]
 ([IPv6:2601:646:9a00:1821:7c45:267e:5aad:82e7])
 (authenticated bits=0)
 by mail.zytor.com (8.17.1/8.17.1) with ESMTPSA id 39CL85OK1848892
 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NO);
 Thu, 12 Oct 2023 14:08: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: 9806107b-6943-11ee-9b0e-b553b5be7939
DKIM-Filter: OpenDKIM Filter v2.11.0 mail.zytor.com 39CL85OK1848892
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=zytor.com;
	s=2023091101; t=1697144918;
	bh=5f4ZuSY/L+s9vY5S3iUWDxa4pn0Fv0h26nvn9vsXOh8=;
	h=Date:Subject:To:Cc:References:From:In-Reply-To:From;
	b=CLH/fKVyVCKi3f7nz9Xt95SNxAMKfTC56revfWZPlk7FnV0QxckBQRjosSB01pRaj
	 vE0dTFncCytc2nDfXo3vhd12zuqb2J0YJ26/GCMIQQgLPYGgJ3vLO2ZKWd1O3K5wh7
	 NfzItHdBcD2s3YsmvY2z9W4WUXKJ3ShcL5o/Lipp4LKC7rAE0IMd8gHr5buq5rbbJ9
	 0BaHVfK1kpPsc9wq4tnTIVrIr+5BMMm17KiWAC/heWLcGyIX7PoJHUEDamDjOMLX7N
	 LPHgK8ga6ttRod6tstkkY8BKRuHPXkkxJWeUMz4qEGkXbiGKJecOpU1OdE55BGgaLU
	 AtBVNLtLfbSAQ==
Message-ID: <5722e74b-6fc6-4d6e-be25-069ea6385990@zytor.com>
Date: Thu, 12 Oct 2023 14:08:00 -0700
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v2 0/4] Introduce %rip-relative addressing to PER_CPU_VAR
 macro
Content-Language: en-US
To: Uros Bizjak <ubizjak@gmail.com>, Dave Hansen <dave.hansen@intel.com>
Cc: x86@kernel.org, xen-devel@lists.xenproject.org,
        linux-kernel@vger.kernel.org, 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>
References: <20231012201743.292149-1-ubizjak@gmail.com>
 <3af8dcec-66ec-4bd4-b7bf-4bc6f5f3c70f@intel.com>
 <CAFULd4byzHyoz4xM1gL_T1wFkNE-ab8K4upXfPirxM9PdX5JWg@mail.gmail.com>
From: "H. Peter Anvin" <hpa@zytor.com>
In-Reply-To: <CAFULd4byzHyoz4xM1gL_T1wFkNE-ab8K4upXfPirxM9PdX5JWg@mail.gmail.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

On 10/12/23 13:59, Uros Bizjak wrote:
> On Thu, Oct 12, 2023 at 10:53 PM Dave Hansen <dave.hansen@intel.com> wrote:
>>
>> On 10/12/23 13:12, Uros Bizjak wrote:
>>> The last patch introduces (%rip) suffix and uses it for x86_64 target,
>>> resulting in a small code size decrease: text data bss dec hex filename
>>> 25510677 4386685 808388 30705750 1d48856 vmlinux-new.o 25510629 4386685
>>> 808388 30705702 1d48826 vmlinux-old.o
>>
>> I feel like I'm missing some of the motivation here.
>>
>> 50 bytes is great and all, but it isn't without the cost of changing
>> some rules and introducing potential PER_CPU_ARG() vs. PER_CPU_VAR()
>> confusion.
>>
>> Are there some other side benefits?  What else does this enable?
> 
> These changes are necessary to build the kernel as Position
> Independent Executable (PIE) on x86_64 [1]. And since I was working in
> percpu area I thought that it was worth implementing them.
> 
> [1] https://lore.kernel.org/lkml/cover.1682673542.git.houwenlong.hwl@antgroup.com/
> 

Are you PIC-adjusting the percpu variables as well?

	-hpa


From xen-devel-bounces@lists.xenproject.org Thu Oct 12 21:17:47 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 21:17:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616055.957752 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qr33r-0005oR-VO; Thu, 12 Oct 2023 21:17:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616055.957752; Thu, 12 Oct 2023 21:17: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 1qr33r-0005oK-SO; Thu, 12 Oct 2023 21:17:39 +0000
Received: by outflank-mailman (input) for mailman id 616055;
 Thu, 12 Oct 2023 21:17: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=Qqh1=F2=gmail.com=ubizjak@srs-se1.protection.inumbo.net>)
 id 1qr33r-0005oE-Ea
 for xen-devel@lists.xenproject.org; Thu, 12 Oct 2023 21:17:39 +0000
Received: from mail-ed1-x52d.google.com (mail-ed1-x52d.google.com
 [2a00:1450:4864:20::52d])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id c53d7f09-6944-11ee-98d4-6d05b1d4d9a1;
 Thu, 12 Oct 2023 23:17:38 +0200 (CEST)
Received: by mail-ed1-x52d.google.com with SMTP id
 4fb4d7f45d1cf-53db1fbee70so2505042a12.2
 for <xen-devel@lists.xenproject.org>; Thu, 12 Oct 2023 14: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: c53d7f09-6944-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1697145458; x=1697750258; 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=vq2DHHNgN1ay7Fwdp3I5ZMWfUBUlatwsBWWqlLrDB9s=;
        b=C4yJzk2M2pc4mgcq6liCFnGSOUm3th1eRfG3ixOundmsHNe35LWbBqSZWHqkg77dI4
         CAFQRe3sjEXFQe6J23igxiZkguLvDdF/Ct6OVNzBrwHdsbW9EyZNv642dNNzTPGHNJLm
         OaMMW/6BUKyVzy8VGM83Wn38K/ZjmQs+wIZwvIr7Vmc2gLi3VpKRm0oL0RNDh4lbo4nP
         kPSp56sDzzTvsco2UDTaZYW/ITR78sLHouLXIfrbZbrTGSwnrkF0jTtnwWvMP6J9QmWc
         zFb7NuORqTsufS8y68Zp4AIesTpwPxvtoKFOVyKnGL1R5e8p/Ymh+2z3YdxRUegMDOTW
         a+nA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697145458; x=1697750258;
        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=vq2DHHNgN1ay7Fwdp3I5ZMWfUBUlatwsBWWqlLrDB9s=;
        b=GN4LbdhfjyFuNoCRKelbeWHt6QnRFKbcgItz0Pby6J2R84H6kFC0755/f3G8hi0IoQ
         Q/XaJiqiusrV1g3T9LAPP2i3rkYS3w9CD8QQV04E+gLTgrq1mfnWGx5itGw1/Lof4BnN
         T2pWItfIQazfveUMpu2Ob0B2GymZNBGPIRjAj5smc3cmrbAsqiUOx4kJplQGUCiSeraw
         pPvwf12QKHIz5uHIyCIJZj3HOPMEajWXRUkmN8yPDHmZtJdtM19KqkxYLr+EIO6meDvB
         7pE6NC0zyw8NewkQvKSnqXKoeuWv7W1kXoTOf5u4/DNWoyStdfgVAuYWs9Kp8cGP7SCJ
         ipig==
X-Gm-Message-State: AOJu0YymnAKC4dSSlUodonwAWcn++Dkm1Zen+I6J9OA+dhCkR2sBPJHm
	mteVHBSbevzQnnUL7yhtjbt1b1cVS7GSWkS2k88=
X-Google-Smtp-Source: AGHT+IFkk5bm0z+SbkCdj2ZECqmt8Zf7B2iGxvVYgN8WfLbpYYBKrqqKimZjM9pWxssXaEAMfUi+zM2eBiUJQ12DqNw=
X-Received: by 2002:aa7:c909:0:b0:530:97b5:49ce with SMTP id
 b9-20020aa7c909000000b0053097b549cemr23858410edt.10.1697145457834; Thu, 12
 Oct 2023 14:17:37 -0700 (PDT)
MIME-Version: 1.0
References: <20231012201743.292149-1-ubizjak@gmail.com> <3af8dcec-66ec-4bd4-b7bf-4bc6f5f3c70f@intel.com>
 <CAFULd4byzHyoz4xM1gL_T1wFkNE-ab8K4upXfPirxM9PdX5JWg@mail.gmail.com> <5722e74b-6fc6-4d6e-be25-069ea6385990@zytor.com>
In-Reply-To: <5722e74b-6fc6-4d6e-be25-069ea6385990@zytor.com>
From: Uros Bizjak <ubizjak@gmail.com>
Date: Thu, 12 Oct 2023 23:17:26 +0200
Message-ID: <CAFULd4afhj-kJwneh7wz0sExWqOmPicG4fcfF++_fUMHpoNbXA@mail.gmail.com>
Subject: Re: [PATCH v2 0/4] Introduce %rip-relative addressing to PER_CPU_VAR macro
To: "H. Peter Anvin" <hpa@zytor.com>
Cc: Dave Hansen <dave.hansen@intel.com>, x86@kernel.org, xen-devel@lists.xenproject.org, 
	linux-kernel@vger.kernel.org, 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>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Thu, Oct 12, 2023 at 11:08=E2=80=AFPM H. Peter Anvin <hpa@zytor.com> wro=
te:
>
> On 10/12/23 13:59, Uros Bizjak wrote:
> > On Thu, Oct 12, 2023 at 10:53=E2=80=AFPM Dave Hansen <dave.hansen@intel=
.com> wrote:
> >>
> >> On 10/12/23 13:12, Uros Bizjak wrote:
> >>> The last patch introduces (%rip) suffix and uses it for x86_64 target=
,
> >>> resulting in a small code size decrease: text data bss dec hex filena=
me
> >>> 25510677 4386685 808388 30705750 1d48856 vmlinux-new.o 25510629 43866=
85
> >>> 808388 30705702 1d48826 vmlinux-old.o
> >>
> >> I feel like I'm missing some of the motivation here.
> >>
> >> 50 bytes is great and all, but it isn't without the cost of changing
> >> some rules and introducing potential PER_CPU_ARG() vs. PER_CPU_VAR()
> >> confusion.
> >>
> >> Are there some other side benefits?  What else does this enable?
> >
> > These changes are necessary to build the kernel as Position
> > Independent Executable (PIE) on x86_64 [1]. And since I was working in
> > percpu area I thought that it was worth implementing them.
> >
> > [1] https://lore.kernel.org/lkml/cover.1682673542.git.houwenlong.hwl@an=
tgroup.com/
> >
>
> Are you PIC-adjusting the percpu variables as well?

After this patch (and after fixing percpu_stable_op to use "a" operand
modifier on GCC), the only *one* remaining absolute reference to
percpu variable remain in xen-head.S, where:

    movq    $INIT_PER_CPU_VAR(fixed_percpu_data),%rax

should be changed to use leaq.

All others should then be (%rip)-relative.

Uros.


From xen-devel-bounces@lists.xenproject.org Thu Oct 12 21:22:16 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 21:22:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616059.957762 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qr38J-0007Ft-Ga; Thu, 12 Oct 2023 21:22:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616059.957762; Thu, 12 Oct 2023 21:22: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 1qr38J-0007Fm-Ds; Thu, 12 Oct 2023 21:22:15 +0000
Received: by outflank-mailman (input) for mailman id 616059;
 Thu, 12 Oct 2023 21:22: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=WWXW=F2=zytor.com=hpa@srs-se1.protection.inumbo.net>)
 id 1qr38I-0007Fg-Nu
 for xen-devel@lists.xenproject.org; Thu, 12 Oct 2023 21:22:14 +0000
Received: from mail.zytor.com (unknown [2607:7c80:54:3::138])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 67fbce48-6945-11ee-9b0e-b553b5be7939;
 Thu, 12 Oct 2023 23:22:12 +0200 (CEST)
Received: from [IPV6:2601:646:9a00:1821:7c45:267e:5aad:82e7]
 ([IPv6:2601:646:9a00:1821:7c45:267e:5aad:82e7])
 (authenticated bits=0)
 by mail.zytor.com (8.17.1/8.17.1) with ESMTPSA id 39CLLiXS1851702
 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NO);
 Thu, 12 Oct 2023 14:21: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: 67fbce48-6945-11ee-9b0e-b553b5be7939
DKIM-Filter: OpenDKIM Filter v2.11.0 mail.zytor.com 39CLLiXS1851702
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=zytor.com;
	s=2023091101; t=1697145706;
	bh=DkV9ockDXHygDK8vfHAm86izvNjg/lx4TtVVSQpgW6s=;
	h=Date:Subject:To:Cc:References:From:In-Reply-To:From;
	b=i5vz1mkPWunh4gIMlTKwj14PtENV6wuJHkZSEnXbtAYpjeKZpNxplcosRKlCGMD/1
	 aleLTy5iWUddNvYM0c5UcTyMpiYwRTiTFgNJiEfryIo+vbgKyFl+Pm3PimAGjd8gI0
	 WDdQnAqdwzTB+nSTfm0xZzhKuH3nUD3LE9EhXr7rl+vfKOxjzaLZ7x4ZXaBWJaQoZb
	 ovA92Vc2b7iGm9RUoj43nkptJGKn087njRBmArQKptXO3OP/SIJLVe31PWuHzYv0oe
	 e05dyw10uZbbV4/ttog0qetMzMM2jyfr+LYOa/YtbpVoXtGt+e3t7kykvwtiOj2hnz
	 dtKLDMSJQiIww==
Message-ID: <5694b2bd-de40-45c0-8b38-ac01bc11798a@zytor.com>
Date: Thu, 12 Oct 2023 14:21:39 -0700
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v2 0/4] Introduce %rip-relative addressing to PER_CPU_VAR
 macro
Content-Language: en-US
To: Uros Bizjak <ubizjak@gmail.com>
Cc: Dave Hansen <dave.hansen@intel.com>, x86@kernel.org,
        xen-devel@lists.xenproject.org, linux-kernel@vger.kernel.org,
        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>
References: <20231012201743.292149-1-ubizjak@gmail.com>
 <3af8dcec-66ec-4bd4-b7bf-4bc6f5f3c70f@intel.com>
 <CAFULd4byzHyoz4xM1gL_T1wFkNE-ab8K4upXfPirxM9PdX5JWg@mail.gmail.com>
 <5722e74b-6fc6-4d6e-be25-069ea6385990@zytor.com>
 <CAFULd4afhj-kJwneh7wz0sExWqOmPicG4fcfF++_fUMHpoNbXA@mail.gmail.com>
From: "H. Peter Anvin" <hpa@zytor.com>
In-Reply-To: <CAFULd4afhj-kJwneh7wz0sExWqOmPicG4fcfF++_fUMHpoNbXA@mail.gmail.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 10/12/23 14:17, Uros Bizjak wrote:
>>
>> Are you PIC-adjusting the percpu variables as well?
> 
> After this patch (and after fixing percpu_stable_op to use "a" operand
> modifier on GCC), the only *one* remaining absolute reference to
> percpu variable remain in xen-head.S, where:
> 
>      movq    $INIT_PER_CPU_VAR(fixed_percpu_data),%rax
> 
> should be changed to use leaq.
> 
> All others should then be (%rip)-relative.
> 

I mean, the symbols themselves are relative, not absolute?

	-hpa



From xen-devel-bounces@lists.xenproject.org Thu Oct 12 22:09:38 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 22:09:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616069.957816 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qr3s4-0001yR-Fj; Thu, 12 Oct 2023 22:09:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616069.957816; Thu, 12 Oct 2023 22:09: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 1qr3s4-0001xq-63; Thu, 12 Oct 2023 22:09:32 +0000
Received: by outflank-mailman (input) for mailman id 616069;
 Thu, 12 Oct 2023 22:09: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=Hhgq=F2=epam.com=prvs=4649fa389a=volodymyr_babchuk@srs-se1.protection.inumbo.net>)
 id 1qr3s2-00016v-Qw
 for xen-devel@lists.xenproject.org; Thu, 12 Oct 2023 22:09:30 +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 038fa9a2-694c-11ee-98d4-6d05b1d4d9a1;
 Fri, 13 Oct 2023 00:09:30 +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
 39CKqml4008371; Thu, 12 Oct 2023 22:09:18 GMT
Received: from eur01-db5-obe.outbound.protection.outlook.com
 (mail-db5eur01lp2050.outbound.protection.outlook.com [104.47.2.50])
 by mx0b-0039f301.pphosted.com (PPS) with ESMTPS id 3tpr7cr8dp-2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT);
 Thu, 12 Oct 2023 22:09:18 +0000
Received: from VI1PR03MB3710.eurprd03.prod.outlook.com (2603:10a6:803:31::18)
 by DBAPR03MB6376.eurprd03.prod.outlook.com (2603:10a6:10:193::6) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.45; Thu, 12 Oct
 2023 22:09:15 +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.6863.043; Thu, 12 Oct 2023
 22: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: 038fa9a2-694c-11ee-98d4-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=HCVX/2lqseYlqrTNVPwrAyVuvhlRLLg/hegDl11cpLjnCiujJxRxVa19fu9nc4Wlf8TQVU2jh6p/9kkDyg+v2HFohG1O8fxVZiIBQ/0DUZAVdM6HKa6IQNrFobPgtsgtBrxUROhBsS1f5Tn1wz4C0QqSvOPfKd24LMV/02BN1tl83KR0Y7/5TzHSN7zX53hD/BI5UZuLvJfMlPmfBOHrflLZIE0Zg7ZsmE45t4WMkhCDv5mwv4W5VpUe/i0yULIx4BqFZ4rwTqwk8wItndi/ZIdG80MwFTVkYpb3s0cc0hAo7GO+XpfnOpX0+ppEhuJdwCdOjwmpbvJS/26BNTO1KQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=nUbdmISXespujyGMhnqpZyFZ9IBb/MEFeA/aVd7WW+s=;
 b=mVCvwanMMS3gWHTNPG5cMEQziX3sJ7Qk6d0+Uz06dHftVlsJ+tRVBO5MZ8c8ET5ZybR38oeJ0Nj1QiaE81q7Epz88i18m9sfgnpr/DoqYvaciV7qMR7K/eA1i0uXZLM9VawvTUYhAHFNb2XSWT26LIdhdkINPelNGounp/R28V+JGtY/u/vvnCzgXFsYwjnlIYGEWdP4Lxot5/znc415bBt2FPKApnSDm/ZxeDeA4B6nfp0OkDFghTaZnDQJmelbxXd0BdOqS4RJUIFlsZzs5tbZy3NFYwqaseOgI3cZlp61rdoqMiFvOVzZvrkWvWMiN6GaL68HSFgqHJPHj4kHZQ==
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=nUbdmISXespujyGMhnqpZyFZ9IBb/MEFeA/aVd7WW+s=;
 b=lpPZlM1yKu+nbUsMNnz+qLHhrt2nrbr73jEJgtgsh4XGBjLJvwAggbGiCJMg5/Uiufk6pZqvwKrGMJqLE627/TOZ7WpPjZNbzxZSuxUULb339FBBAJMwJ/RrSX6FyFsJeCRpw3Oo15L8nVFRlMIVMDYR4VgWXKLzS9rvKV/bwyClExpRwy46vytiJDgd9/yM2YVW/R/6MNseSvGvqbKU/sW7QGXkxnI7C/b7wX/37rN8ZGVzm1f1apLfdCkkvVuV8QBDCGRkFvFQPTzbJIIMlJDhMesX03sge4y3xEDjHCfmZcPx1/Pw23O+X6rQhJAypzXeLPEB12O3Bw5ojoWQPQ==
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>,
        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>,
        Julien Grall <julien@xen.org>,
        Stefano Stabellini
	<sstabellini@kernel.org>
Subject: [PATCH v10 01/17] pci: msi: pass pdev to pci_enable_msi() function
Thread-Topic: [PATCH v10 01/17] pci: msi: pass pdev to pci_enable_msi()
 function
Thread-Index: AQHZ/Vi8+1vtmDC560CdrPPIvL4UuQ==
Date: Thu, 12 Oct 2023 22:09:14 +0000
Message-ID: <20231012220854.2736994-2-volodymyr_babchuk@epam.com>
References: <20231012220854.2736994-1-volodymyr_babchuk@epam.com>
In-Reply-To: <20231012220854.2736994-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_|DBAPR03MB6376:EE_
x-ms-office365-filtering-correlation-id: 9385d259-8333-464f-e543-08dbcb6fdf48
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: 
 if2bpCTT6R5djnnp24r325/p4Ni3LFzDfiigZrGdmD2YfbpCcbzfA1AeSgODRB46Cp9VhdRVSWdBY3yn0j0x+X1/1aFL6IA/QrxPQjsKDrmhFcmnMrs2QsyjjMYlT8ho0QK6Pl+uZgDnT890xiLORbJAuQR5aWAnJq0Lbb9gtEVvyQMzQ5HeW+e018z/Bn3+JmNAky6dr45tKN3lHP5m54bVEvjrhtT7E6BQEevs2oh3L7IakkoDZh/Lqy02CdzskzvTAQb2KLAtZI2RAjyCFVXa4sU6vnt0TzJnz/BJLWl+/ialLGfQqui6WDNPCRhZzuNR3lV+0KaVLKDxH7wzWFtBAvKafen5yRAaeGh+wVPQmKdUJALAj8iU0l/46JGssLLO9rO0KNC6zvRgEOrP0Y2BU9TwN5BdmxI2v4kSDtBTFdODlpvn5l4kGAEIFOX0tAX8/WQEq3WWS0VDcYQLaDb0LDpb9Ga0mATl/Am+J/i2SwJxu5ix7rry4NuX7SC8XnnbZE9lD3+hZR60cd/GK98ZZtGLjOhTRMOkXJjFu3HDzUXHWkBaNdzYRDJY6gQFezGWKIyIh3oC+e+9L+GOtclGg/csBl4afaginXoy7wiiAHEox9lCgSBasbZre+V4
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)(39860400002)(396003)(346002)(366004)(136003)(230922051799003)(451199024)(64100799003)(186009)(1800799009)(2616005)(71200400001)(26005)(6512007)(6506007)(55236004)(36756003)(86362001)(38100700002)(38070700005)(122000001)(1076003)(83380400001)(91956017)(41300700001)(64756008)(316002)(76116006)(54906003)(66946007)(66446008)(6916009)(66556008)(66476007)(2906002)(8936002)(5660300002)(8676002)(4326008)(6486002)(478600001);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: 
 =?iso-8859-1?Q?/Iz9Pg2fBp+lj8rwpOs4fb0hCEImxuUhFtNj0OfmpkEto3yyybeUeEt0iK?=
 =?iso-8859-1?Q?BdLc9OAmCQjeRcNyxLnvn+3hcZ3DqC7355PNn7SA2I9oDK7uIxgFhZht4z?=
 =?iso-8859-1?Q?DgH22CJNBwQNqXQd6/m1eO0Ysc5MWmI9GI3lWh9gEJ4CsM/5B1C/iJzIrt?=
 =?iso-8859-1?Q?xek9qHAc686OerriC15KSJjQgNe0LMrTO5fLJ9UfN5CpLzlRXDBtLttFsH?=
 =?iso-8859-1?Q?RgF0kZkuaBtLxzUUq0aijea63ugmydiUY4jdxHONdarS/yjdw0xDTZnIKI?=
 =?iso-8859-1?Q?rcziGi5Vy3g5hHSsTG7qHBFar1Ux/DHDLaBuVdir8e17CihXZtjLDCQE7W?=
 =?iso-8859-1?Q?nvHhBAupybIo/a6phdkUnXiIscew2n4JbrOt+hX3xeOwNRCOG56SCFxxo9?=
 =?iso-8859-1?Q?oygrciHIsH4IbrLV8GDOE3VUZWair6oj3+Ztj3Wh4M+Xxeln8de82yZt7D?=
 =?iso-8859-1?Q?miv6sRr/4IIyIQ3VetH2m5xbQHSJPDbSH5TFilV++8hCSZlyxd6dN0uSgQ?=
 =?iso-8859-1?Q?clDe09EOA0SEMNLmnLNbH5OxMLxNqaZFvnmy9ZU9zRjfixxkt/nFGiC2WT?=
 =?iso-8859-1?Q?f5glpCtzSwjsLWMjam39dLxep8D5tOj/x0xALN1eexC9Ump/dz4EyrQ1a/?=
 =?iso-8859-1?Q?KBBDPRfgTkk7aPzVoo74OrKvQLbhLDXbv9AMsbBL3N9l1UHXySM9JNDMTH?=
 =?iso-8859-1?Q?KYr66UUFBXTbar7tO1sxacqGX4NHASZHjLG16IuaWoC5dGIcj3BEx+8YB0?=
 =?iso-8859-1?Q?jyOXpvbV6Rit6HavvNFlFd4uwJm0pjK/k3ZnL6xHMR5widCV18q2P1sva3?=
 =?iso-8859-1?Q?na7L4Ccw6bi04ODWe7hBYs0kjTVy82zWzxeg2rSNLeM7PCzp2x3zyqVqI0?=
 =?iso-8859-1?Q?BXRqUnpFad0p4BM6U+0eqPdYTTmLXz8xPv2JO+7c5jB7FKcfXKKkvkBIPX?=
 =?iso-8859-1?Q?YhsKAwS7GhNUNVDgLT0tMOsmJMUq6OFC0z75astU5w7pWbvinkmSwSlV8K?=
 =?iso-8859-1?Q?Nv2OUEnVsvJ0Sde4kxw1NZ1Et+Ef3saqko0agapPCL3uG8qq5kGETQv70O?=
 =?iso-8859-1?Q?+e6o8mwLcxr11xn3W39jgkPHTG6Rq3HwPqUYSMlgo16SwKFo2BZPtzZqKc?=
 =?iso-8859-1?Q?PMcBctozf7yuS8TgzgTd31Snuj0ZruPVMeFadp9Aoe4bITwHlumvClCW0k?=
 =?iso-8859-1?Q?vCGzm6VYNeH38vCatW1M30//k7LnBCnolhH9zUfulXJwTBU8gpJF4D3Ubz?=
 =?iso-8859-1?Q?LJMLeMbCUM1c9cCay9j18/EOyxY5lyOEiCzPu1xSlKiMnXSGK16Qi7jbjk?=
 =?iso-8859-1?Q?eoG3aFYi/HeOQOAa0NrRfT5rlOkyV3EgelGzOk6LVirEpF+7Fu7idGNoqZ?=
 =?iso-8859-1?Q?RBAeK6G3Q/lmvQqVq13lbJbsZB9xs461rw6T3Vx9f8061z7DVxIWVPkqZP?=
 =?iso-8859-1?Q?6FEzdarBH5utkxaywjMoCLhEpjj5aA3ydru70Cy4Kb59MFTJaKSFHilOu5?=
 =?iso-8859-1?Q?gyhufBfndVNa5e1/Tt23tx4SHuV8fU0vD34Y8DnHxQicv4IGr6ahSTNbCf?=
 =?iso-8859-1?Q?uFOYydCZLmKOHAScowx8gkeq4etCOQq1R7TBkJOD6PbLI8ASkcxzdCuafX?=
 =?iso-8859-1?Q?vmmfcdsfioOaivI82t37xQKAFX5Jf3UMIxhE3vB8EA2eR5iVxA8XV6QA?=
 =?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: 9385d259-8333-464f-e543-08dbcb6fdf48
X-MS-Exchange-CrossTenant-originalarrivaltime: 12 Oct 2023 22:09:14.5076
 (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: iK/voxAwtiw+7wIxak+45MttHbuarMe2lCVNroGC85TNgBLTalS7ZH/HkIFdyKHF5qkfyV9zp6G9FYJE8rhzfwleU+v6RP1ifS9rR/XUb40=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBAPR03MB6376
X-Proofpoint-GUID: oWPZhzSBKvDFZcijyL9aFYhlavcIPxAL
X-Proofpoint-ORIG-GUID: oWPZhzSBKvDFZcijyL9aFYhlavcIPxAL
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-10-12_14,2023-10-12_01,2023-05-22_02
X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 adultscore=0 spamscore=0
 mlxscore=0 lowpriorityscore=0 suspectscore=0 priorityscore=1501
 impostorscore=0 clxscore=1015 malwarescore=0 bulkscore=0 mlxlogscore=574
 phishscore=0 classifier=spam adjust=0 reason=mlx scancount=1
 engine=8.12.0-2309180000 definitions=main-2310120186

Previously pci_enable_msi() function obtained pdev pointer by itself,
but taking into account upcoming changes to PCI locking, it is better
when caller passes already acquired pdev pointer to the function.

Note that ns16550 driver does not check validity of obtained pdev
pointer because pci_enable_msi() already does this.

Signed-off-by: Volodymyr Babchuk <volodymyr_babchuk@epam.com>

---
Changes in v10:

 - New in v10. This is the result of discussion in "vpci: add initial
 support for virtual PCI bus topology"
---
 xen/arch/x86/include/asm/msi.h |  3 ++-
 xen/arch/x86/irq.c             |  2 +-
 xen/arch/x86/msi.c             | 19 ++++++++++---------
 xen/drivers/char/ns16550.c     |  4 +++-
 4 files changed, 16 insertions(+), 12 deletions(-)

diff --git a/xen/arch/x86/include/asm/msi.h b/xen/arch/x86/include/asm/msi.=
h
index a53ade95c9..836c8cd4ba 100644
--- a/xen/arch/x86/include/asm/msi.h
+++ b/xen/arch/x86/include/asm/msi.h
@@ -81,7 +81,8 @@ struct irq_desc;
 struct hw_interrupt_type;
 struct msi_desc;
 /* Helper functions */
-extern int pci_enable_msi(struct msi_info *msi, struct msi_desc **desc);
+extern int pci_enable_msi(struct msi_info *msi, struct msi_desc **desc,
+			  struct pci_dev *pdev);
 extern void pci_disable_msi(struct msi_desc *desc);
 extern int pci_prepare_msix(u16 seg, u8 bus, u8 devfn, bool off);
 extern void pci_cleanup_msi(struct pci_dev *pdev);
diff --git a/xen/arch/x86/irq.c b/xen/arch/x86/irq.c
index 6abfd81621..68b788c42e 100644
--- a/xen/arch/x86/irq.c
+++ b/xen/arch/x86/irq.c
@@ -2167,7 +2167,7 @@ int map_domain_pirq(
         if ( !pdev )
             goto done;
=20
-        ret =3D pci_enable_msi(msi, &msi_desc);
+        ret =3D pci_enable_msi(msi, &msi_desc, pdev);
         if ( ret )
         {
             if ( ret > 0 )
diff --git a/xen/arch/x86/msi.c b/xen/arch/x86/msi.c
index a78367d7cf..20275260b3 100644
--- a/xen/arch/x86/msi.c
+++ b/xen/arch/x86/msi.c
@@ -983,13 +983,13 @@ static int msix_capability_init(struct pci_dev *dev,
  * irq or non-zero for otherwise.
  **/
=20
-static int __pci_enable_msi(struct msi_info *msi, struct msi_desc **desc)
+static int __pci_enable_msi(struct msi_info *msi, struct msi_desc **desc,
+			    struct pci_dev *pdev)
 {
-    struct pci_dev *pdev;
     struct msi_desc *old_desc;
=20
     ASSERT(pcidevs_locked());
-    pdev =3D pci_get_pdev(NULL, msi->sbdf);
+
     if ( !pdev )
         return -ENODEV;
=20
@@ -1038,13 +1038,13 @@ static void __pci_disable_msi(struct msi_desc *entr=
y)
  * of irqs available. Driver should use the returned value to re-send
  * its request.
  **/
-static int __pci_enable_msix(struct msi_info *msi, struct msi_desc **desc)
+static int __pci_enable_msix(struct msi_info *msi, struct msi_desc **desc,
+			     struct pci_dev *pdev)
 {
-    struct pci_dev *pdev;
     struct msi_desc *old_desc;
=20
     ASSERT(pcidevs_locked());
-    pdev =3D pci_get_pdev(NULL, msi->sbdf);
+
     if ( !pdev || !pdev->msix )
         return -ENODEV;
=20
@@ -1151,15 +1151,16 @@ int pci_prepare_msix(u16 seg, u8 bus, u8 devfn, boo=
l off)
  * Notice: only construct the msi_desc
  * no change to irq_desc here, and the interrupt is masked
  */
-int pci_enable_msi(struct msi_info *msi, struct msi_desc **desc)
+int pci_enable_msi(struct msi_info *msi, struct msi_desc **desc,
+		   struct pci_dev *pdev)
 {
     ASSERT(pcidevs_locked());
=20
     if ( !use_msi )
         return -EPERM;
=20
-    return msi->table_base ? __pci_enable_msix(msi, desc) :
-                             __pci_enable_msi(msi, desc);
+    return msi->table_base ? __pci_enable_msix(msi, desc, pdev) :
+			     __pci_enable_msi(msi, desc, pdev);
 }
=20
 /*
diff --git a/xen/drivers/char/ns16550.c b/xen/drivers/char/ns16550.c
index 28ddedd50d..1856b72e63 100644
--- a/xen/drivers/char/ns16550.c
+++ b/xen/drivers/char/ns16550.c
@@ -452,10 +452,12 @@ static void __init cf_check ns16550_init_postirq(stru=
ct serial_port *port)
             if ( rc > 0 )
             {
                 struct msi_desc *msi_desc =3D NULL;
+                struct pci_dev *pdev;
=20
                 pcidevs_lock();
=20
-                rc =3D pci_enable_msi(&msi, &msi_desc);
+                pdev =3D pci_get_pdev(NULL, msi.sbdf);
+                rc =3D pci_enable_msi(&msi, &msi_desc, pdev);
                 if ( !rc )
                 {
                     struct irq_desc *desc =3D irq_to_desc(msi.irq);
--=20
2.42.0


From xen-devel-bounces@lists.xenproject.org Thu Oct 12 22:09:38 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 22:09:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616066.957785 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qr3s2-0001Hi-Kq; Thu, 12 Oct 2023 22:09:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616066.957785; Thu, 12 Oct 2023 22:09: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 1qr3s2-0001FW-E7; Thu, 12 Oct 2023 22:09:30 +0000
Received: by outflank-mailman (input) for mailman id 616066;
 Thu, 12 Oct 2023 22:09: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=Hhgq=F2=epam.com=prvs=4649fa389a=volodymyr_babchuk@srs-se1.protection.inumbo.net>)
 id 1qr3s0-00016v-Lo
 for xen-devel@lists.xenproject.org; Thu, 12 Oct 2023 22:09:28 +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 01ef1e01-694c-11ee-98d4-6d05b1d4d9a1;
 Fri, 13 Oct 2023 00:09:27 +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
 39CKqmlB008371; Thu, 12 Oct 2023 22:09:24 GMT
Received: from eur01-db5-obe.outbound.protection.outlook.com
 (mail-db5eur01lp2050.outbound.protection.outlook.com [104.47.2.50])
 by mx0b-0039f301.pphosted.com (PPS) with ESMTPS id 3tpr7cr8dp-8
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT);
 Thu, 12 Oct 2023 22:09:24 +0000
Received: from VI1PR03MB3710.eurprd03.prod.outlook.com (2603:10a6:803:31::18)
 by DBAPR03MB6376.eurprd03.prod.outlook.com (2603:10a6:10:193::6) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.45; Thu, 12 Oct
 2023 22:09:17 +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.6863.043; Thu, 12 Oct 2023
 22:09: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: 01ef1e01-694c-11ee-98d4-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=HKfg5qXdDexzLV0+sZbNbyvTpFHTwVC5+rRHRYnQj4SK+Xl0hOCChTqhFsmRDjK6hrkQcBA5Md4w6VfFjcz7hcCkIgPWW+CfiX25Xy7p4HkNqjQY8oITAD/n2YG7ZJPkr9G23BmtB+h+00JbmS6h2QI52e3BZAUaDpvjuoMfq08IitmRjg0kZrFg0OXY/wlJVOpL6tm7d51cH4L7WgWAKqIw+KVEP3GZUnr8ZZ54I7kLVpcyYwJxWvlbI4cwyfH2e+68DMlrgqNdqI+2I4Cm5e5S30SBaynbkLS+J8iYKhZ+NCsG6BcOc3OLGkPvXzQHiOj9okJ8coIvhN/S9C6dng==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=sHEaJEc3G9E8e7KRUoJf4jCqFeFYGoQCExX39F4Rr1I=;
 b=RsiRUVP8cT+JS7Dw9wFSb/H4R+DZCcREN2y30ac875vhZqKpeqxLV311RQ14Wf8QsslJUFldkyla3T+opjtBzRbW6Wb8Py3uXcq0jFhKXpcgy7PfbTmSFNiWg0nN857wquTrqSoApcA6jJoY/JE8urhquy8W02LX6NTtaflKv9bAeyiKOllOB4NB6FEa3P2+YUPds3EUYLv1Y1w7HWA0phKbNq5jRRnWCUS/yaBejceHRmKfAOmHr1NshqK2GPhiYLZ/xPEuhYECfeAktuENLUy2yKrboVRq9+Oga6cl9tNqirQyfM9IoDSk8ovRic6XrgcX7vwDQ+eXXJOWmCTp0A==
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=sHEaJEc3G9E8e7KRUoJf4jCqFeFYGoQCExX39F4Rr1I=;
 b=KL1ebSqNDtsoco09bWyUcTxN0oR1TTeo/3xGTjP+GXZzZLpYGr7EZ5y0OKehB1Ds28MHVbKQnv4Zh2d3+d3M21sQC0M7UTonnFQoI5FBVR3/rY2jj7463qezz9nh4b+0ylwB1XzwCiO7Q4WfmJBph2rsN5XkSGlj4EmUUibgL4lpox+rRNL8QMJmnX+3I2DL36277iut03Bw2bn1ZTnk/Z1Ndj+eYrlXN5oMl2VKdcrRBMDpXq+OV7p90F/mxGeyC8qZFc7ypRHVR0LnwvpRPcKtcywkWLk4G5FFFeaKEyjfFduRpSZrxUveNoyzrbMAFb9ZIy2SJHhIYz5v1R/Ufw==
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>,
        Oleksandr Andrushchenko
	<Oleksandr_Andrushchenko@epam.com>,
        =?iso-8859-1?Q?Roger_Pau_Monn=E9?=
	<roger.pau@citrix.com>
Subject: [PATCH v10 07/17] vpci/header: implement guest BAR register handlers
Thread-Topic: [PATCH v10 07/17] vpci/header: implement guest BAR register
 handlers
Thread-Index: AQHZ/Vi9sL7dfLy6W0u4NsE3jXsp9g==
Date: Thu, 12 Oct 2023 22:09:16 +0000
Message-ID: <20231012220854.2736994-8-volodymyr_babchuk@epam.com>
References: <20231012220854.2736994-1-volodymyr_babchuk@epam.com>
In-Reply-To: <20231012220854.2736994-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_|DBAPR03MB6376:EE_
x-ms-office365-filtering-correlation-id: 84293fd7-60c6-45d2-927d-08dbcb6fe0c1
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: 
 g5TcQAGvDSz6D5rIRrUrWqzsLuXPF6SMdzA5Dv9UheJumLKqV6ToelEolQLEI9ILPkh0JyG9S9P60ujoliRBdhix1iLsr+BCGihJGR/QERnxVZxgHzWLWI3eBTP24tmWQmNFRa/Gq6xGv/bkj4XE/7yIvhsjJ0+DUPpyXROoj6kYxW9IIKSjMKw9muHhq0KZ8W79ooT/1y7Ehc5Xeio7UJDsB0avQKsSbX1XfQFstfSHySzJeyZc83ajarPUfVXw2qMIqveN5917cDziKM1ZZ7vpwpXOl9Nc/qJGPVpYBGG8wm0Sckp2E/jWkfATWP5qTRZZhvvTZrclh3kfjn8ubRCfP158gfNmiQaGnpGU55jNwAXwrSsJU4zC3KCr4mvNA3geiYqb/0r5OCmSkU6X1C69Kod228XXg6NA219umVb8GmKmI4qc48yKbA+f5oZSUJlVdZL6k3ik99KwSe4qMHy9nKDnOCSolcwLZvsyi1XoTjk7u5C4h61vhLzV4hT9xBfGMgEMz0g94HMzT/gtaUqKKlL5f+F2ucIgHkgk1nQEthEZqQQTaPtarOcYRL8xrz3GBApTCghOvv1Gtmb1rJqk6rCnS2yp73iaAxcImmPo0pEL9vmTi0RBGfgOXkCE
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)(39860400002)(396003)(346002)(366004)(136003)(230922051799003)(451199024)(64100799003)(186009)(1800799009)(2616005)(71200400001)(26005)(6512007)(6506007)(55236004)(36756003)(86362001)(38100700002)(38070700005)(122000001)(1076003)(83380400001)(91956017)(41300700001)(64756008)(316002)(76116006)(54906003)(66946007)(66446008)(6916009)(66556008)(66476007)(2906002)(8936002)(5660300002)(8676002)(4326008)(6486002)(478600001);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: 
 =?iso-8859-1?Q?0oODUwcBgKr4gqpn75YmGL+2GYSfZGSQinF3y6ess2CVsOpxIOT1uUP5h4?=
 =?iso-8859-1?Q?P7HOkN9TSdEPHUeIUPlZ18RRT5p5+VLCXNQ28o1AdV8ZClF2hd8oZKmGhT?=
 =?iso-8859-1?Q?jNVmyBwHBBCK0De1g9XCbNGEywhrXNZ6wUnFB/tz0sXP15qUqUkYk+o0w9?=
 =?iso-8859-1?Q?zuUL7J0G0KVUDBrxrSlEpWKwMg8NL2ENvcktXYk3gmm5LQxZAaj8gqwT4P?=
 =?iso-8859-1?Q?/SUcNkFmuwprKTZT92DOmH7J54ZKipRsTBZTyE/OickSfowpGMoO3psB7w?=
 =?iso-8859-1?Q?LxdO3TDxLkm5ehZ6GXB4NfZlEUNuUy+BEJxvo+eqdsJs+NMeXSJw4fjz0M?=
 =?iso-8859-1?Q?BiyLs823WKktrPgyAUH8ObZh1zT1rSSuk5s1d5GMTF5MAm9zdqGtv4ztYf?=
 =?iso-8859-1?Q?WEQM23SR8PxdUfxSUMmCyFizY/5DzHsO/IcszU9zdk8x1a/FEigdQ7q4Z7?=
 =?iso-8859-1?Q?H8FOAQC0FnkhvcMEZY+2/Z1rHPR8vShv+ISQdt6oh2zK4F8e7jiy6a4c5l?=
 =?iso-8859-1?Q?1dsMRXVticzaqgaJZrQ5BbmgPPuIia9kPTPijmwZjIHifHRN1aDzpYmlSm?=
 =?iso-8859-1?Q?qASRL8enpU9VbBiH/1ZtulAU/7ArppnzX2/XYNCSjAbRobXGzanaAMGhF+?=
 =?iso-8859-1?Q?3KBUDglZ881MeXFz/m8M3ZXMkznNH0T7HohD/ZUjHRBVwWE0z6pjPodH8t?=
 =?iso-8859-1?Q?71uAYjw+/3naXxJT6hQtst+MvY0qEd3+C+v/xvLIrbVxFr7XCwjc6cwtjF?=
 =?iso-8859-1?Q?zuTFRO1zvm5s64pikSSI1E0we9X0ajcC43fpTikDADW5L0qzsPY9cHtewV?=
 =?iso-8859-1?Q?AhHkiygJStllj5hbgvLnTNIGHBlSVElBjAVd6EcxPJn3rnnqgfSiUQPRYw?=
 =?iso-8859-1?Q?lw+z4gFEz1HU21ylq0noF+yzMbBLcVVCF6KeJYkYjjIjZ3IsE8/n6gK5bj?=
 =?iso-8859-1?Q?Mzy13I2PW9SRl8dWKn87qZfm8hGDDgyXjXHSU9J8CV6qzBb84fra89Udhh?=
 =?iso-8859-1?Q?7aGn5KUGerpTH6A4cWXxD6cggoG0WTJ2948C2U6qx1uMy4aF+9/JZ55CHg?=
 =?iso-8859-1?Q?i23jFgjEy2SG47ApbK7BLEOLt81V83e9DPfVsTfC21Gdvb9eCfPIUfN8rb?=
 =?iso-8859-1?Q?iC0A9liN+gTmDK3uXBcEj4TIvAYrwPdmP4PJj0ukkCyOB/Mq0w55PUN9S0?=
 =?iso-8859-1?Q?51MFnvq4IMI46uFvinWdapzH6jHPoVUCPsjxXmIc0SDng2cjtKV0hFDAqj?=
 =?iso-8859-1?Q?6A0pMzWeXVTP5ZLix3vjEENe4dOWmloI8AlxNBM7trftGU3lgG0SneS7dO?=
 =?iso-8859-1?Q?hPnhg1R/RxgorMdR6RIfYmFh0XBXF8iNjdBPMBy5Wn23jJr7GLaoL8AzE0?=
 =?iso-8859-1?Q?jP0qv+WwJcVXVr3hm9guj0jR2BCXzDcNp4PoeUxXVINrv+QxS0+1L469Dq?=
 =?iso-8859-1?Q?wLEfwbjtfE6feFkIr7SqRlMV7RsDBIZEG98rpS1ywGn86piRoLPvogmXBd?=
 =?iso-8859-1?Q?DIDPixgrkiCVtIXeVVS9ap+QEja5laTJQ21Y5q5YISHxBenoZsFpbvardt?=
 =?iso-8859-1?Q?nl76RjuwtATtZ6dRBXUj4poUB3m56stKMLEPgTf7sgp5ItkG4VtGMPB6IX?=
 =?iso-8859-1?Q?xRgX1CVoQL38PzPAyLKVjssCePjNgT66xcwZY3nhq76ycR50zgXKufnA?=
 =?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: 84293fd7-60c6-45d2-927d-08dbcb6fe0c1
X-MS-Exchange-CrossTenant-originalarrivaltime: 12 Oct 2023 22:09:16.6198
 (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: 0xjQaEJ1sdTbZRPOoTkk22uoYvAw8ba6sDXGfJkW0WSQNyRKfLCrAbAG84aGnZSw93AhJZttYWcscZltRqT4UkiyjKdGMeLsqCI9GIfIvEI=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBAPR03MB6376
X-Proofpoint-GUID: Nj2eEDhtFVFt6sGLO1ttSKBvltZmPO8t
X-Proofpoint-ORIG-GUID: Nj2eEDhtFVFt6sGLO1ttSKBvltZmPO8t
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-10-12_14,2023-10-12_01,2023-05-22_02
X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 adultscore=0 spamscore=0
 mlxscore=0 lowpriorityscore=0 suspectscore=0 priorityscore=1501
 impostorscore=0 clxscore=1015 malwarescore=0 bulkscore=0 mlxlogscore=999
 phishscore=0 classifier=spam adjust=0 reason=mlx scancount=1
 engine=8.12.0-2309180000 definitions=main-2310120186

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>
---
In v10:
- ull -> ULL to be MISRA-compatbile
- Use PAGE_OFFSET() instead of combining with ~PAGE_MASK
- Set type of empty bars to VPCI_BAR_EMPTY
In 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 | 137 +++++++++++++++++++++++++++++++++-----
 xen/include/xen/vpci.h    |   3 +
 2 files changed, 123 insertions(+), 17 deletions(-)

diff --git a/xen/drivers/vpci/header.c b/xen/drivers/vpci/header.c
index 33db58580c..40d1a07ada 100644
--- a/xen/drivers/vpci/header.c
+++ b/xen/drivers/vpci/header.c
@@ -477,6 +477,74 @@ static void cf_check bar_write(
     pci_conf_write32(pdev->sbdf, reg, val);
 }
=20
+static void cf_check guest_bar_write(const struct pci_dev *pdev,
+                                     unsigned int reg, uint32_t val, void =
*data)
+{
+    struct vpci_bar *bar =3D data;
+    bool hi =3D false;
+    uint64_t guest_addr =3D bar->guest_addr;
+
+    if ( bar->type =3D=3D VPCI_BAR_MEM64_HI )
+    {
+        ASSERT(reg > PCI_BASE_ADDRESS_0);
+        bar--;
+        hi =3D true;
+    }
+    else
+    {
+        val &=3D PCI_BASE_ADDRESS_MEM_MASK;
+    }
+
+    guest_addr &=3D ~(0xffffffffULL << (hi ? 32 : 0));
+    guest_addr |=3D (uint64_t)val << (hi ? 32 : 0);
+
+    /* Allow guest to size BAR correctly */
+    guest_addr &=3D ~(bar->size - 1);
+
+    /*
+     * 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 !=3D ~(bar->size -1 )  &&
+         PAGE_OFFSET(guest_addr) !=3D PAGE_OFFSET(bar->addr) )
+    {
+        gprintk(XENLOG_WARNING,
+                "%pp: ignored BAR %zu write attempting to change page offs=
et\n",
+                &pdev->sbdf, bar - pdev->vpci->header.bars + hi);
+        return;
+    }
+
+    bar->guest_addr =3D 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 =3D data;
+    uint32_t reg_val;
+
+    if ( bar->type =3D=3D VPCI_BAR_MEM64_HI )
+    {
+        ASSERT(reg > PCI_BASE_ADDRESS_0);
+        bar--;
+        return bar->guest_addr >> 32;
+    }
+
+    reg_val =3D bar->guest_addr;
+    reg_val |=3D bar->type =3D=3D VPCI_BAR_MEM32 ? PCI_BASE_ADDRESS_MEM_TY=
PE_32 :
+                                             PCI_BASE_ADDRESS_MEM_TYPE_64;
+    reg_val |=3D 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;
+}
+
 static void cf_check rom_write(
     const struct pci_dev *pdev, unsigned int reg, uint32_t val, void *data=
)
 {
@@ -537,6 +605,7 @@ static int cf_check init_bars(struct pci_dev *pdev)
     struct vpci_header *header =3D &pdev->vpci->header;
     struct vpci_bar *bars =3D header->bars;
     int rc;
+    bool is_hwdom =3D is_hardware_domain(pdev->domain);
=20
     ASSERT(rw_is_write_locked(&pdev->domain->pci_lock));
=20
@@ -578,8 +647,10 @@ static int cf_check init_bars(struct pci_dev *pdev)
         if ( i && bars[i - 1].type =3D=3D VPCI_BAR_MEM64_LO )
         {
             bars[i].type =3D VPCI_BAR_MEM64_HI;
-            rc =3D vpci_add_register(pdev->vpci, vpci_hw_read32, bar_write=
, reg,
-                                   4, &bars[i]);
+            rc =3D vpci_add_register(pdev->vpci,
+                                   is_hwdom ? vpci_hw_read32 : guest_bar_r=
ead,
+                                   is_hwdom ? bar_write : guest_bar_write,
+                                   reg, 4, &bars[i]);
             if ( rc )
                 goto fail;
             continue;
@@ -588,7 +659,17 @@ static int cf_check init_bars(struct pci_dev *pdev)
         val =3D pci_conf_read32(pdev->sbdf, reg);
         if ( (val & PCI_BASE_ADDRESS_SPACE) =3D=3D PCI_BASE_ADDRESS_SPACE_=
IO )
         {
-            bars[i].type =3D VPCI_BAR_IO;
+            if ( !IS_ENABLED(CONFIG_X86) && !is_hwdom )
+            {
+                rc =3D vpci_add_register(pdev->vpci, empty_bar_read, NULL,
+                                       reg, 4, NULL);
+                if ( rc )
+                {
+                    bars[i].type =3D VPCI_BAR_EMPTY;
+                    goto fail;
+                }
+            }
+
             continue;
         }
         if ( (val & PCI_BASE_ADDRESS_MEM_TYPE_MASK) =3D=3D
@@ -605,6 +686,15 @@ static int cf_check init_bars(struct pci_dev *pdev)
         if ( size =3D=3D 0 )
         {
             bars[i].type =3D VPCI_BAR_EMPTY;
+
+            if ( !is_hwdom )
+            {
+                rc =3D vpci_add_register(pdev->vpci, empty_bar_read, NULL,
+                                       reg, 4, NULL);
+                if ( rc )
+                    goto fail;
+            }
+
             continue;
         }
=20
@@ -612,28 +702,41 @@ static int cf_check init_bars(struct pci_dev *pdev)
         bars[i].size =3D size;
         bars[i].prefetchable =3D val & PCI_BASE_ADDRESS_MEM_PREFETCH;
=20
-        rc =3D vpci_add_register(pdev->vpci, vpci_hw_read32, bar_write, re=
g, 4,
-                               &bars[i]);
+        rc =3D 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;
     }
=20
-    /* Check expansion ROM. */
-    rc =3D 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 =3D &header->bars[num_bars];
+        rc =3D pci_size_mem_bar(pdev->sbdf, rom_reg, &addr, &size, PCI_BAR=
_ROM);
+        if ( rc > 0 && size )
+        {
+            struct vpci_bar *rom =3D &header->bars[num_bars];
=20
-        rom->type =3D VPCI_BAR_ROM;
-        rom->size =3D size;
-        rom->addr =3D addr;
-        header->rom_enabled =3D pci_conf_read32(pdev->sbdf, rom_reg) &
-                              PCI_ROM_ADDRESS_ENABLE;
+            rom->type =3D VPCI_BAR_ROM;
+            rom->size =3D size;
+            rom->addr =3D addr;
+            header->rom_enabled =3D pci_conf_read32(pdev->sbdf, rom_reg) &
+                                  PCI_ROM_ADDRESS_ENABLE;
=20
-        rc =3D vpci_add_register(pdev->vpci, vpci_hw_read32, rom_write, ro=
m_reg,
-                               4, rom);
+            rc =3D vpci_add_register(pdev->vpci, vpci_hw_read32, rom_write=
,
+                                   rom_reg, 4, rom);
+            if ( rc )
+                rom->type =3D VPCI_BAR_EMPTY;
+        }
+    }
+    else
+    {
+        header->bars[num_bars].type =3D VPCI_BAR_EMPTY;
+        rc =3D vpci_add_register(pdev->vpci, empty_bar_read, NULL,
+                               rom_reg, 4, NULL);
         if ( rc )
-            rom->type =3D VPCI_BAR_EMPTY;
+            goto fail;
     }
=20
     return (cmd & PCI_COMMAND_MEMORY) ? modify_bars(pdev, cmd, false) : 0;
diff --git a/xen/include/xen/vpci.h b/xen/include/xen/vpci.h
index 75cfb532ee..2028f2151f 100644
--- a/xen/include/xen/vpci.h
+++ b/xen/include/xen/vpci.h
@@ -67,7 +67,10 @@ struct vpci {
     struct vpci_header {
         /* Information about the PCI BARs of this device. */
         struct vpci_bar {
+            /* Physical (host) address. */
             uint64_t addr;
+            /* Guest address. */
+            uint64_t guest_addr;
             uint64_t size;
             enum {
                 VPCI_BAR_EMPTY,
--=20
2.42.0


From xen-devel-bounces@lists.xenproject.org Thu Oct 12 22:09:38 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 22:09:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616072.957849 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qr3s7-0002wU-J9; Thu, 12 Oct 2023 22:09:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616072.957849; Thu, 12 Oct 2023 22:09: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 1qr3s7-0002vD-C8; Thu, 12 Oct 2023 22:09:35 +0000
Received: by outflank-mailman (input) for mailman id 616072;
 Thu, 12 Oct 2023 22:09: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=Hhgq=F2=epam.com=prvs=4649fa389a=volodymyr_babchuk@srs-se1.protection.inumbo.net>)
 id 1qr3s6-00016v-1s
 for xen-devel@lists.xenproject.org; Thu, 12 Oct 2023 22:09:34 +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 0568c859-694c-11ee-98d4-6d05b1d4d9a1;
 Fri, 13 Oct 2023 00:09: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
 39CKqml2008371; Thu, 12 Oct 2023 22:09:18 GMT
Received: from eur01-db5-obe.outbound.protection.outlook.com
 (mail-db5eur01lp2050.outbound.protection.outlook.com [104.47.2.50])
 by mx0b-0039f301.pphosted.com (PPS) with ESMTPS id 3tpr7cr8dp-1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT);
 Thu, 12 Oct 2023 22:09:17 +0000
Received: from VI1PR03MB3710.eurprd03.prod.outlook.com (2603:10a6:803:31::18)
 by DBAPR03MB6376.eurprd03.prod.outlook.com (2603:10a6:10:193::6) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.45; Thu, 12 Oct
 2023 22:09:14 +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.6863.043; Thu, 12 Oct 2023
 22:09: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: 0568c859-694c-11ee-98d4-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=bJar0ktDK0Zr4Nusawcylt9N5IgEcz1ZPFFgTVOBLSeNsi5RVFls2X+Rr5TskutmMBKsTf/h1LfFmF61hxWsY4cAMniwEz8563BWIqZZOCcfLSc33/iphWVOcmOaEkXJL4uqHdhPkROV23ty11f+UR8nG56I+AecIyg7Es2FiDHJD7V12bqWEj4Jng3SKKdzfpVvv4Xoe03QYovQzehbH8PY6tAKKMS5PNEXiHtpaOl+d0K4u6NOuqsZr99028tWWU1eTJ8VXbsJW9xW3gDvR2oN5LOweo2pka2d54VDyN1UVBh5zQF0zMtXgvY6fkgFqDS8wtVcxrY849SqR9VGKQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=fhXyJHYlAPTYayr221weXq+AyrDZqJ1ahzFObJgSnxk=;
 b=Iq0ZmxRYu9RtIp1K79RvDKisYb+MygeuuZRx7yayXOCFqfPv+uN/yvyj0vjSPEdODnK22LWHRv+f9hHrMThf5Zo3SBeE+yF0/8CbmyJFwsS44Gr+UZUYV2jB7yFR150P79kF6731+tHoMaxJFqsT13+ZpWKZMo0l3k0RYWPj8ttfAQYuOvrvgPZ4hkPDfopgnONlxha0rAoVMA5MAnwjhuH7BWraqi1JYuoXA0H15ZvzLGQ9ZxQyF/CBC7HfXmRxPFT47jvIX4PgX71HXzOAtv0YukEAq55fsHO5lz0ImuEfy5Kq3kGBtyWYCpk4UxcqJTcfpDMxxcZwrFMvCxSfSQ==
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=fhXyJHYlAPTYayr221weXq+AyrDZqJ1ahzFObJgSnxk=;
 b=NWn3q7iUmybgUn2r0ktUns/JLOooMu4GZnKx8g/OL/bxip0VZujOQxJ7VBOqkXFeW1aHmqIqKWPshppzJyAtjfT9LDYrFHY7H/Qm04QRfOj5oYNde478fAYEPfLpNBmfnK1jMKx/7yvpT4G3IUq2sJr9zEkKEwkbjVqz+wcKmNvyirSCC/l7/npQ3o9xHgeriieifrQD0j1k8i00lHygK3n9UElTsUYjCwFvFakU6OlGwbxuGhFg4TmrewGskgDk19lYXkiLaVmta7q5A7YfjsbfR3xJ1FtEQc7qoLn/yB/H5zWSaczn/sj3CBwCc07f6pA1EZwIPXR+yPmPeIFRiw==
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>,
        Jan Beulich <jbeulich@suse.com>,
        Andrew Cooper
	<andrew.cooper3@citrix.com>,
        =?utf-8?B?Um9nZXIgUGF1IE1vbm7DqQ==?=
	<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>,
        Jun Nakajima <jun.nakajima@intel.com>,
        Bertrand
 Marquis <bertrand.marquis@arm.com>,
        Volodymyr Babchuk
	<Volodymyr_Babchuk@epam.com>
Subject: [PATCH v10 00/17] PCI devices passthrough on Arm, part 3
Thread-Topic: [PATCH v10 00/17] PCI devices passthrough on Arm, part 3
Thread-Index: AQHZ/Vi800FGBIOTr0uxo4jqDLR7uA==
Date: Thu, 12 Oct 2023 22:09:14 +0000
Message-ID: <20231012220854.2736994-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_|DBAPR03MB6376:EE_
x-ms-office365-filtering-correlation-id: 2790b472-fa02-4918-8ab2-08dbcb6fdeca
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: 
 YoXTJlnmejxo++8LZP4k0hzc/kpXn5KoJCMFdXaYIAlToBUz/Y89eBjzv0bD06h+bhqPJqHhtR1cSTj6gwJTfcD+ysGfQNqZZaLlnyFCK0pDmOf7pMhbkh+WntxZX1eR71jsK+lMUpZsicKSf5mfBN8tnZha0jJwzy5ikJCnpT181mtmXCkg+jb+iOnHbkMe3wpY/tidL1ueUyaSCI9ITvzZi5ql7z/zsN1cdp61ucrYRic3p9RBPUX85AAy1sBsKPRzR3Wsq/wV1qq9ljtPznjd4+kVreTBM7n/6xew0e4miePMpPimgY4QJCNl7GpN9A0EL12wlBnmWE/wQv1t4GMibT153T4hVvVwPSHMNGWfOCDpn5so8rd9gX27OwZL7Aas6WkTBevVecfXi/AtkhRmkXGmNcKLl8W1BR+oyOiLaqJfhixiP3JB+JSWSpRsUuuTxn6Bo56PXSbxwuuezWYnnicS0Iv4q6VPyAMGU249n6gG/ERpiIP7leObP9eJwX+9SaPu7n3GaOgrAV95BdUEmYgXAfxqTtmqpASJcrmcsude1I2iKwlDECyVY+k1SrBbPVv+BKrAyKflqZ/Dh2SjkJwH1/1G1DyeOI6TJwRRQiT5WwkwrxQw5ze3l0o9
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)(39860400002)(396003)(346002)(366004)(136003)(230922051799003)(451199024)(64100799003)(186009)(1800799009)(107886003)(2616005)(71200400001)(26005)(6512007)(6506007)(55236004)(36756003)(86362001)(38100700002)(38070700005)(122000001)(1076003)(83380400001)(7416002)(91956017)(41300700001)(64756008)(316002)(76116006)(54906003)(66946007)(66446008)(6916009)(66556008)(66476007)(2906002)(8936002)(5660300002)(8676002)(4326008)(6486002)(478600001);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: 
 =?utf-8?B?aHI0ajM3VU9mSGJPaUFmU045ZDYrTkh1eklZNXZpNFhocTJhV3QwaHdWTWtR?=
 =?utf-8?B?YXlSQXRkVGR2SE55aElxZmlWcHZsTnV2KytIdW5Ra2xSRTRwMDJDSjZETWZm?=
 =?utf-8?B?YzF1eG1xWUFPSVV6L0d0bWZwMEhRZHljZVRFcVRGb3RzaVU0bnVUWERSdkJZ?=
 =?utf-8?B?ZnlYQ2Z4QVZGaUFhN3JvMEpjVVVGVmRTaGpwSGdZSFA1ZVpnZ2ZYZUFHWTdR?=
 =?utf-8?B?OGJGa0ZYK1ZrL1VkdkFjRTlJNTR2bFEwdkYralMvNys0T0xIU3ltMDNIZThT?=
 =?utf-8?B?c3JoNXVhaXhPaFB0WGJTb1R5dVNWVVdBREQ4U0N1NHAzMDhaQnNnTEcwOU84?=
 =?utf-8?B?b2dENFFncGFGVmhYWmhHZFRYcjJ4V0RsS3J2OTByWktva2VZRUhnbjhjcnlr?=
 =?utf-8?B?bUFKSXM5OG03eE1qU29RZ3VwNTFRN3lQZVB5U0x3VFNtWDRQWFYycnR1TThh?=
 =?utf-8?B?dWsvTnBwUTc2REZ0dDZrOWVzQTlLVE9HdFMxVkg4UmhzZk1qRmFJTXVRWXhW?=
 =?utf-8?B?eXZHMW5FcnhzNEpaNFA0aGU2Z3hXT1pBS1I3MGo3UGNaTW85ZWJpQ0pLbEN5?=
 =?utf-8?B?UldtZ2NDM0RZa3R6UXlmVEpieUFJZW82bzQwVFRvR0ZhcHo5WiswcTRteU8w?=
 =?utf-8?B?V3ZKUlZ6MmpsbFVKcGprYVRnWGc3eWx0K2huK0didVgyYjd6MVRkeUV2elcx?=
 =?utf-8?B?My80aitxdExMTDdoUm95dGFrYW9HTkN1ejVFbnFRdElvcHN6bGkrRi9UVXR2?=
 =?utf-8?B?bjZPbC9pQU9INnZoem4raEVScjFQUWhuVm0yb2M0VkExWk05OExSSHZ5Qm5P?=
 =?utf-8?B?T0oza1lDSzIvVjNyRXF3N2ErY2JFQXVUS0J0VFl2QlE5VG43ZTd0QU0wWXZ6?=
 =?utf-8?B?TDlYZXVXR09HNXYyQ2pyQjlORVlDYlE0d1hLNXprcVRvNjNraVhtZDBOMCtl?=
 =?utf-8?B?YUNncUxjOGJXeERqcHJzV0haaXZiU1VmcXM4bWphUWdZTW1seTZsRnhyc1Z6?=
 =?utf-8?B?TDlyVUlTK1l3WlVxVUh0UnZaamFWUGNCYno2aGZWdE1LL1dZL0hVb3dKTjJQ?=
 =?utf-8?B?aUE5d0tVRm1VN0lMdllmS0RVSkg4eExDV2ZnT25NU1YvcGc4a3F5TGJxaEVY?=
 =?utf-8?B?NjdOaDFPM3ZsZ1Z6bXdqbVQvc1NnZjVaa3pwVE1NdUpFYk5iODljMlU5Q3Mv?=
 =?utf-8?B?d3F1R3pGOWZsSVpVeWRESzNRSmkzUHJ4cFdXRi8xTmpEd0N5UGV0dnF6Uytl?=
 =?utf-8?B?dkt5djR0NHRYRllVVjFuNXJUSHdvUWkvM1F1M1dMV0NjTCtkK2xwZm9xbTM2?=
 =?utf-8?B?SklvVFhnZTNoSVBZR2lRQ0duRnZKZloydmt4aHNpWVZyVzY5M1ZDVXFHVjEz?=
 =?utf-8?B?c0hTcHk2R1EvM25vWHdpank4MEgxNXRwQ2pvc3hBa2hXVEljWGZRcCsrY3pU?=
 =?utf-8?B?KzQ2OWhLd2ljenlac1puMFBybDFncC94cFE2RWhzYUYrblpnQVNibWFlaHgr?=
 =?utf-8?B?ai83WGxOMjQzeENreVV1YTByUWQ1YjZQT2EvTmtBcmJQNWRnT2xkVlhISFdL?=
 =?utf-8?B?cnRXMG1SUUxZL25EWkJlZE5Va2E3ZnFSUmFrRi9nQ0p2UUNWc0p1TE14Nlp5?=
 =?utf-8?B?UVFzZ0ZFRDEyR05wMy9VeHkwVHNYK29IcG9iTnRBdlhua2V3bWxzWk9UZFpa?=
 =?utf-8?B?elp0QUhYWXBMR2ZEQkN2Q2JhaXpKYmZFNC9TYjd0dm5PbklnU0xPVWl1emtz?=
 =?utf-8?B?UnVzajQvQ05PMWRKNkVZQXF1d25qRFE2eHBMZDFnVFJ0NjdvMkJKYWh6OEU5?=
 =?utf-8?B?TkhscE9vd2pEL1lkYlRJdmZIazhKQW96R0RkWmo1d3dlS3FnSGpZTjFQbW5S?=
 =?utf-8?B?Qno2WHJ4bTdTN1gxeS85VGxZUzdmS1RybTNaQmhzTEZjUXhiblZkd21VeVI4?=
 =?utf-8?B?bHBiTXVtOWxQSTFHcmt0RldJU2o4djUydmxFNktnR2pqeUJMdy9adFJ3QVR5?=
 =?utf-8?B?VkNSZTJBeGM1bW5IYmZidUZLWFBqeU5RRmtCOGN5cExPaDhSK3JXZDJFbWxO?=
 =?utf-8?B?YnhtV0VYQ3ExM1VWVmZBVmRwaGh3dWIzYnR2aG9VRis2NTFGNXczZTdtbFIv?=
 =?utf-8?B?MklScTlKY0V3L2lBTWtyTW40QWN0L21yc2ZJcGlZNXlmWXhyeWcrcDN0U1Vj?=
 =?utf-8?B?eXc9PQ==?=
Content-Type: text/plain; charset="utf-8"
Content-ID: <E1CECFAFFC8ABC44BD533542D14886B4@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: 2790b472-fa02-4918-8ab2-08dbcb6fdeca
X-MS-Exchange-CrossTenant-originalarrivaltime: 12 Oct 2023 22:09:14.2177
 (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: 8wpWODMTcvSaWDI0ayhJ/5PGYnAWJtENFEk7kXaGF/zsgOYo/ZzSIZ2E4/aE/tHCQGh0mrh3QxjRV6QGs6p3/CP+3fxqcwJKJjwW1rMnR2c=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBAPR03MB6376
X-Proofpoint-GUID: pYxa6fu9qz-NA_deBcOPhgRr-52qJx6J
X-Proofpoint-ORIG-GUID: pYxa6fu9qz-NA_deBcOPhgRr-52qJx6J
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-10-12_14,2023-10-12_01,2023-05-22_02
X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 adultscore=0 spamscore=0
 mlxscore=0 lowpriorityscore=0 suspectscore=0 priorityscore=1501
 impostorscore=0 clxscore=1011 malwarescore=0 bulkscore=0 mlxlogscore=999
 phishscore=0 classifier=spam adjust=0 reason=mlx scancount=1
 engine=8.12.0-2309180000 definitions=main-2310120186

SGVsbG8gYWxsLA0KDQpUaGlzIGlzIG5leHQgdmVyc2lvbiBvZiB2UENJIHJld29yay4gQWltIG9m
IHRoaXMgc2VyaWVzIGlzIHRvIHByZXBhcmUNCmdyb3VuZCBmb3IgaW50cm9kdWNpbmcgUENJIHN1
cHBvcnQgb24gQVJNIHBsYXRmb3JtLg0KDQppbiB2MTA6DQoNCiAtIFJlbW92ZWQgcGF0Y2ggKCJ4
ZW4vYXJtOiB2cGNpOiBjaGVjayBndWVzdCByYW5nZSIpLCBwcm9wZXIgZml4DQogICBmb3IgdGhl
IGlzc3VlIGlzIHBhcnQgb2YgKCJ2cGNpL2hlYWRlcjogZW11bGF0ZSBQQ0lfQ09NTUFORA0KICAg
cmVnaXN0ZXIgZm9yIGd1ZXN0cyIpDQogLSBSZW1vdmVkIHBhdGNoICgicGNpL2hlYWRlcjogcmVz
ZXQgdGhlIGNvbW1hbmQgcmVnaXN0ZXIgd2hlbiBhZGRpbmcNCiAgIGRldmljZXMiKQ0KIC0gQWRk
ZWQgcGF0Y2ggKCJyYW5nZXNldDogYWRkIHJhbmdlc2V0X2VtcHR5KCkgZnVuY3Rpb24iKSBiZWNh
dXNlDQogICB0aGlzIGZ1bmN0aW9uIGlzIG5lZWRlZCBpbiAoInZwY2kvaGVhZGVyOiBoYW5kbGUg
cDJtIHJhbmdlIHNldHMNCiAgIHBlciBCQVIiKQ0KIC0gQWRkZWQgKCJ2cGNpL2hlYWRlcjogaGFu
ZGxlIHAybSByYW5nZSBzZXRzIHBlciBCQVIiKSB3aGljaCBhZGRyZXNzZWQNCiAgIGFuIGlzc3Vl
IGRpc2NvdmVyZWQgYnkgQW5kcmlpIENoZXB1cm55aSBkdXJpbmcgdmlydGlvIGludGVncmF0aW9u
DQogLSBBZGRlZCAoInBjaTogbXNpOiBwYXNzIHBkZXYgdG8gcGNpX2VuYWJsZV9tc2koKSBmdW5j
dGlvbiIpLCB3aGljaCBpcw0KICAgcHJlcmVxIGZvciAoInBjaTogaW50cm9kdWNlIHBlci1kb21h
aW4gUENJIHJ3bG9jayIpDQogLSBGaXhlZCAiU2luY2UgdjkvdjgvLi4uICIgY29tbWVudHMgaW4g
Y2hhbmdlbG9ncyB0byByZWR1Y2UgY29uZnVzaW9uLg0KICAgSSBsZWZ0ICJTaW5jZSIgZW50cmll
cyBmb3Igb2xkZXIgdmVyc2lvbnMsIGJlY2F1c2UgdGhleSB3ZXJlIGFkZGVkDQogICBieSBvcmln
aW5hbCBhdXRob3Igb2YgdGhlIHBhdGNoZXMuDQoNCmluIHY5Og0KDQp2OSBpbmNsdWRlcyBhZGRy
ZXNzZWQgY29tbWVudGVzIGZyb20gYSBwcmV2aW91cyBvbmUuIEFsc28gaXQNCmludHJvZHVjZXMg
YSBjb3VwbGUgcGF0Y2hlcyBmcm9tIFN0ZXdhcnQuIFRoaXMgcGF0Y2hlcyBhcmUgcmVsYXRlZCB0
bw0KdlBDSSB1c2Ugb24gQVJNLiBQYXRjaCAidnBjaS9oZWFkZXI6IHJld29yayBleGl0IHBhdGgg
aW4gaW5pdF9iYXJzIg0Kd2FzIGZhY3RvcmVkLW91dCBmcm9tICJ2cGNpL2hlYWRlcjogaGFuZGxl
IHAybSByYW5nZSBzZXRzIHBlciBCQVIiLg0KDQppbiB2ODoNCg0KVGhlIGJpZ2dlc3QgY2hhbmdl
IGZyb20gcHJldmlvdXMsIG1pc3Rha2VubHkgbmFtZWQsIHY3IHNlcmllcyBpcyBob3cNCmxvY2tp
bmcgaXMgaW1wbGVtZW50ZWQuIEluc3RlYWQgb2YgZC0+dnBjaV9yd2xvY2sgd2UgaW50cm9kdWNl
DQpkLT5wY2lfbG9jayB3aGljaCBoYXMgYnJvYWRlciBzY29wZSwgYXMgaXQgcHJvdGVjdHMgbm90
IG9ubHkgZG9tYWluJ3MNCnZwY2kgc3RhdGUsIGJ1dCBkb21haW4ncyBsaXN0IG9mIFBDSSBkZXZp
Y2VzIGFzIHdlbGwuDQoNCkFzIHdlIGRpc2N1c3NlZCBpbiBJUkMgd2l0aCBSb2dlciwgaXQgaXMg
bm90IGZlYXNpYmxlIHRvIHJld29yayBhbGwNCnRoZSBleGlzdGluZyBjb2RlIHRvIHVzZSB0aGUg
bmV3IGxvY2sgcmlnaHQgYXdheS4gSXQgd2FzIGFncmVlZCB0aGF0DQphbnkgd3JpdGUgYWNjZXNz
IHRvIGQtPnBkZXZfbGlzdCB3aWxsIGJlIHByb3RlY3RlZCBieSAqKmJvdGgqKg0KZC0+cGNpX2xv
Y2sgaW4gd3JpdGUgbW9kZSBhbmQgcGNpZGV2c19sb2NrKCkuIFJlYWQgYWNjZXNzIG9uIG90aGVy
DQpoYW5kIHNob3VsZCBiZSBwcm90ZWN0ZWQgYnkgZWl0aGVyIGQtPnBjaV9sb2NrIGluIHJlYWQg
bW9kZSBvcg0KcGNpZGV2c19sb2NrKCkuIEl0IGlzIGV4cGVjdGVkIHRoYXQgZXhpc3RpbmcgY29k
ZSB3aWxsIHVzZQ0KcGNpZGV2c19sb2NrKCkgYW5kIG5ldyB1c2VycyB3aWxsIHVzZSBuZXcgcncg
bG9jay4gT2YgY291cnNlLCB0aGlzDQpkb2VzIG5vdCBtZWFuIHRoYXQgbmV3IHVzZXJzIHNoYWxs
IG5vdCB1c2UgcGNpZGV2c19sb2NrKCkgd2hlbiBpdCBpcw0KYXBwcm9wcmlhdGUuDQoNCg0KDQpD
aGFuZ2VzIGZyb20gcHJldmlvdXMgdmVyc2lvbnMgYXJlIGRlc2NyaWJlZCBpbiBlYWNoIHNlcGFy
YXRlIHBhdGNoLg0KDQoNCk9sZWtzYW5kciBBbmRydXNoY2hlbmtvICgxMSk6DQogIHZwY2k6IHVz
ZSBwZXItZG9tYWluIFBDSSBsb2NrIHRvIHByb3RlY3QgdnBjaSBzdHJ1Y3R1cmUNCiAgdnBjaTog
cmVzdHJpY3QgdW5oYW5kbGVkIHJlYWQvd3JpdGUgb3BlcmF0aW9ucyBmb3IgZ3Vlc3RzDQogIHZw
Y2k6IGFkZCBob29rcyBmb3IgUENJIGRldmljZSBhc3NpZ24vZGUtYXNzaWduDQogIHZwY2kvaGVh
ZGVyOiBpbXBsZW1lbnQgZ3Vlc3QgQkFSIHJlZ2lzdGVyIGhhbmRsZXJzDQogIHJhbmdlc2V0OiBh
ZGQgUkFOR0VTRVRGX25vX3ByaW50IGZsYWcNCiAgdnBjaS9oZWFkZXI6IGhhbmRsZSBwMm0gcmFu
Z2Ugc2V0cyBwZXIgQkFSDQogIHZwY2kvaGVhZGVyOiBwcm9ncmFtIHAybSB3aXRoIGd1ZXN0IEJB
UiB2aWV3DQogIHZwY2kvaGVhZGVyOiBlbXVsYXRlIFBDSV9DT01NQU5EIHJlZ2lzdGVyIGZvciBn
dWVzdHMNCiAgdnBjaTogYWRkIGluaXRpYWwgc3VwcG9ydCBmb3IgdmlydHVhbCBQQ0kgYnVzIHRv
cG9sb2d5DQogIHhlbi9hcm06IHRyYW5zbGF0ZSB2aXJ0dWFsIFBDSSBidXMgdG9wb2xvZ3kgZm9y
IGd1ZXN0cw0KICB4ZW4vYXJtOiBhY2NvdW50IElPIGhhbmRsZXJzIGZvciBlbXVsYXRlZCBQQ0kg
TVNJLVgNCg0KU3Rld2FydCBIaWxkZWJyYW5kICgxKToNCiAgeGVuL2FybTogdnBjaTogcGVybWl0
IGFjY2VzcyB0byBndWVzdCB2cGNpIHNwYWNlDQoNClZvbG9keW15ciBCYWJjaHVrICg1KToNCiAg
cGNpOiBtc2k6IHBhc3MgcGRldiB0byBwY2lfZW5hYmxlX21zaSgpIGZ1bmN0aW9uDQogIHBjaTog
aW50cm9kdWNlIHBlci1kb21haW4gUENJIHJ3bG9jaw0KICB2cGNpL2hlYWRlcjogcmV3b3JrIGV4
aXQgcGF0aCBpbiBpbml0X2JhcnMNCiAgcmFuZ2VzZXQ6IGFkZCByYW5nZXNldF9lbXB0eSgpIGZ1
bmN0aW9uDQogIGFybS92cGNpOiBob25vciBhY2Nlc3Mgc2l6ZSB3aGVuIHJldHVybmluZyBhbiBl
cnJvcg0KDQogeGVuL2FyY2gvYXJtL3ZwY2kuYyAgICAgICAgICAgICAgICAgICAgICAgICB8ICA3
OCArKystDQogeGVuL2FyY2gveDg2L2h2bS92bXNpLmMgICAgICAgICAgICAgICAgICAgICB8ICAy
NiArLQ0KIHhlbi9hcmNoL3g4Ni9odm0vdm14L3ZteC5jICAgICAgICAgICAgICAgICAgfCAgIDIg
LQ0KIHhlbi9hcmNoL3g4Ni9pbmNsdWRlL2FzbS9pcnEuaCAgICAgICAgICAgICAgfCAgIDMgKy0N
CiB4ZW4vYXJjaC94ODYvaW5jbHVkZS9hc20vbXNpLmggICAgICAgICAgICAgIHwgICAzICstDQog
eGVuL2FyY2gveDg2L2lycS5jICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAxNCArLQ0KIHhl
bi9hcmNoL3g4Ni9tc2kuYyAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgMjUgKy0NCiB4ZW4v
YXJjaC94ODYvcGh5c2Rldi5jICAgICAgICAgICAgICAgICAgICAgIHwgICAyICstDQogeGVuL2Nv
bW1vbi9kb21haW4uYyAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgNSArLQ0KIHhlbi9jb21t
b24vcmFuZ2VzZXQuYyAgICAgICAgICAgICAgICAgICAgICAgfCAgMTQgKy0NCiB4ZW4vZHJpdmVy
cy9LY29uZmlnICAgICAgICAgICAgICAgICAgICAgICAgIHwgICA0ICsNCiB4ZW4vZHJpdmVycy9j
aGFyL25zMTY1NTAuYyAgICAgICAgICAgICAgICAgIHwgICA0ICstDQogeGVuL2RyaXZlcnMvcGFz
c3Rocm91Z2gvYW1kL3BjaV9hbWRfaW9tbXUuYyB8ICAgOSArLQ0KIHhlbi9kcml2ZXJzL3Bhc3N0
aHJvdWdoL3BjaS5jICAgICAgICAgICAgICAgfCAgOTQgKysrLQ0KIHhlbi9kcml2ZXJzL3Bhc3N0
aHJvdWdoL3Z0ZC9pb21tdS5jICAgICAgICAgfCAgIDkgKy0NCiB4ZW4vZHJpdmVycy92cGNpL2hl
YWRlci5jICAgICAgICAgICAgICAgICAgIHwgNDgyICsrKysrKysrKysrKysrKy0tLS0tDQogeGVu
L2RyaXZlcnMvdnBjaS9tc2kuYyAgICAgICAgICAgICAgICAgICAgICB8ICAzNCArLQ0KIHhlbi9k
cml2ZXJzL3ZwY2kvbXNpeC5jICAgICAgICAgICAgICAgICAgICAgfCAgNTYgKystDQogeGVuL2Ry
aXZlcnMvdnBjaS92cGNpLmMgICAgICAgICAgICAgICAgICAgICB8IDE1NyArKysrKystDQogeGVu
L2luY2x1ZGUveGVuL3Jhbmdlc2V0LmggICAgICAgICAgICAgICAgICB8ICAgOCArLQ0KIHhlbi9p
bmNsdWRlL3hlbi9zY2hlZC5oICAgICAgICAgICAgICAgICAgICAgfCAgIDkgKw0KIHhlbi9pbmNs
dWRlL3hlbi92cGNpLmggICAgICAgICAgICAgICAgICAgICAgfCAgNDIgKy0NCiAyMiBmaWxlcyBj
aGFuZ2VkLCA4NzUgaW5zZXJ0aW9ucygrKSwgMjA1IGRlbGV0aW9ucygtKQ0KDQotLSANCjIuNDIu
MA0K


From xen-devel-bounces@lists.xenproject.org Thu Oct 12 22:09:38 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 22:09:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616074.957869 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qr3s9-0003WQ-ML; Thu, 12 Oct 2023 22:09:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616074.957869; Thu, 12 Oct 2023 22:09: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 1qr3s9-0003VC-HV; Thu, 12 Oct 2023 22:09:37 +0000
Received: by outflank-mailman (input) for mailman id 616074;
 Thu, 12 Oct 2023 22:09: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=Hhgq=F2=epam.com=prvs=4649fa389a=volodymyr_babchuk@srs-se1.protection.inumbo.net>)
 id 1qr3s8-00016v-2F
 for xen-devel@lists.xenproject.org; Thu, 12 Oct 2023 22:09: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 05e6990a-694c-11ee-98d4-6d05b1d4d9a1;
 Fri, 13 Oct 2023 00:09:34 +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
 39CKqPBf007501; Thu, 12 Oct 2023 22:09:32 GMT
Received: from eur05-vi1-obe.outbound.protection.outlook.com
 (mail-vi1eur05lp2168.outbound.protection.outlook.com [104.47.17.168])
 by mx0b-0039f301.pphosted.com (PPS) with ESMTPS id 3tpr7cr8ed-1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT);
 Thu, 12 Oct 2023 22:09:31 +0000
Received: from VI1PR03MB3710.eurprd03.prod.outlook.com (2603:10a6:803:31::18)
 by AS8PR03MB8758.eurprd03.prod.outlook.com (2603:10a6:20b:53e::10)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.41; Thu, 12 Oct
 2023 22:09:26 +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.6863.043; Thu, 12 Oct 2023
 22:09: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: 05e6990a-694c-11ee-98d4-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=HIVHukI6DY1jicziqQA9sKEXzCbKwJItULBXDfw44l8oTiQd5UHj30XkQKSbUTW8xg6GEHKcT8bOmQcZ8tOw+OGYaJj+ZE+01P2bvsgGRdd52Xxg2eMw0D3tH5v2KrxP0XtiCx+EWdlA1AyFXwuidafbQM/sWfebTMwkiddtFC8p60aehW40hmaQT51zolfQZtfrFBGIqFnCRIevtF9bVquTEkMuVIOp0EtlXXawbY0XBacWKTXqb4JvQP+/FBfC8nLte/Fw7d3Eo8l9ZbUvCRpHaA+G8tmQBbTOlXgtiqTBEwkAXah1K5xc4fw2mdpk2ecZ9kN/rXW7Iq5ktwZj1w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=UYZ7tRQPfqclo5BluXN3478d5t09C8GyH1jJk/ns/pQ=;
 b=KqrHHCJpc/jme8Af4CSo1RhMS+PGbY5aUbVpjnYoMiKZWpuZpGcu2f+qUq3pz+7Q2Oag2C0YM88EYBt59g+OVKUNg5UAP3Kei26k0Q6e70c7QdM29nqyZKceklaN/oNGOhtHa/sKxynqdetdbMppnQ8h+GtKnvYyRcuZgyklGh5XhUXgiyeB0S/2bWTHjapdwBs8k+cEDfn7vNwzGRIAUExvUqLrCsUx2ntkqNuVW1ADX664CbvC62mcuTW3tHLW42x1+LyhXryti8+VgZDOwiON0wzqVVCoPtCLSthqOf87vYrTvKryQJPHftm9I1I4N9uMlJF3/owqFoFNcpD3OQ==
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=UYZ7tRQPfqclo5BluXN3478d5t09C8GyH1jJk/ns/pQ=;
 b=A020tdTt/LnAUbUdlSAH1lxTPi/QJYGDVuOQVJanlU3vs/JZWOtpNj9qkEpjAid6Ef5RmEPZzZhV2qQG9a5tjbPO+jzVAH0raaSvqX9fAsFpcgjYUnqRMci3sH1z+u2OEJEpRnm2CZGKUQpxMapD62fwTeB2/FmxgkuFW45vPiWApvU1idW6Yh+1TNSXiQVFoRSaR1sMH06otWPzFFdjA5mgZTswSpJCQBwdT2OPvrNsyKKooIHsPqCIQZ7zhwOkPay34XF2sliyu5vbrwjn/SlqwNfHjE9kY+xHr5PlO1s1v+TrmYZcZR2YArBj++fOWTDSAySS+aJAglxljJPYgw==
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>,
        Oleksandr Andrushchenko
	<Oleksandr_Andrushchenko@epam.com>,
        =?iso-8859-1?Q?Roger_Pau_Monn=E9?=
	<roger.pau@citrix.com>,
        Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: [PATCH v10 11/17] vpci/header: program p2m with guest BAR view
Thread-Topic: [PATCH v10 11/17] vpci/header: program p2m with guest BAR view
Thread-Index: AQHZ/Vi+CbAsU1ux6EmeYOWm6y793A==
Date: Thu, 12 Oct 2023 22:09:17 +0000
Message-ID: <20231012220854.2736994-12-volodymyr_babchuk@epam.com>
References: <20231012220854.2736994-1-volodymyr_babchuk@epam.com>
In-Reply-To: <20231012220854.2736994-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_|AS8PR03MB8758:EE_
x-ms-office365-filtering-correlation-id: ba9fd60f-357f-4ec3-554a-08dbcb6fe5cb
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: 
 0GRauQs9UdBcf+2FeoY+B2HQCuG43gxyIhOjyDowXYEcNfk0hlJ/aKue/3A0HCKxM2KX+P8gnVsy/IzXt0uBLb7Fid52HoqSGQjUmQNAB4s1O1GYjeUMTfXmjykeyVZiutDTCYSHXdfoXGBMOFNYKaAwL9GQ49bkirmTfB4uDvx3dPzOPCuRS7G9VCT7wDoYn35Adg0/rmIhZNkF9Yqtv7jKRrZdeoAwFITbZZf5u5yMYLlcQnDMT4ikJ26H2LBoCs834JrNZiwiHpT8mfnURgyjk3k/9xTQpy1gFrgNbQphO5hHpDbNjxZGXLUs388Ltyb8MJM2Buo8iq8oWP/8C3O4F80qcRtuVOO4uacNTEiU4ffMfyfeMh8WOGWKFUBFm/ZMeEiMjtraVCwMiC+zqTVdhIKERnbyErX/HyvnWY4OX0lJjqJT3AFzs8yPfdo4/Rd+AN9aKvjC1/gY6FZSpYN3kojyy8D1FH0DtluWgTDC5JUgKgweUD+J141lS+VQDuVN1UK9ysqVHVYdq8E4c2KRJ2zsPVZQmBzpvt0KSOsHkKaa47jbP+6lSQSWXuxQFOFQ3KVKD1F+HVZ0vPQGAdeRZElgdL0KJ903vGArriU4WX6B8Z9k1kFPG2ic3ByK
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)(136003)(396003)(346002)(376002)(230922051799003)(64100799003)(451199024)(1800799009)(186009)(38070700005)(6916009)(5660300002)(41300700001)(316002)(83380400001)(86362001)(122000001)(38100700002)(66446008)(71200400001)(6486002)(26005)(1076003)(2616005)(107886003)(54906003)(478600001)(76116006)(66556008)(66946007)(66476007)(64756008)(91956017)(2906002)(8936002)(8676002)(36756003)(6512007)(6666004)(55236004)(6506007)(4326008);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: 
 =?iso-8859-1?Q?XkdPP6w69Br1ezKwLvmKg0TNdeSoy5aeVIY8gCgMpw7OMIQ93E0OaUIvfE?=
 =?iso-8859-1?Q?fy0j68io7fpp+4Nyg+8jxZJpKuryyVBJtEhc2BHXOPGOGjnNg/gIbF6Br8?=
 =?iso-8859-1?Q?Jx+gRjU9ZiJwHB+rxit1Lt8RLcRnkAFstXOa1d87OBcoYAW46NjzAmNfLP?=
 =?iso-8859-1?Q?woHaQ+uKSZ6rDOlXJeS7qAqh31nMAKftbATSTI6eS8EUExvtaXLj2IIEbe?=
 =?iso-8859-1?Q?S8RF6aXhjcRkjlVFRco0THy9kGsDtlQ1BlBDqlRtDIlSVD5/14o/hkQFuO?=
 =?iso-8859-1?Q?MU9vU0LQvGwROWIdh6prHWTL1uZbKoyr8mU7AsS/r9eLdMY8XSY8qGI4l5?=
 =?iso-8859-1?Q?f4k+dmH2nvNZ8TF6+gaycgFL3UUCPHGzaf40i92bXYXjgQomxVxXMSxFXB?=
 =?iso-8859-1?Q?jjOcuPe5lsqT8gfmYHqEXbcl5bjPzAduuj2BHdt/3t9JnkEM0wx1MrzQn7?=
 =?iso-8859-1?Q?v5obzlFLdX2egODtVUmfeBO7/rWIzB8AEHUE569kVLhIAyrQaf6D6kRDEj?=
 =?iso-8859-1?Q?st14XlzL6gJy/nVaRkFlIaqxSuC5GidsaCXOMap9PnC2tMREeVGeW0fdPZ?=
 =?iso-8859-1?Q?s8mE/g96wfj5G29KJigv76LuFpYojL4F9BX0OU1n/NuuWGqSb245asqyd8?=
 =?iso-8859-1?Q?dFci5sLHnc7Nw/jd6Fvh9STCqs9tcvn959WXXJXdqmreM0MgeN/gzB9W9c?=
 =?iso-8859-1?Q?uM47gAcNj0AiccGswBX742b6ds6aMjk+1BA68nrt4IY1KDy44M3pu31IAe?=
 =?iso-8859-1?Q?/+zo4B5IdUHPHj2wcYmoUmrbKfwpa7vdZTTilkEMlzzyI3bBJs39i0o2D2?=
 =?iso-8859-1?Q?vWAdRQHAeKMRDc+4gErx2lKsvVSMBTkwC3zHEZOCtTGi/TGvRbZ5yMPPlT?=
 =?iso-8859-1?Q?UXmRDkCW3/usJRLmanhrUK3Qtelo2L1dRu9jCa8gB3K0UbVZs1lqw1Bnyt?=
 =?iso-8859-1?Q?V1hRgT751z0Xe2d53Ems5hXAYEi7V/pOpD+L/2PPPPkfcOWmRYObNRAkTQ?=
 =?iso-8859-1?Q?kinJ+glsIL2lwalvKBHxiHZJqYGtX1pTc0tbt53IMdob2h7jPxFCyhVFge?=
 =?iso-8859-1?Q?SP5Lt/TgmTFy8mbZp12DMCejj/0ZCwRb1SVInMwhqHMyyNldNYXb/Eqdfe?=
 =?iso-8859-1?Q?eyI/7fP2br/cHrIOD0E5dkMr3+Wn9M1nRrLVFdI3rwKyytjiJO8JfNhvda?=
 =?iso-8859-1?Q?wDteJYfkprq0+mpvDNgB2GyUeo3sU7TA4M+TfI5QZ6ukbra1JA/Hm7L/+C?=
 =?iso-8859-1?Q?0CFWlLGxtUQuJ4guuo2UJQPH0Bif7fFNmPewaV6wmuf02TIXg1bPW/KaYn?=
 =?iso-8859-1?Q?oIF1j95PvokIO7K78j3NqXL8dEvcTkZXO/iw1MfUfYyu9QJbMAdEvd25r5?=
 =?iso-8859-1?Q?mkap/zlDxdI/pYsMJ7ih3CV6Kkxc1145I3W2nABIUjiIAhK+jOqRxkQ8M+?=
 =?iso-8859-1?Q?2pX7w9qovufQ+FCAHLMr3MqAAutCZ2q9O6wGex5jUzirQXUdnwoIyLjUVe?=
 =?iso-8859-1?Q?tnYKVxlrRsediZRjsToZdNVg0ziXKY5GmEfrXeVBzQRFb8AOcG7QZdPmDU?=
 =?iso-8859-1?Q?NxuJ06Q4kjPiGvsLL82pYLklJMh/AujXjq2VBWHU/GGGKgbwjNdokCNDOy?=
 =?iso-8859-1?Q?5uzQlXSAF2mOUIU25VIGehmc5kriZNJXYH9CwmLPSrWYboKOe7azJpfw?=
 =?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: ba9fd60f-357f-4ec3-554a-08dbcb6fe5cb
X-MS-Exchange-CrossTenant-originalarrivaltime: 12 Oct 2023 22:09:17.8144
 (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: 5rKKv0KTbESFSDGLgxlXR0Z7G/OyxDxb3d+nDK3y+WccxkgA3pS5nTkth/ud3p+ZOPJl9+LUUnOZ236JBLkfMePS82DNFzyM3gRUMEJGiyc=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR03MB8758
X-Proofpoint-GUID: N4wJ2Hy__vRSZRsiASKSz8UtEKzNkYHK
X-Proofpoint-ORIG-GUID: N4wJ2Hy__vRSZRsiASKSz8UtEKzNkYHK
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-10-12_14,2023-10-12_01,2023-05-22_02
X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 adultscore=0 spamscore=0
 mlxscore=0 lowpriorityscore=0 suspectscore=0 priorityscore=1501
 impostorscore=0 clxscore=1015 malwarescore=0 bulkscore=0 mlxlogscore=999
 phishscore=0 classifier=spam adjust=0 reason=mlx scancount=1
 engine=8.12.0-2309180000 definitions=main-2310120186

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>
---
In v10:
- Moved GFN variable definition outside the loop in map_range()
- Updated printk error message in map_range()
- Now BAR address is always stored in bar->guest_addr, even for
  HW dom, this removes bunch of ugly is_hwdom() checks in modify_bars()
- vmsix_table_base() now uses .guest_addr instead of .addr
In 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 declarati=
on
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 | 53 ++++++++++++++++++++++++++++-----------
 xen/include/xen/vpci.h    |  3 ++-
 2 files changed, 41 insertions(+), 15 deletions(-)

diff --git a/xen/drivers/vpci/header.c b/xen/drivers/vpci/header.c
index 5c056923ad..efce0bc2ae 100644
--- a/xen/drivers/vpci/header.c
+++ b/xen/drivers/vpci/header.c
@@ -33,6 +33,7 @@
=20
 struct map_data {
     struct domain *d;
+    const struct vpci_bar *bar;
     bool map;
 };
=20
@@ -40,11 +41,21 @@ static int cf_check map_range(
     unsigned long s, unsigned long e, void *data, unsigned long *c)
 {
     const struct map_data *map =3D data;
+    /* Start address of the BAR as seen by the guest. */
+    unsigned long start_gfn =3D PFN_DOWN(map->bar->guest_addr);
+    /* Physical start address of the BAR. */
+    mfn_t start_mfn =3D _mfn(PFN_DOWN(map->bar->addr));
     int rc;
=20
     for ( ; ; )
     {
         unsigned long size =3D e - s + 1;
+        /*
+         * Ranges to be mapped don't always start at the BAR start address=
, as
+         * there can be holes or partially consumed ranges. Account for th=
e
+         * offset of the current address from the BAR start.
+         */
+        mfn_t map_mfn =3D mfn_add(start_mfn, s - start_gfn);
=20
         if ( !iomem_access_permitted(map->d, s, e) )
         {
@@ -72,8 +83,8 @@ static int cf_check map_range(
          * - {un}map_mmio_regions doesn't support preemption.
          */
=20
-        rc =3D map->map ? map_mmio_regions(map->d, _gfn(s), size, _mfn(s))
-                      : unmap_mmio_regions(map->d, _gfn(s), size, _mfn(s))=
;
+        rc =3D map->map ? map_mmio_regions(map->d, _gfn(s), size, map_mfn)
+                      : unmap_mmio_regions(map->d, _gfn(s), size, map_mfn)=
;
         if ( rc =3D=3D 0 )
         {
             *c +=3D size;
@@ -82,8 +93,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",
+                   map->map ? "" : "un", s, e, mfn_x(map_mfn),
+                   mfn_x(map_mfn) + size, map->d, rc);
             break;
         }
         ASSERT(rc < size);
@@ -162,10 +174,6 @@ static void modify_decoding(const struct pci_dev *pdev=
, uint16_t cmd,
 bool vpci_process_pending(struct vcpu *v)
 {
     struct pci_dev *pdev =3D v->vpci.pdev;
-    struct map_data data =3D {
-        .d =3D v->domain,
-        .map =3D v->vpci.cmd & PCI_COMMAND_MEMORY,
-    };
     struct vpci_header *header =3D NULL;
     unsigned int i;
=20
@@ -184,6 +192,11 @@ bool vpci_process_pending(struct vcpu *v)
     for ( i =3D 0; i < ARRAY_SIZE(header->bars); i++ )
     {
         struct vpci_bar *bar =3D &header->bars[i];
+        struct map_data data =3D {
+            .d =3D v->domain,
+            .map =3D v->vpci.cmd & PCI_COMMAND_MEMORY,
+            .bar =3D bar,
+        };
         int rc;
=20
         if ( rangeset_is_empty(bar->mem) )
@@ -234,7 +247,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 =3D { .d =3D d, .map =3D true };
     struct vpci_header *header =3D &pdev->vpci->header;
     int rc =3D 0;
     unsigned int i;
@@ -244,6 +256,7 @@ static int __init apply_map(struct domain *d, const str=
uct pci_dev *pdev,
     for ( i =3D 0; i < ARRAY_SIZE(header->bars); i++ )
     {
         struct vpci_bar *bar =3D &header->bars[i];
+        struct map_data data =3D { .d =3D d, .map =3D true, .bar =3D bar }=
;
=20
         if ( rangeset_is_empty(bar->mem) )
             continue;
@@ -311,12 +324,16 @@ static int modify_bars(const struct pci_dev *pdev, ui=
nt16_t cmd, bool rom_only)
      * First fill the rangesets with the BAR of this device or with the RO=
M
      * BAR only, depending on whether the guest is toggling the memory dec=
ode
      * bit of the command register, or the enable bit of the ROM BAR regis=
ter.
+     *
+     * For non-hardware domain we use guest physical addresses.
      */
     for ( i =3D 0; i < ARRAY_SIZE(header->bars); i++ )
     {
         struct vpci_bar *bar =3D &header->bars[i];
         unsigned long start =3D PFN_DOWN(bar->addr);
         unsigned long end =3D PFN_DOWN(bar->addr + bar->size - 1);
+        unsigned long start_guest =3D PFN_DOWN(bar->guest_addr);
+        unsigned long end_guest =3D PFN_DOWN(bar->guest_addr + bar->size -=
 1);
=20
         if ( !bar->mem )
             continue;
@@ -336,11 +353,11 @@ static int modify_bars(const struct pci_dev *pdev, ui=
nt16_t cmd, bool rom_only)
             continue;
         }
=20
-        rc =3D rangeset_add_range(bar->mem, start, end);
+        rc =3D 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;
         }
=20
@@ -357,7 +374,7 @@ static int modify_bars(const struct pci_dev *pdev, uint=
16_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;
             }
         }
@@ -425,8 +442,8 @@ static int modify_bars(const struct pci_dev *pdev, uint=
16_t cmd, bool rom_only)
             for ( i =3D 0; i < ARRAY_SIZE(tmp->vpci->header.bars); i++ )
             {
                 const struct vpci_bar *remote_bar =3D &tmp->vpci->header.b=
ars[i];
-                unsigned long start =3D PFN_DOWN(remote_bar->addr);
-                unsigned long end =3D PFN_DOWN(remote_bar->addr +
+                unsigned long start =3D PFN_DOWN(remote_bar->guest_addr);
+                unsigned long end =3D PFN_DOWN(remote_bar->guest_addr +
                                              remote_bar->size - 1);
=20
                 if ( !remote_bar->enabled )
@@ -511,6 +528,8 @@ static void cf_check bar_write(
     struct vpci_bar *bar =3D data;
     bool hi =3D false;
=20
+    ASSERT(is_hardware_domain(pdev->domain));
+
     if ( bar->type =3D=3D VPCI_BAR_MEM64_HI )
     {
         ASSERT(reg > PCI_BASE_ADDRESS_0);
@@ -541,6 +560,10 @@ static void cf_check bar_write(
      */
     bar->addr &=3D ~(0xffffffffULL << (hi ? 32 : 0));
     bar->addr |=3D (uint64_t)val << (hi ? 32 : 0);
+    /*
+     * Update guest address as well, so hardware domain sees BAR identity =
mapped
+     */
+    bar->guest_addr =3D bar->addr;
=20
     /* Make sure Xen writes back the same value for the BAR RO bits. */
     if ( !hi )
@@ -791,6 +814,7 @@ static int cf_check init_bars(struct pci_dev *pdev)
         }
=20
         bars[i].addr =3D addr;
+        bars[i].guest_addr =3D addr;
         bars[i].size =3D size;
         bars[i].prefetchable =3D val & PCI_BASE_ADDRESS_MEM_PREFETCH;
=20
@@ -813,6 +837,7 @@ static int cf_check init_bars(struct pci_dev *pdev)
             rom->type =3D VPCI_BAR_ROM;
             rom->size =3D size;
             rom->addr =3D addr;
+            rom->guest_addr =3D addr;
             header->rom_enabled =3D pci_conf_read32(pdev->sbdf, rom_reg) &
                                   PCI_ROM_ADDRESS_ENABLE;
=20
diff --git a/xen/include/xen/vpci.h b/xen/include/xen/vpci.h
index 18a0eca3da..c5301e284f 100644
--- a/xen/include/xen/vpci.h
+++ b/xen/include/xen/vpci.h
@@ -196,7 +196,8 @@ int vpci_msix_arch_print(const struct vpci_msix *msix);
  */
 static inline paddr_t vmsix_table_base(const struct vpci *vpci, unsigned i=
nt nr)
 {
-    return vpci->header.bars[vpci->msix->tables[nr] & PCI_MSIX_BIRMASK].ad=
dr;
+    return
+        vpci->header.bars[vpci->msix->tables[nr] & PCI_MSIX_BIRMASK].guest=
_addr;
 }
=20
 static inline paddr_t vmsix_table_addr(const struct vpci *vpci, unsigned i=
nt nr)
--=20
2.42.0


From xen-devel-bounces@lists.xenproject.org Thu Oct 12 22:09:38 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 22:09:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616065.957779 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qr3s2-0001Av-BL; Thu, 12 Oct 2023 22:09:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616065.957779; Thu, 12 Oct 2023 22:09: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 1qr3s2-0001Aa-5N; Thu, 12 Oct 2023 22:09:30 +0000
Received: by outflank-mailman (input) for mailman id 616065;
 Thu, 12 Oct 2023 22:09: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=Hhgq=F2=epam.com=prvs=4649fa389a=volodymyr_babchuk@srs-se1.protection.inumbo.net>)
 id 1qr3s0-00016s-H8
 for xen-devel@lists.xenproject.org; Thu, 12 Oct 2023 22:09:28 +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 ff93ab1f-694b-11ee-9b0e-b553b5be7939;
 Fri, 13 Oct 2023 00:09:23 +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
 39CKqml6008371; Thu, 12 Oct 2023 22:09:20 GMT
Received: from eur01-db5-obe.outbound.protection.outlook.com
 (mail-db5eur01lp2050.outbound.protection.outlook.com [104.47.2.50])
 by mx0b-0039f301.pphosted.com (PPS) with ESMTPS id 3tpr7cr8dp-4
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT);
 Thu, 12 Oct 2023 22:09:19 +0000
Received: from VI1PR03MB3710.eurprd03.prod.outlook.com (2603:10a6:803:31::18)
 by DBAPR03MB6376.eurprd03.prod.outlook.com (2603:10a6:10:193::6) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.45; Thu, 12 Oct
 2023 22:09:16 +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.6863.043; Thu, 12 Oct 2023
 22:09: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: ff93ab1f-694b-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=TwV1CL9F8uqYT/YStuDwHZR4YQ6G9v0Dnik/ojsBNLU9mVIK2fEMZ483/xJS3hcal3szhTlGRpxNZI9EtVzn+ToZPYQPw3GFpGOQgVT53PxGDT8x6vjgwolRNFsprEPHWEukTnU9V3nm8LC/U9zFzSYVRf9WFjxEU27qiol87OJ0Y45hX1zxuy7V34lAmf1u9A/tPHRdqMCHmAFL6mul298QT59EzXmaG9bUP3IyfcHdmhC86V0+TUwJvEJyOll1zlwqmnp4Lf2RshwDnoKryHBCpnkqJLDUCmYmtSmStzED/R1DP2bAjQaJlJWjCxhucW/oFn+/WZTzrrRlVNmwkA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=YQA/auCUyQ9aU8VntbUejZ+kWLEP5minC3jSAets2yA=;
 b=SAxexvi/1Qls45JhUuym0XSFO2xxGma+jxRhZTXRkDFsr/z88HelTDYgQ3SFiwumGRJ2yd3o/v4FP85+DN8QoMwS3MySH9VPN6e4+kJ6dSIVPkog1SFj1kO92yYfGTtPXf2dUrMoscHfPPZUB3/Xm+AMF8B6ExiqNBQ8ww9pg4btosVyz3R3YGqfY6BiSApdBgJ/Rh2qs1kqGRfwVFljeTfC8XNieKZGuS0QxWvfgb2RGuMFbPd4dDLLN0uiC2FJoh9hmN0F/xRCtP+KiGrnURKlZ6zRmwU47Y2dq3bph4GBPPj1cbAQPnecuxbZEcYL5bwvWE9cecxHBHXcd4nHxg==
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=YQA/auCUyQ9aU8VntbUejZ+kWLEP5minC3jSAets2yA=;
 b=jPyTj5dMXQxkSyCkShcE2yOwiiqiFDb/3SorteaR0KrCWWULvvzwnTdRmaBrRwwSDEYzy4GrQ3cVwU84xx++PJ91U2GD8x2U5xzTV/5O8CLlJomkRpqLRq4+BlwysYqkBE/MPJWGBT1cD7z9ItWLPhrJjf83Xe/MYDs5cLDEwOpx7f3S6oXcdTHf1VUZvDaie7wPYjLAIinTrpck1dMtyLG6EzhyM9cgW4G/8AigMZDbSVGAwtYcrRQSM/CuNb6rABNMTjfXgJE1BDAt/vP/XhkKuPy9181D7D4gO5HE9PVY/kTdodly0x7gUBQeZJ+8f+l6lVF6SXrjhqgR/TUYoQ==
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>,
        Oleksandr Andrushchenko
	<Oleksandr_Andrushchenko@epam.com>,
        =?utf-8?B?Um9nZXIgUGF1IE1vbm7DqQ==?=
	<roger.pau@citrix.com>
Subject: [PATCH v10 04/17] vpci: restrict unhandled read/write operations for
 guests
Thread-Topic: [PATCH v10 04/17] vpci: restrict unhandled read/write operations
 for guests
Thread-Index: AQHZ/Vi9RFnVSEkUl0CU8ZWONnKP8w==
Date: Thu, 12 Oct 2023 22:09:15 +0000
Message-ID: <20231012220854.2736994-5-volodymyr_babchuk@epam.com>
References: <20231012220854.2736994-1-volodymyr_babchuk@epam.com>
In-Reply-To: <20231012220854.2736994-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_|DBAPR03MB6376:EE_
x-ms-office365-filtering-correlation-id: 0708c5ce-f72d-4f88-64bc-08dbcb6fdfed
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: 
 pCgljNsC/vH2LHKERU8YLBnRmE2rqcuFdfgJXxDu7qHVgk4fsnMHSIMySATppl/Kjs1xXSCHSRitKlkpeFGmEQUX4OnIZPYlDXLWikqDiur5snnt0K+LIlgZNfoIZsuViaDejuhoVncg9BkO7Kp+UzUB1MkJE/UkmW3+Bv9ol8yLWxuNU96pIptzeHPfr/Mts3X1OxJSUkeWIp47tk7BBARkzkQpL4qQ7huorTxXG4kMz7+tHLoTyzX+TQIItZwF/PkK/HE/8ZZSiJLgcqArZWl3OnyvsWBlvY+oQEWTqJwTPSTls7VT/ItXvexvM8rbrpzr2IsghqRWP0S3JAY+lLoRWJl6KM9H3nWf2/XKd6OezEyopduBZldQbtG+ocMlfMauZgD6IIH0AhXeK8IejrjnAQnUefcSYDMcIxGV2IyDUNy3bawJ0QipwXEDz/r9qqTUlIB3lETBLAdc0gTFgDoOyO2aMla9BotxfHoFh8sKdNY0Yujn2JYC3BwjKnHrBBNzkplgQi1HP8bfk9YLTjj6HZ/qQb/np/BC1Gbw6TDk0QFy0Jb6NZbCwYC9M6PRBZme1XZA6MhgTK/zcib6al56ALzuGSl9QvLA5FOs646OoPwFgNqoT9+KuVgcc+3v
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)(39860400002)(396003)(346002)(366004)(136003)(230922051799003)(451199024)(64100799003)(186009)(1800799009)(2616005)(71200400001)(26005)(6512007)(6506007)(55236004)(36756003)(86362001)(38100700002)(38070700005)(122000001)(1076003)(83380400001)(91956017)(41300700001)(64756008)(316002)(76116006)(54906003)(66946007)(66446008)(6916009)(66556008)(66476007)(2906002)(8936002)(5660300002)(8676002)(4326008)(6486002)(478600001);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: 
 =?utf-8?B?TDZmZGxSa1E2U2Q3Z2dyc2xNVzVncFpTL1QwMDlRZ1prV1FpMU85NVJrMWZO?=
 =?utf-8?B?R3lCdmp3VEgrVHFvMUVnMjR1WmJXUWhvS2VtbFI0ZENCYitWMzFUSnk3dFFJ?=
 =?utf-8?B?Nk41V09lb1hXL0N3YjREUEd0VThWak1vQ2JnSi9TNHk3OHdnb2kzVVMyeGdS?=
 =?utf-8?B?cDR6ZkdJV05jRWdoeVU3MVluV1M0aTFqR0p0UWNISW0zTUg5TTZKZ2VVL3U0?=
 =?utf-8?B?UWNNck45cm8za2pNY1lZTnFZdWVsOXd4OTJKOUdmc3phRE5oRUdEWnhjSEY1?=
 =?utf-8?B?emczTU1TZld2K1dxVkkyRVo5a2FZSjlyV2FoRFd0UThkcUtwV2xBSGpKTkNk?=
 =?utf-8?B?NEVEQ3dkcXYvVlZBc3IwNUhHLzE2VkxSM2czNlFFS2FXYWhybnlHbVFRQ2d2?=
 =?utf-8?B?UGpIZzVmNHRQTzNQY0h0cmhJd2ZVK1BCN0RST25pc25jdjF0WGVLRDBWcDZs?=
 =?utf-8?B?M2FpTElpaGpPZTdGZkNGdFVVMEt4SWdPOTVRR0NvdVpjUUtHeDkyUGVIWE5n?=
 =?utf-8?B?TmdzNDlKU3R3VENKakFJRGxZWlVON283K3I0ZUVwemF1bXJTWXZENzlLK09q?=
 =?utf-8?B?bVJHRnpMYSt0RDlzYjREYm9FZVk0Y0h2UUJhTW1sb0lnQ2Y3RC9ycDBTTWs5?=
 =?utf-8?B?bSt0RWp4ak5xbWl2b2JJT3R3d0ZTUlYzOGE5RHJXenhqSGZRQ080T204aFFz?=
 =?utf-8?B?MjBSU0pmeEZjamU0QlZWa0V0Zzhyc2JUcVIwd2RGbFo2Q1RoTC9kbWFjRmJD?=
 =?utf-8?B?VG51V3ZGVFJIQjFXWUZqWFdGdnVsQ0NCNVUvT0ZyK2dicWxkVUgybUVBUlhp?=
 =?utf-8?B?K1hqYzhiTTZJZDEvajB6R0xvajR5Y2NlR3BrcHpDb1VRWUgxN0ttN1lvekJs?=
 =?utf-8?B?QTl2QlY0OGxhbFBacXFTTXBGWWRSVlhVTUNoQVNYYjcxM0t4emVtWm42UjY2?=
 =?utf-8?B?VktrN3pjbUhYV0FCRHIxYmxEVzlmSUxWenduN1hMWXlhTVhOTnNOWllFV3U1?=
 =?utf-8?B?a3BFK0dUQkZlSEN3LzlXRzZ5blczQ25DVTFvUGlqckxwVzJUVGJlN0hNNkVM?=
 =?utf-8?B?VTF6QXh6VTByZ280YVJDNlkwM2FNQnN4R1o2MEpwcks3SE5DYnF6ZUgwTDJv?=
 =?utf-8?B?ZzBZQWJHWGp0QlFsQlB1OVNaR1R2RWxOVDZvc1dndE1hSFk1WnQ0V05SUFkv?=
 =?utf-8?B?SWhNaEFZL2RlWFFXREtjV1U2MFZEdVB3RTRQZStLcEZHOWlGcytIeHlIRWlm?=
 =?utf-8?B?YlNzWk45T2V3MTFxR044MC9ON3JPT3B2ZGc3MkhrV0ZBZTE5S2ZoQWZqM3N2?=
 =?utf-8?B?N2NrZ0NjcTZ0K3I1SERiTHRqNjlkeGtoTGNKWjJLT0tOTmNadHkyVUJ4dVNN?=
 =?utf-8?B?QXlhTHcwdkZ6TWFEbHBZNVJhM01KWldMT2ViZ2FyckRyNnZlWE9LWFVFbGdF?=
 =?utf-8?B?NFFza3dmLy9LVk9xU3lobGtiVDVPSFJ1TkpURmJxY2pldyt3NXhHREd0VDV5?=
 =?utf-8?B?SDhXSTNOK0hRb1l6REFlTCtnaU1ic1JTcThjSEJnMkpCOGI0em15VGxRbUhE?=
 =?utf-8?B?VWRhSGtUdk52K3FSK2NDT1ovSlV0SnhqMGd4ZWxUZlAzSDBoWVFRN3dCV25t?=
 =?utf-8?B?eHdUZ0JybHBkOHdXMkNqek14U21QY05pOHBkSjhtbk1RVnFGWEZCYVZablFJ?=
 =?utf-8?B?NVpoSXdCSzF5R1NyYy9YU1lqcmIxbS9BanlqR2RrenRwYlRCeng2bmxMRHhP?=
 =?utf-8?B?dVF0cDllN0g3cXp0amREME1Mcno0VTcwRk8zZG5LU2FhcitEaGFlSWpDVEdE?=
 =?utf-8?B?d25Kd3JNcEU1UU53OUhUV3pqaGFxZFpzMUhNYnBqSXRPelpKcGt5cWh5RUFO?=
 =?utf-8?B?dmtXd2ZCQ2svOGxDN1g3WHhSY3hYVWlCRkNVdWV4WEdqTXd3RmxNeTBIZ3Fr?=
 =?utf-8?B?Y0pHbllTZm1kYUVGYllVZ3RiZVYrK1BHU2w1YUVFTFhnN0I5NUpsYytPbjFG?=
 =?utf-8?B?cVJ0QmthVStrZmxsdkhhWk5pMlBMbmlvdEUxN0FhZEx6dW9WTVVJaDk5L3Vh?=
 =?utf-8?B?NWVQK0p1QjR0OXY2RGRubVlRdFZHYlRXQ1ZJdklUcEIvQmFJT1BvTmZDMkJQ?=
 =?utf-8?B?WXhzWk1RbzNxcjlBZUxmMW1UOGRNNVY3Uld1ZThmU3VieG5OeTBpR3Q0MFFz?=
 =?utf-8?B?Smc9PQ==?=
Content-Type: text/plain; charset="utf-8"
Content-ID: <B31375D5980FBD44901CB8977DF8A0B2@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: 0708c5ce-f72d-4f88-64bc-08dbcb6fdfed
X-MS-Exchange-CrossTenant-originalarrivaltime: 12 Oct 2023 22:09:15.7341
 (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: MAeqH9VN3RfHTineyTIwTsWNdPI6IyB2e1jn3Nv8ierpvEOXIgIL1+TazPXWAapZQfWO4a5UirRii5eToyXaa/uzroym+EvnYS0fiHvhPHw=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBAPR03MB6376
X-Proofpoint-GUID: o8iHpim3AG1REOvPtu8c6yw4aPgPdVM1
X-Proofpoint-ORIG-GUID: o8iHpim3AG1REOvPtu8c6yw4aPgPdVM1
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-10-12_14,2023-10-12_01,2023-05-22_02
X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 adultscore=0 spamscore=0
 mlxscore=0 lowpriorityscore=0 suspectscore=0 priorityscore=1501
 impostorscore=0 clxscore=1015 malwarescore=0 bulkscore=0 mlxlogscore=999
 phishscore=0 classifier=spam adjust=0 reason=mlx scancount=1
 engine=8.12.0-2309180000 definitions=main-2310120186

RnJvbTogT2xla3NhbmRyIEFuZHJ1c2hjaGVua28gPG9sZWtzYW5kcl9hbmRydXNoY2hlbmtvQGVw
YW0uY29tPg0KDQpBIGd1ZXN0IHdvdWxkIGJlIGFibGUgdG8gcmVhZCBhbmQgd3JpdGUgdGhvc2Ug
cmVnaXN0ZXJzIHdoaWNoIGFyZSBub3QNCmVtdWxhdGVkIGFuZCBoYXZlIG5vIHJlc3BlY3RpdmUg
dlBDSSBoYW5kbGVycywgc28gaXQgd2lsbCBiZSBwb3NzaWJsZQ0KZm9yIGl0IHRvIGFjY2VzcyB0
aGUgaGFyZHdhcmUgZGlyZWN0bHkuDQpJbiBvcmRlciB0byBwcmV2ZW50IGEgZ3Vlc3QgZnJvbSBy
ZWFkcyBhbmQgd3JpdGVzIGZyb20vdG8gdGhlIHVuaGFuZGxlZA0KcmVnaXN0ZXJzIG1ha2Ugc3Vy
ZSBvbmx5IGhhcmR3YXJlIGRvbWFpbiBjYW4gYWNjZXNzIHRoZSBoYXJkd2FyZSBkaXJlY3RseQ0K
YW5kIHJlc3RyaWN0IGd1ZXN0cyBmcm9tIGRvaW5nIHNvLg0KDQpTdWdnZXN0ZWQtYnk6IFJvZ2Vy
IFBhdSBNb25uw6kgPHJvZ2VyLnBhdUBjaXRyaXguY29tPg0KU2lnbmVkLW9mZi1ieTogT2xla3Nh
bmRyIEFuZHJ1c2hjaGVua28gPG9sZWtzYW5kcl9hbmRydXNoY2hlbmtvQGVwYW0uY29tPg0KUmV2
aWV3ZWQtYnk6IFJvZ2VyIFBhdSBNb25uw6kgPHJvZ2VyLnBhdUBjaXRyaXguY29tPg0KDQotLS0N
ClNpbmNlIHY5Og0KLSByZW1vdmVkIHN0cmF5IGZvcm1hdHRpbmcgY2hhbmdlDQotIGFkZGVkIFJv
Z2VyJ3MgUi1iIHRhZw0KU2luY2UgdjY6DQotIGRvIG5vdCB1c2UgaXNfaHdkb20gcGFyYW1ldGVy
IGZvciB2cGNpX3tyZWFkfHdyaXRlfV9odyBhbmQgdXNlDQogIGN1cnJlbnQtPmRvbWFpbiBpbnRl
cm5hbGx5DQotIHVwZGF0ZSBjb21taXQgbWVzc2FnZQ0KTmV3IGluIHY2DQotLS0NCiB4ZW4vZHJp
dmVycy92cGNpL3ZwY2kuYyB8IDggKysrKysrKysNCiAxIGZpbGUgY2hhbmdlZCwgOCBpbnNlcnRp
b25zKCspDQoNCmRpZmYgLS1naXQgYS94ZW4vZHJpdmVycy92cGNpL3ZwY2kuYyBiL3hlbi9kcml2
ZXJzL3ZwY2kvdnBjaS5jDQppbmRleCAxMTJkZTU2ZmIzLi43MjQ5ODdlOTgxIDEwMDY0NA0KLS0t
IGEveGVuL2RyaXZlcnMvdnBjaS92cGNpLmMNCisrKyBiL3hlbi9kcml2ZXJzL3ZwY2kvdnBjaS5j
DQpAQCAtMjMzLDYgKzIzMywxMCBAQCBzdGF0aWMgdWludDMyX3QgdnBjaV9yZWFkX2h3KHBjaV9z
YmRmX3Qgc2JkZiwgdW5zaWduZWQgaW50IHJlZywNCiB7DQogICAgIHVpbnQzMl90IGRhdGE7DQog
DQorICAgIC8qIEd1ZXN0IGRvbWFpbnMgYXJlIG5vdCBhbGxvd2VkIHRvIHJlYWQgcmVhbCBoYXJk
d2FyZS4gKi8NCisgICAgaWYgKCAhaXNfaGFyZHdhcmVfZG9tYWluKGN1cnJlbnQtPmRvbWFpbikg
KQ0KKyAgICAgICAgcmV0dXJuIH4odWludDMyX3QpMDsNCisNCiAgICAgc3dpdGNoICggc2l6ZSAp
DQogICAgIHsNCiAgICAgY2FzZSA0Og0KQEAgLTI3Niw2ICsyODAsMTAgQEAgc3RhdGljIHVpbnQz
Ml90IHZwY2lfcmVhZF9odyhwY2lfc2JkZl90IHNiZGYsIHVuc2lnbmVkIGludCByZWcsDQogc3Rh
dGljIHZvaWQgdnBjaV93cml0ZV9odyhwY2lfc2JkZl90IHNiZGYsIHVuc2lnbmVkIGludCByZWcs
IHVuc2lnbmVkIGludCBzaXplLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDMyX3Qg
ZGF0YSkNCiB7DQorICAgIC8qIEd1ZXN0IGRvbWFpbnMgYXJlIG5vdCBhbGxvd2VkIHRvIHdyaXRl
IHJlYWwgaGFyZHdhcmUuICovDQorICAgIGlmICggIWlzX2hhcmR3YXJlX2RvbWFpbihjdXJyZW50
LT5kb21haW4pICkNCisgICAgICAgIHJldHVybjsNCisNCiAgICAgc3dpdGNoICggc2l6ZSApDQog
ICAgIHsNCiAgICAgY2FzZSA0Og0KLS0gDQoyLjQyLjANCg==


From xen-devel-bounces@lists.xenproject.org Thu Oct 12 22:09:38 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 22:09:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616067.957793 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qr3s3-0001SD-14; Thu, 12 Oct 2023 22:09:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616067.957793; Thu, 12 Oct 2023 22:09: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 1qr3s2-0001Nj-QZ; Thu, 12 Oct 2023 22:09:30 +0000
Received: by outflank-mailman (input) for mailman id 616067;
 Thu, 12 Oct 2023 22:09: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=Hhgq=F2=epam.com=prvs=4649fa389a=volodymyr_babchuk@srs-se1.protection.inumbo.net>)
 id 1qr3s0-00016s-O7
 for xen-devel@lists.xenproject.org; Thu, 12 Oct 2023 22:09:28 +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 00298d58-694c-11ee-9b0e-b553b5be7939;
 Fri, 13 Oct 2023 00:09:24 +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
 39CKqml8008371; Thu, 12 Oct 2023 22:09:21 GMT
Received: from eur01-db5-obe.outbound.protection.outlook.com
 (mail-db5eur01lp2050.outbound.protection.outlook.com [104.47.2.50])
 by mx0b-0039f301.pphosted.com (PPS) with ESMTPS id 3tpr7cr8dp-6
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT);
 Thu, 12 Oct 2023 22:09:21 +0000
Received: from VI1PR03MB3710.eurprd03.prod.outlook.com (2603:10a6:803:31::18)
 by DBAPR03MB6376.eurprd03.prod.outlook.com (2603:10a6:10:193::6) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.45; Thu, 12 Oct
 2023 22:09:16 +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.6863.043; Thu, 12 Oct 2023
 22:09: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: 00298d58-694c-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=HCUez6HIdfcr1Yr7xZFa4YnP3Ck7kWtx5ZCufd0F5z3GXbzU6+Q1IwHRPPkYhzGc1lpaSBnKITIkZc5vV5eiEv3rnZddrCf+9IS0n7/bxs5CfozBM9+TXfd+BHTUnaoBqmfC8phIs1dsn2eMgOJ8DcARhaH+vCJE64ESfJaHfOHdfUk4XpZmn5ovfxg8Q0FRR9nHbxfo08EiFhCHlu+CY/TKhWE2wwvoEebj+lCUXJHj4vDfTjc1wFjkVXYX5+Cq9Ox0gjaXwbKhwSFhd5Lm6Z454e7DzgffXlD/y30wRVB6WL9KsDtKubpkt7pZsCCH///eirgb071Ej1t1WxUfkw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=3qmsepwPT5LEYBRF5H3XVtxBcmvh8BkH9lW5MHLqJWE=;
 b=N8Nw+usgSJRHJVFyRTs4mfN5DxrFxBpFMGeMcWVhpbFMXdXP31sOFzVz0g6xUqdlsMw/urL2vPOXa3L3eqgg/XwZrdhzW7EH9VLuE9JkgBYAH3SxG+mCx8JVxJ9OovZWhUV9lt88ZRt89o54KSEgamCHaytB3vr7M41Ctje3aQa8CSkWmHClYYaeXn2KYCA+VOq0h648DAAFTlzdDQrEkpKxmwBcXuXtnEr1HqxbxpHJrLq/MwJSkzh/SnOOOawLGVLzS3ub1w9cwf65MkkChtASC2qWgs7yrK+RLbQXQbq3eXXIQ71h5zoHIFu78wsaaVdrV/ySRd4zwnDyN7BMjA==
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=3qmsepwPT5LEYBRF5H3XVtxBcmvh8BkH9lW5MHLqJWE=;
 b=bsJ+IMRouNrG9vZQ3Pub+bkrb1CdKlZG3BpzrbYNXBnDBjdRU73CSCb0XrAw6WqiTF+lARHviht/CfdrrxPTLMPg2hzddStp8Y0RgE+1nZgPqPfqrHDrAvL8F1dnVPUXn+aQAmOJO6PncvGSK1T8ikr42lFtLQaWclGx/89TDU2aGzCoJBYfAAyj2ouDg7mG+5vIO6sWRHJ/Bxf3loEoQai6M+zDa5S0ztp5TCPrGyxVwycgMcKVywpwyGh5tVJBuYXvgCQQ/rCO8clkS5kLR+E/Nlo8Wj+H8ErL5qCguRuT3j8VGruz2vC2KILE3doQNaRsV9+0K3YgdFwzoE+ZKg==
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>,
        Oleksandr Andrushchenko
	<Oleksandr_Andrushchenko@epam.com>,
        Jan Beulich <jbeulich@suse.com>, Paul
 Durrant <paul@xen.org>,
        =?iso-8859-1?Q?Roger_Pau_Monn=E9?=
	<roger.pau@citrix.com>,
        Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: [PATCH v10 05/17] vpci: add hooks for PCI device assign/de-assign
Thread-Topic: [PATCH v10 05/17] vpci: add hooks for PCI device
 assign/de-assign
Thread-Index: AQHZ/Vi9fq+uOYreoU2R3lof3/0hww==
Date: Thu, 12 Oct 2023 22:09:15 +0000
Message-ID: <20231012220854.2736994-6-volodymyr_babchuk@epam.com>
References: <20231012220854.2736994-1-volodymyr_babchuk@epam.com>
In-Reply-To: <20231012220854.2736994-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_|DBAPR03MB6376:EE_
x-ms-office365-filtering-correlation-id: cf61ec12-f889-4405-110e-08dbcb6fe03c
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: 
 qu9pTc5w0Ntn2RomDq8KEVzcM+p2XK18Gtxpt76OEIK4kbpUgS8Y3srZBY95pZuNCVVH6RaZRQHtredepyPK5sOR1Rs74CB/IMzl+cx6g7fRW2yIg51qpyAYoTyx33RGbgFm+X1AbuZbd4m48ZXaD6oLt5GLTDXWf+5nreJSKhe+AaUwzNTwo0+wXFLekeLo5KhtWJm2QOuN9ozVBTEmfh7GycuNgG42OCf/5DGqhf+hsp4TA5Nwf1ZkhenPU1dIr3zqW0kq5mmPbk/Arw0dx3vmhrRXft71uf2G0erjUJBb7akEBdoYEfozPWhC9CV1E8NL3FvRhjjO+U9X/0oEy3dLQUv3hlX8UC0CSfUeRPvLVCNy5PZIA89yUClx2cogJlw8+yuDZ6C6rWJ4S77Tw5fH+8X++oTAOSIZlD+noLWgBOE5CfzrQP0XNr5JzA7546fKuzQtGnxGOSp6e2Ak4OqoKfXBicxh5JpGBpZz+BnruS9GzyuloxKv0QByBGH7id0idxhSx53ZMkoE7MrxT2k095nnj8TngUmm7CCUAzLjtiSTyk0GHCmicci3QtKxQsgGI6Zjc8B74uaOCZYL08UxllNmjcuUMT2u7jjKGZpv4gSzEa9DxtzxKPb10xAq
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)(39860400002)(396003)(346002)(366004)(136003)(230922051799003)(451199024)(64100799003)(186009)(1800799009)(107886003)(2616005)(71200400001)(26005)(6512007)(6506007)(55236004)(36756003)(86362001)(38100700002)(38070700005)(122000001)(1076003)(83380400001)(91956017)(41300700001)(64756008)(316002)(76116006)(54906003)(66946007)(66446008)(6916009)(66556008)(66476007)(2906002)(8936002)(5660300002)(8676002)(4326008)(6486002)(478600001);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: 
 =?iso-8859-1?Q?3Pj47ZPJX0bsHYz6M+r4sGBWeJE4qa0wCHPbthmG6vHAwYWyhWBNBKXp41?=
 =?iso-8859-1?Q?aH7jDcOVfFoIt1sV1Hj5qNCkRIt8vJkHQ8Jcg0PF36PfnNts2gAzwa8Van?=
 =?iso-8859-1?Q?dEpimYJpD68A7IhtioyKIoI1wTTU4nydak6NM+JTaReiCbQIEXrkkUMbCb?=
 =?iso-8859-1?Q?B34OFgW9PNPX+iB05ppNoNfeTi3uwE7GnncQ3/GTydD1I0D7ZlBt+AbD9O?=
 =?iso-8859-1?Q?pSQ3FZbhT3rRlaKBmBF5hGDbEXoNUi/Ck3B4Z6a0pat2HcTrNUVhxlg35O?=
 =?iso-8859-1?Q?rUQqpHn8ofmhOm0yXR21GmLho8EkARzQMNvBhciaQFUUsNhYaYBDxZf/Bd?=
 =?iso-8859-1?Q?2Uxb8idF8I0uZjrCR88zUzQ1q2rBCG7gtNrOPzA/CSq2f7hpmU/1jxbtr6?=
 =?iso-8859-1?Q?5IIp3UMwefIe93+nqqD1HfACTvc8c3zhkIcZHPDiTBydDL/5WVIo3x4DfA?=
 =?iso-8859-1?Q?Y1Upo3+46Xg0Akx7YmDSEl7mYnNV1bvZv3lvD84wa2LKzNR09/i2NtA2sO?=
 =?iso-8859-1?Q?uiHynWGZlovP8R9Z/zxS+MNXlonPrzdooLMwNmdvqbdeGgy2YyWKS/S/YX?=
 =?iso-8859-1?Q?VjNG6PwACLdoOwTVX9Z+El6j/quQJXfCpnw9xodwItMbu45o06N7WdRHr/?=
 =?iso-8859-1?Q?tS1KLWmnHetKZls7csdO0nJNrArZ3N1S1vAOe+M+/U84TmT7Q7mbRZXzph?=
 =?iso-8859-1?Q?V7FWIY+8uZP1qjidwXaNINWQooF4tm13Ho5W0C4aZ2PnotppurJZMPhusL?=
 =?iso-8859-1?Q?F9a/E1nSUdRIInZfNn5vhF1YWO+wDH9UI5VUSjn/UlCrsXRp6czTvFO0aC?=
 =?iso-8859-1?Q?4GSf6IoHmL2TDcDMDwdKfN2ZG/LmniahpmVNBufE7p84ggnJEPu5FqjSo+?=
 =?iso-8859-1?Q?Osf0KyTeKtrNS4fgGC8AmTy4cUXA7lIMRUUh0AbpsD5qQmyBIzS9ju8NxU?=
 =?iso-8859-1?Q?NjzXd7xd6etc7oXhEwrpYF3qUknRWzK41TNOmBDEyUv6i9UMe5elkiJIkL?=
 =?iso-8859-1?Q?j6wSRm0MiBZ8iz5fxg86oEHVTHxlp2W0HunugkZqQa+dxFCPBIpKOkyGY9?=
 =?iso-8859-1?Q?ry1B3pfjjz0epHyWE55RC6CkHPjl2u1qjCCZSdluwahBPwCkbTWkzGtKq0?=
 =?iso-8859-1?Q?thUyTq0QozUmeOjRPRlHix0EzEOrHxWi4BUfsPQa3NKhxJfaYS2F3FKyQl?=
 =?iso-8859-1?Q?ojXlldBIFK6MP7ixShyLXt6g+u/YW4F93yttQphA5iu9A6x5o9zCuJT/c/?=
 =?iso-8859-1?Q?qGEV9LAIT6cQ63AJ1dTs+/swMHCnUprXL3feh+LIh69S+lL4PUipm2i5c8?=
 =?iso-8859-1?Q?e2X9FNPQ0nM2Cn43tRFCKvQt+LB+0jTYJ+oGunRMuLI8loEwIBLyhjUMGw?=
 =?iso-8859-1?Q?yYRwShfvS7PxAwYU1HhYQVkMX7RlH2wXPz8/TC3kMevuk3IfsyuldXBsAF?=
 =?iso-8859-1?Q?QzILH+7W0vR7cahW8WoK/ilPmYlmIRHQce8QUObH8YFeTJZzQxJo00GYrd?=
 =?iso-8859-1?Q?83lXcY54s3mnp1xbCQ7hzfqoDQSqoazrM8+bsgvzVp1jW1IsO/ORd3GrjH?=
 =?iso-8859-1?Q?Zt3iAp3R3hteXx/nboBPuaIqfICryJRNrR5XRD3obkDJM5BI2TR0IB7AC7?=
 =?iso-8859-1?Q?pyPc8cmVYRAeYK9QkKDGWOkKP2rG5qEUJmlcGsumI1dJk5PPxnvA3GGg?=
 =?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: cf61ec12-f889-4405-110e-08dbcb6fe03c
X-MS-Exchange-CrossTenant-originalarrivaltime: 12 Oct 2023 22:09:15.9960
 (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: AIAFc4iL0q9YIslbonRlXVRU1pNguMnvCgzJ07rAgBenojzNTT7UcMvzPiUv2SPliGZ9/dXvhkLC7HdVgZKLal8iNfjKe2GtUGY/EJE+ZZ0=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBAPR03MB6376
X-Proofpoint-GUID: xPGnu4w1kRYsw0G2gEzggBmRHh7JGbMm
X-Proofpoint-ORIG-GUID: xPGnu4w1kRYsw0G2gEzggBmRHh7JGbMm
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-10-12_14,2023-10-12_01,2023-05-22_02
X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 adultscore=0 spamscore=0
 mlxscore=0 lowpriorityscore=0 suspectscore=0 priorityscore=1501
 impostorscore=0 clxscore=1015 malwarescore=0 bulkscore=0 mlxlogscore=803
 phishscore=0 classifier=spam adjust=0 reason=mlx scancount=1
 engine=8.12.0-2309180000 definitions=main-2310120186

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>
---

In v10:
- removed HAS_VPCI_GUEST_SUPPORT checks
- HAS_VPCI_GUEST_SUPPORT config option (in Kconfig) as it is not used
  anywhere
In 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
In v8:
- removed vpci_deassign_device
In 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 =3D=3D new domain) in case
  vpci_assign_device fails: try to de-assign and if this also fails, then
  crash the domain
In 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
In 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
In 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
In v2:
- define CONFIG_HAS_VPCI_GUEST_SUPPORT so dead code is not compiled
  for x86
In v1:
 - constify struct pci_dev where possible
 - do not open code is_system_domain()
 - extended the commit message
---
 xen/drivers/passthrough/pci.c | 20 ++++++++++++++++----
 xen/drivers/vpci/header.c     |  2 +-
 xen/drivers/vpci/vpci.c       |  6 +++---
 xen/include/xen/vpci.h        | 10 +++++-----
 4 files changed, 25 insertions(+), 13 deletions(-)

diff --git a/xen/drivers/passthrough/pci.c b/xen/drivers/passthrough/pci.c
index 182da45acb..b7926a291c 100644
--- a/xen/drivers/passthrough/pci.c
+++ b/xen/drivers/passthrough/pci.c
@@ -755,7 +755,7 @@ int pci_add_device(u16 seg, u8 bus, u8 devfn,
          * For devices not discovered by Xen during boot, add vPCI handler=
s
          * when Dom0 first informs Xen about such devices.
          */
-        ret =3D vpci_add_handlers(pdev);
+        ret =3D vpci_assign_device(pdev);
         if ( ret )
         {
             list_del(&pdev->domain_list);
@@ -769,7 +769,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 =3D NULL;
@@ -817,7 +817,7 @@ int pci_remove_device(u16 seg, u8 bus, u8 devfn)
     list_for_each_entry ( pdev, &pseg->alldevs_list, alldevs_list )
         if ( pdev->bus =3D=3D bus && pdev->devfn =3D=3D devfn )
         {
-            vpci_remove_device(pdev);
+            vpci_deassign_device(pdev);
             pci_cleanup_msi(pdev);
             ret =3D iommu_remove_device(pdev);
             if ( pdev->domain )
@@ -875,6 +875,10 @@ static int deassign_device(struct domain *d, uint16_t =
seg, uint8_t bus,
             goto out;
     }
=20
+    write_lock(&d->pci_lock);
+    vpci_deassign_device(pdev);
+    write_unlock(&d->pci_lock);
+
     devfn =3D pdev->devfn;
     ret =3D iommu_call(hd->platform_ops, reassign_device, d, target, devfn=
,
                      pci_to_dev(pdev));
@@ -1146,7 +1150,7 @@ static void __hwdom_init setup_one_hwdom_device(const=
 struct setup_hwdom *ctxt,
               PCI_SLOT(devfn) =3D=3D PCI_SLOT(pdev->devfn) );
=20
     write_lock(&ctxt->d->pci_lock);
-    err =3D vpci_add_handlers(pdev);
+    err =3D vpci_assign_device(pdev);
     write_unlock(&ctxt->d->pci_lock);
     if ( err )
         printk(XENLOG_ERR "setup of vPCI for d%d failed: %d\n",
@@ -1476,6 +1480,10 @@ 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
+    write_lock(&pdev->domain->pci_lock);
+    vpci_deassign_device(pdev);
+    write_unlock(&pdev->domain->pci_lock);
+
     rc =3D pdev_msix_assign(d, pdev);
     if ( rc )
         goto done;
@@ -1502,6 +1510,10 @@ static int assign_device(struct domain *d, u16 seg, =
u8 bus, u8 devfn, u32 flag)
                         pci_to_dev(pdev), flag);
     }
=20
+    write_lock(&d->pci_lock);
+    rc =3D vpci_assign_device(pdev);
+    write_unlock(&d->pci_lock);
+
  done:
     if ( rc )
         printk(XENLOG_G_WARNING "%pd: assign (%pp) failed (%d)\n",
diff --git a/xen/drivers/vpci/header.c b/xen/drivers/vpci/header.c
index a52e52db96..176fe16b9f 100644
--- a/xen/drivers/vpci/header.c
+++ b/xen/drivers/vpci/header.c
@@ -190,7 +190,7 @@ bool vpci_process_pending(struct vcpu *v)
              * killed in order to avoid leaking stale p2m mappings on
              * failure.
              */
-            vpci_remove_device(v->vpci.pdev);
+            vpci_deassign_device(v->vpci.pdev);
         write_unlock(&v->domain->pci_lock);
     }
=20
diff --git a/xen/drivers/vpci/vpci.c b/xen/drivers/vpci/vpci.c
index 724987e981..b20bee2b0b 100644
--- a/xen/drivers/vpci/vpci.c
+++ b/xen/drivers/vpci/vpci.c
@@ -36,7 +36,7 @@ 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)
=20
-void vpci_remove_device(struct pci_dev *pdev)
+void vpci_deassign_device(struct pci_dev *pdev)
 {
     ASSERT(rw_is_write_locked(&pdev->domain->pci_lock));
=20
@@ -69,7 +69,7 @@ void vpci_remove_device(struct pci_dev *pdev)
     pdev->vpci =3D NULL;
 }
=20
-int vpci_add_handlers(struct pci_dev *pdev)
+int vpci_assign_device(struct pci_dev *pdev)
 {
     unsigned int i;
     const unsigned long *ro_map;
@@ -103,7 +103,7 @@ int vpci_add_handlers(struct pci_dev *pdev)
     }
=20
     if ( rc )
-        vpci_remove_device(pdev);
+        vpci_deassign_device(pdev);
=20
     return rc;
 }
diff --git a/xen/include/xen/vpci.h b/xen/include/xen/vpci.h
index d743d96a10..75cfb532ee 100644
--- a/xen/include/xen/vpci.h
+++ b/xen/include/xen/vpci.h
@@ -25,11 +25,11 @@ typedef int vpci_register_init_t(struct pci_dev *dev);
   static vpci_register_init_t *const x##_entry  \
                __used_section(".data.vpci." p) =3D x
=20
-/* Add vPCI handlers to device. */
-int __must_check vpci_add_handlers(struct pci_dev *pdev);
+/* Assign vPCI to device by adding handlers to device. */
+int __must_check vpci_assign_device(struct pci_dev *pdev);
=20
 /* Remove all handlers and free vpci related structures. */
-void vpci_remove_device(struct pci_dev *pdev);
+void vpci_deassign_device(struct pci_dev *pdev);
=20
 /* Add/remove a register handler. */
 int __must_check vpci_add_register(struct vpci *vpci,
@@ -235,12 +235,12 @@ bool vpci_ecam_read(pci_sbdf_t sbdf, unsigned int reg=
, unsigned int len,
 #else /* !CONFIG_HAS_VPCI */
 struct vpci_vcpu {};
=20
-static inline int vpci_add_handlers(struct pci_dev *pdev)
+static inline int vpci_assign_device(struct pci_dev *pdev)
 {
     return 0;
 }
=20
-static inline void vpci_remove_device(struct pci_dev *pdev) { }
+static inline void vpci_deassign_device(struct pci_dev *pdev) { }
=20
 static inline void vpci_dump_msi(void) { }
=20
--=20
2.42.0


From xen-devel-bounces@lists.xenproject.org Thu Oct 12 22:09:38 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 22:09:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616070.957832 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qr3s5-0002WM-MB; Thu, 12 Oct 2023 22:09:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616070.957832; Thu, 12 Oct 2023 22:09: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 1qr3s5-0002WE-ID; Thu, 12 Oct 2023 22:09:33 +0000
Received: by outflank-mailman (input) for mailman id 616070;
 Thu, 12 Oct 2023 22:09: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=Hhgq=F2=epam.com=prvs=4649fa389a=volodymyr_babchuk@srs-se1.protection.inumbo.net>)
 id 1qr3s3-00016s-Lq
 for xen-devel@lists.xenproject.org; Thu, 12 Oct 2023 22:09:31 +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 036dea3c-694c-11ee-9b0e-b553b5be7939;
 Fri, 13 Oct 2023 00:09:29 +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
 39CKqmlC008371; Thu, 12 Oct 2023 22:09:25 GMT
Received: from eur01-db5-obe.outbound.protection.outlook.com
 (mail-db5eur01lp2050.outbound.protection.outlook.com [104.47.2.50])
 by mx0b-0039f301.pphosted.com (PPS) with ESMTPS id 3tpr7cr8dp-9
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT);
 Thu, 12 Oct 2023 22:09:25 +0000
Received: from VI1PR03MB3710.eurprd03.prod.outlook.com (2603:10a6:803:31::18)
 by DBAPR03MB6376.eurprd03.prod.outlook.com (2603:10a6:10:193::6) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.45; Thu, 12 Oct
 2023 22:09:18 +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.6863.043; Thu, 12 Oct 2023
 22:09: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: 036dea3c-694c-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=K01p0D6CTf1gJqbojqphmWFrqYpv3U2b5T130F9+y8xPt8mmHhLcS/g38NSfVCgVjJau+wJwcQScJiBUmgnbaseBHByBel2MgcMABUzoZ0BTjXmClUETTHRwXEpmGzcf0jA87HU3hFlm3jl8p2yniFkHIFiMebWBxpDX8YTrhFK6G2Bv186fuIO0m72nAxLYjPH7GH9tI1mtc8QS+f5vCxwEyZ2HJLZKlD6nePDuKtT2dqdiGW7FqC43ZkbDjoiBMBZNVhUN3mowySjGjkY+/0nNl0FvUydcfG42DJXPuVNVZnXiEXyUaBgURYDhns8vvLoAdEAKZFyVAgvKI0DVXA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=3CXc+8tX6pBxxfJFpCA5LYlgxAC78/KBYrjedW2YSTs=;
 b=aAR2gCzjmxBMHzjEyAMQnk6E5fnrRTbS4q0ULpDxzKFjsHj7s1RdJjqEliG1Byl+EyQ3cnbSVHLh8ohTMJOg9utnl7rUe3VLr7pbf0jtKKOU73LaFkFF/XY/2CL4Da8DmdxKalx1f/9bm4oSPzNN1uEiB61mOY3BMw00rPcNo+OAowjbR6JvRaceENDE1TibDZEnvzUiUe7RNPKD7Ss1245uIhuIq5oLyQ2gTeqOCeLX68jcmXYiAE/x3denuWc2ueObD0+irbwN7eT39C0G2KakW709Y37wWutDb4GY1nd4VWpBxR+nuLfkFAlpEQ3WdJx6T0SVMK+gEKEj7Ec6Mg==
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=3CXc+8tX6pBxxfJFpCA5LYlgxAC78/KBYrjedW2YSTs=;
 b=mFsLeuqU5CVV0qamOsO0ew1vbsWymMJ96rbk3rEiwtJUm+wqe9MSqZQEmoxytRFDp/iORH8DDEEEKRlAVQlh3wzOuYo+pOdjBDdVMlkx8km67C5JvOEB5tO5pHp4LYBD2YcN/BbB+b/gJXhnoytcH5R1xZaSWXdsZpyfdhq+GCmuAilWbmWkIEH/GQcpiF150YyGp422ZF61Ht/O/X41tEuEF89hP9LgKds9iwYpzL3une9AgCngmEhOYJ2vaUqe2PIpvwHrJief2PNqAJK4LcPUIYB8BgPlbD23iNERnE6t9KQDL7pkNOs/5VAQf0Dtl3inaU6nKDWdXArE4j5w7A==
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>,
        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: [PATCH v10 08/17] rangeset: add RANGESETF_no_print flag
Thread-Topic: [PATCH v10 08/17] rangeset: add RANGESETF_no_print flag
Thread-Index: AQHZ/Vi9FGz7fvuB1UuuzM8p/4QjlA==
Date: Thu, 12 Oct 2023 22:09:16 +0000
Message-ID: <20231012220854.2736994-9-volodymyr_babchuk@epam.com>
References: <20231012220854.2736994-1-volodymyr_babchuk@epam.com>
In-Reply-To: <20231012220854.2736994-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_|DBAPR03MB6376:EE_
x-ms-office365-filtering-correlation-id: 50804346-9409-4745-3ece-08dbcb6fe110
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: 
 WbdXn/iWcHUfvCky1h5v0IRMQybWxeH5I6vc7/G6AieH4buFhCm6x4z5Vrxyq6JI9StcvHXd+pCSK+B0X9eoo8SoJtubeyZ+ftwm+qQcbMvxeXoRWMisZrzhbO8IjrW9MMafR/Y941WGgiuVYV1jOL7yJTm3Us/i8vAgaVVVj4mn2DWjLR3Z4y/dWHjfuWoMhhbIlbdyYuYuZDW6Kz3VolWSpKffCjhgZaEPTnP6uLbvmCehAdVNy3s4tHX1BWq3lye4tvihu3+9nSKmW506rUjux1eh2mACvK/tiMnXjnDFuolSiBKftUmMNlCVD24LwWxSN5i2FB0R4X3u4yhuVDBGLOeA/U+sfekPBah+wbW0W2cPkE756dmMJG41VdL2b32d030hBmfTw8w9XbaqktRadfwnzTuBiMy24laOQRBV6ukyGZdNmnLbdSn9EgqJR/+jYuPg9Ro+W1UWrjBCtLYmCm8x+XF5FlcerUnFy9sv6LbJaFrals03EjloOFAUlEpx+HRARldTsD8NF4VQVriHbDlgd+BprElAb4mbd36+H245He+nUxDsQpBUvxFerhj5p/Qn1WVIRV4vn+O6uGugCymwViCfqub4VYQIrTJfuUwwMHDqwoH4MNS6weid
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)(39860400002)(396003)(346002)(366004)(136003)(230922051799003)(451199024)(64100799003)(186009)(1800799009)(2616005)(71200400001)(26005)(6512007)(6506007)(55236004)(36756003)(86362001)(38100700002)(38070700005)(122000001)(1076003)(83380400001)(91956017)(41300700001)(64756008)(316002)(76116006)(54906003)(66946007)(66446008)(6916009)(66556008)(66476007)(2906002)(8936002)(5660300002)(8676002)(4326008)(6486002)(478600001);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: 
 =?iso-8859-1?Q?xyc9xJ94f5mYD7PnywC1qW9i3uRG+HqKKAW8XWZ5aGSXlOYEOP1WiNaAMG?=
 =?iso-8859-1?Q?ytDC6rF1hFlUT81J0D/9VHsgh/ygyQRN3sOg3fvWeu3qFKLYlHMxOS+1U4?=
 =?iso-8859-1?Q?GDIHiuyoaGKUtnXoGJjg5dlwfSNf23edL5CjuTwP+smvph7DUYMQ4uliJr?=
 =?iso-8859-1?Q?M1Q0sW5NAsZmBbYEnRx2yB1seLmH4YXOOcrxYo8/6+Pwg8HhKukR308wJi?=
 =?iso-8859-1?Q?Q8Tc7EikwPv7eCtUdTZz5jWm1LeZb575vF3swYYGIg6IipsG3S7ecrT5Bh?=
 =?iso-8859-1?Q?+FrIattLK1X3UipRl+y49HwPce2bXQhggRl4VKknnYs2KScRh4oVyk8Umr?=
 =?iso-8859-1?Q?5UMBvQ0KAzGW62fWBw1mCxl86p9lxDCZWv0dpyckbod/GlutiPA00Vtk4c?=
 =?iso-8859-1?Q?161/lFCebIyMJrTa9udwV2QlTK7qYiYcPeIdHG/pX/bWo83FtKR/rAFLjT?=
 =?iso-8859-1?Q?REPDqr7YhmvVOlupWcgp4K4AUBRBzc2O18pKsYZ712PXAbkzeMcseUs/SM?=
 =?iso-8859-1?Q?kEReWbLb8cWAMH2A4n8MZzo2tdeOzuaE5BCjs12VGg4LUyPepVXvYexe/8?=
 =?iso-8859-1?Q?No/ttF1+wwTv5He4GDmCiUVxBHLHdrKz/GT0/wOIVIS7s3s5AQ1FT/r7zy?=
 =?iso-8859-1?Q?JsOSFS3KwOy/VtDcCzbGTswsfUInQsbxsvUc7LUnUlJXZowwagfTSdHCIO?=
 =?iso-8859-1?Q?Z7o46s6beniJoNLI4bPEJCVd6xaNQbgNTarSNrZUycsMFOYbYerEXcVh85?=
 =?iso-8859-1?Q?gBLJa+FQPM5vbZbI7J4Fg14Q4qpen7eP8wE9Jx8D70CnkHgtMH5jah7FR8?=
 =?iso-8859-1?Q?Jy3jfcdheHte74sPwUtTfERODgyVFZMi8dUOUOrxwMx1ASwjRvIZdsA5nn?=
 =?iso-8859-1?Q?UYCxMvc5BSRwtmfGwyDcmf3sBF3BeXyNlIMn/mGfP7TbbDJjnYEoj8xGXG?=
 =?iso-8859-1?Q?zaOZKTWUUsJyYBiaJcTg+TxKi3vLIer6XqltilWY+4NP0s2BfA07Q58ONx?=
 =?iso-8859-1?Q?BfkYI6NW5hwWmTgeLgpkRztz7WpkYZP1eusnpGr/5S5XY4eq8XiHk8+4it?=
 =?iso-8859-1?Q?DNYzbTHZs8/hqkndQXQOTy7MJuPR3FgURWnceA/fZ+NX8rrv6mg5GmhF1s?=
 =?iso-8859-1?Q?pSivPI3R4dXD3+imyiwxqnitB1GW2F2mjOKiEdm9eTi/z5vraxAR0lYQU8?=
 =?iso-8859-1?Q?MVpn9qc7PYNQXySp1tOXT6429trdQBCzJNmOxkn4q0WaAtrUXxluQDI9ZJ?=
 =?iso-8859-1?Q?W6MA4aNcmNGmpBFsmS7ZIw/5D9u1REC14MlKCOW4/S/BjJ4AuouxD2cE7y?=
 =?iso-8859-1?Q?k0R52Tw3smOAbh+iDNGMIwXZ70mzCA+aPmhldShl3NZpsYMVHq8ur6dqxO?=
 =?iso-8859-1?Q?oKMYlFf9w27A2T47EOnI+yk6oLoe3i51vu4B/z34RAHxVqIoN5KiVctku1?=
 =?iso-8859-1?Q?jLwWTJjz90i1SVAJ1lEQdmXJx2p3lg0w/4HdJcqTk26cBaBxC7tMtxnP5l?=
 =?iso-8859-1?Q?dPW0N8/pUZsOD97GSiHc2h44Buh7yjYEVSVFCAWarqeTy9nqHhFwse7Iwd?=
 =?iso-8859-1?Q?gCEVIUt2qNLpa/TQynmPG3D0o8AD/ZptRrBP8pSPXQwSUXfQlWMA35PVS1?=
 =?iso-8859-1?Q?5kgPRiWhUCaNdmLnCqOa+ximZaJBvK2igIOTQ9qmPRF/blMFDl+asaXA?=
 =?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: 50804346-9409-4745-3ece-08dbcb6fe110
X-MS-Exchange-CrossTenant-originalarrivaltime: 12 Oct 2023 22:09:16.9516
 (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: athmZe0YnSiUKlKOx/JaNiwB/22yXYb5ojlolh2IbIqs/Z0xfyUd9g4BfdIcz/6BwtBoskeCJ1WH8vLP5ODlrgjSW/CLXM1R19E38cX8Li0=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBAPR03MB6376
X-Proofpoint-GUID: 3FMKdQ3tyOgELXzpi1gM4MVpENRkgynf
X-Proofpoint-ORIG-GUID: 3FMKdQ3tyOgELXzpi1gM4MVpENRkgynf
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-10-12_14,2023-10-12_01,2023-05-22_02
X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 adultscore=0 spamscore=0
 mlxscore=0 lowpriorityscore=0 suspectscore=0 priorityscore=1501
 impostorscore=0 clxscore=1015 malwarescore=0 bulkscore=0 mlxlogscore=999
 phishscore=0 classifier=spam adjust=0 reason=mlx scancount=1
 engine=8.12.0-2309180000 definitions=main-2310120186

From: Oleksandr Andrushchenko <oleksandr_andrushchenko@epam.com>

There are range sets which should not be printed, so introduce a flag
which allows marking those as such. Implement relevant logic to skip
such entries while printing.

While at it also simplify the definition of the flags by directly
defining those without helpers.

Suggested-by: Jan Beulich <jbeulich@suse.com>
Signed-off-by: Oleksandr Andrushchenko <oleksandr_andrushchenko@epam.com>
Reviewed-by: Jan Beulich <jbeulich@suse.com>
---
Since v5:
- comment indentation (Jan)
Since v1:
- update BUG_ON with new flag
- simplify the definition of the flags
---
 xen/common/rangeset.c      | 5 ++++-
 xen/include/xen/rangeset.h | 5 +++--
 2 files changed, 7 insertions(+), 3 deletions(-)

diff --git a/xen/common/rangeset.c b/xen/common/rangeset.c
index f3baf52ab6..35c3420885 100644
--- a/xen/common/rangeset.c
+++ b/xen/common/rangeset.c
@@ -433,7 +433,7 @@ struct rangeset *rangeset_new(
     INIT_LIST_HEAD(&r->range_list);
     r->nr_ranges =3D -1;
=20
-    BUG_ON(flags & ~RANGESETF_prettyprint_hex);
+    BUG_ON(flags & ~(RANGESETF_prettyprint_hex | RANGESETF_no_print));
     r->flags =3D flags;
=20
     safe_strcpy(r->name, name ?: "(no name)");
@@ -575,6 +575,9 @@ void rangeset_domain_printk(
=20
     list_for_each_entry ( r, &d->rangesets, rangeset_list )
     {
+        if ( r->flags & RANGESETF_no_print )
+            continue;
+
         printk("    ");
         rangeset_printk(r);
         printk("\n");
diff --git a/xen/include/xen/rangeset.h b/xen/include/xen/rangeset.h
index 135f33f606..f7c69394d6 100644
--- a/xen/include/xen/rangeset.h
+++ b/xen/include/xen/rangeset.h
@@ -49,8 +49,9 @@ void rangeset_limit(
=20
 /* Flags for passing to rangeset_new(). */
  /* Pretty-print range limits in hexadecimal. */
-#define _RANGESETF_prettyprint_hex 0
-#define RANGESETF_prettyprint_hex  (1U << _RANGESETF_prettyprint_hex)
+#define RANGESETF_prettyprint_hex   (1U << 0)
+ /* Do not print entries marked with this flag. */
+#define RANGESETF_no_print          (1U << 1)
=20
 bool_t __must_check rangeset_is_empty(
     const struct rangeset *r);
--=20
2.42.0


From xen-devel-bounces@lists.xenproject.org Thu Oct 12 22:09:38 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 22:09:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616064.957772 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qr3s1-00017S-Vd; Thu, 12 Oct 2023 22:09:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616064.957772; Thu, 12 Oct 2023 22: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 1qr3s1-00017L-So; Thu, 12 Oct 2023 22:09:29 +0000
Received: by outflank-mailman (input) for mailman id 616064;
 Thu, 12 Oct 2023 22:09: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=Hhgq=F2=epam.com=prvs=4649fa389a=volodymyr_babchuk@srs-se1.protection.inumbo.net>)
 id 1qr3s0-00016v-B4
 for xen-devel@lists.xenproject.org; Thu, 12 Oct 2023 22:09:28 +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 00f71115-694c-11ee-98d4-6d05b1d4d9a1;
 Fri, 13 Oct 2023 00:09:26 +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
 39CKqml9008371; Thu, 12 Oct 2023 22:09:23 GMT
Received: from eur01-db5-obe.outbound.protection.outlook.com
 (mail-db5eur01lp2050.outbound.protection.outlook.com [104.47.2.50])
 by mx0b-0039f301.pphosted.com (PPS) with ESMTPS id 3tpr7cr8dp-7
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT);
 Thu, 12 Oct 2023 22:09:23 +0000
Received: from VI1PR03MB3710.eurprd03.prod.outlook.com (2603:10a6:803:31::18)
 by DBAPR03MB6376.eurprd03.prod.outlook.com (2603:10a6:10:193::6) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.45; Thu, 12 Oct
 2023 22:09:17 +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.6863.043; Thu, 12 Oct 2023
 22:09: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: 00f71115-694c-11ee-98d4-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=h63PPNZt3JfrvOJ4ZdEAarqk8/nnxRj5O2mdCGhqm5fqHBavlVR/wmtDTUMLKcH/LHJtk1u3ok2LZXo3daIt8H83FULAEec96x/1X56riIRTBQdMazCjDT+lg2UFXyksgYFngsJkDJ77XzxUHRlOsBFv/RNfwuo4Ti53Z93g3QR0w+E7fNwY49GcQXzcb4RuHH4O36KohAZZG4KygfO7WdLLVELCVC4hTb5IzSw9D5tK4CchBCC2wLIUmxlGxP2PztHM8hlq93HV8i0Q2fHofuad2eQZ6B+lN0L+9N4+nUAbC8EpQn8cmQP7GgkWeUIbfbAjcVTmtoesco6yBjHNrA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=zMLvoJ8oLwDDcIwwFQCmO1G6TxLtjEG3z/3WmRJCPC8=;
 b=cj6d/YyEeNdAMACZm8lGafBreEklzgsBPYRNlhhdENjWWgpx4wj53dSSWYNk3efWF6sIiAjZPKZE8dDFbSULrzrHssSSm1oUydkEmRV2+eO4rvrO5QRRAwaZ1Uq8TlQPRm/itiYsZyUhj3r/f0MssnQz0dC9dBNiAR0fFYXnAZ5aPx5JsmdoQoBEtZt4C8r8xcbP7b9otzt9uU2kq95qmprcY3imipkKtJxyhkRmypEstuHD96NdijnTcIUS4EKvuwYIQ7Rmzc5zUbGaf3I6gOdbThuVSnngm1lw4iv7F8qgylAMC7NcsS5aoWez6jY2DRXHf4Gj4oUqiu54fLxdvg==
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=zMLvoJ8oLwDDcIwwFQCmO1G6TxLtjEG3z/3WmRJCPC8=;
 b=CtKDOFS4Qamh5MA6OTmYZ/iVQupGqJ4Ayfycsf0H1NlwIKLLDRqGi2OCvx4B9OtXlSTjWAJTGsTutnIBZN/cuK0jhXWw0qm0+0BnZV/aQxNKMr07Q9F9Nd8s3b13ahCpJz3pwE/Gdi7TAskzzrpAOsqFHV2nDc2SOjh8skExjsL9F1+rB970ZmkhtufvgrGItnnE88viMh5eJXAiX3o7jRrAgtfD2ALF8tUhRtubajMPazjc2RXWPgopdvBg4mYfadZjvsJHX2r6B6hwuo9zU/S1cg9geyRNHX5ECRXHcKLlv5ltSThchBW6/GwvQl7WX0U5gDCUl9Je2hVNw5+rPg==
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>,
        =?utf-8?B?Um9nZXIgUGF1IE1vbm7DqQ==?=
	<roger.pau@citrix.com>
Subject: [PATCH v10 06/17] vpci/header: rework exit path in init_bars
Thread-Topic: [PATCH v10 06/17] vpci/header: rework exit path in init_bars
Thread-Index: AQHZ/Vi9WQzEUKFClEWKXSReXuWjGg==
Date: Thu, 12 Oct 2023 22:09:16 +0000
Message-ID: <20231012220854.2736994-7-volodymyr_babchuk@epam.com>
References: <20231012220854.2736994-1-volodymyr_babchuk@epam.com>
In-Reply-To: <20231012220854.2736994-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_|DBAPR03MB6376:EE_
x-ms-office365-filtering-correlation-id: 7c11578c-7fcc-47a4-4889-08dbcb6fe075
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: 
 M/D5Wx0CEZKab6dvl8nUSy9VRijS0vZ3VQwpXXpaXVwKMLRfwfzhrjzdyjTtzq3VqNjR1S0fxJWfzzG9Gt6G6d06Vqes/QR9IMjJxPt1oBvpqrViEJojt1lpEcVKFr/tm1d4MwR7kt2+NyH01Et3U9vN2BmmwLif7fo/LNXkGbexK57r1W66Xx84ftGlruFWWPBe+5MfkcK9DKqXLpFhyRQiHvtjnLMY+Ha2M2K5lJTsBA3ugvHD2ja6pjL5vKdViDEmhdUxZaA8zpArHMPNEviFK67q1eJ24p8Si67ztsqzKRPGCCH6SigfdnoNw5b73yDQcQiieskBrvc22XadTRgy+Dm09HSgJnX/fMin3GoQVRb/TKa5WqZrtf1UtPnyF8O177WeLcqdVqcPqrePvLqPuWaHpfkxMoE9TyllPr97Z+l/2EYZXNgHjNZyCJalHupAjSZF9hOHJMZr8jWRAeRxvulnx9L4bx0/tVfcnqnXZDutd6tWLT3CMIaSkMwK8n/86P4BSDBre+56jKA1gsPBoTYx5z9AnS78yhF4/hMLT7U/TvWqHWHy9u0UWDA903HKhSKy46/vOPKcidd67GLPuZo3XsxBHHh8ML1rlBoVmrpZumhRIFEzeLRR0R95
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)(39860400002)(396003)(346002)(366004)(136003)(230922051799003)(451199024)(64100799003)(186009)(1800799009)(2616005)(71200400001)(26005)(6512007)(6506007)(55236004)(36756003)(86362001)(38100700002)(38070700005)(122000001)(1076003)(83380400001)(91956017)(41300700001)(64756008)(316002)(76116006)(54906003)(66946007)(66446008)(6916009)(66556008)(66476007)(2906002)(8936002)(5660300002)(8676002)(4326008)(6486002)(478600001);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: 
 =?utf-8?B?Y3puZ1FTREN2TFFPdkpQRjJ0dURXZm9PUW8wcy82bW9MR1dvTFBBa3VNeEtX?=
 =?utf-8?B?TEhBSzJOam9rbXp4eW52ODZCNmpiQUtBVmZUSjR5QnJpYUhpZzRFRVEzRTdi?=
 =?utf-8?B?cjZZVnZYRlpNNVo3MVpIeDl4L0I5YlpFTlROR2VCdFk5YlFEN3dhTCtLY1Nw?=
 =?utf-8?B?Skp1TXVZQ0k0K1FEbjVaalZKR0c1MTVqVm9vUzZPei9rRG8wT3JuM1hzdWxj?=
 =?utf-8?B?anJsR0NwZzlMTnVSMW5jaGk5dDZLNkk4OHJtWHlnVmQwT1paNWQ1bXYxTkRM?=
 =?utf-8?B?TmFtdTFINlVmYzRsWDBBK2lRZGhuY1N3Z0ttWGd2OVlYL0RiVHVXbmNOTGNB?=
 =?utf-8?B?blBqa3pWb1RWR3RTTmlaYlB1RVFoMExhUXV3VExQNEdQYkkxRDJTZG95STdM?=
 =?utf-8?B?YnlBcTM5S1gxdHRpR2pOcFpRRHR0eks1cktHMFJpYzJ2YzM1VytEY3N5THky?=
 =?utf-8?B?bTl2Rng4bHRFdUd1R0JON1QzaWt6MVhoajJDOWo1UDVtNFZXYmI1d2txQkRu?=
 =?utf-8?B?RmMxeVFsZGxtS0NIRGhUK2JUbTIxNHRROVp6RGkxeXh5QUp1bEM5Um8xbkN2?=
 =?utf-8?B?MkdJQUtDYjFxaDVreUcwSy9yVlgvTFNJQ0VHaXUrQXQ1RmdFT05PVjVLTXBY?=
 =?utf-8?B?VGF4RnJNNHJCTFBuMS9CQUhqcy9yeEpaQjY4ZlZPWXRqKzUxMFJkRzFFODJS?=
 =?utf-8?B?M213eXhqZXl4UjFaZEZGeFR2L0E1dkFSQ0JGdWtqRzlQaWFkRFBvWE4yWlA4?=
 =?utf-8?B?NENNUHhONzRMcTlETkZhclk1NWF3SldEM2s4YVEzc09PMldHWmJhNXNjcXNG?=
 =?utf-8?B?MjFHalZ3VUxkUjlsL0lCT2YvYmhrcHpqRU5XVTdCWjFCR0FXbk9hbTUvZGY1?=
 =?utf-8?B?cG13Q2xCSHpuU1hISE9yZVpkbVJEb1lweVVKck90dUtEcmhaaE1MR1ZvM2dm?=
 =?utf-8?B?ZTBjZW9vbHZNbWlXMEEvUVEwRkw4eGV1UHV6MEh4NzNPSEZWR3ZTNjZRcXl6?=
 =?utf-8?B?K1VOZ01SNGhyNTYxQ1dzQUN0TC9lOVlwa2xncDljc01UZWNqSm9LZGtZU2ZW?=
 =?utf-8?B?VE9SS2NpUTc4dlVXRUp2RkFaNHBPR3h2T2ZrR3lvdVFLc0s0ZGR2RDBCZmY2?=
 =?utf-8?B?R1ZEOUFWcFU0VUVYZExadHZZeDhyd3I1UHJpYXloekk2OUU5QXl2RDY5TytI?=
 =?utf-8?B?NVNjRjR4L2VZTUdUbHkxUzB5OFlMVnE3a2FSd2F5TFdiR2FYdm5JMnAzZXpm?=
 =?utf-8?B?L2huNEVmTnRJWmlGb01DdDdZN0p3cWRseXUycG9KUFlKTjJtK2NqNncwV0Ja?=
 =?utf-8?B?Q0tJc0UxU3h2N1hLQ295T083NW95ZjliS1I0blNQQW9kUUcydUFwcDRKdXlr?=
 =?utf-8?B?T0c4MjNqK2N6N0M3a2E2L1hMdDBJWEtqNmRsYXovUkZkb0srTVBlN3NuVDM1?=
 =?utf-8?B?VG1Wb0x6b2I1YjlWMzFZZWRPSStmcEdaTExjQjYvcVNab2RSeTV4L25SekhB?=
 =?utf-8?B?YXRhS085VEhsSkdHeWoyM3Q1amhKTVBGL1FrUlFDQjc2NFQzajFMVElsU256?=
 =?utf-8?B?WSt6OCtPOE9hMzhQWlNnTGhvQTZrOWlrMUVlZDVEWDk2VXl3dlhwM28yWnRT?=
 =?utf-8?B?SlBSb2dETTJOcFRLRStyNXRSRHNnUE9LdnJIa0RucXhaZ0RNUjRINEFxRWRI?=
 =?utf-8?B?RkFSOHV3NWNBejRwQkV5TWVrUG9wZDJvMXczVThpSmtCSVYxRWlnOHdYajZl?=
 =?utf-8?B?ZDJ3Z1dIY2lpWWlwYW84V09vQ21TWUFNdjVtUGl4VmtSdGdENG9NTDZPMlBO?=
 =?utf-8?B?RTc2dWg2V2taeHZKcXptVFVwalJSSFBkRU9wWmJNOVAyd0N0R2lUSTd5MzYx?=
 =?utf-8?B?cnEyWDdzQXRBeUZteE5HMk9TQjdCaGREMFhjRnY2REdkcTNOOEdSKytHNmhp?=
 =?utf-8?B?TkRzWC9jWnhPR2hBdWZkU0dWZC8raTc0a1hYYnhSRjNabGRFR1Y2Vm8zS09r?=
 =?utf-8?B?S2dBWE5hbUlnTEIrVkNDNFRxTzRwTkRWazZlckhVSGNneVVpZllOUGkzL1ZC?=
 =?utf-8?B?NkVCUVpJYTJ4WVoyK0FiU1g4UVdXd2tPaUlDUk5aZ1RBd2N1b2xwSHdrc2Zt?=
 =?utf-8?B?Z2E4UzM2ZDZtdS81UzNhRHBEa1hoY0htUmFBSTR3SkZONUttbXFmbm13VnFP?=
 =?utf-8?B?ZWc9PQ==?=
Content-Type: text/plain; charset="utf-8"
Content-ID: <0C02E46285954F4D8569410BCEA0378F@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: 7c11578c-7fcc-47a4-4889-08dbcb6fe075
X-MS-Exchange-CrossTenant-originalarrivaltime: 12 Oct 2023 22:09:16.3254
 (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: 1pIvwGhVxGNY7O5U3lPKRBNrTuZ2o0XunhKF1Y2fdlCAPsOoapOtgSwEyRGVFtNkDJvUSjwu+rk4mH1LvBLTKK2jAqjSaUM0miXV9Fi9Ezg=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBAPR03MB6376
X-Proofpoint-GUID: s1xqamOyCo_cF0K__10qdjW3KjxVfRg-
X-Proofpoint-ORIG-GUID: s1xqamOyCo_cF0K__10qdjW3KjxVfRg-
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-10-12_14,2023-10-12_01,2023-05-22_02
X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 adultscore=0 spamscore=0
 mlxscore=0 lowpriorityscore=0 suspectscore=0 priorityscore=1501
 impostorscore=0 clxscore=1015 malwarescore=0 bulkscore=0 mlxlogscore=999
 phishscore=0 classifier=spam adjust=0 reason=mlx scancount=1
 engine=8.12.0-2309180000 definitions=main-2310120186

SW50cm9kdWNlICJmYWlsIiBsYWJlbCBpbiBpbml0X2JhcnMoKSBmdW5jdGlvbiB0byBoYXZlIHRo
ZSBjZW50cmFsaXplZA0KZXJyb3IgcmV0dXJuIHBhdGguIFRoaXMgaXMgdGhlIHByZS1yZXF1aXJl
bWVudCBmb3IgdGhlIGZ1dHVyZSBjaGFuZ2VzDQppbiB0aGlzIGZ1bmN0aW9uLg0KDQpUaGlzIHBh
dGNoIGRvZXMgbm90IGludHJvZHVjZSBmdW5jdGlvbmFsIGNoYW5nZXMuDQoNClNpZ25lZC1vZmYt
Ynk6IFZvbG9keW15ciBCYWJjaHVrIDx2b2xvZHlteXJfYmFiY2h1a0BlcGFtLmNvbT4NClN1Z2dl
c3RlZC1ieTogUm9nZXIgUGF1IE1vbm7DqSA8cm9nZXIucGF1QGNpdHJpeC5jb20+DQpBY2tlZC1i
eTogUm9nZXIgUGF1IE1vbm7DqSA8cm9nZXIucGF1QGNpdHJpeC5jb20+DQotLQ0KSW4gdjEwOg0K
LSBBZGRlZCBSb2dlcidzIEEtYiB0YWcuDQpJbiB2OToNCi0gTmV3IGluIHY5DQotLS0NCiB4ZW4v
ZHJpdmVycy92cGNpL2hlYWRlci5jIHwgMjAgKysrKysrKy0tLS0tLS0tLS0tLS0NCiAxIGZpbGUg
Y2hhbmdlZCwgNyBpbnNlcnRpb25zKCspLCAxMyBkZWxldGlvbnMoLSkNCg0KZGlmZiAtLWdpdCBh
L3hlbi9kcml2ZXJzL3ZwY2kvaGVhZGVyLmMgYi94ZW4vZHJpdmVycy92cGNpL2hlYWRlci5jDQpp
bmRleCAxNzZmZTE2YjlmLi4zM2RiNTg1ODBjIDEwMDY0NA0KLS0tIGEveGVuL2RyaXZlcnMvdnBj
aS9oZWFkZXIuYw0KKysrIGIveGVuL2RyaXZlcnMvdnBjaS9oZWFkZXIuYw0KQEAgLTU4MSwxMSAr
NTgxLDcgQEAgc3RhdGljIGludCBjZl9jaGVjayBpbml0X2JhcnMoc3RydWN0IHBjaV9kZXYgKnBk
ZXYpDQogICAgICAgICAgICAgcmMgPSB2cGNpX2FkZF9yZWdpc3RlcihwZGV2LT52cGNpLCB2cGNp
X2h3X3JlYWQzMiwgYmFyX3dyaXRlLCByZWcsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICA0LCAmYmFyc1tpXSk7DQogICAgICAgICAgICAgaWYgKCByYyApDQotICAgICAgICAg
ICAgew0KLSAgICAgICAgICAgICAgICBwY2lfY29uZl93cml0ZTE2KHBkZXYtPnNiZGYsIFBDSV9D
T01NQU5ELCBjbWQpOw0KLSAgICAgICAgICAgICAgICByZXR1cm4gcmM7DQotICAgICAgICAgICAg
fQ0KLQ0KKyAgICAgICAgICAgICAgICBnb3RvIGZhaWw7DQogICAgICAgICAgICAgY29udGludWU7
DQogICAgICAgICB9DQogDQpAQCAtNjA0LDEwICs2MDAsNyBAQCBzdGF0aWMgaW50IGNmX2NoZWNr
IGluaXRfYmFycyhzdHJ1Y3QgcGNpX2RldiAqcGRldikNCiAgICAgICAgIHJjID0gcGNpX3NpemVf
bWVtX2JhcihwZGV2LT5zYmRmLCByZWcsICZhZGRyLCAmc2l6ZSwNCiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAoaSA9PSBudW1fYmFycyAtIDEpID8gUENJX0JBUl9MQVNUIDogMCk7DQog
ICAgICAgICBpZiAoIHJjIDwgMCApDQotICAgICAgICB7DQotICAgICAgICAgICAgcGNpX2NvbmZf
d3JpdGUxNihwZGV2LT5zYmRmLCBQQ0lfQ09NTUFORCwgY21kKTsNCi0gICAgICAgICAgICByZXR1
cm4gcmM7DQotICAgICAgICB9DQorICAgICAgICAgICAgZ290byBmYWlsOw0KIA0KICAgICAgICAg
aWYgKCBzaXplID09IDAgKQ0KICAgICAgICAgew0KQEAgLTYyMiwxMCArNjE1LDcgQEAgc3RhdGlj
IGludCBjZl9jaGVjayBpbml0X2JhcnMoc3RydWN0IHBjaV9kZXYgKnBkZXYpDQogICAgICAgICBy
YyA9IHZwY2lfYWRkX3JlZ2lzdGVyKHBkZXYtPnZwY2ksIHZwY2lfaHdfcmVhZDMyLCBiYXJfd3Jp
dGUsIHJlZywgNCwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJmJhcnNbaV0pOw0K
ICAgICAgICAgaWYgKCByYyApDQotICAgICAgICB7DQotICAgICAgICAgICAgcGNpX2NvbmZfd3Jp
dGUxNihwZGV2LT5zYmRmLCBQQ0lfQ09NTUFORCwgY21kKTsNCi0gICAgICAgICAgICByZXR1cm4g
cmM7DQotICAgICAgICB9DQorICAgICAgICAgICAgZ290byBmYWlsOw0KICAgICB9DQogDQogICAg
IC8qIENoZWNrIGV4cGFuc2lvbiBST00uICovDQpAQCAtNjQ3LDYgKzYzNywxMCBAQCBzdGF0aWMg
aW50IGNmX2NoZWNrIGluaXRfYmFycyhzdHJ1Y3QgcGNpX2RldiAqcGRldikNCiAgICAgfQ0KIA0K
ICAgICByZXR1cm4gKGNtZCAmIFBDSV9DT01NQU5EX01FTU9SWSkgPyBtb2RpZnlfYmFycyhwZGV2
LCBjbWQsIGZhbHNlKSA6IDA7DQorDQorIGZhaWw6DQorICAgIHBjaV9jb25mX3dyaXRlMTYocGRl
di0+c2JkZiwgUENJX0NPTU1BTkQsIGNtZCk7DQorICAgIHJldHVybiByYzsNCiB9DQogUkVHSVNU
RVJfVlBDSV9JTklUKGluaXRfYmFycywgVlBDSV9QUklPUklUWV9NSURETEUpOw0KIA0KLS0gDQoy
LjQyLjANCg==


From xen-devel-bounces@lists.xenproject.org Thu Oct 12 22:09:39 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 22:09:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616073.957861 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qr3s8-0003Kc-SH; Thu, 12 Oct 2023 22:09:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616073.957861; Thu, 12 Oct 2023 22: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 1qr3s8-0003Jm-Mj; Thu, 12 Oct 2023 22:09:36 +0000
Received: by outflank-mailman (input) for mailman id 616073;
 Thu, 12 Oct 2023 22:09: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=Hhgq=F2=epam.com=prvs=4649fa389a=volodymyr_babchuk@srs-se1.protection.inumbo.net>)
 id 1qr3s7-00016v-20
 for xen-devel@lists.xenproject.org; Thu, 12 Oct 2023 22:09:35 +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 055714ca-694c-11ee-98d4-6d05b1d4d9a1;
 Fri, 13 Oct 2023 00:09:33 +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
 39CG29eN021659; Thu, 12 Oct 2023 22:09:31 GMT
Received: from eur03-am7-obe.outbound.protection.outlook.com
 (mail-am7eur03lp2232.outbound.protection.outlook.com [104.47.51.232])
 by mx0a-0039f301.pphosted.com (PPS) with ESMTPS id 3tpcc6c048-1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT);
 Thu, 12 Oct 2023 22:09:30 +0000
Received: from VI1PR03MB3710.eurprd03.prod.outlook.com (2603:10a6:803:31::18)
 by AS8PR03MB8758.eurprd03.prod.outlook.com (2603:10a6:20b:53e::10)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.41; Thu, 12 Oct
 2023 22:09:26 +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.6863.043; Thu, 12 Oct 2023
 22:09: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: 055714ca-694c-11ee-98d4-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=MeAe1z11V4yCH/nwHGCAa9MrU+IAY6nIC9xRcYwm6z1I9xJj3MrLXLUHMxTobHtDXu7wn7f50GszGUMnFkw5HEkSMSvo5/bgP70Ia3S9U8JKTmQLTDBu1PjUE4ZgjckdM0NRYUWXfqaEeZmRcg83+uEEA6Qk1oR0vpj6Cz/jok6Z09JjwkSFIiUXUBazl25LiMndb46VJVjekT2F8AYIcQ1HgrwLKKqb/FeXHTM17mF5GZsXYfTX+BViNGud40y0xuFYJBikHHs3zO0HFYBstI8cV4rXEnVBcMqShfAYMpNKg4trxbBf5fTzHZn8EtAqL3OwTWouVpoIL6a12TxBwA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=FxjLbTo8iMMJkl5SzG0dB3gVCQncYAbfISdfduk5+ws=;
 b=iBlRD29ZaXTmzVP8vksrzIGSnYGBYLcNRd31pQhay8GTIe275Q468eaB2q4+nrMOUGXTiYZ94sZZMLiYG+6JrHUMAxErr2e8vJOmQOCjQEV7wfScPM2o9jll/6SZxPUUdkLScsNYbeyAQ4xrisKEnn17p6hjWVwVZ4lJ+l/Ib30UYHSVAnpnkspHBSvv9fR5MvSOtNP5MxnR9t1RbkuqcsvMs2CcrTCd45FJ5kslTr0OOxm7qBKjja1YCvGJLZ0M2qmBYjFBpL5X6Y0FQO5GqugL5hNikv4MHtfr57vA1COhREgM4xBds8hEBL4lONpYLDkruOetIXdb15YD+QC+AA==
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=FxjLbTo8iMMJkl5SzG0dB3gVCQncYAbfISdfduk5+ws=;
 b=o1ny1wsRodTOPqoDT0iwdZrFqPvfdxeO196cJeFx19Ox1/8gZMdMTOhT8UMZ4w/McZBjy7whcYsV2W+9OWLIpVZ2LAUjgCyC8RutbNdHK3iTGxgiQOlR4EMETGJ4Gj+/vZg0B4in83Mp5hgq/SJiq9HbAAgN354jSv6R3eIbQgOa6uH1FRBaCX6c4lroATVPwDKU8iSPyCcaO9+sygWqWjqjI013dPNmciGgPPWEZmgWQi2uf+betUhijlcNQyJYp5LvURkE4WqpGC31fgoAbC42NUng3bskSyB1i5FHM4/VXlrmaxXYxtthHiqijdWK1gA98n3qJSsY4J5snFs2Kw==
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>,
        Oleksandr Andrushchenko
	<Oleksandr_Andrushchenko@epam.com>,
        =?iso-8859-1?Q?Roger_Pau_Monn=E9?=
	<roger.pau@citrix.com>,
        Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: [PATCH v10 12/17] vpci/header: emulate PCI_COMMAND register for
 guests
Thread-Topic: [PATCH v10 12/17] vpci/header: emulate PCI_COMMAND register for
 guests
Thread-Index: AQHZ/Vi+sHqpo/XMzUSHL9PkKFM5oA==
Date: Thu, 12 Oct 2023 22:09:18 +0000
Message-ID: <20231012220854.2736994-13-volodymyr_babchuk@epam.com>
References: <20231012220854.2736994-1-volodymyr_babchuk@epam.com>
In-Reply-To: <20231012220854.2736994-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_|AS8PR03MB8758:EE_
x-ms-office365-filtering-correlation-id: f2747525-f901-49f7-63dd-08dbcb6fe61c
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: 
 XFYWFNcoiZlGzyj1dy0AJp8PtoYHfD/stRJ1jctbLu9C8au4lXgcewB/xwPymcy4+qSfzgeGkVQBcFQ11OOMiqJ5FYbUqZ0qsCyWblX4K6mPrH7vrX9Eb2RGC9XDyArqia6/kB3cRylAaWxoM0U0LRqO2nJ+XE7PYbd7YCZllL+Bh6APMp4SgH1y46KLCvqww2hd2Nc4ZcUe/2Uuq6dRUkWRsguJ089d/HRvHKmxBXqpDm2E7HM6+xF6NTYr6LF9Zc36xEo7mQwPCY8IKojgk0V5+zkj13aYvEW652jltnYA7sltifMmlHqTealGC5zomEGUGOSztJLaJCjGjroQ/n0PM9zKKB3dRrIsTnPq6Webh9KhcDIpMje30kCf8GOMCpipF8jwd17UaSqReug+eytCqPIXf8yZiSvohrTr0biYkU8aPIQEOdv9WRk9N/ooBxDVLJUHyX2jyYsXN+sI97shmL4Mwm5z/cfWtSuxeKNcfJkuN0ogew2/GBMt8mRBhJnNH577VKpIXXnQRCoiu8wONQ2qbpD8FSjcVeORMOUewDtd9VTEAC1R9tOryFOV87LSxGC/LQ8J5RouatD/0IrKzBssCpC2AIXq5lH4ls1ERi8tuYWV+wBcTWIfXUGi
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)(136003)(396003)(346002)(376002)(230922051799003)(64100799003)(451199024)(1800799009)(186009)(38070700005)(6916009)(5660300002)(41300700001)(316002)(83380400001)(86362001)(122000001)(38100700002)(66446008)(71200400001)(6486002)(26005)(1076003)(2616005)(107886003)(54906003)(478600001)(76116006)(66556008)(66946007)(66476007)(64756008)(91956017)(2906002)(8936002)(8676002)(36756003)(6512007)(6666004)(55236004)(6506007)(4326008);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: 
 =?iso-8859-1?Q?rLRTpMPntF+kt8fSiqeOaGbKAdW3JUH6eJVKS2eXzd4MqLXwuvjaEeYhqa?=
 =?iso-8859-1?Q?JYRHuv8dywfPcK3auubar7rZo+Pr0eCIob2KUzOeAu+V1oltVvHJEyPMGt?=
 =?iso-8859-1?Q?YHEitEjV46uEB+7oTGb0K8ywdKHx9cG+z/FSnw/lEzKsiKChePGNExrOCW?=
 =?iso-8859-1?Q?jcU77SSg2Ma4P69DKCk6FzMLVeRaiOKFlMANxhQhCF74odTnaopvUocXIV?=
 =?iso-8859-1?Q?x5CjMcN0m/v6O7SejlFI2ZZE3C4zL4rRupjVHJMk32prl46ZlFnCfFpRlj?=
 =?iso-8859-1?Q?3dRpDxqPiwYxLe5rGZLmTIE+UUBwiJBS9OOwxlafJwIxPcpxF3vyAQ6pdK?=
 =?iso-8859-1?Q?0J1QNs+IUuVlOHDMPoN8eYF7yMssqn2tA6fuHIzx2ADMorN7kshZOK9qBQ?=
 =?iso-8859-1?Q?g8TCtmwwmA6RyEdq4teTackS0Gw7YeafSPoDF3c3xrnu/1N8eA4bPT4Fhx?=
 =?iso-8859-1?Q?TdGlobGTJ4P9XxP355innSF182EzxR09AKiPLgqWD35Cd712sOzI+w74iK?=
 =?iso-8859-1?Q?YCryd029cBZ6KD63Tmezdh8sN6aj6iQHZ2Jl6AWgpDM0ZvLuMzO+PmGKln?=
 =?iso-8859-1?Q?+NkSLHs7I8hpgxce4IhkGgwK4tP5lx0I507nmWsJ5q5CNTEobK/KLJD//G?=
 =?iso-8859-1?Q?xA2TEt1Fj1aqVPSQlI0dZon+odI38BPOx2Dqo2HyAYUAlTwi/4OiqAp7ul?=
 =?iso-8859-1?Q?QHu+6HBoNYYbtTOWrwxoVP82t30/x9eWQ5NM2hBLQn3J3C5/1z5BZOHh4M?=
 =?iso-8859-1?Q?nSw7kNlCEKslvEnRztUT2lYe7sLUP1g3rYgXynaMccBKb8zY+D/Kq4VtT/?=
 =?iso-8859-1?Q?p19b3Yin+MoH/eqOUL0lU2WpFn9AhzeLq6N+ilDzv8CbYpzdTzY4J9WyHZ?=
 =?iso-8859-1?Q?TRhfjVWLPmaCpYCS4ftNAnBQoK8l66WrqIoNeSoetwhao4CR5DVUoJcnhV?=
 =?iso-8859-1?Q?LOQ9zBDRIHvCbDyRvFn31uDr3Z7Pl0jD3URy02jr1S5tYHgwSs0O0NM2ty?=
 =?iso-8859-1?Q?FLV9J6A7JP/FRTUz/28Ino9T1AP+6o5Bj+8GkGXJzd8dMacGtLYg1WdVon?=
 =?iso-8859-1?Q?uaEBzSW/E8V87uM/1tyauG3AnrxRJptWmwgq1RZVHsrfPS6/GRI+69qMk3?=
 =?iso-8859-1?Q?n5b06h4LWfWjPOQQ3NM0XvvyRai1td9zL9uX5xPRMWeEN6LbT6L0PuVa7v?=
 =?iso-8859-1?Q?ORcl6gD+UgL83jbXns55fkcBgUEp/BPRtOy/yM19PdlkYtk70NEfUzMByF?=
 =?iso-8859-1?Q?1hOe7cLaTM7FI+dEfseVO/0RbntmbiEPfBudCmiUPU+Uhm1+/lOBlDIBG3?=
 =?iso-8859-1?Q?LWLa9KCqxLlist196+2ryHFkgZLqFB4We9D8M8j9AIcOx5ied3l5WQRlaN?=
 =?iso-8859-1?Q?41u9OTC75MQ9jQ02oFM5fqLx3DqszdTY6/53c2Hw6a8FOU7NlpUdkiQ6sd?=
 =?iso-8859-1?Q?TVZZ1XG4U7OQo/3vA3U+SH6hh82ArsTktLvDZM/p8WLRE0FlplLyPR5dED?=
 =?iso-8859-1?Q?VBxDf5JDnCpIvtg1X0PXmn4wuzWZ7HaK4m6iborqri+l3Mcwl7n5ZTkOrx?=
 =?iso-8859-1?Q?c8jipV3W4WTckFgmExOVtbtbkye0JhT1h7+KWFFgr3lup7y6nMh8Rbsx3h?=
 =?iso-8859-1?Q?qR5zn97XV+dn43wnD0dyO+kFj1RTseI4zYk9+c8wEvgos7KbPz10ZPLg?=
 =?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: f2747525-f901-49f7-63dd-08dbcb6fe61c
X-MS-Exchange-CrossTenant-originalarrivaltime: 12 Oct 2023 22:09:18.1381
 (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: CshJD4+uYU9GB7h7iX8nMQx7PiyIxfkhfPBvvk7xNyfv1DkuO6Fd0cQ8ZEuyJou3jn115a81HOPS86xu/a49Tlebmbl6856yYSXswhZ7FcY=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR03MB8758
X-Proofpoint-GUID: 04X6v8G0BIywl6wgAQe7Iz8w0rtLWt-c
X-Proofpoint-ORIG-GUID: 04X6v8G0BIywl6wgAQe7Iz8w0rtLWt-c
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-10-12_14,2023-10-12_01,2023-05-22_02
X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 adultscore=0 clxscore=1015
 mlxscore=0 bulkscore=0 mlxlogscore=999 lowpriorityscore=0 suspectscore=0
 spamscore=0 phishscore=0 impostorscore=0 priorityscore=1501 malwarescore=0
 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2309180000
 definitions=main-2310120186

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 v=
iew
of the command register.

Here is the full list of command register bits with notes about
emulation, along with QEMU behavior in the same situation:

PCI_COMMAND_IO - QEMU does not allow a guest to change value of this bit
in real device. Instead it is always set to 1. A guest can write to this
register, but writes are ignored.

PCI_COMMAND_MEMORY - QEMU behaves exactly as with PCI_COMMAND_IO. In
Xen case, we handle writes to this bit by mapping/unmapping BAR
regions. For devices assigned to DomUs, memory decoding will be
disabled and the initialization.

PCI_COMMAND_MASTER - Allow guest to control it. QEMU passes through
writes to this bit.

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. QEMU passes through writes of this bit, we will do
the same.

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. QEMU "emulates" access to
Cachline Size register by ignoring all writes to it. QEMU passes through
writes of PCI_COMMAND_INVALIDATE bit, we will do the same.

PCI_COMMAND_VGA_PALETTE - Enable VGA palette snooping. QEMU passes
through writes of this bit, we will do the same.

PCI_COMMAND_PARITY - Controls how device response to parity
errors. QEMU ignores writes to this bit, we will do the same.

PCI_COMMAND_WAIT - Reserved. Should be 0, but QEMU passes
through writes of this bit, so we will do the same.

PCI_COMMAND_SERR - Controls if device can assert SERR. QEMU ignores
writes to this bit, we will do the same.

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. QEMU ignores writes to this bit, we will do the same.

PCI_COMMAND_INTX_DISABLE - Disables INTx signals. If MSI(X) is
enabled, device is prohibited from asserting INTx as per
specification. Value after reset is 0. In QEMU case, it checks of INTx
was mapped for a device. If it is not, then guest can't control
PCI_COMMAND_INTX_DISABLE bit. In our case, we prohibit a guest to
change value of this bit if MSI(X) is enabled.

Signed-off-by: Oleksandr Andrushchenko <oleksandr_andrushchenko@epam.com>
Signed-off-by: Volodymyr Babchuk <volodymyr_babchuk@epam.com>
---
In v10:
- Added cf_check attribute to guest_cmd_read
- Removed warning about non-zero cmd
- Updated comment MSI code regarding disabling INTX
- Used ternary operator in vpci_add_register() call
- Disable memory decoding for DomUs in init_bars()
In 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 | 44 +++++++++++++++++++++++++++++++++++----
 xen/drivers/vpci/msi.c    |  6 ++++++
 xen/drivers/vpci/msix.c   |  4 ++++
 xen/include/xen/vpci.h    |  3 +++
 4 files changed, 53 insertions(+), 4 deletions(-)

diff --git a/xen/drivers/vpci/header.c b/xen/drivers/vpci/header.c
index efce0bc2ae..e8eed6a674 100644
--- a/xen/drivers/vpci/header.c
+++ b/xen/drivers/vpci/header.c
@@ -501,14 +501,32 @@ static int modify_bars(const struct pci_dev *pdev, ui=
nt16_t cmd, bool rom_only)
     return 0;
 }
=20
+/* 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 =3D data;
=20
+    if ( !is_hardware_domain(pdev->domain) )
+    {
+        const struct vpci *vpci =3D pdev->vpci;
+        uint16_t excluded =3D PCI_COMMAND_PARITY | PCI_COMMAND_SERR |
+            PCI_COMMAND_FAST_BACK;
+
+        header->guest_cmd =3D cmd;
+
+        if ( (vpci->msi && vpci->msi->enabled) ||
+             (vpci->msix && vpci->msi->enabled) )
+            excluded |=3D PCI_COMMAND_INTX_DISABLE;
+
+        cmd &=3D ~excluded;
+        cmd |=3D pci_conf_read16(pdev->sbdf, reg) & excluded;
+    }
+
     /*
-     * 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 !=3D !!(cmd & PCI_COMMAND_MEMORY) )
         /*
@@ -522,6 +540,14 @@ static void cf_check cmd_write(
         pci_conf_write16(pdev->sbdf, reg, cmd);
 }
=20
+static uint32_t cf_check guest_cmd_read(
+    const struct pci_dev *pdev, unsigned int reg, void *data)
+{
+    const struct vpci_header *header =3D data;
+
+    return header->guest_cmd;
+}
+
 static void cf_check bar_write(
     const struct pci_dev *pdev, unsigned int reg, uint32_t val, void *data=
)
 {
@@ -737,8 +763,9 @@ static int cf_check init_bars(struct pci_dev *pdev)
     }
=20
     /* Setup a handler for the command register. */
-    rc =3D vpci_add_register(pdev->vpci, vpci_hw_read16, cmd_write, PCI_CO=
MMAND,
-                           2, header);
+    rc =3D vpci_add_register(pdev->vpci,
+                           is_hwdom ? vpci_hw_read16 : guest_cmd_read,
+                           cmd_write, PCI_COMMAND, 2, header);
     if ( rc )
         return rc;
=20
@@ -750,6 +777,15 @@ 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_MEMOR=
Y);
=20
+    /*
+     * Clear PCI_COMMAND_MEMORY for DomUs, so they will always start with
+     * memory decoding disabled and to ensure that we will not call modify=
_bars()
+     * at the end of this function.
+     */
+    if ( !is_hwdom )
+        cmd &=3D ~PCI_COMMAND_MEMORY;
+    header->guest_cmd =3D cmd;
+
     for ( i =3D 0; i < num_bars; i++ )
     {
         uint8_t reg =3D PCI_BASE_ADDRESS_0 + i * 4;
diff --git a/xen/drivers/vpci/msi.c b/xen/drivers/vpci/msi.c
index 2faa54b7ce..0920bd071f 100644
--- a/xen/drivers/vpci/msi.c
+++ b/xen/drivers/vpci/msi.c
@@ -70,6 +70,12 @@ static void cf_check control_write(
=20
         if ( vpci_msi_arch_enable(msi, pdev, vectors) )
             return;
+
+        /*
+         * Make sure guest doesn't enable INTx while enabling MSI.
+         */
+        if ( !is_hardware_domain(pdev->domain) )
+            pci_intx(pdev, false);
     }
     else
         vpci_msi_arch_disable(msi, pdev);
diff --git a/xen/drivers/vpci/msix.c b/xen/drivers/vpci/msix.c
index b6abab47ef..9d0233d0e3 100644
--- a/xen/drivers/vpci/msix.c
+++ b/xen/drivers/vpci/msix.c
@@ -97,6 +97,10 @@ static void cf_check control_write(
         for ( i =3D 0; i < msix->max_entries; i++ )
             if ( !msix->entries[i].masked && msix->entries[i].updated )
                 update_entry(&msix->entries[i], pdev, i);
+
+        /* Make sure guest doesn't enable INTx while enabling MSI-X. */
+        if ( !is_hardware_domain(pdev->domain) )
+            pci_intx(pdev, false);
     }
     else if ( !new_enabled && msix->enabled )
     {
diff --git a/xen/include/xen/vpci.h b/xen/include/xen/vpci.h
index c5301e284f..60bdc10c13 100644
--- a/xen/include/xen/vpci.h
+++ b/xen/include/xen/vpci.h
@@ -87,6 +87,9 @@ struct vpci {
         } bars[PCI_HEADER_NORMAL_NR_BARS + 1];
         /* At most 6 BARS + 1 expansion ROM BAR. */
=20
+        /* Guest view of the PCI_COMMAND register. */
+        uint16_t guest_cmd;
+
         /*
          * Store whether the ROM enable bit is set (doesn't imply ROM BAR
          * is mapped into guest p2m) if there's a ROM BAR on the device.
--=20
2.42.0


From xen-devel-bounces@lists.xenproject.org Thu Oct 12 22:09:39 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 22:09:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616068.957800 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qr3s3-0001Yi-ED; Thu, 12 Oct 2023 22:09:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616068.957800; Thu, 12 Oct 2023 22:09: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 1qr3s3-0001Wm-5P; Thu, 12 Oct 2023 22:09:31 +0000
Received: by outflank-mailman (input) for mailman id 616068;
 Thu, 12 Oct 2023 22:09: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=Hhgq=F2=epam.com=prvs=4649fa389a=volodymyr_babchuk@srs-se1.protection.inumbo.net>)
 id 1qr3s1-00016s-2F
 for xen-devel@lists.xenproject.org; Thu, 12 Oct 2023 22:09:29 +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 00417a42-694c-11ee-9b0e-b553b5be7939;
 Fri, 13 Oct 2023 00:09:24 +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
 39CKqml7008371; Thu, 12 Oct 2023 22:09:21 GMT
Received: from eur01-db5-obe.outbound.protection.outlook.com
 (mail-db5eur01lp2050.outbound.protection.outlook.com [104.47.2.50])
 by mx0b-0039f301.pphosted.com (PPS) with ESMTPS id 3tpr7cr8dp-5
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT);
 Thu, 12 Oct 2023 22:09:20 +0000
Received: from VI1PR03MB3710.eurprd03.prod.outlook.com (2603:10a6:803:31::18)
 by DBAPR03MB6376.eurprd03.prod.outlook.com (2603:10a6:10:193::6) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.45; Thu, 12 Oct
 2023 22:09:15 +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.6863.043; Thu, 12 Oct 2023
 22: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: 00417a42-694c-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=TGW4xvV/izEZ5YfWl/iobS/kYRHZwM8WgHgRExmyMYF8kzodlECRQ7tmDXQwPTktvCjW18EsKR8B3LxUQQ1gOSLwnLZ2xhcxKXi4v4G7BWDmfsy0yxy/ovniyz/ksdSocx5FI3aGyo8yPDlLXXrhleB/AfFhC4JMlSYqdFsY7tHb9YZUg/Okk0tNE2p8RXiTkIf5+luvAkkS6AGmGzMorDJ3+c5A9p1JW/a4FI8sgNOJ6taA6gkV9njqpjK8xexgkp2LGQ2EbFbyI0xkh60yLTtFDKtBbpLi0oTiHOrdqKRFYhD28eOm7lU4FFeUAIa0o7Vo3C4+QyF6vP/BHY9hag==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=j3YYW5qeUu5BWrrKwAUFAd6TaoNJsexdP9B8tOFJn3M=;
 b=lWBdiwpt/ewIDlE6qmbwE+2oTi1nRNBtRYEZKfivP9FRKI7K/nWnBqtB+ue9YOb1N4wrQ9LSKDq7SVFkWDMkb+9qDlyHnsq1e260HPB4g1MFVxA3TpZt3u3C0koCalPeqXzVCLQBA6hn6lWqbGlqDs8yafOmxaF/jBON6hTI8hJmeegJIoOJ02hiHVpW7qLPf4IgkuSL7Bowxajw949a+MZ1BRG3pZNCZPNZimUlqHjhNShEQAbC/IUUgJWXvtpjEIbCG9F1+PvwH/eROagcZ17kQfWZlYzQBjUaXzpUxbFXz2NOKVcFzkYYDv3dHESvjN9ePc4JmIaebzNuML+WBg==
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=j3YYW5qeUu5BWrrKwAUFAd6TaoNJsexdP9B8tOFJn3M=;
 b=VY+XMmk1osqYFpb9q8zZnjbQwhovWQMSB7jBNP7K+z3jYYeR9tw+3llwjxEmLDwpYaup4F4KWBatOLckZixYdFe+vL5+r5L2ODSTDemSxvpxUvtmkgGHdWPQlHhpYYIgQo8baqM2SLAnMdnr8vjy+C+Qlpu7qfD2ARhzo/jCVZt+n7N4PU5UzsJNi3uS3DCjq2ZP4HCvwZUix9tlEGmcI5S3Byk4NCqXN2T1gUUWFXD/KYvFgflKwPaidN3ayY5B1YwgsY0haTsvzvvy1EtQ/m7q64xxO/hV+eMYq7hVxJJ+m3x9kMwfW1xATLyqGxxzp4ldRJpJFFkaAsaWDLow1w==
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>,
        Oleksandr Andrushchenko
	<Oleksandr_Andrushchenko@epam.com>,
        Jan Beulich <jbeulich@suse.com>,
        Andrew
 Cooper <andrew.cooper3@citrix.com>,
        =?utf-8?B?Um9nZXIgUGF1IE1vbm7DqQ==?=
	<roger.pau@citrix.com>,
        Wei Liu <wl@xen.org>, Jun Nakajima
	<jun.nakajima@intel.com>,
        Kevin Tian <kevin.tian@intel.com>, Paul Durrant
	<paul@xen.org>,
        Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: [PATCH v10 03/17] vpci: use per-domain PCI lock to protect vpci
 structure
Thread-Topic: [PATCH v10 03/17] vpci: use per-domain PCI lock to protect vpci
 structure
Thread-Index: AQHZ/Vi9bRc3EUPSDEy0THfJgPlJLA==
Date: Thu, 12 Oct 2023 22:09:15 +0000
Message-ID: <20231012220854.2736994-4-volodymyr_babchuk@epam.com>
References: <20231012220854.2736994-1-volodymyr_babchuk@epam.com>
In-Reply-To: <20231012220854.2736994-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_|DBAPR03MB6376:EE_
x-ms-office365-filtering-correlation-id: 3947b02b-484e-427c-f1ee-08dbcb6fdfb8
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: 
 7L1lYIiSqChxt0uxM1bq5tJ3gvwVw318n5K2Y0AMCB/PWDVmRcjmVTsG9VTbuhs4gKftZc3YBkHbpcnv3IGhDQCdiXpSs/6ZSoOaNqVoVKw49SqEXzjLCp1ajkswwUudMFTk8wgSiifbWh4VCOaEK9lIHkhBVKHqTC6SZkrekrMEZcY5fQ24ovlEJJXEHiebbELDjkS4HxA9U4hOxdQBd0FChmZZ6Z75+tzjKHea71AQt6YmP1K4DOzQeht4DhBKJDG4BDV0pBLfoYd0fJyZ73Fm3Dq1K265+xMaLLwk9yhh+x8nRzTqv/zpxGfMxz5BMiHJ6YAiRaJlk/7Mqh8UgilSX4A0PR4V6wr/1p5qWPWToliZubBRM9IYUIjPKFLc0xG0ddqjCxGDGOGJGtBCYdEc9ueiSFQM7p2bTcyLHrHZCDWjsp34DwTvDA0eUYGl+YtWsucaX6bGYfzQ4Q+kRm2wv3Uouxq/arkv7WD2/71kBX1uuIT9j10oUNNykLMo9HUHN9kSJ4RoKms7/ebyPmuSK6ZS+70HDPSmjn9YRK7+/UGLChZEwNMdCix+faDcd9MY7SsK96gu7cscZiU4IFVxD9XhCuei8KYj6xBiUzP4EtZEYAogFY2vnVqL41S6eZLKmLH8r1GjSzQRDRyqHg==
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)(39860400002)(396003)(346002)(366004)(136003)(230922051799003)(451199024)(64100799003)(186009)(1800799009)(107886003)(2616005)(71200400001)(26005)(6512007)(6506007)(55236004)(36756003)(86362001)(38100700002)(38070700005)(122000001)(1076003)(83380400001)(91956017)(41300700001)(64756008)(316002)(76116006)(54906003)(66946007)(66446008)(6916009)(66556008)(66476007)(2906002)(8936002)(30864003)(5660300002)(8676002)(4326008)(6486002)(478600001)(579004)(559001)(309714004);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: 
 =?utf-8?B?MlZqdk15QnFNcDJiRkE0Y0w5K1Y0N1N0VXNkUFRQWHhLTnkzRnRSNVZleG5v?=
 =?utf-8?B?NjVXWno0SFV6aDN2VmNkY2F3M0xzWjViWWVqUnZqYjRHOVdqZFU0L2JSbktu?=
 =?utf-8?B?VmdBdE96RkpxWjBNSDZlWHZiVkpXeDBBQW13QmJ3VmhBbHFudHpyL2tDOGQ4?=
 =?utf-8?B?QTZiM0dTOVBOcFk5UmpFUlFjcGFQVko4WTRGSS9uY2tRL2JkaFJJbW9IcGlR?=
 =?utf-8?B?T0dPZk14QVBTRVpEanpNZUNzdzF5MSs2TzhVblg2WDJwbzRCUEUwQ05laDls?=
 =?utf-8?B?cGZpR1FRWS9hMmR6WGN0aU1nd1pHUjFTS2lrMlhaT1N1emEwT214WGpHUmRi?=
 =?utf-8?B?bnFSQWNISndCVlA0YlhPNFkzUWd4VFVLaWJqdHZadHF4L2xjYWEzM0duUGJs?=
 =?utf-8?B?TzBWeXh6SGtKOE1BYjU5K3lTQ3psQnkrY2o3YU5FM0NjeGZScUpSMFFjUFV2?=
 =?utf-8?B?bUl2NThnUml6YmdoZmljS1RweS9iUDVKem9WV1p4a3FBTDlmaWVkWGtmT0pS?=
 =?utf-8?B?NEFiMHE5MVN4UldCa1lieUFRL1VhTk9LcWxwR1ZVZmREeDZrOGNGN3hYT3Az?=
 =?utf-8?B?SHdtSlhvT2dscG9GUmo4U2VNSHpzYXBOZnpLa01zUmVVOVh1bWdnR3B6RUZ2?=
 =?utf-8?B?VERrTnVVa1JMNFc3NWxRc2hIbUV4NnlyRVFnVkVnWFprUm5EM0grY1BtWGl4?=
 =?utf-8?B?NnVXYk15dEF4NGdROWdKNTdROFZMSUk3djZiZkFYQXdhN3FyVlpjcTRpUU9V?=
 =?utf-8?B?cmFjS0xCTWd2azBrWXo1d3ovNnVqb3U1b0tXMUFvN21xZkhPUkMvbjdBTkZt?=
 =?utf-8?B?Rmt6M2pER0FBK2l1ekRXN0VNUHBmVVp5bHZ4T3gwTjhRei9uK3oxeUYwdG9w?=
 =?utf-8?B?OUZ6RlAvY1lhMitOVkhTZTRHRGt6QmcrdWZ4UUk3bVdnUzdVWkNRTTlGM0tX?=
 =?utf-8?B?MVBzT0FiMldiS25yZys4S3FCeDZnZVUrdFd5ZmxsZ292OXp5TFE1czExLzJJ?=
 =?utf-8?B?N09EY0wyejNwbzVLNEtSMXQwa2ZHQ1g3MFkxRXlPOGRXMmg5VGgxd01Xckpj?=
 =?utf-8?B?WWtIVm1qZWM0MHdNVWpzRlVlQS9kM2ZhcXE0bk1ValdieDNPcGNTQ2pCNWNj?=
 =?utf-8?B?eUx3T1hRTGoxU0s4ajJPcmhJRWVQclQ2MW8yMCtkRDN4R293b1B1RDRmdDJj?=
 =?utf-8?B?OVdwNy9lM1hVZTI2dHdkWkp5am5sbUpiZXRCTEgrUC9BQi90eUhIMFhxU3VZ?=
 =?utf-8?B?bWxCVEVmUENqVjhpUVdPblZmb2FGWDBkVmI1K3VROFNOR2R3dnZmQjBCZVRp?=
 =?utf-8?B?RjRBYlFiZktjbEIvWmpoSC8vRUZiVUcrYlNiM3ZNUWF1NkJnbGdNVUVKOHRR?=
 =?utf-8?B?SjlSeE5rSWpqTGx5aHFVVkVDakpGQnIrcmtOSERjeVZFZ0VPQkhjS25vSHBC?=
 =?utf-8?B?M0hDZHZkRkNWQUdtY1JXbG9KOGtNZWZTWldScnVrdkhVcE9wL0lxZ2JrcllU?=
 =?utf-8?B?S3JMMnZ0b1ZWeVZSMjFYd0lNU2ZMYjRzbEpiQzkvWEorT1VVb0hmR2ppTHRC?=
 =?utf-8?B?RDl1ZVRtZFVZMGluZ0ZmWmo4UG5kazZjdDFEcmVjbUJpSkNxaXpka045NFM5?=
 =?utf-8?B?LzV6dnFDbTZqa09ZUjU3SHNDUy9OdEIyM1pnWW9DQkhsQkxvc0Z1c04zenhZ?=
 =?utf-8?B?a05QWGROY2xzQUdUVUN0cnA0Zi9BRFlndnJTL2c2YTZPWUFnZGVIWVFzMzVp?=
 =?utf-8?B?M3dTSmdoRFg4eG5XdVBGUHcxY2pwcjMzLzJEMUNlblZlWGNWMGw0V2ZURXJN?=
 =?utf-8?B?WjByUXEzUlFLb0JoeDJMYWtQUmU0aTlSWDlEQnNsUDl1WTNUQUxBT3REVm9L?=
 =?utf-8?B?UmpiN1oya2FpYzBUMFo2MUtsbGhmeC9uc3hkTkhoakRuT1FpQ2lxR0dIVXQw?=
 =?utf-8?B?amZUWTA5NFI2d1daVWE2N3Jsd2hEa3grZmozSkYzbzlYbXI0OXBGVGllVjYy?=
 =?utf-8?B?clFESG5ZTVRwM0txekR1Z0E3Z2tPQmVrWG15T1RBakp0ZXo2WDg1U29TNllG?=
 =?utf-8?B?SWRmazMyZ3NoaDgzeVNvNXM3WUVDNzZWUzNKQ0pXc0ZkYzBwMUdQeE9zODBX?=
 =?utf-8?B?RlN1SUdOblJtbmVVMTk0bTc2R1NtVUtxVlVaWDEyeXdMRkRBcXAyVDlvRHIr?=
 =?utf-8?B?a0E9PQ==?=
Content-Type: text/plain; charset="utf-8"
Content-ID: <57387D3FB082414E919B9386B171DFEE@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: 3947b02b-484e-427c-f1ee-08dbcb6fdfb8
X-MS-Exchange-CrossTenant-originalarrivaltime: 12 Oct 2023 22:09:15.4954
 (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: Db/z4yYebUNvQxz2QyWNDZ1SIeEdMrh3rd9UWdl5TsDiRVI76yCscIrKBtHsFnwWEzUo8G/cr7kiyL/QmNhpD6+aNCgkRRjIiZn04ebQT4o=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBAPR03MB6376
X-Proofpoint-GUID: ESMUjASsK3lvBmr-MMh_uOmwLmWuAyEM
X-Proofpoint-ORIG-GUID: ESMUjASsK3lvBmr-MMh_uOmwLmWuAyEM
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-10-12_14,2023-10-12_01,2023-05-22_02
X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 adultscore=0 spamscore=0
 mlxscore=0 lowpriorityscore=0 suspectscore=0 priorityscore=1501
 impostorscore=0 clxscore=1015 malwarescore=0 bulkscore=0 mlxlogscore=999
 phishscore=0 classifier=spam adjust=0 reason=mlx scancount=1
 engine=8.12.0-2309180000 definitions=main-2310120186

RnJvbTogT2xla3NhbmRyIEFuZHJ1c2hjaGVua28gPG9sZWtzYW5kcl9hbmRydXNoY2hlbmtvQGVw
YW0uY29tPg0KDQpVc2UgYSBwcmV2aW91c2x5IGludHJvZHVjZWQgcGVyLWRvbWFpbiByZWFkL3dy
aXRlIGxvY2sgdG8gY2hlY2sNCndoZXRoZXIgdnBjaSBpcyBwcmVzZW50LCBzbyB3ZSBhcmUgc3Vy
ZSB0aGVyZSBhcmUgbm8gYWNjZXNzZXMgdG8gdGhlDQpjb250ZW50cyBvZiB0aGUgdnBjaSBzdHJ1
Y3QgaWYgbm90LiBUaGlzIGxvY2sgY2FuIGJlIHVzZWQgKGFuZCBpbiBhDQpmZXcgY2FzZXMgaXMg
dXNlZCByaWdodCBhd2F5KSBzbyB0aGF0IHZwY2kgcmVtb3ZhbCBjYW4gYmUgcGVyZm9ybWVkDQp3
aGlsZSBob2xkaW5nIHRoZSBsb2NrIGluIHdyaXRlIG1vZGUuIFByZXZpb3VzbHkgc3VjaCByZW1v
dmFsIGNvdWxkDQpyYWNlIHdpdGggdnBjaV9yZWFkIGZvciBleGFtcGxlLg0KDQpXaGVuIHRha2lu
ZyBib3RoIGQtPnBjaV9sb2NrIGFuZCBwZGV2LT52cGNpLT5sb2NrLCB0aGV5IHNob3VsZCBiZQ0K
dGFrZW4gaW4gdGhpcyBleGFjdCBvcmRlcjogZC0+cGNpX2xvY2sgdGhlbiBwZGV2LT52cGNpLT5s
b2NrIHRvIGF2b2lkDQpwb3NzaWJsZSBkZWFkbG9jayBzaXR1YXRpb25zLg0KDQoxLiBQZXItZG9t
YWluJ3MgcGNpX3J3bG9jayBpcyB1c2VkIHRvIHByb3RlY3QgcGRldi0+dnBjaSBzdHJ1Y3R1cmUN
CmZyb20gYmVpbmcgcmVtb3ZlZC4NCg0KMi4gV3JpdGluZyB0aGUgY29tbWFuZCByZWdpc3RlciBh
bmQgUk9NIEJBUiByZWdpc3RlciBtYXkgdHJpZ2dlcg0KbW9kaWZ5X2JhcnMgdG8gcnVuLCB3aGlj
aCBpbiB0dXJuIG1heSBhY2Nlc3MgbXVsdGlwbGUgcGRldnMgd2hpbGUNCmNoZWNraW5nIGZvciB0
aGUgZXhpc3RpbmcgQkFSJ3Mgb3ZlcmxhcC4gVGhlIG92ZXJsYXBwaW5nIGNoZWNrLCBpZg0KZG9u
ZSB1bmRlciB0aGUgcmVhZCBsb2NrLCByZXF1aXJlcyB2cGNpLT5sb2NrIHRvIGJlIGFjcXVpcmVk
IG9uIGJvdGgNCmRldmljZXMgYmVpbmcgY29tcGFyZWQsIHdoaWNoIG1heSBwcm9kdWNlIGEgZGVh
ZGxvY2suIEl0IGlzIG5vdA0KcG9zc2libGUgdG8gdXBncmFkZSByZWFkIGxvY2sgdG8gd3JpdGUg
bG9jayBpbiBzdWNoIGEgY2FzZS4gU28sIGluDQpvcmRlciB0byBwcmV2ZW50IHRoZSBkZWFkbG9j
aywgdXNlIGQtPnBjaV9sb2NrIGluc3RlYWQuIFRvIHByZXZlbnQNCmRlYWRsb2NrIHdoaWxlIGxv
Y2tpbmcgYm90aCBod2RvbS0+cGNpX2xvY2sgYW5kIGRvbV94ZW4tPnBjaV9sb2NrLA0KYWx3YXlz
IGxvY2sgaHdkb20gZmlyc3QuDQoNCkFsbCBvdGhlciBjb2RlLCB3aGljaCBkb2Vzbid0IGxlYWQg
dG8gcGRldi0+dnBjaSBkZXN0cnVjdGlvbiBhbmQgZG9lcw0Kbm90IGFjY2VzcyBtdWx0aXBsZSBw
ZGV2cyBhdCB0aGUgc2FtZSB0aW1lLCBjYW4gc3RpbGwgdXNlIGENCmNvbWJpbmF0aW9uIG9mIHRo
ZSByZWFkIGxvY2sgYW5kIHBkZXYtPnZwY2ktPmxvY2suDQoNCjMuIERyb3AgY29uc3QgcXVhbGlm
aWVyIHdoZXJlIHRoZSBuZXcgcndsb2NrIGlzIHVzZWQgYW5kIHRoaXMgaXMNCmFwcHJvcHJpYXRl
Lg0KDQo0LiBEbyBub3QgY2FsbCBwcm9jZXNzX3BlbmRpbmdfc29mdGlycXMgd2l0aCBhbnkgbG9j
a3MgaGVsZC4gRm9yIHRoYXQNCnVubG9jayBwcmlvciB0aGUgY2FsbCBhbmQgcmUtYWNxdWlyZSB0
aGUgbG9ja3MgYWZ0ZXIuIEFmdGVyDQpyZS1hY3F1aXJpbmcgdGhlIGxvY2sgdGhlcmUgaXMgbm8g
bmVlZCB0byBjaGVjayBpZiBwZGV2LT52cGNpIGV4aXN0czoNCiAtIGluIGFwcGx5X21hcCBiZWNh
dXNlIG9mIHRoZSBjb250ZXh0IGl0IGlzIGNhbGxlZCAobm8gcmFjZSBjb25kaXRpb24NCiAgIHBv
c3NpYmxlKQ0KIC0gZm9yIE1TSS9NU0ktWCBkZWJ1ZyBjb2RlIGJlY2F1c2UgaXQgaXMgY2FsbGVk
IGF0IHRoZSBlbmQgb2YNCiAgIHBkZXYtPnZwY2kgYWNjZXNzIGFuZCBubyBmdXJ0aGVyIGFjY2Vz
cyB0byBwZGV2LT52cGNpIGlzIG1hZGUNCg0KNS4gVXNlIGQtPnBjaV9sb2NrIGFyb3VuZCBmb3Jf
ZWFjaF9wZGV2IGFuZCBwY2lfZ2V0X3BkZXZfYnlfZG9tYWluDQp3aGlsZSBhY2Nlc3NpbmcgcGRl
dnMgaW4gdnBjaSBjb2RlLg0KDQo2LiBXZSBhcmUgcmVtb3ZpbmcgbXVsdGlwbGUgQVNTRVJUKHBj
aWRldnNfbG9ja2VkKCkpIGluc3RhbmNlcyBiZWNhdXNlDQp0aGV5IGFyZSB0b28gc3RyaWN0IG5v
dzogdGhleSBzaG91bGQgYmUgY29ycmVjdGVkIHRvDQpBU1NFUlQocGNpZGV2c19sb2NrZWQoKSB8
fCByd19pc19sb2NrZWQoJmQtPnBjaV9sb2NrKSksIGJ1dCBwcm9ibGVtIGlzDQp0aGF0IG1lbnRp
b25lZCBpbnN0YW5jZXMgZG9lcyBub3QgaGF2ZSBhY2Nlc3MgdG8gdGhlIGRvbWFpbg0KcG9pbnRl
ciBhbmQgaXQgaXMgbm90IGZlYXNpYmxlIHRvIHBhc3MgYSBkb21haW4gcG9pbnRlciB0byBhIGZ1
bmN0aW9uDQpqdXN0IGZvciBkZWJ1Z2dpbmcgcHVycG9zZXMuDQoNClRoZXJlIGlzIGEgcG9zc2li
bGUgbG9jayBpbnZlcnNpb24gaW4gTVNJIGNvZGUsIGFzIHNvbWUgcGFydHMgb2YgaXQNCmFjcXVp
cmUgcGNpZGV2c19sb2NrKCkgd2hpbGUgYWxyZWFkeSBob2xkaW5nIGQtPnBjaV9sb2NrLg0KDQpT
dWdnZXN0ZWQtYnk6IFJvZ2VyIFBhdSBNb25uw6kgPHJvZ2VyLnBhdUBjaXRyaXguY29tPg0KU3Vn
Z2VzdGVkLWJ5OiBKYW4gQmV1bGljaCA8amJldWxpY2hAc3VzZS5jb20+DQpTaWduZWQtb2ZmLWJ5
OiBPbGVrc2FuZHIgQW5kcnVzaGNoZW5rbyA8b2xla3NhbmRyX2FuZHJ1c2hjaGVua29AZXBhbS5j
b20+DQpTaWduZWQtb2ZmLWJ5OiBWb2xvZHlteXIgQmFiY2h1ayA8dm9sb2R5bXlyX2JhYmNodWtA
ZXBhbS5jb20+DQoNCi0tLQ0KQ2hhbmdlcyBpbiB2MTA6DQogLSBNb3ZlZCBwcmludGsgcGFzIGxv
Y2tlZCBhcmVhDQogLSBSZXR1cm5lZCBiYWNrIEFTU0VSVHMNCiAtIEFkZGVkIG5ldyBwYXJhbWV0
ZXIgdG8gYWxsb2NhdGVfYW5kX21hcF9tc2lfcGlycSgpIHNvIGl0IGtub3dzIGlmDQogaXQgc2hv
dWxkIHRha2UgdGhlIGdsb2JhbCBwY2kgbG9jaw0KIC0gQWRkZWQgY29tbWVudCBhYm91dCBwb3Nz
aWJsZSBpbXByb3ZlbWVudCBpbiB2cGNpX3dyaXRlDQogLSBDaGFuZ2VkIEFTU0VSVChyd19pc19s
b2NrZWQoKSkgdG8gcndfaXNfd3JpdGVfbG9ja2VkKCkgaW4NCiAgIGFwcHJvcHJpYXRlIHBsYWNl
cw0KIC0gUmVuYW1lZCByZWxlYXNlX2RvbWFpbl9sb2NrcygpIHRvIHJlbGVhc2VfZG9tYWluX3dy
aXRlX2xvY2tzKCkNCiAtIG1vdmVkIGRvbWFpbl9kb25lIGxhYmVsIGluIHZwY2lfZHVtcF9tc2ko
KSB0byBjb3JyZWN0IHBsYWNlDQpDaGFuZ2VzIGluIHY5Og0KIC0gZXh0ZW5kZWQgbG9ja2VkIHJl
Z2lvbiB0byBwcm90ZWN0IHZwY2lfcmVtb3ZlX2RldmljZSBhbmQNCiAgIHZwY2lfYWRkX2hhbmRs
ZXJzKCkgY2FsbHMNCiAtIHZwY2lfd3JpdGUoKSB0YWtlcyBsb2NrIGluIHRoZSB3cml0ZSBtb2Rl
IHRvIHByb3RlY3QNCiAgIHBvdGVudGlhbCBjYWxsIHRvIG1vZGlmeV9iYXJzKCkNCiAtIHJlbmFt
ZWQgbG9jayByZWxlYXNpbmcgZnVuY3Rpb24NCiAtIHJlbW92ZWQgQVNTRVJUKClzIGZyb20gbXNp
IGNvZGUNCiAtIGFkZGVkIHRyeWxvY2sgaW4gdnBjaV9kdW1wX21zaQ0KDQpDaGFuZ2VzIGluIHY4
Og0KIC0gY2hhbmdlZCBkLT52cGNpX2xvY2sgdG8gZC0+cGNpX2xvY2sNCiAtIGludHJvZHVjaW5n
IGQtPnBjaV9sb2NrIGluIGEgc2VwYXJhdGUgcGF0Y2gNCiAtIGV4dGVuZGVkIGxvY2tlZCByZWdp
b24gaW4gdnBjaV9wcm9jZXNzX3BlbmRpbmcNCiAtIHJlbW92ZWQgcGNpZGV2c19sb2NraXMgdnBj
aV9kdW1wX21zaSgpDQogLSByZW1vdmVkIHNvbWUgY2hhbmdlcyBhcyB0aGV5IGFyZSBub3QgbmVl
ZGVkIHdpdGgNCiAgIHRoZSBuZXcgbG9ja2luZyBzY2hlbWUNCiAtIGFkZGVkIGhhbmRsaW5nIGZv
ciBod2RvbSAmJiBkb21feGVuIGNhc2UNCi0tLQ0KIHhlbi9hcmNoL3g4Ni9odm0vdm1zaS5jICAg
ICAgICB8IDI2ICsrKysrKysrLS0tLS0tLS0tDQogeGVuL2FyY2gveDg2L2h2bS92bXgvdm14LmMg
ICAgIHwgIDIgLS0NCiB4ZW4vYXJjaC94ODYvaW5jbHVkZS9hc20vaXJxLmggfCAgMyArLQ0KIHhl
bi9hcmNoL3g4Ni9pcnEuYyAgICAgICAgICAgICB8IDEyICsrKystLS0tDQogeGVuL2FyY2gveDg2
L21zaS5jICAgICAgICAgICAgIHwgMTAgKystLS0tLQ0KIHhlbi9hcmNoL3g4Ni9waHlzZGV2LmMg
ICAgICAgICB8ICAyICstDQogeGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvcGNpLmMgIHwgIDkgKysr
LS0tDQogeGVuL2RyaXZlcnMvdnBjaS9oZWFkZXIuYyAgICAgIHwgMTggKysrKysrKysrKysrDQog
eGVuL2RyaXZlcnMvdnBjaS9tc2kuYyAgICAgICAgIHwgMjggKysrKysrKysrKysrKysrKy0tDQog
eGVuL2RyaXZlcnMvdnBjaS9tc2l4LmMgICAgICAgIHwgNTIgKysrKysrKysrKysrKysrKysrKysr
KysrKysrKystLS0tLQ0KIHhlbi9kcml2ZXJzL3ZwY2kvdnBjaS5jICAgICAgICB8IDUxICsrKysr
KysrKysrKysrKysrKysrKysrKysrKysrKystLQ0KIDExIGZpbGVzIGNoYW5nZWQsIDE2NiBpbnNl
cnRpb25zKCspLCA0NyBkZWxldGlvbnMoLSkNCg0KZGlmZiAtLWdpdCBhL3hlbi9hcmNoL3g4Ni9o
dm0vdm1zaS5jIGIveGVuL2FyY2gveDg2L2h2bS92bXNpLmMNCmluZGV4IDEyOGYyMzYzNjIuLjZi
MzNhODAxMjAgMTAwNjQ0DQotLS0gYS94ZW4vYXJjaC94ODYvaHZtL3Ztc2kuYw0KKysrIGIveGVu
L2FyY2gveDg2L2h2bS92bXNpLmMNCkBAIC00NjgsNyArNDY4LDcgQEAgaW50IG1zaXh0YmxfcHRf
cmVnaXN0ZXIoc3RydWN0IGRvbWFpbiAqZCwgc3RydWN0IHBpcnEgKnBpcnEsIHVpbnQ2NF90IGd0
YWJsZSkNCiAgICAgc3RydWN0IG1zaXh0YmxfZW50cnkgKmVudHJ5LCAqbmV3X2VudHJ5Ow0KICAg
ICBpbnQgciA9IC1FSU5WQUw7DQogDQotICAgIEFTU0VSVChwY2lkZXZzX2xvY2tlZCgpKTsNCisg
ICAgQVNTRVJUKHBjaWRldnNfbG9ja2VkKCkgfHwgcndfaXNfbG9ja2VkKCZkLT5wY2lfbG9jaykp
Ow0KICAgICBBU1NFUlQocndfaXNfd3JpdGVfbG9ja2VkKCZkLT5ldmVudF9sb2NrKSk7DQogDQog
ICAgIGlmICggIW1zaXh0YmxfaW5pdGlhbGlzZWQoZCkgKQ0KQEAgLTUzOCw3ICs1MzgsNyBAQCB2
b2lkIG1zaXh0YmxfcHRfdW5yZWdpc3RlcihzdHJ1Y3QgZG9tYWluICpkLCBzdHJ1Y3QgcGlycSAq
cGlycSkNCiAgICAgc3RydWN0IHBjaV9kZXYgKnBkZXY7DQogICAgIHN0cnVjdCBtc2l4dGJsX2Vu
dHJ5ICplbnRyeTsNCiANCi0gICAgQVNTRVJUKHBjaWRldnNfbG9ja2VkKCkpOw0KKyAgICBBU1NF
UlQocGNpZGV2c19sb2NrZWQoKSB8fCByd19pc19sb2NrZWQoJmQtPnBjaV9sb2NrKSk7DQogICAg
IEFTU0VSVChyd19pc193cml0ZV9sb2NrZWQoJmQtPmV2ZW50X2xvY2spKTsNCiANCiAgICAgaWYg
KCAhbXNpeHRibF9pbml0aWFsaXNlZChkKSApDQpAQCAtNjg0LDcgKzY4NCw3IEBAIHN0YXRpYyBp
bnQgdnBjaV9tc2lfdXBkYXRlKGNvbnN0IHN0cnVjdCBwY2lfZGV2ICpwZGV2LCB1aW50MzJfdCBk
YXRhLA0KIHsNCiAgICAgdW5zaWduZWQgaW50IGk7DQogDQotICAgIEFTU0VSVChwY2lkZXZzX2xv
Y2tlZCgpKTsNCisgICAgQVNTRVJUKHJ3X2lzX2xvY2tlZCgmcGRldi0+ZG9tYWluLT5wY2lfbG9j
aykpOw0KIA0KICAgICBpZiAoIChhZGRyZXNzICYgTVNJX0FERFJfQkFTRV9NQVNLKSAhPSBNU0lf
QUREUl9IRUFERVIgKQ0KICAgICB7DQpAQCAtNzI1LDggKzcyNSw4IEBAIHZvaWQgdnBjaV9tc2lf
YXJjaF91cGRhdGUoc3RydWN0IHZwY2lfbXNpICptc2ksIGNvbnN0IHN0cnVjdCBwY2lfZGV2ICpw
ZGV2KQ0KICAgICBpbnQgcmM7DQogDQogICAgIEFTU0VSVChtc2ktPmFyY2gucGlycSAhPSBJTlZB
TElEX1BJUlEpOw0KKyAgICBBU1NFUlQocndfaXNfbG9ja2VkKCZwZGV2LT5kb21haW4tPnBjaV9s
b2NrKSk7DQogDQotICAgIHBjaWRldnNfbG9jaygpOw0KICAgICBmb3IgKCBpID0gMDsgaSA8IG1z
aS0+dmVjdG9ycyAmJiBtc2ktPmFyY2guYm91bmQ7IGkrKyApDQogICAgIHsNCiAgICAgICAgIHN0
cnVjdCB4ZW5fZG9tY3RsX2JpbmRfcHRfaXJxIHVuYmluZCA9IHsNCkBAIC03NDUsNyArNzQ1LDYg
QEAgdm9pZCB2cGNpX21zaV9hcmNoX3VwZGF0ZShzdHJ1Y3QgdnBjaV9tc2kgKm1zaSwgY29uc3Qg
c3RydWN0IHBjaV9kZXYgKnBkZXYpDQogDQogICAgIG1zaS0+YXJjaC5ib3VuZCA9ICF2cGNpX21z
aV91cGRhdGUocGRldiwgbXNpLT5kYXRhLCBtc2ktPmFkZHJlc3MsDQogICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgbXNpLT52ZWN0b3JzLCBtc2ktPmFyY2gucGlycSwgbXNp
LT5tYXNrKTsNCi0gICAgcGNpZGV2c191bmxvY2soKTsNCiB9DQogDQogc3RhdGljIGludCB2cGNp
X21zaV9lbmFibGUoY29uc3Qgc3RydWN0IHBjaV9kZXYgKnBkZXYsIHVuc2lnbmVkIGludCBuciwN
CkBAIC03NjIsNyArNzYxLDcgQEAgc3RhdGljIGludCB2cGNpX21zaV9lbmFibGUoY29uc3Qgc3Ry
dWN0IHBjaV9kZXYgKnBkZXYsIHVuc2lnbmVkIGludCBuciwNCiAgICAgcmMgPSBhbGxvY2F0ZV9h
bmRfbWFwX21zaV9waXJxKHBkZXYtPmRvbWFpbiwgLTEsICZwaXJxLA0KICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgdGFibGVfYmFzZSA/IE1BUF9QSVJRX1RZUEVfTVNJDQogICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogTUFQX1BJUlFfVFlQ
RV9NVUxUSV9NU0ksDQotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmbXNpX2lu
Zm8pOw0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJm1zaV9pbmZvLCBmYWxz
ZSk7DQogICAgIGlmICggcmMgKQ0KICAgICB7DQogICAgICAgICBnZHByaW50ayhYRU5MT0dfRVJS
LCAiJXBwOiBmYWlsZWQgdG8gbWFwIFBJUlE6ICVkXG4iLCAmcGRldi0+c2JkZiwgcmMpOw0KQEAg
LTc3OCwxNSArNzc3LDEzIEBAIGludCB2cGNpX21zaV9hcmNoX2VuYWJsZShzdHJ1Y3QgdnBjaV9t
c2kgKm1zaSwgY29uc3Qgc3RydWN0IHBjaV9kZXYgKnBkZXYsDQogICAgIGludCByYzsNCiANCiAg
ICAgQVNTRVJUKG1zaS0+YXJjaC5waXJxID09IElOVkFMSURfUElSUSk7DQorICAgIEFTU0VSVChy
d19pc19sb2NrZWQoJnBkZXYtPmRvbWFpbi0+cGNpX2xvY2spKTsNCiAgICAgcmMgPSB2cGNpX21z
aV9lbmFibGUocGRldiwgdmVjdG9ycywgMCk7DQogICAgIGlmICggcmMgPCAwICkNCiAgICAgICAg
IHJldHVybiByYzsNCiAgICAgbXNpLT5hcmNoLnBpcnEgPSByYzsNCi0NCi0gICAgcGNpZGV2c19s
b2NrKCk7DQogICAgIG1zaS0+YXJjaC5ib3VuZCA9ICF2cGNpX21zaV91cGRhdGUocGRldiwgbXNp
LT5kYXRhLCBtc2ktPmFkZHJlc3MsIHZlY3RvcnMsDQogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgbXNpLT5hcmNoLnBpcnEsIG1zaS0+bWFzayk7DQotICAgIHBjaWRldnNf
dW5sb2NrKCk7DQogDQogICAgIHJldHVybiAwOw0KIH0NCkBAIC03OTcsOCArNzk0LDggQEAgc3Rh
dGljIHZvaWQgdnBjaV9tc2lfZGlzYWJsZShjb25zdCBzdHJ1Y3QgcGNpX2RldiAqcGRldiwgaW50
IHBpcnEsDQogICAgIHVuc2lnbmVkIGludCBpOw0KIA0KICAgICBBU1NFUlQocGlycSAhPSBJTlZB
TElEX1BJUlEpOw0KKyAgICBBU1NFUlQocndfaXNfbG9ja2VkKCZwZGV2LT5kb21haW4tPnBjaV9s
b2NrKSk7DQogDQotICAgIHBjaWRldnNfbG9jaygpOw0KICAgICBmb3IgKCBpID0gMDsgaSA8IG5y
ICYmIGJvdW5kOyBpKysgKQ0KICAgICB7DQogICAgICAgICBzdHJ1Y3QgeGVuX2RvbWN0bF9iaW5k
X3B0X2lycSBiaW5kID0gew0KQEAgLTgxNCw3ICs4MTEsNiBAQCBzdGF0aWMgdm9pZCB2cGNpX21z
aV9kaXNhYmxlKGNvbnN0IHN0cnVjdCBwY2lfZGV2ICpwZGV2LCBpbnQgcGlycSwNCiAgICAgd3Jp
dGVfbG9jaygmcGRldi0+ZG9tYWluLT5ldmVudF9sb2NrKTsNCiAgICAgdW5tYXBfZG9tYWluX3Bp
cnEocGRldi0+ZG9tYWluLCBwaXJxKTsNCiAgICAgd3JpdGVfdW5sb2NrKCZwZGV2LT5kb21haW4t
PmV2ZW50X2xvY2spOw0KLSAgICBwY2lkZXZzX3VubG9jaygpOw0KIH0NCiANCiB2b2lkIHZwY2lf
bXNpX2FyY2hfZGlzYWJsZShzdHJ1Y3QgdnBjaV9tc2kgKm1zaSwgY29uc3Qgc3RydWN0IHBjaV9k
ZXYgKnBkZXYpDQpAQCAtODU0LDYgKzg1MCw4IEBAIGludCB2cGNpX21zaXhfYXJjaF9lbmFibGVf
ZW50cnkoc3RydWN0IHZwY2lfbXNpeF9lbnRyeSAqZW50cnksDQogICAgIGludCByYzsNCiANCiAg
ICAgQVNTRVJUKGVudHJ5LT5hcmNoLnBpcnEgPT0gSU5WQUxJRF9QSVJRKTsNCisgICAgQVNTRVJU
KHJ3X2lzX2xvY2tlZCgmcGRldi0+ZG9tYWluLT5wY2lfbG9jaykpOw0KKw0KICAgICByYyA9IHZw
Y2lfbXNpX2VuYWJsZShwZGV2LCB2bXNpeF9lbnRyeV9ucihwZGV2LT52cGNpLT5tc2l4LCBlbnRy
eSksDQogICAgICAgICAgICAgICAgICAgICAgICAgIHRhYmxlX2Jhc2UpOw0KICAgICBpZiAoIHJj
IDwgMCApDQpAQCAtODYxLDcgKzg1OSw2IEBAIGludCB2cGNpX21zaXhfYXJjaF9lbmFibGVfZW50
cnkoc3RydWN0IHZwY2lfbXNpeF9lbnRyeSAqZW50cnksDQogDQogICAgIGVudHJ5LT5hcmNoLnBp
cnEgPSByYzsNCiANCi0gICAgcGNpZGV2c19sb2NrKCk7DQogICAgIHJjID0gdnBjaV9tc2lfdXBk
YXRlKHBkZXYsIGVudHJ5LT5kYXRhLCBlbnRyeS0+YWRkciwgMSwgZW50cnktPmFyY2gucGlycSwN
CiAgICAgICAgICAgICAgICAgICAgICAgICAgZW50cnktPm1hc2tlZCk7DQogICAgIGlmICggcmMg
KQ0KQEAgLTg2OSw3ICs4NjYsNiBAQCBpbnQgdnBjaV9tc2l4X2FyY2hfZW5hYmxlX2VudHJ5KHN0
cnVjdCB2cGNpX21zaXhfZW50cnkgKmVudHJ5LA0KICAgICAgICAgdnBjaV9tc2lfZGlzYWJsZShw
ZGV2LCBlbnRyeS0+YXJjaC5waXJxLCAxLCBmYWxzZSk7DQogICAgICAgICBlbnRyeS0+YXJjaC5w
aXJxID0gSU5WQUxJRF9QSVJROw0KICAgICB9DQotICAgIHBjaWRldnNfdW5sb2NrKCk7DQogDQog
ICAgIHJldHVybiByYzsNCiB9DQpAQCAtODk1LDYgKzg5MSw4IEBAIGludCB2cGNpX21zaXhfYXJj
aF9wcmludChjb25zdCBzdHJ1Y3QgdnBjaV9tc2l4ICptc2l4KQ0KIHsNCiAgICAgdW5zaWduZWQg
aW50IGk7DQogDQorICAgIEFTU0VSVChyd19pc19sb2NrZWQoJm1zaXgtPnBkZXYtPmRvbWFpbi0+
cGNpX2xvY2spKTsNCisNCiAgICAgZm9yICggaSA9IDA7IGkgPCBtc2l4LT5tYXhfZW50cmllczsg
aSsrICkNCiAgICAgew0KICAgICAgICAgY29uc3Qgc3RydWN0IHZwY2lfbXNpeF9lbnRyeSAqZW50
cnkgPSAmbXNpeC0+ZW50cmllc1tpXTsNCkBAIC05MTMsNyArOTExLDkgQEAgaW50IHZwY2lfbXNp
eF9hcmNoX3ByaW50KGNvbnN0IHN0cnVjdCB2cGNpX21zaXggKm1zaXgpDQogICAgICAgICAgICAg
c3RydWN0IHBjaV9kZXYgKnBkZXYgPSBtc2l4LT5wZGV2Ow0KIA0KICAgICAgICAgICAgIHNwaW5f
dW5sb2NrKCZtc2l4LT5wZGV2LT52cGNpLT5sb2NrKTsNCisgICAgICAgICAgICByZWFkX3VubG9j
aygmcGRldi0+ZG9tYWluLT5wY2lfbG9jayk7DQogICAgICAgICAgICAgcHJvY2Vzc19wZW5kaW5n
X3NvZnRpcnFzKCk7DQorICAgICAgICAgICAgcmVhZF9sb2NrKCZwZGV2LT5kb21haW4tPnBjaV9s
b2NrKTsNCiAgICAgICAgICAgICAvKiBOQjogd2UgYXNzdW1lIHRoYXQgcGRldiBjYW5ub3QgZ28g
YXdheSBmb3IgYW4gYWxpdmUgZG9tYWluLiAqLw0KICAgICAgICAgICAgIGlmICggIXBkZXYtPnZw
Y2kgfHwgIXNwaW5fdHJ5bG9jaygmcGRldi0+dnBjaS0+bG9jaykgKQ0KICAgICAgICAgICAgICAg
ICByZXR1cm4gLUVCVVNZOw0KZGlmZiAtLWdpdCBhL3hlbi9hcmNoL3g4Ni9odm0vdm14L3ZteC5j
IGIveGVuL2FyY2gveDg2L2h2bS92bXgvdm14LmMNCmluZGV4IDFlZGM3ZjFlOTEuLjU0NWEyNzc5
NmUgMTAwNjQ0DQotLS0gYS94ZW4vYXJjaC94ODYvaHZtL3ZteC92bXguYw0KKysrIGIveGVuL2Fy
Y2gveDg2L2h2bS92bXgvdm14LmMNCkBAIC00MTMsOCArNDEzLDYgQEAgc3RhdGljIGludCBjZl9j
aGVjayB2bXhfcGlfdXBkYXRlX2lydGUoY29uc3Qgc3RydWN0IHZjcHUgKnYsDQogDQogICAgIHNw
aW5fdW5sb2NrX2lycSgmZGVzYy0+bG9jayk7DQogDQotICAgIEFTU0VSVChwY2lkZXZzX2xvY2tl
ZCgpKTsNCi0NCiAgICAgcmV0dXJuIGlvbW11X3VwZGF0ZV9pcmVfZnJvbV9tc2kobXNpX2Rlc2Ms
ICZtc2lfZGVzYy0+bXNnKTsNCiANCiAgdW5sb2NrX291dDoNCmRpZmYgLS1naXQgYS94ZW4vYXJj
aC94ODYvaW5jbHVkZS9hc20vaXJxLmggYi94ZW4vYXJjaC94ODYvaW5jbHVkZS9hc20vaXJxLmgN
CmluZGV4IGFkOTA3ZmM5N2YuLjNkMjRmMzljYTYgMTAwNjQ0DQotLS0gYS94ZW4vYXJjaC94ODYv
aW5jbHVkZS9hc20vaXJxLmgNCisrKyBiL3hlbi9hcmNoL3g4Ni9pbmNsdWRlL2FzbS9pcnEuaA0K
QEAgLTIxMyw2ICsyMTMsNyBAQCBzdGF0aWMgaW5saW5lIHZvaWQgYXJjaF9tb3ZlX2lycXMoc3Ry
dWN0IHZjcHUgKnYpIHsgfQ0KIHN0cnVjdCBtc2lfaW5mbzsNCiBpbnQgYWxsb2NhdGVfYW5kX21h
cF9nc2lfcGlycShzdHJ1Y3QgZG9tYWluICpkLCBpbnQgaW5kZXgsIGludCAqcGlycV9wKTsNCiBp
bnQgYWxsb2NhdGVfYW5kX21hcF9tc2lfcGlycShzdHJ1Y3QgZG9tYWluICpkLCBpbnQgaW5kZXgs
IGludCAqcGlycV9wLA0KLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCB0eXBlLCBz
dHJ1Y3QgbXNpX2luZm8gKm1zaSk7DQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50
IHR5cGUsIHN0cnVjdCBtc2lfaW5mbyAqbXNpLA0KKwkJCSAgICAgIGJvb2wgdXNlX3BjaV9sb2Nr
KTsNCiANCiAjZW5kaWYgLyogX0FTTV9IV19JUlFfSCAqLw0KZGlmZiAtLWdpdCBhL3hlbi9hcmNo
L3g4Ni9pcnEuYyBiL3hlbi9hcmNoL3g4Ni9pcnEuYw0KaW5kZXggNjhiNzg4YzQyZS4uOTcwYmEw
NGFhMCAxMDA2NDQNCi0tLSBhL3hlbi9hcmNoL3g4Ni9pcnEuYw0KKysrIGIveGVuL2FyY2gveDg2
L2lycS5jDQpAQCAtMjE1Nyw3ICsyMTU3LDcgQEAgaW50IG1hcF9kb21haW5fcGlycSgNCiAgICAg
ICAgIHN0cnVjdCBwY2lfZGV2ICpwZGV2Ow0KICAgICAgICAgdW5zaWduZWQgaW50IG5yID0gMDsN
CiANCi0gICAgICAgIEFTU0VSVChwY2lkZXZzX2xvY2tlZCgpKTsNCisgICAgICAgIEFTU0VSVChw
Y2lkZXZzX2xvY2tlZCgpIHx8IHJ3X2lzX2xvY2tlZCgmZC0+cGNpX2xvY2spKTsNCiANCiAgICAg
ICAgIHJldCA9IC1FTk9ERVY7DQogICAgICAgICBpZiAoICFjcHVfaGFzX2FwaWMgKQ0KQEAgLTIz
MTQsNyArMjMxNCw3IEBAIGludCB1bm1hcF9kb21haW5fcGlycShzdHJ1Y3QgZG9tYWluICpkLCBp
bnQgcGlycSkNCiAgICAgaWYgKCAocGlycSA8IDApIHx8IChwaXJxID49IGQtPm5yX3BpcnFzKSAp
DQogICAgICAgICByZXR1cm4gLUVJTlZBTDsNCiANCi0gICAgQVNTRVJUKHBjaWRldnNfbG9ja2Vk
KCkpOw0KKyAgICBBU1NFUlQocGNpZGV2c19sb2NrZWQoKSB8fCByd19pc19sb2NrZWQoJmQtPnBj
aV9sb2NrKSk7DQogICAgIEFTU0VSVChyd19pc193cml0ZV9sb2NrZWQoJmQtPmV2ZW50X2xvY2sp
KTsNCiANCiAgICAgaW5mbyA9IHBpcnFfaW5mbyhkLCBwaXJxKTsNCkBAIC0yODc1LDcgKzI4NzUs
NyBAQCBpbnQgYWxsb2NhdGVfYW5kX21hcF9nc2lfcGlycShzdHJ1Y3QgZG9tYWluICpkLCBpbnQg
aW5kZXgsIGludCAqcGlycV9wKQ0KIH0NCiANCiBpbnQgYWxsb2NhdGVfYW5kX21hcF9tc2lfcGly
cShzdHJ1Y3QgZG9tYWluICpkLCBpbnQgaW5kZXgsIGludCAqcGlycV9wLA0KLSAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIGludCB0eXBlLCBzdHJ1Y3QgbXNpX2luZm8gKm1zaSkNCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgdHlwZSwgc3RydWN0IG1zaV9pbmZvICptc2ks
IGJvb2wgdXNlX3BjaV9sb2NrKQ0KIHsNCiAgICAgaW50IGlycSwgcGlycSwgcmV0Ow0KIA0KQEAg
LTI5MDgsNyArMjkwOCw4IEBAIGludCBhbGxvY2F0ZV9hbmRfbWFwX21zaV9waXJxKHN0cnVjdCBk
b21haW4gKmQsIGludCBpbmRleCwgaW50ICpwaXJxX3AsDQogDQogICAgIG1zaS0+aXJxID0gaXJx
Ow0KIA0KLSAgICBwY2lkZXZzX2xvY2soKTsNCisgICAgaWYgKCB1c2VfcGNpX2xvY2sgKQ0KKyAg
ICAgICAgcGNpZGV2c19sb2NrKCk7DQogICAgIC8qIFZlcmlmeSBvciBnZXQgcGlycS4gKi8NCiAg
ICAgd3JpdGVfbG9jaygmZC0+ZXZlbnRfbG9jayk7DQogICAgIHBpcnEgPSBhbGxvY2F0ZV9waXJx
KGQsIGluZGV4LCAqcGlycV9wLCBpcnEsIHR5cGUsICZtc2ktPmVudHJ5X25yKTsNCkBAIC0yOTI0
LDcgKzI5MjUsOCBAQCBpbnQgYWxsb2NhdGVfYW5kX21hcF9tc2lfcGlycShzdHJ1Y3QgZG9tYWlu
ICpkLCBpbnQgaW5kZXgsIGludCAqcGlycV9wLA0KIA0KICBkb25lOg0KICAgICB3cml0ZV91bmxv
Y2soJmQtPmV2ZW50X2xvY2spOw0KLSAgICBwY2lkZXZzX3VubG9jaygpOw0KKyAgICBpZiAoIHVz
ZV9wY2lfbG9jayApDQorICAgICAgICBwY2lkZXZzX3VubG9jaygpOw0KICAgICBpZiAoIHJldCAp
DQogICAgIHsNCiAgICAgICAgIHN3aXRjaCAoIHR5cGUgKQ0KZGlmZiAtLWdpdCBhL3hlbi9hcmNo
L3g4Ni9tc2kuYyBiL3hlbi9hcmNoL3g4Ni9tc2kuYw0KaW5kZXggMjAyNzUyNjBiMy4uNDY2NzI1
ZDhjYSAxMDA2NDQNCi0tLSBhL3hlbi9hcmNoL3g4Ni9tc2kuYw0KKysrIGIveGVuL2FyY2gveDg2
L21zaS5jDQpAQCAtNjAyLDcgKzYwMiw3IEBAIHN0YXRpYyBpbnQgbXNpX2NhcGFiaWxpdHlfaW5p
dChzdHJ1Y3QgcGNpX2RldiAqZGV2LA0KICAgICB1bnNpZ25lZCBpbnQgaSwgbXBvczsNCiAgICAg
dWludDE2X3QgY29udHJvbDsNCiANCi0gICAgQVNTRVJUKHBjaWRldnNfbG9ja2VkKCkpOw0KKyAg
ICBBU1NFUlQocGNpZGV2c19sb2NrZWQoKSB8fCByd19pc19sb2NrZWQoJmRldi0+ZG9tYWluLT5w
Y2lfbG9jaykpOw0KICAgICBwb3MgPSBwY2lfZmluZF9jYXBfb2Zmc2V0KGRldi0+c2JkZiwgUENJ
X0NBUF9JRF9NU0kpOw0KICAgICBpZiAoICFwb3MgKQ0KICAgICAgICAgcmV0dXJuIC1FTk9ERVY7
DQpAQCAtNzcxLDcgKzc3MSw3IEBAIHN0YXRpYyBpbnQgbXNpeF9jYXBhYmlsaXR5X2luaXQoc3Ry
dWN0IHBjaV9kZXYgKmRldiwNCiAgICAgaWYgKCAhcG9zICkNCiAgICAgICAgIHJldHVybiAtRU5P
REVWOw0KIA0KLSAgICBBU1NFUlQocGNpZGV2c19sb2NrZWQoKSk7DQorICAgIEFTU0VSVChwY2lk
ZXZzX2xvY2tlZCgpIHx8IHJ3X2lzX2xvY2tlZCgmZGV2LT5kb21haW4tPnBjaV9sb2NrKSk7DQog
DQogICAgIGNvbnRyb2wgPSBwY2lfY29uZl9yZWFkMTYoZGV2LT5zYmRmLCBtc2l4X2NvbnRyb2xf
cmVnKHBvcykpOw0KICAgICAvKg0KQEAgLTk4OCw4ICs5ODgsNiBAQCBzdGF0aWMgaW50IF9fcGNp
X2VuYWJsZV9tc2koc3RydWN0IG1zaV9pbmZvICptc2ksIHN0cnVjdCBtc2lfZGVzYyAqKmRlc2Ms
DQogew0KICAgICBzdHJ1Y3QgbXNpX2Rlc2MgKm9sZF9kZXNjOw0KIA0KLSAgICBBU1NFUlQocGNp
ZGV2c19sb2NrZWQoKSk7DQotDQogICAgIGlmICggIXBkZXYgKQ0KICAgICAgICAgcmV0dXJuIC1F
Tk9ERVY7DQogDQpAQCAtMTA0Myw4ICsxMDQxLDYgQEAgc3RhdGljIGludCBfX3BjaV9lbmFibGVf
bXNpeChzdHJ1Y3QgbXNpX2luZm8gKm1zaSwgc3RydWN0IG1zaV9kZXNjICoqZGVzYywNCiB7DQog
ICAgIHN0cnVjdCBtc2lfZGVzYyAqb2xkX2Rlc2M7DQogDQotICAgIEFTU0VSVChwY2lkZXZzX2xv
Y2tlZCgpKTsNCi0NCiAgICAgaWYgKCAhcGRldiB8fCAhcGRldi0+bXNpeCApDQogICAgICAgICBy
ZXR1cm4gLUVOT0RFVjsNCiANCkBAIC0xMTU0LDggKzExNTAsNiBAQCBpbnQgcGNpX3ByZXBhcmVf
bXNpeCh1MTYgc2VnLCB1OCBidXMsIHU4IGRldmZuLCBib29sIG9mZikNCiBpbnQgcGNpX2VuYWJs
ZV9tc2koc3RydWN0IG1zaV9pbmZvICptc2ksIHN0cnVjdCBtc2lfZGVzYyAqKmRlc2MsDQogCQkg
ICBzdHJ1Y3QgcGNpX2RldiAqcGRldikNCiB7DQotICAgIEFTU0VSVChwY2lkZXZzX2xvY2tlZCgp
KTsNCi0NCiAgICAgaWYgKCAhdXNlX21zaSApDQogICAgICAgICByZXR1cm4gLUVQRVJNOw0KIA0K
ZGlmZiAtLWdpdCBhL3hlbi9hcmNoL3g4Ni9waHlzZGV2LmMgYi94ZW4vYXJjaC94ODYvcGh5c2Rl
di5jDQppbmRleCAyZjFkOTU1YTk2Li43Y2JiNWJjMmM4IDEwMDY0NA0KLS0tIGEveGVuL2FyY2gv
eDg2L3BoeXNkZXYuYw0KKysrIGIveGVuL2FyY2gveDg2L3BoeXNkZXYuYw0KQEAgLTEyMyw3ICsx
MjMsNyBAQCBpbnQgcGh5c2Rldl9tYXBfcGlycShkb21pZF90IGRvbWlkLCBpbnQgdHlwZSwgaW50
ICppbmRleCwgaW50ICpwaXJxX3AsDQogDQogICAgIGNhc2UgTUFQX1BJUlFfVFlQRV9NU0k6DQog
ICAgIGNhc2UgTUFQX1BJUlFfVFlQRV9NVUxUSV9NU0k6DQotICAgICAgICByZXQgPSBhbGxvY2F0
ZV9hbmRfbWFwX21zaV9waXJxKGQsICppbmRleCwgcGlycV9wLCB0eXBlLCBtc2kpOw0KKyAgICAg
ICAgcmV0ID0gYWxsb2NhdGVfYW5kX21hcF9tc2lfcGlycShkLCAqaW5kZXgsIHBpcnFfcCwgdHlw
ZSwgbXNpLCB0cnVlKTsNCiAgICAgICAgIGJyZWFrOw0KIA0KICAgICBkZWZhdWx0Og0KZGlmZiAt
LWdpdCBhL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL3BjaS5jIGIveGVuL2RyaXZlcnMvcGFzc3Ro
cm91Z2gvcGNpLmMNCmluZGV4IGI4YWQ0ZmEwN2MuLjE4MmRhNDVhY2IgMTAwNjQ0DQotLS0gYS94
ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC9wY2kuYw0KKysrIGIveGVuL2RyaXZlcnMvcGFzc3Rocm91
Z2gvcGNpLmMNCkBAIC03NTAsNyArNzUwLDYgQEAgaW50IHBjaV9hZGRfZGV2aWNlKHUxNiBzZWcs
IHU4IGJ1cywgdTggZGV2Zm4sDQogICAgICAgICBwZGV2LT5kb21haW4gPSBoYXJkd2FyZV9kb21h
aW47DQogICAgICAgICB3cml0ZV9sb2NrKCZoYXJkd2FyZV9kb21haW4tPnBjaV9sb2NrKTsNCiAg
ICAgICAgIGxpc3RfYWRkKCZwZGV2LT5kb21haW5fbGlzdCwgJmhhcmR3YXJlX2RvbWFpbi0+cGRl
dl9saXN0KTsNCi0gICAgICAgIHdyaXRlX3VubG9jaygmaGFyZHdhcmVfZG9tYWluLT5wY2lfbG9j
ayk7DQogDQogICAgICAgICAvKg0KICAgICAgICAgICogRm9yIGRldmljZXMgbm90IGRpc2NvdmVy
ZWQgYnkgWGVuIGR1cmluZyBib290LCBhZGQgdlBDSSBoYW5kbGVycw0KQEAgLTc1OSwxOCArNzU4
LDE4IEBAIGludCBwY2lfYWRkX2RldmljZSh1MTYgc2VnLCB1OCBidXMsIHU4IGRldmZuLA0KICAg
ICAgICAgcmV0ID0gdnBjaV9hZGRfaGFuZGxlcnMocGRldik7DQogICAgICAgICBpZiAoIHJldCAp
DQogICAgICAgICB7DQotICAgICAgICAgICAgcHJpbnRrKFhFTkxPR19FUlIgIlNldHVwIG9mIHZQ
Q0kgZmFpbGVkOiAlZFxuIiwgcmV0KTsNCi0gICAgICAgICAgICB3cml0ZV9sb2NrKCZoYXJkd2Fy
ZV9kb21haW4tPnBjaV9sb2NrKTsNCiAgICAgICAgICAgICBsaXN0X2RlbCgmcGRldi0+ZG9tYWlu
X2xpc3QpOw0KICAgICAgICAgICAgIHdyaXRlX3VubG9jaygmaGFyZHdhcmVfZG9tYWluLT5wY2lf
bG9jayk7DQogICAgICAgICAgICAgcGRldi0+ZG9tYWluID0gTlVMTDsNCisgICAgICAgICAgICBw
cmludGsoWEVOTE9HX0VSUiAiU2V0dXAgb2YgdlBDSSBmYWlsZWQ6ICVkXG4iLCByZXQpOw0KICAg
ICAgICAgICAgIGdvdG8gb3V0Ow0KICAgICAgICAgfQ0KKyAgICAgICAgd3JpdGVfdW5sb2NrKCZo
YXJkd2FyZV9kb21haW4tPnBjaV9sb2NrKTsNCiAgICAgICAgIHJldCA9IGlvbW11X2FkZF9kZXZp
Y2UocGRldik7DQogICAgICAgICBpZiAoIHJldCApDQogICAgICAgICB7DQotICAgICAgICAgICAg
dnBjaV9yZW1vdmVfZGV2aWNlKHBkZXYpOw0KICAgICAgICAgICAgIHdyaXRlX2xvY2soJmhhcmR3
YXJlX2RvbWFpbi0+cGNpX2xvY2spOw0KKyAgICAgICAgICAgIHZwY2lfcmVtb3ZlX2RldmljZShw
ZGV2KTsNCiAgICAgICAgICAgICBsaXN0X2RlbCgmcGRldi0+ZG9tYWluX2xpc3QpOw0KICAgICAg
ICAgICAgIHdyaXRlX3VubG9jaygmaGFyZHdhcmVfZG9tYWluLT5wY2lfbG9jayk7DQogICAgICAg
ICAgICAgcGRldi0+ZG9tYWluID0gTlVMTDsNCkBAIC0xMTQ2LDcgKzExNDUsOSBAQCBzdGF0aWMg
dm9pZCBfX2h3ZG9tX2luaXQgc2V0dXBfb25lX2h3ZG9tX2RldmljZShjb25zdCBzdHJ1Y3Qgc2V0
dXBfaHdkb20gKmN0eHQsDQogICAgIH0gd2hpbGUgKCBkZXZmbiAhPSBwZGV2LT5kZXZmbiAmJg0K
ICAgICAgICAgICAgICAgUENJX1NMT1QoZGV2Zm4pID09IFBDSV9TTE9UKHBkZXYtPmRldmZuKSAp
Ow0KIA0KKyAgICB3cml0ZV9sb2NrKCZjdHh0LT5kLT5wY2lfbG9jayk7DQogICAgIGVyciA9IHZw
Y2lfYWRkX2hhbmRsZXJzKHBkZXYpOw0KKyAgICB3cml0ZV91bmxvY2soJmN0eHQtPmQtPnBjaV9s
b2NrKTsNCiAgICAgaWYgKCBlcnIgKQ0KICAgICAgICAgcHJpbnRrKFhFTkxPR19FUlIgInNldHVw
IG9mIHZQQ0kgZm9yIGQlZCBmYWlsZWQ6ICVkXG4iLA0KICAgICAgICAgICAgICAgIGN0eHQtPmQt
PmRvbWFpbl9pZCwgZXJyKTsNCmRpZmYgLS1naXQgYS94ZW4vZHJpdmVycy92cGNpL2hlYWRlci5j
IGIveGVuL2RyaXZlcnMvdnBjaS9oZWFkZXIuYw0KaW5kZXggNzY3YzFiYTcxOC4uYTUyZTUyZGI5
NiAxMDA2NDQNCi0tLSBhL3hlbi9kcml2ZXJzL3ZwY2kvaGVhZGVyLmMNCisrKyBiL3hlbi9kcml2
ZXJzL3ZwY2kvaGVhZGVyLmMNCkBAIC0xNzIsNiArMTcyLDcgQEAgYm9vbCB2cGNpX3Byb2Nlc3Nf
cGVuZGluZyhzdHJ1Y3QgdmNwdSAqdikNCiAgICAgICAgIGlmICggcmMgPT0gLUVSRVNUQVJUICkN
CiAgICAgICAgICAgICByZXR1cm4gdHJ1ZTsNCiANCisgICAgICAgIHdyaXRlX2xvY2soJnYtPmRv
bWFpbi0+cGNpX2xvY2spOw0KICAgICAgICAgc3Bpbl9sb2NrKCZ2LT52cGNpLnBkZXYtPnZwY2kt
PmxvY2spOw0KICAgICAgICAgLyogRGlzYWJsZSBtZW1vcnkgZGVjb2RpbmcgdW5jb25kaXRpb25h
bGx5IG9uIGZhaWx1cmUuICovDQogICAgICAgICBtb2RpZnlfZGVjb2Rpbmcodi0+dnBjaS5wZGV2
LA0KQEAgLTE5MCw2ICsxOTEsNyBAQCBib29sIHZwY2lfcHJvY2Vzc19wZW5kaW5nKHN0cnVjdCB2
Y3B1ICp2KQ0KICAgICAgICAgICAgICAqIGZhaWx1cmUuDQogICAgICAgICAgICAgICovDQogICAg
ICAgICAgICAgdnBjaV9yZW1vdmVfZGV2aWNlKHYtPnZwY2kucGRldik7DQorICAgICAgICB3cml0
ZV91bmxvY2soJnYtPmRvbWFpbi0+cGNpX2xvY2spOw0KICAgICB9DQogDQogICAgIHJldHVybiBm
YWxzZTsNCkBAIC0yMDEsOCArMjAzLDIwIEBAIHN0YXRpYyBpbnQgX19pbml0IGFwcGx5X21hcChz
dHJ1Y3QgZG9tYWluICpkLCBjb25zdCBzdHJ1Y3QgcGNpX2RldiAqcGRldiwNCiAgICAgc3RydWN0
IG1hcF9kYXRhIGRhdGEgPSB7IC5kID0gZCwgLm1hcCA9IHRydWUgfTsNCiAgICAgaW50IHJjOw0K
IA0KKyAgICBBU1NFUlQocndfaXNfd3JpdGVfbG9ja2VkKCZkLT5wY2lfbG9jaykpOw0KKw0KICAg
ICB3aGlsZSAoIChyYyA9IHJhbmdlc2V0X2NvbnN1bWVfcmFuZ2VzKG1lbSwgbWFwX3JhbmdlLCAm
ZGF0YSkpID09IC1FUkVTVEFSVCApDQorICAgIHsNCisgICAgICAgIC8qDQorICAgICAgICAgKiBJ
dCdzIHNhZmUgdG8gZHJvcCBhbmQgcmVhY3F1aXJlIHRoZSBsb2NrIGluIHRoaXMgY29udGV4dA0K
KyAgICAgICAgICogd2l0aG91dCByaXNraW5nIHBkZXYgZGlzYXBwZWFyaW5nIGJlY2F1c2UgZGV2
aWNlcyBjYW5ub3QgYmUNCisgICAgICAgICAqIHJlbW92ZWQgdW50aWwgdGhlIGluaXRpYWwgZG9t
YWluIGhhcyBiZWVuIHN0YXJ0ZWQuDQorICAgICAgICAgKi8NCisgICAgICAgIHJlYWRfdW5sb2Nr
KCZkLT5wY2lfbG9jayk7DQogICAgICAgICBwcm9jZXNzX3BlbmRpbmdfc29mdGlycXMoKTsNCisg
ICAgICAgIHJlYWRfbG9jaygmZC0+cGNpX2xvY2spOw0KKyAgICB9DQorDQogICAgIHJhbmdlc2V0
X2Rlc3Ryb3kobWVtKTsNCiAgICAgaWYgKCAhcmMgKQ0KICAgICAgICAgbW9kaWZ5X2RlY29kaW5n
KHBkZXYsIGNtZCwgZmFsc2UpOw0KQEAgLTI0Myw2ICsyNTcsOCBAQCBzdGF0aWMgaW50IG1vZGlm
eV9iYXJzKGNvbnN0IHN0cnVjdCBwY2lfZGV2ICpwZGV2LCB1aW50MTZfdCBjbWQsIGJvb2wgcm9t
X29ubHkpDQogICAgIHVuc2lnbmVkIGludCBpOw0KICAgICBpbnQgcmM7DQogDQorICAgIEFTU0VS
VChyd19pc193cml0ZV9sb2NrZWQoJnBkZXYtPmRvbWFpbi0+cGNpX2xvY2spKTsNCisNCiAgICAg
aWYgKCAhbWVtICkNCiAgICAgICAgIHJldHVybiAtRU5PTUVNOw0KIA0KQEAgLTUyMiw2ICs1Mzgs
OCBAQCBzdGF0aWMgaW50IGNmX2NoZWNrIGluaXRfYmFycyhzdHJ1Y3QgcGNpX2RldiAqcGRldikN
CiAgICAgc3RydWN0IHZwY2lfYmFyICpiYXJzID0gaGVhZGVyLT5iYXJzOw0KICAgICBpbnQgcmM7
DQogDQorICAgIEFTU0VSVChyd19pc193cml0ZV9sb2NrZWQoJnBkZXYtPmRvbWFpbi0+cGNpX2xv
Y2spKTsNCisNCiAgICAgc3dpdGNoICggcGNpX2NvbmZfcmVhZDgocGRldi0+c2JkZiwgUENJX0hF
QURFUl9UWVBFKSAmIDB4N2YgKQ0KICAgICB7DQogICAgIGNhc2UgUENJX0hFQURFUl9UWVBFX05P
Uk1BTDoNCmRpZmYgLS1naXQgYS94ZW4vZHJpdmVycy92cGNpL21zaS5jIGIveGVuL2RyaXZlcnMv
dnBjaS9tc2kuYw0KaW5kZXggYTI1M2NjYmQ3ZC4uMmZhYTU0YjdjZSAxMDA2NDQNCi0tLSBhL3hl
bi9kcml2ZXJzL3ZwY2kvbXNpLmMNCisrKyBiL3hlbi9kcml2ZXJzL3ZwY2kvbXNpLmMNCkBAIC0y
NjMsNyArMjYzLDcgQEAgUkVHSVNURVJfVlBDSV9JTklUKGluaXRfbXNpLCBWUENJX1BSSU9SSVRZ
X0xPVyk7DQogDQogdm9pZCB2cGNpX2R1bXBfbXNpKHZvaWQpDQogew0KLSAgICBjb25zdCBzdHJ1
Y3QgZG9tYWluICpkOw0KKyAgICBzdHJ1Y3QgZG9tYWluICpkOw0KIA0KICAgICByY3VfcmVhZF9s
b2NrKCZkb21saXN0X3JlYWRfbG9jayk7DQogICAgIGZvcl9lYWNoX2RvbWFpbiAoIGQgKQ0KQEAg
LTI3NSw2ICsyNzUsOSBAQCB2b2lkIHZwY2lfZHVtcF9tc2kodm9pZCkNCiANCiAgICAgICAgIHBy
aW50aygidlBDSSBNU0kvTVNJLVggZCVkXG4iLCBkLT5kb21haW5faWQpOw0KIA0KKyAgICAgICAg
aWYgKCAhcmVhZF90cnlsb2NrKCZkLT5wY2lfbG9jaykgKQ0KKyAgICAgICAgICAgIGNvbnRpbnVl
Ow0KKw0KICAgICAgICAgZm9yX2VhY2hfcGRldiAoIGQsIHBkZXYgKQ0KICAgICAgICAgew0KICAg
ICAgICAgICAgIGNvbnN0IHN0cnVjdCB2cGNpX21zaSAqbXNpOw0KQEAgLTMxNiwxNCArMzE5LDMz
IEBAIHZvaWQgdnBjaV9kdW1wX21zaSh2b2lkKQ0KICAgICAgICAgICAgICAgICAgICAgICogaG9s
ZGluZyB0aGUgbG9jay4NCiAgICAgICAgICAgICAgICAgICAgICAqLw0KICAgICAgICAgICAgICAg
ICAgICAgcHJpbnRrKCJ1bmFibGUgdG8gcHJpbnQgYWxsIE1TSS1YIGVudHJpZXM6ICVkXG4iLCBy
Yyk7DQotICAgICAgICAgICAgICAgICAgICBwcm9jZXNzX3BlbmRpbmdfc29mdGlycXMoKTsNCi0g
ICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlOw0KKyAgICAgICAgICAgICAgICAgICAgZ290byBw
ZGV2X2RvbmU7DQogICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICB9DQogDQogICAgICAg
ICAgICAgc3Bpbl91bmxvY2soJnBkZXYtPnZwY2ktPmxvY2spOw0KKyBwZGV2X2RvbmU6DQorICAg
ICAgICAgICAgLyoNCisgICAgICAgICAgICAgKiBVbmxvY2sgbG9jayB0byBwcm9jZXNzIHBlbmRp
bmcgc29mdGlycXMuIFRoaXMgaXMNCisgICAgICAgICAgICAgKiBwb3RlbnRpYWxseSB1bnNhZmUs
IGFzIGQtPnBkZXZfbGlzdCBjYW4gYmUgY2hhbmdlZCBpbg0KKyAgICAgICAgICAgICAqIG1lYW50
aW1lLg0KKyAgICAgICAgICAgICAqLw0KKyAgICAgICAgICAgIHJlYWRfdW5sb2NrKCZkLT5wY2lf
bG9jayk7DQogICAgICAgICAgICAgcHJvY2Vzc19wZW5kaW5nX3NvZnRpcnFzKCk7DQorICAgICAg
ICAgICAgaWYgKCAhcmVhZF90cnlsb2NrKCZkLT5wY2lfbG9jaykgKQ0KKyAgICAgICAgICAgIHsN
CisgICAgICAgICAgICAgICAgcHJpbnRrKCJ1bmFibGUgdG8gYWNjZXNzIG90aGVyIGRldmljZXMg
Zm9yIHRoZSBkb21haW5cbiIpOw0KKyAgICAgICAgICAgICAgICBnb3RvIGRvbWFpbl9kb25lOw0K
KyAgICAgICAgICAgIH0NCiAgICAgICAgIH0NCisgICAgICAgIHJlYWRfdW5sb2NrKCZkLT5wY2lf
bG9jayk7DQorICAgIGRvbWFpbl9kb25lOg0KKyAgICAgICAgLyoNCisgICAgICAgICAqIFdlIG5l
ZWQgdGhpcyBsYWJlbCBhdCB0aGUgZW5kIG9mIHRoZSBsb29wLCBidXQgc29tZQ0KKyAgICAgICAg
ICogY29tcGlsZXJzIG1pZ2h0IG5vdCBiZSBoYXBweSBhYm91dCBsYWJlbCBhdCB0aGUgZW5kIG9m
IHRoZQ0KKyAgICAgICAgICogY29tcG91bmQgc3RhdGVtZW50IHNvIHdlIGFkZGluZyBhbiBlbXB0
eSBzdGF0ZW1lbnQgaGVyZS4NCisgICAgICAgICAqLw0KKyAgICAgICAgOw0KICAgICB9DQogICAg
IHJjdV9yZWFkX3VubG9jaygmZG9tbGlzdF9yZWFkX2xvY2spOw0KIH0NCmRpZmYgLS1naXQgYS94
ZW4vZHJpdmVycy92cGNpL21zaXguYyBiL3hlbi9kcml2ZXJzL3ZwY2kvbXNpeC5jDQppbmRleCBk
MTEyNmE0MTdkLi5iNmFiYWI0N2VmIDEwMDY0NA0KLS0tIGEveGVuL2RyaXZlcnMvdnBjaS9tc2l4
LmMNCisrKyBiL3hlbi9kcml2ZXJzL3ZwY2kvbXNpeC5jDQpAQCAtMTQ3LDYgKzE0Nyw4IEBAIHN0
YXRpYyBzdHJ1Y3QgdnBjaV9tc2l4ICptc2l4X2ZpbmQoY29uc3Qgc3RydWN0IGRvbWFpbiAqZCwg
dW5zaWduZWQgbG9uZyBhZGRyKQ0KIHsNCiAgICAgc3RydWN0IHZwY2lfbXNpeCAqbXNpeDsNCiAN
CisgICAgQVNTRVJUKHJ3X2lzX2xvY2tlZCgmZC0+cGNpX2xvY2spKTsNCisNCiAgICAgbGlzdF9m
b3JfZWFjaF9lbnRyeSAoIG1zaXgsICZkLT5hcmNoLmh2bS5tc2l4X3RhYmxlcywgbmV4dCApDQog
ICAgIHsNCiAgICAgICAgIGNvbnN0IHN0cnVjdCB2cGNpX2JhciAqYmFycyA9IG1zaXgtPnBkZXYt
PnZwY2ktPmhlYWRlci5iYXJzOw0KQEAgLTE2Myw3ICsxNjUsMTMgQEAgc3RhdGljIHN0cnVjdCB2
cGNpX21zaXggKm1zaXhfZmluZChjb25zdCBzdHJ1Y3QgZG9tYWluICpkLCB1bnNpZ25lZCBsb25n
IGFkZHIpDQogDQogc3RhdGljIGludCBjZl9jaGVjayBtc2l4X2FjY2VwdChzdHJ1Y3QgdmNwdSAq
diwgdW5zaWduZWQgbG9uZyBhZGRyKQ0KIHsNCi0gICAgcmV0dXJuICEhbXNpeF9maW5kKHYtPmRv
bWFpbiwgYWRkcik7DQorICAgIGludCByYzsNCisNCisgICAgcmVhZF9sb2NrKCZ2LT5kb21haW4t
PnBjaV9sb2NrKTsNCisgICAgcmMgPSAhIW1zaXhfZmluZCh2LT5kb21haW4sIGFkZHIpOw0KKyAg
ICByZWFkX3VubG9jaygmdi0+ZG9tYWluLT5wY2lfbG9jayk7DQorDQorICAgIHJldHVybiByYzsN
CiB9DQogDQogc3RhdGljIGJvb2wgYWNjZXNzX2FsbG93ZWQoY29uc3Qgc3RydWN0IHBjaV9kZXYg
KnBkZXYsIHVuc2lnbmVkIGxvbmcgYWRkciwNCkBAIC0zNTgsMjEgKzM2NiwzNSBAQCBzdGF0aWMg
aW50IGFkamFjZW50X3JlYWQoY29uc3Qgc3RydWN0IGRvbWFpbiAqZCwgY29uc3Qgc3RydWN0IHZw
Y2lfbXNpeCAqbXNpeCwNCiBzdGF0aWMgaW50IGNmX2NoZWNrIG1zaXhfcmVhZCgNCiAgICAgc3Ry
dWN0IHZjcHUgKnYsIHVuc2lnbmVkIGxvbmcgYWRkciwgdW5zaWduZWQgaW50IGxlbiwgdW5zaWdu
ZWQgbG9uZyAqZGF0YSkNCiB7DQotICAgIGNvbnN0IHN0cnVjdCBkb21haW4gKmQgPSB2LT5kb21h
aW47DQotICAgIHN0cnVjdCB2cGNpX21zaXggKm1zaXggPSBtc2l4X2ZpbmQoZCwgYWRkcik7DQor
ICAgIHN0cnVjdCBkb21haW4gKmQgPSB2LT5kb21haW47DQorICAgIHN0cnVjdCB2cGNpX21zaXgg
Km1zaXg7DQogICAgIGNvbnN0IHN0cnVjdCB2cGNpX21zaXhfZW50cnkgKmVudHJ5Ow0KICAgICB1
bnNpZ25lZCBpbnQgb2Zmc2V0Ow0KIA0KICAgICAqZGF0YSA9IH4wVUw7DQogDQorICAgIHJlYWRf
bG9jaygmZC0+cGNpX2xvY2spOw0KKw0KKyAgICBtc2l4ID0gbXNpeF9maW5kKGQsIGFkZHIpOw0K
ICAgICBpZiAoICFtc2l4ICkNCisgICAgew0KKyAgICAgICAgcmVhZF91bmxvY2soJmQtPnBjaV9s
b2NrKTsNCiAgICAgICAgIHJldHVybiBYODZFTVVMX1JFVFJZOw0KKyAgICB9DQogDQogICAgIGlm
ICggYWRqYWNlbnRfaGFuZGxlKG1zaXgsIGFkZHIpICkNCi0gICAgICAgIHJldHVybiBhZGphY2Vu
dF9yZWFkKGQsIG1zaXgsIGFkZHIsIGxlbiwgZGF0YSk7DQorICAgIHsNCisgICAgICAgIGludCBy
YyA9IGFkamFjZW50X3JlYWQoZCwgbXNpeCwgYWRkciwgbGVuLCBkYXRhKTsNCisNCisgICAgICAg
IHJlYWRfdW5sb2NrKCZkLT5wY2lfbG9jayk7DQorICAgICAgICByZXR1cm4gcmM7DQorICAgIH0N
CiANCiAgICAgaWYgKCAhYWNjZXNzX2FsbG93ZWQobXNpeC0+cGRldiwgYWRkciwgbGVuKSApDQor
ICAgIHsNCisgICAgICAgIHJlYWRfdW5sb2NrKCZkLT5wY2lfbG9jayk7DQogICAgICAgICByZXR1
cm4gWDg2RU1VTF9PS0FZOw0KKyAgICB9DQogDQogICAgIHNwaW5fbG9jaygmbXNpeC0+cGRldi0+
dnBjaS0+bG9jayk7DQogICAgIGVudHJ5ID0gZ2V0X2VudHJ5KG1zaXgsIGFkZHIpOw0KQEAgLTQw
NCw2ICs0MjYsNyBAQCBzdGF0aWMgaW50IGNmX2NoZWNrIG1zaXhfcmVhZCgNCiAgICAgICAgIGJy
ZWFrOw0KICAgICB9DQogICAgIHNwaW5fdW5sb2NrKCZtc2l4LT5wZGV2LT52cGNpLT5sb2NrKTsN
CisgICAgcmVhZF91bmxvY2soJmQtPnBjaV9sb2NrKTsNCiANCiAgICAgcmV0dXJuIFg4NkVNVUxf
T0tBWTsNCiB9DQpAQCAtNDkxLDE5ICs1MTQsMzMgQEAgc3RhdGljIGludCBhZGphY2VudF93cml0
ZShjb25zdCBzdHJ1Y3QgZG9tYWluICpkLCBjb25zdCBzdHJ1Y3QgdnBjaV9tc2l4ICptc2l4LA0K
IHN0YXRpYyBpbnQgY2ZfY2hlY2sgbXNpeF93cml0ZSgNCiAgICAgc3RydWN0IHZjcHUgKnYsIHVu
c2lnbmVkIGxvbmcgYWRkciwgdW5zaWduZWQgaW50IGxlbiwgdW5zaWduZWQgbG9uZyBkYXRhKQ0K
IHsNCi0gICAgY29uc3Qgc3RydWN0IGRvbWFpbiAqZCA9IHYtPmRvbWFpbjsNCi0gICAgc3RydWN0
IHZwY2lfbXNpeCAqbXNpeCA9IG1zaXhfZmluZChkLCBhZGRyKTsNCisgICAgc3RydWN0IGRvbWFp
biAqZCA9IHYtPmRvbWFpbjsNCisgICAgc3RydWN0IHZwY2lfbXNpeCAqbXNpeDsNCiAgICAgc3Ry
dWN0IHZwY2lfbXNpeF9lbnRyeSAqZW50cnk7DQogICAgIHVuc2lnbmVkIGludCBvZmZzZXQ7DQog
DQorICAgIHJlYWRfbG9jaygmZC0+cGNpX2xvY2spOw0KKw0KKyAgICBtc2l4ID0gbXNpeF9maW5k
KGQsIGFkZHIpOw0KICAgICBpZiAoICFtc2l4ICkNCisgICAgew0KKyAgICAgICAgcmVhZF91bmxv
Y2soJmQtPnBjaV9sb2NrKTsNCiAgICAgICAgIHJldHVybiBYODZFTVVMX1JFVFJZOw0KKyAgICB9
DQogDQogICAgIGlmICggYWRqYWNlbnRfaGFuZGxlKG1zaXgsIGFkZHIpICkNCi0gICAgICAgIHJl
dHVybiBhZGphY2VudF93cml0ZShkLCBtc2l4LCBhZGRyLCBsZW4sIGRhdGEpOw0KKyAgICB7DQor
ICAgICAgICBpbnQgcmMgPSBhZGphY2VudF93cml0ZShkLCBtc2l4LCBhZGRyLCBsZW4sIGRhdGEp
Ow0KKw0KKyAgICAgICAgcmVhZF91bmxvY2soJmQtPnBjaV9sb2NrKTsNCisgICAgICAgIHJldHVy
biByYzsNCisgICAgfQ0KIA0KICAgICBpZiAoICFhY2Nlc3NfYWxsb3dlZChtc2l4LT5wZGV2LCBh
ZGRyLCBsZW4pICkNCisgICAgew0KKyAgICAgICAgcmVhZF91bmxvY2soJmQtPnBjaV9sb2NrKTsN
CiAgICAgICAgIHJldHVybiBYODZFTVVMX09LQVk7DQorICAgIH0NCiANCiAgICAgc3Bpbl9sb2Nr
KCZtc2l4LT5wZGV2LT52cGNpLT5sb2NrKTsNCiAgICAgZW50cnkgPSBnZXRfZW50cnkobXNpeCwg
YWRkcik7DQpAQCAtNTc5LDYgKzYxNiw3IEBAIHN0YXRpYyBpbnQgY2ZfY2hlY2sgbXNpeF93cml0
ZSgNCiAgICAgICAgIGJyZWFrOw0KICAgICB9DQogICAgIHNwaW5fdW5sb2NrKCZtc2l4LT5wZGV2
LT52cGNpLT5sb2NrKTsNCisgICAgcmVhZF91bmxvY2soJmQtPnBjaV9sb2NrKTsNCiANCiAgICAg
cmV0dXJuIFg4NkVNVUxfT0tBWTsNCiB9DQpkaWZmIC0tZ2l0IGEveGVuL2RyaXZlcnMvdnBjaS92
cGNpLmMgYi94ZW4vZHJpdmVycy92cGNpL3ZwY2kuYw0KaW5kZXggM2JlYzlhNDE1My4uMTEyZGU1
NmZiMyAxMDA2NDQNCi0tLSBhL3hlbi9kcml2ZXJzL3ZwY2kvdnBjaS5jDQorKysgYi94ZW4vZHJp
dmVycy92cGNpL3ZwY2kuYw0KQEAgLTM4LDYgKzM4LDggQEAgZXh0ZXJuIHZwY2lfcmVnaXN0ZXJf
aW5pdF90ICpjb25zdCBfX2VuZF92cGNpX2FycmF5W107DQogDQogdm9pZCB2cGNpX3JlbW92ZV9k
ZXZpY2Uoc3RydWN0IHBjaV9kZXYgKnBkZXYpDQogew0KKyAgICBBU1NFUlQocndfaXNfd3JpdGVf
bG9ja2VkKCZwZGV2LT5kb21haW4tPnBjaV9sb2NrKSk7DQorDQogICAgIGlmICggIWhhc192cGNp
KHBkZXYtPmRvbWFpbikgfHwgIXBkZXYtPnZwY2kgKQ0KICAgICAgICAgcmV0dXJuOw0KIA0KQEAg
LTczLDYgKzc1LDggQEAgaW50IHZwY2lfYWRkX2hhbmRsZXJzKHN0cnVjdCBwY2lfZGV2ICpwZGV2
KQ0KICAgICBjb25zdCB1bnNpZ25lZCBsb25nICpyb19tYXA7DQogICAgIGludCByYyA9IDA7DQog
DQorICAgIEFTU0VSVChyd19pc193cml0ZV9sb2NrZWQoJnBkZXYtPmRvbWFpbi0+cGNpX2xvY2sp
KTsNCisNCiAgICAgaWYgKCAhaGFzX3ZwY2kocGRldi0+ZG9tYWluKSApDQogICAgICAgICByZXR1
cm4gMDsNCiANCkBAIC0zMjYsMTEgKzMzMCwxMiBAQCBzdGF0aWMgdWludDMyX3QgbWVyZ2VfcmVz
dWx0KHVpbnQzMl90IGRhdGEsIHVpbnQzMl90IG5ldywgdW5zaWduZWQgaW50IHNpemUsDQogDQog
dWludDMyX3QgdnBjaV9yZWFkKHBjaV9zYmRmX3Qgc2JkZiwgdW5zaWduZWQgaW50IHJlZywgdW5z
aWduZWQgaW50IHNpemUpDQogew0KLSAgICBjb25zdCBzdHJ1Y3QgZG9tYWluICpkID0gY3VycmVu
dC0+ZG9tYWluOw0KKyAgICBzdHJ1Y3QgZG9tYWluICpkID0gY3VycmVudC0+ZG9tYWluOw0KICAg
ICBjb25zdCBzdHJ1Y3QgcGNpX2RldiAqcGRldjsNCiAgICAgY29uc3Qgc3RydWN0IHZwY2lfcmVn
aXN0ZXIgKnI7DQogICAgIHVuc2lnbmVkIGludCBkYXRhX29mZnNldCA9IDA7DQogICAgIHVpbnQz
Ml90IGRhdGEgPSB+KHVpbnQzMl90KTA7DQorICAgIHJ3bG9ja190ICpsb2NrOw0KIA0KICAgICBp
ZiAoICFzaXplICkNCiAgICAgew0KQEAgLTM0MiwxMSArMzQ3LDIxIEBAIHVpbnQzMl90IHZwY2lf
cmVhZChwY2lfc2JkZl90IHNiZGYsIHVuc2lnbmVkIGludCByZWcsIHVuc2lnbmVkIGludCBzaXpl
KQ0KICAgICAgKiBGaW5kIHRoZSBQQ0kgZGV2IG1hdGNoaW5nIHRoZSBhZGRyZXNzLCB3aGljaCBm
b3IgaHdkb20gYWxzbyByZXF1aXJlcw0KICAgICAgKiBjb25zdWx0aW5nIERvbVhFTi4gIFBhc3N0
aHJvdWdoIGV2ZXJ5dGhpbmcgdGhhdCdzIG5vdCB0cmFwcGVkLg0KICAgICAgKi8NCisgICAgbG9j
ayA9ICZkLT5wY2lfbG9jazsNCisgICAgcmVhZF9sb2NrKGxvY2spOw0KICAgICBwZGV2ID0gcGNp
X2dldF9wZGV2KGQsIHNiZGYpOw0KICAgICBpZiAoICFwZGV2ICYmIGlzX2hhcmR3YXJlX2RvbWFp
bihkKSApDQorICAgIHsNCisgICAgICAgIHJlYWRfdW5sb2NrKGxvY2spOw0KKyAgICAgICAgbG9j
ayA9ICZkb21feGVuLT5wY2lfbG9jazsNCisgICAgICAgIHJlYWRfbG9jayhsb2NrKTsNCiAgICAg
ICAgIHBkZXYgPSBwY2lfZ2V0X3BkZXYoZG9tX3hlbiwgc2JkZik7DQorICAgIH0NCiAgICAgaWYg
KCAhcGRldiB8fCAhcGRldi0+dnBjaSApDQorICAgIHsNCisgICAgICAgIHJlYWRfdW5sb2NrKGxv
Y2spOw0KICAgICAgICAgcmV0dXJuIHZwY2lfcmVhZF9odyhzYmRmLCByZWcsIHNpemUpOw0KKyAg
ICB9DQogDQogICAgIHNwaW5fbG9jaygmcGRldi0+dnBjaS0+bG9jayk7DQogDQpAQCAtMzkyLDYg
KzQwNyw3IEBAIHVpbnQzMl90IHZwY2lfcmVhZChwY2lfc2JkZl90IHNiZGYsIHVuc2lnbmVkIGlu
dCByZWcsIHVuc2lnbmVkIGludCBzaXplKQ0KICAgICAgICAgQVNTRVJUKGRhdGFfb2Zmc2V0IDwg
c2l6ZSk7DQogICAgIH0NCiAgICAgc3Bpbl91bmxvY2soJnBkZXYtPnZwY2ktPmxvY2spOw0KKyAg
ICByZWFkX3VubG9jayhsb2NrKTsNCiANCiAgICAgaWYgKCBkYXRhX29mZnNldCA8IHNpemUgKQ0K
ICAgICB7DQpAQCAtNDMxLDEwICs0NDcsMjMgQEAgc3RhdGljIHZvaWQgdnBjaV93cml0ZV9oZWxw
ZXIoY29uc3Qgc3RydWN0IHBjaV9kZXYgKnBkZXYsDQogICAgICAgICAgICAgIHItPnByaXZhdGUp
Ow0KIH0NCiANCisvKiBIZWxwZXIgZnVuY3Rpb24gdG8gdW5sb2NrIGxvY2tzIHRha2VuIGJ5IHZw
Y2lfd3JpdGUgaW4gcHJvcGVyIG9yZGVyICovDQorc3RhdGljIHZvaWQgcmVsZWFzZV9kb21haW5f
d3JpdGVfbG9ja3Moc3RydWN0IGRvbWFpbiAqZCkNCit7DQorICAgIEFTU0VSVChyd19pc193cml0
ZV9sb2NrZWQoJmQtPnBjaV9sb2NrKSk7DQorDQorICAgIGlmICggaXNfaGFyZHdhcmVfZG9tYWlu
KGQpICkNCisgICAgew0KKyAgICAgICAgQVNTRVJUKHJ3X2lzX3dyaXRlX2xvY2tlZCgmZG9tX3hl
bi0+cGNpX2xvY2spKTsNCisgICAgICAgIHdyaXRlX3VubG9jaygmZG9tX3hlbi0+cGNpX2xvY2sp
Ow0KKyAgICB9DQorICAgIHdyaXRlX3VubG9jaygmZC0+cGNpX2xvY2spOw0KK30NCisNCiB2b2lk
IHZwY2lfd3JpdGUocGNpX3NiZGZfdCBzYmRmLCB1bnNpZ25lZCBpbnQgcmVnLCB1bnNpZ25lZCBp
bnQgc2l6ZSwNCiAgICAgICAgICAgICAgICAgdWludDMyX3QgZGF0YSkNCiB7DQotICAgIGNvbnN0
IHN0cnVjdCBkb21haW4gKmQgPSBjdXJyZW50LT5kb21haW47DQorICAgIHN0cnVjdCBkb21haW4g
KmQgPSBjdXJyZW50LT5kb21haW47DQogICAgIGNvbnN0IHN0cnVjdCBwY2lfZGV2ICpwZGV2Ow0K
ICAgICBjb25zdCBzdHJ1Y3QgdnBjaV9yZWdpc3RlciAqcjsNCiAgICAgdW5zaWduZWQgaW50IGRh
dGFfb2Zmc2V0ID0gMDsNCkBAIC00NDcsOCArNDc2LDIwIEBAIHZvaWQgdnBjaV93cml0ZShwY2lf
c2JkZl90IHNiZGYsIHVuc2lnbmVkIGludCByZWcsIHVuc2lnbmVkIGludCBzaXplLA0KIA0KICAg
ICAvKg0KICAgICAgKiBGaW5kIHRoZSBQQ0kgZGV2IG1hdGNoaW5nIHRoZSBhZGRyZXNzLCB3aGlj
aCBmb3IgaHdkb20gYWxzbyByZXF1aXJlcw0KLSAgICAgKiBjb25zdWx0aW5nIERvbVhFTi4gIFBh
c3N0aHJvdWdoIGV2ZXJ5dGhpbmcgdGhhdCdzIG5vdCB0cmFwcGVkLg0KKyAgICAgKiBjb25zdWx0
aW5nIERvbVhFTi4gUGFzc3Rocm91Z2ggZXZlcnl0aGluZyB0aGF0J3Mgbm90IHRyYXBwZWQuDQor
ICAgICAqIElmIHRoaXMgaXMgaHdkb20sIHdlIG5lZWQgdG8gaG9sZCBsb2NrcyBmb3IgYm90aCBk
b21haW4gaW4gY2FzZSBpZg0KKyAgICAgKiBtb2RpZnlfYmFycygpIGlzIGNhbGxlZA0KKyAgICAg
Ki8NCisgICAgLyoNCisgICAgICogVE9ETzogV2UgbmVlZCB0byB0YWtlIHBjaV9sb2NrcyBpbiBl
eGNsdXNpdmUgbW9kZSBvbmx5IGlmIHdlDQorICAgICAqIGFyZSBtb2RpZnlpbmcgQkFScywgc28g
dGhlcmUgaXMgYSByb29tIGZvciBpbXByb3ZlbWVudC4NCiAgICAgICovDQorICAgIHdyaXRlX2xv
Y2soJmQtPnBjaV9sb2NrKTsNCisNCisgICAgLyogZG9tX3hlbi0+cGNpX2xvY2sgYWx3YXlzIHNo
b3VsZCBiZSB0YWtlbiBzZWNvbmQgdG8gcHJldmVudCBkZWFkbG9jayAqLw0KKyAgICBpZiAoIGlz
X2hhcmR3YXJlX2RvbWFpbihkKSApDQorICAgICAgICB3cml0ZV9sb2NrKCZkb21feGVuLT5wY2lf
bG9jayk7DQorDQogICAgIHBkZXYgPSBwY2lfZ2V0X3BkZXYoZCwgc2JkZik7DQogICAgIGlmICgg
IXBkZXYgJiYgaXNfaGFyZHdhcmVfZG9tYWluKGQpICkNCiAgICAgICAgIHBkZXYgPSBwY2lfZ2V0
X3BkZXYoZG9tX3hlbiwgc2JkZik7DQpAQCAtNDU3LDggKzQ5OCwxMSBAQCB2b2lkIHZwY2lfd3Jp
dGUocGNpX3NiZGZfdCBzYmRmLCB1bnNpZ25lZCBpbnQgcmVnLCB1bnNpZ25lZCBpbnQgc2l6ZSwN
CiAgICAgICAgIC8qIElnbm9yZSB3cml0ZXMgdG8gcmVhZC1vbmx5IGRldmljZXMsIHdoaWNoIGhh
dmUgbm8gLT52cGNpLiAqLw0KICAgICAgICAgY29uc3QgdW5zaWduZWQgbG9uZyAqcm9fbWFwID0g
cGNpX2dldF9yb19tYXAoc2JkZi5zZWcpOw0KIA0KKyAgICAgICAgcmVsZWFzZV9kb21haW5fd3Jp
dGVfbG9ja3MoZCk7DQorDQogICAgICAgICBpZiAoICFyb19tYXAgfHwgIXRlc3RfYml0KHNiZGYu
YmRmLCByb19tYXApICkNCiAgICAgICAgICAgICB2cGNpX3dyaXRlX2h3KHNiZGYsIHJlZywgc2l6
ZSwgZGF0YSk7DQorDQogICAgICAgICByZXR1cm47DQogICAgIH0NCiANCkBAIC00OTgsNiArNTQy
LDcgQEAgdm9pZCB2cGNpX3dyaXRlKHBjaV9zYmRmX3Qgc2JkZiwgdW5zaWduZWQgaW50IHJlZywg
dW5zaWduZWQgaW50IHNpemUsDQogICAgICAgICBBU1NFUlQoZGF0YV9vZmZzZXQgPCBzaXplKTsN
CiAgICAgfQ0KICAgICBzcGluX3VubG9jaygmcGRldi0+dnBjaS0+bG9jayk7DQorICAgIHJlbGVh
c2VfZG9tYWluX3dyaXRlX2xvY2tzKGQpOw0KIA0KICAgICBpZiAoIGRhdGFfb2Zmc2V0IDwgc2l6
ZSApDQogICAgICAgICAvKiBUYWlsaW5nIGdhcCwgd3JpdGUgdGhlIHJlbWFpbmluZy4gKi8NCi0t
IA0KMi40Mi4wDQo=


From xen-devel-bounces@lists.xenproject.org Thu Oct 12 22:09:39 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 22:09:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616071.957843 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qr3s7-0002pG-0B; Thu, 12 Oct 2023 22:09:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616071.957843; Thu, 12 Oct 2023 22:09: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 1qr3s6-0002p1-Q0; Thu, 12 Oct 2023 22:09:34 +0000
Received: by outflank-mailman (input) for mailman id 616071;
 Thu, 12 Oct 2023 22:09: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=Hhgq=F2=epam.com=prvs=4649fa389a=volodymyr_babchuk@srs-se1.protection.inumbo.net>)
 id 1qr3s5-00016v-1g
 for xen-devel@lists.xenproject.org; Thu, 12 Oct 2023 22:09:33 +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 04e62cb8-694c-11ee-98d4-6d05b1d4d9a1;
 Fri, 13 Oct 2023 00:09:32 +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
 39CKqkS7008330; Thu, 12 Oct 2023 22:09:28 GMT
Received: from eur05-am6-obe.outbound.protection.outlook.com
 (mail-am6eur05lp2105.outbound.protection.outlook.com [104.47.18.105])
 by mx0b-0039f301.pphosted.com (PPS) with ESMTPS id 3tpr7cr8e6-1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT);
 Thu, 12 Oct 2023 22:09:27 +0000
Received: from VI1PR03MB3710.eurprd03.prod.outlook.com (2603:10a6:803:31::18)
 by DBAPR03MB6376.eurprd03.prod.outlook.com (2603:10a6:10:193::6) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.45; Thu, 12 Oct
 2023 22:09:18 +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.6863.043; Thu, 12 Oct 2023
 22:09: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: 04e62cb8-694c-11ee-98d4-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ClqvpfGUzGJTS1zkloI+Jb7/A4CoasVB3w78j8m/J0Rqx8+QaBbaz8exPkbifdGO0mPWTuIoPO3bQh/cfBKelGOkPP+ihLYWNYwE4f4F8fFp3gSQQEvEXSD0G4qKrbthSqU92T8Vq7SJLx1+7mXmga3d42Lce9LxGtdhQPPA30/04GyMVQQnbdoIt8vDc/2zdLIm4Hnf85IvTYbzymp7+xmhY1K4KaASc4u2YIFDH84kypeNIqG/6FxdWNDiEpDBCcFWdZ7M/b1reJhzNmrXz69iJivYT5y47ZXCFViYW1+c0H8xRv9dq/E3ZeHDx2jyA4ucfC3UU1Y7htqwjlCgPA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=WqFu7ENzCaUUEb1owleNXNDVOW0gyYfuYWQAj6HYjqM=;
 b=GLp+uLHgBlPVBealxURibDhEpcZ0o0ds4GV/5g9ei7AbjncGIlbcE8iN8+fleSyrtkt29S8q3NuWB0Fp5njvwRZhf6Bf4M8KTHyIWtk2OeGylpfAbCKwOMZzs89+Q8qWcujFRe3GqxJJwEw6wS/jsSvRkqyVGvF8YKpSnQdjjxupu5YW3/wdsNstqlms+i/Am0LzZW+SfrkG9axcTsXHdfl6iX3odhT3nyYm9Nroe5g2Bj4Uq1AIn4m1XqZCbTwjWYdP/BMtGr1e4bAcAgAyLD72EiaY4/ZAIPXiNtibH4lJB6avE8StML7wad9dq0u13/uLCZboD8WNYd2M99qP1A==
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=WqFu7ENzCaUUEb1owleNXNDVOW0gyYfuYWQAj6HYjqM=;
 b=j0+l/wT7XYT80yt3rK4SdeDSOW6xXvXJnTsyg5TibE5dy4EGmoLQymitLjLLpwgax2oxkbbS6dthMOEk3MP/zIrC5xE9tUj2XwtJmXVFFGCe/hCuTPFD/5SIE7CcPjpEaMfk2CanHxAptCKntxx6gW+ggsAZoKVXuMwkDzIHBKPdBCRH6MWbKiydC2erpm2sSpR9fPomsYYGb7AQ8JCg+yAffIi70/4dXMu5xgM6RMGDOFIbRzXBU/TugW7JS+B5yw9lcwf3vUWxX6aYIfGJXXJlMtRf+YHq9UlDlWrIBpAGYAEEV4fxiuQKDGXlfOX6ERb6wkE8pONf2ny/hyG9sw==
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>,
        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 v10 09/17] rangeset: add rangeset_empty() function
Thread-Topic: [PATCH v10 09/17] rangeset: add rangeset_empty() function
Thread-Index: AQHZ/Vi+5V9BMbiD1kqnOLtHs/D1yw==
Date: Thu, 12 Oct 2023 22:09:17 +0000
Message-ID: <20231012220854.2736994-10-volodymyr_babchuk@epam.com>
References: <20231012220854.2736994-1-volodymyr_babchuk@epam.com>
In-Reply-To: <20231012220854.2736994-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_|DBAPR03MB6376:EE_
x-ms-office365-filtering-correlation-id: ad3e8fd7-1644-4ae1-1401-08dbcb6fe147
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: 
 dafA2DWolEtBzNinphf7l40wykR6Ps52HNA5GTSlmc6zFSFGe+LBt4P5KWYJANmEHnYJ8R40OuIb5mdfDlL+JeDhBqt62y3hfXOd2vM/nOwqzildndOhS7/sSIFdORR2zp74mIMmgoHZyBPGZG/Y/u0UGDdEKvwrZgydhi6IbPHV6vmCw3aY+FpXpUlO8RVdOjloBjK8EJVLja1NaoL3vDscvch6jfNEUSZV5Kw4Y8ZtVyvxdEMQBgadi1vuBkiyVUFAcMcSFiMk+0Rieitn4JneP2hF3XQnHRVyk6WpTge8Itjlsb0SST5SckXjgxcCi/XCs1Sz+Amv+Ld7tH9iOgDQTp6LHrOFv97gGm+p6VUpEzgqiG5ghsfXq2sxit5Zh7dmN44xaXVJP8LXbRKSRZ5oHXPI91o4arAI76b6krW2SWG8ZxhAqCUELh4zwKnsZRlSRyq1FDdnk9JFd7fYP9vdjGrwpAXaNqYF4xQrphQMP7Tsx+iJppa98MwhIaY7xA2NYNFlAaN56aNlzpVIZ99pOdJJfMUKbnRoMid4UFa8v5qAT2ldn6q5S/Nsqpol3RZctX6lFf0DGeM7NsL3/jf27ggrgvn8XV9kNMxffV/3af9tiICoSGiLg3MxZcM0
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)(39860400002)(396003)(346002)(366004)(136003)(230922051799003)(451199024)(64100799003)(186009)(1800799009)(2616005)(71200400001)(26005)(6512007)(6506007)(55236004)(36756003)(86362001)(38100700002)(38070700005)(122000001)(1076003)(83380400001)(91956017)(41300700001)(64756008)(316002)(76116006)(54906003)(66946007)(66446008)(6916009)(66556008)(66476007)(2906002)(8936002)(5660300002)(8676002)(4326008)(6486002)(478600001);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: 
 =?iso-8859-1?Q?FNguRjMLrctWsis3oh5k6rMLJ+BJ+qUFZpz8AYTALTJvUl8WsAHeSEXPjk?=
 =?iso-8859-1?Q?qO/XC02p13/K7kbyltyFX4efZE2ustXY6WFeLudHHnF6pwbGUWgaOnqqjP?=
 =?iso-8859-1?Q?n5C8MbEoeo8jZzHwQ0ol5XOhvWw075XOtOwOSL+F5p1Dd1yXbXj1CBKu2b?=
 =?iso-8859-1?Q?7y9yF19ekbcPUKplFnFdSM/yVuOpYqLdjUcsrkBAs2PXMIJLrNdK7NwZN3?=
 =?iso-8859-1?Q?P3oWv13lwF9HnYKZ1H3zxeRQnBee0QaiHuICtJDS+zyDyX0ag88r2qj490?=
 =?iso-8859-1?Q?IKgx+bOMyWbVQglpEbMBQ9j9iqzVW+2TbTFy4FrUlg5j5THUkxUSGZVze+?=
 =?iso-8859-1?Q?IFDfkFqggyOZBWbi7VwPXl+ruG3OWr4ve5vLE4amN/w+Et+LNUX0FZkB+3?=
 =?iso-8859-1?Q?yPPJ+wgo6B//yTcRWK+kQTSV4UQb7+6umaa3QuoA5wK2WNPkgp1Lo/uD3C?=
 =?iso-8859-1?Q?Q7wi/PocN4PKBpMf5LN5oilUWHtW9WWTDHq7zFsKx5gmxPTccJS3ygffQI?=
 =?iso-8859-1?Q?VNRhczL8OCa6FKv0G02wI+UrUGvhBo56VeI9BU2Sp2ddXRngnBMUuvkJnj?=
 =?iso-8859-1?Q?NpkDT/ubSo1ELUnNPTuu9bPLwCiVsX7cIZzotwcSdW+8M2UN7XNxhIxMBZ?=
 =?iso-8859-1?Q?E1ITjgBrLqicNrqpq9dbfkb9GhjvRXkjJ4FJlnWZDD/+mtjUJR5QxX2ft3?=
 =?iso-8859-1?Q?G2Xuy9eRAVU86CdY83c5JZ+5m4e2XLs0Q+Sq6y6qsHDNTG+1yGIM8Ko836?=
 =?iso-8859-1?Q?/2YU4JnaBdXfVS1E7waxcxNdIxY+SD9wXm4FzPdKqFV4NbSTAt00YmcNEQ?=
 =?iso-8859-1?Q?h7d6EqrgegqDcxptIgtmYpL1KVLDGz8U0mRnIfIzwSKMYvrKcwB1GzODyP?=
 =?iso-8859-1?Q?O6b/CCPfRMMyG60gGEdomX0UbIeZUjqcAOEKI0Qmz8NXcORAG2DJb5CDT4?=
 =?iso-8859-1?Q?EnLf+PqIcRiuz8LU4w7F9WHUPOz60nFdllTcuc5pDTagnrBK/TEBbFl0Us?=
 =?iso-8859-1?Q?UXsmIm/+1q+ngawcDyiU4jRQxH2h9E0mMzzFlb87LAVy9Dbywu13slHPJd?=
 =?iso-8859-1?Q?S7Qt6wnmPb5aoP+iPeIYKpfx32EQZgD6GHkgh6voXeZc7+1WJ7q9U1x1ic?=
 =?iso-8859-1?Q?kpAe/DlD6vB87yNOsEUogUSTs2jbd+s/3b89tR9olbXNgKZsGpeEGZhilZ?=
 =?iso-8859-1?Q?WMEkNKXTny6FSSsXaztSKFrXi88IWt1IPznDN/6s+c/r+iS4ZN20EtP/xm?=
 =?iso-8859-1?Q?n9ZYhOT63M+WPGO8a5uJySNie9ZCm4Az7m3Qz0IPbwCuSk4Bqf/svF0vWW?=
 =?iso-8859-1?Q?z36nY6Xrdw44NNjQN16MSELuB2RFqxcYXjp4kh0UZq4/Y3K1XjpLmNgRBv?=
 =?iso-8859-1?Q?npNi+dveWZ1H6ERaqQPHRP5osgR407ka5MI+1HU7Np+quNpBTSVjYBrUwf?=
 =?iso-8859-1?Q?KkDtRhO6Vza88hbDIzzcdRjuNum/SP68anrFHPD1OgDoVzc+TwPXnTlMMA?=
 =?iso-8859-1?Q?oR9xr66sULtzFA11+kmLuwbU34gaMMaKUyS/MY/YD6NpCoM2/ltiHNWiqN?=
 =?iso-8859-1?Q?+xMUr6CkoC0+qKEai4vdU08HSxiV42Az/CqeYh7ia0ZDH4DejiEZVwUKe6?=
 =?iso-8859-1?Q?Zf+3eATLmLEzcNIOmL7cArsDjXFvkdHB5m3sAnpqzV1cwW5Zn0UqgtRA?=
 =?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: ad3e8fd7-1644-4ae1-1401-08dbcb6fe147
X-MS-Exchange-CrossTenant-originalarrivaltime: 12 Oct 2023 22:09:17.1773
 (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: TKGb42ebSqpbVCV3r2d3fNGjTY4qbRXJnXZTsDcsS7TK+nGV9rPaLlGYC552k9zmUHkhv3h51USFI+pJnzlIC8DDqRmhzkluAVmFAikBCTA=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBAPR03MB6376
X-Proofpoint-GUID: -Z955gI3G8DxrKjvTmp74BgdfJeP3YW_
X-Proofpoint-ORIG-GUID: -Z955gI3G8DxrKjvTmp74BgdfJeP3YW_
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-10-12_14,2023-10-12_01,2023-05-22_02
X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 adultscore=0 spamscore=0
 mlxscore=0 lowpriorityscore=0 suspectscore=0 priorityscore=1501
 impostorscore=0 clxscore=1015 malwarescore=0 bulkscore=0 mlxlogscore=705
 phishscore=0 classifier=spam adjust=0 reason=mlx scancount=1
 engine=8.12.0-2309180000 definitions=main-2310120186

This function can be used when user wants to remove all rangeset
entries but do not want to destroy rangeset itself.

Signed-off-by: Volodymyr Babchuk <volodymyr_babchuk@epam.com>

---

Changes in v10:

 - New in v10. The function is used in "vpci/header: handle p2m range sets =
per BAR"
---
 xen/common/rangeset.c      | 9 +++++++--
 xen/include/xen/rangeset.h | 3 ++-
 2 files changed, 9 insertions(+), 3 deletions(-)

diff --git a/xen/common/rangeset.c b/xen/common/rangeset.c
index 35c3420885..420275669e 100644
--- a/xen/common/rangeset.c
+++ b/xen/common/rangeset.c
@@ -448,8 +448,7 @@ struct rangeset *rangeset_new(
     return r;
 }
=20
-void rangeset_destroy(
-    struct rangeset *r)
+void rangeset_empty(struct rangeset *r)
 {
     struct range *x;
=20
@@ -465,6 +464,12 @@ void rangeset_destroy(
=20
     while ( (x =3D first_range(r)) !=3D NULL )
         destroy_range(r, x);
+}
+
+void rangeset_destroy(
+    struct rangeset *r)
+{
+    rangeset_empty(r);
=20
     xfree(r);
 }
diff --git a/xen/include/xen/rangeset.h b/xen/include/xen/rangeset.h
index f7c69394d6..5eded7ffc5 100644
--- a/xen/include/xen/rangeset.h
+++ b/xen/include/xen/rangeset.h
@@ -56,7 +56,7 @@ void rangeset_limit(
 bool_t __must_check rangeset_is_empty(
     const struct rangeset *r);
=20
-/* Add/claim/remove/query a numeric range. */
+/* Add/claim/remove/query/empty a numeric range. */
 int __must_check rangeset_add_range(
     struct rangeset *r, unsigned long s, unsigned long e);
 int __must_check rangeset_claim_range(struct rangeset *r, unsigned long si=
ze,
@@ -70,6 +70,7 @@ bool_t __must_check rangeset_overlaps_range(
 int rangeset_report_ranges(
     struct rangeset *r, unsigned long s, unsigned long e,
     int (*cb)(unsigned long s, unsigned long e, void *), void *ctxt);
+void rangeset_empty(struct rangeset *r);
=20
 /*
  * Note that the consume function can return an error value apart from
--=20
2.42.0


From xen-devel-bounces@lists.xenproject.org Thu Oct 12 22:09:39 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 22:09:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616075.957881 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qr3sB-0003xB-AU; Thu, 12 Oct 2023 22:09:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616075.957881; Thu, 12 Oct 2023 22:09: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 1qr3sB-0003w9-1X; Thu, 12 Oct 2023 22:09:39 +0000
Received: by outflank-mailman (input) for mailman id 616075;
 Thu, 12 Oct 2023 22:09: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=Hhgq=F2=epam.com=prvs=4649fa389a=volodymyr_babchuk@srs-se1.protection.inumbo.net>)
 id 1qr3s9-00016v-2U
 for xen-devel@lists.xenproject.org; Thu, 12 Oct 2023 22:09:37 +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 0694ae73-694c-11ee-98d4-6d05b1d4d9a1;
 Fri, 13 Oct 2023 00:09:35 +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
 39CKqml5008371; Thu, 12 Oct 2023 22:09:19 GMT
Received: from eur01-db5-obe.outbound.protection.outlook.com
 (mail-db5eur01lp2050.outbound.protection.outlook.com [104.47.2.50])
 by mx0b-0039f301.pphosted.com (PPS) with ESMTPS id 3tpr7cr8dp-3
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT);
 Thu, 12 Oct 2023 22:09:19 +0000
Received: from VI1PR03MB3710.eurprd03.prod.outlook.com (2603:10a6:803:31::18)
 by DBAPR03MB6376.eurprd03.prod.outlook.com (2603:10a6:10:193::6) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.45; Thu, 12 Oct
 2023 22:09:15 +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.6863.043; Thu, 12 Oct 2023
 22: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: 0694ae73-694c-11ee-98d4-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=UXISerJCozR/cSwWSnZVN/L+9TPx2Rzj4hJ/5MfQZS9Mtij8+zqQQ/Ulb+5kz9ycTTTC5E+fZ6T/32gd8OvFZgqLUpSmn2rWK/Ag6o/QqUpey52nbcLFVKShUNOTrC9ZNX2pcTBUmz6vXlzaSbl/gpt/208IXIk5aMiFCeqIy0WzgXYhvG9DncC18g2LV9uZIIhX4kXDBpzaVtGr2lgsnQT6PV31cgIax3fmORGBpeeanKD8Wm5uRVg07H3HYmGzjfTp6cX7B10FvmU63REt5veCHJtJUdMrOV5Hl/qetV//w1pOxVmJuGJOqp1f+Hd+ctG0RDX6pStzHC+ITIjrvw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=mKMPqeeqAlF1usHbA+jD7EzzRAsY3Lp/fUoH9/LNTBQ=;
 b=N8a6gYJ7S6sOVVs6/KN0tpX4sFbJYPhiZPgwRURtmP34r6FmFEmY4E3ZVy2OeRnx1qE317DEBTtOSFW9SlWpb8H8na6Ht35IlLnQ+AnUpRV2V8AXkgZzvPTjyHE+LBWdR4g3VV/jNH/0ku5dtg3JlQDGB4B3inA/t1uPWOYB3RUZW8vgROI3X+zbUQF72wrwS0uAPFyM1gECI8z363ip4OwR1ATONba4U1LcPBDSIJYNo5C+EP2Tg5qqawY6g3og6Mp4o4/up3QzshHbCZ7nu4raW4HoL8rOTuLkZFCvhJPWT0Mh8mtb3As6qaw+avbnJ1qaoxL3COCkLWShZqFcVg==
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=mKMPqeeqAlF1usHbA+jD7EzzRAsY3Lp/fUoH9/LNTBQ=;
 b=B6TKsS8Q7pFbjbb/rI8gVx1rx4CHgfALbJVTqKkmyCXCgjt093jxFpUFQP4I6IZnBShg0yExtaRP+b5nvqEduPuKyOZ4k79HBaZdQEUfHGqfUORQU6YqnQMAvTAswzUZ4Qn9vEzonFAY1BtFcVKyHja0ZTe+Xzo8+xv1sCTnsLnCFxWQWeAgPMTmTr1rfTJ/Fnq49Z8KU/VSUCTduizJCV6KLMZLGeiZU2buEFM2Mz7MS6wG5SpXUSZ7JDKersmEyYsECrGIhDwAcSEOshSm4ddafkU3R9FtP0afUHnERQEx9kvzh3HYvjHwKafUeTXacOUPRvaiMgqXBBJEZHQYJg==
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>,
        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>,
        =?utf-8?B?Um9nZXIgUGF1IE1vbm7DqQ==?= <roger.pau@citrix.com>,
        Kevin Tian
	<kevin.tian@intel.com>
Subject: [PATCH v10 02/17] pci: introduce per-domain PCI rwlock
Thread-Topic: [PATCH v10 02/17] pci: introduce per-domain PCI rwlock
Thread-Index: AQHZ/Vi8UBjbIJy6YEm3bNbn9ygUkA==
Date: Thu, 12 Oct 2023 22:09:15 +0000
Message-ID: <20231012220854.2736994-3-volodymyr_babchuk@epam.com>
References: <20231012220854.2736994-1-volodymyr_babchuk@epam.com>
In-Reply-To: <20231012220854.2736994-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_|DBAPR03MB6376:EE_
x-ms-office365-filtering-correlation-id: 66e37b67-8e0a-4acb-e154-08dbcb6fdf86
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: 
 CKd8MLleDT85CFN7KIFs/VrYxxMKc9ul7g+aJs7LWbaof7T1wkfU1RdjoIYbXL1aW5l2UJKHOeL7t0cwPe5CElKu2SwhgYYeUhzKgxWmAF9OxyAwmHVzSL+iMSNUyFGAk3ybZHGg+W/6xNpQVjhuDbc9QmMGPBcLnWuFqvAMNd6CMkM5IZY/qlAv+3WJcRZIxiikhtNvGzYf7jGCaCG17K3dX6p35o7+Itn/oEKyDVg7QvDhEzX/K3fbCZc6mc//CWKJotZyJC3YpQRFgTmT/OXfJKePJiJxEcDt0E5XiUjq0q6PlxEoJvdMhdE+E2F/3l4tVmWJxoBuZyKpyryokeyUA5rFm8CDLUJHPNUDJT8/DbNHsftZIt4m8PhyY6d0yf4eoo+Fgl0GAlrAQfWn6GnvCijcuwF3Ocx+ytaZ4ABJ2D/LseuElzEzn2DzKsbCc60k75LLzqkjAFdYNVCTfQxA4HI0kgh8WvwgvOlZ+FQAtAxQDj1KaUzT0p9jxBUcFw4NsYHJJl/STgflgZrVpfSG9FnyGd8Tw5QR57lJ3g4ceBGzJdj2tman03EXVz13PazVcXT0RH95gHgq3S1cWbaii8AnupLFCZxv8L2v/eZxdkkuwvwzXOE+jzlj+BFI
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)(39860400002)(396003)(346002)(366004)(136003)(230922051799003)(451199024)(64100799003)(186009)(1800799009)(2616005)(71200400001)(26005)(6512007)(6506007)(55236004)(36756003)(86362001)(38100700002)(38070700005)(122000001)(1076003)(83380400001)(7416002)(91956017)(41300700001)(64756008)(316002)(76116006)(54906003)(66946007)(66446008)(6916009)(66556008)(66476007)(2906002)(8936002)(5660300002)(8676002)(4326008)(6486002)(478600001);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: 
 =?utf-8?B?aEQvL2Roa0xpZEQybHFGc2paQ0liaURFMDV5dkMxMUlPK1V6bzQ0TUhneGhz?=
 =?utf-8?B?c1ZaLzNCcTFBcDAzOHlIT2JXNk05cFluemVsT0NDdmN2d1JxYy9tbVdFa1J4?=
 =?utf-8?B?eStpa1BYQUxJNnN5UkdpUmp4cVJib1VNK3p0ckc3NlAvRUV6cUFDM0o3UjJS?=
 =?utf-8?B?dFBZQlVSYXptaFYxaUdqUXhYOXo0TVIrWjNOTEVUaERkSGRPV1VqT0MvRktN?=
 =?utf-8?B?MFZsbnkyK2FkVW1tK2tRWS9ITGI2WDZHT2dkVXZkOVRHSlZ3WkpqRTBaT2RH?=
 =?utf-8?B?MkRia1B4QmZqMWg2cGZSRXFvNE1HWEtUSllocXhJV1RnZFF6aXo0YVVTcHFl?=
 =?utf-8?B?TENOMjcvckxkZ21aV0IyQmQ4Tnh0eVdZWGZmM3V1MmUybVJRZitNa2VKODgy?=
 =?utf-8?B?T3JQbWgrdGdIL0tETnowNm9TaHVxOFdnalI4dCtSblFOWnRKbWVvQm40Mysw?=
 =?utf-8?B?WXhwODIzVnpDSDNxekY4aHlWSm82dzVGQjdENkRmdndYTURKekhNajJjL0Ji?=
 =?utf-8?B?MEY5RWJIUG54S3M4M3RKNUhIeHZhOU9peDBZN3B6YnFhUkZnVUIySXU5U04v?=
 =?utf-8?B?amdKQWRtZGd0NFlub1lXQjl6V0lKaHoybC9iRmlPMC9XL2JUMVQ1cVRDdEVG?=
 =?utf-8?B?ZUt4OW1TcnArYS84WTZZdE1vNmJsc1dGazFqaGdaOTRzcjllcUVUNHRoV2NV?=
 =?utf-8?B?UkYxYnptT1JWSmlJN0NMQTFxN2RjMHNTbUV5VSsrL3VkbTZTdml2dEpHT2xZ?=
 =?utf-8?B?Uk1tQkViVU96TGQwakRLRi9vOGJqU3pXVWUyWkZ2ZXg4WVdrUXMvT3YzdCt6?=
 =?utf-8?B?bnVvY1JzbEpkbitWWmZXbFkrMHlxaUg1MnpLS1lXUUhpbmJaZjk3RU02bDFh?=
 =?utf-8?B?Q0xmeWhTM3hRaHNzUnQ0cnNEMElybHNEbjgvbjl0L0x4Z2RTYzdJd3c1WkVC?=
 =?utf-8?B?WnpCT3BJU05QbHJpYnQyQ2R0dXBGRkI2andRcmQ3aW1lQUVuemdhL0VKbWRj?=
 =?utf-8?B?dWduNkVwWkFmL1NqZVlxM3dCNlh1NkRTdC9hSWlTbjR4MHdqckJUcFhlb3h0?=
 =?utf-8?B?c1MyTzZmcVVDRlMyNmFER01Ia0pJV0hJeTFWNFNYRFl1SmRNNEZTZ1RjNW9n?=
 =?utf-8?B?RFoydm1NdUxZLzZUUTZWNVpkNjFFWUdDTmdIR2tFVk9Od1hPM2NSYVVEbzAr?=
 =?utf-8?B?cVduTFJlRm5KYTFuN1FvZ2FhdFh6KzlZUWVqdWxtRkwwNHR2RmJtOXN5ZVVU?=
 =?utf-8?B?SlEyQTBFSHBSNWZ4N1hkb3dpc0d4VW84WHJNbXhLSzBiTnBZTGRoemhRQjZP?=
 =?utf-8?B?SGp1SXBqUmViMlBwbm9zUWk1cWR3S1p0dDBxWndXWlEzVVpqQjVNdG9ML2xt?=
 =?utf-8?B?cHB3VXhIRkZNRnQwOG9PQzZEMnhKSWpnK2Q4ZlVvd21UWWlZMVdJV2tkbU5o?=
 =?utf-8?B?SUZzSHlNWGJrY3EyVmxyZ1BVdnkrMzJ4bzJSc08xL1cvcGtQUTJhbVphWGJu?=
 =?utf-8?B?THUraWpqZ1p6SHEram0vU0xOaTBlczZjSUE4Wkx3VG1tZ0NueW83WE04WVo1?=
 =?utf-8?B?TjJRaUxwTnlUcHpJWXVKNC9RbTJTdk9NQWVId3JiSjdySGlFSGNjZW42aXcy?=
 =?utf-8?B?dDcvNHhPSVJkdTRxWHpwVVVtTlFDNk5tbHpvemZZMnZrNElEa3E4Rmo5VEx4?=
 =?utf-8?B?T1VYdXBWUyt6dHQyMDFPMVFrdkMza0s2Ymk0TkFNUms1bGdWTWxjMWp2aEJD?=
 =?utf-8?B?cEMvUU9FM3pxVVB5RmdVR1BObno0UVRHN1NJTWFDV1pnM3FxbjZSL3lvMXJI?=
 =?utf-8?B?ejNjMm5YeVhjZy9EV0tQcXBEdUpCR1hTT0JxTWFvbDlXZzdsNitmVGdZUGR1?=
 =?utf-8?B?NnJJbDBERlJnR3pnWG04cTdMVTlEOTdQbFpGQjQ1RHdzRFZPSW5EUTRWYUcv?=
 =?utf-8?B?cG1INld6S3lXcVVOUFVESlllYXcrOTFZbmw1L1ZOWVRNNXpFUDJ4S1dsUmpz?=
 =?utf-8?B?TFpkVDlZR21OaEpvK1djSTVYQUt0Qnl1K3JpaVBGTFp0YkMvK3orb0RjNWUx?=
 =?utf-8?B?U0pNdmtldGp1TEZNVE9Da1VLZHFQcGN4TG9DL3VGOE1EVTFXcXNQYlV2dm5h?=
 =?utf-8?B?cWtiS2xHTS9wUG9abFlJWnpvME5uSnBCTjVLdklBR3Z0dTMvRzhETjVIS2ZL?=
 =?utf-8?B?Z0E9PQ==?=
Content-Type: text/plain; charset="utf-8"
Content-ID: <DACAF7B5EFEC064597A3B5E3444922C1@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: 66e37b67-8e0a-4acb-e154-08dbcb6fdf86
X-MS-Exchange-CrossTenant-originalarrivaltime: 12 Oct 2023 22:09:15.1897
 (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: ax9t6PRfM1NWgQR+g8sQK1eHftN+s5NKCNACQY0wFqzIxx3j4UVDorCtKLU052VCFbJgccOln4irUyZAOvTlyC4xNZlu2eSlfF+/ovVBUuQ=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBAPR03MB6376
X-Proofpoint-GUID: mEd38r7guj_3gAoyQaBuv4MEc-YoAHxc
X-Proofpoint-ORIG-GUID: mEd38r7guj_3gAoyQaBuv4MEc-YoAHxc
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-10-12_14,2023-10-12_01,2023-05-22_02
X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 adultscore=0 spamscore=0
 mlxscore=0 lowpriorityscore=0 suspectscore=0 priorityscore=1501
 impostorscore=0 clxscore=1015 malwarescore=0 bulkscore=0 mlxlogscore=999
 phishscore=0 classifier=spam adjust=0 reason=mlx scancount=1
 engine=8.12.0-2309180000 definitions=main-2310120186

QWRkIHBlci1kb21haW4gZC0+cGNpX2xvY2sgdGhhdCBwcm90ZWN0cyBhY2Nlc3MgdG8NCmQtPnBk
ZXZfbGlzdC4gUHVycG9zZSBvZiB0aGlzIGxvY2sgaXMgdG8gZ2l2ZSBndWFyYW50ZWVzIHRvIFZQ
Q0kgY29kZQ0KdGhhdCB1bmRlcmx5aW5nIHBkZXYgd2lsbCBub3QgZGlzYXBwZWFyIHVuZGVyIGZl
ZXQuIFRoaXMgaXMgYSBydy1sb2NrLA0KYnV0IHRoaXMgcGF0Y2ggYWRkcyBvbmx5IHdyaXRlX2xv
Y2soKXMuIFRoZXJlIHdpbGwgYmUgcmVhZF9sb2NrKCkNCnVzZXJzIGluIHRoZSBuZXh0IHBhdGNo
ZXMuDQoNClRoaXMgbG9jayBzaG91bGQgYmUgdGFrZW4gaW4gd3JpdGUgbW9kZSBldmVyeSB0aW1l
IGQtPnBkZXZfbGlzdCBpcw0KYWx0ZXJlZC4gQWxsIHdyaXRlIGFjY2Vzc2VzIGFsc28gc2hvdWxk
IGJlIHByb3RlY3RlZCBieSBwY2lkZXZzX2xvY2soKQ0KYXMgd2VsbC4gSWRlYSBpcyB0aGF0IGFu
eSB1c2VyIHRoYXQgd2FudHMgcmVhZCBhY2Nlc3MgdG8gdGhlIGxpc3Qgb3INCnRvIHRoZSBkZXZp
Y2VzIHN0b3JlZCBpbiB0aGUgbGlzdCBzaG91bGQgdXNlIGVpdGhlciB0aGlzIG5ldw0KZC0+cGNp
X2xvY2sgb3Igb2xkIHBjaWRldnNfbG9jaygpLiBVc2FnZSBvZiBhbnkgb2YgdGhpcyB0d28gbG9j
a3Mgd2lsbA0KZW5zdXJlIG9ubHkgdGhhdCBwZGV2IG9mIGludGVyZXN0IHdpbGwgbm90IGRpc2Fw
cGVhciBmcm9tIHVuZGVyIGZlZXQNCmFuZCB0aGF0IHRoZSBwZGV2IHN0aWxsIHdpbGwgYmUgYXNz
aWduZWQgdG8gdGhlIHNhbWUgZG9tYWluLiBPZg0KY291cnNlLCBhbnkgbmV3IHVzZXJzIHNob3Vs
ZCB1c2UgcGNpZGV2c19sb2NrKCkgd2hlbiBpdCBpcw0KYXBwcm9wcmlhdGUgKGUuZy4gd2hlbiBh
Y2Nlc3NpbmcgYW55IG90aGVyIHN0YXRlIHRoYXQgaXMgcHJvdGVjdGVkIGJ5DQp0aGUgc2FpZCBs
b2NrKS4gSW4gY2FzZSBib3RoIHRoZSBuZXdseSBpbnRyb2R1Y2VkIHBlci1kb21haW4gcndsb2Nr
DQphbmQgdGhlIHBjaWRldnMgbG9jayBpcyB0YWtlbiwgdGhlIGxhdGVyIG11c3QgYmUgYWNxdWly
ZWQgZmlyc3QuDQoNClN1Z2dlc3RlZC1ieTogUm9nZXIgUGF1IE1vbm7DqSA8cm9nZXIucGF1QGNp
dHJpeC5jb20+DQpTdWdnZXN0ZWQtYnk6IEphbiBCZXVsaWNoIDxqYmV1bGljaEBzdXNlLmNvbT4N
ClNpZ25lZC1vZmYtYnk6IFZvbG9keW15ciBCYWJjaHVrIDx2b2xvZHlteXJfYmFiY2h1a0BlcGFt
LmNvbT4NCg0KLS0tDQoNCkNoYW5nZXMgaW4gdjEwOg0KIC0gcGRldi0+ZG9tYWluIGlzIGFzc2ln
bmVkIGFmdGVyIHJlbW92aW5nIGZyb20gc291cmNlIGRvbWFpbiBidXQNCiAgIGJlZm9yZSBhZGRp
bmcgdG8gdGFyZ2V0IGRvbWFpbiBpbiByZWFzc2lnbl9kZXZpY2UoKSBmdW5jdGlvbnMuDQoNCkNo
YW5nZXMgaW4gdjk6DQogLSByZXR1cm5lZCBiYWNrICJwZGV2LT5kb21haW4gPSB0YXJnZXQ7IiBp
biBBTUQgSU9NTVUgY29kZQ0KIC0gdXNlZCAic291cmNlIiBpbnN0ZWFkIG9mIHBkZXYtPmRvbWFp
biBpbiBJT01NVSBmdW5jdGlvbnMNCiAtIGFkZGVkIGNvbW1lbnQgYWJvdXQgbG9jayBvcmRlcmlu
ZyBpbiB0aGUgY29tbWl0IG1lc3NhZ2UNCiAtIHJlZHVjZWQgbG9ja2VkIHJlZ2lvbnMNCiAtIG1p
bm9yIGNoYW5nZXMgbm9uLWZ1bmN0aW9uYWwgY2hhbmdlcyBpbiB2YXJpb3VzIHBsYWNlcw0KDQpD
aGFuZ2VzIGluIHY4Og0KIC0gTmV3IHBhdGNoDQoNCkNoYW5nZXMgaW4gdjggdnMgUkZDOg0KIC0g
UmVtb3ZlZCBhbGwgcmVhZF9sb2NrcyBhZnRlciBkaXNjdXNzaW9uIHdpdGggUm9nZXIgaW4gI3hl
bmRldmVsDQogLSBwY2lfcmVsZWFzZV9kZXZpY2VzKCkgbm93IHJldHVybnMgdGhlIGZpcnN0IGVy
cm9yIGNvZGUNCiAtIGV4dGVuZGVkIGNvbW1pdCBtZXNzYWdlDQogLSBhZGRlZCBtaXNzaW5nIGxv
Y2sgaW4gcGNpX3JlbW92ZV9kZXZpY2UoKQ0KIC0gZXh0ZW5kZWQgbG9ja2VkIHJlZ2lvbiBpbiBw
Y2lfYWRkX2RldmljZSgpIHRvIHByb3RlY3QgbGlzdF9kZWwoKSBjYWxscw0KLS0tDQogeGVuL2Nv
bW1vbi9kb21haW4uYyAgICAgICAgICAgICAgICAgICAgICAgICB8ICAxICsNCiB4ZW4vZHJpdmVy
cy9wYXNzdGhyb3VnaC9hbWQvcGNpX2FtZF9pb21tdS5jIHwgIDkgKystDQogeGVuL2RyaXZlcnMv
cGFzc3Rocm91Z2gvcGNpLmMgICAgICAgICAgICAgICB8IDcxICsrKysrKysrKysrKysrKysrLS0t
LQ0KIHhlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL3Z0ZC9pb21tdS5jICAgICAgICAgfCAgOSArKy0N
CiB4ZW4vaW5jbHVkZS94ZW4vc2NoZWQuaCAgICAgICAgICAgICAgICAgICAgIHwgIDEgKw0KIDUg
ZmlsZXMgY2hhbmdlZCwgNzggaW5zZXJ0aW9ucygrKSwgMTMgZGVsZXRpb25zKC0pDQoNCmRpZmYg
LS1naXQgYS94ZW4vY29tbW9uL2RvbWFpbi5jIGIveGVuL2NvbW1vbi9kb21haW4uYw0KaW5kZXgg
OGY5YWIwMWMwYy4uNzg1YzY5ZTQ4YiAxMDA2NDQNCi0tLSBhL3hlbi9jb21tb24vZG9tYWluLmMN
CisrKyBiL3hlbi9jb21tb24vZG9tYWluLmMNCkBAIC02NTEsNiArNjUxLDcgQEAgc3RydWN0IGRv
bWFpbiAqZG9tYWluX2NyZWF0ZShkb21pZF90IGRvbWlkLA0KIA0KICNpZmRlZiBDT05GSUdfSEFT
X1BDSQ0KICAgICBJTklUX0xJU1RfSEVBRCgmZC0+cGRldl9saXN0KTsNCisgICAgcndsb2NrX2lu
aXQoJmQtPnBjaV9sb2NrKTsNCiAjZW5kaWYNCiANCiAgICAgLyogQWxsIGVycm9yIHBhdGhzIGNh
biBkZXBlbmQgb24gdGhlIGFib3ZlIHNldHVwLiAqLw0KZGlmZiAtLWdpdCBhL3hlbi9kcml2ZXJz
L3Bhc3N0aHJvdWdoL2FtZC9wY2lfYW1kX2lvbW11LmMgYi94ZW4vZHJpdmVycy9wYXNzdGhyb3Vn
aC9hbWQvcGNpX2FtZF9pb21tdS5jDQppbmRleCA4MzZjMjRiMDJlLi4zNmE2MTdiZWQ0IDEwMDY0
NA0KLS0tIGEveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvYW1kL3BjaV9hbWRfaW9tbXUuYw0KKysr
IGIveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvYW1kL3BjaV9hbWRfaW9tbXUuYw0KQEAgLTQ3Niw4
ICs0NzYsMTUgQEAgc3RhdGljIGludCBjZl9jaGVjayByZWFzc2lnbl9kZXZpY2UoDQogDQogICAg
IGlmICggZGV2Zm4gPT0gcGRldi0+ZGV2Zm4gJiYgcGRldi0+ZG9tYWluICE9IHRhcmdldCApDQog
ICAgIHsNCi0gICAgICAgIGxpc3RfbW92ZSgmcGRldi0+ZG9tYWluX2xpc3QsICZ0YXJnZXQtPnBk
ZXZfbGlzdCk7DQorICAgICAgICB3cml0ZV9sb2NrKCZzb3VyY2UtPnBjaV9sb2NrKTsNCisgICAg
ICAgIGxpc3RfZGVsKCZwZGV2LT5kb21haW5fbGlzdCk7DQorICAgICAgICB3cml0ZV91bmxvY2so
JnNvdXJjZS0+cGNpX2xvY2spOw0KKw0KICAgICAgICAgcGRldi0+ZG9tYWluID0gdGFyZ2V0Ow0K
Kw0KKyAgICAgICAgd3JpdGVfbG9jaygmdGFyZ2V0LT5wY2lfbG9jayk7DQorICAgICAgICBsaXN0
X2FkZCgmcGRldi0+ZG9tYWluX2xpc3QsICZ0YXJnZXQtPnBkZXZfbGlzdCk7DQorICAgICAgICB3
cml0ZV91bmxvY2soJnRhcmdldC0+cGNpX2xvY2spOw0KICAgICB9DQogDQogICAgIC8qDQpkaWZm
IC0tZ2l0IGEveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvcGNpLmMgYi94ZW4vZHJpdmVycy9wYXNz
dGhyb3VnaC9wY2kuYw0KaW5kZXggMDRkMDBjN2MzNy4uYjhhZDRmYTA3YyAxMDA2NDQNCi0tLSBh
L3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL3BjaS5jDQorKysgYi94ZW4vZHJpdmVycy9wYXNzdGhy
b3VnaC9wY2kuYw0KQEAgLTQ1Myw3ICs0NTMsOSBAQCBzdGF0aWMgdm9pZCBfX2luaXQgX3BjaV9o
aWRlX2RldmljZShzdHJ1Y3QgcGNpX2RldiAqcGRldikNCiAgICAgaWYgKCBwZGV2LT5kb21haW4g
KQ0KICAgICAgICAgcmV0dXJuOw0KICAgICBwZGV2LT5kb21haW4gPSBkb21feGVuOw0KKyAgICB3
cml0ZV9sb2NrKCZkb21feGVuLT5wY2lfbG9jayk7DQogICAgIGxpc3RfYWRkKCZwZGV2LT5kb21h
aW5fbGlzdCwgJmRvbV94ZW4tPnBkZXZfbGlzdCk7DQorICAgIHdyaXRlX3VubG9jaygmZG9tX3hl
bi0+cGNpX2xvY2spOw0KIH0NCiANCiBpbnQgX19pbml0IHBjaV9oaWRlX2RldmljZSh1bnNpZ25l
ZCBpbnQgc2VnLCB1bnNpZ25lZCBpbnQgYnVzLA0KQEAgLTc0Niw3ICs3NDgsOSBAQCBpbnQgcGNp
X2FkZF9kZXZpY2UodTE2IHNlZywgdTggYnVzLCB1OCBkZXZmbiwNCiAgICAgaWYgKCAhcGRldi0+
ZG9tYWluICkNCiAgICAgew0KICAgICAgICAgcGRldi0+ZG9tYWluID0gaGFyZHdhcmVfZG9tYWlu
Ow0KKyAgICAgICAgd3JpdGVfbG9jaygmaGFyZHdhcmVfZG9tYWluLT5wY2lfbG9jayk7DQogICAg
ICAgICBsaXN0X2FkZCgmcGRldi0+ZG9tYWluX2xpc3QsICZoYXJkd2FyZV9kb21haW4tPnBkZXZf
bGlzdCk7DQorICAgICAgICB3cml0ZV91bmxvY2soJmhhcmR3YXJlX2RvbWFpbi0+cGNpX2xvY2sp
Ow0KIA0KICAgICAgICAgLyoNCiAgICAgICAgICAqIEZvciBkZXZpY2VzIG5vdCBkaXNjb3ZlcmVk
IGJ5IFhlbiBkdXJpbmcgYm9vdCwgYWRkIHZQQ0kgaGFuZGxlcnMNCkBAIC03NTYsNyArNzYwLDkg
QEAgaW50IHBjaV9hZGRfZGV2aWNlKHUxNiBzZWcsIHU4IGJ1cywgdTggZGV2Zm4sDQogICAgICAg
ICBpZiAoIHJldCApDQogICAgICAgICB7DQogICAgICAgICAgICAgcHJpbnRrKFhFTkxPR19FUlIg
IlNldHVwIG9mIHZQQ0kgZmFpbGVkOiAlZFxuIiwgcmV0KTsNCisgICAgICAgICAgICB3cml0ZV9s
b2NrKCZoYXJkd2FyZV9kb21haW4tPnBjaV9sb2NrKTsNCiAgICAgICAgICAgICBsaXN0X2RlbCgm
cGRldi0+ZG9tYWluX2xpc3QpOw0KKyAgICAgICAgICAgIHdyaXRlX3VubG9jaygmaGFyZHdhcmVf
ZG9tYWluLT5wY2lfbG9jayk7DQogICAgICAgICAgICAgcGRldi0+ZG9tYWluID0gTlVMTDsNCiAg
ICAgICAgICAgICBnb3RvIG91dDsNCiAgICAgICAgIH0NCkBAIC03NjQsNyArNzcwLDkgQEAgaW50
IHBjaV9hZGRfZGV2aWNlKHUxNiBzZWcsIHU4IGJ1cywgdTggZGV2Zm4sDQogICAgICAgICBpZiAo
IHJldCApDQogICAgICAgICB7DQogICAgICAgICAgICAgdnBjaV9yZW1vdmVfZGV2aWNlKHBkZXYp
Ow0KKyAgICAgICAgICAgIHdyaXRlX2xvY2soJmhhcmR3YXJlX2RvbWFpbi0+cGNpX2xvY2spOw0K
ICAgICAgICAgICAgIGxpc3RfZGVsKCZwZGV2LT5kb21haW5fbGlzdCk7DQorICAgICAgICAgICAg
d3JpdGVfdW5sb2NrKCZoYXJkd2FyZV9kb21haW4tPnBjaV9sb2NrKTsNCiAgICAgICAgICAgICBw
ZGV2LT5kb21haW4gPSBOVUxMOw0KICAgICAgICAgICAgIGdvdG8gb3V0Ow0KICAgICAgICAgfQ0K
QEAgLTgxNCw3ICs4MjIsMTEgQEAgaW50IHBjaV9yZW1vdmVfZGV2aWNlKHUxNiBzZWcsIHU4IGJ1
cywgdTggZGV2Zm4pDQogICAgICAgICAgICAgcGNpX2NsZWFudXBfbXNpKHBkZXYpOw0KICAgICAg
ICAgICAgIHJldCA9IGlvbW11X3JlbW92ZV9kZXZpY2UocGRldik7DQogICAgICAgICAgICAgaWYg
KCBwZGV2LT5kb21haW4gKQ0KKyAgICAgICAgICAgIHsNCisgICAgICAgICAgICAgICAgd3JpdGVf
bG9jaygmcGRldi0+ZG9tYWluLT5wY2lfbG9jayk7DQogICAgICAgICAgICAgICAgIGxpc3RfZGVs
KCZwZGV2LT5kb21haW5fbGlzdCk7DQorICAgICAgICAgICAgICAgIHdyaXRlX3VubG9jaygmcGRl
di0+ZG9tYWluLT5wY2lfbG9jayk7DQorICAgICAgICAgICAgfQ0KICAgICAgICAgICAgIHByaW50
ayhYRU5MT0dfREVCVUcgIlBDSSByZW1vdmUgZGV2aWNlICVwcFxuIiwgJnBkZXYtPnNiZGYpOw0K
ICAgICAgICAgICAgIGZyZWVfcGRldihwc2VnLCBwZGV2KTsNCiAgICAgICAgICAgICBicmVhazsN
CkBAIC04ODUsMjYgKzg5Nyw2MSBAQCBzdGF0aWMgaW50IGRlYXNzaWduX2RldmljZShzdHJ1Y3Qg
ZG9tYWluICpkLCB1aW50MTZfdCBzZWcsIHVpbnQ4X3QgYnVzLA0KIA0KIGludCBwY2lfcmVsZWFz
ZV9kZXZpY2VzKHN0cnVjdCBkb21haW4gKmQpDQogew0KLSAgICBzdHJ1Y3QgcGNpX2RldiAqcGRl
diwgKnRtcDsNCi0gICAgdTggYnVzLCBkZXZmbjsNCi0gICAgaW50IHJldDsNCisgICAgaW50IGNv
bWJpbmVkX3JldDsNCisgICAgTElTVF9IRUFEKGZhaWxlZF9wZGV2cyk7DQogDQogICAgIHBjaWRl
dnNfbG9jaygpOw0KLSAgICByZXQgPSBhcmNoX3BjaV9jbGVhbl9waXJxcyhkKTsNCi0gICAgaWYg
KCByZXQgKQ0KKw0KKyAgICBjb21iaW5lZF9yZXQgPSBhcmNoX3BjaV9jbGVhbl9waXJxcyhkKTsN
CisgICAgaWYgKCBjb21iaW5lZF9yZXQgKQ0KICAgICB7DQogICAgICAgICBwY2lkZXZzX3VubG9j
aygpOw0KLSAgICAgICAgcmV0dXJuIHJldDsNCisgICAgICAgIHJldHVybiBjb21iaW5lZF9yZXQ7
DQogICAgIH0NCi0gICAgbGlzdF9mb3JfZWFjaF9lbnRyeV9zYWZlICggcGRldiwgdG1wLCAmZC0+
cGRldl9saXN0LCBkb21haW5fbGlzdCApDQorDQorICAgIHdyaXRlX2xvY2soJmQtPnBjaV9sb2Nr
KTsNCisNCisgICAgd2hpbGUgKCAhbGlzdF9lbXB0eSgmZC0+cGRldl9saXN0KSApDQogICAgIHsN
Ci0gICAgICAgIGJ1cyA9IHBkZXYtPmJ1czsNCi0gICAgICAgIGRldmZuID0gcGRldi0+ZGV2Zm47
DQotICAgICAgICByZXQgPSBkZWFzc2lnbl9kZXZpY2UoZCwgcGRldi0+c2VnLCBidXMsIGRldmZu
KSA/OiByZXQ7DQorICAgICAgICBzdHJ1Y3QgcGNpX2RldiAqcGRldiA9IGxpc3RfZmlyc3RfZW50
cnkoJmQtPnBkZXZfbGlzdCwNCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBzdHJ1Y3QgcGNpX2RldiwNCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBkb21haW5fbGlzdCk7DQorICAgICAgICB1aW50MTZfdCBzZWcg
PSBwZGV2LT5zZWc7DQorICAgICAgICB1aW50OF90IGJ1cyA9IHBkZXYtPmJ1czsNCisgICAgICAg
IHVpbnQ4X3QgZGV2Zm4gPSBwZGV2LT5kZXZmbjsNCisgICAgICAgIGludCByZXQ7DQorDQorICAg
ICAgICB3cml0ZV91bmxvY2soJmQtPnBjaV9sb2NrKTsNCisgICAgICAgIHJldCA9IGRlYXNzaWdu
X2RldmljZShkLCBzZWcsIGJ1cywgZGV2Zm4pOw0KKyAgICAgICAgd3JpdGVfbG9jaygmZC0+cGNp
X2xvY2spOw0KKyAgICAgICAgaWYgKCByZXQgKQ0KKyAgICAgICAgew0KKyAgICAgICAgICAgIGNv
bnN0IHN0cnVjdCBwY2lfZGV2ICp0bXA7DQorDQorICAgICAgICAgICAgLyoNCisgICAgICAgICAg
ICAgKiBXZSBuZWVkIHRvIGNoZWNrIGlmIGRlYXNzaWduX2RldmljZSgpIGxlZnQgb3VyIHBkZXYg
aW4NCisgICAgICAgICAgICAgKiBkb21haW4ncyBsaXN0LiBBcyB3ZSBkcm9wcGVkIHRoZSBsb2Nr
LCB3ZSBjYW4ndCBiZSBzdXJlDQorICAgICAgICAgICAgICogdGhhdCBsaXN0IHdhc24ndCBwZXJt
dXRhdGVkIGluIHNvbWUgcmFuZG9tIHdheSwgc28gd2UNCisgICAgICAgICAgICAgKiBuZWVkIHRv
IHRyYXZlcnNlIHRoZSB3aG9sZSBsaXN0Lg0KKyAgICAgICAgICAgICAqLw0KKyAgICAgICAgICAg
IGZvcl9lYWNoX3BkZXYgKCBkLCB0bXAgKQ0KKyAgICAgICAgICAgIHsNCisgICAgICAgICAgICAg
ICAgaWYgKCB0bXAgPT0gcGRldiApDQorICAgICAgICAgICAgICAgIHsNCisgICAgICAgICAgICAg
ICAgICAgIGxpc3RfbW92ZV90YWlsKCZwZGV2LT5kb21haW5fbGlzdCwgJmZhaWxlZF9wZGV2cyk7
DQorICAgICAgICAgICAgICAgICAgICBicmVhazsNCisgICAgICAgICAgICAgICAgfQ0KKyAgICAg
ICAgICAgIH0NCisNCisgICAgICAgICAgICBjb21iaW5lZF9yZXQgPSBjb21iaW5lZF9yZXQgPzog
cmV0Ow0KKyAgICAgICAgfQ0KICAgICB9DQorDQorICAgIGxpc3Rfc3BsaWNlKCZmYWlsZWRfcGRl
dnMsICZkLT5wZGV2X2xpc3QpOw0KKyAgICB3cml0ZV91bmxvY2soJmQtPnBjaV9sb2NrKTsNCiAg
ICAgcGNpZGV2c191bmxvY2soKTsNCiANCi0gICAgcmV0dXJuIHJldDsNCisgICAgcmV0dXJuIGNv
bWJpbmVkX3JldDsNCiB9DQogDQogI2RlZmluZSBQQ0lfQ0xBU1NfQlJJREdFX0hPU1QgICAgMHgw
NjAwDQpAQCAtMTEyNCw3ICsxMTcxLDkgQEAgc3RhdGljIGludCBfX2h3ZG9tX2luaXQgY2ZfY2hl
Y2sgX3NldHVwX2h3ZG9tX3BjaV9kZXZpY2VzKA0KICAgICAgICAgICAgIGlmICggIXBkZXYtPmRv
bWFpbiApDQogICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICBwZGV2LT5kb21haW4gPSBj
dHh0LT5kOw0KKyAgICAgICAgICAgICAgICB3cml0ZV9sb2NrKCZjdHh0LT5kLT5wY2lfbG9jayk7
DQogICAgICAgICAgICAgICAgIGxpc3RfYWRkKCZwZGV2LT5kb21haW5fbGlzdCwgJmN0eHQtPmQt
PnBkZXZfbGlzdCk7DQorICAgICAgICAgICAgICAgIHdyaXRlX3VubG9jaygmY3R4dC0+ZC0+cGNp
X2xvY2spOw0KICAgICAgICAgICAgICAgICBzZXR1cF9vbmVfaHdkb21fZGV2aWNlKGN0eHQsIHBk
ZXYpOw0KICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICBlbHNlIGlmICggcGRldi0+ZG9tYWlu
ID09IGRvbV94ZW4gKQ0KZGlmZiAtLWdpdCBhL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL3Z0ZC9p
b21tdS5jIGIveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvdnRkL2lvbW11LmMNCmluZGV4IGQzNGM5
OGQ5YzcuLmNkYjEyMjU1NzggMTAwNjQ0DQotLS0gYS94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC92
dGQvaW9tbXUuYw0KKysrIGIveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvdnRkL2lvbW11LmMNCkBA
IC0yODA2LDggKzI4MDYsMTUgQEAgc3RhdGljIGludCBjZl9jaGVjayByZWFzc2lnbl9kZXZpY2Vf
b3duZXJzaGlwKA0KIA0KICAgICBpZiAoIGRldmZuID09IHBkZXYtPmRldmZuICYmIHBkZXYtPmRv
bWFpbiAhPSB0YXJnZXQgKQ0KICAgICB7DQotICAgICAgICBsaXN0X21vdmUoJnBkZXYtPmRvbWFp
bl9saXN0LCAmdGFyZ2V0LT5wZGV2X2xpc3QpOw0KKyAgICAgICAgd3JpdGVfbG9jaygmc291cmNl
LT5wY2lfbG9jayk7DQorICAgICAgICBsaXN0X2RlbCgmcGRldi0+ZG9tYWluX2xpc3QpOw0KKyAg
ICAgICAgd3JpdGVfdW5sb2NrKCZzb3VyY2UtPnBjaV9sb2NrKTsNCisNCiAgICAgICAgIHBkZXYt
PmRvbWFpbiA9IHRhcmdldDsNCisNCisgICAgICAgIHdyaXRlX2xvY2soJnRhcmdldC0+cGNpX2xv
Y2spOw0KKyAgICAgICAgbGlzdF9hZGQoJnBkZXYtPmRvbWFpbl9saXN0LCAmdGFyZ2V0LT5wZGV2
X2xpc3QpOw0KKyAgICAgICAgd3JpdGVfdW5sb2NrKCZ0YXJnZXQtPnBjaV9sb2NrKTsNCiAgICAg
fQ0KIA0KICAgICBpZiAoICFoYXNfYXJjaF9wZGV2cyhzb3VyY2UpICkNCmRpZmYgLS1naXQgYS94
ZW4vaW5jbHVkZS94ZW4vc2NoZWQuaCBiL3hlbi9pbmNsdWRlL3hlbi9zY2hlZC5oDQppbmRleCAz
NjA5ZWY4OGM0Li41NzM5MWU3NGI2IDEwMDY0NA0KLS0tIGEveGVuL2luY2x1ZGUveGVuL3NjaGVk
LmgNCisrKyBiL3hlbi9pbmNsdWRlL3hlbi9zY2hlZC5oDQpAQCAtNDYxLDYgKzQ2MSw3IEBAIHN0
cnVjdCBkb21haW4NCiANCiAjaWZkZWYgQ09ORklHX0hBU19QQ0kNCiAgICAgc3RydWN0IGxpc3Rf
aGVhZCBwZGV2X2xpc3Q7DQorICAgIHJ3bG9ja190IHBjaV9sb2NrOw0KICNlbmRpZg0KIA0KICNp
ZmRlZiBDT05GSUdfSEFTX1BBU1NUSFJPVUdIDQotLSANCjIuNDIuMA0K


From xen-devel-bounces@lists.xenproject.org Thu Oct 12 22:09:41 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 22:09:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616076.957892 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qr3sD-0004Jq-1H; Thu, 12 Oct 2023 22:09:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616076.957892; Thu, 12 Oct 2023 22: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 1qr3sC-0004JQ-RT; Thu, 12 Oct 2023 22:09:40 +0000
Received: by outflank-mailman (input) for mailman id 616076;
 Thu, 12 Oct 2023 22: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=Hhgq=F2=epam.com=prvs=4649fa389a=volodymyr_babchuk@srs-se1.protection.inumbo.net>)
 id 1qr3sA-00016v-2l
 for xen-devel@lists.xenproject.org; Thu, 12 Oct 2023 22:09:38 +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 06aca185-694c-11ee-98d4-6d05b1d4d9a1;
 Fri, 13 Oct 2023 00:09:35 +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
 39CKqPBg007501; Thu, 12 Oct 2023 22:09:32 GMT
Received: from eur05-vi1-obe.outbound.protection.outlook.com
 (mail-vi1eur05lp2168.outbound.protection.outlook.com [104.47.17.168])
 by mx0b-0039f301.pphosted.com (PPS) with ESMTPS id 3tpr7cr8ed-2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT);
 Thu, 12 Oct 2023 22:09:32 +0000
Received: from VI1PR03MB3710.eurprd03.prod.outlook.com (2603:10a6:803:31::18)
 by AS8PR03MB8758.eurprd03.prod.outlook.com (2603:10a6:20b:53e::10)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.41; Thu, 12 Oct
 2023 22:09:25 +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.6863.043; Thu, 12 Oct 2023
 22:09: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: 06aca185-694c-11ee-98d4-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=SaNcNbe3UpKnrgHa3nrz9oOl2Vy+susreq27CaTZJj9u2jGjfLi6ObtW4P+JMm3uO502xVSAzmvfuAhUevajU1nRMSYO9FziXkqe2IT6zszxv9FJzYsDIkZFr6Y4cU2qcjdM21pWjDzCFxen6bv5GIilx17kCATnq51pRP/nkML5UjIuR5zhyJ22Xv+m8/ir5USK+QYR/YFpa9Oetm2G0Rv1o5G49nKsq0WaU9tW7jcpRLy1xdgQ48rkl46y5AbSAf77g311CFogdMp5DF568EPyj2/fVkJ+QacXNb8pSp2JZrpKy1tFvE0saHC9HmXFhXenlcgDAXZfq6jr2Ty/8g==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=zRrQIG2V9z8F0Ugjpn5uJ8rRJhFipg3lIxGypqk3JAM=;
 b=cASQHk4D/LfgjcZkc7yP1DafXTnNx5OtLu4GBSsFfaSGMDmf77j21xNQLhHXiTheC/Fyhi39LQD0KDy5SknhU5Uy6K+JjmN6QcnDem8OTVu/Ap0ahriwE8cCQjDjbBDVd2m1jKx6Djv0kKa0o2XOjTdVkEomVDZS6EJ8LiR4Hka+64RX/8qnVkaObpd0GERIZJLS8T4mUKHmKelDtgluKtEW3hTU40Uw8fZYJxuA66Bj/PcM0FsGkU/hlrW5yBZZMyQ03f7kaXSCeb2KBVielsBD0YWP5t7IRRs1f3BGCRQFD9j6DlkbzudsQMHSH63yxYP/pvkR/LGRRR6mecM/rw==
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=zRrQIG2V9z8F0Ugjpn5uJ8rRJhFipg3lIxGypqk3JAM=;
 b=aQGJ9YDQJ/ZhLyA9sBWFVCaW/x1a4kT47xuQw4JE8lNl4Ijc7yvOaYAFZutCMb2UJTawhSqOmPposlBOeJreYrbAdOauKQOqbnMPM+e5rnVtSK680m8grPHSFb9GN8IbSED8BKnwQk8DngJZ7scG3SRVsLaEoUj3P+IZ82LxCcOE6nnE1UpzPHDcTfApPcTgaeAdFjnfSBmd4z/LNuhh9AtjImIlR9ozi0pdTjkaOoaD1nL6pwgi0Q+qSZ621sLTBwE2qs0slYpXpwVKQiy10ZTtICa58ympPN3cXrBvc+aYUnEwUCkBPg2WqHavuHrOtm/JXHUOlAh9v88FZ3RmKw==
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>,
        Oleksandr Andrushchenko
	<Oleksandr_Andrushchenko@epam.com>,
        =?iso-8859-1?Q?Roger_Pau_Monn=E9?=
	<roger.pau@citrix.com>
Subject: [PATCH v10 10/17] vpci/header: handle p2m range sets per BAR
Thread-Topic: [PATCH v10 10/17] vpci/header: handle p2m range sets per BAR
Thread-Index: AQHZ/Vi+Y1LP9L+txUiVfqLkjSET0g==
Date: Thu, 12 Oct 2023 22:09:17 +0000
Message-ID: <20231012220854.2736994-11-volodymyr_babchuk@epam.com>
References: <20231012220854.2736994-1-volodymyr_babchuk@epam.com>
In-Reply-To: <20231012220854.2736994-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_|AS8PR03MB8758:EE_
x-ms-office365-filtering-correlation-id: b5a8b96e-dc9d-4030-7085-08dbcb6fe1a6
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: 
 +Fv8StPi9fs0dNdHZkYK/8YwBkxg/0pjjnMBOrB55iGM1J9b2xA9Hh6/RFIUGtWOtwPVDrHW+QGQBp7fLFKLp3KGdaJPYMgWXVNQ0eUSwdqDUxukKc5o0KHFm1Eoer4Y7w0D7tPHJB/gU0iC6Vb8mV61hllfA9zNyDR4/wtXvG78J+roTsPFuU3dlQB8P6haeZhjzbKA7AX1BtYpMnotdcj8TiCfT9coucBzCwZN5k844hQ/vabFfb10nac66DuB26DUxl+nltHuOeX13lWai7BYnbVO6e1DYrr6spXlUv6HNplArbTHKu2R/dtgLVy8YEXJIH0UuyEWv/4CLnSSi79AJ4/YYXJmjdd6GICd+gE3WOTRUEgowYY0bKltTei70T+Cjki6XEK/azAxJu/gWLed6WFlJ4OFajt2ussHHWPWyieC25MXsl1RC92H6JbLdL2+qTLChxfstIqR6v2qEe50UieUGrCasq6RPmvieaMwJYMjwfmr+rLrXIVZEVszqZ7IUQu0IhmmJOrNbvElqItCqmQkOdQ0XykZBWkYw+nDCkNRyowhWUPol5lcwUx6d40II2XaPTFEhSV1z04vQwj6g/h7JXLwo1ihj34/IkEL5N94q5PNKzRs9tK+tKzU
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)(136003)(396003)(346002)(376002)(230922051799003)(64100799003)(451199024)(1800799009)(186009)(38070700005)(6916009)(5660300002)(41300700001)(316002)(83380400001)(86362001)(122000001)(38100700002)(66446008)(71200400001)(6486002)(26005)(1076003)(2616005)(54906003)(478600001)(76116006)(66556008)(66946007)(66476007)(64756008)(91956017)(2906002)(8936002)(8676002)(36756003)(30864003)(6512007)(55236004)(6506007)(4326008);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: 
 =?iso-8859-1?Q?A6BoYlf4Yl4hwQ+zXyqY1iuOIGy+n6Rp9NQXmrZuN8BIrL8XEWnsBd6yuN?=
 =?iso-8859-1?Q?Z5K0YGaud0GLZVUpnasO6BPKDE9Q2wZKbaEKZSd15LyDBSJQAzMVxMo0Nz?=
 =?iso-8859-1?Q?dR2IHwKjR7N443qPPD04tHDbh8VovPdhPl/Yuc+YkfOfx5AvkhZ8RWR2wd?=
 =?iso-8859-1?Q?Qeju8wcH/rQ2IRCB0hauAnU57T0yIpm++G7TLfFC1aJsC+BJYmj8haXtdj?=
 =?iso-8859-1?Q?zP6D0BKWa+RDNbaxqgn9C/FIXftSW+D1nL3Zy1WAQJfJXM05V7zlXiljS6?=
 =?iso-8859-1?Q?kJ42fmCgJjusWkI2SN6kSdzGPjWm+QUIdC+p1F6wyqKI4rjcDeYsfUD8GX?=
 =?iso-8859-1?Q?JKzA5/mvA90A9gvZPDJomOCsSPHMMuwR+qkSyRWGSe54E3lyzfs6QbC4+Y?=
 =?iso-8859-1?Q?KyYTKXvST+0HCvqU2uc+a9JGGfBG/H6RLYR3koECCrHqjUoFs7XrsVompp?=
 =?iso-8859-1?Q?xb/2WwQ+3jSkgQU2kpu5YBN6U0kirAGRO6cmhZUCrS8550E2B8I+H7NAd9?=
 =?iso-8859-1?Q?/mMNwpPJv8jS+B0J/8Wdh97yuA8ihh/QxXa8YhFq7vdMogatVL9yz27i16?=
 =?iso-8859-1?Q?BoP9rbB+EpWrtYUZPdCXDY7OsX+F9QZ90jymcLj8vPiHpU0aMAIQzoKiIT?=
 =?iso-8859-1?Q?JfutnWCexONh+VzXSaziEoypzuJ9In9xznb0zgir+OQBlfvdnEjtTCkSC0?=
 =?iso-8859-1?Q?6AtQs25td6GKA758crUulhSmhQL49LmHGZXkXRFyFs4NNEPzLIsg3VwHxT?=
 =?iso-8859-1?Q?0+97fKdNrzmwa5QCc3Jdp8S6iyyV5HeLCvvBb0RUwGoPB4NMyX8juf3c8z?=
 =?iso-8859-1?Q?wOKiHfoUkJlh+5CIOaFaaNa47q5Bl7W/2+D9QRqcTc6trHbycpJpULS9GE?=
 =?iso-8859-1?Q?ABXGwB7Hoek6n76g79RhidMqIHi5rs4ltO8QccqzGLMBDY3WXKDE/OjmPQ?=
 =?iso-8859-1?Q?bAcnVEffHFJyyhXDWyNSYbP75ZYBGE66ODRv7mI9oV4mAaxIwzm3eZ7b4Z?=
 =?iso-8859-1?Q?7dNv2gmDFtjpCuiDLkEkv3DpE1g0R+XklFTDt2qVHgI3/p71KHZcMX1UhT?=
 =?iso-8859-1?Q?8nc9M2UXSB+V9dA/m5sAeGA+DuCOmEMWSn5FwQ0o9CEoZNZSOMnzS4Zonm?=
 =?iso-8859-1?Q?haL3QCr3scIT4V4/FLK/T8Zo2cU9SxidJ0r5dKce7Z48BBY3OQMnrrJZFy?=
 =?iso-8859-1?Q?t+0xNS0CtSOs/qBoIxduvlj0wbkl3bitmYhCing7vPrXubQouPd+5apgs/?=
 =?iso-8859-1?Q?4OFs3mH8bcGWd1js77t9c6H5RNdSLhH5rtZTD/VTX4AvCgCvlY7AAjsZ3g?=
 =?iso-8859-1?Q?S2diy8NTlZGmh0xf+EREqAOSVnQFs7ZBYrWjzQ3lsv0tJlN8OKZnR03dAW?=
 =?iso-8859-1?Q?NzqPAB+6R0ypJJ+l3+FVpfuFo5aeX8HNmqJS8k+XW/g7qLe5jFYaTEdYm3?=
 =?iso-8859-1?Q?lIwjLJHFOlT8NHbeWiGVzsU/hxIVE6U+gTWy0Q/TUSHop4VUO7/CM33rd9?=
 =?iso-8859-1?Q?7+oACnxy908eNVhE6yDhFEeSJYfJgfx/sa34WR+3zzcRR8ztjY4fkcgJSq?=
 =?iso-8859-1?Q?SDYlW8xdcnnCmx/9XV9UNCC/JGL7d4JjWbKjcS0lOkwGYp8XSQsgjL4lVj?=
 =?iso-8859-1?Q?JkmYurdOeHlpM8Ier0lEfwN1EAxGclS25QARFbeBsp206N/g8Bdgp8kQ?=
 =?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: b5a8b96e-dc9d-4030-7085-08dbcb6fe1a6
X-MS-Exchange-CrossTenant-originalarrivaltime: 12 Oct 2023 22:09:17.4861
 (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: 2EF5nD5fsGbeDMa+RbYmSOt7+d3btMuHhdjnar5ClRcCexsT6CW27ySb37eTqzWPVevuy4yFNlVHLW2xh1nVFOMxcOWV7/3jwHEL/ALGYb0=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR03MB8758
X-Proofpoint-GUID: 5BoxB-Lt0e24MYwbLkVZvjwROgstqp0F
X-Proofpoint-ORIG-GUID: 5BoxB-Lt0e24MYwbLkVZvjwROgstqp0F
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-10-12_14,2023-10-12_01,2023-05-22_02
X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 adultscore=0 spamscore=0
 mlxscore=0 lowpriorityscore=0 suspectscore=0 priorityscore=1501
 impostorscore=0 clxscore=1015 malwarescore=0 bulkscore=0 mlxlogscore=999
 phishscore=0 classifier=spam adjust=0 reason=mlx scancount=1
 engine=8.12.0-2309180000 definitions=main-2310120186

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>

---
In v10:
- Added additional checks to vpci_process_pending()
- vpci_process_pending() now clears rangeset in case of failure
- Fixed locks in vpci_process_pending()
- Fixed coding style issues
- Fixed error handling in init_bars
In v9:
- removed d->vpci.map_pending in favor of checking v->vpci.pdev !=3D
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 | 256 ++++++++++++++++++++++++++------------
 xen/drivers/vpci/vpci.c   |   6 +
 xen/include/xen/vpci.h    |   2 +-
 3 files changed, 184 insertions(+), 80 deletions(-)

diff --git a/xen/drivers/vpci/header.c b/xen/drivers/vpci/header.c
index 40d1a07ada..5c056923ad 100644
--- a/xen/drivers/vpci/header.c
+++ b/xen/drivers/vpci/header.c
@@ -161,63 +161,106 @@ static void modify_decoding(const struct pci_dev *pd=
ev, uint16_t cmd,
=20
 bool vpci_process_pending(struct vcpu *v)
 {
-    if ( v->vpci.mem )
+    struct pci_dev *pdev =3D v->vpci.pdev;
+    struct map_data data =3D {
+        .d =3D v->domain,
+        .map =3D v->vpci.cmd & PCI_COMMAND_MEMORY,
+    };
+    struct vpci_header *header =3D NULL;
+    unsigned int i;
+
+    if ( !pdev )
+        return false;
+
+    read_lock(&v->domain->pci_lock);
+
+    if ( !pdev->vpci || (v->domain !=3D pdev->domain) )
     {
-        struct map_data data =3D {
-            .d =3D v->domain,
-            .map =3D v->vpci.cmd & PCI_COMMAND_MEMORY,
-        };
-        int rc =3D rangeset_consume_ranges(v->vpci.mem, map_range, &data);
+        read_unlock(&v->domain->pci_lock);
+        return false;
+    }
+
+    header =3D &pdev->vpci->header;
+    for ( i =3D 0; i < ARRAY_SIZE(header->bars); i++ )
+    {
+        struct vpci_bar *bar =3D &header->bars[i];
+        int rc;
+
+        if ( rangeset_is_empty(bar->mem) )
+            continue;
+
+        rc =3D rangeset_consume_ranges(bar->mem, map_range, &data);
=20
         if ( rc =3D=3D -ERESTART )
+        {
+            read_unlock(&v->domain->pci_lock);
             return true;
+        }
=20
-        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.c=
md,
-                        !rc && v->vpci.rom_only);
-        spin_unlock(&v->vpci.pdev->vpci->lock);
-
-        rangeset_destroy(v->vpci.mem);
-        v->vpci.mem =3D NULL;
         if ( rc )
-            /*
-             * FIXME: in case of failure remove the device from the domain=
.
-             * Note that there might still be leftover mappings. While thi=
s 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);
+
+            /* Clean all the rangesets */
+            for ( i =3D 0; i < ARRAY_SIZE(header->bars); i++ )
+                if ( !rangeset_is_empty(header->bars[i].mem) )
+                     rangeset_empty(header->bars[i].mem);
+
+            v->vpci.pdev =3D NULL;
+
+            read_unlock(&v->domain->pci_lock);
+
+            if ( !is_hardware_domain(v->domain) )
+                domain_crash(v->domain);
+
+            return false;
+        }
     }
+    v->vpci.pdev =3D NULL;
+
+    spin_lock(&pdev->vpci->lock);
+    modify_decoding(pdev, v->vpci.cmd, v->vpci.rom_only);
+    spin_unlock(&pdev->vpci->lock);
+
+    read_unlock(&v->domain->pci_lock);
=20
     return false;
 }
=20
 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 =3D { .d =3D d, .map =3D true };
-    int rc;
+    struct vpci_header *header =3D &pdev->vpci->header;
+    int rc =3D 0;
+    unsigned int i;
=20
     ASSERT(rw_is_write_locked(&d->pci_lock));
=20
-    while ( (rc =3D rangeset_consume_ranges(mem, map_range, &data)) =3D=3D=
 -ERESTART )
+    for ( i =3D 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 =3D &header->bars[i];
+
+        if ( rangeset_is_empty(bar->mem) )
+            continue;
=20
-    rangeset_destroy(mem);
+        while ( (rc =3D rangeset_consume_ranges(bar->mem, map_range,
+                                              &data)) =3D=3D -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);
=20
@@ -225,10 +268,12 @@ static int __init apply_map(struct domain *d, const s=
truct pci_dev *pdev,
 }
=20
 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 =3D current;
=20
+    ASSERT(rw_is_write_locked(&pdev->domain->pci_lock));
+
     /*
      * FIXME: when deferring the {un}map the state of the device should no=
t
      * be trusted. For example the enable bit is toggled after the device
@@ -236,7 +281,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 =3D pdev;
-    curr->vpci.mem =3D mem;
     curr->vpci.cmd =3D cmd;
     curr->vpci.rom_only =3D rom_only;
     /*
@@ -250,33 +294,33 @@ static void defer_map(struct domain *d, struct pci_de=
v *pdev,
 static int modify_bars(const struct pci_dev *pdev, uint16_t cmd, bool rom_=
only)
 {
     struct vpci_header *header =3D &pdev->vpci->header;
-    struct rangeset *mem =3D rangeset_new(NULL, NULL, 0);
     struct pci_dev *tmp, *dev =3D NULL;
     const struct domain *d;
     const struct vpci_msix *msix =3D pdev->vpci->msix;
-    unsigned int i;
+    unsigned int i, j;
     int rc;
=20
     ASSERT(rw_is_write_locked(&pdev->domain->pci_lock));
=20
-    if ( !mem )
-        return -ENOMEM;
-
     /*
-     * Create a rangeset that represents the current device BARs memory re=
gion
-     * and compare it against all the currently active BAR memory regions.=
 If
-     * an overlap is found, subtract it from the region to be mapped/unmap=
ped.
+     * 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 th=
e ROM
+     * First fill the rangesets with the BAR of this device or with the RO=
M
      * BAR only, depending on whether the guest is toggling the memory dec=
ode
      * bit of the command register, or the enable bit of the ROM BAR regis=
ter.
      */
     for ( i =3D 0; i < ARRAY_SIZE(header->bars); i++ )
     {
-        const struct vpci_bar *bar =3D &header->bars[i];
+        struct vpci_bar *bar =3D &header->bars[i];
         unsigned long start =3D PFN_DOWN(bar->addr);
         unsigned long end =3D PFN_DOWN(bar->addr + bar->size - 1);
=20
+        if ( !bar->mem )
+            continue;
+
         if ( !MAPPABLE_BAR(bar) ||
              (rom_only ? bar->type !=3D VPCI_BAR_ROM
                        : (bar->type =3D=3D VPCI_BAR_ROM && !header->rom_en=
abled)) ||
@@ -292,14 +336,31 @@ static int modify_bars(const struct pci_dev *pdev, ui=
nt16_t cmd, bool rom_only)
             continue;
         }
=20
-        rc =3D rangeset_add_range(mem, start, end);
+        rc =3D 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 =3D 0; j < i; j++ )
+        {
+            struct vpci_bar *prev_bar =3D &header->bars[j];
+
+            if ( rangeset_is_empty(prev_bar->mem) )
+                continue;
+
+            rc =3D 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;
+            }
+        }
     }
=20
     /* Remove any MSIX regions if present. */
@@ -309,14 +370,21 @@ static int modify_bars(const struct pci_dev *pdev, ui=
nt16_t cmd, bool rom_only)
         unsigned long end =3D PFN_DOWN(vmsix_table_addr(pdev->vpci, i) +
                                      vmsix_table_size(pdev->vpci, i) - 1);
=20
-        rc =3D rangeset_remove_range(mem, start, end);
-        if ( rc )
+        for ( j =3D 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 =3D &header->bars[j];
+
+            if ( rangeset_is_empty(bar->mem) )
+                continue;
+
+            rc =3D 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;
+            }
         }
     }
=20
@@ -356,27 +424,35 @@ static int modify_bars(const struct pci_dev *pdev, ui=
nt16_t cmd, bool rom_only)
=20
             for ( i =3D 0; i < ARRAY_SIZE(tmp->vpci->header.bars); i++ )
             {
-                const struct vpci_bar *bar =3D &tmp->vpci->header.bars[i];
-                unsigned long start =3D PFN_DOWN(bar->addr);
-                unsigned long end =3D 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 agains=
t
-                      * other BARs in the same device for overlaps, but no=
t
-                      * against the same ROM BAR.
-                      */
-                     (rom_only && tmp =3D=3D pdev && bar->type =3D=3D VPCI=
_BAR_ROM) )
+                const struct vpci_bar *remote_bar =3D &tmp->vpci->header.b=
ars[i];
+                unsigned long start =3D PFN_DOWN(remote_bar->addr);
+                unsigned long end =3D PFN_DOWN(remote_bar->addr +
+                                             remote_bar->size - 1);
+
+                if ( !remote_bar->enabled )
                     continue;
=20
-                rc =3D rangeset_remove_range(mem, start, end);
-                if ( rc )
+                for ( j =3D 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 =3D &header->bars[j];
+
+                    if ( !rangeset_overlaps_range(bar->mem, start, end) ||
+                         /*
+                          * If only the ROM enable bit is toggled check ag=
ainst
+                          * other BARs in the same device for overlaps, bu=
t not
+                          * against the same ROM BAR.
+                          */
+                         (rom_only && tmp =3D=3D pdev && bar->type =3D=3D =
VPCI_BAR_ROM) )
+                        continue;
+
+                    rc =3D 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 +476,10 @@ static int modify_bars(const struct pci_dev *pdev, ui=
nt16_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);
     }
=20
-    defer_map(dev->domain, dev, mem, cmd, rom_only);
+    defer_map(dev->domain, dev, cmd, rom_only);
=20
     return 0;
 }
@@ -597,6 +673,18 @@ static void cf_check rom_write(
         rom->addr =3D val & PCI_ROM_ADDRESS_MASK;
 }
=20
+static int bar_add_rangeset(const struct pci_dev *pdev, struct vpci_bar *b=
ar,
+                            unsigned int i)
+{
+    char str[32];
+
+    snprintf(str, sizeof(str), "%pp:BAR%u", &pdev->sbdf, i);
+
+    bar->mem =3D rangeset_new(pdev->domain, str, RANGESETF_no_print);
+
+    return !bar->mem ? -ENOMEM : 0;
+}
+
 static int cf_check init_bars(struct pci_dev *pdev)
 {
     uint16_t cmd;
@@ -678,6 +766,10 @@ static int cf_check init_bars(struct pci_dev *pdev)
         else
             bars[i].type =3D VPCI_BAR_MEM32;
=20
+        rc =3D bar_add_rangeset(pdev, &bars[i], i);
+        if ( rc )
+            goto fail;
+
         rc =3D pci_size_mem_bar(pdev->sbdf, reg, &addr, &size,
                               (i =3D=3D num_bars - 1) ? PCI_BAR_LAST : 0);
         if ( rc < 0 )
@@ -728,6 +820,12 @@ static int cf_check init_bars(struct pci_dev *pdev)
                                    rom_reg, 4, rom);
             if ( rc )
                 rom->type =3D VPCI_BAR_EMPTY;
+            else
+            {
+                rc =3D bar_add_rangeset(pdev, rom, i);
+                if ( rc )
+                    goto fail;
+            }
         }
     }
     else
diff --git a/xen/drivers/vpci/vpci.c b/xen/drivers/vpci/vpci.c
index b20bee2b0b..5e34d0092a 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[];
=20
 void vpci_deassign_device(struct pci_dev *pdev)
 {
+    unsigned int i;
+
     ASSERT(rw_is_write_locked(&pdev->domain->pci_lock));
=20
     if ( !has_vpci(pdev->domain) || !pdev->vpci )
@@ -63,6 +65,10 @@ void vpci_deassign_device(struct pci_dev *pdev)
             if ( pdev->vpci->msix->table[i] )
                 iounmap(pdev->vpci->msix->table[i]);
     }
+
+    for ( i =3D 0; i < ARRAY_SIZE(pdev->vpci->header.bars); i++ )
+        rangeset_destroy(pdev->vpci->header.bars[i].mem);
+
     xfree(pdev->vpci->msix);
     xfree(pdev->vpci->msi);
     xfree(pdev->vpci);
diff --git a/xen/include/xen/vpci.h b/xen/include/xen/vpci.h
index 2028f2151f..18a0eca3da 100644
--- a/xen/include/xen/vpci.h
+++ b/xen/include/xen/vpci.h
@@ -72,6 +72,7 @@ struct vpci {
             /* Guest address. */
             uint64_t guest_addr;
             uint64_t size;
+            struct rangeset *mem;
             enum {
                 VPCI_BAR_EMPTY,
                 VPCI_BAR_IO,
@@ -156,7 +157,6 @@ struct vpci {
=20
 struct vpci_vcpu {
     /* Per-vcpu structure to store state while {un}mapping of PCI BARs. */
-    struct rangeset *mem;
     struct pci_dev *pdev;
     uint16_t cmd;
     bool rom_only : 1;
--=20
2.42.0


From xen-devel-bounces@lists.xenproject.org Thu Oct 12 22:09:43 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 22:09:43 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616077.957903 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qr3sF-0004jo-EM; Thu, 12 Oct 2023 22:09:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616077.957903; Thu, 12 Oct 2023 22:09: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 1qr3sF-0004jH-A6; Thu, 12 Oct 2023 22:09:43 +0000
Received: by outflank-mailman (input) for mailman id 616077;
 Thu, 12 Oct 2023 22:09: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=Hhgq=F2=epam.com=prvs=4649fa389a=volodymyr_babchuk@srs-se1.protection.inumbo.net>)
 id 1qr3sD-00016v-D2
 for xen-devel@lists.xenproject.org; Thu, 12 Oct 2023 22:09:41 +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 09e25b93-694c-11ee-98d4-6d05b1d4d9a1;
 Fri, 13 Oct 2023 00:09:40 +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
 39CKqPBi007501; Thu, 12 Oct 2023 22:09:34 GMT
Received: from eur05-vi1-obe.outbound.protection.outlook.com
 (mail-vi1eur05lp2168.outbound.protection.outlook.com [104.47.17.168])
 by mx0b-0039f301.pphosted.com (PPS) with ESMTPS id 3tpr7cr8ed-4
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT);
 Thu, 12 Oct 2023 22:09:34 +0000
Received: from VI1PR03MB3710.eurprd03.prod.outlook.com (2603:10a6:803:31::18)
 by AS8PR03MB8758.eurprd03.prod.outlook.com (2603:10a6:20b:53e::10)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.41; Thu, 12 Oct
 2023 22:09:28 +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.6863.043; Thu, 12 Oct 2023
 22:09: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: 09e25b93-694c-11ee-98d4-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=hJbruyxws4nBodWCnx+vIYgRU/g843StHlFKRppiGuJDvOkZhw02lDdntYLZ1uVSFyJOZOgdiV2N/Vqiy2cW0ugW6Lke6Vc4TmokRLhRwoC6esEwD+uemb50BIoAn5xuJEDuT3oPkOrdfhoDgJzb+obXa+QC0CVdL4CXhotzDcscRQ3swNZ0wc3QJDZX/OTC6VtScc3bUM7cWjyBOUBVZnhTi9cF7jzJglXfWXTUXis/GgLKeGhRnFkIQWEfD1KvHn7JnNuS/AiIneUf1t91cvvmhPjEDZ0cXsYEGlXwbvxJJv0YwyShjcN2PBBfYvXezxzTNyZUA8D1pfNaYBFpTQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=jemp8AXG4G7kZd1vekfyMfuZ4tvRJAgtq1QGyeWPS1Q=;
 b=f6sh31/FA41mqMk7gaME+9n30WHMj5fEHmoLU7l6A9t5brplpnA0Fr024IupBRf1jEgLPED5AlB/eCQcex4yUzqOBflt3ZInjAdD6Cz3kh8d0o+fsAR3ZuFREb0AkeofS+hShhIMEHHyRXPQUBH/n8UDaiAj1TnHHUQ4/XtVUcnUY/VdF6ISZdpYaNxJdM8A5cWVyc7mVpCF1j7+43OyxXRmTvnmcxzWZ235gHWKOb0d+BKq2QN6zeii8F0SojIjQnqTy+ug7dhtzzDV67q+9OzTBGg7qtossLKB3Qp4uyBF8kDv7ejAhmqQBIv9zFqPUjpr1dO1zlgatjS8OBTyAg==
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=jemp8AXG4G7kZd1vekfyMfuZ4tvRJAgtq1QGyeWPS1Q=;
 b=nGyd0Caq3i1wXCUzPcZaeLXjsR1tzwwTzmrHzO5TG4yvMOxZ/xVBEWUtn+MG9xBKKTWy00bYY/NBR/so2cpVWeerMd2mcctUseR8NDQZUFhRSRU9BABQPh+8KuMVnbm/6XDlUpikrIezSe4oa7vHaEKFeeha4wlTXd3zaid+a/R6Hx1R0tm0NyTG4lzIE/4+00raeqrpQkzAOyEKH2vMSeSqvStBPpi5hOX91BzwkPYS+q+1baecTLVrF5YXsB+Q63oeVLcovxzXhmfMzIKl0mLNhkrLGqEPEz4IDtAd4Tlui48j9hzcuYjB+CWp5GJuzDX42IoYjtuheKeMmbGtaA==
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>,
        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 v10 16/17] xen/arm: vpci: permit access to guest vpci space
Thread-Topic: [PATCH v10 16/17] xen/arm: vpci: permit access to guest vpci
 space
Thread-Index: AQHZ/Vi/DuQgj4K7kE6rd+kBlTBFxQ==
Date: Thu, 12 Oct 2023 22:09:19 +0000
Message-ID: <20231012220854.2736994-17-volodymyr_babchuk@epam.com>
References: <20231012220854.2736994-1-volodymyr_babchuk@epam.com>
In-Reply-To: <20231012220854.2736994-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_|AS8PR03MB8758:EE_
x-ms-office365-filtering-correlation-id: 8fd38337-2e9f-4761-543a-08dbcb6fe714
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: 
 ffTSLedFRd+w0V6Xbn8EPtE56dozfnHAnzDpshiPlmBIbUdIm/Y9rXQPe4T7VRE5oU2pxIUsgLN/cWCAu+DBh9yy0WOhwgHgtjV1l53yMhgg7X+6WflhxNOwKaP8nHIow5eYXy1luo6oI9yKp0fQ7oMP2Xf6lKmWRCtq8mxexP8j40POLYv1YFQozPX4ihOmA3/Juhc128xR1lyZcr2PXLUhJqXflRVAQzOxYCGfFvmUoV4mhR6CdMnfz/xTBHm9gquQ/3PqCLmkD1r8/L+WSfX/Lrm/J4YRxKzIKwMrJlzvwrcwsf7GlrCgiAH+SzzNt2roxav86ujpopnYNtic1Xv+n5epNPmLqEtGY9FGjLIVxr59k2h4ITKwWfjDit6wP/FaFjJkF/6moNSXRcE0sCzjmI0AwgElTvlrped/hSS/wuYkBmR3sRspwDPTdtKxlITh0Q2vmAdpMwvh5wBlwpVIoNdmLuGoHasOaoUiDx22DKRscDC+/BZFngYCTJVZZm+aXFzcLffbzBaLpth4yogX698YXxjaPS7imW3Jk369eG972ZvNCG5EgAf2uNGWnXv+54WUsa34kEu1B1ILQGEF2k0ijhcsbzyhznE4c22mj+WUUJpSUGf18iMySJG0
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)(136003)(396003)(346002)(376002)(230922051799003)(64100799003)(451199024)(1800799009)(186009)(38070700005)(6916009)(5660300002)(41300700001)(316002)(83380400001)(86362001)(122000001)(38100700002)(66446008)(71200400001)(6486002)(26005)(1076003)(2616005)(54906003)(478600001)(76116006)(66556008)(66946007)(66476007)(64756008)(91956017)(2906002)(8936002)(8676002)(36756003)(6512007)(6666004)(55236004)(6506007)(4326008);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: 
 =?iso-8859-1?Q?b8Qx6VCj8Xs+59yBENAfIVEpGTXhLV6G8QBXuEL37IfFBDeCm51cQDf7K5?=
 =?iso-8859-1?Q?TGPou4NYYKKpmkvobPdObrA7bn8wxTpsELEAYjRe10Bjs2y5x9isloYsnu?=
 =?iso-8859-1?Q?4/lRmQtDw8vLVN/6RxmsVmRsu76+H70HcobHHuanK7z6offCzEDCKtBv2/?=
 =?iso-8859-1?Q?T/HQiwjOXP4kPrENiQK704+bUxzehqKVoJtx8cUED6Q7GJnk0IbPSxv8u0?=
 =?iso-8859-1?Q?ut3FvCBMqZ/nMDJUGg5SdV/f4SVp5XoWJsNZej/xE/oMsbejhHAPv8x+fm?=
 =?iso-8859-1?Q?j9gss4rbd6b1KP/HijwuRAiRE2nCjNTyCNYr9o14hC+QcKGuXhc7L/EvlU?=
 =?iso-8859-1?Q?YbOf348gP6WNbNeY4823gL/Sa2/ljgJ0+fbkJro4sjUnDswfmOgOj1H6dZ?=
 =?iso-8859-1?Q?MGGd+crwHXa7Zfc46uRTlPvCA90f7AiqZROJVWCX2pQSq4pMbbKs9K0Eg3?=
 =?iso-8859-1?Q?nq3iJOBp/rO5cHBMVu0zANppZbkwkJ1grSlSBCuu792Vuq11cTAoCetLTy?=
 =?iso-8859-1?Q?nGSx0mt4+99EypAWuI9JZjfdIK/P0waWXEng1kKjcqfwhk5HmssCWpqSfV?=
 =?iso-8859-1?Q?ORdGVAgpgV3GBxGzZjaAzlZwuBqLXyPafHMGDlFwGqjVPhn5LgLmzhtMJL?=
 =?iso-8859-1?Q?PDLtXpilqYDnt05i89PIWNWY54nkitggfErkuBqpmwH8XC6v2IR3WpFVyG?=
 =?iso-8859-1?Q?oZLKFanA7XpqTsX56hD8lzS9qEkNxZLO5Pn3XVpsO36MKbduv+S2UUZNuJ?=
 =?iso-8859-1?Q?eQAkKxiZCzULyrFpaqxigRUfoSZj3fY525SURogCqm56UuIu+J+ssKawfd?=
 =?iso-8859-1?Q?HOj8kvTyeoeNbhABpdrY2aMSikNyvSYBZDpZxNmTCPx/yJrv0339H3Ol8/?=
 =?iso-8859-1?Q?Xplgkp/cUGLmWe75BccASu6UgT7Hygq5pn94vL9P9JS+esXfuxv8auCQ/a?=
 =?iso-8859-1?Q?CXN2j3JT5tSqoTPN9stiBBly3atcLxrBfcidjDDvGlQ+aD05Plh80/z1k8?=
 =?iso-8859-1?Q?oad0Njj1M9va7iQot2im3645kZmjHMoE0FdjgLA9wgSMCrkd7NHzzsLtaK?=
 =?iso-8859-1?Q?WB2xsZ7H7zaYrUTeD5fWHa7iqb9rwiDfcHWEsJTx39GmPlYBRbNdFWXuS8?=
 =?iso-8859-1?Q?gK92u40+tUvNEJYpDo4vT0EFm/ro+y5FYpEsaKIMcpp/EjmTS0FtltJOKM?=
 =?iso-8859-1?Q?FtYPM342TRMSMP0yDyKx1MlDN6BvyVQsPLwiq+UN2/S2GsMsH4HjX3K7eG?=
 =?iso-8859-1?Q?1hAerI81KGZQdHpWnje46IZpvDofT3Zx4pSgEvkO+MIfSW+sdbbTb95rQe?=
 =?iso-8859-1?Q?6QnseCisuELEBi2QjY4nq1IL07TJ1e0jlENRpxtHCfRqd4bXfUyaUXcud9?=
 =?iso-8859-1?Q?of0MDTQAT9D1WjyGItoOPFGCLcGR2rfMhj6UcBE69UnpqLvE1sV4DQUhhm?=
 =?iso-8859-1?Q?XbN1ZfAUyc5sNzAJv9XySErBZ/8OS7X8hcQsZYvwk9v+JKzfwIVxJ2asfq?=
 =?iso-8859-1?Q?nL0c0jm9n0PEKr6dpabMyQvZ1hw1K17eWB9JojPjSyUjOWbDToQrpWLrgS?=
 =?iso-8859-1?Q?tmKrkjf0PJULTvUIF6LXpirWGQCJK5JvwVoSfqnCOd9PVT3o4LFm4jZTJ9?=
 =?iso-8859-1?Q?GxM+8p0V/a3bYbDu7FxsqOH1ZQ0cZOClV6nQGCFcluq31qJ1kjs8lcyQ?=
 =?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: 8fd38337-2e9f-4761-543a-08dbcb6fe714
X-MS-Exchange-CrossTenant-originalarrivaltime: 12 Oct 2023 22:09:19.3499
 (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: LhO6AQkeX5sOBVAq6w1qOegLr0061bO8HhnllXNCpdN2dnYsAXEh8de3XZlRXeOfuOixwCsuNbTiXUztC4rexrHHC1kAxKG3FfT1l2xcDEc=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR03MB8758
X-Proofpoint-GUID: x3E5hzTw5cNs-lSgq5IEbQebQwK4hAb2
X-Proofpoint-ORIG-GUID: x3E5hzTw5cNs-lSgq5IEbQebQwK4hAb2
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-10-12_14,2023-10-12_01,2023-05-22_02
X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 adultscore=0 spamscore=0
 mlxscore=0 lowpriorityscore=0 suspectscore=0 priorityscore=1501
 impostorscore=0 clxscore=1015 malwarescore=0 bulkscore=0 mlxlogscore=689
 phishscore=0 classifier=spam adjust=0 reason=mlx scancount=1
 engine=8.12.0-2309180000 definitions=main-2310120186

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>
---
Changes in v10:
* fix off-by-one
* also permit access to GUEST_VPCI_PREFETCH_MEM_ADDR

Changes in v9:
* new patch

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 | 9 +++++++++
 xen/common/domain.c | 4 +++-
 2 files changed, 12 insertions(+), 1 deletion(-)

diff --git a/xen/arch/arm/vpci.c b/xen/arch/arm/vpci.c
index 01b50d435e..3521d5bc2f 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>
=20
@@ -119,8 +120,16 @@ 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(GUEST_VPCI_MEM_ADDR +
+                                         GUEST_VPCI_MEM_SIZE - 1));
+        iomem_permit_access(d, paddr_to_pfn(GUEST_VPCI_PREFETCH_MEM_ADDR),
+                            paddr_to_pfn(GUEST_VPCI_PREFETCH_MEM_ADDR +
+                                         GUEST_VPCI_PREFETCH_MEM_SIZE - 1)=
);
+    }
=20
     return 0;
 }
diff --git a/xen/common/domain.c b/xen/common/domain.c
index 785c69e48b..bf63fab29b 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);
     }
=20
+    if ( !is_idle_domain(d) )
+        d->iomem_caps =3D rangeset_new(d, "I/O Memory", RANGESETF_prettypr=
int_hex);
+
     if ( (err =3D arch_domain_create(d, config, flags)) !=3D 0 )
         goto fail;
     init_status |=3D INIT_arch;
@@ -704,7 +707,6 @@ struct domain *domain_create(domid_t domid,
         watchdog_domain_init(d);
         init_status |=3D INIT_watchdog;
=20
-        d->iomem_caps =3D rangeset_new(d, "I/O Memory", RANGESETF_prettypr=
int_hex);
         d->irq_caps   =3D rangeset_new(d, "Interrupts", 0);
         if ( !d->iomem_caps || !d->irq_caps )
             goto fail;
--=20
2.42.0


From xen-devel-bounces@lists.xenproject.org Thu Oct 12 22:09:46 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 22:09:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616078.957913 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qr3sI-000573-1v; Thu, 12 Oct 2023 22:09:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616078.957913; Thu, 12 Oct 2023 22:09: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 1qr3sH-00056p-TJ; Thu, 12 Oct 2023 22:09:45 +0000
Received: by outflank-mailman (input) for mailman id 616078;
 Thu, 12 Oct 2023 22:09: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=Hhgq=F2=epam.com=prvs=4649fa389a=volodymyr_babchuk@srs-se1.protection.inumbo.net>)
 id 1qr3sD-00016s-SX
 for xen-devel@lists.xenproject.org; Thu, 12 Oct 2023 22:09:41 +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 0971534a-694c-11ee-9b0e-b553b5be7939;
 Fri, 13 Oct 2023 00:09:39 +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
 39CKqPBh007501; Thu, 12 Oct 2023 22:09:33 GMT
Received: from eur05-vi1-obe.outbound.protection.outlook.com
 (mail-vi1eur05lp2168.outbound.protection.outlook.com [104.47.17.168])
 by mx0b-0039f301.pphosted.com (PPS) with ESMTPS id 3tpr7cr8ed-3
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT);
 Thu, 12 Oct 2023 22:09:33 +0000
Received: from VI1PR03MB3710.eurprd03.prod.outlook.com (2603:10a6:803:31::18)
 by AS8PR03MB8758.eurprd03.prod.outlook.com (2603:10a6:20b:53e::10)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.41; Thu, 12 Oct
 2023 22:09:27 +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.6863.043; Thu, 12 Oct 2023
 22:09: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: 0971534a-694c-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=LzqoB+T0mOkj9SjaXkk2OjtfC2eAIEXu+1BeNHtk3BrnFBo7ItIB0nId9nnnok/41bLscA+VP1XQb4hgqsgRPCXnkf7kXmQ7NngD3tsT9UfNIUPD/mJ4Pdmw8xDZ4hJX8Rz3uyMgn+yjXniA1XALDKP0Gj1o4ZpNDB/lAPCSNy4a0kzlsOqjPVSL64YbKneei0kcAAaOUtvUx5BGcT8YsBkaFG+N02XI6nKI6CTXbjPXquGqxKJwurgp/e8eG1FF+LouSqMFGomSUMYcEFFsUBLIdK2EK7QIwKF6m3bBXpiDbZIPm97LsQ5KB0tjXnIRbemJGhz4aQllQPj95gUFUg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=9cvt5808hHcwhF44p0mrt1sssUp8SRDE7SeZ89SeYcE=;
 b=DXq9tgR8B4jl0AcqqXKu2v/f0HFK2zkaGEeLRhDT5C3P+RpKV/WI8Oz75XfefTckeQfPdq9B+NgKnwy4dERg1PdT+NWRnQl2ie8NPuM18rBvzNYy6mlW5yFfjmLipxQ93seTa1Dn8dKw52TSvZlYWsOr59Zvj7w9wVEKdFWj+6oWdzFq7XHNYtQsgHQ85YE3T7D9smTnllKWnGPZpgEJ7qK7ULWwQV5qfURwZC0uGa766wcN/WZwwcbsBdPSw7kKszhC536sUDTnKECFD6g4Z+9aq2fLjKFRZuvUADTIUf3vfOHH99sDkfkFLkhHTvZRIMJhJyAi2/eIqme0vvdeUA==
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=9cvt5808hHcwhF44p0mrt1sssUp8SRDE7SeZ89SeYcE=;
 b=RoIi/u6HSuztALBaP1VdZaqOCM59eZ6Ez2DtpPjUKd3FmvBlA98tNKyLOnue8CVYLq8UiPvlm+7WEq8m4WyKEKiiucD1H23CyB2OmCkFRHc2KZ0Fhi8pvJRp9J95MDuJKZDPzHzZuUs8GvNUyTjSjjmnuOF1QOJIG85YvbwZoG9Hh/odpNOzZNKv+OXFdb5xSqk9RzG0X8z75izm6AwnwsMd1izCcUPabKuU5hh54uN8yqcgJXo0Zs5uqQw8zf855SF6k2zBc/e0vQzr24vDHLGRAhxq1OlRng8HndMSJUj6tznfwsjQyAQha9HO6zdvA2iqjKki+BaRPE6bQm0B/g==
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>,
        Oleksandr Andrushchenko
	<Oleksandr_Andrushchenko@epam.com>,
        Stefano Stabellini
	<sstabellini@kernel.org>,
        Julien Grall <julien@xen.org>,
        Bertrand Marquis
	<bertrand.marquis@arm.com>,
        Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
        =?iso-8859-1?Q?Roger_Pau_Monn=E9?= <roger.pau@citrix.com>
Subject: [PATCH v10 14/17] xen/arm: translate virtual PCI bus topology for
 guests
Thread-Topic: [PATCH v10 14/17] xen/arm: translate virtual PCI bus topology
 for guests
Thread-Index: AQHZ/Vi/w/6hIJcad0KQMXZM3sEAgA==
Date: Thu, 12 Oct 2023 22:09:18 +0000
Message-ID: <20231012220854.2736994-15-volodymyr_babchuk@epam.com>
References: <20231012220854.2736994-1-volodymyr_babchuk@epam.com>
In-Reply-To: <20231012220854.2736994-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_|AS8PR03MB8758:EE_
x-ms-office365-filtering-correlation-id: a86bb6c9-fc02-422b-6e86-08dbcb6fe6ab
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: 
 OH72IzH+dD0Z8WBsT4/MFDWdg5Cq0iBxgqhMP10ci6iyCVaxKHSER3R3ZnX2d8WtVTUXYO66nrGOGqgU1AxpWpVT8xvRsf3QMx8mXka9QPFkVxtSjtbad19YkLupwpaD8oxs9/efdA4rMgkBg+2il8aiOQILCnSbIPqBr5olmMVoWN7VwBHZaMYXvkDh60RMmjX836NxtwpVSri+wU0VUo7bEniaP9DgSI60xcdfpM401cbF8xhlQeKKYNMsfvAtNekltwBNkcMToi54cZzyWv1LVTuURlubKAaEA9d3ZdFTdEco1FhN8JpEdENKofBqifYV9Kc0OLmW455z/cO8dTx3nyjXO28cBtw/nbsyIUEvut4l4sFNwOzCEZwMSs+tGiwSAFrPzrGO4s3Ek0UriJ6ESi0eHCeXLQOwbX0qQkqbLYYZ2RlAnHIBeP3bIZU2bCfONwSipxkTIdrAAvV/tw+4HF6PCN9auk871Rx+MnMPE4B36RA2l5JJv1zY+OL9fWYDLXpoUiBgMEZTmDINsGV+ZvJN/IzmuOxXpZpWT9sAvUWe5hAJi6x865uYj7UzzoKete48YPj8X7e8IS5d3ItRmItlAutnAgyzu/emE+ug0/prAmLSaSkmmHvV7Mfc
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)(136003)(396003)(346002)(376002)(230922051799003)(64100799003)(451199024)(1800799009)(186009)(38070700005)(6916009)(5660300002)(41300700001)(316002)(83380400001)(86362001)(122000001)(38100700002)(66446008)(71200400001)(6486002)(26005)(1076003)(2616005)(54906003)(478600001)(76116006)(66556008)(66946007)(66476007)(64756008)(91956017)(2906002)(8936002)(8676002)(36756003)(6512007)(6666004)(55236004)(6506007)(4326008);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: 
 =?iso-8859-1?Q?6drs2tRmmXLL2G8k/BWKX2ebmVXQeWtHZHlD6J0CUVijEN5RcY1wz0BYoy?=
 =?iso-8859-1?Q?0j8ryXb95+z/zOZaEVpS9ZL7DXkRiX+5rFUTqZEAkqOEdESagDVAPNYv4y?=
 =?iso-8859-1?Q?CO9eWCFLVNlfShzqG657jMvFfdoGim/zrFr/oys5jK91kTOTfafgg67Jl0?=
 =?iso-8859-1?Q?NHUB6bNEelbztmbTnbBGTslMWRYV4ttwhT+HIg2JSeLimjapGuoWixOxzA?=
 =?iso-8859-1?Q?PbQ4XcGX4lsaCxTAaegcwAnQyjLuTEZryEMhPokNQIHmOy5uPetV+FIl1r?=
 =?iso-8859-1?Q?4rYj3rcBZi8Sde5Lmm5kE9onfDy1h3PRZZtl/z7SUKHwQT6nDGbXWh1NsF?=
 =?iso-8859-1?Q?Xuh9FWUREgdtqiOm5bwkakNL5j1yAizUARvN1fgPltYCMVA0maM5B1Lm1D?=
 =?iso-8859-1?Q?Q9FMkPEstLXEcLOSphqVO8LsTxYC02YZp2Vvd++pRRjcfxT6XV2z4JDRp2?=
 =?iso-8859-1?Q?m769EixIpg8gCYhDGTlg3pXsTwTCYT1UyHGf5W8k2bZ44kVP7zilrxGRCX?=
 =?iso-8859-1?Q?mQLka/6Bz6Z5HCahT72XyJAHtXtMkedU+FWn9fOfq9bejaMGOWWfM21Ivt?=
 =?iso-8859-1?Q?1fkUvjcH4Idxz1jnfx0og9YoJ/dIvY2i6fQXmN7cXFZVRf/Hjqt62IF1rA?=
 =?iso-8859-1?Q?/BzBZjWVd6Gbemq0FWzTZKjtrVHQ+otKGi9SOE2ge+h7zfHtmSDYl5G1yV?=
 =?iso-8859-1?Q?W0qimKGA1lm638be2n+CLkGpIwm9H8E28RXgiyK5kK4fnxfAS65faU4vVH?=
 =?iso-8859-1?Q?+dMzGPYvR5XGIv6llHGL/qNdJ/SufP99aKdR2CgzC9H2y2B8nnPhEGivO/?=
 =?iso-8859-1?Q?v1ym2QH5OpIa2LSyQm1nJJBGfDkIrq9P1/1ku7ATpA74klbc9Vcc4Sy3sg?=
 =?iso-8859-1?Q?ankVIVXEe0K4A+wQbwlgqxGnHRKn/dRPVoma2gfcHmnaI2LFzBwVTfKo3E?=
 =?iso-8859-1?Q?e2xbWTDpGoxb1V4qyhC9n1FtT76TLlhr0VyzxBuASIGeHh/gYLBsrYAySY?=
 =?iso-8859-1?Q?nc/zgkha5gO5difca6abRiZTMlvumg0dJk6brqfQGyv/rPAZLM13iDE4Lx?=
 =?iso-8859-1?Q?BR2/pDBq4qkrVGzfdM9U+4DboQr7399MAyGD3KnycHG83RGngy1zY+q/tI?=
 =?iso-8859-1?Q?8nOoggp65VH068SRNdV2EFIipjgCoK4EkzaKkSzM1lX8z5pjm3aMIzWzyC?=
 =?iso-8859-1?Q?+BC+mpkJHprKTidcFAmfdnbn6w2sxFwcURz66a0x8NqMXNe/2+a/P+At5N?=
 =?iso-8859-1?Q?VlX22GSrfgWlZJfynJ8RRfNa3R6ldKuERURkgaQrTbmRDyCRwPAn+Cs7p/?=
 =?iso-8859-1?Q?wHEmnH3/+L3g4D+S+XVz2GbpaNg1iLTRMTGZ5OmRKblSlXmzESw3/p6o13?=
 =?iso-8859-1?Q?a1u1IADEKqdRKdRdeITNjkxL7NTeDMa2b93+I5V+2hsY4affolmXwSvbps?=
 =?iso-8859-1?Q?N6ik34VcLSal2K1S3tZa3x5hfTTYU+h8vqWayGHc6OnDYSRNl4uUuCP8OC?=
 =?iso-8859-1?Q?vhkOPXwzXd8fcvrEZFQFTWIvnN0V9OJOidgrpNqJ+bTAB543JXzJVsJrdl?=
 =?iso-8859-1?Q?uVx6zjxcKpJgM/7XYIBxPIOZm9H4UTE6I6Devdda1uXCYDKMSqSXpA6ljn?=
 =?iso-8859-1?Q?mJz8qaeuEdw7Ey/6a/pxpgL+3SDepSLzXluXlzFoXV4wBuYKZUZsRJZQ?=
 =?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: a86bb6c9-fc02-422b-6e86-08dbcb6fe6ab
X-MS-Exchange-CrossTenant-originalarrivaltime: 12 Oct 2023 22:09:18.8303
 (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: i3lKaamBaJSTixOYuvdI+p9ZzO9sKymESFgNPo9KRRRm6yoxLEmO7MxANmPTyWGp27fZgN3x+B7jTPWkEeXunxXw9l2ESMbhVHdJff6HyrU=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR03MB8758
X-Proofpoint-GUID: bnRiCwm7jn_N8h9kqXU1LIMOfxUjw53P
X-Proofpoint-ORIG-GUID: bnRiCwm7jn_N8h9kqXU1LIMOfxUjw53P
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-10-12_14,2023-10-12_01,2023-05-22_02
X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 adultscore=0 spamscore=0
 mlxscore=0 lowpriorityscore=0 suspectscore=0 priorityscore=1501
 impostorscore=0 clxscore=1015 malwarescore=0 bulkscore=0 mlxlogscore=999
 phishscore=0 classifier=spam adjust=0 reason=mlx scancount=1
 engine=8.12.0-2309180000 definitions=main-2310120186

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_SUPPO=
RT
  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 @@
=20
 #include <asm/mmio.h>
=20
-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,
+                                 const struct pci_host_bridge *bridge,
+                                 paddr_t gpa, pci_sbdf_t *sbdf)
 {
-    pci_sbdf_t sbdf;
+    ASSERT(sbdf);
=20
     if ( bridge )
     {
-        sbdf.sbdf =3D VPCI_ECAM_BDF(gpa - bridge->cfg->phys_addr);
-        sbdf.seg =3D bridge->segment;
-        sbdf.bus +=3D bridge->cfg->busn_start;
+        sbdf->sbdf =3D VPCI_ECAM_BDF(gpa - bridge->cfg->phys_addr);
+        sbdf->seg =3D bridge->segment;
+        sbdf->bus +=3D bridge->cfg->busn_start;
     }
     else
-        sbdf.sbdf =3D VPCI_ECAM_BDF(gpa - GUEST_VPCI_ECAM_BASE);
-
-    return sbdf;
+    {
+        bool translated;
+
+        /*
+         * For the passed through devices we need to map their virtual SBD=
F
+         * to the physical PCI device being passed through.
+         */
+        sbdf->sbdf =3D VPCI_ECAM_BDF(gpa - GUEST_VPCI_ECAM_BASE);
+        read_lock(&d->pci_lock);
+        translated =3D vpci_translate_virtual_device(d, sbdf);
+        read_unlock(&d->pci_lock);
+
+        if ( !translated )
+        {
+            return false;
+        }
+    }
+    return true;
 }
=20
 static int vpci_mmio_read(struct vcpu *v, mmio_info_t *info,
                           register_t *r, void *p)
 {
     struct pci_host_bridge *bridge =3D p;
-    pci_sbdf_t sbdf =3D vpci_sbdf_from_gpa(bridge, info->gpa);
+    pci_sbdf_t sbdf;
     /* data is needed to prevent a pointer cast on 32bit */
     unsigned long data;
=20
+    ASSERT(!bridge =3D=3D !is_hardware_domain(v->domain));
+
+    if ( !vpci_sbdf_from_gpa(v->domain, bridge, info->gpa, &sbdf) )
+    {
+        *r =3D ~0ul;
+        return 1;
+    }
+
     if ( vpci_ecam_read(sbdf, ECAM_REG_OFFSET(info->gpa),
                         1U << info->dabt.size, &data) )
     {
@@ -48,7 +72,12 @@ static int vpci_mmio_write(struct vcpu *v, mmio_info_t *=
info,
                            register_t r, void *p)
 {
     struct pci_host_bridge *bridge =3D p;
-    pci_sbdf_t sbdf =3D vpci_sbdf_from_gpa(bridge, info->gpa);
+    pci_sbdf_t sbdf;
+
+    ASSERT(!bridge =3D=3D !is_hardware_domain(v->domain));
+
+    if ( !vpci_sbdf_from_gpa(v->domain, bridge, info->gpa, &sbdf) )
+        return 1;
=20
     return vpci_ecam_write(sbdf, ECAM_REG_OFFSET(info->gpa),
                            1U << info->dabt.size, r);
diff --git a/xen/drivers/vpci/vpci.c b/xen/drivers/vpci/vpci.c
index 7c46a2d3f4..0dee5118d6 100644
--- a/xen/drivers/vpci/vpci.c
+++ b/xen/drivers/vpci/vpci.c
@@ -80,6 +80,30 @@ static int add_virtual_device(struct pci_dev *pdev)
     return 0;
 }
=20
+/*
+ * Find the physical device which is mapped to the virtual device
+ * and translate virtual SBDF to the physical one.
+ */
+bool vpci_translate_virtual_device(const struct domain *d, pci_sbdf_t *sbd=
f)
+{
+    const struct pci_dev *pdev;
+
+    ASSERT(!is_hardware_domain(d));
+    ASSERT(rw_is_locked(&d->pci_lock));
+
+    for_each_pdev ( d, pdev )
+    {
+        if ( pdev->vpci && (pdev->vpci->guest_sbdf.sbdf =3D=3D sbdf->sbdf)=
 )
+        {
+            /* Replace guest SBDF with the physical one. */
+            *sbdf =3D pdev->sbdf;
+            return true;
+        }
+    }
+
+    return false;
+}
+
 #endif /* CONFIG_HAS_VPCI_GUEST_SUPPORT */
=20
 void vpci_deassign_device(struct pci_dev *pdev)
@@ -175,7 +199,6 @@ int vpci_assign_device(struct pci_dev *pdev)
=20
     return rc;
 }
-
 #endif /* __XEN__ */
=20
 static int vpci_register_cmp(const struct vpci_register *r1,
diff --git a/xen/include/xen/vpci.h b/xen/include/xen/vpci.h
index 4a53936447..e9269b37ac 100644
--- a/xen/include/xen/vpci.h
+++ b/xen/include/xen/vpci.h
@@ -282,6 +282,16 @@ static inline bool __must_check vpci_process_pending(s=
truct vcpu *v)
 }
 #endif
=20
+#ifdef CONFIG_HAS_VPCI_GUEST_SUPPORT
+bool vpci_translate_virtual_device(const struct domain *d, pci_sbdf_t *sbd=
f);
+#else
+static inline bool vpci_translate_virtual_device(const struct domain *d,
+                                                 pci_sbdf_t *sbdf)
+{
+    return false;
+}
+#endif
+
 #endif
=20
 /*
--=20
2.42.0


From xen-devel-bounces@lists.xenproject.org Thu Oct 12 22:15:46 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 22:15:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616090.957922 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qr3y1-0002QN-Qb; Thu, 12 Oct 2023 22:15:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616090.957922; Thu, 12 Oct 2023 22:15: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 1qr3y1-0002QG-Nz; Thu, 12 Oct 2023 22:15:41 +0000
Received: by outflank-mailman (input) for mailman id 616090;
 Thu, 12 Oct 2023 22:15: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=Hhgq=F2=epam.com=prvs=4649fa389a=volodymyr_babchuk@srs-se1.protection.inumbo.net>)
 id 1qr3sH-00016v-Sm
 for xen-devel@lists.xenproject.org; Thu, 12 Oct 2023 22:09:46 +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 0c3c9fdf-694c-11ee-98d4-6d05b1d4d9a1;
 Fri, 13 Oct 2023 00:09:44 +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
 39CG29eO021659; Thu, 12 Oct 2023 22:09:33 GMT
Received: from eur03-am7-obe.outbound.protection.outlook.com
 (mail-am7eur03lp2232.outbound.protection.outlook.com [104.47.51.232])
 by mx0a-0039f301.pphosted.com (PPS) with ESMTPS id 3tpcc6c048-2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT);
 Thu, 12 Oct 2023 22:09:32 +0000
Received: from VI1PR03MB3710.eurprd03.prod.outlook.com (2603:10a6:803:31::18)
 by AS8PR03MB8758.eurprd03.prod.outlook.com (2603:10a6:20b:53e::10)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.41; Thu, 12 Oct
 2023 22:09:27 +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.6863.043; Thu, 12 Oct 2023
 22:09: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: 0c3c9fdf-694c-11ee-98d4-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Q61p4uwi9nQLGSZCjjCKGrRLgMeuRGRt3tscWNCw+a9xalu2e7d4GFNOwtaAH+A9sjype9LLDeTRcV8pY3l+haaA6NfrMSzd2DrdEOFAwOCyYRTIz0VyinBXU7CTTREDxer/dEYptydIR4ces7c8ts6FV+Vax/GDUuDRCH+rer9Veg7mUuohB4UDy4q5sUJLYwvTxKuAmRi3B8098U5+3GxmwdGdYWEldKwZObJi1SAiFm5aq7/fIeVutZVFVWf6T2V+S/zbkisplmJaGUHOuAF/LpHa6pFYwCr3fY7XlAp6TfsBk4AgY48+5buvF/4n+j6QHD1W6o/l++zIlc4LPw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=gEhXn9ctGp3Gi+ciQHEpitWLa9ZFpk23aJZmdmWltD4=;
 b=XPaooHPLc7CSLX3+UjB9mfDODvmggXJWfekf9a0Qg6ljPaOsJ2sXLZz3qnaszOd6iXZc+O8nkCiiDih/G+Smg7EIybXhbpsij819X87tXjNUt+F9kKzKi0wNWpksF303XumAOt0LPfc7ypSbPSX8tw4Q0PHz7X62H71eN/6UHTelBu6KqwsrYYZbbXG5/8VfNwFTs/UZD/W5iEosdA6zSbfB5SQRM1XC6mp3xD3+WTWtIT1/ESWjHAdjrMbiPistsUX8nMIRZ60qZ6q7xtf2NSwNuR0ktOXSoRvsIJeBGvsPyHoWLm9f/LgXlfhCG6eDbsAC7LMaR09D5tCf3k4bew==
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=gEhXn9ctGp3Gi+ciQHEpitWLa9ZFpk23aJZmdmWltD4=;
 b=rrzUp/i1au7Pj2pr8aXijdoteTMcXvmKKZY9RuNfH/RrbXkJ4sqFw+3UeBKENKNe18ODqfajWpWigJ0/20B4B3kQliCWTOK4cfzuAAtoZGaLDN+/DztEKoKnpcdWWRknHaJmzPF7qtJG/2mfa6j/9ogENLFlPQCZcZ13jayL4q0kTqjSfA/digLbvHz/BCOwZhbtSsDKQMJLeM5whrLZ+NT9Y1g0n2EaimoUUAfGuAiwSBQgjzUTitcxjBcDLSgiegSa2d6bv4I5eUfMQz29ESurSath/B4QKcYncZZkocxOi2PdGBIHKePLF8OelesEaa7XeBGottlukpN5/23S0g==
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>,
        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>,
        =?iso-8859-1?Q?Roger_Pau_Monn=E9?= <roger.pau@citrix.com>
Subject: [PATCH v10 13/17] vpci: add initial support for virtual PCI bus
 topology
Thread-Topic: [PATCH v10 13/17] vpci: add initial support for virtual PCI bus
 topology
Thread-Index: AQHZ/Vi+wP3QsyKZ0EartcLXqtnBRA==
Date: Thu, 12 Oct 2023 22:09:18 +0000
Message-ID: <20231012220854.2736994-14-volodymyr_babchuk@epam.com>
References: <20231012220854.2736994-1-volodymyr_babchuk@epam.com>
In-Reply-To: <20231012220854.2736994-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_|AS8PR03MB8758:EE_
x-ms-office365-filtering-correlation-id: af23428e-e030-405d-370e-08dbcb6fe672
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: 
 KGvcqEzkj68c298YWAZf1r/swsRacm2Nb8MF4H656bvNkjJAmeM0e/F/wJ7vpEUKI6l0F+YFBjsPTyQEtKlTg24AuyYJ4TvqVydZ/kY5QkqEYBExanVQOijSZu6bS/b4hDf7RqpFeKpgqrsmtGzCQV0wseW22Fdaxm5DyNF00wvg91OTan+RvZd1D3vi6ng6/cbpATq0UtakxWhXTRSZumiHnH0M+nE0pyctlEBy1jAVP4jILCdrk/lKd5UM9tbX/wi5fQDh/69G2lAenDCNGriAwxDp/z6TufKckQ4mF9tGTfK9rDg/aYdeqrgG3yOrXo4j/TNBOUxbGLi5gG3IWDjC4qrkLDgmnhf4REy/ddKajqLbQRgXcoF9GS5hbShKCFAe30riX+MKXluvn8206FNQw789TAWrIE3enlKszmOS/bazpT2NhoMpgHraB+UZ3R196m6dFaBaRNCnK5lydVHu+jOG8s8jyYMK1AO6Qzugc1eQJCgyU78bMK452AMnvM+7bQZFgXliNp/ooe6MGrwAkFdkNaB+zYhGLIPY7HKAJcWp7pp3olo/DTbvNcJv6Cn9JSailUEFbKP1JmNGxfJHvcFOUDwVfPrvTw4uqbd/iSbg+aIPG8CD6IwGWhFJ
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)(136003)(396003)(346002)(376002)(230922051799003)(64100799003)(451199024)(1800799009)(186009)(38070700005)(6916009)(5660300002)(41300700001)(316002)(83380400001)(86362001)(122000001)(38100700002)(66446008)(71200400001)(6486002)(26005)(1076003)(2616005)(54906003)(478600001)(76116006)(66556008)(66946007)(66476007)(64756008)(91956017)(2906002)(8936002)(8676002)(36756003)(6512007)(6666004)(55236004)(6506007)(4326008);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: 
 =?iso-8859-1?Q?MNkZ4Fr7Jqg1k7q+9gBDkwE8fmQcvMpmhPLS6rvj/7ko+dLHfDRWh+Zrdc?=
 =?iso-8859-1?Q?RqCSnShNFsxttDNVkqNZgMNIjAYu4drhDGW6HE7iIdoxBlpsNF4DFnUC+b?=
 =?iso-8859-1?Q?L5pWq2R3Com7JeoWCGuuKBVl28lBuoVzO8lx2nWGUdUMx65r/js9/AS07l?=
 =?iso-8859-1?Q?MGHBw4RHhBv06smtykceYKLWaUFiQ06oJI+H+3gNfljt3GM78syW6vuPeH?=
 =?iso-8859-1?Q?+nxJ3ofjUhyMZl+PmbmzlEPsvUSdyG3uKqEi/LYPBvh8Mtac0wus4jV4cJ?=
 =?iso-8859-1?Q?3NIcAATSw3JF8ClZrenadaLv58QJyL8dKuTN9zTpGV2z2KpB7Ek/gpIXEj?=
 =?iso-8859-1?Q?ImTbEL11myZJgksL7JcYqT4YjnCDKv158FFl8R7nIhBlQIRmY1QyhpLAbq?=
 =?iso-8859-1?Q?Uv69o3d8hyZkIIYh1xG34jgNleycNDqbAGZhBXscWt0K9BnN9WZ8AJzOWy?=
 =?iso-8859-1?Q?Keg+unh8ZVg+/zK8gbjTEVvwVZW3ZsP19oroHows74lQ/lipV6K+9Ui/h5?=
 =?iso-8859-1?Q?RZ78J+2jj1wEEkbKHZUV8mXDcrup863SPVAzohKvfW0x7Xw+mmVKWK4MII?=
 =?iso-8859-1?Q?Lnj8R/1xMv0AEPJ0jcWs6FR97OOrYgBFPASwhALNHF8DcknUApQovlcz2t?=
 =?iso-8859-1?Q?yAz9STFYD+zZ2BEvjB9JJArTSb2DhdoqctFf9zRdSh+kciI5cFaeLga8kZ?=
 =?iso-8859-1?Q?f8+dLrb/goJ46oDiFoVXjohTZwaVJr71gG2h+F1v8qA+jtjSsAZy5sbQto?=
 =?iso-8859-1?Q?IU9uRjgQICXuD/pv7mDvA1lknTpIggOAt6exGbIFLyTYHRvHkb+DHDd4oo?=
 =?iso-8859-1?Q?nllAN8s/PUMEjE/UHB9zJx3nBJiOh3z0ZOuwovKUU6rZLxOZ+K17ovh8fa?=
 =?iso-8859-1?Q?feXE1cuUygwI4N6jnxZMVoDvFiHnDJW0nPJGiQkIo2lYFdQO10nNpt7p8o?=
 =?iso-8859-1?Q?Am07EdL/wv0VP5UgMKhMGFAx2GTmoWOhJzErzvYgyS+bzTjJk9PQ32tEvz?=
 =?iso-8859-1?Q?tSQaeNPwDdBe/aXEOHTXhDgDY3OJwipYBS5t1G3MuGdFffCW4rRvGDMIwg?=
 =?iso-8859-1?Q?usy2MTNTARVkxkOIomZCxisbV21Vw5FMcN0l7UjKVgVVOB3TdGxTZOVJea?=
 =?iso-8859-1?Q?jE5T1LnTQ+Z0jZQFnFjHB2/zCWwoaNhvDNV0YfyplKalgqZsu1nbCz+vZQ?=
 =?iso-8859-1?Q?6CPMmbdoSJrYJIIF2/ICKe1VWCRmCW0VZtwseSVz433dT9Af6bZff4x11O?=
 =?iso-8859-1?Q?rcRZ2CT3bHsWR7mMOyjHIKOC0tnFW6OKRI6rNscpiJ2xuvNst9sB6ABiBu?=
 =?iso-8859-1?Q?JAmGmxMSKVJWxAu0zCZCp+5EGwTaQm6CDEFyPZo4kiw4jSeCx2NM04Mo2x?=
 =?iso-8859-1?Q?BXaxfDJzo7ZUlvnGEjW0A4eXSAPnJFtoUXmI1d8+JQbjde1fqu9leDoNWA?=
 =?iso-8859-1?Q?jaQl2CscIziAPifi70hc+dbNwh1e0U7JFaS+j4mSyI8fdhV76NNHzuYP0m?=
 =?iso-8859-1?Q?Czn11RWrBVVS61IpvXzhMJfp91vNMnBDRxeel9lEmGTpLO76fRvW3FROCG?=
 =?iso-8859-1?Q?Ut8491PW+psRwXvCcEQrZI9djWLIw5F71HmW4DzBzYbC3BtjGeXgF8qLI/?=
 =?iso-8859-1?Q?LTb7Up80zq9Qw9R4kfVLf/5jk2tX6fCsjhGAzUP6rbAPNJlu9RlV92JQ?=
 =?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: af23428e-e030-405d-370e-08dbcb6fe672
X-MS-Exchange-CrossTenant-originalarrivaltime: 12 Oct 2023 22:09:18.5386
 (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: 1qb5iQm3iKkzV2GNG76/ui4kQvK+5WOfYB6TtYRmZgC1gGCcUyvwUeh1pGcmTo/Ihtqm7DzeZtDRQoMxoiadQFKkX7qyHDkHKuCV/qw+WuY=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR03MB8758
X-Proofpoint-GUID: sRrPYYwi133mn3eTIeNbZIwA1anw6OwG
X-Proofpoint-ORIG-GUID: sRrPYYwi133mn3eTIeNbZIwA1anw6OwG
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-10-12_14,2023-10-12_01,2023-05-22_02
X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 adultscore=0 clxscore=1015
 mlxscore=0 bulkscore=0 mlxlogscore=999 lowpriorityscore=0 suspectscore=0
 spamscore=0 phishscore=0 impostorscore=0 priorityscore=1501 malwarescore=0
 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2309180000
 definitions=main-2310120186

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>
---
In v10:
- Removed ASSERT(pcidevs_locked())
- Removed redundant code (local sbdf variable, clearing sbdf during
device removal, etc)
- Added __maybe_unused attribute to "out:" label
- Introduced HAS_VPCI_GUEST_SUPPORT Kconfig option, as this is the
  first patch where it is used (previously was in "vpci: add hooks for
  PCI device assign/de-assign")
In v9:
- Lock in add_virtual_device() replaced with ASSERT (thanks, Stewart)
In 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/Kconfig     |  4 +++
 xen/drivers/vpci/vpci.c | 63 +++++++++++++++++++++++++++++++++++++++++
 xen/include/xen/sched.h |  8 ++++++
 xen/include/xen/vpci.h  | 11 +++++++
 4 files changed, 86 insertions(+)

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
=20
+config HAS_VPCI_GUEST_SUPPORT
+	bool
+	depends on HAS_VPCI
+
 endmenu
diff --git a/xen/drivers/vpci/vpci.c b/xen/drivers/vpci/vpci.c
index 5e34d0092a..7c46a2d3f4 100644
--- a/xen/drivers/vpci/vpci.c
+++ b/xen/drivers/vpci/vpci.c
@@ -36,6 +36,52 @@ 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)
=20
+#ifdef CONFIG_HAS_VPCI_GUEST_SUPPORT
+static int add_virtual_device(struct pci_dev *pdev)
+{
+    struct domain *d =3D pdev->domain;
+    unsigned long new_dev_number;
+
+    if ( is_hardware_domain(d) )
+        return 0;
+
+    ASSERT(rw_is_write_locked(&pdev->domain->pci_lock));
+
+    /*
+     * 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 && !pdev->info.is_virtfn )
+    {
+        gdprintk(XENLOG_ERR, "%pp: only function 0 passthrough supported\n=
",
+                 &pdev->sbdf);
+        return -EOPNOTSUPP;
+    }
+    new_dev_number =3D find_first_zero_bit(d->vpci_dev_assigned_map,
+                                         VPCI_MAX_VIRT_DEV);
+    if ( new_dev_number =3D=3D VPCI_MAX_VIRT_DEV )
+    {
+        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.
+     */
+    pdev->vpci->guest_sbdf =3D 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 +92,13 @@ void vpci_deassign_device(struct pci_dev *pdev)
         return;
=20
     spin_lock(&pdev->vpci->lock);
+
+#ifdef CONFIG_HAS_VPCI_GUEST_SUPPORT
+    if ( pdev->vpci->guest_sbdf.sbdf !=3D ~0 )
+        __clear_bit(pdev->vpci->guest_sbdf.dev,
+                    &pdev->domain->vpci_dev_assigned_map);
+#endif
+
     while ( !list_empty(&pdev->vpci->handlers) )
     {
         struct vpci_register *r =3D list_first_entry(&pdev->vpci->handlers=
,
@@ -101,6 +154,13 @@ int vpci_assign_device(struct pci_dev *pdev)
     INIT_LIST_HEAD(&pdev->vpci->handlers);
     spin_lock_init(&pdev->vpci->lock);
=20
+#ifdef CONFIG_HAS_VPCI_GUEST_SUPPORT
+    pdev->vpci->guest_sbdf.sbdf =3D ~0;
+    rc =3D add_virtual_device(pdev);
+    if ( rc )
+        goto out;
+#endif
+
     for ( i =3D 0; i < NUM_VPCI_INIT; i++ )
     {
         rc =3D __start_vpci_array[i](pdev);
@@ -108,11 +168,14 @@ int vpci_assign_device(struct pci_dev *pdev)
             break;
     }
=20
+ out:
+    __maybe_unused;
     if ( rc )
         vpci_deassign_device(pdev);
=20
     return rc;
 }
+
 #endif /* __XEN__ */
=20
 static int vpci_register_cmp(const struct vpci_register *r1,
diff --git a/xen/include/xen/sched.h b/xen/include/xen/sched.h
index 57391e74b6..84e608f670 100644
--- a/xen/include/xen/sched.h
+++ b/xen/include/xen/sched.h
@@ -462,6 +462,14 @@ struct domain
 #ifdef CONFIG_HAS_PCI
     struct list_head pdev_list;
     rwlock_t pci_lock;
+#ifdef CONFIG_HAS_VPCI_GUEST_SUPPORT
+    /*
+     * The bitmap which shows which device numbers are already used by the
+     * virtual PCI bus topology and is used to assign a unique SBDF to the
+     * next passed through virtual PCI device.
+     */
+    DECLARE_BITMAP(vpci_dev_assigned_map, VPCI_MAX_VIRT_DEV);
+#endif
 #endif
=20
 #ifdef CONFIG_HAS_PASSTHROUGH
diff --git a/xen/include/xen/vpci.h b/xen/include/xen/vpci.h
index 60bdc10c13..4a53936447 100644
--- a/xen/include/xen/vpci.h
+++ b/xen/include/xen/vpci.h
@@ -21,6 +21,13 @@ typedef int vpci_register_init_t(struct pci_dev *dev);
=20
 #define VPCI_ECAM_BDF(addr)     (((addr) & 0x0ffff000) >> 12)
=20
+/*
+ * Maximum number of devices supported by the virtual bus topology:
+ * each PCI bus supports 32 devices/slots at max or up to 256 when
+ * there are multi-function ones which are not yet supported.
+ */
+#define VPCI_MAX_VIRT_DEV       (PCI_SLOT(~0) + 1)
+
 #define REGISTER_VPCI_INIT(x, p)                \
   static vpci_register_init_t *const x##_entry  \
                __used_section(".data.vpci." p) =3D x
@@ -155,6 +162,10 @@ struct vpci {
             struct vpci_arch_msix_entry arch;
         } entries[];
     } *msix;
+#ifdef CONFIG_HAS_VPCI_GUEST_SUPPORT
+    /* Guest SBDF of the device. */
+    pci_sbdf_t guest_sbdf;
+#endif
 #endif
 };
=20
--=20
2.42.0


From xen-devel-bounces@lists.xenproject.org Thu Oct 12 22:21:23 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 22:21:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616115.957933 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qr43P-00052O-Jw; Thu, 12 Oct 2023 22:21:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616115.957933; Thu, 12 Oct 2023 22: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 1qr43P-00052H-GS; Thu, 12 Oct 2023 22:21:15 +0000
Received: by outflank-mailman (input) for mailman id 616115;
 Thu, 12 Oct 2023 22:21: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=Hhgq=F2=epam.com=prvs=4649fa389a=volodymyr_babchuk@srs-se1.protection.inumbo.net>)
 id 1qr3sL-00016s-9T
 for xen-devel@lists.xenproject.org; Thu, 12 Oct 2023 22:09:49 +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 0d93cdf7-694c-11ee-9b0e-b553b5be7939;
 Fri, 13 Oct 2023 00:09:47 +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
 39CG29eQ021659; Thu, 12 Oct 2023 22:09:34 GMT
Received: from eur03-am7-obe.outbound.protection.outlook.com
 (mail-am7eur03lp2232.outbound.protection.outlook.com [104.47.51.232])
 by mx0a-0039f301.pphosted.com (PPS) with ESMTPS id 3tpcc6c048-4
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT);
 Thu, 12 Oct 2023 22:09:34 +0000
Received: from VI1PR03MB3710.eurprd03.prod.outlook.com (2603:10a6:803:31::18)
 by AS8PR03MB8758.eurprd03.prod.outlook.com (2603:10a6:20b:53e::10)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.41; Thu, 12 Oct
 2023 22:09:28 +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.6863.043; Thu, 12 Oct 2023
 22:09: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: 0d93cdf7-694c-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=AgnX5BmG6ny5bXSPcSa+e79ivWFctQhzJWGHb9pU0sDniaWje5fMJ6HbzyDiYngv0IZrBn46Cai1q+dWf57D1TgeXwBPBFkIdlYiY/dNkrFzsdK+BneTgTpT7ldG+s319XZjL0huhiXaXmK9tOdLozFpyBVUhHlcTjX801oqN5VHVjXtwz0PGMbEHbSaGH0mvc/zVGObRdvtfMXlQg9TDwry4Tj1aPZQYKRBx+8kpAmas3kO+8VYvRnSWem0nNnOnQcjiAQ6Nz1sYeKHl8Ilv0XTTj6g9TNHup9Q6M6A7hKNJZBz84cIFoFLRWwPk4+R0kKBNDMS8qFdIlxjrhWxdg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=6fCPCQQkuoUbzHvgCuLMRvBKFHMr2721/yam2GyvN+o=;
 b=fbSqGUHZD3PeiYHjYDp4zyYD8kiGNSpR0iUdjs0wppF+JfcaCYCDXaVINKViqsnTU3W37qzXc1MBIipW7CeUEBiq/koorWp8Pc1zWN+dcYdIWCkoG4v/R1vq0uH1XuOddn75sJAFMMk1jdest1su+KAU+cKoOIC2RqJuc1g49CxV65T2gGqnrSwq+/swLfug+IHjBrEAF4bf447zV7kdyx7NKdHMMa6JgS16NIIy4UNIqbAeiUvxPn0a2258OMhBH2Ib8prcktU+3wZMwdb9PbuWVcpr8Kw5WLICgHbB51yHb1Vx8DA5rUfk5BH7/tdmqMvi4pdWOwBU5XVMb/UiAA==
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=6fCPCQQkuoUbzHvgCuLMRvBKFHMr2721/yam2GyvN+o=;
 b=P1ipP9kAqSHZfGH8c8XlxfNwP/oP6GQ88E13pubS5y7PdRPEuY5FF4A15BBhTiXOKxItkqqcU9HlxVCkglr5DAZUaUFewwTYqLYJSZlmRE+ruby7EKh5ayfaMR393NjEBppSWy30r2vQZIoOJnp4gwxdL1qFe/DnEgIfYKApEd3d03Iu7rpt6ZCXYvmrhYl2ESt2s1q4KTlnuAylAQGdECFdUXKp3v0GjAoNrThpqnkrd1uLSPj2DFkwjSGNYUIbF2o5V8dwGUXt/6gFNLWLCrQaObskfMsnNYRulZNA6f3EBYNS/W7vyR5G7Zqc0z0nsknbealo1YV1Gwkl2xbUZQ==
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 v10 17/17] arm/vpci: honor access size when returning an error
Thread-Topic: [PATCH v10 17/17] arm/vpci: honor access size when returning an
 error
Thread-Index: AQHZ/Vi/FcbNdUf5hUOov/su5MD7Xg==
Date: Thu, 12 Oct 2023 22:09:19 +0000
Message-ID: <20231012220854.2736994-18-volodymyr_babchuk@epam.com>
References: <20231012220854.2736994-1-volodymyr_babchuk@epam.com>
In-Reply-To: <20231012220854.2736994-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_|AS8PR03MB8758:EE_
x-ms-office365-filtering-correlation-id: e1dbf20e-1f04-4d70-a031-08dbcb6fe741
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: 
 fLgTqDYSB6qOd8P8sAT/xDozmDn39xYYs4M61Lwv570Q9xEzuW9XmTBNkPYBelFKO2d5B6BWdnQXcQ4fYRpJQLNf6Mcj+uiY53nG16xIdH+7Mz2gYZMHT1PTIglHjCq0ZMlNL7CMdgrj6S+huiRUnNapCtvgO5b/RxfpI93mpeZerIfmCHKz/80dw1Ez0y7s+Hl6quaZZJPvlXcapnfLrXxAxSqvrhb4WwIZBC7wGgQlrZB32hUITCdm2zaZf2PuLtc/swnVJosyrhdervY+HS8KWBn1Y17HDCfNpU+Kh9RhVHSMdHniOcxOFKyLGrIvHQY+mtTmDanLQRisT0iJEFWPvcEL5wDQdsZE78smD2QgWyMsD+bhZEpgUvf2i6IWAdlEyyDF8pZpl6epamOZvTkxZskRm8IiBLzQML8MEMvs7tAxqOdjXW4pzADZ0Hb8RO5UuK0Cff4Q36fg8LQVetg1nr8Kjn62ZY6wP9tjD9LYfyzH8OnhJSAVQzLBiBmTf1Am0Dpd1UZhwiMfKLt9sAPc50XXPWvZAv/HvyOlo+aKyEFQwGmUGyy/U4hlGvbs4/s0ffuKY3ZGkUkrBo0RpkSTPq4HSfCHEZpFInQbM+OMQJNXrmz/UdOOxjVDezX+
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)(136003)(396003)(346002)(376002)(230922051799003)(64100799003)(451199024)(1800799009)(186009)(38070700005)(6916009)(5660300002)(41300700001)(316002)(83380400001)(86362001)(122000001)(38100700002)(66446008)(71200400001)(6486002)(26005)(1076003)(2616005)(107886003)(54906003)(478600001)(76116006)(66556008)(66946007)(66476007)(64756008)(91956017)(2906002)(8936002)(8676002)(36756003)(6512007)(6666004)(55236004)(6506007)(4326008);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: 
 =?iso-8859-1?Q?0QWRMrx15lgJPaYn+1mV174FJ9sYrdunJ/iQYJ1MN3EdUrR9Hq24ZtcSBQ?=
 =?iso-8859-1?Q?ekvh3dw4qxN3gWNKRoGRV5RCaiT4yPgjyl0PTpBHQ2z7s0SmcOdehl1Thv?=
 =?iso-8859-1?Q?LbTLhOIChmHByqgpraU1au//vt4MOug4+ZFcCpDWGLsZK/cDiscdI2pcf2?=
 =?iso-8859-1?Q?tJAnJT3ATULGNBDyafHb7Mdljp6/U3uACiADBXz+t/z2gnDRCAhH/RFqt7?=
 =?iso-8859-1?Q?V7b+QWiiNsktAus4WIobnAhv0w8/MV3yXV1sFq/LbgQwFY3HUFHneOMYdo?=
 =?iso-8859-1?Q?BYfxl+++jrHUO1sVXGTP8y3W2Esjb9NVljzLGeXv+aH1vaRCqYDlsgBnVv?=
 =?iso-8859-1?Q?foxqO6i3jNo5lUbuKTo/9r9u4wJq5BugdKhgp8tDZLj7VPA8yR8BFJ8S8n?=
 =?iso-8859-1?Q?K2A2G3f0O9mQioUE4oTmr34Iy4Hp3iQ6WLAWl/ewaHcuMihkNmHtxXO8CG?=
 =?iso-8859-1?Q?gecbdARneINJT90e2keTu2o2SZYhWPKqSlOgwA5/Hev3TuWvtwrTWDJymu?=
 =?iso-8859-1?Q?AtcPaNfVXJI9cKoLlAIqrvfeogHF4YJDJ49JRiQdoeZZmM6dJq6xXSSjWx?=
 =?iso-8859-1?Q?sV5L45zxA4kD8BbOGMpTL2EEl4Cy4Gij8ktZnnfgulo1M2Knr+tvLA4DAa?=
 =?iso-8859-1?Q?46o3kXwHfG6K0za8wnDwkobFwoKjkuPx8X7OuMiqpinWdfnwS6Q9XzJoRe?=
 =?iso-8859-1?Q?Aj7le25HJNQPj3Jnvun88MQJItXlq8g8cnP9/KoTZ4RsBKosbz87isFyn1?=
 =?iso-8859-1?Q?Sk51PXw8IsSEb4D0MyIPa+1K1XcxD0OKGrhCV5xRf6hD1vcZU5r83yEr8/?=
 =?iso-8859-1?Q?4qJ/NqYvNB3V0j6+DZ/IFaBhio1SA95pHwOpeUq6inkmpiK3TT6KfDBmDq?=
 =?iso-8859-1?Q?RK5HxSE+jD3aJbaJTZyWZq3SDsyAyeFMXBjYFMiHQiaRq5SGYIVFKeqC42?=
 =?iso-8859-1?Q?1bpJi3YQjkbdKqztxRkdwVx+9b2bawl/sRSsj8CyZY8JUsdQvZtNiEKx23?=
 =?iso-8859-1?Q?9GdLWW1Rk3IoabjFGAJALIyd4rOaN9gdV48WgfMCRB9/ofjGhV4BQsaoiy?=
 =?iso-8859-1?Q?57ABDK7bRHNPiWyOyUCqy2213Q66SfmeSWBXfAk5BezbcZPbckfxEmfq+f?=
 =?iso-8859-1?Q?UXBiwN09QrnTfPtohex9WaBK0obzH0hwwTgGpnYzHSO5Jw8ShRa62z9hzz?=
 =?iso-8859-1?Q?exWNDOgWY3QN32ekaGB4JEDMoeUgMRBTAbdlmMv4INcg+qUnwBcFGL1PIm?=
 =?iso-8859-1?Q?ch6yBtacWZEJOxsVTekBDPF4XNwC2Me27nH5qfywk39bojtTVrg9O9SSTq?=
 =?iso-8859-1?Q?kNBTGdhkb+tQljkQaQ1ZNQn7oU7UsIND303uo38jyUEusZEWK8Ludk6O2V?=
 =?iso-8859-1?Q?wIwhWPskSMUfmOzhJFK2tIw5uBLZM9+Rib+fEU2Cgr9y0Nb7n6fIrmdh9Q?=
 =?iso-8859-1?Q?Q5m4AKxxcsJEbbYcVjnfgkQ6qUdnAwlTFQ1FXJXL/xkfMM1C+7Mc6lI63z?=
 =?iso-8859-1?Q?ugQaHD9+2IjdmnwUFGYKhlUuNQsHYJELkC7R5nhqjGQsgo0JitMHQ0aeRD?=
 =?iso-8859-1?Q?Ke0kqO2PDiJROIWhg2Hc0dDO1oPT1cmc2bvb14avhU6mTOI4gBc01zz481?=
 =?iso-8859-1?Q?6plZPvWoVW5bOk/mCh+JqHfdTZeAVTJqOU0prhr2rjVgUXF2d5upLYvg?=
 =?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: e1dbf20e-1f04-4d70-a031-08dbcb6fe741
X-MS-Exchange-CrossTenant-originalarrivaltime: 12 Oct 2023 22:09:19.6132
 (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: fkhAIBvNH+jIsm8oCYBHUqB6wco71O5s0xn+DABaLJDGqZoupVvqzORXJ9j12MS3gg+WwXnvLeXtGxB3pzZ8gkGDPXTSxGwgSUTX0zespvk=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR03MB8758
X-Proofpoint-GUID: YBVKK9rlz3ToRA9CiDZ51KkeBGw_J4Uo
X-Proofpoint-ORIG-GUID: YBVKK9rlz3ToRA9CiDZ51KkeBGw_J4Uo
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-10-12_14,2023-10-12_01,2023-05-22_02
X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 adultscore=0 clxscore=1015
 mlxscore=0 bulkscore=0 mlxlogscore=911 lowpriorityscore=0 suspectscore=0
 spamscore=0 phishscore=0 impostorscore=0 priorityscore=1501 malwarescore=0
 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2309180000
 definitions=main-2310120186

Guest can try to read config space using different access sizes: 8,
16, 32, 64 bits. We need to take this into account when we are
returning an error back to MMIO handler, otherwise it is possible to
provide more data than requested: i.e. guest issues LDRB instruction
to read one byte, but we are writing 0xFFFFFFFFFFFFFFFF in the target
register.

Signed-off-by: Volodymyr Babchuk <volodymyr_babchuk@epam.com>
---
 xen/arch/arm/vpci.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/xen/arch/arm/vpci.c b/xen/arch/arm/vpci.c
index 3521d5bc2f..f1e434a5db 100644
--- a/xen/arch/arm/vpci.c
+++ b/xen/arch/arm/vpci.c
@@ -46,6 +46,8 @@ static int vpci_mmio_read(struct vcpu *v, mmio_info_t *in=
fo,
 {
     struct pci_host_bridge *bridge =3D p;
     pci_sbdf_t sbdf;
+    const uint8_t access_size =3D (1 << info->dabt.size) * 8;
+    const uint64_t access_mask =3D GENMASK_ULL(access_size - 1, 0);
     /* data is needed to prevent a pointer cast on 32bit */
     unsigned long data;
=20
@@ -53,7 +55,7 @@ static int vpci_mmio_read(struct vcpu *v, mmio_info_t *in=
fo,
=20
     if ( !vpci_sbdf_from_gpa(v->domain, bridge, info->gpa, &sbdf) )
     {
-        *r =3D ~0ul;
+        *r =3D access_mask;
         return 1;
     }
=20
@@ -64,7 +66,7 @@ static int vpci_mmio_read(struct vcpu *v, mmio_info_t *in=
fo,
         return 1;
     }
=20
-    *r =3D ~0ul;
+    *r =3D access_mask;
=20
     return 0;
 }
--=20
2.42.0


From xen-devel-bounces@lists.xenproject.org Thu Oct 12 22:22:35 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 22:22:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616124.957942 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qr44f-0005s5-UG; Thu, 12 Oct 2023 22:22:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616124.957942; Thu, 12 Oct 2023 22: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 1qr44f-0005ry-Rc; Thu, 12 Oct 2023 22:22:33 +0000
Received: by outflank-mailman (input) for mailman id 616124;
 Thu, 12 Oct 2023 22:22: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=Hhgq=F2=epam.com=prvs=4649fa389a=volodymyr_babchuk@srs-se1.protection.inumbo.net>)
 id 1qr3sL-00016s-GW
 for xen-devel@lists.xenproject.org; Thu, 12 Oct 2023 22:09:49 +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 0dbbbeb5-694c-11ee-9b0e-b553b5be7939;
 Fri, 13 Oct 2023 00:09:47 +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
 39CG29eP021659; Thu, 12 Oct 2023 22:09:33 GMT
Received: from eur03-am7-obe.outbound.protection.outlook.com
 (mail-am7eur03lp2232.outbound.protection.outlook.com [104.47.51.232])
 by mx0a-0039f301.pphosted.com (PPS) with ESMTPS id 3tpcc6c048-3
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT);
 Thu, 12 Oct 2023 22:09:33 +0000
Received: from VI1PR03MB3710.eurprd03.prod.outlook.com (2603:10a6:803:31::18)
 by AS8PR03MB8758.eurprd03.prod.outlook.com (2603:10a6:20b:53e::10)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.41; Thu, 12 Oct
 2023 22:09:27 +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.6863.043; Thu, 12 Oct 2023
 22:09: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: 0dbbbeb5-694c-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ZX5CmX5ZAA1MFmLL+DAWkF5Qv69/hO3KeUn82IVnWIlfXkM8x2euEaHimm99zXw7uZ5JvbYD1ee7m8lHUm5EcKkTQncavHm7q2obXmw4QdH3nzv0TlpCHruxlf0TODcPSTv3J4FlyA7fiLq+GD+87cxAsPCc3hxAoGrocgk3qtAXwCwtaGxbN8+r0Okay/ueWjE9rbIGHbaWbqsB63imO6SRwTijK8/Y/24azq7ti41qjNtRF1087KKV2qFtsF1ALFbv7gUfU/Xt1FMExOBVwA0olThQiMdN2I6qLjzcSANg5DdaTjV/RwH1boQoGQY+x8SNZAOb5MoGUxx1W8mv+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=ntwIQOSKcHFal4kV0pXQkxtpoJAwWh5cbfLdqCXSimQ=;
 b=baJjW/HnTYnLX/6VFCx/qOIS/mypLINKET48DoF/+1ycdBitODdroGpJqgKn2AE6oncGnmL8o7pCXYwHDrZ+7usrw3gLnKm1sq5OIn0YiWroAJqlNu7cD/ZgtersEuyE6kxB0HZSTARQbVpdPbJIiSVQglEfUXynnSrRajQVtE6v6j6Gn0xfy6vyqT1pHL/TjNiCE2v3ACjMFnkSd3bG+dgFpB9xDp8yvXjebcmyFWrtkMOZfbuFWN31+VItY1dFfh4dmZ36RrYXbEZSxiVJIWVBvrF9MaFZciEsdlxvX1aw6fOXGdCJDhe30vitRAgB7HqcQWVs5WQAHhyk0cvb7A==
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=ntwIQOSKcHFal4kV0pXQkxtpoJAwWh5cbfLdqCXSimQ=;
 b=SKZV3kc6hPg5rrRhIaOny8XRAy89MIRSw7BAlIDZNSDrACRVzrfntl0soV1BNJK/QGfV/g0bfNKYZhvfm9FRXxpWsAsXi4H6lD26ye06TgHLoyN7qyRpuTuT5/K7Oo3o7YNkGH3ReHJ3pUIVMWCxKW76xp4K9kByfTNAjhcpNOAKyY7tQ3vnK+QmCSloBBrJUFFBUvcHiPauRDZJXr59wJnsaHW8S1WfKfFGN/ba1lqGs1UlHRqfjN9g9h3X1xC8UzDP0IHWVA8TxLtOowwzLT27x/sGy+0gZBI2+HmQahWYZNZOIU+rK35dRWZ6VJJkdd58O2dJVrSdO6CmSjAnBg==
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>,
        Oleksandr Andrushchenko
	<Oleksandr_Andrushchenko@epam.com>,
        Bertrand Marquis
	<bertrand.marquis@arm.com>,
        Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
        Julien Grall <jgrall@amazon.com>, Julien Grall <julien@xen.org>,
        Stefano
 Stabellini <sstabellini@kernel.org>
Subject: [PATCH v10 15/17] xen/arm: account IO handlers for emulated PCI MSI-X
Thread-Topic: [PATCH v10 15/17] xen/arm: account IO handlers for emulated PCI
 MSI-X
Thread-Index: AQHZ/Vi/WuE7cEBbNE2PUEpOXmVwbA==
Date: Thu, 12 Oct 2023 22:09:19 +0000
Message-ID: <20231012220854.2736994-16-volodymyr_babchuk@epam.com>
References: <20231012220854.2736994-1-volodymyr_babchuk@epam.com>
In-Reply-To: <20231012220854.2736994-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_|AS8PR03MB8758:EE_
x-ms-office365-filtering-correlation-id: c3a20365-1089-4e00-a60b-08dbcb6fe6e4
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: 
 UDUDW4GJK+gQ7nZrHdUIGaQN6bHf/FG4io24AzMDKurSotPzQTJGlyFZF/bP92ICM5YcdM59G9ALeBpdHtIYfDlnYA2dthgxZeLoBRlkpFJCjA4ljEJm+tYe8ndXCT0ySesVHow8f92Q/2y2/QFHa5gHlhxdMZs4GLNgTQ1MHTTxOMC7qfIbjFDnepAl6UV9q9CbLpCorCWaML4HrNMZLuybe1opmn6+3BFguZ9dyzer7UObmx19PI4Z8fncGQG5tjR31CfgJM4NNZE93UkOgsy9OuVWOg0PBPmwDrNboE37w9TOZjcT2tmo4zje17w3tRrzia3bTrnWJ5kDBIfSujw1+heb8JE/9TJbnxIfsaCQisime3AgQ/lFFLk7+O4puLXdHFPybvDW6+CFr90C9aHLXfWXYtxPiHbikyVDc4U8pWQmsUA3Y3MvflSN9c+hulkR22IWVQOa2Z2369Wzd54l0v9YQRcDF867DQDwITAwq9HABy9U5WJoprlmfo5DTO7yMQxXvL7aL8y3v23Jv6SF9SDdDANwFREzdB/wDv4xeuS+lrYqqu78GFUKukNO8rFlGfaBJlopjXQsxJgCo0UB3zAsJ6FUHW5086KbCUwfP0iSEchJWHwfeSLMxlnV
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)(136003)(396003)(346002)(376002)(230922051799003)(64100799003)(451199024)(1800799009)(186009)(38070700005)(6916009)(5660300002)(41300700001)(316002)(83380400001)(86362001)(122000001)(38100700002)(66446008)(66899024)(71200400001)(6486002)(26005)(1076003)(2616005)(54906003)(478600001)(76116006)(66556008)(66946007)(66476007)(64756008)(91956017)(2906002)(8936002)(8676002)(36756003)(15650500001)(6512007)(6666004)(55236004)(6506007)(4326008);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: 
 =?iso-8859-1?Q?nKZVTjkf9xFLWi8aVvUMm5F8QKk/HXMCyS6Mvly8J5xjr6juhrj6isCXWl?=
 =?iso-8859-1?Q?6jgF+SjbszYZaY/JgQXJYx7ook5dYKMfCdCiBagazdLw7aw1+NTvSDyNL1?=
 =?iso-8859-1?Q?j90EeDwG+X9KhFaBocc70P816clxKSNUuZBcx5H2fuv1kWEuEbS9cs4IA5?=
 =?iso-8859-1?Q?hyDOTV12OtOjA4yz7lBXOD5qEDU/izUkvfHXAY3L9GdsS8WUzOL7pIVnMb?=
 =?iso-8859-1?Q?eXR0wo0IYnbWjSVZIOF4RNVddSS+Q+5Pr1huqGuufzO6rMr6RwWX8h9Cjy?=
 =?iso-8859-1?Q?TunOTEZXjnXVKSlvz4AUNVBfHLoHdrUgzey/JpjQQnzv5XPhsR/zsjZY24?=
 =?iso-8859-1?Q?rUJajouLtzf9TvpPOSvZUK2sVSEZ4QVaAMcVTFfVhGxk8Dy2Kx3zx9+Jjm?=
 =?iso-8859-1?Q?GmfJMg7Ri9FLPYmPHGGKnjnDWrzAxuvyYA1QziyCzG5IWkrceV4zIRvIYo?=
 =?iso-8859-1?Q?fPrKaQdaTvjqsOkqALd25Oo3yftts9GOWan+aynyNqY20M9vliiMybBECh?=
 =?iso-8859-1?Q?6b++TUWz8RX44yPwIzCm3yKihnbf2X4u0uFAaTyaWpaKXhpyF/ts7fluHo?=
 =?iso-8859-1?Q?zffcZX/gjNqRhPQKsRMKeS5HIYkDsauGeul3y/63ZaysdwElMY/uglq8mX?=
 =?iso-8859-1?Q?Jzu/fSR2iJwdCv4atcewAP1L4B2q9i0IBjWhJEUfM32rLoDQHxc4WTsWoh?=
 =?iso-8859-1?Q?xkP5UGxgiqTaXPYDNMV0cilAWC/9X4mzJr7Wtdm2pcSwaElSCkAgdblJoH?=
 =?iso-8859-1?Q?wrF+WgM5X6+KlojwuNZGtrerekrmW0CEvMteymnKW57FBrwLEqGR6s5hYJ?=
 =?iso-8859-1?Q?KjqFODNBoqhLWLkMmgyWARRmlwR46E6RtKvLaiq97OUL0xk22TO0PoPFKO?=
 =?iso-8859-1?Q?DWStvMihIpdcSF9NcNBLDP/SL5c2jh+mfk4Ig6y8GeB2i0d9TKXfIF5v6t?=
 =?iso-8859-1?Q?MYISYHFWrrFDSKV8LcQtdsuz42g+ZZAFBksopOVMY104FdenHfNL95/7wS?=
 =?iso-8859-1?Q?pYj7ycsEEq7X61EBr5FF093ZLKcELjvnk01yhu6l0CrA+oFVSs4lVxyfjn?=
 =?iso-8859-1?Q?qXPuQJrMyW12iIYSvepYtzsKsSwFP1kAIko3bCtbWcBP+XNIZVySYdese3?=
 =?iso-8859-1?Q?oAZqpJQ8lpkNnWqi9wg1HKr34nMRvYNprQ3NWu3N8SH5rNTxkzo2U4W7uw?=
 =?iso-8859-1?Q?yF39xLSuWYwVfYTOLkuUaSnI6hyX58rDURL+czEMllaed2LfA7/FuYtR/j?=
 =?iso-8859-1?Q?R68M+0dqO2nsG1jXzPdAUBihLRQOEKt1rCu+/UjTycWZ3wa0PlNTbmwdh8?=
 =?iso-8859-1?Q?UkPMTWU2y51XnY0o55/3f49YEYe4Q6VsoTswcU1ltk5KdCRO7WRBDy+LxQ?=
 =?iso-8859-1?Q?sR/tQbAn3eBlDxy5f8K+Ek1t+ocDfGr8WdD1D22VzWnq7r7WnZtHs/Ag+i?=
 =?iso-8859-1?Q?YcPCrRjnewZ+vYfMzKtyu1qwLf81vHoGZVeQAV1xEQ4/ZKqfCFgH6E0Hvw?=
 =?iso-8859-1?Q?+hdTFwhlTSyeXSGuHaVFsdB05SWE2H3X93jyrocc6HcObzAq+DPMJ3v/32?=
 =?iso-8859-1?Q?2SVuVyyz+/GE8+SrkZ0tNqoqao9zUfM9BmGrxhREKQBL7a4y9O4wHdBjKw?=
 =?iso-8859-1?Q?NohLXO6YxTajQnMbcZ3F6sb2Ah4w/O5u78s6TkRVlIKeosf3MefSSZow?=
 =?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: c3a20365-1089-4e00-a60b-08dbcb6fe6e4
X-MS-Exchange-CrossTenant-originalarrivaltime: 12 Oct 2023 22:09:19.0875
 (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: LUfhM3fXebidXZgmN7yZKylfOyzSN/YRqVPQZpnQc+FIzbWBXn4HgT7UQBAL1UyXA+Of/R7df+8d0rrmPGGTDsm51xEOM9ofdVklbT2j4c4=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR03MB8758
X-Proofpoint-GUID: 8tQ5bdFlrfWwIv5IwbLsTI4yzCUg4ofu
X-Proofpoint-ORIG-GUID: 8tQ5bdFlrfWwIv5IwbLsTI4yzCUg4ofu
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-10-12_14,2023-10-12_01,2023-05-22_02
X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 adultscore=0 clxscore=1011
 mlxscore=0 bulkscore=0 mlxlogscore=417 lowpriorityscore=0 suspectscore=0
 spamscore=0 phishscore=0 impostorscore=0 priorityscore=1501 malwarescore=0
 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2309180000
 definitions=main-2310120186

From: Oleksandr Andrushchenko <oleksandr_andrushchenko@epam.com>

At the moment, we always allocate an extra 16 slots for IO handlers
(see MAX_IO_HANDLER). So while adding IO trap handlers for the emulated
MSI-X registers we need to explicitly tell that we have additional IO
handlers, so those are accounted.

Signed-off-by: Oleksandr Andrushchenko <oleksandr_andrushchenko@epam.com>
Acked-by: Julien Grall <jgrall@amazon.com>
---
Cc: Julien Grall <julien@xen.org>
Cc: Stefano Stabellini <sstabellini@kernel.org>
---
This actually moved here from the part 2 of the prep work for PCI
passthrough on Arm as it seems to be the proper place for it.

Since v5:
- optimize with IS_ENABLED(CONFIG_HAS_PCI_MSI) since VPCI_MAX_VIRT_DEV is
  defined unconditionally
New in v5
---
 xen/arch/arm/vpci.c | 14 +++++++++++++-
 1 file changed, 13 insertions(+), 1 deletion(-)

diff --git a/xen/arch/arm/vpci.c b/xen/arch/arm/vpci.c
index 58e2a20135..01b50d435e 100644
--- a/xen/arch/arm/vpci.c
+++ b/xen/arch/arm/vpci.c
@@ -134,6 +134,8 @@ static int vpci_get_num_handlers_cb(struct domain *d,
=20
 unsigned int domain_vpci_get_num_mmio_handlers(struct domain *d)
 {
+    unsigned int count;
+
     if ( !has_vpci(d) )
         return 0;
=20
@@ -154,7 +156,17 @@ unsigned int domain_vpci_get_num_mmio_handlers(struct =
domain *d)
      * For guests each host bridge requires one region to cover the
      * configuration space. At the moment, we only expose a single host br=
idge.
      */
-    return 1;
+    count =3D 1;
+
+    /*
+     * There's a single MSI-X MMIO handler that deals with both PBA
+     * and MSI-X tables per each PCI device being passed through.
+     * Maximum number of emulated virtual devices is VPCI_MAX_VIRT_DEV.
+     */
+    if ( IS_ENABLED(CONFIG_HAS_PCI_MSI) )
+        count +=3D VPCI_MAX_VIRT_DEV;
+
+    return count;
 }
=20
 /*
--=20
2.42.0


From xen-devel-bounces@lists.xenproject.org Thu Oct 12 22:36:17 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 22:36:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616159.957953 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qr4Hs-0003Ab-4D; Thu, 12 Oct 2023 22:36:12 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616159.957953; Thu, 12 Oct 2023 22: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 1qr4Hs-0003AU-11; Thu, 12 Oct 2023 22:36:12 +0000
Received: by outflank-mailman (input) for mailman id 616159;
 Thu, 12 Oct 2023 22:36: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=A/p7=F2=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qr4Hq-0003A5-CN
 for xen-devel@lists.xenproject.org; Thu, 12 Oct 2023 22:36:10 +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 bc42183d-694f-11ee-98d4-6d05b1d4d9a1;
 Fri, 13 Oct 2023 00:36: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 0999C61F86;
 Thu, 12 Oct 2023 22:36:07 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 3BC3FC433C8;
 Thu, 12 Oct 2023 22:36: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: bc42183d-694f-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1697150166;
	bh=YrJgAq64dFlspBEjwgwqX1JVs6u8zVTFJ02hRDZ853Q=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=jgOFlsN4Egg8hR4qGVPM8dHitlNtZOUnP8dasUfdmVmhHwihQ+kAlisgjQfsv0j/e
	 EzUAx7KDJFcckr1IjjjunhirD6KMhpcFl2LHtYKLydzOukrVNOdi2UVChBLjIw8fyE
	 8qykAtThaVvKDK25n3I8nyLE83EoFU8eANLuvatwmpxwH8v61ApFITlpuOYRjLGhHj
	 JuFFdkKL4FY9Hki/Of9YnlYga3CdkTa6Ke3VqyLjydbs9F8bUi8z+p3YheXQQbVoB9
	 qJSdZGiijruyGxRXeqJVW70nIdtAg/QjWAXslkaWRMIA/w20bYC2xCSZ2H612CoZ9w
	 69Xx43vsa/kOg==
Date: Thu, 12 Oct 2023 15:36:03 -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: Stefano Stabellini <sstabellini@kernel.org>, 
    Andrew Cooper <andrew.cooper3@citrix.com>, 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: <CA+zSX=ZbeUFrfAUJShooJFJ+d89f4xdXfJJ9HoJKRh4UStkTFQ@mail.gmail.com>
Message-ID: <alpine.DEB.2.22.394.2310121535580.3431292@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> <alpine.DEB.2.22.394.2309271658500.1403502@ubuntu-linux-20-04-desktop>
 <CA+zSX=ZbeUFrfAUJShooJFJ+d89f4xdXfJJ9HoJKRh4UStkTFQ@mail.gmail.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Thu, 12 Oct 2023, George Dunlap wrote:
> > > 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?
> 
> It moves a line from one function (do_domain_introduce()) into a
> completely different function (introduce_domain()), nested inside two
> if() statements; with no analysis on how the change will impact
> things.

I am not the original author of the patch, and I am not the maintainer
of the code, so I don't feel I have the qualifications to give you the
answers you are seeking. Julien as author of the patch and xenstore
reviewer might be in a better position to answer. Or Juergen as xenstore
maintainer.

>From what I can see the patch is correct.

We are removing a call to domain_conn_reset in do_introduce.
We are adding a call to domain_conn_reset in introduce_domain, which is
called right before in introduce_domain. Yes there are 2 if statements
but the domain_conn_reset is added in the right location: the
non-already-introduced non-restore code path.


> Are there any paths through do_domain_introduce() that now *won't* get
> a domain_conn_reset() call?  Is that OK?

Yes, the already-introduced and the restore code paths. The operations in
the already-introduced or the restore code paths seem simple enough not
to require a domain_conn_reset. Julien and Juergen should confirm.


> Is introduce_domain() called in other places?  Will those places now
> get extra domain_conn_reset() calls they weren't expecting?  Is that
> OK?

introduce_domain is called by dom0_init, but I am guessing that dom0 is
already-introduced so it wouldn't get an extra domain_conn_reset. Julien
and Jurgen should confirm.


> I mean, it certainly seems strange to set the state to CONNECTED, send
> off an event channel, and then after that delete all watches /
> transactions / buffered data and so on; but we need at least a basic
> understanding of what's going on to know that this change isn't going
> to break comething.
> 
> Not knowing much about the xenstore protocol: In the
> (!domain->introduced) case, will there be anything to actually delete?
>  It seems like it would only be necessary / useful on the
> (domain->introduced) case.

Doesn't it seem weird to you that we set a connection to CONNECTED,
notify the domain that it is ready to go, and only *after* that we reset
the connection to zero?

What happens if a domain starts using the connection as soon as it
receives the event channel notification and before domain_conn_reset is
called?


From xen-devel-bounces@lists.xenproject.org Thu Oct 12 22:44:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 22:44:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616168.957964 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qr4QD-0006R6-3S; Thu, 12 Oct 2023 22:44:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616168.957964; Thu, 12 Oct 2023 22:44: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 1qr4QC-0006Qz-Un; Thu, 12 Oct 2023 22:44:48 +0000
Received: by outflank-mailman (input) for mailman id 616168;
 Thu, 12 Oct 2023 22:44: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=Qqh1=F2=gmail.com=ubizjak@srs-se1.protection.inumbo.net>)
 id 1qr4QB-0006Qt-2j
 for xen-devel@lists.xenproject.org; Thu, 12 Oct 2023 22:44:47 +0000
Received: from mail-ed1-x52f.google.com (mail-ed1-x52f.google.com
 [2a00:1450:4864:20::52f])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id f1127031-6950-11ee-98d4-6d05b1d4d9a1;
 Fri, 13 Oct 2023 00:44:46 +0200 (CEST)
Received: by mail-ed1-x52f.google.com with SMTP id
 4fb4d7f45d1cf-53db360294fso2785403a12.3
 for <xen-devel@lists.xenproject.org>; Thu, 12 Oct 2023 15:44: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: f1127031-6950-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1697150685; x=1697755485; 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=mUJJKm9lDcsKSbt0Gh9bMyGUZpKtFWFjgv7jiH7IfeI=;
        b=ZhVfYW0QoU5XKh7Q3rU+FB/+8/skV8WygZyV1JI/dZbOz6B8li9RAt/jVrnudMv7KQ
         tQngEPXiOKR1jqhTuLA3Z6OhYe6Pas4arBsj/O3N95zGZG1iCza0oumstqhLmDPDpSJJ
         1VFSeMNXdZUgNFwTxJ5Uz6lJl6Z9R0HdIwSKmtL9jqTh4lwRhCID0w4/G462oRMczWz/
         KlA70zrFxZa0il0jFrtioDio79TYDRmMxY+I/N1fZQlHbvaguQZpP2JjmVOgo7/Dve8V
         S1l04OUmxf+lHU6Hqsthi2C/FybafqIqId50AlXny6/KU5lQs+8hFVNjvt+0VH4gHcTt
         4bjA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697150685; x=1697755485;
        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=mUJJKm9lDcsKSbt0Gh9bMyGUZpKtFWFjgv7jiH7IfeI=;
        b=Ri0NelrkE/Z4byNgRdoH0nsXhm7yGcLhSXR7kznwCvQ8PRWPZS7NyiBWfpfJWqyUsx
         JyTSA6mM4mSzV58C6ARIWijP2B57gLqdr+ngwPdyJhIf8xjpVrT0h0Qg/pwhORyQiP+q
         jexVr79VQwxHeHE8DrhEKF36veQigwX2a9NXQdreMfo+C/MHHEh8CqPFQWRQDFsfB6n5
         p2pczjKKDWJQ2jfuZCGfttVKiwLI8rXu4zWmvywsW/lmWk/X/fdI8j2akiqnVIakP16p
         gaRrGC/8nGhK4UDbFP88wuXph8kdCZJFr9m1bWBMuQfRCCjVKeD90EujyMpvwl4JpjEA
         GwAg==
X-Gm-Message-State: AOJu0YznneBt61S4s5CXGzZV5VEBKKgSOkYu3+7MQKXQvAiW6xmHJp6+
	WFhoLshyQ3RLiVVZdTKtEbLT+lP2aSXGUhP+ypc=
X-Google-Smtp-Source: AGHT+IFyYAt1/XqbFKonx4X0m+I/iV1wGqc3tYFtJONQ1BAT6fF9nLfX+r3BSk6hrxlKs3nNElJ86qvizT+DQ06Y4ys=
X-Received: by 2002:a05:6402:350f:b0:53e:1f6:fa24 with SMTP id
 b15-20020a056402350f00b0053e01f6fa24mr3460608edd.20.1697150683614; Thu, 12
 Oct 2023 15:44:43 -0700 (PDT)
MIME-Version: 1.0
References: <20231012201743.292149-1-ubizjak@gmail.com> <3af8dcec-66ec-4bd4-b7bf-4bc6f5f3c70f@intel.com>
 <CAFULd4byzHyoz4xM1gL_T1wFkNE-ab8K4upXfPirxM9PdX5JWg@mail.gmail.com>
 <5722e74b-6fc6-4d6e-be25-069ea6385990@zytor.com> <CAFULd4afhj-kJwneh7wz0sExWqOmPicG4fcfF++_fUMHpoNbXA@mail.gmail.com>
 <5694b2bd-de40-45c0-8b38-ac01bc11798a@zytor.com>
In-Reply-To: <5694b2bd-de40-45c0-8b38-ac01bc11798a@zytor.com>
From: Uros Bizjak <ubizjak@gmail.com>
Date: Fri, 13 Oct 2023 00:44:32 +0200
Message-ID: <CAFULd4YUD_7x5=j1MBB9mcS6rRm9zdmZ33SyjaTArScLVMv2KA@mail.gmail.com>
Subject: Re: [PATCH v2 0/4] Introduce %rip-relative addressing to PER_CPU_VAR macro
To: "H. Peter Anvin" <hpa@zytor.com>
Cc: Dave Hansen <dave.hansen@intel.com>, x86@kernel.org, xen-devel@lists.xenproject.org, 
	linux-kernel@vger.kernel.org, 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>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Thu, Oct 12, 2023 at 11:22=E2=80=AFPM H. Peter Anvin <hpa@zytor.com> wro=
te:
>
> On 10/12/23 14:17, Uros Bizjak wrote:
> >>
> >> Are you PIC-adjusting the percpu variables as well?
> >
> > After this patch (and after fixing percpu_stable_op to use "a" operand
> > modifier on GCC), the only *one* remaining absolute reference to
> > percpu variable remain in xen-head.S, where:
> >
> >      movq    $INIT_PER_CPU_VAR(fixed_percpu_data),%rax
> >
> > should be changed to use leaq.
> >
> > All others should then be (%rip)-relative.
> >
>
> I mean, the symbols themselves are relative, not absolute?

The reference to the symbol is relative to the segment register, but
absolute to the location of the instruction. If the executable changes
location, then instruction moves around  and reference is not valid
anymore. (%rip)-relative reference compensate for changed location of
the instruction.

Uros.


From xen-devel-bounces@lists.xenproject.org Thu Oct 12 23:14:59 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 23:14:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616173.957973 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qr4tD-0000DZ-AQ; Thu, 12 Oct 2023 23:14:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616173.957973; Thu, 12 Oct 2023 23: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 1qr4tD-0000DS-75; Thu, 12 Oct 2023 23:14:47 +0000
Received: by outflank-mailman (input) for mailman id 616173;
 Thu, 12 Oct 2023 23:14: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=A/p7=F2=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qr4tB-0000Bx-KN
 for xen-devel@lists.xenproject.org; Thu, 12 Oct 2023 23:14:45 +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 1fa309b0-6955-11ee-9b0e-b553b5be7939;
 Fri, 13 Oct 2023 01:14: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 4F85EB82560;
 Thu, 12 Oct 2023 23:14:41 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 85217C433C9;
 Thu, 12 Oct 2023 23:14: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: 1fa309b0-6955-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1697152480;
	bh=QC3Gt7nl/sVsGchbpGMuErTOpN1xmZvj4/dG75fJ2lk=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=YZbf2lPuMNxrxZIqVEiuLoWVekkCvEZlVp4Y4Eg2U+Kf1jYnp/x28meZtSG8Zj8Hq
	 YIDv+GD5xWOEiHxx/3iaCv4pCexvvsjJkDflxWzHM2YZXfSNvqg4dhc+M4qsqxvXZb
	 bQYRryV9jqxVlGEOkMv5DFtG9qq8kdad7QW1rtZUs3FWRw9y1gQPwqT8uFRzVla1tU
	 5Qbzbv4qCNlHdzzpuEwehxS9CzvekcZHa3i7WMM9gzZSWx4G9Bl9b3DQamxkclvlpZ
	 2ELC7NIK8qPBoqmR/W0NMnrvKrVFVnWp9czWEFoDGcxIKpcAegq80gvIVZIlS8QFdz
	 Hlj2g9LvIk4qA==
Date: Thu, 12 Oct 2023 16:14:36 -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: Julien Grall <julien@xen.org>, 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>, 
    Wei Liu <wl@xen.org>, Henry.Wang@arm.com
Subject: Re: [XEN PATCH][for-4.19 v2 2/2] docs/misra: add deviations.rst to
 document additional deviations.
In-Reply-To: <9fc7241a16ca8b1db9bf788d4125fe16@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2310121606110.3431292@ubuntu-linux-20-04-desktop>
References: <cover.1696865051.git.nicola.vetrini@bugseng.com> <ccda90b6be8f6977cff14ae65749ffc7fa429c3c.1696865051.git.nicola.vetrini@bugseng.com> <alpine.DEB.2.22.394.2310091811190.3431292@ubuntu-linux-20-04-desktop> <a5635fc5e51518c205d776ac8a9600ba@bugseng.com>
 <alpine.DEB.2.22.394.2310101524080.3431292@ubuntu-linux-20-04-desktop> <781c9b5c-1301-4a23-8c13-fba62c844b03@xen.org> <186af6b6c1b34fc9088a5fb226ff2482@bugseng.com> <9fc7241a16ca8b1db9bf788d4125fe16@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, 11 Oct 2023, Nicola Vetrini wrote:
> On 11/10/2023 17:00, Nicola Vetrini wrote:
> > > > > > > +
> > > > > > > +   * - R2.1
> > > > > > > +     - The compiler implementation guarantees that the
> > > > > > > unreachable code
> > > > > > > is
> > > > > > > +       removed. Constant expressions and unreachable branches of
> > > > > > > if and
> > > > > > > switch
> > > > > > > +       statements are expected.
> > > > > > > +     - Tagged as `safe` for ECLAIR.
> > > > > > > +
> > > > > > > +   * - R2.1
> > > > > > > +     - Some functions are intended not to be referenced.
> > > > > > > +     - Tagged as `deliberate` for ECLAIR.
> > > > > > 
> > > > > > What does it mean "some functions" in this case? Should we list
> > > > > > which
> > > > > > functions?
> > > > > > 
> > > > > 
> > > > > Well, there are a lot, typically resulting from build configurations
> > > > > that do
> > > > > not
> > > > > use them, or because they are used only in asm code. I can mention
> > > > > these
> > > > > reasons in the
> > > > > document, to make it easier to understand.
> > > > 
> > > > Yes, I think we need to clarify further this point, because saying "Some
> > > > functions" doesn't help the reader understand:
> > > > - whether all functions can be not referenced
> > > > - which subset of functions can be not referenced
> > > > 
> > > > How to distinguish between? How do we know whether a certain patch is
> > > > violating the rule or not?
> > > > 
> > > > If there is a clear list of functions that can be not referenced, then
> > > > we should list them here. If there is a methodology we can use to
> > > > distinguish between them (e.g. functions called from asm only) then we
> > > > can write the methodology here. Either way it is fine as long as the
> > > > criteria to know if it is OK if a function is not referenced is clear.
> > > 
> > > Aren't they more or less the one we tagged with SAF-1-safe because
> > > there were no prototype? If so, we could use the same tags.
> > > 
> > > We could introduce an extra tags for the others. An alternative would
> > > be to add an attribute (e.g. asmcall) to mark each function used by
> > > assembly.
> > > 
> > > Cheers,
> > 
> > Both suggestion do have some value. As it is, it's not distinguishable
> > what causes a
> > function to be unreferenced in a certain analysis config. However:
> > 
> > - functions only used by asm code can be specified in the ECLAIR
> > config so that they will
> >   have an extra fake reference as far as the checker is concerned. I
> > can do that on a
> >   separate patch and list them in deviations.rst. An attribute seems a
> > good way to signal the
> >   intention.
> > - Functions that have no reference only in the current analysis should
> > have their declaration
> >   #ifdef-ed out in the configurations where they are not used, in an
> > ideal world.
> > - Truly unreferenced functions should be removed, or justified
> 
> Especially the last two appear somewhat tricky to disentangle, as they do
> require knowledge of
> possible code paths.

First let me premise that if we are unsure on how to proceed on this you
can resend this patch series without this item ("Some functions are
intended not to be referenced"), so at least the rest can go in now.

On this specific point, I think we should only make clear and
unmistakable statements. For instance, I think it is OK to say that all
the functions only used by asm code are exceptions (ideally they would
have a asmcall tag as Julien suggested) because that is deterministic.

Functions that have no references in a specific kconfig configuration
should have their definition #ifdef'ed (not necessarily the
declaration, I think we have already clarified that it is OK to have a
declaration without definition.) 

Truly unreferenced functions should be removed.

In conclusion, I think we should only have "functions only called from
asm code" as a deviation here.


From xen-devel-bounces@lists.xenproject.org Thu Oct 12 23:17:17 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 23:17:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616177.957983 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qr4vc-0001XR-Mo; Thu, 12 Oct 2023 23:17:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616177.957983; Thu, 12 Oct 2023 23:17: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 1qr4vc-0001XK-KJ; Thu, 12 Oct 2023 23:17:16 +0000
Received: by outflank-mailman (input) for mailman id 616177;
 Thu, 12 Oct 2023 23:17: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=A/p7=F2=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qr4vb-0001XC-9A
 for xen-devel@lists.xenproject.org; Thu, 12 Oct 2023 23:17:15 +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 79cb066c-6955-11ee-98d4-6d05b1d4d9a1;
 Fri, 13 Oct 2023 01:17:14 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by dfw.source.kernel.org (Postfix) with ESMTP id 9635361F64;
 Thu, 12 Oct 2023 23:17:12 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 45852C433C8;
 Thu, 12 Oct 2023 23:17:10 +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: 79cb066c-6955-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1697152632;
	bh=CYWYl0GyWGMWS6nUM84V8Eu6VUIq+xI0E3AURP2rmVo=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=ZFSElH5YIwfPBJBkpjhkjFAg8NDL7J87ZjkIwq6OYBuhYwDRse6T5IjgPqWwa8bln
	 gt8RkwzKNHO7GgZywNFxYZpsZc8ZWWQ1kp6w1eTmi48/UlYdxhewQbK5btSgKOCVYQ
	 WLZGtJfFJTTyem1UtwEdXm/ar+/gjyGkGbkNDdaXzONYKUQI8Odgyc9dBdw35JfyoJ
	 Z2ktwmj1GvjjI/xpR2brl4aHSS7w4r6f2FOlpeVLzip+iXx1AtkFwNeyHNzGNnxByq
	 z+vuhcDfFKH2jhmryxQ0a0JQSdtNAEHNfFgUzYwFZ5wscmJVlENUnKaHvQnO9k7piO
	 zsLJ5wb/h3XqA==
Date: Thu, 12 Oct 2023 16:17:08 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Julien Grall <julien@xen.org>
cc: Luca Fancellu <Luca.Fancellu@arm.com>, 
    Stefano Stabellini <sstabellini@kernel.org>, 
    Nicola Vetrini <nicola.vetrini@bugseng.com>, 
    Xen-devel <xen-devel@lists.xenproject.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>, 
    Jan Beulich <jbeulich@suse.com>, 
    =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>, 
    Henry Wang <Henry.Wang@arm.com>, 
    Simone Ballarin <simone.ballarin@bugseng.com>, 
    Doug Goldstein <cardoe@cardoe.com>, 
    George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>, 
    Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [XEN PATCH] xen: Add SAF deviations for MISRA C:2012 Rule 7.1
In-Reply-To: <66ac185e-eace-4933-b48a-e2fe035fcb8b@xen.org>
Message-ID: <alpine.DEB.2.22.394.2310121616020.3431292@ubuntu-linux-20-04-desktop>
References: <338d8e574db943a86c7605e4c6d9a299d45f067d.1696347345.git.nicola.vetrini@bugseng.com> <DB96C095-5FAF-40A1-9CA8-002291AA1933@arm.com> <2894008e8f612296da84267346ae4240@bugseng.com> <B00BC78B-E707-4043-A0B4-D320C6717472@arm.com>
 <alpine.DEB.2.22.394.2310041625170.2348112@ubuntu-linux-20-04-desktop> <9DD525D9-DB6D-4888-9266-FB45906A0E0F@arm.com> <alpine.DEB.2.22.394.2310051756360.2348112@ubuntu-linux-20-04-desktop> <C2DDFAB5-D943-4A24-9C14-AF35BE2A7C90@arm.com>
 <alpine.DEB.2.22.394.2310061741130.3431292@ubuntu-linux-20-04-desktop> <1ceb5aa0-d374-4357-964f-1341468d542e@xen.org> <alpine.DEB.2.22.394.2310091251080.3431292@ubuntu-linux-20-04-desktop> <8c3d7933-c139-49dd-8c62-2d4543176f8f@xen.org>
 <alpine.DEB.2.22.394.2310101635280.3431292@ubuntu-linux-20-04-desktop> <80f4df2b-a8b2-4494-94e0-47de55c01597@xen.org> <1766b5f3-490c-4bbe-902c-3970c28041a7@xen.org> <6BB62AEF-FCE1-412C-87DD-479319623092@arm.com>
 <66ac185e-eace-4933-b48a-e2fe035fcb8b@xen.org>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="8323329-211779268-1697152632=:3431292"

  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-211779268-1697152632=:3431292
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8BIT

On Wed, 11 Oct 2023, Julien Grall wrote:
> On 11/10/2023 11:53, Luca Fancellu wrote:
> > 
> > > > > 
> > > > > Luca answered to a similar, more generic, question a few days ago
> > > > > about
> > > > > Coverity: https://marc.info/?l=xen-devel&m=169657904027210
> > > > Interesting.
> > > > > 
> > > > > So even if we get cppcheck to work like that, we would lose Coverity
> > > > > support.
> > > > I think my suggestion was probably misunderstood. So let me clarify it.
> > > > To cover multi-line, we could write the following in Xen:
> > > > /* cppcheck tag next-3-lines */
> > > > line 1
> > > > line 2
> > > > line 3
> > > > AFAIU Eclair supports multi-line, so the tag would be transformed to
> > > > there internal solution. For CPPCheck, this could be transformed to:
> > > > /* cppcheck tag next-3 lines */
> > > > line 1 /* generated cppcheck tag */
> > > > line 2 /* generated cppcheck tag */
> > > > line 3 /* generated cppcheck tag */
> > > > Now, I understand that coverity doesn't support any of the two format.
> > > > So the only solution would be to add the comment before each line which
> > > > would impact the line numbers. This is not great, but I think this is
> > > > acceptable as the context would likely help to find where this is coming
> > > > from.
> > > 
> > > Just to clarify, here I meant that for coverity, a script before the scan
> > > could convert to the multi-line version. So the line change only impact
> > > Coverity.
> > 
> > Hi Julien,
> > 
> > We’ve tried to avoid that because when the tool insert lines, the resultant
> > report would give wrong lines numbers if any violation is reported after the
> > insertion points. So there will be a mismatch between the codebase and the
> > report findings from some point on in the file.
> 
> I know. Stefano already pointed that out. But as I wrote, I don't think this
> is a big problem as it only affecte one tool (Coverity) and one would still be
> able to find the exact place based on the context.

Yeah I think we could consider going that way if it only affects 1 tool
out of 3.

We might still have to patch cppcheck to add the functionality but it
might not be that difficult.
--8323329-211779268-1697152632=:3431292--


From xen-devel-bounces@lists.xenproject.org Thu Oct 12 23:18:32 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 23:18:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616181.957994 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qr4wp-0002TC-4d; Thu, 12 Oct 2023 23:18:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616181.957994; Thu, 12 Oct 2023 23:18: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 1qr4wo-0002T5-Vv; Thu, 12 Oct 2023 23:18:30 +0000
Received: by outflank-mailman (input) for mailman id 616181;
 Thu, 12 Oct 2023 23:18: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=A/p7=F2=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qr4wo-0002Ss-7l
 for xen-devel@lists.xenproject.org; Thu, 12 Oct 2023 23:18:30 +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 a68fcc8d-6955-11ee-9b0e-b553b5be7939;
 Fri, 13 Oct 2023 01:18:28 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by ams.source.kernel.org (Postfix) with ESMTP id 0732AB8255D;
 Thu, 12 Oct 2023 23:18:28 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id C5315C433C7;
 Thu, 12 Oct 2023 23:18: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: a68fcc8d-6955-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1697152707;
	bh=RNbeHdFYmN2Ty67seD4QDjrA0iDPYED9IsO+LTFo8dM=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=M0Csb0H7CU4m5HRTYMeCICwS4NoijUNYhzYv/md7vlC3LPCZ/QCzMzEI4ojXKSiSR
	 3kDo4zQkrSS0KLPcAqk94gxhiweKJka62poY2uwzwcZTwoF4GQ9fWHhbHzeBG92M+E
	 lQs3QWVHL6Opqp+D/PZc8zmlxaYexobRbCGahZXkdcgeLQN7dSOGZtdsbxJ6a1LGJi
	 r2GwA0AgS4hKQ7xhodp1ruJZJDdUiKQk3UY87F5VwtlfSmp/aKZXedstiTjkd7AXf7
	 mEIdE904UWxKUCa1ih6HWP1BJILh1cVYn4mevtMnknuM6SLJGr2kFIVnFEAFPDaICZ
	 nGIlBZQkZxnhw==
Date: Thu, 12 Oct 2023 16:18:24 -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>
Subject: Re: [XEN PATCH][for-4.19] xen/include: make enum perfcounter
 anonymous
In-Reply-To: <d739fefde6f142cec10899ed2c5eb81f91618bf0.1697028983.git.nicola.vetrini@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2310121618150.3431292@ubuntu-linux-20-04-desktop>
References: <d739fefde6f142cec10899ed2c5eb81f91618bf0.1697028983.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, 11 Oct 2023, Nicola Vetrini wrote:
> Using enumerators declared in a named enum, such as the one modified,
> as operands to arithmetic operators is not allowed by MISRA C:2012 Rule 10.1.
> The enumerators of an anonymous enum can be used instead.
> 
> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>

Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>


> ---
> This violation manifeststs itself, for instance, in all uses of macro
> 'perfc_incra' from xen/include/xen/perfc.h, because the expansion
> contains an arithmetic operation on two enum constants from enum perfcounter.
> 
> ( (*nr) <= PERFC_LAST_hypercalls - PERFC_hypercalls ?  [...]
> 
> ---
>  docs/misra/rules.rst    | 3 +++
>  xen/include/xen/perfc.h | 2 +-
>  2 files changed, 4 insertions(+), 1 deletion(-)
> 
> diff --git a/docs/misra/rules.rst b/docs/misra/rules.rst
> index 3139ca7ae6dd..26c3ff819948 100644
> --- a/docs/misra/rules.rst
> +++ b/docs/misra/rules.rst
> @@ -341,6 +341,9 @@ maintainers if you want to suggest a change.
>             compilers' extensions)
>           - Implicit conversions to boolean for conditionals (?: if while
>             for) and logical operators (! || &&)
> +         - The essential type model allows the constants defined by anonymous
> +           enums (e.g., enum { A, B, C }) to be used as operands to arithmetic
> +           operators, as they have a signed essential type.
> 
>     * - `Rule 10.2 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/R_10_02.c>`_
>       - Required
> diff --git a/xen/include/xen/perfc.h b/xen/include/xen/perfc.h
> index 7c5ce537bd02..96022c07481e 100644
> --- a/xen/include/xen/perfc.h
> +++ b/xen/include/xen/perfc.h
> @@ -39,7 +39,7 @@
>  #define PERFSTATUS       PERFCOUNTER
>  #define PERFSTATUS_ARRAY PERFCOUNTER_ARRAY
> 
> -enum perfcounter {
> +enum {
>  #include <xen/perfc_defn.h>
>  	NUM_PERFCOUNTERS
>  };
> --
> 2.34.1
> 


From xen-devel-bounces@lists.xenproject.org Thu Oct 12 23:24:39 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 23:24:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616185.958002 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qr52g-0005EH-NO; Thu, 12 Oct 2023 23:24:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616185.958002; Thu, 12 Oct 2023 23: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 1qr52g-0005EA-KV; Thu, 12 Oct 2023 23:24:34 +0000
Received: by outflank-mailman (input) for mailman id 616185;
 Thu, 12 Oct 2023 23:24: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=A/p7=F2=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qr52f-0005E4-In
 for xen-devel@lists.xenproject.org; Thu, 12 Oct 2023 23:24: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 7dae1848-6956-11ee-9b0e-b553b5be7939;
 Fri, 13 Oct 2023 01:24:31 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by sin.source.kernel.org (Postfix) with ESMTP id F2AACCE2C87;
 Thu, 12 Oct 2023 23:24:27 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 359DFC433C8;
 Thu, 12 Oct 2023 23:24: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: 7dae1848-6956-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1697153067;
	bh=3dHKZfKUznSUzGd2Gwb6iBqM2vdz1+0LGr/8VBp+ylc=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=tg3UlZTdbGcpmx8TlTGIa1AFJRT9PiuzC6UVeR2yYFD6mscd7i5q2WFTAJM5TKpYK
	 iPOooWO8eloRwDcD+ITcMRTlhKWKpQ9z0AUjippUoIKzSSS7Kky0mfN72IW9IoXKIh
	 Kvt2Nq84wy/485yARlV32vq9wp9v50KWL0wZFRGii3m87Om5PL14cLiHCEVpWtajRh
	 XRTgtE+8b/6Xf3W6ZMxTGiYUmxkTtCHFm5DujBDksq0AjjVBnSdTUBp1mXg9KoBdEA
	 eoG9H91GLNRhunqEAa/xWi8j90y7lHS8LqBQ3Pyed25o4EEe/R/vrmAJ6mzhKERo2p
	 BEzNE1ZmaLcVw==
Date: Thu, 12 Oct 2023 16:24:23 -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, Simone Ballarin <simone.ballarin@bugseng.com>, 
    Doug Goldstein <cardoe@cardoe.com>, 
    George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>, 
    Wei Liu <wl@xen.org>
Subject: Re: [XEN PATCH][for-4.19 v2 1/1] xen: introduce a deviation for Rule
 11.9
In-Reply-To: <c684c36402e6740472fa91d73436ca5790e5e109.1696948320.git.nicola.vetrini@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2310121622410.3431292@ubuntu-linux-20-04-desktop>
References: <cover.1696948320.git.nicola.vetrini@bugseng.com> <c684c36402e6740472fa91d73436ca5790e5e109.1696948320.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, 11 Oct 2023, Nicola Vetrini wrote:
> The constant 0 is used instead of NULL in '__ACCESS_ONCE' as a
> compile-time check to detect non-scalar types; its usage for this
> purpose is deviated.
> 
> Furthermore, the 'access_field' and 'typeof_field' macros are
> introduced as a general way to deal with accesses to structs
> without declaring a struct variable.
> 
> No functional change intended.
> 
> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>

Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>


> ---
> Changes in v2:
> - added entry in deviations.rst
> ---
>  automation/eclair_analysis/ECLAIR/deviations.ecl | 9 +++++++++
>  docs/misra/deviations.rst                        | 5 +++++
>  xen/include/xen/compiler.h                       | 5 ++++-
>  xen/include/xen/kernel.h                         | 2 +-
>  4 files changed, 19 insertions(+), 2 deletions(-)
> 
> diff --git a/automation/eclair_analysis/ECLAIR/deviations.ecl b/automation/eclair_analysis/ECLAIR/deviations.ecl
> index fa56e5c00a27..28d9c37bedb2 100644
> --- a/automation/eclair_analysis/ECLAIR/deviations.ecl
> +++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
> @@ -246,6 +246,15 @@ constant expressions are required.\""
>    "any()"}
>  -doc_end
>  
> +#
> +# Series 11
> +#
> +
> +-doc_begin="This construct is used to check if the type is scalar, and for this purpose the use of 0 as a null pointer constant is deliberate."
> +-config=MC3R1.R11.9,reports+={deliberate, "any_area(any_loc(any_exp(macro(^__ACCESS_ONCE$))))"
> +}
> +-doc_end
> +
>  #
>  # Series 13
>  #
> diff --git a/docs/misra/deviations.rst b/docs/misra/deviations.rst
> index ee7aed0609d2..1b00e4e3e9b7 100644
> --- a/docs/misra/deviations.rst
> +++ b/docs/misra/deviations.rst
> @@ -199,6 +199,11 @@ Deviations related to MISRA C:2012 Rules:
>         See automation/eclair_analysis/deviations.ecl for the full explanation.
>       - Tagged as `safe` for ECLAIR.
>  
> +   * - R11.9
> +     - __ACCESS_ONCE uses a 0 as a null pointer constant to check if a type is
> +       scalar, therefore its usage for this purpose is allowed.
> +     - Tagged as `deliberate` for ECLAIR.
> +
>     * - R13.5
>       - All developers and reviewers can be safely assumed to be well aware of
>         the short-circuit evaluation strategy for logical operators.
> diff --git a/xen/include/xen/compiler.h b/xen/include/xen/compiler.h
> index dd99e573083f..15be9a750b23 100644
> --- a/xen/include/xen/compiler.h
> +++ b/xen/include/xen/compiler.h
> @@ -109,13 +109,16 @@
>  
>  #define offsetof(a,b) __builtin_offsetof(a,b)
>  
> +/* Access the field of structure type, without defining a local variable */
> +#define access_field(type, member) (((type *)NULL)->member)
> +#define typeof_field(type, member) typeof(access_field(type, member))
>  /**
>   * sizeof_field(TYPE, MEMBER)
>   *
>   * @TYPE: The structure containing the field of interest
>   * @MEMBER: The field to return the size of
>   */
> -#define sizeof_field(TYPE, MEMBER) sizeof((((TYPE *)0)->MEMBER))
> +#define sizeof_field(TYPE, MEMBER) sizeof(access_field(TYPE, MEMBER))
>  
>  #if !defined(__STDC_VERSION__) || __STDC_VERSION__ < 201112L
>  #define alignof __alignof__
> diff --git a/xen/include/xen/kernel.h b/xen/include/xen/kernel.h
> index 46b3c9c02625..2c5ed7736c99 100644
> --- a/xen/include/xen/kernel.h
> +++ b/xen/include/xen/kernel.h
> @@ -51,7 +51,7 @@
>   *
>   */
>  #define container_of(ptr, type, member) ({                      \
> -        typeof( ((type *)0)->member ) *__mptr = (ptr);          \
> +        typeof_field(type, member) *__mptr = (ptr);             \
>          (type *)( (char *)__mptr - offsetof(type,member) );})
>  
>  /*
> -- 
> 2.34.1
> 


From xen-devel-bounces@lists.xenproject.org Thu Oct 12 23:31:20 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 23:31:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616191.958012 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qr595-0007i9-Id; Thu, 12 Oct 2023 23:31:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616191.958012; Thu, 12 Oct 2023 23:31: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 1qr595-0007i2-GC; Thu, 12 Oct 2023 23:31:11 +0000
Received: by outflank-mailman (input) for mailman id 616191;
 Thu, 12 Oct 2023 23:31: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=A/p7=F2=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qr594-0007hg-NE
 for xen-devel@lists.xenproject.org; Thu, 12 Oct 2023 23:31: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 6bde757b-6957-11ee-98d4-6d05b1d4d9a1;
 Fri, 13 Oct 2023 01:31:08 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by ams.source.kernel.org (Postfix) with ESMTP id 80280B81F4C;
 Thu, 12 Oct 2023 23:31:08 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 17BC1C433C7;
 Thu, 12 Oct 2023 23:31: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: 6bde757b-6957-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1697153467;
	bh=mzaKHUjRGUbbdcC/dvf2IP7aDBbCPJOj9cbVR0IrkAk=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=GndQF4q5Ji0jfiBXzfmmidIUM0NyMmfRmey8eBke2ZAHD9a2lHd3JnB9StzUM0Rhe
	 PVAgiQcqyDF8OdV32wvHO5/U7JERgcJlyuio6ylf4wy0qoVEIkXofjmxMhyLApJak/
	 kvPmmTGkPaTgoNbep3EmCgwSNDKorluW2q/zUWKEEb2NGs3Meeql9/tUHQmRzWjiNW
	 9Hn/4OnEOfodyw3/dnwRYdPKnEgS9I9OSMgf0cpM2qPGLJs0GNB05E/1ms+uUzhlXL
	 wrETA5KYJ7UXJpnlSQMj24BEfulw+lqNneH3KjUPSHuE3hrkNKQMm4UIEFrh+DT7kb
	 Rge0or4H9pCxA==
Date: Thu, 12 Oct 2023 16:31:04 -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, Simone Ballarin <simone.ballarin@bugseng.com>, 
    Doug Goldstein <cardoe@cardoe.com>, 
    George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>, 
    Wei Liu <wl@xen.org>
Subject: Re: [XEN PATCH][for-next][for-4.19 v2 1/8] xen/include: add macro
 LOWEST_BIT
In-Reply-To: <bb0ba44f8a3944c22a1c7cf19196c7060e8adb4b.1697123806.git.nicola.vetrini@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2310121629350.3431292@ubuntu-linux-20-04-desktop>
References: <cover.1697123806.git.nicola.vetrini@bugseng.com> <bb0ba44f8a3944c22a1c7cf19196c7060e8adb4b.1697123806.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 Thu, 12 Oct 2023, Nicola Vetrini wrote:
> The purpose of this macro is to encapsulate the well-known expression
> 'x & -x', that in 2's complement architectures on unsigned integers will
> give 2^ffs(x), where ffs(x) is the position of the lowest set bit in x.
> 
> A deviation for ECLAIR is also introduced.
> 
> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
> ---
> Changes in v2:
> - rename to LOWEST_BIT
> ---
>  automation/eclair_analysis/ECLAIR/deviations.ecl | 6 ++++++
>  xen/include/xen/macros.h                         | 6 ++++--
>  2 files changed, 10 insertions(+), 2 deletions(-)
> 
> diff --git a/automation/eclair_analysis/ECLAIR/deviations.ecl b/automation/eclair_analysis/ECLAIR/deviations.ecl
> index d8170106b449..b8e1155ee49d 100644
> --- a/automation/eclair_analysis/ECLAIR/deviations.ecl
> +++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
> @@ -274,6 +274,12 @@ still non-negative."
>  -config=MC3R1.R10.1,etypes+={safe, "stmt(operator(logical)||node(conditional_operator||binary_conditional_operator))", "dst_type(ebool||boolean)"}
>  -doc_end
> 
> +-doc_begin="The macro LOWEST_BIT encapsulates a well-known pattern to obtain the value
> +2^ffs(x) for unsigned integers on two's complement architectures
> +(all the architectures supported by Xen satisfy this requirement)."
> +-config=MC3R1.R10.1,reports+={safe, "any_area(any_loc(any_exp(macro(^LOWEST_BIT$))))"}
> +-doc_end

Please also add the same deviation and explanation to
docs/misra/deviations.rst. Other than that, this looks fine.


>  ### Set 3 ###
> 
>  #
> diff --git a/xen/include/xen/macros.h b/xen/include/xen/macros.h
> index d0caae7db298..af47179d1056 100644
> --- a/xen/include/xen/macros.h
> +++ b/xen/include/xen/macros.h
> @@ -8,8 +8,10 @@
>  #define DIV_ROUND(n, d) (((n) + (d) / 2) / (d))
>  #define DIV_ROUND_UP(n, d) (((n) + (d) - 1) / (d))
> 
> -#define MASK_EXTR(v, m) (((v) & (m)) / ((m) & -(m)))
> -#define MASK_INSR(v, m) (((v) * ((m) & -(m))) & (m))
> +#define LOWEST_BIT(x) ((x) & -(x))
> +
> +#define MASK_EXTR(v, m) (((v) & (m)) / LOWEST_BIT(m))
> +#define MASK_INSR(v, m) (((v) * LOWEST_BIT(m)) & (m))
> 
>  #define count_args_(dot, a1, a2, a3, a4, a5, a6, a7, a8, x, ...) x
>  #define count_args(args...) \
> --
> 2.34.1
> 


From xen-devel-bounces@lists.xenproject.org Thu Oct 12 23:32:03 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 23:32:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616196.958023 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qr59u-0008Dm-S6; Thu, 12 Oct 2023 23:32:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616196.958023; Thu, 12 Oct 2023 23: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 1qr59u-0008Df-Oq; Thu, 12 Oct 2023 23:32:02 +0000
Received: by outflank-mailman (input) for mailman id 616196;
 Thu, 12 Oct 2023 23:32: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=A/p7=F2=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qr59t-0008DQ-J9
 for xen-devel@lists.xenproject.org; Thu, 12 Oct 2023 23:32:01 +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 8991eda7-6957-11ee-9b0e-b553b5be7939;
 Fri, 13 Oct 2023 01:31:59 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by dfw.source.kernel.org (Postfix) with ESMTP id 1AC0961F99;
 Thu, 12 Oct 2023 23:31:58 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 42627C433C7;
 Thu, 12 Oct 2023 23:31: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: 8991eda7-6957-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1697153517;
	bh=s3laAgeAxWcD73aF1bYob0SW7Fd3zueGdFx2ymVKNPo=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=Dl+3pZAuYGuqpWFe6cHrx6PFg9eQP+KtB8lUhMovScLc6z9OhSa2WdYJDUeGUBhqa
	 Oo9263KTDRCHnRC8gSOat4bvbtgAMVSP/ZJ282KaqqLA2lx7GcreRW9hZ1U4SroQzS
	 HvIegKFCe+AF3oK9MRRjVTW5p4lTuoWE1LhTS5Qr0C7eBdNimLkh/3Q9GGFAKGhbo4
	 wI3d4YNi7vk18RmLjyPIhK+bc/BTuyzuyr73OqNjyVpA6BqOjbwmBHgHx138JZLZXH
	 No9GsGrgcNpby+sOp05E18H6ylFeN242pexbct/5sy6F4bjHUJzvEHiqpSUmw+lKhx
	 77M+zrPCEAvsw==
Date: Thu, 12 Oct 2023 16:31:54 -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, Julien Grall <julien@xen.org>, 
    Bertrand Marquis <bertrand.marquis@arm.com>, 
    Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: Re: [XEN PATCH][for-4.19 v2 2/8] arm/bitops: encapsulate violation
 of MISRA C:2012 Rule 10.1
In-Reply-To: <042f79da9c4480955c5fb82a25e4847c4777fbea.1697123806.git.nicola.vetrini@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2310121631300.3431292@ubuntu-linux-20-04-desktop>
References: <cover.1697123806.git.nicola.vetrini@bugseng.com> <042f79da9c4480955c5fb82a25e4847c4777fbea.1697123806.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 Thu, 12 Oct 2023, Nicola Vetrini wrote:
> The definitions of ffs{l}? violate Rule 10.1, by using the well-known
> pattern (x & -x); its usage is wrapped by the LOWEST_BIT macro.
> 
> No functional change.
> 
> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>

Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>


From xen-devel-bounces@lists.xenproject.org Thu Oct 12 23:33:08 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 23:33:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616200.958032 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qr5Ax-0000Mb-5k; Thu, 12 Oct 2023 23:33:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616200.958032; Thu, 12 Oct 2023 23:33: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 1qr5Ax-0000MU-2q; Thu, 12 Oct 2023 23:33:07 +0000
Received: by outflank-mailman (input) for mailman id 616200;
 Thu, 12 Oct 2023 23:33: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=A/p7=F2=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qr5Aw-0007hg-3k
 for xen-devel@lists.xenproject.org; Thu, 12 Oct 2023 23:33:06 +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 b16cfdd8-6957-11ee-98d4-6d05b1d4d9a1;
 Fri, 13 Oct 2023 01:33:05 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by ams.source.kernel.org (Postfix) with ESMTP id 45CBBB82784;
 Thu, 12 Oct 2023 23:33:05 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 19D67C433C7;
 Thu, 12 Oct 2023 23:33:02 +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: b16cfdd8-6957-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1697153584;
	bh=8tLeRjPbSnbls7BW3mAOY5cj43IST0symIQ1vN/EGo4=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=qaEeB6QD7oB4AZuW38xZ6bPf0rqPlTcgKiM5eS+q3rqcQ/wBY31FEkOtVK3mxzA2C
	 mzy26aAP3A2RhrCEJMVAev8DEDMWBAniZKGNyjog5DrRWMm2xWcZ+3JdGKmoZCQw0Z
	 ouH5X5ndyMlruj/eEq3B4xElqU/WVRpgoN6y6JDE6phaisnGnOHYd2DAPDswAM7tLP
	 EW0n9zGEDp6lCdDaD9XUEc5+l8/ItDNTvHvVvljT4KPCJLPH5CPAqgEPd3zsVgCjCf
	 fv4iFpZ9XaVksSbrroUYJe7Vf8j/oFCRYNs0nNTbPWuERHcLKPutMmFzqaVGlczs7K
	 0mhOtrxifOorQ==
Date: Thu, 12 Oct 2023 16:33: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, 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>
Subject: Re: [XEN PATCH][for-4.19 v2 3/8] xen/pdx: amend definition of
 PDX_GROUP_COUNT
In-Reply-To: <62f8b9c36ad78352fc796878fd9759307ec3e380.1697123806.git.nicola.vetrini@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2310121632280.3431292@ubuntu-linux-20-04-desktop>
References: <cover.1697123806.git.nicola.vetrini@bugseng.com> <62f8b9c36ad78352fc796878fd9759307ec3e380.1697123806.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 Thu, 12 Oct 2023, Nicola Vetrini wrote:
> The definition of PDX_GROUP_COUNT causes violations of
> MISRA C:2012 Rule 10.1, therefore the problematic part now uses
> the LOWEST_BIT macro, which encapsulates the pattern.
> 
> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>

Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>


From xen-devel-bounces@lists.xenproject.org Thu Oct 12 23:35:11 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 23:35:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616205.958043 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qr5Cv-0001pj-Hp; Thu, 12 Oct 2023 23:35:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616205.958043; Thu, 12 Oct 2023 23:35: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 1qr5Cv-0001pc-Ep; Thu, 12 Oct 2023 23:35:09 +0000
Received: by outflank-mailman (input) for mailman id 616205;
 Thu, 12 Oct 2023 23:35: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=A/p7=F2=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qr5Ct-0001n8-VH
 for xen-devel@lists.xenproject.org; Thu, 12 Oct 2023 23:35:07 +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 f91f7358-6957-11ee-98d4-6d05b1d4d9a1;
 Fri, 13 Oct 2023 01:35: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 BCF94CE2C81;
 Thu, 12 Oct 2023 23:35:02 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 95B23C433C8;
 Thu, 12 Oct 2023 23:35: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: f91f7358-6957-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1697153701;
	bh=Gmaq1/XycnXndiGqV4G0ilzh2kZuUH/6HTqHzlIVS0Y=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=LKK3jgxkYyHjhMffNx/1E2Rt4MMQrms6sBpv0HuNoRmUrQhGnlNcF76tOnbuMeME2
	 Nw+tN9qAGpt4AIDU1HwzY8B3IWlAu8VX+DFL48PJFLMdPSftjadPqWefJKhv++I1AA
	 PQyH6JVJP6PtFBpT92+0SsKrBZByFO1TNnjwoeTMgTddYA7/9y/kAE9SIR0MD4YJB8
	 OmBBIZkqrWi1yOGl8NZCnpOw36KW7NZep5S/Ry2ecejMv4jKoPO6iJtiFBbKbaB1wF
	 Kjzbz0v5+96zx0dcEZdUsboW/jmdZbGyCPxWlzx7f7YbxKf0jkk0JkUHXDJMEW5QBh
	 w1wYaKLkOY+qg==
Date: Thu, 12 Oct 2023 16:34:59 -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>
Subject: Re: [XEN PATCH][for-next v2 4/8] x86_64/mm: express macro CNT using
 LOWEST_BIT
In-Reply-To: <eb05327a3af71c883c3ff5ed3b4501a8859403d3.1697123806.git.nicola.vetrini@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2310121633290.3431292@ubuntu-linux-20-04-desktop>
References: <cover.1697123806.git.nicola.vetrini@bugseng.com> <eb05327a3af71c883c3ff5ed3b4501a8859403d3.1697123806.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 Thu, 12 Oct 2023, Nicola Vetrini wrote:
> The various definitions of macro CNT (and the related BUILD_BUG_ON)
> can be rewritten using LOWEST_BIT, encapsulating a violation of
> MISRA C:2012 Rule 10.1.
> 
> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>

Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>


From xen-devel-bounces@lists.xenproject.org Thu Oct 12 23:45:07 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 23:45:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616208.958053 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qr5MT-0005Mh-Dz; Thu, 12 Oct 2023 23:45:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616208.958053; Thu, 12 Oct 2023 23: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 1qr5MT-0005Ma-Ab; Thu, 12 Oct 2023 23:45:01 +0000
Received: by outflank-mailman (input) for mailman id 616208;
 Thu, 12 Oct 2023 23:44: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=A/p7=F2=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qr5MR-0005LB-RH
 for xen-devel@lists.xenproject.org; Thu, 12 Oct 2023 23:44:59 +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 58a23f99-6959-11ee-9b0e-b553b5be7939;
 Fri, 13 Oct 2023 01:44:57 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by sin.source.kernel.org (Postfix) with ESMTP id EF94ACE2C7C;
 Thu, 12 Oct 2023 23:44:51 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id BAA6EC433C8;
 Thu, 12 Oct 2023 23:44: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: 58a23f99-6959-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1697154291;
	bh=9quvGr8tKgOKJ9gCBM1PIW04shRwHtckxR5D9UVUfmo=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=ZgqTxfbTROf/BLK2yTtmhAqOeUBamYnORy5dE/G+JThf7ZG+LheCz1rn4G6bDEKc8
	 On8TjiWM0GuNlwHIkNnqw0gPO5osj3PWRyO4FPuMtJyIe2tBlRFxHwavyoA4G7mSQb
	 eswuRkjifV99ElTr+QHUf2rTUc/dr2nZYGAsIEgFo6ejFUBD1nVn3yH1T8aAZi1WI2
	 I4r503pTTvdl+KvhaHJCVDyiyCjmgOmp+RHIZygZJw66Drz0u7UxQkI1FX5psfWW0g
	 PWa2oNg/LvsqtBxqo6xEdtK6vXAcpSLdL422x5VybYO+zuPxSUNQ74HiH3eoOEGv5X
	 3SKDctSGbTwVw==
Date: Thu, 12 Oct 2023 16:44:48 -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>
Subject: Re: [XEN PATCH][for-next v2 6/8] x86/mce: Move MC_NCLASSES into the
 enum mctelem_class
In-Reply-To: <6622a2ec7079f86b73ae420e1e840d3d35ffb3a0.1697123806.git.nicola.vetrini@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2310121643150.3431292@ubuntu-linux-20-04-desktop>
References: <cover.1697123806.git.nicola.vetrini@bugseng.com> <6622a2ec7079f86b73ae420e1e840d3d35ffb3a0.1697123806.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 Thu, 12 Oct 2023, Nicola Vetrini wrote:
> The definition of MC_NCLASSES contained a violation of MISRA C:2012
> Rule 10.1, therefore by moving it as an enumeration constant resolves the
> violation and makes it more resilient to possible additions to that enum.
> 
> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>

Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>


From xen-devel-bounces@lists.xenproject.org Thu Oct 12 23:49:34 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 23:49:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616213.958063 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qr5Qq-0006sI-VO; Thu, 12 Oct 2023 23:49:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616213.958063; Thu, 12 Oct 2023 23:49: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 1qr5Qq-0006sB-Rn; Thu, 12 Oct 2023 23:49:32 +0000
Received: by outflank-mailman (input) for mailman id 616213;
 Thu, 12 Oct 2023 23:49: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=A/p7=F2=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qr5Qp-0006s5-59
 for xen-devel@lists.xenproject.org; Thu, 12 Oct 2023 23:49:31 +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 fa903304-6959-11ee-9b0e-b553b5be7939;
 Fri, 13 Oct 2023 01:49:29 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by dfw.source.kernel.org (Postfix) with ESMTP id 799A061F8F;
 Thu, 12 Oct 2023 23:49:26 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id A4650C433C7;
 Thu, 12 Oct 2023 23:49: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: fa903304-6959-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1697154566;
	bh=a/3QuTQO4MPlb3nMrHAT/lW56mp/adUTxrArKbcL3No=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=mCvdVTizl6gz8icTzOD5R2aRagQWZoTaANzdpsfy8XCaQpDhmjVLU497bWLB/f6w6
	 K0spFHJlGc3xEHq//X+aquV+ra59b5H8GMPbjESAWbMfF3nvjsA6UpcIwQBOtlmMGI
	 i9t/LS7UM1fZMn48gcRHdxPxFb5tLMjUL77CWwtWkNYBINnpVkx4BVKmWOYMM3VGYU
	 xCqvgnie8iyBWVOEbcJAcJEbdiuRew01AH+bRab/3LN45owObbyaxrBHZxayHoiObK
	 /LDQkofDcBkiEVUCdgPuJmykczdLohwaAqq8Ab6qVejlqr7FctOm/v3lPbjQXu7NYL
	 2Q4Av4qgo6SiQ==
Date: Thu, 12 Oct 2023 16:49:23 -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>
Subject: Re: [XEN PATCH][for-4.19 1/2] xen/vmap: use LOWEST_BIT to wrap a
 violation of Rule 10.1
In-Reply-To: <29c1c01f54d6ac9fccc86b72ee96cc66672ac57a.1697125949.git.nicola.vetrini@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2310121649160.3431292@ubuntu-linux-20-04-desktop>
References: <cover.1697125949.git.nicola.vetrini@bugseng.com> <29c1c01f54d6ac9fccc86b72ee96cc66672ac57a.1697125949.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 Thu, 12 Oct 2023, Nicola Vetrini wrote:
> No functional change.
> 
> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>

Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>


From xen-devel-bounces@lists.xenproject.org Thu Oct 12 23:49:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 12 Oct 2023 23:49:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616216.958073 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qr5RE-0007H8-7J; Thu, 12 Oct 2023 23:49:56 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616216.958073; Thu, 12 Oct 2023 23: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 1qr5RE-0007H1-4D; Thu, 12 Oct 2023 23:49:56 +0000
Received: by outflank-mailman (input) for mailman id 616216;
 Thu, 12 Oct 2023 23:49: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=A/p7=F2=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qr5RC-00079w-OA
 for xen-devel@lists.xenproject.org; Thu, 12 Oct 2023 23:49:54 +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 0a25bbcd-695a-11ee-98d4-6d05b1d4d9a1;
 Fri, 13 Oct 2023 01:49:54 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by dfw.source.kernel.org (Postfix) with ESMTP id 0D46361F6F;
 Thu, 12 Oct 2023 23:49:53 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 62E87C433C7;
 Thu, 12 Oct 2023 23:49: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: 0a25bbcd-695a-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1697154592;
	bh=a/3QuTQO4MPlb3nMrHAT/lW56mp/adUTxrArKbcL3No=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=m64uFJZ55sRUWzdZndgCFWG1+J+UXSk5Jes9tuo8J6SDA8giaMJ2a2hFm6jUdZC01
	 wWOkPxy5UFMkBBXHvnhCepV1JgsETI+wwG0hOlkH8ZW1fK9UibwlHywuH1rQfj9Vm5
	 vSri0HwxcK5LIWGeUhnk+C//q7JJbgLwRfBVCqNadHHrebqeYEfQ8uk677F7Tz50cU
	 lo8TSZiNOoeenuaxL5ekepdi1bwBao67zij+y0ST8NddvRxToaeRKIt40XUYmB4zv+
	 Kev/yGc62WQQLmQXdcoww8zHyv2UWBX8e8fN6fYnVdtemzxJMPBDvdn5RLvc0/XsWy
	 GoUm5xLoBpn3g==
Date: Thu, 12 Oct 2023 16:49:49 -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, Paul Durrant <paul@xen.org>
Subject: Re: [XEN PATCH][for-4.19 2/2] xen/iommu: use LOWEST_BIT to wrap a
 violation of Rule 10.1
In-Reply-To: <26399294316ff7f468c05d7e8a8433227afb3177.1697125949.git.nicola.vetrini@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2310121649370.3431292@ubuntu-linux-20-04-desktop>
References: <cover.1697125949.git.nicola.vetrini@bugseng.com> <26399294316ff7f468c05d7e8a8433227afb3177.1697125949.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 Thu, 12 Oct 2023, Nicola Vetrini wrote:
> No functional change.
> 
> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>

Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>


From xen-devel-bounces@lists.xenproject.org Fri Oct 13 00:30:02 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 00:30:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616224.958083 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qr63p-0002p7-6q; Fri, 13 Oct 2023 00:29:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616224.958083; Fri, 13 Oct 2023 00:29: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 1qr63p-0002p0-40; Fri, 13 Oct 2023 00:29:49 +0000
Received: by outflank-mailman (input) for mailman id 616224;
 Fri, 13 Oct 2023 00:29: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=/5iA=F3=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qr63m-0002ou-Vf
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 00:29:47 +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 9a03b8df-695f-11ee-9b0e-b553b5be7939;
 Fri, 13 Oct 2023 02:29:42 +0200 (CEST)
Received: from DB3PR06CA0009.eurprd06.prod.outlook.com (2603:10a6:8:1::22) by
 AM8PR08MB6596.eurprd08.prod.outlook.com (2603:10a6:20b:369::24) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.46; Fri, 13 Oct
 2023 00:29:33 +0000
Received: from DBAEUR03FT008.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:8:1:cafe::d2) by DB3PR06CA0009.outlook.office365.com
 (2603:10a6:8:1::22) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.30 via Frontend
 Transport; Fri, 13 Oct 2023 00:29:33 +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.6886.31 via Frontend Transport; Fri, 13 Oct 2023 00:29:32 +0000
Received: ("Tessian outbound 0ae75d4034ba:v211");
 Fri, 13 Oct 2023 00:29:32 +0000
Received: from ba4325176711.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 224E3357-C196-4056-8F0A-FA5A3D56BDE7.1; 
 Fri, 13 Oct 2023 00:29:26 +0000
Received: from EUR01-VE1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id ba4325176711.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Fri, 13 Oct 2023 00:29:24 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by PA6PR08MB10707.eurprd08.prod.outlook.com (2603:10a6:102:3cb::5)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.42; Fri, 13 Oct
 2023 00:29:22 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41%4]) with mapi id 15.20.6863.032; Fri, 13 Oct 2023
 00:29: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: 9a03b8df-695f-11ee-9b0e-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=KarQf0W/wbuxJNCMhPrfn01FFwf19dtbWiRrong4gNo=;
 b=d4iWKETCnKHnQyi925rRCVbc6DhUC7TVQ7CoTUog3tHDAV8Pq3Fj0FYVo/7CyDrWpFq676WnFwhpzIk8BR0F1LLNwUiLKY/+7eLfGaL4Mc/VJp9m/NQSs9XI01fCAOvQyNYPoUo2quP1q7VUPbP3R7f0isvK4qPFmuUz2xbu+kc=
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: c8b69955a248f21d
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ZjGXm/dzFiAPZjVQ0/DiIac9kb2XfvrcCpfYBSI7yGELiR6uYAJ1yU1RpIfdk03HElY2eNm3oMXVqdpLxoiv0jpwNX4xgpTm3+j8hIs54zpWtGyqQ1QnixP9xyXWlJp08MkHeb0wIke0k/wwKeG/hjG6IHGTzZZ0utiAtQWoajyD7ZxNSZlbEkNJiZ4X0waXZujFWu7rUrYh3Q3BLJmb93JTBdw0zoFBaUxs65NoBwBsrGn91cRo9ytapH1cwWXZ2QHUSj0noS9B2//7D5b/jXop2KVxpOoVZhYdpjm4KeKq4CtJ8gpHJQnv6lykmBIV8WibushvwX7ah+SeyXjIyA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=KarQf0W/wbuxJNCMhPrfn01FFwf19dtbWiRrong4gNo=;
 b=TFczOy7VJZkBo/VeEq5LK5rc3X3mTKkVucofvhLXOstRWKv1bCmqbHhVxzxdJOLqsyTX0vMCA6OtfUtq94PVoQqoJtmk3Hs7NU5b9CfirWJQMMvw7d6tn8/ZOuU0TUKw8d9uNS5FkxdCNgCGRWIXpE05qmNEve/4o6ep8uvK25mLFiAkJK10XMx4CI2IXVOPlSvmg5fVBeHKrupADmj7JTgdzrxhLG8ZSPUSCbCA68D07Y1pMI2MASsqHNOLTUEgIlOopK/Xq6KHjSnTHNma/k9K7gXAnQdppeT36Mr+XQU+r57Dw57zkhvTlgDgg+59oY5ZWEpxvXkeRaPfUJitVg==
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=KarQf0W/wbuxJNCMhPrfn01FFwf19dtbWiRrong4gNo=;
 b=d4iWKETCnKHnQyi925rRCVbc6DhUC7TVQ7CoTUog3tHDAV8Pq3Fj0FYVo/7CyDrWpFq676WnFwhpzIk8BR0F1LLNwUiLKY/+7eLfGaL4Mc/VJp9m/NQSs9XI01fCAOvQyNYPoUo2quP1q7VUPbP3R7f0isvK4qPFmuUz2xbu+kc=
From: Henry Wang <Henry.Wang@arm.com>
To: Alejandro Vallejo <alejandro.vallejo@cloud.com>
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>, Wei Liu
	<wl@xen.org>
Subject: Re: [for-4.18][PATCH 0/2] Fix AMD erratum #1485 on AMD Zen4
Thread-Topic: [for-4.18][PATCH 0/2] Fix AMD erratum #1485 on AMD Zen4
Thread-Index: AQHZ/TE50gYu+NMZvE+XlASHnJQ+e7BG3i2A
Date: Fri, 13 Oct 2023 00:29:20 +0000
Message-ID: <8DA9FDEC-FABB-4847-9486-BF04600187AE@arm.com>
References: <20231012172601.22600-1-alejandro.vallejo@cloud.com>
In-Reply-To: <20231012172601.22600-1-alejandro.vallejo@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_|PA6PR08MB10707:EE_|DBAEUR03FT008:EE_|AM8PR08MB6596:EE_
X-MS-Office365-Filtering-Correlation-Id: 7c3a5da7-b816-4118-1c5f-08dbcb83788d
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:
 tuB3VRAQMyGPYfjMiTkgtF4eYSqdtMy8MZGg/H8Ri20rxse9E7RTIlCcqKUpUQ4vOBWjB9nyMUfWkq2CDgZGblIoJQQHXj15HvQpVfQkAAzXGb6nZ4P4jgxaE9p6lk+5fg7B5mGD9mnBBhGJYtBlXg3S4BCR7lXnrV9n2IXKlu5bpiftEMQ0bQ+AOcPZNqweI0nybmrmHszxLQez1jbJ4Y+tj24r1nnBTRt7+V1otqWWBcWvrFCxfgw/sDiQE1XVGY8HIGKIBmuiqoauOVYV8M8PK9yN3iSEsAsjgj7XsxF1Spd2OQvOLIO5znWIyrQO6Xbtp1UbgbKcpGs9bOrT4BCiuDP5uzCAP4z+pAh+deTsrcb7VaPAiMm5wNRArZ5jX26PxGpt61ddXipAtCNa6/30tSirlP++dQ7FdlB6h6zNMHJlX6ivUmzUDtSgVdrof4QNrOmJedKVRpcSm+51BctThZo6NgMSzYadcCseS4PmEpTbF3j65ejP+BEf1nRNSEyJ9kEceFpiejiGgHcCOkVpu1sJUjNpeon9eWecwYFqsashZL6j2i4TBDEKkC82hn/eErjUy1XJQevLl9WnCmGE/niMO0/ScKhCX9XbzxucRqOSfkN8CO6TN8d2hLZ9qMBnt1Rb0f/MyUBjQq5CMQ==
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)(396003)(366004)(39860400002)(230922051799003)(1800799009)(186009)(451199024)(64100799003)(6506007)(91956017)(53546011)(966005)(6486002)(6512007)(76116006)(2616005)(66556008)(316002)(66446008)(66946007)(66476007)(64756008)(54906003)(6916009)(71200400001)(478600001)(41300700001)(26005)(8936002)(8676002)(4326008)(36756003)(86362001)(122000001)(38070700005)(2906002)(83380400001)(5660300002)(33656002)(38100700002)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="iso-8859-1"
Content-ID: <02937F5EC101A24B9441D8F25E050060@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA6PR08MB10707
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:
	0e095e23-7962-4757-f3d6-08dbcb837130
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	UAbHUmjT3LRCobgQ5Y7eaZBOlBf9CzSTyGN7YaZCtOQYXPeo89mftx7brRIBQRevp9m/dOencMECXKPqXLJ+XtO8azukCsBtVneZ0L3xRx4hgcG2vGfJTNuzNqs+EeDdBcbvvA+DqJEhnkbp6QNMIvDd4c0kTR53D1p+9pNdYbhpaioo92HuBBwOW+h3AIZE5wQ+qKgxcuLj3THu7XPpbmyhya8Z6s34/bs0UT1ucp+9GWr6L9l7TwnIhpOhAP6beHpktXKb6TGbxSrSih8cvqy/WccgOMYjlFICXob9a12YymlSvk2CvnZm2fPTOGat+CWzKHPaxlieDKSc2HmOpIBjXvPUeONelJBEWboZiwbYU/B3FCJhpbKdevu981GR5qgs/Hh8vIhoXek9U5r2DVMdqnHH99C+jAuX6w9TfhNqdr4EhYQzh4jTa3s489DwtnGgjyKEETPbLvdE8/NOPSLtAhpsJXY6shv82HBt5FcIOETtqhvb1xPOyjIZowdxeKUtMJ36LTJvFzF4WA9i+lGCty/kFBCJhq5dTciGeRSdNs3kKPZL8R8JwiIMb6dYQc1TPxdlIlJYmeHTy21IO00gcIpiTAllTVM2dvxoA9Xg6Zb5O2whl32FyAluCfwxJf00/weGuF1Kn22Hpp9gUCBbtJNlsj9HRRe3RFXkel88JOHcTXE/tuY4/OCOs/AF3EFXWQ4SFCAhJxW+v+KSpxbanJM4sD2WZ6CjhqKjkko=
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)(39860400002)(376002)(230922051799003)(451199024)(64100799003)(82310400011)(186009)(1800799009)(36840700001)(46966006)(40470700004)(4326008)(6862004)(8676002)(8936002)(70586007)(54906003)(70206006)(966005)(6486002)(83380400001)(36860700001)(36756003)(356005)(81166007)(86362001)(82740400003)(33656002)(47076005)(2906002)(478600001)(40460700003)(316002)(41300700001)(5660300002)(40480700001)(26005)(336012)(53546011)(6512007)(2616005)(6506007);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Oct 2023 00:29:32.6256
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 7c3a5da7-b816-4118-1c5f-08dbcb83788d
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: AM8PR08MB6596

Hi Alejandro,

> On Oct 13, 2023, at 01:25, Alejandro Vallejo <alejandro.vallejo@cloud.com=
> wrote:
>=20
> This patch should make it to 4.18, as it prevents random crashes on AMD
> Zen4 running outdated microcode.

Yes I agree, so for this series:

Release-acked-by: Henry Wang <Henry.Wang@arm.com>

Kind regards,
Henry


>=20
> Under certain conditions Zen4 may corrupt its own code stream when SMT is
> enabled and STIBP is not. The Linux thread in which this was highlighted =
is
> in patch2's commit message.
>=20
> NOTE: Still running in CI as of now, but tested locally. Pipeline here.
>    https://gitlab.com/xen-project/people/agvallejo/xen/-/pipelines/103489=
5039
>=20
> Patch 1: is just a minor refactor to ensure we don't get microarchitectur=
es
>         of different families mixed up now that we have 3 different
>         families involved (Fam17h, Fam18h and Fam19h)
> Patch 2: The actual fix. It involves setting a bit in an MSR if it's a no=
n
>         virtualized zen4. It's not a direct copy of the Linux patch, as w=
e
>         have started using macros to find out microarchitectures from
>         CPUID bits, rather than relying on models.
>=20
> Alejandro Vallejo (2):
>  xen/x86: Add family guards to the is_zen[12]_uarch() macros
>  x86/amd: Prevent potentially fetching wrong instruction bytes on Zen4
>=20
> xen/arch/x86/cpu/amd.c               | 16 +++++++++++++---
> xen/arch/x86/include/asm/amd.h       | 17 +++++++++++++----
> xen/arch/x86/include/asm/msr-index.h |  2 ++
> xen/arch/x86/spec_ctrl.c             |  3 ---
> 4 files changed, 28 insertions(+), 10 deletions(-)
>=20
> --=20
> 2.34.1
>=20



From xen-devel-bounces@lists.xenproject.org Fri Oct 13 02:03:25 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 02:03:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616230.958092 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qr7W9-0002rY-1K; Fri, 13 Oct 2023 02:03:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616230.958092; Fri, 13 Oct 2023 02:03: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 1qr7W8-0002rR-Uo; Fri, 13 Oct 2023 02:03:08 +0000
Received: by outflank-mailman (input) for mailman id 616230;
 Fri, 13 Oct 2023 02:03: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 1qr7W7-0002rH-8z; Fri, 13 Oct 2023 02:03: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 1qr7W7-0008Ck-4G; Fri, 13 Oct 2023 02:03: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 1qr7W6-0007oW-OM; Fri, 13 Oct 2023 02:03:06 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qr7W6-0005yS-Nu; Fri, 13 Oct 2023 02:03: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=xjklBI4NYyUvLIb1T5e54SRfOgiYGV/fi3A6R68d5SM=; b=WpeB1yP4HuX1FQy8l1uMISUJjk
	eVskyab6WT0Ry9ot98i96NSjbvNNRINEKtkoXZc+KNFKXzUuwgINECBiJWmBZl3R3kUJSfiNBbrq+
	UkyShE0PGuvxhYgnUxWg01DS+ANma5n/ktAe0tHXb8rcdQwIr8XwhJfD+inhFuOkXp/M=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183359-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 183359: tolerable FAIL - PUSHED
X-Osstest-Failures:
    linux-linus:test-armhf-armhf-xl-rtds:xen-boot:fail:allowable
    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-armhf-armhf-libvirt: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-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-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: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-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu: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-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-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-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-amd64-amd64-libvirt:migrate-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
    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-libvirt: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=401644852d0b2a278811de38081be23f74b5bb04
X-Osstest-Versions-That:
    linux=1c8b86a3799f7e5be903c3f49fcdaee29fd385b5
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 13 Oct 2023 02:03:06 +0000

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

Failures :-/ but no regressions.

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

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183344
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183344
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183344
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183344
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183344
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183344
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183344
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183344
 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-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          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-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  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-amd64-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-amd64-amd64-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-amd64-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-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-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                401644852d0b2a278811de38081be23f74b5bb04
baseline version:
 linux                1c8b86a3799f7e5be903c3f49fcdaee29fd385b5

Last test of basis   183344  2023-10-11 09:42:09 Z    1 days
Testing same since   183359  2023-10-12 13:01:48 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Benjamin Tissoires <bentiss@kernel.org>
  Damien Le Moal <dlemoal@kernel.org>
  David Sterba <dsterba@suse.com>
  Dennis Gilmore <dgilmore@redhat.com>
  Douglas Anderson <dianders@chromium.org>
  Gustavo A. R. Silva <gustavoars@kernel.org>
  Hans de Goede <hdegoede@redhat.com>
  Jan Kara <jack@suse.cz>
  Johan Hovold <johan+linaro@kernel.org>
  John Ogness <john.ogness@linutronix.de>
  Linus Torvalds <torvalds@linux-foundation.org>
  Ondrej Zary <linux@zary.sk>
  Petr Mladek <pmladek@suse.com>
  Petr Tesarik <petr@tesarici.cz>

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
   1c8b86a3799f..401644852d0b  401644852d0b2a278811de38081be23f74b5bb04 -> tested/linux-linus


From xen-devel-bounces@lists.xenproject.org Fri Oct 13 02:14:59 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 02:14:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616236.958103 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qr7hW-0005FB-3V; Fri, 13 Oct 2023 02:14:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616236.958103; Fri, 13 Oct 2023 02: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 1qr7hW-0005F4-0L; Fri, 13 Oct 2023 02:14:54 +0000
Received: by outflank-mailman (input) for mailman id 616236;
 Fri, 13 Oct 2023 02: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=pfqf=F3=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qr7hU-0005Ey-M2
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 02:14:52 +0000
Received: from mail-lf1-x131.google.com (mail-lf1-x131.google.com
 [2a00:1450:4864:20::131])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 4a862790-696e-11ee-98d4-6d05b1d4d9a1;
 Fri, 13 Oct 2023 04:14:51 +0200 (CEST)
Received: by mail-lf1-x131.google.com with SMTP id
 2adb3069b0e04-50567477b29so2153320e87.3
 for <xen-devel@lists.xenproject.org>; Thu, 12 Oct 2023 19:14:51 -0700 (PDT)
Received: from [10.157.20.243] ([103.14.252.248])
 by smtp.gmail.com with ESMTPSA id
 t5-20020a170902a5c500b001ae0152d280sm2640618plq.193.2023.10.12.19.14.47
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Thu, 12 Oct 2023 19:14: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: 4a862790-696e-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1697163291; x=1697768091; darn=lists.xenproject.org;
        h=content-transfer-encoding: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=m5YvkI3/K5l45PWFbsw3hsiaMoJ2HBBKjP22fAYw1ck=;
        b=KTGMOkHSojBEG4i5+6qXjz3ojKT/ubUyUh6Msic90fbWmE5/6k8OzGhK0IvMUtg4Cb
         SyZNNfeP7F9FGDH+3selY/i3P/JIJZu0FQ13ThAg8OBZypC7B0wv7+czCShJaBVaxBhZ
         fRAHB4W9JKk1FAt9MT4CNA/dN4mSGqoFBs9/Y=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697163291; x=1697768091;
        h=content-transfer-encoding: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=m5YvkI3/K5l45PWFbsw3hsiaMoJ2HBBKjP22fAYw1ck=;
        b=H8XLolxztjYna9l4vkYauP/BxFPiOgvRtlyC5jXQdem2C4nhjDWomOuW1Ogj8pQLbw
         5w+6t6dMHEQUVGqbJM43RvvcLXBRxBD9RbAUi/sfFIqe4KgTExjMitHo13eiMyrBvXr1
         yjKvL6ceFyfKH4ZmhkOB2k5qRcrmU54GFSHmENKXL3wmaDuIOfb8w5v7a4W3PARgVG9p
         EG989o4sZgf6w+KvQ3Z7FD3S+9btMpnnxr5ZuSmMP5Itbmgb2af3CiQ6tT/Zf9Gz9T4V
         lNWWjLIKyBNsMO/tgtC8aU6miqNRlyOdlVNlctUlI1mS7JRJnOQ+4gWyNrS6twkZOb/A
         fTcA==
X-Gm-Message-State: AOJu0YyN7WX/JZNEAFOp4BNY2MSnDbPiHD77wLl6Xhg3V/0N2pIkkvep
	nOCxpUhEFBeKLe4NuwXv5WzfHA==
X-Google-Smtp-Source: AGHT+IEpUSeCDUKTdo1C35effx5/EpBbW+e0qqxStjIU0Hss/tceEQZhcUVGelvqORfDy94679IO7Q==
X-Received: by 2002:ac2:5a5a:0:b0:500:9ab8:b790 with SMTP id r26-20020ac25a5a000000b005009ab8b790mr19955255lfn.60.1697163290786;
        Thu, 12 Oct 2023 19:14:50 -0700 (PDT)
Message-ID: <06c4df56-8118-4f11-843a-7e4ae81f2464@citrix.com>
Date: Fri, 13 Oct 2023 10:14:45 +0800
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [for-4.18][PATCH 1/2] xen/x86: Add family guards to the
 is_zen[12]_uarch() macros
Content-Language: en-GB
To: Alejandro Vallejo <alejandro.vallejo@cloud.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>, Henry Wang <Henry.Wang@arm.com>
References: <20231012172601.22600-1-alejandro.vallejo@cloud.com>
 <20231012172601.22600-2-alejandro.vallejo@cloud.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: <20231012172601.22600-2-alejandro.vallejo@cloud.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 13/10/2023 1:26 am, Alejandro Vallejo wrote:
> It slightly simplifies the code that uses them at no real cost because the
> code is very rarely executed. This makes it harder to confuse zen uarches
> due to missing or mistaken family checks.

I'm afraid I disagree.

It's bogus to do a family check without a vendor check.  By making this
change, you're separating (spatially in code, and therefore cognitively)
the two checks that it's important to be able to cross-check.

> diff --git a/xen/arch/x86/include/asm/amd.h b/xen/arch/x86/include/asm/amd.h
> index d862cb7972..5a40bcc2ba 100644
> --- a/xen/arch/x86/include/asm/amd.h
> +++ b/xen/arch/x86/include/asm/amd.h
> @@ -145,11 +145,12 @@
>   * 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.
> + * The caller is required to perform the appropriate vendor check first.
>   */
> -#define is_zen1_uarch() (!boot_cpu_has(X86_FEATURE_AMD_STIBP))
> -#define is_zen2_uarch()   boot_cpu_has(X86_FEATURE_AMD_STIBP)
> +#define is_zen1_uarch() ((boot_cpu_data.x86 == 0x17 || boot_cpu_data.x86 == 0x18) && \
> +                         !boot_cpu_has(X86_FEATURE_AMD_STIBP))
> +#define is_zen2_uarch() (boot_cpu_data.x86 == 0x17 && \
> +                         boot_cpu_has(X86_FEATURE_AMD_STIBP))

What leads you to believe there aren't Hygon Zen2's ?

~Andrew


From xen-devel-bounces@lists.xenproject.org Fri Oct 13 02:28:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 02:28:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616241.958113 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qr7um-0007Gc-86; Fri, 13 Oct 2023 02:28:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616241.958113; Fri, 13 Oct 2023 02:28: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 1qr7um-0007GV-59; Fri, 13 Oct 2023 02:28:36 +0000
Received: by outflank-mailman (input) for mailman id 616241;
 Fri, 13 Oct 2023 02:28: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=pfqf=F3=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qr7uk-0007GJ-BY
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 02:28:34 +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 331ab322-6970-11ee-9b0e-b553b5be7939;
 Fri, 13 Oct 2023 04:28:31 +0200 (CEST)
Received: by mail-lj1-x232.google.com with SMTP id
 38308e7fff4ca-2b9c907bc68so19129151fa.2
 for <xen-devel@lists.xenproject.org>; Thu, 12 Oct 2023 19:28:31 -0700 (PDT)
Received: from [10.157.20.243] ([103.14.252.248])
 by smtp.gmail.com with ESMTPSA id
 n14-20020a62e50e000000b0069319bfed42sm12353803pff.79.2023.10.12.19.28.27
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Thu, 12 Oct 2023 19:28: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: 331ab322-6970-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1697164110; x=1697768910; darn=lists.xenproject.org;
        h=content-transfer-encoding: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=pfJSEG9QOxLLhw2Fw8f8eA9hg3LTBJZJUHREXWYPV4c=;
        b=WOmycWcfoJYR6o26/zZkfxu6niiMbBhx+7z4fgcuh1CpXsm3xwiUkfpACec1hnc9uf
         xVgGVzBbUjn3DSWvGkrTtyZBT2T3ZA0jw9FyYJ+kxFfnOQbd6iBX5czDBGLBfcp3wDSW
         o95YondD0QFMQgFa838IMjEx84AoaXer4C2Jk=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697164110; x=1697768910;
        h=content-transfer-encoding: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=pfJSEG9QOxLLhw2Fw8f8eA9hg3LTBJZJUHREXWYPV4c=;
        b=WQQekFWeLG+ZXQvN++u8zPxN4m/bEG7T+TzGP6EOwMSAwujiPc13xOxvcWm7Uk4y9L
         8mwXFO9cYc3OmQNTGpAtn2pQJ04Z7veTQdJNEwa0tY3cXGxOl/gdguQhgFNtN17gdakw
         3iNmdztE2YhQvpd7X741qTmHzwlKGMHRVe6FG/ExlhiuqOaASixCvu/P4PBifOlY+2zF
         FaIdw6WaQTcsSLi0ORAVb1IW0XdWIKy3Wy3gPDGJPecxWXXkDzhRoduQfvziUBP3+QpT
         mUL0UubMyaj1y6W0PqQ3F1Xcf56uN+odeYa2RvYEj8Sb3m9/go3GUXx/2l3tEaQk7SAQ
         oHog==
X-Gm-Message-State: AOJu0YxrdzSsF4u2kw2xV1n41yuYm1SMGW7rxX4v/bjcyD1be1gY0kbc
	LvMMSyFs6oO7ywEGlqNdjYs8lg==
X-Google-Smtp-Source: AGHT+IFgbpC529yGs6bQ8oACsgPE6tkOAGjZHebiPpDqRPPxGiku11ijCdu8ghScphAc+HoitxKpsA==
X-Received: by 2002:a2e:2e15:0:b0:2bc:f439:b5a5 with SMTP id u21-20020a2e2e15000000b002bcf439b5a5mr25152145lju.14.1697164110490;
        Thu, 12 Oct 2023 19:28:30 -0700 (PDT)
Message-ID: <50c3c5da-42d2-4b1b-89b7-d57d28ebb764@citrix.com>
Date: Fri, 13 Oct 2023 10:28:25 +0800
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [for-4.18][PATCH 2/2] x86/amd: Prevent potentially fetching wrong
 instruction bytes on Zen4
Content-Language: en-GB
To: Alejandro Vallejo <alejandro.vallejo@cloud.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>, Henry Wang <Henry.Wang@arm.com>
References: <20231012172601.22600-1-alejandro.vallejo@cloud.com>
 <20231012172601.22600-3-alejandro.vallejo@cloud.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: <20231012172601.22600-3-alejandro.vallejo@cloud.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 13/10/2023 1:26 am, Alejandro Vallejo wrote:
> If Zen4 runs with SMT and without STIBP, then it may corrupt its own code
> stream. This is erratum #1485 in the AMD specs.

I'm afraid this description isn't fully accurate, and I can't elaborate
any further at this juncture.

Just say "address AMD erratum #1485".  When the revision guides do get
published, things will become clearer.

> diff --git a/xen/arch/x86/cpu/amd.c b/xen/arch/x86/cpu/amd.c
> index 22aa8c0085..2426e4cf15 100644
> --- a/xen/arch/x86/cpu/amd.c
> +++ b/xen/arch/x86/cpu/amd.c
> @@ -1166,6 +1166,17 @@ static void cf_check init_amd(struct cpuinfo_x86 *c)
>  	if (c->x86 == 0x10)
>  		__clear_bit(X86_FEATURE_MONITOR, c->x86_capability);
>  
> +	/*
> +	 * Erratum #1485: Outdated microcode on Zen4 may cause corruption
> +	 * in the code stream if SMT is enabled and STIBP is not. The fix
> +	 * is cheap, so it's applied irrespective of the loaded microcode.

Again, unfortunately not accurate.  Just link to the erratum here.

> +	 */
> +	if (!cpu_has_hypervisor && is_zen4_uarch()) {
> +		rdmsrl(MSR_AMD64_BP_CFG, value);
> +		wrmsrl(MSR_AMD64_BP_CFG,
> +		       value | AMD64_BP_CFG_SHARED_BTB_FIX);
> +	}
> +
>  	if (!cpu_has_amd_erratum(c, AMD_ERRATUM_121))
>  		opt_allow_unsafe = 1;
>  	else if (opt_allow_unsafe < 0)
> diff --git a/xen/arch/x86/include/asm/amd.h b/xen/arch/x86/include/asm/amd.h
> index 5a40bcc2ba..7d18f7c66b 100644
> --- a/xen/arch/x86/include/asm/amd.h
> +++ b/xen/arch/x86/include/asm/amd.h
> @@ -145,12 +145,20 @@
>   * Hygon (Fam18h) but without simple model number rules.  Instead, use STIBP
>   * as a heuristic that distinguishes the two.
>   *
> + * Zen3 and Zen4 are easier to spot by model number, but it's still not a
> + * single range. We use AutoIBRS to to discriminate instead, as that's a
> + * Zen4-specific feature.

I'd strongly advise not passing commentary on whether Zen3/4 are easier
or harder to spot.  Just discuss the technical aspect.

> + *
>   * The caller is required to perform the appropriate vendor check first.
>   */
>  #define is_zen1_uarch() ((boot_cpu_data.x86 == 0x17 || boot_cpu_data.x86 == 0x18) && \
>                           !boot_cpu_has(X86_FEATURE_AMD_STIBP))
>  #define is_zen2_uarch() (boot_cpu_data.x86 == 0x17 && \
>                           boot_cpu_has(X86_FEATURE_AMD_STIBP))
> +#define is_zen3_uarch() (boot_cpu_data.x86 == 0x19 && \
> +                         !boot_cpu_has(X86_FEATURE_AUTO_IBRS))
> +#define is_zen4_uarch() (boot_cpu_data.x86 == 0x19 && \
> +                         boot_cpu_has(X86_FEATURE_AUTO_IBRS))
>  
>  struct cpuinfo_x86;
>  int cpu_has_amd_erratum(const struct cpuinfo_x86 *, int, ...);
> diff --git a/xen/arch/x86/include/asm/msr-index.h b/xen/arch/x86/include/asm/msr-index.h
> index 11ffed543a..4437e8a63e 100644
> --- a/xen/arch/x86/include/asm/msr-index.h
> +++ b/xen/arch/x86/include/asm/msr-index.h
> @@ -403,6 +403,8 @@
>  #define MSR_AMD64_DE_CFG		0xc0011029
>  #define AMD64_DE_CFG_LFENCE_SERIALISE	(_AC(1, ULL) << 1)
>  #define MSR_AMD64_EX_CFG		0xc001102c
> +#define MSR_AMD64_BP_CFG		0xc001102e
> +#define AMD64_BP_CFG_SHARED_BTB_FIX	(_AC(1, ULL) << 5)

MSR_AMD64_BP_CFG is fine to have in msr-index.h (it's consistent across
generations), but SHARED_BTB_FIX is not.  It's model specific, so keep
it local to the errata workaround.

LFENCE_SERIALISE was special.  It happened to have always been
consistent, and was retroactively declared to be architectural.

~Andrew


From xen-devel-bounces@lists.xenproject.org Fri Oct 13 05:12:53 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 05:12:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616259.958122 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrATU-0004Hn-M3; Fri, 13 Oct 2023 05:12:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616259.958122; Fri, 13 Oct 2023 05:12: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 1qrATU-0004Hg-JV; Fri, 13 Oct 2023 05:12:36 +0000
Received: by outflank-mailman (input) for mailman id 616259;
 Fri, 13 Oct 2023 05:12: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 1qrATS-0004HU-RS; Fri, 13 Oct 2023 05:12: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 1qrATS-00057K-NT; Fri, 13 Oct 2023 05:12: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 1qrATS-0007Ld-Ab; Fri, 13 Oct 2023 05:12:34 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qrATS-0007sU-A4; Fri, 13 Oct 2023 05:12: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=vSaChF6yWqUyfD8tzj/J8e1nPQqWH03HUIg+Nl1BQaA=; b=gVN4U/lXbnB9AQ9qhjCoLnlidG
	hvvCBAqU4BgxLSN0QjPCLygA8VTxm9E4g7oz4p4106y87TGXmtayql7ZMoBxZUX06xKfUJDj3Z3vy
	9KVbapNXIlndlW8Hn0KcL0iVxE5otex/fhBsfVwWtdLH9UPCc4zfbFbe5zdLcgkI1J7c=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183360-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 183360: tolerable FAIL
X-Osstest-Failures:
    xen-unstable:test-amd64-amd64-migrupgrade:debian-fixup/dst_host:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl:xen-boot:fail:heisenbug
    xen-unstable:test-amd64-i386-examine-bios:xen-install: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-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-qemut-win7-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-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check: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-amd64-libvirt-qemuu-debianhvm-amd64-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-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-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: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-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-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-arndale:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-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-rtds:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds: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
    xen-unstable:test-arm64-arm64-libvirt-raw:hosts-allocate:starved:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:hosts-allocate:starved:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:hosts-allocate:starved:nonblocking
    xen-unstable:test-arm64-arm64-xl:hosts-allocate:starved:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:hosts-allocate:starved:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:hosts-allocate:starved:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:hosts-allocate:starved:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:hosts-allocate:starved:nonblocking
X-Osstest-Versions-This:
    xen=dc9d9aa62ddeb14abd5672690d30789829f58f7e
X-Osstest-Versions-That:
    xen=dc9d9aa62ddeb14abd5672690d30789829f58f7e
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 13 Oct 2023 05:12:34 +0000

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

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-amd64-amd64-migrupgrade 21 debian-fixup/dst_host fail in 183347 pass in 183360
 test-armhf-armhf-xl           8 xen-boot         fail in 183347 pass in 183360
 test-amd64-i386-examine-bios  6 xen-install                fail pass in 183347

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183347
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183347
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 183347
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183347
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183347
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183347
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 183347
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183347
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183347
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 183347
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 183347
 test-amd64-amd64-xl-qemuu-win7-amd64 12 windows-install       fail like 183347
 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-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-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-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-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 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-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-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-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-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-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-arm64-arm64-libvirt-raw  3 hosts-allocate           starved in 183347 n/a
 test-arm64-arm64-xl-credit2   3 hosts-allocate           starved in 183347 n/a
 test-arm64-arm64-xl-vhd       3 hosts-allocate           starved in 183347 n/a
 test-arm64-arm64-xl           3 hosts-allocate           starved in 183347 n/a
 test-arm64-arm64-xl-xsm       3 hosts-allocate           starved in 183347 n/a
 test-arm64-arm64-xl-thunderx  3 hosts-allocate           starved in 183347 n/a
 test-arm64-arm64-xl-credit1   3 hosts-allocate           starved in 183347 n/a
 test-arm64-arm64-libvirt-xsm  3 hosts-allocate           starved in 183347 n/a

version targeted for testing:
 xen                  dc9d9aa62ddeb14abd5672690d30789829f58f7e
baseline version:
 xen                  dc9d9aa62ddeb14abd5672690d30789829f58f7e

Last test of basis   183360  2023-10-12 14:10:35 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                                         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 Oct 13 06:32:12 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 06:32:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616266.958132 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrBiI-0005Ww-9h; Fri, 13 Oct 2023 06:31:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616266.958132; Fri, 13 Oct 2023 06: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 1qrBiI-0005Wp-7A; Fri, 13 Oct 2023 06:31:58 +0000
Received: by outflank-mailman (input) for mailman id 616266;
 Fri, 13 Oct 2023 06: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=U36v=F3=suse.com=jgross@srs-se1.protection.inumbo.net>)
 id 1qrBiG-0005Wj-JU
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 06:31:56 +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 32c43906-6992-11ee-9b0e-b553b5be7939;
 Fri, 13 Oct 2023 08:31:53 +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 AD04E1FD80;
 Fri, 13 Oct 2023 06:31:52 +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 4F754138EF;
 Fri, 13 Oct 2023 06:31:52 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap2.suse-dmz.suse.de with ESMTPSA id gFAtEVjkKGVFOwAAMHmgww
 (envelope-from <jgross@suse.com>); Fri, 13 Oct 2023 06:31: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: 32c43906-6992-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1697178712; 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=qvZQFgoKrbb5VgyvobfwQt4FBUVtHWSsQXGeazGg8f0=;
	b=R1xrR5TKLPpzltXKa63bfenEEmrtLgu8lsX5MufajH0yhqoi/fy0ywr1dohM+LqPIbQM2g
	ywsh90U6e/+Z1OmRSwq+Wqpat9BJ+37RfDkBzTgPZvx4OtKLdX/9Pq3jAlXr9ndb1OaPwN
	i+0qLTccK1S/owThdhxZfAL+OlxL4lw=
Message-ID: <502c7fb1-eead-4e88-971e-2970fe7264ee@suse.com>
Date: Fri, 13 Oct 2023 08:31:51 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: Xen 4.18 release: Reminder about code freeze
To: Stefano Stabellini <sstabellini@kernel.org>,
 George Dunlap <george.dunlap@cloud.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>, 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>, =?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>
 <a31ce6cb-6234-5e7f-5cd4-ed190f029811@citrix.com>
 <alpine.DEB.2.22.394.2309271658500.1403502@ubuntu-linux-20-04-desktop>
 <CA+zSX=ZbeUFrfAUJShooJFJ+d89f4xdXfJJ9HoJKRh4UStkTFQ@mail.gmail.com>
 <alpine.DEB.2.22.394.2310121535580.3431292@ubuntu-linux-20-04-desktop>
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: <alpine.DEB.2.22.394.2310121535580.3431292@ubuntu-linux-20-04-desktop>
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature";
 boundary="------------yGzAdyBAc4LEA8cq5ZbNTSAR"
Authentication-Results: smtp-out2.suse.de;
	none
X-Spam-Level: 
X-Spam-Score: -7.99
X-Spamd-Result: default: False [-7.99 / 50.00];
	 ARC_NA(0.00)[];
	 TO_DN_EQ_ADDR_SOME(0.00)[];
	 XM_UA_NO_VERSION(0.01)[];
	 FROM_HAS_DN(0.00)[];
	 TO_DN_SOME(0.00)[];
	 TO_MATCH_ENVRCPT_ALL(0.00)[];
	 BAYES_HAM(-3.00)[100.00%];
	 MIME_GOOD(-0.20)[multipart/signed,multipart/mixed,text/plain];
	 HAS_ATTACHMENT(0.00)[];
	 RCVD_VIA_SMTP_AUTH(0.00)[];
	 MIME_BASE64_TEXT_BOGUS(1.00)[];
	 NEURAL_HAM_LONG(-3.00)[-1.000];
	 DKIM_SIGNED(0.00)[suse.com:s=susede1];
	 NEURAL_HAM_SHORT(-1.00)[-1.000];
	 MIME_BASE64_TEXT(0.10)[];
	 RCPT_COUNT_SEVEN(0.00)[11];
	 SIGNED_PGP(-2.00)[];
	 FROM_EQ_ENVFROM(0.00)[];
	 MIME_TRACE(0.00)[0:+,1:+,2:+,3:+,4:~,5:~];
	 RCVD_COUNT_TWO(0.00)[2];
	 RCVD_TLS_ALL(0.00)[];
	 MID_RHS_MATCH_FROM(0.00)[];
	 MIME_UNKNOWN(0.10)[application/pgp-keys]
X-Spam-Flag: NO

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--------------yGzAdyBAc4LEA8cq5ZbNTSAR
Content-Type: multipart/mixed; boundary="------------Z1588f711IEdLoOwc0KvyekV";
 protected-headers="v1"
From: Juergen Gross <jgross@suse.com>
To: Stefano Stabellini <sstabellini@kernel.org>,
 George Dunlap <george.dunlap@cloud.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>, 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>, =?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>
Message-ID: <502c7fb1-eead-4e88-971e-2970fe7264ee@suse.com>
Subject: Re: Xen 4.18 release: Reminder about code freeze
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>
 <alpine.DEB.2.22.394.2309271658500.1403502@ubuntu-linux-20-04-desktop>
 <CA+zSX=ZbeUFrfAUJShooJFJ+d89f4xdXfJJ9HoJKRh4UStkTFQ@mail.gmail.com>
 <alpine.DEB.2.22.394.2310121535580.3431292@ubuntu-linux-20-04-desktop>
In-Reply-To: <alpine.DEB.2.22.394.2310121535580.3431292@ubuntu-linux-20-04-desktop>

--------------Z1588f711IEdLoOwc0KvyekV
Content-Type: multipart/mixed; boundary="------------VKKKo5mFcoUzrrWrqSdPPF70"

--------------VKKKo5mFcoUzrrWrqSdPPF70
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: base64

T24gMTMuMTAuMjMgMDA6MzYsIFN0ZWZhbm8gU3RhYmVsbGluaSB3cm90ZToNCj4gT24gVGh1
LCAxMiBPY3QgMjAyMywgR2VvcmdlIER1bmxhcCB3cm90ZToNCj4+Pj4gU3RvcCB0aW5rZXJp
bmcgaW4gdGhlIGhvcGUgdGhhdCBpdCBoaWRlcyB0aGUgcHJvYmxlbS4gIFlvdSdyZSBvbmx5
DQo+Pj4+IG1ha2luZyBpdCBoYXJkZXIgdG8gZml4IHByb3Blcmx5Lg0KPj4+DQo+Pj4gTWFr
aW5nIGl0IGhhcmRlciB0byBmaXggcHJvcGVybHkgd291bGQgYmUgYSB2YWxpZCByZWFzb24g
bm90IHRvIGNvbW1pdA0KPj4+IHRoZSAobWF5YmUgcGFydGlhbCkgZml4LiBCdXQgbG9va2lu
ZyBhdCB0aGUgZml4IGFnYWluOg0KPj4+DQo+Pj4gZGlmZiAtLWdpdCBhL3Rvb2xzL3hlbnN0
b3JlZC9kb21haW4uYyBiL3Rvb2xzL3hlbnN0b3JlZC9kb21haW4uYw0KPj4+IGluZGV4IGE2
Y2QxOTlmZGMuLjljZDY2NzgwMTUgMTAwNjQ0DQo+Pj4gLS0tIGEvdG9vbHMveGVuc3RvcmVk
L2RvbWFpbi5jDQo+Pj4gKysrIGIvdG9vbHMveGVuc3RvcmVkL2RvbWFpbi5jDQo+Pj4gQEAg
LTk4OSw2ICs5ODksNyBAQCBzdGF0aWMgc3RydWN0IGRvbWFpbiAqaW50cm9kdWNlX2RvbWFp
bihjb25zdCB2b2lkICpjdHgsDQo+Pj4gICAgICAgICAgICAgICAgICB0YWxsb2Nfc3RlYWwo
ZG9tYWluLT5jb25uLCBkb21haW4pOw0KPj4+DQo+Pj4gICAgICAgICAgICAgICAgICBpZiAo
IXJlc3RvcmUpIHsNCj4+PiArICAgICAgICAgICAgICAgICAgICAgICBkb21haW5fY29ubl9y
ZXNldChkb21haW4pOw0KPj4+ICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBOb3RpZnkg
dGhlIGRvbWFpbiB0aGF0IHhlbnN0b3JlIGlzIGF2YWlsYWJsZSAqLw0KPj4+ICAgICAgICAg
ICAgICAgICAgICAgICAgICBpbnRlcmZhY2UtPmNvbm5lY3Rpb24gPSBYRU5TVE9SRV9DT05O
RUNURUQ7DQo+Pj4gICAgICAgICAgICAgICAgICAgICAgICAgIHhlbmV2dGNobl9ub3RpZnko
eGNlX2hhbmRsZSwgZG9tYWluLT5wb3J0KTsNCj4+PiBAQCAtMTAzMSw4ICsxMDMyLDYgQEAg
aW50IGRvX2ludHJvZHVjZShjb25zdCB2b2lkICpjdHgsIHN0cnVjdCBjb25uZWN0aW9uICpj
b25uLA0KPj4+ICAgICAgICAgIGlmICghZG9tYWluKQ0KPj4+ICAgICAgICAgICAgICAgICAg
cmV0dXJuIGVycm5vOw0KPj4+DQo+Pj4gLSAgICAgICBkb21haW5fY29ubl9yZXNldChkb21h
aW4pOw0KPj4+IC0NCj4+PiAgICAgICAgICBzZW5kX2Fjayhjb25uLCBYU19JTlRST0RVQ0Up
Ow0KPj4+DQo+Pj4gSXQgaXMgYSAxLWxpbmUgbW92ZW1lbnQuIFRleHR1YWxseSBzbWFsbC4g
RWFzeSB0byB1bmRlcnN0YW5kIGFuZCB0bw0KPj4+IHJldmVydC4gSXQgZG9lc24ndCBzZWVt
IHRvIGJlIG1ha2luZyB0aGluZ3MgaGFyZGVyIHRvIGZpeD8gV2UgY291bGQNCj4+PiByZXZl
cnQgaXQgYW55IHRpbWUgaWYgYSBiZXR0ZXIgZml4IGlzIG9mZmVyZWQuDQo+Pj4NCj4+PiBN
YXliZSB3ZSBjb3VsZCBoYXZlIGEgWFhYIG5vdGUgaW4gdGhlIGNvbW1pdCBtZXNzYWdlIG9y
IGluLWNvZGUNCj4+PiBjb21tZW50Pw0KPj4NCj4+IEl0IG1vdmVzIGEgbGluZSBmcm9tIG9u
ZSBmdW5jdGlvbiAoZG9fZG9tYWluX2ludHJvZHVjZSgpKSBpbnRvIGENCj4+IGNvbXBsZXRl
bHkgZGlmZmVyZW50IGZ1bmN0aW9uIChpbnRyb2R1Y2VfZG9tYWluKCkpLCBuZXN0ZWQgaW5z
aWRlIHR3bw0KPj4gaWYoKSBzdGF0ZW1lbnRzOyB3aXRoIG5vIGFuYWx5c2lzIG9uIGhvdyB0
aGUgY2hhbmdlIHdpbGwgaW1wYWN0DQo+PiB0aGluZ3MuDQo+IA0KPiBJIGFtIG5vdCB0aGUg
b3JpZ2luYWwgYXV0aG9yIG9mIHRoZSBwYXRjaCwgYW5kIEkgYW0gbm90IHRoZSBtYWludGFp
bmVyDQo+IG9mIHRoZSBjb2RlLCBzbyBJIGRvbid0IGZlZWwgSSBoYXZlIHRoZSBxdWFsaWZp
Y2F0aW9ucyB0byBnaXZlIHlvdSB0aGUNCj4gYW5zd2VycyB5b3UgYXJlIHNlZWtpbmcuIEp1
bGllbiBhcyBhdXRob3Igb2YgdGhlIHBhdGNoIGFuZCB4ZW5zdG9yZQ0KPiByZXZpZXdlciBt
aWdodCBiZSBpbiBhIGJldHRlciBwb3NpdGlvbiB0byBhbnN3ZXIuIE9yIEp1ZXJnZW4gYXMg
eGVuc3RvcmUNCj4gbWFpbnRhaW5lci4NCg0KSSBkaWQgYWxyZWFkeSBwcm92aWRlIHNvbWUg
ZmVlZGJhY2sgd2hlbiB0aGUgcGF0Y2ggd2FzIHNlbnQgdGhlIGZpcnN0IHRpbWUNCmluIE1h
eS4NCg0KPiANCj4gIEZyb20gd2hhdCBJIGNhbiBzZWUgdGhlIHBhdGNoIGlzIGNvcnJlY3Qu
DQoNCllvdSByZW1vdmVkIHRoZSBkb20wIHNwZWNpYWwgY2FzaW5nIGFnYWluLCB3aGljaCBJ
IGFza2VkIGZvciB0byBhZGQgYmFjaw0KdGhlbi4gQW5kIEkgc3RpbGwgdGhpbmsgdGhlcmUg
YXJlIG1pc3NpbmcgYmFycmllcnMgKGF0IGxlYXN0IGZvciBBcm0pLg0KDQo+IA0KPiBXZSBh
cmUgcmVtb3ZpbmcgYSBjYWxsIHRvIGRvbWFpbl9jb25uX3Jlc2V0IGluIGRvX2ludHJvZHVj
ZS4NCj4gV2UgYXJlIGFkZGluZyBhIGNhbGwgdG8gZG9tYWluX2Nvbm5fcmVzZXQgaW4gaW50
cm9kdWNlX2RvbWFpbiwgd2hpY2ggaXMNCj4gY2FsbGVkIHJpZ2h0IGJlZm9yZSBpbiBpbnRy
b2R1Y2VfZG9tYWluLiBZZXMgdGhlcmUgYXJlIDIgaWYgc3RhdGVtZW50cw0KPiBidXQgdGhl
IGRvbWFpbl9jb25uX3Jlc2V0IGlzIGFkZGVkIGluIHRoZSByaWdodCBsb2NhdGlvbjogdGhl
DQo+IG5vbi1hbHJlYWR5LWludHJvZHVjZWQgbm9uLXJlc3RvcmUgY29kZSBwYXRoLg0KPiAN
Cj4gDQo+PiBBcmUgdGhlcmUgYW55IHBhdGhzIHRocm91Z2ggZG9fZG9tYWluX2ludHJvZHVj
ZSgpIHRoYXQgbm93ICp3b24ndCogZ2V0DQo+PiBhIGRvbWFpbl9jb25uX3Jlc2V0KCkgY2Fs
bD8gIElzIHRoYXQgT0s/DQo+IA0KPiBZZXMsIHRoZSBhbHJlYWR5LWludHJvZHVjZWQgYW5k
IHRoZSByZXN0b3JlIGNvZGUgcGF0aHMuIFRoZSBvcGVyYXRpb25zIGluDQo+IHRoZSBhbHJl
YWR5LWludHJvZHVjZWQgb3IgdGhlIHJlc3RvcmUgY29kZSBwYXRocyBzZWVtIHNpbXBsZSBl
bm91Z2ggbm90DQo+IHRvIHJlcXVpcmUgYSBkb21haW5fY29ubl9yZXNldC4gSnVsaWVuIGFu
ZCBKdWVyZ2VuIHNob3VsZCBjb25maXJtLg0KPiANCj4gDQo+PiBJcyBpbnRyb2R1Y2VfZG9t
YWluKCkgY2FsbGVkIGluIG90aGVyIHBsYWNlcz8gIFdpbGwgdGhvc2UgcGxhY2VzIG5vdw0K
Pj4gZ2V0IGV4dHJhIGRvbWFpbl9jb25uX3Jlc2V0KCkgY2FsbHMgdGhleSB3ZXJlbid0IGV4
cGVjdGluZz8gIElzIHRoYXQNCj4+IE9LPw0KPiANCj4gaW50cm9kdWNlX2RvbWFpbiBpcyBj
YWxsZWQgYnkgZG9tMF9pbml0LCBidXQgSSBhbSBndWVzc2luZyB0aGF0IGRvbTAgaXMNCj4g
YWxyZWFkeS1pbnRyb2R1Y2VkIHNvIGl0IHdvdWxkbid0IGdldCBhbiBleHRyYSBkb21haW5f
Y29ubl9yZXNldC4gSnVsaWVuDQo+IGFuZCBKdXJnZW4gc2hvdWxkIGNvbmZpcm0uDQoNCkkg
ZG9uJ3QgdGhpbmsgdGhpcyBpcyBjb3JyZWN0LiBkb20wIHdpbGwgb25seSBiZSBpbnRyb2R1
Y2VkIHZpYSBkb20wX2luaXQoKS4NCg0KDQpKdWVyZ2VuDQo=
--------------VKKKo5mFcoUzrrWrqSdPPF70
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-----

--------------VKKKo5mFcoUzrrWrqSdPPF70--

--------------Z1588f711IEdLoOwc0KvyekV--

--------------yGzAdyBAc4LEA8cq5ZbNTSAR
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/Ey8FAmUo5FcFAwAAAAAACgkQsN6d1ii/Ey+G
agf+K/mLGHpWiANGnO0yv5m2tYVV4WcVdhZtLaKBSm/CJ+w8lCgGz07Gcu/xP8gEugT/dqX9jwVL
WevfaS9x3+/RalSJZENGeBPd98BErkz+Eb/+tyAmELs6WQAx7UBpteLl9fIoxLJLqwtJP5TsIxhM
R9gXV6namZprRVu2ny+mWOU3roZbUYZ99cOGnXbS599nfVfyIiw8i1QfOKpEGSnf/SnlMKbSlZmi
TrU+sLLGB1OOyMQDQJaZwqP+6+RBDKagrYch7lTzaurpiUfJ+SQnKoK6YUqYUNotjd1yV86xD36j
KMOl+MeZ4+oFOzUaTf70DsJQYmM6Zz9NLqmJNZ1FTA==
=3+Yh
-----END PGP SIGNATURE-----

--------------yGzAdyBAc4LEA8cq5ZbNTSAR--


From xen-devel-bounces@lists.xenproject.org Fri Oct 13 08:26:17 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 08:26:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616281.958142 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrDUi-000401-2v; Fri, 13 Oct 2023 08:26:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616281.958142; Fri, 13 Oct 2023 08: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 1qrDUi-0003zu-0H; Fri, 13 Oct 2023 08:26:04 +0000
Received: by outflank-mailman (input) for mailman id 616281;
 Fri, 13 Oct 2023 08:26: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 1qrDUg-0003zo-A9
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 08:26: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 1qrDUf-0002A1-K8; Fri, 13 Oct 2023 08:26:01 +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 1qrDUf-0001Z6-AK; Fri, 13 Oct 2023 08:26: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=mciXo5VSHN4Y2AwqDeq6JGM6fOrgiK8JupZgrwn+T6E=; b=o15wgXsl5EKVaTM0AW6Ehg9PuD
	EF4yyY+48ro7vKwqVDGFGMyO8rAK5A+h0yzE3H1v5JzqWZ6e90ZXL0r9+4/193GEuSH5dQe3jmrJN
	puADxfpB+CiqHr5M9gyYoUA5XHTby5r01ma5BNU+6n8FFYQo6zrgM8Cj94ZZQF/w/5PU=;
Message-ID: <f62ad310-0f9a-4b28-9592-023d6a98c0dd@xen.org>
Date: Fri, 13 Oct 2023 09:25:58 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN PATCH][for-next][for-4.19 v2 1/8] xen/include: add macro
 LOWEST_BIT
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,
 andrew.cooper3@citrix.com, roger.pau@citrix.com,
 Simone Ballarin <simone.ballarin@bugseng.com>,
 Doug Goldstein <cardoe@cardoe.com>, George Dunlap
 <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>
References: <cover.1697123806.git.nicola.vetrini@bugseng.com>
 <bb0ba44f8a3944c22a1c7cf19196c7060e8adb4b.1697123806.git.nicola.vetrini@bugseng.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <bb0ba44f8a3944c22a1c7cf19196c7060e8adb4b.1697123806.git.nicola.vetrini@bugseng.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi Nicola,

On 12/10/2023 16:28, Nicola Vetrini wrote:
> The purpose of this macro is to encapsulate the well-known expression
> 'x & -x', that in 2's complement architectures on unsigned integers will
> give 2^ffs(x), where ffs(x) is the position of the lowest set bit in x.

In the commit message it is clear that the macro will return the lowest 
set bit. But...

> 
> A deviation for ECLAIR is also introduced.
> 
> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
> ---
> Changes in v2:
> - rename to LOWEST_BIT
> ---
>   automation/eclair_analysis/ECLAIR/deviations.ecl | 6 ++++++
>   xen/include/xen/macros.h                         | 6 ++++--
>   2 files changed, 10 insertions(+), 2 deletions(-)
> 
> diff --git a/automation/eclair_analysis/ECLAIR/deviations.ecl b/automation/eclair_analysis/ECLAIR/deviations.ecl
> index d8170106b449..b8e1155ee49d 100644
> --- a/automation/eclair_analysis/ECLAIR/deviations.ecl
> +++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
> @@ -274,6 +274,12 @@ still non-negative."
>   -config=MC3R1.R10.1,etypes+={safe, "stmt(operator(logical)||node(conditional_operator||binary_conditional_operator))", "dst_type(ebool||boolean)"}
>   -doc_end
> 
> +-doc_begin="The macro LOWEST_BIT encapsulates a well-known pattern to obtain the value
> +2^ffs(x) for unsigned integers on two's complement architectures
> +(all the architectures supported by Xen satisfy this requirement)."
> +-config=MC3R1.R10.1,reports+={safe, "any_area(any_loc(any_exp(macro(^LOWEST_BIT$))))"}
> +-doc_end
> +
>   ### Set 3 ###
> 
>   #
> diff --git a/xen/include/xen/macros.h b/xen/include/xen/macros.h
> index d0caae7db298..af47179d1056 100644
> --- a/xen/include/xen/macros.h
> +++ b/xen/include/xen/macros.h
> @@ -8,8 +8,10 @@
>   #define DIV_ROUND(n, d) (((n) + (d) / 2) / (d))
>   #define DIV_ROUND_UP(n, d) (((n) + (d) - 1) / (d))
> 
> -#define MASK_EXTR(v, m) (((v) & (m)) / ((m) & -(m)))
> -#define MASK_INSR(v, m) (((v) * ((m) & -(m))) & (m))
> +#define LOWEST_BIT(x) ((x) & -(x))

... this is not reflected in the name of the macro. So it is not obvious 
if it will return the lowest bit set or clear.

Can you at least add a comment on top explaining what it returns? 
Something like:

/* Return the lowest bit set */

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Fri Oct 13 08:26:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 08:26:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616285.958153 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrDVY-0004Rr-BX; Fri, 13 Oct 2023 08:26:56 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616285.958153; Fri, 13 Oct 2023 08:26: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 1qrDVY-0004Rk-8b; Fri, 13 Oct 2023 08:26:56 +0000
Received: by outflank-mailman (input) for mailman id 616285;
 Fri, 13 Oct 2023 08:26: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=RqNf=F3=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qrDVW-0004RX-Tg
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 08:26:54 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 426f38ee-69a2-11ee-9b0e-b553b5be7939;
 Fri, 13 Oct 2023 10:26:51 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id 2FB894EE073A;
 Fri, 13 Oct 2023 10:26: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: 426f38ee-69a2-11ee-9b0e-b553b5be7939
MIME-Version: 1.0
Date: Fri, 13 Oct 2023 10:26:51 +0200
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: Stefano Stabellini <sstabellini@kernel.org>
Cc: Julien Grall <julien@xen.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>, Wei Liu
 <wl@xen.org>, Henry.Wang@arm.com
Subject: Re: [XEN PATCH][for-4.19 v2 2/2] docs/misra: add deviations.rst to
 document additional deviations.
In-Reply-To: <alpine.DEB.2.22.394.2310121606110.3431292@ubuntu-linux-20-04-desktop>
References: <cover.1696865051.git.nicola.vetrini@bugseng.com>
 <ccda90b6be8f6977cff14ae65749ffc7fa429c3c.1696865051.git.nicola.vetrini@bugseng.com>
 <alpine.DEB.2.22.394.2310091811190.3431292@ubuntu-linux-20-04-desktop>
 <a5635fc5e51518c205d776ac8a9600ba@bugseng.com>
 <alpine.DEB.2.22.394.2310101524080.3431292@ubuntu-linux-20-04-desktop>
 <781c9b5c-1301-4a23-8c13-fba62c844b03@xen.org>
 <186af6b6c1b34fc9088a5fb226ff2482@bugseng.com>
 <9fc7241a16ca8b1db9bf788d4125fe16@bugseng.com>
 <alpine.DEB.2.22.394.2310121606110.3431292@ubuntu-linux-20-04-desktop>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <77b4aa52476d9a1984370f561689db49@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 13/10/2023 01:14, Stefano Stabellini wrote:
> On Wed, 11 Oct 2023, Nicola Vetrini wrote:
>> On 11/10/2023 17:00, Nicola Vetrini wrote:
>> > > > > > > +
>> > > > > > > +   * - R2.1
>> > > > > > > +     - The compiler implementation guarantees that the
>> > > > > > > unreachable code
>> > > > > > > is
>> > > > > > > +       removed. Constant expressions and unreachable branches of
>> > > > > > > if and
>> > > > > > > switch
>> > > > > > > +       statements are expected.
>> > > > > > > +     - Tagged as `safe` for ECLAIR.
>> > > > > > > +
>> > > > > > > +   * - R2.1
>> > > > > > > +     - Some functions are intended not to be referenced.
>> > > > > > > +     - Tagged as `deliberate` for ECLAIR.
>> > > > > >
>> > > > > > What does it mean "some functions" in this case? Should we list
>> > > > > > which
>> > > > > > functions?
>> > > > > >
>> > > > >
>> > > > > Well, there are a lot, typically resulting from build configurations
>> > > > > that do
>> > > > > not
>> > > > > use them, or because they are used only in asm code. I can mention
>> > > > > these
>> > > > > reasons in the
>> > > > > document, to make it easier to understand.
>> > > >
>> > > > Yes, I think we need to clarify further this point, because saying "Some
>> > > > functions" doesn't help the reader understand:
>> > > > - whether all functions can be not referenced
>> > > > - which subset of functions can be not referenced
>> > > >
>> > > > How to distinguish between? How do we know whether a certain patch is
>> > > > violating the rule or not?
>> > > >
>> > > > If there is a clear list of functions that can be not referenced, then
>> > > > we should list them here. If there is a methodology we can use to
>> > > > distinguish between them (e.g. functions called from asm only) then we
>> > > > can write the methodology here. Either way it is fine as long as the
>> > > > criteria to know if it is OK if a function is not referenced is clear.
>> > >
>> > > Aren't they more or less the one we tagged with SAF-1-safe because
>> > > there were no prototype? If so, we could use the same tags.
>> > >
>> > > We could introduce an extra tags for the others. An alternative would
>> > > be to add an attribute (e.g. asmcall) to mark each function used by
>> > > assembly.
>> > >
>> > > Cheers,
>> >
>> > Both suggestion do have some value. As it is, it's not distinguishable
>> > what causes a
>> > function to be unreferenced in a certain analysis config. However:
>> >
>> > - functions only used by asm code can be specified in the ECLAIR
>> > config so that they will
>> >   have an extra fake reference as far as the checker is concerned. I
>> > can do that on a
>> >   separate patch and list them in deviations.rst. An attribute seems a
>> > good way to signal the
>> >   intention.
>> > - Functions that have no reference only in the current analysis should
>> > have their declaration
>> >   #ifdef-ed out in the configurations where they are not used, in an
>> > ideal world.
>> > - Truly unreferenced functions should be removed, or justified
>> 
>> Especially the last two appear somewhat tricky to disentangle, as they 
>> do
>> require knowledge of
>> possible code paths.
> 
> First let me premise that if we are unsure on how to proceed on this 
> you
> can resend this patch series without this item ("Some functions are
> intended not to be referenced"), so at least the rest can go in now.
> 
> On this specific point, I think we should only make clear and
> unmistakable statements. For instance, I think it is OK to say that all
> the functions only used by asm code are exceptions (ideally they would
> have a asmcall tag as Julien suggested) because that is deterministic.
> 
> Functions that have no references in a specific kconfig configuration
> should have their definition #ifdef'ed (not necessarily the
> declaration, I think we have already clarified that it is OK to have a
> declaration without definition.)
> 
> Truly unreferenced functions should be removed.
> 
> In conclusion, I think we should only have "functions only called from
> asm code" as a deviation here.

I agree on leaving this out of the patch for now.

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


From xen-devel-bounces@lists.xenproject.org Fri Oct 13 08:34:35 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 08:34:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616290.958162 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrDct-0006Iw-2l; Fri, 13 Oct 2023 08:34:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616290.958162; Fri, 13 Oct 2023 08:34: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 1qrDcs-0006Ip-WE; Fri, 13 Oct 2023 08:34:31 +0000
Received: by outflank-mailman (input) for mailman id 616290;
 Fri, 13 Oct 2023 08:34: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 1qrDcr-0006Ij-L6
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 08:34: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 1qrDcr-0002TY-6d; Fri, 13 Oct 2023 08:34: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 1qrDcq-0001si-Ti; Fri, 13 Oct 2023 08:34: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=i2dWisYBz7u3pG0UOrse+398WLK2TV4LwlT6H2rPLCk=; b=Jjfgf9JgpOjAVmvJT2MVySERgc
	m6DiovzOhtZwUd+4lVHIAedl0pGVzb4Wggs1bCgNbIR/V/6WI3cELrsx9o5OODm37pSQFgiPgVIiH
	BJLZwM54x6ADZehr1ffcsNV2uQtZNzjHz9FaRsD6g1BGbjL3EeRzN2wvWtPIPLLA0opU=;
Message-ID: <8f70079a-ab08-4b41-8aab-834958ae93eb@xen.org>
Date: Fri, 13 Oct 2023 09:34:27 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v10 15/17] xen/arm: account IO handlers for emulated PCI
 MSI-X
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>,
 Oleksandr Andrushchenko <Oleksandr_Andrushchenko@epam.com>,
 Bertrand Marquis <bertrand.marquis@arm.com>, Julien Grall
 <jgrall@amazon.com>, Stefano Stabellini <sstabellini@kernel.org>
References: <20231012220854.2736994-1-volodymyr_babchuk@epam.com>
 <20231012220854.2736994-16-volodymyr_babchuk@epam.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <20231012220854.2736994-16-volodymyr_babchuk@epam.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi Volodymyr,

On 12/10/2023 23:09, Volodymyr Babchuk wrote:
> From: Oleksandr Andrushchenko <oleksandr_andrushchenko@epam.com>
> 
> At the moment, we always allocate an extra 16 slots for IO handlers
> (see MAX_IO_HANDLER). So while adding IO trap handlers for the emulated
> MSI-X registers we need to explicitly tell that we have additional IO
> handlers, so those are accounted.
> 
> Signed-off-by: Oleksandr Andrushchenko <oleksandr_andrushchenko@epam.com>

Some process remark. All the patches you send (even if they are 
unmodified) should also contain your signed-off-by. This is to comply 
with point (b) in the DCO certificate:

https://cert-manager.io/docs/contributing/sign-off/

Please check the other patches in this series.

> Acked-by: Julien Grall <jgrall@amazon.com>

Is this patch depends on the rest of the series? If not we can merge it 
in the for-4.19 branch Stefano created. This will reduce the number of 
patches you need to resend.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Fri Oct 13 08:36:44 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 08:36:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616272.958173 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrDez-0006tK-Eg; Fri, 13 Oct 2023 08:36:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616272.958173; Fri, 13 Oct 2023 08: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 1qrDez-0006tD-Ba; Fri, 13 Oct 2023 08:36:41 +0000
Received: by outflank-mailman (input) for mailman id 616272;
 Fri, 13 Oct 2023 07: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=XgWV=F3=linaro.org=manos.pitsidianakis@srs-se1.protection.inumbo.net>)
 id 1qrCvt-0007kB-Js
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 07:50:05 +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 1deec9d2-699d-11ee-98d4-6d05b1d4d9a1;
 Fri, 13 Oct 2023 09:50:03 +0200 (CEST)
Received: by mail-wr1-x430.google.com with SMTP id
 ffacd0b85a97d-32d9cb5e0fcso303325f8f.0
 for <xen-devel@lists.xenproject.org>; Fri, 13 Oct 2023 00:50:03 -0700 (PDT)
Received: from localhost.localdomain (adsl-170.109.242.226.tellas.gr.
 [109.242.226.170]) by smtp.gmail.com with ESMTPSA id
 m8-20020adfa3c8000000b0032d7fde2d3csm7990663wrb.79.2023.10.13.00.50.00
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Fri, 13 Oct 2023 00: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: 1deec9d2-699d-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=linaro.org; s=google; t=1697183402; x=1697788202; 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=26XmJrmy0yeQL+itGkgyNTL5y2J9dMpEXdNv7ZAQr48=;
        b=p26l4A/9yUK5wumCFays9rPgUf/TiralCk/phmEbNeb3mScEWQl41pRu0D3Y0Z3Piq
         BnWgb0Wtoemh/DXStkA337AKjYUYRPcrEvvlGePn8opGtQv5h7AEePUXWvLEPBqLWlWd
         FR5KmAwqJo7n6pEQViE9OZvSvTmEy1K1IfE9oq64um4HdDbprtIYxthDfE5GvigpxwY4
         xPY28h3i4WWKQ2ngWkbzxSVJN95XY2P3RlFiFyrwRq2DzFrtKgbxlT5XBJKGkXAtb7la
         6J/i4Qk61sL/j0zP9DGQ5+a+8X/3FGMdek1p4ZcThLQj5R/bL2ew50gfEo3ygyBf8p+4
         OkCg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697183402; x=1697788202;
        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=26XmJrmy0yeQL+itGkgyNTL5y2J9dMpEXdNv7ZAQr48=;
        b=VM/IbRlcEYtubrk2hge8uqz0sn5gpwdFCDxa0BpN6+m+rdEalM0b8WD5Z5xnkBbspd
         f3uQM/+foshRMG4Lugh/2P42nmlKcaHVzfL6a9PKzzSSr/krGB45hu8dfrgLWud3Yfif
         n75MntpwLQNa3IzW5Qm3dWpizSTlgxpuCM8BqRUxm7tdGWQtLEfkxnAoCZwtm9f2HqT9
         hPvsQk+7MwI6DxrjFv4IBQO4geBH3+aYjmgNrSto9mplfYsdXYzzWPuKtjiDCpHWK1d7
         H551g/xWA9IhENLuOIRcufbbGHcpl2Z8IJHBsP7WgdX/KSFOFcBvtJtLn7I/xyTbc+nF
         nw4w==
X-Gm-Message-State: AOJu0YxZGBsZ/IQ5Mw+TE93RLk6bHYy7qWIgWxu8Bj0n0Y7eNGwAleZR
	8WZuH61Lvns3/se5j/PD5SVaBA==
X-Google-Smtp-Source: AGHT+IHdoGGAG25v0WJIlopAPK8Dh3SBQ6vjOxKN6Ku5gCGq6sdeWzk2pycoVg3b+dKn51+ZMoacMw==
X-Received: by 2002:a05:6000:c09:b0:32d:a022:855a with SMTP id dn9-20020a0560000c0900b0032da022855amr264291wrb.20.1697183402328;
        Fri, 13 Oct 2023 00:50:02 -0700 (PDT)
From: Emmanouil Pitsidianakis <manos.pitsidianakis@linaro.org>
To: qemu-devel@nongnu.org,
	qemu-arm@nongnu.org,
	qemu-block@nongnu.org
Cc: Emmanouil Pitsidianakis <manos.pitsidianakis@linaro.org>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	Stefan Hajnoczi <stefanha@redhat.com>,
	Kevin Wolf <kwolf@redhat.com>,
	Hanna Reitz <hreitz@redhat.com>,
	Alistair Francis <alistair@alistair23.me>,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
	xen-devel@lists.xenproject.org (open list:X86 Xen CPUs)
Subject: [RFC PATCH 08/78] hw/block: add fallthrough pseudo-keyword
Date: Fri, 13 Oct 2023 10:47:12 +0300
Message-Id: <23f52f392ad16af6ae923fae526b7c13daf2a0e2.1697183082.git.manos.pitsidianakis@linaro.org>
X-Mailer: git-send-email 2.39.2
In-Reply-To: <cover.1697183081.git.manos.pitsidianakis@linaro.org>
References: <cover.1697183081.git.manos.pitsidianakis@linaro.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

In preparation of raising -Wimplicit-fallthrough to 5, replace all
fall-through comments with the fallthrough attribute pseudo-keyword.

Signed-off-by: Emmanouil Pitsidianakis <manos.pitsidianakis@linaro.org>
---
 hw/block/dataplane/xen-block.c | 4 ++--
 hw/block/m25p80.c              | 2 +-
 hw/block/onenand.c             | 2 +-
 hw/block/pflash_cfi01.c        | 1 +
 hw/block/pflash_cfi02.c        | 6 ++++--
 5 files changed, 9 insertions(+), 6 deletions(-)

diff --git a/hw/block/dataplane/xen-block.c b/hw/block/dataplane/xen-block.c
index 3b6f2b0aa2..1ae25a73b2 100644
--- a/hw/block/dataplane/xen-block.c
+++ b/hw/block/dataplane/xen-block.c
@@ -144,59 +144,59 @@ static void xen_block_complete_request(XenBlockRequest *request)
 /*
  * translate request into iovec + start offset
  * do sanity checks along the way
  */
 static int xen_block_parse_request(XenBlockRequest *request)
 {
     XenBlockDataPlane *dataplane = request->dataplane;
     size_t len;
     int i;
 
     switch (request->req.operation) {
     case BLKIF_OP_READ:
         break;
     case BLKIF_OP_FLUSH_DISKCACHE:
         request->presync = 1;
         if (!request->req.nr_segments) {
             return 0;
         }
-        /* fall through */
+        fallthrough;
     case BLKIF_OP_WRITE:
         break;
     case BLKIF_OP_DISCARD:
         return 0;
     default:
         error_report("error: unknown operation (%d)", request->req.operation);
         goto err;
     };
 
     if (request->req.operation != BLKIF_OP_READ &&
         !blk_is_writable(dataplane->blk)) {
         error_report("error: write req for ro device");
         goto err;
     }
 
     request->start = request->req.sector_number * dataplane->sector_size;
     for (i = 0; i < request->req.nr_segments; i++) {
         if (i == BLKIF_MAX_SEGMENTS_PER_REQUEST) {
             error_report("error: nr_segments too big");
             goto err;
         }
         if (request->req.seg[i].first_sect > request->req.seg[i].last_sect) {
             error_report("error: first > last sector");
             goto err;
         }
         if (request->req.seg[i].last_sect * dataplane->sector_size >=
             XEN_PAGE_SIZE) {
             error_report("error: page crossing");
             goto err;
         }
 
         len = (request->req.seg[i].last_sect -
                request->req.seg[i].first_sect + 1) * dataplane->sector_size;
         request->size += len;
     }
     if (request->start + request->size > blk_getlength(dataplane->blk)) {
         error_report("error: access beyond end of file");
         goto err;
     }
     return 0;
@@ -257,63 +257,63 @@ static int xen_block_do_aio(XenBlockRequest *request);
 static void xen_block_complete_aio(void *opaque, int ret)
 {
     XenBlockRequest *request = opaque;
     XenBlockDataPlane *dataplane = request->dataplane;
 
     aio_context_acquire(dataplane->ctx);
 
     if (ret != 0) {
         error_report("%s I/O error",
                      request->req.operation == BLKIF_OP_READ ?
                      "read" : "write");
         request->aio_errors++;
     }
 
     request->aio_inflight--;
     if (request->presync) {
         request->presync = 0;
         xen_block_do_aio(request);
         goto done;
     }
     if (request->aio_inflight > 0) {
         goto done;
     }
 
     switch (request->req.operation) {
     case BLKIF_OP_READ:
         /* in case of failure request->aio_errors is increased */
         if (ret == 0) {
             xen_block_copy_request(request);
         }
         break;
     case BLKIF_OP_WRITE:
     case BLKIF_OP_FLUSH_DISKCACHE:
     default:
         break;
     }
 
     request->status = request->aio_errors ? BLKIF_RSP_ERROR : BLKIF_RSP_OKAY;
 
     switch (request->req.operation) {
     case BLKIF_OP_WRITE:
     case BLKIF_OP_FLUSH_DISKCACHE:
         if (!request->req.nr_segments) {
             break;
         }
-        /* fall through */
+        fallthrough;
     case BLKIF_OP_READ:
         if (request->status == BLKIF_RSP_OKAY) {
             block_acct_done(blk_get_stats(dataplane->blk), &request->acct);
         } else {
             block_acct_failed(blk_get_stats(dataplane->blk), &request->acct);
         }
         break;
     case BLKIF_OP_DISCARD:
     default:
         break;
     }
 
     xen_block_complete_request(request);
 
     if (dataplane->more_work) {
         qemu_bh_schedule(dataplane->bh);
     }
diff --git a/hw/block/m25p80.c b/hw/block/m25p80.c
index afc3fdf4d6..523c34da71 100644
--- a/hw/block/m25p80.c
+++ b/hw/block/m25p80.c
@@ -1117,360 +1117,360 @@ static bool is_valid_aai_cmd(uint32_t cmd)
 static void decode_new_cmd(Flash *s, uint32_t value)
 {
     int i;
 
     s->cmd_in_progress = value;
     trace_m25p80_command_decoded(s, value);
 
     if (value != RESET_MEMORY) {
         s->reset_enable = false;
     }
 
     if (get_man(s) == MAN_SST && s->aai_enable && !is_valid_aai_cmd(value)) {
         qemu_log_mask(LOG_GUEST_ERROR,
                       "M25P80: Invalid cmd within AAI programming sequence");
     }
 
     switch (value) {
 
     case ERASE_4K:
     case ERASE4_4K:
     case ERASE_32K:
     case ERASE4_32K:
     case ERASE_SECTOR:
     case ERASE4_SECTOR:
     case PP:
     case PP4:
     case DIE_ERASE:
     case RDID_90:
     case RDID_AB:
         s->needed_bytes = get_addr_length(s);
         s->pos = 0;
         s->len = 0;
         s->state = STATE_COLLECTING_DATA;
         break;
     case READ:
     case READ4:
         if (get_man(s) != MAN_NUMONYX || numonyx_mode(s) == MODE_STD) {
             s->needed_bytes = get_addr_length(s);
             s->pos = 0;
             s->len = 0;
             s->state = STATE_COLLECTING_DATA;
         } else {
             qemu_log_mask(LOG_GUEST_ERROR, "M25P80: Cannot execute cmd %x in "
                           "DIO or QIO mode\n", s->cmd_in_progress);
         }
         break;
     case DPP:
         if (get_man(s) != MAN_NUMONYX || numonyx_mode(s) != MODE_QIO) {
             s->needed_bytes = get_addr_length(s);
             s->pos = 0;
             s->len = 0;
             s->state = STATE_COLLECTING_DATA;
         } else {
             qemu_log_mask(LOG_GUEST_ERROR, "M25P80: Cannot execute cmd %x in "
                           "QIO mode\n", s->cmd_in_progress);
         }
         break;
     case QPP:
     case QPP_4:
     case PP4_4:
         if (get_man(s) != MAN_NUMONYX || numonyx_mode(s) != MODE_DIO) {
             s->needed_bytes = get_addr_length(s);
             s->pos = 0;
             s->len = 0;
             s->state = STATE_COLLECTING_DATA;
         } else {
             qemu_log_mask(LOG_GUEST_ERROR, "M25P80: Cannot execute cmd %x in "
                           "DIO mode\n", s->cmd_in_progress);
         }
         break;
 
     case FAST_READ:
     case FAST_READ4:
         decode_fast_read_cmd(s);
         break;
     case DOR:
     case DOR4:
         if (get_man(s) != MAN_NUMONYX || numonyx_mode(s) != MODE_QIO) {
             decode_fast_read_cmd(s);
         } else {
             qemu_log_mask(LOG_GUEST_ERROR, "M25P80: Cannot execute cmd %x in "
                           "QIO mode\n", s->cmd_in_progress);
         }
         break;
     case QOR:
     case QOR4:
         if (get_man(s) != MAN_NUMONYX || numonyx_mode(s) != MODE_DIO) {
             decode_fast_read_cmd(s);
         } else {
             qemu_log_mask(LOG_GUEST_ERROR, "M25P80: Cannot execute cmd %x in "
                           "DIO mode\n", s->cmd_in_progress);
         }
         break;
 
     case DIOR:
     case DIOR4:
         if (get_man(s) != MAN_NUMONYX || numonyx_mode(s) != MODE_QIO) {
             decode_dio_read_cmd(s);
         } else {
             qemu_log_mask(LOG_GUEST_ERROR, "M25P80: Cannot execute cmd %x in "
                           "QIO mode\n", s->cmd_in_progress);
         }
         break;
 
     case QIOR:
     case QIOR4:
         if (get_man(s) != MAN_NUMONYX || numonyx_mode(s) != MODE_DIO) {
             decode_qio_read_cmd(s);
         } else {
             qemu_log_mask(LOG_GUEST_ERROR, "M25P80: Cannot execute cmd %x in "
                           "DIO mode\n", s->cmd_in_progress);
         }
         break;
 
     case WRSR:
         /*
          * If WP# is low and status_register_write_disabled is high,
          * status register writes are disabled.
          * This is also called "hardware protected mode" (HPM). All other
          * combinations of the two states are called "software protected mode"
          * (SPM), and status register writes are permitted.
          */
         if ((s->wp_level == 0 && s->status_register_write_disabled)
             || !s->write_enable) {
             qemu_log_mask(LOG_GUEST_ERROR,
                           "M25P80: Status register write is disabled!\n");
             break;
         }
 
         switch (get_man(s)) {
         case MAN_SPANSION:
             s->needed_bytes = 2;
             s->state = STATE_COLLECTING_DATA;
             break;
         case MAN_MACRONIX:
             s->needed_bytes = 2;
             s->state = STATE_COLLECTING_VAR_LEN_DATA;
             break;
         default:
             s->needed_bytes = 1;
             s->state = STATE_COLLECTING_DATA;
         }
         s->pos = 0;
         break;
 
     case WRDI:
         s->write_enable = false;
         if (get_man(s) == MAN_SST) {
             s->aai_enable = false;
         }
         break;
     case WREN:
         s->write_enable = true;
         break;
 
     case RDSR:
         s->data[0] = (!!s->write_enable) << 1;
         s->data[0] |= (!!s->status_register_write_disabled) << 7;
         s->data[0] |= (!!s->block_protect0) << 2;
         s->data[0] |= (!!s->block_protect1) << 3;
         s->data[0] |= (!!s->block_protect2) << 4;
         if (s->pi->flags & HAS_SR_TB) {
             s->data[0] |= (!!s->top_bottom_bit) << 5;
         }
         if (s->pi->flags & HAS_SR_BP3_BIT6) {
             s->data[0] |= (!!s->block_protect3) << 6;
         }
 
         if (get_man(s) == MAN_MACRONIX || get_man(s) == MAN_ISSI) {
             s->data[0] |= (!!s->quad_enable) << 6;
         }
         if (get_man(s) == MAN_SST) {
             s->data[0] |= (!!s->aai_enable) << 6;
         }
 
         s->pos = 0;
         s->len = 1;
         s->data_read_loop = true;
         s->state = STATE_READING_DATA;
         break;
 
     case READ_FSR:
         s->data[0] = FSR_FLASH_READY;
         if (s->four_bytes_address_mode) {
             s->data[0] |= FSR_4BYTE_ADDR_MODE_ENABLED;
         }
         s->pos = 0;
         s->len = 1;
         s->data_read_loop = true;
         s->state = STATE_READING_DATA;
         break;
 
     case JEDEC_READ:
         if (get_man(s) != MAN_NUMONYX || numonyx_mode(s) == MODE_STD) {
             trace_m25p80_populated_jedec(s);
             for (i = 0; i < s->pi->id_len; i++) {
                 s->data[i] = s->pi->id[i];
             }
             for (; i < SPI_NOR_MAX_ID_LEN; i++) {
                 s->data[i] = 0;
             }
 
             s->len = SPI_NOR_MAX_ID_LEN;
             s->pos = 0;
             s->state = STATE_READING_DATA;
         } else {
             qemu_log_mask(LOG_GUEST_ERROR, "M25P80: Cannot execute JEDEC read "
                           "in DIO or QIO mode\n");
         }
         break;
 
     case RDCR:
         s->data[0] = s->volatile_cfg & 0xFF;
         s->data[0] |= (!!s->four_bytes_address_mode) << 5;
         s->pos = 0;
         s->len = 1;
         s->state = STATE_READING_DATA;
         break;
 
     case BULK_ERASE_60:
     case BULK_ERASE:
         if (s->write_enable) {
             trace_m25p80_chip_erase(s);
             flash_erase(s, 0, BULK_ERASE);
         } else {
             qemu_log_mask(LOG_GUEST_ERROR, "M25P80: chip erase with write "
                           "protect!\n");
         }
         break;
     case NOP:
         break;
     case EN_4BYTE_ADDR:
         s->four_bytes_address_mode = true;
         break;
     case EX_4BYTE_ADDR:
         s->four_bytes_address_mode = false;
         break;
     case BRRD:
     case EXTEND_ADDR_READ:
         s->data[0] = s->ear;
         s->pos = 0;
         s->len = 1;
         s->state = STATE_READING_DATA;
         break;
     case BRWR:
     case EXTEND_ADDR_WRITE:
         if (s->write_enable) {
             s->needed_bytes = 1;
             s->pos = 0;
             s->len = 0;
             s->state = STATE_COLLECTING_DATA;
         }
         break;
     case RNVCR:
         s->data[0] = s->nonvolatile_cfg & 0xFF;
         s->data[1] = (s->nonvolatile_cfg >> 8) & 0xFF;
         s->pos = 0;
         s->len = 2;
         s->state = STATE_READING_DATA;
         break;
     case WNVCR:
         if (s->write_enable && get_man(s) == MAN_NUMONYX) {
             s->needed_bytes = 2;
             s->pos = 0;
             s->len = 0;
             s->state = STATE_COLLECTING_DATA;
         }
         break;
     case RVCR:
         s->data[0] = s->volatile_cfg & 0xFF;
         s->pos = 0;
         s->len = 1;
         s->state = STATE_READING_DATA;
         break;
     case WVCR:
         if (s->write_enable) {
             s->needed_bytes = 1;
             s->pos = 0;
             s->len = 0;
             s->state = STATE_COLLECTING_DATA;
         }
         break;
     case REVCR:
         s->data[0] = s->enh_volatile_cfg & 0xFF;
         s->pos = 0;
         s->len = 1;
         s->state = STATE_READING_DATA;
         break;
     case WEVCR:
         if (s->write_enable) {
             s->needed_bytes = 1;
             s->pos = 0;
             s->len = 0;
             s->state = STATE_COLLECTING_DATA;
         }
         break;
     case RESET_ENABLE:
         s->reset_enable = true;
         break;
     case RESET_MEMORY:
         if (s->reset_enable) {
             reset_memory(s);
         }
         break;
     case RDCR_EQIO:
         switch (get_man(s)) {
         case MAN_SPANSION:
             s->data[0] = (!!s->quad_enable) << 1;
             s->pos = 0;
             s->len = 1;
             s->state = STATE_READING_DATA;
             break;
         case MAN_MACRONIX:
             s->quad_enable = true;
             break;
         default:
             break;
         }
         break;
     case RSTQIO:
         s->quad_enable = false;
         break;
     case AAI_WP:
         if (get_man(s) == MAN_SST) {
             if (s->write_enable) {
                 if (s->aai_enable) {
                     s->state = STATE_PAGE_PROGRAM;
                 } else {
                     s->aai_enable = true;
                     s->needed_bytes = get_addr_length(s);
                     s->state = STATE_COLLECTING_DATA;
                 }
             } else {
                 qemu_log_mask(LOG_GUEST_ERROR,
                               "M25P80: AAI_WP with write protect\n");
             }
         } else {
             qemu_log_mask(LOG_GUEST_ERROR, "M25P80: Unknown cmd %x\n", value);
         }
         break;
     case RDSFDP:
         if (s->pi->sfdp_read) {
             s->needed_bytes = get_addr_length(s) + 1; /* SFDP addr + dummy */
             s->pos = 0;
             s->len = 0;
             s->state = STATE_COLLECTING_DATA;
             break;
         }
-        /* Fallthrough */
+        fallthrough;
 
     default:
         s->pos = 0;
         s->len = 1;
         s->state = STATE_READING_DATA;
         s->data_read_loop = true;
         s->data[0] = 0;
         qemu_log_mask(LOG_GUEST_ERROR, "M25P80: Unknown cmd %x\n", value);
         break;
     }
 }
diff --git a/hw/block/onenand.c b/hw/block/onenand.c
index 50d3d1c985..87583c48a0 100644
--- a/hw/block/onenand.c
+++ b/hw/block/onenand.c
@@ -406,202 +406,202 @@ fail:
 static void onenand_command(OneNANDState *s)
 {
     int b;
     int sec;
     void *buf;
 #define SETADDR(block, page)                                \
     sec = (s->addr[page] & 3) +                             \
           ((((s->addr[page] >> 2) & 0x3f) +                 \
             (((s->addr[block] & 0xfff) |                    \
               (s->addr[block] >> 15 ? s->density_mask : 0)) \
              << 6))                                         \
            << (PAGE_SHIFT - 9));
 #define SETBUF_M()                                                           \
     buf = (s->bufaddr & 8) ? s->data[(s->bufaddr >> 2) & 1][0] : s->boot[0]; \
     buf += (s->bufaddr & 3) << 9;
 #define SETBUF_S()                                          \
     buf = (s->bufaddr & 8) ?                                \
             s->data[(s->bufaddr >> 2) & 1][1] : s->boot[1]; \
     buf += (s->bufaddr & 3) << 4;
 
     switch (s->command) {
     case 0x00:  /* Load single/multiple sector data unit into buffer */
         SETADDR(ONEN_BUF_BLOCK, ONEN_BUF_PAGE)
 
         SETBUF_M()
         if (onenand_load_main(s, sec, s->count, buf))
             s->status |= ONEN_ERR_CMD | ONEN_ERR_LOAD;
 
 #if 0
         SETBUF_S()
         if (onenand_load_spare(s, sec, s->count, buf))
             s->status |= ONEN_ERR_CMD | ONEN_ERR_LOAD;
 #endif
 
         /* TODO: if (s->bufaddr & 3) + s->count was > 4 (2k-pages)
          * or    if (s->bufaddr & 1) + s->count was > 2 (1k-pages)
          * then we need two split the read/write into two chunks.
          */
         s->intstatus |= ONEN_INT | ONEN_INT_LOAD;
         break;
     case 0x13:  /* Load single/multiple spare sector into buffer */
         SETADDR(ONEN_BUF_BLOCK, ONEN_BUF_PAGE)
 
         SETBUF_S()
         if (onenand_load_spare(s, sec, s->count, buf))
             s->status |= ONEN_ERR_CMD | ONEN_ERR_LOAD;
 
         /* TODO: if (s->bufaddr & 3) + s->count was > 4 (2k-pages)
          * or    if (s->bufaddr & 1) + s->count was > 2 (1k-pages)
          * then we need two split the read/write into two chunks.
          */
         s->intstatus |= ONEN_INT | ONEN_INT_LOAD;
         break;
     case 0x80:  /* Program single/multiple sector data unit from buffer */
         SETADDR(ONEN_BUF_BLOCK, ONEN_BUF_PAGE)
 
         SETBUF_M()
         if (onenand_prog_main(s, sec, s->count, buf))
             s->status |= ONEN_ERR_CMD | ONEN_ERR_PROG;
 
 #if 0
         SETBUF_S()
         if (onenand_prog_spare(s, sec, s->count, buf))
             s->status |= ONEN_ERR_CMD | ONEN_ERR_PROG;
 #endif
 
         /* TODO: if (s->bufaddr & 3) + s->count was > 4 (2k-pages)
          * or    if (s->bufaddr & 1) + s->count was > 2 (1k-pages)
          * then we need two split the read/write into two chunks.
          */
         s->intstatus |= ONEN_INT | ONEN_INT_PROG;
         break;
     case 0x1a:  /* Program single/multiple spare area sector from buffer */
         SETADDR(ONEN_BUF_BLOCK, ONEN_BUF_PAGE)
 
         SETBUF_S()
         if (onenand_prog_spare(s, sec, s->count, buf))
             s->status |= ONEN_ERR_CMD | ONEN_ERR_PROG;
 
         /* TODO: if (s->bufaddr & 3) + s->count was > 4 (2k-pages)
          * or    if (s->bufaddr & 1) + s->count was > 2 (1k-pages)
          * then we need two split the read/write into two chunks.
          */
         s->intstatus |= ONEN_INT | ONEN_INT_PROG;
         break;
     case 0x1b:  /* Copy-back program */
         SETBUF_S()
 
         SETADDR(ONEN_BUF_BLOCK, ONEN_BUF_PAGE)
         if (onenand_load_main(s, sec, s->count, buf))
             s->status |= ONEN_ERR_CMD | ONEN_ERR_PROG;
 
         SETADDR(ONEN_BUF_DEST_BLOCK, ONEN_BUF_DEST_PAGE)
         if (onenand_prog_main(s, sec, s->count, buf))
             s->status |= ONEN_ERR_CMD | ONEN_ERR_PROG;
 
         /* TODO: spare areas */
 
         s->intstatus |= ONEN_INT | ONEN_INT_PROG;
         break;
 
     case 0x23:  /* Unlock NAND array block(s) */
         s->intstatus |= ONEN_INT;
 
         /* XXX the previous (?) area should be locked automatically */
         for (b = s->unladdr[0]; b <= s->unladdr[1]; b ++) {
             if (b >= s->blocks) {
                 s->status |= ONEN_ERR_CMD;
                 break;
             }
             if (s->blockwp[b] == ONEN_LOCK_LOCKTIGHTEN)
                 break;
 
             s->wpstatus = s->blockwp[b] = ONEN_LOCK_UNLOCKED;
         }
         break;
     case 0x27:  /* Unlock All NAND array blocks */
         s->intstatus |= ONEN_INT;
 
         for (b = 0; b < s->blocks; b ++) {
             if (s->blockwp[b] == ONEN_LOCK_LOCKTIGHTEN)
                 break;
 
             s->wpstatus = s->blockwp[b] = ONEN_LOCK_UNLOCKED;
         }
         break;
 
     case 0x2a:  /* Lock NAND array block(s) */
         s->intstatus |= ONEN_INT;
 
         for (b = s->unladdr[0]; b <= s->unladdr[1]; b ++) {
             if (b >= s->blocks) {
                 s->status |= ONEN_ERR_CMD;
                 break;
             }
             if (s->blockwp[b] == ONEN_LOCK_LOCKTIGHTEN)
                 break;
 
             s->wpstatus = s->blockwp[b] = ONEN_LOCK_LOCKED;
         }
         break;
     case 0x2c:  /* Lock-tight NAND array block(s) */
         s->intstatus |= ONEN_INT;
 
         for (b = s->unladdr[0]; b <= s->unladdr[1]; b ++) {
             if (b >= s->blocks) {
                 s->status |= ONEN_ERR_CMD;
                 break;
             }
             if (s->blockwp[b] == ONEN_LOCK_UNLOCKED)
                 continue;
 
             s->wpstatus = s->blockwp[b] = ONEN_LOCK_LOCKTIGHTEN;
         }
         break;
 
     case 0x71:  /* Erase-Verify-Read */
         s->intstatus |= ONEN_INT;
         break;
     case 0x95:  /* Multi-block erase */
         qemu_irq_pulse(s->intr);
-        /* Fall through.  */
+        fallthrough;
     case 0x94:  /* Block erase */
         sec = ((s->addr[ONEN_BUF_BLOCK] & 0xfff) |
                         (s->addr[ONEN_BUF_BLOCK] >> 15 ? s->density_mask : 0))
                 << (BLOCK_SHIFT - 9);
         if (onenand_erase(s, sec, 1 << (BLOCK_SHIFT - 9)))
             s->status |= ONEN_ERR_CMD | ONEN_ERR_ERASE;
 
         s->intstatus |= ONEN_INT | ONEN_INT_ERASE;
         break;
     case 0xb0:  /* Erase suspend */
         break;
     case 0x30:  /* Erase resume */
         s->intstatus |= ONEN_INT | ONEN_INT_ERASE;
         break;
 
     case 0xf0:  /* Reset NAND Flash core */
         onenand_reset(s, 0);
         break;
     case 0xf3:  /* Reset OneNAND */
         onenand_reset(s, 0);
         break;
 
     case 0x65:  /* OTP Access */
         s->intstatus |= ONEN_INT;
         s->blk_cur = NULL;
         s->current = s->otp;
         s->secs_cur = 1 << (BLOCK_SHIFT - 9);
         s->addr[ONEN_BUF_BLOCK] = 0;
         s->otpmode = 1;
         break;
 
     default:
         s->status |= ONEN_ERR_CMD;
         s->intstatus |= ONEN_INT;
         qemu_log_mask(LOG_GUEST_ERROR, "unknown OneNAND command %x\n",
                       s->command);
     }
 
     onenand_intr_update(s);
 }
diff --git a/hw/block/pflash_cfi01.c b/hw/block/pflash_cfi01.c
index 62056b1d74..cb58f08f53 100644
--- a/hw/block/pflash_cfi01.c
+++ b/hw/block/pflash_cfi01.c
@@ -261,123 +261,124 @@ static uint32_t pflash_data_read(PFlashCFI01 *pfl, hwaddr offset,
 static uint32_t pflash_read(PFlashCFI01 *pfl, hwaddr offset,
                             int width, int be)
 {
     hwaddr boff;
     uint32_t ret;
 
     ret = -1;
     switch (pfl->cmd) {
     default:
         /* This should never happen : reset state & treat it as a read */
         trace_pflash_read_unknown_state(pfl->name, pfl->cmd);
         pfl->wcycle = 0;
         /*
          * The command 0x00 is not assigned by the CFI open standard,
          * but QEMU historically uses it for the READ_ARRAY command (0xff).
          */
         pfl->cmd = 0x00;
         /* fall through to read code */
+        fallthrough;
     case 0x00: /* This model reset value for READ_ARRAY (not CFI compliant) */
         /* Flash area read */
         ret = pflash_data_read(pfl, offset, width, be);
         break;
     case 0x10: /* Single byte program */
     case 0x20: /* Block erase */
     case 0x28: /* Block erase */
     case 0x40: /* single byte program */
     case 0x50: /* Clear status register */
     case 0x60: /* Block /un)lock */
     case 0x70: /* Status Register */
     case 0xe8: /* Write block */
         /*
          * Status register read.  Return status from each device in
          * bank.
          */
         ret = pfl->status;
         if (pfl->device_width && width > pfl->device_width) {
             int shift = pfl->device_width * 8;
             while (shift + pfl->device_width * 8 <= width * 8) {
                 ret |= pfl->status << shift;
                 shift += pfl->device_width * 8;
             }
         } else if (!pfl->device_width && width > 2) {
             /*
              * Handle 32 bit flash cases where device width is not
              * set. (Existing behavior before device width added.)
              */
             ret |= pfl->status << 16;
         }
         trace_pflash_read_status(pfl->name, ret);
         break;
     case 0x90:
         if (!pfl->device_width) {
             /* Preserve old behavior if device width not specified */
             boff = offset & 0xFF;
             if (pfl->bank_width == 2) {
                 boff = boff >> 1;
             } else if (pfl->bank_width == 4) {
                 boff = boff >> 2;
             }
 
             switch (boff) {
             case 0:
                 ret = pfl->ident0 << 8 | pfl->ident1;
                 trace_pflash_manufacturer_id(pfl->name, ret);
                 break;
             case 1:
                 ret = pfl->ident2 << 8 | pfl->ident3;
                 trace_pflash_device_id(pfl->name, ret);
                 break;
             default:
                 trace_pflash_device_info(pfl->name, boff);
                 ret = 0;
                 break;
             }
         } else {
             /*
              * If we have a read larger than the bank_width, combine multiple
              * manufacturer/device ID queries into a single response.
              */
             int i;
             for (i = 0; i < width; i += pfl->bank_width) {
                 ret = deposit32(ret, i * 8, pfl->bank_width * 8,
                                 pflash_devid_query(pfl,
                                                  offset + i * pfl->bank_width));
             }
         }
         break;
     case 0x98: /* Query mode */
         if (!pfl->device_width) {
             /* Preserve old behavior if device width not specified */
             boff = offset & 0xFF;
             if (pfl->bank_width == 2) {
                 boff = boff >> 1;
             } else if (pfl->bank_width == 4) {
                 boff = boff >> 2;
             }
 
             if (boff < sizeof(pfl->cfi_table)) {
                 ret = pfl->cfi_table[boff];
             } else {
                 ret = 0;
             }
         } else {
             /*
              * If we have a read larger than the bank_width, combine multiple
              * CFI queries into a single response.
              */
             int i;
             for (i = 0; i < width; i += pfl->bank_width) {
                 ret = deposit32(ret, i * 8, pfl->bank_width * 8,
                                 pflash_cfi_query(pfl,
                                                  offset + i * pfl->bank_width));
             }
         }
 
         break;
     }
     trace_pflash_io_read(pfl->name, offset, width, ret, pfl->cmd, pfl->wcycle);
 
     return ret;
 }
 
 /* update flash content on disk */
diff --git a/hw/block/pflash_cfi02.c b/hw/block/pflash_cfi02.c
index 2a99b286b0..711f978d7c 100644
--- a/hw/block/pflash_cfi02.c
+++ b/hw/block/pflash_cfi02.c
@@ -307,87 +307,89 @@ static bool pflash_sector_is_erasing(PFlashCFI02 *pfl, hwaddr offset)
 static uint64_t pflash_read(void *opaque, hwaddr offset, unsigned int width)
 {
     PFlashCFI02 *pfl = opaque;
     hwaddr boff;
     uint64_t ret;
 
     /* Lazy reset to ROMD mode after a certain amount of read accesses */
     if (!pfl->rom_mode && pfl->wcycle == 0 &&
         ++pfl->read_counter > PFLASH_LAZY_ROMD_THRESHOLD) {
         pflash_mode_read_array(pfl);
     }
     offset &= pfl->chip_len - 1;
     boff = offset & 0xFF;
     if (pfl->width == 2) {
         boff = boff >> 1;
     } else if (pfl->width == 4) {
         boff = boff >> 2;
     }
     switch (pfl->cmd) {
     default:
         /* This should never happen : reset state & treat it as a read*/
         trace_pflash_read_unknown_state(pfl->name, pfl->cmd);
         pflash_reset_state_machine(pfl);
         /* fall through to the read code */
+        fallthrough;
     case 0x80: /* Erase (unlock) */
         /* We accept reads during second unlock sequence... */
     case 0x00:
         if (pflash_erase_suspend_mode(pfl) &&
             pflash_sector_is_erasing(pfl, offset)) {
             /* Toggle bit 2, but not 6. */
             toggle_dq2(pfl);
             /* Status register read */
             ret = pfl->status;
             trace_pflash_read_status(pfl->name, ret);
             break;
         }
         /* Flash area read */
         ret = pflash_data_read(pfl, offset, width);
         break;
     case 0x90: /* flash ID read */
         switch (boff) {
         case 0x00:
         case 0x01:
             ret = boff & 0x01 ? pfl->ident1 : pfl->ident0;
             break;
         case 0x02:
             ret = 0x00; /* Pretend all sectors are unprotected */
             break;
         case 0x0E:
         case 0x0F:
             ret = boff & 0x01 ? pfl->ident3 : pfl->ident2;
             if (ret != (uint8_t)-1) {
                 break;
             }
             /* Fall through to data read. */
+            fallthrough;
         default:
             ret = pflash_data_read(pfl, offset, width);
         }
         trace_pflash_read_done(pfl->name, boff, ret);
         break;
     case 0x10: /* Chip Erase */
     case 0x30: /* Sector Erase */
         /* Toggle bit 2 during erase, but not program. */
         toggle_dq2(pfl);
-        /* fall through */
+        fallthrough;
     case 0xA0: /* Program */
         /* Toggle bit 6 */
         toggle_dq6(pfl);
         /* Status register read */
         ret = pfl->status;
         trace_pflash_read_status(pfl->name, ret);
         break;
     case 0x98:
         /* CFI query mode */
         if (boff < sizeof(pfl->cfi_table)) {
             ret = pfl->cfi_table[boff];
         } else {
             ret = 0;
         }
         break;
     }
     trace_pflash_io_read(pfl->name, offset, width, ret, pfl->cmd, pfl->wcycle);
 
     return ret;
 }
 
 /* update flash content on disk */
@@ -431,277 +433,277 @@ static void pflash_sector_erase(PFlashCFI02 *pfl, hwaddr offset)
 static void pflash_write(void *opaque, hwaddr offset, uint64_t value,
                          unsigned int width)
 {
     PFlashCFI02 *pfl = opaque;
     hwaddr boff;
     uint8_t *p;
     uint8_t cmd;
 
     trace_pflash_io_write(pfl->name, offset, width, value, pfl->wcycle);
     cmd = value;
     if (pfl->cmd != 0xA0) {
         /* Reset does nothing during chip erase and sector erase. */
         if (cmd == 0xF0 && pfl->cmd != 0x10 && pfl->cmd != 0x30) {
             if (pfl->wcycle == WCYCLE_AUTOSELECT_CFI) {
                 /* Return to autoselect mode. */
                 pfl->wcycle = 3;
                 pfl->cmd = 0x90;
                 return;
             }
             goto reset_flash;
         }
     }
     offset &= pfl->chip_len - 1;
 
     boff = offset;
     if (pfl->width == 2) {
         boff = boff >> 1;
     } else if (pfl->width == 4) {
         boff = boff >> 2;
     }
     /* Only the least-significant 11 bits are used in most cases. */
     boff &= 0x7FF;
     switch (pfl->wcycle) {
     case 0:
         /* Set the device in I/O access mode if required */
         if (pfl->rom_mode) {
             pfl->rom_mode = false;
             memory_region_rom_device_set_romd(&pfl->orig_mem, false);
         }
         pfl->read_counter = 0;
         /* We're in read mode */
     check_unlock0:
         if (boff == 0x55 && cmd == 0x98) {
             /* Enter CFI query mode */
             pfl->wcycle = WCYCLE_CFI;
             pfl->cmd = 0x98;
             return;
         }
         /* Handle erase resume in erase suspend mode, otherwise reset. */
         if (cmd == 0x30) { /* Erase Resume */
             if (pflash_erase_suspend_mode(pfl)) {
                 /* Resume the erase. */
                 timer_mod(&pfl->timer, qemu_clock_get_ns(QEMU_CLOCK_VIRTUAL) +
                           pfl->erase_time_remaining);
                 pfl->erase_time_remaining = 0;
                 pfl->wcycle = 6;
                 pfl->cmd = 0x30;
                 set_dq7(pfl, 0x00);
                 assert_dq3(pfl);
                 return;
             }
             goto reset_flash;
         }
         /* Ignore erase suspend. */
         if (cmd == 0xB0) { /* Erase Suspend */
             return;
         }
         if (boff != pfl->unlock_addr0 || cmd != 0xAA) {
             trace_pflash_unlock0_failed(pfl->name, boff,
                                         cmd, pfl->unlock_addr0);
             goto reset_flash;
         }
         trace_pflash_write(pfl->name, "unlock sequence started");
         break;
     case 1:
         /* We started an unlock sequence */
     check_unlock1:
         if (boff != pfl->unlock_addr1 || cmd != 0x55) {
             trace_pflash_unlock1_failed(pfl->name, boff, cmd);
             goto reset_flash;
         }
         trace_pflash_write(pfl->name, "unlock sequence done");
         break;
     case 2:
         /* We finished an unlock sequence */
         if (!pfl->bypass && boff != pfl->unlock_addr0) {
             trace_pflash_write_failed(pfl->name, boff, cmd);
             goto reset_flash;
         }
         switch (cmd) {
         case 0x20:
             pfl->bypass = 1;
             goto do_bypass;
         case 0x80: /* Erase */
         case 0x90: /* Autoselect */
         case 0xA0: /* Program */
             pfl->cmd = cmd;
             trace_pflash_write_start(pfl->name, cmd);
             break;
         default:
             trace_pflash_write_unknown(pfl->name, cmd);
             goto reset_flash;
         }
         break;
     case 3:
         switch (pfl->cmd) {
         case 0x80: /* Erase */
             /* We need another unlock sequence */
             goto check_unlock0;
         case 0xA0: /* Program */
             if (pflash_erase_suspend_mode(pfl) &&
                 pflash_sector_is_erasing(pfl, offset)) {
                 /* Ignore writes to erasing sectors. */
                 if (pfl->bypass) {
                     goto do_bypass;
                 }
                 goto reset_flash;
             }
             trace_pflash_data_write(pfl->name, offset, width, value, 0);
             if (!pfl->ro) {
                 p = (uint8_t *)pfl->storage + offset;
                 if (pfl->be) {
                     uint64_t current = ldn_be_p(p, width);
                     stn_be_p(p, width, current & value);
                 } else {
                     uint64_t current = ldn_le_p(p, width);
                     stn_le_p(p, width, current & value);
                 }
                 pflash_update(pfl, offset, width);
             }
             /*
              * While programming, status bit DQ7 should hold the opposite
              * value from how it was programmed.
              */
             set_dq7(pfl, ~value);
             /* Let's pretend write is immediate */
             if (pfl->bypass)
                 goto do_bypass;
             goto reset_flash;
         case 0x90: /* Autoselect */
             if (pfl->bypass && cmd == 0x00) {
                 /* Unlock bypass reset */
                 goto reset_flash;
             }
             /*
              * We can enter CFI query mode from autoselect mode, but we must
              * return to autoselect mode after a reset.
              */
             if (boff == 0x55 && cmd == 0x98) {
                 /* Enter autoselect CFI query mode */
                 pfl->wcycle = WCYCLE_AUTOSELECT_CFI;
                 pfl->cmd = 0x98;
                 return;
             }
-            /* fall through */
+            fallthrough;
         default:
             trace_pflash_write_invalid(pfl->name, pfl->cmd);
             goto reset_flash;
         }
     case 4:
         switch (pfl->cmd) {
         case 0xA0: /* Program */
             /* Ignore writes while flash data write is occurring */
             /* As we suppose write is immediate, this should never happen */
             return;
         case 0x80: /* Erase */
             goto check_unlock1;
         default:
             /* Should never happen */
             trace_pflash_write_invalid_state(pfl->name, pfl->cmd, 5);
             goto reset_flash;
         }
         break;
     case 5:
         if (pflash_erase_suspend_mode(pfl)) {
             /* Erasing is not supported in erase suspend mode. */
             goto reset_flash;
         }
         switch (cmd) {
         case 0x10: /* Chip Erase */
             if (boff != pfl->unlock_addr0) {
                 trace_pflash_chip_erase_invalid(pfl->name, offset);
                 goto reset_flash;
             }
             /* Chip erase */
             trace_pflash_chip_erase_start(pfl->name);
             if (!pfl->ro) {
                 memset(pfl->storage, 0xff, pfl->chip_len);
                 pflash_update(pfl, 0, pfl->chip_len);
             }
             set_dq7(pfl, 0x00);
             /* Wait the time specified at CFI address 0x22. */
             timer_mod(&pfl->timer, qemu_clock_get_ns(QEMU_CLOCK_VIRTUAL) +
                       (1ULL << pfl->cfi_table[0x22]) * SCALE_MS);
             break;
         case 0x30: /* Sector erase */
             pflash_sector_erase(pfl, offset);
             break;
         default:
             trace_pflash_write_invalid_command(pfl->name, cmd);
             goto reset_flash;
         }
         pfl->cmd = cmd;
         break;
     case 6:
         switch (pfl->cmd) {
         case 0x10: /* Chip Erase */
             /* Ignore writes during chip erase */
             return;
         case 0x30: /* Sector erase */
             if (cmd == 0xB0) {
                 /*
                  * If erase suspend happens during the erase timeout (so DQ3 is
                  * 0), then the device suspends erasing immediately. Set the
                  * remaining time to be the total time to erase. Otherwise,
                  * there is a maximum amount of time it can take to enter
                  * suspend mode. Let's ignore that and suspend immediately and
                  * set the remaining time to the actual time remaining on the
                  * timer.
                  */
                 if ((pfl->status & 0x08) == 0) {
                     pfl->erase_time_remaining = pflash_erase_time(pfl);
                 } else {
                     int64_t delta = timer_expire_time_ns(&pfl->timer) -
                         qemu_clock_get_ns(QEMU_CLOCK_VIRTUAL);
                     /* Make sure we have a positive time remaining. */
                     pfl->erase_time_remaining = delta <= 0 ? 1 : delta;
                 }
                 reset_dq3(pfl);
                 timer_del(&pfl->timer);
                 pflash_reset_state_machine(pfl);
                 return;
             }
             /*
              * If DQ3 is 0, additional sector erase commands can be
              * written and anything else (other than an erase suspend) resets
              * the device.
              */
             if ((pfl->status & 0x08) == 0) {
                 if (cmd == 0x30) {
                     pflash_sector_erase(pfl, offset);
                 } else {
                     goto reset_flash;
                 }
             }
             /* Ignore writes during the actual erase. */
             return;
         default:
             /* Should never happen */
             trace_pflash_write_invalid_state(pfl->name, pfl->cmd, 6);
             goto reset_flash;
         }
         break;
     /* Special values for CFI queries */
     case WCYCLE_CFI:
     case WCYCLE_AUTOSELECT_CFI:
         trace_pflash_write(pfl->name, "invalid write in CFI query mode");
         goto reset_flash;
     default:
         /* Should never happen */
         trace_pflash_write(pfl->name, "invalid write state (wc 7)");
         goto reset_flash;
     }
     pfl->wcycle++;
 
     return;
 
     /* Reset flash */
  reset_flash:
     pfl->bypass = 0;
     pflash_reset_state_machine(pfl);
     return;
 
  do_bypass:
     pfl->wcycle = 2;
     pfl->cmd = 0;
 }
-- 
2.39.2



From xen-devel-bounces@lists.xenproject.org Fri Oct 13 08:36:44 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 08:36:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616274.958180 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrDez-00071c-TD; Fri, 13 Oct 2023 08:36:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616274.958180; Fri, 13 Oct 2023 08: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 1qrDez-000702-Oz; Fri, 13 Oct 2023 08:36:41 +0000
Received: by outflank-mailman (input) for mailman id 616274;
 Fri, 13 Oct 2023 07:58: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=XgWV=F3=linaro.org=manos.pitsidianakis@srs-se1.protection.inumbo.net>)
 id 1qrD3q-0008Gq-J2
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 07:58:18 +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 429e3d25-699e-11ee-9b0e-b553b5be7939;
 Fri, 13 Oct 2023 09:58:14 +0200 (CEST)
Received: by mail-wm1-x336.google.com with SMTP id
 5b1f17b1804b1-4060b623e64so11590945e9.0
 for <xen-devel@lists.xenproject.org>; Fri, 13 Oct 2023 00:58:14 -0700 (PDT)
Received: from localhost.localdomain (adsl-26.37.6.0.tellas.gr. [37.6.0.26])
 by smtp.gmail.com with ESMTPSA id
 a10-20020a05600c224a00b003fe23b10fdfsm1798183wmm.36.2023.10.13.00.58.11
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Fri, 13 Oct 2023 00:58: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: 429e3d25-699e-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=linaro.org; s=google; t=1697183893; x=1697788693; 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=26XmJrmy0yeQL+itGkgyNTL5y2J9dMpEXdNv7ZAQr48=;
        b=UzzgpqjUAziURuzBdATclQTFJ7iw7K5yPuZYWlgsNZDsunCjVQoR2EvDkq82pE7ZsR
         xguGljJkveodqpTGkCBGErhG/F8tOhlvLgiajEpQKHHV4zaVaEALKTUV9RjchsYNU8K2
         x3LREiAJQkclbpvChwWHsU2XTZZB6gXmk0y9Z70E2xk+UUaWQ4FhQJLOeUDgu/kSI4Wq
         rgie6mMzvQZv/U7zf37it57zYJ2QCR4FXvnRv5dWsXDbt4gTrn5OT21KRQq/9dj9tx9t
         Q4QjJAYkcWhHbYfNBJRr1+gYMw7DDY6JXiOmOpbmlwvSJWA2mfoJUvqYQjIVkUXfsA/h
         ZwYw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697183893; x=1697788693;
        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=26XmJrmy0yeQL+itGkgyNTL5y2J9dMpEXdNv7ZAQr48=;
        b=bFw4NiX72RSmSS38MCYNFNGL5kDz1INhOgriXfmag8VBU0mY30DK13TEa1a0YiV/AK
         vmzr/ddixIKYKrII9Ej3ArWWBKnmMLwXWwCi7MCEwYcQ75wIpkxMBAZWIPbHr+ef0uEv
         ujHO4JwVmU18lx1cb/Hu6Iy3FfzF2QMSmC+PLxYqGd6P3KZ/uegLk6iaIqI9UarWT290
         pVWqXmbHfCalj+bWVDk79MrwnwvB8Zl9E3/M5V3IT1Qv/waU611zzA0f34XjmDLBiPg/
         QZiUx89j52DyToMTCDQADbABI4FEFcPI0wWBzw6KjHMO9KUKwKx7RKGvzgi0JYbrSY1a
         d9HA==
X-Gm-Message-State: AOJu0YyaruxzDgS9SC4+Giio1PxIkgroSCSfcwmOYz9afwBlTCAq5Bhd
	Jy/XCslKnF0WnPOw/uTsURsvlQ==
X-Google-Smtp-Source: AGHT+IFPp/vslpqtiq6MhCP5bCFD2mV7aQKOj1sYJ7qIAvuG33PUl/ItLll0JRAfcAt73agowriq2w==
X-Received: by 2002:a05:600c:450a:b0:401:c7ec:b930 with SMTP id t10-20020a05600c450a00b00401c7ecb930mr18118050wmo.10.1697183893283;
        Fri, 13 Oct 2023 00:58:13 -0700 (PDT)
From: Emmanouil Pitsidianakis <manos.pitsidianakis@linaro.org>
To: qemu-devel@nongnu.org
Cc: Emmanouil Pitsidianakis <manos.pitsidianakis@linaro.org>,
	Stefan Hajnoczi <stefanha@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	Kevin Wolf <kwolf@redhat.com>,
	Hanna Reitz <hreitz@redhat.com>,
	Alistair Francis <alistair@alistair23.me>,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
	qemu-block@nongnu.org (open list:virtio-blk),
	xen-devel@lists.xenproject.org (open list:X86 Xen CPUs)
Subject: [RFC PATCH v2 08/78] hw/block: add fallthrough pseudo-keyword
Date: Fri, 13 Oct 2023 10:56:35 +0300
Message-Id: <23f52f392ad16af6ae923fae526b7c13daf2a0e2.1697183699.git.manos.pitsidianakis@linaro.org>
X-Mailer: git-send-email 2.39.2
In-Reply-To: <cover.1697183699.git.manos.pitsidianakis@linaro.org>
References: <cover.1697183699.git.manos.pitsidianakis@linaro.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

In preparation of raising -Wimplicit-fallthrough to 5, replace all
fall-through comments with the fallthrough attribute pseudo-keyword.

Signed-off-by: Emmanouil Pitsidianakis <manos.pitsidianakis@linaro.org>
---
 hw/block/dataplane/xen-block.c | 4 ++--
 hw/block/m25p80.c              | 2 +-
 hw/block/onenand.c             | 2 +-
 hw/block/pflash_cfi01.c        | 1 +
 hw/block/pflash_cfi02.c        | 6 ++++--
 5 files changed, 9 insertions(+), 6 deletions(-)

diff --git a/hw/block/dataplane/xen-block.c b/hw/block/dataplane/xen-block.c
index 3b6f2b0aa2..1ae25a73b2 100644
--- a/hw/block/dataplane/xen-block.c
+++ b/hw/block/dataplane/xen-block.c
@@ -144,59 +144,59 @@ static void xen_block_complete_request(XenBlockRequest *request)
 /*
  * translate request into iovec + start offset
  * do sanity checks along the way
  */
 static int xen_block_parse_request(XenBlockRequest *request)
 {
     XenBlockDataPlane *dataplane = request->dataplane;
     size_t len;
     int i;
 
     switch (request->req.operation) {
     case BLKIF_OP_READ:
         break;
     case BLKIF_OP_FLUSH_DISKCACHE:
         request->presync = 1;
         if (!request->req.nr_segments) {
             return 0;
         }
-        /* fall through */
+        fallthrough;
     case BLKIF_OP_WRITE:
         break;
     case BLKIF_OP_DISCARD:
         return 0;
     default:
         error_report("error: unknown operation (%d)", request->req.operation);
         goto err;
     };
 
     if (request->req.operation != BLKIF_OP_READ &&
         !blk_is_writable(dataplane->blk)) {
         error_report("error: write req for ro device");
         goto err;
     }
 
     request->start = request->req.sector_number * dataplane->sector_size;
     for (i = 0; i < request->req.nr_segments; i++) {
         if (i == BLKIF_MAX_SEGMENTS_PER_REQUEST) {
             error_report("error: nr_segments too big");
             goto err;
         }
         if (request->req.seg[i].first_sect > request->req.seg[i].last_sect) {
             error_report("error: first > last sector");
             goto err;
         }
         if (request->req.seg[i].last_sect * dataplane->sector_size >=
             XEN_PAGE_SIZE) {
             error_report("error: page crossing");
             goto err;
         }
 
         len = (request->req.seg[i].last_sect -
                request->req.seg[i].first_sect + 1) * dataplane->sector_size;
         request->size += len;
     }
     if (request->start + request->size > blk_getlength(dataplane->blk)) {
         error_report("error: access beyond end of file");
         goto err;
     }
     return 0;
@@ -257,63 +257,63 @@ static int xen_block_do_aio(XenBlockRequest *request);
 static void xen_block_complete_aio(void *opaque, int ret)
 {
     XenBlockRequest *request = opaque;
     XenBlockDataPlane *dataplane = request->dataplane;
 
     aio_context_acquire(dataplane->ctx);
 
     if (ret != 0) {
         error_report("%s I/O error",
                      request->req.operation == BLKIF_OP_READ ?
                      "read" : "write");
         request->aio_errors++;
     }
 
     request->aio_inflight--;
     if (request->presync) {
         request->presync = 0;
         xen_block_do_aio(request);
         goto done;
     }
     if (request->aio_inflight > 0) {
         goto done;
     }
 
     switch (request->req.operation) {
     case BLKIF_OP_READ:
         /* in case of failure request->aio_errors is increased */
         if (ret == 0) {
             xen_block_copy_request(request);
         }
         break;
     case BLKIF_OP_WRITE:
     case BLKIF_OP_FLUSH_DISKCACHE:
     default:
         break;
     }
 
     request->status = request->aio_errors ? BLKIF_RSP_ERROR : BLKIF_RSP_OKAY;
 
     switch (request->req.operation) {
     case BLKIF_OP_WRITE:
     case BLKIF_OP_FLUSH_DISKCACHE:
         if (!request->req.nr_segments) {
             break;
         }
-        /* fall through */
+        fallthrough;
     case BLKIF_OP_READ:
         if (request->status == BLKIF_RSP_OKAY) {
             block_acct_done(blk_get_stats(dataplane->blk), &request->acct);
         } else {
             block_acct_failed(blk_get_stats(dataplane->blk), &request->acct);
         }
         break;
     case BLKIF_OP_DISCARD:
     default:
         break;
     }
 
     xen_block_complete_request(request);
 
     if (dataplane->more_work) {
         qemu_bh_schedule(dataplane->bh);
     }
diff --git a/hw/block/m25p80.c b/hw/block/m25p80.c
index afc3fdf4d6..523c34da71 100644
--- a/hw/block/m25p80.c
+++ b/hw/block/m25p80.c
@@ -1117,360 +1117,360 @@ static bool is_valid_aai_cmd(uint32_t cmd)
 static void decode_new_cmd(Flash *s, uint32_t value)
 {
     int i;
 
     s->cmd_in_progress = value;
     trace_m25p80_command_decoded(s, value);
 
     if (value != RESET_MEMORY) {
         s->reset_enable = false;
     }
 
     if (get_man(s) == MAN_SST && s->aai_enable && !is_valid_aai_cmd(value)) {
         qemu_log_mask(LOG_GUEST_ERROR,
                       "M25P80: Invalid cmd within AAI programming sequence");
     }
 
     switch (value) {
 
     case ERASE_4K:
     case ERASE4_4K:
     case ERASE_32K:
     case ERASE4_32K:
     case ERASE_SECTOR:
     case ERASE4_SECTOR:
     case PP:
     case PP4:
     case DIE_ERASE:
     case RDID_90:
     case RDID_AB:
         s->needed_bytes = get_addr_length(s);
         s->pos = 0;
         s->len = 0;
         s->state = STATE_COLLECTING_DATA;
         break;
     case READ:
     case READ4:
         if (get_man(s) != MAN_NUMONYX || numonyx_mode(s) == MODE_STD) {
             s->needed_bytes = get_addr_length(s);
             s->pos = 0;
             s->len = 0;
             s->state = STATE_COLLECTING_DATA;
         } else {
             qemu_log_mask(LOG_GUEST_ERROR, "M25P80: Cannot execute cmd %x in "
                           "DIO or QIO mode\n", s->cmd_in_progress);
         }
         break;
     case DPP:
         if (get_man(s) != MAN_NUMONYX || numonyx_mode(s) != MODE_QIO) {
             s->needed_bytes = get_addr_length(s);
             s->pos = 0;
             s->len = 0;
             s->state = STATE_COLLECTING_DATA;
         } else {
             qemu_log_mask(LOG_GUEST_ERROR, "M25P80: Cannot execute cmd %x in "
                           "QIO mode\n", s->cmd_in_progress);
         }
         break;
     case QPP:
     case QPP_4:
     case PP4_4:
         if (get_man(s) != MAN_NUMONYX || numonyx_mode(s) != MODE_DIO) {
             s->needed_bytes = get_addr_length(s);
             s->pos = 0;
             s->len = 0;
             s->state = STATE_COLLECTING_DATA;
         } else {
             qemu_log_mask(LOG_GUEST_ERROR, "M25P80: Cannot execute cmd %x in "
                           "DIO mode\n", s->cmd_in_progress);
         }
         break;
 
     case FAST_READ:
     case FAST_READ4:
         decode_fast_read_cmd(s);
         break;
     case DOR:
     case DOR4:
         if (get_man(s) != MAN_NUMONYX || numonyx_mode(s) != MODE_QIO) {
             decode_fast_read_cmd(s);
         } else {
             qemu_log_mask(LOG_GUEST_ERROR, "M25P80: Cannot execute cmd %x in "
                           "QIO mode\n", s->cmd_in_progress);
         }
         break;
     case QOR:
     case QOR4:
         if (get_man(s) != MAN_NUMONYX || numonyx_mode(s) != MODE_DIO) {
             decode_fast_read_cmd(s);
         } else {
             qemu_log_mask(LOG_GUEST_ERROR, "M25P80: Cannot execute cmd %x in "
                           "DIO mode\n", s->cmd_in_progress);
         }
         break;
 
     case DIOR:
     case DIOR4:
         if (get_man(s) != MAN_NUMONYX || numonyx_mode(s) != MODE_QIO) {
             decode_dio_read_cmd(s);
         } else {
             qemu_log_mask(LOG_GUEST_ERROR, "M25P80: Cannot execute cmd %x in "
                           "QIO mode\n", s->cmd_in_progress);
         }
         break;
 
     case QIOR:
     case QIOR4:
         if (get_man(s) != MAN_NUMONYX || numonyx_mode(s) != MODE_DIO) {
             decode_qio_read_cmd(s);
         } else {
             qemu_log_mask(LOG_GUEST_ERROR, "M25P80: Cannot execute cmd %x in "
                           "DIO mode\n", s->cmd_in_progress);
         }
         break;
 
     case WRSR:
         /*
          * If WP# is low and status_register_write_disabled is high,
          * status register writes are disabled.
          * This is also called "hardware protected mode" (HPM). All other
          * combinations of the two states are called "software protected mode"
          * (SPM), and status register writes are permitted.
          */
         if ((s->wp_level == 0 && s->status_register_write_disabled)
             || !s->write_enable) {
             qemu_log_mask(LOG_GUEST_ERROR,
                           "M25P80: Status register write is disabled!\n");
             break;
         }
 
         switch (get_man(s)) {
         case MAN_SPANSION:
             s->needed_bytes = 2;
             s->state = STATE_COLLECTING_DATA;
             break;
         case MAN_MACRONIX:
             s->needed_bytes = 2;
             s->state = STATE_COLLECTING_VAR_LEN_DATA;
             break;
         default:
             s->needed_bytes = 1;
             s->state = STATE_COLLECTING_DATA;
         }
         s->pos = 0;
         break;
 
     case WRDI:
         s->write_enable = false;
         if (get_man(s) == MAN_SST) {
             s->aai_enable = false;
         }
         break;
     case WREN:
         s->write_enable = true;
         break;
 
     case RDSR:
         s->data[0] = (!!s->write_enable) << 1;
         s->data[0] |= (!!s->status_register_write_disabled) << 7;
         s->data[0] |= (!!s->block_protect0) << 2;
         s->data[0] |= (!!s->block_protect1) << 3;
         s->data[0] |= (!!s->block_protect2) << 4;
         if (s->pi->flags & HAS_SR_TB) {
             s->data[0] |= (!!s->top_bottom_bit) << 5;
         }
         if (s->pi->flags & HAS_SR_BP3_BIT6) {
             s->data[0] |= (!!s->block_protect3) << 6;
         }
 
         if (get_man(s) == MAN_MACRONIX || get_man(s) == MAN_ISSI) {
             s->data[0] |= (!!s->quad_enable) << 6;
         }
         if (get_man(s) == MAN_SST) {
             s->data[0] |= (!!s->aai_enable) << 6;
         }
 
         s->pos = 0;
         s->len = 1;
         s->data_read_loop = true;
         s->state = STATE_READING_DATA;
         break;
 
     case READ_FSR:
         s->data[0] = FSR_FLASH_READY;
         if (s->four_bytes_address_mode) {
             s->data[0] |= FSR_4BYTE_ADDR_MODE_ENABLED;
         }
         s->pos = 0;
         s->len = 1;
         s->data_read_loop = true;
         s->state = STATE_READING_DATA;
         break;
 
     case JEDEC_READ:
         if (get_man(s) != MAN_NUMONYX || numonyx_mode(s) == MODE_STD) {
             trace_m25p80_populated_jedec(s);
             for (i = 0; i < s->pi->id_len; i++) {
                 s->data[i] = s->pi->id[i];
             }
             for (; i < SPI_NOR_MAX_ID_LEN; i++) {
                 s->data[i] = 0;
             }
 
             s->len = SPI_NOR_MAX_ID_LEN;
             s->pos = 0;
             s->state = STATE_READING_DATA;
         } else {
             qemu_log_mask(LOG_GUEST_ERROR, "M25P80: Cannot execute JEDEC read "
                           "in DIO or QIO mode\n");
         }
         break;
 
     case RDCR:
         s->data[0] = s->volatile_cfg & 0xFF;
         s->data[0] |= (!!s->four_bytes_address_mode) << 5;
         s->pos = 0;
         s->len = 1;
         s->state = STATE_READING_DATA;
         break;
 
     case BULK_ERASE_60:
     case BULK_ERASE:
         if (s->write_enable) {
             trace_m25p80_chip_erase(s);
             flash_erase(s, 0, BULK_ERASE);
         } else {
             qemu_log_mask(LOG_GUEST_ERROR, "M25P80: chip erase with write "
                           "protect!\n");
         }
         break;
     case NOP:
         break;
     case EN_4BYTE_ADDR:
         s->four_bytes_address_mode = true;
         break;
     case EX_4BYTE_ADDR:
         s->four_bytes_address_mode = false;
         break;
     case BRRD:
     case EXTEND_ADDR_READ:
         s->data[0] = s->ear;
         s->pos = 0;
         s->len = 1;
         s->state = STATE_READING_DATA;
         break;
     case BRWR:
     case EXTEND_ADDR_WRITE:
         if (s->write_enable) {
             s->needed_bytes = 1;
             s->pos = 0;
             s->len = 0;
             s->state = STATE_COLLECTING_DATA;
         }
         break;
     case RNVCR:
         s->data[0] = s->nonvolatile_cfg & 0xFF;
         s->data[1] = (s->nonvolatile_cfg >> 8) & 0xFF;
         s->pos = 0;
         s->len = 2;
         s->state = STATE_READING_DATA;
         break;
     case WNVCR:
         if (s->write_enable && get_man(s) == MAN_NUMONYX) {
             s->needed_bytes = 2;
             s->pos = 0;
             s->len = 0;
             s->state = STATE_COLLECTING_DATA;
         }
         break;
     case RVCR:
         s->data[0] = s->volatile_cfg & 0xFF;
         s->pos = 0;
         s->len = 1;
         s->state = STATE_READING_DATA;
         break;
     case WVCR:
         if (s->write_enable) {
             s->needed_bytes = 1;
             s->pos = 0;
             s->len = 0;
             s->state = STATE_COLLECTING_DATA;
         }
         break;
     case REVCR:
         s->data[0] = s->enh_volatile_cfg & 0xFF;
         s->pos = 0;
         s->len = 1;
         s->state = STATE_READING_DATA;
         break;
     case WEVCR:
         if (s->write_enable) {
             s->needed_bytes = 1;
             s->pos = 0;
             s->len = 0;
             s->state = STATE_COLLECTING_DATA;
         }
         break;
     case RESET_ENABLE:
         s->reset_enable = true;
         break;
     case RESET_MEMORY:
         if (s->reset_enable) {
             reset_memory(s);
         }
         break;
     case RDCR_EQIO:
         switch (get_man(s)) {
         case MAN_SPANSION:
             s->data[0] = (!!s->quad_enable) << 1;
             s->pos = 0;
             s->len = 1;
             s->state = STATE_READING_DATA;
             break;
         case MAN_MACRONIX:
             s->quad_enable = true;
             break;
         default:
             break;
         }
         break;
     case RSTQIO:
         s->quad_enable = false;
         break;
     case AAI_WP:
         if (get_man(s) == MAN_SST) {
             if (s->write_enable) {
                 if (s->aai_enable) {
                     s->state = STATE_PAGE_PROGRAM;
                 } else {
                     s->aai_enable = true;
                     s->needed_bytes = get_addr_length(s);
                     s->state = STATE_COLLECTING_DATA;
                 }
             } else {
                 qemu_log_mask(LOG_GUEST_ERROR,
                               "M25P80: AAI_WP with write protect\n");
             }
         } else {
             qemu_log_mask(LOG_GUEST_ERROR, "M25P80: Unknown cmd %x\n", value);
         }
         break;
     case RDSFDP:
         if (s->pi->sfdp_read) {
             s->needed_bytes = get_addr_length(s) + 1; /* SFDP addr + dummy */
             s->pos = 0;
             s->len = 0;
             s->state = STATE_COLLECTING_DATA;
             break;
         }
-        /* Fallthrough */
+        fallthrough;
 
     default:
         s->pos = 0;
         s->len = 1;
         s->state = STATE_READING_DATA;
         s->data_read_loop = true;
         s->data[0] = 0;
         qemu_log_mask(LOG_GUEST_ERROR, "M25P80: Unknown cmd %x\n", value);
         break;
     }
 }
diff --git a/hw/block/onenand.c b/hw/block/onenand.c
index 50d3d1c985..87583c48a0 100644
--- a/hw/block/onenand.c
+++ b/hw/block/onenand.c
@@ -406,202 +406,202 @@ fail:
 static void onenand_command(OneNANDState *s)
 {
     int b;
     int sec;
     void *buf;
 #define SETADDR(block, page)                                \
     sec = (s->addr[page] & 3) +                             \
           ((((s->addr[page] >> 2) & 0x3f) +                 \
             (((s->addr[block] & 0xfff) |                    \
               (s->addr[block] >> 15 ? s->density_mask : 0)) \
              << 6))                                         \
            << (PAGE_SHIFT - 9));
 #define SETBUF_M()                                                           \
     buf = (s->bufaddr & 8) ? s->data[(s->bufaddr >> 2) & 1][0] : s->boot[0]; \
     buf += (s->bufaddr & 3) << 9;
 #define SETBUF_S()                                          \
     buf = (s->bufaddr & 8) ?                                \
             s->data[(s->bufaddr >> 2) & 1][1] : s->boot[1]; \
     buf += (s->bufaddr & 3) << 4;
 
     switch (s->command) {
     case 0x00:  /* Load single/multiple sector data unit into buffer */
         SETADDR(ONEN_BUF_BLOCK, ONEN_BUF_PAGE)
 
         SETBUF_M()
         if (onenand_load_main(s, sec, s->count, buf))
             s->status |= ONEN_ERR_CMD | ONEN_ERR_LOAD;
 
 #if 0
         SETBUF_S()
         if (onenand_load_spare(s, sec, s->count, buf))
             s->status |= ONEN_ERR_CMD | ONEN_ERR_LOAD;
 #endif
 
         /* TODO: if (s->bufaddr & 3) + s->count was > 4 (2k-pages)
          * or    if (s->bufaddr & 1) + s->count was > 2 (1k-pages)
          * then we need two split the read/write into two chunks.
          */
         s->intstatus |= ONEN_INT | ONEN_INT_LOAD;
         break;
     case 0x13:  /* Load single/multiple spare sector into buffer */
         SETADDR(ONEN_BUF_BLOCK, ONEN_BUF_PAGE)
 
         SETBUF_S()
         if (onenand_load_spare(s, sec, s->count, buf))
             s->status |= ONEN_ERR_CMD | ONEN_ERR_LOAD;
 
         /* TODO: if (s->bufaddr & 3) + s->count was > 4 (2k-pages)
          * or    if (s->bufaddr & 1) + s->count was > 2 (1k-pages)
          * then we need two split the read/write into two chunks.
          */
         s->intstatus |= ONEN_INT | ONEN_INT_LOAD;
         break;
     case 0x80:  /* Program single/multiple sector data unit from buffer */
         SETADDR(ONEN_BUF_BLOCK, ONEN_BUF_PAGE)
 
         SETBUF_M()
         if (onenand_prog_main(s, sec, s->count, buf))
             s->status |= ONEN_ERR_CMD | ONEN_ERR_PROG;
 
 #if 0
         SETBUF_S()
         if (onenand_prog_spare(s, sec, s->count, buf))
             s->status |= ONEN_ERR_CMD | ONEN_ERR_PROG;
 #endif
 
         /* TODO: if (s->bufaddr & 3) + s->count was > 4 (2k-pages)
          * or    if (s->bufaddr & 1) + s->count was > 2 (1k-pages)
          * then we need two split the read/write into two chunks.
          */
         s->intstatus |= ONEN_INT | ONEN_INT_PROG;
         break;
     case 0x1a:  /* Program single/multiple spare area sector from buffer */
         SETADDR(ONEN_BUF_BLOCK, ONEN_BUF_PAGE)
 
         SETBUF_S()
         if (onenand_prog_spare(s, sec, s->count, buf))
             s->status |= ONEN_ERR_CMD | ONEN_ERR_PROG;
 
         /* TODO: if (s->bufaddr & 3) + s->count was > 4 (2k-pages)
          * or    if (s->bufaddr & 1) + s->count was > 2 (1k-pages)
          * then we need two split the read/write into two chunks.
          */
         s->intstatus |= ONEN_INT | ONEN_INT_PROG;
         break;
     case 0x1b:  /* Copy-back program */
         SETBUF_S()
 
         SETADDR(ONEN_BUF_BLOCK, ONEN_BUF_PAGE)
         if (onenand_load_main(s, sec, s->count, buf))
             s->status |= ONEN_ERR_CMD | ONEN_ERR_PROG;
 
         SETADDR(ONEN_BUF_DEST_BLOCK, ONEN_BUF_DEST_PAGE)
         if (onenand_prog_main(s, sec, s->count, buf))
             s->status |= ONEN_ERR_CMD | ONEN_ERR_PROG;
 
         /* TODO: spare areas */
 
         s->intstatus |= ONEN_INT | ONEN_INT_PROG;
         break;
 
     case 0x23:  /* Unlock NAND array block(s) */
         s->intstatus |= ONEN_INT;
 
         /* XXX the previous (?) area should be locked automatically */
         for (b = s->unladdr[0]; b <= s->unladdr[1]; b ++) {
             if (b >= s->blocks) {
                 s->status |= ONEN_ERR_CMD;
                 break;
             }
             if (s->blockwp[b] == ONEN_LOCK_LOCKTIGHTEN)
                 break;
 
             s->wpstatus = s->blockwp[b] = ONEN_LOCK_UNLOCKED;
         }
         break;
     case 0x27:  /* Unlock All NAND array blocks */
         s->intstatus |= ONEN_INT;
 
         for (b = 0; b < s->blocks; b ++) {
             if (s->blockwp[b] == ONEN_LOCK_LOCKTIGHTEN)
                 break;
 
             s->wpstatus = s->blockwp[b] = ONEN_LOCK_UNLOCKED;
         }
         break;
 
     case 0x2a:  /* Lock NAND array block(s) */
         s->intstatus |= ONEN_INT;
 
         for (b = s->unladdr[0]; b <= s->unladdr[1]; b ++) {
             if (b >= s->blocks) {
                 s->status |= ONEN_ERR_CMD;
                 break;
             }
             if (s->blockwp[b] == ONEN_LOCK_LOCKTIGHTEN)
                 break;
 
             s->wpstatus = s->blockwp[b] = ONEN_LOCK_LOCKED;
         }
         break;
     case 0x2c:  /* Lock-tight NAND array block(s) */
         s->intstatus |= ONEN_INT;
 
         for (b = s->unladdr[0]; b <= s->unladdr[1]; b ++) {
             if (b >= s->blocks) {
                 s->status |= ONEN_ERR_CMD;
                 break;
             }
             if (s->blockwp[b] == ONEN_LOCK_UNLOCKED)
                 continue;
 
             s->wpstatus = s->blockwp[b] = ONEN_LOCK_LOCKTIGHTEN;
         }
         break;
 
     case 0x71:  /* Erase-Verify-Read */
         s->intstatus |= ONEN_INT;
         break;
     case 0x95:  /* Multi-block erase */
         qemu_irq_pulse(s->intr);
-        /* Fall through.  */
+        fallthrough;
     case 0x94:  /* Block erase */
         sec = ((s->addr[ONEN_BUF_BLOCK] & 0xfff) |
                         (s->addr[ONEN_BUF_BLOCK] >> 15 ? s->density_mask : 0))
                 << (BLOCK_SHIFT - 9);
         if (onenand_erase(s, sec, 1 << (BLOCK_SHIFT - 9)))
             s->status |= ONEN_ERR_CMD | ONEN_ERR_ERASE;
 
         s->intstatus |= ONEN_INT | ONEN_INT_ERASE;
         break;
     case 0xb0:  /* Erase suspend */
         break;
     case 0x30:  /* Erase resume */
         s->intstatus |= ONEN_INT | ONEN_INT_ERASE;
         break;
 
     case 0xf0:  /* Reset NAND Flash core */
         onenand_reset(s, 0);
         break;
     case 0xf3:  /* Reset OneNAND */
         onenand_reset(s, 0);
         break;
 
     case 0x65:  /* OTP Access */
         s->intstatus |= ONEN_INT;
         s->blk_cur = NULL;
         s->current = s->otp;
         s->secs_cur = 1 << (BLOCK_SHIFT - 9);
         s->addr[ONEN_BUF_BLOCK] = 0;
         s->otpmode = 1;
         break;
 
     default:
         s->status |= ONEN_ERR_CMD;
         s->intstatus |= ONEN_INT;
         qemu_log_mask(LOG_GUEST_ERROR, "unknown OneNAND command %x\n",
                       s->command);
     }
 
     onenand_intr_update(s);
 }
diff --git a/hw/block/pflash_cfi01.c b/hw/block/pflash_cfi01.c
index 62056b1d74..cb58f08f53 100644
--- a/hw/block/pflash_cfi01.c
+++ b/hw/block/pflash_cfi01.c
@@ -261,123 +261,124 @@ static uint32_t pflash_data_read(PFlashCFI01 *pfl, hwaddr offset,
 static uint32_t pflash_read(PFlashCFI01 *pfl, hwaddr offset,
                             int width, int be)
 {
     hwaddr boff;
     uint32_t ret;
 
     ret = -1;
     switch (pfl->cmd) {
     default:
         /* This should never happen : reset state & treat it as a read */
         trace_pflash_read_unknown_state(pfl->name, pfl->cmd);
         pfl->wcycle = 0;
         /*
          * The command 0x00 is not assigned by the CFI open standard,
          * but QEMU historically uses it for the READ_ARRAY command (0xff).
          */
         pfl->cmd = 0x00;
         /* fall through to read code */
+        fallthrough;
     case 0x00: /* This model reset value for READ_ARRAY (not CFI compliant) */
         /* Flash area read */
         ret = pflash_data_read(pfl, offset, width, be);
         break;
     case 0x10: /* Single byte program */
     case 0x20: /* Block erase */
     case 0x28: /* Block erase */
     case 0x40: /* single byte program */
     case 0x50: /* Clear status register */
     case 0x60: /* Block /un)lock */
     case 0x70: /* Status Register */
     case 0xe8: /* Write block */
         /*
          * Status register read.  Return status from each device in
          * bank.
          */
         ret = pfl->status;
         if (pfl->device_width && width > pfl->device_width) {
             int shift = pfl->device_width * 8;
             while (shift + pfl->device_width * 8 <= width * 8) {
                 ret |= pfl->status << shift;
                 shift += pfl->device_width * 8;
             }
         } else if (!pfl->device_width && width > 2) {
             /*
              * Handle 32 bit flash cases where device width is not
              * set. (Existing behavior before device width added.)
              */
             ret |= pfl->status << 16;
         }
         trace_pflash_read_status(pfl->name, ret);
         break;
     case 0x90:
         if (!pfl->device_width) {
             /* Preserve old behavior if device width not specified */
             boff = offset & 0xFF;
             if (pfl->bank_width == 2) {
                 boff = boff >> 1;
             } else if (pfl->bank_width == 4) {
                 boff = boff >> 2;
             }
 
             switch (boff) {
             case 0:
                 ret = pfl->ident0 << 8 | pfl->ident1;
                 trace_pflash_manufacturer_id(pfl->name, ret);
                 break;
             case 1:
                 ret = pfl->ident2 << 8 | pfl->ident3;
                 trace_pflash_device_id(pfl->name, ret);
                 break;
             default:
                 trace_pflash_device_info(pfl->name, boff);
                 ret = 0;
                 break;
             }
         } else {
             /*
              * If we have a read larger than the bank_width, combine multiple
              * manufacturer/device ID queries into a single response.
              */
             int i;
             for (i = 0; i < width; i += pfl->bank_width) {
                 ret = deposit32(ret, i * 8, pfl->bank_width * 8,
                                 pflash_devid_query(pfl,
                                                  offset + i * pfl->bank_width));
             }
         }
         break;
     case 0x98: /* Query mode */
         if (!pfl->device_width) {
             /* Preserve old behavior if device width not specified */
             boff = offset & 0xFF;
             if (pfl->bank_width == 2) {
                 boff = boff >> 1;
             } else if (pfl->bank_width == 4) {
                 boff = boff >> 2;
             }
 
             if (boff < sizeof(pfl->cfi_table)) {
                 ret = pfl->cfi_table[boff];
             } else {
                 ret = 0;
             }
         } else {
             /*
              * If we have a read larger than the bank_width, combine multiple
              * CFI queries into a single response.
              */
             int i;
             for (i = 0; i < width; i += pfl->bank_width) {
                 ret = deposit32(ret, i * 8, pfl->bank_width * 8,
                                 pflash_cfi_query(pfl,
                                                  offset + i * pfl->bank_width));
             }
         }
 
         break;
     }
     trace_pflash_io_read(pfl->name, offset, width, ret, pfl->cmd, pfl->wcycle);
 
     return ret;
 }
 
 /* update flash content on disk */
diff --git a/hw/block/pflash_cfi02.c b/hw/block/pflash_cfi02.c
index 2a99b286b0..711f978d7c 100644
--- a/hw/block/pflash_cfi02.c
+++ b/hw/block/pflash_cfi02.c
@@ -307,87 +307,89 @@ static bool pflash_sector_is_erasing(PFlashCFI02 *pfl, hwaddr offset)
 static uint64_t pflash_read(void *opaque, hwaddr offset, unsigned int width)
 {
     PFlashCFI02 *pfl = opaque;
     hwaddr boff;
     uint64_t ret;
 
     /* Lazy reset to ROMD mode after a certain amount of read accesses */
     if (!pfl->rom_mode && pfl->wcycle == 0 &&
         ++pfl->read_counter > PFLASH_LAZY_ROMD_THRESHOLD) {
         pflash_mode_read_array(pfl);
     }
     offset &= pfl->chip_len - 1;
     boff = offset & 0xFF;
     if (pfl->width == 2) {
         boff = boff >> 1;
     } else if (pfl->width == 4) {
         boff = boff >> 2;
     }
     switch (pfl->cmd) {
     default:
         /* This should never happen : reset state & treat it as a read*/
         trace_pflash_read_unknown_state(pfl->name, pfl->cmd);
         pflash_reset_state_machine(pfl);
         /* fall through to the read code */
+        fallthrough;
     case 0x80: /* Erase (unlock) */
         /* We accept reads during second unlock sequence... */
     case 0x00:
         if (pflash_erase_suspend_mode(pfl) &&
             pflash_sector_is_erasing(pfl, offset)) {
             /* Toggle bit 2, but not 6. */
             toggle_dq2(pfl);
             /* Status register read */
             ret = pfl->status;
             trace_pflash_read_status(pfl->name, ret);
             break;
         }
         /* Flash area read */
         ret = pflash_data_read(pfl, offset, width);
         break;
     case 0x90: /* flash ID read */
         switch (boff) {
         case 0x00:
         case 0x01:
             ret = boff & 0x01 ? pfl->ident1 : pfl->ident0;
             break;
         case 0x02:
             ret = 0x00; /* Pretend all sectors are unprotected */
             break;
         case 0x0E:
         case 0x0F:
             ret = boff & 0x01 ? pfl->ident3 : pfl->ident2;
             if (ret != (uint8_t)-1) {
                 break;
             }
             /* Fall through to data read. */
+            fallthrough;
         default:
             ret = pflash_data_read(pfl, offset, width);
         }
         trace_pflash_read_done(pfl->name, boff, ret);
         break;
     case 0x10: /* Chip Erase */
     case 0x30: /* Sector Erase */
         /* Toggle bit 2 during erase, but not program. */
         toggle_dq2(pfl);
-        /* fall through */
+        fallthrough;
     case 0xA0: /* Program */
         /* Toggle bit 6 */
         toggle_dq6(pfl);
         /* Status register read */
         ret = pfl->status;
         trace_pflash_read_status(pfl->name, ret);
         break;
     case 0x98:
         /* CFI query mode */
         if (boff < sizeof(pfl->cfi_table)) {
             ret = pfl->cfi_table[boff];
         } else {
             ret = 0;
         }
         break;
     }
     trace_pflash_io_read(pfl->name, offset, width, ret, pfl->cmd, pfl->wcycle);
 
     return ret;
 }
 
 /* update flash content on disk */
@@ -431,277 +433,277 @@ static void pflash_sector_erase(PFlashCFI02 *pfl, hwaddr offset)
 static void pflash_write(void *opaque, hwaddr offset, uint64_t value,
                          unsigned int width)
 {
     PFlashCFI02 *pfl = opaque;
     hwaddr boff;
     uint8_t *p;
     uint8_t cmd;
 
     trace_pflash_io_write(pfl->name, offset, width, value, pfl->wcycle);
     cmd = value;
     if (pfl->cmd != 0xA0) {
         /* Reset does nothing during chip erase and sector erase. */
         if (cmd == 0xF0 && pfl->cmd != 0x10 && pfl->cmd != 0x30) {
             if (pfl->wcycle == WCYCLE_AUTOSELECT_CFI) {
                 /* Return to autoselect mode. */
                 pfl->wcycle = 3;
                 pfl->cmd = 0x90;
                 return;
             }
             goto reset_flash;
         }
     }
     offset &= pfl->chip_len - 1;
 
     boff = offset;
     if (pfl->width == 2) {
         boff = boff >> 1;
     } else if (pfl->width == 4) {
         boff = boff >> 2;
     }
     /* Only the least-significant 11 bits are used in most cases. */
     boff &= 0x7FF;
     switch (pfl->wcycle) {
     case 0:
         /* Set the device in I/O access mode if required */
         if (pfl->rom_mode) {
             pfl->rom_mode = false;
             memory_region_rom_device_set_romd(&pfl->orig_mem, false);
         }
         pfl->read_counter = 0;
         /* We're in read mode */
     check_unlock0:
         if (boff == 0x55 && cmd == 0x98) {
             /* Enter CFI query mode */
             pfl->wcycle = WCYCLE_CFI;
             pfl->cmd = 0x98;
             return;
         }
         /* Handle erase resume in erase suspend mode, otherwise reset. */
         if (cmd == 0x30) { /* Erase Resume */
             if (pflash_erase_suspend_mode(pfl)) {
                 /* Resume the erase. */
                 timer_mod(&pfl->timer, qemu_clock_get_ns(QEMU_CLOCK_VIRTUAL) +
                           pfl->erase_time_remaining);
                 pfl->erase_time_remaining = 0;
                 pfl->wcycle = 6;
                 pfl->cmd = 0x30;
                 set_dq7(pfl, 0x00);
                 assert_dq3(pfl);
                 return;
             }
             goto reset_flash;
         }
         /* Ignore erase suspend. */
         if (cmd == 0xB0) { /* Erase Suspend */
             return;
         }
         if (boff != pfl->unlock_addr0 || cmd != 0xAA) {
             trace_pflash_unlock0_failed(pfl->name, boff,
                                         cmd, pfl->unlock_addr0);
             goto reset_flash;
         }
         trace_pflash_write(pfl->name, "unlock sequence started");
         break;
     case 1:
         /* We started an unlock sequence */
     check_unlock1:
         if (boff != pfl->unlock_addr1 || cmd != 0x55) {
             trace_pflash_unlock1_failed(pfl->name, boff, cmd);
             goto reset_flash;
         }
         trace_pflash_write(pfl->name, "unlock sequence done");
         break;
     case 2:
         /* We finished an unlock sequence */
         if (!pfl->bypass && boff != pfl->unlock_addr0) {
             trace_pflash_write_failed(pfl->name, boff, cmd);
             goto reset_flash;
         }
         switch (cmd) {
         case 0x20:
             pfl->bypass = 1;
             goto do_bypass;
         case 0x80: /* Erase */
         case 0x90: /* Autoselect */
         case 0xA0: /* Program */
             pfl->cmd = cmd;
             trace_pflash_write_start(pfl->name, cmd);
             break;
         default:
             trace_pflash_write_unknown(pfl->name, cmd);
             goto reset_flash;
         }
         break;
     case 3:
         switch (pfl->cmd) {
         case 0x80: /* Erase */
             /* We need another unlock sequence */
             goto check_unlock0;
         case 0xA0: /* Program */
             if (pflash_erase_suspend_mode(pfl) &&
                 pflash_sector_is_erasing(pfl, offset)) {
                 /* Ignore writes to erasing sectors. */
                 if (pfl->bypass) {
                     goto do_bypass;
                 }
                 goto reset_flash;
             }
             trace_pflash_data_write(pfl->name, offset, width, value, 0);
             if (!pfl->ro) {
                 p = (uint8_t *)pfl->storage + offset;
                 if (pfl->be) {
                     uint64_t current = ldn_be_p(p, width);
                     stn_be_p(p, width, current & value);
                 } else {
                     uint64_t current = ldn_le_p(p, width);
                     stn_le_p(p, width, current & value);
                 }
                 pflash_update(pfl, offset, width);
             }
             /*
              * While programming, status bit DQ7 should hold the opposite
              * value from how it was programmed.
              */
             set_dq7(pfl, ~value);
             /* Let's pretend write is immediate */
             if (pfl->bypass)
                 goto do_bypass;
             goto reset_flash;
         case 0x90: /* Autoselect */
             if (pfl->bypass && cmd == 0x00) {
                 /* Unlock bypass reset */
                 goto reset_flash;
             }
             /*
              * We can enter CFI query mode from autoselect mode, but we must
              * return to autoselect mode after a reset.
              */
             if (boff == 0x55 && cmd == 0x98) {
                 /* Enter autoselect CFI query mode */
                 pfl->wcycle = WCYCLE_AUTOSELECT_CFI;
                 pfl->cmd = 0x98;
                 return;
             }
-            /* fall through */
+            fallthrough;
         default:
             trace_pflash_write_invalid(pfl->name, pfl->cmd);
             goto reset_flash;
         }
     case 4:
         switch (pfl->cmd) {
         case 0xA0: /* Program */
             /* Ignore writes while flash data write is occurring */
             /* As we suppose write is immediate, this should never happen */
             return;
         case 0x80: /* Erase */
             goto check_unlock1;
         default:
             /* Should never happen */
             trace_pflash_write_invalid_state(pfl->name, pfl->cmd, 5);
             goto reset_flash;
         }
         break;
     case 5:
         if (pflash_erase_suspend_mode(pfl)) {
             /* Erasing is not supported in erase suspend mode. */
             goto reset_flash;
         }
         switch (cmd) {
         case 0x10: /* Chip Erase */
             if (boff != pfl->unlock_addr0) {
                 trace_pflash_chip_erase_invalid(pfl->name, offset);
                 goto reset_flash;
             }
             /* Chip erase */
             trace_pflash_chip_erase_start(pfl->name);
             if (!pfl->ro) {
                 memset(pfl->storage, 0xff, pfl->chip_len);
                 pflash_update(pfl, 0, pfl->chip_len);
             }
             set_dq7(pfl, 0x00);
             /* Wait the time specified at CFI address 0x22. */
             timer_mod(&pfl->timer, qemu_clock_get_ns(QEMU_CLOCK_VIRTUAL) +
                       (1ULL << pfl->cfi_table[0x22]) * SCALE_MS);
             break;
         case 0x30: /* Sector erase */
             pflash_sector_erase(pfl, offset);
             break;
         default:
             trace_pflash_write_invalid_command(pfl->name, cmd);
             goto reset_flash;
         }
         pfl->cmd = cmd;
         break;
     case 6:
         switch (pfl->cmd) {
         case 0x10: /* Chip Erase */
             /* Ignore writes during chip erase */
             return;
         case 0x30: /* Sector erase */
             if (cmd == 0xB0) {
                 /*
                  * If erase suspend happens during the erase timeout (so DQ3 is
                  * 0), then the device suspends erasing immediately. Set the
                  * remaining time to be the total time to erase. Otherwise,
                  * there is a maximum amount of time it can take to enter
                  * suspend mode. Let's ignore that and suspend immediately and
                  * set the remaining time to the actual time remaining on the
                  * timer.
                  */
                 if ((pfl->status & 0x08) == 0) {
                     pfl->erase_time_remaining = pflash_erase_time(pfl);
                 } else {
                     int64_t delta = timer_expire_time_ns(&pfl->timer) -
                         qemu_clock_get_ns(QEMU_CLOCK_VIRTUAL);
                     /* Make sure we have a positive time remaining. */
                     pfl->erase_time_remaining = delta <= 0 ? 1 : delta;
                 }
                 reset_dq3(pfl);
                 timer_del(&pfl->timer);
                 pflash_reset_state_machine(pfl);
                 return;
             }
             /*
              * If DQ3 is 0, additional sector erase commands can be
              * written and anything else (other than an erase suspend) resets
              * the device.
              */
             if ((pfl->status & 0x08) == 0) {
                 if (cmd == 0x30) {
                     pflash_sector_erase(pfl, offset);
                 } else {
                     goto reset_flash;
                 }
             }
             /* Ignore writes during the actual erase. */
             return;
         default:
             /* Should never happen */
             trace_pflash_write_invalid_state(pfl->name, pfl->cmd, 6);
             goto reset_flash;
         }
         break;
     /* Special values for CFI queries */
     case WCYCLE_CFI:
     case WCYCLE_AUTOSELECT_CFI:
         trace_pflash_write(pfl->name, "invalid write in CFI query mode");
         goto reset_flash;
     default:
         /* Should never happen */
         trace_pflash_write(pfl->name, "invalid write state (wc 7)");
         goto reset_flash;
     }
     pfl->wcycle++;
 
     return;
 
     /* Reset flash */
  reset_flash:
     pfl->bypass = 0;
     pflash_reset_state_machine(pfl);
     return;
 
  do_bypass:
     pfl->wcycle = 2;
     pfl->cmd = 0;
 }
-- 
2.39.2



From xen-devel-bounces@lists.xenproject.org Fri Oct 13 08:39:41 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 08:39:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616304.958192 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrDho-00088C-D0; Fri, 13 Oct 2023 08:39:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616304.958192; Fri, 13 Oct 2023 08: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 1qrDho-000885-AI; Fri, 13 Oct 2023 08:39:36 +0000
Received: by outflank-mailman (input) for mailman id 616304;
 Fri, 13 Oct 2023 08: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=7lwD=F3=citrix.com=prvs=64352611f=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qrDhm-00086a-PU
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 08:39:35 +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 06f0073f-69a4-11ee-9b0e-b553b5be7939;
 Fri, 13 Oct 2023 10:39:32 +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;
 13 Oct 2023 04:39:17 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by BLAPR03MB5619.namprd03.prod.outlook.com (2603:10b6:208:284::16)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.20; Fri, 13 Oct
 2023 08:39:11 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::66ca:3a42:baeb:9ecf]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::66ca:3a42:baeb:9ecf%7]) with mapi id 15.20.6863.043; Fri, 13 Oct 2023
 08:39: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: 06f0073f-69a4-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1697186372;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=c7EfoYkduE1PfTW48mbdm+YVxY7JAtmne8PtVGcLKuI=;
  b=hxsVEeNb14aG46fJT2ZEMXerx0EZp1eDc1LAadF1tzXstwZdP98WFGu4
   Ww7HyWpCgXqCOrDMSoXizoR8Jj2rQiblu8Y4P4RYlVEn86x4g8LMY1TqI
   SydBV1bCvUtTiNLRNH1ZAY0R/+twLFE+jJK8zOW+JuC+k3FuocGU3gpwH
   M=;
X-CSE-ConnectionGUID: 7eg8AQMsRYCz8dtzV/7gwQ==
X-CSE-MsgGUID: W0IjK1HqTA6P1kz+0bybjQ==
X-IronPort-RemoteIP: 104.47.58.101
X-IronPort-MID: 124075992
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:p2bNX684ze4HpGt3nYWVDrUDvX+TJUtcMsCJ2f8bNWPcYEJGY0x3z
 2AcXWDSOP+NMGKmc98gPo6z9BwAuMKDnd83Ggs6rSs8E34SpcT7XtnIdU2Y0wF+jCHgZBk+s
 5hBMImowOQcFCK0SsKFa+C5xZVE/fjVAOK6UKidYnwZqTZMEE8JkQhkl/MynrlmiN24BxLlk
 d7pqojUNUTNNwRcawr40Ird7ks01BjOkGlA5AdnPakQ5Aa2e0Q9V/rzG4ngdxMUfaEMdgKKb
 76r5K20+Grf4yAsBruN+losWhRXKlJ6FVHmZkt+A8BOsDAbzsAB+v9T2M4nQVVWk120c+VZk
 72hg3ASpTABZcUgkMxFO/VR/roX0aduoNcrKlDn2SCfItGvn9IBDJyCAWlvVbD09NqbDkkR+
 PNIAQkodSqyrPDmzK6pdK4zidsaeZyD0IM34hmMzBn/JNN/GdXvZvuP4tVVmjAtmspJAPDSI
 dIDbiZiZwjBZBsJPUoLDJU5n6GjgXyXnz9w8QrJ4/ZopTWDilUpidABM/KMEjCObd9SkUuC4
 HrP4kzyAw0ANczZwj2Amp6prraVwXukBdNDTtVU8NZV2HyR5TUzESE/C2Piouv60kSvUdBmf
 hl8Fi0G6PJaGFaQZsnwWVi0rWCJujYYWsFMCKsq5QeV0K3W7g2FQG8eQVZpSNEgrt5wejUs2
 XeAhdavDjtq2JWXQ3+A8rafrRupJDMYa2QFYEcsUg8t89Tl5oYpgXryos1LFae0ipj5HG/2y
 jXT9Cwm3exL1IgMyrmx+k3Bj3S0vJ/VQwUp5wLRGGW48gd+Y43jbIutgbTG0ct9wE+iZgHpl
 BA5dwK2sLhm4U2l/MBVfNgwIQ==
IronPort-HdrOrdr: A9a23:aamtXah1CwN9qkM5DEIEwNJZLHBQXgcji2hC6mlwRA09TyVXrb
 HWoB19726PtN9xYgBapTnkAsO9qBznhPxICOUqTNCftWrdyQ+VxeNZnOjfKlTbckWUltK1vZ
 0AT0EUMqyJMbEVt7ed3OB6KbodKRu8nZyAtKPxyXFiSA0vTbph4Qd/AgPeP0VqSGB9dP8E/V
 anifavbgDPRUgq
X-Talos-CUID: 9a23:tq2LNm4NCkTwlWkl/dssq0MbSukcV2bn/VzCc0OkG1guF7KKcArF
X-Talos-MUID: =?us-ascii?q?9a23=3ATEke3g4gXEt9UDXrWhGSRbtBxoxXu4WsKxktiKk?=
 =?us-ascii?q?v5fHdNj4zYz2MhjaOF9o=3D?=
X-IronPort-AV: E=Sophos;i="6.03,221,1694750400"; 
   d="scan'208";a="124075992"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Jme79cMo7mnheU5TtbBif1Zc9VAkmXCE/xNKHF2rOc29Gk4To5uJyHfjJk0NfmefNkUCT06Ec/0To4QC404KhdwB2HtX7ZFalgWJoWbwPNVXjFNtp/nnv4aosr4kQ0IJDGgqRkaDtZ9I6hfaCx6r1NeuzVY8wdo/RvLwhUyauGXUWXxNH7TJnFsvFLG3FKavLkWVDc1eyWnz48/en5UqJ4PLCiXHJqaeRLSaN9f1s9Fse6jcHIhwdHxkBB5Nob0EL5Hi2vxQzso9C+BlcqggeHgNYwVrmvkXfYSk67bxEBi1nfsvQt5pm1j7zF+BdrNPjsZ5XFmsyITY70YBgvlkRA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=WAz2JN0rYbUVd5x3P19thJgrMi56GH+1plfczujJ+hI=;
 b=Mw+n542qc7H/Zab0Jf4/WAyEBr62hzLMJYh1O/TFbeXm/6F9cAw2qHZPh2sJZ3q/z6GTef6HLYq+N+KctC8RIaKHqs5gdOq8CptuH7JbMyw3KUdIj2Y3P0l9zMGMp5sdNZ/gurMOmhEXDkU/2uOYuTmyRkKc9CLySXUo7jGZxlfzG0aSFtYPmZwdaOR+2MEYF30giZgYp+AOECp6psVVGkNQnPlzVF61AWsyTHURLUOnMdIRECMdYEhMhUXiHhC0k7spC70MX94GAZVxRQPKL30AbH0Cb9p4dJWRf34H/xp5UkU4So0PRX8QgAthCJxekJAe9UvnxtsGEhI9pcf8ZA==
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=WAz2JN0rYbUVd5x3P19thJgrMi56GH+1plfczujJ+hI=;
 b=wnDg3D++M66vj/mbzskZuk8bnMS6YX6DeGFGEnjs+QuKAC76WyXuOziBDhVwxsomPgTgZEi0Nw/fQrFflwpSM+1rPYfkgjRIiGdTsXvEg4ISs4/qeIuOqcyuMqTgtyXVw/wCmyIQbogv1KfvXSdO1WuwV5radVPSpSISEuitn9w=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Fri, 13 Oct 2023 10:39:06 +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, Henry Wang <Henry.Wang@arm.com>,
	Jan Beulich <jbeulich@suse.com>, Wei Liu <wl@xen.org>
Subject: Re: [PATCH] x86/pvh: fix identity mapping of low 1MB
Message-ID: <ZSkCKkJjcCiJsIGp@macbook>
References: <20231011153756.16714-1-roger.pau@citrix.com>
 <75e8aca0-1e2f-4c19-9fee-20bb4e4ae00f@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <75e8aca0-1e2f-4c19-9fee-20bb4e4ae00f@citrix.com>
X-ClientProxiedBy: LO4P123CA0377.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:18e::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_|BLAPR03MB5619:EE_
X-MS-Office365-Filtering-Correlation-Id: ee5448c8-73e2-43e9-cef9-08dbcbc7df83
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:
	ucUKt87BtsHeWI2yN89tPb7ptLR1YFvXI1qtRhekxq1UgCIvY6GdvpYeaYL3A49cfnrM5nEhJFjiZGqtgPjDb9w1JETb+QnKt3qf9GZ7/xtzE2VPevM3bD/l8+zibMKnJJmT4EORbBtzQQdeEr4aDtzO6cbOGwRcu9byxGNly8jDf+g3KVoqxevHrcFApsTaFosS1r/aBK57toKS3AoBQ0zudcv4NzUBglStm4y0sgHTZu3nXpHQSuPw3eMhGlc3/KAwqa0QuTcwC8iP4XXPfdLEQBr3mAKDrcF+d1v0IqVn4cha3Gq54VnUXSDLWQedPgsJUqDgeYr+BnOaLyuz/PWDUAj6unvP3FWcZE8rX49NtbtpS1EQRm7h+QIxIfZdQ9pR2GYZ7bLBaSm0/GFIpfnf9FJX/W5CcjUIFROoybrlvoqi/CV9Y0sypeTapERkpzwmzqv9BMBxIuPGSgZ/XMqgtgnYi/cJ4m870zX9OzC+pKmqDmZAQg9iu3CVJuc257qvYbMxOmWFAHE42nuyGwXWP1x8IixBNaiUUTEMH+5YZ40QlDdLiXxnCH8MY3YY
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)(39860400002)(396003)(136003)(376002)(346002)(230922051799003)(186009)(451199024)(64100799003)(1800799009)(8676002)(316002)(83380400001)(6636002)(26005)(54906003)(66476007)(66946007)(66556008)(41300700001)(6506007)(6666004)(4326008)(5660300002)(478600001)(8936002)(2906002)(9686003)(6862004)(6486002)(82960400001)(53546011)(6512007)(85182001)(38100700002)(33716001)(86362001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?QlYxdTFKWUVDT1NnMnRvRjVvakcydk12aU5IeFNRWmhjbVlwM0dLbVFBTjQ1?=
 =?utf-8?B?OHFXcnozTGFFZ1VtOHEvRGMvcVBoUWg4US9FeVVPd3I3N0JPeHFhb2hiaHBa?=
 =?utf-8?B?M3QwMTBDT2lkSDVYYkNQRE8rb1FZZ2hKR0Z5aDFNZVZCQklBMGVvbk03OEdL?=
 =?utf-8?B?OHR6Mk16MmxCRnlqNW0ydUYvWWMyNUUzOFlnNm9kM2hoNVBMUDRkelBlTytw?=
 =?utf-8?B?ZXFoZmZhVjBzek5iVG50ME14SkM3bWhINFp2TjJNSDdFM3JjL2dSY3gxaUpn?=
 =?utf-8?B?T1RYU3hVaThHdU5uQlQ1N2luNjZUMEo5ZDBldWk4Z09RRXJvNS9IVmMvektF?=
 =?utf-8?B?Sys5aGhleDNsaVl6R2N3MjRMeUUvTzcwOGZTUzlPSWlOU21wazd5QkxjM3dP?=
 =?utf-8?B?T1JZb3FHS0F0YldvZEhnb1lKT050TVVkSTlrVmt4dXJEdkljNUMxQkIxdDBR?=
 =?utf-8?B?R2NYb1E5aTdGcVFyOXNpV2tWcmZad0I5ZjNYOHptUFM2Y3k1dnhOcGtnVEtS?=
 =?utf-8?B?Z2g5Yk90L3VhWHRjVFdJRnNPOXBCRnpSNFBpcjBCamFJSFRKeWVjY1lGYTEw?=
 =?utf-8?B?aUIvY1ZzeUxpNmpuSWpEZHFUcUkrQ0g1WVhscVltQUMvakptdy8zL1l5OU12?=
 =?utf-8?B?Sml5bnVQdllxWlZxdnFPZGpESGpyOFMvN3VtVDNTUUp3VWJCbWk0RENMYVZw?=
 =?utf-8?B?eVV5WXlWaWRtaGUzS1lzWU9UWkpNVmVYTElDNnhyOW5xWDBSclIrNXZXWW9v?=
 =?utf-8?B?aFl6OTFTWU9KWjFmT0tkcjFoYnVFc01aMTJmb1JEd2lIMnJYeForeTlsZ1Rj?=
 =?utf-8?B?QXo3ZTlOVXg2Zk9JaXhoYkJkajRKaThteFdyTHZaditYWXl3ZUMzQUUxTTlh?=
 =?utf-8?B?ZDBtdlRhb0hDSDg3dSt3eXA3ZE8xMlVKR1E3MUE0b284V1NsNXJqUzIxbmlm?=
 =?utf-8?B?VGIyeTJQS2ZPWjM1eGZHUkY3OWtnY2FubUt4dHAxM1NVd0F3TVhNbDdVSzVr?=
 =?utf-8?B?eHlNSjZrdGZJZDNjZjNXSHlvWWo2Z1dRQTdCN0xQR29yTEczMWhKM040R0dM?=
 =?utf-8?B?aGExU2NTQ21kT2JNdzZRVTZqelBzR010MzNhQUNTeWVUbjlaYXU5VDZkZ2ly?=
 =?utf-8?B?b3NWaWlkZk1mUk1kNDRzcWNmUXh3cGpGZGQyc1FCOHUzSkhQbTZCTWZ2bFNB?=
 =?utf-8?B?VFcyL04xY0VtUFlQcHVFMWQvN3B6dEpKdTQwK1NpdFFiUGpvbjkxb3JjVlpj?=
 =?utf-8?B?Y3ZQaFdHVkZERHhlVWpJbUdHUzZMVmh4RjdVaFZDYkdOMllWWVducGhDei9t?=
 =?utf-8?B?c1FUejRJNTRzVlBMdWkrRGVKWm9ZVTVoUk9yanFmSkhsa0dGRkJSdHZ5VVcr?=
 =?utf-8?B?YzFNa2NTNlUwTFl1Tm5KYnlzZ2RDZGhoTnovbGxtdzdMajMvYmRobHhKUElz?=
 =?utf-8?B?N2VuWnhvTnFXL05QbXlTU2s3VGVldU1tQ3VqTGJ2aXFDZitySFZRWjRrb2FD?=
 =?utf-8?B?L25INlhzczJZUm9Xb25sYmljcUFwWEtPU2dONi9QZDZDZmFURFY2ZWJzZWh3?=
 =?utf-8?B?Q0cveDBKUm9pRkUyeDJxRlQzVmN6YVRaSjF0NkhZa2xXQTFSZ0RVN3Q1NEpn?=
 =?utf-8?B?Zm5xUkZ6dERsNUhNdmU4eHU0M3ZMcDBsNkNPUUNkRkVVQ2NvVFVnOWthSDBy?=
 =?utf-8?B?RzdGM1Ezbmo3eG45ZzRhVlg4M3FLTkQ3RGZKeCt2YmRiRFVEeVNRQ1Zqd2hi?=
 =?utf-8?B?ZDJ1Q0hBSVFSQTFjYjRnd1o4ZDdRdFNGTkdaOU5CMDlCUEpxMVppRCtnaTJu?=
 =?utf-8?B?MWlidjFKQTZybWtOMjluYzRXOXFjYWJGVmtwZWZBZGZDZG5kaThnM2swYS8y?=
 =?utf-8?B?WjJKdmhLRWJUUDZhY3JmM2Voc01jRW5LdDZNaWV4RUdJNkJhQnJ2VG5hNlZZ?=
 =?utf-8?B?UC9udHlUSElENXJGalRoNkthbVplZVRRZEdtdUVrNEt6djBFcWZMWVlQZkdF?=
 =?utf-8?B?V3pWWnJYS0M3SEJzMVJuTEdsOGtlemcvODlnL3RkT3MzbnlJdEEvV01WV0dy?=
 =?utf-8?B?K1lzNE5jbFVsam1zdnpkclZBbXNyaGg2eHhwcXgvTWpEUk1zSEZmcWUwVmlD?=
 =?utf-8?Q?ngQ50YrInkHE43LkJYwgwb2dL?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	ib4+1LBmW0NOnsD4seUy9x69K8LDglhDWYkd9oK0ANz9u2kXOrP4KWDm4ew/9nDVp60/buMdFs5pHVXW001IdSoMgAUH3hEXY0hXbs4kRhRYO07iL9K051vG+pH7qUfk1zjQUiYL20VKopgWPrrDbek1Qc3buQ2HZqmjYpM3dRUZ6asNRxYwZeiV0jANYqDFXz+5Tul3iE0j5cxTUKe21QS3RflDdkDgaOGFZtmbycLHzSt3qoC2aqmfffaqfO0BxMcuM92ca4xoStGrHSQas/JA75P80MgkE5ASFotk5QQzhivcEufrm5mafYzDyZQ/obx9N+IMYH3l62gevTo9ZyPDby1V+uyNF+3V4SVmSLj4CAk3nPqbI9W0I5EP2RjcSq6QmxZH3P1GTlGmE69R7bhCxCDtLZVJbKKn7xFgeNb4TTsXZWD9Kq6kRL2JxQjNoJRGnm845oqYpFLEXxOa40aUsfS6GJ9McXjn8rCunOedkd+PV9cAD82IY8FndoodnxKUgUjyXUtJTKbEn6tIfJs3dKVz/kbB/cXTEpKFKBfUjQXLG7A3FFnG8Rq2oQbgYwU0HCiYZ6tLVg0EhrZUKxgKjHOYCHO3FVXZnytRi6dOu8wnub2tu5BPKX1dGnuBhWSujpQtVHLyTxwyGjoqerEl0UItPMjPbCOgqZCxXF2l5eOtQEDbiQzVk8LjEV1LWccSCFXydckv8H6bPXi0no6Z4xFTyL0uqGDBPueZKKy1twiVmCTzEjI0wbqPaAZtPMq1uNBjv7MrAxn1qI1Cup97xFNJiuzT8a7XyBQ5CrfGsCZGNN+lz1lEKN9a4LRbOdKmR4KmUcln7b/OYJmlplCkpRQBAPpaic5kKBHNbS8=
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: ee5448c8-73e2-43e9-cef9-08dbcbc7df83
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Oct 2023 08:39:11.5091
 (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: oe2jlMkCncfbTiuvCdTDXhoTML/5irQG3I2RC+C6hG0eObp6K/vk7rJnnMdHvEvLORflpw0h9XUpp/tG2fvgVg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BLAPR03MB5619

On Thu, Oct 12, 2023 at 12:48:20AM +0800, Andrew Cooper wrote:
> On 11/10/2023 11:37 pm, Roger Pau Monne wrote:
> > The mapping of memory regions below the 1MB mark was all done by the PVH dom0
> > builder code, thus completely avoiding that region in the arch-specific IOMMU
> > hardware domain initialization code.
> 
> This took a while to parse.  I think it would be clearer to say "builder
> code, causing the region to be avoided by the arch ..."

Yes, that's likely better, so:

"The mapping of memory regions below the 1MB mark was all done by the PVH dom0
builder code, causing the region to be avoided by the arch specific IOMMU
hardware domain initialization code."

> >   That lead to the IOMMU being enabled
> > without reserved regions in the low 1MB identity mapped in the p2m for PVH
> > hardware domains.  Firmware with missing RMRR/IVMD ranges that would otherwise
> > be located in the low 1MB would transiently trigger IOMMU faults until the p2m
> > is populated by the PVH dom0 builder:
> 
> "Firmware which happens to be missing RMRR/IVMD ranges describing E820
> reserved regions in the low 1MB would ..." ?

Will adjust.

> > AMD-Vi: IO_PAGE_FAULT: 0000:00:13.1 d0 addr 00000000000eb380 flags 0x20 RW
> > AMD-Vi: IO_PAGE_FAULT: 0000:00:13.1 d0 addr 00000000000eb340 flags 0
> > AMD-Vi: IO_PAGE_FAULT: 0000:00:13.2 d0 addr 00000000000ea1c0 flags 0
> > AMD-Vi: IO_PAGE_FAULT: 0000:00:14.5 d0 addr 00000000000eb480 flags 0x20 RW
> > AMD-Vi: IO_PAGE_FAULT: 0000:00:12.0 d0 addr 00000000000eb080 flags 0x20 RW
> > AMD-Vi: IO_PAGE_FAULT: 0000:00:14.5 d0 addr 00000000000eb400 flags 0
> > AMD-Vi: IO_PAGE_FAULT: 0000:00:12.0 d0 addr 00000000000eb040 flags 0
> >
> > Mostly remove the special handling of the low 1MB done by the PVH dom0 builder,
> > leaving just the data copy between RAM regions.  Otherwise rely on the IOMMU
> > arch init code to create any identity mappings for reserved regions in such
> > range (like it already does for all reserved regions).
> 
> "in such ranges", or in this case "in that range" would be better.  Also
> "for reserved regions elsewhere" IMO.
> 
> Just to confirm, we're saying our default treatment of identity mapping
> e820 reserved regions into the IOMMU is masking (or not) a missing
> RMRR/IVMD entry?

Yes, the provided tables are missing (some?) IVMD region(s) for the
USB devices (the 0xea and 0xeb pages at least, possibly others).  We
identity map reserved regions in the memory map for dom0 in order to
cover up for missing RMRR/IVMD regions, because it's quite common.

> >
> > Note there's a small difference in behavior, as holes in the low 1MB will no
> > longer be identity mapped to the p2m.
> >
> > Fixes: 6b4f6a31ace1 ('x86/PVH: de-duplicate mappings for first Mb of Dom0 memory')
> > Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
> 
> I suppose you intended to mark this for 4.18 as you CC'd Henry, and also
> send it for x86 (CC added)?

I didn't run add_maintainer on it, sorry.

> I'm tempted to commit it based on the diffstat alone.  How do we still
> have so much junk code like this lying around breaking things...
> 
> Anyway - it's a clear improvement.

I've got further improvements in this area, but not 4.18 material,
will try to post them soon anyway.

> But a question first.  Is this from debugging the XSA-442 fallout?  If
> so, it's probably worth mentioning the hardware we saw this on (which
> IIRC was fairly old AMD), and that XSA-442 unmasked a pre-existing bug. 
> And we think it's USB/PS2 emulation?

Yeah, can add this all.  It is triggered by pinot{0,1} which is AMD
Fam15h (AMD Opteron(tm) Processor 3350 HE).

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Fri Oct 13 08:47:38 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 08:47:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616311.958213 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrDpW-0002Cw-Ca; Fri, 13 Oct 2023 08:47:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616311.958213; Fri, 13 Oct 2023 08:47: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 1qrDpW-0002Cn-8u; Fri, 13 Oct 2023 08:47:34 +0000
Received: by outflank-mailman (input) for mailman id 616311;
 Fri, 13 Oct 2023 08:47: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 1qrDpV-0002Cd-8a
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 08:47: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 1qrDpU-0002gw-T8; Fri, 13 Oct 2023 08:47:32 +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 1qrDpU-0002qa-MW; Fri, 13 Oct 2023 08:47: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=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:
	References:Cc:To:From:Subject:MIME-Version:Date:Message-ID;
	bh=UvX11YVf1pUlYkVl2Xg61NZ+dyMvLICUkMDJofb6RBE=; b=n46eLYjI26drwLj4NMQye8m/L9
	J2znjOyAz8epwoLVvWAPOwg9nu0Zoi5TkhY7mO0VOpPJANJa++KNR+wtMZ5COb/LPJ6Du+jESjNrw
	FURf/wFevsrGrq8ry201WoNjUEjkvftT7vC7Rg62KzJbNUsQvQikQVSQPNWD2vrD7KOY=;
Message-ID: <60510bb3-5eac-4944-9954-25f7296421f2@xen.org>
Date: Fri, 13 Oct 2023 09:47:31 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH] xen/arm: Validate generic timer frequency
Content-Language: en-GB
From: Julien Grall <julien@xen.org>
To: Henry Wang <Henry.Wang@arm.com>, Michal Orzel <michal.orzel@amd.com>
Cc: Xen-devel <xen-devel@lists.xenproject.org>,
 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>
 <d406c4c6-07f7-442f-8bef-8ba42308ae93@xen.org>
 <4894d46e-97ab-434f-b637-d516db6564ea@xen.org>
 <75bb3d92-af1c-4165-8ebd-1c17590361cb@amd.com>
 <B95911BA-5965-4100-A1FD-0E687424020B@arm.com>
 <e42ffdda-5460-4692-abdd-20a61b984829@xen.org>
In-Reply-To: <e42ffdda-5460-4692-abdd-20a61b984829@xen.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

Hi,

On 11/10/2023 09:59, Julien Grall wrote:
> 
> 
> On 11/10/2023 08:01, Henry Wang wrote:
>> Hi Michal, Julien,
>>
>>> On Oct 11, 2023, at 14:54, Michal Orzel <michal.orzel@amd.com> wrote:
>>>
>>> Hi Julien, Henry,
>>>
>>> On 10/10/2023 16:48, Julien Grall wrote:
>>>>
>>>>
>>>> (+ Henry)
>>>>
>>>> Hi Michal,
>>>>
>>>> On 29/09/2023 08:38, Julien Grall wrote:
>>>>> 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>
>>>>
>>>> Going through the list of pending patches, I noticed Henry wasn't CCed.
>>>> Is this patch intended for Xen 4.18? If so, can you provide some
>>>> reasoning why would want it?
>>> Strictly speaking, lack of "for-4.18" prefix indicates that I did not 
>>> particularly aim for 4.18.
> 
> I have seen a mix. Hence why I asked in case this was expected. To avoid 
> confusion during the freeze period, I tend to also tag e-mail for the 
> next release (e.g. for-next/for-4.19). So the intention is clear.
> 
>>> Benefits:
>>> - fixes the invalid logic the consequence of which might result in 
>>> inconsistency when booting
>>>   the same OS as libxl domU and dom0less domU.
>>> - prevents spreading out the error condition (i.e. rate < 1KHZ) that 
>>> can lead to e.g. Xen inability to schedule,
>>>   by panicing with proper msg
>>> Risks:
>>> - early init code, no critical path, in case of an error, panic 
>>> returned with proper msg - no risks AFAICT
>>
>> Thanks for the explanation, this looks like an improvement for the
>> current code to me so I am fine with including it in 4.18
>>
>> Release-acked-by: Henry Wang <Henry.Wang@arm.com>
> 
> Thanks. I will commit the patch later today.

Now committed. Sorry for the delay.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Fri Oct 13 08:47:38 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 08:47:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616310.958203 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrDpU-0001y4-4v; Fri, 13 Oct 2023 08:47:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616310.958203; Fri, 13 Oct 2023 08:47: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 1qrDpU-0001xx-2A; Fri, 13 Oct 2023 08:47:32 +0000
Received: by outflank-mailman (input) for mailman id 616310;
 Fri, 13 Oct 2023 08:47: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=XgWV=F3=linaro.org=manos.pitsidianakis@srs-se1.protection.inumbo.net>)
 id 1qrDpT-0001xr-1h
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 08:47:31 +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 23d0b646-69a5-11ee-9b0e-b553b5be7939;
 Fri, 13 Oct 2023 10:47:28 +0200 (CEST)
Received: by mail-lj1-x232.google.com with SMTP id
 38308e7fff4ca-2c17de836fbso23787811fa.1
 for <xen-devel@lists.xenproject.org>; Fri, 13 Oct 2023 01:47:28 -0700 (PDT)
Received: from localhost.localdomain (adsl-170.109.242.226.tellas.gr.
 [109.242.226.170]) by smtp.gmail.com with ESMTPSA id
 v10-20020a5d678a000000b0032d9f32b96csm569185wru.62.2023.10.13.01.47.26
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Fri, 13 Oct 2023 01:47: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: 23d0b646-69a5-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=linaro.org; s=google; t=1697186848; x=1697791648; 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=JcZTSQIpbpwyV8p0pRSuuu/VA6jNLdNli4zn1qzWBPs=;
        b=FI4i+PcKVTNNACTXf1GRvFqYPJawDbu6OGqMg4rWyu58eIqfDfdHtm95ur2xuwQCvG
         kJu4fv0Q1D1dw7HeyLL873xWegVZ7wqvnTHZxH/X3754osd4jRgcvWJJSYPmJdTRQKkS
         N4k7kOLZtoG1ymBuTYLcahHBFX8Wwr52HsptTbv+5eitSpTIgT59Yidu54BzffjmnU/L
         H3/ZCZXHT9ogIVT0kDjQCAuXUbLOaOOW+m8VmuyE65pAuQ9mmgc9bEUq13knizjOQWml
         jSNXckZiyX2jugBsTByvu9A1sKzFoPbOVgnL8E6KsVGcQE+BP8QDhw5pX25T6d7K2edM
         Ge4g==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697186848; x=1697791648;
        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=JcZTSQIpbpwyV8p0pRSuuu/VA6jNLdNli4zn1qzWBPs=;
        b=eF4vC23nBgo+HA0k3lbM/1RzTJCKtWrmjf13wQKg3d8BIBUn6JFLXPAd5qIH9x5hU2
         wkpMn6U/mgnAQzPIJj+IrKRsNoPIdYdWvaAaz7ZzNlVUQnFYgm2S6Ej71PqMNepe8tML
         SST8Uyed3Ip8KxyYZA2I0SKDEpkqXLbAEBk3I38nzA0Quc6eL1yz/WbHnNL+qQlI88CV
         7K/Dl1ubILXhNFCbvF5jE96qSQZZp9tsAvGYQ3yjBszdclbNlMpAng+WymRN+5eQLbgQ
         Oggno0M+a+025eqnXT07F5ABD6thIl/xQi2cpHcptrD7igdCP7auLLPgqQP0yv/kSoTj
         gA2g==
X-Gm-Message-State: AOJu0YyP0zEFZlzlnqralKQSx0En2/rKNq6/6A+AAOP9z9W62iUucdjw
	vX1c7oJaHqntL6rk3fNoKTxhgg==
X-Google-Smtp-Source: AGHT+IGLuC9HKW/QNYVooLucDlhbrhXRUmiwPIIyaiW89GtG8Q02ZXeqgArmC7ch07Ic5cPqZPab5A==
X-Received: by 2002:a2e:9a84:0:b0:2c2:8e57:24a7 with SMTP id p4-20020a2e9a84000000b002c28e5724a7mr24325725lji.21.1697186848424;
        Fri, 13 Oct 2023 01:47:28 -0700 (PDT)
From: Emmanouil Pitsidianakis <manos.pitsidianakis@linaro.org>
To: qemu-devel@nongnu.org
Cc: Emmanouil Pitsidianakis <manos.pitsidianakis@linaro.org>,
	Stefan Hajnoczi <stefanha@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	Kevin Wolf <kwolf@redhat.com>,
	Hanna Reitz <hreitz@redhat.com>,
	Alistair Francis <alistair@alistair23.me>,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
	qemu-block@nongnu.org (open list:virtio-blk),
	xen-devel@lists.xenproject.org (open list:X86 Xen CPUs)
Subject: [RFC PATCH v3 08/78] hw/block: add fallthrough pseudo-keyword
Date: Fri, 13 Oct 2023 11:45:36 +0300
Message-Id: <88122696480ffb58fa39af81d254aa656afbcd64.1697186560.git.manos.pitsidianakis@linaro.org>
X-Mailer: git-send-email 2.39.2
In-Reply-To: <cover.1697186560.git.manos.pitsidianakis@linaro.org>
References: <cover.1697186560.git.manos.pitsidianakis@linaro.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

In preparation of raising -Wimplicit-fallthrough to 5, replace all
fall-through comments with the fallthrough attribute pseudo-keyword.

Signed-off-by: Emmanouil Pitsidianakis <manos.pitsidianakis@linaro.org>
---
 hw/block/dataplane/xen-block.c | 4 ++--
 hw/block/m25p80.c              | 2 +-
 hw/block/onenand.c             | 2 +-
 hw/block/pflash_cfi01.c        | 1 +
 hw/block/pflash_cfi02.c        | 6 ++++--
 5 files changed, 9 insertions(+), 6 deletions(-)

diff --git a/hw/block/dataplane/xen-block.c b/hw/block/dataplane/xen-block.c
index 3b6f2b0aa2..1ae25a73b2 100644
--- a/hw/block/dataplane/xen-block.c
+++ b/hw/block/dataplane/xen-block.c
@@ -159,7 +159,7 @@ static int xen_block_parse_request(XenBlockRequest *request)
         if (!request->req.nr_segments) {
             return 0;
         }
-        /* fall through */
+        fallthrough;
     case BLKIF_OP_WRITE:
         break;
     case BLKIF_OP_DISCARD:
@@ -299,7 +299,7 @@ static void xen_block_complete_aio(void *opaque, int ret)
         if (!request->req.nr_segments) {
             break;
         }
-        /* fall through */
+        fallthrough;
     case BLKIF_OP_READ:
         if (request->status == BLKIF_RSP_OKAY) {
             block_acct_done(blk_get_stats(dataplane->blk), &request->acct);
diff --git a/hw/block/m25p80.c b/hw/block/m25p80.c
index afc3fdf4d6..523c34da71 100644
--- a/hw/block/m25p80.c
+++ b/hw/block/m25p80.c
@@ -1462,7 +1462,7 @@ static void decode_new_cmd(Flash *s, uint32_t value)
             s->state = STATE_COLLECTING_DATA;
             break;
         }
-        /* Fallthrough */
+        fallthrough;
 
     default:
         s->pos = 0;
diff --git a/hw/block/onenand.c b/hw/block/onenand.c
index 50d3d1c985..87583c48a0 100644
--- a/hw/block/onenand.c
+++ b/hw/block/onenand.c
@@ -564,7 +564,7 @@ static void onenand_command(OneNANDState *s)
         break;
     case 0x95:  /* Multi-block erase */
         qemu_irq_pulse(s->intr);
-        /* Fall through.  */
+        fallthrough;
     case 0x94:  /* Block erase */
         sec = ((s->addr[ONEN_BUF_BLOCK] & 0xfff) |
                         (s->addr[ONEN_BUF_BLOCK] >> 15 ? s->density_mask : 0))
diff --git a/hw/block/pflash_cfi01.c b/hw/block/pflash_cfi01.c
index 62056b1d74..cb58f08f53 100644
--- a/hw/block/pflash_cfi01.c
+++ b/hw/block/pflash_cfi01.c
@@ -276,6 +276,7 @@ static uint32_t pflash_read(PFlashCFI01 *pfl, hwaddr offset,
          */
         pfl->cmd = 0x00;
         /* fall through to read code */
+        fallthrough;
     case 0x00: /* This model reset value for READ_ARRAY (not CFI compliant) */
         /* Flash area read */
         ret = pflash_data_read(pfl, offset, width, be);
diff --git a/hw/block/pflash_cfi02.c b/hw/block/pflash_cfi02.c
index 2a99b286b0..711f978d7c 100644
--- a/hw/block/pflash_cfi02.c
+++ b/hw/block/pflash_cfi02.c
@@ -328,6 +328,7 @@ static uint64_t pflash_read(void *opaque, hwaddr offset, unsigned int width)
         trace_pflash_read_unknown_state(pfl->name, pfl->cmd);
         pflash_reset_state_machine(pfl);
         /* fall through to the read code */
+        fallthrough;
     case 0x80: /* Erase (unlock) */
         /* We accept reads during second unlock sequence... */
     case 0x00:
@@ -359,6 +360,7 @@ static uint64_t pflash_read(void *opaque, hwaddr offset, unsigned int width)
                 break;
             }
             /* Fall through to data read. */
+            fallthrough;
         default:
             ret = pflash_data_read(pfl, offset, width);
         }
@@ -368,7 +370,7 @@ static uint64_t pflash_read(void *opaque, hwaddr offset, unsigned int width)
     case 0x30: /* Sector Erase */
         /* Toggle bit 2 during erase, but not program. */
         toggle_dq2(pfl);
-        /* fall through */
+        fallthrough;
     case 0xA0: /* Program */
         /* Toggle bit 6 */
         toggle_dq6(pfl);
@@ -582,7 +584,7 @@ static void pflash_write(void *opaque, hwaddr offset, uint64_t value,
                 pfl->cmd = 0x98;
                 return;
             }
-            /* fall through */
+            fallthrough;
         default:
             trace_pflash_write_invalid(pfl->name, pfl->cmd);
             goto reset_flash;
-- 
2.39.2



From xen-devel-bounces@lists.xenproject.org Fri Oct 13 08:52:07 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 08:52:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616321.958222 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrDts-000420-1H; Fri, 13 Oct 2023 08:52:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616321.958222; Fri, 13 Oct 2023 08: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 1qrDtr-00041t-Uu; Fri, 13 Oct 2023 08:52:03 +0000
Received: by outflank-mailman (input) for mailman id 616321;
 Fri, 13 Oct 2023 08:52: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=7lwD=F3=citrix.com=prvs=64352611f=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qrDtr-00041n-8T
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 08:52:03 +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 c4bf108a-69a5-11ee-9b0e-b553b5be7939;
 Fri, 13 Oct 2023 10:52:00 +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;
 13 Oct 2023 04:51:57 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by CH0PR03MB5970.namprd03.prod.outlook.com (2603:10b6:610:e1::22)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.45; Fri, 13 Oct
 2023 08:51:55 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::66ca:3a42:baeb:9ecf]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::66ca:3a42:baeb:9ecf%7]) with mapi id 15.20.6863.043; Fri, 13 Oct 2023
 08:51: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: c4bf108a-69a5-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1697187120;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=Jtc0kBA2dM1p2NltlwNqdpfuxBZ6tAYQas1elQ4vSQc=;
  b=WAYpWgRP3cdZZqUvuAiRDoEZCDIEhH5p65pB564KmacEvChWYaXFLvAx
   ku2PGEST0Yd/tk92FeWAIH5vPm61B/4k+CEy4tCv/RjFsEtv11jRe9yeO
   BwMHXz1IItLai+Cv1K32O8yXLaN+GveiCFAh4vD4w11YGDJ38rdbEjqx0
   E=;
X-CSE-ConnectionGUID: EyyqB5OVSBiI9+4SYKj3yw==
X-CSE-MsgGUID: K58QH5UyRBijjw8eZ0EanA==
X-IronPort-RemoteIP: 104.47.55.168
X-IronPort-MID: 125466777
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:icN9zatXn0bib5Ld42cwPc6AsOfnVGRfMUV32f8akzHdYApBsoF/q
 tZmKWCHO/uIYGLyKY12bIXloBwHu8Dcmt8ySAs+qn8yEiwb+JbJXdiXEBz9bniYRiHhoOCLz
 O1FM4Wdc5pkJpP4jk3wWlQ0hSAkjclkfpKlVaicfHg3HFc4IMsYoUoLs/YjhYJ1isSODQqIu
 Nfjy+XSI1bg0DNvWo4uw/vrRChH4rKq41v0gnRkPaoQ5QeHzCFMZH4iDfrZw0XQE9E88tGSH
 44v/JnhlkvF8hEkDM+Sk7qTWiXmlZaLYGBiIlIPM0STqkAqSh4ai87XB9JFAatjsB2bnsgZ9
 Tl4ncfYpTHFnEH7sL91vxFwS0mSNEDdkVPNCSDXXce7lyUqf5ZwqhnH4Y5f0YAwo45K7W9yG
 fMwBSEcdzreoNyN6rOaG6owvfUALpL6I9ZK0p1g5Wmx4fcOZ7nmGv+Pz/kImTA6i4ZJAOrUY
 NcfZXx3dhPcbhZTO1ARTpUjgOOvgXq5eDpdwL6XjfNvvy6Pk0osjf60boq9lt+iHK25mm6Co
 W3L5SLhCwwyP92D0zuVtHmrg4cjmAuiAt9OSuPnqaECbFu75TFDMT1LaEqBi/i7iFHuVuAHB
 kUS0397xUQ13AnxJjXnZDWorXjBshMCVt54F+wh9BrL2qfS+xyeBGUPUnhGctNOnO87QyY7k
 GCAmdzBDCZq9raSTBq19L2ZsDezMig9NnIZaGkPSg5ty8bniJE+iFTIVNkLLUKuptj8GDW1y
 TbaqiE73u8XlZRSifX9+k3biTWxoJSPVhQy+gjcQmOi6EV+eZKhYIurr1Pc6J6sMbqkc7VIh
 1Bc8+D20QzEJcjlePClKAnVIIyU2g==
IronPort-HdrOrdr: A9a23:xyBck6wXU1r/ZGaLNUcEKrPxVeskLtp133Aq2lEZdPWaSL3+qy
 nIpoVl6faQslkssR4b6Km90Ze7MDzhHPJOkOws1PKZLXPbUIXBFvAo0WPNqweQVhEW3NQtnJ
 uJSsBFeZfN5bITt7e33ODAKadp/DDlytHVuQ6h9QYUcegwUdAX0+4RMG/yeScaKHglOXcgLu
 vj2iMEnUvcRZ05VLX0OpBvZZmkmzSkruODXfbGbyRXnDVmTgnI1Fc5KXalN9slMw+nuY1Sil
 QsHGTCl9KeWjiAu3zh/l6W1Y1fnO3owMZCAsvksLlhFhzczjywbIBWULWY1QpF092H2RIRid
 HJlQwtJsJp9hrqDxOIiCqo4RDp1AA14Xn4xTaj8AveiP28fiszD/xaj4RDfi3Y7FdIhqAM7J
 52
X-Talos-CUID: 9a23:vRNI3G6oFOWHWekpcdss2V8FA+p4VUPm5nbxcgzkMldKSuaEVgrF
X-Talos-MUID: =?us-ascii?q?9a23=3AYAlRFw0agE6kls+/tNoFurKSnjUjwPn+MWBQrIQ?=
 =?us-ascii?q?8kciGNzMgNgXFoT2xa9py?=
X-IronPort-AV: E=Sophos;i="6.03,221,1694750400"; 
   d="scan'208";a="125466777"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=QqIrEkqi9ui2q7VBRSzurL6IkUIFiO2boc8jR7AyvjuI4ZNvukGy4D2JmgkUQiMiobPbyDjeXLu6RjaOJI4vFMgTWMHMkJMCj1OIKlexKue/wgJGZqS3zn4U/Z+rlV6HREZTBa6xAEajSvzdouWvdzVreHXAvesMJMf782ZqLqmHDz75h/M00WagqULFq0/MTnt4QwuWAHhQARQ+ADbosHfe0M/Brb4go80bsBXYmlVUnNUTrQ+sek6kPrWYm1auhc+GsvmXCFMcKzFl3anAL1J5e3uOdPUuCSDg+dxLeQe69rTjUFR/f41JxLDYJssdHcsHczsXvt9CyDnFkQwAjQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=f78559kXZUfqQlZuqKdgqCSShwUT/jXJHI3JRvyX+5k=;
 b=GvZo+n1xnh5HU2ZYQZ2C+GnQimnQf5oyhdeZ3WViViNQisCgLORfeueLfoy+eBmIaJ6MenV5KcemhRYbGNbygJLrx8BKgqxCm0m1b8Gh3A/fFokuTG1a3HZ8gA3PScACSups2M5qiqahxqYR1EmvSpN5+cRMOhZrNWfou+diglKMld72jvAebVD4aZH8MYnpJzMUJIUqFRCXP1nxBhhTcaoa9dpRhiUh7BE+sIdmAbPIWD9zbV+d9FWKNymxkX0//xSb2zDNb9EUqPvB2Mtt17UIlNPGR9EUZExfp3wUOSH3KTk5W1/XxM6rK4l93Gp80qwYKYkLPyQoU4PE1RVyqA==
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=f78559kXZUfqQlZuqKdgqCSShwUT/jXJHI3JRvyX+5k=;
 b=qCiRxTI7D13XfoClh4rRgYn/uiBBEJ/2AZT67bT5bTQ0FGfTuSJEMF1O1McETKxefh7jwtxtZIvWGB9daRuU7wyZZHjd//fUTeHxH1bhMLmVyATnG2JztFOuzapJTVOFil05rhcHNrMg0L3GPea85FU5jgdByyYt9ROteBjxg7Q=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Fri, 13 Oct 2023 10:51: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, Henry Wang <Henry.Wang@arm.com>,
	Jan Beulich <jbeulich@suse.com>, Wei Liu <wl@xen.org>
Subject: Re: [PATCH] x86/pvh: fix identity mapping of low 1MB
Message-ID: <ZSkFJoF0kSv555Yi@macbook>
References: <20231011153756.16714-1-roger.pau@citrix.com>
 <75e8aca0-1e2f-4c19-9fee-20bb4e4ae00f@citrix.com>
 <ZSkCKkJjcCiJsIGp@macbook>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <ZSkCKkJjcCiJsIGp@macbook>
X-ClientProxiedBy: LO4P123CA0535.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:2c5::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_|CH0PR03MB5970:EE_
X-MS-Office365-Filtering-Correlation-Id: 23cfd3f3-81f3-40dc-070f-08dbcbc9a6ee
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:
	Dpmi5aa8BRA3J61VE3mP1hha+tani37kUAGwVf3F9G/Aw5EmdrOPKyTOxGkhZrIB5tMJBci6eDNCoQ3ftwgOvJuHLcKBAteXTuVRYjbb5hLlqaK/px8xelNsh0v7UP3+A9To5ue7RXWC84tjN2WYVpF3Fv1n1INtkQOPqGXU0Vvhu9ciqAofvcXLCeDC+sYM/bx2swdFBwglEOzfdZ0nEpyy1t1R6+ouePJakmGDzuaLBqflsEpPPz3dh+t5x5ZA8NfsI7lpqlhbDp/5e5VoQMoC0N1R2bp0MDWRHRN6npF1DmyfBhs93QmPXjw4P8KjWjXHVqeMFkAcDWhYFSpbLuDLSdCahtzDNfzrxPmO/cmnNdgInV7pXoAJFfXeXvzKpWWa9EjKqzHzbxUl67Aitvg8+GMD/L7LJ63zBMOFgG2FvQvv+JJs7h351YFpRKAuiuqfLHCSViG4oxn0HqoX7ABSASaJi0t8elI9zewGN9dLosZuxyGIMSiJYQEEfNKW4Ikop3zywMNdfDXys/Q3yx5870K7S5bWV98NNpjhJj22+rATjZ0OTb+AGItH5VOq
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)(39860400002)(136003)(230922051799003)(186009)(64100799003)(451199024)(1800799009)(6506007)(53546011)(83380400001)(26005)(82960400001)(38100700002)(6512007)(9686003)(4744005)(86362001)(4326008)(33716001)(2906002)(6486002)(5660300002)(8936002)(8676002)(66476007)(6666004)(85182001)(316002)(66946007)(6636002)(54906003)(66556008)(41300700001)(6862004)(478600001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?bzB6YzhCUnE3YitUaGc1d2pJZjZyZXBRdVMyYnRPNDA5aDdLTWxPU0hjS0ht?=
 =?utf-8?B?UnVKWHdubzh0SHhtV2NQTWx6RGxhT2c0N3dET2FuZ29MUHZRbjQ2THp4UWEy?=
 =?utf-8?B?L0tnb2J2VkZIVDRScmE5UGhHajFTZ2szczVnSWpBcTdsZ1ZZbVhObmRRRU9r?=
 =?utf-8?B?SisxWStKTEF5akY3TVVQUitDdjNNbHBYbVZNYzRTUWVsR3M3dEZRcUdpalhR?=
 =?utf-8?B?NXpQeWpzWnpPY2g2VGV4ZHM5R1VOZVlpQWdXM1RwK0Q3c3VyRTlCdktXVzdp?=
 =?utf-8?B?MG9kYzN6UGFLdzNPVnRIQ05uRGZ4RVVqbzhQNjRQMmN0QjFBOHU5alBoSkVB?=
 =?utf-8?B?QUR3eEFSUGNjcldlUmR2bjBodTRPVWt0UHFjU0lHcGJQbWYva1RENyt3M01Q?=
 =?utf-8?B?RVMzV3dlNktpeXZFZmpVU0p2VGVFY1Y4MUx2dkRMTjAxNWdVL1FOZzIrckJ3?=
 =?utf-8?B?OXh5MXF3U1hjc2V3by91SWRiYUtKbDUvUXozZGxDNUZjMmcxaHB3N0ExODhB?=
 =?utf-8?B?ZVlpUkQ0THJ1NTFtTk9JVnRtZmRBS2tUeGFFelpmRmNUUUhYNHlTVUFqNDBU?=
 =?utf-8?B?K0pkTXNOellvOTNxQS9KWmNiZ2JEUE1udUROaHlQK0hjbjd1ZHA0d0gxNWNi?=
 =?utf-8?B?bXZMRmVVdlBmMjV0MkZpaWpRUksrR0RxbTY2aDdqUFFkUnh5SDlxWCt4RmhH?=
 =?utf-8?B?eHJIWU8vMG15UzRsTTh1WFZmREM3NkJSWkRxVDUyVExtNmtBb01xRWtRdE9R?=
 =?utf-8?B?My8rM210dFZydHAybnFVSm5JeWV6cEZ5YTFtUjdmZmU5aVlCbXByYVZkOVRu?=
 =?utf-8?B?bE1lODRsQXBHNlpCL0dyeFlBcmZoRWdlWm9BMURqTEVsRmtpdzg4ZXI1WThj?=
 =?utf-8?B?eDI2eDcxY21pb2dObk1rdlAyOXdmL2pJd1RlVUxKRCtJT0Z2cFcvMDhaL1Zt?=
 =?utf-8?B?REJ5WWZyOXkwTHk2dktNeTV5dGE4RzQ5L05NZ0VDV2Y1U3FyTEFGdXJJVXJj?=
 =?utf-8?B?MTg2R0dKQi83TTdkSFdsMkJZbjZkYXVoNjdQLzBJWjVRZDU1M0VwNTVOVHc1?=
 =?utf-8?B?aVBWbGYwdERkT2ZyN003SUpQbExMeWswSURDd0liN0l3ejRBbVN3VS9QQjRx?=
 =?utf-8?B?RHpHUHZtRGpUMzVCUDVqeGF4OGpVbHlBaTRtdVRTSTRiQldPV0E4dXRlb2xY?=
 =?utf-8?B?azFlbmdkOFY2Qkx4U1pWYnFKTUs2TnBHUm02TGJlbklUajBsaXNkVzVLeElN?=
 =?utf-8?B?dm16aVdiV2NZQkJMWmh2ZkRWemViTHZVSmFreTVidFpWZkZyTTgrcEltb1B5?=
 =?utf-8?B?cTJrQXJsZnUrM3pwTkg3VXNWODlidmw1NXJUeFdscWwyYTVyaVc5b0xRSmkw?=
 =?utf-8?B?OUh3UGllWUxFSGwrNGtFQ2Y0dHhCZDRrcjJmcmtlUUY3WG5VaTh6RmtlSDhX?=
 =?utf-8?B?OVVoNVhlcTI1dVdTMmNhNURRVUE2ampucnpRVmxHODlnYTIycE1ic3BQOXlP?=
 =?utf-8?B?dFRlNm5udmlBbTh4TE9ZWUJzSlM4S3pxS2ZCeHUzYjBSTlVMd3c2a1kyUVJh?=
 =?utf-8?B?emRLZjh4cm9SU0daVTVCSk05cDYyL3dFZ1FuL2UvVzBWanF6VHhFelpXT1FP?=
 =?utf-8?B?bHNETGlIZ1hSQW9ZYkloclBIMU5IWTdiN1NaYjNqQXl6TUE2Qk5lMDJsbnNZ?=
 =?utf-8?B?QXJ3Rnc0TFZWVldzV25GMDR0U1pGbGIyZi95YlJjalMrT01jcGJpYU52a3RJ?=
 =?utf-8?B?WjVHNEhiZCtyWTB6aU42c0o1NW5OQmgrTEZCYWtSVTlJL3d1VWtwUkhySDUw?=
 =?utf-8?B?MGpZQXNkMTFjK1lGYUg0b1NtWksvWWRNanpEekpacXJhRXVZajVCdHk2NTAv?=
 =?utf-8?B?aW5QVGpEdURib2F3WkExaHFpeklPYUZkdHlMTVJFTUZ5eTBMR2JteG1mQTJy?=
 =?utf-8?B?bWEvTlNQSGo5a2REYk9TR2wxZXh6dW5sOU1PT3V1dkdkR3hhd21SdXVNcmlC?=
 =?utf-8?B?QUNBajZsRHlwYmsvWCt5Q3BrbVlMWWY3RTZLaE12MkdJUTNUNzRuUHhzQzAy?=
 =?utf-8?B?QUpwR0lVUWorU0tKYjgwRG56eDFKcVFjZ2ladEloZ2Y5U09mTTlZMmpYL1E5?=
 =?utf-8?Q?MPJZcOax3MGorEsRRR7YnzwV3?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	HvIGUzfcDra3aq891j07exafWJJVQjbLODoG6byXrfAWEd7BBkQ0nPC4OiO7XVuRpm1mEeTuCFSG73DdMYMXKOV0X8SVYjfIQchN+52AGPVNxrYj2WCqBoOi2lax5mKsQ13IV3eNDLNaDmhJDYbBsyM6IMSu7FHlUS7xQPyS316IrZrWpttKqHm0TQ1b95C3wo1gOw7fnmeC9BenCxwyo/47DEVsUGab5wIvQswQ6YjmfKTAJKizbZhryfz2cOakQyYFKBpbqjMqQbaML+q2DC/QoMKRoKmbp3Z2hveUkab5LCWY5s8ijvJZSVXnGGOdO9V8sobzsw1eLLJ+05LR9oGDiVKjgjY0YpKPl20hpsLjJ0mDYk7B0vFH8u3pYNexoGQIqrFUHqH4ucUo9l+6Huz21XGiM+Upn8Tp40Hm6i1Qr1mBFfTq2zMx7MGchkvZVBAxXtICsK8AZE4phhba0BAy+UN26v2cA4n2y86TO5UO6HNDiQf0tIV4Kf/GxTUc4SltWfaP/bNDZ8C2u9S+comzqg1YyITjiSQZp7tQiwH0uTLxoYxrXs8JymL58+VLkDJRwUY/VVlvDnAaaCItbaFubydWzmRfmsoscPPkB4635ZFieKpVsNEJxlWrsZ4s8YP9+a3PB/2eKTVM5yL1EfXSWimySs5vfwX0me+CsgsUn/DpNjZhfFR6a8n0nblzqeHj5eEYr2RhiO0gSygvqogV9l+CKZV6Mb/QyrW4rFwmvanjWXfZAUuXC+QiOPL52/IZXD7FR3WApAj5/zpLBUV39HWFXZo5CnxY9iww08k4IMX/OsxFnuUUgpiz4foBrGgK/nqY8o48GS4kHwxU1lvxAKx8b3eIug7ND5EnmKk=
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 23cfd3f3-81f3-40dc-070f-08dbcbc9a6ee
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Oct 2023 08:51:55.3618
 (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: mkZhe31iJgWtxoDewHTot+52Ay48+JglGWdXWjg51KdrgjpOVv/EYxhP4rYtr26bm5uzEGfBHpXQG1BclSxsAA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH0PR03MB5970

On Fri, Oct 13, 2023 at 10:39:06AM +0200, Roger Pau Monné wrote:
> On Thu, Oct 12, 2023 at 12:48:20AM +0800, Andrew Cooper wrote:
> > On 11/10/2023 11:37 pm, Roger Pau Monne wrote:
> > But a question first.  Is this from debugging the XSA-442 fallout?  If
> > so, it's probably worth mentioning the hardware we saw this on (which
> > IIRC was fairly old AMD), and that XSA-442 unmasked a pre-existing bug. 
> > And we think it's USB/PS2 emulation?
> 
> Yeah, can add this all.  It is triggered by pinot{0,1} which is AMD
> Fam15h (AMD Opteron(tm) Processor 3350 HE).

Just re-checked this in order to be sure, and no, the IOMMU faults are
already there prior to XSA-442 for the dom0pvh tests, but they don't
cause issues to osstest, and hence we didn't realize.  I just came
across those as I was triaging a different issue and looking at the
serial log.

Hence I won't add any mentions to XSA-442 in the commit message.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Fri Oct 13 08:57:21 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 08:57:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616325.958233 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrDyu-0005bI-KR; Fri, 13 Oct 2023 08:57:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616325.958233; Fri, 13 Oct 2023 08: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 1qrDyu-0005bB-HI; Fri, 13 Oct 2023 08:57:16 +0000
Received: by outflank-mailman (input) for mailman id 616325;
 Fri, 13 Oct 2023 08: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=7lwD=F3=citrix.com=prvs=64352611f=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qrDyt-0005b5-8U
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 08:57:15 +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 7f0eb601-69a6-11ee-9b0e-b553b5be7939;
 Fri, 13 Oct 2023 10:57:12 +0200 (CEST)
Received: from mail-mw2nam10lp2101.outbound.protection.outlook.com (HELO
 NAM10-MW2-obe.outbound.protection.outlook.com) ([104.47.55.101])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 13 Oct 2023 04:57:06 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by CH0PR03MB5970.namprd03.prod.outlook.com (2603:10b6:610:e1::22)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.45; Fri, 13 Oct
 2023 08:57:04 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::66ca:3a42:baeb:9ecf]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::66ca:3a42:baeb:9ecf%7]) with mapi id 15.20.6863.043; Fri, 13 Oct 2023
 08:57: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: 7f0eb601-69a6-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1697187432;
  h=from:to:cc:subject:date:message-id:
   content-transfer-encoding:mime-version;
  bh=HqiBDSscAtbX7em/2LYRc1zJfCQxg7kOnvJ5vqf2WMc=;
  b=cdnM8bDv/ABVlf72VZkMen7Hbw+4ELNGq3FO8hnDur2zUVIDZflqRAmI
   Bwt9grqG77bjOL3CKuH9AAlmCYb3Oy5WAX6aNDGPW4DdmzN0/F+YxMPFX
   wE8ecyBre/CfF1hWjFDEqPaHsmrUsrXIwbg45ZustlYkKoAp3BEijHdTo
   A=;
X-CSE-ConnectionGUID: DzJK9zZkQl+obUYfq8EnUg==
X-CSE-MsgGUID: oB7MF9gbRdqPYE7nMI1oiw==
X-IronPort-RemoteIP: 104.47.55.101
X-IronPort-MID: 128235519
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:V/pFXqrYcU9jx/qtNL7NkVweUxxeBmLYZBIvgKrLsJaIsI4StFCzt
 garIBnXOPePZWvwet93O4y/oRhT7JDUnIVnHlNq/C1mQi4U+JuZCYyVIHmrMnLJJKUvbq7FA
 +Y2MYCccZ9uHhcwgj/3b9ANeFEljfngqoLUUbOCYmYpA1Y8FE/NsDo788YhmIlknNOlNA2Ev
 NL2sqX3NUSsnjV5KQr40YrawP9UlKq04GhwUmAWP6gR5waGziJNVfrzGInqR5fGatgMdgKFb
 76rIIGRpgvx4xorA9W5pbf3GmVirmn6ZFXmZtJ+AsBOszAazsAA+v9T2Mk0MC+7vw6hjdFpo
 OihgLTrIesf0g8gr8xGO/VQO3kW0aSrY9YrK1Dn2SCY5xWun3cBX5yCpaz5VGEV0r8fPI1Ay
 RAXABwfTDPSldC1+bb4TeNRt8o6fOTtAYxK7xmMzRmBZRonabbqZvySoPpnhnI3jM0IGuvCb
 c0EbzYpdA7HfxBEJlYQDtQ5gfusgX78NTZfrTp5p4JuuzSVkFM3jeWraYKMEjCJbZw9ckKwv
 GXJ8n6/GhgHHNee1SCE4jSngeqncSbTAdhCTublq6c76LGV7ms5Vzg4BFSxm/Wgsn+TBNR6C
 hUT+zV7+MDe82TuFLERRSaQsHOC+xIRRddUO+k78x2WjLrZ5R6DAWoJRSIHb8Yp3OcWSDowx
 xm2ltXmLTV1tfueTnf13rWeoC62OCMVBXQffiJCRgwAi/H8pKkjgxSJScxseIath8DxMSH9x
 XaNtidWulkIpcsC1qH++E+dhTup/8DNVlRsvlyRWX+55ARkYoLjf5av9VXQ8fdHKsCeU0WFu
 38H3cOZ6YjiEK2wqcBEe81VdJnB2hpPGGS0bYJHd3X5ywmQxg==
IronPort-HdrOrdr: A9a23:PWq1wayTsGznpRTe1yUeKrPx9uskLtp133Aq2lEZdPULSL3+qy
 n+poV+6farskd1ZJno8erwfpVoZUmssqKdhrN/AV7CZmXbUQ6TR/AF0WKM+UyQJ8STzJ8s6U
 4CScJD4b/LYGSS5PySiHjaYrRQuaj+gd3Y+ZagvglQoBlRGttdBmxCajpzfHcGNzWuMaBJYa
 Z0q/A36gaISDAyVICWF3MFV+/Mq5nik4/nWwcPA1od5AyHnVqTmfbH+0zz5GZkbxp/hZMZtU
 TVmQ3w4auu99uhzAXH6mPV55NK3PP819pqHqW3+4ooAwSprjztSJVqWrWEsjxwivqo8kwWnN
 7FpAplF9hv6knWYnq+rXLWqkrdOQ4VmjrfIGKj8DreSI3CNXwH4vN69M1km87imgodVNIV6t
 MD44vWjesSMfr6plWK2zH5bWAfqqOKmwtUrQcytQ0VbWJMUs4akWVYxjIYLL4wWBjX0aZiON
 VCLPyZxNs+SzKnRkGchEVX5piSUm8oHhGAK3JthuWQ1TVroFBVpnFotvAiog==
X-Talos-CUID: 9a23:KH5FBG/JrFNOY7g+n1iVv2IGOON0YE/e9XOTJEWFOGhwGJCTdFDFrQ==
X-Talos-MUID: =?us-ascii?q?9a23=3A50dcWQ92G9yN4MhTvGku99eQf8BCvIGAWU8Hq5k?=
 =?us-ascii?q?fg/ipaipVGm6ajSviFw=3D=3D?=
X-IronPort-AV: E=Sophos;i="6.03,221,1694750400"; 
   d="scan'208";a="128235519"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ExXT0f3HhqY6N3d0cStUI15nSwrEDLEcYLfsmD3lcFM23S6UTKDXbIv72+C4kM7biVISVJcrk8Ab5S2vaAgJjuGJZ/yK48vgf7nlmwxWl2g5VrsFSwNIwjtmLJDeUxsfJQWFAsc6cN60YLBJkrSV0ila4fMyugdOCYg3kqQvEgmtQ2sDO4lsshfvuYMlXhgTAXPg8a26rzrn3j1FzqKLQSjgR9LB1deiuUyzEgTBos1ri3ol5H1rR7Mbl8t8Zf0oW6UCv05c0jSWifM1axDy3SOkjBX4HeHqJoP6B79TToU4glh8Jp6crmPh6YU8a9/dGSBYdsPCsGP3EyfuGUToVA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=77H2C9EPKmrWnBk3ms8fMnbWqampqnWeb8VcPihyer8=;
 b=m95rohWxoq2JB30g/hl3SGyfHUfJYJ3zKy//bFJIjFQPoncvzfrqG47ujEDVQzQdhUbfdDY3ylI5m+wdbLMHF0CquLBNq9/pUtFxRf+7Ubeprp8/hQ1F8S0HpAZL7oCqOODzbVxrUrRCOw46efEotH+sXvdDmHMCEJVu66ej18NgSu50N3zyVSsVLaFGwsLoRhcC+BCZ5cnKZShRbnsdpfc6YktaiaseYlmcm3TXwfPQls3qRbtQQfx+UZuzDHAH41N0DX7E9oSeumcNz6FUPXfYUG5NID6X8NxiT7A84b/FaVV1XSjEY7Mer+v2Hn/0wt7vOdsZq82IbuwtOWKTHA==
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=77H2C9EPKmrWnBk3ms8fMnbWqampqnWeb8VcPihyer8=;
 b=u0BUMCVL6mComBW+WRNYaE09RsQIOD8+ZXQqtHaqyhAFDqa1UcKT5lS1Nn4XY6Qa16WIiyP6m6eHec/QCisn3row25MPCrPiqT2k/zuEeX7CeoXY240RK2i3501pYeZsQ3eTq4y6F2Wn6vXrt/RDt9FjYa1DmiVqQAxTpI9Re7s=
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: Henry Wang <Henry.Wang@arm.com>,
	Roger Pau Monne <roger.pau@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	Wei Liu <wl@xen.org>,
	Paul Durrant <paul@xen.org>
Subject: [PATCH for-4.18 v2] x86/pvh: fix identity mapping of low 1MB
Date: Fri, 13 Oct 2023 10:56:54 +0200
Message-ID: <20231013085654.2789-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: LO4P265CA0059.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:2af::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_|CH0PR03MB5970:EE_
X-MS-Office365-Filtering-Correlation-Id: f1458f1c-0aa8-4a23-00ac-08dbcbca5eaa
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:
	QtZYUbaEYpuPVtp0zEozLhmO3G+jvDhzuUc3gNpk+7Ez8IHqx+mL7TlMtAB3U9uKF16bAI4uEMAY8Wy77Z/4vBOfu7iJhxbnmNdMzmJBRAMgHQF3dADGfyo/FSWKHmUmNLMdlTSNQyhjF/sj8ae29906mllCZV73PqizXzJ3+pPTJAwLmkZmzppxEB0fe/RPCkIrNWuc8SpFmSBJHr8o5g6w9oEhPB4LrbWEgTfT/MM78Y8tbb5zFLvryRX2RoKmLO+Y3LfqDtzojIX6ZW5bFOQq1Dz74wmOLUN3t74maSFbX9x3JB5C3oUJQ9vj/tJUObuixMtXR34R2bO/O/HJUaGeCiLEW1XkaNFrZSNDefJqmf69yUir97IKrQEh09be+sLdHHaWLsVLMZOTKBcTeL+uxi2bN2MRLTbXjpdCfGhWT+b4HzIb/r57w9dkkQ8AHNf4Z1h4jFrOW0JGBTV9ifR7L1XDV3f9i0ktpyDQWajhiJS3kN1dz6VdGYO2dPOQavkRMp4nmwqIG+DEZEM15BnS8tAdOekfTZLRrE3HmU02p/8dNCnGRwVxsGi6eONQ
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)(366004)(376002)(39860400002)(136003)(230922051799003)(186009)(64100799003)(451199024)(1800799009)(6506007)(83380400001)(26005)(82960400001)(38100700002)(6512007)(86362001)(4326008)(2906002)(6486002)(5660300002)(8936002)(8676002)(66476007)(6666004)(6916009)(316002)(66946007)(54906003)(66556008)(41300700001)(36756003)(1076003)(2616005)(478600001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?aytyWjZoS1NlRDRVRlY1b09STUE4OXFqWVU5SXZwRG5wU01pTC9rZVhBajdz?=
 =?utf-8?B?cHJQSGFyWEZjTmk4Zlc4eUpEMDZEekFVRkdZL0tBSXh2eU8wZHVzQ0NrcGgz?=
 =?utf-8?B?L1lrd3BhNE5nOGdLbDhBM3RHbWo5dlZhWkZ6ZjNaZUhBdGlKRXlHVlFwZ25P?=
 =?utf-8?B?emY5Mlhkajc0YlZ6R3hIdWlVRU1ObkpZdkVtc3JNR0xkYngzZTZXSGZCMHlS?=
 =?utf-8?B?dUtRd0dtTU5tNXEyWmo5ZXpNV2Q0SzF2eVZwZ0RqR2YyVHppdC9CZzlpcXpl?=
 =?utf-8?B?UHo2OURmRmF6RmVncFV3U05GdlliTkRDYXNuRTIrckNVZnZtWlRkSnZ5K3Jn?=
 =?utf-8?B?MjJUR2Z5c3p3cXM2TFR1d1RoS09wVnVnYmFGUXYyYnZOcXBidzcyMnNMS08z?=
 =?utf-8?B?NkNKWmw1OXArVjl1cm12SnNWV3IxZXhza0d2TVJhSkhZTEZBSXFGc3dCdFhj?=
 =?utf-8?B?RFk0a2luQ3RYREcvRUV0UFl0NkxFS0oyYkZnL2pNdG80OVFWY0N1dFRDd2NE?=
 =?utf-8?B?SkhzQlhoMFVLU2hkTk9YdGtxQnUwTnQrUEhzS2tnUEZCdmZnbkpjUEh4T1dh?=
 =?utf-8?B?THQvMHh5UmVUcGRhVXVnSGpJVUplVGUzK0s5ZG9ucVdHai9OVUJmVHllTi9I?=
 =?utf-8?B?NUd1MGNGUys2Uy8wT0hocTRLVksvVUEzalppTWNxdWdtYUMzdmZuYW5YNGdv?=
 =?utf-8?B?L2RraEcxRG1ZTTQvQXNFTTFrV2w4cm5YSTlCT0x5aG5pMFdXZjVSOWx2d0Zl?=
 =?utf-8?B?RHdvaGluUmpMZERZVEZIOWRVb2FFdzRLSDR0Q3RxcVZicDRTNW9PK3V4T2JZ?=
 =?utf-8?B?ajRJVjNQaVFna0J5cENES05Yc015WVJ5dG5JaTNNaE0rNVBCQXVuL0pXdDV5?=
 =?utf-8?B?S1ZLQTEvUHM5S2VvWkNsU0JBYXRjZzBiOSs5Wk9nYkRBNExZWWhNTHlLSDNQ?=
 =?utf-8?B?cm5KNG8waHFQNEUwZGpTTjJOb09UUjR4ZXc2dm4rS2xKUGpEdnFqaUxxY0Iy?=
 =?utf-8?B?bmo1UENLN2xQNjBtSzRaNHhJb3lhZGxSb2pZTVlCSDVvdTRwVDNDbFVlL09u?=
 =?utf-8?B?Z0cwZS9JanFqRWFjZFpNM3pnQlhFYTJhaGpPeWQ2dEhtU3liRll3Wk1JTzZV?=
 =?utf-8?B?MFZIUXIwNXBHVC9tQklFNlgwTDR6VG9FdURhazBhVzZGYVp3RFpuYk1lMk9x?=
 =?utf-8?B?YURoNmlpUGVMTHlDQ3dWZXNQTWx0QUlocVpTU2hHUnJaSnprKzRCNkNNdDZW?=
 =?utf-8?B?RmlzQmRXZ2dqeDlLdG1HNll6Q29xQStHNThEd00waEZ2S0t3SFF0VXJ5MW1Q?=
 =?utf-8?B?MHVvYnJ1R0RrbUdMN0tDdGhYY3RoVUVuNnl6NVV3RUtwb3pBL3I1MjFHSkhh?=
 =?utf-8?B?WFBVeDZJcTlCL1Fra3FIOXo5N2Q5d3kxNTJiTk9ZVklhNFBXRjZqWUNzR3hu?=
 =?utf-8?B?Q2lzTGJJb3pOL0tHRG5pV0NjbkZEcE5zOGg1aEpRZVZEWDBlTlI5TlA2cmpl?=
 =?utf-8?B?OXFiMFdDK2FFdjNEcWk1eXozQWxTeWdFREJQNitwc0k5OEJZU0I0UXN6ZGlx?=
 =?utf-8?B?ay9sMkNoYlIwNGVJbEJaN1Y1SnBPYXh2eDd5K2Y5bzR5eWFocTF6a3RkazJ6?=
 =?utf-8?B?QTVxMUdmMHM2OEpwcTRnNmQwNU5sOWNxelJwVUgrdU9VbDlRby9tNWcxR2kr?=
 =?utf-8?B?WmdKR1Vna0dWaytkTTFwUVVZU0NQcG03YzRXUUY2K3RqVDFkanIyTVlYY1g1?=
 =?utf-8?B?N0JDaHZnQjVGSTdkUjcrSnhFQ0NIMDdPbWh0UGJBSkI1cVBmbXIyMUF4NE0y?=
 =?utf-8?B?OFNDQ1U3RU01TW5UU2VLUmJTbDk3NUZSNWMwZWZvVXVaUS8vTVVzREY2VVdJ?=
 =?utf-8?B?WGdyekp6MWVQSFM1UGhXU2ZqTnNlZzdrY0M5emtsTWdleHV3M1VxM0NNVHA0?=
 =?utf-8?B?MjBvY0I1NU9FWWJhUkx2bXpQZDZPN2kvcDVyeVFsZ25OaUxOQkdsejBJbjB3?=
 =?utf-8?B?QXdRVy9Wdmp1ci9pOWZCTTJRcWljZ1JZQTVMcWwwWFBWNkp3Q1FiR2lTcjNq?=
 =?utf-8?B?QUxWTzFpQ1hQOXhvSU96Mkx2cVZ4VUtyUHU0OVhUalJ3NHR0OVZwTEsxd3Bi?=
 =?utf-8?Q?xCzBQ36cSyZr3EbSc5YHYNe0j?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	ISyTFgXJqgS5cg2RUbLZeXyDAV0D7SCtY4vjILZ4oeeFFL07TWYcNZhFFRDhEexOJ5R9tjd6CKVaA99gYhnAxWnQYmjlA6peBVkIW7TLNDX12EgtHPuX4brOpkPCi2EBtxcNAt4uyVjr5dTyc+OAHOy0X99G4SSfpd0HyrXLmCYTfPQV4Ad6W31EgFzGl5jpL330nh2250btqKDc/roNkpgsWpCchmqzKAKjqYRwtyPUludNQNbrylQd7+ft5pVEdwT4K287zzRtO5yewqzJXBjWZqBU+UJ3M+9B7AHlg04vzlucIFTobkudvFpJOhGCMNIuDEHP4wYDWh5QjZ5tfIsgstAIvqBLbFSPLRkknEp2moagT6X8yuHkNayPZ9fDl50eOScBuS+li2VuFqHTjuFbBHzrQyZyLMGHCpHuUPeIeB3MCRiwuCshmVy/jBSGu7h5BJ4YOnOhbtg8/VsLL3KjmI+9MUaKsBxnBuylOBRO04ndj417KIX1gU9DDVarWnUIIv2tmWmK9ApajEZVbuXlUN4t2BIX+EgL0wNbLjWpAchjbXEQDPg4v6cMsCo07gobF0VUaaVzC8ELhvjwYYK/Q/i/Lk+2LrPSUMjjEcuIgHsDfHnd8QPEDE1YQH2D+HS2xI6lQW7HP7lNARsZ+aQuvTtgFj30l5gnrUj8QKOfvTiKaympK+kD6rne9hZQNXfBy9FNflWGsLgeyvgikS8t4q9FtGG1hEmHCRJrUYYGWySCWqnc/J1foD1E+kOpLd8sp5qYYWF5mSM1Xjvq0aRMnwHuEmdcJYfQVk7QsguvRKKaDto/O1rs292LqcBYFAk0uxwZB6OS3KgNndRsG1PzvmVWzbsdDsRmterWAXs=
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: f1458f1c-0aa8-4a23-00ac-08dbcbca5eaa
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Oct 2023 08:57:03.7471
 (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: twb3HFOhyuGqCy677Oe9vkfHRL8UKDN1zeb69EtjaaMnkTwZN+nlZ+PyKhAvGLWon3foWGj+y2W1q8T3htNpSw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH0PR03MB5970

The mapping of memory regions below the 1MB mark was all done by the PVH dom0
builder code, causing the region to be avoided by the arch specific IOMMU
hardware domain initialization code.  That lead to the IOMMU being enabled
without reserved regions in the low 1MB identity mapped in the p2m for PVH
hardware domains.  Firmware which happens to be missing RMRR/IVMD ranges
describing E820 reserved regions in the low 1MB would transiently trigger IOMMU
faults until the p2m is populated by the PVH dom0 builder:

AMD-Vi: IO_PAGE_FAULT: 0000:00:13.1 d0 addr 00000000000eb380 flags 0x20 RW
AMD-Vi: IO_PAGE_FAULT: 0000:00:13.1 d0 addr 00000000000eb340 flags 0
AMD-Vi: IO_PAGE_FAULT: 0000:00:13.2 d0 addr 00000000000ea1c0 flags 0
AMD-Vi: IO_PAGE_FAULT: 0000:00:14.5 d0 addr 00000000000eb480 flags 0x20 RW
AMD-Vi: IO_PAGE_FAULT: 0000:00:12.0 d0 addr 00000000000eb080 flags 0x20 RW
AMD-Vi: IO_PAGE_FAULT: 0000:00:14.5 d0 addr 00000000000eb400 flags 0
AMD-Vi: IO_PAGE_FAULT: 0000:00:12.0 d0 addr 00000000000eb040 flags 0

Those errors have been observed on the osstest pinot{0,1} boxes (AMD Fam15h
Opteron(tm) Processor 3350 HE).

Mostly remove the special handling of the low 1MB done by the PVH dom0 builder,
leaving just the data copy between RAM regions.  Otherwise rely on the IOMMU
arch init code to create any identity mappings for reserved regions in that
range (like it already does for reserved regions elsewhere).

Note there's a small difference in behavior, as holes in the low 1MB will no
longer be identity mapped to the p2m.

Fixes: 6b4f6a31ace1 ('x86/PVH: de-duplicate mappings for first Mb of Dom0 memory')
Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
---
Changes since v1:
 - Reword commit message.
---
 xen/arch/x86/hvm/dom0_build.c       | 22 ----------------------
 xen/drivers/passthrough/x86/iommu.c |  8 +-------
 2 files changed, 1 insertion(+), 29 deletions(-)

diff --git a/xen/arch/x86/hvm/dom0_build.c b/xen/arch/x86/hvm/dom0_build.c
index bc0e290db612..979db7d1ec4d 100644
--- a/xen/arch/x86/hvm/dom0_build.c
+++ b/xen/arch/x86/hvm/dom0_build.c
@@ -449,28 +449,6 @@ static int __init pvh_populate_p2m(struct domain *d)
         }
     }
 
-    /* Non-RAM regions of space below 1MB get identity mapped. */
-    for ( i = rc = 0; i < MB1_PAGES; ++i )
-    {
-        p2m_type_t p2mt;
-        mfn_t mfn = get_gfn_query(d, i, &p2mt);
-
-        if ( mfn_eq(mfn, INVALID_MFN) )
-            rc = set_mmio_p2m_entry(d, _gfn(i), _mfn(i), PAGE_ORDER_4K);
-        else
-            /*
-             * If the p2m entry is already set it must belong to a RMRR and
-             * already be identity mapped, or be a RAM region.
-             */
-            ASSERT(p2mt == p2m_ram_rw || mfn_eq(mfn, _mfn(i)));
-        put_gfn(d, i);
-        if ( rc )
-        {
-            printk("Failed to identity map PFN %x: %d\n", i, rc);
-            return rc;
-        }
-    }
-
     if ( cpu_has_vmx && paging_mode_hap(d) && !vmx_unrestricted_guest(v) )
     {
         /*
diff --git a/xen/drivers/passthrough/x86/iommu.c b/xen/drivers/passthrough/x86/iommu.c
index c85549ccad6e..857dccb6a465 100644
--- a/xen/drivers/passthrough/x86/iommu.c
+++ b/xen/drivers/passthrough/x86/iommu.c
@@ -400,13 +400,7 @@ void __hwdom_init arch_iommu_hwdom_init(struct domain *d)
     max_pfn = (GB(4) >> PAGE_SHIFT) - 1;
     top = max(max_pdx, pfn_to_pdx(max_pfn) + 1);
 
-    /*
-     * First Mb will get mapped in one go by pvh_populate_p2m(). Avoid
-     * setting up potentially conflicting mappings here.
-     */
-    start = paging_mode_translate(d) ? PFN_DOWN(MB(1)) : 0;
-
-    for ( i = pfn_to_pdx(start), count = 0; i < top; )
+    for ( i = 0, start = 0, count = 0; i < top; )
     {
         unsigned long pfn = pdx_to_pfn(i);
         unsigned int perms = hwdom_iommu_map(d, pfn, max_pfn);
-- 
2.42.0



From xen-devel-bounces@lists.xenproject.org Fri Oct 13 09:17:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 09:17:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616332.958243 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrEIl-0001go-BR; Fri, 13 Oct 2023 09:17:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616332.958243; Fri, 13 Oct 2023 09: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 1qrEIl-0001gh-8p; Fri, 13 Oct 2023 09:17:47 +0000
Received: by outflank-mailman (input) for mailman id 616332;
 Fri, 13 Oct 2023 09:17: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=/5iA=F3=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qrEIk-0001gZ-32
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 09:17:46 +0000
Received: from EUR02-DB5-obe.outbound.protection.outlook.com
 (mail-db5eur02on2062d.outbound.protection.outlook.com
 [2a01:111:f400:fe12::62d])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 5c999109-69a9-11ee-9b0e-b553b5be7939;
 Fri, 13 Oct 2023 11:17:42 +0200 (CEST)
Received: from DU2PR04CA0301.eurprd04.prod.outlook.com (2603:10a6:10:2b5::6)
 by PAVPR08MB9650.eurprd08.prod.outlook.com (2603:10a6:102:31a::21) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.45; Fri, 13 Oct
 2023 09:17:40 +0000
Received: from DBAEUR03FT028.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:2b5:cafe::78) by DU2PR04CA0301.outlook.office365.com
 (2603:10a6:10:2b5::6) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.27 via Frontend
 Transport; Fri, 13 Oct 2023 09:17:40 +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.6886.31 via Frontend Transport; Fri, 13 Oct 2023 09:17:39 +0000
Received: ("Tessian outbound ab4fc72d2cd4:v211");
 Fri, 13 Oct 2023 09:17:39 +0000
Received: from ff2664c0a239.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 EF6B914E-3DE4-400A-8519-69A3E1D10C20.1; 
 Fri, 13 Oct 2023 09:17:33 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id ff2664c0a239.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Fri, 13 Oct 2023 09:17:33 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by AS8PR08MB7742.eurprd08.prod.outlook.com (2603:10a6:20b:50a::10)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.45; Fri, 13 Oct
 2023 09:17:31 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41%4]) with mapi id 15.20.6863.032; Fri, 13 Oct 2023
 09:17: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: 5c999109-69a9-11ee-9b0e-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=1WTD5AERBcG88HvphDJ5e61yx+2QMCF7n5OIbUV0jXg=;
 b=g/7rooAjVrHX6xKvkotUlAiRktK9xtiqv9mOYhgReTx7EegMFcmzqiuRLdOfMdFcPYgGuJl7xZTT/CKMEAAI4Yz/9tnLHdQv31Aeg3OWnfEt1WTAFLE95k0UkyrRupApdvknyVA4B8NeRxBtUfQDkip9KsL+11lFXCxjxnrbI00=
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: fe197d223d261cf7
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=CFhWGDTIK8XwS1DZTEbk3FXc+WFrs0IASWCv0qGPGu3i56Dm9vzyYQewgWR2wOv8YSmvQycwhYL4iipAep1nzy6JBB2dSywoney4pFQ3ry0umYq9LT49F756NegcZKswaZaIK30LcFkAgYYU18tneaAQ4bGGnCUXT/s49wjwy7s1hhH/OZvw/R6I3nDraO+K7Ruw/QpOHgYpuo9/hAgiH3SmC3XuRi4ndliDYNs2yMvj0Yjo1qq7AahHTbi3GWTcxlSjTY0HGm4/gLfTYNY/7dIek5saoKK/VlFhACoJ9hrjuGSZrQQirfTJMsNb55Ot2kTb1qwzWi7+WSQWv+UDsQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=1WTD5AERBcG88HvphDJ5e61yx+2QMCF7n5OIbUV0jXg=;
 b=n5Go1PXKoBBbtxqtdmnnCZuf7BXLn2AnNxspX/7VxTKkzMERA8gnmmJd7UDZmTIxHOhLq2afZKy990J6tya23+OmgzjXtx9blohdQAHWUyABz6aR8dQLxwKg33J6XMqPzO1oPw7pH7/Itwhd19qQYlsLTBSYnjrKrpy0kYxM3dnl1C4gIf1OzzOXD1eO0H2ktQ1jirCMPkGM987ncLyOswrGJ0Iqa1rJlAuNZ21nyCiOCHzuM8IJNWvZ5M2YmacZ5g7oF4080+1XyLc+B8I32HBpp3cM4sq3ZBMkCE2U/Fdqw9ZeLJYlGdoGra+LUg/P183NIPEFXLTbYeRNWUSirw==
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=1WTD5AERBcG88HvphDJ5e61yx+2QMCF7n5OIbUV0jXg=;
 b=g/7rooAjVrHX6xKvkotUlAiRktK9xtiqv9mOYhgReTx7EegMFcmzqiuRLdOfMdFcPYgGuJl7xZTT/CKMEAAI4Yz/9tnLHdQv31Aeg3OWnfEt1WTAFLE95k0UkyrRupApdvknyVA4B8NeRxBtUfQDkip9KsL+11lFXCxjxnrbI00=
From: Henry Wang <Henry.Wang@arm.com>
To: Roger Pau Monne <roger.pau@citrix.com>
CC: Xen-devel <xen-devel@lists.xenproject.org>, Jan Beulich
	<jbeulich@suse.com>, Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu
	<wl@xen.org>, Paul Durrant <paul@xen.org>
Subject: Re: [PATCH for-4.18 v2] x86/pvh: fix identity mapping of low 1MB
Thread-Topic: [PATCH for-4.18 v2] x86/pvh: fix identity mapping of low 1MB
Thread-Index: AQHZ/bNI9rurnZMB2EitKmMnzqD0o7BHcLkA
Date: Fri, 13 Oct 2023 09:17:31 +0000
Message-ID: <A808F505-03DE-4F39-B114-1FB5BF3198F0@arm.com>
References: <20231013085654.2789-1-roger.pau@citrix.com>
In-Reply-To: <20231013085654.2789-1-roger.pau@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_|AS8PR08MB7742:EE_|DBAEUR03FT028:EE_|PAVPR08MB9650:EE_
X-MS-Office365-Filtering-Correlation-Id: 53a057d0-79ed-4a54-8c16-08dbcbcd3f68
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:
 /h9AoKc4/cdgmDUuFWQGyzc+Tf6YEUCyt8Zcq0dI7QzNYygh+1L1ktByqtc0k1ZNKKjqd4Wz9HBTcHGBSqKf4YJyVQFfizmkYyyQ4dIzsQEl5sMrxOe6opadeY1JIWTVknzmsfYl4KeXjf9Ak3ZiP9F0ZYc6Y/0G/9kYNCHbuRd+bhOPLydr+Yug7NEpc2sMSe5j7cl7eWsTgl6cWkUPbbLinwePEYytvvV/CoTmd7R8aa1veZ2rPbBUMe6LjlxBpL/JOR7aEwv29FTXU6D+ouNnAGoRtDD64KtkCgHq/z+fx0DCi1rBnYhPes0m/0vGXIKUBuMpi1ls4Gy9YCYFQgceaLY63EhUkD3rPpq3J0QiQw0bBJr6+Fl2cGq0glauTuVjtt0JzmRkIIe1PioPLsivonf4WGzT9xbWjQhzNN3kRHZkGRZrPIreGW05wlWkCUtFP1hruubop2E3ilaMu45fgxnUdNS04deUxakSA+zumtxyhCOFMROB4CwT7b6m+lXX2QAs0ut/2fls2SxTiCiEWR3LQvaS2I/0V+WIj+xOFm3RIh4MxN3k0bG0LRm7ab7v7R08eGK6piPGXH/saT/9avS44YLMle+skvJlkrx9J4nJxSY4p9xG2dREB1DMUZKyOkjYBVveUuqenbP+vg==
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)(396003)(366004)(376002)(39860400002)(136003)(230922051799003)(64100799003)(186009)(1800799009)(451199024)(6506007)(2616005)(71200400001)(26005)(6512007)(53546011)(122000001)(36756003)(38100700002)(86362001)(33656002)(38070700005)(83380400001)(2906002)(5660300002)(91956017)(66476007)(66946007)(66556008)(64756008)(76116006)(66446008)(41300700001)(316002)(6916009)(54906003)(478600001)(4326008)(6486002)(8676002)(8936002)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <05117EEB3F8F804B89D182F25946580C@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB7742
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:
	29d36cec-b256-48e6-eaad-08dbcbcd3a68
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	dYalfI7fB6MH+lx2iQsISiAUWD2x1t4nSjygLGUNAMg5ILannPh1A7FmGs8ezcx3n7/PgTpXpVr86wtBXtxHQk5WC9J0o4ChQIHkFmJykuKYoYWn7RltWNc1w0m4QenngWKLKGOtvrS1cmZSfOQRnZrW4B84xG9QPrvQ0ZvbpOuuicKHVTh5yk95oXBXXZHAlSo5xJGEuok+yTC/OIzFxwwqHO45B8p0Ui533suk27kOeMBLuMR6ibKzeVdoYHX1giLeFNdrlDVxZcSFq31kyWXjDVLFsyyHX8Q1iYjXarviralJxEM7xMmbWIs9JvYYYp7wjPs+VDLVXJw8NbBowAdQuTugez87W4IKkNovkE9+6WNxpCOOJ/PYbM/LO+FkSwkYOvzCbP/ox70ud0bfFdhVV08eUE9lYcCIyiS2qb+yGR0ruTIQ5+NZw5iT/jIquicbOjSUfIpG0oU4maIDvCAZSCWWgSKc1Ck3VMsjpGnkI1k0xMn7y3ymrxezNlUN1p7/phLFZA7ujQT8L3VBZmXknhV0wDZMheaL0b/wf8CT39lWhWEwUtDKyR8RO4z3UcAnm7fWrGZ8+eFQUPlWVOJlxJIa1any4uznuxn8YqHz29AqVUp+JgCDaIujmGkB73DofzEQL6plw4VL9pIoo49hvEFSbmaRyJN3JlNDTuhFbxAyUbJYe2nAydWs0R3jY8ZVG6p01HzzWRZ+h/CtXQg2czP/jMYGKsUZl7+YHC2/wrI2K8tPGiS8EPbrL7aU
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)(346002)(376002)(136003)(230922051799003)(186009)(451199024)(82310400011)(1800799009)(64100799003)(36840700001)(46966006)(40470700004)(47076005)(33656002)(2906002)(40460700003)(36756003)(36860700001)(82740400003)(86362001)(356005)(40480700001)(81166007)(2616005)(53546011)(54906003)(70206006)(41300700001)(70586007)(316002)(26005)(6486002)(6512007)(6506007)(478600001)(83380400001)(5660300002)(8676002)(8936002)(336012)(6862004)(4326008);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Oct 2023 09:17:39.5451
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 53a057d0-79ed-4a54-8c16-08dbcbcd3f68
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: PAVPR08MB9650

SGkgUm9nZXIsDQoNCj4gT24gT2N0IDEzLCAyMDIzLCBhdCAxNjo1NiwgUm9nZXIgUGF1IE1vbm5l
IDxyb2dlci5wYXVAY2l0cml4LmNvbT4gd3JvdGU6DQo+IA0KPiBUaGUgbWFwcGluZyBvZiBtZW1v
cnkgcmVnaW9ucyBiZWxvdyB0aGUgMU1CIG1hcmsgd2FzIGFsbCBkb25lIGJ5IHRoZSBQVkggZG9t
MA0KPiBidWlsZGVyIGNvZGUsIGNhdXNpbmcgdGhlIHJlZ2lvbiB0byBiZSBhdm9pZGVkIGJ5IHRo
ZSBhcmNoIHNwZWNpZmljIElPTU1VDQo+IGhhcmR3YXJlIGRvbWFpbiBpbml0aWFsaXphdGlvbiBj
b2RlLiAgVGhhdCBsZWFkIHRvIHRoZSBJT01NVSBiZWluZyBlbmFibGVkDQo+IHdpdGhvdXQgcmVz
ZXJ2ZWQgcmVnaW9ucyBpbiB0aGUgbG93IDFNQiBpZGVudGl0eSBtYXBwZWQgaW4gdGhlIHAybSBm
b3IgUFZIDQo+IGhhcmR3YXJlIGRvbWFpbnMuICBGaXJtd2FyZSB3aGljaCBoYXBwZW5zIHRvIGJl
IG1pc3NpbmcgUk1SUi9JVk1EIHJhbmdlcw0KPiBkZXNjcmliaW5nIEU4MjAgcmVzZXJ2ZWQgcmVn
aW9ucyBpbiB0aGUgbG93IDFNQiB3b3VsZCB0cmFuc2llbnRseSB0cmlnZ2VyIElPTU1VDQo+IGZh
dWx0cyB1bnRpbCB0aGUgcDJtIGlzIHBvcHVsYXRlZCBieSB0aGUgUFZIIGRvbTAgYnVpbGRlcjoN
Cj4gDQo+IEFNRC1WaTogSU9fUEFHRV9GQVVMVDogMDAwMDowMDoxMy4xIGQwIGFkZHIgMDAwMDAw
MDAwMDBlYjM4MCBmbGFncyAweDIwIFJXDQo+IEFNRC1WaTogSU9fUEFHRV9GQVVMVDogMDAwMDow
MDoxMy4xIGQwIGFkZHIgMDAwMDAwMDAwMDBlYjM0MCBmbGFncyAwDQo+IEFNRC1WaTogSU9fUEFH
RV9GQVVMVDogMDAwMDowMDoxMy4yIGQwIGFkZHIgMDAwMDAwMDAwMDBlYTFjMCBmbGFncyAwDQo+
IEFNRC1WaTogSU9fUEFHRV9GQVVMVDogMDAwMDowMDoxNC41IGQwIGFkZHIgMDAwMDAwMDAwMDBl
YjQ4MCBmbGFncyAweDIwIFJXDQo+IEFNRC1WaTogSU9fUEFHRV9GQVVMVDogMDAwMDowMDoxMi4w
IGQwIGFkZHIgMDAwMDAwMDAwMDBlYjA4MCBmbGFncyAweDIwIFJXDQo+IEFNRC1WaTogSU9fUEFH
RV9GQVVMVDogMDAwMDowMDoxNC41IGQwIGFkZHIgMDAwMDAwMDAwMDBlYjQwMCBmbGFncyAwDQo+
IEFNRC1WaTogSU9fUEFHRV9GQVVMVDogMDAwMDowMDoxMi4wIGQwIGFkZHIgMDAwMDAwMDAwMDBl
YjA0MCBmbGFncyAwDQo+IA0KPiBUaG9zZSBlcnJvcnMgaGF2ZSBiZWVuIG9ic2VydmVkIG9uIHRo
ZSBvc3N0ZXN0IHBpbm90ezAsMX0gYm94ZXMgKEFNRCBGYW0xNWgNCj4gT3B0ZXJvbih0bSkgUHJv
Y2Vzc29yIDMzNTAgSEUpLg0KPiANCj4gTW9zdGx5IHJlbW92ZSB0aGUgc3BlY2lhbCBoYW5kbGlu
ZyBvZiB0aGUgbG93IDFNQiBkb25lIGJ5IHRoZSBQVkggZG9tMCBidWlsZGVyLA0KPiBsZWF2aW5n
IGp1c3QgdGhlIGRhdGEgY29weSBiZXR3ZWVuIFJBTSByZWdpb25zLiAgT3RoZXJ3aXNlIHJlbHkg
b24gdGhlIElPTU1VDQo+IGFyY2ggaW5pdCBjb2RlIHRvIGNyZWF0ZSBhbnkgaWRlbnRpdHkgbWFw
cGluZ3MgZm9yIHJlc2VydmVkIHJlZ2lvbnMgaW4gdGhhdA0KPiByYW5nZSAobGlrZSBpdCBhbHJl
YWR5IGRvZXMgZm9yIHJlc2VydmVkIHJlZ2lvbnMgZWxzZXdoZXJlKS4NCj4gDQo+IE5vdGUgdGhl
cmUncyBhIHNtYWxsIGRpZmZlcmVuY2UgaW4gYmVoYXZpb3IsIGFzIGhvbGVzIGluIHRoZSBsb3cg
MU1CIHdpbGwgbm8NCj4gbG9uZ2VyIGJlIGlkZW50aXR5IG1hcHBlZCB0byB0aGUgcDJtLg0KPiAN
Cj4gRml4ZXM6IDZiNGY2YTMxYWNlMSAoJ3g4Ni9QVkg6IGRlLWR1cGxpY2F0ZSBtYXBwaW5ncyBm
b3IgZmlyc3QgTWIgb2YgRG9tMCBtZW1vcnknKQ0KPiBTaWduZWQtb2ZmLWJ5OiBSb2dlciBQYXUg
TW9ubsOpIDxyb2dlci5wYXVAY2l0cml4LmNvbT4NCg0KUmVsZWFzZS1hY2tlZC1ieTogSGVucnkg
V2FuZyA8SGVucnkuV2FuZ0Bhcm0uY29tPg0KDQpLaW5kIHJlZ2FyZHMsDQpIZW5yeQ0KDQo+IC0t
LQ0KPiBDaGFuZ2VzIHNpbmNlIHYxOg0KPiAtIFJld29yZCBjb21taXQgbWVzc2FnZS4NCj4gLS0t
DQo+IHhlbi9hcmNoL3g4Ni9odm0vZG9tMF9idWlsZC5jICAgICAgIHwgMjIgLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLQ0KPiB4ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC94ODYvaW9tbXUuYyB8ICA4ICst
LS0tLS0tDQo+IDIgZmlsZXMgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDI5IGRlbGV0aW9ucygt
KQ0KPiANCj4gZGlmZiAtLWdpdCBhL3hlbi9hcmNoL3g4Ni9odm0vZG9tMF9idWlsZC5jIGIveGVu
L2FyY2gveDg2L2h2bS9kb20wX2J1aWxkLmMNCj4gaW5kZXggYmMwZTI5MGRiNjEyLi45NzlkYjdk
MWVjNGQgMTAwNjQ0DQo+IC0tLSBhL3hlbi9hcmNoL3g4Ni9odm0vZG9tMF9idWlsZC5jDQo+ICsr
KyBiL3hlbi9hcmNoL3g4Ni9odm0vZG9tMF9idWlsZC5jDQo+IEBAIC00NDksMjggKzQ0OSw2IEBA
IHN0YXRpYyBpbnQgX19pbml0IHB2aF9wb3B1bGF0ZV9wMm0oc3RydWN0IGRvbWFpbiAqZCkNCj4g
ICAgICAgICB9DQo+ICAgICB9DQo+IA0KPiAtICAgIC8qIE5vbi1SQU0gcmVnaW9ucyBvZiBzcGFj
ZSBiZWxvdyAxTUIgZ2V0IGlkZW50aXR5IG1hcHBlZC4gKi8NCj4gLSAgICBmb3IgKCBpID0gcmMg
PSAwOyBpIDwgTUIxX1BBR0VTOyArK2kgKQ0KPiAtICAgIHsNCj4gLSAgICAgICAgcDJtX3R5cGVf
dCBwMm10Ow0KPiAtICAgICAgICBtZm5fdCBtZm4gPSBnZXRfZ2ZuX3F1ZXJ5KGQsIGksICZwMm10
KTsNCj4gLQ0KPiAtICAgICAgICBpZiAoIG1mbl9lcShtZm4sIElOVkFMSURfTUZOKSApDQo+IC0g
ICAgICAgICAgICByYyA9IHNldF9tbWlvX3AybV9lbnRyeShkLCBfZ2ZuKGkpLCBfbWZuKGkpLCBQ
QUdFX09SREVSXzRLKTsNCj4gLSAgICAgICAgZWxzZQ0KPiAtICAgICAgICAgICAgLyoNCj4gLSAg
ICAgICAgICAgICAqIElmIHRoZSBwMm0gZW50cnkgaXMgYWxyZWFkeSBzZXQgaXQgbXVzdCBiZWxv
bmcgdG8gYSBSTVJSIGFuZA0KPiAtICAgICAgICAgICAgICogYWxyZWFkeSBiZSBpZGVudGl0eSBt
YXBwZWQsIG9yIGJlIGEgUkFNIHJlZ2lvbi4NCj4gLSAgICAgICAgICAgICAqLw0KPiAtICAgICAg
ICAgICAgQVNTRVJUKHAybXQgPT0gcDJtX3JhbV9ydyB8fCBtZm5fZXEobWZuLCBfbWZuKGkpKSk7
DQo+IC0gICAgICAgIHB1dF9nZm4oZCwgaSk7DQo+IC0gICAgICAgIGlmICggcmMgKQ0KPiAtICAg
ICAgICB7DQo+IC0gICAgICAgICAgICBwcmludGsoIkZhaWxlZCB0byBpZGVudGl0eSBtYXAgUEZO
ICV4OiAlZFxuIiwgaSwgcmMpOw0KPiAtICAgICAgICAgICAgcmV0dXJuIHJjOw0KPiAtICAgICAg
ICB9DQo+IC0gICAgfQ0KPiAtDQo+ICAgICBpZiAoIGNwdV9oYXNfdm14ICYmIHBhZ2luZ19tb2Rl
X2hhcChkKSAmJiAhdm14X3VucmVzdHJpY3RlZF9ndWVzdCh2KSApDQo+ICAgICB7DQo+ICAgICAg
ICAgLyoNCj4gZGlmZiAtLWdpdCBhL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL3g4Ni9pb21tdS5j
IGIveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gveDg2L2lvbW11LmMNCj4gaW5kZXggYzg1NTQ5Y2Nh
ZDZlLi44NTdkY2NiNmE0NjUgMTAwNjQ0DQo+IC0tLSBhL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdo
L3g4Ni9pb21tdS5jDQo+ICsrKyBiL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL3g4Ni9pb21tdS5j
DQo+IEBAIC00MDAsMTMgKzQwMCw3IEBAIHZvaWQgX19od2RvbV9pbml0IGFyY2hfaW9tbXVfaHdk
b21faW5pdChzdHJ1Y3QgZG9tYWluICpkKQ0KPiAgICAgbWF4X3BmbiA9IChHQig0KSA+PiBQQUdF
X1NISUZUKSAtIDE7DQo+ICAgICB0b3AgPSBtYXgobWF4X3BkeCwgcGZuX3RvX3BkeChtYXhfcGZu
KSArIDEpOw0KPiANCj4gLSAgICAvKg0KPiAtICAgICAqIEZpcnN0IE1iIHdpbGwgZ2V0IG1hcHBl
ZCBpbiBvbmUgZ28gYnkgcHZoX3BvcHVsYXRlX3AybSgpLiBBdm9pZA0KPiAtICAgICAqIHNldHRp
bmcgdXAgcG90ZW50aWFsbHkgY29uZmxpY3RpbmcgbWFwcGluZ3MgaGVyZS4NCj4gLSAgICAgKi8N
Cj4gLSAgICBzdGFydCA9IHBhZ2luZ19tb2RlX3RyYW5zbGF0ZShkKSA/IFBGTl9ET1dOKE1CKDEp
KSA6IDA7DQo+IC0NCj4gLSAgICBmb3IgKCBpID0gcGZuX3RvX3BkeChzdGFydCksIGNvdW50ID0g
MDsgaSA8IHRvcDsgKQ0KPiArICAgIGZvciAoIGkgPSAwLCBzdGFydCA9IDAsIGNvdW50ID0gMDsg
aSA8IHRvcDsgKQ0KPiAgICAgew0KPiAgICAgICAgIHVuc2lnbmVkIGxvbmcgcGZuID0gcGR4X3Rv
X3BmbihpKTsNCj4gICAgICAgICB1bnNpZ25lZCBpbnQgcGVybXMgPSBod2RvbV9pb21tdV9tYXAo
ZCwgcGZuLCBtYXhfcGZuKTsNCj4gLS0gDQo+IDIuNDIuMA0KPiANCg0K


From xen-devel-bounces@lists.xenproject.org Fri Oct 13 09:23:51 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 09:23:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616336.958253 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrEOY-0003Gx-0O; Fri, 13 Oct 2023 09:23:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616336.958253; Fri, 13 Oct 2023 09:23: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 1qrEOX-0003Gq-U9; Fri, 13 Oct 2023 09:23:45 +0000
Received: by outflank-mailman (input) for mailman id 616336;
 Fri, 13 Oct 2023 09:23:44 +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 1qrEOW-0003FM-Ob
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 09:23:44 +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 1qrEOV-0003W4-HX; Fri, 13 Oct 2023 09:23:43 +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 1qrEOV-0004SG-9x; Fri, 13 Oct 2023 09: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=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=YyswfprD7K7JyBsBv+/zxxkbIiRUMSoadaWyJUFP/t0=; b=2YaaMhun5Vt+iwoliAkBQuHV+6
	5LssFV/B8MC+WnZTwSyK6jsHkm8guRLy+Ylpet2ahdK7MJRkOx8obOjbYKlVfMO384gtsy9H6BStf
	PABRSOOCUYISbU4YC6ZflUOY63nxxT2dLrGQRbq8DyUaOn9y1isxOtx1FiaCdlgQk75A=;
Message-ID: <beab75c7-8e6a-4571-8fb0-4e57086d414e@xen.org>
Date: Fri, 13 Oct 2023 10:23:41 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: MISRA C:2012 D4.11 caution on staging
Content-Language: en-GB
To: Stefano Stabellini <sstabellini@kernel.org>,
 Nicola Vetrini <nicola.vetrini@bugseng.com>
Cc: Xen-devel <xen-devel@lists.xenproject.org>, consulting@bugseng.com,
 Andrew Cooper <andrew.cooper3@citrix.com>, Jan Beulich <jbeulich@suse.com>,
 Bertrand Marquis <bertrand.marquis@arm.com>, roger.pau@citrix.com,
 George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>
References: <7972c20f361126022fa97f6b51ca2d9c@bugseng.com>
 <alpine.DEB.2.22.394.2310101658030.3431292@ubuntu-linux-20-04-desktop>
From: Julien Grall <julien@xen.org>
In-Reply-To: <alpine.DEB.2.22.394.2310101658030.3431292@ubuntu-linux-20-04-desktop>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit



On 11/10/2023 01:01, Stefano Stabellini wrote:
> Hey Julien, please double-check what I am writing below

Hi Stefano,

> On Tue, 10 Oct 2023, Nicola Vetrini wrote:
>> Hi,
>>
>> as you can see from [1], there's a MISRA C guideline, D4.11, that is supposed
>> to be clean
>> (i.e., have no reports), but has a caution on an argument to memcpy
>> (the second argument might be null according to the checker, given a set of
>> assumptions on
>> the control flow). To access the report just click on the second link in the
>> log, which should take you to a webpage with a list of
>> MISRA guidelines. Click on D4.11 and you'll see the full report, which I
>> pasted below for convenience.
>>
>> If the finding is genuine, then some countermeasure needs to be taken against
>> this
>> possible bug, otherwise it needs to be motivated why the field config->handle
>> can't
>> be null at that point.
>> The finding is likely the result of an improvement made to the checker,
>> because the first
>> analysis I can see that spots it happened when rc1 has been tagged, but that
>> commit does not
>> touch the involved files.
>>
>> [1] https://gitlab.com/xen-project/xen/-/jobs/5251222578
>>
>>   caution for MC3R1.D4.11 untagged
>> xen/common/domain.c:758.27-758.40:
>> [59] null pointer passed as 2nd argument to memory copy function
> 
> 
> This looks like a genuine issue: in domain_create, config->handle could
> be uninitialized. For example, domain_create can be called
> from xen/arch/arm/domain_build.c:create_domUs, passing &d_cfg, and I
> don't see where we initialize d_cfg.handle.
> 
> This was just by code inspection. Julien, did I miss anything?

cfg->handle is an embedded array. It will get automatically initialized 
to zero as we are using:

d_cfg = { ... };

Now, looking through the steps of the analysis [1], there is something odd.

The code looks like this:

if ( !is_idle_domain(d) )
   ...


if ( err = arch_domain_create(... ) != 0 )
   ...

init_status |= ...

if ( !is_idle_domain() )
   ...


One the first if, Eclair assumes that the domain is equal to 32767 (e.g. 
idle domain):

[27] field 'domain_id' is equal to 32767

But then on third if, we have:

[30] assuming field 'domain_id' is not equal to 32767; taking true branch

So the question is why did Eclair think 'domain_id' changed?

Cheers,

[1] 
https://saas.eclairit.com:3787/fs/var/local/eclair/xen-project.ecdf/xen-project/xen/ECLAIR_normal/4.18.0-rc2/ARM64/5251222578/PROJECT.ecd;/sources/xen/common/domain.c.html#{%22select%22:true,%22selection%22:{%22hiddenAreaKinds%22:[],%22hiddenSubareaKinds%22:[],%22show%22:false,%22selector%22:{%22enabled%22:true,%22negated%22:true,%22kind%22:0,%22domain%22:%22kind%22,%22inputs%22:[{%22enabled%22:true,%22text%22:%22caution%22}]}}}

Here it detects


-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Fri Oct 13 09:27:24 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 09:27:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616340.958263 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrERw-0004jp-HW; Fri, 13 Oct 2023 09:27:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616340.958263; Fri, 13 Oct 2023 09: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 1qrERw-0004ji-Cz; Fri, 13 Oct 2023 09:27:16 +0000
Received: by outflank-mailman (input) for mailman id 616340;
 Fri, 13 Oct 2023 09:27: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 1qrERv-0004jc-MU
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 09:27: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 1qrERv-0003Z4-1q; Fri, 13 Oct 2023 09:27: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 1qrERu-0004WZ-T7; Fri, 13 Oct 2023 09: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=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=FDgLVysHtO91TYsdClVbd7flP0a3/hrBKpzeEw4nO9w=; b=PDYQUp7LU/Tw28hemozZGQKhvt
	UWzNuBOmdU5I5rZNF1OE2XDCYvJJ2IXMAo7JXOqVNiaSQnHWzwi0U3DNEvkFMRzbY4EcqdE0ChcI3
	CpFeMTlYLESgYdz41m0I/UrNkzYXUgnrq4IVaZRilUq2z9NCw9tYTM+qojfqYZrGvYHo=;
Message-ID: <75a00257-c062-4d82-9b64-1707ce4566e6@xen.org>
Date: Fri, 13 Oct 2023 10:27:13 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: MISRA C:2012 D4.11 caution on staging
Content-Language: en-GB
To: Andrew Cooper <andrew.cooper3@citrix.com>,
 Nicola Vetrini <nicola.vetrini@bugseng.com>
Cc: Xen-devel <xen-devel@lists.xenproject.org>, consulting@bugseng.com,
 Stefano Stabellini <sstabellini@kernel.org>, Jan Beulich
 <jbeulich@suse.com>, Bertrand Marquis <bertrand.marquis@arm.com>,
 roger.pau@citrix.com, George Dunlap <george.dunlap@citrix.com>,
 Wei Liu <wl@xen.org>
References: <7972c20f361126022fa97f6b51ca2d9c@bugseng.com>
 <61f04d4b-34d9-4fd1-a989-56b042b4f3d8@citrix.com>
 <baa73fa24385b39bc6e82c4ccb08bd13@bugseng.com>
 <26f09702-9340-41ae-afcc-808becb67876@citrix.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <26f09702-9340-41ae-afcc-808becb67876@citrix.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

Hi Andrew,

On 11/10/2023 08:51, Andrew Cooper wrote:
> On 11/10/2023 3:47 pm, Nicola Vetrini wrote:
>> On 11/10/2023 02:15, Andrew Cooper wrote:
>>> On 10/10/2023 5:31 pm, Nicola Vetrini wrote:
>>>> Hi,
>>>>
>>>> as you can see from [1], there's a MISRA C guideline, D4.11, that is
>>>> supposed to be clean
>>>> (i.e., have no reports), but has a caution on an argument to memcpy
>>>> (the second argument might be null according to the checker, given a
>>>> set of assumptions on
>>>> the control flow). To access the report just click on the second link
>>>> in the log, which should take you to a webpage with a list of
>>>> MISRA guidelines. Click on D4.11 and you'll see the full report, which
>>>> I pasted below for convenience.
>>>>
>>>> If the finding is genuine, then some countermeasure needs to be taken
>>>> against this
>>>> possible bug, otherwise it needs to be motivated why the field
>>>> config->handle can't
>>>> be null at that point.
>>>> The finding is likely the result of an improvement made to the
>>>> checker, because the first
>>>> analysis I can see that spots it happened when rc1 has been tagged,
>>>> but that commit does not
>>>> touch the involved files.
>>>>
>>>> [1] https://gitlab.com/xen-project/xen/-/jobs/5251222578
>>>
>>> That's a false positive, but I'm not entirely surprised that the checker
>>> struggled to see it.
>>>
>>> First,
>>>
>>> ASSERT(is_system_domain(d) ? config == NULL : config != NULL);
>>>
>>> All system domains (domid >= 0x7ff0, inc IDLE) pass a NULL config.  All
>>> other domains pass a real config.
>>>
>>> Next,
>>>
>>> /* DOMID_{XEN,IO,etc} (other than IDLE) are sufficiently constructed. */
>>> if ( is_system_domain(d) && !is_idle_domain(d) )
>>>      return d;
>>>
>>> So at this point we only have the IDLE domain and real domains.
>>>
>>> And finally, the complained-about construct is inside an:
>>>
>>> if ( !is_idle_domain(d) )
>>>      ...
>>>
>>> hence config cannot be NULL, but only because of the way in which
>>> is_{system,idle}_domain() interact.
>>>
>>> ~Andrew
>>
>> Ok. I think this should be documented as a false positive using the
>> comment deviation mechanism
>> in the false-positive-eclair.json file (once a name for the prefix is
>> settled on in the
>> other thread).
>>
> 
> Yeah - I was expecting that.
> 
> This code is mid-cleanup (in my copious free time, so not for several
> releases now...) but even when it is rearranged sufficiently for IDLE to
> have an earlier exit, I still wouldn't expect a static analyser to be
> able to recognise this as being safe.

Looking through the analysis, I think Eclair properly detect the IDLE 
domain. But it thinks the domain ID has changed mid function (see my 
other reply to Stefano).

So we can return early for the IDLE domain, then this should silence 
Eclair. That said, it is unclear to me why it thinks the domain_id can 
change...

A simple way to fix it would be to have a local boolean that will be 
used in place of is_idle_domain(d). This should help Eclair to detect 
that a domain cannot change its ID in the middle of domain construction.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Fri Oct 13 09:30:36 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 09:30:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616344.958272 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrEV2-0006Ao-UF; Fri, 13 Oct 2023 09:30:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616344.958272; Fri, 13 Oct 2023 09:30: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 1qrEV2-0006Ah-Rh; Fri, 13 Oct 2023 09:30:28 +0000
Received: by outflank-mailman (input) for mailman id 616344;
 Fri, 13 Oct 2023 09:30: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=9owW=F3=kernel.org=patchwork-bot+netdevbpf@srs-se1.protection.inumbo.net>)
 id 1qrEV2-0006Ab-0a
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 09:30: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 2350b3d6-69ab-11ee-9b0e-b553b5be7939;
 Fri, 13 Oct 2023 11:30:25 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by dfw.source.kernel.org (Postfix) with ESMTP id 546F76203B;
 Fri, 13 Oct 2023 09:30:24 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPS id EADFAC433C7;
 Fri, 13 Oct 2023 09:30:23 +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
 C7684C73FEA; Fri, 13 Oct 2023 09:30:23 +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: 2350b3d6-69ab-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1697189424;
	bh=zfKLiUU/AufCJHwWSWrzPG7oidZX9KQ3FzwTiUS/QeQ=;
	h=Subject:From:Date:References:In-Reply-To:To:Cc:From;
	b=ESFd132eq0rgvM1vQqVC1SPnM6aEpKXWoBHDvCGj/tSGkIeohsRVbh4OVBmgNR0oo
	 dJiYncP0ndiyM9JTsWjfYQ+gu2jDMtWbMgu3MDoABkfdiJg6tW7EoVaSXZNKNpo5Xg
	 UvdCRRJNGaS8Xc7SfO+Nr9SskHnNyYkHYcP1J96lpLpfPpz6WjV1HOE+ksvDTNIzph
	 G+rd66Xbx93ggz3oY0oIhxJpMukDIu5qclR8+NARJFmjqaRC90CnlBBmyddzbNSz5r
	 UxhKR08dNbmm9wAtIDN/v0QThdqI71d12lcHIvL24RmnDXHL1nYhI99RQSWsZXSsYo
	 snarzUSSufkdA==
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Subject: Re: [PATCH 0/1] Add software timestamp capabilities to xen-netback device
From: patchwork-bot+netdevbpf@kernel.org
Message-Id: 
 <169718942381.12102.14938354463321505614.git-patchwork-notify@kernel.org>
Date: Fri, 13 Oct 2023 09:30:23 +0000
References: <20231010142630.984585-1-luca.fancellu@arm.com>
In-Reply-To: <20231010142630.984585-1-luca.fancellu@arm.com>
To: Luca Fancellu <luca.fancellu@arm.com>
Cc: linux-kernel@vger.kernel.org, wei.liu@kernel.org, paul@xen.org,
 xen-devel@lists.xenproject.org, netdev@vger.kernel.org, rahul.singh@arm.com

Hello:

This patch was applied to netdev/net-next.git (main)
by David S. Miller <davem@davemloft.net>:

On Tue, 10 Oct 2023 15:26:29 +0100 you wrote:
> Hi all,
> 
> during some experiment using PTP (ptp4l) between a Dom0 domain and a DomU guest,
> I noticed that the virtual interface brought up by the toolstack was not able
> to be used as ptp4l interface on the Dom0 side, a brief investigation on the
> drivers revealed that the backend driver doesn't have the SW timestamp
> capabilities, so in order to provide them, I'm sending this patch.
> 
> [...]

Here is the summary with links:
  - [1/1] xen-netback: add software timestamp capabilities
    https://git.kernel.org/netdev/net-next/c/0b38d2ec2282

You are awesome, thank you!
-- 
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/patchwork/pwbot.html




From xen-devel-bounces@lists.xenproject.org Fri Oct 13 09:42:41 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 09:42:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616351.958292 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrEgn-0000tJ-A1; Fri, 13 Oct 2023 09:42:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616351.958292; Fri, 13 Oct 2023 09:42: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 1qrEgn-0000tC-7D; Fri, 13 Oct 2023 09:42:37 +0000
Received: by outflank-mailman (input) for mailman id 616351;
 Fri, 13 Oct 2023 09:42: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=U36v=F3=suse.com=jgross@srs-se1.protection.inumbo.net>)
 id 1qrEgm-0000sq-79
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 09:42:36 +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 d694204a-69ac-11ee-98d4-6d05b1d4d9a1;
 Fri, 13 Oct 2023 11:42:35 +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 C43C91FD8B;
 Fri, 13 Oct 2023 09:42:34 +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 3DA3B1358F;
 Fri, 13 Oct 2023 09:42:34 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap2.suse-dmz.suse.de with ESMTPSA id lPKpDQoRKWUTGwAAMHmgww
 (envelope-from <jgross@suse.com>); Fri, 13 Oct 2023 09:42: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: d694204a-69ac-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1697190154; 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=/gZ6bKELR+LuVa6bHV+UgFATKWCcd1ls6viJ4JvpsO0=;
	b=vWDKM77cJf9LX1PCuBmjkJXoJgSS1RVql0Gn4Dc+70qvx39sFn+0ldTxMNwK5Zp5ODBJOF
	AZMVHFuavdKCfFCWtLezkocKX2YefGk8mQGSFReAWwknjXt8f4f1jTy0x1hjTkxus0w6K3
	BOS5vyPjx4ytGyrbgC9RKSD9O5abH3w=
From: Juergen Gross <jgross@suse.com>
To: xen-devel@lists.xenproject.org
Cc: javi.merino@cloud.com,
	Juergen Gross <jgross@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 01/13] xen/spinlock: fix coding style issues
Date: Fri, 13 Oct 2023 11:42:12 +0200
Message-Id: <20231013094224.7060-2-jgross@suse.com>
X-Mailer: git-send-email 2.35.3
In-Reply-To: <20231013094224.7060-1-jgross@suse.com>
References: <20231013094224.7060-1-jgross@suse.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Authentication-Results: smtp-out2.suse.de;
	none
X-Spam-Level: 
X-Spam-Score: -6.10
X-Spamd-Result: default: False [-6.10 / 50.00];
	 ARC_NA(0.00)[];
	 RCVD_VIA_SMTP_AUTH(0.00)[];
	 FROM_HAS_DN(0.00)[];
	 TO_DN_SOME(0.00)[];
	 TO_MATCH_ENVRCPT_ALL(0.00)[];
	 R_MISSING_CHARSET(2.50)[];
	 MIME_GOOD(-0.10)[text/plain];
	 REPLY(-4.00)[];
	 BROKEN_CONTENT_TYPE(1.50)[];
	 NEURAL_HAM_LONG(-3.00)[-1.000];
	 DKIM_SIGNED(0.00)[suse.com:s=susede1];
	 NEURAL_HAM_SHORT(-1.00)[-1.000];
	 RCPT_COUNT_SEVEN(0.00)[9];
	 MID_CONTAINS_FROM(1.00)[];
	 FROM_EQ_ENVFROM(0.00)[];
	 MIME_TRACE(0.00)[0:+];
	 RCVD_COUNT_TWO(0.00)[2];
	 RCVD_TLS_ALL(0.00)[];
	 BAYES_HAM(-3.00)[99.99%]
X-Spam-Flag: NO

Fix some coding style issues in spinlock coding:

- Instead of u64 etc. use the preferred uint64_t etc. types
- Remove some trailing spaces
- Add missing spaces in "if" statements
- Add some missing blank lines

Signed-off-by: Juergen Gross <jgross@suse.com>
---
V2:
- new patch
---
 xen/common/spinlock.c      | 20 +++++++++++---------
 xen/include/xen/spinlock.h | 16 ++++++++--------
 2 files changed, 19 insertions(+), 17 deletions(-)

diff --git a/xen/common/spinlock.c b/xen/common/spinlock.c
index 7f453234a9..202c707540 100644
--- a/xen/common/spinlock.c
+++ b/xen/common/spinlock.c
@@ -100,7 +100,7 @@ void check_lock(union lock_debug *debug, bool try)
      * every lock must be consistently observed else we can deadlock in
      * IRQ-context rendezvous functions (a rendezvous which gets every CPU
      * into IRQ context before any CPU is released from the rendezvous).
-     * 
+     *
      * If we can mix IRQ-disabled and IRQ-enabled callers, the following can
      * happen:
      *  * Lock is held by CPU A, with IRQs enabled
@@ -108,7 +108,7 @@ void check_lock(union lock_debug *debug, bool try)
      *  * Rendezvous starts -- CPU A takes interrupt and enters rendezbous spin
      *  * DEADLOCK -- CPU B will never enter rendezvous, CPU A will never exit
      *                the rendezvous, and will hence never release the lock.
-     * 
+     *
      * To guard against this subtle bug we latch the IRQ safety of every
      * spinlock in the system, on first use.
      *
@@ -151,12 +151,12 @@ static void check_barrier(union lock_debug *debug)
 
     /*
      * For a barrier, we have a relaxed IRQ-safety-consistency check.
-     * 
+     *
      * It is always safe to spin at the barrier with IRQs enabled -- that does
      * not prevent us from entering an IRQ-context rendezvous, and nor are
      * we preventing anyone else from doing so (since we do not actually
      * acquire the lock during a barrier operation).
-     * 
+     *
      * However, if we spin on an IRQ-unsafe lock with IRQs disabled then that
      * is clearly wrong, for the same reason outlined in check_lock() above.
      */
@@ -262,7 +262,7 @@ void spin_debug_disable(void)
 #ifdef CONFIG_DEBUG_LOCK_PROFILE
 
 #define LOCK_PROFILE_REL                                                     \
-    if (lock->profile)                                                       \
+    if ( lock->profile )                                                     \
     {                                                                        \
         lock->profile->time_hold += NOW() - lock->profile->time_locked;      \
         lock->profile->lock_cnt++;                                           \
@@ -270,10 +270,10 @@ void spin_debug_disable(void)
 #define LOCK_PROFILE_VAR    s_time_t block = 0
 #define LOCK_PROFILE_BLOCK  block = block ? : NOW();
 #define LOCK_PROFILE_GOT                                                     \
-    if (lock->profile)                                                       \
+    if ( lock->profile )                                                     \
     {                                                                        \
         lock->profile->time_locked = NOW();                                  \
-        if (block)                                                           \
+        if ( block )                                                         \
         {                                                                    \
             lock->profile->time_block += lock->profile->time_locked - block; \
             lock->profile->block_cnt++;                                      \
@@ -298,7 +298,7 @@ static always_inline spinlock_tickets_t observe_lock(spinlock_tickets_t *t)
     return v;
 }
 
-static always_inline u16 observe_head(spinlock_tickets_t *t)
+static always_inline uint16_t observe_head(spinlock_tickets_t *t)
 {
     smp_rmb();
     return read_atomic(&t->head);
@@ -412,7 +412,7 @@ int _spin_trylock(spinlock_t *lock)
      */
     got_lock(&lock->debug);
 #ifdef CONFIG_DEBUG_LOCK_PROFILE
-    if (lock->profile)
+    if ( lock->profile )
         lock->profile->time_locked = NOW();
 #endif
     return 1;
@@ -616,6 +616,7 @@ int spinlock_profile_control(struct xen_sysctl_lockprof_op *pc)
     case XEN_SYSCTL_LOCKPROF_reset:
         spinlock_profile_reset('\0');
         break;
+
     case XEN_SYSCTL_LOCKPROF_query:
         pc->nr_elem = 0;
         par.rc = 0;
@@ -624,6 +625,7 @@ int spinlock_profile_control(struct xen_sysctl_lockprof_op *pc)
         pc->time = NOW() - lock_profile_start;
         rc = par.rc;
         break;
+
     default:
         rc = -EINVAL;
         break;
diff --git a/xen/include/xen/spinlock.h b/xen/include/xen/spinlock.h
index e7a1c1aa89..4b82739083 100644
--- a/xen/include/xen/spinlock.h
+++ b/xen/include/xen/spinlock.h
@@ -81,8 +81,8 @@ struct lock_profile {
     struct lock_profile *next;       /* forward link */
     const char          *name;       /* lock name */
     struct spinlock     *lock;       /* the lock itself */
-    u64                 lock_cnt;    /* # of complete locking ops */
-    u64                 block_cnt;   /* # of complete wait for lock */
+    uint64_t            lock_cnt;    /* # of complete locking ops */
+    uint64_t            block_cnt;   /* # of complete wait for lock */
     s_time_t            time_hold;   /* cumulated lock time */
     s_time_t            time_block;  /* cumulated wait time */
     s_time_t            time_locked; /* system time of last locking */
@@ -122,7 +122,7 @@ struct lock_profile_qhead {
         prof->lock = &(s)->l;                                                 \
         prof->next = (s)->profile_head.elem_q;                                \
         (s)->profile_head.elem_q = prof;                                      \
-    } while(0)
+    } while( 0 )
 
 void _lock_profile_register_struct(
     int32_t type, struct lock_profile_qhead *qhead, int32_t idx);
@@ -153,10 +153,10 @@ struct lock_profile_qhead { };
 #endif
 
 typedef union {
-    u32 head_tail;
+    uint32_t head_tail;
     struct {
-        u16 head;
-        u16 tail;
+        uint16_t head;
+        uint16_t tail;
     };
 } spinlock_tickets_t;
 
@@ -164,10 +164,10 @@ typedef union {
 
 typedef struct spinlock {
     spinlock_tickets_t tickets;
-    u16 recurse_cpu:SPINLOCK_CPU_BITS;
+    uint16_t recurse_cpu:SPINLOCK_CPU_BITS;
 #define SPINLOCK_NO_CPU        ((1u << SPINLOCK_CPU_BITS) - 1)
 #define SPINLOCK_RECURSE_BITS  (16 - SPINLOCK_CPU_BITS)
-    u16 recurse_cnt:SPINLOCK_RECURSE_BITS;
+    uint16_t recurse_cnt:SPINLOCK_RECURSE_BITS;
 #define SPINLOCK_MAX_RECURSE   ((1u << SPINLOCK_RECURSE_BITS) - 1)
     union lock_debug debug;
 #ifdef CONFIG_DEBUG_LOCK_PROFILE
-- 
2.35.3



From xen-devel-bounces@lists.xenproject.org Fri Oct 13 09:42:41 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 09:42:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616350.958282 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrEgj-0000dm-2W; Fri, 13 Oct 2023 09:42:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616350.958282; Fri, 13 Oct 2023 09:42: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 1qrEgi-0000df-VP; Fri, 13 Oct 2023 09:42:32 +0000
Received: by outflank-mailman (input) for mailman id 616350;
 Fri, 13 Oct 2023 09:42: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=U36v=F3=suse.com=jgross@srs-se1.protection.inumbo.net>)
 id 1qrEgi-0000dZ-49
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 09:42:32 +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 d34b637c-69ac-11ee-9b0e-b553b5be7939;
 Fri, 13 Oct 2023 11:42: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-out1.suse.de (Postfix) with ESMTPS id CA3DE21891;
 Fri, 13 Oct 2023 09:42: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 608CD1358F;
 Fri, 13 Oct 2023 09:42:28 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap2.suse-dmz.suse.de with ESMTPSA id 0HxbFgQRKWUKGwAAMHmgww
 (envelope-from <jgross@suse.com>); Fri, 13 Oct 2023 09:42: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: d34b637c-69ac-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1697190148; 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=fTzJIQp6znmn5VajoA1i/XMC/nPFDMfKldCpx9C01pE=;
	b=VJS41FxSwILxki8I8pxogPRsB2sz2LZ0NbOVKjuwvHg2l6kOHJzVQBiTA0BeDnW8/Ycga1
	tc1XJlQFikxGZCLTx71iwjWc6WzCbZm9fyqpYVTt+4TjeJpfqrDYj6jvTTNn62nxEPUFho
	eoHXkdW+SdbvFZ1pXVa/b8iNn0vTMvo=
From: Juergen Gross <jgross@suse.com>
To: xen-devel@lists.xenproject.org
Cc: javi.merino@cloud.com,
	Juergen Gross <jgross@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>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>,
	Paul Durrant <paul@xen.org>,
	Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Tamas K Lengyel <tamas@tklengyel.com>,
	Lukasz Hawrylko <lukasz@hawrylko.pl>,
	"Daniel P. Smith" <dpsmith@apertussolutions.com>,
	=?UTF-8?q?Mateusz=20M=C3=B3wka?= <mateusz.mowka@intel.com>
Subject: [PATCH v2 00/13] xen/spinlock: make recursive spinlocks a dedicated type
Date: Fri, 13 Oct 2023 11:42:11 +0200
Message-Id: <20231013094224.7060-1-jgross@suse.com>
X-Mailer: git-send-email 2.35.3
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Authentication-Results: smtp-out1.suse.de;
	none
X-Spam-Level: 
X-Spam-Score: 0.90
X-Spamd-Result: default: False [0.90 / 50.00];
	 ARC_NA(0.00)[];
	 RCVD_VIA_SMTP_AUTH(0.00)[];
	 FROM_HAS_DN(0.00)[];
	 TO_DN_SOME(0.00)[];
	 TO_MATCH_ENVRCPT_ALL(0.00)[];
	 R_MISSING_CHARSET(2.50)[];
	 MIME_GOOD(-0.10)[text/plain];
	 BROKEN_CONTENT_TYPE(1.50)[];
	 NEURAL_HAM_LONG(-3.00)[-1.000];
	 DKIM_SIGNED(0.00)[suse.com:s=susede1];
	 NEURAL_HAM_SHORT(-1.00)[-1.000];
	 RCPT_COUNT_TWELVE(0.00)[17];
	 MID_CONTAINS_FROM(1.00)[];
	 FROM_EQ_ENVFROM(0.00)[];
	 MIME_TRACE(0.00)[0:+];
	 RCVD_COUNT_TWO(0.00)[2];
	 RCVD_TLS_ALL(0.00)[];
	 BAYES_HAM(-0.00)[38.51%]
X-Spam-Flag: NO

Instead of being able to use normal spinlocks as recursive ones, too,
make recursive spinlocks a special lock type.

This will make the spinlock structure smaller in production builds and
add type-safety.

This allows to increase the maximum number of physical cpus from 8191
to 65535 without increasing the size of the lock structure in production
builds (the size of recursive spinlocks in debug builds will grow to
12 bytes due to that change).

Changes in V2:
- addressed comments by Jan Beulich
- lots of additional cleanups
- reorganized complete series

Juergen Gross (13):
  xen/spinlock: fix coding style issues
  xen/spinlock: reduce lock profile ifdefs
  xen/spinlock: make spinlock initializers more readable
  xen/spinlock: introduce new type for recursive spinlocks
  xen/spinlock: rename recursive lock functions
  xen/spinlock: add rspin_[un]lock_irq[save|restore]()
  xen/spinlock: make struct lock_profile rspinlock_t aware
  xen/spinlock: add explicit non-recursive locking functions
  xen/spinlock: add another function level
  xen/spinlock: add missing rspin_is_locked() and rspin_barrier()
  xen/spinlock: split recursive spinlocks from normal ones
  xen/spinlock: remove indirection through macros for spin_*() functions
  xen/spinlock: support higher number of cpus

 xen/arch/arm/domain.c         |   4 +-
 xen/arch/arm/mm.c             |   4 +-
 xen/arch/x86/domain.c         |  20 +--
 xen/arch/x86/include/asm/mm.h |   2 +-
 xen/arch/x86/mm.c             |  12 +-
 xen/arch/x86/mm/mem_sharing.c |  16 +-
 xen/arch/x86/mm/mm-locks.h    |   6 +-
 xen/arch/x86/mm/p2m-pod.c     |   6 +-
 xen/arch/x86/mm/p2m.c         |   4 +-
 xen/arch/x86/tboot.c          |   4 +-
 xen/arch/x86/traps.c          |  14 +-
 xen/common/domain.c           |   6 +-
 xen/common/domctl.c           |   4 +-
 xen/common/grant_table.c      |  10 +-
 xen/common/ioreq.c            |  54 +++----
 xen/common/memory.c           |   4 +-
 xen/common/numa.c             |   4 +-
 xen/common/page_alloc.c       |  30 ++--
 xen/common/spinlock.c         | 292 +++++++++++++++++++++++-----------
 xen/drivers/char/console.c    |  48 ++----
 xen/drivers/passthrough/pci.c |   8 +-
 xen/include/xen/console.h     |   5 +-
 xen/include/xen/sched.h       |  10 +-
 xen/include/xen/spinlock.h    | 176 ++++++++++++--------
 24 files changed, 447 insertions(+), 296 deletions(-)

-- 
2.35.3



From xen-devel-bounces@lists.xenproject.org Fri Oct 13 09:42:44 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 09:42:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616352.958303 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrEgu-0001BZ-Gh; Fri, 13 Oct 2023 09:42:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616352.958303; Fri, 13 Oct 2023 09:42: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 1qrEgu-0001BS-Dq; Fri, 13 Oct 2023 09:42:44 +0000
Received: by outflank-mailman (input) for mailman id 616352;
 Fri, 13 Oct 2023 09:42: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=U36v=F3=suse.com=jgross@srs-se1.protection.inumbo.net>)
 id 1qrEgt-0000dZ-8d
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 09:42:43 +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 da52b1ae-69ac-11ee-9b0e-b553b5be7939;
 Fri, 13 Oct 2023 11:42:41 +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 CE48B1F37E;
 Fri, 13 Oct 2023 09:42:40 +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 62DFA1358F;
 Fri, 13 Oct 2023 09:42:40 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap2.suse-dmz.suse.de with ESMTPSA id 1I36FRARKWUdGwAAMHmgww
 (envelope-from <jgross@suse.com>); Fri, 13 Oct 2023 09: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: da52b1ae-69ac-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1697190160; 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=MR7QmStWD8Elo6plqpOeW5HwQHeIeJeRpjezDM3S/I0=;
	b=JN4F3INRRukTHkmhALR7+LOwqirJcDKSwG9WHSgfNUxGkNGlZGBc7yKIfWZwo5SKvEl4Xz
	ghd9vPG6qFq1vrCRZAAOoyv3/mL9F/KWKW/SndF9mvdrZWL108QvncDkCg/MAuDx2lfN3i
	rYub1bMSY87ltXXrFd9QTZDeCYG2olY=
From: Juergen Gross <jgross@suse.com>
To: xen-devel@lists.xenproject.org
Cc: javi.merino@cloud.com,
	Juergen Gross <jgross@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 02/13] xen/spinlock: reduce lock profile ifdefs
Date: Fri, 13 Oct 2023 11:42:13 +0200
Message-Id: <20231013094224.7060-3-jgross@suse.com>
X-Mailer: git-send-email 2.35.3
In-Reply-To: <20231013094224.7060-1-jgross@suse.com>
References: <20231013094224.7060-1-jgross@suse.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Authentication-Results: smtp-out2.suse.de;
	none
X-Spam-Level: 
X-Spam-Score: -3.34
X-Spamd-Result: default: False [-3.34 / 50.00];
	 ARC_NA(0.00)[];
	 RCVD_VIA_SMTP_AUTH(0.00)[];
	 FROM_HAS_DN(0.00)[];
	 TO_DN_SOME(0.00)[];
	 TO_MATCH_ENVRCPT_ALL(0.00)[];
	 R_MISSING_CHARSET(2.50)[];
	 MIME_GOOD(-0.10)[text/plain];
	 REPLY(-4.00)[];
	 BROKEN_CONTENT_TYPE(1.50)[];
	 NEURAL_HAM_LONG(-3.00)[-1.000];
	 DKIM_SIGNED(0.00)[suse.com:s=susede1];
	 NEURAL_HAM_SHORT(-1.00)[-1.000];
	 RCPT_COUNT_SEVEN(0.00)[9];
	 MID_CONTAINS_FROM(1.00)[];
	 FROM_EQ_ENVFROM(0.00)[];
	 MIME_TRACE(0.00)[0:+];
	 RCVD_COUNT_TWO(0.00)[2];
	 RCVD_TLS_ALL(0.00)[];
	 BAYES_HAM(-0.24)[72.94%]
X-Spam-Flag: NO

With some small adjustments to the LOCK_PROFILE_* macros some #ifdefs
can be dropped from spinlock.c.

Signed-off-by: Juergen Gross <jgross@suse.com>
---
V2:
- new patch
---
 xen/common/spinlock.c | 45 ++++++++++++++++++-------------------------
 1 file changed, 19 insertions(+), 26 deletions(-)

diff --git a/xen/common/spinlock.c b/xen/common/spinlock.c
index 202c707540..4878a01302 100644
--- a/xen/common/spinlock.c
+++ b/xen/common/spinlock.c
@@ -267,25 +267,28 @@ void spin_debug_disable(void)
         lock->profile->time_hold += NOW() - lock->profile->time_locked;      \
         lock->profile->lock_cnt++;                                           \
     }
-#define LOCK_PROFILE_VAR    s_time_t block = 0
-#define LOCK_PROFILE_BLOCK  block = block ? : NOW();
-#define LOCK_PROFILE_GOT                                                     \
+#define LOCK_PROFILE_VAR(val)    s_time_t block = (val)
+#define LOCK_PROFILE_BLOCK  block = block ? : NOW()
+#define LOCK_PROFILE_BLKACC(tst, val)                                        \
+    if ( tst )                                                               \
+    {                                                                        \
+        lock->profile->time_block += lock->profile->time_locked - (val);     \
+        lock->profile->block_cnt++;                                          \
+    }
+#define LOCK_PROFILE_GOT(val)                                                \
     if ( lock->profile )                                                     \
     {                                                                        \
         lock->profile->time_locked = NOW();                                  \
-        if ( block )                                                         \
-        {                                                                    \
-            lock->profile->time_block += lock->profile->time_locked - block; \
-            lock->profile->block_cnt++;                                      \
-        }                                                                    \
+        LOCK_PROFILE_BLKACC(val, val);                                       \
     }
 
 #else
 
 #define LOCK_PROFILE_REL
-#define LOCK_PROFILE_VAR
+#define LOCK_PROFILE_VAR(val)
 #define LOCK_PROFILE_BLOCK
-#define LOCK_PROFILE_GOT
+#define LOCK_PROFILE_BLKACC(tst, val)
+#define LOCK_PROFILE_GOT(val)
 
 #endif
 
@@ -308,7 +311,7 @@ static void always_inline spin_lock_common(spinlock_t *lock,
                                            void (*cb)(void *), void *data)
 {
     spinlock_tickets_t tickets = SPINLOCK_TICKET_INC;
-    LOCK_PROFILE_VAR;
+    LOCK_PROFILE_VAR(0);
 
     check_lock(&lock->debug, false);
     preempt_disable();
@@ -323,7 +326,7 @@ static void always_inline spin_lock_common(spinlock_t *lock,
     }
     arch_lock_acquire_barrier();
     got_lock(&lock->debug);
-    LOCK_PROFILE_GOT;
+    LOCK_PROFILE_GOT(block);
 }
 
 void _spin_lock(spinlock_t *lock)
@@ -411,19 +414,15 @@ int _spin_trylock(spinlock_t *lock)
      * arch_lock_acquire_barrier().
      */
     got_lock(&lock->debug);
-#ifdef CONFIG_DEBUG_LOCK_PROFILE
-    if ( lock->profile )
-        lock->profile->time_locked = NOW();
-#endif
+    LOCK_PROFILE_GOT(0);
+
     return 1;
 }
 
 void _spin_barrier(spinlock_t *lock)
 {
     spinlock_tickets_t sample;
-#ifdef CONFIG_DEBUG_LOCK_PROFILE
-    s_time_t block = NOW();
-#endif
+    LOCK_PROFILE_VAR(NOW());
 
     check_barrier(&lock->debug);
     smp_mb();
@@ -432,13 +431,7 @@ void _spin_barrier(spinlock_t *lock)
     {
         while ( observe_head(&lock->tickets) == sample.head )
             arch_lock_relax();
-#ifdef CONFIG_DEBUG_LOCK_PROFILE
-        if ( lock->profile )
-        {
-            lock->profile->time_block += NOW() - block;
-            lock->profile->block_cnt++;
-        }
-#endif
+        LOCK_PROFILE_BLKACC(lock->profile, block);
     }
     smp_mb();
 }
-- 
2.35.3



From xen-devel-bounces@lists.xenproject.org Fri Oct 13 09:42:47 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 09:42:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616354.958313 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrEgx-0001TG-PR; Fri, 13 Oct 2023 09:42:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616354.958313; Fri, 13 Oct 2023 09: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 1qrEgx-0001T9-Me; Fri, 13 Oct 2023 09:42:47 +0000
Received: by outflank-mailman (input) for mailman id 616354;
 Fri, 13 Oct 2023 09:42: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=U36v=F3=suse.com=jgross@srs-se1.protection.inumbo.net>)
 id 1qrEgx-0000sq-88
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 09:42:47 +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 dd804b05-69ac-11ee-98d4-6d05b1d4d9a1;
 Fri, 13 Oct 2023 11:42: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-out2.suse.de (Postfix) with ESMTPS id 7BF471F37E;
 Fri, 13 Oct 2023 09:42: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 3F7281358F;
 Fri, 13 Oct 2023 09:42:46 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap2.suse-dmz.suse.de with ESMTPSA id MH1PDhYRKWUoGwAAMHmgww
 (envelope-from <jgross@suse.com>); Fri, 13 Oct 2023 09:42: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: dd804b05-69ac-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1697190166; 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=lf5ebmk4rqESpA2QH3GbSRR9pcDDDv70JHx4/vbOIrY=;
	b=EZraUrDqS11S7N20qMqVmiQRmuGYCvQGj/vIfUlWdF9O1QDtCoNWCvVmjZw6tvPvlbSTmV
	hotE2qvgDlDaT5ou9SE/1QxbvcuMuEzlzi8aNS/izMvpYK0nW1ZTj77RXWk5Ku7yjEaHmV
	Rsj1gAeqttFyQ9h8XDkA3EYHOVjt2WQ=
From: Juergen Gross <jgross@suse.com>
To: xen-devel@lists.xenproject.org
Cc: javi.merino@cloud.com,
	Juergen Gross <jgross@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 03/13] xen/spinlock: make spinlock initializers more readable
Date: Fri, 13 Oct 2023 11:42:14 +0200
Message-Id: <20231013094224.7060-4-jgross@suse.com>
X-Mailer: git-send-email 2.35.3
In-Reply-To: <20231013094224.7060-1-jgross@suse.com>
References: <20231013094224.7060-1-jgross@suse.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Authentication-Results: smtp-out2.suse.de;
	none
X-Spam-Level: 
X-Spam-Score: -3.10
X-Spamd-Result: default: False [-3.10 / 50.00];
	 ARC_NA(0.00)[];
	 RCVD_VIA_SMTP_AUTH(0.00)[];
	 FROM_HAS_DN(0.00)[];
	 TO_DN_SOME(0.00)[];
	 TO_MATCH_ENVRCPT_ALL(0.00)[];
	 R_MISSING_CHARSET(2.50)[];
	 MIME_GOOD(-0.10)[text/plain];
	 REPLY(-4.00)[];
	 BROKEN_CONTENT_TYPE(1.50)[];
	 NEURAL_HAM_LONG(-3.00)[-1.000];
	 DKIM_SIGNED(0.00)[suse.com:s=susede1];
	 NEURAL_HAM_SHORT(-1.00)[-1.000];
	 RCPT_COUNT_SEVEN(0.00)[9];
	 MID_CONTAINS_FROM(1.00)[];
	 FROM_EQ_ENVFROM(0.00)[];
	 MIME_TRACE(0.00)[0:+];
	 RCVD_COUNT_TWO(0.00)[2];
	 RCVD_TLS_ALL(0.00)[]
X-Spam-Flag: NO

Use named member initializers instead of positional ones for the macros
used to initialize structures.

Signed-off-by: Juergen Gross <jgross@suse.com>
---
V2:
- new patch
---
 xen/include/xen/spinlock.h | 15 +++++++++++----
 1 file changed, 11 insertions(+), 4 deletions(-)

diff --git a/xen/include/xen/spinlock.h b/xen/include/xen/spinlock.h
index 4b82739083..bbe1472571 100644
--- a/xen/include/xen/spinlock.h
+++ b/xen/include/xen/spinlock.h
@@ -21,7 +21,7 @@ union lock_debug {
         bool unseen:1;
     };
 };
-#define _LOCK_DEBUG { LOCK_DEBUG_INITVAL }
+#define _LOCK_DEBUG { .val = LOCK_DEBUG_INITVAL }
 void check_lock(union lock_debug *debug, bool try);
 void lock_enter(const union lock_debug *debug);
 void lock_exit(const union lock_debug *debug);
@@ -94,12 +94,16 @@ struct lock_profile_qhead {
     int32_t                   idx;     /* index for printout */
 };
 
-#define _LOCK_PROFILE(name) { 0, #name, &name, 0, 0, 0, 0, 0 }
+#define _LOCK_PROFILE(lockname) { .name = #lockname, .lock = &lockname, }
 #define _LOCK_PROFILE_PTR(name)                                               \
     static struct lock_profile * const __lock_profile_##name                  \
     __used_section(".lockprofile.data") =                                     \
     &__lock_profile_data_##name
-#define _SPIN_LOCK_UNLOCKED(x) { { 0 }, SPINLOCK_NO_CPU, 0, _LOCK_DEBUG, x }
+#define _SPIN_LOCK_UNLOCKED(x) {                                              \
+    .recurse_cpu = SPINLOCK_NO_CPU,                                           \
+    .debug =_LOCK_DEBUG,                                                      \
+    .profile = x,                                                             \
+}
 #define SPIN_LOCK_UNLOCKED _SPIN_LOCK_UNLOCKED(NULL)
 #define DEFINE_SPINLOCK(l)                                                    \
     spinlock_t l = _SPIN_LOCK_UNLOCKED(NULL);                                 \
@@ -142,7 +146,10 @@ extern void cf_check spinlock_profile_reset(unsigned char key);
 
 struct lock_profile_qhead { };
 
-#define SPIN_LOCK_UNLOCKED { { 0 }, SPINLOCK_NO_CPU, 0, _LOCK_DEBUG }
+#define SPIN_LOCK_UNLOCKED {                                                  \
+    .recurse_cpu = SPINLOCK_NO_CPU,                                           \
+    .debug =_LOCK_DEBUG,                                                      \
+}
 #define DEFINE_SPINLOCK(l) spinlock_t l = SPIN_LOCK_UNLOCKED
 
 #define spin_lock_init_prof(s, l) spin_lock_init(&((s)->l))
-- 
2.35.3



From xen-devel-bounces@lists.xenproject.org Fri Oct 13 09:42:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 09:42:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616355.958323 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrEh4-0001pI-62; Fri, 13 Oct 2023 09:42:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616355.958323; Fri, 13 Oct 2023 09: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 1qrEh4-0001p9-2n; Fri, 13 Oct 2023 09:42:54 +0000
Received: by outflank-mailman (input) for mailman id 616355;
 Fri, 13 Oct 2023 09:42: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=U36v=F3=suse.com=jgross@srs-se1.protection.inumbo.net>)
 id 1qrEh3-0000sq-8z
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 09:42:53 +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 e0fe7fce-69ac-11ee-98d4-6d05b1d4d9a1;
 Fri, 13 Oct 2023 11:42:52 +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 4DFAF1F37E;
 Fri, 13 Oct 2023 09:42:52 +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 E7F4F1358F;
 Fri, 13 Oct 2023 09:42:51 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap2.suse-dmz.suse.de with ESMTPSA id xOoyNxsRKWUwGwAAMHmgww
 (envelope-from <jgross@suse.com>); Fri, 13 Oct 2023 09:42: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: e0fe7fce-69ac-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1697190172; 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=LHF1xuiYotPfjKN7P4bpn8D81ViTE3mKclEf20GtXRI=;
	b=S3wV6FNS9VWP3C1AjphPDYbRHt1TMXDgWd1ixF3dL/J718Tfv8+RxikY+QwYpfMGTHl5Fv
	giyFz3ly+CIsyhwpBisz38vpH9CHLgeSqYxFyyY5uheHD+7tkLcsi+5ljCKjXA8XL7WRW6
	qN/EUhNGNz/pUIvppuD5DNRTfkTJ0xY=
From: Juergen Gross <jgross@suse.com>
To: xen-devel@lists.xenproject.org
Cc: javi.merino@cloud.com,
	Juergen Gross <jgross@suse.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>
Subject: [PATCH v2 04/13] xen/spinlock: introduce new type for recursive spinlocks
Date: Fri, 13 Oct 2023 11:42:15 +0200
Message-Id: <20231013094224.7060-5-jgross@suse.com>
X-Mailer: git-send-email 2.35.3
In-Reply-To: <20231013094224.7060-1-jgross@suse.com>
References: <20231013094224.7060-1-jgross@suse.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Authentication-Results: smtp-out2.suse.de;
	none
X-Spam-Level: 
X-Spam-Score: -6.10
X-Spamd-Result: default: False [-6.10 / 50.00];
	 ARC_NA(0.00)[];
	 RCVD_VIA_SMTP_AUTH(0.00)[];
	 FROM_HAS_DN(0.00)[];
	 TO_DN_SOME(0.00)[];
	 TO_MATCH_ENVRCPT_ALL(0.00)[];
	 R_MISSING_CHARSET(2.50)[];
	 MIME_GOOD(-0.10)[text/plain];
	 REPLY(-4.00)[];
	 BROKEN_CONTENT_TYPE(1.50)[];
	 NEURAL_HAM_LONG(-3.00)[-1.000];
	 DKIM_SIGNED(0.00)[suse.com:s=susede1];
	 NEURAL_HAM_SHORT(-1.00)[-1.000];
	 RCPT_COUNT_SEVEN(0.00)[11];
	 MID_CONTAINS_FROM(1.00)[];
	 FROM_EQ_ENVFROM(0.00)[];
	 MIME_TRACE(0.00)[0:+];
	 RCVD_COUNT_TWO(0.00)[2];
	 RCVD_TLS_ALL(0.00)[];
	 BAYES_HAM(-3.00)[100.00%]
X-Spam-Flag: NO

Introduce a new type "rspinlock_t" to be used for recursive spinlocks.

For now it is only an alias of spinlock_t, so both types can still be
used for recursive spinlocks. This will be changed later, though.

Switch all recursive spinlocks to the new type.

Define the initializer helpers and use them where appropriate.

Signed-off-by: Juergen Gross <jgross@suse.com>
---
V2:
- carved out from V1 patch
---
 xen/arch/x86/include/asm/mm.h |  2 +-
 xen/arch/x86/mm/mm-locks.h    |  2 +-
 xen/common/domain.c           |  4 ++--
 xen/common/ioreq.c            |  2 +-
 xen/drivers/char/console.c    |  4 ++--
 xen/drivers/passthrough/pci.c |  2 +-
 xen/include/xen/sched.h       |  6 +++---
 xen/include/xen/spinlock.h    | 19 +++++++++++++++----
 8 files changed, 26 insertions(+), 15 deletions(-)

diff --git a/xen/arch/x86/include/asm/mm.h b/xen/arch/x86/include/asm/mm.h
index 05dfe35502..8a6e0c283f 100644
--- a/xen/arch/x86/include/asm/mm.h
+++ b/xen/arch/x86/include/asm/mm.h
@@ -596,7 +596,7 @@ unsigned long domain_get_maximum_gpfn(struct domain *d);
 
 /* Definition of an mm lock: spinlock with extra fields for debugging */
 typedef struct mm_lock {
-    spinlock_t         lock;
+    rspinlock_t        lock;
     int                unlock_level;
     int                locker;          /* processor which holds the lock */
     const char        *locker_function; /* func that took it */
diff --git a/xen/arch/x86/mm/mm-locks.h b/xen/arch/x86/mm/mm-locks.h
index 5a3f96fbaa..b2c0467024 100644
--- a/xen/arch/x86/mm/mm-locks.h
+++ b/xen/arch/x86/mm/mm-locks.h
@@ -20,7 +20,7 @@ DECLARE_PERCPU_RWLOCK_GLOBAL(p2m_percpu_rwlock);
 
 static inline void mm_lock_init(mm_lock_t *l)
 {
-    spin_lock_init(&l->lock);
+    rspin_lock_init(&l->lock);
     l->locker = -1;
     l->locker_function = "nobody";
     l->unlock_level = 0;
diff --git a/xen/common/domain.c b/xen/common/domain.c
index 8f9ab01c0c..604f70ff5a 100644
--- a/xen/common/domain.c
+++ b/xen/common/domain.c
@@ -627,8 +627,8 @@ struct domain *domain_create(domid_t domid,
 
     atomic_set(&d->refcnt, 1);
     RCU_READ_LOCK_INIT(&d->rcu_lock);
-    spin_lock_init_prof(d, domain_lock);
-    spin_lock_init_prof(d, page_alloc_lock);
+    rspin_lock_init_prof(d, domain_lock);
+    rspin_lock_init_prof(d, page_alloc_lock);
     spin_lock_init(&d->hypercall_deadlock_mutex);
     INIT_PAGE_LIST_HEAD(&d->page_list);
     INIT_PAGE_LIST_HEAD(&d->extra_page_list);
diff --git a/xen/common/ioreq.c b/xen/common/ioreq.c
index 62b907f4c4..652c18a9b5 100644
--- a/xen/common/ioreq.c
+++ b/xen/common/ioreq.c
@@ -1331,7 +1331,7 @@ unsigned int ioreq_broadcast(ioreq_t *p, bool buffered)
 
 void ioreq_domain_init(struct domain *d)
 {
-    spin_lock_init(&d->ioreq_server.lock);
+    rspin_lock_init(&d->ioreq_server.lock);
 
     arch_ioreq_domain_init(d);
 }
diff --git a/xen/drivers/char/console.c b/xen/drivers/char/console.c
index f81b8b6b47..826f45b922 100644
--- a/xen/drivers/char/console.c
+++ b/xen/drivers/char/console.c
@@ -120,7 +120,7 @@ static int __read_mostly sercon_handle = -1;
 int8_t __read_mostly opt_console_xen; /* console=xen */
 #endif
 
-static DEFINE_SPINLOCK(console_lock);
+static DEFINE_RSPINLOCK(console_lock);
 
 /*
  * To control the amount of printing, thresholds are added.
@@ -1169,7 +1169,7 @@ void console_force_unlock(void)
 {
     watchdog_disable();
     spin_debug_disable();
-    spin_lock_init(&console_lock);
+    rspin_lock_init(&console_lock);
     serial_force_unlock(sercon_handle);
     console_locks_busted = 1;
     console_start_sync();
diff --git a/xen/drivers/passthrough/pci.c b/xen/drivers/passthrough/pci.c
index 04d00c7c37..61be34e75f 100644
--- a/xen/drivers/passthrough/pci.c
+++ b/xen/drivers/passthrough/pci.c
@@ -50,7 +50,7 @@ struct pci_seg {
     } bus2bridge[MAX_BUSES];
 };
 
-static spinlock_t _pcidevs_lock = SPIN_LOCK_UNLOCKED;
+static DEFINE_RSPINLOCK(_pcidevs_lock);
 
 void pcidevs_lock(void)
 {
diff --git a/xen/include/xen/sched.h b/xen/include/xen/sched.h
index 3609ef88c4..c6604aef78 100644
--- a/xen/include/xen/sched.h
+++ b/xen/include/xen/sched.h
@@ -376,9 +376,9 @@ struct domain
 
     rcu_read_lock_t  rcu_lock;
 
-    spinlock_t       domain_lock;
+    rspinlock_t      domain_lock;
 
-    spinlock_t       page_alloc_lock; /* protects all the following fields  */
+    rspinlock_t      page_alloc_lock; /* protects all the following fields  */
     struct page_list_head page_list;  /* linked list */
     struct page_list_head extra_page_list; /* linked list (size extra_pages) */
     struct page_list_head xenpage_list; /* linked list (size xenheap_pages) */
@@ -597,7 +597,7 @@ struct domain
 #ifdef CONFIG_IOREQ_SERVER
     /* Lock protects all other values in the sub-struct */
     struct {
-        spinlock_t              lock;
+        rspinlock_t             lock;
         struct ioreq_server     *server[MAX_NR_IOREQ_SERVERS];
     } ioreq_server;
 #endif
diff --git a/xen/include/xen/spinlock.h b/xen/include/xen/spinlock.h
index bbe1472571..19561d5e61 100644
--- a/xen/include/xen/spinlock.h
+++ b/xen/include/xen/spinlock.h
@@ -45,7 +45,7 @@ union lock_debug { };
     lock profiling on:
 
     Global locks which should be subject to profiling must be declared via
-    DEFINE_SPINLOCK.
+    DEFINE_[R]SPINLOCK.
 
     For locks in structures further measures are necessary:
     - the structure definition must include a profile_head with exactly this
@@ -56,7 +56,7 @@ union lock_debug { };
     - the single locks which are subject to profiling have to be initialized
       via
 
-      spin_lock_init_prof(ptr, lock);
+      [r]spin_lock_init_prof(ptr, lock);
 
       with ptr being the main structure pointer and lock the spinlock field
 
@@ -109,12 +109,16 @@ struct lock_profile_qhead {
     spinlock_t l = _SPIN_LOCK_UNLOCKED(NULL);                                 \
     static struct lock_profile __lock_profile_data_##l = _LOCK_PROFILE(l);    \
     _LOCK_PROFILE_PTR(l)
+#define DEFINE_RSPINLOCK(l)                                                   \
+    rspinlock_t l = _SPIN_LOCK_UNLOCKED(NULL);                                \
+    static struct lock_profile __lock_profile_data_##l = _LOCK_PROFILE(l);    \
+    _LOCK_PROFILE_PTR(l)
 
-#define spin_lock_init_prof(s, l)                                             \
+#define __spin_lock_init_prof(s, l, locktype)                                 \
     do {                                                                      \
         struct lock_profile *prof;                                            \
         prof = xzalloc(struct lock_profile);                                  \
-        (s)->l = (spinlock_t)_SPIN_LOCK_UNLOCKED(prof);                       \
+        (s)->l = (locktype)_SPIN_LOCK_UNLOCKED(prof);                         \
         if ( !prof )                                                          \
         {                                                                     \
             printk(XENLOG_WARNING                                             \
@@ -128,6 +132,9 @@ struct lock_profile_qhead {
         (s)->profile_head.elem_q = prof;                                      \
     } while( 0 )
 
+#define spin_lock_init_prof(s, l) __spin_lock_init_prof(s, l, spinlock_t)
+#define rspin_lock_init_prof(s, l) __spin_lock_init_prof(s, l, rspinlock_t)
+
 void _lock_profile_register_struct(
     int32_t type, struct lock_profile_qhead *qhead, int32_t idx);
 void _lock_profile_deregister_struct(int32_t type,
@@ -151,8 +158,10 @@ struct lock_profile_qhead { };
     .debug =_LOCK_DEBUG,                                                      \
 }
 #define DEFINE_SPINLOCK(l) spinlock_t l = SPIN_LOCK_UNLOCKED
+#define DEFINE_RSPINLOCK(l) rspinlock_t l = SPIN_LOCK_UNLOCKED
 
 #define spin_lock_init_prof(s, l) spin_lock_init(&((s)->l))
+#define rspin_lock_init_prof(s, l) rspin_lock_init(&((s)->l))
 #define lock_profile_register_struct(type, ptr, idx)
 #define lock_profile_deregister_struct(type, ptr)
 #define spinlock_profile_printall(key)
@@ -182,8 +191,10 @@ typedef struct spinlock {
 #endif
 } spinlock_t;
 
+typedef spinlock_t rspinlock_t;
 
 #define spin_lock_init(l) (*(l) = (spinlock_t)SPIN_LOCK_UNLOCKED)
+#define rspin_lock_init(l) (*(l) = (rspinlock_t)SPIN_LOCK_UNLOCKED)
 
 void _spin_lock(spinlock_t *lock);
 void _spin_lock_cb(spinlock_t *lock, void (*cb)(void *), void *data);
-- 
2.35.3



From xen-devel-bounces@lists.xenproject.org Fri Oct 13 10:15:14 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 10:15:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616380.958348 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrFCD-0004Nv-Vd; Fri, 13 Oct 2023 10:15:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616380.958348; Fri, 13 Oct 2023 10: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 1qrFCD-0004NJ-Rl; Fri, 13 Oct 2023 10:15:05 +0000
Received: by outflank-mailman (input) for mailman id 616380;
 Fri, 13 Oct 2023 10:15: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=RqNf=F3=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qrFCC-00045Y-1v
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 10:15:04 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 5f451c43-69b1-11ee-98d4-6d05b1d4d9a1;
 Fri, 13 Oct 2023 12:15:02 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id B4B944EE0744;
 Fri, 13 Oct 2023 12:15: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: 5f451c43-69b1-11ee-98d4-6d05b1d4d9a1
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 v3 2/2] docs/misra: add deviations.rst to document additional deviations.
Date: Fri, 13 Oct 2023 12:14:53 +0200
Message-Id: <36464fe1db154454548d19bf437a7838e519512a.1697191850.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1697191850.git.nicola.vetrini@bugseng.com>
References: <cover.1697191850.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

This file contains the deviation that are not marked by
a deviation comment, as specified in
docs/misra/documenting-violations.rst.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
Release-acked-by: Henry Wang <Henry.Wang@arm.com>
---
Changes in v3:
- clarified an entry
---
 docs/index.rst            |   1 +
 docs/misra/deviations.rst | 236 ++++++++++++++++++++++++++++++++++++++
 docs/misra/rules.rst      |   2 +-
 3 files changed, 238 insertions(+), 1 deletion(-)
 create mode 100644 docs/misra/deviations.rst

diff --git a/docs/index.rst b/docs/index.rst
index 2c47cfa999f2..f3f779f89ce5 100644
--- a/docs/index.rst
+++ b/docs/index.rst
@@ -63,6 +63,7 @@ Xen hypervisor code.
    :maxdepth: 2

    misra/rules
+   misra/deviations


 Miscellanea
diff --git a/docs/misra/deviations.rst b/docs/misra/deviations.rst
new file mode 100644
index 000000000000..8511a189253b
--- /dev/null
+++ b/docs/misra/deviations.rst
@@ -0,0 +1,236 @@
+.. SPDX-License-Identifier: CC-BY-4.0
+
+MISRA C deviations for Xen
+==========================
+
+The following is the list of MISRA C:2012 deviations for the Xen codebase that
+are not covered by a `SAF-x-safe` or `SAF-x-false-positive-<tool>` comment, as
+specified in docs/misra/documenting-violations.rst; the lack of
+such comments is usually due to the excessive clutter they would bring to the
+codebase or the impossibility to express such a deviation (e.g., if it's
+composed of several conditions).
+
+Deviations related to MISRA C:2012 Directives:
+----------------------------------------------
+
+.. list-table::
+   :header-rows: 1
+
+   * - Directive identifier
+     - Justification
+     - Notes
+
+   * - D4.3
+     - Accepted for the ARM64 codebase
+     - Tagged as `disapplied` for ECLAIR on any other violation report.
+
+   * - D4.3
+     - The inline asm in 'xen/arch/arm/arm64/lib/bitops.c' is tightly coupled
+       with the surronding C code that acts as a wrapper, so it has been decided
+       not to add an additional encapsulation layer.
+     - Tagged as `deliberate` for ECLAIR.
+
+Deviations related to MISRA C:2012 Rules:
+-----------------------------------------
+
+.. list-table::
+   :header-rows: 1
+
+   * - Rule identifier
+     - Justification
+     - Notes
+
+   * - R2.1
+     - The compiler implementation guarantees that the unreachable code is
+       removed. Constant expressions and unreachable branches of if and switch
+       statements are expected.
+     - Tagged as `safe` for ECLAIR.
+
+   * - R2.1
+     - Unreachability caused by calls to the following functions or macros is
+       deliberate and there is no risk of code being unexpectedly left out.
+     - Tagged as `deliberate` for ECLAIR. Such macros are:
+        - BUG
+        - assert_failed
+        - __builtin_unreachable
+        - ASSERT_UNREACHABLE
+
+   * - R2.1
+     - Pure declarations, that is, declarations without initializations are not
+       executable, and therefore it is safe for them to be unreachable. The most
+       notable example of such a pattern being used in the codebase is that of
+       a variable declaration that should be available in all the clauses of a
+       switch statement.
+     - ECLAIR has been configured to ignore those statements.
+
+   * - R2.2
+     - Proving compliance with respect to Rule 2.2 is generally impossible:
+       see `<https://arxiv.org/abs/2212.13933>`_ for details. Moreover, peer
+       review gives us confidence that no evidence of errors in the program's
+       logic has been missed due to undetected violations of Rule 2.2, if any.
+       Testing on time behavior gives us confidence on the fact that, should the
+       program contain dead code that is not removed by the compiler, the
+       resulting slowdown is negligible.
+     - Project-wide deviation, tagged as `disapplied` for ECLAIR.
+
+   * - R3.1
+     - Comments starting with '/\*' and containing hyperlinks are safe as they
+       are not instances of commented-out code.
+     - Tagged as `safe` for ECLAIR.
+
+   * - R5.3
+     - As specified in rules.rst, shadowing due to macros being used as macro
+       arguments is allowed, as it's deemed not at risk of causing developer
+       confusion.
+     - Tagged as `safe` for ECLAIR. So far, the following macros are deviated:
+         - READ_SYSREG and WRITE_SYSREG
+         - max_{t}? and min_{t}?
+         - read_[bwlq] and read_[bwlq]_relaxed
+         - per_cpu and this_cpu
+         - __emulate_2op and __emulate_2op_nobyte
+         - read_debugreg and write_debugreg
+
+   * - R7.2
+     - Violations caused by __HYPERVISOR_VIRT_START are related to the
+       particular use of it done in xen_mk_ulong.
+     - Tagged as `deliberate` for ECLAIR.
+
+   * - R7.4
+     - Allow pointers of non-character type as long as the pointee is
+       const-qualified.
+     - ECLAIR has been configured to ignore these assignments.
+
+   * - R8.3
+     - The type ret_t is deliberately used and defined as int or long depending
+       on the architecture.
+     - Tagged as `deliberate` for ECLAIR.
+
+   * - R8.3
+     - Some files are not subject to respect MISRA rules at
+       the moment, but some entity from a file in scope is used; therefore
+       ECLAIR does report a violation, since not all the files involved in the
+       violation are excluded from the analysis.
+     - Tagged as `deliberate` for ECLAIR. Such excluded files are:
+         - xen/arch/x86/time.c
+         - xen/arch/x86/acpi/cpu_idle.c
+         - xen/arch/x86/mpparse.c
+         - xen/common/bunzip2.c
+         - xen/common/unlz4.c
+         - xen/common/unlzma.c
+         - xen/common/unlzo.c
+         - xen/common/unxz.c
+         - xen/common/unzstd.c
+
+   * - R8.4
+     - The definitions present in the files 'asm-offsets.c' for any architecture
+       are used to generate definitions for asm modules, and are not called by
+       C code. Therefore the absence of prior declarations is safe.
+     - Tagged as `safe` for ECLAIR.
+
+   * - R8.4
+     - The functions defined in the file xen/common/coverage/gcov_base.c are
+       meant to be called from gcc-generated code in a non-release build
+       configuration. Therefore, the absence of prior declarations is safe.
+     - Tagged as `safe` for ECLAIR.
+
+   * - R8.6
+     - The following variables are compiled in multiple translation units
+       belonging to different executables and therefore are safe.
+
+       - current_stack_pointer
+       - bsearch
+       - sort
+     - Tagged as `safe` for ECLAIR.
+
+   * - R8.6
+     - Declarations without definitions are allowed (specifically when the
+       definition is compiled-out or optimized-out by the compiler).
+     - Tagged as `deliberate` in ECLAIR.
+
+   * - R8.10
+     - The gnu_inline attribute without static is deliberately allowed.
+     - Tagged as `deliberate` for ECLAIR.
+
+   * - R9.5
+     - The possibility of committing mistakes by specifying an explicit
+       dimension is higher than omitting the dimension, therefore all such
+       instances of violations are deviated.
+     - Project-wide deviation, tagged as `deliberate` for ECLAIR.
+
+   * - R10.1, R10.3, R10.4
+     - The value-preserving conversions of integer constants are safe.
+     - Tagged as `safe` for ECLAIR.
+
+   * - R10.1
+     - Shifting non-negative integers to the right is safe.
+     - Tagged as `safe` for ECLAIR.
+
+   * - R10.1
+     - Shifting non-negative integers to the left is safe if the result is still
+       non-negative.
+     - Tagged as `safe` for ECLAIR.
+
+   * - R10.1
+     - Bitwise logical operations on non-negative integers are safe.
+     - Tagged as `safe` for ECLAIR.
+
+   * - R10.1
+     - The implicit conversion to Boolean for logical operator arguments is
+       well-known to all Xen developers to be a comparison with 0.
+     - Tagged as `safe` for ECLAIR.
+
+   * - R10.1
+     - Xen only supports architectures where signed integers are representend
+       using two's complement and all the Xen developers are aware of this. For
+       this reason, bitwise operations are safe.
+     - Tagged as `safe` for ECLAIR.
+
+   * - R10.1
+     - Given the assumptions on the toolchain detailed in
+       docs/misra/C-language-toolchain.rst and the build flags used by the
+       project, it is deemed safe to use bitwise shift operators.
+       See automation/eclair_analysis/deviations.ecl for the full explanation.
+     - Tagged as `safe` for ECLAIR.
+
+   * - R13.5
+     - All developers and reviewers can be safely assumed to be well aware of
+       the short-circuit evaluation strategy for logical operators.
+     - Project-wide deviation; tagged as `disapplied` for ECLAIR.
+
+   * - R14.2
+     - The severe restrictions imposed by this rule on the use of 'for'
+       statements are not counterbalanced by the presumed facilitation of the
+       peer review activity.
+     - Project-wide deviation; tagged as `disapplied` for ECLAIR.
+
+   * - R14.3
+     - The Xen team relies on the fact that invariant conditions of 'if'
+       statements are deliberate.
+     - Project-wide deviation; tagged as `disapplied` for ECLAIR.
+
+   * - R20.7
+     - Code violating Rule 20.7 is safe when macro parameters are used:
+       (1) as function arguments;
+       (2) as macro arguments;
+       (3) as array indices;
+       (4) as lhs in assignments.
+     - Tagged as `safe` for ECLAIR.
+
+Other deviations:
+-----------------
+
+.. list-table::
+   :header-rows: 1
+
+   * - Deviation
+     - Justification
+
+   * - do-while-0 loops
+     - The do-while-0 is a well-recognized loop idiom used by the Xen community
+       and can therefore be used, even though it would cause a number of
+       violations in some instances.
+
+   * - while-0 and while-1 loops
+     - while-0 and while-1 are well-recognized loop idioms used by the Xen
+       community and can therefore be used, even though they would cause a
+       number of violations in some instances.
diff --git a/docs/misra/rules.rst b/docs/misra/rules.rst
index 3139ca7ae6dd..6efe66195de3 100644
--- a/docs/misra/rules.rst
+++ b/docs/misra/rules.rst
@@ -18,7 +18,7 @@ It is possible that in specific circumstances it is best not to follow a
 rule because it is not possible or because the alternative leads to
 better code quality. Those cases are called "deviations". They are
 permissible as long as they are documented. For details, please refer to
-docs/misra/documenting-violations.rst
+docs/misra/documenting-violations.rst and docs/misra/deviations.rst

 Other documentation mechanisms are work-in-progress.

--
2.34.1


From xen-devel-bounces@lists.xenproject.org Fri Oct 13 10:15:14 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 10:15:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616378.958332 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrFCC-00045r-FD; Fri, 13 Oct 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 616378.958332; Fri, 13 Oct 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 1qrFCC-00045k-Cd; Fri, 13 Oct 2023 10:15:04 +0000
Received: by outflank-mailman (input) for mailman id 616378;
 Fri, 13 Oct 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=RqNf=F3=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qrFCB-00045Q-KD
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 10:15:03 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 5d5df1ce-69b1-11ee-9b0e-b553b5be7939;
 Fri, 13 Oct 2023 12:14:59 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id D76B34EE073A;
 Fri, 13 Oct 2023 12:14: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: 5d5df1ce-69b1-11ee-9b0e-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>,
	Simone Ballarin <simone.ballarin@bugseng.com>,
	Doug Goldstein <cardoe@cardoe.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Julien Grall <julien@xen.org>,
	Wei Liu <wl@xen.org>
Subject: [XEN PATCH][for-4.19 v3 0/2] update ecl configurations and deviations
Date: Fri, 13 Oct 2023 12:14:51 +0200
Message-Id: <cover.1697191850.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

This series brings updates to the configuration of the ECLAIR static analysis
tool, as well as a new document detailing the deviations from MISRA guidelines
that have no noticeable indication in the source code, as detailed by Stefano
Stabellini here [1].

[1] https://marc.info/?l=xen-devel&m=169663845629358&w=2

Nicola Vetrini (1):
  docs/misra: add deviations.rst to document additional deviations.

Simone Ballarin (1):
  automation/eclair: update deviations and accepted guidelines

 .../eclair_analysis/ECLAIR/deviations.ecl     | 135 +++++-----
 automation/eclair_analysis/ECLAIR/tagging.ecl |   4 +-
 docs/index.rst                                |   1 +
 docs/misra/deviations.rst                     | 236 ++++++++++++++++++
 docs/misra/rules.rst                          |   2 +-
 5 files changed, 302 insertions(+), 76 deletions(-)
 create mode 100644 docs/misra/deviations.rst

--
2.34.1


From xen-devel-bounces@lists.xenproject.org Fri Oct 13 10:15:14 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 10:15:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616379.958343 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrFCD-0004KX-N5; Fri, 13 Oct 2023 10:15:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616379.958343; Fri, 13 Oct 2023 10: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 1qrFCD-0004KQ-Jm; Fri, 13 Oct 2023 10:15:05 +0000
Received: by outflank-mailman (input) for mailman id 616379;
 Fri, 13 Oct 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=RqNf=F3=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qrFCB-00045Q-RL
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 10:15:03 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 5e3d5dc7-69b1-11ee-9b0e-b553b5be7939;
 Fri, 13 Oct 2023 12:15:00 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id 199FB4EE073D;
 Fri, 13 Oct 2023 12:14: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: 5e3d5dc7-69b1-11ee-9b0e-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,
	Simone Ballarin <simone.ballarin@bugseng.com>,
	Doug Goldstein <cardoe@cardoe.com>
Subject: [XEN PATCH][for-4.19 v3 1/2] automation/eclair: update deviations and accepted guidelines
Date: Fri, 13 Oct 2023 12:14:52 +0200
Message-Id: <c67293c3351287a218d4e3df3cc3ef2cf937fc2a.1697191850.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1697191850.git.nicola.vetrini@bugseng.com>
References: <cover.1697191850.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

From: Simone Ballarin <simone.ballarin@bugseng.com>

Remove deviations for ERROR_EXIT, ERROR_EXIT_DOM and PIN_FAIL:
the aforementioned macros have been removed.
Add deviation for Rule 2.1 for pure declarations.
Remove legacy text-based deviations: these are now implemented
with SAF comments.
Add deviations for Rules 8.4, 10.1, 13.5, 14.2, 14.3.
Remove deviations for guidelines not yet accepted or rejected.

Add MC3R1.R11.7, MC3R1.R11.8, MC3R1.R11.9, MC3R1.R15.3 and MC3R1.R14.2
to the accepted guidelines selector.

Update clean guidelines selector.

Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>
Acked-by: Stefano Stabellini <sstabellini@kernel.org>
---
 .../eclair_analysis/ECLAIR/deviations.ecl     | 135 ++++++++----------
 automation/eclair_analysis/ECLAIR/tagging.ecl |   4 +-
 2 files changed, 64 insertions(+), 75 deletions(-)

diff --git a/automation/eclair_analysis/ECLAIR/deviations.ecl b/automation/eclair_analysis/ECLAIR/deviations.ecl
index d8170106b449..fa56e5c00a27 100644
--- a/automation/eclair_analysis/ECLAIR/deviations.ecl
+++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
@@ -15,14 +15,19 @@ Constant expressions and unreachable branches of if and switch statements are ex
 -doc_end

 -doc_begin="Unreachability caused by calls to the following functions or macros is deliberate and there is no risk of code being unexpectedly left out."
--config=MC3R1.R2.1,statements+={deliberate,"macro(name(BUG||assert_failed||ERROR_EXIT||ERROR_EXIT_DOM||PIN_FAIL))"}
+-config=MC3R1.R2.1,statements+={deliberate,"macro(name(BUG||assert_failed))"}
 -config=MC3R1.R2.1,statements+={deliberate, "call(decl(name(__builtin_unreachable||panic||do_unexpected_trap||machine_halt||machine_restart||maybe_reboot)))"}
 -doc_end

--doc_begin="Unreachability of an ASSERT_UNREACHABLE() and analogous macro calls is deliberate and safe."
+-doc_begin="Unreachability inside an ASSERT_UNREACHABLE() and analogous macro calls is deliberate and safe."
 -config=MC3R1.R2.1,reports+={deliberate, "any_area(any_loc(any_exp(macro(name(ASSERT_UNREACHABLE||PARSE_ERR_RET||PARSE_ERR||FAIL_MSR||FAIL_CPUID)))))"}
 -doc_end

+-doc_begin="Pure declarations (i.e., declarations without initialization) are
+not executable, and therefore it is safe for them to be unreachable."
+-config=MC3R1.R2.1,ignored_stmts+={"any()", "pure_decl()"}
+-doc_end
+
 -doc_begin="Proving compliance with respect to Rule 2.2 is generally impossible:
 see https://arxiv.org/abs/2212.13933 for details. Moreover, peer review gives us
 confidence that no evidence of errors in the program's logic has been missed due
@@ -49,35 +54,6 @@ they are not instances of commented-out code."
 -config=MC3R1.D4.3,reports+={disapplied,"!(any_area(any_loc(file(^xen/arch/arm/arm64/.*$))))"}
 -doc_end

--doc_begin="Depending on the compiler, rewriting the following function-like
-macros as inline functions is not guaranteed to have the same effect."
--config=MC3R1.D4.9,macros+={deliberate,"name(likely)"}
--config=MC3R1.D4.9,macros+={deliberate,"name(unlikely)"}
--config=MC3R1.D4.9,macros+={deliberate,"name(unreachable)"}
--doc_end
-
--doc_begin="These macros can be used on both pointers and unsigned long type values."
--config=MC3R1.D4.9,macros+={safe,"name(virt_to_maddr)"}
--config=MC3R1.D4.9,macros+={safe,"name(virt_to_mfn)"}
--doc_end
-
--doc_begin="Rewriting variadic macros as variadic functions might have a negative impact on safety."
--config=MC3R1.D4.9,macros+={deliberate,"variadic()"}
--doc_end
-
--doc_begin="Rewriting macros with arguments that are, in turn, arguments of
-__builtin_constant_p() can change the behavior depending on the optimization
-level."
--config=MC3R1.D4.9,macro_argument_context+="skip_to(class(type||expr||decl,any),
-                                            call(name(__builtin_constant_p)))"
--doc_end
-
--doc_begin="Function-like macros defined in public headers are meant to be
-usable in C89 mode without any extensions. Hence they cannot be replaced by
-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$"}
@@ -105,29 +81,6 @@ conform to the directive."
 -config=MC3R1.R5.3,reports+={safe, "any_area(any_loc(any_exp(macro(^read_debugreg$))&&any_exp(macro(^write_debugreg$))))"}
 -doc_end

--doc_begin="Function-like macros cannot be confused with identifiers that are
-neither functions nor pointers to functions."
--config=MC3R1.R5.5,reports={safe,"all_area(decl(node(enum_decl||record_decl||field_decl||param_decl||var_decl)&&!type(canonical(address((node(function||function_no_proto))))))||macro(function_like()))"}
--doc_end
-
--doc_begin="The use of these identifiers for both macro names and other entities
-is deliberate and does not generate developer confusion."
--config=MC3R1.R5.5,reports+={safe, "any_area(text(^\\s*/\\*\\s+SAF-[0-9]+-safe\\s+MC3R1\\.R5\\.5.*$, begin-1))"}
--doc_end
-
--doc_begin="The definition of macros and functions ending in '_bit' that use the
-same identifier in 'bitops.h' is deliberate and safe."
--file_tag+={bitops_h, "^xen/arch/x86/include/asm/bitops\\.h$"}
--config=MC3R1.R5.5,reports+={safe, "all_area((decl(^.*_bit\\(.*$)||macro(^.*_bit$))&&all_loc(file(bitops_h)))"}
--doc_end
-
--doc_begin="The definition of macros and functions beginning in 'str' or 'mem'
-that use the same identifier in 'xen/include/xen/string.h' is deliberate and
-safe."
--file_tag+={string_h, "^xen/include/xen/string\\.h$"}
--config=MC3R1.R5.5,reports+={safe, "any_area((decl(^(mem|str).*$)||macro(^(mem|str).*$))&&all_loc(file(string_h)))"}
--doc_end
-
 #
 # Series 7.
 #
@@ -156,11 +109,6 @@ particular use of it done in xen_mk_ulong."
 -config=MC3R1.R7.2,reports+={deliberate,"any_area(any_loc(macro(name(BUILD_BUG_ON))))"}
 -doc_end

--doc_begin="The following string literals are assigned to pointers to non
-const-qualified char."
--config=MC3R1.R7.4,reports+={safe, "any_area(text(^\\s*/\\*\\s+SAF-[0-9]+-safe\\s+MC3R1\\.R7\\.4.*$, begin-1))"}
--doc_end
-
 -doc_begin="Allow pointers of non-character type as long as the pointee is
 const-qualified."
 -config=MC3R1.R7.4,same_pointee=false
@@ -204,6 +152,17 @@ const-qualified."
 -config=MC3R1.R8.3,reports+={deliberate,"any_area(any_loc(file(adopted_mpparse_r8_3)))&&any_area(any_loc(file(^xen/arch/x86/include/asm/mpspec\\.h$)))"}
 -doc_end

+-doc_begin="The definitions present in this file are meant to generate definitions for asm modules, and are not called by C code. Therefore the absence of prior declarations is safe."
+-file_tag+={asm_offsets, "^xen/arch/(arm|x86)/(arm32|arm64|x86_64)/asm-offsets\\.c$"}
+-config=MC3R1.R8.4,reports+={safe, "first_area(any_loc(file(asm_offsets)))"}
+-doc_end
+
+-doc_begin="The functions defined in this file are meant to be called from gcc-generated code in a non-release build configuration.
+Therefore the absence of prior declarations is safe."
+-file_tag+={gcov, "^xen/common/coverage/gcov_base\\.c$"}
+-config=MC3R1.R8.4,reports+={safe, "first_area(any_loc(file(gcov)))"}
+-doc_end
+
 -doc_begin="The following variables are compiled in multiple translation units
 belonging to different executables and therefore are safe."
 -config=MC3R1.R8.6,declarations+={safe, "name(current_stack_pointer||bsearch||sort)"}
@@ -222,12 +181,6 @@ definition is compiled-out or optimized-out by the compiler)"
 # Series 9.
 #

--doc_begin="The following variables are written before being set, therefore no
-access to uninitialized memory locations happens, as explained in the deviation
-comment."
--config=MC3R1.R9.1,reports+={safe, "any_area(text(^\\s*/\\*\\s+SAF-[0-9]+-safe\\s+MC3R1\\.R9\\.1.*$, begin-1))"}
--doc_end
-
 -doc_begin="Violations in files that maintainers have asked to not modify in the
 context of R9.1."
 -file_tag+={adopted_r9_1,"^xen/arch/arm/arm64/lib/find_next_bit\\.c$"}
@@ -274,22 +227,47 @@ still non-negative."
 -config=MC3R1.R10.1,etypes+={safe, "stmt(operator(logical)||node(conditional_operator||binary_conditional_operator))", "dst_type(ebool||boolean)"}
 -doc_end

-### Set 3 ###
+-doc_begin="XEN only supports architectures where signed integers are
+representend using two's complement and all the XEN developers are aware of
+this."
+-config=MC3R1.R10.1,etypes+={safe,
+  "stmt(operator(and||or||xor||not||and_assign||or_assign||xor_assign))",
+  "any()"}
+-doc_end
+
+-doc_begin="See Section \"4.5 Integers\" of \"GCC_MANUAL\", where it says that
+\"Signed `>>' acts on negative numbers by sign extension. As an extension to the
+C language, GCC does not use the latitude given in C99 and C11 only to treat
+certain aspects of signed `<<' as undefined. However, -fsanitize=shift (and
+-fsanitize=undefined) will diagnose such cases. They are also diagnosed where
+constant expressions are required.\""
+-config=MC3R1.R10.1,etypes+={safe,
+  "stmt(operator(shl||shr||shl_assign||shr_assign))",
+  "any()"}
+-doc_end

 #
-# Series 18.
+# Series 13
 #

--doc_begin="FIXME: explain why pointer differences involving this macro are safe."
--config=MC3R1.R18.2,reports+={safe,"all_area(all_loc(any_exp(macro(^ACPI_PTR_DIFF$))))"}
+-doc_begin="All developers and reviewers can be safely assumed to be well aware
+of the short-circuit evaluation strategy of such logical operators."
+-config=MC3R1.R13.5,reports+={disapplied,"any()"}
 -doc_end

--doc_begin="FIXME: explain why pointer differences involving this macro are safe."
--config=MC3R1.R18.2,reports+={safe,"all_area(all_loc(any_exp(macro(^page_to_mfn$))))"}
+#
+# Series 14
+#
+
+-doc_begin="The severe restrictions imposed by this rule on the use of for
+statements are not balanced by the presumed facilitation of the peer review
+activity."
+-config=MC3R1.R14.2,reports+={disapplied,"any()"}
 -doc_end

--doc_begin="FIXME: explain why pointer differences involving this macro are safe."
--config=MC3R1.R18.2,reports+={safe,"all_area(all_loc(any_exp(macro(^page_to_pdx$))))"}
+-doc_begin="The XEN team relies on the fact that invariant conditions of 'if'
+statements are deliberate"
+-config=MC3R1.R14.3,statements={deliberate , "wrapped(any(),node(if_stmt))" }
 -doc_end

 #
@@ -306,6 +284,17 @@ in assignments."
 {safe, "left_right(^[(,\\[]$,^[),\\]]$)"}
 -doc_end

+#
+# General
+#
+
+-doc_begin="do-while-0 is a well recognized loop idiom by the xen community."
+-loop_idioms={do_stmt, "literal(0)"}
+-doc_end
+-doc_begin="while-[01] is a well recognized loop idiom by the xen community."
+-loop_idioms+={while_stmt, "literal(0)||literal(1)"}
+-doc_end
+
 #
 # Developer confusion
 #
diff --git a/automation/eclair_analysis/ECLAIR/tagging.ecl b/automation/eclair_analysis/ECLAIR/tagging.ecl
index 78a0bc948ba5..e82277fea3c1 100644
--- a/automation/eclair_analysis/ECLAIR/tagging.ecl
+++ b/automation/eclair_analysis/ECLAIR/tagging.ecl
@@ -19,7 +19,7 @@

 -doc="Accepted guidelines as reported in XEN/docs/misra/rules.rst"
 -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"
+    "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.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.R11.7||MC3R1.R11.8||MC3R1.R11.9||MC3R1.R12.5||MC3R1.R13.1||MC3R1.R13.5||MC3R1.R13.6||MC3R1.R14.1||MC3R1.R14.2||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)"}
@@ -30,7 +30,7 @@

 -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.R4.2||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.R20.13||MC3R1.R20.14||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")
--
2.34.1


From xen-devel-bounces@lists.xenproject.org Fri Oct 13 10:16:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 10:16:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616393.958363 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrFDV-0005jV-E1; Fri, 13 Oct 2023 10:16:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616393.958363; Fri, 13 Oct 2023 10: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 1qrFDV-0005jO-9v; Fri, 13 Oct 2023 10:16:25 +0000
Received: by outflank-mailman (input) for mailman id 616393;
 Fri, 13 Oct 2023 10: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=36VQ=F3=cloud.com=george.dunlap@srs-se1.protection.inumbo.net>)
 id 1qrFDT-0005j6-Vk
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 10:16:24 +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 8f331551-69b1-11ee-98d4-6d05b1d4d9a1;
 Fri, 13 Oct 2023 12:16:22 +0200 (CEST)
Received: by mail-lj1-x22b.google.com with SMTP id
 38308e7fff4ca-2c50305c5c4so12627081fa.1
 for <xen-devel@lists.xenproject.org>; Fri, 13 Oct 2023 03:16: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: 8f331551-69b1-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1697192182; x=1697796982; 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=VL/OWh/DzPzw/Gw1t3arje36iohI3iQRyvwNcUDAQHA=;
        b=CwzUvwVMKub1/wOycuce1Fq/rX7fm/F+VjHk9nJwj2do7CH1Wc2sLxC/j9i4M9B6C2
         f2R5kYA/xKA0tFYZP+8L97tStkC2I5d8bkYvewKal7pTLPYu45/JAoSsNa8qA9ZadmTq
         CeHrE6CoV5KvY8o7vxek18LO97yobE4kiQ3aY=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697192182; x=1697796982;
        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=VL/OWh/DzPzw/Gw1t3arje36iohI3iQRyvwNcUDAQHA=;
        b=gWBPG2KRwL/p5tgKoJlRCHBcDKuGPBZuXCcDNBid0EEsoovwrcF9r+TciWpXnRikIa
         9RoPzUiwJ+49ygJjeTmA8prNmwVgR8Rpt13nawvtaI4+drRx2vZvKU8vOVOCZdu3Ezwj
         BpY3QhBVsmwQyOL0YpZIy1iGfGetXX+otPQjH6UsHuEJhYIsMMQWa1OrSto1qlH7IDdQ
         g14NUUerICYZ5LGHkB7j0l7i0idghudMSHOOvYhZIH6dWIZhTCyqz8UA/tZwFueiCsap
         XqStnRzRuO8009Q0BSFhRcdfGxki6mC2dwOyBpvmMW/sMkHL+6YR+8/WQi7Lqn01y0gM
         Q74w==
X-Gm-Message-State: AOJu0Ywpu1foxj0iDb7H51C0h3uunXv//Ce8L9MC+rI90BAq+KYD9TjS
	eR4Yh7Xzby+MH681COLurFRruBJXKUMXsd7xIUqynQ==
X-Google-Smtp-Source: AGHT+IHsngRznFlRb2agXcaKE4TcpzCxP+Ks4r3/EOTXacORCngfCZTfibpuyyUycgsuU526Z4YNbHKnvx2dtxTlSCU=
X-Received: by 2002:a2e:b893:0:b0:2c5:634:b45e with SMTP id
 r19-20020a2eb893000000b002c50634b45emr1397197ljp.36.1697192182279; Fri, 13
 Oct 2023 03:16:22 -0700 (PDT)
MIME-Version: 1.0
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> <alpine.DEB.2.22.394.2309271658500.1403502@ubuntu-linux-20-04-desktop>
 <CA+zSX=ZbeUFrfAUJShooJFJ+d89f4xdXfJJ9HoJKRh4UStkTFQ@mail.gmail.com> <alpine.DEB.2.22.394.2310121535580.3431292@ubuntu-linux-20-04-desktop>
In-Reply-To: <alpine.DEB.2.22.394.2310121535580.3431292@ubuntu-linux-20-04-desktop>
From: George Dunlap <george.dunlap@cloud.com>
Date: Fri, 13 Oct 2023 11:16:11 +0100
Message-ID: <CA+zSX=Y5dMVFM6dVNgBRHxKc0C1e5WGgweQ0FaXXCfAFGH1aPA@mail.gmail.com>
Subject: Re: Xen 4.18 release: Reminder about code freeze
To: Stefano Stabellini <sstabellini@kernel.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>, 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>
Content-Type: multipart/mixed; boundary="0000000000002423b3060796591a"

--0000000000002423b3060796591a
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Thu, Oct 12, 2023 at 11:36=E2=80=AFPM Stefano Stabellini
<sstabellini@kernel.org> wrote:
>
> On Thu, 12 Oct 2023, George Dunlap wrote:
> > > > 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 commi=
t
> > > 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 availab=
le */
> > >                         interface->connection =3D XENSTORE_CONNECTED;
> > >                         xenevtchn_notify(xce_handle, domain->port);
> > > @@ -1031,8 +1032,6 @@ int do_introduce(const void *ctx, struct connec=
tion *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?
> >
> > It moves a line from one function (do_domain_introduce()) into a
> > completely different function (introduce_domain()), nested inside two
> > if() statements; with no analysis on how the change will impact
> > things.
>
> I am not the original author of the patch, and I am not the maintainer
> of the code, so I don't feel I have the qualifications to give you the
> answers you are seeking. Julien as author of the patch and xenstore
> reviewer might be in a better position to answer. Or Juergen as xenstore
> maintainer.

I understand that; my main point is that the change is more complex
than you're characterizing it.  This is information necessary to
understand whether the patch is correct, but it's not in the patch
description, nor in the subsequent thread back in May.

> > Are there any paths through do_domain_introduce() that now *won't* get
> > a domain_conn_reset() call?  Is that OK?
>
> Yes, the already-introduced and the restore code paths. The operations in
> the already-introduced or the restore code paths seem simple enough not
> to require a domain_conn_reset. Julien and Juergen should confirm.

There is no "restore" codepath through do_domain_introduce(); it
passes "false" for the "restore" argument.  So we  only have two paths
to consider through do_domain_introduce(): The "not introduced and not
restoring" path, and the "already-introduced" path.

I'm not sure what the "simple" elements on the branch in
introduce_domain() have to do with whether the content of the page
needs to be cleaned up.  As I said, I don't 100% understand this code,
but it seems like if anything, the reset would be *more* important to
have in the "reintroduce" case than in the "initial introduction"
case, since I'd expect the "initial introduction" case to be empty
already.

> Doesn't it seem weird to you that we set a connection to CONNECTED,
> notify the domain that it is ready to go, and only *after* that we reset
> the connection to zero?
>
> What happens if a domain starts using the connection as soon as it
> receives the event channel notification and before domain_conn_reset is
> called?

Yes, it does seem weird, which is why I said the following. :-)

> > I mean, it certainly seems strange to set the state to CONNECTED, send
> > off an event channel, and then after that delete all watches /
> > transactions / buffered data and so on;

But just because the current code is probably wrong, doesn't mean that
the modified code is probably correct.

If the problem is the delay between the xenevtchn_notify() in
introduce_domain() and the domain_conn_reset() afterwards in
do_domain(), would it make sense instead to move the notification into
do_introduce(), after the domain_conn_reset()?  It is, after all, in
response to XS_INTRODUCE that we want to send the notification, not in
dom0_init() or read_state_connection() (which seems to be more about
restoring a domain).

What about something like the attached? (NB not even compile tested)

 -George

--0000000000002423b3060796591a
Content-Type: application/octet-stream; 
	name="0001-cxenstored-Wait-until-after-reset-to-notify-dom0less.patch"
Content-Disposition: attachment; 
	filename="0001-cxenstored-Wait-until-after-reset-to-notify-dom0less.patch"
Content-Transfer-Encoding: base64
Content-ID: <f_lnoge6k40>
X-Attachment-Id: f_lnoge6k40

RnJvbSBkNmE2NDg4MmEwNmMzNjRlZjE3YjU0YjI1OTAwN2U1YjA3ZDRkN2YwIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBHZW9yZ2UgRHVubGFwIDxnZW9yZ2UuZHVubGFwQGNsb3VkLmNv
bT4KRGF0ZTogRnJpLCAxMyBPY3QgMjAyMyAxMDo1NTo1MyArMDEwMApTdWJqZWN0OiBbUEFUQ0hd
IGN4ZW5zdG9yZWQ6IFdhaXQgdW50aWwgYWZ0ZXIgcmVzZXQgdG8gbm90aWZ5IGRvbTBsZXNzIGRv
bWFpbnMKCkNvbW1pdCBmYzJiNTdjOWEgKCJ4ZW5zdG9yZWQ6IHNlbmQgYW4gZXZ0Y2huIG5vdGlm
aWNhdGlvbiBvbgppbnRyb2R1Y2VfZG9tYWluIikgaW50cm9kdWNlZCB0aGUgc2VuZGluZyBvZiBh
biBldmVudCBjaGFubmVsIHRvIHRoZQpndWVzdCB3aGVuIGZpcnN0IGludHJvZHVjZWQsIHNvIHRo
YXQgZG9tMGxlc3MgZG9tYWlucyB3YWl0aW5nIGZvciB0aGUKY29ubmVjdGlvbiB3b3VsZCBrbm93
IHRoYXQgeGVuc3RvcmUgd2FzIHJlYWR5IHRvIHVzZS4KClVuZm9ydHVuYXRlbHksIGl0IHdhcyBp
bnRyb2R1Y2VkIGluIGludHJvZHVjZV9kb21haW4oKSwgd2hpY2ggMSkgaXMKY2FsbGVkIGJ5IG90
aGVyIGZ1bmN0aW9ucywgd2hlcmUgc3VjaCBmdW5jdGlvbmFsaXR5IGlzIHVubmVlZGVkLCBhbmQK
MikgYWZ0ZXIgdGhlIG1haW4gWFNfSU5UUk9EVUNFIGNhbGwsIGNhbGxzIGRvbWFpbl9jb25uX3Jl
c2V0KCkuICBUaGlzCmludHJvZHVjZXMgYSByYWNlIGNvbmRpdGlvbiwgd2hlcmVieSBpZiB4ZW5z
dG9yZWQgaXMgZGVsYXllZCwgYSBkb21haW4KY2FuIHdha2UgdXAsIHNlbmQgbWVzc2FnZXMgdG8g
dGhlIGJ1ZmZlciwgb25seSB0byBoYXZlIHRoZW0gZGVsZXRlZCBieQp4ZW5zdG9yZSBiZWZvcmUg
ZmluaXNoaW5nIGl0cyBwcm9jZXNzaW5nIG9mIHRoZSBYU19JTlRST0RVQ0UgbWVzc2FnZS4KCk1v
dmUgdGhlIGNvbm5lY3QtYW5kLW5vdGZ5IGNhbGwgaW50byBkb19pbnRyb2R1Y2UoKSBpbnN0ZWFk
LCBhZnRlciB0aGUKZG9tYWluX2Nvbm5fcmVzdCgpOyBwcmVkaWNhdGVkIG9uIHRoZSBzdGF0ZSBi
ZWluZyBpbiB0aGUKWEVOU1RPUkVfUkVDT05ORUNUIHN0YXRlLgoKKFdlIGRvbid0IG5lZWQgdG8g
Y2hlY2sgZm9yICJyZXN0b3JpbmciLCBzaW5jZSB0aGF0IHZhbHVlIGlzIGFsd2F5cwpwYXNzZWQg
YXMgImZhbHNlIiBmcm9tIGRvX2RvbWFpbl9pbnRyb2R1Y2UoKSkuCgpTaWduZWQtb2ZmLWJ5OiBH
ZW9yZ2UgRHVubGFwIDxnZW9yZ2UuZHVubGFwQGNsb3VkLmNvbT4KLS0tCkknbSBub3QgZmFtaWxp
YXIgd2l0aCB0aGlzIGNvZGUsIHNvIHRoaXMgY29tbWl0IG1lc3NhZ2UgaGFzIGJlZW4Kd3JpdHRl
biB1c2luZyB0aGUgInRoZSBmYXN0ZXN0IHdheSB0byBnZXQgdGhlIHJpZ2h0IGFuc3dlciBpcyB0
byBwb3N0CnRoZSB3cm9uZyBhbnN3ZXIiIG1ldGhvZC4gIElmIHlvdSBrbm93IHhlbnN0b3JlZCAm
IHRoZSBwcm90b2NvbCwKcGxlYXNlIHJldmlldyBpZiBjYXJlZnVsbHkgZm9yIGFjY3VyYWN5Lgot
LS0KIHRvb2xzL3hlbnN0b3JlZC9kb21haW4uYyB8IDEyICsrKysrKy0tLS0tLQogMSBmaWxlIGNo
YW5nZWQsIDYgaW5zZXJ0aW9ucygrKSwgNiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS90b29s
cy94ZW5zdG9yZWQvZG9tYWluLmMgYi90b29scy94ZW5zdG9yZWQvZG9tYWluLmMKaW5kZXggYTZj
ZDE5OWZkYy4uYWRkYzM0ZjVmOCAxMDA2NDQKLS0tIGEvdG9vbHMveGVuc3RvcmVkL2RvbWFpbi5j
CisrKyBiL3Rvb2xzL3hlbnN0b3JlZC9kb21haW4uYwpAQCAtOTg4LDEyICs5ODgsNiBAQCBzdGF0
aWMgc3RydWN0IGRvbWFpbiAqaW50cm9kdWNlX2RvbWFpbihjb25zdCB2b2lkICpjdHgsCiAJCS8q
IE5vdyBkb21haW4gYmVsb25ncyB0byBpdHMgY29ubmVjdGlvbi4gKi8KIAkJdGFsbG9jX3N0ZWFs
KGRvbWFpbi0+Y29ubiwgZG9tYWluKTsKIAotCQlpZiAoIXJlc3RvcmUpIHsKLQkJCS8qIE5vdGlm
eSB0aGUgZG9tYWluIHRoYXQgeGVuc3RvcmUgaXMgYXZhaWxhYmxlICovCi0JCQlpbnRlcmZhY2Ut
PmNvbm5lY3Rpb24gPSBYRU5TVE9SRV9DT05ORUNURUQ7Ci0JCQl4ZW5ldnRjaG5fbm90aWZ5KHhj
ZV9oYW5kbGUsIGRvbWFpbi0+cG9ydCk7Ci0JCX0KLQogCQlpZiAoIWlzX21hc3Rlcl9kb21haW4g
JiYgIXJlc3RvcmUpCiAJCQlmaXJlX3NwZWNpYWxfd2F0Y2hlcygiQGludHJvZHVjZURvbWFpbiIp
OwogCX0gZWxzZSB7CkBAIC0xMDMzLDYgKzEwMjcsMTIgQEAgaW50IGRvX2ludHJvZHVjZShjb25z
dCB2b2lkICpjdHgsIHN0cnVjdCBjb25uZWN0aW9uICpjb25uLAogCiAJZG9tYWluX2Nvbm5fcmVz
ZXQoZG9tYWluKTsKIAorCWlmIChpbnRlcmZhY2UtPmNvbm5lY3Rpb24gPT0gWEVOU1RPUkVfUkVD
T05ORUNUKSB7CisJCS8qIE5vdGlmeSB0aGUgZG9tYWluIHRoYXQgeGVuc3RvcmUgaXMgYXZhaWxh
YmxlICovCisJCWludGVyZmFjZS0+Y29ubmVjdGlvbiA9IFhFTlNUT1JFX0NPTk5FQ1RFRDsKKwkJ
eGVuZXZ0Y2huX25vdGlmeSh4Y2VfaGFuZGxlLCBkb21haW4tPnBvcnQpOworCX0KKwogCXNlbmRf
YWNrKGNvbm4sIFhTX0lOVFJPRFVDRSk7CiAKIAlyZXR1cm4gMDsKLS0gCjIuNDIuMAoK
--0000000000002423b3060796591a--


From xen-devel-bounces@lists.xenproject.org Fri Oct 13 10:29:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 10:29:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616399.958373 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrFQL-0000PE-Gq; Fri, 13 Oct 2023 10:29:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616399.958373; Fri, 13 Oct 2023 10:29: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 1qrFQL-0000P7-E4; Fri, 13 Oct 2023 10:29:41 +0000
Received: by outflank-mailman (input) for mailman id 616399;
 Fri, 13 Oct 2023 10:29: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=Ujq9=F3=linaro.org=leo.yan@srs-se1.protection.inumbo.net>)
 id 1qrFQK-0000P1-Lu
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 10:29:40 +0000
Received: from mail-pl1-x62f.google.com (mail-pl1-x62f.google.com
 [2607:f8b0:4864:20::62f])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 688b3807-69b3-11ee-9b0e-b553b5be7939;
 Fri, 13 Oct 2023 12:29:38 +0200 (CEST)
Received: by mail-pl1-x62f.google.com with SMTP id
 d9443c01a7336-1c9d922c039so15886385ad.3
 for <xen-devel@lists.xenproject.org>; Fri, 13 Oct 2023 03:29:38 -0700 (PDT)
Received: from leoy-yangtze.lan ([98.98.49.106])
 by smtp.gmail.com with ESMTPSA id
 ns17-20020a17090b251100b0027cbc50b826sm3350745pjb.17.2023.10.13.03.29.33
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Fri, 13 Oct 2023 03:29: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: 688b3807-69b3-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=linaro.org; s=google; t=1697192976; x=1697797776; 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=4MA9x/skHn3vQ/PZqbQKe6wkO3sRssK/cxCNgR45Ydo=;
        b=erIwSiejN5FZcSczN7wmaJMAIHIzUONW6djZVTnJrMmWH96UyoYBVDB8ZNc5/f1if5
         c0sYCIgTFMXjnI+tAwjvpJ5KNbOkCecHpa+XIKqwygSPQCVJnIU769eNmpmBuuuG7D3B
         2fx8i2mQZSLRo+NpKUZcg1LKY/1OxdNNZrQVHFc1mkO/eZws+PZz2YhbDHCURG3gksB5
         5mFn/8Pf3m1e7YD6Za2KVo+BEoThMY4mNlchFox4AEMShmVS1WPlsVb4YF56Ri6D00eT
         XVG/TfUyUv6oSv/sHboKwmftyS9UCJLqpzkW2CnJPNPIO1yGbu2XA1XVmoNa2ShC6euY
         GnsA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697192976; x=1697797776;
        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=4MA9x/skHn3vQ/PZqbQKe6wkO3sRssK/cxCNgR45Ydo=;
        b=tXlrNlYcTHiPC3pVqmqrkRSVHqKLHrL5nASVaxFwGIY6SgIX+nBFGG9y8dpcULSIqX
         3WvBDG5L4zthYYRF60guS3M2AjJLyeWP1N3Dq3P2tLt6g4UCcLdBcufOTl6LhVq0YgBH
         oCV6YzfBfgbrV+9RSajszBstK2CeFWKbjpCQ1iOmACeNT1m5Re6Olw8UuNaW2ia1/Puh
         Nod9MuR1g3lMIr+rKSIiLU5MjtsBGZwYT5YnQ1wrKEXCbVJo/bf1EB+zghY8703NnV5c
         yJTRahTJnIGRaLM8wY1NexDJohMXnuP7EaoXU/tGEiWp2qFicnzZmGg4899uMFx/7qOL
         9mCw==
X-Gm-Message-State: AOJu0YyYyaa7BCRoqxon3Kn0lzMeVKUwHMDcQ6npxprH2XMCetzYafmL
	ObhUCw2rWmSKDOYHSzADIkHb+f7v6setl5+Ll6anHg==
X-Google-Smtp-Source: AGHT+IEOQbheLHPwVkVpoyT5IetwHAIptf4mP4B9M7MFS7IuD9ABKpGK7UCmpmeXg8ACJeSLIb4WUg==
X-Received: by 2002:a17:90a:e610:b0:27d:63c:34f2 with SMTP id j16-20020a17090ae61000b0027d063c34f2mr6861152pjy.41.1697192976191;
        Fri, 13 Oct 2023 03:29:36 -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 v3] xen/arm: Skip memory nodes if not enabled
Date: Fri, 13 Oct 2023 18:29:29 +0800
Message-Id: <20231013102929.1266849-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 v2:
- Added checking for the DT property length (Julien Grall, Michal Orzel).

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 | 21 +++++++++++++++++++++
 1 file changed, 21 insertions(+)

diff --git a/xen/arch/arm/bootfdt.c b/xen/arch/arm/bootfdt.c
index 2673ad17a1..d73f8e4971 100644
--- a/xen/arch/arm/bootfdt.c
+++ b/xen/arch/arm/bootfdt.c
@@ -16,6 +16,24 @@
 #include <xsm/xsm.h>
 #include <asm/setup.h>
 
+static bool __init device_tree_node_is_available(const void *fdt, int node)
+{
+    const char *status;
+    int len;
+
+    status = fdt_getprop(fdt, node, "status", &len);
+    if ( !status )
+        return true;
+
+    if ( len > 0 )
+    {
+        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 +115,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 Fri Oct 13 10:32:10 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 10:32:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616404.958383 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrFSj-0001s6-5F; Fri, 13 Oct 2023 10:32:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616404.958383; Fri, 13 Oct 2023 10: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 1qrFSj-0001rz-0w; Fri, 13 Oct 2023 10:32:09 +0000
Received: by outflank-mailman (input) for mailman id 616404;
 Fri, 13 Oct 2023 10:32: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=Ujq9=F3=linaro.org=leo.yan@srs-se1.protection.inumbo.net>)
 id 1qrFSh-0001rt-VO
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 10:32:08 +0000
Received: from mail-pf1-x435.google.com (mail-pf1-x435.google.com
 [2607:f8b0:4864:20::435])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id c1603b62-69b3-11ee-98d4-6d05b1d4d9a1;
 Fri, 13 Oct 2023 12:32:06 +0200 (CEST)
Received: by mail-pf1-x435.google.com with SMTP id
 d2e1a72fcca58-690fe10b6a4so1547173b3a.3
 for <xen-devel@lists.xenproject.org>; Fri, 13 Oct 2023 03:32:06 -0700 (PDT)
Received: from leoy-huanghe.lan ([98.98.49.106])
 by smtp.gmail.com with ESMTPSA id
 s14-20020a056a00178e00b00690d7da743dsm11569450pfg.161.2023.10.13.03.32.03
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Fri, 13 Oct 2023 03:32: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: c1603b62-69b3-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=linaro.org; s=google; t=1697193125; x=1697797925; 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=QT8JDS4d48Jv9Iw7CxbI81UddAFIE1jRso45ubnb8DM=;
        b=SA6hN32jDccDddh9VexbSRYPFx+xkPzqkVPYilQGq7HeKisfy7sTjByN2UrJnoT0Gn
         Rk6M20vVAsJxXsv4ifUS/A5o43ML0yCTUdb1yx4JzkoR8CXPGPaPeEuAGme9Kt54+kqj
         +xbZyc3Hto/UVObmqTX/TZO0jxNRCm+x8/XJMXgiIIh5oKxipvLh6grhDhWP/ogTvYcu
         O1Z1//klMNU3euyyA1dXGp0PstPrOMpFYeLCogo5oLDnQXpIAzNXzZy06nCxBj2YYrhf
         7Bbnkb1JPntvH//4qghWTjkhtiqoJcTriS6mI0adFZQWjb9QwQWteCCge/Xw1VPizKXC
         IZmQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697193125; x=1697797925;
        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=QT8JDS4d48Jv9Iw7CxbI81UddAFIE1jRso45ubnb8DM=;
        b=mrlGYXL47uHIH3MEmJvHUR9mc2Qbg7JWg2wLL1fJGL2JLMnZibj9NnwG18d2TtcbOY
         DPbTuXOuu8+C8B0tCY5wd9dwXX/jPPWzjWwBwgTxqlmBlu21BaGljo6UcGn7k1EiE62M
         yKQ3HvcM+3zwnIRu1QE6TpGAieQQ6QIKeVxzB7QbK82aTnoEUPI9RJIIvjC0E5k9VBDm
         hU6ClfoDWMu52SvACcumSCSF+xo8So8X/hBQdgrpUDt3mgYswofwKb/Qs/FdU0d3x5n3
         aOhHcJdctJfvykIk9BD4js3gz+nvzCuG1qGLfTVV7MPriDSqmOY44Gbr1TsB6hKxJCv6
         dsbw==
X-Gm-Message-State: AOJu0YwsRKC9ke9GsCXV7kTkGK83UWzH3qd37XIO9LQ1YA456KR/nghg
	l+enl0DH6hZnfPKQWdwvncWslA==
X-Google-Smtp-Source: AGHT+IH1eMBiIrM/xbdNKZeiDIp3diA8eBl2NiBmBUKGJI+m+MKU60zDZoKUbfLQMNEPpQ8iRH/W3A==
X-Received: by 2002:a05:6a00:1989:b0:68f:e121:b37c with SMTP id d9-20020a056a00198900b0068fe121b37cmr31024332pfl.4.1697193125454;
        Fri, 13 Oct 2023 03:32:05 -0700 (PDT)
Date: Fri, 13 Oct 2023 18:32:01 +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 v2] xen/arm: Skip memory nodes if not enabled
Message-ID: <20231013103201.GA928468@leoy-huanghe.lan>
References: <20230928143110.248221-1-leo.yan@linaro.org>
 <a8d87efe-908b-8eed-dc42-550037051492@amd.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <a8d87efe-908b-8eed-dc42-550037051492@amd.com>

Hi Michal,

On Fri, Sep 29, 2023 at 10:11:19AM +0200, Michal Orzel wrote:

[...]

> > +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().

Sorry for I missed Julien's comment.  Have sent patch v3 for review.

And apologize for late replying.

Leo


From xen-devel-bounces@lists.xenproject.org Fri Oct 13 10:36:14 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 10:36:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616412.958399 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrFWc-0002tm-Ut; Fri, 13 Oct 2023 10:36:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616412.958399; Fri, 13 Oct 2023 10: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 1qrFWc-0002tN-Pf; Fri, 13 Oct 2023 10:36:10 +0000
Received: by outflank-mailman (input) for mailman id 616412;
 Fri, 13 Oct 2023 10:36: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=U36v=F3=suse.com=jgross@srs-se1.protection.inumbo.net>)
 id 1qrFWc-0002pr-4j
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 10:36:10 +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 51c8b73c-69b4-11ee-9b0e-b553b5be7939;
 Fri, 13 Oct 2023 12:36: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-out1.suse.de (Postfix) with ESMTPS id 1396F219DC;
 Fri, 13 Oct 2023 10:36:08 +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 BDBDE138EF;
 Fri, 13 Oct 2023 10:36:07 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap2.suse-dmz.suse.de with ESMTPSA id BTUYLZcdKWUdNgAAMHmgww
 (envelope-from <jgross@suse.com>); Fri, 13 Oct 2023 10:36: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: 51c8b73c-69b4-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1697193368; 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=FH84hSjIS+ofUGFtDCVLLQDs+m1Iz62wX5oKrJ5EKyc=;
	b=U+Dpm1Dlslsrqrt5EefX3q0KZ9i3CLHjJcz/u07kTRC3jbU/O+mwr8M81yZBsiXFbwff01
	NGMkr2ZBS6BFKm1hweZ2zg0CAG+qwJFgGanE2QoHBcejiOu5TEmMhjiV87C5LGrQ6V22kb
	vNUUdpOXAmp4SRqBEVUf7wOfpJFqrvU=
From: Juergen Gross <jgross@suse.com>
To: xen-devel@lists.xenproject.org
Cc: javi.merino@cloud.com,
	Juergen Gross <jgross@suse.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>
Subject: [PATCH v2 06/13] xen/spinlock: add rspin_[un]lock_irq[save|restore]()
Date: Fri, 13 Oct 2023 11:42:17 +0200
Message-Id: <20231013094224.7060-7-jgross@suse.com>
X-Mailer: git-send-email 2.35.3
In-Reply-To: <20231013094224.7060-1-jgross@suse.com>
References: <20231013094224.7060-1-jgross@suse.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Authentication-Results: smtp-out1.suse.de;
	none
X-Spam-Level: 
X-Spam-Score: -6.10
X-Spamd-Result: default: False [-6.10 / 50.00];
	 ARC_NA(0.00)[];
	 RCVD_VIA_SMTP_AUTH(0.00)[];
	 FROM_HAS_DN(0.00)[];
	 TO_DN_SOME(0.00)[];
	 TO_MATCH_ENVRCPT_ALL(0.00)[];
	 R_MISSING_CHARSET(2.50)[];
	 MIME_GOOD(-0.10)[text/plain];
	 REPLY(-4.00)[];
	 BROKEN_CONTENT_TYPE(1.50)[];
	 NEURAL_HAM_LONG(-3.00)[-1.000];
	 DKIM_SIGNED(0.00)[suse.com:s=susede1];
	 NEURAL_HAM_SHORT(-1.00)[-1.000];
	 RCPT_COUNT_SEVEN(0.00)[10];
	 MID_CONTAINS_FROM(1.00)[];
	 FROM_EQ_ENVFROM(0.00)[];
	 MIME_TRACE(0.00)[0:+];
	 RCVD_COUNT_TWO(0.00)[2];
	 RCVD_TLS_ALL(0.00)[];
	 BAYES_HAM(-3.00)[100.00%]
X-Spam-Flag: NO

Instead of special casing rspin_lock_irqsave() and
rspin_unlock_irqrestore() for the console lock, add those functions
to spinlock handling and use them where needed.

Signed-off-by: Juergen Gross <jgross@suse.com>
---
V2:
- new patch
---
 xen/arch/x86/traps.c       | 14 ++++++++------
 xen/common/spinlock.c      | 16 ++++++++++++++++
 xen/drivers/char/console.c | 18 +-----------------
 xen/include/xen/console.h  |  5 +++--
 xen/include/xen/spinlock.h |  7 +++++++
 5 files changed, 35 insertions(+), 25 deletions(-)

diff --git a/xen/arch/x86/traps.c b/xen/arch/x86/traps.c
index e1356f696a..f72769e79b 100644
--- a/xen/arch/x86/traps.c
+++ b/xen/arch/x86/traps.c
@@ -647,13 +647,15 @@ void show_stack_overflow(unsigned int cpu, const struct cpu_user_regs *regs)
 void show_execution_state(const struct cpu_user_regs *regs)
 {
     /* Prevent interleaving of output. */
-    unsigned long flags = console_lock_recursive_irqsave();
+    unsigned long flags;
+
+    rspin_lock_irqsave(&console_lock, flags);
 
     show_registers(regs);
     show_code(regs);
     show_stack(regs);
 
-    console_unlock_recursive_irqrestore(flags);
+    rspin_unlock_irqrestore(&console_lock, flags);
 }
 
 void cf_check show_execution_state_nonconst(struct cpu_user_regs *regs)
@@ -663,7 +665,7 @@ void cf_check show_execution_state_nonconst(struct cpu_user_regs *regs)
 
 void vcpu_show_execution_state(struct vcpu *v)
 {
-    unsigned long flags = 0;
+    unsigned long flags;
 
     if ( test_bit(_VPF_down, &v->pause_flags) )
     {
@@ -698,7 +700,7 @@ void vcpu_show_execution_state(struct vcpu *v)
 #endif
 
     /* Prevent interleaving of output. */
-    flags = console_lock_recursive_irqsave();
+    rspin_lock_irqsave(&console_lock, flags);
 
     vcpu_show_registers(v);
 
@@ -708,7 +710,7 @@ void vcpu_show_execution_state(struct vcpu *v)
          * Stop interleaving prevention: The necessary P2M lookups involve
          * locking, which has to occur with IRQs enabled.
          */
-        console_unlock_recursive_irqrestore(flags);
+        rspin_unlock_irqrestore(&console_lock, flags);
 
         show_hvm_stack(v, &v->arch.user_regs);
     }
@@ -717,7 +719,7 @@ void vcpu_show_execution_state(struct vcpu *v)
         if ( guest_kernel_mode(v, &v->arch.user_regs) )
             show_guest_stack(v, &v->arch.user_regs);
 
-        console_unlock_recursive_irqrestore(flags);
+        rspin_unlock_irqrestore(&console_lock, flags);
     }
 
 #ifdef CONFIG_HVM
diff --git a/xen/common/spinlock.c b/xen/common/spinlock.c
index 58d19ea12c..3b1d1fd8d5 100644
--- a/xen/common/spinlock.c
+++ b/xen/common/spinlock.c
@@ -475,6 +475,16 @@ void rspin_lock(rspinlock_t *lock)
     lock->recurse_cnt++;
 }
 
+unsigned long __rspin_lock_irqsave(rspinlock_t *lock)
+{
+    unsigned long flags;
+
+    local_irq_save(flags);
+    rspin_lock(lock);
+
+    return flags;
+}
+
 void rspin_unlock(rspinlock_t *lock)
 {
     if ( likely(--lock->recurse_cnt == 0) )
@@ -484,6 +494,12 @@ void rspin_unlock(rspinlock_t *lock)
     }
 }
 
+void rspin_unlock_irqrestore(rspinlock_t *lock, unsigned long flags)
+{
+    rspin_unlock(lock);
+    local_irq_restore(flags);
+}
+
 #ifdef CONFIG_DEBUG_LOCK_PROFILE
 
 struct lock_profile_anc {
diff --git a/xen/drivers/char/console.c b/xen/drivers/char/console.c
index 394c01d097..360c2afbf3 100644
--- a/xen/drivers/char/console.c
+++ b/xen/drivers/char/console.c
@@ -120,7 +120,7 @@ static int __read_mostly sercon_handle = -1;
 int8_t __read_mostly opt_console_xen; /* console=xen */
 #endif
 
-static DEFINE_RSPINLOCK(console_lock);
+DEFINE_RSPINLOCK(console_lock);
 
 /*
  * To control the amount of printing, thresholds are added.
@@ -1149,22 +1149,6 @@ void console_end_log_everything(void)
     atomic_dec(&print_everything);
 }
 
-unsigned long console_lock_recursive_irqsave(void)
-{
-    unsigned long flags;
-
-    local_irq_save(flags);
-    rspin_lock(&console_lock);
-
-    return flags;
-}
-
-void console_unlock_recursive_irqrestore(unsigned long flags)
-{
-    rspin_unlock(&console_lock);
-    local_irq_restore(flags);
-}
-
 void console_force_unlock(void)
 {
     watchdog_disable();
diff --git a/xen/include/xen/console.h b/xen/include/xen/console.h
index ab5c30c0da..dff0096b27 100644
--- a/xen/include/xen/console.h
+++ b/xen/include/xen/console.h
@@ -8,8 +8,11 @@
 #define __CONSOLE_H__
 
 #include <xen/inttypes.h>
+#include <xen/spinlock.h>
 #include <public/xen.h>
 
+extern rspinlock_t console_lock;
+
 struct xen_sysctl_readconsole;
 long read_console_ring(struct xen_sysctl_readconsole *op);
 
@@ -20,8 +23,6 @@ void console_init_postirq(void);
 void console_endboot(void);
 int console_has(const char *device);
 
-unsigned long console_lock_recursive_irqsave(void);
-void console_unlock_recursive_irqrestore(unsigned long flags);
 void console_force_unlock(void);
 
 void console_start_sync(void);
diff --git a/xen/include/xen/spinlock.h b/xen/include/xen/spinlock.h
index c99ee52458..53f0f72ac4 100644
--- a/xen/include/xen/spinlock.h
+++ b/xen/include/xen/spinlock.h
@@ -218,7 +218,14 @@ void _spin_barrier(spinlock_t *lock);
  */
 int rspin_trylock(rspinlock_t *lock);
 void rspin_lock(rspinlock_t *lock);
+#define rspin_lock_irqsave(l, f)                                \
+    ({                                                          \
+        BUILD_BUG_ON(sizeof(f) != sizeof(unsigned long));       \
+        ((f) = __rspin_lock_irqsave(l));                        \
+    })
+unsigned long __rspin_lock_irqsave(rspinlock_t *lock);
 void rspin_unlock(rspinlock_t *lock);
+void rspin_unlock_irqrestore(rspinlock_t *lock, unsigned long flags);
 
 #define spin_lock(l)                  _spin_lock(l)
 #define spin_lock_cb(l, c, d)         _spin_lock_cb(l, c, d)
-- 
2.35.3



From xen-devel-bounces@lists.xenproject.org Fri Oct 13 10:36:15 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 10:36:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616411.958393 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrFWc-0002q9-LO; Fri, 13 Oct 2023 10:36:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616411.958393; Fri, 13 Oct 2023 10: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 1qrFWc-0002q2-Gt; Fri, 13 Oct 2023 10:36:10 +0000
Received: by outflank-mailman (input) for mailman id 616411;
 Fri, 13 Oct 2023 10: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=U36v=F3=suse.com=jgross@srs-se1.protection.inumbo.net>)
 id 1qrFWb-0002pr-06
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 10:36:09 +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 4ebcb13e-69b4-11ee-9b0e-b553b5be7939;
 Fri, 13 Oct 2023 12:36: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-out1.suse.de (Postfix) with ESMTPS id 590AF219DA;
 Fri, 13 Oct 2023 10:36:02 +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 E18B7138EF;
 Fri, 13 Oct 2023 10:36:01 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap2.suse-dmz.suse.de with ESMTPSA id 4Ua+NZEdKWUGNgAAMHmgww
 (envelope-from <jgross@suse.com>); Fri, 13 Oct 2023 10: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: 4ebcb13e-69b4-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1697193362; 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=RS8NOjw7CV9ADi2XkbdO4F/BoHXw/B6DnUtxTP6oSxw=;
	b=s9MaP55WnjCG9f+O2sJ/yXQ1DrzhvSYUx78+2druvzMrdD4PjJoQLtTacuoeK0HFT085pg
	Oqx8vUq+k3hPuZdthhbAyaHZMpgZzfHjNeT/69VZ0PqzXcv29G5nrQthiC9OYhCsKQ9Pyk
	hof4oG8UzhltuiHGY/vNUxRMtBnIE0U=
From: Juergen Gross <jgross@suse.com>
To: xen-devel@lists.xenproject.org
Cc: javi.merino@cloud.com,
	Juergen Gross <jgross@suse.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>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>,
	Tamas K Lengyel <tamas@tklengyel.com>,
	Paul Durrant <paul@xen.org>
Subject: [PATCH v2 05/13] xen/spinlock: rename recursive lock functions
Date: Fri, 13 Oct 2023 11:42:16 +0200
Message-Id: <20231013094224.7060-6-jgross@suse.com>
X-Mailer: git-send-email 2.35.3
In-Reply-To: <20231013094224.7060-1-jgross@suse.com>
References: <20231013094224.7060-1-jgross@suse.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Authentication-Results: smtp-out1.suse.de;
	none
X-Spam-Level: 
X-Spam-Score: -6.10
X-Spamd-Result: default: False [-6.10 / 50.00];
	 ARC_NA(0.00)[];
	 RCVD_VIA_SMTP_AUTH(0.00)[];
	 FROM_HAS_DN(0.00)[];
	 TO_DN_SOME(0.00)[];
	 TO_MATCH_ENVRCPT_ALL(0.00)[];
	 R_MISSING_CHARSET(2.50)[];
	 MIME_GOOD(-0.10)[text/plain];
	 REPLY(-4.00)[];
	 BROKEN_CONTENT_TYPE(1.50)[];
	 NEURAL_HAM_LONG(-3.00)[-1.000];
	 DKIM_SIGNED(0.00)[suse.com:s=susede1];
	 NEURAL_HAM_SHORT(-1.00)[-1.000];
	 RCPT_COUNT_TWELVE(0.00)[14];
	 MID_CONTAINS_FROM(1.00)[];
	 FROM_EQ_ENVFROM(0.00)[];
	 MIME_TRACE(0.00)[0:+];
	 RCVD_COUNT_TWO(0.00)[2];
	 RCVD_TLS_ALL(0.00)[];
	 BAYES_HAM(-3.00)[100.00%]
X-Spam-Flag: NO

Rename the recursive spin_lock() functions by replacing the trailing
"_recursive" with a leading "r".

Switch the parameter to be a pointer to rspinlock_t.

Remove the indirection through a macro, as it is adding only complexity
without any gain.

Suggested-by: Jan Beulich <jbeulich.suse.com>
Signed-off-by: Juergen Gross <jgross@suse.com>
---
V2:
- new patch
---
 xen/arch/arm/domain.c         |  4 +--
 xen/arch/x86/domain.c         |  8 +++---
 xen/arch/x86/mm/mem_sharing.c |  8 +++---
 xen/arch/x86/mm/mm-locks.h    |  4 +--
 xen/common/ioreq.c            | 52 +++++++++++++++++------------------
 xen/common/page_alloc.c       | 12 ++++----
 xen/common/spinlock.c         |  6 ++--
 xen/drivers/char/console.c    | 12 ++++----
 xen/drivers/passthrough/pci.c |  4 +--
 xen/include/xen/sched.h       |  4 +--
 xen/include/xen/spinlock.h    | 24 +++++++---------
 11 files changed, 67 insertions(+), 71 deletions(-)

diff --git a/xen/arch/arm/domain.c b/xen/arch/arm/domain.c
index 28e3aaa5e4..603a5f7c81 100644
--- a/xen/arch/arm/domain.c
+++ b/xen/arch/arm/domain.c
@@ -996,7 +996,7 @@ static int relinquish_memory(struct domain *d, struct page_list_head *list)
     int               ret = 0;
 
     /* Use a recursive lock, as we may enter 'free_domheap_page'. */
-    spin_lock_recursive(&d->page_alloc_lock);
+    rspin_lock(&d->page_alloc_lock);
 
     page_list_for_each_safe( page, tmp, list )
     {
@@ -1023,7 +1023,7 @@ static int relinquish_memory(struct domain *d, struct page_list_head *list)
     }
 
   out:
-    spin_unlock_recursive(&d->page_alloc_lock);
+    rspin_unlock(&d->page_alloc_lock);
     return ret;
 }
 
diff --git a/xen/arch/x86/domain.c b/xen/arch/x86/domain.c
index d05ee0da55..57dd5deeb5 100644
--- a/xen/arch/x86/domain.c
+++ b/xen/arch/x86/domain.c
@@ -1314,7 +1314,7 @@ int arch_set_info_guest(
         {
             bool done = false;
 
-            spin_lock_recursive(&d->page_alloc_lock);
+            rspin_lock(&d->page_alloc_lock);
 
             for ( i = 0; ; )
             {
@@ -1335,7 +1335,7 @@ int arch_set_info_guest(
                     break;
             }
 
-            spin_unlock_recursive(&d->page_alloc_lock);
+            rspin_unlock(&d->page_alloc_lock);
 
             if ( !done )
                 return -ERESTART;
@@ -2174,7 +2174,7 @@ static int relinquish_memory(
     int               ret = 0;
 
     /* Use a recursive lock, as we may enter 'free_domheap_page'. */
-    spin_lock_recursive(&d->page_alloc_lock);
+    rspin_lock(&d->page_alloc_lock);
 
     while ( (page = page_list_remove_head(list)) )
     {
@@ -2315,7 +2315,7 @@ static int relinquish_memory(
     page_list_move(list, &d->arch.relmem_list);
 
  out:
-    spin_unlock_recursive(&d->page_alloc_lock);
+    rspin_unlock(&d->page_alloc_lock);
     return ret;
 }
 
diff --git a/xen/arch/x86/mm/mem_sharing.c b/xen/arch/x86/mm/mem_sharing.c
index 94b6b782ef..146f61f354 100644
--- a/xen/arch/x86/mm/mem_sharing.c
+++ b/xen/arch/x86/mm/mem_sharing.c
@@ -688,7 +688,7 @@ static int page_make_sharable(struct domain *d,
     int rc = 0;
     bool drop_dom_ref = false;
 
-    spin_lock_recursive(&d->page_alloc_lock);
+    rspin_lock(&d->page_alloc_lock);
 
     if ( d->is_dying )
     {
@@ -731,7 +731,7 @@ static int page_make_sharable(struct domain *d,
     }
 
 out:
-    spin_unlock_recursive(&d->page_alloc_lock);
+    rspin_unlock(&d->page_alloc_lock);
 
     if ( drop_dom_ref )
         put_domain(d);
@@ -1940,7 +1940,7 @@ int mem_sharing_fork_reset(struct domain *d, bool reset_state,
         goto state;
 
     /* need recursive lock because we will free pages */
-    spin_lock_recursive(&d->page_alloc_lock);
+    rspin_lock(&d->page_alloc_lock);
     page_list_for_each_safe(page, tmp, &d->page_list)
     {
         shr_handle_t sh;
@@ -1969,7 +1969,7 @@ int mem_sharing_fork_reset(struct domain *d, bool reset_state,
         put_page_alloc_ref(page);
         put_page_and_type(page);
     }
-    spin_unlock_recursive(&d->page_alloc_lock);
+    rspin_unlock(&d->page_alloc_lock);
 
  state:
     if ( reset_state )
diff --git a/xen/arch/x86/mm/mm-locks.h b/xen/arch/x86/mm/mm-locks.h
index b2c0467024..3779c552a6 100644
--- a/xen/arch/x86/mm/mm-locks.h
+++ b/xen/arch/x86/mm/mm-locks.h
@@ -79,7 +79,7 @@ static inline void _mm_lock(const struct domain *d, mm_lock_t *l,
 {
     if ( !((mm_locked_by_me(l)) && rec) )
         _check_lock_level(d, level);
-    spin_lock_recursive(&l->lock);
+    rspin_lock(&l->lock);
     if ( l->lock.recurse_cnt == 1 )
     {
         l->locker_function = func;
@@ -200,7 +200,7 @@ static inline void mm_unlock(mm_lock_t *l)
         l->locker_function = "nobody";
         _set_lock_level(l->unlock_level);
     }
-    spin_unlock_recursive(&l->lock);
+    rspin_unlock(&l->lock);
 }
 
 static inline void mm_enforce_order_unlock(int unlock_level,
diff --git a/xen/common/ioreq.c b/xen/common/ioreq.c
index 652c18a9b5..1257a3d972 100644
--- a/xen/common/ioreq.c
+++ b/xen/common/ioreq.c
@@ -329,7 +329,7 @@ bool is_ioreq_server_page(struct domain *d, const struct page_info *page)
     unsigned int id;
     bool found = false;
 
-    spin_lock_recursive(&d->ioreq_server.lock);
+    rspin_lock(&d->ioreq_server.lock);
 
     FOR_EACH_IOREQ_SERVER(d, id, s)
     {
@@ -340,7 +340,7 @@ bool is_ioreq_server_page(struct domain *d, const struct page_info *page)
         }
     }
 
-    spin_unlock_recursive(&d->ioreq_server.lock);
+    rspin_unlock(&d->ioreq_server.lock);
 
     return found;
 }
@@ -658,7 +658,7 @@ static int ioreq_server_create(struct domain *d, int bufioreq_handling,
         return -ENOMEM;
 
     domain_pause(d);
-    spin_lock_recursive(&d->ioreq_server.lock);
+    rspin_lock(&d->ioreq_server.lock);
 
     for ( i = 0; i < MAX_NR_IOREQ_SERVERS; i++ )
     {
@@ -686,13 +686,13 @@ static int ioreq_server_create(struct domain *d, int bufioreq_handling,
     if ( id )
         *id = i;
 
-    spin_unlock_recursive(&d->ioreq_server.lock);
+    rspin_unlock(&d->ioreq_server.lock);
     domain_unpause(d);
 
     return 0;
 
  fail:
-    spin_unlock_recursive(&d->ioreq_server.lock);
+    rspin_unlock(&d->ioreq_server.lock);
     domain_unpause(d);
 
     xfree(s);
@@ -704,7 +704,7 @@ static int ioreq_server_destroy(struct domain *d, ioservid_t id)
     struct ioreq_server *s;
     int rc;
 
-    spin_lock_recursive(&d->ioreq_server.lock);
+    rspin_lock(&d->ioreq_server.lock);
 
     s = get_ioreq_server(d, id);
 
@@ -736,7 +736,7 @@ static int ioreq_server_destroy(struct domain *d, ioservid_t id)
     rc = 0;
 
  out:
-    spin_unlock_recursive(&d->ioreq_server.lock);
+    rspin_unlock(&d->ioreq_server.lock);
 
     return rc;
 }
@@ -749,7 +749,7 @@ static int ioreq_server_get_info(struct domain *d, ioservid_t id,
     struct ioreq_server *s;
     int rc;
 
-    spin_lock_recursive(&d->ioreq_server.lock);
+    rspin_lock(&d->ioreq_server.lock);
 
     s = get_ioreq_server(d, id);
 
@@ -783,7 +783,7 @@ static int ioreq_server_get_info(struct domain *d, ioservid_t id,
     rc = 0;
 
  out:
-    spin_unlock_recursive(&d->ioreq_server.lock);
+    rspin_unlock(&d->ioreq_server.lock);
 
     return rc;
 }
@@ -796,7 +796,7 @@ int ioreq_server_get_frame(struct domain *d, ioservid_t id,
 
     ASSERT(is_hvm_domain(d));
 
-    spin_lock_recursive(&d->ioreq_server.lock);
+    rspin_lock(&d->ioreq_server.lock);
 
     s = get_ioreq_server(d, id);
 
@@ -834,7 +834,7 @@ int ioreq_server_get_frame(struct domain *d, ioservid_t id,
     }
 
  out:
-    spin_unlock_recursive(&d->ioreq_server.lock);
+    rspin_unlock(&d->ioreq_server.lock);
 
     return rc;
 }
@@ -850,7 +850,7 @@ static int ioreq_server_map_io_range(struct domain *d, ioservid_t id,
     if ( start > end )
         return -EINVAL;
 
-    spin_lock_recursive(&d->ioreq_server.lock);
+    rspin_lock(&d->ioreq_server.lock);
 
     s = get_ioreq_server(d, id);
 
@@ -886,7 +886,7 @@ static int ioreq_server_map_io_range(struct domain *d, ioservid_t id,
     rc = rangeset_add_range(r, start, end);
 
  out:
-    spin_unlock_recursive(&d->ioreq_server.lock);
+    rspin_unlock(&d->ioreq_server.lock);
 
     return rc;
 }
@@ -902,7 +902,7 @@ static int ioreq_server_unmap_io_range(struct domain *d, ioservid_t id,
     if ( start > end )
         return -EINVAL;
 
-    spin_lock_recursive(&d->ioreq_server.lock);
+    rspin_lock(&d->ioreq_server.lock);
 
     s = get_ioreq_server(d, id);
 
@@ -938,7 +938,7 @@ static int ioreq_server_unmap_io_range(struct domain *d, ioservid_t id,
     rc = rangeset_remove_range(r, start, end);
 
  out:
-    spin_unlock_recursive(&d->ioreq_server.lock);
+    rspin_unlock(&d->ioreq_server.lock);
 
     return rc;
 }
@@ -963,7 +963,7 @@ int ioreq_server_map_mem_type(struct domain *d, ioservid_t id,
     if ( flags & ~XEN_DMOP_IOREQ_MEM_ACCESS_WRITE )
         return -EINVAL;
 
-    spin_lock_recursive(&d->ioreq_server.lock);
+    rspin_lock(&d->ioreq_server.lock);
 
     s = get_ioreq_server(d, id);
 
@@ -978,7 +978,7 @@ int ioreq_server_map_mem_type(struct domain *d, ioservid_t id,
     rc = arch_ioreq_server_map_mem_type(d, s, flags);
 
  out:
-    spin_unlock_recursive(&d->ioreq_server.lock);
+    rspin_unlock(&d->ioreq_server.lock);
 
     if ( rc == 0 )
         arch_ioreq_server_map_mem_type_completed(d, s, flags);
@@ -992,7 +992,7 @@ static int ioreq_server_set_state(struct domain *d, ioservid_t id,
     struct ioreq_server *s;
     int rc;
 
-    spin_lock_recursive(&d->ioreq_server.lock);
+    rspin_lock(&d->ioreq_server.lock);
 
     s = get_ioreq_server(d, id);
 
@@ -1016,7 +1016,7 @@ static int ioreq_server_set_state(struct domain *d, ioservid_t id,
     rc = 0;
 
  out:
-    spin_unlock_recursive(&d->ioreq_server.lock);
+    rspin_unlock(&d->ioreq_server.lock);
     return rc;
 }
 
@@ -1026,7 +1026,7 @@ int ioreq_server_add_vcpu_all(struct domain *d, struct vcpu *v)
     unsigned int id;
     int rc;
 
-    spin_lock_recursive(&d->ioreq_server.lock);
+    rspin_lock(&d->ioreq_server.lock);
 
     FOR_EACH_IOREQ_SERVER(d, id, s)
     {
@@ -1035,7 +1035,7 @@ int ioreq_server_add_vcpu_all(struct domain *d, struct vcpu *v)
             goto fail;
     }
 
-    spin_unlock_recursive(&d->ioreq_server.lock);
+    rspin_unlock(&d->ioreq_server.lock);
 
     return 0;
 
@@ -1050,7 +1050,7 @@ int ioreq_server_add_vcpu_all(struct domain *d, struct vcpu *v)
         ioreq_server_remove_vcpu(s, v);
     }
 
-    spin_unlock_recursive(&d->ioreq_server.lock);
+    rspin_unlock(&d->ioreq_server.lock);
 
     return rc;
 }
@@ -1060,12 +1060,12 @@ void ioreq_server_remove_vcpu_all(struct domain *d, struct vcpu *v)
     struct ioreq_server *s;
     unsigned int id;
 
-    spin_lock_recursive(&d->ioreq_server.lock);
+    rspin_lock(&d->ioreq_server.lock);
 
     FOR_EACH_IOREQ_SERVER(d, id, s)
         ioreq_server_remove_vcpu(s, v);
 
-    spin_unlock_recursive(&d->ioreq_server.lock);
+    rspin_unlock(&d->ioreq_server.lock);
 }
 
 void ioreq_server_destroy_all(struct domain *d)
@@ -1076,7 +1076,7 @@ void ioreq_server_destroy_all(struct domain *d)
     if ( !arch_ioreq_server_destroy_all(d) )
         return;
 
-    spin_lock_recursive(&d->ioreq_server.lock);
+    rspin_lock(&d->ioreq_server.lock);
 
     /* No need to domain_pause() as the domain is being torn down */
 
@@ -1094,7 +1094,7 @@ void ioreq_server_destroy_all(struct domain *d)
         xfree(s);
     }
 
-    spin_unlock_recursive(&d->ioreq_server.lock);
+    rspin_unlock(&d->ioreq_server.lock);
 }
 
 struct ioreq_server *ioreq_server_select(struct domain *d,
diff --git a/xen/common/page_alloc.c b/xen/common/page_alloc.c
index 9b5df74fdd..8c6a3d9274 100644
--- a/xen/common/page_alloc.c
+++ b/xen/common/page_alloc.c
@@ -2497,7 +2497,7 @@ void free_domheap_pages(struct page_info *pg, unsigned int order)
     if ( unlikely(is_xen_heap_page(pg)) )
     {
         /* NB. May recursively lock from relinquish_memory(). */
-        spin_lock_recursive(&d->page_alloc_lock);
+        rspin_lock(&d->page_alloc_lock);
 
         for ( i = 0; i < (1 << order); i++ )
             arch_free_heap_page(d, &pg[i]);
@@ -2505,7 +2505,7 @@ void free_domheap_pages(struct page_info *pg, unsigned int order)
         d->xenheap_pages -= 1 << order;
         drop_dom_ref = (d->xenheap_pages == 0);
 
-        spin_unlock_recursive(&d->page_alloc_lock);
+        rspin_unlock(&d->page_alloc_lock);
     }
     else
     {
@@ -2514,7 +2514,7 @@ void free_domheap_pages(struct page_info *pg, unsigned int order)
         if ( likely(d) && likely(d != dom_cow) )
         {
             /* NB. May recursively lock from relinquish_memory(). */
-            spin_lock_recursive(&d->page_alloc_lock);
+            rspin_lock(&d->page_alloc_lock);
 
             for ( i = 0; i < (1 << order); i++ )
             {
@@ -2537,7 +2537,7 @@ void free_domheap_pages(struct page_info *pg, unsigned int order)
 
             drop_dom_ref = !domain_adjust_tot_pages(d, -(1 << order));
 
-            spin_unlock_recursive(&d->page_alloc_lock);
+            rspin_unlock(&d->page_alloc_lock);
 
             /*
              * Normally we expect a domain to clear pages before freeing them,
@@ -2753,7 +2753,7 @@ void free_domstatic_page(struct page_info *page)
     ASSERT_ALLOC_CONTEXT();
 
     /* NB. May recursively lock from relinquish_memory(). */
-    spin_lock_recursive(&d->page_alloc_lock);
+    rspin_lock(&d->page_alloc_lock);
 
     arch_free_heap_page(d, page);
 
@@ -2764,7 +2764,7 @@ void free_domstatic_page(struct page_info *page)
     /* Add page on the resv_page_list *after* it has been freed. */
     page_list_add_tail(page, &d->resv_page_list);
 
-    spin_unlock_recursive(&d->page_alloc_lock);
+    rspin_unlock(&d->page_alloc_lock);
 
     if ( drop_dom_ref )
         put_domain(d);
diff --git a/xen/common/spinlock.c b/xen/common/spinlock.c
index 4878a01302..58d19ea12c 100644
--- a/xen/common/spinlock.c
+++ b/xen/common/spinlock.c
@@ -436,7 +436,7 @@ void _spin_barrier(spinlock_t *lock)
     smp_mb();
 }
 
-int _spin_trylock_recursive(spinlock_t *lock)
+int rspin_trylock(rspinlock_t *lock)
 {
     unsigned int cpu = smp_processor_id();
 
@@ -460,7 +460,7 @@ int _spin_trylock_recursive(spinlock_t *lock)
     return 1;
 }
 
-void _spin_lock_recursive(spinlock_t *lock)
+void rspin_lock(rspinlock_t *lock)
 {
     unsigned int cpu = smp_processor_id();
 
@@ -475,7 +475,7 @@ void _spin_lock_recursive(spinlock_t *lock)
     lock->recurse_cnt++;
 }
 
-void _spin_unlock_recursive(spinlock_t *lock)
+void rspin_unlock(rspinlock_t *lock)
 {
     if ( likely(--lock->recurse_cnt == 0) )
     {
diff --git a/xen/drivers/char/console.c b/xen/drivers/char/console.c
index 826f45b922..394c01d097 100644
--- a/xen/drivers/char/console.c
+++ b/xen/drivers/char/console.c
@@ -911,7 +911,7 @@ static void vprintk_common(const char *prefix, const char *fmt, va_list args)
 
     /* console_lock can be acquired recursively from __printk_ratelimit(). */
     local_irq_save(flags);
-    spin_lock_recursive(&console_lock);
+    rspin_lock(&console_lock);
     state = &this_cpu(state);
 
     (void)vsnprintf(buf, sizeof(buf), fmt, args);
@@ -947,7 +947,7 @@ static void vprintk_common(const char *prefix, const char *fmt, va_list args)
         state->continued = 1;
     }
 
-    spin_unlock_recursive(&console_lock);
+    rspin_unlock(&console_lock);
     local_irq_restore(flags);
 }
 
@@ -1154,14 +1154,14 @@ unsigned long console_lock_recursive_irqsave(void)
     unsigned long flags;
 
     local_irq_save(flags);
-    spin_lock_recursive(&console_lock);
+    rspin_lock(&console_lock);
 
     return flags;
 }
 
 void console_unlock_recursive_irqrestore(unsigned long flags)
 {
-    spin_unlock_recursive(&console_lock);
+    rspin_unlock(&console_lock);
     local_irq_restore(flags);
 }
 
@@ -1222,12 +1222,12 @@ int __printk_ratelimit(int ratelimit_ms, int ratelimit_burst)
             char lost_str[8];
             snprintf(lost_str, sizeof(lost_str), "%d", lost);
             /* console_lock may already be acquired by printk(). */
-            spin_lock_recursive(&console_lock);
+            rspin_lock(&console_lock);
             printk_start_of_line("(XEN) ");
             __putstr("printk: ");
             __putstr(lost_str);
             __putstr(" messages suppressed.\n");
-            spin_unlock_recursive(&console_lock);
+            rspin_unlock(&console_lock);
         }
         local_irq_restore(flags);
         return 1;
diff --git a/xen/drivers/passthrough/pci.c b/xen/drivers/passthrough/pci.c
index 61be34e75f..22342f07ac 100644
--- a/xen/drivers/passthrough/pci.c
+++ b/xen/drivers/passthrough/pci.c
@@ -54,12 +54,12 @@ static DEFINE_RSPINLOCK(_pcidevs_lock);
 
 void pcidevs_lock(void)
 {
-    spin_lock_recursive(&_pcidevs_lock);
+    rspin_lock(&_pcidevs_lock);
 }
 
 void pcidevs_unlock(void)
 {
-    spin_unlock_recursive(&_pcidevs_lock);
+    rspin_unlock(&_pcidevs_lock);
 }
 
 bool pcidevs_locked(void)
diff --git a/xen/include/xen/sched.h b/xen/include/xen/sched.h
index c6604aef78..8cf751ad0c 100644
--- a/xen/include/xen/sched.h
+++ b/xen/include/xen/sched.h
@@ -358,8 +358,8 @@ struct sched_unit {
           (v) = (v)->next_in_list )
 
 /* Per-domain lock can be recursively acquired in fault handlers. */
-#define domain_lock(d) spin_lock_recursive(&(d)->domain_lock)
-#define domain_unlock(d) spin_unlock_recursive(&(d)->domain_lock)
+#define domain_lock(d) rspin_lock(&(d)->domain_lock)
+#define domain_unlock(d) rspin_unlock(&(d)->domain_lock)
 
 struct evtchn_port_ops;
 
diff --git a/xen/include/xen/spinlock.h b/xen/include/xen/spinlock.h
index 19561d5e61..c99ee52458 100644
--- a/xen/include/xen/spinlock.h
+++ b/xen/include/xen/spinlock.h
@@ -209,9 +209,16 @@ int _spin_is_locked(const spinlock_t *lock);
 int _spin_trylock(spinlock_t *lock);
 void _spin_barrier(spinlock_t *lock);
 
-int _spin_trylock_recursive(spinlock_t *lock);
-void _spin_lock_recursive(spinlock_t *lock);
-void _spin_unlock_recursive(spinlock_t *lock);
+/*
+ * rspin_[un]lock(): Use these forms when the lock can (safely!) be
+ * reentered recursively on the same CPU. All critical regions that may form
+ * part of a recursively-nested set must be protected by these forms. If there
+ * are any critical regions that cannot form part of such a set, they can use
+ * standard spin_[un]lock().
+ */
+int rspin_trylock(rspinlock_t *lock);
+void rspin_lock(rspinlock_t *lock);
+void rspin_unlock(rspinlock_t *lock);
 
 #define spin_lock(l)                  _spin_lock(l)
 #define spin_lock_cb(l, c, d)         _spin_lock_cb(l, c, d)
@@ -241,15 +248,4 @@ void _spin_unlock_recursive(spinlock_t *lock);
 /* Ensure a lock is quiescent between two critical operations. */
 #define spin_barrier(l)               _spin_barrier(l)
 
-/*
- * spin_[un]lock_recursive(): Use these forms when the lock can (safely!) be
- * reentered recursively on the same CPU. All critical regions that may form
- * part of a recursively-nested set must be protected by these forms. If there
- * are any critical regions that cannot form part of such a set, they can use
- * standard spin_[un]lock().
- */
-#define spin_trylock_recursive(l)     _spin_trylock_recursive(l)
-#define spin_lock_recursive(l)        _spin_lock_recursive(l)
-#define spin_unlock_recursive(l)      _spin_unlock_recursive(l)
-
 #endif /* __SPINLOCK_H__ */
-- 
2.35.3



From xen-devel-bounces@lists.xenproject.org Fri Oct 13 10:36:17 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 10:36:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616413.958413 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrFWj-0003Nz-Ch; Fri, 13 Oct 2023 10:36:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616413.958413; Fri, 13 Oct 2023 10:36: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 1qrFWj-0003Nq-9G; Fri, 13 Oct 2023 10:36:17 +0000
Received: by outflank-mailman (input) for mailman id 616413;
 Fri, 13 Oct 2023 10:36: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=U36v=F3=suse.com=jgross@srs-se1.protection.inumbo.net>)
 id 1qrFWh-0002pr-PO
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 10:36:15 +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 553286f6-69b4-11ee-9b0e-b553b5be7939;
 Fri, 13 Oct 2023 12:36:14 +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 B66BF1F37E;
 Fri, 13 Oct 2023 10:36:13 +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 72EA7138EF;
 Fri, 13 Oct 2023 10:36:13 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap2.suse-dmz.suse.de with ESMTPSA id g9q5Gp0dKWUpNgAAMHmgww
 (envelope-from <jgross@suse.com>); Fri, 13 Oct 2023 10: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: 553286f6-69b4-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1697193373; 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=klB1BPybU60Z69KLLAN7OEkcpRKvUZOAtBgC/BqL140=;
	b=Tf/SZchrgUjKSv/FG/Pj5RLnHcRYvnxpZpfTwPj/QRb+hpEtwgcKJNCB3l3BF+svXXQs6W
	BNvUv42W2/KEKxm6hUpCBoQ+HMiS34VoX4JYnpXGwtYnDN2h7+XHWE3X3oFmCLyWPUW63k
	uM4qmoPBY5PXr1exeT/aO4IlDbki94o=
From: Juergen Gross <jgross@suse.com>
To: xen-devel@lists.xenproject.org
Cc: javi.merino@cloud.com,
	Juergen Gross <jgross@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 07/13] xen/spinlock: make struct lock_profile rspinlock_t aware
Date: Fri, 13 Oct 2023 11:42:18 +0200
Message-Id: <20231013094224.7060-8-jgross@suse.com>
X-Mailer: git-send-email 2.35.3
In-Reply-To: <20231013094224.7060-1-jgross@suse.com>
References: <20231013094224.7060-1-jgross@suse.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Authentication-Results: smtp-out2.suse.de;
	none
X-Spam-Level: 
X-Spam-Score: -6.10
X-Spamd-Result: default: False [-6.10 / 50.00];
	 ARC_NA(0.00)[];
	 RCVD_VIA_SMTP_AUTH(0.00)[];
	 FROM_HAS_DN(0.00)[];
	 TO_DN_SOME(0.00)[];
	 TO_MATCH_ENVRCPT_ALL(0.00)[];
	 R_MISSING_CHARSET(2.50)[];
	 MIME_GOOD(-0.10)[text/plain];
	 REPLY(-4.00)[];
	 BROKEN_CONTENT_TYPE(1.50)[];
	 NEURAL_HAM_LONG(-3.00)[-1.000];
	 DKIM_SIGNED(0.00)[suse.com:s=susede1];
	 NEURAL_HAM_SHORT(-1.00)[-1.000];
	 RCPT_COUNT_SEVEN(0.00)[9];
	 MID_CONTAINS_FROM(1.00)[];
	 FROM_EQ_ENVFROM(0.00)[];
	 MIME_TRACE(0.00)[0:+];
	 RCVD_COUNT_TWO(0.00)[2];
	 RCVD_TLS_ALL(0.00)[];
	 BAYES_HAM(-3.00)[100.00%]
X-Spam-Flag: NO

Struct lock_profile contains a pointer to the spinlock it is associated
with. Prepare support of differing spinlock_t and rspinlock_t types by
adding a type indicator of the pointer. Use the highest bit of the
block_cnt member for this indicator in order to not grow the struct
while hurting only the slow path with slightly less performant code.

Signed-off-by: Juergen Gross <jgross@suse.com>
---
V2:
- new patch
---
 xen/common/spinlock.c      | 26 +++++++++++++++++++-------
 xen/include/xen/spinlock.h | 10 ++++++++--
 2 files changed, 27 insertions(+), 9 deletions(-)

diff --git a/xen/common/spinlock.c b/xen/common/spinlock.c
index 3b1d1fd8d5..7b8e842eba 100644
--- a/xen/common/spinlock.c
+++ b/xen/common/spinlock.c
@@ -538,19 +538,31 @@ static void spinlock_profile_iterate(lock_profile_subfunc *sub, void *par)
 static void cf_check spinlock_profile_print_elem(struct lock_profile *data,
     int32_t type, int32_t idx, void *par)
 {
-    struct spinlock *lock = data->lock;
+    unsigned int cpu;
+    uint32_t lockval;
+
+    if ( data->is_rlock )
+    {
+        cpu = data->rlock->debug.cpu;
+        lockval = data->rlock->tickets.head_tail;
+    }
+    else
+    {
+        cpu = data->lock->debug.cpu;
+        lockval = data->lock->tickets.head_tail;
+    }
 
     printk("%s ", lock_profile_ancs[type].name);
     if ( type != LOCKPROF_TYPE_GLOBAL )
         printk("%d ", idx);
-    printk("%s: addr=%p, lockval=%08x, ", data->name, lock,
-           lock->tickets.head_tail);
-    if ( lock->debug.cpu == SPINLOCK_NO_CPU )
+    printk("%s: addr=%p, lockval=%08x, ", data->name, data->lock, lockval);
+    if ( cpu == SPINLOCK_NO_CPU )
         printk("not locked\n");
     else
-        printk("cpu=%d\n", lock->debug.cpu);
-    printk("  lock:%" PRId64 "(%" PRI_stime "), block:%" PRId64 "(%" PRI_stime ")\n",
-           data->lock_cnt, data->time_hold, data->block_cnt, data->time_block);
+        printk("cpu=%u\n", cpu);
+    printk("  lock:%" PRIu64 "(%" PRI_stime "), block:%" PRIu64 "(%" PRI_stime ")\n",
+           data->lock_cnt, data->time_hold, (uint64_t)data->block_cnt,
+           data->time_block);
 }
 
 void cf_check spinlock_profile_printall(unsigned char key)
diff --git a/xen/include/xen/spinlock.h b/xen/include/xen/spinlock.h
index 53f0f72ac4..5ada9dce3d 100644
--- a/xen/include/xen/spinlock.h
+++ b/xen/include/xen/spinlock.h
@@ -76,13 +76,19 @@ union lock_debug { };
 */
 
 struct spinlock;
+/* Temporary hack until a dedicated struct rspinlock is existing. */
+#define rspinlock spinlock
 
 struct lock_profile {
     struct lock_profile *next;       /* forward link */
     const char          *name;       /* lock name */
-    struct spinlock     *lock;       /* the lock itself */
+    union {
+        struct spinlock *lock;       /* the lock itself */
+        struct rspinlock *rlock;     /* the recursive lock itself */
+    };
     uint64_t            lock_cnt;    /* # of complete locking ops */
-    uint64_t            block_cnt;   /* # of complete wait for lock */
+    uint64_t            block_cnt:63; /* # of complete wait for lock */
+    uint64_t            is_rlock:1;  /* use rlock pointer */
     s_time_t            time_hold;   /* cumulated lock time */
     s_time_t            time_block;  /* cumulated wait time */
     s_time_t            time_locked; /* system time of last locking */
-- 
2.35.3



From xen-devel-bounces@lists.xenproject.org Fri Oct 13 10:36:23 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 10:36:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616414.958423 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrFWp-0003k7-Jp; Fri, 13 Oct 2023 10:36:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616414.958423; Fri, 13 Oct 2023 10:36: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 1qrFWp-0003jw-H5; Fri, 13 Oct 2023 10:36:23 +0000
Received: by outflank-mailman (input) for mailman id 616414;
 Fri, 13 Oct 2023 10:36: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=U36v=F3=suse.com=jgross@srs-se1.protection.inumbo.net>)
 id 1qrFWo-0002pr-4E
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 10:36:22 +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 58aaaf90-69b4-11ee-9b0e-b553b5be7939;
 Fri, 13 Oct 2023 12:36:19 +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 950EE219DA;
 Fri, 13 Oct 2023 10:36:19 +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 230B4138EF;
 Fri, 13 Oct 2023 10:36:19 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap2.suse-dmz.suse.de with ESMTPSA id +BpUB6MdKWU1NgAAMHmgww
 (envelope-from <jgross@suse.com>); Fri, 13 Oct 2023 10:36: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: 58aaaf90-69b4-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1697193379; 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=X9Vcgu3G9bkAar/yzz+yHGmlnPOtJ9HGD+jys7FSIrY=;
	b=XHEuMN/enQAv/jgw/ewVrsZ1zbgTetZJpyrSH4MuNcGucIB5gPNBCmF6ZkJ7WiiC2+u/gl
	Zw35SIoyGxgAtvDCYnpkB1rgojK/6R5GXt/Sr1JY5lZBqqNjhjeFhNyhvzIMTFUNe6T0RT
	imbxTIYBfpP5fOsF4WfaPanN1MHy63A=
From: Juergen Gross <jgross@suse.com>
To: xen-devel@lists.xenproject.org
Cc: javi.merino@cloud.com,
	Juergen Gross <jgross@suse.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>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>,
	Tamas K Lengyel <tamas@tklengyel.com>,
	Lukasz Hawrylko <lukasz@hawrylko.pl>,
	"Daniel P. Smith" <dpsmith@apertussolutions.com>,
	=?UTF-8?q?Mateusz=20M=C3=B3wka?= <mateusz.mowka@intel.com>
Subject: [PATCH v2 08/13] xen/spinlock: add explicit non-recursive locking functions
Date: Fri, 13 Oct 2023 11:42:19 +0200
Message-Id: <20231013094224.7060-9-jgross@suse.com>
X-Mailer: git-send-email 2.35.3
In-Reply-To: <20231013094224.7060-1-jgross@suse.com>
References: <20231013094224.7060-1-jgross@suse.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Authentication-Results: smtp-out1.suse.de;
	none
X-Spam-Level: 
X-Spam-Score: -6.10
X-Spamd-Result: default: False [-6.10 / 50.00];
	 ARC_NA(0.00)[];
	 RCVD_VIA_SMTP_AUTH(0.00)[];
	 FROM_HAS_DN(0.00)[];
	 TO_DN_SOME(0.00)[];
	 TO_MATCH_ENVRCPT_ALL(0.00)[];
	 R_MISSING_CHARSET(2.50)[];
	 MIME_GOOD(-0.10)[text/plain];
	 REPLY(-4.00)[];
	 BROKEN_CONTENT_TYPE(1.50)[];
	 NEURAL_HAM_LONG(-3.00)[-1.000];
	 DKIM_SIGNED(0.00)[suse.com:s=susede1];
	 NEURAL_HAM_SHORT(-1.00)[-1.000];
	 RCPT_COUNT_TWELVE(0.00)[16];
	 MID_CONTAINS_FROM(1.00)[];
	 FROM_EQ_ENVFROM(0.00)[];
	 MIME_TRACE(0.00)[0:+];
	 RCVD_COUNT_TWO(0.00)[2];
	 RCVD_TLS_ALL(0.00)[];
	 BAYES_HAM(-3.00)[100.00%]
X-Spam-Flag: NO

In order to prepare a type-safe recursive spinlock structure, add
explicitly non-recursive locking functions to be used for non-recursive
locking of spinlocks, which are used recursively, too.

Signed-off-by: Juergen Gross <jgross@suse.com>
---
V2:
- rename functions (Jan Beulich)
- get rid of !! in pcidevs_locked() (Jan Beulich)
---
 xen/arch/arm/mm.c             |  4 ++--
 xen/arch/x86/domain.c         | 12 ++++++------
 xen/arch/x86/mm.c             | 12 ++++++------
 xen/arch/x86/mm/mem_sharing.c |  8 ++++----
 xen/arch/x86/mm/p2m-pod.c     |  4 ++--
 xen/arch/x86/mm/p2m.c         |  4 ++--
 xen/arch/x86/tboot.c          |  4 ++--
 xen/common/domctl.c           |  4 ++--
 xen/common/grant_table.c      | 10 +++++-----
 xen/common/memory.c           |  4 ++--
 xen/common/numa.c             |  4 ++--
 xen/common/page_alloc.c       | 16 ++++++++--------
 xen/drivers/char/console.c    | 16 ++++++++--------
 xen/include/xen/spinlock.h    | 24 +++++++++++++++++++-----
 14 files changed, 70 insertions(+), 56 deletions(-)

diff --git a/xen/arch/arm/mm.c b/xen/arch/arm/mm.c
index c34cc94c90..c3a822b834 100644
--- a/xen/arch/arm/mm.c
+++ b/xen/arch/arm/mm.c
@@ -1317,7 +1317,7 @@ void share_xen_page_with_guest(struct page_info *page, struct domain *d,
     if ( page_get_owner(page) == d )
         return;
 
-    spin_lock(&d->page_alloc_lock);
+    nrspin_lock(&d->page_alloc_lock);
 
     /*
      * The incremented type count pins as writable or read-only.
@@ -1348,7 +1348,7 @@ void share_xen_page_with_guest(struct page_info *page, struct domain *d,
         page_list_add_tail(page, &d->xenpage_list);
     }
 
-    spin_unlock(&d->page_alloc_lock);
+    nrspin_unlock(&d->page_alloc_lock);
 }
 
 int xenmem_add_to_physmap_one(
diff --git a/xen/arch/x86/domain.c b/xen/arch/x86/domain.c
index 57dd5deeb5..feb0678967 100644
--- a/xen/arch/x86/domain.c
+++ b/xen/arch/x86/domain.c
@@ -212,7 +212,7 @@ void dump_pageframe_info(struct domain *d)
     {
         unsigned long total[MASK_EXTR(PGT_type_mask, PGT_type_mask) + 1] = {};
 
-        spin_lock(&d->page_alloc_lock);
+        nrspin_lock(&d->page_alloc_lock);
         page_list_for_each ( page, &d->page_list )
         {
             unsigned int index = MASK_EXTR(page->u.inuse.type_info,
@@ -231,13 +231,13 @@ void dump_pageframe_info(struct domain *d)
                    _p(mfn_x(page_to_mfn(page))),
                    page->count_info, page->u.inuse.type_info);
         }
-        spin_unlock(&d->page_alloc_lock);
+        nrspin_unlock(&d->page_alloc_lock);
     }
 
     if ( is_hvm_domain(d) )
         p2m_pod_dump_data(d);
 
-    spin_lock(&d->page_alloc_lock);
+    nrspin_lock(&d->page_alloc_lock);
 
     page_list_for_each ( page, &d->xenpage_list )
     {
@@ -253,7 +253,7 @@ void dump_pageframe_info(struct domain *d)
                page->count_info, page->u.inuse.type_info);
     }
 
-    spin_unlock(&d->page_alloc_lock);
+    nrspin_unlock(&d->page_alloc_lock);
 }
 
 void update_guest_memory_policy(struct vcpu *v,
@@ -2439,10 +2439,10 @@ int domain_relinquish_resources(struct domain *d)
             d->arch.auto_unmask = 0;
         }
 
-        spin_lock(&d->page_alloc_lock);
+        nrspin_lock(&d->page_alloc_lock);
         page_list_splice(&d->arch.relmem_list, &d->page_list);
         INIT_PAGE_LIST_HEAD(&d->arch.relmem_list);
-        spin_unlock(&d->page_alloc_lock);
+        nrspin_unlock(&d->page_alloc_lock);
 
     PROGRESS(xen):
 
diff --git a/xen/arch/x86/mm.c b/xen/arch/x86/mm.c
index 39544bd9f9..34682c1795 100644
--- a/xen/arch/x86/mm.c
+++ b/xen/arch/x86/mm.c
@@ -482,7 +482,7 @@ void share_xen_page_with_guest(struct page_info *page, struct domain *d,
 
     set_gpfn_from_mfn(mfn_x(page_to_mfn(page)), INVALID_M2P_ENTRY);
 
-    spin_lock(&d->page_alloc_lock);
+    nrspin_lock(&d->page_alloc_lock);
 
     /* The incremented type count pins as writable or read-only. */
     page->u.inuse.type_info =
@@ -502,7 +502,7 @@ void share_xen_page_with_guest(struct page_info *page, struct domain *d,
         page_list_add_tail(page, &d->xenpage_list);
     }
 
-    spin_unlock(&d->page_alloc_lock);
+    nrspin_unlock(&d->page_alloc_lock);
 }
 
 void make_cr3(struct vcpu *v, mfn_t mfn)
@@ -3584,11 +3584,11 @@ long do_mmuext_op(
             {
                 bool drop_ref;
 
-                spin_lock(&pg_owner->page_alloc_lock);
+                nrspin_lock(&pg_owner->page_alloc_lock);
                 drop_ref = (pg_owner->is_dying &&
                             test_and_clear_bit(_PGT_pinned,
                                                &page->u.inuse.type_info));
-                spin_unlock(&pg_owner->page_alloc_lock);
+                nrspin_unlock(&pg_owner->page_alloc_lock);
                 if ( drop_ref )
                 {
         pin_drop:
@@ -4411,7 +4411,7 @@ int steal_page(
      * that it might be upon return from alloc_domheap_pages with
      * MEMF_no_owner set.
      */
-    spin_lock(&d->page_alloc_lock);
+    nrspin_lock(&d->page_alloc_lock);
 
     BUG_ON(page->u.inuse.type_info & (PGT_count_mask | PGT_locked |
                                       PGT_pinned));
@@ -4423,7 +4423,7 @@ int steal_page(
     if ( !(memflags & MEMF_no_refcount) && !domain_adjust_tot_pages(d, -1) )
         drop_dom_ref = true;
 
-    spin_unlock(&d->page_alloc_lock);
+    nrspin_unlock(&d->page_alloc_lock);
 
     if ( unlikely(drop_dom_ref) )
         put_domain(d);
diff --git a/xen/arch/x86/mm/mem_sharing.c b/xen/arch/x86/mm/mem_sharing.c
index 146f61f354..73a82c4f78 100644
--- a/xen/arch/x86/mm/mem_sharing.c
+++ b/xen/arch/x86/mm/mem_sharing.c
@@ -746,11 +746,11 @@ static int page_make_private(struct domain *d, struct page_info *page)
     if ( !get_page(page, dom_cow) )
         return -EINVAL;
 
-    spin_lock(&d->page_alloc_lock);
+    nrspin_lock(&d->page_alloc_lock);
 
     if ( d->is_dying )
     {
-        spin_unlock(&d->page_alloc_lock);
+        nrspin_unlock(&d->page_alloc_lock);
         put_page(page);
         return -EBUSY;
     }
@@ -758,7 +758,7 @@ static int page_make_private(struct domain *d, struct page_info *page)
     expected_type = (PGT_shared_page | PGT_validated | PGT_locked | 2);
     if ( page->u.inuse.type_info != expected_type )
     {
-        spin_unlock(&d->page_alloc_lock);
+        nrspin_unlock(&d->page_alloc_lock);
         put_page(page);
         return -EEXIST;
     }
@@ -775,7 +775,7 @@ static int page_make_private(struct domain *d, struct page_info *page)
     if ( domain_adjust_tot_pages(d, 1) == 1 )
         get_knownalive_domain(d);
     page_list_add_tail(page, &d->page_list);
-    spin_unlock(&d->page_alloc_lock);
+    nrspin_unlock(&d->page_alloc_lock);
 
     put_page(page);
 
diff --git a/xen/arch/x86/mm/p2m-pod.c b/xen/arch/x86/mm/p2m-pod.c
index 9969eb45fa..5361c2c5b1 100644
--- a/xen/arch/x86/mm/p2m-pod.c
+++ b/xen/arch/x86/mm/p2m-pod.c
@@ -27,7 +27,7 @@
 static inline void lock_page_alloc(struct p2m_domain *p2m)
 {
     page_alloc_mm_pre_lock(p2m->domain);
-    spin_lock(&(p2m->domain->page_alloc_lock));
+    nrspin_lock(&(p2m->domain->page_alloc_lock));
     page_alloc_mm_post_lock(p2m->domain,
                             p2m->domain->arch.page_alloc_unlock_level);
 }
@@ -35,7 +35,7 @@ static inline void lock_page_alloc(struct p2m_domain *p2m)
 static inline void unlock_page_alloc(struct p2m_domain *p2m)
 {
     page_alloc_mm_unlock(p2m->domain->arch.page_alloc_unlock_level);
-    spin_unlock(&(p2m->domain->page_alloc_lock));
+    nrspin_unlock(&(p2m->domain->page_alloc_lock));
 }
 
 /*
diff --git a/xen/arch/x86/mm/p2m.c b/xen/arch/x86/mm/p2m.c
index 0983bd71d9..f78c46bda2 100644
--- a/xen/arch/x86/mm/p2m.c
+++ b/xen/arch/x86/mm/p2m.c
@@ -2225,7 +2225,7 @@ void audit_p2m(struct domain *d,
 
     /* Audit part two: walk the domain's page allocation list, checking
      * the m2p entries. */
-    spin_lock(&d->page_alloc_lock);
+    nrspin_lock(&d->page_alloc_lock);
     page_list_for_each ( page, &d->page_list )
     {
         mfn = mfn_x(page_to_mfn(page));
@@ -2277,7 +2277,7 @@ void audit_p2m(struct domain *d,
         P2M_PRINTK("OK: mfn=%#lx, gfn=%#lx, p2mfn=%#lx\n",
                        mfn, gfn, mfn_x(p2mfn));
     }
-    spin_unlock(&d->page_alloc_lock);
+    nrspin_unlock(&d->page_alloc_lock);
 
     pod_unlock(p2m);
     p2m_unlock(p2m);
diff --git a/xen/arch/x86/tboot.c b/xen/arch/x86/tboot.c
index 86c4c22cac..5b33a1bf9d 100644
--- a/xen/arch/x86/tboot.c
+++ b/xen/arch/x86/tboot.c
@@ -205,14 +205,14 @@ static void tboot_gen_domain_integrity(const uint8_t key[TB_KEY_SIZE],
             continue;
         printk("MACing Domain %u\n", d->domain_id);
 
-        spin_lock(&d->page_alloc_lock);
+        nrspin_lock(&d->page_alloc_lock);
         page_list_for_each(page, &d->page_list)
         {
             void *pg = __map_domain_page(page);
             vmac_update(pg, PAGE_SIZE, &ctx);
             unmap_domain_page(pg);
         }
-        spin_unlock(&d->page_alloc_lock);
+        nrspin_unlock(&d->page_alloc_lock);
 
         if ( is_iommu_enabled(d) && is_vtd )
         {
diff --git a/xen/common/domctl.c b/xen/common/domctl.c
index 505e29c0dc..3733f60f6a 100644
--- a/xen/common/domctl.c
+++ b/xen/common/domctl.c
@@ -621,14 +621,14 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xen_domctl_t) u_domctl)
     {
         uint64_t new_max = op->u.max_mem.max_memkb >> (PAGE_SHIFT - 10);
 
-        spin_lock(&d->page_alloc_lock);
+        nrspin_lock(&d->page_alloc_lock);
         /*
          * NB. We removed a check that new_max >= current tot_pages; this means
          * that the domain will now be allowed to "ratchet" down to new_max. In
          * the meantime, while tot > max, all new allocations are disallowed.
          */
         d->max_pages = min(new_max, (uint64_t)(typeof(d->max_pages))-1);
-        spin_unlock(&d->page_alloc_lock);
+        nrspin_unlock(&d->page_alloc_lock);
         break;
     }
 
diff --git a/xen/common/grant_table.c b/xen/common/grant_table.c
index 89b7811c51..8145974d3a 100644
--- a/xen/common/grant_table.c
+++ b/xen/common/grant_table.c
@@ -2376,7 +2376,7 @@ gnttab_transfer(
             mfn = page_to_mfn(page);
         }
 
-        spin_lock(&e->page_alloc_lock);
+        nrspin_lock(&e->page_alloc_lock);
 
         /*
          * Check that 'e' will accept the page and has reservation
@@ -2387,7 +2387,7 @@ gnttab_transfer(
              unlikely(domain_tot_pages(e) >= e->max_pages) ||
              unlikely(!(e->tot_pages + 1)) )
         {
-            spin_unlock(&e->page_alloc_lock);
+            nrspin_unlock(&e->page_alloc_lock);
 
             if ( e->is_dying )
                 gdprintk(XENLOG_INFO, "Transferee d%d is dying\n",
@@ -2411,7 +2411,7 @@ gnttab_transfer(
          * safely drop the lock and re-aquire it later to add page to the
          * pagelist.
          */
-        spin_unlock(&e->page_alloc_lock);
+        nrspin_unlock(&e->page_alloc_lock);
         okay = gnttab_prepare_for_transfer(e, d, gop.ref);
 
         /*
@@ -2427,9 +2427,9 @@ gnttab_transfer(
              * Need to grab this again to safely free our "reserved"
              * page in the page total
              */
-            spin_lock(&e->page_alloc_lock);
+            nrspin_lock(&e->page_alloc_lock);
             drop_dom_ref = !domain_adjust_tot_pages(e, -1);
-            spin_unlock(&e->page_alloc_lock);
+            nrspin_unlock(&e->page_alloc_lock);
 
             if ( okay /* i.e. e->is_dying due to the surrounding if() */ )
                 gdprintk(XENLOG_INFO, "Transferee d%d is now dying\n",
diff --git a/xen/common/memory.c b/xen/common/memory.c
index fa165ebc14..f6a4dc17ee 100644
--- a/xen/common/memory.c
+++ b/xen/common/memory.c
@@ -770,10 +770,10 @@ static long memory_exchange(XEN_GUEST_HANDLE_PARAM(xen_memory_exchange_t) arg)
                               (1UL << in_chunk_order)) -
                              (j * (1UL << exch.out.extent_order)));
 
-                spin_lock(&d->page_alloc_lock);
+                nrspin_lock(&d->page_alloc_lock);
                 drop_dom_ref = (dec_count &&
                                 !domain_adjust_tot_pages(d, -dec_count));
-                spin_unlock(&d->page_alloc_lock);
+                nrspin_unlock(&d->page_alloc_lock);
 
                 if ( drop_dom_ref )
                     put_domain(d);
diff --git a/xen/common/numa.c b/xen/common/numa.c
index f454c4d894..47b1d0b5a8 100644
--- a/xen/common/numa.c
+++ b/xen/common/numa.c
@@ -718,13 +718,13 @@ static void cf_check dump_numa(unsigned char key)
 
         memset(page_num_node, 0, sizeof(page_num_node));
 
-        spin_lock(&d->page_alloc_lock);
+        nrspin_lock(&d->page_alloc_lock);
         page_list_for_each ( page, &d->page_list )
         {
             i = page_to_nid(page);
             page_num_node[i]++;
         }
-        spin_unlock(&d->page_alloc_lock);
+        nrspin_unlock(&d->page_alloc_lock);
 
         for_each_online_node ( i )
             printk("    Node %u: %u\n", i, page_num_node[i]);
diff --git a/xen/common/page_alloc.c b/xen/common/page_alloc.c
index 8c6a3d9274..a25c00a7d4 100644
--- a/xen/common/page_alloc.c
+++ b/xen/common/page_alloc.c
@@ -515,7 +515,7 @@ int domain_set_outstanding_pages(struct domain *d, unsigned long pages)
      * must always take the global heap_lock rather than only in the much
      * rarer case that d->outstanding_pages is non-zero
      */
-    spin_lock(&d->page_alloc_lock);
+    nrspin_lock(&d->page_alloc_lock);
     spin_lock(&heap_lock);
 
     /* pages==0 means "unset" the claim. */
@@ -561,7 +561,7 @@ int domain_set_outstanding_pages(struct domain *d, unsigned long pages)
 
 out:
     spin_unlock(&heap_lock);
-    spin_unlock(&d->page_alloc_lock);
+    nrspin_unlock(&d->page_alloc_lock);
     return ret;
 }
 
@@ -2343,7 +2343,7 @@ int assign_pages(
     int rc = 0;
     unsigned int i;
 
-    spin_lock(&d->page_alloc_lock);
+    nrspin_lock(&d->page_alloc_lock);
 
     if ( unlikely(d->is_dying) )
     {
@@ -2425,7 +2425,7 @@ int assign_pages(
     }
 
  out:
-    spin_unlock(&d->page_alloc_lock);
+    nrspin_unlock(&d->page_alloc_lock);
     return rc;
 }
 
@@ -2906,9 +2906,9 @@ mfn_t acquire_reserved_page(struct domain *d, unsigned int memflags)
     ASSERT_ALLOC_CONTEXT();
 
     /* Acquire a page from reserved page list(resv_page_list). */
-    spin_lock(&d->page_alloc_lock);
+    nrspin_lock(&d->page_alloc_lock);
     page = page_list_remove_head(&d->resv_page_list);
-    spin_unlock(&d->page_alloc_lock);
+    nrspin_unlock(&d->page_alloc_lock);
     if ( unlikely(!page) )
         return INVALID_MFN;
 
@@ -2927,9 +2927,9 @@ mfn_t acquire_reserved_page(struct domain *d, unsigned int memflags)
      */
     unprepare_staticmem_pages(page, 1, false);
  fail:
-    spin_lock(&d->page_alloc_lock);
+    nrspin_lock(&d->page_alloc_lock);
     page_list_add_tail(page, &d->resv_page_list);
-    spin_unlock(&d->page_alloc_lock);
+    nrspin_unlock(&d->page_alloc_lock);
     return INVALID_MFN;
 }
 #endif
diff --git a/xen/drivers/char/console.c b/xen/drivers/char/console.c
index 360c2afbf3..d5d8b6cd77 100644
--- a/xen/drivers/char/console.c
+++ b/xen/drivers/char/console.c
@@ -369,9 +369,9 @@ long read_console_ring(struct xen_sysctl_readconsole *op)
 
     if ( op->clear )
     {
-        spin_lock_irq(&console_lock);
+        nrspin_lock_irq(&console_lock);
         conringc = p - c > conring_size ? p - conring_size : c;
-        spin_unlock_irq(&console_lock);
+        nrspin_unlock_irq(&console_lock);
     }
 
     op->count = sofar;
@@ -630,7 +630,7 @@ static long guest_console_write(XEN_GUEST_HANDLE_PARAM(char) buffer,
         if ( is_hardware_domain(cd) )
         {
             /* Use direct console output as it could be interactive */
-            spin_lock_irq(&console_lock);
+            nrspin_lock_irq(&console_lock);
 
             console_serial_puts(kbuf, kcount);
             video_puts(kbuf, kcount);
@@ -651,7 +651,7 @@ static long guest_console_write(XEN_GUEST_HANDLE_PARAM(char) buffer,
                 tasklet_schedule(&notify_dom0_con_ring_tasklet);
             }
 
-            spin_unlock_irq(&console_lock);
+            nrspin_unlock_irq(&console_lock);
         }
         else
         {
@@ -1018,9 +1018,9 @@ void __init console_init_preirq(void)
     pv_console_set_rx_handler(serial_rx);
 
     /* HELLO WORLD --- start-of-day banner text. */
-    spin_lock(&console_lock);
+    nrspin_lock(&console_lock);
     __putstr(xen_banner());
-    spin_unlock(&console_lock);
+    nrspin_unlock(&console_lock);
     printk("Xen version %d.%d%s (%s@%s) (%s) %s %s\n",
            xen_major_version(), xen_minor_version(), xen_extra_version(),
            xen_compile_by(), xen_compile_domain(), xen_compiler(),
@@ -1057,13 +1057,13 @@ void __init console_init_ring(void)
     }
     opt_conring_size = PAGE_SIZE << order;
 
-    spin_lock_irqsave(&console_lock, flags);
+    nrspin_lock_irqsave(&console_lock, flags);
     for ( i = conringc ; i != conringp; i++ )
         ring[i & (opt_conring_size - 1)] = conring[i & (conring_size - 1)];
     conring = ring;
     smp_wmb(); /* Allow users of console_force_unlock() to see larger buffer. */
     conring_size = opt_conring_size;
-    spin_unlock_irqrestore(&console_lock, flags);
+    nrspin_unlock_irqrestore(&console_lock, flags);
 
     printk("Allocated console ring of %u KiB.\n", opt_conring_size >> 10);
 }
diff --git a/xen/include/xen/spinlock.h b/xen/include/xen/spinlock.h
index 5ada9dce3d..12764bcddf 100644
--- a/xen/include/xen/spinlock.h
+++ b/xen/include/xen/spinlock.h
@@ -101,6 +101,8 @@ struct lock_profile_qhead {
 };
 
 #define _LOCK_PROFILE(lockname) { .name = #lockname, .lock = &lockname, }
+#define _RLOCK_PROFILE(lockname) { .name = #lockname, .rlock = &lockname,     \
+    .is_rlock = 1, }
 #define _LOCK_PROFILE_PTR(name)                                               \
     static struct lock_profile * const __lock_profile_##name                  \
     __used_section(".lockprofile.data") =                                     \
@@ -117,10 +119,10 @@ struct lock_profile_qhead {
     _LOCK_PROFILE_PTR(l)
 #define DEFINE_RSPINLOCK(l)                                                   \
     rspinlock_t l = _SPIN_LOCK_UNLOCKED(NULL);                                \
-    static struct lock_profile __lock_profile_data_##l = _LOCK_PROFILE(l);    \
+    static struct lock_profile __lock_profile_data_##l = _RLOCK_PROFILE(l);   \
     _LOCK_PROFILE_PTR(l)
 
-#define __spin_lock_init_prof(s, l, locktype)                                 \
+#define __spin_lock_init_prof(s, l, lockptr, locktype, isr)                   \
     do {                                                                      \
         struct lock_profile *prof;                                            \
         prof = xzalloc(struct lock_profile);                                  \
@@ -133,13 +135,16 @@ struct lock_profile_qhead {
             break;                                                            \
         }                                                                     \
         prof->name = #l;                                                      \
-        prof->lock = &(s)->l;                                                 \
+        prof->lockptr = &(s)->l;                                              \
+        prof->is_rlock = isr;                                                 \
         prof->next = (s)->profile_head.elem_q;                                \
         (s)->profile_head.elem_q = prof;                                      \
     } while( 0 )
 
-#define spin_lock_init_prof(s, l) __spin_lock_init_prof(s, l, spinlock_t)
-#define rspin_lock_init_prof(s, l) __spin_lock_init_prof(s, l, rspinlock_t)
+#define spin_lock_init_prof(s, l)                                             \
+    __spin_lock_init_prof(s, l, lock, spinlock_t, 0)
+#define rspin_lock_init_prof(s, l)                                            \
+    __spin_lock_init_prof(s, l, rlock, rspinlock_t, 1)
 
 void _lock_profile_register_struct(
     int32_t type, struct lock_profile_qhead *qhead, int32_t idx);
@@ -174,6 +179,7 @@ struct lock_profile_qhead { };
 
 #endif
 
+
 typedef union {
     uint32_t head_tail;
     struct {
@@ -261,4 +267,12 @@ void rspin_unlock_irqrestore(rspinlock_t *lock, unsigned long flags);
 /* Ensure a lock is quiescent between two critical operations. */
 #define spin_barrier(l)               _spin_barrier(l)
 
+#define nrspin_trylock(l)    spin_trylock(l)
+#define nrspin_lock(l)       spin_lock(l)
+#define nrspin_unlock(l)     spin_unlock(l)
+#define nrspin_lock_irq(l)   spin_lock_irq(l)
+#define nrspin_unlock_irq(l) spin_unlock_irq(l)
+#define nrspin_lock_irqsave(l, f)      spin_lock_irqsave(l, f)
+#define nrspin_unlock_irqrestore(l, f) spin_unlock_irqrestore(l, f)
+
 #endif /* __SPINLOCK_H__ */
-- 
2.35.3



From xen-devel-bounces@lists.xenproject.org Fri Oct 13 10:36:28 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 10:36:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616417.958433 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrFWu-00047k-39; Fri, 13 Oct 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 616417.958433; Fri, 13 Oct 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 1qrFWt-00047c-Vg; Fri, 13 Oct 2023 10:36:27 +0000
Received: by outflank-mailman (input) for mailman id 616417;
 Fri, 13 Oct 2023 10: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=U36v=F3=suse.com=jgross@srs-se1.protection.inumbo.net>)
 id 1qrFWt-0003io-6k
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 10:36: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 5ca8f35c-69b4-11ee-98d4-6d05b1d4d9a1;
 Fri, 13 Oct 2023 12:36: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 554FC1FD96;
 Fri, 13 Oct 2023 10:36:26 +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 052B9138EF;
 Fri, 13 Oct 2023 10:36:25 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap2.suse-dmz.suse.de with ESMTPSA id c7tnO6kdKWVJNgAAMHmgww
 (envelope-from <jgross@suse.com>); Fri, 13 Oct 2023 10:36: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: 5ca8f35c-69b4-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1697193386; 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=ByULwEKRyPD65+54+75OUzmCGy7sIlJ3VlUMpx/mij0=;
	b=G0FxMwGNhS5ZVgVtmC9lLoTXR1MR1o1JgjalQ1z/BKxkHkw9gj6nDSgGMOVzTUk/cPfjeh
	m+i8FBb9Ufcwseg1YVlBgEt3BlB66YMIu4y84AnXEORUT/OofdGe02xUeASsjQyxVt22WT
	cjkOGUpsWg5VTiXdtLs22nSBv15CF68=
From: Juergen Gross <jgross@suse.com>
To: xen-devel@lists.xenproject.org
Cc: javi.merino@cloud.com,
	Juergen Gross <jgross@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 09/13] xen/spinlock: add another function level
Date: Fri, 13 Oct 2023 11:42:20 +0200
Message-Id: <20231013094224.7060-10-jgross@suse.com>
X-Mailer: git-send-email 2.35.3
In-Reply-To: <20231013094224.7060-1-jgross@suse.com>
References: <20231013094224.7060-1-jgross@suse.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Authentication-Results: smtp-out2.suse.de;
	none
X-Spam-Level: 
X-Spam-Score: -6.10
X-Spamd-Result: default: False [-6.10 / 50.00];
	 ARC_NA(0.00)[];
	 RCVD_VIA_SMTP_AUTH(0.00)[];
	 FROM_HAS_DN(0.00)[];
	 TO_DN_SOME(0.00)[];
	 TO_MATCH_ENVRCPT_ALL(0.00)[];
	 R_MISSING_CHARSET(2.50)[];
	 MIME_GOOD(-0.10)[text/plain];
	 REPLY(-4.00)[];
	 BROKEN_CONTENT_TYPE(1.50)[];
	 NEURAL_HAM_LONG(-3.00)[-1.000];
	 DKIM_SIGNED(0.00)[suse.com:s=susede1];
	 NEURAL_HAM_SHORT(-1.00)[-1.000];
	 RCPT_COUNT_SEVEN(0.00)[9];
	 MID_CONTAINS_FROM(1.00)[];
	 FROM_EQ_ENVFROM(0.00)[];
	 MIME_TRACE(0.00)[0:+];
	 RCVD_COUNT_TWO(0.00)[2];
	 RCVD_TLS_ALL(0.00)[];
	 BAYES_HAM(-3.00)[100.00%]
X-Spam-Flag: NO

Add another function level in spinlock.c hiding the spinlock_t layout
from the low level locking code.

This is done in preparation of introducing rspinlock_t for recursive
locks without having to duplicate all of the locking code.

Signed-off-by: Juergen Gross <jgross@suse.com>
---
V2:
- new patch
---
 xen/common/spinlock.c      | 104 +++++++++++++++++++++++--------------
 xen/include/xen/spinlock.h |   1 +
 2 files changed, 65 insertions(+), 40 deletions(-)

diff --git a/xen/common/spinlock.c b/xen/common/spinlock.c
index 7b8e842eba..c17ea42fe6 100644
--- a/xen/common/spinlock.c
+++ b/xen/common/spinlock.c
@@ -261,29 +261,31 @@ void spin_debug_disable(void)
 
 #ifdef CONFIG_DEBUG_LOCK_PROFILE
 
+#define LOCK_PROFILE_PAR lock->profile
 #define LOCK_PROFILE_REL                                                     \
-    if ( lock->profile )                                                     \
+    if ( profile )                                                           \
     {                                                                        \
-        lock->profile->time_hold += NOW() - lock->profile->time_locked;      \
-        lock->profile->lock_cnt++;                                           \
+        profile->time_hold += NOW() - profile->time_locked;                  \
+        profile->lock_cnt++;                                                 \
     }
 #define LOCK_PROFILE_VAR(val)    s_time_t block = (val)
 #define LOCK_PROFILE_BLOCK  block = block ? : NOW()
 #define LOCK_PROFILE_BLKACC(tst, val)                                        \
     if ( tst )                                                               \
     {                                                                        \
-        lock->profile->time_block += lock->profile->time_locked - (val);     \
-        lock->profile->block_cnt++;                                          \
+        profile->time_block += profile->time_locked - (val);                 \
+        profile->block_cnt++;                                                \
     }
 #define LOCK_PROFILE_GOT(val)                                                \
-    if ( lock->profile )                                                     \
+    if ( profile )                                                           \
     {                                                                        \
-        lock->profile->time_locked = NOW();                                  \
+        profile->time_locked = NOW();                                        \
         LOCK_PROFILE_BLKACC(val, val);                                       \
     }
 
 #else
 
+#define LOCK_PROFILE_PAR NULL
 #define LOCK_PROFILE_REL
 #define LOCK_PROFILE_VAR(val)
 #define LOCK_PROFILE_BLOCK
@@ -307,17 +309,18 @@ static always_inline uint16_t observe_head(spinlock_tickets_t *t)
     return read_atomic(&t->head);
 }
 
-static void always_inline spin_lock_common(spinlock_t *lock,
+static void always_inline spin_lock_common(spinlock_tickets_t *t,
+                                           union lock_debug *debug,
+                                           struct lock_profile *profile,
                                            void (*cb)(void *), void *data)
 {
     spinlock_tickets_t tickets = SPINLOCK_TICKET_INC;
     LOCK_PROFILE_VAR(0);
 
-    check_lock(&lock->debug, false);
+    check_lock(debug, false);
     preempt_disable();
-    tickets.head_tail = arch_fetch_and_add(&lock->tickets.head_tail,
-                                           tickets.head_tail);
-    while ( tickets.tail != observe_head(&lock->tickets) )
+    tickets.head_tail = arch_fetch_and_add(&t->head_tail, tickets.head_tail);
+    while ( tickets.tail != observe_head(t) )
     {
         LOCK_PROFILE_BLOCK;
         if ( cb )
@@ -325,18 +328,19 @@ static void always_inline spin_lock_common(spinlock_t *lock,
         arch_lock_relax();
     }
     arch_lock_acquire_barrier();
-    got_lock(&lock->debug);
+    got_lock(debug);
     LOCK_PROFILE_GOT(block);
 }
 
 void _spin_lock(spinlock_t *lock)
 {
-    spin_lock_common(lock, NULL, NULL);
+    spin_lock_common(&lock->tickets, &lock->debug, LOCK_PROFILE_PAR, NULL,
+                     NULL);
 }
 
 void _spin_lock_cb(spinlock_t *lock, void (*cb)(void *), void *data)
 {
-    spin_lock_common(lock, cb, data);
+    spin_lock_common(&lock->tickets, &lock->debug, LOCK_PROFILE_PAR, cb, data);
 }
 
 void _spin_lock_irq(spinlock_t *lock)
@@ -355,16 +359,23 @@ unsigned long _spin_lock_irqsave(spinlock_t *lock)
     return flags;
 }
 
-void _spin_unlock(spinlock_t *lock)
+static void always_inline spin_unlock_common(spinlock_tickets_t *t,
+                                             union lock_debug *debug,
+                                             struct lock_profile *profile)
 {
     LOCK_PROFILE_REL;
-    rel_lock(&lock->debug);
+    rel_lock(debug);
     arch_lock_release_barrier();
-    add_sized(&lock->tickets.head, 1);
+    add_sized(&t->head, 1);
     arch_lock_signal();
     preempt_enable();
 }
 
+void _spin_unlock(spinlock_t *lock)
+{
+    spin_unlock_common(&lock->tickets, &lock->debug, LOCK_PROFILE_PAR);
+}
+
 void _spin_unlock_irq(spinlock_t *lock)
 {
     _spin_unlock(lock);
@@ -377,25 +388,25 @@ void _spin_unlock_irqrestore(spinlock_t *lock, unsigned long flags)
     local_irq_restore(flags);
 }
 
+static int always_inline spin_is_locked_common(const spinlock_tickets_t *t)
+{
+    return t->head != t->tail;
+}
+
 int _spin_is_locked(const spinlock_t *lock)
 {
-    /*
-     * Recursive locks may be locked by another CPU, yet we return
-     * "false" here, making this function suitable only for use in
-     * ASSERT()s and alike.
-     */
-    return lock->recurse_cpu == SPINLOCK_NO_CPU
-           ? lock->tickets.head != lock->tickets.tail
-           : lock->recurse_cpu == smp_processor_id();
+    return spin_is_locked_common(&lock->tickets);
 }
 
-int _spin_trylock(spinlock_t *lock)
+static int always_inline spin_trylock_common(spinlock_tickets_t *t,
+                                             union lock_debug *debug,
+                                             struct lock_profile *profile)
 {
     spinlock_tickets_t old, new;
 
     preempt_disable();
-    check_lock(&lock->debug, true);
-    old = observe_lock(&lock->tickets);
+    check_lock(debug, true);
+    old = observe_lock(t);
     if ( old.head != old.tail )
     {
         preempt_enable();
@@ -403,8 +414,7 @@ int _spin_trylock(spinlock_t *lock)
     }
     new = old;
     new.tail++;
-    if ( cmpxchg(&lock->tickets.head_tail,
-                 old.head_tail, new.head_tail) != old.head_tail )
+    if ( cmpxchg(&t->head_tail, old.head_tail, new.head_tail) != old.head_tail )
     {
         preempt_enable();
         return 0;
@@ -413,29 +423,41 @@ int _spin_trylock(spinlock_t *lock)
      * cmpxchg() is a full barrier so no need for an
      * arch_lock_acquire_barrier().
      */
-    got_lock(&lock->debug);
+    got_lock(debug);
     LOCK_PROFILE_GOT(0);
 
     return 1;
 }
 
-void _spin_barrier(spinlock_t *lock)
+int _spin_trylock(spinlock_t *lock)
+{
+    return spin_trylock_common(&lock->tickets, &lock->debug, LOCK_PROFILE_PAR);
+}
+
+static void always_inline spin_barrier_common(spinlock_tickets_t *t,
+                                              union lock_debug *debug,
+                                              struct lock_profile *profile)
 {
     spinlock_tickets_t sample;
     LOCK_PROFILE_VAR(NOW());
 
-    check_barrier(&lock->debug);
+    check_barrier(debug);
     smp_mb();
-    sample = observe_lock(&lock->tickets);
+    sample = observe_lock(t);
     if ( sample.head != sample.tail )
     {
-        while ( observe_head(&lock->tickets) == sample.head )
+        while ( observe_head(t) == sample.head )
             arch_lock_relax();
-        LOCK_PROFILE_BLKACC(lock->profile, block);
+        LOCK_PROFILE_BLKACC(profile, block);
     }
     smp_mb();
 }
 
+void _spin_barrier(spinlock_t *lock)
+{
+    spin_barrier_common(&lock->tickets, &lock->debug, LOCK_PROFILE_PAR);
+}
+
 int rspin_trylock(rspinlock_t *lock)
 {
     unsigned int cpu = smp_processor_id();
@@ -448,7 +470,8 @@ int rspin_trylock(rspinlock_t *lock)
 
     if ( likely(lock->recurse_cpu != cpu) )
     {
-        if ( !spin_trylock(lock) )
+        if ( !spin_trylock_common(&lock->tickets, &lock->debug,
+                                  LOCK_PROFILE_PAR) )
             return 0;
         lock->recurse_cpu = cpu;
     }
@@ -466,7 +489,8 @@ void rspin_lock(rspinlock_t *lock)
 
     if ( likely(lock->recurse_cpu != cpu) )
     {
-        _spin_lock(lock);
+        spin_lock_common(&lock->tickets, &lock->debug, LOCK_PROFILE_PAR, NULL,
+                         NULL);
         lock->recurse_cpu = cpu;
     }
 
@@ -490,7 +514,7 @@ void rspin_unlock(rspinlock_t *lock)
     if ( likely(--lock->recurse_cnt == 0) )
     {
         lock->recurse_cpu = SPINLOCK_NO_CPU;
-        spin_unlock(lock);
+        spin_unlock_common(&lock->tickets, &lock->debug, LOCK_PROFILE_PAR);
     }
 }
 
diff --git a/xen/include/xen/spinlock.h b/xen/include/xen/spinlock.h
index 12764bcddf..ccb1cafa5f 100644
--- a/xen/include/xen/spinlock.h
+++ b/xen/include/xen/spinlock.h
@@ -163,6 +163,7 @@ extern void cf_check spinlock_profile_reset(unsigned char key);
 #else
 
 struct lock_profile_qhead { };
+struct lock_profile { };
 
 #define SPIN_LOCK_UNLOCKED {                                                  \
     .recurse_cpu = SPINLOCK_NO_CPU,                                           \
-- 
2.35.3



From xen-devel-bounces@lists.xenproject.org Fri Oct 13 10:36:34 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 10:36:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616421.958443 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrFX0-0004eF-Ay; Fri, 13 Oct 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 616421.958443; Fri, 13 Oct 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 1qrFX0-0004e1-7I; Fri, 13 Oct 2023 10:36:34 +0000
Received: by outflank-mailman (input) for mailman id 616421;
 Fri, 13 Oct 2023 10:36: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=U36v=F3=suse.com=jgross@srs-se1.protection.inumbo.net>)
 id 1qrFWy-0003io-S6
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 10:36:32 +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 601415d5-69b4-11ee-98d4-6d05b1d4d9a1;
 Fri, 13 Oct 2023 12:36: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-out1.suse.de (Postfix) with ESMTPS id 08FC7219DA;
 Fri, 13 Oct 2023 10:36:32 +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 AC679138EF;
 Fri, 13 Oct 2023 10:36:31 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap2.suse-dmz.suse.de with ESMTPSA id EFzhKK8dKWVZNgAAMHmgww
 (envelope-from <jgross@suse.com>); Fri, 13 Oct 2023 10: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: 601415d5-69b4-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1697193392; 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=E+Tp4HDh476bbMu8NwYCIxmHaU6gb+ZGMd/2lljj3o8=;
	b=ooPW7nlih6c+VdtwGzdl9FXFMXMSHKxIiLgNNPJD9v/aBIgRT4dvSsW6X3ZykdfLEaiRzW
	wsJc8o8x2LcXofU3xOWTp84hZDcXa1Um00Uz5jeGuLwfcY8+YsvgBdkE3ROfjwIaO7wF8D
	u8VcSJPFZvjxHPvQxDATivvUOsR/QBs=
From: Juergen Gross <jgross@suse.com>
To: xen-devel@lists.xenproject.org
Cc: javi.merino@cloud.com,
	Juergen Gross <jgross@suse.com>,
	Jan Beulich <jbeulich@suse.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>,
	Wei Liu <wl@xen.org>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Paul Durrant <paul@xen.org>
Subject: [PATCH v2 10/13] xen/spinlock: add missing rspin_is_locked() and rspin_barrier()
Date: Fri, 13 Oct 2023 11:42:21 +0200
Message-Id: <20231013094224.7060-11-jgross@suse.com>
X-Mailer: git-send-email 2.35.3
In-Reply-To: <20231013094224.7060-1-jgross@suse.com>
References: <20231013094224.7060-1-jgross@suse.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Authentication-Results: smtp-out1.suse.de;
	none
X-Spam-Level: 
X-Spam-Score: -6.10
X-Spamd-Result: default: False [-6.10 / 50.00];
	 ARC_NA(0.00)[];
	 RCVD_VIA_SMTP_AUTH(0.00)[];
	 FROM_HAS_DN(0.00)[];
	 TO_DN_SOME(0.00)[];
	 TO_MATCH_ENVRCPT_ALL(0.00)[];
	 R_MISSING_CHARSET(2.50)[];
	 MIME_GOOD(-0.10)[text/plain];
	 REPLY(-4.00)[];
	 BROKEN_CONTENT_TYPE(1.50)[];
	 NEURAL_HAM_LONG(-3.00)[-1.000];
	 DKIM_SIGNED(0.00)[suse.com:s=susede1];
	 NEURAL_HAM_SHORT(-1.00)[-1.000];
	 RCPT_COUNT_SEVEN(0.00)[11];
	 MID_CONTAINS_FROM(1.00)[];
	 FROM_EQ_ENVFROM(0.00)[];
	 MIME_TRACE(0.00)[0:+];
	 RCVD_COUNT_TWO(0.00)[2];
	 RCVD_TLS_ALL(0.00)[];
	 BAYES_HAM(-3.00)[100.00%]
X-Spam-Flag: NO

Add rspin_is_locked() and rspin_barrier() in order to prepare differing
spinlock_t and rspinlock_t types.

Signed-off-by: Juergen Gross <jgross@suse.com>
---
V2:
- partially carved out from V1 patch, partially new
---
 xen/arch/x86/mm/p2m-pod.c     |  2 +-
 xen/common/domain.c           |  2 +-
 xen/common/page_alloc.c       |  2 +-
 xen/common/spinlock.c         | 17 +++++++++++++++++
 xen/drivers/char/console.c    |  4 ++--
 xen/drivers/passthrough/pci.c |  2 +-
 xen/include/xen/spinlock.h    |  2 ++
 7 files changed, 25 insertions(+), 6 deletions(-)

diff --git a/xen/arch/x86/mm/p2m-pod.c b/xen/arch/x86/mm/p2m-pod.c
index 5361c2c5b1..ad49c64ead 100644
--- a/xen/arch/x86/mm/p2m-pod.c
+++ b/xen/arch/x86/mm/p2m-pod.c
@@ -385,7 +385,7 @@ int p2m_pod_empty_cache(struct domain *d)
 
     /* After this barrier no new PoD activities can happen. */
     BUG_ON(!d->is_dying);
-    spin_barrier(&p2m->pod.lock.lock);
+    rspin_barrier(&p2m->pod.lock.lock);
 
     lock_page_alloc(p2m);
 
diff --git a/xen/common/domain.c b/xen/common/domain.c
index 604f70ff5a..17da8e0746 100644
--- a/xen/common/domain.c
+++ b/xen/common/domain.c
@@ -974,7 +974,7 @@ int domain_kill(struct domain *d)
     case DOMDYING_alive:
         domain_pause(d);
         d->is_dying = DOMDYING_dying;
-        spin_barrier(&d->domain_lock);
+        rspin_barrier(&d->domain_lock);
         argo_destroy(d);
         vnuma_destroy(d->vnuma);
         domain_set_outstanding_pages(d, 0);
diff --git a/xen/common/page_alloc.c b/xen/common/page_alloc.c
index a25c00a7d4..14010b6fa5 100644
--- a/xen/common/page_alloc.c
+++ b/xen/common/page_alloc.c
@@ -476,7 +476,7 @@ unsigned long domain_adjust_tot_pages(struct domain *d, long pages)
 {
     long dom_before, dom_after, dom_claimed, sys_before, sys_after;
 
-    ASSERT(spin_is_locked(&d->page_alloc_lock));
+    ASSERT(rspin_is_locked(&d->page_alloc_lock));
     d->tot_pages += pages;
 
     /*
diff --git a/xen/common/spinlock.c b/xen/common/spinlock.c
index c17ea42fe6..9159a5a7c3 100644
--- a/xen/common/spinlock.c
+++ b/xen/common/spinlock.c
@@ -458,6 +458,23 @@ void _spin_barrier(spinlock_t *lock)
     spin_barrier_common(&lock->tickets, &lock->debug, LOCK_PROFILE_PAR);
 }
 
+int rspin_is_locked(const rspinlock_t *lock)
+{
+    /*
+     * Recursive locks may be locked by another CPU, yet we return
+     * "false" here, making this function suitable only for use in
+     * ASSERT()s and alike.
+     */
+    return lock->recurse_cpu == SPINLOCK_NO_CPU
+           ? spin_is_locked_common(&lock->tickets)
+           : lock->recurse_cpu == smp_processor_id();
+}
+
+void rspin_barrier(rspinlock_t *lock)
+{
+    spin_barrier_common(&lock->tickets, &lock->debug, LOCK_PROFILE_PAR);
+}
+
 int rspin_trylock(rspinlock_t *lock)
 {
     unsigned int cpu = smp_processor_id();
diff --git a/xen/drivers/char/console.c b/xen/drivers/char/console.c
index d5d8b6cd77..63cad87125 100644
--- a/xen/drivers/char/console.c
+++ b/xen/drivers/char/console.c
@@ -328,7 +328,7 @@ static void cf_check do_dec_thresh(unsigned char key, struct cpu_user_regs *regs
 
 static void conring_puts(const char *str, size_t len)
 {
-    ASSERT(spin_is_locked(&console_lock));
+    ASSERT(rspin_is_locked(&console_lock));
 
     while ( len-- )
         conring[CONRING_IDX_MASK(conringp++)] = *str++;
@@ -757,7 +757,7 @@ static void __putstr(const char *str)
 {
     size_t len = strlen(str);
 
-    ASSERT(spin_is_locked(&console_lock));
+    ASSERT(rspin_is_locked(&console_lock));
 
     console_serial_puts(str, len);
     video_puts(str, len);
diff --git a/xen/drivers/passthrough/pci.c b/xen/drivers/passthrough/pci.c
index 22342f07ac..f55c1a5cf4 100644
--- a/xen/drivers/passthrough/pci.c
+++ b/xen/drivers/passthrough/pci.c
@@ -64,7 +64,7 @@ void pcidevs_unlock(void)
 
 bool pcidevs_locked(void)
 {
-    return !!spin_is_locked(&_pcidevs_lock);
+    return rspin_is_locked(&_pcidevs_lock);
 }
 
 static struct radix_tree_root pci_segments;
diff --git a/xen/include/xen/spinlock.h b/xen/include/xen/spinlock.h
index ccb1cafa5f..fb6ca1949a 100644
--- a/xen/include/xen/spinlock.h
+++ b/xen/include/xen/spinlock.h
@@ -239,6 +239,8 @@ void rspin_lock(rspinlock_t *lock);
 unsigned long __rspin_lock_irqsave(rspinlock_t *lock);
 void rspin_unlock(rspinlock_t *lock);
 void rspin_unlock_irqrestore(rspinlock_t *lock, unsigned long flags);
+int rspin_is_locked(const rspinlock_t *lock);
+void rspin_barrier(rspinlock_t *lock);
 
 #define spin_lock(l)                  _spin_lock(l)
 #define spin_lock_cb(l, c, d)         _spin_lock_cb(l, c, d)
-- 
2.35.3



From xen-devel-bounces@lists.xenproject.org Fri Oct 13 10:36:42 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 10:36:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616427.958453 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrFX8-0005KF-KO; Fri, 13 Oct 2023 10:36:42 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616427.958453; Fri, 13 Oct 2023 10: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 1qrFX8-0005K0-Gy; Fri, 13 Oct 2023 10:36:42 +0000
Received: by outflank-mailman (input) for mailman id 616427;
 Fri, 13 Oct 2023 10: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=U36v=F3=suse.com=jgross@srs-se1.protection.inumbo.net>)
 id 1qrFX6-0002pr-SB
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 10:36: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 637ba6ca-69b4-11ee-9b0e-b553b5be7939;
 Fri, 13 Oct 2023 12:36: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 AC59B219DA;
 Fri, 13 Oct 2023 10:36: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 688C2138EF;
 Fri, 13 Oct 2023 10:36:37 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap2.suse-dmz.suse.de with ESMTPSA id ao5NGLUdKWVmNgAAMHmgww
 (envelope-from <jgross@suse.com>); Fri, 13 Oct 2023 10:36: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: 637ba6ca-69b4-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1697193397; 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=ZEI5eqx0qsywHKFAfD59Bl72B8RN9roJeFD/76AWmiE=;
	b=WCAftx5mHHCVfwSqLi7rL8VsQhhLs/EaYO+1W19UhWxSsjmmYaBU5Dh8MCqwNht4/kh7Zb
	d97YobKl8on2x7FwdppZ8vc+onRscXa403QgM9IWtEZlA0R+tw8UXFIrIqG55FwAivg9M9
	SAz8YB7amvc0eVXZPp/hRZ7XAYJOSsY=
From: Juergen Gross <jgross@suse.com>
To: xen-devel@lists.xenproject.org
Cc: javi.merino@cloud.com,
	Juergen Gross <jgross@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 11/13] xen/spinlock: split recursive spinlocks from normal ones
Date: Fri, 13 Oct 2023 11:42:22 +0200
Message-Id: <20231013094224.7060-12-jgross@suse.com>
X-Mailer: git-send-email 2.35.3
In-Reply-To: <20231013094224.7060-1-jgross@suse.com>
References: <20231013094224.7060-1-jgross@suse.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Authentication-Results: smtp-out1.suse.de;
	none
X-Spam-Level: 
X-Spam-Score: -6.10
X-Spamd-Result: default: False [-6.10 / 50.00];
	 ARC_NA(0.00)[];
	 RCVD_VIA_SMTP_AUTH(0.00)[];
	 FROM_HAS_DN(0.00)[];
	 TO_DN_SOME(0.00)[];
	 TO_MATCH_ENVRCPT_ALL(0.00)[];
	 R_MISSING_CHARSET(2.50)[];
	 MIME_GOOD(-0.10)[text/plain];
	 REPLY(-4.00)[];
	 BROKEN_CONTENT_TYPE(1.50)[];
	 NEURAL_HAM_LONG(-3.00)[-1.000];
	 DKIM_SIGNED(0.00)[suse.com:s=susede1];
	 NEURAL_HAM_SHORT(-1.00)[-1.000];
	 RCPT_COUNT_SEVEN(0.00)[9];
	 MID_CONTAINS_FROM(1.00)[];
	 FROM_EQ_ENVFROM(0.00)[];
	 MIME_TRACE(0.00)[0:+];
	 RCVD_COUNT_TWO(0.00)[2];
	 RCVD_TLS_ALL(0.00)[];
	 BAYES_HAM(-3.00)[100.00%]
X-Spam-Flag: NO

Recursive and normal spinlocks are sharing the same data structure for
representation of the lock. This has two major disadvantages:

- it is not clear from the definition of a lock, whether it is intended
  to be used recursive or not, while a mixture of both usage variants
  needs to be

- in production builds (builds without CONFIG_DEBUG_LOCKS) the needed
  data size of an ordinary spinlock is 8 bytes instead of 4, due to the
  additional recursion data needed (associated with that the rwlock
  data is using 12 instead of only 8 bytes)

Fix that by introducing a struct spinlock_recursive for recursive
spinlocks only, and switch recursive spinlock functions to require
pointers to this new struct.

This allows to check the correct usage at build time.

Signed-off-by: Juergen Gross <jgross@suse.com>
---
V2:
- use shorter names (Jan Beulich)
- don't embed spinlock_t in rspinlock_t (Jan Beulich)
---
 xen/common/spinlock.c      | 49 ++++++++++++++++++++++++++++++++
 xen/include/xen/spinlock.h | 58 +++++++++++++++++++++++++-------------
 2 files changed, 88 insertions(+), 19 deletions(-)

diff --git a/xen/common/spinlock.c b/xen/common/spinlock.c
index 9159a5a7c3..cff3f126e6 100644
--- a/xen/common/spinlock.c
+++ b/xen/common/spinlock.c
@@ -541,6 +541,55 @@ void rspin_unlock_irqrestore(rspinlock_t *lock, unsigned long flags)
     local_irq_restore(flags);
 }
 
+int nrspin_trylock(rspinlock_t *lock)
+{
+    check_lock(&lock->debug, true);
+
+    if ( unlikely(lock->recurse_cpu != SPINLOCK_NO_CPU) )
+        return 0;
+
+    return spin_trylock_common(&lock->tickets, &lock->debug, LOCK_PROFILE_PAR);
+}
+
+void nrspin_lock(rspinlock_t *lock)
+{
+    spin_lock_common(&lock->tickets, &lock->debug, LOCK_PROFILE_PAR, NULL,
+                     NULL);
+}
+
+void nrspin_unlock(rspinlock_t *lock)
+{
+    spin_unlock_common(&lock->tickets, &lock->debug, LOCK_PROFILE_PAR);
+}
+
+void nrspin_lock_irq(rspinlock_t *lock)
+{
+    ASSERT(local_irq_is_enabled());
+    local_irq_disable();
+    nrspin_lock(lock);
+}
+
+void nrspin_unlock_irq(rspinlock_t *lock)
+{
+    nrspin_unlock(lock);
+    local_irq_enable();
+}
+
+unsigned long __nrspin_lock_irqsave(rspinlock_t *lock)
+{
+    unsigned long flags;
+
+    local_irq_save(flags);
+    nrspin_lock(lock);
+    return flags;
+}
+
+void nrspin_unlock_irqrestore(rspinlock_t *lock, unsigned long flags)
+{
+    nrspin_unlock(lock);
+    local_irq_restore(flags);
+}
+
 #ifdef CONFIG_DEBUG_LOCK_PROFILE
 
 struct lock_profile_anc {
diff --git a/xen/include/xen/spinlock.h b/xen/include/xen/spinlock.h
index fb6ca1949a..a2b1bb2df6 100644
--- a/xen/include/xen/spinlock.h
+++ b/xen/include/xen/spinlock.h
@@ -76,8 +76,6 @@ union lock_debug { };
 */
 
 struct spinlock;
-/* Temporary hack until a dedicated struct rspinlock is existing. */
-#define rspinlock spinlock
 
 struct lock_profile {
     struct lock_profile *next;       /* forward link */
@@ -108,6 +106,10 @@ struct lock_profile_qhead {
     __used_section(".lockprofile.data") =                                     \
     &__lock_profile_data_##name
 #define _SPIN_LOCK_UNLOCKED(x) {                                              \
+    .debug =_LOCK_DEBUG,                                                      \
+    .profile = x,                                                             \
+}
+#define _RSPIN_LOCK_UNLOCKED(x) {                                             \
     .recurse_cpu = SPINLOCK_NO_CPU,                                           \
     .debug =_LOCK_DEBUG,                                                      \
     .profile = x,                                                             \
@@ -117,8 +119,9 @@ struct lock_profile_qhead {
     spinlock_t l = _SPIN_LOCK_UNLOCKED(NULL);                                 \
     static struct lock_profile __lock_profile_data_##l = _LOCK_PROFILE(l);    \
     _LOCK_PROFILE_PTR(l)
+#define RSPIN_LOCK_UNLOCKED _RSPIN_LOCK_UNLOCKED(NULL)
 #define DEFINE_RSPINLOCK(l)                                                   \
-    rspinlock_t l = _SPIN_LOCK_UNLOCKED(NULL);                                \
+    rspinlock_t l = _RSPIN_LOCK_UNLOCKED(NULL);                               \
     static struct lock_profile __lock_profile_data_##l = _RLOCK_PROFILE(l);   \
     _LOCK_PROFILE_PTR(l)
 
@@ -143,8 +146,11 @@ struct lock_profile_qhead {
 
 #define spin_lock_init_prof(s, l)                                             \
     __spin_lock_init_prof(s, l, lock, spinlock_t, 0)
-#define rspin_lock_init_prof(s, l)                                            \
-    __spin_lock_init_prof(s, l, rlock, rspinlock_t, 1)
+#define rspin_lock_init_prof(s, l) do {                                       \
+        __spin_lock_init_prof(s, l, rlock, rspinlock_t, 1);                   \
+        (s)->l.recurse_cpu = SPINLOCK_NO_CPU;                                 \
+        (s)->l.recurse_cnt = 0;                                               \
+    } while (0)
 
 void _lock_profile_register_struct(
     int32_t type, struct lock_profile_qhead *qhead, int32_t idx);
@@ -166,11 +172,15 @@ struct lock_profile_qhead { };
 struct lock_profile { };
 
 #define SPIN_LOCK_UNLOCKED {                                                  \
+    .debug =_LOCK_DEBUG,                                                      \
+}
+#define RSPIN_LOCK_UNLOCKED {                                                 \
+    .debug =_LOCK_DEBUG,                                                      \
     .recurse_cpu = SPINLOCK_NO_CPU,                                           \
     .debug =_LOCK_DEBUG,                                                      \
 }
 #define DEFINE_SPINLOCK(l) spinlock_t l = SPIN_LOCK_UNLOCKED
-#define DEFINE_RSPINLOCK(l) rspinlock_t l = SPIN_LOCK_UNLOCKED
+#define DEFINE_RSPINLOCK(l) rspinlock_t l = RSPIN_LOCK_UNLOCKED
 
 #define spin_lock_init_prof(s, l) spin_lock_init(&((s)->l))
 #define rspin_lock_init_prof(s, l) rspin_lock_init(&((s)->l))
@@ -180,7 +190,6 @@ struct lock_profile { };
 
 #endif
 
-
 typedef union {
     uint32_t head_tail;
     struct {
@@ -192,6 +201,14 @@ typedef union {
 #define SPINLOCK_TICKET_INC { .head_tail = 0x10000, }
 
 typedef struct spinlock {
+    spinlock_tickets_t tickets;
+    union lock_debug debug;
+#ifdef CONFIG_DEBUG_LOCK_PROFILE
+    struct lock_profile *profile;
+#endif
+} spinlock_t;
+
+typedef struct rspinlock {
     spinlock_tickets_t tickets;
     uint16_t recurse_cpu:SPINLOCK_CPU_BITS;
 #define SPINLOCK_NO_CPU        ((1u << SPINLOCK_CPU_BITS) - 1)
@@ -202,12 +219,10 @@ typedef struct spinlock {
 #ifdef CONFIG_DEBUG_LOCK_PROFILE
     struct lock_profile *profile;
 #endif
-} spinlock_t;
-
-typedef spinlock_t rspinlock_t;
+} rspinlock_t;
 
 #define spin_lock_init(l) (*(l) = (spinlock_t)SPIN_LOCK_UNLOCKED)
-#define rspin_lock_init(l) (*(l) = (rspinlock_t)SPIN_LOCK_UNLOCKED)
+#define rspin_lock_init(l) (*(l) = (rspinlock_t)RSPIN_LOCK_UNLOCKED)
 
 void _spin_lock(spinlock_t *lock);
 void _spin_lock_cb(spinlock_t *lock, void (*cb)(void *), void *data);
@@ -242,6 +257,19 @@ void rspin_unlock_irqrestore(rspinlock_t *lock, unsigned long flags);
 int rspin_is_locked(const rspinlock_t *lock);
 void rspin_barrier(rspinlock_t *lock);
 
+int nrspin_trylock(rspinlock_t *lock);
+void nrspin_lock(rspinlock_t *lock);
+void nrspin_unlock(rspinlock_t *lock);
+void nrspin_lock_irq(rspinlock_t *lock);
+void nrspin_unlock_irq(rspinlock_t *lock);
+#define nrspin_lock_irqsave(l, f)                               \
+    ({                                                          \
+        BUILD_BUG_ON(sizeof(f) != sizeof(unsigned long));       \
+        ((f) = __nrspin_lock_irqsave(l));                       \
+    })
+unsigned long __nrspin_lock_irqsave(rspinlock_t *lock);
+void nrspin_unlock_irqrestore(rspinlock_t *lock, unsigned long flags);
+
 #define spin_lock(l)                  _spin_lock(l)
 #define spin_lock_cb(l, c, d)         _spin_lock_cb(l, c, d)
 #define spin_lock_irq(l)              _spin_lock_irq(l)
@@ -270,12 +298,4 @@ void rspin_barrier(rspinlock_t *lock);
 /* Ensure a lock is quiescent between two critical operations. */
 #define spin_barrier(l)               _spin_barrier(l)
 
-#define nrspin_trylock(l)    spin_trylock(l)
-#define nrspin_lock(l)       spin_lock(l)
-#define nrspin_unlock(l)     spin_unlock(l)
-#define nrspin_lock_irq(l)   spin_lock_irq(l)
-#define nrspin_unlock_irq(l) spin_unlock_irq(l)
-#define nrspin_lock_irqsave(l, f)      spin_lock_irqsave(l, f)
-#define nrspin_unlock_irqrestore(l, f) spin_unlock_irqrestore(l, f)
-
 #endif /* __SPINLOCK_H__ */
-- 
2.35.3



From xen-devel-bounces@lists.xenproject.org Fri Oct 13 10:40:26 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 10:40:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616433.958462 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrFaf-0008KD-9q; Fri, 13 Oct 2023 10:40:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616433.958462; Fri, 13 Oct 2023 10:40: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 1qrFaf-0008K5-6d; Fri, 13 Oct 2023 10:40:21 +0000
Received: by outflank-mailman (input) for mailman id 616433;
 Fri, 13 Oct 2023 10:40: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=RqNf=F3=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qrFae-0008Ib-N6
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 10:40:20 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id e7a8fead-69b4-11ee-98d4-6d05b1d4d9a1;
 Fri, 13 Oct 2023 12:40:19 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id 5A0954EE073A;
 Fri, 13 Oct 2023 12:40: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: e7a8fead-69b4-11ee-98d4-6d05b1d4d9a1
MIME-Version: 1.0
Date: Fri, 13 Oct 2023 12:40:19 +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, Simone
 Ballarin <simone.ballarin@bugseng.com>, Doug Goldstein <cardoe@cardoe.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>, Wei
 Liu <wl@xen.org>
Subject: Re: [XEN PATCH][for-next][for-4.19 v2 1/8] xen/include: add macro
 LOWEST_BIT
In-Reply-To: <alpine.DEB.2.22.394.2310121629350.3431292@ubuntu-linux-20-04-desktop>
References: <cover.1697123806.git.nicola.vetrini@bugseng.com>
 <bb0ba44f8a3944c22a1c7cf19196c7060e8adb4b.1697123806.git.nicola.vetrini@bugseng.com>
 <alpine.DEB.2.22.394.2310121629350.3431292@ubuntu-linux-20-04-desktop>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <14a333d412969e307beac85872f3e94d@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 13/10/2023 01:31, Stefano Stabellini wrote:
> On Thu, 12 Oct 2023, Nicola Vetrini wrote:
>> The purpose of this macro is to encapsulate the well-known expression
>> 'x & -x', that in 2's complement architectures on unsigned integers 
>> will
>> give 2^ffs(x), where ffs(x) is the position of the lowest set bit in 
>> x.
>> 
>> A deviation for ECLAIR is also introduced.
>> 
>> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
>> ---
>> Changes in v2:
>> - rename to LOWEST_BIT
>> ---
>>  automation/eclair_analysis/ECLAIR/deviations.ecl | 6 ++++++
>>  xen/include/xen/macros.h                         | 6 ++++--
>>  2 files changed, 10 insertions(+), 2 deletions(-)
>> 
>> diff --git a/automation/eclair_analysis/ECLAIR/deviations.ecl 
>> b/automation/eclair_analysis/ECLAIR/deviations.ecl
>> index d8170106b449..b8e1155ee49d 100644
>> --- a/automation/eclair_analysis/ECLAIR/deviations.ecl
>> +++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
>> @@ -274,6 +274,12 @@ still non-negative."
>>  -config=MC3R1.R10.1,etypes+={safe, 
>> "stmt(operator(logical)||node(conditional_operator||binary_conditional_operator))", 
>> "dst_type(ebool||boolean)"}
>>  -doc_end
>> 
>> +-doc_begin="The macro LOWEST_BIT encapsulates a well-known pattern to 
>> obtain the value
>> +2^ffs(x) for unsigned integers on two's complement architectures
>> +(all the architectures supported by Xen satisfy this requirement)."
>> +-config=MC3R1.R10.1,reports+={safe, 
>> "any_area(any_loc(any_exp(macro(^LOWEST_BIT$))))"}
>> +-doc_end
> 
> Please also add the same deviation and explanation to
> docs/misra/deviations.rst. Other than that, this looks fine.
> 
> 

Ok.

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


From xen-devel-bounces@lists.xenproject.org Fri Oct 13 10:43:26 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 10:43:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616439.958472 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrFda-00017r-Mi; Fri, 13 Oct 2023 10:43:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616439.958472; Fri, 13 Oct 2023 10:43: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 1qrFda-00017k-Jz; Fri, 13 Oct 2023 10:43:22 +0000
Received: by outflank-mailman (input) for mailman id 616439;
 Fri, 13 Oct 2023 10:43: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=RqNf=F3=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qrFdZ-000153-EU
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 10:43:21 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 5366ba0e-69b5-11ee-98d4-6d05b1d4d9a1;
 Fri, 13 Oct 2023 12:43:20 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id 4C0354EE073A;
 Fri, 13 Oct 2023 12:43: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: 5366ba0e-69b5-11ee-98d4-6d05b1d4d9a1
MIME-Version: 1.0
Date: Fri, 13 Oct 2023 12:43:20 +0200
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: Julien Grall <julien@xen.org>
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, Simone Ballarin <simone.ballarin@bugseng.com>, Doug
 Goldstein <cardoe@cardoe.com>, George Dunlap <george.dunlap@citrix.com>, Wei
 Liu <wl@xen.org>
Subject: Re: [XEN PATCH][for-next][for-4.19 v2 1/8] xen/include: add macro
 LOWEST_BIT
In-Reply-To: <f62ad310-0f9a-4b28-9592-023d6a98c0dd@xen.org>
References: <cover.1697123806.git.nicola.vetrini@bugseng.com>
 <bb0ba44f8a3944c22a1c7cf19196c7060e8adb4b.1697123806.git.nicola.vetrini@bugseng.com>
 <f62ad310-0f9a-4b28-9592-023d6a98c0dd@xen.org>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <022106b550e8303d554e557bf6c23651@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 13/10/2023 10:25, Julien Grall wrote:
> Hi Nicola,
> 
> On 12/10/2023 16:28, Nicola Vetrini wrote:
>> The purpose of this macro is to encapsulate the well-known expression
>> 'x & -x', that in 2's complement architectures on unsigned integers 
>> will
>> give 2^ffs(x), where ffs(x) is the position of the lowest set bit in 
>> x.
> 
> In the commit message it is clear that the macro will return the
> lowest set bit. But...
> 
>> 
>> A deviation for ECLAIR is also introduced.
>> 
>> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
>> ---
>> Changes in v2:
>> - rename to LOWEST_BIT
>> ---
>>   automation/eclair_analysis/ECLAIR/deviations.ecl | 6 ++++++
>>   xen/include/xen/macros.h                         | 6 ++++--
>>   2 files changed, 10 insertions(+), 2 deletions(-)
>> 
>> diff --git a/automation/eclair_analysis/ECLAIR/deviations.ecl 
>> b/automation/eclair_analysis/ECLAIR/deviations.ecl
>> index d8170106b449..b8e1155ee49d 100644
>> --- a/automation/eclair_analysis/ECLAIR/deviations.ecl
>> +++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
>> @@ -274,6 +274,12 @@ still non-negative."
>>   -config=MC3R1.R10.1,etypes+={safe, 
>> "stmt(operator(logical)||node(conditional_operator||binary_conditional_operator))", 
>> "dst_type(ebool||boolean)"}
>>   -doc_end
>> 
>> +-doc_begin="The macro LOWEST_BIT encapsulates a well-known pattern to 
>> obtain the value
>> +2^ffs(x) for unsigned integers on two's complement architectures
>> +(all the architectures supported by Xen satisfy this requirement)."
>> +-config=MC3R1.R10.1,reports+={safe, 
>> "any_area(any_loc(any_exp(macro(^LOWEST_BIT$))))"}
>> +-doc_end
>> +
>>   ### Set 3 ###
>> 
>>   #
>> diff --git a/xen/include/xen/macros.h b/xen/include/xen/macros.h
>> index d0caae7db298..af47179d1056 100644
>> --- a/xen/include/xen/macros.h
>> +++ b/xen/include/xen/macros.h
>> @@ -8,8 +8,10 @@
>>   #define DIV_ROUND(n, d) (((n) + (d) / 2) / (d))
>>   #define DIV_ROUND_UP(n, d) (((n) + (d) - 1) / (d))
>> 
>> -#define MASK_EXTR(v, m) (((v) & (m)) / ((m) & -(m)))
>> -#define MASK_INSR(v, m) (((v) * ((m) & -(m))) & (m))
>> +#define LOWEST_BIT(x) ((x) & -(x))
> 
> ... this is not reflected in the name of the macro. So it is not
> obvious if it will return the lowest bit set or clear.
> 
> Can you at least add a comment on top explaining what it returns?
> Something like:
> 
> /* Return the lowest bit set */
> 
> Cheers,

No problem

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


From xen-devel-bounces@lists.xenproject.org Fri Oct 13 10:45:23 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 10:45:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616448.958483 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrFfW-0002eL-2x; Fri, 13 Oct 2023 10:45:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616448.958483; Fri, 13 Oct 2023 10:45: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 1qrFfV-0002eE-VC; Fri, 13 Oct 2023 10:45:21 +0000
Received: by outflank-mailman (input) for mailman id 616448;
 Fri, 13 Oct 2023 10:45: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=U36v=F3=suse.com=jgross@srs-se1.protection.inumbo.net>)
 id 1qrFXB-0002pr-TP
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 10:36:45 +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 66d52e32-69b4-11ee-9b0e-b553b5be7939;
 Fri, 13 Oct 2023 12:36:43 +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 5BE061FD94;
 Fri, 13 Oct 2023 10:36: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 19065138EF;
 Fri, 13 Oct 2023 10:36:43 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap2.suse-dmz.suse.de with ESMTPSA id XI/JBLsdKWVtNgAAMHmgww
 (envelope-from <jgross@suse.com>); Fri, 13 Oct 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: 66d52e32-69b4-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1697193403; 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=nz51Qlpuj2Tl/kYO3yBEFcQPwvVcconkys6izklRADs=;
	b=iQSg7MhMVf8Ml7Qzqvn5NKW0oBixUtk/gl+kyjLiijTws24A5IcOXlcptgzlFkqDfK3Ncc
	VNs03qyRCYjqpJSmYz4pUy9QoggqmaQuurAq0PXx72RxuNs8d3wzWH1tQzLQ4SVooIKOFw
	R7iLMKxNalmqP7KP7dFK68e0MOvFZ2g=
From: Juergen Gross <jgross@suse.com>
To: xen-devel@lists.xenproject.org
Cc: javi.merino@cloud.com,
	Juergen Gross <jgross@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 12/13] xen/spinlock: remove indirection through macros for spin_*() functions
Date: Fri, 13 Oct 2023 11:42:23 +0200
Message-Id: <20231013094224.7060-13-jgross@suse.com>
X-Mailer: git-send-email 2.35.3
In-Reply-To: <20231013094224.7060-1-jgross@suse.com>
References: <20231013094224.7060-1-jgross@suse.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Authentication-Results: smtp-out2.suse.de;
	none
X-Spam-Level: 
X-Spam-Score: -6.10
X-Spamd-Result: default: False [-6.10 / 50.00];
	 ARC_NA(0.00)[];
	 RCVD_VIA_SMTP_AUTH(0.00)[];
	 FROM_HAS_DN(0.00)[];
	 TO_DN_SOME(0.00)[];
	 TO_MATCH_ENVRCPT_ALL(0.00)[];
	 R_MISSING_CHARSET(2.50)[];
	 MIME_GOOD(-0.10)[text/plain];
	 REPLY(-4.00)[];
	 BROKEN_CONTENT_TYPE(1.50)[];
	 NEURAL_HAM_LONG(-3.00)[-1.000];
	 DKIM_SIGNED(0.00)[suse.com:s=susede1];
	 NEURAL_HAM_SHORT(-1.00)[-1.000];
	 RCPT_COUNT_SEVEN(0.00)[9];
	 MID_CONTAINS_FROM(1.00)[];
	 FROM_EQ_ENVFROM(0.00)[];
	 MIME_TRACE(0.00)[0:+];
	 RCVD_COUNT_TWO(0.00)[2];
	 RCVD_TLS_ALL(0.00)[];
	 BAYES_HAM(-3.00)[100.00%]
X-Spam-Flag: NO

In reality all spin_*() functions are macros which are defined to just
call a related real function.

Remove this macro layer, as it is adding complexity without any gain.

Signed-off-by: Juergen Gross <jgross@suse.com>
---
V2:
- new patch
---
 xen/common/spinlock.c      | 28 +++++++++---------
 xen/include/xen/spinlock.h | 58 +++++++++++++++-----------------------
 2 files changed, 36 insertions(+), 50 deletions(-)

diff --git a/xen/common/spinlock.c b/xen/common/spinlock.c
index cff3f126e6..5fa5c1890a 100644
--- a/xen/common/spinlock.c
+++ b/xen/common/spinlock.c
@@ -332,30 +332,30 @@ static void always_inline spin_lock_common(spinlock_tickets_t *t,
     LOCK_PROFILE_GOT(block);
 }
 
-void _spin_lock(spinlock_t *lock)
+void spin_lock(spinlock_t *lock)
 {
     spin_lock_common(&lock->tickets, &lock->debug, LOCK_PROFILE_PAR, NULL,
                      NULL);
 }
 
-void _spin_lock_cb(spinlock_t *lock, void (*cb)(void *), void *data)
+void spin_lock_cb(spinlock_t *lock, void (*cb)(void *), void *data)
 {
     spin_lock_common(&lock->tickets, &lock->debug, LOCK_PROFILE_PAR, cb, data);
 }
 
-void _spin_lock_irq(spinlock_t *lock)
+void spin_lock_irq(spinlock_t *lock)
 {
     ASSERT(local_irq_is_enabled());
     local_irq_disable();
-    _spin_lock(lock);
+    spin_lock(lock);
 }
 
-unsigned long _spin_lock_irqsave(spinlock_t *lock)
+unsigned long __spin_lock_irqsave(spinlock_t *lock)
 {
     unsigned long flags;
 
     local_irq_save(flags);
-    _spin_lock(lock);
+    spin_lock(lock);
     return flags;
 }
 
@@ -371,20 +371,20 @@ static void always_inline spin_unlock_common(spinlock_tickets_t *t,
     preempt_enable();
 }
 
-void _spin_unlock(spinlock_t *lock)
+void spin_unlock(spinlock_t *lock)
 {
     spin_unlock_common(&lock->tickets, &lock->debug, LOCK_PROFILE_PAR);
 }
 
-void _spin_unlock_irq(spinlock_t *lock)
+void spin_unlock_irq(spinlock_t *lock)
 {
-    _spin_unlock(lock);
+    spin_unlock(lock);
     local_irq_enable();
 }
 
-void _spin_unlock_irqrestore(spinlock_t *lock, unsigned long flags)
+void spin_unlock_irqrestore(spinlock_t *lock, unsigned long flags)
 {
-    _spin_unlock(lock);
+    spin_unlock(lock);
     local_irq_restore(flags);
 }
 
@@ -393,7 +393,7 @@ static int always_inline spin_is_locked_common(const spinlock_tickets_t *t)
     return t->head != t->tail;
 }
 
-int _spin_is_locked(const spinlock_t *lock)
+int spin_is_locked(const spinlock_t *lock)
 {
     return spin_is_locked_common(&lock->tickets);
 }
@@ -429,7 +429,7 @@ static int always_inline spin_trylock_common(spinlock_tickets_t *t,
     return 1;
 }
 
-int _spin_trylock(spinlock_t *lock)
+int spin_trylock(spinlock_t *lock)
 {
     return spin_trylock_common(&lock->tickets, &lock->debug, LOCK_PROFILE_PAR);
 }
@@ -453,7 +453,7 @@ static void always_inline spin_barrier_common(spinlock_tickets_t *t,
     smp_mb();
 }
 
-void _spin_barrier(spinlock_t *lock)
+void spin_barrier(spinlock_t *lock)
 {
     spin_barrier_common(&lock->tickets, &lock->debug, LOCK_PROFILE_PAR);
 }
diff --git a/xen/include/xen/spinlock.h b/xen/include/xen/spinlock.h
index a2b1bb2df6..e4f2e36e4f 100644
--- a/xen/include/xen/spinlock.h
+++ b/xen/include/xen/spinlock.h
@@ -224,18 +224,30 @@ typedef struct rspinlock {
 #define spin_lock_init(l) (*(l) = (spinlock_t)SPIN_LOCK_UNLOCKED)
 #define rspin_lock_init(l) (*(l) = (rspinlock_t)RSPIN_LOCK_UNLOCKED)
 
-void _spin_lock(spinlock_t *lock);
-void _spin_lock_cb(spinlock_t *lock, void (*cb)(void *), void *data);
-void _spin_lock_irq(spinlock_t *lock);
-unsigned long _spin_lock_irqsave(spinlock_t *lock);
+void spin_lock(spinlock_t *lock);
+void spin_lock_cb(spinlock_t *lock, void (*cb)(void *), void *data);
+void spin_lock_irq(spinlock_t *lock);
+#define spin_lock_irqsave(l, f)                                 \
+    ({                                                          \
+        BUILD_BUG_ON(sizeof(f) != sizeof(unsigned long));       \
+        ((f) = __spin_lock_irqsave(l));                         \
+    })
+unsigned long __spin_lock_irqsave(spinlock_t *lock);
 
-void _spin_unlock(spinlock_t *lock);
-void _spin_unlock_irq(spinlock_t *lock);
-void _spin_unlock_irqrestore(spinlock_t *lock, unsigned long flags);
+void spin_unlock(spinlock_t *lock);
+void spin_unlock_irq(spinlock_t *lock);
+void spin_unlock_irqrestore(spinlock_t *lock, unsigned long flags);
 
-int _spin_is_locked(const spinlock_t *lock);
-int _spin_trylock(spinlock_t *lock);
-void _spin_barrier(spinlock_t *lock);
+int spin_is_locked(const spinlock_t *lock);
+int spin_trylock(spinlock_t *lock);
+#define spin_trylock_irqsave(lock, flags)       \
+({                                              \
+    local_irq_save(flags);                      \
+    spin_trylock(lock) ?                        \
+    1 : ({ local_irq_restore(flags); 0; });     \
+})
+/* Ensure a lock is quiescent between two critical operations. */
+void spin_barrier(spinlock_t *lock);
 
 /*
  * rspin_[un]lock(): Use these forms when the lock can (safely!) be
@@ -270,32 +282,6 @@ void nrspin_unlock_irq(rspinlock_t *lock);
 unsigned long __nrspin_lock_irqsave(rspinlock_t *lock);
 void nrspin_unlock_irqrestore(rspinlock_t *lock, unsigned long flags);
 
-#define spin_lock(l)                  _spin_lock(l)
-#define spin_lock_cb(l, c, d)         _spin_lock_cb(l, c, d)
-#define spin_lock_irq(l)              _spin_lock_irq(l)
-#define spin_lock_irqsave(l, f)                                 \
-    ({                                                          \
-        BUILD_BUG_ON(sizeof(f) != sizeof(unsigned long));       \
-        ((f) = _spin_lock_irqsave(l));                          \
-    })
-
-#define spin_unlock(l)                _spin_unlock(l)
-#define spin_unlock_irq(l)            _spin_unlock_irq(l)
-#define spin_unlock_irqrestore(l, f)  _spin_unlock_irqrestore(l, f)
-
-#define spin_is_locked(l)             _spin_is_locked(l)
-#define spin_trylock(l)               _spin_trylock(l)
-
-#define spin_trylock_irqsave(lock, flags)       \
-({                                              \
-    local_irq_save(flags);                      \
-    spin_trylock(lock) ?                        \
-    1 : ({ local_irq_restore(flags); 0; });     \
-})
-
 #define spin_lock_kick(l)             arch_lock_signal_wmb()
 
-/* Ensure a lock is quiescent between two critical operations. */
-#define spin_barrier(l)               _spin_barrier(l)
-
 #endif /* __SPINLOCK_H__ */
-- 
2.35.3



From xen-devel-bounces@lists.xenproject.org Fri Oct 13 10:48:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 10:48:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616459.958493 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrFiF-0003dM-FX; Fri, 13 Oct 2023 10:48:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616459.958493; Fri, 13 Oct 2023 10:48: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 1qrFiF-0003dF-C8; Fri, 13 Oct 2023 10:48:11 +0000
Received: by outflank-mailman (input) for mailman id 616459;
 Fri, 13 Oct 2023 10:48: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=U36v=F3=suse.com=jgross@srs-se1.protection.inumbo.net>)
 id 1qrFXF-0003io-PD
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 10:36:49 +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 6a352b21-69b4-11ee-98d4-6d05b1d4d9a1;
 Fri, 13 Oct 2023 12:36:49 +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 0F4DD219D8;
 Fri, 13 Oct 2023 10:36:49 +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 B8736138EF;
 Fri, 13 Oct 2023 10:36:48 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap2.suse-dmz.suse.de with ESMTPSA id Aoe0K8AdKWV5NgAAMHmgww
 (envelope-from <jgross@suse.com>); Fri, 13 Oct 2023 10:36: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: 6a352b21-69b4-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1697193409; 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=XJXGVBt17gs/cN+aHOyVOs1Gy1IaygLFo59DV4WLsd8=;
	b=sERSr8BC6lQ39id8LMpamC9FzEvTP98XTWy/7c1hfl7h0s9Z9YbzLSg+Qw2a8jMglWy6VI
	eMC9hYpqXA0TkPwrxXV3vV5hwC7Fxih66n8Zr+/dq0sINn/DPIyMB/+fgWmzTcTLl9BWoW
	K1MT6S1RPjW/cH231VfAx/mkOjLhORo=
From: Juergen Gross <jgross@suse.com>
To: xen-devel@lists.xenproject.org
Cc: javi.merino@cloud.com,
	Juergen Gross <jgross@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 13/13] xen/spinlock: support higher number of cpus
Date: Fri, 13 Oct 2023 11:42:24 +0200
Message-Id: <20231013094224.7060-14-jgross@suse.com>
X-Mailer: git-send-email 2.35.3
In-Reply-To: <20231013094224.7060-1-jgross@suse.com>
References: <20231013094224.7060-1-jgross@suse.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Authentication-Results: smtp-out1.suse.de;
	none
X-Spam-Level: 
X-Spam-Score: -6.09
X-Spamd-Result: default: False [-6.09 / 50.00];
	 ARC_NA(0.00)[];
	 RCVD_VIA_SMTP_AUTH(0.00)[];
	 FROM_HAS_DN(0.00)[];
	 TO_DN_SOME(0.00)[];
	 TO_MATCH_ENVRCPT_ALL(0.00)[];
	 R_MISSING_CHARSET(2.50)[];
	 MIME_GOOD(-0.10)[text/plain];
	 REPLY(-4.00)[];
	 BROKEN_CONTENT_TYPE(1.50)[];
	 NEURAL_HAM_LONG(-3.00)[-1.000];
	 DKIM_SIGNED(0.00)[suse.com:s=susede1];
	 NEURAL_HAM_SHORT(-1.00)[-1.000];
	 RCPT_COUNT_SEVEN(0.00)[9];
	 MID_CONTAINS_FROM(1.00)[];
	 FROM_EQ_ENVFROM(0.00)[];
	 MIME_TRACE(0.00)[0:+];
	 RCVD_COUNT_TWO(0.00)[2];
	 RCVD_TLS_ALL(0.00)[];
	 BAYES_HAM(-2.99)[99.95%]
X-Spam-Flag: NO

Allow 16 bits per cpu number, which is the limit imposed by
spinlock_tickets_t.

This will allow up to 65535 cpus, while increasing only the size of
recursive spinlocks in debug builds from 8 to 12 bytes.

Signed-off-by: Juergen Gross <jgross@suse.com>
---
 xen/common/spinlock.c      |  1 +
 xen/include/xen/spinlock.h | 18 +++++++++---------
 2 files changed, 10 insertions(+), 9 deletions(-)

diff --git a/xen/common/spinlock.c b/xen/common/spinlock.c
index 5fa5c1890a..719b067b6e 100644
--- a/xen/common/spinlock.c
+++ b/xen/common/spinlock.c
@@ -481,6 +481,7 @@ int rspin_trylock(rspinlock_t *lock)
 
     /* Don't allow overflow of recurse_cpu field. */
     BUILD_BUG_ON(NR_CPUS > SPINLOCK_NO_CPU);
+    BUILD_BUG_ON(SPINLOCK_CPU_BITS > sizeof(lock->recurse_cpu) * 8);
     BUILD_BUG_ON(SPINLOCK_RECURSE_BITS < 3);
 
     check_lock(&lock->debug, true);
diff --git a/xen/include/xen/spinlock.h b/xen/include/xen/spinlock.h
index e4f2e36e4f..ea88f3ad75 100644
--- a/xen/include/xen/spinlock.h
+++ b/xen/include/xen/spinlock.h
@@ -7,16 +7,16 @@
 #include <asm/system.h>
 #include <asm/spinlock.h>
 
-#define SPINLOCK_CPU_BITS  12
+#define SPINLOCK_CPU_BITS  16
 
 #ifdef CONFIG_DEBUG_LOCKS
 union lock_debug {
-    uint16_t val;
-#define LOCK_DEBUG_INITVAL 0xffff
+    uint32_t val;
+#define LOCK_DEBUG_INITVAL 0xffffffff
     struct {
-        uint16_t cpu:SPINLOCK_CPU_BITS;
-#define LOCK_DEBUG_PAD_BITS (14 - SPINLOCK_CPU_BITS)
-        uint16_t :LOCK_DEBUG_PAD_BITS;
+        uint32_t cpu:SPINLOCK_CPU_BITS;
+#define LOCK_DEBUG_PAD_BITS (30 - SPINLOCK_CPU_BITS)
+        uint32_t :LOCK_DEBUG_PAD_BITS;
         bool irq_safe:1;
         bool unseen:1;
     };
@@ -210,10 +210,10 @@ typedef struct spinlock {
 
 typedef struct rspinlock {
     spinlock_tickets_t tickets;
-    uint16_t recurse_cpu:SPINLOCK_CPU_BITS;
+    uint16_t recurse_cpu;
 #define SPINLOCK_NO_CPU        ((1u << SPINLOCK_CPU_BITS) - 1)
-#define SPINLOCK_RECURSE_BITS  (16 - SPINLOCK_CPU_BITS)
-    uint16_t recurse_cnt:SPINLOCK_RECURSE_BITS;
+#define SPINLOCK_RECURSE_BITS  8
+    uint8_t recurse_cnt;
 #define SPINLOCK_MAX_RECURSE   ((1u << SPINLOCK_RECURSE_BITS) - 1)
     union lock_debug debug;
 #ifdef CONFIG_DEBUG_LOCK_PROFILE
-- 
2.35.3



From xen-devel-bounces@lists.xenproject.org Fri Oct 13 11:00:46 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 11:00:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616470.958503 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrFuK-0000II-IQ; Fri, 13 Oct 2023 11:00:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616470.958503; Fri, 13 Oct 2023 11: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 1qrFuK-0000IB-Fd; Fri, 13 Oct 2023 11:00:40 +0000
Received: by outflank-mailman (input) for mailman id 616470;
 Fri, 13 Oct 2023 11:00: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=BZ0l=F3=amd.com=Michal.Orzel@srs-se1.protection.inumbo.net>)
 id 1qrFuJ-0000I4-3C
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 11:00:39 +0000
Received: from NAM11-DM6-obe.outbound.protection.outlook.com
 (mail-dm6nam11on20623.outbound.protection.outlook.com
 [2a01:111:f400:7eaa::623])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id bca17719-69b7-11ee-98d4-6d05b1d4d9a1;
 Fri, 13 Oct 2023 13:00:37 +0200 (CEST)
Received: from MW2PR16CA0013.namprd16.prod.outlook.com (2603:10b6:907::26) by
 CH2PR12MB4055.namprd12.prod.outlook.com (2603:10b6:610:78::15) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6863.37; Fri, 13 Oct 2023 11:00:30 +0000
Received: from MWH0EPF000989E5.namprd02.prod.outlook.com
 (2603:10b6:907:0:cafe::fb) by MW2PR16CA0013.outlook.office365.com
 (2603:10b6:907::26) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.27 via Frontend
 Transport; Fri, 13 Oct 2023 11:00:30 +0000
Received: from SATLEXMB03.amd.com (165.204.84.17) by
 MWH0EPF000989E5.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.6838.22 via Frontend Transport; Fri, 13 Oct 2023 11:00:30 +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, 13 Oct
 2023 06:00:28 -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, 13 Oct
 2023 04:00:14 -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; Fri, 13 Oct 2023 06: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: bca17719-69b7-11ee-98d4-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Ra+VyTk0E0/Uh6Cv5mHHdZbTSnByDnguguD5cBJPmLIfOJyFjx46kYwh4902TWaF5KzLtOkigC8oaVDTfDWuWL65ghNPXq1UnNfZ54NsbnhdL223hyV6234QUQLjkIDpKENieLfYp7TyRSyIJkzpj2uHwwbc8mn/QG47ctdTNmTbXRg2T77S/iIfVBTr+fhyq7IgwkARpAJtrxXJIl9YX5WN/akJUnXDXDc0V/Rf3qYimmelqAVuGtclN53EFMUOtIdlV90EyfUUvJNKe+gbKmK189fI7n3LEy4fWWWo0V8AqpJDnSUJjrutnGaTf45iKyHtmNw5IdmOGbQwOnUi9g==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=4wxa7cmTOlFj1JNCBPMas48ph9C1hXvAAp+gzL0an44=;
 b=nOKEqn+BI/AOnzWI5mPCqnMkRpGbmErdBfZtuY/uT5bvAm8KDdoIlySriED1Bek+tOwbjgHd+2AglPEwGVZoEmxDsjVJViEQWEW5n0PhJjJZvQg9wwie55VwwpvsPVj8IXhc8AUgtbwbYfj8675qkdY+qQHpgiBMhhq8wMae0KbwUyvhrd3guMgc9bV/JY1YRHMNS5rG5EYWc+REVd4iM3LNmjm3A1O+djD7C8rXyS3wRQ0AIUGopc+nGwAYN6Nqmv1FFJywPf/VkuurQfXv7Fn1elHlj5sWAfmQZIvmePm3hUPULq7TVT/iWYFJfV1gRrxmQt7glPSGVQ23Mu4mrQ==
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=4wxa7cmTOlFj1JNCBPMas48ph9C1hXvAAp+gzL0an44=;
 b=Rs72UJXHZ4nkEv3A04/naSpjM1TSvQ7Jt2w5j1J/c82zgUCtLgtW6ClSM8xUh0COMcQZez0ag+wxlove/DVSjcRMbrWF7HqMG2QnEggJHteKYFO3L/hVUM8Blck4n3s5siuor6eKEdOyJkhQbcC8NT3tb9fysCGrBVbLhTk0Ga8=
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: <b8312c46-c1f8-455f-b277-b36a1dc636ab@amd.com>
Date: Fri, 13 Oct 2023 13:00:12 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v3] 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: <20231013102929.1266849-1-leo.yan@linaro.org>
From: Michal Orzel <michal.orzel@amd.com>
In-Reply-To: <20231013102929.1266849-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: MWH0EPF000989E5:EE_|CH2PR12MB4055:EE_
X-MS-Office365-Filtering-Correlation-Id: be3a7345-5d9c-45c0-cd3b-08dbcbdb9d86
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	I4d9zEPEoVykGBm0sYSerlZOba9GXPb+ZuOZ7ApBylIN1vp+L0oAl7tED7zk3r9K/l+zClauFYMGC55G6e3idSYBwg6JlBzDu8SHiUMYHy6rXf3EPgf1Jj5K5KxiAay5z3p8Rd8NXJtK38qkczZPO4f0boAh0xcAjjsJow+4NsS76iF/MqNft/nFOCpuv2lwU+m/h/Zqd5V7u7RAq+b/bEAKl5Vj0BTpMUoqO7H7fbG/yemiUEhnepQuzsP9Kz84CgmglWgQvJ7KmWGmwfPGp045VyopUKTEqjVPmuxmeb9cJNLevqpZpohB7Dm/F10x13dN+2Lo3YgfKcKHrEVQxtkvQ8jiEnXHXVH8xL1WxquRFb6pdszTRfVt5z6aHNg3t26Of062Q5EkuRF7rXUiwhPzVofm2L7zh5luhAbWXh0/xiH6G2pFA4dXy3XKzBaEY0Og96x5/x5GAVtIiIMwSq9FZTW4u3xwzLOqLJkyQQntog62sFjA/ZOkcOfJ07r6agsXr5C/YeKPTd9MV4wK4nNpVjgAgL0c47BrB1DWbroYJqRjxh+H3ocNzM0p0nOIjjXrstbGGZ5dVHEWXXQct2sfrY6wGZgzkfmoyKuNleu3LwN+9RBJN6sQb8OLKiNgJLZGzq1q/S6GtvH7hVbr72hI413ATbWd7BHixNa1crYi9S9CQ0KjTn1GvwcHahAqI3FfKPFelujaOICi/PlK38IOgydeJt052p0E3/Wr9mZ3TWaapBiJ6lxkU9u9FgrZiqh/adHRV57aMBtfzF9+bui/etr3GSHONBDhx1CF+pfgvgChkwzaC8aYM1VTlyvP
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)(376002)(346002)(396003)(230922051799003)(186009)(64100799003)(1800799009)(451199024)(82310400011)(40470700004)(36840700001)(46966006)(40460700003)(53546011)(26005)(478600001)(2616005)(44832011)(336012)(47076005)(2906002)(83380400001)(54906003)(70206006)(5660300002)(110136005)(426003)(70586007)(16576012)(41300700001)(8676002)(316002)(8936002)(31696002)(4326008)(81166007)(36756003)(356005)(82740400003)(86362001)(40480700001)(36860700001)(31686004)(43740500002)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Oct 2023 11:00:30.2472
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: be3a7345-5d9c-45c0-cd3b-08dbcbdb9d86
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:
	MWH0EPF000989E5.namprd02.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH2PR12MB4055

Hi Leo,

On 13/10/2023 12:29, 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.
The first part about the status is a bit ambiguous.
How about (this can be done on commit):
Currently, Xen doesn't check the status property of memory/reserved
memory nodes, which may lead to the following issues:

> 
> - 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>
Reviewed-by: Michal Orzel <michal.orzel@amd.com>

~Michal


From xen-devel-bounces@lists.xenproject.org Fri Oct 13 11:10:11 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 11:10:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616476.958514 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrG3R-0002Fi-Mb; Fri, 13 Oct 2023 11:10:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616476.958514; Fri, 13 Oct 2023 11:10: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 1qrG3R-0002Fb-Gb; Fri, 13 Oct 2023 11:10:05 +0000
Received: by outflank-mailman (input) for mailman id 616476;
 Fri, 13 Oct 2023 11:10: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 1qrG3Q-0002Al-VE
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 11:10: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 1qrG3L-0006MQ-68; Fri, 13 Oct 2023 11:09: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 1qrG3L-0000h3-0K; Fri, 13 Oct 2023 11:09: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=p8sMvokGDyq16FT1zSCAwL2Acd5RmOh4KTyc5GF1fbg=; b=UhbRSlSPixAXyYwHIBHhdG1A4c
	dx8RZddctRsbDtdk95SrtPQYR3Dw1Dl2B1sGZ+3OcY7JJOoqurbgFitU0rOH/jvQsBTT5fWx/AAbX
	I1o7Pm9LxbeRWL0LQk619TTqhTiZ8dZpzgNSCijHx0OPUnEohmtf8+iOHCb672WmTvz0=;
Message-ID: <8d0ccf40-d8df-4c7a-a656-6febc67124a6@xen.org>
Date: Fri, 13 Oct 2023 12:09:56 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: Xen 4.18 release: Reminder about code freeze
Content-Language: en-GB
To: Juergen Gross <jgross@suse.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 George Dunlap <george.dunlap@cloud.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>, Henry Wang
 <Henry.Wang@arm.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 Bertrand Marquis <Bertrand.Marquis@arm.com>, Jan Beulich
 <jbeulich@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>
 <a31ce6cb-6234-5e7f-5cd4-ed190f029811@citrix.com>
 <alpine.DEB.2.22.394.2309271658500.1403502@ubuntu-linux-20-04-desktop>
 <CA+zSX=ZbeUFrfAUJShooJFJ+d89f4xdXfJJ9HoJKRh4UStkTFQ@mail.gmail.com>
 <alpine.DEB.2.22.394.2310121535580.3431292@ubuntu-linux-20-04-desktop>
 <502c7fb1-eead-4e88-971e-2970fe7264ee@suse.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <502c7fb1-eead-4e88-971e-2970fe7264ee@suse.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

Hi,

On 13/10/2023 07:31, Juergen Gross wrote:
> On 13.10.23 00:36, Stefano Stabellini wrote:
>> On Thu, 12 Oct 2023, George Dunlap wrote:
>>>>> 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?
>>>
>>> It moves a line from one function (do_domain_introduce()) into a
>>> completely different function (introduce_domain()), nested inside two
>>> if() statements; with no analysis on how the change will impact
>>> things.
>>
>> I am not the original author of the patch, and I am not the maintainer
>> of the code, so I don't feel I have the qualifications to give you the
>> answers you are seeking. Julien as author of the patch and xenstore
>> reviewer might be in a better position to answer. Or Juergen as xenstore
>> maintainer.
> 
> I did already provide some feedback when the patch was sent the first time
> in May.
> 
>>
>>  From what I can see the patch is correct.
> 
> You removed the dom0 special casing again, which I asked for to add back
> then.

+1

> And I still think there are missing barriers (at least for Arm).

Just to clarify. Do you mean adding a barrier after domain_conn_reset() 
but before adding setting interface->connection? If so, I agree that we 
need a wmb(). We don't have wmb() but smp_mb() in Xenstored. This 
stronger than necessary, but I think this is ok as I don't view as a 
hotpath.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Fri Oct 13 11:22:36 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 11:22:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616483.958523 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrGFP-00076d-MQ; Fri, 13 Oct 2023 11:22:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616483.958523; Fri, 13 Oct 2023 11: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 1qrGFP-00076W-Jn; Fri, 13 Oct 2023 11:22:27 +0000
Received: by outflank-mailman (input) for mailman id 616483;
 Fri, 13 Oct 2023 11:22: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 1qrGFO-00076Q-6S
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 11:22: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 1qrGFK-0006Z7-So; Fri, 13 Oct 2023 11:22:22 +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 1qrGFK-0001K0-L9; Fri, 13 Oct 2023 11:22: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=w5AzuYy+rOQoKpoIPcg59eUnwPm3+pxHv3dYHQCvgIw=; b=tvVAh2nM4bQpijLfmUgZLXhyg7
	Rdlm1nCMvZOajCx35Wtsk/0s97sKU65qf+w7k+8bFIoplIQVkorAnS50W8jXpL4bN13qA9opwfHuZ
	ISqER+mzvBntHIwwD44HfsBBHKSjCfLdmW+JG+uQOYRH8EWqXtyVoDH+ZzhQNnw/Jq60=;
Message-ID: <a93839b8-932a-4634-9549-081df950afb2@xen.org>
Date: Fri, 13 Oct 2023 12:22:20 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: Xen 4.18 release: Reminder about code freeze
Content-Language: en-GB
To: George Dunlap <george.dunlap@cloud.com>,
 Stefano Stabellini <sstabellini@kernel.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>, Henry Wang
 <Henry.Wang@arm.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.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>
 <a31ce6cb-6234-5e7f-5cd4-ed190f029811@citrix.com>
 <alpine.DEB.2.22.394.2309271658500.1403502@ubuntu-linux-20-04-desktop>
 <CA+zSX=ZbeUFrfAUJShooJFJ+d89f4xdXfJJ9HoJKRh4UStkTFQ@mail.gmail.com>
 <alpine.DEB.2.22.394.2310121535580.3431292@ubuntu-linux-20-04-desktop>
 <CA+zSX=Y5dMVFM6dVNgBRHxKc0C1e5WGgweQ0FaXXCfAFGH1aPA@mail.gmail.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <CA+zSX=Y5dMVFM6dVNgBRHxKc0C1e5WGgweQ0FaXXCfAFGH1aPA@mail.gmail.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

Hi George,

On 13/10/2023 11:16, George Dunlap wrote:
> On Thu, Oct 12, 2023 at 11:36 PM Stefano Stabellini
> <sstabellini@kernel.org> wrote:
>>
>> On Thu, 12 Oct 2023, George Dunlap wrote:
>>>>> 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?
>>>
>>> It moves a line from one function (do_domain_introduce()) into a
>>> completely different function (introduce_domain()), nested inside two
>>> if() statements; with no analysis on how the change will impact
>>> things.
>>
>> I am not the original author of the patch, and I am not the maintainer
>> of the code, so I don't feel I have the qualifications to give you the
>> answers you are seeking. Julien as author of the patch and xenstore
>> reviewer might be in a better position to answer. Or Juergen as xenstore
>> maintainer.
> 
> I understand that; my main point is that the change is more complex
> than you're characterizing it.  This is information necessary to
> understand whether the patch is correct, but it's not in the patch
> description, nor in the subsequent thread back in May.
> 
>>> Are there any paths through do_domain_introduce() that now *won't* get
>>> a domain_conn_reset() call?  Is that OK?
>>
>> Yes, the already-introduced and the restore code paths. The operations in
>> the already-introduced or the restore code paths seem simple enough not
>> to require a domain_conn_reset. Julien and Juergen should confirm.
> 
> There is no "restore" codepath through do_domain_introduce(); it
> passes "false" for the "restore" argument.  So we  only have two paths
> to consider through do_domain_introduce(): The "not introduced and not
> restoring" path, and the "already-introduced" path.
> 
> I'm not sure what the "simple" elements on the branch in
> introduce_domain() have to do with whether the content of the page
> needs to be cleaned up.  As I said, I don't 100% understand this code,
> but it seems like if anything, the reset would be *more* important to
> have in the "reintroduce" case than in the "initial introduction"
> case, since I'd expect the "initial introduction" case to be empty
> already.
Indeed, there should be no watches/transactions/buffered I/O for the 
initial introduction. However, the function is also clear part of the 
interface because we can't guaranteed it was zeroed.

The latter matter for the initial introduction. I believe the rest is 
just called for simplicity.

> 
>> Doesn't it seem weird to you that we set a connection to CONNECTED,
>> notify the domain that it is ready to go, and only *after* that we reset
>> the connection to zero?
>>
>> What happens if a domain starts using the connection as soon as it
>> receives the event channel notification and before domain_conn_reset is
>> called?
> 
> Yes, it does seem weird, which is why I said the following. :-)
> 
>>> I mean, it certainly seems strange to set the state to CONNECTED, send
>>> off an event channel, and then after that delete all watches /
>>> transactions / buffered data and so on;
> 
> But just because the current code is probably wrong, doesn't mean that
> the modified code is probably correct.
> 
> If the problem is the delay between the xenevtchn_notify() in
> introduce_domain() and the domain_conn_reset() afterwards in
> do_domain(), would it make sense instead to move the notification into
> do_introduce(), after the domain_conn_reset()?  It is, after all, in
> response to XS_INTRODUCE that we want to send the notification, not in
> dom0_init() or read_state_connection() (which seems to be more about
> restoring a domain).

I understand that the event channel notification was specifically added 
for dom0less. But I don't see why we don't want to send it to dom0 as well.

Technically, dom0 has exactly the same problem as dom0less domains it 
boots before Xenstored is running and therefore it may need to know when 
it is ready to receive commands.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Fri Oct 13 11:23:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 11:23:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616488.958532 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrGGl-0008B1-0R; Fri, 13 Oct 2023 11:23:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616488.958532; Fri, 13 Oct 2023 11:23: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 1qrGGk-0008Au-Ti; Fri, 13 Oct 2023 11:23:50 +0000
Received: by outflank-mailman (input) for mailman id 616488;
 Fri, 13 Oct 2023 11:23: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=NVAw=F3=cloud.com=alejandro.vallejo@srs-se1.protection.inumbo.net>)
 id 1qrGGj-0008Ao-8u
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 11:23:49 +0000
Received: from mail-ej1-x62e.google.com (mail-ej1-x62e.google.com
 [2a00:1450:4864:20::62e])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id fa7dfe66-69ba-11ee-98d4-6d05b1d4d9a1;
 Fri, 13 Oct 2023 13:23:48 +0200 (CEST)
Received: by mail-ej1-x62e.google.com with SMTP id
 a640c23a62f3a-9ba1eb73c27so326791066b.3
 for <xen-devel@lists.xenproject.org>; Fri, 13 Oct 2023 04:23:48 -0700 (PDT)
Received: from EMEAENGAAD19049. (default-46-102-197-194.interdsl.co.uk.
 [46.102.197.194]) by smtp.gmail.com with ESMTPSA id
 ci24-20020a170906c35800b009a2235ed496sm12466014ejb.141.2023.10.13.04.23.47
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Fri, 13 Oct 2023 04:23: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: fa7dfe66-69ba-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1697196228; x=1697801028; 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=wt6QnegSXWw4ubsZzSJKV6jXlHRSG9ZZqGnDL2enZGo=;
        b=i+sNMA03Hum/zMSwwzSkxOUjGEDaMIBvnJOVpclqT5KQDnwR708szkojxePGNtGxQ/
         lwrhI/PDJZDN41lYn3FqagTfMG2xrHovjiLxpi6Dcgxk2WjxFkvBIcGNTzgcmM9pN6CD
         wqGUOP4+ff2uWGsz/MxJwUulFkufZOMR9pFDE=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697196228; x=1697801028;
        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=wt6QnegSXWw4ubsZzSJKV6jXlHRSG9ZZqGnDL2enZGo=;
        b=QeezxmqZ+3m99DOevKyHuETrfZJGrA17lrm0Xlz1o5uAOCHmsa4SXNFfdQrnEte1Rk
         wxlqP85x6Ehl0fXXHK4PvXqhaHxHiwdboXtODTjJ/JMY7tGImRXKFjFJ8hrB9RxXmfPY
         vYFzh1ABRWxCIGYZ4fHUWdx7/COKMpS1GF87jZgT+ux0dvpN6iLo2bCnevmGM4LDZFxr
         C0gsd9lnLEap0DHUETFmv70vsUv9nyJDaLMj2XmdYwQzhtxTxE2QSa88kDj9WFNXUfGT
         l8h2Gqwe9aHZY5XllozyUcR1DGVOBPb5B0fUrHHlsSpwk+b2N2LWiuuVCScqlLZMkc1u
         vEVw==
X-Gm-Message-State: AOJu0YwK6WMjZU5zKDcow9fKZFwufA6toPTFiS6PdXL6fR9k92iuf5z0
	/2P8qYfQ54io+gWAQFgM2folaA==
X-Google-Smtp-Source: AGHT+IEeICyPFzSxdPusEO79fUBTbxaN7ztu2z2T+NQIshAwZKS67vTBCq1GjPhDEhnnCykED9WbtQ==
X-Received: by 2002:a17:906:2250:b0:9ae:54ea:5b0f with SMTP id 16-20020a170906225000b009ae54ea5b0fmr25511439ejr.24.1697196227860;
        Fri, 13 Oct 2023 04:23:47 -0700 (PDT)
Message-ID: <652928c3.170a0220.37d5e.7636@mx.google.com>
X-Google-Original-Message-ID: <ZSkov4poR45Hun9S@EMEAENGAAD19049.>
Date: Fri, 13 Oct 2023 12:23:43 +0100
From: Alejandro Vallejo <alejandro.vallejo@cloud.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: Xen-devel <xen-devel@lists.xenproject.org>,
	Jan Beulich <jbeulich@suse.com>,
	Roger Pau =?iso-8859-1?Q?Monn=E9?= <roger.pau@citrix.com>,
	Wei Liu <wl@xen.org>, Henry Wang <Henry.Wang@arm.com>
Subject: Re: [for-4.18][PATCH 1/2] xen/x86: Add family guards to the
 is_zen[12]_uarch() macros
References: <20231012172601.22600-1-alejandro.vallejo@cloud.com>
 <20231012172601.22600-2-alejandro.vallejo@cloud.com>
 <06c4df56-8118-4f11-843a-7e4ae81f2464@citrix.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <06c4df56-8118-4f11-843a-7e4ae81f2464@citrix.com>

Hi,

I'll just remove this patch (and amend the next) in the interest of having
it committed early. That said...

On Fri, Oct 13, 2023 at 10:14:45AM +0800, Andrew Cooper wrote:
> On 13/10/2023 1:26 am, Alejandro Vallejo wrote:
> > It slightly simplifies the code that uses them at no real cost because the
> > code is very rarely executed. This makes it harder to confuse zen uarches
> > due to missing or mistaken family checks.
> 
> I'm afraid I disagree.
As it stands, it's a matter of time before a bug of this form creeps up. Particularly
because it reads very innocent.

   if (is_zen1_uarch())
      fun1();
   else if (is_zen2_uarch())
      fun2();
   else if (is_zen3_uarch())
      fun3();
   else if (is_zen4_uarch())
      fun4();

Particularly if the bodies of each conditional are big enough that you lose
track of the family you're dealing with.

> 
> It's bogus to do a family check without a vendor check.
I can get behind that. I didn't include the vendor check because by and
large these macros are used in vendor-specific areas. Would that appease
your concerns? Whenever the macros are used we're in glacially cold paths
anyway.

> By making this
> change, you're separating (spatially in code, and therefore cognitively)
> the two checks that it's important to be able to cross-check.
IMO, It's no different from separating the heuristic from the vendor/family
check. What causes definite cognitive load is (as a reader) having to
remember what particular fields must be read off boot_cpu_data in order to
discriminate zenN, which of them are co-familiar and so on.

> 
> > diff --git a/xen/arch/x86/include/asm/amd.h b/xen/arch/x86/include/asm/amd.h
> > index d862cb7972..5a40bcc2ba 100644
> > --- a/xen/arch/x86/include/asm/amd.h
> > +++ b/xen/arch/x86/include/asm/amd.h
> > @@ -145,11 +145,12 @@
> >   * 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.
> > + * The caller is required to perform the appropriate vendor check first.
> >   */
> > -#define is_zen1_uarch() (!boot_cpu_has(X86_FEATURE_AMD_STIBP))
> > -#define is_zen2_uarch()   boot_cpu_has(X86_FEATURE_AMD_STIBP)
> > +#define is_zen1_uarch() ((boot_cpu_data.x86 == 0x17 || boot_cpu_data.x86 == 0x18) && \
> > +                         !boot_cpu_has(X86_FEATURE_AMD_STIBP))
> > +#define is_zen2_uarch() (boot_cpu_data.x86 == 0x17 && \
> > +                         boot_cpu_has(X86_FEATURE_AMD_STIBP))
> 
> What leads you to believe there aren't Hygon Zen2's ?
The same argument that a Hygon zen2 supports STIBP. Having seen neither HW
nor docs all that's left is divination skills :)

> 
> ~Andrew

As I said, let's move this discussion away from the errata fix (I'll remove
this patch and adapt the next one to remove the family check), as it's
unrelated and can be done later if I manage to convince you.

Thanks,
Alejandro


From xen-devel-bounces@lists.xenproject.org Fri Oct 13 11:32:31 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 11:32:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616493.958542 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrGOx-0002xw-Oz; Fri, 13 Oct 2023 11:32:19 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616493.958542; Fri, 13 Oct 2023 11: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 1qrGOx-0002xp-MT; Fri, 13 Oct 2023 11:32:19 +0000
Received: by outflank-mailman (input) for mailman id 616493;
 Fri, 13 Oct 2023 11:32: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=36VQ=F3=cloud.com=george.dunlap@srs-se1.protection.inumbo.net>)
 id 1qrGOw-0002xL-On
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 11:32:18 +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 2a595eb3-69bc-11ee-98d4-6d05b1d4d9a1;
 Fri, 13 Oct 2023 13:32:18 +0200 (CEST)
Received: by mail-lf1-x12f.google.com with SMTP id
 2adb3069b0e04-50435ad51bbso2549243e87.2
 for <xen-devel@lists.xenproject.org>; Fri, 13 Oct 2023 04:32: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: 2a595eb3-69bc-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1697196737; x=1697801537; 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=1pW86jlUTx8cCMrLQcKXX0OlC8YQUMxXqtsokrB/e68=;
        b=PuQMBxn+xZr3gO7hQqBoRpu4fsDb7gc5zr4LYZqRH1G0gG4FdL2ZP51MZdoj3VwSdc
         +PA4xxUBxabak5AVtdM4wbBlJuVw2KPaMR8O8/ySklUn/qLrogdHNoSxhvrzZEUHu+ED
         BnoqXUhIybQrtvNmsWp1GbwCsc8oNYuoFMb8o=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697196737; x=1697801537;
        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=1pW86jlUTx8cCMrLQcKXX0OlC8YQUMxXqtsokrB/e68=;
        b=hchjigqjPwembdQNHG7mjP9yEs+zsZPVlb2CkxjUuFGuW+flaY8rQO0Z9pie3KWRlu
         3Bzd1PGp7gU8NzF7IcO0/S6EOdXJN3ISSqgdIlna5JtfgOPJgrjDasynq2WXVm+UC/dh
         PzFhlXSb9Gik9Uwd0cKIq91Gz+CKaBfAKfsiTTuSDtSdZ1GpLrTlPQn1xiOquExXnjsn
         Wkoh7y8Ue8VG0gJ2eYUavwr4jbXfouEBpLHSC9udg8le1GO2XzVyxeAN7a3WK/ab8jLf
         r7GWjLqTpAmg7lKkM9oztMvzXT3KfO3WIYRv/gKm6slzxPjNcq8OcLmrbRIBrwe031ES
         zzrA==
X-Gm-Message-State: AOJu0YxJENKuszRZNxPwOKkOra+cCXmOXmwx8hQ/C4HDQ5dxF18WqJl7
	1eXPBAKAkjLEry18Sjekk/r8XcavisZx/c2qc+UhOw==
X-Google-Smtp-Source: AGHT+IFV34IEQ9A1+hR28F7cvHgAv76ARgCAfplLLz2VVvb+5sD2H+uLumQ139oG6pBz6Ip9/mstonICMjK50kV99Lc=
X-Received: by 2002:a19:a407:0:b0:507:9702:c11d with SMTP id
 q7-20020a19a407000000b005079702c11dmr2063960lfc.64.1697196737556; Fri, 13 Oct
 2023 04:32:17 -0700 (PDT)
MIME-Version: 1.0
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> <alpine.DEB.2.22.394.2309271658500.1403502@ubuntu-linux-20-04-desktop>
 <CA+zSX=ZbeUFrfAUJShooJFJ+d89f4xdXfJJ9HoJKRh4UStkTFQ@mail.gmail.com>
 <alpine.DEB.2.22.394.2310121535580.3431292@ubuntu-linux-20-04-desktop>
 <CA+zSX=Y5dMVFM6dVNgBRHxKc0C1e5WGgweQ0FaXXCfAFGH1aPA@mail.gmail.com> <a93839b8-932a-4634-9549-081df950afb2@xen.org>
In-Reply-To: <a93839b8-932a-4634-9549-081df950afb2@xen.org>
From: George Dunlap <george.dunlap@cloud.com>
Date: Fri, 13 Oct 2023 12:32:06 +0100
Message-ID: <CA+zSX=a972GC=_FKK2eGkArPb6RszCHDN0+6JKFJiMjoMpAySQ@mail.gmail.com>
Subject: Re: Xen 4.18 release: Reminder about code freeze
To: Julien Grall <julien@xen.org>
Cc: Stefano Stabellini <sstabellini@kernel.org>, Andrew Cooper <andrew.cooper3@citrix.com>, 
	Henry Wang <Henry.Wang@arm.com>, 
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.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 Fri, Oct 13, 2023 at 12:22=E2=80=AFPM Julien Grall <julien@xen.org> wrot=
e:
>
> Hi George,
>
> On 13/10/2023 11:16, George Dunlap wrote:
> > On Thu, Oct 12, 2023 at 11:36=E2=80=AFPM Stefano Stabellini
> > <sstabellini@kernel.org> wrote:
> >>
> >> On Thu, 12 Oct 2023, George Dunlap wrote:
> >>>>> 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 comm=
it
> >>>> 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 voi=
d *ctx,
> >>>>                  talloc_steal(domain->conn, domain);
> >>>>
> >>>>                  if (!restore) {
> >>>> +                       domain_conn_reset(domain);
> >>>>                          /* Notify the domain that xenstore is avail=
able */
> >>>>                          interface->connection =3D XENSTORE_CONNECTE=
D;
> >>>>                          xenevtchn_notify(xce_handle, domain->port);
> >>>> @@ -1031,8 +1032,6 @@ int do_introduce(const void *ctx, struct conne=
ction *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?
> >>>
> >>> It moves a line from one function (do_domain_introduce()) into a
> >>> completely different function (introduce_domain()), nested inside two
> >>> if() statements; with no analysis on how the change will impact
> >>> things.
> >>
> >> I am not the original author of the patch, and I am not the maintainer
> >> of the code, so I don't feel I have the qualifications to give you the
> >> answers you are seeking. Julien as author of the patch and xenstore
> >> reviewer might be in a better position to answer. Or Juergen as xensto=
re
> >> maintainer.
> >
> > I understand that; my main point is that the change is more complex
> > than you're characterizing it.  This is information necessary to
> > understand whether the patch is correct, but it's not in the patch
> > description, nor in the subsequent thread back in May.
> >
> >>> Are there any paths through do_domain_introduce() that now *won't* ge=
t
> >>> a domain_conn_reset() call?  Is that OK?
> >>
> >> Yes, the already-introduced and the restore code paths. The operations=
 in
> >> the already-introduced or the restore code paths seem simple enough no=
t
> >> to require a domain_conn_reset. Julien and Juergen should confirm.
> >
> > There is no "restore" codepath through do_domain_introduce(); it
> > passes "false" for the "restore" argument.  So we  only have two paths
> > to consider through do_domain_introduce(): The "not introduced and not
> > restoring" path, and the "already-introduced" path.
> >
> > I'm not sure what the "simple" elements on the branch in
> > introduce_domain() have to do with whether the content of the page
> > needs to be cleaned up.  As I said, I don't 100% understand this code,
> > but it seems like if anything, the reset would be *more* important to
> > have in the "reintroduce" case than in the "initial introduction"
> > case, since I'd expect the "initial introduction" case to be empty
> > already.
> Indeed, there should be no watches/transactions/buffered I/O for the
> initial introduction. However, the function is also clear part of the
> interface because we can't guaranteed it was zeroed.
>
> The latter matter for the initial introduction. I believe the rest is
> just called for simplicity.
>
> >
> >> Doesn't it seem weird to you that we set a connection to CONNECTED,
> >> notify the domain that it is ready to go, and only *after* that we res=
et
> >> the connection to zero?
> >>
> >> What happens if a domain starts using the connection as soon as it
> >> receives the event channel notification and before domain_conn_reset i=
s
> >> called?
> >
> > Yes, it does seem weird, which is why I said the following. :-)
> >
> >>> I mean, it certainly seems strange to set the state to CONNECTED, sen=
d
> >>> off an event channel, and then after that delete all watches /
> >>> transactions / buffered data and so on;
> >
> > But just because the current code is probably wrong, doesn't mean that
> > the modified code is probably correct.
> >
> > If the problem is the delay between the xenevtchn_notify() in
> > introduce_domain() and the domain_conn_reset() afterwards in
> > do_domain(), would it make sense instead to move the notification into
> > do_introduce(), after the domain_conn_reset()?  It is, after all, in
> > response to XS_INTRODUCE that we want to send the notification, not in
> > dom0_init() or read_state_connection() (which seems to be more about
> > restoring a domain).
>
> I understand that the event channel notification was specifically added
> for dom0less. But I don't see why we don't want to send it to dom0 as wel=
l.
>
> Technically, dom0 has exactly the same problem as dom0less domains it
> boots before Xenstored is running and therefore it may need to know when
> it is ready to receive commands.

It seemed to work fine before 2022, when the notification was
introduced.  How was that coordination done?  Will dom0 honor the
"XENSTORE_RECONNECT" state during bring-up as described in
xenstore-ring.txt?

Personally I'd just take the patch as I wrote it, restoring dom0's
pre-2022 behavior (after review and testing of course); but if you
wanted to test & resubmit with a similar notification inside
dom0_init(), I wouldn't object to it.

Naturally it would be ideal if we could avoid the code duplication;
but that's not possible without a lot more refactoring, which I don't
think we should be doing at this stage in the release.

 -George


From xen-devel-bounces@lists.xenproject.org Fri Oct 13 11:36:32 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 11:36:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616498.958553 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrGT0-0004S6-EW; Fri, 13 Oct 2023 11:36:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616498.958553; Fri, 13 Oct 2023 11:36: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 1qrGT0-0004Rz-A3; Fri, 13 Oct 2023 11:36:30 +0000
Received: by outflank-mailman (input) for mailman id 616498;
 Fri, 13 Oct 2023 11:36: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=7lwD=F3=citrix.com=prvs=64352611f=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qrGSy-0004Qh-8n
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 11:36: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 bcfe4efa-69bc-11ee-98d4-6d05b1d4d9a1;
 Fri, 13 Oct 2023 13:36:26 +0200 (CEST)
Received: from mail-co1nam11lp2169.outbound.protection.outlook.com (HELO
 NAM11-CO1-obe.outbound.protection.outlook.com) ([104.47.56.169])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 13 Oct 2023 07:36:12 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by SN7PR03MB7057.namprd03.prod.outlook.com (2603:10b6:806:35a::5)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.38; Fri, 13 Oct
 2023 11:36:09 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::66ca:3a42:baeb:9ecf]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::66ca:3a42:baeb:9ecf%7]) with mapi id 15.20.6863.043; Fri, 13 Oct 2023
 11:36: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: bcfe4efa-69bc-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1697196986;
  h=date:from:to:cc:subject:message-id:references:
   in-reply-to:mime-version;
  bh=hjMi742zGkCKyVMRhfMShA3vAEv3sUn6WS5rpeaoxRc=;
  b=QhBU1GT+b9NH/w2URpI5rJ9R1KMWT1RZNyOGvbwIqcC81cF1LjFOhzgU
   zG9Q6Gynbc/gwZtqKJ3K/MW9LGGH6tLwBQRUyL6O66TIhotE3kvMUKODh
   ckP5u9/DAR/WuiUX9lPxth2kWDBS0LCHSNABGJUklC3e/8pE4jueXdtGv
   w=;
X-CSE-ConnectionGUID: 6WXBEp6SRauhWYDDEr4BWg==
X-CSE-MsgGUID: SP0peSFsTHWaHA2TmCFXVQ==
X-IronPort-RemoteIP: 104.47.56.169
X-IronPort-MID: 128248712
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:3qaXqqubm0ifhaRvzQGA8d1rfufnVIdfMUV32f8akzHdYApBsoF/q
 tZmKTrTPq3ZNGP2fYtzbo+39RgEu5KGx4dqHgBqqi80HisU+JbJXdiXEBz9bniYRiHhoOCLz
 O1FM4Wdc5pkJpP4jk3wWlQ0hSAkjclkfpKlVaicfHg3HFc4IMsYoUoLs/YjhYJ1isSODQqIu
 Nfjy+XSI1bg0DNvWo4uw/vrRChH4rKq41v0gnRkPaoQ5QeHzCFPZH4iDfrZw0XQE9E88tGSH
 44v/JnhlkvF8hEkDM+Sk7qTWiXmlZaLYGBiIlIPM0STqkAqSh4ai87XB9JFAatjsB2bnsgZ9
 Tl4ncfYpTHFnEH7sL91vxFwS0mSNEDdkVPNCSDXXce7lyUqf5ZwqhnH4Y5f0YAwo45K7W9yG
 fMwdg89RD2b2dmMya+7ddhAquk5cOPUM9ZK0p1g5Wmx4fcOZ7nmGvyPzvgBmTA6i4ZJAOrUY
 NcfZXx3dhPcbhZTO1ARTpUjgOOvgXq5eDpdwL6XjfNvvy6Pk0osjv60bou9lt+iHK25mm6Co
 W3L5SLhCwwyP92D0zuVtHmrg4cjmAuiAtJISO3nr6QCbFu7/VRLEBAte0CHgcawqmfkZ9d0B
 Xwqw397xUQ13AnxJjXnZDWxpHOGtxgQQd0WDeQ+7AyPzYLf5wGECi4PSTspQMwrsoo6SCIn0
 neNnsj1Hnp/vbuNU3Wf+7yI6zSoNkA9L2UPeCsFRgst+MT4rcc4iRenZslnOL64iJvyAz6Y6
 xCHqjIvwYoai8Ej3r++u1vAhlqRSoPhSwc04kDcWTuj5wYgPYq9PdX2uB7c8OpKK5ufQh+Zp
 n8YlsOC7ecIS5aQiCiKR+ZLF7asjxqYDADhbZdUN8FJ31yQF7SLJOi8PBkWyJ9VD/s5
IronPort-HdrOrdr: A9a23:gA+brKGoIY7cso8VpLqEi8eALOsnbusQ8zAXPiFKKSC9F/byqy
 nAppkmPHPP4gr5O0tApTn/Asa9qBrnnPZICOIqUYtKMjOJhFeV
X-Talos-CUID: =?us-ascii?q?9a23=3Aw/UzmmgsXLOukkKfoZL1jFVz+DJuLELt5lrIfXS?=
 =?us-ascii?q?CAHtpd4y5ZXKKpIlbnJ87?=
X-Talos-MUID: =?us-ascii?q?9a23=3Auj0hJA5Ds/cjZt3BVvlRBqdAxoxT2/y2BXsjiqk?=
 =?us-ascii?q?mhMCkHHZMPhyzvAqOF9o=3D?=
X-IronPort-AV: E=Sophos;i="6.03,222,1694750400"; 
   d="scan'208";a="128248712"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Y+Wr53o8djTvUjdanVrjXlnu9hQE+I6zvyqty3Vq+UNgvKEQ7Mc2RnIDJZWd1JXSL8B/s1dLd+t8ek0h7aA9RlTvAArfxZWhNPW9TmNcQTBQdOOOSlD2LtCiqAAhd3kOqgssnMv73QQPZTjtDk+DOuQpse7mDTCFoPGu/1QTYEepPzw4Pyb+N01Z2GhEzTw+Xg3ZLHAtu5frZFxZh8vfEbUFRAYuD6jIcd93wTbL6bpkAyoIVzQozcS2z+v0JapDqisA9CRNNtBW84sawkPsHh6GHYiwYZEppospdzhCYOb4gIW1kFqdfQfgdlRvGX4MbRLr/77zi7SouU9nd4HQIQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=b8Mkb1dxJSxWyiRyjTHtU5xXSWm8UuOAXHZy9DWqhnM=;
 b=D/6JoH82Zi0NBNM7Li3xTZVBoewJ/hrPvlqUxDO+co1m27CxrdOZgrAqvBc77DfzHOoUz23z+tZ+IKZiCCMoC1PGQ65C/QsWOu8eKqdTUh2NKaFrEATdbSkm9YapPiVInghW21IQIlm5pnQ7Y3Wit7DbG7Ck4Xv74Ps5be7Nw5hfUZmXpZbMnNAfEsOxfaveSTKqSDgD67pb0qy/DF/bVqPmSr5MLO3Jr9TZrOnDS6LPRdvUlP+Jko0HomkRDsgGrcDkDQgsRESagAMqvQ1WHeKPWxxaYoqC1oI8H5o6Fx+IW/iPZLRdKdUt9f4bixLx+FoBxVGj2vGzgtKg2Da6pA==
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=b8Mkb1dxJSxWyiRyjTHtU5xXSWm8UuOAXHZy9DWqhnM=;
 b=nAMze2fWGMPcHjEXutTz7HYZGlvi+wYrZpUhcKQlbrv9cCvuFC9NKa48d9sL8ulSBQWWbGh/brVzEKH6A7AoNwl3zK6ojItbBx9XG8t2P+ECFuXWLuW//1BRJI3DLgwntcwKy06LwjZb7danw83G9uiE/8f0qeHblX5jE9mzJ28=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Fri, 13 Oct 2023 13:36:02 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Alejandro Vallejo <alejandro.vallejo@cloud.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
	Xen-devel <xen-devel@lists.xenproject.org>,
	Jan Beulich <jbeulich@suse.com>, Wei Liu <wl@xen.org>,
	Henry Wang <Henry.Wang@arm.com>
Subject: Re: [for-4.18][PATCH 1/2] xen/x86: Add family guards to the
 is_zen[12]_uarch() macros
Message-ID: <ZSkrohpG69OU8M8y@macbook>
References: <20231012172601.22600-1-alejandro.vallejo@cloud.com>
 <20231012172601.22600-2-alejandro.vallejo@cloud.com>
 <06c4df56-8118-4f11-843a-7e4ae81f2464@citrix.com>
 <652928c3.170a0220.37d5e.7636@mx.google.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <652928c3.170a0220.37d5e.7636@mx.google.com>
X-ClientProxiedBy: LO4P123CA0215.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:1a5::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_|SN7PR03MB7057:EE_
X-MS-Office365-Filtering-Correlation-Id: 8cbcfe17-7f53-414b-073c-08dbcbe09810
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:
	Kk7CnPISXdaGJEPOoM05ooAqsdYx1FqK9RUUSKSn01aiZcBALKeM3ui6pe0I144p2vEA7qE+4CgTAixR0BaKVCMtZDACCjRsgjR2Yb2Kd/FJkcl3iu9aXf69EY4SnMMxxAwwJeP77H5ak+gyDqEN3eIt4uI4fdHds5+j8oZ+IG6xiDpjdZlWlzGl7OGyH88ZuxFzpH8ofhO7HbVxWAf2EjFUsmtL73DfXUxGr6QEHMfEnPlr8WE0jKo8WC6CLHKwNcmEEdLDV36oEdPD+DdvVrbsGE7Z7a3TTNCS+Rsn0FuOPpXoQ9whO3ajcr/qGg1DEKCIwrtdlQ8r3dCoQ+9llaVpz4EO7/sU0f5NOk7AGEeHdVX9erz8l/fzxcx+bnaoObXixuUS/6utTgvao+28DQGnm25v+5Rxsc8lDKm1BdMu8YcVp9JNqkAGZyM5weZC8VIXIEH9XKI1kfPvEMZ1y931ejhMx2R78FYPJHQqEjtFenTl/Tq6nUuKjQ+P+s+h8KfLEZd98MOE2yk2/N96QnWGbWeL3p4ilPjC5KuutfQ=
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)(366004)(346002)(376002)(39860400002)(230922051799003)(1800799009)(186009)(451199024)(64100799003)(966005)(66899024)(53546011)(6512007)(9686003)(26005)(86362001)(85182001)(38100700002)(66556008)(83380400001)(6506007)(6666004)(8676002)(6486002)(82960400001)(478600001)(6916009)(8936002)(33716001)(66946007)(4326008)(2906002)(66476007)(41300700001)(54906003)(316002)(5660300002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?T0prQXFlYTNhc2ZJczVLT3AwVmI2VHR1Z2VpNVJpUEtPdm9kVWU2TnY5Q0Vu?=
 =?utf-8?B?TzAwcVkvMEVzM3dUL1RMRU1EUTlMTWl2WUpPMTBKMndBOVhXSlh3c01hMXc1?=
 =?utf-8?B?amtUbGIraTYrYkpWOFVjdXpvV3hkOTc5VlN0VFM5Mkd0WURjTm9SbENlZGQz?=
 =?utf-8?B?NVBtYmdpcC9uWU5iQUNhK0RLcU53ZVdjNy9aRE84QUNrU1JTZjI0OVZsOVlu?=
 =?utf-8?B?S25OL0t1RG51VThkMmh4RURmUE9vRFREa0hWSmpCcHpEOFdWMGVHVlp2c0tK?=
 =?utf-8?B?eG5tMWNETTZYMWNsT3pHMHRIUDVvaFZNZmh2MDNGU2lMTTFHOHNGRGpQbktT?=
 =?utf-8?B?dFpCVjRKOFc3ellEWjZxUXdMUHdBbWRVMzJnUlhCWVBvMkdBeHBVOXZjWXhL?=
 =?utf-8?B?ODZoK1RSN0FNUm5sTjBTdDRSUUU1cm4wZDVoM1BaaVVMbjJPc2lHTE5kNCtR?=
 =?utf-8?B?UVdaUzlQM3NlRWd0TFJ0SXZHZTB0ZEw5azU4emJ5ZDhHRHZtenNYV09XT2li?=
 =?utf-8?B?VzhQT3ptRTY0cFRSRkRVVUV1VXU1QjFsbytncjJKM3E2YjhOYitDajJTM0J1?=
 =?utf-8?B?L2IzamY2ZzcrbFAxVkRmRzJhZzlwMzNvR3BjK1lYbExHb0xNSzJXTEhxUmZp?=
 =?utf-8?B?QjdXS2c2dE5ZZmU3R0toRGNnS2JSRERtSEh4MGtwNUpHT3h1NG1Sa01NNGha?=
 =?utf-8?B?YTE4STJjMElJWWs3VFd5UjVVWXJLMUtIRDM3YkZxdGdQZHVpUmVoSTI2Vksw?=
 =?utf-8?B?WlF1TERyZGgrUnNBeXVvQ3FScEpsMENOdHorZ2w1SXdOVW9ORnlWRVd2M3E2?=
 =?utf-8?B?aE5OTGk3M3Rwb05wSEEzVjRLSHhXNzhqek5PMXlMZXhVdVA1WTJqTWFlQmll?=
 =?utf-8?B?UEQ0RzJXZ0Nhcit5SkFVQlNWd3BvNHdVZXEySEl6S1JWRFNXcTBMMVhaRTRr?=
 =?utf-8?B?WVhSSnRJbzFrRnZGOFlxaFUzUkNsMW9Wa3VFbzcwbEQ4N0pUMjE4b0NISDZ2?=
 =?utf-8?B?eU4ydUNXT2Uzay8vZ2FjbWZNOFg2SFVvTWJia0VZSWU4LzVQQSsrQ040RmxX?=
 =?utf-8?B?cVRYbS9jUHA3MFVpVkZOUDhsbUNoMmFacyt0bUpLYUZONXV3aDNBNXp5dmZt?=
 =?utf-8?B?WGJCVExWVmxUdUxXM2doNDVlcTNBWlNSTkF4WG0vNjlRazlNcXNLN0NRayta?=
 =?utf-8?B?QkFDQmwyL2llSnlnZzYwdUFzWFFUTkxxcUhkMlVaRVJKcnVFdTZQZExMOXFQ?=
 =?utf-8?B?cENwdEpMY2tWdU9hV3htV1Z5VE93UE03SU5yd0hTVUN3YkxjV2UrL3ZrTUhV?=
 =?utf-8?B?cGhzZkFqbnB3RVo0M2s5dUgvcXQ4b2pmNE5ORXMzbkYvK09ySGlWenhSN2NF?=
 =?utf-8?B?NHhFR21iUy9LVi9DV2ZEQlNCUzlQSlhCcmlTc3hEZnJKSUlDcHhleWI0elpP?=
 =?utf-8?B?V3pvM1V0cFg1T0RJaWx2MmxjWE1zVWdHUEFRdm91R3BaRUVFcjYxMG5qajJq?=
 =?utf-8?B?dWdsK0czWUU1RWpFbnRPbTFqOUFZUGtNbmR2ZFRSN2pXYXRMaDREUGdMbTlE?=
 =?utf-8?B?VWxRaWVrOTl5Y1hBbkltUWJ1NXdjOENiS3djSjVlMjJpV1V4NldEbVRkK2Mv?=
 =?utf-8?B?QUwzYzZSanczL0o5QXN3eit6dU81b1E0bHZYQ25BK1B2VC9UejNacXJaQzZD?=
 =?utf-8?B?elArK2ZLZWQ1Tm9uc3Q1N2xDRUxiUkMxa1RaRm1pbkpadDVqYXRDSW1nQ1k0?=
 =?utf-8?B?YjI5SE1GaFRPNVhsVkkwaDJsYUxsSWtxNHFudDB6OTFsSkJOUmJYWnJ4dW5w?=
 =?utf-8?B?N0JjY1BJc0ViVHkrU2xwbkg1aVhoNTYzdkJzU0xQMmd6bno2RDdPbDdCd051?=
 =?utf-8?B?bGcvOC9lUVZYMTZ2aXc0V045ZEMrRkMwMHdSQy83cXhrM1dzR0RHYllOMmFy?=
 =?utf-8?B?bEp3NHdWd2JKOW5YWUN4TUs5WmllalpaTGtUSVQreG1ZSjAwUTZmT1ZvbVhk?=
 =?utf-8?B?U2lpNkpJSjBvK2p5ZzdYWkJHM29oaDdERXJFTU43WFhjalcrd0hwaDRvZlpC?=
 =?utf-8?B?c2VxN2c5ZUN0VWlqZ05JcTVhZFdhb0ljcFh1WEtpL3ZXbTZIWG1adWpLam1J?=
 =?utf-8?Q?AWRYnyvoGt8rYsqZYNk0e1rs+?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	F7mIJRLByaUDjyqUxQCgwtP6l0ysJKMM//rZg5csjjp/syvjNkKeanuivKpgIE3tb30umGeGOTOV+yKa6lZ1O/7yz+yz0zg/CifsA+tSTmdXPrM/ljuuM0mwA6JqJ74Xnja5SqnuQGzMLDInZ0IwMDt7kLgpgkcLwWpVJNqoFHhvHtg+NB2hYH7wXIV5LVT5PBZ0UX1zSKibq2RAxs0q4ZptdpIAGfldKgEFc5g1wGuN0njpXyRBzPm5qG6CQdRFauuVj/ggszGbaGjSd/NNjN0E3+Gt1py3NGOg6z3fFp0olXEG7VXHxnA860hzqJu8CZ1KvO9ZklJ/eC7/se/HW7S5x3FMUL9Z97rQGZm+1WlK+5F8CqGU4zSfS06agTxFa16lNwoDmUUxXC0g0uny4o33IX2wkAlzQAqUOBYj4y1ePfloNZ8x4rJahfO91roBnJblsGSfQmN0Ec9unuv4BH0148lKzwmUYO2+CQ1dzc+SSB9a4OtP8lDCELsHzSQgdj6HvbvZ3G0ltCveyvk+FI52t6BQVbvGsvN4uOpqifHAw6ugODFaBzEkEoIf4PGJv6M1jICbfjPeLfPa8QKwXUHz8INFCUcFJAhypVZT5Xl6kuDbqRkTDPxzxk7qZ3AF7XPRCQS2RPkU7mV8kVPdgEtIxDsFpCinbAbvAeZ4zv6wOc2lOZsyxiplG+i8s+xpPPeYyRBewkRteilTXYF5rB9rxu6DxB4+c6Jmvp3NW416uNcEymN2yqOcwmVAshmy2X5bmrBRFSQQlrUuWYRsHfbNnI+qM2ex3M/lA0mp9IPH5oNjrYq0gCEds3HIYsxF4Ym1XLvRZ1p0SIfwBG5myJ8LxV6CH464ZIQsJkxHO2Tdljp8AfoYnVjrvKx11aSj
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 8cbcfe17-7f53-414b-073c-08dbcbe09810
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Oct 2023 11:36:09.0310
 (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: 2TsNEYG/apT0oMwMc3yo31OnjZJ4zwJhxSmmWP+gqb44cIkp4Iq63tg/1pNXZnndS45THjmVHF3g4O59Rwl3xw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN7PR03MB7057

On Fri, Oct 13, 2023 at 12:23:43PM +0100, Alejandro Vallejo wrote:
> Hi,
> 
> I'll just remove this patch (and amend the next) in the interest of having
> it committed early. That said...
> 
> On Fri, Oct 13, 2023 at 10:14:45AM +0800, Andrew Cooper wrote:
> > On 13/10/2023 1:26 am, Alejandro Vallejo wrote:
> > > It slightly simplifies the code that uses them at no real cost because the
> > > code is very rarely executed. This makes it harder to confuse zen uarches
> > > due to missing or mistaken family checks.
> > 
> > I'm afraid I disagree.
> As it stands, it's a matter of time before a bug of this form creeps up. Particularly
> because it reads very innocent.
> 
>    if (is_zen1_uarch())
>       fun1();
>    else if (is_zen2_uarch())
>       fun2();
>    else if (is_zen3_uarch())
>       fun3();
>    else if (is_zen4_uarch())
>       fun4();
> 
> Particularly if the bodies of each conditional are big enough that you lose
> track of the family you're dealing with.
> 
> > 
> > It's bogus to do a family check without a vendor check.
> I can get behind that. I didn't include the vendor check because by and
> large these macros are used in vendor-specific areas. Would that appease
> your concerns? Whenever the macros are used we're in glacially cold paths
> anyway.
> 
> > By making this
> > change, you're separating (spatially in code, and therefore cognitively)
> > the two checks that it's important to be able to cross-check.
> IMO, It's no different from separating the heuristic from the vendor/family
> check. What causes definite cognitive load is (as a reader) having to
> remember what particular fields must be read off boot_cpu_data in order to
> discriminate zenN, which of them are co-familiar and so on.
> 
> > 
> > > diff --git a/xen/arch/x86/include/asm/amd.h b/xen/arch/x86/include/asm/amd.h
> > > index d862cb7972..5a40bcc2ba 100644
> > > --- a/xen/arch/x86/include/asm/amd.h
> > > +++ b/xen/arch/x86/include/asm/amd.h
> > > @@ -145,11 +145,12 @@
> > >   * 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.
> > > + * The caller is required to perform the appropriate vendor check first.
> > >   */
> > > -#define is_zen1_uarch() (!boot_cpu_has(X86_FEATURE_AMD_STIBP))
> > > -#define is_zen2_uarch()   boot_cpu_has(X86_FEATURE_AMD_STIBP)
> > > +#define is_zen1_uarch() ((boot_cpu_data.x86 == 0x17 || boot_cpu_data.x86 == 0x18) && \
> > > +                         !boot_cpu_has(X86_FEATURE_AMD_STIBP))
> > > +#define is_zen2_uarch() (boot_cpu_data.x86 == 0x17 && \
> > > +                         boot_cpu_has(X86_FEATURE_AMD_STIBP))
> > 
> > What leads you to believe there aren't Hygon Zen2's ?
> The same argument that a Hygon zen2 supports STIBP. Having seen neither HW
> nor docs all that's left is divination skills :)

There is at least one reference online, from:

https://www.tomshardware.com/news/amd-zen-china-x86-ip-license,39573.html

"THATIC* was a single-generation technology license, and there are no
additional technology licenses," Su explained, though she did not
clarify if the decision not to extend the technology transfers was a
direct result of the trade war. That means that the technology
transfer, which provided THATIC with access to the first-gen Zen
microarchitecture, will not be extended to allow the Chinese chipmaker
access to AMD's Zen 2 microarchitecture."

* Tianjin Haiguang Advanced Technology Investment Co. Ltd. (THATIC)

So I would expect there aren't any Hygon Zen2 given those claims, but
again that relies on how much you trust tomshardware.com.  The article
seems to have been reviewed by AMD as some changes were requested.

Regards, Roger.


From xen-devel-bounces@lists.xenproject.org Fri Oct 13 11:49:25 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 11:49:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616504.958563 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrGfN-0000ev-HP; Fri, 13 Oct 2023 11:49:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616504.958563; Fri, 13 Oct 2023 11:49: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 1qrGfN-0000eo-DL; Fri, 13 Oct 2023 11:49:17 +0000
Received: by outflank-mailman (input) for mailman id 616504;
 Fri, 13 Oct 2023 11:49: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 1qrGfM-0000ee-M2; Fri, 13 Oct 2023 11:49: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 1qrGfM-0007Gv-HO; Fri, 13 Oct 2023 11:49: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 1qrGfM-0007jX-1h; Fri, 13 Oct 2023 11:49:16 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qrGfM-00089b-1G; Fri, 13 Oct 2023 11: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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=iyAwONscxjr//Q3HMnG7wCmU40OwLuBx2D07YdIKUdg=; b=Fzf8Y2zDmF8yPTebI2QL4edq2J
	rWKY4QI+yPFL1G0bsM3Am67kn8kjYHVwrbrDnpqgRKiSBsYlPx4VF9ZbjTEXjwmWvYlODVGM+hh1g
	iLa2NWOtXI3AOUhk+W16WucHsEoo4juKCZVY5CDANS1wz/J6rMp69zF+Mgi5hStOqlCY=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183364-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 183364: 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=9a5bbb2d34ef90ab7d146f11c9c2c0a23fb08035
X-Osstest-Versions-That:
    xen=dc9d9aa62ddeb14abd5672690d30789829f58f7e
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 13 Oct 2023 11:49:16 +0000

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

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                  9a5bbb2d34ef90ab7d146f11c9c2c0a23fb08035
baseline version:
 xen                  dc9d9aa62ddeb14abd5672690d30789829f58f7e

Last test of basis   183340  2023-10-11 06:02:02 Z    2 days
Testing same since   183364  2023-10-13 09:02:04 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
   dc9d9aa62d..9a5bbb2d34  9a5bbb2d34ef90ab7d146f11c9c2c0a23fb08035 -> smoke


From xen-devel-bounces@lists.xenproject.org Fri Oct 13 11:59:31 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 11:59:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616512.958573 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrGpB-0003nf-Db; Fri, 13 Oct 2023 11:59:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616512.958573; Fri, 13 Oct 2023 11: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 1qrGpB-0003nY-At; Fri, 13 Oct 2023 11:59:25 +0000
Received: by outflank-mailman (input) for mailman id 616512;
 Fri, 13 Oct 2023 11:59: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=Ujq9=F3=linaro.org=leo.yan@srs-se1.protection.inumbo.net>)
 id 1qrGpA-0003nS-6Y
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 11:59:24 +0000
Received: from mail-pl1-x635.google.com (mail-pl1-x635.google.com
 [2607:f8b0:4864:20::635])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id f27c1be2-69bf-11ee-98d4-6d05b1d4d9a1;
 Fri, 13 Oct 2023 13:59:23 +0200 (CEST)
Received: by mail-pl1-x635.google.com with SMTP id
 d9443c01a7336-1c8a1541233so15667145ad.1
 for <xen-devel@lists.xenproject.org>; Fri, 13 Oct 2023 04:59:23 -0700 (PDT)
Received: from leoy-huanghe.lan ([98.98.49.106])
 by smtp.gmail.com with ESMTPSA id
 j9-20020a170902da8900b001c5900c9e8fsm3731399plx.81.2023.10.13.04.59.19
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Fri, 13 Oct 2023 04:59: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: f27c1be2-69bf-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=linaro.org; s=google; t=1697198362; x=1697803162; 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=CNRz1GKH8GbFeMxGqOmgpfu4sRiR9UOclOmjFv8HXCs=;
        b=CP2+lO54sTzrHMJ/XObWdTSG9ZF34ygqPkSWGkwM89mhZgotbSRjX5Kzv6naCjO7dh
         J9PJlga676SZOlSmlQ7n2Kg3ydhHnkFTKNQTR/KSz4nEQUoCiT7h/vAC88aDBfVE6hnm
         XzOaV39x8CKvjtxXEiwtX7jFAsQTYPpcl9lx4TpCxjl9FPQDWRTR2/G7ZClcgBFymWcQ
         gha7iibJDUJx4zu+hvSvfBiIvdj1oDOpuxi2XeTUntGJdVITrr5HiNKj8qMIrGoBoglK
         ksO58naaMj+7yqvVWlQOlDglQ2PXRlBITfgzLLpy+udb8WNl5PLBbNtxIxOp5ge2/LGC
         BU6A==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697198362; x=1697803162;
        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=CNRz1GKH8GbFeMxGqOmgpfu4sRiR9UOclOmjFv8HXCs=;
        b=ACGdkAAPKGKLYNKPXQNoSLiHRxtQJVPd0RImXxKyKO1AwbdpfDMDpCFcwxggfu25Lx
         Rt0J2IW7ihvLJlxgd5TTCjxkdhEp7SCCTbi15zEAeuWfA1x3lG432tETLlV9MSxcuZmr
         d6fFVQ4WB0RZoziKUbMMk4aXvQ3VRmOmeb9crWIN6gsp1341SZhCSKYrkev+IXrdp84O
         4zTZHo7PpKCdyOsZhF+R3vZDdv7dEgDtlMchKxBu6TcfZX+BkjEo4tkcN1kBQUlpD4AA
         EIM9GRjx957WDm3H/aZAYrGyGv6O437k+XOS22vQsr0F6KCvOV1QOzHR7dCSq55i6Z5q
         CbIA==
X-Gm-Message-State: AOJu0YwA/ahlN59U4eA06WGyREOVBvuo6mPu0WQ79cYjL1rW6qE5HK1C
	XyvTp48j2AbNkxkMSFelK1PV0MIfoDCproe1YpcFLg==
X-Google-Smtp-Source: AGHT+IEbFq8tu80hM7pKj5l834Cu4DG7hJfxCFj4PQTK7giy0Kl9Uz05Q+uDPfv6nmG9hdscjifUMQ==
X-Received: by 2002:a17:902:c084:b0:1bb:b30e:4364 with SMTP id j4-20020a170902c08400b001bbb30e4364mr21197944pld.39.1697198361514;
        Fri, 13 Oct 2023 04:59:21 -0700 (PDT)
Date: Fri, 13 Oct 2023 19:59:17 +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 v3] xen/arm: Skip memory nodes if not enabled
Message-ID: <20231013115917.GB928468@leoy-huanghe.lan>
References: <20231013102929.1266849-1-leo.yan@linaro.org>
 <b8312c46-c1f8-455f-b277-b36a1dc636ab@amd.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <b8312c46-c1f8-455f-b277-b36a1dc636ab@amd.com>

Hi Michal,

On Fri, Oct 13, 2023 at 01:00:12PM +0200, Michal Orzel wrote:
> Hi Leo,
> 
> On 13/10/2023 12:29, 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.
> The first part about the status is a bit ambiguous.
> How about (this can be done on commit):
> Currently, Xen doesn't check the status property of memory/reserved
> memory nodes, which may lead to the following issues:

Agreed. Will send the new patch soon.

[...]

> Reviewed-by: Michal Orzel <michal.orzel@amd.com>

Will add your review tag. Thanks for review and suggestion!

Leo


From xen-devel-bounces@lists.xenproject.org Fri Oct 13 12:05:00 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 12:05:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616517.958583 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrGuU-0005OB-4m; Fri, 13 Oct 2023 12:04:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616517.958583; Fri, 13 Oct 2023 12: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 1qrGuU-0005O4-1P; Fri, 13 Oct 2023 12:04:54 +0000
Received: by outflank-mailman (input) for mailman id 616517;
 Fri, 13 Oct 2023 12:04: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=Ujq9=F3=linaro.org=leo.yan@srs-se1.protection.inumbo.net>)
 id 1qrGuS-0005Ny-W7
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 12:04:53 +0000
Received: from mail-pl1-x629.google.com (mail-pl1-x629.google.com
 [2607:f8b0:4864:20::629])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id b5ae1354-69c0-11ee-9b0e-b553b5be7939;
 Fri, 13 Oct 2023 14:04:50 +0200 (CEST)
Received: by mail-pl1-x629.google.com with SMTP id
 d9443c01a7336-1c9b7c234a7so17448845ad.3
 for <xen-devel@lists.xenproject.org>; Fri, 13 Oct 2023 05:04:50 -0700 (PDT)
Received: from leoy-yangtze.lan ([98.98.49.106])
 by smtp.gmail.com with ESMTPSA id
 i2-20020a170902c94200b001c9bc811d4dsm3715579pla.295.2023.10.13.05.04.46
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Fri, 13 Oct 2023 05:04: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: b5ae1354-69c0-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=linaro.org; s=google; t=1697198689; x=1697803489; 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=ry4/LCNTdbZ4EvfbzADgRgQgr8xvdGsE0jpEd2PH6lQ=;
        b=qgPisz8zBz2+hwCiFLzdw7Y6A3bHsD7v6K5k7U1VKaK0d1T7SQAHKaXImCIv+7PB5W
         uYrYDQjdhCCtKGDxNE4u8jemI9NDA4BNnVutqAfx7pvWklmD5QaO42UZZy0vwSg88tb1
         Q64Njiy45zgfcYWfRE1jUEPxcAEGI5M0vQWQsi2xTMcVrHZjrMR+u/3YHBgeCNVPp2ov
         aXVpkRCBLyCtPz6vs7UZbCDIApjaIZqx4J7CBhh6oyvDKPWjoqlzJki4Nali85Iidtzi
         9R4AzW9XcfcZVhE3lWupIOReiHyLqqUnY5wqmR9yWH6ySZOw1sAGbkzZdH8NCt+89iEO
         A2fw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697198689; x=1697803489;
        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=ry4/LCNTdbZ4EvfbzADgRgQgr8xvdGsE0jpEd2PH6lQ=;
        b=s0wAUeYrf/d0gDTCUU4hN9uUr0ULQnpgQ4Nd8nHGHPbiG2bFFLeTcFfB3dLlp1lfqT
         kq/0bE5pa2JuWgLh3LZrpEoybkpZ6GWNI4UVFDEoW/ocQTHAawjb7ZUv/5jo6OG6Y+f0
         6/GVI0+s3oI1BNMBsQ42OjudNr9eim6SWb2VZzteASETNuWJhqLVxTXisZum/vLvQfC2
         jErfR+pASA6BF9htRxgdBQvUXPDcyULFkAxKW6oM0OU8uGK2yVmtVGR4c3jtxnbSEib/
         78okCDR8kkiN7KUD+FmC11qyI0Dx6IApIkzv5e/mBXg/StbgrnL8q06SH9IFugJNYxEN
         oGow==
X-Gm-Message-State: AOJu0Yxfrzo1JNL9azf96VCCZZtO0X9OHjlPM3uOaZG7w5hdcy05FCd6
	MPKyRpjQrmJ3ASIlV5z0WExUmdWC7MPyy7KJebUB6A==
X-Google-Smtp-Source: AGHT+IEl56i0P8YmfP8mZyHyf948PqBwA9LZkW5U7zuhilo2RaUZJvsHq6DyAjEEZijI7IX/TcGh4g==
X-Received: by 2002:a17:902:c948:b0:1c5:fa71:22fb with SMTP id i8-20020a170902c94800b001c5fa7122fbmr33573331pla.65.1697198688781;
        Fri, 13 Oct 2023 05:04:48 -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 v4] xen/arm: Skip memory nodes if not enabled
Date: Fri, 13 Oct 2023 20:04:42 +0800
Message-Id: <20231013120442.1267488-1-leo.yan@linaro.org>
X-Mailer: git-send-email 2.39.2
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Currently, Xen doesn't check the status property of memory/reserved
memory nodes, which may lead to the following issues:

- 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>
Reviewed-by: Michal Orzel <michal.orzel@amd.com>
---

Changes from v3:
- Refined the commit log to avoid ambiguous description (Michal Orzel).

Changes from v2:
- Added checking for the DT property length (Julien Grall, Michal Orzel).

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 | 21 +++++++++++++++++++++
 1 file changed, 21 insertions(+)

diff --git a/xen/arch/arm/bootfdt.c b/xen/arch/arm/bootfdt.c
index 2673ad17a1..d73f8e4971 100644
--- a/xen/arch/arm/bootfdt.c
+++ b/xen/arch/arm/bootfdt.c
@@ -16,6 +16,24 @@
 #include <xsm/xsm.h>
 #include <asm/setup.h>
 
+static bool __init device_tree_node_is_available(const void *fdt, int node)
+{
+    const char *status;
+    int len;
+
+    status = fdt_getprop(fdt, node, "status", &len);
+    if ( !status )
+        return true;
+
+    if ( len > 0 )
+    {
+        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 +115,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 Fri Oct 13 12:27:17 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 12:27:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616523.958602 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrHG6-0004BB-3x; Fri, 13 Oct 2023 12:27:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616523.958602; Fri, 13 Oct 2023 12:27: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 1qrHG6-0004B4-1N; Fri, 13 Oct 2023 12:27:14 +0000
Received: by outflank-mailman (input) for mailman id 616523;
 Fri, 13 Oct 2023 12:27: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=Ujq9=F3=linaro.org=leo.yan@srs-se1.protection.inumbo.net>)
 id 1qrHG4-0003w8-CN
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 12:27:12 +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 d50942e8-69c3-11ee-98d4-6d05b1d4d9a1;
 Fri, 13 Oct 2023 14:27:11 +0200 (CEST)
Received: by mail-pl1-x629.google.com with SMTP id
 d9443c01a7336-1bf55a81eeaso15805875ad.0
 for <xen-devel@lists.xenproject.org>; Fri, 13 Oct 2023 05:27:11 -0700 (PDT)
Received: from leoy-yangtze.lan ([98.98.49.106])
 by smtp.gmail.com with ESMTPSA id
 b11-20020a170902d50b00b001c452f827casm3768599plg.257.2023.10.13.05.27.07
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Fri, 13 Oct 2023 05:27: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: d50942e8-69c3-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=linaro.org; s=google; t=1697200030; x=1697804830; 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=Pv1k0D1kdZkwZuVzxDjvhu5HxgmMO77wg7lK+YiP6wY=;
        b=MBJgDoWKRraDHm9KNH7oLeiTDc0C2zYHQHEEEq+RPMzn8dNXkjnxjJ/IXoOgmwBLb7
         XoO5DNKxNDENKGFPIQhLCqfzdAaBF78rk7uqLN/bkvFynN9GAjg4TrgJW6kEG358cQE4
         YzkPE/Zcy4NkJ537J8SqpDm6bMnxuel2AI9gK+voHiAVNWoVPUOxTmS04YhMJbnxOWTl
         HnPegvPc/m9fvFfoRqLms/7MOndZLKwXYAlaXGc38jBu9r01XIN9wthCw3kaxPvo9cKl
         wHc3fThq3rJEl+zNP2bEwSihrlqDr5HIZQv7kX+Rd+iNH+ypf0wiF+ohN2txUphlg3n2
         38Kw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697200030; x=1697804830;
        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=Pv1k0D1kdZkwZuVzxDjvhu5HxgmMO77wg7lK+YiP6wY=;
        b=fhEZg+luSTYYjV/0wIotYJ9/KfGuung0I1Ox2vMoGkpk1LoVRciwHS/Cnvh+xk22dl
         8s7dgNJfsi71oFtG0FfhYGYkIAFsYacR+GzUbbnAoI0PY0o4BPdT8IT0cKlbhXqb2vVz
         HxO95z8Zl/n7PD+fUWpx1uj0+1u5G2EJRtxQEoO61eO1EZUEPJgLXp5S61zRXKGHQdSo
         d98PWVzhtN2LqZu5KSCNV8nD10V7NvXeci/G2/Txrgk+zHQ8LqLr/zO8eGIJCrbfBvm0
         ctG5QWY9oXoEQVVyu68DlQ789YWd6eOlGeHN89IY3UZxR9qXEybMea038Gt5zhFPQupm
         5AyQ==
X-Gm-Message-State: AOJu0YxyfMCwkaXYlxRPW8gFWhyNiiHvXwA8Vg7ch0jHY1B9kcxJ2M7x
	GtIIxPtcjSjGT77xBrCkALoKvEIcwuCqciFh7oPm+g==
X-Google-Smtp-Source: AGHT+IENyvC43ug6znIxkRhGl1AWpw6fugWjRbAMzreFwKB9uK2eamOhSD2Xh5Xlrhu+9dHGqdqoGg==
X-Received: by 2002:a17:903:230b:b0:1c7:3558:721a with SMTP id d11-20020a170903230b00b001c73558721amr32794249plh.58.1697200030307;
        Fri, 13 Oct 2023 05:27:10 -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>,
	Julien Grall <jgrall@amazon.com>
Subject: [PATCH v4 1/2] xen/arm: Add macro XEN_VM_MAPPING
Date: Fri, 13 Oct 2023 20:26:57 +0800
Message-Id: <20231013122658.1270506-2-leo.yan@linaro.org>
X-Mailer: git-send-email 2.39.2
In-Reply-To: <20231013122658.1270506-1-leo.yan@linaro.org>
References: <20231013122658.1270506-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.

Acked-by: Julien Grall <jgrall@amazon.com>
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.39.2



From xen-devel-bounces@lists.xenproject.org Fri Oct 13 12:27:17 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 12:27:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616522.958593 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrHG3-0003wL-TY; Fri, 13 Oct 2023 12:27:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616522.958593; Fri, 13 Oct 2023 12:27: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 1qrHG3-0003wE-Po; Fri, 13 Oct 2023 12:27:11 +0000
Received: by outflank-mailman (input) for mailman id 616522;
 Fri, 13 Oct 2023 12:27: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=Ujq9=F3=linaro.org=leo.yan@srs-se1.protection.inumbo.net>)
 id 1qrHG2-0003w8-1I
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 12:27:10 +0000
Received: from mail-pl1-x635.google.com (mail-pl1-x635.google.com
 [2607:f8b0:4864:20::635])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id d36d8259-69c3-11ee-98d4-6d05b1d4d9a1;
 Fri, 13 Oct 2023 14:27:09 +0200 (CEST)
Received: by mail-pl1-x635.google.com with SMTP id
 d9443c01a7336-1c9daca2b85so15287375ad.1
 for <xen-devel@lists.xenproject.org>; Fri, 13 Oct 2023 05:27:09 -0700 (PDT)
Received: from leoy-yangtze.lan ([98.98.49.106])
 by smtp.gmail.com with ESMTPSA id
 b11-20020a170902d50b00b001c452f827casm3768599plg.257.2023.10.13.05.27.05
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Fri, 13 Oct 2023 05:27: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: d36d8259-69c3-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=linaro.org; s=google; t=1697200027; x=1697804827; 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=fMnL4cIfhKjfmwtT67M/o7wtHXbUxDyQP7k1KrTbbUY=;
        b=nrOn8sL8rq/Q9i/PKu898qeG6V4ci5w/RShJVByQRjdvCffVI7L8N3Xf+GQi4tv7Ue
         4vJBbOXKWgkb+dIrDgu0MwQ7JtibEkPpbl7DI54+BCN/bOTFECpthCafKPgxc4oZHXMa
         spt6FCiDTD/zvWa/wx6CNvJ2iejLrYQaFjVtEMby0p5IWXv/IhTjr6+uQD16mPYI9y5q
         mxExXgDlsPinmf98uGdTdDkem/XdbUY0ZmLRJYoWOvjVAfKKy0Fznmq9wxL4od7+HGnT
         nYZXny/2r5p8xiQA8sxfcfPr85LdIf7Zqo0VX2quQPHSNO34LstcG3ZT0T3f/nixkKHz
         dGmQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697200027; x=1697804827;
        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=fMnL4cIfhKjfmwtT67M/o7wtHXbUxDyQP7k1KrTbbUY=;
        b=FrGxpGltNny6hSGINB4jeP+9FvfelxBTBz419qa2Ln470n8O2tTtMF5jjCEXyYRc6v
         iL3i+jZU8cG7jYgGuf++aRCmwRZZLj85TsrEW0ieeuLeEheoY8y4xV4yvZsl3QKqj2V5
         YFGuA+1ceQmnqZ+G0fhRv2Go1aqJxlCkWcrL7qtv4qJSEAqu0lt/gU1j4aof3k43k5WJ
         WQMLtmRISIgYwX7w9kqEfSHsgctH/5HKrn0UBLU0/HUspHixb0sZ0TxYcqm36NbDYNkG
         qGSiNtrJjjxvUJMYVWVqxSG9FMmXkB5325130Zu0cw4+M43Atl9K7SdsFrgSBLnq3r7i
         D2xA==
X-Gm-Message-State: AOJu0YywmQ/P9fNsY29hwBG4pGK/M1r+ExbUOE7Tj/OZMjT3YuEBHAO7
	erWOBqAJ1xs6OJp8Q/w08QchGFKPx2xM79I572uqKw==
X-Google-Smtp-Source: AGHT+IHAwfyPnVYl51JnEEtT3pDBacGWfuBBQGxxPqjlTIEJ0kuJy0clZsE3DaQU8PkRj9bI+jx8JQ==
X-Received: by 2002:a17:903:1c8:b0:1c0:afda:7707 with SMTP id e8-20020a17090301c800b001c0afda7707mr37692403plh.34.1697200027510;
        Fri, 13 Oct 2023 05:27:07 -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 v4 0/2] xen/arm: Enlarge identity map space
Date: Fri, 13 Oct 2023 20:26:56 +0800
Message-Id: <20231013122658.1270506-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 8TB and hence causes Xen panic (see patch 02 for details).

To fix this issue, this series is to enlarge identity map space to 10TB.

Note, I did a smoke test for this patch set, but we have no chance to
test it on the AVA board which reported the issue since the board is
bricked now.  And it's likely we don't need this patch set anymore after
updating firmware on the AVA machine.

Hope this patch set can be helpful for the system with big memory, I'd
leave the judgement to maintainers for picking it or not.

Changes from v3:
- Changed the identity map space from 127TB to 10TB (Julien Grall).

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 10TB

 xen/arch/arm/arm64/mm.c               |  6 ++++--
 xen/arch/arm/include/asm/mmu/layout.h | 17 +++++++++--------
 2 files changed, 13 insertions(+), 10 deletions(-)

-- 
2.39.2



From xen-devel-bounces@lists.xenproject.org Fri Oct 13 12:27:17 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 12:27:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616524.958613 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrHG7-0004QQ-Bt; Fri, 13 Oct 2023 12:27:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616524.958613; Fri, 13 Oct 2023 12:27: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 1qrHG7-0004QF-8e; Fri, 13 Oct 2023 12:27:15 +0000
Received: by outflank-mailman (input) for mailman id 616524;
 Fri, 13 Oct 2023 12:27: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=Ujq9=F3=linaro.org=leo.yan@srs-se1.protection.inumbo.net>)
 id 1qrHG6-0003w8-RR
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 12:27:14 +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 d67de420-69c3-11ee-98d4-6d05b1d4d9a1;
 Fri, 13 Oct 2023 14:27:14 +0200 (CEST)
Received: by mail-pl1-x634.google.com with SMTP id
 d9443c01a7336-1c434c33ec0so15504605ad.3
 for <xen-devel@lists.xenproject.org>; Fri, 13 Oct 2023 05:27:14 -0700 (PDT)
Received: from leoy-yangtze.lan ([98.98.49.106])
 by smtp.gmail.com with ESMTPSA id
 b11-20020a170902d50b00b001c452f827casm3768599plg.257.2023.10.13.05.27.10
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Fri, 13 Oct 2023 05:27: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: d67de420-69c3-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=linaro.org; s=google; t=1697200033; x=1697804833; 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=j80SOex9mExMTkObsMSQYMPmo2OqpvRyqD3vJdtHLVY=;
        b=yyOLlg4McAmcWypYnTkatcCY646rJRuxBptB9kpJ0Fc+u1DrDSrtYlZy25QbUNOSVk
         bnRYK63qgl5+Zd+jYc6oqVdt1leO841HgiR+aBVEYTX2zNITX5wu9iFaElcxMgGWn1dn
         /Odksm8n4JLPjdpSU/4ZpkGS9yG8SOtN9PyLcKyOEdmUnvfHhyx9pjzInFxNwKA8AQwL
         LjNwBtunHp7ZOvgt2obh00muEFuw0J5i2EGzq0+GqfFHdEVSKVCfA8mXyOFqdIEySNik
         Mtb02n0tPnPXvIc1CbYuVe44j84wmwP0Nl1aLvN3xi74H+S1Bm9MnOEmEX/h4M+vWIN0
         diEQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697200033; x=1697804833;
        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=j80SOex9mExMTkObsMSQYMPmo2OqpvRyqD3vJdtHLVY=;
        b=tplX6MaF+aySt+y7kgbutmjCgZ5yai3vyl0/nFsQmWktm5SdUFOVq+OGR/kPDPkFHn
         IWbSgcRSoYyFak1HtAOik0rpkasvkP9f88F+7RLwzHAAxxKUVBC1kKUOxEwMdz32Gy+P
         DvsujUke12k9cWgq6IlYigbN8b9Vo0L+xpepdv+s2iPm2w9GyYoxo8gO24hRUKv60rYg
         5bdIHOjMQSofN2SQ/byATrziEMuqf5aQVVckpCG1OgKViaxNPMVa5V+9BFyw3xrB7ZjM
         PWqb4zjeP9VnMrSUzj+YAdsOrkg5gLOmYf+ouNBGLlylp/OXYNWJSDnyu7a03uehviHW
         ZVEg==
X-Gm-Message-State: AOJu0YyHA6twDQHbxOedLGieYq0nzGA006h4i5vSaHooyk9bqJnpucq2
	09tajA+6N17TTW9KH+6s6NfLlSMitr2CMLZoS418HA==
X-Google-Smtp-Source: AGHT+IE6VFmvCcR0rgfXzM0/7CqJQ6Sq7Q5QXSvgv3E2SF5Jd1fHe9R21VmKsdLrn/x6Eao/81iFtA==
X-Received: by 2002:a17:902:c40a:b0:1c7:5a63:43bb with SMTP id k10-20020a170902c40a00b001c75a6343bbmr33461164plk.8.1697200032760;
        Fri, 13 Oct 2023 05:27:12 -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 v4 2/2] xen/arm: Enlarge identity map space to 10TB
Date: Fri, 13 Oct 2023 20:26:58 +0800
Message-Id: <20231013122658.1270506-3-leo.yan@linaro.org>
X-Mailer: git-send-email 2.39.2
In-Reply-To: <20231013122658.1270506-1-leo.yan@linaro.org>
References: <20231013122658.1270506-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 10TB, allowing module loading
within the range of [0x0 .. 0x000009ff_ffff_ffff].

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..eac7eef885 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 - 0x000009ffffffffff (10TB, L0 slots [0..19])
  *
  *  Reserved to identity map Xen
  *
- * 0x0000020000000000 - 0x0000027fffffffff (512GB, L0 slot [4])
+ * 0x00000a0000000000 - 0x00000a7fffffffff (512GB, L0 slot [20])
  *  (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])
+ * 0x00000a8000000000 - 0x00007fffffffffff (512GB+117TB, L0 slots [21..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     20
 #define XEN_VM_MAPPING                  SLOT0(IDENTITY_MAPPING_AREA_NR_L0)
 
 #define SLOT0_ENTRY_BITS  39
-- 
2.39.2



From xen-devel-bounces@lists.xenproject.org Fri Oct 13 12:50:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 12:50:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616536.958623 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrHcj-00030S-6t; Fri, 13 Oct 2023 12:50:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616536.958623; Fri, 13 Oct 2023 12: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 1qrHcj-00030L-40; Fri, 13 Oct 2023 12:50:37 +0000
Received: by outflank-mailman (input) for mailman id 616536;
 Fri, 13 Oct 2023 12: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 1qrHci-000309-0d; Fri, 13 Oct 2023 12: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 1qrHch-0000Jn-Oh; Fri, 13 Oct 2023 12: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 1qrHch-0001K9-9a; Fri, 13 Oct 2023 12:50:35 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qrHch-0006GB-97; Fri, 13 Oct 2023 12: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=G0daWcz/eq+GI7I9l/MrlO+R9wrOBbdBXqDAAcy2Dnk=; b=bOivGzrUuShwj9G0McETai9D5M
	rlj8Ma9wcWg8uRElRUPih5m7wNyAQYSXU2HcAgkZnJiWoJOXijdqF3JkHxwY7nKNIgU+xXcVE5hvV
	Tnr1Zav6DiOUk1QFkpBvsg/cSwxtnmyxJGu9HhFvBR1V8U54y/5KsoSRIQSGaQqLBgK0=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183362-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 183362: tolerable FAIL - PUSHED
X-Osstest-Failures:
    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-armhf-armhf-libvirt: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-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-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: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-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu: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-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-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-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-amd64-amd64-libvirt:migrate-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
    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-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:saverestore-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-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=20f4757fa5ed2d9a7746d01b8950cfe04d593a0a
X-Osstest-Versions-That:
    linux=401644852d0b2a278811de38081be23f74b5bb04
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 13 Oct 2023 12:50:35 +0000

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

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 183359
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183359
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183359
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183359
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183359
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183359
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183359
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183359
 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-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          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-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  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-amd64-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-amd64-amd64-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-amd64-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-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-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-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-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                20f4757fa5ed2d9a7746d01b8950cfe04d593a0a
baseline version:
 linux                401644852d0b2a278811de38081be23f74b5bb04

Last test of basis   183359  2023-10-12 13:01:48 Z    0 days
Testing same since   183362  2023-10-13 02:07:59 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Kanner <andrew.kanner@gmail.com>
  AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
  Arnd Bergmann <arnd@arndb.de>
  Björn Töpel <bjorn@rivosinc.com>
  Charlotte Tan <charlotte@extrahop.com>
  Christian Marangi <ansuelsmth@gmail.com>
  Dan Carpenter <dan.carpenter@linaro.org>
  Daniel Borkmann <daniel@iogearbox.net>
  David S. Miller <davem@davemloft.net>
  David Vernet <void@manifault.com>
  Deepak Saxena <dsaxena@plexity.net>
  Dinghao Liu <dinghao.liu@zju.edu.cn>
  Dmitry Torokhov <dmitry.torokhov@gmail.com>
  Drew Fustini <dfustini@baylibre.com>
  Eric Dumazet <edumazet@google.com>
  Eugen Hristev <eugen.hristev@collabora.com>
  Geert Uytterhoeven <geert+renesas@glider.be>
  Gerd Bayer <gbayer@linux.ibm.com>
  Gustavo A. R. Silva <gustavoars@kernel.org>
  Haibo Chen <haibo.chen@nxp.com>
  Hal Feng <hal.feng@starfivetech.com>
  Ilya Leoshkevich <iii@linux.ibm.com>
  Ioana Ciornei <ioana.ciornei@nxp.com>
  Jakub Kicinski <kuba@kernel.org>
  Jamal Hadi Salim <jhs@mojatatu.com>
  Javier Carrasco <javier.carrasco.cruz@gmail.com>
  Jens Wiklander <jens.wiklander@linaro.org>
  Jeremy Cline <jeremy@jcline.org>
  Jeremy Kerr <jk@codeconstruct.com.au>
  Jisheng Zhang <jszhang@kernel.org>
  John Watts <contact@jookia.org>
  Kory Maincent <kory.maincent@bootlin.com>
  Krzysztof Hałasa <khalasa@piap.pl>
  Kuniyuki Iwashima <kuniyu@amazon.com>
  Linus Torvalds <torvalds@linux-foundation.org>
  Linus Walleij <linus.walleij@linaro.org>
  Lorenz Bauer <lmb@isovalent.com>
  Louis Peens <louis.peens@corigine.com>
  Lucy Mielke <lucymielke@icloud.com>
  Lukas Magel <lukas.magel@posteo.net>
  Macpaul Lin <macpaul.lin@mediatek.com>
  Magnus Karlsson <magnus.karlsson@intel.com>
  Marc Kleine-Budde <mkl@pengutronix.de>
  Marcin Szycik <marcin.szycik@linux.intel.com>
  Marek Behún <kabel@kernel.org>
  Markus Schneider-Pargmann <msp@baylibre.com>
  Martin KaFai Lau <martin.lau@kernel.org>
  Mathieu Poirier <mathieu.poirier@linaro.org>
  Matthias Brugger <matthias.bgg@gmail.com>
  Michal Koutný <mkoutny@suse.com>
  Michal Swiatkowski <michal.swiatkowski@linux.intel.com>
  Mikhail Kobuk <m.kobuk@ispras.ru>
  Miquel Raynal <miquel.raynal@bootlin.com>
  Moshe Shemesh <moshe@nvidia.com>
  Nils Hoppmann <niho@linux.ibm.com>
  Nícolas F. R. A. Prado <nfraprado@collabora.com>
  Paolo Abeni <pabeni@redhat.com>
  Peng Fan <peng.fan@nxp.com>
  Peter Korsgaard <peter@korsgaard.com>
  Radu Pirea (NXP OSS) <radu-nicolae.pirea@oss.nxp.com>
  Ralph Siemsen <ralph.siemsen@linaro.org>
  Randy Dunlap <rdunlap@infradead.org>
  Randy Dunlap <rdunlap@infradead.org> # build-tested
  Ratheesh Kannoth <rkannoth@marvell.com>
  Rijo Thomas <Rijo-john.Thomas@amd.com>
  Roger Pau Monne <roger.pau@citrix.com>
  Roger Pau Monné <roger.pau@citrix.com>
  Simon Horman <horms@kernel.org> # build-tested
  Stefan Schmidt <stefan@datenfreihafen.org>
  Sujai Buvaneswaran <sujai.buvaneswaran@intel.com>
  syzbot+fae676d3cf469331fc89@syzkaller.appspotmail.com
  Tejun Heo <tj@kernel.org>
  Tony Nguyen <anthony.l.nguyen@intel.com>
  Ulf Hansson <ulf.hansson@linaro.org>
  Vladimir Oltean <vladimir.oltean@nxp.com>
  Waiman Long <longman@redhat.com>
  WangJinchao <wangjinchao@xfusion.com>
  Wei Liu <wei.liu@kernel.org>
  Wenjia Zhang <wenjia@linux.ibm.com>
  Will Mortensen <will@extrahop.com>
  Yanguo Li <yanguo.li@corigine.com>
  Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
  YueHaibing <yuehaibing@huawei.com>
  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
   401644852d0b..20f4757fa5ed  20f4757fa5ed2d9a7746d01b8950cfe04d593a0a -> tested/linux-linus


From xen-devel-bounces@lists.xenproject.org Fri Oct 13 13:00:53 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 13:00:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616546.958633 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrHma-0005rJ-8d; Fri, 13 Oct 2023 13:00:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616546.958633; Fri, 13 Oct 2023 13:00: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 1qrHma-0005rC-5Y; Fri, 13 Oct 2023 13:00:48 +0000
Received: by outflank-mailman (input) for mailman id 616546;
 Fri, 13 Oct 2023 13:00: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 1qrHmY-0005r6-Md
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 13:00: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 1qrHmU-0000Xi-6j; Fri, 13 Oct 2023 13:00: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 1qrHmT-0005sF-Uv; Fri, 13 Oct 2023 13:00: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=VpWWoNElwmwC4khg1T5nN+Ajan12DsgeSmFTA+AESSQ=; b=QQtSE/rufp2GmBhXFv0Od4sc01
	Zb0dzExIUGUrndedh1TFpGhZ0MVd3AySeO7rkF0M9wexazGK1fUa+VBHTI9mNEFdEUHXEPZdaTGLl
	IQQ2VeC4PPHgllW4mnaIZjqeSSZIq7bd+owMd7nJ/CvHyTD+MtaPHAdpAWiw8fwP25Es=;
Message-ID: <f973db5f-da72-4aa2-a35e-1e6652b181bf@xen.org>
Date: Fri, 13 Oct 2023 14:00:39 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: Xen 4.18 release: Reminder about code freeze
Content-Language: en-GB
To: George Dunlap <george.dunlap@cloud.com>
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 Andrew Cooper <andrew.cooper3@citrix.com>, Henry Wang <Henry.Wang@arm.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.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>
 <a31ce6cb-6234-5e7f-5cd4-ed190f029811@citrix.com>
 <alpine.DEB.2.22.394.2309271658500.1403502@ubuntu-linux-20-04-desktop>
 <CA+zSX=ZbeUFrfAUJShooJFJ+d89f4xdXfJJ9HoJKRh4UStkTFQ@mail.gmail.com>
 <alpine.DEB.2.22.394.2310121535580.3431292@ubuntu-linux-20-04-desktop>
 <CA+zSX=Y5dMVFM6dVNgBRHxKc0C1e5WGgweQ0FaXXCfAFGH1aPA@mail.gmail.com>
 <a93839b8-932a-4634-9549-081df950afb2@xen.org>
 <CA+zSX=a972GC=_FKK2eGkArPb6RszCHDN0+6JKFJiMjoMpAySQ@mail.gmail.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <CA+zSX=a972GC=_FKK2eGkArPb6RszCHDN0+6JKFJiMjoMpAySQ@mail.gmail.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

Hi George,

On 13/10/2023 12:32, George Dunlap wrote:
> On Fri, Oct 13, 2023 at 12:22 PM Julien Grall <julien@xen.org> wrote:
>> On 13/10/2023 11:16, George Dunlap wrote:
>>> On Thu, Oct 12, 2023 at 11:36 PM Stefano Stabellini
>>> <sstabellini@kernel.org> wrote:
>>>>
>>>> On Thu, 12 Oct 2023, George Dunlap wrote:
>>>>>>> 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?
>>>>>
>>>>> It moves a line from one function (do_domain_introduce()) into a
>>>>> completely different function (introduce_domain()), nested inside two
>>>>> if() statements; with no analysis on how the change will impact
>>>>> things.
>>>>
>>>> I am not the original author of the patch, and I am not the maintainer
>>>> of the code, so I don't feel I have the qualifications to give you the
>>>> answers you are seeking. Julien as author of the patch and xenstore
>>>> reviewer might be in a better position to answer. Or Juergen as xenstore
>>>> maintainer.
>>>
>>> I understand that; my main point is that the change is more complex
>>> than you're characterizing it.  This is information necessary to
>>> understand whether the patch is correct, but it's not in the patch
>>> description, nor in the subsequent thread back in May.
>>>
>>>>> Are there any paths through do_domain_introduce() that now *won't* get
>>>>> a domain_conn_reset() call?  Is that OK?
>>>>
>>>> Yes, the already-introduced and the restore code paths. The operations in
>>>> the already-introduced or the restore code paths seem simple enough not
>>>> to require a domain_conn_reset. Julien and Juergen should confirm.
>>>
>>> There is no "restore" codepath through do_domain_introduce(); it
>>> passes "false" for the "restore" argument.  So we  only have two paths
>>> to consider through do_domain_introduce(): The "not introduced and not
>>> restoring" path, and the "already-introduced" path.
>>>
>>> I'm not sure what the "simple" elements on the branch in
>>> introduce_domain() have to do with whether the content of the page
>>> needs to be cleaned up.  As I said, I don't 100% understand this code,
>>> but it seems like if anything, the reset would be *more* important to
>>> have in the "reintroduce" case than in the "initial introduction"
>>> case, since I'd expect the "initial introduction" case to be empty
>>> already.
>> Indeed, there should be no watches/transactions/buffered I/O for the
>> initial introduction. However, the function is also clear part of the
>> interface because we can't guaranteed it was zeroed.
>>
>> The latter matter for the initial introduction. I believe the rest is
>> just called for simplicity.
>>
>>>
>>>> Doesn't it seem weird to you that we set a connection to CONNECTED,
>>>> notify the domain that it is ready to go, and only *after* that we reset
>>>> the connection to zero?
>>>>
>>>> What happens if a domain starts using the connection as soon as it
>>>> receives the event channel notification and before domain_conn_reset is
>>>> called?
>>>
>>> Yes, it does seem weird, which is why I said the following. :-)
>>>
>>>>> I mean, it certainly seems strange to set the state to CONNECTED, send
>>>>> off an event channel, and then after that delete all watches /
>>>>> transactions / buffered data and so on;
>>>
>>> But just because the current code is probably wrong, doesn't mean that
>>> the modified code is probably correct.
>>>
>>> If the problem is the delay between the xenevtchn_notify() in
>>> introduce_domain() and the domain_conn_reset() afterwards in
>>> do_domain(), would it make sense instead to move the notification into
>>> do_introduce(), after the domain_conn_reset()?  It is, after all, in
>>> response to XS_INTRODUCE that we want to send the notification, not in
>>> dom0_init() or read_state_connection() (which seems to be more about
>>> restoring a domain).
>>
>> I understand that the event channel notification was specifically added
>> for dom0less. But I don't see why we don't want to send it to dom0 as well.
>>
>> Technically, dom0 has exactly the same problem as dom0less domains it
>> boots before Xenstored is running and therefore it may need to know when
>> it is ready to receive commands.
> 
> It seemed to work fine before 2022, when the notification was
> introduced. 

Indeed. But my point is that in theory the behavior between dom0 and 
dom0less domain should not be different. With your proposal we would 
continue to diverge with seems rather strange.

Do you at least agree that on the paper, Xenstored should notify it is 
ready to accept commands the same way for every domain?

> How was that coordination done?

I don't know but Juergen/Stefano might know.

> Will dom0 honor the
> "XENSTORE_RECONNECT" state during bring-up as described in
> xenstore-ring.txt?

Same here.

> 
> Personally I'd just take the patch as I wrote it, restoring dom0's
> pre-2022 behavior (after review and testing of course); but if you
> wanted to test & resubmit with a similar notification inside
> dom0_init(), I wouldn't object to it.

Just to clarify, you suggest the revert because you are concerned that 
it could break dom0. Is that correct?

> 
> Naturally it would be ideal if we could avoid the code duplication;
> but that's not possible without a lot more refactoring, which I don't
> think we should be doing at this stage in the release.

You can by moving the code just at the end of introduce_domain().

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Fri Oct 13 13:06:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 13:06:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616550.958643 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrHsK-0006i8-TX; Fri, 13 Oct 2023 13:06:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616550.958643; Fri, 13 Oct 2023 13:06: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 1qrHsK-0006i1-PS; Fri, 13 Oct 2023 13:06:44 +0000
Received: by outflank-mailman (input) for mailman id 616550;
 Fri, 13 Oct 2023 13:06: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=3A4Z=F3=epam.com=prvs=465081a231=volodymyr_babchuk@srs-se1.protection.inumbo.net>)
 id 1qrHsJ-0006hv-DW
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 13:06:43 +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 5926e822-69c9-11ee-9b0e-b553b5be7939;
 Fri, 13 Oct 2023 15:06:41 +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 39DAmC5U015493;
 Fri, 13 Oct 2023 13:06:34 GMT
Received: from eur05-am6-obe.outbound.protection.outlook.com
 (mail-am6eur05lp2104.outbound.protection.outlook.com [104.47.18.104])
 by mx0b-0039f301.pphosted.com (PPS) with ESMTPS id 3tq4f80hkd-1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT);
 Fri, 13 Oct 2023 13:06:33 +0000
Received: from VI1PR03MB3710.eurprd03.prod.outlook.com (2603:10a6:803:31::18)
 by AM9PR03MB7850.eurprd03.prod.outlook.com (2603:10a6:20b:431::15)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.46; Fri, 13 Oct
 2023 13:06: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.6863.043; Fri, 13 Oct 2023
 13:06: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: 5926e822-69c9-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ja0jYguAWiF1FsuhBf/YFdiDn+w0rInvGZcLzyecZ7cTaQmCBQWwC2iBKmbTy7hQKgX3trVWydW878bkxCL+93S4wKwMAvKHM1nUQVw95ocW9GYLTchOsPNSbAC3m0WK6xxBafBBvsO8kLnqFTs0b8Z2VoNiikF52BH88pMP9JvHf9qFaFPdVon4i7oPpGGYymIYhipD881lP4gVyTStej1I9bx3QJzFaLAB6aB1YAvXLLDoCUJ9MriE6OeDHNHo2sGLf05H8Z9FuqkMO5bzcpctFUL/ZWivQ5cBnO2K6YUqd/MY3ouwfNBxSA2mWDYuGZQR1Gag3dTkAIIduOBq/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=2+oP3t3SVLDkBkRxjVrxYrRwnOn5aiB/k0m6GY6jBdk=;
 b=BcH/inLQ2qM8nm7VnMyzu5dgnenbLQPDl8fV+xwEewcnEeaNlbg5DbnS98UsyYL/q2CpzpYLqGq08HDwkEZOGMnbJPbRDFhd24uTW15xtV/cGxwiRXN2RW6cpqKirmrzt77y6EhHZBU1KcUNWLxToHgyAPest1YEMbSnqWLBrmyh9pQtukhkFcCTAZ+GfcWaN+cToZi8U12qj9XaP4BIRFkHlffFb0p0INrCq0jvAdoLYdH/UQzyZIbsoAtzRvzEBa0tmDrSOHiEMZjXTl6RHudiJHZqZtuwzysWK+cWUSM1BrbWo+Oty+b2o5g5nzZ0lc9KQrJnifWuPuBVB6z3yQ==
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=2+oP3t3SVLDkBkRxjVrxYrRwnOn5aiB/k0m6GY6jBdk=;
 b=NTlbOBSQu5G0EiPtRV2dLUKrojvX1PvQRn0a/VLPnKaJENp3nr9E7LieeGbTQxxLPLflZYi8H7XXhUfVykBeFZaCK3E2+OxFm9eRCJvSDOM6/wR7yuD+5fGhWffztkC7CZWeWotbx1RjgYeDdp/JhsLWPUAlqOl2kl1VCkqnVbLR62Azf0Hlz5ZvaMrawRoUsIHzbhUaim/HI2dg4EgjWZHGG50wkSYJsuCrcG82gKM7bzdrmVsWLbcY2Yths6Czh1SGKFWn+evDcy6QCrxaDmo9YnxdKguEVu2cP3qtkmkkQy03uQPzqx2a/956yeXSPFfN8maMtHJMHfDhlAnt/Q==
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>,
        Oleksandr Andrushchenko
	<Oleksandr_Andrushchenko@epam.com>,
        Bertrand Marquis
	<bertrand.marquis@arm.com>,
        Julien Grall <jgrall@amazon.com>,
        Stefano
 Stabellini <sstabellini@kernel.org>
Subject: Re: [PATCH v10 15/17] xen/arm: account IO handlers for emulated PCI
 MSI-X
Thread-Topic: [PATCH v10 15/17] xen/arm: account IO handlers for emulated PCI
 MSI-X
Thread-Index: AQHZ/Vi/WuE7cEBbNE2PUEpOXmVwbLBHZXWAgABKrAA=
Date: Fri, 13 Oct 2023 13:06:30 +0000
Message-ID: <874jiuacyy.fsf@epam.com>
References: <20231012220854.2736994-1-volodymyr_babchuk@epam.com>
 <20231012220854.2736994-16-volodymyr_babchuk@epam.com>
 <8f70079a-ab08-4b41-8aab-834958ae93eb@xen.org>
In-Reply-To: <8f70079a-ab08-4b41-8aab-834958ae93eb@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_|AM9PR03MB7850:EE_
x-ms-office365-filtering-correlation-id: 07040a24-4701-419a-6360-08dbcbed37cb
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: 
 cUri66o+VvIPxzEeuOFJbwC+PGAaHAbbb0Ngs2HUzwlyFLkgU0emvpwNzBEpgU/RdQzbLPT3f/K5swpte9rTm3AF2hSN9OJtXM8hOl/mSFGV+Kloz3g7gPMB3n1Put0tq+M14W6e+UW8zBZNoG+ZhsMHw3r2+sRc9HWLsIN0/lje4TaTFaGz+0g3kbAuu75xE/qS8vQ8vbTNpmAm0W+kAPuXDXtI54R+NnO0W0HReCi/BGH9hjUWEx3e36j37EE3DwMpoTyiflf9d1/bXn7pUcFwtq1KRTipTiOBf5KCbed9MoMsHJ4kyXY9hp+XHMalbEASOsJDrpbIDyFkGkOY8/G0wwslYR91MwH23tWBVD28D61cOBNQWYJesSoP7+hfPTlZybLFHUlCD2oxQVBQqOZYK+4t5bXfnaL7eyZLPvg2MpuvnpQYi4rYRmITAooSlmZUzeyXA8fE/bPEoMZpFrLZIhK/6v/kWeBVE6QpLNQFY+bXhe+aF+aaTZQdmOeVTV/vSQeV+EZv1W5LS/dHGuHQTG94zYDcsBgIXHHQoiLN/4yYyEJulW3qoGBd/gAcUc+f+B5leXW7dPwsIaU3dwwnfi8LAElFQFBJZMHGTtQ=
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)(366004)(136003)(346002)(39860400002)(396003)(230922051799003)(1800799009)(186009)(64100799003)(451199024)(15650500001)(2906002)(2616005)(38100700002)(38070700005)(6512007)(26005)(6486002)(966005)(6506007)(53546011)(71200400001)(55236004)(86362001)(122000001)(478600001)(8936002)(8676002)(83380400001)(4326008)(36756003)(76116006)(91956017)(66946007)(6916009)(66476007)(66556008)(41300700001)(66446008)(316002)(64756008)(54906003)(5660300002);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: 
 =?iso-8859-1?Q?VkHsJ+hDcHW1Q9rjpd+pvwoSqE4hNqtaN7pyB88T6Il9VOAMAuNxdLRnbv?=
 =?iso-8859-1?Q?eaJANEjT5CPpuZ1LWZzHrJDv7RgWWiFOXa7wMh+e3JaycNlSrJd+9tSeb0?=
 =?iso-8859-1?Q?E1b/lRhc3zacd8fQuMNBmY54Mxbu6d8x0mtikctc9Py09rqDxYAQFRB9HS?=
 =?iso-8859-1?Q?4VnPHQ/OkznOnYMXokzwH1IU4aEqIXa6dd+3skpV2DNTZRq99iRMBxOJOt?=
 =?iso-8859-1?Q?yBdIrVOIWCMUgyLr+TppwTmgJbKObrkR8t6njkce0T14+1fxnlTltrLclP?=
 =?iso-8859-1?Q?WHPtUfDp5UpIu+eZKwhdEy9w/mhvrM+qctHT4XNc7a3UK3ryQE3cwRCEeZ?=
 =?iso-8859-1?Q?g6J8etVgTGta8BwtQxllomCiXxnc9g97SYWKOaRMjI/2Q2BRiBdDGzMxev?=
 =?iso-8859-1?Q?0xAQxu75vOuHu8WMo1YYvQ2S8S9IgbfLY9UwR9FyXJXCXuNcjsMX/iYd58?=
 =?iso-8859-1?Q?5bNmDJqQ+MpZ5SLNxdcmSLpenvfzd2AweDtUOfwcwAt147WFssPR1tqZXl?=
 =?iso-8859-1?Q?/p+hIygPV8f/NGOc/Zhyi7u5ynI1M9XfnfOevQeN9Im/UcPSt3koAmmcdb?=
 =?iso-8859-1?Q?Pc8FhTYc6EfO+T0jL0DQ4wV9Aun27S2xmStI7/jZjzX9kO7c9Qgx7gHKrK?=
 =?iso-8859-1?Q?Ftwx8OEszNdsfI+9iW5WPsrPslRDnCa+jlyniGbgkWCdSmmyLKautXdCMu?=
 =?iso-8859-1?Q?Q2RvXSCv56S1dcGsZxSi1HmTV6QnyUVvR2T00Pq88/pUyNK6jGwwXaEI/g?=
 =?iso-8859-1?Q?0JzvfxRixAp5DByoWs4lXh70eFVvsvC0OuCXTx6yi3rE3O4CC3e653iHs3?=
 =?iso-8859-1?Q?aGraYmCUPBO5nkVMAWcJetodrcRpi1ZjM09avm5kNnApJuMuz7N3d+OHnX?=
 =?iso-8859-1?Q?tplJZRf1vva7CFWaV0vrqEHCzKjb2yFk/OWHiTY2G+LPV5opbx8lPM1G7v?=
 =?iso-8859-1?Q?pDWKMHRGKnXa62nt8GBn3cVFwGvyrF5G+aPYWIYZQa4F78ped+X9AKUiKz?=
 =?iso-8859-1?Q?lElfqlwvvUiw3wEe7oJn/ZMzMPJIFcRt4oPb879TCJ5ScYKal3jAkvhSGq?=
 =?iso-8859-1?Q?UiMq3WWDtV3hRmqQmUOM2WS3awXFqVqrKAVV1HciMsG+8hhO+5rASufxG9?=
 =?iso-8859-1?Q?0IqMHEv0oszPx4cvhulggh+aQbI19wuwVZ71Z0p0PG5ICSzeXMWc6ADaVe?=
 =?iso-8859-1?Q?/QRSSXzS7zapYpZE+i6EiQ+NtB43zZnMQOC2PX37+/93eM1ZyDeMK5AoBf?=
 =?iso-8859-1?Q?xpnmxe/zkP0QMSF/ovFXI5jDGJ4MCo6rIMTkFG/gAc+Bs5v7uezhk4ROFL?=
 =?iso-8859-1?Q?rhEF9y6g2adOw5s4Fs4zZXcmNFMeUQVsroAkLCql/YNykyAdeC01PN5ZIP?=
 =?iso-8859-1?Q?Q8pco2dP3j6sz5tDDcNuIQMxGv7u/njldE3V6r7auavui6t+SaMlJ6r+7m?=
 =?iso-8859-1?Q?tVJDLU8A4qAY9SJQiOoVX/PHpvaqM+HXjc7SkX3oMersvFF1HlCPVx3/FC?=
 =?iso-8859-1?Q?iCQpNBcGaFO4zJUIGE+IgwtZ3VGD5zfqSjYGGZlgBXdpGJVNI3lvRwmi0w?=
 =?iso-8859-1?Q?3F4dYwAYh3OxtiMlav4VpJWo1b+GJeewhTnBvy63P7JtkH6EpEH8Pbj2yQ?=
 =?iso-8859-1?Q?1cwMqgGH8weCNKKV0hYukckqg5b/CyQyL0iyV+97UI/+Bat7/as+10Qw?=
 =?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: 07040a24-4701-419a-6360-08dbcbed37cb
X-MS-Exchange-CrossTenant-originalarrivaltime: 13 Oct 2023 13:06:30.6542
 (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: FKyF6EO03DOH8yE8uPJB58V0ykrmenC+AK18nvSahtSFunRqRTaw/n9IJu8LRwgmSfpZPaS9rGIiy9/5S6EtXPC52XkuMC7/mZx/hLwG/rY=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR03MB7850
X-Proofpoint-ORIG-GUID: 76M1APon8P0EZexJ_K90P-WbabqSXBAm
X-Proofpoint-GUID: 76M1APon8P0EZexJ_K90P-WbabqSXBAm
X-Proofpoint-Virus-Version: vendor=baseguard
 engine=ICAP:2.0.272,Aquarius:18.0.980,Hydra:6.0.619,FMLib:17.11.176.26
 definitions=2023-10-13_04,2023-10-12_01,2023-05-22_02
X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 adultscore=0 impostorscore=0
 mlxlogscore=577 priorityscore=1501 phishscore=0 bulkscore=0 suspectscore=0
 lowpriorityscore=0 clxscore=1015 spamscore=0 mlxscore=0 malwarescore=0
 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2309180000
 definitions=main-2310130108


Hi Julien,

Julien Grall <julien@xen.org> writes:

> Hi Volodymyr,
>
> On 12/10/2023 23:09, Volodymyr Babchuk wrote:
>> From: Oleksandr Andrushchenko <oleksandr_andrushchenko@epam.com>
>> At the moment, we always allocate an extra 16 slots for IO handlers
>> (see MAX_IO_HANDLER). So while adding IO trap handlers for the emulated
>> MSI-X registers we need to explicitly tell that we have additional IO
>> handlers, so those are accounted.
>> Signed-off-by: Oleksandr Andrushchenko
>> <oleksandr_andrushchenko@epam.com>
>
> Some process remark. All the patches you send (even if they are
> unmodified) should also contain your signed-off-by. This is to comply
> with point (b) in the DCO certificate:

Oh, sorry. I assumed that it is enough to have signed-off-by tag of the
original author. I'll add my tags in the next version.

> https://urldefense.com/v3/__https://cert-manager.io/docs/contributing/sig=
n-off/__;!!GF_29dbcQIUBPA!0mzdEfHOZMm2OmzFc6TZukGgMYRHxDWLdEQvbhUlDmOg3tZNe=
DbWb8vHz38zLzcYv8GUZeHLn-5sWTYCkvkb$ [cert-manager[.]io]
>
> Please check the other patches in this series.
>
>> Acked-by: Julien Grall <jgrall@amazon.com>
>
> Is this patch depends on the rest of the series? If not we can merge
> it in the for-4.19 branch Stefano created. This will reduce the number
> of patches you need to resend.

It uses VPCI_MAX_VIRT_DEV constant which was introduced in ("vpci: add
initial support for virtual PCI bus topology").

--=20
WBR, Volodymyr=


From xen-devel-bounces@lists.xenproject.org Fri Oct 13 13:19:25 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 13:19:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616557.958663 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrI4Y-0000z6-5r; Fri, 13 Oct 2023 13:19:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616557.958663; Fri, 13 Oct 2023 13: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 1qrI4Y-0000yz-2x; Fri, 13 Oct 2023 13:19:22 +0000
Received: by outflank-mailman (input) for mailman id 616557;
 Fri, 13 Oct 2023 13:19: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 1qrI4W-0000yW-SZ; Fri, 13 Oct 2023 13:19: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 1qrI4W-00013z-PG; Fri, 13 Oct 2023 13:19: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 1qrI4W-0001wM-GT; Fri, 13 Oct 2023 13:19:20 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qrI4W-0005iU-G1; Fri, 13 Oct 2023 13:19: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=ar4DdP0i8as0sOsM9wf2q9/PqL1TUgfAkQdjLBNVocU=; b=QBShg9r5sK1Nd4nVJByLTjVE8V
	kLsa1t52SAGf9efrCuqhAymQdLaOfmV1PoI58Ygl2M6+6/Sz8m000V7IP8mwrPSAAtxbIAcCCQysK
	gzj8nI1cF+vb7uQajfXXpKoW7q/ivLwjSG2ReBOgLskqVhKvxouewMuhV0DnWNdBbo24=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183363-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 183363: regressions - FAIL
X-Osstest-Failures:
    xen-unstable:build-arm64:xen-build:fail:regression
    xen-unstable:test-amd64-i386-examine-bios:xen-install:fail:heisenbug
    xen-unstable:test-arm64-arm64-xl-xsm:xen-boot:fail:heisenbug
    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-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-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-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: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-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: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-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-qemut-win7-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-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check: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-amd64-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-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-arndale:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-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-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-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=dc9d9aa62ddeb14abd5672690d30789829f58f7e
X-Osstest-Versions-That:
    xen=dc9d9aa62ddeb14abd5672690d30789829f58f7e
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 13 Oct 2023 13:19:20 +0000

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

Regressions :-(

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

Tests which are failing intermittently (not blocking):
 test-amd64-i386-examine-bios  6 xen-install      fail in 183360 pass in 183363
 test-arm64-arm64-xl-xsm       8 xen-boot                   fail pass in 183360

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-arm64-arm64-xl-thunderx 15 migrate-support-check fail in 183360 never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail in 183360 never pass
 test-arm64-arm64-xl         15 migrate-support-check fail in 183360 never pass
 test-arm64-arm64-xl     16 saverestore-support-check fail in 183360 never pass
 test-arm64-arm64-xl-credit1 15 migrate-support-check fail in 183360 never pass
 test-arm64-arm64-xl-credit1 16 saverestore-support-check fail in 183360 never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail in 183360 never pass
 test-arm64-arm64-xl-credit2 15 migrate-support-check fail in 183360 never pass
 test-arm64-arm64-xl-credit2 16 saverestore-support-check fail in 183360 never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail in 183360 never pass
 test-arm64-arm64-xl-xsm     15 migrate-support-check fail in 183360 never pass
 test-arm64-arm64-xl-xsm 16 saverestore-support-check fail in 183360 never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check fail in 183360 never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail in 183360 never pass
 test-arm64-arm64-xl-vhd     14 migrate-support-check fail in 183360 never pass
 test-arm64-arm64-xl-vhd 15 saverestore-support-check fail in 183360 never pass
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183360
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183360
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 183360
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183360
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183360
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183360
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 183360
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183360
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183360
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 183360
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 183360
 test-amd64-amd64-xl-qemuu-win7-amd64 12 windows-install       fail like 183360
 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-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-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-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-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-raw  14 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-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

version targeted for testing:
 xen                  dc9d9aa62ddeb14abd5672690d30789829f58f7e
baseline version:
 xen                  dc9d9aa62ddeb14abd5672690d30789829f58f7e

Last test of basis   183363  2023-10-13 05:16:43 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                                                  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                                      fail    
 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                                  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 Fri Oct 13 13:19:25 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 13:19:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616556.958652 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrI4T-0000iw-VL; Fri, 13 Oct 2023 13:19:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616556.958652; Fri, 13 Oct 2023 13:19: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 1qrI4T-0000ip-Sn; Fri, 13 Oct 2023 13:19:17 +0000
Received: by outflank-mailman (input) for mailman id 616556;
 Fri, 13 Oct 2023 13:19: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=NVAw=F3=cloud.com=alejandro.vallejo@srs-se1.protection.inumbo.net>)
 id 1qrI4R-0000hW-Vb
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 13:19:15 +0000
Received: from mail-ej1-x629.google.com (mail-ej1-x629.google.com
 [2a00:1450:4864:20::629])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 1b046e92-69cb-11ee-98d4-6d05b1d4d9a1;
 Fri, 13 Oct 2023 15:19:14 +0200 (CEST)
Received: by mail-ej1-x629.google.com with SMTP id
 a640c23a62f3a-9ae75ece209so338501066b.3
 for <xen-devel@lists.xenproject.org>; Fri, 13 Oct 2023 06:19:14 -0700 (PDT)
Received: from EMEAENGAAD19049.citrite.net
 (default-46-102-197-194.interdsl.co.uk. [46.102.197.194])
 by smtp.gmail.com with ESMTPSA id
 ov19-20020a170906fc1300b009a193a5acffsm12307018ejb.121.2023.10.13.06.19.13
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Fri, 13 Oct 2023 06:19: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: 1b046e92-69cb-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1697203154; x=1697807954; 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=I+DuKjX5C9PwQVcUxHpVUuL1o002ypO3N0jFU9aQ36Y=;
        b=QLGfuoB+PDjw0M+CJo2VCLDNy6DeONIAsxdqoyxfuIr9KWegwGtmzDxkQiaSfbdTWP
         TGyMnOLcWcUjeRXPYuBKNNcI9Yst78/vcdgEO2YYYhbb9npEGkxy6oKqs6mc8bN7TP9R
         /pKEn/r9c4nlgoNuqaYPrF3mly8qG/vu8l2ss=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697203154; x=1697807954;
        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=I+DuKjX5C9PwQVcUxHpVUuL1o002ypO3N0jFU9aQ36Y=;
        b=w5CVqE3nPu91oQ/ZOFfuP0Ne1DWwiG5QAm9uevUuizv4zXyvuRZSlrC9UjKGcjqFHh
         W592ZoJQ/DMbsqJZLwx+y5nmbDIwT4wNUvMVC9nZRd9xqUVvaV4om/djpkRfTZ7CdL5a
         zoHOXuhFjiRNWPEys/hnUDfAWBzAUJj4yll2eFUg+djgMhf96LEmHEiiH1+5zUADoU0A
         On8Zghk1IHRP2o5sl4nIeQvUhS42PsYmSirCSEZACL0yeW+FNzG2u4TpdxEXOTWXKnEB
         BM3i0eg6fBEz0kj/lbB24aTLc45JAvMlGOHC7I347An92xqSyw2wy8PEAOk1k8QEi05u
         FHfw==
X-Gm-Message-State: AOJu0YyuOZYVHeC9OaH9OYPk8sS2KpAwXHqAjjtNt2RizWsNdcdGUoIR
	JC5VqJL+PZNF7NzroKgkwuM68mKUpnYy6eJwZCI=
X-Google-Smtp-Source: AGHT+IFUyKugnft07NlB3AEM8nPwOjonrh/9cbNG1uNsbKxZIdNvSRf7UCOFg3djSafUsndiObVoWw==
X-Received: by 2002:a17:906:8e:b0:9a9:d5f4:1a0d with SMTP id 14-20020a170906008e00b009a9d5f41a0dmr20331729ejc.45.1697203154163;
        Fri, 13 Oct 2023 06:19:14 -0700 (PDT)
From: Alejandro Vallejo <alejandro.vallejo@cloud.com>
To: Xen-devel <xen-devel@lists.xenproject.org>
Cc: Alejandro Vallejo <alejandro.vallejo@cloud.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: [for-4.18][PATCH v2] x86/amd: Address AMD erratum #1485
Date: Fri, 13 Oct 2023 14:18:46 +0100
Message-Id: <20231013131846.175702-1-alejandro.vallejo@cloud.com>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Fix adapted off Linux's mailing list:
  https://lore.kernel.org/lkml/D99589F4-BC5D-430B-87B2-72C20370CF57@exactcode.com/T/#u

Signed-off-by: Alejandro Vallejo <alejandro.vallejo@cloud.com>
Release-acked-by: Henry Wang <Henry.Wang@arm.com>
---
v2:
  * Removed v1/patch1, as it proved to be contentious
    * Also changed is_zen[34]_uarch() into a heuristic check only
  * Streamlined comments and commit message

---
 xen/arch/x86/cpu/amd.c               | 8 ++++++++
 xen/arch/x86/include/asm/amd.h       | 5 +++++
 xen/arch/x86/include/asm/msr-index.h | 1 +
 3 files changed, 14 insertions(+)

diff --git a/xen/arch/x86/cpu/amd.c b/xen/arch/x86/cpu/amd.c
index 4f27187f92..085c4772d7 100644
--- a/xen/arch/x86/cpu/amd.c
+++ b/xen/arch/x86/cpu/amd.c
@@ -1167,6 +1167,14 @@ static void cf_check init_amd(struct cpuinfo_x86 *c)
 	if (c->x86 == 0x10)
 		__clear_bit(X86_FEATURE_MONITOR, c->x86_capability);
 
+	/* Fix for AMD erratum #1485 */
+	if (!cpu_has_hypervisor && c->x86 == 0x19 && is_zen4_uarch()) {
+		rdmsrl(MSR_AMD64_BP_CFG, value);
+		#define ZEN4_BP_CFG_SHARED_BTB_FIX (1ull << 5)
+		wrmsrl(MSR_AMD64_BP_CFG,
+		       value | ZEN4_BP_CFG_SHARED_BTB_FIX);
+	}
+
 	if (!cpu_has_amd_erratum(c, AMD_ERRATUM_121))
 		opt_allow_unsafe = 1;
 	else if (opt_allow_unsafe < 0)
diff --git a/xen/arch/x86/include/asm/amd.h b/xen/arch/x86/include/asm/amd.h
index d862cb7972..0700827561 100644
--- a/xen/arch/x86/include/asm/amd.h
+++ b/xen/arch/x86/include/asm/amd.h
@@ -145,11 +145,16 @@
  * Hygon (Fam18h) but without simple model number rules.  Instead, use STIBP
  * as a heuristic that distinguishes the two.
  *
+ * For Zen3 and Zen4 (Fam19h) the heuristic is the presence of AutoIBRS, as
+ * it's Zen4-specific.
+ *
  * 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)
+#define is_zen3_uarch() (!boot_cpu_has(X86_FEATURE_AUTO_IBRS))
+#define is_zen4_uarch()   boot_cpu_has(X86_FEATURE_AUTO_IBRS)
 
 struct cpuinfo_x86;
 int cpu_has_amd_erratum(const struct cpuinfo_x86 *, int, ...);
diff --git a/xen/arch/x86/include/asm/msr-index.h b/xen/arch/x86/include/asm/msr-index.h
index 11ffed543a..7b3490bfb1 100644
--- a/xen/arch/x86/include/asm/msr-index.h
+++ b/xen/arch/x86/include/asm/msr-index.h
@@ -403,6 +403,7 @@
 #define MSR_AMD64_DE_CFG		0xc0011029
 #define AMD64_DE_CFG_LFENCE_SERIALISE	(_AC(1, ULL) << 1)
 #define MSR_AMD64_EX_CFG		0xc001102c
+#define MSR_AMD64_BP_CFG		0xc001102e
 #define MSR_AMD64_DE_CFG2		0xc00110e3
 
 #define MSR_AMD64_DR0_ADDRESS_MASK	0xc0011027
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Fri Oct 13 13:30:51 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 13:30:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616569.958675 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrIFX-0006EX-Bw; Fri, 13 Oct 2023 13:30:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616569.958675; Fri, 13 Oct 2023 13:30: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 1qrIFX-0006EQ-8t; Fri, 13 Oct 2023 13:30:43 +0000
Received: by outflank-mailman (input) for mailman id 616569;
 Fri, 13 Oct 2023 13: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=36VQ=F3=cloud.com=george.dunlap@srs-se1.protection.inumbo.net>)
 id 1qrIFV-0006EK-Ni
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 13:30:41 +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 b3d4328a-69cc-11ee-98d4-6d05b1d4d9a1;
 Fri, 13 Oct 2023 15:30:40 +0200 (CEST)
Received: by mail-lj1-x22b.google.com with SMTP id
 38308e7fff4ca-2c5071165d5so9373701fa.0
 for <xen-devel@lists.xenproject.org>; Fri, 13 Oct 2023 06:30: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: b3d4328a-69cc-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1697203840; x=1697808640; 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=JzSat+oeKuBgLVqZInaoLkxyZPP8RM1UbxTnmNQOsbU=;
        b=XtdmzWGjgg/zCw0BbUthiQMvwhfHmbdt1rs5YOETmtFmEIZgYvjaBy2IeloBLj4nK+
         Ue0+68Bs6JsvbQFgsrpVyJHCAyLyoBctcwn9bJRRc5pl8K19rJVZyUlRJ2XX28HPP/I7
         7vDnvp6Qp6Kn5tl2XSwTZTmVeH3euVzdHNJVY=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697203840; x=1697808640;
        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=JzSat+oeKuBgLVqZInaoLkxyZPP8RM1UbxTnmNQOsbU=;
        b=I6MOHerH9WiU5irMIHcpUxwxUKwgJ5Rd8w1i2y8vF8OZ+c8lGhsSYefJRGWW97NoKZ
         sVlDBOp4k+M/EbqZ1kCvak2BpiQUsyuQ9QWbZxec9Oqoh2SOciJa2pb5n6sntgWT+KqQ
         XVV2elIoLt/BEc7w85pU89u5EP1foyiYtxY29IMRm+LrmQ25dmC34yNNA2PpIfxvZP6e
         7TZhmlkl44W9MxRofLW1wzVETSZMMzPo211RngQ6D8JUzaPyBJUslsuX1/Q/LISzMfOW
         zGnbfdbQJ271pfJ9WvDUBydYpLeMWXmK+tQisxZK1KPAEFfy8GtbIlCeEE/+UiIWVy6G
         yz2Q==
X-Gm-Message-State: AOJu0YyciLrA4lmsUIIlLHSPS4/t99WFQf9CrteL3hY/BlyZu781/kF7
	DmOs7Fwm5npgXmSi/w939k1w2vC7tKfPVx/PqqIZhQ==
X-Google-Smtp-Source: AGHT+IHf3UB/XnGTtJbyXHkP+f2JXkNQJjAPMb9/21ggwVn1tSeK0Eem4YB33Hb+8UExPnFgtfkI58qTrFjpnqvI6tE=
X-Received: by 2002:a2e:bc21:0:b0:2c5:38d:f80b with SMTP id
 b33-20020a2ebc21000000b002c5038df80bmr2993721ljf.6.1697203840182; Fri, 13 Oct
 2023 06:30:40 -0700 (PDT)
MIME-Version: 1.0
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> <alpine.DEB.2.22.394.2309271658500.1403502@ubuntu-linux-20-04-desktop>
 <CA+zSX=ZbeUFrfAUJShooJFJ+d89f4xdXfJJ9HoJKRh4UStkTFQ@mail.gmail.com>
 <alpine.DEB.2.22.394.2310121535580.3431292@ubuntu-linux-20-04-desktop>
 <CA+zSX=Y5dMVFM6dVNgBRHxKc0C1e5WGgweQ0FaXXCfAFGH1aPA@mail.gmail.com>
 <a93839b8-932a-4634-9549-081df950afb2@xen.org> <CA+zSX=a972GC=_FKK2eGkArPb6RszCHDN0+6JKFJiMjoMpAySQ@mail.gmail.com>
 <f973db5f-da72-4aa2-a35e-1e6652b181bf@xen.org>
In-Reply-To: <f973db5f-da72-4aa2-a35e-1e6652b181bf@xen.org>
From: George Dunlap <george.dunlap@cloud.com>
Date: Fri, 13 Oct 2023 14:30:28 +0100
Message-ID: <CA+zSX=bpq6sJmP7TzC+3vgTJyZcCdZc5M-BGEaOkkXt7BoQZJg@mail.gmail.com>
Subject: Re: Xen 4.18 release: Reminder about code freeze
To: Julien Grall <julien@xen.org>
Cc: Stefano Stabellini <sstabellini@kernel.org>, Andrew Cooper <andrew.cooper3@citrix.com>, 
	Henry Wang <Henry.Wang@arm.com>, 
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.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 Fri, Oct 13, 2023 at 2:00=E2=80=AFPM Julien Grall <julien@xen.org> wrote=
:
> >>> If the problem is the delay between the xenevtchn_notify() in
> >>> introduce_domain() and the domain_conn_reset() afterwards in
> >>> do_domain(), would it make sense instead to move the notification int=
o
> >>> do_introduce(), after the domain_conn_reset()?  It is, after all, in
> >>> response to XS_INTRODUCE that we want to send the notification, not i=
n
> >>> dom0_init() or read_state_connection() (which seems to be more about
> >>> restoring a domain).
> >>
> >> I understand that the event channel notification was specifically adde=
d
> >> for dom0less. But I don't see why we don't want to send it to dom0 as =
well.
> >>
> >> Technically, dom0 has exactly the same problem as dom0less domains it
> >> boots before Xenstored is running and therefore it may need to know wh=
en
> >> it is ready to receive commands.
> >
> > It seemed to work fine before 2022, when the notification was
> > introduced.
>
> Indeed. But my point is that in theory the behavior between dom0 and
> dom0less domain should not be different. With your proposal we would
> continue to diverge with seems rather strange.
>
> Do you at least agree that on the paper, Xenstored should notify it is
> ready to accept commands the same way for every domain?

I don't know enough about the start-of-day to know why dom0 did fine
without a notification for nearly 20 years, but dom0less domUs don't.
To answer your question I'd need the documentation that Andrew wants;
or at least the answers to the two questions which you deferred to
Juergen.  I assume that dom0 doesn't really need it, because it did
fine without it; I assume that dom0less domUs do really need it,
because otherwise people wouldn't have spent the effort to introduce
it.

> > Personally I'd just take the patch as I wrote it, restoring dom0's
> > pre-2022 behavior (after review and testing of course); but if you
> > wanted to test & resubmit with a similar notification inside
> > dom0_init(), I wouldn't object to it.
>
> Just to clarify, you suggest the revert because you are concerned that
> it could break dom0. Is that correct?

I'm not sure why you're calling it a revert.  The initial patch that
introduced it didn't mention wanting to include dom0 specifically; on
the contrary it said:

"The extra notification is harmless for domains that don't require it."

My reasons for leaving dom0 notification out of my patch were:

1. It's awkward to keep the dom0 notification without doing a lot of
refactoring (which should be avoided at this point in the release) or
making things kind of ugly and difficult to maintain (lots of specific
if statements)

2. Since dom0 did fine for 20 years without it, it seemed that it
wasn't necessary

3. Since nobody seems to actually know what's going on, there's a
chance it's actually harmful (although that chance is relatively
small, given the amount of time the extra notification has been in the
tree).

> > Naturally it would be ideal if we could avoid the code duplication;
> > but that's not possible without a lot more refactoring, which I don't
> > think we should be doing at this stage in the release.
>
> You can by moving the code just at the end of introduce_domain().

At the end of introduce_domain(), your if statement would have to look
like this:

if (!restore) {
   if (!is_master_domain)
    domain_conn_reset():
  interface->connection =3D XENSTORE_CONNECTED;
  xenevtchn_notify(...);
}

This is all not terribly maintainable; you're hoisting the
domain_conn_reset() thing into a shared codepath, where the other two
callers don't need it, just to avoid potentially duplicating two
probably unnecessary lines in dom0_init().  Given the kinds of bugs
that have already arisen because of putting things into this
multiplexed function (the current one we're trying to fix, as well as
49dd52fb131), I'd prefer to keep things simple.

I wouldn't nack such a patch.  But I would have a harder time arguing
in favor of such a patch, than a patch like the one I've written
(perhaps with a duplicated notification in dom0_init() if you really
think it's necessary).

 -George


From xen-devel-bounces@lists.xenproject.org Fri Oct 13 13:41:11 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 13:41:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616574.958685 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrIPU-0000Yw-8h; Fri, 13 Oct 2023 13:41:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616574.958685; Fri, 13 Oct 2023 13:41: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 1qrIPU-0000Yp-6C; Fri, 13 Oct 2023 13:41:00 +0000
Received: by outflank-mailman (input) for mailman id 616574;
 Fri, 13 Oct 2023 13:40: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=pfqf=F3=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qrIPS-0000Yi-Qs
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 13:40:58 +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 23a3df60-69ce-11ee-98d4-6d05b1d4d9a1;
 Fri, 13 Oct 2023 15:40:57 +0200 (CEST)
Received: by mail-lf1-x134.google.com with SMTP id
 2adb3069b0e04-5041bb9ce51so2675049e87.1
 for <xen-devel@lists.xenproject.org>; Fri, 13 Oct 2023 06:40:57 -0700 (PDT)
Received: from [172.31.7.9] (pdaddca5b.chibnt01.ap.so-net.ne.jp.
 [218.221.202.91]) by smtp.gmail.com with ESMTPSA id
 y3-20020a62b503000000b0068fd653321esm13534654pfe.58.2023.10.13.06.40.54
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Fri, 13 Oct 2023 06:40: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: 23a3df60-69ce-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1697204457; x=1697809257; darn=lists.xenproject.org;
        h=content-transfer-encoding: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=59iK16ERZY8Qnot9jaf1f8Q6bpx+HgU58/9jt0fKX4A=;
        b=QlR86ug503PvmKzEi9Un7HN2Bre2ZSnjzNaTzHGJadWEbB/78tQgMlDEihvRACtd/9
         VeCZpux4VDiXVYNHmyu2jicyC/BUA9oHfbQ8h15ZY7DlTeLvQ3u5RULwD5G5XgL7Ab8p
         Y/AzUU6sK3/iHGJHqC2M+ULWIiYpTGFB5WnsU=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697204457; x=1697809257;
        h=content-transfer-encoding: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=59iK16ERZY8Qnot9jaf1f8Q6bpx+HgU58/9jt0fKX4A=;
        b=CZJRrzIUivSmryoJKCQZPSE/t/HU8iwtq/FUTCiQ092BJridCoNsHSuTm1fz+U6lEe
         2gQV7UbPw4f2Kp7X4X7giInMj01/fG81X8JBQNf3m26ma/ZwB3isIIB/w4bgcMPx1EHP
         qpToRwMsivb1NEAztMW2pT9dBxpCNEhovpLrPUdjWNcJJOzYCxRO4GDwvqNKzsvdhRM2
         zIeTijjhcMX1bBeKJBijxbZfjyUEFkslzWlkzcyFz1XwRNCJG8s2XZMXLsPUAXTU0JVs
         QyhvcvqQ/Fu1yyyWNvN5GsvejNpslENoO5IjIL5tSJ/1OoudjYeI4hPdLp9JddHm6lkn
         OAnA==
X-Gm-Message-State: AOJu0YxgVG7895UEEvhBnhMOrtTcAVYHQ1J/130d+xSD3y4fgLZ5TksK
	hdDfjcz1RIiML8evu/yraHPPCA==
X-Google-Smtp-Source: AGHT+IGKO6oxN7zg8oVrEFTJWaQtTNWQwL9Raq09FSICitU5xf4hhLcwlcnxCIRGIUgonkYcMSuGEA==
X-Received: by 2002:ac2:4290:0:b0:503:38fe:4590 with SMTP id m16-20020ac24290000000b0050338fe4590mr19760521lfh.60.1697204457309;
        Fri, 13 Oct 2023 06:40:57 -0700 (PDT)
Message-ID: <42d8ac8d-522e-424a-b002-9a0508f318da@citrix.com>
Date: Fri, 13 Oct 2023 21:40:52 +0800
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [for-4.18][PATCH v2] x86/amd: Address AMD erratum #1485
Content-Language: en-GB
To: Alejandro Vallejo <alejandro.vallejo@cloud.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>, Henry Wang <Henry.Wang@arm.com>
References: <20231013131846.175702-1-alejandro.vallejo@cloud.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: <20231013131846.175702-1-alejandro.vallejo@cloud.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 13/10/2023 9:18 pm, Alejandro Vallejo wrote:
> diff --git a/xen/arch/x86/cpu/amd.c b/xen/arch/x86/cpu/amd.c
> index 4f27187f92..085c4772d7 100644
> --- a/xen/arch/x86/cpu/amd.c
> +++ b/xen/arch/x86/cpu/amd.c
> @@ -1167,6 +1167,14 @@ static void cf_check init_amd(struct cpuinfo_x86 *c)
>  	if (c->x86 == 0x10)
>  		__clear_bit(X86_FEATURE_MONITOR, c->x86_capability);
>  
> +	/* Fix for AMD erratum #1485 */
> +	if (!cpu_has_hypervisor && c->x86 == 0x19 && is_zen4_uarch()) {
> +		rdmsrl(MSR_AMD64_BP_CFG, value);
> +		#define ZEN4_BP_CFG_SHARED_BTB_FIX (1ull << 5)
> +		wrmsrl(MSR_AMD64_BP_CFG,
> +		       value | ZEN4_BP_CFG_SHARED_BTB_FIX);

A #define indented like that is weird.  I tend to either opencode it
directly in the "value |" expression, or have a local variable called
chickenbit.

This will surely be a core scope MSR rather than thread scope, at which
point it the write ought to be conditional on seeing the chickenbit
clear (hence needing to refer to the value at least twice, so use a
local variable).

It probably also wants a note about non-atomic RMW, and how it's safe in
practice.  (See the Zenbleed comment).

Otherwise, LGTM.

As this is just cribbing from an existing example, I'm happy to adjust
on commit, but it's probably better to double check in the PPR and retest.

~Andrew


From xen-devel-bounces@lists.xenproject.org Fri Oct 13 14:01:29 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 14:01:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616579.958695 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrIj3-0005HD-TN; Fri, 13 Oct 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 616579.958695; Fri, 13 Oct 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 1qrIj3-0005H6-QT; Fri, 13 Oct 2023 14:01:13 +0000
Received: by outflank-mailman (input) for mailman id 616579;
 Fri, 13 Oct 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=pfqf=F3=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qrIj2-0005H0-Mp
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 14:01:12 +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 f3d61ff1-69d0-11ee-9b0e-b553b5be7939;
 Fri, 13 Oct 2023 16:01:06 +0200 (CEST)
Received: by mail-wm1-x332.google.com with SMTP id
 5b1f17b1804b1-40776b20031so1191235e9.0
 for <xen-devel@lists.xenproject.org>; Fri, 13 Oct 2023 07:01:06 -0700 (PDT)
Received: from [172.31.7.9] ([203.12.200.210])
 by smtp.gmail.com with ESMTPSA id
 w21-20020a637b15000000b005ab281d0777sm1284718pgc.20.2023.10.13.07.01.02
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Fri, 13 Oct 2023 07:01: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: f3d61ff1-69d0-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1697205665; x=1697810465; 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=tPy4WG2QrODKRJx5QUTwOBSRILtPZ0qEBU+tg92VtXk=;
        b=Hly2ht//eRxcSVMK//xBuyoJKJK1Pc+qVBY7CA7QusOBrYK9owPUIxz4VcNZvcwjS0
         +xcTmc+DHbK6E6Rv7xcWL1KL7xJ2JD6mbUc/6QYad1yRwyc+aBm8BwxHhx03JFmTMqNa
         19lzgfJ9tSrD/xDivhUdgDxStjEjaJ2o5grWI=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697205665; x=1697810465;
        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=tPy4WG2QrODKRJx5QUTwOBSRILtPZ0qEBU+tg92VtXk=;
        b=Mawujbprc1jCDoxEBn8YSo8BCByOn36atjNo5oEcFSU8awphFzwlQnz4JryRaprMKz
         CK+zpw/H9GKPdCM896NV6bBEGwvosrFwYdp/BRgma8xxdEhPqCmL0UKeiEiZt9umwy2D
         vN82JFOf4Be5UzCax+A0VdJZ8ynfFbyTO2T4xAOLtYNef4bEMOQBlZu0f3gf0HbeXwUt
         dJwl9+O5DjgsK555AqvNyBTi764+giH3CcdYnhmLYSwJikAHT59m5U/mLoQfa68y7ryy
         VRVYC0waqSjI6dnqqBGHTNszEj8xtNh22H1QlFDFOgPPx+RB7/TiU0DlwL/GBuVBnTmQ
         D+9A==
X-Gm-Message-State: AOJu0YwYkt1SN35qmhNRYu9R6NtxAxe/R7mobY5pr9dbEgqhZckeua0b
	6EctkvhgZPJN+wQkQIF0KXWtFA==
X-Google-Smtp-Source: AGHT+IHDBj9T5u58AlMAxr6q3OZrKkzVU5INMxZZyJu5coijatvYlHjaRfu95baT93pYuI673b1NhQ==
X-Received: by 2002:adf:fcd2:0:b0:32d:8505:b9d7 with SMTP id f18-20020adffcd2000000b0032d8505b9d7mr7019329wrs.43.1697205665580;
        Fri, 13 Oct 2023 07:01:05 -0700 (PDT)
Content-Type: multipart/alternative;
 boundary="------------D4buNF50ZyVCR0nELFIpUXHb"
Message-ID: <383027d6-d405-4935-a5a9-1d11e8dd8e44@citrix.com>
Date: Fri, 13 Oct 2023 22:00:58 +0800
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [for-4.18][PATCH 1/2] xen/x86: Add family guards to the
 is_zen[12]_uarch() macros
Content-Language: en-GB
To: =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>,
 Alejandro Vallejo <alejandro.vallejo@cloud.com>
Cc: Xen-devel <xen-devel@lists.xenproject.org>,
 Jan Beulich <jbeulich@suse.com>, Wei Liu <wl@xen.org>,
 Henry Wang <Henry.Wang@arm.com>
References: <20231012172601.22600-1-alejandro.vallejo@cloud.com>
 <20231012172601.22600-2-alejandro.vallejo@cloud.com>
 <06c4df56-8118-4f11-843a-7e4ae81f2464@citrix.com>
 <652928c3.170a0220.37d5e.7636@mx.google.com> <ZSkrohpG69OU8M8y@macbook>
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: <ZSkrohpG69OU8M8y@macbook>

This is a multi-part message in MIME format.
--------------D4buNF50ZyVCR0nELFIpUXHb
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 13/10/2023 7:36 pm, Roger Pau Monné wrote:
> On Fri, Oct 13, 2023 at 12:23:43PM +0100, Alejandro Vallejo wrote:
>>>> diff --git a/xen/arch/x86/include/asm/amd.h b/xen/arch/x86/include/asm/amd.h
>>>> index d862cb7972..5a40bcc2ba 100644
>>>> --- a/xen/arch/x86/include/asm/amd.h
>>>> +++ b/xen/arch/x86/include/asm/amd.h
>>>> @@ -145,11 +145,12 @@
>>>>   * 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.
>>>> + * The caller is required to perform the appropriate vendor check first.
>>>>   */
>>>> -#define is_zen1_uarch() (!boot_cpu_has(X86_FEATURE_AMD_STIBP))
>>>> -#define is_zen2_uarch()   boot_cpu_has(X86_FEATURE_AMD_STIBP)
>>>> +#define is_zen1_uarch() ((boot_cpu_data.x86 == 0x17 || boot_cpu_data.x86 == 0x18) && \
>>>> +                         !boot_cpu_has(X86_FEATURE_AMD_STIBP))
>>>> +#define is_zen2_uarch() (boot_cpu_data.x86 == 0x17 && \
>>>> +                         boot_cpu_has(X86_FEATURE_AMD_STIBP))
>>> What leads you to believe there aren't Hygon Zen2's ?
>> The same argument that a Hygon zen2 supports STIBP. Having seen neither HW
>> nor docs all that's left is divination skills :)

Hygon reported/fixed Zen2 uarch issues in Xen.  Something clearly exists.

~Andrew
--------------D4buNF50ZyVCR0nELFIpUXHb
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: 8bit

<!DOCTYPE html>
<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body>
    <div class="moz-cite-prefix">On 13/10/2023 7:36 pm, Roger Pau Monné
      wrote:<br>
    </div>
    <blockquote type="cite" cite="mid:ZSkrohpG69OU8M8y@macbook">
      <pre class="moz-quote-pre" wrap="">On Fri, Oct 13, 2023 at 12:23:43PM +0100, Alejandro Vallejo wrote:<span
      style="white-space: pre-wrap">
</span></pre>
      <blockquote type="cite">
        <blockquote type="cite">
          <blockquote type="cite">
            <pre class="moz-quote-pre" wrap="">diff --git a/xen/arch/x86/include/asm/amd.h b/xen/arch/x86/include/asm/amd.h
index d862cb7972..5a40bcc2ba 100644
--- a/xen/arch/x86/include/asm/amd.h
+++ b/xen/arch/x86/include/asm/amd.h
@@ -145,11 +145,12 @@
  * 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.
+ * The caller is required to perform the appropriate vendor check first.
  */
-#define is_zen1_uarch() (!boot_cpu_has(X86_FEATURE_AMD_STIBP))
-#define is_zen2_uarch()   boot_cpu_has(X86_FEATURE_AMD_STIBP)
+#define is_zen1_uarch() ((boot_cpu_data.x86 == 0x17 || boot_cpu_data.x86 == 0x18) &amp;&amp; \
+                         !boot_cpu_has(X86_FEATURE_AMD_STIBP))
+#define is_zen2_uarch() (boot_cpu_data.x86 == 0x17 &amp;&amp; \
+                         boot_cpu_has(X86_FEATURE_AMD_STIBP))
</pre>
          </blockquote>
          <pre class="moz-quote-pre" wrap="">
What leads you to believe there aren't Hygon Zen2's ?
</pre>
        </blockquote>
        <pre class="moz-quote-pre" wrap="">The same argument that a Hygon zen2 supports STIBP. Having seen neither HW
nor docs all that's left is divination skills :)</pre>
      </blockquote>
    </blockquote>
    <br>
    Hygon reported/fixed Zen2 uarch issues in Xen.  Something clearly
    exists.<br>
    <br>
    ~Andrew<br>
  </body>
</html>

--------------D4buNF50ZyVCR0nELFIpUXHb--


From xen-devel-bounces@lists.xenproject.org Fri Oct 13 14:33:53 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 14:33:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616587.958715 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrJET-00035S-Ey; Fri, 13 Oct 2023 14:33:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616587.958715; Fri, 13 Oct 2023 14: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 1qrJET-00035L-B3; Fri, 13 Oct 2023 14:33:41 +0000
Received: by outflank-mailman (input) for mailman id 616587;
 Fri, 13 Oct 2023 14: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=NVAw=F3=cloud.com=alejandro.vallejo@srs-se1.protection.inumbo.net>)
 id 1qrJER-00035C-Tu
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 14:33:39 +0000
Received: from mail-ej1-x630.google.com (mail-ej1-x630.google.com
 [2a00:1450:4864:20::630])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 7f9365af-69d5-11ee-98d4-6d05b1d4d9a1;
 Fri, 13 Oct 2023 16:33:38 +0200 (CEST)
Received: by mail-ej1-x630.google.com with SMTP id
 a640c23a62f3a-9ba081173a3so360883966b.1
 for <xen-devel@lists.xenproject.org>; Fri, 13 Oct 2023 07:33:38 -0700 (PDT)
Received: from EMEAENGAAD19049. (default-46-102-197-194.interdsl.co.uk.
 [46.102.197.194]) by smtp.gmail.com with ESMTPSA id
 p6-20020a1709061b4600b0098e2969ed44sm12363199ejg.45.2023.10.13.07.33.37
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Fri, 13 Oct 2023 07:33: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: 7f9365af-69d5-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1697207618; x=1697812418; darn=lists.xenproject.org;
        h=in-reply-to:content-transfer-encoding:content-disposition
         :mime-version:references:subject:cc:to:from:date:message-id:from:to
         :cc:subject:date:message-id:reply-to;
        bh=FmSVxW0sKWh03ge/ZJ3GZGuT3+zkVH4gU9pBgkwRYF0=;
        b=gXNYpigXKZdRPAvaW3wADHb9Ws613Ua0rs08a9GBECgg19/WicLrf1UNv/wSM4rvf3
         0tPq/8TK/vAnT6DZ2R1Lx4RALa93f/6hVv3bqpCa61yFyMryynIzxKBT53YCjrO3izXn
         elp9XDnHEos5Ss82PmnPtztdLDkdk97q4zg6g=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697207618; x=1697812418;
        h=in-reply-to:content-transfer-encoding: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=FmSVxW0sKWh03ge/ZJ3GZGuT3+zkVH4gU9pBgkwRYF0=;
        b=l0RojzURZmAnKong9+e9/GO7tqHKZkneec9oECRY8yynoQd3gQs7wt15a0k8gfV+U5
         AFfLaeSuRAJ0AtetHH5ubXlBYbnLvfxdcvuiXg1T/dN/Ogt+jtn8a9MTI0htu31jxuNz
         Nlxyms85psn8pVOvekYzAnd2KdTev05ppFYTsFVbr4lL26R5+oGIzlZYaSE27Fu6+ybc
         DFlOWDoYez9g9aYFVM6dtkg7nNl+Y26VL7KPuBjjkWxGeCwN4ZfV3cG8hBP+vmiWrkGq
         Z6L2vuDXpyUlS637+6nB43AWB5kijDC2rpSmcB3fuTsOHEZvxR4K7zHwPo9AnNLmTsRC
         uAcA==
X-Gm-Message-State: AOJu0Yy4u9e7iiuBeG9Yg30W+Hs3sSL4YfVAOQhPKaUUD5BJvA8xOl6R
	+br0OQx+QGPq+ETnz1dx1i0qch/pnPytXF5FZyQ=
X-Google-Smtp-Source: AGHT+IE0y5MGWRDknIp01Ud2ByT4CZvhq68jIQAmywS53KE3r6WPM/G14NyLnTt4YxyHAqk2IhLjyA==
X-Received: by 2002:a17:906:191:b0:9ba:13f1:5a62 with SMTP id 17-20020a170906019100b009ba13f15a62mr14351874ejb.34.1697207618068;
        Fri, 13 Oct 2023 07:33:38 -0700 (PDT)
Message-ID: <65295541.170a0220.81347.68b5@mx.google.com>
X-Google-Original-Message-ID: <ZSlVPuf0xp+FE9Ie@EMEAENGAAD19049.>
Date: Fri, 13 Oct 2023 15:33:34 +0100
From: Alejandro Vallejo <alejandro.vallejo@cloud.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: Xen-devel <xen-devel@lists.xenproject.org>,
	Jan Beulich <jbeulich@suse.com>,
	Roger Pau =?iso-8859-1?Q?Monn=E9?= <roger.pau@citrix.com>,
	Wei Liu <wl@xen.org>, Henry Wang <Henry.Wang@arm.com>
Subject: Re: [for-4.18][PATCH v2] x86/amd: Address AMD erratum #1485
References: <20231013131846.175702-1-alejandro.vallejo@cloud.com>
 <42d8ac8d-522e-424a-b002-9a0508f318da@citrix.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=iso-8859-1
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <42d8ac8d-522e-424a-b002-9a0508f318da@citrix.com>

On Fri, Oct 13, 2023 at 09:40:52PM +0800, Andrew Cooper wrote:
> On 13/10/2023 9:18 pm, Alejandro Vallejo wrote:
> > diff --git a/xen/arch/x86/cpu/amd.c b/xen/arch/x86/cpu/amd.c
> > index 4f27187f92..085c4772d7 100644
> > --- a/xen/arch/x86/cpu/amd.c
> > +++ b/xen/arch/x86/cpu/amd.c
> > @@ -1167,6 +1167,14 @@ static void cf_check init_amd(struct cpuinfo_x86 *c)
> >  	if (c->x86 == 0x10)
> >  		__clear_bit(X86_FEATURE_MONITOR, c->x86_capability);
> >  
> > +	/* Fix for AMD erratum #1485 */
> > +	if (!cpu_has_hypervisor && c->x86 == 0x19 && is_zen4_uarch()) {
> > +		rdmsrl(MSR_AMD64_BP_CFG, value);
> > +		#define ZEN4_BP_CFG_SHARED_BTB_FIX (1ull << 5)
> > +		wrmsrl(MSR_AMD64_BP_CFG,
> > +		       value | ZEN4_BP_CFG_SHARED_BTB_FIX);
> 
> A #define indented like that is weird. I tend to either opencode it
> directly in the "value |" expression, or have a local variable called
> chickenbit.
Ok, I don't mind either way. I'll just go with the chickenbit.

> 
> This will surely be a core scope MSR rather than thread scope,
It is, though I doubt it matters a whole lot. The writes are consistent
anyway.

> at which
> point the write ought to be conditional on seeing the chickenbit
> clear (hence needing to refer to the value at least twice, so use a
> local variable).
I have serious doubts such a conditional would do much for boot times, but
sure.

> 
> It probably also wants a note about non-atomic RMW, and how it's safe in
> practice. (See the Zenbleed comment).
Fair enough.

> 
> Otherwise, LGTM.
> 
> As this is just cribbing from an existing example, I'm happy to adjust
> on commit, but it's probably better to double check in the PPR and retest.
> 
> ~Andrew

Let me send a v3 after re-testing with the conditional in place

Thanks,
Alejandro


From xen-devel-bounces@lists.xenproject.org Fri Oct 13 14:41:58 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 14:41:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616592.958725 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrJMQ-0005Pd-Ab; Fri, 13 Oct 2023 14:41:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616592.958725; Fri, 13 Oct 2023 14:41: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 1qrJMQ-0005PW-7x; Fri, 13 Oct 2023 14:41:54 +0000
Received: by outflank-mailman (input) for mailman id 616592;
 Fri, 13 Oct 2023 14:41: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 1qrJMO-0005PQ-ET
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 14:41: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 1qrJMN-00035l-9k; Fri, 13 Oct 2023 14:41: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 1qrJMN-0002Ux-1x; Fri, 13 Oct 2023 14:41: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=mbJFrt1Pz/vTc4M/fkhaUGTqdP4+e9AIrpzssAF0ctw=; b=SvkGvjvJOC+i+eJXc8r/udGCvq
	fwsz3Z9zaCgIM11hrqEr3+x9WbKsKiTZecHwhB1OyOfwZg72yEgoL6qd+TOx/DYYuY6XDQEqD9I97
	J8mOwTZoxCTIkoHGBjYfreWhyXnV1gvtGLoxkaihNHH5kEHOoaXF5XMmK6wpqF8ZOVq8=;
Message-ID: <68ca37b9-54af-4d73-8ebd-8f567b9e7969@xen.org>
Date: Fri, 13 Oct 2023 15:41:49 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [for-4.18][PATCH v2] x86/amd: Address AMD erratum #1485
Content-Language: en-GB
To: Alejandro Vallejo <alejandro.vallejo@cloud.com>,
 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>, Henry Wang <Henry.Wang@arm.com>
References: <20231013131846.175702-1-alejandro.vallejo@cloud.com>
 <42d8ac8d-522e-424a-b002-9a0508f318da@citrix.com>
 <65295541.170a0220.81347.68b5@mx.google.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <65295541.170a0220.81347.68b5@mx.google.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi Alejandro,

The original e-mail didn't yet reach my inbox. So answering here as 
there are enough context.

On 13/10/2023 15:33, Alejandro Vallejo wrote:
> On Fri, Oct 13, 2023 at 09:40:52PM +0800, Andrew Cooper wrote:
>> On 13/10/2023 9:18 pm, Alejandro Vallejo wrote:
>>> diff --git a/xen/arch/x86/cpu/amd.c b/xen/arch/x86/cpu/amd.c
>>> index 4f27187f92..085c4772d7 100644
>>> --- a/xen/arch/x86/cpu/amd.c
>>> +++ b/xen/arch/x86/cpu/amd.c
>>> @@ -1167,6 +1167,14 @@ static void cf_check init_amd(struct cpuinfo_x86 *c)
>>>   	if (c->x86 == 0x10)
>>>   		__clear_bit(X86_FEATURE_MONITOR, c->x86_capability);
>>>   
>>> +	/* Fix for AMD erratum #1485 */
>>> +	if (!cpu_has_hypervisor && c->x86 == 0x19 && is_zen4_uarch()) {
>>> +		rdmsrl(MSR_AMD64_BP_CFG, value);
>>> +		#define ZEN4_BP_CFG_SHARED_BTB_FIX (1ull << 5)

You are introducing a violation to MISRA Rule 7.3 [1] which was accepted 
recently. You want to use 1ULL rather than the lower case version.

[1] 
https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/R_07_03.c

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Fri Oct 13 14:47:30 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 14:47:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616611.958752 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrJRn-0007en-BY; Fri, 13 Oct 2023 14:47:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616611.958752; Fri, 13 Oct 2023 14:47: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 1qrJRn-0007eg-6h; Fri, 13 Oct 2023 14:47:27 +0000
Received: by outflank-mailman (input) for mailman id 616611;
 Fri, 13 Oct 2023 14:47: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=U36v=F3=suse.com=jgross@srs-se1.protection.inumbo.net>)
 id 1qrJRm-0006sA-BN
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 14:47:26 +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 6c77f041-69d7-11ee-98d4-6d05b1d4d9a1;
 Fri, 13 Oct 2023 16:47:25 +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 C639B2188E;
 Fri, 13 Oct 2023 14:47:24 +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 7076B138EF;
 Fri, 13 Oct 2023 14:47:24 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap2.suse-dmz.suse.de with ESMTPSA id RLCZGXxYKWW/OgAAMHmgww
 (envelope-from <jgross@suse.com>); Fri, 13 Oct 2023 14:47: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: 6c77f041-69d7-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1697208444; 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=bejJXO8Vqfv8E2pAMwJrx83RBeAkmrFFcYNwGrFO4B4=;
	b=lIyZjiSm9ciWecu27HoPRSDUqTNzLQIhwvKUWm19nSmQMZwOl1dXZrTxodFcXb2zSoqj6j
	tLQvl53dZPdJZuO92aZClBxjJktoUq6QdzgFUglGdHPQyIjZoQ93UGoKJ7Pj95ja6Cp2WC
	Y2Nrp9eW5Q8nUmB7r5i/GVD4WqvlwRI=
Message-ID: <5390a035-f0e8-498c-b059-b9eca3a5c6ac@suse.com>
Date: Fri, 13 Oct 2023 16:47:23 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: Xen 4.18 release: Reminder about code freeze
Content-Language: en-US
To: Julien Grall <julien@xen.org>, George Dunlap <george.dunlap@cloud.com>,
 Stefano Stabellini <sstabellini@kernel.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>, Henry Wang
 <Henry.Wang@arm.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 Bertrand Marquis <Bertrand.Marquis@arm.com>, Jan Beulich
 <jbeulich@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>
 <a31ce6cb-6234-5e7f-5cd4-ed190f029811@citrix.com>
 <alpine.DEB.2.22.394.2309271658500.1403502@ubuntu-linux-20-04-desktop>
 <CA+zSX=ZbeUFrfAUJShooJFJ+d89f4xdXfJJ9HoJKRh4UStkTFQ@mail.gmail.com>
 <alpine.DEB.2.22.394.2310121535580.3431292@ubuntu-linux-20-04-desktop>
 <CA+zSX=Y5dMVFM6dVNgBRHxKc0C1e5WGgweQ0FaXXCfAFGH1aPA@mail.gmail.com>
 <a93839b8-932a-4634-9549-081df950afb2@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: <a93839b8-932a-4634-9549-081df950afb2@xen.org>
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature";
 boundary="------------0fyiXdGR0Xh06dpW74G73v0o"
Authentication-Results: smtp-out1.suse.de;
	none
X-Spam-Level: 
X-Spam-Score: -8.99
X-Spamd-Result: default: False [-8.99 / 50.00];
	 ARC_NA(0.00)[];
	 TO_DN_EQ_ADDR_SOME(0.00)[];
	 XM_UA_NO_VERSION(0.01)[];
	 FROM_HAS_DN(0.00)[];
	 TO_DN_SOME(0.00)[];
	 TO_MATCH_ENVRCPT_ALL(0.00)[];
	 BAYES_HAM(-3.00)[100.00%];
	 MIME_GOOD(-0.20)[multipart/signed,multipart/mixed,text/plain];
	 HAS_ATTACHMENT(0.00)[];
	 RCVD_VIA_SMTP_AUTH(0.00)[];
	 NEURAL_HAM_LONG(-3.00)[-1.000];
	 DKIM_SIGNED(0.00)[suse.com:s=susede1];
	 NEURAL_HAM_SHORT(-1.00)[-1.000];
	 MIME_BASE64_TEXT(0.10)[];
	 RCPT_COUNT_SEVEN(0.00)[11];
	 SIGNED_PGP(-2.00)[];
	 FROM_EQ_ENVFROM(0.00)[];
	 MIME_TRACE(0.00)[0:+,1:+,2:+,3:+,4:~,5:~];
	 RCVD_COUNT_TWO(0.00)[2];
	 RCVD_TLS_ALL(0.00)[];
	 MID_RHS_MATCH_FROM(0.00)[];
	 MIME_UNKNOWN(0.10)[application/pgp-keys]
X-Spam-Flag: NO

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--------------0fyiXdGR0Xh06dpW74G73v0o
Content-Type: multipart/mixed; boundary="------------2LSrz6n6BZgq8Gv1Dkf4QCII";
 protected-headers="v1"
From: Juergen Gross <jgross@suse.com>
To: Julien Grall <julien@xen.org>, George Dunlap <george.dunlap@cloud.com>,
 Stefano Stabellini <sstabellini@kernel.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>, Henry Wang
 <Henry.Wang@arm.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 Bertrand Marquis <Bertrand.Marquis@arm.com>, Jan Beulich
 <jbeulich@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>
Message-ID: <5390a035-f0e8-498c-b059-b9eca3a5c6ac@suse.com>
Subject: Re: Xen 4.18 release: Reminder about code freeze
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>
 <alpine.DEB.2.22.394.2309271658500.1403502@ubuntu-linux-20-04-desktop>
 <CA+zSX=ZbeUFrfAUJShooJFJ+d89f4xdXfJJ9HoJKRh4UStkTFQ@mail.gmail.com>
 <alpine.DEB.2.22.394.2310121535580.3431292@ubuntu-linux-20-04-desktop>
 <CA+zSX=Y5dMVFM6dVNgBRHxKc0C1e5WGgweQ0FaXXCfAFGH1aPA@mail.gmail.com>
 <a93839b8-932a-4634-9549-081df950afb2@xen.org>
In-Reply-To: <a93839b8-932a-4634-9549-081df950afb2@xen.org>

--------------2LSrz6n6BZgq8Gv1Dkf4QCII
Content-Type: multipart/mixed; boundary="------------gbr2Uoo9zLlfZGNBeWOmIT3z"

--------------gbr2Uoo9zLlfZGNBeWOmIT3z
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: base64

T24gMTMuMTAuMjMgMTM6MjIsIEp1bGllbiBHcmFsbCB3cm90ZToNCj4gSGkgR2VvcmdlLA0K
PiANCj4gT24gMTMvMTAvMjAyMyAxMToxNiwgR2VvcmdlIER1bmxhcCB3cm90ZToNCj4+IE9u
IFRodSwgT2N0IDEyLCAyMDIzIGF0IDExOjM24oCvUE0gU3RlZmFubyBTdGFiZWxsaW5pDQo+
PiA8c3N0YWJlbGxpbmlAa2VybmVsLm9yZz4gd3JvdGU6DQo+Pj4NCj4+PiBPbiBUaHUsIDEy
IE9jdCAyMDIzLCBHZW9yZ2UgRHVubGFwIHdyb3RlOg0KPj4+Pj4+IFN0b3AgdGlua2VyaW5n
IGluIHRoZSBob3BlIHRoYXQgaXQgaGlkZXMgdGhlIHByb2JsZW0uwqAgWW91J3JlIG9ubHkN
Cj4+Pj4+PiBtYWtpbmcgaXQgaGFyZGVyIHRvIGZpeCBwcm9wZXJseS4NCj4+Pj4+DQo+Pj4+
PiBNYWtpbmcgaXQgaGFyZGVyIHRvIGZpeCBwcm9wZXJseSB3b3VsZCBiZSBhIHZhbGlkIHJl
YXNvbiBub3QgdG8gY29tbWl0DQo+Pj4+PiB0aGUgKG1heWJlIHBhcnRpYWwpIGZpeC4gQnV0
IGxvb2tpbmcgYXQgdGhlIGZpeCBhZ2FpbjoNCj4+Pj4+DQo+Pj4+PiBkaWZmIC0tZ2l0IGEv
dG9vbHMveGVuc3RvcmVkL2RvbWFpbi5jIGIvdG9vbHMveGVuc3RvcmVkL2RvbWFpbi5jDQo+
Pj4+PiBpbmRleCBhNmNkMTk5ZmRjLi45Y2Q2Njc4MDE1IDEwMDY0NA0KPj4+Pj4gLS0tIGEv
dG9vbHMveGVuc3RvcmVkL2RvbWFpbi5jDQo+Pj4+PiArKysgYi90b29scy94ZW5zdG9yZWQv
ZG9tYWluLmMNCj4+Pj4+IEBAIC05ODksNiArOTg5LDcgQEAgc3RhdGljIHN0cnVjdCBkb21h
aW4gKmludHJvZHVjZV9kb21haW4oY29uc3Qgdm9pZCAqY3R4LA0KPj4+Pj4gwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgdGFsbG9jX3N0ZWFsKGRvbWFpbi0+Y29ubiwgZG9t
YWluKTsNCj4+Pj4+DQo+Pj4+PiDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBp
ZiAoIXJlc3RvcmUpIHsNCj4+Pj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoCBkb21haW5fY29ubl9yZXNldChkb21haW4pOw0KPj4+Pj4gwqDCoMKg
wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIC8qIE5vdGlmeSB0
aGUgZG9tYWluIHRoYXQgeGVuc3RvcmUgaXMgYXZhaWxhYmxlICovDQo+Pj4+PiDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgaW50ZXJmYWNlLT5j
b25uZWN0aW9uID0gWEVOU1RPUkVfQ09OTkVDVEVEOw0KPj4+Pj4gwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHhlbmV2dGNobl9ub3RpZnkoeGNl
X2hhbmRsZSwgZG9tYWluLT5wb3J0KTsNCj4+Pj4+IEBAIC0xMDMxLDggKzEwMzIsNiBAQCBp
bnQgZG9faW50cm9kdWNlKGNvbnN0IHZvaWQgKmN0eCwgc3RydWN0IGNvbm5lY3Rpb24gDQo+
Pj4+PiAqY29ubiwNCj4+Pj4+IMKgwqDCoMKgwqDCoMKgwqAgaWYgKCFkb21haW4pDQo+Pj4+
PiDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCByZXR1cm4gZXJybm87DQo+Pj4+
Pg0KPj4+Pj4gLcKgwqDCoMKgwqDCoCBkb21haW5fY29ubl9yZXNldChkb21haW4pOw0KPj4+
Pj4gLQ0KPj4+Pj4gwqDCoMKgwqDCoMKgwqDCoCBzZW5kX2Fjayhjb25uLCBYU19JTlRST0RV
Q0UpOw0KPj4+Pj4NCj4+Pj4+IEl0IGlzIGEgMS1saW5lIG1vdmVtZW50LiBUZXh0dWFsbHkg
c21hbGwuIEVhc3kgdG8gdW5kZXJzdGFuZCBhbmQgdG8NCj4+Pj4+IHJldmVydC4gSXQgZG9l
c24ndCBzZWVtIHRvIGJlIG1ha2luZyB0aGluZ3MgaGFyZGVyIHRvIGZpeD8gV2UgY291bGQN
Cj4+Pj4+IHJldmVydCBpdCBhbnkgdGltZSBpZiBhIGJldHRlciBmaXggaXMgb2ZmZXJlZC4N
Cj4+Pj4+DQo+Pj4+PiBNYXliZSB3ZSBjb3VsZCBoYXZlIGEgWFhYIG5vdGUgaW4gdGhlIGNv
bW1pdCBtZXNzYWdlIG9yIGluLWNvZGUNCj4+Pj4+IGNvbW1lbnQ/DQo+Pj4+DQo+Pj4+IEl0
IG1vdmVzIGEgbGluZSBmcm9tIG9uZSBmdW5jdGlvbiAoZG9fZG9tYWluX2ludHJvZHVjZSgp
KSBpbnRvIGENCj4+Pj4gY29tcGxldGVseSBkaWZmZXJlbnQgZnVuY3Rpb24gKGludHJvZHVj
ZV9kb21haW4oKSksIG5lc3RlZCBpbnNpZGUgdHdvDQo+Pj4+IGlmKCkgc3RhdGVtZW50czsg
d2l0aCBubyBhbmFseXNpcyBvbiBob3cgdGhlIGNoYW5nZSB3aWxsIGltcGFjdA0KPj4+PiB0
aGluZ3MuDQo+Pj4NCj4+PiBJIGFtIG5vdCB0aGUgb3JpZ2luYWwgYXV0aG9yIG9mIHRoZSBw
YXRjaCwgYW5kIEkgYW0gbm90IHRoZSBtYWludGFpbmVyDQo+Pj4gb2YgdGhlIGNvZGUsIHNv
IEkgZG9uJ3QgZmVlbCBJIGhhdmUgdGhlIHF1YWxpZmljYXRpb25zIHRvIGdpdmUgeW91IHRo
ZQ0KPj4+IGFuc3dlcnMgeW91IGFyZSBzZWVraW5nLiBKdWxpZW4gYXMgYXV0aG9yIG9mIHRo
ZSBwYXRjaCBhbmQgeGVuc3RvcmUNCj4+PiByZXZpZXdlciBtaWdodCBiZSBpbiBhIGJldHRl
ciBwb3NpdGlvbiB0byBhbnN3ZXIuIE9yIEp1ZXJnZW4gYXMgeGVuc3RvcmUNCj4+PiBtYWlu
dGFpbmVyLg0KPj4NCj4+IEkgdW5kZXJzdGFuZCB0aGF0OyBteSBtYWluIHBvaW50IGlzIHRo
YXQgdGhlIGNoYW5nZSBpcyBtb3JlIGNvbXBsZXgNCj4+IHRoYW4geW91J3JlIGNoYXJhY3Rl
cml6aW5nIGl0LsKgIFRoaXMgaXMgaW5mb3JtYXRpb24gbmVjZXNzYXJ5IHRvDQo+PiB1bmRl
cnN0YW5kIHdoZXRoZXIgdGhlIHBhdGNoIGlzIGNvcnJlY3QsIGJ1dCBpdCdzIG5vdCBpbiB0
aGUgcGF0Y2gNCj4+IGRlc2NyaXB0aW9uLCBub3IgaW4gdGhlIHN1YnNlcXVlbnQgdGhyZWFk
IGJhY2sgaW4gTWF5Lg0KPj4NCj4+Pj4gQXJlIHRoZXJlIGFueSBwYXRocyB0aHJvdWdoIGRv
X2RvbWFpbl9pbnRyb2R1Y2UoKSB0aGF0IG5vdyAqd29uJ3QqIGdldA0KPj4+PiBhIGRvbWFp
bl9jb25uX3Jlc2V0KCkgY2FsbD/CoCBJcyB0aGF0IE9LPw0KPj4+DQo+Pj4gWWVzLCB0aGUg
YWxyZWFkeS1pbnRyb2R1Y2VkIGFuZCB0aGUgcmVzdG9yZSBjb2RlIHBhdGhzLiBUaGUgb3Bl
cmF0aW9ucyBpbg0KPj4+IHRoZSBhbHJlYWR5LWludHJvZHVjZWQgb3IgdGhlIHJlc3RvcmUg
Y29kZSBwYXRocyBzZWVtIHNpbXBsZSBlbm91Z2ggbm90DQo+Pj4gdG8gcmVxdWlyZSBhIGRv
bWFpbl9jb25uX3Jlc2V0LiBKdWxpZW4gYW5kIEp1ZXJnZW4gc2hvdWxkIGNvbmZpcm0uDQo+
Pg0KPj4gVGhlcmUgaXMgbm8gInJlc3RvcmUiIGNvZGVwYXRoIHRocm91Z2ggZG9fZG9tYWlu
X2ludHJvZHVjZSgpOyBpdA0KPj4gcGFzc2VzICJmYWxzZSIgZm9yIHRoZSAicmVzdG9yZSIg
YXJndW1lbnQuwqAgU28gd2XCoCBvbmx5IGhhdmUgdHdvIHBhdGhzDQo+PiB0byBjb25zaWRl
ciB0aHJvdWdoIGRvX2RvbWFpbl9pbnRyb2R1Y2UoKTogVGhlICJub3QgaW50cm9kdWNlZCBh
bmQgbm90DQo+PiByZXN0b3JpbmciIHBhdGgsIGFuZCB0aGUgImFscmVhZHktaW50cm9kdWNl
ZCIgcGF0aC4NCj4+DQo+PiBJJ20gbm90IHN1cmUgd2hhdCB0aGUgInNpbXBsZSIgZWxlbWVu
dHMgb24gdGhlIGJyYW5jaCBpbg0KPj4gaW50cm9kdWNlX2RvbWFpbigpIGhhdmUgdG8gZG8g
d2l0aCB3aGV0aGVyIHRoZSBjb250ZW50IG9mIHRoZSBwYWdlDQo+PiBuZWVkcyB0byBiZSBj
bGVhbmVkIHVwLsKgIEFzIEkgc2FpZCwgSSBkb24ndCAxMDAlIHVuZGVyc3RhbmQgdGhpcyBj
b2RlLA0KPj4gYnV0IGl0IHNlZW1zIGxpa2UgaWYgYW55dGhpbmcsIHRoZSByZXNldCB3b3Vs
ZCBiZSAqbW9yZSogaW1wb3J0YW50IHRvDQo+PiBoYXZlIGluIHRoZSAicmVpbnRyb2R1Y2Ui
IGNhc2UgdGhhbiBpbiB0aGUgImluaXRpYWwgaW50cm9kdWN0aW9uIg0KPj4gY2FzZSwgc2lu
Y2UgSSdkIGV4cGVjdCB0aGUgImluaXRpYWwgaW50cm9kdWN0aW9uIiBjYXNlIHRvIGJlIGVt
cHR5DQo+PiBhbHJlYWR5Lg0KPiBJbmRlZWQsIHRoZXJlIHNob3VsZCBiZSBubyB3YXRjaGVz
L3RyYW5zYWN0aW9ucy9idWZmZXJlZCBJL08gZm9yIHRoZSBpbml0aWFsIA0KPiBpbnRyb2R1
Y3Rpb24uIEhvd2V2ZXIsIHRoZSBmdW5jdGlvbiBpcyBhbHNvIGNsZWFyIHBhcnQgb2YgdGhl
IGludGVyZmFjZSBiZWNhdXNlIA0KPiB3ZSBjYW4ndCBndWFyYW50ZWVkIGl0IHdhcyB6ZXJv
ZWQuDQo+IA0KPiBUaGUgbGF0dGVyIG1hdHRlciBmb3IgdGhlIGluaXRpYWwgaW50cm9kdWN0
aW9uLiBJIGJlbGlldmUgdGhlIHJlc3QgaXMganVzdCANCj4gY2FsbGVkIGZvciBzaW1wbGlj
aXR5Lg0KPiANCj4+DQo+Pj4gRG9lc24ndCBpdCBzZWVtIHdlaXJkIHRvIHlvdSB0aGF0IHdl
IHNldCBhIGNvbm5lY3Rpb24gdG8gQ09OTkVDVEVELA0KPj4+IG5vdGlmeSB0aGUgZG9tYWlu
IHRoYXQgaXQgaXMgcmVhZHkgdG8gZ28sIGFuZCBvbmx5ICphZnRlciogdGhhdCB3ZSByZXNl
dA0KPj4+IHRoZSBjb25uZWN0aW9uIHRvIHplcm8/DQo+Pj4NCj4+PiBXaGF0IGhhcHBlbnMg
aWYgYSBkb21haW4gc3RhcnRzIHVzaW5nIHRoZSBjb25uZWN0aW9uIGFzIHNvb24gYXMgaXQN
Cj4+PiByZWNlaXZlcyB0aGUgZXZlbnQgY2hhbm5lbCBub3RpZmljYXRpb24gYW5kIGJlZm9y
ZSBkb21haW5fY29ubl9yZXNldCBpcw0KPj4+IGNhbGxlZD8NCj4+DQo+PiBZZXMsIGl0IGRv
ZXMgc2VlbSB3ZWlyZCwgd2hpY2ggaXMgd2h5IEkgc2FpZCB0aGUgZm9sbG93aW5nLiA6LSkN
Cj4+DQo+Pj4+IEkgbWVhbiwgaXQgY2VydGFpbmx5IHNlZW1zIHN0cmFuZ2UgdG8gc2V0IHRo
ZSBzdGF0ZSB0byBDT05ORUNURUQsIHNlbmQNCj4+Pj4gb2ZmIGFuIGV2ZW50IGNoYW5uZWws
IGFuZCB0aGVuIGFmdGVyIHRoYXQgZGVsZXRlIGFsbCB3YXRjaGVzIC8NCj4+Pj4gdHJhbnNh
Y3Rpb25zIC8gYnVmZmVyZWQgZGF0YSBhbmQgc28gb247DQo+Pg0KPj4gQnV0IGp1c3QgYmVj
YXVzZSB0aGUgY3VycmVudCBjb2RlIGlzIHByb2JhYmx5IHdyb25nLCBkb2Vzbid0IG1lYW4g
dGhhdA0KPj4gdGhlIG1vZGlmaWVkIGNvZGUgaXMgcHJvYmFibHkgY29ycmVjdC4NCj4+DQo+
PiBJZiB0aGUgcHJvYmxlbSBpcyB0aGUgZGVsYXkgYmV0d2VlbiB0aGUgeGVuZXZ0Y2huX25v
dGlmeSgpIGluDQo+PiBpbnRyb2R1Y2VfZG9tYWluKCkgYW5kIHRoZSBkb21haW5fY29ubl9y
ZXNldCgpIGFmdGVyd2FyZHMgaW4NCj4+IGRvX2RvbWFpbigpLCB3b3VsZCBpdCBtYWtlIHNl
bnNlIGluc3RlYWQgdG8gbW92ZSB0aGUgbm90aWZpY2F0aW9uIGludG8NCj4+IGRvX2ludHJv
ZHVjZSgpLCBhZnRlciB0aGUgZG9tYWluX2Nvbm5fcmVzZXQoKT/CoCBJdCBpcywgYWZ0ZXIg
YWxsLCBpbg0KPj4gcmVzcG9uc2UgdG8gWFNfSU5UUk9EVUNFIHRoYXQgd2Ugd2FudCB0byBz
ZW5kIHRoZSBub3RpZmljYXRpb24sIG5vdCBpbg0KPj4gZG9tMF9pbml0KCkgb3IgcmVhZF9z
dGF0ZV9jb25uZWN0aW9uKCkgKHdoaWNoIHNlZW1zIHRvIGJlIG1vcmUgYWJvdXQNCj4+IHJl
c3RvcmluZyBhIGRvbWFpbikuDQo+IA0KPiBJIHVuZGVyc3RhbmQgdGhhdCB0aGUgZXZlbnQg
Y2hhbm5lbCBub3RpZmljYXRpb24gd2FzIHNwZWNpZmljYWxseSBhZGRlZCBmb3IgDQo+IGRv
bTBsZXNzLiBCdXQgSSBkb24ndCBzZWUgd2h5IHdlIGRvbid0IHdhbnQgdG8gc2VuZCBpdCB0
byBkb20wIGFzIHdlbGwuDQo+IA0KPiBUZWNobmljYWxseSwgZG9tMCBoYXMgZXhhY3RseSB0
aGUgc2FtZSBwcm9ibGVtIGFzIGRvbTBsZXNzIGRvbWFpbnMgaXQgYm9vdHMgDQo+IGJlZm9y
ZSBYZW5zdG9yZWQgaXMgcnVubmluZyBhbmQgdGhlcmVmb3JlIGl0IG1heSBuZWVkIHRvIGtu
b3cgd2hlbiBpdCBpcyByZWFkeSANCj4gdG8gcmVjZWl2ZSBjb21tYW5kcy4NCg0KVW1tLCBu
bywgbm90IHJlYWxseS4NCg0KVGhlIG1haW4gZGlmZmVyZW5jZSBiZXR3ZWVuIGRvbTAgYW5k
IGEgZG9tMGxlc3MgZG9tVSBpcywgdGhhdCB4ZW5zdG9yZWQNCmludHJvZHVjZXMgZG9tMCBi
eSBpdHNlbGYgdmlhIGEgY2FsbCBvZiBkb20wX2luaXQoKSwgd2hpbGUgdGhlIGRvbTBsZXNz
DQpkb21VcyBnZXQgaW50cm9kdWNlZCBieSBYZW4gdG9vbHMgaW4gY2FzZSBhIGRvbTAgaXMg
Y29taW5nIHVwIGxhdGVyLiBBbmQNCnRoYXQgWFNfSU5UUk9EVUNFIHdpbGwgY2xvYmJlciBh
bnkgcmluZyBwYWdlIGNvbnRlbnRzLCB3aGlsZSBhIGNhbGwgb2YNCmRvbTBfaW5pdCgpIHdv
bid0IGRvIHRoYXQuDQoNCkRvbTAgKGVzcGVjaWFsbHkgdGhlIGtlcm5lbCkgaXMgZmluZSB0
byBzdGFydCBmaWxsaW5nIHRoZSByaW5nIHBhZ2Ugd2l0aA0KcmVxdWVzdHMgZXZlbiBiZWZv
cmUgeGVuc3RvcmVkIGlzIHJ1bm5pbmcuIEl0IGp1c3Qgc2hvdWxkbid0IGV4cGVjdCB0bw0K
cmVjZWl2ZSBhbnkgcmVzcG9uc2VzIHJpZ2h0IGF3YXkuDQoNCg0KSnVlcmdlbg0K
--------------gbr2Uoo9zLlfZGNBeWOmIT3z
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-----

--------------gbr2Uoo9zLlfZGNBeWOmIT3z--

--------------2LSrz6n6BZgq8Gv1Dkf4QCII--

--------------0fyiXdGR0Xh06dpW74G73v0o
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/Ey8FAmUpWHwFAwAAAAAACgkQsN6d1ii/Ey8l
7Af/Q11diqcgfj1zXeKjEx8lLt9TtTy25gzzZShiViFflgGcRIDGRQlkzEvgzY7ciCojns+eixQY
w1LYrrR3djXlJUGJ9J7bE1Kbnprpc5I6YYxw/lsSauGMyaARCxesrVyrwG1meUmxVR1XeUCB8Gae
A9/0QUbcxpalUGJ6v0qLH0A0INHlJxlQ6oMBufeNPpwU+hNGa47IHWjC9w7+Sn9JqUpHErYC2yMr
K6KwYc6QZWla/KT4N2hGCu+eQ9sxl8liq/JvrHrSi0WAXv3ujllwa77+AsIjEcZo3sJZowG/Vwmz
bvTBKQVOn5B9Fx4vVhGYe46p11GCCh1oYwibragRyQ==
=x5G0
-----END PGP SIGNATURE-----

--------------0fyiXdGR0Xh06dpW74G73v0o--


From xen-devel-bounces@lists.xenproject.org Fri Oct 13 14:51:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 14:51:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616619.958761 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrJW3-0000qx-Qy; Fri, 13 Oct 2023 14:51:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616619.958761; Fri, 13 Oct 2023 14:51: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 1qrJW3-0000qq-OF; Fri, 13 Oct 2023 14:51:51 +0000
Received: by outflank-mailman (input) for mailman id 616619;
 Fri, 13 Oct 2023 14:51:50 +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 1qrJW2-0000qk-Cu
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 14:51:50 +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 1qrJVz-0003Hd-Mx; Fri, 13 Oct 2023 14:51:47 +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 1qrJVz-0002pP-FW; Fri, 13 Oct 2023 14:51: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=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=2E+Fize500ZHHrCNXNvrOrXnPvKAyPZxiJHPyDS1quI=; b=oMrEBnbIiypgGzCGBnrWJuarn2
	wzq9tAG6UpgfyU5i3SejrtLrqRIwaTnxMCjKWR7MO3EM5D1CsWWdfm7Bm2PIuJJJfNR2oVMHmZoyW
	Gf7AJQs3pUjkHpsjF1siDaDh1G9C89CWG3NuKm4qahoqy+IrpqU4yVXd69XzDqLbfYK0=;
Message-ID: <e76d5b41-5057-4ebe-affd-ae1a158071a1@xen.org>
Date: Fri, 13 Oct 2023 15:51:45 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: Xen 4.18 release: Reminder about code freeze
Content-Language: en-GB
To: Juergen Gross <jgross@suse.com>, George Dunlap <george.dunlap@cloud.com>,
 Stefano Stabellini <sstabellini@kernel.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>, Henry Wang
 <Henry.Wang@arm.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 Bertrand Marquis <Bertrand.Marquis@arm.com>, Jan Beulich
 <jbeulich@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>
 <a31ce6cb-6234-5e7f-5cd4-ed190f029811@citrix.com>
 <alpine.DEB.2.22.394.2309271658500.1403502@ubuntu-linux-20-04-desktop>
 <CA+zSX=ZbeUFrfAUJShooJFJ+d89f4xdXfJJ9HoJKRh4UStkTFQ@mail.gmail.com>
 <alpine.DEB.2.22.394.2310121535580.3431292@ubuntu-linux-20-04-desktop>
 <CA+zSX=Y5dMVFM6dVNgBRHxKc0C1e5WGgweQ0FaXXCfAFGH1aPA@mail.gmail.com>
 <a93839b8-932a-4634-9549-081df950afb2@xen.org>
 <5390a035-f0e8-498c-b059-b9eca3a5c6ac@suse.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <5390a035-f0e8-498c-b059-b9eca3a5c6ac@suse.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

Hi Juergen,

On 13/10/2023 15:47, Juergen Gross wrote:
> On 13.10.23 13:22, Julien Grall wrote:
>> Hi George,
>>
>> On 13/10/2023 11:16, George Dunlap wrote:
>>> On Thu, Oct 12, 2023 at 11:36 PM Stefano Stabellini
>>> <sstabellini@kernel.org> wrote:
>>>>
>>>> On Thu, 12 Oct 2023, George Dunlap wrote:
>>>>>>> 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?
>>>>>
>>>>> It moves a line from one function (do_domain_introduce()) into a
>>>>> completely different function (introduce_domain()), nested inside two
>>>>> if() statements; with no analysis on how the change will impact
>>>>> things.
>>>>
>>>> I am not the original author of the patch, and I am not the maintainer
>>>> of the code, so I don't feel I have the qualifications to give you the
>>>> answers you are seeking. Julien as author of the patch and xenstore
>>>> reviewer might be in a better position to answer. Or Juergen as 
>>>> xenstore
>>>> maintainer.
>>>
>>> I understand that; my main point is that the change is more complex
>>> than you're characterizing it.  This is information necessary to
>>> understand whether the patch is correct, but it's not in the patch
>>> description, nor in the subsequent thread back in May.
>>>
>>>>> Are there any paths through do_domain_introduce() that now *won't* get
>>>>> a domain_conn_reset() call?  Is that OK?
>>>>
>>>> Yes, the already-introduced and the restore code paths. The 
>>>> operations in
>>>> the already-introduced or the restore code paths seem simple enough not
>>>> to require a domain_conn_reset. Julien and Juergen should confirm.
>>>
>>> There is no "restore" codepath through do_domain_introduce(); it
>>> passes "false" for the "restore" argument.  So we  only have two paths
>>> to consider through do_domain_introduce(): The "not introduced and not
>>> restoring" path, and the "already-introduced" path.
>>>
>>> I'm not sure what the "simple" elements on the branch in
>>> introduce_domain() have to do with whether the content of the page
>>> needs to be cleaned up.  As I said, I don't 100% understand this code,
>>> but it seems like if anything, the reset would be *more* important to
>>> have in the "reintroduce" case than in the "initial introduction"
>>> case, since I'd expect the "initial introduction" case to be empty
>>> already.
>> Indeed, there should be no watches/transactions/buffered I/O for the 
>> initial introduction. However, the function is also clear part of the 
>> interface because we can't guaranteed it was zeroed.
>>
>> The latter matter for the initial introduction. I believe the rest is 
>> just called for simplicity.
>>
>>>
>>>> Doesn't it seem weird to you that we set a connection to CONNECTED,
>>>> notify the domain that it is ready to go, and only *after* that we 
>>>> reset
>>>> the connection to zero?
>>>>
>>>> What happens if a domain starts using the connection as soon as it
>>>> receives the event channel notification and before domain_conn_reset is
>>>> called?
>>>
>>> Yes, it does seem weird, which is why I said the following. :-)
>>>
>>>>> I mean, it certainly seems strange to set the state to CONNECTED, send
>>>>> off an event channel, and then after that delete all watches /
>>>>> transactions / buffered data and so on;
>>>
>>> But just because the current code is probably wrong, doesn't mean that
>>> the modified code is probably correct.
>>>
>>> If the problem is the delay between the xenevtchn_notify() in
>>> introduce_domain() and the domain_conn_reset() afterwards in
>>> do_domain(), would it make sense instead to move the notification into
>>> do_introduce(), after the domain_conn_reset()?  It is, after all, in
>>> response to XS_INTRODUCE that we want to send the notification, not in
>>> dom0_init() or read_state_connection() (which seems to be more about
>>> restoring a domain).
>>
>> I understand that the event channel notification was specifically 
>> added for dom0less. But I don't see why we don't want to send it to 
>> dom0 as well.
>>
>> Technically, dom0 has exactly the same problem as dom0less domains it 
>> boots before Xenstored is running and therefore it may need to know 
>> when it is ready to receive commands.
> 
> Umm, no, not really.
> 
> The main difference between dom0 and a dom0less domU is, that xenstored
> introduces dom0 by itself via a call of dom0_init(), while the dom0less
> domUs get introduced by Xen tools in case a dom0 is coming up later. And
> that XS_INTRODUCE will clobber any ring page contents, while a call of
> dom0_init() won't do that.
> 
> Dom0 (especially the kernel) is fine to start filling the ring page with
> requests even before xenstored is running. It just shouldn't expect to
> receive any responses right away.
I am not sure what you mean by fine. You will see hang notifications if 
Xenstored is not started in time. Isn't why we decided to go with a 
different way for dom0less?

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Fri Oct 13 14:55:24 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 14:55:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616629.958771 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrJZR-000268-Dh; Fri, 13 Oct 2023 14:55:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616629.958771; Fri, 13 Oct 2023 14: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 1qrJZR-000261-B7; Fri, 13 Oct 2023 14:55:21 +0000
Received: by outflank-mailman (input) for mailman id 616629;
 Fri, 13 Oct 2023 14:55: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=NVAw=F3=cloud.com=alejandro.vallejo@srs-se1.protection.inumbo.net>)
 id 1qrJZP-000240-C2
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 14:55:19 +0000
Received: from mail-ej1-x629.google.com (mail-ej1-x629.google.com
 [2a00:1450:4864:20::629])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 869bab3c-69d8-11ee-98d4-6d05b1d4d9a1;
 Fri, 13 Oct 2023 16:55:18 +0200 (CEST)
Received: by mail-ej1-x629.google.com with SMTP id
 a640c23a62f3a-9ad8a822508so357922966b.0
 for <xen-devel@lists.xenproject.org>; Fri, 13 Oct 2023 07:55:18 -0700 (PDT)
Received: from EMEAENGAAD19049. (default-46-102-197-194.interdsl.co.uk.
 [46.102.197.194]) by smtp.gmail.com with ESMTPSA id
 p26-20020a1709060dda00b009b2cc87b8c3sm12382031eji.52.2023.10.13.07.55.17
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Fri, 13 Oct 2023 07:55: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: 869bab3c-69d8-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1697208918; x=1697813718; 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=FOLAK8fY0y6doe5r0bs+0VNJQ1sLcehNY1wjkEpz9XM=;
        b=H3HvPPJAqPB9CrSNhgcx8cPf9uiq/giXAWj0wqE4Ppo4iv3lfdyEC3B+/3d50m0n8F
         BzvqFG5VRjMyqZrniDOfWYy3+T2nUcOT1xHwVatrg7GF9yYbRtxYTOGGmAH1kXF/KJIt
         idSnH2XHJSDFEIbPAKZoYYrnKlXZ+e3hr7tzY=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697208918; x=1697813718;
        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=FOLAK8fY0y6doe5r0bs+0VNJQ1sLcehNY1wjkEpz9XM=;
        b=Xo5JOssWsziTuAahOAj0ePyNM4ChogVebyb+8JA+Ji1jom0Arn7K0f/DX9vmioyh6Z
         5n+bWqLp181DKDvF+whz66NDEdrGUxo/WlTbVQuxMEfNgz+lYOfwx9cVOj48AAgvaypD
         +GgCQim94tSa/GgX8gK8e2zyb7dMhF7InQQ14Txz35GniwsQXfMQAofkoiO7p11FAqfl
         69M9har/JvPInQahIF50whTQ7fyfwtAeNtBLzrRuk3a37ypvKa7p8vy4CNk4mG4E35au
         9ho0Ekp0MdV/hbrAzUEMpJDOcCym4yE6lvivO1XwVC8esVdeg5xq+hMwShcj6uf4QqDs
         TEJQ==
X-Gm-Message-State: AOJu0YwznUThkXkAx4Uqzsy8DFuzIbc97Cur/oPX4C3hi19X35rJICrJ
	yNTBe4ByDpDNftS7r5KEEk+IPg==
X-Google-Smtp-Source: AGHT+IEvKT1XWiK5Fjk56SjTZysxRDWy5SDaqW8Y11F6v1aWvzq/PC5d62KhWZ8kxRIYOt3VtLzRZw==
X-Received: by 2002:a17:906:18a1:b0:9a1:c659:7c56 with SMTP id c1-20020a17090618a100b009a1c6597c56mr23432976ejf.22.1697208918392;
        Fri, 13 Oct 2023 07:55:18 -0700 (PDT)
Message-ID: <65295a56.170a0220.8bb39.70c9@mx.google.com>
X-Google-Original-Message-ID: <ZSlaUYPDCzb5oZWo@EMEAENGAAD19049.>
Date: Fri, 13 Oct 2023 15:55:13 +0100
From: Alejandro Vallejo <alejandro.vallejo@cloud.com>
To: Julien Grall <julien@xen.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
	Xen-devel <xen-devel@lists.xenproject.org>,
	Jan Beulich <jbeulich@suse.com>,
	Roger Pau =?iso-8859-1?Q?Monn=E9?= <roger.pau@citrix.com>,
	Wei Liu <wl@xen.org>, Henry Wang <Henry.Wang@arm.com>
Subject: Re: [for-4.18][PATCH v2] x86/amd: Address AMD erratum #1485
References: <20231013131846.175702-1-alejandro.vallejo@cloud.com>
 <42d8ac8d-522e-424a-b002-9a0508f318da@citrix.com>
 <65295541.170a0220.81347.68b5@mx.google.com>
 <68ca37b9-54af-4d73-8ebd-8f567b9e7969@xen.org>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <68ca37b9-54af-4d73-8ebd-8f567b9e7969@xen.org>

Hi,

On Fri, Oct 13, 2023 at 03:41:49PM +0100, Julien Grall wrote:
> Hi Alejandro,
> 
> The original e-mail didn't yet reach my inbox. So answering here as there
> are enough context.
> 
> On 13/10/2023 15:33, Alejandro Vallejo wrote:
> > On Fri, Oct 13, 2023 at 09:40:52PM +0800, Andrew Cooper wrote:
> > > On 13/10/2023 9:18 pm, Alejandro Vallejo wrote:
> > > > diff --git a/xen/arch/x86/cpu/amd.c b/xen/arch/x86/cpu/amd.c
> > > > index 4f27187f92..085c4772d7 100644
> > > > --- a/xen/arch/x86/cpu/amd.c
> > > > +++ b/xen/arch/x86/cpu/amd.c
> > > > @@ -1167,6 +1167,14 @@ static void cf_check init_amd(struct cpuinfo_x86 *c)
> > > >   	if (c->x86 == 0x10)
> > > >   		__clear_bit(X86_FEATURE_MONITOR, c->x86_capability);
> > > > +	/* Fix for AMD erratum #1485 */
> > > > +	if (!cpu_has_hypervisor && c->x86 == 0x19 && is_zen4_uarch()) {
> > > > +		rdmsrl(MSR_AMD64_BP_CFG, value);
> > > > +		#define ZEN4_BP_CFG_SHARED_BTB_FIX (1ull << 5)
> 
> You are introducing a violation to MISRA Rule 7.3 [1] which was accepted
> recently. You want to use 1ULL rather than the lower case version.
> 
> [1] https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/R_07_03.c
> 
> Cheers,
> 
> -- 
> Julien Grall
Oh, I didn't know about that one. Fair enough.

Thanks,
Alejandro


From xen-devel-bounces@lists.xenproject.org Fri Oct 13 15:03:39 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 15:03:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616641.958781 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrJhH-000475-DW; Fri, 13 Oct 2023 15:03:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616641.958781; Fri, 13 Oct 2023 15:03: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 1qrJhH-00046y-9v; Fri, 13 Oct 2023 15:03:27 +0000
Received: by outflank-mailman (input) for mailman id 616641;
 Fri, 13 Oct 2023 15:03: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=pfqf=F3=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qrJhG-00046s-CB
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 15:03:26 +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 a877d66e-69d9-11ee-98d4-6d05b1d4d9a1;
 Fri, 13 Oct 2023 17:03:25 +0200 (CEST)
Received: by mail-wr1-x432.google.com with SMTP id
 ffacd0b85a97d-3215f19a13aso2061133f8f.3
 for <xen-devel@lists.xenproject.org>; Fri, 13 Oct 2023 08:03:25 -0700 (PDT)
Received: from [172.31.7.9] ([203.86.126.253])
 by smtp.gmail.com with ESMTPSA id
 v9-20020a62a509000000b0069029a3196dsm13562526pfm.184.2023.10.13.08.03.22
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Fri, 13 Oct 2023 08:03: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: a877d66e-69d9-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1697209404; x=1697814204; 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=yt/wuRbT2EDEgkO9Ribil6nmK2T9K9r2dWfbWr720GU=;
        b=n2hWudkwHZfU5Y24u4BtK4Lpm4CdjbByjzxzEwZFpTuaJvoMGfAd+vpVl8Nh5qySTY
         VlTYa4RPYdy47/FI00V6T62iZUPCNoVs1qHG4TQGuGISYo28fuJO5ukMjDOOwrtluky/
         h5ErbUy1tHQYHgevfFq5hovtUeSoM/ZlZNAOI=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697209404; x=1697814204;
        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=yt/wuRbT2EDEgkO9Ribil6nmK2T9K9r2dWfbWr720GU=;
        b=W1SG6/ksYkUHmTjFC5rG3kETtoi2W6lEfH8aTegOqjG/8r3bU6Fp5rEQyULx29dE2q
         i3Nc9RPpjmWPv4e4yVqLw8SK5rp6qNrMhAPDOinN1zLFT02Q9IsfxBUb6O32e5mLr4mp
         JWPllHu0bkop900E+W13BoqFEag2TEU7lrj/tgJC34o+D+CX2z4O6mHnmudDPwiMze4w
         x/elK5xGbTMbGjImI7S6KTnXNyP02CnWu5RB5TUqF9aHTdGsAHHllxCupw8OdTeT8vA3
         US2sgjCGl2h9CECmXX2UiHKl1R2WxtEZUlHp56LdDKFI72c3HNyqesDD3mmWewFEoqut
         dj7g==
X-Gm-Message-State: AOJu0YyJxxsf2M7GvtmuUIb72CszEC2YLLBz/pModJhCr6DLHgJHjEai
	V+IxTASXPdqpEUyLfFuJAhd4dA==
X-Google-Smtp-Source: AGHT+IGptk+vW178/TyB7GStvjdzLIb3O28/y0ZCY/sI6H86BLQdTSGmZxZ5bSEqJ7Y+wnBMq172ZA==
X-Received: by 2002:a05:6000:3ce:b0:32d:8b1a:31a7 with SMTP id b14-20020a05600003ce00b0032d8b1a31a7mr6352626wrg.29.1697209404625;
        Fri, 13 Oct 2023 08:03:24 -0700 (PDT)
Content-Type: multipart/alternative;
 boundary="------------yLaWTj9ibF6v1wpcRripmnIs"
Message-ID: <e463812f-293e-4f2b-aee1-26dc350f5c37@citrix.com>
Date: Fri, 13 Oct 2023 23:03:20 +0800
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [for-4.18][PATCH v2] x86/amd: Address AMD erratum #1485
Content-Language: en-GB
To: Alejandro Vallejo <alejandro.vallejo@cloud.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>, Henry Wang <Henry.Wang@arm.com>
References: <20231013131846.175702-1-alejandro.vallejo@cloud.com>
 <42d8ac8d-522e-424a-b002-9a0508f318da@citrix.com>
 <65295541.170a0220.81347.68b5@mx.google.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: <65295541.170a0220.81347.68b5@mx.google.com>

This is a multi-part message in MIME format.
--------------yLaWTj9ibF6v1wpcRripmnIs
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 13/10/2023 10:33 pm, Alejandro Vallejo wrote:
> On Fri, Oct 13, 2023 at 09:40:52PM +0800, Andrew Cooper wrote:
>> On 13/10/2023 9:18 pm, Alejandro Vallejo wrote:
>> This will surely be a core scope MSR rather than thread scope,
> It is, though I doubt it matters a whole lot. The writes are consistent
> anyway.

This happens to be true because you introduced the first use of the MSR.

It ceases to be true for the next chickenbit in this MSR, which is why ...
>> at which
>> point the write ought to be conditional on seeing the chickenbit
>> clear (hence needing to refer to the value at least twice, so use a
>> local variable).
> I have serious doubts such a conditional would do much for boot times, but
> sure.

... this is not about boot time.  It's about avoiding an unnecessary
non-atomic action.

(TBH, when the second chickenbit comes, it's all suspect anyway and
probably needs to end up like the pre-SSBD handling, which has
horrifying complexity.)

~Andrew
--------------yLaWTj9ibF6v1wpcRripmnIs
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: 8bit

<!DOCTYPE html>
<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body>
    <div class="moz-cite-prefix">On 13/10/2023 10:33 pm, Alejandro
      Vallejo wrote:<br>
    </div>
    <blockquote type="cite"
      cite="mid:65295541.170a0220.81347.68b5@mx.google.com">
      <pre class="moz-quote-pre" wrap="">On Fri, Oct 13, 2023 at 09:40:52PM +0800, Andrew Cooper wrote:
</pre>
      <blockquote type="cite">
        <pre class="moz-quote-pre" wrap="">On 13/10/2023 9:18 pm, Alejandro Vallejo wrote:<span
        style="white-space: pre-wrap">
</span></pre>
      </blockquote>
      <blockquote type="cite">
        <pre class="moz-quote-pre" wrap="">
This will surely be a core scope MSR rather than thread scope,
</pre>
      </blockquote>
      <pre class="moz-quote-pre" wrap="">It is, though I doubt it matters a whole lot. The writes are consistent
anyway.</pre>
    </blockquote>
    <br>
    This happens to be true because you introduced the first use of the
    MSR.<br>
    <br>
    It ceases to be true for the next chickenbit in this MSR, which is
    why ...<br>
    <span style="white-space: pre-wrap">

</span>
    <blockquote type="cite"
      cite="mid:65295541.170a0220.81347.68b5@mx.google.com">
      <blockquote type="cite">
        <pre class="moz-quote-pre" wrap="">at which
point the write ought to be conditional on seeing the chickenbit
clear (hence needing to refer to the value at least twice, so use a
local variable).
</pre>
      </blockquote>
      <pre class="moz-quote-pre" wrap="">I have serious doubts such a conditional would do much for boot times, but
sure.</pre>
    </blockquote>
    <br>
    ... this is not about boot time.  It's about avoiding an unnecessary
    non-atomic action.<br>
    <br>
    (TBH, when the second chickenbit comes, it's all suspect anyway and
    probably needs to end up like the pre-SSBD handling, which has
    horrifying complexity.)<br>
    <br>
    ~Andrew<br>
  </body>
</html>

--------------yLaWTj9ibF6v1wpcRripmnIs--


From xen-devel-bounces@lists.xenproject.org Fri Oct 13 15:04:17 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 15:04:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616644.958792 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrJi4-0004aP-OK; Fri, 13 Oct 2023 15:04:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616644.958792; Fri, 13 Oct 2023 15:04: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 1qrJi4-0004aI-JC; Fri, 13 Oct 2023 15:04:16 +0000
Received: by outflank-mailman (input) for mailman id 616644;
 Fri, 13 Oct 2023 15:04: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=U36v=F3=suse.com=jgross@srs-se1.protection.inumbo.net>)
 id 1qrJi3-0004aA-Mp
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 15:04: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 c3792b2f-69d9-11ee-9b0e-b553b5be7939;
 Fri, 13 Oct 2023 17:04: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 ACA1A219EC;
 Fri, 13 Oct 2023 15:04: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 539E3138EF;
 Fri, 13 Oct 2023 15:04:09 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap2.suse-dmz.suse.de with ESMTPSA id THflEmlcKWUqQwAAMHmgww
 (envelope-from <jgross@suse.com>); Fri, 13 Oct 2023 15:04: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: c3792b2f-69d9-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1697209449; 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=ZxwgBRs/NTe+F2qJvCdR9vFDN7a/MPHqOddGdF75WNg=;
	b=W1h5V8s5OXEdtX5LPKsGdkU1uaLPm9bH3zDo+O57sXW/72ioqmCtCmO0IsdSKWYFOyC0lr
	S+gWYtB8pQAX/Mjn9/ty9cJgl2yGtN3BbATPIxA+CRzt01h+CY7T5WFOuMF+QJ3jssikFB
	+lxxrv6cTmSVSOVDJy+53QEiYniChXY=
Message-ID: <d75c138f-df88-4e7e-9084-533aafdcd982@suse.com>
Date: Fri, 13 Oct 2023 17:04:08 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: Xen 4.18 release: Reminder about code freeze
Content-Language: en-US
To: Julien Grall <julien@xen.org>, George Dunlap <george.dunlap@cloud.com>,
 Stefano Stabellini <sstabellini@kernel.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>, Henry Wang
 <Henry.Wang@arm.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 Bertrand Marquis <Bertrand.Marquis@arm.com>, Jan Beulich
 <jbeulich@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>
 <a31ce6cb-6234-5e7f-5cd4-ed190f029811@citrix.com>
 <alpine.DEB.2.22.394.2309271658500.1403502@ubuntu-linux-20-04-desktop>
 <CA+zSX=ZbeUFrfAUJShooJFJ+d89f4xdXfJJ9HoJKRh4UStkTFQ@mail.gmail.com>
 <alpine.DEB.2.22.394.2310121535580.3431292@ubuntu-linux-20-04-desktop>
 <CA+zSX=Y5dMVFM6dVNgBRHxKc0C1e5WGgweQ0FaXXCfAFGH1aPA@mail.gmail.com>
 <a93839b8-932a-4634-9549-081df950afb2@xen.org>
 <5390a035-f0e8-498c-b059-b9eca3a5c6ac@suse.com>
 <e76d5b41-5057-4ebe-affd-ae1a158071a1@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: <e76d5b41-5057-4ebe-affd-ae1a158071a1@xen.org>
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature";
 boundary="------------1OPAsa0zGAbbc43CX6Zvwh4o"
Authentication-Results: smtp-out1.suse.de;
	none
X-Spam-Level: 
X-Spam-Score: -8.99
X-Spamd-Result: default: False [-8.99 / 50.00];
	 ARC_NA(0.00)[];
	 TO_DN_EQ_ADDR_SOME(0.00)[];
	 XM_UA_NO_VERSION(0.01)[];
	 FROM_HAS_DN(0.00)[];
	 TO_DN_SOME(0.00)[];
	 TO_MATCH_ENVRCPT_ALL(0.00)[];
	 BAYES_HAM(-3.00)[100.00%];
	 MIME_GOOD(-0.20)[multipart/signed,multipart/mixed,text/plain];
	 HAS_ATTACHMENT(0.00)[];
	 RCVD_VIA_SMTP_AUTH(0.00)[];
	 NEURAL_HAM_LONG(-3.00)[-1.000];
	 DKIM_SIGNED(0.00)[suse.com:s=susede1];
	 NEURAL_HAM_SHORT(-1.00)[-1.000];
	 MIME_BASE64_TEXT(0.10)[];
	 RCPT_COUNT_SEVEN(0.00)[11];
	 SIGNED_PGP(-2.00)[];
	 FROM_EQ_ENVFROM(0.00)[];
	 MIME_TRACE(0.00)[0:+,1:+,2:+,3:+,4:~,5:~];
	 RCVD_COUNT_TWO(0.00)[2];
	 RCVD_TLS_ALL(0.00)[];
	 MID_RHS_MATCH_FROM(0.00)[];
	 MIME_UNKNOWN(0.10)[application/pgp-keys]
X-Spam-Flag: NO

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--------------1OPAsa0zGAbbc43CX6Zvwh4o
Content-Type: multipart/mixed; boundary="------------7Veau3AwEzFUQnbE4MzFt9zj";
 protected-headers="v1"
From: Juergen Gross <jgross@suse.com>
To: Julien Grall <julien@xen.org>, George Dunlap <george.dunlap@cloud.com>,
 Stefano Stabellini <sstabellini@kernel.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>, Henry Wang
 <Henry.Wang@arm.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 Bertrand Marquis <Bertrand.Marquis@arm.com>, Jan Beulich
 <jbeulich@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>
Message-ID: <d75c138f-df88-4e7e-9084-533aafdcd982@suse.com>
Subject: Re: Xen 4.18 release: Reminder about code freeze
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>
 <alpine.DEB.2.22.394.2309271658500.1403502@ubuntu-linux-20-04-desktop>
 <CA+zSX=ZbeUFrfAUJShooJFJ+d89f4xdXfJJ9HoJKRh4UStkTFQ@mail.gmail.com>
 <alpine.DEB.2.22.394.2310121535580.3431292@ubuntu-linux-20-04-desktop>
 <CA+zSX=Y5dMVFM6dVNgBRHxKc0C1e5WGgweQ0FaXXCfAFGH1aPA@mail.gmail.com>
 <a93839b8-932a-4634-9549-081df950afb2@xen.org>
 <5390a035-f0e8-498c-b059-b9eca3a5c6ac@suse.com>
 <e76d5b41-5057-4ebe-affd-ae1a158071a1@xen.org>
In-Reply-To: <e76d5b41-5057-4ebe-affd-ae1a158071a1@xen.org>

--------------7Veau3AwEzFUQnbE4MzFt9zj
Content-Type: multipart/mixed; boundary="------------WU4UepAvLYmWZiJ3sfjQ3iz2"

--------------WU4UepAvLYmWZiJ3sfjQ3iz2
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: base64

T24gMTMuMTAuMjMgMTY6NTEsIEp1bGllbiBHcmFsbCB3cm90ZToNCj4gSGkgSnVlcmdlbiwN
Cj4gDQo+IE9uIDEzLzEwLzIwMjMgMTU6NDcsIEp1ZXJnZW4gR3Jvc3Mgd3JvdGU6DQo+PiBP
biAxMy4xMC4yMyAxMzoyMiwgSnVsaWVuIEdyYWxsIHdyb3RlOg0KPj4+IEhpIEdlb3JnZSwN
Cj4+Pg0KPj4+IE9uIDEzLzEwLzIwMjMgMTE6MTYsIEdlb3JnZSBEdW5sYXAgd3JvdGU6DQo+
Pj4+IE9uIFRodSwgT2N0IDEyLCAyMDIzIGF0IDExOjM24oCvUE0gU3RlZmFubyBTdGFiZWxs
aW5pDQo+Pj4+IDxzc3RhYmVsbGluaUBrZXJuZWwub3JnPiB3cm90ZToNCj4+Pj4+DQo+Pj4+
PiBPbiBUaHUsIDEyIE9jdCAyMDIzLCBHZW9yZ2UgRHVubGFwIHdyb3RlOg0KPj4+Pj4+Pj4g
U3RvcCB0aW5rZXJpbmcgaW4gdGhlIGhvcGUgdGhhdCBpdCBoaWRlcyB0aGUgcHJvYmxlbS7C
oCBZb3UncmUgb25seQ0KPj4+Pj4+Pj4gbWFraW5nIGl0IGhhcmRlciB0byBmaXggcHJvcGVy
bHkuDQo+Pj4+Pj4+DQo+Pj4+Pj4+IE1ha2luZyBpdCBoYXJkZXIgdG8gZml4IHByb3Blcmx5
IHdvdWxkIGJlIGEgdmFsaWQgcmVhc29uIG5vdCB0byBjb21taXQNCj4+Pj4+Pj4gdGhlICht
YXliZSBwYXJ0aWFsKSBmaXguIEJ1dCBsb29raW5nIGF0IHRoZSBmaXggYWdhaW46DQo+Pj4+
Pj4+DQo+Pj4+Pj4+IGRpZmYgLS1naXQgYS90b29scy94ZW5zdG9yZWQvZG9tYWluLmMgYi90
b29scy94ZW5zdG9yZWQvZG9tYWluLmMNCj4+Pj4+Pj4gaW5kZXggYTZjZDE5OWZkYy4uOWNk
NjY3ODAxNSAxMDA2NDQNCj4+Pj4+Pj4gLS0tIGEvdG9vbHMveGVuc3RvcmVkL2RvbWFpbi5j
DQo+Pj4+Pj4+ICsrKyBiL3Rvb2xzL3hlbnN0b3JlZC9kb21haW4uYw0KPj4+Pj4+PiBAQCAt
OTg5LDYgKzk4OSw3IEBAIHN0YXRpYyBzdHJ1Y3QgZG9tYWluICppbnRyb2R1Y2VfZG9tYWlu
KGNvbnN0IHZvaWQgKmN0eCwNCj4+Pj4+Pj4gwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqAgdGFsbG9jX3N0ZWFsKGRvbWFpbi0+Y29ubiwgZG9tYWluKTsNCj4+Pj4+Pj4NCj4+
Pj4+Pj4gwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgaWYgKCFyZXN0b3JlKSB7
DQo+Pj4+Pj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oCBkb21haW5fY29ubl9yZXNldChkb21haW4pOw0KPj4+Pj4+PiDCoMKgwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgLyogTm90aWZ5IHRoZSBkb21haW4g
dGhhdCB4ZW5zdG9yZSBpcyBhdmFpbGFibGUgKi8NCj4+Pj4+Pj4gwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGludGVyZmFjZS0+Y29ubmVjdGlv
biA9IFhFTlNUT1JFX0NPTk5FQ1RFRDsNCj4+Pj4+Pj4gwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHhlbmV2dGNobl9ub3RpZnkoeGNlX2hhbmRs
ZSwgZG9tYWluLT5wb3J0KTsNCj4+Pj4+Pj4gQEAgLTEwMzEsOCArMTAzMiw2IEBAIGludCBk
b19pbnRyb2R1Y2UoY29uc3Qgdm9pZCAqY3R4LCBzdHJ1Y3QgY29ubmVjdGlvbiANCj4+Pj4+
Pj4gKmNvbm4sDQo+Pj4+Pj4+IMKgwqDCoMKgwqDCoMKgwqAgaWYgKCFkb21haW4pDQo+Pj4+
Pj4+IMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHJldHVybiBlcnJubzsNCj4+
Pj4+Pj4NCj4+Pj4+Pj4gLcKgwqDCoMKgwqDCoCBkb21haW5fY29ubl9yZXNldChkb21haW4p
Ow0KPj4+Pj4+PiAtDQo+Pj4+Pj4+IMKgwqDCoMKgwqDCoMKgwqAgc2VuZF9hY2soY29ubiwg
WFNfSU5UUk9EVUNFKTsNCj4+Pj4+Pj4NCj4+Pj4+Pj4gSXQgaXMgYSAxLWxpbmUgbW92ZW1l
bnQuIFRleHR1YWxseSBzbWFsbC4gRWFzeSB0byB1bmRlcnN0YW5kIGFuZCB0bw0KPj4+Pj4+
PiByZXZlcnQuIEl0IGRvZXNuJ3Qgc2VlbSB0byBiZSBtYWtpbmcgdGhpbmdzIGhhcmRlciB0
byBmaXg/IFdlIGNvdWxkDQo+Pj4+Pj4+IHJldmVydCBpdCBhbnkgdGltZSBpZiBhIGJldHRl
ciBmaXggaXMgb2ZmZXJlZC4NCj4+Pj4+Pj4NCj4+Pj4+Pj4gTWF5YmUgd2UgY291bGQgaGF2
ZSBhIFhYWCBub3RlIGluIHRoZSBjb21taXQgbWVzc2FnZSBvciBpbi1jb2RlDQo+Pj4+Pj4+
IGNvbW1lbnQ/DQo+Pj4+Pj4NCj4+Pj4+PiBJdCBtb3ZlcyBhIGxpbmUgZnJvbSBvbmUgZnVu
Y3Rpb24gKGRvX2RvbWFpbl9pbnRyb2R1Y2UoKSkgaW50byBhDQo+Pj4+Pj4gY29tcGxldGVs
eSBkaWZmZXJlbnQgZnVuY3Rpb24gKGludHJvZHVjZV9kb21haW4oKSksIG5lc3RlZCBpbnNp
ZGUgdHdvDQo+Pj4+Pj4gaWYoKSBzdGF0ZW1lbnRzOyB3aXRoIG5vIGFuYWx5c2lzIG9uIGhv
dyB0aGUgY2hhbmdlIHdpbGwgaW1wYWN0DQo+Pj4+Pj4gdGhpbmdzLg0KPj4+Pj4NCj4+Pj4+
IEkgYW0gbm90IHRoZSBvcmlnaW5hbCBhdXRob3Igb2YgdGhlIHBhdGNoLCBhbmQgSSBhbSBu
b3QgdGhlIG1haW50YWluZXINCj4+Pj4+IG9mIHRoZSBjb2RlLCBzbyBJIGRvbid0IGZlZWwg
SSBoYXZlIHRoZSBxdWFsaWZpY2F0aW9ucyB0byBnaXZlIHlvdSB0aGUNCj4+Pj4+IGFuc3dl
cnMgeW91IGFyZSBzZWVraW5nLiBKdWxpZW4gYXMgYXV0aG9yIG9mIHRoZSBwYXRjaCBhbmQg
eGVuc3RvcmUNCj4+Pj4+IHJldmlld2VyIG1pZ2h0IGJlIGluIGEgYmV0dGVyIHBvc2l0aW9u
IHRvIGFuc3dlci4gT3IgSnVlcmdlbiBhcyB4ZW5zdG9yZQ0KPj4+Pj4gbWFpbnRhaW5lci4N
Cj4+Pj4NCj4+Pj4gSSB1bmRlcnN0YW5kIHRoYXQ7IG15IG1haW4gcG9pbnQgaXMgdGhhdCB0
aGUgY2hhbmdlIGlzIG1vcmUgY29tcGxleA0KPj4+PiB0aGFuIHlvdSdyZSBjaGFyYWN0ZXJp
emluZyBpdC7CoCBUaGlzIGlzIGluZm9ybWF0aW9uIG5lY2Vzc2FyeSB0bw0KPj4+PiB1bmRl
cnN0YW5kIHdoZXRoZXIgdGhlIHBhdGNoIGlzIGNvcnJlY3QsIGJ1dCBpdCdzIG5vdCBpbiB0
aGUgcGF0Y2gNCj4+Pj4gZGVzY3JpcHRpb24sIG5vciBpbiB0aGUgc3Vic2VxdWVudCB0aHJl
YWQgYmFjayBpbiBNYXkuDQo+Pj4+DQo+Pj4+Pj4gQXJlIHRoZXJlIGFueSBwYXRocyB0aHJv
dWdoIGRvX2RvbWFpbl9pbnRyb2R1Y2UoKSB0aGF0IG5vdyAqd29uJ3QqIGdldA0KPj4+Pj4+
IGEgZG9tYWluX2Nvbm5fcmVzZXQoKSBjYWxsP8KgIElzIHRoYXQgT0s/DQo+Pj4+Pg0KPj4+
Pj4gWWVzLCB0aGUgYWxyZWFkeS1pbnRyb2R1Y2VkIGFuZCB0aGUgcmVzdG9yZSBjb2RlIHBh
dGhzLiBUaGUgb3BlcmF0aW9ucyBpbg0KPj4+Pj4gdGhlIGFscmVhZHktaW50cm9kdWNlZCBv
ciB0aGUgcmVzdG9yZSBjb2RlIHBhdGhzIHNlZW0gc2ltcGxlIGVub3VnaCBub3QNCj4+Pj4+
IHRvIHJlcXVpcmUgYSBkb21haW5fY29ubl9yZXNldC4gSnVsaWVuIGFuZCBKdWVyZ2VuIHNo
b3VsZCBjb25maXJtLg0KPj4+Pg0KPj4+PiBUaGVyZSBpcyBubyAicmVzdG9yZSIgY29kZXBh
dGggdGhyb3VnaCBkb19kb21haW5faW50cm9kdWNlKCk7IGl0DQo+Pj4+IHBhc3NlcyAiZmFs
c2UiIGZvciB0aGUgInJlc3RvcmUiIGFyZ3VtZW50LsKgIFNvIHdlwqAgb25seSBoYXZlIHR3
byBwYXRocw0KPj4+PiB0byBjb25zaWRlciB0aHJvdWdoIGRvX2RvbWFpbl9pbnRyb2R1Y2Uo
KTogVGhlICJub3QgaW50cm9kdWNlZCBhbmQgbm90DQo+Pj4+IHJlc3RvcmluZyIgcGF0aCwg
YW5kIHRoZSAiYWxyZWFkeS1pbnRyb2R1Y2VkIiBwYXRoLg0KPj4+Pg0KPj4+PiBJJ20gbm90
IHN1cmUgd2hhdCB0aGUgInNpbXBsZSIgZWxlbWVudHMgb24gdGhlIGJyYW5jaCBpbg0KPj4+
PiBpbnRyb2R1Y2VfZG9tYWluKCkgaGF2ZSB0byBkbyB3aXRoIHdoZXRoZXIgdGhlIGNvbnRl
bnQgb2YgdGhlIHBhZ2UNCj4+Pj4gbmVlZHMgdG8gYmUgY2xlYW5lZCB1cC7CoCBBcyBJIHNh
aWQsIEkgZG9uJ3QgMTAwJSB1bmRlcnN0YW5kIHRoaXMgY29kZSwNCj4+Pj4gYnV0IGl0IHNl
ZW1zIGxpa2UgaWYgYW55dGhpbmcsIHRoZSByZXNldCB3b3VsZCBiZSAqbW9yZSogaW1wb3J0
YW50IHRvDQo+Pj4+IGhhdmUgaW4gdGhlICJyZWludHJvZHVjZSIgY2FzZSB0aGFuIGluIHRo
ZSAiaW5pdGlhbCBpbnRyb2R1Y3Rpb24iDQo+Pj4+IGNhc2UsIHNpbmNlIEknZCBleHBlY3Qg
dGhlICJpbml0aWFsIGludHJvZHVjdGlvbiIgY2FzZSB0byBiZSBlbXB0eQ0KPj4+PiBhbHJl
YWR5Lg0KPj4+IEluZGVlZCwgdGhlcmUgc2hvdWxkIGJlIG5vIHdhdGNoZXMvdHJhbnNhY3Rp
b25zL2J1ZmZlcmVkIEkvTyBmb3IgdGhlIGluaXRpYWwgDQo+Pj4gaW50cm9kdWN0aW9uLiBI
b3dldmVyLCB0aGUgZnVuY3Rpb24gaXMgYWxzbyBjbGVhciBwYXJ0IG9mIHRoZSBpbnRlcmZh
Y2UgDQo+Pj4gYmVjYXVzZSB3ZSBjYW4ndCBndWFyYW50ZWVkIGl0IHdhcyB6ZXJvZWQuDQo+
Pj4NCj4+PiBUaGUgbGF0dGVyIG1hdHRlciBmb3IgdGhlIGluaXRpYWwgaW50cm9kdWN0aW9u
LiBJIGJlbGlldmUgdGhlIHJlc3QgaXMganVzdCANCj4+PiBjYWxsZWQgZm9yIHNpbXBsaWNp
dHkuDQo+Pj4NCj4+Pj4NCj4+Pj4+IERvZXNuJ3QgaXQgc2VlbSB3ZWlyZCB0byB5b3UgdGhh
dCB3ZSBzZXQgYSBjb25uZWN0aW9uIHRvIENPTk5FQ1RFRCwNCj4+Pj4+IG5vdGlmeSB0aGUg
ZG9tYWluIHRoYXQgaXQgaXMgcmVhZHkgdG8gZ28sIGFuZCBvbmx5ICphZnRlciogdGhhdCB3
ZSByZXNldA0KPj4+Pj4gdGhlIGNvbm5lY3Rpb24gdG8gemVybz8NCj4+Pj4+DQo+Pj4+PiBX
aGF0IGhhcHBlbnMgaWYgYSBkb21haW4gc3RhcnRzIHVzaW5nIHRoZSBjb25uZWN0aW9uIGFz
IHNvb24gYXMgaXQNCj4+Pj4+IHJlY2VpdmVzIHRoZSBldmVudCBjaGFubmVsIG5vdGlmaWNh
dGlvbiBhbmQgYmVmb3JlIGRvbWFpbl9jb25uX3Jlc2V0IGlzDQo+Pj4+PiBjYWxsZWQ/DQo+
Pj4+DQo+Pj4+IFllcywgaXQgZG9lcyBzZWVtIHdlaXJkLCB3aGljaCBpcyB3aHkgSSBzYWlk
IHRoZSBmb2xsb3dpbmcuIDotKQ0KPj4+Pg0KPj4+Pj4+IEkgbWVhbiwgaXQgY2VydGFpbmx5
IHNlZW1zIHN0cmFuZ2UgdG8gc2V0IHRoZSBzdGF0ZSB0byBDT05ORUNURUQsIHNlbmQNCj4+
Pj4+PiBvZmYgYW4gZXZlbnQgY2hhbm5lbCwgYW5kIHRoZW4gYWZ0ZXIgdGhhdCBkZWxldGUg
YWxsIHdhdGNoZXMgLw0KPj4+Pj4+IHRyYW5zYWN0aW9ucyAvIGJ1ZmZlcmVkIGRhdGEgYW5k
IHNvIG9uOw0KPj4+Pg0KPj4+PiBCdXQganVzdCBiZWNhdXNlIHRoZSBjdXJyZW50IGNvZGUg
aXMgcHJvYmFibHkgd3JvbmcsIGRvZXNuJ3QgbWVhbiB0aGF0DQo+Pj4+IHRoZSBtb2RpZmll
ZCBjb2RlIGlzIHByb2JhYmx5IGNvcnJlY3QuDQo+Pj4+DQo+Pj4+IElmIHRoZSBwcm9ibGVt
IGlzIHRoZSBkZWxheSBiZXR3ZWVuIHRoZSB4ZW5ldnRjaG5fbm90aWZ5KCkgaW4NCj4+Pj4g
aW50cm9kdWNlX2RvbWFpbigpIGFuZCB0aGUgZG9tYWluX2Nvbm5fcmVzZXQoKSBhZnRlcndh
cmRzIGluDQo+Pj4+IGRvX2RvbWFpbigpLCB3b3VsZCBpdCBtYWtlIHNlbnNlIGluc3RlYWQg
dG8gbW92ZSB0aGUgbm90aWZpY2F0aW9uIGludG8NCj4+Pj4gZG9faW50cm9kdWNlKCksIGFm
dGVyIHRoZSBkb21haW5fY29ubl9yZXNldCgpP8KgIEl0IGlzLCBhZnRlciBhbGwsIGluDQo+
Pj4+IHJlc3BvbnNlIHRvIFhTX0lOVFJPRFVDRSB0aGF0IHdlIHdhbnQgdG8gc2VuZCB0aGUg
bm90aWZpY2F0aW9uLCBub3QgaW4NCj4+Pj4gZG9tMF9pbml0KCkgb3IgcmVhZF9zdGF0ZV9j
b25uZWN0aW9uKCkgKHdoaWNoIHNlZW1zIHRvIGJlIG1vcmUgYWJvdXQNCj4+Pj4gcmVzdG9y
aW5nIGEgZG9tYWluKS4NCj4+Pg0KPj4+IEkgdW5kZXJzdGFuZCB0aGF0IHRoZSBldmVudCBj
aGFubmVsIG5vdGlmaWNhdGlvbiB3YXMgc3BlY2lmaWNhbGx5IGFkZGVkIGZvciANCj4+PiBk
b20wbGVzcy4gQnV0IEkgZG9uJ3Qgc2VlIHdoeSB3ZSBkb24ndCB3YW50IHRvIHNlbmQgaXQg
dG8gZG9tMCBhcyB3ZWxsLg0KPj4+DQo+Pj4gVGVjaG5pY2FsbHksIGRvbTAgaGFzIGV4YWN0
bHkgdGhlIHNhbWUgcHJvYmxlbSBhcyBkb20wbGVzcyBkb21haW5zIGl0IGJvb3RzIA0KPj4+
IGJlZm9yZSBYZW5zdG9yZWQgaXMgcnVubmluZyBhbmQgdGhlcmVmb3JlIGl0IG1heSBuZWVk
IHRvIGtub3cgd2hlbiBpdCBpcyANCj4+PiByZWFkeSB0byByZWNlaXZlIGNvbW1hbmRzLg0K
Pj4NCj4+IFVtbSwgbm8sIG5vdCByZWFsbHkuDQo+Pg0KPj4gVGhlIG1haW4gZGlmZmVyZW5j
ZSBiZXR3ZWVuIGRvbTAgYW5kIGEgZG9tMGxlc3MgZG9tVSBpcywgdGhhdCB4ZW5zdG9yZWQN
Cj4+IGludHJvZHVjZXMgZG9tMCBieSBpdHNlbGYgdmlhIGEgY2FsbCBvZiBkb20wX2luaXQo
KSwgd2hpbGUgdGhlIGRvbTBsZXNzDQo+PiBkb21VcyBnZXQgaW50cm9kdWNlZCBieSBYZW4g
dG9vbHMgaW4gY2FzZSBhIGRvbTAgaXMgY29taW5nIHVwIGxhdGVyLiBBbmQNCj4+IHRoYXQg
WFNfSU5UUk9EVUNFIHdpbGwgY2xvYmJlciBhbnkgcmluZyBwYWdlIGNvbnRlbnRzLCB3aGls
ZSBhIGNhbGwgb2YNCj4+IGRvbTBfaW5pdCgpIHdvbid0IGRvIHRoYXQuDQo+Pg0KPj4gRG9t
MCAoZXNwZWNpYWxseSB0aGUga2VybmVsKSBpcyBmaW5lIHRvIHN0YXJ0IGZpbGxpbmcgdGhl
IHJpbmcgcGFnZSB3aXRoDQo+PiByZXF1ZXN0cyBldmVuIGJlZm9yZSB4ZW5zdG9yZWQgaXMg
cnVubmluZy4gSXQganVzdCBzaG91bGRuJ3QgZXhwZWN0IHRvDQo+PiByZWNlaXZlIGFueSBy
ZXNwb25zZXMgcmlnaHQgYXdheS4NCj4gSSBhbSBub3Qgc3VyZSB3aGF0IHlvdSBtZWFuIGJ5
IGZpbmUuIFlvdSB3aWxsIHNlZSBoYW5nIG5vdGlmaWNhdGlvbnMgaWYgDQo+IFhlbnN0b3Jl
ZCBpcyBub3Qgc3RhcnRlZCBpbiB0aW1lLiBJc24ndCB3aHkgd2UgZGVjaWRlZCB0byBnbyB3
aXRoIGEgZGlmZmVyZW50IA0KPiB3YXkgZm9yIGRvbTBsZXNzPw0KDQpUaGUgbWFpbiBkaWZm
ZXJlbmNlIGlzIHRoYXQgZG9tMCB0ZWxscyB4ZW5zdG9yZWQgdGhlIGNvbm5lY3Rpb24gcGFy
YW1ldGVycyBmb3INCml0c2VsZiwgc28gZG9tMCBfa25vd3NfIHRoYXQgdGhlIHJpbmcgcGFn
ZSBpcyBzZXR1cCBjb3JyZWN0bHkgd2hlbiB4ZW5zdG9yZWQNCnN0YXJ0cyBsb29raW5nIGF0
IGl0IChpdCBpcyBkb20wIHdoaWNoIG5lZWRzIHRvIGRvIHRoZSByaW5nIHBhZ2UgaW5pdCku
DQoNCkEgZG9tMGxlc3MgZG9tVSBkb2Vzbid0IGhhdmUgdGhhdCBuZWdvdGlhdGlvbiB3aXRo
IHhlbnN0b3JlZCwgYXMgeGVuc3RvcmVkIGp1c3QNCnVzZXMgdGhlIHByZS1kZWZpbmVkIGdy
YW50IGZvciBsb29raW5nIGF0IHRoZSByaW5nIHBhZ2UuIEZvciB0aGUgZG9tVSB0aGVyZSBp
cw0Kbm8gd2F5IHRvIHRlbGwgdGhhdCB4ZW5zdG9yZWQgaGFzIGluaXRpYWxpemVkIHRoZSBy
aW5nIHBhZ2UgKGl0IGlzIG5vdCB0aGUgZG9tVQ0KdG8gZG8gdGhlIGluaXRpYWxpemF0aW9u
LCBhcyB0aGUgWFNfSU5UUk9EVUNFIG1pZ2h0IGJlIHNlbnQgYmVmb3JlIHRoZSBkb21VDQpl
dmVuIHN0YXJ0cyBydW5uaW5nKSwgb3RoZXIgdGhhbiB0aGUgImNvbm5lY3RlZCIgaW5kaWNh
dG9yIGluIHRoZSBwYWdlIGl0c2VsZi4NCg0KDQpKdWVyZ2VuDQo=
--------------WU4UepAvLYmWZiJ3sfjQ3iz2
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-----

--------------WU4UepAvLYmWZiJ3sfjQ3iz2--

--------------7Veau3AwEzFUQnbE4MzFt9zj--

--------------1OPAsa0zGAbbc43CX6Zvwh4o
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/Ey8FAmUpXGgFAwAAAAAACgkQsN6d1ii/Ey/M
Owf/Z7X8UZlXd1waOk7ix8fsUEZNKjgkYrC34QUbkEoPGnLKQE49Zegn1XXYjRU5x5jKHk3i+Xxp
kPGiAn07AchW3hnm3TzZFnRsiyNBB95K+92sAmnueV/8RbwzKNKAVrjr8mbtG/lVuUoyZsyV9QNZ
eJjeSX5hn3rJlsS6czmeReWRWanjjTomuuWZHSvbguwVWN4Cy/pZHJN71rAd2JhQiMcUTsHAFs+j
0Rn/EN99iWaiB5NGlKASOZgz78Jpv5Y/snLxVGpIIiUPhQkB3EZFaw68yYPZm9Ee2/xQ++KvKCVP
fZfqSSEm/h2BKuu439lCVXiUIycEC2iwO1UWhizBig==
=TsEA
-----END PGP SIGNATURE-----

--------------1OPAsa0zGAbbc43CX6Zvwh4o--


From xen-devel-bounces@lists.xenproject.org Fri Oct 13 15:11:24 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 15:11:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616651.958800 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrJos-0006ni-FS; Fri, 13 Oct 2023 15:11:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616651.958800; Fri, 13 Oct 2023 15: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 1qrJos-0006nb-Cy; Fri, 13 Oct 2023 15:11:18 +0000
Received: by outflank-mailman (input) for mailman id 616651;
 Fri, 13 Oct 2023 15: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=RqNf=F3=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qrJor-0006nV-CF
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 15:11:17 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id c0819e8c-69da-11ee-9b0e-b553b5be7939;
 Fri, 13 Oct 2023 17:11:15 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id 837084EE073A;
 Fri, 13 Oct 2023 17:11: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: c0819e8c-69da-11ee-9b0e-b553b5be7939
MIME-Version: 1.0
Date: Fri, 13 Oct 2023 17:11:14 +0200
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: Julien Grall <julien@xen.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>, Xen-devel
 <xen-devel@lists.xenproject.org>, consulting@bugseng.com, Stefano Stabellini
 <sstabellini@kernel.org>, Jan Beulich <jbeulich@suse.com>, Bertrand Marquis
 <bertrand.marquis@arm.com>, roger.pau@citrix.com, George Dunlap
 <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>
Subject: Re: MISRA C:2012 D4.11 caution on staging
In-Reply-To: <75a00257-c062-4d82-9b64-1707ce4566e6@xen.org>
References: <7972c20f361126022fa97f6b51ca2d9c@bugseng.com>
 <61f04d4b-34d9-4fd1-a989-56b042b4f3d8@citrix.com>
 <baa73fa24385b39bc6e82c4ccb08bd13@bugseng.com>
 <26f09702-9340-41ae-afcc-808becb67876@citrix.com>
 <75a00257-c062-4d82-9b64-1707ce4566e6@xen.org>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <594c09e1f8b2e1e8321c2cb862fcb378@bugseng.com>
X-Sender: nicola.vetrini@bugseng.com
Organization: BUGSENG s.r.l.
Content-Type: text/plain; charset=UTF-8;
 format=flowed
Content-Transfer-Encoding: 8bit

On 13/10/2023 11:27, Julien Grall wrote:
> Hi Andrew,
> 
> On 11/10/2023 08:51, Andrew Cooper wrote:
>> On 11/10/2023 3:47 pm, Nicola Vetrini wrote:
>>> On 11/10/2023 02:15, Andrew Cooper wrote:
>>>> On 10/10/2023 5:31 pm, Nicola Vetrini wrote:
>>>>> Hi,
>>>>> 
>>>>> as you can see from [1], there's a MISRA C guideline, D4.11, that 
>>>>> is
>>>>> supposed to be clean
>>>>> (i.e., have no reports), but has a caution on an argument to memcpy
>>>>> (the second argument might be null according to the checker, given 
>>>>> a
>>>>> set of assumptions on
>>>>> the control flow). To access the report just click on the second 
>>>>> link
>>>>> in the log, which should take you to a webpage with a list of
>>>>> MISRA guidelines. Click on D4.11 and you'll see the full report, 
>>>>> which
>>>>> I pasted below for convenience.
>>>>> 
>>>>> If the finding is genuine, then some countermeasure needs to be 
>>>>> taken
>>>>> against this
>>>>> possible bug, otherwise it needs to be motivated why the field
>>>>> config->handle can't
>>>>> be null at that point.
>>>>> The finding is likely the result of an improvement made to the
>>>>> checker, because the first
>>>>> analysis I can see that spots it happened when rc1 has been tagged,
>>>>> but that commit does not
>>>>> touch the involved files.
>>>>> 
>>>>> [1] https://gitlab.com/xen-project/xen/-/jobs/5251222578
>>>> 
>>>> That's a false positive, but I'm not entirely surprised that the 
>>>> checker
>>>> struggled to see it.
>>>> 
>>>> First,
>>>> 
>>>> ASSERT(is_system_domain(d) ? config == NULL : config != NULL);
>>>> 
>>>> All system domains (domid >= 0x7ff0, inc IDLE) pass a NULL config.  
>>>> All
>>>> other domains pass a real config.
>>>> 
>>>> Next,
>>>> 
>>>> /* DOMID_{XEN,IO,etc} (other than IDLE) are sufficiently 
>>>> constructed. */
>>>> if ( is_system_domain(d) && !is_idle_domain(d) )
>>>>      return d;
>>>> 
>>>> So at this point we only have the IDLE domain and real domains.
>>>> 
>>>> And finally, the complained-about construct is inside an:
>>>> 
>>>> if ( !is_idle_domain(d) )
>>>>      ...
>>>> 
>>>> hence config cannot be NULL, but only because of the way in which
>>>> is_{system,idle}_domain() interact.
>>>> 
>>>> ~Andrew
>>> 
>>> Ok. I think this should be documented as a false positive using the
>>> comment deviation mechanism
>>> in the false-positive-eclair.json file (once a name for the prefix is
>>> settled on in the
>>> other thread).
>>> 
>> 
>> Yeah - I was expecting that.
>> 
>> This code is mid-cleanup (in my copious free time, so not for several
>> releases now...) but even when it is rearranged sufficiently for IDLE 
>> to
>> have an earlier exit, I still wouldn't expect a static analyser to be
>> able to recognise this as being safe.
> 
> Looking through the analysis, I think Eclair properly detect the IDLE
> domain. But it thinks the domain ID has changed mid function (see my
> other reply to Stefano).
> 
> So we can return early for the IDLE domain, then this should silence
> Eclair. That said, it is unclear to me why it thinks the domain_id can
> change...
> 

Well, the implementation of the directive has best-effort precision, 
therefore false positives
like this one are possible. Since Andrew argued that the path is indeed 
safe, I think
it's best to deviate this as such, since other minimal changes could 
also make this one
resurface in the future.

> A simple way to fix it would be to have a local boolean that will be
> used in place of is_idle_domain(d). This should help Eclair to detect
> that a domain cannot change its ID in the middle of domain
> construction.
> 
> Cheers,

I think only conditions are checked to get the possible code paths, to 
have a reasonable
tradeoff between speed and analysis precision. Therefore, it's quite 
possible that it would
give the same caution.

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


From xen-devel-bounces@lists.xenproject.org Fri Oct 13 15:16:28 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 15:16:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616656.958811 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrJtm-00085U-3L; Fri, 13 Oct 2023 15:16:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616656.958811; Fri, 13 Oct 2023 15:16: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 1qrJtm-00085N-0B; Fri, 13 Oct 2023 15:16:22 +0000
Received: by outflank-mailman (input) for mailman id 616656;
 Fri, 13 Oct 2023 15:16: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=36VQ=F3=cloud.com=george.dunlap@srs-se1.protection.inumbo.net>)
 id 1qrJtk-00084y-1j
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 15:16:20 +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 7509b59d-69db-11ee-9b0e-b553b5be7939;
 Fri, 13 Oct 2023 17:16:17 +0200 (CEST)
Received: by mail-lj1-x231.google.com with SMTP id
 38308e7fff4ca-2c50ec238aeso2250181fa.0
 for <xen-devel@lists.xenproject.org>; Fri, 13 Oct 2023 08:16: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: 7509b59d-69db-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1697210177; x=1697814977; 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=CjgHocVG2VLG8jjlLiA86XtRg3vIMvwgoUhrGW7Ocq0=;
        b=OGlTUQzZ1EfQpLYWhM0PyqEtgwsc85PLRAI4xu1pMa9x+Ajx/x6p8omX8kHMikPOEx
         2PCNxEkuDMZJ45HhbUbpMy36HPWp4essU0GsY7v6x2g2OaZ8dYMAwMKf4TGgvgw1h1O1
         7XrrFX/ARFv6yHNv6LQXbTXUZ40WVkheW6lX4=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697210177; x=1697814977;
        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=CjgHocVG2VLG8jjlLiA86XtRg3vIMvwgoUhrGW7Ocq0=;
        b=PpBv7gfKm3evrGANLjHLsAAVpmohGZcP3FPKtxxtCSKKJI1PLHIuUktaeZOlE9dVEk
         ov9e29+db02tVFY/ySd64gzu9rZoPPU/1waY/1vQiu47rSAq/7MdLkXC1zqlwdj2zwCg
         vzVSm/M7CHhpwKIruFDvoXtbZtkX9cBg2xvg15h8lEkW07gTMtsvoxbvwhitc4lRDY2L
         eihjtunJ78ZMhEFunUe5SdhC8zg/Qd/LXtLleoOQP3w/7u0vWiIXCszVKDDNxRzFD5aN
         YIdUmigeffqFlEpSMgW30I5Dl2JuTzIl1pXiVoZWOVk+r80DpFXv9X0mAK273LAJuCUK
         /woA==
X-Gm-Message-State: AOJu0Yza/PC8jQL1E+Tiok0Z6lrg4TT8yurZdHfNjvd7+arBqA9VmuJV
	phdGTXE3n1Ve4UilMMft8xZHidyc6u3xNeeBslkobg==
X-Google-Smtp-Source: AGHT+IFG60R97vNpnEMDndRql6UdS2/547n24QJBM7U2ykiolHvrsk+RCjGk3uA4Ux/NvOPpbc4Kql7nYFSlBrRbtSY=
X-Received: by 2002:a2e:a40f:0:b0:2bf:fab9:db28 with SMTP id
 p15-20020a2ea40f000000b002bffab9db28mr22914529ljn.6.1697210177237; Fri, 13
 Oct 2023 08:16:17 -0700 (PDT)
MIME-Version: 1.0
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> <alpine.DEB.2.22.394.2309271658500.1403502@ubuntu-linux-20-04-desktop>
 <CA+zSX=ZbeUFrfAUJShooJFJ+d89f4xdXfJJ9HoJKRh4UStkTFQ@mail.gmail.com>
 <alpine.DEB.2.22.394.2310121535580.3431292@ubuntu-linux-20-04-desktop>
 <CA+zSX=Y5dMVFM6dVNgBRHxKc0C1e5WGgweQ0FaXXCfAFGH1aPA@mail.gmail.com>
 <a93839b8-932a-4634-9549-081df950afb2@xen.org> <5390a035-f0e8-498c-b059-b9eca3a5c6ac@suse.com>
 <e76d5b41-5057-4ebe-affd-ae1a158071a1@xen.org> <d75c138f-df88-4e7e-9084-533aafdcd982@suse.com>
In-Reply-To: <d75c138f-df88-4e7e-9084-533aafdcd982@suse.com>
From: George Dunlap <george.dunlap@cloud.com>
Date: Fri, 13 Oct 2023 16:16:05 +0100
Message-ID: <CA+zSX=bLbYhL7KRKpqfwoO=CRtEkT1bKMLo0Fu5nna0w_==NRA@mail.gmail.com>
Subject: Re: Xen 4.18 release: Reminder about code freeze
To: Juergen Gross <jgross@suse.com>
Cc: Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>, 
	Andrew Cooper <andrew.cooper3@citrix.com>, Henry Wang <Henry.Wang@arm.com>, 
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>, 
	Bertrand Marquis <Bertrand.Marquis@arm.com>, Jan Beulich <jbeulich@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 Fri, Oct 13, 2023 at 4:04=E2=80=AFPM Juergen Gross <jgross@suse.com> wro=
te:
> >>> Technically, dom0 has exactly the same problem as dom0less domains it=
 boots
> >>> before Xenstored is running and therefore it may need to know when it=
 is
> >>> ready to receive commands.
> >>
> >> Umm, no, not really.
> >>
> >> The main difference between dom0 and a dom0less domU is, that xenstore=
d
> >> introduces dom0 by itself via a call of dom0_init(), while the dom0les=
s
> >> domUs get introduced by Xen tools in case a dom0 is coming up later. A=
nd
> >> that XS_INTRODUCE will clobber any ring page contents, while a call of
> >> dom0_init() won't do that.
> >>
> >> Dom0 (especially the kernel) is fine to start filling the ring page wi=
th
> >> requests even before xenstored is running. It just shouldn't expect to
> >> receive any responses right away.
> > I am not sure what you mean by fine. You will see hang notifications if
> > Xenstored is not started in time. Isn't why we decided to go with a dif=
ferent
> > way for dom0less?
>
> The main difference is that dom0 tells xenstored the connection parameter=
s for
> itself, so dom0 _knows_ that the ring page is setup correctly when xensto=
red
> starts looking at it (it is dom0 which needs to do the ring page init).
>
> A dom0less domU doesn't have that negotiation with xenstored, as xenstore=
d just
> uses the pre-defined grant for looking at the ring page. For the domU the=
re is
> no way to tell that xenstored has initialized the ring page (it is not th=
e domU
> to do the initialization, as the XS_INTRODUCE might be sent before the do=
mU
> even starts running), other than the "connected" indicator in the page it=
self.

Any thoughts on my patch?  From your description, it sounds like maybe
it should be in the right direction, although it's currently missing
memory barriers.

 -George


From xen-devel-bounces@lists.xenproject.org Fri Oct 13 15:24:57 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 15:24:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616664.958851 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrK25-0003X3-Ix; Fri, 13 Oct 2023 15:24:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616664.958851; Fri, 13 Oct 2023 15:24: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 1qrK25-0003Wn-FG; Fri, 13 Oct 2023 15:24:57 +0000
Received: by outflank-mailman (input) for mailman id 616664;
 Fri, 13 Oct 2023 15:24: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=1cw9=F3=bugseng.com=federico.serafini@srs-se1.protection.inumbo.net>)
 id 1qrK24-0002kz-0m
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 15:24:56 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id a96ddf56-69dc-11ee-98d4-6d05b1d4d9a1;
 Fri, 13 Oct 2023 17:24:55 +0200 (CEST)
Received: from Dell.bugseng.com (unknown [37.161.222.93])
 by support.bugseng.com (Postfix) with ESMTPSA id 6B48C4EE0745;
 Fri, 13 Oct 2023 17:24: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: a96ddf56-69dc-11ee-98d4-6d05b1d4d9a1
From: Federico Serafini <federico.serafini@bugseng.com>
To: xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com,
	Federico Serafini <federico.serafini@bugseng.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 <henry.wang@arm.com>
Subject: [XEN PATCH 03/10] arm/smpboot: address violations of MISRA C:2012 Rule 8.2
Date: Fri, 13 Oct 2023 17:24:33 +0200
Message-Id: <9ff244730ac8a69598699acf663c086a5272ac82.1697207038.git.federico.serafini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1697207038.git.federico.serafini@bugseng.com>
References: <cover.1697207038.git.federico.serafini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Add missing parameter name, no functional change.

Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
---
 xen/arch/arm/arm64/smpboot.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/xen/arch/arm/arm64/smpboot.c b/xen/arch/arm/arm64/smpboot.c
index 9637f42469..bf81d018b3 100644
--- a/xen/arch/arm/arm64/smpboot.c
+++ b/xen/arch/arm/arm64/smpboot.c
@@ -10,7 +10,7 @@
 #include <asm/acpi.h>
 
 struct smp_enable_ops {
-        int             (*prepare_cpu)(int);
+        int             (*prepare_cpu)(int cpu);
 };
 
 static paddr_t cpu_release_addr[NR_CPUS];
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Fri Oct 13 15:24:57 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 15:24:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616662.958831 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrK23-000300-2o; Fri, 13 Oct 2023 15:24:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616662.958831; Fri, 13 Oct 2023 15: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 1qrK23-0002zt-00; Fri, 13 Oct 2023 15:24:55 +0000
Received: by outflank-mailman (input) for mailman id 616662;
 Fri, 13 Oct 2023 15:24: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=1cw9=F3=bugseng.com=federico.serafini@srs-se1.protection.inumbo.net>)
 id 1qrK21-0002kj-SX
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 15:24:53 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id a7a569e1-69dc-11ee-9b0e-b553b5be7939;
 Fri, 13 Oct 2023 17:24:52 +0200 (CEST)
Received: from Dell.bugseng.com (unknown [37.161.222.93])
 by support.bugseng.com (Postfix) with ESMTPSA id 2E9B24EE073D;
 Fri, 13 Oct 2023 17:24: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: a7a569e1-69dc-11ee-9b0e-b553b5be7939
From: Federico Serafini <federico.serafini@bugseng.com>
To: xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com,
	Federico Serafini <federico.serafini@bugseng.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 <henry.wang@arm.com>
Subject: [XEN PATCH 01/10] arm/gic: address violations of MISRA C:2012 Rule 8.2
Date: Fri, 13 Oct 2023 17:24:31 +0200
Message-Id: <e55bfe55e0c34e96692f397ff69365bc0819fd90.1697207038.git.federico.serafini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1697207038.git.federico.serafini@bugseng.com>
References: <cover.1697207038.git.federico.serafini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Add missing parameter names, no functional change.

Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
---
 xen/arch/arm/include/asm/gic.h | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/xen/arch/arm/include/asm/gic.h b/xen/arch/arm/include/asm/gic.h
index f1ef347edc..03f209529b 100644
--- a/xen/arch/arm/include/asm/gic.h
+++ b/xen/arch/arm/include/asm/gic.h
@@ -246,7 +246,7 @@ void gic_set_irq_type(struct irq_desc *desc, unsigned int type);
 
 /* Program the GIC to route an interrupt */
 extern void gic_route_irq_to_xen(struct irq_desc *desc, unsigned int priority);
-extern int gic_route_irq_to_guest(struct domain *, unsigned int virq,
+extern int gic_route_irq_to_guest(struct domain *d, unsigned int virq,
                                   struct irq_desc *desc,
                                   unsigned int priority);
 
@@ -330,11 +330,11 @@ struct gic_hw_operations {
     /* Initialize the GIC and the boot CPU */
     int (*init)(void);
     /* Save GIC registers */
-    void (*save_state)(struct vcpu *);
+    void (*save_state)(struct vcpu *v);
     /* Restore GIC registers */
-    void (*restore_state)(const struct vcpu *);
+    void (*restore_state)(const struct vcpu *v);
     /* Dump GIC LR register information */
-    void (*dump_state)(const struct vcpu *);
+    void (*dump_state)(const struct vcpu *v);
 
     /* hw_irq_controller to enable/disable/eoi host irq */
     hw_irq_controller *gic_host_irq_type;
@@ -369,9 +369,9 @@ struct gic_hw_operations {
     /* Clear LR register */
     void (*clear_lr)(int lr);
     /* Read LR register and populate gic_lr structure */
-    void (*read_lr)(int lr, struct gic_lr *);
+    void (*read_lr)(int lr, struct gic_lr *lr_reg);
     /* Write LR register from gic_lr structure */
-    void (*write_lr)(int lr, const struct gic_lr *);
+    void (*write_lr)(int lr, const struct gic_lr *lr_reg);
     /* Read VMCR priority */
     unsigned int (*read_vmcr_priority)(void);
     /* Read APRn register */
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Fri Oct 13 15:24:57 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 15:24:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616663.958837 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrK23-00032i-Ep; Fri, 13 Oct 2023 15:24:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616663.958837; Fri, 13 Oct 2023 15: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 1qrK23-00031i-7t; Fri, 13 Oct 2023 15:24:55 +0000
Received: by outflank-mailman (input) for mailman id 616663;
 Fri, 13 Oct 2023 15:24: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=1cw9=F3=bugseng.com=federico.serafini@srs-se1.protection.inumbo.net>)
 id 1qrK22-0002kz-6T
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 15:24:54 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id a816777d-69dc-11ee-98d4-6d05b1d4d9a1;
 Fri, 13 Oct 2023 17:24:53 +0200 (CEST)
Received: from Dell.bugseng.com (unknown [37.161.222.93])
 by support.bugseng.com (Postfix) with ESMTPSA id 480814EE0744;
 Fri, 13 Oct 2023 17:24: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: a816777d-69dc-11ee-98d4-6d05b1d4d9a1
From: Federico Serafini <federico.serafini@bugseng.com>
To: xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com,
	Federico Serafini <federico.serafini@bugseng.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 <henry.wang@arm.com>
Subject: [XEN PATCH 02/10] arm/cpufeature: address violations of MISRA C:2012 Rule 8.2
Date: Fri, 13 Oct 2023 17:24:32 +0200
Message-Id: <3b28dca993cac9391b997c1744218cf4062907df.1697207038.git.federico.serafini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1697207038.git.federico.serafini@bugseng.com>
References: <cover.1697207038.git.federico.serafini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Add missing parameter names, no functional change.

Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
---
 xen/arch/arm/include/asm/cpufeature.h | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/xen/arch/arm/include/asm/cpufeature.h b/xen/arch/arm/include/asm/cpufeature.h
index 8011076b8c..41e97c23dd 100644
--- a/xen/arch/arm/include/asm/cpufeature.h
+++ b/xen/arch/arm/include/asm/cpufeature.h
@@ -127,8 +127,8 @@ static inline void cpus_set_cap(unsigned int num)
 struct arm_cpu_capabilities {
     const char *desc;
     u16 capability;
-    bool (*matches)(const struct arm_cpu_capabilities *);
-    int (*enable)(void *); /* Called on every active CPUs */
+    bool (*matches)(const struct arm_cpu_capabilities *caps);
+    int (*enable)(void *ptr); /* Called on every active CPUs */
     union {
         struct {    /* To be used for eratum handling only */
             u32 midr_model;
@@ -448,10 +448,10 @@ struct cpuinfo_arm {
 
 extern struct cpuinfo_arm system_cpuinfo;
 
-extern void identify_cpu(struct cpuinfo_arm *);
+extern void identify_cpu(struct cpuinfo_arm *c);
 
 #ifdef CONFIG_ARM_64
-extern void update_system_features(const struct cpuinfo_arm *);
+extern void update_system_features(const struct cpuinfo_arm *new);
 #else
 static inline void update_system_features(const struct cpuinfo_arm *cpuinfo)
 {
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Fri Oct 13 15:24:58 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 15:24:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616661.958821 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrK21-0002kw-TF; Fri, 13 Oct 2023 15:24:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616661.958821; Fri, 13 Oct 2023 15:24: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 1qrK21-0002kp-Px; Fri, 13 Oct 2023 15:24:53 +0000
Received: by outflank-mailman (input) for mailman id 616661;
 Fri, 13 Oct 2023 15:24: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=1cw9=F3=bugseng.com=federico.serafini@srs-se1.protection.inumbo.net>)
 id 1qrK21-0002kj-54
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 15:24:53 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id a70f1d37-69dc-11ee-9b0e-b553b5be7939;
 Fri, 13 Oct 2023 17:24:51 +0200 (CEST)
Received: from Dell.bugseng.com (unknown [37.161.222.93])
 by support.bugseng.com (Postfix) with ESMTPSA id 982AB4EE073A;
 Fri, 13 Oct 2023 17:24: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: a70f1d37-69dc-11ee-9b0e-b553b5be7939
From: Federico Serafini <federico.serafini@bugseng.com>
To: xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com,
	Federico Serafini <federico.serafini@bugseng.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Rahul Singh <rahul.singh@arm.com>,
	Henry Wang <henry.wang@arm.com>
Subject: [XEN PATCH 00/10] arm: address some violations of MISRA C:2012 Rule 8.2
Date: Fri, 13 Oct 2023 17:24:30 +0200
Message-Id: <cover.1697207038.git.federico.serafini@bugseng.com>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

This patch series addresses some of the violations of Rule 8.2 adding the
missing parameter names.

Federico Serafini (10):
  arm/gic: address violations of MISRA C:2012 Rule 8.2
  arm/cpufeature: address violations of MISRA C:2012 Rule 8.2
  arm/smpboot: address violations of MISRA C:2012 Rule 8.2
  arm/setup: address violations of MISRA C:2012 Rule 8.2
  arm/p2m: address a violation of MISRA C:2012 Rule 8.2
  arm/cmpxchg: address violations of MISRA C:2012 Rule 8.2
  arm/traps: address a violation of MISRA C:2012 Rule 8.2
  arm/vgic-v3: address a violation of MISRA C:2012 Rule 8.2
  arm/domain: address violations of MISRA C:2012 Rule 8.2
  arm/smmu: address violation of MISRA C:2012 Rule 8.2

 xen/arch/arm/arm64/smpboot.c             |  2 +-
 xen/arch/arm/include/asm/arm32/cmpxchg.h |  2 +-
 xen/arch/arm/include/asm/arm64/cmpxchg.h |  2 +-
 xen/arch/arm/include/asm/cpufeature.h    |  8 ++++----
 xen/arch/arm/include/asm/domain.h        |  4 ++--
 xen/arch/arm/include/asm/gic.h           | 12 ++++++------
 xen/arch/arm/include/asm/p2m.h           |  2 +-
 xen/arch/arm/include/asm/setup.h         |  5 +++--
 xen/arch/arm/setup.c                     |  4 ++--
 xen/arch/arm/traps.c                     |  2 +-
 xen/arch/arm/vgic-v3.c                   |  2 +-
 xen/drivers/passthrough/arm/smmu.c       |  6 +++---
 12 files changed, 26 insertions(+), 25 deletions(-)

-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Fri Oct 13 15:24:59 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 15:24:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616665.958861 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrK27-0003qJ-QF; Fri, 13 Oct 2023 15:24:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616665.958861; Fri, 13 Oct 2023 15: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 1qrK27-0003q6-NO; Fri, 13 Oct 2023 15:24:59 +0000
Received: by outflank-mailman (input) for mailman id 616665;
 Fri, 13 Oct 2023 15:24: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=1cw9=F3=bugseng.com=federico.serafini@srs-se1.protection.inumbo.net>)
 id 1qrK26-0002kj-Ek
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 15:24:58 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id aa679a67-69dc-11ee-9b0e-b553b5be7939;
 Fri, 13 Oct 2023 17:24:56 +0200 (CEST)
Received: from Dell.bugseng.com (unknown [37.161.222.93])
 by support.bugseng.com (Postfix) with ESMTPSA id 911BB4EE0746;
 Fri, 13 Oct 2023 17:24: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: aa679a67-69dc-11ee-9b0e-b553b5be7939
From: Federico Serafini <federico.serafini@bugseng.com>
To: xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com,
	Federico Serafini <federico.serafini@bugseng.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 <henry.wang@arm.com>
Subject: [XEN PATCH 04/10] arm/setup: address violations of MISRA C:2012 Rule 8.2
Date: Fri, 13 Oct 2023 17:24:34 +0200
Message-Id: <b71d8ef87be08e84360efebd7c5644521b3a6661.1697207038.git.federico.serafini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1697207038.git.federico.serafini@bugseng.com>
References: <cover.1697207038.git.federico.serafini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Add missing parameter names, no functional change.

Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
---
 xen/arch/arm/include/asm/setup.h | 5 +++--
 xen/arch/arm/setup.c             | 4 ++--
 2 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/xen/arch/arm/include/asm/setup.h b/xen/arch/arm/include/asm/setup.h
index b8866c20f4..98af6f55f5 100644
--- a/xen/arch/arm/include/asm/setup.h
+++ b/xen/arch/arm/include/asm/setup.h
@@ -141,7 +141,8 @@ void alloc_static_evtchn(void);
 
 void discard_initial_modules(void);
 void fw_unreserved_regions(paddr_t s, paddr_t e,
-                           void (*cb)(paddr_t, paddr_t), unsigned int first);
+                           void (*cb)(paddr_t ps, paddr_t pe),
+                           unsigned int first);
 
 size_t boot_fdt_info(const void *fdt, paddr_t paddr);
 const char *boot_fdt_cmdline(const void *fdt);
@@ -189,7 +190,7 @@ extern lpae_t boot_second_id[XEN_PT_LPAE_ENTRIES];
 extern lpae_t boot_third_id[XEN_PT_LPAE_ENTRIES];
 
 /* Find where Xen will be residing at runtime and return a PT entry */
-lpae_t pte_of_xenaddr(vaddr_t);
+lpae_t pte_of_xenaddr(vaddr_t va);
 
 extern const char __ro_after_init_start[], __ro_after_init_end[];
 
diff --git a/xen/arch/arm/setup.c b/xen/arch/arm/setup.c
index db748839d3..3f3a45719c 100644
--- a/xen/arch/arm/setup.c
+++ b/xen/arch/arm/setup.c
@@ -207,7 +207,7 @@ static void __init processor_id(void)
 }
 
 static void __init dt_unreserved_regions(paddr_t s, paddr_t e,
-                                         void (*cb)(paddr_t, paddr_t),
+                                         void (*cb)(paddr_t ps, paddr_t pe),
                                          unsigned int first)
 {
     unsigned int i, nr;
@@ -324,7 +324,7 @@ static bool __init bootmodules_overlap_check(struct bootmodules *bootmodules,
 }
 
 void __init fw_unreserved_regions(paddr_t s, paddr_t e,
-                                  void (*cb)(paddr_t, paddr_t),
+                                  void (*cb)(paddr_t ps, paddr_t pe),
                                   unsigned int first)
 {
     if ( acpi_disabled )
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Fri Oct 13 15:25:00 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 15:25:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616666.958867 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrK28-0003vP-9l; Fri, 13 Oct 2023 15:25:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616666.958867; Fri, 13 Oct 2023 15: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 1qrK28-0003uS-2u; Fri, 13 Oct 2023 15:25:00 +0000
Received: by outflank-mailman (input) for mailman id 616666;
 Fri, 13 Oct 2023 15:24: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=1cw9=F3=bugseng.com=federico.serafini@srs-se1.protection.inumbo.net>)
 id 1qrK27-0002kj-Iq
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 15:24:59 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id ab17a39d-69dc-11ee-9b0e-b553b5be7939;
 Fri, 13 Oct 2023 17:24:58 +0200 (CEST)
Received: from Dell.bugseng.com (unknown [37.161.222.93])
 by support.bugseng.com (Postfix) with ESMTPSA id DB3C94EE073C;
 Fri, 13 Oct 2023 17:24: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: ab17a39d-69dc-11ee-9b0e-b553b5be7939
From: Federico Serafini <federico.serafini@bugseng.com>
To: xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com,
	Federico Serafini <federico.serafini@bugseng.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 <henry.wang@arm.com>
Subject: [XEN PATCH 05/10] arm/p2m: address a violation of MISRA C:2012 Rule 8.2
Date: Fri, 13 Oct 2023 17:24:35 +0200
Message-Id: <b8dcbbbe9e6546f03ecc6e6a0c617cf98da9786a.1697207038.git.federico.serafini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1697207038.git.federico.serafini@bugseng.com>
References: <cover.1697207038.git.federico.serafini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Add missing parameter name, no functional change.

Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
---
 xen/arch/arm/include/asm/p2m.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/xen/arch/arm/include/asm/p2m.h b/xen/arch/arm/include/asm/p2m.h
index 940495d42b..9ad312bfb5 100644
--- a/xen/arch/arm/include/asm/p2m.h
+++ b/xen/arch/arm/include/asm/p2m.h
@@ -21,7 +21,7 @@ extern unsigned int p2m_root_level;
 
 struct domain;
 
-extern void memory_type_changed(struct domain *);
+extern void memory_type_changed(struct domain *d);
 
 /* Per-p2m-table state */
 struct p2m_domain {
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Fri Oct 13 15:25:02 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 15:25:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616667.958881 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrK2A-0004PD-Hj; Fri, 13 Oct 2023 15:25:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616667.958881; Fri, 13 Oct 2023 15:25: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 1qrK2A-0004Oy-DS; Fri, 13 Oct 2023 15:25:02 +0000
Received: by outflank-mailman (input) for mailman id 616667;
 Fri, 13 Oct 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=1cw9=F3=bugseng.com=federico.serafini@srs-se1.protection.inumbo.net>)
 id 1qrK28-0002kz-TI
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 15:25:00 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id ac42960f-69dc-11ee-98d4-6d05b1d4d9a1;
 Fri, 13 Oct 2023 17:25:00 +0200 (CEST)
Received: from Dell.bugseng.com (unknown [37.161.222.93])
 by support.bugseng.com (Postfix) with ESMTPSA id 9739C4EE073D;
 Fri, 13 Oct 2023 17:24: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: ac42960f-69dc-11ee-98d4-6d05b1d4d9a1
From: Federico Serafini <federico.serafini@bugseng.com>
To: xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com,
	Federico Serafini <federico.serafini@bugseng.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 <henry.wang@arm.com>
Subject: [XEN PATCH 06/10] arm/cmpxchg: address violations of MISRA C:2012 Rule 8.2
Date: Fri, 13 Oct 2023 17:24:36 +0200
Message-Id: <7323f8210d16e58d8b4cdac89a10d67e7d7d023f.1697207038.git.federico.serafini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1697207038.git.federico.serafini@bugseng.com>
References: <cover.1697207038.git.federico.serafini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Add missing parameter names, no functional change.

Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
---
 xen/arch/arm/include/asm/arm32/cmpxchg.h | 2 +-
 xen/arch/arm/include/asm/arm64/cmpxchg.h | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/xen/arch/arm/include/asm/arm32/cmpxchg.h b/xen/arch/arm/include/asm/arm32/cmpxchg.h
index b0bd1d8b68..37b2d64eb6 100644
--- a/xen/arch/arm/include/asm/arm32/cmpxchg.h
+++ b/xen/arch/arm/include/asm/arm32/cmpxchg.h
@@ -3,7 +3,7 @@
 
 #include <xen/prefetch.h>
 
-extern void __bad_xchg(volatile void *, int);
+extern void __bad_xchg(volatile void *ptr, int size);
 
 static inline unsigned long __xchg(unsigned long x, volatile void *ptr, int size)
 {
diff --git a/xen/arch/arm/include/asm/arm64/cmpxchg.h b/xen/arch/arm/include/asm/arm64/cmpxchg.h
index 10e4edc022..dbfaf91567 100644
--- a/xen/arch/arm/include/asm/arm64/cmpxchg.h
+++ b/xen/arch/arm/include/asm/arm64/cmpxchg.h
@@ -1,7 +1,7 @@
 #ifndef __ASM_ARM64_CMPXCHG_H
 #define __ASM_ARM64_CMPXCHG_H
 
-extern void __bad_xchg(volatile void *, int);
+extern void __bad_xchg(volatile void *ptr, int size);
 
 static inline unsigned long __xchg(unsigned long x, volatile void *ptr, int size)
 {
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Fri Oct 13 15:25:04 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 15:25:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616668.958891 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrK2C-0004ja-RV; Fri, 13 Oct 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 616668.958891; Fri, 13 Oct 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 1qrK2C-0004jA-NS; Fri, 13 Oct 2023 15:25:04 +0000
Received: by outflank-mailman (input) for mailman id 616668;
 Fri, 13 Oct 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=1cw9=F3=bugseng.com=federico.serafini@srs-se1.protection.inumbo.net>)
 id 1qrK2A-0002kz-SM
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 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 ad7bdd30-69dc-11ee-98d4-6d05b1d4d9a1;
 Fri, 13 Oct 2023 17:25:02 +0200 (CEST)
Received: from Dell.bugseng.com (unknown [37.161.222.93])
 by support.bugseng.com (Postfix) with ESMTPSA id 7F18C4EE0744;
 Fri, 13 Oct 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: ad7bdd30-69dc-11ee-98d4-6d05b1d4d9a1
From: Federico Serafini <federico.serafini@bugseng.com>
To: xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com,
	Federico Serafini <federico.serafini@bugseng.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 <henry.wang@arm.com>
Subject: [XEN PATCH 07/10] arm/traps: address a violation of MISRA C:2012 Rule 8.2
Date: Fri, 13 Oct 2023 17:24:37 +0200
Message-Id: <dbc0e965cd9f93848d27e7ebf0ffcfca05499d58.1697207038.git.federico.serafini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1697207038.git.federico.serafini@bugseng.com>
References: <cover.1697207038.git.federico.serafini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Add missing parameter name, no functional change.

Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
---
 xen/arch/arm/traps.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/xen/arch/arm/traps.c b/xen/arch/arm/traps.c
index ce89f16404..5aa14d4707 100644
--- a/xen/arch/arm/traps.c
+++ b/xen/arch/arm/traps.c
@@ -1236,7 +1236,7 @@ int do_bug_frame(const struct cpu_user_regs *regs, vaddr_t pc)
 
     if ( id == BUGFRAME_run_fn )
     {
-        void (*fn)(const struct cpu_user_regs *) = (void *)regs->BUG_FN_REG;
+        void (*fn)(const struct cpu_user_regs *regs) = (void *)regs->BUG_FN_REG;
 
         fn(regs);
         return 0;
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Fri Oct 13 15:25:08 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 15:25:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616672.958901 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrK2G-00058R-6D; Fri, 13 Oct 2023 15:25:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616672.958901; Fri, 13 Oct 2023 15: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 1qrK2G-00058K-1N; Fri, 13 Oct 2023 15:25:08 +0000
Received: by outflank-mailman (input) for mailman id 616672;
 Fri, 13 Oct 2023 15:25: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=1cw9=F3=bugseng.com=federico.serafini@srs-se1.protection.inumbo.net>)
 id 1qrK2E-0002kz-1u
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 15:25:06 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id af5963f0-69dc-11ee-98d4-6d05b1d4d9a1;
 Fri, 13 Oct 2023 17:25:05 +0200 (CEST)
Received: from Dell.bugseng.com (unknown [37.161.222.93])
 by support.bugseng.com (Postfix) with ESMTPSA id 7779B4EE073D;
 Fri, 13 Oct 2023 17:25: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: af5963f0-69dc-11ee-98d4-6d05b1d4d9a1
From: Federico Serafini <federico.serafini@bugseng.com>
To: xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com,
	Federico Serafini <federico.serafini@bugseng.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 <henry.wang@arm.com>
Subject: [XEN PATCH 09/10] arm/domain: address violations of MISRA C:2012 Rule 8.2
Date: Fri, 13 Oct 2023 17:24:39 +0200
Message-Id: <8bf0994b7796ecca215f73a6a1f5acc892bd2a97.1697207038.git.federico.serafini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1697207038.git.federico.serafini@bugseng.com>
References: <cover.1697207038.git.federico.serafini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Add missing parameter names, no funtional change.

Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
---
 xen/arch/arm/include/asm/domain.h | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/xen/arch/arm/include/asm/domain.h b/xen/arch/arm/include/asm/domain.h
index 99e798ffff..5fb8cd79c0 100644
--- a/xen/arch/arm/include/asm/domain.h
+++ b/xen/arch/arm/include/asm/domain.h
@@ -243,8 +243,8 @@ struct arch_vcpu
 
 }  __cacheline_aligned;
 
-void vcpu_show_registers(const struct vcpu *);
-void vcpu_switch_to_aarch64_mode(struct vcpu *);
+void vcpu_show_registers(const struct vcpu *v);
+void vcpu_switch_to_aarch64_mode(struct vcpu *v);
 
 /*
  * Due to the restriction of GICv3, the number of vCPUs in AFF0 is
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Fri Oct 13 15:25:08 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 15:25:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616674.958906 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrK2G-0005Bf-OT; Fri, 13 Oct 2023 15:25:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616674.958906; Fri, 13 Oct 2023 15: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 1qrK2G-0005B4-ET; Fri, 13 Oct 2023 15:25:08 +0000
Received: by outflank-mailman (input) for mailman id 616674;
 Fri, 13 Oct 2023 15:25: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=1cw9=F3=bugseng.com=federico.serafini@srs-se1.protection.inumbo.net>)
 id 1qrK2E-0002kj-Te
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 15:25:06 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id aed9cfbb-69dc-11ee-9b0e-b553b5be7939;
 Fri, 13 Oct 2023 17:25:04 +0200 (CEST)
Received: from Dell.bugseng.com (unknown [37.161.222.93])
 by support.bugseng.com (Postfix) with ESMTPSA id 929B34EE073C;
 Fri, 13 Oct 2023 17:25: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: aed9cfbb-69dc-11ee-9b0e-b553b5be7939
From: Federico Serafini <federico.serafini@bugseng.com>
To: xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com,
	Federico Serafini <federico.serafini@bugseng.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 <henry.wang@arm.com>
Subject: [XEN PATCH 08/10] arm/vgic-v3: address a violation of MISRA C:2012 Rule 8.2
Date: Fri, 13 Oct 2023 17:24:38 +0200
Message-Id: <d508f7bcbc1f6e98b0115774c7b570769b3554ce.1697207038.git.federico.serafini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1697207038.git.federico.serafini@bugseng.com>
References: <cover.1697207038.git.federico.serafini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Add missing parameter name, no functional change.

Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
---
 xen/arch/arm/vgic-v3.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/xen/arch/arm/vgic-v3.c b/xen/arch/arm/vgic-v3.c
index 05a009409a..cc38327701 100644
--- a/xen/arch/arm/vgic-v3.c
+++ b/xen/arch/arm/vgic-v3.c
@@ -360,7 +360,7 @@ read_unknown:
 
 static uint64_t vgic_sanitise_field(uint64_t reg, uint64_t field_mask,
                                     int field_shift,
-                                    uint64_t (*sanitise_fn)(uint64_t))
+                                    uint64_t (*sanitise_fn)(uint64_t field))
 {
     uint64_t field = (reg & field_mask) >> field_shift;
 
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Fri Oct 13 15:25:10 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 15:25:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616677.958918 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrK2I-0005at-3W; Fri, 13 Oct 2023 15:25:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616677.958918; Fri, 13 Oct 2023 15: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 1qrK2H-0005Zq-PJ; Fri, 13 Oct 2023 15:25:09 +0000
Received: by outflank-mailman (input) for mailman id 616677;
 Fri, 13 Oct 2023 15:25: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=1cw9=F3=bugseng.com=federico.serafini@srs-se1.protection.inumbo.net>)
 id 1qrK2G-0002kj-64
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 15:25:08 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id b0359cd3-69dc-11ee-9b0e-b553b5be7939;
 Fri, 13 Oct 2023 17:25:06 +0200 (CEST)
Received: from Dell.bugseng.com (unknown [37.161.222.93])
 by support.bugseng.com (Postfix) with ESMTPSA id 6E65A4EE0744;
 Fri, 13 Oct 2023 17:25: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: b0359cd3-69dc-11ee-9b0e-b553b5be7939
From: Federico Serafini <federico.serafini@bugseng.com>
To: xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com,
	Federico Serafini <federico.serafini@bugseng.com>,
	Julien Grall <julien@xen.org>,
	Rahul Singh <rahul.singh@arm.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Henry Wang <henry.wang@arm.com>
Subject: [XEN PATCH 10/10] arm/smmu: address violation of MISRA C:2012 Rule 8.2
Date: Fri, 13 Oct 2023 17:24:40 +0200
Message-Id: <199886f6ba1f2d5701eabd080b4f9723fc28f4b9.1697207038.git.federico.serafini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1697207038.git.federico.serafini@bugseng.com>
References: <cover.1697207038.git.federico.serafini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Add missing parameter names, no functional change.

Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
---
 xen/drivers/passthrough/arm/smmu.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/xen/drivers/passthrough/arm/smmu.c b/xen/drivers/passthrough/arm/smmu.c
index 71799064f8..11fc1d22ef 100644
--- a/xen/drivers/passthrough/arm/smmu.c
+++ b/xen/drivers/passthrough/arm/smmu.c
@@ -277,8 +277,8 @@ static void iommu_group_put(struct iommu_group *group)
 }
 
 static void iommu_group_set_iommudata(struct iommu_group *group,
-				      struct arm_smmu_master_cfg *cfg,
-				      void (*releasefn)(void *))
+                                      struct arm_smmu_master_cfg *cfg,
+                                      void (*releasefn)(void *data))
 {
 	/* TODO: Store the releasefn for the PCI */
 	ASSERT(releasefn == NULL);
@@ -2082,7 +2082,7 @@ static int arm_smmu_add_device(struct device *dev)
 	struct arm_smmu_device *smmu;
 	struct arm_smmu_master_cfg *cfg;
 	struct iommu_group *group;
-	void (*releasefn)(void *) = NULL;
+	void (*releasefn)(void *data) = NULL;
 	int ret;
 
 	smmu = find_smmu_for_device(dev);
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Fri Oct 13 15:28:31 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 15:28:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616687.958931 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrK5S-0000qD-IF; Fri, 13 Oct 2023 15:28:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616687.958931; Fri, 13 Oct 2023 15: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 1qrK5S-0000q6-Ex; Fri, 13 Oct 2023 15:28:26 +0000
Received: by outflank-mailman (input) for mailman id 616687;
 Fri, 13 Oct 2023 15:28: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 1qrK5R-0000q0-0C
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 15:28: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 1qrK5O-0004Ez-BW; Fri, 13 Oct 2023 15:28:22 +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 1qrK5O-0004O5-4A; Fri, 13 Oct 2023 15:28: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=KdoR4VgpIspwk1J70XxI7xPNsXvg1T7DV4p+aJWDUqA=; b=05t5HIWEJ5747uBeswTrEeFqE+
	9JVtcEEncl+TebHuBJKerUW+ZG1TL4Ch238GrD/pwI2l1yLXshIvElcpvel9Fq1nSnc9EkDPv1JBg
	ZEx30QIoqx/AgVKbrUoQ7feU7kxmxvd+bFdbrSTPYoSAGRfhcDFlKcvV0kwMA3BA7zHs=;
Message-ID: <c679186f-4c8b-4ade-8563-9b988296935d@xen.org>
Date: Fri, 13 Oct 2023 16:28:20 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: Xen 4.18 release: Reminder about code freeze
Content-Language: en-GB
To: Juergen Gross <jgross@suse.com>, George Dunlap <george.dunlap@cloud.com>,
 Stefano Stabellini <sstabellini@kernel.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>, Henry Wang
 <Henry.Wang@arm.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 Bertrand Marquis <Bertrand.Marquis@arm.com>, Jan Beulich
 <jbeulich@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>
 <a31ce6cb-6234-5e7f-5cd4-ed190f029811@citrix.com>
 <alpine.DEB.2.22.394.2309271658500.1403502@ubuntu-linux-20-04-desktop>
 <CA+zSX=ZbeUFrfAUJShooJFJ+d89f4xdXfJJ9HoJKRh4UStkTFQ@mail.gmail.com>
 <alpine.DEB.2.22.394.2310121535580.3431292@ubuntu-linux-20-04-desktop>
 <CA+zSX=Y5dMVFM6dVNgBRHxKc0C1e5WGgweQ0FaXXCfAFGH1aPA@mail.gmail.com>
 <a93839b8-932a-4634-9549-081df950afb2@xen.org>
 <5390a035-f0e8-498c-b059-b9eca3a5c6ac@suse.com>
 <e76d5b41-5057-4ebe-affd-ae1a158071a1@xen.org>
 <d75c138f-df88-4e7e-9084-533aafdcd982@suse.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <d75c138f-df88-4e7e-9084-533aafdcd982@suse.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit



On 13/10/2023 16:04, Juergen Gross wrote:
> On 13.10.23 16:51, Julien Grall wrote:
> A dom0less domU doesn't have that negotiation with xenstored, as 
> xenstored just
> uses the pre-defined grant for looking at the ring page. For the domU 
> there is
> no way to tell that xenstored has initialized the ring page (it is not 
> the domU
> to do the initialization, as the XS_INTRODUCE might be sent before the domU
> even starts running), other than the "connected" indicator in the page 
> itself.

Thanks for the informaiton. So dom0 needs to send a command in order to 
know if Xenstored is up. This is the part I find odd and the event 
channel notification could have help to harmonize that part (not the 
ring page setup).

Anyway, I seem the only one to think that and I don't have a use-case so 
far. So I will not push for it.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Fri Oct 13 15:34:45 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 15:34:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616699.958940 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrKBS-0002Xi-5b; Fri, 13 Oct 2023 15:34:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616699.958940; Fri, 13 Oct 2023 15: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 1qrKBS-0002Xb-2z; Fri, 13 Oct 2023 15:34:38 +0000
Received: by outflank-mailman (input) for mailman id 616699;
 Fri, 13 Oct 2023 15:34: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=U36v=F3=suse.com=jgross@srs-se1.protection.inumbo.net>)
 id 1qrKBR-0002XV-DO
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 15:34: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 03976358-69de-11ee-98d4-6d05b1d4d9a1;
 Fri, 13 Oct 2023 17:34: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 5076621A0B;
 Fri, 13 Oct 2023 15:34:35 +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 F248A138EF;
 Fri, 13 Oct 2023 15:34:34 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap2.suse-dmz.suse.de with ESMTPSA id pm63OYpjKWWYUQAAMHmgww
 (envelope-from <jgross@suse.com>); Fri, 13 Oct 2023 15:34: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: 03976358-69de-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1697211275; 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=F6Md9QExDZqcGxp8dHgqXa6IRcNmr2XByAD1FiMZlNk=;
	b=UlBv5NgSQePTXzJFBhx58WfyXGbwqUYkeDwyQ2OxnSMVxqPcuf4FJuLtjCNkYEZk5Je3UB
	SsMAZRLh21wKq8UbdKJz+9WAdD9FRsLBLv+TB98U6peKfP+EWuB94CysqX6C72oEmTeat/
	kUjbw0601wlE0WwfCDiTcOzj6b5ZDXc=
Message-ID: <e3ff056d-9fa9-4ad9-b8b1-0b33e444c6f7@suse.com>
Date: Fri, 13 Oct 2023 17:34:34 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: Xen 4.18 release: Reminder about code freeze
Content-Language: en-US
To: George Dunlap <george.dunlap@cloud.com>
Cc: Julien Grall <julien@xen.org>, Stefano Stabellini
 <sstabellini@kernel.org>, Andrew Cooper <andrew.cooper3@citrix.com>,
 Henry Wang <Henry.Wang@arm.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 Bertrand Marquis <Bertrand.Marquis@arm.com>, Jan Beulich
 <jbeulich@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>
 <a31ce6cb-6234-5e7f-5cd4-ed190f029811@citrix.com>
 <alpine.DEB.2.22.394.2309271658500.1403502@ubuntu-linux-20-04-desktop>
 <CA+zSX=ZbeUFrfAUJShooJFJ+d89f4xdXfJJ9HoJKRh4UStkTFQ@mail.gmail.com>
 <alpine.DEB.2.22.394.2310121535580.3431292@ubuntu-linux-20-04-desktop>
 <CA+zSX=Y5dMVFM6dVNgBRHxKc0C1e5WGgweQ0FaXXCfAFGH1aPA@mail.gmail.com>
 <a93839b8-932a-4634-9549-081df950afb2@xen.org>
 <5390a035-f0e8-498c-b059-b9eca3a5c6ac@suse.com>
 <e76d5b41-5057-4ebe-affd-ae1a158071a1@xen.org>
 <d75c138f-df88-4e7e-9084-533aafdcd982@suse.com>
 <CA+zSX=bLbYhL7KRKpqfwoO=CRtEkT1bKMLo0Fu5nna0w_==NRA@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=bLbYhL7KRKpqfwoO=CRtEkT1bKMLo0Fu5nna0w_==NRA@mail.gmail.com>
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature";
 boundary="------------WXY1NZn9Kua920w2mQhPr4I0"
Authentication-Results: smtp-out1.suse.de;
	none
X-Spam-Level: 
X-Spam-Score: -6.87
X-Spamd-Result: default: False [-6.87 / 50.00];
	 ARC_NA(0.00)[];
	 TO_DN_EQ_ADDR_SOME(0.00)[];
	 XM_UA_NO_VERSION(0.01)[];
	 FROM_HAS_DN(0.00)[];
	 TO_DN_SOME(0.00)[];
	 TO_MATCH_ENVRCPT_ALL(0.00)[];
	 BAYES_HAM(-0.88)[85.77%];
	 MIME_GOOD(-0.20)[multipart/signed,multipart/mixed,text/plain];
	 HAS_ATTACHMENT(0.00)[];
	 RCVD_VIA_SMTP_AUTH(0.00)[];
	 NEURAL_HAM_LONG(-3.00)[-1.000];
	 DKIM_SIGNED(0.00)[suse.com:s=susede1];
	 NEURAL_HAM_SHORT(-1.00)[-1.000];
	 MIME_BASE64_TEXT(0.10)[];
	 RCPT_COUNT_SEVEN(0.00)[11];
	 SIGNED_PGP(-2.00)[];
	 FROM_EQ_ENVFROM(0.00)[];
	 MIME_TRACE(0.00)[0:+,1:+,2:+,3:+,4:~,5:~];
	 RCVD_COUNT_TWO(0.00)[2];
	 RCVD_TLS_ALL(0.00)[];
	 MID_RHS_MATCH_FROM(0.00)[];
	 MIME_UNKNOWN(0.10)[application/pgp-keys]
X-Spam-Flag: NO

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--------------WXY1NZn9Kua920w2mQhPr4I0
Content-Type: multipart/mixed; boundary="------------PnoUSbBXxcZloqNbafYyLs08";
 protected-headers="v1"
From: Juergen Gross <jgross@suse.com>
To: George Dunlap <george.dunlap@cloud.com>
Cc: Julien Grall <julien@xen.org>, Stefano Stabellini
 <sstabellini@kernel.org>, Andrew Cooper <andrew.cooper3@citrix.com>,
 Henry Wang <Henry.Wang@arm.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 Bertrand Marquis <Bertrand.Marquis@arm.com>, Jan Beulich
 <jbeulich@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>
Message-ID: <e3ff056d-9fa9-4ad9-b8b1-0b33e444c6f7@suse.com>
Subject: Re: Xen 4.18 release: Reminder about code freeze
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>
 <alpine.DEB.2.22.394.2309271658500.1403502@ubuntu-linux-20-04-desktop>
 <CA+zSX=ZbeUFrfAUJShooJFJ+d89f4xdXfJJ9HoJKRh4UStkTFQ@mail.gmail.com>
 <alpine.DEB.2.22.394.2310121535580.3431292@ubuntu-linux-20-04-desktop>
 <CA+zSX=Y5dMVFM6dVNgBRHxKc0C1e5WGgweQ0FaXXCfAFGH1aPA@mail.gmail.com>
 <a93839b8-932a-4634-9549-081df950afb2@xen.org>
 <5390a035-f0e8-498c-b059-b9eca3a5c6ac@suse.com>
 <e76d5b41-5057-4ebe-affd-ae1a158071a1@xen.org>
 <d75c138f-df88-4e7e-9084-533aafdcd982@suse.com>
 <CA+zSX=bLbYhL7KRKpqfwoO=CRtEkT1bKMLo0Fu5nna0w_==NRA@mail.gmail.com>
In-Reply-To: <CA+zSX=bLbYhL7KRKpqfwoO=CRtEkT1bKMLo0Fu5nna0w_==NRA@mail.gmail.com>

--------------PnoUSbBXxcZloqNbafYyLs08
Content-Type: multipart/mixed; boundary="------------Hg6NdtPtWjhpy2T7c2nM1kkK"

--------------Hg6NdtPtWjhpy2T7c2nM1kkK
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: base64

T24gMTMuMTAuMjMgMTc6MTYsIEdlb3JnZSBEdW5sYXAgd3JvdGU6DQo+IE9uIEZyaSwgT2N0
IDEzLCAyMDIzIGF0IDQ6MDTigK9QTSBKdWVyZ2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+
IHdyb3RlOg0KPj4+Pj4gVGVjaG5pY2FsbHksIGRvbTAgaGFzIGV4YWN0bHkgdGhlIHNhbWUg
cHJvYmxlbSBhcyBkb20wbGVzcyBkb21haW5zIGl0IGJvb3RzDQo+Pj4+PiBiZWZvcmUgWGVu
c3RvcmVkIGlzIHJ1bm5pbmcgYW5kIHRoZXJlZm9yZSBpdCBtYXkgbmVlZCB0byBrbm93IHdo
ZW4gaXQgaXMNCj4+Pj4+IHJlYWR5IHRvIHJlY2VpdmUgY29tbWFuZHMuDQo+Pj4+DQo+Pj4+
IFVtbSwgbm8sIG5vdCByZWFsbHkuDQo+Pj4+DQo+Pj4+IFRoZSBtYWluIGRpZmZlcmVuY2Ug
YmV0d2VlbiBkb20wIGFuZCBhIGRvbTBsZXNzIGRvbVUgaXMsIHRoYXQgeGVuc3RvcmVkDQo+
Pj4+IGludHJvZHVjZXMgZG9tMCBieSBpdHNlbGYgdmlhIGEgY2FsbCBvZiBkb20wX2luaXQo
KSwgd2hpbGUgdGhlIGRvbTBsZXNzDQo+Pj4+IGRvbVVzIGdldCBpbnRyb2R1Y2VkIGJ5IFhl
biB0b29scyBpbiBjYXNlIGEgZG9tMCBpcyBjb21pbmcgdXAgbGF0ZXIuIEFuZA0KPj4+PiB0
aGF0IFhTX0lOVFJPRFVDRSB3aWxsIGNsb2JiZXIgYW55IHJpbmcgcGFnZSBjb250ZW50cywg
d2hpbGUgYSBjYWxsIG9mDQo+Pj4+IGRvbTBfaW5pdCgpIHdvbid0IGRvIHRoYXQuDQo+Pj4+
DQo+Pj4+IERvbTAgKGVzcGVjaWFsbHkgdGhlIGtlcm5lbCkgaXMgZmluZSB0byBzdGFydCBm
aWxsaW5nIHRoZSByaW5nIHBhZ2Ugd2l0aA0KPj4+PiByZXF1ZXN0cyBldmVuIGJlZm9yZSB4
ZW5zdG9yZWQgaXMgcnVubmluZy4gSXQganVzdCBzaG91bGRuJ3QgZXhwZWN0IHRvDQo+Pj4+
IHJlY2VpdmUgYW55IHJlc3BvbnNlcyByaWdodCBhd2F5Lg0KPj4+IEkgYW0gbm90IHN1cmUg
d2hhdCB5b3UgbWVhbiBieSBmaW5lLiBZb3Ugd2lsbCBzZWUgaGFuZyBub3RpZmljYXRpb25z
IGlmDQo+Pj4gWGVuc3RvcmVkIGlzIG5vdCBzdGFydGVkIGluIHRpbWUuIElzbid0IHdoeSB3
ZSBkZWNpZGVkIHRvIGdvIHdpdGggYSBkaWZmZXJlbnQNCj4+PiB3YXkgZm9yIGRvbTBsZXNz
Pw0KPj4NCj4+IFRoZSBtYWluIGRpZmZlcmVuY2UgaXMgdGhhdCBkb20wIHRlbGxzIHhlbnN0
b3JlZCB0aGUgY29ubmVjdGlvbiBwYXJhbWV0ZXJzIGZvcg0KPj4gaXRzZWxmLCBzbyBkb20w
IF9rbm93c18gdGhhdCB0aGUgcmluZyBwYWdlIGlzIHNldHVwIGNvcnJlY3RseSB3aGVuIHhl
bnN0b3JlZA0KPj4gc3RhcnRzIGxvb2tpbmcgYXQgaXQgKGl0IGlzIGRvbTAgd2hpY2ggbmVl
ZHMgdG8gZG8gdGhlIHJpbmcgcGFnZSBpbml0KS4NCj4+DQo+PiBBIGRvbTBsZXNzIGRvbVUg
ZG9lc24ndCBoYXZlIHRoYXQgbmVnb3RpYXRpb24gd2l0aCB4ZW5zdG9yZWQsIGFzIHhlbnN0
b3JlZCBqdXN0DQo+PiB1c2VzIHRoZSBwcmUtZGVmaW5lZCBncmFudCBmb3IgbG9va2luZyBh
dCB0aGUgcmluZyBwYWdlLiBGb3IgdGhlIGRvbVUgdGhlcmUgaXMNCj4+IG5vIHdheSB0byB0
ZWxsIHRoYXQgeGVuc3RvcmVkIGhhcyBpbml0aWFsaXplZCB0aGUgcmluZyBwYWdlIChpdCBp
cyBub3QgdGhlIGRvbVUNCj4+IHRvIGRvIHRoZSBpbml0aWFsaXphdGlvbiwgYXMgdGhlIFhT
X0lOVFJPRFVDRSBtaWdodCBiZSBzZW50IGJlZm9yZSB0aGUgZG9tVQ0KPj4gZXZlbiBzdGFy
dHMgcnVubmluZyksIG90aGVyIHRoYW4gdGhlICJjb25uZWN0ZWQiIGluZGljYXRvciBpbiB0
aGUgcGFnZSBpdHNlbGYuDQo+IA0KPiBBbnkgdGhvdWdodHMgb24gbXkgcGF0Y2g/ICBGcm9t
IHlvdXIgZGVzY3JpcHRpb24sIGl0IHNvdW5kcyBsaWtlIG1heWJlDQo+IGl0IHNob3VsZCBi
ZSBpbiB0aGUgcmlnaHQgZGlyZWN0aW9uLCBhbHRob3VnaCBpdCdzIGN1cnJlbnRseSBtaXNz
aW5nDQo+IG1lbW9yeSBiYXJyaWVycy4NCg0KWWVzLCBJIHRoaW5rIHRoZSBwYXRjaCBpcyBi
YXNpY2FsbHkgb2theSAoYXBhcnQgZnJvbSB0aGUgYmFycmllcnMpLg0KDQoNCkp1ZXJnZW4N
Cg==
--------------Hg6NdtPtWjhpy2T7c2nM1kkK
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-----

--------------Hg6NdtPtWjhpy2T7c2nM1kkK--

--------------PnoUSbBXxcZloqNbafYyLs08--

--------------WXY1NZn9Kua920w2mQhPr4I0
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/Ey8FAmUpY4oFAwAAAAAACgkQsN6d1ii/Ey/H
+wf/Z3M+24vzwapCbmX0iEpD2O6XqYL0CL0B8Kp1GLziy8mQg7+kiSqz9j6eNzyWc9vIqEh/leiC
MuwYGfyzpR97c2edgntpdQbP4UlqBZ0C74mrWQd5QBDB3uwK3U9PMGdwnytm8kIs0D2TO2HpeO9e
0BG3e3E/wHkYjNdP6JU5QO3XhSjYjBONj/dOYDo+nUCaK4Mqzk5nCVJ/2qai1j3k3Bxurm8XMyk0
HeJl8D/jerDVmfeK98o9jY6bxzSuhDC95kqYfIfA6Idhes3t9HY0uhsWk4MnmRL1NsCA/4uafnLD
hDqT18UIL+RztK2wQ9grrTL5ay2h4EGlR0rbPNxxnw==
=1O3b
-----END PGP SIGNATURE-----

--------------WXY1NZn9Kua920w2mQhPr4I0--


From xen-devel-bounces@lists.xenproject.org Fri Oct 13 15:38:10 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 15:38:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616729.958950 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrKEr-00046l-O4; Fri, 13 Oct 2023 15:38:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616729.958950; Fri, 13 Oct 2023 15:38: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 1qrKEr-00046e-LU; Fri, 13 Oct 2023 15:38:09 +0000
Received: by outflank-mailman (input) for mailman id 616729;
 Fri, 13 Oct 2023 15:38: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=NVAw=F3=cloud.com=alejandro.vallejo@srs-se1.protection.inumbo.net>)
 id 1qrKEq-00046Y-7A
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 15:38:08 +0000
Received: from mail-ej1-x62d.google.com (mail-ej1-x62d.google.com
 [2a00:1450:4864:20::62d])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 80da596e-69de-11ee-9b0e-b553b5be7939;
 Fri, 13 Oct 2023 17:38:06 +0200 (CEST)
Received: by mail-ej1-x62d.google.com with SMTP id
 a640c23a62f3a-9be1ee3dc86so26665066b.1
 for <xen-devel@lists.xenproject.org>; Fri, 13 Oct 2023 08:38:06 -0700 (PDT)
Received: from EMEAENGAAD19049.citrite.net
 (default-46-102-197-194.interdsl.co.uk. [46.102.197.194])
 by smtp.gmail.com with ESMTPSA id
 i16-20020a1709064ed000b0099bd0b5a2bcsm12590567ejv.101.2023.10.13.08.38.04
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Fri, 13 Oct 2023 08:38: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: 80da596e-69de-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1697211485; x=1697816285; 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=FZOSbH45SFa5v8GWRuOB+LMDI36gFFgPgiVJLY+kGhw=;
        b=Fg1oPOzPPlFkNIaPNNpizXaIvDDrCpPRh/a5xfl681hqNIvEa4e8vXPNzioynKzrEq
         Sc2iFwDgaFjcfUCU+aSkZbXrnPg+WBJukd2MZqJ5d9XDiJ828+98T6S2cmkzpz3DG9a7
         8iQbKbaErcUbEGWKjLmYMoc3PVTqNP6c2PmaI=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697211485; x=1697816285;
        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=FZOSbH45SFa5v8GWRuOB+LMDI36gFFgPgiVJLY+kGhw=;
        b=AIsMJf1rQ+d4vBepzPXkd1AbFOiqKgtahdfjPvXD/Bx2m02p4jElTCQiOXwznQw4w8
         aQNSgdVzmKr+zNMd+LhLIzJZ7kO8S+GEfcR5V5QBgcoW4chm+ZKdtvy105ri7HZ30hAt
         1RX3dzr+ubjLNZYf3zU4ya5pPGFiEfaX/xLfAe+vg2HXizBohxF2b4u3MC4KAms49Qw0
         1QF4f4i8kYmMo8MDzccE8D/L2Ad38V1z7+cml2D+3M0IGcgYfaMeC315X3k0SyNAZGFA
         i3HHc29al9YlNH4ibbwl61u3P18rl5KHN2Il++ln/bjK+NiBcpxrPXb7k4ER3Vf1gKAR
         5ZAA==
X-Gm-Message-State: AOJu0Yyv6S/4NHskK0fNr2Od0J/b4PQM0+Xh3XPedOUdE4Ub9pnkRjjU
	ctn1ZLn7QKo0nv6k9SmhQ7JY+A7n5LwcbMAAx84=
X-Google-Smtp-Source: AGHT+IFkpAe5BIhbttrsNWhEYJhv0GuO1hTdXhYhYlouwv/cr65sHELIVqRoZQcfrJvcxw6HoH0t5w==
X-Received: by 2002:a17:906:7484:b0:9a2:185b:5375 with SMTP id e4-20020a170906748400b009a2185b5375mr24621690ejl.18.1697211485163;
        Fri, 13 Oct 2023 08:38:05 -0700 (PDT)
From: Alejandro Vallejo <alejandro.vallejo@cloud.com>
To: Xen-devel <xen-devel@lists.xenproject.org>
Cc: Alejandro Vallejo <alejandro.vallejo@cloud.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: [PATCH v3] x86/amd: Address AMD erratum #1485
Date: Fri, 13 Oct 2023 16:38:01 +0100
Message-Id: <20231013153801.188324-1-alejandro.vallejo@cloud.com>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Fix adapted off Linux's mailing list:
  https://lore.kernel.org/lkml/D99589F4-BC5D-430B-87B2-72C20370CF57@exactcode.com/T/#u

Signed-off-by: Alejandro Vallejo <alejandro.vallejo@cloud.com>
Release-acked-by: Henry Wang <Henry.Wang@arm.com>
---
v3:
  * Factored MSR shuffling into a separate function and moved the call to
    the end of init_amd() rather than having it in the middle
  * Style changes
  * Added comment about the unavoidable wrmsr race
  * Avoid wrmsrl() if the chickenbit already set
  * Removed the "ull" suffix as it's pointless with a local variable and it
    violates a MISRA 7.3.

Pipeline pending:
    https://gitlab.com/xen-project/people/agvallejo/xen/-/pipelines/1036125869
---
 xen/arch/x86/cpu/amd.c               | 23 +++++++++++++++++++++++
 xen/arch/x86/include/asm/amd.h       |  5 +++++
 xen/arch/x86/include/asm/msr-index.h |  1 +
 3 files changed, 29 insertions(+)

diff --git a/xen/arch/x86/cpu/amd.c b/xen/arch/x86/cpu/amd.c
index 4f27187f92..cb77c23f1a 100644
--- a/xen/arch/x86/cpu/amd.c
+++ b/xen/arch/x86/cpu/amd.c
@@ -1004,6 +1004,28 @@ static void cf_check zen2_disable_c6(void *arg)
 	wrmsrl(MSR_AMD_CSTATE_CFG, val & mask);
 }
 
+static void amd_check_erratum_1485(void)
+{
+	uint64_t val, chickenbit = (1 << 5);
+
+	if (cpu_has_hypervisor || boot_cpu_data.x86 != 0x19 || !is_zen4_uarch())
+		return;
+
+	rdmsrl(MSR_AMD64_BP_CFG, val);
+
+	if (val & chickenbit)
+		return;
+
+	/*
+	 * BP_CFG is a core-scoped MSR. There's a benign race on this write
+	 * on the case where 2 threads perform the previous check at the
+	 * same time before the chickenbit is set. It's benign because the
+	 * value being written is the same on both.
+	 */
+	wrmsrl(MSR_AMD64_BP_CFG, val | chickenbit);
+
+}
+
 static void cf_check init_amd(struct cpuinfo_x86 *c)
 {
 	u32 l, h;
@@ -1271,6 +1293,7 @@ static void cf_check init_amd(struct cpuinfo_x86 *c)
 		disable_c1_ramping();
 
 	amd_check_zenbleed();
+	amd_check_erratum_1485();
 
 	if (zen2_c6_disabled)
 		zen2_disable_c6(NULL);
diff --git a/xen/arch/x86/include/asm/amd.h b/xen/arch/x86/include/asm/amd.h
index d862cb7972..0700827561 100644
--- a/xen/arch/x86/include/asm/amd.h
+++ b/xen/arch/x86/include/asm/amd.h
@@ -145,11 +145,16 @@
  * Hygon (Fam18h) but without simple model number rules.  Instead, use STIBP
  * as a heuristic that distinguishes the two.
  *
+ * For Zen3 and Zen4 (Fam19h) the heuristic is the presence of AutoIBRS, as
+ * it's Zen4-specific.
+ *
  * 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)
+#define is_zen3_uarch() (!boot_cpu_has(X86_FEATURE_AUTO_IBRS))
+#define is_zen4_uarch()   boot_cpu_has(X86_FEATURE_AUTO_IBRS)
 
 struct cpuinfo_x86;
 int cpu_has_amd_erratum(const struct cpuinfo_x86 *, int, ...);
diff --git a/xen/arch/x86/include/asm/msr-index.h b/xen/arch/x86/include/asm/msr-index.h
index 11ffed543a..7b3490bfb1 100644
--- a/xen/arch/x86/include/asm/msr-index.h
+++ b/xen/arch/x86/include/asm/msr-index.h
@@ -403,6 +403,7 @@
 #define MSR_AMD64_DE_CFG		0xc0011029
 #define AMD64_DE_CFG_LFENCE_SERIALISE	(_AC(1, ULL) << 1)
 #define MSR_AMD64_EX_CFG		0xc001102c
+#define MSR_AMD64_BP_CFG		0xc001102e
 #define MSR_AMD64_DE_CFG2		0xc00110e3
 
 #define MSR_AMD64_DR0_ADDRESS_MASK	0xc0011027
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Fri Oct 13 15:56:18 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 15:56:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616743.958961 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrKWJ-0008O5-67; Fri, 13 Oct 2023 15:56:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616743.958961; Fri, 13 Oct 2023 15:56: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 1qrKWJ-0008Ny-37; Fri, 13 Oct 2023 15:56:11 +0000
Received: by outflank-mailman (input) for mailman id 616743;
 Fri, 13 Oct 2023 15:56: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 1qrKWH-0008Ns-JT
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 15:56: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 1qrKWE-0004vf-GK; Fri, 13 Oct 2023 15:56: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 1qrKWE-00064H-7r; Fri, 13 Oct 2023 15:56: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=GFWC1CR/QpRRePL+0y4n3jLIotx0DNsKOQyNvZClT9Q=; b=uUbFa4Vf+YXVLsZS4op/qamZW/
	A1hrnUvlOp8jD7KEtvPFVtHmef416ssNWpaFiGb4CusDVN4iay1wsEVbhbSWE65VqzZ0JCtfXyWd8
	wzUtJtktdr4xefrnl0S51+8hEGLuUHTMRvi3lZHZCULI90TlqJhb353M6nVDppf4pA8o=;
Message-ID: <a1c3de32-7fcb-4c3d-a95b-7aa58c493f52@xen.org>
Date: Fri, 13 Oct 2023 16:56:04 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: Xen 4.18 release: Reminder about code freeze
Content-Language: en-GB
To: George Dunlap <george.dunlap@cloud.com>
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 Andrew Cooper <andrew.cooper3@citrix.com>, Henry Wang <Henry.Wang@arm.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.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>
 <a31ce6cb-6234-5e7f-5cd4-ed190f029811@citrix.com>
 <alpine.DEB.2.22.394.2309271658500.1403502@ubuntu-linux-20-04-desktop>
 <CA+zSX=ZbeUFrfAUJShooJFJ+d89f4xdXfJJ9HoJKRh4UStkTFQ@mail.gmail.com>
 <alpine.DEB.2.22.394.2310121535580.3431292@ubuntu-linux-20-04-desktop>
 <CA+zSX=Y5dMVFM6dVNgBRHxKc0C1e5WGgweQ0FaXXCfAFGH1aPA@mail.gmail.com>
 <a93839b8-932a-4634-9549-081df950afb2@xen.org>
 <CA+zSX=a972GC=_FKK2eGkArPb6RszCHDN0+6JKFJiMjoMpAySQ@mail.gmail.com>
 <f973db5f-da72-4aa2-a35e-1e6652b181bf@xen.org>
 <CA+zSX=bpq6sJmP7TzC+3vgTJyZcCdZc5M-BGEaOkkXt7BoQZJg@mail.gmail.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <CA+zSX=bpq6sJmP7TzC+3vgTJyZcCdZc5M-BGEaOkkXt7BoQZJg@mail.gmail.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit



On 13/10/2023 14:30, George Dunlap wrote:
> On Fri, Oct 13, 2023 at 2:00 PM Julien Grall <julien@xen.org> wrote:
>>>>> If the problem is the delay between the xenevtchn_notify() in
>>>>> introduce_domain() and the domain_conn_reset() afterwards in
>>>>> do_domain(), would it make sense instead to move the notification into
>>>>> do_introduce(), after the domain_conn_reset()?  It is, after all, in
>>>>> response to XS_INTRODUCE that we want to send the notification, not in
>>>>> dom0_init() or read_state_connection() (which seems to be more about
>>>>> restoring a domain).
>>>>
>>>> I understand that the event channel notification was specifically added
>>>> for dom0less. But I don't see why we don't want to send it to dom0 as well.
>>>>
>>>> Technically, dom0 has exactly the same problem as dom0less domains it
>>>> boots before Xenstored is running and therefore it may need to know when
>>>> it is ready to receive commands.
>>>
>>> It seemed to work fine before 2022, when the notification was
>>> introduced.
>>
>> Indeed. But my point is that in theory the behavior between dom0 and
>> dom0less domain should not be different. With your proposal we would
>> continue to diverge with seems rather strange.
>>
>> Do you at least agree that on the paper, Xenstored should notify it is
>> ready to accept commands the same way for every domain?
> 
> I don't know enough about the start-of-day to know why dom0 did fine
> without a notification for nearly 20 years, but dom0less domUs don't.
> To answer your question I'd need the documentation that Andrew wants;
> or at least the answers to the two questions which you deferred to
> Juergen.  I assume that dom0 doesn't really need it, because it did
> fine without it; I assume that dom0less domUs do really need it,
> because otherwise people wouldn't have spent the effort to introduce
> it.
> 
>>> Personally I'd just take the patch as I wrote it, restoring dom0's
>>> pre-2022 behavior (after review and testing of course); but if you
>>> wanted to test & resubmit with a similar notification inside
>>> dom0_init(), I wouldn't object to it.
>>
>> Just to clarify, you suggest the revert because you are concerned that
>> it could break dom0. Is that correct?
> 
> I'm not sure why you're calling it a revert.  

Because we are going to remove a behavior that is present in at least a 
release. So...

> The initial patch that
> introduced it didn't mention wanting to include dom0 specifically; on
> the contrary it said:
> 
> "The extra notification is harmless for domains that don't require it."

... even if this is what the commit message says, we can't tell whether 
someone would start to rely on it. I definitely see use-cases for it.

But I agree that the chance they are actualy used is slim as we didn't 
document it.

> 
> My reasons for leaving dom0 notification out of my patch were:
> 
> 1. It's awkward to keep the dom0 notification without doing a lot of
> refactoring (which should be avoided at this point in the release) or
> making things kind of ugly and difficult to maintain (lots of specific
> if statements)
> 
> 2. Since dom0 did fine for 20 years without it, it seemed that it
> wasn't necessary
> 
> 3. Since nobody seems to actually know what's going on, there's a
> chance it's actually harmful (although that chance is relatively
> small, given the amount of time the extra notification has been in the
> tree).

Your reasoning makes sense. I don't fully agree with it, but at the end 
of the day we need to have a solution for dom0less guests... So if the 
others agree with you, then I will disagree and commit.

That said, I think the commit message should explain why removing dom0 
notification is ok.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Fri Oct 13 16:06:36 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 16:06:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616748.958971 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrKgC-0003Db-3u; Fri, 13 Oct 2023 16:06:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616748.958971; Fri, 13 Oct 2023 16:06: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 1qrKgC-0003DU-0F; Fri, 13 Oct 2023 16:06:24 +0000
Received: by outflank-mailman (input) for mailman id 616748;
 Fri, 13 Oct 2023 16:06: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=36VQ=F3=cloud.com=george.dunlap@srs-se1.protection.inumbo.net>)
 id 1qrKgA-0003DO-Qg
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 16:06:22 +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 73840420-69e2-11ee-98d4-6d05b1d4d9a1;
 Fri, 13 Oct 2023 18:06:21 +0200 (CEST)
Received: by mail-lj1-x22b.google.com with SMTP id
 38308e7fff4ca-2c4fe37f166so19095761fa.1
 for <xen-devel@lists.xenproject.org>; Fri, 13 Oct 2023 09:06: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: 73840420-69e2-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1697213181; x=1697817981; 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=LFJmM5LPfdrCIKWWItu79waf0ykdubt6FliyM+HtTYU=;
        b=b6LeimaNGBNp8ljILwHPsCCV/3Y+qVux+J4OEEuRtY5XcvykQmhx+fYg37XuS6HhW4
         EpDzeT4JnbpTMUuNTkjHvxnDPCzpKvsfU2dxyG44YXz9Y1QsEto13d9w7vJ51aPw5++G
         0n124hbvKEolOuAmIlPy1dUpc6Vua5j8Om5EY=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697213181; x=1697817981;
        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=LFJmM5LPfdrCIKWWItu79waf0ykdubt6FliyM+HtTYU=;
        b=lEpAnINky5IpqgHgMixL58mTj3SlS/TFmYOyQ/7+fIodQVop3HRkNVWpNv1SIopFhH
         KBEXX3ZF2WQ9Cn9Bx1YoQKRt6OcTuHfI/j0ichJjxkE1dXJ+hFxl6rVHocdyYdafTJty
         WScAshgvY7CNVuntbZtBbN1ADLq4Y03koQ7VhILURwG+MQN9ECCti+H9eYyy0x33j5fF
         GMAtQ57Esl5ZY6/tvZhq1fwRTALEwG0BXm4kK5MkAH7mrSKMN8aaGZ/r6R6DyMX/jose
         3LZPiK/Kv+7XV8csnZsFEjpp5fawK1rX/x2s4S9hutNiJQaZGlF6ihnmsHWEBDCfz/TZ
         GInQ==
X-Gm-Message-State: AOJu0YwOeGdleFlf1eueaXDaeq3Xri/Ms2rPuPUgNzJhrKIiux19uZkx
	GC+u+evNtPSzorl23Pkz8E84Bw4bMUdgzlzuoPNMgg==
X-Google-Smtp-Source: AGHT+IE7f3XF2YTL7EuTwVLwXJGeBLEa+MVPjNDo5/XvsS6e0z9TZeVjqHdelzxRnI5wU/hWH+Snu/qcfF1DDwscKVY=
X-Received: by 2002:a19:791b:0:b0:507:9ae3:6ba7 with SMTP id
 u27-20020a19791b000000b005079ae36ba7mr1552676lfc.67.1697213181246; Fri, 13
 Oct 2023 09:06:21 -0700 (PDT)
MIME-Version: 1.0
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> <alpine.DEB.2.22.394.2309271658500.1403502@ubuntu-linux-20-04-desktop>
 <CA+zSX=ZbeUFrfAUJShooJFJ+d89f4xdXfJJ9HoJKRh4UStkTFQ@mail.gmail.com>
 <alpine.DEB.2.22.394.2310121535580.3431292@ubuntu-linux-20-04-desktop>
 <CA+zSX=Y5dMVFM6dVNgBRHxKc0C1e5WGgweQ0FaXXCfAFGH1aPA@mail.gmail.com>
 <a93839b8-932a-4634-9549-081df950afb2@xen.org> <CA+zSX=a972GC=_FKK2eGkArPb6RszCHDN0+6JKFJiMjoMpAySQ@mail.gmail.com>
 <f973db5f-da72-4aa2-a35e-1e6652b181bf@xen.org> <CA+zSX=bpq6sJmP7TzC+3vgTJyZcCdZc5M-BGEaOkkXt7BoQZJg@mail.gmail.com>
 <a1c3de32-7fcb-4c3d-a95b-7aa58c493f52@xen.org>
In-Reply-To: <a1c3de32-7fcb-4c3d-a95b-7aa58c493f52@xen.org>
From: George Dunlap <george.dunlap@cloud.com>
Date: Fri, 13 Oct 2023 17:06:10 +0100
Message-ID: <CA+zSX=ad_g5CWkFjs0Cu1=HaTYTLmRpUE8gFVZ+4AJ3meG-0Yw@mail.gmail.com>
Subject: Re: Xen 4.18 release: Reminder about code freeze
To: Julien Grall <julien@xen.org>
Cc: Stefano Stabellini <sstabellini@kernel.org>, Andrew Cooper <andrew.cooper3@citrix.com>, 
	Henry Wang <Henry.Wang@arm.com>, 
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.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 Fri, Oct 13, 2023 at 4:56=E2=80=AFPM Julien Grall <julien@xen.org> wrote=
:
> > The initial patch that
> > introduced it didn't mention wanting to include dom0 specifically; on
> > the contrary it said:
> >
> > "The extra notification is harmless for domains that don't require it."
>
> ... even if this is what the commit message says, we can't tell whether
> someone would start to rely on it. I definitely see use-cases for it.
>
> But I agree that the chance they are actualy used is slim as we didn't
> document it.

If a dom0 kernel started relying on the behavior, it would be a bug,
since it would be incompatible with releases before 4.16.  So I think
the only risk here would be if some bit of a system's userspace
tooling relied on it; but I can't really see how that would come to
be.

If someone reports a bug, we can always add the reporting back, when
we're not under time pressure.

> Your reasoning makes sense. I don't fully agree with it, but at the end
> of the day we need to have a solution for dom0less guests... So if the
> others agree with you, then I will disagree and commit.
>
> That said, I think the commit message should explain why removing dom0
> notification is ok.

Yes, absolutely.

Do you or Stefano want to pick it up?  I think you'd be able to test
it more thoroughly.  I can build-test it and send it to gitlab-CI, but
anything more will take a lot more setup.

 -George


From xen-devel-bounces@lists.xenproject.org Fri Oct 13 16:11:08 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 16:11:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616753.958981 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrKkk-0004xd-L1; Fri, 13 Oct 2023 16:11:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616753.958981; Fri, 13 Oct 2023 16:11: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 1qrKkk-0004xW-IC; Fri, 13 Oct 2023 16:11:06 +0000
Received: by outflank-mailman (input) for mailman id 616753;
 Fri, 13 Oct 2023 16:11: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 1qrKki-0004xQ-Ig
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 16:11: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 1qrKkf-0005wm-5P; Fri, 13 Oct 2023 16:11:01 +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 1qrKke-0006tO-UY; Fri, 13 Oct 2023 16:11: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=dY5DhvVRevZpzmkzwrTSwO4AuDAe+Lb7jqCzTdnqOk0=; b=UzRVtH31wQvz3L8PQW9B/EteIb
	gBjDgR3T9qQEPq3kjt/rqMaxoRESVmPU8CZM7+4FRICTKxoDW1PiZF5BCPgy79wF2IaUUhIEAVJib
	v+MVcmCrDpRHYfO74S1TEM3cbDKGxZylSDLl+6YEq/siaaDcavjSWY7cf+dQgEyspmWY=;
Message-ID: <5af543d2-b18b-46c0-87ef-8af99dec81b3@xen.org>
Date: Fri, 13 Oct 2023 17:10:58 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: Xen 4.18 release: Reminder about code freeze
Content-Language: en-GB
To: George Dunlap <george.dunlap@cloud.com>
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 Andrew Cooper <andrew.cooper3@citrix.com>, Henry Wang <Henry.Wang@arm.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.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>
 <a31ce6cb-6234-5e7f-5cd4-ed190f029811@citrix.com>
 <alpine.DEB.2.22.394.2309271658500.1403502@ubuntu-linux-20-04-desktop>
 <CA+zSX=ZbeUFrfAUJShooJFJ+d89f4xdXfJJ9HoJKRh4UStkTFQ@mail.gmail.com>
 <alpine.DEB.2.22.394.2310121535580.3431292@ubuntu-linux-20-04-desktop>
 <CA+zSX=Y5dMVFM6dVNgBRHxKc0C1e5WGgweQ0FaXXCfAFGH1aPA@mail.gmail.com>
 <a93839b8-932a-4634-9549-081df950afb2@xen.org>
 <CA+zSX=a972GC=_FKK2eGkArPb6RszCHDN0+6JKFJiMjoMpAySQ@mail.gmail.com>
 <f973db5f-da72-4aa2-a35e-1e6652b181bf@xen.org>
 <CA+zSX=bpq6sJmP7TzC+3vgTJyZcCdZc5M-BGEaOkkXt7BoQZJg@mail.gmail.com>
 <a1c3de32-7fcb-4c3d-a95b-7aa58c493f52@xen.org>
 <CA+zSX=ad_g5CWkFjs0Cu1=HaTYTLmRpUE8gFVZ+4AJ3meG-0Yw@mail.gmail.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <CA+zSX=ad_g5CWkFjs0Cu1=HaTYTLmRpUE8gFVZ+4AJ3meG-0Yw@mail.gmail.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

Hi George,

On 13/10/2023 17:06, George Dunlap wrote:
> On Fri, Oct 13, 2023 at 4:56 PM Julien Grall <julien@xen.org> wrote:
>>> The initial patch that
>>> introduced it didn't mention wanting to include dom0 specifically; on
>>> the contrary it said:
>>>
>>> "The extra notification is harmless for domains that don't require it."
>>
>> ... even if this is what the commit message says, we can't tell whether
>> someone would start to rely on it. I definitely see use-cases for it.
>>
>> But I agree that the chance they are actualy used is slim as we didn't
>> document it.
> 
> If a dom0 kernel started relying on the behavior, it would be a bug,
> since it would be incompatible with releases before 4.16.  So I think
> the only risk here would be if some bit of a system's userspace
> tooling relied on it; but I can't really see how that would come to
> be.
> 
> If someone reports a bug, we can always add the reporting back, when
> we're not under time pressure.
> 
>> Your reasoning makes sense. I don't fully agree with it, but at the end
>> of the day we need to have a solution for dom0less guests... So if the
>> others agree with you, then I will disagree and commit.
>>
>> That said, I think the commit message should explain why removing dom0
>> notification is ok.
> 
> Yes, absolutely.
> 
> Do you or Stefano want to pick it up?  I think you'd be able to test
> it more thoroughly.  I can build-test it and send it to gitlab-CI, but
> anything more will take a lot more setup.

I just asked you a similar question on Matrix. :) Stefano was able to 
reproduce the issue. So it would probably be best for him to pick up at 
least the testing part.

Stefano, do you have some cycle to send the patch as well? If not, I can 
do it.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Fri Oct 13 16:17:21 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 16:17:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616758.958990 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrKqf-0007I7-B1; Fri, 13 Oct 2023 16:17:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616758.958990; Fri, 13 Oct 2023 16: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 1qrKqf-0007I0-8Q; Fri, 13 Oct 2023 16:17:13 +0000
Received: by outflank-mailman (input) for mailman id 616758;
 Fri, 13 Oct 2023 16:17: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=kNRH=F3=intel.com=michal.wilczynski@srs-se1.protection.inumbo.net>)
 id 1qrKqd-0007Ht-Qe
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 16:17:12 +0000
Received: from mgamail.intel.com (mgamail.intel.com [192.198.163.7])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id f39a1a8d-69e3-11ee-9b0e-b553b5be7939;
 Fri, 13 Oct 2023 18:17:08 +0200 (CEST)
Received: from fmsmga001.fm.intel.com ([10.253.24.23])
 by fmvoesa101.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 13 Oct 2023 09:14:07 -0700
Received: from orsmsx601.amr.corp.intel.com ([10.22.229.14])
 by fmsmga001.fm.intel.com with ESMTP/TLS/AES256-GCM-SHA384;
 13 Oct 2023 09:12:15 -0700
Received: from orsmsx610.amr.corp.intel.com (10.22.229.23) 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; Fri, 13 Oct 2023 09:14:04 -0700
Received: from orsmsx610.amr.corp.intel.com (10.22.229.23) 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; Fri, 13 Oct 2023 09:14:04 -0700
Received: from orsedg603.ED.cps.intel.com (10.7.248.4) 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; Fri, 13 Oct 2023 09:14:04 -0700
Received: from NAM11-CO1-obe.outbound.protection.outlook.com (104.47.56.169)
 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; Fri, 13 Oct 2023 09:14:04 -0700
Received: from CO6PR11MB5603.namprd11.prod.outlook.com (2603:10b6:5:35c::12)
 by IA1PR11MB7872.namprd11.prod.outlook.com (2603:10b6:208:3fe::6) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.45; Fri, 13 Oct
 2023 16:14:01 +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.6863.046; Fri, 13 Oct 2023
 16:14: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: f39a1a8d-69e3-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1697213828; x=1728749828;
  h=message-id:date:subject:to:cc:references:from:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=eDg7PjKFI6fYDzrW8fqpXVxhXzF/EZxDyNrQ8RX9D0s=;
  b=h1+EifurK6aJwG4q/obmLGo5Wrbi5yAghuMt5t5j6pdB/3qu3fwNGhnI
   UPK2ZvEY8XY9SUhop/V8zD+g5WEVLxhiLW/TUqfd09hvudFPd4+XPMneF
   sdgLbnps2zTFl8abvQ4OJeFxD7XhLkMoXZHhRTf+LzzHT9RJyvL5IB81Y
   SLaND31OGO8AidInYMa+Y3JZxzkvoxBhY/sMgA4ihbscrO7HhH8K+DJ72
   ihLiiKDsWq5GPau6Rtx5p0IvH3AwJawMDP/t7QnQyy4DAhTSiGKsgFinn
   H9cg9GWpu7tVmPvOTuV/MKWXzUEnuBMHVCXPXUyFXu2Hqp9uuBWITY0Yr
   g==;
X-IronPort-AV: E=McAfee;i="6600,9927,10862"; a="6774573"
X-IronPort-AV: E=Sophos;i="6.03,222,1694761200"; 
   d="scan'208";a="6774573"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10862"; a="898614032"
X-IronPort-AV: E=Sophos;i="6.03,222,1694761200"; 
   d="scan'208";a="898614032"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=PW/G21K3yVgpHL7XEWC0CS1n16U8mrmk7kVIOi7ZlRwmiAOHyxn3BvdAA33Kz7Adaj0PxgmFUB92DvpynaQHzWwN8+cmzqDXtGXl7R1Eh/l+E7CT+UCbg3yk7nRY+K11n7KoUIlxZmlbts/7KAPw0Irg7sk+9EmFfxgAM2GRupkTTWvWmETTmzxfJ0h+gmxNR0CKdRuxbZaowapqPePQ3GjqIKjLJqYV9mKCFP9Yk+x4Dx5x6C+E72d4CPx7COI1Q7/e1AzRPWT+rD/xp8wURO0bY5lWp880/mSNn6QOKwL2RscwNRUaMfrNCThMB9LCgWneYNJbwdUmvergJgzI6w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=OKGOPoYc+Vmy8Wkj5yd8LNwmF9fv8cA2cWQwjipk08w=;
 b=TEaZj87rNTeFotkgKzTXBhLP0SHJAERodph4IY+JclhUFnSptxp5IEamHVTvZxiLGCtxdhQl7RtJ+s7pIYGrLMRVsrTVZTAwdACLrRAqsFY/5NwmPqx2KIP44Ok1EIC2U1uDcdPx1AlVWNXBbzgTRuFT/Hs+mkLBWmTbbBTHg9pEZQvjr6Xw980p2qFRQ14Z/CUzXBRXh4OVr2FtvODr1HRMQig93Ebh7RcDp5FeXeYt1olC/l9AAOGdC3rFiyW2r9XZuPPqP0rAt32Kx9LJYbU64wFJUo/2cI2Id03dCLx9WN3X/vNntgdi7eRX7IZMhO56H6cST9n5O8cATCP4OA==
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: <9cda7031-286f-42e6-a23f-80c284931696@intel.com>
Date: Fri, 13 Oct 2023 18:13:54 +0200
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v3] acpi/processor: sanitize _OSC/_PDC capabilities for
 Xen dom0
Content-Language: en-US
To: Jason Andryuk <jandryuk@gmail.com>, Juergen Gross <jgross@suse.com>, Boris
 Ostrovsky <boris.ostrovsky@oracle.com>, Stefano Stabellini
	<sstabellini@kernel.org>, Oleksandr Tyshchenko
	<oleksandr_tyshchenko@epam.com>
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>,
	<linux-kernel@vger.kernel.org>, <xen-devel@lists.xenproject.org>
References: <20231010173924.44167-1-jandryuk@gmail.com>
From: "Wilczynski, Michal" <michal.wilczynski@intel.com>
In-Reply-To: <20231010173924.44167-1-jandryuk@gmail.com>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: WA1P291CA0019.POLP291.PROD.OUTLOOK.COM
 (2603:10a6:1d0:19::23) To CO6PR11MB5603.namprd11.prod.outlook.com
 (2603:10b6:5:35c::12)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: CO6PR11MB5603:EE_|IA1PR11MB7872:EE_
X-MS-Office365-Filtering-Correlation-Id: 3a531bb1-2e38-474d-ca29-08dbcc076977
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: 7cuAIBos4LcIYeG+2LjhWFo/t7JlNimMm5dfPZlkBgpumiZexwriVyiTyv63IBC+HvuM3d9Cf9Ky8QrUeDsvOkBEf9KVNMf/6vm6gfmYdztd/XkkvbEUrKZ7kXyFjuYnHLd98omXSosTuCb9sdZw7Lm2wsQWC1AAppVcKqzbF6QFaZr7e3xKGNXmbF6fcm02AgW43nffFnC7WwxDr9woTwyv8T7lNBtmwpp4YgJCSm9KM0iMPvFgV7MBMI5/6Vx/LPYonn7NFqWjMpiCSTxYoapY1bvRO8DOCpUzFLJQQcJ+c1czoE9+Er3SU/CMC4tBbJ6SJSjPmUcmxdjFbJ/AGxhvUX58QhLaQGr6yUyjx9UX4cv+HIi04BI822u3XR8uwQaOlwx2hEGJqrBt+HE1E3Mhl4PVcVEic/ofMKV/Ynrs0wE6jFWISuqZe9LEcPJUA2v2qBO/7stt7EyChmxpR4UiVd40zl0tnyNcsF5J7hfh9nQUESOjnc8UahW8ZgEp1L7neb6NeJX+RWlKQfHkfQqPGzsZ3uiQSAr5egLZd4PVcqa9r636ReuWhCBEX/2hdi2t+eUlsECELEbJFwR3b0EwLLA9szpk3IWr35pdZAuQftBKZKev7YYIEOsc34jNlDRgxi14UeM17SCtTsvojw==
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)(396003)(376002)(136003)(39860400002)(346002)(366004)(230922051799003)(1800799009)(64100799003)(186009)(451199024)(6512007)(38100700002)(26005)(2616005)(82960400001)(8936002)(478600001)(6486002)(5660300002)(4326008)(31696002)(7416002)(2906002)(8676002)(54906003)(316002)(110136005)(66476007)(66556008)(41300700001)(86362001)(66946007)(36756003)(6666004)(53546011)(6506007)(31686004)(83380400001)(43740500002)(45980500001);DIR:OUT;SFP:1102;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?SUpHREJDUGdtblgwMWFHVVQzOGY5TmJVcUlQYUNsSHRFamJ4eVdyQXNxN3Yv?=
 =?utf-8?B?WlNBanZNWkUwdHVXZ3E0anBYUlNXbU52Y2orSWhpc29YSWgyb2s4aXc4b3Av?=
 =?utf-8?B?OG5QbmZhMWNEU21SU2pkMm91QmVlYnFVc24zVGtQdHpZZElTOEhkR3pKcEtM?=
 =?utf-8?B?Vkp0WUtRMXd0VmRYOTBSaGRnVGJ4RE9qZFEvNFpXeVdiSmJEZGRrdUJ4bmh5?=
 =?utf-8?B?VmVmcW9EZnp6Sm9uZEF6MVRTcGtyQmgyaUNXbkZyWDUxK1p2MWNzMWlldEsw?=
 =?utf-8?B?Uk9KVmpEaE9HM1ZXVm93UCtXeHVTc1UvdjhJMEx5RWZCMU55N1NyeWdOdlUy?=
 =?utf-8?B?Zytlck9ZbGdnU2VRV0N1UUpZSjFEZWg1OXhzZUN3YkV0MHo0cTFGRFU5SUlH?=
 =?utf-8?B?YlNBVXlTVFdpQ0JrZEZHNlYyakdvUy9lcjBtR3lXUWg2RkZhRU10bTlDTkN1?=
 =?utf-8?B?TDF0ekpLdkhTY29nMlNUWGNPbmEyTjNEV25RNTg2enMvdVRqNmZOVGpwMEd2?=
 =?utf-8?B?THlVSWZDKzhRenR3YVg3RjI2NUN3UDFIcTdZQmFzVDBNZkhjYkgzSkljNUQ2?=
 =?utf-8?B?SFdOd052V3ZoNUNCeiswbklsQU1BaDhpSkxPYkZSZ3h4ZTV6c2paeHArODJ3?=
 =?utf-8?B?Ri9PSGxvMWxFZnRETHVYS1JrZ0xGWEpINExtM0F2TVVuSmtIVUlweUJLSFA5?=
 =?utf-8?B?cmRxczlndTZzVkdSeVpvMHpOSWZNSjZ6VnNNZWxHeHMvN2hDUUVrV0cyRTVK?=
 =?utf-8?B?dmZmdFU0Z1JaNndaMnQwK3FBU1JUS2daeU5kTjVHVWxFeElhUENWT2xLRTVR?=
 =?utf-8?B?UlorZW9qWDJKVms5M1BMQVdXRVl3Q0x4U0ozcUJSSzR3M3lzUzgrTHMyOTZx?=
 =?utf-8?B?Yis4L05nZGR2SC8xdWtMTlhHNUM1NzZjaHFTeFVuM1hsN1ZnZDNvVE5Rald0?=
 =?utf-8?B?TEYyQXpLMXpPMFBaVTA5RnU5Zk8ydUd6bU4rVENMdHdqTkRpMVFoWFVZNG5R?=
 =?utf-8?B?cG4xWHNrcFJLejdmWEtJQWpjRXdTQ1NocFpxZlJ5K0RnWDVDcUw1T0VpZkFq?=
 =?utf-8?B?a0VnNlNMQitjOEllMTh1MjQ0SjRNV29KUkdPZ21KNWJDYURHSE1NUXo1R1Rp?=
 =?utf-8?B?MnY0VDhldkZldGRwLyt6SmR3OWhaNFdiQ01PVFdrQWdXQXgwQk5MRzQxMjlt?=
 =?utf-8?B?Q3U2N0pXRC9ndVVrR1hDdFdwSWpYZ2ljaDFhOVVCWVdQaFFqckZhK2JuSmZz?=
 =?utf-8?B?LzNtczJodGdpeDZxNEthblRYbWtkUGlaWHB5S2twUDM3OWhiYk5UYVgyeWgz?=
 =?utf-8?B?RHVIT2dUbEpvM045eVFkYndSb3kzVlkyVENSSjNNRVJEajdlYWtURXJvdkM1?=
 =?utf-8?B?ZitXdFRjMDY1Wmh3ZTR2ejFYSE5VRGNNMExCamN4Z1FvdFM2Z2xHc3hKZWNS?=
 =?utf-8?B?QkFudFpHaVpCZEsrR1BGeFhrL2MwVGxzTnhld2ZFVXg3aytHcnBSMzBOUzR6?=
 =?utf-8?B?bmlRZk4vNTVrMlRLQm52YWw0ejRKVnhKbEhKYnZhN2hDWnUvYk9pNDZyV0Fr?=
 =?utf-8?B?ak16U2l0QW5kWi9rWHFpa1NEcDRlS0hVd1RHcXpWUlhndk1DUVN1OFp4aVFV?=
 =?utf-8?B?amMwZlpFKzhmMFFYQTE4Vm1wM24xTTd2WlM1a3hlcjNua21BU25ZT1Q1UGg1?=
 =?utf-8?B?NXlqaU0zdm1QdG9PYjl0bldYZ2NvSkNoS3FoWmthMEZvQVdDWnIxL2FQaGJ1?=
 =?utf-8?B?RGRFNy9hS2JYK0wrNHVuN1ZBemlaUEo3bEFDUTNud0JwYnBXZjZnNEVhOU91?=
 =?utf-8?B?MnU2cU5tTHBGdjlSTms2MFo4TDBraFBnVmEyZDBwWTlTbzg2RFNVWG1VNUFN?=
 =?utf-8?B?RXJ3TDdYRUlsWVVPVC9laWJpMkMzVHJPTjdWd3c1N2hIM2dOQkdOSkhVRXln?=
 =?utf-8?B?b1drOU03MncyaC92VDN1Q3ZZdlVBWHlXTWdKYjZjYzhxRzJQdktBY3IrUXdy?=
 =?utf-8?B?T1V1TCtJMkxSVjJBQmJvKzBnTDBjNUxPSnJSdWJvRW03aWUrb0I2UHVOYnQr?=
 =?utf-8?B?OWtjUGlPYTNYR2ExSzVNdXFQb3I4eDZsRytvK2I1KzI1dGYxYjNKZEE3THUy?=
 =?utf-8?B?N2YwcGd3TDZ1TUxtL3FsRTJpVXU4c2E0Wi9rcE9rMVoxV0ZNNTFCekZrZkNL?=
 =?utf-8?B?TFE9PQ==?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 3a531bb1-2e38-474d-ca29-08dbcc076977
X-MS-Exchange-CrossTenant-AuthSource: CO6PR11MB5603.namprd11.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Oct 2023 16:14:01.2261
 (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: qKmDVwlUXTn1vSLinVxWWT6EnVlWXsy5SdHtpuPu1fdF1ktYHE3l8Nf0GDCPBLBFDjoQVcKzmcE1qXTFhc81DyXntG3hBdm9DMD+kvkV0cw=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA1PR11MB7872
X-OriginatorOrg: intel.com

Hi,

On 10/10/2023 7:39 PM, Jason Andryuk wrote:
> From: Roger Pau Monne <roger.pau@citrix.com>
>
> The Processor capability 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, the hypervisor is the entity
> in charge of processor power management, and hence Xen needs to make
> sure the capabilities reported by _OSC/_PDC 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
> ACPI_PROC_CAP_COLLAB_PROC_PERF (bit 12) in the capability bits and the
> _OSC/_PDC call will apply it.
>
> [ jandryuk: Mention Xen HWP's need.  Support _OSC & _PDC ]
> Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
> Cc: stable@vger.kernel.org
> Signed-off-by: Jason Andryuk <jandryuk@gmail.com>
> ---
> v3:
> Move xen_sanitize_pdc() call to arch_acpi_set_proc_cap_bits() to cover
> _OSC and _PDC.
> drivers/xen/pcpu.c is CONFIG_DOM0 && CONFIG_X86
>
> v2:
> Move local variables in acpi_processor_eval_pdc() to reuse in both conditions.
> ---
>  arch/x86/include/asm/acpi.h           | 13 +++++++++++++
>  arch/x86/include/asm/xen/hypervisor.h |  9 +++++++++
>  drivers/xen/pcpu.c                    | 21 +++++++++++++++++++++
>  3 files changed, 43 insertions(+)
>
> diff --git a/arch/x86/include/asm/acpi.h b/arch/x86/include/asm/acpi.h
> index c8a7fc23f63c..cc8d1669d6e8 100644
> --- a/arch/x86/include/asm/acpi.h
> +++ b/arch/x86/include/asm/acpi.h
> @@ -16,6 +16,9 @@
>  #include <asm/x86_init.h>
>  #include <asm/cpufeature.h>
>  #include <asm/irq_vectors.h>
> +#include <asm/xen/hypervisor.h>
> +
> +#include <xen/xen.h>
>  
>  #ifdef CONFIG_ACPI_APEI
>  # include <asm/pgtable_types.h>
> @@ -127,6 +130,16 @@ static inline void arch_acpi_set_proc_cap_bits(u32 *cap)
>  	if (!cpu_has(c, X86_FEATURE_MWAIT) ||
>  	    boot_option_idle_override == IDLE_NOMWAIT)
>  		*cap &= ~(ACPI_PROC_CAP_C_C1_FFH | ACPI_PROC_CAP_C_C2C3_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

I would argue the phrasing here is unfortunate - it's not really _PDC buffer anymore,
it's more processor capabilities buffer [1]. Your phrasing would indicate that this
buffer is somehow _PDC specific.

BTW this file is x86 specific code - are you sure it's appropriate to involve Xen
hypervisor here ? I understand this case if x86 specific, but still.

> +		 * buffer matches what the hypervisor driver supports.
> +		 */
> +		xen_sanitize_pdc(cap);

Same here as in [1], I would call this function xen_sanitize_proc_cap_buffer(),
or something along those lines for better readability and correctness.

> +	}
>  }
>  
>  static inline bool acpi_has_cpu_in_madt(void)
> diff --git a/arch/x86/include/asm/xen/hypervisor.h b/arch/x86/include/asm/xen/hypervisor.h
> index 7048dfacc04b..c6c2f174fa30 100644
> --- a/arch/x86/include/asm/xen/hypervisor.h
> +++ b/arch/x86/include/asm/xen/hypervisor.h
> @@ -100,4 +100,13 @@ static inline void leave_lazy(enum xen_lazy_mode mode)
>  
>  enum xen_lazy_mode xen_get_lazy_mode(void);
>  
> +#if defined(CONFIG_XEN_DOM0) && defined(CONFIG_ACPI)
> +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/drivers/xen/pcpu.c b/drivers/xen/pcpu.c
> index b3e3d1bb37f3..859bb6027105 100644
> --- a/drivers/xen/pcpu.c
> +++ b/drivers/xen/pcpu.c
> @@ -47,6 +47,9 @@
>  #include <asm/xen/hypervisor.h>
>  #include <asm/xen/hypercall.h>
>  
> +#ifdef CONFIG_ACPI
> +#include <acpi/processor.h>
> +#endif
>  
>  /*
>   * @cpu_id: Xen physical cpu logic number
> @@ -400,4 +403,22 @@ bool __init xen_processor_present(uint32_t acpi_id)
>  
>  	return online;
>  }
> +
> +void xen_sanitize_pdc(uint32_t *cap)
> +{
> +	struct xen_platform_op op = {
> +		.cmd			= XENPF_set_processor_pminfo,
> +		.u.set_pminfo.id	= -1,
> +		.u.set_pminfo.type	= XEN_PM_PDC,

It would probably be best to rename this constant as well so it's
not misleading.

> +	};
> +	u32 buf[3] = { ACPI_PDC_REVISION_ID, 1, *cap };
> +	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);

Shouldn't an error be pr_err ?

> +	*cap = buf[2];
> +}
>  #endif


Regards,
Michał



From xen-devel-bounces@lists.xenproject.org Fri Oct 13 16:47:08 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 16:47:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616765.959001 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrLJQ-0006BM-Ps; Fri, 13 Oct 2023 16:46:56 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616765.959001; Fri, 13 Oct 2023 16:46: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 1qrLJQ-0006BF-MH; Fri, 13 Oct 2023 16:46:56 +0000
Received: by outflank-mailman (input) for mailman id 616765;
 Fri, 13 Oct 2023 16:46:55 +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 1qrLJP-0006B9-29
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 16:46: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 1qrLJO-0006pP-PC; Fri, 13 Oct 2023 16:46:54 +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 1qrLJO-0008Pq-H8; Fri, 13 Oct 2023 16:46: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=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=yak/Hpy6h6uBo/9vUTByRPjMX+3lcjU3Dft77RIfrRg=; b=2PcUrCTN9XIO8E/giqxFTHYdQQ
	Aoic5lq7UXkMUV5l6ytNQlMcFuHilEIlWPuXqdWkpQtvT6El6poucMJxgpMnGL8/K3ARoCpM1FIBj
	MwyLk5CzX9I9aueG0Sh7pdFW+6jZ49qmk0IBRKhmb/DGbF6724WcXbROzPkdQQQanFnA=;
Message-ID: <9f79eb03-cd1f-4d4b-84c4-302e1ba9f8f8@xen.org>
Date: Fri, 13 Oct 2023 17:46:52 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v10 15/17] xen/arm: account IO handlers for emulated PCI
 MSI-X
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>,
 Oleksandr Andrushchenko <Oleksandr_Andrushchenko@epam.com>,
 Bertrand Marquis <bertrand.marquis@arm.com>, Julien Grall
 <jgrall@amazon.com>, Stefano Stabellini <sstabellini@kernel.org>
References: <20231012220854.2736994-1-volodymyr_babchuk@epam.com>
 <20231012220854.2736994-16-volodymyr_babchuk@epam.com>
 <8f70079a-ab08-4b41-8aab-834958ae93eb@xen.org> <874jiuacyy.fsf@epam.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <874jiuacyy.fsf@epam.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi,

On 13/10/2023 14:06, Volodymyr Babchuk wrote:
> 
> Hi Julien,
> 
> Julien Grall <julien@xen.org> writes:
> 
>> Hi Volodymyr,
>>
>> On 12/10/2023 23:09, Volodymyr Babchuk wrote:
>>> From: Oleksandr Andrushchenko <oleksandr_andrushchenko@epam.com>
>>> At the moment, we always allocate an extra 16 slots for IO handlers
>>> (see MAX_IO_HANDLER). So while adding IO trap handlers for the emulated
>>> MSI-X registers we need to explicitly tell that we have additional IO
>>> handlers, so those are accounted.
>>> Signed-off-by: Oleksandr Andrushchenko
>>> <oleksandr_andrushchenko@epam.com>
>>
>> Some process remark. All the patches you send (even if they are
>> unmodified) should also contain your signed-off-by. This is to comply
>> with point (b) in the DCO certificate:
> 
> Oh, sorry. I assumed that it is enough to have signed-off-by tag of the
> original author. I'll add my tags in the next version.

Thanks!

> 
>> https://urldefense.com/v3/__https://cert-manager.io/docs/contributing/sign-off/__;!!GF_29dbcQIUBPA!0mzdEfHOZMm2OmzFc6TZukGgMYRHxDWLdEQvbhUlDmOg3tZNeDbWb8vHz38zLzcYv8GUZeHLn-5sWTYCkvkb$ [cert-manager[.]io]
>>
>> Please check the other patches in this series.
>>
>>> Acked-by: Julien Grall <jgrall@amazon.com>
>>
>> Is this patch depends on the rest of the series? If not we can merge
>> it in the for-4.19 branch Stefano created. This will reduce the number
>> of patches you need to resend.
> 
> It uses VPCI_MAX_VIRT_DEV constant which was introduced in ("vpci: add
> initial support for virtual PCI bus topology").

Ok. I will wait before committing. Please let me know if there are any 
Arm patches that can be already committed (or could potentially be 
reviewed independently).

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Fri Oct 13 17:16:18 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 17:16:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616770.959010 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrLlc-0004Ja-05; Fri, 13 Oct 2023 17:16:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616770.959010; Fri, 13 Oct 2023 17: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 1qrLlb-0004JT-Tf; Fri, 13 Oct 2023 17:16:03 +0000
Received: by outflank-mailman (input) for mailman id 616770;
 Fri, 13 Oct 2023 17: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 1qrLla-0004JN-IX
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 17: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 1qrLla-0007aQ-9d; Fri, 13 Oct 2023 17:16:02 +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 1qrLla-0006Us-3j; Fri, 13 Oct 2023 17:16: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=eZg3bM1qV5BLRih7ZtZMbaLokgoq4cJiSXGM6vJeY5g=; b=px0lvh/XPzh1UKZx7LQ6qjq4FY
	dqDQhdKqWRtvTn+AZpEHXanfeKsSCLQW2C784+3IZRivvjFK/COzy+uIq9J439BhDk3ecE4DaeelW
	BboCKx0EKSqvxtPCTfJoTM5gzbmcKmcXIk5vxyJ+VwUvjmv+eacxG4tmsLwaPrVYdSfc=;
Message-ID: <48223382-531f-4638-870c-fdcc58bb0e97@xen.org>
Date: Fri, 13 Oct 2023 18:16:00 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v7 2/8] 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: <20231009010313.3668423-1-Henry.Wang@arm.com>
 <20231009010313.3668423-3-Henry.Wang@arm.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <20231009010313.3668423-3-Henry.Wang@arm.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi Henry,

On 09/10/2023 02:03, Henry Wang wrote:
> +#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 = virt_to_maddr((uintptr_t) xen_pgtable);

The cast should be necessary. With this dropped:

Reviewed-by: Julien Grall <jgrall@amazon.com>

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Fri Oct 13 17:18:17 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 17:18:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616773.959020 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrLnk-0004rh-B2; Fri, 13 Oct 2023 17:18:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616773.959020; Fri, 13 Oct 2023 17:18: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 1qrLnk-0004ra-8J; Fri, 13 Oct 2023 17:18:16 +0000
Received: by outflank-mailman (input) for mailman id 616773;
 Fri, 13 Oct 2023 17:18: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=3A4Z=F3=epam.com=prvs=465081a231=volodymyr_babchuk@srs-se1.protection.inumbo.net>)
 id 1qrLni-0004rQ-45
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 17:18:14 +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 7bf5b4c7-69ec-11ee-9b0e-b553b5be7939;
 Fri, 13 Oct 2023 19:18:11 +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
 39DF2xYs027596; Fri, 13 Oct 2023 17:18:03 GMT
Received: from eur05-am6-obe.outbound.protection.outlook.com
 (mail-am6eur05lp2104.outbound.protection.outlook.com [104.47.18.104])
 by mx0b-0039f301.pphosted.com (PPS) with ESMTPS id 3tpt0b2uqg-1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT);
 Fri, 13 Oct 2023 17:17:46 +0000
Received: from VI1PR03MB3710.eurprd03.prod.outlook.com (2603:10a6:803:31::18)
 by AM9PR03MB7710.eurprd03.prod.outlook.com (2603:10a6:20b:41f::22)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.46; Fri, 13 Oct
 2023 17:17:42 +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.6863.043; Fri, 13 Oct 2023
 17:17: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: 7bf5b4c7-69ec-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=YGzCFvEH4x72DjlnxHhJpiQMFhSy7vufkxIcUDuhbnBoNvfhQq+N0aM+QhX9eY79DJDHYIpCBwUA/XNZaT1Q79FLji7BSbxgnDs+O7p5LqayhUfSuGUR9tp3eImE8VHw4dRhlZgIHMRjpTSww6LNwOo+LKfV+oR2sSAOPyTgwGPwC0Ybhd9IVn38uaPfHVp5r10zOeXHoSuOuEVVIEKwMAAVhUD9lQpdVAzkuki01JWJrb4c20/nM9BrxDDupKCGyGByEKHTfG8Turbgf8tmZVjpscVro4ZgSYNLr2LtT1MH8fZlx9M1z0n4hI1WI7ZLIBffBYi07Fc1SaQ85tmqcw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=DeuGO7xiNgdUKfWpjSn0Ko+/HVknrXULioq7CxC+PWE=;
 b=it4EdzvHrHLpw8ocotNuHYiQuPMBLtIQaGfLHQ7FkIcB/TzZjld+6XYrVyAVqMDHpy7VldonSgbIRuAvvS4LEWzjaAcr3g8e0ivZjQ6vIc3QUC5d0vlF+jHX+ALuKlEY9ETXpuSOxb64sJTvajNzaAzpzJOG/HgzvGLZ7oRA+kub7NTDxhJ9mjXJP0LUjXUlh56ZuAAapxUWV0isVOUe7MQ1xMrmtKLmamj+Y7RngISbv2auRNLc0v8TeqZaUk3f4T2iS2TkB1zVukMuY2UYvHuQepnGH2gFE8PtLyrVu4BN1ZJ0VpzYObBsIuZqez1r47yADyFX6m+MwOcpE8oejg==
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=DeuGO7xiNgdUKfWpjSn0Ko+/HVknrXULioq7CxC+PWE=;
 b=MRUcPZWwXohJdw9hKMbqhV+DTKaCkrZpeLFOuaXrIn/Qky/ZrZxqqt7I4xKBZl58f90Xsmn65R6zZ+8hGAgjB1KhpNAuKx0JTyFcKm1Z5aPCYbH/hOfjt6y18OfHAmi+a175RolrZV47aVufAIqErXbewjmu6VNiFysyTSNpK6PyRD6Hievv9auChKvkVeKjZFzKWa5d0Cn4wX234qP/sZNec/8rZ2gpWOz2zKMkKFRRX+sc9W6Ozje2TTmbuReG4e6EWRBN04hWo2avoo+5Et1vxfMpxY2v/l9j9OxSOirLS4g4S0KTW9ePw1w0mXXK0Ms4nZTH+OzpaBHaGkUyVQ==
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>,
        Oleksandr Andrushchenko
	<Oleksandr_Andrushchenko@epam.com>,
        Bertrand Marquis
	<bertrand.marquis@arm.com>,
        Julien Grall <jgrall@amazon.com>,
        Stefano
 Stabellini <sstabellini@kernel.org>
Subject: Re: [PATCH v10 15/17] xen/arm: account IO handlers for emulated PCI
 MSI-X
Thread-Topic: [PATCH v10 15/17] xen/arm: account IO handlers for emulated PCI
 MSI-X
Thread-Index: AQHZ/Vi/WuE7cEBbNE2PUEpOXmVwbLBHZXWAgABKrACAAD7pAIAAB/qA
Date: Fri, 13 Oct 2023 17:17:42 +0000
Message-ID: <87ttqu8mru.fsf@epam.com>
References: <20231012220854.2736994-1-volodymyr_babchuk@epam.com>
 <20231012220854.2736994-16-volodymyr_babchuk@epam.com>
 <8f70079a-ab08-4b41-8aab-834958ae93eb@xen.org> <874jiuacyy.fsf@epam.com>
 <9f79eb03-cd1f-4d4b-84c4-302e1ba9f8f8@xen.org>
In-Reply-To: <9f79eb03-cd1f-4d4b-84c4-302e1ba9f8f8@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_|AM9PR03MB7710:EE_
x-ms-office365-filtering-correlation-id: 34349430-845b-482e-794d-08dbcc104f41
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: 
 L3r6RK+jH2P86nT+9Q4AHN3zb2KdK2sL5pE1S76BuOYxkqNUhfKIMyKpU7W/xjrRuP+ZbTF0oUtKsb+s86dtT33P9WNiN+zk75cYsDTeRePzKqC6it7YFAI6eYzEBSjINNBX1KPLYIhMdJyZNZYu/qtIOClLFXbV1fQnTA+qbGWu+QW9bpftQRaX9CGqB5n0knWsS6W5+yUaRInDEnNxllLIN42p284YEjxmApYc6MMz3ARCAWzhkxXW4ncb4J9W/p/Z1EuFDUBoDlrLyqTuFTPm7Uxh2QJPuRTdUsAPy5MHO61YZ8iAy1McE/mLoo7oP5UWOmieePKWdTTphvYxfao8eBXGFFnIE1+TZ3DQ7vb5sVRMhK/k0oPSVA5Q8/lFdSKsn+JfP2CGJ7gciLXTAvh1WjzMFW3YbXVOcQ6sTKiF0iSTOg3NpeaP8FGgCk6QIuabtYldYBDPa1rNQ7qj4NzWHvUuhwDF+obM1BD5wvcX8ZdwhxqwlyHwz73zZmLzpGgeVImObevvNuAdsGsYEakguzUGOmuGjnEMn2QI2k7XJJQgCeLDUMeAHqu1DmNqe3NJrZFudCwtdJtD5TopaKV5Bs1NAzE2ZAYylItaj/E=
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)(136003)(39860400002)(366004)(346002)(396003)(230922051799003)(186009)(64100799003)(451199024)(1800799009)(41300700001)(4326008)(5660300002)(316002)(6916009)(54906003)(66446008)(66476007)(64756008)(91956017)(66556008)(8676002)(66946007)(76116006)(8936002)(966005)(6486002)(478600001)(2906002)(2616005)(71200400001)(26005)(53546011)(55236004)(6512007)(6506007)(15650500001)(83380400001)(38100700002)(122000001)(38070700005)(36756003)(86362001);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: 
 =?iso-8859-1?Q?pQvdOLK0wyXlvN7gsUw+xWazMD8/tf96OA1emruhhvaXCzund14FMVuOuL?=
 =?iso-8859-1?Q?1uwU6jvTdbbLKOEUY2TZWokI1kMYXUuYmaUetDgwZonjj2MyvZ6HD4rqO1?=
 =?iso-8859-1?Q?fsUeYGxR/WlWKmSRcsiiA0GZg8B+IiMoyPwVi8ZV+QZJCVrXfwS62koAiA?=
 =?iso-8859-1?Q?VyVG21UxNYKdkS7JFnmg11TiJFMQlRUvDYZwOwr5BtTWxV3YGvO3moVNFF?=
 =?iso-8859-1?Q?UOF98pFPLe+LviiU0Ecns7LaF32+OoSZuMsOmit7xhvian6DzRRWePm4tV?=
 =?iso-8859-1?Q?+3Yk6UpP9bBx5fcxfBITg/I0j9oiJGCjKej7Ug86GotCEOm1CsPOlVRH50?=
 =?iso-8859-1?Q?JGDzGjYFTUt+R+3wYyS/eHHrYyii/jXYL+r5mIWtu9owZcolQCrSJeuVD2?=
 =?iso-8859-1?Q?BR+Sm3Mu53btReD93btPLzR26aZpSHgdK1rrHUVWLTQSh1kLmiSzYTYGxC?=
 =?iso-8859-1?Q?1/110+9ZfKvosVPz/sC4OH9sHZ75FqoXEFSSZnsp/HrlsFsPfSJwIZDsMo?=
 =?iso-8859-1?Q?Y4y3WIOv2K0i51tYVQaaX1/aHnJocD9e78dDDi3bileayrJ3suGaXHcW8g?=
 =?iso-8859-1?Q?kwpEyav47bfozajVV3OFkVN34gzk66OmqJwYeIEh/JvG8D79XYMqpY1ElY?=
 =?iso-8859-1?Q?W1gIS9zqGpCY+cjMVOXg/bx11d5PGkXFJ+GtfIO6H4lv5T8WJ8Fr5tg6zN?=
 =?iso-8859-1?Q?gs0W9CWZBZ25jQlNqEVCzkJUtsC1UhcVAI1BfHG4aVUR5+k/knDOm6f3CY?=
 =?iso-8859-1?Q?4m6ExTEzIANMaoDZZdD6GiiKq3AL0+8adl8xhzmVPGHBdbOFy1Qym/OA6x?=
 =?iso-8859-1?Q?yeDLrW5wy3yws17h/0T794fGlQmhDH5ltug1+acQlvY9lL7FUD76da+xjv?=
 =?iso-8859-1?Q?uDP5PZ6bFSwMZQuW5Wn3EFIdGgvU/KO1Z8p+JtAlh1atLVYoIooUNd9zkg?=
 =?iso-8859-1?Q?DyITukMWwq0HGEzeRi5aeFd/WR/7l03B1pnEle9Qw+C+pilQFPmvXMBFm6?=
 =?iso-8859-1?Q?vEwAbem/fJIFp7bR955/t8qPf9ECKEKB3LR46tDh5wGqM8q45UmH0+84+s?=
 =?iso-8859-1?Q?q9gaKguMTjxySnrnGSuuZscW8Ghj5YGHJ3VgP8aaDVxywgoTGRekGiA8N4?=
 =?iso-8859-1?Q?vJSuPCPgin9iQACWD4wDSINcc231oO8eBm7iGDDBgpHUyoL7NHp2PrXMF9?=
 =?iso-8859-1?Q?Gfg6aifUqyPWh+E+rH9lP17iEG27NOJvGR8DQzAnw40LfQ1uy1BwvARutr?=
 =?iso-8859-1?Q?77q9WCXgzbptRK/ibtt6yUZtsD81WXe5GoDEMHBTuJltyDQQlHCOQwa0t1?=
 =?iso-8859-1?Q?m7VYVX9XTWW5XFO/2oobe8lNfVnbVzGd+DYqp2QPe47aPXmJC/o/srOhGT?=
 =?iso-8859-1?Q?tUyCFmC5E62jMuxz244VrOEFD/nRL8j21pOpPi0cLyvXuCe61OPAJ5ANNL?=
 =?iso-8859-1?Q?WGb00VAkoXuPaPNKXvXvOAxmqvdOa2hxqDUB1IRCtMqT/d/gHKEYQKxnp0?=
 =?iso-8859-1?Q?V807/mfpcgHWqqIS3LlDNeoS+4Qlgsu4AuQaOqCja90WwUj6f0RqHgke2b?=
 =?iso-8859-1?Q?bR7kOJ8BZE34lzzlU1fKMNUXgZwAukkmmvV6jY4wa9Mp6UAzEu5jNA2UwD?=
 =?iso-8859-1?Q?HMlVTIrLUuEkqU89YDFhwJAYcdmvUjuk8tmPybpcjAupkLDu0WczASSQ?=
 =?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: 34349430-845b-482e-794d-08dbcc104f41
X-MS-Exchange-CrossTenant-originalarrivaltime: 13 Oct 2023 17:17:42.4078
 (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: iyZdoTv2hLLFtqXNwCTFiMZFegRkcKs6JhxsmOPWWciComq1klRWFfRK0J58RhDdig0uii7rO3uUO8G+SazD7MEqf/pfSuiOkctT5ntp9uw=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR03MB7710
X-Proofpoint-ORIG-GUID: TEM_FRpAUwiQXR398ZuTkS3HIe3AaUTh
X-Proofpoint-GUID: TEM_FRpAUwiQXR398ZuTkS3HIe3AaUTh
X-Proofpoint-Virus-Version: vendor=baseguard
 engine=ICAP:2.0.272,Aquarius:18.0.980,Hydra:6.0.619,FMLib:17.11.176.26
 definitions=2023-10-13_08,2023-10-12_01,2023-05-22_02
X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 mlxlogscore=725
 impostorscore=0 priorityscore=1501 clxscore=1015 phishscore=0
 malwarescore=0 lowpriorityscore=0 mlxscore=0 bulkscore=0 spamscore=0
 adultscore=0 suspectscore=0 classifier=spam adjust=0 reason=mlx
 scancount=1 engine=8.12.0-2309180000 definitions=main-2310130148


Julien,

Julien Grall <julien@xen.org> writes:

> Hi,
>
> On 13/10/2023 14:06, Volodymyr Babchuk wrote:
>> Hi Julien,
>> Julien Grall <julien@xen.org> writes:
>>=20
>>> Hi Volodymyr,
>>>
>>> On 12/10/2023 23:09, Volodymyr Babchuk wrote:
>>>> From: Oleksandr Andrushchenko <oleksandr_andrushchenko@epam.com>
>>>> At the moment, we always allocate an extra 16 slots for IO handlers
>>>> (see MAX_IO_HANDLER). So while adding IO trap handlers for the emulate=
d
>>>> MSI-X registers we need to explicitly tell that we have additional IO
>>>> handlers, so those are accounted.
>>>> Signed-off-by: Oleksandr Andrushchenko
>>>> <oleksandr_andrushchenko@epam.com>
>>>
>>> Some process remark. All the patches you send (even if they are
>>> unmodified) should also contain your signed-off-by. This is to comply
>>> with point (b) in the DCO certificate:
>> Oh, sorry. I assumed that it is enough to have signed-off-by tag of
>> the
>> original author. I'll add my tags in the next version.
>
> Thanks!
>
>>=20
>>> https://urldefense.com/v3/__https://cert-manager.io/docs/contributing/s=
ign-off/__;!!GF_29dbcQIUBPA!0mzdEfHOZMm2OmzFc6TZukGgMYRHxDWLdEQvbhUlDmOg3tZ=
NeDbWb8vHz38zLzcYv8GUZeHLn-5sWTYCkvkb$ [cert-manager[.]io]
>>>
>>> Please check the other patches in this series.
>>>
>>>> Acked-by: Julien Grall <jgrall@amazon.com>
>>>
>>> Is this patch depends on the rest of the series? If not we can merge
>>> it in the for-4.19 branch Stefano created. This will reduce the number
>>> of patches you need to resend.
>> It uses VPCI_MAX_VIRT_DEV constant which was introduced in ("vpci:
>> add
>> initial support for virtual PCI bus topology").
>
> Ok. I will wait before committing. Please let me know if there are any
> Arm patches that can be already committed (or could potentially be
> reviewed independently).

Well, there is the ("arm/vpci: honor access size when returning an
error") which can be applied partially to the current staging branch.

Maybe it is a good idea to publish it separately.

--=20
WBR, Volodymyr=


From xen-devel-bounces@lists.xenproject.org Fri Oct 13 17:26:38 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 17:26:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616778.959031 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrLvk-0007QT-4X; Fri, 13 Oct 2023 17:26:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616778.959031; Fri, 13 Oct 2023 17:26: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 1qrLvk-0007QM-1P; Fri, 13 Oct 2023 17:26:32 +0000
Received: by outflank-mailman (input) for mailman id 616778;
 Fri, 13 Oct 2023 17:26:31 +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 1qrLvj-0007QG-2Y
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 17:26:31 +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 1qrLvi-0007mf-Nn; Fri, 13 Oct 2023 17:26: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 1qrLvi-0006oO-Fj; Fri, 13 Oct 2023 17: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>
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=JDkBAq5a7fHQ/tDMNsn9a63rjNCAoUahpxUXy78ZeOw=; b=Yd9jevAMKHDxs/ZEY2Z+pBYeHu
	lPACzThnHfykbsx59GqqwybAAzvkcWnOwaMgpjsMG3h/F6xULWH0zjcGMi2XerfuvN0Pe+G6cuHlp
	nugSeCeSv7qk+AVq7LkCkjSAaJL6a3V0N6GxlgyJk7zfx15BH4BZszvQsZM2fu1ECaGY=;
Message-ID: <5673cd8c-8971-4c1f-890e-d993c22a909c@xen.org>
Date: Fri, 13 Oct 2023 18:26:28 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v7 3/8] xen/arm: Fold mmu_init_secondary_cpu() to head.S
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>,
 Penny Zheng <penny.zheng@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
References: <20231009010313.3668423-1-Henry.Wang@arm.com>
 <20231009010313.3668423-4-Henry.Wang@arm.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <20231009010313.3668423-4-Henry.Wang@arm.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi Henry,

On 09/10/2023 02:03, 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>
> ---
> v7:
> - No change.

Given the discusion on v6, I was expecting some changes here at least on 
arm64 side.

For arm32, my proposal would not yet work because sadly the temporary 
page-tables for secondary bring-up will contain writable and executable 
mappings.

> 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 88075ef083..e4b07594b5 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
> +
>   /*
>    * Macro to find the slot number at a given page-table level
>    *
> @@ -308,6 +327,8 @@ ENTRY(enable_secondary_cpu_mm)
>           bl    enable_mmu
>           mov   lr, x5
>   
> +        pt_enforce_wxn x0
> +
>           /* Return to the virtual address requested by the caller. */
>           ret
>   ENDPROC(enable_secondary_cpu_mm)
> diff --git a/xen/arch/arm/include/asm/mm.h b/xen/arch/arm/include/asm/mm.h
> index d25e59f828..163d22ecd3 100644
> --- a/xen/arch/arm/include/asm/mm.h
> +++ b/xen/arch/arm/include/asm/mm.h
> @@ -214,8 +214,6 @@ 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);
> -/* Switch secondary CPUS to its own pagetables and finalise MMU setup */
> -extern void mmu_init_secondary_cpu(void);
>   /*
>    * 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.
> diff --git a/xen/arch/arm/mm.c b/xen/arch/arm/mm.c
> index b7eb3a6e08..923a90925c 100644
> --- a/xen/arch/arm/mm.c
> +++ b/xen/arch/arm/mm.c
> @@ -326,12 +326,6 @@ void __init setup_pagetables(unsigned long boot_phys_offset)
>   #endif
>   }
>   
> -/* MMU setup for secondary CPUS (which already have paging enabled) */
> -void mmu_init_secondary_cpu(void)
> -{
> -    xen_pt_enforce_wnx();
> -}
> -
>   #ifdef CONFIG_ARM_32
>   /*
>    * Set up the direct-mapped xenheap:
> diff --git a/xen/arch/arm/smpboot.c b/xen/arch/arm/smpboot.c
> index ec76de3cac..beb137d06e 100644
> --- a/xen/arch/arm/smpboot.c
> +++ b/xen/arch/arm/smpboot.c
> @@ -361,8 +361,6 @@ void start_secondary(void)
>        */
>       update_system_features(&current_cpu_data);
>   
> -    mmu_init_secondary_cpu();
> -
>       gic_init_secondary_cpu();
>   
>       set_current(idle_vcpu[cpuid]);

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Fri Oct 13 17:30:57 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 17:30:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616782.959040 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrM00-0000RO-Ka; Fri, 13 Oct 2023 17:30:56 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616782.959040; Fri, 13 Oct 2023 17: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 1qrM00-0000RH-Hn; Fri, 13 Oct 2023 17:30:56 +0000
Received: by outflank-mailman (input) for mailman id 616782;
 Fri, 13 Oct 2023 17:30:55 +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 1qrLzz-0000RB-B8
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 17:30: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 1qrLzy-0007rz-Ul; Fri, 13 Oct 2023 17:30:54 +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 1qrLzy-0006rH-Po; Fri, 13 Oct 2023 17:30: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=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=jWgURzHApQplTiloNSchHe1ihWZEvxu2Xo/ys/eL/oE=; b=ZWzYzpiP+MU/0sdvuFbSsvK0Le
	Ia2yR7pX18DcY+/aB78bywVU5Cz8705YRUsil/4JFL+NZ53Fq2nuTi5TUPS5bFiSl3u23WF8yA/Fs
	rnbXmKwgU/vdabJNhzWPDHwQArq64IYuqQmS158pO31w3Hjm2ih+nbfWaRiHqqvlOwcQ=;
Message-ID: <59f35743-fa05-408d-9dca-789da9cd68c2@xen.org>
Date: Fri, 13 Oct 2023 18:30:53 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v7 4/8] xen/arm: Extract MMU-specific MM code
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: <20231009010313.3668423-1-Henry.Wang@arm.com>
 <20231009010313.3668423-5-Henry.Wang@arm.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <20231009010313.3668423-5-Henry.Wang@arm.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi Henry,

On 09/10/2023 02:03, Henry Wang wrote:
> 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.
> While moving, mark pte_of_xenaddr() as __init to make clear that
> this helper is only intended to be used during early boot.
> 
> 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, declaration of global variable init_ttbr 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>

Acked-by: Julien Grall <jgrall@amazon.com>

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Fri Oct 13 17:40:21 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 17:40:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616789.959052 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrM8x-0003AX-LD; Fri, 13 Oct 2023 17:40:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616789.959052; Fri, 13 Oct 2023 17:40: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 1qrM8x-0003AQ-Gf; Fri, 13 Oct 2023 17:40:11 +0000
Received: by outflank-mailman (input) for mailman id 616789;
 Fri, 13 Oct 2023 17:40:10 +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 1qrM8w-0003A6-3u
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 17:40:10 +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 1qrM8v-0008CR-R1; Fri, 13 Oct 2023 17:40:09 +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 1qrM8v-0007KS-Lv; Fri, 13 Oct 2023 17:40: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=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=HmyVQMLKHXWwfRauUOHm7oHqbk1jFeOKM4uIY7bkzPk=; b=tuc9mPDIX6OdY7H+Adv2uMBSdv
	2Q9TN4yhd4JCBTHa+7h+IWRkmgr32vsxwvNezx4l7g/EOSXM9BA1B1MpjqE5Ua5gCYp9tNnJ4FUUS
	7aP5IH4EvLdw+1/jg9rRw9P1oM18+g9y8QHBTd+5xqQQ/tr+cXUIZ1iqbtyWB9qv03wI=;
Message-ID: <15c7c0a5-6064-400b-9022-0dda9b8f7bef@xen.org>
Date: Fri, 13 Oct 2023 18:40:07 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v7 5/8] xen/arm: Split MMU-specific setup_mm() and related
 code out
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>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Penny Zheng <penny.zheng@arm.com>, Wei Chen <wei.chen@arm.com>
References: <20231009010313.3668423-1-Henry.Wang@arm.com>
 <20231009010313.3668423-6-Henry.Wang@arm.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <20231009010313.3668423-6-Henry.Wang@arm.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi Henry,

On 09/10/2023 02:03, Henry Wang wrote:
> setup_mm() is used for Xen to setup memory management subsystem,
> such as boot allocator, direct-mapping, xenheap initialization,
> frametable and static memory pages, at boot time.
> 
> We could inherit some components seamlessly for MPU support, such
> as the setup of boot allocator, whilst we need to implement some
> components differently for MPU, such as xenheap, etc. Also, there
> are some components that is specific to MMU only, for example the
> direct-mapping.
> 
> Therefore in this commit, we split the MMU-specific setup_mm() and
> related code out. Since arm32 and arm64 have completely different
> setup_mm() implementation, take the opportunity to split the
> arch-specific setup_mm() to arch-specific files, so that we can
> avoid #ifdef. Also, make init_pdx(), init_staticmem_pages(),
> setup_mm(), and populate_boot_allocator() public for future MPU
> implementation.

I am a bit confused with the last sentence. AFAICT, even without the MPU 
work, I think you already need to export init_pdx() & co because it is 
called from two different units.

> 
> With above code movement, mark setup_directmap_mappings() as static
> because the only caller of this function is now in the same file
> with it. Drop the original setup_directmap_mappings() declaration
> and move the in-code comment on top of the declaration on top of
> the function implementation.
> 
> Signed-off-by: Henry Wang <Henry.Wang@arm.com>
> Signed-off-by: Penny Zheng <penny.zheng@arm.com>
> Signed-off-by: Wei Chen <wei.chen@arm.com>

With the above comment clarified:

Acked-by: Julien Grall <jgrall@amazon.com>

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Fri Oct 13 17:44:09 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 17:44:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616794.959061 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrMCm-00041O-4B; Fri, 13 Oct 2023 17:44:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616794.959061; Fri, 13 Oct 2023 17:44: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 1qrMCm-00041H-1W; Fri, 13 Oct 2023 17:44:08 +0000
Received: by outflank-mailman (input) for mailman id 616794;
 Fri, 13 Oct 2023 17:44: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 1qrMCk-00041B-Uj
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 17:44: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 1qrMCk-0008HZ-Nz; Fri, 13 Oct 2023 17:44: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 1qrMCk-0007XZ-It; Fri, 13 Oct 2023 17:44: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=/3abA/Ui44PtLdylEgDBWIrd/NU/JPYgyLii5784n9U=; b=tsf2k28bJz3+m1RFXRMecCBySs
	qBGUaGy+y6auznG+YT5d8pLBqP/v7yOW55iH48/fti4TcFGAn931rd1zycbm4+kaivLTcnYC8MUaS
	WiXBAjAXG5rG5+S7aejHzliAdU+35bApFKr+y2/hoaQz6ruLD9KSGlnxq1RV6oyThal4=;
Message-ID: <9346ebac-748d-4d12-95ca-31af5483640a@xen.org>
Date: Fri, 13 Oct 2023 18:44:05 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v7 6/8] xen/arm: Fold pmap and fixmap into MMU system
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>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Penny Zheng <penny.zheng@arm.com>, Wei Chen <wei.chen@arm.com>
References: <20231009010313.3668423-1-Henry.Wang@arm.com>
 <20231009010313.3668423-7-Henry.Wang@arm.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <20231009010313.3668423-7-Henry.Wang@arm.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi Henry,

On 09/10/2023 02:03, Henry Wang wrote:
> diff --git a/xen/arch/arm/mmu/setup.c b/xen/arch/arm/mmu/setup.c
> index c2df976ab2..dff81f6125 100644
> --- a/xen/arch/arm/mmu/setup.c
> +++ b/xen/arch/arm/mmu/setup.c
> @@ -339,6 +339,33 @@ void free_init_memory(void)
>       printk("Freed %ldkB init memory.\n", (long)(__init_end-__init_begin)>>10);
>   }
>   
> +/**
> + * copy_from_paddr - copy data from a physical address
> + * @dst: destination virtual address
> + * @paddr: source physical address
> + * @len: length to copy
> + */
> +void __init copy_from_paddr(void *dst, paddr_t paddr, unsigned long len)
> +{
> +    void *src = (void *)FIXMAP_ADDR(FIXMAP_MISC);
> +
> +    while (len) {
> +        unsigned long l, s;
> +
> +        s = paddr & (PAGE_SIZE-1);

NIT: I would take the opportunity to add a missing space before/after '-'.

Reviewed-by: Julien Grall <jgrall@amazon.com>

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Fri Oct 13 17:48:00 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 17:48:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616799.959071 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrMGP-0005Gw-JM; Fri, 13 Oct 2023 17:47:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616799.959071; Fri, 13 Oct 2023 17:47: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 1qrMGP-0005Gp-GN; Fri, 13 Oct 2023 17:47:53 +0000
Received: by outflank-mailman (input) for mailman id 616799;
 Fri, 13 Oct 2023 17:47: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 1qrMGN-0005Gg-U9
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 17:47: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 1qrMGN-0008MK-Lf; Fri, 13 Oct 2023 17:47: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 1qrMGN-0007bH-Gr; Fri, 13 Oct 2023 17:47: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=BWRQnrs3plLSMXgeS/xo5qjLrlvQRf6zosSAVohdrIc=; b=PQdhltxJdUVKQY9KC3Z8GGLC+V
	eD6VVxt9LYVFY/mfn6hp2BKHwflC2PPC6XWykMK2Uw7+eMqvL2Gq/WjEmr1UCVGlJTlj6uCgx+9az
	E66JO8O4q7njZQvHuS5WP5qeJ3BBYBT6RzqUPj58wHk2AZQDJla0QB03Hja9e8KNjvUU=;
Message-ID: <92c939fb-a8a5-4bbb-8d80-844a70f9b3e5@xen.org>
Date: Fri, 13 Oct 2023 18:47:49 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v7 7/8] xen/arm: Rename init_secondary_pagetables() to
 prepare_secondary_mm()
Content-Language: en-GB
To: Henry Wang <Henry.Wang@arm.com>, xen-devel@lists.xenproject.org
Cc: Penny Zheng <penny.zheng@arm.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>, Wei Chen <wei.chen@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
References: <20231009010313.3668423-1-Henry.Wang@arm.com>
 <20231009010313.3668423-8-Henry.Wang@arm.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <20231009010313.3668423-8-Henry.Wang@arm.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi Henry,

On 09/10/2023 02:03, Henry Wang wrote:
> From: Penny Zheng <penny.zheng@arm.com>
> 
> init_secondary_pagetables() is a function in the common code path
> of both MMU and future MPU support. Since "page table" is a MMU
> specific concept, rename init_secondary_pagetables() to a generic
> name prepare_secondary_mm() as the preparation for MPU support.
> 
> Take the opportunity to fix the incorrect coding style of the in-code
> comments.
> 
> Signed-off-by: Penny Zheng <penny.zheng@arm.com>
> Signed-off-by: Henry Wang <Henry.Wang@arm.com>
> ---
> v7:
> - No change.
> v6:
> - Only rename init_secondary_pagetables() to prepare_secondary_mm().
> ---
>   xen/arch/arm/arm32/head.S     | 2 +-
>   xen/arch/arm/include/asm/mm.h | 8 +++++---
>   xen/arch/arm/mmu/smpboot.c    | 4 ++--
>   xen/arch/arm/smpboot.c        | 2 +-
>   4 files changed, 9 insertions(+), 7 deletions(-)
> 
> diff --git a/xen/arch/arm/arm32/head.S b/xen/arch/arm/arm32/head.S
> index 39218cf15f..c7b2efb8f0 100644
> --- a/xen/arch/arm/arm32/head.S
> +++ b/xen/arch/arm/arm32/head.S
> @@ -257,7 +257,7 @@ GLOBAL(init_secondary)
>   secondary_switched:
>           /*
>            * Non-boot CPUs need to move on to the proper pagetables, which were
> -         * setup in init_secondary_pagetables.
> +         * setup in prepare_secondary_mm.
>            *
>            * XXX: This is not compliant with the Arm Arm.
>            */
> diff --git a/xen/arch/arm/include/asm/mm.h b/xen/arch/arm/include/asm/mm.h
> index d23ebc7df6..db6d889826 100644
> --- a/xen/arch/arm/include/asm/mm.h
> +++ b/xen/arch/arm/include/asm/mm.h
> @@ -204,9 +204,11 @@ extern void setup_pagetables(unsigned long boot_phys_offset);
>   extern void *early_fdt_map(paddr_t fdt_paddr);
>   /* 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);
> +/*
> + * Allocate and initialise pagetables for a secondary CPU.
> + * Sets init_ttbr to the new page table.
> + */

AFAIU, with the renaming, you are trying to make the call MMU/MPU 
agnostic. But the comment is still very tailored to the MPU. I would 
consider to move the comment to mmu/smpboot.c and replace this one with 
a generic comment. Something like:

/* Prepare the memory subystem to bring-up the given secondary CPU. */

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Fri Oct 13 17:48:19 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 17:48:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616802.959081 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrMGo-0005eY-Rx; Fri, 13 Oct 2023 17:48:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616802.959081; Fri, 13 Oct 2023 17:48: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 1qrMGo-0005eR-OS; Fri, 13 Oct 2023 17:48:18 +0000
Received: by outflank-mailman (input) for mailman id 616802;
 Fri, 13 Oct 2023 17:48: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 1qrMGo-0005eF-Fi
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 17:48: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 1qrMGo-0008N6-7r; Fri, 13 Oct 2023 17:48:18 +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 1qrMGo-0007bH-39; Fri, 13 Oct 2023 17:48: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:
	References:Cc:To:From:Subject:MIME-Version:Date:Message-ID;
	bh=2OKgaUDQd8PR7NzSOw194+n68zBJfSu1g6gfckObRzI=; b=QGuAgWq34xhLFRP1bX/vTBpNEd
	7faBwh5Fa7u6pW59+vOR79X2o/N7PATmxR0xsXzUpl9a15qBkPEDmPFEvUTmluryGnSrWW15ZFdd5
	YQtG1uFiDeuJkSCPFCJ8p/ibgtyluDC9UloVFVKd2ia8vFMerDfz6kabynN6RHl0STNA=;
Message-ID: <b52f8338-ab8d-4eac-b60b-34fd163fb03e@xen.org>
Date: Fri, 13 Oct 2023 18:48:17 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v7 7/8] xen/arm: Rename init_secondary_pagetables() to
 prepare_secondary_mm()
Content-Language: en-GB
From: Julien Grall <julien@xen.org>
To: Henry Wang <Henry.Wang@arm.com>, xen-devel@lists.xenproject.org
Cc: Penny Zheng <penny.zheng@arm.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>, Wei Chen <wei.chen@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
References: <20231009010313.3668423-1-Henry.Wang@arm.com>
 <20231009010313.3668423-8-Henry.Wang@arm.com>
 <92c939fb-a8a5-4bbb-8d80-844a70f9b3e5@xen.org>
In-Reply-To: <92c939fb-a8a5-4bbb-8d80-844a70f9b3e5@xen.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit



On 13/10/2023 18:47, Julien Grall wrote:
> Hi Henry,
> 
> On 09/10/2023 02:03, Henry Wang wrote:
>> From: Penny Zheng <penny.zheng@arm.com>
>>
>> init_secondary_pagetables() is a function in the common code path
>> of both MMU and future MPU support. Since "page table" is a MMU
>> specific concept, rename init_secondary_pagetables() to a generic
>> name prepare_secondary_mm() as the preparation for MPU support.
>>
>> Take the opportunity to fix the incorrect coding style of the in-code
>> comments.
>>
>> Signed-off-by: Penny Zheng <penny.zheng@arm.com>
>> Signed-off-by: Henry Wang <Henry.Wang@arm.com>
>> ---
>> v7:
>> - No change.
>> v6:
>> - Only rename init_secondary_pagetables() to prepare_secondary_mm().
>> ---
>>   xen/arch/arm/arm32/head.S     | 2 +-
>>   xen/arch/arm/include/asm/mm.h | 8 +++++---
>>   xen/arch/arm/mmu/smpboot.c    | 4 ++--
>>   xen/arch/arm/smpboot.c        | 2 +-
>>   4 files changed, 9 insertions(+), 7 deletions(-)
>>
>> diff --git a/xen/arch/arm/arm32/head.S b/xen/arch/arm/arm32/head.S
>> index 39218cf15f..c7b2efb8f0 100644
>> --- a/xen/arch/arm/arm32/head.S
>> +++ b/xen/arch/arm/arm32/head.S
>> @@ -257,7 +257,7 @@ GLOBAL(init_secondary)
>>   secondary_switched:
>>           /*
>>            * Non-boot CPUs need to move on to the proper pagetables, 
>> which were
>> -         * setup in init_secondary_pagetables.
>> +         * setup in prepare_secondary_mm.
>>            *
>>            * XXX: This is not compliant with the Arm Arm.
>>            */
>> diff --git a/xen/arch/arm/include/asm/mm.h 
>> b/xen/arch/arm/include/asm/mm.h
>> index d23ebc7df6..db6d889826 100644
>> --- a/xen/arch/arm/include/asm/mm.h
>> +++ b/xen/arch/arm/include/asm/mm.h
>> @@ -204,9 +204,11 @@ extern void setup_pagetables(unsigned long 
>> boot_phys_offset);
>>   extern void *early_fdt_map(paddr_t fdt_paddr);
>>   /* 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);
>> +/*
>> + * Allocate and initialise pagetables for a secondary CPU.
>> + * Sets init_ttbr to the new page table.
>> + */
> 
> AFAIU, with the renaming, you are trying to make the call MMU/MPU 
> agnostic. But the comment is still very tailored to the MPU. I would 
> consider to move the comment to mmu/smpboot.c and replace this one with 
> a generic comment. Something like:
> 
> /* Prepare the memory subystem to bring-up the given secondary CPU. */

I forgot to mention. With that:

Reviewed-by: Julien Grall <jgrall@amazon.com>

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Fri Oct 13 17:55:08 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 17:55:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616807.959090 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrMNL-000811-H6; Fri, 13 Oct 2023 17:55:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616807.959090; Fri, 13 Oct 2023 17:55: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 1qrMNL-00080u-EM; Fri, 13 Oct 2023 17:55:03 +0000
Received: by outflank-mailman (input) for mailman id 616807;
 Fri, 13 Oct 2023 17:55: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=HwK+=F3=amd.com=Stewart.Hildebrand@srs-se1.protection.inumbo.net>)
 id 1qrMNJ-00080l-Ua
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 17:55:02 +0000
Received: from NAM12-BN8-obe.outbound.protection.outlook.com
 (mail-bn8nam12on20609.outbound.protection.outlook.com
 [2a01:111:f400:fe5b::609])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id a025eb53-69f1-11ee-98d4-6d05b1d4d9a1;
 Fri, 13 Oct 2023 19:55:00 +0200 (CEST)
Received: from MW4PR04CA0174.namprd04.prod.outlook.com (2603:10b6:303:85::29)
 by PH7PR12MB8825.namprd12.prod.outlook.com (2603:10b6:510:26a::21)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.44; Fri, 13 Oct
 2023 17:54:55 +0000
Received: from MWH0EPF000989EB.namprd02.prod.outlook.com
 (2603:10b6:303:85:cafe::e4) by MW4PR04CA0174.outlook.office365.com
 (2603:10b6:303:85::29) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.28 via Frontend
 Transport; Fri, 13 Oct 2023 17:54:55 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 MWH0EPF000989EB.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.6838.22 via Frontend Transport; Fri, 13 Oct 2023 17:54:50 +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, 13 Oct
 2023 12:54: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; Fri, 13 Oct
 2023 10:54:49 -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, 13 Oct 2023 12:54: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: a025eb53-69f1-11ee-98d4-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=IqUvKYONHodB9y1O2kMHo1wWl7W1dq37uBXw42+Vqo3PHIEKUPcn3l4vdVrqkYnYG33LkPVjrMUrN6vMfed7cBq0elgRgySB9oMdSQHYFumZ5U1jEx5b3ZdO9KiGNflk3eAPvaDF1nIi1IXB7ojHa0yToq3YijSkSTyQdrqd7XFmS0kbeb1tpTlpbZkQCArNyD/ccJKZaL4r9opYMKWOBFl2q+O8Z3rd8hKnVV1koxvHYj0zmXXAAaBdfzmmry9GjLwH+234il4Htod905LDDvZU4D7wipNScqPliQ/jtItdHY1J1hXcFUCBak4I1f4Mz0e3f3wojgtHIHkmfX7EmA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=k1FO6rl2PQi7Hyf06Kdf1tfP1smy/xGo16oVHG8vb54=;
 b=k/2ZRIaYB8ovl6QEZ7m5pTEpwRLhcEbcCpgG4uES6iEOB0SntFLxhfDDUvURFgih9jeCthjNwF+WhgaF1MSlkrKsboo3UJHrxh/6z3wkzWwbShhDcw0/cGzMm+D3yVcGVeLCO4hOCay0YRBFFzrC2ZxS5aGLU2Or5nRUSD6qMGX68xQCrAaaXaMr4A3QFKMaeJDzG9xLsjy897ITxtCVg3/e6A/jv8U8Yb7oHvYeh/fjWPMQxpXBqzvnk9/rVmI4O6J298jEoD8C4WI8h2DGlzJnXFQU6weqf+UBPaMkSa7Z2xHoH3wjE1a17d1Hsrjaw9GzX1nEo2YhQrjqqtrfaA==
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=k1FO6rl2PQi7Hyf06Kdf1tfP1smy/xGo16oVHG8vb54=;
 b=t4iKqeHXF/3rNPtQBGxPjU5VJl8zAsUMisryBEi7jEMtzPRAeIfYwUnxmSdRQ1OwL5WnshlN4BrOkaJXaNILv+zO80Fq6lalItGOQ9olU59TlUmySXjw7x0VbsUgen9lg/e3m7t6fp0uVBvaWOa++LE/WZD/SulVcHoKnJPXpi0=
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: <73c3c6ff-20e8-4ec4-a159-b60e6b906dfb@amd.com>
Date: Fri, 13 Oct 2023 13:54:56 -0400
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v10 09/17] rangeset: add rangeset_empty() function
Content-Language: en-US
To: Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	"xen-devel@lists.xenproject.org" <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>
References: <20231012220854.2736994-1-volodymyr_babchuk@epam.com>
 <20231012220854.2736994-10-volodymyr_babchuk@epam.com>
From: Stewart Hildebrand <stewart.hildebrand@amd.com>
In-Reply-To: <20231012220854.2736994-10-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: MWH0EPF000989EB:EE_|PH7PR12MB8825:EE_
X-MS-Office365-Filtering-Correlation-Id: 1b521065-5faa-4933-3281-08dbcc1581a0
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	R6RJFfjmyiw1EQHN96wskdhlEud5TpuT1OTrtKBy0oGd8Gb3JnMAI03KstWBufeJV7kdUMSB4Tme30RpZh7STsGvnq0lA/1AmwKkFkcFFpbDrB1y33LMiK+iaH76nqC3PE2Tp8Va30a35uAGQJvnLBTWQbc+yPFoA3M57DUUFXAAW/E1/7aCPFv/F2s2BP1T5oAeWct+oBSkfmT23/GzxUmdB9Mygtlq1BOfJpcTy+KbtTOO1moWe87Eovxy1DrNqDQq3rTzcU7zz2zGCAQkseBOGPp9ekeCJyTj39GZouasFq3RxixxbTZtFGAUPhuCmE2sda3GxkwPglSwBTI5dWvBOGHwpL/Je1noX6fkuCAcQJDzC9dNkRpY/tZIXpT7luAqcHtXJKaYf5C/E4tymqw8JFMUH6yC8ma8++5LEqnKGKW5KUTUXNPH1CI0LVQz8LzlI9R/KyDKTNNgYqjiRSuDoWrD4oeIfnk8uAKnxDYVy9+ceAfg8/McEqlHe5osiqB6AWxU/Z3qRJk9BnyAmvjiwioaHDnAJIVVPVVtmFWS5iIcaQpLeoCpsKTlJ/fIrFGIpVHYbOh23PVY0Q0AEpUhFs+xRK8KgURvKRQNYI4B1wSU7C8D+sTdAO1WeocBxAZ/3/V6kx+qbZDo6WWplqQ7ixJCCeGBp080Q2eCK0X6UFReSyzYmJ5Ap3xHEI6ULBdUj9A5KN4m80prab+2kIMGtKDyEbMmNEjmFqMVHxBx5KM8kQ9mjR2lR8mbb8En5CUBxRneh06cp33SCqT8DoFZzr3C05BfOXnurgve2Ag=
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)(451199024)(82310400011)(186009)(64100799003)(1800799009)(40470700004)(46966006)(36840700001)(81166007)(356005)(82740400003)(40460700003)(44832011)(5660300002)(6666004)(40480700001)(2906002)(53546011)(70586007)(31696002)(86362001)(83380400001)(16576012)(36860700001)(316002)(36756003)(54906003)(70206006)(426003)(26005)(336012)(110136005)(2616005)(47076005)(478600001)(31686004)(8676002)(8936002)(4326008)(41300700001)(36900700001)(43740500002);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Oct 2023 17:54:50.9977
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 1b521065-5faa-4933-3281-08dbcc1581a0
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:
	MWH0EPF000989EB.namprd02.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7PR12MB8825

On 10/12/23 18:09, Volodymyr Babchuk wrote:
> This function can be used when user wants to remove all rangeset
> entries but do not want to destroy rangeset itself.
> 
> Signed-off-by: Volodymyr Babchuk <volodymyr_babchuk@epam.com>
> 
> ---
> 
> Changes in v10:
> 
>  - New in v10. The function is used in "vpci/header: handle p2m range sets per BAR"
> ---
>  xen/common/rangeset.c      | 9 +++++++--
>  xen/include/xen/rangeset.h | 3 ++-
>  2 files changed, 9 insertions(+), 3 deletions(-)
> 
> diff --git a/xen/common/rangeset.c b/xen/common/rangeset.c
> index 35c3420885..420275669e 100644
> --- a/xen/common/rangeset.c
> +++ b/xen/common/rangeset.c
> @@ -448,8 +448,7 @@ struct rangeset *rangeset_new(
>      return r;
>  }
> 
> -void rangeset_destroy(
> -    struct rangeset *r)
> +void rangeset_empty(struct rangeset *r)
>  {
>      struct range *x;
> 
> @@ -465,6 +464,12 @@ void rangeset_destroy(
> 
>      while ( (x = first_range(r)) != NULL )
>          destroy_range(r, x);
> +}
> +
> +void rangeset_destroy(
> +    struct rangeset *r)
> +{
> +    rangeset_empty(r);
> 
>      xfree(r);
>  }

I think the list_del(&r->rangeset_list) operation (and associated locking and NULL check) shouldn't be moved to the new rangeset_empty() function, it should stay in rangeset_destroy().


From xen-devel-bounces@lists.xenproject.org Fri Oct 13 18:02:33 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 18:02:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616828.959117 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrMUa-0002jv-JP; Fri, 13 Oct 2023 18:02:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616828.959117; Fri, 13 Oct 2023 18: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 1qrMUa-0002jm-G1; Fri, 13 Oct 2023 18:02:32 +0000
Received: by outflank-mailman (input) for mailman id 616828;
 Fri, 13 Oct 2023 18:02: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=m8jO=F3=raptorengineering.com=sanastasio@srs-se1.protection.inumbo.net>)
 id 1qrMUZ-0002Qe-AV
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 18:02:31 +0000
Received: from raptorengineering.com (mail.raptorengineering.com
 [23.155.224.40]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id ab1a49ed-69f2-11ee-9b0e-b553b5be7939;
 Fri, 13 Oct 2023 20:02:28 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 136298285872;
 Fri, 13 Oct 2023 13:02:26 -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 PI_oVbjcUtEa; Fri, 13 Oct 2023 13:02:24 -0500 (CDT)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id C86948285873;
 Fri, 13 Oct 2023 13:02:24 -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 NMKuVHpuZ5lo; Fri, 13 Oct 2023 13:02:24 -0500 (CDT)
Received: from [10.11.0.3] (5.edge.rptsys.com [23.155.224.38])
 by mail.rptsys.com (Postfix) with ESMTPSA id 54E9B8285872;
 Fri, 13 Oct 2023 13:02:24 -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: ab1a49ed-69f2-11ee-9b0e-b553b5be7939
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com C86948285873
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD;
	t=1697220144; bh=7x52lhRkK5RTtU9gooS/8hNq4NSdl0hDvp7rkSUAytA=;
	h=Message-ID:Date:MIME-Version:To:From;
	b=h3tUwy9eyi5tb+AQ4P+m7g+3KzzT+3Bi8YYZYqeo81L1O1k0h9XUS2GyDmUyPoKZ9
	 yjkkWAxUatya3/2JJuGC7EdmAPqJb91ZbKkI72//qryZfQuZPGWwsOOKoCyPxPho43
	 OKt1k9CmpFj0Cq/3KT+mG2pDMinF9VJNumSD9F7k=
X-Virus-Scanned: amavisd-new at rptsys.com
Message-ID: <68edd4ec-bb9c-7138-9d67-9180d3251e15@raptorengineering.com>
Date: Fri, 13 Oct 2023 13:02:23 -0500
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux ppc64le; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH 3/3] xen/ppc: Implement a basic exception handler
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>
References: <cover.1695942864.git.sanastasio@raptorengineering.com>
 <edbe94f5ba1db05beb36fef6589b6a79a30c4a7c.1695942864.git.sanastasio@raptorengineering.com>
 <bfeb8d21-66ae-4bc4-99d7-33fd9ede266e@citrix.com>
From: Shawn Anastasio <sanastasio@raptorengineering.com>
In-Reply-To: <bfeb8d21-66ae-4bc4-99d7-33fd9ede266e@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit

On 9/29/23 4:48 AM, Andrew Cooper wrote:
> 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.
>

I anticipate that these two will end up diverging further in the
medium-to-long term, so if you'd accept it I'd rather keep them separate
initially.

>> +
>> +/*
>> + * 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.
>

Fair enough, will do.

> 
>> +
>> +    .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.
>

Ditto.

> ~Andrew

Thanks,
Shawn


From xen-devel-bounces@lists.xenproject.org Fri Oct 13 18:08:51 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 18:08:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616845.959127 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrMab-00046g-BL; Fri, 13 Oct 2023 18:08:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616845.959127; Fri, 13 Oct 2023 18:08: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 1qrMab-00046Z-8F; Fri, 13 Oct 2023 18:08:45 +0000
Received: by outflank-mailman (input) for mailman id 616845;
 Fri, 13 Oct 2023 18:08: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=3A4Z=F3=epam.com=prvs=465081a231=volodymyr_babchuk@srs-se1.protection.inumbo.net>)
 id 1qrMaZ-00045B-AN
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 18:08:43 +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 89e752ba-69f3-11ee-98d4-6d05b1d4d9a1;
 Fri, 13 Oct 2023 20:08:41 +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
 39DHnQnQ015687; Fri, 13 Oct 2023 18:08:36 GMT
Received: from pps.reinject (localhost [127.0.0.1])
 by mx0a-0039f301.pphosted.com (PPS) with ESMTPS id 3tpt0cu5hr-1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT);
 Fri, 13 Oct 2023 18:08:36 +0000
Received: from m0174676.ppops.net (m0174676.ppops.net [127.0.0.1])
 by pps.reinject (8.17.1.5/8.17.1.5) with ESMTP id 39DI8aD5021929;
 Fri, 13 Oct 2023 18:08:36 GMT
Received: from eur01-db5-obe.outbound.protection.outlook.com
 (mail-db5eur01lp2050.outbound.protection.outlook.com [104.47.2.50])
 by mx0a-0039f301.pphosted.com (PPS) with ESMTPS id 3tpt0cu5hp-1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT);
 Fri, 13 Oct 2023 18:08:35 +0000
Received: from AM6PR03MB3701.eurprd03.prod.outlook.com (2603:10a6:209:39::27)
 by PAXPR03MB7633.eurprd03.prod.outlook.com (2603:10a6:102:1db::7)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.45; Fri, 13 Oct
 2023 18:08:31 +0000
Received: from AM6PR03MB3701.eurprd03.prod.outlook.com
 ([fe80::25c9:6ae2:4a01:7a7b]) by AM6PR03MB3701.eurprd03.prod.outlook.com
 ([fe80::25c9:6ae2:4a01:7a7b%3]) with mapi id 15.20.6863.043; Fri, 13 Oct 2023
 18:08: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: 89e752ba-69f3-11ee-98d4-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=iwdlv5QMMfPzHZQk1okVCSZRwkr5hQfyC6vFKonXwKRe1Ku1yqI9Yv89oLBPg1n6QIEoEhzgjDnTyr91yC0iN/CaWFf3cHtG8pY2QNLNBa1vKK8b1eUBfUugMF3dEHsqIFG8UDges6gTDOA6PP9UrPTOPurkk4iDJl5PshBfZf3tcBmqNsPsaNL1mAfZUs3/dUewg/qjCYjTpDJeiR3K3F9epSG++OHf070WYVDSUghdIv2F0cmjVuDFvjjlf4uYAFhp6JNtVOAUavLA7/vkBlQyJuJt+46lygzwJENV36pJ6ob67Wmm8gKo5E4Y8hR+QJjjGvkVTADnpuKI3eEZmA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=M5lYfFSmNz0h5khXHvirrnIHh4xemtmov6rWyh5Uqtk=;
 b=kwDQYK7uxkK8/YP+mu5Q2j9u3WQ4v3Pa5IHYsM5j8xpiC9HUas7cfhTKqjlxJ1nDLabeZ6oNtrP6scEQIzGdhQezAObLl9QdL677j9CmKj+piw1Gx9sBd7l1FR0KIKobE43+P+uajzGPrIIZZbd2dJnvBc6L2LChaF5nWHHNPNXicNrI/t96K4Xv02gSN7UDrFLl+Eieiv4oZYE1XM/wklVjfL2dU562VkOYYXediQMRl30s6paOvasSqx91SayuhW87z7NTOt+fGwEzw8Z9QnBHg0uA/jGN4wfMnwM9Mh1FVM8U9OHCigWg2ZRf1UR0YJDcihqe0uOoRoN9eKHBhg==
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=M5lYfFSmNz0h5khXHvirrnIHh4xemtmov6rWyh5Uqtk=;
 b=QveBy2iFz8eoXfunel4g/8NdyohgCX12hV2syFrhCFfRtwN+/tXlEW1ej+e7vPPtZJlHnyju3owgXsw5CLje5YIW+NS0QBMPFT+bwib4NL7OCPW0A7p2a/utSfNX7nyiSlVW2EGOB50n34DLic1uEDUGXoMJsN5cTcIHziJCwl1kOeG6gjV1rtoS5wC1T4DjcrsIXPZmvloqXrdCQIcGxF5MmH1LhZw4LlXvI0YpyLTClEZEmIL/JhcmSzrCh/FN+1P+KhFZ6tn4IN1JOnddb56LbAQzU2B04hfC8Gu1AJU50Yo9t5/m5GaXugLLbGUgLVIOXNlaoyviIfZZkpfsnQ==
From: Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
To: Stewart Hildebrand <stewart.hildebrand@amd.com>
CC: "xen-devel@lists.xenproject.org" <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 v10 09/17] rangeset: add rangeset_empty() function
Thread-Topic: [PATCH v10 09/17] rangeset: add rangeset_empty() function
Thread-Index: AQHZ/Vi+5V9BMbiD1kqnOLtHs/D1y7BIAg4AgAAC2gA=
Date: Fri, 13 Oct 2023 18:08:31 +0000
Message-ID: <875y3a8kf5.fsf@epam.com>
References: <20231012220854.2736994-1-volodymyr_babchuk@epam.com>
 <20231012220854.2736994-10-volodymyr_babchuk@epam.com>
 <73c3c6ff-20e8-4ec4-a159-b60e6b906dfb@amd.com>
In-Reply-To: <73c3c6ff-20e8-4ec4-a159-b60e6b906dfb@amd.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: AM6PR03MB3701:EE_|PAXPR03MB7633:EE_
x-ms-office365-filtering-correlation-id: ac52f716-0113-4e7c-02fb-08dbcc1768bb
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: 
 +zniGvV9AfE5NQ+9Y2IH5LRRhvW4EGjci1aaVZAMeo0M3wIx3KRTm098I7IWtXc4ZBAK0jNyhl2T3HPczQW24pmvBEWDKQPJXzKK5Mjim9QYCd3Q8vDy6J4FZvPwhqExjxt/Lx66ibzpCBHPwIlH+EoDpLJ3R1OVNL2E4IAMw5v93Q9XzzhKUFvlGAbmes65ESqO0MZ8Swflv1BH/sVfG8dAWC3BITXhg5TKHeFawTTWKZ1OnyCc9/X6yUakZyXTf5xeuJWen/YlYAX98PXca4civ1fnE/eLoHT25xvBj88n/BrWEpWZ6HaBHxCv91TGL+wckq+liAqSOwNpmT8ztkjradxGxD8DR2NXlj8usprGJcNdboDXQftP+zNE7OFVwSygqBuCDtEGdH2vyqwR45dtt2kb7Kx2182FFhObVdDt2t12PanaOABnNTmshO53Udb/IWs16If3cZKdPbSlbxaCS7FlRHET11kauAZ4bLC38yEowIVtEg2kTiEd/NIIQm0rMoK802LoNkMHdDOaWG/f4ON3mfYXn+ze5SJDKhVUOwDKuzRS9tUm2g4I8keBB1oXwidzixi6DH0XREHgCGGX+WxOmIh2nD+zp4dL3wPsgoPxS6mpBvl1XfSpsi8t
x-forefront-antispam-report: 
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM6PR03MB3701.eurprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(136003)(396003)(39860400002)(346002)(366004)(376002)(230922051799003)(451199024)(186009)(64100799003)(1800799009)(38070700005)(5660300002)(4326008)(41300700001)(122000001)(8936002)(8676002)(86362001)(2906002)(36756003)(53546011)(478600001)(55236004)(71200400001)(6506007)(6512007)(83380400001)(2616005)(26005)(6916009)(316002)(66556008)(64756008)(66446008)(66476007)(54906003)(91956017)(66946007)(76116006)(38100700002)(6486002);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: 
 =?iso-8859-1?Q?XQnqr9+FFjV+nAHPiSqBeQIleExGpAZ4z/NxSrqdyYr67iQoIHdr7l55Ei?=
 =?iso-8859-1?Q?dki9W3fkbjm2lFnBY53J8uDFwcdg+DD/cpr0Ugh5V5hF7PDwce9eEARb8o?=
 =?iso-8859-1?Q?q6cGwVTQTI+Mw28haj3Kkcaw6jT1l+WdASY0BXKvTUdk/5ebqgppMU9mF1?=
 =?iso-8859-1?Q?RJWDbxyRgDId5jzNDPdDJKJszmV1j6Kk0Y8byB6JBqplqMaRexs9RQ86dW?=
 =?iso-8859-1?Q?RTCHT3x7ipO9Ub9AI7nxwhjgUuN+28gvKn80IVEPiATGSqm7CbkJgmCSh8?=
 =?iso-8859-1?Q?RRd3CzLBBgVFFEBNkYkHPEqHCILvJTsZSUF0C5ejDyy5ttsbqxOE4AcRMa?=
 =?iso-8859-1?Q?ngTTyXYDGpSMuZD4clhl7bXPLWpIO14uE6TdEK4h59YmOEwrQaqFEAefQ9?=
 =?iso-8859-1?Q?gyTPINb/xbEECHpBYYG06RQ+SkVf2WbGrolAT6nZhY062fUA+IZEnU06ZB?=
 =?iso-8859-1?Q?VxBTytP5E9UB472nU4BZd+7+ov0mRyxr7j9rOAXC9Aax2F5z55DfHdC2He?=
 =?iso-8859-1?Q?ohVCzteV2whZoi80xXl+OXNsRIt0Ld83EsJ25Y2mNxmcIwrpoyoXBPqLw+?=
 =?iso-8859-1?Q?h/xvmwLYgUztpFWoo42ru2vhEL0PZqQELS3wWztu0r4JoUWCWhD4jKiRpu?=
 =?iso-8859-1?Q?UCGPkrOjNJmC1dbp7/4JBkgLWSwpTfy2Y/Pirs9vKgBgD5mtye3oqBtvtB?=
 =?iso-8859-1?Q?TN5EieuXFfOHh3jgBHXWnDBHsuuDwHe3sL7H0tt+KjF3xECBnf3s4rAewm?=
 =?iso-8859-1?Q?5Vs3ZqTLltQ1oeWP3JTgJOoo27pdczMbWgtuwBj1e8E7gn2L2se/MW2d/D?=
 =?iso-8859-1?Q?4DaqDGgULiwh+8DyOfOzZlCC/IT2JgQ7fQvLecCyqt9zjSmInUbaJm9/QZ?=
 =?iso-8859-1?Q?8C+BfhK+4Vy9L3TfS3Hb4w1jqyf9+gFCml7NuOLtn4H+FlwRjlcfL/mjQs?=
 =?iso-8859-1?Q?smgKPxVzuaE+W72Ax17GrsykzJKq0USUhszRZmSYbOysMm7iyfEdDS1x1c?=
 =?iso-8859-1?Q?/oB0jwTc0s1wEMmhnN5EW+14p6cL13p2/7UQ6g74lxmeXWSMZ6p25wFEla?=
 =?iso-8859-1?Q?XltHP2MAoU8gLJ7xl12EK0PPqATkyzjoCgmT5Y9o5woWMYd54AgbaBSbD0?=
 =?iso-8859-1?Q?Ks2BPOs2x1gW0Q2V3zSqFNjimXkYb+wI9/z6Mc9Jx4+POf3+UHZ5mTvbAl?=
 =?iso-8859-1?Q?nBh8QNSgotwKZ9M6BWgLsY6B0+PxLgTvbKy1XgMSiPRFEntBLy/ZOegOaW?=
 =?iso-8859-1?Q?1Ht6Im4g7qvVQfFZCX6nGfb7MxNqwg5degJYMFbEub7jihDtESn68i+CJ5?=
 =?iso-8859-1?Q?DdfT2PfJvacJimHzy0SuYdtGmqtOoKkBL/GZF/N2hYMOL5aEEJw2uedAaA?=
 =?iso-8859-1?Q?oEIHdxskMv8ziqjyBbVukStTLZaXMBiKlfuLA99AoRSwBoGegw7upvzzJE?=
 =?iso-8859-1?Q?sOyuzl6o0mKBePVnSdOQmdq2wLmJ/3g6q6MCOVIwmbufbKvXQmOrzXsdcj?=
 =?iso-8859-1?Q?O4lpxd/x1dExJmzzm2fZX++X51DW6xxJYEMotk9wCWXW9WK92HwBwKyGxA?=
 =?iso-8859-1?Q?Bis6SqGBlr2Hbzg8rOwpMKVGd/XBy1NxM443jFjha27YAq2v6LapRUtJsE?=
 =?iso-8859-1?Q?43vsjO6gceebv1/2nO8tq5R/Q1WIDxLJ4ac4kmFboIyCJexVMbzliGUA?=
 =?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: AM6PR03MB3701.eurprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: ac52f716-0113-4e7c-02fb-08dbcc1768bb
X-MS-Exchange-CrossTenant-originalarrivaltime: 13 Oct 2023 18:08:31.6291
 (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: MDC9uP7CvHwp/5S09kIBbAOu+ukxHvcbCI/x5xpI7ygJdIBeLXY/yvn1dFA+6IPbEp7x15LtYji+rgJHQ+g3ZpGju3lpcJ/LMXbpDCvvP2E=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR03MB7633
X-Proofpoint-GUID: w7YzfRVzNSeS-Dl2LwxEWOKyGAUKh5uc
X-Proofpoint-ORIG-GUID: w7YzfRVzNSeS-Dl2LwxEWOKyGAUKh5uc
X-Proofpoint-Virus-Version: vendor=baseguard
 engine=ICAP:2.0.272,Aquarius:18.0.980,Hydra:6.0.619,FMLib:17.11.176.26
 definitions=2023-10-13_09,2023-10-12_01,2023-05-22_02
X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 adultscore=0 mlxscore=0
 bulkscore=0 suspectscore=0 lowpriorityscore=0 impostorscore=0
 malwarescore=0 clxscore=1015 phishscore=0 mlxlogscore=756
 priorityscore=1501 spamscore=0 classifier=spam adjust=0 reason=mlx
 scancount=2 engine=8.12.0-2309180000 definitions=main-2310130156


Hi Stewart,

Stewart Hildebrand <stewart.hildebrand@amd.com> writes:

> On 10/12/23 18:09, Volodymyr Babchuk wrote:
>> This function can be used when user wants to remove all rangeset
>> entries but do not want to destroy rangeset itself.
>>=20
>> Signed-off-by: Volodymyr Babchuk <volodymyr_babchuk@epam.com>
>>=20
>> ---
>>=20
>> Changes in v10:
>>=20
>>  - New in v10. The function is used in "vpci/header: handle p2m range se=
ts per BAR"
>> ---
>>  xen/common/rangeset.c      | 9 +++++++--
>>  xen/include/xen/rangeset.h | 3 ++-
>>  2 files changed, 9 insertions(+), 3 deletions(-)
>>=20
>> diff --git a/xen/common/rangeset.c b/xen/common/rangeset.c
>> index 35c3420885..420275669e 100644
>> --- a/xen/common/rangeset.c
>> +++ b/xen/common/rangeset.c
>> @@ -448,8 +448,7 @@ struct rangeset *rangeset_new(
>>      return r;
>>  }
>>=20
>> -void rangeset_destroy(
>> -    struct rangeset *r)
>> +void rangeset_empty(struct rangeset *r)
>>  {
>>      struct range *x;
>>=20
>> @@ -465,6 +464,12 @@ void rangeset_destroy(
>>=20
>>      while ( (x =3D first_range(r)) !=3D NULL )
>>          destroy_range(r, x);
>> +}
>> +
>> +void rangeset_destroy(
>> +    struct rangeset *r)
>> +{
>> +    rangeset_empty(r);
>>=20
>>      xfree(r);
>>  }
>
> I think the list_del(&r->rangeset_list) operation (and associated
> locking and NULL check) shouldn't be moved to the new rangeset_empty()
> function, it should stay in rangeset_destroy().

Ahh, yes. It was a really stupid idea to move list_del(&r->rangeset_list); =
to
rangeset_empty().

--=20
WBR, Volodymyr=


From xen-devel-bounces@lists.xenproject.org Fri Oct 13 18:14:07 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 18:14:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616850.959137 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrMfj-0006KD-Tc; Fri, 13 Oct 2023 18:14:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616850.959137; Fri, 13 Oct 2023 18:14: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 1qrMfj-0006K6-R1; Fri, 13 Oct 2023 18:14:03 +0000
Received: by outflank-mailman (input) for mailman id 616850;
 Fri, 13 Oct 2023 18:14: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=m8jO=F3=raptorengineering.com=sanastasio@srs-se1.protection.inumbo.net>)
 id 1qrMfi-0006Jy-RR
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 18:14:02 +0000
Received: from raptorengineering.com (mail.raptorengineering.com
 [23.155.224.40]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 48818d4c-69f4-11ee-98d4-6d05b1d4d9a1;
 Fri, 13 Oct 2023 20:14:01 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 0B0138285873;
 Fri, 13 Oct 2023 13:14: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 6t30Qa-2Xv3l; Fri, 13 Oct 2023 13:13:59 -0500 (CDT)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 215828285879;
 Fri, 13 Oct 2023 13:13: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 mAt3FFO9wD_7; Fri, 13 Oct 2023 13:13:58 -0500 (CDT)
Received: from raptor-ewks-026.lan (5.edge.rptsys.com [23.155.224.38])
 by mail.rptsys.com (Postfix) with ESMTPSA id A83108285873;
 Fri, 13 Oct 2023 13:13: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: 48818d4c-69f4-11ee-98d4-6d05b1d4d9a1
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com 215828285879
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD;
	t=1697220839; bh=3CIntRKcXOt7QoCjse2/hGyBC/GT4jPzfc8Z1vriXwk=;
	h=From:To:Date:Message-Id:MIME-Version;
	b=hCZOLbErS944CfxmDNsfq13Nx9aXk2tHxZaWyhBLj/AhRG3o0iVpmWbgwZfQZPlMI
	 KDOMSujA/BM78zofjbEdI8VTPQXXQQl/ITR1GsuHesFGpzT7w5wFEZ9/xoJ8hPyK+w
	 kzBHdWNkMhtBhVRq0DTe6dZe7CFvz7EDeHPPBJLk=
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 0/2] Early exception handlers on Power
Date: Fri, 13 Oct 2023 13:13:46 -0500
Message-Id: <cover.1697220184.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.

Thanks,

Shawn Anastasio (2):
  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  | 129 +++++++++++++++++++++++++++
 xen/arch/ppc/ppc64/exceptions.c      | 102 +++++++++++++++++++++
 xen/arch/ppc/setup.c                 |  11 +++
 xen/arch/ppc/xen.lds.S               |   7 ++
 8 files changed, 286 insertions(+)
 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 Fri Oct 13 18:14:07 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 18:14:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616851.959148 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrMfl-0006Z7-6U; Fri, 13 Oct 2023 18:14:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616851.959148; Fri, 13 Oct 2023 18:14: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 1qrMfl-0006Yx-1K; Fri, 13 Oct 2023 18:14:05 +0000
Received: by outflank-mailman (input) for mailman id 616851;
 Fri, 13 Oct 2023 18:14: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=m8jO=F3=raptorengineering.com=sanastasio@srs-se1.protection.inumbo.net>)
 id 1qrMfj-0006Jy-Ox
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 18:14:03 +0000
Received: from raptorengineering.com (mail.raptorengineering.com
 [23.155.224.40]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 49844663-69f4-11ee-98d4-6d05b1d4d9a1;
 Fri, 13 Oct 2023 20:14:02 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id E105782859E9;
 Fri, 13 Oct 2023 13:14: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 dOZSQeEFGV2J; Fri, 13 Oct 2023 13:13:59 -0500 (CDT)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id A92428285942;
 Fri, 13 Oct 2023 13:13: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 slDaZDSlocHY; Fri, 13 Oct 2023 13:13:59 -0500 (CDT)
Received: from raptor-ewks-026.lan (5.edge.rptsys.com [23.155.224.38])
 by mail.rptsys.com (Postfix) with ESMTPSA id 570E48285873;
 Fri, 13 Oct 2023 13:13: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: 49844663-69f4-11ee-98d4-6d05b1d4d9a1
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com A92428285942
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD;
	t=1697220839; bh=cmQqULpzUfXOWz1YAhdB0hfayJA+70k2/rx1LYS0G0k=;
	h=From:To:Date:Message-Id:MIME-Version;
	b=Pr4PgKWBmVXb0889u2TJsHfQD1jjXjg9/LYIC+9LaKmPjZh00ILQlhDc2INDRhuQV
	 I9yPNqfvwlvpp33D0yYbWEPGoUFNs+3nmAjBsZ21549IdleiSPLQjWhcT1OKhzyXvB
	 cTK7R1dKawPBUqi9a6cvlbiwWxKqwza+/ekSzsOo=
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: Implement a basic exception handler
Date: Fri, 13 Oct 2023 13:13:48 -0500
Message-Id: <dfd134a6c59f329b62d2ecfaa37d74d70f8d4d90.1697220184.git.sanastasio@raptorengineering.com>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <cover.1697220184.git.sanastasio@raptorengineering.com>
References: <cover.1697220184.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>
---
v2:
  - Place {h_,}exception_common in .text.exceptions section
  - Use assembler macro instead of CPP macro for ISR definition
  - Tabulate ISR definitions

 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  | 129 +++++++++++++++++++++++++++
 xen/arch/ppc/ppc64/exceptions.c      | 102 +++++++++++++++++++++
 xen/arch/ppc/setup.c                 |  11 +++
 6 files changed, 277 insertions(+), 1 deletion(-)
 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..a7a111463f
--- /dev/null
+++ b/xen/arch/ppc/ppc64/exceptions-asm.S
@@ -0,0 +1,129 @@
+/* SPDX-License-Identifier: GPL-2.0-or-later */
+
+#include <asm/asm-defns.h>
+#include <asm/processor.h>
+
+    .section .text.exceptions, "ax", %progbits
+
+    /* 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 the specified handler
+ */
+.macro ISR name, exc, handler
+    . = (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       \handler
+
+    .size \name, . - \name
+    .type \name, %function
+.endm
+
+
+ISR exc_sysreset,   EXC_SYSTEM_RESET,   exception_common
+ISR exc_mcheck,     EXC_MACHINE_CHECK,  exception_common
+ISR exc_dstore,     EXC_DATA_STORAGE,   exception_common
+ISR exc_dsegment,   EXC_DATA_SEGMENT,   exception_common
+ISR exc_istore,     EXC_INSN_STORAGE,   exception_common
+ISR exc_isegment,   EXC_INSN_SEGMENT,   exception_common
+ISR exc_extern,     EXC_EXTERNAL,       exception_common
+ISR exc_align,      EXC_ALIGNMENT,      exception_common
+ISR exc_program,    EXC_PROGRAM,        exception_common
+ISR exc_fpu,        EXC_FPU_UNAVAIL,    exception_common
+ISR exc_dec,        EXC_DECREMENTER,    exception_common
+ISR exc_h_dec,      EXC_H_DECREMENTER,  h_exception_common
+/* EXC_PRIV_DOORBELL ... EXC_TRACE */
+ISR exc_h_dstore,   EXC_H_DATA_STORAGE, h_exception_common
+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 Fri Oct 13 18:14:07 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 18:14:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616852.959157 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrMfm-0006q1-GG; Fri, 13 Oct 2023 18:14:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616852.959157; Fri, 13 Oct 2023 18: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 1qrMfm-0006ps-CH; Fri, 13 Oct 2023 18:14:06 +0000
Received: by outflank-mailman (input) for mailman id 616852;
 Fri, 13 Oct 2023 18:14: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=m8jO=F3=raptorengineering.com=sanastasio@srs-se1.protection.inumbo.net>)
 id 1qrMfk-0006SD-Jv
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 18:14:04 +0000
Received: from raptorengineering.com (mail.raptorengineering.com
 [23.155.224.40]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 49464093-69f4-11ee-9b0e-b553b5be7939;
 Fri, 13 Oct 2023 20:14:02 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 064578285879;
 Fri, 13 Oct 2023 13:14: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 ujKDjrMCklCW; Fri, 13 Oct 2023 13:13:59 -0500 (CDT)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 64D6182859E9;
 Fri, 13 Oct 2023 13:13: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 LR7Q48rUtgVq; Fri, 13 Oct 2023 13:13:59 -0500 (CDT)
Received: from raptor-ewks-026.lan (5.edge.rptsys.com [23.155.224.38])
 by mail.rptsys.com (Postfix) with ESMTPSA id 0B1DF8285942;
 Fri, 13 Oct 2023 13:13: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: 49464093-69f4-11ee-9b0e-b553b5be7939
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com 64D6182859E9
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD;
	t=1697220839; bh=x6jA8BhTGfzEg5hk7ueBZFqYcBPdz+Oto5ItjZfyC9c=;
	h=From:To:Date:Message-Id:MIME-Version;
	b=EVczAvbcskwkYH1swRWD/MFi6RXjl5qFTCF81QVYVrQ1pBKR+6Yoeui/UosaLCoeQ
	 Zg3N4hIOjlWC86CWAAXxiINcPNsL17PBgeEcwW0q0wf/0gRY1Dw6ShNE3QgroQgyd5
	 3psex3aKuOC2GPUE9u3lEoPNX1AAt+fa2q1BFiTc=
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 1/2] xen/ppc: Add .text.exceptions section for exception vectors
Date: Fri, 13 Oct 2023 13:13:47 -0500
Message-Id: <f06ee2e5d836a64277bed6d9c6c1367dc0627dc8.1697220184.git.sanastasio@raptorengineering.com>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <cover.1697220184.git.sanastasio@raptorengineering.com>
References: <cover.1697220184.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>
---
v2:
  - Wrap _stext_exceptions definition with HIDDEN()
  - Drop unnecessary line-continuing backslash in ASSERT

 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..1479ec9f9f 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);
+        HIDDEN(_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 Fri Oct 13 18:20:17 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 18:20:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616864.959168 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrMlU-0001CU-71; Fri, 13 Oct 2023 18:20:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616864.959168; Fri, 13 Oct 2023 18:20: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 1qrMlU-0001CN-23; Fri, 13 Oct 2023 18:20:00 +0000
Received: by outflank-mailman (input) for mailman id 616864;
 Fri, 13 Oct 2023 18:19: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=AMJ7=F3=gmail.com=jandryuk@srs-se1.protection.inumbo.net>)
 id 1qrMlS-0001CA-6w
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 18:19:58 +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 1c9177f4-69f5-11ee-9b0e-b553b5be7939;
 Fri, 13 Oct 2023 20:19:56 +0200 (CEST)
Received: by mail-ed1-x532.google.com with SMTP id
 4fb4d7f45d1cf-53e04b17132so3686578a12.0
 for <xen-devel@lists.xenproject.org>; Fri, 13 Oct 2023 11:19: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: 1c9177f4-69f5-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1697221196; x=1697825996; 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=e0exkzigYjCynzbnJQu8JnrQ0VCvKe1L1o155nHPvIQ=;
        b=d4o+WjgNfS75iFK4SW5pCVEOumhIrbs2uTZ+AkgbaqHZXvGG3ARJw1XutCz7G2uTTN
         xlG4+B74V2aZVsLFauyICXx6eXEuvqYGaoIX+5t0qfDjI6jFRVL8itwvaQqSnyAqMS+H
         1PLKCWVvW5Z1xmd6dQcHr90yMM99Ix26QCpHqOLIKRimHJTRXIAm7JF+/NB6B0Zo1Oxc
         QZHXjauN8liEK0hsNDHTZNtZ+aHmkzAJEoFz1oxpcGIGO84OQQkSFCQNffylT8Q7KeWf
         sNVULzFDzLB5SaqzlWuFE5U7nGfDS3l/FUfvu4FDF7Cu5rG1rvuBj0yM0OfFLg4wLW+q
         y5gA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697221196; x=1697825996;
        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=e0exkzigYjCynzbnJQu8JnrQ0VCvKe1L1o155nHPvIQ=;
        b=tKTUxC3iAVz7zjxesrRS+M57s/KCtVkMKtf5eqyOu4zTVRFTgc9aQlN2Eb5i++E0Rk
         AZzGh2r+ObM5vyQju6WN+nTKLuZlMuiAp8rxrE6IfuFVpHV2uAXYs5I30maWvE1kDd+9
         EKda+RDQVzEbcofI8OLkdD1p6HZEWFAKoIm7WzO17IzgLbvcNpvifJ5pf7CAGTVVdz0E
         9XljIq3u8C4B6v3PoRsT6dXyFAifizwf2SG1XDU3JMs/sev/8x0cuIZN+hzFEytaba1k
         afOMxy55+plJztTsMBkzQyTC9A4AMUiEaW7vxFo5hZA1RCu6Ua5dFLjd+yUY+nXYyvn9
         jZSg==
X-Gm-Message-State: AOJu0YxTJ0hcLKq06XQdNOvGuTHYpohq9pRIb+0NCqnOQOzCPtLhPvqP
	jZbHJG/mYPAez7KkZiO2zyEMhyiSZ3LPH/a3jaI=
X-Google-Smtp-Source: AGHT+IFbNiIX6/ULO8X8yCSIGnQtzYCarr/gXTjiNPfLhOCE4S5Pa/TiD8MBt0ZVpqRWb9UkYXbpAZR/Ltl2qGwUn8o=
X-Received: by 2002:a05:6402:f1c:b0:53d:e990:b8dc with SMTP id
 i28-20020a0564020f1c00b0053de990b8dcmr7329570eda.3.1697221195690; Fri, 13 Oct
 2023 11:19:55 -0700 (PDT)
MIME-Version: 1.0
References: <20231010173924.44167-1-jandryuk@gmail.com> <9cda7031-286f-42e6-a23f-80c284931696@intel.com>
In-Reply-To: <9cda7031-286f-42e6-a23f-80c284931696@intel.com>
From: Jason Andryuk <jandryuk@gmail.com>
Date: Fri, 13 Oct 2023 14:19:43 -0400
Message-ID: <CAKf6xpt1UdvJw7YZ5K6TBes_kXUv+7qm+gGW98=hPTu2p53eEg@mail.gmail.com>
Subject: Re: [PATCH v3] acpi/processor: sanitize _OSC/_PDC capabilities for
 Xen dom0
To: "Wilczynski, Michal" <michal.wilczynski@intel.com>
Cc: Juergen Gross <jgross@suse.com>, Boris Ostrovsky <boris.ostrovsky@oracle.com>, 
	Stefano Stabellini <sstabellini@kernel.org>, 
	Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>, 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>, linux-kernel@vger.kernel.org, 
	xen-devel@lists.xenproject.org
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

Thanks for taking a look, Michal.

On Fri, Oct 13, 2023 at 12:17=E2=80=AFPM Wilczynski, Michal
<michal.wilczynski@intel.com> wrote:
>
> Hi,
>
> On 10/10/2023 7:39 PM, Jason Andryuk wrote:
> > From: Roger Pau Monne <roger.pau@citrix.com>
> >
> > The Processor capability 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, the hypervisor is the entity
> > in charge of processor power management, and hence Xen needs to make
> > sure the capabilities reported by _OSC/_PDC 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
> > ACPI_PROC_CAP_COLLAB_PROC_PERF (bit 12) in the capability bits and the
> > _OSC/_PDC call will apply it.
> >
> > [ jandryuk: Mention Xen HWP's need.  Support _OSC & _PDC ]
> > Signed-off-by: Roger Pau Monn=C3=A9 <roger.pau@citrix.com>
> > Cc: stable@vger.kernel.org
> > Signed-off-by: Jason Andryuk <jandryuk@gmail.com>
> > ---
> > v3:
> > Move xen_sanitize_pdc() call to arch_acpi_set_proc_cap_bits() to cover
> > _OSC and _PDC.
> > drivers/xen/pcpu.c is CONFIG_DOM0 && CONFIG_X86
> >
> > v2:
> > Move local variables in acpi_processor_eval_pdc() to reuse in both cond=
itions.
> > ---
> >  arch/x86/include/asm/acpi.h           | 13 +++++++++++++
> >  arch/x86/include/asm/xen/hypervisor.h |  9 +++++++++
> >  drivers/xen/pcpu.c                    | 21 +++++++++++++++++++++
> >  3 files changed, 43 insertions(+)
> >
> > diff --git a/arch/x86/include/asm/acpi.h b/arch/x86/include/asm/acpi.h
> > index c8a7fc23f63c..cc8d1669d6e8 100644
> > --- a/arch/x86/include/asm/acpi.h
> > +++ b/arch/x86/include/asm/acpi.h
> > @@ -16,6 +16,9 @@
> >  #include <asm/x86_init.h>
> >  #include <asm/cpufeature.h>
> >  #include <asm/irq_vectors.h>
> > +#include <asm/xen/hypervisor.h>
> > +
> > +#include <xen/xen.h>
> >
> >  #ifdef CONFIG_ACPI_APEI
> >  # include <asm/pgtable_types.h>
> > @@ -127,6 +130,16 @@ static inline void arch_acpi_set_proc_cap_bits(u32=
 *cap)
> >       if (!cpu_has(c, X86_FEATURE_MWAIT) ||
> >           boot_option_idle_override =3D=3D IDLE_NOMWAIT)
> >               *cap &=3D ~(ACPI_PROC_CAP_C_C1_FFH | ACPI_PROC_CAP_C_C2C3=
_FFH);
> > +
> > +     if (xen_initial_domain()) {
> > +             /*
> > +              * When Linux is running as Xen dom0, the hypervisor is t=
he
> > +              * entity in charge of the processor power management, an=
d so
> > +              * Xen needs to check the OS capabilities reported in the=
 _PDC
>
> I would argue the phrasing here is unfortunate - it's not really _PDC buf=
fer anymore,
> it's more processor capabilities buffer [1]. Your phrasing would indicate=
 that this
> buffer is somehow _PDC specific.

Ok.

> BTW this file is x86 specific code - are you sure it's appropriate to inv=
olve Xen
> hypervisor here ? I understand this case if x86 specific, but still.

The Xen hypercall is x86-specific.  I see
`arch_acpi_set_proc_cap_bits()` as a hook to set arch-specific bits.
Looking at Xen/x86 as the arch, it makes sense.  The other option
would be a Xen conditional back in the acpi code.  Keeping it with the
x86 code therefore made more sense to me.

> > +              * buffer matches what the hypervisor driver supports.
> > +              */
> > +             xen_sanitize_pdc(cap);
>
> Same here as in [1], I would call this function xen_sanitize_proc_cap_buf=
fer(),
> or something along those lines for better readability and correctness.

Ok.

> > +     }
> >  }
> >
> >  static inline bool acpi_has_cpu_in_madt(void)
> > diff --git a/arch/x86/include/asm/xen/hypervisor.h b/arch/x86/include/a=
sm/xen/hypervisor.h
> > index 7048dfacc04b..c6c2f174fa30 100644
> > --- a/arch/x86/include/asm/xen/hypervisor.h
> > +++ b/arch/x86/include/asm/xen/hypervisor.h
> > @@ -100,4 +100,13 @@ static inline void leave_lazy(enum xen_lazy_mode m=
ode)
> >
> >  enum xen_lazy_mode xen_get_lazy_mode(void);
> >
> > +#if defined(CONFIG_XEN_DOM0) && defined(CONFIG_ACPI)
> > +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/drivers/xen/pcpu.c b/drivers/xen/pcpu.c
> > index b3e3d1bb37f3..859bb6027105 100644
> > --- a/drivers/xen/pcpu.c
> > +++ b/drivers/xen/pcpu.c
> > @@ -47,6 +47,9 @@
> >  #include <asm/xen/hypervisor.h>
> >  #include <asm/xen/hypercall.h>
> >
> > +#ifdef CONFIG_ACPI
> > +#include <acpi/processor.h>
> > +#endif
> >
> >  /*
> >   * @cpu_id: Xen physical cpu logic number
> > @@ -400,4 +403,22 @@ bool __init xen_processor_present(uint32_t acpi_id=
)
> >
> >       return online;
> >  }
> > +
> > +void xen_sanitize_pdc(uint32_t *cap)
> > +{
> > +     struct xen_platform_op op =3D {
> > +             .cmd                    =3D XENPF_set_processor_pminfo,
> > +             .u.set_pminfo.id        =3D -1,
> > +             .u.set_pminfo.type      =3D XEN_PM_PDC,
>
> It would probably be best to rename this constant as well so it's
> not misleading.

That is a Xen constant, so we can't change it.

> > +     };
> > +     u32 buf[3] =3D { ACPI_PDC_REVISION_ID, 1, *cap };
> > +     int ret;
> > +
> > +     set_xen_guest_handle(op.u.set_pminfo.pdc, buf);
> > +     ret =3D HYPERVISOR_platform_op(&op);
> > +     if (ret)
> > +             pr_info("sanitize of _PDC buffer bits from Xen failed: %d=
\n",
> > +                     ret);
>
> Shouldn't an error be pr_err ?

Sure.

> > +     *cap =3D buf[2];
> > +}
> >  #endif

Thanks,
Jason


From xen-devel-bounces@lists.xenproject.org Fri Oct 13 18:22:31 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 18:22:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616868.959176 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrMnu-0002bf-HS; Fri, 13 Oct 2023 18:22:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616868.959176; Fri, 13 Oct 2023 18: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 1qrMnu-0002bY-Eb; Fri, 13 Oct 2023 18:22:30 +0000
Received: by outflank-mailman (input) for mailman id 616868;
 Fri, 13 Oct 2023 18:22: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 1qrMns-0002bQ-PO
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 18:22: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 1qrMns-0000ps-DL; Fri, 13 Oct 2023 18:22: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 1qrMns-0000hy-80; Fri, 13 Oct 2023 18:22: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=lGI2UamTnNm9RiDcOaFhPJTmjQIxWc3TJQ8Ym2NEcGE=; b=k4VRNQnCY1KITT/YY6Fk7FxijW
	x6+778OhZVcjetWL8gihIrV8cf099fDl7utEXYrpMBFpWQMoR0Dxyxp8dscieLu/2GJcrOYneDQor
	Qzz7O8o0/PUM57RXg6beNjZhfXLi7CRtomoXDM3j5sWfDkz0iNJvoo+ZieCYjLJuJqX4=;
Message-ID: <af6a376c-a224-45d7-9972-d69ee44239d6@xen.org>
Date: Fri, 13 Oct 2023 19:22:26 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v7 8/8] xen/arm: mmu: move MMU specific P2M code to
 mmu/p2m.{c,h}
Content-Language: en-GB
To: Henry Wang <Henry.Wang@arm.com>, xen-devel@lists.xenproject.org
Cc: Penny Zheng <penny.zheng@arm.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, Wei Chen <wei.chen@arm.com>
References: <20231009010313.3668423-1-Henry.Wang@arm.com>
 <20231009010313.3668423-9-Henry.Wang@arm.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <20231009010313.3668423-9-Henry.Wang@arm.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi Henry,

On 09/10/2023 02:03, Henry Wang wrote:
> From: Penny Zheng <penny.zheng@arm.com>
> 
> Current P2M implementation is designed for MMU system only.
> We move the MMU-specific codes into mmu/p2m.c, and only keep generic
> codes in p2m.c, like VMID allocator, etc. We also move MMU-specific
> definitions and declarations to mmu/p2m.h, such as p2m_tlb_flush_sync().
> Also expose previously static functions p2m_vmid_allocator_init(),
> p2m_alloc_vmid(), and setup_virt_paging_one() for further MPU usage.
> 
> With the code movement, global variable max_vmid is used in multiple
> files instead of a single file (and will be used in MPU P2M
> implementation), declare it in the header and remove the "static" of
> this variable.
> 
> Signed-off-by: Penny Zheng <penny.zheng@arm.com>
> Signed-off-by: Wei Chen <wei.chen@arm.com>
> Signed-off-by: Henry Wang <Henry.Wang@arm.com>

Some remarks about some of the code not moved:
  * struct p2m_domain: The bulk of the fields seems to be MMU specific. 
So depending on the number of common fields we either want to split or 
move the structure to p2m_domain. I would be ok to wait until the MPU 
code is present.
  * p2m_type_t: It is not yet clear how this will apply to the MPU. I am 
ok to wait before moving it.
  * p2m_cache_flush_range(): I expect the code will need some change 
because you may get large chunk of memory for the MPU.
  * p2m_set_way_flush()/p2m_toggle_cache(): This was a giant hack to 
support cache flush operations via set/way. To make it efficient, we 
track the pages that have been touched and only flush them. For the MPU, 
this would not work. Can we attempt to not emulate the instructions?

> ---
> v7:
> - No change.
> v6:
> - Also move relinquish_p2m_mapping() to mmu/p2m.c, make
>    __p2m_set_entry() static.
> - Also move p2m_clear_root_pages() and p2m_flush_vm() to mmu/p2m.c.
> - Don't add #ifdef CONFIG_MMU to the p2m_tlb_flush_sync() in
>    p2m_write_unlock(), this need further discussion.
> - Correct typo in commit message.
> v5:
> - No change
> v4:
> - Rework the patch to drop the unnecessary changes.
> - Rework the commit msg a bit.
> v3:
> - remove MPU stubs
> - adapt to the introduction of new directories: mmu/
> v2:
> - new commit
> ---
>   xen/arch/arm/include/asm/mmu/p2m.h |   18 +
>   xen/arch/arm/include/asm/p2m.h     |   26 +-
>   xen/arch/arm/mmu/Makefile          |    1 +
>   xen/arch/arm/mmu/p2m.c             | 1736 ++++++++++++++++++++++++++
>   xen/arch/arm/p2m.c                 | 1837 +---------------------------
>   5 files changed, 1832 insertions(+), 1786 deletions(-)
>   create mode 100644 xen/arch/arm/include/asm/mmu/p2m.h
>   create mode 100644 xen/arch/arm/mmu/p2m.c
> 
> diff --git a/xen/arch/arm/include/asm/mmu/p2m.h b/xen/arch/arm/include/asm/mmu/p2m.h
> new file mode 100644
> index 0000000000..f829e325ce
> --- /dev/null
> +++ b/xen/arch/arm/include/asm/mmu/p2m.h
> @@ -0,0 +1,18 @@
> +/* SPDX-License-Identifier: GPL-2.0-or-later */
> +#ifndef __ARM_MMU_P2M_H__
> +#define __ARM_MMU_P2M_H__
> +
> +struct p2m_domain;
> +void p2m_force_tlb_flush_sync(struct p2m_domain *p2m);
> +void p2m_tlb_flush_sync(struct p2m_domain *p2m);
> +
> +#endif /* __ARM_MMU_P2M_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/p2m.h b/xen/arch/arm/include/asm/p2m.h
> index 940495d42b..a9622dac9a 100644
> --- a/xen/arch/arm/include/asm/p2m.h
> +++ b/xen/arch/arm/include/asm/p2m.h
> @@ -19,6 +19,22 @@ extern unsigned int p2m_root_level;
>   #define P2M_ROOT_ORDER    p2m_root_order

You seem to use P2M_ROOT_ORDER to allocate p2m->root in arm/p2m.c. 
However, as I mentioned before, I don't think the defintion of p2m->root 
is suitable for the MPU. I think the two functions using p2m->root 
should be moved in mmu/p2m.c and P2M_ROOT_ORDER should be moved in 
mmu/p2m.h.

>   #define P2M_ROOT_LEVEL p2m_root_level

P2M_ROOT_LEVEL doesn't seem to make sense for the MPU. The only use in 
arch/arm/p2m.c seems to be in dump_p2m_lookup() which is calling an MMU 
specific function. So I think this wants to be moved in the MMU code.

>   
> +#define MAX_VMID_8_BIT  (1UL << 8)
> +#define MAX_VMID_16_BIT (1UL << 16)
> +
> +#define INVALID_VMID 0 /* VMID 0 is reserved */
> +
> +#ifdef CONFIG_ARM_64
> +extern unsigned int max_vmid;
> +/* VMID is by default 8 bit width on AArch64 */
> +#define MAX_VMID       max_vmid
> +#else
> +/* VMID is always 8 bit width on AArch32 */
> +#define MAX_VMID        MAX_VMID_8_BIT
> +#endif
> +
> +#define P2M_ROOT_PAGES    (1<<P2M_ROOT_ORDER)

See above.

Also NIT, I would suggest to take the opportunity to use 1U and add 
space before/after <<.

> +
>   struct domain;
>   
>   extern void memory_type_changed(struct domain *);
> @@ -156,6 +172,10 @@ typedef enum {
>   #endif
>   #include <xen/p2m-common.h>
>   
> +#ifdef CONFIG_MMU
> +#include <asm/mmu/p2m.h>
> +#endif
> +
>   static inline bool arch_acquire_resource_check(struct domain *d)
>   {
>       /*
> @@ -180,7 +200,11 @@ void p2m_altp2m_check(struct vcpu *v, uint16_t idx)
>    */
>   void p2m_restrict_ipa_bits(unsigned int ipa_bits);
>   
> +void p2m_vmid_allocator_init(void);
> +int p2m_alloc_vmid(struct domain *d);
> +
>   /* Second stage paging setup, to be called on all CPUs */
> +void setup_virt_paging_one(void *data);

I don't much like the idea to export setup_virt_paging_one(). Could we 
instead move cpu_virt_paging_callback() & co to mmu/p2m.c?

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Fri Oct 13 18:31:53 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 18:31:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616877.959187 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrMws-0005z6-DM; Fri, 13 Oct 2023 18:31:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616877.959187; Fri, 13 Oct 2023 18:31: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 1qrMws-0005yz-A9; Fri, 13 Oct 2023 18:31:46 +0000
Received: by outflank-mailman (input) for mailman id 616877;
 Fri, 13 Oct 2023 18:31:45 +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 1qrMwr-0005yt-50
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 18:31:45 +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 1qrMwq-00010k-RP; Fri, 13 Oct 2023 18:31:44 +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 1qrMwq-0000uN-KI; Fri, 13 Oct 2023 18:31: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=6MNT+GGqRULTHK5ZgOIVYu/snTBl6s7nR/Bnap603p4=; b=Tb4iPSH/XkKr6jXJAmViVU3mKC
	PhvTUkZCa59xMrZzuD/R/We8HAEtKXQO5foGinh8iPDFtHfBUcB+Ch7db85jrmEvZSz/CaErrax/J
	5RHphinQ3vxZS+7rm4PwLDDXljPqBXrOE4WCJ+3a+3eplPxspgZX5VKpteVmgCOLwCl0=;
Message-ID: <527635ac-88b4-4a98-b5b6-1bc2d8600377@xen.org>
Date: Fri, 13 Oct 2023 19:31:42 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v7 8/8] xen/arm: mmu: move MMU specific P2M code to
 mmu/p2m.{c,h}
Content-Language: en-GB
To: Henry Wang <Henry.Wang@arm.com>, xen-devel@lists.xenproject.org
Cc: Penny Zheng <penny.zheng@arm.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, Wei Chen <wei.chen@arm.com>
References: <20231009010313.3668423-1-Henry.Wang@arm.com>
 <20231009010313.3668423-9-Henry.Wang@arm.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <20231009010313.3668423-9-Henry.Wang@arm.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi Henry,

some more remarks.

On 09/10/2023 02:03, Henry Wang wrote:
> +/*
> + * Invalidate all entries in the root page-tables. This is
> + * useful to get fault on entry and do an action.
> + *
> + * p2m_invalid_root() should not be called when the P2M is shared with
> + * the IOMMU because it will cause IOMMU fault.
> + */
> +void p2m_invalidate_root(struct p2m_domain *p2m)

I think this function doesn't make sense for the MPU. What would invalidate?

The only caller outside of the file is in 
arch_domain_creation_finished(). This was used for set/way emulation 
which I believe will be difficult to implement efficiently for the MPU 
(see my other reply to this patch).

So I would consider to move arch_domain_creation_finished() in mmu/p2m.c 
or creating a new function p2m_domain_creation_finished() which is 
called from arch_domain_creation_finished().


[...]

> +/*
> + * Clean & invalidate RAM associated to the guest vCPU.
> + *
> + * The function can only work with the current vCPU and should be called
> + * with IRQ enabled as the vCPU could get preempted.
> + */
> +void p2m_flush_vm(struct vcpu *v)
I believe an implementation of p2m_flush_vm() would be quite expensive 
for the MPU. It would be better to not emulate set/way for now.

It would also feel a bit odd to leave it unimplemented and called from 
check_for_vcpu_work(). So maybe we want to rename it. I don't have a 
goood name suggestion though. Bertrand, Stefano?

> +{
> +    struct p2m_domain *p2m = p2m_get_hostp2m(v->domain);
> +    int rc;
> +    gfn_t start = _gfn(0);
> +
> +    ASSERT(v == current);
> +    ASSERT(local_irq_is_enabled());
> +    ASSERT(v->arch.need_flush_to_ram);
> +
> +    do
> +    {
> +        rc = p2m_cache_flush_range(v->domain, &start, _gfn(ULONG_MAX));
> +        if ( rc == -ERESTART )
> +            do_softirq();
> +    } while ( rc == -ERESTART );
> +
> +    if ( rc != 0 )
> +        gprintk(XENLOG_WARNING,
> +                "P2M has not been correctly cleaned (rc = %d)\n",
> +                rc);
> +
> +    /*
> +     * Invalidate the p2m to track which page was modified by the guest
> +     * between call of p2m_flush_vm().
> +     */
> +    p2m_invalidate_root(p2m);
> +
> +    v->arch.need_flush_to_ram = false;
> +}
> +
> +/* VTCR value to be configured by all CPUs. Set only once by the boot CPU */
> +static register_t __read_mostly vtcr;
> +
> +void setup_virt_paging_one(void *data)
> +{
> +    WRITE_SYSREG(vtcr, VTCR_EL2);
> +
> +    /*
> +     * ARM64_WORKAROUND_AT_SPECULATE: We want to keep the TLBs free from
> +     * entries related to EL1/EL0 translation regime until a guest vCPU
> +     * is running. For that, we need to set-up VTTBR to point to an empty
> +     * page-table and turn on stage-2 translation. The TLB entries
> +     * associated with EL1/EL0 translation regime will also be flushed in case
> +     * an AT instruction was speculated before hand.
> +     */
> +    if ( cpus_have_cap(ARM64_WORKAROUND_AT_SPECULATE) )
> +    {
> +        WRITE_SYSREG64(generate_vttbr(INVALID_VMID, empty_root_mfn), VTTBR_EL2);
> +        WRITE_SYSREG(READ_SYSREG(HCR_EL2) | HCR_VM, HCR_EL2);
> +        isb();
> +
> +        flush_all_guests_tlb_local();
> +    }
> +}


[...]

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Fri Oct 13 18:57:14 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 18:57:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616884.959196 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrNLN-0004mO-Au; Fri, 13 Oct 2023 18:57:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616884.959196; Fri, 13 Oct 2023 18:57: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 1qrNLN-0004mH-7x; Fri, 13 Oct 2023 18:57:05 +0000
Received: by outflank-mailman (input) for mailman id 616884;
 Fri, 13 Oct 2023 18:57: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=CdCY=F3=onlineschubla.de=paul@srs-se1.protection.inumbo.net>)
 id 1qrNLL-0004m9-ER
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 18:57:03 +0000
Received: from mo4-p00-ob.smtp.rzone.de (mo4-p00-ob.smtp.rzone.de
 [85.215.255.20]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 493f70f0-69fa-11ee-9b0e-b553b5be7939;
 Fri, 13 Oct 2023 20:56:59 +0200 (CEST)
Received: from mail.onlineschubla.de by smtp.strato.de (RZmta 49.8.2 AUTH)
 with ESMTPSA id z04e5az9DIuwHBt
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256 bits))
 (Client did not present a certificate)
 for <xen-devel@lists.xenproject.org>;
 Fri, 13 Oct 2023 20:56:58 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mail.onlineschubla.de (Postfix) with ESMTP id EFC3020201
 for <xen-devel@lists.xenproject.org>; Fri, 13 Oct 2023 20:56:57 +0200 (CEST)
Received: from mail.onlineschubla.de ([127.0.0.1])
 by localhost (mail.onlineschubla.de [127.0.0.1]) (amavis, port 10024)
 with ESMTP id JtDzbdNnpR9A for <xen-devel@lists.xenproject.org>;
 Fri, 13 Oct 2023 20:56:57 +0200 (CEST)
Received: from [10.0.0.105] (unknown [10.0.0.105])
 by mail.onlineschubla.de (Postfix) with ESMTPA id 23C0F201FE
 for <xen-devel@lists.xenproject.org>; Fri, 13 Oct 2023 20:56: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: 493f70f0-69fa-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; t=1697223418; cv=none;
    d=strato.com; s=strato-dkim-0002;
    b=nlnGS27nNLq8G6SfY/Ern3z7NzlFUZPkFyjAV6QeDF3m//+ewDB7E9xtsWvdu4iOqn
    iAKDXOlaSWA1ufgV+Idg+DAgrmrLj3uE4sg+BsVuJQa8efWlNhntgXeCJ7J2qrZWRhUD
    rIx2UFuevJEy7hADEtITCLFe/JNjh6HQ1dFUKJJO2lKE1Swr3kRqsWmQ/Moc5ocvHFkm
    bMnjPyoBr6P2Z1GdBhXVLfg5HaZj4mh6kLueAubzHz1OS5X6q1WiBwQxA0Rz7S8ykFii
    xMdxFqI8ko5+xqObcZIUcwwLmKSPILgFOknZLqwqYLoEjVVbR6C++fWPtOZ1NTlMfFc6
    FICQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; t=1697223418;
    s=strato-dkim-0002; d=strato.com;
    h=To:Subject:From:Date:Message-ID:Cc:Date:From:Subject:Sender;
    bh=rPM9UIu8Z4nu9GZKT6wzyASjm7Mpby5M21hS1pCYVL4=;
    b=ROoFty1pHwqjIplQ2VN7HhKIXqoz/DlODrXJ/un0jx4wIbZV+ngCKiXL96r/DfBtVV
    SsmYI11hbSkDAd8fG7IW/XS8ijQCTOnfnrT9qcKUs7D2bJhI+aVTSOcr8C0l5IGfQk8o
    agGCUL9HescgzeIAele+cKtjD12Jusql34GzkPAY85iOjQ7fa/IUbTMhUU8JrACCyf5h
    Rb7CVSAp5/N+yfsBvFp4+tCsPKYWpWsinNA7dHMjgtsIebHl7vA83C8z4MuuQ0z2CSkD
    6eFv5qtXH7c7oeoRXQ1PFTVIBEC8a/kWnOQyGl5kL71uPVPPgDg//SiR4kgYK72gQj/h
    R7OA==
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=1697223418;
    s=strato-dkim-0002; d=onlineschubla.de;
    h=To:Subject:From:Date:Message-ID:Cc:Date:From:Subject:Sender;
    bh=rPM9UIu8Z4nu9GZKT6wzyASjm7Mpby5M21hS1pCYVL4=;
    b=cCgfms+ww8yy7TRKor12LMfM90hKXujcDPW9jk4kniNhFyHu+vQoHoSBohEMp9un79
    iR0Tw+DVi7dkehhett4216mLL/Y0c8kLEZIAxWusTB+G8lfxkbNX3WWaEV5adpGg2I+b
    sAM52YL2UqBC3clsVC8kjJabrEhydZF9gbXkzf0TCUTCLSOMbGEId3TWEhkOwvY9E8rm
    K0Aii4wc1okrsChNOJGGYKcirWhhfvRdSnCoDr58/HJzs7ZfPrJLAGwGBVsllZOvpzlu
    nxgzcZ0cBesoay4pybIgiQNEqa+2wQDULqlzGmvLgXrS0WB1CX/4ZRygC0kHFInwqmuk
    LgWg==
DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; t=1697223418;
    s=strato-dkim-0003; d=onlineschubla.de;
    h=To:Subject:From:Date:Message-ID:Cc:Date:From:Subject:Sender;
    bh=rPM9UIu8Z4nu9GZKT6wzyASjm7Mpby5M21hS1pCYVL4=;
    b=5SIReZDpjI3RLjwayszzZclYUAuQ3Jp8P6JFIppxonYbJ3RIHhKStFW4y6utRmzIXi
    VmZB9wYZ0fzVtHs29KBQ==
X-RZG-AUTH: ":PG0ReWCndfO3rCSML4AvNaDxJ7WJyilEI/NMX3IPsStZLbcZC9mNZx0oO9uVFQeS3s1LjmLQbhqCfT7Y5US59JBuaW7yJI06LvhiTepDbg=="
X-Virus-Scanned: Debian amavis at onlineschubla.de
Message-ID: <838ff75f-1352-4d3c-9bc1-c7a57c828231@onlineschubla.de>
Date: Fri, 13 Oct 2023 20:56:56 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
From: Paul Leiber <paul@onlineschubla.de>
Subject: Xen 4.18rc/ARM64 on Raspberry Pi 4B: Traffic in DomU crashing Dom0
 when using VLANs
To: xen-devel@lists.xenproject.org
Content-Language: en-US
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi Xen developers list,

TL;DR:
------

Causing certain web server traffic on a secondary VLAN on Raspberry Pi 
under vanilla Debian/UEFI in combination with Xen leads to complete 
system reboot (watchdog triggering for Dom0). Other strange things are 
happening.

Description:
----------

I recently set up Xen (self compiled, Version 4.18-rc) on a Raspberry Pi 
4B (on vanilla Debian Bookworm, UEFI boot mode). Until some time ago, 
everything worked well with Dom0, one DomU and one bridge.

Then I wanted to actually make use of the virtualization and started to 
set up a second Debian Bookworm DomU (using xen-create-image) for 
monitoring my systems with zabbix (a webserver based system monitoring 
solution). The bridge used for this setup was the device bridging the 
hardware NIC. I installed zabbix, set it up, and everything went well, I 
could access the web interface without any problem.

Then I set up VLANs (initally using VLAN numbers 1 and 2) to separate 
network traffic between the DomUs. I made the existing device bridge 
VLAN 1 (bridge 1) and created a secondary device for bridging VLAN 2 
(bridge 2). Using only bridge 1 / VLAN 1 everything works well, I can 
access the zabbix web interface without any noticeable issue. After 
switching the zabbix DomU to VLAN 2 / bridge 2, everything seemingly 
keeps on working well, I can ping different devices in my network from 
the zabbix DomU and vice versa, I can ssh into the machine.

However, as soon as I remotely access the zabbix web interface, the 
complete system (DomUs and Dom0) becomes unresponsive and reboots after 
some time (usually seconds, sometimes 1-2 minutes). The reboot is 
reliably reproducable.

I didn't see any error message in any log (zabbix, DomU syslog, Dom0 
syslog) except for the following lines immediately before the system 
reboots on the Xen serial console:

(XEN) Watchdog timer fired for domain 0
(XEN) Hardware Dom0 shutdown: watchdog rebooting machine

As soon as I change the bridge to bridge 1 (with or without VLAN setup), 
the web interface is accessible again after booting the zabbix DomU, no 
reboots.

So I assume that causing specific traffic on the virtual NIC when using 
a VLAN setup with more than one VLAN under Xen makes the Dom0 system 
hard crash. Of course, there might be other causes that I'm not aware 
of, but to me, this seems to be the most likely explanation right now.

What I tried:
-------------

1. I changed the VLAN numbers. First to 101, 102, 103 etc. This was when 
I noticed another strange thing: VLANs with numbers >99 simply don't 
work on my Raspberry Pi under Debian, with or without Xen. VLAN 99 
works, VLAN 100 (or everything else >99 that I tried) doesn't work. If I 
choose a number >99, the VLAN is not configured, "ip a" doesn't list it. 
Other Debian systems on x64 architecture don't show this behavior, 
there, it was no problem to set up VLANs > 99. Therefore, I've changed 
the VLANs to 10, 20, 30 etc., which worked. But it didn't solve the 
initial problem of the crashing Dom0 and DomUs.

2. Different bridge options, without noticable effect:
bridge_stp off      # dont use STP (spanning tree proto)
bridge_waitport 0   # dont wait for port to be available
bridge_fd 0         # no forward delay

3. Removing IPv6: No noticable effect.

4. Network traffic analysis: Now, here it becomes _really_ strange. I 
started tcpdumps on Dom0, and depending on on which interface/bridge 
traffic was logged, the problem went away, meaning, the DomU was running 
smoothly for hours, even when accessing the zabbix web interface. 
Stopping the log makes the system crash (as above, after seconds up to 
1-2 minutes) reproducably if I access the zabbix web interface.

Logging enabcm6e4ei0 (NIC): no crashes
Logging enabcm6e4ei0.10 (VLAN 10): instant crash
Logging enabcm6e4ei0.20 (VLAN 20): no crashes
Logging xenbr0 (on VLAN 10): instant crash
Logging xenbr1 (on VLAN 20): no crashes

I am clinging to the thought that there must be a rational explanation 
for why logging the traffic on certain interfaces/bridges should avoid 
the crash of the complete system, while logging other interfaces/bridges 
doesn't. I myself can't think of one.

I checked the dumps of enabcm6e4ei0.10 and xenbr0 (where the system 
crashes) with wireshark, nothing sticks out to me (but I am really no 
expert in analyzing network traffic). Dumps can be provided.

5. Watchdog: I tried to dig deeper into the cause for the watchdog 
triggering. However, I didn't find any useful documentation on the web 
on how the watchdog works or how to enable logging.

6. Eliminating Xen as cause: I booted the Debian system (which in Xen 
setup would be Dom0) without Xen and set it up to use the VLAN 20 bridge 
(the same that leads to a reboot when using it in the DomU) as primary 
network interface. Everything seemed to be working, I could download 
large files from the internet without any problem. Setting up Zabbix on 
the base Debian system showed that the same setup (VLANs 10 and 20, 
bridges 1 and 2, using bridge 2 as interface for Zabbix) without Xen is 
working reliably, no reboots. This points to some Xen related component 
being the root cause, I think.

7. Eliminating Apache as root cause: Reloading the Apache starting page 
hosted on DomU several times per second didn't lead to a reboot.

8. Recompiling Xen: Independent of which Xen master branch version I was 
using (all 4.18), the behavior was the same. I didn't get Xen working on 
ARM64/UEFI in version 4.17.

Current situation:
------------------

I am out of ideas what to do next. Everything that was recommended to me 
on xen-users didn't lead to significant insight or solve the problem.

I'd appreciate any hints how to troubleshoot this and/or how to proceed 
otherwise.

Thanks,

Paul


xl info:

host                   : ***
release                : 6.1.0-13-arm64
version                : #1 SMP Debian 6.1.55-1 (2023-09-29)
machine                : aarch64
nr_cpus                : 4
max_cpu_id             : 3
nr_nodes               : 1
cores_per_socket       : 1
threads_per_core       : 1
cpu_mhz                : 54.000
hw_caps                : 
00000000:00000000:00000000:00000000:00000000:00000000:0
virt_caps              : hvm hap vpmu gnttab-v1
arm_sve_vector_length  : 0
total_memory           : 8043
free_memory            : 4829
sharing_freed_memory   : 0
sharing_used_memory    : 0
outstanding_claims     : 0
free_cpus              : 0
xen_major              : 4
xen_minor              : 18
xen_extra              : -rc
xen_version            : 4.18-rc
xen_caps               : xen-3.0-aarch64 xen-3.0-armv7l
xen_scheduler          : credit2
xen_pagesize           : 4096
platform_params        : virt_start=0x0
xen_changeset          : Tue Sep 19 12:13:50 2023 +0100 git:dc9d9aa62d
xen_commandline        : placeholder dom0_mem=1024M,max:1024M 
console=dtuart dtu
cc_compiler            : gcc (Debian 12.2.0-14) 12.2.0
cc_compile_by          : root
cc_compile_domain      : xxx.onlineschubla.de
cc_compile_date        : Fri Oct 13 16:01:16 CEST 2023
build_id               : 1d92e27e22e82c09edcb6c178cc09c6e390d031d
xend_config_format     : 4




cat /etc/network/interfaces (with VLAN setup, redacted for IPs):

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

source /etc/network/interfaces.d/*

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
auto enabcm6e4ei0
iface enabcm6e4ei0 inet manual
iface enabcm6e4ei0 inet6 manual

#VLAN LAN
auto enabcm6e4ei0.10
iface enabcm6e4ei0.10 inet manual

#VLAN DMZ_LAN
auto enabcm6e4ei0.20
iface enabcm6e4ei0.20 inet manual

#Bridge LAN
auto xenbr0
iface xenbr0 inet static
         bridge_ports enabcm6e4ei0.10
         address *.*.*.*/24
         gateway *.*.*.*

iface xenbr0 inet6 static
         bridge_ports enabcm6e4ei0.10
         address *::*/64
         gateway *::*
         # use SLAAC al IPv6 address from the router
         # we may notv6 forwarding, otherwise SLAAC ged
         autoconf 1
         accept_ra 2

#Bridge DMZ_LAN
auto xenbr1
iface xenbr1 inet manual
         bridge_ports enabcm6e4ei0.20


From xen-devel-bounces@lists.xenproject.org Fri Oct 13 19:58:25 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 19:58:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616892.959207 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrOIU-0001rL-R4; Fri, 13 Oct 2023 19:58:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616892.959207; Fri, 13 Oct 2023 19: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 1qrOIU-0001rE-Nv; Fri, 13 Oct 2023 19:58:10 +0000
Received: by outflank-mailman (input) for mailman id 616892;
 Fri, 13 Oct 2023 19:58: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 1qrOIS-0001r4-O9; Fri, 13 Oct 2023 19:58: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 1qrOIS-0003AR-FD; Fri, 13 Oct 2023 19:58: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 1qrOIS-0005aI-48; Fri, 13 Oct 2023 19:58:08 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qrOIS-00059Q-3h; Fri, 13 Oct 2023 19: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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=XrqTbMmwMLSblnQGBrB8F62Nhw6grF4ZxTsAEJgDXCY=; b=22PbC4XGKiVPa+EmNJMyQbpvPn
	cNDyPlB8ksPQYlu9ZXK9QzNl+hNTTWubr4gEJwLofvvl/uNd1buL03UrxC42DrvfZo/G8+MWbScYc
	rEE35FxmR/S0kxpzBIVL7nq78geurP6XuIS0zBLuHgWaKD/ugrX4iAXpRcTvsCAJZvEk=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183365-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 183365: tolerable FAIL - PUSHED
X-Osstest-Failures:
    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-armhf-armhf-libvirt: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-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-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: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-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-arndale:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale: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-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-raw:migrate-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-amd64-amd64-libvirt:migrate-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
    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-libvirt: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=10a6e5feccb877c3c75ad11d27942ad52c24815f
X-Osstest-Versions-That:
    linux=20f4757fa5ed2d9a7746d01b8950cfe04d593a0a
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 13 Oct 2023 19:58:08 +0000

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

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 183362
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183362
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183362
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183362
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183362
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183362
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183362
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183362
 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-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          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-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-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-qcow2 14 migrate-support-check        fail never pass
 test-amd64-amd64-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-amd64-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-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-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                10a6e5feccb877c3c75ad11d27942ad52c24815f
baseline version:
 linux                20f4757fa5ed2d9a7746d01b8950cfe04d593a0a

Last test of basis   183362  2023-10-13 02:07:59 Z    0 days
Testing same since   183365  2023-10-13 13:09:59 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  "Matthew Wilcox (Oracle)" <willy@infradead.org>
  Abhinav Kumar <quic_abhinavk@quicinc.com>
  Abhinav Kumar <quic_abhinavk@quicinc.com> # sc7280
  Alex Deucher <alexander.deucher@amd.com>
  Christian König <christian.koenig@amd.com>
  Dan Carpenter <dan.carpenter@linaro.org>
  Daniel Miess <daniel.miess@amd.com>
  Daniel Wheeler <daniel.wheeler@amd.com>
  Dave Airlie <airlied@redhat.com>
  Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
  Icenowy Zheng <uwu@icenowy.me>
  Jens Axboe <axboe@kernel.dk>
  Joey Gouly <joey.gouly@arm.com>
  Johan Hovold <johan+linaro@kernel.org>
  Konstantin Meskhidze <konstantin.meskhidze@huawei.com>
  Kuogee Hsieh <quic_khsieh@quicinc.com>
  Linus Torvalds <torvalds@linux-foundation.org>
  Matthew Wilcox (Oracle) <willy@infradead.org>
  Maxime Ripard <mripard@kernel.org>
  Mike Snitzer <snitzer@kernel.org>
  Neil Armstrong <neil.armstrong@linaro.org>
  Nia Espera <nespera@igalia.com>
  Oleksandr Natalenko <oleksandr@natalenko.name>
  Rob Clark <robdclark@gmail.com>
  Ruihai Zhou <zhouruihai@huaqin.corp-partner.google.com>
  Sarthak Kukreti <sarthakkukreti@chromium.org>
  Sebastian Reichel <sebastian.reichel@collabora.com>
  Simon Ser <contact@emersion.fr>
  Stephen Boyd <swboyd@chromium.org>
  Thomas Zimmermann <tzimmermann@suse.de>
  Tom Chung <chiahsuan.chung@amd.com>
  Yunxiang Li <Yunxiang.Li@amd.com>
  Zack Rusin <zackr@vmware.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
   20f4757fa5ed..10a6e5feccb8  10a6e5feccb877c3c75ad11d27942ad52c24815f -> tested/linux-linus


From xen-devel-bounces@lists.xenproject.org Fri Oct 13 21:03:38 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 21:03:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616899.959217 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrPJd-0004AR-64; Fri, 13 Oct 2023 21:03:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616899.959217; Fri, 13 Oct 2023 21: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 1qrPJd-0004AJ-3Q; Fri, 13 Oct 2023 21:03:25 +0000
Received: by outflank-mailman (input) for mailman id 616899;
 Fri, 13 Oct 2023 21:03: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=qaMF=F3=gmail.com=vishal.moola@srs-se1.protection.inumbo.net>)
 id 1qrPJb-00049x-CA
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 21:03:23 +0000
Received: from mail-yb1-xb2e.google.com (mail-yb1-xb2e.google.com
 [2607:f8b0:4864:20::b2e])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id f08201aa-6a0b-11ee-98d4-6d05b1d4d9a1;
 Fri, 13 Oct 2023 23:03:22 +0200 (CEST)
Received: by mail-yb1-xb2e.google.com with SMTP id
 3f1490d57ef6-d9ac31cb051so2412166276.3
 for <xen-devel@lists.xenproject.org>; Fri, 13 Oct 2023 14:03: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: f08201aa-6a0b-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1697231000; x=1697835800; 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=JtiOVCn2uSsz0FoSYRDQt6Ad/oEEDkzUyvmWznVzlSA=;
        b=YXOr8ZRyYKF+yny5oQrtwKUq0azrzm9xi50bHXIFj9D+KV16/N3LIEsjPcaho3cBhm
         DvpmFqh/Xl5ckNqlNpvr3Xc6JJmr0l9JpB4WE6SCEsX4MRMT+A/HPHXw/152m0nLrsXn
         e2q4xd5vnA/twJwMlVTRVpE1w34klDeb/wwiqKpHxTIdW0NwZIU7fTGwXa3Ocn6EVvtc
         CVkQk0SOg3D5uOGHwabJX2wTgLviPW5yB9THY1Md39IObCXQ8fevGge9FHp3jhNc37t5
         8D5gfVm1aDVbIn2Xq39Rqk+dsBj9CUuxi5g/rLEBauPQ4RHU+NXkDoSqo+Mqh4Lz49s4
         kDcQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697231000; x=1697835800;
        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=JtiOVCn2uSsz0FoSYRDQt6Ad/oEEDkzUyvmWznVzlSA=;
        b=CwBUexGbI0yxOMu/LNIE+4IWG3xnZKcYIpQ7VI88w7eXExi7wAU7hA6mlqPZYScW+3
         MhJvqEoXLgq3rAXEAtI7hUJVCe4ATQSa+rtRhn/+iMq5xuMFT9RCF9DxAmhyBMDCjHws
         QCrsHi4vDj6q0ZF9xKywGXsA9ngG4HJu/OIbDWQab2lbgakChZSqwgO2jWEAzgyStPaD
         ZGCh9onqFbwMC5NK03J9TdXPdCZJSMTcsCT2lWbbyy9stDacb/paJaTbiz5/Z+NvFbIk
         dTuvrosgYxr3+tiGreyMpZBb/XT523NQaR8TKCG1sbQodX3lWg3hz+n3CL7PIGHEDSTV
         BGVg==
X-Gm-Message-State: AOJu0Yxw7/E1xO/wxiEuSz7Xmk6f33aQ7vN5aaEFP3z71ixvxIg2FR9f
	7gbnlN0V3GLJcfAvf0rjIGarPB9IDyeTF9InTUo=
X-Google-Smtp-Source: AGHT+IHWHj9ILTPWExZ8ekeA0/ryyRW0ZV6k5VhEVnOo+k5EpZsvEbKt/nom23K7vTTS2zHZvjjk2tEmm58T8MLLm1U=
X-Received: by 2002:a5b:64d:0:b0:d9b:3b3e:5a07 with SMTP id
 o13-20020a5b064d000000b00d9b3b3e5a07mr2004058ybq.5.1697230999223; Fri, 13 Oct
 2023 14:03:19 -0700 (PDT)
MIME-Version: 1.0
References: <20230807230513.102486-1-vishal.moola@gmail.com>
 <20230807230513.102486-15-vishal.moola@gmail.com> <20231012072505.6160-A-hca@linux.ibm.com>
In-Reply-To: <20231012072505.6160-A-hca@linux.ibm.com>
From: Vishal Moola <vishal.moola@gmail.com>
Date: Fri, 13 Oct 2023 14:03:08 -0700
Message-ID: <CAOzc2px-SFSnmjcPriiB3cm1fNj3+YC8S0VSp4t1QvDR0f4E2A@mail.gmail.com>
Subject: Re: [PATCH mm-unstable v9 14/31] s390: Convert various pgalloc
 functions to use ptdescs
To: Heiko Carstens <hca@linux.ibm.com>
Cc: Andrew Morton <akpm@linux-foundation.org>, Matthew Wilcox <willy@infradead.org>, linux-mm@kvack.org, 
	linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, 
	linux-csky@vger.kernel.org, linux-hexagon@vger.kernel.org, 
	loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, 
	linux-mips@vger.kernel.org, linux-openrisc@vger.kernel.org, 
	linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, 
	linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, 
	sparclinux@vger.kernel.org, linux-um@lists.infradead.org, 
	xen-devel@lists.xenproject.org, kvm@vger.kernel.org, 
	Hugh Dickins <hughd@google.com>, David Hildenbrand <david@redhat.com>, 
	Claudio Imbrenda <imbrenda@linux.ibm.com>, Mike Rapoport <rppt@kernel.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Thu, Oct 12, 2023 at 12:25=E2=80=AFAM Heiko Carstens <hca@linux.ibm.com>=
 wrote:
>
> On Mon, Aug 07, 2023 at 04:04:56PM -0700, Vishal Moola (Oracle) wrote:
> > As part of the conversions to replace pgtable constructor/destructors w=
ith
> > ptdesc equivalents, convert various page table functions to use ptdescs=
.
> >
> > Some of the functions use the *get*page*() helper functions. Convert
> > these to use pagetable_alloc() and ptdesc_address() instead to help
> > standardize page tables further.
> >
> > Acked-by: Mike Rapoport (IBM) <rppt@kernel.org>
> > Signed-off-by: Vishal Moola (Oracle) <vishal.moola@gmail.com>
> > ---
> >  arch/s390/include/asm/pgalloc.h |   4 +-
> >  arch/s390/include/asm/tlb.h     |   4 +-
> >  arch/s390/mm/pgalloc.c          | 128 ++++++++++++++++----------------
> >  3 files changed, 69 insertions(+), 67 deletions(-)
> ...
> > diff --git a/arch/s390/mm/pgalloc.c b/arch/s390/mm/pgalloc.c
> > index d7374add7820..07fc660a24aa 100644
> > --- a/arch/s390/mm/pgalloc.c
> > +++ b/arch/s390/mm/pgalloc.c
> ...
> > @@ -488,16 +486,20 @@ static void base_pgt_free(unsigned long *table)
> >  static unsigned long *base_crst_alloc(unsigned long val)
> >  {
> >       unsigned long *table;
> > +     struct ptdesc *ptdesc;
> >
> > -     table =3D (unsigned long *)__get_free_pages(GFP_KERNEL, CRST_ALLO=
C_ORDER);
> > -     if (table)
> > -             crst_table_init(table, val);
> > +     ptdesc =3D pagetable_alloc(GFP_KERNEL & ~__GFP_HIGHMEM, CRST_ALLO=
C_ORDER);
>
> I guess I must miss something, but what is the reason to mask out
> __GFP_HIGHMEM here? It is not part of GFP_KERNEL, nor does s390 support
> HIGHMEM.

You're not missing anything.

This was replacing __get_free_pages() which also doesn't support HIGHMEM,
so I had that in to ensure a non-HIGHMEM allocation in case a
passed-in gfp_flags
had it set. In hindsight since we're just passing in the GFP flags
directly here, we don't
actually need to mask out GFP_HIGHMEM.


From xen-devel-bounces@lists.xenproject.org Fri Oct 13 21:53:35 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 21:53:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616904.959227 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrQ64-0003K7-Um; Fri, 13 Oct 2023 21:53:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616904.959227; Fri, 13 Oct 2023 21:53: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 1qrQ64-0003K0-Qw; Fri, 13 Oct 2023 21:53:28 +0000
Received: by outflank-mailman (input) for mailman id 616904;
 Fri, 13 Oct 2023 21: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=3A4Z=F3=epam.com=prvs=465081a231=volodymyr_babchuk@srs-se1.protection.inumbo.net>)
 id 1qrQ63-0003HM-J2
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 21:53:27 +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 ee7b92ab-6a12-11ee-9b0e-b553b5be7939;
 Fri, 13 Oct 2023 23:53:24 +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
 39DKQRN5014316; Fri, 13 Oct 2023 21:53:22 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 3tpt07kany-1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT);
 Fri, 13 Oct 2023 21:53:22 +0000
Received: from VI1PR03MB3710.eurprd03.prod.outlook.com (2603:10a6:803:31::18)
 by AS8PR03MB8903.eurprd03.prod.outlook.com (2603:10a6:20b:5bf::22)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.42; Fri, 13 Oct
 2023 21:53:17 +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.6863.047; Fri, 13 Oct 2023
 21:53: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: ee7b92ab-6a12-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=NU6S3w39L/TbxzPMaj7b6Ocd2i2fDuWli/Fpm8DM7U6PfRuNYBNjFOZAEr2BMCBnd+fJ4CBi5b2nH1Mo08SU4/27T0oxxqOmosr+200LxFPiNloyRS6am7LatgT1zpeyn8qihxVFWup2lSg+wd8ElHTY8greNMQRRkw2ts96A/8dor1cxnD2hkpawJSrQW39zmTuXGh2/QAJaF3qCaaqkPZ1fWXyv3is3aI5Y+cQfi4+IfZHyo0jMYBAAYsUyMDrYNkKx8RDkr4iHELOu3BbtDUhEU0zVNdsKDkkrlfzjc5D37CA54V+km0C4qTe4ua+uMo8fxaoV2PtuBA611niTw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=nkDXv62vU7QOL51zrmxi5pP444Uf8Z4Ol+Y4bvu161c=;
 b=dpepRbpzni7kIDO8LfwGB2aSpe6y1i/uZn8XdnWYPQqHi3jfLREKgAwk1ligeU18OVlDCD69ezPss2Cf2jKn/pHzB0ZTmOCgE6zZwKX4ssECVHsH98T0f3kcbmUHprIYg519aoKAIXSZTXCiLHQzuQQzKtf/6YlM+5yxE2kcfzuxOtbTsLEvgNWKoVtLphTkG0XOcU8IjuR6NAXoTPBGPOenDoR+u1NCftnwQzyFPxaIk40Le5wRELDfhHeqy+zQ3F6mbG+aZaiOjpNY1jmRWAyBWhOvyii4Yd6UOAVzEC8XMKOKkJA8r9NjkeY9nGUhJ4ICp67iVflY4mDgv04A/Q==
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=nkDXv62vU7QOL51zrmxi5pP444Uf8Z4Ol+Y4bvu161c=;
 b=BCSgErXY9bRPwoGhWNrQA4nvhoSVW9hf61kaIin84SBCjwv7si+D5iEc4f+WKgP9CQIldjkykXkIc2lnZvS1McfqM3+RiJYaJQMqqV4Gl3oUE648vZd1rHsttczDn4N1/zxxcjtdOsNC4ArtvO6WJ7sheqE9D3AUsL9lPGBQLcd/1DDflF5rmRt+Dv2hCYSIQXqjkHYsw+IJ6jKzEe63h2QJ1aoFVJlFEans+gCEZvlW3HElfVjDUqf04gIAoEgU5w3u0Lf0Z2McrOjyqhIMBHtSzGU+Vtzc6djS1gDbKgWa8pBabv4xSzzsYTYjGsSottSb8266la0uVqiZr8dN0w==
From: Volodymyr Babchuk <Volodymyr_Babchuk@epam.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>,
        =?iso-8859-1?Q?Roger_Pau_Monn=E9?=
	<roger.pau@citrix.com>
Subject: Re: [PATCH v10 12/17] vpci/header: emulate PCI_COMMAND register for
 guests
Thread-Topic: [PATCH v10 12/17] vpci/header: emulate PCI_COMMAND register for
 guests
Thread-Index: AQHZ/Vi+sHqpo/XMzUSHL9PkKFM5oLBIRGIA
Date: Fri, 13 Oct 2023 21:53:17 +0000
Message-ID: <87r0ly6vg4.fsf@epam.com>
References: <20231012220854.2736994-1-volodymyr_babchuk@epam.com>
 <20231012220854.2736994-13-volodymyr_babchuk@epam.com>
In-Reply-To: <20231012220854.2736994-13-volodymyr_babchuk@epam.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_|AS8PR03MB8903:EE_
x-ms-office365-filtering-correlation-id: 961c878e-e2ec-4dfe-9bff-08dbcc36ceac
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: 
 CsKe0jMupCmSoDwixHsrgjVjxQ2KVR9fuMbu3etwqo9wRnLj1Ze2fELV8T+lwFGk4F6VftGva9FZfndAnV8YIxH5uWkrU5zECy0aPE5oIUFjgpxm7Kun6Q/qkIcx7AlZHKemkTDiSXL7PoCmjLEOQxNL3UkIojuqwv+r4802c5U6db1MHHNdm4AhL0O5B4j+S1x+cHOs0l7u5BcSampv+L4l33OI6FigueoYmPAyagbAP5YxGNdWcEreA3YFcPzDsvplP21b8eTgBf4MnISK2UTpotrQT0mCr7uArWqZA0WTPhxMZG82CrgmfYKP1SGU6ZFBybQn6avcKAIfrUPhYQEupcK7zYwiA+sHJ1w3Y3YJwGNBpxkkFrDRJj9bhZ50I+ZLCxyoJtxXh4RO3rRc2vksIrkcwS0wux360t1Xt+Hk350bnS1iHZXmFXHy4Q6ugM1NNIkXhXiQg3QXsdHlYU7O9OybPD2zbpLHpnOau2ikmqqTB/rKT7ZGdS7d1yDnH52zSOSVzao1OVoWBEH3iB3t33/WF9Tr9IFztNPlQfZrGIJ00LNd86O+w+kc2J83OHzxM8R3aqoW2rk0wdUoN2OPJAH1OugCpebcO5OnF1EolCAK/2QjU5kmp1JEkXU9
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)(366004)(396003)(346002)(136003)(39860400002)(376002)(230922051799003)(451199024)(64100799003)(1800799009)(186009)(8936002)(6862004)(8676002)(4326008)(71200400001)(6506007)(76116006)(66476007)(66446008)(64756008)(6486002)(37006003)(54906003)(91956017)(6512007)(66946007)(66556008)(38070700005)(478600001)(55236004)(26005)(122000001)(2616005)(5660300002)(83380400001)(41300700001)(316002)(2906002)(36756003)(6200100001)(38100700002)(86362001);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: 
 =?iso-8859-1?Q?xr1U4uqYswWmJKbEUe1X8jwUFjDWPx6uvMXjXWPPVlr5Fn1RWHUJQ0gF+n?=
 =?iso-8859-1?Q?HdfsOT8j3xBEE5CFwwh/LU+6oV6ATZBlkTChxj/vE+39tJrHxenU4vVLCT?=
 =?iso-8859-1?Q?gNshAITua54Y5gtge3h60v1parEsnS0rclBg9KZuFn8kZLfa7PHc3BJ3xe?=
 =?iso-8859-1?Q?Ok0j6/tLQlz4L0Fdn8McJLIFRxo62bqV3rkKwU1zVjjTUpnlDCaiyBtCqt?=
 =?iso-8859-1?Q?f/pFcS2Z0OARp5T6N2KevGAi9qLhsuzOBJHbzPz4ACfTQvkGVcbM5O1p51?=
 =?iso-8859-1?Q?mYDYPeJX8WHsmpn3Kbo4t53zs/cwJOdkCSxJus/wvbOZUpTXMISp6fRhT5?=
 =?iso-8859-1?Q?5hex9On1igi5XrKUFrBfPkkhL79AgnE4C1i/xdnJbm75EAt/DfpEuQrfXL?=
 =?iso-8859-1?Q?bxykFsi3YNzHQQQgqwmFD4NULZmwelw2tubs7dCk6qfiCNL0Tnbza2S3fs?=
 =?iso-8859-1?Q?6fHU5pCHmuwr3wh6n6knsuYX8/yA6PKWu4J0kQShtoMTikFFfA8YqnRuD0?=
 =?iso-8859-1?Q?5Tug1UjZ/RCHObfxL049GhJpcGCXPH+dozUR32SrDpzaPeOMsvzUIcaxKF?=
 =?iso-8859-1?Q?I0YgHbgNXm+JwzVh1AB01MBYcSC5Cu2w2PKRyHDouvnxDUxuViLwiiUaQ/?=
 =?iso-8859-1?Q?tvbVv3pSfQFfYnR4SISPCVFS1cUnUr6OOahXHEJtJkN7rtkcV00slmYIjm?=
 =?iso-8859-1?Q?rSBA6nZ1HaSNtAUnLt8tdbYZq+UdF1z0kyRwMUgDEbEwj3Dl6spPu7F3RA?=
 =?iso-8859-1?Q?Gghoh7OZ6gVzSFIR3wi25fdBUW4FQYzNP3UCEMgVISnU4hlfrwNOFb06IM?=
 =?iso-8859-1?Q?y0exdIpa6m1K7PKE2z1Gh93SE1/Tvi2JxUThKE/87uBwjjwRNWUf0SM8WH?=
 =?iso-8859-1?Q?GECdSw9jfox54HBakNwodQSzNV+Sz+v+RxBZ7tCN98EAVQARcY0pWFc0pY?=
 =?iso-8859-1?Q?Nlmq1yRG4nugP+h22Vs6MQI//Xt4AkoaFAjlbBF92wSopXmkEPWvUPXYhY?=
 =?iso-8859-1?Q?kZwAJdXZdkGYpjjKmbo3FQguoq6QqMmt8S3E7gRhi72cj7WMGW2OYFiioE?=
 =?iso-8859-1?Q?yJWiB7XxB+qilfmg1Ozmm9lPJmYGh23NKhanuskV1nJf5UoRo4HXYCf0Qr?=
 =?iso-8859-1?Q?MaJm+1sbM9xSN3etlxf3a/JFMhVh/lwa1ZMacIlNh953Un30X71l2nzm2W?=
 =?iso-8859-1?Q?5FXqI0zyzFn73x9QOAwuWX9Hsonm0chApS1xf5zHyQRrGzQao2JjnTRDL4?=
 =?iso-8859-1?Q?PU21tENOCpETe9xESGupvO9Q3kY7RYWQDSi+FcQnCx2XoxAxEphpRMoyxo?=
 =?iso-8859-1?Q?DiD4k/CQJ/HVXt/7Wby1hBYfXkm9Toe+i+eN0fPQ12Kq46LriuaqLiJelt?=
 =?iso-8859-1?Q?Yrw2n36TYsDIoE2LzT0i5FSYIVJe4DUAUUtmBOobkfksxtBVX6xgZWOHQx?=
 =?iso-8859-1?Q?ZxpOHQ8RsLsxG8neyMiZIZG2rL80i5FeIgUsgi67znryqy+nGuMnv6rfPx?=
 =?iso-8859-1?Q?QEL/drkzt9MZ/iLYbYp0kfMRszl1WT4NyKXDMxQdB1yFMz9QGP7RV6+KX2?=
 =?iso-8859-1?Q?g5nxAAfM1rkQ2IBiFO8gf/Jrk7os/krCECroanstSsZf0BgBphszkItL++?=
 =?iso-8859-1?Q?tjAUXpF5/cCZTE32BVn3eLCE4dNLWtRJQ53+WOl9pXotHvcI6I7Gxesw?=
 =?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: 961c878e-e2ec-4dfe-9bff-08dbcc36ceac
X-MS-Exchange-CrossTenant-originalarrivaltime: 13 Oct 2023 21:53:17.0538
 (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: p/dI5LwLcMpAg+xCDoCekKTyYvBai3VopCe9wFo+tYxsqmQH+wFPXtDN39GZedo7tzu1YAyCybgtBHNBms2icKmi6c27U8lSCwS92iUa6VU=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR03MB8903
X-Proofpoint-ORIG-GUID: Sh8Ht7mX0bHKbH9DvRuhR3OCshz_pxwq
X-Proofpoint-GUID: Sh8Ht7mX0bHKbH9DvRuhR3OCshz_pxwq
X-Proofpoint-Virus-Version: vendor=baseguard
 engine=ICAP:2.0.272,Aquarius:18.0.980,Hydra:6.0.619,FMLib:17.11.176.26
 definitions=2023-10-13_12,2023-10-12_01,2023-05-22_02
X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 impostorscore=0 phishscore=0
 spamscore=0 lowpriorityscore=0 malwarescore=0 suspectscore=0
 mlxlogscore=999 priorityscore=1501 adultscore=0 clxscore=1015 mlxscore=0
 bulkscore=0 classifier=spam adjust=0 reason=mlx scancount=1
 engine=8.12.0-2309180000 definitions=main-2310130190


Volodymyr Babchuk <Volodymyr_Babchuk@epam.com> writes:

> 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 nee=
ds
> 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, along with QEMU behavior in the same situation:
>
> PCI_COMMAND_IO - QEMU does not allow a guest to change value of this bit
> in real device. Instead it is always set to 1. A guest can write to this
> register, but writes are ignored.
>
> PCI_COMMAND_MEMORY - QEMU behaves exactly as with PCI_COMMAND_IO. In
> Xen case, we handle writes to this bit by mapping/unmapping BAR
> regions. For devices assigned to DomUs, memory decoding will be
> disabled and the initialization.
>
> PCI_COMMAND_MASTER - Allow guest to control it. QEMU passes through
> writes to this bit.
>
> 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. QEMU passes through writes of this bit, we will do
> the same.
>
> 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. QEMU "emulates" access to
> Cachline Size register by ignoring all writes to it. QEMU passes through
> writes of PCI_COMMAND_INVALIDATE bit, we will do the same.
>
> PCI_COMMAND_VGA_PALETTE - Enable VGA palette snooping. QEMU passes
> through writes of this bit, we will do the same.
>
> PCI_COMMAND_PARITY - Controls how device response to parity
> errors. QEMU ignores writes to this bit, we will do the same.
>
> PCI_COMMAND_WAIT - Reserved. Should be 0, but QEMU passes
> through writes of this bit, so we will do the same.
>
> PCI_COMMAND_SERR - Controls if device can assert SERR. QEMU ignores
> writes to this bit, we will do the same.
>
> 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. QEMU ignores writes to this bit, we will do the same.
>
> PCI_COMMAND_INTX_DISABLE - Disables INTx signals. If MSI(X) is
> enabled, device is prohibited from asserting INTx as per
> specification. Value after reset is 0. In QEMU case, it checks of INTx
> was mapped for a device. If it is not, then guest can't control
> PCI_COMMAND_INTX_DISABLE bit. In our case, we prohibit a guest to
> change value of this bit if MSI(X) is enabled.
>
> Signed-off-by: Oleksandr Andrushchenko <oleksandr_andrushchenko@epam.com>
> Signed-off-by: Volodymyr Babchuk <volodymyr_babchuk@epam.com>
> ---
> In v10:
> - Added cf_check attribute to guest_cmd_read
> - Removed warning about non-zero cmd
> - Updated comment MSI code regarding disabling INTX
> - Used ternary operator in vpci_add_register() call
> - Disable memory decoding for DomUs in init_bars()
> In 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 | 44 +++++++++++++++++++++++++++++++++++----
>  xen/drivers/vpci/msi.c    |  6 ++++++
>  xen/drivers/vpci/msix.c   |  4 ++++
>  xen/include/xen/vpci.h    |  3 +++
>  4 files changed, 53 insertions(+), 4 deletions(-)
>
> diff --git a/xen/drivers/vpci/header.c b/xen/drivers/vpci/header.c
> index efce0bc2ae..e8eed6a674 100644
> --- a/xen/drivers/vpci/header.c
> +++ b/xen/drivers/vpci/header.c
> @@ -501,14 +501,32 @@ static int modify_bars(const struct pci_dev *pdev, =
uint16_t cmd, bool rom_only)
>      return 0;
>  }
> =20
> +/* 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 *da=
ta)
>  {
>      struct vpci_header *header =3D data;
> =20
> +    if ( !is_hardware_domain(pdev->domain) )
> +    {
> +        const struct vpci *vpci =3D pdev->vpci;
> +        uint16_t excluded =3D PCI_COMMAND_PARITY | PCI_COMMAND_SERR |
> +            PCI_COMMAND_FAST_BACK;
> +
> +        header->guest_cmd =3D cmd;
> +
> +        if ( (vpci->msi && vpci->msi->enabled) ||
> +             (vpci->msix && vpci->msi->enabled) )

There is a nasty mistake. It should be
                (vpci->msix && vpci->msix->enabled)

> +            excluded |=3D PCI_COMMAND_INTX_DISABLE;
> +
> +        cmd &=3D ~excluded;
> +        cmd |=3D pci_conf_read16(pdev->sbdf, reg) & excluded;
> +    }
> +
>      /*
> -     * 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 !=3D !!(cmd & PCI_COMMAND_MEMORY) )
>          /*
> @@ -522,6 +540,14 @@ static void cf_check cmd_write(
>          pci_conf_write16(pdev->sbdf, reg, cmd);
>  }
> =20
> +static uint32_t cf_check guest_cmd_read(
> +    const struct pci_dev *pdev, unsigned int reg, void *data)
> +{
> +    const struct vpci_header *header =3D data;
> +
> +    return header->guest_cmd;
> +}
> +
>  static void cf_check bar_write(
>      const struct pci_dev *pdev, unsigned int reg, uint32_t val, void *da=
ta)
>  {
> @@ -737,8 +763,9 @@ static int cf_check init_bars(struct pci_dev *pdev)
>      }
> =20
>      /* Setup a handler for the command register. */
> -    rc =3D vpci_add_register(pdev->vpci, vpci_hw_read16, cmd_write, PCI_=
COMMAND,
> -                           2, header);
> +    rc =3D vpci_add_register(pdev->vpci,
> +                           is_hwdom ? vpci_hw_read16 : guest_cmd_read,
> +                           cmd_write, PCI_COMMAND, 2, header);
>      if ( rc )
>          return rc;
> =20
> @@ -750,6 +777,15 @@ 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_MEM=
ORY);
> =20
> +    /*
> +     * Clear PCI_COMMAND_MEMORY for DomUs, so they will always start wit=
h
> +     * memory decoding disabled and to ensure that we will not call modi=
fy_bars()
> +     * at the end of this function.
> +     */
> +    if ( !is_hwdom )
> +        cmd &=3D ~PCI_COMMAND_MEMORY;
> +    header->guest_cmd =3D cmd;
> +
>      for ( i =3D 0; i < num_bars; i++ )
>      {
>          uint8_t reg =3D PCI_BASE_ADDRESS_0 + i * 4;
> diff --git a/xen/drivers/vpci/msi.c b/xen/drivers/vpci/msi.c
> index 2faa54b7ce..0920bd071f 100644
> --- a/xen/drivers/vpci/msi.c
> +++ b/xen/drivers/vpci/msi.c
> @@ -70,6 +70,12 @@ static void cf_check control_write(
> =20
>          if ( vpci_msi_arch_enable(msi, pdev, vectors) )
>              return;
> +
> +        /*
> +         * Make sure guest doesn't enable INTx while enabling MSI.
> +         */
> +        if ( !is_hardware_domain(pdev->domain) )
> +            pci_intx(pdev, false);
>      }
>      else
>          vpci_msi_arch_disable(msi, pdev);
> diff --git a/xen/drivers/vpci/msix.c b/xen/drivers/vpci/msix.c
> index b6abab47ef..9d0233d0e3 100644
> --- a/xen/drivers/vpci/msix.c
> +++ b/xen/drivers/vpci/msix.c
> @@ -97,6 +97,10 @@ static void cf_check control_write(
>          for ( i =3D 0; i < msix->max_entries; i++ )
>              if ( !msix->entries[i].masked && msix->entries[i].updated )
>                  update_entry(&msix->entries[i], pdev, i);
> +
> +        /* Make sure guest doesn't enable INTx while enabling MSI-X. */
> +        if ( !is_hardware_domain(pdev->domain) )
> +            pci_intx(pdev, false);
>      }
>      else if ( !new_enabled && msix->enabled )
>      {
> diff --git a/xen/include/xen/vpci.h b/xen/include/xen/vpci.h
> index c5301e284f..60bdc10c13 100644
> --- a/xen/include/xen/vpci.h
> +++ b/xen/include/xen/vpci.h
> @@ -87,6 +87,9 @@ struct vpci {
>          } bars[PCI_HEADER_NORMAL_NR_BARS + 1];
>          /* At most 6 BARS + 1 expansion ROM BAR. */
> =20
> +        /* Guest view of the PCI_COMMAND register. */
> +        uint16_t guest_cmd;
> +
>          /*
>           * Store whether the ROM enable bit is set (doesn't imply ROM BA=
R
>           * is mapped into guest p2m) if there's a ROM BAR on the device.


--=20
WBR, Volodymyr=


From xen-devel-bounces@lists.xenproject.org Fri Oct 13 22:31:58 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 22:31:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616910.959237 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrQh3-0001A5-TE; Fri, 13 Oct 2023 22:31:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616910.959237; Fri, 13 Oct 2023 22: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 1qrQh3-00019y-Pl; Fri, 13 Oct 2023 22:31:41 +0000
Received: by outflank-mailman (input) for mailman id 616910;
 Fri, 13 Oct 2023 22: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=4sWS=F3=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qrQh2-00019s-71
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 22:31: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 45edc430-6a18-11ee-98d4-6d05b1d4d9a1;
 Sat, 14 Oct 2023 00:31:38 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by ams.source.kernel.org (Postfix) with ESMTP id A4A2DB82C43;
 Fri, 13 Oct 2023 22:31:37 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 51156C433C8;
 Fri, 13 Oct 2023 22:31: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: 45edc430-6a18-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1697236297;
	bh=yZ/D+SBuf6S/p2ilda8uRAjrp6VYuqFTgsy8KGi5nhs=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=PIRv2IL4pYnhyW/9xVrANLNBjEdkfVOC/vfU/6GRbKWqkntBUhH+qr4Mn5AvR+1Jy
	 v7utky4fXKurxveoNiz5lEGpQ/DrD+PZk9405TUvIgMKYRzEvcp3z/cAz+I5xH0paw
	 WLCkQslFOJ9I9nZyE9AurPJon1M3k0XwnS7O611bn4x8AYoOuWBQCKVoMCgem0IDQH
	 o6Ih7smR+Obs+Q4x6f+4oBETK0EBSC9u0GM0bozQqkpkCy3+LayDviUleDKsDQ1CvO
	 pvEmm5PqbeS1U6jf6owSQS8bV7grDO8M0b/3b/H1/MrMWtXH0bI7N5NY1qvUcaMV36
	 Mt8TY1E/HCRqw==
Date: Fri, 13 Oct 2023 15:31:33 -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 v3 2/2] docs/misra: add deviations.rst to document
 additional deviations.
In-Reply-To: <36464fe1db154454548d19bf437a7838e519512a.1697191850.git.nicola.vetrini@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2310131531270.965337@ubuntu-linux-20-04-desktop>
References: <cover.1697191850.git.nicola.vetrini@bugseng.com> <36464fe1db154454548d19bf437a7838e519512a.1697191850.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, 13 Oct 2023, Nicola Vetrini wrote:
> This file contains the deviation that are not marked by
> a deviation comment, as specified in
> docs/misra/documenting-violations.rst.
> 
> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
> Release-acked-by: Henry Wang <Henry.Wang@arm.com>

Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>


From xen-devel-bounces@lists.xenproject.org Fri Oct 13 23:06:42 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 23:06:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616913.959247 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrREl-0006yc-I8; Fri, 13 Oct 2023 23:06:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616913.959247; Fri, 13 Oct 2023 23:06: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 1qrREl-0006yV-Ep; Fri, 13 Oct 2023 23:06:31 +0000
Received: by outflank-mailman (input) for mailman id 616913;
 Fri, 13 Oct 2023 23:06: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=4sWS=F3=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qrREk-0006yP-7a
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 23:06: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 23fbb7a8-6a1d-11ee-98d4-6d05b1d4d9a1;
 Sat, 14 Oct 2023 01:06:28 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by ams.source.kernel.org (Postfix) with ESMTP id 042E0B82C26;
 Fri, 13 Oct 2023 23:06:28 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 6F43AC433C7;
 Fri, 13 Oct 2023 23:06: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: 23fbb7a8-6a1d-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1697238387;
	bh=87Gjsk4VvEL82nSTllu/9UJTiYiNbtBHSO6aHVA5vfk=;
	h=From:To:Cc:Subject:Date:From;
	b=ZFYu5tV814uQkQAOzCeo1X6dr6Elj4igQ7gxVJbw2eHZcwFrlBfyDxaaIf0FhCE0u
	 LiLbeVlrqUZliO2uq1qeh1coIIDRy/D/e8kIfH8cyg8MNrGOnoVtu04sEjipGuvLMl
	 DXKfVblYP5jZ10o6lcu6ZqtXV2flBNxuHRJ/7Yah9WIOKg3ux2NCtF9Gc2gkvlpRRt
	 lrkNfW8nluHx3RucdNo9k75AiIjxlvvQKGfabeeg0iQuxE8lBaMPTGrfW4louz4vgv
	 lrsGvIR0yLE4ZbTRc0th65vBYKkLHBKijttk++wgm6Y9+ra1seJOV1hn1pkcqWE+ab
	 //gd8XtTlhE0A==
From: Stefano Stabellini <sstabellini@kernel.org>
To: xen-devel@lists.xenproject.org
Cc: sstabellini@kernel.org,
	George Dunlap <george.dunlap@cloud.com>,
	Stefano Stabellini <stefano.stabellini@amd.com>,
	jgross@suse.com,
	julien@xen.org,
	wl@xen.org
Subject: [PATCH] cxenstored: wait until after reset to notify dom0less domains
Date: Fri, 13 Oct 2023 16:06:24 -0700
Message-Id: <20231013230624.1007969-1-sstabellini@kernel.org>
X-Mailer: git-send-email 2.25.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

From: George Dunlap <george.dunlap@cloud.com>

Commit fc2b57c9a ("xenstored: send an evtchn notification on
introduce_domain") introduced the sending of an event channel to the
guest when first introduced, so that dom0less domains waiting for the
connection would know that xenstore was ready to use.

Unfortunately, it was introduced in introduce_domain(), which 1) is
called by other functions, where such functionality is unneeded, and
2) after the main XS_INTRODUCE call, calls domain_conn_reset().  This
introduces a race condition, whereby if xenstored is delayed, a domain
can wake up, send messages to the buffer, only to have them deleted by
xenstore before finishing its processing of the XS_INTRODUCE message.

Move the connect-and-notfy call into do_introduce() instead, after the
domain_conn_rest(); predicated on the state being in the
XENSTORE_RECONNECT state.

(We don't need to check for "restoring", since that value is always
passed as "false" from do_domain_introduce()).

Also take the opportunity to add a missing wmb barrier after resetting
the indexes of the ring in domain_conn_reset.

This change will also remove an extra event channel notification for
dom0 (because the notification is now done by do_introduce which is not
called for dom0.) The extra dom0 event channel notification was only
introduced by fc2b57c9a and was never present before. It is not needed
because dom0 is the one to tell xenstored the connection parameters, so
dom0 has to know that the ring page is setup correctly by the time
xenstored starts looking at it. It is dom0 that performs the ring page
init.

Signed-off-by: George Dunlap <george.dunlap@cloud.com>
Signed-off-by: Stefano Stabellini <stefano.stabellini@amd.com>
CC: jgross@suse.com
CC: julien@xen.org
CC: wl@xen.org
---
 tools/xenstored/domain.c | 14 ++++++++------
 1 file changed, 8 insertions(+), 6 deletions(-)

diff --git a/tools/xenstored/domain.c b/tools/xenstored/domain.c
index a6cd199fdc..f6ef37856c 100644
--- a/tools/xenstored/domain.c
+++ b/tools/xenstored/domain.c
@@ -923,6 +923,7 @@ static void domain_conn_reset(struct domain *domain)
 
 	domain->interface->req_cons = domain->interface->req_prod = 0;
 	domain->interface->rsp_cons = domain->interface->rsp_prod = 0;
+	xen_wmb();
 }
 
 /*
@@ -988,12 +989,6 @@ static struct domain *introduce_domain(const void *ctx,
 		/* Now domain belongs to its connection. */
 		talloc_steal(domain->conn, domain);
 
-		if (!restore) {
-			/* Notify the domain that xenstore is available */
-			interface->connection = XENSTORE_CONNECTED;
-			xenevtchn_notify(xce_handle, domain->port);
-		}
-
 		if (!is_master_domain && !restore)
 			fire_special_watches("@introduceDomain");
 	} else {
@@ -1033,6 +1028,13 @@ int do_introduce(const void *ctx, struct connection *conn,
 
 	domain_conn_reset(domain);
 
+	if (domain->interface != NULL &&
+		domain->interface->connection == XENSTORE_RECONNECT) {
+		/* Notify the domain that xenstore is available */
+		domain->interface->connection = XENSTORE_CONNECTED;
+		xenevtchn_notify(xce_handle, domain->port);
+	}
+
 	send_ack(conn, XS_INTRODUCE);
 
 	return 0;
-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Fri Oct 13 23:07:29 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 23:07:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616916.959257 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrRFg-0007Tk-SI; Fri, 13 Oct 2023 23:07:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616916.959257; Fri, 13 Oct 2023 23:07: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 1qrRFg-0007Td-P4; Fri, 13 Oct 2023 23:07:28 +0000
Received: by outflank-mailman (input) for mailman id 616916;
 Fri, 13 Oct 2023 23:07: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=4sWS=F3=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qrRFf-0007SL-FU
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 23:07:27 +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 458f9d25-6a1d-11ee-9b0e-b553b5be7939;
 Sat, 14 Oct 2023 01:07:25 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by ams.source.kernel.org (Postfix) with ESMTP id 7627AB82BD0;
 Fri, 13 Oct 2023 23:07:24 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 53374C433C7;
 Fri, 13 Oct 2023 23:07: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: 458f9d25-6a1d-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1697238443;
	bh=8PugfQ/uo/8XH2Bfr3Xr9D1/05cFQ+kpfaEm7MS6JMM=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=unVLhUbf0xdtqTd1iIpQyYjDGom0ZLbQ2kLJ04dPl3n2oCeBTFvXlG0nbVAUhHPQV
	 70aGpFI4Ncp5H+ugzM+lTtv1jabMn3ibBvtWnvytu+6hN1M65u6XEq7vptRWqNwCyU
	 04F5gMLQaWNq8djOt1s+R0UBYwBLBm3nbQLBBhAP2loz0vrPpmoHXjNU2ApdfM7pJ2
	 F0jy2uEFCYV0ZB8C8tJZ2usd+ND80BJYfkcaUCnyerp5d4I+ahUQEb96Che9ZCmGGx
	 +UrQsemPfiuEXYCCSnJ3hqjDkCSwYsjpYVAna8gp1Hwj4D3gjuPxPjPO+gGeWz5r6B
	 Zlki45FLScaKg==
Date: Fri, 13 Oct 2023 16:07:21 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Julien Grall <julien@xen.org>
cc: George Dunlap <george.dunlap@cloud.com>, 
    Stefano Stabellini <sstabellini@kernel.org>, 
    Andrew Cooper <andrew.cooper3@citrix.com>, Henry Wang <Henry.Wang@arm.com>, 
    "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.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: <5af543d2-b18b-46c0-87ef-8af99dec81b3@xen.org>
Message-ID: <alpine.DEB.2.22.394.2310131549010.965337@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> <alpine.DEB.2.22.394.2309271658500.1403502@ubuntu-linux-20-04-desktop>
 <CA+zSX=ZbeUFrfAUJShooJFJ+d89f4xdXfJJ9HoJKRh4UStkTFQ@mail.gmail.com> <alpine.DEB.2.22.394.2310121535580.3431292@ubuntu-linux-20-04-desktop> <CA+zSX=Y5dMVFM6dVNgBRHxKc0C1e5WGgweQ0FaXXCfAFGH1aPA@mail.gmail.com> <a93839b8-932a-4634-9549-081df950afb2@xen.org>
 <CA+zSX=a972GC=_FKK2eGkArPb6RszCHDN0+6JKFJiMjoMpAySQ@mail.gmail.com> <f973db5f-da72-4aa2-a35e-1e6652b181bf@xen.org> <CA+zSX=bpq6sJmP7TzC+3vgTJyZcCdZc5M-BGEaOkkXt7BoQZJg@mail.gmail.com> <a1c3de32-7fcb-4c3d-a95b-7aa58c493f52@xen.org>
 <CA+zSX=ad_g5CWkFjs0Cu1=HaTYTLmRpUE8gFVZ+4AJ3meG-0Yw@mail.gmail.com> <5af543d2-b18b-46c0-87ef-8af99dec81b3@xen.org>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: multipart/mixed; BOUNDARY="8323329-345707392-1697237498=:965337"
Content-ID: <alpine.DEB.2.22.394.2310131602080.965337@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-345707392-1697237498=:965337
Content-Type: text/plain; CHARSET=UTF-8
Content-Transfer-Encoding: 8BIT
Content-ID: <alpine.DEB.2.22.394.2310131602081.965337@ubuntu-linux-20-04-desktop>

On Fri, 13 Oct 2023, Julien Grall wrote:
> Hi George,
> 
> On 13/10/2023 17:06, George Dunlap wrote:
> > On Fri, Oct 13, 2023 at 4:56 PM Julien Grall <julien@xen.org> wrote:
> > > > The initial patch that
> > > > introduced it didn't mention wanting to include dom0 specifically; on
> > > > the contrary it said:
> > > > 
> > > > "The extra notification is harmless for domains that don't require it."
> > > 
> > > ... even if this is what the commit message says, we can't tell whether
> > > someone would start to rely on it. I definitely see use-cases for it.
> > > 
> > > But I agree that the chance they are actualy used is slim as we didn't
> > > document it.
> > 
> > If a dom0 kernel started relying on the behavior, it would be a bug,
> > since it would be incompatible with releases before 4.16.  So I think
> > the only risk here would be if some bit of a system's userspace
> > tooling relied on it; but I can't really see how that would come to
> > be.
> > 
> > If someone reports a bug, we can always add the reporting back, when
> > we're not under time pressure.
> > 
> > > Your reasoning makes sense. I don't fully agree with it, but at the end
> > > of the day we need to have a solution for dom0less guests... So if the
> > > others agree with you, then I will disagree and commit.
> > > 
> > > That said, I think the commit message should explain why removing dom0
> > > notification is ok.
> > 
> > Yes, absolutely.
> > 
> > Do you or Stefano want to pick it up?  I think you'd be able to test
> > it more thoroughly.  I can build-test it and send it to gitlab-CI, but
> > anything more will take a lot more setup.
> 
> I just asked you a similar question on Matrix. :) Stefano was able to
> reproduce the issue. So it would probably be best for him to pick up at least
> the testing part.
> 
> Stefano, do you have some cycle to send the patch as well? If not, I can do
> it.

I have done the work and the patch works:

https://marc.info/?l=xen-devel&m=169723822001933

However, you should know that I tried to reproduce the original race
condition without the patch, but I couldn't.
--8323329-345707392-1697237498=:965337--


From xen-devel-bounces@lists.xenproject.org Fri Oct 13 23:09:39 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 23:09:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616921.959267 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrRHm-00085i-7b; Fri, 13 Oct 2023 23:09:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616921.959267; Fri, 13 Oct 2023 23: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 1qrRHm-00085b-4V; Fri, 13 Oct 2023 23:09:38 +0000
Received: by outflank-mailman (input) for mailman id 616921;
 Fri, 13 Oct 2023 23:09: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=4sWS=F3=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qrRHl-00085V-AT
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 23:09:37 +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 92b13edb-6a1d-11ee-9b0e-b553b5be7939;
 Sat, 14 Oct 2023 01:09:35 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by dfw.source.kernel.org (Postfix) with ESMTP id 7CCCD621AE;
 Fri, 13 Oct 2023 23:09:33 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 2B8E6C433C7;
 Fri, 13 Oct 2023 23:09:32 +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: 92b13edb-6a1d-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1697238573;
	bh=M303czI56qsf74+hRyGl5GbH+VNDYMPKt23eMUsxU2o=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=LribqiXJa0uD+B0RQ2m3iWYRIpzp4WYfL4bezFxsILV0awmUbn0Ujv5MTvTCVCebY
	 jXBxDWxjlMLnZHhJ8zaTgliS54lXylvTqsLM/ZfTEI/tSZnhdjnGNS6zD0Fp6t3Xz8
	 g3x9b3EzFrvUj2Q8OtEw3MeRYl4vjVjzr0Ddnz3UjM2WnH0EfJiEpZnkW0tfj/7kXE
	 bOK2RwFEw6TZxo9G6xQ/qf1kXm3ybCQXdGxS+iisbTq0fq3a1rm3rPvVfvJZ7Oho8T
	 X5rsPhwlQJfDJUWJmzN/mKmohbCUhdAutX+ldOgD6nLDZyp/mRIvhZQDHWHwCjW0a1
	 SJuUMhguGHK0A==
Date: Fri, 13 Oct 2023 16:09:30 -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, 
    Stefano Stabellini <sstabellini@kernel.org>, Julien Grall <julien@xen.org>, 
    Bertrand Marquis <bertrand.marquis@arm.com>, 
    Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, 
    Henry Wang <henry.wang@arm.com>
Subject: Re: [XEN PATCH 01/10] arm/gic: address violations of MISRA C:2012
 Rule 8.2
In-Reply-To: <e55bfe55e0c34e96692f397ff69365bc0819fd90.1697207038.git.federico.serafini@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2310131609220.965337@ubuntu-linux-20-04-desktop>
References: <cover.1697207038.git.federico.serafini@bugseng.com> <e55bfe55e0c34e96692f397ff69365bc0819fd90.1697207038.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, 13 Oct 2023, Federico Serafini wrote:
> Add missing parameter names, 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 Oct 13 23:12:22 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 23:12:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616924.959277 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrRKM-00016R-L2; Fri, 13 Oct 2023 23:12:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616924.959277; Fri, 13 Oct 2023 23:12: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 1qrRKM-00016K-HO; Fri, 13 Oct 2023 23:12:18 +0000
Received: by outflank-mailman (input) for mailman id 616924;
 Fri, 13 Oct 2023 23:12: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=4sWS=F3=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qrRKL-00016E-Jq
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 23:12:17 +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 f2bb7974-6a1d-11ee-98d4-6d05b1d4d9a1;
 Sat, 14 Oct 2023 01:12:16 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by dfw.source.kernel.org (Postfix) with ESMTP id 0F56C621AE;
 Fri, 13 Oct 2023 23:12:15 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id A43A1C433C7;
 Fri, 13 Oct 2023 23:12: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: f2bb7974-6a1d-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1697238734;
	bh=c/S0aP8OabNanKcGxYrrLL26ucaA/41ziMV34EFe+vg=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=DX7pij0mtSuq0i/63ct80Ms3BIbmgEnHjDbaXUd/3XdO9jIb+Nyy7G9NX8gvrZcTL
	 GLKgXvv4CbIFeqM2RCvlDr75NXhlkaT0K8397yQPSukhVxfmcJMw5KsHi5RNupRvDe
	 Fmb0buuSk+kUsQgoDFxlMk209n8EIGZqYxY5Dbgo16iBMWBbf8ED3QIec08yVMlOGy
	 J4VZP+lC//9roMKlXkFsWbeTkhF0wAZy0UYUD+rdnfLle7Pe0/66tJjfRPC/bbg4mf
	 poJa03ZcN8YNj/hrNnV0VvqUmF+v2E04PlpvcaRNsQ7qcFv6WMGHsGdy4iog5FQNdX
	 TCyalDJv21EAA==
Date: Fri, 13 Oct 2023 16:12:12 -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, 
    Stefano Stabellini <sstabellini@kernel.org>, Julien Grall <julien@xen.org>, 
    Bertrand Marquis <bertrand.marquis@arm.com>, 
    Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, 
    Henry Wang <henry.wang@arm.com>
Subject: Re: [XEN PATCH 02/10] arm/cpufeature: address violations of MISRA
 C:2012 Rule 8.2
In-Reply-To: <3b28dca993cac9391b997c1744218cf4062907df.1697207038.git.federico.serafini@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2310131610440.965337@ubuntu-linux-20-04-desktop>
References: <cover.1697207038.git.federico.serafini@bugseng.com> <3b28dca993cac9391b997c1744218cf4062907df.1697207038.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, 13 Oct 2023, Federico Serafini wrote:
> Add missing parameter names, no functional change.
> 
> Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
> ---
>  xen/arch/arm/include/asm/cpufeature.h | 8 ++++----
>  1 file changed, 4 insertions(+), 4 deletions(-)
> 
> diff --git a/xen/arch/arm/include/asm/cpufeature.h b/xen/arch/arm/include/asm/cpufeature.h
> index 8011076b8c..41e97c23dd 100644
> --- a/xen/arch/arm/include/asm/cpufeature.h
> +++ b/xen/arch/arm/include/asm/cpufeature.h
> @@ -127,8 +127,8 @@ static inline void cpus_set_cap(unsigned int num)
>  struct arm_cpu_capabilities {
>      const char *desc;
>      u16 capability;
> -    bool (*matches)(const struct arm_cpu_capabilities *);
> -    int (*enable)(void *); /* Called on every active CPUs */
> +    bool (*matches)(const struct arm_cpu_capabilities *caps);

all the implementations of matches I found in xen/arch/arm/cpuerrata.c
actually call the parameter "entry"


> +    int (*enable)(void *ptr); /* Called on every active CPUs */

this one instead is "data"


>      union {
>          struct {    /* To be used for eratum handling only */
>              u32 midr_model;
> @@ -448,10 +448,10 @@ struct cpuinfo_arm {
>  
>  extern struct cpuinfo_arm system_cpuinfo;
>  
> -extern void identify_cpu(struct cpuinfo_arm *);
> +extern void identify_cpu(struct cpuinfo_arm *c);
>  
>  #ifdef CONFIG_ARM_64
> -extern void update_system_features(const struct cpuinfo_arm *);
> +extern void update_system_features(const struct cpuinfo_arm *new);
>  #else
>  static inline void update_system_features(const struct cpuinfo_arm *cpuinfo)
>  {
> -- 
> 2.34.1
> 


From xen-devel-bounces@lists.xenproject.org Fri Oct 13 23:13:05 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 23:13:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616928.959287 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrRL6-0001cM-Tt; Fri, 13 Oct 2023 23:13:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616928.959287; Fri, 13 Oct 2023 23: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 1qrRL6-0001cF-Qm; Fri, 13 Oct 2023 23:13:04 +0000
Received: by outflank-mailman (input) for mailman id 616928;
 Fri, 13 Oct 2023 23:13: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=4sWS=F3=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qrRL5-0001T4-6n
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 23:13:03 +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 0d124045-6a1e-11ee-9b0e-b553b5be7939;
 Sat, 14 Oct 2023 01:13:01 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by sin.source.kernel.org (Postfix) with ESMTP id 6E36FCE31DF;
 Fri, 13 Oct 2023 23:12:58 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 4B0A5C433C8;
 Fri, 13 Oct 2023 23:12: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: 0d124045-6a1e-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1697238777;
	bh=YXrD7RxguoGKemOAbsD5zWRMjATYaPjRi4C5tjERld8=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=aWia2eXv622IrEKJrp3oIR0QOh8lITlP+2zwjbVUBEEiCiAV7CKfyrBsGJNore2rC
	 hhrHj/bn8GtoSm3vu6mhQxaZHBKBSpHB2CJqO4qk8T8YVIOGgd3Kjm5Avdqy5h16xK
	 ETRxXMpc26gheB9X3LRQ5kdOBZrxNJP/I9UENgAC5SMyLyrY02AO3qZzvrDVxw3WCu
	 Y5xT4QcQUsO698kTksqYeZKNCfiwWXHywtuAKBRwLsrX/7kcstzaQLwCZ9VL+viwHY
	 RSoD3TQYMc5amSUMXGk0JhEDffMHnx+bGQ9Hc8lJQ5b0nClR/CYSrp0GiM+tRcVkUj
	 3lDWjgHfFNFdQ==
Date: Fri, 13 Oct 2023 16:12:54 -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, 
    Stefano Stabellini <sstabellini@kernel.org>, Julien Grall <julien@xen.org>, 
    Bertrand Marquis <bertrand.marquis@arm.com>, 
    Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, 
    Henry Wang <henry.wang@arm.com>
Subject: Re: [XEN PATCH 03/10] arm/smpboot: address violations of MISRA C:2012
 Rule 8.2
In-Reply-To: <9ff244730ac8a69598699acf663c086a5272ac82.1697207038.git.federico.serafini@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2310131612480.965337@ubuntu-linux-20-04-desktop>
References: <cover.1697207038.git.federico.serafini@bugseng.com> <9ff244730ac8a69598699acf663c086a5272ac82.1697207038.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, 13 Oct 2023, Federico Serafini wrote:
> Add missing parameter name, 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 Oct 13 23:16:23 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 23:16:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616931.959297 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrROI-00036j-DF; Fri, 13 Oct 2023 23:16:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616931.959297; Fri, 13 Oct 2023 23:16: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 1qrROI-00036c-9G; Fri, 13 Oct 2023 23:16:22 +0000
Received: by outflank-mailman (input) for mailman id 616931;
 Fri, 13 Oct 2023 23:16: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=4sWS=F3=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qrROG-00036W-KW
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 23:16: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 8464713a-6a1e-11ee-98d4-6d05b1d4d9a1;
 Sat, 14 Oct 2023 01:16:19 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by ams.source.kernel.org (Postfix) with ESMTP id 38532B82C26;
 Fri, 13 Oct 2023 23:16:19 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 8741FC433C7;
 Fri, 13 Oct 2023 23:16: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: 8464713a-6a1e-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1697238978;
	bh=M303czI56qsf74+hRyGl5GbH+VNDYMPKt23eMUsxU2o=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=sjsArB+ELupp4bfyI1faGHIV2BT+ABNKaodWSvcPml0mETpRbvvDJrDx1r5pztl83
	 Zh/uuAvNbU+gLEmJN1ovK+90LR9B7aXXmbqU4/i22C8RvCmvdOpuxOXuCBp4Uqdk9z
	 GdtqVUS2ztjSAKE89j1e026Y5/962HVF3jEwkt9xNrYU4Cpd60P7Ki7KJeyQzoC7kr
	 UWP4Pr2GTYXEpQXS4+7S4ZPVN2q4NGavJKf+3Nd16eK/leVrF1O4a6pV/8UKE7xg0S
	 N9a9OO/+Ten6qDczzAPgSEqLb2v/nlKcpv9Dtu6RSNJTNFlqfEheoXiypkalb4kF/u
	 JsKSl+AuRB6sw==
Date: Fri, 13 Oct 2023 16:16:16 -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, 
    Stefano Stabellini <sstabellini@kernel.org>, Julien Grall <julien@xen.org>, 
    Bertrand Marquis <bertrand.marquis@arm.com>, 
    Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, 
    Henry Wang <henry.wang@arm.com>
Subject: Re: [XEN PATCH 04/10] arm/setup: address violations of MISRA C:2012
 Rule 8.2
In-Reply-To: <b71d8ef87be08e84360efebd7c5644521b3a6661.1697207038.git.federico.serafini@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2310131614160.965337@ubuntu-linux-20-04-desktop>
References: <cover.1697207038.git.federico.serafini@bugseng.com> <b71d8ef87be08e84360efebd7c5644521b3a6661.1697207038.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, 13 Oct 2023, Federico Serafini wrote:
> Add missing parameter names, 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 Oct 13 23:16:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 23:16:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616935.959307 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrROm-0003bp-Oa; Fri, 13 Oct 2023 23:16:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616935.959307; Fri, 13 Oct 2023 23:16: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 1qrROm-0003bi-LD; Fri, 13 Oct 2023 23:16:52 +0000
Received: by outflank-mailman (input) for mailman id 616935;
 Fri, 13 Oct 2023 23: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=4sWS=F3=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qrROl-00036W-HU
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 23:16:51 +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 96f5e701-6a1e-11ee-98d4-6d05b1d4d9a1;
 Sat, 14 Oct 2023 01:16: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 B5D85B82C26;
 Fri, 13 Oct 2023 23:16:50 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 2191DC433C8;
 Fri, 13 Oct 2023 23:16: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: 96f5e701-6a1e-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1697239010;
	bh=YXrD7RxguoGKemOAbsD5zWRMjATYaPjRi4C5tjERld8=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=i6veIUmvH91j3yih9Vd5TQtBmkDyMbCTVivuWVDlauY7QjI3LZoqXYGLJLMO+fsj4
	 3ElOXE1h8I1zQ3mtelNY0doihPOARzQUi5KpZ4BahHVxVUd5ddPOvS7SUnDg6fuYMi
	 DEku3x67ZaGHcksah5HnW37mvyHweDHKAY6ktV3BJyX8/woIC5ViY8Kh0WrscINmvz
	 Eew97OabACxbgP6GqpHlp8N/jWbmynIaQaBAQDMr+Bk5uX3CdYhnAhcTmX11sRLVYI
	 O53YrgU2GQCOylynFQsZdSNxDXw5TriUJjduJR8gG9EezuP0rZurj/bP1DumxNv0xF
	 J7LHtohKzuk8Q==
Date: Fri, 13 Oct 2023 16:16:47 -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, 
    Stefano Stabellini <sstabellini@kernel.org>, Julien Grall <julien@xen.org>, 
    Bertrand Marquis <bertrand.marquis@arm.com>, 
    Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, 
    Henry Wang <henry.wang@arm.com>
Subject: Re: [XEN PATCH 05/10] arm/p2m: address a violation of MISRA C:2012
 Rule 8.2
In-Reply-To: <b8dcbbbe9e6546f03ecc6e6a0c617cf98da9786a.1697207038.git.federico.serafini@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2310131616420.965337@ubuntu-linux-20-04-desktop>
References: <cover.1697207038.git.federico.serafini@bugseng.com> <b8dcbbbe9e6546f03ecc6e6a0c617cf98da9786a.1697207038.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, 13 Oct 2023, Federico Serafini wrote:
> Add missing parameter name, 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 Oct 13 23:17:44 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 23:17:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616938.959317 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrRPX-0004Ed-0a; Fri, 13 Oct 2023 23:17:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616938.959317; Fri, 13 Oct 2023 23:17: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 1qrRPW-0004EW-Tf; Fri, 13 Oct 2023 23:17:38 +0000
Received: by outflank-mailman (input) for mailman id 616938;
 Fri, 13 Oct 2023 23:17: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=4sWS=F3=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qrRPW-0004EH-4l
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 23:17:38 +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 b1ea8115-6a1e-11ee-98d4-6d05b1d4d9a1;
 Sat, 14 Oct 2023 01:17:37 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by dfw.source.kernel.org (Postfix) with ESMTP id B413762202;
 Fri, 13 Oct 2023 23:17:35 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 67E10C433C7;
 Fri, 13 Oct 2023 23:17: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: b1ea8115-6a1e-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1697239055;
	bh=M303czI56qsf74+hRyGl5GbH+VNDYMPKt23eMUsxU2o=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=uzg1LlGf+/BwXfEerXQD8O/J8Zk4zRDFNPd2CiH3ObtW0ypMkBB186mSrhFIjhtr2
	 CBmJc/L7I53yVHVGkgnyYq4l/OEmzGah7NmBbD9kIWP+sbUlr1CZEZ/OGqaF0IZozF
	 igQve2aOFAr8HSfZbTb/F1hiIAgTLJpfP9gZ+qXCPwONMxQy6drD3By6m0nrl5YETo
	 q6Dl5L1MW2jK9YcFBVddAo2SN68DA9GCjxx4601w9QYOCfEYxk74Ym6Db+l2Yh+mvh
	 B451E8UK+VDHGtaNpbetiDgLbpMlHq+0PfWGE5KymAb2h9U4ik287CfQrELrmKtuEu
	 /vl3JtbtYz5Cg==
Date: Fri, 13 Oct 2023 16:17:33 -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, 
    Stefano Stabellini <sstabellini@kernel.org>, Julien Grall <julien@xen.org>, 
    Bertrand Marquis <bertrand.marquis@arm.com>, 
    Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, 
    Henry Wang <henry.wang@arm.com>
Subject: Re: [XEN PATCH 06/10] arm/cmpxchg: address violations of MISRA C:2012
 Rule 8.2
In-Reply-To: <7323f8210d16e58d8b4cdac89a10d67e7d7d023f.1697207038.git.federico.serafini@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2310131617220.965337@ubuntu-linux-20-04-desktop>
References: <cover.1697207038.git.federico.serafini@bugseng.com> <7323f8210d16e58d8b4cdac89a10d67e7d7d023f.1697207038.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, 13 Oct 2023, Federico Serafini wrote:
> Add missing parameter names, 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 Oct 13 23:19:11 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 23:19:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616941.959326 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrRR0-0004pN-A2; Fri, 13 Oct 2023 23:19:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616941.959326; Fri, 13 Oct 2023 23:19: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 1qrRR0-0004pG-7I; Fri, 13 Oct 2023 23:19:10 +0000
Received: by outflank-mailman (input) for mailman id 616941;
 Fri, 13 Oct 2023 23:19: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=4sWS=F3=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qrRQz-0004p8-F0
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 23:19:09 +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 e838edea-6a1e-11ee-9b0e-b553b5be7939;
 Sat, 14 Oct 2023 01:19: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 D105CB82C16;
 Fri, 13 Oct 2023 23:19:06 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 3EA22C433C7;
 Fri, 13 Oct 2023 23:19: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: e838edea-6a1e-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1697239146;
	bh=YXrD7RxguoGKemOAbsD5zWRMjATYaPjRi4C5tjERld8=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=a/PA6bRhaho6UbW6lEoR9oqiL/1Y0FXkKIgUq+4vyCeDtiWNO7v7K8/W6b295/F13
	 +fvUKEoA1wmAwxPfMnvgzB8rA8rhe1SLRq7mHn8FNFbNZUJsTt1uuTKP6TghCV5z4W
	 c2AWh+p+PDg1V5VhQUBT6gnHtihkdfRmuGFcB0OLGXfVUCwhjE6zIvxUewNvaMZ40W
	 9UGoZgFtj33efcc+fouZwpONaxAhGOd6BBlM7W+hVpaJkE0hVBY/j0rJDqXobvNs2o
	 tK0zRJE65xgnh+AA7kikX8xwohNo/WZQkBoZbLEoNHKB6Qv51A98Y7KluOrxea3eux
	 3ME3TkBvBzW5Q==
Date: Fri, 13 Oct 2023 16:19:03 -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, 
    Stefano Stabellini <sstabellini@kernel.org>, Julien Grall <julien@xen.org>, 
    Bertrand Marquis <bertrand.marquis@arm.com>, 
    Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, 
    Henry Wang <henry.wang@arm.com>
Subject: Re: [XEN PATCH 07/10] arm/traps: address a violation of MISRA C:2012
 Rule 8.2
In-Reply-To: <dbc0e965cd9f93848d27e7ebf0ffcfca05499d58.1697207038.git.federico.serafini@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2310131618580.965337@ubuntu-linux-20-04-desktop>
References: <cover.1697207038.git.federico.serafini@bugseng.com> <dbc0e965cd9f93848d27e7ebf0ffcfca05499d58.1697207038.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, 13 Oct 2023, Federico Serafini wrote:
> Add missing parameter name, 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 Oct 13 23:20:08 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 23:20:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616944.959337 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrRRw-0006Cq-Jw; Fri, 13 Oct 2023 23:20:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616944.959337; Fri, 13 Oct 2023 23:20: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 1qrRRw-0006Cj-G5; Fri, 13 Oct 2023 23:20:08 +0000
Received: by outflank-mailman (input) for mailman id 616944;
 Fri, 13 Oct 2023 23:20: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=4sWS=F3=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qrRRu-0006As-W5
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 23:20:06 +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 0ab46617-6a1f-11ee-98d4-6d05b1d4d9a1;
 Sat, 14 Oct 2023 01:20:06 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by dfw.source.kernel.org (Postfix) with ESMTP id BC02A621BF;
 Fri, 13 Oct 2023 23:20:04 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 4C8BBC433C8;
 Fri, 13 Oct 2023 23:20: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: 0ab46617-6a1f-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1697239204;
	bh=YXrD7RxguoGKemOAbsD5zWRMjATYaPjRi4C5tjERld8=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=qddzvx2t8ArNtXeyJ6c/2aaRS1fdjbWdRyd6qrUNMba1+Woe9tlwwrwo77H5QkX2i
	 1QYG09qiAM1nDwPQpVzRuR2D6GkbS44peTByiRxhOVPSW3ZOzrjk/ASM7WThj0yI4U
	 l/EXQWCb5GML4H/I9dwRlkZxvweQv/FFLT/EOKMyHxNkqpXSn118ELU58Hiq8ekvU9
	 T90zDh31WAXITkKqXMdMsWxDzoeD1e5jARfs19iSekArTA4owa+VW0CREW3Fyl8rLG
	 8AjXhivrKxzEjmOsYEbeo6P+Jv3FK9Y2tNYPmzPgbS8jGVVRnVai7bc6dSdcpfwF+f
	 zuKncCSCqMlnQ==
Date: Fri, 13 Oct 2023 16:20:01 -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, 
    Stefano Stabellini <sstabellini@kernel.org>, Julien Grall <julien@xen.org>, 
    Bertrand Marquis <bertrand.marquis@arm.com>, 
    Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, 
    Henry Wang <henry.wang@arm.com>
Subject: Re: [XEN PATCH 08/10] arm/vgic-v3: address a violation of MISRA
 C:2012 Rule 8.2
In-Reply-To: <d508f7bcbc1f6e98b0115774c7b570769b3554ce.1697207038.git.federico.serafini@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2310131619530.965337@ubuntu-linux-20-04-desktop>
References: <cover.1697207038.git.federico.serafini@bugseng.com> <d508f7bcbc1f6e98b0115774c7b570769b3554ce.1697207038.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, 13 Oct 2023, Federico Serafini wrote:
> Add missing parameter name, 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 Oct 13 23:20:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 23:20:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616947.959346 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrRSg-0006lD-R2; Fri, 13 Oct 2023 23:20:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616947.959346; Fri, 13 Oct 2023 23: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 1qrRSg-0006l6-OT; Fri, 13 Oct 2023 23:20:54 +0000
Received: by outflank-mailman (input) for mailman id 616947;
 Fri, 13 Oct 2023 23:20: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=4sWS=F3=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qrRSf-0006ko-FN
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 23:20:53 +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 25bd2fb7-6a1f-11ee-9b0e-b553b5be7939;
 Sat, 14 Oct 2023 01:20:51 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by dfw.source.kernel.org (Postfix) with ESMTP id 0A0A46220E;
 Fri, 13 Oct 2023 23:20:50 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 5B49FC433C8;
 Fri, 13 Oct 2023 23:20: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: 25bd2fb7-6a1f-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1697239249;
	bh=9Tjm6p7ILBYhSzdzMpdp8tiUSJQnyt4VygEsY5DEOqE=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=sRclEnQaVJ6xr9UN0nz7v/ETLowxEuh/62iEht074BigxFHDD/OhQmNAvGTMCtNa2
	 wLMvwyQ9toIBZJCNUr9nUD1Pf+pV8W0ZyDk5PI8Z7k7PCnC/mraW09CY7EOkJbtO9g
	 cIBNcpwX1CnjI3Om0txpmtAU4lsHGXZj5oJjBCEd1gj2vLptZOiOXDU2APsmPmqRs9
	 8aqwr72CR7SDY7FZst7AznWGSmDXY5yIw0TKo1y1dWT4ELi6Kz5tqqTg9Sj6alcej8
	 U4HnSfg1kDHM0X6zVCMGZu4NQ9Hw/jhmbMvXnYY6jztBno7CM2iyUNxFNLH1mKh9mL
	 I0P3EvzuA4DHA==
Date: Fri, 13 Oct 2023 16:20:47 -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, 
    Stefano Stabellini <sstabellini@kernel.org>, Julien Grall <julien@xen.org>, 
    Bertrand Marquis <bertrand.marquis@arm.com>, 
    Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, 
    Henry Wang <henry.wang@arm.com>
Subject: Re: [XEN PATCH 09/10] arm/domain: address violations of MISRA C:2012
 Rule 8.2
In-Reply-To: <8bf0994b7796ecca215f73a6a1f5acc892bd2a97.1697207038.git.federico.serafini@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2310131620400.965337@ubuntu-linux-20-04-desktop>
References: <cover.1697207038.git.federico.serafini@bugseng.com> <8bf0994b7796ecca215f73a6a1f5acc892bd2a97.1697207038.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, 13 Oct 2023, Federico Serafini wrote:
> Add missing parameter names, no funtional 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 Oct 13 23:22:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 23:22:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616950.959356 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrRTv-0007Ji-5U; Fri, 13 Oct 2023 23:22:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616950.959356; Fri, 13 Oct 2023 23:22: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 1qrRTv-0007Jb-2t; Fri, 13 Oct 2023 23:22:11 +0000
Received: by outflank-mailman (input) for mailman id 616950;
 Fri, 13 Oct 2023 23:22: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=4sWS=F3=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qrRTu-0007JR-6F
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 23:22:10 +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 52354cbb-6a1f-11ee-9b0e-b553b5be7939;
 Sat, 14 Oct 2023 01:22: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 B17B0621BF;
 Fri, 13 Oct 2023 23:22:04 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 45074C433C8;
 Fri, 13 Oct 2023 23:22: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: 52354cbb-6a1f-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1697239324;
	bh=M303czI56qsf74+hRyGl5GbH+VNDYMPKt23eMUsxU2o=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=k+8vs1aL8eWiI8HYQA/RKZ35X8q/4oRPWwUQCxsIsboCplr0FUpQ1G6yY/6JEIqVx
	 SiNojvXkJJ5D6oXouiEN2NvVHmV9N9PfECPxgv6OHPaVGX4LPexyTfVSJkjg5y3E/v
	 NeaMfxPbGTLj7kd7Od1G1crtoV6vUr6FQMIkOtPYJHe9GtZDthICh25mIYe2xXfwUF
	 xJEvr1BMOvc/ysMEgFzIehnX0TCBBH3sf9nZqfHuRH/a+WYHzqURM5ti+Qi671y6UP
	 0JH1sNnDGIEedtXsSXSrXc6BnUvo57I1tpVtQ2zr/gV0f7K5G5TlEzNhoXwaipaMPv
	 TyE0JPkys750Q==
Date: Fri, 13 Oct 2023 16:22:01 -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, 
    Julien Grall <julien@xen.org>, Rahul Singh <rahul.singh@arm.com>, 
    Stefano Stabellini <sstabellini@kernel.org>, 
    Bertrand Marquis <bertrand.marquis@arm.com>, 
    Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, 
    Henry Wang <henry.wang@arm.com>
Subject: Re: [XEN PATCH 10/10] arm/smmu: address violation of MISRA C:2012
 Rule 8.2
In-Reply-To: <199886f6ba1f2d5701eabd080b4f9723fc28f4b9.1697207038.git.federico.serafini@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2310131621450.965337@ubuntu-linux-20-04-desktop>
References: <cover.1697207038.git.federico.serafini@bugseng.com> <199886f6ba1f2d5701eabd080b4f9723fc28f4b9.1697207038.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, 13 Oct 2023, Federico Serafini wrote:
> Add missing parameter names, 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 Oct 13 23:34:10 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 23:34:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616953.959367 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrRfJ-0002CL-5t; Fri, 13 Oct 2023 23:33:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616953.959367; Fri, 13 Oct 2023 23:33: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 1qrRfJ-0002CE-38; Fri, 13 Oct 2023 23:33:57 +0000
Received: by outflank-mailman (input) for mailman id 616953;
 Fri, 13 Oct 2023 23:33: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=/5iA=F3=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qrRfH-0002Av-NN
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 23:33:55 +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 f7538707-6a20-11ee-9b0e-b553b5be7939;
 Sat, 14 Oct 2023 01:33:51 +0200 (CEST)
Received: from AM6PR01CA0061.eurprd01.prod.exchangelabs.com
 (2603:10a6:20b:e0::38) by DB4PR08MB9285.eurprd08.prod.outlook.com
 (2603:10a6:10:3f2::21) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.46; Fri, 13 Oct
 2023 23:33:48 +0000
Received: from AM7EUR03FT005.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:20b:e0:cafe::f5) by AM6PR01CA0061.outlook.office365.com
 (2603:10a6:20b:e0::38) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.47 via Frontend
 Transport; Fri, 13 Oct 2023 23:33:48 +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.6907.16 via Frontend Transport; Fri, 13 Oct 2023 23:33:47 +0000
Received: ("Tessian outbound ee9c7f88acf7:v211");
 Fri, 13 Oct 2023 23:33:47 +0000
Received: from 82bf1fae3fcd.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 9C61261F-8966-4CB9-BD21-6943F0035BED.1; 
 Fri, 13 Oct 2023 23:33:39 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 82bf1fae3fcd.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Fri, 13 Oct 2023 23:33:39 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by AS2PR08MB9869.eurprd08.prod.outlook.com (2603:10a6:20b:596::6)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.41; Fri, 13 Oct
 2023 23:33:36 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41%4]) with mapi id 15.20.6863.032; Fri, 13 Oct 2023
 23: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: f7538707-6a20-11ee-9b0e-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=6i5kopqek43+flfOP6vSbXovs94Nimi6d+tXRm5kAI4=;
 b=ZUbmNRBh2V39Ca8daXOnIgkmDSGyp5P1XFtTNbchgEQy/1AVEHrs8aDFUJ47oyB6wINMnyJ9DxJdiUOcUIZVs9+NC7z/qCWUVGQoFTtTM/w0yBOA6v6ulM2aYDPxPEBFdVwvI9kihXjf4LtNsHt+ROW6Qxq01ET5vxy2CWQ7Z2s=
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: 1939bc1e9ee64ce0
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=UafHbNGR3xUG5giZgugpXbgRLQ0Rz8mRYIKZ/Ztwr1Ky21ZhuFWbnX/NDmkQeMc6sjOGdgTg6qSzBJZYOsfYhP1hojz+7vdS8FojygUVlxjrwvIeohKruGDuKF3dicSy2xc1nSiRoZA/iYJ24KX+MeL9sPpMz4vrQqaHcngXdypavsllxcK+eHjODBQhaZmZFrBVFeIItkHu6U51aPjrOurB9O/V/BQf8TzsO8xHVLXDunZ/u3nSHMy6ieDpaRj+7+8v6Zoltb4fai+Wm+YN4k3fnUIOfMJzMb1VH4j0XVvsogPKsHqWh30ZGQrSKVb/85jNRK3KC+MlKieb2f7wgQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=6i5kopqek43+flfOP6vSbXovs94Nimi6d+tXRm5kAI4=;
 b=VaeRtV9hAPlOB6NWDfM5VcDN3ACoFj5JJc2rlDP478jd3A6TE21XAJcC/8xHDH2xk8cD2rutPWSQ87JZf02m8DZ52rU6+SBImcvaRzi/EntF5MSA0g8C1FEHeMxvep7yHV77HAc6uy+oaK3VCBqwmuQX5sPX/SvMk3u5jnHpvOxpeB0DofXHZjnj1BSmYFZsF0TRqoWLUUj1mPsw5CUCybJb5ZFj4ojA+hbtNqcZjmBkvsvT1YQzPgIFQcN6hNAQvhxXFQIikemd9yeBOgAIIuU7zO/qb2SC+gW8+YBrk5yE+OCUG8Sycdvsa9xYPKanGM+h85peXPwb/7uSutQn0Q==
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=6i5kopqek43+flfOP6vSbXovs94Nimi6d+tXRm5kAI4=;
 b=ZUbmNRBh2V39Ca8daXOnIgkmDSGyp5P1XFtTNbchgEQy/1AVEHrs8aDFUJ47oyB6wINMnyJ9DxJdiUOcUIZVs9+NC7z/qCWUVGQoFTtTM/w0yBOA6v6ulM2aYDPxPEBFdVwvI9kihXjf4LtNsHt+ROW6Qxq01ET5vxy2CWQ7Z2s=
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 v7 2/8] xen/arm: Split MMU system SMP MM bringup code to
 mmu/smpboot.c
Thread-Topic: [PATCH v7 2/8] xen/arm: Split MMU system SMP MM bringup code to
 mmu/smpboot.c
Thread-Index: AQHZ+kx0F2v+gIdRRkSLGpfAPDpgbrBH/UYAgABpcYA=
Date: Fri, 13 Oct 2023 23:33:36 +0000
Message-ID: <9F177421-D23F-4FE8-82B2-76D73940764D@arm.com>
References: <20231009010313.3668423-1-Henry.Wang@arm.com>
 <20231009010313.3668423-3-Henry.Wang@arm.com>
 <48223382-531f-4638-870c-fdcc58bb0e97@xen.org>
In-Reply-To: <48223382-531f-4638-870c-fdcc58bb0e97@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_|AS2PR08MB9869:EE_|AM7EUR03FT005:EE_|DB4PR08MB9285:EE_
X-MS-Office365-Filtering-Correlation-Id: 46593023-bdf5-4a52-d285-08dbcc44d90f
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:
 uNopQ44ueN/MgWH34+yAFwvj6a4C4ZFScJZRoV8RNiuj8hi0XTa/AmRrLmnhI99W372TX0/XVBR8mdax67SDnAO1oDVRW+UidUSDJsmv1OIHda27gQth3bYrmue/tuCo8jUPyX6OMdNzTr5zq87LN7IkXtH3fFAH9kBZ7SQS24s2LPaKe4TpKV2e+OcIp9zt5BZ6Fae/aMrr7w9qkFVIYS+4twS2CiNWxDVpGztZesHIMcsJVg0+3mP0dYMDWkJcozRnbETVwb7/mvDZdOXFTHiGCHwcaOdXHcKlPKCk7RYe0mPfIg1ObM5ZnH0FCe2+RWMqJwiJZr4QTHy7Sz3EzOVytfXZSI1IQD2ql5s+TpvNzO8hKThq+ZtzMue6UGIgw4s0G30/8rQg3sqvPbYbEK09XH0REAcZZrM7kdz9kd+98vj+JtSDSM3OsxjLt+8UMTX0w2dcD51lTaOtvJ79jSGfw96DQxwtx8BLFxPURbog8uwKYB8njfXQk0QsIo9BNQqRPS25PyF3ylvAQxsjLKZFe4Vj0zlPiGokuk8L+ZK5z0cZRTvFjODTz1p3XIbFppZKWL4Yw2+b83fGzn1vkCg/F+BTMctYH9XUyeZjx/kn1hqSKpS6Oels82iV6hYbb/iDXZ2fkupO4FdskH8Xow==
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)(346002)(396003)(376002)(39860400002)(230922051799003)(186009)(64100799003)(451199024)(1800799009)(6486002)(2616005)(6512007)(53546011)(6506007)(478600001)(2906002)(4744005)(66556008)(71200400001)(26005)(66476007)(76116006)(8936002)(54906003)(91956017)(66946007)(66446008)(64756008)(6916009)(316002)(4326008)(8676002)(5660300002)(41300700001)(33656002)(86362001)(38100700002)(122000001)(36756003)(38070700005)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="us-ascii"
Content-ID: <CD844F8ADB6DC0418C09668BD798DE3F@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS2PR08MB9869
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:
	aad97f94-701d-4248-793d-08dbcc44d248
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	7AyLZDMgIkGfVeev7thvAcJUu+XSZ40+BInaiyUt4WCu6SH61Xh0TT2NHWAUNyIXPXXxXfSH+/e9VhSsK429zTXyGFVdoTIvhoyrRW6wxu65Vs6Ld0sWqXN0qVJQUU7TPOtO5D0FtJfS0GraUevAxOu4VzuEtkLVLQZKexGRfwUOMxAK4xpafpGfR5sbyBgKuBnTOunxWwUQ2f5ZNxGPVRGf0dFb3A+KKDibzN3nCq4vmnTAGWOE3jloj7eZASn87qfo+kmXZOzEbK/0sILuf2bZv6SvmK+hqnA2Rs9Ej9E2qrrBCLeHL5TObdq1Z9z2XPT24v23XiDgbkRaNNAZft3sRp5fUXbWRXhHhssaXZJInwPi6lr75LOkgDL+yHDNyUdP1cSPK4fvMK0UJ+2MWofJjpWHTJc4mZZFaT/XKc6w3cvJEpQQ+ZhVDv8ZPylGqTeT9IIGdxoyHiqHF+T86BL1ePd8TM4hkA6+OmVr4yZzBfIsMDnbh+AZY015HuCWwsZHekOfHrkQ2SivJv/8h8YpHlspkujn3PwxjRkHWoXKvVpfgY6UwozmHVIOY6LlBj8udh6fWqA/MwxIYYe2r2RXpnQEjhrWWW8lZWP/4QrsItqrIKvLI+nXiNbIgtABNxpcl/toWU+uiM3wIXbP15Dyz9HHju8kUjCfrjvETqlPMSENNqvASBU0pcfp2be7MqezV+lq9UhfPBYoc3K1VtbYnK9zU8n4EJCnYcH7WqM=
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)(376002)(396003)(39860400002)(230922051799003)(451199024)(186009)(64100799003)(1800799009)(82310400011)(36840700001)(46966006)(40470700004)(81166007)(356005)(82740400003)(40460700003)(40480700001)(36756003)(86362001)(33656002)(2906002)(478600001)(4744005)(6486002)(6512007)(2616005)(26005)(53546011)(5660300002)(41300700001)(4326008)(6862004)(70586007)(8676002)(70206006)(316002)(54906003)(6506007)(8936002)(47076005)(36860700001)(336012);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Oct 2023 23:33:47.3967
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 46593023-bdf5-4a52-d285-08dbcc44d90f
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: DB4PR08MB9285

Hi Julien,

> On Oct 14, 2023, at 01:16, Julien Grall <julien@xen.org> wrote:
>=20
> Hi Henry,
>=20
> On 09/10/2023 02:03, Henry Wang wrote:
>> +#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 se=
tof
>> +     * pagetables, but rewrite it each time for consistency with 32 bit=
.
>> +     */
>> +    init_ttbr =3D virt_to_maddr((uintptr_t) xen_pgtable);
>=20
> The cast should be necessary. With this dropped:

Nice catch, my mistake, will change in v8.

>=20
> Reviewed-by: Julien Grall <jgrall@amazon.com>

Thanks!

Kind regards,
Henry

>=20
> Cheers,
>=20
> --=20
> Julien Grall



From xen-devel-bounces@lists.xenproject.org Fri Oct 13 23:34:15 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 23:34:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616955.959377 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrRfb-0002bi-JS; Fri, 13 Oct 2023 23:34:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616955.959377; Fri, 13 Oct 2023 23:34: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 1qrRfb-0002bY-Fg; Fri, 13 Oct 2023 23:34:15 +0000
Received: by outflank-mailman (input) for mailman id 616955;
 Fri, 13 Oct 2023 23:34: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=4sWS=F3=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qrRfa-0002Av-Dv
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 23:34: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 03e8bc35-6a21-11ee-9b0e-b553b5be7939;
 Sat, 14 Oct 2023 01:34: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 5FEDEB82BDB;
 Fri, 13 Oct 2023 23:34:12 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 269E3C433C7;
 Fri, 13 Oct 2023 23:34:09 +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: 03e8bc35-6a21-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1697240051;
	bh=7Jnvljk4A8R6cLhI1FwCrexxfLiAVfdNHU6trvGWHrM=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=fkOmziSaNcP7Hghv54IzNJ2n+Df3WFYf5zoh4qHvcNvnFSTnG5hhOgzuudvxm1uh+
	 96i3mxlSS5Ta1EqmwtzBA6Wkb8WhRTvOQ4VRkrZmnxVUaQV/03wbQ10Pim0rDhH7iq
	 1Pqf7XwFI/yZi/gFA31MzYf0JAsv9AaPrzeIoxnw5b+yCt1BEjrcPW25AaUo8GW86+
	 SEHQkDGcndStZaqJXkmUL0ZAs6uUfACBGa/ps9xrO6PO9VexulrhCytT+HIESdQD6L
	 K/bMWAWd1W9yZA0r7ugQSyyV8ci14YAyi3/7Sxpy+xo3Qe8w3o5eoUdLWKm03HOGca
	 jBHAIzrX+Fuyw==
Date: Fri, 13 Oct 2023 16:34:08 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Stefano Stabellini <sstabellini@kernel.org>
cc: Federico Serafini <federico.serafini@bugseng.com>, 
    xen-devel@lists.xenproject.org, consulting@bugseng.com, 
    Julien Grall <julien@xen.org>, Bertrand Marquis <bertrand.marquis@arm.com>, 
    Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, 
    Henry Wang <henry.wang@arm.com>
Subject: Re: [XEN PATCH 02/10] arm/cpufeature: address violations of MISRA
 C:2012 Rule 8.2
In-Reply-To: <alpine.DEB.2.22.394.2310131610440.965337@ubuntu-linux-20-04-desktop>
Message-ID: <alpine.DEB.2.22.394.2310131633520.965337@ubuntu-linux-20-04-desktop>
References: <cover.1697207038.git.federico.serafini@bugseng.com> <3b28dca993cac9391b997c1744218cf4062907df.1697207038.git.federico.serafini@bugseng.com> <alpine.DEB.2.22.394.2310131610440.965337@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

On Fri, 13 Oct 2023, Stefano Stabellini wrote:
> On Fri, 13 Oct 2023, Federico Serafini wrote:
> > Add missing parameter names, no functional change.
> > 
> > Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
> > ---
> >  xen/arch/arm/include/asm/cpufeature.h | 8 ++++----
> >  1 file changed, 4 insertions(+), 4 deletions(-)
> > 
> > diff --git a/xen/arch/arm/include/asm/cpufeature.h b/xen/arch/arm/include/asm/cpufeature.h
> > index 8011076b8c..41e97c23dd 100644
> > --- a/xen/arch/arm/include/asm/cpufeature.h
> > +++ b/xen/arch/arm/include/asm/cpufeature.h
> > @@ -127,8 +127,8 @@ static inline void cpus_set_cap(unsigned int num)
> >  struct arm_cpu_capabilities {
> >      const char *desc;
> >      u16 capability;
> > -    bool (*matches)(const struct arm_cpu_capabilities *);
> > -    int (*enable)(void *); /* Called on every active CPUs */
> > +    bool (*matches)(const struct arm_cpu_capabilities *caps);
> 
> all the implementations of matches I found in xen/arch/arm/cpuerrata.c
> actually call the parameter "entry"
> 
> 
> > +    int (*enable)(void *ptr); /* Called on every active CPUs */
> 
> this one instead is "data"

I committed all the other patches in this series to the my for-4.19 branch


From xen-devel-bounces@lists.xenproject.org Fri Oct 13 23:40:32 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 13 Oct 2023 23:40:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616961.959387 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrRlb-0005aI-7T; Fri, 13 Oct 2023 23:40:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616961.959387; Fri, 13 Oct 2023 23: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 1qrRlb-0005aB-4m; Fri, 13 Oct 2023 23:40:27 +0000
Received: by outflank-mailman (input) for mailman id 616961;
 Fri, 13 Oct 2023 23:40: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=/5iA=F3=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qrRlZ-0005Zm-B9
 for xen-devel@lists.xenproject.org; Fri, 13 Oct 2023 23:40:25 +0000
Received: from EUR01-DB5-obe.outbound.protection.outlook.com
 (mail-db5eur01on060e.outbound.protection.outlook.com
 [2a01:111:f400:fe02::60e])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id e13ad8e6-6a21-11ee-98d4-6d05b1d4d9a1;
 Sat, 14 Oct 2023 01:40:24 +0200 (CEST)
Received: from DU7PR01CA0047.eurprd01.prod.exchangelabs.com
 (2603:10a6:10:50e::24) by PAXPR08MB7669.eurprd08.prod.outlook.com
 (2603:10a6:102:243::19) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.46; Fri, 13 Oct
 2023 23:40:17 +0000
Received: from DBAEUR03FT021.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:50e:cafe::74) by DU7PR01CA0047.outlook.office365.com
 (2603:10a6:10:50e::24) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.27 via Frontend
 Transport; Fri, 13 Oct 2023 23:40:17 +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.6907.16 via Frontend Transport; Fri, 13 Oct 2023 23:40:17 +0000
Received: ("Tessian outbound ab4fc72d2cd4:v211");
 Fri, 13 Oct 2023 23:40:17 +0000
Received: from 3636f09bf5ff.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 A1104071-0561-4577-8F97-235E0923396F.1; 
 Fri, 13 Oct 2023 23:40:10 +0000
Received: from EUR02-DB5-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 3636f09bf5ff.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Fri, 13 Oct 2023 23:40:10 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by AS2PR08MB9869.eurprd08.prod.outlook.com (2603:10a6:20b:596::6)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.41; Fri, 13 Oct
 2023 23:40:08 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41%4]) with mapi id 15.20.6863.032; Fri, 13 Oct 2023
 23: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: e13ad8e6-6a21-11ee-98d4-6d05b1d4d9a1
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=CeQmVI7g8tA3Doi6Kibv3I+5Bzbp6bxk1WH5UTaHLpU=;
 b=ufWotCNXaos2TFKJ+qZTZGv3nWL3dh7m9v4ufVnTzI7YofvW+XdhC18TZeR2s919d6YCpvc+a476fdz6jJQpIGsaEGyNFEPQOqYvy93iu+lbfhHPVQasdA/v8Z0/1EawiKk9RjEsJCOoVrClD51pgzz5nI0UgCz4wEY8pK5eMVY=
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: 4ccc5d310d5c5b0b
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=HVGVR9qEzmhTCGPQu6YcaComUrab/wiWRJGzrzHi5vT/aoQqzH0TvFpvdPQ29DNUwBdLMl92O8U4y9OeIa/lynYh6wuLhD+EdBZ1UwP8bF8w0CjTafgmFCfPTfvRbukiBqVfCuSGhlTDpooLOt3t07CcYv900Z4uT51SFa/nYvPiIWd5kq+GnUnG2xiMJTMAzDaAt7ajCzUEW4+5ExSSdXOMo84TQkWgGaTWbuxxHc0MJ0wIQQIenFoPWy1yUO6h6NjkEPwnNObKTYhfhmqw5uHiPS2jqH6dsQ1bhYxVleAP4P52DwhFTd6K+OWHC96jWdSovp6q19MmX46+rZfcaw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=CeQmVI7g8tA3Doi6Kibv3I+5Bzbp6bxk1WH5UTaHLpU=;
 b=F8ePAbp063eWXpsUd/E6sotG42IXpHdAi6tZaEIMgfvR6TplOiGFytc+k/ZJque7Cq+Svtx9gpgZnNmY++xxI81PwKSQJavKMcEkOV+PiP/tkHPvP/BXlOkplycAV1ojYXuZwg/OX2B+DL12n7ekaJWrsUM4tkuDTfQSBdAFkOHIzbHyK0oCf/kRvSsveJR7Xe/0OgsecuZSZFI3pDzdGAsGPcdrx/lWTs1ZvLqUxSFuiVLrqrY5PiPYC2f+xrdKqsoyUk21neGLGPFct6lm8lei3AN37/b/tqUi1uBwywZO6b2qG8Nz9HRMBxTQw5RFfKkTfKleYLDA7MmcxjD7Vw==
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=CeQmVI7g8tA3Doi6Kibv3I+5Bzbp6bxk1WH5UTaHLpU=;
 b=ufWotCNXaos2TFKJ+qZTZGv3nWL3dh7m9v4ufVnTzI7YofvW+XdhC18TZeR2s919d6YCpvc+a476fdz6jJQpIGsaEGyNFEPQOqYvy93iu+lbfhHPVQasdA/v8Z0/1EawiKk9RjEsJCOoVrClD51pgzz5nI0UgCz4wEY8pK5eMVY=
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 v7 3/8] xen/arm: Fold mmu_init_secondary_cpu() to head.S
Thread-Topic: [PATCH v7 3/8] xen/arm: Fold mmu_init_secondary_cpu() to head.S
Thread-Index: AQHZ+kx2mzsa+jXwb0W90nWA0Ca0ALBIADMAgABoWAA=
Date: Fri, 13 Oct 2023 23:40:08 +0000
Message-ID: <B19ED8C4-DEAD-4ED7-A108-07E14D3E185E@arm.com>
References: <20231009010313.3668423-1-Henry.Wang@arm.com>
 <20231009010313.3668423-4-Henry.Wang@arm.com>
 <5673cd8c-8971-4c1f-890e-d993c22a909c@xen.org>
In-Reply-To: <5673cd8c-8971-4c1f-890e-d993c22a909c@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_|AS2PR08MB9869:EE_|DBAEUR03FT021:EE_|PAXPR08MB7669:EE_
X-MS-Office365-Filtering-Correlation-Id: c9f87cc8-1cac-4d84-9fed-08dbcc45c178
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:
 k4cCNGBAZLfbxXM9g1p9+0Lg/1bs4bn8Jn+loiNdHsvc694QMD1Abwtp6DrjqSVZDUCD0tLpcbo+RrlHzaCo+BH9rgu6Bgle2jbrp5fdNtB6WxvNt8ImPUMGaGoAf28wLE4mNpTQ+9i8/djVMDZpVt/41gIXbDWyZajeYuCDy2tPlUfR0d3uWn4/Ep2HUJqPQcc86DkRWieKGVG6v5nGDdlrQEUpqtF/sjNMOmdLDuQLsHLAjD9VKrboiMz3qQMs+f1zpVyTxQWWw9Eo6usyREBZmVvOOGkUACAzxHdrLhlA5BkiLj0yDHz6UqUCUnmGKWzTcMHZEJS0lURiLZfxgCKO1ROU6peWswESDazXbwkMvlzZy7KsKaXXtWsx+CBWl+ra2EGvcmZM/koEeAlqiZ75K7HXURnIXQ9No+dWmFyWryzBiISoEBVbBNzKQB/F6AMxhGXYEdVMwBezHwQ4nlraevzZJB8SBlUHumTFMYKKJq/i0W/tP2tXjDLdmClts92EV4NJKyWIIbWqvInY4kjL1OFKgGVqnyLTmLcyxL3fn4XqxgsTb+bdVx+tHG3IbgJPnfdBkai33CvI/oAAW+6OS3sAh6YSH6z9gH1X/5zrXnUun2tefKAOEjzzXlz7
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)(136003)(346002)(230922051799003)(451199024)(64100799003)(1800799009)(186009)(2616005)(53546011)(6512007)(6486002)(33656002)(36756003)(38070700005)(38100700002)(86362001)(122000001)(2906002)(66476007)(71200400001)(66556008)(83380400001)(26005)(6506007)(478600001)(966005)(5660300002)(41300700001)(6916009)(8676002)(4326008)(316002)(54906003)(8936002)(91956017)(76116006)(64756008)(66946007)(66446008)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <E213775718D6854AB24D2947CCC81344@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS2PR08MB9869
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:
	9c7692d4-ffe8-4ab7-5e92-08dbcc45bc5d
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	H7ln4kQ4WefHKKgBt5i8PcK1sVnwjXdv07XlG0XAEjCzyeKAVv1mTmi0/VHTVAlvfWTZdXdVlywfw0Y04Jc+L7LCGkbYmDpiBn0hvBOx6wK8gzTiuZpwp9Fqof0ChPKHv34GObdgJASlSS4RU8IWufzl5HZOP3L/55WK1qJOD/BTb9WvAc/LML8YKNbFtNFXA+gp1D9zK84Vf98S8/kf0YSt2SPXZHhYkKYlN0vRMWb6D2qrGinBrmdMXFb9J3VZv/W39GMLt34Cv0JR+XEbLKpo3KLX2Bv1a0gLkwCidysdg04h9E/db5TyP8JnBGPvSSZaLjL4b+Q4NLs5S23moyqHsjIUqGW9G5F552a9Vfxo4kO5qYRMf+0tKhzL8ic7hxkjPb5Xspvzi3D54Vkg+BXzdIlfQasLbFgVkOLUAhVFvyyfhkYFYNK8lmF1RLItirrPTc2kUtEyDlzUqELWW8R8d8i+m4cvGw9I0gXOQ0a3P2EmHwlPOtuDH6NclR1JaE5eisvRvLLtDKnCPejGEC8Hmx8TfSBmFxXgGsXVkgvT4KvnMj6BJEp0PT3Y4SMk7wsHR0PdokOodcUXMJRp0YDOXMLoegQApYFqpGgatL2CWQ9t9hS/Es98AZoNAPKrvliULnHcxSTPSkoONbiOZcFKV8ouICARoI+oJ7sL/YoU8xqbOL5yeKAre+yL5h5YvJSwfQRnl0jM6yGmQ0zJw4WfAtK1UJaVtm2U6fAwg/Y=
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)(346002)(396003)(230922051799003)(186009)(451199024)(1800799009)(82310400011)(64100799003)(40470700004)(46966006)(36840700001)(41300700001)(4326008)(6862004)(5660300002)(54906003)(8936002)(316002)(8676002)(70206006)(70586007)(966005)(6486002)(2906002)(478600001)(2616005)(26005)(6512007)(53546011)(6506007)(107886003)(36860700001)(83380400001)(336012)(33656002)(47076005)(82740400003)(40460700003)(356005)(81166007)(36756003)(86362001)(40480700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Oct 2023 23:40:17.3618
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: c9f87cc8-1cac-4d84-9fed-08dbcc45c178
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: PAXPR08MB7669

SGkgSnVsaWVuLA0KDQo+IE9uIE9jdCAxNCwgMjAyMywgYXQgMDE6MjYsIEp1bGllbiBHcmFsbCA8
anVsaWVuQHhlbi5vcmc+IHdyb3RlOg0KPiANCj4gSGkgSGVucnksDQo+IA0KPiBPbiAwOS8xMC8y
MDIzIDAyOjAzLCBIZW5yeSBXYW5nIHdyb3RlOg0KPj4gQ3VycmVudGx5IG1tdV9pbml0X3NlY29u
ZGFyeV9jcHUoKSBvbmx5IGVuZm9yY2VzIHRoZSBwYWdlIHRhYmxlDQo+PiBzaG91bGQgbm90IGNv
bnRhaW4gbWFwcGluZyB0aGF0IGFyZSBib3RoIFdyaXRhYmxlIGFuZCBlWGVjdXRhYmxlcw0KPj4g
YWZ0ZXIgYm9vdC4gVG8gZWFzZSB0aGUgYXJjaC9hcm0vbW0uYyBzcGxpdCB3b3JrLCBmb2xkIHRo
aXMgZnVuY3Rpb24NCj4+IHRvIGhlYWQuUy4NCj4+IEludHJvZHVjZSBhc3NlbWJseSBtYWNybyBw
dF9lbmZvcmNlX3d4biBmb3IgYm90aCBhcm0zMiBhbmQgYXJtNjQuDQo+PiBGb3IgYXJtNjQsIHRo
ZSBtYWNybyBpcyBjYWxsZWQgYXQgdGhlIGVuZCBvZiBlbmFibGVfc2Vjb25kYXJ5X2NwdV9tbSgp
Lg0KPj4gRm9yIGFybTMyLCB0aGUgbWFjcm8gaXMgY2FsbGVkIGJlZm9yZSBzZWNvbmRhcnkgQ1BV
cyBqdW1waW5nIGludG8NCj4+IHRoZSBDIHdvcmxkLg0KPj4gU2lnbmVkLW9mZi1ieTogSGVucnkg
V2FuZyA8SGVucnkuV2FuZ0Bhcm0uY29tPg0KPj4gLS0tDQo+PiB2NzoNCj4+IC0gTm8gY2hhbmdl
Lg0KPiANCj4gR2l2ZW4gdGhlIGRpc2N1c2lvbiBvbiB2NiwgSSB3YXMgZXhwZWN0aW5nIHNvbWUg
Y2hhbmdlcyBoZXJlIGF0IGxlYXN0IG9uIGFybTY0IHNpZGUuDQoNCk9oIEkgYW0gc28gc29ycnks
IEkgY29tcGxldGVseSBtaXN1bmRlcnN0b29kIHRoZSDigJxsZWF2ZSB0aGUgY29kZSBhcyBpc+KA
nQ0KZGlzY3Vzc2lvbiBhbmQgbm93IEkgcmV2aXNpdCB0aGF0IGRpc2N1c3Npb24gYW5kIG5vdGlj
ZWQgdGhhdCB5b3UgZGlkIHNheSB0aGUNCuKAnGxlYXZlIHRoZSBjb2RlIGFzIGlz4oCdIGlzIGZv
ciBhcm0zMiBvbmx5IF5eJw0KDQpJIHdpbGwgZml4IHRoZSBhcm02NCBzaWRlIGluIHY4IGZvbGxv
d2luZyBbMV0uIA0KDQo+IA0KPiBGb3IgYXJtMzIsIG15IHByb3Bvc2FsIHdvdWxkIG5vdCB5ZXQg
d29yayBiZWNhdXNlIHNhZGx5IHRoZSB0ZW1wb3JhcnkgcGFnZS10YWJsZXMgZm9yIHNlY29uZGFy
eSBicmluZy11cCB3aWxsIGNvbnRhaW4gd3JpdGFibGUgYW5kIGV4ZWN1dGFibGUgbWFwcGluZ3Mu
DQoNClsxXSBodHRwczovL2xvcmUua2VybmVsLm9yZy94ZW4tZGV2ZWwvNGQ3YTk4NDktODk5MC04
ZGRkLTM1MzEtOTNmNGUyZTI2MmIxQHhlbi5vcmcvDQoNCktpbmQgcmVnYXJkcywNCkhlbnJ5


From xen-devel-bounces@lists.xenproject.org Sat Oct 14 00:04:32 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 14 Oct 2023 00:04:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616968.959397 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrS8n-0003wR-R4; Sat, 14 Oct 2023 00:04:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616968.959397; Sat, 14 Oct 2023 00:04: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 1qrS8n-0003wK-Nl; Sat, 14 Oct 2023 00:04:25 +0000
Received: by outflank-mailman (input) for mailman id 616968;
 Sat, 14 Oct 2023 00:04: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=dUN7=F4=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qrS8l-0003uj-Vz
 for xen-devel@lists.xenproject.org; Sat, 14 Oct 2023 00:04:23 +0000
Received: from EUR01-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur01on2045.outbound.protection.outlook.com [40.107.13.45])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 39a4efa4-6a25-11ee-9b0e-b553b5be7939;
 Sat, 14 Oct 2023 02:04:21 +0200 (CEST)
Received: from AS9PR04CA0149.eurprd04.prod.outlook.com (2603:10a6:20b:48a::22)
 by AS8PR08MB6485.eurprd08.prod.outlook.com (2603:10a6:20b:318::6)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.45; Sat, 14 Oct
 2023 00:03:50 +0000
Received: from AM7EUR03FT050.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:20b:48a:cafe::bd) by AS9PR04CA0149.outlook.office365.com
 (2603:10a6:20b:48a::22) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.29 via Frontend
 Transport; Sat, 14 Oct 2023 00:03:50 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM7EUR03FT050.mail.protection.outlook.com (100.127.141.27) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6907.17 via Frontend Transport; Sat, 14 Oct 2023 00:03:48 +0000
Received: ("Tessian outbound 0ae75d4034ba:v211");
 Sat, 14 Oct 2023 00:03:48 +0000
Received: from 70c3c9f8902e.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 4BDDA1D0-47D5-4AEA-9727-59C8B54FD000.1; 
 Sat, 14 Oct 2023 00:03:42 +0000
Received: from EUR01-DB5-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 70c3c9f8902e.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Sat, 14 Oct 2023 00:03:42 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by AS1PR08MB7538.eurprd08.prod.outlook.com (2603:10a6:20b:482::18)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.46; Sat, 14 Oct
 2023 00:03:39 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41%4]) with mapi id 15.20.6863.032; Sat, 14 Oct 2023
 00:03: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: 39a4efa4-6a25-11ee-9b0e-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=INoX+qCTi6SYBBI3tUhXxoaSTFA1hiOYpTrzHr/OLUI=;
 b=KRelAb6ufbTptG7Dev2L8X4moc9KF43GNgrQqPJQBSSOysEd4bGSdkMxSo6r/Q/CYDgnPJLfYj86BxhXxUk7cDCH1oirJ0Le+RNRXBrXlF6/J4H4g8uW7EjeSaHTPDBtddkibtXvVcR4bZjyyIK34QgQaP6+qQ/VtJLMLpma4OE=
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: 08c9d002243c4aaa
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Ib6i6DAdS1XL69WB55xZ7UoDdetDfGnhiOu80vTCn5PTM30fafKLpAbLtWt6r1gUyEUKCks+hKnoQltexB0QvBzbfAK3wswIlQicCjCDC6yJcrQ9uBnwgDTdamQ1xsRmYYv5dDBBuI33NsVtpBpROMLhjyldmMYUT0Met5Rm1TDJ3D+jpvutdit8hWp866QHk+ND0yaw7p4bkgLuEO00PhFt9sxDHFUabrUvxplkObk1o/Z9Rx9KbVQtSLWVLf8vvlDPPqj7xFnBuoq8BoYHDp+2IJ/MIlcvcbmQzFGDlemCiy1xPDwFQ4N73Xag37v0iafAKQGXOg4qQ4nHsoGf4A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=INoX+qCTi6SYBBI3tUhXxoaSTFA1hiOYpTrzHr/OLUI=;
 b=QH64YAI00L1/TPdoom/03lauKqJEoskALWkTd+ERWO9eAiqgN4ZCc28cRZw6BksqAHNAHc6dce/GK5KaoOa0o2TifvWKGExha/Av2mAFhZ7WtULGuM0//z5sJRFI4dqulbzYsKT2J7potSKLtM93rpmTQslxoVKRU2qHNqdocOKk1IRKt5Hwjt7mTXfw+GM7L1xbwstyOPcNDKhJ8F/rM5rCkrgFz/3odXwxOjWaA3rtAv5+YE9MCIzktQ0MKyiFEca45gIsTCElVW8cflwKPCD5qeweXr0vIUZEDuXHbLAdZ1/mSmXLsISK6OWeGHWnFGWhFBtrbFlFZMZ9wPMtAg==
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=INoX+qCTi6SYBBI3tUhXxoaSTFA1hiOYpTrzHr/OLUI=;
 b=KRelAb6ufbTptG7Dev2L8X4moc9KF43GNgrQqPJQBSSOysEd4bGSdkMxSo6r/Q/CYDgnPJLfYj86BxhXxUk7cDCH1oirJ0Le+RNRXBrXlF6/J4H4g8uW7EjeSaHTPDBtddkibtXvVcR4bZjyyIK34QgQaP6+qQ/VtJLMLpma4OE=
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>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, Penny Zheng
	<Penny.Zheng@arm.com>, Wei Chen <Wei.Chen@arm.com>
Subject: Re: [PATCH v7 5/8] xen/arm: Split MMU-specific setup_mm() and related
 code out
Thread-Topic: [PATCH v7 5/8] xen/arm: Split MMU-specific setup_mm() and
 related code out
Thread-Index: AQHZ+kx+23lhReITfUCLaoneR4RMRrBIBAOAgABrGQA=
Date: Sat, 14 Oct 2023 00:03:39 +0000
Message-ID: <4531596C-C78C-44CB-9BAE-B38FE2423652@arm.com>
References: <20231009010313.3668423-1-Henry.Wang@arm.com>
 <20231009010313.3668423-6-Henry.Wang@arm.com>
 <15c7c0a5-6064-400b-9022-0dda9b8f7bef@xen.org>
In-Reply-To: <15c7c0a5-6064-400b-9022-0dda9b8f7bef@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_|AS1PR08MB7538:EE_|AM7EUR03FT050:EE_|AS8PR08MB6485:EE_
X-MS-Office365-Filtering-Correlation-Id: 84f7ae35-a5f5-47fc-2d27-08dbcc490aca
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:
 1/WHmIvb27FXIhjbx+H1UTI/PRFWYRhrLyw94QkOSd53QutnbllynFXofHywXkjKF7onIxH5QxYKV8GXaOlKXJV/4NfeKd/nAFwGXsXo25NFCtdPMumOU7GcKOBMLF50/1hRHKDA5T2Ze2RXvfvvETwaLVv+hRnanU4DqaKy0gkZbfUVJFCt+dDO/4MVtgcGBLb9Tc3IR8/0uJfuZToBhZxacnD7dyF+kstyBobd1iLnPkgCJAMsnHUWq/jDYPgIbTE+iBeOqfnsRbI2jC5tijGv/IDYM9WjIhXvYCuUfkVQOpcemNlR9sJjFfrd+yj7VN4h4BbxCXYD/2Byk4i+395Vn2rTbi630QDWHUORjDvqEd0B4SE6bVnzkvazHvvWKkf21NWvqGlK2d459YVxLwPHsR/bEKes8PJKZFfSGIVjZaOCfPjS2OPCETf9c43rZXWjGUSfvXAwq4GYbo2HTTtW2Ti+rqKzdeBnHtQr3ohadZGpyl2xxYBEiXFtbli5Z6aKn/dMK8+LaFphvoI4oBzvCaUd+/JBLET55nZCqC8EfecByt5gMSnRWG/5tbAof+H+jNus5NZeRXpANRcSj82QePQNhaWIGKiqzRiNze+WYXGRp/im38LVcVYFDNqABMdJyluE9jN4bp5RCib6Xw==
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)(396003)(346002)(136003)(39860400002)(230922051799003)(451199024)(1800799009)(186009)(64100799003)(478600001)(6486002)(36756003)(26005)(122000001)(2616005)(6512007)(33656002)(2906002)(38070700005)(38100700002)(86362001)(71200400001)(53546011)(6506007)(316002)(8676002)(4326008)(8936002)(66946007)(54906003)(66476007)(66446008)(76116006)(64756008)(91956017)(6916009)(66556008)(41300700001)(5660300002)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="us-ascii"
Content-ID: <4F71E98C285F11409C5E3A86CBD9631F@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS1PR08MB7538
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:
 AM7EUR03FT050.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	093bc2e2-00d7-4a5e-0c24-08dbcc49052c
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	iH/5861C5oDJbyxgjxCs0K0Xy4JrQ7vt7sF0rikMZt8FcqhqLYCU5T6xc5LWks9EHlAhWFe8dT+nu442k1OTkRhG/VdW962qwJoPzeT6jHfZYxEA+79+DdhR86CCbsnxGD82purHlG+TYEWrMzQ0eP0NTDGjqso9L72n/BughrtDpoAvAM5R+SS2DubxYhUusSAHdywk746vkvvnvuTliL6Ngo64ecWNsauJ9xaAuzeG6C46QgQixr+/rFcF7q1eKT/dbHn/jEeE0ergc7IUVFBg1ZPfZYHOYh39/x4jAdw+BNQcpShyfr+YYNWwBz+bvJ95aSV28Cj+jQtf6dXed+1lWB5khhFZrF4EJM0AWSLqZKQbcMEGWpxLrtXQ3eSSo0xN+aj5hculc0dACe1wLwKrX960YhfcKBG4I/xjJHbCEEe1Xh96Cc2rDXSt8b4MwVg5Op7FdLzJoRwJhEEnSWowffPZbKAqGJlBEd/fYldV0PZclpBSVPHUmm2ItpqcyNBmRkCmI6iRPq91kWTjGTa+7X9DstrotzflukCdU9nyWf8wDSqodYZO6LgDIkKH0CYkOFa8ens5jbxuXFOvJEmZSqWVTHy9NRJw829linUCsy5cKFXwXx/0EOe0OceQjL4YBFKkcibZz8XbwYCndhQRKKEPyt7kL0gYseqevek+rjwYboI4E4jGfVF4pv2WFe6OJVz6WVWw+f9eUPYGFDhf3qy6WYpA7qkWo8eJoFzaqJt7MIcpLWTXLB+3Gfh2
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)(376002)(346002)(230922051799003)(82310400011)(451199024)(64100799003)(1800799009)(186009)(36840700001)(46966006)(40470700004)(40460700003)(40480700001)(53546011)(6512007)(6506007)(478600001)(6486002)(36860700001)(47076005)(81166007)(86362001)(36756003)(356005)(33656002)(82740400003)(2906002)(316002)(2616005)(26005)(336012)(54906003)(4326008)(5660300002)(70586007)(8936002)(8676002)(70206006)(6862004)(41300700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Oct 2023 00:03:48.8133
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 84f7ae35-a5f5-47fc-2d27-08dbcc490aca
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:
	AM7EUR03FT050.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB6485

Hi Julien,

> On Oct 14, 2023, at 01:40, Julien Grall <julien@xen.org> wrote:
>=20
> Hi Henry,
>=20
> On 09/10/2023 02:03, Henry Wang wrote:
>> setup_mm() is used for Xen to setup memory management subsystem,
>> such as boot allocator, direct-mapping, xenheap initialization,
>> frametable and static memory pages, at boot time.
>> We could inherit some components seamlessly for MPU support, such
>> as the setup of boot allocator, whilst we need to implement some
>> components differently for MPU, such as xenheap, etc. Also, there
>> are some components that is specific to MMU only, for example the
>> direct-mapping.
>> Therefore in this commit, we split the MMU-specific setup_mm() and
>> related code out. Since arm32 and arm64 have completely different
>> setup_mm() implementation, take the opportunity to split the
>> arch-specific setup_mm() to arch-specific files, so that we can
>> avoid #ifdef. Also, make init_pdx(), init_staticmem_pages(),
>> setup_mm(), and populate_boot_allocator() public for future MPU
>> implementation.
>=20
> I am a bit confused with the last sentence. AFAICT, even without the MPU =
work, I think you already need to export init_pdx() & co because it is call=
ed from two different units.

Yeah you are correct, I will reword the sentence to:
"Also, make init_pdx(), init_staticmem_pages(), and populate_boot_allocator=
() public
as these functions are now called from two different units, make setup_mm()=
 public
for future MPU implementation."

>=20
>> With above code movement, mark setup_directmap_mappings() as static
>> because the only caller of this function is now in the same file
>> with it. Drop the original setup_directmap_mappings() declaration
>> and move the in-code comment on top of the declaration on top of
>> the function implementation.
>> Signed-off-by: Henry Wang <Henry.Wang@arm.com>
>> Signed-off-by: Penny Zheng <penny.zheng@arm.com>
>> Signed-off-by: Wei Chen <wei.chen@arm.com>
>=20
> With the above comment clarified:
>=20
> Acked-by: Julien Grall <jgrall@amazon.com>

Thanks!

Kind regards,
Henry

>=20
> Cheers,
>=20
> --=20
> Julien Grall



From xen-devel-bounces@lists.xenproject.org Sat Oct 14 00:11:30 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 14 Oct 2023 00:11:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616973.959407 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrSFa-0006hQ-Oc; Sat, 14 Oct 2023 00:11:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616973.959407; Sat, 14 Oct 2023 00:11: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 1qrSFa-0006hJ-KB; Sat, 14 Oct 2023 00:11:26 +0000
Received: by outflank-mailman (input) for mailman id 616973;
 Sat, 14 Oct 2023 00:11: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=dUN7=F4=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qrSFa-0006hD-1x
 for xen-devel@lists.xenproject.org; Sat, 14 Oct 2023 00:11:26 +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 35fe4d0c-6a26-11ee-98d4-6d05b1d4d9a1;
 Sat, 14 Oct 2023 02:11:24 +0200 (CEST)
Received: from DUZPR01CA0213.eurprd01.prod.exchangelabs.com
 (2603:10a6:10:4b4::27) by AS8PR08MB6182.eurprd08.prod.outlook.com
 (2603:10a6:20b:291::24) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.45; Sat, 14 Oct
 2023 00:11:21 +0000
Received: from DB1PEPF00039231.eurprd03.prod.outlook.com
 (2603:10a6:10:4b4:cafe::64) by DUZPR01CA0213.outlook.office365.com
 (2603:10a6:10:4b4::27) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.29 via Frontend
 Transport; Sat, 14 Oct 2023 00:11:21 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DB1PEPF00039231.mail.protection.outlook.com (10.167.8.104) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6838.22 via Frontend Transport; Sat, 14 Oct 2023 00:11:21 +0000
Received: ("Tessian outbound 9aeaca65ec26:v211");
 Sat, 14 Oct 2023 00:11:20 +0000
Received: from 45118b4d0f31.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 239AB7F6-D6DE-42D7-A9FB-479DE18962E5.1; 
 Sat, 14 Oct 2023 00:11:15 +0000
Received: from EUR01-DB5-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 45118b4d0f31.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Sat, 14 Oct 2023 00:11:15 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by AS1PR08MB7538.eurprd08.prod.outlook.com (2603:10a6:20b:482::18)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.46; Sat, 14 Oct
 2023 00:11:13 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41%4]) with mapi id 15.20.6863.032; Sat, 14 Oct 2023
 00:11: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: 35fe4d0c-6a26-11ee-98d4-6d05b1d4d9a1
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=fJirgkc+PBmwlTGucvBwdTikJ33tgo+Nl/klEuf009k=;
 b=62Dtk1azFX8zwqjPhUnGl8Bw6zUpPlyPoKTUJwgGi8sfl5jul1kj9XZWz3EXiMlUIUSREbMgAm+uKp/lYRo5Eg/Zpj9IURBjZIfXDVNgyO5/csQbav5R2Dme+vhyw0ZUy7SdMzbU9jRdN2ATGRfZBaNuBeL0YCFWauaqNdKKsDM=
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: 9f9affdc20cf9ff0
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Uhgk2VsqgzTvPv7MR6DkSo9Z3DBLp0bORK8WNPvr2/Ya63LFRGWxEeRMuuX68SCqZrlmW+lD6g5IfINcj8XtDfCO3W2kpKcSkFZj5Vq2mnVmDhtP24mE1+iBw5q2QRBhjPKeP6RxiqmG6xkuAMEhRarQWubz357sVR9HFGUG/2jR6KpgXoJrHvF4pQJQGYfE9ZVMKsInAPcze7WjQcbTnYfBTkf4Z83Vztz3d1q5t5nA110XWkGGC2vMRI0DmXveaDpX2zpOyWzYlF+sF7ofmVcpwsZxb7TgqzCvkI4wWHUrpxpuAvHLYS7UJriJDIF8r2h1MYOG4NRtL4PJ+0UnFw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=fJirgkc+PBmwlTGucvBwdTikJ33tgo+Nl/klEuf009k=;
 b=i4OCpPow5UMg/OSEDldlLAGKXj18+KoSxqE/NRerJUHOG1g7RyOqh3rr3X7kYrSU9sxDEtKQdIAN9u8XKzOUTe1NVN4J62cKUG2ez7fVKRbtugWdG86hu9BrjAFaZY5TypTF3JhAwKgqpazNS2/VYPOCnBWtxAlz9PL/2WIZebXl9tvk5t/yQ5BfmcXHDpCMlT6A9LLbhw4Di0Pny9eeqwjxRikQpiKovHBiL2rKOWwN5LHS3rLks3ujeFqQ3aQm0zj5GqqsQJdn54Er4tX3RziFHsGmWP9VnqQ2Y7yaOO0G3A98PuqjvFwsGZFgEk4oGwRidn185uF49p3SH/Rkkw==
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=fJirgkc+PBmwlTGucvBwdTikJ33tgo+Nl/klEuf009k=;
 b=62Dtk1azFX8zwqjPhUnGl8Bw6zUpPlyPoKTUJwgGi8sfl5jul1kj9XZWz3EXiMlUIUSREbMgAm+uKp/lYRo5Eg/Zpj9IURBjZIfXDVNgyO5/csQbav5R2Dme+vhyw0ZUy7SdMzbU9jRdN2ATGRfZBaNuBeL0YCFWauaqNdKKsDM=
From: Henry Wang <Henry.Wang@arm.com>
To: Julien Grall <julien@xen.org>
CC: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>, Stefano
 Stabellini <sstabellini@kernel.org>, Bertrand Marquis
	<Bertrand.Marquis@arm.com>, Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Penny Zheng <Penny.Zheng@arm.com>, Wei Chen <Wei.Chen@arm.com>
Subject: Re: [PATCH v7 6/8] xen/arm: Fold pmap and fixmap into MMU system
Thread-Topic: [PATCH v7 6/8] xen/arm: Fold pmap and fixmap into MMU system
Thread-Index: AQHZ+kx8olLPGtaa90qvzUCne3k+lbBIBR+AgABsGgA=
Date: Sat, 14 Oct 2023 00:11:13 +0000
Message-ID: <A418CEB5-F606-4123-B806-17CE0A6FE69D@arm.com>
References: <20231009010313.3668423-1-Henry.Wang@arm.com>
 <20231009010313.3668423-7-Henry.Wang@arm.com>
 <9346ebac-748d-4d12-95ca-31af5483640a@xen.org>
In-Reply-To: <9346ebac-748d-4d12-95ca-31af5483640a@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_|AS1PR08MB7538:EE_|DB1PEPF00039231:EE_|AS8PR08MB6182:EE_
X-MS-Office365-Filtering-Correlation-Id: 58f6c367-98c8-44ee-10df-08dbcc4a1857
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:
 IWMKsMBvsbCE9h/RW7TnbjrL9ihiXdJeLOTJFsto14wr7sP2m5qgn2dLeZfrtZZukw4w52JJjHEK3YQNJgw0TETRFmMHpjwtcSy0p5LzhtzYHn8uKhA7y+95VAyV22AcNnoI593SD8OK0jVnGnYQh4RgDT4q/aOii5+UG5BwCbAVcvaCwbE0XVj1aCviLr9pmO4qJZrkY+qNfiYQ00A8/7pU6+z1UDcmMInGAdZa2eCKlM54kgFe6jOsgUH0YOt9sSqQTco5z613F7LHK1XryFzs9NyvgDkFTQ57k6IxGtDXXTn9P6CsuiSMbctm9Tl9Wb8ZZEJD9zN47vk/+v7iWDak5N3iik1Z4krA2kociyd7Frfu9Tuiep76spL7hEkBg/+1ltB43DZD7C4o9UO2KDzu6sstm1Ylcr8pAriD6vP60+0qvxnqXj0gYlV2167B6vGqMXn93JvRjKsLcVOl0FsDn+MLX2rnKcQnHm6uiSdSARaRWrnfDM+P0hcHEXj2EHZBvlZdd7wAFhMXdQH8ZFOWS17rXi5TPt+fYI+KpOyoqRimCUALJm9mKhFrgCxhTQul8jIdiw4GsFY8+XEUYLmT4CFfmxoxfRaAuzW0xsuy/wKth2vY+28uhY5q8OOQRJ7jy8qfTMOZ6a51sL5qew==
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)(346002)(396003)(376002)(366004)(230922051799003)(186009)(1800799009)(64100799003)(451199024)(8676002)(8936002)(4326008)(316002)(53546011)(6506007)(41300700001)(5660300002)(64756008)(76116006)(91956017)(66946007)(66446008)(66476007)(54906003)(6916009)(66556008)(478600001)(6486002)(86362001)(38100700002)(83380400001)(71200400001)(6512007)(33656002)(26005)(36756003)(2616005)(122000001)(38070700005)(2906002)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <D8393C7EE36B144197C623F26ED1FC38@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS1PR08MB7538
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:
 DB1PEPF00039231.eurprd03.prod.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	1741a7d1-eb43-437e-7933-08dbcc4a13d8
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	4x7Of4ODIv85KjfLrNyobMKh8MBlkwxg3rscWgaqb6bjtnlo12WDw4bZmRYCYZ9LCgm6JKDGpF4mPMAA9IhxF6M5QfcqvSE5bNOCEBGVe7W9HC/rJMzFYBWjLc/pcOBZ2QV8Vb8AtApHmqTaQb1LT1ckQiJicXhbizdex2CLavu8i7VjQGU+sMlXx56+UednTweNyfhsl0Wa3qUVgzGNCBFmsZqK0xxlAm5S58ppZeYkJC7ATEkM/guoBczoZrw9dK4K7rm5wMNbIyoCPCldHQ0tNMQ/oXS6kdmasvZSvD+5UR/kG8rdFXRdUxUvDC/bco0/GWNL94VAhNwWDtg1+3V2BPV0k4ZsqPO9BXZul3TH1T/yYFmITlHD36dzo3FMgcyWzCIabmCboboQO6CCXv8ZFwPCkkptHumkAoNYxmZquP78v7Jb29UtSsOpBoRAaMiDBPaWuPXlJTGahkArViOCv3UstaMBoDqPje5arGb3dm+h3g+etsk8KUoAJy0GicdxNI2eKcnGkm2YM1fDt0O9h0wJ32s9f969+gY2mzWIl1gV2GuHQDrJlxd17619i5CMzaMRAt1jZSRuL9Rt7V4P/SfPxXvpBWZZL5ofeXsPKQT/r1MivFJCAeAQgxaTzAK0adAo6J4vbeQpApsR32eISSPBXqNxcGLzxJ+OKFHDCYu2w+45SHrPm6D6edT/RGFJu/1Egkh/FySENOqCFDP62qKOjpxPWpXvDMdiynk=
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)(186009)(64100799003)(451199024)(82310400011)(46966006)(40470700004)(36840700001)(6506007)(6486002)(6512007)(53546011)(54906003)(316002)(70206006)(2616005)(70586007)(478600001)(6862004)(8676002)(8936002)(336012)(4326008)(2906002)(41300700001)(36756003)(83380400001)(36860700001)(86362001)(356005)(26005)(5660300002)(40480700001)(40460700003)(47076005)(81166007)(33656002)(82740400003);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Oct 2023 00:11:21.0750
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 58f6c367-98c8-44ee-10df-08dbcc4a1857
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:
	DB1PEPF00039231.eurprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB6182

SGkgSnVsaWVuLA0KDQo+IE9uIE9jdCAxNCwgMjAyMywgYXQgMDE6NDQsIEp1bGllbiBHcmFsbCA8
anVsaWVuQHhlbi5vcmc+IHdyb3RlOg0KPiANCj4gSGkgSGVucnksDQo+IA0KPiBPbiAwOS8xMC8y
MDIzIDAyOjAzLCBIZW5yeSBXYW5nIHdyb3RlOg0KPj4gZGlmZiAtLWdpdCBhL3hlbi9hcmNoL2Fy
bS9tbXUvc2V0dXAuYyBiL3hlbi9hcmNoL2FybS9tbXUvc2V0dXAuYw0KPj4gaW5kZXggYzJkZjk3
NmFiMi4uZGZmODFmNjEyNSAxMDA2NDQNCj4+IC0tLSBhL3hlbi9hcmNoL2FybS9tbXUvc2V0dXAu
Yw0KPj4gKysrIGIveGVuL2FyY2gvYXJtL21tdS9zZXR1cC5jDQo+PiBAQCAtMzM5LDYgKzMzOSwz
MyBAQCB2b2lkIGZyZWVfaW5pdF9tZW1vcnkodm9pZCkNCj4+ICAgICAgcHJpbnRrKCJGcmVlZCAl
bGRrQiBpbml0IG1lbW9yeS5cbiIsIChsb25nKShfX2luaXRfZW5kLV9faW5pdF9iZWdpbik+PjEw
KTsNCj4+ICB9DQo+PiAgKy8qKg0KPj4gKyAqIGNvcHlfZnJvbV9wYWRkciAtIGNvcHkgZGF0YSBm
cm9tIGEgcGh5c2ljYWwgYWRkcmVzcw0KPj4gKyAqIEBkc3Q6IGRlc3RpbmF0aW9uIHZpcnR1YWwg
YWRkcmVzcw0KPj4gKyAqIEBwYWRkcjogc291cmNlIHBoeXNpY2FsIGFkZHJlc3MNCj4+ICsgKiBA
bGVuOiBsZW5ndGggdG8gY29weQ0KPj4gKyAqLw0KPj4gK3ZvaWQgX19pbml0IGNvcHlfZnJvbV9w
YWRkcih2b2lkICpkc3QsIHBhZGRyX3QgcGFkZHIsIHVuc2lnbmVkIGxvbmcgbGVuKQ0KPj4gK3sN
Cj4+ICsgICAgdm9pZCAqc3JjID0gKHZvaWQgKilGSVhNQVBfQUREUihGSVhNQVBfTUlTQyk7DQo+
PiArDQo+PiArICAgIHdoaWxlIChsZW4pIHsNCj4+ICsgICAgICAgIHVuc2lnbmVkIGxvbmcgbCwg
czsNCj4+ICsNCj4+ICsgICAgICAgIHMgPSBwYWRkciAmIChQQUdFX1NJWkUtMSk7DQo+IA0KPiBO
SVQ6IEkgd291bGQgdGFrZSB0aGUgb3Bwb3J0dW5pdHkgdG8gYWRkIGEgbWlzc2luZyBzcGFjZSBi
ZWZvcmUvYWZ0ZXIgJy0nLg0KDQpTb3VuZHMgZ29vZCwgSeKAmXZlIGRvbmUgdGhhdCBpbiBteSBs
b2NhbCB2OCBhbmQgYWxzbyBtZW50aW9uZWQgdGhpcyBjaGFuZ2UNCmluIGNvbW1pdCBtZXNzYWdl
IGFzOg0KYGBgDQpUYWtlIHRoZSBvcHBvcnR1bml0eSB0byBhZGQgYSBtaXNzaW5nIHNwYWNlIGJl
Zm9yZSBhbmQgYWZ0ZXIgJy0nIGluDQoicyA9IHBhZGRyICYgKFBBR0VfU0laRS0xKTsiIG9mIGNv
cHlfZnJvbV9wYWRkcigpLg0KYGBgDQoNCj4gDQo+IFJldmlld2VkLWJ5OiBKdWxpZW4gR3JhbGwg
PGpncmFsbEBhbWF6b24uY29tPg0KDQpUaGFua3MhDQoNCktpbmQgcmVnYXJkcywNCkhlbnJ5DQoN
Cj4gDQo+IENoZWVycywNCj4gDQo+IC0tIA0KPiBKdWxpZW4gR3JhbGwNCg0K


From xen-devel-bounces@lists.xenproject.org Sat Oct 14 00:12:14 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 14 Oct 2023 00:12:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616978.959417 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrSGM-0007Cs-0H; Sat, 14 Oct 2023 00:12:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616978.959417; Sat, 14 Oct 2023 00: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 1qrSGL-0007Cl-TX; Sat, 14 Oct 2023 00:12:13 +0000
Received: by outflank-mailman (input) for mailman id 616978;
 Sat, 14 Oct 2023 00: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=dUN7=F4=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qrSGK-00070e-UE
 for xen-devel@lists.xenproject.org; Sat, 14 Oct 2023 00:12:12 +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 51737f5e-6a26-11ee-9b0e-b553b5be7939;
 Sat, 14 Oct 2023 02:12:11 +0200 (CEST)
Received: from AM6PR05CA0018.eurprd05.prod.outlook.com (2603:10a6:20b:2e::31)
 by VI1PR08MB10101.eurprd08.prod.outlook.com (2603:10a6:800:1ca::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.45; Sat, 14 Oct
 2023 00:12:05 +0000
Received: from AM7EUR03FT059.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:20b:2e:cafe::f0) by AM6PR05CA0018.outlook.office365.com
 (2603:10a6:20b:2e::31) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.46 via Frontend
 Transport; Sat, 14 Oct 2023 00:12:05 +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.6907.16 via Frontend Transport; Sat, 14 Oct 2023 00:12:04 +0000
Received: ("Tessian outbound ee9c7f88acf7:v211");
 Sat, 14 Oct 2023 00:12:04 +0000
Received: from 95be6c1305f7.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 735F6F3B-7F3B-4D57-BBA8-DF923F7F724C.1; 
 Sat, 14 Oct 2023 00:11:57 +0000
Received: from EUR01-DB5-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 95be6c1305f7.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Sat, 14 Oct 2023 00:11:57 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by AS1PR08MB7538.eurprd08.prod.outlook.com (2603:10a6:20b:482::18)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.46; Sat, 14 Oct
 2023 00:11:56 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41%4]) with mapi id 15.20.6863.032; Sat, 14 Oct 2023
 00:11: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: 51737f5e-6a26-11ee-9b0e-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=DILzAxlvQ1tWonfVC8Tjwv+XhzTYjjJqWANPCygnLDk=;
 b=mAqaflf+tVJg8KZvlRIBWD/DLu5PkK22T5HSNO///c2CVZ5krih/q0zrNSGn5aFp9+KrMS531PJz/EeNUgMSVN5cQ86nVE0vxcqKi7ZrGYDgNWCdSR3bMs+QKn5RLBf5cz1UROZzUuUI2jqw5fsAEe7Dui9LfjTcCkAlpywfYi4=
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: 3970dd7d22ca0f74
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=kyJlTNKH2th9JZo7A0hihtIg4pmAxMdCNyxXFc5a1MjhOzM9H5Wu0Lx/aMYnLu+TnK56gxQ9HX06TWG0bKYaTjUW16MCkrE+jFeFQ/S1E5N0X8oa/SE58y9I3uLSiZn8DTciQEq31OpU7o6iKuJkqVcbKemxxYwJ2nqGRN3deeKm5qJzYQnFr7ryrmOa14RiEJsXDB6GpwFwikuLBgNzKTFM/NGLNlOVLaRq14DUrw9A0ykGBgAwNO2e9RnFf5ZYumlKY9ZqPpfiuEnj0DMUazeBg6Tkj5G9OOUWut15NzO3o1ftce0G9H1lpFP+2Ljbd41Ea5FU8j8o+SbVNa+ymQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=DILzAxlvQ1tWonfVC8Tjwv+XhzTYjjJqWANPCygnLDk=;
 b=T69NjHh7x91hSk4cDcU3GDYuxI1xATC0CDzNx2ANmIOD/DVI6Gisg/8VC3eQ66lC5Uz3L6lqL2cjQIyAva9j0k4OGT2sMiewjxIckhNVNkL/pTPAYFmkYIH/MLMymHQYA+OEyYRVxHNDa3bc/y3AuLYOF93hnz9CmxOz47kpP6R5l9UHoGkAn0KAlmLIUsUoM8mgedMyEoLQ5thYH1IO0wBdDzD/OdWTy9QFR0vH8S9N+6cZXphICG391SzssvPv/QdZUJBrapP8vVrhMcpDQRNyHt3vIvLfqmuZmk7/adJ8oxWPuGpJaCq9Xozygl9SaPVMT2OyGNM+w6v8eItRaA==
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=DILzAxlvQ1tWonfVC8Tjwv+XhzTYjjJqWANPCygnLDk=;
 b=mAqaflf+tVJg8KZvlRIBWD/DLu5PkK22T5HSNO///c2CVZ5krih/q0zrNSGn5aFp9+KrMS531PJz/EeNUgMSVN5cQ86nVE0vxcqKi7ZrGYDgNWCdSR3bMs+QKn5RLBf5cz1UROZzUuUI2jqw5fsAEe7Dui9LfjTcCkAlpywfYi4=
From: Henry Wang <Henry.Wang@arm.com>
To: Julien Grall <julien@xen.org>
CC: Xen-devel <xen-devel@lists.xenproject.org>, Penny Zheng
	<Penny.Zheng@arm.com>, Stefano Stabellini <sstabellini@kernel.org>, Bertrand
 Marquis <Bertrand.Marquis@arm.com>, Wei Chen <Wei.Chen@arm.com>, Volodymyr
 Babchuk <Volodymyr_Babchuk@epam.com>
Subject: Re: [PATCH v7 7/8] xen/arm: Rename init_secondary_pagetables() to
 prepare_secondary_mm()
Thread-Topic: [PATCH v7 7/8] xen/arm: Rename init_secondary_pagetables() to
 prepare_secondary_mm()
Thread-Index: AQHZ+kyDmsm+JuKZJU+E4crrwIz5KbBIBiqAgAAAIYCAAGshgA==
Date: Sat, 14 Oct 2023 00:11:56 +0000
Message-ID: <D6DF80B2-BBEF-41DE-AB1C-7962F9FC6B4E@arm.com>
References: <20231009010313.3668423-1-Henry.Wang@arm.com>
 <20231009010313.3668423-8-Henry.Wang@arm.com>
 <92c939fb-a8a5-4bbb-8d80-844a70f9b3e5@xen.org>
 <b52f8338-ab8d-4eac-b60b-34fd163fb03e@xen.org>
In-Reply-To: <b52f8338-ab8d-4eac-b60b-34fd163fb03e@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_|AS1PR08MB7538:EE_|AM7EUR03FT059:EE_|VI1PR08MB10101:EE_
X-MS-Office365-Filtering-Correlation-Id: 863ed5bc-e4ea-4e44-2e8c-08dbcc4a327a
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:
 EKJ+3OC46o9LdpQ9ZcYOJ/Rc+jBZf1mRUcZXaCAWBCU6sHNSV+ovqMaG12X7FUCQ5BJGJtDHsR+FU38F3AODaMuzTEhvvS1tcgNEN5y6qxWQsAB/Dqg/zDsAZcV5jvdZrD/QtSXQU8LdC8GRMZquDl7v8flUBDpOIYysF0SitV+9x5xaltDC4QFCLdXO4NujZOqBETuigKMPqt4qHlb/8tOVE5o1aDrJkBTL2ykRLf8yZ9eZr9yDphwNOHF2b/OUipPu6a/NJjSvFvt45wbTpkUWEXs61GrqhvnwIyGKCOzrfWw7THgfKgT9cvKt3SKTPMzQWQd7Ik1ztGMeAaHvYlsKRmXJnfGlvHRz1mlS90NAws9HVUNN/R1G/ABxVfSfU6NYVGVlBsJrjG8iJ6zfCX20YkpgDf6Uc/F/lR4O8g0OR0gxZULeNblfTg8WTQiO1iaS6teCN+/FwQ+qMYh8Awb+qepSEOKVm65q+nVK694mZ8+MN7i2wESBoCvQsvYnD6gEGXeuTnjNkRO/huFHmMiXzxabaYN/6JOrkTGmgs13yuvaQ3Rrf158o30LrY2EdLtGScEPKTKB5DRmzIvtEpm94mOehc1NHnDQMZnbQ4EjtGOABjhlkeC4WNGwU4OzoH8jwbyp6qI6aEIffQ5pLsL9NJmrMI/qsn7Lhr6YQSA=
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)(346002)(396003)(376002)(366004)(230922051799003)(186009)(1800799009)(64100799003)(451199024)(8676002)(8936002)(4326008)(316002)(53546011)(6506007)(41300700001)(5660300002)(64756008)(76116006)(91956017)(66946007)(66446008)(66476007)(54906003)(6916009)(66556008)(478600001)(6486002)(86362001)(38100700002)(83380400001)(71200400001)(6512007)(33656002)(26005)(36756003)(2616005)(122000001)(38070700005)(2906002)(21314003)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="us-ascii"
Content-ID: <41C276C069858548A39F8CCF743DE3C5@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS1PR08MB7538
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:
	2b80fed6-c539-4cbc-d6b5-08dbcc4a2d5a
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	I0XCqYweBoEyPmR9Ynabrw0obr78bqoyDaSdgmqcmEQHIaK9tTaURXnISWbOXEVZap1f31m5tuOTOROlV4XDlt6JGtThvPwSdDqKktn9o2pZCiIGhGaQHsvn37onE7Lx4vLx2rzC0UbBILMDGoezA+AD1RfGGnpNh48a+khIDE42akB9L2XAr4jrfviTAIuzyoR6CMtWLrIbp4OVsjdV7Qmhsj0rXqeLT3yhQ7msRNrCEHWlLmjMA3FcYsfG1C6aAvyMZdbUjflVL4OLXzp7RdxdKt5o4pk+egRT8DI5kHXq80rfaq4Sz51kT/fEGbjstNg0gbrx5pjHHFzSTJMA/JjCQgP8gaNnlyOEU2iHvv4UFZ8JhkNTIvNQRoB6212zkNlAjFqeZVaP/6yiHPzWJxVfTEE7dcGke+7WRNWh1And3QDNI/2cVXgDbJ93a6DNtqb94SQYvyvQIXocQkBcAJfoq36KOWNHvc6VVeLZHxbzvbbyn6oQlRiXgAbAm4+g6Ti2ysd9hGkbgkrSLQXLnJrg5NwlqRDDl8Tw+VHI3MjaMYf7IHwImSei+HIUUU2OjRm+YJXhJAR2otE4Wy3kFsjOHM1kjAqOIDdonaiAS1UzY4xZwxaz7yXcmui042xrR+yvTiWykyWn+vclpyEK1emCQoqoQY4AEBqyuI7LK1SUTH/6AeC8AZROs8p1hsJP+ZjYVLegM0R2fBIWbgmOzCPmj5Rfu6bxa7cgWwDSYppk6o3gDYsehEF8NQXOBi16vfnMvmxMMJx57BC7/7t06A==
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)(346002)(136003)(39860400002)(230922051799003)(451199024)(64100799003)(82310400011)(1800799009)(186009)(40470700004)(46966006)(36840700001)(83380400001)(47076005)(6506007)(53546011)(478600001)(36860700001)(40460700003)(26005)(2616005)(336012)(40480700001)(82740400003)(6512007)(8936002)(33656002)(86362001)(2906002)(70206006)(41300700001)(8676002)(5660300002)(4326008)(6862004)(81166007)(36756003)(70586007)(316002)(54906003)(356005)(107886003)(6486002)(21314003);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Oct 2023 00:12:04.9102
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 863ed5bc-e4ea-4e44-2e8c-08dbcc4a327a
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: VI1PR08MB10101

Hi Julien,

> On Oct 14, 2023, at 01:48, Julien Grall <julien@xen.org> wrote:
>=20
> On 13/10/2023 18:47, Julien Grall wrote:
>> Hi Henry,
>> On 09/10/2023 02:03, Henry Wang wrote:
>>> From: Penny Zheng <penny.zheng@arm.com>
>>>=20
>>> init_secondary_pagetables() is a function in the common code path
>>> of both MMU and future MPU support. Since "page table" is a MMU
>>> specific concept, rename init_secondary_pagetables() to a generic
>>> name prepare_secondary_mm() as the preparation for MPU support.
>>>=20
>>> Take the opportunity to fix the incorrect coding style of the in-code
>>> comments.
>>>=20
>>> Signed-off-by: Penny Zheng <penny.zheng@arm.com>
>>> Signed-off-by: Henry Wang <Henry.Wang@arm.com>
>>> ---
>>> v7:
>>> - No change.
>>> v6:
>>> - Only rename init_secondary_pagetables() to prepare_secondary_mm().
>>> ---
>>>   xen/arch/arm/arm32/head.S     | 2 +-
>>>   xen/arch/arm/include/asm/mm.h | 8 +++++---
>>>   xen/arch/arm/mmu/smpboot.c    | 4 ++--
>>>   xen/arch/arm/smpboot.c        | 2 +-
>>>   4 files changed, 9 insertions(+), 7 deletions(-)
>>>=20
>>> diff --git a/xen/arch/arm/arm32/head.S b/xen/arch/arm/arm32/head.S
>>> index 39218cf15f..c7b2efb8f0 100644
>>> --- a/xen/arch/arm/arm32/head.S
>>> +++ b/xen/arch/arm/arm32/head.S
>>> @@ -257,7 +257,7 @@ GLOBAL(init_secondary)
>>>   secondary_switched:
>>>           /*
>>>            * Non-boot CPUs need to move on to the proper pagetables, wh=
ich were
>>> -         * setup in init_secondary_pagetables.
>>> +         * setup in prepare_secondary_mm.
>>>            *
>>>            * XXX: This is not compliant with the Arm Arm.
>>>            */
>>> diff --git a/xen/arch/arm/include/asm/mm.h b/xen/arch/arm/include/asm/m=
m.h
>>> index d23ebc7df6..db6d889826 100644
>>> --- a/xen/arch/arm/include/asm/mm.h
>>> +++ b/xen/arch/arm/include/asm/mm.h
>>> @@ -204,9 +204,11 @@ extern void setup_pagetables(unsigned long boot_ph=
ys_offset);
>>>   extern void *early_fdt_map(paddr_t fdt_paddr);
>>>   /* Remove early mappings */
>>>   extern void remove_early_mappings(void);
>>> -/* Allocate and initialise pagetables for a secondary CPU. Sets init_t=
tbr to the
>>> - * new page table */
>>> -extern int init_secondary_pagetables(int cpu);
>>> +/*
>>> + * Allocate and initialise pagetables for a secondary CPU.
>>> + * Sets init_ttbr to the new page table.
>>> + */
>> AFAIU, with the renaming, you are trying to make the call MMU/MPU agnost=
ic. But the comment is still very tailored to the MPU. I would consider to =
move the comment to mmu/smpboot.c and replace this one with a generic comme=
nt. Something like:
>> /* Prepare the memory subystem to bring-up the given secondary CPU. */

Good suggestion! I will follow this in v8.

>=20
> I forgot to mention. With that:
>=20
> Reviewed-by: Julien Grall <jgrall@amazon.com>

Thanks!

Kind regards,
Henry

>=20
> Cheers,
>=20
> --=20
> Julien Grall



From xen-devel-bounces@lists.xenproject.org Sat Oct 14 01:27:32 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 14 Oct 2023 01:27:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.616997.959427 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrTQx-0006Xw-BX; Sat, 14 Oct 2023 01:27:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 616997.959427; Sat, 14 Oct 2023 01:27: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 1qrTQx-0006Xp-8r; Sat, 14 Oct 2023 01:27:15 +0000
Received: by outflank-mailman (input) for mailman id 616997;
 Sat, 14 Oct 2023 01:27: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=dUN7=F4=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qrTQw-0006Xj-G9
 for xen-devel@lists.xenproject.org; Sat, 14 Oct 2023 01:27:14 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com
 (mail-db3eur04on061a.outbound.protection.outlook.com
 [2a01:111:f400:fe0c::61a])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id cc760180-6a30-11ee-98d4-6d05b1d4d9a1;
 Sat, 14 Oct 2023 03:27:12 +0200 (CEST)
Received: from DUZPR01CA0332.eurprd01.prod.exchangelabs.com
 (2603:10a6:10:4b8::18) by AS2PR08MB8453.eurprd08.prod.outlook.com
 (2603:10a6:20b:559::22) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.44; Sat, 14 Oct
 2023 01:27:08 +0000
Received: from DB5PEPF00014B97.eurprd02.prod.outlook.com
 (2603:10a6:10:4b8:cafe::25) by DUZPR01CA0332.outlook.office365.com
 (2603:10a6:10:4b8::18) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.30 via Frontend
 Transport; Sat, 14 Oct 2023 01:27:07 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DB5PEPF00014B97.mail.protection.outlook.com (10.167.8.235) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6838.14 via Frontend Transport; Sat, 14 Oct 2023 01:27:07 +0000
Received: ("Tessian outbound ee9c7f88acf7:v211");
 Sat, 14 Oct 2023 01:27:07 +0000
Received: from db4bbe6061ab.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 544F0810-952E-4096-897E-7D28AD888E1B.1; 
 Sat, 14 Oct 2023 01:27:00 +0000
Received: from EUR01-VE1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id db4bbe6061ab.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Sat, 14 Oct 2023 01:27:00 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by VE1PR08MB5615.eurprd08.prod.outlook.com (2603:10a6:800:1b3::23)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.45; Sat, 14 Oct
 2023 01:26:56 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41%4]) with mapi id 15.20.6863.032; Sat, 14 Oct 2023
 01:26: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: cc760180-6a30-11ee-98d4-6d05b1d4d9a1
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=8q18G9Wznw6Or3DTp9DVU8ApKymBLhY1B9Ayz8T0tEY=;
 b=0sI74IoKZwwbSnq69ASVNuN78UFqPvW08EU/Zshq8/CvnGvbeT9M5JgJY7OMkywQG9PFD5zAs7S7n1Kv+W7D4jIyEjUaWauxhsxr3r7y/yPK538EFF4lGO4YnWUpKAJRW1Deabe1628ENtG79Pf+F/3XDbQpQJJmBk6iBaCCWR0=
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: f3c2dccfe749ffc8
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=LWf9psib8aPHrmop3/Z8JuaswsEtk7CCgrMqbG+3SoPk6Qk96616QZYpnyS4OMXrxvSTXhuRkhK0i9+iwMA9fDlR3yI3sRFhbr01Jnj4g6tobaYG+6tJK43RxrFDD8J8Y8BXjRM0H5jsyxm4LTpjKngT1LnmcS2h0+jP+JikPWMSu0cP0ATtQWXc/E5IKhrrW48LE4sSVe3y8iiYgk24bKF1Ra4K/xPl3IHUOXJj4+htf1Uxy3VEGSAGoo3ShB7qqtcxybYpE0fqBFtXoHDSHlhuMBUUccP413GJ3Nk76jyhr3BE5COVBk7tb5CbNt4hnaNrYdbkDSdL1jKvpLD5UA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=8q18G9Wznw6Or3DTp9DVU8ApKymBLhY1B9Ayz8T0tEY=;
 b=WHWk4f1lCa/6b0IwJE6FsceZyK0/CbC110sZ52/HwUBgY+NBMsuBk6pfDlVOtjsQ7PYr71awRW67K8AR97kiTWm0CvM6KBzcGB0epebhKf+8Un3XO+MrDVZIRvEn/CL7engbHBTLdXaEm2vziwGNu1YlssxB8e5LSaR13U1pxwEIXuwMKtS4kS9yYVFwMuJR8hr3sDdz+6ShKEerM/vG+nQUqpxIKgD/yUHcjDyr4UkGudQOl4wOnN6yu3qkrcsichJubguA0dI834SzcS9W3xvcqMc6iGcrM53BfAf/6QscYX50lLugtPr68zc3sBzfDHh2XmL8Y7bzSN8nyuYP7Q==
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=8q18G9Wznw6Or3DTp9DVU8ApKymBLhY1B9Ayz8T0tEY=;
 b=0sI74IoKZwwbSnq69ASVNuN78UFqPvW08EU/Zshq8/CvnGvbeT9M5JgJY7OMkywQG9PFD5zAs7S7n1Kv+W7D4jIyEjUaWauxhsxr3r7y/yPK538EFF4lGO4YnWUpKAJRW1Deabe1628ENtG79Pf+F/3XDbQpQJJmBk6iBaCCWR0=
From: Henry Wang <Henry.Wang@arm.com>
To: Julien Grall <julien@xen.org>
CC: Xen-devel <xen-devel@lists.xenproject.org>, Penny Zheng
	<Penny.Zheng@arm.com>, Stefano Stabellini <sstabellini@kernel.org>, Bertrand
 Marquis <Bertrand.Marquis@arm.com>, Volodymyr Babchuk
	<Volodymyr_Babchuk@epam.com>, Wei Chen <Wei.Chen@arm.com>
Subject: Re: [PATCH v7 8/8] xen/arm: mmu: move MMU specific P2M code to
 mmu/p2m.{c,h}
Thread-Topic: [PATCH v7 8/8] xen/arm: mmu: move MMU specific P2M code to
 mmu/p2m.{c,h}
Thread-Index: AQHZ+kyDxYKGSy7Hi0WFFm+WJG77tLBID9YAgAB2kIA=
Date: Sat, 14 Oct 2023 01:26:55 +0000
Message-ID: <4607C809-7625-4C8E-A26E-8B8F641CEB29@arm.com>
References: <20231009010313.3668423-1-Henry.Wang@arm.com>
 <20231009010313.3668423-9-Henry.Wang@arm.com>
 <af6a376c-a224-45d7-9972-d69ee44239d6@xen.org>
In-Reply-To: <af6a376c-a224-45d7-9972-d69ee44239d6@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_|VE1PR08MB5615:EE_|DB5PEPF00014B97:EE_|AS2PR08MB8453:EE_
X-MS-Office365-Filtering-Correlation-Id: 0968898c-77db-439d-02df-08dbcc54ae0d
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:
 tNQRTe4sVk/aLHqiQdQwsEE2L2877OOMcCt8RH71HxUyz4G7R+LBAU/O5bzf/vVOfqdbZzsskddd3mCAmjqGXA12ux2K5Fq7Rtk7Rr9rLxtSx6rCFuL/qPc+pG4l+PDTs69wcoYhHbAlwiXOIq9OHyDVD8RvoS2JzR9XGWnw4BNNmqITubNd0P723diOwtszKzjk7y7VI30jstjSPKMi++nEdkQw7kLeiCCtBZljSyrdELsiPrkJKjsoz9r86uYgcG/n5KPgqhpk0ORrSwnAuz+5fiOwW7nJ4Yj8g8mCyZvB3HE3ac26tV6Lg36+29jmAiSR+J42d8h+GFDrvbiXud06LPx5yQZT2YV1axnsgRC5461injzQuuQcq0DwNc2mHlljFGCBalXr1AyfADPr5oHf2Hd2mZirY2N6oCM/yvi3T+QlKAKjAdCsUBAYuE9lm/S2Bt/+Aw0f6qBQVfroheX/SEGhJYUxUXKeICACT7f9z23m4P2KzJc3T4KKBxTzloyD+8S7u4T4P5Tdaf+n7hJJ5xBoFOKGrn+1HJ8oNVlN/mOTPW3a1xn10Xl8aek48MwOnpNGcCUkcsYlFoKMEK/rNB1qSxH3fY0E7lYLyHYoRcBOQWiFm4VeYrvwpvHobwIzSr/zB07iCSqBxBj5cQ==
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)(39860400002)(396003)(346002)(376002)(136003)(230922051799003)(1800799009)(64100799003)(451199024)(186009)(122000001)(86362001)(33656002)(36756003)(38070700005)(83380400001)(2906002)(38100700002)(71200400001)(5660300002)(8676002)(4326008)(53546011)(76116006)(54906003)(66476007)(6916009)(64756008)(6512007)(66556008)(316002)(6506007)(66446008)(66946007)(91956017)(41300700001)(966005)(8936002)(6486002)(478600001)(2616005)(26005)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <675E24BA21C9634F9C86B1293459C522@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VE1PR08MB5615
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:
 DB5PEPF00014B97.eurprd02.prod.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	08ba8fad-0cea-44ad-f4fc-08dbcc54a738
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	iJjvz2kOZ954r3sa83WeTTOCubD1p7mRFxEB/KLEtmj4Bevs94oPVaek44OnMtCPhLlYM4KNPs20nlPWOZz+DOCmu9fiavLjpNro28ottshbMK7jov/Q7CdfJ6el8pRncRL7ppgvz6laKHkIjk/nivQ6Gx9aLCWU3BAU4qiQfGc0zZrsEPgCaMqr8D21e6x2XKSAX7IemxN7QyWZ70N80vj4fbaoXTCkTDV+5bzP8CbZLLj5HDKQN/wKT+8L9PP/NUX1mz2X39yaHQuBslJm/S+eHR8g0sv6Jox85h0IMCGgMH6HgjXAVb883yUaAQVS0scoz7fr1+P5m60dVz5dgy9/MYGuSZa+Z7STXjhZFnZyzeRp6ILBOW2RecqrscqDvO+vajM2QbFM+nNa6R1S7do4OgULojGUMoYf/8F8hGkg+P5H78J/i8WlwLWu540lQ0VnyiXa8KaUIEftgAZZW9CcK0cdJgPLVCNbKdGyK65On+KOPPcoeWoK2mWv1eTyu/aKoVOM4o2g+882TSklhnjmhJLSXr3pi2FTH3LwDdLqAjr/bc50upwk8IgDct3NzH7RL918hdI77IpEyAXDVuq3WseZ8agRyDrvYQQnXA57boCCpq2xUhSme4E5nhmxNykTbRzaA618FCAoEJkL9p8BVwCqkmIMJctueXEMgIPGxwJl6Hmt4dgBFUV87XNL8prOjkCK0txBm1zxh7P5+sX/BcSKLnmJ5WABHMZH6Fk=
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)(230922051799003)(451199024)(64100799003)(82310400011)(186009)(1800799009)(46966006)(36840700001)(40470700004)(40460700003)(36860700001)(2906002)(47076005)(36756003)(86362001)(33656002)(40480700001)(82740400003)(81166007)(356005)(966005)(26005)(6486002)(336012)(8936002)(4326008)(8676002)(83380400001)(6862004)(478600001)(6512007)(53546011)(6506007)(41300700001)(316002)(5660300002)(70206006)(54906003)(70586007)(2616005);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Oct 2023 01:27:07.2464
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 0968898c-77db-439d-02df-08dbcc54ae0d
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:
	DB5PEPF00014B97.eurprd02.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS2PR08MB8453

SGkgSnVsaWVuLA0KDQo+IE9uIE9jdCAxNCwgMjAyMywgYXQgMDI6MjIsIEp1bGllbiBHcmFsbCA8
anVsaWVuQHhlbi5vcmc+IHdyb3RlOg0KPiANCj4gSGkgSGVucnksDQo+IA0KPiBPbiAwOS8xMC8y
MDIzIDAyOjAzLCBIZW5yeSBXYW5nIHdyb3RlOg0KPj4gRnJvbTogUGVubnkgWmhlbmcgPHBlbm55
LnpoZW5nQGFybS5jb20+DQo+PiBDdXJyZW50IFAyTSBpbXBsZW1lbnRhdGlvbiBpcyBkZXNpZ25l
ZCBmb3IgTU1VIHN5c3RlbSBvbmx5Lg0KPj4gV2UgbW92ZSB0aGUgTU1VLXNwZWNpZmljIGNvZGVz
IGludG8gbW11L3AybS5jLCBhbmQgb25seSBrZWVwIGdlbmVyaWMNCj4+IGNvZGVzIGluIHAybS5j
LCBsaWtlIFZNSUQgYWxsb2NhdG9yLCBldGMuIFdlIGFsc28gbW92ZSBNTVUtc3BlY2lmaWMNCj4+
IGRlZmluaXRpb25zIGFuZCBkZWNsYXJhdGlvbnMgdG8gbW11L3AybS5oLCBzdWNoIGFzIHAybV90
bGJfZmx1c2hfc3luYygpLg0KPj4gQWxzbyBleHBvc2UgcHJldmlvdXNseSBzdGF0aWMgZnVuY3Rp
b25zIHAybV92bWlkX2FsbG9jYXRvcl9pbml0KCksDQo+PiBwMm1fYWxsb2Nfdm1pZCgpLCBhbmQg
c2V0dXBfdmlydF9wYWdpbmdfb25lKCkgZm9yIGZ1cnRoZXIgTVBVIHVzYWdlLg0KPj4gV2l0aCB0
aGUgY29kZSBtb3ZlbWVudCwgZ2xvYmFsIHZhcmlhYmxlIG1heF92bWlkIGlzIHVzZWQgaW4gbXVs
dGlwbGUNCj4+IGZpbGVzIGluc3RlYWQgb2YgYSBzaW5nbGUgZmlsZSAoYW5kIHdpbGwgYmUgdXNl
ZCBpbiBNUFUgUDJNDQo+PiBpbXBsZW1lbnRhdGlvbiksIGRlY2xhcmUgaXQgaW4gdGhlIGhlYWRl
ciBhbmQgcmVtb3ZlIHRoZSAic3RhdGljIiBvZg0KPj4gdGhpcyB2YXJpYWJsZS4NCj4+IFNpZ25l
ZC1vZmYtYnk6IFBlbm55IFpoZW5nIDxwZW5ueS56aGVuZ0Bhcm0uY29tPg0KPj4gU2lnbmVkLW9m
Zi1ieTogV2VpIENoZW4gPHdlaS5jaGVuQGFybS5jb20+DQo+PiBTaWduZWQtb2ZmLWJ5OiBIZW5y
eSBXYW5nIDxIZW5yeS5XYW5nQGFybS5jb20+DQo+IA0KPiBTb21lIHJlbWFya3MgYWJvdXQgc29t
ZSBvZiB0aGUgY29kZSBub3QgbW92ZWQ6DQo+ICogc3RydWN0IHAybV9kb21haW46IFRoZSBidWxr
IG9mIHRoZSBmaWVsZHMgc2VlbXMgdG8gYmUgTU1VIHNwZWNpZmljLiBTbyBkZXBlbmRpbmcgb24g
dGhlIG51bWJlciBvZiBjb21tb24gZmllbGRzIHdlIGVpdGhlciB3YW50IHRvIHNwbGl0IG9yIG1v
dmUgdGhlIHN0cnVjdHVyZSB0byBwMm1fZG9tYWluLiBJIHdvdWxkIGJlIG9rIHRvIHdhaXQgdW50
aWwgdGhlIE1QVSBjb2RlIGlzIHByZXNlbnQuDQo+ICogcDJtX3R5cGVfdDogSXQgaXMgbm90IHll
dCBjbGVhciBob3cgdGhpcyB3aWxsIGFwcGx5IHRvIHRoZSBNUFUuIEkgYW0gb2sgdG8gd2FpdCBi
ZWZvcmUgbW92aW5nIGl0Lg0KDQpBZ3JlZSB3aXRoIGJvdGggaGVyZSwgbGV04oCZcyBjb250aW51
ZSB0aGUgZGlzY3Vzc2lvbiBpbiB0aGUgYWN0dWFsIE1QVSBwYXRjaCBmb3IgUDJNDQp0aGVuLCBi
dXQgSSBhbSB0aGVuIGEgYml0IGNvbmZ1c2VkIGFib3V0Li4uDQoNCj4gKiBwMm1fY2FjaGVfZmx1
c2hfcmFuZ2UoKTogSSBleHBlY3QgdGhlIGNvZGUgd2lsbCBuZWVkIHNvbWUgY2hhbmdlIGJlY2F1
c2UgeW91IG1heSBnZXQgbGFyZ2UgY2h1bmsgb2YgbWVtb3J5IGZvciB0aGUgTVBVLg0KPiAqIHAy
bV9zZXRfd2F5X2ZsdXNoKCkvcDJtX3RvZ2dsZV9jYWNoZSgpOiBUaGlzIHdhcyBhIGdpYW50IGhh
Y2sgdG8gc3VwcG9ydCBjYWNoZSBmbHVzaCBvcGVyYXRpb25zIHZpYSBzZXQvd2F5LiBUbyBtYWtl
IGl0IGVmZmljaWVudCwgd2UgdHJhY2sgdGhlIHBhZ2VzIHRoYXQgaGF2ZSBiZWVuIHRvdWNoZWQg
YW5kIG9ubHkgZmx1c2ggdGhlbS4gRm9yIHRoZSBNUFUsIHRoaXMgd291bGQgbm90IHdvcmsuIENh
biB3ZSBhdHRlbXB0IHRvIG5vdCBlbXVsYXRlIHRoZSBpbnN0cnVjdGlvbnM/DQoNCuKApnRoZXNl
IHR3byByZW1hcmtzIGhlcmUsIGRvIHlvdSBleHBlY3QgbWUgdG8gZG8gc29tZSBjaGFuZ2VzIHdp
dGggdGhlc2UgdGhyZWUNCmZ1bmN0aW9ucyBpbiB0aGlzIHBhdGNoPyBPciB3ZSBjYW4gZGVmZXIg
dGhlIHJlcXVpcmVkIGNoYW5nZXMgdG8gdGhlIE1QVSBwYXRjaCBmb3INClAyTT8gDQoNCkkgdGhp
bmsgSSBhbSBoaWdobHkgbGlrZWx5IHRvIG1ha2UgYSBtaXN0YWtlIGhlcmUgYnV0IEkgdG9vayBh
IGxvb2sgYXQgdGhlIE1QVQ0KaW1wbGVtZW50YXRpb24gWzFdIGFuZCBpdCBsb29rcyBsaWtlIHRo
ZSBNUFUgY29kZSBjYW4gdXNlIHRoZXNlIHRyZWUgZnVuY3Rpb25zDQp3aXRob3V0IGNoYW5nZXMg
LSBwcm9iYWJseSBiZWNhdXNlIHRoZXNlIGZ1bmN0aW9ucyBhcmUgc2ltcGx5IHVzZWQgYnkNCigx
KSBkb21jdGwgYW5kIHdlIG9ubHkgaGF2ZSBkb20wbGVzcyBEb21VcyBvbiBNUFUNCigyKSB0cmFw
IGhhbmRsZXJzDQp3aGljaCBtZWFucyB0aGVzZSBmdW5jdGlvbnMgYXJlIHNpbXBseSBub3QgY2Fs
bGVk4oCmDQoNClNvIG1heWJlIG1vdmluZyB0aGVzZSB0aHJlZSBmdW5jdGlvbnMgdG8gbW11L3Ay
bS5jIHdvdWxkIGJlIGEgZ29vZCBpZGVhIGZvcg0KdGhpcyBwYXRjaD8NCg0KPiANCj4+IC0tLQ0K
Pj4gZGlmZiAtLWdpdCBhL3hlbi9hcmNoL2FybS9pbmNsdWRlL2FzbS9wMm0uaCBiL3hlbi9hcmNo
L2FybS9pbmNsdWRlL2FzbS9wMm0uaA0KPj4gaW5kZXggOTQwNDk1ZDQyYi4uYTk2MjJkYWM5YSAx
MDA2NDQNCj4+IC0tLSBhL3hlbi9hcmNoL2FybS9pbmNsdWRlL2FzbS9wMm0uaA0KPj4gKysrIGIv
eGVuL2FyY2gvYXJtL2luY2x1ZGUvYXNtL3AybS5oDQo+PiBAQCAtMTksNiArMTksMjIgQEAgZXh0
ZXJuIHVuc2lnbmVkIGludCBwMm1fcm9vdF9sZXZlbDsNCj4+ICAjZGVmaW5lIFAyTV9ST09UX09S
REVSICAgIHAybV9yb290X29yZGVyDQo+IA0KPiBZb3Ugc2VlbSB0byB1c2UgUDJNX1JPT1RfT1JE
RVIgdG8gYWxsb2NhdGUgcDJtLT5yb290IGluIGFybS9wMm0uYy4gSG93ZXZlciwgYXMgSSBtZW50
aW9uZWQgYmVmb3JlLCBJIGRvbid0IHRoaW5rIHRoZSBkZWZpbnRpb24gb2YgcDJtLT5yb290IGlz
IHN1aXRhYmxlIGZvciB0aGUgTVBVLiBJIHRoaW5rIHRoZSB0d28gZnVuY3Rpb25zIHVzaW5nIHAy
bS0+cm9vdCBzaG91bGQgYmUgbW92ZWQgaW4gbW11L3AybS5jIGFuZCBQMk1fUk9PVF9PUkRFUiBz
aG91bGQgYmUgbW92ZWQgaW4gbW11L3AybS5oLg0KDQpTdXJlLCB3aWxsIGZvbGxvdyB0aGF0LCBz
b3JyeSBmb3IgbWlzc2luZyB0aGlzIHBhcnQuDQoNCj4gDQo+PiAgI2RlZmluZSBQMk1fUk9PVF9M
RVZFTCBwMm1fcm9vdF9sZXZlbA0KPiANCj4gUDJNX1JPT1RfTEVWRUwgZG9lc24ndCBzZWVtIHRv
IG1ha2Ugc2Vuc2UgZm9yIHRoZSBNUFUuIFRoZSBvbmx5IHVzZSBpbiBhcmNoL2FybS9wMm0uYyBz
ZWVtcyB0byBiZSBpbiBkdW1wX3AybV9sb29rdXAoKSB3aGljaCBpcyBjYWxsaW5nIGFuIE1NVSBz
cGVjaWZpYyBmdW5jdGlvbi4gU28gSSB0aGluayB0aGlzIHdhbnRzIHRvIGJlIG1vdmVkIGluIHRo
ZSBNTVUgY29kZS4NCg0KV2lsbCBkbyBpbiB2OC4NCg0KPiANCj4+ICsjZGVmaW5lIFAyTV9ST09U
X1BBR0VTICAgICgxPDxQMk1fUk9PVF9PUkRFUikNCj4gDQo+IFNlZSBhYm92ZS4NCj4gDQo+IEFs
c28gTklULCBJIHdvdWxkIHN1Z2dlc3QgdG8gdGFrZSB0aGUgb3Bwb3J0dW5pdHkgdG8gdXNlIDFV
IGFuZCBhZGQgc3BhY2UgYmVmb3JlL2FmdGVyIDw8Lg0KDQpTb3VuZHMgZ29vZCwgd2lsbCBkbyBp
biB2OC4NCg0KPiANCj4+ICsNCj4+ICBzdHJ1Y3QgZG9tYWluOw0KPj4gICAgZXh0ZXJuIHZvaWQg
bWVtb3J5X3R5cGVfY2hhbmdlZChzdHJ1Y3QgZG9tYWluICopOw0KPj4gQEAgLTE1Niw2ICsxNzIs
MTAgQEAgdHlwZWRlZiBlbnVtIHsNCj4+ICAjZW5kaWYNCj4+ICAjaW5jbHVkZSA8eGVuL3AybS1j
b21tb24uaD4NCj4+ICArI2lmZGVmIENPTkZJR19NTVUNCj4+ICsjaW5jbHVkZSA8YXNtL21tdS9w
Mm0uaD4NCj4+ICsjZW5kaWYNCj4+ICsNCj4+ICBzdGF0aWMgaW5saW5lIGJvb2wgYXJjaF9hY3F1
aXJlX3Jlc291cmNlX2NoZWNrKHN0cnVjdCBkb21haW4gKmQpDQo+PiAgew0KPj4gICAgICAvKg0K
Pj4gQEAgLTE4MCw3ICsyMDAsMTEgQEAgdm9pZCBwMm1fYWx0cDJtX2NoZWNrKHN0cnVjdCB2Y3B1
ICp2LCB1aW50MTZfdCBpZHgpDQo+PiAgICovDQo+PiAgdm9pZCBwMm1fcmVzdHJpY3RfaXBhX2Jp
dHModW5zaWduZWQgaW50IGlwYV9iaXRzKTsNCj4+ICArdm9pZCBwMm1fdm1pZF9hbGxvY2F0b3Jf
aW5pdCh2b2lkKTsNCj4+ICtpbnQgcDJtX2FsbG9jX3ZtaWQoc3RydWN0IGRvbWFpbiAqZCk7DQo+
PiArDQo+PiAgLyogU2Vjb25kIHN0YWdlIHBhZ2luZyBzZXR1cCwgdG8gYmUgY2FsbGVkIG9uIGFs
bCBDUFVzICovDQo+PiArdm9pZCBzZXR1cF92aXJ0X3BhZ2luZ19vbmUodm9pZCAqZGF0YSk7DQo+
IA0KPiBJIGRvbid0IG11Y2ggbGlrZSB0aGUgaWRlYSB0byBleHBvcnQgc2V0dXBfdmlydF9wYWdp
bmdfb25lKCkuIENvdWxkIHdlIGluc3RlYWQgbW92ZSBjcHVfdmlydF9wYWdpbmdfY2FsbGJhY2so
KSAmIGNvIHRvIG1tdS9wMm0uYz8NCg0KWWVhaCBnb29kIGlkZWEsIHRoYW5rIHlvdSBmb3IgdGhp
cyBzdWdnZXN0aW9uIDopIHdpbGwgZG8gaW4gdjguDQoNClsxXSBodHRwczovL2dpdGxhYi5jb20v
eGVuLXByb2plY3QvcGVvcGxlL2hlbnJ5dy94ZW4vLS9jb21taXRzL21wdV92NS8/cmVmX3R5cGU9
aGVhZHMNCg0KS2luZCByZWdhcmRzLA0KSGVucnkNCg0KPiANCj4gQ2hlZXJzLA0KPiANCj4gLS0g
DQo+IEp1bGllbiBHcmFsbA0KDQo=


From xen-devel-bounces@lists.xenproject.org Sat Oct 14 01:30:44 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 14 Oct 2023 01:30:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617002.959437 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrTUI-00081h-V2; Sat, 14 Oct 2023 01:30:42 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617002.959437; Sat, 14 Oct 2023 01: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 1qrTUI-00081a-RS; Sat, 14 Oct 2023 01:30:42 +0000
Received: by outflank-mailman (input) for mailman id 617002;
 Sat, 14 Oct 2023 01:30: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=dUN7=F4=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qrTUI-00081U-5j
 for xen-devel@lists.xenproject.org; Sat, 14 Oct 2023 01:30:42 +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 48b4d78a-6a31-11ee-9b0e-b553b5be7939;
 Sat, 14 Oct 2023 03:30:40 +0200 (CEST)
Received: from AS4P189CA0021.EURP189.PROD.OUTLOOK.COM (2603:10a6:20b:5db::12)
 by DB4PR08MB8056.eurprd08.prod.outlook.com (2603:10a6:10:387::14)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.36; Sat, 14 Oct
 2023 01:30:32 +0000
Received: from AM7EUR03FT060.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:20b:5db:cafe::9b) by AS4P189CA0021.outlook.office365.com
 (2603:10a6:20b:5db::12) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.30 via Frontend
 Transport; Sat, 14 Oct 2023 01:30:32 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM7EUR03FT060.mail.protection.outlook.com (100.127.140.216) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6886.29 via Frontend Transport; Sat, 14 Oct 2023 01:30:30 +0000
Received: ("Tessian outbound 9aeaca65ec26:v211");
 Sat, 14 Oct 2023 01:30:30 +0000
Received: from a38ef03ba29a.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 CA6824C7-F213-4F28-86C7-E3E64EA5ADBD.1; 
 Sat, 14 Oct 2023 01:30:23 +0000
Received: from EUR02-AM0-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id a38ef03ba29a.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Sat, 14 Oct 2023 01:30:23 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by VE1PR08MB5615.eurprd08.prod.outlook.com (2603:10a6:800:1b3::23)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.45; Sat, 14 Oct
 2023 01:30:21 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41%4]) with mapi id 15.20.6863.032; Sat, 14 Oct 2023
 01:30: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: 48b4d78a-6a31-11ee-9b0e-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=BPR5YLQuD21gt7bgzmHE/AjHWx5JZ6+N61QStTYGmxw=;
 b=JY0zmGQ6Vm8+8caDO59BSrb3Umk1domnSYSNCkMUlx3zD+tRXSom4otbfcQW8/EQMqcWKtSPPfObhY6MYvxDEV19arQD2KkRyFKL6zmPlY+3uDJm6IjuVDXVzccrEuR9cpErw5lOFafcxM4/LqL6s5yHrn5fMejwH4Da8oajE2k=
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: 201eadd1263d5f2e
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Y9TkeNUqGYb3TnkYbvwr+cndZsTQuQizn2KjXsXB2aw2tezSAoyreooOfQXBOLD/j1tvES5Iu9nNe/ey+Phbk5PSHB7FzQcD3MQ5KPu8E8M2H9QaZ+y3z2RcGV7bs+A+flJG0YEnXXykyzAF9HsAQrne640MasjJTS7l8C/T8nexEyqT2LLG1+GeDkjrG+FaqpBFeOpWgxs8cCw2hAlH4mKGedeqwG5W/kWgeDy1LxfCvnKgiXOUEmok9I2ZvO34s0MxyKgdyLr5M/uu19ngFSze3BnTeCTdeenzhgYsu+rZ0E79ZqFg5fR06ZcL1Pny3DTgAmyqxg6o4tvArYrRcg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=BPR5YLQuD21gt7bgzmHE/AjHWx5JZ6+N61QStTYGmxw=;
 b=GGf9juaTYdJBdaA705QXfj+yUyjWq5t8i+LZ1iekEwq3dmmviRBhhG3SxK+HJB7phhSHPU08A20k5mGOjVCJPG9I5fR27D5SQoERwLRHPdk193yk1PS3LZiGFpracFlc3/AWyfc5wnyCNbYGoYcuJnZbrThtHgwSkv5d3tjH7sj42zCUD+iMctn72lyMSAEk+jA8BqtdsBPE1obsvq022utfdwCLBhW6tTeXBAgdnsHtGq00d6ISmvdwF1Lrr6voz2WL7ZmTs3LQRk7Z8iCbJAXa+Zg/WroGyrjp+K4cQU+K+2x/NaLgv3KHQ8wp6h2r8b6XUVQVsQy9xXgIesQIBg==
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=BPR5YLQuD21gt7bgzmHE/AjHWx5JZ6+N61QStTYGmxw=;
 b=JY0zmGQ6Vm8+8caDO59BSrb3Umk1domnSYSNCkMUlx3zD+tRXSom4otbfcQW8/EQMqcWKtSPPfObhY6MYvxDEV19arQD2KkRyFKL6zmPlY+3uDJm6IjuVDXVzccrEuR9cpErw5lOFafcxM4/LqL6s5yHrn5fMejwH4Da8oajE2k=
From: Henry Wang <Henry.Wang@arm.com>
To: Julien Grall <julien@xen.org>, Stefano Stabellini
	<sstabellini@kernel.org>, Bertrand Marquis <Bertrand.Marquis@arm.com>
CC: Xen-devel <xen-devel@lists.xenproject.org>, Penny Zheng
	<Penny.Zheng@arm.com>, Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, Wei
 Chen <Wei.Chen@arm.com>
Subject: Re: [PATCH v7 8/8] xen/arm: mmu: move MMU specific P2M code to
 mmu/p2m.{c,h}
Thread-Topic: [PATCH v7 8/8] xen/arm: mmu: move MMU specific P2M code to
 mmu/p2m.{c,h}
Thread-Index: AQHZ+kyDxYKGSy7Hi0WFFm+WJG77tLBIEmwAgAB07AA=
Date: Sat, 14 Oct 2023 01:30:21 +0000
Message-ID: <DA0A28F9-36DC-4067-8134-C97C4F96D360@arm.com>
References: <20231009010313.3668423-1-Henry.Wang@arm.com>
 <20231009010313.3668423-9-Henry.Wang@arm.com>
 <527635ac-88b4-4a98-b5b6-1bc2d8600377@xen.org>
In-Reply-To: <527635ac-88b4-4a98-b5b6-1bc2d8600377@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_|VE1PR08MB5615:EE_|AM7EUR03FT060:EE_|DB4PR08MB8056:EE_
X-MS-Office365-Filtering-Correlation-Id: 14378cb6-f3fd-4a4f-2258-08dbcc55277c
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:
 c7Bb/l5T3Bqf38f5Mkp4puyd20ObL0hFU5ZpHu1SkD/+0OUSVTP3a9LdSjsB22od72+x23quNGpXM1bO5EsiW+pHVQNpi8VpqBF0Zkao7lVMs9Ju6AG0s/SRaLU8MavTMOaAxxPPGpYNlwOah25U/EItp7TbrGrOX4r9ugCsLoYHx+5OO3FT3JT4lS+IWqePqsVyljWFq/LFgo8PqoQQUF2Nwq7n60huTPUv1cYQ0rE70Q+kU4XEYgn92Q5PBm3GfmaevSXSVaPI8WX9pSSXYGAHTVHnHsigRSWfTf++wQQdw20yivRol460V5abkZEXqkgo9vrGEHpStmZwBg2LB03Ys2rSqmufOFXCk9fdLQcQIvNOvld7B7r+z/rseZ2BJ07MZpfZHSy+4VJd9etX43hkid44Htc3iZ3q+AqpOfiQbnkB4IIxTHtnA8NDjfRExOr55fASSqlM4qZbAb39doNIQUF5dcrLnRXMqqvHNEYrOPTpRH4JYdybsD323fJY2nM6+UhVu7sK+bLGw3WuhckjiVqQFLk/2eSFLXYFQvhzTEGzbHGMzCR0mW6C7AvH+PBMa4A/dYv42cTjPMPTRzpUr6A2parkW3wnrsfxdZFAkai7+lMCO9EaOKdA7vllNIgVFClTyjYrnLO3Y+Zw7w==
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)(39860400002)(396003)(346002)(376002)(136003)(230922051799003)(1800799009)(64100799003)(451199024)(186009)(122000001)(86362001)(33656002)(36756003)(38070700005)(83380400001)(2906002)(38100700002)(71200400001)(5660300002)(8676002)(110136005)(4326008)(53546011)(76116006)(54906003)(66476007)(64756008)(6512007)(6636002)(66556008)(316002)(6506007)(66446008)(66946007)(91956017)(41300700001)(8936002)(6486002)(478600001)(2616005)(26005)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <4AD288689BF371408869750380E2DE93@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VE1PR08MB5615
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:
 AM7EUR03FT060.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	ef15bc3b-06ec-4aca-046f-08dbcc552200
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	Zx3LbcO8dLdF71B9oR33wLjuTNKW5rRWnxDJRCgYXJ309N8GkMmymRDlAAXdd1htdgK8dQ7Tz17VNpwxBGQbG7jqVIaaOeAXxxs00NGxl9Wfc2j/Jakmqo4fqr2pzIc4JpFLEbSSFrnwQRb7b5/P4ydbP+7x+pLwxbsnJ6bOz9EB+S0VnFHiz2SOs06xsjJbyJ3qj1THQENZO0d+RNE5UQ7rD8uotl3hizRrSnMTxyJqIWazQncNc3OdPq5xx/mJv7I0UvbiIjVgFEQ/7+6YOMRBnnvPiE1S0SEhZbgbq/Li/bg9uZLmSjugQahNQ55M+jVCGU4x365pmvIk1nZ/FgwSms0L0DKKhdCIGcMIyssoMe419ElvjUcu2/9txHXG2zs3sZncyyOLlvwouNpA3evoKNHN5+J4e1jv/LyCrriLH63hfVNljrY8IPqjjoHeP9cQoTYsi8/Co0fB9f1RaAiVUKEb/eJwSoiBqSvUhW7EBT0qrDNMXCgTn1RUknHqy494EAm+KVv/qXZQppUDQ6Nyrz9kLPD/N8Z8Dk4WtYfndDRA1V3QC3VxQJepZ76aGUg42tJnuNTsusTjRAlDF1HORUI4oi9C2K82XKdCfEcUDgyNTuQYUNCdiKva7dStkCqKRbusCBzzzxYUcS5EN2zE2gWTTRKf8GZBS4D6IMln/++QqsxtRgfsfdjT+97IXukECga412zwTnPsEsLwpJC0m0eTdsJrvvdvYDkyVAeGpbCDBjp8V/sPSNLaSG3f
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)(451199024)(64100799003)(1800799009)(82310400011)(186009)(46966006)(40470700004)(36840700001)(36860700001)(26005)(2616005)(336012)(53546011)(6512007)(40460700003)(40480700001)(36756003)(82740400003)(33656002)(86362001)(356005)(81166007)(2906002)(6486002)(110136005)(4326008)(8676002)(478600001)(5660300002)(83380400001)(47076005)(6506007)(6636002)(70586007)(8936002)(41300700001)(316002)(54906003)(70206006);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Oct 2023 01:30:30.9165
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 14378cb6-f3fd-4a4f-2258-08dbcc55277c
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:
	AM7EUR03FT060.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB4PR08MB8056

SGkgSnVsaWVuLA0KDQooU2VuZGluZyB0aGlzIGVtYWlsIGRpcmVjdGx5IOKAnFRvOuKAnSBCZXJ0
cmFuZCBhbmQgU3RlZmFubyB0byBjYXRjaCB0aGVpciBhdHRlbnRpb24gYWJvdXQNCm9uZSBxdWVz
dGlvbiB0aGF0IHlvdSBhc2sgdGhlbSkNCg0KPiBPbiBPY3QgMTQsIDIwMjMsIGF0IDAyOjMxLCBK
dWxpZW4gR3JhbGwgPGp1bGllbkB4ZW4ub3JnPiB3cm90ZToNCj4gDQo+IEhpIEhlbnJ5LA0KPiAN
Cj4gc29tZSBtb3JlIHJlbWFya3MuDQo+IA0KPiBPbiAwOS8xMC8yMDIzIDAyOjAzLCBIZW5yeSBX
YW5nIHdyb3RlOg0KPj4gKy8qDQo+PiArICogSW52YWxpZGF0ZSBhbGwgZW50cmllcyBpbiB0aGUg
cm9vdCBwYWdlLXRhYmxlcy4gVGhpcyBpcw0KPj4gKyAqIHVzZWZ1bCB0byBnZXQgZmF1bHQgb24g
ZW50cnkgYW5kIGRvIGFuIGFjdGlvbi4NCj4+ICsgKg0KPj4gKyAqIHAybV9pbnZhbGlkX3Jvb3Qo
KSBzaG91bGQgbm90IGJlIGNhbGxlZCB3aGVuIHRoZSBQMk0gaXMgc2hhcmVkIHdpdGgNCj4+ICsg
KiB0aGUgSU9NTVUgYmVjYXVzZSBpdCB3aWxsIGNhdXNlIElPTU1VIGZhdWx0Lg0KPj4gKyAqLw0K
Pj4gK3ZvaWQgcDJtX2ludmFsaWRhdGVfcm9vdChzdHJ1Y3QgcDJtX2RvbWFpbiAqcDJtKQ0KPiAN
Cj4gSSB0aGluayB0aGlzIGZ1bmN0aW9uIGRvZXNuJ3QgbWFrZSBzZW5zZSBmb3IgdGhlIE1QVS4g
V2hhdCB3b3VsZCBpbnZhbGlkYXRlPw0KPiANCj4gVGhlIG9ubHkgY2FsbGVyIG91dHNpZGUgb2Yg
dGhlIGZpbGUgaXMgaW4gYXJjaF9kb21haW5fY3JlYXRpb25fZmluaXNoZWQoKS4gVGhpcyB3YXMg
dXNlZCBmb3Igc2V0L3dheSBlbXVsYXRpb24gd2hpY2ggSSBiZWxpZXZlIHdpbGwgYmUgZGlmZmlj
dWx0IHRvIGltcGxlbWVudCBlZmZpY2llbnRseSBmb3IgdGhlIE1QVSAoc2VlIG15IG90aGVyIHJl
cGx5IHRvIHRoaXMgcGF0Y2gpLg0KPiANCj4gU28gSSB3b3VsZCBjb25zaWRlciB0byBtb3ZlIGFy
Y2hfZG9tYWluX2NyZWF0aW9uX2ZpbmlzaGVkKCkgaW4gbW11L3AybS5jIG9yIGNyZWF0aW5nIGEg
bmV3IGZ1bmN0aW9uIHAybV9kb21haW5fY3JlYXRpb25fZmluaXNoZWQoKSB3aGljaCBpcyBjYWxs
ZWQgZnJvbSBhcmNoX2RvbWFpbl9jcmVhdGlvbl9maW5pc2hlZCgpLg0KDQpZZWFoIG1ha2Ugc2Vu
c2UsIEkgd2lsbCBkbyB0aGUgc3VnZ2VzdGVkIGNoYW5nZSBpbiB2OC4NCg0KPiBbLi4uXQ0KPiAN
Cj4+ICsvKg0KPj4gKyAqIENsZWFuICYgaW52YWxpZGF0ZSBSQU0gYXNzb2NpYXRlZCB0byB0aGUg
Z3Vlc3QgdkNQVS4NCj4+ICsgKg0KPj4gKyAqIFRoZSBmdW5jdGlvbiBjYW4gb25seSB3b3JrIHdp
dGggdGhlIGN1cnJlbnQgdkNQVSBhbmQgc2hvdWxkIGJlIGNhbGxlZA0KPj4gKyAqIHdpdGggSVJR
IGVuYWJsZWQgYXMgdGhlIHZDUFUgY291bGQgZ2V0IHByZWVtcHRlZC4NCj4+ICsgKi8NCj4+ICt2
b2lkIHAybV9mbHVzaF92bShzdHJ1Y3QgdmNwdSAqdikNCj4gSSBiZWxpZXZlIGFuIGltcGxlbWVu
dGF0aW9uIG9mIHAybV9mbHVzaF92bSgpIHdvdWxkIGJlIHF1aXRlIGV4cGVuc2l2ZSBmb3IgdGhl
IE1QVS4gSXQgd291bGQgYmUgYmV0dGVyIHRvIG5vdCBlbXVsYXRlIHNldC93YXkgZm9yIG5vdy4N
Cj4gDQo+IEl0IHdvdWxkIGFsc28gZmVlbCBhIGJpdCBvZGQgdG8gbGVhdmUgaXQgdW5pbXBsZW1l
bnRlZCBhbmQgY2FsbGVkIGZyb20gY2hlY2tfZm9yX3ZjcHVfd29yaygpLiBTbyBtYXliZSB3ZSB3
YW50IHRvIHJlbmFtZSBpdC4gSSBkb24ndCBoYXZlIGEgZ29vb2QgbmFtZSBzdWdnZXN0aW9uIHRo
b3VnaC4gQmVydHJhbmQsIFN0ZWZhbm8/DQoNClNlZSB0aGUgYmVnaW5uaW5nIG9mIHRoaXMgZW1h
aWwuDQoNCktpbmQgcmVnYXJkcywNCkhlbnJ5DQoNCj4gDQo+IFsuLi5dDQo+IA0KPiAtLSANCj4g
SnVsaWVuIEdyYWxsDQoNCg==


From xen-devel-bounces@lists.xenproject.org Sat Oct 14 02:04:25 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 14 Oct 2023 02:04:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617009.959451 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrU0o-0006dM-HW; Sat, 14 Oct 2023 02:04:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617009.959451; Sat, 14 Oct 2023 02: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 1qrU0o-0006dF-Eu; Sat, 14 Oct 2023 02:04:18 +0000
Received: by outflank-mailman (input) for mailman id 617009;
 Sat, 14 Oct 2023 02:04: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 1qrU0m-0006bQ-Qa; Sat, 14 Oct 2023 02:04: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 1qrU0m-0003QP-MD; Sat, 14 Oct 2023 02:04: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 1qrU0m-0002bx-5b; Sat, 14 Oct 2023 02:04:16 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qrU0m-0003PI-4z; Sat, 14 Oct 2023 02:04: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=3zZuESdxeQ3uVmtfsnxTl69OweRd93tiyc8Ky9DwNJc=; b=3++knJYwovyofQn2EOjZtighyf
	z9hvejeIaki18mjP89r+T4a+dXyaTCiqhNwQ0BzHy6jUf+XyZXoWSkwG7n1+lRu9o4bZFys2hbc96
	9K1aIx79QVF2uOhTCsjUlYE7un5QVpx873r6wnVdEijskimhHwj0CpqRUS/xBVk3KXLc=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183367-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 183367: tolerable FAIL - PUSHED
X-Osstest-Failures:
    xen-unstable:test-amd64-amd64-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-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-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-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check: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-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-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-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: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-amd64-amd64-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-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-arndale:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-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-rtds:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds: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=9a5bbb2d34ef90ab7d146f11c9c2c0a23fb08035
X-Osstest-Versions-That:
    xen=dc9d9aa62ddeb14abd5672690d30789829f58f7e
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 14 Oct 2023 02:04:16 +0000

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

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 183363
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183363
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183363
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 183363
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183363
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183363
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183363
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 183363
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183363
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183363
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 183363
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 183363
 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-i386-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-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-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 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-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-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-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-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-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

version targeted for testing:
 xen                  9a5bbb2d34ef90ab7d146f11c9c2c0a23fb08035
baseline version:
 xen                  dc9d9aa62ddeb14abd5672690d30789829f58f7e

Last test of basis   183363  2023-10-13 05:16:43 Z    0 days
Testing same since   183367  2023-10-13 13:37:07 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                                       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
   dc9d9aa62d..9a5bbb2d34  9a5bbb2d34ef90ab7d146f11c9c2c0a23fb08035 -> master


From xen-devel-bounces@lists.xenproject.org Sat Oct 14 02:28:01 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 14 Oct 2023 02:28:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617017.959460 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrUNU-00025n-FH; Sat, 14 Oct 2023 02:27:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617017.959460; Sat, 14 Oct 2023 02: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 1qrUNU-00025g-Bx; Sat, 14 Oct 2023 02:27:44 +0000
Received: by outflank-mailman (input) for mailman id 617017;
 Sat, 14 Oct 2023 02:27: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 1qrUNT-00025W-DL; Sat, 14 Oct 2023 02:27: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 1qrUNT-0003r7-9r; Sat, 14 Oct 2023 02:27: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 1qrUNS-0003BO-RU; Sat, 14 Oct 2023 02:27:42 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qrUNS-0003Yd-Qz; Sat, 14 Oct 2023 02: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=HB83GOl7SIah3kRXiSVTYXZGglzx6ltl2pU6MAyFgTQ=; b=Z4tlmoz5U6cfmPuI2xgXsPSDgX
	Gr0FwlGXQABisB4kCHwZw5owF0jNGPLVIrKrOnjqB/ns0OY6w4DMefyKlcC1aKcvc5tHRkbvV00MA
	AvQyDSs3dRuQyUfTbN3gn5iubEDI3WNlczTRYR0eq+AM0NIONLxPHvqMnjnHIAhQdTQ0=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183370-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 183370: 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=730406ab81094115d9fb5ca00ba8d53cec1279b3
X-Osstest-Versions-That:
    xen=9a5bbb2d34ef90ab7d146f11c9c2c0a23fb08035
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 14 Oct 2023 02:27:42 +0000

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

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                  730406ab81094115d9fb5ca00ba8d53cec1279b3
baseline version:
 xen                  9a5bbb2d34ef90ab7d146f11c9c2c0a23fb08035

Last test of basis   183364  2023-10-13 09:02:04 Z    0 days
Testing same since   183370  2023-10-14 00:02:00 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Nicola Vetrini <nicola.vetrini@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
   9a5bbb2d34..730406ab81  730406ab81094115d9fb5ca00ba8d53cec1279b3 -> smoke


From xen-devel-bounces@lists.xenproject.org Sat Oct 14 06:01:53 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 14 Oct 2023 06:01:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617024.959471 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrXiW-00061j-KD; Sat, 14 Oct 2023 06:01:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617024.959471; Sat, 14 Oct 2023 06: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 1qrXiW-00061c-H1; Sat, 14 Oct 2023 06:01:40 +0000
Received: by outflank-mailman (input) for mailman id 617024;
 Sat, 14 Oct 2023 06:01: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 1qrXiV-00061S-8e; Sat, 14 Oct 2023 06:01: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 1qrXiV-0001Gr-1z; Sat, 14 Oct 2023 06:01: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 1qrXiU-0005DL-Gs; Sat, 14 Oct 2023 06:01:38 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qrXiU-00006b-Fh; Sat, 14 Oct 2023 06:01: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=zQcRbs+lg66zQGuJQSgNmVLXPDRnyEvBlhet96YJ1jg=; b=L5v4esPEhtIU691J1BCUkUrpxb
	b67CGTEmgtvP3qfkEC5DTC8ELZtzHwV2eaF/58qJFFI1EekJZHjmx7MBZbxTgjQL0B9QPiuF8v6+x
	5vsBmHgsflZKdgLUraTxRNCqMt6s69JbunSmjzybZWsjQbHWSjeYyz8A+xDtXYUlPT/Q=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183369-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 183369: tolerable FAIL - PUSHED
X-Osstest-Failures:
    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-armhf-armhf-libvirt: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-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-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: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-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-arndale:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale: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-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-raw:migrate-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-amd64-amd64-libvirt:migrate-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
    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-libvirt: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=8cb1f10d8c4b716c88b87ae4402a3305d96e5db2
X-Osstest-Versions-That:
    linux=10a6e5feccb877c3c75ad11d27942ad52c24815f
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 14 Oct 2023 06:01:38 +0000

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

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 183365
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183365
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183365
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183365
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183365
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183365
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183365
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183365
 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-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          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-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-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-qcow2 14 migrate-support-check        fail never pass
 test-amd64-amd64-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-amd64-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-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-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                8cb1f10d8c4b716c88b87ae4402a3305d96e5db2
baseline version:
 linux                10a6e5feccb877c3c75ad11d27942ad52c24815f

Last test of basis   183365  2023-10-13 13:09:59 Z    0 days
Testing same since   183369  2023-10-13 20:13:34 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Alexandre Ghiti <alexghiti@rivosinc.com>
  Amelie Delaunay <amelie.delaunay@foss.st.com>
  Andy Chiu <andy.chiu@sifive.com>
  Björn Töpel <bjorn@rivosinc.com>
  Charles Keepax <ckeepax@opensource.cirrus.com>
  Chen Jiahao <chenjiahao16@huawei.com>
  Dan Carpenter <dan.carpenter@linaro.org>
  Duoming Zhou <duoming@zju.edu.cn>
  Frank Li <Frank.Li@nxp.com>
  Geert Uytterhoeven <geert+renesas@glider.be>
  Hans de Goede <hdegoede@redhat.com>
  Hans Verkuil <hverkuil-cisco@xs4all.nl>
  Ilya Dryomov <idryomov@gmail.com>
  Jiexun Wang <wangjiexun@tinylab.org>
  Jordan Rife <jrife@google.com>
  Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
  Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>
  Lijun Pan <lijun.pan@intel.com>
  Linus Torvalds <torvalds@linux-foundation.org>
  Luis Henriques <lhenriques@suse.de>
  Martin K. Petersen <martin.petersen@oracle.com>
  Masami Hiramatsu (Google) <mhiramat@kernel.org>
  Mauro Carvalho Chehab <mchehab@kernel.org>
  Ondrej Jirman <megi@xff.cz>
  Palmer Dabbelt <palmer@rivosinc.com>
  Peter Wang <peter.wang@mediatek.com>
  Puranjay Mohan <puranjay12@gmail.com>
  Radhey Shyam Pandey <radhey.shyam.pandey@amd.com>
  Rafael J. Wysocki <rafael.j.wysocki@intel.com>
  Randy Dunlap <rdunlap@infradead.org>
  Rex Zhang <rex.zhang@intel.com>
  Sakari Ailus <sakari.ailus@linux.intel.com>
  Song Shuai <songshuaishuai@tinylab.org>
  Vinod Koul <vkoul@kernel.org>
  Xiubo Li <xiubli@redhat.com>
  Zhang Shurong <zhang_shurong@foxmail.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
   10a6e5feccb8..8cb1f10d8c4b  8cb1f10d8c4b716c88b87ae4402a3305d96e5db2 -> tested/linux-linus


From xen-devel-bounces@lists.xenproject.org Sat Oct 14 11:49:48 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 14 Oct 2023 11:49:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617042.959482 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrd96-0006xj-E9; Sat, 14 Oct 2023 11:49:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617042.959482; Sat, 14 Oct 2023 11:49: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 1qrd96-0006xb-7s; Sat, 14 Oct 2023 11:49:28 +0000
Received: by outflank-mailman (input) for mailman id 617042;
 Sat, 14 Oct 2023 11:49: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 1qrd95-0006xR-EA; Sat, 14 Oct 2023 11:49: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 1qrd95-000229-9l; Sat, 14 Oct 2023 11:49: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 1qrd94-0002Lv-Tu; Sat, 14 Oct 2023 11:49:27 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qrd94-0004Ih-TN; Sat, 14 Oct 2023 11:49: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=4+WsBgUVUntkdi6TG3dzTdU2N3E6mCkAlJC/gOwzHuA=; b=iUHxDgpeUQO1QFNYF3HOlJk7MY
	nTPVVw8QtvReUA5OiHew+xJOn4tE6yQnZTqK6Js9POEPErghB6D00TJwdJ9zdHXHIaLzVDTNyMuzP
	3tUo4igT7fuYCGDKfrTR7mRw+wH4ZMhqz9dht3Vi30WwJG1Vt4ucu8T9nnTPZ5lu/Yag=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183371-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 183371: tolerable FAIL
X-Osstest-Failures:
    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-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-qemut-win7-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-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check: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-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-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-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: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-amd64-amd64-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-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-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-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-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-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=9a5bbb2d34ef90ab7d146f11c9c2c0a23fb08035
X-Osstest-Versions-That:
    xen=9a5bbb2d34ef90ab7d146f11c9c2c0a23fb08035
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 14 Oct 2023 11:49:26 +0000

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

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183367
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183367
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 183367
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183367
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183367
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183367
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 183367
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183367
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183367
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 183367
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 183367
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183367
 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-i386-libvirt      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-credit1  16 saverestore-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-xl-credit2  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-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-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-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-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-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                  9a5bbb2d34ef90ab7d146f11c9c2c0a23fb08035
baseline version:
 xen                  9a5bbb2d34ef90ab7d146f11c9c2c0a23fb08035

Last test of basis   183371  2023-10-14 02:06:51 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 Sat Oct 14 12:20:58 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 14 Oct 2023 12:20:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617059.959490 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrddT-0003uV-7S; Sat, 14 Oct 2023 12:20:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617059.959490; Sat, 14 Oct 2023 12:20: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 1qrddT-0003uO-4W; Sat, 14 Oct 2023 12:20:51 +0000
Received: by outflank-mailman (input) for mailman id 617059;
 Sat, 14 Oct 2023 12:20: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=DaQa=F4=arndb.de=arnd@srs-se1.protection.inumbo.net>)
 id 1qrddR-0003uI-6X
 for xen-devel@lists.xenproject.org; Sat, 14 Oct 2023 12:20:49 +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 19130497-6a8c-11ee-98d4-6d05b1d4d9a1;
 Sat, 14 Oct 2023 14:20:45 +0200 (CEST)
Received: from compute5.internal (compute5.nyi.internal [10.202.2.45])
 by mailout.nyi.internal (Postfix) with ESMTP id D9E165C0288;
 Sat, 14 Oct 2023 08:20:43 -0400 (EDT)
Received: from imap51 ([10.202.2.101])
 by compute5.internal (MEProxy); Sat, 14 Oct 2023 08:20:43 -0400
Received: by mailuser.nyi.internal (Postfix, from userid 501)
 id 6EC65B6008D; Sat, 14 Oct 2023 08:20:43 -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: 19130497-6a8c-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=arndb.de; 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=1697286043; x=1697372443; bh=nZ
	iSaf+2rKUZmRmaI+hHKAfBctJh+V32I+xRn4B5yaM=; b=DMW+athuAfhfxrMpLC
	q6fqoed/7uX/mQHSbMR9RebUkAwQN8SRxLbcbUb9TCfjETOaCz1UcuQzyfkjupCG
	37vWO7Gj3ZM6I7OgNerhAR3bdD+2qyfgzOoe/KSTp9oaTrdWOX4dzr3pFAOC+Tyn
	HIk+1hKIyyKnf9saGXX0+NEEvehgAbSmzhlj8IJ/n0kWlxJuuqQ0aJDOi6Gu6PSd
	vxCpdLpLRBYHLiY4mKgljlkkE0YuCFfMCOsVUuAWBHU9izSeLKs4xhdYt0T3eEJ/
	KvoS5zH7X/7H39WfjkVkGacluJRYX6+2FytfyFCO9YvgBUmoeDmAoFg6eIjLXOje
	oY3g==
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=fm3; t=1697286043; x=1697372443; bh=nZiSaf+2rKUZm
	RmaI+hHKAfBctJh+V32I+xRn4B5yaM=; b=XmVc3oRK5xPIG+LC89BayxU//H3dA
	15HdljrBlx5vfugHwIgHCZ81WuegEXJri7T/ACzuyzUcsRHaEI7DB5bm3N+jM+jt
	jThIUfClB+A5Dc+MD01TuRpZC+3Li6gB9/DC5zQBc7L/3wPMbIqR0zaVWPe7aOGp
	z1A+dyo9LhOXdncC2ZoxOWvmdvGPgYwiO3kUyGS9m3bwUNdkJi8C6Be6jlC/7XsG
	StGUotCR1e12EVsdSGrfqkm19lUDtkIKDC5x24TCnNftg2m27LlEljRQKYEKRmy1
	Yh3oaNNHlWeQUlomoQayDHiMP/H7Tm4CsBbq9MGEBhnb3RhHUwxeHSW5A==
X-ME-Sender: <xms:m4cqZdSeswWWvO027zq8PS0N9IfdsxN0i8f4d_HHUzLWN0qCFWkXWA>
    <xme:m4cqZWw0k1kGXAc4iu6z2-ja-hPSLRVLK3hpx5tVkMpG2dEgIqsZ_VtTcM2Goj_AB
    5suOAUDdeZLtGVidNU>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvkedrieehgdehtdcutefuodetggdotefrodftvf
    curfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfghnecu
    uegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmdenuc
    fjughrpefofgggkfgjfhffhffvvefutgesthdtredtreertdenucfhrhhomhepfdetrhhn
    ugcuuegvrhhgmhgrnhhnfdcuoegrrhhnugesrghrnhgusgdruggvqeenucggtffrrghtth
    gvrhhnpeffheeugeetiefhgeethfejgfdtuefggeejleehjeeutefhfeeggefhkedtkeet
    ffenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepmhgrihhlfhhrohhmpegrrh
    hnugesrghrnhgusgdruggv
X-ME-Proxy: <xmx:m4cqZS2ytldwAXeJP2PaXElU6rm5WO4IqLfA8v6jj1_1ewCRt4HR1w>
    <xmx:m4cqZVC3PQlDUr3F-AZaImYU3DG_Jle3dFQxnD-KUyRnkNjlvgmdbg>
    <xmx:m4cqZWix_PsRLPtMETcHcLKMTGronhRIV_Zi0OpkHtHMjwwp6H0fHA>
    <xmx:m4cqZRVhVv0aNDlcqNSdu3vGQn6-thVaJ6om4XZj63ZJ931YmzZWUQ>
Feedback-ID: i56a14606:Fastmail
X-Mailer: MessagingEngine.com Webmail Interface
User-Agent: Cyrus-JMAP/3.9.0-alpha0-1019-ged83ad8595-fm-20231002.001-ged83ad85
MIME-Version: 1.0
Message-Id: <268a2031-63b8-4c7d-b1e5-8ab83ca80b4a@app.fastmail.com>
In-Reply-To: 
 <52b07a3861a34fb0deb6251bae8bd885815c6944.1693311370.git.viresh.kumar@linaro.org>
References: <cover.1693311370.git.viresh.kumar@linaro.org>
 <52b07a3861a34fb0deb6251bae8bd885815c6944.1693311370.git.viresh.kumar@linaro.org>
Date: Sat, 14 Oct 2023 14:19:52 +0200
From: "Arnd Bergmann" <arnd@arndb.de>
To: "Viresh Kumar" <viresh.kumar@linaro.org>,
 "Juergen Gross" <jgross@suse.com>,
 "Stefano Stabellini" <sstabellini@kernel.org>,
 "Oleksandr Tyshchenko" <oleksandr_tyshchenko@epam.com>
Cc: "Stratos Mailing List" <stratos-dev@op-lists.linaro.org>,
 "Erik Schilling" <erik.schilling@linaro.org>,
 "Manos Pitsidianakis" <manos.pitsidianakis@linaro.org>,
 linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org
Subject: Re: [Stratos-dev] [PATCH 2/2] xen: privcmd: Add support for ioeventfd
Content-Type: text/plain

On Tue, Aug 29, 2023, at 14:29, Viresh Kumar via Stratos-dev wrote:

> +/* For privcmd_ioeventfd::flags */
> +#define PRIVCMD_IOEVENTFD_FLAG_DEASSIGN (1 << 0)
> +
> +struct privcmd_ioeventfd {
> +	void __user *ioreq;
> +	unsigned int __user *ports;
> +	__u64 addr;
> +	__u32 addr_len;
> +	__u32 event_fd;
> +	__u32 vcpus;
> +	__u32 vq;
> +	__u32 flags;
> +	domid_t dom;
> +	__u8 pad[2];
> +};

Using indirect pointers in an ioctl command argument means that
the layout is architecture specific, in particular you can't
use the same one from 32-bit compat tasks. The general recommendation
is to have __u64 members and use u64_to_user_ptr() to access it
from the kernel if you are unable to avoid the pointers altogether.

>  /*
>   * @cmd: IOCTL_PRIVCMD_HYPERCALL
>   * @arg: &privcmd_hypercall_t
> @@ -139,5 +155,7 @@ struct privcmd_irqfd {
>  	_IOC(_IOC_NONE, 'P', 7, sizeof(struct privcmd_mmap_resource))
>  #define IOCTL_PRIVCMD_IRQFD					\
>  	_IOC(_IOC_NONE, 'P', 8, sizeof(struct privcmd_irqfd))
> +#define IOCTL_PRIVCMD_IOEVENTFD					\
> +	_IOC(_IOC_NONE, 'P', 9, sizeof(struct privcmd_ioeventfd))

_IOC() an internal helper that you should not use in driver code.
In particular, you go the data direction wrong here, which breaks
a number of tools, as having "_IOC_NONE" should never be paired with
a nonzero size.

Instead, you should use the existing _IOWR() or _IOR() macros without
the 'sizeof()' like

#define IOCTL_PRIVCMD_IOEVENTFD _IOWR('P', 9, struct privcmd_ioeventfd)

You clearly copied this from the other ioctl command definitions in
the same file that we can't easily fix without breaking the user
ABI, but I still think you should try to do it correctly for new
commands.

     Arnd


From xen-devel-bounces@lists.xenproject.org Sat Oct 14 16:01:07 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 14 Oct 2023 16:01:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617078.959500 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrh4L-000763-AV; Sat, 14 Oct 2023 16:00:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617078.959500; Sat, 14 Oct 2023 16: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 1qrh4L-00075w-7l; Sat, 14 Oct 2023 16:00:49 +0000
Received: by outflank-mailman (input) for mailman id 617078;
 Sat, 14 Oct 2023 16: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=yyFg=F4=amd.com=Stewart.Hildebrand@srs-se1.protection.inumbo.net>)
 id 1qrh4K-00075q-G2
 for xen-devel@lists.xenproject.org; Sat, 14 Oct 2023 16:00:48 +0000
Received: from NAM04-MW2-obe.outbound.protection.outlook.com
 (mail-mw2nam04on20629.outbound.protection.outlook.com
 [2a01:111:f400:7e8c::629])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id d4833bd4-6aaa-11ee-98d4-6d05b1d4d9a1;
 Sat, 14 Oct 2023 18:00:45 +0200 (CEST)
Received: from CY5PR15CA0161.namprd15.prod.outlook.com (2603:10b6:930:67::25)
 by MW4PR12MB6951.namprd12.prod.outlook.com (2603:10b6:303:209::18)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.44; Sat, 14 Oct
 2023 16:00:39 +0000
Received: from CY4PEPF0000EE37.namprd05.prod.outlook.com
 (2603:10b6:930:67:cafe::72) by CY5PR15CA0161.outlook.office365.com
 (2603:10b6:930:67::25) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.30 via Frontend
 Transport; Sat, 14 Oct 2023 16:00:39 +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.6838.22 via Frontend Transport; Sat, 14 Oct 2023 16:00:38 +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; Sat, 14 Oct
 2023 11:00: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; Sat, 14 Oct
 2023 11:00:38 -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; Sat, 14 Oct 2023 11:00: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: d4833bd4-6aaa-11ee-98d4-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=hIzxd0e7sJt7ZIgI/FuaGu88S3AwO2QSiMdiBUiuzwrg0yP+KECfjSyrkSFp7QBT1MkRP1gK6mkRiY9Jhllj75dqti0MszcbVK3Itz4bIn/ApbxyGUSMr/X6mrMFngeX+Jrf/4UWSQewNpys3y5pfksl1LhAvOB7XDfNlIb0MJxhLPLLaWg3uUL+wihtg2QlnIkNlJVeyWF72hLDCEGJJfHnL7ab53WR1ZU69hoeVU1p1Lbq4wMeCR4Cs7iejlY6mUiJv8QbB0c+3AIW0xlbO7ukVAeLo6J9qeu9SiqQFvPjVZ5kMSALMGF3Lx3hZQpvPV2gRx3lnOjEYkSpfxVR8A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=yRPzPb8glB8fhzqDX7vVQxXtj+sA5vVqRHDA6urodXI=;
 b=ftcUcq+2cBIeSyWkRkIW1TvVrtOFSAuVMWrP6SWSA0toL4iQUZkhL+wVFL6+KhhykWdeCuhZ/ynYqMYRNLq00p2ECM8kK0vt6xeRhyVbj98CVjtf0273JCTP8FAO3F/R/BxeBr6mThcB3UYE1lEwQkWXs6Yfk35lg9U69kpL2WVEgXtWX69UAmi9XXYvaQ3PN1qkQxSgwxj3pF8dgwKCQoqHNl5YqYOm5xvX06BcuyCChTq6iWB2PZNsega6tkLhEAItb33KS+9jJIgWrewkBD1cZEPtQALeyzmDV/5HJ86c1gI/csQba2+EvVNhbxltobvgm2jHAK5T/1sccpFaQQ==
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=yRPzPb8glB8fhzqDX7vVQxXtj+sA5vVqRHDA6urodXI=;
 b=t6qU03EhKNELfYLJaKKJWzMENmQ/tcsom00XeNlwMJcvf3K8Uj8uSzREYNLhrMw8kOh2QwI78hz02kQoWfWl/+tMmSWoiR6XL6tBjLXskzHNIz5n2j24gfag9tsvWBtPHwlmDVYnzAmL3LiRMEB7wmv35lCqrioOgBlOyyGg04k=
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: <7634e87f-b0ed-4ad9-a5f5-772d4f631f88@amd.com>
Date: Sat, 14 Oct 2023 12:00:36 -0400
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v10 07/17] 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: <20231012220854.2736994-1-volodymyr_babchuk@epam.com>
 <20231012220854.2736994-8-volodymyr_babchuk@epam.com>
From: Stewart Hildebrand <stewart.hildebrand@amd.com>
In-Reply-To: <20231012220854.2736994-8-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: CY4PEPF0000EE37:EE_|MW4PR12MB6951:EE_
X-MS-Office365-Filtering-Correlation-Id: d78f5502-ac68-4d9d-3368-08dbccceb5ef
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	q/6Tou31V5lWS96PVNFkVJAKz4uGhONNhJqMxEQdgsiffEhA4VQ8nwZo99vVPoOBlZe5Wh9J75GYIxWvnRZ+9ICKWtN6UpBOUxBpMrePk0R2V4W0nlM5tlGiT7iYlsB7bXkwh05mK7vKEXBv66XO+RBN/YKhnYth+EQImIp9vjlg1MhQf+qRnH680iP07SOkgGfZx4l4aTUeVh4F9A65v+rIF8SS3qpKxQQ8bqVXtCwu/9QL7YQ/SBMYQUcBLtVcwEwZ68042Z7i1zkmZtNHjUIwOxvBA5WCo1BmfI0/H6sZdhnuiXCM4yVxVRnOdJNC/3o/1flQZaJ9f8vjtYnf/7lqYNR/Cvxm8yiyY6nYGF+gNVrbqK+JrW4an87Z9zRNwRn7d9PwFafO6+7iiijY/sHPKTpIZpwnn6RPUxuOHmMFP1mTovtxS4Jq7m6fVSSl5vEXVgYC8f8VLZ668anxormuxBumydWaDvWGSm4Q5N5Bshx+ZmBRLf/xmewYuzFRYNmcD7Aqjrh6B7QkOoEVgdMy5R2GK8adXB8/S+1uuT9VGLWpMZ1nOqptjBBwn7XXa8attKBOxhrurKMZCijv3o2hIttako13ltpWnz5iJCUDu7S64grBuVtOJeDmPCgs4y3AyH8ccR+j9SAJkzO/d7NqouV1nyBRTLdXeLEhluzajvOYUzqoCgnDFusnEfYexm4Wdi0WGDGywfa1eavCOOfSscqS0shcOpN+ZKba+huNooIj75W5HlDMYeVh5B2BRJ3B6sUT8u72IQbyxypqZ7CMDCxdiyassuP8T8RR0I6R3es08Tc5EHL4KfKnm5W/
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)(346002)(136003)(39860400002)(230922051799003)(82310400011)(64100799003)(1800799009)(451199024)(186009)(40470700004)(46966006)(36840700001)(83380400001)(31686004)(40460700003)(316002)(426003)(110136005)(41300700001)(336012)(40480700001)(5660300002)(2616005)(356005)(54906003)(82740400003)(4326008)(2906002)(70586007)(44832011)(26005)(8676002)(81166007)(8936002)(36860700001)(70206006)(31696002)(36756003)(53546011)(16576012)(47076005)(478600001)(86362001)(43740500002)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Oct 2023 16:00:38.9645
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: d78f5502-ac68-4d9d-3368-08dbccceb5ef
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: MW4PR12MB6951

On 10/12/23 18:09, Volodymyr Babchuk wrote:
> diff --git a/xen/drivers/vpci/header.c b/xen/drivers/vpci/header.c
> index 33db58580c..40d1a07ada 100644
> --- a/xen/drivers/vpci/header.c
> +++ b/xen/drivers/vpci/header.c
> @@ -477,6 +477,74 @@ 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;

This initialization is using the initial value of bar ...

> +
> +    if ( bar->type == VPCI_BAR_MEM64_HI )
> +    {
> +        ASSERT(reg > PCI_BASE_ADDRESS_0);
> +        bar--;

... but here bar is decremented ...

> +        hi = true;
> +    }
> +    else
> +    {
> +        val &= PCI_BASE_ADDRESS_MEM_MASK;
> +    }
> +

... so to ensure a consistent state, the initialization should be moved here.

> +    guest_addr &= ~(0xffffffffULL << (hi ? 32 : 0));
> +    guest_addr |= (uint64_t)val << (hi ? 32 : 0);
> +
> +    /* Allow guest to size BAR correctly */
> +    guest_addr &= ~(bar->size - 1);
> +
> +    /*
> +     * 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 != ~(bar->size -1 )  &&

Should this sizing check only apply to the lower 32 bits, or take "hi" into account?

For reference, it may be helpful to see an example sequence of a Linux domU sizing a 64 bit BAR. I instrumented guest_bar_write() to print the raw/initial val argument, and guest_bar_read() to print the final reg_val:
(XEN) drivers/vpci/header.c:guest_bar_read  d1 0000:01:00.0 reg 0x10 val 0xe0100004
(XEN) drivers/vpci/header.c:guest_bar_write d1 0000:01:00.0 reg 0x10 val 0xffffffff
(XEN) drivers/vpci/header.c:guest_bar_read  d1 0000:01:00.0 reg 0x10 val 0xffffc004
(XEN) drivers/vpci/header.c:guest_bar_write d1 0000:01:00.0 reg 0x10 val 0xe0100004
(XEN) drivers/vpci/header.c:guest_bar_read  d1 0000:01:00.0 reg 0x14 val 0x0 (hi)
(XEN) drivers/vpci/header.c:guest_bar_write d1 0000:01:00.0 reg 0x14 val 0xffffffff (hi)
(XEN) drivers/vpci/header.c:guest_bar_read  d1 0000:01:00.0 reg 0x14 val 0xffffffff (hi)
(XEN) drivers/vpci/header.c:guest_bar_write d1 0000:01:00.0 reg 0x14 val 0x0 (hi)
(XEN) drivers/vpci/header.c:guest_bar_write d1 0000:01:00.0 reg 0x10 val 0x23000004
(XEN) drivers/vpci/header.c:guest_bar_read  d1 0000:01:00.0 reg 0x10 val 0x23000004
(XEN) drivers/vpci/header.c:guest_bar_write d1 0000:01:00.0 reg 0x14 val 0x0 (hi)
(XEN) drivers/vpci/header.c:guest_bar_read  d1 0000:01:00.0 reg 0x14 val 0x0 (hi)

> +         PAGE_OFFSET(guest_addr) != PAGE_OFFSET(bar->addr) )
> +    {
> +        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;
> +}


From xen-devel-bounces@lists.xenproject.org Sat Oct 14 16:08:33 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 14 Oct 2023 16:08:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617084.959510 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrhBj-00084X-44; Sat, 14 Oct 2023 16:08:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617084.959510; Sat, 14 Oct 2023 16: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 1qrhBj-00084Q-1Q; Sat, 14 Oct 2023 16:08:27 +0000
Received: by outflank-mailman (input) for mailman id 617084;
 Sat, 14 Oct 2023 16:08: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 1qrhBi-00084G-2J; Sat, 14 Oct 2023 16:08: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 1qrhBh-0000KR-W1; Sat, 14 Oct 2023 16:08: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 1qrhBh-0006Jp-DG; Sat, 14 Oct 2023 16:08:25 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qrhBh-0006Qh-Cn; Sat, 14 Oct 2023 16:08: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=3V1W56BkSqgcTV7RvR2Sr87yP1KYP2JKMr3dsMOGr1c=; b=YlBsujksD+dIemEyH3we2Fkyj6
	ZacOwghpNyEQT7JpG1VfY3gy1b6Uq0OwX1ojr58hsd73EhVtVGxHHkAC6ou/etnpDh+N5pZpcYZf3
	FWvT9ba3sicYGc3TgqYc9rJqRrvMmoH+tU3t9NNfU3vi1LeUvM5xiF/LVkbwd7POZVe8=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183372-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 183372: tolerable FAIL - PUSHED
X-Osstest-Failures:
    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-armhf-armhf-libvirt: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-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-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: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-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-arndale:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale: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-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-raw:migrate-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-amd64-amd64-libvirt:migrate-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
    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-libvirt: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=727fb83765049981e342db4c5a8b51aca72201d8
X-Osstest-Versions-That:
    linux=8cb1f10d8c4b716c88b87ae4402a3305d96e5db2
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 14 Oct 2023 16:08:25 +0000

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

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 183369
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183369
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183369
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183369
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183369
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183369
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183369
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183369
 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-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          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-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-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-qcow2 14 migrate-support-check        fail never pass
 test-amd64-amd64-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-amd64-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-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-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                727fb83765049981e342db4c5a8b51aca72201d8
baseline version:
 linux                8cb1f10d8c4b716c88b87ae4402a3305d96e5db2

Last test of basis   183369  2023-10-13 20:13:34 Z    0 days
Testing same since   183372  2023-10-14 06:43:50 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Dmitry Torokhov <dmitry.torokhov@gmail.com>
  Hans de Goede <hdegoede@redhat.com>
  Javier Carrasco <javier.carrasco.cruz@gmail.com>
  Jeffery Miller <jefferymiller@google.com>
  Linus Torvalds <torvalds@linux-foundation.org>
  Matthias Berndt <matthias_berndt@gmx.de>
  Max Nguyen <maxwell.nguyen@hp.com>
  Szilard Fabian <szfabian@bluemarch.art>
  Thorsten Leemhuis <linux@leemhuis.info>

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
   8cb1f10d8c4b..727fb8376504  727fb83765049981e342db4c5a8b51aca72201d8 -> tested/linux-linus


From xen-devel-bounces@lists.xenproject.org Sat Oct 14 21:44:23 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 14 Oct 2023 21:44:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617095.959525 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrmQY-0000R6-MV; Sat, 14 Oct 2023 21:44:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617095.959525; Sat, 14 Oct 2023 21:44: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 1qrmQY-0000Qz-JO; Sat, 14 Oct 2023 21:44:06 +0000
Received: by outflank-mailman (input) for mailman id 617095;
 Sat, 14 Oct 2023 21:44: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 1qrmQX-0000Qn-AR; Sat, 14 Oct 2023 21:44: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 1qrmQX-0008Ik-8j; Sat, 14 Oct 2023 21:44: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 1qrmQW-0002Lc-QY; Sat, 14 Oct 2023 21:44:04 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qrmQW-0001GV-QB; Sat, 14 Oct 2023 21: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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=Xme3BOwoGp+lqU+gT/dJXeNHpnEu2iLxdaQa4aZZQ6E=; b=U2o5Njzm1N/jRJloOnAcS1jjFx
	JP1nUH4/uJQSG6uQem9cVxHxy1SHZ4ChyL2TkaygeCEznz8gN7rIBSbFhF/0n7gMBxPpB0Fg2CrqJ
	7scvMCC29v8ciyxo88OM3xxnnAH/lbYCzlAfAFZ8x+SME5oLfg9LyS7wxZzEOY5EYw64=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183373-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 183373: tolerable FAIL - PUSHED
X-Osstest-Failures:
    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-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-qemut-win7-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-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check: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-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-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:saverestore-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-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: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-amd64-amd64-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-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-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-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-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-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=730406ab81094115d9fb5ca00ba8d53cec1279b3
X-Osstest-Versions-That:
    xen=9a5bbb2d34ef90ab7d146f11c9c2c0a23fb08035
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 14 Oct 2023 21:44:04 +0000

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

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183371
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183371
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 183371
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183371
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183371
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183371
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 183371
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183371
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183371
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 183371
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 183371
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183371
 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-i386-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-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-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-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 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-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-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-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-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-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                  730406ab81094115d9fb5ca00ba8d53cec1279b3
baseline version:
 xen                  9a5bbb2d34ef90ab7d146f11c9c2c0a23fb08035

Last test of basis   183371  2023-10-14 02:06:51 Z    0 days
Testing same since   183373  2023-10-14 12:10:18 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Nicola Vetrini <nicola.vetrini@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                     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
   9a5bbb2d34..730406ab81  730406ab81094115d9fb5ca00ba8d53cec1279b3 -> master


From xen-devel-bounces@lists.xenproject.org Sun Oct 15 01:43:44 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 15 Oct 2023 01:43:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617112.959535 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrqAE-0003xo-LR; Sun, 15 Oct 2023 01:43:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617112.959535; Sun, 15 Oct 2023 01: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 1qrqAE-0003xh-IM; Sun, 15 Oct 2023 01:43:30 +0000
Received: by outflank-mailman (input) for mailman id 617112;
 Sun, 15 Oct 2023 01:43: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 1qrqAE-0003xV-49; Sun, 15 Oct 2023 01:43: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 1qrqAE-0004ju-1h; Sun, 15 Oct 2023 01:43: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 1qrqAD-0007sp-IZ; Sun, 15 Oct 2023 01:43:29 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qrqAD-0003cS-I0; Sun, 15 Oct 2023 01:43: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=a56MX0L+JO3k0s5P9ww/NAdirrXu1jQiRo2bgKm4YHc=; b=BVbY6VHDDUMRMY+0M+Ea/133Jn
	0u/gpxRULGeFXpAQ6a6yL0dqKDO4uXpJcVkmAcZ7s52SYtveeJHFRrluGRaV6YulMxPkSVYLub6IS
	9zIVjwmF6l68Hgq/jjMdBOvH3l7DMafmIizinhjIarITiNuauikJlqAEVJVIMaw9jmAw=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183374-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 183374: tolerable FAIL - PUSHED
X-Osstest-Failures:
    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-armhf-armhf-libvirt: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-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-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: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-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-arndale:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale: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-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-raw:migrate-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-amd64-amd64-libvirt:migrate-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
    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-libvirt: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=70f8c6f8f8800d970b10676cceae42bba51a4899
X-Osstest-Versions-That:
    linux=727fb83765049981e342db4c5a8b51aca72201d8
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sun, 15 Oct 2023 01:43:29 +0000

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

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 183372
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183372
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183372
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183372
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183372
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183372
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183372
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183372
 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-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          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-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-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-qcow2 14 migrate-support-check        fail never pass
 test-amd64-amd64-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-amd64-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-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-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                70f8c6f8f8800d970b10676cceae42bba51a4899
baseline version:
 linux                727fb83765049981e342db4c5a8b51aca72201d8

Last test of basis   183372  2023-10-14 06:43:50 Z    0 days
Testing same since   183374  2023-10-14 16:43:12 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Chandan Babu R <chandanbabu@kernel.org>
  Darrick J. Wong <djwong@kernel.org>
  Jeff Layton <jlayton@kernel.org>
  Jiapeng Chong <jiapeng.chong@linux.alibaba.com>
  Linus Torvalds <torvalds@linux-foundation.org>
  Shiyang Ruan <ruansy.fnst@fujitsu.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
   727fb8376504..70f8c6f8f880  70f8c6f8f8800d970b10676cceae42bba51a4899 -> tested/linux-linus


From xen-devel-bounces@lists.xenproject.org Sun Oct 15 09:09:00 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 15 Oct 2023 09:09:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617131.959545 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qrx76-0001gR-MD; Sun, 15 Oct 2023 09:08:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617131.959545; Sun, 15 Oct 2023 09: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 1qrx76-0001gJ-I5; Sun, 15 Oct 2023 09:08:44 +0000
Received: by outflank-mailman (input) for mailman id 617131;
 Sun, 15 Oct 2023 09:08: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 1qrx75-0001g9-7z; Sun, 15 Oct 2023 09:08: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 1qrx75-00087R-4w; Sun, 15 Oct 2023 09:08: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 1qrx74-0004dQ-Ma; Sun, 15 Oct 2023 09:08:42 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qrx74-0006o8-Lz; Sun, 15 Oct 2023 09:08: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=lnMA1Lg+kKbA9xGusDcjrqhazF1QB7dO7ALyFBwT998=; b=uyPGd2tBPyHzMLC5ZSl6dZtp4P
	s6uN7402quDR4F8dH4plF7qCCJbMZr6pQ1XPMfgLf1U5+Lyzjj3ThPFWm9rFlwTb1FYrjLEvWbcRp
	JshSAhKCBJg349SQ9Inh4WUe5mQBEYbL2EGyYU/shyPcCLsP2uDuuONzDwTddummfnsc=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183375-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 183375: tolerable FAIL
X-Osstest-Failures:
    xen-unstable:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:guest-start/debianhvm.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-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-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-qemut-win7-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: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-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2: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-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm: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-amd64-amd64-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-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2: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-arndale:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-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-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=730406ab81094115d9fb5ca00ba8d53cec1279b3
X-Osstest-Versions-That:
    xen=730406ab81094115d9fb5ca00ba8d53cec1279b3
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sun, 15 Oct 2023 09:08:42 +0000

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

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm 20 guest-start/debianhvm.repeat fail pass in 183373
 test-amd64-amd64-xl-qemuu-win7-amd64 12 windows-install    fail pass in 183373

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail in 183373 blocked in 183375
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183373
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183373
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 183373
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183373
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183373
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183373
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 183373
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183373
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183373
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 183373
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 183373
 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-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-credit1  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-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  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-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-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-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-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-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-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                  730406ab81094115d9fb5ca00ba8d53cec1279b3
baseline version:
 xen                  730406ab81094115d9fb5ca00ba8d53cec1279b3

Last test of basis   183375  2023-10-15 01:55:25 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                  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                                  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 Oct 15 12:20:20 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 15 Oct 2023 12:20:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617158.959555 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qs069-0008Mg-NK; Sun, 15 Oct 2023 12:19:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617158.959555; Sun, 15 Oct 2023 12:19: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 1qs069-0008MZ-Kc; Sun, 15 Oct 2023 12:19:57 +0000
Received: by outflank-mailman (input) for mailman id 617158;
 Sun, 15 Oct 2023 12:19: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 1qs068-0008MP-6C; Sun, 15 Oct 2023 12:19: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 1qs068-0004PH-0b; Sun, 15 Oct 2023 12:19: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 1qs067-0000x5-DG; Sun, 15 Oct 2023 12:19:55 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qs067-00012E-Cr; Sun, 15 Oct 2023 12:19: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=oCrmN0ckPATxIlHy1NhAZZQWGx9Mqa7Hd1nbLiugpXw=; b=vjHzeNtakRBv+C6fIk2IZoZbS8
	qXDw5cfh5wSUbYbhrW8wvwQROlazX5DAoxJnqQj2SybRON2v8YOXmjX3ejAjdRKzk7HPM2gafpWdM
	XXQYbEGYZbZuvbe/7Rw9Fbu0fgUSIyHxGSqE/8tbM1YzM8I7JZpRTbEA+qnr7khv/Tdg=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183376-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 183376: tolerable FAIL - PUSHED
X-Osstest-Failures:
    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-armhf-armhf-libvirt: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-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-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: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-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-arndale:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale: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-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-raw:migrate-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-amd64-amd64-libvirt:migrate-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
    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-libvirt: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=dc9b2e683bcba017588b9aaad80f442ad004a48f
X-Osstest-Versions-That:
    linux=70f8c6f8f8800d970b10676cceae42bba51a4899
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sun, 15 Oct 2023 12:19:55 +0000

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

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 183374
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183374
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183374
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183374
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183374
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183374
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183374
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183374
 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-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          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-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-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-qcow2 14 migrate-support-check        fail never pass
 test-amd64-amd64-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-amd64-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-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-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                dc9b2e683bcba017588b9aaad80f442ad004a48f
baseline version:
 linux                70f8c6f8f8800d970b10676cceae42bba51a4899

Last test of basis   183374  2023-10-14 16:43:12 Z    0 days
Testing same since   183376  2023-10-15 01:57:14 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Ben Segall <bsegall@google.com>
  Benjamin Segall <bsegall@google.com>
  Biju Das <biju.das.jz@bp.renesas.com>
  Borislav Petkov (AMD) <bp@alien8.de>
  Ingo Molnar <mingo@kernel.org>
  JP Kobryn <inwardvessel@gmail.com>
  Kirill A. Shutemov <kirill.shutemov@linux.intel.com>
  Linus Torvalds <torvalds@linux-foundation.org>
  Marek Szyprowski <m.szyprowski@samsung.com>
  Mike Galbraith <efault@gmx.de>
  Peter Zijlstra (Intel) <peterz@infradead.org>
  Peter Zijlstra <peterz@infradead.org>
  Randy Dunlap <rdunlap@infradead.org>
  René Rebe <rene@exactcode.de>

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
   70f8c6f8f880..dc9b2e683bcb  dc9b2e683bcba017588b9aaad80f442ad004a48f -> tested/linux-linus


From xen-devel-bounces@lists.xenproject.org Sun Oct 15 16:11:04 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 15 Oct 2023 16:11:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617167.959565 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qs3ha-0003oU-Jp; Sun, 15 Oct 2023 16:10:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617167.959565; Sun, 15 Oct 2023 16:10: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 1qs3ha-0003oN-FL; Sun, 15 Oct 2023 16:10:50 +0000
Received: by outflank-mailman (input) for mailman id 617167;
 Sun, 15 Oct 2023 16:10: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=YdO5=F5=gmail.com=ubizjak@srs-se1.protection.inumbo.net>)
 id 1qs3hZ-0003oD-UN
 for xen-devel@lists.xenproject.org; Sun, 15 Oct 2023 16:10:50 +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 665ad019-6b75-11ee-9b0e-b553b5be7939;
 Sun, 15 Oct 2023 18:10:47 +0200 (CEST)
Received: by mail-ed1-x52c.google.com with SMTP id
 4fb4d7f45d1cf-53dfc28a2afso6350082a12.1
 for <xen-devel@lists.xenproject.org>; Sun, 15 Oct 2023 09:10:46 -0700 (PDT)
Received: from localhost.localdomain ([46.248.82.114])
 by smtp.gmail.com with ESMTPSA id
 rh14-20020a17090720ee00b009b947f81c4asm2421863ejb.155.2023.10.15.09.10.45
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Sun, 15 Oct 2023 09:10: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: 665ad019-6b75-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1697386246; x=1697991046; 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=6M2BQ1j3esHLsNrh33huqDf3/RvkLGOffuZFGUfaNiI=;
        b=Ns7FTvVpqegCI75ot6N/i4q1V20ut9Dq0VoL+PuWQaAyshcsCG9s9rmpUyeogejr1f
         vzj9wEyxwbg2X8CnxEcQHJAGTG4K9FhnO+r0J3HzSKg5GlKzCkD7yZtoLL+LcRJRgByn
         7LMWArAy302R5iPPQ16w1O+lEhJVBHdmp0jS9Tb4GihREPef+tDdgCWeqKrn3Ypaucb7
         9xxAp0wY4Iqp4CIP5nvOW1/dplwhqlx80+HFTuCLrXDMKHY4U5gswiNDcL2ucnT9izY6
         Uo8zBx+OL9Jcq32VEIKIyhca/I8zIImMcQUPhAMvETCEYBaJkVMQrTe4DM7Hl+usrrGO
         M55A==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697386246; x=1697991046;
        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=6M2BQ1j3esHLsNrh33huqDf3/RvkLGOffuZFGUfaNiI=;
        b=M22jpkzRZwoiPEJXT8M0QivUNfKLaChQrhMVYhvq3K0OFnKXYY1QXOs+PgHKIfJmLW
         Kk5Cu4uKnnkgee1s118ZicjjykqJireUsHIpFvgfL/RgpXXy8tSRF9aj67KP8yEc3mKe
         7CL9GWw/1r3EiikjIPCPwrdxf7A1VPCaml/gEiN+maI0L9W+TeS1QAJby7fnuaERi2nb
         tV6n/l8m/u6/yzL/3tFJt/nlFdZJ8wMzhu0ufwaZ88aRmua2k1VbMvqRoSOZpSeCVY8B
         a9L/F+qlp3Ku1rmgupPl0bCX4DYgXFkEO3Jp0q2dYZi5eAlwpuAhJwd9n7vWr9EprTf1
         TxJA==
X-Gm-Message-State: AOJu0Yz5UaChsPPA1+iD0pt//MGdr/fp5GG6wGJkoeWsH5narrOR1mNp
	8hqsdvjy/K/L6aSs08axXzQ=
X-Google-Smtp-Source: AGHT+IEvlhJjwyQxB/GihB1vaJMXVxCuUzFpGcYEAGzxv4qn4tTRurqXJe51uzZpYjAHwtycAh8vUw==
X-Received: by 2002:a17:906:c5:b0:9ad:c763:bc7a with SMTP id 5-20020a17090600c500b009adc763bc7amr26258797eji.23.1697386246235;
        Sun, 15 Oct 2023 09:10:46 -0700 (PDT)
From: Uros Bizjak <ubizjak@gmail.com>
To: x86@kernel.org,
	xen-devel@lists.xenproject.org,
	linux-kernel@vger.kernel.org
Cc: Uros Bizjak <ubizjak@gmail.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>
Subject: [PATCH RESEND 1/2] x86/percpu: Correct PER_CPU_VAR usage to include symbol and its addend
Date: Sun, 15 Oct 2023 18:08:55 +0200
Message-ID: <20231015161036.39689-1-ubizjak@gmail.com>
X-Mailer: git-send-email 2.41.0
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

PER_CPU_VAR macro should be applied to a symbol and its addend.
Inconsistent usage is currently harmless, but needs to be corrected
before %rip-relative addressing is introduced to PER_CPU_VAR macro.

No functional changes intended.

Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: Borislav Petkov <bp@alien8.de>
Cc: Dave Hansen <dave.hansen@linux.intel.com>
Cc: "H. Peter Anvin" <hpa@zytor.com>
Signed-off-by: Uros Bizjak <ubizjak@gmail.com>
---
 arch/x86/entry/calling.h  | 2 +-
 arch/x86/entry/entry_32.S | 2 +-
 arch/x86/entry/entry_64.S | 2 +-
 arch/x86/kernel/head_64.S | 2 +-
 4 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/arch/x86/entry/calling.h b/arch/x86/entry/calling.h
index f6907627172b..47368ab0bda0 100644
--- a/arch/x86/entry/calling.h
+++ b/arch/x86/entry/calling.h
@@ -173,7 +173,7 @@ For 32-bit we have the following conventions - kernel is built with
 .endm
 
 #define THIS_CPU_user_pcid_flush_mask   \
-	PER_CPU_VAR(cpu_tlbstate) + TLB_STATE_user_pcid_flush_mask
+	PER_CPU_VAR(cpu_tlbstate + TLB_STATE_user_pcid_flush_mask)
 
 .macro SWITCH_TO_USER_CR3_NOSTACK scratch_reg:req scratch_reg2:req
 	ALTERNATIVE "jmp .Lend_\@", "", X86_FEATURE_PTI
diff --git a/arch/x86/entry/entry_32.S b/arch/x86/entry/entry_32.S
index 6e6af42e044a..d4e094b2c877 100644
--- a/arch/x86/entry/entry_32.S
+++ b/arch/x86/entry/entry_32.S
@@ -305,7 +305,7 @@
 .macro CHECK_AND_APPLY_ESPFIX
 #ifdef CONFIG_X86_ESPFIX32
 #define GDT_ESPFIX_OFFSET (GDT_ENTRY_ESPFIX_SS * 8)
-#define GDT_ESPFIX_SS PER_CPU_VAR(gdt_page) + GDT_ESPFIX_OFFSET
+#define GDT_ESPFIX_SS PER_CPU_VAR(gdt_page + GDT_ESPFIX_OFFSET)
 
 	ALTERNATIVE	"jmp .Lend_\@", "", X86_BUG_ESPFIX
 
diff --git a/arch/x86/entry/entry_64.S b/arch/x86/entry/entry_64.S
index 43606de22511..3d6770b87b87 100644
--- a/arch/x86/entry/entry_64.S
+++ b/arch/x86/entry/entry_64.S
@@ -252,7 +252,7 @@ SYM_FUNC_START(__switch_to_asm)
 
 #ifdef CONFIG_STACKPROTECTOR
 	movq	TASK_stack_canary(%rsi), %rbx
-	movq	%rbx, PER_CPU_VAR(fixed_percpu_data) + FIXED_stack_canary
+	movq	%rbx, PER_CPU_VAR(fixed_percpu_data + FIXED_stack_canary)
 #endif
 
 	/*
diff --git a/arch/x86/kernel/head_64.S b/arch/x86/kernel/head_64.S
index ea6995920b7a..bfe5ec2f4f83 100644
--- a/arch/x86/kernel/head_64.S
+++ b/arch/x86/kernel/head_64.S
@@ -449,7 +449,7 @@ SYM_CODE_START(soft_restart_cpu)
 	UNWIND_HINT_END_OF_STACK
 
 	/* Find the idle task stack */
-	movq	PER_CPU_VAR(pcpu_hot) + X86_current_task, %rcx
+	movq	PER_CPU_VAR(pcpu_hot + X86_current_task), %rcx
 	movq	TASK_threadsp(%rcx), %rsp
 
 	jmp	.Ljump_to_C_code
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Sun Oct 15 16:11:05 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 15 Oct 2023 16:11:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617168.959575 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qs3hb-00043C-R9; Sun, 15 Oct 2023 16:10:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617168.959575; Sun, 15 Oct 2023 16:10: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 1qs3hb-000435-My; Sun, 15 Oct 2023 16:10:51 +0000
Received: by outflank-mailman (input) for mailman id 617168;
 Sun, 15 Oct 2023 16:10: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=YdO5=F5=gmail.com=ubizjak@srs-se1.protection.inumbo.net>)
 id 1qs3ha-0003oD-DL
 for xen-devel@lists.xenproject.org; Sun, 15 Oct 2023 16:10:50 +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 66f2b84f-6b75-11ee-9b0e-b553b5be7939;
 Sun, 15 Oct 2023 18:10:47 +0200 (CEST)
Received: by mail-ej1-x636.google.com with SMTP id
 a640c23a62f3a-99de884ad25so599942066b.3
 for <xen-devel@lists.xenproject.org>; Sun, 15 Oct 2023 09:10:47 -0700 (PDT)
Received: from localhost.localdomain ([46.248.82.114])
 by smtp.gmail.com with ESMTPSA id
 rh14-20020a17090720ee00b009b947f81c4asm2421863ejb.155.2023.10.15.09.10.46
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Sun, 15 Oct 2023 09:10: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: 66f2b84f-6b75-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1697386247; x=1697991047; 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=yNuYyWEUkCBUvaAXEq0aoPImcZWnaX/wCmiSUbk6m0g=;
        b=JmPvSp6aQYmr67/tJAb/tLmUkXcJaemHA9/DdbGVsHaiy48C8uijUdcJ6YLhCc25rG
         IbvCqI60w2lTwUTSuuDX5fxZ3GkUEGvaxvVx9VUjEBOes+gp6Iy5IPiw3al1dx2Yf1fy
         eK6biv54xNQkEqIXmbTx5E8fbEJ3qQ+xKaXFJum+3PZxgQkkLC4uFeS8jW+Sa2JWGMhd
         KFsvfx+c/roqx0inyhW+w7HL3x2QFpOJPMO9ZcSRysILcDUoI+srdPwB8ADllQuV2Wav
         GzoTqk3T9RGJaYQayx7BwAAiVl+kwyRXjg5mLVf1+OSMIOTdlXSHvAycsHWkCeVYUmkJ
         HW4g==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697386247; x=1697991047;
        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=yNuYyWEUkCBUvaAXEq0aoPImcZWnaX/wCmiSUbk6m0g=;
        b=LdSBviKFdowY+VIzHYxgnjtkQe1/0IYqFktaP0NKrpmqu1Y+rb0PGTazxsHqYlPkZn
         GQmji7Zce86N5mtHzSYZbcO7lYJ1IsbIe7lL8TKfhW4gviy0itBSPRKiYAziP7WmpUwG
         1OcbVp58qsLm7ng5FcEa1VfRPX7N0WjyaNmWPULT6nM9EZ4EO8LVTTB9nQR6aX/lc1dn
         pKSWY8KmutKQ1CXS2at7KCcTpOUnaUqJIWZU02P4Ht3XTa0rPczTCLpHm8hILVfk7GAT
         uy6fHQrAqCxFT7WX8NZgcZGqkVxv58JjfrZVAvqoHGHlf+5x7sHTgdEkeqN4epdWS1ug
         1meg==
X-Gm-Message-State: AOJu0Yx2Di3oDHVV4VZyfE0FhhSuOc2vQdpVEjfgcocf6uiEO8JGjcbv
	INBS6Nhq4LeiV9gcus+v+6Wz1Y0UGil6hw==
X-Google-Smtp-Source: AGHT+IHzwRGoTsq2ot/pkjlspwnV7I6UAUsPnchXAv4bHUoDdbyDL6cBAAa+K2qzJnSDEzRDgK0gbw==
X-Received: by 2002:a17:907:9450:b0:9bd:e3ae:ef57 with SMTP id dl16-20020a170907945000b009bde3aeef57mr5115780ejc.60.1697386247417;
        Sun, 15 Oct 2023 09:10:47 -0700 (PDT)
From: Uros Bizjak <ubizjak@gmail.com>
To: x86@kernel.org,
	xen-devel@lists.xenproject.org,
	linux-kernel@vger.kernel.org
Cc: Uros Bizjak <ubizjak@gmail.com>,
	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>
Subject: [PATCH RESEND 2/2] x86/percpu, xen: Correct PER_CPU_VAR usage to include symbol and its addend
Date: Sun, 15 Oct 2023 18:08:56 +0200
Message-ID: <20231015161036.39689-2-ubizjak@gmail.com>
X-Mailer: git-send-email 2.41.0
In-Reply-To: <20231015161036.39689-1-ubizjak@gmail.com>
References: <20231015161036.39689-1-ubizjak@gmail.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

PER_CPU_VAR macro should be applied to a symbol and its addend.
Inconsisten usage is currently harmless, but needs to be corrected
before %rip-relative addressing is introduced to PER_CPU_VAR macro.

No functional changes intended.

Cc: Juergen Gross <jgross@suse.com>
Cc: Boris Ostrovsky <boris.ostrovsky@oracle.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: Borislav Petkov <bp@alien8.de>
Cc: Dave Hansen <dave.hansen@linux.intel.com>
Cc: "H. Peter Anvin" <hpa@zytor.com>
Signed-off-by: Uros Bizjak <ubizjak@gmail.com>
---
 arch/x86/xen/xen-asm.S | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/arch/x86/xen/xen-asm.S b/arch/x86/xen/xen-asm.S
index 9e5e68008785..448958ddbaf8 100644
--- a/arch/x86/xen/xen-asm.S
+++ b/arch/x86/xen/xen-asm.S
@@ -28,7 +28,7 @@
  * non-zero.
  */
 SYM_FUNC_START(xen_irq_disable_direct)
-	movb $1, PER_CPU_VAR(xen_vcpu_info) + XEN_vcpu_info_mask
+	movb $1, PER_CPU_VAR(xen_vcpu_info + XEN_vcpu_info_mask)
 	RET
 SYM_FUNC_END(xen_irq_disable_direct)
 
@@ -69,7 +69,7 @@ SYM_FUNC_END(check_events)
 SYM_FUNC_START(xen_irq_enable_direct)
 	FRAME_BEGIN
 	/* Unmask events */
-	movb $0, PER_CPU_VAR(xen_vcpu_info) + XEN_vcpu_info_mask
+	movb $0, PER_CPU_VAR(xen_vcpu_info + XEN_vcpu_info_mask)
 
 	/*
 	 * Preempt here doesn't matter because that will deal with any
@@ -78,7 +78,7 @@ SYM_FUNC_START(xen_irq_enable_direct)
 	 */
 
 	/* Test for pending */
-	testb $0xff, PER_CPU_VAR(xen_vcpu_info) + XEN_vcpu_info_pending
+	testb $0xff, PER_CPU_VAR(xen_vcpu_info + XEN_vcpu_info_pending)
 	jz 1f
 
 	call check_events
@@ -97,7 +97,7 @@ SYM_FUNC_END(xen_irq_enable_direct)
  * x86 use opposite senses (mask vs enable).
  */
 SYM_FUNC_START(xen_save_fl_direct)
-	testb $0xff, PER_CPU_VAR(xen_vcpu_info) + XEN_vcpu_info_mask
+	testb $0xff, PER_CPU_VAR(xen_vcpu_info + XEN_vcpu_info_mask)
 	setz %ah
 	addb %ah, %ah
 	RET
@@ -113,7 +113,7 @@ SYM_FUNC_END(xen_read_cr2);
 
 SYM_FUNC_START(xen_read_cr2_direct)
 	FRAME_BEGIN
-	_ASM_MOV PER_CPU_VAR(xen_vcpu_info) + XEN_vcpu_info_arch_cr2, %_ASM_AX
+	_ASM_MOV PER_CPU_VAR(xen_vcpu_info + XEN_vcpu_info_arch_cr2), %_ASM_AX
 	FRAME_END
 	RET
 SYM_FUNC_END(xen_read_cr2_direct);
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Sun Oct 15 16:23:48 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 15 Oct 2023 16:23:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617180.959585 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qs3u0-0006NZ-1c; Sun, 15 Oct 2023 16:23:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617180.959585; Sun, 15 Oct 2023 16:23: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 1qs3tz-0006NS-Up; Sun, 15 Oct 2023 16:23:39 +0000
Received: by outflank-mailman (input) for mailman id 617180;
 Sun, 15 Oct 2023 16:23: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=cJRX=F5=oracle.com=boris.ostrovsky@srs-se1.protection.inumbo.net>)
 id 1qs3tx-0006K0-Qx
 for xen-devel@lists.xenproject.org; Sun, 15 Oct 2023 16:23:38 +0000
Received: from mx0a-00069f02.pphosted.com (mx0a-00069f02.pphosted.com
 [205.220.165.32]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 2f7619ea-6b77-11ee-98d4-6d05b1d4d9a1;
 Sun, 15 Oct 2023 18:23:36 +0200 (CEST)
Received: from pps.filterd (m0333521.ppops.net [127.0.0.1])
 by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id
 39FBU2Wc030053; Sun, 15 Oct 2023 16:23:07 GMT
Received: from phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com
 (phxpaimrmta01.appoci.oracle.com [138.1.114.2])
 by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3tqk28hbta-1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK);
 Sun, 15 Oct 2023 16:23:07 +0000
Received: from pps.filterd
 (phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com [127.0.0.1])
 by phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com (8.17.1.19/8.17.1.19)
 with ESMTP id 39FCHXMf028688; Sun, 15 Oct 2023 16:23:06 GMT
Received: from nam10-mw2-obe.outbound.protection.outlook.com
 (mail-mw2nam10lp2101.outbound.protection.outlook.com [104.47.55.101])
 by phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com (PPS) with ESMTPS id
 3trfy14b7g-1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK);
 Sun, 15 Oct 2023 16:23:06 +0000
Received: from BLAPR10MB5009.namprd10.prod.outlook.com (2603:10b6:208:321::10)
 by SN4PR10MB5605.namprd10.prod.outlook.com (2603:10b6:806:208::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.35; Sun, 15 Oct
 2023 16:23:04 +0000
Received: from BLAPR10MB5009.namprd10.prod.outlook.com
 ([fe80::afa5:d894:d483:c5d2]) by BLAPR10MB5009.namprd10.prod.outlook.com
 ([fe80::afa5:d894:d483:c5d2%4]) with mapi id 15.20.6886.034; Sun, 15 Oct 2023
 16:23: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: 2f7619ea-6b77-11ee-98d4-6d05b1d4d9a1
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=U5/RFU14y8E4JieQ8lnHLA4Vgcp03418FPDgLL1v1OQ=;
 b=vBnZSh2tERs2/dvDywUTcNUVKJvLDG1nTi/vDjz6wXv96SePLxDn2YaxL0Ux+FJBoxLY
 plgdwYeQ0pO0JgwQT99T9ig5XJQ0ehrkD9pTHd9uerl3EWU3lAocFOZwBGjIw5U69g/n
 lMrx4XczizCIqOD22TK0ZsO3pC5uec8f32sPqojOtyhJQx57aXpntZeSBN0aeQoJ1ZBn
 LO49cy/zPFh88puPVWhlGr8mSDliwtvSX0crxzZgGhY8WaJXUitE3XQ5bQDCuiAzzi48
 JLzjfhAKeOT2cMembUsHjkuat/OdPpf3Ynba7DUWWEeA+O3VFfqbTfxYcerucjPUZbzo cw== 
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Ce0ETRpASeZQGNSkndDS7d+03HC3vJZ+Nj4vZOb8FHsMuKe2QKrVf0/w2lAQKujPUaH9sp1TQOD2sNYfAGWL3XbmW3JOEkJY/5pYVrZWGdwEDiR9102thh4qsigVMwhzXbMRfjMPM8Qi/Eg6IwpLP5R/IRgmI/PmY00UfTOGPL+0gxOQiUG+f9apTfwVFchebRP9ceg0FKCCrNCsYgT1f7+knBnITp94K2pfc9ov71OluenhCaSRsJx+od4cLuaw0lBkj8gd9gpbxxLDgxY7XXAVjkS3oSwH+S4zu7F1KfQtOPyfS8dyN9Vl/qYLlATMkWYDk3ucAoCbw71YVA+7LQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=U5/RFU14y8E4JieQ8lnHLA4Vgcp03418FPDgLL1v1OQ=;
 b=ZBDy3iHqL1yCZicX93mRQi5O4k4D9Xg8DtDUPM8XrI8aD0RrI66EW2ucvWgM/t77X9SIV9c8pkBH5tLW5PNNmPrAZC365kgIpslISyP8S7uzunmvwQi0eO+rJI+PrMcGdemNVbUlsp6oY2vDMLEJ0pnhKjftDRJ8838VBfa47DCTiOYo2/QRQokaykjkaedtbrLMHBKQO3/B749pkPATmiov0L5wi+o4IKuTe3geNJ6/V0rv9q5MCDoupUYAizjyGVHqN/MunihFKndgkOX+hwf1sR1hQ6hPImeWNG+uUqkSPKK9H/D6KUq8C4wqgz+RLC15mJYIpaGH/MLSS9foTQ==
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=U5/RFU14y8E4JieQ8lnHLA4Vgcp03418FPDgLL1v1OQ=;
 b=Fh0ZcND49ufdF8IfXPQ226eZdz6vMKhDBH5CvgHmSWhcVgKt7u/5LTcZnuX2Te73Qx6Wm1VSkHaL0pARagQB3PhN4r4tEdPPstBttMIkPtRWMB6IdFFq8J78+AIcfY8Z/BK8e2OMISZEY/AkshQDZeqWwfLpvDHR6RYe7v9lC+M=
Message-ID: <83cbf3c9-1a68-4ab2-bec1-658844d6566f@oracle.com>
Date: Sun, 15 Oct 2023 12:22:57 -0400
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH RESEND 2/2] x86/percpu, xen: Correct PER_CPU_VAR usage to
 include symbol and its addend
To: Uros Bizjak <ubizjak@gmail.com>, x86@kernel.org,
        xen-devel@lists.xenproject.org, linux-kernel@vger.kernel.org
Cc: Juergen Gross <jgross@suse.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>
References: <20231015161036.39689-1-ubizjak@gmail.com>
 <20231015161036.39689-2-ubizjak@gmail.com>
Content-Language: en-US
From: Boris Ostrovsky <boris.ostrovsky@oracle.com>
Autocrypt: addr=boris.ostrovsky@oracle.com; keydata=
 xsFNBFH8CgsBEAC0KiOi9siOvlXatK2xX99e/J3OvApoYWjieVQ9232Eb7GzCWrItCzP8FUV
 PQg8rMsSd0OzIvvjbEAvaWLlbs8wa3MtVLysHY/DfqRK9Zvr/RgrsYC6ukOB7igy2PGqZd+M
 MDnSmVzik0sPvB6xPV7QyFsykEgpnHbvdZAUy/vyys8xgT0PVYR5hyvhyf6VIfGuvqIsvJw5
 C8+P71CHI+U/IhsKrLrsiYHpAhQkw+Zvyeml6XSi5w4LXDbF+3oholKYCkPwxmGdK8MUIdkM
 d7iYdKqiP4W6FKQou/lC3jvOceGupEoDV9botSWEIIlKdtm6C4GfL45RD8V4B9iy24JHPlom
 woVWc0xBZboQguhauQqrBFooHO3roEeM1pxXjLUbDtH4t3SAI3gt4dpSyT3EvzhyNQVVIxj2
 FXnIChrYxR6S0ijSqUKO0cAduenhBrpYbz9qFcB/GyxD+ZWY7OgQKHUZMWapx5bHGQ8bUZz2
 SfjZwK+GETGhfkvNMf6zXbZkDq4kKB/ywaKvVPodS1Poa44+B9sxbUp1jMfFtlOJ3AYB0WDS
 Op3d7F2ry20CIf1Ifh0nIxkQPkTX7aX5rI92oZeu5u038dHUu/dO2EcuCjl1eDMGm5PLHDSP
 0QUw5xzk1Y8MG1JQ56PtqReO33inBXG63yTIikJmUXFTw6lLJwARAQABzTNCb3JpcyBPc3Ry
 b3Zza3kgKFdvcmspIDxib3Jpcy5vc3Ryb3Zza3lAb3JhY2xlLmNvbT7CwXgEEwECACIFAlH8
 CgsCGwMGCwkIBwMCBhUIAgkKCwQWAgMBAh4BAheAAAoJEIredpCGysGyasEP/j5xApopUf4g
 9Fl3UxZuBx+oduuw3JHqgbGZ2siA3EA4bKwtKq8eT7ekpApn4c0HA8TWTDtgZtLSV5IdH+9z
 JimBDrhLkDI3Zsx2CafL4pMJvpUavhc5mEU8myp4dWCuIylHiWG65agvUeFZYK4P33fGqoaS
 VGx3tsQIAr7MsQxilMfRiTEoYH0WWthhE0YVQzV6kx4wj4yLGYPPBtFqnrapKKC8yFTpgjaK
 jImqWhU9CSUAXdNEs/oKVR1XlkDpMCFDl88vKAuJwugnixjbPFTVPyoC7+4Bm/FnL3iwlJVE
 qIGQRspt09r+datFzPqSbp5Fo/9m4JSvgtPp2X2+gIGgLPWp2ft1NXHHVWP19sPgEsEJXSr9
 tskM8ScxEkqAUuDs6+x/ISX8wa5Pvmo65drN+JWA8EqKOHQG6LUsUdJolFM2i4Z0k40BnFU/
 kjTARjrXW94LwokVy4x+ZYgImrnKWeKac6fMfMwH2aKpCQLlVxdO4qvJkv92SzZz4538az1T
 m+3ekJAimou89cXwXHCFb5WqJcyjDfdQF857vTn1z4qu7udYCuuV/4xDEhslUq1+GcNDjAhB
 nNYPzD+SvhWEsrjuXv+fDONdJtmLUpKs4Jtak3smGGhZsqpcNv8nQzUGDQZjuCSmDqW8vn2o
 hWwveNeRTkxh+2x1Qb3GT46uzsFNBFH8CgsBEADGC/yx5ctcLQlB9hbq7KNqCDyZNoYu1HAB
 Hal3MuxPfoGKObEktawQPQaSTB5vNlDxKihezLnlT/PKjcXC2R1OjSDinlu5XNGc6mnky03q
 yymUPyiMtWhBBftezTRxWRslPaFWlg/h/Y1iDuOcklhpr7K1h1jRPCrf1yIoxbIpDbffnuyz
 kuto4AahRvBU4Js4sU7f/btU+h+e0AcLVzIhTVPIz7PM+Gk2LNzZ3/on4dnEc/qd+ZZFlOQ4
 KDN/hPqlwA/YJsKzAPX51L6Vv344pqTm6Z0f9M7YALB/11FO2nBB7zw7HAUYqJeHutCwxm7i
 BDNt0g9fhviNcJzagqJ1R7aPjtjBoYvKkbwNu5sWDpQ4idnsnck4YT6ctzN4I+6lfkU8zMzC
 gM2R4qqUXmxFIS4Bee+gnJi0Pc3KcBYBZsDK44FtM//5Cp9DrxRQOh19kNHBlxkmEb8kL/pw
 XIDcEq8MXzPBbxwHKJ3QRWRe5jPNpf8HCjnZz0XyJV0/4M1JvOua7IZftOttQ6KnM4m6WNIZ
 2ydg7dBhDa6iv1oKdL7wdp/rCulVWn8R7+3cRK95SnWiJ0qKDlMbIN8oGMhHdin8cSRYdmHK
 kTnvSGJNlkis5a+048o0C6jI3LozQYD/W9wq7MvgChgVQw1iEOB4u/3FXDEGulRVko6xCBU4
 SQARAQABwsFfBBgBAgAJBQJR/AoLAhsMAAoJEIredpCGysGyfvMQAIywR6jTqix6/fL0Ip8G
 jpt3uk//QNxGJE3ZkUNLX6N786vnEJvc1beCu6EwqD1ezG9fJKMl7F3SEgpYaiKEcHfoKGdh
 30B3Hsq44vOoxR6zxw2B/giADjhmWTP5tWQ9548N4VhIZMYQMQCkdqaueSL+8asp8tBNP+TJ
 PAIIANYvJaD8xA7sYUXGTzOXDh2THWSvmEWWmzok8er/u6ZKdS1YmZkUy8cfzrll/9hiGCTj
 u3qcaOM6i/m4hqtvsI1cOORMVwjJF4+IkC5ZBoeRs/xW5zIBdSUoC8L+OCyj5JETWTt40+lu
 qoqAF/AEGsNZTrwHJYu9rbHH260C0KYCNqmxDdcROUqIzJdzDKOrDmebkEVnxVeLJBIhYZUd
 t3Iq9hdjpU50TA6sQ3mZxzBdfRgg+vaj2DsJqI5Xla9QGKD+xNT6v14cZuIMZzO7w0DoojM4
 ByrabFsOQxGvE0w9Dch2BDSI2Xyk1zjPKxG1VNBQVx3flH37QDWpL2zlJikW29Ws86PHdthh
 Fm5PY8YtX576DchSP6qJC57/eAAe/9ztZdVAdesQwGb9hZHJc75B+VNm4xrh/PJO6c1THqdQ
 19WVJ+7rDx3PhVncGlbAOiiiE3NOFPJ1OQYxPKtpBUukAlOTnkKE6QcA4zckFepUkfmBV1wM
 Jg6OxFYd01z+a+oL
In-Reply-To: <20231015161036.39689-2-ubizjak@gmail.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: SJ0PR13CA0109.namprd13.prod.outlook.com
 (2603:10b6:a03:2c5::24) To BLAPR10MB5009.namprd10.prod.outlook.com
 (2603:10b6:208:321::10)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: BLAPR10MB5009:EE_|SN4PR10MB5605:EE_
X-MS-Office365-Filtering-Correlation-Id: abb54d55-5aea-4047-781c-08dbcd9b0227
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: 
	Cw9+48Dc20mzyv8ERMifqZB9rbC85bPlaqqh/1p4iq/tQ7TgN7gapU08/JJaJ0cRJ6SHo8HWD80663pv7GIyYbkycoR4STxh8JACvhO6hbEgInClwmmtaZMWi2FmlbK/yuNpavFkQ9AhluaTyjymAukJMu8329a6J5PbkAaswzdUHc2Ffo17tLOBUFrd4xP/7gRpoGCCbPNNRWnPGi3hgw6sh2nocj1G3wnJcOBnGK+3jS6aFxpgnQ970iC7dilyZcyb5wyfGeYDwfYP4zIqHTQEi05RCENnEtRFngFywJrTTaY+ASfkTqLMRjYhgzKBmBr5JdYaM28uB/GF8o3cPuytiI1KgrAkLLFgxg57pKVN/whwFf4k+aGTeUfCp2dwjCcg2uWp7il2Ce7w41XkjxgRPP78J8b/iLechgQP2DYOaiJqPwOOcL0QCNhdza06qQvvFPPHFa2lcdXFXAU/MhdYUQCRaz7ce6aUcPf6J+W9Er+VMdwnW49Pqi3AL4BGyRR4fizJApxZofaagIbsNwqk4/eBxSmvuLTUgMyf/Wq1XLWD96w+rjWyIXEdDHsIaWTypghGM1yx2LO8cz1V3n8jXKnEyi/j9S8d0mvJo+xNquBa5I7RJJSF1L18LokXlhP/RD4ZwF5rFeT2+YVZFg==
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)(376002)(346002)(136003)(396003)(230922051799003)(1800799009)(186009)(64100799003)(451199024)(478600001)(6486002)(6666004)(66946007)(66556008)(66476007)(316002)(54906003)(26005)(2616005)(53546011)(6506007)(6512007)(4326008)(8676002)(8936002)(7416002)(2906002)(4744005)(44832011)(5660300002)(41300700001)(36756003)(31696002)(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?MGMvMkRoQW9GTDZjUjJxOEtiSXpLbmtFMk1rTGVSYVRoQ2IrTXlGeGR0bjR2?=
 =?utf-8?B?Wkk0dWY5N3VyK3BGS2JNN3BBOEs5aHlpbHA2QTF2N3RsNHNoamljakxCbzA5?=
 =?utf-8?B?dWtnb2Fqcm80RFVFN3BQQi9SOTVlODV6NkxUNFc0aXlBQk9YNDJseGp0bHRi?=
 =?utf-8?B?dXJaWXpBMzl5TXdSUjgrdW8wM0xNNzJDUVpOTUpwZDBVMndGeFpBcUJhbWYy?=
 =?utf-8?B?OFJ6SXhZWWlKRzZNZnAwZHpjQUoxQ0tHay9JN0ljK1hGbzRCQjVBQlk3TjMx?=
 =?utf-8?B?S3NoZXY3OW1hM1pDcnNscjdHTWpmcWxEQmtRQW11OTRGZTJKMTNnczV5N1lC?=
 =?utf-8?B?TzQ5STBOMElkdGpBME5ZRStnaVg5RytGekRmVkRqMndCRDJrdXBzK3FGWE1V?=
 =?utf-8?B?STRMdEI1WEpFSUZqZnRGMVZYdUc3L1ZtQXpPQ1ZLdEFGVzJmbHNPc0lEdlRY?=
 =?utf-8?B?TXNKb2dLWlA0YWtyTk02OHkzWjdIUkIxU3V5WmRKS2tKVXladlV5UDBzbHh6?=
 =?utf-8?B?cVcrQnRIWFZZWFZXcmFZRVBPMmYzOWhEWTQ2VW81ejJWb0YvSVZyTDJ5SVdF?=
 =?utf-8?B?UnJ6MndZa0phU1NKSnE1T1htTXM5M24yWSt2cTlCRUhPejVsaDV4NUlCWnpZ?=
 =?utf-8?B?VUlLTm5qcEhzbE5pOFA3TzBtYU9IZCs3bUZmdGFHRGJsWUhHRG9ZdWFnRG9I?=
 =?utf-8?B?RUdPK2Q1aitJQmt1dW4zcUU5SUw4QXBMNHVjVTNLSTA3dVhST0Z5NFhMSURE?=
 =?utf-8?B?M0hVRDA5N0k2TllORUJ5aGZpdkxodmxaQlZDWDlueGw4cmUwM0pnMk9aeXZr?=
 =?utf-8?B?VDhRMjRlRk14WXNlU2dHNGZSYk10dnFMUGdxNkR4U21RajRSQXoxVUZmSVoz?=
 =?utf-8?B?SmJBK1FEVm9zU3FqVTVReXJuS3ZISDFtcnc2RTdZOTNHcjc5TW5kRW9xUlNv?=
 =?utf-8?B?RjN4czVlQmpPN2ZUSXlTMzVGYUtXMWV2WVlmdjAyY29kaTBROUZLTWNMU0ZO?=
 =?utf-8?B?K29jbDZIZzNhSDZaYWJFY24xREljY0F3TEk0dW14eld0bWs4R2ZxajZyaXph?=
 =?utf-8?B?ei9lbll2TEdrRzFNTzZlUVQrazFjRTh6VUhTayt1SzRKeVg0OXd6NGRVK1I3?=
 =?utf-8?B?Z0YwMDU1TmhsaU9XanJDaktBdkZWallNV2VaMHZLbFlQOTRtcUlkZTFEcjRO?=
 =?utf-8?B?MERSVE50RTNpK3daYVQvZ0FhOTc1cXRPRXRzbFJ2eFpDOXZqU3Nob29DUk1I?=
 =?utf-8?B?VEdLQWdvOHZ5dndKbHVrbFRHUlhrOXUyWTN2MncrY0liaXlmcHY1eDFiQm9I?=
 =?utf-8?B?U1pPeGlQSU9wMEVFMzY5bExYUVVsdTZUZi9IYWtWZnJ2YW1EdXFLeWtUbmVq?=
 =?utf-8?B?MmdCTXVxL3NLYmlEb2VVaWx5L0o1K1YyaHRNOTNlNXFEOHNXbTZHQ2Z1cCtV?=
 =?utf-8?B?VE50d0FDNmFEVjJuY29kNTBEdjQ2SnpvdDNvbDZjSDVIekg0U2hWMGc4Zklu?=
 =?utf-8?B?WFRoRDdKazh0TnJjUHAraDAxVlJhVXFUVERVd25KSXpKNzY0WkIrczJ6SnE4?=
 =?utf-8?B?ZGRzUGlLZFFpdmpNMFNpcVNPNWpNUzdtZUJKR01nZHlmQk1EVGkzbzNKVzJE?=
 =?utf-8?B?c3J6RkgraGZ3UW9uOHdtMDcvUnlWVk1MckxtdWIzSjBIczNzTTcydysxbnow?=
 =?utf-8?B?VytpVHg1aEVPbVhOZHNBdWlGOVl4YWZ6d2RZUW4rMUFmZzlwYzNGUjkrVmln?=
 =?utf-8?B?NzdEQk5HK0dUM21XSHBQc0VqT0M1N3U3VGF5SDBaSm5WV201eEMxVnVVclFu?=
 =?utf-8?B?RVhINVFBbEFuZng4K3lJMDBtZVNTUE1hcDB2QmtIVzBQeEJOLzZ0ZDkrZko0?=
 =?utf-8?B?bnF0d0NLVE5DNmZPU2N4bFMxNTlEMmhqZWs4U3hTalN1K3luUHNmWTdzZ2lq?=
 =?utf-8?B?dlVabXBQcDd5QVRDZ0VUZnJhTnJETXJVcmFneDNiV1VPcWZQeEJtei9zdEJz?=
 =?utf-8?B?ZElHS0pERDZCaWdxckU0S21manBlMEQ4cExmR0NENWNWRWwwbFE4SVp2WTNj?=
 =?utf-8?B?aWt4ZDV0akIydjNHcFV5SFZYYXdxMnF6OFNBY0IweFp4Rm9BU1JKT3p6MlBB?=
 =?utf-8?B?ZTVGbmFKTFZsNDJVTStLZ0pTcm9qbXN6S1o4eHFGOUcybHowYUVTc243YWZB?=
 =?utf-8?B?TkE9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: 
	=?utf-8?B?cDVaejN6SFI5MWZtM1FMRU5IUFFYcXhmdWpjSmFIRzZFSTVqaDBBbEJFNlNt?=
 =?utf-8?B?ZGxMWVQ1Vzg0bWtxMmU3SHY3Wkd4dWJlN0plSWFqWFhRdGpaYnA1Ly9DRGln?=
 =?utf-8?B?NVBpUW1OOWcvenhaYVoyYWZESXVqWCsyZmJya1NOZ2xRU3BuYVVucm9oOVVE?=
 =?utf-8?B?Tko1Z1pzRG1BcW5RZ3VuQ1F5MmFLc3RGSFRCUlRqSVl1QmsxdE56NVlDZVgv?=
 =?utf-8?B?K0I2K2VjTjl2RytWWU9sU1pnNGh0a0d1Ukhkbjl0YnJXbWM4bnZIYW5jUC82?=
 =?utf-8?B?SzZ5ODRFZ1JtdEU2ejhaSkd1WlNDUCtDNDVhYmdYNmdBV21pU0RGSDlsMkJ2?=
 =?utf-8?B?Z2lqb2Y1bGY0azFGcFU3N3FUMnBqRDZRcTJ4U1ZmRlVwZFo5UXRLcTF4SVEv?=
 =?utf-8?B?Um9VWUlGNHFvWDhXL0FYRkZuQmxmbnhkU2tuZ20wRjZFU2NGcDN3VENxYm1m?=
 =?utf-8?B?ZDhGWWdxdXJha3BVZFVQT1VaU3VEZ1VyUUpReE9IQkxZRzdSVkI4eEVCai8y?=
 =?utf-8?B?d3pzSGJGUUxIUjdFd1FMemtLUzdNeHZMZ01ZcWFOMXJOT3BOVTE4MmoyU3l3?=
 =?utf-8?B?NUR6b0phaGFEdDA2Ym9wL3NOUWVaSFYyY2s0cWhVV1lzMEMvYThsdWk1MEJS?=
 =?utf-8?B?WjMxSXNIS0J3Q2VmQWNIV3A4QnpPNVZ1cDRSWGdnQWxtdFd3WURPQ0k3VEVI?=
 =?utf-8?B?dkRPRnNaUHVOOXlxUDdKR3pYYjlQVUs4a0d0US80ekZ3NmNDQjk1WHN2SzdH?=
 =?utf-8?B?YmZXTWpKQm93S1FVOHZSNmVkb2lqcTNqZFJwQjFQMHRYK3Y5N3dzVlVUUCts?=
 =?utf-8?B?QmwvQUQ4dG1aVUlNYkdPQkxLTVZDT0lKMGxPd2RvTUhsY0M1YUJQV1lHdDJy?=
 =?utf-8?B?ZEJ3cWtIdkJ3b3VZQ3BaK1BPSkdmR2padEc3K1IrMzZUbDBIbkg5S3NqWTU4?=
 =?utf-8?B?Um5GODdFK3NkVURZSFRoWUNWY0VOMy9qT0RhZm05YWZGSU5sZ1lVaFkrTVRl?=
 =?utf-8?B?cHQ1TUxCZE45U3hmNmIvL243d1EwVXRtOGpUcUtFLzNVZ25uQnQ3bi9rZFQz?=
 =?utf-8?B?L0wrVjFCZVlQcEdXQWxVNFNuMDkydkx0cUtadUJLTEUyald3MzJqcUQ3aStk?=
 =?utf-8?B?Sy9yM2MvMTVHL1JyQk9MRUNIVDZmZEFqcE8xZThCbFhLWThWTTFxZFVqTVU4?=
 =?utf-8?B?NmRBUXJLZC9GcUk3WUwzTC9HSzZjRTJtY2MxSEo5eUc1aDhOcU5POXpSaUlF?=
 =?utf-8?B?RU16ak8xMWhrc1BQVEFLQlhnVGhWTjhPSmVQNXE3WC9VUFBKRGEzY3Z1Q0ph?=
 =?utf-8?B?T2kvR2ZTMDhWVkt0VWJBRGsvREtqMGR5dkl2dEVwdHh4TVVYTGxlVjEzbjc2?=
 =?utf-8?B?am9sbWhmUXhqTXBtT1Z2dDRTbGhzQVVDYmpsUXZpUkttYUZTSDdURS8vWVlm?=
 =?utf-8?Q?RlDQEZCL?=
X-OriginatorOrg: oracle.com
X-MS-Exchange-CrossTenant-Network-Message-Id: abb54d55-5aea-4047-781c-08dbcd9b0227
X-MS-Exchange-CrossTenant-AuthSource: BLAPR10MB5009.namprd10.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Oct 2023 16:23:04.4469
 (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: zfLiuwvWylAvgMxBmiRUczL0JPjRf23gDhGfsGSbchCnJl4EjRhE4wAwxIt6CcXK51pioWjzULcOLYHT9Hxx9LCY+ULrzWT1srUrcggko7k=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN4PR10MB5605
X-Proofpoint-Virus-Version: vendor=baseguard
 engine=ICAP:2.0.272,Aquarius:18.0.980,Hydra:6.0.619,FMLib:17.11.176.26
 definitions=2023-10-15_02,2023-10-12_01,2023-05-22_02
X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 bulkscore=0 adultscore=0 phishscore=0
 mlxlogscore=999 mlxscore=0 suspectscore=0 malwarescore=0 spamscore=0
 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2309180000
 definitions=main-2310150148
X-Proofpoint-ORIG-GUID: hqat7VCFzDJtfuLry0JkTBDHSgyqe_0k
X-Proofpoint-GUID: hqat7VCFzDJtfuLry0JkTBDHSgyqe_0k



On 10/15/23 12:08 PM, Uros Bizjak wrote:
> PER_CPU_VAR macro should be applied to a symbol and its addend.
> Inconsisten usage is currently harmless, but needs to be corrected
> before %rip-relative addressing is introduced to PER_CPU_VAR macro.
> 
> No functional changes intended.
> 
> Cc: Juergen Gross <jgross@suse.com>
> Cc: Boris Ostrovsky <boris.ostrovsky@oracle.com>
> Cc: Thomas Gleixner <tglx@linutronix.de>
> Cc: Ingo Molnar <mingo@redhat.com>
> Cc: Borislav Petkov <bp@alien8.de>
> Cc: Dave Hansen <dave.hansen@linux.intel.com>
> Cc: "H. Peter Anvin" <hpa@zytor.com>
> Signed-off-by: Uros Bizjak <ubizjak@gmail.com>

Reviewed-by: Boris Ostrovsky <boris.ostrovsky@oracle.com>


From xen-devel-bounces@lists.xenproject.org Sun Oct 15 19:23:45 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 15 Oct 2023 19:23:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617185.959594 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qs6i0-0006AV-Em; Sun, 15 Oct 2023 19:23:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617185.959594; Sun, 15 Oct 2023 19:23: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 1qs6i0-0006AO-BV; Sun, 15 Oct 2023 19:23:28 +0000
Received: by outflank-mailman (input) for mailman id 617185;
 Sun, 15 Oct 2023 19:23: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 1qs6hz-0006AE-2Y; Sun, 15 Oct 2023 19:23: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 1qs6hy-0006jE-Vg; Sun, 15 Oct 2023 19:23: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 1qs6hy-000620-Cs; Sun, 15 Oct 2023 19:23:26 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qs6hy-0005Lh-CN; Sun, 15 Oct 2023 19:23: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=BibuI2RGb/zDirqRRKGnc2uX1PbF1rul2uugi3U2pv8=; b=s1Y3R6stTP1rSc5uO1PBMFViD6
	jB3mTfq/8YMHcfAXzsuOzcKF1oY02lgQKp8dLj9qM0tVBqWm4TIxAxDtQ/2NByNXIOw9lqfu2zl3+
	0s5vHcWflEoUl6atSlv2Qrcd4vDj7o1IofA9TK4lbkNZCH0TlaU3zoDcc50ASM8bS6l4=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183377-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 183377: tolerable FAIL - PUSHED
X-Osstest-Failures:
    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-armhf-armhf-libvirt: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:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-xsm:migrate-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-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: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-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-arndale:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale: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-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-raw:migrate-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-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd: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-libvirt: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=9a3dad63edbe9a2ab2be1e7361a2133f519f855b
X-Osstest-Versions-That:
    linux=dc9b2e683bcba017588b9aaad80f442ad004a48f
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sun, 15 Oct 2023 19:23:26 +0000

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

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 183376
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183376
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183376
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183376
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183376
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183376
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183376
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183376
 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-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          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-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-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-qcow2 14 migrate-support-check        fail never pass
 test-amd64-amd64-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-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          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-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                9a3dad63edbe9a2ab2be1e7361a2133f519f855b
baseline version:
 linux                dc9b2e683bcba017588b9aaad80f442ad004a48f

Last test of basis   183376  2023-10-15 01:57:14 Z    0 days
Testing same since   183377  2023-10-15 12:43:18 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Linus Torvalds <torvalds@linux-foundation.org>
  Namjae Jeon <linkinjeon@kernel.org>
  Paulo Alcantara (SUSE) <pc@manguebit.com>
  Paulo Alcantara <pc@manguebit.com>
  Steve French <stfrench@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-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
   dc9b2e683bcb..9a3dad63edbe  9a3dad63edbe9a2ab2be1e7361a2133f519f855b -> tested/linux-linus


From xen-devel-bounces@lists.xenproject.org Sun Oct 15 22:33:28 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 15 Oct 2023 22:33:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617193.959605 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qs9ff-0004TD-E6; Sun, 15 Oct 2023 22:33:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617193.959605; Sun, 15 Oct 2023 22:33: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 1qs9ff-0004T6-BB; Sun, 15 Oct 2023 22:33:15 +0000
Received: by outflank-mailman (input) for mailman id 617193;
 Sun, 15 Oct 2023 22:33: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=MPrw=F5=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qs9fe-0004Sx-5X
 for xen-devel@lists.xenproject.org; Sun, 15 Oct 2023 22:33:14 +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 d249288a-6baa-11ee-98d4-6d05b1d4d9a1;
 Mon, 16 Oct 2023 00:33:11 +0200 (CEST)
Received: by mail-wr1-x430.google.com with SMTP id
 ffacd0b85a97d-32d9552d765so2991030f8f.2
 for <xen-devel@lists.xenproject.org>; Sun, 15 Oct 2023 15:33:11 -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
 e6-20020a5d65c6000000b0032326908972sm9850638wrw.17.2023.10.15.15.33.09
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Sun, 15 Oct 2023 15:33: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: d249288a-6baa-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1697409191; x=1698013991; 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=pdQCeJYLw63k7DQDwbrhaNy4Mu3z8juSMZnnDT+NaZQ=;
        b=trhA6jnEZwEv8sK36NRmUpq9EyEodxJUzFgTp/q17e5KQMKQrMbtbqToRtRRUfPeRo
         UfHj+rf18FUED4jcWj3Rl0QbN1To1pwfPm8IBFGy12jO3rK71gnbNsG9gpqnTNhSYsEK
         0QQyYCdmLL3L0lH2laHc3naI1iH3qRIs7srzE=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697409191; x=1698013991;
        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=pdQCeJYLw63k7DQDwbrhaNy4Mu3z8juSMZnnDT+NaZQ=;
        b=luTrYNC1WxuZBucomH+dCpwM1EcqceN/8G/9AIdyddoq43vkVDTVwBV1zFdJfvA1o3
         7LfI2FVujOsur1GL0kmIRN1rgDNKnwTVLtGKTzgpdy+xTdBkc/p4VIx8OUOYRFu4Mmny
         Fc6tO7oNJIup+n6vLQn9IQ8Tjtx1TDUjN6doC7zq/8635uYZfydi8v7wPx34Ne8Y5Jks
         bixMusCTV6d8sY2qsS00mvZtGMgdVtXi2WHYcVNOOaq4VbBwB/Y/1oXGmPSggarikaj8
         Ot36HIif6EOuyUfilJv8KSzdIt7S0PZDf/bc1wlLQX/pGA/nqWeMw+Jw8kn+0MkIDAOb
         CgjA==
X-Gm-Message-State: AOJu0YzrZIqbMZ0wNXxIghzJWjiqkCUO25cZ696YLJxvu6bpFodVV6Jm
	9qsJb5suHDCLod9b3kUCdpqP6A==
X-Google-Smtp-Source: AGHT+IEeCnJhgPzweeG/Em7qaaGrAYBH5VJJ7ge1neXy3U+SNJ8B5VzWrzES57fBx8tyJvX6/qIjjQ==
X-Received: by 2002:a5d:6d41:0:b0:323:2f54:b6cb with SMTP id k1-20020a5d6d41000000b003232f54b6cbmr27324666wri.8.1697409190655;
        Sun, 15 Oct 2023 15:33:10 -0700 (PDT)
Message-ID: <a4004491-98df-46fc-b8fd-d330893263ea@citrix.com>
Date: Sun, 15 Oct 2023 23:33:09 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH RESEND 2/2] x86/percpu, xen: Correct PER_CPU_VAR usage to
 include symbol and its addend
Content-Language: en-GB
To: Uros Bizjak <ubizjak@gmail.com>, x86@kernel.org,
 xen-devel@lists.xenproject.org, linux-kernel@vger.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>
References: <20231015161036.39689-1-ubizjak@gmail.com>
 <20231015161036.39689-2-ubizjak@gmail.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: <20231015161036.39689-2-ubizjak@gmail.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit

On 15/10/2023 5:08 pm, Uros Bizjak wrote:
> PER_CPU_VAR macro should be applied to a symbol and its addend.
> Inconsisten

Inconsistent.

I did previously wonder why references were written this way...

~Andrew


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 02:42:15 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 02:42:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617198.959615 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsDYO-0001lt-2d; Mon, 16 Oct 2023 02:42:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617198.959615; Mon, 16 Oct 2023 02:42: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 1qsDYN-0001lm-VN; Mon, 16 Oct 2023 02:41:59 +0000
Received: by outflank-mailman (input) for mailman id 617198;
 Mon, 16 Oct 2023 02:41: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 1qsDYM-0001lM-NG; Mon, 16 Oct 2023 02:41: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 1qsDYM-0007xB-II; Mon, 16 Oct 2023 02:41: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 1qsDYL-0002y1-TA; Mon, 16 Oct 2023 02:41:58 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qsDYL-0005L0-Sf; Mon, 16 Oct 2023 02:41: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=BnXr3vhEYRC1QhSyWNfeuUZQuBw4+kNXvsBBv6lCCaw=; b=PLDcT2PQ4OJ3cbUqbxfEdrnrUo
	PrLWrbzHW2ipOh1+ywk+k2luNg6uXjVB82j9dw9IcApk+SZdkcLcVc++f0nuPIPjALcWpKEvy1NLq
	Jah7bIyhPx7jK+TONHeU8oIsknZWHMbtaz3/6Vc3HgdaViQJTKILWNR/4buyI0q06TZM=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183378-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 183378: tolerable FAIL - PUSHED
X-Osstest-Failures:
    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-armhf-armhf-libvirt: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:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-xsm:migrate-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-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: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-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu: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-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-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-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-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd: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-libvirt: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=fbe1bf1e5ff1e3b298420d7a8434983ef8d72bd1
X-Osstest-Versions-That:
    linux=9a3dad63edbe9a2ab2be1e7361a2133f519f855b
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 16 Oct 2023 02:41:57 +0000

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

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 183377
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183377
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183377
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183377
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183377
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183377
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183377
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183377
 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-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          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-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-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-qcow2 14 migrate-support-check        fail never pass
 test-amd64-amd64-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-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          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-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                fbe1bf1e5ff1e3b298420d7a8434983ef8d72bd1
baseline version:
 linux                9a3dad63edbe9a2ab2be1e7361a2133f519f855b

Last test of basis   183377  2023-10-15 12:43:18 Z    0 days
Testing same since   183378  2023-10-15 19:43:01 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Alexander Zangerl <az@breathe-safe.com>
  Alisa-Dariana Roman <alisa.roman@analog.com>
  Amir Goldstein <amir73il@gmail.com>
  Antoniu Miclaus <antoniu.miclaus@analog.com>
  Athira Rajeev <atrajeev@linux.vnet.ibm.com>
  Bryan O'Donoghue <bryan.odonoghue@linaro.org>
  Bryan O'Donoghue <bryan.odonoghue@linaro.org> # rb5
  Carlos Llamas <cmllamas@google.com>
  Christian Brauner <brauner@kernel.org>
  Christophe Leroy <christophe.leroy@csgroup.eu>
  Conor Dooley <conor.dooley@microchip.com>
  Dharma Balasubiramani <dharma.b@microchip.com>
  Eddie James <eajames@linux.ibm.com>
  Fabrice Gasnier <fabrice.gasnier@foss.st.com>
  GONG, Ruiqi <gongruiqi1@huawei.com>
  Greg Kroah-Hartman <gregkh@linuxfoundation.org>
  Gustavo A. R. Silva <gustavoars@kernel.org>
  Haibo Chen <haibo.chen@nxp.com>
  Heikki Krogerus <heikki.krogerus@linux.intel.com>
  Hui Liu <quic_huliu@quicinc.com>
  Janusz Krzysztofik <jmkrzyszt@gmail.com>
  Jason Wang <jasowang@redhat.com>
  Javier Carrasco <javier.carrasco@wolfvision.net>
  Jonathan Cameron <Jonathan.Cameron@huawei.com>
  Jorge Sanjuan Garcia <jorge.sanjuangarcia@duagon.com>
  Jose Javier Rodriguez Barbarin <JoseJavier.Rodriguez@duagon.com>
  Kees Cook <keescook@chromium.org>
  Kenta Sato <tosainu.maple@gmail.com>
  Krishna Kurapati <quic_kriskura@quicinc.com>
  Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
  Lakshmi Yadlapati <lakshmiy@us.ibm.com>
  Linu Cherian <lcherian@marvell.com>
  Linus Torvalds <torvalds@linux-foundation.org>
  Lukas Wunner <lukas@wunner.de>
  Marcelo Schmitt <marcelo.schmitt1@gmail.com>
  Mario Limonciello <mario.limonciello@amd.com>
  Mathias Nyman <mathias.nyman@linux.intel.com>
  Matthias Kaehlcke <mka@chromium.org>
  Maximilian Luz <luzmaximilian@gmail.com>
  Michael Ellerman <mpe@ellerman.id.au>
  Mika Westerberg <mika.westerberg@linux.intel.com>
  Mårten Lindahl <marten.lindahl@axis.com>
  Naveen N Rao <naveen@kernel.org>
  Pawel Laszczak <pawell@cadence.com>
  Peter Chen <peter.chen@kernel.org>
  Phil Elwell <phil@raspberrypi.com>
  Philipp Rossak <embed3d@gmail.com>
  Piyush Mehta <piyush.mehta@amd.com>
  Prashanth K <quic_prashk@quicinc.com>
  Randy Dunlap <rdunlap@infradead.org>
  RD Babiera <rdbabiera@google.com>
  Ricardo Cañuelo <ricardo.canuelo@collabora.com>
  Rob Herring <robh@kernel.org>
  Russ Weight <russell.h.weight@intel.com>
  Russell King (Oracle) <rmk+kernel@armlinux.org.uk>
  Suzuki K Poulose <suzuki.poulose@arm.com>
  Thinh Nguyen <Thinh.Nguyen@synopsys.com>
  Thomas Gleixner <tglx@linutronix.de>
  Thomas Richard <thomas.richard@bootlin.com>
  Todd Kjos <tkjos@google.com>
  Tony Lindgren <tony@atomide.com>
  Tzung-Bi Shih <tzungbi@kernel.org>
  Waqar Hameed <waqar.hameed@axis.com>
  Wesley Cheng <quic_wcheng@quicinc.com>
  William Breathitt Gray <william.gray@linaro.org>
  Xiaolei Wang <xiaolei.wang@windriver.com>
  Xingxing Luo <xingxing.luo@unisoc.com>
  Xuan Zhuo <xuanzhuo@linux.alibaba.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
   9a3dad63edbe..fbe1bf1e5ff1  fbe1bf1e5ff1e3b298420d7a8434983ef8d72bd1 -> tested/linux-linus


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 06:17:20 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 06:17:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617214.959625 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsGuV-0003bp-QB; Mon, 16 Oct 2023 06:17:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617214.959625; Mon, 16 Oct 2023 06: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 1qsGuV-0003bi-NJ; Mon, 16 Oct 2023 06:17:03 +0000
Received: by outflank-mailman (input) for mailman id 617214;
 Mon, 16 Oct 2023 06:17: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=4t3W=F6=suse.com=jgross@srs-se1.protection.inumbo.net>)
 id 1qsGuU-0003bJ-L5
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 06:17:02 +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 9cbe9718-6beb-11ee-9b0e-b553b5be7939;
 Mon, 16 Oct 2023 08:16:59 +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 7E59F218E3;
 Mon, 16 Oct 2023 06:16:57 +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 4BDE5138EF;
 Mon, 16 Oct 2023 06:16:57 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap2.suse-dmz.suse.de with ESMTPSA id vTuuEFnVLGU3PAAAMHmgww
 (envelope-from <jgross@suse.com>); Mon, 16 Oct 2023 06:16: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: 9cbe9718-6beb-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1697437017; 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=/tugEqL7n6CP3WL2MKhvL19GGGnR+jSrO4Im9YGKHa4=;
	b=BZqv32pt68xPbU/Jeo6IB/mqdMrNqtMMgbXdm0QQjVxF0QMvWhkuptn06RW246DNLcQtAs
	TFbCi8ciEMvfFDEumgORcQk3l2ehHOoukXWXZeRkAjUvaff7ox/taZAL/E4yjtkKn59H/e
	jLSdoV5k6ATc6tFrNISLQLlwsfm2teQ=
Message-ID: <788dd54d-04cf-4582-9ccd-adc33e96a043@suse.com>
Date: Mon, 16 Oct 2023 08:16:56 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v3] xen-pciback: Consider INTx disabled when MSI/MSI-X is
 enabled
Content-Language: en-US
To: =?UTF-8?Q?Marek_Marczykowski-G=C3=B3recki?=
 <marmarek@invisiblethingslab.com>, linux-kernel@vger.kernel.org
Cc: 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>
References: <20221118154931.1928298-1-marmarek@invisiblethingslab.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: <20221118154931.1928298-1-marmarek@invisiblethingslab.com>
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature";
 boundary="------------0eSPdyus81nfvMmfKrqHFOLt"
Authentication-Results: smtp-out1.suse.de;
	none
X-Spam-Level: 
X-Spam-Score: -8.96
X-Spamd-Result: default: False [-8.96 / 50.00];
	 ARC_NA(0.00)[];
	 RCVD_VIA_SMTP_AUTH(0.00)[];
	 XM_UA_NO_VERSION(0.01)[];
	 FROM_HAS_DN(0.00)[];
	 TO_DN_SOME(0.00)[];
	 TO_MATCH_ENVRCPT_ALL(0.00)[];
	 BAYES_HAM(-2.97)[99.87%];
	 MIME_GOOD(-0.20)[multipart/signed,multipart/mixed,text/plain];
	 HAS_ATTACHMENT(0.00)[];
	 NEURAL_HAM_LONG(-3.00)[-1.000];
	 RCPT_COUNT_FIVE(0.00)[6];
	 DKIM_SIGNED(0.00)[suse.com:s=susede1];
	 NEURAL_HAM_SHORT(-1.00)[-1.000];
	 MIME_BASE64_TEXT(0.10)[];
	 SIGNED_PGP(-2.00)[];
	 FROM_EQ_ENVFROM(0.00)[];
	 MIME_TRACE(0.00)[0:+,1:+,2:+,3:+,4:~,5:~];
	 RCVD_COUNT_TWO(0.00)[2];
	 RCVD_TLS_ALL(0.00)[];
	 MID_RHS_MATCH_FROM(0.00)[];
	 MIME_UNKNOWN(0.10)[application/pgp-keys]
X-Spam-Flag: NO

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--------------0eSPdyus81nfvMmfKrqHFOLt
Content-Type: multipart/mixed; boundary="------------G6mxZrg2c3Iku9uyxUGxAuN2";
 protected-headers="v1"
From: Juergen Gross <jgross@suse.com>
To: =?UTF-8?Q?Marek_Marczykowski-G=C3=B3recki?=
 <marmarek@invisiblethingslab.com>, linux-kernel@vger.kernel.org
Cc: 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>
Message-ID: <788dd54d-04cf-4582-9ccd-adc33e96a043@suse.com>
Subject: Re: [PATCH v3] xen-pciback: Consider INTx disabled when MSI/MSI-X is
 enabled
References: <20221118154931.1928298-1-marmarek@invisiblethingslab.com>
In-Reply-To: <20221118154931.1928298-1-marmarek@invisiblethingslab.com>

--------------G6mxZrg2c3Iku9uyxUGxAuN2
Content-Type: multipart/mixed; boundary="------------0TE5CC04j7W0hmrJmeAeU0Gq"

--------------0TE5CC04j7W0hmrJmeAeU0Gq
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: base64

T24gMTguMTEuMjIgMTY6NDksIE1hcmVrIE1hcmN6eWtvd3NraS1Hw7NyZWNraSB3cm90ZToN
Cj4gTGludXggZW5hYmxlcyBNU0ktWCBiZWZvcmUgZGlzYWJsaW5nIElOVHgsIGJ1dCBrZWVw
cyBNU0ktWCBtYXNrZWQgdW50aWwNCj4gdGhlIHRhYmxlIGlzIGZpbGxlZC4gVGhlbiBpdCBk
aXNhYmxlcyBJTlR4IGp1c3QgYmVmb3JlIGNsZWFyaW5nIE1BU0tBTEwNCj4gYml0LiBDdXJy
ZW50bHkgdGhpcyBhcHByb2FjaCBpcyByZWplY3RlZCBieSB4ZW4tcGNpYmFjay4NCj4gQWNj
b3JkaW5nIHRvIHRoZSBQQ0llIHNwZWMsIGRldmljZSBjYW5ub3QgdXNlIElOVHggd2hlbiBN
U0kvTVNJLVggaXMNCj4gZW5hYmxlZCAoaW4gb3RoZXIgd29yZHM6IGVuYWJsaW5nIE1TSS9N
U0ktWCBpbXBsaWNpdGx5IGRpc2FibGVzIElOVHgpLg0KPiANCj4gQ2hhbmdlIHRoZSBsb2dp
YyB0byBjb25zaWRlciBJTlR4IGRpc2FibGVkIGlmIE1TSS9NU0ktWCBpcyBlbmFibGVkLiBU
aGlzDQo+IGFwcGxpZXMgdG8gdGhyZWUgcGxhY2VzOg0KPiAgIC0gY2hlY2tpbmcgY3VycmVu
dGx5IGVuYWJsZWQgaW50ZXJydXB0cyB0eXBlLA0KPiAgIC0gdHJhbnNpdGlvbiB0byBNU0kv
TVNJLVggLSB3aGVyZSBJTlR4IHdvdWxkIGJlIGltcGxpY2l0bHkgZGlzYWJsZWQsDQo+ICAg
LSBjbGVhcmluZyBJTlR4IGRpc2FibGUgYml0IC0gd2hpY2ggY2FuIGJlIGFsbG93ZWQgZXZl
biBpZiBNU0kvTVNJLVggaXMNCj4gICAgIGVuYWJsZWQsIGFzIGRldmljZSBzaG91bGQgY29u
c2lkZXIgSU5UeCBkaXNhYmxlZCBhbnl3YXkgaW4gdGhhdCBjYXNlDQo+IA0KPiBGaXhlczog
NWUyOTUwMGViYTJhICgieGVuLXBjaWJhY2s6IEFsbG93IHNldHRpbmcgUENJX01TSVhfRkxB
R1NfTUFTS0FMTCB0b28iKQ0KPiBTaWduZWQtb2ZmLWJ5OiBNYXJlayBNYXJjenlrb3dza2kt
R8OzcmVja2kgPG1hcm1hcmVrQGludmlzaWJsZXRoaW5nc2xhYi5jb20+DQoNCkFja2VkLWJ5
OiBKdWVyZ2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+DQoNCg0KSnVlcmdlbg0KDQo=
--------------0TE5CC04j7W0hmrJmeAeU0Gq
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-----

--------------0TE5CC04j7W0hmrJmeAeU0Gq--

--------------G6mxZrg2c3Iku9uyxUGxAuN2--

--------------0eSPdyus81nfvMmfKrqHFOLt
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/Ey8FAmUs1VgFAwAAAAAACgkQsN6d1ii/Ey/Y
lwf8DZcvPZhfET8A7cnivC1M221hP1Tb9yT1+eZMelnp8zcj6K5gLJJb3xDvkK1pMEOw3qVJ0CpX
ar+toZtiR5MoX+59+RzPnJRIA2KVd/rUVPjcY9VFfQcYTisgyZfd81PkDgBMm3xZ1Ssy/ezCcMP7
VRU9/IEzH+6uOLhFZ9lrOIpiSTfjYwBYgrx1Ry1375BgCzALfaUyYcdOuzlXjmh9ZETCjba7PTl5
huT/XLJuGKejHyjL8iG8aNIAeYxUHMaBRe3kVN/DYphX8/4bjjJfwRoujuGWf7Jb9Wvp3va4uxO0
3fZ95eL0+e4ZUN/TbILYgPHwv1iY8j61yRXXfMsTKQ==
=e621
-----END PGP SIGNATURE-----

--------------0eSPdyus81nfvMmfKrqHFOLt--


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 06:28:45 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 06:28:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617223.959635 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsH5j-0005Uj-V7; Mon, 16 Oct 2023 06:28:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617223.959635; Mon, 16 Oct 2023 06:28: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 1qsH5j-0005Uc-RW; Mon, 16 Oct 2023 06:28:39 +0000
Received: by outflank-mailman (input) for mailman id 617223;
 Mon, 16 Oct 2023 06:28: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=4t3W=F6=suse.com=jgross@srs-se1.protection.inumbo.net>)
 id 1qsH5h-0005UW-UI
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 06:28:37 +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 3c2a21cd-6bed-11ee-9b0e-b553b5be7939;
 Mon, 16 Oct 2023 08:28:35 +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 1FE3D21ADB;
 Mon, 16 Oct 2023 06:28:35 +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 E1534138EF;
 Mon, 16 Oct 2023 06:28:34 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap2.suse-dmz.suse.de with ESMTPSA id mYXBNRLYLGV9QQAAMHmgww
 (envelope-from <jgross@suse.com>); Mon, 16 Oct 2023 06:28: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: 3c2a21cd-6bed-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1697437715; 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=3S4X3hdCR3jWGjnnYmala4Nsas/lYtTIdqglFRoFwTs=;
	b=BXY2UEMNMmZbcu5VmPlkaN3XoDtUO+bHshdurIZmVdRxBXthi5XMSQ+Xm8Qo3a51IwZxG7
	/bEbscpzxopICtv18k3fgreAOhWiwnV8BLH+xb7LlolAQSQV24heKvLm7CQIYqb4s0WOEZ
	XFwjdTSR/YN7oHHjFQO0ZmcQQhGV6o0=
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 0/7] xen/events: do some cleanups in events_base.c
Date: Mon, 16 Oct 2023 08:28:24 +0200
Message-Id: <20231016062831.20630-1-jgross@suse.com>
X-Mailer: git-send-email 2.35.3
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Authentication-Results: smtp-out1.suse.de;
	none
X-Spam-Level: 
X-Spam-Score: 0.90
X-Spamd-Result: default: False [0.90 / 50.00];
	 ARC_NA(0.00)[];
	 RCVD_VIA_SMTP_AUTH(0.00)[];
	 BAYES_SPAM(0.00)[19.76%];
	 FROM_HAS_DN(0.00)[];
	 TO_DN_SOME(0.00)[];
	 TO_MATCH_ENVRCPT_ALL(0.00)[];
	 R_MISSING_CHARSET(2.50)[];
	 MIME_GOOD(-0.10)[text/plain];
	 BROKEN_CONTENT_TYPE(1.50)[];
	 RCPT_COUNT_FIVE(0.00)[5];
	 NEURAL_HAM_LONG(-3.00)[-1.000];
	 DKIM_SIGNED(0.00)[suse.com:s=susede1];
	 NEURAL_HAM_SHORT(-1.00)[-1.000];
	 MID_CONTAINS_FROM(1.00)[];
	 FROM_EQ_ENVFROM(0.00)[];
	 MIME_TRACE(0.00)[0:+];
	 RCVD_COUNT_TWO(0.00)[2];
	 RCVD_TLS_ALL(0.00)[]
X-Spam-Flag: NO

As a followup to the XSA-441 patch this series is doing a minor bug fix
and some cleanups of events_base.c (with some minor effects outside of
it).

Juergen Gross (7):
  xen/events: fix delayed eoi list handling
  xen/events: remove unused functions
  xen/events: reduce externally visible helper functions
  xen/events: remove some simple helpers from events_base.c
  xen/events: drop xen_allocate_irqs_dynamic()
  xen/events: modify internal [un]bind interfaces
  xen/events: remove some info_for_irq() calls in pirq handling

 drivers/xen/events/events_2l.c       |   8 +-
 drivers/xen/events/events_base.c     | 557 +++++++++++++--------------
 drivers/xen/events/events_internal.h |   1 -
 include/xen/events.h                 |   8 +-
 4 files changed, 276 insertions(+), 298 deletions(-)

-- 
2.35.3



From xen-devel-bounces@lists.xenproject.org Mon Oct 16 06:28:45 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 06:28:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617224.959645 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsH5o-0005jl-5p; Mon, 16 Oct 2023 06:28:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617224.959645; Mon, 16 Oct 2023 06:28: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 1qsH5o-0005je-2Y; Mon, 16 Oct 2023 06:28:44 +0000
Received: by outflank-mailman (input) for mailman id 617224;
 Mon, 16 Oct 2023 06:28: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=4t3W=F6=suse.com=jgross@srs-se1.protection.inumbo.net>)
 id 1qsH5m-0005jO-EN
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 06:28:42 +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 3f7e7285-6bed-11ee-98d4-6d05b1d4d9a1;
 Mon, 16 Oct 2023 08:28:41 +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 B07521FEA9;
 Mon, 16 Oct 2023 06:28:40 +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 7FACD138EF;
 Mon, 16 Oct 2023 06:28:40 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap2.suse-dmz.suse.de with ESMTPSA id ++vdHRjYLGWEQQAAMHmgww
 (envelope-from <jgross@suse.com>); Mon, 16 Oct 2023 06:28: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: 3f7e7285-6bed-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1697437720; 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=hBgTSni+I3ppK49nD/tnBJmLcv3aLmPun9In8njDCy4=;
	b=a2PTjcLx1p3n+4hZ7IAIhiXuz/Snwz7VPD7EqdwyTSPjCbWUn8tdXHUncYrCMvyKRL0rcT
	r9mYbUivhp5VqGCYn9sjH+CjQFqXlFJoxaqnbswv1xpSd/mF8WodAQMg6vXmRBWH2jFjc5
	3lqtPANzQIFlmSNxeB+rjvNRm8UAdM0=
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,
	Jan Beulich <jbeulich@suse.com>
Subject: [PATCH 1/7] xen/events: fix delayed eoi list handling
Date: Mon, 16 Oct 2023 08:28:25 +0200
Message-Id: <20231016062831.20630-2-jgross@suse.com>
X-Mailer: git-send-email 2.35.3
In-Reply-To: <20231016062831.20630-1-jgross@suse.com>
References: <20231016062831.20630-1-jgross@suse.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Authentication-Results: smtp-out2.suse.de;
	none
X-Spam-Level: 
X-Spam-Score: -3.05
X-Spamd-Result: default: False [-3.05 / 50.00];
	 ARC_NA(0.00)[];
	 RCVD_VIA_SMTP_AUTH(0.00)[];
	 BAYES_SPAM(0.05)[55.71%];
	 FROM_HAS_DN(0.00)[];
	 TO_DN_SOME(0.00)[];
	 TO_MATCH_ENVRCPT_ALL(0.00)[];
	 R_MISSING_CHARSET(2.50)[];
	 MIME_GOOD(-0.10)[text/plain];
	 REPLY(-4.00)[];
	 BROKEN_CONTENT_TYPE(1.50)[];
	 RCPT_COUNT_FIVE(0.00)[6];
	 NEURAL_HAM_LONG(-3.00)[-1.000];
	 DKIM_SIGNED(0.00)[suse.com:s=susede1];
	 NEURAL_HAM_SHORT(-1.00)[-1.000];
	 MID_CONTAINS_FROM(1.00)[];
	 FROM_EQ_ENVFROM(0.00)[];
	 MIME_TRACE(0.00)[0:+];
	 RCVD_COUNT_TWO(0.00)[2];
	 RCVD_TLS_ALL(0.00)[]
X-Spam-Flag: NO

When delaying eoi handling of events, the related elements are queued
into the percpu lateeoi list. In case the list isn't empty, the
elements should be sorted by the time when eoi handling is to happen.

Unfortunately a new element will never be queued at the start of the
list, even if it has a handling time lower than all other list
elements.

Fix that by handling that case the same way as for an empty list.

Fixes: e99502f76271 ("xen/events: defer eoi in case of excessive number of events")
Reported-by: Jan Beulich <jbeulich@suse.com>
Signed-off-by: Juergen Gross <jgross@suse.com>
---
 drivers/xen/events/events_base.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/drivers/xen/events/events_base.c b/drivers/xen/events/events_base.c
index 1b2136fe0fa5..0e458b1c0c8c 100644
--- a/drivers/xen/events/events_base.c
+++ b/drivers/xen/events/events_base.c
@@ -601,7 +601,9 @@ static void lateeoi_list_add(struct irq_info *info)
 
 	spin_lock_irqsave(&eoi->eoi_list_lock, flags);
 
-	if (list_empty(&eoi->eoi_list)) {
+	elem = list_first_entry_or_null(&eoi->eoi_list, struct irq_info,
+					eoi_list);
+	if (!elem || info->eoi_time < elem->eoi_time) {
 		list_add(&info->eoi_list, &eoi->eoi_list);
 		mod_delayed_work_on(info->eoi_cpu, system_wq,
 				    &eoi->delayed, delay);
-- 
2.35.3



From xen-devel-bounces@lists.xenproject.org Mon Oct 16 06:28:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 06:28:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617225.959655 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsH5u-000633-DP; Mon, 16 Oct 2023 06:28:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617225.959655; Mon, 16 Oct 2023 06: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 1qsH5u-00062w-AL; Mon, 16 Oct 2023 06:28:50 +0000
Received: by outflank-mailman (input) for mailman id 617225;
 Mon, 16 Oct 2023 06:28: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=4t3W=F6=suse.com=jgross@srs-se1.protection.inumbo.net>)
 id 1qsH5s-0005UW-Ui
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 06:28:48 +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 4307737b-6bed-11ee-9b0e-b553b5be7939;
 Mon, 16 Oct 2023 08:28:47 +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 D6A6F1FEAB;
 Mon, 16 Oct 2023 06:28: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 AAE61138EF;
 Mon, 16 Oct 2023 06:28:46 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap2.suse-dmz.suse.de with ESMTPSA id guxNKB7YLGWMQQAAMHmgww
 (envelope-from <jgross@suse.com>); Mon, 16 Oct 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: 4307737b-6bed-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1697437726; 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=rNX0BHA06/8Nsdx4Ml8n47rtnGq7y7Ylo5Rine36zkk=;
	b=ed1mpfG/OdNtnERvr+u0c/5UTTxcVdh9dCockRC8xxBjDyYoXSxtc546veqFCMPuApPqyY
	yQFuoDELuRLH4GV7uBNq23liBMDD8kapEMMsmP9CFILss5qIpbHjsVEokdBaq9Nn/lrxRi
	f1Q7JXSosDLutEXExiXohxy2p2r/7Tk=
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 2/7] xen/events: remove unused functions
Date: Mon, 16 Oct 2023 08:28:26 +0200
Message-Id: <20231016062831.20630-3-jgross@suse.com>
X-Mailer: git-send-email 2.35.3
In-Reply-To: <20231016062831.20630-1-jgross@suse.com>
References: <20231016062831.20630-1-jgross@suse.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Authentication-Results: smtp-out2.suse.de;
	none
X-Spam-Level: 
X-Spam-Score: -3.10
X-Spamd-Result: default: False [-3.10 / 50.00];
	 ARC_NA(0.00)[];
	 RCVD_VIA_SMTP_AUTH(0.00)[];
	 FROM_HAS_DN(0.00)[];
	 TO_DN_SOME(0.00)[];
	 TO_MATCH_ENVRCPT_ALL(0.00)[];
	 R_MISSING_CHARSET(2.50)[];
	 MIME_GOOD(-0.10)[text/plain];
	 REPLY(-4.00)[];
	 BROKEN_CONTENT_TYPE(1.50)[];
	 RCPT_COUNT_FIVE(0.00)[5];
	 NEURAL_HAM_LONG(-3.00)[-1.000];
	 DKIM_SIGNED(0.00)[suse.com:s=susede1];
	 NEURAL_HAM_SHORT(-1.00)[-1.000];
	 MID_CONTAINS_FROM(1.00)[];
	 FROM_EQ_ENVFROM(0.00)[];
	 MIME_TRACE(0.00)[0:+];
	 RCVD_COUNT_TWO(0.00)[2];
	 RCVD_TLS_ALL(0.00)[];
	 BAYES_HAM(-0.00)[11.11%]
X-Spam-Flag: NO

There are no users of xen_irq_from_pirq() and xen_set_irq_pending().

Remove those functions.

Signed-off-by: Juergen Gross <jgross@suse.com>
---
 drivers/xen/events/events_base.c | 30 ------------------------------
 include/xen/events.h             |  4 ----
 2 files changed, 34 deletions(-)

diff --git a/drivers/xen/events/events_base.c b/drivers/xen/events/events_base.c
index 0e458b1c0c8c..1d797dd85d0e 100644
--- a/drivers/xen/events/events_base.c
+++ b/drivers/xen/events/events_base.c
@@ -1165,29 +1165,6 @@ int xen_destroy_irq(int irq)
 	return rc;
 }
 
-int xen_irq_from_pirq(unsigned pirq)
-{
-	int irq;
-
-	struct irq_info *info;
-
-	mutex_lock(&irq_mapping_update_lock);
-
-	list_for_each_entry(info, &xen_irq_list_head, list) {
-		if (info->type != IRQT_PIRQ)
-			continue;
-		irq = info->irq;
-		if (info->u.pirq.pirq == pirq)
-			goto out;
-	}
-	irq = -1;
-out:
-	mutex_unlock(&irq_mapping_update_lock);
-
-	return irq;
-}
-
-
 int xen_pirq_from_irq(unsigned irq)
 {
 	return pirq_from_irq(irq);
@@ -2026,13 +2003,6 @@ void xen_clear_irq_pending(int irq)
 		event_handler_exit(info);
 }
 EXPORT_SYMBOL(xen_clear_irq_pending);
-void xen_set_irq_pending(int irq)
-{
-	evtchn_port_t evtchn = evtchn_from_irq(irq);
-
-	if (VALID_EVTCHN(evtchn))
-		set_evtchn(evtchn);
-}
 
 bool xen_test_irq_pending(int irq)
 {
diff --git a/include/xen/events.h b/include/xen/events.h
index 23932b0673dc..a129cafa80ed 100644
--- a/include/xen/events.h
+++ b/include/xen/events.h
@@ -88,7 +88,6 @@ void xen_irq_resume(void);
 
 /* Clear an irq's pending state, in preparation for polling on it */
 void xen_clear_irq_pending(int irq);
-void xen_set_irq_pending(int irq);
 bool xen_test_irq_pending(int irq);
 
 /* Poll waiting for an irq to become pending.  In the usual case, the
@@ -122,9 +121,6 @@ int xen_bind_pirq_msi_to_irq(struct pci_dev *dev, struct msi_desc *msidesc,
 /* De-allocates the above mentioned physical interrupt. */
 int xen_destroy_irq(int irq);
 
-/* Return irq from pirq */
-int xen_irq_from_pirq(unsigned pirq);
-
 /* Return the pirq allocated to the irq. */
 int xen_pirq_from_irq(unsigned irq);
 
-- 
2.35.3



From xen-devel-bounces@lists.xenproject.org Mon Oct 16 06:28:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 06:28:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617226.959665 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsH5y-0006Mq-Kr; Mon, 16 Oct 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 617226.959665; Mon, 16 Oct 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 1qsH5y-0006Mf-HK; Mon, 16 Oct 2023 06:28:54 +0000
Received: by outflank-mailman (input) for mailman id 617226;
 Mon, 16 Oct 2023 06:28: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=4t3W=F6=suse.com=jgross@srs-se1.protection.inumbo.net>)
 id 1qsH5x-0005jO-Bc
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 06:28:53 +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 4652459d-6bed-11ee-98d4-6d05b1d4d9a1;
 Mon, 16 Oct 2023 08:28:52 +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 6C3DD218B5;
 Mon, 16 Oct 2023 06:28:52 +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 3EFD5138EF;
 Mon, 16 Oct 2023 06:28:52 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap2.suse-dmz.suse.de with ESMTPSA id yC8PDiTYLGWVQQAAMHmgww
 (envelope-from <jgross@suse.com>); Mon, 16 Oct 2023 06:28: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: 4652459d-6bed-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1697437732; 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=ydWqnY65qleF7L+CVZP+R/eFnKLoLLs90oWX5lP4me4=;
	b=fJOGjm92PDGBloxprGkOy2oR2KxyYzORf6xAwXbhjknw7+qrgrs4kMEXiB9MzYRxP97D92
	AJ9dmPLcefR7lUBQgWlzIlrQ2Sqv9p85J3SGYg/LVlKwQVqVYpff4Ra8XR5qvsjaEhf71n
	MT90eBUqsRPAq1dHZ4e4/OAlMh3M4YM=
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 3/7] xen/events: reduce externally visible helper functions
Date: Mon, 16 Oct 2023 08:28:27 +0200
Message-Id: <20231016062831.20630-4-jgross@suse.com>
X-Mailer: git-send-email 2.35.3
In-Reply-To: <20231016062831.20630-1-jgross@suse.com>
References: <20231016062831.20630-1-jgross@suse.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Authentication-Results: smtp-out1.suse.de;
	none
X-Spam-Level: 
X-Spam-Score: -6.10
X-Spamd-Result: default: False [-6.10 / 50.00];
	 ARC_NA(0.00)[];
	 RCVD_VIA_SMTP_AUTH(0.00)[];
	 FROM_HAS_DN(0.00)[];
	 TO_DN_SOME(0.00)[];
	 TO_MATCH_ENVRCPT_ALL(0.00)[];
	 R_MISSING_CHARSET(2.50)[];
	 MIME_GOOD(-0.10)[text/plain];
	 REPLY(-4.00)[];
	 BROKEN_CONTENT_TYPE(1.50)[];
	 RCPT_COUNT_FIVE(0.00)[5];
	 NEURAL_HAM_LONG(-3.00)[-1.000];
	 DKIM_SIGNED(0.00)[suse.com:s=susede1];
	 NEURAL_HAM_SHORT(-1.00)[-1.000];
	 MID_CONTAINS_FROM(1.00)[];
	 FROM_EQ_ENVFROM(0.00)[];
	 MIME_TRACE(0.00)[0:+];
	 RCVD_COUNT_TWO(0.00)[2];
	 RCVD_TLS_ALL(0.00)[];
	 BAYES_HAM(-3.00)[100.00%]
X-Spam-Flag: NO

get_evtchn_to_irq() has only one external user while irq_from_evtchn()
provides the same functionality and is exported for a wider user base.
Modify the only external user of get_evtchn_to_irq() to use
irq_from_evtchn() instead and make get_evtchn_to_irq() static.

evtchn_from_irq() and irq_from_virq() have a single external user and
can easily be combined to a new helper irq_evtchn_from_virq() allowing
to drop irq_from_virq() and to make evtchn_from_irq() static.

Signed-off-by: Juergen Gross <jgross@suse.com>
---
 drivers/xen/events/events_2l.c       |  8 ++++----
 drivers/xen/events/events_base.c     | 13 +++++++++----
 drivers/xen/events/events_internal.h |  1 -
 include/xen/events.h                 |  4 ++--
 4 files changed, 15 insertions(+), 11 deletions(-)

diff --git a/drivers/xen/events/events_2l.c b/drivers/xen/events/events_2l.c
index b8f2f971c2f0..e3585330cf98 100644
--- a/drivers/xen/events/events_2l.c
+++ b/drivers/xen/events/events_2l.c
@@ -171,11 +171,11 @@ static void evtchn_2l_handle_events(unsigned cpu, struct evtchn_loop_ctrl *ctrl)
 	int i;
 	struct shared_info *s = HYPERVISOR_shared_info;
 	struct vcpu_info *vcpu_info = __this_cpu_read(xen_vcpu);
+	evtchn_port_t evtchn;
 
 	/* Timer interrupt has highest priority. */
-	irq = irq_from_virq(cpu, VIRQ_TIMER);
+	irq = irq_evtchn_from_virq(cpu, VIRQ_TIMER, &evtchn);
 	if (irq != -1) {
-		evtchn_port_t evtchn = evtchn_from_irq(irq);
 		word_idx = evtchn / BITS_PER_LONG;
 		bit_idx = evtchn % BITS_PER_LONG;
 		if (active_evtchns(cpu, s, word_idx) & (1ULL << bit_idx))
@@ -328,9 +328,9 @@ irqreturn_t xen_debug_interrupt(int irq, void *dev_id)
 	for (i = 0; i < EVTCHN_2L_NR_CHANNELS; i++) {
 		if (sync_test_bit(i, BM(sh->evtchn_pending))) {
 			int word_idx = i / BITS_PER_EVTCHN_WORD;
-			printk("  %d: event %d -> irq %d%s%s%s\n",
+			printk("  %d: event %d -> irq %u%s%s%s\n",
 			       cpu_from_evtchn(i), i,
-			       get_evtchn_to_irq(i),
+			       irq_from_evtchn(i),
 			       sync_test_bit(word_idx, BM(&v->evtchn_pending_sel))
 			       ? "" : " l2-clear",
 			       !sync_test_bit(i, BM(sh->evtchn_mask))
diff --git a/drivers/xen/events/events_base.c b/drivers/xen/events/events_base.c
index 1d797dd85d0e..97d71c5e7c28 100644
--- a/drivers/xen/events/events_base.c
+++ b/drivers/xen/events/events_base.c
@@ -246,7 +246,7 @@ static int set_evtchn_to_irq(evtchn_port_t evtchn, unsigned int irq)
 	return 0;
 }
 
-int get_evtchn_to_irq(evtchn_port_t evtchn)
+static int get_evtchn_to_irq(evtchn_port_t evtchn)
 {
 	if (evtchn >= xen_evtchn_max_channels())
 		return -1;
@@ -412,7 +412,7 @@ static void xen_irq_info_cleanup(struct irq_info *info)
 /*
  * Accessors for packed IRQ information.
  */
-evtchn_port_t evtchn_from_irq(unsigned irq)
+static evtchn_port_t evtchn_from_irq(unsigned int irq)
 {
 	const struct irq_info *info = NULL;
 
@@ -430,9 +430,14 @@ unsigned int irq_from_evtchn(evtchn_port_t evtchn)
 }
 EXPORT_SYMBOL_GPL(irq_from_evtchn);
 
-int irq_from_virq(unsigned int cpu, unsigned int virq)
+int irq_evtchn_from_virq(unsigned int cpu, unsigned int virq,
+			 evtchn_port_t *evtchn)
 {
-	return per_cpu(virq_to_irq, cpu)[virq];
+	int irq = per_cpu(virq_to_irq, cpu)[virq];
+
+	*evtchn = evtchn_from_irq(irq);
+
+	return irq;
 }
 
 static enum ipi_vector ipi_from_irq(unsigned irq)
diff --git a/drivers/xen/events/events_internal.h b/drivers/xen/events/events_internal.h
index 4d3398eff9cd..19ae31695edc 100644
--- a/drivers/xen/events/events_internal.h
+++ b/drivers/xen/events/events_internal.h
@@ -33,7 +33,6 @@ struct evtchn_ops {
 
 extern const struct evtchn_ops *evtchn_ops;
 
-int get_evtchn_to_irq(evtchn_port_t evtchn);
 void handle_irq_for_port(evtchn_port_t port, struct evtchn_loop_ctrl *ctrl);
 
 unsigned int cpu_from_evtchn(evtchn_port_t evtchn);
diff --git a/include/xen/events.h b/include/xen/events.h
index a129cafa80ed..3b07409f8032 100644
--- a/include/xen/events.h
+++ b/include/xen/events.h
@@ -100,8 +100,8 @@ void xen_poll_irq_timeout(int irq, u64 timeout);
 
 /* Determine the IRQ which is bound to an event channel */
 unsigned int irq_from_evtchn(evtchn_port_t evtchn);
-int irq_from_virq(unsigned int cpu, unsigned int virq);
-evtchn_port_t evtchn_from_irq(unsigned irq);
+int irq_evtchn_from_virq(unsigned int cpu, unsigned int virq,
+			 evtchn_port_t *evtchn);
 
 int xen_set_callback_via(uint64_t via);
 int xen_evtchn_do_upcall(void);
-- 
2.35.3



From xen-devel-bounces@lists.xenproject.org Mon Oct 16 06:28:59 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 06:28:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617229.959675 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsH63-0006kA-RW; Mon, 16 Oct 2023 06:28:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617229.959675; Mon, 16 Oct 2023 06:28: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 1qsH63-0006k1-Og; Mon, 16 Oct 2023 06:28:59 +0000
Received: by outflank-mailman (input) for mailman id 617229;
 Mon, 16 Oct 2023 06:28: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=4t3W=F6=suse.com=jgross@srs-se1.protection.inumbo.net>)
 id 1qsH62-0005jO-V3
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 06:28:58 +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 49aa5903-6bed-11ee-98d4-6d05b1d4d9a1;
 Mon, 16 Oct 2023 08:28:58 +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 015CF1FEA9;
 Mon, 16 Oct 2023 06:28:58 +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 C969A138EF;
 Mon, 16 Oct 2023 06:28:57 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap2.suse-dmz.suse.de with ESMTPSA id SRfKLynYLGWZQQAAMHmgww
 (envelope-from <jgross@suse.com>); Mon, 16 Oct 2023 06:28: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: 49aa5903-6bed-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1697437738; 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=2fcuH+2ssIH6gHbiDgF8ajbt1+87kl2RXhpbm0CBdnw=;
	b=rbWoTjG3XieTmAXLYCgLjEdVydcBnR3jeB5LFub+XCLZRQrKyTZqfrLjyUk93gZ7oKnFFL
	N9qLd4yprTK7AlO1/DI7Z1wucWK+Ga3EJEDdaPB+854oRGNt9gV2SuglhVtsjZMcT8QhWV
	hflLQoeYQYrnOVFzF4ihI0509q/BqtY=
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 4/7] xen/events: remove some simple helpers from events_base.c
Date: Mon, 16 Oct 2023 08:28:28 +0200
Message-Id: <20231016062831.20630-5-jgross@suse.com>
X-Mailer: git-send-email 2.35.3
In-Reply-To: <20231016062831.20630-1-jgross@suse.com>
References: <20231016062831.20630-1-jgross@suse.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Authentication-Results: smtp-out2.suse.de;
	none
X-Spam-Level: 
X-Spam-Score: -6.10
X-Spamd-Result: default: False [-6.10 / 50.00];
	 ARC_NA(0.00)[];
	 RCVD_VIA_SMTP_AUTH(0.00)[];
	 FROM_HAS_DN(0.00)[];
	 TO_DN_SOME(0.00)[];
	 TO_MATCH_ENVRCPT_ALL(0.00)[];
	 R_MISSING_CHARSET(2.50)[];
	 MIME_GOOD(-0.10)[text/plain];
	 REPLY(-4.00)[];
	 BROKEN_CONTENT_TYPE(1.50)[];
	 RCPT_COUNT_FIVE(0.00)[5];
	 NEURAL_HAM_LONG(-3.00)[-1.000];
	 DKIM_SIGNED(0.00)[suse.com:s=susede1];
	 NEURAL_HAM_SHORT(-1.00)[-1.000];
	 MID_CONTAINS_FROM(1.00)[];
	 FROM_EQ_ENVFROM(0.00)[];
	 MIME_TRACE(0.00)[0:+];
	 RCVD_COUNT_TWO(0.00)[2];
	 RCVD_TLS_ALL(0.00)[];
	 BAYES_HAM(-3.00)[100.00%]
X-Spam-Flag: NO

The helper functions type_from_irq() and cpu_from_irq() are just one
line functions used only internally.

Open code them where needed. At the same time modify and rename
get_evtchn_to_irq() to return a struct irq_info instead of the IRQ
number.

Signed-off-by: Juergen Gross <jgross@suse.com>
---
 drivers/xen/events/events_base.c | 97 +++++++++++++-------------------
 1 file changed, 38 insertions(+), 59 deletions(-)

diff --git a/drivers/xen/events/events_base.c b/drivers/xen/events/events_base.c
index 97d71c5e7c28..4ada3b6a4164 100644
--- a/drivers/xen/events/events_base.c
+++ b/drivers/xen/events/events_base.c
@@ -246,15 +246,6 @@ static int set_evtchn_to_irq(evtchn_port_t evtchn, unsigned int irq)
 	return 0;
 }
 
-static int get_evtchn_to_irq(evtchn_port_t evtchn)
-{
-	if (evtchn >= xen_evtchn_max_channels())
-		return -1;
-	if (evtchn_to_irq[EVTCHN_ROW(evtchn)] == NULL)
-		return -1;
-	return READ_ONCE(evtchn_to_irq[EVTCHN_ROW(evtchn)][EVTCHN_COL(evtchn)]);
-}
-
 /* Get info for IRQ */
 static struct irq_info *info_for_irq(unsigned irq)
 {
@@ -272,6 +263,19 @@ static void set_info_for_irq(unsigned int irq, struct irq_info *info)
 		irq_set_chip_data(irq, info);
 }
 
+static struct irq_info *evtchn_to_info(evtchn_port_t evtchn)
+{
+	int irq;
+
+	if (evtchn >= xen_evtchn_max_channels())
+		return NULL;
+	if (evtchn_to_irq[EVTCHN_ROW(evtchn)] == NULL)
+		return NULL;
+	irq = READ_ONCE(evtchn_to_irq[EVTCHN_ROW(evtchn)][EVTCHN_COL(evtchn)]);
+
+	return (irq < 0) ? NULL : info_for_irq(irq);
+}
+
 /* Per CPU channel accounting */
 static void channels_on_cpu_dec(struct irq_info *info)
 {
@@ -426,7 +430,9 @@ static evtchn_port_t evtchn_from_irq(unsigned int irq)
 
 unsigned int irq_from_evtchn(evtchn_port_t evtchn)
 {
-	return get_evtchn_to_irq(evtchn);
+	struct irq_info *info = evtchn_to_info(evtchn);
+
+	return info ? info->irq : -1;
 }
 EXPORT_SYMBOL_GPL(irq_from_evtchn);
 
@@ -470,25 +476,11 @@ static unsigned pirq_from_irq(unsigned irq)
 	return info->u.pirq.pirq;
 }
 
-static enum xen_irq_type type_from_irq(unsigned irq)
-{
-	return info_for_irq(irq)->type;
-}
-
-static unsigned cpu_from_irq(unsigned irq)
-{
-	return info_for_irq(irq)->cpu;
-}
-
 unsigned int cpu_from_evtchn(evtchn_port_t evtchn)
 {
-	int irq = get_evtchn_to_irq(evtchn);
-	unsigned ret = 0;
-
-	if (irq != -1)
-		ret = cpu_from_irq(irq);
+	struct irq_info *info = evtchn_to_info(evtchn);
 
-	return ret;
+	return info ? info->cpu : 0;
 }
 
 static void do_mask(struct irq_info *info, u8 reason)
@@ -537,13 +529,12 @@ static bool pirq_needs_eoi_flag(unsigned irq)
 static void bind_evtchn_to_cpu(evtchn_port_t evtchn, unsigned int cpu,
 			       bool force_affinity)
 {
-	int irq = get_evtchn_to_irq(evtchn);
-	struct irq_info *info = info_for_irq(irq);
+	struct irq_info *info = evtchn_to_info(evtchn);
 
-	BUG_ON(irq == -1);
+	BUG_ON(info == NULL);
 
 	if (IS_ENABLED(CONFIG_SMP) && force_affinity) {
-		struct irq_data *data = irq_get_irq_data(irq);
+		struct irq_data *data = irq_get_irq_data(info->irq);
 
 		irq_data_update_affinity(data, cpumask_of(cpu));
 		irq_data_update_effective_affinity(data, cpumask_of(cpu));
@@ -976,13 +967,13 @@ static void __unbind_from_irq(unsigned int irq)
 	}
 
 	if (VALID_EVTCHN(evtchn)) {
-		unsigned int cpu = cpu_from_irq(irq);
+		unsigned int cpu = info->cpu;
 		struct xenbus_device *dev;
 
 		if (!info->is_static)
 			xen_evtchn_close(evtchn);
 
-		switch (type_from_irq(irq)) {
+		switch (info->type) {
 		case IRQT_VIRQ:
 			per_cpu(virq_to_irq, cpu)[virq_from_irq(irq)] = -1;
 			break;
@@ -1181,15 +1172,16 @@ static int bind_evtchn_to_irq_chip(evtchn_port_t evtchn, struct irq_chip *chip,
 {
 	int irq;
 	int ret;
+	struct irq_info *info;
 
 	if (evtchn >= xen_evtchn_max_channels())
 		return -ENOMEM;
 
 	mutex_lock(&irq_mapping_update_lock);
 
-	irq = get_evtchn_to_irq(evtchn);
+	info = evtchn_to_info(evtchn);
 
-	if (irq == -1) {
+	if (!info) {
 		irq = xen_allocate_irq_dynamic();
 		if (irq < 0)
 			goto out;
@@ -1212,8 +1204,8 @@ static int bind_evtchn_to_irq_chip(evtchn_port_t evtchn, struct irq_chip *chip,
 		 */
 		bind_evtchn_to_cpu(evtchn, 0, false);
 	} else {
-		struct irq_info *info = info_for_irq(irq);
-		WARN_ON(info == NULL || info->type != IRQT_EVTCHN);
+		WARN_ON(info->type != IRQT_EVTCHN);
+		irq = info->irq;
 	}
 
 out:
@@ -1551,13 +1543,7 @@ EXPORT_SYMBOL_GPL(xen_set_irq_priority);
 
 int evtchn_make_refcounted(evtchn_port_t evtchn, bool is_static)
 {
-	int irq = get_evtchn_to_irq(evtchn);
-	struct irq_info *info;
-
-	if (irq == -1)
-		return -ENOENT;
-
-	info = info_for_irq(irq);
+	struct irq_info *info = evtchn_to_info(evtchn);
 
 	if (!info)
 		return -ENOENT;
@@ -1573,7 +1559,6 @@ EXPORT_SYMBOL_GPL(evtchn_make_refcounted);
 
 int evtchn_get(evtchn_port_t evtchn)
 {
-	int irq;
 	struct irq_info *info;
 	int err = -ENOENT;
 
@@ -1582,11 +1567,7 @@ int evtchn_get(evtchn_port_t evtchn)
 
 	mutex_lock(&irq_mapping_update_lock);
 
-	irq = get_evtchn_to_irq(evtchn);
-	if (irq == -1)
-		goto done;
-
-	info = info_for_irq(irq);
+	info = evtchn_to_info(evtchn);
 
 	if (!info)
 		goto done;
@@ -1606,10 +1587,11 @@ EXPORT_SYMBOL_GPL(evtchn_get);
 
 void evtchn_put(evtchn_port_t evtchn)
 {
-	int irq = get_evtchn_to_irq(evtchn);
-	if (WARN_ON(irq == -1))
+	struct irq_info *info = evtchn_to_info(evtchn);
+
+	if (WARN_ON(!info))
 		return;
-	unbind_from_irq(irq);
+	unbind_from_irq(info->irq);
 }
 EXPORT_SYMBOL_GPL(evtchn_put);
 
@@ -1639,12 +1621,10 @@ struct evtchn_loop_ctrl {
 
 void handle_irq_for_port(evtchn_port_t port, struct evtchn_loop_ctrl *ctrl)
 {
-	int irq;
-	struct irq_info *info;
+	struct irq_info *info = evtchn_to_info(port);
 	struct xenbus_device *dev;
 
-	irq = get_evtchn_to_irq(port);
-	if (irq == -1)
+	if (!info)
 		return;
 
 	/*
@@ -1669,7 +1649,6 @@ void handle_irq_for_port(evtchn_port_t port, struct evtchn_loop_ctrl *ctrl)
 		}
 	}
 
-	info = info_for_irq(irq);
 	if (xchg_acquire(&info->is_active, 1))
 		return;
 
@@ -1683,7 +1662,7 @@ void handle_irq_for_port(evtchn_port_t port, struct evtchn_loop_ctrl *ctrl)
 		info->eoi_time = get_jiffies_64() + event_eoi_delay;
 	}
 
-	generic_handle_irq(irq);
+	generic_handle_irq(info->irq);
 }
 
 int xen_evtchn_do_upcall(void)
@@ -1741,7 +1720,7 @@ void rebind_evtchn_irq(evtchn_port_t evtchn, int irq)
 	mutex_lock(&irq_mapping_update_lock);
 
 	/* After resume the irq<->evtchn mappings are all cleared out */
-	BUG_ON(get_evtchn_to_irq(evtchn) != -1);
+	BUG_ON(evtchn_to_info(evtchn));
 	/* Expect irq to have been bound before,
 	   so there should be a proper type */
 	BUG_ON(info->type == IRQT_UNBOUND);
-- 
2.35.3



From xen-devel-bounces@lists.xenproject.org Mon Oct 16 06:29:06 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 06:29:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617231.959685 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsH6A-0007Hf-8N; Mon, 16 Oct 2023 06:29:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617231.959685; Mon, 16 Oct 2023 06:29: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 1qsH6A-0007HY-4d; Mon, 16 Oct 2023 06:29:06 +0000
Received: by outflank-mailman (input) for mailman id 617231;
 Mon, 16 Oct 2023 06:29: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=4t3W=F6=suse.com=jgross@srs-se1.protection.inumbo.net>)
 id 1qsH68-0005jO-DV
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 06:29:04 +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 4cefc80b-6bed-11ee-98d4-6d05b1d4d9a1;
 Mon, 16 Oct 2023 08:29: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-out1.suse.de (Postfix) with ESMTPS id 868CC218B5;
 Mon, 16 Oct 2023 06:29: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 5E04F138EF;
 Mon, 16 Oct 2023 06:29:03 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap2.suse-dmz.suse.de with ESMTPSA id wMHDFS/YLGWsQQAAMHmgww
 (envelope-from <jgross@suse.com>); Mon, 16 Oct 2023 06:29: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: 4cefc80b-6bed-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1697437743; 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=EWxH6yY84p2rrj1E4gaItaAI46eHq+VAxQuigKOuHGo=;
	b=smLwHIHrpwYN5Ii4lwvKUk9sXb8cvuf5BlEueI3/bZyX1v4SepjiBMC1gazlnz6Ew6mIok
	BzxcYQje8gm1frKAVuVhZx6OQQIXko8LI3Uy+u/gN7pQzWtaDUC9aUZSdrsyhbhQLMs/5j
	IuxyQQMHXLyCzldgzs2bQ50eIjucq2w=
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 5/7] xen/events: drop xen_allocate_irqs_dynamic()
Date: Mon, 16 Oct 2023 08:28:29 +0200
Message-Id: <20231016062831.20630-6-jgross@suse.com>
X-Mailer: git-send-email 2.35.3
In-Reply-To: <20231016062831.20630-1-jgross@suse.com>
References: <20231016062831.20630-1-jgross@suse.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Authentication-Results: smtp-out1.suse.de;
	none
X-Spam-Level: 
X-Spam-Score: -6.10
X-Spamd-Result: default: False [-6.10 / 50.00];
	 ARC_NA(0.00)[];
	 RCVD_VIA_SMTP_AUTH(0.00)[];
	 FROM_HAS_DN(0.00)[];
	 TO_DN_SOME(0.00)[];
	 TO_MATCH_ENVRCPT_ALL(0.00)[];
	 R_MISSING_CHARSET(2.50)[];
	 MIME_GOOD(-0.10)[text/plain];
	 REPLY(-4.00)[];
	 BROKEN_CONTENT_TYPE(1.50)[];
	 RCPT_COUNT_FIVE(0.00)[5];
	 NEURAL_HAM_LONG(-3.00)[-1.000];
	 DKIM_SIGNED(0.00)[suse.com:s=susede1];
	 NEURAL_HAM_SHORT(-1.00)[-1.000];
	 MID_CONTAINS_FROM(1.00)[];
	 FROM_EQ_ENVFROM(0.00)[];
	 MIME_TRACE(0.00)[0:+];
	 RCVD_COUNT_TWO(0.00)[2];
	 RCVD_TLS_ALL(0.00)[];
	 BAYES_HAM(-3.00)[100.00%]
X-Spam-Flag: NO

Instead of having a common function for allocating a single IRQ or a
consecutive number of IRQs, split up the functionality into the callers
of xen_allocate_irqs_dynamic().

This allows to handle any allocation error in xen_irq_init() gracefully
instead of panicing the system. Let xen_irq_init() return the irq_info
pointer or NULL in case of an allocation error.

Additionally set the IRQ into irq_info already at allocation time, as
otherwise the IRQ would be '0' (which is a valid IRQ number) until
being set.

Signed-off-by: Juergen Gross <jgross@suse.com>
---
 drivers/xen/events/events_base.c | 74 +++++++++++++++++++-------------
 1 file changed, 44 insertions(+), 30 deletions(-)

diff --git a/drivers/xen/events/events_base.c b/drivers/xen/events/events_base.c
index 4ada3b6a4164..58e5549ee1db 100644
--- a/drivers/xen/events/events_base.c
+++ b/drivers/xen/events/events_base.c
@@ -302,6 +302,13 @@ static void channels_on_cpu_inc(struct irq_info *info)
 	info->is_accounted = 1;
 }
 
+static void xen_irq_free_desc(unsigned int irq)
+{
+	/* Legacy IRQ descriptors are managed by the arch. */
+	if (irq >= nr_legacy_irqs())
+		irq_free_desc(irq);
+}
+
 static void delayed_free_irq(struct work_struct *work)
 {
 	struct irq_info *info = container_of(to_rcu_work(work), struct irq_info,
@@ -313,9 +320,7 @@ static void delayed_free_irq(struct work_struct *work)
 
 	kfree(info);
 
-	/* Legacy IRQ descriptors are managed by the arch. */
-	if (irq >= nr_legacy_irqs())
-		irq_free_desc(irq);
+	xen_irq_free_desc(irq);
 }
 
 /* Constructors for packed IRQ information. */
@@ -330,7 +335,6 @@ static int xen_irq_info_common_setup(struct irq_info *info,
 	BUG_ON(info->type != IRQT_UNBOUND && info->type != type);
 
 	info->type = type;
-	info->irq = irq;
 	info->evtchn = evtchn;
 	info->cpu = cpu;
 	info->mask_reason = EVT_MASK_REASON_EXPLICIT;
@@ -730,47 +734,45 @@ void xen_irq_lateeoi(unsigned int irq, unsigned int eoi_flags)
 }
 EXPORT_SYMBOL_GPL(xen_irq_lateeoi);
 
-static void xen_irq_init(unsigned irq)
+static struct irq_info *xen_irq_init(unsigned int irq)
 {
 	struct irq_info *info;
 
 	info = kzalloc(sizeof(*info), GFP_KERNEL);
-	if (info == NULL)
-		panic("Unable to allocate metadata for IRQ%d\n", irq);
+	if (info) {
+		info->irq = irq;
+		info->type = IRQT_UNBOUND;
+		info->refcnt = -1;
+		INIT_RCU_WORK(&info->rwork, delayed_free_irq);
 
-	info->type = IRQT_UNBOUND;
-	info->refcnt = -1;
-	INIT_RCU_WORK(&info->rwork, delayed_free_irq);
+		set_info_for_irq(irq, info);
+		/*
+		 * Interrupt affinity setting can be immediate. No point
+		 * in delaying it until an interrupt is handled.
+		 */
+		irq_set_status_flags(irq, IRQ_MOVE_PCNTXT);
 
-	set_info_for_irq(irq, info);
-	/*
-	 * Interrupt affinity setting can be immediate. No point
-	 * in delaying it until an interrupt is handled.
-	 */
-	irq_set_status_flags(irq, IRQ_MOVE_PCNTXT);
+		INIT_LIST_HEAD(&info->eoi_list);
+		list_add_tail(&info->list, &xen_irq_list_head);
+	}
 
-	INIT_LIST_HEAD(&info->eoi_list);
-	list_add_tail(&info->list, &xen_irq_list_head);
+	return info;
 }
 
-static int __must_check xen_allocate_irqs_dynamic(int nvec)
+static inline int __must_check xen_allocate_irq_dynamic(void)
 {
-	int i, irq = irq_alloc_descs(-1, 0, nvec, -1);
+	int irq = irq_alloc_desc_from(0, -1);
 
 	if (irq >= 0) {
-		for (i = 0; i < nvec; i++)
-			xen_irq_init(irq + i);
+		if (!xen_irq_init(irq)) {
+			xen_irq_free_desc(irq);
+			irq = -1;
+		}
 	}
 
 	return irq;
 }
 
-static inline int __must_check xen_allocate_irq_dynamic(void)
-{
-
-	return xen_allocate_irqs_dynamic(1);
-}
-
 static int __must_check xen_allocate_irq_gsi(unsigned gsi)
 {
 	int irq;
@@ -790,7 +792,10 @@ static int __must_check xen_allocate_irq_gsi(unsigned gsi)
 	else
 		irq = irq_alloc_desc_at(gsi, -1);
 
-	xen_irq_init(irq);
+	if (!xen_irq_init(irq)) {
+		xen_irq_free_desc(irq);
+		irq = -1;
+	}
 
 	return irq;
 }
@@ -960,6 +965,11 @@ static void __unbind_from_irq(unsigned int irq)
 	evtchn_port_t evtchn = evtchn_from_irq(irq);
 	struct irq_info *info = info_for_irq(irq);
 
+	if (!info) {
+		xen_irq_free_desc(irq);
+		return;
+	}
+
 	if (info->refcnt > 0) {
 		info->refcnt--;
 		if (info->refcnt != 0)
@@ -1097,11 +1107,14 @@ int xen_bind_pirq_msi_to_irq(struct pci_dev *dev, struct msi_desc *msidesc,
 
 	mutex_lock(&irq_mapping_update_lock);
 
-	irq = xen_allocate_irqs_dynamic(nvec);
+	irq = irq_alloc_descs(-1, 0, nvec, -1);
 	if (irq < 0)
 		goto out;
 
 	for (i = 0; i < nvec; i++) {
+		if (!xen_irq_init(irq + i))
+			goto error_irq;
+
 		irq_set_chip_and_handler_name(irq + i, &xen_pirq_chip, handle_edge_irq, name);
 
 		ret = xen_irq_info_pirq_setup(irq + i, 0, pirq + i, 0, domid,
@@ -1725,6 +1738,7 @@ void rebind_evtchn_irq(evtchn_port_t evtchn, int irq)
 	   so there should be a proper type */
 	BUG_ON(info->type == IRQT_UNBOUND);
 
+	info->irq = irq;
 	(void)xen_irq_info_evtchn_setup(irq, evtchn, NULL);
 
 	mutex_unlock(&irq_mapping_update_lock);
-- 
2.35.3



From xen-devel-bounces@lists.xenproject.org Mon Oct 16 06:29:12 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 06:29:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617236.959695 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsH6G-0007th-Fy; Mon, 16 Oct 2023 06:29:12 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617236.959695; Mon, 16 Oct 2023 06: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 1qsH6G-0007tZ-DI; Mon, 16 Oct 2023 06:29:12 +0000
Received: by outflank-mailman (input) for mailman id 617236;
 Mon, 16 Oct 2023 06:29: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=4t3W=F6=suse.com=jgross@srs-se1.protection.inumbo.net>)
 id 1qsH6F-0005UW-Pb
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 06:29:11 +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 5048defb-6bed-11ee-9b0e-b553b5be7939;
 Mon, 16 Oct 2023 08:29:09 +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 1EBCC218B5;
 Mon, 16 Oct 2023 06:29: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 E5189138EF;
 Mon, 16 Oct 2023 06:29:08 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap2.suse-dmz.suse.de with ESMTPSA id 8u1dNjTYLGW1QQAAMHmgww
 (envelope-from <jgross@suse.com>); Mon, 16 Oct 2023 06:29: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: 5048defb-6bed-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1697437749; 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=8tpUjw2e6RaQIlbcZjjZ8I3SSuNLz9AsXteBGTzqAdM=;
	b=ReDNizVbt2fmpKu+czbKT0Et+d2e92d6zBjU3MD2xixkt1HI5Edp1Bb5QYIGdpPGmgF4a/
	6NyRMZ2XKxGDOn+Kn5BzIxzqVAeFlX0kzKbwqMHNgtSBwt/yiSXkDqegZeYfQBG7sGv++X
	UnL4M1NcPJuO2iSi4rbzjNDvQ2og6uY=
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 6/7] xen/events: modify internal [un]bind interfaces
Date: Mon, 16 Oct 2023 08:28:30 +0200
Message-Id: <20231016062831.20630-7-jgross@suse.com>
X-Mailer: git-send-email 2.35.3
In-Reply-To: <20231016062831.20630-1-jgross@suse.com>
References: <20231016062831.20630-1-jgross@suse.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Authentication-Results: smtp-out1.suse.de;
	none
X-Spam-Level: 
X-Spam-Score: -6.10
X-Spamd-Result: default: False [-6.10 / 50.00];
	 ARC_NA(0.00)[];
	 RCVD_VIA_SMTP_AUTH(0.00)[];
	 FROM_HAS_DN(0.00)[];
	 TO_DN_SOME(0.00)[];
	 TO_MATCH_ENVRCPT_ALL(0.00)[];
	 R_MISSING_CHARSET(2.50)[];
	 MIME_GOOD(-0.10)[text/plain];
	 REPLY(-4.00)[];
	 BROKEN_CONTENT_TYPE(1.50)[];
	 RCPT_COUNT_FIVE(0.00)[5];
	 NEURAL_HAM_LONG(-3.00)[-1.000];
	 DKIM_SIGNED(0.00)[suse.com:s=susede1];
	 NEURAL_HAM_SHORT(-1.00)[-1.000];
	 MID_CONTAINS_FROM(1.00)[];
	 FROM_EQ_ENVFROM(0.00)[];
	 MIME_TRACE(0.00)[0:+];
	 RCVD_COUNT_TWO(0.00)[2];
	 RCVD_TLS_ALL(0.00)[];
	 BAYES_HAM(-3.00)[100.00%]
X-Spam-Flag: NO

Modify the internal bind- and unbind-interfaces to take a struct
irq_info parameter. When allocating a new IRQ pass the pointer from
the allocating function further up.

This will reduce the number of info_for_irq() calls and make the code
more efficient.

Signed-off-by: Juergen Gross <jgross@suse.com>
---
 drivers/xen/events/events_base.c | 252 +++++++++++++++----------------
 1 file changed, 121 insertions(+), 131 deletions(-)

diff --git a/drivers/xen/events/events_base.c b/drivers/xen/events/events_base.c
index 58e5549ee1db..47a33d3cbfcb 100644
--- a/drivers/xen/events/events_base.c
+++ b/drivers/xen/events/events_base.c
@@ -325,7 +325,6 @@ static void delayed_free_irq(struct work_struct *work)
 
 /* Constructors for packed IRQ information. */
 static int xen_irq_info_common_setup(struct irq_info *info,
-				     unsigned irq,
 				     enum xen_irq_type type,
 				     evtchn_port_t evtchn,
 				     unsigned short cpu)
@@ -340,23 +339,22 @@ static int xen_irq_info_common_setup(struct irq_info *info,
 	info->mask_reason = EVT_MASK_REASON_EXPLICIT;
 	raw_spin_lock_init(&info->lock);
 
-	ret = set_evtchn_to_irq(evtchn, irq);
+	ret = set_evtchn_to_irq(evtchn, info->irq);
 	if (ret < 0)
 		return ret;
 
-	irq_clear_status_flags(irq, IRQ_NOREQUEST|IRQ_NOAUTOEN);
+	irq_clear_status_flags(info->irq, IRQ_NOREQUEST | IRQ_NOAUTOEN);
 
 	return xen_evtchn_port_setup(evtchn);
 }
 
-static int xen_irq_info_evtchn_setup(unsigned irq,
+static int xen_irq_info_evtchn_setup(struct irq_info *info,
 				     evtchn_port_t evtchn,
 				     struct xenbus_device *dev)
 {
-	struct irq_info *info = info_for_irq(irq);
 	int ret;
 
-	ret = xen_irq_info_common_setup(info, irq, IRQT_EVTCHN, evtchn, 0);
+	ret = xen_irq_info_common_setup(info, IRQT_EVTCHN, evtchn, 0);
 	info->u.interdomain = dev;
 	if (dev)
 		atomic_inc(&dev->event_channels);
@@ -364,49 +362,36 @@ static int xen_irq_info_evtchn_setup(unsigned irq,
 	return ret;
 }
 
-static int xen_irq_info_ipi_setup(unsigned cpu,
-				  unsigned irq,
-				  evtchn_port_t evtchn,
-				  enum ipi_vector ipi)
+static int xen_irq_info_ipi_setup(struct irq_info *info, unsigned int cpu,
+				  evtchn_port_t evtchn, enum ipi_vector ipi)
 {
-	struct irq_info *info = info_for_irq(irq);
-
 	info->u.ipi = ipi;
 
-	per_cpu(ipi_to_irq, cpu)[ipi] = irq;
+	per_cpu(ipi_to_irq, cpu)[ipi] = info->irq;
 
-	return xen_irq_info_common_setup(info, irq, IRQT_IPI, evtchn, 0);
+	return xen_irq_info_common_setup(info, IRQT_IPI, evtchn, 0);
 }
 
-static int xen_irq_info_virq_setup(unsigned cpu,
-				   unsigned irq,
-				   evtchn_port_t evtchn,
-				   unsigned virq)
+static int xen_irq_info_virq_setup(struct irq_info *info, unsigned int cpu,
+				   evtchn_port_t evtchn, unsigned int virq)
 {
-	struct irq_info *info = info_for_irq(irq);
-
 	info->u.virq = virq;
 
-	per_cpu(virq_to_irq, cpu)[virq] = irq;
+	per_cpu(virq_to_irq, cpu)[virq] = info->irq;
 
-	return xen_irq_info_common_setup(info, irq, IRQT_VIRQ, evtchn, 0);
+	return xen_irq_info_common_setup(info, IRQT_VIRQ, evtchn, 0);
 }
 
-static int xen_irq_info_pirq_setup(unsigned irq,
-				   evtchn_port_t evtchn,
-				   unsigned pirq,
-				   unsigned gsi,
-				   uint16_t domid,
-				   unsigned char flags)
+static int xen_irq_info_pirq_setup(struct irq_info *info, evtchn_port_t evtchn,
+				   unsigned int pirq, unsigned int gsi,
+				   uint16_t domid, unsigned char flags)
 {
-	struct irq_info *info = info_for_irq(irq);
-
 	info->u.pirq.pirq = pirq;
 	info->u.pirq.gsi = gsi;
 	info->u.pirq.domid = domid;
 	info->u.pirq.flags = flags;
 
-	return xen_irq_info_common_setup(info, irq, IRQT_PIRQ, evtchn, 0);
+	return xen_irq_info_common_setup(info, IRQT_PIRQ, evtchn, 0);
 }
 
 static void xen_irq_info_cleanup(struct irq_info *info)
@@ -450,20 +435,16 @@ int irq_evtchn_from_virq(unsigned int cpu, unsigned int virq,
 	return irq;
 }
 
-static enum ipi_vector ipi_from_irq(unsigned irq)
+static enum ipi_vector ipi_from_irq(struct irq_info *info)
 {
-	struct irq_info *info = info_for_irq(irq);
-
 	BUG_ON(info == NULL);
 	BUG_ON(info->type != IRQT_IPI);
 
 	return info->u.ipi;
 }
 
-static unsigned virq_from_irq(unsigned irq)
+static unsigned int virq_from_irq(struct irq_info *info)
 {
-	struct irq_info *info = info_for_irq(irq);
-
 	BUG_ON(info == NULL);
 	BUG_ON(info->type != IRQT_VIRQ);
 
@@ -530,13 +511,9 @@ static bool pirq_needs_eoi_flag(unsigned irq)
 	return info->u.pirq.flags & PIRQ_NEEDS_EOI;
 }
 
-static void bind_evtchn_to_cpu(evtchn_port_t evtchn, unsigned int cpu,
+static void bind_evtchn_to_cpu(struct irq_info *info, unsigned int cpu,
 			       bool force_affinity)
 {
-	struct irq_info *info = evtchn_to_info(evtchn);
-
-	BUG_ON(info == NULL);
-
 	if (IS_ENABLED(CONFIG_SMP) && force_affinity) {
 		struct irq_data *data = irq_get_irq_data(info->irq);
 
@@ -544,7 +521,7 @@ static void bind_evtchn_to_cpu(evtchn_port_t evtchn, unsigned int cpu,
 		irq_data_update_effective_affinity(data, cpumask_of(cpu));
 	}
 
-	xen_evtchn_port_bind_to_cpu(evtchn, cpu, info->cpu);
+	xen_evtchn_port_bind_to_cpu(info->evtchn, cpu, info->cpu);
 
 	channels_on_cpu_dec(info);
 	info->cpu = cpu;
@@ -759,23 +736,24 @@ static struct irq_info *xen_irq_init(unsigned int irq)
 	return info;
 }
 
-static inline int __must_check xen_allocate_irq_dynamic(void)
+static struct irq_info *xen_allocate_irq_dynamic(void)
 {
 	int irq = irq_alloc_desc_from(0, -1);
+	struct irq_info *info = NULL;
 
 	if (irq >= 0) {
-		if (!xen_irq_init(irq)) {
+		info = xen_irq_init(irq);
+		if (!info)
 			xen_irq_free_desc(irq);
-			irq = -1;
-		}
 	}
 
-	return irq;
+	return info;
 }
 
-static int __must_check xen_allocate_irq_gsi(unsigned gsi)
+static struct irq_info *xen_allocate_irq_gsi(unsigned int gsi)
 {
 	int irq;
+	struct irq_info *info;
 
 	/*
 	 * A PV guest has no concept of a GSI (since it has no ACPI
@@ -792,18 +770,15 @@ static int __must_check xen_allocate_irq_gsi(unsigned gsi)
 	else
 		irq = irq_alloc_desc_at(gsi, -1);
 
-	if (!xen_irq_init(irq)) {
+	info = xen_irq_init(irq);
+	if (!info)
 		xen_irq_free_desc(irq);
-		irq = -1;
-	}
 
-	return irq;
+	return info;
 }
 
-static void xen_free_irq(unsigned irq)
+static void xen_free_irq(struct irq_info *info)
 {
-	struct irq_info *info = info_for_irq(irq);
-
 	if (WARN_ON(!info))
 		return;
 
@@ -894,7 +869,7 @@ static unsigned int __startup_pirq(unsigned int irq)
 		goto err;
 
 	info->evtchn = evtchn;
-	bind_evtchn_to_cpu(evtchn, 0, false);
+	bind_evtchn_to_cpu(info, 0, false);
 
 	rc = xen_evtchn_port_setup(evtchn);
 	if (rc)
@@ -960,10 +935,9 @@ int xen_irq_from_gsi(unsigned gsi)
 }
 EXPORT_SYMBOL_GPL(xen_irq_from_gsi);
 
-static void __unbind_from_irq(unsigned int irq)
+static void __unbind_from_irq(struct irq_info *info, unsigned int irq)
 {
-	evtchn_port_t evtchn = evtchn_from_irq(irq);
-	struct irq_info *info = info_for_irq(irq);
+	evtchn_port_t evtchn;
 
 	if (!info) {
 		xen_irq_free_desc(irq);
@@ -976,6 +950,8 @@ static void __unbind_from_irq(unsigned int irq)
 			return;
 	}
 
+	evtchn = info->evtchn;
+
 	if (VALID_EVTCHN(evtchn)) {
 		unsigned int cpu = info->cpu;
 		struct xenbus_device *dev;
@@ -985,10 +961,10 @@ static void __unbind_from_irq(unsigned int irq)
 
 		switch (info->type) {
 		case IRQT_VIRQ:
-			per_cpu(virq_to_irq, cpu)[virq_from_irq(irq)] = -1;
+			per_cpu(virq_to_irq, cpu)[virq_from_irq(info)] = -1;
 			break;
 		case IRQT_IPI:
-			per_cpu(ipi_to_irq, cpu)[ipi_from_irq(irq)] = -1;
+			per_cpu(ipi_to_irq, cpu)[ipi_from_irq(info)] = -1;
 			break;
 		case IRQT_EVTCHN:
 			dev = info->u.interdomain;
@@ -1002,7 +978,7 @@ static void __unbind_from_irq(unsigned int irq)
 		xen_irq_info_cleanup(info);
 	}
 
-	xen_free_irq(irq);
+	xen_free_irq(info);
 }
 
 /*
@@ -1018,24 +994,24 @@ static void __unbind_from_irq(unsigned int irq)
 int xen_bind_pirq_gsi_to_irq(unsigned gsi,
 			     unsigned pirq, int shareable, char *name)
 {
-	int irq;
+	struct irq_info *info;
 	struct physdev_irq irq_op;
 	int ret;
 
 	mutex_lock(&irq_mapping_update_lock);
 
-	irq = xen_irq_from_gsi(gsi);
-	if (irq != -1) {
+	ret = xen_irq_from_gsi(gsi);
+	if (ret != -1) {
 		pr_info("%s: returning irq %d for gsi %u\n",
-			__func__, irq, gsi);
+			__func__, ret, gsi);
 		goto out;
 	}
 
-	irq = xen_allocate_irq_gsi(gsi);
-	if (irq < 0)
+	info = xen_allocate_irq_gsi(gsi);
+	if (!info)
 		goto out;
 
-	irq_op.irq = irq;
+	irq_op.irq = info->irq;
 	irq_op.vector = 0;
 
 	/* Only the privileged domain can do this. For non-priv, the pcifront
@@ -1043,20 +1019,19 @@ int xen_bind_pirq_gsi_to_irq(unsigned gsi,
 	 * this in the priv domain. */
 	if (xen_initial_domain() &&
 	    HYPERVISOR_physdev_op(PHYSDEVOP_alloc_irq_vector, &irq_op)) {
-		xen_free_irq(irq);
-		irq = -ENOSPC;
+		xen_free_irq(info);
+		ret = -ENOSPC;
 		goto out;
 	}
 
-	ret = xen_irq_info_pirq_setup(irq, 0, pirq, gsi, DOMID_SELF,
+	ret = xen_irq_info_pirq_setup(info, 0, pirq, gsi, DOMID_SELF,
 			       shareable ? PIRQ_SHAREABLE : 0);
 	if (ret < 0) {
-		__unbind_from_irq(irq);
-		irq = ret;
+		__unbind_from_irq(info, info->irq);
 		goto out;
 	}
 
-	pirq_query_unmask(irq);
+	pirq_query_unmask(info->irq);
 	/* We try to use the handler with the appropriate semantic for the
 	 * type of interrupt: if the interrupt is an edge triggered
 	 * interrupt we use handle_edge_irq.
@@ -1073,16 +1048,18 @@ int xen_bind_pirq_gsi_to_irq(unsigned gsi,
 	 * is the right choice either way.
 	 */
 	if (shareable)
-		irq_set_chip_and_handler_name(irq, &xen_pirq_chip,
+		irq_set_chip_and_handler_name(info->irq, &xen_pirq_chip,
 				handle_fasteoi_irq, name);
 	else
-		irq_set_chip_and_handler_name(irq, &xen_pirq_chip,
+		irq_set_chip_and_handler_name(info->irq, &xen_pirq_chip,
 				handle_edge_irq, name);
 
+	ret = info->irq;
+
 out:
 	mutex_unlock(&irq_mapping_update_lock);
 
-	return irq;
+	return ret;
 }
 
 #ifdef CONFIG_PCI_MSI
@@ -1104,6 +1081,7 @@ int xen_bind_pirq_msi_to_irq(struct pci_dev *dev, struct msi_desc *msidesc,
 			     int pirq, int nvec, const char *name, domid_t domid)
 {
 	int i, irq, ret;
+	struct irq_info *info;
 
 	mutex_lock(&irq_mapping_update_lock);
 
@@ -1112,12 +1090,13 @@ int xen_bind_pirq_msi_to_irq(struct pci_dev *dev, struct msi_desc *msidesc,
 		goto out;
 
 	for (i = 0; i < nvec; i++) {
-		if (!xen_irq_init(irq + i))
+		info = xen_irq_init(irq + i);
+		if (!info)
 			goto error_irq;
 
 		irq_set_chip_and_handler_name(irq + i, &xen_pirq_chip, handle_edge_irq, name);
 
-		ret = xen_irq_info_pirq_setup(irq + i, 0, pirq + i, 0, domid,
+		ret = xen_irq_info_pirq_setup(info, 0, pirq + i, 0, domid,
 					      i == 0 ? 0 : PIRQ_MSI_GROUP);
 		if (ret < 0)
 			goto error_irq;
@@ -1129,9 +1108,12 @@ int xen_bind_pirq_msi_to_irq(struct pci_dev *dev, struct msi_desc *msidesc,
 out:
 	mutex_unlock(&irq_mapping_update_lock);
 	return irq;
+
 error_irq:
-	while (nvec--)
-		__unbind_from_irq(irq + nvec);
+	while (nvec--) {
+		info = info_for_irq(irq + nvec);
+		__unbind_from_irq(info, irq + nvec);
+	}
 	mutex_unlock(&irq_mapping_update_lock);
 	return ret;
 }
@@ -1167,7 +1149,7 @@ int xen_destroy_irq(int irq)
 		}
 	}
 
-	xen_free_irq(irq);
+	xen_free_irq(info);
 
 out:
 	mutex_unlock(&irq_mapping_update_lock);
@@ -1183,8 +1165,7 @@ EXPORT_SYMBOL_GPL(xen_pirq_from_irq);
 static int bind_evtchn_to_irq_chip(evtchn_port_t evtchn, struct irq_chip *chip,
 				   struct xenbus_device *dev)
 {
-	int irq;
-	int ret;
+	int ret = -ENOMEM;
 	struct irq_info *info;
 
 	if (evtchn >= xen_evtchn_max_channels())
@@ -1195,17 +1176,16 @@ static int bind_evtchn_to_irq_chip(evtchn_port_t evtchn, struct irq_chip *chip,
 	info = evtchn_to_info(evtchn);
 
 	if (!info) {
-		irq = xen_allocate_irq_dynamic();
-		if (irq < 0)
+		info = xen_allocate_irq_dynamic();
+		if (!info)
 			goto out;
 
-		irq_set_chip_and_handler_name(irq, chip,
+		irq_set_chip_and_handler_name(info->irq, chip,
 					      handle_edge_irq, "event");
 
-		ret = xen_irq_info_evtchn_setup(irq, evtchn, dev);
+		ret = xen_irq_info_evtchn_setup(info, evtchn, dev);
 		if (ret < 0) {
-			__unbind_from_irq(irq);
-			irq = ret;
+			__unbind_from_irq(info, info->irq);
 			goto out;
 		}
 		/*
@@ -1215,16 +1195,17 @@ static int bind_evtchn_to_irq_chip(evtchn_port_t evtchn, struct irq_chip *chip,
 		 * affinity setting is not invoked on them so nothing would
 		 * bind the channel.
 		 */
-		bind_evtchn_to_cpu(evtchn, 0, false);
+		bind_evtchn_to_cpu(info, 0, false);
 	} else {
 		WARN_ON(info->type != IRQT_EVTCHN);
-		irq = info->irq;
 	}
 
+	ret = info->irq;
+
 out:
 	mutex_unlock(&irq_mapping_update_lock);
 
-	return irq;
+	return ret;
 }
 
 int bind_evtchn_to_irq(evtchn_port_t evtchn)
@@ -1243,18 +1224,19 @@ static int bind_ipi_to_irq(unsigned int ipi, unsigned int cpu)
 {
 	struct evtchn_bind_ipi bind_ipi;
 	evtchn_port_t evtchn;
-	int ret, irq;
+	struct irq_info *info;
+	int ret;
 
 	mutex_lock(&irq_mapping_update_lock);
 
-	irq = per_cpu(ipi_to_irq, cpu)[ipi];
+	ret = per_cpu(ipi_to_irq, cpu)[ipi];
 
-	if (irq == -1) {
-		irq = xen_allocate_irq_dynamic();
-		if (irq < 0)
+	if (ret == -1) {
+		info = xen_allocate_irq_dynamic();
+		if (!info)
 			goto out;
 
-		irq_set_chip_and_handler_name(irq, &xen_percpu_chip,
+		irq_set_chip_and_handler_name(info->irq, &xen_percpu_chip,
 					      handle_percpu_irq, "ipi");
 
 		bind_ipi.vcpu = xen_vcpu_nr(cpu);
@@ -1263,25 +1245,25 @@ static int bind_ipi_to_irq(unsigned int ipi, unsigned int cpu)
 			BUG();
 		evtchn = bind_ipi.port;
 
-		ret = xen_irq_info_ipi_setup(cpu, irq, evtchn, ipi);
+		ret = xen_irq_info_ipi_setup(info, cpu, evtchn, ipi);
 		if (ret < 0) {
-			__unbind_from_irq(irq);
-			irq = ret;
+			__unbind_from_irq(info, info->irq);
 			goto out;
 		}
 		/*
 		 * Force the affinity mask to the target CPU so proc shows
 		 * the correct target.
 		 */
-		bind_evtchn_to_cpu(evtchn, cpu, true);
+		bind_evtchn_to_cpu(info, cpu, true);
+		ret = info->irq;
 	} else {
-		struct irq_info *info = info_for_irq(irq);
+		info = info_for_irq(ret);
 		WARN_ON(info == NULL || info->type != IRQT_IPI);
 	}
 
  out:
 	mutex_unlock(&irq_mapping_update_lock);
-	return irq;
+	return ret;
 }
 
 static int bind_interdomain_evtchn_to_irq_chip(struct xenbus_device *dev,
@@ -1349,22 +1331,23 @@ int bind_virq_to_irq(unsigned int virq, unsigned int cpu, bool percpu)
 {
 	struct evtchn_bind_virq bind_virq;
 	evtchn_port_t evtchn = 0;
-	int irq, ret;
+	struct irq_info *info;
+	int ret;
 
 	mutex_lock(&irq_mapping_update_lock);
 
-	irq = per_cpu(virq_to_irq, cpu)[virq];
+	ret = per_cpu(virq_to_irq, cpu)[virq];
 
-	if (irq == -1) {
-		irq = xen_allocate_irq_dynamic();
-		if (irq < 0)
+	if (ret == -1) {
+		info = xen_allocate_irq_dynamic();
+		if (!info)
 			goto out;
 
 		if (percpu)
-			irq_set_chip_and_handler_name(irq, &xen_percpu_chip,
+			irq_set_chip_and_handler_name(info->irq, &xen_percpu_chip,
 						      handle_percpu_irq, "virq");
 		else
-			irq_set_chip_and_handler_name(irq, &xen_dynamic_chip,
+			irq_set_chip_and_handler_name(info->irq, &xen_dynamic_chip,
 						      handle_edge_irq, "virq");
 
 		bind_virq.virq = virq;
@@ -1379,10 +1362,9 @@ int bind_virq_to_irq(unsigned int virq, unsigned int cpu, bool percpu)
 			BUG_ON(ret < 0);
 		}
 
-		ret = xen_irq_info_virq_setup(cpu, irq, evtchn, virq);
+		ret = xen_irq_info_virq_setup(info, cpu, evtchn, virq);
 		if (ret < 0) {
-			__unbind_from_irq(irq);
-			irq = ret;
+			__unbind_from_irq(info, info->irq);
 			goto out;
 		}
 
@@ -1390,22 +1372,26 @@ int bind_virq_to_irq(unsigned int virq, unsigned int cpu, bool percpu)
 		 * Force the affinity mask for percpu interrupts so proc
 		 * shows the correct target.
 		 */
-		bind_evtchn_to_cpu(evtchn, cpu, percpu);
+		bind_evtchn_to_cpu(info, cpu, percpu);
+		ret = info->irq;
 	} else {
-		struct irq_info *info = info_for_irq(irq);
+		info = info_for_irq(ret);
 		WARN_ON(info == NULL || info->type != IRQT_VIRQ);
 	}
 
 out:
 	mutex_unlock(&irq_mapping_update_lock);
 
-	return irq;
+	return ret;
 }
 
 static void unbind_from_irq(unsigned int irq)
 {
+	struct irq_info *info;
+
 	mutex_lock(&irq_mapping_update_lock);
-	__unbind_from_irq(irq);
+	info = info_for_irq(irq);
+	__unbind_from_irq(info, irq);
 	mutex_unlock(&irq_mapping_update_lock);
 }
 
@@ -1739,11 +1725,11 @@ void rebind_evtchn_irq(evtchn_port_t evtchn, int irq)
 	BUG_ON(info->type == IRQT_UNBOUND);
 
 	info->irq = irq;
-	(void)xen_irq_info_evtchn_setup(irq, evtchn, NULL);
+	(void)xen_irq_info_evtchn_setup(info, evtchn, NULL);
 
 	mutex_unlock(&irq_mapping_update_lock);
 
-	bind_evtchn_to_cpu(evtchn, info->cpu, false);
+	bind_evtchn_to_cpu(info, info->cpu, false);
 
 	/* Unmask the event channel. */
 	enable_irq(irq);
@@ -1777,7 +1763,7 @@ static int xen_rebind_evtchn_to_cpu(struct irq_info *info, unsigned int tcpu)
 	 * it, but don't do the xenlinux-level rebind in that case.
 	 */
 	if (HYPERVISOR_event_channel_op(EVTCHNOP_bind_vcpu, &bind_vcpu) >= 0)
-		bind_evtchn_to_cpu(evtchn, tcpu, false);
+		bind_evtchn_to_cpu(info, tcpu, false);
 
 	do_unmask(info, EVT_MASK_REASON_TEMPORARY);
 
@@ -1928,7 +1914,7 @@ static void restore_pirqs(void)
 		if (rc) {
 			pr_warn("xen map irq failed gsi=%d irq=%d pirq=%d rc=%d\n",
 				gsi, irq, pirq, rc);
-			xen_free_irq(irq);
+			xen_free_irq(info);
 			continue;
 		}
 
@@ -1942,13 +1928,15 @@ static void restore_cpu_virqs(unsigned int cpu)
 {
 	struct evtchn_bind_virq bind_virq;
 	evtchn_port_t evtchn;
+	struct irq_info *info;
 	int virq, irq;
 
 	for (virq = 0; virq < NR_VIRQS; virq++) {
 		if ((irq = per_cpu(virq_to_irq, cpu)[virq]) == -1)
 			continue;
+		info = info_for_irq(irq);
 
-		BUG_ON(virq_from_irq(irq) != virq);
+		BUG_ON(virq_from_irq(info) != virq);
 
 		/* Get a new binding from Xen. */
 		bind_virq.virq = virq;
@@ -1959,9 +1947,9 @@ static void restore_cpu_virqs(unsigned int cpu)
 		evtchn = bind_virq.port;
 
 		/* Record the new mapping. */
-		(void)xen_irq_info_virq_setup(cpu, irq, evtchn, virq);
+		xen_irq_info_virq_setup(info, cpu, evtchn, virq);
 		/* The affinity mask is still valid */
-		bind_evtchn_to_cpu(evtchn, cpu, false);
+		bind_evtchn_to_cpu(info, cpu, false);
 	}
 }
 
@@ -1969,13 +1957,15 @@ static void restore_cpu_ipis(unsigned int cpu)
 {
 	struct evtchn_bind_ipi bind_ipi;
 	evtchn_port_t evtchn;
+	struct irq_info *info;
 	int ipi, irq;
 
 	for (ipi = 0; ipi < XEN_NR_IPIS; ipi++) {
 		if ((irq = per_cpu(ipi_to_irq, cpu)[ipi]) == -1)
 			continue;
+		info = info_for_irq(irq);
 
-		BUG_ON(ipi_from_irq(irq) != ipi);
+		BUG_ON(ipi_from_irq(info) != ipi);
 
 		/* Get a new binding from Xen. */
 		bind_ipi.vcpu = xen_vcpu_nr(cpu);
@@ -1985,9 +1975,9 @@ static void restore_cpu_ipis(unsigned int cpu)
 		evtchn = bind_ipi.port;
 
 		/* Record the new mapping. */
-		(void)xen_irq_info_ipi_setup(cpu, irq, evtchn, ipi);
+		xen_irq_info_ipi_setup(info, cpu, evtchn, ipi);
 		/* The affinity mask is still valid */
-		bind_evtchn_to_cpu(evtchn, cpu, false);
+		bind_evtchn_to_cpu(info, cpu, false);
 	}
 }
 
-- 
2.35.3



From xen-devel-bounces@lists.xenproject.org Mon Oct 16 06:33:48 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 06:33:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617249.959705 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsHAe-0002fi-6r; Mon, 16 Oct 2023 06:33:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617249.959705; Mon, 16 Oct 2023 06: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 1qsHAe-0002fb-43; Mon, 16 Oct 2023 06:33:44 +0000
Received: by outflank-mailman (input) for mailman id 617249;
 Mon, 16 Oct 2023 06:33: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=4t3W=F6=suse.com=jgross@srs-se1.protection.inumbo.net>)
 id 1qsH6K-0005UW-RG
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 06:29:16 +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 53923979-6bed-11ee-9b0e-b553b5be7939;
 Mon, 16 Oct 2023 08:29:15 +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 A8D1F218B5;
 Mon, 16 Oct 2023 06:29:14 +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 7CBCA138EF;
 Mon, 16 Oct 2023 06:29:14 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap2.suse-dmz.suse.de with ESMTPSA id OKUAHTrYLGXIQQAAMHmgww
 (envelope-from <jgross@suse.com>); Mon, 16 Oct 2023 06:29: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: 53923979-6bed-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1697437754; 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=gfiJW8Ts6bK8yjUp0LUTZbfxs1RFtdPcjXwRkvwtN44=;
	b=Fk73jBwYBGOHZuRQoALHGeKcoHC295iWwjwk1PCqfElvmfip/G6emaGyAxVPmH9aWoZSVj
	x0I9FY2B8Q73ebzl86astm9dfJnjSyh0Hd9ywBXWw6DGDdq3QjwQtQ9xHzcY8fa3cuOmZ1
	9vuT25p+m5wTvydo5rnrsa+KMgowATU=
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 7/7] xen/events: remove some info_for_irq() calls in pirq handling
Date: Mon, 16 Oct 2023 08:28:31 +0200
Message-Id: <20231016062831.20630-8-jgross@suse.com>
X-Mailer: git-send-email 2.35.3
In-Reply-To: <20231016062831.20630-1-jgross@suse.com>
References: <20231016062831.20630-1-jgross@suse.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Authentication-Results: smtp-out1.suse.de;
	none
X-Spam-Level: 
X-Spam-Score: -6.10
X-Spamd-Result: default: False [-6.10 / 50.00];
	 ARC_NA(0.00)[];
	 RCVD_VIA_SMTP_AUTH(0.00)[];
	 FROM_HAS_DN(0.00)[];
	 TO_DN_SOME(0.00)[];
	 TO_MATCH_ENVRCPT_ALL(0.00)[];
	 R_MISSING_CHARSET(2.50)[];
	 MIME_GOOD(-0.10)[text/plain];
	 REPLY(-4.00)[];
	 BROKEN_CONTENT_TYPE(1.50)[];
	 RCPT_COUNT_FIVE(0.00)[5];
	 NEURAL_HAM_LONG(-3.00)[-1.000];
	 DKIM_SIGNED(0.00)[suse.com:s=susede1];
	 NEURAL_HAM_SHORT(-1.00)[-1.000];
	 MID_CONTAINS_FROM(1.00)[];
	 FROM_EQ_ENVFROM(0.00)[];
	 MIME_TRACE(0.00)[0:+];
	 RCVD_COUNT_TWO(0.00)[2];
	 RCVD_TLS_ALL(0.00)[];
	 BAYES_HAM(-3.00)[100.00%]
X-Spam-Flag: NO

Instead of the IRQ number user the struct irq_info pointer as parameter
in the internal pirq related functions. This allows to drop some calls
of info_for_irq().

Signed-off-by: Juergen Gross <jgross@suse.com>
---
 drivers/xen/events/events_base.c | 113 +++++++++++++++++++------------
 1 file changed, 68 insertions(+), 45 deletions(-)

diff --git a/drivers/xen/events/events_base.c b/drivers/xen/events/events_base.c
index 47a33d3cbfcb..c75dff276894 100644
--- a/drivers/xen/events/events_base.c
+++ b/drivers/xen/events/events_base.c
@@ -172,7 +172,7 @@ static int **evtchn_to_irq;
 #ifdef CONFIG_X86
 static unsigned long *pirq_eoi_map;
 #endif
-static bool (*pirq_needs_eoi)(unsigned irq);
+static bool (*pirq_needs_eoi)(struct irq_info *info);
 
 #define EVTCHN_ROW(e)  (e / (PAGE_SIZE/sizeof(**evtchn_to_irq)))
 #define EVTCHN_COL(e)  (e % (PAGE_SIZE/sizeof(**evtchn_to_irq)))
@@ -188,7 +188,6 @@ static struct irq_chip xen_lateeoi_chip;
 static struct irq_chip xen_percpu_chip;
 static struct irq_chip xen_pirq_chip;
 static void enable_dynirq(struct irq_data *data);
-static void disable_dynirq(struct irq_data *data);
 
 static DEFINE_PER_CPU(unsigned int, irq_epoch);
 
@@ -451,10 +450,8 @@ static unsigned int virq_from_irq(struct irq_info *info)
 	return info->u.virq;
 }
 
-static unsigned pirq_from_irq(unsigned irq)
+static unsigned int pirq_from_irq(struct irq_info *info)
 {
-	struct irq_info *info = info_for_irq(irq);
-
 	BUG_ON(info == NULL);
 	BUG_ON(info->type != IRQT_PIRQ);
 
@@ -497,15 +494,14 @@ static void do_unmask(struct irq_info *info, u8 reason)
 }
 
 #ifdef CONFIG_X86
-static bool pirq_check_eoi_map(unsigned irq)
+static bool pirq_check_eoi_map(struct irq_info *info)
 {
-	return test_bit(pirq_from_irq(irq), pirq_eoi_map);
+	return test_bit(pirq_from_irq(info), pirq_eoi_map);
 }
 #endif
 
-static bool pirq_needs_eoi_flag(unsigned irq)
+static bool pirq_needs_eoi_flag(struct irq_info *info)
 {
-	struct irq_info *info = info_for_irq(irq);
 	BUG_ON(info->type != IRQT_PIRQ);
 
 	return info->u.pirq.flags & PIRQ_NEEDS_EOI;
@@ -799,14 +795,13 @@ static void event_handler_exit(struct irq_info *info)
 	clear_evtchn(info->evtchn);
 }
 
-static void pirq_query_unmask(int irq)
+static void pirq_query_unmask(struct irq_info *info)
 {
 	struct physdev_irq_status_query irq_status;
-	struct irq_info *info = info_for_irq(irq);
 
 	BUG_ON(info->type != IRQT_PIRQ);
 
-	irq_status.irq = pirq_from_irq(irq);
+	irq_status.irq = info->u.pirq.pirq;
 	if (HYPERVISOR_physdev_op(PHYSDEVOP_irq_status_query, &irq_status))
 		irq_status.flags = 0;
 
@@ -815,35 +810,57 @@ static void pirq_query_unmask(int irq)
 		info->u.pirq.flags |= PIRQ_NEEDS_EOI;
 }
 
-static void eoi_pirq(struct irq_data *data)
+static void do_eoi_pirq(struct irq_info *info)
 {
-	struct irq_info *info = info_for_irq(data->irq);
-	evtchn_port_t evtchn = info ? info->evtchn : 0;
-	struct physdev_eoi eoi = { .irq = pirq_from_irq(data->irq) };
+	struct physdev_eoi eoi = { .irq = pirq_from_irq(info) };
 	int rc = 0;
 
-	if (!VALID_EVTCHN(evtchn))
+	if (!VALID_EVTCHN(info->evtchn))
 		return;
 
 	event_handler_exit(info);
 
-	if (pirq_needs_eoi(data->irq)) {
+	if (pirq_needs_eoi(info)) {
 		rc = HYPERVISOR_physdev_op(PHYSDEVOP_eoi, &eoi);
 		WARN_ON(rc);
 	}
 }
 
+static void eoi_pirq(struct irq_data *data)
+{
+	struct irq_info *info = info_for_irq(data->irq);
+
+	do_eoi_pirq(info);
+}
+
+static void do_disable_dynirq(struct irq_info *info)
+{
+	if (VALID_EVTCHN(info->evtchn))
+		do_mask(info, EVT_MASK_REASON_EXPLICIT);
+}
+
+static void disable_dynirq(struct irq_data *data)
+{
+	struct irq_info *info = info_for_irq(data->irq);
+
+	if (info)
+		do_disable_dynirq(info);
+}
+
 static void mask_ack_pirq(struct irq_data *data)
 {
-	disable_dynirq(data);
-	eoi_pirq(data);
+	struct irq_info *info = info_for_irq(data->irq);
+
+	if (info) {
+		do_disable_dynirq(info);
+		do_eoi_pirq(info);
+	}
 }
 
-static unsigned int __startup_pirq(unsigned int irq)
+static unsigned int __startup_pirq(struct irq_info *info)
 {
 	struct evtchn_bind_pirq bind_pirq;
-	struct irq_info *info = info_for_irq(irq);
-	evtchn_port_t evtchn = evtchn_from_irq(irq);
+	evtchn_port_t evtchn = info->evtchn;
 	int rc;
 
 	BUG_ON(info->type != IRQT_PIRQ);
@@ -851,20 +868,20 @@ static unsigned int __startup_pirq(unsigned int irq)
 	if (VALID_EVTCHN(evtchn))
 		goto out;
 
-	bind_pirq.pirq = pirq_from_irq(irq);
+	bind_pirq.pirq = pirq_from_irq(info);
 	/* NB. We are happy to share unless we are probing. */
 	bind_pirq.flags = info->u.pirq.flags & PIRQ_SHAREABLE ?
 					BIND_PIRQ__WILL_SHARE : 0;
 	rc = HYPERVISOR_event_channel_op(EVTCHNOP_bind_pirq, &bind_pirq);
 	if (rc != 0) {
-		pr_warn("Failed to obtain physical IRQ %d\n", irq);
+		pr_warn("Failed to obtain physical IRQ %d\n", info->irq);
 		return 0;
 	}
 	evtchn = bind_pirq.port;
 
-	pirq_query_unmask(irq);
+	pirq_query_unmask(info);
 
-	rc = set_evtchn_to_irq(evtchn, irq);
+	rc = set_evtchn_to_irq(evtchn, info->irq);
 	if (rc)
 		goto err;
 
@@ -878,26 +895,28 @@ static unsigned int __startup_pirq(unsigned int irq)
 out:
 	do_unmask(info, EVT_MASK_REASON_EXPLICIT);
 
-	eoi_pirq(irq_get_irq_data(irq));
+	do_eoi_pirq(info);
 
 	return 0;
 
 err:
-	pr_err("irq%d: Failed to set port to irq mapping (%d)\n", irq, rc);
+	pr_err("irq%d: Failed to set port to irq mapping (%d)\n", info->irq,
+	       rc);
 	xen_evtchn_close(evtchn);
 	return 0;
 }
 
 static unsigned int startup_pirq(struct irq_data *data)
 {
-	return __startup_pirq(data->irq);
+	struct irq_info *info = info_for_irq(data->irq);
+
+	return __startup_pirq(info);
 }
 
 static void shutdown_pirq(struct irq_data *data)
 {
-	unsigned int irq = data->irq;
-	struct irq_info *info = info_for_irq(irq);
-	evtchn_port_t evtchn = evtchn_from_irq(irq);
+	struct irq_info *info = info_for_irq(data->irq);
+	evtchn_port_t evtchn = info->evtchn;
 
 	BUG_ON(info->type != IRQT_PIRQ);
 
@@ -1031,7 +1050,7 @@ int xen_bind_pirq_gsi_to_irq(unsigned gsi,
 		goto out;
 	}
 
-	pirq_query_unmask(info->irq);
+	pirq_query_unmask(info);
 	/* We try to use the handler with the appropriate semantic for the
 	 * type of interrupt: if the interrupt is an edge triggered
 	 * interrupt we use handle_edge_irq.
@@ -1158,7 +1177,9 @@ int xen_destroy_irq(int irq)
 
 int xen_pirq_from_irq(unsigned irq)
 {
-	return pirq_from_irq(irq);
+	struct irq_info *info = info_for_irq(irq);
+
+	return pirq_from_irq(info);
 }
 EXPORT_SYMBOL_GPL(xen_pirq_from_irq);
 
@@ -1820,28 +1841,30 @@ static void enable_dynirq(struct irq_data *data)
 		do_unmask(info, EVT_MASK_REASON_EXPLICIT);
 }
 
-static void disable_dynirq(struct irq_data *data)
+static void do_ack_dynirq(struct irq_info *info)
 {
-	struct irq_info *info = info_for_irq(data->irq);
-	evtchn_port_t evtchn = info ? info->evtchn : 0;
+	evtchn_port_t evtchn = info->evtchn;
 
 	if (VALID_EVTCHN(evtchn))
-		do_mask(info, EVT_MASK_REASON_EXPLICIT);
+		event_handler_exit(info);
 }
 
 static void ack_dynirq(struct irq_data *data)
 {
 	struct irq_info *info = info_for_irq(data->irq);
-	evtchn_port_t evtchn = info ? info->evtchn : 0;
 
-	if (VALID_EVTCHN(evtchn))
-		event_handler_exit(info);
+	if (info)
+		do_ack_dynirq(info);
 }
 
 static void mask_ack_dynirq(struct irq_data *data)
 {
-	disable_dynirq(data);
-	ack_dynirq(data);
+	struct irq_info *info = info_for_irq(data->irq);
+
+	if (info) {
+		do_disable_dynirq(info);
+		do_ack_dynirq(info);
+	}
 }
 
 static void lateeoi_ack_dynirq(struct irq_data *data)
@@ -1920,7 +1943,7 @@ static void restore_pirqs(void)
 
 		printk(KERN_DEBUG "xen: --> irq=%d, pirq=%d\n", irq, map_irq.pirq);
 
-		__startup_pirq(irq);
+		__startup_pirq(info);
 	}
 }
 
-- 
2.35.3



From xen-devel-bounces@lists.xenproject.org Mon Oct 16 07:11:55 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 07:11:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617262.959745 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsHlZ-0002s5-ML; Mon, 16 Oct 2023 07:11:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617262.959745; Mon, 16 Oct 2023 07:11: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 1qsHlZ-0002ry-JL; Mon, 16 Oct 2023 07:11:53 +0000
Received: by outflank-mailman (input) for mailman id 617262;
 Mon, 16 Oct 2023 07:11: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=hqiJ=F6=linaro.org=viresh.kumar@srs-se1.protection.inumbo.net>)
 id 1qsHlY-00027t-Tp
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 07:11:52 +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 47739e03-6bf3-11ee-98d4-6d05b1d4d9a1;
 Mon, 16 Oct 2023 09:11:52 +0200 (CEST)
Received: by mail-pf1-x436.google.com with SMTP id
 d2e1a72fcca58-6b3c2607d9bso1835830b3a.1
 for <xen-devel@lists.xenproject.org>; Mon, 16 Oct 2023 00:11:52 -0700 (PDT)
Received: from localhost ([122.172.80.14]) by smtp.gmail.com with ESMTPSA id
 k9-20020aa79729000000b006bd6a0a4678sm2187567pfg.80.2023.10.16.00.11.50
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 16 Oct 2023 00:11: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: 47739e03-6bf3-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=linaro.org; s=google; t=1697440311; x=1698045111; 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=VA2GT8eqbiQpihVq6IatV7jxO70qnqwP/ImeaPQmFQY=;
        b=Jxyvg7d8pOCxdWGYaY2UT9yMIh3HCCtv3E/iagI6nEM6mMsPCvEhk4dvfYKFX4ENWe
         WW0oT+NRmaTwhfJXPrJ435D2rGXofhsXnfc+RxofKkWJLXtFRtk9Lj0aIxt0x8TohG3U
         J8bCjtqJHLilVs7nUb7FvGH/VlgJPQMBp8a1wSjLGA3Kp/oogjtujaWmYuEoZAGNilGi
         HEeHqb1oUVfoDO0Yvl+yHIQgJnuY/BvejycV70AGWABInUe8Do7Vmb0QsjLMsQWha991
         dk00zljpcMW3bPkMqRsB0JW2HsZMVN9adlcnUk4FQ+pIgyhNmBsYZaAn33yB4fVFpPWJ
         KDVQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697440311; x=1698045111;
        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=VA2GT8eqbiQpihVq6IatV7jxO70qnqwP/ImeaPQmFQY=;
        b=Vth7J5nyeP1bBAKXs958Hv6TYf0gx4xPmXOEcPBZCMjM1JgI3aMf/1EejXgY1G3ytW
         nVhr6vQUt3QitS+X114dQS4Thu8ps6CX/kNJe/BSML9l9Lqa8QPlvgKCMPghfIaTwpzw
         XqU3HJgHA4X8946h13jG6ygKFZREvamwj2zCNUMWxgMr1PNiRBcoEoQUe03B/oJeFZWI
         0D6WPAq1rFjf+le07vNfQzsOg1nOEaIycSxZHyGOXOSbroMEUxL5o6eIbPuSNzbvdMaF
         LmSBWssBLWZkgH9JZMZdap2fdPJyORRI/iv9FeuitWLwts1sROPWmg5MmVp+oX/8/1wu
         Nt7A==
X-Gm-Message-State: AOJu0Yz0uA3Rg28LMqZ3FeKWbhxad4LMbt2TiCs+o7g1ojKn5AxxjtaN
	AaY5ao0FF2P2fBIzYuPH6n+f1w==
X-Google-Smtp-Source: AGHT+IG/g2mNU9z+9wRsIf1tsYOLUhccvghdEO7aXTxMy+dng7C4gaQ2AOy/3vVl1wB0/a7ioozUXg==
X-Received: by 2002:a05:6a00:23ce:b0:68e:3f0b:5e6f with SMTP id g14-20020a056a0023ce00b0068e3f0b5e6fmr35005262pfc.24.1697440311003;
        Mon, 16 Oct 2023 00:11:51 -0700 (PDT)
From: Viresh Kumar <viresh.kumar@linaro.org>
To: Juergen Gross <jgross@suse.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>
Cc: Viresh Kumar <viresh.kumar@linaro.org>,
	Vincent Guittot <vincent.guittot@linaro.org>,
	=?UTF-8?q?Alex=20Benn=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>,
	Arnd Bergmann <arnd@kernel.org>,
	xen-devel@lists.xenproject.org,
	linux-kernel@vger.kernel.org
Subject: [PATCH V4 3/4] xen: evtchn: Allow shared registration of IRQ handers
Date: Mon, 16 Oct 2023 12:41:26 +0530
Message-Id: <99b1edfd3147c6b5d22a5139dab5861e767dc34a.1697439990.git.viresh.kumar@linaro.org>
X-Mailer: git-send-email 2.31.1.272.g89b43f80a514
In-Reply-To: <cover.1697439990.git.viresh.kumar@linaro.org>
References: <cover.1697439990.git.viresh.kumar@linaro.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Currently the handling of events is supported either in the kernel or
userspace, but not both.

In order to support fast delivery of interrupts from the guest to the
backend, we need to handle the Queue notify part of Virtio protocol in
kernel and the rest in userspace.

Update the interrupt handler registration flag to IRQF_SHARED for event
channels, which would allow multiple entities to bind their interrupt
handler for the same event channel port.

Also increment the reference count of irq_info when multiple entities
try to bind event channel to irqchip, so the unbinding happens only
after all the users are gone.

Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
---
 drivers/xen/events/events_base.c | 3 ++-
 drivers/xen/evtchn.c             | 2 +-
 2 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/drivers/xen/events/events_base.c b/drivers/xen/events/events_base.c
index c7715f8bd452..d72fb26cc051 100644
--- a/drivers/xen/events/events_base.c
+++ b/drivers/xen/events/events_base.c
@@ -1238,7 +1238,8 @@ static int bind_evtchn_to_irq_chip(evtchn_port_t evtchn, struct irq_chip *chip,
 		bind_evtchn_to_cpu(evtchn, 0, false);
 	} else {
 		struct irq_info *info = info_for_irq(irq);
-		WARN_ON(info == NULL || info->type != IRQT_EVTCHN);
+		if (!WARN_ON(!info || info->type != IRQT_EVTCHN))
+			info->refcnt++;
 	}
 
 out:
diff --git a/drivers/xen/evtchn.c b/drivers/xen/evtchn.c
index c99415a70051..43f77915feb5 100644
--- a/drivers/xen/evtchn.c
+++ b/drivers/xen/evtchn.c
@@ -397,7 +397,7 @@ static int evtchn_bind_to_user(struct per_user_data *u, evtchn_port_t port)
 	if (rc < 0)
 		goto err;
 
-	rc = bind_evtchn_to_irqhandler_lateeoi(port, evtchn_interrupt, 0,
+	rc = bind_evtchn_to_irqhandler_lateeoi(port, evtchn_interrupt, IRQF_SHARED,
 					       u->name, evtchn);
 	if (rc < 0)
 		goto err;
-- 
2.31.1.272.g89b43f80a514



From xen-devel-bounces@lists.xenproject.org Mon Oct 16 07:11:55 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 07:11:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617259.959714 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsHlU-000289-VA; Mon, 16 Oct 2023 07:11:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617259.959714; Mon, 16 Oct 2023 07: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 1qsHlU-000282-ST; Mon, 16 Oct 2023 07:11:48 +0000
Received: by outflank-mailman (input) for mailman id 617259;
 Mon, 16 Oct 2023 07:11: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=hqiJ=F6=linaro.org=viresh.kumar@srs-se1.protection.inumbo.net>)
 id 1qsHlT-00027t-Ch
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 07:11:47 +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 43ba3fe1-6bf3-11ee-98d4-6d05b1d4d9a1;
 Mon, 16 Oct 2023 09:11:46 +0200 (CEST)
Received: by mail-pl1-x62f.google.com with SMTP id
 d9443c01a7336-1ca215cc713so6663515ad.3
 for <xen-devel@lists.xenproject.org>; Mon, 16 Oct 2023 00:11:46 -0700 (PDT)
Received: from localhost ([122.172.80.14]) by smtp.gmail.com with ESMTPSA id
 o11-20020a170902778b00b001b9dab0397bsm7770391pll.29.2023.10.16.00.11.43
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 16 Oct 2023 00:11: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: 43ba3fe1-6bf3-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=linaro.org; s=google; t=1697440305; x=1698045105; 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=1YLGlADbqxnWAYarOFVSTI3AQVPhPYl3xWfz7Wse3mA=;
        b=i8OU2YsRZiUe/QeaDM+n3c+EfkOvGesFncybGHI1SVztgATQpR4O7s91/PFComTpyu
         i+XFinS+l77MeiVkF4Jp6TQ7DZzPBMM29wp0d0UUIXMbROKdAqa8Mo8lDc+iySaaLN7W
         3RbCf1v5N4nnv4+T5c6utRpmSAjgs0stdvrQVWWRh8Ml3hsHBsNqjMRdRPXwNzArveXz
         emYaIIM3NQZeyo+qumGR2RGgXEpTDMqPRKwzbzE8YsCjFmom1czFo6nUo01/P/9JE/Gz
         bVCAiSj0rtzYCHpg336xhr1GeBZwSPnvpjARC5AQB217WZBSW72wxhWyHlGbhTSVXD4s
         RKEg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697440305; x=1698045105;
        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=1YLGlADbqxnWAYarOFVSTI3AQVPhPYl3xWfz7Wse3mA=;
        b=U+Kw9JJivDB8YG+kxZNJcNCF8kzjaKTlCkW0lam0Wo/cB5BdiuVe3YqGwCq+99GD7m
         u1SZqEH+qznmkCsxOsxV71qgLxiduMJ3/O0cd+amWr1g6AnXwczqAPuGDsmKADj+ke0L
         q47P07CLyJkQ8KaOQzrsELM7r3tvoRgAWnk7hXYqYp/PDAAZ06iimjMs6lxmnLJfYQGJ
         dJAlMW9osZyU2JPtYyf5nQOZOxl91G71Oe9NQMcU1bYBR30+h1Y0S8Vyr8eBLFJ6sorb
         EGb+XPmEyjXoEZo3+XMmpbT2JTpBf4GaTUmoY+w6cuXVuFft8xQmN4y+tzDbymwEMLyn
         xJ9Q==
X-Gm-Message-State: AOJu0YyjhediDCHkOQ1RIIgSee3x8s6huZL64VD6rySjzqd9slA+fTC6
	Ut0Ak6arUVeAsh8p7joVoKQdnA==
X-Google-Smtp-Source: AGHT+IFiZfXVWLAwWVoc8OY1PxB2vC251spWed6E+sNY8zWNiPL3CrOKRidkLrTNfWcwaUPdKETYTg==
X-Received: by 2002:a17:902:ec8c:b0:1c9:b187:4d84 with SMTP id x12-20020a170902ec8c00b001c9b1874d84mr18099691plg.14.1697440304700;
        Mon, 16 Oct 2023 00:11:44 -0700 (PDT)
From: Viresh Kumar <viresh.kumar@linaro.org>
To: Juergen Gross <jgross@suse.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>,
	Viresh Kumar <viresh.kumar@linaro.org>
Cc: Vincent Guittot <vincent.guittot@linaro.org>,
	=?UTF-8?q?Alex=20Benn=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>,
	Arnd Bergmann <arnd@kernel.org>,
	xen-devel@lists.xenproject.org,
	linux-kernel@vger.kernel.org
Subject: [PATCH V4 1/4] xen: Make struct privcmd_irqfd's layout architecture independent
Date: Mon, 16 Oct 2023 12:41:24 +0530
Message-Id: <a4ef0d4a68fc858b34a81fd3f9877d9b6898eb77.1697439990.git.viresh.kumar@linaro.org>
X-Mailer: git-send-email 2.31.1.272.g89b43f80a514
In-Reply-To: <cover.1697439990.git.viresh.kumar@linaro.org>
References: <cover.1697439990.git.viresh.kumar@linaro.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Using indirect pointers in an ioctl command argument means that the
layout is architecture specific, in particular we can't use the same one
from 32-bit compat tasks. The general recommendation is to have __u64
members and use u64_to_user_ptr() to access it from the kernel if we are
unable to avoid the pointers altogether.

Fixes: f8941e6c4c71 ("xen: privcmd: Add support for irqfd")
Reported-by: Arnd Bergmann <arnd@kernel.org>
Closes: https://lore.kernel.org/all/268a2031-63b8-4c7d-b1e5-8ab83ca80b4a@app.fastmail.com/
Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
---
 drivers/xen/privcmd.c      | 2 +-
 include/uapi/xen/privcmd.h | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/xen/privcmd.c b/drivers/xen/privcmd.c
index 120af57999fc..5095bd1abea5 100644
--- a/drivers/xen/privcmd.c
+++ b/drivers/xen/privcmd.c
@@ -935,7 +935,7 @@ static int privcmd_irqfd_assign(struct privcmd_irqfd *irqfd)
 		return -ENOMEM;
 	dm_op = kirqfd + 1;
 
-	if (copy_from_user(dm_op, irqfd->dm_op, irqfd->size)) {
+	if (copy_from_user(dm_op, u64_to_user_ptr(irqfd->dm_op), irqfd->size)) {
 		ret = -EFAULT;
 		goto error_kfree;
 	}
diff --git a/include/uapi/xen/privcmd.h b/include/uapi/xen/privcmd.h
index 375718ba4ab6..b143fafce84d 100644
--- a/include/uapi/xen/privcmd.h
+++ b/include/uapi/xen/privcmd.h
@@ -102,7 +102,7 @@ struct privcmd_mmap_resource {
 #define PRIVCMD_IRQFD_FLAG_DEASSIGN (1 << 0)
 
 struct privcmd_irqfd {
-	void __user *dm_op;
+	__u64 dm_op;
 	__u32 size; /* Size of structure pointed by dm_op */
 	__u32 fd;
 	__u32 flags;
-- 
2.31.1.272.g89b43f80a514



From xen-devel-bounces@lists.xenproject.org Mon Oct 16 07:11:55 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 07:11:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617261.959731 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsHlX-0002QR-Ft; Mon, 16 Oct 2023 07:11:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617261.959731; Mon, 16 Oct 2023 07: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 1qsHlX-0002Pl-AO; Mon, 16 Oct 2023 07:11:51 +0000
Received: by outflank-mailman (input) for mailman id 617261;
 Mon, 16 Oct 2023 07:11: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=hqiJ=F6=linaro.org=viresh.kumar@srs-se1.protection.inumbo.net>)
 id 1qsHlV-00027t-MD
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 07:11:49 +0000
Received: from mail-pf1-x430.google.com (mail-pf1-x430.google.com
 [2607:f8b0:4864:20::430])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 458c391b-6bf3-11ee-98d4-6d05b1d4d9a1;
 Mon, 16 Oct 2023 09:11:49 +0200 (CEST)
Received: by mail-pf1-x430.google.com with SMTP id
 d2e1a72fcca58-6b77ab73c6fso1465181b3a.1
 for <xen-devel@lists.xenproject.org>; Mon, 16 Oct 2023 00:11:49 -0700 (PDT)
Received: from localhost ([122.172.80.14]) by smtp.gmail.com with ESMTPSA id
 4-20020aa79104000000b0069305627491sm17212825pfh.159.2023.10.16.00.11.46
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 16 Oct 2023 00:11: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: 458c391b-6bf3-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=linaro.org; s=google; t=1697440308; x=1698045108; 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=c/E6/GLx6ZozVsglJmVw75Y9W/GS8DVZN69OPx54uAk=;
        b=Of6WYEJyFGhwPjKURhPqofzOduV/V1G344mR+1L5MDhbsaGaNIRvlVqcVXTFZGtlFF
         TGNn2ZAalRIgpnGcPzCb2f9+EYHg5q2yo89sLD17Mpk5gR67Tolt8BSoSPgaYhztvNoQ
         YPyV2zhLCoZnRom9Fv+uV30xKECk8l5NkHoU6V+iXw2i+G/wqd9c0eqCbbLGdf70iA6r
         4tOwQ/QsM/skzffC1AaYh2PuxPmQztT/pyuPLYNhnz7k+SnpbvOgGnRfZqskJSdmUFHK
         uyJNWMaG84CFlbZemmBW3cOHeDYeKbR6bsfg5KhweECXkXSqTfQIqrEo6gtDlGRsBG9S
         vKjQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697440308; x=1698045108;
        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=c/E6/GLx6ZozVsglJmVw75Y9W/GS8DVZN69OPx54uAk=;
        b=L2OI0x0/+w6VaJ46ppcINUQeRQ+btvF5j+DbQaedWPixtqexnTOIKhtrjjmB41bgOX
         KzXsrEeKh0wJhVk9dRQugSNNhnrGk9mLKCtif2Jw6AMi1J7l+4ScntHh/QnEMYuOxR6k
         2hG565wvDpgodlJSLGTmLeaPS3XGrms5BC4qUi7TRbrjfdVTxGTeb/GlwLBw27Cm8L5/
         iITOBoY/ggSR7H3ugKvINc7odPs2e6AUVLu9Un4fhJ4041l1DP/NiUgczn3r1sECg6L6
         2fHc5rsaMfJUQN8s/shwByDo7443Ux237c7R7JiPFdTObKSELoJAmidGrpDHQi3+rXUl
         SZhg==
X-Gm-Message-State: AOJu0YzUvusDcUfqcRBtGmYX1NnkiTHE2klWemUFBh8HfXWgLEu9SGeK
	RM9+XwUUv4EpLI67NNh3+ulNUA==
X-Google-Smtp-Source: AGHT+IE4MLkjnBefAElzY+bdBEEt2z+P5us27ZF3QfmSrVEbRNd3DDmAZ96JnRzreQ+qrlXMVJ0vpw==
X-Received: by 2002:a05:6a00:1819:b0:68f:d44c:22f8 with SMTP id y25-20020a056a00181900b0068fd44c22f8mr10614696pfa.1.1697440307784;
        Mon, 16 Oct 2023 00:11:47 -0700 (PDT)
From: Viresh Kumar <viresh.kumar@linaro.org>
To: Juergen Gross <jgross@suse.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>,
	Viresh Kumar <viresh.kumar@linaro.org>
Cc: Vincent Guittot <vincent.guittot@linaro.org>,
	=?UTF-8?q?Alex=20Benn=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>,
	Arnd Bergmann <arnd@kernel.org>,
	xen-devel@lists.xenproject.org,
	linux-kernel@vger.kernel.org
Subject: [PATCH V4 2/4] xen: irqfd: Use _IOW instead of the internal _IOC() macro
Date: Mon, 16 Oct 2023 12:41:25 +0530
Message-Id: <599ca6f1b9dd2f0e6247ea37bee3ea6827404b6d.1697439990.git.viresh.kumar@linaro.org>
X-Mailer: git-send-email 2.31.1.272.g89b43f80a514
In-Reply-To: <cover.1697439990.git.viresh.kumar@linaro.org>
References: <cover.1697439990.git.viresh.kumar@linaro.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

_IOC() an internal helper that we should not use in driver code.  In
particular, we got the data direction wrong here, which breaks a number
of tools, as having "_IOC_NONE" should never be paired with a nonzero
size.

Use _IOW() instead.

Fixes: f8941e6c4c71 ("xen: privcmd: Add support for irqfd")
Reported-by: Arnd Bergmann <arnd@kernel.org>
Closes: https://lore.kernel.org/all/268a2031-63b8-4c7d-b1e5-8ab83ca80b4a@app.fastmail.com/
Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
---
 include/uapi/xen/privcmd.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/include/uapi/xen/privcmd.h b/include/uapi/xen/privcmd.h
index b143fafce84d..e145bca5105c 100644
--- a/include/uapi/xen/privcmd.h
+++ b/include/uapi/xen/privcmd.h
@@ -138,6 +138,6 @@ struct privcmd_irqfd {
 #define IOCTL_PRIVCMD_MMAP_RESOURCE				\
 	_IOC(_IOC_NONE, 'P', 7, sizeof(struct privcmd_mmap_resource))
 #define IOCTL_PRIVCMD_IRQFD					\
-	_IOC(_IOC_NONE, 'P', 8, sizeof(struct privcmd_irqfd))
+	_IOW('P', 8, struct privcmd_irqfd)
 
 #endif /* __LINUX_PUBLIC_PRIVCMD_H__ */
-- 
2.31.1.272.g89b43f80a514



From xen-devel-bounces@lists.xenproject.org Mon Oct 16 07:11:55 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 07:11:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617260.959724 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsHlX-0002N2-5Y; Mon, 16 Oct 2023 07:11:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617260.959724; Mon, 16 Oct 2023 07: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 1qsHlX-0002Mt-2U; Mon, 16 Oct 2023 07:11:51 +0000
Received: by outflank-mailman (input) for mailman id 617260;
 Mon, 16 Oct 2023 07: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=hqiJ=F6=linaro.org=viresh.kumar@srs-se1.protection.inumbo.net>)
 id 1qsHlV-000281-08
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 07:11:49 +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 41c6bd0a-6bf3-11ee-9b0e-b553b5be7939;
 Mon, 16 Oct 2023 09:11:43 +0200 (CEST)
Received: by mail-pg1-x52c.google.com with SMTP id
 41be03b00d2f7-578e33b6fb7so2409141a12.3
 for <xen-devel@lists.xenproject.org>; Mon, 16 Oct 2023 00:11:42 -0700 (PDT)
Received: from localhost ([122.172.80.14]) by smtp.gmail.com with ESMTPSA id
 lb18-20020a17090b4a5200b002636dfcc6f5sm4069757pjb.3.2023.10.16.00.11.40
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 16 Oct 2023 00:11: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: 41c6bd0a-6bf3-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=linaro.org; s=google; t=1697440301; x=1698045101; 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=d9BgW3N7fBm3L3q4onC3IgvyssbSs3COoJlmjYvy67c=;
        b=jConirPWhXO5zfbTdR4kGgqwO/C966C7xHwTqDS22mpuoO3uHML9yio38tL2VVHy/N
         d70gGsOcVIUmBTK5NW9hUoeErLAKwuGCQnojLtMmZy1JxhBaIhwno646Jt2qxI5lgbIg
         ZSWCMzfSZ6KEWbzfsdEraal5oY4r7J6OmC5lC4tme7k8AzTzWamp0pkO3ZHcSPIZ+u21
         dKQ20AIhjb1W6f/v6oDtM3/Ie+97r32ussLE1qkTFU3WBBz8VPGGI84fZlSlo42XYaG3
         Bf2giFVKyyR1kxDC+pTCqIqH9jaApa/kG7zJ7yYHmqfH9toOhrD/2SzwoyhIW3p7u9NM
         oldw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697440301; x=1698045101;
        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=d9BgW3N7fBm3L3q4onC3IgvyssbSs3COoJlmjYvy67c=;
        b=ipk3P36ZGROWXKIUd0TMEf5UYBQDQ8jcfLDAFyA9r5UsgUmGKpMMk3zCgW+wgfx6Iz
         +wl04xGu0seIKGn8F++2r7PC+mQbI3GsGu1TOBby2NyeFsGRc7mnLpPF23e7PP6p0Mys
         74oNzQ0JkbvCu1QfqjoJzUeB7VMU1IA6w19wfpd3h3A6rrzhMizFuv81ZbjxbVW2tBRn
         Ikl0UbO0UrBLHqwlZUE4zOGEfe/DJ5WDP86C3whzeJj/V+0FOEsD40xzcL/ty8aBYLhU
         76Da4iVCrVEUP3zoYB7oSv1JM4SniSY11euS2W7H0ZkpGzx66s9VmFfoiHxXtuFTuBRn
         auSQ==
X-Gm-Message-State: AOJu0YwOGNlfy4MAYT+iLDB7gSxldBbgZu9/0j52gcNfJZQ9dnFFkadg
	kf9SPzX5/E3M5ZZpKdne1wotvA==
X-Google-Smtp-Source: AGHT+IEIs6XIz4BcgrL6UjHqZ7eccrdQBeHu6/iJs/nkUOuVV60OXfEgZzK/h9q3JanneEdJ0Z+E/A==
X-Received: by 2002:a05:6a20:244f:b0:152:be08:b013 with SMTP id t15-20020a056a20244f00b00152be08b013mr34042875pzc.42.1697440301401;
        Mon, 16 Oct 2023 00:11:41 -0700 (PDT)
From: Viresh Kumar <viresh.kumar@linaro.org>
To: Juergen Gross <jgross@suse.com>,
	Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Viresh Kumar <viresh.kumar@linaro.org>
Cc: Vincent Guittot <vincent.guittot@linaro.org>,
	=?UTF-8?q?Alex=20Benn=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>,
	Arnd Bergmann <arnd@kernel.org>,
	linux-kernel@vger.kernel.org,
	xen-devel@lists.xenproject.org
Subject: [PATCH V4 0/4] xen: privcmd: Add ioeventfd and fix irqfd support
Date: Mon, 16 Oct 2023 12:41:23 +0530
Message-Id: <cover.1697439990.git.viresh.kumar@linaro.org>
X-Mailer: git-send-email 2.31.1.272.g89b43f80a514
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

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.

Arnd reported few issues with the ioctl macro usage and argument's layout, fixed
them for irqfd too, which was added recently.

--
Viresh

V3->V4:
- Use __u64 for indirect pointers in an ioctl command's arguments.
- Use u64_to_user_ptr() in kernel driver to access the same.
- Use _IOW() macro instead of the internal one: _IOC().

V2->V3:
- Remove explicit barriers and depend on spin lock instead to take care of it.
- Move check for empty ioeventfds list to privcmd_ioeventfd_deassign(), which
  could earlier call ioreq_free() even when the list wasn't empty and so we
  returned without printing a warning in v1 earlier. V2 implemented it
  incorrectly.

V1->V2:
- Increment irq_info refcnt only for valid info.
- Use u64 type for addr.
- Add comments for use of barriers.
- Use spin lock instead of mutex as we need to use them in irq handler.
- Add a warning when kioreq is getting freed and ioeventfds list isn't empty.
- Use struct_size().
- Validate number of vcpus as well.

Viresh Kumar (4):
  xen: Make struct privcmd_irqfd's layout architecture independent
  xen: irqfd: Use _IOW instead of the internal _IOC() macro
  xen: evtchn: Allow shared registration of IRQ handers
  xen: privcmd: Add support for ioeventfd

 drivers/xen/Kconfig               |   8 +-
 drivers/xen/events/events_base.c  |   3 +-
 drivers/xen/evtchn.c              |   2 +-
 drivers/xen/privcmd.c             | 407 +++++++++++++++++++++++++++++-
 include/uapi/xen/privcmd.h        |  22 +-
 include/xen/interface/hvm/ioreq.h |  51 ++++
 6 files changed, 482 insertions(+), 11 deletions(-)
 create mode 100644 include/xen/interface/hvm/ioreq.h

-- 
2.31.1.272.g89b43f80a514



From xen-devel-bounces@lists.xenproject.org Mon Oct 16 07:11:59 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 07:11:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617263.959754 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsHlf-0003EF-2C; Mon, 16 Oct 2023 07:11:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617263.959754; Mon, 16 Oct 2023 07: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 1qsHle-0003E6-VA; Mon, 16 Oct 2023 07:11:58 +0000
Received: by outflank-mailman (input) for mailman id 617263;
 Mon, 16 Oct 2023 07:11: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=hqiJ=F6=linaro.org=viresh.kumar@srs-se1.protection.inumbo.net>)
 id 1qsHld-00027t-81
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 07:11:57 +0000
Received: from mail-pf1-x42d.google.com (mail-pf1-x42d.google.com
 [2607:f8b0:4864:20::42d])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 49b61870-6bf3-11ee-98d4-6d05b1d4d9a1;
 Mon, 16 Oct 2023 09:11:56 +0200 (CEST)
Received: by mail-pf1-x42d.google.com with SMTP id
 d2e1a72fcca58-692c02adeefso2859800b3a.3
 for <xen-devel@lists.xenproject.org>; Mon, 16 Oct 2023 00:11:56 -0700 (PDT)
Received: from localhost ([122.172.80.14]) by smtp.gmail.com with ESMTPSA id
 v3-20020aa799c3000000b006934a1c69f8sm395088pfi.24.2023.10.16.00.11.53
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 16 Oct 2023 00:11: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: 49b61870-6bf3-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=linaro.org; s=google; t=1697440315; x=1698045115; 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=r48g5ldbE+VNNgtF7EF4RNcr/h91kprDVvs75p8vKSI=;
        b=Jo9CnEzQePUxs4UnCs4e73oE80EmWaRwplGxGIDPRwS022rFiwC2++jaZrO+tGaAQd
         Sp+aPk6vrYz5gKY5UksVBZMt7EqzGaD6xPWtJNdXK0am7iOXfp2x8rM/hhRZpB44YwUu
         jeS1Gxuwt81eF23fgpUYq31VixDpgXPTNapY/r+xl9PcLCqxkrFzoIj9EVaHW0RhwTkx
         +w9xLpOI9upKXpGvSuAoB/5mcN3YJ/OOAJaedyrXrsqA4essctv4CbgQJLJm1nUpos9w
         UZ1RIPVgcoG2wQiZpt4mJzH4L+5DOxrbeeql6Lzy3ou2jRVZ33kd8TvzlvK4K8k1rY1f
         8ZfA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697440315; x=1698045115;
        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=r48g5ldbE+VNNgtF7EF4RNcr/h91kprDVvs75p8vKSI=;
        b=TC5/eTrNlCCxMRIYN5RzOobZnn7qGfUSRzK+fxY+3aHz+XHAwSrQs+/+rtTqjGx15f
         /vGAeFaB9/4hy7h1DjT4NbI6sEwbIRHBoIHuBvYeJTOjQGd3H5xIRIVZVXU1XiuXqB54
         csHQNgxgNsvhlKM/SyV2GDh0e0F9jKrwYiPZaUgccZj3p5Hy7zS3p6N94JOLTWqVsIyj
         W9DRufWLbehzRcRGfJXiw8X7VWveaCt6PuiTbZ5pI8vLfLRE/pt0acQeXcCIUvoQE36F
         FDdfNL71YsPFZW7+5Z0WiXD40wwBk0OYiwlX5cY6n9VXJboF9e2B7wJFpxaNwDBYeMi9
         VWsA==
X-Gm-Message-State: AOJu0YxnRE8wb8fqTYbtiEVjEuneCGtyttqp/ILDPU75YC2sGzwIH/UG
	qbINERbvLiqNBcT7wGF3x9MIWg==
X-Google-Smtp-Source: AGHT+IHHB66MC7xOk5/qdWrNfLmijUWBRPM1EZhOtYwehRCFf1OuZEmS/MMv65bWMHlR1aOg1Du7lw==
X-Received: by 2002:a05:6a00:23ca:b0:6be:4228:6970 with SMTP id g10-20020a056a0023ca00b006be42286970mr486317pfc.21.1697440314607;
        Mon, 16 Oct 2023 00:11:54 -0700 (PDT)
From: Viresh Kumar <viresh.kumar@linaro.org>
To: Juergen Gross <jgross@suse.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>
Cc: Viresh Kumar <viresh.kumar@linaro.org>,
	Vincent Guittot <vincent.guittot@linaro.org>,
	=?UTF-8?q?Alex=20Benn=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>,
	Arnd Bergmann <arnd@kernel.org>,
	linux-kernel@vger.kernel.org,
	xen-devel@lists.xenproject.org
Subject: [PATCH V4 4/4] xen: privcmd: Add support for ioeventfd
Date: Mon, 16 Oct 2023 12:41:27 +0530
Message-Id: <b20d83efba6453037d0c099912813c79c81f7714.1697439990.git.viresh.kumar@linaro.org>
X-Mailer: git-send-email 2.31.1.272.g89b43f80a514
In-Reply-To: <cover.1697439990.git.viresh.kumar@linaro.org>
References: <cover.1697439990.git.viresh.kumar@linaro.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Virtio guests send VIRTIO_MMIO_QUEUE_NOTIFY notification when they need
to notify the backend of an update to the status of the virtqueue. The
backend or another entity, polls the MMIO address for updates to know
when the notification is sent.

It works well if the backend does this polling by itself. But as we move
towards generic backend implementations, we end up implementing this in
a separate user-space program.

Generally, the Virtio backends are implemented to work with the Eventfd
based mechanism. In order to make such backends work with Xen, another
software layer needs to do the polling and send an event via eventfd to
the backend once the notification from guest is received. This results
in an extra context switch.

This is not a new problem in Linux though. It is present with other
hypervisors like KVM, etc. as well. The generic solution implemented in
the kernel for them is to provide an IOCTL call to pass the address to
poll and eventfd, which lets the kernel take care of polling and raise
an event on the eventfd, instead of handling this in user space (which
involves an extra context switch).

This patch adds similar support for xen.

Inspired by existing implementations for KVM, etc..

This also copies ioreq.h header file (only struct ioreq and related
macros) from Xen's source tree (Top commit 5d84f07fe6bf ("xen/pci: drop
remaining uses of bool_t")).

Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
---
 drivers/xen/Kconfig               |   8 +-
 drivers/xen/privcmd.c             | 405 +++++++++++++++++++++++++++++-
 include/uapi/xen/privcmd.h        |  18 ++
 include/xen/interface/hvm/ioreq.h |  51 ++++
 4 files changed, 476 insertions(+), 6 deletions(-)
 create mode 100644 include/xen/interface/hvm/ioreq.h

diff --git a/drivers/xen/Kconfig b/drivers/xen/Kconfig
index d43153fec18e..d5989871dd5d 100644
--- a/drivers/xen/Kconfig
+++ b/drivers/xen/Kconfig
@@ -269,12 +269,12 @@ config XEN_PRIVCMD
 	  disaggregated Xen setups this driver might be needed for other
 	  domains, too.
 
-config XEN_PRIVCMD_IRQFD
-	bool "Xen irqfd support"
+config XEN_PRIVCMD_EVENTFD
+	bool "Xen Ioeventfd and irqfd support"
 	depends on XEN_PRIVCMD && XEN_VIRTIO && EVENTFD
 	help
-	  Using the irqfd mechanism a virtio backend running in a daemon can
-	  speed up interrupt injection into a guest.
+	  Using the ioeventfd / irqfd mechanism a virtio backend running in a
+	  daemon can speed up interrupt delivery from / to a guest.
 
 config XEN_ACPI_PROCESSOR
 	tristate "Xen ACPI processor"
diff --git a/drivers/xen/privcmd.c b/drivers/xen/privcmd.c
index 5095bd1abea5..121e258077ea 100644
--- a/drivers/xen/privcmd.c
+++ b/drivers/xen/privcmd.c
@@ -29,15 +29,18 @@
 #include <linux/seq_file.h>
 #include <linux/miscdevice.h>
 #include <linux/moduleparam.h>
+#include <linux/virtio_mmio.h>
 
 #include <asm/xen/hypervisor.h>
 #include <asm/xen/hypercall.h>
 
 #include <xen/xen.h>
+#include <xen/events.h>
 #include <xen/privcmd.h>
 #include <xen/interface/xen.h>
 #include <xen/interface/memory.h>
 #include <xen/interface/hvm/dm_op.h>
+#include <xen/interface/hvm/ioreq.h>
 #include <xen/features.h>
 #include <xen/page.h>
 #include <xen/xen-ops.h>
@@ -782,6 +785,7 @@ static long privcmd_ioctl_mmap_resource(struct file *file,
 			goto out;
 
 		pages = vma->vm_private_data;
+
 		for (i = 0; i < kdata.num; i++) {
 			xen_pfn_t pfn =
 				page_to_xen_pfn(pages[i / XEN_PFN_PER_PAGE]);
@@ -838,7 +842,7 @@ static long privcmd_ioctl_mmap_resource(struct file *file,
 	return rc;
 }
 
-#ifdef CONFIG_XEN_PRIVCMD_IRQFD
+#ifdef CONFIG_XEN_PRIVCMD_EVENTFD
 /* Irqfd support */
 static struct workqueue_struct *irqfd_cleanup_wq;
 static DEFINE_MUTEX(irqfds_lock);
@@ -1079,6 +1083,389 @@ static void privcmd_irqfd_exit(void)
 
 	destroy_workqueue(irqfd_cleanup_wq);
 }
+
+/* Ioeventfd Support */
+#define QUEUE_NOTIFY_VQ_MASK 0xFFFF
+
+static DEFINE_MUTEX(ioreq_lock);
+static LIST_HEAD(ioreq_list);
+
+/* per-eventfd structure */
+struct privcmd_kernel_ioeventfd {
+	struct eventfd_ctx *eventfd;
+	struct list_head list;
+	u64 addr;
+	unsigned int addr_len;
+	unsigned int vq;
+};
+
+/* per-guest CPU / port structure */
+struct ioreq_port {
+	int vcpu;
+	unsigned int port;
+	struct privcmd_kernel_ioreq *kioreq;
+};
+
+/* per-guest structure */
+struct privcmd_kernel_ioreq {
+	domid_t dom;
+	unsigned int vcpus;
+	u64 uioreq;
+	struct ioreq *ioreq;
+	spinlock_t lock; /* Protects ioeventfds list */
+	struct list_head ioeventfds;
+	struct list_head list;
+	struct ioreq_port ports[0];
+};
+
+static irqreturn_t ioeventfd_interrupt(int irq, void *dev_id)
+{
+	struct ioreq_port *port = dev_id;
+	struct privcmd_kernel_ioreq *kioreq = port->kioreq;
+	struct ioreq *ioreq = &kioreq->ioreq[port->vcpu];
+	struct privcmd_kernel_ioeventfd *kioeventfd;
+	unsigned int state = STATE_IOREQ_READY;
+
+	if (ioreq->state != STATE_IOREQ_READY ||
+	    ioreq->type != IOREQ_TYPE_COPY || ioreq->dir != IOREQ_WRITE)
+		return IRQ_NONE;
+
+	/*
+	 * We need a barrier, smp_mb(), here to ensure reads are finished before
+	 * `state` is updated. Since the lock implementation ensures that
+	 * appropriate barrier will be added anyway, we can avoid adding
+	 * explicit barrier here.
+	 *
+	 * Ideally we don't need to update `state` within the locks, but we do
+	 * that here to avoid adding explicit barrier.
+	 */
+
+	spin_lock(&kioreq->lock);
+	ioreq->state = STATE_IOREQ_INPROCESS;
+
+	list_for_each_entry(kioeventfd, &kioreq->ioeventfds, list) {
+		if (ioreq->addr == kioeventfd->addr + VIRTIO_MMIO_QUEUE_NOTIFY &&
+		    ioreq->size == kioeventfd->addr_len &&
+		    (ioreq->data & QUEUE_NOTIFY_VQ_MASK) == kioeventfd->vq) {
+			eventfd_signal(kioeventfd->eventfd, 1);
+			state = STATE_IORESP_READY;
+			break;
+		}
+	}
+	spin_unlock(&kioreq->lock);
+
+	/*
+	 * We need a barrier, smp_mb(), here to ensure writes are finished
+	 * before `state` is updated. Since the lock implementation ensures that
+	 * appropriate barrier will be added anyway, we can avoid adding
+	 * explicit barrier here.
+	 */
+
+	ioreq->state = state;
+
+	if (state == STATE_IORESP_READY) {
+		notify_remote_via_evtchn(port->port);
+		return IRQ_HANDLED;
+	}
+
+	return IRQ_NONE;
+}
+
+static void ioreq_free(struct privcmd_kernel_ioreq *kioreq)
+{
+	struct ioreq_port *ports = kioreq->ports;
+	int i;
+
+	lockdep_assert_held(&ioreq_lock);
+
+	list_del(&kioreq->list);
+
+	for (i = kioreq->vcpus - 1; i >= 0; i--)
+		unbind_from_irqhandler(irq_from_evtchn(ports[i].port), &ports[i]);
+
+	kfree(kioreq);
+}
+
+static
+struct privcmd_kernel_ioreq *alloc_ioreq(struct privcmd_ioeventfd *ioeventfd)
+{
+	struct privcmd_kernel_ioreq *kioreq;
+	struct mm_struct *mm = current->mm;
+	struct vm_area_struct *vma;
+	struct page **pages;
+	unsigned int *ports;
+	int ret, size, i;
+
+	lockdep_assert_held(&ioreq_lock);
+
+	size = struct_size(kioreq, ports, ioeventfd->vcpus);
+	kioreq = kzalloc(size, GFP_KERNEL);
+	if (!kioreq)
+		return ERR_PTR(-ENOMEM);
+
+	kioreq->dom = ioeventfd->dom;
+	kioreq->vcpus = ioeventfd->vcpus;
+	kioreq->uioreq = ioeventfd->ioreq;
+	spin_lock_init(&kioreq->lock);
+	INIT_LIST_HEAD(&kioreq->ioeventfds);
+
+	/* The memory for ioreq server must have been mapped earlier */
+	mmap_write_lock(mm);
+	vma = find_vma(mm, (unsigned long)ioeventfd->ioreq);
+	if (!vma) {
+		pr_err("Failed to find vma for ioreq page!\n");
+		mmap_write_unlock(mm);
+		ret = -EFAULT;
+		goto error_kfree;
+	}
+
+	pages = vma->vm_private_data;
+	kioreq->ioreq = (struct ioreq *)(page_to_virt(pages[0]));
+	mmap_write_unlock(mm);
+
+	size = sizeof(*ports) * kioreq->vcpus;
+	ports = kzalloc(size, GFP_KERNEL);
+	if (!ports) {
+		ret = -ENOMEM;
+		goto error_kfree;
+	}
+
+	if (copy_from_user(ports, u64_to_user_ptr(ioeventfd->ports), size)) {
+		ret = -EFAULT;
+		goto error_kfree_ports;
+	}
+
+	for (i = 0; i < kioreq->vcpus; i++) {
+		kioreq->ports[i].vcpu = i;
+		kioreq->ports[i].port = ports[i];
+		kioreq->ports[i].kioreq = kioreq;
+
+		ret = bind_evtchn_to_irqhandler_lateeoi(ports[i],
+				ioeventfd_interrupt, IRQF_SHARED, "ioeventfd",
+				&kioreq->ports[i]);
+		if (ret < 0)
+			goto error_unbind;
+	}
+
+	kfree(ports);
+
+	list_add_tail(&kioreq->list, &ioreq_list);
+
+	return kioreq;
+
+error_unbind:
+	while (--i >= 0)
+		unbind_from_irqhandler(irq_from_evtchn(ports[i]), &kioreq->ports[i]);
+error_kfree_ports:
+	kfree(ports);
+error_kfree:
+	kfree(kioreq);
+	return ERR_PTR(ret);
+}
+
+static struct privcmd_kernel_ioreq *
+get_ioreq(struct privcmd_ioeventfd *ioeventfd, struct eventfd_ctx *eventfd)
+{
+	struct privcmd_kernel_ioreq *kioreq;
+	unsigned long flags;
+
+	list_for_each_entry(kioreq, &ioreq_list, list) {
+		struct privcmd_kernel_ioeventfd *kioeventfd;
+
+		/*
+		 * kioreq fields can be accessed here without a lock as they are
+		 * never updated after being added to the ioreq_list.
+		 */
+		if (kioreq->uioreq != ioeventfd->ioreq) {
+			continue;
+		} else if (kioreq->dom != ioeventfd->dom ||
+			   kioreq->vcpus != ioeventfd->vcpus) {
+			pr_err("Invalid ioeventfd configuration mismatch, dom (%u vs %u), vcpus (%u vs %u)\n",
+			       kioreq->dom, ioeventfd->dom, kioreq->vcpus,
+			       ioeventfd->vcpus);
+			return ERR_PTR(-EINVAL);
+		}
+
+		/* Look for a duplicate eventfd for the same guest */
+		spin_lock_irqsave(&kioreq->lock, flags);
+		list_for_each_entry(kioeventfd, &kioreq->ioeventfds, list) {
+			if (eventfd == kioeventfd->eventfd) {
+				spin_unlock_irqrestore(&kioreq->lock, flags);
+				return ERR_PTR(-EBUSY);
+			}
+		}
+		spin_unlock_irqrestore(&kioreq->lock, flags);
+
+		return kioreq;
+	}
+
+	/* Matching kioreq isn't found, allocate a new one */
+	return alloc_ioreq(ioeventfd);
+}
+
+static void ioeventfd_free(struct privcmd_kernel_ioeventfd *kioeventfd)
+{
+	list_del(&kioeventfd->list);
+	eventfd_ctx_put(kioeventfd->eventfd);
+	kfree(kioeventfd);
+}
+
+static int privcmd_ioeventfd_assign(struct privcmd_ioeventfd *ioeventfd)
+{
+	struct privcmd_kernel_ioeventfd *kioeventfd;
+	struct privcmd_kernel_ioreq *kioreq;
+	unsigned long flags;
+	struct fd f;
+	int ret;
+
+	/* Check for range overflow */
+	if (ioeventfd->addr + ioeventfd->addr_len < ioeventfd->addr)
+		return -EINVAL;
+
+	/* Vhost requires us to support length 1, 2, 4, and 8 */
+	if (!(ioeventfd->addr_len == 1 || ioeventfd->addr_len == 2 ||
+	      ioeventfd->addr_len == 4 || ioeventfd->addr_len == 8))
+		return -EINVAL;
+
+	/* 4096 vcpus limit enough ? */
+	if (!ioeventfd->vcpus || ioeventfd->vcpus > 4096)
+		return -EINVAL;
+
+	kioeventfd = kzalloc(sizeof(*kioeventfd), GFP_KERNEL);
+	if (!kioeventfd)
+		return -ENOMEM;
+
+	f = fdget(ioeventfd->event_fd);
+	if (!f.file) {
+		ret = -EBADF;
+		goto error_kfree;
+	}
+
+	kioeventfd->eventfd = eventfd_ctx_fileget(f.file);
+	fdput(f);
+
+	if (IS_ERR(kioeventfd->eventfd)) {
+		ret = PTR_ERR(kioeventfd->eventfd);
+		goto error_kfree;
+	}
+
+	kioeventfd->addr = ioeventfd->addr;
+	kioeventfd->addr_len = ioeventfd->addr_len;
+	kioeventfd->vq = ioeventfd->vq;
+
+	mutex_lock(&ioreq_lock);
+	kioreq = get_ioreq(ioeventfd, kioeventfd->eventfd);
+	if (IS_ERR(kioreq)) {
+		mutex_unlock(&ioreq_lock);
+		ret = PTR_ERR(kioreq);
+		goto error_eventfd;
+	}
+
+	spin_lock_irqsave(&kioreq->lock, flags);
+	list_add_tail(&kioeventfd->list, &kioreq->ioeventfds);
+	spin_unlock_irqrestore(&kioreq->lock, flags);
+
+	mutex_unlock(&ioreq_lock);
+
+	return 0;
+
+error_eventfd:
+	eventfd_ctx_put(kioeventfd->eventfd);
+
+error_kfree:
+	kfree(kioeventfd);
+	return ret;
+}
+
+static int privcmd_ioeventfd_deassign(struct privcmd_ioeventfd *ioeventfd)
+{
+	struct privcmd_kernel_ioreq *kioreq, *tkioreq;
+	struct eventfd_ctx *eventfd;
+	unsigned long flags;
+	int ret = 0;
+
+	eventfd = eventfd_ctx_fdget(ioeventfd->event_fd);
+	if (IS_ERR(eventfd))
+		return PTR_ERR(eventfd);
+
+	mutex_lock(&ioreq_lock);
+	list_for_each_entry_safe(kioreq, tkioreq, &ioreq_list, list) {
+		struct privcmd_kernel_ioeventfd *kioeventfd, *tmp;
+		/*
+		 * kioreq fields can be accessed here without a lock as they are
+		 * never updated after being added to the ioreq_list.
+		 */
+		if (kioreq->dom != ioeventfd->dom ||
+		    kioreq->uioreq != ioeventfd->ioreq ||
+		    kioreq->vcpus != ioeventfd->vcpus)
+			continue;
+
+		spin_lock_irqsave(&kioreq->lock, flags);
+		list_for_each_entry_safe(kioeventfd, tmp, &kioreq->ioeventfds, list) {
+			if (eventfd == kioeventfd->eventfd) {
+				ioeventfd_free(kioeventfd);
+				spin_unlock_irqrestore(&kioreq->lock, flags);
+
+				if (list_empty(&kioreq->ioeventfds))
+					ioreq_free(kioreq);
+				goto unlock;
+			}
+		}
+		spin_unlock_irqrestore(&kioreq->lock, flags);
+		break;
+	}
+
+	pr_err("Ioeventfd isn't already assigned, dom: %u, addr: %llu\n",
+	       ioeventfd->dom, ioeventfd->addr);
+	ret = -ENODEV;
+
+unlock:
+	mutex_unlock(&ioreq_lock);
+	eventfd_ctx_put(eventfd);
+
+	return ret;
+}
+
+static long privcmd_ioctl_ioeventfd(struct file *file, void __user *udata)
+{
+	struct privcmd_data *data = file->private_data;
+	struct privcmd_ioeventfd ioeventfd;
+
+	if (copy_from_user(&ioeventfd, udata, sizeof(ioeventfd)))
+		return -EFAULT;
+
+	/* No other flags should be set */
+	if (ioeventfd.flags & ~PRIVCMD_IOEVENTFD_FLAG_DEASSIGN)
+		return -EINVAL;
+
+	/* If restriction is in place, check the domid matches */
+	if (data->domid != DOMID_INVALID && data->domid != ioeventfd.dom)
+		return -EPERM;
+
+	if (ioeventfd.flags & PRIVCMD_IOEVENTFD_FLAG_DEASSIGN)
+		return privcmd_ioeventfd_deassign(&ioeventfd);
+
+	return privcmd_ioeventfd_assign(&ioeventfd);
+}
+
+static void privcmd_ioeventfd_exit(void)
+{
+	struct privcmd_kernel_ioreq *kioreq, *tmp;
+	unsigned long flags;
+
+	mutex_lock(&ioreq_lock);
+	list_for_each_entry_safe(kioreq, tmp, &ioreq_list, list) {
+		struct privcmd_kernel_ioeventfd *kioeventfd, *tmp;
+
+		spin_lock_irqsave(&kioreq->lock, flags);
+		list_for_each_entry_safe(kioeventfd, tmp, &kioreq->ioeventfds, list)
+			ioeventfd_free(kioeventfd);
+		spin_unlock_irqrestore(&kioreq->lock, flags);
+
+		ioreq_free(kioreq);
+	}
+	mutex_unlock(&ioreq_lock);
+}
 #else
 static inline long privcmd_ioctl_irqfd(struct file *file, void __user *udata)
 {
@@ -1093,7 +1480,16 @@ static inline int privcmd_irqfd_init(void)
 static inline void privcmd_irqfd_exit(void)
 {
 }
-#endif /* CONFIG_XEN_PRIVCMD_IRQFD */
+
+static inline long privcmd_ioctl_ioeventfd(struct file *file, void __user *udata)
+{
+	return -EOPNOTSUPP;
+}
+
+static inline void privcmd_ioeventfd_exit(void)
+{
+}
+#endif /* CONFIG_XEN_PRIVCMD_EVENTFD */
 
 static long privcmd_ioctl(struct file *file,
 			  unsigned int cmd, unsigned long data)
@@ -1134,6 +1530,10 @@ static long privcmd_ioctl(struct file *file,
 		ret = privcmd_ioctl_irqfd(file, udata);
 		break;
 
+	case IOCTL_PRIVCMD_IOEVENTFD:
+		ret = privcmd_ioctl_ioeventfd(file, udata);
+		break;
+
 	default:
 		break;
 	}
@@ -1278,6 +1678,7 @@ static int __init privcmd_init(void)
 
 static void __exit privcmd_exit(void)
 {
+	privcmd_ioeventfd_exit();
 	privcmd_irqfd_exit();
 	misc_deregister(&privcmd_dev);
 	misc_deregister(&xen_privcmdbuf_dev);
diff --git a/include/uapi/xen/privcmd.h b/include/uapi/xen/privcmd.h
index e145bca5105c..8b8c5d1420fe 100644
--- a/include/uapi/xen/privcmd.h
+++ b/include/uapi/xen/privcmd.h
@@ -110,6 +110,22 @@ struct privcmd_irqfd {
 	__u8 pad[2];
 };
 
+/* For privcmd_ioeventfd::flags */
+#define PRIVCMD_IOEVENTFD_FLAG_DEASSIGN (1 << 0)
+
+struct privcmd_ioeventfd {
+	__u64 ioreq;
+	__u64 ports;
+	__u64 addr;
+	__u32 addr_len;
+	__u32 event_fd;
+	__u32 vcpus;
+	__u32 vq;
+	__u32 flags;
+	domid_t dom;
+	__u8 pad[2];
+};
+
 /*
  * @cmd: IOCTL_PRIVCMD_HYPERCALL
  * @arg: &privcmd_hypercall_t
@@ -139,5 +155,7 @@ struct privcmd_irqfd {
 	_IOC(_IOC_NONE, 'P', 7, sizeof(struct privcmd_mmap_resource))
 #define IOCTL_PRIVCMD_IRQFD					\
 	_IOW('P', 8, struct privcmd_irqfd)
+#define IOCTL_PRIVCMD_IOEVENTFD					\
+	_IOW('P', 9, struct privcmd_ioeventfd)
 
 #endif /* __LINUX_PUBLIC_PRIVCMD_H__ */
diff --git a/include/xen/interface/hvm/ioreq.h b/include/xen/interface/hvm/ioreq.h
new file mode 100644
index 000000000000..b02cfeae7eb5
--- /dev/null
+++ b/include/xen/interface/hvm/ioreq.h
@@ -0,0 +1,51 @@
+/* SPDX-License-Identifier: MIT */
+/*
+ * ioreq.h: I/O request definitions for device models
+ * Copyright (c) 2004, Intel Corporation.
+ */
+
+#ifndef __XEN_PUBLIC_HVM_IOREQ_H__
+#define __XEN_PUBLIC_HVM_IOREQ_H__
+
+#define IOREQ_READ      1
+#define IOREQ_WRITE     0
+
+#define STATE_IOREQ_NONE        0
+#define STATE_IOREQ_READY       1
+#define STATE_IOREQ_INPROCESS   2
+#define STATE_IORESP_READY      3
+
+#define IOREQ_TYPE_PIO          0 /* pio */
+#define IOREQ_TYPE_COPY         1 /* mmio ops */
+#define IOREQ_TYPE_PCI_CONFIG   2
+#define IOREQ_TYPE_TIMEOFFSET   7
+#define IOREQ_TYPE_INVALIDATE   8 /* mapcache */
+
+/*
+ * VMExit dispatcher should cooperate with instruction decoder to
+ * prepare this structure and notify service OS and DM by sending
+ * virq.
+ *
+ * For I/O type IOREQ_TYPE_PCI_CONFIG, the physical address is formatted
+ * as follows:
+ *
+ * 63....48|47..40|39..35|34..32|31........0
+ * SEGMENT |BUS   |DEV   |FN    |OFFSET
+ */
+struct ioreq {
+	uint64_t addr;          /* physical address */
+	uint64_t data;          /* data (or paddr of data) */
+	uint32_t count;         /* for rep prefixes */
+	uint32_t size;          /* size in bytes */
+	uint32_t vp_eport;      /* evtchn for notifications to/from device model */
+	uint16_t _pad0;
+	uint8_t state:4;
+	uint8_t data_is_ptr:1;  /* if 1, data above is the guest paddr
+				 * of the real data to use. */
+	uint8_t dir:1;          /* 1=read, 0=write */
+	uint8_t df:1;
+	uint8_t _pad1:1;
+	uint8_t type;           /* I/O type */
+};
+
+#endif /* __XEN_PUBLIC_HVM_IOREQ_H__ */
-- 
2.31.1.272.g89b43f80a514



From xen-devel-bounces@lists.xenproject.org Mon Oct 16 07:13:37 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 07:13:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617279.959765 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsHnD-00058E-Fc; Mon, 16 Oct 2023 07:13:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617279.959765; Mon, 16 Oct 2023 07:13: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 1qsHnD-000587-Cn; Mon, 16 Oct 2023 07:13:35 +0000
Received: by outflank-mailman (input) for mailman id 617279;
 Mon, 16 Oct 2023 07:13: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=4t3W=F6=suse.com=jgross@srs-se1.protection.inumbo.net>)
 id 1qsHnC-00056J-5q
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 07:13:34 +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 833d4ad6-6bf3-11ee-9b0e-b553b5be7939;
 Mon, 16 Oct 2023 09:13: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-out1.suse.de (Postfix) with ESMTPS id ED0F921BDA;
 Mon, 16 Oct 2023 07:13: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 8F32E138EF;
 Mon, 16 Oct 2023 07:13:30 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap2.suse-dmz.suse.de with ESMTPSA id oyaNIZriLGViWwAAMHmgww
 (envelope-from <jgross@suse.com>); Mon, 16 Oct 2023 07:13: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: 833d4ad6-6bf3-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1697440410; 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=jcr2pDzYHZNy1Dda0U8UKlceiaygu42ICVwNg5qTdP4=;
	b=HkoSc49ltxf8lbg2XOBGuFdQttxATY7y6c5S9nwDNSGGNwyHrceLUR1NLN1Swm1OtEBUsy
	+obXwR7iM7tCx5/UFxB33ouYMFHJw53hJ4JsyPKBLLgFt6WzxcaAzvx9viHA/MCeyTT5IB
	iKHibz8YrlQhtqpoKgMZtHlCOcJdXzw=
Message-ID: <ca0690eb-1f3b-4508-9cf2-079b5ad12e26@suse.com>
Date: Mon, 16 Oct 2023 09:13:29 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH V4 1/4] xen: Make struct privcmd_irqfd's layout
 architecture independent
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>, Arnd Bergmann
 <arnd@kernel.org>, xen-devel@lists.xenproject.org,
 linux-kernel@vger.kernel.org
References: <cover.1697439990.git.viresh.kumar@linaro.org>
 <a4ef0d4a68fc858b34a81fd3f9877d9b6898eb77.1697439990.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: <a4ef0d4a68fc858b34a81fd3f9877d9b6898eb77.1697439990.git.viresh.kumar@linaro.org>
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature";
 boundary="------------7bLopMXjoU08ZRDMZp9FmC0c"
Authentication-Results: smtp-out1.suse.de;
	none
X-Spam-Level: 
X-Spam-Score: -5.43
X-Spamd-Result: default: False [-5.43 / 50.00];
	 ARC_NA(0.00)[];
	 RCVD_VIA_SMTP_AUTH(0.00)[];
	 XM_UA_NO_VERSION(0.01)[];
	 FROM_HAS_DN(0.00)[];
	 TO_DN_SOME(0.00)[];
	 TO_MATCH_ENVRCPT_ALL(0.00)[];
	 BAYES_HAM(-2.44)[97.42%];
	 MIME_GOOD(-0.20)[multipart/signed,multipart/mixed,text/plain];
	 HAS_ATTACHMENT(0.00)[];
	 REPLY(-4.00)[];
	 MIME_BASE64_TEXT_BOGUS(1.00)[];
	 DKIM_SIGNED(0.00)[suse.com:s=susede1];
	 NEURAL_HAM_SHORT(-1.00)[-1.000];
	 MIME_BASE64_TEXT(0.10)[];
	 RCPT_COUNT_TWELVE(0.00)[12];
	 NEURAL_SPAM_LONG(3.00)[1.000];
	 SIGNED_PGP(-2.00)[];
	 FROM_EQ_ENVFROM(0.00)[];
	 MIME_TRACE(0.00)[0:+,1:+,2:+,3:+,4:~,5:~];
	 RCVD_COUNT_TWO(0.00)[2];
	 RCVD_TLS_ALL(0.00)[];
	 MID_RHS_MATCH_FROM(0.00)[];
	 MIME_UNKNOWN(0.10)[application/pgp-keys]
X-Spam-Flag: NO

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--------------7bLopMXjoU08ZRDMZp9FmC0c
Content-Type: multipart/mixed; boundary="------------umSM8HtNLj3BsM5giQwzqchk";
 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>, Arnd Bergmann
 <arnd@kernel.org>, xen-devel@lists.xenproject.org,
 linux-kernel@vger.kernel.org
Message-ID: <ca0690eb-1f3b-4508-9cf2-079b5ad12e26@suse.com>
Subject: Re: [PATCH V4 1/4] xen: Make struct privcmd_irqfd's layout
 architecture independent
References: <cover.1697439990.git.viresh.kumar@linaro.org>
 <a4ef0d4a68fc858b34a81fd3f9877d9b6898eb77.1697439990.git.viresh.kumar@linaro.org>
In-Reply-To: <a4ef0d4a68fc858b34a81fd3f9877d9b6898eb77.1697439990.git.viresh.kumar@linaro.org>

--------------umSM8HtNLj3BsM5giQwzqchk
Content-Type: multipart/mixed; boundary="------------hUjQwV6LWjai1LUbmHHPvEqX"

--------------hUjQwV6LWjai1LUbmHHPvEqX
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: base64

T24gMTYuMTAuMjMgMDk6MTEsIFZpcmVzaCBLdW1hciB3cm90ZToNCj4gVXNpbmcgaW5kaXJl
Y3QgcG9pbnRlcnMgaW4gYW4gaW9jdGwgY29tbWFuZCBhcmd1bWVudCBtZWFucyB0aGF0IHRo
ZQ0KPiBsYXlvdXQgaXMgYXJjaGl0ZWN0dXJlIHNwZWNpZmljLCBpbiBwYXJ0aWN1bGFyIHdl
IGNhbid0IHVzZSB0aGUgc2FtZSBvbmUNCj4gZnJvbSAzMi1iaXQgY29tcGF0IHRhc2tzLiBU
aGUgZ2VuZXJhbCByZWNvbW1lbmRhdGlvbiBpcyB0byBoYXZlIF9fdTY0DQo+IG1lbWJlcnMg
YW5kIHVzZSB1NjRfdG9fdXNlcl9wdHIoKSB0byBhY2Nlc3MgaXQgZnJvbSB0aGUga2VybmVs
IGlmIHdlIGFyZQ0KPiB1bmFibGUgdG8gYXZvaWQgdGhlIHBvaW50ZXJzIGFsdG9nZXRoZXIu
DQo+IA0KPiBGaXhlczogZjg5NDFlNmM0YzcxICgieGVuOiBwcml2Y21kOiBBZGQgc3VwcG9y
dCBmb3IgaXJxZmQiKQ0KPiBSZXBvcnRlZC1ieTogQXJuZCBCZXJnbWFubiA8YXJuZEBrZXJu
ZWwub3JnPg0KPiBDbG9zZXM6IGh0dHBzOi8vbG9yZS5rZXJuZWwub3JnL2FsbC8yNjhhMjAz
MS02M2I4LTRjN2QtYjFlNS04YWI4M2NhODBiNGFAYXBwLmZhc3RtYWlsLmNvbS8NCj4gU2ln
bmVkLW9mZi1ieTogVmlyZXNoIEt1bWFyIDx2aXJlc2gua3VtYXJAbGluYXJvLm9yZz4NCg0K
UmV2aWV3ZWQtYnk6IEp1ZXJnZW4gR3Jvc3MgPGpncm9zc0BzdXNlLmNvbT4NCg0KDQpKdWVy
Z2VuDQoNCg==
--------------hUjQwV6LWjai1LUbmHHPvEqX
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-----

--------------hUjQwV6LWjai1LUbmHHPvEqX--

--------------umSM8HtNLj3BsM5giQwzqchk--

--------------7bLopMXjoU08ZRDMZp9FmC0c
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/Ey8FAmUs4poFAwAAAAAACgkQsN6d1ii/Ey9K
wgf/TbpWKyNtveS6quHg7N2m6zlLWaudPfTwKyHTKSNBnwL6drVyRBWCy4nCqHkVG47Mwki8jgdV
XfNGx4EEfGM+tSxjJJRMt4ZqVSD1GV5cnXO0n97jzqx+4PkdK5iscLDkSOJK6MvxjXQ0toxITqzq
U65b0zVBY7ZUY65Je4PKBCjzqh5swFN245ZD5lWkV8skCXn/U6YKT29zDtO1AP7HavNg9uTglVC/
zxU8ncWxtduLJzfnV3ebVJ5/tTRTeFr6mE99ciKlWf888xJPLDzY3HKh/LwEFahxSFNOU2J7VEfi
twLH75i/6Y6L1mYpzCq65Z7AkW7IeEj30xE290p8rQ==
=zwoM
-----END PGP SIGNATURE-----

--------------7bLopMXjoU08ZRDMZp9FmC0c--


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 07:14:51 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 07:14:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617284.959775 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsHoP-0006q0-TZ; Mon, 16 Oct 2023 07:14:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617284.959775; Mon, 16 Oct 2023 07: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 1qsHoP-0006pt-Q4; Mon, 16 Oct 2023 07:14:49 +0000
Received: by outflank-mailman (input) for mailman id 617284;
 Mon, 16 Oct 2023 07:14: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=4t3W=F6=suse.com=jgross@srs-se1.protection.inumbo.net>)
 id 1qsHoP-0006oQ-68
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 07:14:49 +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 b0c9ba26-6bf3-11ee-98d4-6d05b1d4d9a1;
 Mon, 16 Oct 2023 09:14: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-out1.suse.de (Postfix) with ESMTPS id 9DC912189D;
 Mon, 16 Oct 2023 07:14: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 48E23138EF;
 Mon, 16 Oct 2023 07:14:47 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap2.suse-dmz.suse.de with ESMTPSA id AFzkD+fiLGViWwAAMHmgww
 (envelope-from <jgross@suse.com>); Mon, 16 Oct 2023 07:14: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: b0c9ba26-6bf3-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1697440487; 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=9RV5EOYE82h5D1LodXaROCEgPixc3iudjmyw72L3/EU=;
	b=ZVgdv41vCxEoBVhY71R2aYC4jXeWYlnq1Tc5UWgdKkyraeayWt8sch0pjIIZV74P/ooBv9
	TOz99V+CcAEMOSuGi/fVK+HXbbIbqnNUn7uEuS4+SyW8m1rUTaTvMVlMfO4J0xQ8MzwtgV
	Z5in2J0fy5xnsfQ5B5QL7N3haw3lZ0A=
Message-ID: <b129e6f5-ad9d-4267-b058-29a64f8f1d59@suse.com>
Date: Mon, 16 Oct 2023 09:14:46 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH V4 2/4] xen: irqfd: Use _IOW instead of the internal
 _IOC() macro
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>, Arnd Bergmann
 <arnd@kernel.org>, xen-devel@lists.xenproject.org,
 linux-kernel@vger.kernel.org
References: <cover.1697439990.git.viresh.kumar@linaro.org>
 <599ca6f1b9dd2f0e6247ea37bee3ea6827404b6d.1697439990.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: <599ca6f1b9dd2f0e6247ea37bee3ea6827404b6d.1697439990.git.viresh.kumar@linaro.org>
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature";
 boundary="------------n0sbYyoOiB064uMBvwL0o0bX"
Authentication-Results: smtp-out1.suse.de;
	none
X-Spam-Level: 
X-Spam-Score: -5.53
X-Spamd-Result: default: False [-5.53 / 50.00];
	 ARC_NA(0.00)[];
	 RCVD_VIA_SMTP_AUTH(0.00)[];
	 XM_UA_NO_VERSION(0.01)[];
	 FROM_HAS_DN(0.00)[];
	 TO_DN_SOME(0.00)[];
	 TO_MATCH_ENVRCPT_ALL(0.00)[];
	 BAYES_HAM(-2.54)[97.92%];
	 MIME_GOOD(-0.20)[multipart/signed,multipart/mixed,text/plain];
	 HAS_ATTACHMENT(0.00)[];
	 REPLY(-4.00)[];
	 MIME_BASE64_TEXT_BOGUS(1.00)[];
	 DKIM_SIGNED(0.00)[suse.com:s=susede1];
	 NEURAL_HAM_SHORT(-1.00)[-1.000];
	 MIME_BASE64_TEXT(0.10)[];
	 RCPT_COUNT_TWELVE(0.00)[12];
	 NEURAL_SPAM_LONG(3.00)[1.000];
	 SIGNED_PGP(-2.00)[];
	 FROM_EQ_ENVFROM(0.00)[];
	 MIME_TRACE(0.00)[0:+,1:+,2:+,3:+,4:~,5:~];
	 RCVD_COUNT_TWO(0.00)[2];
	 RCVD_TLS_ALL(0.00)[];
	 MID_RHS_MATCH_FROM(0.00)[];
	 MIME_UNKNOWN(0.10)[application/pgp-keys]
X-Spam-Flag: NO

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--------------n0sbYyoOiB064uMBvwL0o0bX
Content-Type: multipart/mixed; boundary="------------3c4sbr2bWNEY8AMM31TgXWIA";
 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>, Arnd Bergmann
 <arnd@kernel.org>, xen-devel@lists.xenproject.org,
 linux-kernel@vger.kernel.org
Message-ID: <b129e6f5-ad9d-4267-b058-29a64f8f1d59@suse.com>
Subject: Re: [PATCH V4 2/4] xen: irqfd: Use _IOW instead of the internal
 _IOC() macro
References: <cover.1697439990.git.viresh.kumar@linaro.org>
 <599ca6f1b9dd2f0e6247ea37bee3ea6827404b6d.1697439990.git.viresh.kumar@linaro.org>
In-Reply-To: <599ca6f1b9dd2f0e6247ea37bee3ea6827404b6d.1697439990.git.viresh.kumar@linaro.org>

--------------3c4sbr2bWNEY8AMM31TgXWIA
Content-Type: multipart/mixed; boundary="------------u5hf43i9OIE4dk0EanBjly00"

--------------u5hf43i9OIE4dk0EanBjly00
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: base64

T24gMTYuMTAuMjMgMDk6MTEsIFZpcmVzaCBLdW1hciB3cm90ZToNCj4gX0lPQygpIGFuIGlu
dGVybmFsIGhlbHBlciB0aGF0IHdlIHNob3VsZCBub3QgdXNlIGluIGRyaXZlciBjb2RlLiAg
SW4NCj4gcGFydGljdWxhciwgd2UgZ290IHRoZSBkYXRhIGRpcmVjdGlvbiB3cm9uZyBoZXJl
LCB3aGljaCBicmVha3MgYSBudW1iZXINCj4gb2YgdG9vbHMsIGFzIGhhdmluZyAiX0lPQ19O
T05FIiBzaG91bGQgbmV2ZXIgYmUgcGFpcmVkIHdpdGggYSBub256ZXJvDQo+IHNpemUuDQo+
IA0KPiBVc2UgX0lPVygpIGluc3RlYWQuDQo+IA0KPiBGaXhlczogZjg5NDFlNmM0YzcxICgi
eGVuOiBwcml2Y21kOiBBZGQgc3VwcG9ydCBmb3IgaXJxZmQiKQ0KPiBSZXBvcnRlZC1ieTog
QXJuZCBCZXJnbWFubiA8YXJuZEBrZXJuZWwub3JnPg0KPiBDbG9zZXM6IGh0dHBzOi8vbG9y
ZS5rZXJuZWwub3JnL2FsbC8yNjhhMjAzMS02M2I4LTRjN2QtYjFlNS04YWI4M2NhODBiNGFA
YXBwLmZhc3RtYWlsLmNvbS8NCj4gU2lnbmVkLW9mZi1ieTogVmlyZXNoIEt1bWFyIDx2aXJl
c2gua3VtYXJAbGluYXJvLm9yZz4NCg0KUmV2aWV3ZWQtYnk6IEp1ZXJnZW4gR3Jvc3MgPGpn
cm9zc0BzdXNlLmNvbT4NCg0KDQpKdWVyZ2VuDQoNCg==
--------------u5hf43i9OIE4dk0EanBjly00
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-----

--------------u5hf43i9OIE4dk0EanBjly00--

--------------3c4sbr2bWNEY8AMM31TgXWIA--

--------------n0sbYyoOiB064uMBvwL0o0bX
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/Ey8FAmUs4ucFAwAAAAAACgkQsN6d1ii/Ey9k
1gf+INzKloKYASmfPT/8yL2yNeDVSIwawTnadF5jsAIxiaLc8Ve8J2Pdv50mIhDjSC82IkkkH18M
AkM7xn12IYN8s0jPKBqncRu9YNOv7yw3OBTbLMiTUQ7C12WQ3l4tNGLIkAjc1TkAVWrnT/mvTMWN
2XLP694ja6BX9wgJvhj0qQKlX1J8UJKYtYR8g0Mt0R0x08PmcmWOyG8ufqMOq0KAme2gSUHYdZeL
vdbDe9YT8qM2QMHsVrDls333A6MoQzcC+ArCvoCFEdrxGldyUcdRUovwywI5otxtRsUAa4X1jimD
Ykpx11I9KTT+UiHsUWwX8kt+1P2kamGU8Th8G0wCJQ==
=WgOI
-----END PGP SIGNATURE-----

--------------n0sbYyoOiB064uMBvwL0o0bX--


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 07:18:04 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 07:18:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617288.959784 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsHrM-0007f7-9o; Mon, 16 Oct 2023 07:17:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617288.959784; Mon, 16 Oct 2023 07:17: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 1qsHrM-0007f0-6k; Mon, 16 Oct 2023 07:17:52 +0000
Received: by outflank-mailman (input) for mailman id 617288;
 Mon, 16 Oct 2023 07:17: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=4t3W=F6=suse.com=jgross@srs-se1.protection.inumbo.net>)
 id 1qsHrL-0007es-Af
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 07:17:51 +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 1d23dd3e-6bf4-11ee-98d4-6d05b1d4d9a1;
 Mon, 16 Oct 2023 09:17:50 +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 856AE21BD8;
 Mon, 16 Oct 2023 07:17:49 +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 2C2E9138EF;
 Mon, 16 Oct 2023 07:17:49 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap2.suse-dmz.suse.de with ESMTPSA id q8TLCJ3jLGVsXQAAMHmgww
 (envelope-from <jgross@suse.com>); Mon, 16 Oct 2023 07:17: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: 1d23dd3e-6bf4-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1697440669; 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=nfISWVpeuW/iV5R79FAnU+RItCcz5hFDD2ufVTIvwTc=;
	b=HjmzQCbLH2l3AOciNe4vczJeCQUSqDCqkip8eDU5VDeORChyfGHXCfuOqcelBl/1qiB0Gf
	2GeFY0yJ0If0y4Hss7d6+CBKf8qcxGsS0qCvwoYQpcYvP0v4hBzLaoqr40rx5q0UR3V2RV
	m5zMRnC3KQdOxN283Lcl1NLl2vu8RH0=
Message-ID: <109e682d-c257-47b9-9d95-ba927cae46db@suse.com>
Date: Mon, 16 Oct 2023 09:17:48 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH V4 3/4] 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>, Arnd Bergmann
 <arnd@kernel.org>, xen-devel@lists.xenproject.org,
 linux-kernel@vger.kernel.org
References: <cover.1697439990.git.viresh.kumar@linaro.org>
 <99b1edfd3147c6b5d22a5139dab5861e767dc34a.1697439990.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: <99b1edfd3147c6b5d22a5139dab5861e767dc34a.1697439990.git.viresh.kumar@linaro.org>
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature";
 boundary="------------0DeSbFPoopNZI4BfBlhMslIu"
Authentication-Results: smtp-out1.suse.de;
	none
X-Spam-Level: 
X-Spam-Score: -2.99
X-Spamd-Result: default: False [-2.99 / 50.00];
	 ARC_NA(0.00)[];
	 RCVD_VIA_SMTP_AUTH(0.00)[];
	 XM_UA_NO_VERSION(0.01)[];
	 FROM_HAS_DN(0.00)[];
	 TO_DN_SOME(0.00)[];
	 TO_MATCH_ENVRCPT_ALL(0.00)[];
	 BAYES_HAM(-0.00)[15.78%];
	 MIME_GOOD(-0.20)[multipart/signed,multipart/mixed,text/plain];
	 HAS_ATTACHMENT(0.00)[];
	 REPLY(-4.00)[];
	 MIME_BASE64_TEXT_BOGUS(1.00)[];
	 DKIM_SIGNED(0.00)[suse.com:s=susede1];
	 NEURAL_HAM_SHORT(-1.00)[-1.000];
	 MIME_BASE64_TEXT(0.10)[];
	 RCPT_COUNT_TWELVE(0.00)[12];
	 NEURAL_SPAM_LONG(3.00)[1.000];
	 SIGNED_PGP(-2.00)[];
	 FROM_EQ_ENVFROM(0.00)[];
	 MIME_TRACE(0.00)[0:+,1:+,2:+,3:+,4:~,5:~];
	 RCVD_COUNT_TWO(0.00)[2];
	 RCVD_TLS_ALL(0.00)[];
	 MID_RHS_MATCH_FROM(0.00)[];
	 MIME_UNKNOWN(0.10)[application/pgp-keys]
X-Spam-Flag: NO

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--------------0DeSbFPoopNZI4BfBlhMslIu
Content-Type: multipart/mixed; boundary="------------12lMWqCZzejQlSAfuifK0UmU";
 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>, Arnd Bergmann
 <arnd@kernel.org>, xen-devel@lists.xenproject.org,
 linux-kernel@vger.kernel.org
Message-ID: <109e682d-c257-47b9-9d95-ba927cae46db@suse.com>
Subject: Re: [PATCH V4 3/4] xen: evtchn: Allow shared registration of IRQ
 handers
References: <cover.1697439990.git.viresh.kumar@linaro.org>
 <99b1edfd3147c6b5d22a5139dab5861e767dc34a.1697439990.git.viresh.kumar@linaro.org>
In-Reply-To: <99b1edfd3147c6b5d22a5139dab5861e767dc34a.1697439990.git.viresh.kumar@linaro.org>

--------------12lMWqCZzejQlSAfuifK0UmU
Content-Type: multipart/mixed; boundary="------------TPBbdZfrM7mOno7xHWeOz5zO"

--------------TPBbdZfrM7mOno7xHWeOz5zO
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: base64

T24gMTYuMTAuMjMgMDk6MTEsIFZpcmVzaCBLdW1hciB3cm90ZToNCj4gQ3VycmVudGx5IHRo
ZSBoYW5kbGluZyBvZiBldmVudHMgaXMgc3VwcG9ydGVkIGVpdGhlciBpbiB0aGUga2VybmVs
IG9yDQo+IHVzZXJzcGFjZSwgYnV0IG5vdCBib3RoLg0KPiANCj4gSW4gb3JkZXIgdG8gc3Vw
cG9ydCBmYXN0IGRlbGl2ZXJ5IG9mIGludGVycnVwdHMgZnJvbSB0aGUgZ3Vlc3QgdG8gdGhl
DQo+IGJhY2tlbmQsIHdlIG5lZWQgdG8gaGFuZGxlIHRoZSBRdWV1ZSBub3RpZnkgcGFydCBv
ZiBWaXJ0aW8gcHJvdG9jb2wgaW4NCj4ga2VybmVsIGFuZCB0aGUgcmVzdCBpbiB1c2Vyc3Bh
Y2UuDQo+IA0KPiBVcGRhdGUgdGhlIGludGVycnVwdCBoYW5kbGVyIHJlZ2lzdHJhdGlvbiBm
bGFnIHRvIElSUUZfU0hBUkVEIGZvciBldmVudA0KPiBjaGFubmVscywgd2hpY2ggd291bGQg
YWxsb3cgbXVsdGlwbGUgZW50aXRpZXMgdG8gYmluZCB0aGVpciBpbnRlcnJ1cHQNCj4gaGFu
ZGxlciBmb3IgdGhlIHNhbWUgZXZlbnQgY2hhbm5lbCBwb3J0Lg0KPiANCj4gQWxzbyBpbmNy
ZW1lbnQgdGhlIHJlZmVyZW5jZSBjb3VudCBvZiBpcnFfaW5mbyB3aGVuIG11bHRpcGxlIGVu
dGl0aWVzDQo+IHRyeSB0byBiaW5kIGV2ZW50IGNoYW5uZWwgdG8gaXJxY2hpcCwgc28gdGhl
IHVuYmluZGluZyBoYXBwZW5zIG9ubHkNCj4gYWZ0ZXIgYWxsIHRoZSB1c2VycyBhcmUgZ29u
ZS4NCj4gDQo+IFNpZ25lZC1vZmYtYnk6IFZpcmVzaCBLdW1hciA8dmlyZXNoLmt1bWFyQGxp
bmFyby5vcmc+DQoNClJldmlld2VkLWJ5OiBKdWVyZ2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5j
b20+DQoNCg0KSnVlcmdlbg0KDQo=
--------------TPBbdZfrM7mOno7xHWeOz5zO
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-----

--------------TPBbdZfrM7mOno7xHWeOz5zO--

--------------12lMWqCZzejQlSAfuifK0UmU--

--------------0DeSbFPoopNZI4BfBlhMslIu
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/Ey8FAmUs45wFAwAAAAAACgkQsN6d1ii/Ey8D
4Qf+IyXSq23XkKbZqP/f0IXxWnicHRScYES+yc35JU8u4sEBTtNpOTMJSB9KBPutPhKGXb1/pIIr
kTvVLQiwicqgsD0padwBGAeMG82mHLTGa8bvhqMwa8xfB42h6s4RAgSZjwM9vFcTq0IMIKjvJecB
OmlFLlhV/9etmBEfzgBXc5u6Ycek05JSaENrnz0BscU9x9D/JzDF0pqImo0aJ7E+lC/D/R2cHJCh
Fdnkn+FIEkDjPJOmUlEM0Khbq9a0XCNLsC6vK40sonL6ob7qujVFLu2NHdNJ4dGTRuonuau2LL7g
JG6GWENuko3sW4LKUTdYXtJ3rxy4HA7jMqNreWvDSA==
=Bmkd
-----END PGP SIGNATURE-----

--------------0DeSbFPoopNZI4BfBlhMslIu--


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 07:25:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 07:25:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617296.959795 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsHz2-0001mN-Di; Mon, 16 Oct 2023 07:25:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617296.959795; Mon, 16 Oct 2023 07: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 1qsHz2-0001mG-B9; Mon, 16 Oct 2023 07:25:48 +0000
Received: by outflank-mailman (input) for mailman id 617296;
 Mon, 16 Oct 2023 07: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=4t3W=F6=suse.com=jgross@srs-se1.protection.inumbo.net>)
 id 1qsHz1-0001mA-M2
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 07:25:47 +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 391328ae-6bf5-11ee-98d4-6d05b1d4d9a1;
 Mon, 16 Oct 2023 09:25: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 6776121C2B;
 Mon, 16 Oct 2023 07:25:45 +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 0FBBD133B7;
 Mon, 16 Oct 2023 07:25:45 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap2.suse-dmz.suse.de with ESMTPSA id pCMnAnnlLGVcYwAAMHmgww
 (envelope-from <jgross@suse.com>); Mon, 16 Oct 2023 07: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: 391328ae-6bf5-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1697441145; 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=rFm4CulkUNmokAEcnOeX70z/AYWmHa6mMbLig0qJgi8=;
	b=gcWs71s7waiRUffwJ8WcvgJHyqvdI3P0HvOOZF84D1sqsISaJgD40UcUi6CAeUB/lVpSPF
	QoG3XRfaUbJr1//r4CJPevv45uLzWHOjyt/yBCn2PFmyeW9+JfcUKr+mEk3CnCEZoRIOu/
	zWqDBWCggSjr9cYaLfj38g6mNs2LjAY=
Message-ID: <9da983d7-7acf-4c8e-8ab6-4651d43786d7@suse.com>
Date: Mon, 16 Oct 2023 09:25:44 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH V4 4/4] 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>, Arnd Bergmann
 <arnd@kernel.org>, linux-kernel@vger.kernel.org,
 xen-devel@lists.xenproject.org
References: <cover.1697439990.git.viresh.kumar@linaro.org>
 <b20d83efba6453037d0c099912813c79c81f7714.1697439990.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: <b20d83efba6453037d0c099912813c79c81f7714.1697439990.git.viresh.kumar@linaro.org>
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature";
 boundary="------------2r1dOTX1mHKZTC7qYSoT4HnL"
Authentication-Results: smtp-out1.suse.de;
	none
X-Spam-Level: 
X-Spam-Score: -2.99
X-Spamd-Result: default: False [-2.99 / 50.00];
	 ARC_NA(0.00)[];
	 RCVD_VIA_SMTP_AUTH(0.00)[];
	 XM_UA_NO_VERSION(0.01)[];
	 FROM_HAS_DN(0.00)[];
	 TO_DN_SOME(0.00)[];
	 TO_MATCH_ENVRCPT_ALL(0.00)[];
	 MIME_GOOD(-0.20)[multipart/signed,multipart/mixed,text/plain];
	 HAS_ATTACHMENT(0.00)[];
	 REPLY(-4.00)[];
	 MIME_BASE64_TEXT_BOGUS(1.00)[];
	 BAYES_SPAM(0.00)[27.06%];
	 DKIM_SIGNED(0.00)[suse.com:s=susede1];
	 NEURAL_HAM_SHORT(-1.00)[-1.000];
	 MIME_BASE64_TEXT(0.10)[];
	 RCPT_COUNT_TWELVE(0.00)[12];
	 NEURAL_SPAM_LONG(3.00)[1.000];
	 SIGNED_PGP(-2.00)[];
	 FROM_EQ_ENVFROM(0.00)[];
	 MIME_TRACE(0.00)[0:+,1:+,2:+,3:+,4:~,5:~];
	 RCVD_COUNT_TWO(0.00)[2];
	 RCVD_TLS_ALL(0.00)[];
	 MID_RHS_MATCH_FROM(0.00)[];
	 MIME_UNKNOWN(0.10)[application/pgp-keys]
X-Spam-Flag: NO

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--------------2r1dOTX1mHKZTC7qYSoT4HnL
Content-Type: multipart/mixed; boundary="------------aaD1b1OYmjY0a22YsRfWggOZ";
 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>, Arnd Bergmann
 <arnd@kernel.org>, linux-kernel@vger.kernel.org,
 xen-devel@lists.xenproject.org
Message-ID: <9da983d7-7acf-4c8e-8ab6-4651d43786d7@suse.com>
Subject: Re: [PATCH V4 4/4] xen: privcmd: Add support for ioeventfd
References: <cover.1697439990.git.viresh.kumar@linaro.org>
 <b20d83efba6453037d0c099912813c79c81f7714.1697439990.git.viresh.kumar@linaro.org>
In-Reply-To: <b20d83efba6453037d0c099912813c79c81f7714.1697439990.git.viresh.kumar@linaro.org>

--------------aaD1b1OYmjY0a22YsRfWggOZ
Content-Type: multipart/mixed; boundary="------------kYpPsBWQm0iQEiybzpBF4ED2"

--------------kYpPsBWQm0iQEiybzpBF4ED2
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: base64

T24gMTYuMTAuMjMgMDk6MTEsIFZpcmVzaCBLdW1hciB3cm90ZToNCj4gVmlydGlvIGd1ZXN0
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
aW5hcm8ub3JnPg0KDQpSZXZpZXdlZC1ieTogSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1c2Uu
Y29tPg0KDQoNCkp1ZXJnZW4NCg0K
--------------kYpPsBWQm0iQEiybzpBF4ED2
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-----

--------------kYpPsBWQm0iQEiybzpBF4ED2--

--------------aaD1b1OYmjY0a22YsRfWggOZ--

--------------2r1dOTX1mHKZTC7qYSoT4HnL
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/Ey8FAmUs5XgFAwAAAAAACgkQsN6d1ii/Ey/G
xgf/XccFGPPB3U8Vs9SCABzb+BugbgcSDsjkPY2S5TTBp0zqOxo+dwD+HUUqPOBbJz5o+vfMZb3P
/aazQ0ESrhVtxyI9rf460Os4VZJDGRTUo1sLHihzLJk9DTf+iBV7eIxGJ88rNF6XLxWIJR3ed+K2
gxN7WtsZyfUwbGsPYihIRldPNTV26a+rkYB9AhfwE8qfonkh8hzz067vrKyh70Gg9YjaVs3kBzt7
YLyq1oRBUGpP+M8mw9wQrwmZk9tEwQh0E5eS3FI/hci2uLf6XiosH/CKVApsYT5MuN/ByN3kHH8s
BeN3/nfpI4IhADYqjRd5JH/UcvbsIpVx9YXm1dWXdQ==
=R1SS
-----END PGP SIGNATURE-----

--------------2r1dOTX1mHKZTC7qYSoT4HnL--


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 07:38:33 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 07:38:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617307.959805 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsIBE-0005xQ-Pa; Mon, 16 Oct 2023 07:38:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617307.959805; Mon, 16 Oct 2023 07:38: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 1qsIBE-0005xJ-Ld; Mon, 16 Oct 2023 07:38:24 +0000
Received: by outflank-mailman (input) for mailman id 617307;
 Mon, 16 Oct 2023 07:38: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=4t3W=F6=suse.com=jgross@srs-se1.protection.inumbo.net>)
 id 1qsIBD-0005xD-Aa
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 07:38:23 +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 fad66ddc-6bf6-11ee-9b0e-b553b5be7939;
 Mon, 16 Oct 2023 09:38:21 +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 592DD1FDCC;
 Mon, 16 Oct 2023 07:38:20 +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 268C5133B7;
 Mon, 16 Oct 2023 07:38:20 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap2.suse-dmz.suse.de with ESMTPSA id YKnWB2zoLGU/agAAMHmgww
 (envelope-from <jgross@suse.com>); Mon, 16 Oct 2023 07:38: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: fad66ddc-6bf6-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1697441900; 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=Xl1MpIBp+5MavD132m3PYC5mkW1ehLyyYWC9RRM1JOI=;
	b=c0mfJPkOP4bKTR3sr+DM1S2jOaMYf5sK0PhbvpkSDrROw3b2Zffc1My9/jjBMKcn33BHPr
	1xWprR3NiLB2JhE9YbmU3+isOipk/C19EcPWXSgT10A4OFxzXb3csT8A2u9N5lzMFEKBCR
	+DIybSKfMmjJFO9/cdOu1Uzbcd3W9u0=
Message-ID: <28143c17-2562-43a0-9796-644fd50a1dd6@suse.com>
Date: Mon, 16 Oct 2023 09:38:19 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH] cxenstored: wait until after reset to notify dom0less
 domains
Content-Language: en-US
To: Stefano Stabellini <sstabellini@kernel.org>,
 xen-devel@lists.xenproject.org
Cc: George Dunlap <george.dunlap@cloud.com>,
 Stefano Stabellini <stefano.stabellini@amd.com>, julien@xen.org, wl@xen.org
References: <20231013230624.1007969-1-sstabellini@kernel.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: <20231013230624.1007969-1-sstabellini@kernel.org>
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature";
 boundary="------------FMCLRZXF7N0pcGpxk9cu8m0U"
Authentication-Results: smtp-out2.suse.de;
	none
X-Spam-Level: *
X-Spam-Score: 1.01
X-Spamd-Result: default: False [1.01 / 50.00];
	 ARC_NA(0.00)[];
	 RCVD_VIA_SMTP_AUTH(0.00)[];
	 XM_UA_NO_VERSION(0.01)[];
	 FROM_HAS_DN(0.00)[];
	 TO_DN_SOME(0.00)[];
	 TO_MATCH_ENVRCPT_ALL(0.00)[];
	 BAYES_HAM(-0.00)[33.86%];
	 MIME_GOOD(-0.20)[multipart/signed,multipart/mixed,text/plain];
	 HAS_ATTACHMENT(0.00)[];
	 MIME_BASE64_TEXT_BOGUS(1.00)[];
	 RCPT_COUNT_FIVE(0.00)[6];
	 DKIM_SIGNED(0.00)[suse.com:s=susede1];
	 NEURAL_HAM_SHORT(-1.00)[-1.000];
	 MIME_BASE64_TEXT(0.10)[];
	 NEURAL_SPAM_LONG(3.00)[1.000];
	 SIGNED_PGP(-2.00)[];
	 FROM_EQ_ENVFROM(0.00)[];
	 MIME_TRACE(0.00)[0:+,1:+,2:+,3:+,4:~,5:~];
	 RCVD_COUNT_TWO(0.00)[2];
	 RCVD_TLS_ALL(0.00)[];
	 MID_RHS_MATCH_FROM(0.00)[];
	 MIME_UNKNOWN(0.10)[application/pgp-keys]
X-Spam-Flag: NO

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--------------FMCLRZXF7N0pcGpxk9cu8m0U
Content-Type: multipart/mixed; boundary="------------X5Uo0mKJlHTSYf7dOokj0YWC";
 protected-headers="v1"
From: Juergen Gross <jgross@suse.com>
To: Stefano Stabellini <sstabellini@kernel.org>,
 xen-devel@lists.xenproject.org
Cc: George Dunlap <george.dunlap@cloud.com>,
 Stefano Stabellini <stefano.stabellini@amd.com>, julien@xen.org, wl@xen.org
Message-ID: <28143c17-2562-43a0-9796-644fd50a1dd6@suse.com>
Subject: Re: [PATCH] cxenstored: wait until after reset to notify dom0less
 domains
References: <20231013230624.1007969-1-sstabellini@kernel.org>
In-Reply-To: <20231013230624.1007969-1-sstabellini@kernel.org>

--------------X5Uo0mKJlHTSYf7dOokj0YWC
Content-Type: multipart/mixed; boundary="------------Ccu0wirB2FvSb06dLcrlUlrF"

--------------Ccu0wirB2FvSb06dLcrlUlrF
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: base64

T24gMTQuMTAuMjMgMDE6MDYsIFN0ZWZhbm8gU3RhYmVsbGluaSB3cm90ZToNCj4gRnJvbTog
R2VvcmdlIER1bmxhcCA8Z2VvcmdlLmR1bmxhcEBjbG91ZC5jb20+DQo+IA0KPiBDb21taXQg
ZmMyYjU3YzlhICgieGVuc3RvcmVkOiBzZW5kIGFuIGV2dGNobiBub3RpZmljYXRpb24gb24N
Cj4gaW50cm9kdWNlX2RvbWFpbiIpIGludHJvZHVjZWQgdGhlIHNlbmRpbmcgb2YgYW4gZXZl
bnQgY2hhbm5lbCB0byB0aGUNCj4gZ3Vlc3Qgd2hlbiBmaXJzdCBpbnRyb2R1Y2VkLCBzbyB0
aGF0IGRvbTBsZXNzIGRvbWFpbnMgd2FpdGluZyBmb3IgdGhlDQo+IGNvbm5lY3Rpb24gd291
bGQga25vdyB0aGF0IHhlbnN0b3JlIHdhcyByZWFkeSB0byB1c2UuDQo+IA0KPiBVbmZvcnR1
bmF0ZWx5LCBpdCB3YXMgaW50cm9kdWNlZCBpbiBpbnRyb2R1Y2VfZG9tYWluKCksIHdoaWNo
IDEpIGlzDQo+IGNhbGxlZCBieSBvdGhlciBmdW5jdGlvbnMsIHdoZXJlIHN1Y2ggZnVuY3Rp
b25hbGl0eSBpcyB1bm5lZWRlZCwgYW5kDQo+IDIpIGFmdGVyIHRoZSBtYWluIFhTX0lOVFJP
RFVDRSBjYWxsLCBjYWxscyBkb21haW5fY29ubl9yZXNldCgpLiAgVGhpcw0KPiBpbnRyb2R1
Y2VzIGEgcmFjZSBjb25kaXRpb24sIHdoZXJlYnkgaWYgeGVuc3RvcmVkIGlzIGRlbGF5ZWQs
IGEgZG9tYWluDQo+IGNhbiB3YWtlIHVwLCBzZW5kIG1lc3NhZ2VzIHRvIHRoZSBidWZmZXIs
IG9ubHkgdG8gaGF2ZSB0aGVtIGRlbGV0ZWQgYnkNCj4geGVuc3RvcmUgYmVmb3JlIGZpbmlz
aGluZyBpdHMgcHJvY2Vzc2luZyBvZiB0aGUgWFNfSU5UUk9EVUNFIG1lc3NhZ2UuDQo+IA0K
PiBNb3ZlIHRoZSBjb25uZWN0LWFuZC1ub3RmeSBjYWxsIGludG8gZG9faW50cm9kdWNlKCkg
aW5zdGVhZCwgYWZ0ZXIgdGhlDQo+IGRvbWFpbl9jb25uX3Jlc3QoKTsgcHJlZGljYXRlZCBv
biB0aGUgc3RhdGUgYmVpbmcgaW4gdGhlDQo+IFhFTlNUT1JFX1JFQ09OTkVDVCBzdGF0ZS4N
Cj4gDQo+IChXZSBkb24ndCBuZWVkIHRvIGNoZWNrIGZvciAicmVzdG9yaW5nIiwgc2luY2Ug
dGhhdCB2YWx1ZSBpcyBhbHdheXMNCj4gcGFzc2VkIGFzICJmYWxzZSIgZnJvbSBkb19kb21h
aW5faW50cm9kdWNlKCkpLg0KPiANCj4gQWxzbyB0YWtlIHRoZSBvcHBvcnR1bml0eSB0byBh
ZGQgYSBtaXNzaW5nIHdtYiBiYXJyaWVyIGFmdGVyIHJlc2V0dGluZw0KPiB0aGUgaW5kZXhl
cyBvZiB0aGUgcmluZyBpbiBkb21haW5fY29ubl9yZXNldC4NCj4gDQo+IFRoaXMgY2hhbmdl
IHdpbGwgYWxzbyByZW1vdmUgYW4gZXh0cmEgZXZlbnQgY2hhbm5lbCBub3RpZmljYXRpb24g
Zm9yDQo+IGRvbTAgKGJlY2F1c2UgdGhlIG5vdGlmaWNhdGlvbiBpcyBub3cgZG9uZSBieSBk
b19pbnRyb2R1Y2Ugd2hpY2ggaXMgbm90DQo+IGNhbGxlZCBmb3IgZG9tMC4pIFRoZSBleHRy
YSBkb20wIGV2ZW50IGNoYW5uZWwgbm90aWZpY2F0aW9uIHdhcyBvbmx5DQo+IGludHJvZHVj
ZWQgYnkgZmMyYjU3YzlhIGFuZCB3YXMgbmV2ZXIgcHJlc2VudCBiZWZvcmUuIEl0IGlzIG5v
dCBuZWVkZWQNCj4gYmVjYXVzZSBkb20wIGlzIHRoZSBvbmUgdG8gdGVsbCB4ZW5zdG9yZWQg
dGhlIGNvbm5lY3Rpb24gcGFyYW1ldGVycywgc28NCj4gZG9tMCBoYXMgdG8ga25vdyB0aGF0
IHRoZSByaW5nIHBhZ2UgaXMgc2V0dXAgY29ycmVjdGx5IGJ5IHRoZSB0aW1lDQo+IHhlbnN0
b3JlZCBzdGFydHMgbG9va2luZyBhdCBpdC4gSXQgaXMgZG9tMCB0aGF0IHBlcmZvcm1zIHRo
ZSByaW5nIHBhZ2UNCj4gaW5pdC4NCj4gDQo+IFNpZ25lZC1vZmYtYnk6IEdlb3JnZSBEdW5s
YXAgPGdlb3JnZS5kdW5sYXBAY2xvdWQuY29tPg0KPiBTaWduZWQtb2ZmLWJ5OiBTdGVmYW5v
IFN0YWJlbGxpbmkgPHN0ZWZhbm8uc3RhYmVsbGluaUBhbWQuY29tPg0KPiBDQzogamdyb3Nz
QHN1c2UuY29tDQo+IENDOiBqdWxpZW5AeGVuLm9yZw0KPiBDQzogd2xAeGVuLm9yZw0KDQpU
d28gbml0cyBiZWxvdywgd2l0aCB0aG9zZSBmaXhlZDoNCg0KUmV2aWV3ZWQtYnk6IEp1ZXJn
ZW4gR3Jvc3MgPGpncm9zc0BzdXNlLmNvbT4NCg0KPiAtLS0NCj4gICB0b29scy94ZW5zdG9y
ZWQvZG9tYWluLmMgfCAxNCArKysrKysrKy0tLS0tLQ0KPiAgIDEgZmlsZSBjaGFuZ2VkLCA4
IGluc2VydGlvbnMoKyksIDYgZGVsZXRpb25zKC0pDQo+IA0KPiBkaWZmIC0tZ2l0IGEvdG9v
bHMveGVuc3RvcmVkL2RvbWFpbi5jIGIvdG9vbHMveGVuc3RvcmVkL2RvbWFpbi5jDQo+IGlu
ZGV4IGE2Y2QxOTlmZGMuLmY2ZWYzNzg1NmMgMTAwNjQ0DQo+IC0tLSBhL3Rvb2xzL3hlbnN0
b3JlZC9kb21haW4uYw0KPiArKysgYi90b29scy94ZW5zdG9yZWQvZG9tYWluLmMNCj4gQEAg
LTkyMyw2ICs5MjMsNyBAQCBzdGF0aWMgdm9pZCBkb21haW5fY29ubl9yZXNldChzdHJ1Y3Qg
ZG9tYWluICpkb21haW4pDQo+ICAgDQo+ICAgCWRvbWFpbi0+aW50ZXJmYWNlLT5yZXFfY29u
cyA9IGRvbWFpbi0+aW50ZXJmYWNlLT5yZXFfcHJvZCA9IDA7DQo+ICAgCWRvbWFpbi0+aW50
ZXJmYWNlLT5yc3BfY29ucyA9IGRvbWFpbi0+aW50ZXJmYWNlLT5yc3BfcHJvZCA9IDA7DQo+
ICsJeGVuX3dtYigpOw0KPiAgIH0NCj4gICANCj4gICAvKg0KPiBAQCAtOTg4LDEyICs5ODks
NiBAQCBzdGF0aWMgc3RydWN0IGRvbWFpbiAqaW50cm9kdWNlX2RvbWFpbihjb25zdCB2b2lk
ICpjdHgsDQo+ICAgCQkvKiBOb3cgZG9tYWluIGJlbG9uZ3MgdG8gaXRzIGNvbm5lY3Rpb24u
ICovDQo+ICAgCQl0YWxsb2Nfc3RlYWwoZG9tYWluLT5jb25uLCBkb21haW4pOw0KPiAgIA0K
PiAtCQlpZiAoIXJlc3RvcmUpIHsNCj4gLQkJCS8qIE5vdGlmeSB0aGUgZG9tYWluIHRoYXQg
eGVuc3RvcmUgaXMgYXZhaWxhYmxlICovDQo+IC0JCQlpbnRlcmZhY2UtPmNvbm5lY3Rpb24g
PSBYRU5TVE9SRV9DT05ORUNURUQ7DQo+IC0JCQl4ZW5ldnRjaG5fbm90aWZ5KHhjZV9oYW5k
bGUsIGRvbWFpbi0+cG9ydCk7DQo+IC0JCX0NCj4gLQ0KPiAgIAkJaWYgKCFpc19tYXN0ZXJf
ZG9tYWluICYmICFyZXN0b3JlKQ0KPiAgIAkJCWZpcmVfc3BlY2lhbF93YXRjaGVzKCJAaW50
cm9kdWNlRG9tYWluIik7DQo+ICAgCX0gZWxzZSB7DQo+IEBAIC0xMDMzLDYgKzEwMjgsMTMg
QEAgaW50IGRvX2ludHJvZHVjZShjb25zdCB2b2lkICpjdHgsIHN0cnVjdCBjb25uZWN0aW9u
ICpjb25uLA0KPiAgIA0KPiAgIAlkb21haW5fY29ubl9yZXNldChkb21haW4pOw0KPiAgIA0K
PiArCWlmIChkb21haW4tPmludGVyZmFjZSAhPSBOVUxMICYmDQo+ICsJCWRvbWFpbi0+aW50
ZXJmYWNlLT5jb25uZWN0aW9uID09IFhFTlNUT1JFX1JFQ09OTkVDVCkgew0KDQpJZGVudGF0
aW9uIHNob3VsZCBiZSBmaXhlZCAoYm90aCB0ZXN0ZWQgY29uZGl0aW9ucyBhdCB0aGUgc2Ft
ZSBwb3NpdGlvbikuDQoNCj4gKwkJLyogTm90aWZ5IHRoZSBkb21haW4gdGhhdCB4ZW5zdG9y
ZSBpcyBhdmFpbGFibGUgKi8NCg0KUGxlYXNlIGFkZCBhICIuIiBhdCB0aGUgZW5kIG9mIHRo
ZSBzZW50ZW5jZSB3aGlsZSB5b3UgYXJlIG1vdmluZyB0aGlzIGxpbmUuDQoNCj4gKwkJZG9t
YWluLT5pbnRlcmZhY2UtPmNvbm5lY3Rpb24gPSBYRU5TVE9SRV9DT05ORUNURUQ7DQo+ICsJ
CXhlbmV2dGNobl9ub3RpZnkoeGNlX2hhbmRsZSwgZG9tYWluLT5wb3J0KTsNCj4gKwl9DQo+
ICsNCj4gICAJc2VuZF9hY2soY29ubiwgWFNfSU5UUk9EVUNFKTsNCj4gICANCj4gICAJcmV0
dXJuIDA7DQoNCg0KSnVlcmdlbg0K
--------------Ccu0wirB2FvSb06dLcrlUlrF
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-----

--------------Ccu0wirB2FvSb06dLcrlUlrF--

--------------X5Uo0mKJlHTSYf7dOokj0YWC--

--------------FMCLRZXF7N0pcGpxk9cu8m0U
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/Ey8FAmUs6GsFAwAAAAAACgkQsN6d1ii/Ey+P
Bgf/dqGODuYBv/sbsVfsBJDfxFbrVlD5s1t8hnEgtoaxjcdtwqIx3jrsgiQgsrMrjXozq1J3YyLi
UJIAVnB7Y9HrkfxRobkEAoom7s3dZiPo8XOSShNQSxu5BuhqXSrdIZfdp8HT4Ec4JcKuRAbThGxL
RZgnJfbj322untY4vLvnW7eRpqeZy/C9m3nVanzHXtA5t6fA1Ho0NPOnZ2chT6trAbksdlaH5TiT
BkdoVMOE8gwDM+itdUURma3TytF59q/CLRAXwY+LBPW1AZ9eLXsuFG1u9WLM/5Io6n7E9BREinyl
qsucwuouJ1ar0piR6lUrQhVWkIgfKHWtsqztguGLgQ==
=hnEs
-----END PGP SIGNATURE-----

--------------FMCLRZXF7N0pcGpxk9cu8m0U--


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 07:45:53 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 07:45:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617311.959814 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsIIO-00087x-GF; Mon, 16 Oct 2023 07:45:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617311.959814; Mon, 16 Oct 2023 07:45: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 1qsIIO-00087q-DV; Mon, 16 Oct 2023 07:45:48 +0000
Received: by outflank-mailman (input) for mailman id 617311;
 Mon, 16 Oct 2023 07:45: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=dMeS=F6=cloud.com=george.dunlap@srs-se1.protection.inumbo.net>)
 id 1qsIIM-00084n-Id
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 07:45:46 +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 0331f853-6bf8-11ee-9b0e-b553b5be7939;
 Mon, 16 Oct 2023 09:45:44 +0200 (CEST)
Received: by mail-lj1-x232.google.com with SMTP id
 38308e7fff4ca-2c51f5a1ecdso10022461fa.0
 for <xen-devel@lists.xenproject.org>; Mon, 16 Oct 2023 00:45: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: 0331f853-6bf8-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1697442344; x=1698047144; 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=j+peydpvmQo2JrSbTCthAGMaKLnXT+2glwsPZ2zeC+0=;
        b=IQJepJhv0YdaSMQWKZXJmXGlcyABBkjvkbgR5jGgq9jV4eh4V+JmKt5Vpq0tnenCEG
         teUQG4s23uMTAj/kQaHpyJbDjf6Q3AUlOxH5FSjh6x4WUTLsdtG20Fv5qj7fM+1Hp9UB
         VFKvu8+MBZvEwzpTFDX+VtbUmqhSeLLqn+WCM=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697442344; x=1698047144;
        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=j+peydpvmQo2JrSbTCthAGMaKLnXT+2glwsPZ2zeC+0=;
        b=lTag7a3meDXQSPVgz4nbBT7K9TeYGpBry2bN9jZH0eAVys1QcLn5bAIW1mnNP0DlXs
         hbmVdQlO82O95FysWZmpKBsheNz9wtRSjDz4qExPzrGyf8JB4N5Az0DFXE2UqEmn0geL
         gnwFpZApO/YybwVQH53ROH56h5X/wlJ6ld4AceGAYUaazEsoeLRahBCpAoiXcyfZ8T+J
         o/l/8Zye3jNIZk0ACDVCNCfO9Lz0HhWjL15rHfurugvY6dcs5+ARNn2m6hAgMS7vOMaw
         pSTnLYNKjJJVJkSf7J9os83AMiiJk+dB96w0HgEYSnV205R1eTBRmg403BoY87vgXr7h
         NwkA==
X-Gm-Message-State: AOJu0Yw6rsrT7I6fOB1K/65JMfWg4XxtusS32YDFPCviVNxqyJO0gL7y
	9l9Gp6DTGbYsv/CXIjSiQ+elTx9FNdQwut968hA+vg==
X-Google-Smtp-Source: AGHT+IHmYSEHRRGxD7qygWaTapruGMR0e+Lu1gZbMZyh7gD74T9iMsrJz2A5w/QVr0HZ8yurEGF7uGLml7E4olFTGnE=
X-Received: by 2002:a05:651c:10ac:b0:2c5:9d4:7370 with SMTP id
 k12-20020a05651c10ac00b002c509d47370mr4145024ljn.12.1697442343980; Mon, 16
 Oct 2023 00:45:43 -0700 (PDT)
MIME-Version: 1.0
References: <20231013230624.1007969-1-sstabellini@kernel.org> <28143c17-2562-43a0-9796-644fd50a1dd6@suse.com>
In-Reply-To: <28143c17-2562-43a0-9796-644fd50a1dd6@suse.com>
From: George Dunlap <george.dunlap@cloud.com>
Date: Mon, 16 Oct 2023 08:45:33 +0100
Message-ID: <CA+zSX=Y_40RMvCv8x4o-LQk+RCAJekrYisMD4FLqEYuN49=tzw@mail.gmail.com>
Subject: Re: [PATCH] cxenstored: wait until after reset to notify dom0less domains
To: Juergen Gross <jgross@suse.com>
Cc: Stefano Stabellini <sstabellini@kernel.org>, xen-devel@lists.xenproject.org, 
	Stefano Stabellini <stefano.stabellini@amd.com>, julien@xen.org, wl@xen.org
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Mon, Oct 16, 2023 at 8:38=E2=80=AFAM Juergen Gross <jgross@suse.com> wro=
te:
> On 14.10.23 01:06, Stefano Stabellini wrote:
> > +             /* Notify the domain that xenstore is available */
>
> Please add a "." at the end of the sentence while you are moving this lin=
e.

CODING_STYLE explicitly allows the omission of a '.' when a comment is
only a single sentence.

More generally, in this context in English at least, a comment seems
to me more like a sign (which should not have punctuation) than a
normal English sentence (which does).  As such, to me the period
actually seems wrong.

In any case, CODING_STYLE was modified to avoid having to spend time
arguing about this sort of thing. :-)

 -George


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 08:14:15 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 08:14:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617321.959824 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsIjo-0008GL-H9; Mon, 16 Oct 2023 08:14:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617321.959824; Mon, 16 Oct 2023 08:14: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 1qsIjo-0008GE-E3; Mon, 16 Oct 2023 08:14:08 +0000
Received: by outflank-mailman (input) for mailman id 617321;
 Mon, 16 Oct 2023 08:14: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=4t3W=F6=suse.com=jgross@srs-se1.protection.inumbo.net>)
 id 1qsIjm-0008Et-TA
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 08:14:06 +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 f8a660a8-6bfb-11ee-9b0e-b553b5be7939;
 Mon, 16 Oct 2023 10:14: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-out2.suse.de (Postfix) with ESMTPS id 22AF61FEAE;
 Mon, 16 Oct 2023 08:14: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 E0DB1133B7;
 Mon, 16 Oct 2023 08:14:02 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap2.suse-dmz.suse.de with ESMTPSA id vbYqNcrwLGV/BwAAMHmgww
 (envelope-from <jgross@suse.com>); Mon, 16 Oct 2023 08:14: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: f8a660a8-6bfb-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1697444043; 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=5ywWQHbNgxL0GdzLvuCd0xO9xqPfdvRmcb1WUO8r8DE=;
	b=pXSuzlF9ZZ1zdqYoxDoPWK+L4AM+sQRncdu3p5wLGMcGFmfKd3ICPWzVeNaORuxFCqMtBw
	shb8/a08y6VDyNH65hg9xyknfExoySjBGBoX9ynszeju0xZr39r5fVP4JGDu21ISeoA5VI
	8u2o8pWgp/ZIgxh8HqwSSoKMff6ocB0=
Message-ID: <f0190c06-d00a-406e-9eb0-7b35764bf7d7@suse.com>
Date: Mon, 16 Oct 2023 10:14:02 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH] cxenstored: wait until after reset to notify dom0less
 domains
Content-Language: en-US
To: George Dunlap <george.dunlap@cloud.com>
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 xen-devel@lists.xenproject.org,
 Stefano Stabellini <stefano.stabellini@amd.com>, julien@xen.org, wl@xen.org
References: <20231013230624.1007969-1-sstabellini@kernel.org>
 <28143c17-2562-43a0-9796-644fd50a1dd6@suse.com>
 <CA+zSX=Y_40RMvCv8x4o-LQk+RCAJekrYisMD4FLqEYuN49=tzw@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=Y_40RMvCv8x4o-LQk+RCAJekrYisMD4FLqEYuN49=tzw@mail.gmail.com>
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature";
 boundary="------------I5oRWsa0McLH9zqBvFQ3uaBW"
Authentication-Results: smtp-out2.suse.de;
	none
X-Spam-Level: 
X-Spam-Score: -2.43
X-Spamd-Result: default: False [-2.43 / 50.00];
	 ARC_NA(0.00)[];
	 RCVD_VIA_SMTP_AUTH(0.00)[];
	 XM_UA_NO_VERSION(0.01)[];
	 FROM_HAS_DN(0.00)[];
	 TO_DN_SOME(0.00)[];
	 TO_MATCH_ENVRCPT_ALL(0.00)[];
	 BAYES_HAM(-2.44)[97.44%];
	 MIME_GOOD(-0.20)[multipart/signed,multipart/mixed,text/plain];
	 HAS_ATTACHMENT(0.00)[];
	 RCPT_COUNT_FIVE(0.00)[6];
	 DKIM_SIGNED(0.00)[suse.com:s=susede1];
	 NEURAL_HAM_SHORT(-1.00)[-1.000];
	 MIME_BASE64_TEXT(0.10)[];
	 NEURAL_SPAM_LONG(3.00)[1.000];
	 SIGNED_PGP(-2.00)[];
	 FROM_EQ_ENVFROM(0.00)[];
	 MIME_TRACE(0.00)[0:+,1:+,2:+,3:+,4:~,5:~];
	 RCVD_COUNT_TWO(0.00)[2];
	 RCVD_TLS_ALL(0.00)[];
	 MID_RHS_MATCH_FROM(0.00)[];
	 MIME_UNKNOWN(0.10)[application/pgp-keys]
X-Spam-Flag: NO

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--------------I5oRWsa0McLH9zqBvFQ3uaBW
Content-Type: multipart/mixed; boundary="------------7JJMwfeSeGsPvTdxwKimQ7Ya";
 protected-headers="v1"
From: Juergen Gross <jgross@suse.com>
To: George Dunlap <george.dunlap@cloud.com>
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 xen-devel@lists.xenproject.org,
 Stefano Stabellini <stefano.stabellini@amd.com>, julien@xen.org, wl@xen.org
Message-ID: <f0190c06-d00a-406e-9eb0-7b35764bf7d7@suse.com>
Subject: Re: [PATCH] cxenstored: wait until after reset to notify dom0less
 domains
References: <20231013230624.1007969-1-sstabellini@kernel.org>
 <28143c17-2562-43a0-9796-644fd50a1dd6@suse.com>
 <CA+zSX=Y_40RMvCv8x4o-LQk+RCAJekrYisMD4FLqEYuN49=tzw@mail.gmail.com>
In-Reply-To: <CA+zSX=Y_40RMvCv8x4o-LQk+RCAJekrYisMD4FLqEYuN49=tzw@mail.gmail.com>

--------------7JJMwfeSeGsPvTdxwKimQ7Ya
Content-Type: multipart/mixed; boundary="------------dwu1gsV1gK8bNZR8CBPHBL7p"

--------------dwu1gsV1gK8bNZR8CBPHBL7p
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: base64

T24gMTYuMTAuMjMgMDk6NDUsIEdlb3JnZSBEdW5sYXAgd3JvdGU6DQo+IE9uIE1vbiwgT2N0
IDE2LCAyMDIzIGF0IDg6MzjigK9BTSBKdWVyZ2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+
IHdyb3RlOg0KPj4gT24gMTQuMTAuMjMgMDE6MDYsIFN0ZWZhbm8gU3RhYmVsbGluaSB3cm90
ZToNCj4+PiArICAgICAgICAgICAgIC8qIE5vdGlmeSB0aGUgZG9tYWluIHRoYXQgeGVuc3Rv
cmUgaXMgYXZhaWxhYmxlICovDQo+Pg0KPj4gUGxlYXNlIGFkZCBhICIuIiBhdCB0aGUgZW5k
IG9mIHRoZSBzZW50ZW5jZSB3aGlsZSB5b3UgYXJlIG1vdmluZyB0aGlzIGxpbmUuDQo+IA0K
PiBDT0RJTkdfU1RZTEUgZXhwbGljaXRseSBhbGxvd3MgdGhlIG9taXNzaW9uIG9mIGEgJy4n
IHdoZW4gYSBjb21tZW50IGlzDQo+IG9ubHkgYSBzaW5nbGUgc2VudGVuY2UuDQo+IA0KPiBN
b3JlIGdlbmVyYWxseSwgaW4gdGhpcyBjb250ZXh0IGluIEVuZ2xpc2ggYXQgbGVhc3QsIGEg
Y29tbWVudCBzZWVtcw0KPiB0byBtZSBtb3JlIGxpa2UgYSBzaWduICh3aGljaCBzaG91bGQg
bm90IGhhdmUgcHVuY3R1YXRpb24pIHRoYW4gYQ0KPiBub3JtYWwgRW5nbGlzaCBzZW50ZW5j
ZSAod2hpY2ggZG9lcykuICBBcyBzdWNoLCB0byBtZSB0aGUgcGVyaW9kDQo+IGFjdHVhbGx5
IHNlZW1zIHdyb25nLg0KPiANCj4gSW4gYW55IGNhc2UsIENPRElOR19TVFlMRSB3YXMgbW9k
aWZpZWQgdG8gYXZvaWQgaGF2aW5nIHRvIHNwZW5kIHRpbWUNCj4gYXJndWluZyBhYm91dCB0
aGlzIHNvcnQgb2YgdGhpbmcuIDotKQ0KDQpJIHdvbid0IGZpZ2h0IGZvciB0aGUgcGVyaW9k
LiA6LSkNCg0KTWF5YmUgSSd2ZSBqdXN0IHJlYWQgdG9vIG1hbnkga2VybmVsIHJldmlld3Mg
YXNraW5nIGZvciBpdC4NCg0KDQpKdWVyZ2VuDQoNCg==
--------------dwu1gsV1gK8bNZR8CBPHBL7p
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-----

--------------dwu1gsV1gK8bNZR8CBPHBL7p--

--------------7JJMwfeSeGsPvTdxwKimQ7Ya--

--------------I5oRWsa0McLH9zqBvFQ3uaBW
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/Ey8FAmUs8MoFAwAAAAAACgkQsN6d1ii/Ey+V
iQgAibpZxaYkVucB/YZW346fEywiCAYmYbVZG2mU9Xtw7q6ucwoPaM5awT7/KCr+QhLl0FGsWAmM
hDrFFT/LC4A1BppFTLJG7sEEevDO8GTD6r0hnEnfPZ0ASHt63uxl1A2pwkTvnPrYgFf3OS2S9DaY
3GQRUDWvsq0aDgynBsHjOcXI2PsyAF1c1td+xXsNg/j6dLvhYb15qj73AWnzwIVBLPb7pbCX/Ptt
xHwIDObZD/psokzHWozK2DxxOfxUIZ9a4tUis91BI3ql8xOlP/6ntRDdFLLIDFkDgoDrwzCQuyUr
xY34qzFE2kAUWLBFP3d/3iPFTYxPTtqOzoX9xT16pA==
=K9jI
-----END PGP SIGNATURE-----

--------------I5oRWsa0McLH9zqBvFQ3uaBW--


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 08:44:44 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 08:44:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617331.959835 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsJDB-0007Pp-9y; Mon, 16 Oct 2023 08:44:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617331.959835; Mon, 16 Oct 2023 08: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 1qsJDB-0007Pi-6j; Mon, 16 Oct 2023 08:44:29 +0000
Received: by outflank-mailman (input) for mailman id 617331;
 Mon, 16 Oct 2023 08:44: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=LsVN=F6=amd.com=Michal.Orzel@srs-se1.protection.inumbo.net>)
 id 1qsJD9-0007OF-Hc
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 08:44:27 +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 358b04dc-6c00-11ee-98d4-6d05b1d4d9a1;
 Mon, 16 Oct 2023 10:44:25 +0200 (CEST)
Received: from CH0PR04CA0011.namprd04.prod.outlook.com (2603:10b6:610:76::16)
 by CH3PR12MB8933.namprd12.prod.outlook.com (2603:10b6:610:17a::22)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.35; Mon, 16 Oct
 2023 08:44:22 +0000
Received: from DS3PEPF000099DB.namprd04.prod.outlook.com
 (2603:10b6:610:76:cafe::3f) by CH0PR04CA0011.outlook.office365.com
 (2603:10b6:610:76::16) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.35 via Frontend
 Transport; Mon, 16 Oct 2023 08:44:22 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 DS3PEPF000099DB.mail.protection.outlook.com (10.167.17.197) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6838.22 via Frontend Transport; Mon, 16 Oct 2023 08:44:22 +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, 16 Oct
 2023 03:44: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; Mon, 16 Oct 2023 03:44: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: 358b04dc-6c00-11ee-98d4-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=A9FkYzSEFC7zwMqYsvnUfCvBxVW98EI77/u9jlZ/CMU5bk6zXvkKKhh4wiRdfAQ0iPP0TCadwryGRl+GG/Ttu7LuqEAOggHzBYGKA8HIEKXkIUObUmwJBIFwxmSq/M8UOTM0/soToYEw5W+r9j2EBqXm1+Y/QYDkRqOMBQ8jr0IWTyzBBSEExS31DMAiK8x2DOv2oKaf73YFf2p5KBv3ISNgfiM4BXGV7/upYPcSoGmzuS7HrkowkFb8LKW+4zx9KEyk7ippPp1ahurcLShq2QnlO0B3MoXotzbcb9LpTFuKRP3ISSNfGgjsiRIR5/itbw3VChTZmCyUxQXNEEMx6A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=MYcbKwUO7htz7Cu1Qpuikto4rkjlWi7xYiLx6TNI+9g=;
 b=bBz1ZoMeibs8xL35cFPRaxUFSistP8RPSoyeIejPyoPlWVgWvtkK/oyRWBYoHkslOmtSSSOxyyEfHkD0SyOFGIhCibGYaHBANO3tcoRde8eZ8RkIYJJWeZRAIbV1ztj/gILauwgnC0CfDVGGkhhNrrugd34koAB+iSx+E7TS2VKcpg+thN+BLK26l0CQSy4ud2F/evcVkZdXJwEek47qhu6UFHA0+QcciGwYZ000ZsHHaHX8mOa8NkDj6tvT4v7/sl0nKdNKuqlDW1zaEKQPABCJ8T9+cakEPW8o/51xalEp8WKv/wEsGxjXvLPbNcDHxPcE1TojRyifJHtiJhspGA==
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=MYcbKwUO7htz7Cu1Qpuikto4rkjlWi7xYiLx6TNI+9g=;
 b=uaZuNYInLCUxlRRYBtWfiMwzGmwCEQJbuKYga4FniKq7P7+IfLXGbvkad+cGNsBJimMO8SDK8myf8DyuA3yOR6vdh1webWYxO4Qjhy9619vpgmhRv7K0QtGszVeUyRRG6rv2Ahn1zfkh+0/cQ2je7Mm0R7EVjLNkAm/eoGDNhME=
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: <169101f8-0475-45b1-b2c2-60dadd88d3f0@amd.com>
Date: Mon, 16 Oct 2023 10:44:13 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v4 2/2] xen/arm: Enlarge identity map space to 10TB
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>, Alexey Klimov
	<alexey.klimov@linaro.org>
References: <20231013122658.1270506-1-leo.yan@linaro.org>
 <20231013122658.1270506-3-leo.yan@linaro.org>
Content-Language: en-US
From: Michal Orzel <michal.orzel@amd.com>
In-Reply-To: <20231013122658.1270506-3-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: DS3PEPF000099DB:EE_|CH3PR12MB8933:EE_
X-MS-Office365-Filtering-Correlation-Id: b071c4f2-d655-467d-97be-08dbce241851
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	16CQRt8Fc+krYYzRRoo/is4XrN0xSlRMFpxfJxaW36FbiodYgbVjPvMl1sgv0r2HaxXCFBRlgb1qZfX0LCYlgLSICk0PzLqFey5LBMyBduUeAkgFWNue6dj8b8SZG6QpvZ6b0l4TJBYXC2c9dwCwxwOS0PYhcWVjRB8BmZgBni9Lx193UxLI2p7iTHHW5+9dHJoiiKhWQHDsP8dxLzobTvhf0/ffFMllrWRwQcYbryUUOd3y4CRQ4RVES4iXJRoLE987CquV9a1h4kCkADC8bBGavzRBqgMfDvFz6OdEREZR938VXyQ+WUsb/9IVP/BrW1HY8bq0i0R04XrFOy0JXNYal4upwYaGUMGiX+o7/w3FJuNwELW/E71V6KNK0DZn1w+vaIw5VKnpKloe5P8rf0sRSeWOmdqUUEshrimROsBb7qtCdL25v43soZoAM6W82UJpOVsiVPXRq/2vqL++8gDcmbSoKDM8q7OjOoIoagCbLl7FhAPIpfTtbaLZXajmreDwY5bF6jZ6889s9YGNOiKUxWpJwVjRLWfVKl/+tU5B3pvrAgHeCCuFhVILC2tEz/8CcW2v6Dm4BbHY3ogaLshMeHRkPfs9wLmKRlzsX2zWm6RmCxvNf4sISf1gDrEq+iu6CwEFWdVa1cCqXXMMmlLya5r6QrN03qGfoO8TIK3hYnJRHfWmJ4Nc/LfbJqXHu6HewDVdIV/cdS36oekJdNvtU0cTDnn21PWAV4I9gFpuTKve+A6vgRWWZAa7y3tH6ZGv3INJxwxk4Lr9asGN+k+ZGxlr7g/ELlmoCrjCeJDXxAePwyKgdeoWOBeXWnK0Jjq7pF7S8q3L5oC0tDnsHQ==
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)(346002)(39860400002)(396003)(230922051799003)(64100799003)(451199024)(186009)(82310400011)(1800799009)(36840700001)(40470700004)(46966006)(40460700003)(40480700001)(31686004)(478600001)(110136005)(70586007)(70206006)(54906003)(16576012)(6666004)(47076005)(83380400001)(36860700001)(86362001)(31696002)(356005)(82740400003)(316002)(2616005)(26005)(53546011)(426003)(336012)(41300700001)(5660300002)(44832011)(81166007)(36756003)(8936002)(8676002)(4326008)(2906002)(147533002)(36900700001)(43740500002);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Oct 2023 08:44:22.4420
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: b071c4f2-d655-467d-97be-08dbce241851
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:
	DS3PEPF000099DB.namprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH3PR12MB8933

Hi,

On 13/10/2023 14:26, 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 10TB, allowing module loading
> within the range of [0x0 .. 0x000009ff_ffff_ffff].
> 
> Fixes: 1c78d76b67 ("xen/arm64: mm: Introduce helpers to prepare/enable/disable")
I don't think a fixes tag applies here given that 2TB was just a number we believed is enough
and all of this is platform dependent. This can be dropped on commit if committer agrees.

> Reported-by: Alexey Klimov <alexey.klimov@linaro.org>
> Signed-off-by: Leo Yan <leo.yan@linaro.org>
Reviewed-by: Michal Orzel <michal.orzel@amd.com>

~Michal


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 08:50:41 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 08:50:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617335.959845 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsJJ7-00014k-1d; Mon, 16 Oct 2023 08:50:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617335.959845; Mon, 16 Oct 2023 08: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 1qsJJ6-00014d-V3; Mon, 16 Oct 2023 08:50:36 +0000
Received: by outflank-mailman (input) for mailman id 617335;
 Mon, 16 Oct 2023 08:50: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=BBjo=F6=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qsJJ5-00014W-RB
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 08:50:35 +0000
Received: from EUR01-DB5-obe.outbound.protection.outlook.com
 (mail-db5eur01on0616.outbound.protection.outlook.com
 [2a01:111:f400:fe02::616])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 0e666b4c-6c01-11ee-9b0e-b553b5be7939;
 Mon, 16 Oct 2023 10:50:29 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DU0PR04MB9419.eurprd04.prod.outlook.com (2603:10a6:10:35a::16)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.35; Mon, 16 Oct
 2023 08:50:25 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%6]) with mapi id 15.20.6886.034; Mon, 16 Oct 2023
 08:50: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: 0e666b4c-6c01-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=j42IW7StNZqHdLx3eY3g1DEtAG6sFvk7aBTaXpt2DpDplOeTBgtHvVu/c6696UNB63Yi4LWVrLbSndadMNSSQgqDGPzmTPTLiPuJs13CiMFZaou8+TvO8VTGjUSxz8dvugf49Wivq78FYn52MGiUx1MsmZ6PTobUWt27syAeMM90+/JhDiQVZuyvnfKunBx884ZjYjZkSaYtL/aJaxEiUVPxkcq/WNa435B6UEVxePmkEtell2YInucuT2eGkvDV4gaKzVaIBUF2JXxT0525fn9xPU4PH4jdFzLzAiM0MclXMDscwl9cJgovEPhLP9els4zJgrnRyshhsKvziDYhQA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=IfeMYfM0EO4wUn0RXHvdyqjnNa9+vIbkLHRf20MejF4=;
 b=fpZGfMXtKm7GGwSUKJRi1jBRAoKRHbxQaw8qe6XsgfUV5yUaikrQBfQ0JJnIy2uF3f+PFbJ/LB+x5kF+Ia+Z8b16Kqx0IzOXePJsvp4wGdqWoX+mxOYt9U5fiIE5ZGfzoCT7yWwtfmfS2dWhh65DEH4f3Xc0oCYMcHuG3PpDf4e7+8cbT7VU6+xXT9SGLYN2E0D0fJy0o354Qw+UigOY5OqRzfaiHTB7ujyAP8/N4KBaINWqdTp4F5ramMVXfI4/m/RYBIaA05vK9UveBqC92MnA4P8gMZZDxqwYve3Ji1S4+aXyW8T0azf/FIjvUTpBXNi+hTez6BpKIj9K3bimSA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=IfeMYfM0EO4wUn0RXHvdyqjnNa9+vIbkLHRf20MejF4=;
 b=juEvY0Pr1HkNfws3IXbzS2yQwmTuH4Vgs/6sXC8XnXgBJwv7EXu17tY14vVdkUrgqgXHNjKEF3cwyVQ5BvJ8gws3I41SYi6KJoUUu0G/d53gb09juspyYYF2TMUBLdSNLV1Z/TuuNF4XtgqUV44oNHhqqAZSmi104oNSwGuTjX9uOpOowzX1zWBJ2NemekIT86wEXz1Qylq7E6B0hkJ+UJyLDkzzHlT7A4SbT29dFmVF7JgnSUHaWfQu3oP3ZdQY/KekFPk4Ipmi+zqMvGuh2Fuj26fFSY4N4TWAk/xs3TtPctIiLas+gR7k8Tc6rJcnL1U3IWNPtBcgxoEPoaMg4w==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <77096f5c-5e46-3cc4-e1e5-f62f66705dd5@suse.com>
Date: Mon, 16 Oct 2023 10:50: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 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>
 <b9966ac8-dfc6-b6c4-bf61-05a8b61f9ac3@suse.com>
 <ZRYelcEKD63xl2Uj@mattapan.m5p.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <ZRYelcEKD63xl2Uj@mattapan.m5p.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0157.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:99::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_|DU0PR04MB9419:EE_
X-MS-Office365-Filtering-Correlation-Id: e0900336-648b-4dab-5ebd-08dbce24efbc
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	rKqBnD17OhZ1kpWvL2uiz8uBsBj8uS+BGkAU1lwBFH1rRL9Q7EXX2ZzDmg2fPrWzB8peb8NhgYQBMDLBGgvfB2m4DqJpF1qcROrgHRZvAjfXXQcFI9Pec2zOVv4CG8lYgcTWBzmabwkjwYSv9iHaE0TWKyz4yqItJb4FhnObFNzUIGC+7PHyY+fv9+WRSP5slF71OZNwyLxNzb5idKhG71n4tURn2mz/D1jL5fgTMDhSg/LbnnRnFVpgS8SxsdcWM5CECucxVn/gwxELS3UsOas/4aCL5/SJQ6PFEbpe6zB9hD2tCals8kSD5n454wSJ5vOfcAaNILE1iahudq/YKX91Q5wa3onYYye3L2RQZZhNQvEsPOR+sz6CpNwH8u7keJjhOgOktagGKQCmFLtdt0MJhV0V7gU5flg4aoKqyXsUWYD076R7dQlcxqGNteFaDPT0AbzVt2IA1caa2oFAQ2CjVbOtO+Dc08NmHKSdUBjPZIaQV/BbjtIqDUe+1/vTf04llmETwhoYAfSRUHoJkcYIuQPuTv/ItNI60PB29OsiSVZrzFGD9lvBPceE3TNHTavDr4s7kjyOiWPfBq5h0f3QcOALSAhlu+x8TIUTWb7u64bJf4nSZoq2eZdFwj9EYMXZVUMdXkBjFmJswR8nXQ==
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)(366004)(376002)(136003)(230922051799003)(186009)(64100799003)(1800799009)(451199024)(478600001)(6486002)(6666004)(66946007)(54906003)(66556008)(316002)(26005)(2616005)(53546011)(6506007)(6512007)(4326008)(8676002)(8936002)(2906002)(5660300002)(41300700001)(36756003)(31696002)(86362001)(66476007)(38100700002)(66899024)(31686004)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?cjRpS3BFU3BCTWpvUlBycTRHaE4vS0F3WEFKWXJZTE0zOWdaZWRtMGhPM21x?=
 =?utf-8?B?elB1QlI3aWZjYVR4alVKUGFxQ3o1Q2l1dEhVTHJLQkZxN1dvS2hkWlJaalUz?=
 =?utf-8?B?eGN5NCt6WTlweVpjTjBOUUJINm9XTk8rdnNaUEFXb2UvT0NVZHM0cDkxdHMr?=
 =?utf-8?B?ZCtkVUF0MERTQktURy9remJ5dFQ0OURkcW53K1NabDFOUytiMVB3ZDhJc3Qx?=
 =?utf-8?B?aHdpQ1pRT0lOc2drL2xoMitOMkdPYVpDSnVVWHZ2c1g2Q1BsSFNlRDZEaDJU?=
 =?utf-8?B?eWdOakM2cEk2OU1VK3ZEV21OanE0a05oQ1owUWg1ZXBQMmtkbVdHK2taQnFM?=
 =?utf-8?B?Q3B4cDlFeUlyczduUXNta2I5eldhSXlDdHJLdUU5NktWeHRKZmJKb0lVQitN?=
 =?utf-8?B?YlRHR1VITlo1VE1pRjllUUdqOFBuMmRXT2NXdHVDQ1huUENQTG81SVBYRG9p?=
 =?utf-8?B?QVc4V3BhZlV0VDhMWk5Ma2RUOENWMEtFckhKOXhnNXdCd2F1a0poTWJlM0Rq?=
 =?utf-8?B?WHk2OGNZdkwyU0ZGR2RlMkNaTzc5c3hrcURDZ0xTSmx0RUloR0lSemVNWTVl?=
 =?utf-8?B?U2xqQlN5d280bWwrb2lMOG1qOVM4dkUvWThZblNDQmIweHBuTnBhNWFmNEpw?=
 =?utf-8?B?ZVhmalZWbzBBaGJDSUxKcWpoV2tEN3dna3R0TTJqWWRUNklHelpUYktMWXBV?=
 =?utf-8?B?SkhqS0RvYm9sb0JBVmJ1eU1YOEZnT1VjOC9lYUl1YngvakVLYVFwTDdjT21n?=
 =?utf-8?B?VFBZT3gxNlphL3UvSDV2R1ltU29pRXBYcE82RWR6VWIyb3dZQk5GcmFxYmRR?=
 =?utf-8?B?OXBOUm16OUJrK2xWc0Y5SDV1UlpnQ29lUzBFclVZZC81TWFTRml0V1lUMDVQ?=
 =?utf-8?B?d2syRkNhemdKTUY2MXNkb2xSbSsyM20wWnV0WmZTMnN6eUFOSmFNKzFWcnNO?=
 =?utf-8?B?eTEyQkhuWUFZTExza05TWlVLOFliRlBlZmJkTVFNTFBaR1Q1YmgvSTA1K2No?=
 =?utf-8?B?aGJyMFBReWlKbE1uSUxHYWxmUmJVMkdrR1huSTNXMHdDZ3p4RHVJVEtQSEtY?=
 =?utf-8?B?VFZsQjVjTHE4UnR3ZmFqUm5janNFajhzWXBnYUMrZTJVZmhsTmZxSktGVUts?=
 =?utf-8?B?QXZWU1NvcHFjK29GNEoyaGd0L2x3VzYwQjh1d3U4d3l4ZjE2TGEzVUt2Wnkr?=
 =?utf-8?B?Mm1ubi9CNGZOV2N4VHNYS0poam80bWFHR25mM3FCSWxHQW1SeS9LdGZNSVRp?=
 =?utf-8?B?VzZBSEZBWXZFOHFmaGFUdGZFUTZYb0NKWExYTW1QRkZDOTF2ZDZFQ2U4UXFq?=
 =?utf-8?B?TDQ0UjNiMWRseW9uYVVIZ1NLdUpmVVVSRzg3L2I2Ulk4T0taYjJXSitab1Rh?=
 =?utf-8?B?MWlyT1VqOWRITFJEdCtkTzYwajdrTWtLZVNkVklHUlByNDFFUElhY1F6TGp5?=
 =?utf-8?B?bjAxaCt2aldtNi9vY1lIbE0yT0l3WE9LOHhpdnZ3a0c2T3k0WFFGUkRXelI1?=
 =?utf-8?B?SkZVcFU5a2trR3JFUlhlc3h4Sk0yMHV0SWFFVlUzYkNVL0RQZUhMK2RzcXhO?=
 =?utf-8?B?czVoVUxGZ283cmdyMDZGZEZyMXo4VHpYNzNmK21iME1JRHh3cm5iUDZyS0NQ?=
 =?utf-8?B?SEc1SHM5MUxVWDM4WkQvQWZOT0tET3FKdndYMzI1bGNvdDZVSFEzRy9ZTW5x?=
 =?utf-8?B?ME9YMXBveW5nL1VmZjhIdUVkRWpVOVdFUjJkSCt3NzVHWnlrMEtoaCtNT1Fr?=
 =?utf-8?B?Rk00YmJtZGZrcFJMMXd6dmJyWkhUaFA1MTB3ZWNSNmZyOUVJSXNBOUIyelUz?=
 =?utf-8?B?Q3E5UG5YaEE4THo2MWNIcjFJcVZZQTk3NW1zYTEwd29FQ01pTklrT0JVQmd6?=
 =?utf-8?B?eTdVZkFtTWw3VnBqeERDWllkZHZ5QWJ4WWNoOXJJUjNkRHovQ2xIOCtTZHpN?=
 =?utf-8?B?U2dMNnF5YjBlM2dlYW5jay9wVkw0NDNSR1U0Rnc2STFxUmlXeGgrVEdjdWdR?=
 =?utf-8?B?bVVGekp0NENDVXphMmJmdzF1QjdqbUdSR2FhZXRNaGpMRlh3VmU5dEkrSjI1?=
 =?utf-8?B?d2ZiaHJtRTVFNTI2UUYvRzJMV1RKVUMrNHdvQUgycCtrS3h1cXVnOXozZ2lN?=
 =?utf-8?Q?xbL8iZEis93jhnInqftcXCZf5?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: e0900336-648b-4dab-5ebd-08dbce24efbc
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Oct 2023 08:50:24.0327
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: TEBEs+SlRF8kj2xXvd8WhdGhvH5KeGNnO41CaOWPw5O8++z8A4pT1H/mga0zD4GsMKNPIM6/7GWyg/QkeoW4lQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR04MB9419

On 29.09.2023 02:47, Elliott Mitchell wrote:
> 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.

Well, that's owing to the fact that trap_info itself doesn't respect name
space rules. It should have been xen_trap_info.

> So might consistency be a rather more important virtue?

I don't think so.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 08:53:12 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 08:53:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617339.959854 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsJLb-0001eE-H3; Mon, 16 Oct 2023 08:53:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617339.959854; Mon, 16 Oct 2023 08:53: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 1qsJLb-0001e7-EJ; Mon, 16 Oct 2023 08:53:11 +0000
Received: by outflank-mailman (input) for mailman id 617339;
 Mon, 16 Oct 2023 08:53:10 +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 1qsJLa-0001e1-Fo
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 08:53:10 +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 1qsJLZ-0004Ij-TP; Mon, 16 Oct 2023 08:53:09 +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 1qsJLZ-0004CF-Ne; Mon, 16 Oct 2023 08:53: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=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=qlPTGGpAQDKNEQ/xe9+SpV5bhZmTmziqlRC1gPi/3T4=; b=S90a8r8dODtcfNG0UmL6dPgYKW
	HmJ7NDX0ckzpF4M22mwmlG4LVimoGMpZPNAYXFBbWOzbD76fVELMFMHhXDzQtaqLTM1FZeG+6qwHS
	vKryUUU5OAqppy0OGhdj/0pb9tXGZrlhCdbF3fO6zAn9f08ATzpYqXrf/KIeT7/tm7qg=;
Message-ID: <d2a58398-e381-4b0d-b5cc-ab1ed7f6c7fb@xen.org>
Date: Mon, 16 Oct 2023 09:53:07 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN PATCH 01/10] arm/gic: address violations of MISRA C:2012
 Rule 8.2
Content-Language: en-GB
To: Federico Serafini <federico.serafini@bugseng.com>,
 xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com, Stefano Stabellini <sstabellini@kernel.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Henry Wang <henry.wang@arm.com>
References: <cover.1697207038.git.federico.serafini@bugseng.com>
 <e55bfe55e0c34e96692f397ff69365bc0819fd90.1697207038.git.federico.serafini@bugseng.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <e55bfe55e0c34e96692f397ff69365bc0819fd90.1697207038.git.federico.serafini@bugseng.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi,

On 13/10/2023 16:24, Federico Serafini wrote:
> Add missing parameter names, no functional change.
> 
> Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
> ---
>   xen/arch/arm/include/asm/gic.h | 12 ++++++------
>   1 file changed, 6 insertions(+), 6 deletions(-)
> 
> diff --git a/xen/arch/arm/include/asm/gic.h b/xen/arch/arm/include/asm/gic.h
> index f1ef347edc..03f209529b 100644
> --- a/xen/arch/arm/include/asm/gic.h
> +++ b/xen/arch/arm/include/asm/gic.h
> @@ -246,7 +246,7 @@ void gic_set_irq_type(struct irq_desc *desc, unsigned int type);
>   
>   /* Program the GIC to route an interrupt */
>   extern void gic_route_irq_to_xen(struct irq_desc *desc, unsigned int priority);
> -extern int gic_route_irq_to_guest(struct domain *, unsigned int virq,
> +extern int gic_route_irq_to_guest(struct domain *d, unsigned int virq,
>                                     struct irq_desc *desc,
>                                     unsigned int priority);
>   
> @@ -330,11 +330,11 @@ struct gic_hw_operations {
>       /* Initialize the GIC and the boot CPU */
>       int (*init)(void);
>       /* Save GIC registers */
> -    void (*save_state)(struct vcpu *);
> +    void (*save_state)(struct vcpu *v);
>       /* Restore GIC registers */
> -    void (*restore_state)(const struct vcpu *);
> +    void (*restore_state)(const struct vcpu *v);
>       /* Dump GIC LR register information */
> -    void (*dump_state)(const struct vcpu *);
> +    void (*dump_state)(const struct vcpu *v);
>   
>       /* hw_irq_controller to enable/disable/eoi host irq */
>       hw_irq_controller *gic_host_irq_type;
> @@ -369,9 +369,9 @@ struct gic_hw_operations {
>       /* Clear LR register */
>       void (*clear_lr)(int lr);
>       /* Read LR register and populate gic_lr structure */
> -    void (*read_lr)(int lr, struct gic_lr *);
> +    void (*read_lr)(int lr, struct gic_lr *lr_reg);
>       /* Write LR register from gic_lr structure */
> -    void (*write_lr)(int lr, const struct gic_lr *);
> +    void (*write_lr)(int lr, const struct gic_lr *lr_reg);

Are the parameters name meant to match the declaration of the callbacks?
I am asking it because I see there are some inconsistencies between the 
declaration in GICv3 and GICv2. So this may want to be harmonized.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 08:56:07 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 08:56:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617343.959864 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsJON-0003E4-0r; Mon, 16 Oct 2023 08:56:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617343.959864; Mon, 16 Oct 2023 08: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 1qsJOM-0003Dx-Tp; Mon, 16 Oct 2023 08:56:02 +0000
Received: by outflank-mailman (input) for mailman id 617343;
 Mon, 16 Oct 2023 08:56: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 1qsJOL-0003Dr-LA
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 08:56: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 1qsJOK-0004Ll-Uv; Mon, 16 Oct 2023 08:56:00 +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 1qsJOK-0004MG-Oh; Mon, 16 Oct 2023 08:56: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=TayO3p1Si2RUSJQFk5L+slOxZhQ41jJCNd3m/yP23mI=; b=xXrUWre0jwl/7Pjs8dg7U2uNUu
	MtdK3Ad4NbR40i03pf6GKl4/VrXYZw2P7zNd8Vt1RfaTB0oWRp/tqImkzoIk1zoAll+oPSH55IjN0
	b4uxxj3V0BgBmQkujeuA0okObrpVfnz+KKJl290eWDAKHLzt1hhyq9ge7ia1vbpLdwhM=;
Message-ID: <e0d25773-8494-466a-82f8-8f01533d7c9a@xen.org>
Date: Mon, 16 Oct 2023 09:55:59 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN PATCH 02/10] arm/cpufeature: address violations of MISRA
 C:2012 Rule 8.2
Content-Language: en-GB
To: Federico Serafini <federico.serafini@bugseng.com>,
 xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com, Stefano Stabellini <sstabellini@kernel.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Henry Wang <henry.wang@arm.com>
References: <cover.1697207038.git.federico.serafini@bugseng.com>
 <3b28dca993cac9391b997c1744218cf4062907df.1697207038.git.federico.serafini@bugseng.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <3b28dca993cac9391b997c1744218cf4062907df.1697207038.git.federico.serafini@bugseng.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi,

On 13/10/2023 16:24, Federico Serafini wrote:
> Add missing parameter names, no functional change.
> 
> Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
> ---
>   xen/arch/arm/include/asm/cpufeature.h | 8 ++++----
>   1 file changed, 4 insertions(+), 4 deletions(-)
> 
> diff --git a/xen/arch/arm/include/asm/cpufeature.h b/xen/arch/arm/include/asm/cpufeature.h
> index 8011076b8c..41e97c23dd 100644
> --- a/xen/arch/arm/include/asm/cpufeature.h
> +++ b/xen/arch/arm/include/asm/cpufeature.h
> @@ -127,8 +127,8 @@ static inline void cpus_set_cap(unsigned int num)
>   struct arm_cpu_capabilities {
>       const char *desc;
>       u16 capability;
> -    bool (*matches)(const struct arm_cpu_capabilities *);
> -    int (*enable)(void *); /* Called on every active CPUs */
> +    bool (*matches)(const struct arm_cpu_capabilities *caps);
> +    int (*enable)(void *ptr); /* Called on every active CPUs */

How did you come up with the name? The void * seems to be named 'data' 
by the declaration and I think we should be consistent, otherwise this 
is defeating the spirit of MISRA (assuming this is not a violation).

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 08:58:12 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 08:58:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617348.959875 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsJQR-00041D-Fo; Mon, 16 Oct 2023 08:58:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617348.959875; Mon, 16 Oct 2023 08:58: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 1qsJQR-000416-Bi; Mon, 16 Oct 2023 08:58:11 +0000
Received: by outflank-mailman (input) for mailman id 617348;
 Mon, 16 Oct 2023 08:58: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 1qsJQP-000410-SR
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 08:58: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 1qsJQP-0004Pt-Ci; Mon, 16 Oct 2023 08:58:09 +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 1qsJQP-0004P8-6W; Mon, 16 Oct 2023 08:58: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=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=/FV0ULCLRUkz6s3k9gTZAifjCN5+iB1CIx1EQoAd7SA=; b=vuq/5iz8aZV6xMw5ZMWbRoMP2Z
	xkuV5ySyR+/bvcDVzuqZIFL5WuuCilUbcuDwacAnAdebl9J8SjKJycM2EOjhiasYbGPrlS4jF0Qv0
	epM0r2t2BEA/2auu0Keo4OkJ1VmG2mR45ZybwYLwjA3ehbnOuN171MIke93gfC/f03m8=;
Message-ID: <0e5a8d7a-4003-41a1-a041-8c8765351cb6@xen.org>
Date: Mon, 16 Oct 2023 09:58:07 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN PATCH 02/10] arm/cpufeature: address violations of MISRA
 C:2012 Rule 8.2
Content-Language: en-GB
To: Stefano Stabellini <sstabellini@kernel.org>
Cc: Federico Serafini <federico.serafini@bugseng.com>,
 xen-devel@lists.xenproject.org, consulting@bugseng.com,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Henry Wang <henry.wang@arm.com>
References: <cover.1697207038.git.federico.serafini@bugseng.com>
 <3b28dca993cac9391b997c1744218cf4062907df.1697207038.git.federico.serafini@bugseng.com>
 <alpine.DEB.2.22.394.2310131610440.965337@ubuntu-linux-20-04-desktop>
 <alpine.DEB.2.22.394.2310131633520.965337@ubuntu-linux-20-04-desktop>
From: Julien Grall <julien@xen.org>
In-Reply-To: <alpine.DEB.2.22.394.2310131633520.965337@ubuntu-linux-20-04-desktop>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit



On 14/10/2023 00:34, Stefano Stabellini wrote:
> On Fri, 13 Oct 2023, Stefano Stabellini wrote:
>> On Fri, 13 Oct 2023, Federico Serafini wrote:
>>> Add missing parameter names, no functional change.
>>>
>>> Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
>>> ---
>>>   xen/arch/arm/include/asm/cpufeature.h | 8 ++++----
>>>   1 file changed, 4 insertions(+), 4 deletions(-)
>>>
>>> diff --git a/xen/arch/arm/include/asm/cpufeature.h b/xen/arch/arm/include/asm/cpufeature.h
>>> index 8011076b8c..41e97c23dd 100644
>>> --- a/xen/arch/arm/include/asm/cpufeature.h
>>> +++ b/xen/arch/arm/include/asm/cpufeature.h
>>> @@ -127,8 +127,8 @@ static inline void cpus_set_cap(unsigned int num)
>>>   struct arm_cpu_capabilities {
>>>       const char *desc;
>>>       u16 capability;
>>> -    bool (*matches)(const struct arm_cpu_capabilities *);
>>> -    int (*enable)(void *); /* Called on every active CPUs */
>>> +    bool (*matches)(const struct arm_cpu_capabilities *caps);
>>
>> all the implementations of matches I found in xen/arch/arm/cpuerrata.c
>> actually call the parameter "entry"
>>
>>
>>> +    int (*enable)(void *ptr); /* Called on every active CPUs */
>>
>> this one instead is "data"
> 
> I committed all the other patches in this series to the my for-4.19 branch

I have left some comments in patch #1. Given this is not the latest 
master, I think we should consider to remove/replace the patch rather 
than introducing a follow-up.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 09:03:03 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 09:03:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617366.959884 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsJV4-0005Wb-Bs; Mon, 16 Oct 2023 09:02:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617366.959884; Mon, 16 Oct 2023 09:02: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 1qsJV4-0005WU-9I; Mon, 16 Oct 2023 09:02:58 +0000
Received: by outflank-mailman (input) for mailman id 617366;
 Mon, 16 Oct 2023 09:02:57 +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 1qsJV3-0005WO-NF
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 09:02:57 +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 1qsJV3-0004Xp-0M; Mon, 16 Oct 2023 09:02:57 +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 1qsJV2-0004hJ-Ru; Mon, 16 Oct 2023 09: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=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=H9QYC46kR+1MBbhFHgbRK5jNzYmS36utkZ0fLS9FiOs=; b=TgLlUKgAuYl3zcTTJIi6xINUsq
	6hEHNZoplN+beS7XK3oPy1OApHAqWP8OIA1UcTnJlwVvpNyckilq9xNfS7is4DNFO2DFhW8DblPc9
	enSbN39/njimQB/ZRbbOjQkwsxQWpjuk69/bS3oBDTKwZg2ayGxTUeis79KGxWexkwuo=;
Message-ID: <7db6d930-8a06-4a1b-b668-94df62972caa@xen.org>
Date: Mon, 16 Oct 2023 10:02:55 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN PATCH 07/10] arm/traps: address a violation of MISRA C:2012
 Rule 8.2
Content-Language: en-GB
To: Federico Serafini <federico.serafini@bugseng.com>,
 xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com, Stefano Stabellini <sstabellini@kernel.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Henry Wang <henry.wang@arm.com>
References: <cover.1697207038.git.federico.serafini@bugseng.com>
 <dbc0e965cd9f93848d27e7ebf0ffcfca05499d58.1697207038.git.federico.serafini@bugseng.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <dbc0e965cd9f93848d27e7ebf0ffcfca05499d58.1697207038.git.federico.serafini@bugseng.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi,

On 13/10/2023 16:24, Federico Serafini wrote:
> Add missing parameter name, no functional change.
> 
> Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
> ---
>   xen/arch/arm/traps.c | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/xen/arch/arm/traps.c b/xen/arch/arm/traps.c
> index ce89f16404..5aa14d4707 100644
> --- a/xen/arch/arm/traps.c
> +++ b/xen/arch/arm/traps.c
> @@ -1236,7 +1236,7 @@ int do_bug_frame(const struct cpu_user_regs *regs, vaddr_t pc)
>   
>       if ( id == BUGFRAME_run_fn )
>       {
> -        void (*fn)(const struct cpu_user_regs *) = (void *)regs->BUG_FN_REG;
> +        void (*fn)(const struct cpu_user_regs *regs) = (void *)regs->BUG_FN_REG;

Now the line will be over 80 characters. I think we should introduce a 
typedef. This would also help in the longer run to validate that the 
function passed to run_in_exception_handle() has the expected prototype.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 09:05:28 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 09:05:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617370.959895 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsJXS-0006Gl-PW; Mon, 16 Oct 2023 09:05:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617370.959895; Mon, 16 Oct 2023 09: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 1qsJXS-0006Ge-LQ; Mon, 16 Oct 2023 09:05:26 +0000
Received: by outflank-mailman (input) for mailman id 617370;
 Mon, 16 Oct 2023 09:05: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=/fZZ=F6=citrix.com=prvs=646b5f8ff=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qsJXR-0006GW-1J
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 09:05:25 +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 21ad2d8d-6c03-11ee-9b0e-b553b5be7939;
 Mon, 16 Oct 2023 11:05:21 +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;
 16 Oct 2023 05:05:18 -0400
Received: from MW4PR03MB6428.namprd03.prod.outlook.com (2603:10b6:303:123::8)
 by CH2PR03MB5205.namprd03.prod.outlook.com (2603:10b6:610:9b::10)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.36; Mon, 16 Oct
 2023 09:05:16 +0000
Received: from MW4PR03MB6428.namprd03.prod.outlook.com
 ([fe80::831e:28d1:34dc:f518]) by MW4PR03MB6428.namprd03.prod.outlook.com
 ([fe80::831e:28d1:34dc:f518%5]) with mapi id 15.20.6863.032; Mon, 16 Oct 2023
 09:05: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: 21ad2d8d-6c03-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1697447121;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=iG4vV8SUfVkWxaM0YcZXftPQKXDuDMAU66rJgEcW71s=;
  b=AmjIP0z2soBKW9qpJzozn7zwJHbLxBNNnQYMutTIotVQzvrpdA0XaAPp
   TYpfk6x35M2kTIjepqoHnqcGnHAPbPQpACHSKRx7bO1GYbyQqCK5x+pfX
   nmYXhJ/45kbfWDYcuV7Is+mrZiWOi5lrvVbNZxs/OfGfG6scx5du94hv6
   s=;
X-CSE-ConnectionGUID: O2JRFuLYQC2llNRhLWSpkw==
X-CSE-MsgGUID: 5dS9rIoNTbG+UoOOdZiWUA==
X-IronPort-RemoteIP: 104.47.70.101
X-IronPort-MID: 125674779
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:VuDy5qr3e+NrNw6LEM6dcVM1Wp5eBmKDZBIvgKrLsJaIsI4StFCzt
 garIBmAb6qDYjf3f9B3PY20908F7MLXx9BhHlFtri5gFitE9puZCYyVIHmrMnLJJKUvbq7FA
 +Y2MYCccZ9uHhcwgj/3b9ANeFEljfngqoLUUbOCYmYpA1Y8FE/NsDo788YhmIlknNOlNA2Ev
 NL2sqX3NUSsnjV5KQr40YrawP9UlKq04GhwUmAWP6gR5waGzidNVfrzGInqR5fGatgMdgKFb
 76rIIGRpgvx4xorA9W5pbf3GmVirmn6ZFXmZtJ+AsBOszAazsAA+v9T2Mk0MC+7vw6hjdFpo
 OihgLTrIesf0g8gr8xGO/VQO3kW0aSrY9YrK1Dn2SCY5xWun3cBX5yCpaz5VGEV0r8fPI1Ay
 RAXABdXTCqtmsaH+ZnhTu1KvMQHE/LzP5xK7xmMzRmBZRonabbqZvySoPV+g3I3jM0IGuvCb
 c0EbzYpdA7HfxBEJlYQDtQ5gfusgX78NTZfrTp5p4JuuzSVkFM3j+CraYKMEjCJbZw9ckKwv
 GXJ8n6/GhgHHNee1SCE4jSngeqncSbTAdhPSuLkqaE76LGV7jEfM0wMdFydnfOWyXO5fPVTG
 U0rxwN7+MDe82TuFLERRSaQpXeeuxcGVtl4Eusk6RqMwK7Z/waYAGcfSjdLLtchsaceQT0sy
 0/MnN7zAzFrmKOaRGjb9bqOqz62fy8PIgcqZyAeShAey8L+u4x1hRXKJv54C7K8hNDxHTD2w
 hiJoTI4irFVitQEv428+V3EmDuqqoL+Uh8u5g7XU2Sm6St0fIegIYev7DDz7/xNMYKYRVmpp
 2Uflo6V6+VmJYGAkmmBTfsAGJmt5u2ZK3vMjFh3BZ4j+j+xvXm5cuhtDCpWIU5oNoMOf2Dva
 UqK4QdJvsYLZT2tcLN9ZJ+3B4Iy16/8GN/5V/fSKN1Tfpx2cwzB9yZrDaKN413QfIEXuflXE
 f+mnQyEVB721YwPIOKKetog
IronPort-HdrOrdr: A9a23:kWdZpK2tP6mQDTNe3QVHdwqjBEQkLtp133Aq2lEZdPU0SKGlfg
 6V/MjztCWE7gr5PUtLpTnuAsa9qB/nm6KdpLNhX4tKPzOW31dATrsSjrcKqgeIc0HDH6xmpM
 JdmsBFY+EYZmIK6foSjjPYLz4hquP3j5xBh43lvglQpdcBUdAQ0+97YDzrYnGfXGN9dOME/A
 L33Ls7m9KnE05nFviTNz0+cMXogcbEr57iaQ5uPW9a1OHf5QnYk4ITCnKjr20jbw8=
X-Talos-CUID: 9a23:mDc0S2DniGOB4+T6Ew491nQ6B+QUS1aHyHP2GU+cNl1xS6LAHA==
X-Talos-MUID: 9a23:Pif4ZwXmcRdSnJnq/GLgv2B4FcBO366BS30KtrIKici7CAUlbg==
X-IronPort-AV: E=Sophos;i="6.03,229,1694750400"; 
   d="scan'208";a="125674779"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=j2gBcT08NsK63AZ0W+MyzLwDkScfQLUmyOjDL293y8a6R/evM4M0P13cLZhnA3j51XLK83m3s2qLFyd/34augYIn+ycDXMFPuaHIN7vjFZWe9jOt2Jz3s5RR6VYiBGmFNq9EV8FZuhBS8m3PX5vWS2hFd6+s050Xw1z1JYTMRClhRLmaUN4Ze8yYGetXXLiy7leBNZal9XtYt6EC8K5Wdhbe5y0vU9vX+9NIu2rdDU+TW5tHbHd0Ss/q/UGJb8tkfvtc/acM/kwLCDBPfEgkzzvG7XOMNFw2VAJzGALUF1Em7kNHbTGAuisWp2CrDpdA2Bgv1UJO6+0kPd5yOD4HYA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=nQNWR/uKHtslOLw/DN5/pH6PYcISdgRH0Qk5gK7rFDw=;
 b=L/ry/2xGl0OtKb+ZPK50280Rz53xaMDEqeHrW3ys3PJ3HUUYz+uCGseH1e0w7+eremQuzjspaJbYoc62/jHhAMOdzPH3rUhez3Z0f59m+sKpB2uMKyRsoHi9u3hrFh1SZvJlzI9murSQOvpkCI/iGAkjLyEXxVopOAGFhsk9BNqpssBTMlsswDHedz0QN5zmABcRC5VHCOhog6Y9F/1wTcimD3p5jMI0wV8sL5mTs94jl3Ms6f0WBXQggY1ecuHNAvx0Lpovw9ci1lSSWKebf/ZAmQXiVRFdEbqIy2P6h0L03iqQFwbCRoq0NaNLnChbpN0dbvW9o3D93yjx4aPRCw==
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=nQNWR/uKHtslOLw/DN5/pH6PYcISdgRH0Qk5gK7rFDw=;
 b=o2ZCb7iezMDTLQe/Vm9vMhkhe+Hvih1jKbos62R7mnsyb0X/ECqdWnrnYVSRzFEjZDNF1tvgGhI3MzrxmK66Ilei159zVvAf2XKMesknaPHdcj6zOEJVaF1u8DZRAXH3X6+MtIqe0ZbXhF46RWOFFIkGF5zPxVTHtNmt73hlWxc=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Mon, 16 Oct 2023 11:05:10 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>
Cc: linux-kernel@vger.kernel.org, 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: <ZSz8xu8E9-02Ej8D@macbook>
References: <20221118154931.1928298-1-marmarek@invisiblethingslab.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <20221118154931.1928298-1-marmarek@invisiblethingslab.com>
X-ClientProxiedBy: LO4P123CA0185.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:1a4::10) To MW4PR03MB6428.namprd03.prod.outlook.com
 (2603:10b6:303:123::8)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: MW4PR03MB6428:EE_|CH2PR03MB5205:EE_
X-MS-Office365-Filtering-Correlation-Id: cc68af04-4af9-4031-76de-08dbce270359
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	qNjqqzQ0yJIAIdW3tH6AI8TTMyblLR9l+GCBkQPvQcyhkQxAFqPtAx53bWJl2cg3R2qHopiauF6f9eYofsk9we/I3GGMIKAdchM+WLKEVXTwdS+K0QAsOzj0xPdFC3NEfmPH8vB/3GMAP3KvaFsboHRZ1K4yaFDC+ImJQRcVIVeLBaw8VDKbBblc360b9QiFFh3TNLszWAgNCbcMYJNzisXf6iNliFQzRFxCFm7in4OsMyLrUgbo1FK2rUi8N+Cqn5QDpU3Qew8mUDCAy2PR6SlQ2kavPWPNF4hZOmC56GMR9KIM+sJ2dN7AP16DHdCA2uqk5NVlwbEkWu0ESygzEgsGgxIFxN+WO341yZ4rBQ/eJeYOFhWSCk1kF20rO4gzLP9p57Jqm8uFmjxT97slZVrHGywgfutfnopnI6W+ykcdoErILvryAn8wjY7Lwo+RPRlRKcGEq8fXOhrajyAEPxqV58my2m6AkV7rNFuoIALFNfOC3amdNDOeBk/QgH4FAkLa2dpe6tTjYQzdhwtNbo+0oFkXXiaqK/21ILPcPRCJnrNC9ovjr0yJ8P4akzYD
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)(346002)(136003)(396003)(39860400002)(366004)(376002)(230922051799003)(64100799003)(451199024)(1800799009)(186009)(85182001)(33716001)(82960400001)(86362001)(38100700002)(6916009)(2906002)(6666004)(478600001)(9686003)(4326008)(5660300002)(6486002)(6506007)(41300700001)(6512007)(8936002)(8676002)(66476007)(83380400001)(316002)(66556008)(66574015)(26005)(54906003)(66946007);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?ZXJ3VHRobzNWczY2UlF0UjhRU0VmSkprRkxMQU5rTUFiUzNremszNWQwU0Vo?=
 =?utf-8?B?bFp6MDhhVkRKLzdNcmx6cXZqME9lbktnRHUzVHJkUTlONUF6cUswVzdRaGRi?=
 =?utf-8?B?MzVOZDJ6Z1cwbDEyRVN6d3RuY1lOUFdDN291TkR1VURQKzlMWU1tU0trUEt0?=
 =?utf-8?B?NmRJeTJ6am5WTXJkSFU0ZGo2MDJtbjRSNWw1N2NNekxGZUpYampTTjhnOWxq?=
 =?utf-8?B?TUgrelV0dEVxNGp0TWdUaHNKbFdFOVZoZW5aa0MvTkhiRFZtWDdxTUoraThu?=
 =?utf-8?B?dmk3TGJueEMzdFlMUXZKeUREU0oxd0JScWU5Z2xsYUs3L3Q0R1ZrMlVwbmZw?=
 =?utf-8?B?OTFiZlFpeklyQjFmaVE0NUY5alBlY1dCRzdUdWJLMWpHdEd0TlN6V2hGTWM5?=
 =?utf-8?B?MkZQMVpMVWYycHpEOU9NZ1BFNVVIT01YR0tZcEFweEpkYXZkY0JNMEdadlNR?=
 =?utf-8?B?V3VvZzEyR2JZTThnVnIyTVNyU2dDOWpMS3lOdEpxK1pybElyT1c4U3phWnZV?=
 =?utf-8?B?dFZDWmxaSUpMeWZ2dXVld2M5MjZxZzR4ZzJxdUtMamttVjY3QzdnZmtFMFBk?=
 =?utf-8?B?L2pmalRhODVnd3BLazNRTVFUT2Q4N3hWT3d5ZXQySlI4ZDQ4Q2lwVUlQSExr?=
 =?utf-8?B?cm90c0VsVVdxdmkrSGlhRXRyMUlOT0FhdzdIcnE5RUNSNkFYREpEWjllVklY?=
 =?utf-8?B?RHJQd3FFS00zK0R6SDdtTzkvQ3oyRjlxY1Rkck02bFRFcXQ2OTFSQlBWM0I2?=
 =?utf-8?B?dlpTd010dmMrMTdrUDcrQkc4dUFiTGs1OUZoVkQ5NHAzWkU1dmtJSU5mSklx?=
 =?utf-8?B?cEo3OHl2cFIwVmZRUHk5Q0VnL0IrcVA2VUk3Ym5WZTVHVGNIU2NZN2s2dTIz?=
 =?utf-8?B?UHVqREpnZ3JYZjgvRlYzRnBJZEFmQkFVcVdSU0hMOU9MbmRRa3NpczA4alNh?=
 =?utf-8?B?UUdMU1UySXdqNmdmWWR3U0ZKRFBSOHdPZ3dPdG5QUEFPRVZOVUVvZXF0Vk5O?=
 =?utf-8?B?ekVMck1FdGdDa0EwNngrNzU1SXNkbXBZb25JM3RVMVc1OW9qUFBxTkdMazEv?=
 =?utf-8?B?WlRoN1U0VDhIK0hZS0xucmllMkhUTUFXZXo5Lzhndk1yanFYQ29La0FaaDlF?=
 =?utf-8?B?YXloTG8vS2Y0bE93OVErZWYwT2NUV1MxaVppbGNXSGYzZyswRTQ0aUloazRG?=
 =?utf-8?B?blNWQ0NJeFRiRUJlV1FzY2pUZG5UdHkrZDBkcFVKUTFacyt1T2JhSG83NXJr?=
 =?utf-8?B?QUY4MzQ3bzAydnMyMGw5SGVDMmdOYUx3b2Rad0g4V2UyTVlSKytqSEkyM2hH?=
 =?utf-8?B?aFlPOENIN1M1Wm15Lzgvci9lcXlXTnpYYmxBd1UzSnZKRktxVFhoMUlwRys5?=
 =?utf-8?B?QVB5YTNDVEordnYzL1VYUWszTFVaUW1OWEZlalBEdVpscnYrL1Z5WGVibElh?=
 =?utf-8?B?bS9tR0ZHeG9RNDRCQmNzU1UwaHJGMWFTUnVoOHJGb0FLYVNHeFdTTjhsTWk0?=
 =?utf-8?B?Mm05bnBVODNXQ0ZWNnN3SHFCZis0NHY3TStiOGxoc2N1bThLMVVqQnl1WDBT?=
 =?utf-8?B?SlBzVVE2cFIrYlpBLzhhR0ZDeEVRS1NxNURGWnlVMnVyZExERms3eCtoY25o?=
 =?utf-8?B?WEdtc2dJZ1dIWExsUU85d1RnYkl0U0xXa2VTZlgzeGxDTGNNMjRsRDdrY2tU?=
 =?utf-8?B?Y0xGTHZXRHNpK1greWdMV2x4c0pBbFRtUzVXQ0R6dTMrNEVzWXJibmtyUk5P?=
 =?utf-8?B?U3grbzAwTG1DTHVLWXBVb1lFWFEyRWl5R3BTcnFWR2VJbFI5cXBHL3lMZ2ln?=
 =?utf-8?B?NzlEVWJaS0Z2R2hNbVVPME1pRlZwZHQ5SWsrWjlMYlJqemdRbHZEdVZHN01P?=
 =?utf-8?B?aUpnTDlRTFJSb2taOXhaZVBwZ3dyOE5vbHhtalBNdlRQbldOWGFzUEk2Tlpr?=
 =?utf-8?B?THdXVHZRVGxtcVdUdmx3UEYwV0J1RGQyakVMZmRmclNlWTFNVkZMVTNoWnZH?=
 =?utf-8?B?SDE1V3g5aHVHV29vbjJSUWxRa09EK0ljdzdkb2xNSE5qV0UzMUxBd24yTnM1?=
 =?utf-8?B?WWExYytDeUloRHhDSjJMQndsZk5xVGNzNVo2U0txNlh4VW9JeGZ2Zno4TXN0?=
 =?utf-8?Q?JWY3aFY2/Jbp9nW2WCPc8szqW?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	=?utf-8?B?SlpZRmsyeTR1SFBMTWtWTlBuaE03UWJJT3hJUHJLSXk2RlZEb3dFeGo5THRv?=
 =?utf-8?B?QUQ1UVFEeFdieDVQeENBeUI1OWhJaDQyb0N1NXdPSjNwRGRJSGRRUWE4Mm54?=
 =?utf-8?B?Zk9ROFZzeVBNY21FRVJyTnc1eE5COXRRdkNZaU1ISG55TnNxem5XekdHSG1Z?=
 =?utf-8?B?eTJCZUw3L2xkam0rWnZ3YklDOHZHLzVrOXZyRUEvZGR3WFNyc2lBdm9XSm15?=
 =?utf-8?B?VE13ZjlNSlRkakprL21uUkp1YnhnNDY5R1dRRnhsZmlsNXY3RDQvWjJOZTRw?=
 =?utf-8?B?NjVVOWtrSURyRXJieC9UL1FiVFRSNFNjdDJqV1I5VmZOdm5qOWtlS3Z3RWIz?=
 =?utf-8?B?ZXpaMGxDWEJHeHFGWnZwV0pLL2xkTmVBeDA3QWF4enpJei9ua0tiUHJvR2l3?=
 =?utf-8?B?NVRRZFdQMFhhRkVJVk9ia2huNDl3SXlhOGt5K2VnTFV0a2pIVzYzZXRaSEo1?=
 =?utf-8?B?QUVWRkxpay9iVGdBL0pNYU9OK2R1QXFibkxiM0Q0dW5hdFArbjdPd0lmSXNy?=
 =?utf-8?B?dkF6dEFJbjdUeXZKSmhOanoveEQ1ZGxHRlNsVERzallTYlBCSlFWNkd3OEx1?=
 =?utf-8?B?YkJ2WHU3U1ZrZVA0QzBJaFBFYlNWRmZodm9nejM1dU9nVktaZFJBSzFZQ2NK?=
 =?utf-8?B?azJIZkd5d1lVYzdpemtaWUp1YVpFQXZsQnEzcjZGRjVqVXZaTDRkMnFyKzJv?=
 =?utf-8?B?dWJCZFoyVTB1WDB0UklPZ09hbTJMcUNTT1NtTFhLemthTDArQjAxYlhKNkZs?=
 =?utf-8?B?MGx4KzlHUkx4OGE5eklCaUNrQkdFTjlnVHBlSWlBN2FsZ29aMm5qQUlwd3B2?=
 =?utf-8?B?UVF6Q2pVZms0R0FjaWM3M3R4S0dNMmV5MkttemZzU0NyUW8yQWhCSXJyalRv?=
 =?utf-8?B?Q1dPTDZMUXVGMVlGS1B2dTRWT0kvSTl5OExyZlpaUTNOdTRoRzJkd1dqRHRx?=
 =?utf-8?B?UG53MU5yQmdxci82cnd4NHhCUERlZmRRLy84SDJia1NOODZBRW0xZjRXYVVI?=
 =?utf-8?B?dWNwVU5OcEZPWjltSXB1YWlRMWRwRUZ3T2Y0YjEvclpmUnVEL2FLV2NQZnhJ?=
 =?utf-8?B?cVhHakRVN0RhVENEV2Y5Q2JvYW5wN3FhMGZVUHhNSU1FcEZybmIxOFBpM042?=
 =?utf-8?B?TTNKZ0hsSG5tNHBiaVRBRG1DR3M5NnFPUHI2WlpZcXBBanZ4cFZCcWFTcnJN?=
 =?utf-8?B?SkQzeDhHUitIOUZjcHFYM2ozditoZmdLNHFGZGhyazRwYmk2cVE1a2k5OGJs?=
 =?utf-8?B?c2lmaWtXdnB6ZVJkU0dwZ0pxckwreVdiSjgvdkV1dUVySlc4dz09?=
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: cc68af04-4af9-4031-76de-08dbce270359
X-MS-Exchange-CrossTenant-AuthSource: MW4PR03MB6428.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Oct 2023 09:05:16.1008
 (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: mWWB9j0JJ8qzKjrRnBCwBdhhKvSjBrJPK0sdYgdb15lhbFAoXsU5DMpeoISOYyzIT+b3VzM3men2u3Mb2fAUxw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH2PR03MB5205

On Fri, Nov 18, 2022 at 04:49:23PM +0100, Marek Marczykowski-Górecki wrote:
> 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).
> 
> 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

Is this last point strictly needed?  From the description above it
seems Linux only cares about enabling MSI(-X) without the disable INTx
bit set.

> 
> Fixes: 5e29500eba2a ("xen-pciback: Allow setting PCI_MSIX_FLAGS_MASKALL too")
> Signed-off-by: Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
> ---
> 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(-)
> 
> diff --git a/drivers/xen/xen-pciback/conf_space.c b/drivers/xen/xen-pciback/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 = 0;
>  
> -	err = pci_read_config_word(dev, PCI_COMMAND, &val);
> -	if (err)
> -		return err;
> -	if (!(val & PCI_COMMAND_INTX_DISABLE))
> -		ret |= 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 |= INTERRUPT_TYPE_MSIX;
>  	}

Since we are explicitly hiding INTx now, should we also do something
about MSI(X) being both enabled at the same time?  The spec states:

"System configuration software sets one of these bits to enable either
MSI or MSI-X, but never both simultaneously. Behavior is undefined if
both MSI and MSI-X are enabled simultaneously."

So finding both MSI and MSI-X enabled likely means something has gone
very wrong?  Likely to be done in a separate change, just realized
while looking at the patch context.

> +
> +	/*
> +	 * 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 = pci_read_config_word(dev, PCI_COMMAND, &val);
> +		if (err)
> +			return err;
> +		if (!(val & PCI_COMMAND_INTX_DISABLE))
> +			ret |= INTERRUPT_TYPE_INTX;
> +	}
> +
>  	return ret ?: INTERRUPT_TYPE_NONE;
>  }
>  
> diff --git a/drivers/xen/xen-pciback/conf_space_capability.c b/drivers/xen/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;
>  
>  	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 */

This comment needs to be adjusted to note that we allow enabling while
INTx is not disabled in the command register, in order to please
Linuxes MSI(-X) startup sequence.

FWIW, another option would be to simply disable INTX here once MSI(-X)
is attempted to be enabled, won't that avoid having to modify
xen_pcibk_get_interrupt_type()?

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 09:07:26 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 09:07:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617374.959905 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsJZM-0007K2-3Z; Mon, 16 Oct 2023 09:07:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617374.959905; Mon, 16 Oct 2023 09:07: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 1qsJZM-0007Jv-0V; Mon, 16 Oct 2023 09:07:24 +0000
Received: by outflank-mailman (input) for mailman id 617374;
 Mon, 16 Oct 2023 09:07: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 1qsJZK-0007I4-E0
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 09:07: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 1qsJZJ-0004lx-QD; Mon, 16 Oct 2023 09:07: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 1qsJZJ-0004rw-Km; Mon, 16 Oct 2023 09:07: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=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=68sFD1jhVTvXNXUROfxCuZSBf9fl+0aRRxgft27HZWs=; b=Np2bSiQMdNqlMGG2dKYunUIIfC
	OWHkvgsg89H6vke0VhBxbYggBrPK9Q74q28g9nnsYHSBKuf2tTZIE+nZepUKTX9bKnoQ3JCLptLD5
	6fndkAi+5mqaQXGOgmv7aAeh+QJjRWMmJX2FeQ4QIFoEOxfLHhQScHJ0iN0alZQDJ4ck=;
Message-ID: <39d3f8e0-61cf-4b8d-84f1-a5087ba8ead4@xen.org>
Date: Mon, 16 Oct 2023 10:07:20 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN PATCH 10/10] arm/smmu: address violation of MISRA C:2012
 Rule 8.2
Content-Language: en-GB
To: Federico Serafini <federico.serafini@bugseng.com>,
 xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com, Rahul Singh <rahul.singh@arm.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Henry Wang <henry.wang@arm.com>
References: <cover.1697207038.git.federico.serafini@bugseng.com>
 <199886f6ba1f2d5701eabd080b4f9723fc28f4b9.1697207038.git.federico.serafini@bugseng.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <199886f6ba1f2d5701eabd080b4f9723fc28f4b9.1697207038.git.federico.serafini@bugseng.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi,

On 13/10/2023 16:24, Federico Serafini wrote:
> Add missing parameter names, no functional change.
> 
> Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
> ---
>   xen/drivers/passthrough/arm/smmu.c | 6 +++---

This file is using the Linux coding style because it is imported from 
Linux. I was under the impression we would exclude such file for now.

Looking at exclude-list.json, it doesn't seem to be present. I think 
this patch should be replaced with adding a line in execlude-list.json.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 09:29:59 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 09:29:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617378.959915 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsJv6-0004wk-T3; Mon, 16 Oct 2023 09:29:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617378.959915; Mon, 16 Oct 2023 09: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 1qsJv6-0004wd-QC; Mon, 16 Oct 2023 09:29:52 +0000
Received: by outflank-mailman (input) for mailman id 617378;
 Mon, 16 Oct 2023 09:29: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 1qsJv5-0004wX-AU
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 09:29: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 1qsJv4-0005FX-T6; Mon, 16 Oct 2023 09:29: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 1qsJv4-0005l8-NQ; Mon, 16 Oct 2023 09:29: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=gbxmicep5LUaFXJJmQewRhLxLPalA3qNgooiYyR4dzk=; b=LeR1SPbl+0kZLH6JLgey1wZikj
	guEYDInE+wloXrdBwtSgMMh7zg+afawK6o/ADjuPFFt5sJE5UVE6kXtGgFXspJkN9DPwR185hphCV
	ivDzhEzbISmgcm6BYol7GBx60ERAf+zG0CROhiMyO12kCGbezX7ELrlZjqpeE6ZeqmcU=;
Message-ID: <4c2d2125-9e63-4905-a471-eb97594fb2c3@xen.org>
Date: Mon, 16 Oct 2023 10:29:48 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH] xen/arm: vtimer: Don't read/use the secure physical timer
 interrupt for ACPI
Content-Language: en-GB
To: "Driscoll, Dan" <dan.driscoll@siemens.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: "Henry.Wang@arm.com" <Henry.Wang@arm.com>,
 "arvind.raghuraman@siemens.com" <arvind.raghuraman@siemens.com>,
 "michal.orzel@amd.com" <michal.orzel@amd.com>,
 Julien Grall <jgrall@amazon.com>, Stefano Stabellini
 <sstabellini@kernel.org>, Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
References: <20231005165454.18143-1-julien@xen.org>
 <DM6PR07MB4316E6C8F062F93E800AFD6A9ACDA@DM6PR07MB4316.namprd07.prod.outlook.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <DM6PR07MB4316E6C8F062F93E800AFD6A9ACDA@DM6PR07MB4316.namprd07.prod.outlook.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi Dan,

On 10/10/2023 18:11, Driscoll, Dan wrote:
> Julien,
> 
> 	Verified this patch works on Graviton 2... so looks good from this perspective.

Thanks for testing. I will commit the patch then to staging so it will 
be included in the next release (4.18.0).

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 09:40:22 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 09:40:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617382.959925 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsK59-0000I3-VA; Mon, 16 Oct 2023 09:40:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617382.959925; Mon, 16 Oct 2023 09: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 1qsK59-0000Ht-S4; Mon, 16 Oct 2023 09:40:15 +0000
Received: by outflank-mailman (input) for mailman id 617382;
 Mon, 16 Oct 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=BBjo=F6=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qsK59-0000Hn-CU
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 09:40:15 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur04on0617.outbound.protection.outlook.com
 [2a01:111:f400:fe0e::617])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 01a97a14-6c08-11ee-98d4-6d05b1d4d9a1;
 Mon, 16 Oct 2023 11:40:14 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by VI1PR04MB7200.eurprd04.prod.outlook.com (2603:10a6:800:12d::23)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.45; Mon, 16 Oct
 2023 09:40:11 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%6]) with mapi id 15.20.6886.034; Mon, 16 Oct 2023
 09:40: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: 01a97a14-6c08-11ee-98d4-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=U2Y9164+N8JUdydPt5trhTcsYrrbBUFCa2ht07HWlddh1XmgGNkbaXQedYnwgPF1GlGRuHLsxi73JtrdDrelDaKSQbJl6kusSV5leLFxSoX0oEmdfbPK3zW10ohPtW4znttcPND46zoRQBI0z9btG2tVxDGQ+sG0wBs515teqs3sES11Iu/VsUgWJ2YW1ML1Gbswwb9WKn/cbYBEwmTbk+qoTLdBgDevLUPoZLay1P0zjvoxD9/mW+lB91Qye0YVOOJsYfu/Hz7Z0INFBiSnmBRPADib5Ld/J33ai3+5tcZzEArKOTHqQqHLQLLR33oFCfSF2OODpwUqvi06JIJxbQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=0wrSTUF5KzmL66Jeo8UYNQi/p5HzfM/PUG9gHINqfHQ=;
 b=cWD956IkAFnkGkuGgHRsS4zQrPRXTUcSAq2CmxsgX8XKi5IoipfblEWea/6wEboNAK8jW23ZCQyktCgatdsQSmX+SLcXZ7QGhbGJUGsM8MKcwrhfO5CQmPMEoAgje0k0R20r5aVyRbyIpBv/rB9H0wojMjcTjx+CVGWFLLhYq5n77d57r8AOhBkKZcYdWmf4uSndY5RPRZ+E05Jrwv1aw45tIrT45/z4J1FsN62yfkcKCQ72XzS2ROuf9Dq34qdb3rODzk7lqKwkWXoPZJKnsRc2MNnUrlWfWcYnbljjlfPUEhNIKq21yXTjIXTA/lIZokl2hlXPCTWWVL+4sqj11g==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=0wrSTUF5KzmL66Jeo8UYNQi/p5HzfM/PUG9gHINqfHQ=;
 b=UHa0Dt6mgMdN/4wc4LxBSgTYDkGPhG8dK+GTxez4ruLapj+J8oBv04lkPh6C8v8mVILWl7ZDzPWXdd79RNg4oGRGlcZDHX1EMUZvRfBy/7S7JH8GDauH63Kjucy+Vmr/xGBsPeikd3+YIU0W7WmF0GJgRG2OR9ELixGOKtWAzL7xfDYj4qV5sc9vhQu3FWe5C5Brw01JeqwWHY2xev2yXQCpBP4sG2bZYRMWHev5khw4f/MkJB+wcrCetbYxlvE/cdgtC/DX6nUN3ctcqvkQ3fMp6Y8KKSCmSQgGPb76DePTvmqcCdwdfNpiVZkBkblEd+LSckCvAclJMk1Qvv3WvQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <55dae9a4-16cb-f252-c2f7-ded611efb78f@suse.com>
Date: Mon, 16 Oct 2023 11:40: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: Add SAF deviations for MISRA C:2012 Rule 7.1
Content-Language: en-US
To: Stefano Stabellini <sstabellini@kernel.org>
Cc: Nicola Vetrini <nicola.vetrini@bugseng.com>,
 Xen-devel <xen-devel@lists.xenproject.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>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Henry Wang <Henry.Wang@arm.com>,
 Simone Ballarin <simone.ballarin@bugseng.com>,
 Doug Goldstein <cardoe@cardoe.com>, George Dunlap
 <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Wei Liu <wl@xen.org>, Andrew Cooper <andrew.cooper3@citrix.com>,
 Luca Fancellu <Luca.Fancellu@arm.com>
References: <338d8e574db943a86c7605e4c6d9a299d45f067d.1696347345.git.nicola.vetrini@bugseng.com>
 <alpine.DEB.2.22.394.2310031345190.2348112@ubuntu-linux-20-04-desktop>
 <e1736215-52ba-4737-9da3-8f1ba7e832a6@citrix.com>
 <DB96C095-5FAF-40A1-9CA8-002291AA1933@arm.com>
 <2894008e8f612296da84267346ae4240@bugseng.com>
 <B00BC78B-E707-4043-A0B4-D320C6717472@arm.com>
 <alpine.DEB.2.22.394.2310041625170.2348112@ubuntu-linux-20-04-desktop>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <alpine.DEB.2.22.394.2310041625170.2348112@ubuntu-linux-20-04-desktop>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR4P281CA0041.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:c7::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_|VI1PR04MB7200:EE_
X-MS-Office365-Filtering-Correlation-Id: 6637c8c8-6332-49d0-0328-08dbce2be470
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	97yplnVsKrTsZ4kYpqU7svToBENEF+jnnUl0jl9Ghxda5mtVuE5ZV9Ndb6AqTRll5FFsPdsNN9UTyW2U3dsTf+lF5d/OBUo5mvzO5RDfXcKkTAGI4NO6Yo9lfVgO1KUA8pVsbl2mUIlC3vvy6n6V04vcOiXji9S7PceMnJxFl1187x2DiR3AJltxvACXomp1kDqcqy1dcXwzlG3M/FD0i+iH0dx4xdXMxLlzmmCvBXox4x0DsHXW3jQJ2co2c5kYKB+Zz7Fr8Ft9xup+8KgSoQXpbT501Yl3hDeMI57odTIaWkaBoPqpjFo/nZw6s8V3VEXpV8h7cx2ShJyCQ3xa5VfUlILLX4+5pPSOdN2AbAOobRy6ilKlNCc68bV4Uj0EzNbIjV4R7kGdnq+uoQ5ArlXskRLxydWDuTCIQye/jonpYM72Vp2vSdGwh9in5yWeQGbfI9dHbljO+Ofy0yUIaBqpacoAsdS3sEwwsFCwUhSxjZqdZq6QMGPKyJoD0dQb4hOq+Pyr1+s6pFKpVA/Q2HFhvk6VVdf3NM2EDE+uSnCyYj7bmPf7kSAr4boaAlidZocZTPrn9mRg/a2HjXhe8kc4pXXLR5/Lg/V2BfVMWd6SgckQghL5BcNq4ORnUPZgkXqDKW/9iJcodrDuNXJ15A==
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)(39850400004)(230922051799003)(64100799003)(186009)(451199024)(1800799009)(7416002)(6916009)(2906002)(316002)(5660300002)(41300700001)(4326008)(8676002)(31696002)(8936002)(36756003)(86362001)(83380400001)(2616005)(26005)(66946007)(31686004)(6486002)(478600001)(6512007)(66476007)(66556008)(54906003)(53546011)(6506007)(38100700002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?VzgrMlh4MHdIZ3hTNVhVa1l3cTdUeDZ4VlBrSWhVa3VhcFhUYkJjK3hrZ2RH?=
 =?utf-8?B?SjlCMkl1WitDdG1hVUk3dUgzVGJBL002aVROcEJVWG5adWp0RVlBV01mTHZR?=
 =?utf-8?B?QlBvNWRLV2pMTlozWUpxOXlXTlFaYTRnV2hLK1poeFJYaSszdW41VDJ3S012?=
 =?utf-8?B?YjFpQ05oREk5M2tYZXhPWC8xUEk4V3dib0VhNXgwaXVqOEZGMzBhN096a2RV?=
 =?utf-8?B?NVhpaFNWN0ZrSk5yY3hFWmxocFo4SzY1amZKb1BPQklkaU9ENS84VEU1TFhQ?=
 =?utf-8?B?djZmMjVmNkRIUHpXQ3lTUDhPbGxGNWJKT3MvdnJCZ1pIODZvRThBS0srbWxR?=
 =?utf-8?B?VzZYY01pU2ZTMkQ2WW9UK2E1K3ZYTExWWmwzOTdoS2FXUUVacW44aDBpWTd0?=
 =?utf-8?B?TXIrUzBxWWRpdGNTa3VJY0VpNjJvb25scStDbVViMkluTWl2Z2tjdCtWOTVx?=
 =?utf-8?B?NmdOSVdoUGNWZUlNbUxrU2VXcStwUGJBR29idlNhWVg3Rlg3NE83R0FwMHZN?=
 =?utf-8?B?UVhpdWs5SlErcDlQdmhWMWNnYkF3MlNleERFUkMxUW83eU1qNHZaRE9SREtJ?=
 =?utf-8?B?aTFJSDdIcGM0VU1jU3JOSTlaeVVlT2hRc2Q2SmQrK3g1NjJydVdBOU1zd3dD?=
 =?utf-8?B?MkFhUTFVWXdPWnVpRW9qTDcyVCthYVVGcnpJT1VjdkU0VGU2Uk5qQmFwbDNL?=
 =?utf-8?B?bWVRY3lXcWZ6WlZQMFNhUEZoMVVEWkJkRFpSbWg4OUg0S1g1QVJYNGcwWndH?=
 =?utf-8?B?WmVJL2w4TkhVYVRpSUdpVTVHbXpzeDVZZytWTDRYcFRHSWRQdXBLUmpXZC9r?=
 =?utf-8?B?UTRNK1BUeFh0OERHVXZmRnNNQ04xc3p3aGtIQ0Z3WitnRGhLRlJ0UkZjUVVK?=
 =?utf-8?B?Ukx1U3F2VkI4THdOa1NES2FLRXoxaDdvaFBTc1B1WnRIMkRjYkJ0SkVRaXk0?=
 =?utf-8?B?STZ0UE50TGY1cS9zb0U4QndXUThtMlBWcWZ6TVlGaHNVVm9tb1huSW8rTXBk?=
 =?utf-8?B?TFlrajM2eDJpSnlPWVlOdnpuNCtxNE1PZ3pPWkFZRlNLejFwLzA0VjBXNEpN?=
 =?utf-8?B?QUFXTmJGQUowOXRPc0xDdSszQjUwZ2pBQmcxMWkzUDdaU2NNeHpHV01BS3hN?=
 =?utf-8?B?eDZQY21YN1M1L0RtbGZFemFiMGh2WHRnSUxETjlSdjM0aFlxNWw1YzlIZUwz?=
 =?utf-8?B?OFVtQnBBVVpSQWNPcXBFYVBiUEZGRTlOaERMbjM5dW1MNFRxKzRVdFJLdklZ?=
 =?utf-8?B?aVdiVlNCbU9INnVUem02UmV1YmM1QVlFamdOTHpuUGNZNTJ5Rms3Y3VEQnlQ?=
 =?utf-8?B?YzBEUjRFcGgvNkFodVpTUXRDMnlMY2svZUplV05CeUkreTVLYi9SSDFwaFlX?=
 =?utf-8?B?SmNBMmZocThnR1k0bEE2cndzOTZWWXBMak1xUFUyLy9tQWpLVzY1TlY2c3JP?=
 =?utf-8?B?Y3VYZ0V3K1I5ME1IRmRlVkxuLzVRYW50Y1NWQ0laeHRJMHBiOGpXY0pMR0c4?=
 =?utf-8?B?WjhqL3dvK25SdTFFY0NPNlNSbGVIOStmc3E3NTZWREViTktPYmhvYXdoSEdR?=
 =?utf-8?B?eU5rM0oySktzbUFMNy9WMXlWVFA1c0JUZzRBK2wzQ1BxZlpCSk9STWhKcGdZ?=
 =?utf-8?B?NmVIdGxkL2FQVWpuREdzc1FWbHVZckRVejM1aWVwNDcvNWJ5ck5Ubm9ORm1H?=
 =?utf-8?B?SlRlWFNhSE10U1NmMGpBUkk2NzRqRUU1L0VxV1g5ajhTQks2KzNTZVJsdWVH?=
 =?utf-8?B?cGZBOXZhVzlmUTRLakJxUWxNTWhsVTMrU0Zkc21IMGRMWnlBeVEyUkw1THdi?=
 =?utf-8?B?VUdRL2p5N1BNeC85NlF3Wmo4NDl5cHhTZ1FwWGt5YitXaXVvVHlVZG85aFJl?=
 =?utf-8?B?UkF0KzFxWkFVdVlWWVNIV2ZvK1k2QVJOVGFQR1NHbHhBamNYWUY2b2xuNVVE?=
 =?utf-8?B?UU4vQzdYL2JZcmdGVzlGUlgrZDFQbmNoWC9CTEZxN1BWS1E1dVFaS1JGVjlU?=
 =?utf-8?B?cUpNb1I0dUxWdjNZcnFXTGQ5RW5lS2hzeUtrQklUOUdWN0lseGZWNEtqc2dR?=
 =?utf-8?B?RzJKQjN2QVFraVlKeTRPVGlENm9rWWdmRHgzKzNKVnhnSkgxSHp1N2xLbzY2?=
 =?utf-8?Q?rOgy8NDxPEZYLDQrEBaQtUeYB?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 6637c8c8-6332-49d0-0328-08dbce2be470
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Oct 2023 09:40:11.6970
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 0nLxJ4hshPKE8Hih3K5+0+Ac8wwD5Uq2Rb7+tWCgB9tiEno5ZWjML+/hijPZIMLkMj0ciQ/2EwzOktLL5rThBA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR04MB7200

On 05.10.2023 01:32, Stefano Stabellini wrote:
> On Wed, 4 Oct 2023, Luca Fancellu wrote:
>>> On 4 Oct 2023, at 11:29, Nicola Vetrini <nicola.vetrini@bugseng.com> wrote:
>>> On 04/10/2023 12:06, Luca Fancellu wrote:
>>>> Hi Nicola,
>>>>> On 4 Oct 2023, at 10:56, andrew.cooper3@citrix.com wrote:
>>>>> On 03/10/2023 9:46 pm, Stefano Stabellini wrote:
>>>>>> On Tue, 3 Oct 2023, Nicola Vetrini wrote:
>>>>>>> As specified in rules.rst, these constants can be used
>>>>>>> in the code.
>>>>>>> Their deviation is now accomplished by using a SAF comment,
>>>>>>> rather than an ECLAIR configuration.
>>>>>>> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
>>>>>> "SAF" discussion aside that can be resolved elsewhere:
>>>>>> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
>>>>> Well no.  "SAF" aside (and SAF does need fixing before reposting this patch, otherwise it's just unnecessary churn), ...
>>>>>>> diff --git a/xen/arch/x86/hvm/svm/svm.h b/xen/arch/x86/hvm/svm/svm.h
>>>>>>> index d2a781fc3fb5..d0623b72ccfa 100644
>>>>>>> --- a/xen/arch/x86/hvm/svm/svm.h
>>>>>>> +++ b/xen/arch/x86/hvm/svm/svm.h
>>>>>>> @@ -57,14 +57,23 @@ static inline void svm_invlpga(unsigned long linear, uint32_t asid)
>>>>>>> #define INSTR_INT3 INSTR_ENC(X86EMUL_OPC( 0, 0xcc), 0)
>>>>>>> #define INSTR_ICEBP INSTR_ENC(X86EMUL_OPC( 0, 0xf1), 0)
>>>>>>> #define INSTR_HLT INSTR_ENC(X86EMUL_OPC( 0, 0xf4), 0)
>>>>>>> +/* SAF-2-safe */
>>>>>>> #define INSTR_XSETBV INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0321)
>>>>>>> +/* SAF-2-safe */
>>>>>>> #define INSTR_VMRUN INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0330)
>>>>>>> +/* SAF-2-safe */
>>>>>>> #define INSTR_VMCALL INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0331)
>>>>>>> +/* SAF-2-safe */
>>>>>>> #define INSTR_VMLOAD INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0332)
>>>>>>> +/* SAF-2-safe */
>>>>>>> #define INSTR_VMSAVE INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0333)
>>>>>>> +/* SAF-2-safe */
>>>>>>> #define INSTR_STGI INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0334)
>>>>>>> +/* SAF-2-safe */
>>>>>>> #define INSTR_CLGI INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0335)
>>>>>>> +/* SAF-2-safe */
>>>>>>> #define INSTR_INVLPGA INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0337)
>>>>>>> +/* SAF-2-safe */
>>>>>>> #define INSTR_RDTSCP INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0371)
>>>>>>> #define INSTR_INVD INSTR_ENC(X86EMUL_OPC(0x0f, 0x08), 0)
>>>>>>> #define INSTR_WBINVD INSTR_ENC(X86EMUL_OPC(0x0f, 0x09), 0)
>>>>> ... this has broken a tabulated structure to have comments ahead of lines with octal numbers, while ...
>>>>>>> diff --git a/xen/arch/x86/hvm/svm/emulate.c b/xen/arch/x86/hvm/svm/emulate.c
>>>>>>> index aa2c61c433b3..c5e3341c6316 100644
>>>>>>> --- a/xen/arch/x86/hvm/svm/emulate.c
>>>>>>> +++ b/xen/arch/x86/hvm/svm/emulate.c
>>>>>>> @@ -90,9 +90,9 @@ unsigned int svm_get_insn_len(struct vcpu *v, unsigned int instr_enc)
>>>>>>> if ( !instr_modrm )
>>>>>>> return emul_len;
>>>>>>> - if ( modrm_mod == MASK_EXTR(instr_modrm, 0300) &&
>>>>>>> - (modrm_reg & 7) == MASK_EXTR(instr_modrm, 0070) &&
>>>>>>> - (modrm_rm & 7) == MASK_EXTR(instr_modrm, 0007) )
>>>>>>> + if ( modrm_mod == MASK_EXTR(instr_modrm, 0300) && /* SAF-2-safe */
>>>>>>> + (modrm_reg & 7) == MASK_EXTR(instr_modrm, 0070) && /* SAF-2-safe */
>>>>>>> + (modrm_rm & 7) == MASK_EXTR(instr_modrm, 0007) ) /* SAF-2-safe */
>>>>>>> return emul_len;
>>>>>>> }
>>>>> ... this has comments at the end of lines with octal numbers.
>>>>> So which is it?
>>>> I agree with Andrew here in this sense: the in-code comment is
>>>> supposed to be on the line *before* the violation,
>>>> not on the same line, so I’m also wondering how it is fixing the very
>>>> first violation.
>>>> Cheers,
>>>> Luca
>>>
>>
>> Hi Nicola,
>>
>>> Actually it justifies what is on either the previous line or the same because it's
>>> translated to /* -E> safe MC3R1.R7.1 1 */, where the last number is how many lines besides
>>> the current one are to be deviated (e.g. you can have 0 deviate only the current line).
>>
>> Just to understand, does this way:
>>
>> <line A>
>> /* -E> safe MC3R1.R7.1 1 */
>> <line B>
>>
>> Justifies only line B? Because I thought so, but now I want to be sure, otherwise it doesn’t act
>> as intended.
>>
>>
>>> Most of the times the current form is what's needed, as you would put the comment on a line
>>> of its own. In the case of the if that would break the formatting. The downside of doing the same thing on the table is that the first entry not to be deviated would actually be deviated.
>>>
>>> #define INSTR_INVD INSTR_ENC(X86EMUL_OPC(0x0f, 0x08), 0)
>>>
>>> This may not be problematic, since 0 could be considered an octal constant, but is an
>>> exception explicitly listed in the MISRA rule.
>>> For the same reason the line
>>>
>>> return emul_len;
>>>
>>> is deviated by the above comment, but putting an octal constant there would for sure
>>> be the result of a deliberate choice. There's the alternative of:
>>>
>>>                          /* SAF-2-safe */
>>>   if ( modrm_mod      == MASK_EXTR(instr_modrm, 0300) &&
>>>                          /* SAF-2-safe */
>>>       (modrm_reg & 7) == MASK_EXTR(instr_modrm, 0070) &&
>>>                          /* SAF-2-safe */
>>>       (modrm_rm & 7)  == MASK_EXTR(instr_modrm, 0007) )
>>>
>>> to make it consistent with the table and avoid any "hidden" deviated line or, again,
>>> the modification of the translation script so that it doesn't use a fixed "1" offset, which
>>> is motivated by what you wrote on the thread of the modification of xen_analysis.py.
>>
>> From the documentation:
>>
>>     In the Xen codebase, these tags will be used to document and suppress findings:
>>
>>     - SAF-X-safe: This tag means that the next line of code contains a finding, but
>>       the non compliance to the checker is analysed and demonstrated to be safe.
>>
>> I understand that Eclair is capable of suppressing also the line in which the in-code suppression
>> comment resides, but these generic Xen in-code suppression comment are meant to be used
>> by multiple static analysis tools and many of them suppress only the line next to the comment
>> (Coverity, cppcheck).
> 
> As we see more realistic examples, it turns out that this is limiting.
> 
> Given that the SAF-2-safe comment needs to go through xen-analysis.py
> translations anyway, could we implement something a bit more flexible in
> xen-analysis.py?
> 
> For instance, could we implement a format with the number of lines of
> code like this as we discussed in a previous thread?
> 
> /* SAF-2-safe start */
> if ( modrm_mod      == MASK_EXTR(instr_modrm, 0300) &&
>     (modrm_reg & 7) == MASK_EXTR(instr_modrm, 0070) &&
>     (modrm_rm & 7)  == MASK_EXTR(instr_modrm, 0007) )
> /* SAF-2-safe end */
> 
> Firstly, let ask Andrew, do you prefer this?

The issue with this (or any other multi-line marking) is that it then
covers far more than just the offending piece of code. Yes, this is a
problem already for single lines of code, but the larger the scope,
the higher the risk of unintentionally silencing an analysis tool.

Furthermore what if more than one violation exists (and wants
silencing) within a such annotated block of code?

The case(s) at hand clearly back the original fear I had of such
annotations harming code readability more than acceptable.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 09:46:32 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 09:46:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617389.959934 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsKB2-0001td-O4; Mon, 16 Oct 2023 09:46:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617389.959934; Mon, 16 Oct 2023 09:46: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 1qsKB2-0001tW-LK; Mon, 16 Oct 2023 09:46:20 +0000
Received: by outflank-mailman (input) for mailman id 617389;
 Mon, 16 Oct 2023 09:46: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 1qsKB1-0001tM-0a; Mon, 16 Oct 2023 09:46: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 1qsKB0-0005kW-Tt; Mon, 16 Oct 2023 09:46:18 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qsKB0-0007aI-F8; Mon, 16 Oct 2023 09:46:18 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qsKB0-0005KM-Ei; Mon, 16 Oct 2023 09:46: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=WSDc/G6uCY9ZwMRxCpLg9tP5oqOicOug7hUeNEKwZMY=; b=GK1Rny4jONAfXJEWBY9LRxuLSD
	u40fih0Lg0zd+zIm9O/6CFJX5hO6RhvE12a+sPZf5o3XG48E6Eq3dNvAmZPEJzg6Zec1+7bTofUM4
	8AUOr9zhERxYmUjPvnXbAbv+FlcudtlVULd7B28XYNAVoUD5okR2rjdFNcSWZm4LU8OQ=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183379-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 183379: tolerable FAIL
X-Osstest-Failures:
    xen-unstable:test-amd64-amd64-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-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-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-qemut-win7-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-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-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2: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-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm: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-amd64-amd64-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-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2: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-arndale:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-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-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=730406ab81094115d9fb5ca00ba8d53cec1279b3
X-Osstest-Versions-That:
    xen=730406ab81094115d9fb5ca00ba8d53cec1279b3
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 16 Oct 2023 09:46:18 +0000

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

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 183373
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183375
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183375
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 183375
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183375
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183375
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183375
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 183375
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183375
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183375
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 183375
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 183375
 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-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-credit1  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-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  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-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-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-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-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-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-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                  730406ab81094115d9fb5ca00ba8d53cec1279b3
baseline version:
 xen                  730406ab81094115d9fb5ca00ba8d53cec1279b3

Last test of basis   183379  2023-10-16 01:53:31 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 Oct 16 09:51:35 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 09:51:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617397.959944 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsKFz-0003qO-FY; Mon, 16 Oct 2023 09:51:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617397.959944; Mon, 16 Oct 2023 09: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 1qsKFz-0003qH-Cp; Mon, 16 Oct 2023 09:51:27 +0000
Received: by outflank-mailman (input) for mailman id 617397;
 Mon, 16 Oct 2023 09:51: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=BBjo=F6=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qsKFy-0003qB-I7
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 09:51:26 +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 8ff5e82b-6c09-11ee-9b0e-b553b5be7939;
 Mon, 16 Oct 2023 11:51:22 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM9PR04MB8383.eurprd04.prod.outlook.com (2603:10a6:20b:3ed::7)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.34; Mon, 16 Oct
 2023 09:50:53 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%6]) with mapi id 15.20.6886.034; Mon, 16 Oct 2023
 09: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: 8ff5e82b-6c09-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=oQA+LaaWZnVysgUyfA916AKaIZE7ZDL9Bd5B5edV0612n6GcdPLMJ3dHGv7jz/myPP2DUqXZz/hAxFlYiHLDLI1IMC/yXwjlu/1WsKS+kGrvHjrafjAnHIpnwyPs8xh3VIaix0ZmwRVMNxbnBqHwfcSqcy7zKBIIAOo28LB8qieZRWYk0KnHG4XgwJ31pN9oy7ygVvlVP/Y/pdigsGgXE2e5+uxQSYSY5QapQkY1vQ/Hw24vrrTBidWXj6U/y8gr0RXfnz7SO++sGs0kcjh/gll490W1lhCLDPsPizEF+cRl+cIacSwUlYZY31zd83sHu19Juifbt09oLFPKDQF3dQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=JyZMMmHqsmVmtbKO221HB05oUdCWddLylbulPVfTzsY=;
 b=elKyKdHSrvxMaGSFmJR8EI1GqxYu5IBFg1acUCoG+6NwQ4toFl0egF0DGEzfTpB/8bff2/TrHVwHpuB0LmF6+7q+FYbp/zffsFlOEyVww7PPfek/H4Dm5ZFSvRM1Y8+oZnB9Q5V2g2I7cZMsXJaJTpbEaxwTKPRZBS98bF7N0MZf4ah07452Y+iIXm4DYP5SsUvGHMBO79uZxALVItUhNRB8j8ZnUhDKE0D8OeZvLD234YcTxwBSKuO6ZexjQYyM+MqsizkqRyiBaeN8yvjrsk7Gh9b17gBm1ZVW97Ac/ZmovWYFN6s5mPKLVzu7lAen75/eBeK/LhpXytoBvpBaAQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=JyZMMmHqsmVmtbKO221HB05oUdCWddLylbulPVfTzsY=;
 b=u+opWBwAr0adMAfHdXtv/QaK6IcNujwLaCuEp+oGkrvNWC5TUXFaD5kxlPXb+9SSXnKpoKo9qqhpIxOsKZluQ8ArGhUGWQjGB7ae2IMXmHA7dHxurAIb29gV3+xPaWoeCeEsx0yKvMBZDHnt4Ar4O7kizyfGD5+Q1XrYezTXiqu8DyslvZoo9bNt4xhoGnldvPdpwvJisfFHFTC+QkZ/xURyklttgOXwCwVeWbkqdtDGVQuOtV/IlSdbHhynVqlvNEYPEwX/1KUlgGffak1X3tEdJDSNbUZZlW2QwZmFMIYAsA+hw9U2Mnymj1GSvN2ZZZ+nZ44Hk5L/7GzgyidDRg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <44543389-a750-d121-f6f9-8fb4d4f3a16b@suse.com>
Date: Mon, 16 Oct 2023 11:50: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 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>
 <b05190e0-f091-b52c-7d89-d72bd993fec9@suse.com>
 <CABfawhkK7LVQKhTtCAMpoaGLH24SwpyEAJGpu-PohR5e6W=pMw@mail.gmail.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <CABfawhkK7LVQKhTtCAMpoaGLH24SwpyEAJGpu-PohR5e6W=pMw@mail.gmail.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR0P281CA0175.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:b4::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_|AM9PR04MB8383:EE_
X-MS-Office365-Filtering-Correlation-Id: 6821c569-5544-4483-582d-08dbce2d62e4
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	XjRE9HJzcGf2oePERn8SCumdwJJoUtR1XshAGKAS5i7IECvtrb/GImQsv7XRbram9fane/AUgI4Z7hFSJ4SaHJHsxOUF5vWykQLG05Ki0g3b709HG9lfg6Jbb1SUc2g27lb4tHxE79A6I9IiZtFCc4cZx2yQ66F0PIfDItdcZd/YbN+sC1Fx5ZfxiVRuD2yAPI4nLZYx4Upq4pGyqXIEkX3QhY4QlcR5p2qGPetBjweRCFCA6V3FcM8b34AisxsyO4vxD/iKdIYEG5b+Z6qY+kQgY7+KOXJW4PQRP6oxe3DfSgySUocSDG23CmR3aQafTmtCjOws3dNragek23chDVSVX8CarfQHdna2BsVYUdx5HS7Rs+o/gxDIMZcvX/hXttk/S9yKQLjdE9D6op2kAzwQ5ZjXKrN5srDAbB9OHP/hyMnPTYsAl7ynPLNz/NjopNvAsHbGsbPlB8/32j++nmnHh7RdeXEIPdffaRyvxTIzMTbNE5ZG2xxzQtPP7Fbd8ntiHBIBLQbBrUm18Zeu3BY7o/7L8/vi/w9vVvJEGoONjjqNaZ+C00JDZyCzyzGXlVfZhCVYzWOavN+EwlEl5Jn1BMB/eQ1WFTcZIc8QVLSaRKkqeOsV1jBle7MMIAA482Nxk9ftXzbBvJmXL9IUgA==
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)(64100799003)(451199024)(186009)(1800799009)(8936002)(8676002)(4326008)(5660300002)(2906002)(31696002)(41300700001)(86362001)(36756003)(38100700002)(6506007)(2616005)(26005)(83380400001)(6512007)(478600001)(6486002)(31686004)(53546011)(66946007)(66556008)(66476007)(6916009)(316002)(54906003)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?Z1ZaZHFkdU9jRDAxSlpBMjRxaHI2MERheXpoelQrbnlubno4UVhDaDVuRi8r?=
 =?utf-8?B?Sk9hMmJtNmtjeE1aSXV6Tm9qZTI0Y3ZEb3N5alk3ZTFzSzByYXkwN2NiRlF3?=
 =?utf-8?B?RXZ0cnNEOHNiZ0l4bHNWd3RKL2N6NkhST2tXVXhrdmltUFZXQzZTeXo0TzVy?=
 =?utf-8?B?WjIzOE50SkRFWHQ3NGpOdDZuZmxRMHNReXJDOTdZQzBYMldGdS9ybi9MdXEy?=
 =?utf-8?B?c2M3WlgvWXFaQjVudXlTSUdaWGsySUlXVHNOS1d3dEtUbGJvYXdMck12Rkpi?=
 =?utf-8?B?ampsSmhORjdjZnJSdUQ4Nm0yRktsMGFXMVlHcC9YcWhEQkFZeCtTbmthS2Vm?=
 =?utf-8?B?elJHY0JORDVTcTJyVlJ4ekJDWHJOaWdHTStMZ2dBS1lwLzBYcUlhRUJra2dZ?=
 =?utf-8?B?MWhjVm1CVnp0RC9xV256aG94QVZCSWVzS2tvZWFFbnZhYkhiQjhaS2hjbWsy?=
 =?utf-8?B?aDhMb1BNVGFOeVRKSGxjMVM2VXBlamtka0V6ditzTS8xSU43YjhnMjR5bWx5?=
 =?utf-8?B?Y2hjUWJiUGFCTk5iNE5CSU1DU1lPTjNraXlOb25QZ05CbTFRdnlZVUhXVXFl?=
 =?utf-8?B?SXN6Z0thUWg4d0lkeWs1TlkvYmNtbjJSd282VDRHU3hyNjNuY1M5a1pvQzBU?=
 =?utf-8?B?VUwwRzZsTDBVWTQ5TGtraTNzeE9KYWY4WkFTNXFHbWIxbi9BS1dYajh1M2E4?=
 =?utf-8?B?OVF0TElHeC9BVEN2K0NaMTJQdm8zQmJ0Z01jVlJUaGdmK202bitScU50dlZa?=
 =?utf-8?B?R1FjRmJBK2k3cWR6eHFIY0s2MVd3cDJwUUR4WjJ3cHkxd2NROVIrYXBYdm9E?=
 =?utf-8?B?RHFDaEFQaXB5cnJQM3BpV3FMN1ZFc3hnUktCMG5xenBMOTBqMy8rN3J1SFdi?=
 =?utf-8?B?ZzJZM2xiamVFZTBiYjBzc01XRG9oaWtDSDB4RGZDejVWRkdNcWVoVkY3NGFR?=
 =?utf-8?B?TGFQS21SMmIzV2tpVkpBYmg2KzVNWmY5d3g1a25pOWY2Z1JIckpUdmd0OXpw?=
 =?utf-8?B?Yjlya2d5ZFJDVkd1NjFybThnWlQ2VXJyZnV3VmVnMUpRT0p5NllmUTFJc0U1?=
 =?utf-8?B?ZU5LTktJZ3pEM3dEcEwybUhqZzRnR1VQRlRTcm00WFh4emcyMjZ1L0JhU2Fm?=
 =?utf-8?B?b1BpSjBhR0pDNkZSWGtubjE4dGwyditpZFIxOXVIcytabG9zUjJJTjdnbFdK?=
 =?utf-8?B?cjFwbTFicXd3QU1LaG1QSCtBeXBFWGNTbnVTSlVQeDJVejRuczE1SUpwMlVO?=
 =?utf-8?B?YU5zWDNYRjREOTNlS0lwT1h6YlZUVGUvVm93d24wSmw4aWVFRm4yVytIZzB3?=
 =?utf-8?B?UlZGZVZUWjQ1R3JQbjdBOGJBZzF6dkVrKzNoK2J4QUhkd2lDYmFXZ2MwU0ZK?=
 =?utf-8?B?MzZlZnhmZFg0aWs3SkFwK00rSkowMENsK0NvQ0FaeEN2YzNmajFjN3VIdDZz?=
 =?utf-8?B?OVRLNjlKWXV6Mkt5UGZEQXRDMDNoaWRrU01nMlhIVlJYWEM3QzJ6VlMvR2xF?=
 =?utf-8?B?MzdFajBjV20vTCtPWWFBSXVzTFQ1Qk1QUThORHlvdXMvV0o3T0NKNlhZNEF2?=
 =?utf-8?B?c2RtZTlMNU00REpDT1VkTUxTVE9ZZklFelhRazNDMWhRekY2TmxySk9HdWEv?=
 =?utf-8?B?clI3SWtqcXYyaFRpYU5ON0pSbHk5WWVkZ0FyL25IQXA3bnVLK2pJRUZpWE9N?=
 =?utf-8?B?aGVGR3pmK3M4L0tscTBXd01JUkJQMjU5ay9qOTZ3TmxZRHRKcHZXMkkvMDE0?=
 =?utf-8?B?ZTgzSURCVUg1VVJJTHlKT2pWbEhEWDVORjVkZGlBUDAzVTd1Z1dVdGcwdk5F?=
 =?utf-8?B?d0orc3lsc2pZQmNaNFpQcGIvVDMrckdHd2tzb0dDWDcySm5jbklNd08zeXNP?=
 =?utf-8?B?UTNLRHFjQ1B2YUNSMjlKZGhvRGgzQlorb0pvUHgxRUQyNWh2bHdlckJWWkg4?=
 =?utf-8?B?UWwyZk0wblMyM3ZSbjRSTlRxQVN4K2xwYjcyZmVZQitiM3hnYmdQcXlxK282?=
 =?utf-8?B?dzkzdnRVN05DQXpTdjg2YlpHNDM1YVlId2pod3VPaHdaWGM2Smk0QVVCS0U3?=
 =?utf-8?B?bUpJSnlDUkdyMzF1V0Yzc0VQd3psOEErL1FybXNRVU4yc3VsWWlUVFBMaWhj?=
 =?utf-8?Q?oIOvrQrDhdLz0+PgdZ5Co7pyU?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 6821c569-5544-4483-582d-08dbce2d62e4
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Oct 2023 09:50:53.2113
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: ZiI5k092/j8b5v4/1LUKIzq/5juTUoaBb5FDCpHkMD20tG3DbCYPjkSF82JgQYvKdmTqHPe6NL3pwoaPiEeqVw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR04MB8383

On 29.09.2023 15:01, Tamas K Lengyel wrote:
> On Thu, Sep 28, 2023 at 9:19 AM Jan Beulich <jbeulich@suse.com> wrote:
>>
>> 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.
> 
> The domains are paused (both the parent and the child) when a new fork
> is being made and also during fork reset. If Xen really does write to
> these memory areas "any time", even if the domain is paused, we will
> need a lock to tell Xen not touch it cause it hasn't finished being
> constructed/reset yet.

It's not really "any" time, but "any time the vCPU is (about to) run(ning)".

> Moreover, not sure what Xen is writing to these
> areas, but if it's anything "stateful" it should be discarded or
> copied from the parent because the guest state must match the parent
> after the fork/reset op.

How that? Both are running independently once unpaused, and the data
written is derived from various bits of system and guest state. I see
no reason why the initial populating would need to clone the parent's
when immediately afterwards the data would be overwritten by child-
specific values.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 09:55:33 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 09:55:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617401.959955 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsKJv-0005A9-WD; Mon, 16 Oct 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 617401.959955; Mon, 16 Oct 2023 09:55: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 1qsKJv-0005A2-TO; Mon, 16 Oct 2023 09:55:31 +0000
Received: by outflank-mailman (input) for mailman id 617401;
 Mon, 16 Oct 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=BBjo=F6=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qsKJu-00059w-Om
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 09:55:30 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur05on2062d.outbound.protection.outlook.com
 [2a01:111:f400:7d00::62d])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 2389c170-6c0a-11ee-98d4-6d05b1d4d9a1;
 Mon, 16 Oct 2023 11:55:30 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DBBPR04MB7836.eurprd04.prod.outlook.com (2603:10a6:10:1f3::8) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.35; Mon, 16 Oct
 2023 09:55:27 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%6]) with mapi id 15.20.6886.034; Mon, 16 Oct 2023
 09: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: 2389c170-6c0a-11ee-98d4-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=iQGNabtSxeD+TabdJQSxe/2hBrlDUc6A4VfskdnMMrk/9z050jjD8YD9INEKfmeMlzn9HYTiVwWGiYc3Vdn3Xo4BpQZS3QVeERu73tXrpaNE5H310VdGeoaonauoGov05s6ky2wPoXlUhMLYGFnN/MhPwQ1fAbxuHZdzjJl4C5ydjdsddcP3D/M4Ex6kfuvWt8hZ9Zm1mcLX363KP9py87h0pvSyeAxjNS+R18N4RQIPRatLcHpJ6oMLAI9LSbEUHls1o+4gIzlslbdpENgnRKgHI7qjIcDZeU4i9jPlFDH2EohSBGqkXXuk9bM8BZKnnO0eeYFJFg+uhF9qTmbFwQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=qt5jiyNVhpPgQuwG0sCmBK2m/Mdk3BY81XatDTvUZg4=;
 b=AtblVHVjS1YfcFK6pVuzBu91XCXeSrKVNFnFUsmG49YC7UdOJrtcC+jx6vS109RpGIY/bqaxL3e7Dnif0E6V1FbVwWOOdWRTgnUpSe09bfmzWUDL7cDR6RSSztd6zAI2Tw3n2HQCrtmGeKVb/7pCGSUDCFgYFqSmyNIZIlTMsMCeJBPSyfw2DYuZXTy/bZTdndfprGDoEZ3N2RPl2RzXa+57zsjhtkKntOEONuPzULMif+4SNGU+r0u7oMmX2Xk28EjJbha2oybpuOMz7bWk87CqO5GAAMa2RRMToVxvnjzEUSuJuhoCtW63m7uxXLvnZsH7OJljHv/8EDHOkWo97Q==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=qt5jiyNVhpPgQuwG0sCmBK2m/Mdk3BY81XatDTvUZg4=;
 b=UzSCTzCYu6RpMUIB/Yf0qQePl75qQJlxP+cSKyUrU9XiRHguul9cZwyCpsc/lEzApjF3d6m0QMt/U9YpG8123s0AlMMdeWRK/pLEoteFnobv0WxTWW9UDB5om2h38KRMouCOrb1KRRZFcg0M8lK5Dp2hNT9lh6JQlUsX8bvh0PgfnZzMGAxvj0kuLFJLE+42LTK5yKMyA1DBgd3tL6zWlqn52kzMDDJ3vEVqqdQPkhNj+u4/yU8A9BI4MGaYIFoJbd0eHn74bd8Ti7zPyBSbk5vZIiR3/xsMQPCygMZcOuVUUewQwp8D3yYej+m38e2ESImCuWvYghuDEs+h1SYd6Q==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <66f7bf81-2bf0-cdd8-8dde-6439c4991468@suse.com>
Date: Mon, 16 Oct 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 v6 06/10] x86/mem-sharing: copy GADDR based shared guest
 areas
Content-Language: en-US
To: Roger Pau Monne <roger.pau@citrix.com>,
 Tamas K Lengyel <tamas@tklengyel.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 xen-devel@lists.xenproject.org
References: <081ae245-9d47-4cab-ad64-54b33566429c@xen.org>
 <20231004135331.83736-1-roger.pau@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20231004135331.83736-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0064.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:93::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_|DBBPR04MB7836:EE_
X-MS-Office365-Filtering-Correlation-Id: efd3ee0f-5643-4431-91b5-08dbce2e0638
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	GGxtI/Cmbu2GtuiRchXu5c4XhljNaTHigV9MTQ4BLdrTZ7X64XdueHudCPjS1RNPq/hZus0bPcNZWjQPXQlrqOnVkg5u/8amtE2DcGhnkBaFZdx7SHnk2Cr2EZ+IGEVYiW3FIcm16ig+xgVF3SF2lpxNo/XOi3u0+yK081mXDEtXkGYx7ZnJd0XoE8nVel5mVNMctHXkptruDVW1mYpkbYyQSHuW4duFsEZ/BvRf8ubpqz/+DSUpPnJYFkw9Fl6cwGZqSmR6UKnQGRZd9F9T0tTGJDBZt4L+R4xbNKCb46JaJJVUZdPeolNGAXBTrQ8qfqauT5pUg4QpGaFwziizo0xmL3CPHtXnfqqes3hclZKvkBzKnE1ZJWcFsExUEsG8CW4jcD8g4IN9VqXFdPCHDABWtir48END3QH5CByO3T04QSrh6FxiRNAat698U1QcbvZPl4l5OI9/csXrQFPoU1St6e3DiNco0QwbBXyJOI9C6uFSOxcju2JQcHMXouwUUE4v/mevixCp8JcZu/51DfApLUHS5Nj2734uSCO2m/EEAUKtA+mNnCCqtJyaqu9WgVliD86lmJkrJ6FmzrDsYXt7FhnE587SHu2A/dAUIQT3E84HQ6OJQgfyfoDbHdz7dAlWj6anfgCY/PAWY8AMmw==
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)(39860400002)(366004)(376002)(230922051799003)(1800799009)(186009)(64100799003)(451199024)(6486002)(478600001)(2616005)(66476007)(54906003)(66556008)(66946007)(316002)(110136005)(6506007)(53546011)(26005)(6512007)(5660300002)(8676002)(8936002)(4326008)(2906002)(4744005)(41300700001)(86362001)(31696002)(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?YkZ4cCthMXY0NXNYY2FNa2I0cnFHVzIyV1lZaFlUYTRYTnluYTVsQXl5VzV4?=
 =?utf-8?B?Nnk0QjB3eUxPYzZMckdPNXQyMHpVaXlCUXdUeEFNbGoxVXBuTVhnVjg2V0Y2?=
 =?utf-8?B?M2w4NFVMVWdJOGJkaGpWV3d6N1BOZ1JlL3R2V01pZnNmQ0JJQVRkcDYwWlRl?=
 =?utf-8?B?a3g2MG1vOE5mMWRpaHlkc0V3UTBxQytvUW51VVh0d1IxeCtnTS9EQ1ZMeWc3?=
 =?utf-8?B?dERtTU5yRnc4TTZOQzlnTkpud0c5YlJCWWtSUkxNbmZBS3o3eXNLY0NIZFk0?=
 =?utf-8?B?d2V5djMvL0VtZHVDSlJob3UyczlCWmlieGY1M3pablMzNmp3SnZJb2xmb1hB?=
 =?utf-8?B?VS9hUDZ4cVliRVBrTE42V2NSZXNZejNOTC84a2RCRzl6MkprUm1Rb2xaTmpm?=
 =?utf-8?B?U0M2RHg3OW8wSzlIRWRyRTRzRzlwd0JZaDdjMmd1b1E5bWxiUFpvcGRQMWNN?=
 =?utf-8?B?eW56UDZseTU5M0tWbjNRekZ6cmRDcCtQUGxqbExNNWJONkM1K1FwcXR1RXJw?=
 =?utf-8?B?MHVNZnJMN0wwK3h2bjlyc3BkUFYyekJOeStsQVZFdUd2Y25iWEdkNjVjeVRz?=
 =?utf-8?B?VWxQcHJJODBMZm9oaWdlbEh5cHJzWktTbzB0VEg1TFQ3eUtueGMzdDlzaXcz?=
 =?utf-8?B?QkVYdUw5WWREUFVFLzlZM2dRUXhoWDJndFU1QlZwUmJSVmNiUDdvblQ3S2pq?=
 =?utf-8?B?ejhhaTBQZWxDM0Yra0RjcVljdExwRG90Ty84Rmw1VHZOa0J0bHNPY2l0MjBB?=
 =?utf-8?B?ZlBpeWRmNWptVWxSSkpMYjVLb3E4TUZJb3kwdFduZy9IRkFNamt5Nkh1V3pr?=
 =?utf-8?B?VmFEanM0bmlvWGlPQ0JUY3Q3LzBpWXFPVmlqTzdOcXljR0pydTM5S2dOV2wz?=
 =?utf-8?B?YTZvR0dobWJjNTZnRUlmUW5qbUdUS1ZzaWQzUTFCa1hYREdQbWFqSE1RVVZ6?=
 =?utf-8?B?dGhiMWJ5dmQ4bVR6VWVSdVFCa1JVNElOdnNHcXlVNEhycHdlR3JlTExTVGNu?=
 =?utf-8?B?bVc0SHZpazVyYmFJR2ZmQWsrbE1mN0JYUEo4TlNSSHV4UXc2UkpkaHlpUTZH?=
 =?utf-8?B?ZkF4S3JyeWh4M1k4VkJzbFpLUDByd2dvM3M2L3ZINFBZUytEQUtiRnV6eitO?=
 =?utf-8?B?Uk9LSW9sdjRNamJHWVdheE5OOGI1dWU4OGdXVTdZZlhwZDNDZ3dOSkQvVDc1?=
 =?utf-8?B?K2w4NFJPcHlKSUNQeFRYSXBwOURTVVV0Y1NzQXliNkN5TnQ4QWp6RndBbjVr?=
 =?utf-8?B?RkhORm9iUkYrTXZsaGNrdjlRUGtDUWZ4c21IYzB6dmw1ajZwaEhuUS9GYjgw?=
 =?utf-8?B?ZFlDc1JCS0R4amFZaWpPTVJxZzBCdFBMTmxTNEpDRmxWcjRhWW15aW1TUFpu?=
 =?utf-8?B?RExkWkYxMUIreTgwZDZnVHlIRUIreEliSzdFV0dydEJwWSs0Y01WMTI2Vmgz?=
 =?utf-8?B?K3FHSVpSd1A4SnlsNUsrSHlTdm1ETW15ekdUQ0xra01mLzM0cnlod1ZTZW44?=
 =?utf-8?B?VytlaVAraWtDdjhubHBvdUhBcXlDelJCRm40YmZsTHBReU1OdjBmWGxoZ3g3?=
 =?utf-8?B?VFVYTEdVM25uYkNkU01pVnhmdzQyckt5S0VZK2dERmtud3VlLzduMGR3U2hO?=
 =?utf-8?B?a3FhditNU3BLS2JwQ0sxUmNzM0dYRHhSekcrbGZNYkk1VmZyS1hoTkhHRkVn?=
 =?utf-8?B?Uy91RzQxTnp2VDh3K1AydXpnWHJXQjZJVFNWa3gyRmgxa1c0SVhLT2VXSHU2?=
 =?utf-8?B?YjhGYW5pRzFqM2oydk5sNUdzc0dsUlBWNldKeHg3TVVPTktsUVJINkFtL3ly?=
 =?utf-8?B?S3E1Mm8rRkhqR3hYWlMxSnJ6NDE3Z1VoY0VyUXdJVklscktiNDBJNkVWOUJv?=
 =?utf-8?B?TzV0RkMzSlJoNkxoUEU5OWxMdW4xMXRCWFVoSUtvakZOb0REWEttMzIvc3RN?=
 =?utf-8?B?Z1RwTTFnRXBSeWZWNS94ajhQVXd3UTQ5eTZld1h1TThZc0hLRE5NSHBVMkRo?=
 =?utf-8?B?bTUyTENZMEJsRUJIMjhJSW1leGZscUtGUmhod2xCREp6MExkL0x2TXFzWUsw?=
 =?utf-8?B?RFV2TmtTc1lEODJ5aTBwZGpSVitOTS92NlpISm1pU1hsMkprRDB0MHNCSkNX?=
 =?utf-8?Q?TCTsL/O4ph7xxBCaExX00pR7I?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: efd3ee0f-5643-4431-91b5-08dbce2e0638
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Oct 2023 09:55:27.3362
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: iDLyBiJ+Ak1tncDmtYt+PuN8HL6cE6UneCLTAK+siZWiJdoB/leWDMSNTvfXFGEkiGCaERGjvxoVTJWdr2Egfg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBBPR04MB7836

On 04.10.2023 15:53, Roger Pau Monne wrote:
> @@ -1950,7 +1978,15 @@ int mem_sharing_fork_reset(struct domain *d, bool reset_state,
>  
>   state:
>      if ( reset_state )
> +    {
>          rc = copy_settings(d, pd);
> +        if ( rc == -ERESTART )
> +            /*
> +             * Translate to -EAGAIN, see TODO comment at top of function about
> +             * hypercall continuations.
> +             */
> +            rc = -EAGAIN;
> +    }

Are existing callers known to properly handle EAGAIN? I'm worried of the
verbosity that was no lost here.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 10:05:15 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 10:05:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617418.959965 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsKTC-0007eP-1L; Mon, 16 Oct 2023 10:05:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617418.959965; Mon, 16 Oct 2023 10:05: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 1qsKTB-0007eH-UL; Mon, 16 Oct 2023 10:05:05 +0000
Received: by outflank-mailman (input) for mailman id 617418;
 Mon, 16 Oct 2023 10:05: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=BBjo=F6=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qsKTA-0007cT-Hc
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 10:05:04 +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 7890357e-6c0b-11ee-9b0e-b553b5be7939;
 Mon, 16 Oct 2023 12:05:02 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM0PR04MB6817.eurprd04.prod.outlook.com (2603:10a6:208:17e::21)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.46; Mon, 16 Oct
 2023 10:04:59 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%6]) with mapi id 15.20.6886.034; Mon, 16 Oct 2023
 10:04: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: 7890357e-6c0b-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=FvvZVp8LKyy3Ub4YRH9pEpKH0b+usM4sTObXXWW/2IxSvdiRfvAvoYrn5EUEBDA8SBYQI3hM6GROpRkP3t/AJJaTdzLWjmpQ/poDQkWVFpd47YnFPV7zFLEYgbY2MswrQW1uBywxiGmSv0iBFKsXp+xjI0iLfHvPzX0dLiRMn3I6VYfHRU9m88WLO7d9pKnNnboWks6w0GQ8FGfses1ZIirz0oaKEcNZVHUjVNOrZRrXSkiOgBZo2nyRsrxNMv8P98S025riVQvECaXXtX0iInqpexPZH34yJto3umOW18fRNfujMfo1VgBabidMdyAPslSQ9n4amMA8QjxxDWMX6w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=X8nJcolPsRnkQBhfl8OlvP6KhoU+y2+T/M5M7rwXCP4=;
 b=RNe+En7BKHHuoi0QwJOx7Q/kjymrhgNHn/5Gn6zS+LoSJ9YuJG8CzIp48gVxxeGxL07e+boOWCk4uqIytv2S2zN6yhvnap9GMtE6Ig2jkPw3HyPrnho1Qy8FNMATO0vCBEmREVGWnkMH2UzZfW3Eume3405p8RVuzOZGZLxZ5gKGM6QrXfIm1xLghLlCTxV11kGmmw0xwunHCW0aKBC6kjxUN7ekoQeUqK0DXd3VtWDQN8Uj7UgriUAD4vKRja52r7TDKYvXlPZQ0jTEj5tITChTxMxJCBQyDOvN0IvXrG9hIUDU4CUugAQML4Pdl681j/D92UigxjPQtwezDZ5jew==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=X8nJcolPsRnkQBhfl8OlvP6KhoU+y2+T/M5M7rwXCP4=;
 b=x+uA016Hj0qbzvqiO/LBZIiLDM9BCsGHV5mPSt/VhOG29nQjyBNSu2f7wX4PPkqkz3L+oYTaThd5m+tjLxZ8taaVfGKL9xETCbjGChQfMVN/2gRtcW+BCMJKQ6a0UeeyR1cRn9VzLpMBNiagS0YgpYbwowIQRdaCULpC2yBI45RB/8+OQzZwk1+5man/+cDcayHPcFx0kJ/23LbJDyhHqA1F/KI5ag6B0zg0N4xOpZrANUolbip82Mzw1YUsj7RfOnzYkC02umVZGT7dDpxFGGed4CgfmM83ZisEPh4n5GV8YsB6GgVADlmKD09irvN1+MxnNWGdruJi7U9o54eplQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <e0370403-9a1e-83a1-ff8a-1d3d8c463959@suse.com>
Date: Mon, 16 Oct 2023 12:04:55 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [CRITICAL for 4.18] Re: [PATCH v5 00/10] runstate/time area
 registration by (guest) physical address
Content-Language: en-US
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: Tamas K Lengyel <tamas@tklengyel.com>,
 George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Roger Pau Monne <roger.pau@citrix.com>, xen-devel@lists.xenproject.org,
 henry.wang@arm.com
References: <20231002151127.71020-1-roger.pau@citrix.com>
 <ff8994eb-968d-4bbb-a960-e5ca78ef658e@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <ff8994eb-968d-4bbb-a960-e5ca78ef658e@citrix.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 DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AM0PR04MB6817:EE_
X-MS-Office365-Filtering-Correlation-Id: c09c1156-4b2c-488b-a4bf-08dbce2f5a4c
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	eOExx9ZX0g5wM5Xv8d4vFhTNDzzTK6lan+de3IB8BgLyxqq+OaGXXXyxu1SGUDIA3Qgk+erCD/mOyx7bc88KpyAKX81j/3amTnfvco6x7pIPjOTGtNi2oTcl89pR+RrgYbGknk7UC2QgL+9uIm175ZTWQbgIhyAZnYrAFOqxX/7ClXNdAdcSiEk1Wj7iaAB28zVEzuPwabdNDCxJ/6JqWUlP4sCc6Cfap+1ciCee0kxBZ677q7tyi7H1SND/mEgr1iVGJGWIW2/7YgF0PiOiDzYv3eftyVHGf6MFgZwEyAnm8w8TnRYmSQRVFNBuKDbfpZxxcUNGIXLVBpI1Duy9snBHLa70eXXQR1hMaZ1v7f6IwjHuIbMwwipuutWlw0XHYYhOdWKphtf6p+VRRIVOZQ+osyXpLv8/CloqrBd4N6AEGenrjnkURjBHc1g7KFbGyNAdIBAy0tkb5IuyCnU8RsQtUesov857mfTLpYFfcQeE+kNf25OQUvQoOR8ZGTeaRYyyZ5diqURxuc1veTgZenRDbP9GEai5Qx+wv2xS0ybAIpIS58NThqgNjq5YwIlkcx5y6eMy0Nstm0ciCSiyphZqsyQBRbw8G+7P1uK7j99M+KIvWlWnWhuC+4Glf0xuC155hAbC3262SvUBBAOa9g==
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)(39860400002)(346002)(230922051799003)(64100799003)(186009)(451199024)(1800799009)(26005)(83380400001)(38100700002)(36756003)(86362001)(2616005)(6512007)(53546011)(31686004)(31696002)(2906002)(6506007)(5660300002)(66476007)(54906003)(316002)(66556008)(66946007)(6916009)(8676002)(4326008)(478600001)(41300700001)(6486002)(8936002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?ZVRsRlFQaW9YWHAvWlR4bkRPcEtRWDFOTy9FOHJUVnpZVC9odmpUYWZEQ0Jy?=
 =?utf-8?B?VnJjQU9YRWswbW5rSXp5WTZzZlRkclo0Z3pvRWRTWENnUHlBZkVqWVNscXNw?=
 =?utf-8?B?VUFPdnpSbWRudklKT1JOUjNDMjJCaFR3dW9LWlRKSDRBdEZDN3VjNVFUTDdn?=
 =?utf-8?B?dWZZQXFSNXJSelN6MTV4ejdnQ29PbmFqdG9ZTjdTN0tSQVRWVHJCaUprbUpD?=
 =?utf-8?B?R1gvaW1qa3lLRTNUT3hLTE52aUlwMXp4WlZnbExBaVlhYnpMNzVHWTJ4dWI4?=
 =?utf-8?B?eDc5bjZndFpycWljVUJrVkxYK1YyMGJabUhuako2eFE4Q1lSQy9sR2pjZGJx?=
 =?utf-8?B?VHZ1MTY4U08ydXdIbXlEWitzQW9wUjZVQzBKSWRkSEQ3VzZRVnduRjlYR2tX?=
 =?utf-8?B?SUtjMDAvK1NGd3lkZVJadTNJcmJCZllYVldsRHZ4OFJyT3dVWnFQM1VhZFlO?=
 =?utf-8?B?R3ZDNW02dHcyL2pRT2pUOXdacm5PUmJKdmRvWFR2b2R3QkhGM1VoUXVUdk9n?=
 =?utf-8?B?a1d2VnFQWUtHcHdBcjRCcVVUVjVGWVpTODJUUXNtZ0dEUUJvUHliZ0l4Vy9i?=
 =?utf-8?B?bkFOTHZQbG1BNm41UXVSeGZnc1d2UWxrVTNYS2piVjVaZTdRNSt6UGF1cklG?=
 =?utf-8?B?T1pXdHJJUXdOSkprRi8ySEJya3lJdDdTOW9zSWlEREZXa2lRd3hUZ2RyR2Qz?=
 =?utf-8?B?VHNoRE5QMGlWWmplRU5CNFphZ0JZKzlYZHVHUTErckY3ejA2ZGhJTkxDUGJW?=
 =?utf-8?B?Z3Jvd2RRQng2YVM5Myt5djNyUlRnV3VVM3dRVUJJRUZDa2FsSDdvdVExUlNX?=
 =?utf-8?B?NkI1WHJhZ0lkTUt2VXBseHlMcXJtWE1kQ2dCOVRDTSsvUCtKTGJqY1V4cjBJ?=
 =?utf-8?B?bHRwcmdzK1BlSm5BV1VjTVJvTkZHczl0OUtabHE5czNBWGZheElHa05IVFVJ?=
 =?utf-8?B?UEtVSG43bVNRaGpUUElXQjh3Sm5JZXhMNkQ5dkF5TXBXbHhEaHJBMm1PbE4x?=
 =?utf-8?B?T0NDOGYxRkpNTkt3MHh0RCtTVFJ4bTFEU2ZRckcvWWVSNDhkbG9JbGFTZ3k5?=
 =?utf-8?B?OFdZbnF0SVduNmw3cy9vckRJTGxtL1RKaktLM01JRUFQYjFrRVZJOXBYU3JN?=
 =?utf-8?B?MXlkbEY4eWUxNXJPem1GSW9oZGxPbURTZis3T2wvWERmR2ZBYTJVV0RhRGFN?=
 =?utf-8?B?dDcyVEd2U0VYMGJTdnptWkZLZkhBVVNTZnU1cW5nVnhYaWtaR20rTkExYVZm?=
 =?utf-8?B?WVZMalJBazU3dk9QZ2lkamloLzRWM0owMHgyZmRNcUh6a284SnNBUGRyVFFV?=
 =?utf-8?B?dlFJRGZoNjRlUmw1UlZpUHllYjg2cDRjaWZlRVJZMHNQWE9zVk1BYkphS01M?=
 =?utf-8?B?TzZCL29kZ1ZkeEdpRStFYTRWSDBxbEZEa0ROcVpUSkFOdVF4RTA5UzBDSHZ1?=
 =?utf-8?B?NGNsV0JlVjFlRnZBVWZ6VWU0M3ZBNVk2NGFnSHd4dGZ4ekZCMjhkTFZ3ZmVV?=
 =?utf-8?B?azhOaTA0ZC8zb3VyZkdndnpuY3VXcEVpV0tEZVlaNDZTWlVaYlNEd3JHU2Ny?=
 =?utf-8?B?bkkreUw3TW8zTFNmd3hmZGtCRHB3cFJYM3cxRlhzWjg3Y1BpeHhXdmVUN2d0?=
 =?utf-8?B?U1p1cXd0dzR4MFliOFhRdU9vbGUwY25KMEhldnBaZGJPNnFZZGtzMUJJR0dL?=
 =?utf-8?B?MS9ieXRLZWZzU1UxYlVtMnB2Yk9TMTNkNm1tbXlkODBYZmdWSlllcUlwY1Q2?=
 =?utf-8?B?NFM0NTFxbGw4ajNkbTIzR3kvOFpVYjRJUU1sQ0NvR1NJVzR6NXdVbTlKQkNS?=
 =?utf-8?B?NGRoY295VnhzNThYQlRzK2F5WCs0K3VTK2hla3BkQWcrSHpXcU1DZXhnWGpv?=
 =?utf-8?B?dXRKcnR4a3g4NUtUcnIzanN4YzR3WEwxY1EvUDhxSWtaZkZ1VDUxKzJhTk5j?=
 =?utf-8?B?Ti9NMlRZOGZDVTN0eGd1enJSZ3hpQXZ6bktIL0NyWWZ4ZHJzVEJ5Q2lNbVBF?=
 =?utf-8?B?eUlzRVJ2dHByeFBwdkdDczk5bFora0Z2aHd6bk91LzU4K1JGUEp5TVlTNHFZ?=
 =?utf-8?B?T0Q5cFlzQkxEOTFYOXVZQTU4UFEyV3VicEpTY04xQm9QM3FMVm9IVVFDZ0Jq?=
 =?utf-8?Q?X5OkT1Wb8FV+wBEbcxPbK1OuR?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: c09c1156-4b2c-488b-a4bf-08dbce2f5a4c
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Oct 2023 10:04:57.8322
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: N+JzAH3FmTL+EG7mxLX3G7vdHvYX9xAMth3oQjPJTg0tbUU/YIvUe8NAdSf+/fZhacVJ6LTv40STlS+RLRph+g==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR04MB6817

On 05.10.2023 20:58, Andrew Cooper wrote:
> I see this series has been committed.  But it's broken in a really
> fundamental way.
> 
> 
> This is a new extension with persistent side effects to an existing part
> of the guest ABI.
> 
> Yet there doesn't appear to be any enumeration that the interface is
> available to begin with.  Requiring the guest to probe subops, and
> having no way to disable it on a per-domain basis is unacceptable, and
> has exploded on us more times than I care to count in security fixes
> alone, and that doesn't even cover the issues Amazon have reported over
> the years.

This has never been a requirement. Plus you had ample time to raise such
a request.

> Henry: Blocker for 4.18.   The absolutely bare minimum necessary to
> avoid reversion is some kind of positive enumeration that the two new
> hypercalls are available.

I disagree; to me this is a nice-to-have, not a requirement.

> Otherwise I will be #if 0'ing out the new hypercalls before this ABI
> mistake gets set in stone.
> 
> 
> If this were x86-only it would need to be a CPUID flag, but it will need
> to be something arch-agnostic in this case.  The series should not have
> come without a proper per-domain control and toolstack integration, but
> everything else can be retrofitted in an emergency.

To be honest, had it been clear that you expect a per-domain control, I
probably would not have taken on this piece of work.

> And on a related note, where is the documentation describing this new
> feature?  Some tests perhaps, or any single implementation of the guest
> side interface?

Documentation is as for sibling interfaces - as much or as little as
we have in the public headers. I did test all of this with XTF, but I've
pretty much given up posting XTF patches, seeing how even XSA tests and
alike never made it anywhere.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 10:07:14 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 10:07:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617424.959975 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsKVF-0000Ep-GU; Mon, 16 Oct 2023 10:07:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617424.959975; Mon, 16 Oct 2023 10: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 1qsKVF-0000Ei-Df; Mon, 16 Oct 2023 10:07:13 +0000
Received: by outflank-mailman (input) for mailman id 617424;
 Mon, 16 Oct 2023 10: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=BBjo=F6=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qsKVE-0000EZ-7v
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 10:07:12 +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 c5a9603a-6c0b-11ee-98d4-6d05b1d4d9a1;
 Mon, 16 Oct 2023 12:07:11 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM9PR04MB8488.eurprd04.prod.outlook.com (2603:10a6:20b:41b::24)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.36; Mon, 16 Oct
 2023 10:07:08 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%6]) with mapi id 15.20.6886.034; Mon, 16 Oct 2023
 10:07: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: c5a9603a-6c0b-11ee-98d4-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Yi8jL6eh5+L4u3J1plKBxGJj6SSNZaE+Xmw7zNup0IoDJT42nIRIF9wvoiaJe/SnseAi48CVqGCgDeyHi/wxn0tZE7jp2f3w7W2uPpuAA5gw9+anOZoDrS/0kgYNw1Lk1QnLiUPTExcGsjIXfjFVM0N3WqcVIN/lR5WE1YtFI+xcQZx69OJJBAtj8YXyEC0gqTPPjSOKvvlvET/m8HTbud6rifbL4C55HvsmMMOThBx/28GgM+qgNw4XNROWB+XOzrpKNiwuhpzLOyxXuhcnyfPTxGaCYbb7wukLahymD3Eu17oQ6HzkEc0+06RmBO7NXI541yuYd59Nc74EVTDaDA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=AM5fyfKtKu0gfNS1BOMZ3y4vY9dwBbzn1lkBCuvq7kY=;
 b=cyZgY24luNlche/XrR40tNNcJASChr4qbaTKfB0onGFk1Xpv0pNhc0NToh79IsY2699eVkGpl+YyzC9lPkXoDvDUICY/DDZU+BLzuQpgXoiKDmXqmJW416G6yt/YR0segfpA/7htfifpaeQsFjFsSyjRzk8zPR1p/V74JEVGucYe4Inqqs75NjUKRxHGD/5d8Sy4gSM6X1X1N+Ism7e08uz8JYKARHs7bfD1GNvDr6J4Mz8tN/sR2Uds4lr9F+QRs7vgpmA1gJFB/0UAHlFw9C+7F0fnjtysRKh+mSDrDa77AbpdKups6m8jm6gJ7V4Va1LcVxVLH0VkC7xFC3nNHQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=AM5fyfKtKu0gfNS1BOMZ3y4vY9dwBbzn1lkBCuvq7kY=;
 b=degIvQseRCbrNDERhkd5hYBBKLaoIPSkgOLKUdHni2qIj6v/yBHEICRZGwhr+6cYwNjFofy+z4+y3OrIa2WdusjpskWwaxPbEPifEMA/PXN9zXce5edIbW5pOvO/fYmC813QgxBIpklPJlme3t9eQxVjcmu05kwzImdTFc74EYliek0VE1ZRYlRtvL4rpGl3Q1TIB6H+oUhQ3ehUTvO44QyxLUOc7MA3vAaa0NrhqYUif664kcU1cAjv83xiXInkeMG32n3hsN9vQRHidlZgRKT7Gmw0+Ql/NgPZzrD6RfGuMOQbucuEvQvmXcxU27/PVU9JiA4YljHZaM+n4EuO5Q==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <3ed5ba6a-2698-730e-c6e6-46ba7674ee86@suse.com>
Date: Mon, 16 Oct 2023 12:07: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 v5 00/10] runstate/time area registration by (guest)
 physical address
Content-Language: en-US
To: Roger Pau Monne <roger.pau@citrix.com>
Cc: Tamas K Lengyel <tamas@tklengyel.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 xen-devel@lists.xenproject.org, henry.wang@arm.com
References: <20231002151127.71020-1-roger.pau@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20231002151127.71020-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
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_|AM9PR04MB8488:EE_
X-MS-Office365-Filtering-Correlation-Id: 7258bdf3-d56a-45ca-80ed-08dbce2fa81a
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	XvoqRLYRjVxORVISLLvWqHX3BZ7xIYKW3HxgEehjQMGK/NTqAGeRezsK4nX1SLAoPCMztgQoeubKrDWyMGa0B/QMQwJj7jvcE2QomFmnCqg0qJ108a3oUIbG8UwnHbmj9kMdo6ATepf/DnVsQdSK+hsLN8PfeZ4rZPELFORDwBEaOMoS6K+G4ujzAvZhqVJ/daiDzRr7jQtTmMywCQbyDd8bMerajn/iDSRcGkn5EBaVXZB+QwGIm9gst9X4ioh3hhgwGjYyUPzeBdORVy3ZOWH98l+3X9429jXX/oJ4OBc4ZtkBDaj5lm3/YoEdizxFdCTDcJhYP6iRnR53tTW63jdbRpwfcxlXMyoYkZZru/+r3RXA4ZOqeMhWkrAyA0cLUkzXN+8rp7577kStOvN/0fO1kx+csOb28JMS1nBTPI6aJpeVn2GgYRW3w0uDLv816WxQBrWyDNZnlCozEPQsn5byxmr0r0dIY/5cK2d/Trnva94iq7T92gzUUM0goksDsxb9CJSOqC/0vVO5jemhpYO7CEP/CLFG1igGcubqbn9GXfHvMsMWJwifI+ysT1CboLUvGHnXjcyc8klV7oyMfK/RsCZ46C7zKcY1PRyJtu5ce6xRnqyEZAZWffIIFoS4WUAjZuGlKIHNRaQ4KA2h7Q==
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)(366004)(346002)(39860400002)(396003)(230922051799003)(64100799003)(451199024)(186009)(1800799009)(31686004)(6486002)(478600001)(66946007)(66556008)(66476007)(54906003)(6916009)(83380400001)(86362001)(31696002)(38100700002)(316002)(6512007)(2616005)(26005)(6506007)(53546011)(41300700001)(5660300002)(36756003)(8936002)(8676002)(4326008)(2906002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?MU5pdnRrZkJxZEdvNmVCNXIzOGJIQmNsOEhpcHZBS0dyTWVVM0Q3eHUxci9o?=
 =?utf-8?B?bU9FRDJYNm8xWjUxc1d3NWFhVmEyK09NQWRNZmFYV0tkZ291TElNZW5PakVB?=
 =?utf-8?B?T1QzcmhRY2lobDJIT0xjM0JmZTF1eXlBMHNEdU16T0VzckhBcjZSUWlTcVhF?=
 =?utf-8?B?RmlpRW10MDVwdExGbDgvd054dlJ2V3AwSGZSa2twbmxvRkFGaFRpeXQyNERn?=
 =?utf-8?B?dWM2U3UvRTFrYVZrLzE2N1JHMTdnWGoxUm1iZG51SmhXUUFodkRLVkNMaUp1?=
 =?utf-8?B?OTFTVEE4MzRLelF3SnF3TnJHdXd2TjlObWtpNUluR0Q4K0NJTndhb0grSmxy?=
 =?utf-8?B?eWJIWTBsNnFrM1F5ZTllVUMyZThRRHY3alFzM2ppYW05VWdHUGQzdU96Rlgx?=
 =?utf-8?B?WDY4ZnRaYU5lRU8xZk5mQ2JOdTIvazJoSzlDYUQ3eGJiUUdTQlFEcFpxcW9r?=
 =?utf-8?B?ajh5ck9jODZieDRMYWlYaFVUOTZEcFlUWjF5R1lNeVFYMUFIZWpMNXlTdmJX?=
 =?utf-8?B?WUdHSUdzMWdCUEtxaERIb1VwL1ZleUljTGl2VmF1bVRxNFdyTVVPQTB5QVpz?=
 =?utf-8?B?RWd3MVAwSUt2QXdaTzBEQjRaelpDTGx6UmI3VWE2ZGJLa2Qrem9iUjJkL0lI?=
 =?utf-8?B?S05yT0JmNmdObUdwd0Zya2pNV3lmbG1DdGpZWmpNSno3dnhjK2orYTVJZ2di?=
 =?utf-8?B?ck9TRmoxam15Z2ZkeCtiQVZaNnh1eWhSS1hDWExiZElNc051YTloSWg1RVNj?=
 =?utf-8?B?Zk5CdWJwVTJNdnZoa1QwckFodjFhS1pPNWs5KzNNRjc5OTBNZGcrbUdhemVo?=
 =?utf-8?B?aFlaVk80dGY1bkFGSldwQnZ1aERJQmhITk40QlRWOGJLbUZyOTd5UDhGSHdy?=
 =?utf-8?B?WGMzSjJJNE9OODhRMjViSTUrSk9iM1V4UzZXWWc5MzExaWl2MGo1NVA2U1l4?=
 =?utf-8?B?eTFrRUpOemk5RHJBSVpHd0FDTFVyVVViZFZSZFJpRXAwTXNOcGRXemxLV2Iz?=
 =?utf-8?B?bFFCMFdndk0vYjdkb1JYWkRBeTVQb2Y3VjUveDUzSGxRaW44aEp2TVZSem5C?=
 =?utf-8?B?ZUJubDZCOUJnODlHK3ZLYjA3ekhpMVdLYjgzQVBXVERMR1M4bnlnRHFUb05n?=
 =?utf-8?B?VjMzQmdXMjNDWUlXTHJhby9tazFpY0xacUZ5emFwbFhpNUF2TEdobjI5Wm4w?=
 =?utf-8?B?enFtV0xhMUN2WG00ek9ScU9relRrVkg0blYxakdsdVdpRjEzRnpWY2VtalVv?=
 =?utf-8?B?Wi9yaWJkTk9BN0xGSjBIVFlCUlR0enNzd0lZcXBxdmJEVnloZVpYeWtPcWxF?=
 =?utf-8?B?YU9FQ3phOWppa0lvVWFKU0cycjEzMXhBQzdpMC9RM3B6c1dtUnM0Njh4U0s1?=
 =?utf-8?B?YURDYTRpWTB3Y2l1RlVZQmltcGt6cE8vZ28wcjJVNWZ4cC83U0c4UkYrZmk3?=
 =?utf-8?B?cGxTTGRTZmc5cW15aE5QU0JBL0xWR3Rud0VoUDBCUEdZaEk1ZXZ4V1JHV2dJ?=
 =?utf-8?B?KzVMbmRXNFhRV1g5dU5PUGluWU1TdUk3SjVKVEFBRHk1S3F0WjdBQWM5aE5j?=
 =?utf-8?B?VDZZYXNieGorWFF0bnZVV1N3Y2NEaTY5Wm8wdUtSeWJTT3l5cWRBVUxRaXBX?=
 =?utf-8?B?WXR3VVh4bDVmTXpVQWs4RG1ZMjA0SXZNWE85RXd3aWdWRjFXTDlXb3dzVGs5?=
 =?utf-8?B?UmJzNXhaQXpPbDJybGxldEJhRlUxcEpxSnJDNXhNeGFMV3d1amZSaHNYSU1N?=
 =?utf-8?B?Z3czZ01mVGlJQkw0QkhmWUVObGxBZis2alBPQ1VjUFdDRitiaGxRNlNHNys1?=
 =?utf-8?B?cWxLWTF1ajFtMWFMYUNuWDlFVkRmMFpDUGFTdHA5aHlZUHdtQWtjRW9LNlcx?=
 =?utf-8?B?cENSMzFQN1hhZDhJMlpxMnZUclI4bFVvNDBzUzhkNGRsWHBYVy9IY2pYaURZ?=
 =?utf-8?B?UXV1b0cwY0U3L2RuOXFuV25iM3hCL3JXM05lK0hrNmpVYjlpd3VKdnhpdE5V?=
 =?utf-8?B?Mm5nRllhUTFtaGJrcHEwOUo2MGxlc1hvcEdITEg1Y1A2OUVCNkdxWlhOUHlz?=
 =?utf-8?B?bGZLaUdnSVV4YjE4V0NoSFNmVWZqbVZDeGlBc1krdGZ4RldZZUFRbkZZVlF1?=
 =?utf-8?Q?aWgmj0D9IYl95ovZR3LdB/D0y?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 7258bdf3-d56a-45ca-80ed-08dbce2fa81a
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Oct 2023 10:07:08.3098
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: JH9o6XHwwnt0+CMDCXK9KSqFw/KmDh7hIDaQsja8xFXYjXjmCDxM6uknos3HGUZRjT/L36RbYjwdV2k/96iZzw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR04MB8488

On 02.10.2023 17:11, Roger Pau Monne wrote:
> 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.
> 
> v5 adds one vm-fork specific pre-patch that does simply the introduced
> code later on.  It does also fix a vm-fork bug.
> 
> Patches 1 and 6 are missing and Ack from the mem-sharing maintainer.
> 
> Whole series will need a Release-Ack.
> 
> Thanks, Roger.
> 
> Jan Beulich (9):
>   x86/shim: zap runstate and time area handles during shutdown
>   domain: GADDR based shared guest area registration alternative -
>     teardown
>   domain: update GADDR based runstate guest area
>   x86: update GADDR based secondary time area
>   x86/mem-sharing: copy GADDR based shared guest areas
>   domain: map/unmap GADDR based shared guest areas
>   domain: introduce GADDR based runstate area registration alternative
>   x86: introduce GADDR based secondary time area registration
>     alternative
>   common: convert vCPU info area registration
> 
> Roger Pau Monne (1):
>   mem_sharing/fork: do not attempt to populate vcpu_info page

Thanks much for picking this up during my absence.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 10:21:59 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 10:21:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617434.959985 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsKjO-0004fn-W2; Mon, 16 Oct 2023 10:21:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617434.959985; Mon, 16 Oct 2023 10:21: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 1qsKjO-0004fg-TK; Mon, 16 Oct 2023 10:21:50 +0000
Received: by outflank-mailman (input) for mailman id 617434;
 Mon, 16 Oct 2023 10:21: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=BBjo=F6=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qsKjN-0004fa-FP
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 10:21:49 +0000
Received: from EUR03-DBA-obe.outbound.protection.outlook.com
 (mail-dbaeur03on20625.outbound.protection.outlook.com
 [2a01:111:f400:fe1a::625])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id d043b96f-6c0d-11ee-98d4-6d05b1d4d9a1;
 Mon, 16 Oct 2023 12:21:48 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PAWPR04MB9885.eurprd04.prod.outlook.com (2603:10a6:102:391::15)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.47; Mon, 16 Oct
 2023 10:21:46 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%6]) with mapi id 15.20.6886.034; Mon, 16 Oct 2023
 10: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: d043b96f-6c0d-11ee-98d4-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Wixu2Oz3JbLOGH84B362omFXLuX23Z4AGQfrDOhfciIFGltiROtn3m5IkJ+HIvJpDWBJq7YU7iAVaRIfuW1teLOQrhzIn+Da0KJDX3GtJfcrmAWhTi2CNLxrlMnt2tOlWgEmcKEIzraKHcMvFNhxlx5DpiDxOAws17JCK18x6W9vYuxDPLMmOYYAVjXMhQMj9/VBhhKc2zbYykc71wnbJVH52DpDlqQNBqMsb2dqx7tbC/7EjCf1EF9kzM8Vaf3LDdlbpm88F0Ttfh/bEmuvWb/VaHpWtLeL0CQvgcKvRFFCmdHPVcBRmjLj2ed2H1TGiOJVNK5RjK9LCeVVrU/k2g==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=J0lq6V0PQ6+pL5KeMEiUHVXmdCbTV+gYoHGDBdiaa8M=;
 b=j5HicrgLLCBiRwuglFJvgAyeamXBJSZcLuJKSLk3XJ4NcbXUmSywidWKbDohRwKfYCNcVB0NYRlwF2H/WRp/3bMArzyRbuQW04sOdWwW7IeKf5eSKGu5Yd5HwG3Ppu0sLUuxw9TlWz9bvoq5Di69zVz82rERGNEJubdGuPZsIv0ANHgtqxl+hzxzubqTfVG0wvrE83bXlnNolxFw4jrKsUeoMSqy95VSXE5lS+0c0Jd5u+JBp1SK2bShsuv2Xn2QfAWVqE6PhUkfUafuAoxCpXGJmOCuKvm2X7Tik60Wk6PEZHFigYZQP4jDDCeAbAE2MllXvpbZUUyoSK4u0JWhmA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=J0lq6V0PQ6+pL5KeMEiUHVXmdCbTV+gYoHGDBdiaa8M=;
 b=EzY6BSc7iSGZHljEtZVX7y/EBkMO+qCMw2Vdqd45kgmE7kFG3JOd1LP5mWLs8TYBd0m2UbS4cWwIIieTa/nPiL8oL+u8eMIwu6OTFHFiClmWFFEozu4NztEC5SznFXmgHoAa5JYyLSatyGh7JX420MMl6YMzyVHfeZxGzYVudyfw+4mYfec4U69eZKjrWf2yoTVXgsLoTlJ7ripXVubiMf2wqCeSuJ1yo6siqrSyK4AckYkREEmhmL7ooxZ7jPHwhjoj7dz97hIXK9PEVARdLJEfNtBs3ycFfS7wDS66YxiNA9JjBdC+DuJnxGuUbG9UZl45szErqPvp+eRCsCVNhA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <898058b0-2a52-56ea-d4bd-c09f96ef0fe9@suse.com>
Date: Mon, 16 Oct 2023 12:21: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] bitmap: fix n__ signess
Content-Language: en-US
To: Stefano Stabellini <sstabellini@kernel.org>
Cc: xen-devel@lists.xenproject.org, andrew.cooper3@citrix.com,
 roger.pau@citrix.com, bertrand.marquis@arm.com, george.dunlap@citrix.com,
 wl@xen.org, Julien Grall <julien@xen.org>
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>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <alpine.DEB.2.22.394.2309291401010.2348112@ubuntu-linux-20-04-desktop>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0156.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:ba::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_|PAWPR04MB9885:EE_
X-MS-Office365-Filtering-Correlation-Id: ba5cfa42-82f5-4766-3eb8-08dbce31b33a
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	Zia79rmuyz6rbC3fKN8eKM0eL2ki2pa7zuBryoQ7L9jywGv+c6fP+9B+Kgpf2J0uvMzodRzVz/A5gqe39Cw+hl+tt5ag1czP7F4UrtWJIYvaJYLPzVELBEQmRNTAIKCI0WrdRzQ1TBMaEE8brJ8ozcFJMjTSn4GP5Hn5Dt2+w97S+isvS3B49vDx5kA9dQUZmA7lp61WHqK1x71bzrVqX0i0URUb4HDDOrVu/OxFhaMdsVNeAmkwuZfI0TCU5yh5YSGVpwJ363TgGQbPFeyUQ0bv1Om/oqzhdxXYJnhmiyWz8yXpjoxNn0NctwpNrdVFZkNGWgTVhGGw66H8KC656jaHnHpwXr/LfpmAUBOt7NEja/DfD9wei7kcfwFts/eiBsUR5kLMNhv2byWQ18atIpIKF36ZnmM+O8eevUbyd3lgggyTom29E1RL1jlU8xBS1lRSdk/7HZhSp4kbpvpkBpwdvOKuW2Bu95BuzOfuP4pJl9hTq8dAdtWpHzxl2l2HFDWVgP98Lqk3jYjUyO2a3dOg21wxw4Q+U9U+5w/ER2UZq9fjMvbqM9iXK2rRmwGODSTBnqezsChJF6YxheWL5Dlu7EApyKWL3q+6vXJaeXeQ3wnd/HAY6U6FBHCgirx+E3kT7plRFl5nn2ZHkvt4nw==
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)(136003)(366004)(376002)(230922051799003)(186009)(1800799009)(451199024)(64100799003)(6486002)(6666004)(478600001)(6916009)(66946007)(66556008)(66476007)(26005)(53546011)(316002)(6512007)(2616005)(4326008)(8676002)(8936002)(2906002)(5660300002)(41300700001)(36756003)(4744005)(86362001)(31696002)(38100700002)(6506007)(31686004)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?R2xPdGhXd2swVDdoaXgwTWEzVzFpL3poSlY5TkRVWDZUQlZqVjhma0lKUXRo?=
 =?utf-8?B?YXBvcy9kSVNIY0VyblQxaUdDRzVHRUJGRE9DQk85MjlkTVhaQzFydmJMVkp3?=
 =?utf-8?B?Y0xUQlBkeWpERVU0UnV1Z2haZjVNM3dnZWxOM28rR0lFRmNsMmlUNzNoelE4?=
 =?utf-8?B?SDFWcVdxZ2ZOcUNlamxGbUdwNDIwZFh3WlhWOXBxTm1ha3RaWk5qOG1FenBL?=
 =?utf-8?B?bkFEZkVWekhlYW5QSUd0WEdhM04rR2tPWDhmWDErSlM2NGZRdm9OOThMMVhP?=
 =?utf-8?B?Z3NpTFJTT2o3SSt5end5Tk45YTVNWXo5b3dmdVM3Z3lZc3NFVXdwdFQ1clhC?=
 =?utf-8?B?NGdmY3plbG8vT0h0ODhkVy9qaEUzYWEzaWdkRXJRS2RsTSs2R0ZYNElkMWZS?=
 =?utf-8?B?N0d6VXRkbWNWeW1YRm1kLzBjVk1PQStaWFloYldpUHVSZFMyekdsZTBHcVB1?=
 =?utf-8?B?STdrVGJJT3JpY05oMDdic0JTVDVQYTYxemM5cHNBRmRzYW00am9yeWdRQ2dy?=
 =?utf-8?B?V3RRd3JEc1FsdVBnRFNMK01NdmgrMHUreVViQ05ubjZsOWp2QVhHUWFMODNG?=
 =?utf-8?B?dzdLSXAwTHBmRmhka05FZHVoUkNZWFZrcm5QNW9LWXk3R251V01uTjNBV1NR?=
 =?utf-8?B?cmgwMkFRQ1hwUVQvRHpJV1IvcWhSRnM2RmJTLzRBeTQ2S2g2YjhEVjVBTzNo?=
 =?utf-8?B?VVJnRFNRdFFLRW02QXpXWmVwVnJkRE9wQURaTWhpTklQRlRtNHZxcmp3M25U?=
 =?utf-8?B?MjlxTk5GSnY3QnI3WWViV3BOYmFnN1djZ0R0WXlpZHpjVU9YbDVPaFozVlov?=
 =?utf-8?B?eDBQZTBoUVZrYkQwYmZuTXd4TndRWk1zeWR6WjNWUU9haW9LK3pWazNOang0?=
 =?utf-8?B?bWhEekVEZ3MvTWJGaG5JS1U3cWRWR2MvM1kyZU5mRk9Qcm9wUDdnakxHYkY3?=
 =?utf-8?B?QTN5MzNzTXg1SEtoWThXMGN0WS8rU0Y3VjRpcXNyUlNTWENrdVhGOWF5UFZE?=
 =?utf-8?B?RnRPQ0lnWWR5OTBBamV6TDErZFd3NDZPWWx6V0tJZEZYbWpBNUU1cHJsdE5L?=
 =?utf-8?B?UGUvalNoOUh2c0djWWdqVnY1OUZhaTFnVFJ5Q3hsQUVDNk9VeWxoTThtRWpW?=
 =?utf-8?B?OVJzNUxJcXFiZlUzOG5oaFBrb3cvQzBQNEJ1L3htOFo5NzY4eGY4SDVoajR5?=
 =?utf-8?B?U1JGV2F0SlMyUUdlaFYxZkxiUlU1Yjg4OGljSkFCOXhZclNOc2NWYTJVSnVQ?=
 =?utf-8?B?K3ZJQ09rQnJaR2VONDJjZWJmd2RvSm1NTXBzcFNzTytKbSt4RVZDV0sxZGhk?=
 =?utf-8?B?OTNSZ1dXd0N5dDVaU2dyMzZ2WDlud2hSd0lFOXdqN3ZLbXZKWGxEbUJreVNz?=
 =?utf-8?B?enc1VVR0MTdZRlJwcUUzSktpZWRDNGNoZ3pPRS9wSS83U2EyMjNhM2wzNndp?=
 =?utf-8?B?RUozZUpkOEJDdXVHdWxxbjllbzRvOHNOdlEyQ1d2UDJORzVuM1ZwMlZzcTJh?=
 =?utf-8?B?L0NEMnlDWlErUFBlaFFkRFVIaFMzbDJTc0tIdDBPdERubUcxU1NNVDlTR3VL?=
 =?utf-8?B?ejZIa21hcWZVTlR0Z2x0MnlNK3ZCM0pGSnVDa0VyWjRWdTg4NDNJT0lyelpm?=
 =?utf-8?B?SzZiUnV0T0NnV0d3aFZXc2hRWnBkSHNmQUhMRURXSTMwYXlFS0pIK3czYTY3?=
 =?utf-8?B?bktCV3RuR2xjditYNUtRaDNGRHdPeEpocHVlOFQwWkV1NTBKVDhmdHA3VVph?=
 =?utf-8?B?bmUxUGJaSG8zSTZEcFcxMGNsL3ViZGM5Uk9DRDhwNWY4Y3ZJNVZvd2hWMzBW?=
 =?utf-8?B?OVNjT2RnN1l0WFhtZjlxTVBNUm1hQkJtMFRIKzRRSDJBTStjcnlRMUNlQ2Fm?=
 =?utf-8?B?UGRzUkRONUxxd21SVmljRjJyTWNINWFsb2hRVS81NlF4bEhyQy8xTnZ3dm9y?=
 =?utf-8?B?Tmp0MUxwL3FnUjJhem9Fa0QyNS96YTFqTjRDK0FzUkM5YzA2THJyRHl6RXdK?=
 =?utf-8?B?MDZoMFFzSWg5TGpnZkcwNWgzT0g5aHVGN1lGODU5RW02b2NrcFhmUWFLOUpq?=
 =?utf-8?B?b1FCRU5YbmRJZmZwSGF0WlRxSWtlek5rM0VKS254OGNJUDk3c2tLUGZ0M0ds?=
 =?utf-8?Q?DKPRPMqY2JeaVtQmdeuM5SEmZ?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: ba5cfa42-82f5-4766-3eb8-08dbce31b33a
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Oct 2023 10:21:46.1984
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: erOH6L/rOBs2SMlHpKmmgqsBXgKtzxiL1hpdc4Er+5prqoU37UEWLAlVDFLMquU1obnN0wLE8KETCQtXLcpYVg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAWPR04MB9885

On 29.09.2023 23:13, Stefano Stabellini wrote:
> [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>

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



From xen-devel-bounces@lists.xenproject.org Mon Oct 16 10:31:28 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 10:31:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617437.959994 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsKsc-0007VD-RY; Mon, 16 Oct 2023 10:31:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617437.959994; Mon, 16 Oct 2023 10: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 1qsKsc-0007V6-Or; Mon, 16 Oct 2023 10:31:22 +0000
Received: by outflank-mailman (input) for mailman id 617437;
 Mon, 16 Oct 2023 10:31: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=BBjo=F6=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qsKsa-0007V0-No
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 10:31:20 +0000
Received: from EUR02-DB5-obe.outbound.protection.outlook.com
 (mail-db5eur02on20620.outbound.protection.outlook.com
 [2a01:111:f400:fe12::620])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 24e79c4e-6c0f-11ee-98d4-6d05b1d4d9a1;
 Mon, 16 Oct 2023 12:31:19 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DU2PR04MB8533.eurprd04.prod.outlook.com (2603:10a6:10:2d4::21)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.45; Mon, 16 Oct
 2023 10:31:17 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%6]) with mapi id 15.20.6886.034; Mon, 16 Oct 2023
 10:31: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: 24e79c4e-6c0f-11ee-98d4-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=FL/QUoYMQX4npJs8LwS3qCC97MnB6Mh5IBkZzmy43GzOKnzy+WNHCpS89WJ15cCrYh1FkGyIaWR6YVE1Lpn+Vk7xya7t81L1Je4uU1gLCaNJrAwPl8kNFNpWFsQOlvV3ZVRqsKYvqAyZfd+b5Q6L9FLyYo6Z3S8G76hlmgUxZ6CJ4NCLd5PjWADAkZxD/UreIqGQdp/rc1eyVb5ofQmmy82v6Cj/bQOA2gs8+eprJcD6o7rpEhdxvL6f6PQ161yXDc/77JP2+lizmM20+P9IdDPGG/KiaKafW1NBQFen/a3Xnu9/zOjbxEf0HMZ4VqEkreh2zQvRAux7vrPeXe5O1A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=5xL7NgskNlhPvjFU53Y4pH7PuxroT1j8KRsy7yCVCFs=;
 b=NWA7rwfbr0vTNpUBkNufLWxDf/Sq3oO5GIrj+r1WPp+C3KYj9hVpsosQTMitalDTPR8+bX5Woa7dP/7v0IzZns5FULAlHDPQbQL02mCuD8A8JBVmUUevQs+o3OlARBadv58VhAv1UxwnvR0RP9S6mN4kBdsPIydezU2RiOyTXwjzJ7feZ0fkGyhg3x6c7Hj330QaK3uaSGY2Iglv//DouDpjNXCv+6xU8fd7iWOQFlXYX6rWZ6I5i+aQ3OrpPfIV6t72nbI+SVICEN79HzJMdWHRsf4EC9mS1jNVv6fr5FLaRzC8UtuuczfWS2MVcDv7p/RnRhm17eYAsljD9h/igA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=5xL7NgskNlhPvjFU53Y4pH7PuxroT1j8KRsy7yCVCFs=;
 b=WrAjm9XEjPmEQY2LiqFfgTDVoh6hKDWxQlq03W80n2kmpoAcA+fFzdp4GOmTTNlUlgsqjagNV2/SmTzOG7UhgDFWv/lbzjrrD6tH2+Z//6sY61uJaEYPKN0ioSlcG7vQ+EYM2NlIeu8kUosEGIhafM5IgeI+ce3B02wGvEfgEdkmb28xEhVafVJzxwc/RW1StoM3NifwGrSGUSunxVow9aB+LSVe5duYVBaFcHMWvuxBCb/wwJDi29O0kaabs7cMQ6HKOpNhBtCUbzaXI1RyXJs20g658xV35fHeXyQoZ4tyXjGpBNrPEjp42I+ia18kUROj8HoaYQ1unlNFw2oYQQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <b9547bf1-2882-e470-b272-9a4a31a1ffce@suse.com>
Date: Mon, 16 Oct 2023 12:31:15 +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: 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>
 <6495ba58bda01eae1f4baa46096424eb@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <6495ba58bda01eae1f4baa46096424eb@bugseng.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_|DU2PR04MB8533:EE_
X-MS-Office365-Filtering-Correlation-Id: 6481ef51-37c0-4308-1c5e-08dbce3307bc
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	gxt2gMzFrcOwV/cvAEXQaXTLBGxsOs1n2ivucUHqxp3x0h/G4u9VtBATMV8e8Arkhi3WkV2ThmcbK9CLgVwNfpayGjcJJ95F36eHTenfGPlv7sgTdBvrqpTfsCDuIte+QMPAa8o+IJHSzXjIlKBycJl4IKE/cy8QXzh6uxjrdT0owo0u7su9L7/ByPmu1FJhinqMC0BZ0O100zrMV4KgR0vxA7nNwM+QhxxBTyYKEQdMcTgToWf8pxtWZZ80axftYkK7IWpSf7yVeQ20kmjBwh17icDka2admDvZ0dux0cynULHvbBBpjsvlH2aSGHIet1h8As0sCAT1vOntiPhJYaEUmnL3b6/aBQ3Lq3Dbvgyy3bNkC2hqwD7bLMNRbPlP4suXF/NdfiM5pZkvWtHOkFQpyaa7O6Z84YSFIXry/yqhTPzxn8lSNbU1aTXzBhVfb6tuz63v26CaYN7irFO0aXu3rWz7+YR7e34qzDcNBcF7RfiWRcbTd2qMGQ04rtVB0o2dP9jw6lC30JLx7ZG16TNiY4Z0kYNAMmGGkU3nIuTBSnsEZg3M7qfzQ7M0q1moPCXhLD6tsH82sQSp8sGtA28LDnvbxIHRkw8Ry9btGAG3ZSBWj2UJDVhcTBvcBNiMVLEM50yveETB7o8D7Cf9Ww==
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)(39850400004)(136003)(396003)(346002)(230922051799003)(1800799009)(451199024)(186009)(64100799003)(5660300002)(7416002)(478600001)(2906002)(6486002)(31696002)(41300700001)(4326008)(8676002)(8936002)(66476007)(6916009)(66946007)(54906003)(66556008)(83380400001)(36756003)(316002)(6506007)(2616005)(26005)(31686004)(6512007)(53546011)(38100700002)(86362001)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?TXRZZm10OVdNRDlSbTRBVDhkUUExMW90Q0NNSisvWjdNVmJ1NDFyZzdIN1Uz?=
 =?utf-8?B?RzlOZnBKL04rRU9ub3lFSUgycnoxSS8yVGtlZU1kRzdNR0IrZnVYZVVUOFFD?=
 =?utf-8?B?ZWt5SllIWUxZUGtZNnRUTk9MVTJqKzZwb3VVc20yU0RsM09WWEU1RmJSZWQr?=
 =?utf-8?B?SWViMmNreGowZVhKY0JVTGl2WUJ2amFuQlFQNUJiSmcyNitySGVuSFY0RERV?=
 =?utf-8?B?TnVsSGdNR1QxbWlSbWJIOU9WZ0JKeElMNzRiMmovUWdUVmNGR1QrUXRwblFQ?=
 =?utf-8?B?ajhSQytGdWVnSjBob3NZblFsVzVyZmZMN2ZLWUp2bU12K0JZMksyTVFST0pQ?=
 =?utf-8?B?UCtlcmxTa2tLbUZQQU5oY3ZGdE43OGhITFdQMWtVaEhRWkRqNHdKZDhnckRv?=
 =?utf-8?B?cGxhVnRLdDBZdTlTVW9LNzlLMWQxK1AwVi9zVzFWZU83TmQ5THR5TEtRK0FR?=
 =?utf-8?B?b2dxUlUyTllINlhrTEQ0dkhmYUlETWRJSkJCajg5STQ0RGRvU0JqTnQwbHRl?=
 =?utf-8?B?Nld5cFhHUTRGaDVPck53eXJZd0N3LzZvL3Bna3QrWWxjV0d2aTMvM1J0WDBC?=
 =?utf-8?B?MU5ndmFuL2pLVWlxKytSV3JNb3dRU1JNRTkxTFhyVzlSQVdzTndJRVFIdmlR?=
 =?utf-8?B?bmF1T2Fsd3RGTG5wY3UvRU4xR1pBby9ITDA5VmQ2UTQ2K3lpbCsydDA0SC84?=
 =?utf-8?B?Q3U0dlhUQ2tHUUxpZjBqcG51ZFVUTTdWTzN6WWZicER0SzhHWGJIT2c1SHo4?=
 =?utf-8?B?WlJERmE1VWVEdWxiNlI5ZVVaZExkeXZtUDMzZDdjY28xazBqRWE1c21CS1Nt?=
 =?utf-8?B?OXNXUi9ucCsxS2FiQi9GWm53aTVQNGQyOGxmcVpSTHF4Qy9FclJydWJSR3Rz?=
 =?utf-8?B?a3RQNVR0TmJueC8wSDByT0twcnBHMUQwcHR2RU1zQXBVc0k5T0FIczVzd0hw?=
 =?utf-8?B?aFh1bTZ2OE85TVlsS0NJK2UwRUs3RXdkTmlLRVIxdmZxdHd3d1dKUlo0V3k0?=
 =?utf-8?B?MkN5bGJtZ3BIdExlTUptdmRvMUJ2ZFpJYkQ5aGhHZUVmSVZzVkNXQkx4dDkx?=
 =?utf-8?B?TDBvZWNpUlJKUDFBcmd2bStUMHkvSTUyVktHK0J2cVhpTHJSdlJBbVJsSDJn?=
 =?utf-8?B?Nnh1R0EzenQ4OGs3Y0Y0dU8xR3lFcTNOV2dCWlJiR0l3QW9DQkdIYkpZVFAz?=
 =?utf-8?B?N0VwU2djLzM5Ri9xK2gzVkxpSTNNemx1cnZVamgvMXZiV29sZVZuaTc0dnh0?=
 =?utf-8?B?WHV4M0ZwTUZvMlBsbTdCVm9EcTdYOWUwQS8rMHFQbUJOcVNCMzRPdzM1S25R?=
 =?utf-8?B?RnJhQ3Q4eVROMklxZE5peXluNjNMN0doZ21FSE9jNC9tZ1JFYm81SUtSV1pR?=
 =?utf-8?B?cUZNSUNpK3poMTVvZHp0RVQvaDg2NEhSWnVrT010T1YwLzNFeG5yMDkxQXZq?=
 =?utf-8?B?cGxTS3FCcFVnamdib2RoZjlMb1kwUEg4Yk9WUkRVT3pWNEY0QWxSeWZtczlK?=
 =?utf-8?B?eUdUWFRqT3gvWmtveExnbHk3WWJKa2tqbVpNQUloZ0YvdlhFRmdxZUhwZk0w?=
 =?utf-8?B?eHdWcE9nc0dzc0ozeUlpdmpQSy9ESmlrMGhjTXNUSGxLTyttUHhlbCtDSXBp?=
 =?utf-8?B?Vy9xQ1A1SkdnN2hDTmp3SWtKSFVWRFlWclJaaUZkKytFcmJ5YU5kMTUxUGNQ?=
 =?utf-8?B?VU1LRGxIT0ExWlZzcWlyWmZ4K3U5Q1kxaElEU3JYTlhCUm5kVnk4VzBqOHFv?=
 =?utf-8?B?dXNoSWE3ckNLSGpzT3BYTVh4K1k5dC9oYmlHR3RIaGNkb1RTNTkxcVlTMUt4?=
 =?utf-8?B?cjVGU2hqb3VHTHhKUUxZWmtDSU9qU21BeG5iV0FVUGQxSG1hSGxzMG1tNlAw?=
 =?utf-8?B?aERBbnNUVGUyWGdxT2MyeHVtd3ZCUkI4d2Z1LzJ6RmFrTkN2d3d1UU9qKzkr?=
 =?utf-8?B?S0taUUFvWVhhYlFMSkVxYXdVTWFIMGY3L25LYjlDelFGbmp6NnYxbm1DbWdz?=
 =?utf-8?B?enJnRjJ1dUpwcFcra25BbUJmVU81aGV3L3ZRaWptMmdaeW5CKzhSUVNnUFl2?=
 =?utf-8?B?SU5YS0JTZFJsVzd3NUUxaEIvaURleUxtUko2Ry9NM2p6SWVOQVE5c212MEdQ?=
 =?utf-8?Q?59UpZbVZbVvPtRqymkyKacxmr?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 6481ef51-37c0-4308-1c5e-08dbce3307bc
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Oct 2023 10:31:17.2475
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 26lS+R+eSb7UijniK9pcZPItDZjQYZZUuYtajV6jHj538GnGkq/QelemAJYqvEGBGuCZfQtLC4ppDLqLmR+BYQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU2PR04MB8533

On 04.10.2023 15:23, Nicola Vetrini 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.
>>
>> 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)]
> 
> Revisiting this thread after a while: I did some digging and changing 
> the essential type of
> BITS_TO_LONGS to unsigned
> 
> #define BYTES_PER_LONG (_AC(1, U) << LONG_BYTEORDER)
> #define BITS_PER_LONG (BYTES_PER_LONG << 3)
> [...]
> #define BITS_TO_LONGS(bits) \
>      (((bits) + BITS_PER_LONG - 1U) / BITS_PER_LONG)
> #define DECLARE_BITMAP(name,bits) \
>      unsigned long name[BITS_TO_LONGS(bits)]
> 
> leads to a whole lot of issues due to the extensive usage of these 
> macros
> (BITS_TO_LONGS, BITS_PER_LONG) in comparisons with e.g. the macros 
> min/max.
> The comments made in this series to the patch do have value (e.g. 
> BITS_TO_LONGS should be
> expected to have only a positive argument), but ultimately the changes 
> required in order to
> do this and respect all other constraints (either in the form of MISRA 
> rules or gcc warnings)
> is far too broad to be tackled by a single patch.
> 
> Notable examples of such consequences:
> 
> 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
> 
> if x86's PADDR_BITS becomes unsigned, then other issues arise, such as:
> 
> xenheap_bits = min(flsl(mfn + 1) - 1 + PAGE_SHIFT, PADDR_BITS);
> 
> here the type of flsl is int, so either flsl should become unsigned too, 
> or the second
> argument should be suitably modified.

If PADDR_BITS was to gain a U suffix, I expect PAGE_SHIFT ought to as
well. Which would address the compiler complaint, but of course would
then still leave the left hand expression not aligned with Misra's
essential type system.

> In the end, the modification that solves a lot of violations (due to 
> this being inside an header, though it's a single place to be modified) 
> is this:
> 
> DECLARE_BITMAP(features, (int)IOMMU_FEAT_count)
> 
> If, as it has been argued, BITS_TO_LONGS really needs to become 
> unsigned, then a more general
> rethinking of the types involved needs to happen.

Well, yes, just that we'll need to find ways to make the changes gradually,
not all in one go. Even if not admitted to originally, I think it was
pretty clear that the Misra effort would lead to such.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 10:49:49 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 10:49:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617443.960004 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsLAE-0003Ly-Ec; Mon, 16 Oct 2023 10:49:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617443.960004; Mon, 16 Oct 2023 10: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 1qsLAE-0003Lr-C3; Mon, 16 Oct 2023 10:49:34 +0000
Received: by outflank-mailman (input) for mailman id 617443;
 Mon, 16 Oct 2023 10: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=BBjo=F6=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qsLAD-0003Ll-O9
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 10:49:33 +0000
Received: from EUR03-DBA-obe.outbound.protection.outlook.com
 (mail-dbaeur03on20601.outbound.protection.outlook.com
 [2a01:111:f400:fe1a::601])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id af80cc8b-6c11-11ee-9b0e-b553b5be7939;
 Mon, 16 Oct 2023 12:49:31 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DB8PR04MB6777.eurprd04.prod.outlook.com (2603:10a6:10:11f::10)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.35; Mon, 16 Oct
 2023 10:49:29 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%6]) with mapi id 15.20.6886.034; Mon, 16 Oct 2023
 10:49: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: af80cc8b-6c11-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=O/EFzjuZpx4qfVEgdJmOZx97aDuXHYLIYYFLdEZnN+o/r+gOUXnl6tRuz7hooelozoJhXDBXVo+5nUvfsyTjtpctRq6UKsCvqIM3Dgodge6A0Z1bBF6FE9AyWb8or4cLj/0vbvmO17ssVZ9cAeMbtJx/1Lousewpi5CYjDjoYbyddVgkEC+/pgoQM77tr03fZHknbXOF1Btohb2eFis0qJ7DuqYIFowAMRpkPAVML+HYZXDjcXawYbDMZROUCD6omJ5qV9hEAMNll3tD03BKwea1S8WV6GzDvB1tqXILY9V4VYy8zX+2WVKkCwhdWhVafzdDuXPjKkykTR/5SoujZw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=KieaivFCrsQZt8Mzc9qnnNvQ9GIXF/5GduHkXKvmgYk=;
 b=Lp0cNOLEzgq5EvyITVGPb8eHxDO3W4q1y5lrymFksYS53Rp/3yvtKnna8qQCXJgFVEWVcGbItYMNbFtCJDjhCRqJUtJmbzaywFipd56Fr0g1/jg/mB6uL0LjNEZ7MGB/EzjAkzns4nuUl+vb76/MqlXrSR6XMRv+EQDlSMT4H8qHTEh6gLtG3H2QASYwiMqWBhg98aQvZbaxwWg8AhhE/htZTlfDh1t2TtXq6XNNXGne7z/Mx0pRL5ppelC2ma20CCGEuVvxIcF1EWFXKABcXbhAYa6/IXShSw02en5xTyQJAQMJ5TfWZH5uuf0lSsRLow8UdJ8EEwxp+sF9WdtUyg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=KieaivFCrsQZt8Mzc9qnnNvQ9GIXF/5GduHkXKvmgYk=;
 b=od70wAWfwreyoy8AyG0uZtS0/QMjB29gaoiavazYg12zmJjuldu4DA2UHdZTOgqWvCJY2vvmkod+MAOaAxFve/qRUoZaVSI0DafJ5B/t2crurf5+3jOmk/bOvhO4PC1norNl6gZEhVNMtc2YlOnj/roRAhnAQR+cEuZlaSegJNOAUCTXiA+w+0WaDKQtnUxJ7aXs9WoTDumrJ7uG0A5dKO63eGKIIIoHoVHmEG8MRA4e/gQ+dg6jcm2/p4kTo5/HG5w3SNPc9plOBRWkDzCNXxhj+/GTmA+VMori63eX+OKVQgMfReX+JqfBdZF7b/Kbh/u0pvAhoTgKDaaEQaxB2Q==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <71abd99d-7ef9-09db-9c1e-6b1c55188a6b@suse.com>
Date: Mon, 16 Oct 2023 12:49:26 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: SAF-x-safe rename
Content-Language: en-US
To: Andrew Cooper <andrew.cooper3@citrix.com>,
 Luca Fancellu <Luca.Fancellu@arm.com>,
 Stefano Stabellini <sstabellini@kernel.org>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Bertrand Marquis <Bertrand.Marquis@arm.com>, "julien@xen.org"
 <julien@xen.org>, "george.dunlap@citrix.com" <george.dunlap@citrix.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <alpine.DEB.2.22.394.2310041633080.2348112@ubuntu-linux-20-04-desktop>
 <9CF5DF50-B857-4B1D-A210-E6355492CC3B@arm.com>
 <75d160be-4a8c-48c7-a972-201d78f0bdf0@citrix.com>
 <50198a73-2f0c-4cf1-9173-86a8158b425b@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <50198a73-2f0c-4cf1-9173-86a8158b425b@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR2P281CA0078.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:9a::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_|DB8PR04MB6777:EE_
X-MS-Office365-Filtering-Correlation-Id: 22b4d3e6-f151-4554-4e1e-08dbce359257
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	e4EA0IQkgN2xyFJdPGKSBaeWnRoHf1eik1y6nvcGYMIXHm1swKYvVz8DDA1bb+hQJHFfNgPGWdL6mOHdAt0CLu8BB4Ma7U0Tj6k9MMkm571JPJxWuiZ5RY9rpH6AqNM8U6ywO7ljw8Jh397SZniQbyIH3XcbgbHWMqEHzbsY0y2IbvES6rsBAjzhqr8k19KG6l3hIifkbvUsaang/AaY/eBzh1AJQb1dKkldwobMpHZ4z1r6xwV65rVhXRjpPfAbi9uT4WXvpo0VQlOmHASiUT1LDdky+o8Lpg/1t8UpgcAcTN3Zaw4HaPpZujZwlbWuwc188hK1ZGATHtkx0tliVRV5gfH56JIkeFPQ3jaBwksSMKRkX4AgsQBZjmIhxWe983PVRxAiYM3spNWEcbKx28jkO9Bcq6f9hrLMq9LlAaiBDU1+qMLdXRwWfuYdWFHhYCCj24ZKCkP+/+ShuWvHeg+PxouloSqjiXmCBa6ZwLZxUZFT5tbcBszlRoN/TUkf+W7x9sPAj26nLp3Xhqpn9tPq1X/6ESgs8TCxJmAaKDgLtEehGKkKmbVldV+JclqVDpAO8FRvSc4HvVhW1PuXEDMvFbStoC8eIiD6/z7x35KeMnNpQd4XRR1xMbSd9o4fFjriNWOiUPteYB3pzcQFZg==
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)(39860400002)(136003)(366004)(230922051799003)(451199024)(186009)(1800799009)(64100799003)(26005)(2616005)(8676002)(8936002)(4326008)(66899024)(5660300002)(38100700002)(31686004)(83380400001)(41300700001)(478600001)(31696002)(86362001)(6486002)(966005)(110136005)(2906002)(316002)(6512007)(6506007)(53546011)(66946007)(36756003)(66556008)(66476007)(54906003)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?RE1kT3dLelhwM2twVjNyc1VSWVRVd1RnRTBJdVc4RXBLNzFCOGpSWi8yTE9X?=
 =?utf-8?B?c2ZkOEhLSG13U2ZvaCtWTllybzBzWVNqQUlIRWRFZXlvYjdQUm5STmtwY01s?=
 =?utf-8?B?MDFPbWVQTFV5ejIram1jQW1TZExWOHllTmhsTmk4U3Y3bmpKRWMrRm9XQUZy?=
 =?utf-8?B?b3FhZkgzdTEvY0FOSkFudmI2b0U1VVQ4SmlleFg0QkplZHhYdmd2Qk9VeHZr?=
 =?utf-8?B?blJNMU5Dci9xZVZFTm9id2QxVThEenBiamZTcTNlZDE2TFRvSEJpS3p6aVg4?=
 =?utf-8?B?Q3JqaUJxVXZZc0MyUDJyS3BGU0FmRnY0QWRxcEt3azAzWGZZUHdUdkZiRUN0?=
 =?utf-8?B?WUF5ZHBmNXZSYTZ2YWt4SjB4VU1qNGVSMFhCRDFYMjB4ZGNGc2pvV04xMU0w?=
 =?utf-8?B?R1QrUHQxNkVHbzVvcysrczlVd1VrLzFCM3NUeHhISC9qN2NzY0dCeE0xRWhB?=
 =?utf-8?B?SkRqcjNQYTBqOHE4OXk0QVhTc0VReWw2TGN5dlZUd09lam1kZ3hmKzNoM3N2?=
 =?utf-8?B?U1BLVjNEMzJldVNRdzNiM3Iva1JmbXJuMGNvZHpBcnBSdXBlWmNNd2hwTVl2?=
 =?utf-8?B?MjlZbUNlaTYzVnBQV2x5d0hvZEd1WHNtYzNYZUZ2VlNuY0ZvK0QwRnF2R1lz?=
 =?utf-8?B?aVVyRjlNdmJtSDkzQVQxZkU1T21CZDM0ZVF6ek5KVGN2U2RBQmFoc3l0TGJy?=
 =?utf-8?B?Q2FiMlJwWmNHVUFIY2JNK3BQZForTitpSGFXYXo0T0o1Q3lYWUU0YlM5OU02?=
 =?utf-8?B?TWRtYm1IazZ2RVdYQml0c0lkbjBVcGsvZks0S05WQkFjMlJVbHR0VjlpK2pj?=
 =?utf-8?B?aVFoaUZ1bmNUREFtV1lmb1FQOTdhQlVQWTJzWjIxOGFkb25Yd2JndWZFUlk2?=
 =?utf-8?B?L3JwbVo0RUdja3BYMDRRZUtYdG5XK092bHVTL0ZKVmxLWjRGcXFFdytxS1FC?=
 =?utf-8?B?RzhEOStMT1o0VGdVd0xsZ0MzdVBSMDJHbVorL2hhRHdFS3djZFVOZ1JNaWZv?=
 =?utf-8?B?TDZOT2NjbGtUS0Y1RUF5ZktPcHp4VE9aSEozSlQrS0ZWTlhVL2cxSE1iQnVN?=
 =?utf-8?B?eFU0Z1FJWG9QdzVhZ3VTam00Wmg3WkdCeWphSGRoUm85OHV0R0t2Vkx5NHZ5?=
 =?utf-8?B?elBzUEdwcXZPNldmcWxSUUpnR2h1NUlKK21kZWhQQ3Fha1VuemFsSXY5Q2dY?=
 =?utf-8?B?VWFVQkVydEY5cGpOMVlGdmdKTkUrZ3FyK2Z6WTl1MVZ3ZjJ1TTZScEJKSmFS?=
 =?utf-8?B?ckYzMGtNdDZZbUIxdzZTaUtpamtzWVNwQmlLdlFSUUYxREpHakFOYWd5K05h?=
 =?utf-8?B?SHc1NUlVVzZyQ2pHRjVXdVYyMXdsVEZDVUdPb1k0U0t1a3ZNTFJZM25sd2tw?=
 =?utf-8?B?YmJTNkVRUk44cGhaMlJFWmNicU5HRkI3cENqNW1JNW82ckJCdFdFY2pYMHF2?=
 =?utf-8?B?ZjkrbGt6djZzY2dqRkxXT0EyNktxVThHenBSVjN2bk81eVhTUHd3bVBNZkxz?=
 =?utf-8?B?NHdNTGNIbzloYThtZlFFUXZka1V1bjYzbWJ2ZkZHYUw5eE56Z3NkZUYyVEVl?=
 =?utf-8?B?eCtzNzZ4cGpnYXRkWER6MDJ1MkkxOC9wZitBVGxKOGtQUExFY0RRU1RZSFVI?=
 =?utf-8?B?WVFIZ1NyTGllV0FMeVJSVnd3WGdmTnlFMXU1RjdwVTU3cmxjay80M0hGdWFT?=
 =?utf-8?B?TXNsL3U3RmwxVU5BUHdBZE9tazkrMHZoR000ZEd3YlpNUUh4d1M5QVJLR3FD?=
 =?utf-8?B?UU4xeWFEUzVXRHVYMTBXVnNzYmZPNlZTUE9rOTBGNTg3OHEzQko1Y1M2QnM2?=
 =?utf-8?B?ZHI1S2RLMEpuWFRSamlGL1VxY1ErWjUyMVl3ZnBjRDNza2ZUT3R5Mm9FWDdo?=
 =?utf-8?B?Z3VKSzNwTzdxSDQ1c2U2TFIvckUzYmY1RzU4dk5nMFR1TDVRY1ZGcUZyNUJy?=
 =?utf-8?B?U3RzWmdwamRFWFVMZ3RFNk5QRE1lWDV1dVduVlQwSUZuNjN2VktsWEphQXl0?=
 =?utf-8?B?bW9jcEhSU1JSdEEvZC9QS2Fid1FKa3BKNFMycjZNbm1HTkJvU1lZWExIeUtE?=
 =?utf-8?B?QlRJay9mZSs0dWRHL3hVWVZLTHdMNDUvMDFXaWVrTzBrRnVLV1RQRW4xTElB?=
 =?utf-8?Q?zxe4iHVYMLjUYefbN7XZnGwJB?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 22b4d3e6-f151-4554-4e1e-08dbce359257
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Oct 2023 10:49:28.7745
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: F+ZzgTqrgOWCPqI6Ps+B/S/ArcmnK3iYQPO/tDaP836Xj0HbPtzHlV3WUCjiIwwfpeoWTxxQMrEu10I6VJzbvg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB8PR04MB6777

On 06.10.2023 00:01, Andrew Cooper wrote:
> On 05/10/2023 10:38 pm, andrew.cooper3@citrix.com wrote:
>> On 05/10/2023 8:43 am, Luca Fancellu wrote:
>>>> On 5 Oct 2023, at 00:46, Stefano Stabellini <sstabellini@kernel.org> wrote:
>>>>
>>>> Hi MISRA C working group (Jan, Roger, Andrew, Julien, Bertrand, George)
>>>>
>>>> in a recent thread Andrew pointed out that the SAF-2-safe tag is
>>>> confusing and requested a rename:
>>>> https://marc.info/?l=xen-devel&m=169634970821202
>>>>
>>>> As documented by docs/misra/documenting-violations.rst:
>>>>
>>>> - SAF-X-safe: This tag means that the next line of code contains a finding, but
>>>>   the non compliance to the checker is analysed and demonstrated to be safe.
>>>> - SAF-X-false-positive-<tool>: This tag means that the next line of code
>>>>   contains a finding, but the finding is a bug of the tool.
>>>>
>>>>
>>>> Today we have already 28 instances of SAF tags in the Xen codebase.
>>>>
>>>>
>>>> Andrew suggested "ANALYSIS" instead of SAF so I would imagine:
>>>> - ANALYSIS-X-safe
>>>> - ANALYSIS-X-false-positive-<tool>
>>>>
>>>> If we really want a rename I suggest to rename SAF to SAFE:
>>>> - SAFE-X-safe
>>>> - SAFE-X-false-positive-<tool>
>>>>
>>>> Or maybe MISRA:
>>>> - MISRA-X-safe
>>>> - MISRA-X-false-positive-<tool>
>>>>
>>>> But I actually prefer to keep the tag as it is today.
>>> We chose a generic name instead of MISRA because the tag can potentially suppress findings
>>> of any checker, including MISRA checker.
>>>
>>> If SAF-* is confusing, what about FUSA-* ?
>>>
>>> Anyway I’m thinking that every name we could come up will be confusing at first, improving the
>>> documentation would mitigate it (by improving I mean to improve the fruition of it, for example a
>>> Read the docs documentation has the search bar, a quick copy paste of SAF- would make the
>>> documenting-violations page visible.)
>>
>> No - this is a problem *because* changing the documentation doesn't
>> help.   (To be clear, updating the documentation is fine, but irrelevant
>> here.)
>>
>>
>> These are annotations in code.  They need to be:
>>
>> 1) Short (obviously)
>> 2) Clear to someone who isn't you (the collective us of this group)
>> reading the code.
>> 3) Non-intrusive, so as not to get in the way of the code.
>>
>> and they must be all three.  This was even a principle given at the
>> start of the MISRA work that we would not be deteriorating the quality
>> of the code just to comply.
>>
>> Point 3 is other thread about end-of-line, or block regions.  Lets leave
>> that there because it's really a metadata transformation problem
>> constrained by where the comments can acceptably go.
>>
>>
>> Point 2 is the issue here, and "SAF-$N-safe" scores very highly on the
>> WTF-o-meter *even* for people who know that it's something related to MISRA.
>>
>> Seriously it looks like someone couldn't spell, and everyone else went
>> with it (reflects poorly on everyone else).
>>
>> And yes, I know it's an initialisation for something, but it's not even
>> an industry standard term - it's a contraction of an intentionally
>> generic phrase, with substantial irony on an early MISRA call where
>> there was uncertainly between people as to what it even stood for.
>>
>> These are the thoughts running through the minds of people reading the
>> code when they don't understand what they're looking at.
>>
>>
>> Annotations for other static analysers intentionally use their own name
>> so they're googleable.
>>
>> Guess what SAF googles for?  Sustainable Aviation Fuel, or Specialist
>> Automotive Finance.
>>
>> Fine, lets be more specific.  How about "Xen SAF" ?  Nope...
>>
>> "Did you mean to search for:
>> Xen SAVE Xen SAN Xen VIF Xenstaff"
>>
>>
>> Despite many of the search results referencing patches, or rendered
>> documents out of docs/, not a single one of them gets
>> documenting-violations.rst in any form, where the single definition of
>> this term is hiding in a paragraph which spends 90% of it's volume
>> describing a monotonically increasing number.
>>
>> Seriously, ChatGPT would struggle to make shit this good up.
>>
>>
>> The thing we tag with *must* be trivially recognisable as an analysis
>> tag in order for others to be able to read the code.  Therefore, it
>> needs to be an actual full world (hence the ANALYSIS suggestion), or an
>> industry standard term (where MISRA does qualify).

ANALYSIS imo gets in conflict with 1) above, considering that permitting
line length violations was already brought up with the shorter SAF-*.

>> I don't exactly what it is - something else might turn out to be even
>> better, but it is very important to be not this, for everyone else to
>> have an easy time reading the code.
>>
>>
>> And reasoning along that line...  What's wrong with just /* octal-ok */
>> or /* womble-permitted */ so it's also apparent in context what the
>> contentious issue might be and why it might be mitigated?

When the numbering scheme was discussed, I was asking why a shorthand
for the issue to deal with (kind of a tag) can't be used. I don't
recall any arguments, but here we are. One issue with something like
just /* octal-ok */ is that it's not sufficiently reliably machine-
parseable; that's aiui where the desire of the SAF (or whatever else)
prefix came from.

>> The mechanics behind the scenes is just a trivial text replacement, and
>> the tagging scheme does not have to uniform obfuscated identifier for
>> that to work.
> 
> Or, as has been pointed out to me in private, even
> 
> /* RULE-$N-safe */
> 
> would be an improvement because it's clearly related to some set of
> guidelines.

Both MISRA and RULE are Misra-specific; RULE, if you mean it to be
followed by the rule number, would even be Misra version specific.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 10:55:18 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 10:55:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617447.960014 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsLFi-0005Kg-4R; Mon, 16 Oct 2023 10:55:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617447.960014; Mon, 16 Oct 2023 10:55: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 1qsLFi-0005KZ-1s; Mon, 16 Oct 2023 10:55:14 +0000
Received: by outflank-mailman (input) for mailman id 617447;
 Mon, 16 Oct 2023 10:55: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=QGmD=F6=cloud.com=anthony.perard@srs-se1.protection.inumbo.net>)
 id 1qsLFg-0005Hj-I7
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 10:55:12 +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 78a3a732-6c12-11ee-9b0e-b553b5be7939;
 Mon, 16 Oct 2023 12:55:08 +0200 (CEST)
Received: by mail-wr1-x435.google.com with SMTP id
 ffacd0b85a97d-317c3ac7339so3960285f8f.0
 for <xen-devel@lists.xenproject.org>; Mon, 16 Oct 2023 03:55:08 -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
 az42-20020a05600c602a00b004063ea92492sm6798343wmb.22.2023.10.16.03.55.07
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 16 Oct 2023 03:55: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: 78a3a732-6c12-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1697453708; x=1698058508; 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=G56FaGrBt6sEjzBaqQjaDnRDusqhuybJqy4mp0AnWgo=;
        b=kp+vXtBMMvn+d3JenZC5+f6P4P7XsdFGSut6bv9FN+CiItYB/aTuMphOZInLE8osDj
         5S5kp5aEU0uVBrXwxaNC1VTx9b623tPHZPpmcSFgND3Sev3NNAhgYUlNlNitgB01BBWm
         QTPjAqvEITRntw5b2gs8dvFvQgjQdh3M86kQI=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697453708; x=1698058508;
        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=G56FaGrBt6sEjzBaqQjaDnRDusqhuybJqy4mp0AnWgo=;
        b=TYn3FDDISuaeKtKO+GblIqZkizl80stUArGwFvIbNLOlEFwI1XHeodJq1MbwDEJXyG
         uR6kSzYFLgploNldeAyDopdzdIcAeWs55HASC623KHkTjft7kLn4Yb6tgWiFpdpEPJOu
         mY7NRqK2aegOTuClGBrPa7RLmFSAViX5Mn74uvUviNSbzwuay9QsucULEUY3sgYrFWK/
         loe0NhlVmgdBuMCk2jH/Ru4pKd+9UZn23ylzuABQPrYb4bDcLunXt2J+RuGKeeficOsc
         9RRqqyHV63vCYOYQ2CgUa99HJYQ4U+pj/bhwcQkDMVbR3ba+E7TM1pOdlG/AHHzPF/rW
         GzVw==
X-Gm-Message-State: AOJu0Yx+boWq6J2KItQVvuMTSlex7Qc3gnKMcSjWoyUNTqwkttnSoXYa
	vzuOboP/K3YNdvlb7f3hW35B9Q==
X-Google-Smtp-Source: AGHT+IG6EpMe5yuCesxYer9ff2fxXPCSh5pMJNlzecDqB9sZyuGA63lk5wyDuaGji15oFCcW8RmOWg==
X-Received: by 2002:a5d:6809:0:b0:32d:ba78:2b31 with SMTP id w9-20020a5d6809000000b0032dba782b31mr907899wru.55.1697453708043;
        Mon, 16 Oct 2023 03:55:08 -0700 (PDT)
Date: Mon, 16 Oct 2023 11:55:07 +0100
From: Anthony PERARD <anthony.perard@citrix.com>
To: George Dunlap <george.dunlap@cloud.com>
Cc: xen-devel@lists.xenproject.org, Olaf Hering <olaf@aepfle.de>,
	Henry Wang <Henry.Wang@arm.com>,
	Anthony Perard <anthony.perard@cloud.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Xenia Ragiodakou <xenia.ragiadakou@amd.com>
Subject: Re: [PATCH for-4.18 1/5] xenalyze: Only accumulate data from one
 vmexit without a handler
Message-ID: <996cf0fb-d19f-48b4-ac4a-c50221890e0f@perard>
References: <20231009125137.1329146-1-george.dunlap@cloud.com>
 <20231009125137.1329146-2-george.dunlap@cloud.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <20231009125137.1329146-2-george.dunlap@cloud.com>

On Mon, Oct 09, 2023 at 01:51:33PM +0100, George Dunlap wrote:
> If a vmentry/exit arc unexpectedly doesn't have a handler, we throw an
> error, and then log the information under HVM event 0; thus those
> particular traces within the vmexit reason will have stats gathered,
> and will show up with "(no handler)".  This is useful in the event
> that there are unusual paths through the hypervisor which don't have
> trace points.
> 
> However, if there are more than one of these, then although we detect and warn
> that this is happening, we subsequently continue to stuff data about all exits
> into that one exit, even though we only show it in one place.
> 
> Instead, refator things to only allow a single exit reason to be
> accumulated into any given event.
> 
> Also put a comment explaining what's going on, and how to fix it.
> 
> Signed-off-by: George Dunlap <george.dunlap@cloud.com>

Acked-by: Anthony PERARD <anthony.perard@citrix.com>

Thanks,

-- 
Anthony PERARD


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 10:55:36 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 10:55:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617449.960025 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsLG4-0005mn-Ct; Mon, 16 Oct 2023 10:55:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617449.960025; Mon, 16 Oct 2023 10:55: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 1qsLG4-0005me-9j; Mon, 16 Oct 2023 10:55:36 +0000
Received: by outflank-mailman (input) for mailman id 617449;
 Mon, 16 Oct 2023 10:55: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=QGmD=F6=cloud.com=anthony.perard@srs-se1.protection.inumbo.net>)
 id 1qsLG2-0005m8-DI
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 10:55:34 +0000
Received: from mail-ed1-x52d.google.com (mail-ed1-x52d.google.com
 [2a00:1450:4864:20::52d])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 87883e80-6c12-11ee-98d4-6d05b1d4d9a1;
 Mon, 16 Oct 2023 12:55:33 +0200 (CEST)
Received: by mail-ed1-x52d.google.com with SMTP id
 4fb4d7f45d1cf-53db3811d8fso8991689a12.1
 for <xen-devel@lists.xenproject.org>; Mon, 16 Oct 2023 03:55: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
 n30-20020a50935e000000b0053e775e428csm3442378eda.83.2023.10.16.03.55.32
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 16 Oct 2023 03:55: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: 87883e80-6c12-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1697453733; x=1698058533; 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=gQnd5p4pporO1GNdO6zGK/IUyS0C6cZCfORt8GWSHEk=;
        b=D++vwrlIKB7ehUXsZ+OId9wiveNHeiVRs8oBsDnBtrEWsKyQf/G489XYvZ9BgPg9bB
         ehg34romdHDJCtgfxqy3bJ09DonOlM6QWbNnqJimQDGJ3tO6v7Put3Wd/SLGFTf4v1gC
         X4XMpCQqI6fTtk/nwhfa3oY5rtTlRYDvUMjm8=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697453733; x=1698058533;
        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=gQnd5p4pporO1GNdO6zGK/IUyS0C6cZCfORt8GWSHEk=;
        b=ssJWiOXCawVfqd73n7OQQDq8Gd3vsU47vI7Ev2M4dF+3LALALfVqj9GSDVe/SnatDK
         L67wxPkyanrGxGEqctNiq9JHpBCWA9KBQ391xkJ5r3O1Qg0YJo1+avh2KCi7qlxBwXzT
         FIflPRktujx0trQfawEdp3jurbu7H5mFbp5KPOzUE4KM07T+tMfBVWPLT3MP/30392Gr
         GVO5KOpI6DzOk7KM0j2jWbK7AcnmYsIj/Lb+SgMVf1+0bS5pzanp+OfbRCKs4/PTFt8N
         WvbJNXWuFPP7X/dDH4OzszZiqcZnrveQslNbJSp2Ek6Xxl3G6BnZRhbhRU/HeP+oRvAk
         0Prg==
X-Gm-Message-State: AOJu0YzxIMYlwzKZWDlJ8kXtrcd1DNbvJeMAC8feN8OtvBjd7kcDpmhB
	SMkG/khzWJ1tZYPutwi09u9oiw==
X-Google-Smtp-Source: AGHT+IEIEWTQf2JMCTrpEGPEiiYhooxD/CTNWyB361R8gix5mNqLMg1AgfhVSh/OcHWMgP7UCfEPPw==
X-Received: by 2002:a50:c35c:0:b0:533:ccec:552 with SMTP id q28-20020a50c35c000000b00533ccec0552mr5570024edb.9.1697453732976;
        Mon, 16 Oct 2023 03:55:32 -0700 (PDT)
Date: Mon, 16 Oct 2023 11:55:32 +0100
From: Anthony PERARD <anthony.perard@citrix.com>
To: George Dunlap <george.dunlap@cloud.com>
Cc: xen-devel@lists.xenproject.org, Olaf Hering <olaf@aepfle.de>,
	Henry Wang <Henry.Wang@arm.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Xenia Ragiadakou <xenia.ragiadakou@amd.com>,
	Anthony Perard <anthony.perard@cloud.com>
Subject: Re: [PATCH for-4.18 2/5] xenalyze: AMD's VMEXIT_VINTR doesn't need a
 trace record
Message-ID: <bba10ab0-7df3-4d86-8f2e-47bedfc02a75@perard>
References: <20231009125137.1329146-1-george.dunlap@cloud.com>
 <20231009125137.1329146-3-george.dunlap@cloud.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <20231009125137.1329146-3-george.dunlap@cloud.com>

On Mon, Oct 09, 2023 at 01:51:34PM +0100, George Dunlap wrote:
> Just like Intel's PENDING_VIRT_INTR, AMD's VINTR doesn't need an HVM
> trace record.  Expect that.
> 
> Signed-off-by: George Dunlap <george.dunlap@cloud.com>

Acked-by: Anthony PERARD <anthony.perard@citrix.com>

Thanks,

-- 
Anthony PERARD


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 10:55:55 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 10:55:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617453.960034 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsLGN-0006Nr-LB; Mon, 16 Oct 2023 10:55:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617453.960034; Mon, 16 Oct 2023 10:55: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 1qsLGN-0006Nk-IU; Mon, 16 Oct 2023 10:55:55 +0000
Received: by outflank-mailman (input) for mailman id 617453;
 Mon, 16 Oct 2023 10:55: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=QGmD=F6=cloud.com=anthony.perard@srs-se1.protection.inumbo.net>)
 id 1qsLGM-0005m8-6J
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 10:55:54 +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 938117dd-6c12-11ee-98d4-6d05b1d4d9a1;
 Mon, 16 Oct 2023 12:55:53 +0200 (CEST)
Received: by mail-ej1-x62d.google.com with SMTP id
 a640c23a62f3a-9be3b66f254so333589166b.3
 for <xen-devel@lists.xenproject.org>; Mon, 16 Oct 2023 03:55:53 -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
 qw8-20020a170906fca800b0099bd7b26639sm3853640ejb.6.2023.10.16.03.55.52
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 16 Oct 2023 03:55: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: 938117dd-6c12-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1697453753; x=1698058553; 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=FiRFJnvO39NTv7Zx1+YzdUfp6A1YepZTinVyn72+X2A=;
        b=Ai1KsXg0waQD8hRGN4mAFgXUk9fveN9kY97w9RXQl38IFpL+aKIFIYvkwHZdOodytt
         hdDMBOKvBf5hlYB36eR1todFhjxHCUy6T5nlleSMd/GrOGvABifvzRB04j9dUinM69j0
         GpNa5UoMdYv0pHseT1Bxzv5jIkrwy4sA54yPg=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697453753; x=1698058553;
        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=FiRFJnvO39NTv7Zx1+YzdUfp6A1YepZTinVyn72+X2A=;
        b=a2LcAj4psNrb3Q1Ukj8r5uzuygzXca3Dy2Q76hstPlf70OWadJ9uHZ+rYh9wLAa5Lt
         nlM837t0dzi41f9k9mx6YxQm4N+qkbKCwqqVvNpPtem5zbSZbsiJxWijEdOXZ1o0cRzo
         HtMGZDubp+j5an7u4IAUIK8hU+4x7fcOIjUdHCdtvFoOprEfD2xuy05BOqsL0LHH2Cbp
         Uc3hEa+7KK0/ZXhjwWgR7DTq8hI8L5KPks0AOR9OMdplvreI4drKJX3G5OAzD+cNJ636
         YhoYDUKr35IvbeerVFLXPDH0nwOxIqSK/YFxl+Ps2kEuKgSp8SSM1iZstixryVjkPMoM
         n+sw==
X-Gm-Message-State: AOJu0YwT7IC3InC34K/jra0LKR6CeuM9DQmoWKjJxO9d/ViiqGn3zL+g
	6WkRhoiGaTKtfM1TtIRkCXmQUg==
X-Google-Smtp-Source: AGHT+IEpfQbZFhoP+4xF6oGbm9WLNXmDZt8//y70H4L2p6NSg6g0KfGLMOL4+jHV47yUNnkQH74gcA==
X-Received: by 2002:a17:907:989:b0:9be:9932:f6f7 with SMTP id bf9-20020a170907098900b009be9932f6f7mr5948604ejc.44.1697453753241;
        Mon, 16 Oct 2023 03:55:53 -0700 (PDT)
Date: Mon, 16 Oct 2023 11:55:52 +0100
From: Anthony PERARD <anthony.perard@citrix.com>
To: George Dunlap <george.dunlap@cloud.com>
Cc: xen-devel@lists.xenproject.org, Olaf Hering <olaf@aepfle.de>,
	Henry Wang <Henry.Wang@arm.com>,
	Anthony Perard <anthony.perard@cloud.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Xenia Ragiodakou <xenia.ragiadakou@amd.com>
Subject: Re: [PATCH for-4.18 3/5] xenalyze: Don't expect an HVM_HANDLER trace
 for PAUSE vmexits
Message-ID: <5de90309-f90e-413c-9126-e631bc3db03e@perard>
References: <20231009125137.1329146-1-george.dunlap@cloud.com>
 <20231009125137.1329146-4-george.dunlap@cloud.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <20231009125137.1329146-4-george.dunlap@cloud.com>

On Mon, Oct 09, 2023 at 01:51:35PM +0100, George Dunlap wrote:
> Neither vmx nor svm trace anything, nor is there anything obvious
> worth tracing.
> 
> Signed-off-by: George Dunlap <george.dunlap@cloud.com>

Acked-by: Anthony PERARD <anthony.perard@citrix.com>

Thanks,

-- 
Anthony PERARD


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 10:56:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 10:56:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617458.960045 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsLGr-00079B-VE; Mon, 16 Oct 2023 10:56:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617458.960045; Mon, 16 Oct 2023 10: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 1qsLGr-000792-RU; Mon, 16 Oct 2023 10:56:25 +0000
Received: by outflank-mailman (input) for mailman id 617458;
 Mon, 16 Oct 2023 10:56: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=QGmD=F6=cloud.com=anthony.perard@srs-se1.protection.inumbo.net>)
 id 1qsLGr-0005Hj-9r
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 10:56:25 +0000
Received: from mail-ej1-x62d.google.com (mail-ej1-x62d.google.com
 [2a00:1450:4864:20::62d])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id a56fc2c1-6c12-11ee-9b0e-b553b5be7939;
 Mon, 16 Oct 2023 12:56:23 +0200 (CEST)
Received: by mail-ej1-x62d.google.com with SMTP id
 a640c23a62f3a-9bf0ac97fdeso250095266b.2
 for <xen-devel@lists.xenproject.org>; Mon, 16 Oct 2023 03:56:23 -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
 rp21-20020a170906d97500b0099315454e76sm3757622ejb.211.2023.10.16.03.56.22
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 16 Oct 2023 03:56: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: a56fc2c1-6c12-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1697453783; x=1698058583; 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=qxnWmjCdNtVhldW78ptIags+rtx35fkAKite8BkN9C8=;
        b=jxvPgLrbdcdGRjiUOfeT5SQoK9yykr6U5HNV3/1i++frTj0Zqf0pCWCiGRE4kTfvQT
         73dUwqjjUdevOnVGAg4tmXVWLMWQCnn2hElaCNDjRtpjO88N0DC50VDYgTxPT6ZM1vjb
         T/qzU4T6yA9PtvxAUAjaVdO2hltmQbkpb9BKE=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697453783; x=1698058583;
        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=qxnWmjCdNtVhldW78ptIags+rtx35fkAKite8BkN9C8=;
        b=QSL7iTweL0nod4XGmfEUJOy4a/9Hl/PQLZQucqx66Cp+BeWc1BHBpcrAokEWLgWDhE
         CstQVToezgXEYyN1U1JuobArAItgajEmsp74S/h8P9EqH6l5gEpTYqp1+ZHFtaF9YQyo
         uf8JOV0XL0ry4apYbJ0F5+RDCayRlUFC3jPvXkPz8adaBjfcVFWnO87rboNuFRyN5Vpv
         6MgAOFcOGNhkRwTQV2dM/V9bdACnebLInJ5yxsRz2F0dOnYIWmMYjYW/I/ruGK+wtEBj
         9f/8dYBSao09BKme8zCGgMRcPQMg7v41bQPTZDDo/GgCrz9VeELM7a0qhAW4QgSQ0aC1
         1AuQ==
X-Gm-Message-State: AOJu0YwlFJzF3gCHdK/e9b43oXlGu4nUS6atVERruSnyaJxSU+mPynFs
	LeEpPHWvqC9jLLHfMMBBjnFqUg==
X-Google-Smtp-Source: AGHT+IGuPToY1eDv2ytZhdWE1BQMyzpmeZWdYmS9cRX/bhrsFBS/c0M0vyg+UMOWdnZbyx8PidxlYg==
X-Received: by 2002:a17:906:3194:b0:9a1:c370:1af2 with SMTP id 20-20020a170906319400b009a1c3701af2mr26288134ejy.3.1697453783211;
        Mon, 16 Oct 2023 03:56:23 -0700 (PDT)
Date: Mon, 16 Oct 2023 11:56:22 +0100
From: Anthony PERARD <anthony.perard@citrix.com>
To: George Dunlap <george.dunlap@cloud.com>
Cc: xen-devel@lists.xenproject.org, Olaf Hering <olaf@aepfle.de>,
	Henry Wang <Henry.Wang@arm.com>,
	Anthony Perard <anthony.perard@cloud.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Xenia Ragiodakou <xenia.ragiadakou@amd.com>
Subject: Re: [PATCH for-4.18 4/5] xenalyze: Fix interrupt EIP reporting
Message-ID: <45e93a2a-df35-40e0-91fd-86e5787e7556@perard>
References: <20231009125137.1329146-1-george.dunlap@cloud.com>
 <20231009125137.1329146-5-george.dunlap@cloud.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <20231009125137.1329146-5-george.dunlap@cloud.com>

On Mon, Oct 09, 2023 at 01:51:36PM +0100, George Dunlap wrote:
> EIP lists are generalized across several use cases.  For many of them,
> it make sense to have a cycle per sample; but not really for interrupt
> EIP lists.  For this reason, it normally just passes 0 as for the tsc
> value, which will in turn down at the bottom of update_cycles(),
> update only the summary.event_count, but nothing else.
> 
> The dump_eip() function attempted to handle this by calling the generic
> cycle print handler if the summary contained *any* cycles, and by collecting
> and printing its own stats, based solely on counts, if not.
> 
> Unfortunately, it used the wrong element for this: it collected the
> total from samples.count rather samples.event_count; in the case that
> there are no cycles, this will always be zero.  It then divided by
> this zero value.  This results in output that looked like this:
> 
> ```
>   ffff89d29656                                             :        0  -nan%
>   ffff89d298b6                                             :        0  -nan%
>   ffff89d298c0                                             :        0  -nan%
> ```
> 
> It's better than nothing, but a lot less informative than one would
> like.
> 
> Use event_count rather than count for collecting the total, and the
> reporting when there are no cycles in the summary information.  This results
> in output that looks like this:
> 
> ```
>    ffff89d29656                                             :        2  1.21%
>    ffff89d298b6                                             :        1  0.61%
>    ffff89d298c0                                             :        1  0.61%
> ```
> 
> Signed-off-by: George Dunlap <george.dunlap@cloud.com>

Acked-by: Anthony PERARD <anthony.perard@citrix.com>

Thanks,

-- 
Anthony PERARD


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 10:56:42 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 10:56:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617460.960055 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsLH8-0007dA-8u; Mon, 16 Oct 2023 10:56:42 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617460.960055; Mon, 16 Oct 2023 10:56: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 1qsLH8-0007cz-60; Mon, 16 Oct 2023 10:56:42 +0000
Received: by outflank-mailman (input) for mailman id 617460;
 Mon, 16 Oct 2023 10:56: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=QGmD=F6=cloud.com=anthony.perard@srs-se1.protection.inumbo.net>)
 id 1qsLH7-0005m8-90
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 10:56:41 +0000
Received: from mail-ej1-x62a.google.com (mail-ej1-x62a.google.com
 [2a00:1450:4864:20::62a])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id af9e93f8-6c12-11ee-98d4-6d05b1d4d9a1;
 Mon, 16 Oct 2023 12:56:40 +0200 (CEST)
Received: by mail-ej1-x62a.google.com with SMTP id
 a640c23a62f3a-9a58dbd5daeso705450966b.2
 for <xen-devel@lists.xenproject.org>; Mon, 16 Oct 2023 03:56:40 -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
 e17-20020a170906845100b009a168ab6ee2sm3786409ejy.164.2023.10.16.03.56.39
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 16 Oct 2023 03:56: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: af9e93f8-6c12-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1697453800; x=1698058600; 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=wkwYrOqIySaX1Yg4G7Hs4iWLV9buCx2iOWlZLWIW4gg=;
        b=R5D0qdclf3+DxTBMkGGeZJfOWfjRJdBQge7Yd3CFXOGS545yrzWQhdeBCG7I9P6eHP
         XZCw90VARrl3QYTHLfAvuIOhCisOiaXazQM71RVne7JtzFiCMKexRgxFXdEOYEaxGNPZ
         RbGAhJ/jcAx+uHDM5kBPB5GminKgFsK1KTa1U=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697453800; x=1698058600;
        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=wkwYrOqIySaX1Yg4G7Hs4iWLV9buCx2iOWlZLWIW4gg=;
        b=IIQj9O7gBNrntGHwmxh8aCgaLmkvKAjAAvGxiFZsjOIOTGbhjagzjKVmxald9hwkJ5
         aD9E0mEJAuALH5Bu8F3c5FHoPuFekK/32VOkuC4/MtakNlZAccbDP6jzU/VIYgCF8Oon
         ffEo+296V/QKGMF4P269Jze1Bdou4famWM7VIb5Nhrpfeak2hpAaymfEKlA7MxoQuOG/
         /vySpG5082zEyB62NqqpST8Vk4evVPiPavsNi3E6xOl1q8nCVFYr0UTZaEg4MG+GhCZS
         MfAcGlklQNTy3saCHxIdOMSzn/T9wLGBO+k39DYi/B5WITL+yo/HyTFg/Q81LJAehOJu
         kmKA==
X-Gm-Message-State: AOJu0YzcN6l8zmNgTjR6zJmAoVEFnAbBmu7ynaiursSpwoBJvadRn0EN
	LneTeAmWlq2iQT4MIgRGhggsE31QrxeceC0KYxk=
X-Google-Smtp-Source: AGHT+IEJeSb1mwUoF2yKPeKCVySXddzaEu2fTkKc5rG7c3IyiAmE2gsLV5S58IGUDOUwJmcLof1RCw==
X-Received: by 2002:a17:907:c13:b0:9c0:2897:1588 with SMTP id ga19-20020a1709070c1300b009c028971588mr3934785ejc.17.1697453800385;
        Mon, 16 Oct 2023 03:56:40 -0700 (PDT)
Date: Mon, 16 Oct 2023 11:56:39 +0100
From: Anthony PERARD <anthony.perard@citrix.com>
To: George Dunlap <george.dunlap@cloud.com>
Cc: xen-devel@lists.xenproject.org, Olaf Hering <olaf@aepfle.de>,
	Henry Wang <Henry.Wang@arm.com>,
	Anthony Perard <anthony.perard@cloud.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Xenia Ragiodakou <xenia.ragiadakou@amd.com>
Subject: Re: [PATCH for-4.18 5/5] xenalyze: Reduce warnings about leaving a
 vcpu in INIT
Message-ID: <0d2d35ca-b07e-4ca6-bf26-ad47007ad05b@perard>
References: <20231009125137.1329146-1-george.dunlap@cloud.com>
 <20231009125137.1329146-6-george.dunlap@cloud.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <20231009125137.1329146-6-george.dunlap@cloud.com>

On Mon, Oct 09, 2023 at 01:51:37PM +0100, George Dunlap wrote:
> We warn when we see data for a vcpu moving into a non-RUNNING state,
> just so that people know why we're ignoring it.  On full traces, this
> happens only once.  However, if the trace was limited to a subset of
> pcpus, then this will happen every time the domain in question is
> woken on that pcpu.
> 
> Add a 'delayed_init' flag to the vcpu struct to indicate when a vcpu
> has experienced a delayed init.  Print a warning message once when
> entering the state, and once when leaving it.
> 
> Signed-off-by: George Dunlap <george.dunlap@cloud.com>

Acked-by: Anthony PERARD <anthony.perard@citrix.com>

Thanks,

-- 
Anthony PERARD


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 10:59:57 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 10:59:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617467.960065 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsLKD-0000XQ-Nd; Mon, 16 Oct 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 617467.960065; Mon, 16 Oct 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 1qsLKD-0000XJ-Kv; Mon, 16 Oct 2023 10:59:53 +0000
Received: by outflank-mailman (input) for mailman id 617467;
 Mon, 16 Oct 2023 10:59: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=/fZZ=F6=citrix.com=prvs=646b5f8ff=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qsLKC-0000XD-3l
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 10:59:52 +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 1f703c61-6c13-11ee-9b0e-b553b5be7939;
 Mon, 16 Oct 2023 12:59:49 +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;
 16 Oct 2023 06:59:42 -0400
Received: from MW4PR03MB6428.namprd03.prod.outlook.com (2603:10b6:303:123::8)
 by SJ2PR03MB7526.namprd03.prod.outlook.com (2603:10b6:a03:555::10)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.45; Mon, 16 Oct
 2023 10:59:41 +0000
Received: from MW4PR03MB6428.namprd03.prod.outlook.com
 ([fe80::831e:28d1:34dc:f518]) by MW4PR03MB6428.namprd03.prod.outlook.com
 ([fe80::831e:28d1:34dc:f518%5]) with mapi id 15.20.6863.032; Mon, 16 Oct 2023
 10:59: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: 1f703c61-6c13-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1697453989;
  h=date:from:to:cc:subject:message-id:references:
   in-reply-to:mime-version;
  bh=2rAwcMmJ+wrEKU79MZ+st2MhnPf/Bk377+uGYPe3MeA=;
  b=FKdXzrLgrqTuzSSi6OC0xbGfregBzVdpHgsYHngxA0ELmq72alic4nzH
   jSrIZ8gPaxc70K8W6667aFJqmnL1B/033aXOBEDm4kYjGa8KSr71sZj3b
   CbRbVbgsvw3aEOdHDUe+D9XqvervlpVYtXwMkhIaV/QOsiEGpy6L/NKiH
   c=;
X-CSE-ConnectionGUID: 0iGx+9iXSzeJUhKy7ky1wg==
X-CSE-MsgGUID: ceUMZ5i1TpyO/KyfLLaRrw==
X-IronPort-RemoteIP: 104.47.58.100
X-IronPort-MID: 124935812
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:Ycamxql4VUopU0ZzjnfKEQbo5gxkJ0RdPkR7XQ2eYbSJt1+Wr1Gzt
 xIeXz3SOvrfa2qkKY9yboW290oO78fcz9M3SgJr+C5jQyMWpZLJC+rCIxarNUt+DCFhoGFPt
 JxCN4aafKjYaleG+39B55C49SEUOZmgH+e6UKicfHkpGWeIcQ954Tp7gek1n4V0ttawBgKJq
 LvartbWfVSowFaYCEpNg064gE0p5K+aVA8w5ARkPqkT5QGGzhH5MbpETU2PByqgKmVrNrbSq
 9brlNmR4m7f9hExPdKp+p6TnpoiG+O60aCm0xK6aoD66vRwjnVaPpUTbZLwXXx/mTSR9+2d/
 f0W3XCGpaXFCYWX8AgVe0Ew/yiTpsSq8pefSZS0mZT7I0Er7xIAahihZa07FdRwxwp5PY1B3
 aQZByBOPxGzvPC74o+7afgzhdV6M8a+aevzulk4pd3YJdAPZMmbBonvu5pf1jp2gd1SF/HDY
 cZfcSBocBnLfxxIPBEQFY46m+CrwHL4dlW0qnrM/fZxvzeVkVw3ieC1WDbWUoXiqcF9hEGXq
 3iA523kKhobKMae2XyO9XfEaurnxHmnCdlPROTinhJsqFae+0khVRxPaUOqhr6am0Caf9tlM
 VNBr0LCqoB3riRHVOLVXRe1vXqFtR40QMdLHqsx7wTl4rbd5g+CLnQHSjNHZ80rsIk9QjlC/
 kCNt8PkA3poqrL9YXCA8raZqxuiNC5TKnUNDQcfVhcM6dTnpIA1jzrMQ8xlHarzicf6cRngz
 jbPoCUgirE7ic8Qy7797V3BmyirpJXCUkgy/Aq/Y46+xgZwZYrga4n271HetK5ENNzAFgHHu
 2UYkc+D6uxIFYuKiCGGXOQKGveu+uqBNzrfx1VoGvHN6giQxpJqRqgIiBkWGaujGp9slePBC
 KMLhT5s2Q==
IronPort-HdrOrdr: A9a23:njOjt6yYIX1u0mOmrS2/KrPwFr1zdoMgy1knxilNoH1uHvBw8v
 rEoB1173DJYVoqNk3I4OrwXpVoI0m9yXcF2+gs1N6ZNWGN1VdAR7sSjrcKrQeQfxHWx6pw0r
 phbrg7KPCYNykcsS8i2njbLz/3+qjjzJyV
X-Talos-CUID: =?us-ascii?q?9a23=3AVDcBzWsBxHch98lvQ3mPlJFf6It9c1LNjybRE3S?=
 =?us-ascii?q?qBERUSJ6EFlyBobxrxp8=3D?=
X-Talos-MUID: =?us-ascii?q?9a23=3ApGVfHA4vCaLz8L7LBPzpOQUcxoxj7pmLOh0MyKk?=
 =?us-ascii?q?equ7DFj1+HxOUti6oF9o=3D?=
X-IronPort-AV: E=Sophos;i="6.03,229,1694750400"; 
   d="scan'208";a="124935812"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=RkUhlcvrQVFTPK/9pkvq2HE9JfhdbjFL1m3ftXNXSMQrNm/0D30we+KWrTmctdAxVD3zRbRXX2u0gcdqPAkolS8b2hk1ZMJFf8itkTeWHG5hBsYlRlhMoV76DNc0ogjWuFPFN+52HyZ9qNmLiy/2V6nwhZvxqRVlPhburfGbEXu7kJyboKJ7VB8ixMJybonyufKdWesWIzhhtvqfhQxlwvUQ0Oa4THGWi52q+WNjzBGOwhoomUqOvLtdul/ZJpWm99tgvyQcgXl8KlZ2J/IATYHC+mH6b3rN8W81cV32pciuaEW4k8LRuGZmc37hLo40kquzVCkzdDxqxLnf2RK1NA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=/gh1Des8IlSF9yyXu7opSsAM+fjHaM6UD8nirwQDchA=;
 b=Aqb2rhl7Wj3ztt13HIBxwVszeQzJf/L+rZrr0pPfTxfGJftB1TYfKHmcmVI706zyi9qe+ON+4RCM5mEiLTKAzLOzXkeFQNifK1pTknqRzW9wUVKjKns9z5X/gCcuZ4CiskYCiaUzIqGqc7LQZkBwghVRMS+oNBSe28zHKA4xDGZQ6jYXX9OxvYN2ogEnRP8biP9GL84PQmThRUicd62UNCYzio67h9nSr0leEy9Tb1anYfrCcEw7gzBefFLwODYjCh0/nXATk1+ynwKfnlkSmelx1GiujGnHXYDQXk/ooJwqjaDbiHK/+FHqo0kPBJoyJ7DWFJEoPyO4sQGM+cgBSg==
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=/gh1Des8IlSF9yyXu7opSsAM+fjHaM6UD8nirwQDchA=;
 b=M6Lric8BaMnlL3aetOEBXqvYZAvKQsi+K9W8ULpjij4Uw5Mh2dwEkYWJ/G60ITde14k4YEH2vtUmfQkjC8KvpnBxkUQgah7bv+wp0Ev55vrCdVZDvUbaaWm+j8NJ4Z4ZtUO5ODKjbGpLnjUAg9+PZkltW3vS2O0/pQD46C9TWwg=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Mon, 16 Oct 2023 12:59:35 +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>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>,
	xen-devel@lists.xenproject.org
Subject: Re: [PATCH v6 06/10] x86/mem-sharing: copy GADDR based shared guest
 areas
Message-ID: <ZS0Xl3UkgRibzDT1@macbook>
References: <081ae245-9d47-4cab-ad64-54b33566429c@xen.org>
 <20231004135331.83736-1-roger.pau@citrix.com>
 <66f7bf81-2bf0-cdd8-8dde-6439c4991468@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <66f7bf81-2bf0-cdd8-8dde-6439c4991468@suse.com>
X-ClientProxiedBy: LO2P265CA0511.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:13b::18) To MW4PR03MB6428.namprd03.prod.outlook.com
 (2603:10b6:303:123::8)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: MW4PR03MB6428:EE_|SJ2PR03MB7526:EE_
X-MS-Office365-Filtering-Correlation-Id: ac01dee1-3e42-4258-83e5-08dbce36fee6
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:
	uGYlWnQZm9DHPHinNpvJLab1UyG0wV5VJvMi3KoFDKYPLcWIjJAL8wc0OWFSH4fBWAWAc2boHE43Kztd0QZOFdcYph/FEPwS3DrGfyJ6+EGMkks3iXgIYFIhIDbSwAeYG1sVfkMeTmNBvlP7nBW0fzP4E3RfQLmOxowvYlEMlN0m8bBtvzoRv4AOq5CgkkDzTPpmJE3kEYfLq9spMN7/q098puFyQ82mWZ/0qVmGtDTpAkVxVS64KydBy0PHiDSZMsLbgY8ZpyV5k7Mjh1bT2HccBGQF5dmzyAVvSdLv8mN+FW42pIMLKnBKWCi9e/OY/RpNyi/oFaKGdg+z6bJw91aGh8EH6LRaPae6HLJkh3VZAT/QpJIu2wpG1t8mIVRQp92k/KNwnWFZQhlyDsnL90ELqCkC4/oy1eGnFII5RAnTS7E5w3Zsb9pSmBUzVklYHM0EIUOcfEjgPO/7Q2/YXsRyTpnudUtK/vPRFLQWu5FGtYC1H47bxUGaEPr+Q87K2uobtmyr3LO6YQoLuYZMQbCZdLfR9ToVxG8C8hpopkZYCI/Drg9LRqRhCHKs2AD2
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)(39860400002)(376002)(136003)(396003)(346002)(366004)(230922051799003)(64100799003)(186009)(1800799009)(451199024)(9686003)(53546011)(6512007)(478600001)(6506007)(6486002)(6666004)(26005)(2906002)(8936002)(4744005)(41300700001)(33716001)(66476007)(66556008)(5660300002)(8676002)(4326008)(6916009)(54906003)(66946007)(316002)(85182001)(82960400001)(38100700002)(86362001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?bDc4ejZpOW5XYlFBdDFndDdaWHRacDFSTGRzMkM5QmVQeDQxdkFwV0R3Q2xv?=
 =?utf-8?B?Skt3T0NYamU4RjJKRWI3d0E2bVdRRVJpYXZMOXZqc1NXRlYyVWFkVEhvVnlt?=
 =?utf-8?B?WEZtMlFKUEtUTTdhWlkzWll6QWdqMklyMlpNandDRzhmcnN4R1lsSGpOamho?=
 =?utf-8?B?VnFFZ1hRM1R4bFEzN0pwQzQvN0crYmJTRkNHUmU4SGl6M0VYdEVkMDFBeWVD?=
 =?utf-8?B?TkZ5dTcyWUVLdDZ2S1lDNWdudW9TdG5QWmhTZFVoSkFISmMrL1phdzVhbllt?=
 =?utf-8?B?ZTg2aWZuVU5YVVBTaHBSQXIwdE01RFQ3V1lQcWNCalQzUUdzU2pWV3hjdktO?=
 =?utf-8?B?eWFBTkNOZzVvc0lNK1MyM014bkswalc5WlZySWZwNDBLMkFkWVovYlQxQTNs?=
 =?utf-8?B?RkxDWFpGKzd3SjJvbklJNUcvdnNMSTFsUEdab2tQTU1qZmVycFRzcXROSEJz?=
 =?utf-8?B?a3pjMUZIeXc1d0xmOHFzWExqTWNPMlYxeGl3UE5jM21yVW53Rm1WMHNOTmV3?=
 =?utf-8?B?b0FHaFAyeXlGKzBmTHpDeitDbVpvTE1GMGJGMEp3OVNROTYrQW82QlYwY0Vq?=
 =?utf-8?B?OEo3MWgyYk1NdlZCbVVrUE9kMXphQzBCZS80VEo4TEp1OFdiY3VsVVBvZGVp?=
 =?utf-8?B?ODZzRGRpQUYxWGpqeWpSTTZiNitKOXZmLzg0YXF3TDJJWjRHQ0hOSnZxNnFU?=
 =?utf-8?B?SldieWtRYVpuRGJXNlk0L2VKZngzRXltSjB4eGR5MFIvU3BvSjNKM015UzNP?=
 =?utf-8?B?S0VoUnVxSk0xUVhlZ0dsUGhMb1hHZGlnM0lVNkltQVJHWjV5cGJKWUM1NnhO?=
 =?utf-8?B?TGZDR1ZlWUpsR1JpY1paWkZrNllmOUsvcTNFWndTdlpObmtFVWJ1TnVrY0NU?=
 =?utf-8?B?U1J3dHpJSUZhOWxzUGpSd1JOREZqQm9yVEtZZnMzbG9McG13M0dxQmx4ZmR4?=
 =?utf-8?B?T2lXU3V3bERCL3crYVlkRG5Pdm5QVHA3Y3plc2ZqUmJXYnFlUHZQZlUxUFpJ?=
 =?utf-8?B?Q2R6QW1RRkpuVFNaOS9oVnBRMVh6TDVOOTVMd0JYVkdaSENJaVhmRTFnNFA1?=
 =?utf-8?B?TGd0Um1VZm0yQlJOa1JRQkxGdDRDeGRKZit1Z20wekxHeU5RL0R0SUJidUdY?=
 =?utf-8?B?b1hMempiUU53cVYwdnJEdjQ4Rk85Um1UZXJzbjNUWjI3bXlOV3BEakswbWJW?=
 =?utf-8?B?YmdoTHB3c0l6aWEvL0ltNzNBWTFqOEs5WmREUkRIVTRScjhsVHVMcER1dkVW?=
 =?utf-8?B?L0dhclhwRTBjL1VOcGJSTE9XaFB4T2lIRE9mVEdLNjJqNDB6UXl3SFlqV2xq?=
 =?utf-8?B?eUJFbEFNaTJueXhYZTY5eWJLVUtOZEdQWGluRUMzU05iSXBmUXM3NFhDVFhI?=
 =?utf-8?B?SFlhd2hFVE1ZNVdIWGpGeXpvUW9NUXFoNGc5UTlqcE9iaXFDUlJvY1BsYnI5?=
 =?utf-8?B?YWVySXlRQmFqSGV6blF1c2NZOENkUjRUNFh3bG5MeGloVWRtVWhtVWNZeE5G?=
 =?utf-8?B?elczekRyQTFBMXJZcktoTDV6aGJiaEVIbVVHalRYTVYxVU1WMGU3cHYxVis4?=
 =?utf-8?B?c1JBN3RwS0ZTNHRKYkd6TnV0OXF5UHJPSkx6d3F2cFhVSFVoU0FHTzBSb0pM?=
 =?utf-8?B?aVh1OFNhS3VEODBrZ3BpUFovZDhoakhlMjYyUWpocFVLSjVwZWF2ZWQrOTRS?=
 =?utf-8?B?VjJtWEdMWGdncWZ4Y3p6VThwQXc5M2xoREZZZGFpQzlRcDQ1ZDhweGYvVlk3?=
 =?utf-8?B?c1o1dzRaM3NxKytWWnNmOWVUMHR2RW9SUTlGZXBjZHJXK1drMGczeWdSNW9w?=
 =?utf-8?B?VS9TSitsL1NvSmk3UXZudlVKWnE5MzdXemx1cDc5S2NNRVVWT3RUSUQwbXdv?=
 =?utf-8?B?Z2d2RUtneE1ISXg1TytpZ0NZZEdGVXNPczFrNEd0NWNUdER0bXpNQmE5b2ov?=
 =?utf-8?B?dHFLOXlIajUwUGJsSmlPeDdybTFucVQ2ekN3Q2o2ejFSZmZRSVBoU0JTNWgr?=
 =?utf-8?B?MlRMaFZLQUQ5YXNKTjlJL0pTZUNqc3RYeFp5WFlHd09hNlFad2tNTlJFT1BS?=
 =?utf-8?B?cDBQZEFEMklaNlFGZXJmM2VkdTlOL0hHbkhocmNFNHV0TUtpL1NINjVQRm9a?=
 =?utf-8?Q?ZBVVlmJgP6jK6f3vxozPabqIZ?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	JySQq73HFG3tt5Yr5LhrInQWY+IP2QyezIjtH+wPZW0Sj2Yn4wyuEgxmgzhLid3TQJcz8pEAdQ1fv1Xm9vGPrAnyS1NSsMZFjITEFrHzgna8VxeUn3sIVqQ3s/0al8ZlPSzrNX+03otggsaXETmc2bTofxvxD7PzBshlAyj98oPNx0k3uz5NFbrdGDByH1hKeSql482wWKhTESU2VceOf20nBmuLmp0zlgkgLBuNl9LacIm/78obusKumUZH+KwuXsR0W7v5xwWKmaQsC18tIYJDAYbGc5HjmPqMZ0GCVA3uSHvVzybeZX/wPHs/8m8att9/HR5CDakIvFmAG8VHSACXTmLjEHfiIS+vC30KYXY+xwDUSlg36kVqniMS9pMGdGR0jyzLPtD4Yc+S00bUJf9l5yqAhqU9/nNStOZZDCGwPUqnGtAFHXq2TBSWWw9MKhN8FFJsAjd71ARmeyV9oagebjZZrvFrCypgGEqfz6nh4//F4vMljGOxQKLD/gy1uU0KyV3RsGZCH9UUJ6+qVCfTSO6NqvLCJ0KINt/hcDkt3G65QNiSKbbuqi2KmlLWPycw2xuBNyGF4Ccu1wuxFq2CJT6/xGjOLKWzPISJrskrO/COqcpekDZqxCjw7sas6Q7CSYMTebj1TO6mMFycHLvxPJZShp4xAgLaO+YJK5zg+0kzhXa9xudtJ7QzhprL9vateZ1y+UUZVj9fyDBz/mvGkbdgkoR76fWOpzvAzzxbIdsKlbMid6Y0uwTC4UbIupwm4gZsc81/7ZTsKyezmuxzvB9H1VeXBhpRZSZA+H7Uve3g4tyje9vBD+4YiczWeenOyVbLFodpxwzg962zT1XwEIA9ZSvWq4Qcc+6QWiwAexD1Wu7lgCb8IIS21TeXAGhKtvjlOsWbtXg2F4hG6Q==
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: ac01dee1-3e42-4258-83e5-08dbce36fee6
X-MS-Exchange-CrossTenant-AuthSource: MW4PR03MB6428.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Oct 2023 10:59:41.0870
 (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: 2d8/exaULsiiE7qwRtLfTzIBD3WY6oD5ld5v6gTtd+bz40LK2hPBcl1HKZdGfiOTxgT5ghA/9EMEFMZ2nTWQ7A==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ2PR03MB7526

On Mon, Oct 16, 2023 at 11:55:25AM +0200, Jan Beulich wrote:
> On 04.10.2023 15:53, Roger Pau Monne wrote:
> > @@ -1950,7 +1978,15 @@ int mem_sharing_fork_reset(struct domain *d, bool reset_state,
> >  
> >   state:
> >      if ( reset_state )
> > +    {
> >          rc = copy_settings(d, pd);
> > +        if ( rc == -ERESTART )
> > +            /*
> > +             * Translate to -EAGAIN, see TODO comment at top of function about
> > +             * hypercall continuations.
> > +             */
> > +            rc = -EAGAIN;
> > +    }
> 
> Are existing callers known to properly handle EAGAIN? I'm worried of the
> verbosity that was no lost here.

No idea about the callers using XENMEM_sharing_op_fork_reset, but it
did seem the best option rather than leaking -ERESTART to callers.  We
have no callers of xc_memshr_fork_reset() in the tree.

vm_event_resume() will trigger an assert if mem_sharing_fork_reset()
fails with any error code, so doesn't make much difference there if
the return is -EAGAIN or -ERESTART.

My initial proposal had -EBUSY IIRC.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 11:00:18 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 11:00:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617469.960075 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsLKa-0001mP-0A; Mon, 16 Oct 2023 11:00:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617469.960075; Mon, 16 Oct 2023 11: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 1qsLKZ-0001mI-Sj; Mon, 16 Oct 2023 11:00:15 +0000
Received: by outflank-mailman (input) for mailman id 617469;
 Mon, 16 Oct 2023 11:00: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=BBjo=F6=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qsLKY-0001lp-Dc
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 11:00:14 +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 2e56ee7e-6c13-11ee-98d4-6d05b1d4d9a1;
 Mon, 16 Oct 2023 13:00:13 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DBAPR04MB7303.eurprd04.prod.outlook.com (2603:10a6:10:1af::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.35; Mon, 16 Oct
 2023 11:00:11 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%6]) with mapi id 15.20.6886.034; Mon, 16 Oct 2023
 11:00: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: 2e56ee7e-6c13-11ee-98d4-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=TJdUB1Tpp6zqXfDvOr7kpGN+5+p6gzpQgc0bFQzileKPksVB+jVw0SdI+zpYNlOegpy1OXMsgukXl1Mj8TDLb9eFLv+2287XNV6zHhppE/ZEE3HTQcBjikg5M3K2QW1UH+tip26I03CWcsTi8iy5ChjOlty94l2Si+XOohwFGoQmiJ+Dy9Rjav06wX2Q8JfpDbUBsfNxDn3Tggvy5nrrULhHiI5pdlMcMjXW2b8vSYshHFARN06gLngMYTnQxG09P97AeU+sE9SLqMTEzr2TlnLaujzSB1f3l/ottuv5VAhpxg3IgKMyz48G389zcRgNquetVz22A+yI6FtGMp66vQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=vTvpCDNycz5IKQRIM9uOXTLLSFdTeTBE0ZY8+2XZobk=;
 b=NqYU/hDOgDzIqTJwYLw5gUe8ns+lLY/IjoJoi1mn2D4QnzJPnyEG4sARNSc7lnskzVTANh+6aYXfocMRUZ+eDzOfRw9pz/kcnPY/hgw3L2H35t88ofEsrLbL9244iozI3YpEqsjeG7wfu0lQ9bOuTHtw0GZJ9orFlAzDt/MovY4sEwGdkfJDYQBsO6rX3oftf+40FVAZ75Jq520O/KPJHbyu+YZsadhiJewLizuJVZbJLRoIYrhyU7kc2m3miKbw9aNMU1w32sLSBoULKSvWKpxSq/lxsOQGpilSnlZm5X9iyH4PopcL477d+q4F3SbHMBE6L45PXRbEm5zMzq7U7A==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=vTvpCDNycz5IKQRIM9uOXTLLSFdTeTBE0ZY8+2XZobk=;
 b=bgHx23qtS685v1TtNKBurFkxGqo4NsUQ0/GCgpoEuJxk4d/izclblN7JCItGljsA4L9wT/qGF/IDjsQzGwp10BALs504fodwNwZGr+q3y/JDYHpbPHOSlU+6dIXPvpfKWUCTJxbkZM7exydpFYNWRMCu6fVpQVo4s7yOdZoU40XokLExmpBJR/TKvL2jrJNKOfcSLh/Jr/XvP8lFohMYTYkY10x4G31lZaCVSXmvwWJb2ubSyHEm/J1l/Zhf5N3HwMc103eb+N/rzNdAHpvqNEEvL+v2n8ZGSkz9T9sS5O7CmVEV+YMpgcEIRreH85mMCQEgYl2tHm5A2FJBKgxcEA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <137af760-91be-21de-6033-8db1b8b7ef6e@suse.com>
Date: Mon, 16 Oct 2023 13:00: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 v10 16/17] xen/arm: vpci: permit access to guest vpci
 space
Content-Language: en-US
To: Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Cc: Stewart Hildebrand <stewart.hildebrand@amd.com>,
 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>, Wei Liu <wl@xen.org>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <20231012220854.2736994-1-volodymyr_babchuk@epam.com>
 <20231012220854.2736994-17-volodymyr_babchuk@epam.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20231012220854.2736994-17-volodymyr_babchuk@epam.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0160.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:b3::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_|DBAPR04MB7303:EE_
X-MS-Office365-Filtering-Correlation-Id: 8e6de7cd-5827-4b91-ad93-08dbce371147
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	dFh1v6r8kLB959Lw5ow+q7SdGURdwkRko686ES6TfLUamXvkhPEkttfY8mDlE9GOUvrQeWw7qI5LQ+G1FC5dloVFu2k+mWFM55j3sFgYzNq7oe4/JLz+9z1lOispKSGPemkOSQnRRbKm0hlgsdZgEa4wrgCbfLPihbTIa3bbYqRxLCmok4Iwt9BY5P95BruxIceZkCbj9vmTxdrT2QK6MzGu1ZX/pkGkvrK5reLt6uhrm73e1aYJq2+sla73SvYVcwPIilrwDHoFd5D6LUzXzXba1GJAEuuMjOFPmQiHjrq0X77mNm0E4U3o8aiCe5pBPt2+/sjXKJLhHWjv5AsV1JejAzhT1/4cUhsmOtgXwzSdLYGWfniQ7fel1QqM8nccBB4DN142AzSiSP15CmfPI9Ltcv3qJhVjE7a1XDWFdm2ewKVahP0hkcznWgyTh3CcjwBCzDL2uYtvS0m6AKJfjOgTud7KilUlB/7UEl7ZRvShiTwNg4e3YysV0S7VVs+fO9Yd4w/gjlYk5Gy1vG/SMSE9DkDH7hLjjXyAH6ktnc1qCBxXmglCKwou/Xe7FSjE3OkVT32fsznxjgcnk4oDw9/a4RQO1JA+lTIOxrQ9g+RCIFy27GzjmTZr8Gs6Yo3t9cNa3VquD30YLTk//0Dvtw==
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)(136003)(376002)(346002)(366004)(230922051799003)(186009)(1800799009)(64100799003)(451199024)(478600001)(41300700001)(6916009)(316002)(66946007)(54906003)(66556008)(66476007)(6486002)(8676002)(4326008)(8936002)(31686004)(5660300002)(6506007)(53546011)(31696002)(38100700002)(86362001)(6512007)(2616005)(26005)(36756003)(2906002)(4744005)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?d0J5dUVtUDJURGpSS0dWOFRLaitWT1VNMXp0NlhzOVN0ckFjRUxMK3BuSDVT?=
 =?utf-8?B?c09USEhaTjJVYXV0aUtnQWtKY2tBbnM2SDcyb2FJUW1NRWVzWGhzSzJCNXpH?=
 =?utf-8?B?QW51S09IK1YrNWFjeHVzNktLcjhjdkJzeWljTDdKYkpPRTNZMW9UU3RQb0cv?=
 =?utf-8?B?UnM3VytFL3dBWFozd3RGNGZaV0hDS3N3MU45VnFWaG1UekQ0UityTnF5ajBI?=
 =?utf-8?B?QXlFMnRwQlVQcm16b21tNjdFMzNMVnFScDUzNlhiYmZmeHkwdWtwUmh4UWpR?=
 =?utf-8?B?NEpwbmpaRGd3ekJSZXdaQTh2dlliMUNMRzRReUVuNUJrUVc3TmNaR21PcGti?=
 =?utf-8?B?WXI1Q1ZyVXNGUFZQZUh2c1I2UEEwSGNXelVZTkNrR1o1d20zRzh0YWxQZnZh?=
 =?utf-8?B?OXgyOUpOTVgzMG0rM2hFajNRSjJ5bmViNnAyWEZDcDE4eFJnYkg2RjB4V0Fy?=
 =?utf-8?B?ME9SbkI4NWt4T01JaUpHVWZoLzFraWg1ZUdRTWVCSFJRTTJGSTFUbjREaUJC?=
 =?utf-8?B?T0lVbTF6L3A1d1ZrdERhVmVBbGhZeW9rZUkxVU93bk5DbVRzTHpYRnVrZGxW?=
 =?utf-8?B?azJYTTZqOHNObzcyaDRCUHA2emMxcDg2S1R6YWZsaDFuM1J2RWZBUkpOQzhy?=
 =?utf-8?B?N2x3cUVsUkxLYjZST24wbjBZTm9JdCsyZkhWSTdiYllYMUhPaWp6QldiOHk5?=
 =?utf-8?B?UG05MmdrM2tWNUdaU1NsMEJPdkw2QjdOY3I1TUZTYnpYNHhaSDJVTUlDU2hl?=
 =?utf-8?B?V0ZMQzUzK2czTFdmMHQ0WWpEbFUzazF4Tmlhc3NGK241QUJEcG90ejR3YVUy?=
 =?utf-8?B?MmFJdmVJWHVEem1lRnFjRDNGOEh5a2YwaHExQ0RUUWtDd1BIN3ptUXU3dHJT?=
 =?utf-8?B?TE44R1RNT2VJdXlack5waDZjNEtWT21GZlNKTktGT3RnTlE5bGM1Qk1tS0Vs?=
 =?utf-8?B?djl1eDcwSmsvU3UvZy9idXd1NVB5ZDZFTmRDQ3RtL3ErMFpZempnRkE5QjNM?=
 =?utf-8?B?VCtlZldKRFJxUDFIZGZiZXpJSUl5RHJJeWU1WXVBR3pGa0UramFOcFZ6bk5I?=
 =?utf-8?B?MUI4aEFjNU1zMUFyQnZ2MjFvNHJqb2l3bnRvSUhiRWJES3NMUW1MVncrL3Ja?=
 =?utf-8?B?cityb3ZZTFcyMW0xUzNBc0Z1MWo2eU80ZUtSQm9GeFlNQkE4azdHaE5kckVq?=
 =?utf-8?B?YTRrSVhYdGhGZm92MmFzbFU5ZVFqWW96ZW03Tk9uczBBc1YrdW5mZDllRnN3?=
 =?utf-8?B?d3dxeFBtak9valBURkdsTXdjMlhWZDJyUU1NTFdwdUNLWW9FbENEWWhPaUVW?=
 =?utf-8?B?TFBkaVQxNHp5SUt4WUxLVnBKN3FCajBQUWRwcERwbld3clAyNFlyMUJTVExT?=
 =?utf-8?B?RzIxRTlITTNjU1pxVzRwbk9qQ1RjaUtGRG0rRm5EaXJ1KzVCNEFjTjZxYm9t?=
 =?utf-8?B?bnR5S2NMR0tzZ3VZQWU3c1pNWmprS01qdzdWeCtzMngzeldUVkpQVEFCL3lF?=
 =?utf-8?B?KzI2UGlNQXJSVU9QbzNDYlovSE9BckpsOU5yQnlsalNuK1VyaUJ4WE01VHNk?=
 =?utf-8?B?dXdJSWhNS1lGdnBhUWpLQ0JiZTJzRWhlTDlBZnVEbXM0VVRvNlpSejUzbStC?=
 =?utf-8?B?S0x4OGxlV1RCV2Jabnc4OFNoSEZLMGwrWDNHZHUvem91cmNEUkd0REw2aWtB?=
 =?utf-8?B?K1lTejYwa3dNRFdQOTR5bEVrVW9sNmJDellKZFhabUJxU0dJaXZQbkZXM3U0?=
 =?utf-8?B?OFBEUXV0L1FUUjlqTjNJVGpxY3dXd1ZPUnNicmRWb0tzR0xMRDZFRW1hTVNI?=
 =?utf-8?B?QWs5Z0huU0IxdXVYN2pWWk4yUndJNERFMFJjNUgxYUZ2UDJBUllWSUNhTnI4?=
 =?utf-8?B?QVhRU2daNFExNDlGWnZFVGd6WExmWFprOEFjc3h4djkzeWZqNDJFOWh4VnRp?=
 =?utf-8?B?Ukl2SGpVTjRNS0t3QmZ2ZTVVZVZ6VG4zdkJWYUlsbGwvaWZqQ2lYM0YxZ0xy?=
 =?utf-8?B?dFFHbXdRN2h0N3l1TlE1Z2doNllvLzFhZ0RRRmJGT0FrYm9ZV3R5T1h6ak90?=
 =?utf-8?B?MVdScmR2bU5GV1A1UUxVbzJSd1BjVUt0SjRVWGN5ZGpFUlo2U20yWnZxelZM?=
 =?utf-8?Q?haWUV5stH64KlEi4p4HjI1F4x?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 8e6de7cd-5827-4b91-ad93-08dbce371147
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Oct 2023 11:00:11.2560
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: VWrED6ii78B3M5qqAMyIPgI2E0SvkqJhXCv9qaHhAHOvMz85gSNuOnt1FjPp1xU2hgQVLuGop31hyfVhe3Ekpg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBAPR04MB7303

On 13.10.2023 00:09, Volodymyr Babchuk wrote:
> --- 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;

It's not really logical to move one, not both. Plus you didn't move the
error check, so if the earlier initialization is really needed, you set
things up for a NULL deref.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 11:21:18 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 11:21:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617474.960085 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsLeo-0007iP-KE; Mon, 16 Oct 2023 11:21:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617474.960085; Mon, 16 Oct 2023 11:21: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 1qsLeo-0007hv-H6; Mon, 16 Oct 2023 11:21:10 +0000
Received: by outflank-mailman (input) for mailman id 617474;
 Mon, 16 Oct 2023 11:21: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=BBjo=F6=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qsLem-0007hp-EL
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 11:21:08 +0000
Received: from EUR01-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur01on2048.outbound.protection.outlook.com [40.107.13.48])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 166c38ff-6c16-11ee-98d4-6d05b1d4d9a1;
 Mon, 16 Oct 2023 13:21:01 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DB8PR04MB7161.eurprd04.prod.outlook.com (2603:10a6:10:124::7) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.47; Mon, 16 Oct
 2023 11:20:31 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%6]) with mapi id 15.20.6886.034; Mon, 16 Oct 2023
 11:20: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: 166c38ff-6c16-11ee-98d4-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=gY8qP2lzFJHotdp5KaNhk4JoVPk/azhcQ9Myq/jEPRZdPvA/QtwLA1cbSnpLx0Hs5AtpV+cZqEmsTPYmnBJzkvou3rPS5rercr3e3vMfbr9AGSzpve5+CW45YlycAEmKOkTZeLD82qUX4n3SBVLVbrAyOwSNeADpoe8diVveyld9XnfbO72+zBh4p6er8cQh8Jr78CyQPzwjcJf2XKZSJbfdkigT4s4CtVRT1VrVnt9Ezu6h1KTrUP3TLOXIlYEyF4AuRN38To7PY40vDPZd5SQ1aq0QEgOOzWeTzvt47jHxO5X/+ONMFFhfjbwiMXO/0nc8D8zrtXGD7JNO3fiQhQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=TbBq8pRSxRP44XmGxkT84V0CiQz4ir70N6Vc0YoZsNc=;
 b=FjCKPMe65Dz3DTglUzbFxUSGUB+DSgpOMzvlRlQQMtsGnPxHfhzQekQ4xXhk3cH5YFiAr7WKRAUEQVa+w5CBtPrsy6jUdeKonBpKGVmxGC808Neqy8fjSCXIiAIHF23HodQ1lRFg6Gg58HDKmsIoWF5OIpCy32+vkM7t8ywI6Q2Q+74bo+kn+NzI8IcFjSWtOT43Gmv7a6ncB+mcMF6f0vBpptEIoVBaev3wnOYAEftKJY8qVyUcnwNLJbjU+ML6bFdEfBbi2hdKQVRMbwKedheV5B9L73x89CoWZ3urYEL2gdvBUxB7R4a4XzKkiVsDTFEzrOyxiYyzKWllvEJxHA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=TbBq8pRSxRP44XmGxkT84V0CiQz4ir70N6Vc0YoZsNc=;
 b=WECXU9asBSIzLPeg65RSIj/8YtrvJd9XKc5bvxE5G1uof7zGADPHw5wsB9ODNyP31fVqqJ5JGVK3zGC5AgvGoCb7PkSc1IIxVo+0+GWkCNfzgG8diZNuIwW5xo7uFGGEw2g1griMGDEa9AFIM545937fs7+k4hliHWBDf4Ed4CHEpCefgzmG0htNNBryYb/zNUldk0e+ueluNDsKHO1DWQbSAuDd9KALQh8DXb6nbmtCOCjymWSQUQthCVkUHl2bd8tvpkcJIF0GT2e3N8qbKs2on4MN4GjqbxfLHOJM78lo50LP7UyA4dCIDEsFyLc0eSRi10PKvHcC/iC9O4E+2Q==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <83e078c0-49f5-8c76-8ee3-30088f41a65c@suse.com>
Date: Mon, 16 Oct 2023 13:20:29 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: Definition of mfn_t in x86's hvm/grant_table.h
Content-Language: en-US
To: Nicola Vetrini <nicola.vetrini@bugseng.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>, roger.pau@citrix.com,
 Wei Liu <wl@xen.org>, Xen-devel <xen-devel@lists.xenproject.org>
References: <a4b6710b66ed05292388ac6882b940ec@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <a4b6710b66ed05292388ac6882b940ec@bugseng.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_|DB8PR04MB7161:EE_
X-MS-Office365-Filtering-Correlation-Id: 7386e590-12cd-4290-9ba8-08dbce39e8b1
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	Bawa3D8UzXjeDLFh/EEaSzrIlgs6uoLpxrckDdfc2hwEAT9YHBCpkJ9rMLedrpqFffsC9tpivnaHTO7oZi5OUQRIPOZhaEkZv/vS1hAU9PQwh3bKB3qeWRnGyY5q+XcR0L+RvsVPUb+549bLUx5x3dBiJnFaozAhDU2zxrxaqcbPUUvtd4sWiAxZV4GsxNeYgOEVu1zX3UoAmv1SdqDnNdUmOcyuMYxknU9CLsN/Ri0LnvepWYvFynVzJ7zMA6F9BkDmzmMtzoc6O2OqUqZKl2xEls6YT1DoDPGITBImIf4HmShStQHvRch2LqoJq/yjQQA76yhBlEEc20990qPqThgHLDSAKaDuuVep3Fk6JYVV06JJIgRgE4SF/0oxwA80q5YwnSrQH6sW1vElCH9FIdBD/fq6VwR6PFNQIyhiQ2ZpGTZLGjbNuigZu4mXt4RHzPBJg/uRofdIpPrTPEC9RHsrnLkXPnT9GcOt1Cc2yc++IrsNOPp64Hf1DBSQjfXdNxuBgqD8eJpYfp9lXGNCyNL16SeCAFATZdLOePpiIBCdFdDa666vX/WcDiwP86CuyWENabtlCVnrav6wBFLkDLnraFMAHyhzUiITvrPm6z54Z2tVsr53ldwwIIs7V6afIIhYEpXx/4M0xEU4aem0fw==
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)(376002)(366004)(230922051799003)(451199024)(64100799003)(186009)(1800799009)(31686004)(53546011)(6512007)(478600001)(6506007)(6486002)(86362001)(31696002)(38100700002)(36756003)(4744005)(2906002)(2616005)(26005)(4326008)(316002)(54906003)(66946007)(5660300002)(66476007)(66556008)(41300700001)(6916009)(8936002)(8676002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?OEt5bWdUczNxMVhkNVlUdjVhZElIOTJGY1lSVE9DWXZrRHlHeUZsZTRCeTNx?=
 =?utf-8?B?YVRjNGZjeEZ3YWtKeEtUOWEyZk9WSmhBQXo5N0c2RElhZlpaeWY0WHp3WENk?=
 =?utf-8?B?cHZGekVudVB0MzFjb0Qzdlp4Q0hVT2x3L3F3RWdtenlvajQ0SCtEQ1Y3RTFY?=
 =?utf-8?B?UGZTN0p2Qmw2b3RrNnEvQUNrVGRCeDVYaEd2cGVhMDlNZ2o2UEU1ZFYxRHVu?=
 =?utf-8?B?c2xQT2gySXNwT1hNa3p0c3lvRkR3NnBvRHY0QVRjRlNUN1l5bXJmMllHL3Zw?=
 =?utf-8?B?NUNJWGx4OUhYN1JGdlUwcEZQcUxSSWV1RDNKOUpFc2FPTUJ0RnNmcnoveHVr?=
 =?utf-8?B?aVlhMXJ1ZDRmb2E0R01yNWlmM3liUjMyQmJvSTBjbmtrZUsrM1A0djVWdDJ6?=
 =?utf-8?B?QmFEYlQ3a3JiWTRmSWVxMWNqTHNlVFZ5MjVsbjk5R2haSS9NamhtdmJtV1pS?=
 =?utf-8?B?Z0hEYTBPejY1K0FJZ290UE15WkdpK3RWYS9wazlLUmY3cW5oZXE2NVVCdUR0?=
 =?utf-8?B?Q0x2T0REWW1aZHZKSWNWbHpEbWFEQURQby9SSDZlZ0paclhtVm12dU1aK2pk?=
 =?utf-8?B?VUVFUmlHWTEvWnlXMlBpVW9salhMNmpoa0RwOGVwYzlBK2J4b091WG1MWmpv?=
 =?utf-8?B?S3MwbjArK1BUYkRKdzU2K1NlV1ZXSmtKMmFHTGpxdkJRTGR3a1B4ZGJ4SDd5?=
 =?utf-8?B?YVF2OGtxRHRweHJQanRKTkRSZ3FrSTduditmR2hhVVpFRE5uY3ZDcDlMVEF6?=
 =?utf-8?B?WWtQZERlTmc4TldLakNmajBWQWMxaUdzTlAwOTZESVB2aUl6MDZpUXdwSGlJ?=
 =?utf-8?B?b3hQZmlLdW5KWG1xNkVFMmNERGdhYXVRZFh6cHVkSTBkM25oUG1jOXJwUFNM?=
 =?utf-8?B?c0hVVjlHZExSbU5jKytPK1dGalhzUDQ2bGNtclBYK202b2JCNEk4S1R1c2tR?=
 =?utf-8?B?V0cvM0dZOFJGT0paQzVBU2dpZDk2NlUvZ3QySkdFNmRJSUFxVzhSeC8yRndr?=
 =?utf-8?B?U1cyaG9UNlFqTnIwSVZFSGQ2NFVLNG41MGVwTHoySEVSeWpQdnE2c3U2V0ox?=
 =?utf-8?B?amtpeG9lU1VKTnN3OHdCQllBRkpCMVVZZ1pERFdKSDF3ZEUyU1pYTHBuOWdh?=
 =?utf-8?B?Yk5vMGVHTTd4cm9ZV0kwNVFyb2t3cUVBdDZwbmp3QVUwSkZFT3FuMVZtVTJL?=
 =?utf-8?B?VWhvQWZVVWtpQ3NadkdCVEQyZjFjN3BHeldvVkVxRFV6RENhWDI4S1owM2FM?=
 =?utf-8?B?VmtMdXZaemZybW1sYkVua2gwNjQrNGxLYldJODlxN2Jka2E5Wkp5eHZ0am5D?=
 =?utf-8?B?cUpsQUV0RkV2dWZHWC96WGdYbEZtUlcxZytkb0x6cGFTaDFQRkh4eUQ3bC9k?=
 =?utf-8?B?Z0YwS2lGbWM2WEtEelRqd1NiNGV1UkFBUkpHenRVeXRicG5LbGJhTnRGZ3hL?=
 =?utf-8?B?cmRacmh5Ui9td2liSUtHSTBnQlVJbGhNekNlNFdmWkY2VVpLTkV4QUJyL1pL?=
 =?utf-8?B?czJwWmEvNVY2YTdud2Vscy9sZFBYcDlDNW52dU9nRzhnWVlQdkpRK08vcnZp?=
 =?utf-8?B?YzFpd21xNXBSZFVISnNiVk1hUTVnejBTbkJ2VmNUYU5Ic2Fmb3VBK3dpcG5S?=
 =?utf-8?B?SFdwRGtpd1g1YnRTNE00UTV2OGlNMFBwYjFVVGpWb3AvYWo1bHZVWis4VU9w?=
 =?utf-8?B?UE5qa05XS1ZZNUxONE1IR3BnTXQ2V1g0YnNiRFVseVRCMHN3VDVTOGxWbHN4?=
 =?utf-8?B?L0dqSW05bGo0MHN4eFo3aCtkN1BuSUhOejQwVm9NU1RCeWJ5K2Z4aVI5QkQz?=
 =?utf-8?B?cXhtcXVobk9DNXFtMFZCS2RZdnZWTzVqVmxnTnUrN0VwZ0M1WFBERmRqNHNS?=
 =?utf-8?B?Q2ZFMm1DY291bFJXZlJMbTdVYmlKd1FlbXJTSTZrRDBRNWVYMjdBMjhmUFFs?=
 =?utf-8?B?dENoRUNwVkpkS3hpbUdVOTFoQTJZSHZuRlRRUGpEb0FneHdpTCtlZFJ0YVRv?=
 =?utf-8?B?THA1NFlVZ0YrTVQ4L1Q2aUhhaVl0b3JyTGR2WG1WU01Wak5QcmxkNTVwRHc0?=
 =?utf-8?B?eHoxdVErMHlsQkY5Ymlsb2dhb09OeXF4L1RPQ05ZZzg4dGFzdEhvSkx2WEJJ?=
 =?utf-8?Q?u7RYZ4+bppI45dJKgTmoOpPD+?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 7386e590-12cd-4290-9ba8-08dbce39e8b1
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Oct 2023 11:20:31.7165
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: K3AOl0/huWUUNfoFHxleWWEyimyGfzBm47q2OdLU280hF9NUn4rCawH4irjo+/W+/ogPsCEr6ZDGwO2rTZdOuw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB8PR04MB7161

On 29.09.2023 10:51, Nicola Vetrini wrote:
> 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.

Why asm/paging.h? xen/mm-frame.h is what you need for mfn_t. I'd be fine
with (1) in that case, but if it was asm/paging.h that's needed (for
another reason) I guess I'd prefer (2).

Jan


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 11:27:11 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 11:27:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617478.960095 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsLka-00017g-Aq; Mon, 16 Oct 2023 11:27:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617478.960095; Mon, 16 Oct 2023 11:27: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 1qsLka-00017Z-7N; Mon, 16 Oct 2023 11:27:08 +0000
Received: by outflank-mailman (input) for mailman id 617478;
 Mon, 16 Oct 2023 11:27: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=BBjo=F6=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qsLkZ-00017T-BL
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 11:27:07 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur04on0631.outbound.protection.outlook.com
 [2a01:111:f400:fe0e::631])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id eedb3a62-6c16-11ee-9b0e-b553b5be7939;
 Mon, 16 Oct 2023 13:27:05 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DU2PR04MB9146.eurprd04.prod.outlook.com (2603:10a6:10:2f5::21)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.35; Mon, 16 Oct
 2023 11:27:01 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%6]) with mapi id 15.20.6886.034; Mon, 16 Oct 2023
 11:27: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: eedb3a62-6c16-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Jwht8kFdHSw4zNktuMKBC6OGE/uurc6MiVEr7fCs3t50xQskSqqnNrz+3o5JLhS+yBqxvK64K/ov/yGEtHyvk/03azHA/AaDYHq8gf4dX/tUwlt+mlxdlO8o4e2afmk80shU89pxrsM48Cf7B24IJkOi1h5r/Snj2djc7Uen6HpRH7IpTAkIjUss+3vUVOjUXSby+rwfpVa+G6gYoF8/f9FMl3SWQS91bLJaMgki+7tSimv3WfXPeeIefVtyqhrkhmuSWiMjv+xP3bFqiw077lIvTGi7m4bXipCdAgN7oxVL7b4BnhEds1Ozo1g+qGmet0gxlD270qqui4NtoKFHzw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=qEhhApO3+JBwOGKkSRqRV1Mo68g4noZCSaQ6puRgWQU=;
 b=Wxlt94YW+RKGujPsRsWFAtyo/amfiGL/2D3m/azRlSSN77PpwU4Th+Vgs5t1qQW4E9tUxloP7tEcew1y0tgf8pTE5BXRaxFM5G6d06GWoKWpu4wWlkD95uduj/9AnTAOzQYEbFXPwzLuSNgZaqEkEBzo7COzLKjKT/0Gc8JQ9dq+RCcgTp19lPGAEsAZbChqbCQqgKD+nSYunwBHu3SrV/WhTPDp7WHU3hZkgpsGMmduS/zhqjsWQxJBlGfxp8ERaTtc5d5TxnKWYGNbKV4OBWlr9N2B5lZ/reEPFIChsN1GHtgEUgM1bVYWxkiFHSqOIrN+COI2lBQ1CIVzrI+eYA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=qEhhApO3+JBwOGKkSRqRV1Mo68g4noZCSaQ6puRgWQU=;
 b=5L5OLN6sbxJtdSQulve/Mq/MVA5gjdwjYwJo2P1XyJ7JHQfazLhGL9vla7laupSgPR7XQEztKs253JgUUQOMzw8WDb+Q9O42eLXLKSkBUpw3GWP315bFr9bqNG4rx4mP1qlAuGxd0+JgNVuQnl2jsJd5hh6bpuDBUS6nSb7jbB88jXMam92l5MiNfwWsI4MJhpR5FWFIED+psvvKo5Z27APZKVVJpj8zYoGwCmoR7pzr0qUYvFqKcc2sZEZYNeFrXHRSoKsrR3LgeJRI9oBJNHSC/XU1obt9JdV4bYQkSsZlQ7q+Jwj9PRIC5J+gMFQ6cTzIbbQl4sNnp4hsoAF/UA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <725f5193-c8d3-1bc8-cd62-2a2b1b5ecc01@suse.com>
Date: Mon, 16 Oct 2023 13:26:59 +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: Stefano Stabellini <sstabellini@kernel.org>
Cc: Simone Ballarin <simone.ballarin@bugseng.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
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>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <alpine.DEB.2.22.394.2309281515570.1996340@ubuntu-linux-20-04-desktop>
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_|DU2PR04MB9146:EE_
X-MS-Office365-Filtering-Correlation-Id: cf9dffb9-7ad6-42b3-f50b-08dbce3ad146
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	FI+sAdGcPyTmN1635EG+WZeAIWN8q/7v+Mh2BJAScNV8icw67nEVo986ynZRHmq3vjAC3nZx7BPvFsZELgPYJUISU7OeDZgwLxaRVrCN924K2PPx5imZu82AohGoasw6cdWphWv54Rx8SgJZmNIJdQZ8Z/n0fgUABtzzIzfbdIHrBxE2FcRHbFXW+fb31O3jTs3HokKzcyfkuYa/1kfWdWEPnwNYts903wlnefT/u5+u/H0yXnKSx7kr8K2YStCxJS4J5VxbXmSqH3Krdbl3uvdnRYEW4pX3HtQlCbrzABMftfb/oX3SxO1hQ1GbDUd68bHhro+Hlzba5TkrDArbpss4lMw8mm8nAtC06DB6ROP6CRJBA7lZT/qgvWjD+VDc2yCqByW9oNjyFd9IjItIMDRbj0gE36Ceo4mAXpEN9Nn6iem+rcN2xn2KV3C277nnMODIPfVdBRuWdpwayl7pKHQ0TtXXlQAYSYGKS5H5gzgyFCn2vE0UbX83EyCNkOgyZyy4y/c6R5ZSD+sNZhdXtRg9SlAQeCHrw1D0hcRByB5jmZ5km9u8IH2vwg95jQh2lTdu1bD5SRPRD+fzM2A2BorK8t3VOGpOnWcupVZxPj9rWl84PvcI7DfB8Neta5Fb9J8nwsPK+/tAEfGnzSQEew==
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)(366004)(136003)(396003)(39850400004)(230922051799003)(451199024)(64100799003)(186009)(1800799009)(66899024)(31686004)(6486002)(478600001)(66476007)(66556008)(66946007)(54906003)(316002)(6916009)(83380400001)(31696002)(86362001)(38100700002)(6512007)(26005)(2616005)(53546011)(6506007)(36756003)(41300700001)(5660300002)(8676002)(8936002)(4326008)(2906002)(7416002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?elpuSkI4bldrQVhKTmpSU3BQOWhCQ05SaHdDY2N5VWhCTEUra3c4cDBhZklR?=
 =?utf-8?B?WStBZW1jdWtTL2VWWVVLZ3kvaVc5Z2xIWjZQUWRTd0RWTmg5clBoKzExVnQr?=
 =?utf-8?B?aXN0T1BNaWM3RnZqcTJ3Tk5MakN0QlhBZnE3Y1kzRjI4RGdxbVR2enFrRHd0?=
 =?utf-8?B?SlNsMmlLVDdFT2ovQlNpMHJNYUhJVGhaNWY1QnF1dER6Mk1pZ0JjdHVScWIy?=
 =?utf-8?B?UnhXMTBneGtOS2w4Q0N4R0tWSUx0UlhmbGd6T3F0UzkrVXdvaG92MGJXa01V?=
 =?utf-8?B?UENleWNudjhBek9yaG1ZNmFKRnpTcDlrVWYvYzNSdVQxRVBucDNxd2ZxOGdW?=
 =?utf-8?B?cGh4U1pBUnFQQm1HY0l4NllsU0xkRlBUM3pUMHQva0d0M1NEcGE3WERJSDVt?=
 =?utf-8?B?bG5pZ3Q1REZEQjNLWGhGMTc3NDUrUTFxalRMbTgrRFp6Z2EyWnl6VDRHUGI3?=
 =?utf-8?B?Y0JXeVRzdXlST3psTWh6bFBCZzRLYTZ6MnMra2d0cUZtNWRQZzUrdG1hZXB1?=
 =?utf-8?B?YTBwakk4NzUwWWVjU1ZpTXNTU1NWT29sZXJSNDk3WUFtL2NvblVhYmc1Z2NY?=
 =?utf-8?B?UUJrc0NHUGZxQXE5ekpMVjd2UUFIdUpxZlo5ZTNiUzV4R1Q2cmF4cjR4dm9K?=
 =?utf-8?B?cGQ2eld0ZktrQm5VNGR2ZmowS3IrVFhqSTMxNlp5cGRsbXdoNTRJV0tkeTdl?=
 =?utf-8?B?d2VBTjJEWUlHTXdaRXZJN29aYmxDNjdIQmpqVzRVRWMxRDlGS0J4RSt6YUtP?=
 =?utf-8?B?aStEcUgwTWR2SHdhNDV3VmI0ZWtNdi94OXFEVVZxcjdaK2tGTzhTeWFTYmoy?=
 =?utf-8?B?akJvN3BGUW4zekV6T2FSVEdKUDZDY1RlSEJhd1pVVkpWUWpHaVhlaUs1dmox?=
 =?utf-8?B?L210QkUxeEJOVW93QytyRFhwTGZ6VURlSXFDcVpGZWJrN3NaZHcyaFNOVGd3?=
 =?utf-8?B?L20vWmE4MDNzM2QwSk5ObUNWZ0RKMEdrTkhQWDI1ZlNrNWZuQ29CeWpYNk5O?=
 =?utf-8?B?WHNSOThLaGlGWldPcUhIQXJpYXQrQW84K01SRS9YRlZXM2hNVHdmSHFkMGpO?=
 =?utf-8?B?U0t6NkVUTnFKYnZPU1NNOEY4WWRaZzZNcGVWbWIrSFlYU3V3UDEzb1J4cUhK?=
 =?utf-8?B?MEVneHV5T0dkWGNNVHpLejNFOWVIWnkzR21KSGl5K2cvOGhiN1RKWGZadjVv?=
 =?utf-8?B?Y0xLdVZLWnR6MFQwdlM4L3paLzdJTGRHTzR6eDlXK2M4U2ZSeE51cGQwZHNv?=
 =?utf-8?B?RXJlekw0U1F0SVV3VUFhMUxVU3QwZXBXZ2kvVG5KQzdKUndTc3JtK0VzL1F2?=
 =?utf-8?B?WHpORjVHT0FrbUhuTHdhelVNNndoWGttQ2lqcXZORU12SUl1WDdPajlWWkFi?=
 =?utf-8?B?cmZTWXhnenFSbmE4enNGR2lKOXdicU1vRnJLU1Q2MjNmU3RKcGV1aVg5L0E3?=
 =?utf-8?B?aE9OSm9lZVJLUHpRV3VkN0hucXhlZHBPQ2ZiWWFmRXk1aXcxdWMzTU9CNTBs?=
 =?utf-8?B?ZHJTY2F5VTZtSGxzRy8ycmZrZXk4RnRLYUxVZnlzejZtckFiRERNU3BQR1By?=
 =?utf-8?B?anlsZ2dQT05qcU9Cd0Fzc3ZxQ2pZekxYWHdGZE9CaGczeVE2UVE1N1g3RkJL?=
 =?utf-8?B?ellBTTM4MTgzd1dlSjJSZ1I0TC8wUmZHZnJGWkRlRllIK0lFeFAvMCsxZXhj?=
 =?utf-8?B?aTdjcUMxWlBOOFBOVFg3UnA0VmlNRUMrTWJ4dDhyQUdNRGw5VUNPMGhpRE0v?=
 =?utf-8?B?NEdhZ2dOYW05SWZSSyszMkN1WTBVdTRVL2pMM0VFVk8vZUtvQmZoQnN2U0Zy?=
 =?utf-8?B?Z3NlUDlkbTdKS0R2YmphTnplU3NVbGFoZTREeXhXbmdMWmttT0RzTTdzNHk2?=
 =?utf-8?B?SWFUdWxYTlBjd2U5TUV4TDE2c3NVN0hTZm9XVmpwT3E0dUlOS1BaZENwVnhH?=
 =?utf-8?B?bmI2QnhDa1BDckI4dWw5SkdIbEtRVDZQbmtYNlArZGthOUZlQUl2SUJyU3JY?=
 =?utf-8?B?VlhZNmFsNkVSdlVLQlpQcHQvR1JNeXZFemFQRSthOXZhblB4d1JZM2lTbmt1?=
 =?utf-8?B?TWVhWkI5UHVmN3hnV0gxckp4TXBSOFVhaWQzRlk4VmoveXVPc2JlREF3cys0?=
 =?utf-8?Q?y1fsKUCu837sB0llsZTs4p0D8?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: cf9dffb9-7ad6-42b3-f50b-08dbce3ad146
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Oct 2023 11:27:01.8543
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: mm4NJpYclOsuQ4i5QSRKVYOoGKUnlEHrqfveGfLGHc0xLTADJa4FvqVjUDAWlbmpqWXUPSwwdMBzW+cfvMX0NQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU2PR04MB9146

On 29.09.2023 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.

Note how below you still suggest names with two leading underscores. I'm
afraid ...

> 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:

... "least resistance" won't gain us much, as hardly any guards don't
start with an underscore.

> - 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__ ?

There are no headers in xen/include/. For (e.g.) xen/include/xen/ we
may go with XEN_BLAH_H; whether ASM prefixes are needed I'm not sure;
we could go with just ARM_BLAH_H and X86_BLAH_H?

The primary question though is (imo) how to deal with private headers,
such that the risk of name collisions is as small as possible.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 12:18:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 12:18:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617498.960105 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsMYT-00053I-0z; Mon, 16 Oct 2023 12:18:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617498.960105; Mon, 16 Oct 2023 12: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 1qsMYS-00053B-UN; Mon, 16 Oct 2023 12:18:40 +0000
Received: by outflank-mailman (input) for mailman id 617498;
 Mon, 16 Oct 2023 12:18: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=2KAZ=F6=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qsMYR-000532-GW
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 12:18:39 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 216f4e5c-6c1e-11ee-9b0e-b553b5be7939;
 Mon, 16 Oct 2023 14:18:36 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id 9F2E24EE0737;
 Mon, 16 Oct 2023 14:18: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: 216f4e5c-6c1e-11ee-9b0e-b553b5be7939
MIME-Version: 1.0
Date: Mon, 16 Oct 2023 14:18:36 +0200
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>, roger.pau@citrix.com, Wei Liu
 <wl@xen.org>, Xen-devel <xen-devel@lists.xenproject.org>
Subject: Re: Definition of mfn_t in x86's hvm/grant_table.h
In-Reply-To: <83e078c0-49f5-8c76-8ee3-30088f41a65c@suse.com>
References: <a4b6710b66ed05292388ac6882b940ec@bugseng.com>
 <83e078c0-49f5-8c76-8ee3-30088f41a65c@suse.com>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <5ba39c9c92b9642e647bd374c488c75b@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 16/10/2023 13:20, Jan Beulich wrote:
> On 29.09.2023 10:51, Nicola Vetrini wrote:
>> 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.
> 
> Why asm/paging.h? xen/mm-frame.h is what you need for mfn_t. I'd be 
> fine
> with (1) in that case, but if it was asm/paging.h that's needed (for
> another reason) I guess I'd prefer (2).
> 
> Jan

This is part of a patch series now [1].
I put asm/paging because asm/grant_table uses it and I wasn't entirely 
sure whether including
mm-frame directly was the right thing to do. I don't remember whether I 
actually tested that
solution, but changing the included header should not be problematic.

[1] 
https://lore.kernel.org/xen-devel/d49c648e940a651790fa6075a3fde40009501262.1696833629.git.nicola.vetrini@bugseng.com/

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


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 12:30:34 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 12:30:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617502.960115 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsMjk-0008MF-3K; Mon, 16 Oct 2023 12:30:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617502.960115; Mon, 16 Oct 2023 12:30: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 1qsMjk-0008M8-07; Mon, 16 Oct 2023 12:30:20 +0000
Received: by outflank-mailman (input) for mailman id 617502;
 Mon, 16 Oct 2023 12:30: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=BBjo=F6=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qsMji-0008M2-FI
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 12:30:18 +0000
Received: from EUR02-AM0-obe.outbound.protection.outlook.com
 (mail-am0eur02on2061a.outbound.protection.outlook.com
 [2a01:111:f400:fe13::61a])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id c2f39ed4-6c1f-11ee-98d4-6d05b1d4d9a1;
 Mon, 16 Oct 2023 14:30:16 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM9PR04MB8716.eurprd04.prod.outlook.com (2603:10a6:20b:43f::23)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.35; Mon, 16 Oct
 2023 12:30:15 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%6]) with mapi id 15.20.6886.034; Mon, 16 Oct 2023
 12:30: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: c2f39ed4-6c1f-11ee-98d4-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=hU9OulXySWClVarA13522OEIVnIhDBSE6P+4Cfdvhd0kS1ur+ZKEihCzllsztgpv3MLL23iy3YhvR3vWpC76Ge+Yihmv6XO/IM41/UYj9hjw9T6SikxGHJdqqroDdLkefMWwULo/1zW1jYSr19no+vxKeThiv2otU98L+qtBRBlld1FRVfCuTQG4ay+YPsdRUwaRzf9tKJAGDMuog5FLr9kSYcE9vHAq1Nq02bDN5/ZLs4wxTb7l7ymVM2XjuxlGvlD+oo8WvXD9Qi8XEMnFrtnTqcrlCmlvpJu6rOvRTTR1eO434FBNxyN7oUrZh0RTK+mC2YIxQqMr3n94Bh04Sg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=kJJZYpGMDMpQMlOlxJZmj0caqqy/PauBGDU89vQIbh8=;
 b=jCgAIu7LLBr8pjqSVHxNfjbqUpl8zZnWARLO8NNC4ezG8hg6UCqANjU6yp/t/3wXdMFgsk0bfNSaXNkT6zcjCEpXfx8/aECyB6+98vjsWHHdOR80iTkoYBdsWkEZI3O1cxuW5HgQXDf+FKUtVIePYawRuAn0Fz1kbHRtczhp9EqTlqJA2dWGpiitiorT8NvhYvBziZxkx++srIyG4rixrLsPZYK0NSQicnhXkrQnhDlWyUqKhV9+yAk7JRgCIikFb5caIpndCRgtSsNqpu49qCZqc+KuyQMHpMcoCvv5DFagDWNPx32OiASox6sPLR7mKeyQ+2sR6gNsKJFcsBGj0Q==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=kJJZYpGMDMpQMlOlxJZmj0caqqy/PauBGDU89vQIbh8=;
 b=EzHCnXes/s86sGhS1GFpoqGcNeqbC5nlKslotbTgETGDtnfSzT9vR+Uz0dn8EEUrMtpBoaz/Tz8QYDaQCyAmzbTdBHkoJ8GQijlObz2E5Jg6Zi4Xo2RWHxCdzxe/8If78mneuNmOnZxg6nz2MwzRRE0e+7Wg1HRpWL/nSynegfmoP0v/7TnV8f6/ibvcycxux6LB8R2kipoXgJytQkF4IIPg0qjl8hQ9NwN8eN0aVDxxkVtYKyTMHWdEbpRAoz48MwEq9Q0fJm0kNR1iVkkSihkPH0xveLAGEqeIU1wzEA455hGU7bNrv0abeLZexi5T20J4JRoLaolFD9ib0T3IEQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <6442445a-458d-3ccd-057c-f8d2ac208232@suse.com>
Date: Mon, 16 Oct 2023 14:30: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 1/2] domain: fix misaligned unmap address in
 {,un}map_guest_area()
Content-Language: en-US
To: Roger Pau Monne <roger.pau@citrix.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>,
 Wei Liu <wl@xen.org>, xen-devel@lists.xenproject.org
References: <20231006130059.97700-1-roger.pau@citrix.com>
 <20231006130059.97700-2-roger.pau@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20231006130059.97700-2-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR3P281CA0110.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:a3::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_|AM9PR04MB8716:EE_
X-MS-Office365-Filtering-Correlation-Id: a0d7a453-54aa-421c-f785-08dbce43a60b
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	bbFOC411eA8SMTbbJxnWQljbPImlne1/MJrrWqAQ015a/XDMpB4xz8Nd2Ia7prxAFgDWOTmRdRSxNPGsmCha0WiIIbBbkUZl6G67tJOMpe04AbxEeljc7mcyK+jOVJrOQDlLkCUbZ2OHFgm8chP1N6hT+bbDnraN8+8dJT3nDCU09W58Q+gJrk5d25zTHePR4OZ+/7IAZAlzPl3uQMBL6WkJOI5WZaPCV4RqSatH5uaew/Ah3jwaePLGA0x6FE4j9xuod3CZJWMzZRoZdO/5F7p6rvlyZ9Y3z17+X3QnPJALi46IM2fk/OeDtUuKIaLHzb4r+wOckZ8tDN/MmBXfgPobjAnObAsYdr58mpcpdczomRBao+3K4FLJXsqIt4Az8OhSy2ojJe4Swm3MSBIaVIGCYcf7+/wQvvfEKz1HICIoQfbAKQGnIkzYZ94TqPQZz/Wi3c6KTHAp7mYJEgucgGmD/ebOUkAGVhcqem8L7bjpTs5lSXvIqxvdQocMiKbLkd4wDztf1j6+C0bdfoKsfK9ea/8SLI/a1fqG68yZttfbVunWCFGjDLweqA00COHMkL5UKz5IikgGEbfr3qIHJw2/vWiQ92U1eJhoeLdWKarT9Eia49QB7LW2xSsxygJUwM/qHDlfY95AxhthjXUOEw==
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)(136003)(376002)(230922051799003)(186009)(1800799009)(64100799003)(451199024)(6486002)(38100700002)(478600001)(2906002)(4744005)(6512007)(6506007)(6666004)(316002)(54906003)(66476007)(66946007)(66556008)(6916009)(4326008)(41300700001)(5660300002)(8936002)(8676002)(83380400001)(26005)(2616005)(31686004)(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?ei9FVVlnWjd3WXNlazFtcHg1bnNPVUs0cE5zUnJzcEhWOGlHcGVhc0E3dzB6?=
 =?utf-8?B?SCt4aW1GT0tPWjQwZldycmx4R0NjN1JINjRqWWVRMkpkamIxUUNqc1o1WHpm?=
 =?utf-8?B?Rzc2dlVHQmV5N1k3RXZQaEJ2WVYwa0h1V0d5TU5jQThwUUVYQmV2NjRscFpH?=
 =?utf-8?B?a1pZTm9hNWE1eTFNQ3Z3Nmt1OVpxYm9GYWQrWkRUVmNiZnJxSXJrMXhTaUJM?=
 =?utf-8?B?UVVOVzcrNS9KVGVpV0dHWkRSd2l6a3V0WUEyUjlYQ0JhaW1sN0J1RjBwSGpl?=
 =?utf-8?B?Z2FKdHcrQVpaRHg3UzRUOTFFOXY3MWE1T2NQNlphZzNWMDJ2VWxnWnM3c1Bx?=
 =?utf-8?B?V3FzYVErZUVINzJ4VE8rd2JHVGxLSENPMndxMWd6L090cVB0U3ZKMFdFc1c1?=
 =?utf-8?B?Q3FzeDhwb0JNODh4dzFnSnYwVFVLcWdhUEI4bnRGZ2dtREVkdU5UalY3T2xF?=
 =?utf-8?B?aWVUT1ZHMmY4MmhwODFleEYzakNzTEpTWWtvRVlhVUg4WGpZQ3RNR3ozQVFk?=
 =?utf-8?B?NjRCd1A0eFF1a3o2RjhxVW1VNkhDcWxuTDhnNU5WdkZtblVSMUFzZWVkdUpB?=
 =?utf-8?B?bHI0Q09uTmQrNzF3em9pZXBuMDU5QkdLcW9hSEIzeUtWa05la0xtSkUvQSsw?=
 =?utf-8?B?ZU80RmpSbkFtVUZHWGxHYnFOQjN0SXFLTVJ2cmdJQkphdGFQcTB0YkhjTDly?=
 =?utf-8?B?MnNTWUdkOHIvNDVEYVRhNFA2UmY3NSs1VlZvdjE0Vm9CbmlYV0p1WDVYWXM1?=
 =?utf-8?B?NjlFR0J1NkF3SnB3RWJFUm4vT0lIZUZVNCtFRVBFdzZWMEhQUUFKMk5yeUZi?=
 =?utf-8?B?U0JrVlNKZi9IRDBIREhxOUg5NzhZR2g1OUZ6eXZjSE9yUlZ3N0NRNGxJRmRm?=
 =?utf-8?B?VFcwNlFVYzJXd3dFakhlRXA1anF2YUYwRmU5TGZpRzcvdmtGRGZobXFPUDNO?=
 =?utf-8?B?cWpGWlg3S1R1TmRSV25ycGR3WGUwcVZlWE5PRm9TNnF3VE92RWVhclhsRld1?=
 =?utf-8?B?SDFsbTdIZzgxYWZsckF3Y0ZVOENuNzV5U2EyVzJ3RUU4enZTUXZUSjRGNGNV?=
 =?utf-8?B?bUIzK0JZMmNnWVBKQ1hxUmZQVmtnYnEvRmxrVW94YmlYM3Fic3lVQW5pSVA1?=
 =?utf-8?B?N2RGUmxiSGxQbDJjUndCMjdvck9vb2I4Y2c0ZDV6VjZhM2R3UnpBcEtTT2FO?=
 =?utf-8?B?RUQySGxUZzF4V3N0dktsS2czR2tLQkdoT3Y4RGtobmc2dEhmR2ZTTFE1dExW?=
 =?utf-8?B?UWRHK1UrZFM2WWpOMDk5R3lUVDBNeDF2eEVhWWhHcGZoa0cvV25IWks4SHdL?=
 =?utf-8?B?UWZ0eHJ0L2pNQU00dzNVNFUzLzMwa0dlRXpRSHdqTmsyVDRPb083eGNsUWtX?=
 =?utf-8?B?SWc5WjFJREozSjhDTG50ZEpHL210T2hLM1dlM3k1WU00WjA0WGRzZGNINXBE?=
 =?utf-8?B?VElyMWovTUp5L1J6bVBFYWhOV2hNRit2VUFtTjFUUm0wR1hvUjhYWTk2Nk1p?=
 =?utf-8?B?L1V1dWRJMTk3MVFKbXlaeWR2SVVINHJqNFRxOTV5YjB5aVpINWdXdFpiYVAz?=
 =?utf-8?B?Wkl5UjdaSUNnSGZnSGJBYit4bUNBU3Z2aHRvd1NFN1RKLzFHeWcyc0xiQ1d4?=
 =?utf-8?B?ZkZXMHdpZnlJK1h2Y1BuZlIxcWRIY2NtT0VVT3Nlbk8yWkl6TkZGSFppdHI3?=
 =?utf-8?B?bEszQlkxdzZldWd3RHoxYWdvOS9HTENKTVdHOEFxb0hJcmFIdzkzNnJLN0o1?=
 =?utf-8?B?UWsvdi93em5WUHFvK1lDK1c3NXJMalBuMCsrNzQ0Tkc1bUJicXBZUUNjOHl5?=
 =?utf-8?B?Q0poQ1lKL0tOYmFBSldQUERHdmpzSnNTaGJ2OUhWeFh2c3BpVmJ6bENjb2Rh?=
 =?utf-8?B?RFFNdGRnZnNORzNwTkxxU2g0V0xEalorcVRlaDIvbHAwV0k0aEU3RmhlbjBx?=
 =?utf-8?B?bUNtQXVVZGVYbWdUOXdhVktJU2E5dXQyaGZPYjR6djhwa0JjZzdLT3E1MGpr?=
 =?utf-8?B?UThOYW1qM2ZYaFViZmdzN2xRS2tRTWdvRWhhZkdneVRpSnljcEZvNEFwMjBy?=
 =?utf-8?B?Q3Z1N003dnZaelByVFlRSDBHOGxDM001VHRFWm9VSFd1U3pZMTlwTVZTcWRN?=
 =?utf-8?Q?g8v9fZU/AtPJHgFHQHFG+DD6o?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: a0d7a453-54aa-421c-f785-08dbce43a60b
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Oct 2023 12:30:14.9700
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: D63bAd4POFpg2yPGROrVREWBCvZ1EfN2nMxdkTeshgpREzjcKcJP/+tw5kmDAfTwZxLHdFh/Oq5nEur23ydTQg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR04MB8716

On 06.10.2023 15:00, Roger Pau Monne wrote:> --- a/xen/common/domain.c
> +++ b/xen/common/domain.c
> @@ -1601,7 +1601,7 @@ int map_guest_area(struct vcpu *v, paddr_t gaddr, unsigned int size,
>   unmap:
>      if ( pg )
>      {
> -        unmap_domain_page_global(map);
> +        unmap_domain_page_global((void *)((unsigned long)map & PAGE_MASK));
>          put_page_and_type(pg);
>      }
>  
> @@ -1634,7 +1634,7 @@ void unmap_guest_area(struct vcpu *v, struct guest_area *area)
>  
>      if ( pg )
>      {
> -        unmap_domain_page_global(map);
> +        unmap_domain_page_global((void *)((unsigned long)map & PAGE_MASK));
>          put_page_and_type(pg);
>      }
>  }

On v1 in a reply to Julien you talk of "limiting misuse" by not relaxing
expecations in Arm's backing code, but I wonder what kind of misuse you
think about. Aiui there's no strong need to insist on page aligned input,
and relaxing things there may simplify code elsewhere as well.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 12:36:00 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 12:36:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617506.960125 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsMp8-0001M4-LR; Mon, 16 Oct 2023 12:35:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617506.960125; Mon, 16 Oct 2023 12:35: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 1qsMp8-0001Lx-It; Mon, 16 Oct 2023 12:35:54 +0000
Received: by outflank-mailman (input) for mailman id 617506;
 Mon, 16 Oct 2023 12:35: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=BBjo=F6=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qsMp6-0001Lp-Jo
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 12:35:52 +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 89cb1c18-6c20-11ee-9b0e-b553b5be7939;
 Mon, 16 Oct 2023 14:35:50 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DB8PR04MB6988.eurprd04.prod.outlook.com (2603:10a6:10:117::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.35; Mon, 16 Oct
 2023 12:35:47 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%6]) with mapi id 15.20.6886.034; Mon, 16 Oct 2023
 12:35: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: 89cb1c18-6c20-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=nByIPNJ27kR9BtSw6+6jV9148FL6UE/4w3pQQBghtO5qaEmPUBeE1lXUl+xha8TMSiChE0fBAxYpcxyESLBTB/V15vpZGvODISSM/wY4ww+xlsRo57E2QYbVnywy2APP1JBmack2KRZ1J5l5MctzUzjwPgeupBEKdkoh8yZGxV3k6XrXwd/1QVGNp/NuN0V33pi0APx/dzOqYC0ovTSGVqdlRa5dKZ4DnNefup6oMfZ6C5onPhAsibIIJct7JFBCi0oLgjWZNMPC/j85mJ7hmXWM6lCHoPkbdQSmglcDeW99+0D56VjIf8dP189c9Wrp91r2FlxSAlkgxk7xuhe4bQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=yS7xizA2dbSBOpRHubJVA2Plwu/kvzCbYjhbSqt4PMU=;
 b=TcLOGMj48HgbFXwjc7FxVpDeEeayi0eoo5WOMTTH9HOkXEkB72BK4Co4SEL+Ys8vS5/QFKXMY6+MF4m2sOfTKrUHy5C8LHuXSJ8vIVFq2nEkWnWLELz7fPsSep6BGe30NG4yFazknTmFPICnFM6+oK6C25MHs9oMQD/DeUNHiug7c5BPsNQmza6O3xSj2zVZPOTPNYhQ4nPF/VxwGTFat60hVS7BS3shycg4zhAcu/zPcMx2D4QYNver5d/KD2IoRvC4TcTfMFiwXfhmQxKtpE0g7KJyHMallxgC3WpgaL8IfCluAp1EmoAXpkUDUfdse6zBmrWIlNVvNJGjlyAdsQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=yS7xizA2dbSBOpRHubJVA2Plwu/kvzCbYjhbSqt4PMU=;
 b=Xp8Or4MvKhQCNZxLkigPmHkrw3EVFOGFkcUmXEFuGHwdi0iWFs2sqFMMSIG01DEOY6KaspjFmar13f2AVgCmTW08L8vKRtugu8o8stRej88JnuCPDnAS4dDG2Xv8FFU/Xv5EPT6of+S3d6o5/cu3v+8yEQLnGa4GOquZP9eJrHWrQSKqU855ikptwVSdmL1LweIkTcerYSYdMysPl7EvSWTc+EHozw9maXvBKPuxz8Nlx6iDpcj1lI+OYLoKTrq05sPlcFlojVBEgT4S8s4HeS8PljHqIh7rX7AO+NiAa5033E4kvXbXJssSTWcPub+kKjUakRQUl61mJLum8663Yw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <b8c03b77-d4bf-3be7-2090-e76e6849b085@suse.com>
Date: Mon, 16 Oct 2023 14:35: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 2/2] domain: expose newly introduced hypercalls as
 XENFEAT
Content-Language: en-US
To: Roger Pau Monne <roger.pau@citrix.com>
Cc: Henry Wang <Henry.Wang@arm.com>,
 Community Manager <community.manager@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>,
 xen-devel@lists.xenproject.org
References: <20231006130059.97700-1-roger.pau@citrix.com>
 <20231006130059.97700-3-roger.pau@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20231006130059.97700-3-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0006.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:a::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_|DB8PR04MB6988:EE_
X-MS-Office365-Filtering-Correlation-Id: b834a813-05b1-4e88-2ea9-08dbce446c35
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	DTaAK2i+JJiKmK2fZVRwMIG1hIm3c5iItsTlkXgV7x0eiN2i8hK+i6tt8M0iX7bL4lTXTJJFJO4N/XO7ZIRf6mBkcBL9zihRHGnS1Ts/6u1VWXm+gtn5EZwCby1pzWtUY7eeUmBcT13fwkJ5DtngSFUTuKNBEHqZsNjxEFBFuzsdiAeeOwROtD2E5R4m0obZcNbXEhylxuy6l6R9XbGI8+P8Anu9vOY0aDO2PHlGmLdrlLE2hSND5eMEYgP3wOJuvHOQSLOB8nexriGocipRXFFaPbdi+FTLBM4HKzEloGZfxfEOiNC9KSKdx4hx6WX2Jz1SSILWSDWUAYuzdUiuj0hbs/E4HFVCnZ4pNwqeEGAwGNlge2vrFL2V0IdBMk620D6B55+JBSP+K1E1tcckV8xj7AssSw/CkN4D5GKKIF+S64UvhGi3DHp3OrKisJHskPucPIjKEqRppZfl2OiWIJTbumg9W21xy9GSIHxbe8qs4bqHUD8be4Su7DwZukJEQ+g/nl7X9kK0l/AzzGSuPhjCnYUiwCtU5LfpCQxdJDnTMpqB4B/ZQ8+s1nevWWDiiNuxRMLes9anAj2L6sz7Fylo5nYUETjPc1b79XDJzKHZpEUbrzm4tLZ6RtvfNHcApikMmwaQ++BNfDixcQycSg==
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)(396003)(136003)(39860400002)(346002)(230922051799003)(451199024)(186009)(1800799009)(64100799003)(26005)(2616005)(8676002)(8936002)(4326008)(5660300002)(38100700002)(83380400001)(31686004)(41300700001)(478600001)(31696002)(86362001)(6486002)(2906002)(316002)(6666004)(6506007)(6512007)(53546011)(66946007)(36756003)(66556008)(66476007)(54906003)(6916009)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?bUFRUmZOVXFpbkFUTGpVTVFYWjVuZmZ2T2kzdDBxMnR3QlE2VFdiTXA4NnNF?=
 =?utf-8?B?b2hmN0srMGgwcWsxY2YrVVdJQUpvdzBRZVRUVHBHVGpQZ1ZMK3J3SWV6UmE3?=
 =?utf-8?B?V1d3S2ZITStaRDAzeHgza0pHM0pDQ2FSa3dQUU1jcVNidlN3UGxxTWdNT0Fz?=
 =?utf-8?B?STJ4ZlFpUVE5TFFOcGFha004NTBkUWpKS0szRTF3SnAzd1htdlExMGlOZjRE?=
 =?utf-8?B?UHJQT1krYVo5Tit6cFk4ejQxSWRLSnE1dEZHYzAxMDJWK29kdEZGb2tVMGFM?=
 =?utf-8?B?T2k2bTRkbUt4ZkJkdWpjeXcvN0F4dThsWkYzeXpGOTZCZmpxQnlIV2dRUXJ1?=
 =?utf-8?B?TThXajV3aWZDSTQ3dkg5all5YWplSjRxMEJocHZueHhYaGpJVWIvRjFRelZJ?=
 =?utf-8?B?ZEZzYmFmS1ZiYkZ6RE9wbmRvc1pPZ1hRYmxqa2RxZ2pUZXAyQ2Y3cmZyWnhy?=
 =?utf-8?B?R2dEb2VNa2hMZEpiOUFyVmhtMU15emE0SC9yemVUSm5VZlIvRzBESXJ1UE9z?=
 =?utf-8?B?MGdaKzJTUW5rSGE1ZTAxcWZ6ZEdOQ0hpVE55RXhyamp5c1QxMFZqaEhPd3Bi?=
 =?utf-8?B?MU5oOE1qU2dYNmFLWXhyS3lXV09jVGNRSVd4Y2F6ZUhzVVd6TG1jVEluNHBq?=
 =?utf-8?B?NUxZd29sc0RsazhIM2tOc1Y4OG9GWktoKzU5RURMVlhQd2RsajZ3blRzeDZG?=
 =?utf-8?B?OFMyYzJUOEVDd3dUNTZPbGdtMmVDd1dQd3JQYXhYcE85QU92QVpFcmx0Z0Rr?=
 =?utf-8?B?eFA0elY4dmgwWWh5YWdIdkxueFV1YXVaZ2svSi9ZQlZxV05YWWRqVm43ZW9r?=
 =?utf-8?B?TnhEaDhTQU1CZHBnMjZZOTlUa2JySnZsRWg3ODJramNGMHdja0RraGtSclJ4?=
 =?utf-8?B?QjI0TXd2MFZQMW9XK2w0anRRVUNCWmNrWEFsMFJpZXZpRS9VckpXdGd3dk9S?=
 =?utf-8?B?S3UvVGRXRzA1TmxORWxZQmhGYUk1ODhTK3ZjcER3WlZLNXNVVEVFdGVHSE1w?=
 =?utf-8?B?V3RxU2Z0cTJhY29KQkNlY3BaWEV4UVA5b1RESkRyYmFaTHJrd3RhRk4yWm5V?=
 =?utf-8?B?aXJhcFZhNWpUR3JBVENFdWJOMUZBUnNvekRreGtzaGFMWVFHUkhqVDZ1NkRx?=
 =?utf-8?B?eXRxOE0yU01kRDJCUFdkUzVCaG53WnNKbFhjb1ZTMTc0QnpiRHZDMEY4TFZU?=
 =?utf-8?B?VGxiVmpNM1F5WGVCRTVNd21NV2gwamRzSFpSS2lURTMyUHkvZ0g4NzlwQVhX?=
 =?utf-8?B?alI4VXphSHNUU3ZVd3dqaGxRamxrT25mVy9XNzZIMlNJMnBZZVQzTnB0SHlw?=
 =?utf-8?B?Q2VaaERxUkM2VktacXZNUXBqdHQ1NE1INU5xVzNhanJqbkorS0g1aE5KdHdZ?=
 =?utf-8?B?enM3Qm1Nd1pNblcxM3E3U2ZsNEgvYTM3K3lOelk5VkVnNUpoQ3ZnR3ZKNjlh?=
 =?utf-8?B?YTc2WFA0bGxjbXE2RlcwWEJXSU04bk5TOXU1cldQdDU2azBadXg5QVUzdVF5?=
 =?utf-8?B?OEliQ0xJbmpRNjU2ZW1uNUhYSmdNenQyQ0hCYWpXc044N1BYVjFXZ2lFcFVi?=
 =?utf-8?B?ZW94VmY3QTBnM3B2SjZXTE1NZTVGbEw0MFpCYVZ5WDVKUEZvV3BIdEpMamJa?=
 =?utf-8?B?bEVVa1pRMTBOUUdpYTFRWTVVVjkwY050aFA2ZVplaERpdXBMSHRsUG0yQ3F0?=
 =?utf-8?B?ME4xTEt1VzBpZVVZV3poUy9BV1hnQm50R1V6OE9teHgwaHFmZGdmME1nOXFW?=
 =?utf-8?B?NjFNaXJnQWhlV21WNmpJTmg3RnFVTjNqUXF6VzdhZXNUZjhNem04ZVUyUEdq?=
 =?utf-8?B?WHE1ekR3bFdKdTNjNHFWU2lSVlJRTUpiM3cyVU9hWitwTm1aT3kxR01Yc0ky?=
 =?utf-8?B?anBBc3JHVE1sTStPYWtFK3dDTk1SdzkzWUhpUFFSVEUwUzZxdXg5T21UcEov?=
 =?utf-8?B?SUJtYnIvRUhaeDB6cHl0WTF0eExxcU9hME9sblBRVVd5Y1dwdU8vbmhkZDRS?=
 =?utf-8?B?MUlVeWw4NituMjVuR05lbzhWNFMrMXYrckJrYm9RZ2RZNGZtZ0FjbkF2NVFQ?=
 =?utf-8?B?SkpiazZTWnFIencrREx6RmdlR2dHT3B2S2kvYURORldIczQzeWpoMFVvYzEz?=
 =?utf-8?Q?c/KLCCtfScoOv1d+NobCm8O8E?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: b834a813-05b1-4e88-2ea9-08dbce446c35
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Oct 2023 12:35:47.2758
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: TKTROpKyXG1c+28e21RyRD1TDK5Q9jfrN95KCJuN75BwEcQ3V1nBKUjoHtlQoT5zMDkPXeK0WRUZjLLIahSFsg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB8PR04MB6988

On 06.10.2023 15:00, Roger Pau Monne wrote:
> --- a/xen/arch/x86/domain.c
> +++ b/xen/arch/x86/domain.c
> @@ -1580,6 +1580,10 @@ long do_vcpu_op(int cmd, unsigned int vcpuid, XEN_GUEST_HANDLE_PARAM(void) arg)
>      {
>          struct vcpu_register_time_memory_area area;
>  
> +        rc = -ENOSYS;
> +        if ( 0 /* TODO: Dom's XENFEAT_vcpu_time_phys_area setting */ )
> +            break;
> +
>          rc = -EFAULT;
>          if ( copy_from_guest(&area.addr.p, arg, 1) )
>              break;
> --- a/xen/common/domain.c
> +++ b/xen/common/domain.c
> @@ -1998,6 +1998,10 @@ long common_vcpu_op(int cmd, struct vcpu *v, XEN_GUEST_HANDLE_PARAM(void) arg)
>      {
>          struct vcpu_register_runstate_memory_area area;
>  
> +        rc = -ENOSYS;
> +        if ( 0 /* TODO: Dom's XENFEAT_runstate_phys_area setting */ )
> +            break;
> +
>          rc = -EFAULT;
>          if ( copy_from_guest(&area.addr.p, arg, 1) )
>              break;

ENOSYS is not correct here. EPERM, EACCES, or EOPNOTSUPP would all be more
correct.

> --- a/xen/common/kernel.c
> +++ b/xen/common/kernel.c
> @@ -607,7 +607,11 @@ long do_xen_version(int cmd, XEN_GUEST_HANDLE_PARAM(void) arg)
>          switch ( fi.submap_idx )
>          {
>          case 0:
> -            fi.submap = (1U << XENFEAT_memory_op_vnode_supported);
> +            fi.submap = (1U << XENFEAT_memory_op_vnode_supported) |
> +#ifdef CONFIG_X86
> +                        (1U << XENFEAT_vcpu_time_phys_area) |
> +#endif
> +                        (1U << XENFEAT_runstate_phys_area);

No provisions here for the "disabled for this domain" case?

Jan


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 12:39:41 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 12:39:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617510.960135 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsMsm-0001wL-4b; Mon, 16 Oct 2023 12:39:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617510.960135; Mon, 16 Oct 2023 12: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 1qsMsm-0001wE-1y; Mon, 16 Oct 2023 12:39:40 +0000
Received: by outflank-mailman (input) for mailman id 617510;
 Mon, 16 Oct 2023 12: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=4t3W=F6=suse.com=jgross@srs-se1.protection.inumbo.net>)
 id 1qsMsl-0001w4-6z
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 12:39:39 +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 1108a001-6c21-11ee-9b0e-b553b5be7939;
 Mon, 16 Oct 2023 14:39:37 +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 9FCDA1F37F;
 Mon, 16 Oct 2023 12:39:35 +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 27145133B7;
 Mon, 16 Oct 2023 12:39:35 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap2.suse-dmz.suse.de with ESMTPSA id 8jQZCAcvLWX4IgAAMHmgww
 (envelope-from <jgross@suse.com>); Mon, 16 Oct 2023 12:39: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: 1108a001-6c21-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1697459975; 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=TrHQ0ELhL7iWzaPXNchammsXfJ1VpjNzr9oy6lA6Krc=;
	b=YzXXQasXeVaCM4rll76gJ/cRr0gpD70UiJXXyCcxaVKzwc9L4AXNbvBrVwebwOapoEgD/V
	kOvKYPLYE1drK+oaVua+5/yuA0E3o3tYXm/4BGroCwxVwrDXMIXbHrdl6BnhOJf4Kxonoe
	BdcUCorSEAPEtsoXqKVKuI5f9GWDvX4=
From: Juergen Gross <jgross@suse.com>
To: linux-kernel@vger.kernel.org,
	x86@kernel.org,
	virtualization@lists.linux-foundation.org,
	kvm@vger.kernel.org
Cc: Juergen Gross <jgross@suse.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>,
	Ajay Kaher <akaher@vmware.com>,
	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: [PATCH v2 0/4] x86/paravirt: Get rid of paravirt patching
Date: Mon, 16 Oct 2023 14:39:29 +0200
Message-Id: <20231016123933.17284-1-jgross@suse.com>
X-Mailer: git-send-email 2.35.3
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Authentication-Results: smtp-out2.suse.de;
	none
X-Spam-Level: ****
X-Spam-Score: 4.05
X-Spamd-Result: default: False [4.05 / 50.00];
	 ARC_NA(0.00)[];
	 RCVD_VIA_SMTP_AUTH(0.00)[];
	 FROM_HAS_DN(0.00)[];
	 TO_DN_SOME(0.00)[];
	 TO_MATCH_ENVRCPT_ALL(0.00)[];
	 R_MISSING_CHARSET(2.50)[];
	 MIME_GOOD(-0.10)[text/plain];
	 BROKEN_CONTENT_TYPE(1.50)[];
	 DKIM_SIGNED(0.00)[suse.com:s=susede1];
	 NEURAL_HAM_SHORT(-0.85)[-0.851];
	 NEURAL_SPAM_LONG(3.00)[1.000];
	 RCPT_COUNT_TWELVE(0.00)[18];
	 MID_CONTAINS_FROM(1.00)[];
	 FROM_EQ_ENVFROM(0.00)[];
	 MIME_TRACE(0.00)[0:+];
	 RCVD_COUNT_TWO(0.00)[2];
	 RCVD_TLS_ALL(0.00)[];
	 BAYES_HAM(-3.00)[100.00%]
X-Spam-Flag: NO

This is a small series getting rid of paravirt patching by switching
completely to alternative patching for the same functionality.

The basic idea is to add the capability to switch from indirect to
direct calls via a special alternative patching option.

This removes _some_ of the paravirt macro maze, but most of it needs
to stay due to the need of hiding the call instructions from the
compiler in order to avoid needless register save/restore.

What is going away is the nasty stacking of alternative and paravirt
patching and (of course) the special .parainstructions linker section.

I have tested the series on bare metal and as Xen PV domain to still
work.

Note that objtool might need some changes to cope with the new
indirect call patching mechanism. Additionally some paravirt handling
can probably be removed from it.

Changes in V2:
- split last patch into 2
- rebase of patch 2 as suggested by Peter
- addressed Peter's comments for patch 3

Juergen Gross (4):
  x86/paravirt: move some functions and defines to alternative
  x86/alternative: add indirect call patching
  x86/paravirt: switch mixed paravirt/alternative calls to alternative_2
  x86/paravirt: remove no longer needed paravirt patching code

 arch/x86/include/asm/alternative.h        |  26 ++++-
 arch/x86/include/asm/paravirt.h           |  79 +++++----------
 arch/x86/include/asm/paravirt_types.h     |  73 +++-----------
 arch/x86/include/asm/qspinlock_paravirt.h |   4 +-
 arch/x86/include/asm/text-patching.h      |  12 ---
 arch/x86/kernel/alternative.c             | 116 ++++++++++------------
 arch/x86/kernel/callthunks.c              |  17 ++--
 arch/x86/kernel/kvm.c                     |   4 +-
 arch/x86/kernel/module.c                  |  20 +---
 arch/x86/kernel/paravirt.c                |  54 ++--------
 arch/x86/kernel/vmlinux.lds.S             |  13 ---
 arch/x86/tools/relocs.c                   |   2 +-
 arch/x86/xen/irq.c                        |   2 +-
 13 files changed, 137 insertions(+), 285 deletions(-)

-- 
2.35.3



From xen-devel-bounces@lists.xenproject.org Mon Oct 16 12:39:45 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 12:39:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617511.960145 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsMsr-0002Dc-GP; Mon, 16 Oct 2023 12:39:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617511.960145; Mon, 16 Oct 2023 12:39: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 1qsMsr-0002DR-DR; Mon, 16 Oct 2023 12:39:45 +0000
Received: by outflank-mailman (input) for mailman id 617511;
 Mon, 16 Oct 2023 12:39: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=4t3W=F6=suse.com=jgross@srs-se1.protection.inumbo.net>)
 id 1qsMsq-0001w4-7a
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 12:39:44 +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 141992d8-6c21-11ee-9b0e-b553b5be7939;
 Mon, 16 Oct 2023 14:39: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 8A9E31FEC3;
 Mon, 16 Oct 2023 12:39: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 10C4A133B7;
 Mon, 16 Oct 2023 12:39:41 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap2.suse-dmz.suse.de with ESMTPSA id X2unAg0vLWUOIwAAMHmgww
 (envelope-from <jgross@suse.com>); Mon, 16 Oct 2023 12:39: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: 141992d8-6c21-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1697459981; 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=8SktsBRaT0WfP83H70+6Aqz0kX9lsT33YwrE6d/KceQ=;
	b=N4wpk7aAyeNFzfnqlFZnD5T5ki5WxOFAsKYEGnFWLfbXb7gcmbPvuEdzYPhBtjgKyaOcO5
	1wx1NUfjNcvNwxJTVloX5rxoNuWoj08b3ECu2ssEtCLsupwvmttATlTiKHNHOehFwOcfZT
	CLgJQ5hCzCledWX+XbhY3+pyDhP+hfI=
From: Juergen Gross <jgross@suse.com>
To: linux-kernel@vger.kernel.org,
	x86@kernel.org,
	virtualization@lists.linux-foundation.org,
	kvm@vger.kernel.org
Cc: Juergen Gross <jgross@suse.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>,
	Ajay Kaher <akaher@vmware.com>,
	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,
	Peter Zijlstra <peterz@infradead.org>
Subject: [PATCH v2 1/4] x86/paravirt: move some functions and defines to alternative
Date: Mon, 16 Oct 2023 14:39:30 +0200
Message-Id: <20231016123933.17284-2-jgross@suse.com>
X-Mailer: git-send-email 2.35.3
In-Reply-To: <20231016123933.17284-1-jgross@suse.com>
References: <20231016123933.17284-1-jgross@suse.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Authentication-Results: smtp-out2.suse.de;
	none
X-Spam-Level: 
X-Spam-Score: -0.09
X-Spamd-Result: default: False [-0.09 / 50.00];
	 ARC_NA(0.00)[];
	 RCVD_VIA_SMTP_AUTH(0.00)[];
	 FROM_HAS_DN(0.00)[];
	 TO_DN_SOME(0.00)[];
	 TO_MATCH_ENVRCPT_ALL(0.00)[];
	 R_MISSING_CHARSET(2.50)[];
	 MIME_GOOD(-0.10)[text/plain];
	 REPLY(-4.00)[];
	 BROKEN_CONTENT_TYPE(1.50)[];
	 DKIM_SIGNED(0.00)[suse.com:s=susede1];
	 NEURAL_HAM_SHORT(-0.99)[-0.990];
	 NEURAL_SPAM_LONG(3.00)[1.000];
	 RCPT_COUNT_TWELVE(0.00)[19];
	 MID_CONTAINS_FROM(1.00)[];
	 FROM_EQ_ENVFROM(0.00)[];
	 MIME_TRACE(0.00)[0:+];
	 RCVD_COUNT_TWO(0.00)[2];
	 RCVD_TLS_ALL(0.00)[];
	 BAYES_HAM(-3.00)[100.00%]
X-Spam-Flag: NO

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>
---
 arch/x86/include/asm/alternative.h        | 16 ++++++++++++
 arch/x86/include/asm/paravirt.h           | 12 ---------
 arch/x86/include/asm/paravirt_types.h     |  4 +--
 arch/x86/include/asm/qspinlock_paravirt.h |  4 +--
 arch/x86/kernel/alternative.c             | 10 ++++++++
 arch/x86/kernel/kvm.c                     |  4 +--
 arch/x86/kernel/paravirt.c                | 30 +++++++----------------
 arch/x86/xen/irq.c                        |  2 +-
 8 files changed, 41 insertions(+), 41 deletions(-)

diff --git a/arch/x86/include/asm/alternative.h b/arch/x86/include/asm/alternative.h
index 9c4da699e11a..67e50bd40bb8 100644
--- a/arch/x86/include/asm/alternative.h
+++ b/arch/x86/include/asm/alternative.h
@@ -330,6 +330,22 @@ static inline int alternatives_text_reserved(void *start, void *end)
  */
 #define ASM_NO_INPUT_CLOBBER(clbr...) "i" (0) : clbr
 
+/* Macro for creating assembler functions avoiding any C magic. */
+#define DEFINE_ASM_FUNC(func, instr, sec)		\
+	asm (".pushsection " #sec ", \"ax\"\n"		\
+	     ".global " #func "\n\t"			\
+	     ".type " #func ", @function\n\t"		\
+	     ASM_FUNC_ALIGN "\n"			\
+	     #func ":\n\t"				\
+	     ASM_ENDBR					\
+	     instr "\n\t"				\
+	     ASM_RET					\
+	     ".size " #func ", . - " #func "\n\t"	\
+	     ".popsection")
+
+void x86_BUG(void);
+void x86_nop(void);
+
 #else /* __ASSEMBLY__ */
 
 #ifdef CONFIG_SMP
diff --git a/arch/x86/include/asm/paravirt.h b/arch/x86/include/asm/paravirt.h
index 6c8ff12140ae..ed5c7342f2ef 100644
--- a/arch/x86/include/asm/paravirt.h
+++ b/arch/x86/include/asm/paravirt.h
@@ -726,18 +726,6 @@ static __always_inline unsigned long arch_local_irq_save(void)
 #undef PVOP_VCALL4
 #undef PVOP_CALL4
 
-#define DEFINE_PARAVIRT_ASM(func, instr, sec)		\
-	asm (".pushsection " #sec ", \"ax\"\n"		\
-	     ".global " #func "\n\t"			\
-	     ".type " #func ", @function\n\t"		\
-	     ASM_FUNC_ALIGN "\n"			\
-	     #func ":\n\t"				\
-	     ASM_ENDBR					\
-	     instr "\n\t"				\
-	     ASM_RET					\
-	     ".size " #func ", . - " #func "\n\t"	\
-	     ".popsection")
-
 extern void default_banner(void);
 void native_pv_lock_init(void) __init;
 
diff --git a/arch/x86/include/asm/paravirt_types.h b/arch/x86/include/asm/paravirt_types.h
index 772d03487520..9f84dc074f88 100644
--- a/arch/x86/include/asm/paravirt_types.h
+++ b/arch/x86/include/asm/paravirt_types.h
@@ -542,8 +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))
 
-void _paravirt_nop(void);
-void paravirt_BUG(void);
 unsigned long paravirt_ret0(void);
 #ifdef CONFIG_PARAVIRT_XXL
 u64 _paravirt_ident_64(u64);
@@ -553,7 +551,7 @@ void pv_native_irq_enable(void);
 unsigned long pv_native_read_cr2(void);
 #endif
 
-#define paravirt_nop	((void *)_paravirt_nop)
+#define paravirt_nop	((void *)x86_nop)
 
 extern struct paravirt_patch_site __parainstructions[],
 	__parainstructions_end[];
diff --git a/arch/x86/include/asm/qspinlock_paravirt.h b/arch/x86/include/asm/qspinlock_paravirt.h
index 85b6e3609cb9..ef9697f20129 100644
--- a/arch/x86/include/asm/qspinlock_paravirt.h
+++ b/arch/x86/include/asm/qspinlock_paravirt.h
@@ -56,8 +56,8 @@ __PV_CALLEE_SAVE_REGS_THUNK(__pv_queued_spin_unlock_slowpath, ".spinlock.text");
 	"pop    %rdx\n\t"						\
 	FRAME_END
 
-DEFINE_PARAVIRT_ASM(__raw_callee_save___pv_queued_spin_unlock,
-		    PV_UNLOCK_ASM, .spinlock.text);
+DEFINE_ASM_FUNC(__raw_callee_save___pv_queued_spin_unlock,
+		PV_UNLOCK_ASM, .spinlock.text);
 
 #else /* CONFIG_64BIT */
 
diff --git a/arch/x86/kernel/alternative.c b/arch/x86/kernel/alternative.c
index 73be3931e4f0..1c8dd8e05f3f 100644
--- a/arch/x86/kernel/alternative.c
+++ b/arch/x86/kernel/alternative.c
@@ -385,6 +385,16 @@ apply_relocation(u8 *buf, size_t len, u8 *dest, u8 *src, size_t src_len)
 	}
 }
 
+/* Low-level backend functions usable from alternative code replacements. */
+DEFINE_ASM_FUNC(x86_nop, "", .entry.text);
+EXPORT_SYMBOL_GPL(x86_nop);
+
+noinstr void x86_BUG(void)
+{
+	BUG();
+}
+EXPORT_SYMBOL_GPL(x86_BUG);
+
 /*
  * Replace instructions with better alternatives for this CPU type. This runs
  * before SMP is initialized to avoid SMP problems with self modifying code.
diff --git a/arch/x86/kernel/kvm.c b/arch/x86/kernel/kvm.c
index b8ab9ee5896c..4ca59dccc15a 100644
--- a/arch/x86/kernel/kvm.c
+++ b/arch/x86/kernel/kvm.c
@@ -803,8 +803,8 @@ extern bool __raw_callee_save___kvm_vcpu_is_preempted(long);
  "cmpb   $0, " __stringify(KVM_STEAL_TIME_preempted) "+steal_time(%rax)\n\t" \
  "setne  %al\n\t"
 
-DEFINE_PARAVIRT_ASM(__raw_callee_save___kvm_vcpu_is_preempted,
-		    PV_VCPU_PREEMPTED_ASM, .text);
+DEFINE_ASM_FUNC(__raw_callee_save___kvm_vcpu_is_preempted,
+		PV_VCPU_PREEMPTED_ASM, .text);
 #endif
 
 static void __init kvm_guest_init(void)
diff --git a/arch/x86/kernel/paravirt.c b/arch/x86/kernel/paravirt.c
index 97f1436c1a20..32792b033de2 100644
--- a/arch/x86/kernel/paravirt.c
+++ b/arch/x86/kernel/paravirt.c
@@ -34,14 +34,8 @@
 #include <asm/io_bitmap.h>
 #include <asm/gsseg.h>
 
-/*
- * nop stub, which must not clobber anything *including the stack* to
- * avoid confusing the entry prologues.
- */
-DEFINE_PARAVIRT_ASM(_paravirt_nop, "", .entry.text);
-
 /* stub always returning 0. */
-DEFINE_PARAVIRT_ASM(paravirt_ret0, "xor %eax,%eax", .entry.text);
+DEFINE_ASM_FUNC(paravirt_ret0, "xor %eax,%eax", .entry.text);
 
 void __init default_banner(void)
 {
@@ -49,12 +43,6 @@ void __init default_banner(void)
 	       pv_info.name);
 }
 
-/* Undefined instruction for dealing with missing ops pointers. */
-noinstr void paravirt_BUG(void)
-{
-	BUG();
-}
-
 static unsigned paravirt_patch_call(void *insn_buff, const void *target,
 				    unsigned long addr, unsigned len)
 {
@@ -64,11 +52,11 @@ static unsigned paravirt_patch_call(void *insn_buff, const void *target,
 }
 
 #ifdef CONFIG_PARAVIRT_XXL
-DEFINE_PARAVIRT_ASM(_paravirt_ident_64, "mov %rdi, %rax", .text);
-DEFINE_PARAVIRT_ASM(pv_native_save_fl, "pushf; pop %rax", .noinstr.text);
-DEFINE_PARAVIRT_ASM(pv_native_irq_disable, "cli", .noinstr.text);
-DEFINE_PARAVIRT_ASM(pv_native_irq_enable, "sti", .noinstr.text);
-DEFINE_PARAVIRT_ASM(pv_native_read_cr2, "mov %cr2, %rax", .noinstr.text);
+DEFINE_ASM_FUNC(_paravirt_ident_64, "mov %rdi, %rax", .text);
+DEFINE_ASM_FUNC(pv_native_save_fl, "pushf; pop %rax", .noinstr.text);
+DEFINE_ASM_FUNC(pv_native_irq_disable, "cli", .noinstr.text);
+DEFINE_ASM_FUNC(pv_native_irq_enable, "sti", .noinstr.text);
+DEFINE_ASM_FUNC(pv_native_read_cr2, "mov %cr2, %rax", .noinstr.text);
 #endif
 
 DEFINE_STATIC_KEY_TRUE(virt_spin_lock_key);
@@ -96,9 +84,9 @@ unsigned int paravirt_patch(u8 type, void *insn_buff, unsigned long addr,
 	unsigned ret;
 
 	if (opfunc == NULL)
-		/* If there's no function, patch it with paravirt_BUG() */
-		ret = paravirt_patch_call(insn_buff, paravirt_BUG, addr, len);
-	else if (opfunc == _paravirt_nop)
+		/* If there's no function, patch it with x86_BUG() */
+		ret = paravirt_patch_call(insn_buff, x86_BUG, addr, len);
+	else if (opfunc == x86_nop)
 		ret = 0;
 	else
 		/* Otherwise call the function. */
diff --git a/arch/x86/xen/irq.c b/arch/x86/xen/irq.c
index 6092fea7d651..5d132f5a5d7d 100644
--- a/arch/x86/xen/irq.c
+++ b/arch/x86/xen/irq.c
@@ -45,7 +45,7 @@ static const typeof(pv_ops) xen_irq_ops __initconst = {
 		/* Initial interrupt flag handling only called while interrupts off. */
 		.save_fl = __PV_IS_CALLEE_SAVE(paravirt_ret0),
 		.irq_disable = __PV_IS_CALLEE_SAVE(paravirt_nop),
-		.irq_enable = __PV_IS_CALLEE_SAVE(paravirt_BUG),
+		.irq_enable = __PV_IS_CALLEE_SAVE(x86_BUG),
 
 		.safe_halt = xen_safe_halt,
 		.halt = xen_halt,
-- 
2.35.3



From xen-devel-bounces@lists.xenproject.org Mon Oct 16 12:44:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 12:44:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617518.960155 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsMxh-00051r-3w; Mon, 16 Oct 2023 12:44:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617518.960155; Mon, 16 Oct 2023 12: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 1qsMxh-00051k-14; Mon, 16 Oct 2023 12:44:45 +0000
Received: by outflank-mailman (input) for mailman id 617518;
 Mon, 16 Oct 2023 12:44: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=/fZZ=F6=citrix.com=prvs=646b5f8ff=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qsMxf-00051a-6B
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 12:44:43 +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 c4633894-6c21-11ee-9b0e-b553b5be7939;
 Mon, 16 Oct 2023 14:44: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;
 16 Oct 2023 08:44:36 -0400
Received: from MW4PR03MB6428.namprd03.prod.outlook.com (2603:10b6:303:123::8)
 by BL1PR03MB6152.namprd03.prod.outlook.com (2603:10b6:208:319::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.35; Mon, 16 Oct
 2023 12:44:32 +0000
Received: from MW4PR03MB6428.namprd03.prod.outlook.com
 ([fe80::831e:28d1:34dc:f518]) by MW4PR03MB6428.namprd03.prod.outlook.com
 ([fe80::831e:28d1:34dc:f518%5]) with mapi id 15.20.6863.032; Mon, 16 Oct 2023
 12:44: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: c4633894-6c21-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1697460280;
  h=date:from:to:cc:subject:message-id:references:
   in-reply-to:mime-version;
  bh=6XraHbviahjomvp/YvQCj3qJrnKbz6q2Bx5IgdEk+G0=;
  b=LHJMceZb1UMuCn2zc2Lo9hocW4eKTO6l8za5rviG/ghKS4jZuwp2Ow/m
   Xw3TRQc2oYgMLK81L19qXC2Hp0OfQPDYRuH2TqKeqQMXSeqQKbrIf/9XT
   inTr4cgsc76l/zdnGa6w8kUlWWVpy0PdZg+HJvWsW8AFqc6unwira5qdv
   0=;
X-CSE-ConnectionGUID: Tlqp4NIVT6Wdgm0PAb7tSQ==
X-CSE-MsgGUID: oQiAVn+mTfmXvtC4YQCqiQ==
X-IronPort-RemoteIP: 104.47.55.168
X-IronPort-MID: 125567345
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:lDT4Qa3WBt8Z7EAZR/bD5Qlwkn2cJEfYwER7XKvMYLTBsI5bp2QAz
 zAdXmzXbq3cZGGnfNh+PY/i9E1SvJKGmtAyGQI/pC1hF35El5HIVI+TRqvS04F+DeWYFR46s
 J9OAjXkBJppJpMJjk71atANlVEliOfQAOK6UbaYUsxIbVcMYD87jh5+kPIOjIdtgNyoayuAo
 tq3qMDEULOf82cc3lk8teTb83uDgNyo4GlD5wRnO6gS1LPjvyJ94Kw3dPnZw0TQGuG4LsbiL
 87fwbew+H/u/htFIrtJRZ6iLyXm6paLVeS/oiI+t5qK23CulQRrukoPD9IOaF8/ttm8t4sZJ
 OOhF3CHYVxB0qXkwIzxWvTDes10FfUuFLTveRBTvSEPpqFvnrSFL/hGVSkL0YMkFulfPWVX7
 aA+CQ4xMC+PiOfu+JuxFfVXv5F2RCXrFNt3VnBI6xj8VKxja7aTBqLA6JlfwSs6gd1IEbDGf
 c0FZDFzbRPGJRpSJlMQD5F4l+Ct7pX9W2QA9BTJ+uxqvi6KklwZPLvFabI5fvSQQspYhACAr
 3/u9GXlGBAKcteYzFJp91r13LKSw3ygBN96+LuQ8cdrqWOVhWkvBhgmS0eQ/ciAoVe/YocKQ
 6AT0m90xUQoz2SpRNTgWxyzoFafowURHdFXFoUSyAyL0LuS3A+fCUANVDsHY9sj3Oc0WDgr2
 1mhj97vQzt1v9W9UmmB/72ZqTezPyk9LmIYYyIACwwf7LHLv4Ubnh/JCNF5H8adntDzXD393
 T2OhCw/nKkIy94G0b2h+lLKiC7qoYLGJjPZ/S3SV2Ohqwl/NIisYtXy7UCBtKgQaoGEUlOGo
 X4I3dCE6/wDBo2MkyrLR/gRGLau5LCONzi0bUNTIqTNPg+FoxaLFb28KhknTKu1Gq7ooQPUX
 XI=
IronPort-HdrOrdr: A9a23:yUGHXKt+quwYFvamkPlAZsXI7skDjNV00zEX/kB9WHVpm6yj+v
 xG+85rsSMc6QxhPU3I/OrrBEDuexzhHPJOj7X5Xo3SPjUO2lHJEGgK1+KLrwEIcxeUygc379
 YCT0ERMrzN5VgRt7eG3OG7eexQvOVuJsqT9JjjJ3QGd3AVV0l5hT0JbTpyiidNNXJ77ZxSLu
 v72uN34wCOVF4wdcqBCnwMT4H41qf2fMKPW29+O/Y/gjP+9Q+V1A==
X-Talos-CUID: 9a23:jiflxW1LcRylo6E6v0UXCLxfJsQ8aiH77UnsfXC0BmMxcJSfFkOrwfYx
X-Talos-MUID: =?us-ascii?q?9a23=3AKVmv6g/aBsDn4+yrufoq+xyQf8BR4o2QDgMIrZs?=
 =?us-ascii?q?Di9eYHnBBAhyEjQ3iFw=3D=3D?=
X-IronPort-AV: E=Sophos;i="6.03,229,1694750400"; 
   d="scan'208";a="125567345"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=eWtallO9Et7Jaycphxzk5WPsfV2zOVKryZ8gxvNonCfh4+NaVIqwt9ODeliQc6j80iuz/cUJDjphefIRx99nKT0sK1MA+JLoTmLR9mAT957S4gKdws2orV03k6I6WdXkVrQS3OPan6bpaV4Anjl+1HEBG0b9RoLm5I4ay9bysw9hkB0dKkyoWjaKSIN7+jUZ25LfKn4KhSCAFAXt1DP1ZCygr1RN7wfowyh+QfdojN3UgMmpnQVgTRCwdolHmNP9UXEmhsuuPguWgSov7QpofvAVNtGgjNblWosGp/m7fRhvqObVo6uvMvgmeZmR77WXDYQk5fnj73GcjKi75zNM8Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=LzKPBiwIo3gncxI6c/W5XVQRYmsaYfOt39nGJp8DiAY=;
 b=Oihl6JbSQ60PplmcQ1QR4dnhJYFmdUc9mWQc/vFRboIQWi0a6LsrnIyet+5m5xP8qh425y+zhNvEEzebntsP9thLUWk9pccgcHXUcTvy1crL3zE42PjGGlyzFWJBeVPOqhJZSq4pSnrAlwdCq4mDguylUnxVyCeUX1DQCVAQI7WJBKo1DpPYV/SmIcLwPnlT6SmVjZzWDRwDIVjEhNxvw9Wsh3TeM6TbSIB9iuXmfPG/45+WQ+7KiSaPjR0wlX3l1/E5s+0lCRoRCKJt/+d4vO44aBcUFVmwCXZiyXBZy0+sWQZTlm3hpjDy9wFvntz+B2NAX3ih/FDu5nkgOReV3w==
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=LzKPBiwIo3gncxI6c/W5XVQRYmsaYfOt39nGJp8DiAY=;
 b=Xjchx625Vke4T+bVsXXy+IkgRLepBjqHyTJ49CUU7GuBCpgB3tyu7z5nhYVb9hQ96YkYszMiCyfpcPRy0zxawRd8x8JLD8untL90SDuKfPh4k8PzIXvaBXu4POpqiCQQHvCTyyC5AuQgTCe0oSDcHOSxq+H3MpSBbKOKzTbvw2M=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Mon, 16 Oct 2023 14:44:25 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.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>, Wei Liu <wl@xen.org>,
	xen-devel@lists.xenproject.org
Subject: Re: [PATCH v2 1/2] domain: fix misaligned unmap address in
 {,un}map_guest_area()
Message-ID: <ZS0wKWr8yjwwdpk8@macbook>
References: <20231006130059.97700-1-roger.pau@citrix.com>
 <20231006130059.97700-2-roger.pau@citrix.com>
 <6442445a-458d-3ccd-057c-f8d2ac208232@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <6442445a-458d-3ccd-057c-f8d2ac208232@suse.com>
X-ClientProxiedBy: LO3P265CA0033.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:387::16) To MW4PR03MB6428.namprd03.prod.outlook.com
 (2603:10b6:303:123::8)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: MW4PR03MB6428:EE_|BL1PR03MB6152:EE_
X-MS-Office365-Filtering-Correlation-Id: 3589a695-db67-4b53-62f2-08dbce45a529
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:
	IEu3lKEGjNwQto79XO4TmSSC0z6BZLwTy9KHblG4ogHSU47enL/xAAk08g2eLkw75G2yCVwBjoMMaTyUR52X+eIaCeaqoOFw5mpoaFrg++UYEF+KKWe2B88krLUO6W8eJJVdp+pWTwJZKp7NYc0BEV7CrKrxz7r61u/OzjsiJ53ekZv1xRg/AIOPGP7QwYE5rFquSxlfeoYdpxKjbYsR1GtcwYrPXMgZW+pyDDB5PuAM25pE0hZ01Jx/9ausiy4EOlKawT5R40H7MomT3IY5Udb6mCQibaeZZNvMsQLEqqh3UxVOdtsvgqKaln1P/Dh8puUeeogpXeni4daXdMqCIt4Y5zZoAaHrmZ1klKebJY6BnkOEtMKBrwmRfqX5rS4FjHp+2CNgv6tmvgWkv2PFzdnKR46xM8lnGh7IAFz2v4qsiKXJpPBEgqlNPfESpq8rD6+wmef76HUhkrEiL+k/rYKbpR8zhtm0M+nSo7pQq/3UcVbhL/dJeKlKilA9mqVlKEuqaEKTIO8h2tWEg43okXhWgbYZswvShlGscofzRQdmnKLF88sm8MP4vbkphMtt
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)(136003)(346002)(376002)(366004)(39860400002)(396003)(230922051799003)(1800799009)(186009)(64100799003)(451199024)(6916009)(316002)(66946007)(66476007)(54906003)(66556008)(26005)(85182001)(83380400001)(9686003)(6512007)(82960400001)(38100700002)(86362001)(478600001)(33716001)(6486002)(6666004)(6506007)(41300700001)(5660300002)(2906002)(8676002)(4326008)(8936002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?TlFrZ2RPK1RpTTVIWTdiLzJTbkc1bDFhOXJPc0dJc1A5UVU2Q3RiUHUvWC9Y?=
 =?utf-8?B?L3NGSzFUMmd3Y1JIbzJDUStjUWV0SUZNZ3ZmUEJSTHpuNnVYOVFoTGlEUXN1?=
 =?utf-8?B?aThsYWJWWTJpYmxGc2w3aUtIeHQySUdveS9nUTB5OG1maTNtT0FmRlYwS3lG?=
 =?utf-8?B?WGltb2ZPRE1Hb2lFWE41OUd3Wkdzdk8vcWYzUzhDSDJPRFFRdk5UR3d6MkZK?=
 =?utf-8?B?ckNkUUpSY3ljQUhGNmFQdGxSbU92NndSdDR5RHhGaXJsSnV5ZVlHS3k1eGFt?=
 =?utf-8?B?T3Z1bHUyNDlnVUJjZk5kaEFpQk1QUzNpWTZ6Vm96c3NwTmJyS3FyZXgzcE5Z?=
 =?utf-8?B?aHlqTHRsNmlxYmRSRlNpNUZtUGtnT1FzWFpiRE9xcEFVWXZKZlo2bWpxWGx6?=
 =?utf-8?B?eVZFaDBicjNSUEZXMUJvNlRoSGN5bVNZNEJwWjZ5TlNDd0lxaUs5M0pPTkJG?=
 =?utf-8?B?WDA3WE9pQ1plSWVGU0kvOTNTSUNCUlJpblFTNW9MMnN2UGJ1Tm0yb1JBdTQ0?=
 =?utf-8?B?b0ZOWENlSW1KZW1PVSs5c2RkRTY4WkhZckVUaENYRUxCaWxHek5CUXpjN2Ri?=
 =?utf-8?B?a2ZzNkg3TUh4WTJLeEZ2bjgwcHpoMUszR0FIQzJUVEZGa2t2aTJTdzNFN05h?=
 =?utf-8?B?bGdWMVJGanVpNUFYcGVhU2x1b0MxZnlnNlhYemxTdDJpUDJ3eWZPSHZQZ1p2?=
 =?utf-8?B?RkpVdkUrZFlSUjJDUUVtU2JQZ3p6OFVaazhNQlRUN1k2RlM2N1lrZzlvZnVi?=
 =?utf-8?B?RFgrQkwzZ1J5cTUvemhsLzBmVFRpWkQvRGFNRU5LSnhZbzV1SWNnTURpNlpG?=
 =?utf-8?B?dXRqU243Zm1UQVJJVjRaeDA1ZHJaR1cwTXdEaUplZ2psY1JJMHMzdjFvV2Vq?=
 =?utf-8?B?WWkvT3NOTHdEVW5vdGdPd0oxandYZWhtMzQ4RVdoRHN5ZlAycW9UTUJlZ2Fj?=
 =?utf-8?B?eE81SHFTUXR1eUtxQi9XbTlDNHcvSnJWN0Nyc1RUSXpsWFgwUnk2UHpFazRW?=
 =?utf-8?B?aFphNkNKQTN5OW91WTRlVDJKNFhJR1RrSGxJa1Y0T2FGVFpFM2xJM2MwWnFR?=
 =?utf-8?B?V1NiVVIzbk1IUXpaSVJONGJrdDFDd28yb24raVhaZG9GcndiV2Z5SVRTYURh?=
 =?utf-8?B?QUxsN0tKSEtxVStLa3M1MzNCT3pLaHZmR3BDb3g1b0RZSElNOWlPZkVmWlBK?=
 =?utf-8?B?bVozdjM4MnhkVWdWSFRnZXpUWGlpdG9XV1BJenVwMS9FMWxnU1l0dFZmS3h2?=
 =?utf-8?B?SVJSYmk1WnVtaWNHVTIxOFF2L3NlUC8vQlNkSkd5Qm9URmM5SnBENlJJaUd6?=
 =?utf-8?B?NnZCM1NpbEt4Y0RQTDRqYkhtQi85U29iTVJ1K01IMmprWHlvUW1HNFNKQTJT?=
 =?utf-8?B?TzJvTFlFaWtmbHVpemhlK0FkMDNneU1reXZqRmdUZko4anBKUVpUdm5nSHVR?=
 =?utf-8?B?NHIvcVpVT1hXZHdQdmV1R2NLWE1PMUFCcFVLYWtCR3BDZFMvZTN6b2RieTVO?=
 =?utf-8?B?ZnYveUpjelpqbXBGcVIrdm9qTEtvaDY4UktOWGhwTGExSXl1UW1zc1lWVnFz?=
 =?utf-8?B?eWg5VjEvaG0wZStZNHB2NVdsNHliTnVUOVJ4T2JDc1FvWFlzSElNLzljSWl6?=
 =?utf-8?B?YThmOVArVytZTUpWL1JpRzg1OVlBOW0rM3FYUERMNm4xMGRYNjREUXNYdXZD?=
 =?utf-8?B?ZHEybXVDdXg4ZWo1ekJPL1VjUVMrQkNJTGQyS0w5d3hYYVZHR3gzWUEzNjVN?=
 =?utf-8?B?RWt3YVg2VWlVTmcyOTJEcWlLa3M0ZHNDTXVqbHRVblVaNkZuZjhxcDNaZjVk?=
 =?utf-8?B?NWx2ZXBiRklpc0hLaGlTamJuTWJIVkxheFVGRGJob3ZselpDUVRkdUVCOGMz?=
 =?utf-8?B?TDJvcEI2Y1ZvcG9Pd3llaEIwK3o1Q0s3cTBKK1VlTHZ0RHBrUmhkQVJBdHhN?=
 =?utf-8?B?ZGlBbCtxNkJ0Wml4c1hObDdncXlzOURSaDNLcDlGendHNmxobStwZThuUWlo?=
 =?utf-8?B?Lys2WGlKQTNMdGhKYmFxU0xsQVhmR3VRc1gxVTNmdzRSVVpITEthSDJHdkdi?=
 =?utf-8?B?dTI4VlQ4VFBtaEZCaFZvdFhoZDlIWkdabm5RWGI2ZUVSRkM1cmxoN1ZaWFlu?=
 =?utf-8?Q?5WEqBJ1qZ4ub3qjO8uJCfBoNQ?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	ahThfwDEL3eRMgl2BGD/tB5CV+D9lnqVbPb5JfeMUlq9i0pAJ0cVsoq8ZDoeFI6sliWZYlprnAMtJ3O6y/pG06TWKTOB3FJLNvP+QyjWQaHW54M9xqKrnYxahpGVK7iaAn8UhFkcNNI7JfFISClI86idT6UYu317wGHOW99/j3OkPbvUNzt/4D4APH6sxul9mMFS+rlBXW6MihzjZf37mzp4r3T9rdyB5CkXvh5Rn2mZWtPhxuAJO48YyapddrAg6462VqRnk2a9hGmYHuzt/mGMUs6xTLKvh9Kw+65GLHYkYZLE7egX8DGlDCqmVw9H6M5aV7u57U9krTNBzZ0saC3tafs2f764jl29wwddT0Al4617R51iGAa1Viv4IykL47Pd7S0OHgqDO/axvsdqlBZx4r6kU7XEWdWz8XP2WyUdHj0Np8HWIsn61dZsi9rNo2IPc6P+UaKoYcJiL4d4aQ7v1wooaeR/TObtGO0k/Hnalc31JTibroK3nG21mHC5IpsRxywXab50u9YqKnxbydphQmHN7BCjJWeI05gkB3nNTXkTj1gNPELugYuFxiIaZioHVRVNDF/ET1jXw7N+r44rE/sIl/y/g3mImskavuxrVBRkI/IE0KjQIa5yy2EDxBnmhAzgBfDo8FrkgM9bUPQ/B9+Td6NbmGY2Tn5Z0jkxnWhhX6Yt5Om/nmACdAYT2nCilB8i+5/qD0RFd3jH+AOWKFzinlqkIzJDG7IDpdmnz6Ek9MghfcmL9RcIzwgvSQ4RE8hEHp+BmkhR7BeQG2ddhCKxklwtXMhSsBFWZAJxeG4FeNR4Qr1OMDkTgv3OJcqoH970Ik6RkxH4Rl5nmqsrfPgTTEg6rBVLMtM64uUFZu2a3s9hzOkSkioqA6Jx
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 3589a695-db67-4b53-62f2-08dbce45a529
X-MS-Exchange-CrossTenant-AuthSource: MW4PR03MB6428.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Oct 2023 12:44:32.4371
 (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: R3X+HYi/plMb6YFT0Z2WJIXI4gQErbiX+1e6dW52qM7McKj5obSftk+XsD7Pq0um0kRrbNJUALCfzoz9pY1heg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BL1PR03MB6152

On Mon, Oct 16, 2023 at 02:30:12PM +0200, Jan Beulich wrote:
> On 06.10.2023 15:00, Roger Pau Monne wrote:> --- a/xen/common/domain.c
> > +++ b/xen/common/domain.c
> > @@ -1601,7 +1601,7 @@ int map_guest_area(struct vcpu *v, paddr_t gaddr, unsigned int size,
> >   unmap:
> >      if ( pg )
> >      {
> > -        unmap_domain_page_global(map);
> > +        unmap_domain_page_global((void *)((unsigned long)map & PAGE_MASK));
> >          put_page_and_type(pg);
> >      }
> >  
> > @@ -1634,7 +1634,7 @@ void unmap_guest_area(struct vcpu *v, struct guest_area *area)
> >  
> >      if ( pg )
> >      {
> > -        unmap_domain_page_global(map);
> > +        unmap_domain_page_global((void *)((unsigned long)map & PAGE_MASK));
> >          put_page_and_type(pg);
> >      }
> >  }
> 
> On v1 in a reply to Julien you talk of "limiting misuse" by not relaxing
> expecations in Arm's backing code, but I wonder what kind of misuse you
> think about. Aiui there's no strong need to insist on page aligned input,
> and relaxing things there may simplify code elsewhere as well.

destroy_xen_mappings() both on Arm and x86 will trigger asserts if the
passed address is not page aligned.  I do think it makes sense to call
unmap_domain_page_global() with page-aligned addresses, as that could
help detect bogus callers or corrupted data passed as input.

IMO an assert for page aligned input address should be placed at
vunmap() in order to not get differing expectations on input address
being page aligned or not whether destroy_xen_mappings() or
map_pages_to_xen() is used.  map_pages_to_xen() doesn't require
page-aligned virtual addresses as input.

Roger.


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 12:46:22 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 12:46:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617522.960164 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsMzF-0005bS-Dx; Mon, 16 Oct 2023 12:46:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617522.960164; Mon, 16 Oct 2023 12:46: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 1qsMzF-0005bL-BD; Mon, 16 Oct 2023 12:46:21 +0000
Received: by outflank-mailman (input) for mailman id 617522;
 Mon, 16 Oct 2023 12:46: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=LsVN=F6=amd.com=Michal.Orzel@srs-se1.protection.inumbo.net>)
 id 1qsMzD-0005bD-8U
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 12:46:19 +0000
Received: from NAM02-SN1-obe.outbound.protection.outlook.com
 (mail-sn1nam02on20608.outbound.protection.outlook.com
 [2a01:111:f400:7ea9::608])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id ff34a416-6c21-11ee-98d4-6d05b1d4d9a1;
 Mon, 16 Oct 2023 14:46:17 +0200 (CEST)
Received: from SA1P222CA0103.NAMP222.PROD.OUTLOOK.COM (2603:10b6:806:3c5::7)
 by SJ2PR12MB8691.namprd12.prod.outlook.com (2603:10b6:a03:541::10) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.35; Mon, 16 Oct
 2023 12:46:14 +0000
Received: from SA2PEPF000015C6.namprd03.prod.outlook.com
 (2603:10b6:806:3c5:cafe::1e) by SA1P222CA0103.outlook.office365.com
 (2603:10b6:806:3c5::7) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.35 via Frontend
 Transport; Mon, 16 Oct 2023 12:46:14 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 SA2PEPF000015C6.mail.protection.outlook.com (10.167.241.196) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6838.22 via Frontend Transport; Mon, 16 Oct 2023 12:46:13 +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, 16 Oct
 2023 07:46:11 -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, 16 Oct
 2023 07:46:10 -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, 16 Oct 2023 07:46: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: ff34a416-6c21-11ee-98d4-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=DCBb7gAn8unjsJKXgdHiM0H/bJ3XrfQuT6lEXQqlBw+CKrmP5XvliYBMVwGcb6OoK26pcj8PKNzNCIl0gHpAUUKLdhMbGdF+wq5LCru5Y8nysC5B1brGKIQqFfbF2LaLBQaJ8MX+72zEHI330GZJJ4fYHECgoYxkHrjur5PBbU80X3Rc16FZbY1p3WOlnwhvGc9YuBEzPXtR5NyIUJ+OvhhIvV7Ru+u4fAkFbIBJjVxgAWYcPKWB4HANY9J8/dq/DZpsGiaIC2UlFU86eC5TRko7R43WhAFxQtAnFQ35Gb24eu4ut9RvRaDuC1sxAUjJDXX9f7ddMo2Wodw84EXVVA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=WiCrYxdKyFBWS67/6ZzkitTMejEeK2oP06ZKxoPdFHc=;
 b=lAvtUReoTlAK4tktAf/yvrhe6uMfsfeouv5HMjIurYyo9UbOSUCj4Ju7E6a9ZJW/5N7FFJrsKJl2PPzXdNjGi0a0DzRAiLABj9rSZgr54bUDqwwm0I9QdqZGdfajoeUVYZdsUoQjCBgYqpnyPKOUIyHyIK87BCxLDPppQcHNxtqEbLChESwE6HtQhaSeDLpYIYvWxOZzfEK9ac2++qXFCR6de6xYmaBNGzp5h4yjCGQltcmZX7jSNpHQDPM4Hko60fIlr3K1IyymJJRAWSBG/UNcvB2GL4XR2kSXA1sb0gvw0DdaqcU/5tfr2kP6VWn47lVBlZO/kEul7NtautEj/g==
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=WiCrYxdKyFBWS67/6ZzkitTMejEeK2oP06ZKxoPdFHc=;
 b=U8VatHDytlbfbUg11tK5E0N9dKdEvCnCvIcB6HcCPpLyzgDZyqNK1cuIR0p4W5zKT2nCZx2NqQs9xEVtCjAmseIrgHAevofFiIFSQ7YR/ljlARJM71A35W9vJ5BC+9MI4DG/0cpZcmRREmvmV/pgRnzfdRICY7eCV+un9HZ0LIQ=
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: [for-4.18][PATCH] xen/arm: Check return code from recursive calls to scan_pfdt_node()
Date: Mon, 16 Oct 2023 14:45:59 +0200
Message-ID: <20231016124559.8220-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: SA2PEPF000015C6:EE_|SJ2PR12MB8691:EE_
X-MS-Office365-Filtering-Correlation-Id: 491a2d64-b0a8-416c-e14b-08dbce45e192
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	rLhbLGf9jh2/niZVqMAX8h7asSxlMcyo8C4ljZ6IfnY+kjE9AMjWv7e8c8CdQkEL298UtFslWwKEvJ7hP3sCAEb1kqh+jzRiDDMn8FuwEWScZ5AJmNSmYYOtT3uGIjYNXvqIy3Q5C2qpTiIfcHPDDpGAdQDrH8ccFse75GiArlGlHx4wBuRX6K13Dri627ukY8VlJ0quHpf2fihys76RJymkrEin3O0OUuZQHUbqQrqor5dPaqELks6h0ldcawc8FW0yHaUxjyB8qA3mTlbBMW9M+M9Dpt1Rhp9DQaUYp052IYoV7YeWB3wKIfPdMEt1ANvBvxbq9+SHyvn5KAFsfh0ragGT71v/Ld6FYkRePKtcL9X+TQrynHg0RC1buxvQ9GiAr4jJCmZncwRhVawv7hSOykhhSbHgB2h2QDzucI7nI4c7VAxpwb1oX3QKy+5hlA15vFcJ0p87CPoAGHi674zLqQplOjrGA10k4RAbES9Q7j8WGzxfhaMeVlS4NEkoANVc67+Xs1kP5KQpQkNBp3zTOZW+aUjFUS0kWCSuHSDPYQXJ0dip2SLmSkjDpMedIy0bev70OtC2Wmb9LfhiS9JMvhJ+LsaF6+N4BI6TtTz37nePEPF/EFKbfALy1ncWcfrn14PZBqaoxUKO5NjzDePg0G4vwjS2Lid8DFN9mRtowPbUSoltcdqX5hgXHLwdStGpzWQzWTKaeq/ZYLGI3kNjRjGGHX3Sdqq4PW5UFxzUyfsYli6686/NqZQo+yyynCdq6fn3/ovmqsv8cRXTWQ==
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)(136003)(346002)(396003)(230922051799003)(82310400011)(1800799009)(186009)(64100799003)(451199024)(40470700004)(46966006)(36840700001)(70206006)(70586007)(2616005)(6916009)(54906003)(478600001)(316002)(426003)(1076003)(336012)(26005)(5660300002)(8676002)(8936002)(4326008)(44832011)(2906002)(41300700001)(86362001)(6666004)(36756003)(82740400003)(356005)(47076005)(83380400001)(36860700001)(81166007)(40460700003)(40480700001)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Oct 2023 12:46:13.5153
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 491a2d64-b0a8-416c-e14b-08dbce45e192
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:
	SA2PEPF000015C6.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ2PR12MB8691

At the moment, we do not check a return code from scan_pfdt_node()
called recursively. This means that any issue that may occur while
parsing and copying the passthrough nodes is hidden and Xen continues
to boot a domain despite errors. This may lead to incorrect device tree
generation and various guest issues (e.g. trap on attempt to access MMIO
not mapped in P2M). Fix it.

Fixes: 669ecdf8d6cd ("xen/arm: copy dtb fragment to guest dtb")
Signed-off-by: Michal Orzel <michal.orzel@amd.com>
---
@Henry:
This is a bug fix, so I think we should have it in 4.18 given the possible
consequences I described in the commit msg. I don't see any risks as this change
only checks the return code for an error.
---
 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 24c9019cc43c..49792dd590ee 100644
--- a/xen/arch/arm/domain_build.c
+++ b/xen/arch/arm/domain_build.c
@@ -2872,8 +2872,11 @@ static int __init scan_pfdt_node(struct kernel_info *kinfo, const void *pfdt,
     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);
+        rc = scan_pfdt_node(kinfo, pfdt, node_next, address_cells, size_cells,
+                            scan_passthrough_prop);
+        if ( rc )
+            return rc;
+
         node_next = fdt_next_subnode(pfdt, node_next);
     }
 
-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Mon Oct 16 13:01:09 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 13:01:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617527.960175 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsNDR-0000xP-P1; Mon, 16 Oct 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 617527.960175; Mon, 16 Oct 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 1qsNDR-0000xI-MB; Mon, 16 Oct 2023 13:01:01 +0000
Received: by outflank-mailman (input) for mailman id 617527;
 Mon, 16 Oct 2023 13:01: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=/fZZ=F6=citrix.com=prvs=646b5f8ff=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qsNDR-0000x9-04
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 13:01:01 +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 09868787-6c24-11ee-9b0e-b553b5be7939;
 Mon, 16 Oct 2023 15:00:54 +0200 (CEST)
Received: from mail-bn8nam04lp2040.outbound.protection.outlook.com (HELO
 NAM04-BN8-obe.outbound.protection.outlook.com) ([104.47.74.40])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 16 Oct 2023 09:00:44 -0400
Received: from MW4PR03MB6428.namprd03.prod.outlook.com (2603:10b6:303:123::8)
 by BN8PR03MB4946.namprd03.prod.outlook.com (2603:10b6:408:7c::24)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.35; Mon, 16 Oct
 2023 13:00:41 +0000
Received: from MW4PR03MB6428.namprd03.prod.outlook.com
 ([fe80::831e:28d1:34dc:f518]) by MW4PR03MB6428.namprd03.prod.outlook.com
 ([fe80::831e:28d1:34dc:f518%5]) with mapi id 15.20.6863.032; Mon, 16 Oct 2023
 13:00: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: 09868787-6c24-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1697461254;
  h=date:from:to:cc:subject:message-id:references:
   in-reply-to:mime-version;
  bh=P6a4xS8WAqFWUEi2rNivCnXC69RIfRJtHXPO+I91Pr0=;
  b=iQxZQlkg1SjeHI473Due7O0HZ+Bsez9Ia7adul1WixiuPUOg3NHyNg2V
   t16NtRZNOl6jRcoNhL8+vTduGk+0F8v8ku3eZmBHgYED4WyVhuj5tKUUc
   KNCm1HzobSK75YmIMAyyAgM1KnLE6G4O6YM1FwK6f7qIByfGVgx3o8y7I
   s=;
X-CSE-ConnectionGUID: CYV33QmkRh2TqI8PKs6aJg==
X-CSE-MsgGUID: aprf7JTrQf2NLjxXFsbv+w==
X-IronPort-RemoteIP: 104.47.74.40
X-IronPort-MID: 124308025
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:XTLjMq12Bg+hDHKINvbD5VZwkn2cJEfYwER7XKvMYLTBsI5bpzxSy
 mYYXWmFMqqCMWH9eIsnaI2w80pQucWEyYNhGVFupC1hF35El5HIVI+TRqvS04F+DeWYFR46s
 J9OAjXkBJppJpMJjk71atANlVEliOfQAOK6UbaYUsxIbVcMYD87jh5+kPIOjIdtgNyoayuAo
 tq3qMDEULOf82cc3lk8teTb83uDgNyo4GlD5wRnO6gS1LPjvyJ94Kw3dPnZw0TQGuG4LsbiL
 87fwbew+H/u/htFIrtJRZ6iLyXm6paLVeS/oiI+t5qK23CulQRrukoPD9IOaF8/ttm8t4sZJ
 OOhF3CHYVxB0qXkwIzxWvTDes10FfUuFLTveRBTvSEPpqFvnrSFL/hGVSkL0YMkFulfKlBwr
 qchLTM3bkq/nsPm+JGgFOBOiZF2RCXrFNt3VnBI6xj8Vapja7aTBqLA6JlfwSs6gd1IEbDGf
 c0FZDFzbRPGJRpSJlMQD5F4l+Ct7pX9W2QA9BTJ+uxovy6PlGSd05C0WDbRUsaNSshP2F6Ru
 0rN/njjAwFcP9uaodaA2iv22rSXzXuhBer+EpWx7uRk33+v3FUdUjsyV0uLj+KzlA2hDoc3x
 0s8v3BGQbIJ3E6hQ8T5Xha4iGWZpRNaUN1Ve8Ua5QeX2+zr6gCWLmEeS3hKb9lOnMQxQDk30
 F6VjpXsDDpmv7CPYWKQ8K+OqjG/MjRTKnUNDQcGUA8E7t/LsIw1yBXVQb5LC7Wph9f4HTXxx
 TGiryUkgbgXy8kR2M2T4lTvkz+q4J/TQWYd9gjRG26o8A59TIqkfJCzr0jW6+5aK4SURUXHu
 2IL8/Vy98gLBJCJ0SaLEOMEGen14+7faGGEx1lyA5Mm6jKhvWa5epxd6y1/I0EvNdsYfTjuY
 wnYvgY5CIJvAUZGpJRfO+qZY/nGB4C6fTg5fpg4tuZzX6U=
IronPort-HdrOrdr: A9a23:vKgfh6FLi6fvoCq2pLqELMeALOsnbusQ8zAXPiBKJCC9E/bo8v
 xG+c5w6faaslkssR0b9+xoW5PwI080l6QU3WB5B97LMDUO0FHCEGgI1/qA/9SPIUzDHu4279
 YbT0B9YueAcGSTW6zBkXWF+9VL+qj5zEix792uq0uE1WtRGtldBwESMHf9LmRGADNoKLAeD5
 Sm6s9Ot1ObCA8qhpTSPAhiYwDbzee77a7bXQ==
X-Talos-CUID: 9a23:Y8/E8m6hSU6EpsOPB9ss338qQZscd37nzC3sOm7oMUVyFrS3RgrF
X-Talos-MUID: 9a23:wKlwEgV3p/zrRBbq/Db0nj89Fvty2qr0LmQPgaUooMOadjMlbg==
X-IronPort-AV: E=Sophos;i="6.03,229,1694750400"; 
   d="scan'208";a="124308025"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=m/LL2a9aHgdBSUo97KdAM8Pigh4VYbl09r9P63o8mQinUP+8YfJqoCJir7zhEeAfp/zxpEFwffuAOaSn2r5+KtbnjpGCaSAzk2gs6rX09wIXn0WALPEfAtYgYslQO65erq4DlD7B7yemnXos/fEITcF9oVNPSJ2bDduE22morbXBvzDfXEZySHvM09ZPjwMHqdn9U13PteXNkqQLkQUM9GxTdWCnyu0COrDJ14kZd4lkzXoIVlJK1Xx/CZaAsAT+khBThvnGKOi+ImI05dPeiZLZcIsz+lf/1tYf13PHUOA55hDNHNy1NmogRXsvMZjGywJYD/NsBmLmCGxLtg9XfA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=jC1Wjo2d68yWt7bQUv6t5zGkTBJiO/L4u+7ynfEWJ4U=;
 b=jB/GNiMlxUR/1pM9gqs8ufb6rutE2rO3d/ujJALJ8N2E+XUQy9XZ44ExdCWlBl80w+iZ/Es0wGEt7aqrD6jxjvMMhgTsVjFbvNIuIOzezPZI+Pxx7zgS3QV1y8xWuqZi5JHsM+SkaCB+BRNc1jNBQAxWilRd9lz/jff2cXlmdMWCO/lpGklOh+OgeOPJvxo9Md0R8e1F3QYvJn2HAlVRsH38BJwFq9BMPVjkf1fWfcUCAwmunQOvM2R/es1gvr8sd976jivPWNoa1NG9dxwjQrxUrbB3z9A2lK8XjDy5SVJ9vD+yAnoV3R2npU6atzVgu5PN9kQEE2iZhLAz6XergA==
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=jC1Wjo2d68yWt7bQUv6t5zGkTBJiO/L4u+7ynfEWJ4U=;
 b=KuHre6w5O6CK3Apx19SFiqljBgBpQZ250WzcfIddmqsvi7lxi1u/jLPbhO8RisJfLAveVPQCn8LZecVJxxHxQbU2I8PihMvqy8ADvLGtTIN3mwkHMoHmv7D5eyeyl1IQs1ESL1XiN7tgz5M/E1Z+/QuMwwD8yH1zs7MZ+FRJPWM=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Mon, 16 Oct 2023 15:00:35 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: Henry Wang <Henry.Wang@arm.com>,
	Community Manager <community.manager@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>,
	xen-devel@lists.xenproject.org
Subject: Re: [PATCH v2 2/2] domain: expose newly introduced hypercalls as
 XENFEAT
Message-ID: <ZS0z89xtFzkmK8_d@macbook>
References: <20231006130059.97700-1-roger.pau@citrix.com>
 <20231006130059.97700-3-roger.pau@citrix.com>
 <b8c03b77-d4bf-3be7-2090-e76e6849b085@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <b8c03b77-d4bf-3be7-2090-e76e6849b085@suse.com>
X-ClientProxiedBy: LO3P123CA0022.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:388::12) To MW4PR03MB6428.namprd03.prod.outlook.com
 (2603:10b6:303:123::8)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: MW4PR03MB6428:EE_|BN8PR03MB4946:EE_
X-MS-Office365-Filtering-Correlation-Id: 72d1de69-7178-4fda-0ae3-08dbce47e671
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:
	9tGBfss555fgtSk5EfhXeDrEotUYU21Q7CsfiErWAcPKC/UiTOLYsxhQT76sX8xVxSIU6ODKqjVXoH3hUyZBheluFRScHfNm6cmh4FezbBDQ9AxhNu79R19A4HS1TQlOS5x5DsuwP4enaCCXu6nXfU92pL7JJul3C+XPhLtvq4S2qZMj0rCSSyW75MdrsYKmgwiV5cY/7pT7HodkSg0qh6fEoeURtfMnU/azhJfPvzNjUBrFsRtZPjzSTB5fCfELrmH/Xmj52hyifBFnsPvEo/LTbLGuq9MCMv2hOJX0SZmvf1mw4oYpvivglMa5IZk8kcrRFwmOPS5bAk3q+aI0L2ZyuxwgygNHeVLMh9g7T93WQTC5mY6f6OqqReRBBkqbW+0Ibw15vHoHgaqA25HES1gmBU+SLrL2hBOCSHvfqSyWCOKv+Umo+JNayjXg1ZiL9E5uthzppyZDdAxjJ6nz/+8s03L7wr+3qZEqht5bTuNt95/1ycMdC7GoL0WZ7O4XyixDEttDdyi9IcO83sFEr3WMRt3yGiDfvjqOMIUZigTHFV9nrdTIAkPZ9UP7ysWU
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)(136003)(366004)(346002)(376002)(396003)(39860400002)(230922051799003)(451199024)(64100799003)(186009)(1800799009)(6506007)(53546011)(5660300002)(6666004)(2906002)(26005)(85182001)(83380400001)(82960400001)(38100700002)(86362001)(9686003)(33716001)(6512007)(6486002)(478600001)(54906003)(66946007)(66476007)(66556008)(6916009)(41300700001)(316002)(8676002)(8936002)(4326008);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?b2UwVFB4VGcyL3V3OWZ0ZzA3bmxFVmd3ZzJnV2M0UU1TQXBGKzEwYy9qTW4y?=
 =?utf-8?B?Ujl5TCtBZGp5UFQ3blRrckVMTTVabFdjZFVIbmFjQVhSb3hScTNKbWlHV0dw?=
 =?utf-8?B?TlY4SzF5eEdWVVZiRThmeGs0cVJVWnVUcUVoMUIwRFJmTDlMREtoUHd4dzlV?=
 =?utf-8?B?bXlWWmtBSXN0SmIrM201d1YxVDZ0Ri9HV1VZWGJKWXlsWTc5eFpkd2IxZXNT?=
 =?utf-8?B?ejJoK2N6R3BuYnJibXk0MXcyTmJIOW1UK0ZKUlc0aSswaUxlZWZZLzFNUTM5?=
 =?utf-8?B?ak5qTmthQk1QYXdQQWYySnl5eHJ4ZGR0VXdYNE1ZeG40WTVZMXl1Q3BYKzJj?=
 =?utf-8?B?cWgrZStBcmVILzdIMEliS3JCM0gvbHl2REVuL0kxbjBqTWxHc3p6eWZ6d1JC?=
 =?utf-8?B?eUpub25IS2FaLzBnRXNoZ0FCVDJJL2tMbk1yOEdoTlNVMkJKSHNTT3dISmxX?=
 =?utf-8?B?OTV5eEdpcWZKcUs4cjhGeDlEL1NyNXA4VW0wdHAxTHhiakRENS9uWFlLbkcy?=
 =?utf-8?B?b2tkS3RkVGlUMGFkRzFUTGgyL3FObnIrZFgvbzRKb3NnUzY1YytMNU5vYTBR?=
 =?utf-8?B?TytsQXhHTGp1c0s4U3ZYcUpzUEEya0VXb0xabWhINHRwM2ZmOTdRZFloRUxN?=
 =?utf-8?B?YWVYNjl0dzg5b2JYZjhSSzRnTXlmZlAxR1c5UGV2UlRSNENRL0dxSDU0MVNu?=
 =?utf-8?B?c0RrbGhVM2xVMWF2R25uNElVb3pGMlhLWXhJM2xKWWp6blJJa3FRWXpZUTFw?=
 =?utf-8?B?Tk9oc3c0cTBuTjZ2QXNmdHdmVUpWamlhVUVwUXQ3VGE2RWtNWHJtUE5Cd3pt?=
 =?utf-8?B?anJtMy9PMUJCK0FEWUgzNUhZdzRXbHM0cWJ3aXRlcDgrSndmZVRKNktoZ2xK?=
 =?utf-8?B?QVpkbkRmSEJlRGdCT1Z1TWFrK0h2b1NMTno2S3VjR0FvSHUzSE5ZR05VSEtq?=
 =?utf-8?B?cWNsZU11NFFGcWV2RllkcTRPNGk4N3Nnck5RcEJ6VjRpRVlHWEt1NjBKYkVj?=
 =?utf-8?B?WHBvSVFLYlJ5YkRVcStwZitKME9rMFJ4eWJqRVVNVzlJZHpjNnE2UGY5bHZI?=
 =?utf-8?B?R09NRTVsOGxXWmNxL1lRYmhDcEVYbnhoaGdCeU8vaFhIYysxVG1DL2Rkdmh3?=
 =?utf-8?B?OGNaRmZjWXpCbDU3RERjcldWYThqdDB5K3FvbTBpZjhvVm5yUUJDOUFMZ3Ur?=
 =?utf-8?B?NEZ6ZXNBZER6NnNmSzVLUWV4S2lIUnRiOXUzR1RMZVo2eVladGhwNnJENzNi?=
 =?utf-8?B?MHJwN3pxV29NMHF1RWRCRG13UFB5amg5QWVhRWZYdUMvblMxOStiME53a0FS?=
 =?utf-8?B?eTNRNjNVSW01dEt4Z3VoRWZ2WmhtMDF1WGlQL1B6aSt6MGYvN0RqcUU5RERr?=
 =?utf-8?B?VVBHNHNIZUh3SStlKzVqb1UxYWtjMm5vbXVrYUhZeGtFSHFhYmdxWmZod0oy?=
 =?utf-8?B?VHpoTmlSTUNHUmZvU0xTQ01sam5jdEpDT09DRGxqS0hULzlxOVhjbllFakl2?=
 =?utf-8?B?OTFtQUprZnpBL2VGMkVPZTNxckx0NGZ1S0hmZzFLVzB1VCtEWllqTFZHcVFI?=
 =?utf-8?B?cWZPSFRncThVZExpT0o0Rk5OK01uSFNETGhCb1BuMUJWQnZQRklmU2w4eWFH?=
 =?utf-8?B?NTBZY2ZjMXByVnc5U1JjSWUvQ3UvaGRKN3RRQTRZRG5ZbGdXNEcxZ0VnYzlv?=
 =?utf-8?B?WWtWeERzdFh1K2tqNHhnMlR3SUwydW5GUTlpZzlNajRaSndiQUtBa3dRc2xO?=
 =?utf-8?B?TEFVTDZScE4rTlFiTGVGQ3Vjc2dKdVpHTTFGUWhBK0szZGtvbFJrcXAyaVI3?=
 =?utf-8?B?RGpSQ3RsMkZ1a0N5eFZBTUxYYWw2d1psOWd3NU96T3BhMUd3Q1c2clNWRWd0?=
 =?utf-8?B?N2VnT25kTXdGMGhNd293a0R6Vk0vNFFWb3Yyck1xWE8vQ0tCbWFJdVR4dU1p?=
 =?utf-8?B?M0h4N0hCQnB2YkR5V2pmVk1wSTVFVS9GVzIrdFJmczU0ZGQxc3BuWHdUY1VO?=
 =?utf-8?B?aWFwY0UrR1FnSWNEVDdvcVBiaUFuV0txNTA3amU4OG10TTBGZ3IwQXhHTW9V?=
 =?utf-8?B?aGRmYkF3enc0ekhldDdBbUJiZnRxdkg0N25INEVWTnRIZG1KWktqYVRYY0Nm?=
 =?utf-8?Q?LFQK/W26ZPWYC5rLuhMweYkN7?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	IdtP8nbu04ZdNFQtSk7eEBNtqbRe/pI55+5dmM8tdJUyM/5URgHscT7RzZNoMdoZKWLtOm0RlcCgm0Xv5SpVoTuu9W4FmtakDYP77sEipr6UTimYa9Xf3oGBV3vyJyOYtfb/AkJGJgZbsfOZFoM9L7kHfyt3aan2/d5TeDfhdBhzeuw7eoyBvfff9Ban4Z7blCQdywRQFNX14nXkU4FC5K9RfdXlqYRTD2LUxCZfj1Ttarip0qfLOjQXLrlB/69O5Z5Ao9S6zP72bchEgs3tVKWL5Rec0PgdpGFWH+P7soW1/muDsgBYH8vKiEwBnYaSlq8MmmwTctB7z714zWruONKkHCgmv/Z0BIzebueUKBUbgv5wWdELQnKWNf2noesM8VrR/4pLIGltjAcZwAlCnsnBr8WaovmkaOtn/TUK7KBngR2CFAhyYZvpmCCuyHhZaqorYTBSE6gaVmwKXRZ3x6arsrs8IGSxh7YnvUxIKNxrMt3KbMxTuB4Fi7dxEFQ0yUBldusPKJUj9/mJ8eIS0o1zeQtonQxGTR6S6r0EjWgpjdBcSPY+AP5CBuewgOPTTJmPbFTso6SGReplNr0WfWLrEwg7D0gWIMOkpHGw0thzeC25Zhxmefz0HY8r7aCUx5KO3xy/y+rldYhHHdcDar3Qz0xlvAWTGo8//Dcx0DCcPyv+aYv9eFfxC6gLQkpL7cxSix+J/EPj2tYY/JSr5ZTOyQBRzQUuqc+iOCuQgkqUuoRMg0EKWoFVcK91itnb9Svs2j9ljCQWZ6vW0KBYlmJ4/5kssIakpQvfWt3r77T1uzZos5ia2Et8R/cnZUmJB3Fv4M7GWG4/Pb0uZjSgNye6IrEzxz+6FCRvXHVqkJeZiH01M5skakrnG6IqsM+SJUyz4s/gvhv/thSeWBUDG9YqV76wi8bHLm/lj4ZLNAQ=
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 72d1de69-7178-4fda-0ae3-08dbce47e671
X-MS-Exchange-CrossTenant-AuthSource: MW4PR03MB6428.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Oct 2023 13:00:40.9714
 (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: Awso6ccQdKTcw/YivPRlKJAAGeLFeKfhNV6rPSnG6o4nHlnVLX2rWTWeiZyZWwDfIut7vHW8+EWNFRvcW5anNQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN8PR03MB4946

On Mon, Oct 16, 2023 at 02:35:44PM +0200, Jan Beulich wrote:
> On 06.10.2023 15:00, Roger Pau Monne wrote:
> > --- a/xen/arch/x86/domain.c
> > +++ b/xen/arch/x86/domain.c
> > @@ -1580,6 +1580,10 @@ long do_vcpu_op(int cmd, unsigned int vcpuid, XEN_GUEST_HANDLE_PARAM(void) arg)
> >      {
> >          struct vcpu_register_time_memory_area area;
> >  
> > +        rc = -ENOSYS;
> > +        if ( 0 /* TODO: Dom's XENFEAT_vcpu_time_phys_area setting */ )
> > +            break;
> > +
> >          rc = -EFAULT;
> >          if ( copy_from_guest(&area.addr.p, arg, 1) )
> >              break;
> > --- a/xen/common/domain.c
> > +++ b/xen/common/domain.c
> > @@ -1998,6 +1998,10 @@ long common_vcpu_op(int cmd, struct vcpu *v, XEN_GUEST_HANDLE_PARAM(void) arg)
> >      {
> >          struct vcpu_register_runstate_memory_area area;
> >  
> > +        rc = -ENOSYS;
> > +        if ( 0 /* TODO: Dom's XENFEAT_runstate_phys_area setting */ )
> > +            break;
> > +
> >          rc = -EFAULT;
> >          if ( copy_from_guest(&area.addr.p, arg, 1) )
> >              break;
> 
> ENOSYS is not correct here. EPERM, EACCES, or EOPNOTSUPP would all be more
> correct.

I don't think so, common_vcpu_op() default case does return -ENOSYS,
and the point of this path is to mimic the behavior of an hypervisor
that doesn't have the hypercalls implemented, hence -ENOSYS is the
correct behavior.

> 
> > --- a/xen/common/kernel.c
> > +++ b/xen/common/kernel.c
> > @@ -607,7 +607,11 @@ long do_xen_version(int cmd, XEN_GUEST_HANDLE_PARAM(void) arg)
> >          switch ( fi.submap_idx )
> >          {
> >          case 0:
> > -            fi.submap = (1U << XENFEAT_memory_op_vnode_supported);
> > +            fi.submap = (1U << XENFEAT_memory_op_vnode_supported) |
> > +#ifdef CONFIG_X86
> > +                        (1U << XENFEAT_vcpu_time_phys_area) |
> > +#endif
> > +                        (1U << XENFEAT_runstate_phys_area);
> 
> No provisions here for the "disabled for this domain" case?

TBH I'm not sure the `if ( 0` above are of much help, if we ever want
to provide toolstack overwrites for those it's fairly easy to spot the
paths that need to be patched anyway.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 13:04:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 13:04:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617531.960185 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsNH7-0001fg-9x; Mon, 16 Oct 2023 13:04:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617531.960185; Mon, 16 Oct 2023 13: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 1qsNH7-0001fZ-7H; Mon, 16 Oct 2023 13:04:49 +0000
Received: by outflank-mailman (input) for mailman id 617531;
 Mon, 16 Oct 2023 13:04: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=u61L=F6=invisiblethingslab.com=marmarek@srs-se1.protection.inumbo.net>)
 id 1qsNH5-0001fT-6h
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 13:04:47 +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 91d9a076-6c24-11ee-9b0e-b553b5be7939;
 Mon, 16 Oct 2023 15:04:44 +0200 (CEST)
Received: from compute2.internal (compute2.nyi.internal [10.202.2.46])
 by mailout.nyi.internal (Postfix) with ESMTP id 357FA5C03D7;
 Mon, 16 Oct 2023 09:04:41 -0400 (EDT)
Received: from mailfrontend2 ([10.202.2.163])
 by compute2.internal (MEProxy); Mon, 16 Oct 2023 09:04:41 -0400
Received: by mail.messagingengine.com (Postfix) with ESMTPA; Mon,
 16 Oct 2023 09:04:39 -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: 91d9a076-6c24-11ee-9b0e-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=
	1697461481; x=1697547881; bh=xfCk1H6yPjURpgzTVBLKLCz6DqhCoRy4iVi
	CI/lUIfw=; b=fMeU5viM7GNom2rU1dkI2xK8OKzMUum2zP5S6swXhy2zVzskQj4
	qlx+vyEm6WIfh2W1YIxikEMXFfDC0/d+aG4iz+JG66uVnjf7m1etuCAgmWZazMqj
	SgVzP4AbhEK0XhEbDD1G9kkX+VHF7069sRTNtUvlVANmGBBUwjTLw/QWDqYZ+vuG
	MrgedNq1qedTF42M55xZMP1LbqrdAWdIVkDLySjIViwTggRDsy9YWVKbTO1Mjep4
	r6qaXMUeLZRVGwiT6aEufeTgOPvAEoCi3HHFc4KDThWdwXrIME5tG0y5kPW/LXL3
	rvT43DuEZEbEJa8pwTNSWcwmMMHnNYV5fdg==
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=fm3; t=1697461481; x=1697547881; bh=xfCk1H6yPjURp
	gzTVBLKLCz6DqhCoRy4iViCI/lUIfw=; b=TKx8fyjQX/u6KGpZbVEXtlq5EKTD1
	TaV/80k+9pYpBaHW6VfKp6Bu2lg4IV/882MZDyOauUZNeSOnkaVgxAGqSbA5d/7w
	1juUPNX7x18Ze1hZU3CrLi88xgeQTPDlJXy0lYfjk10qIKvCCACw8gtbiR73D7ty
	729CZFGpNd1DyfBRPb3w6mkBo3IooyLg/rpqMOiVUprl9gLupj3ip2mag4cwR+fd
	/3GYyD6mU6PF6rWS4J8+3dVypcECkhr1bgZTzVJBgzxqKKELMhZyE60zsJfziXmp
	QB6glF0/jIyfBWNowfOMPwDyPGbOrQ3gRi1sH5KWA7pv+ML+Z2n4yv4BQ==
X-ME-Sender: <xms:6DQtZfT6uSllhXuw_POxUITdwQZKHe12cZ6wrgmDixuWfoAecUFvjA>
    <xme:6DQtZQwujRTyLGs9wyzqVKZovuhLuVQPwC7ule7XQ92HNAZMWvKIODhdyDwJmh-Dt
    dNqdPZ7jJrXng>
X-ME-Received: <xmr:6DQtZU2762mOR7LAGtlbPoWjlfak7_EeLWg5ZtfgWb9TyA9hlyJ4AW7w1xk-_NJbFjClPiIzkJ0-adoPNCCwMCr16PVxdkM3yoA>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvkedrjedtgdehjecutefuodetggdotefrodftvf
    curfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfghnecu
    uegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmdenuc
    fjughrpeffhffvvefukfhfgggtuggjsehgtderredttdejnecuhfhrohhmpeforghrvghk
    ucforghrtgiihihkohifshhkihdqifpkrhgvtghkihcuoehmrghrmhgrrhgvkhesihhnvh
    hishhisghlvghthhhinhhgshhlrggsrdgtohhmqeenucggtffrrghtthgvrhhnpefgudel
    teefvefhfeehieetleeihfejhfeludevteetkeevtedtvdegueetfeejudenucevlhhush
    htvghrufhiiigvpedtnecurfgrrhgrmhepmhgrihhlfhhrohhmpehmrghrmhgrrhgvkhes
    ihhnvhhishhisghlvghthhhinhhgshhlrggsrdgtohhm
X-ME-Proxy: <xmx:6DQtZfBZhZn_lhBNgCz_KXv33_R8LoHUd8PCBKW1BgdSb9oUbZH19g>
    <xmx:6DQtZYivGHKiKXvA6-B_M_msZtcEkkGMXySrYrPIHSDXY7rUfA4ZSw>
    <xmx:6DQtZTqJfQRQvDh2CSKbtdQTjvG03BgLKJY5TqJ_vkazLyWZ0RTW6Q>
    <xmx:6TQtZQfZJ3dkWp0NQ2KHzJ20KmGQrbs0D2thiLZoVHt4pZf0PqP3uA>
Feedback-ID: i1568416f:Fastmail
Date: Mon, 16 Oct 2023 15:04:36 +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: linux-kernel@vger.kernel.org, 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: <ZS005ahNvQ/drB8I@mail-itl>
References: <20221118154931.1928298-1-marmarek@invisiblethingslab.com>
 <ZSz8xu8E9-02Ej8D@macbook>
MIME-Version: 1.0
Content-Type: multipart/signed; micalg=pgp-sha256;
	protocol="application/pgp-signature"; boundary="r1P6/8hfNgVVwBfL"
Content-Disposition: inline
In-Reply-To: <ZSz8xu8E9-02Ej8D@macbook>


--r1P6/8hfNgVVwBfL
Content-Type: text/plain; protected-headers=v1; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable
Date: Mon, 16 Oct 2023 15:04:36 +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: linux-kernel@vger.kernel.org, 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 Mon, Oct 16, 2023 at 11:05:10AM +0200, Roger Pau Monn=C3=A9 wrote:
> On Fri, Nov 18, 2022 at 04:49:23PM +0100, Marek Marczykowski-G=C3=B3recki=
 wrote:
> > 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
> Is this last point strictly needed?  From the description above it
> seems Linux only cares about enabling MSI(-X) without the disable INTx
> bit set.

I'm not sure, but it seems logical to have it symmetric.

>=20
> >=20
> > Fixes: 5e29500eba2a ("xen-pciback: Allow setting PCI_MSIX_FLAGS_MASKALL=
 too")
> > Signed-off-by: Marek Marczykowski-G=C3=B3recki <marmarek@invisiblething=
slab.com>
> > ---
> > 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-pci=
back/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 *d=
ev)
> >  	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 *d=
ev)
> >  		if (val & PCI_MSIX_FLAGS_ENABLE)
> >  			ret |=3D INTERRUPT_TYPE_MSIX;
> >  	}
>=20
> Since we are explicitly hiding INTx now, should we also do something
> about MSI(X) being both enabled at the same time?  The spec states:
>=20
> "System configuration software sets one of these bits to enable either
> MSI or MSI-X, but never both simultaneously. Behavior is undefined if
> both MSI and MSI-X are enabled simultaneously."
>=20
> So finding both MSI and MSI-X enabled likely means something has gone
> very wrong?  Likely to be done in a separate change, just realized
> while looking at the patch context.

Pciback try to prevent such situation (that's exactly the point of
checking the current interrupt type). But if you get into such situation
somehow anyway (likely bypassing pciback), then pciback will still allow
to disable one of them, so you can fix the situation (the enforcement of
"only one type at the time" is done setting the enable bit, but you can sti=
ll
clear it).

If both MSI and MSI-X are enabled xen_pcibk_get_interrupt_type() will
return both bits set.

> > +
> > +	/*
> > +	 * 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/=
xen/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 *d=
ev, 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 */
>=20
> This comment needs to be adjusted to note that we allow enabling while
> INTx is not disabled in the command register, in order to please
> Linuxes MSI(-X) startup sequence.

Ok.

> FWIW, another option would be to simply disable INTX here once MSI(-X)
> is attempted to be enabled, won't that avoid having to modify
> xen_pcibk_get_interrupt_type()?

I would rather avoid implicit changes to other bits, it may lead to hard
to debug corner cases (in this case, for example, if domU decides to
disable MSI-X later on, it would be left with INTx disabled too, so no
interrupts at all).

--=20
Best Regards,
Marek Marczykowski-G=C3=B3recki
Invisible Things Lab

--r1P6/8hfNgVVwBfL
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQEzBAEBCAAdFiEEhrpukzGPukRmQqkK24/THMrX1ywFAmUtNOUACgkQ24/THMrX
1yztpQgAkT8KDyx4qVFedbSwGCFp1+6KqSeKRoiCNIFk9pHjtqoW2v1uwa4NUNmn
GyqviL5BUVivtUoTFR2V/7NBzGDJNK/fMZg4k9EjibnZNuGXqz/mhk/hd6Nh2rL6
bXFVED2ba17N5IE0rj15ux1bZyNvnxATi7gEECSAS0eNrg3IaU26JxalHmuawbAy
5d5ptPgAnOYkSzoDWlFfOge2PBBmny900ZKD8BnG+A5KICnRx1GiE3FWOumUGfWO
M8nJWdj9Xnll58UvSClexi6clpr1RoqHyKX4T3B2Tk5MDkkvn7DpYPUkJ2Yv0kbv
tjqBSWCgoJXePGgZr9UwD4mnjgeVVA==
=4jLy
-----END PGP SIGNATURE-----

--r1P6/8hfNgVVwBfL--


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 13:09:03 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 13:09:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617536.960195 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsNL8-0002a3-RI; Mon, 16 Oct 2023 13:08:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617536.960195; Mon, 16 Oct 2023 13:08: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 1qsNL8-0002Zu-NE; Mon, 16 Oct 2023 13:08:58 +0000
Received: by outflank-mailman (input) for mailman id 617536;
 Mon, 16 Oct 2023 13:08: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=fsKw=F6=arm.com=Luca.Fancellu@srs-se1.protection.inumbo.net>)
 id 1qsNL7-0002Zo-77
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 13:08:57 +0000
Received: from EUR03-DBA-obe.outbound.protection.outlook.com
 (mail-dbaeur03on2060b.outbound.protection.outlook.com
 [2a01:111:f400:fe1a::60b])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 283917e3-6c25-11ee-9b0e-b553b5be7939;
 Mon, 16 Oct 2023 15:08:54 +0200 (CEST)
Received: from AS9PR06CA0753.eurprd06.prod.outlook.com (2603:10a6:20b:484::9)
 by AM9PR08MB6291.eurprd08.prod.outlook.com (2603:10a6:20b:284::18)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.34; Mon, 16 Oct
 2023 13:08:51 +0000
Received: from AM7EUR03FT003.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:20b:484:cafe::20) by AS9PR06CA0753.outlook.office365.com
 (2603:10a6:20b:484::9) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.35 via Frontend
 Transport; Mon, 16 Oct 2023 13:08:51 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM7EUR03FT003.mail.protection.outlook.com (100.127.140.227) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6907.20 via Frontend Transport; Mon, 16 Oct 2023 13:08:51 +0000
Received: ("Tessian outbound fdf44c93bd44:v211");
 Mon, 16 Oct 2023 13:08:50 +0000
Received: from 7e551297891f.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 A40BFDB4-125E-4A7D-872D-E4955B770E92.1; 
 Mon, 16 Oct 2023 13:08:39 +0000
Received: from EUR01-VE1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 7e551297891f.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Mon, 16 Oct 2023 13:08:39 +0000
Received: from AM6PR08MB3749.eurprd08.prod.outlook.com (2603:10a6:20b:8f::22)
 by DB4PR08MB9238.eurprd08.prod.outlook.com (2603:10a6:10:3fa::8) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.35; Mon, 16 Oct
 2023 13:08:34 +0000
Received: from AM6PR08MB3749.eurprd08.prod.outlook.com
 ([fe80::501a:489c:410b:338]) by AM6PR08MB3749.eurprd08.prod.outlook.com
 ([fe80::501a:489c:410b:338%7]) with mapi id 15.20.6886.034; Mon, 16 Oct 2023
 13:08: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: 283917e3-6c25-11ee-9b0e-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=4CRzj+Q6M5bEy6OHMLiujjYexY74oi0euhwRqE5xxKU=;
 b=v7Bq8zaqWwjLbEJzOZaQ1+UQxRD6JzoUJp8qXBzArsqF5tipI7uOdBZ+b2HZgLspNN/HETmKOH62Gi7+eMx+ac6e0ocvmaibj0vxDKAsRuvBwSu1UcDwXyIW9uqEIiu3qKVq0LS3kP4/9s/4JnABegJEKJFILkYkXcixC33bjMo=
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: d0c0be91ec4a6991
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=VAzILOXH+zQjSRe5m6ggjTOWUQ52FNNSiImCodb6EaiXRCl1Qu6E961Jj2Oc9LKOG6JpqDGNOoKDAnwj6f4gWVVLX8OSc4Ckrb1W7KaMOwIvtI0SiolizbXLTrR5Tij5BdN7pwm5afYOovr1fF5C+23hMA0LZwxefiqbMvi0ISuV1VPGgV3yK9RRKGbZ1ckDpiB3Tk2e+4Zt2GG2hy9cKT0EaiTjQ8ih5hZzo47JbahFPR3vIsCzonmiAxd+AZOhh2erY91MAM2hEyozAiUvR8XdCaDYIb6Wv02wXwOI64OfEN18DEQEKWBGIHrQkIdS2FiOvTVTd+ihjUf0XR8JbA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=4CRzj+Q6M5bEy6OHMLiujjYexY74oi0euhwRqE5xxKU=;
 b=clhP4m8IswwSlaK7drC40XEluaED9fRHQavOV9JTjVlF7++9CDeOW0N8M5cMZGV+XpBdOMpiW1eAKFXbaQpJxL/HfEWhqxVlzl+yRvkYMIFYQbOAnfM1LKa4coITcvCQfWaCV7BUYOUf/DtBTD5MaFo6gDtQyFHlRpYAUrgOSmgn1nFPrMtNxjHMdbI9ssNE1ApenUCM0WsTBvO/Vyh6IqbVYDe186bWm8mamuBOABj7yRPKcOHGYU1yBu5f+1ysBX9XdhYIB8SHwzX4mDw9D8qM8uIPZbgShQRsI4S62am9OpeaKYL6kmMYHF4zToTsFUCCAmKM7vlAT/lxnOgY6Q==
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=4CRzj+Q6M5bEy6OHMLiujjYexY74oi0euhwRqE5xxKU=;
 b=v7Bq8zaqWwjLbEJzOZaQ1+UQxRD6JzoUJp8qXBzArsqF5tipI7uOdBZ+b2HZgLspNN/HETmKOH62Gi7+eMx+ac6e0ocvmaibj0vxDKAsRuvBwSu1UcDwXyIW9uqEIiu3qKVq0LS3kP4/9s/4JnABegJEKJFILkYkXcixC33bjMo=
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>,
	Henry Wang <Henry.Wang@arm.com>
Subject: Re: [for-4.18][PATCH] xen/arm: Check return code from recursive calls
 to scan_pfdt_node()
Thread-Topic: [for-4.18][PATCH] xen/arm: Check return code from recursive
 calls to scan_pfdt_node()
Thread-Index: AQHaAC7Tqepkd8B7bkmUvN4/EZGGUrBMY1AA
Date: Mon, 16 Oct 2023 13:08:33 +0000
Message-ID: <AE8C023B-4C82-4D6E-8E7C-32E560CD874B@arm.com>
References: <20231016124559.8220-1-michal.orzel@amd.com>
In-Reply-To: <20231016124559.8220-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_|DB4PR08MB9238:EE_|AM7EUR03FT003:EE_|AM9PR08MB6291:EE_
X-MS-Office365-Filtering-Correlation-Id: 8aa8be33-8258-44f1-8bc4-08dbce490ac3
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:
 JA3BqsUwjwLc9vw4uxpZ4dbMzKXlNcMHvWx7BZ53dWqrslY3AMVkKqRnZhzk9i3M7rK3P/JBYT1Ka942iaheUiStBgD8z2D1VcIfoa+GsG6VFV70AUQHjxulkXgbF7bUugJBG7LnU9b6CR5Le9CmA0AHDkKWkZZLwd/s6d6Lgp7Q5nteFPug2xEOMlos24LyKhUzAmkurEbuEElMbx8oiXBRqA1ktJgZNrHwSbKJND0CdyCrAoHsK7ycS/E5DUf9TMEyBrzXeUVa8Xn3k49o665MYQjz2fUvu3/Dyz4lJ2WTR84XbnAMLBb9xmA0XwC7k4yGVzXeA0nYq033ynpp9AQHJWizG5YlD1kQ8UzlC9qP7qJIrPx+Zntk5C14x+OeryIhQp2nDb+OVfchZv+ErDcEZPymD2lxHy3kHKKP9MTcFgGkzgLdV4BMN+fz9wlEXcq2ipoJ5XclMJrWi3GZWo/IXg4aC+B9U1klqYPW0ZRlyVxTjSuitwaefLyYDFY3I7i3G+v4kJpnwpowMThO1D2r/eV+HoGlHvcOFJX/PmP2L0wNJIiDCRqn9nB7grcIf8L1i5snvzMlPY/+4xUuig10gPvSqwjBg4jdMggh/KiF4n0DFxdL2BnmA+3mMBTnyEQ0WuNBgezpHeL1cRmk0w==
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)(136003)(39850400004)(346002)(396003)(366004)(230922051799003)(1800799009)(186009)(64100799003)(451199024)(6486002)(66446008)(478600001)(76116006)(6916009)(66476007)(66556008)(66946007)(64756008)(91956017)(2616005)(316002)(6506007)(71200400001)(6512007)(26005)(53546011)(54906003)(5660300002)(8676002)(8936002)(4326008)(2906002)(41300700001)(86362001)(33656002)(36756003)(122000001)(38070700005)(38100700002)(83380400001)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="us-ascii"
Content-ID: <475A0AA6B6A2704DBF86CE9F3F56ADA2@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB4PR08MB9238
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:
 AM7EUR03FT003.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	910fca28-ae21-4cb2-4a1d-08dbce49002f
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	cqnx45v+Tg0mBW80u2ysRG2tdbZ08eQX9wZDjIXFsIc0xm1ew4n0wwZrBHcu//4nvEpsC2FYImrLzccbr1yGxRM16+4D2ogUuHgtu7fydrpc1byY+aTwbeLArdIaUw8gGO3M5x8R+j1wWv/r389uaXoOExl9g6N6wpM8aBaSv1QFK4Vlj6ettCBhfKgHnq24mHyGHcS4hpRSxrmmxNfGFt2pyoll8mNBeSBtSH7colOEp7rxfwvlGQs2A9sTOqWSzVZulhmQTRhAkhuTjmnQ3nKv1tuYNVZhkvaHCpIURalXFUCFlUBAknn3HOHzk8MpYR0IrbaG568wQogiFdlb3zFsqnAnH3WfA9s1P4lj1VRMpkj01Mxjb3wuN0SdXIk1tbdok5lN29qtxQ5NFkO+qmQAtwHYirG+7TRVnpWNs3Yqf97C5CtW5FhpqExgUB5yz7zSJGWMBQN6MQYyA5GFImx+8hCTsS8LqxLJVhYhJzY+fjLCNTrWq/2joGpxrmKIimVSMEXgJy4KuVaK4CymgiAkGLOf5Va39Hv8LXxOri7fM1KuZfuiBK+FG1d5DogRACfYDMKnd0l2J1kYqnSqicMFOcBaEeDnJDteU+RDFIErFP2VyIeQlidC/Nz7Dokk8oUXLs61RPRDIKDFbonXaPsOd53qeVTTUNGuwrG5Uryf81m1TfxscqZ+BRX1/DVSJimtLxAfPyGJSNxPCcH7aZ8M4+nWtJSX8P37wHrLyV9DDzMJp8Yq4dZEXDjJMJOx
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)(230922051799003)(64100799003)(82310400011)(451199024)(186009)(1800799009)(40470700004)(46966006)(36840700001)(33656002)(40480700001)(8936002)(8676002)(6862004)(4326008)(5660300002)(2906002)(41300700001)(40460700003)(86362001)(36756003)(6506007)(82740400003)(356005)(81166007)(2616005)(26005)(83380400001)(6512007)(478600001)(336012)(36860700001)(6486002)(47076005)(53546011)(316002)(54906003)(70586007)(70206006);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Oct 2023 13:08:51.0954
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 8aa8be33-8258-44f1-8bc4-08dbce490ac3
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:
	AM7EUR03FT003.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR08MB6291



> On 16 Oct 2023, at 13:45, Michal Orzel <michal.orzel@amd.com> wrote:
>=20
> At the moment, we do not check a return code from scan_pfdt_node()
> called recursively. This means that any issue that may occur while
> parsing and copying the passthrough nodes is hidden and Xen continues
> to boot a domain despite errors. This may lead to incorrect device tree
> generation and various guest issues (e.g. trap on attempt to access MMIO
> not mapped in P2M). Fix it.
>=20
> Fixes: 669ecdf8d6cd ("xen/arm: copy dtb fragment to guest dtb")
> Signed-off-by: Michal Orzel <michal.orzel@amd.com>

Hi Michal,

Yes makes sense!

Reviewed-by: Luca Fancellu <luca.fancellu@arm.com>


> ---
> @Henry:
> This is a bug fix, so I think we should have it in 4.18 given the possibl=
e
> consequences I described in the commit msg. I don't see any risks as this=
 change
> only checks the return code for an error.
> ---
> xen/arch/arm/domain_build.c | 7 +++++--
> 1 file changed, 5 insertions(+), 2 deletions(-)
>=20
> diff --git a/xen/arch/arm/domain_build.c b/xen/arch/arm/domain_build.c
> index 24c9019cc43c..49792dd590ee 100644
> --- a/xen/arch/arm/domain_build.c
> +++ b/xen/arch/arm/domain_build.c
> @@ -2872,8 +2872,11 @@ static int __init scan_pfdt_node(struct kernel_inf=
o *kinfo, const void *pfdt,
>     node_next =3D fdt_first_subnode(pfdt, nodeoff);
>     while ( node_next > 0 )
>     {
> -        scan_pfdt_node(kinfo, pfdt, node_next, address_cells, size_cells=
,
> -                       scan_passthrough_prop);
> +        rc =3D scan_pfdt_node(kinfo, pfdt, node_next, address_cells, siz=
e_cells,
> +                            scan_passthrough_prop);
> +        if ( rc )
> +            return rc;
> +
>         node_next =3D fdt_next_subnode(pfdt, node_next);
>     }
>=20
> --=20
> 2.25.1
>=20
>=20



From xen-devel-bounces@lists.xenproject.org Mon Oct 16 13:14:14 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 13:14:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617541.960205 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsNQ6-0004nN-Hl; Mon, 16 Oct 2023 13:14:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617541.960205; Mon, 16 Oct 2023 13: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 1qsNQ6-0004nG-Ee; Mon, 16 Oct 2023 13:14:06 +0000
Received: by outflank-mailman (input) for mailman id 617541;
 Mon, 16 Oct 2023 13:14: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=u61L=F6=invisiblethingslab.com=marmarek@srs-se1.protection.inumbo.net>)
 id 1qsNQ5-0004nA-U3
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 13:14:05 +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 dfcee444-6c25-11ee-98d4-6d05b1d4d9a1;
 Mon, 16 Oct 2023 15:14:04 +0200 (CEST)
Received: from compute5.internal (compute5.nyi.internal [10.202.2.45])
 by mailout.nyi.internal (Postfix) with ESMTP id 96AE65C039B;
 Mon, 16 Oct 2023 09:14:01 -0400 (EDT)
Received: from mailfrontend1 ([10.202.2.162])
 by compute5.internal (MEProxy); Mon, 16 Oct 2023 09:14:01 -0400
Received: by mail.messagingengine.com (Postfix) with ESMTPA; Mon,
 16 Oct 2023 09:14: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: dfcee444-6c25-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
	invisiblethingslab.com; h=cc:cc:content-transfer-encoding
	:content-type:content-type:date:date:from:from:in-reply-to
	:message-id:mime-version:reply-to:sender:subject:subject:to:to;
	 s=fm2; t=1697462041; x=1697548441; bh=4l799Etjsd61etoKzKWXHhkW7
	EpAA6Zrh8WZJFoVuBk=; b=Q4ad2P67UxYuPBTo+McVbi1NM1+QQZpwwIceSxqRR
	HtB2bTO7YjQQYTJiHVC7pQZNxbG9WS/HBiXpyU2E7+eyS4+y+aCjMJ97Uz+0zQHP
	LasIi4tteOstoIvBDNqWcLNaZ5zk8DeoKcW9vgESSbLmwJJBGutYv+zACr9vmqvy
	urYPWe0OhjdByauDyJUjgqONAziO3rLhNd9bZWaj4AEBmTesN0XITspPxU2tLW33
	DV4e4IG1NPb8bu5oRpUHz6zaxl+ZdbvgljoysS4gj/yDQs9NfUHWsnmJM/lCByDr
	E2gSWMP3ldSoCB9QRBicaJad1KL5mECSA9RW1/6uGCoig==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
	messagingengine.com; h=cc:cc:content-transfer-encoding
	:content-type: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=fm3; t=1697462041; x=1697548441; bh=4
	l799Etjsd61etoKzKWXHhkW7EpAA6Zrh8WZJFoVuBk=; b=ZkdZbrGOYWZUq6T5u
	GHuv6ICTTiXmHuNqH7nRx9uW0XPkeKVN6JQfDRTjV5MANp+xMF0kycL5hEekwCTE
	PUU43Pm/f9Y8e+i57OKNcyRWfLxyQSWpoGhYGswME3y3D5bWwPHDmuUbPlyKlTNz
	PehThgfGxNiqxVaS6dMDsUQFvm1f3Gexf91UWb/ZReXz42T2gJ5DpeEzqpkSNdbs
	zvjuPgMaUANMVo6SU68AAxYukshJ9va2zsDaGscCr+FlwVMRFczgFswtF+kgHWj/
	4aNABTRgcMKh5RwQxxCY5N19m5dHMCllZVi7KvWdKj24ax4ZCz5lxFxRHm8rZphT
	KgYvA==
X-ME-Sender: <xms:GTctZWUph7h101jrh0d6Sxaalqdq-khmv3LRE8Fgo_Dw7ojheh2GKA>
    <xme:GTctZSl6zwcr_ie-1aUrSFrySBCOjWhes9v1xIMu-AEiKZr9xH3kDgUjcrV8nl86w
    7RkcxIqqromPQ>
X-ME-Received: <xmr:GTctZaYxRN5yumTPtXS1uQAbdWE_McLxcJ6-oa7uq-Dufr7cR2coAEkdhONCIAklTvRp6HaSiAM-bMXCCdco_-XauKoFCAAnyPEvvHLVuBF_v7CsmTbG>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvkedrjedtgdehlecutefuodetggdotefrodftvf
    curfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfghnecu
    uegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmdenuc
    fjughrpefhvfevufffkffogggtgfesthekredtredtjeenucfhrhhomhepofgrrhgvkhcu
    ofgrrhgtiiihkhhofihskhhiqdfikphrvggtkhhiuceomhgrrhhmrghrvghksehinhhvih
    hsihgslhgvthhhihhnghhslhgrsgdrtghomheqnecuggftrfgrthhtvghrnhepleekhfdu
    leetleelleetteevfeefteffkeetteejheelgfegkeelgeehhfdthedvnecuvehluhhsth
    gvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomhepmhgrrhhmrghrvghksehi
    nhhvihhsihgslhgvthhhihhnghhslhgrsgdrtghomh
X-ME-Proxy: <xmx:GTctZdWzj-USmwUTla5PIabsefevstfN5G_s04B1vNJhEvqA3wx7hw>
    <xmx:GTctZQm0YJQMLz7gnA9PlBDzvRnylWx3k5YSUEn2W9ZlBHk0Fn5Y1w>
    <xmx:GTctZSdaH1aDfSXYZLLhyfpeLPqGvqN_Jye3iudEAVHKf-3f_CTdVw>
    <xmx:GTctZRDQtvfG3o-kScK35qM6y6-lxwHwJn1uaxZE38nyf8Ctc0h_sA>
Feedback-ID: i1568416f:Fastmail
From: =?UTF-8?q?Marek=20Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>
To: linux-kernel@vger.kernel.org
Cc: =?UTF-8?q?Marek=20Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>,
	Juergen Gross <jgross@suse.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>,
	Jan Beulich <jbeulich@suse.com>,
	xen-devel@lists.xenproject.org (moderated list:XEN HYPERVISOR INTERFACE)
Subject: [PATCH v4] xen-pciback: Consider INTx disabled when MSI/MSI-X is enabled
Date: Mon, 16 Oct 2023 15:13:25 +0200
Message-ID: <20231016131348.1734721-1-marmarek@invisiblethingslab.com>
X-Mailer: git-send-email 2.41.0
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

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).

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

Fixes: 5e29500eba2a ("xen-pciback: Allow setting PCI_MSIX_FLAGS_MASKALL too")
Signed-off-by: Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
Acked-by: Juergen Gross <jgross@suse.com>
---
Changes in v4:
 - update comment (retain A-b)
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   |  8 ++++++-
 drivers/xen/xen-pciback/conf_space_header.c   | 21 +++----------------
 3 files changed, 23 insertions(+), 25 deletions(-)

diff --git a/drivers/xen/xen-pciback/conf_space.c b/drivers/xen/xen-pciback/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 = 0;
 
-	err = pci_read_config_word(dev, PCI_COMMAND, &val);
-	if (err)
-		return err;
-	if (!(val & PCI_COMMAND_INTX_DISABLE))
-		ret |= 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 |= 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 = pci_read_config_word(dev, PCI_COMMAND, &val);
+		if (err)
+			return err;
+		if (!(val & PCI_COMMAND_INTX_DISABLE))
+			ret |= INTERRUPT_TYPE_INTX;
+	}
+
 	return ret ?: INTERRUPT_TYPE_NONE;
 }
 
diff --git a/drivers/xen/xen-pciback/conf_space_capability.c b/drivers/xen/xen-pciback/conf_space_capability.c
index 097316a74126..1948a9700c8f 100644
--- a/drivers/xen/xen-pciback/conf_space_capability.c
+++ b/drivers/xen/xen-pciback/conf_space_capability.c
@@ -236,10 +236,16 @@ static int msi_msix_flags_write(struct pci_dev *dev, int offset, u16 new_value,
 		return PCIBIOS_SET_FAILED;
 
 	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, but do
+		 * allow enabling MSI(-X) while INTx is still active to please Linuxes
+		 * MSI(-X) startup sequence. It is safe to do, as according to PCI
+		 * spec, device with enabled MSI(-X) shouldn't use INTx.
+		 */
 		int int_type = xen_pcibk_get_interrupt_type(dev);
 
 		if (int_type == INTERRUPT_TYPE_NONE ||
+		    int_type == INTERRUPT_TYPE_INTX ||
 		    int_type == field_config->int_type)
 			goto write;
 		return PCIBIOS_SET_FAILED;
diff --git a/drivers/xen/xen-pciback/conf_space_header.c b/drivers/xen/xen-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 offset, u16 value, void *data)
 		pci_clear_mwi(dev);
 	}
 
-	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));
 
 	cmd->val = value;
 
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Mon Oct 16 13:19:41 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 13:19:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617546.960215 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsNVK-0006Zp-4a; Mon, 16 Oct 2023 13:19:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617546.960215; Mon, 16 Oct 2023 13: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 1qsNVK-0006Zi-1e; Mon, 16 Oct 2023 13:19:30 +0000
Received: by outflank-mailman (input) for mailman id 617546;
 Mon, 16 Oct 2023 13:19: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=BBjo=F6=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qsNVI-0006Za-Lv
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 13:19:28 +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 a1d09c63-6c26-11ee-98d4-6d05b1d4d9a1;
 Mon, 16 Oct 2023 15:19:27 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by VI1PR04MB9956.eurprd04.prod.outlook.com (2603:10a6:800:1e1::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.35; Mon, 16 Oct
 2023 13:19:24 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%6]) with mapi id 15.20.6886.034; Mon, 16 Oct 2023
 13:19: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: a1d09c63-6c26-11ee-98d4-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=GGQIUGdGOywMLB4IG7873pziqC1sKPWIinxvA5W+lESEOmbs+vpMHY5b59FzjuwlnOdvZ5noBiI20H8vhr93Fw382wt0HwSJNFGjVOpSlyBSoUVmP6eUwl+ElMyzsRHlzvQkXmwyn7j5nUYKtECq+4fkYsDNj27D+0I+itO5LM6E4KjsYqMzmdisxtCVmkvroiw/Y3i10hInF0kW/q7GsYvkOJmaP1G6LRpAwKeZ8DvywjJEedKQqYUDr6LUQkZzsyG0O4NNM8U5g3JdqsAGkSYzxQwMWOq6SADqiGXQkgNf2VYWoF29a24hvFMF3RYz2p5XaYBiQ/o/+l5HBx4/fQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=kpx+Yix6AQFVozW9xTmDMx85TJ9CpNJSc6IEQic2RaA=;
 b=eRpIa2uuE3aTPY+2+I5jJXzFYsiyeHKw1asfJspdyKXvWA2Wl1Hxep9jfNda+gseiEOl6oXLP3t3sH8luGc4x93mx8xIXpfcqcXn6N9xEwB6F4Y98U4T7yRYtZGDb1GP6VEEkI/DuH4BTxA6Ek4gNB/S5FY23rvCg3EXhTSkvkTvx8BkecQj6jA/xoBOr1VywgzQjOq1W5fIg4ML3JfsOO+aBLzWc258SC5FKsQkZXNTfvIEDxlg0ddJoS5/j3GVThpY88Vh4oy7nB8DSCXZ4R/u6nh7583itcmYMd1ej+S+Urvi86vplg4cBJMxw+vdg5MbrkTLXcAU8MaC/KWeGg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=kpx+Yix6AQFVozW9xTmDMx85TJ9CpNJSc6IEQic2RaA=;
 b=aojg4X6hYHyINGZ8Edfk+N488mBuzcwa+6F4crYZKZUq+hMKRW9OTl7e5AgDBCesp+aR8sL/WuXlHJU4c+fB1Uz0Psfrafyl2Sfk8AdQ8IqwXgEG4kck3ewCJzoMUqAfci3Oj+Jy8TLvtlpCpegWzRHOrYwMpGSsqGD/7jLb7MEMhmd0hnZdA9MpKBLDssTCcCP9FmCVqZhJmIi8eiM20kAo00ONQ0fZIZrrHQugsPuH1EGdAX1Fbxe6yJNdsUdaXl4V+0V0ubmJ/JdFpgxABuZ4PX+Vjglfw6LaSyokTMj4v+taVnvMfQOJ0BVenh8q6R3o+pDhPY3jzlD4zvknbw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <ed43fb9f-590a-fd39-ba87-b45acddd19a9@suse.com>
Date: Mon, 16 Oct 2023 15:19: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 for-4.18 v5] xen/pdx: Make CONFIG_PDX_COMPRESSION 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>,
 Xen-devel <xen-devel@lists.xenproject.org>,
 Alejandro Vallejo <alejandro.vallejo@cloud.com>,
 Julien Grall <jgrall@amazon.com>,
 Shawn Anastasio <sanastasio@raptorengineering.com>,
 Oleksii Kurochko <oleksii.kurochko@gmail.com>,
 Henry Wang <Henry.Wang@arm.com>, George Dunlap
 <George.Dunlap@eu.citrix.com>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>, Julien Grall <julien@xen.org>
References: <20231006144405.1078260-1-andrew.cooper3@citrix.com>
 <efc2b22e-6650-4c1f-b4cf-9971d4d08b49@xen.org>
 <ZSAnX3xjM91-tYbE@MacBookPdeRoger>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <ZSAnX3xjM91-tYbE@MacBookPdeRoger>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
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_|VI1PR04MB9956:EE_
X-MS-Office365-Filtering-Correlation-Id: 3c8622d8-c0bf-417d-ec1d-08dbce4a840a
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	stLeJYBMThZmyodNueC2zkWe9nrIRSJctE4D/E2lS01oBkvV2woq2/tf+sDdW8ZCxccPYTwkZNmoi04gxPP5rWvcgFLjd2T87zF0xEu07unOdesx9cqKYpb3fiUaCmBEE8qcgK1Bea5ikWL3YxdKxbaPN3W7mOVIOouJa7xoWt73gFWlOvGGotQJTD4zz71hUGZBJDjag9E1GPQPT5aVTFSTKLwPBEZHWXXa1IR801e0dKo7SM8Iy5xwuX6uyRE2Q1BMmVTJnl1TX1ZVsG9SEcmFKe9RTWS2qGethpGpujjq0RwMEmVYYIFPbB0Pjq4EunDtbmuKtVdrNTG32nEf2XTYgMhp2ppZIKRfUdvAujrxkTg/E71MTZN9YqF6G773ViVss2Jn0ipJlV0kOu3I7OJbOOiOBmKVrBvJ1KLa92N0ItjHnLqAG5F1oZ7r13gOj0YHwIfBPgJ54ZzSlM5oHTc7XIxIyWkxSae9UdhKZqVMlkRjt4rVKMd4k+e/82dID/w+fEUp3PqNCKTHmjiRZW7XZsGnoHiDpEFBMLHTmjDYxKGEygJ/vmOKzYwE+lRgKn7uSycsAEKvADOCFybMY/XrWyh8r9i05aIrGRufbHzFpeYrOk7LQ/zaDL/zS5pF8Ugw0kTDdMHcPbIE75gPCQ==
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)(376002)(366004)(346002)(136003)(230922051799003)(1800799009)(186009)(64100799003)(451199024)(2616005)(83380400001)(6512007)(7416002)(54906003)(66556008)(66476007)(66946007)(8676002)(4326008)(316002)(8936002)(6916009)(53546011)(41300700001)(5660300002)(6506007)(478600001)(6486002)(2906002)(38100700002)(31696002)(86362001)(36756003)(26005)(31686004)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?UVVrbkJhRFZlSHMyS2tJeEpINkUrelNiV2RNNXBJdC9xdklGKzVoM3hSSWVt?=
 =?utf-8?B?K1M1YzBXK1RBb2syY2dHdkVYekthME5PTzBMR3Y5ZURSa0NRUG4wTUI5WVEx?=
 =?utf-8?B?ZUhlNXI4cU0vc0IxNWdHU1ZGRnlPV2l4U0Q5OEx0cDEvNjc1eEczUHhFbko0?=
 =?utf-8?B?OUZEOUpUYjJIQUV3MmQ1cGhWbjhHSVRJSGVENFB1TklweEo2Y1d0QnhaTHNN?=
 =?utf-8?B?T3doelVpTnQwbUhzaGRCdSsyYWhaY3lSL0g1TXZ6UXFMd0hNRzVobnZhdG5L?=
 =?utf-8?B?dEdIZ0NTZm1lMVcvVmNzUHpiREphdUZNb1hSYWZaSW1hM0xwRHpjOXZheGIw?=
 =?utf-8?B?M0hPM2d4SlNTZjFIYXJlRndyeFFIUWF6WXQyUHZKaW11WXlSRFdCajBHQm1C?=
 =?utf-8?B?S0NjcndYdWJ3WnY3WElTL1JBN1QvVitiYkF2NDc0NEU1MVV5amg5WHQrb1pi?=
 =?utf-8?B?eFNCR3ZWaEtLTW5WVTRjZ2ROV0xoY1BmWC95SndIeEFnTng4S2ZtN0EwNHlL?=
 =?utf-8?B?ZjdnQlJNdEI4WUdYa1RGNkJtWnRYY1FOa2lUclRsdXdPN1ZCNFhEQjFoS0ZX?=
 =?utf-8?B?RXJ5WXdOWXV5ZG9FTFlkTFRBR1dJQVMwM2lGemZERm83V3VzVzlrU3dSdTFR?=
 =?utf-8?B?aFNnNi9xUVB5TGxjYWlqYXg4R0NjSmxSUzdUZGFRNytlNEhpZ0pyZTBOTEZs?=
 =?utf-8?B?c0NGRVVtNlg5U0kzclkwdmU3UFVDNWowSm92RU1TS24xakNPTUtYaXJUZHZX?=
 =?utf-8?B?VjFQNEY5OE4wZ1B1bXNYWDFZTTY3T1k0WGk0MnB6K3NXeTJTQ1RhUGJ0WHpI?=
 =?utf-8?B?dTlUeDBuWFh2c0FmTzVIR3djU2p0T01UNTlTenNJL0pwMW1zRllHejYvVmZJ?=
 =?utf-8?B?S1JvWkdzbEFPZmJZeUk1Q0lnU2hkTnRtaHhPeE1yN05pb1QwV3lsd2V0cnAz?=
 =?utf-8?B?WWdleXdodUg4OE4rTTFaVFJiTTIxbVVoTEdUM1JEaktsUk82ZlBYRGcyeG4y?=
 =?utf-8?B?KzF4K29FWithZTY3TC9ERXZaWHhHc2VGYXpmQUN4eFpXckdXWUkwVnFnZk14?=
 =?utf-8?B?SVdnMVp1R2d6TUJYK2hMVmVtSkcyRWFXQU1wWUJWbEJ4bjNnVmdDNC9xdXBY?=
 =?utf-8?B?ZEdQQjJpbmhwSGw4S0Z6dFRYcWFteHYrUmFKaGpiK283QStLdEVLUVdjUXB4?=
 =?utf-8?B?UUhKMUpVODBuSUFBVURVbWxzRXo5eHlMUVdCdUVnYWVLZlVBaXNNclRvVUNP?=
 =?utf-8?B?OXpvZjM2dG1heVUzV0xHVlg5R2pseS9EOHYwdGxWNnFNVXZOMWFNcHFnY2c4?=
 =?utf-8?B?N09SdVhjR2RlbXF4cVYrSm8wbzVCMllsQU9DZDJTSTBUMDdubHRuRDcxN0Ex?=
 =?utf-8?B?Z3NWaWJsMlJuYU5ET0NmQU0wU1l6dUJGRjc2N2kxY2hNbk94VTgyWjRPaXUy?=
 =?utf-8?B?T2JZTFBFeDVPVTFhQmJuRGJLSDlMMGRGTjdSUVhPQUNZRGYrZWl1a2kyaGVm?=
 =?utf-8?B?emQzK1ZSNjJZRGZ1eGdURVRzZ0s1OC91bEtqbktna1FmUzlUTHd5VlNEZFVZ?=
 =?utf-8?B?bmk3V0xEVk04ZUlJZ213SGhmcE1jcUVXNjdlbzFDcitaNGVxUlMvQmhDS25X?=
 =?utf-8?B?b1NiM1F1SzNORlJiSkpUd0VZcDd2cHp1aFVMUjZxelRwVXFMNlF5dTFsdWti?=
 =?utf-8?B?blQwWGF1c1BQZU44Um04ZHEraTNtU2I5dkl0ZHlJa1RTZUt6N2J5VnBUMFdi?=
 =?utf-8?B?RHNXdWttaTEzcEhWV21hZkt4UlpkaVhPSEN0elFNeThNNEhhYnBGYnlmWEpV?=
 =?utf-8?B?RlFJZDdRcTJ2cG5CM0l4blBieTY5bkI3NXVZWStqVmdUY3JPZVdmN1kwdnIv?=
 =?utf-8?B?dlpSWUoySWlBQ3U4SCs2WEpKazFzcE1IRTZvSzh4NG5mRTVBUnZuc3d1Y0xP?=
 =?utf-8?B?REk5UTJwTFc5Z3ZGUkpqQW00WEtIbmhaNGYwTmlIdGFNdVhkTWZqemVtcVIz?=
 =?utf-8?B?V1d5M0ZJNVJkSjZsSTQ2L0ZLdHExMWhWalUxVnFQTmNncEF0VEFLWUtjTW5o?=
 =?utf-8?B?N1phd29FcHFXYXJycEU1YVJoZGRVcEZsWTRNUHN2dUFzaVZQNmFWNmJVcWRx?=
 =?utf-8?Q?DBhr2oXJ6m7ic6+tnI8zl+eqD?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 3c8622d8-c0bf-417d-ec1d-08dbce4a840a
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Oct 2023 13:19:24.7434
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: EIJqWkGCdpkwyNdQLKvgzlLbbYGLwQm1dXcWbCAEYsGpCfbe2mthHi/IUp0Aq2QiiG3XC82lNRzTMBpfgtrR+w==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR04MB9956

On 06.10.2023 17:27, Roger Pau Monné wrote:
> On Fri, Oct 06, 2023 at 04:09:19PM +0100, Julien Grall wrote:
>> On 06/10/2023 15:44, Andrew Cooper wrote:
>>> From: Alejandro Vallejo <alejandro.vallejo@cloud.com>
>>>
>>> Adds a new compile-time flag to allow disabling PDX compression and
>>> compiles out compression-related code/data. It also shorts the pdx<->pfn
>>> conversion macros and creates stubs for masking functions.
>>>
>>> While at it, removes the old arch-defined CONFIG_HAS_PDX flag.  Despite the
>>> illusion of choice, it was not optional.
>>>
>>> There are ARM and PPC platforms with sparse RAM banks - leave compression
>>> active by default there.  OTOH, there are no known production x86 systems with
>>> sparse RAM banks, so disable compression.  This decision can be revisited if
>>> such a platform comes along.
>>
>> (Process remarks rather than the code itself)
>>
>> Jan is away this week so I want to make sure this doesn't go in without him
>> having a say.
>>
>> While I don't particularly care about the approach taken for x86, Jan voiced
>> concerned with this approach and so far I didn't see any conclusion. If
>> there is any, then please point me to them.
>>
>> For the record, the objections from Jan are in [1]. If we want to ignore
>> them, then I think we need a vote. Possibly only from the x86 folks (?).
> 
> I would be fine in leaving the option to be selected if we knew that
> such x86 systems might be feasible, but so far we have seen 0 x86
> systems with sparse RAM.  That said, I don't have a strong opinion, but
> the hiding on x86 seems fine to me.  Interested parties can always
> forcefully select the option, and a case can be made to make it
> available again on Kconfig.

I find it odd to demand people to change source code for aspects like
this. The very least I'd expect is that BIGMEM configurations (which
I've never seen any production use of) can actually also engage PDX.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 13:21:04 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 13:21:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617550.960225 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsNWp-0007xs-EE; Mon, 16 Oct 2023 13:21:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617550.960225; Mon, 16 Oct 2023 13:21: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 1qsNWp-0007xl-BA; Mon, 16 Oct 2023 13:21:03 +0000
Received: by outflank-mailman (input) for mailman id 617550;
 Mon, 16 Oct 2023 13:21: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 1qsNWo-0007xZ-28; Mon, 16 Oct 2023 13:21: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 1qsNWn-0002Yq-SN; Mon, 16 Oct 2023 13:21: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 1qsNWn-0004Kz-CL; Mon, 16 Oct 2023 13:21:01 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qsNWn-0004nZ-Bx; Mon, 16 Oct 2023 13:21: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=ERyQlrbaM1Sn9WADgUQhV5T5TdRU0E/Lo+UL6ZDpJOY=; b=Xmgj3ksnqwTfkLVcOl1utDPCoK
	aiGxJjI42KE/OuOX6mt5nA7uV4/gbr663gvcLcZtKxNIj2zcUsNGhQIKvZ8unL2rhRAmfXZrFNkfi
	fcInbBULDfPaqCgDgBoCpUO8+UPx06VYl3dA5HXIKvVrLSxu2ICRagUN/QZ+82hj0Xx0=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183382-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 183382: 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=6432228fb5808150d3c5c14affb3d46af81b3878
X-Osstest-Versions-That:
    xen=730406ab81094115d9fb5ca00ba8d53cec1279b3
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 16 Oct 2023 13:21:01 +0000

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

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                  6432228fb5808150d3c5c14affb3d46af81b3878
baseline version:
 xen                  730406ab81094115d9fb5ca00ba8d53cec1279b3

Last test of basis   183370  2023-10-14 00:02:00 Z    2 days
Testing same since   183382  2023-10-16 10:03:41 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
   730406ab81..6432228fb5  6432228fb5808150d3c5c14affb3d46af81b3878 -> smoke


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 13:22:55 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 13:22:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617556.960234 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsNYb-000076-Pj; Mon, 16 Oct 2023 13:22:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617556.960234; Mon, 16 Oct 2023 13:22: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 1qsNYb-00006z-N9; Mon, 16 Oct 2023 13:22:53 +0000
Received: by outflank-mailman (input) for mailman id 617556;
 Mon, 16 Oct 2023 13:22: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=BBjo=F6=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qsNYa-00006q-LL
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 13:22:52 +0000
Received: from EUR01-DB5-obe.outbound.protection.outlook.com
 (mail-db5eur01on0630.outbound.protection.outlook.com
 [2a01:111:f400:fe02::630])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 1abb4e89-6c27-11ee-9b0e-b553b5be7939;
 Mon, 16 Oct 2023 15:22:50 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PR3PR04MB7258.eurprd04.prod.outlook.com (2603:10a6:102:80::9) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.35; Mon, 16 Oct
 2023 13:22:48 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%6]) with mapi id 15.20.6886.034; Mon, 16 Oct 2023
 13:22: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: 1abb4e89-6c27-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=VLiGDmAIrAmPDBKIOZgMu5KuJOPLMup2lGubOUQIizonr59SXl4LGD0i6ZcIaPRJY6MY7tKC6G0/cgmQ7kyAHYx+4EJzi6BTnW3GxOfFOL1uSDTFW2aeBK+whsVPen4ZWxebCyyatzL8+fYUXvnImCQkp0CZ/a2fuwaDo6zMUEqgnsDRepeeah+1Nn4WaGQSVLkXqwuwo0lTe13t731eDaHiqCe44OQZv7zu3xZ/wkiWjfOZBgO8lTpbeZZELn5qWhMpjy2B4j74t9xxDf3TtWrYOXGTdMRKcFKLm79Srnby/anL/oog6VtxBK+rFUAgCa9YUIESSwNHK/4/hm781Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=ROKQvp8k9hg7jmiOyCpSosawiXRsyQtxWhBqHNV1fnc=;
 b=F9yL0/aZh0iflR3OZckLhXvn/lfSzOE4i9v01Lr0AmelVY7r9dP4DpyzNiH+n5YbC2WWqdh5+IbYblS87KmVeCPPgRX3QKa+CgbjB6PocFdto564KT4cJBIxcVJd6z4XNrU/xMszHelgnEJowbh4uv7Y6CFojfEYNDPLjZsQxo7yGFmwshZecZQAQwcCuFG5jlIED1jpj4aZ45nSy1ETO232bWjwzObgDgDiytQY3Cyy7hJ2xdHWL/W7mrdbwnSvtGSVVFmsThmZJAHX+lExjABndNmjQEoTmKrranwUCo5IOFQzCgZEgs3XFE2EybSbPUa+UalEfBy1+XreyfgKgQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=ROKQvp8k9hg7jmiOyCpSosawiXRsyQtxWhBqHNV1fnc=;
 b=1veDFNbiQrqkIPmmKZN1L8oXVjvHx8Qf4uv2WqU8NNdJNBUPBTqB/ZJNclF/TGmbKY3KEbp8R6V2TkzNEA++FAbaGERB5YKlD808Abk7MAQO4Ue2l5Rzq3rwUi8QNa7j3e/7oiYCmkI+DhI8GgHpYhlAsM5KY3uZMM8Ci58BhHE2+ZmeU5aofW/2LAoCOuofQsuO7uYrpuQxvdcr1VH3ZuTod0wr+BObgiopWZ4EIwbbRPVRJNAu0Z0s7WfCtrer3IGU0qPFevzz8xcF/IuclSCPKZj6Ctvmv+rYfELtG+VGF5wBQuxu0JzCy4t5csGCgi4HfMohSNsphbHFXrZCeA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <d6ac8be1-c002-f5e0-3b47-059ed26a5359@suse.com>
Date: Mon, 16 Oct 2023 15:22: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 for-4.18 v5] xen/pdx: Make CONFIG_PDX_COMPRESSION a common
 Kconfig option
Content-Language: en-US
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: Alejandro Vallejo <alejandro.vallejo@cloud.com>,
 Julien Grall <jgrall@amazon.com>, =?UTF-8?Q?Roger_Pau_Monn=c3=a9?=
 <roger.pau@citrix.com>, Shawn Anastasio <sanastasio@raptorengineering.com>,
 Oleksii Kurochko <oleksii.kurochko@gmail.com>,
 Henry Wang <Henry.Wang@arm.com>, George Dunlap
 <George.Dunlap@eu.citrix.com>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>, Julien Grall <julien@xen.org>,
 Xen-devel <xen-devel@lists.xenproject.org>
References: <20231006144405.1078260-1-andrew.cooper3@citrix.com>
 <efc2b22e-6650-4c1f-b4cf-9971d4d08b49@xen.org>
 <b95fa9cd-2534-4d7a-9843-2bc71695655d@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <b95fa9cd-2534-4d7a-9843-2bc71695655d@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
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_|PR3PR04MB7258:EE_
X-MS-Office365-Filtering-Correlation-Id: 1de93126-7293-4b89-0808-08dbce4afd63
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	a1i0BFd0Fq9a9i4NE90ySM6jGhcDFMvroCQVa2O/RryowQsIX5xFuyuQt5kjM1Rqo9cQ7aKDEi4P0aaKqDdvDEZqWisbugmsyAdGrAwMPv/5jG38COGSzUI+co10eaGHzLbb8p8UpYHL4STPoAkVjIwmAvFlfiwB/2GtDT7E4RzCCweLYSpTGFvdZ5Zcs9jb9P+vsODDOOMqVCPreeNh1JxcuAdsEySBw+/EM3LPDYDc9xEnJpmH/7kXLcv+LjZmrrgmVSNa6anwX6gjZMnsEQjBA7k6TxucO6iAs9Mcg5iORUzm6KQfMI2Cgpq4QiKSkb3w+bwaeL9KWrIQE+pV9sYXIjHJl3uLIUKbgNrDbP2EoXxBcLM2o8PgLfHhuR3tuDZdtH1Vr1IMzyG6uQktHhJlGVd3FoRMKpAoyc/P1nuP1DD87uh9bRibTOyZXil+lJFjCkIwQeO6lr6FJT8VjXv+YQKlUQnY7uJuSIBSiWriWIZpJmZRxjSkkdb7tPtv4JSIhYPCfVS/B+b25v/NRj28HmmKFIDM0U3x9EZ8oTszaeATF7Qf+2PShiV6S7goPwuZs+Z6G7GJFfrmB0RhBbPPdJFqBMvglbf05s72hwy2CRK4Jy2uWb/0JSMEO17Nvlas8KhGzqeYp+Eyuc/HXg==
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)(376002)(39860400002)(230922051799003)(451199024)(1800799009)(186009)(64100799003)(6506007)(53546011)(5660300002)(2906002)(26005)(36756003)(2616005)(83380400001)(38100700002)(86362001)(31696002)(6512007)(7416002)(6486002)(31686004)(41300700001)(66476007)(316002)(6916009)(54906003)(66946007)(66556008)(8676002)(4326008)(8936002)(478600001)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?dC9ESDdxc3VYc2NXVVVnMUhUSHZPMWRpNjBLdkp3cmVPMitxTzl3V05OQVp4?=
 =?utf-8?B?NEx2NlpzRUZFSHRCbXNydzJiUzJGVjZ0a0xUWUxZaEhnVDRNelFkclpTY3Bw?=
 =?utf-8?B?RXdyQnNvMGtLc0Zmajd6M2VQdytHb3NlQmFSRHJUeGFRNHBrTnMxY2lISmlN?=
 =?utf-8?B?R2VVRnFkV1c4M3E0ZDhWT29jMktmRWN3RnpCMzFpSlVmQ1B0SnNvUDEwT3g0?=
 =?utf-8?B?Y1g0bnRsYmp0NlJZQzRBNFJBdjNveU1XYWlqTDNsaEVRVml2UXJLTzR3YWI1?=
 =?utf-8?B?Q0JwNEhvWml6amdPek5XeHJGV3Q4OU1UWHlEemxsZ3dNUHBLS1dZNThkSFA5?=
 =?utf-8?B?RzBwS3JCVnQ1UkN6eGwwQXI3UVZmZk9sNE40NWQxRENJcWdTWFM4WHFzOGJD?=
 =?utf-8?B?NDBxd2VTaFVMclYrU2dURm5Ydkd6eTZuaFg3R0g2eUhDVXlqY3BjdXpBRUww?=
 =?utf-8?B?MkpIMEJnblJRQ3lQcGJPTHhhK3pWYXpHUkhIK3dNQVowZmdXemxJNHM2c3VY?=
 =?utf-8?B?RW5jMG5BaEM3MGFqaGxsSnBNL21VRkJjWVEyam50dG0rdFZISGp6eWcyUHpp?=
 =?utf-8?B?aWhyYW9waDR6eDBRNlBoNENzU1IzL3dLOXpSUVJpbno4YUVGN2QyU2wvV2NM?=
 =?utf-8?B?NkFEdUp5MnIxam92R1NyM1dFaGEyQlM2UGFBek1HdjVVSDlVYm9oQ3NkdHh5?=
 =?utf-8?B?cWd0Z0JjalJQVm15VURGMUpYdzhaeVZtV0ZBanRlS3BUYkc4R0xzSTlFSXZ2?=
 =?utf-8?B?dUFaMndNSnp4YWlZVVdWZWlwS0J4UFVZUHZIQi9XSTFtNHBUdW90ZlRySFM3?=
 =?utf-8?B?QkQvRDhHQzZGWG5zOVRFK3VNTWRTSkNEUU04NEJuTkFqdG1oTjkxRXBhZXFy?=
 =?utf-8?B?bzROaWJwbmVYTnFaaDBHZGVEWmlENUVCaVNYOXo0NlQ0S2FzTmptY0ZMcTAr?=
 =?utf-8?B?QVQ0QUszM25jU1Y2Y1dMb3BvTDRNUkpqQmJOZ3ZJaFlqdnpURUQ5SHlxai96?=
 =?utf-8?B?Z0xlM2ExNklSc3FNalN6VHFjNG5LWTRkeFZvTncwU0Q0akNLTTljVCtiRndC?=
 =?utf-8?B?REJPa3g0VmJHbWJ2MEI0R0wvU3NzNkhEYmxxVHNDTEJPQmFzS004ZWgydWdy?=
 =?utf-8?B?TFpPQnd3QlRuTHN5bEsyeHdSNVNVS1A1bVJCckNTRGcrSlR0eHovTm1CVFdl?=
 =?utf-8?B?UHI0RlZoN3JGWGZJM0xqbHA3YzNmcUR4c1p3dXRPVW5kUngycGhYRHJoL3hl?=
 =?utf-8?B?TjZ5L2Fzam5YWU1VVDZmOS9WeENTRFZlb0RLa3hoZm9DNkFhbHZ5WGx0SVc0?=
 =?utf-8?B?UlVUbmdzYXNIcVlFTXVPWU1aMUdnRnJvc1BNZVdUaHdTL3lsTldXdGxnZFMz?=
 =?utf-8?B?S2pNOVk2RE1wdWZtT2VabGF2ZVl1T0VibjUvbUo2SGNpY2xKS2N0dWVLbmVL?=
 =?utf-8?B?NWxmbXdBZEs4ZmFITS9aclg5djYwZm9JT3MvVTRVYWppa2ZjYzBxTXJ0WjNT?=
 =?utf-8?B?U2xkL3pvQ1BJSFpKMXp6aW1YYnF5ZSs1ZEMwSzNRRzB6Z3lYTGM4MmdqSmRo?=
 =?utf-8?B?NFdLdFJtTUs0SjgwdHR6SEJXMTUrdmtFWU5ZMEFDK3Budi81bkFyV1JqOFV1?=
 =?utf-8?B?RUVoUnExSmFyYjR0QWlweUFKWWE4NTFnenFNNVJQZlNFdUFvdFo5Vjd6Vi94?=
 =?utf-8?B?SUVxS2VZRjFqOE5XNjcrSWE5ZXJLSnFtL29SKzhEQ3g0ejErcW50TmpDVmo3?=
 =?utf-8?B?cmpqbHpHWjFoc1VvRXhyTmJTNlc4S0dSV1F2N3ZBVlcxOXRLSGQ0QmNXdFhJ?=
 =?utf-8?B?WkFHQWNJVFRxQWJTU0RkbDRBN1ZZVXRadURjalBYMVhLTmY5b0JjTDRMTWhK?=
 =?utf-8?B?ZW5vMk5ubUZjMGlMRXJ2MzBwU1EzMjEwb0lkS1IrMmV4VVBHT0JZeVdlc3d1?=
 =?utf-8?B?VEt5NlJIdHBFUVJXVEQ5cGxGY0pKMHhUZ2d4Njh6eDdaUGtxWGQ5d2tBOSsy?=
 =?utf-8?B?WEFScDIxd0Jmd1FYL01aMDZtVkRjWk9pNENNSE52L1MwbkI3VUozZmV2aHlM?=
 =?utf-8?B?VkMvVVhNM01IVkhLTVd4eTJqRkFUNWV4VkJzR2hFbmRScVNpbUh1STVzMVdU?=
 =?utf-8?Q?nexvRxzur7IMIqjQoYHDrWeLR?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 1de93126-7293-4b89-0808-08dbce4afd63
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Oct 2023 13:22:47.8462
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: iPcaFUIiVGPu7kK+JFm3Z+9Y4F5najwKOvkYT0PDsAdqzKTkVLfdLJLJCJLGNKis39njpBOGHJsdWHJ2lIM+9g==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PR3PR04MB7258

On 06.10.2023 18:01, Andrew Cooper wrote:
> On 06/10/2023 4:09 pm, Julien Grall wrote:
>>
>>
>> On 06/10/2023 15:44, Andrew Cooper wrote:
>>> From: Alejandro Vallejo <alejandro.vallejo@cloud.com>
>>>
>>> Adds a new compile-time flag to allow disabling PDX compression and
>>> compiles out compression-related code/data. It also shorts the pdx<->pfn
>>> conversion macros and creates stubs for masking functions.
>>>
>>> While at it, removes the old arch-defined CONFIG_HAS_PDX flag. 
>>> Despite the
>>> illusion of choice, it was not optional.
>>>
>>> There are ARM and PPC platforms with sparse RAM banks - leave compression
>>> active by default there.  OTOH, there are no known production x86
>>> systems with
>>> sparse RAM banks, so disable compression.  This decision can be
>>> revisited if
>>> such a platform comes along.
>>
>> (Process remarks rather than the code itself)
>>
>> Jan is away this week so I want to make sure this doesn't go in without
>> him having a say.
>>
>> While I don't particularly care about the approach taken for x86, Jan
>> voiced concerned with this approach and so far I didn't see any
>> conclusion. If there is any, then please point me to them.
>>
>> For the record, the objections from Jan are in [1]. If we want to ignore
>> them, then I think we need a vote. Possibly only from the x86 folks (?).
> 
> What do you think the 2 x86 maintainer tags on this patch in this exact
> form, following far too much wasted time already, represents.  The vote
> has already concluded.

In a reply separate from his R-b he also said "I would be fine in leaving
the option to be selected if ...", so I don't think you can count tags as
votes. As much as you apparently have a hard time seeing why I want the
option to remain available (despite knowing why I introduced PDX back at
the time), I'm having a hard time seeing why you want it unilaterally off
(and I'm afraid I haven't seen any reasoning beyond you simply not liking
that code, and you also not having liked my earlier attempts to overcome
the undue overhead).

Jan


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 13:28:59 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 13:28:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617561.960244 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsNeO-000234-Hk; Mon, 16 Oct 2023 13:28:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617561.960244; Mon, 16 Oct 2023 13:28: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 1qsNeO-00022x-F0; Mon, 16 Oct 2023 13:28:52 +0000
Received: by outflank-mailman (input) for mailman id 617561;
 Mon, 16 Oct 2023 13:28: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=4UvS=F6=arm.com=Bertrand.Marquis@srs-se1.protection.inumbo.net>)
 id 1qsNeN-00022r-Cz
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 13:28:51 +0000
Received: from EUR01-DB5-obe.outbound.protection.outlook.com
 (mail-db5eur01on0612.outbound.protection.outlook.com
 [2a01:111:f400:fe02::612])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id f1372ee0-6c27-11ee-98d4-6d05b1d4d9a1;
 Mon, 16 Oct 2023 15:28:50 +0200 (CEST)
Received: from AS9PR05CA0305.eurprd05.prod.outlook.com (2603:10a6:20b:491::17)
 by AM8PR08MB6355.eurprd08.prod.outlook.com (2603:10a6:20b:363::24)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.35; Mon, 16 Oct
 2023 13:28:42 +0000
Received: from AMS1EPF00000044.eurprd04.prod.outlook.com
 (2603:10a6:20b:491:cafe::b) by AS9PR05CA0305.outlook.office365.com
 (2603:10a6:20b:491::17) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.34 via Frontend
 Transport; Mon, 16 Oct 2023 13:28:42 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AMS1EPF00000044.mail.protection.outlook.com (10.167.16.41) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6838.22 via Frontend Transport; Mon, 16 Oct 2023 13:28:41 +0000
Received: ("Tessian outbound fdf44c93bd44:v211");
 Mon, 16 Oct 2023 13:28:41 +0000
Received: from c1b9297f750f.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 174E06AE-977C-4E6E-A2FD-AEA5CE7B2C2A.1; 
 Mon, 16 Oct 2023 13:28:35 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id c1b9297f750f.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Mon, 16 Oct 2023 13:28:35 +0000
Received: from AM6PR08MB3784.eurprd08.prod.outlook.com (2603:10a6:20b:85::25)
 by AS4PR08MB8096.eurprd08.prod.outlook.com (2603:10a6:20b:58b::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.34; Mon, 16 Oct
 2023 13:28:32 +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.6886.034; Mon, 16 Oct 2023
 13:28: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: f1372ee0-6c27-11ee-98d4-6d05b1d4d9a1
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=KtcWUclDk/W5Tue5yT/++53BeADNS5nlT3W4XvC0V/I=;
 b=A8fu2t9UoKaCGum6x5u1rqAA2Kvfz8H4i5DINetlZQghiIWyU3JUcMD+knTFJtTwMmgLTfJMvkqBdkwydYfMit3A4G90CnSONr0COHK9/TjcOv1bl/vOFmI6eSwXc6XTmdGkREoXUX6wYjRASrNqAOTSKymEKljL53E5Qwg4IiU=
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: 0ce871b3b12df3c7
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=IjmqAvBxDd7fp8ZaR5ttw/6wO8fiNFMnOawlWohj1txscNl9XQaBzEhMRg4l1y8/5DCKdLsEwJAsPwNS3hj9ObB9yBKg19NzWl1zF8d7kOIoSbdgkBNPkGYDb9QYWFXgFt6rc8UjOJwaSs1W+wxR+mr3gQ45YUv/NKTiGa8HJrM+ypajUzm61oAEql6OFJfB99qpQtp4Qw4Dw2h21ilQSWL9q2TJtWihIdJnrBOzuTTjM9kCDzVxqL9YARsMkMXPN7n4trz+sAzGTDDXSdfAwmHyOLQuZxY1ReU4RULDTOLmA4yLK8CB5JW4Gv4nBzoon+ffxCCikAqLOfsThuiJGg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=KtcWUclDk/W5Tue5yT/++53BeADNS5nlT3W4XvC0V/I=;
 b=hpuZLyM5Zp8NWxqIL0VNRMUoYsVaolO/uUFx1ltKLEdZOrYJzk4GiJQzqK/5x9UEBpLUqWliMP4xPbmKyl6ER8GEhDV+nEKBqbK+vc4Ltow9egEDrwBY/lU5f5IwhNNxJqmcMK7SGwSkVb+rdw6TXZgzVfjgsccQRq2CUC1Wvkl/POGBuNyb3PhYCEcWFW51MgRQuLNIpY6RMoY+35YYBS1OxCBE/7fny4jggbhAjQltp0TvDGKsMs/qPsU5ePZWUoS1JGs+QNIRzudRlHPO4CtbkyDiJFbHvPPkyT63+JW1cjR/PLLosv5r4PdIByvA//FrpUom+iggNQ/Asa5p3g==
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=KtcWUclDk/W5Tue5yT/++53BeADNS5nlT3W4XvC0V/I=;
 b=A8fu2t9UoKaCGum6x5u1rqAA2Kvfz8H4i5DINetlZQghiIWyU3JUcMD+knTFJtTwMmgLTfJMvkqBdkwydYfMit3A4G90CnSONr0COHK9/TjcOv1bl/vOFmI6eSwXc6XTmdGkREoXUX6wYjRASrNqAOTSKymEKljL53E5Qwg4IiU=
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>, Henry Wang <Henry.Wang@arm.com>
Subject: Re: [for-4.18][PATCH] xen/arm: Check return code from recursive calls
 to scan_pfdt_node()
Thread-Topic: [for-4.18][PATCH] xen/arm: Check return code from recursive
 calls to scan_pfdt_node()
Thread-Index: AQHaAC7Lie8jJuWlekOvxY+/BGzxtLBMaOWA
Date: Mon, 16 Oct 2023 13:28:32 +0000
Message-ID: <18D03C43-2224-43EE-B9BA-B04802A7FF5F@arm.com>
References: <20231016124559.8220-1-michal.orzel@amd.com>
In-Reply-To: <20231016124559.8220-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.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_|AS4PR08MB8096:EE_|AMS1EPF00000044:EE_|AM8PR08MB6355:EE_
X-MS-Office365-Filtering-Correlation-Id: 58a660c1-2ce9-45fa-c2f2-08dbce4bd050
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:
 Xl3BwCpEq5ACKRNtnjBce8ORrkDK9jYBcVcExH5kbQc9bDR9K+LDxV8g7Gp/+6FJ0zRRl2amE7cY0fhkEzpxSi1x9amXJuqnsOPKiFl554+YyroPDZlmZCvF8JQWwKrD5MAfsdj8OamQ3nELeHcJPVWiILYVCOmYr1IjE3QZstT0467NiqJIKZuh/LEpi5ypoW8ZoeRQmX8IeEPpMaebvWr7saf4ODj8LyUJ7sM8lSUPlKYnc2dZNpyxybHums0Nb3Anqc0jQE6DQQr857MjfCp92a6U4OlSiJtR8hyC6eQLD/Hcyn6cpJ5NEUEfWaUCar4vHjQg9c1YIuoKVhpozKgrq0cvssrKEaGhCSJBJwZZpKwcCnWfD21Z5Oe7R5BsMZs8uldjt050DQXF0Fc4bZ8Qjo3RlTbH2tbojxbgFg+hpVQC52jZ++n/uYLTMWocbnYZnPc4taEWwmevk7EoFyBGDRBtJZNJHy+T39Imm47s8uJPpnttyG8THbb8Jib7b9gsQG7wWH9FAZy4dkR81dYI9sJNuhDWh058YGyH/bTISYTZgipgo2OlqnozUMfJAALEzw+g91cPHP0gLDwFZ5nKHF6opWwvD05/XXqDcaWNh3qerzIyzoClPoc78YLUMXEhV5d1X7kPgBw4rqYh7w==
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)(366004)(376002)(346002)(136003)(230922051799003)(186009)(451199024)(1800799009)(64100799003)(33656002)(6512007)(38100700002)(38070700005)(26005)(122000001)(2616005)(478600001)(6486002)(5660300002)(8936002)(4326008)(86362001)(2906002)(54906003)(6916009)(316002)(91956017)(66556008)(64756008)(66446008)(36756003)(66476007)(41300700001)(76116006)(66946007)(71200400001)(8676002)(53546011)(6506007)(83380400001)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="us-ascii"
Content-ID: <2331426FCE09FE4E837069C749D6EC37@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS4PR08MB8096
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:
 AMS1EPF00000044.eurprd04.prod.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	64ca27b5-2764-4d4c-a7d2-08dbce4bcaf3
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	DAAIvBtzpYtHXJhBgnpHaSaN8QsgYN1U1N2+Rtetj1i5dzoA59xGS16LjbldxE+kYDB7QF2kMrWT7UHuZI8DPUEsfYSmWNn9WK53vzdLdzg3e0aV7uBuMUH9HEKzwaDWpBLv7H2Jq+J1wE8iYsM58NO1diOuWQXZZwdATBAcI1S/2cHoebqQFYYk3oC80cLUndFctxX9qYBpiLVi+J3IRZoT152jjm8Sphze72UW1qFXygzjJiKtUAVCz1cx/BsYspMS8Iwv/6V2l3sJbBn+P3GwaVinR36NKdn00O7w11DVhErF3MH2IY67IsrKLVJGoo8vesZG6S2/6fg+MKxt0Rj/ZyDR54l6DS6qRTEvuU2X353W1uDEY+2Nla94kYcin1X8wOnHVYoFM6DO/a64Tmm3AWHFdFxi30AM1XWZ5qbKIj/DUduKAK7VIFe1UkmSXXGWEIjkX+XkBFxwQaWKo1w7/CWLBKZHgu7LjfKsTHTbgZVUyZD9mkt7d3B3sq5ZdHklSMS5Ci95aud0wlQqhPZ95/W3b9OL0Sv7BJuKYKCYTm6cRxCkgGSD044i/mnvrczSRtRIJKqTquX10lJpkCUM9d5dZiBfOlEeMZ/ikaEVpEj7r5nMoArYJayIUoJZNNsefTd8JiraG/XGHz4OGnVP4nnGd/RveK+FhTy67uwhmIQV2iesJu+MhxvxCQ+yeSa4JbvE5jPUiwvNSCNaz/EDac5Yud65chllIzlwrkgEAhN8X3+2eD437t3W1R7B
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)(230922051799003)(186009)(1800799009)(82310400011)(64100799003)(451199024)(40470700004)(36840700001)(46966006)(40460700003)(336012)(36860700001)(2616005)(83380400001)(6512007)(47076005)(54906003)(70206006)(6862004)(8676002)(4326008)(316002)(8936002)(70586007)(53546011)(41300700001)(6506007)(81166007)(5660300002)(478600001)(2906002)(6486002)(82740400003)(356005)(33656002)(40480700001)(86362001)(36756003)(26005);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Oct 2023 13:28:41.5411
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 58a660c1-2ce9-45fa-c2f2-08dbce4bd050
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:
	AMS1EPF00000044.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8PR08MB6355

Hi Michal,

> On 16 Oct 2023, at 14:45, Michal Orzel <michal.orzel@amd.com> wrote:
>=20
> At the moment, we do not check a return code from scan_pfdt_node()
> called recursively. This means that any issue that may occur while
> parsing and copying the passthrough nodes is hidden and Xen continues
> to boot a domain despite errors. This may lead to incorrect device tree
> generation and various guest issues (e.g. trap on attempt to access MMIO
> not mapped in P2M). Fix it.
>=20
> Fixes: 669ecdf8d6cd ("xen/arm: copy dtb fragment to guest dtb")
> Signed-off-by: Michal Orzel <michal.orzel@amd.com>

Good finding :-)

Reviewed-by: Bertrand Marquis <bertrand.marquis@arm.com>

Cheers
Bertrand

> ---
> @Henry:
> This is a bug fix, so I think we should have it in 4.18 given the possibl=
e
> consequences I described in the commit msg. I don't see any risks as this=
 change
> only checks the return code for an error.
> ---
> xen/arch/arm/domain_build.c | 7 +++++--
> 1 file changed, 5 insertions(+), 2 deletions(-)
>=20
> diff --git a/xen/arch/arm/domain_build.c b/xen/arch/arm/domain_build.c
> index 24c9019cc43c..49792dd590ee 100644
> --- a/xen/arch/arm/domain_build.c
> +++ b/xen/arch/arm/domain_build.c
> @@ -2872,8 +2872,11 @@ static int __init scan_pfdt_node(struct kernel_inf=
o *kinfo, const void *pfdt,
>     node_next =3D fdt_first_subnode(pfdt, nodeoff);
>     while ( node_next > 0 )
>     {
> -        scan_pfdt_node(kinfo, pfdt, node_next, address_cells, size_cells=
,
> -                       scan_passthrough_prop);
> +        rc =3D scan_pfdt_node(kinfo, pfdt, node_next, address_cells, siz=
e_cells,
> +                            scan_passthrough_prop);
> +        if ( rc )
> +            return rc;
> +
>         node_next =3D fdt_next_subnode(pfdt, node_next);
>     }
>=20
> --=20
> 2.25.1
>=20



From xen-devel-bounces@lists.xenproject.org Mon Oct 16 13:30:22 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 13:30:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617565.960254 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsNfp-0003QH-SV; Mon, 16 Oct 2023 13:30:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617565.960254; Mon, 16 Oct 2023 13:30: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 1qsNfp-0003QA-Pm; Mon, 16 Oct 2023 13:30:21 +0000
Received: by outflank-mailman (input) for mailman id 617565;
 Mon, 16 Oct 2023 13:30: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=/fZZ=F6=citrix.com=prvs=646b5f8ff=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qsNfo-0003Q3-Dd
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 13:30:20 +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 243243a1-6c28-11ee-9b0e-b553b5be7939;
 Mon, 16 Oct 2023 15:30:17 +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;
 16 Oct 2023 09:30:08 -0400
Received: from MW4PR03MB6428.namprd03.prod.outlook.com (2603:10b6:303:123::8)
 by CH3PR03MB7506.namprd03.prod.outlook.com (2603:10b6:610:19a::12)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.44; Mon, 16 Oct
 2023 13:30:03 +0000
Received: from MW4PR03MB6428.namprd03.prod.outlook.com
 ([fe80::831e:28d1:34dc:f518]) by MW4PR03MB6428.namprd03.prod.outlook.com
 ([fe80::831e:28d1:34dc:f518%5]) with mapi id 15.20.6863.032; Mon, 16 Oct 2023
 13:30: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: 243243a1-6c28-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1697463017;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=55OC0Iqruyf+AJH1Ot8Kkokj1cOZfT/LBm4X1uBmrL8=;
  b=ao/hGNfss7r+YFgafQ9dIZy+ocNZcDsXTzKwI2yGRQGhl9RlVza14V4v
   Fz1pecoEssB2is1q8XkoSzufEkpABBjJkeFj+21p1rvs9qVfZGEa8sSXK
   8ndTN7bHgI/UUOLQZNUSs2ecTpvIjVHJ16irB6gkQS/QuMF0z7nB/58F2
   I=;
X-CSE-ConnectionGUID: s/hlPEdASiSFNdktaqLHNg==
X-CSE-MsgGUID: pISjWxv2QxmsDTjgfKNPrw==
X-IronPort-RemoteIP: 104.47.55.168
X-IronPort-MID: 124951339
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:LIKoUK1wD2Ebr7y8j/bD5Uhwkn2cJEfYwER7XKvMYLTBsI5bp2QAn
 zMXDWyBa/aPYGX1L4x+O46xp0pQv8TVx9NnTgtlpC1hF35El5HIVI+TRqvS04F+DeWYFR46s
 J9OAjXkBJppJpMJjk71atANlVEliOfQAOK6UbaYUsxIbVcMYD87jh5+kPIOjIdtgNyoayuAo
 tq3qMDEULOf82cc3lk8teTb83uDgNyo4GlD5wRnO6gS1LPjvyJ94Kw3dPnZw0TQGuG4LsbiL
 87fwbew+H/u/htFIrtJRZ6iLyXm6paLVeS/oiI+t5qK23CulQRrukoPD9IOaF8/ttm8t4sZJ
 OOhF3CHYVxB0qXkwIzxWvTDes10FfUuFLTveRBTvSEPpqFvnrSFL/hGVSkL0YMkFulfGiZO8
 cQ1JBk2byutoe613LuibslKiZF2RCXrFNt3VnBI6xj8VKxja7aTBqLA6JlfwSs6gd1IEbDGf
 c0FZDFzbRPGJRpSJlMQD5F4l+Ct7pX9W2QA9BTJ+uxqvi6KklwZPLvFabI5fvSQQspYhACAr
 3/u9GXlGBAKcteYzFJp91r13LOewHqgA9N6+LuQ7t9RgmKD2DYqGBgNeWe5rvearHakRIcKQ
 6AT0m90xUQoz2SuR8P4Vge1o1aFuAAdQNtaF+Am6ACLxbHQ6gzfDW8BJhZFado7pIo1SCYs2
 1uhgdzkH3psvaeTRHbb8a2bxRuwNjISNnQqfjIfQE0O5NyLiJookhvFQ9JnEai0pt74Azf9x
 3aNtidWr7IXgM0Q3qO352fbkimsrZjESA0yzgjPV2fj5QR8DKanbYG17VnQ7d5bMZ2UCFKGu
 RAsi8WYqewDE5yJvCiMW/kWWqGk4e6fNz/RikIpGIMunwlB4FamdIFUpTt4dEFgN59efSezO
 RGD/wRM+JVUIX2mK7dtZJ68ANgryq6mEsn5UvfTbZxFZZ0ZmBK7wRyCrHW4hwjF+HXAW4lmU
 XtHWa5A1UonNJk=
IronPort-HdrOrdr: A9a23:aTtbCazrsKb5Iy8dA3SjKrPw9b1zdoMgy1knxilNoH1uA7Glfq
 WV98jzuiWUtN9vYgBHpTntAsW9qDDnhOdICPAqTMyftVDdyRGVxeJZnPffKl/bexEWn9Q1vc
 1dms5FZ+EYZmIWsS+V2meF+6tJ+qj+zEl9v5a9858QJTsaDJ2Ilz0JaTpz5XcGIDWurKBJca
 ah2g==
X-Talos-CUID: =?us-ascii?q?9a23=3AMVYDRGlpqVNFpvWBTS7irL8zVufXOWaazHPoDkO?=
 =?us-ascii?q?RMmdSZpuZSkOZ4YdEtcU7zg=3D=3D?=
X-Talos-MUID: 9a23:2dsylAtPYEb87XFmn82nnBBZNvh4/f6XGEUWvakEtMenExRqJGLI
X-IronPort-AV: E=Sophos;i="6.03,229,1694750400"; 
   d="scan'208";a="124951339"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=TcGuKVPkZDoKiM5zsaZ0RW1Z50Vygr9WjXg1TmQtp3SH+MTz8y3/mHpjDorIx1z3U3y13JKyiM2JBl7ui2UStOJESyOGOko64hsPq3qNNnzNBQP2V8TlyCeHxefhupyDJp9yvwhqCx/H34QcYYHQWzbeQALk2WwGmEpnX6H1NVHFuj9tutC2sEY0S2Enw47NbyEgQOrDI8V8b9WzWYGphcgXyWJj8r5ymns7wsqxPfkwdTZ7XW3Sdx1xq4314RfXBSHcsCyl2lanLDV+RTl+kK0Yi1w0LGW2BNFnoQdXzDiGq3C1rAtDv/b9WTBH21D9yctg4JM8nibOl6IZV/Al/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=D9pBw/0dGBycHT20MzvZTXJX1ZwYKhwOzZjQQCVeljI=;
 b=RWSS8zxUo6uHoyllo7icYt/b/ir4i2c2aiUCio0jQIEsVrYM6SRdVZciqEapEa308YFV9mDWvyhSfyPjjoN5R9ANtC4mT1DPGL/VuHwqKyIcseRDvtGU/ixNA+CP0glth42VYS0B0XKNRtSEM6kM2FIlZneNU5cwb/KUCJT1QPqOgZ01o54YJh+pQq8mLtEt7upHHjKNKg/2/aqu3RUN0eevkelDAIcEN/ZcF2/kQucurDdxnqH+pJWsVRScgKRBwfM0J9oGYCY5ODURWCVS7zsY3Wq50fITeJffbP4+kRuUDNQgK8HfYtzqkHsI+qGWs07H08Oo00YmBKQvPlsilA==
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=D9pBw/0dGBycHT20MzvZTXJX1ZwYKhwOzZjQQCVeljI=;
 b=OikAqr3pVPVMcrmcI/O6BUvLVHzWyjGAb6Wjjgd6QqQb1TFEzskugFURZ1nwhkl25v2QrZbejdS77mtxJQ8cREzZQAGQ+INy5MzHmfIQoePIGgLPQKxujkgOhHplXyJ2csvgYLzl4Lzr9ouUL7YjqyLQ/axQblaGNLNfFfUxSeE=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Mon, 16 Oct 2023 15:29:57 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>
Cc: linux-kernel@vger.kernel.org, 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: <ZS061VoUzisTUEvu@macbook>
References: <20221118154931.1928298-1-marmarek@invisiblethingslab.com>
 <ZSz8xu8E9-02Ej8D@macbook>
 <ZS005ahNvQ/drB8I@mail-itl>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <ZS005ahNvQ/drB8I@mail-itl>
X-ClientProxiedBy: LO2P123CA0078.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:138::11) To MW4PR03MB6428.namprd03.prod.outlook.com
 (2603:10b6:303:123::8)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: MW4PR03MB6428:EE_|CH3PR03MB7506:EE_
X-MS-Office365-Filtering-Correlation-Id: a0ca748b-64f0-4f6b-17c9-08dbce4c00ce
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	SeTl+BYVlftPBGjDIFVFl1ibNArylsIIr+dv4EI5d5cbrIuZEuaCF1Wqeu6jw00JQNFrfKP4l/viyRuPtTj0QEW/w+M1jyGw3vPW7E1bHsODkMiRm1sKhWPNjlVWMK+pjd8FFsla2QsBXyuoP6Bl15fjhqvqr/7EFUNYwG/ve3YESLPZvVG8RVTR4Zic72vt3wgfcK52HeOOY2JACbzGta0w+wxRdBB2tDD1gHiDYBlFrSLUuJBRi5D/ZsvJrN6dKPxnKieMM+xK+Vttuo3xA2tdepVLyelj3FHtokxHI3Yo+IW0xxACpJTOtJwJhbZGM0QeftNOb6x4/t4ryuHFxghZx6jId6go+W+5FnMEU4sBcWYR0UuZz+9Ost9W+n563VXJ3paM3yLTuHXGEBkOjaSCoEfaiN4Yhi7tAQcI7CBxTiin3WNYOinSR9ORlNDek3uiqD8VISdSjxmmRgQc5wkm7vBlS5wdEvCL3CAFpyw+X1ymmqZ5kSHcZCnAOo1WxA0jvltlPknnlKFVlupmjFXKcNDYFYa6FJSIUJBW+9Wp6AF8ar8UIIHh/Cvm6u/g
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)(136003)(396003)(366004)(39860400002)(346002)(230922051799003)(186009)(1800799009)(64100799003)(451199024)(66946007)(66476007)(316002)(85182001)(6916009)(66556008)(54906003)(4326008)(8676002)(41300700001)(66574015)(8936002)(82960400001)(5660300002)(38100700002)(33716001)(9686003)(6512007)(2906002)(26005)(478600001)(6486002)(6666004)(86362001)(6506007)(83380400001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?ZVJPd3k1MVhtV0RUMVZSUzU0cnd2S1FDVE5kMG1nR2dOVndWRmM0a0NlTG1t?=
 =?utf-8?B?Mzd6QU5WNmJMK0FsMFRUWjk3RllxRkZYVjQxa1Z3bFZCdS9INzd1YWhTaGI2?=
 =?utf-8?B?dHdjeFNHd1RrT0lMVDhwNmxhWjBOY1ZvYzRFZC9lRFNMOU5oRWhYSSticDM1?=
 =?utf-8?B?ZU9yZ3FKMkR4QmJITE81SitxQ2NDR1VmQ3lOVmIrREtHaldqMjJIcngyTTM2?=
 =?utf-8?B?ZnJDM3hYN3VHcVk2bDNESTQ3eTFUV3l0c0R0UGFJbGUxaCtoN1NicEZxRExr?=
 =?utf-8?B?d0VrZGFhL01mNklEV0FBY0NtenJGVmdGOGN0Tk1qRDJxL0hhWU1TazNGeS9s?=
 =?utf-8?B?SWt5cmFXV1NWSENCVnEzMXhXQ1BlUS9kandyOGlucmRpcGRsSE40K2NZdzR6?=
 =?utf-8?B?Q0w0dk5aOXpCN2xwS1R3RnNYazNvdjREQnhVanlwNnRmWnZvUzdjSDFCOWhY?=
 =?utf-8?B?U04xMlNESnB0TklFd0VBOGFMa3ZOOWxhQmlvU1U5T1BLK0ZjdFVIMWxBWUt3?=
 =?utf-8?B?U2pwY0dJTHJoSU5ESWtKemtLUlI1bnZLQzUreElSV2F6QnlWU0pMRWpVYmg0?=
 =?utf-8?B?K2duaVNjRVpRaERzNFl1eFNoL1FUVzV1SlQ1TUs3RjJlSEhNN3FEcHQzdkpI?=
 =?utf-8?B?clFEekI0TjJOQktYSnYzRlZxZ01PaXBibVN4OEY2dnp1TnZqVzRKQ1Z1cG82?=
 =?utf-8?B?VkkwYTl4ajRHQXl5YkxrbFNHa1ZIL3FTY0F5WThONkdFODIrNDVEYXpoSUdm?=
 =?utf-8?B?RHgveTlvakxESE5FTW9VaWdFSERHeU8wdTRnbEw2Y0lTaGllTkJKTkpxU2h3?=
 =?utf-8?B?Y1RWTzVBU3ZHdGZJMnhSbjJyS1dLSG1mMnBlRkZBNnR5UGsvMS80WjNNQXI1?=
 =?utf-8?B?SHdJY1BzTnhrYnhTZ0lZUGtoMWxOaXJKZ0l4UHYwV2FSOGpUb0pkaTRpNklp?=
 =?utf-8?B?anJxM0o0Y0VoeXVBV0lZWWpxTkNLWXNOUktYTHI1YUJKTnd1Y2grQUI5Smky?=
 =?utf-8?B?K1hOeS9VNWxWRUxqWXM1WVowMVZGNS9abUdEd3BjRzBkQUZ0WFUvRm1aNTJa?=
 =?utf-8?B?eGVFM0g1V01vVzZjcW9xaDZPSy9KSEZoWnI1eWJPRzNveXJZZDIvaEcvZzJD?=
 =?utf-8?B?WmhPNVFZeXRUK005R2t4cHBPV1R5U0l0OFFEWVJDWHJOWXdtakNBZDViUStR?=
 =?utf-8?B?WExiQ3Vrc2NSY3JIcW1xYnEyUzFoSlMvYTczRzJxZVkvVFJJK0REUU15T2xZ?=
 =?utf-8?B?dkQxaWQwQWxOd1FZK2MydFpSUm5lREtQTXZhVUpuNWY3dHBVMXJ5V3VuQ3Vp?=
 =?utf-8?B?dDBmMGgzUTdnZWZadm02ZDkzQ3dWS2tkSi9uaWFQUDZFSSs3WW9SWlloY2xv?=
 =?utf-8?B?dkRkQjNzdFhJbFE3R0hwR3loMklOM2hDc2RFdnBzWVNydVE1RUo5WHZtQ1Q2?=
 =?utf-8?B?dW1TUHJFV3hhYTg4RmZMVkxvK3BoRk04ZE5Tb3lTQUU4Yk1LSCtxSmtubEFN?=
 =?utf-8?B?elQ1YURmR0ZoemF6eDZTV3lnbkE3bDBLajdHbG4zcTA1SEhab0s0V20ydzd1?=
 =?utf-8?B?VmY2T1I1UDNhMGVMUEx3d092ZUlpRklVbll5cmV5eEtnUGU1RlZXRE11ZWdz?=
 =?utf-8?B?VUNIWVBKaU52Mk4vZkdyNU5GaWRTeUhiWVhlTzR6S1M0Q3lzTFZRVElHMERv?=
 =?utf-8?B?UHUwaFhXVXd0aUMyQnBJdG0zaTJwQzFSTjFBTEx1WFpGQ2VqMVIwQ0xEV1d4?=
 =?utf-8?B?ZDUwMGVSVkRmYWYvaDIxR05odTcxdzhmSE00NmFOZ3pWcVZqY0hHS0N4d1VW?=
 =?utf-8?B?UDlUdHk0d3E3VTl0VityUS9VcXNEa05yQkE0TmQxcm1RUCtkQmJuNXM5UTNE?=
 =?utf-8?B?STJXWk9JMyt0UFNUQm94aUc5NXM2YzM0dmw1UVF5MlgwTXVCZmdYRXhwQ0dG?=
 =?utf-8?B?VkxhbG83MTRkczhaT0ppL0dGT2xIWHNHMkdZWFlwbzdMQVpSRjRLOHdxbkFW?=
 =?utf-8?B?KzZiSzkrTWg2NXFyN0tjalFlOWxSdFdtOW05TXdKY1VhV3NZOUR1TzhsVTRX?=
 =?utf-8?B?VU1GRmpWUG5RYkYzMHNaQmd2R3kraXJBWW5Ydy83MEhJaksxV2tYbVpSOGg3?=
 =?utf-8?Q?Oi1HCZzLSMdoJ3QMGysOY4XCj?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	=?utf-8?B?YjJ3UVNwNHBFSGJyTENXV2dZUjM0bktXYjF4VWtGQU90V01pTC9oWnNsbjdn?=
 =?utf-8?B?MU5uUlZxVjRwRTBCNUs1bUpNeWpWZ0srRCs2c0NHSzhmNjV3blZKbXlpUnlm?=
 =?utf-8?B?aDREVmdtTDRzUTRlZ1hERVkzdmF5cUlFbGJZT1VFOTRnZGhtVkNzbEFyY0oz?=
 =?utf-8?B?MnZkTW14eEpTQ3V3Ync3ZXhFSGdKY3ZOVmcvaFoyOUZGcDJ1MXpKWEpOTGZH?=
 =?utf-8?B?NTgvbnJybkw3NzlrOXpKa0R3RGZtWSt3NVBZdGVHL0NDelBnb0FWZGovZXZV?=
 =?utf-8?B?WHZxOTJsb3ZHYXNVSGpDSHl2WkFUUnVuVTF5NzQ4L3cyV0VBdjdrRDdNN1cx?=
 =?utf-8?B?MjIwVE54MC9ka2Q0Wm9jUDlRWGdzdHdJMk1scjJ1empoT05PNFZoSXBRa25B?=
 =?utf-8?B?TzdjaWMvSXlrczd0Nk5NN0FPZHZGRFh1MmRqMEVnbHNBYUVqbEkvd25qMElo?=
 =?utf-8?B?ZkZIOHdKekJVMGZWL3FXMXVHRkQvSDQvSzdNWGxoK3FIMGh3b2JOREdEdG1F?=
 =?utf-8?B?bjV0NUNLZFVrQ0RtalMvdjJGcVRTRkFiUStLRHBpdUtSeWNYa29KeDVKQktk?=
 =?utf-8?B?T09CaVBta05XUW1XbmhDVzBucjZaL2NPSVM0YkpVQUxpcC9OaktEMFhHcXlk?=
 =?utf-8?B?Vmk1cVNHQW93cEViMHBNaWpOeENEeFBTcEZhRlFCZ2NaZS9TM1BBcGRNeE1y?=
 =?utf-8?B?UDZSd3JxMm01eS9qRklBdGxRclVCWDFVbUZ0MnpCSUxad0dFQ1hENjdtK3pl?=
 =?utf-8?B?Qk1TekRaL1hMNWl3NmlPQ0g1RldqbzNlclVycmxzTktHNXBGL0M3WUNFUUlw?=
 =?utf-8?B?Q3A2S0doZEN2dmVSOTBvc2w0YVBlSzQ0L0VJcml4TmtZMDhBdldRc3BDUFhu?=
 =?utf-8?B?d2tsbWlzWlB2ZlVjczVaNngzNEdoa291ZkRIaWtlTGtNZ0R0VitzczY5azcr?=
 =?utf-8?B?NTBoSU9DaVFRbW5Hd0cxVDY0ajJuaEdLdTlQZnVsNzg1N2I5S2NsRmdKWkhQ?=
 =?utf-8?B?L1VTWEp6S0JnMjdhdmJtVTZwcENvQlFCNDdLVVQ1NFcrNS9pWnNYLzkxVDFv?=
 =?utf-8?B?Z2JqVitFZjE3c25zYmZxeWhCZVpZbkcvZXd5LzdoNm5IZ2xRTXpMQkVRUEV1?=
 =?utf-8?B?Y3RFMDFCRkppUWZ5cmhuUVpZTW9vY0R3L3pPV1ZoRHNmMFhUeTVLMjVJMmEr?=
 =?utf-8?B?QzZXNktjV2sza01kYzJXYzNudDJlbjdudjVNQUlYOGl0QUpYbVM5R2NLb0xT?=
 =?utf-8?B?VjhFZmY4QXBBcG90K2J0TlMvWEpkU1BDRC9FWVVqSXJZWUlpQT09?=
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: a0ca748b-64f0-4f6b-17c9-08dbce4c00ce
X-MS-Exchange-CrossTenant-AuthSource: MW4PR03MB6428.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Oct 2023 13:30:03.3363
 (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: /qNsIJFXaeXefS0bZCj2H1CiebDDOeOk11ES/Rjw8oFmAknx6TcKfBx7qTD5Iz/6XY2LljH2GYtWb+AEzdjGBA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH3PR03MB7506

On Mon, Oct 16, 2023 at 03:04:36PM +0200, Marek Marczykowski-Górecki wrote:
> On Mon, Oct 16, 2023 at 11:05:10AM +0200, Roger Pau Monné wrote:
> > On Fri, Nov 18, 2022 at 04:49:23PM +0100, Marek Marczykowski-Górecki wrote:
> > > 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).
> > > 
> > > 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
> > 
> > Is this last point strictly needed?  From the description above it
> > seems Linux only cares about enabling MSI(-X) without the disable INTx
> > bit set.
> 
> I'm not sure, but it seems logical to have it symmetric.

I don't have a strong opinion, but I would rather err on the cautious
side and just leave it more strict unless explicitly required.

> > 
> > > 
> > > Fixes: 5e29500eba2a ("xen-pciback: Allow setting PCI_MSIX_FLAGS_MASKALL too")
> > > Signed-off-by: Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
> > > ---
> > > 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(-)
> > > 
> > > diff --git a/drivers/xen/xen-pciback/conf_space.c b/drivers/xen/xen-pciback/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 = 0;
> > >  
> > > -	err = pci_read_config_word(dev, PCI_COMMAND, &val);
> > > -	if (err)
> > > -		return err;
> > > -	if (!(val & PCI_COMMAND_INTX_DISABLE))
> > > -		ret |= 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 |= INTERRUPT_TYPE_MSIX;
> > >  	}
> > 
> > Since we are explicitly hiding INTx now, should we also do something
> > about MSI(X) being both enabled at the same time?  The spec states:
> > 
> > "System configuration software sets one of these bits to enable either
> > MSI or MSI-X, but never both simultaneously. Behavior is undefined if
> > both MSI and MSI-X are enabled simultaneously."
> > 
> > So finding both MSI and MSI-X enabled likely means something has gone
> > very wrong?  Likely to be done in a separate change, just realized
> > while looking at the patch context.
> 
> Pciback try to prevent such situation (that's exactly the point of
> checking the current interrupt type). But if you get into such situation
> somehow anyway (likely bypassing pciback), then pciback will still allow
> to disable one of them, so you can fix the situation (the enforcement of
> "only one type at the time" is done setting the enable bit, but you can still
> clear it).
> 
> If both MSI and MSI-X are enabled xen_pcibk_get_interrupt_type() will
> return both bits set.
> 
> > > +
> > > +	/*
> > > +	 * 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 = pci_read_config_word(dev, PCI_COMMAND, &val);
> > > +		if (err)
> > > +			return err;
> > > +		if (!(val & PCI_COMMAND_INTX_DISABLE))
> > > +			ret |= INTERRUPT_TYPE_INTX;
> > > +	}
> > > +
> > >  	return ret ?: INTERRUPT_TYPE_NONE;
> > >  }
> > >  
> > > diff --git a/drivers/xen/xen-pciback/conf_space_capability.c b/drivers/xen/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;
> > >  
> > >  	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 */
> > 
> > This comment needs to be adjusted to note that we allow enabling while
> > INTx is not disabled in the command register, in order to please
> > Linuxes MSI(-X) startup sequence.
> 
> Ok.
> 
> > FWIW, another option would be to simply disable INTX here once MSI(-X)
> > is attempted to be enabled, won't that avoid having to modify
> > xen_pcibk_get_interrupt_type()?
> 
> I would rather avoid implicit changes to other bits, it may lead to hard
> to debug corner cases (in this case, for example, if domU decides to
> disable MSI-X later on, it would be left with INTx disabled too, so no
> interrupts at all).

I see, so a case where MSI(-X) setup fails and Linux simply disables
MSI(-X) without clearing INTx disable because it assumes the bit is
not set (because Linux hasn't set it).  Makes sense.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 13:31:40 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 13:31:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617569.960264 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsNh4-00042K-CJ; Mon, 16 Oct 2023 13:31:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617569.960264; Mon, 16 Oct 2023 13: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 1qsNh4-00042D-9b; Mon, 16 Oct 2023 13:31:38 +0000
Received: by outflank-mailman (input) for mailman id 617569;
 Mon, 16 Oct 2023 13: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=4UvS=F6=arm.com=Bertrand.Marquis@srs-se1.protection.inumbo.net>)
 id 1qsNh2-000427-Rg
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 13:31:36 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur05on2060f.outbound.protection.outlook.com
 [2a01:111:f400:7d00::60f])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 528cf0c3-6c28-11ee-9b0e-b553b5be7939;
 Mon, 16 Oct 2023 15:31:34 +0200 (CEST)
Received: from AM6PR05CA0006.eurprd05.prod.outlook.com (2603:10a6:20b:2e::19)
 by DU5PR08MB10398.eurprd08.prod.outlook.com (2603:10a6:10:51f::22)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.35; Mon, 16 Oct
 2023 13:31:31 +0000
Received: from AM7EUR03FT050.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:20b:2e:cafe::2e) by AM6PR05CA0006.outlook.office365.com
 (2603:10a6:20b:2e::19) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.35 via Frontend
 Transport; Mon, 16 Oct 2023 13:31:31 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM7EUR03FT050.mail.protection.outlook.com (100.127.141.27) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6907.20 via Frontend Transport; Mon, 16 Oct 2023 13:31:30 +0000
Received: ("Tessian outbound 6d14f3380669:v211");
 Mon, 16 Oct 2023 13:31:30 +0000
Received: from 9e2c742f7b81.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 10378EEB-123D-4221-836E-002BF12F2463.1; 
 Mon, 16 Oct 2023 13:31:19 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 9e2c742f7b81.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Mon, 16 Oct 2023 13:31:19 +0000
Received: from AM6PR08MB3784.eurprd08.prod.outlook.com (2603:10a6:20b:85::25)
 by AS4PR08MB8096.eurprd08.prod.outlook.com (2603:10a6:20b:58b::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.34; Mon, 16 Oct
 2023 13:31:16 +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.6886.034; Mon, 16 Oct 2023
 13:31: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: 528cf0c3-6c28-11ee-9b0e-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=1yAZN0TUi50zVdoWm0Ve0fhs//+isYRRcT/AXWAbQ5I=;
 b=UKtyAJCRZVUnB0gX5YI6a4j5fSPeQFvMrIyjtX3L8aA5iaTTbNaezH4ird943y1OPSx71BsJgd4LyfTquuGfH/+dxfZlV5rRBkfSv3BwMrTv39IxQw+ekyI3OXFPUaBMcAOPL5MAeTzqAksCbJH8waKEzpYs2T2c+CT0Y+JIigY=
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: 10a6acccc241518e
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=A+HSms1fLr/K3bxL3zz4abPjDRUe82BFAallmG+oFP4kYRBUz6HHphEs1uPDgxrFGeoK/Nb0qUPrjamos0nEQcKQJM4nOdFZlNm+m64g9k/uuE+vPmdoPx6tRTwuHSPdP1TviWctCZ2enkwso3GT7SpEut9pJ5zl+jTcWzAIEUFE8MuLhZONcvHdK6j8XLF8bqz+Ry7OjXBy+hdXA2qXOB9G1clXVNXmxDZ8Y+kHPDKBzoZ2BLddKAXW6owe1gcgtrr87PvEkBFvfB2BOfBs51bQQA7JPOBJBd17hYx80o8GunLp1/e9wH8g9P/8U3S8KjpnpVfSZ3FOEZUaZNBIQg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=1yAZN0TUi50zVdoWm0Ve0fhs//+isYRRcT/AXWAbQ5I=;
 b=YvZDjYBoXuec4M4udwpQ26pG2fwCy9toj7snXRdtjxN3CDXLxSlUCJPDjlUThkUXVebFANX5RGCT4M1F3HCjY0d8HniBbuCchEt5I70N2TUzUBv7u23jf2gJO76by6DxGbvbKkYYWOTWfBKvOSGU8Oz9lh2motMvJbXIqPRd3Mg0p6/EC2Hn/xXJlZk3BVJYNTu/Ay9dr+oPnBEaOJ9vaQqtLPvkZCjYV/bZLBOtw31RLdfFxQDB+Tlg8ccAm8q5OwjAsCuuycFDWWAcd8j9p9YOSiADe71D8Z+yLq2F34z7nuVAF+BRXZJSAxVT7KnZ0x+UUUIhAlqabt4B6f/9ew==
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=1yAZN0TUi50zVdoWm0Ve0fhs//+isYRRcT/AXWAbQ5I=;
 b=UKtyAJCRZVUnB0gX5YI6a4j5fSPeQFvMrIyjtX3L8aA5iaTTbNaezH4ird943y1OPSx71BsJgd4LyfTquuGfH/+dxfZlV5rRBkfSv3BwMrTv39IxQw+ekyI3OXFPUaBMcAOPL5MAeTzqAksCbJH8waKEzpYs2T2c+CT0Y+JIigY=
From: Bertrand Marquis <Bertrand.Marquis@arm.com>
To: Julien Grall <julien@xen.org>
CC: Federico Serafini <federico.serafini@bugseng.com>, Xen-devel
	<xen-devel@lists.xenproject.org>, "consulting@bugseng.com"
	<consulting@bugseng.com>, Rahul Singh <Rahul.Singh@arm.com>, Stefano
 Stabellini <sstabellini@kernel.org>, Volodymyr Babchuk
	<Volodymyr_Babchuk@epam.com>, Henry Wang <Henry.Wang@arm.com>
Subject: Re: [XEN PATCH 10/10] arm/smmu: address violation of MISRA C:2012
 Rule 8.2
Thread-Topic: [XEN PATCH 10/10] arm/smmu: address violation of MISRA C:2012
 Rule 8.2
Thread-Index: AQHZ/el7rXFHK+9WvkOYQpiDC7n8ALBMJIIAgABJsYA=
Date: Mon, 16 Oct 2023 13:31:16 +0000
Message-ID: <D3320838-1E67-4339-A3D4-A3E60FBC4117@arm.com>
References: <cover.1697207038.git.federico.serafini@bugseng.com>
 <199886f6ba1f2d5701eabd080b4f9723fc28f4b9.1697207038.git.federico.serafini@bugseng.com>
 <39d3f8e0-61cf-4b8d-84f1-a5087ba8ead4@xen.org>
In-Reply-To: <39d3f8e0-61cf-4b8d-84f1-a5087ba8ead4@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.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_|AS4PR08MB8096:EE_|AM7EUR03FT050:EE_|DU5PR08MB10398:EE_
X-MS-Office365-Filtering-Correlation-Id: d816ffbc-555b-40ac-6984-08dbce4c352b
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:
 DMYou8EGET1tMKQrfSi3xD/3HCmLIgwdzb1rhlZdbn6mvbqs2sH5sYhp7mv4U6eZPjufuI+hXNN0Nog4WajXj34qtcVYTCTnZdEIIi2Klqwg5Is8VPyOS1ob+qA1aGb93cj0NagPZb0zsRoh4Rl/TGTBiHoxE5L6B7alPLgKprW+nFfv35TBvmSSbWB+zJhjkTmWadzGk9Q9QzGLqB7mHhltNV8esT1olqpW3D4QEl8j8UyxqMHJOqY3NwzQ3pk8mqoJ6nEfNoam7ouhkx0yqALeOqP7/2QUReVeuS7k98pR9YXMiaPnDSOLBxa9PLAXbCaJFqHJzrUCICRd7TBJrnv8iHA2HGkaZXNbjGCOKgLs0bCofoQJnNEsLo3XUjOCahKHXXI6Jw4vLDr++n4LDilW4HA0Al/lQu6jMl5Utf/UCDqe26jKx54waxP8POdDV1+twq840toY9dlg64LiFLQ4TZJ/gyuHLgQ6ZHCtxtxau2rldL9G3BzluNGX+QKanQ9WHpTrqqk4H4OzbZkGqnIpDMBzTAH54Jk7BwCWvitZyykxhjEY7P6QzT3nbULhKhRRWYqXDb8a5O4HKPpQyqbKZ7DXII+ViNUJ6z7RtDca62KBXujigNrzUZror3h7QVdmgWm1AmrLRMGR8teKEw==
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)(366004)(376002)(346002)(136003)(230922051799003)(186009)(451199024)(1800799009)(64100799003)(33656002)(6512007)(38100700002)(38070700005)(26005)(122000001)(2616005)(478600001)(6486002)(5660300002)(8936002)(4326008)(86362001)(2906002)(4744005)(54906003)(6916009)(316002)(91956017)(66556008)(64756008)(66446008)(36756003)(66476007)(41300700001)(76116006)(66946007)(71200400001)(8676002)(53546011)(6506007)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="us-ascii"
Content-ID: <C35A078F7DB14F42B18B5AB41E4A08A3@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS4PR08MB8096
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:
 AM7EUR03FT050.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	ad4f20e5-6d77-42a7-3b53-08dbce4c2c61
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	TUGip4baSA9cqKliHjkVvAwhCU6JzmCi8Egecy7dnLlYr6uh7kvojgoqNTF+dsMfHDBwB4J2h1O2vQZhYh5A0egMDvbAPIkymwjOOvzUuMAYyTtEw7YoNDoS069oq02zhCF7s3I+XxOupfmRf+fWyqOOQIWx1LqAMQ3NWKWvaCpSpD2DErgKaIE2kkeTTMYbv+ZlP+QpiD6QpZoe1wW71dvkZckCPnLKpCrigEkHgvciR8QqPRBUGoQQjc/WnVAr6djSirIPlw4Q3HnXTjWedHifXZb+5N7Qetea1sB84P10C53x3J67ECiRuuaSb1+AknLhEMilXty7onApHHIns2+WzJjMOrVWKjOtVM8hrEfpz6QVDwgjQtVuqpvqUhL+4Qmb3TVPwZ+wd7vlBRmmh5NA9RZP8bVSF6H1JNNK1h4F4xrATli8cE2UJL2t6HG9/S39UZNlHZEDLAXce5KFdFOIliQZpxp/t3O+fRTjlzhxn7stBAWKGT/3vjBIEB8TKoThhaf8G7StBYelgPb1ZPmopuksrd7SJMrpzgq3Nbpy2tqmoFjYNqjAIJE/49mm7RCJSv4JX5THHK66/b4ia7rQFDnehGp9ND7rhoLqyadQnsxqWIM1j4xFsKl6TtmHqoDYhNI++3fh75aK49hmZh8Y0TyNIyGqdmPyVJpFtyeomTFslqAlzJTg3EnwnvxCG/hZZILFqz5t3Q2EPr205O9Rq449Iujosm46r8xihIg=
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)(230922051799003)(186009)(1800799009)(82310400011)(451199024)(64100799003)(46966006)(36840700001)(40470700004)(6486002)(70206006)(478600001)(70586007)(54906003)(26005)(316002)(336012)(53546011)(6506007)(6512007)(41300700001)(2616005)(4326008)(8936002)(2906002)(5660300002)(36756003)(8676002)(33656002)(6862004)(81166007)(86362001)(47076005)(36860700001)(82740400003)(356005)(40460700003)(40480700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Oct 2023 13:31:30.7462
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: d816ffbc-555b-40ac-6984-08dbce4c352b
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:
	AM7EUR03FT050.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU5PR08MB10398

Hi Julien,

> On 16 Oct 2023, at 11:07, Julien Grall <julien@xen.org> wrote:
>=20
> Hi,
>=20
> On 13/10/2023 16:24, Federico Serafini wrote:
>> Add missing parameter names, no functional change.
>> Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
>> ---
>>  xen/drivers/passthrough/arm/smmu.c | 6 +++---
>=20
> This file is using the Linux coding style because it is imported from Lin=
ux. I was under the impression we would exclude such file for now.
>=20
> Looking at exclude-list.json, it doesn't seem to be present. I think this=
 patch should be replaced with adding a line in execlude-list.json.

I think that during one of the discussions we said that this file already d=
eviated quite a lot from the status in Linux and we wanted to turn it to Xe=
n coding style in the future hence it is not listed in the exclude file.
At the end having a working smmu might be critical in a safety context so i=
t will make sense to also check this part of xen.

@Rahul: do you agree ?

Cheers
Bertrand

>=20
> Cheers,
>=20
> --=20
> Julien Grall



From xen-devel-bounces@lists.xenproject.org Mon Oct 16 13:33:02 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 13:33:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617572.960274 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsNiP-0004ac-MH; Mon, 16 Oct 2023 13:33:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617572.960274; Mon, 16 Oct 2023 13:33: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 1qsNiP-0004aV-Jb; Mon, 16 Oct 2023 13:33:01 +0000
Received: by outflank-mailman (input) for mailman id 617572;
 Mon, 16 Oct 2023 13:33: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=BBjo=F6=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qsNiO-0004aO-Ih
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 13:33:00 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur05on20623.outbound.protection.outlook.com
 [2a01:111:f400:7d00::623])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 85adf076-6c28-11ee-98d4-6d05b1d4d9a1;
 Mon, 16 Oct 2023 15:32:59 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DBBPR04MB7692.eurprd04.prod.outlook.com (2603:10a6:10:1f6::14)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.35; Mon, 16 Oct
 2023 13:32:56 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%6]) with mapi id 15.20.6886.034; Mon, 16 Oct 2023
 13:32: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: 85adf076-6c28-11ee-98d4-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=D0lWM0aSr0zyDD15fn+Vwfpu64sOL7f6qcsDlx//JZ2kGZUgdSUu6RI8nmn+60ucTUi2xl9+BHQLRiDpNVS9WnrDB4gw1TkVwbbD85834dtmAgNcsu0KCb7EUtDOBGXE2gUzSZf7Id+dakdgK/nG7RIkQjbq+ERoavHvHYLKHA/vxxtKRIfhi2BRnnkbHuC6t+dYBRvotF2/ds8czSKo9VQXQv1DzLKpFkMr+otkFuViT+0UUnevohr5+aiRKfgVdpTg+QjKGqHgsMLEQLN3vsu+qt2RN+nt08bgGHS+8MeA2O+OiP2PbEOY/Q3YGzaxaDrs8gxxgK7ehV+AuvxjIQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=cS42fa5xeS8kqa0u0Vn8Vlt1a9nm0+suWp9X85KeMY8=;
 b=Kw/rH26V3nwzpZgXaYAc8wwt0MEkkWfHSYHUJRGd1hrTK0InVA96dqiD/SLlwNZmvLu8belmC9CX00D/27WJjaQj+Ut4lJc9USD7TCBfRSRkkFdTfEvcluT9BGOIhQaH+OMu+zYzzgfuMfCE3+osDaZeYh+VGknY4vsq4FVnR5iP26vyCyQsvj/TgaNXmlQWmZVFZfQBdt2g1+pNcx8mh6t5mrAiVBHxPyx3uaPV8fwc1rp5TRwsSjk1/LLmxixMjmAKKSy0RhsS0RrMCtr5ieI0Lv8cpuECsH1Au0SiIod+m/r0DNJoVVj9QaDaZyfaTa1QSgmylNXJzQsZfQWI1w==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=cS42fa5xeS8kqa0u0Vn8Vlt1a9nm0+suWp9X85KeMY8=;
 b=wx/YqW63LYHYiZGc7ISklONJ1+vWS+NqLFC6OaxWL/nuRS6nG0mlPVlLlQcPvrnMSQd5kCqd7rtB0h5PSgG/DQkko9xYFH4JfbAm56mtzziU4wEekW9CUyuZkDHeV3t/JBBS3rOpBzmgPTojPaS69pBlKWIbmfZRqAdcPUelqVKCazDPbXbqRe3qnAnwZcvGhe2Yjtcwj0XaCrZdQ2ws+MmV/y2x+6xYpcGdyLHtS54trexwMOxrH/bwhnxqpWnO+uYIlTrzts4oBhVa2Pq18gQwDZuZwBgtqV71nGnFjS2n/A2+4eeET3qlemKUhtTJbEzw0+lFUgW31NsPx+KioQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <9aaae72b-fdcc-b48b-1155-e1cb0401d7d1@suse.com>
Date: Mon, 16 Oct 2023 15:32: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 for-4.18 v2] x86/pvh: fix identity mapping of low 1MB
Content-Language: en-US
To: Roger Pau Monne <roger.pau@citrix.com>
Cc: Henry Wang <Henry.Wang@arm.com>, Andrew Cooper
 <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
 Paul Durrant <paul@xen.org>, xen-devel@lists.xenproject.org
References: <20231013085654.2789-1-roger.pau@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20231013085654.2789-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR3P281CA0060.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:4b::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_|DBBPR04MB7692:EE_
X-MS-Office365-Filtering-Correlation-Id: b2686f23-c060-463d-28fd-08dbce4c681b
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	OmYbYrnUwtUpUONnLx14cSK/uJrn5if69CMXbkTO0yk4FBErHxVNLjHdKmsnNknGthMYf7JU5+2J8GQHJ974rx3NKy08ZiQqJsPPgZhozN+uVvZ4j5TKuL57jNDgVip+XF7EJ34fdsiUbhyklcXOpurq1mr/N10ddE8/L/80O3Nx2FHvt6VYNLArkcNoxERKt1hMDbaESHrGckC21W5Eo8HjtmdTTU0yfRJvGRcycy5cuQ1mz2g0uPHNMynCfmza2gGJDpcJWMEgfXJ/PoJc9ws0u5wFKUolPy5/qeKYFdjDmIn7oLBdR1nHvU3zwhqs0a6aEQo2BOb9L9W3ZwGDo0nV0ZmHjbyt9HCpzwA/0tsQlQqfp78+Y9ePeBXCarbOGU8JcMUB74t/3Ic/X9i70tLw4Zth1LI3Zzr04vAnfRa6Qeb9yWZjTPSPW1d2AR89gj1ZWWq/5nqipUuyJdcelKJFlqzDQBWVFL/B0vILEFiwSlWqswlJq8F+NQ8YrhHDUNKGw8eMNLYsZNI0O2ovO1kPIYLMkVTxpH6rx2c8nLVPlWSXv5jiCmmiaTBccO3dhMnWfX36G4hmxuAsXFExZojfIpaGRIQuYJMOrUn8zPCCkWKrZCT/WxA8GWAWH0JOKAmyxQY2moOcBaaSw9LOXA==
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)(376002)(396003)(39860400002)(230922051799003)(451199024)(64100799003)(186009)(1800799009)(6506007)(53546011)(5660300002)(2906002)(26005)(36756003)(2616005)(83380400001)(38100700002)(86362001)(31696002)(6512007)(6486002)(478600001)(54906003)(66946007)(66476007)(66556008)(6916009)(41300700001)(316002)(8676002)(8936002)(4326008)(31686004)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?bGJwL3MrSktUUTFGUkVvODY2NTUvMml2M1FxdWdmRElKNHJtc1FBenBzRDhu?=
 =?utf-8?B?QzhlOXRmRUNJOGJEbHVkSFdWRUJhM1FHWVVSWWMraGhHWTk1QXhXZnNoV0l1?=
 =?utf-8?B?OHZDSkQvN1YzWHorMkQ2YUxuOTlJcmxBblkyOUdHYVZYREZmQmZXd2hybDFN?=
 =?utf-8?B?STVveVNFQ2c4NUVqaTVvQjc5aUtOUlFFaXdNZnR6QUZsNWFIbVNyVDNGWFZ1?=
 =?utf-8?B?YVJwRmx6b0hNSHU4R3VBOGJiU1RDVlNpSXQ5VzdFUHZDU0RoMWxRZkZQWko3?=
 =?utf-8?B?SGFsR1FGMHIxRkFLOXk1bVhzSHJUNDh4R0RFNHB1NS93U0xrYmpkNGxHMkNO?=
 =?utf-8?B?WlpBSFJPK21Lb1U5bWdnNXVneXV6MHZYcml0bklsNmk4QVVzRWVpc3NTckVK?=
 =?utf-8?B?L0M5WGVkcjVwa0hvTXJLNTZXU1BiSXFGNll0Nm9CeENla1hqdTFmaEJmeVV3?=
 =?utf-8?B?dW9lTlRzd21XVGZsY3dIcTFleVFSdk9iQzZETkJCT3J0S1pWVXhQTEZyRG94?=
 =?utf-8?B?bHZsb2pyYXRVeDFFdmxrT3A2aG5CMmRMaWxnRC8yQ0hoOEQ4RnVsem5McHdZ?=
 =?utf-8?B?cGdaZzF2bzczM0hWYkQvUm5YNVczU3UzQ2dtejBWblBIZFVTQytrT3JtcUJW?=
 =?utf-8?B?WHlqeEVqOWVQM2lqdElha203aTNmRDNJM0hPTmU2WGI0cXhUWkppcktmcmdE?=
 =?utf-8?B?R212Z2lzc05Fbk02Vm4yeEZnQXZTWk1uMnlabHhKM2dRQ3BJUU9CanhOTUhz?=
 =?utf-8?B?U1NjejlJU2hWNmZGTUlhK2duNGVSUW83MlpuNFJETm93V1BEV1kvNkVLNDNq?=
 =?utf-8?B?eWc2OWhMNDlVdS9XSDdJUkdablFOb2JMUGtHeWUyQzBhTjNNa1IzYjFRU0NJ?=
 =?utf-8?B?ZHBpSFcwSkdreDl2djBaMnFmNklKNWN3TjkvODFhSzNRYXJ2MXp3TC9EN004?=
 =?utf-8?B?eEQ1TXFab2dTVVd2VkJTZnVLNzM2MmVjOEVUSWxyWm9Gc0xaNHUwQVh0ZzFR?=
 =?utf-8?B?cUZ0R2tpOW1HeWwxSkhnUnhoeURPTVV2bTBaMEhkdTNJV0owNmR5VW9EMWw2?=
 =?utf-8?B?ZFAyMW5Ocy9sazRnbGJaVW9HQ1BydExzZks4S0RQRXFWNDRwakZONlYvOUNQ?=
 =?utf-8?B?a1pVV0hsbTh4WHhsV3ZsQndmb1VqdzRCajlta2dYTWZjcy9YY3g2SWpUeTU4?=
 =?utf-8?B?eXFpVm9KYUJsNmNDNituT2Npb3FYemVmcWxHMndTNVFRbDg0dVdYbEVxREJQ?=
 =?utf-8?B?Y3hEbkJDQ2Z6TzBYUnJraWNoMndIN1ZrUUxiVldTVkZYcWJOaVdPODE1clhL?=
 =?utf-8?B?WDc5L1ovWkN1QWNHeis0ZERlQUgwZ2pKNWg5Z3ZYWnpQMEVDYnExUHJsT1lZ?=
 =?utf-8?B?TFVPWmpGRTNudThYT0FsK0RoUVF3MDd2SHB3eVpmaXRoenQrYU1FK1NDQnFO?=
 =?utf-8?B?RWQ5TDhFdE91TU1sSkY4czRaTHIzRTlMdElYRHR1aE5qTWp6dWdBS1JTb0Uy?=
 =?utf-8?B?UVNjQW1IRzYxNDd6WDNOd0Q5ejFFYlRnNDFPaSt3OSs1ejAydm54cXVtMW5O?=
 =?utf-8?B?Y2lKWjVLQWR6VzlUMDRpVWMybDFLcVhhRzdyd213ckJzSTdTYkNGS0hiLzUz?=
 =?utf-8?B?WVNucE5ZdVVwdlhiK2RKcDE5cjFab3ROelpZL0VQMXcyUUxGL0M0QjNvRTZr?=
 =?utf-8?B?VkYwbGc1R244L1lTK0tyOStYc25wT1VOdXpacDlQamw2NWJwSzNuSzBIVWE4?=
 =?utf-8?B?bkVmWTFiMStnSHNOZWpDQXVHS05xa0VsK0dMb21nL0VidWJKbVBOYWlJbXRH?=
 =?utf-8?B?emU4ZzZ0K1NFT2xCV0tXdG92eG5PdUFrdmNRTUE2Rmw2enpLa0NBY2ZxUmxK?=
 =?utf-8?B?NG1LL3Z5SUZpSDdXTkxIaWoyZG84b3FJWWQxN0FyUHVXSnRtRTdGRGRTSEYz?=
 =?utf-8?B?OENhU2hMSTh4bTdVaWRSVWtMK3ZiZWt2UlhjdE9xeFVONXhYemwreDViUUpX?=
 =?utf-8?B?aXhTUEx2MUdUWU41WlV5ejZRYjZzSG1VOFRNRjlYSnBncTI4ZGw2cHVJZUlM?=
 =?utf-8?B?RDkwWDl0NDkrK3J0SGJqU0VKaHNtUUVPbWEwZFpsamNuMys5b2x1S2k3Slkv?=
 =?utf-8?Q?Q2BCrssb2gWF97GQL5YxKhLFi?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: b2686f23-c060-463d-28fd-08dbce4c681b
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Oct 2023 13:32:56.3974
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: egXdwQGERDp0XOzfaecUAfi//yeddhS3rEw3xXkQhIZsaiN5GdCnuXr0J9nYgxwh97/+Z+c0YqLPxayKHYL8CQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBBPR04MB7692

On 13.10.2023 10:56, Roger Pau Monne wrote:
> The mapping of memory regions below the 1MB mark was all done by the PVH dom0
> builder code, causing the region to be avoided by the arch specific IOMMU
> hardware domain initialization code.  That lead to the IOMMU being enabled
> without reserved regions in the low 1MB identity mapped in the p2m for PVH
> hardware domains.  Firmware which happens to be missing RMRR/IVMD ranges
> describing E820 reserved regions in the low 1MB would transiently trigger IOMMU
> faults until the p2m is populated by the PVH dom0 builder:
> 
> AMD-Vi: IO_PAGE_FAULT: 0000:00:13.1 d0 addr 00000000000eb380 flags 0x20 RW
> AMD-Vi: IO_PAGE_FAULT: 0000:00:13.1 d0 addr 00000000000eb340 flags 0
> AMD-Vi: IO_PAGE_FAULT: 0000:00:13.2 d0 addr 00000000000ea1c0 flags 0
> AMD-Vi: IO_PAGE_FAULT: 0000:00:14.5 d0 addr 00000000000eb480 flags 0x20 RW
> AMD-Vi: IO_PAGE_FAULT: 0000:00:12.0 d0 addr 00000000000eb080 flags 0x20 RW
> AMD-Vi: IO_PAGE_FAULT: 0000:00:14.5 d0 addr 00000000000eb400 flags 0
> AMD-Vi: IO_PAGE_FAULT: 0000:00:12.0 d0 addr 00000000000eb040 flags 0
> 
> Those errors have been observed on the osstest pinot{0,1} boxes (AMD Fam15h
> Opteron(tm) Processor 3350 HE).
> 
> Mostly remove the special handling of the low 1MB done by the PVH dom0 builder,
> leaving just the data copy between RAM regions.  Otherwise rely on the IOMMU
> arch init code to create any identity mappings for reserved regions in that
> range (like it already does for reserved regions elsewhere).
> 
> Note there's a small difference in behavior, as holes in the low 1MB will no
> longer be identity mapped to the p2m.

I certainly like the simplification, but I'm concerned by this: The BDA
is not normally reserved, yet may want accessing by Dom0 (to see the real
machine contents). We do access that first page of memory ourselves, so
I expect OSes may do so as well (even if the specific aspect I'm thinking
of - the warm/cold reboot field - is under Xen's control).

Jan


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 13:38:21 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 13:38:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617576.960285 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsNnU-0006Wi-Fu; Mon, 16 Oct 2023 13:38:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617576.960285; Mon, 16 Oct 2023 13:38: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 1qsNnU-0006Wb-BX; Mon, 16 Oct 2023 13:38:16 +0000
Received: by outflank-mailman (input) for mailman id 617576;
 Mon, 16 Oct 2023 13:38: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 1qsNnT-0006WV-9V
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 13:38: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 1qsNnS-00032V-N6; Mon, 16 Oct 2023 13:38: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 1qsNnS-0008Me-He; Mon, 16 Oct 2023 13:38: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:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=XcvR6zZ5gHmxBXXaOKx/XccO6YllDbX/J4fIFNqKEpw=; b=SEdeq7cu5PYP82D4p2OvkGwreU
	PbWMRwqGQacrODyUXEem11bPcSsa0rZjOUHS3/yvhlr454m7VI9WJSfIwQcVcAmbY8gB+wDJmhFtz
	kzDiBn2iamBgzX9clcxnO4waZ0r+wbcwKe7GnypatykGgxNVTMaNvkeyxmx42MFjOR9w=;
Message-ID: <c9a7f059-4cf5-4a75-b231-573c4fe29b37@xen.org>
Date: Mon, 16 Oct 2023 14:38:12 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN PATCH 10/10] arm/smmu: address violation of MISRA C:2012
 Rule 8.2
Content-Language: en-GB
To: Bertrand Marquis <Bertrand.Marquis@arm.com>
Cc: Federico Serafini <federico.serafini@bugseng.com>,
 Xen-devel <xen-devel@lists.xenproject.org>,
 "consulting@bugseng.com" <consulting@bugseng.com>,
 Rahul Singh <Rahul.Singh@arm.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Henry Wang <Henry.Wang@arm.com>
References: <cover.1697207038.git.federico.serafini@bugseng.com>
 <199886f6ba1f2d5701eabd080b4f9723fc28f4b9.1697207038.git.federico.serafini@bugseng.com>
 <39d3f8e0-61cf-4b8d-84f1-a5087ba8ead4@xen.org>
 <D3320838-1E67-4339-A3D4-A3E60FBC4117@arm.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <D3320838-1E67-4339-A3D4-A3E60FBC4117@arm.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit



On 16/10/2023 14:31, Bertrand Marquis wrote:
> Hi Julien,

Hi Bertrand,

>> On 16 Oct 2023, at 11:07, Julien Grall <julien@xen.org> wrote:
>>
>> Hi,
>>
>> On 13/10/2023 16:24, Federico Serafini wrote:
>>> Add missing parameter names, no functional change.
>>> Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
>>> ---
>>>   xen/drivers/passthrough/arm/smmu.c | 6 +++---
>>
>> This file is using the Linux coding style because it is imported from Linux. I was under the impression we would exclude such file for now.
>>
>> Looking at exclude-list.json, it doesn't seem to be present. I think this patch should be replaced with adding a line in execlude-list.json.
> 
> I think that during one of the discussions we said that this file already deviated quite a lot from the status in Linux and we wanted to turn it to Xen coding style in the future hence it is not listed in the exclude file.
AFAIK the SMMUv{1, 2} code didn't deviate very much from Linux. I can't 
tell about the SMMUv3.

> At the end having a working smmu might be critical in a safety context so it will make sense to also check this part of xen.
I don't buy this argument right now. We have files in exclude-lists.json 
that I would consider critical for Xen to run (e.g. common/bitmap.c, 
common/libfdt). So if you want to use this argument then we need to move 
critical components of Xen out of the exclusion list.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 13:40:41 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 13:40:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617581.960295 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsNpl-0008Ko-SR; Mon, 16 Oct 2023 13:40:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617581.960295; Mon, 16 Oct 2023 13: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 1qsNpl-0008Kh-PR; Mon, 16 Oct 2023 13:40:37 +0000
Received: by outflank-mailman (input) for mailman id 617581;
 Mon, 16 Oct 2023 13:40: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=/fZZ=F6=citrix.com=prvs=646b5f8ff=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qsNpl-0008KZ-4G
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 13:40:37 +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 941788ef-6c29-11ee-9b0e-b553b5be7939;
 Mon, 16 Oct 2023 15:40:34 +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;
 16 Oct 2023 09:40:30 -0400
Received: from MW4PR03MB6428.namprd03.prod.outlook.com (2603:10b6:303:123::8)
 by SJ0PR03MB6698.namprd03.prod.outlook.com (2603:10b6:a03:401::6)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.45; Mon, 16 Oct
 2023 13:40:25 +0000
Received: from MW4PR03MB6428.namprd03.prod.outlook.com
 ([fe80::831e:28d1:34dc:f518]) by MW4PR03MB6428.namprd03.prod.outlook.com
 ([fe80::831e:28d1:34dc:f518%5]) with mapi id 15.20.6863.032; Mon, 16 Oct 2023
 13:40: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: 941788ef-6c29-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1697463634;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=NUpW2Q0zd/reHswMQCDdMTUE5CBPOExnXchq41OZF+4=;
  b=RKokarn/5aFM5tI5HGXj+dYnpewRaihZfN1XmFHRjkn+erppS0azqpqn
   zATUC+8NQT2cJrf1Dgz7Wn5JBxjZjjCUoOA4CbG3TiuXbp6K20O2mVJuh
   e+qfZC8DvG7o4R3EbsP3XJNXFVTjkIpIeqKgKoiw+bE74tnZXMhWZmuL4
   k=;
X-CSE-ConnectionGUID: SiiMYeHxRpe25mKeSmCT7Q==
X-CSE-MsgGUID: gohBbLAiRtC9CG3WVQTw7A==
X-IronPort-RemoteIP: 104.47.58.101
X-IronPort-MID: 125703803
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:ceVqc6psCj4a0ELTuLhsoCgfWh5eBmJQZRIvgKrLsJaIsI4StFCzt
 garIBmBOKnbNmv9e40kPNni9B8EvpLdx4dmTVc//ipmRH8U85uZCYyVIHmrMnLJJKUvbq7FA
 +Y2MYCccZ9uHhcwgj/3b9ANeFEljfngqoLUUbOCYmYpA1Y8FE/NsDo788YhmIlknNOlNA2Ev
 NL2sqX3NUSsnjV5KQr40YrawP9UlKq04GhwUmAWP6gR5waGzidNVfrzGInqR5fGatgMdgKFb
 76rIIGRpgvx4xorA9W5pbf3GmVirmn6ZFXmZtJ+AsBOszAazsAA+v9T2Mk0MC+7vw6hjdFpo
 OihgLTrIesf0g8gr8xGO/VQO3kW0aSrY9YrK1Dn2SCY5xWun3cBX5yCpaz5VGEV0r8fPI1Ay
 RAXAAsMbzWyisKm+qq2ELRppckYKeLXY7pK7xmMzRmBZRonabbqZvySoPN9gnI3jM0IGuvCb
 c0EbzYpdA7HfxBEJlYQDtQ5gfusgX78NTZfrTp5p4JuuzSVkFM3jeiraYKMEjCJbZw9ckKwv
 GXJ8n6/GhgHHNee1SCE4jSngeqncSbTAdhPS+XjpqYx6LGV7mMUCDcccXK6m+WS22WRAO1hE
 nALpQN7+MDe82TuFLERRSaQonSJoxodUNp4CPAh5UeGza+8yxaUAC0IQyBMbPQitdQqXno62
 1mRhdTrCDdz9rqPRhq1/7OZrzq0NTISa3ELYSsJTwwt6N3kvY11hRXKJv5hH7S8itndEDT50
 TeM6iM5gt07lscN3r6n9EvGhBq2r4DVSRQ44ArWWG+o9AJ/a8iuYInAwV/f4PVbLYffTUSbu
 3MEmM+24+UHDJXLnyuIKM0tEbez9rC6OTvTqVd1Gt8q8DHF02W4YYla7TV6JUFoGsUJYznkZ
 AnUoww5zIBXFGuna+lweY3ZI8Y3yantE/z1W/aSacBBCqWdbyeC9SBqIEKVgWbklRF0lbllY
 M/CN8GxEXwdFKJriiKsQPsQ2qMqwSZ4wn7PQZf8zFKs1r/2iGOpdIrp+WCmNogRhJ5oai2Pm
 zqDH6NmEylibdA=
IronPort-HdrOrdr: A9a23:eB4G0K7QyUo/m+kHxAPXwD7XdLJyesId70hD6qkQc3FomwKj9/
 xG/c5rsyMc7Qx6ZJhOo7+90cW7L080sKQFg7X5Xo3SOzUO2lHYT72KhLGKq1Hd8m/Fh4tgPM
 9bGJSWY+eAaWSS4/ya3OG5eexQv+Vu8sqT9JnjJ6EGd3AaV0lihT0JejpyCidNNXB77QJSLu
 vg2iJAzQDQAUg/X4CAKVQuefPMnNHPnIKOW297O/Z2gDP+9g9B8dTBYmKl4is=
X-Talos-CUID: =?us-ascii?q?9a23=3AOGB472rcX70CWqxIkWCcBZvmUfskc1jswVfAGVe?=
 =?us-ascii?q?1Uztsa7CuTHSsp5oxxg=3D=3D?=
X-Talos-MUID: =?us-ascii?q?9a23=3AZiwtbA/Z6BUY7Gs90RZE3pKQf8hv446kLGkMq4k?=
 =?us-ascii?q?t6uKrbhNOAguC0x3iFw=3D=3D?=
X-IronPort-AV: E=Sophos;i="6.03,229,1694750400"; 
   d="scan'208";a="125703803"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=QdT3O7Lie5rLAXWk4jqnx2yuRVb3PxbefQIFkvcgHMjJAi/wRH4e6T+jL8DBi17FxlNrU+wxWi7Pg5bhEE9WtIatBRFDH1uMDmUYS/J4a9o5bC92SdIu2lkV3u5AuqBKlI8cdInnXIAkTRljlhXwpoWzr1A0tn+QlAF6JqHweXsc859/ekI29lInkk3uZMCw+SWQ7jLxWMqv+1caR0q8NiZSqKKu9Altd6XchVY6vCJ0xuybcli8FTbJkDouJ48snDWwKTgctdlA7fv66R8aqtTSzs4TaIIBw1Q4Wkf06LsKfk2fc0J9VqH35YAtBJF9tODeuQON5uTVUHc9QZ6Kzw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=3DWtfsZ/w1ncuaqwetCo4dV9h3I+NrmN94N+nh8cra0=;
 b=IpwP+gGSNqzPsymik0GaQA9G1T1U/KmNySjjSk9cHI8oSa+dfS+ll1TGGaCHuvM0KRYjezuCZQa9R1nX9B5dNV6urjNbIP6v1MfBJmS1fRNOL097LhdtibbSzBzhbYFgqL6goiIjucJ7e+eksSt2SfjanSjk6CxMy9UnwnpwyE6eP4O3jYJSHGbhImkmosSJ+ZQI+iMb/vf1//O/Fnp8QoN8yC3jikgc+v7KwGxTNm+YBX3WSRtMpo/aI5g7Hd4hrUmyxDbt+qm48EIgY82XPmDbcwX6YAigeEsmHu2Bszo0irC95y90IiGDVPXKVqV3dzqKowmDxvF2UprTTpNqsQ==
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=3DWtfsZ/w1ncuaqwetCo4dV9h3I+NrmN94N+nh8cra0=;
 b=ZsvxEz2Ry+gx7OBqm3dyO63YLxBERyNqVMleR6DJrqF2ro5SvYdJrG4P4TrJIkC6wlrCIpxwN+b2cdDW50iHzv21shf5C8pniEy6aI6MQfREZjPEVvww65+Fst//Xna7jhNNPqd9Kn+mwaYezE/wICnf1L8TlQ+yZF4QXwRyGIM=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Mon, 16 Oct 2023 15:40:19 +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>,
	Xen-devel <xen-devel@lists.xenproject.org>,
	Alejandro Vallejo <alejandro.vallejo@cloud.com>,
	Julien Grall <jgrall@amazon.com>,
	Shawn Anastasio <sanastasio@raptorengineering.com>,
	Oleksii Kurochko <oleksii.kurochko@gmail.com>,
	Henry Wang <Henry.Wang@arm.com>,
	George Dunlap <George.Dunlap@eu.citrix.com>,
	Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
	Julien Grall <julien@xen.org>
Subject: Re: [PATCH for-4.18 v5] xen/pdx: Make CONFIG_PDX_COMPRESSION a
 common Kconfig option
Message-ID: <ZS09Q8DU-1_ATw1j@macbook>
References: <20231006144405.1078260-1-andrew.cooper3@citrix.com>
 <efc2b22e-6650-4c1f-b4cf-9971d4d08b49@xen.org>
 <ZSAnX3xjM91-tYbE@MacBookPdeRoger>
 <ed43fb9f-590a-fd39-ba87-b45acddd19a9@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <ed43fb9f-590a-fd39-ba87-b45acddd19a9@suse.com>
X-ClientProxiedBy: LO4P123CA0563.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:33b::11) To MW4PR03MB6428.namprd03.prod.outlook.com
 (2603:10b6:303:123::8)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: MW4PR03MB6428:EE_|SJ0PR03MB6698:EE_
X-MS-Office365-Filtering-Correlation-Id: f2fa3190-a6d4-45a4-18cd-08dbce4d7382
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:
	41yf0JPfn+h+WOHKt2jhwi9CC3A15ObP4uiH89FJVsdphblBupz4reyLz7T4E+itsl6E9TALFdijR8TtIHGxAABi477ZHkqndxjMfm97lWHG5inb0s9pFZoMysBDw6KErZL34Nqtgv1g4LUQ1Oe8i2ZuQPtc1rwbIiRYpD+wR4s8hWTYfksgHQtUOBjnJAp4pzzVCKtiEbnmltW9C97seuDqcEKdtEzY0rKcCYadNLyMBOT36vtvH/EokCf5QF9VGpuabn+tJpQjwbuyRSV586JsUghYcsrQZGnnU9tbve/raDra5lev5gijPOgJKSbZjSKizEiGO6p6SeNuoYvh7moQvKTijc3QC2eq2vVLLUtB0D8oxUZCg18W7GM4fz7zchKIYtWZyq7jsb4rjA9PaFSMdHi5RIivgxobDtPpIPDxLXWs0w6gh7FXQcz6H3WCAHySunyfp1Gv9Lbc9TfZDPGBHiJYYUFab1Zhzm2gpYEHGSAHMrqqrGDZn/s2R+dHeNgQ16tMQk16f6NJpOvDgb+uJcGa3fe62I5WWE6vgeDEOZ7QkLsb8JOMkVWe4YS3
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)(136003)(346002)(376002)(396003)(39860400002)(366004)(230922051799003)(1800799009)(186009)(451199024)(64100799003)(85182001)(8936002)(6506007)(5660300002)(8676002)(26005)(4326008)(86362001)(53546011)(6666004)(82960400001)(33716001)(316002)(41300700001)(83380400001)(66946007)(66556008)(6916009)(478600001)(6486002)(54906003)(9686003)(66476007)(6512007)(38100700002)(2906002)(7416002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?dk9BY0R5d3RtK2x0WW1MU0d6MTQ3cTJVa0Z5cUpMYWJTcGI1d1lsL2cvbWxT?=
 =?utf-8?B?UjFpWDNmQis5Z1FidzU4VnRGTUtaQXNiV1ZpVjdLK1RNR0NaTXF4azV2VWlH?=
 =?utf-8?B?L3gySGQ1dTQzUXl4ZUpCV0VjVUVzQ2hLT3MxMGRSTGF1WlMxMzFMbUl2eFhS?=
 =?utf-8?B?a2g2cFRxdzExY3RNd09ISXNzbWZFRldsNWxhWEt5WThJeXZmNHBDcTAxcEdN?=
 =?utf-8?B?ZGt6QVBDcnpTR2ZuTUVrMW5YWEJ6MGw3NUxMajhSbUJPcCtydmVFMGk5cC9R?=
 =?utf-8?B?NHJnekFjZ3RSZlByaFRGVG9wdExMYTU3L1VDc2NydHBuTHYxQVlMM25qMmxa?=
 =?utf-8?B?VjI2UjRsSWlBb2tsOHNKZ1VhUDBNYk1ZS0ZFYTVlY0s5ejNNU00rdUNIOGVy?=
 =?utf-8?B?bWNYN3hRYXh6VytWWEU1eEZkM294Z1lMUXVqZW1UQTdSbHNaL1pweEd3dEVS?=
 =?utf-8?B?c0lsNUt2aDQvQXM3U05WR3ZTS3R0RzR0d2hXR0NzbzRQWVFlMGgzb2hoSHpP?=
 =?utf-8?B?VzBRU2NTVDBCcStuSzVUUFA4enZxajM2TmJFZXBhRjdWOW0xL0dnYTN1SWxy?=
 =?utf-8?B?TnIvc1dZdm4rVjhOR1Nibmx4Zld6alQyeXNDOC9YN29GQ1BCbzE5L3B2d3lU?=
 =?utf-8?B?WVlsejRHUUd1UG4wNmFTSElybkdrc0RaUndUUTBGNUcwTDZ5bWdoNE5MM2xj?=
 =?utf-8?B?b3hmRWFsbldUMTVDaFFCelZFTFo1c094MzVFaDJFR3F1N0NidXUrMU1ETUpr?=
 =?utf-8?B?aXBXTXE0L2xPU0NoQkJLSFdoRjR6dlhHSHNDTmh3MklKQnhnakpOUHNoTmRo?=
 =?utf-8?B?ZlZ0YWFhQ2xDYm53WERyS1lmSWxqQUVlbWlBVzMrakgxZ3BSN1huQnp0SDRZ?=
 =?utf-8?B?Q3dlMWNINHdIczZiK1VBY3U0UEpnQnVmd1RlVVVFOElnTGZzSGgxUlh4Rnd3?=
 =?utf-8?B?OWU4ODN3L1hEYjVyZE5kUVBackE0SldleHhCUGNWQzFBb01JeWZza3gyMk9M?=
 =?utf-8?B?RUc3c3pFQ1JJaWFtdW8rNGY5RG4vaE5lcWpkSlQvSWUrYzM5RWFDcUpDTEJa?=
 =?utf-8?B?SkpOQ2l1K3FzcndBVWczL3VaTkdGVHgvUnI1QUhyb2VHVUt1Y2RJK2tPT0lp?=
 =?utf-8?B?dUZxUElOSDQ0QlQwQlpLT25hRnFEKzlRZHRDNkF2bC9lSmtLUmpnKy9aZW1C?=
 =?utf-8?B?UHNOWDYxa25DWDZSL3pPNFlzUXBOM2doVHBkaXl0THNKVUJsOGlxazVvMFUw?=
 =?utf-8?B?b1ZqUjJ0Q3pwdFZRclU0L1JLVjlTcmFPQk1IU3k4QVFoY2pPUGRIbS95bG55?=
 =?utf-8?B?NXZqQUFmNTRaRHdmN1B6aTVEcmZ6K1hZWTQ1NFlrZjd5aVhnVG5DcGdscVNZ?=
 =?utf-8?B?U3R5Zmt4dm9ZeGFFenVnNXdaeENidWhBVFJVV0c1NU00WXFyNkk5YXp4SUh2?=
 =?utf-8?B?MCtHeHBjNWwzVXBtemFienJNMmtVR1ZzQ2VhektUdStLZ3pYOHduTzhLZTlV?=
 =?utf-8?B?RFZvY3U2Y2FkUWQ1Y2wrMEJGZnpRVkZqdWxoSXVLa0J4SlFtNmxPVU9QNk96?=
 =?utf-8?B?My9IL3Vpck45bGc3R2EzRXAxcUxBQ25kZEtYbWtiTEtyWGh6UExHcW9FdVEw?=
 =?utf-8?B?bGRzc3pGSVE0TERkN2lacElLWnBoWnRDcnFRYWw2MTZrVm42Nzd5QnJvNnht?=
 =?utf-8?B?ZEF6QW1ZZXc5TnRSNERNYjVocGNjY0NwTVl2dVorL290VXNYb3dvV0lJVW9B?=
 =?utf-8?B?OHBDbSttZkxVUWJxdVltL09qNVRQaGZMd0JFZDRNQW5UaXEvVDYyTTNKSVlS?=
 =?utf-8?B?ekplQWdQQ1gyb3VjUEo4ZGpDZ09EZDdlMERuUFVLTTFiNUFWWnBGeFVJQ3g5?=
 =?utf-8?B?aUZtT3ZLeWlDTzZ1dnF1YUNyYTNhak5QeUtnZ3RFRHFLWXdXeVFDTHowRGZY?=
 =?utf-8?B?MGRyMUd6dW5IUklMamsvL2dZTlZXaFBsSloydUp6eW9hcGhqN0EwN1Z0NWJC?=
 =?utf-8?B?MCtIOS9qaFB5QXhUbEI2M2J1SzVYK1M0cVVPbzRueTI4N2htUmYzaklJNWRi?=
 =?utf-8?B?cDN3aGJKY2Zudkx4M0cvZW93RVpTL3ZWcUx4MkR4aWtOZmdneFNSTkxiN1Rj?=
 =?utf-8?Q?D0SjGgRDE/9NJ7a7HA43QFBo/?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	=?utf-8?B?STkvSnd2eFhvYnJGdVIvSEtYcU0vRndQb1NhcmJOVE01U3dJSGs4UXZpRWQ2?=
 =?utf-8?B?NzZxTmdoUjJ5bS9rMWRCYzJiVDdDZXRKL1NnRk80UlZCYXFlUi8zRGFJbEUv?=
 =?utf-8?B?QllNTGhIdE9udE9VZG9EK29PTC9CcHo1dHlwZ2VRVGVKQlZaUitnRUJPSm5Q?=
 =?utf-8?B?YmF0amNnZGtmL3pLSHcxeHBpeDhZSHN5WmlyMWdGbVViOVBQY0pnRnp2clRJ?=
 =?utf-8?B?enVhM0lvVmU2VHBBZTNyVjBwM044dVZjSW9DK2pCVEFDblZuZXVjeGl0YXdR?=
 =?utf-8?B?ZGhCM3p4Y0xYaFhMS3Y2ZWYyWm14S1FsZkY2WkM1akRYbzE0QXR4U28xT0xu?=
 =?utf-8?B?RUZTK3B6bW9zKzlFUDRjMGNmWVFkaWZpUUlrWm00SzU4aEhUQ3FsRTJ0cktP?=
 =?utf-8?B?dTdKRnJIUHdobDMyZ0drai9zUkQ0K211d2ltZERJekRSMWVhRzFSVU1RcENu?=
 =?utf-8?B?NTlCVVJNb3BQMklETlRRMHludHlKOEMvTWZFUkkyYURzYkdDenpheC90aVBY?=
 =?utf-8?B?QWxwaVBJTHR4cnlvOXI2OE94dDJJUTNiR1ZLTVVIU0ZzaXM2NHA2NlF4YUlK?=
 =?utf-8?B?d3RENzlzKzdtMERBWXdPYUVtMHpjK1Y4ZFQrRXJPY0RSSG9uSFNZemdudjh4?=
 =?utf-8?B?d1czU3VSQnFkYW1MaEQ0SkMvNWdDQmFwSUk2cTREWVlPTGlVUVNTbjdra0tI?=
 =?utf-8?B?SkpmajVoeWc2TDV1NHM3akdKd2NnQmVTSW5YcnlPZURhaFpFUFduY0dyb3BN?=
 =?utf-8?B?cXJnT1N6cDg4VkllU1hSd2YyRFd1NXdZajFlMkNwSjV0eXBQWE9ZUWtyZGpk?=
 =?utf-8?B?MGR4cUJTM3E5N1c3VVBkTHFPdmxFY0NTNE9sSG9QbkMvQ1ovaDlldi9GMy9m?=
 =?utf-8?B?Y24wcnVWdjNrSzBHSzJvTGxzQTYwV0RpNTQ3VmRJV1psMVlnV2lYM3lrbTUz?=
 =?utf-8?B?SFczTzFSblY1TlorZDhHU3ZXZnFGSmhaVWU1amhLQmlsT1k0RE1UUG9xN3d5?=
 =?utf-8?B?OUc3c2dIbVh0dWFLMUxwa3FUd0h3YlVEdzhxcXNSVjdlc0JZM1k4TTVJOXlN?=
 =?utf-8?B?YlY2MW9PcEVoYnZ3ZTdOWFJxdWtnbERVaUdtUW1ZaGVoQ0FneGtHY01lOTNZ?=
 =?utf-8?B?QmI3T1JOT2h6RlZtUGZNalk4cE14Mkc5MWhWeDc0UHJlSUNHOUwyR2pQeFZy?=
 =?utf-8?B?SzljbHVHR3haeTUwbjEvRGU2MEZYKzJyTnY5Q2pPa3NTMkpEUlpPNFRhdjZo?=
 =?utf-8?B?bFRvc2dHY1ExMkg2bTNTZ1VzdDFYeXViSHJQbVZDV1RyWHpQeG9lQU1PMHpu?=
 =?utf-8?B?dkhnT3Q5dkF1SUpJMEdtTVQvWjI4T0J4a3VEN2FiL3RUWHFFYU0vUWVYQitj?=
 =?utf-8?B?dXBydVVsZ0x4cXc9PQ==?=
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: f2fa3190-a6d4-45a4-18cd-08dbce4d7382
X-MS-Exchange-CrossTenant-AuthSource: MW4PR03MB6428.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Oct 2023 13:40:25.1193
 (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: hP67+ToFTwsvAlOd5O+P3yhav2eMnsf+hCJeMW33/dcDEzeU7Har1TjkyiXoExhUjOlwizzLwAI9Kqkfi4jHTA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR03MB6698

On Mon, Oct 16, 2023 at 03:19:22PM +0200, Jan Beulich wrote:
> On 06.10.2023 17:27, Roger Pau Monné wrote:
> > On Fri, Oct 06, 2023 at 04:09:19PM +0100, Julien Grall wrote:
> >> On 06/10/2023 15:44, Andrew Cooper wrote:
> >>> From: Alejandro Vallejo <alejandro.vallejo@cloud.com>
> >>>
> >>> Adds a new compile-time flag to allow disabling PDX compression and
> >>> compiles out compression-related code/data. It also shorts the pdx<->pfn
> >>> conversion macros and creates stubs for masking functions.
> >>>
> >>> While at it, removes the old arch-defined CONFIG_HAS_PDX flag.  Despite the
> >>> illusion of choice, it was not optional.
> >>>
> >>> There are ARM and PPC platforms with sparse RAM banks - leave compression
> >>> active by default there.  OTOH, there are no known production x86 systems with
> >>> sparse RAM banks, so disable compression.  This decision can be revisited if
> >>> such a platform comes along.
> >>
> >> (Process remarks rather than the code itself)
> >>
> >> Jan is away this week so I want to make sure this doesn't go in without him
> >> having a say.
> >>
> >> While I don't particularly care about the approach taken for x86, Jan voiced
> >> concerned with this approach and so far I didn't see any conclusion. If
> >> there is any, then please point me to them.
> >>
> >> For the record, the objections from Jan are in [1]. If we want to ignore
> >> them, then I think we need a vote. Possibly only from the x86 folks (?).
> > 
> > I would be fine in leaving the option to be selected if we knew that
> > such x86 systems might be feasible, but so far we have seen 0 x86
> > systems with sparse RAM.  That said, I don't have a strong opinion, but
> > the hiding on x86 seems fine to me.  Interested parties can always
> > forcefully select the option, and a case can be made to make it
> > available again on Kconfig.
> 
> I find it odd to demand people to change source code for aspects like
> this. The very least I'd expect is that BIGMEM configurations (which
> I've never seen any production use of) can actually also engage PDX.

So we expect BIGMEM to have sparse RAM regions?  I would have expected
systems with >16TB of RAM to still be contiguous.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 13:40:47 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 13:40:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617582.960305 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsNpv-0000Cz-6j; Mon, 16 Oct 2023 13:40:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617582.960305; Mon, 16 Oct 2023 13:40: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 1qsNpv-0000Cs-3Z; Mon, 16 Oct 2023 13:40:47 +0000
Received: by outflank-mailman (input) for mailman id 617582;
 Mon, 16 Oct 2023 13:40: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=4UvS=F6=arm.com=Bertrand.Marquis@srs-se1.protection.inumbo.net>)
 id 1qsNpt-0000C1-JO
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 13:40:45 +0000
Received: from EUR01-VE1-obe.outbound.protection.outlook.com
 (mail-ve1eur01on0603.outbound.protection.outlook.com
 [2a01:111:f400:fe1f::603])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 9aca9afb-6c29-11ee-98d4-6d05b1d4d9a1;
 Mon, 16 Oct 2023 15:40:44 +0200 (CEST)
Received: from AS9PR06CA0683.eurprd06.prod.outlook.com (2603:10a6:20b:49c::28)
 by VE1PR08MB5853.eurprd08.prod.outlook.com (2603:10a6:800:1a5::24)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.35; Mon, 16 Oct
 2023 13:40:36 +0000
Received: from AM7EUR03FT027.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:20b:49c:cafe::fb) by AS9PR06CA0683.outlook.office365.com
 (2603:10a6:20b:49c::28) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.35 via Frontend
 Transport; Mon, 16 Oct 2023 13:40:36 +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.6907.19 via Frontend Transport; Mon, 16 Oct 2023 13:40:36 +0000
Received: ("Tessian outbound 9aeaca65ec26:v211");
 Mon, 16 Oct 2023 13:40:36 +0000
Received: from e28c4ee1f8f4.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 FF80A867-ED1A-4EE9-AA40-9D16F23EBFFB.1; 
 Mon, 16 Oct 2023 13:40:29 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id e28c4ee1f8f4.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Mon, 16 Oct 2023 13:40:29 +0000
Received: from AM6PR08MB3784.eurprd08.prod.outlook.com (2603:10a6:20b:85::25)
 by AS8PR08MB9792.eurprd08.prod.outlook.com (2603:10a6:20b:613::5)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.35; Mon, 16 Oct
 2023 13:40:26 +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.6886.034; Mon, 16 Oct 2023
 13:40: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: 9aca9afb-6c29-11ee-98d4-6d05b1d4d9a1
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=ztjbguKXdEz7z9rAKiDOM15tBB6Ho2eCZRga0DcrtYU=;
 b=9eO+jO22kbe8wttdvN65YT5Rx5luCdZ3jnmln/TDkUlDiywcZPqpsRXgrMXTC+A7Qa1GQQ/JkpzIhUUl2KW9RpUtewXTuM+x7aeYYaB6PBUr7LD4iQnijUYOqES3ZJv6B13kZPC04ip0UWJw1EdfmVHGa5hFH4Az5ao2hJAzyMY=
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: 887ae82e7928a124
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=JGFnKEqcfeRNEi9uKvIQElx93Nmf8Wlp62Nl8QPK4vA4x/CyMtWegtuC4GZU+SbcLGGZ01Y92mrCLq9gRaecWojfaC8HH1+a+Cb7nY9bGfW1FOuWgttv/+zfbwiLY3Bh4Xo4d9QqW42s7Z1Ke4aaFd5vmEwmUToOk/lgQKCc5t3TTGd2OMiQxX+Aw1G8yf1WN01psJ0nDJ9n98UmrRAwDoaIvcBTD/HjVwVDT5+cIrF8Sd3kE7kX4AWxt1ps+FnGctC+rONVHKd3zzV0TjO3AokV/9S6tSsV2jDsKKKhkUrT6TclQwSCOb1tjb+7wdNubEs5ihdKPQnYy3HXUeZTFg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=ztjbguKXdEz7z9rAKiDOM15tBB6Ho2eCZRga0DcrtYU=;
 b=T1b40x/ZbKsAuSwkenslKteDXR9eZS+4zbEtvlsk0nCfVy9I2kMsWb1Mpgxh5gzKw/4+IsLeP9OUL4Q+eLI2laeA2A18BgfgEXj+X9yn4/cJ8qsp2XRu8ZIAeT8gd7wHghZWQ+jh/+Q3STH/AVkQhA4JF+XWDPV/sTmelQKb9VAhR/DXGXmnWkqs8yEAUwD1CAh5zBAH8sPvauERrglCXyhNXHb/LP/qFWKLMOQmysU/KSwVewoUVcmTLopE0hbEXjn7pzxt/oGg2KhDtMfSKY4qXeG3Deaq230EVUr4W4tw4zU9EXB0wG/WWf7Bo4xdXxoMlNReuciydxBmApSy2g==
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=ztjbguKXdEz7z9rAKiDOM15tBB6Ho2eCZRga0DcrtYU=;
 b=9eO+jO22kbe8wttdvN65YT5Rx5luCdZ3jnmln/TDkUlDiywcZPqpsRXgrMXTC+A7Qa1GQQ/JkpzIhUUl2KW9RpUtewXTuM+x7aeYYaB6PBUr7LD4iQnijUYOqES3ZJv6B13kZPC04ip0UWJw1EdfmVHGa5hFH4Az5ao2hJAzyMY=
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 v4 2/2] xen/arm: Enlarge identity map space to 10TB
Thread-Topic: [PATCH v4 2/2] xen/arm: Enlarge identity map space to 10TB
Thread-Index: AQHZ/dCeetLGz4GvX0qAhZnpE9HtkrBMcPYA
Date: Mon, 16 Oct 2023 13:40:26 +0000
Message-ID: <83ABBD09-D994-4DA3-8F10-15D87BCC2CF1@arm.com>
References: <20231013122658.1270506-1-leo.yan@linaro.org>
 <20231013122658.1270506-3-leo.yan@linaro.org>
In-Reply-To: <20231013122658.1270506-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_|AS8PR08MB9792:EE_|AM7EUR03FT027:EE_|VE1PR08MB5853:EE_
X-MS-Office365-Filtering-Correlation-Id: 828fd00f-296d-46e9-d671-08dbce4d7a6c
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:
 SumfbolPgblKT0FR9zWknPyMMoPnxgosFDXbHJsk/BSF3hKaVATNUY0ggM1IZ/Aoyu9yCX+Djsb7ByJf6rLMS3gF8fkuY+DyIkNl/JV8VnCFnFVhXlb5psmP/0rhLLCL7192OONSRIuNamE0UVU+JgQZzkHbH5FjTdnPi5iy7/6G/3pMGCC7Zuf3jJIK/ukUBelZk6UrlOntw4ZdpqTHGFQdOe4m9nyUXBvZl/C5F+QjxrEFHzkUpVXkm26M+lBeecuw1BSs1I6u5WN2JZvNzOK2gd97npw029SHquZA3Og9iPWvsJEeX8jZu7roRx9faqnlQZVmUsH37VwiKYtXURmUl59mZ3uGD11a/h+HnSSuEvcJb0zfrJzxbdW04mo0oD3ogyzMyO2w7jnoWIW0+S/rkLGLWOqklrJooIll/el+aytVPuWBZqjewaxjW8sV+lavzXhkzm913gqG7bXpx3mUP1gIymlld7+OiZCdoxMifr0IaWUiSNnYaFi1sJYbZO1B9HWx33x97Kviyw0QxUegneQFLKGxrOoDWYJMqlaTCLnJ6DrH1IpFSXZcPi5OHsdG5dPoiqtoERv/fn10OYomA/JqD/lQ6pC1OK1SC2rdYzctd56Wf2sCVOY36tp/cM2y2FUhpwXbGs/MDFgSQWQNoig/GC+BJqA+JKpZDsLyjZCsKJ8OKI8L893u9yNq
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)(39860400002)(136003)(346002)(396003)(366004)(230922051799003)(1800799009)(186009)(64100799003)(451199024)(6486002)(66446008)(478600001)(76116006)(6916009)(66476007)(66556008)(66946007)(64756008)(91956017)(2616005)(316002)(6506007)(71200400001)(6512007)(26005)(53546011)(54906003)(5660300002)(8676002)(8936002)(4326008)(2906002)(41300700001)(86362001)(33656002)(36756003)(122000001)(38070700005)(38100700002)(83380400001)(147533002)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="us-ascii"
Content-ID: <A8043DAAA5559C4E9E93293057B185F7@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB9792
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:
	b2955942-f407-4e87-551c-08dbce4d7479
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	ys1CVJVA+pJ0MkZuSzh9LY2dVYMQyBoxKpUBD1bw3dg7heDm4VADRguKrJecMfFTPMRmXHOHWPr08qyM6LvsUvo1Zd8Hvw3Z7DJSccCrmMMum+ZwCl5J6sdfVg355QUmZ9KXYniIr04O8o8vWvTMX4y5ATDKEhO9FlrRnNyFINsci8U62M/GqKqTWECXZDbt4gKpTEZIuFHVzA0XBcGlxOSb4QkcDhuN3QsAZjLWPXOGPViH5CAGxmq7UoZSyUzfu4+xqAE8ocE49bkZpgcPnT/08lukzQ3yd9wtf5OzZJ9wRb332R/cHmjJ4RO07PiOtVh4EphDWRqY6DWOIcsZDKvWzWsg5VPutE6vdn+ows9u155aSH3i4ZfpemZrBThj7a12ZRkse2tWtOkMKTrx1Aqgo2lUuHLQkQHUhCLhNSluZwxwqfI+qsyr9sZUG2mUrc2sacxKLjFsU+FisIopjB7WOzxLVnFzJcOCrwreTMg3++ALen4QjhCrS6+0Q7w5hSXS20IPiGB23+VGXBcPgeWosXHrfVWWZp6/b9lCOMk6fib+4uvvqepB79QkeV0OTIDhhaTidnfcgRBAR3Uy+AgCFDwB2rNiqAVGEzeGn1+kvXK3DPJsscYuRxpoRksq5yBgzLtdYM9623L4wQFHmcMs+qVHy6Yhz+lJCKEJMggAkfDsbTyZV8mbT+TT3eOCJv+S6+AYQmseA3Cs/bH5WG+AM7aoayxHyxcRlxM8VkA=
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)(346002)(376002)(396003)(136003)(230922051799003)(1800799009)(64100799003)(82310400011)(451199024)(186009)(46966006)(36840700001)(6486002)(478600001)(54906003)(70206006)(70586007)(107886003)(26005)(41300700001)(6506007)(53546011)(6512007)(2616005)(336012)(316002)(8676002)(8936002)(4326008)(6862004)(2906002)(5660300002)(36756003)(33656002)(81166007)(86362001)(47076005)(356005)(36860700001)(83380400001)(82740400003)(40480700001)(147533002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Oct 2023 13:40:36.4188
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 828fd00f-296d-46e9-d671-08dbce4d7a6c
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: VE1PR08MB5853

Hi,

> On 13 Oct 2023, at 14:26, Leo Yan <leo.yan@linaro.org> wrote:
>=20
> On ADLink AVA platform (Ampere Altra SoC with 32 Arm Neoverse N1 cores),
> the physical memory regions are:
>=20
>  DRAM memory regions:
>    Node[0] Region[0]: 0x000080000000 - 0x0000ffffffff
>    Node[0] Region[1]: 0x080000000000 - 0x08007fffffff
>    Node[0] Region[2]: 0x080100000000 - 0x0807ffffffff
>=20
> The UEFI loads Xen hypervisor and DTB into the high memory, the kernel
> and ramdisk images are loaded into the low memory space:
>=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 8TB, which exceeds the
> maximum supported identity map space of 2TB in Xen. Consequently, the
> system fails to boot.
>=20
> This patch enlarges identity map space to 10TB, allowing module loading
> within the range of [0x0 .. 0x000009ff_ffff_ffff].
>=20
> Fixes: 1c78d76b67 ("xen/arm64: mm: Introduce helpers to prepare/enable/di=
sable")

I agree with Michal here, this is not a fix so this should be removed (can =
be done
on commit).

> Reported-by: Alexey Klimov <alexey.klimov@linaro.org>
> Signed-off-by: Leo Yan <leo.yan@linaro.org>

Reviewed-by: Bertrand Marquis <bertrand.marquis@arm.com>

Cheers
Bertrand

> ---
> xen/arch/arm/arm64/mm.c               | 6 ++++--
> xen/arch/arm/include/asm/mmu/layout.h | 8 ++++----
> 2 files changed, 8 insertions(+), 6 deletions(-)
>=20
> 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);
>=20
>     if ( id_offsets[0] >=3D 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);
>=20
>     /* Link first ID table */
>     pte =3D mfn_to_xen_entry(virt_to_mfn(boot_first_id), MT_NORMAL);
> @@ -74,7 +75,8 @@ static void __init prepare_runtime_identity_mapping(voi=
d)
>     DECLARE_OFFSETS(id_offsets, id_addr);
>=20
>     if ( id_offsets[0] >=3D 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);
>=20
>     /* Link first ID table */
>     pte =3D 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..eac7eef885 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 - 0x000009ffffffffff (10TB, L0 slots [0..19])
>  *
>  *  Reserved to identity map Xen
>  *
> - * 0x0000020000000000 - 0x0000027fffffffff (512GB, L0 slot [4])
> + * 0x00000a0000000000 - 0x00000a7fffffffff (512GB, L0 slot [20])
>  *  (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])
> + * 0x00000a8000000000 - 0x00007fffffffffff (512GB+117TB, L0 slots [21..2=
55])
>  *  Unused
>  *
>  * 0x0000800000000000 - 0x000084ffffffffff (5TB, L0 slots [256..265])
> @@ -49,7 +49,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     20
> #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 Oct 16 13:43:44 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 13:43:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617590.960315 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsNsi-0001Hm-Kn; Mon, 16 Oct 2023 13:43:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617590.960315; Mon, 16 Oct 2023 13:43: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 1qsNsi-0001Hf-I2; Mon, 16 Oct 2023 13:43:40 +0000
Received: by outflank-mailman (input) for mailman id 617590;
 Mon, 16 Oct 2023 13:43: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=BBjo=F6=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qsNsg-0001Fn-W8
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 13:43:38 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur04on2087.outbound.protection.outlook.com [40.107.7.87])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 01d5c385-6c2a-11ee-9b0e-b553b5be7939;
 Mon, 16 Oct 2023 15:43:37 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM9PR04MB8745.eurprd04.prod.outlook.com (2603:10a6:20b:43e::24)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.35; Mon, 16 Oct
 2023 13:43:07 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%6]) with mapi id 15.20.6886.034; Mon, 16 Oct 2023
 13:43: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: 01d5c385-6c2a-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=d6aPjGOWd3Wywd8RNhockcT3Nkb5mqtyWIDuyD+FOO48mcxX6+mUBB9hh6ELTmvAYpUs+EHEjmjqvrpdIr74MymPluvPIgB8xnbsUCTeCkxKcMn3bXA2E/WnbTptDE0GVep/V/dZeCo/I/UZCM3OwUTxyfeeeooOppUEigGcS+gCY2TxaFnd/fgzPVlYi6QSLdVwdYni4+341QHxgmiYby25bpnPbi2O9vTwckLoIG69vN8aQ1mmBdx4j04mf4QcNQpby+hv6W6LLWw7IrjoeZt3AI9geFGW3FdTPiAKqrOXNH+5QQ/CPeoedikhQWDuz5RzHjPeb7SQeAbEe6aWmw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=WBaK3ZLoLXUarm5dtYSB7/wjB4AzfB70ZMT/mwqqPn0=;
 b=Uu0TB0R2X8pbLc1xL0t+CY2/gYpjkugi5/mCHB1wGFebWwF6lZ1LKdDLzHFOOrYXjQ/UWGR2UREO0UL1/Mkq2I22kyMTRYF4/WZ7Sok/7YmGy3xpJ6lylxxehDOeBVvXOHGPiSwg2x+mMUMbGcIEFw4ELp64dJcOST5QPbs40xWIR0Mzz/CepAMcBCWVVOGpPIaxpcDxPmdTrJ9ZQK1+H/+U074OOLnS1RP3JSTIWj+/rDUfuq/AWO+rGn2zAozHO/koGeLoSMtME48UXeQ3sZcZN7y1gty+Sfv0sD+FTlagp1UzsZ7gmmcA7XXUoWKfwNsqh5gSWhANlldd+rRvsw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=WBaK3ZLoLXUarm5dtYSB7/wjB4AzfB70ZMT/mwqqPn0=;
 b=irvl6z63AkUHb/NnbijMQCnAz/joL3Yqh7i8aq9U2NXiD8Ju5Q1VDnCtJyD7syhoVoBO1FijWHzavhv8aOt11zz7GBuLe9o1klxeCqJi3/r7KLoQ8ZhaLEoQiqY7kkg3YiRVTP1Kf9TRHOqV0/CHKFBsp60ltCLUDhfHkvVra4ju2eQ1hcvGQ3c66M0rgs4+PCSaCWCC4F07jSKj8f5hXi7H85hgCd7CeOU4VSQQhJOAhI3elGhxmIyrdA7+QHpOqFYTSdYFVLMrJmTrEa7AoThGF+HYHRPZ3GnqP1DG+hUfeDOCmGUlk1RLuRqPqCa3aj6Uky1vY+7I4ZWOL460XQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <7be93272-dc82-06e0-726d-030d33aee5e1@suse.com>
Date: Mon, 16 Oct 2023 15:43:05 +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][for-4.19 v2 1/1] xen: introduce a deviation for Rule
 11.9
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.cooper3@citrix.com, roger.pau@citrix.com,
 Simone Ballarin <simone.ballarin@bugseng.com>,
 Doug Goldstein <cardoe@cardoe.com>, George Dunlap
 <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Wei Liu <wl@xen.org>, xen-devel@lists.xenproject.org
References: <cover.1696948320.git.nicola.vetrini@bugseng.com>
 <c684c36402e6740472fa91d73436ca5790e5e109.1696948320.git.nicola.vetrini@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <c684c36402e6740472fa91d73436ca5790e5e109.1696948320.git.nicola.vetrini@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_|AM9PR04MB8745:EE_
X-MS-Office365-Filtering-Correlation-Id: 174a2838-425e-4890-ea50-08dbce4dd476
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	dAor8e22nLS8HuriVFDFdO6uiaPqOVliMq57beG7wcpDQsZFN7zXKpX+6+He7u3tIsXSfGDV/tYZH8vDIvdTqzNVVXs8WbINt9/9QbHX2cwrZQKt7uTFefDN/bToVX3l1w11D+IolXrY2dCT9tNg3o/yFuLEXmYvG+oQJKcBTJTX23t+zHGOvBr3mYiFqAR3cZ0Vul4zaS7KAy6V0AXXxCqorFLVaNo+orzK+3IhM8kXb0ohSQIA9QOXn70WIQ3ywxScgr2Pld2sdRYX3EuQAQ7/K3DvMCWvkl3pXBgACloPMjXizLhNyMiszecUkgp9P2S9Jdu9LEwkQDkuy3FhsbGtQc7VMJX7pTPma0D/pbUO1hHXR7YBtNEsgPBjDX1s5SdTYAvo3+Yh7a0rA54w2/1sNVV8NUNLVxkU1VAjBE7HGyQiWEXm6+fowZYHzW4CaNRMwHChjtb7dOVaNYo4bJOHMl+SJd84wdgXcAU9NI8PZuiFNneNMt69KA87LIWleiHihs8W2zldWX+AAmw8ArJ+slO88xljVV/IVWEdvG/JEFmldWd2L/WVH/hJwPt0S7V8L94Uckfpb1PP7EfBkO7b8Dy+p7mXJRJduFlyI0Oh7U1uPfY0xHYFIyFIPw9Wou1yE6Zvz0ZA8/11RrlHdA==
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)(1800799009)(64100799003)(451199024)(186009)(6486002)(478600001)(54906003)(66476007)(66556008)(66946007)(6916009)(26005)(41300700001)(6506007)(53546011)(6512007)(2616005)(316002)(7416002)(8676002)(8936002)(4326008)(2906002)(5660300002)(36756003)(86362001)(31696002)(83380400001)(38100700002)(31686004)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?UkFNd0NINDdDeDlJOXVyUG5YNVM5eEhDaXVZdGlnV1oxS1dsUFZUdVFTRllM?=
 =?utf-8?B?NjhFakRnTmt5Zmt3U1ZSSlp0VDJreGtsRUJQeUJwemdmZGlwZE9uUXptWDlB?=
 =?utf-8?B?dlVIdSsxQkVlVEJTK21LR2dLNENGSzIxbTdFWVU0YklLa21qQXB6VmlBZVc2?=
 =?utf-8?B?NWJ2SXFSNEx3SWRDcXVpbFk0K0FSZ3laSnlRRlpmNDJTWm5nOVA4ZGV0WGNE?=
 =?utf-8?B?eU9rLzNYVWt1Vi8rYm1uaGNSRHFBVFpqL295OFY3THh6Qjlsdk9BSkRvWmNn?=
 =?utf-8?B?eWNjUXYzK09IeVMxaUVncjF6R1hmSHVFOUtiOWI0dFdaUWt1Y0NpYjFQRzdB?=
 =?utf-8?B?RFAyZ1gxMzVGWkNPVHpISzJZeDdJZDFiN1hDNlZaOGQvYVVJTm9hdEFFU3Zq?=
 =?utf-8?B?b0E1VUhhQlFOSDhwVXFsTmlSRWxhT2JjVlpob25aaVIzaFRSU0xRVUUycy9F?=
 =?utf-8?B?emVhM25NK1lsbVd1RUNCb1pISHNqVEpwMEdaSnJ6K1Exa0ZESlRpQmFVL0Uw?=
 =?utf-8?B?T0l4V2NKcElHSnpZQ0NqVCtHSTJIbzg2Z2ZKZFM5dkU4M2E1bkdnRzFxQXRO?=
 =?utf-8?B?dkdSUXp1dUZ3UzgxZENMMmhsVmhmajdsajNYUzJJZ0h6bXAvMGk2TGh6Tm45?=
 =?utf-8?B?dDIxQ2JjWGl1aGVSVlEydFd1elYzK1V5eXF0NU5aTHdCWmRMRFlKbkRza1F2?=
 =?utf-8?B?ei9qakhOT1I3cHpvVkhlUTlsaWJ0UkxDQ3hnQVpBYVNMSnlGb0R3bkhQQ3Rn?=
 =?utf-8?B?eVZTOVhUd1NFdHZ4MGliUS9hWFU4a2grTXN4OEVVNmp5RW45Y24waHYzZW1J?=
 =?utf-8?B?N0UvSmFZbGFvak5aSG1QbFJKQXdpQi9aSStzb2owaUVlSTNRYUs5My9ZS2xT?=
 =?utf-8?B?VFFZWkZNaVpFWmZrb1JxdGxOOWZhcDRaOXFjdUJDdkhQTVJzWHBnOFRQSHps?=
 =?utf-8?B?SnlkUDV6NW1xYlpTV2dMejM4RlJCZFJBdDBha3NFVUMyKzhVSjJ0bzJlVXZN?=
 =?utf-8?B?TURNM1M1K2RPWTdyN0R1dmFVM1FxY2FvaWsyODV5My9BV3dUNklOL2hDTDQ0?=
 =?utf-8?B?WEZDYmFVWUtzSmRYZjNnYnpwN3dNNDU4TWExdHFvbmE3R1luUkFBYWFaYVdl?=
 =?utf-8?B?RzNSZHcrTG40cTk2S1J5cmVCL2JhZUdsZ1Y4WEd2UmtoMWs0c1BXbjNVaHJn?=
 =?utf-8?B?eHdzNllCNHBWU0Z4bEErZUhhZE1pQVpBQkZHdkNFamlYTEFNUHJLUHVDNnNG?=
 =?utf-8?B?ZjloSEU3akdLN0FLZXpMd2ZQRXFkS1dPZm5OSDZOaHBWNnRLZUpjL2NzckZq?=
 =?utf-8?B?Zi91TkYxbmFjN0xqSGt5NitTR0pTcG1velNPSTNGV29xUlNPQm82QjFQZWp2?=
 =?utf-8?B?R2p0MVRiUWlBWkw2SU4zbjFJWnpMeW5vL3VqWjdVcjhhYzQva3BsV2NkY3FB?=
 =?utf-8?B?SExhMlhZNHdGd1NWS3UzbS9Gc2pDRHFoaHl4WGdnWVhKSm1YQWdsMUtZZ1hr?=
 =?utf-8?B?TXJ5MUN3OFh4azUyVzhnMlhBcnRhWjFjL2xpNkQ3ZEVtczVJMWpzTStwMGYr?=
 =?utf-8?B?VVlYVzJRQTRHRnl4ZWhMNDNuQUI2Sy9IcFUzMXZkVW1kK3lGTERIclpOcUZq?=
 =?utf-8?B?dFl3SlJIb3FJaGhNY3drdi96S1UxT1FXT2RPRVUxbmdQa2dYRWdWUkd5clhj?=
 =?utf-8?B?M05oOTh3TWExaUluSHJiRHdMcWlUajZxNm1jbENtTzE2ZFBBUmR0a3hJdmdX?=
 =?utf-8?B?Z0tkYXBZdG1NUzZUdXFWYUVVL2JleGlLT3NxU0lrdFZqUlRLYXFVU3laRENz?=
 =?utf-8?B?M2RnT0hkd3NmcHoyRGNkWnN5M2U0TTJTZkwxUDlQUWF1OVRXbk5oRjV5L0w5?=
 =?utf-8?B?WW9vUWRiTVBhL29oNGdLbFRuamhLekFQQlhENldsV3JwZWlZbTB5dlhta3dY?=
 =?utf-8?B?NERRVmdyZXRYRUxXYkswYnBoQXZrYzQ3UytnbEJSbWx6bTZjZDFRV2hnZmsr?=
 =?utf-8?B?cjlUVFJibFErK3lEV2VXaDNLaVVHWnRRL1NiR1pVckdQT2VVZGx2RXlka2RQ?=
 =?utf-8?B?Q0Q5Slo0QmdjNE9oV1FHVUE5Q2x4YXNuNHFXZWFZT1UvVVdHZ1dLT1Z0Ti8x?=
 =?utf-8?Q?Wo5Fo84wqCvspA1qgw4X6j71Z?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 174a2838-425e-4890-ea50-08dbce4dd476
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Oct 2023 13:43:07.6736
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: x3YMDN6uohJnQKaFIW2YSvqWpJ5yMrd1/3S5xKodW+8domYl2+nvINk8ZRW+E8FvFWxsR16aJbtRYouZB1PDVw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR04MB8745

On 11.10.2023 14:46, Nicola Vetrini wrote:
> --- a/xen/include/xen/compiler.h
> +++ b/xen/include/xen/compiler.h
> @@ -109,13 +109,16 @@
>  
>  #define offsetof(a,b) __builtin_offsetof(a,b)
>  
> +/* Access the field of structure type, without defining a local variable */
> +#define access_field(type, member) (((type *)NULL)->member)

This is not a field access, so I consider the macro misnamed. Question is
whether such a helper macro is needed in the first place.

> +#define typeof_field(type, member) typeof(access_field(type, member))

If this needs adding, it wants to come ...

>  /**
>   * sizeof_field(TYPE, MEMBER)
>   *
>   * @TYPE: The structure containing the field of interest
>   * @MEMBER: The field to return the size of
>   */
> -#define sizeof_field(TYPE, MEMBER) sizeof((((TYPE *)0)->MEMBER))
> +#define sizeof_field(TYPE, MEMBER) sizeof(access_field(TYPE, MEMBER))

... with a commend similar as this one has. (Or the commend could be
slightly altered to cover both).

Further, if fiddling with these: Wouldn't they better move to macros.h?

Jan


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 13:46:01 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 13:46:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617595.960325 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsNuy-0002j4-4P; Mon, 16 Oct 2023 13:46:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617595.960325; Mon, 16 Oct 2023 13: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 1qsNuy-0002ix-1B; Mon, 16 Oct 2023 13:46:00 +0000
Received: by outflank-mailman (input) for mailman id 617595;
 Mon, 16 Oct 2023 13:45: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=4UvS=F6=arm.com=Bertrand.Marquis@srs-se1.protection.inumbo.net>)
 id 1qsNuw-0002io-2A
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 13:45:58 +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 552d708a-6c2a-11ee-98d4-6d05b1d4d9a1;
 Mon, 16 Oct 2023 15:45:57 +0200 (CEST)
Received: from AM6PR01CA0054.eurprd01.prod.exchangelabs.com
 (2603:10a6:20b:e0::31) by AS4PR08MB7603.eurprd08.prod.outlook.com
 (2603:10a6:20b:4cd::9) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.35; Mon, 16 Oct
 2023 13:45:53 +0000
Received: from AM2PEPF0001C715.eurprd05.prod.outlook.com
 (2603:10a6:20b:e0:cafe::62) by AM6PR01CA0054.outlook.office365.com
 (2603:10a6:20b:e0::31) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.35 via Frontend
 Transport; Mon, 16 Oct 2023 13:45:51 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM2PEPF0001C715.mail.protection.outlook.com (10.167.16.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; Mon, 16 Oct 2023 13:45:51 +0000
Received: ("Tessian outbound 0ae75d4034ba:v211");
 Mon, 16 Oct 2023 13:45:51 +0000
Received: from feea0d619a8f.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 FEBA4B02-67AB-405F-B66F-69CC37DC33B0.1; 
 Mon, 16 Oct 2023 13:45:39 +0000
Received: from EUR01-DB5-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id feea0d619a8f.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Mon, 16 Oct 2023 13:45:39 +0000
Received: from AM6PR08MB3784.eurprd08.prod.outlook.com (2603:10a6:20b:85::25)
 by AM0PR08MB5426.eurprd08.prod.outlook.com (2603:10a6:208:184::18)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.34; Mon, 16 Oct
 2023 13:45:35 +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.6886.034; Mon, 16 Oct 2023
 13:45: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: 552d708a-6c2a-11ee-98d4-6d05b1d4d9a1
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=zDKTH/aQs4frHvTevE4VxDkD5FPpkunc9JITpyjFltY=;
 b=P1Fqf+1L8aS/lUbRBLt1FpHxmfomHsfI1jyrv3760r960JmJ8/XhtBQSVtc4uG4uUGST0b0A6Ai+sKbuCO918rv+qT+kAeTHwoOJbkhGquD8fouX6Vb8of06jKUdAENeuf3hYIszXXQlIk6HrSyEXAX2cw/0R8K4tf/5pqiM254=
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: e834b1b344c69ead
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=UNG6+FBdAMHrl7skWa6EsiHqnX3qBT6IponkKyxeEwd6szW0LsQmwFYmqQopCbHVp9SMv37eZZwd8STs+Wb7rKx4ANjh09OQf4qwEgets9D16NnqgyWh65TMH00aaejEnzJNfFKXnNF2LRj27I05ZC3kA4DuQzLc442lPLjB/lG7E/CAoem9iVbL3+Wn/cIFjvewDNpiMGEBuTQqqDWOiAcZ4PXSNBR08DZo7qTOwJ4Q7nQS4FpUa5Z6gfsFVKmxzsvrOPLzbw1mzVCOxVnGUmj/dpP/w4hj7L8VaLEZka/fW8GyVTqZ09+kvkZCNDOrfYVWWgd+7/I5SWG/m4K7Hg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=zDKTH/aQs4frHvTevE4VxDkD5FPpkunc9JITpyjFltY=;
 b=JmWj49OKpzAjrphvI7Wm3CKT7lydE13OZj3qbkCbI6Q0/iHwFJr0dM4SxnBtfAy2Sa7uRRz83BeL4oqEx/Lmt8vZOM+0iV/+erOmc6XcQ9M+/c9lWv+tc1w27Iyt4aiPDUJGizKFr8kJpAD0nt6lS+nPc0mfkt8Tyrj1SphkSTI48BDy2Z0NclCnJwS3W9MAQdtkZrH5YnF4YTtRypKRTldoZGf8a6XEvcKaHDdVpLeaXFLdkCgG288Ns4qBf0tLKUliK5Mk7JGEarpdixO1edEcxYra5HGcgwPUnEwSccpGZIK8m2EApdotj1ghI22Oxd/EBaWoHwD8pncKl5FKMA==
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=zDKTH/aQs4frHvTevE4VxDkD5FPpkunc9JITpyjFltY=;
 b=P1Fqf+1L8aS/lUbRBLt1FpHxmfomHsfI1jyrv3760r960JmJ8/XhtBQSVtc4uG4uUGST0b0A6Ai+sKbuCO918rv+qT+kAeTHwoOJbkhGquD8fouX6Vb8of06jKUdAENeuf3hYIszXXQlIk6HrSyEXAX2cw/0R8K4tf/5pqiM254=
From: Bertrand Marquis <Bertrand.Marquis@arm.com>
To: Julien Grall <julien@xen.org>
CC: Federico Serafini <federico.serafini@bugseng.com>, Xen-devel
	<xen-devel@lists.xenproject.org>, "consulting@bugseng.com"
	<consulting@bugseng.com>, Rahul Singh <Rahul.Singh@arm.com>, Stefano
 Stabellini <sstabellini@kernel.org>, Volodymyr Babchuk
	<Volodymyr_Babchuk@epam.com>, Henry Wang <Henry.Wang@arm.com>
Subject: Re: [XEN PATCH 10/10] arm/smmu: address violation of MISRA C:2012
 Rule 8.2
Thread-Topic: [XEN PATCH 10/10] arm/smmu: address violation of MISRA C:2012
 Rule 8.2
Thread-Index: AQHZ/el7rXFHK+9WvkOYQpiDC7n8ALBMJIIAgABJsYCAAAH9AIAAAgSA
Date: Mon, 16 Oct 2023 13:45:35 +0000
Message-ID: <92C52E39-729F-40AE-A02F-556C8EE471CB@arm.com>
References: <cover.1697207038.git.federico.serafini@bugseng.com>
 <199886f6ba1f2d5701eabd080b4f9723fc28f4b9.1697207038.git.federico.serafini@bugseng.com>
 <39d3f8e0-61cf-4b8d-84f1-a5087ba8ead4@xen.org>
 <D3320838-1E67-4339-A3D4-A3E60FBC4117@arm.com>
 <c9a7f059-4cf5-4a75-b231-573c4fe29b37@xen.org>
In-Reply-To: <c9a7f059-4cf5-4a75-b231-573c4fe29b37@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.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_|AM0PR08MB5426:EE_|AM2PEPF0001C715:EE_|AS4PR08MB7603:EE_
X-MS-Office365-Filtering-Correlation-Id: 90fcfc62-ffda-4186-f346-08dbce4e363a
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:
 7JmNL29hDDBTDB3F8sf+dyoN0E/ayFKp3rN8y09JT8hEJ3yItrir5OzTluOfV8e+dxvVgX7a2ScVsMDYAXeCKqOolz+UUuL4eeKEbR/Al4nCg0CR66BWGRWjWJn13JWiL2xhJjW1IgKdeKR8JzUmMsk4oV7F5OAMpp0WIJipbFZBSoHV9xx72khm7zeo2m/nz83eDBgytPI6kyrHkntmR9suiSv1+/gmra8WY473kYzzwSXvtuoRRp0mwVasm1/VN4QP4mPgbXSzJI3rumGm4kd7nn0BMYKksmWGOflHAb1Ih6L4layGn3t6lm6ecnLufeRKarI8UQVo6xVljdcFxplzEmGgo1mr84bZg0Kpy4ACqNsThsE9ZYceV8LaE96oCtvxcRpn7ViSy7O2mSXesbR2mh1VzwY6I1ewdIOcPENw+sye/jWDqbkSbKW+WZKRbCl81bllaVWSnpmU9HqFIBNUd1+aC7G1a7RvvhHJdSRZSBlaNt68Hu/edmEKdRlpQ+M7V+zu8kALFQZR4z0DCUXweBc31r+MNCoBsqo3LEdjkODKdO6p+j+ff3qtlu5vygo324mqkEEkjfawNZ9egFfKUdQa0VKB+0fYUlDY1BN0/UAwtwpTosNGD7f8t9rdE2K1sx0oEEw1CRa8xDXtGA==
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)(366004)(136003)(346002)(396003)(39860400002)(230922051799003)(64100799003)(451199024)(186009)(1800799009)(33656002)(8936002)(8676002)(4326008)(5660300002)(2906002)(41300700001)(86362001)(36756003)(38100700002)(6506007)(38070700005)(122000001)(2616005)(26005)(6512007)(71200400001)(478600001)(6486002)(91956017)(53546011)(66946007)(66556008)(66476007)(316002)(6916009)(76116006)(64756008)(54906003)(66446008)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="us-ascii"
Content-ID: <5FA95380F693184A9E132B1B5B77E566@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR08MB5426
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:
 AM2PEPF0001C715.eurprd05.prod.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	30da28cf-e8fa-4d2c-701f-08dbce4e2cd5
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	YOK34zYo/Ok3r4HNwmd73kSrqzm0qxjwwPLxwVKHKJ2jCDtkYlAiR8bJQZtpclgi/dGxP8eNlvvMvbltAW9J6uXQRyRa96Ywk9ah0Vf/f+ZZgDkIFPVThY3NOI7jXfdOznYUy1bBsDEAOZtYJgG+xcQbvXECKu6YJmooxb+f1TrtpidtV6Opm0HrNhkOLqqbdTQ6W7JROflmSuTdFcwkVe4LmtAfmSqsB41UNjl3Wlc/KcU3AoTo7jTWxIbqKW9wuEk4zgaMgPNaxkmxgcSrUKzRrf3F9Dk9m+IGvsVrorwINN5uw+xys657e21bslNITQhKCVIBVVN4vmsVj8GKmN60W0G3HafM9SOxf/olaAicTuXNKyFDBskPRhpNNkS5QUl1Saoc8AiiNf2E+s6klvFkE7J9gm178noc/niwu3aRPtl/omNPhVoG2EcDii6lMAYw9/RiNoJ6jnsXAWMeN7swa7nXNxEA3HkoVbcfZtHsMKHQG/6ZbIRFE7wMS9F6CfgtBBgR6A6AKjDIGTtdU0jyt+3qdDbLR0dWkN+290sSv/LAbBOGMysaVMEAkyvPOU+CUQooJu5R8qCeTUScAxyvyfhFRAFCuHMVhuMNDPsd3MmIhrELB6HBrc3njRLRPhhakZ2A5Tfd/HNYBRu+EBvQOiJxY7qM/Q1P5AyuEETybszpUAlw5A/kU+mWJxQMJQw9UkAHJPU1UMeaG3of5EM/UtbMpVyVWsjGVmWn0+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)(396003)(346002)(376002)(136003)(39860400002)(230922051799003)(64100799003)(82310400011)(451199024)(186009)(1800799009)(40470700004)(46966006)(36840700001)(33656002)(40480700001)(8936002)(8676002)(6862004)(4326008)(5660300002)(2906002)(41300700001)(40460700003)(86362001)(36756003)(6506007)(82740400003)(356005)(81166007)(2616005)(26005)(6512007)(478600001)(336012)(36860700001)(6486002)(47076005)(53546011)(316002)(54906003)(70586007)(70206006);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Oct 2023 13:45:51.5192
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 90fcfc62-ffda-4186-f346-08dbce4e363a
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:
	AM2PEPF0001C715.eurprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS4PR08MB7603

Hi Julien,

> On 16 Oct 2023, at 15:38, Julien Grall <julien@xen.org> wrote:
>=20
>=20
>=20
> On 16/10/2023 14:31, Bertrand Marquis wrote:
>> Hi Julien,
>=20
> Hi Bertrand,
>=20
>>> On 16 Oct 2023, at 11:07, Julien Grall <julien@xen.org> wrote:
>>>=20
>>> Hi,
>>>=20
>>> On 13/10/2023 16:24, Federico Serafini wrote:
>>>> Add missing parameter names, no functional change.
>>>> Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
>>>> ---
>>>>  xen/drivers/passthrough/arm/smmu.c | 6 +++---
>>>=20
>>> This file is using the Linux coding style because it is imported from L=
inux. I was under the impression we would exclude such file for now.
>>>=20
>>> Looking at exclude-list.json, it doesn't seem to be present. I think th=
is patch should be replaced with adding a line in execlude-list.json.
>> I think that during one of the discussions we said that this file alread=
y deviated quite a lot from the status in Linux and we wanted to turn it to=
 Xen coding style in the future hence it is not listed in the exclude file.
> AFAIK the SMMUv{1, 2} code didn't deviate very much from Linux. I can't t=
ell about the SMMUv3.

True that i had the v3 code in mind, we might not want to do that for v1/2 =
you are right.

>=20
>> At the end having a working smmu might be critical in a safety context s=
o it will make sense to also check this part of xen.
> I don't buy this argument right now. We have files in exclude-lists.json =
that I would consider critical for Xen to run (e.g. common/bitmap.c, common=
/libfdt). So if you want to use this argument then we need to move critical=
 components of Xen out of the exclusion list.

I am sure we will at some point for runtime code but we cannot do everythin=
g on the first shot.
I was not meaning to do that now but that it is something to consider.

Cheers
Bertrand

>=20
> Cheers,
>=20
> --=20
> Julien Grall




From xen-devel-bounces@lists.xenproject.org Mon Oct 16 13:46:34 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 13:46:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617601.960335 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsNvW-0003Pn-Hx; Mon, 16 Oct 2023 13:46:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617601.960335; Mon, 16 Oct 2023 13:46: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 1qsNvW-0003Pg-Dh; Mon, 16 Oct 2023 13:46:34 +0000
Received: by outflank-mailman (input) for mailman id 617601;
 Mon, 16 Oct 2023 13:46: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=BBjo=F6=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qsNvV-0002io-PE
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 13:46:33 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur04on0613.outbound.protection.outlook.com
 [2a01:111:f400:fe0e::613])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 6ab61f67-6c2a-11ee-98d4-6d05b1d4d9a1;
 Mon, 16 Oct 2023 15:46:33 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by GVXPR04MB9832.eurprd04.prod.outlook.com (2603:10a6:150:119::9)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.35; Mon, 16 Oct
 2023 13:46:28 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%6]) with mapi id 15.20.6886.034; Mon, 16 Oct 2023
 13:46: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: 6ab61f67-6c2a-11ee-98d4-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Bgrk9Z6DEiZ5h9wG3XZwN13PuYV1kOjWEzb5ADFiCVta5zhfDGVB0fXdEPhgxCyIZDUHNO4l/GK1YbIgpZSDgE/Gg9T/ebaS6bKZv6RZaTDBlF57squoKipJbH+/sB2Jl/kHzFLcObjg7zAAZMfloUTbQU8LaxD+x3+MbkJzafzrCvfz1bDP8URISDG95Pb/VDmywdASht0obHOvQQCtR4lRwi5TGsWHQi6HCaOsANcGm+KCeFmvMG5fv0qN3Hoq4egTg2U2duaqnJ0yJW6mV/d/l27CNkCxJyjcSTVnf4KArOedn7tAZIJgPQYDVC9n6o6m8d1t1rYIL/5DXx2a0g==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=4YBYUd9zr4aIu1nkPk8WLGBE4ZzQT6DzC+Sv39wG8QY=;
 b=Rr6q528yd0/qpAIGc/qGZce71Wsp3cPBzXI/UYyqqcJFO+2C4GTIMZQQGw+onV11tqu7WUxFl++CnU5rn92an/fi76eX1tqbQ1LKkB8hfRGVJzYGjJQwIU7SVwPlUokBv7Hxx8G/4GhdZJklK9gXOKUXzR741zMKFFV2lKne2/T8h1ieP3wsjEwCTECFk+WjWyL0SXtBoU+ffmNgGvxWw8z3vvcmQfjY3Emi/m5GCbL/SUXjETRKQ8UyWaSbRT/Fq9GFbLrz/9tpPpOtXKOLlBB9wzUTLTG/4DebH+JmVOEz+oEa/BLHlAxbu724U20pVxzOzzeCwS3dxWJCUulRjg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=4YBYUd9zr4aIu1nkPk8WLGBE4ZzQT6DzC+Sv39wG8QY=;
 b=XBt1hSfQ34+DXlTusNZwXLl0vPeYC83Vbg+MARUwYf2Pmcz8jU9p8twPDjYt6ulcHUHbnFwoxDgEmc0wUS8NJf+D+3hl5qSu+BplUsRy1hG08iUJbFMu8q5U4F+mmS4Gnhl6wE/oCkqa+QkYEhskdcHqiEauDNH71AbONIOcdqhTwmCmC0nqvLC2Z0zuncl7lAVdUvfkiJEe9aabhSetqrZ+rbxgprwk4kxCkWiuE39iHej8BgdH+7vwnr2CcyNQUDheOPCS7mnU4ELYMfU2VR/djSwM+X6/MZd9AoHV5IwqDcdfxE3l/ygCul0JdOjcExFUjbUP8yhypeHePiF5Hw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <a3356cce-2531-cf5c-2114-ffbf52bcd50f@suse.com>
Date: Mon, 16 Oct 2023 15:46:26 +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][for-4.19 v2 1/1] xen: introduce a deviation for Rule
 11.9
Content-Language: en-US
To: andrew.cooper3@citrix.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,
 Simone Ballarin <simone.ballarin@bugseng.com>,
 Doug Goldstein <cardoe@cardoe.com>, George Dunlap
 <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Wei Liu <wl@xen.org>, Nicola Vetrini <nicola.vetrini@bugseng.com>,
 xen-devel@lists.xenproject.org
References: <cover.1696948320.git.nicola.vetrini@bugseng.com>
 <c684c36402e6740472fa91d73436ca5790e5e109.1696948320.git.nicola.vetrini@bugseng.com>
 <9c728576-16e0-4d72-9019-d6f5fe8f033b@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <9c728576-16e0-4d72-9019-d6f5fe8f033b@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR4P281CA0143.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:b8::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_|GVXPR04MB9832:EE_
X-MS-Office365-Filtering-Correlation-Id: 105e2c1d-8ad8-4b00-8ab7-08dbce4e4c51
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	9LJf3IkI8c/KnssUcs1g8GkFHtXpFxVLDfF+LraC0xHnnSzOD0t10HSePAZ8ATk4GYFDFFnyNBVa2ILjCsZZsfMX4C6Eb12LfMTcTvMZ4OwmxALdfp9hDQ/ZIjZuKN+mKBJAJU8NxCO39hG8Thr7mOZ2jw7niJh2fpf0nvRdJPIqjVvjaJdmqc9gPehpMkaQJ3TIMU1hHu0q+2TsRfn7L7dRplCxIzQwYeZeH8Xro0r2WmzayNvf7+fA0msxOaXIFg/KwOGhKKJRL2yLQs3AyH5l56OuiXDA/FJW/Qd52uJLbvpMkaYTBfbWHDBOklOmUzfAxtsIZGTGLomWnn8kwOlPnq8TxJMquV5SnRQwpZSsPnpJyHLvzf/zUjyx3KS+vNYP3aTUSzen+oBE+8Zhzx5we2cdiRJzsLmVmcRUJCR+LEHbHshWqcW0+irjcjtw0wwKMwm+TzKcvntA6rZc6vvrAVVgWfywxLKMaeZfoQBTxHGDsfTkhCBnTlwYreEGAb14j2Kgdgm/Zvw6k/ZJcgYVwbC8ZHLFSO3eSp8holxV7/+E5+Ky3lEADtUcOgUlmJ3vZjP1miViqrHvVaVtgbYZWPRU/6gDfne6tZsmd2qOsPwtzY1WWqHSavqy8dIGkBCCRKq1Q02U5oYAuQ+zLA==
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)(136003)(346002)(396003)(230922051799003)(1800799009)(186009)(64100799003)(451199024)(6486002)(2616005)(6916009)(66476007)(54906003)(66556008)(66946007)(478600001)(316002)(53546011)(26005)(6512007)(6506007)(5660300002)(8676002)(8936002)(4326008)(2906002)(7416002)(41300700001)(31696002)(86362001)(36756003)(38100700002)(83380400001)(31686004)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?MFA1Y21tSk0vRk5kNGdkWXUrWmxUak1lWWQvZUdmeVVRQXpXbFFXZ0VQV3ha?=
 =?utf-8?B?TVBtUklRVmdGTE51eWl4Q1pGQzZlckNmT1BwY29Zd28yaDh1YXZCMUEwUVRM?=
 =?utf-8?B?RE53dy9PQnQzVFdiV1NvWnpJMXpJbVNSQWxDY0QyMHRaakNjQ004YVd3MVFY?=
 =?utf-8?B?bUgzcTJvd0FUOHNMT0tqUDhGY2U3dExnYXZEQmppbVNQZ0dCbmI4MlpMUFpS?=
 =?utf-8?B?MCt6MmJ2MDRreXV3bEY4OVl1R2hzS2VoK1M1Y2hia0hxYnEzMGNEWjdkNmxZ?=
 =?utf-8?B?aDR2WUhjUEtOMk1vOU1sOUpIN1YxRzVGVjYwdVRJQW1tcEJKYWVnbXpQNmxB?=
 =?utf-8?B?NW9pcUthUkxRM0Iwb3doejRycW9mdFFqK05vemFOWTZwM2VDVFpnTUxoZFNC?=
 =?utf-8?B?RlRVT1cxS1MyRE5VbmdoWGYxaGs4RnAxc1NoMFZxMVYrYWV6NlpXV0J1MC85?=
 =?utf-8?B?d0R5N3dpaFkyaUdkK1dlR05saEQ2N1QyT0ZmR3FOQjBJKzNEQzN0L2poSnhw?=
 =?utf-8?B?MnlCTDU0dlVFQ2liTFdvcGJqZWFzbUI1NjE1V2liT1d2U1h1ckV3NkR6RWFG?=
 =?utf-8?B?ZFJzdlhBbncwZmtzbk5FMG1xcFZxUmZieUFmM2Z5azg2ZHZUOFpqaHhQbkl6?=
 =?utf-8?B?WG9FeXFhWDlvWjVXU1R0MUYxbEk4SStPWnJZdXZsV2cvak9Zak4yWjBCTDN2?=
 =?utf-8?B?MDFvV1V3ZWt2Yzg3SjFLTW96Y3RtcERaSnVFdDlaNU5QVWdJcTZJNXdpbkFJ?=
 =?utf-8?B?TnZuamdWNDBvemNoK0UrMGhVckdHeXRYeUMvdGF6MnpBaHZFdEZQOE9teHNW?=
 =?utf-8?B?YnNHVWVxQ1NlVGY1NWROVGZYaVlJaHhhSmhRUllYUlEwbVluUWl0NWtoMC9n?=
 =?utf-8?B?a1dTbHdDSkpRR096SE1SMDN2SDJsVmZka0g0bHd3QlB6MGJjOGtxbjZLTTQz?=
 =?utf-8?B?SlFCanlNcGZ6cmU2U3R6cVlCVlorT2daNGZibEp2dTBXRlZrYzJxOEdWNEJH?=
 =?utf-8?B?SFFhQ2JtTzNXQ0NiQ0gvNzZjZ3pxemRESEh4UDg3YStVM0xURXloUytOQ0dT?=
 =?utf-8?B?TStxTHVLNmpGM1dXUTNoRXBjWFdzcWp4VXR0UFJjM3hzNjhMOUJ2Z1R2VkRM?=
 =?utf-8?B?ZnlxOFdzSXZjeGJLQnA5eHJqVllGUnNjNmpDYm1EUkdvajN6amc3SExrbTdN?=
 =?utf-8?B?WGx1a3YvQU43S1RBUVBxaG51TmVySXlQS0VWemsvM0w1UHVBVzVpK2EzUHlp?=
 =?utf-8?B?a2t6YlhpenFGenlWRFR1SHJYZVp2cWtJemZDVVNpbmw4ZDNzOTRKRVlnNnFP?=
 =?utf-8?B?SU9TeGRvVFpKeHJQbzU1N3ZjTThVRm5peit2a09leFNmdUl3QjNxYUs4UkVi?=
 =?utf-8?B?MnIvQmN6TFRYZDZDdUFQMUlQbCtTT3h6ZlZVNE90a0FWU2d0V3RjRFBRblIz?=
 =?utf-8?B?OWdWL0pxN1BvK2FkRVNueG1qczFoTitQWWRhVGgrenlaa0YrKzZJaGNJNGNw?=
 =?utf-8?B?VmRGZk0zWmRuSGxjb0dvUEhIaWd5YlUxVlZZRHpNY0R2Y0tjTUJKeHBneFV4?=
 =?utf-8?B?MDI3d1o5dTI5MmZlL000akVGdm1vZVJEbkxPajVHOWtXdk8xZkZUamdXZ3Qz?=
 =?utf-8?B?c2RDNVczaDg5eTVQN1Jlc2NYcnBiZ0ROUzU5c3dSUlE1NFFCc1RaeWt6Uko4?=
 =?utf-8?B?VG9OcWJ5YkErUTBqTW5YbjFtU1d3MERHdDN4TlRlekFvN1VDVDVaMVZxUU9u?=
 =?utf-8?B?SkUzYWZDQldCUnN5K0FodWlzeUNBRG14NEJmM2s3U3lZZmpQTVhzWXFhejBq?=
 =?utf-8?B?QmhQaGplaFRTblV2WS9XZVliSVVCZ2ZOTktSY1MwRVhKK1lGWENmLy8rZVlV?=
 =?utf-8?B?VGMxazc4YWxvZ3pqTkZiaVFlZG45SzA2OFI3R1JrUHdpOGpUWXYySnBibUFa?=
 =?utf-8?B?cDcvdmE1N0JncHFVRHM3K2hDRnB0L0d6TFRxc3pUSUlyZjBRbVVrdktJdno0?=
 =?utf-8?B?YWRSc3VSZjhCR3EybzRqekJMTmNLUURtN0UxTkxSVFFpODgrWDZML0txR2p2?=
 =?utf-8?B?aW1kQTNoTEVVYkJFeWU2a0pJNFhUTlNxekZBaThEQzNiRGp2cnNibWdUNHVE?=
 =?utf-8?Q?V106pfO+FCoexZzsFcUfguCNu?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 105e2c1d-8ad8-4b00-8ab7-08dbce4e4c51
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Oct 2023 13:46:28.8810
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: xVRI+E9UCZr2Kz4jy3F/Rp9Z/gDW47sL7M+0zsQAyF/M8j539HM7aD3HRqvAsfVntLlqFM/XfvAaZrJWwrEAHw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: GVXPR04MB9832

On 11.10.2023 18:56, andrew.cooper3@citrix.com wrote:
> On 11/10/2023 8:46 pm, Nicola Vetrini wrote:
>> diff --git a/docs/misra/deviations.rst b/docs/misra/deviations.rst
>> index ee7aed0609d2..1b00e4e3e9b7 100644
>> --- a/docs/misra/deviations.rst
>> +++ b/docs/misra/deviations.rst
>> @@ -199,6 +199,11 @@ Deviations related to MISRA C:2012 Rules:
>>         See automation/eclair_analysis/deviations.ecl for the full explanation.
>>       - Tagged as `safe` for ECLAIR.
>>  
>> +   * - R11.9
>> +     - __ACCESS_ONCE uses a 0 as a null pointer constant to check if a type is
>> +       scalar, therefore its usage for this purpose is allowed.
>> +     - Tagged as `deliberate` for ECLAIR.
> 
> Really?
> 
> #define __ACCESS_ONCE(x)
>     (void)(typeof(x))0; /* Scalar typecheck. */
> 
> That's not a pointer.
> 
> If someone were to pass in an x who's type was pointer-to-object, then
> yes it is technically a NULL pointer constant for long enough for the
> build to error out.

Why would it error out? ACCESS_ONCE() on a variable of pointer type is
as okay as one on a variable of (some kind of) integer type. (Sadly the
check as is would even let floating point types pass. At the same time
the check is too strict to allow e.g. single-machine-word struct/union
to also pass.)

Jan


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 13:51:34 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 13:51:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617606.960344 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsO0G-0005Yh-2U; Mon, 16 Oct 2023 13:51:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617606.960344; Mon, 16 Oct 2023 13:51: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 1qsO0F-0005Ya-Vf; Mon, 16 Oct 2023 13:51:27 +0000
Received: by outflank-mailman (input) for mailman id 617606;
 Mon, 16 Oct 2023 13: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=/fZZ=F6=citrix.com=prvs=646b5f8ff=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qsO0F-0005YU-06
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 13:51:27 +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 17c696b3-6c2b-11ee-9b0e-b553b5be7939;
 Mon, 16 Oct 2023 15:51:24 +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;
 16 Oct 2023 09:51:16 -0400
Received: from MW4PR03MB6428.namprd03.prod.outlook.com (2603:10b6:303:123::8)
 by MW4PR03MB6329.namprd03.prod.outlook.com (2603:10b6:303:11c::6)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.34; Mon, 16 Oct
 2023 13:51:14 +0000
Received: from MW4PR03MB6428.namprd03.prod.outlook.com
 ([fe80::831e:28d1:34dc:f518]) by MW4PR03MB6428.namprd03.prod.outlook.com
 ([fe80::831e:28d1:34dc:f518%5]) with mapi id 15.20.6863.032; Mon, 16 Oct 2023
 13:51: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: 17c696b3-6c2b-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1697464284;
  h=date:from:to:cc:subject:message-id:references:
   in-reply-to:mime-version;
  bh=2cE6YoDPEo7VVA2JfdYN1y3a11ih7FLDaPLJIG4q+Ac=;
  b=c5XjmF/oDt4BTh8rBJpi/YJrkvQYJ6mwsBQ/5Quk/cAYDYMihek1Fatx
   9jlghKo2dZKDy7u3dq33W8NDijImybwnfOb0EPolN6vm7pd8OMj3gbU6q
   b6CGLX6MziXF2IJfbeAFUTMGanVV8MCLkUYvavXsqOTIusuRjkT85xlNN
   8=;
X-CSE-ConnectionGUID: KofkAnAIQ/mkRLgrBFI6/A==
X-CSE-MsgGUID: 9TXjAZSuTwiNgKCsrIVZPQ==
X-IronPort-RemoteIP: 104.47.70.100
X-IronPort-MID: 124314541
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:FQhYkK3wV/UC0H3qTPbD5RNwkn2cJEfYwER7XKvMYLTBsI5bp2QGy
 TFOCz+GPfuOazCjfYxxPI2x90xUupSAnNNkTFFupC1hF35El5HIVI+TRqvS04F+DeWYFR46s
 J9OAjXkBJppJpMJjk71atANlVEliOfQAOK6UbaYUsxIbVcMYD87jh5+kPIOjIdtgNyoayuAo
 tq3qMDEULOf82cc3lk8teTb83uDgNyo4GlD5wRnO6gS1LPjvyJ94Kw3dPnZw0TQGuG4LsbiL
 87fwbew+H/u/htFIrtJRZ6iLyXm6paLVeS/oiI+t5qK23CulQRrukoPD9IOaF8/ttm8t4sZJ
 OOhF3CHYVxB0qXkwIzxWvTDes10FfUuFLTveRBTvSEPpqFvnrSFL/hGVSkL0YMkFulfImZA9
 tUeARE0KRWAvca52piVa7crr5F2RCXrFNt3VnBI6xj8VK5ja7acBqLA6JlfwSs6gd1IEbDGf
 c0FZDFzbRPGJRpSJlMQD5F4l+Ct7pX9W2QA9BTJ+uxouy6KlFQZPLvFabI5fvSQQspYhACAr
 3/u9GXlGBAKcteYzFJp91r13LOUxH+mBNt6+LuQp8JagnSh/XEvFxwwWniQuuOYtHyGYocKQ
 6AT0m90xUQoz2SpRNTgWxyzoFafowURHdFXFoUSyAyL0LuS3A+fCUANVDsHY9sj3OcpQRQ62
 1nPmMnmbRR3uaCRYWKQ8PGTtzzaETgYKyoOaDEJSSMB4sL/u8cjgxTXVNFhHaWpyNrvFlnNL
 yuiqSE/g/AZi5EN3qDipVTf2Wv0/t7OUxI/4RjRUiS99ARlaYW5Zouur1/G8fJHK4XfRV6E1
 JQZp/WjACk1JcnlvESwrC8lRtlFO97t3OXgvGNS
IronPort-HdrOrdr: A9a23:EEQ8J66F+KOD90uelgPXwMXXdLJyesId70hD6qkRc203TiX2ra
 qTdZgguCMc6wxwZJhDo7690cC7KBu2yXcS2+Us1NyZPTUO1lHGEKhSqaXLhwD6Eyrl/uRB1a
 Fme60WMqyTMWRH
X-Talos-CUID: 9a23:g3XetG9QIKOaj30GUAOVv20TFMMMdFT89TDVIHWcBnxDZpzLDnbFrQ==
X-Talos-MUID: =?us-ascii?q?9a23=3AzRlJlgzMyuUJtlpQ/M2cXy+oFeqaqPWSOEIko64?=
 =?us-ascii?q?bh9aFEyNTECyHrQqFerZyfw=3D=3D?=
X-IronPort-AV: E=Sophos;i="6.03,229,1694750400"; 
   d="scan'208";a="124314541"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=A0+e7t6YZDFS1WL0BdNrEvFH5TZYBRSkWFPq69ocnBCFDDkb4G+F5DuVsvmgewu8gZzj+hKVw2Vh7ErghpvGILqi05fPRImnJgIBsehaw9Y/9/d7mLQX8NDUD0KmZKq5kzBwFjiKLSK8mbOXWlO56NCVNUc+03ZEEfBALYFxnS6DCoWAmTcrNnvdg1IudR75aB5NRbC1YTXC1QqbGhw2Tku0ijl9zxZxgIWSODpswyAAYEgRX5rKKM1D9nnSK356RVEss3UPBy8B8sJtUlUYriD2UY/mFqknkziM9Frg/Sh6rG7eeJVmuzcU/Mih7ZRpBznvSuzigGxAEYspM2pkDg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=VTJmAOcwzM/LiJYGBaCrr/9mqOAO7m86g6k4IF62U9A=;
 b=mPAENfVWXDRtcIoyAi/z15C4f0/U/ueF5ZBCz1nZWbmjNDEb9P71AcBUxaaFTZ19xlk5nNUieVMbRUADApfzLuqNwZBAUMpK6GDO02ONShAadGioAxGtaZYinpX7E1HSWiqNLr4cQ4bhMEaZjqhp95IB5/SzgDtPQ8CCHJLYhjP/bnQHk4uHgJDN3s/fFZ0UVDHXRmQY3YGtL8AMB02MVysheT56FSkx0QPYpWN4wYO7G5lIGERlgqLO8imT6b1u6ntG3drZCCRkoBF9F95vg7nqQ43fpbxshUZVLrflcHMUsrejar/1fN+dUrnilnYdnUDPG0Gwn4d8j793IyRJ5w==
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=VTJmAOcwzM/LiJYGBaCrr/9mqOAO7m86g6k4IF62U9A=;
 b=aQW+HDlzeIDZJ81L7b/0rL8nTMdpLa7Edx+z5N++xG2rvG/vElvOTvrjNFbXz/hdYU1WCKBeHDvW0a65iee/FKzpdt0vxp4u2fvycPfcuaqUrucjXviIdqBXf7JzdVxTtVBucdKtySXmiLl9/eiErwRkIZhkiUh8bSHnD/7D6LI=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Mon, 16 Oct 2023 15:51:08 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: Henry Wang <Henry.Wang@arm.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
	Paul Durrant <paul@xen.org>, xen-devel@lists.xenproject.org
Subject: Re: [PATCH for-4.18 v2] x86/pvh: fix identity mapping of low 1MB
Message-ID: <ZS0_zPxGLwfsuVvX@macbook>
References: <20231013085654.2789-1-roger.pau@citrix.com>
 <9aaae72b-fdcc-b48b-1155-e1cb0401d7d1@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <9aaae72b-fdcc-b48b-1155-e1cb0401d7d1@suse.com>
X-ClientProxiedBy: LO4P265CA0312.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:391::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_|MW4PR03MB6329:EE_
X-MS-Office365-Filtering-Correlation-Id: 7eca3f59-608b-4a6a-8119-08dbce4ef660
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:
	j1ZeXGLflwOGqnQ4M8lAI1YdX3as9rLVFk3k2+H71/+J+JJIb/E6YWzbmVNpMW/5hnYzf5oQU7Mju3WV2QjUC5XQHEJKCsPLkaqNw5IvGhgJKo52D+fpMWw0bZmN/3D3DnZCcEobTX3otp0aZBjJ7WK0x+4WIyJDcDsKyFIs/Tahl5wQ2Za3el2Dx/2M8oSyc+Cpfbls/VqBmVeiAcRK1dH/I/VISJ9KCKFKy0C9O0VjLRDwp0FcRG5oJH0fgQlhlIYbrk0dziVtUEUitfENgL70o7o2u8XhIY9WCIM5lnuNUuxnQ1BX5MOuyBGZR45bcOryqGljrDqTImY0B9VJqj4GYq6Qm0v2CTaUMb2aZ77sIWAJgdhzLjcUKUZ1xv8cjrMKWb10A7MtpxD7TSgwmcco1sJutynX78bPKSXNcvXqXY1g1N8JJscBio7QvAu1kNQnp1CF+ipJKcsaXA1SqMuPAMDHphnYCuGWgzsQJgZqFNj1QggJ1DgX08R3teD0LoX/TxU6N6odOkc7aaZ9vjbakYpQQJ+NS22Nek7c6yI3+g6hsHida/27bB+rOJHG
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)(346002)(396003)(366004)(376002)(136003)(39860400002)(230922051799003)(186009)(1800799009)(64100799003)(451199024)(478600001)(82960400001)(6512007)(9686003)(6486002)(33716001)(66476007)(6916009)(66556008)(66946007)(38100700002)(26005)(6666004)(54906003)(83380400001)(6506007)(316002)(53546011)(4326008)(8676002)(8936002)(41300700001)(5660300002)(2906002)(85182001)(86362001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?Nzd2dklGZldIL0lPaDlUZFc0UVM4VU9MVVdEVDVIYy93UWdEWHlDZ05IZlI3?=
 =?utf-8?B?WWpPNnFHUmFoYktLSS9Oa2tvQmZ4Z21YUU1EblRlOENQUHNrVVV1R0dpYTFi?=
 =?utf-8?B?Q0hIc3NNQXRhbndSallwZml5Y2RRUGoxa0pSSkxtdUtMWThuUjVOYk5NZXFE?=
 =?utf-8?B?TVZRL29uTm9IZ1dmNUlIQk8rWUtVWGhyNExjeENGSy9tQVArbWM4NTV1WE1L?=
 =?utf-8?B?K2ZpZnpxZHBIak1NYXk2NUltMFB0TU44KzBmWGk1Slc4bURnUGRuVElmRi9H?=
 =?utf-8?B?YlB5RFk5eE9DQ0QwMW9aOXZ5bTU4V1Vvb0tTcU9aUlh0Q1VPTHZNRGI1bmRO?=
 =?utf-8?B?djlQMEU0eitENTJOVkFKWHRMQ1FVK05IUWlaRVROcUl0bmtaWVB6dmcxOVll?=
 =?utf-8?B?cEpQME84S3kxQ1RXd3oxdXpOWXN3ZWJQb0hJbGdvRkNEcWJEUm5zYWxrd0sr?=
 =?utf-8?B?VURvdlRTeXZ6N0NrN3h4NzB3UzlWcW9TRStKaDJabTB2N3NPMDB3dnptcFdL?=
 =?utf-8?B?SXBZTGUxVm8yZGNIT3JCQ0hIMVBjbGhZcDdOUlZsU1R4MXJtWWkyWEw1NndR?=
 =?utf-8?B?U1dGM2luTXJZdmM3aStjZmJTZXBJdGk3YWJkbTF4MUlvYWRmTlhtYTFWME1B?=
 =?utf-8?B?eVRWeTdwUFZnRXJGWUZFV3BHOW1QL1dkWnZhdzd0RWVxaCtFYUg0TVNxQlJK?=
 =?utf-8?B?UytFT3ZuUTZadWM4Tjg5MmZaanY0S0gyaFgyTmhWZXZYdGpVYUF1WlZUYk1y?=
 =?utf-8?B?bnJ2Qm85Njk1NjBEdWl2U1g4d0hTUzBuMW5OTm1meFVPM1lZYTdlUmlVRTln?=
 =?utf-8?B?dzNPdUh4V21MeDNpejhNaGZIZTBMYWg3T0VsVS8wY3JmSGVjdDZtTHBiSkJ6?=
 =?utf-8?B?RkJRRVkweEJYTEwxd1hySjFjMlFjWnZ1WmpDYmU5YmlXRmlXZ0dib2hNQnRj?=
 =?utf-8?B?UlVmaVBIcDNUNGgrbm14L2l4akl2SVAzcjcxOStRaGhHOVM3N2FSYWo5Mk5r?=
 =?utf-8?B?aXdkd0lNNDF6cjBVSWQ4VE1FSTAyaWdNVDhNQUxoMlJtWG81VFFzcFNlbmNo?=
 =?utf-8?B?RDVUT2hjMXVrK3FMSFNZNXA3VUwzYjF6MVBzQ0R6UVp1ZXQyYjZzRnVUUUFB?=
 =?utf-8?B?ZXAyYzh1WURoOG1lNlN5T1MxR296UnpUb1NnMjVpYjVRVktSUnRtS3lNOGRS?=
 =?utf-8?B?eWZCUjdsakYxWHhqWmxObjRWYzhxMjVXWmxWVTI5bmZKZUIxK3hPVyt2YTFV?=
 =?utf-8?B?c1k5WFJMSUpaMUpsbmJzLzltS1ZqY2VRV3N0cnFRVTBSRWtPbmlLZmNUV0Vi?=
 =?utf-8?B?TkVlSUZURDZHUXNyc3BPWUE4QXQ0SHR6YzBiZ0U2NjI3T2FHNWs2a3hVRS92?=
 =?utf-8?B?VXpIOEg5OStqSWtyaHV6OTJFajhycEVLNDBiZi8vM0Y5YmJJVEROcW5GL1Ra?=
 =?utf-8?B?U1RSaDhCQ3MyVVVJUGltd1F4Q0pncEE3TzE4M0k3Z1dQSndvemswQ1hTZGV6?=
 =?utf-8?B?b281a1dYbm9IQW9XdHdFWkQ5cVQ4U3VoUE1GdnJxbU5vRXRDc3ZsaWc0VGhC?=
 =?utf-8?B?S1ovbkw4ZEVzZy9TampMM0xKSnN4QnFOU3FvS2Y2Ull0STU2T2NSWWdhTTEw?=
 =?utf-8?B?SHBtUFZQc0oyZm9WVjk5KzF3eEMrYUtoSGNMbldwZ3B2aTBuYkhFamgzNTgv?=
 =?utf-8?B?M1RsNmF0OU43cjNweCsvbzVxRjFUUmhjSmRhMi80dExIZDZqeWhwSytsdlRK?=
 =?utf-8?B?S0l4SnNhdGlTOEFZVDcySVBFR1ZqLzcyNGFkdUVwd0lRN08yZ3pCTzhleGs5?=
 =?utf-8?B?QzdDZFhlcU5yN3lIZUw3S2NPK0EwbTh6cXdCZVlvVUI3N0hxUzdIWjFHSy9n?=
 =?utf-8?B?Z0gzd1pXV3RsZUx6aW1YcjZmK1k0dnpTaXozQnZDbFBMalU0aXA1eEtZZ0lG?=
 =?utf-8?B?NVk3TGhBVk1hK3J5dUdqNUFIaFpqNElxazU4Wm4zYTMrc2lPcEpzdCtQYXNh?=
 =?utf-8?B?OEtwK2Jtb3dGWXdScE1GRFJDOGJYWm9ZZ0M2SXhzampNRHRzdDh1Y1M1ZGI1?=
 =?utf-8?B?RWR3dHJBNzJ3ZzFMQmNQZmk5MDFVQkg4RFZtdS9uQ09WOU9vRlVvWDVwd0dt?=
 =?utf-8?Q?N5+jIW5sNpjkIAvG55E7UucQv?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	pCcShVUBWPoHzMRCUksoPg7LxeOqlOGeEe+aVtEu9V54Q+utuRUT5utZSHA+9HFAmAKZeHNaj+e+tlK2DRLDM3cw3h3UVF3P1FBzlTnsL5EyAu+VsFmZjwCqpTU/EdYuwW36XMM8nlyJ9JMnvaFctXjcOl/Z81l4S/dCwEY+Hnl5pVA2cK7hhf6nlxC+OpvFPUVZZguVjsMcICtp8sy7VQNj+Mp33Fh+ytRHeEJSWhWdOg8Y9/y8weJ1gAKfvC2ySLE8tnOrYUW5DFW4W+f+hrD2b4iRWPhrVGVQdn73OXqMqzUgjccl/FSAYtNRiiwRJIqY8e7vKGHhxvdnI+gWpPOC8hj/OAKJJ9bpJwbHVo6KW56n8D5zd1osaMPG4ojLBDsKNGeAVhxqUmAG77PkSb2LwlA59dVjfeeKguXrPrJYjEvPre1tl/MxroTgeX90MHpIGw1b+LN8Dtapvr9ZKFqMnTKmstVZz6fF3fTS+b3pE2RRTkyqkmbNABsiT/oUVrwg3LafIBYnsiBQmgz3l055J23gOCW/FKwCUivplx8Cix59HD3GhspgMvMyXfBCHECTYlWf+ieyvdTP3zqUVRz4k8HP2p1jvijMkhEWLD3oz1xaWT/wQSIeyyvcKZ9mVTvsHqQMk1QOqYDWokvvHPEYxYoAlGFL9aiPWSeYWt6mm4vOJRr0zkjhUMzRXKnoLzIARjGLirotLpcEBF+yXWmamSO/bJP9ztqPP9G3U4Z+81UJK222kRZIH7LPy8f+XiiWEnf+emHfXU+y7oZSgPm3V0PxWfTXkDArvpXSgmHqYMtgY50IynRrG8+bjN5qGXVZJxxaqYixTC7ILLAVY4XZrRbTJN0v/Ln86MQVNs4=
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 7eca3f59-608b-4a6a-8119-08dbce4ef660
X-MS-Exchange-CrossTenant-AuthSource: MW4PR03MB6428.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Oct 2023 13:51:14.1450
 (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: n5BGSQIeeR+uPJdELao47BOFutuzYUPHNSdkA7gB+NMZBueUJiBkws3cwlBuvVsMJjmQmF8MSvO/W2n89yKEXA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW4PR03MB6329

On Mon, Oct 16, 2023 at 03:32:54PM +0200, Jan Beulich wrote:
> On 13.10.2023 10:56, Roger Pau Monne wrote:
> > The mapping of memory regions below the 1MB mark was all done by the PVH dom0
> > builder code, causing the region to be avoided by the arch specific IOMMU
> > hardware domain initialization code.  That lead to the IOMMU being enabled
> > without reserved regions in the low 1MB identity mapped in the p2m for PVH
> > hardware domains.  Firmware which happens to be missing RMRR/IVMD ranges
> > describing E820 reserved regions in the low 1MB would transiently trigger IOMMU
> > faults until the p2m is populated by the PVH dom0 builder:
> > 
> > AMD-Vi: IO_PAGE_FAULT: 0000:00:13.1 d0 addr 00000000000eb380 flags 0x20 RW
> > AMD-Vi: IO_PAGE_FAULT: 0000:00:13.1 d0 addr 00000000000eb340 flags 0
> > AMD-Vi: IO_PAGE_FAULT: 0000:00:13.2 d0 addr 00000000000ea1c0 flags 0
> > AMD-Vi: IO_PAGE_FAULT: 0000:00:14.5 d0 addr 00000000000eb480 flags 0x20 RW
> > AMD-Vi: IO_PAGE_FAULT: 0000:00:12.0 d0 addr 00000000000eb080 flags 0x20 RW
> > AMD-Vi: IO_PAGE_FAULT: 0000:00:14.5 d0 addr 00000000000eb400 flags 0
> > AMD-Vi: IO_PAGE_FAULT: 0000:00:12.0 d0 addr 00000000000eb040 flags 0
> > 
> > Those errors have been observed on the osstest pinot{0,1} boxes (AMD Fam15h
> > Opteron(tm) Processor 3350 HE).
> > 
> > Mostly remove the special handling of the low 1MB done by the PVH dom0 builder,
> > leaving just the data copy between RAM regions.  Otherwise rely on the IOMMU
> > arch init code to create any identity mappings for reserved regions in that
> > range (like it already does for reserved regions elsewhere).
> > 
> > Note there's a small difference in behavior, as holes in the low 1MB will no
> > longer be identity mapped to the p2m.
> 
> I certainly like the simplification, but I'm concerned by this: The BDA
> is not normally reserved, yet may want accessing by Dom0 (to see the real
> machine contents). We do access that first page of memory ourselves, so
> I expect OSes may do so as well (even if the specific aspect I'm thinking
> of - the warm/cold reboot field - is under Xen's control).

The BDA on the systems I've checked falls into a RAM area on the
memory map, but if you think it can be problematic I could arrange for
arch_iommu_hwdom_init() to also identity map holes in the low 1MB.

Keep in mind this is only for PVH, it won't affect PV.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 13:54:36 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 13:54:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617610.960355 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsO3H-0006ex-H6; Mon, 16 Oct 2023 13:54:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617610.960355; Mon, 16 Oct 2023 13:54: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 1qsO3H-0006eq-D6; Mon, 16 Oct 2023 13:54:35 +0000
Received: by outflank-mailman (input) for mailman id 617610;
 Mon, 16 Oct 2023 13:54: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=RUhr=F6=linaro.org=leo.yan@srs-se1.protection.inumbo.net>)
 id 1qsO3F-0006ej-UV
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 13:54:33 +0000
Received: from mail-pf1-x433.google.com (mail-pf1-x433.google.com
 [2607:f8b0:4864:20::433])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 881a50c8-6c2b-11ee-98d4-6d05b1d4d9a1;
 Mon, 16 Oct 2023 15:54:32 +0200 (CEST)
Received: by mail-pf1-x433.google.com with SMTP id
 d2e1a72fcca58-6ba54c3ed97so1807220b3a.2
 for <xen-devel@lists.xenproject.org>; Mon, 16 Oct 2023 06:54:32 -0700 (PDT)
Received: from leoy-huanghe.lan ([98.98.49.160])
 by smtp.gmail.com with ESMTPSA id
 s68-20020a625e47000000b006be0b0fc83asm2466772pfb.125.2023.10.16.06.54.29
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 16 Oct 2023 06:54: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: 881a50c8-6c2b-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=linaro.org; s=google; t=1697464471; x=1698069271; 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=n2W2Sl9fNt1XcXfOZDPJL3Xceq/89J+CNdFTnWlpqOU=;
        b=ZZQqIxKK/8i1Yw8GAk5xzVR9lK+CYiCXVTHy9w1K+c+G7pFopTCSCIJKghqGC79UeS
         opFBi1nfmaFjED3o9xDdaLej6V5yNdSdgavGUW7m0twOb0+I9GRXU9rLjbVDmdkWN8iV
         OcAQnuBGjtK5dguLhs0qAyW6pNB9lRLf1sPc5bUe+C3V0Ggn2rna/mHFXp+ebk30pbYx
         KomUjt/H9vd1hN6dwyq+3d9825t7AZJcFxnj+iHtPsyXdGjefr2NjtUqnac+qWQ6KqxO
         y1ufkUjZRbfjRvbW7SbQvP86RTtxk0lIeCdCvW57KCrhQ1myQbvSMSS4oXtIP+zNuEbY
         JoGQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697464471; x=1698069271;
        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=n2W2Sl9fNt1XcXfOZDPJL3Xceq/89J+CNdFTnWlpqOU=;
        b=vGnI1Ns5iRM6fOIBB09CbF+FB82BJ9BKByo1RzcbNtRlk8CQ6LK78y2Ygpj8Qm6xHP
         lbvZ9/nkliORog8o/bRdAayd7r++CtNMZ7Ne7yPsO6HACpfdwqzP3M9eZHlq8sY2ehFn
         tCWHlm9z6KNcKtGFLupeaggOuXWcuk3+suH8ZU1rQKxSWHHXZWJH0sUtQQ17CzV8ACYV
         xMLNBLpPGMoNaF3guCx2ZE5ZbCAXgF+6DfpAJArt7nDhnyfeQ7DQ0m8w2LE9q3qmbHTA
         UEV02CiAg1Zx4EBh6Q2pVQ9R1AKb2qCGxhW0tQY/+qxCO28d76ln0ON6FNCc4RVnpIar
         4HGg==
X-Gm-Message-State: AOJu0YxnJ980uR3U1p6ik6HHH3NWUPrC1tRflhVespMYmpufsAVNV+cS
	2HXC8RXnLRJCyLQC3YvmIrk3yPgXPN4uyZydyEuuKA==
X-Google-Smtp-Source: AGHT+IGUYIrqhb0n+/TtByZJegHy7Pl8STvGAzaySzWq86BwG2GYaCPsRFXJqG6MA3A+Y6Whj7MGOA==
X-Received: by 2002:a05:6a00:138e:b0:6be:62e:d5bc with SMTP id t14-20020a056a00138e00b006be062ed5bcmr4697550pfg.3.1697464471182;
        Mon, 16 Oct 2023 06:54:31 -0700 (PDT)
Date: Mon, 16 Oct 2023 21:54:27 +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 v4 2/2] xen/arm: Enlarge identity map space to 10TB
Message-ID: <20231016135427.GI928468@leoy-huanghe.lan>
References: <20231013122658.1270506-1-leo.yan@linaro.org>
 <20231013122658.1270506-3-leo.yan@linaro.org>
 <83ABBD09-D994-4DA3-8F10-15D87BCC2CF1@arm.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <83ABBD09-D994-4DA3-8F10-15D87BCC2CF1@arm.com>

On Mon, Oct 16, 2023 at 01:40:26PM +0000, Bertrand Marquis wrote:

[...]

> > This patch enlarges identity map space to 10TB, allowing module loading
> > within the range of [0x0 .. 0x000009ff_ffff_ffff].
> > 
> > Fixes: 1c78d76b67 ("xen/arm64: mm: Introduce helpers to prepare/enable/disable")
> 
> I agree with Michal here, this is not a fix so this should be removed (can be done
> on commit).

This is fine for me.

I'd like to confirm with maintainers that should I spin a new patch
set to remove the fix tag?  Or maintainers could help to remove it
when pick up this patch set.

And thanks for review, Michal and Bertrand.

Leo

> > Reported-by: Alexey Klimov <alexey.klimov@linaro.org>
> > Signed-off-by: Leo Yan <leo.yan@linaro.org>
> 
> Reviewed-by: Bertrand Marquis <bertrand.marquis@arm.com>
> 
> Cheers
> Bertrand


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 13:54:39 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 13:54:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617611.960365 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsO3L-0006yN-Qz; Mon, 16 Oct 2023 13:54:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617611.960365; Mon, 16 Oct 2023 13: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 1qsO3L-0006yG-O4; Mon, 16 Oct 2023 13:54:39 +0000
Received: by outflank-mailman (input) for mailman id 617611;
 Mon, 16 Oct 2023 13:54: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 1qsO3K-0006wE-0o
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 13:54: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 1qsO3J-0003LD-J3; Mon, 16 Oct 2023 13:54: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 1qsO3J-0000Ub-Dl; Mon, 16 Oct 2023 13:54: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:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=WpNBQUJSRh5nvPiBxRIrchR6LkqJ4ocfYJ049kFNAvE=; b=z5fiK+v22LXphV7FsFzXlZuhXp
	kAKb85Hv+9yUceQx5uo1p9XgD2gQQ2eZ0Nv1zy2OTt1eI8r1NB9vPPSA4mpqyim4TOp56MengbtHw
	mijgea/uEMhMuNIbg1m9YoTnXbPUeb/6ronb4IbQy00TLyr5qwf77Zh8EpxPhNLNXprg=;
Message-ID: <5a5e960b-e6fd-4617-b33a-10cf07f5bb52@xen.org>
Date: Mon, 16 Oct 2023 14:54:35 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v4 2/2] xen/arm: Enlarge identity map space to 10TB
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>,
 Alexey Klimov <alexey.klimov@linaro.org>
References: <20231013122658.1270506-1-leo.yan@linaro.org>
 <20231013122658.1270506-3-leo.yan@linaro.org>
 <169101f8-0475-45b1-b2c2-60dadd88d3f0@amd.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <169101f8-0475-45b1-b2c2-60dadd88d3f0@amd.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit



On 16/10/2023 09:44, Michal Orzel wrote:
> Hi,

Hi,

> On 13/10/2023 14:26, 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 10TB, allowing module loading
>> within the range of [0x0 .. 0x000009ff_ffff_ffff].
>>
>> Fixes: 1c78d76b67 ("xen/arm64: mm: Introduce helpers to prepare/enable/disable")
> I don't think a fixes tag applies here given that 2TB was just a number we believed is enough
> and all of this is platform dependent.
> This can be dropped on commit if committer agrees
Xen may have booted on that platform before hand. So this would be 
considered a regression and therefore a tag would be warrant.

AFAICT, the commit is only present on the upcoming 4.18. So the question 
is whether Xen 4.17 booted out-of-the-box on ADLink? If the answer is 
yes, then we need to add a Fixes tag. But the correct one would be

﻿1c78d76b67e1 ("xen/arm64: mm: Introduce helpers to 
prepare/enable/disable the identity mapping").

We would also need to consider it as a candidate for Xen 4.18 because we 
would regress boot on ADLink.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 13:58:33 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 13:58:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617618.960375 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsO74-0000oL-A4; Mon, 16 Oct 2023 13:58:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617618.960375; Mon, 16 Oct 2023 13:58: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 1qsO74-0000oE-7I; Mon, 16 Oct 2023 13:58:30 +0000
Received: by outflank-mailman (input) for mailman id 617618;
 Mon, 16 Oct 2023 13:58: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=BBjo=F6=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qsO72-0000mp-Ey
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 13:58:28 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur05on20612.outbound.protection.outlook.com
 [2a01:111:f400:7d00::612])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 13e5195c-6c2c-11ee-9b0e-b553b5be7939;
 Mon, 16 Oct 2023 15:58:26 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PA4PR04MB7680.eurprd04.prod.outlook.com (2603:10a6:102:f3::24)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.35; Mon, 16 Oct
 2023 13:58:24 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%6]) with mapi id 15.20.6886.034; Mon, 16 Oct 2023
 13: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: 13e5195c-6c2c-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=irwq8HTo/t0lJU6IEu0JtKWVXnqf2+aoOtldKP5M/rYEBvKC8qfx1NJ5ExsWZkqsovqTvZbBIegtCwj3um970Xcne7Y32Vd0iMlR+Qbdn+/rmV00dizutM/kWlT0JEDSwI7TWSMSZ2T7nvatcDwvlP+ZoAr0ijced4gAxKK4VdLQikmpcDjJBNnVJdnQK8sjUyg+GyaeSv2GtKRlqzxxhvMt2RidIjisFqXIBS12uY8FksQReTz6ryP8RRbOqtW9/HGMssQBDHcHVQSiArdZOgl2HE2FCcoHqDZtisxVW52MsjAJmKtrH92f3WNdUDVlminu8bB4PBT8y91PHisRFg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=Q3JH9WksVCDGaqBLkvgh4IIwhsnATv3HsHCPEtxwWUM=;
 b=S29jCwuVBvmqeqVxbAq6cJDhCiqvGOXww3cRrHR/waaN/6ozgoSt8TlwFiUCuxlDUAXqiddTUJ1HIQfVgP5H+VSqZgyu0qp9HFC02LlQ2AH3tFpdYnYEbZLu/9R610Am3y4dSuxTpbU2C6DXT28z4e3hp3r5lab99Lnji+KrOK+a6Kgq8UvJFgcrD+Di3A+xh2pX7DOM97y0xgJflm4ACg6Z7g2ePI12K2gc1fGe463qzZ6kO5RTDAmOB8lqqh7QmaZQ2knM52mC9ponGa5Bl95MDZk7hfZxlgl+JuxxqJxGfCR692vyYM2zS/LpVpelIZh/FrpKBy7/rt6ErClyUA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=Q3JH9WksVCDGaqBLkvgh4IIwhsnATv3HsHCPEtxwWUM=;
 b=5UaK3cfRoaf2bYMnxEnbvKLq3+nnYqrSRwLoXIkbexgKhoXX7pk2eP5pB3RdDjXNNcbnMCd1LbbfRERR6WeExiRY3hVo9lYopKoXsTX+jlDTf733siBH4wVJglM7pyRl21i/7OrCgslQjx1MP5p7tHCj3cCW/AR+DZ+WdFMsT/Bc8GM2iDmsiapozgcByvOtRYHmRQE5H0qsGQZFIiAczKxKcvHLLQbWLsZJi9RtyFeHaAR8Ad872IhPseOloIpwtb+rf3L47gnitZdK1uQ7Bj2cYsnryH5r+lM/IyM3R16fJ88VE8Zx/1hj6LdYs/m3w5BCSF2bY2s6rS8dGryUTw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <2cd47d7f-00de-3409-c21c-561c92a5c42c@suse.com>
Date: Mon, 16 Oct 2023 15:58: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 v2 2/2] domain: expose newly introduced hypercalls as
 XENFEAT
Content-Language: en-US
To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
Cc: Henry Wang <Henry.Wang@arm.com>,
 Community Manager <community.manager@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>,
 xen-devel@lists.xenproject.org
References: <20231006130059.97700-1-roger.pau@citrix.com>
 <20231006130059.97700-3-roger.pau@citrix.com>
 <b8c03b77-d4bf-3be7-2090-e76e6849b085@suse.com> <ZS0z89xtFzkmK8_d@macbook>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <ZS0z89xtFzkmK8_d@macbook>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR2P281CA0166.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:99::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_|PA4PR04MB7680:EE_
X-MS-Office365-Filtering-Correlation-Id: b47857c0-a848-45dd-029f-08dbce4ff6cc
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	hNpvLIIhLR2ZmB5oyJ9+eZFWJGmfcLGNLGyOh7006rwPGRBKazUwSGcg+HUdtGszNNL66M6ec0x6kDR2Ri3XQv+a8BHurdUTuXPv3Ip/OuZI8ueyuXfgwkfuzy5I10ZXUcyFEyALCcGni3KfFfKcA9v3z5Q49nOr0VEVOIm2Q9P+M+K9sPFl5BXwynTNkM0GH+PTwg3m7oMACi3nVF6rk1CXrGJGmVI9jcGb9rSApDcx8LibtuNG6b8fWZJiK7DGFDCJI22HXYUzqUEss4HEaFnC4a+xxn42QfpBng9dpY3rsepovO/ZalytcaBKMpG+nGZAozohoFrUjmAhy/GM64EkzHJmzAfOHN/ArQNvFRNzOWn+SED5GCoHwy/yrMciOK5FUkn/QptaQw5C442Ak2wZZri0O74/uHUMfE0oaWILXdjo8nIefYsQ/1+jXxenzwfPVBaBcHjBoidMcNNXJSzPkIFpb+AwZGS2SM/y6Pdf406Z6H9iaXJi9gAJ3muaMUg8hzG7M1ur4WZ/6s21zBhiZ9UgQyBuYqbgv6UmDf3rWoOO1ChQw+h+CkEMP3QlBAMzKsFLka5aW3n7LLnIchBuvliIvHJhbyPFaTGGVdvfmKNGAO+yOiyGwS9Qxj+giZJFFI18V6iwKHUOkIcwXA==
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)(396003)(136003)(39860400002)(346002)(230922051799003)(451199024)(186009)(1800799009)(64100799003)(26005)(2616005)(8676002)(8936002)(4326008)(5660300002)(38100700002)(31686004)(41300700001)(478600001)(31696002)(86362001)(6486002)(2906002)(316002)(6506007)(6512007)(53546011)(66946007)(36756003)(66556008)(66476007)(54906003)(6916009)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?a3laNXpPZzZaaXJaY3VXYkRvUXVBZ3A5SndDd09mMit1YmRXWTJyNStycUV5?=
 =?utf-8?B?bXdUbUlZbmhuRFhjS2pwTGxXNVJ2Mmc0a25ZRkZ4L3Y0NldMeVpBWFR5ci95?=
 =?utf-8?B?WW5rNVpTaEVqbnU2Mk5ZU2ZSQmpwQ25LaUNWdGVhV09wK1dYdHBNMEwrOGZv?=
 =?utf-8?B?c0xTa2xtck9uZnBvRXpXWUlBc0pxeUdMOENnaWt1VlBjOFlaUnF2TWRKNFhR?=
 =?utf-8?B?T0t0VVNyeVNnL3lTUHd5am9NMm1TMW1NbEJEQW5naXltR2tYaUlINTdldmhl?=
 =?utf-8?B?NW1oVkkxcDJFWlYrWnhNSTBKS29rMmpuaXpDSVp5UE9kMkdEWmFtcStxYWdL?=
 =?utf-8?B?ZDlJUkZiSGFGZ0QwUExrdERBdnoxcC9jWGNLUDhKZTN1VlY3SkNDNHc0ZlB6?=
 =?utf-8?B?cEJuT3hCS1BrRTRsZFdIcG5jK3N3SmVtQnB6dVZvdHI2ckYvZmxhMW03blk4?=
 =?utf-8?B?MEFOajdTekF4Nm52Y2Q0S0NpdkhjaVQ4NmNNdUJZb3JJOHNsbFpzMUgzd2hL?=
 =?utf-8?B?OWduUWwvRzVxZHVQNkViS2U0a1A3ZUlUNXNmaDBVeXlnUU4raVFvU2pwYUFm?=
 =?utf-8?B?K0NtQlFVVGs0WDVzZzVmY3o1eFlPWTR5SHNGdHo5NEhHK1kyMHIydUp5L202?=
 =?utf-8?B?UytlYzVtYTJBWWNkWm85SGd3QXRqZW4zeEtLeVR1Mk9MdDMxTnNoY1J5Y0Mr?=
 =?utf-8?B?dkFiT0ZhbTJXeGh5Lzd1MUtPRkJjWFozSS9hM1RwTHBnNm4wTTJnODNaUUUv?=
 =?utf-8?B?UFRXcDNObkZwT3NOUVAveHMxZld5LzFlMVNrZUpwN0kwSlAxVnB5TVppV0pk?=
 =?utf-8?B?YW10aDBNU1NCZlJVY3V4dTJHUlRZNjJDRWpPRWpBZ2hpL2d3dTBHQVkzZDJC?=
 =?utf-8?B?cTg1R2F6TVp1aFZ1UFZRei9zMERmMk1QSXovcGFOYUd6QUo2dG84d3hBdjRN?=
 =?utf-8?B?RW84by9FNkV0RWtFOHoyYTJhdDF5YnlhUDBzUFFZNUZlcEpsVkFMQ1l2dTZx?=
 =?utf-8?B?VW5lbm9XODRDbzkyUVYzN2dIZnBkd2daVWFLY2loSXV2OFY2NUdIS3ZtUEJy?=
 =?utf-8?B?cFZiUm94R2l5UXExTGFUNFpYR0pkY2FMaVBPYlJzb0Y3Wi9HeU05cDIxTHBv?=
 =?utf-8?B?VUIzNzZ0aTNQdDR3bE9kV01sV0M2czdpSEVabUFkcGVuYlRNZmt6RE04d210?=
 =?utf-8?B?aDhUR2tLTXN2dno4ZXo2cnJXVDJOb3dKL083MHBCU0xnQTBXVEc5MGUvdTVj?=
 =?utf-8?B?NnM2WkNlTStydksxbVZiTnlOK1g1ZUZCSlQrVkZSdDJVQzdIZ0R3YUV5c29p?=
 =?utf-8?B?TitJVjRuOE5iYnpqVDV3UXVmanYrWTdNNkd4cGdwamt5dFJmSWNDRjQwS0cy?=
 =?utf-8?B?amlVUVMvOFp6ajExRXQxY1h4cENvSnZFbjVSd1ZBUGJZM25GeGYxVzVOcEQv?=
 =?utf-8?B?TGlhL0swZGpFN3k3aCsrOGlqNGQyT3dIOVBHc05XcURLc3dBVFpUSTFCcE9C?=
 =?utf-8?B?T0g0TGVsSHFQYTZoVThRSXZXWHN5TTJSTm5ZbHh1d2dRRFQ4M1JBQ1Rxancx?=
 =?utf-8?B?bnRaQ1Fsanc5WHQ1Mm9LNTZuVDlZYUE3enZTSDQ4bEJRUm1BanViMEZ6cFlr?=
 =?utf-8?B?YmR1Q0dRYzBLY25JdnRIWlhHZzhUZkZwQkN3bXRoWXBRTlRMeTNKS2NqaGhk?=
 =?utf-8?B?cjQ1ZzFJRS9TYXFxMjdRTTkyL21nOEYvSXhMd3BLcnBoTU1QUjhWYkhsRW1T?=
 =?utf-8?B?RHpUeDV4QkZ0NzRLSElEU1JwRnN2V3o3Y1paeHJsNE53WXNlcEZ2Q2QxK2Zx?=
 =?utf-8?B?ZDdPSmdoZ0dwd3RPTmsvOCswTlJaUmZ0MjM3SXBMZkFEcDBoWlRLWFBmbWlY?=
 =?utf-8?B?WW83aTkwSFNFSTJ0c0Z2RjVtUWRDQTM4TmRscnVUdm9kb0cwaXFtV1VQYWps?=
 =?utf-8?B?NTVVNm5WWitDVjNnUWJ6ZXY5cXJpK0xBU3hIdGZINjFmTXFwRGh6eVF0QUww?=
 =?utf-8?B?d2hFcllqRmRWMW1PbDJXeS9sQ1NxdlZqeE84V2lmU3NKa3JZUUE3QTBVSmdL?=
 =?utf-8?B?QzhoRldqdDdYVmcvc21YSHEwL1Rmd3VFMlBSKzdNcEN4ZGs2Qjd4cnZCN3Bl?=
 =?utf-8?Q?gXLVnx525PvfERy9bgb/FKIin?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: b47857c0-a848-45dd-029f-08dbce4ff6cc
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Oct 2023 13:58:24.2473
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: tyIU+DDvrfRUPItagq6hEUg/wIH74EiveM2VSzGiT/JVCsFtUv5PUqfRUhBC7uFEuoBR14EreHB3Mw5+9tCitg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR04MB7680

On 16.10.2023 15:00, Roger Pau Monné wrote:
> On Mon, Oct 16, 2023 at 02:35:44PM +0200, Jan Beulich wrote:
>> On 06.10.2023 15:00, Roger Pau Monne wrote:
>>> --- a/xen/common/domain.c
>>> +++ b/xen/common/domain.c
>>> @@ -1998,6 +1998,10 @@ long common_vcpu_op(int cmd, struct vcpu *v, XEN_GUEST_HANDLE_PARAM(void) arg)
>>>      {
>>>          struct vcpu_register_runstate_memory_area area;
>>>  
>>> +        rc = -ENOSYS;
>>> +        if ( 0 /* TODO: Dom's XENFEAT_runstate_phys_area setting */ )
>>> +            break;
>>> +
>>>          rc = -EFAULT;
>>>          if ( copy_from_guest(&area.addr.p, arg, 1) )
>>>              break;
>>
>> ENOSYS is not correct here. EPERM, EACCES, or EOPNOTSUPP would all be more
>> correct.
> 
> I don't think so, common_vcpu_op() default case does return -ENOSYS,
> and the point of this path is to mimic the behavior of an hypervisor
> that doesn't have the hypercalls implemented, hence -ENOSYS is the
> correct behavior.

Besides that other ENOSYS being wrong too, I question such "mimic-ing".
Imo error codes should be the best representation of the real reason,
not be arbitrarily "made up".

Jan


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 14:00:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 14:00:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617622.960386 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsO9I-0002bD-Ou; Mon, 16 Oct 2023 14:00:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617622.960386; Mon, 16 Oct 2023 14:00: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 1qsO9I-0002b6-KQ; Mon, 16 Oct 2023 14:00:48 +0000
Received: by outflank-mailman (input) for mailman id 617622;
 Mon, 16 Oct 2023 14:00: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=4UvS=F6=arm.com=Bertrand.Marquis@srs-se1.protection.inumbo.net>)
 id 1qsO9H-0002aw-Bf
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 14:00:47 +0000
Received: from EUR02-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur02on2060a.outbound.protection.outlook.com
 [2a01:111:f400:fe16::60a])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 66a8172c-6c2c-11ee-9b0e-b553b5be7939;
 Mon, 16 Oct 2023 16:00:45 +0200 (CEST)
Received: from DU2PR04CA0013.eurprd04.prod.outlook.com (2603:10a6:10:3b::18)
 by GV1PR08MB8619.eurprd08.prod.outlook.com (2603:10a6:150:83::9) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.35; Mon, 16 Oct
 2023 14:00:38 +0000
Received: from DBAEUR03FT064.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:3b:cafe::54) 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.6886.35 via Frontend
 Transport; Mon, 16 Oct 2023 14:00:38 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DBAEUR03FT064.mail.protection.outlook.com (100.127.143.3) with
 Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6907.19 via Frontend Transport; Mon, 16 Oct 2023 14:00:38 +0000
Received: ("Tessian outbound 0ae75d4034ba:v211");
 Mon, 16 Oct 2023 14:00:38 +0000
Received: from 1418b5d91621.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 47B5BDD2-50C3-4D87-8129-683F9AE16F8A.1; 
 Mon, 16 Oct 2023 14:00:32 +0000
Received: from EUR01-DB5-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 1418b5d91621.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Mon, 16 Oct 2023 14:00:32 +0000
Received: from AM6PR08MB3784.eurprd08.prod.outlook.com (2603:10a6:20b:85::25)
 by AM9PR08MB6002.eurprd08.prod.outlook.com (2603:10a6:20b:2d6::6)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.47; Mon, 16 Oct
 2023 14:00: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.6886.034; Mon, 16 Oct 2023
 14:00: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: 66a8172c-6c2c-11ee-9b0e-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=OTZBtSU+qddVOLpEL3KDqDvexbdmKSpMGDXAspaFxaw=;
 b=t98KdB/DGfPFMBQJoC/089EKhjMmggH2jmf6vvGRjd9GVqRsQ6MBYMeb67XXoXn/f+mqbzqwM511UXl9NbBk+VFH11Lv8Xsq7F4sZ7h50lqPWXejczrG9fxqbNH2jy3cM/LTzAkBT4rCFNrYE1bimDXQCcuKHQeOVHmCJPBF8LA=
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: f89f466739baa070
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=jIi8vH4OrcbbW07ezP35YNbESPXA0kWq4ucWvFWHISLcwXD9uW3MUVQHRy/raaBrp8HcWUk6BcQJX9TTyylrwEb5YoxFQMcyxgruw6A62ZgoV+aHKpyuzi95gIMlU5IKyTWoz6bt0aiU34u4zwELUvsTEG1ZeawmJvLoVn2XkPM4h88tymSQ/UALOEOytjBWnKKB9vUHr6xHwkpeHqnIKD02MD15jrdFyG/5jf/YRrZjQrYQ7OnGO3pYNCo7xaQrTL3sy+60Gzp3JOYpNSaPxXPPqapUQNO+p7R7pSDQ1NIaKmOrEEti5efVeEFicIkhaHbAsWbO80H+49cfVhO+rg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=OTZBtSU+qddVOLpEL3KDqDvexbdmKSpMGDXAspaFxaw=;
 b=AwjuDPTj7Pg2oc9lBSUD0ELQf4CiRp98bOw+CNWnWJ6h7c6Sbd39f19c9L3sMFpmsJOkBXk63y+SqJX85mhwfSs1ImtZZ1j34yfJ3iNZ+P682O62UWQYF1Xr9RmQcEbW9Fyv+M20OJ+2SlGWdCFtEiMcAWSTuoBtTpeqyCMkIzjF148bPoBlN0CopDyvpaUavsQPQFWifOQh7E8LIOaepQglu/oJNF471ff0/+vPjIvpMtHPY/k5F55yGzrRiIhs5vtMnP541ua51KO+qKerP7M6+WJosn0yGiT+EIEzPIdHiRdIE9+URrW5GzoGoL39BfOOnqqlMv7PMNb+pJv8Fg==
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=OTZBtSU+qddVOLpEL3KDqDvexbdmKSpMGDXAspaFxaw=;
 b=t98KdB/DGfPFMBQJoC/089EKhjMmggH2jmf6vvGRjd9GVqRsQ6MBYMeb67XXoXn/f+mqbzqwM511UXl9NbBk+VFH11Lv8Xsq7F4sZ7h50lqPWXejczrG9fxqbNH2jy3cM/LTzAkBT4rCFNrYE1bimDXQCcuKHQeOVHmCJPBF8LA=
From: Bertrand Marquis <Bertrand.Marquis@arm.com>
To: Julien Grall <julien@xen.org>
CC: Michal Orzel <michal.orzel@amd.com>, "leo.yan@linaro.org"
	<leo.yan@linaro.org>, Xen-devel <xen-devel@lists.xenproject.org>, Stefano
 Stabellini <sstabellini@kernel.org>, Volodymyr Babchuk
	<Volodymyr_Babchuk@epam.com>, Alexey Klimov <alexey.klimov@linaro.org>, Luca
 Fancellu <Luca.Fancellu@arm.com>, Rahul Singh <Rahul.Singh@arm.com>
Subject: Re: [PATCH v4 2/2] xen/arm: Enlarge identity map space to 10TB
Thread-Topic: [PATCH v4 2/2] xen/arm: Enlarge identity map space to 10TB
Thread-Index: AQHZ/dCeetLGz4GvX0qAhZnpE9HtkrBMHj+AgABWt4CAAAGagA==
Date: Mon, 16 Oct 2023 14:00:30 +0000
Message-ID: <8BCB97B4-CBDD-43D9-B0F8-7F637B8BE559@arm.com>
References: <20231013122658.1270506-1-leo.yan@linaro.org>
 <20231013122658.1270506-3-leo.yan@linaro.org>
 <169101f8-0475-45b1-b2c2-60dadd88d3f0@amd.com>
 <5a5e960b-e6fd-4617-b33a-10cf07f5bb52@xen.org>
In-Reply-To: <5a5e960b-e6fd-4617-b33a-10cf07f5bb52@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.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_|AM9PR08MB6002:EE_|DBAEUR03FT064:EE_|GV1PR08MB8619:EE_
X-MS-Office365-Filtering-Correlation-Id: 4cdb9483-5553-46ea-af74-08dbce5046cd
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:
 2Y67JEtS7Vdo3K8oIHbMW+zp37KTjwIqLJbDvCNXxmGnQthF14zTfunCHxXrGR+Ksl/NWaFUnZN0obu9wb3VkRv9rEgFMW9R37blVxofiVHSgmXNYd8n/ysYvZnNN8097QeK+9ojU8GuMBc+rzDakXxDS9zpa7BP+tP4+IRo//J1sBPvsH7LVjlenMxAOjzOKfaYu6SgEar6G+WlqIA9rDerJ4goP+HW5qC1U3jFfr06F3H0Ek5GxBaJbikd5UmzsqCfuySXNwH3gY081i3vmS2WdIeytJz60JPk+y3w/1AmKWH4dhFeuGj110yrFR7YrUiHg1Yr1ZgMxdeHO5fir+qzFYhwHQpqZgEWMciJbtNYRlqlLNCjD6SDEMl/Jb8zddldRSaL9pyGfhd5PPuy53Oqt1qAkE/bjgNZxyEFX/zMHArR2M/hf4fS7su0JUd8I1x47/rNBt/HVZOEh7jotWmhJIqx0RsbP/y6nSv86poIfP2cjnyxVcfHunDfUkbDQvhUiPbPTGdxaQqq7pu3rNQvSaL2DZbD6HpH3u0nyfW3tEgxZu0chTvOPzS5nPdQDoGcWwvNatVgDMv34PnoDNHowGnOE/fw5Wzt1VObW76hhNom0nV1b0z6k8VCrHH7aNoIKaOV4P2oyv20UQigMgepq+erGwkBJr72Bot7MeA=
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)(376002)(136003)(346002)(396003)(366004)(230922051799003)(451199024)(1800799009)(186009)(64100799003)(26005)(71200400001)(6512007)(6506007)(2616005)(53546011)(38100700002)(122000001)(33656002)(86362001)(36756003)(38070700005)(83380400001)(2906002)(66446008)(64756008)(66946007)(76116006)(66556008)(91956017)(478600001)(54906003)(66476007)(6486002)(4326008)(8936002)(8676002)(5660300002)(41300700001)(6916009)(316002)(147533002)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <F8ACE5D084877946AB8E4253F5D250E5@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR08MB6002
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:
 DBAEUR03FT064.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	7dcd4b85-4cbe-4205-38ba-08dbce5041e1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	irzXjCqNIJah6rfiTp8EvXEcOPZrzMnc4fcQHhGJJud6xvADThlIDhqW6c3pAGk23fj9fJefWeRUQOAZ5Cy0Ao4WHnsrleXvlkjWXOEcToDUrgV2qgz8RG80bKcoPafaiC2Q0nnMNHgvGvHKXkOluiY5pMxL1gfV86HezQYE+2sAnbETGlI+WBo+doFJudGXyZqsy4G0n508Dt58Q87S6kSnNsl/UrhPF9qDMhQNC4ni3Ocko8yJEFJ10JcM5wZ1J7j/0FyypTn4QFNYtDo/UCXcm/SxATkE/FpL9wyrcYnFqZ71SIFaJqrDyXbR6ghDjGgxgulTecs+m5SjGJH4kU0pB1NFRB0bEi1mOQE+v43DjA60lTn+er+gfV0aIW8UMDc1gyzhnl4zxBN/k75q2bg9TOM94UlvmSKAfWJQ3qVH6SGrGWt1jfUoiO1lIVQMGtlKQksHGUbxZmxnXY8rkNv9SJAa/rTe2ExcvQUgttUjNe5GT81hVauTg4/lXp4/Hvx3lOWDEgP6gq/RO3oAndQDqmD+aVwruAzt/JRg2IkQSMkzcdfJTFdGUN2EVDKGYKx4poLZ55FU3EOm036fwj9gHuOjsVeCEtUjvIjcD3Afbqna6tM4HXSy0IsTh5IsnmW4J6cCDnrH76uPI3C7zaYktPCpwkQXD3tN8/K9iogzO723By6eF4OzYN4IzFZxSv5/BvlHWqA6Hb5ox8xTsE2xG4EDa0G/SQj/Z6vhfBo=
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)(230922051799003)(186009)(1800799009)(64100799003)(82310400011)(451199024)(36840700001)(46966006)(316002)(6486002)(478600001)(70586007)(54906003)(70206006)(26005)(336012)(2616005)(53546011)(6506007)(6512007)(6862004)(8676002)(8936002)(4326008)(2906002)(5660300002)(41300700001)(33656002)(36756003)(81166007)(86362001)(47076005)(356005)(36860700001)(83380400001)(82740400003)(40480700001)(147533002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Oct 2023 14:00:38.3491
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 4cdb9483-5553-46ea-af74-08dbce5046cd
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:
	DBAEUR03FT064.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV1PR08MB8619

SGkNCiANCitMdWNhIGFuZCBSYWh1bA0KDQo+IE9uIDE2IE9jdCAyMDIzLCBhdCAxNTo1NCwgSnVs
aWVuIEdyYWxsIDxqdWxpZW5AeGVuLm9yZz4gd3JvdGU6DQo+IA0KPiANCj4gDQo+IE9uIDE2LzEw
LzIwMjMgMDk6NDQsIE1pY2hhbCBPcnplbCB3cm90ZToNCj4+IEhpLA0KPiANCj4gSGksDQo+IA0K
Pj4gT24gMTMvMTAvMjAyMyAxNDoyNiwgTGVvIFlhbiB3cm90ZToNCj4+PiANCj4+PiANCj4+PiBP
biBBRExpbmsgQVZBIHBsYXRmb3JtIChBbXBlcmUgQWx0cmEgU29DIHdpdGggMzIgQXJtIE5lb3Zl
cnNlIE4xIGNvcmVzKSwNCj4+PiB0aGUgcGh5c2ljYWwgbWVtb3J5IHJlZ2lvbnMgYXJlOg0KPj4+
IA0KPj4+ICAgRFJBTSBtZW1vcnkgcmVnaW9uczoNCj4+PiAgICAgTm9kZVswXSBSZWdpb25bMF06
IDB4MDAwMDgwMDAwMDAwIC0gMHgwMDAwZmZmZmZmZmYNCj4+PiAgICAgTm9kZVswXSBSZWdpb25b
MV06IDB4MDgwMDAwMDAwMDAwIC0gMHgwODAwN2ZmZmZmZmYNCj4+PiAgICAgTm9kZVswXSBSZWdp
b25bMl06IDB4MDgwMTAwMDAwMDAwIC0gMHgwODA3ZmZmZmZmZmYNCj4+PiANCj4+PiBUaGUgVUVG
SSBsb2FkcyBYZW4gaHlwZXJ2aXNvciBhbmQgRFRCIGludG8gdGhlIGhpZ2ggbWVtb3J5LCB0aGUg
a2VybmVsDQo+Pj4gYW5kIHJhbWRpc2sgaW1hZ2VzIGFyZSBsb2FkZWQgaW50byB0aGUgbG93IG1l
bW9yeSBzcGFjZToNCj4+PiANCj4+PiAgIChYRU4pIE1PRFVMRVswXTogMDAwMDA4MDdmNmRmMDAw
MCAtIDAwMDAwODA3ZjZmM2UwMDAgWGVuDQo+Pj4gICAoWEVOKSBNT0RVTEVbMV06IDAwMDAwODA3
ZjgwNTQwMDAgLSAwMDAwMDgwN2Y4MDU2MDAwIERldmljZSBUcmVlDQo+Pj4gICAoWEVOKSBNT0RV
TEVbMl06IDAwMDAwMDAwZmE4MzQwMDAgLSAwMDAwMDAwMGZjNWRlMWQ1IFJhbWRpc2sNCj4+PiAg
IChYRU4pIE1PRFVMRVszXTogMDAwMDAwMDBmYzVkZjAwMCAtIDAwMDAwMDAwZmZiM2Y4MTAgS2Vy
bmVsDQo+Pj4gDQo+Pj4gSW4gdGhpcyBjYXNlLCB0aGUgWGVuIGJpbmFyeSBpcyBsb2FkZWQgYWJv
dmUgOFRCLCB3aGljaCBleGNlZWRzIHRoZQ0KPj4+IG1heGltdW0gc3VwcG9ydGVkIGlkZW50aXR5
IG1hcCBzcGFjZSBvZiAyVEIgaW4gWGVuLiBDb25zZXF1ZW50bHksIHRoZQ0KPj4+IHN5c3RlbSBm
YWlscyB0byBib290Lg0KPj4+IA0KPj4+IFRoaXMgcGF0Y2ggZW5sYXJnZXMgaWRlbnRpdHkgbWFw
IHNwYWNlIHRvIDEwVEIsIGFsbG93aW5nIG1vZHVsZSBsb2FkaW5nDQo+Pj4gd2l0aGluIHRoZSBy
YW5nZSBvZiBbMHgwIC4uIDB4MDAwMDA5ZmZfZmZmZl9mZmZmXS4NCj4+PiANCj4+PiBGaXhlczog
MWM3OGQ3NmI2NyAoInhlbi9hcm02NDogbW06IEludHJvZHVjZSBoZWxwZXJzIHRvIHByZXBhcmUv
ZW5hYmxlL2Rpc2FibGUiKQ0KPj4gSSBkb24ndCB0aGluayBhIGZpeGVzIHRhZyBhcHBsaWVzIGhl
cmUgZ2l2ZW4gdGhhdCAyVEIgd2FzIGp1c3QgYSBudW1iZXIgd2UgYmVsaWV2ZWQgaXMgZW5vdWdo
DQo+PiBhbmQgYWxsIG9mIHRoaXMgaXMgcGxhdGZvcm0gZGVwZW5kZW50Lg0KPj4gVGhpcyBjYW4g
YmUgZHJvcHBlZCBvbiBjb21taXQgaWYgY29tbWl0dGVyIGFncmVlcw0KPiBYZW4gbWF5IGhhdmUg
Ym9vdGVkIG9uIHRoYXQgcGxhdGZvcm0gYmVmb3JlIGhhbmQuIFNvIHRoaXMgd291bGQgYmUgY29u
c2lkZXJlZCBhIHJlZ3Jlc3Npb24gYW5kIHRoZXJlZm9yZSBhIHRhZyB3b3VsZCBiZSB3YXJyYW50
Lg0KPiANCj4gQUZBSUNULCB0aGUgY29tbWl0IGlzIG9ubHkgcHJlc2VudCBvbiB0aGUgdXBjb21p
bmcgNC4xOC4gU28gdGhlIHF1ZXN0aW9uIGlzIHdoZXRoZXIgWGVuIDQuMTcgYm9vdGVkIG91dC1v
Zi10aGUtYm94IG9uIEFETGluaz8gSWYgdGhlIGFuc3dlciBpcyB5ZXMsIHRoZW4gd2UgbmVlZCB0
byBhZGQgYSBGaXhlcyB0YWcuIEJ1dCB0aGUgY29ycmVjdCBvbmUgd291bGQgYmUNCj4gDQoNCkBS
YWh1bCBvciBMdWNhOiBjb3VsZCB5b3UgZ2l2ZSBhbiBhbnN3ZXIgaGVyZSA/DQpJIGtub3cgeW91
IHVzZWQgWGVuIG9uIGFuIEFWQSBwbGF0Zm9ybSBidXQgd2FzIGl0IGJvb3Rpbmcgb3V0IG9mIHRo
ZSBib3ggPw0KDQo+IO+7vzFjNzhkNzZiNjdlMSAoInhlbi9hcm02NDogbW06IEludHJvZHVjZSBo
ZWxwZXJzIHRvIHByZXBhcmUvZW5hYmxlL2Rpc2FibGUgdGhlIGlkZW50aXR5IG1hcHBpbmciKS4N
Cj4gDQo+IFdlIHdvdWxkIGFsc28gbmVlZCB0byBjb25zaWRlciBpdCBhcyBhIGNhbmRpZGF0ZSBm
b3IgWGVuIDQuMTggYmVjYXVzZSB3ZSB3b3VsZCByZWdyZXNzIGJvb3Qgb24gQURMaW5rLg0KDQpB
Y2sNCg0KQ2hlZXJzDQpCZXJ0cmFuZA0KDQo+IA0KPiBDaGVlcnMsDQo+IA0KPiAtLSANCj4gSnVs
aWVuIEdyYWxsDQoNCg0K


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 14:01:33 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 14:01:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617627.960394 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsO9z-00035Q-3B; Mon, 16 Oct 2023 14:01:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617627.960394; Mon, 16 Oct 2023 14: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 1qsO9z-00035J-0d; Mon, 16 Oct 2023 14:01:31 +0000
Received: by outflank-mailman (input) for mailman id 617627;
 Mon, 16 Oct 2023 14:01: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=/fZZ=F6=citrix.com=prvs=646b5f8ff=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qsO9x-0002aw-Cg
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 14:01:29 +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 7e27b62a-6c2c-11ee-9b0e-b553b5be7939;
 Mon, 16 Oct 2023 16:01:26 +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;
 16 Oct 2023 10:01:13 -0400
Received: from MW4PR03MB6428.namprd03.prod.outlook.com (2603:10b6:303:123::8)
 by BN8PR03MB5074.namprd03.prod.outlook.com (2603:10b6:408:78::10)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.34; Mon, 16 Oct
 2023 14:01:09 +0000
Received: from MW4PR03MB6428.namprd03.prod.outlook.com
 ([fe80::831e:28d1:34dc:f518]) by MW4PR03MB6428.namprd03.prod.outlook.com
 ([fe80::831e:28d1:34dc:f518%5]) with mapi id 15.20.6863.032; Mon, 16 Oct 2023
 14:01: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: 7e27b62a-6c2c-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1697464885;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=f6K9QCjSnWHO33Tkl1r+WMQVXig3mP6s9RuDI8R/oY0=;
  b=KUJZvJERzWizE5oZ8gM5mg5ZmtY0D2+TY86OGgqT8zPB2fJkyz5/5RDK
   DOL9QKilL+B864/HSnZTHuriw4DC4/LC6XkPxbmJJUTqkYa7TeQOLu62M
   dynjRNSbFGoG3D9q+DLdnS28DFVxK2lUBCEqAbkaEUaYIBBIkn6YztzV0
   E=;
X-CSE-ConnectionGUID: 9HG31xPkQwGejmztaHJ7gA==
X-CSE-MsgGUID: cdbqpi+KTyehOn85a/JTyg==
X-IronPort-RemoteIP: 104.47.59.169
X-IronPort-MID: 125577049
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:6jFsMqA8LVzNjxVW/67iw5YqxClBgxIJ4kV8jS/XYbTApDsi0mQCy
 DMdCj2PO/bZYGP1eNF+PYzioxwOvMDWz4BrQQY4rX1jcSlH+JHPbTi7wuUcHAvJd5GeExg3h
 yk6QoOdRCzhZiaE/n9BCpC48D8kk/nOH+KgYAL9EngZbRd+Tys8gg5Ulec8g4p56fC0GArIs
 t7pyyHlEAbNNwVcbCRMsMpvlDs15K6p4WtB4ARnDRx2lAS2e0c9Xcp3yZ6ZdxMUcqEMdsamS
 uDKyq2O/2+x13/B3fv8z94X2mVTKlLjFVDmZkh+AsBOsTAbzsAG6Y4pNeJ0VKtio27hc+ada
 jl6ncfYpQ8BZsUgkQmGOvVSO3kW0aZuoNcrLZUj2CA6IoKvn3bEmp1T4E8K0YIwq8ZYWjhez
 f8hNx8AbBWRm+uW4u20Y7w57igjBJGD0II3nFhFlGucIdN4BJfJTuPN+MNS2yo2ioZWB/HCa
 sEFaD1pKhPdfxlIPVRRA5U79AuqriCnL3sE9xTI9OxuvTm7IA9ZidABNPLPfdOHX4NNl1uwr
 WPa5WXpRBodMbRzzBLcqC/x2bCXwXKTtIQ6H7Gy7+Zrw36v12ETLxtGCFL8g8WohRvrMz5YA
 wlOksY0loAw/kG2Stj2XzWjvWWJ+BUbXrJ4M+A88hDL9aPS7C6QHG1CRTlEAPQts8ozWDory
 k7PmtrvDDNiqpWFRHSF7LCWoDiufy8PIgcqZzIATAYDy8nupsc0lB2nZs14DKe/g9nxGDfx6
 zOHti4zg/MUl8Fj/7q/1UDKhXSrvJehZh444EDbU3yo6it9ZZW5fMq45F7D9/FCIY2FCF6bs
 xA5d9O26ekPCdSBkXKLSeBURrWxva/bYXvbnEJlGIQn+3K14Xm/cItM4TZ4YkB0LsIDfjyva
 0jW0e9M2KJu0LKRRfcfS+qM5w4ClvSI+QjNPhwMUudzXw==
IronPort-HdrOrdr: A9a23:/Z2lGqgE5CyWhKZOL28h3wBRwnBQXioji2hC6mlwRA09TyX5ra
 2TdZUgpHjJYVMqMk3I9uruBEDtex3hHNtOkOos1NSZLW3bUQmTTL2KhLGKq1Hd8m/Fh4xgPM
 9bGJSWY+eAaGSS4/ya3OG5eexQvOVu8sqT9JjjJ6EGd3AVV0lihT0JezpyCidNNW977QJSLu
 vn2iJAzQDQAEg/X4CAKVQuefPMnNHPnIKOW296O/Z2gDP+9Q9B8dTBYmOl4is=
X-Talos-CUID: 9a23:Twaub200HsVBsFvJAob1LbxfS+AKKSTN9HTpPGC1C2N7VLS1awCf0fYx
X-Talos-MUID: =?us-ascii?q?9a23=3A/TKJLQ+a+FPIPAstfb5SrZeQf8xk6b22CQMurYQ?=
 =?us-ascii?q?Lu+6CZXF5fBWhnTviFw=3D=3D?=
X-IronPort-AV: E=Sophos;i="6.03,229,1694750400"; 
   d="scan'208";a="125577049"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=BzeOWSCFyFVg8vVJU3lLRqOWFpC9AaB1YTbnM5lATjBOwpEs7o8nUAj1bIuKj0AYrBBv2UlFsenETLuH9mjluUKeo4ra7mP89pouTZRo0cfhxuGJl6E2BoLUS7pYqxMBpk9LjhU/qBqfgQizEfFhC5rl/baFwHdefUZ4vbA856pEkO882FFzp3GiIYtsBFR5szL6Kb5A7mzYrKwEES3n9Eug63tTa3Mf5HwicsBfozMc1BvCt3814REgjWyNl9Vt8Gv+9/nZ9hQcXX4KaZRklvgWkWjZi5FpmvGJyhJpelzCMB7GBtpN5prw7uW3HYNy5CxSfJk9Pe2hRXP86TnOdQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-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+CVXwtRqiCPO4MyecTKnwC418XSZbeKsyN2GfsgXRA=;
 b=G8WLdrd8PQ/neLnXzEXqtQOByAO7hvuGt+EVD60o/bGuAoTX4y3DK84ctlM/9f6MdJKuHoD4T7fFHTUPZxAsJXf8XwxDddkBtcMm4EWciHBwWgAN7X8ERx2Opj4EzoKr7/vOk8eU2gStlETvW8R1ZK5jQJtlHflww65PAx6Q5kVAj9ib3joGaiVbZaMYv+uXzS36nJKA6xapXzVAMaURx0jTjaGCn27hs3aTjd7B407rV4UxBiCdY1XLQyfd9ZPXs1ZWXgzTfjNigclBbuJZtWPOkwT9ZVpWwlTMWixyjvY4Q81xp+zQZYVYPbCf3RtLzBDY5W3eKqln1v4xxNi3rQ==
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=v+CVXwtRqiCPO4MyecTKnwC418XSZbeKsyN2GfsgXRA=;
 b=QTdvXrTI9XKl1MLFftvsy6Q3jEIpZt3PLFetiz0gPLslOGkOujt6VneKMqY/vxnh1xn0F2ZuQW0zQL0QeT0WT8QO0a2lhmSMWCiqr29yogkMx8CMfHylV7j9LcCxmqss3lcq4H0LSyhUoQoahIUG6siaekRu3j4JrTevEi/b6qo=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Mon, 16 Oct 2023 16:01:04 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: Henry Wang <Henry.Wang@arm.com>,
	Community Manager <community.manager@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>,
	xen-devel@lists.xenproject.org
Subject: Re: [PATCH v2 2/2] domain: expose newly introduced hypercalls as
 XENFEAT
Message-ID: <ZS1CIFA1FoeGHONZ@macbook>
References: <20231006130059.97700-1-roger.pau@citrix.com>
 <20231006130059.97700-3-roger.pau@citrix.com>
 <b8c03b77-d4bf-3be7-2090-e76e6849b085@suse.com>
 <ZS0z89xtFzkmK8_d@macbook>
 <2cd47d7f-00de-3409-c21c-561c92a5c42c@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <2cd47d7f-00de-3409-c21c-561c92a5c42c@suse.com>
X-ClientProxiedBy: LO4P123CA0666.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:316::17) To MW4PR03MB6428.namprd03.prod.outlook.com
 (2603:10b6:303:123::8)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: MW4PR03MB6428:EE_|BN8PR03MB5074:EE_
X-MS-Office365-Filtering-Correlation-Id: 9241b497-a349-495f-0a7c-08dbce505921
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:
	j0PQDjRuFJ3d0Azt1cKJxg+kGZjIlUMk1n/c+ezyMhj6OHdTNxTRFB60B7sJy+z6s5Z8quHNNNyOBTUn+7xLrqclwzenJPovr5nMo/5cPZbMN81E6QqgVNDofBJj99hdppm1SLZ5MmgcC5h7iZdQZVlPhk+vakeRrFG99Tk1ncfMrsqNLVgLkWyjoJ8KfA2Y5QPGF54A98BNt1Qz3Cda2gRq6e/zDLMB9/Mqu9maLJjUUQKswaPVsis8b3NpRzBfli76DQhwrut+8uydknPb8gvSmhfSPkRoPTxGaan/04VaaM+6yPtLgG0fAUgbLZrdLhuFitC9Ugxi9LEYwIph2bo64dk5MR4XsmXR8d9mNGp38SF+bJp309Jwr3XEb2+xN2b1to7ioBaraCJZkokMpA1GPeIIPppmBr85qRvkPYAYn6uTVqNCpzQdiPrSt+W5aWwuoyboZ/Gt+ZyOe9b8sy0rUBKIE2vML4JMwwj0ZKTLy4Nm1awYvHaVuM9o6LNCp2lTKAl6BbUXWX65P4otRPHgEbpsAyY1FG4CoKO2HiCvmRCInS/KfpXNsIG1B2+u
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)(136003)(376002)(366004)(346002)(396003)(39860400002)(230922051799003)(186009)(1800799009)(451199024)(64100799003)(478600001)(6916009)(6486002)(66946007)(66556008)(54906003)(6666004)(66476007)(86362001)(82960400001)(38100700002)(6512007)(316002)(9686003)(6506007)(26005)(53546011)(85182001)(41300700001)(8676002)(4326008)(33716001)(5660300002)(8936002)(2906002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?OWw1dzRHU2pyc0dTeDhTZ21SOFFQQ0pMT2wrblV1V05sbUFZeUl0VjZ3eXpr?=
 =?utf-8?B?YmxVOStVd09Xc2VKckxLU3J2N1dodDE3dkRvUUsxSUlrQndDQytuaTdyTWY2?=
 =?utf-8?B?WmpEajlDQyt5Q3RleHB6L0lKQlBsYm1GajhkYnhBSk1FbllOVWoxdGswMU9l?=
 =?utf-8?B?TSt2bTlHV1lSekpzR3Y3YUpFYkdnbHA2YzloSU5hMldHYTl4ZWpnNjljaTV3?=
 =?utf-8?B?WFFNQldtV3ZiOVRoRnhmUHBEcVpxT3BtVDRFRzRTOEJWTWh4bGlpUDlvc3Jz?=
 =?utf-8?B?UmxPWktZd3BKMWRTaUk4VmV3eXZBZks4ZzgvQTZFRmxHVlBON3FVNGNycnFF?=
 =?utf-8?B?R1Zha2VrYVhlMVNLVitoWStZVmVLNGVGNTFqMk9ITW4ybm85VGtBeFVRTGJv?=
 =?utf-8?B?OTZXWHRqMk9FYVN5K3ZyQ2JWSDhPQ2lQWS9nNGlhUCtXcUpvRDRXWU8yelpq?=
 =?utf-8?B?bjNGQ2JVeUJ2dnBXL3JjTjd5SVljdjJMNTF6ZUVBdVFjcDVLYXN2WGtsS0c5?=
 =?utf-8?B?NzM2UkszTGsvZisyUVJ0eGpRR3YvU3BQcGR2UU9HQ1RhcnRjbjAvK0xCVzho?=
 =?utf-8?B?T3Z4RnRrMElkNXgra0ljZzNXZG1jWmRLU2tZUzJoRzZGcGJLZW1nMTA4ejdx?=
 =?utf-8?B?b2tIVy9KaWpHb1M1TG9KY2toRWxrbGtpSERUSlgxRFhDYXZZWWlYNkl0Y3Zs?=
 =?utf-8?B?dlMyUmxPQitIckllNXVHeWh1czRMZk5KWnpjVTVNV2RpMnJPdWRySHJZTVpP?=
 =?utf-8?B?Njc1ZW9Od3RUVlBpWG43a0sxaVNzRFNoYUlBVFhOKzVDREcrTmhWaHQ4WGpS?=
 =?utf-8?B?ZG5IRzcwYlk1WjJ4aHcwOGxhQTBTYlJQQjdmeExPQzQ2eUtBTERyK2d1Qmd5?=
 =?utf-8?B?cnhGS0pXNTVVdWxWS000Rk4vbjU3YjdmcG1GY2lFU21LTVVkVkwvUkJ6RWJO?=
 =?utf-8?B?OEw4NzZ5L1A1U1BNSmNoYlRhRUlvKzlZbkprUjBsWFVxemZETUV0SmUveENl?=
 =?utf-8?B?Mi8zeXVwMUFIVGRjSWkyaVB2WWl2WG40VHlsNXdMU1BGZm1iZFdQeDhGcUsy?=
 =?utf-8?B?eDhpY0NxVElIRWtxME1LdEtDeStuR1JXQ3ZBbzRkTEhhN3BnTko4SzZINFNs?=
 =?utf-8?B?T2FwNC91dzVvRVNzY2ZYVWllSnNmUUNCTmthMnFDdHZtckZRc1k4WFJJQmM4?=
 =?utf-8?B?cjZNQzlNZWs0OEcvWm9GdXBGbGJpT3VxQlpMVXN0eS9XQzgrTi9QNzloUFJu?=
 =?utf-8?B?SnZCR3IreXZQY2thTytCTExHOVJJd3BzQ1d0TFAyaUQ1a2pGanJlYmd6dzJZ?=
 =?utf-8?B?NnBxcTFnM0pLcVpLSXB4cDh5KzVIT3lKTWZtdVJTMVlJQ2JadG9IVkNJbjZJ?=
 =?utf-8?B?MCtyZ1hhQ2tkdWNROVNoWFlTU0h5T1IycFRMbHpULzJSV0p0b1NkWmh3RThr?=
 =?utf-8?B?cjRPcU9Ta24vWlJuOUlhS3FPaHRFNU1FelEwbTIyTUpJYllDaStnREx6RlJD?=
 =?utf-8?B?NlR2em5RU01uRnpuWDFIbTRYV1FVYnVxU2loWUN6aE10OUgwSExWdkF4dGNE?=
 =?utf-8?B?M3Exdno4aFAyN0pMTmNvTkhzOGsrS1gwU1RWbTQ3ei9KMkR1TVpXMHZFKzUr?=
 =?utf-8?B?RTg0Z1BQNTJJK0RjRm1WNUtkTkZmeVp4cXpBQU5tWGN6UU5ZME52R0pXVmxo?=
 =?utf-8?B?Z3psRHVCZ0RmZ2djODJueGdrU1dSNURSTzVoRXpndU04aHNnRjRhYitMUFdS?=
 =?utf-8?B?UjZOaVdOMzVIU1FCeXJDamJHb05XRHZJQmhBUVNLTDNmbGdMS2pWMHNLWFNO?=
 =?utf-8?B?Mno0RU9zY2p4T0ZseGVaYVBwbFdxZmRUU3hFMWEwaGFNUlY0TTRjOWNyUmRR?=
 =?utf-8?B?aCtLL2c3b2ZGUzZRdEtYZ2xVTHI1Q2crMm56NFdTMnpwdmxUZWZ4bnVlWGxq?=
 =?utf-8?B?bnZTYzQzSmp2bTVTcmFKSzRuTnBoMGJTa3dCWGpBV2ZZSmZnaTVnMUg2NGtk?=
 =?utf-8?B?VnJ4R0YzL09LSHRtMSs5U3JGczlpSHRtOWozMlBzTHNMZDg3VEo0ZTcrc0Z0?=
 =?utf-8?B?VVYwejl0ZnN5WkhWc0h6L1ZqRVFyNTBEZk5PVGdaMmZ1SHE4TldSSzZ0THJB?=
 =?utf-8?Q?x3JzNE4v4jHmZmb19FgaVlpqh?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	ex6xos1koE/7T9Ua5nmNMKLIcjJDw2mTiAED/jDf+LVGsH9auw7ECjzK656RpaRCUumcpUDLfzxTlCGr40qihMtjYHRi2DWD/91z0PD5zqjfPvTyX5vcsP2xaESBEcjTJAoHnmU8VoRuFLHXlLrjIeSKLlrZsrj5B5JbsQtONX63DPfy4rrlAOBE1dkKpluGOLe1uwcOBpg9ZDHbVbKAJaG+ooz7JwL6Ei5+6SSKRCedbLzyjVV2qWBwZkmIWptlRab4WuTiji2GR1e28lN1ltTIZhYNjFoyAQ6ipFdwSxYjNRQhWYMZVvqjnvK1sDVKRXaVPKgSZ0z12lYAdroI+7puN3r5+U2ZqOtU1Md2OgMj/S1JzyML7/MfdsM0ZI3LqOv2eHo0ocLzmBqdXFk7LffVT0wD776MQHl5AnlgxyNre5aAnSrCgXw8Wk+RluC0D9NQUwbF5Y8WX/Lc5m/HqLnsCL9ivgFqIauNLQFjZ3SMTcncZqmbrikar4YOjqFu51nK48JEcZ0dEuA9gNp36RSwdfqxDwb+29fsvwx7YQVd50X5jRlhAFwK/PmebmuAGUABc1e8Eat/b8sr1GzUXDFzGhSRpToOpBAq5P1iVZ0wFPZcATC8+x+xT1yhfWHXI8xMdutNWHqchG8boqjfPaUycUosrktAzrmBGAzVkFHEd2vcUBOZZYOR1IStUhApqzu6Igo1aHjTU6aUjKucS/VU+DZew3Q/PnLUvs7wuYHXsxpzeoDrrteZ3bOVI2wJ/HRrE07patZZvt2IGlKdXaZlgbr7kiRvx6Ja3uJQH8sUca+NHxojcNZT8lasrvmf1diEoYT2D62Sfkubstn23JaaWQ7hVMpXBFhax9VEtb4LmIBfCX3rBwoduweLM3H6sHneAUVDmlZc0JESRsyeSjWcZr4jTGz5mOAsFBWvUog=
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 9241b497-a349-495f-0a7c-08dbce505921
X-MS-Exchange-CrossTenant-AuthSource: MW4PR03MB6428.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Oct 2023 14:01:09.3101
 (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: OM3mO+nMjI/Vnc7Mi2tz93ohf2lWAvZsgddAb9Z4bivceHW0dbhuqzYcIhnOpDclDa3mV/UP2Qyf2nZJtcGB4w==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN8PR03MB5074

On Mon, Oct 16, 2023 at 03:58:22PM +0200, Jan Beulich wrote:
> On 16.10.2023 15:00, Roger Pau Monné wrote:
> > On Mon, Oct 16, 2023 at 02:35:44PM +0200, Jan Beulich wrote:
> >> On 06.10.2023 15:00, Roger Pau Monne wrote:
> >>> --- a/xen/common/domain.c
> >>> +++ b/xen/common/domain.c
> >>> @@ -1998,6 +1998,10 @@ long common_vcpu_op(int cmd, struct vcpu *v, XEN_GUEST_HANDLE_PARAM(void) arg)
> >>>      {
> >>>          struct vcpu_register_runstate_memory_area area;
> >>>  
> >>> +        rc = -ENOSYS;
> >>> +        if ( 0 /* TODO: Dom's XENFEAT_runstate_phys_area setting */ )
> >>> +            break;
> >>> +
> >>>          rc = -EFAULT;
> >>>          if ( copy_from_guest(&area.addr.p, arg, 1) )
> >>>              break;
> >>
> >> ENOSYS is not correct here. EPERM, EACCES, or EOPNOTSUPP would all be more
> >> correct.
> > 
> > I don't think so, common_vcpu_op() default case does return -ENOSYS,
> > and the point of this path is to mimic the behavior of an hypervisor
> > that doesn't have the hypercalls implemented, hence -ENOSYS is the
> > correct behavior.
> 
> Besides that other ENOSYS being wrong too, I question such "mimic-ing".
> Imo error codes should be the best representation of the real reason,
> not be arbitrarily "made up".

The point is for the guest to not take any action that it won't take
on an hypervisor that doesn't have the hypercalls implemented, and the
only way to be sure about that is to return the same exact error code.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 14:02:44 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 14:02:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617631.960405 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsOB9-0003hQ-Dp; Mon, 16 Oct 2023 14:02:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617631.960405; Mon, 16 Oct 2023 14:02: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 1qsOB9-0003gM-AE; Mon, 16 Oct 2023 14:02:43 +0000
Received: by outflank-mailman (input) for mailman id 617631;
 Mon, 16 Oct 2023 14:02: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=BBjo=F6=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qsOB8-0003gC-Cs
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 14:02:42 +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 abcd2b83-6c2c-11ee-98d4-6d05b1d4d9a1;
 Mon, 16 Oct 2023 16:02:41 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DBAPR04MB7221.eurprd04.prod.outlook.com (2603:10a6:10:1b1::8) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.35; Mon, 16 Oct
 2023 14:02:39 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%6]) with mapi id 15.20.6886.034; Mon, 16 Oct 2023
 14:02: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: abcd2b83-6c2c-11ee-98d4-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=EzrX1GKYqZ5y0+WR92jfcrMS586wb/gQjOjE3/XeSzTPIF2jFwbF2a0CGV/6ZbNpCVz1X8Hrf0NBzmUsr3cvz9XTopoWOdpNUs084ewWZ9CV232K+VE1Eos++ZqFn412SaNwD5NBEabhhv9JA5FEjc3SuDG773lsGUADlJu21bbOwFKtyqRO48/7tf6MhAbMdqVS4mkMd7Jb4WuqHQP7NloRb6pgOrPcJiu7eYrs4SQKu2B65hzWFjGlRIyScRBxvbUnblkl7vOacqasSO5LdIiC1OtfuTB6gGFPjV+zZ56rnvPJI+mxDFXs6X3WiJMs0CKJd2k8xadFbiYckpe3SA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=2ob3x6BYtkaKEimNcNv5aYkwYIMpLciqwTLDrtdFc+I=;
 b=mNvp33hVKkD2K2uu2WwD/GgQIX4dsipkWoFsL4lRjyFSeiEpjzW6ePD/zLC7sobsfy5hDY57xoDdujN2MMhuprkvpS+4J6vzgpEsGmDZ+dbB1KXhztbuqxWnDVcZcwzuZ0A82Opi13UJhiy2+/+pXTrz8FaXW9tH7e6LW7GXhQHYfZIdX+sa32d/fqorFYF1E4VA73pLvSbgNvR7X23k6G5aN/VaO4vEyAHlSTJRlDgPvUTXQe6P7oB3Lgnx+rfi2WWl21ijjPSKAN3x7UiPAq1mF1prlrqCuYgt0YGJaBIKO76FL2Ru86gTdzusiA82ClS/A634XmGLyge90o3gqA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=2ob3x6BYtkaKEimNcNv5aYkwYIMpLciqwTLDrtdFc+I=;
 b=Hw7SnSQKbATXoCZM+wUSmsJCMz8dEJ89/Hic9i99asXV52M841mL6naDdnolwqWACjiy52D+jOuIuDWIhhR0OMGKviApQlhUlQJwjgrjyxnwPgG4d6NG8cEl8HvUK9Els2dmfmAOdNqOUIAoSfwTUrXG+BZBvoE88lrtPKP2P8MofK4xwawQBP3SlNGnbQg4hmOkOsGyXPGP09LgIXq1JPeqGZZ1SqjJXwUuvkI6pXeIkHabg4X3BlrumzASreCEyf6NUr84MaOx3LAndsIU4hvAGCepOSDXn7tMw39RBPUyWTS1mzAlUcRpxH6lpcvcHDQx1hQPiqMWhNR4O9Ww8w==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <e882704e-6c60-73a3-0e16-d87224a1a22a@suse.com>
Date: Mon, 16 Oct 2023 16:02: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 for-4.18 v5] xen/pdx: Make CONFIG_PDX_COMPRESSION 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>,
 Xen-devel <xen-devel@lists.xenproject.org>,
 Alejandro Vallejo <alejandro.vallejo@cloud.com>,
 Julien Grall <jgrall@amazon.com>,
 Shawn Anastasio <sanastasio@raptorengineering.com>,
 Oleksii Kurochko <oleksii.kurochko@gmail.com>,
 Henry Wang <Henry.Wang@arm.com>, George Dunlap
 <George.Dunlap@eu.citrix.com>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>, Julien Grall <julien@xen.org>
References: <20231006144405.1078260-1-andrew.cooper3@citrix.com>
 <efc2b22e-6650-4c1f-b4cf-9971d4d08b49@xen.org>
 <ZSAnX3xjM91-tYbE@MacBookPdeRoger>
 <ed43fb9f-590a-fd39-ba87-b45acddd19a9@suse.com> <ZS09Q8DU-1_ATw1j@macbook>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <ZS09Q8DU-1_ATw1j@macbook>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR2P281CA0027.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:14::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_|DBAPR04MB7221:EE_
X-MS-Office365-Filtering-Correlation-Id: 76ac9b3d-1f47-4552-4e5d-08dbce508e9d
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	oPR/mE9fVYXb/pjxBVFAevMqFUky0LQyKiae276JTNkTe6eDwb0C29ZQrxjpsmefbfxqdNtjR3esB7iU74BYliP2OIvq7RY0L8HwjlOgQGClUWN9IVi8Z4QY8ajnXAq2bLQ2iwSraTMVWcBO28MzESfysBYImtGAb6Ix0KkQArPbLUnXTzReO819wDduXJ6XTSYepD/NVIKi831wdEc3Hg/SHJwxdV2IHh/MtttTioxksaJBHg15fB1OzCXyUYK4BHWEqXemr+yk1H7swWjOA9TE9v3sCuHYCyveF3zZsSIkE8WL6vbYk5JgUiN5uD6gQG2XBKr5i/N8t/xDA776Lhp4wIPGbWTZAn1C2/uosD2acsZXcD1WEYt+jgKkJlshtll+cWlgsW7HKwLQIbs5NvJDzZfOnxYmHr4fZDAEV7JcNBTcZpnHYcJflSu1SoO7+tn8YsISklsMZyzM978LI4AP4aLeNqEvuO1R6P39cRy1oTuQcg9hP+jBifCDGjelVyyximCfFJFQCxraLpO3lLaXy6WXfHksjMuG9WpTme939NKDfmmDJhH4KAQAN6lSqyIz4Bb6k92KVxTX/vXNQUBZH9NZ+mOHID866sNYVByM5T35tO+T5FxHuP1iNzJzhRRvql/DlDPNduQxs3mXRw==
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)(396003)(39850400004)(136003)(346002)(230922051799003)(451199024)(186009)(1800799009)(64100799003)(26005)(2616005)(8676002)(8936002)(4326008)(5660300002)(38100700002)(83380400001)(31686004)(41300700001)(478600001)(31696002)(86362001)(6486002)(7416002)(2906002)(316002)(6666004)(6506007)(6512007)(53546011)(66946007)(36756003)(66556008)(66476007)(54906003)(6916009)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?R0RJSUVvNDlrbUthTStkQWRhUllFcUUvUVdUclM5dHN6MUtMMnI0cHBXZVE5?=
 =?utf-8?B?SXQwazdVdkdFb1NWREVTVmdYVUo1SnY1UG92Y1lIQ3pwM2hSdHM1UFE0REFX?=
 =?utf-8?B?ekE0VDRVVGJCS0dLNDJRZ1lnTjZacWxnWFp2QW8yMmJMelNCdXJkN3NZZlN2?=
 =?utf-8?B?K2d5enR6NlFLL01WSU55Z2FSQlVHa0YwQWZVU3BHdWVPUzFVblBDL29vYW92?=
 =?utf-8?B?REd6YnQwV05HbmhFQ2dFM0tmZWZZejlUOUpoZHlxZEVEc3p6eDVZK2lTUzUy?=
 =?utf-8?B?ZW9NVGNBd1RQeTY4cGpvNUVYa1ZFeFFEN21iQ0l3UlRYUTh6SHJSYXZtOEp6?=
 =?utf-8?B?RS9NWU9KbVFWTWZSMHJTRjV4VWE3U1JWQ2F5OFpLcVdBUGFwQURTNnVVanVk?=
 =?utf-8?B?bVdhZzRmaUU5Q0pYRDhBSXU2bDFoNG1ST1ZXaFBEYVQzSzhubThIai9heXBm?=
 =?utf-8?B?L3BoUmVJNzRHMWNJYWVxTG9rUGJreHJmMkV5bER2WXNXekF6bHgyOC9kMzlF?=
 =?utf-8?B?QVFsNjhyUllEb29tMWhHY2ZBc0V2ZjJTOGVwRmJOUk5wb2NiTnEwZGdvT3RG?=
 =?utf-8?B?b3drM1h6ZTFGQ1l6VWxQdTVwQ0phaU9SMVc2YmI0RTVBUzVnY1RRNVczdTRO?=
 =?utf-8?B?VGRxc2Z2YXI5QWZkWEw0T2FpS3pwN1lISk5mVFQzOFlnMzZ4ZnlkNFJPU1Er?=
 =?utf-8?B?RlB0cUdoQ0hndlc3Rk9DYmljZlhFYlpCRFA2eWwwZFlPYkNtZW1QKzY4S2V1?=
 =?utf-8?B?T3RqWGZuSUJXSnFPRlpVbkJTRzcxVmhudzRkcDhiQVdvbjRNWElIT1FycXdy?=
 =?utf-8?B?WlNUU3huODhCOTB4b05RMDVrQVhpYlJ0ZlBYRjI1WXB5eXNMS0d1eGlMakFK?=
 =?utf-8?B?Szc5Q2NQM2lqR2lUek05UURpTFpRU1JRMGlDQkZtVkVmNGxXcHkzN2kzcHYv?=
 =?utf-8?B?MDJJaE9EMWcwdm0zLzM2dld3QnNvMW9OL0dYY0FnQTRja1VCZUJKMXQzUG8r?=
 =?utf-8?B?a2xEYXl3MldaZFMxTDAwcU1mNUVDOGFYTVgzcmxDZ0dSbTlMVGhYUzFWR3F6?=
 =?utf-8?B?bTRVYyszTXpaUWZxLzhRZTFEdS85Tk9jbXlFUmZNMXVxbHhuMWQzcWhoNGNX?=
 =?utf-8?B?RGVIZXJpUDR3ZUJnU0ZqbGdNRUxsSENCRFU4c0I3SnNud1dobVV5bG92aFd6?=
 =?utf-8?B?ZXhnclZsYU1iZ2tHRHREeHpGTFppM3hZTnkzbVlRMTB3QklaTlFHYkhKS2lV?=
 =?utf-8?B?THozbitJVzRxd203Q1hOZllGdzAvNE9HMk1HcHliQzFZS3lXNm44VVVuaFJj?=
 =?utf-8?B?c2R4dmFpVXdKVDMwMWpDVk1rMEpkeUZlVmNUaFUzT25XU2Z3VDQ4SHpEakpR?=
 =?utf-8?B?U1dMdWl1STcyMEZROVQ2aDNZaHVWbldWelpCMTNodHIxQlN6UnpyZUMvem9D?=
 =?utf-8?B?d2cvSndSa08rd242TmdsRlI3dGR2RXkxY1VZK3htaGFVTHNJSzRFRXRjYUx1?=
 =?utf-8?B?QU1Ua01NTm0xb3hXakF5Zm9QOXNyMWdnakFDUHIyRVVvU3A0YytQajR5MjNS?=
 =?utf-8?B?UFFtZjVhZXBsV3BJMllDQ0Vyd090YlpsTHNQMittczlialBSWDhsY3E2MXRU?=
 =?utf-8?B?MjltdlpIUHdjdzF1Y1lZVjl6UXB1WDc2ZWRaV2hwdmg2eDBGcTRXanhiRXA3?=
 =?utf-8?B?dFkyMUZYc0pqamMzUWRGRDdzLzBrK0ttZGk1b250NjVoVlRCL05NMXdoQVZr?=
 =?utf-8?B?aW1zRDVhb3RqNHRucWRhbjlvWXF3V1VlOXVQbWh5M3dRT254aHByRkQ4S1hn?=
 =?utf-8?B?ei9qSDZQTDEySjA3MklHZHAwRk9wWCs1bVk5SXA1OGpjaWJqeEl0NVEyTTVl?=
 =?utf-8?B?OXNiWVdJTFlFUUZmOGIzaDFCSDJTeU8vVmUxWTkrTkhuV1RxWFVCcDdQVUxK?=
 =?utf-8?B?a1phejhWWVd1ZDBDYXZxcVpOR0pYRnh2Tlo4S3N0QWFYOEx5WERHYmlVSHBy?=
 =?utf-8?B?S1ZTUjJYVmpFRVYyR0VUZVJpREROY01mUTdyWGxZZk1wMjQvekI1cUNqbUxo?=
 =?utf-8?B?QzRweForQURVMVZJcEpVb0k0aFhKRHFKT2l3RmFXTExhMno3cXovcytSVWNR?=
 =?utf-8?Q?YeBNPA+C1XPH4YBVDH/iwBahq?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 76ac9b3d-1f47-4552-4e5d-08dbce508e9d
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Oct 2023 14:02:39.0586
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 0F+VyRJt/fSdW4HSM/nXV99FmowLzyVClUkEP1YZMCivH/VIszRkhw5vhp++Rm2is2AO7eey4Fa9kZlzMTkvcw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBAPR04MB7221

On 16.10.2023 15:40, Roger Pau Monné wrote:
> On Mon, Oct 16, 2023 at 03:19:22PM +0200, Jan Beulich wrote:
>> On 06.10.2023 17:27, Roger Pau Monné wrote:
>>> On Fri, Oct 06, 2023 at 04:09:19PM +0100, Julien Grall wrote:
>>>> On 06/10/2023 15:44, Andrew Cooper wrote:
>>>>> From: Alejandro Vallejo <alejandro.vallejo@cloud.com>
>>>>>
>>>>> Adds a new compile-time flag to allow disabling PDX compression and
>>>>> compiles out compression-related code/data. It also shorts the pdx<->pfn
>>>>> conversion macros and creates stubs for masking functions.
>>>>>
>>>>> While at it, removes the old arch-defined CONFIG_HAS_PDX flag.  Despite the
>>>>> illusion of choice, it was not optional.
>>>>>
>>>>> There are ARM and PPC platforms with sparse RAM banks - leave compression
>>>>> active by default there.  OTOH, there are no known production x86 systems with
>>>>> sparse RAM banks, so disable compression.  This decision can be revisited if
>>>>> such a platform comes along.
>>>>
>>>> (Process remarks rather than the code itself)
>>>>
>>>> Jan is away this week so I want to make sure this doesn't go in without him
>>>> having a say.
>>>>
>>>> While I don't particularly care about the approach taken for x86, Jan voiced
>>>> concerned with this approach and so far I didn't see any conclusion. If
>>>> there is any, then please point me to them.
>>>>
>>>> For the record, the objections from Jan are in [1]. If we want to ignore
>>>> them, then I think we need a vote. Possibly only from the x86 folks (?).
>>>
>>> I would be fine in leaving the option to be selected if we knew that
>>> such x86 systems might be feasible, but so far we have seen 0 x86
>>> systems with sparse RAM.  That said, I don't have a strong opinion, but
>>> the hiding on x86 seems fine to me.  Interested parties can always
>>> forcefully select the option, and a case can be made to make it
>>> available again on Kconfig.
>>
>> I find it odd to demand people to change source code for aspects like
>> this. The very least I'd expect is that BIGMEM configurations (which
>> I've never seen any production use of) can actually also engage PDX.
> 
> So we expect BIGMEM to have sparse RAM regions?  I would have expected
> systems with >16TB of RAM to still be contiguous.

Well, the system kind I did the original work for were sparse for the
purpose of allowing huge hotplug areas which would then be contiguous
with the non-hotplugged memory on the same nodes. That said, me
mentioning BIGMEM was merely yet another step in trying to find some
compromise with Andrew. As pointed out before I'd really expect that
finding compromises doesn't really mean only one side moves, yet here
and elsewhere I can't help getting the impression that this is what's
expected (of me).

Jan


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 14:04:45 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 14:04:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617635.960415 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsOD2-0004Qk-Q9; Mon, 16 Oct 2023 14:04:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617635.960415; Mon, 16 Oct 2023 14:04: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 1qsOD2-0004Qd-NE; Mon, 16 Oct 2023 14:04:40 +0000
Received: by outflank-mailman (input) for mailman id 617635;
 Mon, 16 Oct 2023 14:04: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=BBjo=F6=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qsOD1-0004QV-HH
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 14:04:39 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur04on0630.outbound.protection.outlook.com
 [2a01:111:f400:fe0e::630])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id f11509ea-6c2c-11ee-9b0e-b553b5be7939;
 Mon, 16 Oct 2023 16:04:37 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DBAPR04MB7221.eurprd04.prod.outlook.com (2603:10a6:10:1b1::8) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.35; Mon, 16 Oct
 2023 14:04:35 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%6]) with mapi id 15.20.6886.034; Mon, 16 Oct 2023
 14:04: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: f11509ea-6c2c-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=OI1bBuy17/7EwTuW2XXlIY3z+WW1g5bDAW4KFgXoumHmwbLuqt0SGvppnEIAsgk5jgai2QdLWzgJerQdCu4jM4lDpa7uaAi1xabD2Dk3IvmKkEu/kFyFU3jcJTQY4z6xDZ5V9oDDCZioRzyAA5oW1q1KYRzdab9BEW8+lRXYQSOYUnZCfA5/0vwVqEGKGHXyiTSI1A7N7lhMGumrPgsipOX5hh6SLgoYPVNncs622riCEPw9YvJnFhhG41GJXWChFPsbymCZoOssKG5+Fi51WZ1sfhjr4jTG7vAm1zLztvw5+1+NK8ZbAgogHUlmNVSWAU/kMIyx2C1iR2oE5WiI0A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=896e5e+8rUBXODkOEmQWwo6Ms7TNzLX0CaqBiFR7UTw=;
 b=QRWZqYbeBbslT124q3WiLLhLcnP5c+krfC4rCi3WNfG9MR5Ieh0xcBqXLdSj05YpwsqSTvFPUITYpY5NUjCzhlKDGZTloM0Lk842zQCKi7ESK+pYCn6T3/75uOO0kTsiobECzHfp/+nvKsdyQjEIGnApo+IY7WlOs7SlaUfmkIhkBnlSMtKf1O5TDvROofszgzpDlpOMScKpyFSEYqWclSh20mVor+rFI/UvGUGPLTujT7YzLRAlnbXysNl6KK4wwToL1xi6kAbFHXqUzWcKg/pyjgF7CYW/JXRtPUpSD4NMQ2cdckqDVMqdqXfDpAXIAhy91EqdkZCbkuVdwbVG0A==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=896e5e+8rUBXODkOEmQWwo6Ms7TNzLX0CaqBiFR7UTw=;
 b=LxzONI4YwoMnEfSO1HoJnJC0uUB2JOKnFyX0r9tnPK+HXa250qe488UrGS4iLo/JnumUyo+MSDSsYw1jtHYhTmZe1pl2IK1qCaB7VIjguGbDQucRIAgs1s7uN6FoS3BklSUsm+d6GEbVmzc0ibT8NpJNVtNBnwGJ1cSZ55jjras4hmMjLGdsR0nUzxs7KjVuSrZAs29d5Ov9PqR52UJrAoI6MjD2heVM+Enuqz5vaGsVX1l8oLVar6t0FMYPVDgPwryP9WvYuXDQRg8+acglbZyg6DS+FsqK5CI01ISfI/F2z/B9S+rGdBMlQqIvGb6U5ql7uxUGNCKC1i6wfbLuyw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <de39a4a1-bcb4-b0fd-e18f-2892c428c8f6@suse.com>
Date: Mon, 16 Oct 2023 16:04: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 v2 2/2] domain: expose newly introduced hypercalls as
 XENFEAT
Content-Language: en-US
To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
Cc: Henry Wang <Henry.Wang@arm.com>,
 Community Manager <community.manager@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>,
 xen-devel@lists.xenproject.org
References: <20231006130059.97700-1-roger.pau@citrix.com>
 <20231006130059.97700-3-roger.pau@citrix.com>
 <b8c03b77-d4bf-3be7-2090-e76e6849b085@suse.com> <ZS0z89xtFzkmK8_d@macbook>
 <2cd47d7f-00de-3409-c21c-561c92a5c42c@suse.com> <ZS1CIFA1FoeGHONZ@macbook>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <ZS1CIFA1FoeGHONZ@macbook>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR2P281CA0135.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:9e::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_|DBAPR04MB7221:EE_
X-MS-Office365-Filtering-Correlation-Id: f80d8c4c-6ed2-4eb0-7d00-08dbce50d42f
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	nI8DH3W1VCn9Qtcn4cZIkmh5Y/d9SLGHXvKCRXhyAsnhCSa3rVhWfbR4erSl5AqxLmQSeKeRWNA+QS1x/duO6TeF9KlJLfazjIhfVPVVdeOAj3oEh6bHZRYH6cMwdvXHgnbTEgjouEBqMfNeQXJzHeH03gMwOH9+1pOo1frmVlS03Er+prWrCTLrxSJEIXgUsq+2uQl7Bl9bNq8eiROnhWWOs84TF8uG+uzoZYJqLAUnzkOsY22ZjJHGLah/vRj3Ram7wU98Bf3eP15tZvG1UsspdUu7FZ4T8MY+fuccU4Uk6fjtDwFQIly15S65EkrJy05h0bRT1NV8MvQkP0fGOqkkFCRIprxAj2cm+JwRj6xEAM9g9x20xUjtHIS4VUkUjlkFTkmcdXtGs9RvGtebUOpX9DBHwAGXRE8fLLa68gVpxI9hyqzS7QBm6bcvC7W+J8G6pDm/OfvIREVijlZYZxbaNBSL9FzqdN62XHR2rExqqcjvvWNlDsydmjgd04T/WpZL9HTqemKFBZcfmahSsDAQWbi6P2x+IuodX57VsDmyhwev7x8IyHK3mar8X9pJgL4D/0dlFmlLD5VVIU0RaTUQ4/mOds9TrjPr4yY6bgFDWg4/PP6FadBm+39Mxrgp2eIVDyTP+S4PzlPlw1g8RQ==
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)(396003)(39850400004)(136003)(346002)(230922051799003)(451199024)(186009)(1800799009)(64100799003)(26005)(2616005)(8676002)(8936002)(4326008)(5660300002)(38100700002)(31686004)(41300700001)(478600001)(31696002)(86362001)(6486002)(2906002)(316002)(6506007)(6512007)(53546011)(66946007)(36756003)(66556008)(66476007)(54906003)(6916009)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?aDdOY0lYWFczYm1oZ2M2bkhmU3J5MW9neHJ2b3hrY1o2SWR2RzhDdVFlVmxl?=
 =?utf-8?B?TnlLaGUrdjNjbDk3Tlp0c3BMZjY0aWFmemNMYlJQK3FhZlozUm1YR3NwRkJa?=
 =?utf-8?B?Ymx0V3ViSXVFWW1HcnVCTVJyVGtwQm5mNjVRMnUvT3ZNNnpKclFQMFMzMjdv?=
 =?utf-8?B?akN4OHE0cHZNQjJEZmJKZk8zY2VaV1dNNHVUUGpjMTZnL255SjNEZlowM0NW?=
 =?utf-8?B?alg0NEUvUmlMdE1aeTBzWjcvZ3U1MXcyckJSY2dsSHpPVm5IVWtxeFJyeVZM?=
 =?utf-8?B?clJIbzRTOEE4YlFjYWcxbmV1UkltdC90N3ZoTjBEN0JHQlVmOXhISUdaVmRI?=
 =?utf-8?B?Tll1eFM1VVdaVDgyVzdXNTZDZUN4dEM4ZHc4RitBVnJ1S2xweXAxMlU1Sk9F?=
 =?utf-8?B?NkZvRFV0SXZKTldlQlNPVGdrdjBBTDNsTzczaE8xK2g1T090ZnlnNkhTajJZ?=
 =?utf-8?B?bkxmSW1qZmRIcHMreUpOenc3UVVhdSt5bkc0cjF6ZVpGSXpTMFBNVkVFZUFt?=
 =?utf-8?B?eERTanVsaFJKWHBOblNKV1FBZ2hoMllQU0Rzb3JLV05veWhhdW0vR0lBZ24r?=
 =?utf-8?B?N0phQ2ZwUm52clZqUDh4Qk42SzRtY0h4b256V0YxK3lCcU9jbW1EZ0hXZlFt?=
 =?utf-8?B?UmtZNkl4dVNMclBjZWF2ZTdaK3hrb1RBZUVHUzJMY21CWFFIQlRZU3NISjV3?=
 =?utf-8?B?WHpheFI4R3ZNUDlLWVo0T3F4TWpTRWxBNGVuWDdzQjRLcUJDdG5xQnNpSlkr?=
 =?utf-8?B?QThxTy82NW1GdUVKRjlHVkx1Q3pqQVRRaGdzYWZBY0RXQmVUdFBRYTR5MHRq?=
 =?utf-8?B?bXV3aEMzVHhRU0hXSnFKZ0EzVyswMUxMUC9wV2xDUnZTeXdTRllFU0VhZ3Yx?=
 =?utf-8?B?cEpIOEdNaGQvZXR5R1pCR3F5Z0RTc2pTeVFOSjZtaWpOMEg0MEM5NmFNcEpK?=
 =?utf-8?B?UXFKNHJPTVo3YTNKZW52Q0NRS0VrRXJZWG5DRVNidjNXYUllMFBGWEJySk84?=
 =?utf-8?B?S3RGVUY2VFljNDJ4OHg0aVRDWnhZb2VXKzhLODZ6N3pMMElmMEVWcWlIZmVK?=
 =?utf-8?B?NExVRGQxbHJ2L05zamlVUWpORUtCbW9ndkNxcVFuT0xBYXpPQzlZRWxsNjU3?=
 =?utf-8?B?eEpocEdRanJjQU5JQ2YwTmFtTi9yQVBXTFQwU3dsRUljWXV5alVoeVRwZmFL?=
 =?utf-8?B?VFVnaDlEMUQ4R1BacFJSRUU3K3RSMGsxdGtPalBBVDRKdjlvcTZIRldHbm5m?=
 =?utf-8?B?VjNsUlNjU1NyRmxaa3NiZEljYlkvdEg5d0xEVmU2ckFjY0Rnd3lMY1A0VGpT?=
 =?utf-8?B?QTgrVG9KZTBEU015dWhwQXA0dldHNkptbm9WQW1NMVlEQVdkTGFqWDh3cFZ5?=
 =?utf-8?B?WHhDR1phZGVFNVpxZDl3RnNMNkp1V2hTWkhLbmV0UEhxbzRMR2dYNWhSNXZN?=
 =?utf-8?B?SVVBVE1CZkdUanVZc3d3M3RmTE1FRVRJRElZRGJSeDl1bjliVTNaZmhtYVpm?=
 =?utf-8?B?T1A4bHV5ckltb2drWjJSTjFNa2Z0YmVQREVOUmxVeWYxN3dNalZ6ZlB0clB5?=
 =?utf-8?B?MGU3OXlzQlBkSHVudHByWFFNT0dtc3hid2YyU01YZHlFai9Oc2lKQWh5UnlK?=
 =?utf-8?B?bXRXYU9MWkp6SC9nREUraFpHc0p1anExYnhHK2ZsNDFMMkdZQk11NktkZERV?=
 =?utf-8?B?dUlVVmJtK2hEZkNwQ2FJSmhqaGRsM1RZc25Edmg4b05tSHhGQlcyZmJnTXF6?=
 =?utf-8?B?c2pvSkc0bFhveFlQQmozYmdlQkhYSkdNTkRYZmNEeWt1NjVCNFlEcXNFak41?=
 =?utf-8?B?ZCtWMkJxUEJtdHNMUjhHTWN6R2REU2x6ZE1vWVJZSTN2WituWmxQMUhrM285?=
 =?utf-8?B?dS9tTGNub1hzd21IcWNmYzdsamtld3FXbTVEc2JKaXJJOUJ4ZWJObXU5Z2RL?=
 =?utf-8?B?MUdadVk5QTNKNG92M2hzdlBZQjBZS0xVeDBYSEZvTVYyamZ1RmplUW1HNHpq?=
 =?utf-8?B?aDJCRHA1VW1qQUxCTnErZ1pudDh4VTJCYTNDd0JMYnFIMW9CVU96cVBrUUg0?=
 =?utf-8?B?STk4NGRVU1ZyVHdJbVRMc1JocEVoUFRjSjJDclg4ZkswVkROZzF3TWFaZEFB?=
 =?utf-8?Q?6Et5Q/qqGmDgJAjJk0ipYv4Zr?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: f80d8c4c-6ed2-4eb0-7d00-08dbce50d42f
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Oct 2023 14:04:35.6966
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 5x6coFbYgRlwsfH/Lll4j8UfOKqCmHGJurLrriboN2fhulYqw4yD3z9srkKJFFx7BRpPw3PWoSUKchhl7/kbPw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBAPR04MB7221

On 16.10.2023 16:01, Roger Pau Monné wrote:
> On Mon, Oct 16, 2023 at 03:58:22PM +0200, Jan Beulich wrote:
>> On 16.10.2023 15:00, Roger Pau Monné wrote:
>>> On Mon, Oct 16, 2023 at 02:35:44PM +0200, Jan Beulich wrote:
>>>> On 06.10.2023 15:00, Roger Pau Monne wrote:
>>>>> --- a/xen/common/domain.c
>>>>> +++ b/xen/common/domain.c
>>>>> @@ -1998,6 +1998,10 @@ long common_vcpu_op(int cmd, struct vcpu *v, XEN_GUEST_HANDLE_PARAM(void) arg)
>>>>>      {
>>>>>          struct vcpu_register_runstate_memory_area area;
>>>>>  
>>>>> +        rc = -ENOSYS;
>>>>> +        if ( 0 /* TODO: Dom's XENFEAT_runstate_phys_area setting */ )
>>>>> +            break;
>>>>> +
>>>>>          rc = -EFAULT;
>>>>>          if ( copy_from_guest(&area.addr.p, arg, 1) )
>>>>>              break;
>>>>
>>>> ENOSYS is not correct here. EPERM, EACCES, or EOPNOTSUPP would all be more
>>>> correct.
>>>
>>> I don't think so, common_vcpu_op() default case does return -ENOSYS,
>>> and the point of this path is to mimic the behavior of an hypervisor
>>> that doesn't have the hypercalls implemented, hence -ENOSYS is the
>>> correct behavior.
>>
>> Besides that other ENOSYS being wrong too, I question such "mimic-ing".
>> Imo error codes should be the best representation of the real reason,
>> not be arbitrarily "made up".
> 
> The point is for the guest to not take any action that it won't take
> on an hypervisor that doesn't have the hypercalls implemented, and the
> only way to be sure about that is to return the same exact error code.

I don't follow this kind of reasoning. Why would a guest, whose code to
use the new sub-functions has to be newly written, key its decision to
the specific error code it gets, when at the same time you expose
feature bits that it can use to decide whether to invoke the hypercall
in the first place.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 14:06:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 14:06:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617640.960424 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsOF7-0005Fg-9r; Mon, 16 Oct 2023 14:06:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617640.960424; Mon, 16 Oct 2023 14:06: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 1qsOF7-0005FZ-7D; Mon, 16 Oct 2023 14:06:49 +0000
Received: by outflank-mailman (input) for mailman id 617640;
 Mon, 16 Oct 2023 14:06: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=fs62=F6=linaro.org=alexey.klimov@srs-se1.protection.inumbo.net>)
 id 1qsOF5-0005FT-U7
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 14:06:47 +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 3d3e24c0-6c2d-11ee-9b0e-b553b5be7939;
 Mon, 16 Oct 2023 16:06:46 +0200 (CEST)
Received: by mail-oa1-x2a.google.com with SMTP id
 586e51a60fabf-1e993765c1bso2954401fac.3
 for <xen-devel@lists.xenproject.org>; Mon, 16 Oct 2023 07:06: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: 3d3e24c0-6c2d-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=linaro.org; s=google; t=1697465204; x=1698070004; 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=YlrDDMvSnCexOzkkcOVcxaNWiO/8qMFwor3XZuHncqM=;
        b=RyQJBjullz4P7bj0yVsK9XFdNnnS3wmLsxVgtB+v2V4cwtrrsrYGGefsZLgjTq6meT
         rMgQ0OqyD8kj5y9WSoPtTaljb+Ge6f2uxQi8+IDQJ+r0pxxmGF0FTxr4lF0BUw8r9Ha/
         ZBdoC42cEOLlY1XNpyJp7IYdSLeuUEc/9hOj4Ds7rJ3FNLeTZX3IPdzqxm4DwEkmGWUv
         B1gM/NbbyEkgetLAtPoxinAvaKVVIc8nmCPdDdbkqOTFNJLZqucQBtDcOdPquFAqgAph
         zv1UowPSFo+6qU44IpiJMekqg2/Cqjx1WG2mVTaOFQg9RoEJosNY1VlNHLILHYTcIcvz
         KEsw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697465204; x=1698070004;
        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=YlrDDMvSnCexOzkkcOVcxaNWiO/8qMFwor3XZuHncqM=;
        b=G95Asdrwx64nuZ8LHHlCY/42IvmBF+X9IfehDB3kfCl1k1TXjtAdr3bK1t1WREkRR/
         55TXe5UYWiKfyPOSMiSv/RbypOM7k6mdTPc1lnYVCIw7fuN0/ysdl5XMVUVnYwnZkfnP
         K8Ea1juv5z3ARIZJwaLo4IjYk3FfIw2jne9irgljfIzw1DYurXJsz/rQwyMAA7q/zdDf
         kGs9IjlNDZAyROQaUenB2Lb45Zcd5hrVItHyn75lG/htnW0OBxIFtxJzRE/iS+jV/gf0
         O5fm8z+8ZX37k7DPeJyqegd8lM60MbTs7ZOkXR/L2wMbe4DeTc0Ye+PZHH/9tYwDCQP0
         tELw==
X-Gm-Message-State: AOJu0YyqXUpVr17SxkGX3lINhprlixoiLFnKjNGAEMFUUUTk5j2+vhLx
	8tylDFhVrABcU4WUFjVqoXNGccUu64ZDhNomVB2gkA==
X-Google-Smtp-Source: AGHT+IG3kXmd9x3/nQuvqxPxXOv16jsUJ6Xl/prJjRKD8kuFy6DtcRQBWl2vIgbujzUGsic9OJzDMFtS52h/K966/cU=
X-Received: by 2002:a05:6870:4e0b:b0:1e9:938e:5fc6 with SMTP id
 pl11-20020a0568704e0b00b001e9938e5fc6mr15704066oab.57.1697465204487; Mon, 16
 Oct 2023 07:06:44 -0700 (PDT)
MIME-Version: 1.0
References: <20231013122658.1270506-1-leo.yan@linaro.org> <20231013122658.1270506-3-leo.yan@linaro.org>
 <169101f8-0475-45b1-b2c2-60dadd88d3f0@amd.com> <5a5e960b-e6fd-4617-b33a-10cf07f5bb52@xen.org>
In-Reply-To: <5a5e960b-e6fd-4617-b33a-10cf07f5bb52@xen.org>
From: Alexey Klimov <alexey.klimov@linaro.org>
Date: Mon, 16 Oct 2023 15:06:33 +0100
Message-ID: <CANgGJDpLwxy8wgGFw0j3GziY+igw9Vj-FQrZPN3gF3XMhmCi+A@mail.gmail.com>
Subject: Re: [PATCH v4 2/2] xen/arm: Enlarge identity map space to 10TB
To: Julien Grall <julien@xen.org>
Cc: Michal Orzel <michal.orzel@amd.com>, Leo Yan <leo.yan@linaro.org>, 
	xen-devel@lists.xenproject.org, Stefano Stabellini <sstabellini@kernel.org>, 
	Bertrand Marquis <bertrand.marquis@arm.com>, Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Content-Type: text/plain; charset="UTF-8"

On Mon, 16 Oct 2023 at 14:54, Julien Grall <julien@xen.org> wrote:
>
>
>
> On 16/10/2023 09:44, Michal Orzel wrote:
> > Hi,
>
> Hi,
>
> > On 13/10/2023 14:26, 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 10TB, allowing module loading
> >> within the range of [0x0 .. 0x000009ff_ffff_ffff].
> >>
> >> Fixes: 1c78d76b67 ("xen/arm64: mm: Introduce helpers to prepare/enable/disable")
> > I don't think a fixes tag applies here given that 2TB was just a number we believed is enough
> > and all of this is platform dependent.
> > This can be dropped on commit if committer agrees
> Xen may have booted on that platform before hand. So this would be
> considered a regression and therefore a tag would be warrant.
>
> AFAICT, the commit is only present on the upcoming 4.18. So the question
> is whether Xen 4.17 booted out-of-the-box on ADLink? If the answer is
> yes, then we need to add a Fixes tag. But the correct one would be

Yes. The upstream xen 4.17 booted fine and the mentioned commit was
found during bisect, so it is introduced regression.
I'd personally say that "Fixes" tag is needed here.

Thanks,
Alexey


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 14:07:29 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 14:07:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617644.960435 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsOFl-0005fW-Im; Mon, 16 Oct 2023 14:07:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617644.960435; Mon, 16 Oct 2023 14:07: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 1qsOFl-0005fP-Fw; Mon, 16 Oct 2023 14:07:29 +0000
Received: by outflank-mailman (input) for mailman id 617644;
 Mon, 16 Oct 2023 14:07: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=BBjo=F6=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qsOFk-0005FT-Nf
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 14:07:28 +0000
Received: from EUR01-DB5-obe.outbound.protection.outlook.com
 (mail-db5eur01on0630.outbound.protection.outlook.com
 [2a01:111:f400:fe02::630])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 5614c3d5-6c2d-11ee-9b0e-b553b5be7939;
 Mon, 16 Oct 2023 16:07:27 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM9PR04MB8698.eurprd04.prod.outlook.com (2603:10a6:20b:43d::20)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.35; Mon, 16 Oct
 2023 14:07:24 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%6]) with mapi id 15.20.6886.034; Mon, 16 Oct 2023
 14: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: 5614c3d5-6c2d-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=dFpWuq9uh5Q7rzkdfW+hgy+gVBdft7OtKzG3qLUvw1fPSeejFzQrOZXa+UBP3DGlACYIODSveF8mKOaQHaqcEDVJ9Br65XxRnwPFmXghdR4MTd8Ft+6IkffTPJ0kfTjr7lo0n8zMJguLYD0f+wBC05LkMTD+ZgvJI++1sKB0pe0Cm5RRkDo/weXdB9rmn5oTOnAA1O3zVQvMcf+ap92752ZSkDaGW/U9cxjTySPVpaozncadegTU7aX8bmz5lqxym2fH7CR34elzrDDRpYiLoNPRVMM+tJ4RU3z9sT7LI6fgKOAleI70xMf8mnpoxt/BzpW47AVSCAQ7cF9aEBZwVg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=DC/iZACq1IhtCC9ycmUVHwFInpLVgtKuBqW7FqktnrU=;
 b=U4M+iR+Rd2pcWmCNzgLdZndeb/iGuf4Vbn5gQxp9CUbrWpS1VwkHTEqEqhkklyii+GJz/tWSnzxN4u3NBW7de+0GSH4fzmQsyefTmrorR/TE3I1N0XZsf0p7KMKqZl1SU/7IT1qfK2C/CfSfKQ3Jq/qT3oqpG7oSmdC7ETkFrr8dPOKL8p1V8eh75nYAtx3sNd2iYnEEgXCI3o9RsuRgHDATrxUCblynIJSE7sq1FiycpxTkqQlw3mlhmJGfSnqSnufrtdONx2Tv26YaN4JOnvnj6KMcOL088teb7uxRN5InCJt4hvxuozf8mz+rLfcN2K4rRWohgCrko+TXyZszOA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=DC/iZACq1IhtCC9ycmUVHwFInpLVgtKuBqW7FqktnrU=;
 b=Vw7NONb61YDNINwhwbHIN0/IgwIIWyXE/ENMeXpvCMVafJ35twdU+JGbIH/B0jAK/0Edne5aBJGofJN7QmEH3AIibOjsmB50fuzC8he7QnNIaWz4F4cPJ23Sjm2oJPSG/KOzygQ2R1h9sLcaHZ6OIn3+XTqbqUNc8f+ECKELklHzEnpZmLnRwSDbeig6sI3POX05YHezPgg1FOMj2iQiiaWyCpIzFWnj0buBRsDYanQpt512MoCJ+0hTl+ZQvozPoQwGO0UCQfP1lWNWHGtW5Sd0lFHEb7rabfQXqsUSvMjrigv0VMIvw6UhkV6cNwrP5/Smnw/+DKw5ZrU5Ywd/sQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <879e6934-93b3-e260-770a-966cf8bcd2f8@suse.com>
Date: Mon, 16 Oct 2023 16:07: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 for-4.18 v2] x86/pvh: fix identity mapping of low 1MB
Content-Language: en-US
To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
Cc: Henry Wang <Henry.Wang@arm.com>, Andrew Cooper
 <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
 Paul Durrant <paul@xen.org>, xen-devel@lists.xenproject.org
References: <20231013085654.2789-1-roger.pau@citrix.com>
 <9aaae72b-fdcc-b48b-1155-e1cb0401d7d1@suse.com> <ZS0_zPxGLwfsuVvX@macbook>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <ZS0_zPxGLwfsuVvX@macbook>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
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_|AM9PR04MB8698:EE_
X-MS-Office365-Filtering-Correlation-Id: 41301884-2182-455b-f649-08dbce5138bd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	13uo8AxoqhBFAEYyHzpBuJkAbjRSELlRrhPfw77Im7yjzterGHchC9meYJWXOjiQeD35OehmWgxvQOy7uJCTOBjKibdUIUYFWXaTS2sU/lsY56PFx/FIKWuTliVTvMiQNqEcVoPlDV2N0zxOXLXXbSNk+G3oSEZ+471sK/VNJACgAalcGAndUHYKDBPOLUCMeepyo4fKBwetXi1nR4/rF8E3AMYj1MeyWbGakhyjAiOXb5BLXMZTt9Pv6hMT17AkoM3c9LOaOE3w3PGWpAENRmhfRuS0PEkd6W6WtQt7IJyjcWVZzMmNyQwxrtiu6yLuzUo26L3dGbpt7wNA7DjVocS62D6ianAlf7JhqnqVF4t5cUDWiUV/aS9waU9VpCk9ZEAYrOu0m96CZZncpzBcq0B/RhogAdlxzSEi5YGHghgymUAMNP7dCco7wEd2LsOjFPFE1/niiG4KcSATMmXGp6KphsL1xBK6XRzapwb0tbmPlIcclRFclXWMShWGgAMi2D1upjTJAeekSEjN3+TSZsqyK0difBRw+ThxxJNXXD2i023YPZiH1mC6vmHGQCfWvph8Ogf7p1NtVNRuabSg5pYNhXfz8ZDou4xMwA5GScH97hljolWFGmHk8fVXxSo6UkmFYXlI00/+DlK8bcs9hw==
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)(376002)(366004)(346002)(136003)(230922051799003)(186009)(1800799009)(64100799003)(451199024)(2616005)(83380400001)(6512007)(54906003)(66556008)(66476007)(66946007)(8676002)(4326008)(316002)(8936002)(6916009)(53546011)(41300700001)(6506007)(5660300002)(478600001)(2906002)(6486002)(38100700002)(86362001)(31696002)(36756003)(31686004)(26005)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?NDhYMHQyUTFKWGJ1MjRSYldrNSt2VmY1d29ZNmtrN1FKRkg1VW1McmMxWWJh?=
 =?utf-8?B?WTBlNU1Pc2dwL1hKS3lGV3FZNlVyR2FnU21YS0VBZ2drcWxIVzNGL2dtTi9F?=
 =?utf-8?B?L0g2OUIweGZDaG5Ca0NrNEpZLzJpd0F0THdtVmpuZ0oxTjd4cGh6ZVAyVnc0?=
 =?utf-8?B?WFVqSElKQ2ZwQnhqVDBIVVArM2IyTm5wU1c0YVk5Tll6Nk5Hajlvc0VLbmg0?=
 =?utf-8?B?OG9yUHZ0b25vMzQzakRsVHEvMzhSVHVmNForeHBVcUQ3N3hNRk93OUJLc1I1?=
 =?utf-8?B?QXY1T2RXQ0F2SzM1SzFibkd3d0RxWlo0Qjc2MzBucUN1OEJ4QVZNT3hqN2RH?=
 =?utf-8?B?MThtVm9ucWtFd09iSWVJbVBHSWN3S0NBaG9WM3hBd3ZHQmhQY3FxV3pmblZX?=
 =?utf-8?B?UG80NzJpaXlZM1k5Zk0wd25xVlVaTmxlMlVvYXZmMUxvZGh5bG1UZm1JYUwz?=
 =?utf-8?B?QmZTZXBhRmhCVjhkWXFaSTY2MmxBdWtxR2w4Q2NxSjlFSDJYWEFJcUpLZ2hU?=
 =?utf-8?B?SUhPMGQveElGOEpmT0FHTGdsNkxrOU02S2MzWTAyVWJIRnlUbUt2RWdZMlM3?=
 =?utf-8?B?THJJeXlteU1PL0pOaGp6KzV2MEUxalVEbldaU0tVL1VRUUxGckJqNTFmOTJy?=
 =?utf-8?B?aDVyM0MwOW1aVTQ0WmFoT1NBTzdNLzc5eFZkdjM2S3pzZUd0WlFrYks0RWJp?=
 =?utf-8?B?R0JkSS9UUXF4cjNSaDlEbUltUGRqcXhhUGhYSHprMjJWYzVhcExNbWJGM3M5?=
 =?utf-8?B?QzlLeGNBQnlJQTVSN2pCRmJXQU5CTE5KNGwzR3UvQ3NDTTVCZnQ1T3hKaGhr?=
 =?utf-8?B?dEEzRU9MT1dHOUlYQ1p3Z09ScFFPSWx2WElYWXNYZ1FxR2p3aUNzTFJWUEFN?=
 =?utf-8?B?M0hZWHdURWZ6ZHZ6OFNyczgzTHM2KzNycllMRzVKOGcrK1JTZDZmd2MrVldG?=
 =?utf-8?B?RzNIM1hSbC9YbThvWHNzQWtlS2x3QklhL2JsYmpETU1LWHVVTW1iL3RaaUlC?=
 =?utf-8?B?SUUrUDBQVEtqdTYvOWhKR1ovUTdXQTdlNlZwdThjdzV4c0hIdE8rWW1pNjdz?=
 =?utf-8?B?ZE8vMmY2UXcxMVpGNndxLzkvdlBjTnlsVjV0K21YeG5FZlVDYUNKRTczU1lK?=
 =?utf-8?B?bXQ3eTBjN1dGbUwxVzFxdkVHRlJ5NjVqdXNuNE4zMjlZUERkcDdrNk1SdGtZ?=
 =?utf-8?B?aXE4MHdobGd5VzNMRy8wU3IrNjNveldvZUFvQnpKNndzQ0F0aWRWVW5MMU1T?=
 =?utf-8?B?blFVbzBnTmlkeUVYUmNXaWUvMGdIVVNOcVhaQjFYRHhSakk5Q1hhT2M5dWVa?=
 =?utf-8?B?ZUt5aWN1bUNtR2lEdEdjNTZOUTVjVmZ4WTRTRllnYTlvYWlTdFpJUzZ3Nlpj?=
 =?utf-8?B?TXRBb3FoSThUeDNuRmh4L1poNXdmaW8rVGxsbzUwU2M5SEMyLzdrTE4vazNZ?=
 =?utf-8?B?WFB2UElaRjFzSjg2MEU1TXcvSXFoVklaTHlqeFROa1NSV0duaHY1U3MxYXNn?=
 =?utf-8?B?TEZYRGxIMUVnSDdlaG01L1ArMEV0YUZLUnczR1VYTDVHK3M0enJrWWtybjcw?=
 =?utf-8?B?SXhPaDkxaExDellhSGprWHpkOUltTm9QdEFMTEw2cjBXWTFNbkdCdkVpeUMv?=
 =?utf-8?B?UUVmN011dUN5U1JpTG9nL1FDa0VST0NhazRUQlJnVjkvSFRGaHM4SUhQSHFR?=
 =?utf-8?B?dVdqR3Vxd2V1a2xaQ0dWSDdtbTJlWnZ6clB4WDhDdVorZVA4d1FkZ3VRbHdY?=
 =?utf-8?B?WEE4VUVNMHh2emJGZGRZeHZVeEQ1c3pkNnJWZmt2dFU3SURYTndEYkdIelVO?=
 =?utf-8?B?OFpFK1JHL0ZQc1JsREN5WXBnd0ZFRXNVZThCNG1BNVBPTXUyaGczUXFnQlIy?=
 =?utf-8?B?bm50Nkp6YzQ5Tm5ZbnpQbFlNMjU4VkhjSUVwT2szWm8zR0RpQ3h3NVZGck85?=
 =?utf-8?B?MFUzQWc4b1dGTHF2Qno5MmdQcnR5SEFRM1ZxbmZjMHd3UldObUtKb3ZtNmZ6?=
 =?utf-8?B?WDUxZ2huK2xCMGRtTkc4ZEZHK1hUT3FXZkhBTTRNeWozOGt3R3F1UURyN1Zq?=
 =?utf-8?B?V0kyQ0tnaFR6QVV4c3lsR1RIM3NTTkhzT1g0VTY0TnZyT0RUdE40RW5DcW5C?=
 =?utf-8?Q?7nUhfEMURwcTpt/biR6oomIeG?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 41301884-2182-455b-f649-08dbce5138bd
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Oct 2023 14:07:24.3752
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 0nnB8cb8ivdg7UVvGF/t6RUxmdIEtk4eytrsKmS0c4KkEoKV6hBhAwfVmONdOXu9VDJhMtcZ2vwhPh3u6M3yOQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR04MB8698

On 16.10.2023 15:51, Roger Pau Monné wrote:
> On Mon, Oct 16, 2023 at 03:32:54PM +0200, Jan Beulich wrote:
>> On 13.10.2023 10:56, Roger Pau Monne wrote:
>>> The mapping of memory regions below the 1MB mark was all done by the PVH dom0
>>> builder code, causing the region to be avoided by the arch specific IOMMU
>>> hardware domain initialization code.  That lead to the IOMMU being enabled
>>> without reserved regions in the low 1MB identity mapped in the p2m for PVH
>>> hardware domains.  Firmware which happens to be missing RMRR/IVMD ranges
>>> describing E820 reserved regions in the low 1MB would transiently trigger IOMMU
>>> faults until the p2m is populated by the PVH dom0 builder:
>>>
>>> AMD-Vi: IO_PAGE_FAULT: 0000:00:13.1 d0 addr 00000000000eb380 flags 0x20 RW
>>> AMD-Vi: IO_PAGE_FAULT: 0000:00:13.1 d0 addr 00000000000eb340 flags 0
>>> AMD-Vi: IO_PAGE_FAULT: 0000:00:13.2 d0 addr 00000000000ea1c0 flags 0
>>> AMD-Vi: IO_PAGE_FAULT: 0000:00:14.5 d0 addr 00000000000eb480 flags 0x20 RW
>>> AMD-Vi: IO_PAGE_FAULT: 0000:00:12.0 d0 addr 00000000000eb080 flags 0x20 RW
>>> AMD-Vi: IO_PAGE_FAULT: 0000:00:14.5 d0 addr 00000000000eb400 flags 0
>>> AMD-Vi: IO_PAGE_FAULT: 0000:00:12.0 d0 addr 00000000000eb040 flags 0
>>>
>>> Those errors have been observed on the osstest pinot{0,1} boxes (AMD Fam15h
>>> Opteron(tm) Processor 3350 HE).
>>>
>>> Mostly remove the special handling of the low 1MB done by the PVH dom0 builder,
>>> leaving just the data copy between RAM regions.  Otherwise rely on the IOMMU
>>> arch init code to create any identity mappings for reserved regions in that
>>> range (like it already does for reserved regions elsewhere).
>>>
>>> Note there's a small difference in behavior, as holes in the low 1MB will no
>>> longer be identity mapped to the p2m.
>>
>> I certainly like the simplification, but I'm concerned by this: The BDA
>> is not normally reserved, yet may want accessing by Dom0 (to see the real
>> machine contents). We do access that first page of memory ourselves, so
>> I expect OSes may do so as well (even if the specific aspect I'm thinking
>> of - the warm/cold reboot field - is under Xen's control).
> 
> The BDA on the systems I've checked falls into a RAM area on the
> memory map, but if you think it can be problematic I could arrange for
> arch_iommu_hwdom_init() to also identity map holes in the low 1MB.

Hmm, this again is a case where I'd wish CPU and IOMMU mappings could
be different. I don't see reasons to try I/O to such holes, but I can
see reasons for CPU accesses (of more or less probing kind).

> Keep in mind this is only for PVH, it won't affect PV.

Of course.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 14:14:01 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 14:14:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617650.960445 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsOLy-0007ns-7B; Mon, 16 Oct 2023 14:13:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617650.960445; Mon, 16 Oct 2023 14:13: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 1qsOLy-0007nl-4K; Mon, 16 Oct 2023 14:13:54 +0000
Received: by outflank-mailman (input) for mailman id 617650;
 Mon, 16 Oct 2023 14:13: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=fsKw=F6=arm.com=Luca.Fancellu@srs-se1.protection.inumbo.net>)
 id 1qsOLw-0007nf-RE
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 14:13:53 +0000
Received: from EUR02-AM0-obe.outbound.protection.outlook.com
 (mail-am0eur02on2062b.outbound.protection.outlook.com
 [2a01:111:f400:fe13::62b])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 3a4ca34f-6c2e-11ee-9b0e-b553b5be7939;
 Mon, 16 Oct 2023 16:13:50 +0200 (CEST)
Received: from AS9PR06CA0231.eurprd06.prod.outlook.com (2603:10a6:20b:45e::28)
 by GV1PR08MB10456.eurprd08.prod.outlook.com (2603:10a6:150:16d::22)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.34; Mon, 16 Oct
 2023 14:13:46 +0000
Received: from AM7EUR03FT007.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:20b:45e:cafe::7a) by AS9PR06CA0231.outlook.office365.com
 (2603:10a6:20b:45e::28) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.35 via Frontend
 Transport; Mon, 16 Oct 2023 14:13:46 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM7EUR03FT007.mail.protection.outlook.com (100.127.140.242) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6907.20 via Frontend Transport; Mon, 16 Oct 2023 14:13:46 +0000
Received: ("Tessian outbound ee9c7f88acf7:v211");
 Mon, 16 Oct 2023 14:13:46 +0000
Received: from d8f9c42fc00b.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 F85D592C-4B32-466D-BADB-A3BA728818C0.1; 
 Mon, 16 Oct 2023 14:13:34 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id d8f9c42fc00b.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Mon, 16 Oct 2023 14:13:34 +0000
Received: from AM6PR08MB3749.eurprd08.prod.outlook.com (2603:10a6:20b:8f::22)
 by AM9PR08MB6036.eurprd08.prod.outlook.com (2603:10a6:20b:2dc::21)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.35; Mon, 16 Oct
 2023 14:13:31 +0000
Received: from AM6PR08MB3749.eurprd08.prod.outlook.com
 ([fe80::501a:489c:410b:338]) by AM6PR08MB3749.eurprd08.prod.outlook.com
 ([fe80::501a:489c:410b:338%7]) with mapi id 15.20.6886.034; Mon, 16 Oct 2023
 14:13: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: 3a4ca34f-6c2e-11ee-9b0e-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=0l2iLTh1w+3tqfm+dfdNDd84vd/fBqCZF7spkLjYXao=;
 b=ygRKnhJNGuHgj8XTmbPGH3MKWrw3om7BpFbNFSIJp6pprK6AFZALtE9UyIqA6H0Ebmli75H1tiJ4s2mFRKGW/LMV1X5C9ygcYpXYuVWYGey+WlKsO0DVmUA7WPrT+RB3F82fPk33uug/j0m7Z9W0NyTnGJfn61/ALZt+KA+j+3k=
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: 33ac3e5aee9c0f7f
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ItORtWpcUnCys1psKUKmALkxRKWkUIhK9fNu7vGiqIWDC7izc+SY9QobpG2bl6ym6fAK7VkVP3dajvJkFEj5KfzDqCvuqHU2gzbJ3irQ/Iv3AuuThIRMT2yTKLC6qbW/ENDQYcA4UDw46rdjERAiCjwFWVxdzlLh6rH3ZZNXaG25bhN4z7+HbX60vMA04uSOreqWNNcFMLrzh9kAQFFrtOZgDtZKs979q5B+K2ac503Hih6iR9t4N7Js+nfto1+kcwLHnEr3SVDcdZOJHvo2DBf4HCQy46R5ZHTudfzyLsNPfLGQ73RmVwiAzU3kvyJEdgGIWnV+aQjvXzn/LSDgvA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=0l2iLTh1w+3tqfm+dfdNDd84vd/fBqCZF7spkLjYXao=;
 b=TQxZ75Rdu2fyS3huK0mtDxBbO5sRqzRvQSz4AY2EYiOpo9IwqUpWbB7TcUv0I+oJ6+CKA+2WtfWgacieQEH/V8bUDm5OYavJJ9loQp6sADN5cbgBMX0in3sZ+Gh4hx8Y+RFfl22Ti91g478B6K+xA6LrYkeOUVYZZgBVrEjymCzF8lXlCR/8SykhmLdWFEy/5QMEmKduDU0xqF1M4pjNlQrMpfSJHe5/Q5toj4c69dGA13NuWnoY1zQ9svDXMkP/iY02yRkzPk+HCHsn7avKka86IQPQ+j5G0BU8OjTFYpr14k+NJIjuOctlzZbQvMc7pjoRTOguxc7lf2n5Pp4AVA==
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=0l2iLTh1w+3tqfm+dfdNDd84vd/fBqCZF7spkLjYXao=;
 b=ygRKnhJNGuHgj8XTmbPGH3MKWrw3om7BpFbNFSIJp6pprK6AFZALtE9UyIqA6H0Ebmli75H1tiJ4s2mFRKGW/LMV1X5C9ygcYpXYuVWYGey+WlKsO0DVmUA7WPrT+RB3F82fPk33uug/j0m7Z9W0NyTnGJfn61/ALZt+KA+j+3k=
From: Luca Fancellu <Luca.Fancellu@arm.com>
To: Bertrand Marquis <Bertrand.Marquis@arm.com>
CC: Julien Grall <julien@xen.org>, Michal Orzel <michal.orzel@amd.com>,
	"leo.yan@linaro.org" <leo.yan@linaro.org>, Xen-devel
	<xen-devel@lists.xenproject.org>, Stefano Stabellini
	<sstabellini@kernel.org>, Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Alexey Klimov <alexey.klimov@linaro.org>, Rahul Singh <Rahul.Singh@arm.com>
Subject: Re: [PATCH v4 2/2] xen/arm: Enlarge identity map space to 10TB
Thread-Topic: [PATCH v4 2/2] xen/arm: Enlarge identity map space to 10TB
Thread-Index: AQHaADhLetLGz4GvX0qAhZnpE9HtkrBMcc4AgAADlIA=
Date: Mon, 16 Oct 2023 14:13:30 +0000
Message-ID: <4B2BD200-5D3E-49D5-BF13-65B769AD4B90@arm.com>
References: <20231013122658.1270506-1-leo.yan@linaro.org>
 <20231013122658.1270506-3-leo.yan@linaro.org>
 <169101f8-0475-45b1-b2c2-60dadd88d3f0@amd.com>
 <5a5e960b-e6fd-4617-b33a-10cf07f5bb52@xen.org>
 <8BCB97B4-CBDD-43D9-B0F8-7F637B8BE559@arm.com>
In-Reply-To: <8BCB97B4-CBDD-43D9-B0F8-7F637B8BE559@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.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_|AM9PR08MB6036:EE_|AM7EUR03FT007:EE_|GV1PR08MB10456:EE_
X-MS-Office365-Filtering-Correlation-Id: 00d900f8-dc7f-4a01-2038-08dbce521c7d
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:
 3NSVavmVypJWOAQ1zL3Cy12VR2t9fl3lABYrGa9wjNf2RymVsM04POpJpYLQwAbv3eZNeFPiDAnZMUW6AAKkp7pVnpRqx/gXtYm1LcQ5Rmn5SS5JDQPRyWl4etVxnFSIxF8u1BLeRf5g485jTshZBdkem666trK5CzxxUChyvtJosM/fHZuImk1MZt/+dzWjGHMRBNo7vOaYdK6z7pV//yAzQz97pKfDFYO4caV9dz/pFQJWfimRB4LbOL+Rx0eEu1JPXdFjad3ubuL0VKMKFSqH/nCtlC8aAVhyc39/wP7XdSUllRoUr0n4v4dTK+vFydZYRpZ6NfPb/AgfelluArsKLOntMvyanSKNyynyP+h259DpamFxleuJ56vBApRUSz5sAW7dPBlZ0YzWWEd7PNnWLRiUIo9Bm2TZiXEcu4iNsnjNNc52dBsRutSMwwPx/MOqE42q739HXFSGomNVgjuc1I2qrM5KUhQ/6ET8Vbk3t8FQgZtHIU3nIUH6i8EbOW4Qhgirr+b+63bH8f8W/D5h2Vt0+GCGtGNKfE+TErpLxEsS6zgQZfBse6eqxFo7JWGNtk5JItaKoaMNlqugEIPnC1bbpno/U83aI6zSL7C3244QZ1cfNrPmjhvxA4K59/AE5aupruYBLAE8lLefQi3JJPpcN7iQq08rbxmwMhU=
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)(396003)(136003)(39860400002)(346002)(230922051799003)(451199024)(186009)(1800799009)(64100799003)(26005)(2616005)(38070700005)(8676002)(8936002)(6862004)(4326008)(71200400001)(5660300002)(38100700002)(33656002)(83380400001)(122000001)(41300700001)(478600001)(86362001)(6486002)(2906002)(316002)(6636002)(6506007)(6512007)(53546011)(66946007)(36756003)(66556008)(66476007)(66446008)(54906003)(64756008)(91956017)(76116006)(37006003)(147533002)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <12128A192FEBF34F8AF3FAF8C025CE07@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR08MB6036
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:
 AM7EUR03FT007.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	53d7ca0e-6eb3-4087-4543-08dbce5212cd
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	QA34en3oZX1XItOR1046IViSWzUkYO+dwGJxnDVOXDklvkY/MeKV2I356o91s5xQE7qMQIDEtWeIeuBZGewqxSoP9Lob83W4iRoLCgh3hFyBRvK3i1ZwzbLRZsMqROol7eip/MRAi6B0G4I2oFhEAp2oV+Udr9oEuDvVMYjv3fG3IX2XKq15zTq6sOCDXZ8/1YL71kQWyz1lOAzkLk3m9HJExt/vb3DAohNxZkuWDbZYAWbDqoI8whzUMN4xALglJowBc+FwLK1/hfJwkc95yr/ozNikCIfc3v+1UPEDFMvOZT/m48U0SJPMQiHnTS2fhMKGpSSpu7Z/1wE/7CaynNCAiX8WDo5DDWkTOjyHVueTJ8RMxhPG7zJIDr4Ujn8cCsjsISJC5+Ot2XU+50bqPGlDH/UtoCg7hXfLk/OREn3agjn16EhccyAzVbCIKBFslYr/mpA6xTquqBMJ8zA0eXGjAsVwS9fEf/X2/bRYJGc/qW6UR6loypMkePkTm1nit07iRYtWemh6N7yvBXFgtMWmUcjjg3pcgG/+rYeM4L3x64T7c/6cRkt5fE4f8h2KPybO7OnahT0XnLxhUlnoau7ezT+fxhgYIgSYfKqdr3ALdZTFDuUOAa+Xeg5XLuGtNE7x1ZvfEx5EYdWKYtLu5FTjnUeVHOjUvt5NpVIIvpBx2aWNFqC+wmhIT4u+HTqjpr+cxJ8A8JcFXtmU2UbKKOgGwEujLjhzJom9ItWYS+k=
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)(396003)(346002)(230922051799003)(186009)(1800799009)(64100799003)(82310400011)(451199024)(36840700001)(46966006)(6506007)(81166007)(26005)(356005)(2616005)(82740400003)(47076005)(6636002)(37006003)(316002)(70586007)(70206006)(54906003)(53546011)(478600001)(336012)(6486002)(83380400001)(6512007)(36860700001)(8676002)(4326008)(8936002)(6862004)(5660300002)(41300700001)(2906002)(33656002)(40480700001)(36756003)(86362001)(147533002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Oct 2023 14:13:46.3034
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 00d900f8-dc7f-4a01-2038-08dbce521c7d
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:
	AM7EUR03FT007.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV1PR08MB10456

DQoNCj4gT24gMTYgT2N0IDIwMjMsIGF0IDE1OjAwLCBCZXJ0cmFuZCBNYXJxdWlzIDxCZXJ0cmFu
ZC5NYXJxdWlzQGFybS5jb20+IHdyb3RlOg0KPiANCj4gSGkNCj4gDQo+ICtMdWNhIGFuZCBSYWh1
bA0KPiANCj4+IE9uIDE2IE9jdCAyMDIzLCBhdCAxNTo1NCwgSnVsaWVuIEdyYWxsIDxqdWxpZW5A
eGVuLm9yZz4gd3JvdGU6DQo+PiANCj4+IA0KPj4gDQo+PiBPbiAxNi8xMC8yMDIzIDA5OjQ0LCBN
aWNoYWwgT3J6ZWwgd3JvdGU6DQo+Pj4gSGksDQo+PiANCj4+IEhpLA0KPj4gDQo+Pj4gT24gMTMv
MTAvMjAyMyAxNDoyNiwgTGVvIFlhbiB3cm90ZToNCj4+Pj4gDQo+Pj4+IA0KPj4+PiBPbiBBRExp
bmsgQVZBIHBsYXRmb3JtIChBbXBlcmUgQWx0cmEgU29DIHdpdGggMzIgQXJtIE5lb3ZlcnNlIE4x
IGNvcmVzKSwNCj4+Pj4gdGhlIHBoeXNpY2FsIG1lbW9yeSByZWdpb25zIGFyZToNCj4+Pj4gDQo+
Pj4+ICBEUkFNIG1lbW9yeSByZWdpb25zOg0KPj4+PiAgICBOb2RlWzBdIFJlZ2lvblswXTogMHgw
MDAwODAwMDAwMDAgLSAweDAwMDBmZmZmZmZmZg0KPj4+PiAgICBOb2RlWzBdIFJlZ2lvblsxXTog
MHgwODAwMDAwMDAwMDAgLSAweDA4MDA3ZmZmZmZmZg0KPj4+PiAgICBOb2RlWzBdIFJlZ2lvblsy
XTogMHgwODAxMDAwMDAwMDAgLSAweDA4MDdmZmZmZmZmZg0KPj4+PiANCj4+Pj4gVGhlIFVFRkkg
bG9hZHMgWGVuIGh5cGVydmlzb3IgYW5kIERUQiBpbnRvIHRoZSBoaWdoIG1lbW9yeSwgdGhlIGtl
cm5lbA0KPj4+PiBhbmQgcmFtZGlzayBpbWFnZXMgYXJlIGxvYWRlZCBpbnRvIHRoZSBsb3cgbWVt
b3J5IHNwYWNlOg0KPj4+PiANCj4+Pj4gIChYRU4pIE1PRFVMRVswXTogMDAwMDA4MDdmNmRmMDAw
MCAtIDAwMDAwODA3ZjZmM2UwMDAgWGVuDQo+Pj4+ICAoWEVOKSBNT0RVTEVbMV06IDAwMDAwODA3
ZjgwNTQwMDAgLSAwMDAwMDgwN2Y4MDU2MDAwIERldmljZSBUcmVlDQo+Pj4+ICAoWEVOKSBNT0RV
TEVbMl06IDAwMDAwMDAwZmE4MzQwMDAgLSAwMDAwMDAwMGZjNWRlMWQ1IFJhbWRpc2sNCj4+Pj4g
IChYRU4pIE1PRFVMRVszXTogMDAwMDAwMDBmYzVkZjAwMCAtIDAwMDAwMDAwZmZiM2Y4MTAgS2Vy
bmVsDQo+Pj4+IA0KPj4+PiBJbiB0aGlzIGNhc2UsIHRoZSBYZW4gYmluYXJ5IGlzIGxvYWRlZCBh
Ym92ZSA4VEIsIHdoaWNoIGV4Y2VlZHMgdGhlDQo+Pj4+IG1heGltdW0gc3VwcG9ydGVkIGlkZW50
aXR5IG1hcCBzcGFjZSBvZiAyVEIgaW4gWGVuLiBDb25zZXF1ZW50bHksIHRoZQ0KPj4+PiBzeXN0
ZW0gZmFpbHMgdG8gYm9vdC4NCj4+Pj4gDQo+Pj4+IFRoaXMgcGF0Y2ggZW5sYXJnZXMgaWRlbnRp
dHkgbWFwIHNwYWNlIHRvIDEwVEIsIGFsbG93aW5nIG1vZHVsZSBsb2FkaW5nDQo+Pj4+IHdpdGhp
biB0aGUgcmFuZ2Ugb2YgWzB4MCAuLiAweDAwMDAwOWZmX2ZmZmZfZmZmZl0uDQo+Pj4+IA0KPj4+
PiBGaXhlczogMWM3OGQ3NmI2NyAoInhlbi9hcm02NDogbW06IEludHJvZHVjZSBoZWxwZXJzIHRv
IHByZXBhcmUvZW5hYmxlL2Rpc2FibGUiKQ0KPj4+IEkgZG9uJ3QgdGhpbmsgYSBmaXhlcyB0YWcg
YXBwbGllcyBoZXJlIGdpdmVuIHRoYXQgMlRCIHdhcyBqdXN0IGEgbnVtYmVyIHdlIGJlbGlldmVk
IGlzIGVub3VnaA0KPj4+IGFuZCBhbGwgb2YgdGhpcyBpcyBwbGF0Zm9ybSBkZXBlbmRlbnQuDQo+
Pj4gVGhpcyBjYW4gYmUgZHJvcHBlZCBvbiBjb21taXQgaWYgY29tbWl0dGVyIGFncmVlcw0KPj4g
WGVuIG1heSBoYXZlIGJvb3RlZCBvbiB0aGF0IHBsYXRmb3JtIGJlZm9yZSBoYW5kLiBTbyB0aGlz
IHdvdWxkIGJlIGNvbnNpZGVyZWQgYSByZWdyZXNzaW9uIGFuZCB0aGVyZWZvcmUgYSB0YWcgd291
bGQgYmUgd2FycmFudC4NCj4+IA0KPj4gQUZBSUNULCB0aGUgY29tbWl0IGlzIG9ubHkgcHJlc2Vu
dCBvbiB0aGUgdXBjb21pbmcgNC4xOC4gU28gdGhlIHF1ZXN0aW9uIGlzIHdoZXRoZXIgWGVuIDQu
MTcgYm9vdGVkIG91dC1vZi10aGUtYm94IG9uIEFETGluaz8gSWYgdGhlIGFuc3dlciBpcyB5ZXMs
IHRoZW4gd2UgbmVlZCB0byBhZGQgYSBGaXhlcyB0YWcuIEJ1dCB0aGUgY29ycmVjdCBvbmUgd291
bGQgYmUNCj4+IA0KPiANCj4gQFJhaHVsIG9yIEx1Y2E6IGNvdWxkIHlvdSBnaXZlIGFuIGFuc3dl
ciBoZXJlID8NCj4gSSBrbm93IHlvdSB1c2VkIFhlbiBvbiBhbiBBVkEgcGxhdGZvcm0gYnV0IHdh
cyBpdCBib290aW5nIG91dCBvZiB0aGUgYm94ID8NCg0KSSBjYW7igJl0IHNheSBmb3IgWGVuIDQu
MTcsIGJ1dCBvdXIgbmlnaHRseSBqb2IgaGFzIHJ1biBzdWNjZXNzZnVsbHkgb24gQVZBIGZvciB0
aGUgY29tbWl0IDczMDQwNmFiODEwOTQxMTVkOWZiNWNhMDBiYThkNTNjZWMxMjc5YjMNCihkb2Nz
L21pc3JhOiBhZGQgZGV2aWF0aW9ucy5yc3QgdG8gZG9jdW1lbnQgYWRkaXRpb25hbCBkZXZpYXRp
b25zLikNCg0KV2UgYXJlIG5vdCBhcHBseWluZyBhbnkgcGF0Y2ggZm9yIGl0IHRvIHJ1biBvbiBB
VkEuDQoNCj4gDQo+PiDvu78xYzc4ZDc2YjY3ZTEgKCJ4ZW4vYXJtNjQ6IG1tOiBJbnRyb2R1Y2Ug
aGVscGVycyB0byBwcmVwYXJlL2VuYWJsZS9kaXNhYmxlIHRoZSBpZGVudGl0eSBtYXBwaW5nIiku
DQo+PiANCj4+IFdlIHdvdWxkIGFsc28gbmVlZCB0byBjb25zaWRlciBpdCBhcyBhIGNhbmRpZGF0
ZSBmb3IgWGVuIDQuMTggYmVjYXVzZSB3ZSB3b3VsZCByZWdyZXNzIGJvb3Qgb24gQURMaW5rLg0K
PiANCj4gQWNrDQo+IA0KPiBDaGVlcnMNCj4gQmVydHJhbmQNCj4gDQo+PiANCj4+IENoZWVycywN
Cj4+IA0KPj4gLS0NCj4+IEp1bGllbiBHcmFsbA0KPiANCj4gDQoNCg==


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 14:24:48 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 14:24:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617655.960455 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsOWH-0002wE-7z; Mon, 16 Oct 2023 14:24:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617655.960455; Mon, 16 Oct 2023 14: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 1qsOWH-0002w7-57; Mon, 16 Oct 2023 14:24:33 +0000
Received: by outflank-mailman (input) for mailman id 617655;
 Mon, 16 Oct 2023 14:24: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=fs62=F6=linaro.org=alexey.klimov@srs-se1.protection.inumbo.net>)
 id 1qsOWF-0002w1-Bv
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 14:24:31 +0000
Received: from mail-vs1-xe2b.google.com (mail-vs1-xe2b.google.com
 [2607:f8b0:4864:20::e2b])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id b70c3e1f-6c2f-11ee-9b0e-b553b5be7939;
 Mon, 16 Oct 2023 16:24:29 +0200 (CEST)
Received: by mail-vs1-xe2b.google.com with SMTP id
 ada2fe7eead31-457c134a702so1295092137.1
 for <xen-devel@lists.xenproject.org>; Mon, 16 Oct 2023 07:24: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: b70c3e1f-6c2f-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=linaro.org; s=google; t=1697466268; x=1698071068; 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=oD491WOQgWegw/l7BXpsbCTQYlfGGf4P/3kLemTggW8=;
        b=ock922/6gOwm9LdQyTuhrsKUJOLt9ASONif3DpBSjUwXWJecr5ENxtbbpLzap29vzn
         8O+lpePBAWX+edh8zO6s0eyPL00zd/sKrRO3QTNWTj3C8Lgo+INK4PK+tGyLfMqQWY+N
         Np2ZCmJsBbnMgZNbSEY2YROxNNnS7TKkI4CrmXBVJBk0FPsnHzDAQRSqXKAIzrowBjRV
         +ZMlDOeVFOY0+0iVEL5r3OkAfEpUeVhkPkD87N23uBT2jvdzwCj1a8CNhPo6/+mVy1mI
         jZM60Y6WUMJMF7hqBOjKhxUfZt/+e5hSoFEXHkEpi5j3LlRZ0ocCnoYzOvjPJmvFypCo
         TkmQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697466268; x=1698071068;
        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=oD491WOQgWegw/l7BXpsbCTQYlfGGf4P/3kLemTggW8=;
        b=tx1qnRDSaH9CCV4wMxBMn1ZKZ+GhpgqkXu/sUVaD01dyNN4rpaCmBztpO00cUe1/CC
         Y0B2kr8U3QxgX69Nb+ZB2+AIryMUtyzcIzbMk7hGpvCqk5QOmkyQEo/IKMe5nTwsZRJU
         54ko32/WkDC+G+8dQNHYHIWwF+n8uEa52KuHCqy21AAyP8Vr1+fHd0qWvxauo3AIzgRe
         MpU8MapVlfTNjVBQIT91yB0rZx2OiZgCT/72BqhlZoS46zGsSv6UWU/8H5OZddHAa1Kl
         06escZJhRJkpYJslFeEBOMUXkJGcsS6+SjdR1CZbBhk/YdSdqlJ9mjM/6a0EaH+wFqfD
         lIpw==
X-Gm-Message-State: AOJu0Yx36kwJK/RguTM5QN2rVCYD+Y72we1GnysUUHPKczY3OZnssSJa
	hwjsTvAXnyQKG11s4PSHE+W93t7rzIJ4ElbKkRE4MQ==
X-Google-Smtp-Source: AGHT+IG1bAn72PQ9H/hpooSIf2ltFW9+GdY3ObW5mkf6pju2WuWxMr1xT4w1/+V2vNCjChX4DiOzzMENlqjVW0PKI+c=
X-Received: by 2002:a67:eb98:0:b0:452:99e0:54e3 with SMTP id
 e24-20020a67eb98000000b0045299e054e3mr26661156vso.2.1697466267401; Mon, 16
 Oct 2023 07:24:27 -0700 (PDT)
MIME-Version: 1.0
References: <20231013122658.1270506-1-leo.yan@linaro.org> <20231013122658.1270506-3-leo.yan@linaro.org>
 <169101f8-0475-45b1-b2c2-60dadd88d3f0@amd.com> <5a5e960b-e6fd-4617-b33a-10cf07f5bb52@xen.org>
 <8BCB97B4-CBDD-43D9-B0F8-7F637B8BE559@arm.com> <4B2BD200-5D3E-49D5-BF13-65B769AD4B90@arm.com>
In-Reply-To: <4B2BD200-5D3E-49D5-BF13-65B769AD4B90@arm.com>
From: Alexey Klimov <alexey.klimov@linaro.org>
Date: Mon, 16 Oct 2023 15:24:16 +0100
Message-ID: <CANgGJDqHu0CB=zzZqda18giLYDkL3My+gT592GLO-b9HsF2A4g@mail.gmail.com>
Subject: Re: [PATCH v4 2/2] xen/arm: Enlarge identity map space to 10TB
To: Luca Fancellu <Luca.Fancellu@arm.com>
Cc: Bertrand Marquis <Bertrand.Marquis@arm.com>, Julien Grall <julien@xen.org>, 
	Michal Orzel <michal.orzel@amd.com>, "leo.yan@linaro.org" <leo.yan@linaro.org>, 
	Xen-devel <xen-devel@lists.xenproject.org>, 
	Stefano Stabellini <sstabellini@kernel.org>, Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, 
	Rahul Singh <Rahul.Singh@arm.com>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Mon, 16 Oct 2023 at 15:13, Luca Fancellu <Luca.Fancellu@arm.com> wrote:
>
>
>
> > On 16 Oct 2023, at 15:00, Bertrand Marquis <Bertrand.Marquis@arm.com> w=
rote:
> >
> > Hi
> >
> > +Luca and Rahul
> >
> >> On 16 Oct 2023, at 15:54, Julien Grall <julien@xen.org> wrote:
> >>
> >>
> >>
> >> On 16/10/2023 09:44, Michal Orzel wrote:
> >>> Hi,
> >>
> >> Hi,
> >>
> >>> On 13/10/2023 14:26, Leo Yan wrote:
> >>>>
> >>>>
> >>>> On ADLink AVA platform (Ampere Altra SoC with 32 Arm Neoverse N1 cor=
es),
> >>>> 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 kern=
el
> >>>> 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, th=
e
> >>>> system fails to boot.
> >>>>
> >>>> This patch enlarges identity map space to 10TB, allowing module load=
ing
> >>>> within the range of [0x0 .. 0x000009ff_ffff_ffff].
> >>>>
> >>>> Fixes: 1c78d76b67 ("xen/arm64: mm: Introduce helpers to prepare/enab=
le/disable")
> >>> I don't think a fixes tag applies here given that 2TB was just a numb=
er we believed is enough
> >>> and all of this is platform dependent.
> >>> This can be dropped on commit if committer agrees
> >> Xen may have booted on that platform before hand. So this would be con=
sidered a regression and therefore a tag would be warrant.
> >>
> >> AFAICT, the commit is only present on the upcoming 4.18. So the questi=
on is whether Xen 4.17 booted out-of-the-box on ADLink? If the answer is ye=
s, then we need to add a Fixes tag. But the correct one would be
> >>
> >
> > @Rahul or Luca: could you give an answer here ?
> > I know you used Xen on an AVA platform but was it booting out of the bo=
x ?
>
> I can=E2=80=99t say for Xen 4.17, but our nightly job has run successfull=
y on AVA for the commit 730406ab81094115d9fb5ca00ba8d53cec1279b3
> (docs/misra: add deviations.rst to document additional deviations.)
>
> We are not applying any patch for it to run on AVA.

Most likely it is because your UEFI/BIOS firmware is 2.x, for instance
2.04.100.07.
This fix if for AVA machine with older UEFI firmware 1.07.300.03.

Best regards,
Alexey


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 14:25:18 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 14:25:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617658.960464 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsOX0-0003T1-GO; Mon, 16 Oct 2023 14:25:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617658.960464; Mon, 16 Oct 2023 14:25: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 1qsOX0-0003Su-Dm; Mon, 16 Oct 2023 14:25:18 +0000
Received: by outflank-mailman (input) for mailman id 617658;
 Mon, 16 Oct 2023 14:25: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=BBjo=F6=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qsOWz-0003Is-4m
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 14:25:17 +0000
Received: from EUR03-AM7-obe.outbound.protection.outlook.com
 (mail-am7eur03on20602.outbound.protection.outlook.com
 [2a01:111:f400:7eaf::602])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id d39a5854-6c2f-11ee-98d4-6d05b1d4d9a1;
 Mon, 16 Oct 2023 16:25:16 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS5PR04MB9922.eurprd04.prod.outlook.com (2603:10a6:20b:67c::8)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.35; Mon, 16 Oct
 2023 14:25:14 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%6]) with mapi id 15.20.6886.034; Mon, 16 Oct 2023
 14:25: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: d39a5854-6c2f-11ee-98d4-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=AYDE9qe5VzT2zI0uUS0x33S5PcI/GSAfO+J1QSTtou9zLVJS37mxJVxs7jOeFQm6T5xVJpkjfmkMoAnvOQLGenFZodnc05kt2H5oWMZawRujhlgEcSeK5DFHgcfQn5tX9FYuXvENaCEIKN2X1Jen0qyHGa4S9CATMRjucYZkbzW9j3PY9t3C/rkkMrK1nj/Gxj9f6iKBkLi0lUrzSDtBLPsWyPm8DijUk1CgPI5MXAC/xpKynRv9OZk0IwYZkX4+fk7iIAQsJfBQG8e5qj0TncwKewXYCF+A2hw8uaXj3wKl94VMiqiX0aEPdBl7WD/+/LksPzm5PYLfAdtQMjwYyQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=8a+rp6rS5hERbpA11vmd4FLXufR8wnF7R567w+cUtPI=;
 b=Z5mSfc97J04rEQdSAnsV8NqOaqV0JswBB/AS9E1ZMHGkegvoDaDLz3nG7A50VsDofaPIwpE+hIT/ya2SS0TuR4JNKUS3g7VgmnZ8rOUfwUWhEAO+8XWqwCSJUg2rx5+oRPz6AOX0SrA4FswvOMSftF6p9GxF3nHpp8/dTbNTXlgm72oVYkP8/8o1GcNhx6vFQJpxRJ5+HV/MQGFenrLoc45r8AA/yTyrWh7/qrLKUcDbD2lbkXbVg6qkrSVUxabh+/BiDLtw4iQJYjPySqVlKjUxVVcZWkFRZq5AUvAMzjol2qrkqRWQsHfJDkscwO1JnT2j8YbSXOJBnvVMBRvbJQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=8a+rp6rS5hERbpA11vmd4FLXufR8wnF7R567w+cUtPI=;
 b=Djh9NxAlu86wnfbEV/TcqcrIk8nqJHunFSVFRoRbJ5FGGbiB1OrnOxgqS/dHbBsZSN7b5BDI+J/3/ABMwjxhho3cvPvUtIGdzfAyTgQcG/diaWQLvymTylzx3NyBdqzSQhdeURG+WAbezqUSXbxidbiKYHaLzYdCxzHReB8BhJoTBMSgD20Gf3+y94y5uyJCInlxyvoItku70Qr1tRpRyGLrBbmYkqNMaE35jZc/Nd1hYZldx3WLyKIyrbd7uRKvb5JAED1/6BKG4JjOsgx449272dNptE938i9vVmLIc0CM4hzR0UgmBbFuAgjQirNzLXRru1CoEEkSC+Bvrjzccw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <4a05f547-1592-070d-bf1f-2d51c0b57971@suse.com>
Date: Mon, 16 Oct 2023 16:25: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 for-4.19] x86/cpu-policy: Adjust
 CPUID_MAX_SERIALISED_LEAVES to placate MISRA
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>, Xen-devel <xen-devel@lists.xenproject.org>
References: <20231010095748.1205365-1-andrew.cooper3@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20231010095748.1205365-1-andrew.cooper3@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0019.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:14::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_|AS5PR04MB9922:EE_
X-MS-Office365-Filtering-Correlation-Id: 8f6d0242-432a-4e1b-13ef-08dbce53b681
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	jkhuZobRa8VfrG7GAC1Dd0+zBzVU62DCMfEsHXMtpHh9ENm1SM9WAw4nSuTxboPKSY2sI/kDZxX6X6rKHBgFJYnccTONnLZbAUWgL+EYkk9NpmnvhWeuACYplOYzNaxlHpYsK+22RP0B8vuF4XyK2QXaOX5wzVWOLWtzmxkH9LMTWBcrRLjJEDUuFXJ2KMDfhVLvFpbgHq530Rg9XmmYYworMqpJrQ2eZQZ0v9AduIaW8bVqXgIkQYaiaYhmkVvUBE4z32TaJHbA7d5Q0rg5hlXzCu4HDBmqHLFJltlLXJtT3CoOD4rggz64CzRJKfTDsH6GKTuxSgSNOcPFR9srvUJLD0w+O7vweldtytWcadwssoWvwV3LWfPA7SaVsKZQRmmomYwiH02zPZ33nBH4hjaRVSx6cOZf9sfHpO1yzB4KWWjlu0QHKHdY04JBSrFwzqzbgt9rCw6ZBXSOzOXbn7WDyU5hv77SYqFGADtzJRsGZSOs18jHAac8+arL49mtoHChlr2HrMgX23SmtduYADjXB2ZSCORva6fsFcoqeQhNweRILyiqSg8zjMEOOfQ/TBayX9czCuNEXSbSbAm40T+S+pVBshYLKccCWNyIiZK/spH2foHEb4U7mOnJGD/p5qzjrggTefoQaV1qdnIdNapRknFyPChaOJf0uw0+dkLB4zem+/lDQRlaMmuHQ+Af
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)(186009)(1800799009)(64100799003)(451199024)(41300700001)(6486002)(478600001)(66476007)(66556008)(66946007)(54906003)(6916009)(6506007)(26005)(53546011)(316002)(6512007)(2616005)(8936002)(4326008)(8676002)(4744005)(2906002)(5660300002)(36756003)(86362001)(31696002)(83380400001)(38100700002)(31686004)(43740500002)(45980500001)(309714004);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?ZndaaGdNL0RlSGZJeVNFZEl4L202dDNiV05pdU1XVERxQVAwTHhWRzc5TjR1?=
 =?utf-8?B?a1FCTTltTzIrRVFmamdLWVZtSmNka1JxcC9WUTZCU3dHT004RUY1NWFCdGta?=
 =?utf-8?B?YWdaOEtMRVJXUzVPdElpZEJ4OHRYYW1CdHIwZW50NVF3T3JQTWRBWjg4RnlK?=
 =?utf-8?B?bTlSTS9sazJ6R2tWZU9YaWZNazhqWGtySnNaaE1rcDNYZDdFT3doSUpwSmdp?=
 =?utf-8?B?VzN2aVFEQjQwYXRFdERaY2g0L0hkRlQ0TGFJTk1UVzBHVTlRbHdzNEZ5akhq?=
 =?utf-8?B?RU5vblZqYlFzMDZDMmY1aFFFZ2JJanl1NVZ4aHNFcFBsclhsbW4xbGJRcG9I?=
 =?utf-8?B?dmhSMnJmVWs2RmNWaXIyTS9KdnJuYmVuajhxT2NleTd2WUQwR2ZzWDdkblZM?=
 =?utf-8?B?RUlwc2VwdlJiR0Q4NGVTeUQvTzNSdmpJbCtuUnl3eDByQUpEeDJ6b1Vya2dl?=
 =?utf-8?B?SFhjZ0F1RmdNbStlSmIzbmZrV2E1MkplcEtiTnpVSzZBQmVkKzhmYlZKUTFX?=
 =?utf-8?B?VVRMd3FLOVNvNmdrM29XeFlRTlNzMVQzM2k5L2pVcVRWdWpEZ1NIbGJpV2lI?=
 =?utf-8?B?clp3MFJ6blFyb3hBWEllY280cWtJUGxFV0dieGJCL2Q4MWhzeUc2ZVFzcUdx?=
 =?utf-8?B?ZEtLRVgrSEZrdkZmVE5LOXhNZlhXSkxZQUY1MkNwaDVaTHEwa3NSdmJBK2Yv?=
 =?utf-8?B?MFV1dU5GVFNkaFlQQXVOYzBRdCtoODMxK2xPRXZ6WlNGN0lJZ3YzY0tGYkFy?=
 =?utf-8?B?R2xVdXpzcWhZN1BWZmtua0MwQzBLRGh3UzFaanFiS3JMcnlybnJFN0VpVktJ?=
 =?utf-8?B?QVBZTkhJM0p6d2FXaVhTOWJ1NTRGcEJCdXFUMTJUeFFPempDM0VrQWJPNjVL?=
 =?utf-8?B?U0pMM2tDT2F2NURYT1MrZkNqczhkcHFzNXF1bWdOSEFlanRtVDM5MWVKQTVR?=
 =?utf-8?B?VTFJak9wWEFYTkxOOWJuY0JNRE1DUm5JUXJZTWhiZlZzZ1VIWHllNFRuSVdZ?=
 =?utf-8?B?cDhhbkMwa1lFcHFYSnF1dkFEc3ZLNUpxRUFJS3llYmZyZ29CWFhvNjlpemJC?=
 =?utf-8?B?SUhyRGlFQjhVQTNmVDZtbGY1NkQwd2FkbXE4ajNKTUYwZ3grUTAvbnFRam5N?=
 =?utf-8?B?N2hnOVNqeXFHVU1BVWN6c25WTVVsb0tTa29YNG1Ra0MrN0RBV0lTS0t6M3hh?=
 =?utf-8?B?VjF6MEVrdDlGbDU2WGZYU0lBUEhVVWFXSUk5U2pQYkZBYWF1VmFmNXZ6ang5?=
 =?utf-8?B?YWYwaERoVGJ1UlhMeHU1a2NVVFRUTDlLVThLVFA1YTEwV1ZPSE5Wck00bHlQ?=
 =?utf-8?B?RGV6QmVBNitKL25UN3Mrais3Q1lWclB2dFk3REtabms2WDBsZEJTYUlRcm9w?=
 =?utf-8?B?cHNKbHlWVEFKS0NWM2xtOXVoSE1WMm9pbWU1MjBQcDRUc3N1bHU0UTRSOU5t?=
 =?utf-8?B?TlVJL1pKR1JaaVZ5VzhNUTc1cDhlTVhMT3FWaVFnNUdpa0JHNGdiUHdHNnk3?=
 =?utf-8?B?Y3ZXaDFLeitvMVdtVlFldmE4Uy9td2dvSC9OQmNTK2ttanZvQXllbmNYZUlw?=
 =?utf-8?B?Wmp0OVZvSEtuZ0pwbzVhRVJpKzFRYUNlZ3pScjdicnQ5Nld2bkxrbXgzb1U0?=
 =?utf-8?B?QVlFdUF4aWEzbndHQ2JyS3ltYWFzQWE5UHI4cCtxWXFNMTdnVk1Lb3V0Ny91?=
 =?utf-8?B?NE9NaHR1bGZoOFg2R3h0dWozMkt3dGI1U2htK1NoQUhQVm1HVit3V0lLVTlP?=
 =?utf-8?B?a1U0aGM1ZzNSQUh1VHk4UTJKcDZ0N1U4WXJZdDRjRDdNczBxRDJINDNRelM5?=
 =?utf-8?B?UEZlTEpVdkVnWVJLWE1qNG15cjFqS2hLNFB4ekVzTzRwMHprT25YQU5QVEFF?=
 =?utf-8?B?RE1ocnR1OEoweHNXRFdyc2U3YmVwS3NiUTQ0Q3hpUGhidDhUYkR4eDc2Uyth?=
 =?utf-8?B?ZWpFK3RvRjZSUmR3NGRMVGhwZ3FPRmk0ZnNkMWdWOEJKRTNtUi9UaThvcndy?=
 =?utf-8?B?RG5mUjdGcHRKTnIzeExoZndWWk4vajRvcFBJVHU5ZVhjUXlRRi9hbEhUTUhC?=
 =?utf-8?B?V0E3S29hbkttNzhJWERlc1NxbkJnU0hKcCtwODB4bGozcWJjSU1aRDU2YjJX?=
 =?utf-8?Q?OgEUMJTlsTwVCu1Mmj3H1SWd4?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 8f6d0242-432a-4e1b-13ef-08dbce53b681
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Oct 2023 14:25:14.3926
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: tFpLxRhXboJTj3FN2GHyQQzqU6uC6kcVJf0I/Lg99JvUbZINJq3xYk+MRpWgKIWJIgP4tIMpYh2ieZElEA6kDA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS5PR04MB9922

On 10.10.2023 11:57, Andrew Cooper wrote:
> MISRA doesn't like !!CONST being used in place of a 1 (Rule 10.1).  Update the
> expression to just be a plain 1, which still matches the description.
> 
> No functional change.
> 
> Reported-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>

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




From xen-devel-bounces@lists.xenproject.org Mon Oct 16 14:28:31 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 14:28:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617662.960475 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsOa5-00059t-WD; Mon, 16 Oct 2023 14:28:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617662.960475; Mon, 16 Oct 2023 14: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 1qsOa5-00059m-TE; Mon, 16 Oct 2023 14:28:29 +0000
Received: by outflank-mailman (input) for mailman id 617662;
 Mon, 16 Oct 2023 14:28: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=fsKw=F6=arm.com=Luca.Fancellu@srs-se1.protection.inumbo.net>)
 id 1qsOa4-00059g-O7
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 14:28:28 +0000
Received: from EUR02-DB5-obe.outbound.protection.outlook.com
 (mail-db5eur02on20600.outbound.protection.outlook.com
 [2a01:111:f400:fe12::600])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 44aba4bd-6c30-11ee-9b0e-b553b5be7939;
 Mon, 16 Oct 2023 16:28:26 +0200 (CEST)
Received: from AS9PR05CA0074.eurprd05.prod.outlook.com (2603:10a6:20b:499::28)
 by DU0PR08MB9509.eurprd08.prod.outlook.com (2603:10a6:10:44f::6) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.34; Mon, 16 Oct
 2023 14:28:24 +0000
Received: from AM2PEPF0001C710.eurprd05.prod.outlook.com
 (2603:10a6:20b:499:cafe::d) by AS9PR05CA0074.outlook.office365.com
 (2603:10a6:20b:499::28) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.34 via Frontend
 Transport; Mon, 16 Oct 2023 14:28:23 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM2PEPF0001C710.mail.protection.outlook.com (10.167.16.180) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6838.22 via Frontend Transport; Mon, 16 Oct 2023 14:28:22 +0000
Received: ("Tessian outbound d219f9a4f5c9:v211");
 Mon, 16 Oct 2023 14:28:22 +0000
Received: from a241823e5d2c.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 F2754960-43DD-404E-974E-4442AF540A7C.1; 
 Mon, 16 Oct 2023 14:28:16 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id a241823e5d2c.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Mon, 16 Oct 2023 14:28:16 +0000
Received: from AM6PR08MB3749.eurprd08.prod.outlook.com (2603:10a6:20b:8f::22)
 by DB3PR08MB9011.eurprd08.prod.outlook.com (2603:10a6:10:431::12)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.36; Mon, 16 Oct
 2023 14:28:14 +0000
Received: from AM6PR08MB3749.eurprd08.prod.outlook.com
 ([fe80::501a:489c:410b:338]) by AM6PR08MB3749.eurprd08.prod.outlook.com
 ([fe80::501a:489c:410b:338%7]) with mapi id 15.20.6886.034; Mon, 16 Oct 2023
 14:28: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: 44aba4bd-6c30-11ee-9b0e-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=rtrQLvZpZ5xzU0hZv0SZXceP0Jv8dq5/1Vh2eapkjSA=;
 b=O0IklEHn9eovPkW9+/eukeOIW+EoKt5fEddF8t4Hr7DQLZ/G0F3NvEDoekQH+cYQBguDvLoo5N+9hTkwDey6aRTHh9dP2bLpCsdJPfwDg62AQeLUqI36rA2pkwF9FBxk9ffdWnzHdPY+CMT/xcDGbHUsO/eIFxv50mhZ+Nw+Eg8=
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: 0b0d5164131b7c4e
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=npTtcCn+T9H+cFdBgikkuyaTaiq2+KpIUYLapDwPxXVbqVk/MYAdZd8LknrmuBdKhypnOU9G2J52o+E4gJagHFwDmG4sU1d+E/AHS4khCYcI5R/72fewF8okbqAUYfWf7jsuzKdv3bOb4znrj1MFdUQqB6kLqR7aqPSsc6W7uH3Becg/dDU116u/WamjKXWYb3WBuQYjviw624KUcUUuztQFaa1dKWO6eSgbrbrWdosBniwK7d5s0WtH4vNZZzXchhNJAKJiSzWvlpiM9xKGamK4lRU8tQYh8GpIGYlr4leHGgn/fMtbrRKgaQso+NQKjU8jeNq2RDd4b4WP1lU+BQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=rtrQLvZpZ5xzU0hZv0SZXceP0Jv8dq5/1Vh2eapkjSA=;
 b=D9yGYDrxzeqxYqjJm9PO9MjEGKO9K/P1xnmJ4tPRbolYrpSwv6rSVUCToLOc+tCBJI3Q/kiBmtYwCL07iodqsVJwLGqunE7F1iHckhwPqL6EAFu19oE5w/2zWNcxiWNpMll14t21McIIaKdda0Umv8x5t9Z+YOtwO0ChEGyqZzV9oP9lqSulLgIWU/LlEaOKoMsLqFn6RdXTREboz2lZKwOff+RMTPiGz+aUNzP8+w5if6tE4g48bVY8lFax0F1QRfGPbq3lntCLpOFDR/d7pI0ZReLj/lyT8LthoZUpIHjjKE90RBFHs2DdCNWqwEOFoWZ/z+H7UCO8579Gi5uzgw==
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=rtrQLvZpZ5xzU0hZv0SZXceP0Jv8dq5/1Vh2eapkjSA=;
 b=O0IklEHn9eovPkW9+/eukeOIW+EoKt5fEddF8t4Hr7DQLZ/G0F3NvEDoekQH+cYQBguDvLoo5N+9hTkwDey6aRTHh9dP2bLpCsdJPfwDg62AQeLUqI36rA2pkwF9FBxk9ffdWnzHdPY+CMT/xcDGbHUsO/eIFxv50mhZ+Nw+Eg8=
From: Luca Fancellu <Luca.Fancellu@arm.com>
To: Alexey Klimov <alexey.klimov@linaro.org>
CC: Bertrand Marquis <Bertrand.Marquis@arm.com>, Julien Grall
	<julien@xen.org>, Michal Orzel <michal.orzel@amd.com>, "leo.yan@linaro.org"
	<leo.yan@linaro.org>, Xen-devel <xen-devel@lists.xenproject.org>, Stefano
 Stabellini <sstabellini@kernel.org>, Volodymyr Babchuk
	<Volodymyr_Babchuk@epam.com>, Rahul Singh <Rahul.Singh@arm.com>
Subject: Re: [PATCH v4 2/2] xen/arm: Enlarge identity map space to 10TB
Thread-Topic: [PATCH v4 2/2] xen/arm: Enlarge identity map space to 10TB
Thread-Index: AQHaADhLetLGz4GvX0qAhZnpE9HtkrBMcc4AgAADlICAAAMQAIAAAQ6A
Date: Mon, 16 Oct 2023 14:28:13 +0000
Message-ID: <AAABDB6E-5C71-4393-8E88-8BE34798AE1B@arm.com>
References: <20231013122658.1270506-1-leo.yan@linaro.org>
 <20231013122658.1270506-3-leo.yan@linaro.org>
 <169101f8-0475-45b1-b2c2-60dadd88d3f0@amd.com>
 <5a5e960b-e6fd-4617-b33a-10cf07f5bb52@xen.org>
 <8BCB97B4-CBDD-43D9-B0F8-7F637B8BE559@arm.com>
 <4B2BD200-5D3E-49D5-BF13-65B769AD4B90@arm.com>
 <CANgGJDqHu0CB=zzZqda18giLYDkL3My+gT592GLO-b9HsF2A4g@mail.gmail.com>
In-Reply-To:
 <CANgGJDqHu0CB=zzZqda18giLYDkL3My+gT592GLO-b9HsF2A4g@mail.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.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_|DB3PR08MB9011:EE_|AM2PEPF0001C710:EE_|DU0PR08MB9509:EE_
X-MS-Office365-Filtering-Correlation-Id: 1526f0a7-563e-462b-6673-08dbce5426dc
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:
 HeZB3vR55r1x1072miqWP+VqptcY6LYjbE/7bq//UyNQKZ9DSYbwKUiERGyq1v5Ynyc2Lfc5/ga5S9bGVu6EfCM73bF0QDXUBRTbWAmSxYm4lhRbHWzL6wL855KZDSrmX8SzCK1e41FRJLKhSVF0NcvCq7V+lFsdsMz1jOVl4yu8f8YMprl/PfvreCfPYvlN3IGDD8+lBSAJUsUz33kUvqNDcvuq8n+7abT9XklYIrA6UEb7lt3RFEEsdCvl2stjYDHt3E+Dkec97NGSwA5IAFtRc2j4DVQlGwP/kIE9sfKbQoaX3lMV3xek2ZjgsI56/7+4TgpXI/xZpei+9sBpj7JENeQFzTuKYxavXqNQgbaExaeCjmryO284AJbtYf6s38blDDEm0aqfLyMBQ63GqucDe7WpLNyjK1PH8IDRZyxGoXLDGDArIDP0tfOo8SQC9jrGBu+8zQuZa2sOFX3j7MlG8bMwKkq+AQtZtLmlcUNNVR6c024mddAlLaHTZqVJE/rECakFYBPQB0gmM+lFwEc+TRZ6v9FwsjvhEjeo3cAF7hAERMrttcq1VeAxTQVL6sCrlC5yYajAKCbVqbFDYxeCVNa/EmdaRlyRRzhQJ1nSJhGQe6NxuubpH53w2wRoPKmTnRGBnSr1GEDi299K6GSEsLZBxdJfaw3yUYNfJog=
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)(346002)(366004)(136003)(396003)(39850400004)(230922051799003)(64100799003)(451199024)(186009)(1800799009)(478600001)(6486002)(66946007)(91956017)(76116006)(66556008)(66476007)(66446008)(64756008)(54906003)(71200400001)(6916009)(86362001)(38100700002)(2616005)(6512007)(26005)(6506007)(33656002)(5660300002)(41300700001)(36756003)(122000001)(38070700005)(316002)(8676002)(8936002)(4326008)(2906002)(4744005)(147533002)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <2C13BD100036A641BDDAF9F0AB92AF33@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB3PR08MB9011
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:
 AM2PEPF0001C710.eurprd05.prod.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	1d03d599-2b3d-49fe-388d-08dbce54219a
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	Yuv5nzHOCb4hS5UnYqe4J1tajBMJvi2l3t3PDGn9SYaL4os6k/waUtkRCYU6w9I+ADuypbtg0KAtmwJj4KW3RRvu6cnsobaVHZtkPNK8oXCoL1Mt/EiRcO2cAFKj1FB3q/fmJSJoXC070zepYuwdX31qaDeQTVMt2aaZXqkldoJSIyO46AZYt04apOviV4doHSna5L2Iz/XVHDAC10R008vXyxD7Wd9MGdQIJmGdZfIsKHd7rDzx1NdXupnX6v1+yGPnc8nKaPsuGz7KlAKnWqY4F2OUDZTYHt4t9kKF5kRfK2JF+rGoGoWjVt2GbT5wHum8lXFeRQg0E9/rXDx/h8nNWcj/jd7oOo/c9iYJx5Kydyl2G3FQlB+W+PflYui8OhJvIr9aAqs7IS+MefjJd9jLgUx4WWcDQr1Y1JbAJtK4U/bpCxNHaqmybRjw9BKrscVglCBDGn1th/hRx7r/wch+gdBEFjfs2LJdVx/vVsGJWl5mamq6LMacP7/mnumOBOGRPHDmdvdS+249TWMmmsKjcDZrNsPz2dabOIi6OU3/Z10HY20ftJGNux4x3EsRfxdFlVN+fV3Q2zmtox+vPpZMGamXHyZsSp1FQMj9xl9ZUWqoYxkS4rMAu9XaHWtzlH8SY5fAtRZ4yl0nbHLHHg47pOxDXC3zS5DOrE41zkDYh5DYn76ObJZv9zDEe18UhoWijTcMcJ8V6IhJH2/WzkXLdfjrhP3OtLm4f/Md3lI5eHwsJVHBt5WPs+6OB5rKD7luLAM5W3Z3ZjOqtKOlvg==
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)(346002)(376002)(396003)(230922051799003)(82310400011)(1800799009)(186009)(64100799003)(451199024)(46966006)(36840700001)(40470700004)(40460700003)(70586007)(316002)(70206006)(54906003)(26005)(336012)(36756003)(6512007)(2616005)(356005)(81166007)(47076005)(82740400003)(86362001)(33656002)(36860700001)(40480700001)(478600001)(6486002)(6506007)(41300700001)(5660300002)(2906002)(4744005)(6862004)(8676002)(4326008)(8936002)(147533002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Oct 2023 14:28:22.6985
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 1526f0a7-563e-462b-6673-08dbce5426dc
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:
	AM2PEPF0001C710.eurprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR08MB9509

Pj4+IA0KPj4+IEBSYWh1bCBvciBMdWNhOiBjb3VsZCB5b3UgZ2l2ZSBhbiBhbnN3ZXIgaGVyZSA/
DQo+Pj4gSSBrbm93IHlvdSB1c2VkIFhlbiBvbiBhbiBBVkEgcGxhdGZvcm0gYnV0IHdhcyBpdCBi
b290aW5nIG91dCBvZiB0aGUgYm94ID8NCj4+IA0KPj4gSSBjYW7igJl0IHNheSBmb3IgWGVuIDQu
MTcsIGJ1dCBvdXIgbmlnaHRseSBqb2IgaGFzIHJ1biBzdWNjZXNzZnVsbHkgb24gQVZBIGZvciB0
aGUgY29tbWl0IDczMDQwNmFiODEwOTQxMTVkOWZiNWNhMDBiYThkNTNjZWMxMjc5YjMNCj4+IChk
b2NzL21pc3JhOiBhZGQgZGV2aWF0aW9ucy5yc3QgdG8gZG9jdW1lbnQgYWRkaXRpb25hbCBkZXZp
YXRpb25zLikNCj4+IA0KPj4gV2UgYXJlIG5vdCBhcHBseWluZyBhbnkgcGF0Y2ggZm9yIGl0IHRv
IHJ1biBvbiBBVkEuDQo+IA0KPiBNb3N0IGxpa2VseSBpdCBpcyBiZWNhdXNlIHlvdXIgVUVGSS9C
SU9TIGZpcm13YXJlIGlzIDIueCwgZm9yIGluc3RhbmNlDQo+IDIuMDQuMTAwLjA3Lg0KPiBUaGlz
IGZpeCBpZiBmb3IgQVZBIG1hY2hpbmUgd2l0aCBvbGRlciBVRUZJIGZpcm13YXJlIDEuMDcuMzAw
LjAzLg0KDQpZZXMgaW5kZWVkLCBhbGwgb3VyIEFWQSBoYXZlIGEgbmV3ZXIgZmlybXdhcmUsIHNv
IEnigJltIGFmcmFpZCB3ZSBjYW7igJl0IGNoZWNrDQoNCkNoZWVycywNCkx1Y2ENCg0K


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 14:29:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 14:29:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617667.960485 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsObJ-0005yx-AA; Mon, 16 Oct 2023 14:29:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617667.960485; Mon, 16 Oct 2023 14:29: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 1qsObJ-0005yq-6y; Mon, 16 Oct 2023 14:29:45 +0000
Received: by outflank-mailman (input) for mailman id 617667;
 Mon, 16 Oct 2023 14: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=BBjo=F6=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qsObH-0005yZ-KP
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 14:29:43 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com
 (mail-db3eur04on0630.outbound.protection.outlook.com
 [2a01:111:f400:fe0c::630])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 72084800-6c30-11ee-98d4-6d05b1d4d9a1;
 Mon, 16 Oct 2023 16:29:42 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by GV1PR04MB9053.eurprd04.prod.outlook.com (2603:10a6:150:1c::8) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.35; Mon, 16 Oct
 2023 14:29:38 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%6]) with mapi id 15.20.6886.034; Mon, 16 Oct 2023
 14: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: 72084800-6c30-11ee-98d4-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=U7u0KAxMoOPGqIdPtG4rttP+iX79/fhAbNpnKrG6k7PbsgIOWnVSm5trWQ6bDM4v/UQSAIexnAhGLtgjjKerpaZyEmlPiev6tB/A9zJC8gtzWRkrA1FdlRE/Ym1fHJWiml4e5twaWyqgr2YIeDl4Cdzc7niWstHUZ5e9+1Cf/0xYmAdqApS5NgqcMwgCJ+A2ufM4SgbJlw4h1FXuzP7wndhllPQ7nPkys3l/ZS4R5Qzwy3pyRsWHjzOejGJ04BY/kIKuKTqntURh2W1wVCRrIeNvQuhSOpmqm0x99Lch2ANtt1gY/BB40XWlAW+Ccar5cM7dhjMq8pn512X1b9G5SA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=dpkl2vlC2MPaue4A/8TfmVHhQjlVAVjbUnPssKywBqc=;
 b=SJ6uoH3H+T64foAPLSgLe9yD4odXDTcnJrYGsIR28ZudQQMLPQirsxhZrWUC6uopZ2dNkqFlSMNEx3O49ViJT2CcB6aDUgDSMFwlzpLkSHgn9ujwl6avuwiWCiSu2FfmkURGi7pwJgdq2k3kRiR9RLDAeA/Fh59VOJtcL+QroGImc2W2bD4yWcMli3b7p95ERcYcrSYCy2wCagpADZmOtRiMAYrgNs3tsJAlLOvK4F4uWN9CKQy5uMz0KGxYSFhqBzrXFC5iGOfGKAuOTYmZB1BRuhPDnFyIxW97MCvNGeed+j02/0ShDi6zF0Jtko+7OU8ls2Wez30tgiDzTWTTuQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=dpkl2vlC2MPaue4A/8TfmVHhQjlVAVjbUnPssKywBqc=;
 b=0YiFfsxyZbN/3AyQVnEGBsG5Moa23y4S+aXtvpqgH2PB2Q2KgsWTJjh2XntZzPdXUePM2wdi+3+2YT7jshfUFAIAXzfgYsnHwnbWQz7yngqII/OJI4xqgfA5uv8KSHiWBw8heePTN8vQ9PBsBCIwBOROfI0Dq1Gw1KKd0wmHq1p+5khNDjNtdHx9HdghUNVQ43Vxj2B9FzWFPWiEMVyPdFmcLghxT8wT4L6Ph+kLa5HiuAmN/8ooJY4jN95xOxJfN9Z8/L6YKOJKcP+ohNOHyIxQkuu8SxhGUd28SXut4z9hE5vn5aBWJJvPwdf+MqXSewNzlVchuLDQjOGAzQ2TjQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <c1d7f6e4-c0d9-d79d-504c-3b676d2be380@suse.com>
Date: Mon, 16 Oct 2023 16:29:36 +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][for-next v2 7/7] x86/mem_access: make function static
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.cooper3@citrix.com, roger.pau@citrix.com,
 Tamas K Lengyel <tamas@tklengyel.com>,
 Alexandru Isaila <aisaila@bitdefender.com>,
 Petre Pircalabu <ppircalabu@bitdefender.com>,
 George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <cover.1696833629.git.nicola.vetrini@bugseng.com>
 <f9dcb169ad472fe888d6a03234264ec73e290df9.1696833629.git.nicola.vetrini@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <f9dcb169ad472fe888d6a03234264ec73e290df9.1696833629.git.nicola.vetrini@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0118.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:9d::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_|GV1PR04MB9053:EE_
X-MS-Office365-Filtering-Correlation-Id: 147287e5-984b-4eea-0f09-08dbce54540f
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	xsUTd1qPIIIrIMcnw4LDMgSegI0obv+phHNqpLJO0Prlow2mj1XAJw7vcFBc3iQW+nQKOparzvUneGLc9Koa6fJU3L7nWQLtI4/Z0w46QviPsHnkwjm1eoYKFOUtLPmVV5BV2khxa0T3WuP8NmsoDnKY85kAtMK2ZsVPviK5m3fxGFewpzyTt6pmpfkYC3BU3avUFCoOlHuxuWiZFD4sjVvO4hQ+4YgHLgfXhoZV32WTgMazwjGjvQAdLg8IuInACZpJQl19tmrgLhGejIHUE2pctuTtjWR45rVHxw87+xg/EUm69lJQGWS/gtSfC3MRwaxvaTd+VCPdDX9/ajtfgV91u0PXLUtq1AKkqxGS2jBcKqx8NsvRxwG8Uw/h872uR1Y2eHYTFeh9kxVdUqkAZvAG7ofP300iVdmmNGG2NTOCj+KJBPpdCd3+TdpJdtfw2ZJofoB0rfmHbwDH8ZTvHc43gwS/HjMTWha7q/MP1dZ6R1hvj9xkdmQ9tFEgaJh9texwpKcL9q9b6kFYGHLKi6mWns7rlrSAny/Ba3KQDpLf9sst8KEWgdfSt9bg28TGW+Hd231vtAm8R3vMhVkXryTmnQKjmwW/SHnr8kcE0SMnxIAAwrkFIxU+qYApNwVpLEYCVIZIEmKE4B21ARI0Ag==
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)(376002)(366004)(346002)(136003)(230922051799003)(186009)(1800799009)(64100799003)(451199024)(2616005)(4744005)(83380400001)(6512007)(7416002)(54906003)(66556008)(66476007)(66946007)(8676002)(4326008)(316002)(8936002)(6916009)(53546011)(41300700001)(6506007)(5660300002)(478600001)(2906002)(6486002)(38100700002)(86362001)(31696002)(36756003)(31686004)(26005)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?eU9SQ1QrMWJaRnk1UHJvS3J4OHoyUWNlUU1JMTJ0Yk9tanowaTVCOWNnKzZM?=
 =?utf-8?B?eUg2Y0NZNDZ3b3dNUkxDU0dqNXN5U2JUVVROQy9mZjA1ejQ1bGV1eUxkbFZs?=
 =?utf-8?B?Yi9lSjl1U1hlakpzT2RTMkZ1ZHVkUUZWMHZxZ2FXYWlIWHNOdVpPQlRIZEd4?=
 =?utf-8?B?K05zTndYMzk2djdiU2JPNVRvQlNMaVNnZkFHQWpnTE8ydkdWbFZqYlVWMFhk?=
 =?utf-8?B?VlJLcXNiVTZIREE2TUpqeE5GSTVnSUdoOHNCeWxOZlg0aGQxUEYxcnlZdmxD?=
 =?utf-8?B?encxMmRGbmNLQ1plRXBVa3VwWEJsT2V3OVVFd2xiK3ZnYnFBdk1xQkZRRWg0?=
 =?utf-8?B?MGxYMGIrdzdCMUR1SFErT0RFck9adyt0Sk1nK0dsSWpWVW5hUFhPSzVlWjhj?=
 =?utf-8?B?bE52WDZoUGpkQ2FwVHdGT0N1emFTbEN3b09PMyttOXg1L3V4ZjRjbWhOQkgx?=
 =?utf-8?B?d2l0M2h1b2tZaDZ2dGlmM0V0NkdlaXBUanVWeVBQbE9oMnc2T1FMaXFwdjRZ?=
 =?utf-8?B?U2REVm1jWS9KTkh1VUdMWExKZG54Q2lPVUo1dVNmMU45TzV3WmNtUUVUNzNh?=
 =?utf-8?B?dFcwRlRjT0JVa0NYRkNidFhWTlBsNG1EbEVTM0Z2K3ZzQURvckMzQUVDOS9h?=
 =?utf-8?B?MSs2dit6T2w1eHZCRzNUSW5UM05qQ2MvVzI4NDZ5aVFlY0xvSHc1WE0wcHpO?=
 =?utf-8?B?UVVkVk1vK3FjS0xwVkhFTys4elJOazZzbzljM2VzMWNza0ptVTVoRkEvekRq?=
 =?utf-8?B?SVdzUmlpZzA5TkxXN0EyUWlaNkhhT0NOVVMzWnFwWmRGYThWNEo5Qk5yVmpt?=
 =?utf-8?B?TGpSUTVkSUg5d25qZTUvd09jSU9udGdhaXQyMElMRU5QTStsSHU1TjRXNlY4?=
 =?utf-8?B?RHBnQ29hanNXcVBDUkI0aDV1NFZlWGVBRTdUU0duTGdYTThTN0RVSG1nQTlw?=
 =?utf-8?B?SkhkSXFIaDAxR253dndtTW1uUWdTcTJNZ2d4d3VNRGZhc3AvMFl5cUJCNGp6?=
 =?utf-8?B?dmJuK1U1UWJaaFN2TXBiZW5vUjlndlI5SmwySHQzNG8wbTJVelRETVEzc08r?=
 =?utf-8?B?RHluWDNEN045Sm41VHNmTlZ4N1haLzRVYmswTlY1aTJHSVBJbTRQT1ZXajJq?=
 =?utf-8?B?OXFQeWdBSTFvQWZwV0srV3JMcVFCc0lKSDdlTFJUSFlnYUgyYm9sbStKdkp6?=
 =?utf-8?B?MTdoMWtiUGtPZU9oYzBnSDVCanJkcXF5QjBUTVNKTE4zTFphQ0QvRGc4Mmkx?=
 =?utf-8?B?SHFISm55eWpocWFvSWlCb1luRmM3a2NMNCtucWR5clJBVHd2MCtHam15dXBq?=
 =?utf-8?B?UnVoNTVlMnlKaHZ6V1B0M1lETE9ZRkQ2VGQrRG1hTWd4Nk9HTlpyRHkzSWs2?=
 =?utf-8?B?QWlKMnRpRm54dTgzOVFnaUU2WC9uVEc2bXEwdEJpVWprckJ2OG9naEtVNS9X?=
 =?utf-8?B?NjdIYURhbHROeS9US01SK1hzR0NKY05PMkRJY0hCTlJ0aXJrQ2piUzNnQlRE?=
 =?utf-8?B?cC9rYTNLQmNaeU5tQzZoRUptUDN3TEZhTXRVU0YzRHgyNkZIZUtORUd2WGZX?=
 =?utf-8?B?YnlscDROWWhDdGVFcE8yL2tNVzVMQVcxZjRFeXFtWlJGdTVYcnMyTk1PWlE5?=
 =?utf-8?B?ZEhKdW9LUTlmSkxtdEZDQUNIdjI0VWZiTUJyNnRGOVZPQkRuL0g5ZDVmM1ZV?=
 =?utf-8?B?bkNjb2duc0oyTmV5bnlCa0hGZ0Q4aElUVjZvOU4rL1BDS1ZHZXUwMnJtcW1a?=
 =?utf-8?B?VG04QjVkdnErTS9Fa2lnVngrbUN5M1FEcmc2NkxvYit0S0hqSGc0QUFPenpZ?=
 =?utf-8?B?cHlTYldOYVdvOFQvR2t5UTVzM1Zkd0gxWDNOZzI5MWRkWXpVc3pWa1FNbjVa?=
 =?utf-8?B?anNZRTUycDJ2OXRUL3ZnTkF2R0NHNUtsYjBXY0hGR1AzNmh0bjBDSXpWWjlS?=
 =?utf-8?B?Skl0V1QxSmxpY04xSEgxejdsTXIzci92Um5kbk5DL3RUQ2VtS2QvbTluMkVm?=
 =?utf-8?B?ZDMzcmNYWEozb1ZkWW1VcWtIZ0d1N3ZWdVlLRFdINDV3Y1FoakVIenB5K3pW?=
 =?utf-8?B?ZzMzQTBSWFFuS0h5cG9lNDVQL215RXVZSUpTeVQ3K00rdytraEJndXJja3ps?=
 =?utf-8?Q?SnR4wK4aT+q4fEVBpxUB4u1IR?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 147287e5-984b-4eea-0f09-08dbce54540f
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Oct 2023 14:29:38.7128
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: tW66v6pt6TAmMfucbPJHG/p4waF6mbIXsQQJunzxvMYDmsZGNmNUfqGXmdbzeWvUJmBxV6wjuJAEo/Rey5dwwA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV1PR04MB9053

On 09.10.2023 08:54, Nicola Vetrini wrote:
> --- a/xen/arch/x86/mm/mem_access.c
> +++ b/xen/arch/x86/mm/mem_access.c
> @@ -249,7 +249,7 @@ bool p2m_mem_access_check(paddr_t gpa, unsigned long gla,
>      return (p2ma != p2m_access_n2rwx);
>  }
>  
> -int p2m_set_altp2m_mem_access(struct domain *d, struct p2m_domain *hp2m,
> +static int p2m_set_altp2m_mem_access(struct domain *d, struct p2m_domain *hp2m,
>                                struct p2m_domain *ap2m, p2m_access_t a,
>                                gfn_t gfn)

As mentioned before, when adding static (or whatever else) like this,
the next line(s) need re-indenting.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 14:40:19 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 14:40:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617671.960495 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsOlP-0002yQ-9h; Mon, 16 Oct 2023 14:40:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617671.960495; Mon, 16 Oct 2023 14:40: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 1qsOlP-0002yJ-70; Mon, 16 Oct 2023 14:40:11 +0000
Received: by outflank-mailman (input) for mailman id 617671;
 Mon, 16 Oct 2023 14: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=/fZZ=F6=citrix.com=prvs=646b5f8ff=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qsOlN-0002vE-Qz
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 14:40:09 +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 e5604f1a-6c31-11ee-98d4-6d05b1d4d9a1;
 Mon, 16 Oct 2023 16:40:06 +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;
 16 Oct 2023 10:40:03 -0400
Received: from MW4PR03MB6428.namprd03.prod.outlook.com (2603:10b6:303:123::8)
 by DS7PR03MB5413.namprd03.prod.outlook.com (2603:10b6:5:2cc::20) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.34; Mon, 16 Oct
 2023 14:39:59 +0000
Received: from MW4PR03MB6428.namprd03.prod.outlook.com
 ([fe80::831e:28d1:34dc:f518]) by MW4PR03MB6428.namprd03.prod.outlook.com
 ([fe80::831e:28d1:34dc:f518%5]) with mapi id 15.20.6863.032; Mon, 16 Oct 2023
 14:39: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: e5604f1a-6c31-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1697467206;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=FTFOINn5MJ1cpQG0nEOk7aYXM2FdGiOKNJkhRdC2J08=;
  b=TTIVEX2TD3+MEl5qdSDMoNh9eSNQjFoUHJkD+ygPZ9ki49y7jT5N6XKY
   TXQB3ZrE+JvgLsvaOUFQWgT679JtAleb5x3XQhtSEBHS1uLRvslAVFF9V
   WM3QaHWop99Fb3zVntAXHKxb1teR+4d2i48WkzmNIt+8u3N64vzNUMixK
   o=;
X-CSE-ConnectionGUID: Fq3RIl/lTM+8a/qjRztFlw==
X-CSE-MsgGUID: VtTW5Ia/TmyRVP2xWDgRrQ==
X-IronPort-RemoteIP: 104.47.58.169
X-IronPort-MID: 125711680
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:aJfqDa6m9cYCvwjqvNYqywxRtLzGchMFZxGqfqrLsTDasY5as4F+v
 mNNX2yBPquLY2Kkftgiaom09R8OvZbcx9Y1GQprqCFnHi5G8cbLO4+Ufxz6V8+wwm8vb2o8t
 plDNYOQRCwQZiWBzvt4GuG59RGQ7YnRG/ykTraCY3gtLeNdYH9JoQp5nOIkiZJfj9G8Agec0
 fv/uMSaM1K+s9JOGjt8B5mr9lU355wehBtC5gZlPKgS4geH/5UoJMl3yZ+ZfiOQrrZ8RoZWd
 86bpJml82XQ+QsaC9/Nut4XpWVTH9Y+lSDX4pZnc/DKbipq/0Te4Y5iXBYoUm9Fii3hojxE4
 I4lWapc6+seFvakdOw1C3G0GszlVEFM0OevzXOX6aR/w6BaGpdFLjoH4EweZOUlFuhL7W5m2
 +VDEhEJKRS/oqHmyfWiSNN+muonM5y+VG8fkikIITDxK98DGMmGaYOaoNhS0XE3m9xEGuvYa
 4wBcz1zYR/cYhpJfFAKFJY5m+TujX76G9FagAvN+exrvC6OnEoojumF3Nn9I7RmQe1PmUmVv
 CTe9nnRCRAGLt2PjzGC9xpAg8eWx36kAdtMROXQGvhCvkGv+TEyAVoqUEqBn8HjmnGSVOhFE
 hlBksYphe1onKCxdfH/VRClpH+PvjYHRsFdVeY97Wml6qfS+RffOWECQRZIctlgv8gzLRQh0
 VqMgtXoGS0ptbSTQH2Q7J+EoDWqIy8XIGQeIygeQmMt4cTnoYw1pgLCSJBkCqHdpsbuBTj6z
 jSOrS4/r7Yel8gG0+O851+vqy2ojojESEgy/Aq/dnKo6EZ1aZCoY6Ss6EPH9rBQIYCBVF6Ds
 XMY3c+E44gz4YqlkSWMRKAHGuGv7vPcaTnE2wcxTt8m6iin/GOlccZI+jZiKUx1M8ECPzj0f
 EvUvgAX75hWVJe3UZJKj0uKI5xC5cDd+R7NDJg4svImjkBNSTK6
IronPort-HdrOrdr: A9a23:7qgjeaukNlej0fvAqzoLqV6w7skDstV00zEX/kB9WHVpm6yj+v
 xG/c5rsCMc7Qx6ZJhOo7+90cW7L080lqQFg7X5X43DYOCOggLBQL2KhbGI/9SKIVycygcy78
 Zdm6gVMqyLMbB55/yKnTVRxbwbsaW6GKPDv5ag8590JzsaD52Jd21Ce36m+ksdfnggObMJUK
 Cyy+BgvDSadXEefq2AdwI4t7iqnaysqHr+CyR2fiIa1A==
X-Talos-CUID: =?us-ascii?q?9a23=3AI/ixWWpyGPbF9AEC5w595k7mUe48KUf8yDDUH2r?=
 =?us-ascii?q?7WW8uUb+vW0O+/Lwxxg=3D=3D?=
X-Talos-MUID: =?us-ascii?q?9a23=3AHIFNagxiMWyYd7BONJvw61AdBaqaqJqyNH9QsJx?=
 =?us-ascii?q?Bh8yVDxJIYSeioDuNWLZyfw=3D=3D?=
X-IronPort-AV: E=Sophos;i="6.03,229,1694750400"; 
   d="scan'208";a="125711680"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=B7Sb3Ce9Zyg7WdaLfqVWE1OO97KV5HIaVzMjUaNnBPEzxRmchD6fVa2SI1nZzG/lYKv/SvM0vw4yL05pJvALs56CyXnjk5BgGFf42oOItR8Y70ULlmWvsfrBfe5a0j6YfJHJ52JN3qSeOv+OcdMQTFM9uX24hqXcctuP/0r9vr1niCB08bG3r1lCG1T9m3oAAudqBGIJqpbFLq3UtOXUx2Rb9sWSTWZJ8ilcLK6fDRro+DznfAS6S+xiEAubsYwHlNeslJQTlIuCZW7oMnK1CqAls9vFxCd5/ekq4ni5CwSCKStwaimVNTZGLwkOwuQqOweTJQIA3JbAl9czBErc6Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=OsGCoAkeC7OmbU/HP9RcjDahdCKqVEdbh5i52RncR5s=;
 b=BdZwl9uR1opwcH2t8cRyIN1hph9TqnaW0MOzekp6Xe9dp+Fx3zK1xSjHokW+eEcQUYKWtaZJmzDue9V5W5iW5Qv2MPlKVIJBmHRK+e2Thzjh5kSe1DzjOSxwme2k0x29yDtY9QFfC4xkvMJv1HxsJ2IWFUxp81uKq7mWhZyTDcPCpgIiOuGfCvqWAAgSdN7EEkCQfYq4qgk0QjPKPZI3Cm5nDO+In+WB4lp2D4y77gWiEEoR2XDSJZDVQ5En6Vq0z/71GO6/e0zVJvPb91QjhKDPcx59SyF6vH428UYpVPSVNyCYXlT7TB13MZL4tRK/jas/DKUHPIbaBduz+KnheA==
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=OsGCoAkeC7OmbU/HP9RcjDahdCKqVEdbh5i52RncR5s=;
 b=eimRk/7GIEIBUVTFRonrWZz+eNhbDg+zMoJ0tbgcKoC+6w3oIWjZNWzD4ejjD3Mrye1hJ2SpD7367gY7ud/6z+vfAPVNGaiVVhjEqJ4+82ZWZoqJyKZvLduiG+Nk4TPUj9YzmYKCJCDyzTaeogwU70W6QFMiMI/aCfGTKqEl3uM=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Mon, 16 Oct 2023 16:39:53 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: Henry Wang <Henry.Wang@arm.com>,
	Community Manager <community.manager@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>,
	xen-devel@lists.xenproject.org
Subject: Re: [PATCH v2 2/2] domain: expose newly introduced hypercalls as
 XENFEAT
Message-ID: <ZS1LOYtL09_PoVAr@macbook>
References: <20231006130059.97700-1-roger.pau@citrix.com>
 <20231006130059.97700-3-roger.pau@citrix.com>
 <b8c03b77-d4bf-3be7-2090-e76e6849b085@suse.com>
 <ZS0z89xtFzkmK8_d@macbook>
 <2cd47d7f-00de-3409-c21c-561c92a5c42c@suse.com>
 <ZS1CIFA1FoeGHONZ@macbook>
 <de39a4a1-bcb4-b0fd-e18f-2892c428c8f6@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <de39a4a1-bcb4-b0fd-e18f-2892c428c8f6@suse.com>
X-ClientProxiedBy: LO3P123CA0004.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:ba::9) To MW4PR03MB6428.namprd03.prod.outlook.com
 (2603:10b6:303:123::8)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: MW4PR03MB6428:EE_|DS7PR03MB5413:EE_
X-MS-Office365-Filtering-Correlation-Id: 8f268ee3-efbf-4c5b-a404-08dbce55c5e9
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:
	j8Rn4veyTcOFP/07DLyeju/zAn2rw0oQc3dTWL6cYYfU84yLF0X0gJmlgGufSgInA+rdFHMdbHXq8pqBdHOGl2neYmfV5OWNb6t2Dhlb0hdBqt0ofVdqkPi2ixd9qRr1X3yQkVrua08fDPj4BCyErzvnKWe1gQgTxiVnT222DdbtTB8SbY0KBKwUVQ9KgB72cc6TvCp7/g36P2P5vjfuccxwX2k86ftIzrlb/5eqgSBBgcmsg8/JaIXreNT5jf/TrPpN3Jwz3hAnWBy+y0EocM3GVZa+Rup+lieERprA/KGQfMAfYgKbSids1TjTLkk3FAEL/gZb16M4L1CjDR3sLZzITwNdqdqDebWyCeuKOrxUuP+C/G5cy3yj+8buE4ZEbCKu6hOOUCtoHMWPnAgyavzvP2igy9+C3h5qJ0bcdPCzMo4u7R9Wm2UuskxQZp5AuUOgHIlW4hFjBrC1dtJVpb0NZQcYqsG3edemY5N1oIb1DnHvARDoKzhvPMT9kW3eBqX3v/i7uO9RJq2kFoVk7HL5bLCC6UKuaedECEWGfXMjMQCe0xsn1hkfn7Gvzjae
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)(346002)(136003)(366004)(376002)(396003)(39860400002)(230922051799003)(186009)(451199024)(64100799003)(1800799009)(9686003)(8936002)(6512007)(38100700002)(26005)(82960400001)(478600001)(6486002)(8676002)(4326008)(6666004)(86362001)(2906002)(5660300002)(316002)(54906003)(6916009)(66556008)(66476007)(41300700001)(85182001)(66946007)(33716001)(53546011)(6506007)(83380400001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?YW9kQlZBRVRRQU5maXRKQ2xEdlptOWtLRDJhOC9GdHdhaUZNL3hYUVJqOUt0?=
 =?utf-8?B?YUgydmxoWDQrWWk3QjFvR0ZMNVluL1FwdVRjVVorN2g2eUJYb1k2MUN6TlpF?=
 =?utf-8?B?T09pVDZEakZ3bWgwWFFYdWVldDZDUGlBQ3NyWU1UTVZWVkx1blNvR2g4WVZD?=
 =?utf-8?B?ZjBzeW56TjZhSWhpcEdIbjZEcjh3SFRsS2lyODhjallIbXYvdnNSTnZKeWlw?=
 =?utf-8?B?U0VsdEFuZXM2eWNsZ3VnZjExOHdsL3lOdlNqR2lSTzFXaWllUGdKZUFmcVdt?=
 =?utf-8?B?SFduOHJFdytUYVRRWkV0N2ZFYTh6V3Y4NElSZGhaeTl0TDBGYkkrYXNBOG5p?=
 =?utf-8?B?cWhhbEw3aEE1UjJqSTRYUlpEdjFMYUVHL2tqa3MrWGVIaUlFNmw3cW1LVzlQ?=
 =?utf-8?B?TFJ0djFUVGRWc29RTkRSSnBnWHluZElJbnhYSUNOQ3ZTOS85MWxYMmNNdnNT?=
 =?utf-8?B?akFiTzNEZXl3a0ZUNzAyVUo5Uzh4STNSS1pJL2k1Q1BaU3ZWVTdoZVI5dW1t?=
 =?utf-8?B?akMwUklDT2tOL3k5b2k4bStzWktndVdxZEVtRWh2REwzdk1mUVU2SWJuOGI5?=
 =?utf-8?B?YlVrcFBwS0ZKL2kwendKaXpYbW1FdWh6ZnRaMmtKNCtkb0d4WnIvTklhSG1v?=
 =?utf-8?B?TEwxNjlCai9CRFhOanpZWTgvWUlWSHBqU2Y4VGJ3L3JyUU4zM0NDRW1GcXhP?=
 =?utf-8?B?dmVubXZpNlNuSC9udG5sVGlsVFdJM09VTlorVlNXR253NzlyZmNnVjFxSHNH?=
 =?utf-8?B?cHJrNnJneXBSNXlSN0Ntc2JPazZmc0VFQXlkN2FOczV0SmFzRm91RXpHbGov?=
 =?utf-8?B?MExXTnhMc2djK0w2SjJSam96VkFIZ000MSthaWg2N0RDbkxLdzFhMDZWeUcr?=
 =?utf-8?B?UEpSWit0TFEwUVA0cDJJR056ak5EUk5PWXFTY2hVaW8rYVl4eFNHeXN2ejRr?=
 =?utf-8?B?ZnBmbE5Sc0VoM2drbm9ZMWlwem5Sc3ZnOG5neG81YkdXVkFpQlQrS0JZYS9R?=
 =?utf-8?B?eDcxNWZubkZFRXkwNWZWMEhUMGRHeklCaEtNVU1WQzlLMmtvcGQzWDQ2SnYy?=
 =?utf-8?B?QWlGSjhNdG9uTnkxL3REMFZqdjgvekt6M3dpZ04xakZHNXNzeEdtdkZMenF5?=
 =?utf-8?B?WnltejFGL3VTRkZFSVU4S1M5a3g5dGwySHNzbCtZTXErV0dCTXdrdTZqcUx3?=
 =?utf-8?B?MVBBTkZuem1rT2w0aHdLZmxPa3hVOGxkVGZLQUpCRThoMXNFT2duL2dUaW9W?=
 =?utf-8?B?MmsxNThVM29KMDFMbkFWalptdkJ5RkZaOXl1aUtTYTVreXpDUjdTY0VaZkNz?=
 =?utf-8?B?N010U0ozRXZDdnlqL0NicjNObTNNYU5QbmJVSm9zTEdGaFRWQm9DSkh5ZnYy?=
 =?utf-8?B?Zk80K2JETVB4YTZyRmZzMStueVpBeWNTaHJKL2xZdDNldEdIdDh0SlBhWmZn?=
 =?utf-8?B?enc1ejNJd1RyNG43bXo0NFMxbUxmYVZRU1RPNUJUVlVxbkJ3OStvMEM0cGpr?=
 =?utf-8?B?Tko2ZDhJMW1sT0F6UEdoYWwwU3hKNHVSOWNGZUJRa3hZMU83K1dDRzl0SG10?=
 =?utf-8?B?bVdXSS9QL3FHZkxMYUloNFlHU1NyRmdIaUVCRFErZ2R6aFRDVjIxcjI4eHVX?=
 =?utf-8?B?ZXJpL0RuRGFUMGxqZGFsaElRUENtbGIrWFJGV29tUDY5L1EyUVE2SGZMd0hF?=
 =?utf-8?B?UXBrcmFISlhrdHE3YzVsNStVZms0ejkwTVgvaWc2Rkx5T21Ga05qQlpia0o1?=
 =?utf-8?B?VXJWRFFlZ09wZEs5ckZPdzR2bmdhNUJTeFJEZjkzZnY0UEpPYlFFNVQvaGdK?=
 =?utf-8?B?d1VESmVSSzZOZm9JMEpCbHl0cGRoMnFZZFZKcVM0WGxwVmlhWVRvODhvVHox?=
 =?utf-8?B?ZW5EaFJEeFNHVHNSeFp5U21aNWRFaHdnNjRZQS85cDlNNGNzQ0FSdE1GN1Zi?=
 =?utf-8?B?ektYUDJXVVh5ckZSQ1dpOTlUWm85RHF5Sk9tclU3UGhlVGFTODNqRTFyTWNE?=
 =?utf-8?B?ZmtKcmt5S01JaEZETjJKZFZuV3A4Mm1oMmZkU3c0SUF1aUxGUlo5TzVLTWtx?=
 =?utf-8?B?UUpSbkdzSnFuaEo3Ym5XYmJzUkZGbFhVYjlFK0JDblhPM1JpRi8zMlVtM05Z?=
 =?utf-8?B?Y2hGNE1CUTRKMTJxb1V1RVpMcjkxT3d4U2pvOVBFOU1naitySitCamtEQ053?=
 =?utf-8?B?Tmc9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	UCjz/0W49D9lKIRZawBHxggkdU5/GbqLVIX7XHgKT5v+HTNyg45DhtjCs7LmYH/YzCsP+fc8gPEYr/CMvMF4id2jZQSLv3JTM19jeuJJFkPUhiG1vghNGdlWuC84+/tIPfIhSkr0QcWWvcbt6yFPMHc3JXFP7j4p3ZbbjL9GAa1zxbtsQl1ODjyS3wYZh3hzRmpHuPnxMK6V7URbBRGGYhHQsxEARnD2h4NMcgRwMMHQifjxGnoT3T2NdEcdtdADDtccsp1lqg+F1tiUWL82JDV6a958SsuJXYoSXfB0JwETzk2fpdKbbr85XIAD7DiRuNPGr3Xs5m1rfaAqj03Ey/PSFPODa3pBfs9jQ649N8N3fnOSzfCMn1TdFWC6PDrBd6b0ySuArryBCtueoUog9JD+mTWhWelSxfk30LBWADFBndiNHxT6FMrpLyKxhF4hECRDwKMEVVlcyyciR6mFrJm163o18IP14Ex23k6YzU2AnGHuBPnpVyaABhfMfsB5SZQ0sZpbgf62Bi4prj5SVbgQiQ/hn8/dQ4HqjEa3PK9/UlX8TUoc5kVcgAd6CMVY1fUz+enW/wReD5ltLo7+DGWT52t90STmImWMD/rbdCM3Tl2tFFctVEdWO5DNl82mgP6vGGYZcUX2AhZ9tA1doYxnxMkPO5PV0XqY+0ploNM9zf0asAN3trnNzwy7F8gLlK8y3iPbhJIiXWKqzJvCxEJk+9QM81oiqDKu+8oLSAgSIyXInOrYmDapqgc+y4q7Haa5/pOGx1bUfuyhnIFtbW0UO6NcfYhwk2ceTJxJSOC24hM5L9NLlwK7ZjOLq+EqAO3LH7+8pOsT+bLB799m8pmfxP8ApfbgSr9Y2g9in5up2zdfb0UmaA54fkMKB+1RVFlrk+QKzZDushaaCBUKTGDTQX7tOJywo5PBcbCKBKA=
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 8f268ee3-efbf-4c5b-a404-08dbce55c5e9
X-MS-Exchange-CrossTenant-AuthSource: MW4PR03MB6428.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Oct 2023 14:39:59.2823
 (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: PDAy7ZlBUCmbaxO/2OgdoDUPjglexJoBqXrK8Gx9VJjFtWlUC01ipNA3Kvsggqvjz2AQ3/2shNL89Fkvd0Zkdw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR03MB5413

On Mon, Oct 16, 2023 at 04:04:34PM +0200, Jan Beulich wrote:
> On 16.10.2023 16:01, Roger Pau Monné wrote:
> > On Mon, Oct 16, 2023 at 03:58:22PM +0200, Jan Beulich wrote:
> >> On 16.10.2023 15:00, Roger Pau Monné wrote:
> >>> On Mon, Oct 16, 2023 at 02:35:44PM +0200, Jan Beulich wrote:
> >>>> On 06.10.2023 15:00, Roger Pau Monne wrote:
> >>>>> --- a/xen/common/domain.c
> >>>>> +++ b/xen/common/domain.c
> >>>>> @@ -1998,6 +1998,10 @@ long common_vcpu_op(int cmd, struct vcpu *v, XEN_GUEST_HANDLE_PARAM(void) arg)
> >>>>>      {
> >>>>>          struct vcpu_register_runstate_memory_area area;
> >>>>>  
> >>>>> +        rc = -ENOSYS;
> >>>>> +        if ( 0 /* TODO: Dom's XENFEAT_runstate_phys_area setting */ )
> >>>>> +            break;
> >>>>> +
> >>>>>          rc = -EFAULT;
> >>>>>          if ( copy_from_guest(&area.addr.p, arg, 1) )
> >>>>>              break;
> >>>>
> >>>> ENOSYS is not correct here. EPERM, EACCES, or EOPNOTSUPP would all be more
> >>>> correct.
> >>>
> >>> I don't think so, common_vcpu_op() default case does return -ENOSYS,
> >>> and the point of this path is to mimic the behavior of an hypervisor
> >>> that doesn't have the hypercalls implemented, hence -ENOSYS is the
> >>> correct behavior.
> >>
> >> Besides that other ENOSYS being wrong too, I question such "mimic-ing".
> >> Imo error codes should be the best representation of the real reason,
> >> not be arbitrarily "made up".
> > 
> > The point is for the guest to not take any action that it won't take
> > on an hypervisor that doesn't have the hypercalls implemented, and the
> > only way to be sure about that is to return the same exact error code.
> 
> I don't follow this kind of reasoning. Why would a guest, whose code to
> use the new sub-functions has to be newly written, key its decision to
> the specific error code it gets, when at the same time you expose
> feature bits that it can use to decide whether to invoke the hypercall
> in the first place.

Because we don't control all possible guest implementations out there.

AIUI the point of introducing a way to disable the newly added
hypercalls is to make the interface between a Xen previous to the
introduction of the hypercalls vs a Xen that has the hypercalls
disabled equal, and that requires returning the same error code IMO,
or else interfaces are not equal.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 14:46:33 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 14:46:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617676.960504 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsOrQ-00059n-Uc; Mon, 16 Oct 2023 14:46:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617676.960504; Mon, 16 Oct 2023 14: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 1qsOrQ-00059g-S9; Mon, 16 Oct 2023 14:46:24 +0000
Received: by outflank-mailman (input) for mailman id 617676;
 Mon, 16 Oct 2023 14:46: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 1qsOrQ-00059a-D5
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 14:46: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 1qsOrP-0004oM-BB; Mon, 16 Oct 2023 14:46:23 +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 1qsOrP-000355-14; Mon, 16 Oct 2023 14:46: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=JalChIrOFfx6zfcfT37QRxPZmZAbdEye2KQLrCuknfM=; b=tjOLUWCqEG59ugdGQpbWPAKtyw
	D+Oun5fG3rNZ353qZ8gambzeiBSZ6GHC/Sio9lJVP2IsU58eFSpJ9bvxbUV1kZ/WLXrA0OkI6/uEd
	U93LXgLHNv/DIO3CE3xv88T5FTlH9EMjRS+MICboePpHNVoJ0uLnu2KMScLadk2OWk4c=;
Message-ID: <d3952200-9edb-4de0-94e3-c00c571a10b9@xen.org>
Date: Mon, 16 Oct 2023 15:46:21 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v4 2/2] xen/arm: Enlarge identity map space to 10TB
Content-Language: en-GB
To: Alexey Klimov <alexey.klimov@linaro.org>,
 Luca Fancellu <Luca.Fancellu@arm.com>
Cc: Bertrand Marquis <Bertrand.Marquis@arm.com>,
 Michal Orzel <michal.orzel@amd.com>, "leo.yan@linaro.org"
 <leo.yan@linaro.org>, Xen-devel <xen-devel@lists.xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Rahul Singh <Rahul.Singh@arm.com>, Henry Wang <Henry.Wang@arm.com>
References: <20231013122658.1270506-1-leo.yan@linaro.org>
 <20231013122658.1270506-3-leo.yan@linaro.org>
 <169101f8-0475-45b1-b2c2-60dadd88d3f0@amd.com>
 <5a5e960b-e6fd-4617-b33a-10cf07f5bb52@xen.org>
 <8BCB97B4-CBDD-43D9-B0F8-7F637B8BE559@arm.com>
 <4B2BD200-5D3E-49D5-BF13-65B769AD4B90@arm.com>
 <CANgGJDqHu0CB=zzZqda18giLYDkL3My+gT592GLO-b9HsF2A4g@mail.gmail.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <CANgGJDqHu0CB=zzZqda18giLYDkL3My+gT592GLO-b9HsF2A4g@mail.gmail.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

CC Henry

Hi Alexey,

On 16/10/2023 15:24, Alexey Klimov wrote:
> On Mon, 16 Oct 2023 at 15:13, Luca Fancellu <Luca.Fancellu@arm.com> wrote:
>>
>>
>>
>>> On 16 Oct 2023, at 15:00, Bertrand Marquis <Bertrand.Marquis@arm.com> wrote:
>>>
>>> Hi
>>>
>>> +Luca and Rahul
>>>
>>>> On 16 Oct 2023, at 15:54, Julien Grall <julien@xen.org> wrote:
>>>>
>>>>
>>>>
>>>> On 16/10/2023 09:44, Michal Orzel wrote:
>>>>> Hi,
>>>>
>>>> Hi,
>>>>
>>>>> On 13/10/2023 14:26, 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 10TB, allowing module loading
>>>>>> within the range of [0x0 .. 0x000009ff_ffff_ffff].
>>>>>>
>>>>>> Fixes: 1c78d76b67 ("xen/arm64: mm: Introduce helpers to prepare/enable/disable")
>>>>> I don't think a fixes tag applies here given that 2TB was just a number we believed is enough
>>>>> and all of this is platform dependent.
>>>>> This can be dropped on commit if committer agrees
>>>> Xen may have booted on that platform before hand. So this would be considered a regression and therefore a tag would be warrant.
>>>>
>>>> AFAICT, the commit is only present on the upcoming 4.18. So the question is whether Xen 4.17 booted out-of-the-box on ADLink? If the answer is yes, then we need to add a Fixes tag. But the correct one would be
>>>>
>>>
>>> @Rahul or Luca: could you give an answer here ?
>>> I know you used Xen on an AVA platform but was it booting out of the box ?
>>
>> I can’t say for Xen 4.17, but our nightly job has run successfully on AVA for the commit 730406ab81094115d9fb5ca00ba8d53cec1279b3
>> (docs/misra: add deviations.rst to document additional deviations.)
>>
>> We are not applying any patch for it to run on AVA.
> 
> Most likely it is because your UEFI/BIOS firmware is 2.x, for instance
> 2.04.100.07.
> This fix if for AVA machine with older UEFI firmware 1.07.300.03.

OOI, why not updating your firmware? I was expecting that it would also 
contain other critical fixes.

With this in mind, I am now more in two mind to ask to merge this patch 
in Xen 4.18. On one hand, I understand it will help to boot on AVA 
machine with an older firmware. But on the other hand this is changing 
the memory layout quite late in the release. The risk seems limited 
because Xen is not loaded at the top of the virtual address space (there 
is the directmap afterwards).

Henry (as the release manager) and others, any opinions?

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 14:50:39 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 14:50:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617680.960515 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsOvU-0007ff-Ei; Mon, 16 Oct 2023 14:50:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617680.960515; Mon, 16 Oct 2023 14:50: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 1qsOvU-0007fY-C7; Mon, 16 Oct 2023 14:50:36 +0000
Received: by outflank-mailman (input) for mailman id 617680;
 Mon, 16 Oct 2023 14:50: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=BBjo=F6=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qsOvT-0007fS-4Y
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 14:50:35 +0000
Received: from EUR02-AM0-obe.outbound.protection.outlook.com
 (mail-am0eur02on20623.outbound.protection.outlook.com
 [2a01:111:f400:fe13::623])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 5b4e87c7-6c33-11ee-9b0e-b553b5be7939;
 Mon, 16 Oct 2023 16:50:32 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM7PR04MB7157.eurprd04.prod.outlook.com (2603:10a6:20b:118::20)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.45; Mon, 16 Oct
 2023 14:50:30 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%6]) with mapi id 15.20.6886.034; Mon, 16 Oct 2023
 14:50: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: 5b4e87c7-6c33-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=DanLGdPQqGUxBI3RN1GcUoOoIjChzwCzvAP9rFj8NPzXKz9Lu3ui5OJ5dXedz8uFKd3jA/1GqNc8XBQwukGVHafsrbVVk8bC7Q+Th7xd/Y8aEJu9TMz9eeYBbGIo+Bxurcf+uQNyyqeuRVJxbJ2rzf8wtA2Btem/NFExrQKdSxrd03iXY8eRJtYhuUgrSz+XDDjkWG4Jqt4SbX5coNWY1Z3Z2568ueYRAWRBmhAKEMtVcO3A4rZp66sjwRgBiD9ZiXNxvpfGIXnsGB1f/Oh5XNjXqvmMUbsmaIFKbsHitp+D61DYRMjmq04yOdWOFe5pOwdVq8DiGy8E/vXsWVNrjA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=jqA8SWAfTE/+9BUyg3pJi1DzRtqDHWg03Kup+Q4VYJY=;
 b=JRbQHfKqFqn7bridTLVkaIrqEu+l/71kK6DwwP3yMwpCPucUE0dUGUMCgCALCWIoALszIfSFfrQ3AJf1ILC/nyB0DVeaOi4+LwwUZqcSa/m+ILswlPGSV2GWsjPLLKR2mcRczWJcfAJgWms9Jl0EP5l/h9k1iILK8ed6oLpsg3QKeSU4jSLDVqIOnChb8WN99BlEhtS9xXqzeZAXmRfwdS9F8+IYFJhD+lmtPzX6bDJU8UhWkWAa/6T3kF/FdKoj5TNKdYs7SC4YIGgm1jNHpII1Ow/hXKa44wtb/6YuKw4qt098Q6LG4NOxYepz6fPCjm/HbG1b+5+yW8m7XINzfw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=jqA8SWAfTE/+9BUyg3pJi1DzRtqDHWg03Kup+Q4VYJY=;
 b=GsUqUXD81eBri7rql8y8smfOmFjwQpb3g9enddmCdn+gU2ARvzAwDkzMgDRgdjvMk0W5z8VuLD8yK3DXHIELZKkSbcFzXODeXH64RInOxNEeQK+NcHYBigbo5ax87kUjdXckGLi6AyhVy+QZmzF4EsMt8uPGHA/XF8IhNeNwQX08rRn7Nqs6DxcJU1oHC/6q/teUSveFcOTY5jDnVYYwh3apHyt8yaT0Jl9cCivZQex31EyzMlN516hY6oPTJdkGKZUyVjtnTUTb8YNMI5B08vonZfuZP9LHn11JDObx+5ERr9xvyYphOVqpQUQTnhJ12l+VVnRdtbadQsicei/dIw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <2023f16b-46fb-2a19-9620-7872b3029b5f@suse.com>
Date: Mon, 16 Oct 2023 16:50:28 +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 1/7] xen: add declarations for variables where
 needed
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.cooper3@citrix.com, roger.pau@citrix.com,
 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>,
 xen-devel@lists.xenproject.org
References: <cover.1696833629.git.nicola.vetrini@bugseng.com>
 <002d58b1d15619a8c4b2ec6c2b5f20960ed0a428.1696833629.git.nicola.vetrini@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <002d58b1d15619a8c4b2ec6c2b5f20960ed0a428.1696833629.git.nicola.vetrini@bugseng.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_|AM7PR04MB7157:EE_
X-MS-Office365-Filtering-Correlation-Id: d1a9c581-bcec-45c7-a3bb-08dbce573dfc
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	HusS5fNLyQ4Dlm/ilIkoyYSp5+BktTxE3hMsTgUDCVhSjwOtZ4/PBX85fqWwBPMrEb1cEhIUIr8DYCsTMzVRwsMwyGReSsS8LbHpGRj0thOll8pVL3grPNwDIv2YeYA5o5v/g6Isvcp5tgFkkgV2y04HqrWbpBGPkUGDsMj7tEHkIdzhTLbXrFAmSCeF55N7BxYDmausJ40LwHHt/5ZqRi+h7TtXR9qRmxQz4DIfgIZ+IjY5nmXJz/J2GW80df/gI6JK45oiqKhU4muqK3T6Rkf4mRS4zSoPN6gjtk8nlA13hVqe52DVO/gFUUJ20BnH7MocEb1Xvf0dTy8LqxV4xV7lRCYu+OgYJ1mSOWA7DpjDzRJM0M5fw3yuLBtS85JBjYtdHLGxIN31v7rPA5UR67adOdx96Sbl9NNF8Js+DgLBVHL8zDhTfgHLqEYzChyVTd+pZ78l+mJgD+R1yZKC8XFYiSuXk/gXqRV8tshJ+1dRwAllhDtYw5SQrqFiKaR/Xo2/vRjSUikwcxhH7IB0Uc9Uz/GcC3TxosxRoNQEdHrWoPfNFD20GROEVl/feLklNYFHpTcq3QbNfDaePt/Y/XNEtAlaZQxi6lIYCpHsV/heFS95oJDUVOUaLNoa2vioZcMvUgyQMKemKKxnDB3O2w==
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)(136003)(376002)(346002)(366004)(230922051799003)(1800799009)(186009)(451199024)(64100799003)(2906002)(5660300002)(8936002)(8676002)(83380400001)(66476007)(66556008)(6916009)(7416002)(41300700001)(316002)(66946007)(54906003)(478600001)(4326008)(6486002)(31686004)(6512007)(6506007)(2616005)(26005)(53546011)(36756003)(38100700002)(86362001)(31696002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?OHdyR092K1k2UWhIbklEWDdVVjFVT01XUFFWS1YwaGdkMHhEcFY0dDRrbi9H?=
 =?utf-8?B?a1RyMEg5UFc3UitxWi80cGtSZC91cEdrWms3VmJ2dDkvNWNSazBNenprTjl6?=
 =?utf-8?B?NEdJTTlYeDRXdGdmbnJ4cThERGZsVm96YS9aZDA1WnNaVFIwOGtDL0FHNDR3?=
 =?utf-8?B?WWFvQmt4YWVjZXZrQzNWaDg4bGVsbTJEcTkyZ3ZLMFUyVmNTdWltN1AzWXVy?=
 =?utf-8?B?V3lpckNtUzc5Rlo3T3Bub3YrenBTdGozd1ltTE9jQjFvcEt0TWFTckNpRnFN?=
 =?utf-8?B?UER1YlJtd3k0alJCLzhZSDNNNGp4bHQrc1RHZ2ZFSzJpcUk2aVR5RXE2dTdl?=
 =?utf-8?B?bWRxMmsrVENqSnR3TmtTRlFIZXVVSFhENzUvNkFoTmZtbDJVbnhxdlNiNUlp?=
 =?utf-8?B?SGZVZCtqTVVSU2sxOFhFd3NadWRERDJBWU1RSmhGcWNxTCtnejNPRFJoS1hl?=
 =?utf-8?B?azM4ckJMeFFIRVhkc0NQSk9EaDRnL1VWb2R6bkprUEduTWtMbjh0ZStTOFEx?=
 =?utf-8?B?dTVtMTNVK3RvNFdkU2o3UXRkMGl0YitRdmxpTFRHQ3N5aUQraVhTdkdmalNJ?=
 =?utf-8?B?dm1SL3NsS1NHZWtWa29sTCtVSVlCUjNIR3VzVnhOY1NLaHA5SGkrOVloRk1N?=
 =?utf-8?B?RFpZS3BubnFjaE1icGNpSzYrc2oyZEdqcHJpbS9kYjZ4blc5ekplSldTbU5a?=
 =?utf-8?B?S0h5cFJ0ZEhFRkovWnJJY1k0SlZGUExGeE9WaFNmZXVPVzJpbk1zSElSR3Vo?=
 =?utf-8?B?dG9ZdGNyaTN1Y0krOTZ0L0dLemZhV09aQXFiclE3VVQ4RlZFOUY1U3E4akYx?=
 =?utf-8?B?RU03eEpISUpzN3dleDhQdjhGeHZOejJCay85dEFsYVBhOXNpZklXSEw0eTJp?=
 =?utf-8?B?ZnRJQ3hOVDJZeGpwRmVST1hRMnZmNDBoTEVVVlkrdzNjR0FoMXRVZmNMdERU?=
 =?utf-8?B?aEhUOTliWWRPOE50by9rT20xMjdLVGNoU1FEK1ZNSHgxcHJpOGpVYXV1dDcy?=
 =?utf-8?B?VURVbzgwMnJwWGNwbHF6NXJVVm1ZRHd2N0ZZRHFXK3RHZW5pMkZhL3pRVkFU?=
 =?utf-8?B?alc3SUVjc05yZ2Fmc25MWDRnNTJIOGRZOTIxOHZhWEZTRktCaWxnTVZXWTFv?=
 =?utf-8?B?UmxieFBlZWdzZ3F0NDNxdnZSRG14THBGWVlIMEZSaHBEaXM5TXYrblo0VGxJ?=
 =?utf-8?B?aDlXZ09qRkxyN1dMcDJsWml4aGpPZnYwMU5OanNrSklaOGhWeXI0UWo3b05C?=
 =?utf-8?B?YTJMT2Fwc0xneGJzbm0yQmZ1RGZaQzZ1R2ZzMlZRc1lpMGR2OXV3UTdDVzFN?=
 =?utf-8?B?YmZ0bWVSL1dUTmVzZzZlek1qVVFVaU5DNW1WbHJrcUIydEFUL0Y1aTA5OHA1?=
 =?utf-8?B?R3VzVjBnZlROd1NNOXBEc2cwOWVIdzFReTdhVFhVNGk3ZmcrTW8rUnNlSDNl?=
 =?utf-8?B?LzNQRnRvcCtpMjVIQWI4ZVZkakZpbHkrenVtNzNZckRQWDlKeEtjQXc0Zi9P?=
 =?utf-8?B?OUREMDdIUHJsZ3c2bUJqWkRENnFEZ3JNVXJmdjgyZksrY0hxNkR0VUxvMm5s?=
 =?utf-8?B?ZEF6QWJjMnllbG0rMXFBOVJuaXlMNVNVaE4yN2Q0Ly9TVDhWSHJzMGFoVWNJ?=
 =?utf-8?B?cWwrc3NrMDU3R3JLUGRTMVV4THZpMTJmb3A4M3VTMVZ6cGRMTG5EakxBWFJG?=
 =?utf-8?B?ZVFkQktyNTFjcVlMaUxSY3Z2Qy9XZFgzTnNNRUdkWUNQcmpPREYrQUhhVlRE?=
 =?utf-8?B?MXVGTVJ1TEhvVVRGRy9hRVlGaGxHV2tJMXUzRHorMEx0bjFnV3FHOHFzZjJJ?=
 =?utf-8?B?R2pteTBEN0RDMWlzYi9GMGpBSWM3VjdBcWJEY1J4c0FGY1VzaW9Oc3ZYbndo?=
 =?utf-8?B?SjlVbFFiWVNIbkMrZmpCcjhXS3BBdEpnaFRpTFpLbTkwNURFWkpiYmlIUndw?=
 =?utf-8?B?VEU5NTZVcEEyR0xJYzJOTGZyR1h2RnozRUpxYmorZlgramdJa2tkYnZ2bkdP?=
 =?utf-8?B?Y1lvV2tUSUt0NHloc0J2S29MaVovbUxtOS9CMUVna1JUOEVIZVFWNkJ5YTFT?=
 =?utf-8?B?UkpuY0lWLy9xRkFyR0FZZGlhbnI4TGkxUzlDZHFic2tRcTBUdUVtZWFlY1ZQ?=
 =?utf-8?Q?vZgUNASAu0tUUx2DRTgVUfqWl?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: d1a9c581-bcec-45c7-a3bb-08dbce573dfc
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Oct 2023 14:50:30.1736
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 8cb7Lm/JBQFn8icgaoEzvsgKRgWp8f/d0nRwazle4HYF9SOFbJBWZQAvIN9piYocCPsaeDk05u1KTvTNeV19UA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM7PR04MB7157

On 09.10.2023 08:54, Nicola Vetrini wrote:
> Some variables with external linkage used in C code do not have
> a visible declaration where they are defined. Providing such
> declaration also resolves violations of MISRA C:2012 Rule 8.4.
> 
> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>

This is a mix of different approaches to the same underlying issue. I
think respectively splitting would have helped.

> --- a/xen/arch/x86/include/asm/compat.h
> +++ b/xen/arch/x86/include/asm/compat.h
> @@ -13,6 +13,7 @@ typedef unsigned long full_ptr_t;
> 
>  struct domain;
>  #ifdef CONFIG_PV32
> +extern unsigned long cr4_pv32_mask;

Why is this needed? Didn't we say declarations aren't needed when the
only consumer is assembly code? (I also wonder how this header is any
more "appropriate" - see the changelog entry - than about any other
one.)

> --- a/xen/arch/x86/include/asm/setup.h
> +++ b/xen/arch/x86/include/asm/setup.h
> @@ -13,6 +13,7 @@ extern char __2M_rwdata_start[], __2M_rwdata_end[];
>  extern unsigned long xenheap_initial_phys_start;
>  extern uint64_t boot_tsc_stamp;
> 
> +extern char cpu0_stack[STACK_SIZE];

Same question here.

> --- a/xen/common/symbols.c
> +++ b/xen/common/symbols.c
> @@ -21,23 +21,6 @@
>  #include <xen/guest_access.h>
>  #include <xen/errno.h>
> 
> -#ifdef SYMBOLS_ORIGIN
> -extern const unsigned int symbols_offsets[];
> -#define symbols_address(n) (SYMBOLS_ORIGIN + symbols_offsets[n])
> -#else
> -extern const unsigned long symbols_addresses[];
> -#define symbols_address(n) symbols_addresses[n]
> -#endif
> -extern const unsigned int symbols_num_syms;
> -extern const u8 symbols_names[];
> -
> -extern const struct symbol_offset symbols_sorted_offsets[];
> -
> -extern const u8 symbols_token_table[];
> -extern const u16 symbols_token_index[];
> -
> -extern const unsigned int symbols_markers[];
> -
>  /* expand a compressed symbol data into the resulting uncompressed string,
>     given the offset to where the symbol is in the compressed stream */
>  static unsigned int symbols_expand_symbol(unsigned int off, char *result)
> --- a/xen/include/xen/symbols.h
> +++ b/xen/include/xen/symbols.h
> @@ -33,4 +33,22 @@ struct symbol_offset {
>      uint32_t stream; /* .. in the compressed stream.*/
>      uint32_t addr;   /* .. and in the fixed size address array. */
>  };
> +
> +#ifdef SYMBOLS_ORIGIN
> +extern const unsigned int symbols_offsets[];
> +#define symbols_address(n) (SYMBOLS_ORIGIN + symbols_offsets[n])
> +#else
> +extern const unsigned long symbols_addresses[];
> +#define symbols_address(n) symbols_addresses[n]
> +#endif
> +extern const unsigned int symbols_num_syms;
> +extern const u8 symbols_names[];
> +
> +extern const struct symbol_offset symbols_sorted_offsets[];
> +
> +extern const u8 symbols_token_table[];
> +extern const u16 symbols_token_index[];
> +
> +extern const unsigned int symbols_markers[];
> +
>  #endif /*_XEN_SYMBOLS_H*/

This change is even less clear to me: The producer is assembly code,
and the consumer already had appropriate declarations. Why would we
want to increase the scope of their visibility?

Jan


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 14:51:55 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 14:51:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617685.960525 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsOwg-0008Ie-U6; Mon, 16 Oct 2023 14:51:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617685.960525; Mon, 16 Oct 2023 14:51: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 1qsOwg-0008IX-Q3; Mon, 16 Oct 2023 14:51:50 +0000
Received: by outflank-mailman (input) for mailman id 617685;
 Mon, 16 Oct 2023 14:51: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=/fZZ=F6=citrix.com=prvs=646b5f8ff=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qsOwe-0008IR-TM
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 14:51:49 +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 865f97a2-6c33-11ee-9b0e-b553b5be7939;
 Mon, 16 Oct 2023 16:51:46 +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;
 16 Oct 2023 10:51:43 -0400
Received: from MW4PR03MB6428.namprd03.prod.outlook.com (2603:10b6:303:123::8)
 by DM6PR03MB5100.namprd03.prod.outlook.com (2603:10b6:5:1e1::23) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.36; Mon, 16 Oct
 2023 14:51:41 +0000
Received: from MW4PR03MB6428.namprd03.prod.outlook.com
 ([fe80::831e:28d1:34dc:f518]) by MW4PR03MB6428.namprd03.prod.outlook.com
 ([fe80::831e:28d1:34dc:f518%5]) with mapi id 15.20.6863.032; Mon, 16 Oct 2023
 14:51: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: 865f97a2-6c33-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1697467906;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=xgj6J06Pwq7rKvDP1eiZOC17hB7Nwo9H8V4eZF+GVF8=;
  b=VIQU92lVEYq8KY6nUr6X/sjbcDijO30vo0YdsPCscU8uS7MSHwYUKazZ
   ZXwqeh/JKUnTICWWYBKYAJfG3MCoRETdnD4mQg2o1b2DJfEUqbiRRrjTI
   xHOlappdmVuTnIjY5WEJ9QOq18RbQIGDgqWPOnbBOEcMsT95yMywF0B0i
   4=;
X-CSE-ConnectionGUID: VfPlr+NCQQiHHSKkY2NeBQ==
X-CSE-MsgGUID: m1lX2Di7TQCRoE6KennhmQ==
X-IronPort-RemoteIP: 104.47.58.169
X-IronPort-MID: 126148978
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:feG0baDgDZhWihVW/+niw5YqxClBgxIJ4kV8jS/XYbTApDwg0jwDx
 2NMD2vXOPiIYmHwLtogPtmw8UMFusfTmNEwQQY4rX1jcSlH+JHPbTi7wuUcHAvJd5GeExg3h
 yk6QoOdRCzhZiaE/n9BCpC48D8kk/nOH+KgYAL9EngZbRd+Tys8gg5Ulec8g4p56fC0GArIs
 t7pyyHlEAbNNwVcbCRMsMpvlDs15K6p4WtB4ARnDRx2lAS2e0c9Xcp3yZ6ZdxMUcqEMdsamS
 uDKyq2O/2+x13/B3fv8z94X2mVTKlLjFVDmZkh+AsBOsTAbzsAG6Y4pNeJ0VKtio27hc+ada
 jl6ncfYpQ8BZsUgkQmGOvVSO3kW0aZuoNcrLZUj2CA6IoKvn3bEmp1T4E8K0YIwxOhPBXsN0
 9chETEtTiughNPs5r+Rc7w57igjBJGD0II3nFhFlGicJ9B2BJfJTuPN+MNS2yo2ioZWB/HCa
 sEFaD1pKhPdfxlIPVRRA5U79AuqriCnL3sE9xTI9exuvTm7IA9ZidABNPLPfdOHX4NNl1uwr
 WPa5WXpRBodMbRzzBLcqCz12r+ewnOTtIQ6EeS8xqRGgQKv/0cpDzBIdla9p/m8sxvrMz5YA
 wlOksY0loAw/kG2Stj2XzWjvWWJ+BUbXrJ4M+A88hDL9aPS7C6QHG1CRTlEAPQ5sOcmSDps0
 UWG9/vxDCFrmK2YTzSa7Lj8hSO/P20ZIHEPYQcATBAZ+J/zrYcrlBXNQ91/VqmvgbXI9SrYx
 jmLqG00geUVhMtSjqGjpwmZ0nSru4TDSRMz6kPPRGW54whlZYmjIYu19Vzc6vUGJ4GcJrWcg
 EU5dwGlxLhmJfmweOalGY3hwJnBCy65DQDh
IronPort-HdrOrdr: A9a23:Ao3FoaM42G3soMBcTvujsMiBIKoaSvp037BL7SxMoHluGfBw+P
 rAoB1273HJYVQqOE3I6OrgBEDoexq1n/NICO8qTNWftWLdyQiVxe9ZnOzf6gylNyri9vNMkY
 dMGpIObuEY1GIK6PoSNjPId+od/A==
X-Talos-CUID: 9a23:YWjN52G82ejhmp0eqmJZ+nYQAIMDWUTkzVfwGGy7ODxPRZesHAo=
X-Talos-MUID: 9a23:Zaf00Qum5a4dmE4EUM2ngWhmBJ1E4vuSMWs3lrhYmMSCMyx1AmLI
X-IronPort-AV: E=Sophos;i="6.03,229,1694750400"; 
   d="scan'208";a="126148978"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=OJc63Litq7Xx+4MKOmJyRGWfXHb/XNG//Jt326EFL7wu+VYovIPyS+sidxfw9zf+h1C+H9FWe6oK1x6A0ihVwiQM0GDIHWcu9ywqjwTJLf1/xqf9H0gn0U4aSfq/VM+Z1ddt30M5e2H+bFTQ0e8XdsHCUMj0J6I+Pq0LM9JfGjreHDw9D/JI9G042G3Pc0dINL0vREtIDWYHffUNCkzRLlWBUpyh6uZfS1HGujqbKC6nfR+f58tLCiVbs3nfrDThONT+vM6oj4XCXw8eSZmX32pqMvb33KN3niM54yJzsOXJdw8hFBVszOUOBy+O6Gx8HayhTk2UOdhm1jUifVpMhg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=e2Bl8+R+zQ9Oc93xbqXDApgOEMu2IKkIH1S+p0mCo88=;
 b=UfIEG/yH0raLJPcEqjqZqR73WIwxCPc548uK0kOltyHtohE1QkJFKdUha5L+cFduGuRy+GKw/cztOdN5UkZBBe3w0oiS8DbdCumgOoW6FUXvU3s5zznMOtm+01hZGEGdwTCg28IuOQ2YFxbiuOlaD/dELHHqlrV8/VEHFX565oxlQ7U5fVf59lYevEX1zjxKYPdNUj/pb/lXMG16wexHOsqAR7XaquJurs6yvzq5VcMawZH5PO81jZjvIGdR87q/pilQ+5ktSYykzHwXaHH3vhWGYRI8U+iq/CzhfeQAXp7ku5pDZalmwEQQ1Mv/JF10lvyMhlV3HNJxRL8Jr/tOMA==
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=e2Bl8+R+zQ9Oc93xbqXDApgOEMu2IKkIH1S+p0mCo88=;
 b=hkU7fWbXvMj1fYsgcH67IaBQ4kALXAqqSoi4VMX4hP05jG9HskZ1l4tMBsadYrU1VDN7SDbJYWYTqy20wevKXKnb0L3iCG10WxODfWb4963jBdKY7m8DN5lCRMwZHP/ZQzJsygu1GRH9uy1OTFb2hphZJw2L+svdKrzyk12CWd4=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Mon, 16 Oct 2023 16:51:35 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: Henry Wang <Henry.Wang@arm.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
	Paul Durrant <paul@xen.org>, xen-devel@lists.xenproject.org
Subject: Re: [PATCH for-4.18 v2] x86/pvh: fix identity mapping of low 1MB
Message-ID: <ZS1N9wZ05ebun3WJ@macbook>
References: <20231013085654.2789-1-roger.pau@citrix.com>
 <9aaae72b-fdcc-b48b-1155-e1cb0401d7d1@suse.com>
 <ZS0_zPxGLwfsuVvX@macbook>
 <879e6934-93b3-e260-770a-966cf8bcd2f8@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <879e6934-93b3-e260-770a-966cf8bcd2f8@suse.com>
X-ClientProxiedBy: LO6P123CA0057.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:310::14) To MW4PR03MB6428.namprd03.prod.outlook.com
 (2603:10b6:303:123::8)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: MW4PR03MB6428:EE_|DM6PR03MB5100:EE_
X-MS-Office365-Filtering-Correlation-Id: 6f84ae87-b628-4a6f-f398-08dbce576834
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:
	2UFJooOuoYIywsyLzbrw+I7dPEnQR1/5no3IUvo+LiJgmPPGHb3RUn2TZavTbKgLbQCwphIn6/guUCVRUG0JCfzGUCak32oNHvnhdvnANNmiPdTipvqyAkzYPkSGsMTtaBNYecIZv+Yo0h72VfLz0f1yPbsYlfyS8FFbO9mvQMbk22IfKL5hlsJi0mFXhyWWFPn2iylxqBV3+Fca3Tjkp6c4B74gvFtoU7VJYeq73mQSS8yig7I5X6tblUi4dOdOoR1H98wplZwq7RvouSqx7PDLeQPWN0I6NDAKC/5kysoLFPw2XGBY4zUfUUs/wkVpNOhd5/Fb/gsvbGopN6KzNSrJHj3BxS7QfkEFkMbNiaQjxBOf58zF24P8rhDagzkvgOyBoALFHVKyQwwJXo91yj3YBMQ1c29fL1iHRDhdA80jjSL8x6sQDc41Fb/qp2qqFriWKmBUrh3ZH1xoX6qBufBwGOXXygAUu2+DciPsHo9ohuffJ+x2X5FuMayN3zeJW4mDsB8V/6kpDLhh3L6EDHX2VLvTsJMX6pbXl/iTIO95DtriHVW0mR+iDWTe6IOs
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)(346002)(39860400002)(366004)(396003)(376002)(136003)(230922051799003)(451199024)(64100799003)(1800799009)(186009)(86362001)(85182001)(6486002)(33716001)(2906002)(478600001)(9686003)(41300700001)(5660300002)(6506007)(82960400001)(38100700002)(53546011)(26005)(66946007)(54906003)(8936002)(6666004)(66476007)(6916009)(316002)(66556008)(8676002)(4326008)(6512007)(83380400001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?VElqVnlrUGNsY1p6TTYwWFAxMWpBd1JwK2pHaGpsSW5sSnp1MXcwa2hVMlBQ?=
 =?utf-8?B?aWFjYUQvRnZjc0tZaGhkM2RuSDJWdnM0aWNYby9DTE5QRzJhQW1jc1k0K1FC?=
 =?utf-8?B?NnU1RFpueExLTmxqdlpNbkVFa3lCbktrSHBINmNjYktYejhQYy9JS05sNlZ2?=
 =?utf-8?B?ckhwOGdRdEdHTzd3RkZVTEtJTmhZWi9TTWYwM0VGaHZnVC9LeXo0M2Z1U080?=
 =?utf-8?B?dGFPT2xaN1hGSmxRa0NpUWxWMXI3RDBSRWtiMStYSEhKUzZ2Sm0wOWNwMHhO?=
 =?utf-8?B?U1oyVXJXd0wyMTdTdjZMMjJmTUZnRktpNGZCRE1CUnk3WjBwcEJsY0dLZ2U5?=
 =?utf-8?B?T2R5bmg5aUowL3l4WmFRamRqZWNWSTU0RjI1U3VkcHBhL2FSWkUzUUJWQVRC?=
 =?utf-8?B?bXJ0SGZ6eGR1clJhb25MZE9TZTgzSHZlVWdrMGtvNjRhVzd6SXpPM0RRanVs?=
 =?utf-8?B?Rjl2ZEl1a1lpa0pyOHBkcVNCOVhYUDdJbkp2akN5c2d1OU1CMkRqblZFMlRB?=
 =?utf-8?B?akVTYkkrWmduQ1preERUOHZiTHovQzB6Tlg4QzFDWGhyVEl6VDg0TzZRYlMr?=
 =?utf-8?B?MkUwcHFuR014MWg3WG1ONHJrbDN3MnFsV0h5bHkzUE8xZ0E4bnJQUkdXV1lp?=
 =?utf-8?B?RlVJVHBCZEZDeVkvZkw1N1cvcGZwa2ltOERlT09FVTNDNmtRZW1BQ0djVkdS?=
 =?utf-8?B?WmxLajZxL3NDcXhJY0FPbWVWdjY4RGJLRUFLSkIvQVBJTVJCWUc2WVpVcTdx?=
 =?utf-8?B?empWZEdVK1ZhN1ptOEZLRGhWY1VJRWt6YTMwa1VxTEtWYlJzQ2lwb3l6OHdE?=
 =?utf-8?B?WjZad1FjYldVa0lvNmVTdkJVSG5IZnZmWUMwMEtENlJtNmVXMldKN0pOOEg0?=
 =?utf-8?B?bmRrRG9PRldGTDJVU0ltdXFROVM0bUhJaGpqNkpYbXFQdXFtR0JkNHlPdERu?=
 =?utf-8?B?WVBmbHIxUjFuWXBNRzQ5T1RVSWFNM0Npc0pkeFM0MXUrNGdQNzQyakxzdTJs?=
 =?utf-8?B?OUNMaFJ0L2QzYWN6U3pKRkZpWlJJbnBUR3VVQXA0VlMvU2Y2WlRnelVMMUhv?=
 =?utf-8?B?Mklwb0sxRjNMWG5MUWVwdXRLbkFvcWhnaFA2TXRvMVdQWDlLWXBZR05zUDd2?=
 =?utf-8?B?QkNQWHR5K0xDMG9HL2VKZkJKYlBtQkh2Y21KRGlYWjVDbDE2ODVMMDhMWnNJ?=
 =?utf-8?B?Z3ZMN3g0allmQ0RmZVRLQUhSYjQyejF2S1ZyUWN4RWw0T1pGYTdDc0tTMlRC?=
 =?utf-8?B?eTFNRHRqTkJEMUtTTkF3TTdORUNUbW43c0w1YjduT0YzeC96Tlp1VlhyZndQ?=
 =?utf-8?B?cmtoYUIxUXdGTlBKNDUxbWVSY3l1SzQyZkFXeHM1MmFJTnJlQ2paOTR1amY2?=
 =?utf-8?B?N2lJMTUzNlF2LzNhZFIyamZmS0hKK1c4aXU4OHdzYk5FUHl3TmkzK2dhVUM3?=
 =?utf-8?B?QWZoWFFzTFMwOWlzZk1aQVg1RnZqWU05bWIrcVduZ3dSNTNVdW16U1VUcWdK?=
 =?utf-8?B?b1lCNG81RkxIL0NybFBWempINlBDc3JiZkJyd0srS0pnZkt6eCtidEJ2SmNw?=
 =?utf-8?B?blBNOUlUOUpwK05FS1I2WVFRQ1ZLa1JFYmdESG51WVhHRnA5RlZMd25DK2xs?=
 =?utf-8?B?UFRKY2JxMDVrSU5iK0FrNkROWVNJMWZSWStQZCtWUVVvNmpSeHB5UUI0L3Y5?=
 =?utf-8?B?RXV6UTRQQVBoWXRJMEFWLzR4Y1BMOUlkVDBzV3NEU0hQd1k3ekd2cXdFWW10?=
 =?utf-8?B?Z2FNZkNqSWxsd1RWVWUxYzhMaTVvNXEzcU9ONUpJMmFkbE5aYkM4Y1NBeHhh?=
 =?utf-8?B?NmE0bWI3bUtWS2l5VnBuaEQrVFBlRlJoaXJmLzkzT1d1Vmg3NXgzWnVUMGpy?=
 =?utf-8?B?d0tjWW9SSWNodW5uOGJBZXV3NUl6ckpDdWZTMTB6UWZqY1ZxTGF1YnE3OGZH?=
 =?utf-8?B?eTJ1NUNUNy8zejdZSG9yb3NZVVpmMGJXOTRxWmpLRFRvVGpaSGZhdHZmTUIy?=
 =?utf-8?B?REhJeU9SdUNxVU12aWxmRCtLSXpGSUVXM1NCR0lSeFRzQmxuSVRhQlRuS1Rk?=
 =?utf-8?B?N3EvSEc0Nmhvc3o4WW05eHE5MXBGRTVINHpZWjY2NXRTSU12Wmp3YVN1MzRN?=
 =?utf-8?B?c0RFVndwckJDOVNyb1YzR1N2T0IyNktXZlNIeTJrRWVrSGRJVXJZMUp6VzVN?=
 =?utf-8?B?c1E9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	I+SGuFblaGenKsk+2VRAv9fcp8f3TJ7DIwMJp1y9uUVbG9t5EWMP9bfiLxO5ARd/7tcxMVdMW0CruN/AE8Q63929KZ5Puulf6liNviyJRTJUgrLE1xV2BV3DZLOP5+b31jL9P4B+xl30izjoEjmDI+n7aulJs4HrmOwLHmHzyLuB3TQ3y4iNReMQU7wFLSe/EdFvpUhOw+nuKAWDp2B8a+FxO9pYySql+JCGROdeJjKB4zCOj9YBOhOAy05j+N3gGkcvsJuxpt8Vc+ImYgmCC7ti5YfNQWGpjQzwU60finn0Otn2Pbs5t97mPIdAb6aN3XgALi/DfDFxolpyiPT/RSjOJcG5x56173KOpx0bWPl4YfoR92PFB2j42C0ck7GG64OO/zp0qohcJr0xbNECkTJ5bd9CvGMJqKFC95o//CHohRPDWZWhrylRUhqECoGb4W7VP8cqWsI92CK8MzA6v049MJkuEpDlIa32HrOS1MUpMqdnfNgFrGJ8huDyozfTekyn0lbsK/TVyLwnlruI8tF9CwQfd5Cu9AZ03X2htyaBstXHKsbekxfHfxOThuNl4xaT9DCQ9DE3XSNw6aytdoQgLjuWpfriQQFgsc4YLThAGQAfPzXagdtGmcMoelxPV3CxoBKHg3ljqPvP14MIxIxWYUm8oZA7pLWymn+TzPZ6/8NH8HUWrex5tw+JU9sHi/eb7b8EFu2cIzFspnvNuNqid1RSDg5+IeyIaHZV8gcop/93tu+HLYWBhOOH7GyyUsFbBV7cydSELHg8NvL849iDhrf2D/4XeVBrS++7tNnKmP9G0SSq6++joGU8H8vB6/U06cnJOXXwUOSatLPTjleL3lVCkYPTPrQf+975cVU=
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 6f84ae87-b628-4a6f-f398-08dbce576834
X-MS-Exchange-CrossTenant-AuthSource: MW4PR03MB6428.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Oct 2023 14:51:40.9812
 (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: 1jUt/B2jLo+vDzE5Tk5njd7R4ztodPhVPmifJFskwYJ64jWvqaUs3sZz2F5+5x+SRyIQyGImgKG14VhDckGD6Q==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB5100

On Mon, Oct 16, 2023 at 04:07:22PM +0200, Jan Beulich wrote:
> On 16.10.2023 15:51, Roger Pau Monné wrote:
> > On Mon, Oct 16, 2023 at 03:32:54PM +0200, Jan Beulich wrote:
> >> On 13.10.2023 10:56, Roger Pau Monne wrote:
> >>> The mapping of memory regions below the 1MB mark was all done by the PVH dom0
> >>> builder code, causing the region to be avoided by the arch specific IOMMU
> >>> hardware domain initialization code.  That lead to the IOMMU being enabled
> >>> without reserved regions in the low 1MB identity mapped in the p2m for PVH
> >>> hardware domains.  Firmware which happens to be missing RMRR/IVMD ranges
> >>> describing E820 reserved regions in the low 1MB would transiently trigger IOMMU
> >>> faults until the p2m is populated by the PVH dom0 builder:
> >>>
> >>> AMD-Vi: IO_PAGE_FAULT: 0000:00:13.1 d0 addr 00000000000eb380 flags 0x20 RW
> >>> AMD-Vi: IO_PAGE_FAULT: 0000:00:13.1 d0 addr 00000000000eb340 flags 0
> >>> AMD-Vi: IO_PAGE_FAULT: 0000:00:13.2 d0 addr 00000000000ea1c0 flags 0
> >>> AMD-Vi: IO_PAGE_FAULT: 0000:00:14.5 d0 addr 00000000000eb480 flags 0x20 RW
> >>> AMD-Vi: IO_PAGE_FAULT: 0000:00:12.0 d0 addr 00000000000eb080 flags 0x20 RW
> >>> AMD-Vi: IO_PAGE_FAULT: 0000:00:14.5 d0 addr 00000000000eb400 flags 0
> >>> AMD-Vi: IO_PAGE_FAULT: 0000:00:12.0 d0 addr 00000000000eb040 flags 0
> >>>
> >>> Those errors have been observed on the osstest pinot{0,1} boxes (AMD Fam15h
> >>> Opteron(tm) Processor 3350 HE).
> >>>
> >>> Mostly remove the special handling of the low 1MB done by the PVH dom0 builder,
> >>> leaving just the data copy between RAM regions.  Otherwise rely on the IOMMU
> >>> arch init code to create any identity mappings for reserved regions in that
> >>> range (like it already does for reserved regions elsewhere).
> >>>
> >>> Note there's a small difference in behavior, as holes in the low 1MB will no
> >>> longer be identity mapped to the p2m.
> >>
> >> I certainly like the simplification, but I'm concerned by this: The BDA
> >> is not normally reserved, yet may want accessing by Dom0 (to see the real
> >> machine contents). We do access that first page of memory ourselves, so
> >> I expect OSes may do so as well (even if the specific aspect I'm thinking
> >> of - the warm/cold reboot field - is under Xen's control).
> > 
> > The BDA on the systems I've checked falls into a RAM area on the
> > memory map, but if you think it can be problematic I could arrange for
> > arch_iommu_hwdom_init() to also identity map holes in the low 1MB.
> 
> Hmm, this again is a case where I'd wish CPU and IOMMU mappings could
> be different. I don't see reasons to try I/O to such holes, but I can
> see reasons for CPU accesses (of more or less probing kind).

Hm, while I agree devices have likely no reason to access holes (there
or elsewhere) I don't see much benefit of having this differentiation,
it's easier to just map everything for accesses from both device and
CPU rather than us having to decide (and maybe get wrong) whether
ranges should only be accessed by the CPU.

> > Keep in mind this is only for PVH, it won't affect PV.
> 
> Of course.

Would you be willing to Ack it?

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 14:52:07 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 14:52:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617686.960535 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsOwx-0000CL-4C; Mon, 16 Oct 2023 14:52:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617686.960535; Mon, 16 Oct 2023 14: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 1qsOwx-0000CE-18; Mon, 16 Oct 2023 14:52:07 +0000
Received: by outflank-mailman (input) for mailman id 617686;
 Mon, 16 Oct 2023 14:52: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=BBjo=F6=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qsOwv-0008IR-On
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 14:52:05 +0000
Received: from EUR02-AM0-obe.outbound.protection.outlook.com
 (mail-am0eur02on20615.outbound.protection.outlook.com
 [2a01:111:f400:fe13::615])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 91cb530a-6c33-11ee-9b0e-b553b5be7939;
 Mon, 16 Oct 2023 16:52:04 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM7PR04MB7157.eurprd04.prod.outlook.com (2603:10a6:20b:118::20)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.45; Mon, 16 Oct
 2023 14:52:02 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%6]) with mapi id 15.20.6886.034; Mon, 16 Oct 2023
 14:52: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: 91cb530a-6c33-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=IMICnmuZNA5O4ir3ZPrn6G14rjz/v3/Xi796ko7to4ZHdB+62LrqaxA9YDu/JJXKKlH9qvf2yT90MTfTGbCmt3UQP5rPRBsXuwoRv2ZyPXv9aMsuXQQC5CxPMmtioASf41/zSRVnEHgegqxxwaKp/7DPPrchiuap3KApZZ26GbrBZFIxYUK5Gd0O6zJFX5cWnAJqTQdNpfpYX7nPAMCguMEmPZEE5ewha33f/wK6OcdywQaVg2H5QVN1geZ49vxWfoz1GpjT7UjPaSMSEVQh/343G78xZzHWC+KG1O4WTXiMdbYuwQwS/wfpMOChc7FxQQs38Y2HMsJ7pizvl80uag==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=0PEBTswjW8DSv6/BhWUXIMgtJF1yVHvu7t12DDK24AM=;
 b=DAKqVlNxwf/bkLBo6IXnSaVKUrHNtbJ1iqf2UHbEg3MZVLLixXOpojUMDrzv6pFTqg7Qdvk+fjXkG2qBoPy+JPFX0KUSpH6qIQTnotHslxgZ7YTqWKjL9YJABp5LiOaWZmst5zymyuLnVIgCCnPXnqaPlZ+05hFMOKWiv5TayZmfGT8i4bG5Zv+wX/nXiWYvjLZhETATytesNbsnSwp9o05+ec7m6MsNZh8sAFKrUf9vDF8OXq5BQCJQKPDECR/PtD8BwEYj/sWIPCYB+a/1jX9P43eCNN7UllH2p5eEPpp6Csdy048MMPCZRWfPh9DzbmIWtFGVOS2WIqHHFdO20w==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=0PEBTswjW8DSv6/BhWUXIMgtJF1yVHvu7t12DDK24AM=;
 b=N2Ez7CgjfwAHWdlgl0Y6rpjxEgTYQzcqgDAAqdh3S8Bfe0o/uNDfLuZy/j5GyJ4XDgOLMhPiF4tvL6clYeXUJoyWlNRin3FDsogKkEDx4WxfcSB0OTlP1m3wFoD3nXXKGGQfzgXQMfJ63MLnPy9ID0KLuJeOkznFIZqEgW6vJLTy9toxO6Q2H74Kn1MVzldOLhZm4n1UGc1Xgkc9cBwQ18aG/Getj2WtWRyiR86RVoLAN1nc+lBblzpbK6ygvnqVhFjsljO83et/dBxttTd20APAs4ZfmQu5k9fvSOY/6I9VNhJz7kBofhPpaorhnH2NYrxSoE1hr54jm5KE1ISY3A==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <5cad5cef-27b7-58ef-42f1-8c4a83497f4b@suse.com>
Date: Mon, 16 Oct 2023 16:52:00 +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][for-4.19 v2 6/7] xen/console: make function static
 inline
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.cooper3@citrix.com, roger.pau@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.1696833629.git.nicola.vetrini@bugseng.com>
 <6ca7d9834079b7824f9432799cce2308aa88d159.1696833629.git.nicola.vetrini@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <6ca7d9834079b7824f9432799cce2308aa88d159.1696833629.git.nicola.vetrini@bugseng.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_|AM7PR04MB7157:EE_
X-MS-Office365-Filtering-Correlation-Id: 4050441c-69f0-46c4-f7cf-08dbce5774f1
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	ZQW5BekNsNMcBN/kq5z3F9noTktTG/96fOLbWGwuZCEAQA727tvedPmP2jy/gT/Pa5ZM50mtlc8oCfdzH3A+drvYNcssj/G4ZsljnwxgdMy3oKDtfutL2ob4a9q96m6QQWZd42H9hX9D1/sq/zdY8/2ywoafyVz1BfadgxfaGX7ecZ+WFwZ2ZpTKx1zFQ9il62tfEJUPL6hIA7KSGNEUREnqFwtfqRzqCLv4ExGJeQAsFyHScQkTUZaNjkVHXqEBKbE8aOR/CqyABeS7kSURyy8gbamVmvXIKo4Z3lrPX1MLerWT4zHqeqjwmwJo5PfSw3n5Sr3KQ0YRj5L8b0k6xSPXoVHS2C8bjqNLDQPhlt2FGvyYnoe3C8P8T50gojltw1kLKCMz0lTAW9pqt1Hy9g4okhOaxe0dXpiGYu+KUHA+oTNmMErNk7C53DY9yFXtOgT8fkEx0m8lNC758292JYB3nD1Ztg55eN/LfbCEduS9I2GaCBTWFNBZU2PSWVkPiCC6thd4FhZgBOZxvsZOh7W3vyDM6x/hDSK44jIv4t5gC77fJ9/Z/sdwlbvEZO28VbK/U+qrsiuqGcP0RJdoNEf7iz6ygOs6iZqQTs3xWmEX9AhRT2bIy23otaBIWE+J3M2qGoDkep9rCSisU72Wow==
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)(136003)(376002)(346002)(366004)(230922051799003)(1800799009)(186009)(451199024)(64100799003)(2906002)(5660300002)(8936002)(4744005)(8676002)(66476007)(66556008)(6916009)(7416002)(41300700001)(316002)(66946007)(54906003)(478600001)(4326008)(6486002)(31686004)(6512007)(6506007)(2616005)(26005)(53546011)(36756003)(38100700002)(86362001)(31696002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?dTdVZUVKNTl6OEZsYVp3MlRja1ZMZ2dDMGY3Q1RLUnZ5K1lMeWlUamwrOEFY?=
 =?utf-8?B?TTlYQW9FVzBwVHpKWlVVakwxVnFtTlMydnAzbW9HZk9lSm9mRVY4K2VaZjRU?=
 =?utf-8?B?ZytXNDMwUC9tSTVDTG9sRUNMcXdKZCtjOEFFWEx1V3lzUzFLeGRxNGF0YWtI?=
 =?utf-8?B?dE5RcFFERU85RkhqVmNCekVGQ2hFalhHZUgrcjhOZ0dPRzFVVlkrcFl4K3pU?=
 =?utf-8?B?Mjg1NGZzS3NkQUx1OE5CZ0U4Q1hkWHI4NlRReFNhOHZBdVc2cW5CT1k3VHM2?=
 =?utf-8?B?NUFGbVYyRFhiK0gralQ2Z29nQ3ZYNzJTS3RIRmFNVzRDem8rWEwrSWtTb255?=
 =?utf-8?B?MXNSenYyekJLVTRZazdHOXpsTlZkSHd5K1ROVUlEamtXN3ZLc2g0RGRUYlo3?=
 =?utf-8?B?RnF0QmI1QWQzdGU0VGdLcEhTUDVFVUdjR3dhc0FDTEk4RXorZGNoZGpqNTkr?=
 =?utf-8?B?RW9BTlNNd0gzYUMxUlVUb2J3OGlzemdhNHNYMTUrdE55UDFnd0x2TjR5VTZC?=
 =?utf-8?B?NmpPM2NSMnd3Nm91OUtmTnA3Q3hDcGRIZnErT2o4MnZoQkVUYm9zbUVDdGRl?=
 =?utf-8?B?b3pGTnVkczdUU0c2bitqT3ZHdHlvQUpYNGtmU3ViWWVOOVlkclY5eXZpbktH?=
 =?utf-8?B?Mng5QVhxeUlWQXdlbUJ4ZjBpaDlmUFV2WjFjaXlCc1BNNy9BcmlBUCtaWkdw?=
 =?utf-8?B?S05KL0Y4Y3k3VEFOVVBjVkpHbmpUTUJ2VDBzTVhyZzJYNUF5MTcyeS9JVTlQ?=
 =?utf-8?B?bVlvWndxZ2F5anNBVnlpdEVzWEtQbWp0aDhxTEJMRDBSMVBjdHJvQUNtQ2h1?=
 =?utf-8?B?VTBOTEp0RlpxTS91d0NhaGJWdmx6ZnZrQzRnNmJLQnFtTHlxdnFFQ2hUM0VI?=
 =?utf-8?B?U0ZGL1BkZDFkZEV0am4rWnBCT3VZalVES1lPOG1Td2VaRFNMdWNqaytWcHJv?=
 =?utf-8?B?N3pqaldDckMrWWRBb3RTdlBiNHI0M2pkVzZiYTUxa01XNlVYV0dadWhjZUVI?=
 =?utf-8?B?Wkp5TVpuTVNhTndWdGgzK1pUVEk4U25QSkYxSlYrdmVnMzhwVlNxVndxdjhy?=
 =?utf-8?B?ckh0d1RYL0RaeHRVM0VmS0YwZVhaSTBJUHNVTGRCOFJzc1JqbkpXa1gxeEoy?=
 =?utf-8?B?a0tuYmU4SHVqWFYyb2JrVW50a0I0aEdXaVBBbWcvaGdOcVVFeXkyVzVyaVNZ?=
 =?utf-8?B?SHMvRE41SVM4WWhjSC9GUVc1MzlPVXE0c0dYR3g1bkJmTHUyMERjYmRNZDB3?=
 =?utf-8?B?QitvUGhLMTkvZ1BmbmVXbGhjWE0zSEhiZ0g1YzFTdFlkNkVKRi9OVVBwMVZu?=
 =?utf-8?B?SnFpRFFGb3Q2MDFxbldlMkFweFptRWhqSUZDR3ByYThKWHV2VGRHR2R0dlNh?=
 =?utf-8?B?TG9VODdjMG1DeWVLcHIrQ21VWGpZQy9TS3BBeUlwRmJPS1lydXJKdFBVV0hn?=
 =?utf-8?B?cGYybTV4R1JiM0ZnVFhMU0tzSjRsQmpBOVc4b25TK2I0UUlRWXVaS05Eazhz?=
 =?utf-8?B?MXMxM3ZOMEdXaXFMZ2h2eG5vVW16OXlINVZGMzk1L0RVcXlnZDNjcjRORGND?=
 =?utf-8?B?N0VkWFZBbGlnblI5UnNWaXQ2ZmxsV0hwNUx4NDBtVG9BTUE2dTZ5UW5SUEFx?=
 =?utf-8?B?V0Z1UzhYaGNPMkY3L2cxbEU2eWFIVEVmZkpNSXd0eitoQkIyZ2lZWXpmV1gw?=
 =?utf-8?B?TnNXZGZSUEdZdXZzUGEvc1BIeWpENE1LNytVUm1aWjhGZ3RKLzVMSmVzUmgw?=
 =?utf-8?B?OGxRMXhONFUvZGRQOW9GWG5WK1RLUVUvQWhzRmF5alExeWZpVUtiWGJaMmp0?=
 =?utf-8?B?dndna1VlYnl5SEdkRXVCSmM2dDV6WVQ4MlFqekZSN2gzMXI3M09GbmpmNWpY?=
 =?utf-8?B?dzY3RDA1U0tMMXJjUysraWRSK3RpTEZiVnMwQnFBWm9wSTd3SVZ4eGVNWFJN?=
 =?utf-8?B?T0c1NTM1dVJnN2ZIQUV5SEI4Z1BrbEYyTGN2OEVBc05JQ2hpZzBQa2NXSmd4?=
 =?utf-8?B?MDdsam9qUmd4YllkVTdhUU5nWEdOcU84WTBFWHluc3lHY3gvUlJQNmROWHh3?=
 =?utf-8?B?aGFXeHlSVzhlMHk4eEgvRFpsTE9ZWEZsdFFUd2JtZW91MWtMVU5RY3p2d2k3?=
 =?utf-8?Q?ZUQ7YbCIRm1HvN/5E3E3ebh8w?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 4050441c-69f0-46c4-f7cf-08dbce5774f1
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Oct 2023 14:52:02.3792
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: NpuEIE171aoyF7T4O/Zx0E0caFhXLE0Xkg02AbnFCUkbtEFP0ubtKQmjWZIL4jCghqZFQtMya4YE/KNqf2+L7w==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM7PR04MB7157

On 09.10.2023 08:54, Nicola Vetrini wrote:
> --- a/xen/include/xen/consoled.h
> +++ b/xen/include/xen/consoled.h
> @@ -12,7 +12,7 @@ size_t consoled_guest_tx(char c);
>  
>  #else
>  
> -size_t consoled_guest_tx(char c) { return 0; }
> +static inline size_t consoled_guest_tx(char c) { return 0; }

Why inline? We do so in headers, but we generally avoid "inline" in
.c files.

Jan



From xen-devel-bounces@lists.xenproject.org Mon Oct 16 14:52:44 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 14:52:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617694.960545 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsOxY-0000vj-CL; Mon, 16 Oct 2023 14:52:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617694.960545; Mon, 16 Oct 2023 14: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 1qsOxY-0000uh-93; Mon, 16 Oct 2023 14:52:44 +0000
Received: by outflank-mailman (input) for mailman id 617694;
 Mon, 16 Oct 2023 14:52: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 1qsOxW-0000uL-Rk
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 14:52: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 1qsOxW-0004y6-B7; Mon, 16 Oct 2023 14:52: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 1qsOxW-0003Aq-5U; Mon, 16 Oct 2023 14:52: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=pB77ockGoewyVqYBevlh+0bh0VxhXVuVg4dO4hMK4LE=; b=edTYCX+rJ7f6ctXUSN1bGrPpxP
	XAf7LHqZWZHDLmQcC0CMdcxZZEFUz6u0R3J8anY2RRuGoQgo3m1zNoriIjniLcDQK9nrTpirIbED2
	c0XQvxa92MJ0xwqkO/MzdXUBdUFWY5i6sknZIpyuEEbxT8JeeQUu30Wwd0OMy+g7Q+SU=;
Message-ID: <703ec7e7-30b0-4c05-a208-65018cac98fd@xen.org>
Date: Mon, 16 Oct 2023 15:52:40 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v4 2/2] xen/arm: Enlarge identity map space to 10TB
Content-Language: en-GB
To: Leo Yan <leo.yan@linaro.org>, Bertrand Marquis <Bertrand.Marquis@arm.com>
Cc: Xen-devel <xen-devel@lists.xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Alexey Klimov <alexey.klimov@linaro.org>
References: <20231013122658.1270506-1-leo.yan@linaro.org>
 <20231013122658.1270506-3-leo.yan@linaro.org>
 <83ABBD09-D994-4DA3-8F10-15D87BCC2CF1@arm.com>
 <20231016135427.GI928468@leoy-huanghe.lan>
From: Julien Grall <julien@xen.org>
In-Reply-To: <20231016135427.GI928468@leoy-huanghe.lan>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

Hi Leo,

On 16/10/2023 14:54, Leo Yan wrote:
> On Mon, Oct 16, 2023 at 01:40:26PM +0000, Bertrand Marquis wrote:
> 
> [...]
> 
>>> This patch enlarges identity map space to 10TB, allowing module loading
>>> within the range of [0x0 .. 0x000009ff_ffff_ffff].
>>>
>>> Fixes: 1c78d76b67 ("xen/arm64: mm: Introduce helpers to prepare/enable/disable")
>>
>> I agree with Michal here, this is not a fix so this should be removed (can be done
>> on commit).
> 
> This is fine for me.
> 
> I'd like to confirm with maintainers that should I spin a new patch
> set to remove the fix tag?  Or maintainers could help to remove it
> when pick up this patch set.

I can do small changes while committing (updating the fixes tag is one).

That said, we are in the middle of the code freeze for Xen 4.18. Any 
patch requires a release-ack from the release manager (Henry). I am a 
bit split at the moment whether we want this patch for Xen 4.18. So I 
have asked opinions from Henry (others can also provide some).

If it doesn't go for Xen 4.18, then Stefano might be able to queue it in 
his for-4.19. Otherwise, it will be picked up when the tree re-open 
hopefully in a couple of weeks time.

Cheers,

> 
> And thanks for review, Michal and Bertrand.
> 
> Leo
> 
>>> Reported-by: Alexey Klimov <alexey.klimov@linaro.org>
>>> Signed-off-by: Leo Yan <leo.yan@linaro.org>
>>
>> Reviewed-by: Bertrand Marquis <bertrand.marquis@arm.com>
>>
>> Cheers
>> Bertrand

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 14:56:05 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 14:56:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617698.960555 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsP0m-0002ZZ-R9; Mon, 16 Oct 2023 14:56:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617698.960555; Mon, 16 Oct 2023 14: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 1qsP0m-0002ZS-Nm; Mon, 16 Oct 2023 14:56:04 +0000
Received: by outflank-mailman (input) for mailman id 617698;
 Mon, 16 Oct 2023 14:56: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=BBjo=F6=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qsP0l-0002ZM-K5
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 14:56:03 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur04on2087.outbound.protection.outlook.com [40.107.7.87])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 1fee3018-6c34-11ee-98d4-6d05b1d4d9a1;
 Mon, 16 Oct 2023 16:56:02 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM8PR04MB7873.eurprd04.prod.outlook.com (2603:10a6:20b:247::22)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.35; Mon, 16 Oct
 2023 14:55:33 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%6]) with mapi id 15.20.6886.034; Mon, 16 Oct 2023
 14:55: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: 1fee3018-6c34-11ee-98d4-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=YdbEg3GRrShyKFvske5pX9Mm0LrKZ2YYdLH0lYJ0ZwfYLtUbngaX8JrQDGAqz6OVObjl0Pc2KgoX2KFAjNgTMAm2e/jl6xmSeK6q23o42TVyRadc+ZfqT1H/WtNeqcktCA2quxj+c4jc2s2SYoX4U7/y+MAbichHo48QJEiCFiRV/NJem2tc5T2oFEVZX2ptKMXJZlTVFkjnt8o4cMGMLe8c0WjVaEg6A80oDrjB4iNIvKMZhwKnNVEJpK4N7kqZ0/gN/JBcjDVTk2ihM8C8PAgZlMkg0jnI9UHJnPqMEAdDrM5lJGUTgOowmLlk3hs34Ir50CCo70ycC/NBBPQzYQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=NlLtZUIu1iGBTjgfN899h9SWB4IqzT2WKjg+cmWeNAM=;
 b=U8M3ZaL5vReqBIfNvp9+bB9FHKt/rdWYiVX9404CtGhmB2FyLtePLAlzGlGH4Ct8jUq387z9bgOIdfsvAlrfmRQJzpOlU/SaRPvkqfSp2aRbYFE+aP3Y9L4bUr1pU+rBdfmifmgilrRquy00C1LtJA5oPkM56dk+Y1MyfzM0zyPMwRzoQnd6pF+Pm7p8i4sLpiSvqcvv1XTtnTp/bsaeSmsfNB/E9MwhS0PHTYasrnNIa61/JQQ43XSvE/glxXEXJv7iNSY+GjTEpg4ZttR7CC0QjckGZBOraBUGayTnUBQIaRmaL1ETOPY3ajW7Mke53kltbOuUdx/sbO19aYlpow==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=NlLtZUIu1iGBTjgfN899h9SWB4IqzT2WKjg+cmWeNAM=;
 b=W0AjhrJxIbjVOUM8LgasZ+s3vxUMeZbqr1VY5KnKOlGQA16ttwvl9ZtNJwjv+cIzlF635v2N/kgkK5qjUiZ2RACeWeatfNA2H9+7tvb952da4RyvLCJXa/vokYY39BAlyZdNjYwd5s12i+ZqFtcya6RgewGXiDdJj6hGga5KxhX/uO9hAVMvGpuqIAxvPFm9i1uww0ssRo5I+4p4e4KXbliv2ULtsFiLMR6c4f7IP3QIygecQa+NhmaTGhMGZ2+Hdw3C2QHsXswyusdEwe1H1GkTADiZXPoD8AYybeyvCQAG3Y/XFRwCokJMJAzBJ7GVGME4wn2lmuGrtAG+Rmffrw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <35528dc6-dbc0-3f3e-e774-c2fe4094bffa@suse.com>
Date: Mon, 16 Oct 2023 16:55: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 for-4.18 v2] x86/pvh: fix identity mapping of low 1MB
Content-Language: en-US
To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
Cc: Henry Wang <Henry.Wang@arm.com>, Andrew Cooper
 <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
 Paul Durrant <paul@xen.org>, xen-devel@lists.xenproject.org
References: <20231013085654.2789-1-roger.pau@citrix.com>
 <9aaae72b-fdcc-b48b-1155-e1cb0401d7d1@suse.com> <ZS0_zPxGLwfsuVvX@macbook>
 <879e6934-93b3-e260-770a-966cf8bcd2f8@suse.com> <ZS1N9wZ05ebun3WJ@macbook>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <ZS1N9wZ05ebun3WJ@macbook>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR2P281CA0104.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:9c::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_|AM8PR04MB7873:EE_
X-MS-Office365-Filtering-Correlation-Id: ff35dc62-d0d4-46b9-6fbc-08dbce57f271
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	bvCmCjEh+UfDhNBbQbqRZEnnAky/4PJwu6rnycV1Fle2vhYkFW3lIawiZ6MuP6v6xLc72VxedmdC6COc627trxXHoGEJxSKZJUZ7UoZQCll6a8F/WtgYHZxyPTN64crgfXonsQgf8xFe8lVlIBonS9CY2ESph52XkDKncL9AeTuPH1KYE6OBOC36b6QOrW0xGI25YLnZfyo5loiml8kykKkgYFlj1AwSkJLAmWQg5cAk1WLqDRuFxO9CMJpjhxXNjbLk15+D89ZoC1SOlpLl73eUwWxY1gggkDHZFsFNHViXJS2BbbEVnAaFGwAUb4g1vg5Pr9AIyfMZbnkV5pzkCwAZjO6VZfIdgAs5IipXN16hpyFVtY5w0S4BGrWIaOlGsnvHcGNpUrTtjSqZ+xSSzEQtvCbxqW3jXecJm+zYpxPSWSS6zbPL60rLHVUGcZXVKGpJtBj9NyZhFQgBq75daT8jYqX2mhMKRQWGiy3LU9+6IH9A66QlN5NcsIObZTSOV6uMHcmDNoqhzT36ybwzai1Jo+YotNJJGNMWQSo//NiJvbAZrNWWyila8EodpM15gdpzV3Ge0Q+m9NhSWoG9e7tFM40roVwF08Vh98CGmKBIzO8CQpfS6aUpV6sO6dd48fRFAmv7A2S+wmQxApdScA==
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)(136003)(376002)(230922051799003)(186009)(1800799009)(64100799003)(451199024)(6486002)(38100700002)(478600001)(2906002)(6512007)(6506007)(316002)(54906003)(66476007)(66946007)(66556008)(6916009)(4326008)(41300700001)(5660300002)(8936002)(8676002)(83380400001)(53546011)(26005)(2616005)(31686004)(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?NG5HajRmaFZkWlZVUyt3K2x3SGY4Q25JRVpaeUFUT3ZNQTEybGdqdmMrdlBt?=
 =?utf-8?B?ZENERnpLQStiTUlIUjVreFpEL3FITWpyTDNrUXIwVmFxcHhPNEE2Uk5iUDdy?=
 =?utf-8?B?cDBSL2NHcHplaWh6TlVHS0Z0RFdxcTNRbENRdXhLMG00OWwyL2VJUENqYjJo?=
 =?utf-8?B?VElyTU5pZWhNRldFRlJnRmlKenBOaWM4N0ZxK0FLQm52TkwySVR0YVEwODFj?=
 =?utf-8?B?Tno2cVdiSndnSWZ3TXBPZTk5RW1GMjBoNUJjZ1cwcm51b0N4VFVjSlhvM3JP?=
 =?utf-8?B?cVdVOTFNbzhOMytzNjhtd1NzUkx1SE5ZamhsWDZXK0VTcUJ3SUtJRmpKV3Vj?=
 =?utf-8?B?Y0pIWDFXd3lyb3RDN2x4a0U2bVdxZlF1cW1mNFM1MlVqOFhDY0FmcmU4OUJ6?=
 =?utf-8?B?bzN5TzQwZlRUWWRvd2hxRWFaaFBRc0FyWlRubm9PQUdUdkFCVyt5QWVrcHM0?=
 =?utf-8?B?dDM5YTZpZk8rbU1Ic3ZQcEFtbER0cERKaTdwT2x6ZmdRSVdaM3pldm5yeTJu?=
 =?utf-8?B?TWltc2Z2dnkzTGpnU1RMQ0hTWWZZdk1LY1N4WWxqUUE3QXVHcDZ5ZEMwaWhM?=
 =?utf-8?B?NTg4UjE3R0VuZ2JtbXhlVDJlRGZOaEtVcEdYYWRrVnBVMzh4U2RYVCt4ZE0x?=
 =?utf-8?B?MmRKMUhiZlRZajVFdndKRDVDVURBRnNIbGlyUGhiQ25kbUdvK3l6QWZFQi9L?=
 =?utf-8?B?WDhpcUxXenpZR0IvSS9oL3JYelhtV09uaWV0U2RwNDRKWEM1UHpDdGozeWk0?=
 =?utf-8?B?Rkg1MHc5bE1jWDlmN3ZWeUR1YnhHUzZtNmtqYzJNa2Jqdm5NV1VXa2hMYWtk?=
 =?utf-8?B?NjhpckVaUlc0RmMwdy9JV0Q4MWVwSlBocm5pMHMyRGZvWlFjaEg1MEdSd2Zj?=
 =?utf-8?B?L0k5ZGtjSDBLK1NNa1Vqb1p3N3IzTHhLZTMwWGpOMy9lN2tiWjAyc3ZnTXVK?=
 =?utf-8?B?ME5BTjdZM2l6ZzJPcmh2TzR0ek1udzhpRDQ4Mnc4UkxRaDJVc2d5OTBkUEh0?=
 =?utf-8?B?bGxWTjF6YWtjSnpMNzdBZVNYcnBDNlVON1laS0lNMTlDMmo1YUtoUGRjUE5U?=
 =?utf-8?B?VHpTb0k0UGMwdVFVTjl0NEQydFV0c3RkeWJGOEx2ekZMOUhIWklPZnlyeldp?=
 =?utf-8?B?bWFkMUhKbUFhcHpKQ0liVHJha3FZV1lNdGFQM3FNTzhUVXpGTTc5N0ExRW9n?=
 =?utf-8?B?SjhjTDE3cEpTbHFucEZFMkdPVXFCTUhBTkZrVHprQ1NEdkhQcVo3WFZLWk5N?=
 =?utf-8?B?aThTNkFwZjBrZ2lxZVNrckllcmRobFArVmd3b00wNFBneTVXa2NxQUhJUTdC?=
 =?utf-8?B?dHprTnptTE1rTk9RKyswQnQ1cHFhZ1NuT3lXQ285MWMzUXJHdElHa2Y3Q3dT?=
 =?utf-8?B?WVpFTkFZMTlJdVNYR2t5VlVOVWxvc1VURmpJZGNiOURsS1JrbGNhVDkwUjhz?=
 =?utf-8?B?Ulc4UTVRNEFIRDVvdkNrT3ZzdUxjd3BxWkNRbS81SjRRWHM4VlZyNk81ZGR1?=
 =?utf-8?B?OHZ6eGtkOU1Ua3lxYW1ORTR3N1l4emRpNXJoZklrcWg2V3dQUmh3cjZCT3gy?=
 =?utf-8?B?dExwRzBiMWk4Q0VyeVRnVklzUTBxRFQ5a3ExTjZuQ25RdFNLWk82Sit2MmZY?=
 =?utf-8?B?K1l5ampqVWNubnlBKzhsMXE0VDhoRnFxY2RiVTVHS1A5emlpSnJDM3BBdTVk?=
 =?utf-8?B?cUNtL3pHUngzZ2xLaHV6WC96QmpaT3M2d0RRZ0VFTWxkTmhHNmNzcnN5TVBI?=
 =?utf-8?B?aHhEOXFpS2E4b3RYSWxlREFrYVpBM1gzM09hWmxYeUlxUmptY2pYYmt1NU10?=
 =?utf-8?B?cU1xT21HWnlYWnpQdlI1RVhaYlVQZHlOUVJtUXczZ3ZtM1U0dEdCN1JWOTVL?=
 =?utf-8?B?WVFKbjlmeTBKd3lGVVJheUk2aEt6R3NsV2ZOTnd3VldjSjNjciswY3AvdDBt?=
 =?utf-8?B?UmdFRU1zNEhzN04vTms2U21pa3F1UGdiNGxrVnBrM1l3cnVOR1lRY3pZSzd5?=
 =?utf-8?B?eW1meWxNSVZyS3NGbUhrZTQ3R0FFeXEvc2xTdUVBVTZQQmNtMklIdnY4YzRJ?=
 =?utf-8?B?YjY3MHlaeTA2dCs1NnJndmZqZGVBS0xMWGo0WUc2aVNXL1cvdmFBb0hYRGY4?=
 =?utf-8?Q?s1ESck6Fc2/61lqFgigZfx1Ev?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: ff35dc62-d0d4-46b9-6fbc-08dbce57f271
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Oct 2023 14:55:32.9128
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: CCefvgtxlIHe7WmxcnGwIo0OrbDTs+lHBBeOGYFdJc7/81NXdgLu3363PBJYjF1qnTd2jY9gzXKahC2vO2msrw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8PR04MB7873

On 16.10.2023 16:51, Roger Pau Monné wrote:
> On Mon, Oct 16, 2023 at 04:07:22PM +0200, Jan Beulich wrote:
>> On 16.10.2023 15:51, Roger Pau Monné wrote:
>>> On Mon, Oct 16, 2023 at 03:32:54PM +0200, Jan Beulich wrote:
>>>> On 13.10.2023 10:56, Roger Pau Monne wrote:
>>>>> The mapping of memory regions below the 1MB mark was all done by the PVH dom0
>>>>> builder code, causing the region to be avoided by the arch specific IOMMU
>>>>> hardware domain initialization code.  That lead to the IOMMU being enabled
>>>>> without reserved regions in the low 1MB identity mapped in the p2m for PVH
>>>>> hardware domains.  Firmware which happens to be missing RMRR/IVMD ranges
>>>>> describing E820 reserved regions in the low 1MB would transiently trigger IOMMU
>>>>> faults until the p2m is populated by the PVH dom0 builder:
>>>>>
>>>>> AMD-Vi: IO_PAGE_FAULT: 0000:00:13.1 d0 addr 00000000000eb380 flags 0x20 RW
>>>>> AMD-Vi: IO_PAGE_FAULT: 0000:00:13.1 d0 addr 00000000000eb340 flags 0
>>>>> AMD-Vi: IO_PAGE_FAULT: 0000:00:13.2 d0 addr 00000000000ea1c0 flags 0
>>>>> AMD-Vi: IO_PAGE_FAULT: 0000:00:14.5 d0 addr 00000000000eb480 flags 0x20 RW
>>>>> AMD-Vi: IO_PAGE_FAULT: 0000:00:12.0 d0 addr 00000000000eb080 flags 0x20 RW
>>>>> AMD-Vi: IO_PAGE_FAULT: 0000:00:14.5 d0 addr 00000000000eb400 flags 0
>>>>> AMD-Vi: IO_PAGE_FAULT: 0000:00:12.0 d0 addr 00000000000eb040 flags 0
>>>>>
>>>>> Those errors have been observed on the osstest pinot{0,1} boxes (AMD Fam15h
>>>>> Opteron(tm) Processor 3350 HE).
>>>>>
>>>>> Mostly remove the special handling of the low 1MB done by the PVH dom0 builder,
>>>>> leaving just the data copy between RAM regions.  Otherwise rely on the IOMMU
>>>>> arch init code to create any identity mappings for reserved regions in that
>>>>> range (like it already does for reserved regions elsewhere).
>>>>>
>>>>> Note there's a small difference in behavior, as holes in the low 1MB will no
>>>>> longer be identity mapped to the p2m.
>>>>
>>>> I certainly like the simplification, but I'm concerned by this: The BDA
>>>> is not normally reserved, yet may want accessing by Dom0 (to see the real
>>>> machine contents). We do access that first page of memory ourselves, so
>>>> I expect OSes may do so as well (even if the specific aspect I'm thinking
>>>> of - the warm/cold reboot field - is under Xen's control).
>>>
>>> The BDA on the systems I've checked falls into a RAM area on the
>>> memory map, but if you think it can be problematic I could arrange for
>>> arch_iommu_hwdom_init() to also identity map holes in the low 1MB.
>>
>> Hmm, this again is a case where I'd wish CPU and IOMMU mappings could
>> be different. I don't see reasons to try I/O to such holes, but I can
>> see reasons for CPU accesses (of more or less probing kind).
> 
> Hm, while I agree devices have likely no reason to access holes (there
> or elsewhere) I don't see much benefit of having this differentiation,
> it's easier to just map everything for accesses from both device and
> CPU rather than us having to decide (and maybe get wrong) whether
> ranges should only be accessed by the CPU.

I understand that, and I also follow Andrew's arguments towards not
making such a distinction. The consequence though is that we need
to map more than possibly necessary, and never too little.

>>> Keep in mind this is only for PVH, it won't affect PV.
>>
>> Of course.
> 
> Would you be willing to Ack it?

If "it" is the present version, then me doing so would be stretch.
How averse are you to re-adding the hole mappings?

Jan


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 14:58:26 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 14:58:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617703.960565 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsP2y-0004Uh-8d; Mon, 16 Oct 2023 14:58:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617703.960565; Mon, 16 Oct 2023 14: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 1qsP2y-0004Ua-5l; Mon, 16 Oct 2023 14:58:20 +0000
Received: by outflank-mailman (input) for mailman id 617703;
 Mon, 16 Oct 2023 14:58: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=BBjo=F6=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qsP2x-0004US-FA
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 14:58:19 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com
 (mail-db3eur04on0626.outbound.protection.outlook.com
 [2a01:111:f400:fe0c::626])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 70cc6e0e-6c34-11ee-98d4-6d05b1d4d9a1;
 Mon, 16 Oct 2023 16:58:18 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PR3PR04MB7403.eurprd04.prod.outlook.com (2603:10a6:102:8b::10)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.35; Mon, 16 Oct
 2023 14:58:15 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%6]) with mapi id 15.20.6886.034; Mon, 16 Oct 2023
 14:58: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: 70cc6e0e-6c34-11ee-98d4-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=gv1dMZh8OAGthC/Hjaw3NXO3bxaeGV/aoVU2cIpS1pmyvLZ14ndGUK43wdh+OvGacxOPoA0bvgZG3ZAknbdPLuZiYz4uppCVCb4roNKMOYGa1w0+bRbRlpD6E01+19gf6jXIBDfipdDhPaO4jCI+RDx4eSK4DoESwF9MDGo7dCcuipObhFfhhFmakBFz/IfRxi8b3sp9JvmluzLH6NcVfn5c8UVooIlPVtVp5kZ6DQRYFEwZb59NHwZvHi3irsEgUtc8KzGx5uB7v80OWA9D4+l66p8D/kCu3gjSJQ/DxeZ0vflTQw0xH71gjGqWoUYq9+xLKXp1mamjiug/dOWjwA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=6eM7keAu2fc1cCD9Ixxhsz+zh3NWnS7hgkywVO2kXss=;
 b=SEeb0iyAf9ySlvg+XV2503jnNczKpCawf5zU5iDzI0uVosxn3W6UVlh+Ao0wSWV/9dNrqivPqGS4uPm/QXYPh1y0redNPP70c9n/1kCrrVJyALdSlWOVNC4X6xyPibBx6SbpH0LCMpDRCyrWle5rQNFUhxbhyzL+q+M9Aoa6PEePvCNoUODg2OlxKig6dLd4MwSBCcSfzfdAgTatpo6fKl53oA+FmIBWVCQ9DHJDLjvnWieiZIN7VLoJdrcIdNKlCUKwsL5rDHnN5Mjb5elVP0PCUdaNIYEXB0//mRBnl23BbLYPT6pdwNfH+/xNxUEc8uZjhDMin02pKsjzfMouow==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=6eM7keAu2fc1cCD9Ixxhsz+zh3NWnS7hgkywVO2kXss=;
 b=I8J8v1orHfLyh+jsSEipTNrar+b3BFr6Hz/ZloRvt4KfgoxMP3HHZ5GiYPIQUl8WZck1C07OktHIKHXGfWvDapEC21S6aBoCANuaj796GAZOc07zgDYa9Yft6GdDu+XWk9ymHuD9d42i5HSv/nJb/BPZhEgh2mMBQLANid6PL5hOWZfAVF06FRT/6oKgaDEoF+nH1W9G2v27+Gs1q7dUecOoCwtNzKHJ6dicG0qlFIWevt/Y/lJySIwFyzAhcAsgsvuI7n6B9ZT5DL+Jt0VrmNl/bJJ7MffCjTpyTC1I0Rd9ywcyf3xIlkx29y52a9I9SYd++GilUAAbZWnEaA6jeg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <afbb7307-50e0-047a-807a-1bcf0139f5d3@suse.com>
Date: Mon, 16 Oct 2023 16:58:14 +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 2/7] x86: add deviations for variables only used in
 asm code
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.cooper3@citrix.com, roger.pau@citrix.com, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <cover.1696833629.git.nicola.vetrini@bugseng.com>
 <5131b75996d0b91d4a98466f11dd927be910d7e5.1696833629.git.nicola.vetrini@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <5131b75996d0b91d4a98466f11dd927be910d7e5.1696833629.git.nicola.vetrini@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0038.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:c7::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_|PR3PR04MB7403:EE_
X-MS-Office365-Filtering-Correlation-Id: ec56f761-ed2f-4242-bbfd-08dbce585399
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	wd+8FAjHv0AACbXwL4Si5b4QXlQOaF4Hh/tnadMqeYtHkLwz/wmpRN5Hd3XWpbBlA/sJL+VyIVpFMOFXWYBcFYK6rnxafVCBNHQL9w3xkPQsMtTwpDfiPfMzl/I9iu25qKsSZo46TMPfycQaiXOv4+B6JbD2dgWISBxUmWNC4+XAMuOvFvjUmIFM/jCtLoshiXl7a0TJuSt4EJBld1nfbTK4TLa2wC6rDJR2Y4wR6vZs44Z7xArbQbUBha8MsTqEjhB0VMXTzO5inyGL3qGHhWSsUpnQEPiOnDaLkKjGMg8j4GivU/wRYGP9HaXAmdgNTmYzYk+lTnNz6QwgA3RtFYJP795HL0zV1WvQyNsVwEgz+JzTF1e3vxFTlDGZB3pybqfHaQYkbbTgqZsYQXev+lPpkzrIPEo7Yk4yvMLveCFdlXEiE7Ip7fCZQu7p5faHWL4VtJibrKRKv6zUGrrLDSrOS1vnj0rSmf4IIVFGXrtbbBlv/JF35IetGBkmh3bdA4R0Bjcm85QMZNed//574hCdwXp9SnrNA20qdFCR/WtwNDgWvFNeZKf5dQkwoQqlAKnkqSwQLpQZkuI0XfvyoHo79vFwlymzKFbzn9Ihn0PtCZg+ismU73BU9e9k6y1nfeFH0fRZ3CRpyiPsrFFSiw==
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)(396003)(136003)(39860400002)(346002)(230922051799003)(451199024)(186009)(1800799009)(64100799003)(26005)(2616005)(8676002)(8936002)(4326008)(5660300002)(38100700002)(31686004)(41300700001)(478600001)(31696002)(86362001)(6486002)(7416002)(2906002)(316002)(6506007)(6512007)(53546011)(66946007)(36756003)(66556008)(66476007)(6916009)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?N01ONGJHaEcwT2NOZDRXNHFBK0EzSUZtQzdvSkJ2UHR2L1ExcXNoYXNrR2VD?=
 =?utf-8?B?OURKaXBjYys2V29WM0xOc2NmOXFxRWNUVllyK1p5WGtCZ01HQzhYU0FUK0Rn?=
 =?utf-8?B?RGhRL2xWZHYzWXNLaWNwSW1rMWc5YkF6a0xtVGJYWmZXcUxuQnV4RmVvOEo0?=
 =?utf-8?B?ckNpQVF6clVXTGQrV1dOVDhoSVdWZTBEMXJLSGJnbUxPU3JhdTZCSldmUVY1?=
 =?utf-8?B?RVhwOFJoTEZXOHN0TmNobzM3bTNFNXVrN2xEUmZqdy9uZmtmc2RsYS9NcnI4?=
 =?utf-8?B?a3RJZHBNdFpSUFdIZ1FCZmNGeklFdkkrRkhkZ0o2Qys0N29QVGRTOURSS29E?=
 =?utf-8?B?WGxCcmYyOTZGMVlmemRhRHN6OUdLSC94Q3cxK3RGUVo2ZGtHaVVjM0p6YWVC?=
 =?utf-8?B?dm9NVkZqWFJHRURNVFU3K2xqUGU1R2ZsZTdsZWNVd3h1RmVvSWp3bHFNTTc1?=
 =?utf-8?B?Z3BIUVBwNkJWWlg2UmFxSEpBZlJ4b3ljcmY2aTJPNksrZU5ZcHZXZXZ2ME1D?=
 =?utf-8?B?MlBQVk1xZURzMlk0Nm9NOXNmMnRTdVhxTytLSnBsMnNBWkM1WUw2VFZua2pT?=
 =?utf-8?B?aFZnRHo1UjRtOEZ4TUZtMHBHalZMWnNQOGpwVmI0RW1CNDdzaFZsdFI4Q3F4?=
 =?utf-8?B?OTFnQVlZRzArc3psdUtPcmtOVkhTaFU1ZTFJM2dIUVNBK3RIQ1djRlRNczFO?=
 =?utf-8?B?Z2c1ZHBVWExrREgzZlhrdWFxZ3llTGZEREdKWDI3NGV5LytNNVV1RUhXWXpE?=
 =?utf-8?B?dkJpU0c2Tk5Kc21IU1RxbnVMK2dMa20zMDRZc1BsQkhudG4zSFF6cStWZlpi?=
 =?utf-8?B?VUtIUmVTa29STldZdThQTjFIZEhoUnZ1SjREaGRUdGs0OEE1R0ltTTA2bTdr?=
 =?utf-8?B?c3JzKzYxYjlianNwN0xkZmhhVjJmLzZhb3VXUXV1RU56SFJCRTBUWk0rNkUv?=
 =?utf-8?B?UjlxU212MmprZTg4S0JwdGJLMEFDWVZPd0tJeHVhMnRmWEZFcGZhaWZpMUdk?=
 =?utf-8?B?MUVpVVF6MEhTUU9HWlhNeWlkYnFucXhhaVhBaDNVb0JXT1lqVVdGVEpSUzFx?=
 =?utf-8?B?aG94ZEFLekdrOTZwMlowOFUzUmNGMkttK3BMUHdmaVlZNVlxdnRpVUFrL3o1?=
 =?utf-8?B?N0ZSVHE4bnM5RFFMQmtIUUJaaG8vS01aNTZ6MFFMbnRESGs2R09PdnZJOTJM?=
 =?utf-8?B?VlpNMENTSGlJcFpNU3BNZytMdW82SlJTeVFKTVdlTGIzdWx1Uy9ocHJjVlB0?=
 =?utf-8?B?TExmZ05tZDNSdHRSNnVpMmV3MTdDYUlzaGt4OENJSzIwaWZUTjY0Q0k3dzFO?=
 =?utf-8?B?ZFdzZkZ0cnc1dGwvbkJIRHBaZWhsczUvRTVkbnBiM2FQc2twSEN2aTdIQnMy?=
 =?utf-8?B?MElRNGIzV0ZweUxIRDdJYktBRnVGeUVra09jZlE2NW9KbEtqSUdqVDNLRWxv?=
 =?utf-8?B?b0dvcW45U2N4NUsyODlDZXVkMENBRXVvby9nNFJmVlNBTnB6RmpFRDRvaEJx?=
 =?utf-8?B?Yy9QclJRY0FGT3NVRDVpalZYaVhxQ2RuNUF2eE0rYTEvVzc3RUNWTjJ5ZmhL?=
 =?utf-8?B?dXYzWklOVWxqd1JTV3lsUHlOSTdUTjlkaEMyL09jeit1TEZlblFJSGhiM2Fz?=
 =?utf-8?B?M1VrdlZrR2RPZXZCYldnL1pnaGV2TVdvTUJlRFBQeU5VVU5UcXNxVmVjVDdY?=
 =?utf-8?B?K3k3Vy9JbEdYS1ZWYkFkVmx6RTZIUnVQaTExSGFBT3FLZFJwZTBTcXgwUHZV?=
 =?utf-8?B?aWwwc1VaVVJQSkhWQTh0WVRHaFV1Sm81bEZiSnZTRzB4cFZtSmp1bFdNOE1i?=
 =?utf-8?B?WFhTR09DNUxldC9yb0N5dGNvZDFreFQvdGZHN1BzZ3hBMDc4M0I5ZVU2bUFl?=
 =?utf-8?B?bk96cW9kSTU2SGNEekpMMmVxN01iNWdvMU9pMktwV1d3VzhHRktUYU5LVWY3?=
 =?utf-8?B?ZzU1SVd4NmFUWE40TmpvZWhVcEN5L2FEM0ZCelhCSlArMldoQlM1TGFwNDZ4?=
 =?utf-8?B?K2NLLzVjTENibnpzL24wTzlpaDc1TVYwczlGZEl0VnRXdlhObGlucldtMlRs?=
 =?utf-8?B?WEdnQmVQNkYwVkQ3Vkc1QXZka1lYL1pZSU1TaDNwNE5ITXJSSHRFN1JKbGxH?=
 =?utf-8?Q?c9V6NU4B0TZCqWGk4rqiXTcFK?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: ec56f761-ed2f-4242-bbfd-08dbce585399
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Oct 2023 14:58:15.9322
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: WfuLyIUFvg7ylyZ0fzUSuG7mgzINkbGEvlNWPhAsURQRlu4ZE0nRyVM76cQ886u8EgnxGhM5NUCOPQNCqyoVuA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PR3PR04MB7403

On 09.10.2023 08:54, Nicola Vetrini wrote:
> These variables are only used by asm code, and therefore
> the lack of a declaration is justified by the corresponding
> deviation comment.

Hmm, you say "declaration" here, but according to my understanding ...

> --- a/xen/arch/x86/include/asm/asm_defns.h
> +++ b/xen/arch/x86/include/asm/asm_defns.h
> @@ -31,6 +31,7 @@ asm ( "\t.equ CONFIG_INDIRECT_THUNK, "
>   * gets set up by the containing function.
>   */
>  #ifdef CONFIG_FRAME_POINTER
> +/* SAF-1-safe */
>  register unsigned long current_stack_pointer asm("rsp");

... this is a declaration, not a definition.

> --- 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;

Imo such comments want folding; question is whether the tooling can
cope.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 15:00:46 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 15:00:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617707.960575 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsP5H-0007g0-Kr; Mon, 16 Oct 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 617707.960575; Mon, 16 Oct 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 1qsP5H-0007ft-Hu; Mon, 16 Oct 2023 15:00:43 +0000
Received: by outflank-mailman (input) for mailman id 617707;
 Mon, 16 Oct 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=BBjo=F6=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qsP5G-0007fl-MJ
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 15:00:42 +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 c655b970-6c34-11ee-98d4-6d05b1d4d9a1;
 Mon, 16 Oct 2023 17:00:41 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PR3PR04MB7291.eurprd04.prod.outlook.com (2603:10a6:102:8c::21)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.36; Mon, 16 Oct
 2023 15:00:39 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%6]) with mapi id 15.20.6886.034; Mon, 16 Oct 2023
 15:00: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: c655b970-6c34-11ee-98d4-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=hxz5dPWM3mm/vlQlUKWo7YskWR6o4PN58mrlakFeQu9E9QUKyxQGke4By5h192uLpnR2QWXGEA32N43EVr8KJHyopndst/o6CEfFCIQzlmH6L19bFzoqhPapeq/y01JviYrwh/cuoSO0+GaqEx6f7HBy8Zppdn9fT3frV+AdCf37Kb0AuhxmUFADk9wDQkcDmh8kmvR04ZN5qp/AXgQSj+4goXOV4krLpiPvytLRvceJ0pmgXRX9yHlpBtLfUoabjAlUDMFbmR9pmO4oKUv0B2wF7dPAPgYhz0jiz5aUaw6ZiuE0bEcdhK9H/7QxJC7zLQhPtlxxqvIm6+vjMkkV8w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=Tg9/GFYyGyUVGOQjMU63LgqXeYDpBC2GMuNdmMdhzZg=;
 b=cmBqqOaTGEwBZ6bRCvi6EP+opPpiQUda8cMWGaIkLMHoW7WE8IPsPjF/WbqwEJjDiu6Do4B9dAY8VIN0W3lFPF0zt7LuG0w2Z9YAep2v4KK9U4+cj4OhN4PGy0XEuLh6BxS7pVw23g6Emiq23knUahf0zIHsXMApoo21zjnd1SuRWs4hosmRI8XLJCXSG7EQ5wb8R2ZqkHUntPUbZyu4w+1HhqLuuuHaX+d1LaDPX15GG8S6YXKdNyt7tIFqDdnmiBdRhli9whQXgMWSWej2BStthfOCj38MzIOWRtdqE/MNKqF98kGOOCBPKHfnEwIRfADtC7I3OyYDqnCyKKqdsg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=Tg9/GFYyGyUVGOQjMU63LgqXeYDpBC2GMuNdmMdhzZg=;
 b=eR1tTsCHuhuzNAJgjMCQXxXW59Gr+aj8wyednMEMgaMMOuVd+xZEto+Q/96BLbiIz4UFBO07Pbh9c3xR+1LUAIVBT/Expo7GBIp8MT4TPR1yMhIOkKbOM6wqJdY+oN0QZ3wqslfF5PPNRZ7MB/IjueJWqNjf4EeutY5qqUorvWDDSWkL4nTJNtBIoxV9aVOjeOTLD3U7s5do83O9g0BgdE5p7nbgedTWPCgq1z6rTLsL4MWqBscW1CfChwYXPtgBoOQlRuVSQBMO9tE9kzxu0jvj7WWOZBYGpoZh5VPcJeRIkiK7WL390D8j6n06o9ywddgIKGjn3FF8ZXqfx9bqLQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <741e81bc-050c-a773-e622-997b6c0b8335@suse.com>
Date: Mon, 16 Oct 2023 17:00:37 +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 3/7] x86: add deviation comments for asm-only
 functions
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.cooper3@citrix.com, roger.pau@citrix.com, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <cover.1696833629.git.nicola.vetrini@bugseng.com>
 <6476706490cc15406bcf3377a57b7c4a303c4901.1696833629.git.nicola.vetrini@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <6476706490cc15406bcf3377a57b7c4a303c4901.1696833629.git.nicola.vetrini@bugseng.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_|PR3PR04MB7291:EE_
X-MS-Office365-Filtering-Correlation-Id: c6b6fba0-0127-442e-8289-08dbce58a922
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	M19eZtq5b2M6I6DUMLAgtRBMLDusspg9sBIIhmrMTArlKZdhHiMp7Gco2khpC2udbIjz+UszrMj94sE2scJBpIsNIwOp30OEBNXJ5tJU+ec2k5gJUEC6f3Sbl4BoOMHCOeHblK+lY3qav2iRbfEH+zaeAjcuE8c/kOi9dwAWlTgPHTcDmf+N+SrSMRDKEpdOvoBcfJNNJiHAHs5awZBwN5oo5WsoARJC/B/Q7QMXj4YDE4ZhLmEbJ8N/1zb8/xtT/u/5QO6jxGWPfV2Kqrhdf1I5XegDW+k+oBR81VoHs7AAIJymjeWx2i0RUDgR3O+GfZ8SPfodbH0TwSrm7KSMjrRa4TE2dl8fYRRu9XhE3pkZ2MH6A0FCTnYfE6ncIEyU7CDPlsdMFP4gDxoRmAF4Cabj9HiwHsLNl2GthQN7nUOyTYMcga9gboQMhCoTi2OTZzBLn5t9BkPcGl2p0CBQ+aTDsQ8CXRutm5/bhDGWvKmrPMescsgG+YWy4L+sREjJ+F7pArzWTYe86eZdlioG25HybpflPjaA6vmo8k0g3HhxGXOddz4h++usL0LFJxaymDfCOCCOFDvTG1PUEOtnElg16N4hEfP8zYPvw6v34in/Bs2E1clswcbcSaTpK6zdsdSxlXAdTotiX3OYmOg8lA==
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)(366004)(136003)(396003)(39860400002)(230922051799003)(451199024)(64100799003)(186009)(1800799009)(31686004)(478600001)(6486002)(66476007)(66556008)(66946007)(316002)(6916009)(86362001)(31696002)(38100700002)(6512007)(26005)(53546011)(2616005)(6506007)(36756003)(41300700001)(4744005)(5660300002)(4326008)(8936002)(8676002)(2906002)(7416002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?UTFZbG1VNS9reWIzZUltMUFpOWFmcUtYYzFqMnJhVlBCMWNpemxjTUhVenh1?=
 =?utf-8?B?U05VUWRCMDZjVkZvcitkOXJHRjRUYjlrTFNyN2JIWWhtUTBWYTBPN0pZZ1pD?=
 =?utf-8?B?OEZTWG5GUElFVTFhRERMUS9hYlo2ZUtrNlMvNGwzamtUdnAzbVdxQjRERmdO?=
 =?utf-8?B?VXc1YjNGbVNsT1RjbUNUWDJqN0t1TXROL0dVdEY3RWRMVTBhUGhYQmp6eG96?=
 =?utf-8?B?QktSNTU3SSsxb3M3dUNJVUdXOGU4aE1MaGhqeldNVzNEQTBHb3JZSVBUWWpQ?=
 =?utf-8?B?QjVieGozRUxzYTI3MFcvdm4wZ3ljVkk4bCtaTWFhakswZER0V05DOEtoSHpl?=
 =?utf-8?B?VGJENEZnNXkxMmhLRFE2RDE0dzRIbVNDcWxUQTltUCtWL2E4amZRUFF3cmZ5?=
 =?utf-8?B?RDFWMVpXTUpLZjMyNTNkZ1VRS3ZMWFg4aHYycndsTVA4azd0TDJJK1gyb2No?=
 =?utf-8?B?WTlHOUNUQjNGdHBGUDFUUi9SYVh6YTFReTYxaFYwR2FYbmloYnB4OHFIWU9o?=
 =?utf-8?B?NFhGT3dxOTdDQjFxUXh4TDFHekVwc1NSYVJPaHNaSzFGamUxZVFHUld5a0Va?=
 =?utf-8?B?d3ZYWnM2ZnkxcGU5YWNKWXpSU2JaajFqL2JxUEYzTC81aEtmWU9Wam1VT0RF?=
 =?utf-8?B?d2lyd2JNaUx2T25WTFJQK296SmdVL1hmc3o0eVRPMkhUd1Y3anpqOXJPUm5P?=
 =?utf-8?B?Wnh6VU00dXlTL2wrZGcyWWFZa0JsVWVrRlZzRG1QZGcrYnFGaExWb3lzYW0w?=
 =?utf-8?B?UUhBcmdIVCswVHpkdUNXY0FNcEJwdDBLN1hZZWF3V05NeTE3UlEvaU9tdDhO?=
 =?utf-8?B?NDRwTnAzU25mRjBTWGYrdGIvZTdwTDlnaE00WWl0eFhVWVZhWWUyaEFoTkhD?=
 =?utf-8?B?SFpscjdXa2xNbTl1VjNHby9oTXM1c0ZNb1ZYSmw3NjZXREVZSWVzeWFtTmpW?=
 =?utf-8?B?ZGVTU21oSmhtYkE4QzM5TGt2VE1oTGdhZnN5UTExVGJqNGJQb0puRnN2bFJn?=
 =?utf-8?B?MFlWSWE1SThCQjVPT1preitVVnlyUkliWVJubDVqM2IwbUljWHgzYzBIMGxu?=
 =?utf-8?B?ZWpFeUp2bGZVa3NJRWR2NU00RTF5WW05UU1SQXdCY1hVZHh5OWphZmJNem8x?=
 =?utf-8?B?Z1VCb0lCOHpDWFN0dVNFVUdFOFB5QlFzMG1VbEpzcmJsN0x4c0l3UTczdEtS?=
 =?utf-8?B?aDZKRDFSUVNyYUhHNjFKM0tsbUdtT04zZUl3NHRRUGE2MzVwOG4zZWxZcGdT?=
 =?utf-8?B?N2VYbTN6angxN2Q5REhBQWVMYkZtR3hNR3NLM2JlWm5sUnczRDBjbjIwcE1F?=
 =?utf-8?B?Q2lPODNpTk5FWTFHYmR4NTZKM3R4Ukx3bFhoSGtsNi9MUjNEUkQrZjMwR3ls?=
 =?utf-8?B?bzkzd2JaZk12Y09IRk1iT3dBZUlHa3FVUXJEeElqQlM5cldrRkY5a2ZIQVBQ?=
 =?utf-8?B?dUhwU2szMmY1NTVVSVhPOVN5OXlGWnZXZ1R0TXpDeXhaZXhJeVNqR2JOMWZR?=
 =?utf-8?B?WnhyV1VqaktVN2lQU08wTXpQK29peFlFNm9NaXVBNGs4eFRjb3lGZGVpMTE3?=
 =?utf-8?B?eHFPL3VuOXpNY0FpWUEvVFQzUXlCL2xIRmhjR3YxZUUxM2RQdTFvNnlVWGx3?=
 =?utf-8?B?czdkV1pOUk1aUWNpTXQvTTRSTlVKN2c3endYZTVWSzRvN0dyZCtXNkh5Kyt5?=
 =?utf-8?B?cEFkUUV5SlFqRU5vcW1BWFZpMk5wbzZzakJESVJPUk15c0RaRWFFblZYRGx0?=
 =?utf-8?B?Zk1NVWpDTHc3T1JJdTBBNmlxOFAzWmZWM3cvdVdnYURzSHozU0tXRUlYZ3Bi?=
 =?utf-8?B?dkpFL1Y5TDl2ek82L0Mvalgyekl2L255UkZYTjhZQkRWTVMzd0NuY3RBaDcx?=
 =?utf-8?B?WUMxUENMWVB4ciszVGRpZXNIME4wRFhxTDl6VUUvc3Awa1Y3UzhmdllOQkZ4?=
 =?utf-8?B?bE0wUnJKZDZNSHhuTEJvMkZIZjdZZ0tMZGc3NWh5VkIyKzVPSm41c1U4dG9R?=
 =?utf-8?B?RjRYYzBSeWdQMWt3UG5YK1lGYldTQ20wa1k0OEhPZDBrazdHaDI0RGtMb1JP?=
 =?utf-8?B?MFdWZXphRTRiRjdFL2FXS1BXTlVGRjZGUnZ4SVdmamxPZ1dyeWVvbm1EN2lF?=
 =?utf-8?Q?wTRZp5ftvXMtdKsn6RrrOvko5?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: c6b6fba0-0127-442e-8289-08dbce58a922
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Oct 2023 15:00:39.4327
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: H6rOLcP5i8bJVGkk0/Smi+Mr6fOOO4hkXh09rXhBKOAJtvh74i7d1Oq4N+TUpnFCQA8tCk+bCrcHY9EPXw9y0Q==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PR3PR04MB7291

On 09.10.2023 08:54, Nicola Vetrini wrote:
> As stated in rules.rst, functions used only in asm code
> are allowed to have no prior declaration visible when being
> defined, hence these functions are deviated.
> This also fixes violations of MISRA C:2012 Rule 8.4.
> 
> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
> ---
>  xen/arch/x86/hvm/svm/intr.c      | 1 +
>  xen/arch/x86/hvm/svm/nestedsvm.c | 1 +
>  xen/arch/x86/hvm/svm/svm.c       | 2 ++

Once again - why are you not also adjusting the respective VMX code?
Iirc it was agreed long ago that scans should be extended to cover as
much of the code base as possible.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 15:03:29 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 15:03:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617710.960585 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsP7s-0008Sw-1a; Mon, 16 Oct 2023 15:03:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617710.960585; Mon, 16 Oct 2023 15:03: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 1qsP7r-0008Sp-UZ; Mon, 16 Oct 2023 15:03:23 +0000
Received: by outflank-mailman (input) for mailman id 617710;
 Mon, 16 Oct 2023 15:03: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=BBjo=F6=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qsP7q-0008Sj-Eb
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 15:03:22 +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 257618bd-6c35-11ee-98d4-6d05b1d4d9a1;
 Mon, 16 Oct 2023 17:03:21 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM0PR04MB6945.eurprd04.prod.outlook.com (2603:10a6:208:17f::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.35; Mon, 16 Oct
 2023 15:03:19 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%6]) with mapi id 15.20.6886.034; Mon, 16 Oct 2023
 15:03: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: 257618bd-6c35-11ee-98d4-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=mycsJGhfRCrZSwFZev4sNtA2J0Yr/LaDfk2yzFkKjVekbysu4g06GeKsdTk0QMwpLCYC2kq8pMcL0k2lrJkyIbCw0/F9r5tM8Nj7rT7atju4/jBL4fPLhYk/2r8n8BpHWrtHgThmzy59t+UVyYJBl/y+3I5OzlisCmbih+APId6MoVOPgoISz0ujQEGniUqLIFD04TQ4VcIQWJRdI7AsYAWAB/IMN8qcpfoBXGPmxeYMCcTP4YWjEMg1gtbxAEdPI26Jj4G0IcK30+cQW3kVx/F2HiBctZCZO6HF44f7ZQfHWkgCbElpHYWWtSzXar6IEkwIvMuJT00J3qh2vicBHw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=PU5HIoi95UL4N/1p0yZPLe3uRfBIYW3N3Uf3GNeXf5s=;
 b=XxpiAtOduDLqCs2KRMlqbH4tzwoiAl0k2v8G5FDwvUhw6ryj6+F99i+LPmmQcL0ih4UGp0UH/fgFcGXjDuZbk0kAue1lSXdDpZcIR7s0Iv8HbyCPKtN2yRbpq70l3JXhF/JE0Jt3CRbgUteeuQKipLIY+lqzE3C7zk+a2PVIpOgaa7eIl2t7HyWgEYZ+Nt64xXvZEPPJSBMY490JniI9127g5NNRXHD8AFQC+yVAwKbT5wyJPRqRs+e8qxsJPwuDNctZzGEBzs8Rw8xffZKenzBxaFec4IJ9S7yn4tQvDSSnqttIsxAll5XDgoMcD3xD9qaWFQG+p5EM+wc67O6Vow==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=PU5HIoi95UL4N/1p0yZPLe3uRfBIYW3N3Uf3GNeXf5s=;
 b=lxfyDUQquRSSI6QFwNIRPsGCxgApUJIO4cw+UHiHluYNHtqVs7TMuQn/rAgcGVb0HKRFd08measMu8gOCc2Jh7RA1jR1cdlmlURFyZrodhXBcv2LWhzl8D7i7SWhyjHY9zP+rqxl6xCJlUhuMGLS5snEjX8BrIE/G1wBDjjBxgDFQB045IUB/Or5I9xDXY4bXwmZmj88NKOxmkbXRSlhMoeGde4GyJ6Hk/7op2BPKZnSa+ZXL0bhjSZM/hwGoxdTqwIzr6w763NY3t3Y+Iol8QeuRK31yrdzvEgBGHo9Xoe5TPvn59BnpEoXASzZE5zOuqm9hEn5S6gSv0UTvwZziQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <a77c0ca0-7ed5-4c46-94d4-b4c5e57f506e@suse.com>
Date: Mon, 16 Oct 2023 17:03: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 PATCH] x86/msi: address violations of MISRA C:2012 Rules 8.2
 and 8.3
Content-Language: en-US
To: Federico Serafini <federico.serafini@bugseng.com>
Cc: xen-devel@lists.xenproject.org, 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>,
 Stefano Stabellini <sstabellini@kernel.org>
References: <d8023a832f77dc872a92e71c4df2da39ddbe06b0.1695978595.git.federico.serafini@bugseng.com>
 <alpine.DEB.2.22.394.2309291351012.2348112@ubuntu-linux-20-04-desktop>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <alpine.DEB.2.22.394.2309291351012.2348112@ubuntu-linux-20-04-desktop>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0154.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:ba::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_|AM0PR04MB6945:EE_
X-MS-Office365-Filtering-Correlation-Id: a6d3d7f9-ac3f-4554-dbfb-08dbce59085a
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	lxxn7hhCOgAY2Iptog4S61HQHhLJgJdqfv6FjNRLrpv+cteM5RrjeTJMfiV9sRefw5HlTce1mqSAeAbscOO5lUiwXnpsPTU0UVGWHyqxDP7T+iErMOXHShYGC/sqGXU9vKYsgT9POVMVDOfTS8slkoYWBdbZGFu9DU1QqmWNp0mrKpbZqKOecbboMZvj3DPNdu3Asx5JvuAmv56Po/RmRJj0TKJO6TiWDs6TtEkA6LiDcyA2voIBExBVvUyO2E59s/tFr/t5IKwyBYwBI58ts3MGMNXsolokGWxFgSpAVxHKbXrbaBlhZDjf9ckeXq/TmpszktPXKtERQrfvXqLLxByjLpZYhxX2EapwFWXSZXVvkg01hDQeHfBpiFnFyy4CK7bRQ4tGbEVKtRA2nXUS04zr+VLV+Kk5hC0xFP01M3K5CdFzfkwjiMg+NjDvxQRqz+zRxEdXi3B+PtOrE2ILZ5T5ezh+dEO1Sq0kbzIs+wjNPNYguWEHoqtfpV9CJQQ1NOgVKWNkvf4bqPJIYK6v6CAeEmyB9UlDURZCDwO/patT8Pi3XcIFaYXqoYHvrfK7JR+blDcaNe+drduH77Q+9zB+DY2Kf2g+Agxlk3QiGnksaGgr5oAv+14y2+eQSYsJSZRE01vYtXCIcSE+N7onWg==
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)(186009)(1800799009)(64100799003)(451199024)(41300700001)(6486002)(478600001)(66476007)(66556008)(66946007)(54906003)(6916009)(6506007)(26005)(53546011)(316002)(6512007)(2616005)(8936002)(4326008)(8676002)(4744005)(2906002)(5660300002)(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?R3VEcUVuZWpLejMxOFBRVFB6U3RuU3oxVFBoZXp5cXI4NlhEMm5qdWFNckNu?=
 =?utf-8?B?SVdQcGsxZWoxYzBnTEFFaURzWWk0b1BVaWZYQXNLRVVBdDVyMjRwTGJXQWxF?=
 =?utf-8?B?bkxOS2dwVnozUWg4cHNQZWlYQXJJSEc5ZFhuN3N0THBCeFRPTGFTMWJ1MDVl?=
 =?utf-8?B?UVZhejBQZkhmaVJoR2Y4Vm03dWVXVUpVbWJjWW5pMHo0dzA5dkdZMHpSMFVm?=
 =?utf-8?B?TStVTDRUTGttWUUzRkFJT0FNQVB3emZVRjdUMXNFbDZvcjFqRm16MFZFcEhB?=
 =?utf-8?B?MVpCOVQ0MW95V01SalRVS0tueWRuU0hFdVFWWGUvbWt4TXNscWhiMXFZL0JS?=
 =?utf-8?B?aFM2T1dZSk8xZTI3YndobHljaWNicUNXdjFJOFczNlhDbVVFemltb3M5a0RS?=
 =?utf-8?B?elJad2lKOXlaZEFYVFdUZGZrRVoyQ3FVQUpnQ3dkYlhXZEpTUktFemJTcnBP?=
 =?utf-8?B?bzd1OFRlL2N3NG11eFlwbXBLNjBNVEorS1d4d2dZR0w3V0xac1pudExVMXhI?=
 =?utf-8?B?b29VbFQ0YUNTdHBCMExIcmtyRndqWWdIMllsc0doTXRjaWNlbFlmakE3bVly?=
 =?utf-8?B?UmtvQmJKNFdqRXB4L1kvVDgvR3hKMVBnVXNFRDBFc01WLzJpZnJrSjhaMnJJ?=
 =?utf-8?B?VDl0dWplT2RmSjZUNHBEVVEzWFo3cGRSYU1lZndwSEZXZzZXNmpLV1ZoRXgw?=
 =?utf-8?B?RWFramJacHdBRWg4cXBxRDFOM2hYblNoRXhBV0xZeENUMHh1T29MNWVqcUdV?=
 =?utf-8?B?QWwxQlJtendoSHJQUitVbGcxMGl6YWJKcjNJOHgwWXRnWlFOaWxwVE1BMGE2?=
 =?utf-8?B?YzNIRjJOR000bnNFUGRrVTZna09zdHdWbnRkWDFJNnIrdXh0T3dseGRlNnFV?=
 =?utf-8?B?ZWJLWkg2MHBrSE4yakZFa1JwZ29UNVd6YzA0YnZKUGhMQmxpenRjYWx0U081?=
 =?utf-8?B?bUxaYkhwNzRja2NhRWF5N3YxT1F2RFFvVTM1YVNnaEx4WDhzWjkxZjQxTm9H?=
 =?utf-8?B?Y25wOU9iMlVka0o5Zy9sWXJEZkJiSFEwWXk4R3FCaHRrRTNZSlJrck1FNjB6?=
 =?utf-8?B?S2pHYzVlYTM5VXNlc0x4MjlqQnBmQUhaZFdQb0NwRFFJaHdYZmNwRDJZSXFB?=
 =?utf-8?B?MTAzVE5LSVRveTBFWVJRU0tlVnNCR0Zoc1p6UGNzZHhRcUlzNDl1dXFsSEho?=
 =?utf-8?B?RUNjalBwbWs0dWNLUXFncW5mRk5OMExQNkIxSHhsR0owYjNiY284dmY1QjFZ?=
 =?utf-8?B?MW1yc09uSGJidUdKeFhYSkxhcEROVEFLT3dRWW5CZmJLODRnb0pGWkJiblN4?=
 =?utf-8?B?Z3V6ODhyQUlVVFZJVlUvdFZsNU93b3psTEJHZFBLSm5MeDFnVzlXN1FEQml1?=
 =?utf-8?B?U3REdithZjNVdmpzZDFKeXB2dm5FMmZNMCtYR2lrdGpObGxXTkhiYThjQjRx?=
 =?utf-8?B?T3c1ZWdVY1l2RTBFM24wdSt0c0dLbDBoRFE5aWFZZlcrOGVWL08yMEFXRmFU?=
 =?utf-8?B?QjMwb3dONDJXQXh0RFNYK0plVVRlTE1Xb0ZVRTZ5ZmR2cnBaL25PU1k5MEFv?=
 =?utf-8?B?d3I1OEFndHVkdEpCbTZmcHVRQk9saENXWnZ6bGh5QzZtMTVYdEo3ODJVbmly?=
 =?utf-8?B?RkJ0QnZPaVppS2Zia1E2RmNpVUdQMXhwc0ZsS1VmTEhaNFJKY3k0OGdDb2Fw?=
 =?utf-8?B?NUpVM0l1LzhYM3lJekYwMHYxeElFWXVxTWRLT3RvN1BlWXU5UEJUK3YycVY5?=
 =?utf-8?B?YmU0dFRBYzRKWGZSWFQ3cTZyeGtydjhVZWl0cC9tU0x6dkFDelAxdkJKbkI3?=
 =?utf-8?B?SmhCcVBNcGtPUlh0OGVPN2dGdjFlUWM2TXNoN0NvdkhmZFh5Um1FTUtQbTg4?=
 =?utf-8?B?UDdtdFZCdCtMRGZlM2pQaEF3bE1odmt3R1I4T1h0K294cDBTVUNKSjE3QzQ5?=
 =?utf-8?B?a1lSNnJYQzdOOTRpeXdIdXZQc3llV1BRaWpnRVpwK3pOOW1Nb1l2OFBEK01z?=
 =?utf-8?B?UndiRVdDYjJFY29GNkk0akh3WTl1K3hWNU1WVFQzSndFOGhzL0F6b0xuZWFm?=
 =?utf-8?B?S2hXQzZGOUFHd1ozYW5OZ3lKWW1LNHV3Tk80SjRLbXY3L1hNQzJiQzQ4UUJ4?=
 =?utf-8?Q?/uNFRHWfdQoRzBwZT9znzcuoN?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: a6d3d7f9-ac3f-4554-dbfb-08dbce59085a
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Oct 2023 15:03:19.1688
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: pg+NgQH8ZwYGbsDpiIYG70m0l0KWpvWoHH14vghB8Q0PPjI4N5iTdWLQHAbDYyFmCR4WHlA83azVBMRP1sFLOw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR04MB6945

On 29.09.2023 22:51, Stefano Stabellini wrote:
> 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>

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




From xen-devel-bounces@lists.xenproject.org Mon Oct 16 15:03:47 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 15:03:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617714.960594 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsP8F-0000UJ-Bo; Mon, 16 Oct 2023 15:03:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617714.960594; Mon, 16 Oct 2023 15: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 1qsP8F-0000UC-97; Mon, 16 Oct 2023 15:03:47 +0000
Received: by outflank-mailman (input) for mailman id 617714;
 Mon, 16 Oct 2023 15: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=mfEW=F6=redhat.com=stefanha@srs-se1.protection.inumbo.net>)
 id 1qsP8D-0008Sj-4x
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 15:03:45 +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 324ca225-6c35-11ee-98d4-6d05b1d4d9a1;
 Mon, 16 Oct 2023 17:03:44 +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-38-cvyhrphrOLKsjjGo8ZE-0g-1; Mon, 16 Oct 2023 11:03:41 -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 C4B883857B7E;
 Mon, 16 Oct 2023 15:03:39 +0000 (UTC)
Received: from localhost (unknown [10.39.195.59])
 by smtp.corp.redhat.com (Postfix) with ESMTP id 4AEA6C15BBC;
 Mon, 16 Oct 2023 15:03: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: 324ca225-6c35-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
	s=mimecast20190719; t=1697468622;
	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=KpFM4UZyH7tZRzTQzd5Hyyt0ytNKx//41Woy1RTOBjA=;
	b=WD6anzBcFw+fE0jAhh8ilxQhpqk8IZenqx8hkEWdudsMuD6rRRa8369fuslUy+d+IFvgkV
	eOuMw8rIaWsJJvDlsx7BbiE6BOOvN9vaqp7bbRb14Dy7nxLuhj+90/0f7+3sg/x+sM61sz
	NyiKfnCiNKJwfDNGEvdcO6MjRmT5bak=
X-MC-Unique: cvyhrphrOLKsjjGo8ZE-0g-1
Date: Mon, 16 Oct 2023 11:03:38 -0400
From: Stefan Hajnoczi <stefanha@redhat.com>
To: Emmanouil Pitsidianakis <manos.pitsidianakis@linaro.org>
Cc: qemu-devel@nongnu.org, Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>, Kevin Wolf <kwolf@redhat.com>,
	Hanna Reitz <hreitz@redhat.com>,
	Alistair Francis <alistair@alistair23.me>,
	Philippe =?iso-8859-1?Q?Mathieu-Daud=E9?= <philmd@linaro.org>,
	"open list:virtio-blk" <qemu-block@nongnu.org>,
	"open list:X86 Xen CPUs" <xen-devel@lists.xenproject.org>
Subject: Re: [RFC PATCH v3 08/78] hw/block: add fallthrough pseudo-keyword
Message-ID: <20231016150338.GD119987@fedora>
References: <cover.1697186560.git.manos.pitsidianakis@linaro.org>
 <88122696480ffb58fa39af81d254aa656afbcd64.1697186560.git.manos.pitsidianakis@linaro.org>
MIME-Version: 1.0
Content-Type: multipart/signed; micalg=pgp-sha256;
	protocol="application/pgp-signature"; boundary="3conpdxF4cvXWRP+"
Content-Disposition: inline
In-Reply-To: <88122696480ffb58fa39af81d254aa656afbcd64.1697186560.git.manos.pitsidianakis@linaro.org>
X-Scanned-By: MIMEDefang 3.4.1 on 10.11.54.8


--3conpdxF4cvXWRP+
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

On Fri, Oct 13, 2023 at 11:45:36AM +0300, Emmanouil Pitsidianakis wrote:
> In preparation of raising -Wimplicit-fallthrough to 5, replace all
> fall-through comments with the fallthrough attribute pseudo-keyword.
>=20
> Signed-off-by: Emmanouil Pitsidianakis <manos.pitsidianakis@linaro.org>
> ---
>  hw/block/dataplane/xen-block.c | 4 ++--
>  hw/block/m25p80.c              | 2 +-
>  hw/block/onenand.c             | 2 +-
>  hw/block/pflash_cfi01.c        | 1 +
>  hw/block/pflash_cfi02.c        | 6 ++++--
>  5 files changed, 9 insertions(+), 6 deletions(-)

Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>

--3conpdxF4cvXWRP+
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQEzBAEBCAAdFiEEhpWov9P5fNqsNXdanKSrs4Grc8gFAmUtUMoACgkQnKSrs4Gr
c8j40wf/awIDxB9laWEOFCQZHWk3FLEdHGSb5a0XyPLDAhHe95yPrieUeYNV0Nr+
mjV5cB1GPAE7kPJzirSUlcC5+fvGDB6QnkI3DjUPTulDd8YHZ9LN1CXggaDF7TNh
0Z/Du1IG66k1DND6MxIO5ebtFjUJvMyjxzQCS6iJ6jqF8vG8ahY4oFJGvgNYLEI2
g0JFu2cpN3TdHTKB/GrxQj6xhVkPvnCBa1eapzZ2jSaQuWPt5mv0VCQO9f5LxNHR
nBb+mn7F2uqka3C69tiZF2LfSZThzR3bww4VBC7Z+HBCm42JirMNpQvyIUROpgh2
OInCVpsRPcrQPRmKgGpCQGpdSXo6ew==
=tcx5
-----END PGP SIGNATURE-----

--3conpdxF4cvXWRP+--



From xen-devel-bounces@lists.xenproject.org Mon Oct 16 15:05:14 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 15:05:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617718.960605 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsP9d-0001O6-MP; Mon, 16 Oct 2023 15:05:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617718.960605; Mon, 16 Oct 2023 15:05: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 1qsP9d-0001Nz-J3; Mon, 16 Oct 2023 15:05:13 +0000
Received: by outflank-mailman (input) for mailman id 617718;
 Mon, 16 Oct 2023 15:05: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=BBjo=F6=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qsP9d-0001No-8J
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 15:05:13 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com
 (mail-db3eur04on060e.outbound.protection.outlook.com
 [2a01:111:f400:fe0c::60e])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 67796894-6c35-11ee-98d4-6d05b1d4d9a1;
 Mon, 16 Oct 2023 17:05:12 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM0PR04MB6945.eurprd04.prod.outlook.com (2603:10a6:208:17f::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.35; Mon, 16 Oct
 2023 15:05:10 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%6]) with mapi id 15.20.6886.034; Mon, 16 Oct 2023
 15: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: 67796894-6c35-11ee-98d4-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=El1uvA6tfj1G8TmwCn9o9eaPUU03sNvuyocL2LAsoyZOrJgHQBBvPtTb/mDxXMqtNm/VLvE8oQHRD2/NGa09JZAvpcTrSrkkxjHG7Fmiq3NowW/7Cd0jb+ATDk8K5VY83T+5ugq7AL4IdueJG6PFah5IuBGJx3+qevSEBI/aN2a7RNhgcr/FmXp9s2REVH0fLVkflFfMlml8e/pD8iPOBl6wzEmu/BV/6QF5f3y7/gl9+lHqY8mE0qGaWlLfxedRXjwd+n0VG7iNcRQ7UPKp5gmkhZK1mrVhZjN7vm950BZjr8KPSX3CgA7Nsgb692KBGhs/DWH3bV/c4y/K60UlEA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=VReKBjPhO6xQ9477Q9HPXqG14/UFQxiVdtksTYevc9k=;
 b=GwRtRrytR2j24us5uNPdlB2JGKy62RoQPfXlQUOXgZr7YJF+6HDTrZGXTt+f5siTDz7XS1d1gjxDHiwjoUxie2kO8OFtKKGTH40VMydsBjjEyLbjw0xLO0+k+6mGsb0khWn58a/YoFZcvsGihJQCofPwhY4K2aJodM5qheV7cUaEK4Iz0Rc4/tA9OM8p4DysuPaBwMnuzbq8y124+JVxB0fGnUo3czmHpNO5JD3qyhue1H1n1GwSj8n9/eSCsHUb/OzgyTEJwrsT0tN379GkULLm0CWOG7gd6ujfsddUHDqKpSDKoJZGWVVeWO7dE/KynqjOMI+ig0h/7GWbow3x+w==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=VReKBjPhO6xQ9477Q9HPXqG14/UFQxiVdtksTYevc9k=;
 b=iYhk1ia3E3TjGLt20jmVuSWTsmCKaH44jhC9V8+9HzeuSxu5zfvs8BTtWtnKD/t+/B/UgQe9GYEl++qikBiiIdhx/GGqehyJrXHuzW+5pW+p5Stc0g9KCDmwaceoqM68p/uQUJKe//lPFgLUCG7JpkozR5n9YKbzQJhxeHwyDnFpD3HFHeUsnL4p0DcKVyXvSCU9pP86cXgbiFITkbDyJFrtV6E+J9L49OeWii0MaBc1VqURkkzvzxCKbMRipqI6iqGH5R5VZqDzKHGcSss0flQpLISI8TpSTm4wCA82/pQ3+5N0EwZwqOBgJ1bTRc3HLPlu0TWgkLFVt+G88OHvdg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <7eb91ca5-c078-a3bf-8c7e-7456a89a2d74@suse.com>
Date: Mon, 16 Oct 2023 17:05:08 +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 2/4] x86/uaccess: address violations of MISRA C:2012
 Rule 8.3
Content-Language: en-US
To: Federico Serafini <federico.serafini@bugseng.com>
Cc: xen-devel@lists.xenproject.org, 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>,
 Stefano Stabellini <sstabellini@kernel.org>
References: <cover.1695972930.git.federico.serafini@bugseng.com>
 <7e32d3b6c078a7692668a509d05c44175ad99310.1695972930.git.federico.serafini@bugseng.com>
 <alpine.DEB.2.22.394.2309291352560.2348112@ubuntu-linux-20-04-desktop>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <alpine.DEB.2.22.394.2309291352560.2348112@ubuntu-linux-20-04-desktop>
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_|AM0PR04MB6945:EE_
X-MS-Office365-Filtering-Correlation-Id: e2b14d5f-2e98-4b61-908d-08dbce594aaa
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	gSruRxmAyCHRh7TTezDTRu/TP5xl3gGwPP88QDHedaG22+WN1+kL95qu7lw8hbWBySh6QjpqbDR5s7NfSqtu3XEFmZytvB7flupjonxnehU5ndHcy4HioQ/NDEKQsRSlrtxSkvXxRNuJV0X0AK6LxaZVqrEsHWCRh7RTfhGgzbqMg852uaqdhKNqI5BF8GLewLDUohDuUrBIvmyymPSDx41VQVBhGOijgg/91b7ewCNye5w3KMaO4Gyea9jv4/jBcIvCzsMJJ9sEt1isv83FkV73elgAsAuntlIYttaGroTQ/MgfHkY+DJYXzziOv/0OllIyhdGjj4Ty+2DjYmNLvwFwe7kdcBvUL13Bd6XDIZmQ1RtOIpuZw2ms5bSZnTVqqKJtC/p53jz74smyqLWGllo+zwPAr70Ml4QijChDdE1+758nz8SUJtCOEAFg20vF0xxIkde8JA9rTTcvEJFbdMakz04l5QDYiEvWqXXwRKhrWwy9sJDSEZ+C0In9teqIVivwR03YQfK5WMtNuS2ZEnahp8soj1BdBnJrXv2GP8aCOSRxma7/fgCdjQ3Mkc4aGgkTGoT7OPd3AzF1TnW6tldFDDD1724REEf5wLcchCtOTQY299WlhmSWGE3Y4S+LasnBKRv91+cDMcCJDU3SOw==
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)(186009)(1800799009)(64100799003)(451199024)(41300700001)(6486002)(478600001)(66476007)(66556008)(66946007)(54906003)(6916009)(6506007)(26005)(53546011)(316002)(6512007)(2616005)(8936002)(4326008)(8676002)(4744005)(2906002)(5660300002)(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?NG9nNkpwQVYzZTR3MXJBYy84TXZyNDArWEtvRXNoSmNjM21SSGp5VUtWbWlX?=
 =?utf-8?B?QTMvemVmNC9oUFRVcUpYZzBKYjM0Q3NoRGZ3a2N1K2JURFE2MHBwbExNOFJj?=
 =?utf-8?B?SllMdWtDR0oydW05OVhsUm9DNXo2SXYyR05OVlRTRkJTYXFkR1dua0ZSZExi?=
 =?utf-8?B?bG54aTUvMmJFMy8rYWp5dStzYnh0bkRqcUpWSUQ0eURaZ1JDOTh1RGpEUGJF?=
 =?utf-8?B?ZG1YQzBVczhzdURaU1BzWEVYZXBGVzBZRGdiVC9KSnpUY0lNQ0JVK0dVdHg4?=
 =?utf-8?B?WmNyUzJMNTdPUTJQU1lLQ0JYYmpZS2JORXpyQkR3bHRyN1BUd0hCWkpGUEtr?=
 =?utf-8?B?TFFBZWM2c1dzM3lhNEgxTWtSeC9sZmV4aVFHTkx1cEc5QzU1QWQraG1vU3k0?=
 =?utf-8?B?QS94WjVRSDNXRktUNWFIclNGZzY2RTVSUS80cEd6TVFiVFVKWE5YS1NUTnNl?=
 =?utf-8?B?QVBMUWFaMWNsbTdKaEc5dVFkcGFaQXZwQXZXYWt6UDYvOEhLQVZBMlFOUU4r?=
 =?utf-8?B?SjdWU2M4MjJVZ0FpZ1NEZm1QRlBoeXFERTFjdDY4RmJTS0RpZWZGUGp6YzZq?=
 =?utf-8?B?Q2dzL3Z5VEFNSGV0dllaeStuM0t3WDZGZkFzUEprUnY3c0dNYVNiTUFOT1Zo?=
 =?utf-8?B?c1JLZ0kvd3VhUklENnhkZ0ttbmpNOHl1N0RlTGpwZTRNV2F6aG1meXNxSnNV?=
 =?utf-8?B?M3gwMmF5eGZyREhSc1pYb1NWZnJ3OFJ5KzRpNmxXenNOM1h5clA3MGxBSXVG?=
 =?utf-8?B?YWNBMElxb0QxVzAxcGUrcURMTGwybkdQcytsQWVyQ3N0MmVnUzZqU01NaXRZ?=
 =?utf-8?B?QXgrbDNmTjJ5d0VkSG45UHQrbEdhTlRBOU5PQUpHa3V2dEFNcGJhOUdxbHB3?=
 =?utf-8?B?cC9rb0RiWlFmRmhhcXVLakljNmhrcTlHKzFneXFSQitZNTE1T096OG1nTFYr?=
 =?utf-8?B?c3R0aERnRnltZE8xaUtMY1ZuTkhuazhOQWNicDdtZG5mbXZ3UHlaWTZIc0Jx?=
 =?utf-8?B?RHVGY01OeCtjT3FOTUswQnh6VXdHcUdwdlhLSTV5djVCZFlkOFk2cS9HQ2p0?=
 =?utf-8?B?dXlwY3ZhZHhGTWtURThyVkpxcGlJT1ROenhNMkhFcVNabFFZak4rVGUwK3Jp?=
 =?utf-8?B?U1luTmdhV1c3THFyRTZVNlpRMzdYMXhvT0dpelYwRlhuMTJKVlIxSmVOYWRk?=
 =?utf-8?B?T3RPV3V4WG03SVRlV1R0WkJuTFRPb2FtNjRRWTRCd21qSkdsdmpBWWppMDJS?=
 =?utf-8?B?Qk9DdU8ybEpPRjYrT0tadGloZVc1MWFNTDhodk5JN1RtMVdFSU10S3VmeUdJ?=
 =?utf-8?B?N2FUMjdTejB5Y1lPTFpPdHczaFlmby9xcjJZbWlBRnUyQWlsa2JWY1R5Znp2?=
 =?utf-8?B?ZCtVY2ZZMFM1dUR5R0ZlYnhYMkNjOUtaRjV2MzNRNUhaYVBHTDB5c0w2emxB?=
 =?utf-8?B?KzlNYVluZUxRU1J6aGNnY2VEWjhjWUlNSGwrc0FUL0pFQTR4VjhpWGdJWEdu?=
 =?utf-8?B?Uk5BR1JESEFWUDFIWU9iOTR2S2hUZCsvNGl2QWVjMXg0c2dlU2c3U3lQanVi?=
 =?utf-8?B?UENkTTNaT2JnMHFvanV6SVpJVWgrazVrQjFmVm9IM0JYbWdIdnZDM0ZOY3RG?=
 =?utf-8?B?T3JIS2w1VUZBeENUeFRUK0Rkdm4xbGhPek9idlZxeDNiTitOTHRlSUpjRExz?=
 =?utf-8?B?aStYWDVocWdzaXZ2aG4rQnJ5ZEFyUVRDL1ErS3Bxb0habDlJaWZkUE95WThW?=
 =?utf-8?B?eDh4Rm1PV0J6aXdJYnhieVhqeVNtVmZsSkJSSVNiODUyMWxNZGl4NlNZaEVj?=
 =?utf-8?B?cXNIcW1ITFRaamI0OVpMcXNZTGpTZ0RGajZ6OUxFampCSHVITUdWUUoxdXJo?=
 =?utf-8?B?UFNHMWZFaWlwVEVrTUQ3eUs2bnoyTkRiL3hoUG9MQ0pvSS9VcXMzK2U4VG1o?=
 =?utf-8?B?SHhHaTEwUnY5M0RlOVBkcDdtUnptS1RJL2VHcFBaOFZNUVhJV2JmVnBOc1Zz?=
 =?utf-8?B?Q2tjNHdYZUE4cE1JRW5USGRsYVF6aGp6MVFUNzhsM1RtR2JwMjAwUWVBN0to?=
 =?utf-8?B?QkxJbDFKSmQ4WjRCQ3N4bmlIa056MTIwMGhHUFRmR0diKzRiRlVuWStGcDN6?=
 =?utf-8?Q?GndCGWQfrcVTohypOkyg3unET?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: e2b14d5f-2e98-4b61-908d-08dbce594aaa
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Oct 2023 15:05:10.5264
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: Nth7k9C/UosP5Rdx7842RTwQm3jh/W3caN3kcF/jXU/u1HLwmS1dwdSI+7wWphaZMwgRFbqRLss6D4sOQIHGsA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR04MB6945

On 29.09.2023 22:53, Stefano Stabellini wrote:
> 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>

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



From xen-devel-bounces@lists.xenproject.org Mon Oct 16 15:06:21 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 15:06:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617721.960615 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsPAh-00026X-Ut; Mon, 16 Oct 2023 15:06:19 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617721.960615; Mon, 16 Oct 2023 15:06: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 1qsPAh-00026Q-S6; Mon, 16 Oct 2023 15:06:19 +0000
Received: by outflank-mailman (input) for mailman id 617721;
 Mon, 16 Oct 2023 15:06: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=BBjo=F6=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qsPAh-00026G-6l
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 15:06:19 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com
 (mail-db3eur04on060a.outbound.protection.outlook.com
 [2a01:111:f400:fe0c::60a])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 8e8a2a28-6c35-11ee-98d4-6d05b1d4d9a1;
 Mon, 16 Oct 2023 17:06:18 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM0PR04MB6945.eurprd04.prod.outlook.com (2603:10a6:208:17f::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.35; Mon, 16 Oct
 2023 15:06:16 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%6]) with mapi id 15.20.6886.034; Mon, 16 Oct 2023
 15:06: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: 8e8a2a28-6c35-11ee-98d4-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Ovr0GORCBcrDdrDm0zUdCLtKU9MZmOl8Oe9QuvJUJqL/nbyoZQBL6x/yPGQ3u7fwlAnq/Mm5jVmLN8bXoDFi9ARbkd1kDh/x2nrcxSbNf72Ts42mD+YM+99N6M6HeJ0qJPVkQMZttk3yu6qJ0XxwxSTNIl3xVNihJe9HhAQxJmcmaz/GuzEZTAXYTz8CxJJ+2tn9aipbg4XfFl6k7N9Lwm6He9YzgHJHaLJnOnwRomXqe64PdHo6DSMIdd5B1CgKSEckv80FQxQvGiJkJVbHMmapAUXYeMEl2If52K6d2jkAVDV2809Uqky5IYAJryB9hwxGIl+t6YUjangSYdbAMw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=aHF9bSydrJnlQQhHlK1c8Rg39wAvjcu6/Q+79nc22sg=;
 b=KD129K1mZaObO91QnvIPFtOhfWozURlz23S38/SWgqLEjxYpBFFqX3w81iyjuKVpDW1ZEXmhlYjgvfUAanPic0WsdzebcPrOF+wZRGyw7WqoPHfkLDxL31Hbn/AvcmZ46XULoZbbIUvP2TJ8Q0NCWCGRfiYn8knTUCZGTUgzyhUH5ELS+qkOaZnDhNLNgv0RXHI6Iw7lrTSdyv1G9qANJIQLGykyo7i+aVnbNB/4cyOpbueirPbvfoxEFgrsddmHAjg/ffjPLnNkaecHrILjJA3eMMBWPrSyHhxVT5AFAuUeH4jmh1deAYhJB8wtgkOdZddf6sycJ94jUZvzKZZJ3A==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=aHF9bSydrJnlQQhHlK1c8Rg39wAvjcu6/Q+79nc22sg=;
 b=VDQnYseT5TwnKKxclx+kP+E9AltKo8DjwRk25GpZZEhOlhdvKjKeaaYrVB9KL1MRQ2uiB3tCND2SjtI+ErobrWoLajQNRELZxufFEt9syzwiyDrEm/3jBT4/saNsZHMYCwVMGaDG0a2ROgzbSbRl/E5BIPEaC88hhU3xI6zI/srOG19OpuTtDeR6o/ej3/qZgtMZM+fS4rn6ABoeWecKYTTt9CQbCziZ9oYSNyS2GR7IyH6QJbvOE9J6+iLb0Nr9UpP5FHh8kTZbj0haa3tYvgrVGBE/wizprCAUp+cl5BST9GKKvc8v8klkFke6UO5mnm3Rq0ciPkoRFjXPu/NPAw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <97931622-24b1-ce33-ff97-a2f201ae7fad@suse.com>
Date: Mon, 16 Oct 2023 17:06:14 +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 3/4] x86/xstate: address a violation of MISRA C:2012
 Rule 8.3
Content-Language: en-US
To: Federico Serafini <federico.serafini@bugseng.com>
Cc: xen-devel@lists.xenproject.org, 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>,
 Stefano Stabellini <sstabellini@kernel.org>
References: <cover.1695972930.git.federico.serafini@bugseng.com>
 <198577fa8876efc48a08a89b55fa5f95694b37c1.1695972930.git.federico.serafini@bugseng.com>
 <alpine.DEB.2.22.394.2309291353430.2348112@ubuntu-linux-20-04-desktop>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <alpine.DEB.2.22.394.2309291353430.2348112@ubuntu-linux-20-04-desktop>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0026.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:c9::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_|AM0PR04MB6945:EE_
X-MS-Office365-Filtering-Correlation-Id: 57de413b-f743-45e1-66e6-08dbce5971bc
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	ovTUQMfhfN/MLyhvpqrobznhj+Xl4Gg1eui5FWAf5rj1T7VmGY+n0V9y6OPA5rHXQYNdfZ0Wjf2J0CzIRPJgozDKGyqVnA7UeenvrE+ZO2zoUAiMEj3kvPmW6Kc0MVqoo5A7qk20LmIVRaYDQ+/HlliYgv+txrOXy2pOI2x6o9NIRGrDvUGllnsMGbyEhUtUfse7miAZ2CvBCm+dXS/fl6pghfvK81RzF5fDoQobPqclj1HReNN9vqEfNhann98sIVGlIPFbC1JyHAtMaozJYAOfXCqAEGcnDaSXHYYyw1DzXoZcxr5U3VkADNi48bo6gw0S7lxspx4aeu7NoiZy/KVtdEviGI+Bkl9/BKVQ+d7usByhLXhFKVu3zeMGhytCV6Qc97Ajl/Rzl14wI80FVaRJPldWHalZwNLpk9XfYvABhgDoZGnjComoB7Czgd4/y7H3GY9oLaRQDZeiL8weFqVbjXPUUxw85liu/wcW6KLjtfzq2yKTpTrbfda05IUtJYwLlUVDVyHFjZo2qNspoh4/EkP+kTh89qrpJIrhq6UdvWEWbpIgT96lTCYDUmjKryXm8uZnC+bpRffStagy3MVN7yJXHA3816AD4juqR1qEAsLDOc6pYb/TQzMyvXHLVn6ygcUIHcQIDjEMWBjP8w==
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)(186009)(1800799009)(64100799003)(451199024)(41300700001)(6486002)(478600001)(66476007)(66556008)(66946007)(54906003)(6916009)(6506007)(26005)(53546011)(316002)(6512007)(2616005)(8936002)(4326008)(8676002)(4744005)(2906002)(5660300002)(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?Z3BtMlBoSmdvTklLM2JEWFBCRW5jMnJPNHZpYjdTWXVpWGFNcjdTZHYxbXJ0?=
 =?utf-8?B?emtuc0RDQjJWaU5BQXIxSjAvT2hFeSs4MlFFQi9IYS9yS3o5TGY1YUFjZGFK?=
 =?utf-8?B?UUNobUkxU0FnTFloc3A5OEdXYTFiTkZ3UzhWVXNseEJ3c1JzMzFSbC80dEl6?=
 =?utf-8?B?Rk5ZOXAvOW8rQTlLVnZTeHFsWUVMbmt0Wjg3MEYzcHdoampDcnZrc2pmZHVM?=
 =?utf-8?B?NnNyQ1JLY0QrMHZ2RE1LK3FPY3NSdWxobnUvMFQ1THBtNlRjQzdHZXNPb3BZ?=
 =?utf-8?B?N00vWHdyeEVnb01NcGJGYmx3QmZ3UVBqR1RCcTcyeStjMVFRWVlOVWJkdnUx?=
 =?utf-8?B?amdFaEFSb1lQZWF6RWRMMXowaldhL2ZrSWh6bU80VnhiQnVvM2UzRXhwWmo1?=
 =?utf-8?B?MHJpTzNtelo0Q0VJTTNidkRCaEhtWWwvK1dGRmRVTjZMUzJKTHdBRmQzaTZI?=
 =?utf-8?B?T3pNRnRERnJ5dmYxWitqZVpibWRvN3JEVktlVFBGditpWkxOQVNRY01PT0Uy?=
 =?utf-8?B?c1JnREVCWUN6Ty9yNzFTck1ZbkVUdHBvNERIYWtFTHp0ZWpXMUdUZkJONlVs?=
 =?utf-8?B?TVhoK1BuMUxLL09mSFZDUGVubHR5MUVmeWhscjBpdHNFL1FtcGtsbWhoUkNj?=
 =?utf-8?B?c1pVOHFieVVyMnhmZ3FJaTlKTnI2cktLOXZWYWtzTEc5cjFuTDdZWDcwYk02?=
 =?utf-8?B?ck4zTnV0QWZTaE1vNUpPU2J2Y0QxMmpOb0hPN3dXQWFrVkkxU1V1aERyaFZ0?=
 =?utf-8?B?TVlUUklqZjRYTW9zcTJpWVE1QzNCekhkVVhhRTdkaHQxTUIwMU1JZStnVHh1?=
 =?utf-8?B?bm4rZEJNZUw2K1BDLy8wMXhHS2FPK21qNkJ4ODR6ck9QZVpWdWhid21ZT0RT?=
 =?utf-8?B?TDdwNjMxN0MwdFBlSVhjOHBySXFidHp0WWdiUTFkRENXbHU3bm9hS3UvK2s5?=
 =?utf-8?B?OTJzZzdIV0VEeGExNjVJRXpsQlFvQ1pYbW1xVldDb0FXS3kwRWV2aFI2UW03?=
 =?utf-8?B?ZUdoZG5DK3IwYWxNdEx2emlkTW03OHdFTkFkQ1dHSy9uN0kwQWh2bnkxZWNj?=
 =?utf-8?B?TDZrMlFHcFNQT05zT2VhRTFlM3pnNWhKN2YvVlhoSFUwN2xaTTBOUVlYN2dt?=
 =?utf-8?B?SU5pZ3lrNk5nUTRyaDZMREhhYkJ2eHRFTnVMTTNDTmlLVTlqaHF6Rk93SVcx?=
 =?utf-8?B?UGNWOFJ4MUlwcDJMWElJOVlJYlJIZ2Q2a2FWL21jYkVBaVhWQzdBTkRQNk9N?=
 =?utf-8?B?MExFMHhtSE5pMkFjaFFEZkVnaU1nUTZLbGtVL1lIdnhWUEdyWFRwQjNYMTg1?=
 =?utf-8?B?RTNUaEtNK250YmprY2kvVk15VERQV3FSdjZCS09UU1JORUw1WG1OZThaaFc3?=
 =?utf-8?B?aENGZ0ZETTA1TGxpUjlyNE9ZN1ZKZmQzbnhWNmRLVTExYzVQMUFKandsRXI4?=
 =?utf-8?B?RDhZVzM2eGlvRkpFOGEyMlRyMXVJNVYvc2o1OUZwNUc5WkhxekowU1pQK2hj?=
 =?utf-8?B?amZzdEhjQlVpWjdXZjl3dDBKb0JjWmZBMFNhSEFtU0d1SUh6TnF4M3pVM2xP?=
 =?utf-8?B?dy9XVzV0UDRDR0Z6Sy9NR2s2KzFXcXpXbElWMmxLSm5ZZXMrRmZVdktQRFBG?=
 =?utf-8?B?cG8zS2ZGa2tYTy9FNS80Z0hSNThOaWxwdE55bXpPTGYzd1dYZUxsSmg5VHZi?=
 =?utf-8?B?dVljYkt5aENqOUVBWENHQmp4Tk4xQTRkVFBiUU9RQW5yVTRic20vNUhhMWcy?=
 =?utf-8?B?OHcybHFVRWcxNzgwdUdiZnZILytLTFNuaWNXUEtjcHVFaTdoVGlrblhlcFAr?=
 =?utf-8?B?QTBaUmlURnE3YVVMWEE0Znp1amxORlRobnR5elNvbnpZYThEaHJYZkVhQ1Uw?=
 =?utf-8?B?NFJEN3ZRODQxamk3SEkydnowMStCalJLU3FFVmJvWTdBcGlzM0pEdDN1SkZj?=
 =?utf-8?B?R3hWb1dXZlpveERPTkF4Mk9uazFvY0tyNjBvclEwaEFva2ZQemtheEM0b3lI?=
 =?utf-8?B?bFdHa3QwS1FyeWVDaEZZLzk0ZEtTcUtXNHpVTUFBeUJQU2JMOEdoVFk2ZnUy?=
 =?utf-8?B?UW1FSThoZGU1UlcvSm5OK21MUEppYis4eFNWRGZ3R0dHcWRkMTN2b2Q5eGFJ?=
 =?utf-8?Q?GQf4ItKWu8GkWq6ao2XfZwpPw?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 57de413b-f743-45e1-66e6-08dbce5971bc
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Oct 2023 15:06:15.9694
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: CyhxGukZeywn9Xg3Ybn5FGjuThtgoBHa821/Q4/6xTMor0vD+cMalqQQINXW/aabv7zmJ+5ru0RwBnDgFX/JNg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR04MB6945

On 29.09.2023 22:53, Stefano Stabellini wrote:
> 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>

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



From xen-devel-bounces@lists.xenproject.org Mon Oct 16 15:06:46 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 15:06:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617724.960625 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsPB8-0002gX-6H; Mon, 16 Oct 2023 15:06:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617724.960625; Mon, 16 Oct 2023 15:06: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 1qsPB8-0002gO-3b; Mon, 16 Oct 2023 15:06:46 +0000
Received: by outflank-mailman (input) for mailman id 617724;
 Mon, 16 Oct 2023 15:06: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=BBjo=F6=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qsPB6-00026G-NO
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 15:06:44 +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 9e3cd696-6c35-11ee-98d4-6d05b1d4d9a1;
 Mon, 16 Oct 2023 17:06:44 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM0PR04MB6945.eurprd04.prod.outlook.com (2603:10a6:208:17f::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.35; Mon, 16 Oct
 2023 15:06:42 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%6]) with mapi id 15.20.6886.034; Mon, 16 Oct 2023
 15:06: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: 9e3cd696-6c35-11ee-98d4-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Tab+h787DQWqwS0xFZ5kiwn9EI7aUx99mlI9h85LJA8hrGt+9VO0YaSLdWNDKayDMpG5coufCad8qDBYe9suYVGFDjEwR1LR8tXC+3lWlZwG9hIKzaxpF740DGTy0sqkik9xXgp7G2rcs9KZ3ouxbE6Sj5hullAlA9ZM2xJ2Htr4t6FZ/TS26V3A7A5nDXtmg0Y3doAWc9DL6Jng9NHnh2kY/oB673AIvuW8AQ9G6mBP7lIju0lXjKS3F201IBH1oWNXKjwMLYX5a7DmUnb80BHM/0w/MRlokkCrxyxJhj/MQuxRKF+t52zxKJdL7htJoprAStK3furi+mDxikcvHw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=wCGS48c/A6e61K9hFNE7toNBv2JoR4LS+tRzueqbKog=;
 b=cztoHMeCnHI/Z6XlEaGNP2JXXxWl0gfyUnMBOP5MK71dS5s0xPiSfgbAmZu/ObV1vavWnK8G0Ns4rUM+VaO73/cIvAAd0sFH9UbyftAGMIjF5wGtRxZk9kW/NKGCORwLMehgFIj/qaiR+tc5EJhx0QW6vtW+UEaSY2aiGvRO3/RMK8CQuVkc6ZKEymJ2uT0zrzYuEy1Ll6TPO4CI0fpgQOfsChD2yJ62V86BCWSt7IxsJJMsADiVjIzcbyuI0/Epmsc2FyEo9w9647vx9FMd7jMOJuKhV3sZpCGOkAeF8AwQzmGHYKgdNfOWjVtwAic9ggdqVj6aHdWF0JjB8xc5YA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=wCGS48c/A6e61K9hFNE7toNBv2JoR4LS+tRzueqbKog=;
 b=bqagQpMzmUW596yBOl6WOEq5wFR7mTiI4f4FcEmh5Sb5ponMjC+lrsJfgSYWaMLjEtidatdraPBKWwnmDWmJaYk4YnXvv37H56EoLnvSPuC6dQK0ArNTQteeDMn6BEmzT7AdM60A4dy9nKVAncucMqUiTMxXPJZfZyUru5+UAolNPt/kRaHbPfAQEAvW/hsqOV402Au8Z5/hUjv6+6AnJvv+hIjC5Tte+f5IXO9ntI6AhSzp2iQJlgHpyy6T9oT5sHKXgIO2h1+4lPRILQYW0CPS+TVONcGKFOcRMvTCw4tOh65ZTDS59XtmMUm1fnNPsyA8wttrnPgAVyUgDkN1/w==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <f64acdc4-ceec-a52b-2553-3b57d7fca2d6@suse.com>
Date: Mon, 16 Oct 2023 17:06:40 +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 4/4] x86/psr: address a violation of MISRA C:2012 Rule
 8.3
Content-Language: en-US
To: Federico Serafini <federico.serafini@bugseng.com>
Cc: xen-devel@lists.xenproject.org, 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>,
 Stefano Stabellini <sstabellini@kernel.org>
References: <cover.1695972930.git.federico.serafini@bugseng.com>
 <c7673a1cd70e1f4901b8f6a6a0ffe3019c9307ac.1695972930.git.federico.serafini@bugseng.com>
 <alpine.DEB.2.22.394.2309291354300.2348112@ubuntu-linux-20-04-desktop>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <alpine.DEB.2.22.394.2309291354300.2348112@ubuntu-linux-20-04-desktop>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0025.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:c9::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_|AM0PR04MB6945:EE_
X-MS-Office365-Filtering-Correlation-Id: 4ccdf883-b67b-464a-bf6a-08dbce598179
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	vtSkwMlSrnF3/9aWntNPdYJXJ2SVKY8l6QW5nigE+UBpZxwg0+6D/k0OZY9MEYjyPd/BJ2ePJXZX7GgvAJgldiLD66maxp2mifw4Zq58MwdASCrdBkC+amJhQee+8h2s5ZuIWuci8J/zVGm2sccDp8B+IGQRfo9zAOBdcLi+O4GYTYwcZQGPVFYptC5ii6O5SllfZSfVhWlLferPXRI52Clhp4Nbcs3zqFMxVzB5tzaVu/j5aRBE/vBKEnOifcL7g41hURnuT7b0Dlavc/sLhHJeYrRKaj2qQCTv/eno9C3KzU8Rkrg7zrRUiFDQWYxFbdx/hEAWciUsejTGhr1jTB7u8dU0M8o36xbQ9OQDL/zU6bMjUlSxi6ynKSKd8CLyzmR9ZhI3PPmENym4uKPLs1iOmkfqC9HuIWdWFxFkNPmxr1de2m9Vp3bzzzfmxZboLB+ROYwrFfCS5Ra/uac8yiUgxIrUwxCO+mo+/bdiCcBHCrlhYEnIPSdmLWc2HQENxSXNHvQhLyHRI2oveqIU+hRKKYPkPzVRN0C5usW6ubXAp0oBijwtmyRIsrbeXm4O+f6JI6e54qV6N8orRaegdRVtQwB70o7+lte3Vrzup3jXI0ItURormeotS7j1+hMlRDbtJJayXaOJaLzTmtxy0Q==
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)(186009)(1800799009)(64100799003)(451199024)(41300700001)(6486002)(478600001)(66476007)(66556008)(66946007)(54906003)(6916009)(6506007)(26005)(53546011)(316002)(6512007)(2616005)(8936002)(4326008)(8676002)(4744005)(2906002)(5660300002)(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?ajEwbUFYL3ZMOWJTK2xpREJuZFpwUzhkeXdGd28zODlaSmN2YmdRWEZaQkJE?=
 =?utf-8?B?cDQ3cm1tYmJuYklWbWtxbXRvWUtTczVCN1hPMjFjTzNzN0l5TUgxK3FsUXgr?=
 =?utf-8?B?dUhmd0tnQVY5ek1IQUtnc2pHbFh0ejRWZW8rTkE0WlZIWHcyeVh5MVFBa2cy?=
 =?utf-8?B?V2FZdEJnWi9jY05RQUo4eGJHQmRaVVJmdnp6RzJROTV4S1hSSG15ajZkd0xw?=
 =?utf-8?B?b0FkWDk0M0ZrY2JNU0l2eHI3Rkk0QThXUXVxWHZKMlUybGVwZlNTdi9TVWlF?=
 =?utf-8?B?bFg3QTlUYUU1V0svWUdQUlNQb0pZeTB2NWs1YnBZK3V6ajlzdVl0UDVNM1U4?=
 =?utf-8?B?UjRPYXNrbE16SWVOVkl1MjdQUW9ZR0p1c2NPd0YwTWdORXM0dFBiQjFLbTVw?=
 =?utf-8?B?UHYrZmwvbDltNkJjZ2xwQVJiNU91L3I2VEJRZmpjdDNURG5PajNEV3BwNkdG?=
 =?utf-8?B?TU05K2pFV0xuK3RtWVZmTk1xQnk4dGY3SUVsRytpTzNwVTBlbDZ1TEd6MWp2?=
 =?utf-8?B?cThiYTJ0TEdyc1orZTZKYTV2U2pac1R1a25hNUVhQ3o3YTFrQTk5c2laZlV4?=
 =?utf-8?B?MDJPZEtWZW5YVjBpYzNmSGdMT3N3MVVxS0tBa0VuRzkvR2dxTXRFL3lRSWl5?=
 =?utf-8?B?cVVRZDM3WlNJMjdLQmxGc2M2bG9HZ25USHFTVklyU1RWeDMwbzNET2FHbWpP?=
 =?utf-8?B?RTRsTEtYUWROd3UvdFZ1QWtMY2xXS0QvWTZTQXlrUEVEQS9GTzM0ek9DTGFV?=
 =?utf-8?B?TGsxZXN2NzZuOEd6d3JGbFFsUDJTaFZzNWpobUdaSG53ZmFoRlJiZzdCMHVX?=
 =?utf-8?B?Q2dteTZ1YWw3MVpOYmpreHVHd3oxRE0vRC9ERUhhNjZwYnlZeFo2STdCMXgy?=
 =?utf-8?B?c0lhRUFkZGJDVWJrcFhEWWpVSTcycGFKdHMwejZtT0ZZSTA2RzN6QzZ1V3VK?=
 =?utf-8?B?MnNhaGdrNDR2WktXMXR3YkJxbjZ5aXFCNTJ0M0pPT05Mb2ZkaFBhbm9wRVVM?=
 =?utf-8?B?TE1pekJlb0phVVNhb09qTCtGZnFWWWE1cVNGTGptZVhJNEN0ZDJuMXFWbVl6?=
 =?utf-8?B?bStZMWZVODNPQnpDaDVFTHZVSXJyUnlFYUlycUdJbVAyaFpQayt0akxLZ3Ix?=
 =?utf-8?B?cWRoazE2QWk5VTNHc1VsY0hBL1VaQ2R0Y1BXRTdicGN4Z2xWT0pBL3NVSUtZ?=
 =?utf-8?B?SFlmaEFlMk00dDZzY1ZHekwrelo0RXpudjY2MEtkL3ZCNGgraXpWU0s0ck1B?=
 =?utf-8?B?byt0MXk3ZnFrblhRdDZ1dTI1L3czbWZHNFJkTG5URWoxZkF5cC9IL2I5d1pY?=
 =?utf-8?B?Ym14Y0dqYld2TEQ2KzkxOWtxMi9RcS9aRTRENFplSURKRi9Bb2RieHhoTU96?=
 =?utf-8?B?eGFDejNmRXdYcUlqL3gzUnh1WjB0emgzSmVuWSsvYmd1UGVPNjR4YkIxeXFJ?=
 =?utf-8?B?NTFRbkZoK1pqd29BM2RXRThBZnFEclIwRUJuUVFNNmNqUFE4OTZFZnBsV1Fy?=
 =?utf-8?B?V0Mzb2QxeUJuNUwxWHhaeWl1bFIxMEYrSXZVcUJ4K3Fuc1hDUVpYR09GOU90?=
 =?utf-8?B?aDNSM09Zb0JSS01YL1N3QUM3V0NrTWhZMVQ5VlVaUkhuVm1ZblhTVlNaVU1p?=
 =?utf-8?B?Z2FKcUFOUUpSU1lnK3NwU01wanV6UTFFMGdmUkViZStWQ092VXpvOGRtMlor?=
 =?utf-8?B?SkZwVEkwN0czYnl5ZENPaVBCdkQxeURMa0pUSDhrK2RLdHo2MDA5SWpJaSti?=
 =?utf-8?B?dUZIeEs4RTgyanZPL0llZnNDU2hmZ3JuQ2lIMzFWUUVHYmpmcnlPbFBwYmRM?=
 =?utf-8?B?WktBL3Ava1dkRGtFUEFYUjlKa3dkNnVoRS9JYTd0MXdpaSs0cS9FQ3lNV2pQ?=
 =?utf-8?B?cGg3WkU2c0pLOW5VMU9VVUNuSXoxUERza1ZHN3Q3VTJzY3RMR3RvNXI5M1Zt?=
 =?utf-8?B?dEZSbk9nc25yakk0ZXNyQWNHTVpSUTZ2L0p0ZnJyK1B6TFdvcmtSdG1naUZ4?=
 =?utf-8?B?V1g5dG5VVnR2R2x1WkJnR3Q1Y3NxNmlyOURNUnpwZ3M5cEtvSlhiakN0d05J?=
 =?utf-8?B?RHdkNVdIMFEwaC96Y1dxOGpQMUJMbWt5MWE4ZFFleHArelBxME9GazJtNEVS?=
 =?utf-8?Q?Av/WyeXSdSFCFFKV4ZObQHTFq?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 4ccdf883-b67b-464a-bf6a-08dbce598179
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Oct 2023 15:06:42.3572
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: dAPZso0mKSXhPZ3o52E2klwjLdjuF6i7GiMSLAa9NIwrIzqxWpSRBHKQ+61v3kBYvH/iZtkdQk8/w9ham0Z3mw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR04MB6945

On 29.09.2023 22:54, Stefano Stabellini wrote:
> 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>

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



From xen-devel-bounces@lists.xenproject.org Mon Oct 16 15:07:55 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 15:07:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617728.960635 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsPCE-0003Un-Jd; Mon, 16 Oct 2023 15:07:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617728.960635; Mon, 16 Oct 2023 15:07: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 1qsPCE-0003Ug-GS; Mon, 16 Oct 2023 15:07:54 +0000
Received: by outflank-mailman (input) for mailman id 617728;
 Mon, 16 Oct 2023 15:07: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=4UvS=F6=arm.com=Bertrand.Marquis@srs-se1.protection.inumbo.net>)
 id 1qsPCC-0003UO-Hm
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 15:07:52 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur05on20611.outbound.protection.outlook.com
 [2a01:111:f400:7d00::611])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id c5e3baf6-6c35-11ee-9b0e-b553b5be7939;
 Mon, 16 Oct 2023 17:07:50 +0200 (CEST)
Received: from DB8P191CA0020.EURP191.PROD.OUTLOOK.COM (2603:10a6:10:130::30)
 by DB4PR08MB9216.eurprd08.prod.outlook.com (2603:10a6:10:3f8::20) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.35; Mon, 16 Oct
 2023 15:07:46 +0000
Received: from DBAEUR03FT043.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:130:cafe::fb) by DB8P191CA0020.outlook.office365.com
 (2603:10a6:10:130::30) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.35 via Frontend
 Transport; Mon, 16 Oct 2023 15:07:46 +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.6907.20 via Frontend Transport; Mon, 16 Oct 2023 15:07:46 +0000
Received: ("Tessian outbound ab4fc72d2cd4:v211");
 Mon, 16 Oct 2023 15:07:46 +0000
Received: from a78082433673.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 9A0475F1-6FC2-4643-9719-20D29345F128.1; 
 Mon, 16 Oct 2023 15:07:35 +0000
Received: from EUR01-VE1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id a78082433673.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Mon, 16 Oct 2023 15:07:35 +0000
Received: from AM6PR08MB3784.eurprd08.prod.outlook.com (2603:10a6:20b:85::25)
 by DU0PR08MB9934.eurprd08.prod.outlook.com (2603:10a6:10:402::21)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.34; Mon, 16 Oct
 2023 15:07:32 +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.6886.034; Mon, 16 Oct 2023
 15:07: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: c5e3baf6-6c35-11ee-9b0e-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=JjQ5gsb+dvp+Dq+LLJ0NqXE5Ux566qyUYzoq8dTtpQc=;
 b=7M4XKsDOd4Prc+VWi5ZU5qJVKqM+z24c4EBz9txNckrAkXCbmGmW62I7fRgAe0HqAWIWlV7tSt0yK1UEduLppyMV3B6Go5zCshtvsP4jJkA6qYpLPUZJbGRRtE83ewgrA8SuygR0CZZj2XDqWfB4VMQK3cw3c3q0tRdKJFimCgU=
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: ffb9fb81c46bfda6
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=odyBNrkaeNojTx1uqY9+oJYFqaoK7BoRn0v6BCg0PEJB9SQpk1o5j5wt/QCJNSXbCkxGKU8OYUgkurgE+PWD6xD212tl2mF7bR8nLF4W0HFGVTV98fkDxIscvKHbpvXb2vmiijl1vRSxROYqveR3YZTdtibdNKdzWQTiv1miOW4vbMYnTF1Ze7l+1Lo+NFIuv6E1SYF1DKG80ZBjbYcnNQAGHXkPojmIG9nKYZPN4V5WZpqPDxkeOOxrQNwPqDb8/1SKd2DUVD08h+tuXX07JoeLR/w1hdAJ5iSE2zW9otY1/codBYGA+i7O89YpZcHmN4EQ+imXDAxkKqtZHIv5Hg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=JjQ5gsb+dvp+Dq+LLJ0NqXE5Ux566qyUYzoq8dTtpQc=;
 b=h7xAdn1rdo+eTdxF3N6Ml8XFDWJXcoQakp3Es1neXB7EFoZ8V/jRc3StI2NISyPEwFzM1T1ggleuSPPdvsbsi4PeNGPfu1VtqBgvRFJs33mQ7ojlQQk1qFraM5PZuTIYKmiKgNBVt5+CuAiT/LkUofV5gfH8fjZk2XrcBnZbKjj+GEA2SGAPqHj54+ExkaOqTtFqX+Pu0aLz5zbsj6gd5JJnuEtagkMVccYzkSBtLB5iC9gvZv7I9iA0L5dOAcBunyh77Fnbr2uBEKh/PVTgNOZLZ7Wgew5TpCmPhAxRjmvvPcrqAKxVnX1EOYfWPpg0RfC1/LBU3hMT47fJ36OcYA==
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=JjQ5gsb+dvp+Dq+LLJ0NqXE5Ux566qyUYzoq8dTtpQc=;
 b=7M4XKsDOd4Prc+VWi5ZU5qJVKqM+z24c4EBz9txNckrAkXCbmGmW62I7fRgAe0HqAWIWlV7tSt0yK1UEduLppyMV3B6Go5zCshtvsP4jJkA6qYpLPUZJbGRRtE83ewgrA8SuygR0CZZj2XDqWfB4VMQK3cw3c3q0tRdKJFimCgU=
From: Bertrand Marquis <Bertrand.Marquis@arm.com>
To: Julien Grall <julien@xen.org>
CC: Alexey Klimov <alexey.klimov@linaro.org>, Luca Fancellu
	<Luca.Fancellu@arm.com>, Michal Orzel <michal.orzel@amd.com>,
	"leo.yan@linaro.org" <leo.yan@linaro.org>, Xen-devel
	<xen-devel@lists.xenproject.org>, Stefano Stabellini
	<sstabellini@kernel.org>, Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Rahul Singh <Rahul.Singh@arm.com>, Henry Wang <Henry.Wang@arm.com>
Subject: Re: [PATCH v4 2/2] xen/arm: Enlarge identity map space to 10TB
Thread-Topic: [PATCH v4 2/2] xen/arm: Enlarge identity map space to 10TB
Thread-Index:
 AQHZ/dCeetLGz4GvX0qAhZnpE9HtkrBMHj+AgABWt4CAAAGagIAAA68AgAADAgCAAAYrgIAABd6A
Date: Mon, 16 Oct 2023 15:07:31 +0000
Message-ID: <794B0D71-70A7-4546-98E0-EC01573E0D89@arm.com>
References: <20231013122658.1270506-1-leo.yan@linaro.org>
 <20231013122658.1270506-3-leo.yan@linaro.org>
 <169101f8-0475-45b1-b2c2-60dadd88d3f0@amd.com>
 <5a5e960b-e6fd-4617-b33a-10cf07f5bb52@xen.org>
 <8BCB97B4-CBDD-43D9-B0F8-7F637B8BE559@arm.com>
 <4B2BD200-5D3E-49D5-BF13-65B769AD4B90@arm.com>
 <CANgGJDqHu0CB=zzZqda18giLYDkL3My+gT592GLO-b9HsF2A4g@mail.gmail.com>
 <d3952200-9edb-4de0-94e3-c00c571a10b9@xen.org>
In-Reply-To: <d3952200-9edb-4de0-94e3-c00c571a10b9@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.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_|DU0PR08MB9934:EE_|DBAEUR03FT043:EE_|DB4PR08MB9216:EE_
X-MS-Office365-Filtering-Correlation-Id: 8b930f54-9c32-410b-cfb7-08dbce59a7b2
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:
 vzUm0hiIFOImebwi4xSRnVziYWQkpV4n+U8Yy+TQtf+aCaXwzsX7VkGPkc9VQLZ3qWBwfvDD+L30fkjH8HVK45cudTU8jQ/fGAMZ7183ilfb3EirkQ+cOXS3YUVO1QeSV57uau2Vk2xPwqxkFEpk+QgY1icBGYuj9KUhH5jjNXYHdrWckb0NQpY0PRPzbGFU0hL+iReaqPiSZPB8rxBQLzhQhX6egnUMznGr6ZvNaznG7mrzCEOGTm8GEOuEaHOzBmqvABYt0PwJmFIXBYJi84i9NXj4IAW6yNUXteZTU/lz8z1wHzcXzCmL/gLXw/Kcc71BCOV3PIyDe+lx5s+hOAYPiqG/r0KOTguwQPGNE/63WYMcvRkSF58ESBLRZKkBL06eMZAe2OdTTM032RhbnhDq01QJAJxQOyIHaEfA6pe+/rqJbhmB8ZR2c/Cpb9dGU2qNMkNJ91H4BrXXqqnR4VhTX6IZmFnyiA6LrZhygI6wJWf5lwrga1+xNMyv0bycMLAgu7apK4hlLNuDffB+qO/s2g7XIWY0My50lo4j6Pjv2bQTwdLpXdI39eW4f0/f6kSihtEX5I4QC9rwWIx0H/CpcYFxCszAQLZLDI+wM1+toFm255rPdNunc+OpQ0s6GBOcgLnLAWGLEM3lyfueN59CGAOH1ELehQNUEuN3zlI=
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)(396003)(39860400002)(136003)(366004)(376002)(230922051799003)(451199024)(64100799003)(186009)(1800799009)(26005)(2616005)(71200400001)(6506007)(6512007)(53546011)(66476007)(54906003)(83380400001)(41300700001)(478600001)(5660300002)(4326008)(6486002)(2906002)(8676002)(8936002)(66946007)(76116006)(316002)(6916009)(66446008)(91956017)(66556008)(64756008)(122000001)(38070700005)(86362001)(38100700002)(36756003)(33656002)(147533002)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <CB577C195C9F8746BC70C137F36CCF99@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR08MB9934
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:
	7d77393a-d172-47d4-e040-08dbce599ef9
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	MKLsgpFmV3uw5Ha3FNbPOaXfIQaZYt67yFlWLI0qgdvHQ04Tiqxw4PRfjKM2oJnqy4NNmObgzEzoViE5d5bXLSPkq8zTHUnoZX0SXJWyGFa6Gb6GOvdIg0Xdl+HSpwun/jPZR9wF7Xpacl1ZPVGHuUYu1dTpJgeuB4vzn2sMYEx6jYAjePVM8aOyLQZqh6wtvMJgTP5m7FFKLL7Ukwbhjc0D6gNbd/wPG5Zqm0q48fUV+g1gZaBozFFs6weiySorQ5jqp4B2ea3uuPXzPgqGXEkqQBhe/Pf8oQkW7GV+66GO13mPhz2SNoeBkUtnHUNZ7ThJm+Q/taQm4oaYsdffAMqp30gtOaf6xpcyrvJWwWmJOfFNG7vmesIFr8ZzNcLFOsSkrls22YIs+m1w2CTKTFkW6CfeAG6J3e8Bxwefbq4Ark8ee1HSLCjyL8vpd6f4eOh2Ajku1hmnIBZk6oE+axYSq3GGlr51JJsBSOIISuDJb+1KpURqu0bNNDkXpHjU0wwSLiygfWEx8w7BcO87B4QF26qgvYvdcAdhynkkVuHCuSJendtbB6jlsixagkbMVScsZnW+jRAGhz66yU0aSmhXWtAdj9URzxvRsjp+Q1FNMHSdPlOcnitgr67yK14pKTbLjDIGW6EyGB3WcQvYZf1ro4sHYrGqQUl/rGClJuBV3K6P/q/DqHZgoc2yGnWSamfObNxLQZw5neXpCD5ai58t2Zy6zktD+esXLu7iWpR59X2KsvbMZb/2MKIM/V1oPk1Qja++W7MB9V00RqDoKg==
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)(346002)(376002)(39850400004)(230922051799003)(1800799009)(451199024)(82310400011)(186009)(64100799003)(40470700004)(46966006)(36840700001)(6506007)(40480700001)(53546011)(5660300002)(40460700003)(2906002)(26005)(36756003)(2616005)(336012)(83380400001)(33656002)(82740400003)(356005)(81166007)(86362001)(6512007)(36860700001)(47076005)(478600001)(6486002)(41300700001)(316002)(54906003)(70586007)(70206006)(4326008)(6862004)(8936002)(8676002)(147533002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Oct 2023 15:07:46.3825
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 8b930f54-9c32-410b-cfb7-08dbce59a7b2
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: DB4PR08MB9216

SGksDQoNCj4gT24gMTYgT2N0IDIwMjMsIGF0IDE2OjQ2LCBKdWxpZW4gR3JhbGwgPGp1bGllbkB4
ZW4ub3JnPiB3cm90ZToNCj4gDQo+IENDIEhlbnJ5DQo+IA0KPiBIaSBBbGV4ZXksDQo+IA0KPiBP
biAxNi8xMC8yMDIzIDE1OjI0LCBBbGV4ZXkgS2xpbW92IHdyb3RlOg0KPj4gT24gTW9uLCAxNiBP
Y3QgMjAyMyBhdCAxNToxMywgTHVjYSBGYW5jZWxsdSA8THVjYS5GYW5jZWxsdUBhcm0uY29tPiB3
cm90ZToNCj4+PiANCj4+PiANCj4+PiANCj4+Pj4gT24gMTYgT2N0IDIwMjMsIGF0IDE1OjAwLCBC
ZXJ0cmFuZCBNYXJxdWlzIDxCZXJ0cmFuZC5NYXJxdWlzQGFybS5jb20+IHdyb3RlOg0KPj4+PiAN
Cj4+Pj4gSGkNCj4+Pj4gDQo+Pj4+ICtMdWNhIGFuZCBSYWh1bA0KPj4+PiANCj4+Pj4+IE9uIDE2
IE9jdCAyMDIzLCBhdCAxNTo1NCwgSnVsaWVuIEdyYWxsIDxqdWxpZW5AeGVuLm9yZz4gd3JvdGU6
DQo+Pj4+PiANCj4+Pj4+IA0KPj4+Pj4gDQo+Pj4+PiBPbiAxNi8xMC8yMDIzIDA5OjQ0LCBNaWNo
YWwgT3J6ZWwgd3JvdGU6DQo+Pj4+Pj4gSGksDQo+Pj4+PiANCj4+Pj4+IEhpLA0KPj4+Pj4gDQo+
Pj4+Pj4gT24gMTMvMTAvMjAyMyAxNDoyNiwgTGVvIFlhbiB3cm90ZToNCj4+Pj4+Pj4gDQo+Pj4+
Pj4+IA0KPj4+Pj4+PiBPbiBBRExpbmsgQVZBIHBsYXRmb3JtIChBbXBlcmUgQWx0cmEgU29DIHdp
dGggMzIgQXJtIE5lb3ZlcnNlIE4xIGNvcmVzKSwNCj4+Pj4+Pj4gdGhlIHBoeXNpY2FsIG1lbW9y
eSByZWdpb25zIGFyZToNCj4+Pj4+Pj4gDQo+Pj4+Pj4+ICBEUkFNIG1lbW9yeSByZWdpb25zOg0K
Pj4+Pj4+PiAgICBOb2RlWzBdIFJlZ2lvblswXTogMHgwMDAwODAwMDAwMDAgLSAweDAwMDBmZmZm
ZmZmZg0KPj4+Pj4+PiAgICBOb2RlWzBdIFJlZ2lvblsxXTogMHgwODAwMDAwMDAwMDAgLSAweDA4
MDA3ZmZmZmZmZg0KPj4+Pj4+PiAgICBOb2RlWzBdIFJlZ2lvblsyXTogMHgwODAxMDAwMDAwMDAg
LSAweDA4MDdmZmZmZmZmZg0KPj4+Pj4+PiANCj4+Pj4+Pj4gVGhlIFVFRkkgbG9hZHMgWGVuIGh5
cGVydmlzb3IgYW5kIERUQiBpbnRvIHRoZSBoaWdoIG1lbW9yeSwgdGhlIGtlcm5lbA0KPj4+Pj4+
PiBhbmQgcmFtZGlzayBpbWFnZXMgYXJlIGxvYWRlZCBpbnRvIHRoZSBsb3cgbWVtb3J5IHNwYWNl
Og0KPj4+Pj4+PiANCj4+Pj4+Pj4gIChYRU4pIE1PRFVMRVswXTogMDAwMDA4MDdmNmRmMDAwMCAt
IDAwMDAwODA3ZjZmM2UwMDAgWGVuDQo+Pj4+Pj4+ICAoWEVOKSBNT0RVTEVbMV06IDAwMDAwODA3
ZjgwNTQwMDAgLSAwMDAwMDgwN2Y4MDU2MDAwIERldmljZSBUcmVlDQo+Pj4+Pj4+ICAoWEVOKSBN
T0RVTEVbMl06IDAwMDAwMDAwZmE4MzQwMDAgLSAwMDAwMDAwMGZjNWRlMWQ1IFJhbWRpc2sNCj4+
Pj4+Pj4gIChYRU4pIE1PRFVMRVszXTogMDAwMDAwMDBmYzVkZjAwMCAtIDAwMDAwMDAwZmZiM2Y4
MTAgS2VybmVsDQo+Pj4+Pj4+IA0KPj4+Pj4+PiBJbiB0aGlzIGNhc2UsIHRoZSBYZW4gYmluYXJ5
IGlzIGxvYWRlZCBhYm92ZSA4VEIsIHdoaWNoIGV4Y2VlZHMgdGhlDQo+Pj4+Pj4+IG1heGltdW0g
c3VwcG9ydGVkIGlkZW50aXR5IG1hcCBzcGFjZSBvZiAyVEIgaW4gWGVuLiBDb25zZXF1ZW50bHks
IHRoZQ0KPj4+Pj4+PiBzeXN0ZW0gZmFpbHMgdG8gYm9vdC4NCj4+Pj4+Pj4gDQo+Pj4+Pj4+IFRo
aXMgcGF0Y2ggZW5sYXJnZXMgaWRlbnRpdHkgbWFwIHNwYWNlIHRvIDEwVEIsIGFsbG93aW5nIG1v
ZHVsZSBsb2FkaW5nDQo+Pj4+Pj4+IHdpdGhpbiB0aGUgcmFuZ2Ugb2YgWzB4MCAuLiAweDAwMDAw
OWZmX2ZmZmZfZmZmZl0uDQo+Pj4+Pj4+IA0KPj4+Pj4+PiBGaXhlczogMWM3OGQ3NmI2NyAoInhl
bi9hcm02NDogbW06IEludHJvZHVjZSBoZWxwZXJzIHRvIHByZXBhcmUvZW5hYmxlL2Rpc2FibGUi
KQ0KPj4+Pj4+IEkgZG9uJ3QgdGhpbmsgYSBmaXhlcyB0YWcgYXBwbGllcyBoZXJlIGdpdmVuIHRo
YXQgMlRCIHdhcyBqdXN0IGEgbnVtYmVyIHdlIGJlbGlldmVkIGlzIGVub3VnaA0KPj4+Pj4+IGFu
ZCBhbGwgb2YgdGhpcyBpcyBwbGF0Zm9ybSBkZXBlbmRlbnQuDQo+Pj4+Pj4gVGhpcyBjYW4gYmUg
ZHJvcHBlZCBvbiBjb21taXQgaWYgY29tbWl0dGVyIGFncmVlcw0KPj4+Pj4gWGVuIG1heSBoYXZl
IGJvb3RlZCBvbiB0aGF0IHBsYXRmb3JtIGJlZm9yZSBoYW5kLiBTbyB0aGlzIHdvdWxkIGJlIGNv
bnNpZGVyZWQgYSByZWdyZXNzaW9uIGFuZCB0aGVyZWZvcmUgYSB0YWcgd291bGQgYmUgd2FycmFu
dC4NCj4+Pj4+IA0KPj4+Pj4gQUZBSUNULCB0aGUgY29tbWl0IGlzIG9ubHkgcHJlc2VudCBvbiB0
aGUgdXBjb21pbmcgNC4xOC4gU28gdGhlIHF1ZXN0aW9uIGlzIHdoZXRoZXIgWGVuIDQuMTcgYm9v
dGVkIG91dC1vZi10aGUtYm94IG9uIEFETGluaz8gSWYgdGhlIGFuc3dlciBpcyB5ZXMsIHRoZW4g
d2UgbmVlZCB0byBhZGQgYSBGaXhlcyB0YWcuIEJ1dCB0aGUgY29ycmVjdCBvbmUgd291bGQgYmUN
Cj4+Pj4+IA0KPj4+PiANCj4+Pj4gQFJhaHVsIG9yIEx1Y2E6IGNvdWxkIHlvdSBnaXZlIGFuIGFu
c3dlciBoZXJlID8NCj4+Pj4gSSBrbm93IHlvdSB1c2VkIFhlbiBvbiBhbiBBVkEgcGxhdGZvcm0g
YnV0IHdhcyBpdCBib290aW5nIG91dCBvZiB0aGUgYm94ID8NCj4+PiANCj4+PiBJIGNhbuKAmXQg
c2F5IGZvciBYZW4gNC4xNywgYnV0IG91ciBuaWdodGx5IGpvYiBoYXMgcnVuIHN1Y2Nlc3NmdWxs
eSBvbiBBVkEgZm9yIHRoZSBjb21taXQgNzMwNDA2YWI4MTA5NDExNWQ5ZmI1Y2EwMGJhOGQ1M2Nl
YzEyNzliMw0KPj4+IChkb2NzL21pc3JhOiBhZGQgZGV2aWF0aW9ucy5yc3QgdG8gZG9jdW1lbnQg
YWRkaXRpb25hbCBkZXZpYXRpb25zLikNCj4+PiANCj4+PiBXZSBhcmUgbm90IGFwcGx5aW5nIGFu
eSBwYXRjaCBmb3IgaXQgdG8gcnVuIG9uIEFWQS4NCj4+IE1vc3QgbGlrZWx5IGl0IGlzIGJlY2F1
c2UgeW91ciBVRUZJL0JJT1MgZmlybXdhcmUgaXMgMi54LCBmb3IgaW5zdGFuY2UNCj4+IDIuMDQu
MTAwLjA3Lg0KPj4gVGhpcyBmaXggaWYgZm9yIEFWQSBtYWNoaW5lIHdpdGggb2xkZXIgVUVGSSBm
aXJtd2FyZSAxLjA3LjMwMC4wMy4NCj4gDQo+IE9PSSwgd2h5IG5vdCB1cGRhdGluZyB5b3VyIGZp
cm13YXJlPyBJIHdhcyBleHBlY3RpbmcgdGhhdCBpdCB3b3VsZCBhbHNvIGNvbnRhaW4gb3RoZXIg
Y3JpdGljYWwgZml4ZXMuDQo+IA0KPiBXaXRoIHRoaXMgaW4gbWluZCwgSSBhbSBub3cgbW9yZSBp
biB0d28gbWluZCB0byBhc2sgdG8gbWVyZ2UgdGhpcyBwYXRjaCBpbiBYZW4gNC4xOC4gT24gb25l
IGhhbmQsIEkgdW5kZXJzdGFuZCBpdCB3aWxsIGhlbHAgdG8gYm9vdCBvbiBBVkEgbWFjaGluZSB3
aXRoIGFuIG9sZGVyIGZpcm13YXJlLiBCdXQgb24gdGhlIG90aGVyIGhhbmQgdGhpcyBpcyBjaGFu
Z2luZyB0aGUgbWVtb3J5IGxheW91dCBxdWl0ZSBsYXRlIGluIHRoZSByZWxlYXNlLiBUaGUgcmlz
ayBzZWVtcyBsaW1pdGVkIGJlY2F1c2UgWGVuIGlzIG5vdCBsb2FkZWQgYXQgdGhlIHRvcCBvZiB0
aGUgdmlydHVhbCBhZGRyZXNzIHNwYWNlICh0aGVyZSBpcyB0aGUgZGlyZWN0bWFwIGFmdGVyd2Fy
ZHMpLg0KPiANCj4gSGVucnkgKGFzIHRoZSByZWxlYXNlIG1hbmFnZXIpIGFuZCBvdGhlcnMsIGFu
eSBvcGluaW9ucz8NCg0KV2l0aCB0aGUgbmV3IGluZm9ybWF0aW9uLCBJIHRoaW5rIGl0IHNob3Vs
ZCBiZSBzdGF0ZWQgdGhhdCBpdCBpcyBmaXhpbmcgYW4gaXNzdWUgb24gQVZBIHBsYXRmb3JtcyB1
c2luZyBhbiBvbGQgZmlybXdhcmUgYW5kIHBsYXRmb3JtcyB3aXRoIGFuZCB1cC10by1kYXRlIGZp
cm13YXJlIGFyZSBub3QgaW1wYWN0ZWQuDQpJdCBpcyBhbiBpbXBvcnRhbnQgaW5mb3JtYXRpb24g
dG8ga2VlcCBpbiBtaW5kIHRoYXQgdGhpcyBpcyBub3QgYSBmaXggdG8gYmUgYmFja3BvcnRlZCBm
b3IgZXhhbXBsZSAoYW5kIGZvciBtZSB0aGUgZml4ZXMgdGFnIHNob3VsZCBub3QgYmUga2VwdCku
DQoNCk9uIHdoZXRoZXIgb3Igbm90IGl0IHNob3VsZCBnbyBpbiB0aGUgcmVsZWFzZSwgSSBhbSBu
b3QgcXVpdGUgc3VyZSB0aGF0IG1ha2luZyBhIGNoYW5nZSBpbiB0aGUgbGF5b3V0IGF0IHRoYXQg
c3RhZ2UgaXMgYSBnb29kIGlkZWEgdW5sZXNzIGl0IGlzIGZpeGluZyBhIGNyaXRpY2FsIGlzc3Vl
ICh3aGljaCBpcyBub3QgdGhlIGNhc2UgaGVyZSkuDQpTbyBpIHdvdWxkIHZvdGUgbm8gYnV0IG5v
dCBnbyBhZ2FpbnN0IGlmIHNvbWVvbmUgYXJndWUgdG8gaGF2ZSBpdCBpbi4NCg0KQ2hlZXJzDQpC
ZXJ0cmFuZA0KDQo+IA0KPiBDaGVlcnMsDQo+IA0KPiAtLSANCj4gSnVsaWVuIEdyYWxsDQoNCg0K


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 15:11:43 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 15:11:43 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617732.960645 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsPFp-0005Lt-2v; Mon, 16 Oct 2023 15:11:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617732.960645; Mon, 16 Oct 2023 15:11: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 1qsPFo-0005Lm-Vr; Mon, 16 Oct 2023 15:11:36 +0000
Received: by outflank-mailman (input) for mailman id 617732;
 Mon, 16 Oct 2023 15: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=BBjo=F6=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qsPFn-0005Lg-1z
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 15:11:35 +0000
Received: from EUR01-VE1-obe.outbound.protection.outlook.com
 (mail-ve1eur01on0613.outbound.protection.outlook.com
 [2a01:111:f400:fe1f::613])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 4a7acfea-6c36-11ee-9b0e-b553b5be7939;
 Mon, 16 Oct 2023 17:11:33 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PAXPR04MB9424.eurprd04.prod.outlook.com (2603:10a6:102:2b2::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.35; Mon, 16 Oct
 2023 15:11:31 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%6]) with mapi id 15.20.6886.034; Mon, 16 Oct 2023
 15:11: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: 4a7acfea-6c36-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=boetoW581PqXSEZ2j5XuWCbfBqoPSXzo/FSJY8fepkkEU5+xBf5Ss4um13U0/rowR9HFFveLY12wxHAzRnenbS9D7OktIItC8J/hsdgBOTPSL/o8+F0lYrk+zuchRoLcR3iNYl4WAztxWEsTXrrAS9W5BOsNHvbOBg6pEGSvnWeJITBEHzwyEa5hg6z5xC6cO4042l3PnX92MDJnmfCmZhebY4uXkqq0j8Rr6Xh2+MEU7/RfD45XlpmrA5dTUPtSZyxF4m9+3+CaK4hBFoYckgCKZhnbR3719VAJ0LV8yI/GHOMVnWXvc/YPgcYt3wyy9/ixF60UGUFwHGpC/Ysidw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=Urt7KL9uVQvawvoXwmOneuQfMzS8+85N5075XH5t61I=;
 b=VQhLMBSFCF5sfZYSl4k98eDMyNJIVNz0SwD5Zrxx/gt+nQG1b/KmtPLv1939LDF7DTdW33WoLZyfxQLjRXHUKeONsGobI0FuJMktY6zlH7gzUf80kqsSlIxf2qlkNHL1+fQzP/zPjxgHFAt1mq6X70JygUBTQVUYoOLXPUVPATXFGo1g0tmTHYb42Ia5URXorAov0eE+fKi5siYtPjOGw9PHM+2NVB1kE55lAp4r8REs7vT36B32ZGjAuUtO2L2LNuOYQuhHI5cdeRkbPKesmtoBJ6SEtPcIZo0cmbCbAoD9BKQrdl87dh8A3kS28Me3B3Fqk4iJdqnDa2EVf/7J1A==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=Urt7KL9uVQvawvoXwmOneuQfMzS8+85N5075XH5t61I=;
 b=u5lsQbDQxdowIcCWKUfLBSw/Kgb0S3CwS1HWXvQlvIqYIuc8yOjDqIlU4a4bXSJmis4v68VJXvLEs6VloOUB7PtY55YF6ptvvBPfDqKS7xilQHTasXDT7DvGz7UuvKkLIw4N6snU/5FCmsL8H0Z0C3cVO/v9uU5mhBdnAoK6dMk+UnM+7TKA3orOoRf5MOifnSkFsTQ6+vF4J0EAYH78W3/BWCaWlglsl3+KuiLVWcXJ6eixAMjBdk4C5if7w/P9kVsc7Zq48zG4rCGL30FrB0+f9YqrFiRJ8ltpg/Ghu++l29A3rMWpgpIPL8wtol+yCSml4dARuqkITWckZVNI2Q==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <9b8c82c3-0eeb-799e-edb2-fe7f64e77b87@suse.com>
Date: Mon, 16 Oct 2023 17:11:28 +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/paging: address a violation of MISRA C:2012 Rule
 8.3
Content-Language: en-US
To: Federico Serafini <federico.serafini@bugseng.com>
Cc: xen-devel@lists.xenproject.org, 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>,
 Stefano Stabellini <sstabellini@kernel.org>
References: <5a304ffd4fbdd0d5809dc68b857410bbc02f32a0.1696252375.git.federico.serafini@bugseng.com>
 <alpine.DEB.2.22.394.2310021546070.2348112@ubuntu-linux-20-04-desktop>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <alpine.DEB.2.22.394.2310021546070.2348112@ubuntu-linux-20-04-desktop>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0230.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:b2::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_|PAXPR04MB9424:EE_
X-MS-Office365-Filtering-Correlation-Id: 64d3a040-e631-4068-6f87-08dbce5a2d7e
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	J51+CNpw2Sx359k96UEBW9kf7P+4cQF77fGKyi8J0amLcscg8vkGCdNXayyjr16S9bYCybyBvja7QrHOaTFv4OzLichdr+V3E72048ji76berqTU8X5ijGhK1ZsFpcL5VdT42vJVQRgvcvwKE/Q7+mM+F3haoXGI5o5SOG4yWmkGA1WK5QJosLbExdRg0E5SMHoj25LnVK5g/LJlcWEIEyfbvbZwLpbdXOU7PHisp8HVGptrMQbFWiheAhL101vqfefSUStT+agiF/oHj2C0hFAlfDtdGxzDAbXODIM99ziSWBO+1Q8rp+2fUIAK6VJdAc/LGWURKlyIs3BTN4VHZHFGWwcGEJnJ2uEsgcwlbB2WmrFDZKpEitUVOra9QaPo28YKThWSeGZW1Ze9dotRcGsqZF1X6Z0ADGbJoNNMA2+OCXV0nUmg4qLtbY3DKum54fSvUjyMJB4swKHvEfCNpR1uu7xOOAfLdMfESGspU+XcBcsW+0R8smaAp0ZsinYtQbJllfiNYiEUVjpb5RTpkZ2Tv5xghAV024+aSkPkwaGdqVJ6x+FlZ9GDMv2gPFvVPwq0A/sqfpwZtk9JBdjGerqXdh2OGnRuAuAtZYBQpH4d0anEBHf5lrrYEHBnCpiH2ol+0dOsTi1XDOgrAHyMIw==
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)(396003)(366004)(376002)(230922051799003)(64100799003)(1800799009)(186009)(451199024)(2906002)(4744005)(41300700001)(6486002)(86362001)(478600001)(31696002)(66476007)(66556008)(36756003)(54906003)(53546011)(66946007)(6916009)(6666004)(6512007)(6506007)(316002)(8936002)(8676002)(26005)(2616005)(31686004)(4326008)(5660300002)(38100700002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?UEcwR2xncFFYaCtOa2ZRYlJFTnoyREJDSCtSdTJodlRZWGRrRFUyYWhaT1N3?=
 =?utf-8?B?RXZ2WFB5eXFJTXNZM2xMSGIxLytVR3d6Vi9lNnNoWGVaZUdodTN2RmE0dHQz?=
 =?utf-8?B?MzVobk1FZVVtQU01WERuWFQzNjZmMzIrakRDQkFtZmJTVVBaUkgwaCtkLy81?=
 =?utf-8?B?LzJLZm9wbUwxK1FBTURGOVBnUE4yYXNaMkR2WVA0SmRoNWFuNGZLeXVlTmJz?=
 =?utf-8?B?SDVwY2t3ZzRsOHc5QWpoSVg4THArU0lmbG44STlJZXUwd1ErNHFaa0FPeVlG?=
 =?utf-8?B?U1NKQ2JXN0kzNk1DKy9rUVR4MDFBTXlVWjhlbVhLSVdBeUoyM1J5MExaQ1pC?=
 =?utf-8?B?TlpjU1Vjb052S3hhRWNWWVAwUmd3Q0NJaXpLN3VsQkRDV09LeVY4OTJOTzZX?=
 =?utf-8?B?Y0JzMEk1aElYUm9LOWlBUVY4M0VIdmRGM2hTN09oU2lVeURrcU9JOHpLaUJZ?=
 =?utf-8?B?RnpOeUNYU0g2dlZaVTBDZVlGUk95alpoaDRlY0ZQSGRYSVZiWURTOWJQdmE0?=
 =?utf-8?B?dnBSRzk0NFJyWTE3Y2l3bUQvcXhMRUYrRHg5M2E0S0l1ZlFidU9td3RCNity?=
 =?utf-8?B?QnR3R3o3VkplWklFMkpxdVlYSDhuUy9KNm1KbE84QlhadGVOTDJReXAwcU1E?=
 =?utf-8?B?aHlOS0F1TWJ5akZLT1NFd1VIUTlHcGp3T1RBeFAzVDVETHNFM2ZDOEdkc1VN?=
 =?utf-8?B?RlhDWkJNWnJKQlBTd0sxcVg3b1ZjdGs5VVh4UmdLTmdHZWhUK2FsdVl1aWVh?=
 =?utf-8?B?WHpyT0xmRHJqMXVTRlNnR3hlTGtsdXV4YUxLQW1iOFp5dERYV0pqdjZTOWZu?=
 =?utf-8?B?WURWTXlmbGNIcXBkOERyYUV3U2FtS3FFNTcrcjV6cS9JTHlIU0hUUDFGc1JM?=
 =?utf-8?B?SXhUOHdmbjZTc0M0bmxSNG1IdENFeVZCM3piRkNZdnExVWh5RDFMeHpBVFpT?=
 =?utf-8?B?L0NqUWtlWTNiY3hKOXF5VkV0bEc4Y24xb0NGODBDUXlxVVI2VmN5eTVRZVo2?=
 =?utf-8?B?c2x2ZXlpZXJmcGVaYWdwN2lOdnBRREpodHRiSkVtZE5uWmhlOU9DRGNKNHNE?=
 =?utf-8?B?a3BLTFRuV3hiMFo2aXVlczhtblZEc055T01Pc0k1OGFDby95dmU0RWtjT2xE?=
 =?utf-8?B?Rm8xc0swYzlmaXhsTEI4WlcvaWQ5ZWNyNGlNbE5VTDBuYmEvS1RVQkhsSnho?=
 =?utf-8?B?TTNtTnFnVHR0UzJGRDJaNzJ1eE9OcGh0eDVIdGJhd2xMejZNQjRsT1VnYXZx?=
 =?utf-8?B?cFpyTWN6blpkY1RUbHFxUlBvN2NaaVkrWEttMlVCbnZMM2N1NlBpNnBXY2RU?=
 =?utf-8?B?c00rbGdBT0dIMEQweTFWeEY1bzhnYUphK0tnTm5tWEhQSDd5Z1ZOb2l4Nmpy?=
 =?utf-8?B?aUZlZHlXR3U0eVAxckdLcG1XMFNzbVhLSXRuSHBMZmJFZWNUcG8zcHkxOW5n?=
 =?utf-8?B?eXIwckJDMnhwZUg0V3ZOd3crSUZtRml0SlJoZ056cExqSmI1MFFDaUxWbWRj?=
 =?utf-8?B?QXZvSzBBdWx6c3RoSEdRNUNiaGNDc29YaFdYTHJocFA3WFRydGdKNXArTXha?=
 =?utf-8?B?Wks4SUxEc0gwNjNLamo3U1g3STlHWFJsczQ0dEVMSkswRXV3cUZONUNWYTRV?=
 =?utf-8?B?R3FTeVZkRWJ0dkRydHBFMEVJRU5sSVpDcHdrZTloWGN6NHZrNGtuVGtxbWVi?=
 =?utf-8?B?Qm1sNnFXcDZaQUwyVzhka3RXcGs1UXJqRFlLaHNscXVmdnE1cnNWOG1ISi9J?=
 =?utf-8?B?b2FRTXdhN3hET2VMVEd2bXVyL2FLR1l0MGs3VjNuc0I1UlF4SDJWQnlXYWNV?=
 =?utf-8?B?OUtRaWt5MnZZY1FhMk5tcG41MGRPdCtLL2N0eUpxOFBHbGtMZlhUMVZ5NDVs?=
 =?utf-8?B?OStYamxpbkVwcWY5cTVUelYzdlMzK0M1ME9Zb0ZZcFVnQVB1MytIQ0U2SEw1?=
 =?utf-8?B?MmxoQVhJbG42Y0cwMnh3YmtQdlhlS2ttaDJ1bnpYQ1dFeG4zZnFUSm5DMS9y?=
 =?utf-8?B?ZHNneHN4V2h0R00wWHJMWU9VaDdLbUFRRVJwUjhiKysyblQzQzdFT3Voc3Uv?=
 =?utf-8?B?YTV0MENXeFVyd3B2Y1hMVmlYM2VEZndWd29EYjE2b3dDc29ITEZmaXhvV3Yy?=
 =?utf-8?Q?44GpEZsq1aKQQGd+BdQB5Ujt8?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 64d3a040-e631-4068-6f87-08dbce5a2d7e
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Oct 2023 15:11:31.0642
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: upnP8U5Jy4CGyPK0BuAGaaiLwNqOdQR2S1Gzlfv3k/NwES01UBCtjQe4Rlt9vM1vhj/s/RrA1oa5orr67zS8pA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB9424

On 03.10.2023 00:46, Stefano Stabellini wrote:
> On Mon, 2 Oct 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>

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



From xen-devel-bounces@lists.xenproject.org Mon Oct 16 15:12:10 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 15:12:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617737.960655 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsPGM-0005oX-BJ; Mon, 16 Oct 2023 15:12:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617737.960655; Mon, 16 Oct 2023 15: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 1qsPGM-0005oQ-82; Mon, 16 Oct 2023 15:12:10 +0000
Received: by outflank-mailman (input) for mailman id 617737;
 Mon, 16 Oct 2023 15:12: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=BBjo=F6=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qsPGL-0005lJ-Ld
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 15:12:09 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 (mail-am6eur05on20621.outbound.protection.outlook.com
 [2a01:111:f400:7e1b::621])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 5ff64621-6c36-11ee-98d4-6d05b1d4d9a1;
 Mon, 16 Oct 2023 17:12:09 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PAXPR04MB9424.eurprd04.prod.outlook.com (2603:10a6:102:2b2::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.35; Mon, 16 Oct
 2023 15:12:07 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%6]) with mapi id 15.20.6886.034; Mon, 16 Oct 2023
 15:12: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: 5ff64621-6c36-11ee-98d4-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=gk35EEE4eXvLCKeTAEFzSaskLS2eL6RrR092ZkIa/vmnvizwyP4GOHGAYrAte6REkLeCyLN4xyXSONinVmYdHicA9X4B/Ezob5qV4zhYQ5ImL9KaF0hyCPz8lI5V8t5VHVeMgDvFr74g+FWKFArqw2jXoBWfjO8plQwT4Q0UoDSymdVX1TiMPsMZNKeIovTHijXUA1bLn7us5AijDTVf2uGRI4fptygQLHxOGbVNod5mx9+7UR3a5vmvzBEYjK2A0p3g4dQ/+CVHDaoYKdQXlb9njc+a7omcLkTMrApu46Yi2p8oGVLlrIo3p6lYnA5m3blvPQjeeOsgfFxmkErfZA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=E4CYrwUqHItjqdVuOYOUh+zmSXTVB/cJE+yZeZE48/A=;
 b=P0QbcSnWUdZVbbQHZj7NZmc/yj5CAxqUbFnivg/Jp5uH85K6j2DXMdzEp4Yz5RxtRZmHpwquCGw3EsbVkyQprg75sBQojCC9IxggwyA+gfdnjbu5ccO7Mg4soXZiexyuFJKoOFsj3qlHUaRnN70bEQ6WQzTkGO25lg36ZqDWuRQogQAc6oQuK6mb9WJtp3zPqZsSBJcqEhodRv17EdxG8R7UKuBlTZRWVic+KZgSn7rNgJhCSDSY1WMfouIm1pw6WRs77MFd5ZtxcAofHcg9wmKNZsIdl4krDYXNTGSOh/YAnwJ+P/cJR7f06XXx5COpc5Hk1JfiC9pZGhqpyNcWoQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=E4CYrwUqHItjqdVuOYOUh+zmSXTVB/cJE+yZeZE48/A=;
 b=ZdYutT3e7ir1yzr63MBV31GbFB6d44W8yq6ZkJjQw1UV9235MEHWzmh8b7tqq4RWX1jfmQ/G0NrO5eBGUVibbF4J8iqy+hqt9DetksFwyKFNJQuk5y40GBQygbhI67cAFbRGRHL9OQlQGEAa88HZBMSwBWRWD0eVRDGSX9NMb5LDYficYLDHy+y+toW3PZRUxIfr6LM+9CYfxOpdTYG7rN197KNXV3x2nrdFT7msIzNsYOlAw0O8OZ5ttpplweo1vFvpkuevy7NVryq0g6vG0yHUgmQicqq8K/aFbhI4VISx1RmAl67Zc/4c2oSQgvLLNZI336vX9urqoUsRY+cbgg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <0ee1b2df-25eb-fc57-3d44-7de0e9cef478@suse.com>
Date: Mon, 16 Oct 2023 17:12:05 +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/paging: address a violation of MISRA C:2012 Rule
 8.3
Content-Language: en-US
To: Henry Wang <Henry.Wang@arm.com>
Cc: Federico Serafini <federico.serafini@bugseng.com>,
 Xen-devel <xen-devel@lists.xenproject.org>,
 "consulting@bugseng.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>, Stefano Stabellini <sstabellini@kernel.org>
References: <5a304ffd4fbdd0d5809dc68b857410bbc02f32a0.1696252375.git.federico.serafini@bugseng.com>
 <alpine.DEB.2.22.394.2310021546070.2348112@ubuntu-linux-20-04-desktop>
 <3D657AA0-676B-4681-B980-26BCCC98B092@arm.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <3D657AA0-676B-4681-B980-26BCCC98B092@arm.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0237.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:b2::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_|PAXPR04MB9424:EE_
X-MS-Office365-Filtering-Correlation-Id: 0a8ffca5-7acd-489f-1101-08dbce5a4353
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	SkNeOrGVcaTpgOX4ZGOesqU0plSmGheFdyUr3U06eq71V/8rNoVbXsOulYytINveyLROyQdjkZDaslawzjg9U2U6xPCYnGJ3il8vn/kebRWAaiwnmmiaDaLhEK1rMy6K87Ix8FrU3OkSvxbZp/qLrebaRWDPIQhAA+++BXzmUPt1f75/DBdrJ+Y1xSGojuCD2yethzWYh6cpV453rnDPYm9OISIBC+HWITN8GylrWDCA6M+BMQjzn+eDnOq0ws2boJig9OCXKsm7vosJendDmLFJcG9jyaIreqFkNsgzJiNCAOto9cP5WzvRmfSelgrQPNdp3UlYJCWzrKtGYWOpy36c0Z6svI/biNQEow5fRYOlUhFTDZljzSEB9U2YD0D6vmtZauUJJS+ZyGVr//d/CNh9xr8UEXhfgZutqPDtEGLGdpaiTQy+WQW1rYRrn3RaJyNs4ksQLDmy4CQG8BEUDuhRco2YstkP9gHENAYD1l+Xj8tl1kn+XrQ/0XaLoJJFDqNqSjjpVtxQPwTn+uj5RD7fIqC9pwJcbZN2TBoouxSGLoNOVf3XlumrcNGAbPX7I+RPNc0Po2ANxI+3JtsAqtqxfYKV5Qa3ttal3nskicR7VfBX4Hag6/yk3rSt8DViMpAPij5mPfAP1ZUKtmAWTA==
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)(396003)(366004)(376002)(230922051799003)(64100799003)(1800799009)(186009)(451199024)(2906002)(4744005)(41300700001)(6486002)(86362001)(478600001)(31696002)(66476007)(66556008)(36756003)(54906003)(53546011)(66946007)(6916009)(6512007)(6506007)(316002)(8936002)(8676002)(26005)(2616005)(83380400001)(31686004)(4326008)(5660300002)(38100700002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?LzY5MEdqb2FGZ2ludGw3YWx5NTB3VXdzNlVreVJZQWVEN0xYNW9wYnA1NXMv?=
 =?utf-8?B?V0NTUFdNMUdDSUV4RlZKU1hpRVhsdHRiQUlON3ZoY0ZvSDhwbG1CMlZzWnNk?=
 =?utf-8?B?cFhoaUhFemxSQ01rVjUxZlFoM21rMHA5N1pmTnVQU21hMEtGdG5lZkoyZzBy?=
 =?utf-8?B?L1JmUG9JRndyUGdpU1NUMG9pY0Izc0pFQkI1dEVidlVxbWxHSGpkTFdYNDln?=
 =?utf-8?B?Y0VraVN4Z1lkUjMxazQ2VEkzOW1SYXRpNEZtaTZSZG91bmlCVEo1QWY0VkIw?=
 =?utf-8?B?U09lNjM2MnRKaHBiZU1yUHo4QVBNalFzNUZJVUsyNTJkT0gzeTVPSDhQdU5J?=
 =?utf-8?B?N2RHbGlKRThTaTNDemdVQTFOY1hleFBrcVlwQ3VsLzFvQ1dvVnBHSCtxSlAx?=
 =?utf-8?B?aEEzRFo4Y2lKUWV4d0hZN3FIa0hhaFV0MXRYenU1SkdOQmpydjRoS2pxYmlw?=
 =?utf-8?B?V0x1NmFSRURMTnYyT2pWbktNWEczLzJZRkVtamQvM01YTzczejNqcXhHeVZt?=
 =?utf-8?B?Qi9LeVA1TXo2RnUvdXA1RS9FVTN6bXl6UElPWkpxWCtqZUVza2crdGhmdUFM?=
 =?utf-8?B?NWtHcjNlVnFDNU8xdmtscHR1OTJOLzRiMG55aEdLMitiYjlTalg0L3ZMMnRG?=
 =?utf-8?B?cGZnYVNqZkNBQlBRZnkvb2E0UUFQM1dxWnF6N05PaDFZdWtRSm94U1JpMFNW?=
 =?utf-8?B?YVJmaDZUSHJrUEViQlJzUmk2RDludDFXV2J6dDFhVXhmS3FrVUxUSWRLWjFO?=
 =?utf-8?B?MVJVRWtNcWJ6MGM2NmlOeWxPWldUQmVzczAwaCtycnJPRFhlSHp4ZTFaaUFX?=
 =?utf-8?B?cUdTOXpqLzNKdG85UllFazJlV2pCMU40SldabVdrRjBrbklmOHN6bndzd1Vw?=
 =?utf-8?B?V05YV0hpdUFlLzF0ZXZTWUZ5K0F2a1dNckh2a2xBU1FYYTJpZytMbE1RR3Vs?=
 =?utf-8?B?MWFrSVFKVDFRNmVPN0MzWG9NaU4zbS8yUUF0ckdrdFF2Mk42Slhod3BrS2Nw?=
 =?utf-8?B?WEkyVW8zTjloWmNhVzhHdFdHdjIvOENRRFVDWFFsdG5KUzNReVZBZ0tyZFls?=
 =?utf-8?B?bU82REtkdEJNZUR3L29Td0hIOXhaSU5VSjVxaThvVS85UjljdFJwZFFWaWlM?=
 =?utf-8?B?UVNPcVovS2pucXdFUUtKM2w5bG85eGM3Q3o2Uk9LWTBVS2c3eXJCUUhjV1pp?=
 =?utf-8?B?Uk1GRWpxODJqLytZTHFlcDRSY3pqb0VjRStvU0JjZis5aG9yRWszdVJwSkpX?=
 =?utf-8?B?aW5mMVpSL2E1eXcvK1dSdGxLcWtoZU9sZVViZzJOQ1hncEt1VE4wTzllV01P?=
 =?utf-8?B?ZElYNTJUZTdWeDA4ejZJeVZSaGlQcllLdFpNT0lYNnVMamtHR0FUVVhiY3FK?=
 =?utf-8?B?S2Rhd3RVMEJwd0lBQUpvakxYYTJ4VWxMNU5pVHJDT05teUhpY2xFRjljS09O?=
 =?utf-8?B?TEhSeHZwdG5FUC9pV3pqM3FWQjVmVmhFNTRrOWZjcXJXNmZzcldvOHRrK2pT?=
 =?utf-8?B?MzNhS3h2NUEycGsvZjU1K3VJWFptZENWYU1ZN29OTE4xY05YSVdpSnQwNXFT?=
 =?utf-8?B?Y3F5NWE2dlF2YTEwcm1wM0h2VldvR2JuNjVIbFlKMldnQUozZ3FKNWk3bS82?=
 =?utf-8?B?eUkwN0JIK3FKay9OaGFHZjR2ckZJc0d3WGh5U0lxYXRodC9yZ2RxRnN4Y2Ns?=
 =?utf-8?B?TjlUdHNNbStnVUZ6RE9OcmVjY010Y2d5bzN6ajVzeDRxL2lEUVluYTU5ZHAr?=
 =?utf-8?B?K05NUFpBcGFYUU1iRVRoTHZOeFM3VS93eUxXd2dOTG5pMlJGL2dOaTdENnNR?=
 =?utf-8?B?QlJ1WE8wYUtzQkh0TGcvdHJuakRUdFpNZ3haQy9rbUpuUzQwUUJIbGJFcmpn?=
 =?utf-8?B?N2huTXUwODl6QTNNSHdlSFhaeWNXTlBYazE0MFhNN1ZGc1VUYXAvdzAyaEVn?=
 =?utf-8?B?b1RRQlBzWDU3VTY5N3R3b3NhM3ZmWEt2aWhuR1RYS3hsYlBqNUJrc1JYaFhC?=
 =?utf-8?B?T1Z2V2x4TXdYUXdZdXhRL29iYS93bDQ1YTgzeWVsVTduK00yNzhOcDRFeEYy?=
 =?utf-8?B?SmZ2K0pFbkxNbHRSK3N5dytTalBDVFg3UTVSWDQyNUI1RHR4UWoxcExHT2ZF?=
 =?utf-8?Q?YbC0RSs7b8BhJuQR3KzioXEON?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 0a8ffca5-7acd-489f-1101-08dbce5a4353
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Oct 2023 15:12:07.6049
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: AsTyQd4EuVk4Nda9j3Ea4TiT4Xao+n/m2DfRC58ZNmWScBfTlza2FUTjccToR1+flvGZbWUfzsUlUe9XYQ7Vtw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB9424

On 03.10.2023 02:19, Henry Wang wrote:
>> On Oct 3, 2023, at 06:46, Stefano Stabellini <sstabellini@kernel.org> wrote:
>>
>> On Mon, 2 Oct 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>
> 
> Release-acked-by: Henry Wang <Henry.Wang@arm.com>

We're past RC3, so I'd like to confirm whether this still holds.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 15:14:09 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 15:14:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617742.960665 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsPIF-00070w-Rd; Mon, 16 Oct 2023 15:14:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617742.960665; Mon, 16 Oct 2023 15:14: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 1qsPIF-00070p-Nx; Mon, 16 Oct 2023 15:14:07 +0000
Received: by outflank-mailman (input) for mailman id 617742;
 Mon, 16 Oct 2023 15:14: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=BBjo=F6=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qsPIE-00070S-CA
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 15:14:06 +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 a4cdfe80-6c36-11ee-98d4-6d05b1d4d9a1;
 Mon, 16 Oct 2023 17:14:05 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PAXPR04MB9424.eurprd04.prod.outlook.com (2603:10a6:102:2b2::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.35; Mon, 16 Oct
 2023 15:14:02 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%6]) with mapi id 15.20.6886.034; Mon, 16 Oct 2023
 15:14: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: a4cdfe80-6c36-11ee-98d4-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=IGEKpBqgXU/vVP5InRcGidgh5u0/2avUZ0YhULaBg5kU4V4vc7riw/o3bh4RJmbUc24m55Zt+3cd3aeukt+9HJBsvuevgJK98Yxe64AbesUoVP7WfgeYtY76RP1pQY/kL1BeAGGA3s6L2ycfS2kJ+f4hph2yh3LPVHpPdP9TZs3gAOB+FTrKmcy1hBSS91b1C67Zrms4e5ifm/tlQQxKPVIT/HU+oOqZuxeeLLqRdBVDw2BaYUvxejv0YHSx3cY2KubDwr3tQkgCKCuREAjAbeNMsV7VVlogzuiIWAH+319I5qbMOG3fvxsn9pfsvz2H8azeMphA5toAdkzwyXoPkA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=esvbYXdXlsUNSbbhTQJDoQCN+nuL2FE9x9BB5udDphA=;
 b=BNa9WRyGZiaJ8KeA5GRu5wi2HZst0M3REKv0avK6qTXbOwP1BYXa9QEZTh+BZLroL0fOxi0xOpJ5ll1H4tGin8Gf3Gx+qKNqZzOUQVxh6/o5p2yhGmL65eE0EKG3Uhe4D9n9asV2A6WBXKnYvkfExMhPYz+OOuRKY4sm0AeuVDmIBLx8Gpo08Uk+lpepvDmeOoKiZ+PeS9gXjyjPzL16ztypsbAeF2gtuyDvqEFXHs7AZ/9CMpKxhtaX1DT/N+RqBY2Ji9q3euKQAV3UEDELlKozLnI/spxzs+45FtjLJHOAwwIGl4VeJB/IxTkMgBKvrdsfqFevrao1xV6EPgG8yg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=esvbYXdXlsUNSbbhTQJDoQCN+nuL2FE9x9BB5udDphA=;
 b=wjCMfXmoXt1aDFeHA/jq6uQYLG6tnENdo+6Qg6MEM0BS+43zIw3Zq/PW2MI66mk16bvqHKKb4Ht1XHbrsq448SXheRQFIJfAlMSUuPgFZXSMA2bcy8aHDoKfQuQwu4qMrsfEuVQlKy15y/Pu1ccH1fvCpdKlvGR/+kccMbKHS2SB2J6Sl5e5vCrjEoNr47Aw96Ak13zVnpTEOm4oPGO/R5+2mjLuVPKFm4Dn71+Y0SZ9OFbclBDK5cWvNdRv0LTQHlwxBTjjsMOWnV3Fuuu4MWuu/tt992VOxMRb42B268Pj1I/LndVS2kyLCgBLRcdbuzfcoxARqCeakgh15t5P1w==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <b4889bda-49b0-eaee-46c5-22668d8e2485@suse.com>
Date: Mon, 16 Oct 2023 17:14:00 +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/irq: address violations of MISRA C:2012 Rule 8.2
Content-Language: en-US
To: Federico Serafini <federico.serafini@bugseng.com>
Cc: xen-devel@lists.xenproject.org, consulting@bugseng.com,
 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>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Henry Wang <henry.wang@arm.com>, Stefano Stabellini <sstabellini@kernel.org>
References: <fc077d4dba9c37d9d81cea5d184e59f00c3cdcd4.1696242264.git.federico.serafini@bugseng.com>
 <alpine.DEB.2.22.394.2310021545060.2348112@ubuntu-linux-20-04-desktop>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <alpine.DEB.2.22.394.2310021545060.2348112@ubuntu-linux-20-04-desktop>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0201.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:e5::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_|PAXPR04MB9424:EE_
X-MS-Office365-Filtering-Correlation-Id: 84c2c60e-0fef-4bab-ffc9-08dbce5a87fd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	vyl++GrCJLLCvri4PMZPHnRETQGxLREnwF79vpq79qc/6d8NyvdzikGNY47zbkdpk80yNv9Efml8jR3XQ/bYeU4b6+sreWALuMhFg4EMNw7zgp6FoGrD5S/+d82YspScN6aAyNA/5Y1G7+AlR6WlSe0e/CWDm0MZxPUaKVwNz2yxOv5SuTa8er2DJyaMH5xrqV5Uexj0bKT3X3RXymRCauMZYivXY0951K6tjqN0WocvcvxwLBcSpXopp6xBkQ1/wSIheP2P+JUtzOf8QHYvlhT70x41xoHzjApVVBiim/5zyX0nAmH377Th+IHu+RyTlLM0dWQr+B1POW04VRo0Wnr4Tm524n4YCZS/uG2IefbBlZxXEC/aDD20oAAb38InpUSNFoZn0WPkxMxWF/g3cX6T5VzqU53Y7V+J086IM/cE8hHMVINVMAZIx5prGPDEeMRNdGTAnmHo2D7uiINAxi0U7o1VO2oxvuhuyMUaPPzzH1RX+fw4bMlt1x1jKqozRFSbBQYW2tmw+359qTrNg12UZSq/714zILyx9EkGMR0s5Pw6Efa3cSxPoIrKaEDizDREncoLZQBC6BaYu4UHEwuOJ4tIgkcOW0/BukZj2Odcqq3N8rz2qBd1nnljajV4Nf0AkBmhliSlOoHBNy6ClQ==
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)(396003)(366004)(376002)(230922051799003)(64100799003)(1800799009)(186009)(451199024)(2906002)(7416002)(4744005)(41300700001)(6486002)(86362001)(478600001)(31696002)(66476007)(66556008)(36756003)(54906003)(53546011)(66946007)(6916009)(6512007)(6506007)(316002)(8936002)(8676002)(26005)(2616005)(31686004)(4326008)(5660300002)(38100700002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?VDQxU3p5a285MFZMUFkzSkxRRkJmN3FkQnZFYjlMWW1zRkU0U1p5OHZDemRE?=
 =?utf-8?B?dGhlQml4T05nNkZiQTZ5aGJjSjAreEE2QlR2R2Z1NTF4ckhZRUI3d0ZGT1BM?=
 =?utf-8?B?S3NzV1U3ZTg5N2xtaXNwdlorQnpBbHBvV25mVnpVVW9SbDRrbVhJMis0c01Y?=
 =?utf-8?B?ZHFhQkpPRkxrUjJHWnR6emlDeElha1JIbG8zRTd4Y3VCZDJMQVBDbHJ6TUlU?=
 =?utf-8?B?a1J6Yjh5THAwU0VUZlJuYUxKNkZwZ3BEMUMvbFdTeVBjdHRVbjF6cjBON2J3?=
 =?utf-8?B?QlpUNG1Ea2FFNU9TcnpTb1F6OXZuUDhwN3FYb2RuQnpxbHRpUnZXeTlpdkpY?=
 =?utf-8?B?bnB2RHFkY1lBcXdDakIvTXdpUzVGRFVLVDJNSXNIT3lYbFh0MVdJdlBzRTV2?=
 =?utf-8?B?a25odVpyOVNONk5pdTBYY0JqZVhISy9zZi9xSkYvaHFLZFRPdCtGOGhES3Vh?=
 =?utf-8?B?QkF2cjZ4L2FWMno0bjcxZVpESjhEbVkwZmNheVpRRFd1aXhIUzB3aWlTZG43?=
 =?utf-8?B?cHh2eWpZVUg0YmRaQWV1R2dYZDduRmdGSThHUy82czF2dVF1QnBVUm12Yzc4?=
 =?utf-8?B?Njk2RmhUa1VKbit5VnBNUXM0SnpEd3JEZ2xYMFhlNGJPQlRES2RzdGdpdmRT?=
 =?utf-8?B?YitZVnljK21BRDFoVjNPVFc0Q1JLM0gvNnFYa0MzZHoxR2Z3cHIxQTdEaXE0?=
 =?utf-8?B?a01vOUdrQS9zTUl0N2xvY0dkNSsvQkF3ZG1IQ2M0dUNRYU9LaDdTTWdBcit1?=
 =?utf-8?B?M0huRlRpNld3WkR1QWdQWHJ6a3BYc3pzWU5hV2NueSt5UE9aSzFHbnFnekti?=
 =?utf-8?B?SmVsVjF2K1d6ZExaeWRtSjhvR09RSy9IWC9vQ2JLV2FQRVd4WmVBaUJ6Yyt1?=
 =?utf-8?B?L004bXgra1FMYzBQQ0tEZVZrMDJXQy9HMEJGN2wvTVZDZ3hHNitLZGR0eEI0?=
 =?utf-8?B?bzR0QXhROVBUWFlQbEljV3R3K0JiOUg4N1NSL1pDbGhrYUF6TkI2MzdJRGFz?=
 =?utf-8?B?OFgvdU50ZzZqbVYrYzhvcmNvSWxhaW0rMFFtSXJzM09xTjgveHR5YnBhRHcr?=
 =?utf-8?B?NXlhcmpwcFJzZldYUU9rdndrcDlJZURHSmxzc0p0d1ZHSE9KOUpoSHlpTEFv?=
 =?utf-8?B?SzZwSWRTUkhibERHVFZMVFdEMjIxK2ZNclNTRWdibXNFWUNYWVh5cngrN1dB?=
 =?utf-8?B?M1BSNVRtSFRzenltYVhVUUYraGRZelhydXpJNU11L0J0VzBpWVlkK25GNXBF?=
 =?utf-8?B?SmZ0cmhPUVJrVUsrM05PbnJPdWcrU29YWG9keGh5SjE4UEI4a2lEQWZBc2Q5?=
 =?utf-8?B?c1VnK01iYzRqMDg3OXhaMElBM0gwM1NBSk5yaVQzOTFSZG1YMVhPL3BKNHJN?=
 =?utf-8?B?cTFTL08rZXpBUTF6ZmdaVHVkSHZnL0pYZGRlSjJmQTNUaTVmY0tTQ0IxYVRP?=
 =?utf-8?B?MldWVXFWZ3crNzhEbFYzaWZrbkJxSlc5MWdvU1lPZmV1K0F2ZlRwUEc2MHNT?=
 =?utf-8?B?eGNyTHBLK01MUDJ1amVOc094Z01UbGl1cThOSlcrK3N4R2p2V29LN2U1aUdC?=
 =?utf-8?B?eEV1T2pQV3ZuVUsyZlFWdENsUmRXMnY0MlRUSjR4bEFTb3l0cGFlUlZ2bHRi?=
 =?utf-8?B?SVoxMFhISGdkRFZoR0lMVU02d2dJNzZWNTNCeUNxZ2hzSWZZUTNaNGhIVlQ4?=
 =?utf-8?B?WUtIVERFd3V1Q00vNEpPYU1mdURqZ1Qwa3N2dGdpbnd6SldSMWRrOWVHZWhX?=
 =?utf-8?B?cHk5VXgzWlhwRmlRZU5kczhVNFZvOXd2M2hSSEZqQkNTZFhQV1hkbytyYTZ4?=
 =?utf-8?B?MjRSRURMYWNQUGMyWXR5MFNwanZJVHRTRUJad3BhVFdWSEhaMWp0NnlLeDZN?=
 =?utf-8?B?bkFGQVN0c1JwRzNIOGJCelFZMVlaYTMrakRFS3dEeEtuMmhvdXpEeWdmMXIw?=
 =?utf-8?B?NmcrODIzMW44VDRTbGhEeUZ5TFB4YWV2S1NDZkZKcXkxVXRlTWdQWGFIN2Nr?=
 =?utf-8?B?ZW12VkVaQUZhQWdVUGZ6cDRNV3R4djRWcU9yd013Q0ZsWFd6SmQxcUpJbE16?=
 =?utf-8?B?NTV3VEpmZzVyRkZHeHJXRVFBcElRcXpPRGVpZWp1ZzNTU3YwRGJxbURKNjl5?=
 =?utf-8?Q?5HkMoAieCDiyJjy909oqIVKWP?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 84c2c60e-0fef-4bab-ffc9-08dbce5a87fd
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Oct 2023 15:14:02.8121
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: ermBoKHqv64WG3eqAAsgqAKV+83oaWg3w2dUye5X4/bzVM+Wju+s8CYKypVtk1q8tKGvfvqiZ0Ceasr4MccEPw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB9424

On 03.10.2023 00:45, Stefano Stabellini wrote:
> On Mon, 2 Oct 2023, Federico Serafini wrote:
>> Add missing parameter names. No functional change.
>>
>> Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
> 
> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>

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



From xen-devel-bounces@lists.xenproject.org Mon Oct 16 15:14:42 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 15:14:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617745.960675 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsPIo-0007nI-2b; Mon, 16 Oct 2023 15:14:42 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617745.960675; Mon, 16 Oct 2023 15:14: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 1qsPIn-0007nB-Vq; Mon, 16 Oct 2023 15:14:41 +0000
Received: by outflank-mailman (input) for mailman id 617745;
 Mon, 16 Oct 2023 15:14: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=BBjo=F6=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qsPIm-00070S-Iq
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 15:14:40 +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 b9eab082-6c36-11ee-98d4-6d05b1d4d9a1;
 Mon, 16 Oct 2023 17:14:40 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PAXPR04MB9424.eurprd04.prod.outlook.com (2603:10a6:102:2b2::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.35; Mon, 16 Oct
 2023 15:14:38 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%6]) with mapi id 15.20.6886.034; Mon, 16 Oct 2023
 15:14: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: b9eab082-6c36-11ee-98d4-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=BYn8/a1z8Tr5HVmC5BWevbOvLoTAW+W/qboJ/KAStu8TG/Uz694cnuK5uszM1loZt/hVvTadIFplFgDrWwE7EBv7k2JkNKNB3CSMIrMOUHwEd59Lzbkb4ObtBGQxG0R/EF9648YrigSH/Xpbhkn92giaSUxtbuhF2yOLwvpAt70JHih1/2EczlR6xtnLn6i4hcx0OCFiTi4hXbWZC5Ubq44GUh7UILecIucsFTwy+IQY/pU9bRBPgRwo9k91B3TGkbwxFQ1e5qhKcQuYVkHpD3NV29yqYd2uq/IfHUSNy4Ew0DUVe5fJbuYaw8jI94gjsX5Vqgby/wCe0GZquwrLoQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=iHxRTEq3Uy5olVaZeFhz53ckU63frvU9NSt/3W7YXrM=;
 b=BHVSbetIe0Qw4kds88iqEYqw43TCDRAgvc58CLj6aBBUlTFpezqyllSlO43sU5MF+cfN1Ah+3T83gaFZI3PVtHqFyU3AbvpBymwyhKl0GqdmF9/ClEEIfkuKDT8HCe7SirWngyYOeeN5zEhY4jaMSGlEMx2whwZ2+T0Y4E4UeNQeycA9eE3E5cG74TVNYm2s21YdfMY7oWIaRP3KhObLKUch8IN7GMuUUcVKVIMrR/VCezL88TRbXVkA3TC5tcn8Yv7erf4w65nICm+UdskW5BVB0u0mDSFO914Cp4a0nvdbhvuZzNvBY04ywY3ZEa6zPMJv4KF9mZVIMIhChlNvsA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=iHxRTEq3Uy5olVaZeFhz53ckU63frvU9NSt/3W7YXrM=;
 b=rD9cxbHpEPxPnYlftvQcUy4IUDV4NaCnKfTYTicSWsckPIEWGWSFYphw9pLt7NN+rnueZlWluOf6kBf1MOq/7cYajm9D5066H9yOB8hvV35HpO0oeU151fhilyIispsImO2krJW7ZjwIdl3OQojehok77f3/UsprxZ/x/0K79uAuhbPRkEheoFNlfzBZ9In8nO9v1q/kz6g8tGNQeshmaeUkV+rhnzvIPwgeZDbTxPYQKopAsHyLBqWhDMmTQPe0WeFyptEdfm/Jzq4FRjp8EEtuPuVj6apgifCKSsAH102a/VHOTzNDahPSwaRUvBldRLEpbmtM0qukJFwEiNnqRw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <ee0fe22c-399e-70c6-830c-92617b987abe@suse.com>
Date: Mon, 16 Oct 2023 17:14:36 +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/irq: address violations of MISRA C:2012 Rule 8.2
Content-Language: en-US
To: Henry Wang <Henry.Wang@arm.com>
Cc: Federico Serafini <federico.serafini@bugseng.com>,
 Xen-devel <xen-devel@lists.xenproject.org>,
 "consulting@bugseng.com" <consulting@bugseng.com>,
 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>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Stefano Stabellini <sstabellini@kernel.org>
References: <fc077d4dba9c37d9d81cea5d184e59f00c3cdcd4.1696242264.git.federico.serafini@bugseng.com>
 <alpine.DEB.2.22.394.2310021545060.2348112@ubuntu-linux-20-04-desktop>
 <F8ED4DE9-CE9B-4B51-B702-893D062EFBB7@arm.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <F8ED4DE9-CE9B-4B51-B702-893D062EFBB7@arm.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0201.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:e5::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_|PAXPR04MB9424:EE_
X-MS-Office365-Filtering-Correlation-Id: c5390716-931e-46a8-e419-08dbce5a9d51
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	4EVFnImz/BNfvjCEbmMUDcJ1DzM82VBBQ+KPOQ51byaFPV/FQRaS69l0lpkhn6WumiLAwxOIRNsFScjCCLnsjm5ROk3OZMOdyXkihsn7W0r/aCxuMwIXX95xAVNeobHEbZssGQY+SoSW23gYTVYpC/pXV5SCqy5uRLXLej1y0KYt9P3PpKacm3zg/QkxEjcI7LM8Km9SrwmZ5KYSrR/K/LXb5x72MNSI0bb5h/AuxyzmlY7uEyKiFcF+CinoBpNP1Tmvh2GTwYFMnEKKQ1aDuhGdrKkOrKU1s3/aomZS4sXoj23wfCUhpaJrCcBwH4HBhYGvJmYcMhTTeoaEtBM1sKZdSTxIRHfLg1eji1jQCEaQLyjpINbXj27UXD3GuMBw+2+H22SLjo26gEQPRJPNZliCb7W9cBSvN4H8P5cjUnUAHSDqxjIKA5iFNUwhsEAHvFyqZP07whc0o7y5oIkhbTv6ApZ4v6/E1l7o5w2QeF0GIkK1+W8P7si1+v2V0i2uoDYJaV6L9XDzylrJHGZe2yRgnsNXKPBt+9DDWlg5yoLS18MLYtMaJ/UOCRFPSUOMiWimzZgqYhlYzfMm/hlkDSIjvHC8GYHcugWu/657hz/oogTqK/hhDIxN+Q5UAm11NzrdQc0OJlaTQkkLYeAvJg==
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)(396003)(366004)(376002)(230922051799003)(64100799003)(1800799009)(186009)(451199024)(2906002)(7416002)(4744005)(41300700001)(6486002)(86362001)(478600001)(31696002)(66476007)(66556008)(36756003)(54906003)(53546011)(66946007)(6916009)(6512007)(6506007)(316002)(8936002)(8676002)(26005)(2616005)(31686004)(4326008)(5660300002)(38100700002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?aDl6dUxSbmpSTGphRUt2YWVkZ01aejJ6amdBdTBqTVFLWk1HUlpUdzlLKzlk?=
 =?utf-8?B?ZUdiYnVYa2pYRlNaYVZCZTloZmlDQmw1MTdXZFJSd2dnenRwdXY5SytyWlhQ?=
 =?utf-8?B?eC90RWhvUXplczRXeGtjVGhnYmhJazFyNUQxeTdtMHJjMzBjYzFuZ1pnMEpF?=
 =?utf-8?B?YnhhdURPek9nQlkyNE81dWtxQktPUHNBeHBwdlhzRmlkcmxXWlRxZXBUR0Er?=
 =?utf-8?B?OWw4cGdhcExXQjZlWU5YWmthd085M2lqV3FZL1hFa1RGd04vWTI5aFI0dTN1?=
 =?utf-8?B?Z3V0eXNwUm5vemFCS2QvOVdHNTNiT3FWSWdnT0pTRVVmYitIL3lKVkVzMmhq?=
 =?utf-8?B?ZWF2MFVmaGx1R2F4Nmo4aHFlSEN1aVNYdXhmdjMzMHlZaU03Q3RZc0NacUp2?=
 =?utf-8?B?MmZOMmdjQTBUcUJKVXUvUE5KZytXNGlvUUhQUWlNeG5UQUpadlFFQkNYT1NQ?=
 =?utf-8?B?QWNRcTJZQWt2cXRGUW9ROExPbmJDdzJxZEt4OFE4NlNIYURaVjR5T0d1WHFJ?=
 =?utf-8?B?UXk3eExVd1lwVHQ4VUFIMmxXVkFvODRjVmdvY2U4SzFXZ1VRY0plUHROMjl5?=
 =?utf-8?B?RjlWUzJLYlNId1I2ZTc4V1ZYTmVwWnpBNGN2NDJ2THV5MGNEeVl1SWk0aEx3?=
 =?utf-8?B?TmF2SlJJa1FXWlc1VUxhY1NBK3M2WU9rTHhuWEE2Sm1OOVFoSXRYYjZKNTNk?=
 =?utf-8?B?ZE9IY200MlMvQzFIYTFROVMyUGVHVTRJK0FLbERVcUh6OWlucll3OEFldFBK?=
 =?utf-8?B?K0tsYU9MNlNtaVl5ZmtnWTB1V20vL0grejFkT083Um4yYXdYbWk5ajJPczcv?=
 =?utf-8?B?Sk5iZU5IYlBvaU0wRHE0cHV5REpkblpORVN5RVRxQmpTN0xGcGpuTVZFSVIr?=
 =?utf-8?B?cGdwcU5lVUZpK3lBYVdrdmVWWmdVYnh4b3lQQVpXVlBTTktZR053SVd6K0Jz?=
 =?utf-8?B?bUtaWllrdnJVOFF0bnFldi9uNFRGbHlkNnhHWGtzcnVKc05XRFNYa1crTnkw?=
 =?utf-8?B?NmduN1lZTTlhMGZ3ODVyQUFscU1xSTN3MEdvMERRUjV4Y29KazhqdGFWU20v?=
 =?utf-8?B?aXF5WTlJVVhzejdSdVN3em1WZkxEVXFFRlRFMXl4Q2VwOFZlTWhjUFhPM3BB?=
 =?utf-8?B?aVpvOUd2TFUvNHV3Z3FrREdEdEh0bkMyQURhMThWQnhmYVdrbWh6NWptOWJw?=
 =?utf-8?B?MHB5K2lKRTVRTlZDK1JkOEl6K05nS3dXVkEvejd2ZVJkSUtuUnNlRzBBRlM0?=
 =?utf-8?B?YmZVQUluaHozc0RLYkRONnNVYXM5TEZKR2tCUlRHc3B5WFVTdVl3ZWx5WGg4?=
 =?utf-8?B?RzlScWRtZkNqTEM1b1NoS2NsQUNRKzlldDdpRUNEVEZIVm53SUZjcW9HRkx1?=
 =?utf-8?B?TFBkZ0tYNWtBQVcwcExubXo3NXJmb3I2SHR6QzRhcjZxL2NkYUYrTk9meUVm?=
 =?utf-8?B?NGVuOElJWGQ1eWZZN0hmNzdrNFVkemxHc0YwY210SHhpTkdZNVloRjltOUtZ?=
 =?utf-8?B?a21BdWNrL2cvMGxCbkdLOS9yek90dGZGMC9JemxtSXBVU0ZSQzVpZ3N1YzQz?=
 =?utf-8?B?YmFwMklJdGdqMW5mNGZnSVFNemsxSzI5QUtkNElDN3dqZzE2bUVQc01xL2la?=
 =?utf-8?B?bXF3cnI4WXRad01NV0JTanVoTjVLZDFFVmpCSFMyaExOL2JFTnVIaGxRcWt5?=
 =?utf-8?B?S0F6RnZzakpicXlrMmhhNjNhMjFXZHUzZ1Z0eC9TalRkYjA5SG8zenRYM250?=
 =?utf-8?B?dEpxSGp1bjdvbkU1R09ManJYWTdsdEpaVWl4Z3F1RDlKN2YwTFRZTWw5REZD?=
 =?utf-8?B?Y21OR1hqZi9CQW1odm9zTTBEaUluRjJLemh5SE1qS0c0dmNtNmF1OXlqUU4z?=
 =?utf-8?B?QUZQWGtWVUFsK2dvbG5jM3p4eHowR2VVUi9lL2V1amlpbStWK0I1N0QrNUty?=
 =?utf-8?B?bGNZOVl6TWZzbUtxSGN1cFQ2bS9tY3cwYndSNDByVWpxd3NqbitjMENRalk2?=
 =?utf-8?B?TjFDSW5xV1RGUjd6Ukc0eVF2cVcxd1ZmbE83K01XcGo2NlVWUVRDWWE2RFRQ?=
 =?utf-8?B?WlpQY3g2ZkZWN3dzdmV2VzAyV2N3ck4vVGZxamVvTXR6WEhJWmQxTjBuN1dn?=
 =?utf-8?Q?rTodx0QKCjd0/N0DkFCmxH8Wa?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: c5390716-931e-46a8-e419-08dbce5a9d51
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Oct 2023 15:14:38.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: ZViUvRM4dSdXYb1CirzHOn8zmyQrGV2bpNYIQsccT77o3MBHol6EEYk5iJCe/VKIOujuzLQB58EtFdWQyal3hw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB9424

On 03.10.2023 02:19, Henry Wang wrote:
>> On Oct 3, 2023, at 06:45, Stefano Stabellini <sstabellini@kernel.org> wrote:
>>
>> On Mon, 2 Oct 2023, Federico Serafini wrote:
>>> Add missing parameter names. 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>

Same question here wrt applicability now that we're past RC3.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 15:19:40 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 15:19:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617748.960685 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsPNZ-0001xG-Kx; Mon, 16 Oct 2023 15:19:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617748.960685; Mon, 16 Oct 2023 15: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 1qsPNZ-0001x9-Hg; Mon, 16 Oct 2023 15:19:37 +0000
Received: by outflank-mailman (input) for mailman id 617748;
 Mon, 16 Oct 2023 15: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=yi9k=F6=casper.srs.infradead.org=BATV+ffd15938eba190e275bf+7358+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qsPNX-0001wj-Pu
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 15:19:35 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 67e39f91-6c37-11ee-9b0e-b553b5be7939;
 Mon, 16 Oct 2023 17:19:32 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qsPNC-006lqa-6s; Mon, 16 Oct 2023 15:19:14 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1qsPNB-0005nO-2c; Mon, 16 Oct 2023 16:19:13 +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
X-Inumbo-ID: 67e39f91-6c37-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=f7F9SDM1bUdOvNZpQs4iJJJk6zsJmxlOCqdnVelp0m8=; b=JI9Cp5t4Jep1lUjFFL+2rPgVxX
	C+t5NGWYH8UJ/aniIMYUBrCu0fIU9iTJ+vTpef8EEAB7SClGjGZM/EHHHHvzHfaviA3kVmuw1wCTJ
	N7L+3vVvqu10dZZELOd1F/uW8Zt80B+gQ/ZJhmZDGhB0DYFzJigrRm1rtICjhe0g+3KEYcdPGyHO9
	wYtpxo1U140xHjDKeY1hLWRucnyzVL4t3HlKbqhCq7zFNEb1R7eKbY7k1Xudw5PNi5r3ohP/2s063
	dGaCe88IwhB57Kh2/CRrEW4ABoisGKH9B0hgP5tyFACRikVrXcHTs55vFS4Nh/i/uiTWMq4zN+miS
	eO7T8Hpg==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>,
	Hanna Reitz <hreitz@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	=?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Richard Henderson <richard.henderson@linaro.org>,
	Eduardo Habkost <eduardo@habkost.net>,
	David Woodhouse <dwmw2@infradead.org>,
	Marcelo Tosatti <mtosatti@redhat.com>,
	qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org,
	kvm@vger.kernel.org
Subject: [PATCH 05/12] hw/xen: populate store frontend nodes with XenStore PFN/port
Date: Mon, 16 Oct 2023 16:19:02 +0100
Message-Id: <20231016151909.22133-6-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231016151909.22133-1-dwmw2@infradead.org>
References: <20231016151909.22133-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

This is kind of redundant since without being able to get these through
ome other method (HVMOP_get_param) the guest wouldn't be able to access
XenStore in order to find them. But Xen populates them, and it does
allow guests to *rebind* to the event channel port after a reset.

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 hw/i386/kvm/xen_xenstore.c | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/hw/i386/kvm/xen_xenstore.c b/hw/i386/kvm/xen_xenstore.c
index d2b311109b..3300e0614a 100644
--- a/hw/i386/kvm/xen_xenstore.c
+++ b/hw/i386/kvm/xen_xenstore.c
@@ -1432,6 +1432,7 @@ static void alloc_guest_port(XenXenstoreState *s)
 int xen_xenstore_reset(void)
 {
     XenXenstoreState *s = xen_xenstore_singleton;
+    GList *perms;
     int err;
 
     if (!s) {
@@ -1459,6 +1460,15 @@ int xen_xenstore_reset(void)
     }
     s->be_port = err;
 
+    /* Create frontend store nodes */
+    perms = g_list_append(NULL, xs_perm_as_string(XS_PERM_NONE, DOMID_QEMU));
+    perms = g_list_append(perms, xs_perm_as_string(XS_PERM_READ, xen_domid));
+
+    relpath_printf(s, perms, "store/ring-ref", "%lu", XEN_SPECIAL_PFN(XENSTORE));
+    relpath_printf(s, perms, "store/port", "%u", s->be_port);
+
+    g_list_free_full(perms, g_free);
+
     /*
      * We don't actually access the guest's page through the grant, because
      * this isn't real Xen, and we can just use the page we gave it in the
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Mon Oct 16 15:19:40 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 15:19:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617751.960703 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsPNa-0002Be-II; Mon, 16 Oct 2023 15:19:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617751.960703; Mon, 16 Oct 2023 15:19: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 1qsPNa-00028g-9N; Mon, 16 Oct 2023 15:19:38 +0000
Received: by outflank-mailman (input) for mailman id 617751;
 Mon, 16 Oct 2023 15:19: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=yi9k=F6=casper.srs.infradead.org=BATV+ffd15938eba190e275bf+7358+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qsPNY-0001wj-Fn
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 15:19:36 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 685c8466-6c37-11ee-9b0e-b553b5be7939;
 Mon, 16 Oct 2023 17:19:32 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qsPNC-006lqb-6o; Mon, 16 Oct 2023 15:19:14 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1qsPNB-0005nS-2q; Mon, 16 Oct 2023 16:19:13 +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
X-Inumbo-ID: 685c8466-6c37-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=Sender:Content-Transfer-Encoding:
	Content-Type:MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:
	To:From:Reply-To:Content-ID:Content-Description;
	bh=j10esoq0FJNH76opTx2Ikt3KjCQW6JceQg/cwlpclKs=; b=ZduFMOvoJdtQDogmTwvZyLrQi7
	L5xONBMXumaxapRtcqiXoK0WZgkbhT065bsjcEyhBGwuMIgptpB+Id+ZQY8bIRlZe9ln/4+PdOeGo
	sRrlHgzM1xlelgVAmfltZTG1qwyquW2mixVDt8Q3NPEIRXTs5OScTehD4TDup9ceZaeNOVgVKaO/k
	xfvAmlGJ9gM3gJfpvmnFvi6WybtURPVTOKJDAxxygl85ZTIUgL96GiUP0wtXt84zGw/tALtO/CLco
	kb3nRQ4/tOtXtXPZJUqhKO2Di+M1vNQXeU8zftYCP05E4/AU8kkLeYHDAoGoofY0asYS/bSwngSOY
	0rPBEqUA==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>,
	Hanna Reitz <hreitz@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	=?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Richard Henderson <richard.henderson@linaro.org>,
	Eduardo Habkost <eduardo@habkost.net>,
	David Woodhouse <dwmw2@infradead.org>,
	Marcelo Tosatti <mtosatti@redhat.com>,
	qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org,
	kvm@vger.kernel.org
Subject: [PATCH 06/12] hw/xen: add get_frontend_path() method to XenDeviceClass
Date: Mon, 16 Oct 2023 16:19:03 +0100
Message-Id: <20231016151909.22133-7-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231016151909.22133-1-dwmw2@infradead.org>
References: <20231016151909.22133-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

The primary Xen console is special. The guest's side is set up for it by
the toolstack automatically and not by the standard PV init sequence.

Accordingly, its *frontend* doesn't appear in …/device/console/0 either;
instead it appears under …/console in the guest's XenStore node.

To allow the Xen console driver to override the frontend path for the
primary console, add a method to the XenDeviceClass which can be used
instead of the standard xen_device_get_frontend_path()

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 hw/xen/xen-bus.c         | 10 +++++++++-
 include/hw/xen/xen-bus.h |  2 ++
 2 files changed, 11 insertions(+), 1 deletion(-)

diff --git a/hw/xen/xen-bus.c b/hw/xen/xen-bus.c
index ece8ec40cd..cc524ed92c 100644
--- a/hw/xen/xen-bus.c
+++ b/hw/xen/xen-bus.c
@@ -711,8 +711,16 @@ static void xen_device_frontend_create(XenDevice *xendev, Error **errp)
 {
     ERRP_GUARD();
     XenBus *xenbus = XEN_BUS(qdev_get_parent_bus(DEVICE(xendev)));
+    XenDeviceClass *xendev_class = XEN_DEVICE_GET_CLASS(xendev);
 
-    xendev->frontend_path = xen_device_get_frontend_path(xendev);
+    if (xendev_class->get_frontend_path) {
+        xendev->frontend_path = xendev_class->get_frontend_path(xendev, errp);
+        if (!xendev->frontend_path) {
+            return;
+        }
+    } else {
+        xendev->frontend_path = xen_device_get_frontend_path(xendev);
+    }
 
     /*
      * The frontend area may have already been created by a legacy
diff --git a/include/hw/xen/xen-bus.h b/include/hw/xen/xen-bus.h
index f435898164..eb440880b5 100644
--- a/include/hw/xen/xen-bus.h
+++ b/include/hw/xen/xen-bus.h
@@ -33,6 +33,7 @@ struct XenDevice {
 };
 typedef struct XenDevice XenDevice;
 
+typedef char *(*XenDeviceGetFrontendPath)(XenDevice *xendev, Error **errp);
 typedef char *(*XenDeviceGetName)(XenDevice *xendev, Error **errp);
 typedef void (*XenDeviceRealize)(XenDevice *xendev, Error **errp);
 typedef void (*XenDeviceFrontendChanged)(XenDevice *xendev,
@@ -46,6 +47,7 @@ struct XenDeviceClass {
     /*< public >*/
     const char *backend;
     const char *device;
+    XenDeviceGetFrontendPath get_frontend_path;
     XenDeviceGetName get_name;
     XenDeviceRealize realize;
     XenDeviceFrontendChanged frontend_changed;
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Mon Oct 16 15:19:40 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 15:19:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617750.960694 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsPNa-000239-3g; Mon, 16 Oct 2023 15:19:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617750.960694; Mon, 16 Oct 2023 15:19: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 1qsPNZ-00022P-V5; Mon, 16 Oct 2023 15:19:37 +0000
Received: by outflank-mailman (input) for mailman id 617750;
 Mon, 16 Oct 2023 15:19: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=yi9k=F6=casper.srs.infradead.org=BATV+ffd15938eba190e275bf+7358+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qsPNY-0001wi-A7
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 15:19:36 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 6953712c-6c37-11ee-98d4-6d05b1d4d9a1;
 Mon, 16 Oct 2023 17:19:34 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qsPNC-006lqd-K5; Mon, 16 Oct 2023 15:19:14 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1qsPNC-0005nm-0O; Mon, 16 Oct 2023 16:19:14 +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
X-Inumbo-ID: 6953712c-6c37-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=CKGyyzKxuGsuwvI9v9sDpTYzNulOlzm/j1apww1tl2E=; b=uA3k1jxFkJRBbPY6r9+ROrl9xB
	Ed1eunSvi3H/KfvrxrT9lP5H2djfPrnFHcFygKZj4VcGF52CxaRrHRDnTZjj+UZ4Vmx3fme2ifd+8
	jLrO4NXss7pNWzjoHdrAHJMckswmA04WATXDPBzFy1GB/kwDx0q70Asa+juNKTadNvBADrARDRpaq
	qED7epYAiAoHEZ4Mc691xWO7fHvrFofp1UauU0/ULASJmdaKqcMU8KUj1WRBkHIk/dO85a0houl97
	suKAGPYQ0Sa9d51Ix6QAOP2so7mLXRySlKD02UAH/xsCQG0QNTs9AMYKlBF2zNqslKh21c7iwIGu8
	1TscSXxA==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>,
	Hanna Reitz <hreitz@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	=?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Richard Henderson <richard.henderson@linaro.org>,
	Eduardo Habkost <eduardo@habkost.net>,
	David Woodhouse <dwmw2@infradead.org>,
	Marcelo Tosatti <mtosatti@redhat.com>,
	qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org,
	kvm@vger.kernel.org
Subject: [PATCH 11/12] hw/xen: automatically assign device index to block devices
Date: Mon, 16 Oct 2023 16:19:08 +0100
Message-Id: <20231016151909.22133-12-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231016151909.22133-1-dwmw2@infradead.org>
References: <20231016151909.22133-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

There's no need to force the user to assign a vdev. We can automatically
assign one, starting at xvda and searching until we find the first disk
name that's unused.

This means we can now allow '-drive if=xen,file=xxx' to work without an
explicit separate -driver argument, just like if=virtio.

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 blockdev.c           | 15 ++++++++++++---
 hw/block/xen-block.c | 25 +++++++++++++++++++++++++
 2 files changed, 37 insertions(+), 3 deletions(-)

diff --git a/blockdev.c b/blockdev.c
index 325b7a3bef..9dec4c9c74 100644
--- a/blockdev.c
+++ b/blockdev.c
@@ -255,13 +255,13 @@ void drive_check_orphaned(void)
          * Ignore default drives, because we create certain default
          * drives unconditionally, then leave them unclaimed.  Not the
          * users fault.
-         * Ignore IF_VIRTIO, because it gets desugared into -device,
-         * so we can leave failing to -device.
+         * Ignore IF_VIRTIO or IF_XEN, because it gets desugared into
+         * -device, so we can leave failing to -device.
          * Ignore IF_NONE, because leaving unclaimed IF_NONE remains
          * available for device_add is a feature.
          */
         if (dinfo->is_default || dinfo->type == IF_VIRTIO
-            || dinfo->type == IF_NONE) {
+            || dinfo->type == IF_XEN || dinfo->type == IF_NONE) {
             continue;
         }
         if (!blk_get_attached_dev(blk)) {
@@ -977,6 +977,15 @@ DriveInfo *drive_new(QemuOpts *all_opts, BlockInterfaceType block_default_type,
         qemu_opt_set(devopts, "driver", "virtio-blk", &error_abort);
         qemu_opt_set(devopts, "drive", qdict_get_str(bs_opts, "id"),
                      &error_abort);
+    } else if (type == IF_XEN) {
+        QemuOpts *devopts;
+        devopts = qemu_opts_create(qemu_find_opts("device"), NULL, 0,
+                                   &error_abort);
+        qemu_opt_set(devopts, "driver",
+                     (media == MEDIA_CDROM) ? "xen-cdrom" : "xen-disk",
+                     &error_abort);
+        qemu_opt_set(devopts, "drive", qdict_get_str(bs_opts, "id"),
+                     &error_abort);
     }
 
     filename = qemu_opt_get(legacy_opts, "file");
diff --git a/hw/block/xen-block.c b/hw/block/xen-block.c
index 9262338535..20fa783cbe 100644
--- a/hw/block/xen-block.c
+++ b/hw/block/xen-block.c
@@ -34,6 +34,31 @@ static char *xen_block_get_name(XenDevice *xendev, Error **errp)
     XenBlockDevice *blockdev = XEN_BLOCK_DEVICE(xendev);
     XenBlockVdev *vdev = &blockdev->props.vdev;
 
+    if (blockdev->props.vdev.type == XEN_BLOCK_VDEV_TYPE_INVALID) {
+        char name[11];
+        int disk = 0;
+        unsigned long idx;
+
+        /* Find an unoccupied device name */
+        while (disk < (1 << 20)) {
+            if (disk < (1 << 4)) {
+                idx = (202 << 8) | (disk << 4);
+            } else {
+                idx = (1 << 28) | (disk << 8);
+            }
+            snprintf(name, sizeof(name), "%lu", idx);
+            if (!xen_backend_exists("qdisk", name)) {
+                vdev->type = XEN_BLOCK_VDEV_TYPE_XVD;
+                vdev->partition = 0;
+                vdev->disk = disk;
+                vdev->number = idx;
+                return g_strdup(name);
+            }
+            disk++;
+        }
+        error_setg(errp, "cannot find device vdev for block device");
+        return NULL;
+    }
     return g_strdup_printf("%lu", vdev->number);
 }
 
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Mon Oct 16 15:19:40 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 15:19:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617749.960689 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsPNZ-0001zi-RI; Mon, 16 Oct 2023 15:19:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617749.960689; Mon, 16 Oct 2023 15: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 1qsPNZ-0001zF-OM; Mon, 16 Oct 2023 15:19:37 +0000
Received: by outflank-mailman (input) for mailman id 617749;
 Mon, 16 Oct 2023 15:19: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=yi9k=F6=casper.srs.infradead.org=BATV+ffd15938eba190e275bf+7358+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qsPNX-0001wi-6Q
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 15:19:36 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 68b73170-6c37-11ee-98d4-6d05b1d4d9a1;
 Mon, 16 Oct 2023 17:19:34 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qsPNC-006lqX-62; Mon, 16 Oct 2023 15:19:14 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1qsPNB-0005n5-1t; Mon, 16 Oct 2023 16:19:13 +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
X-Inumbo-ID: 68b73170-6c37-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=Sender:Content-Transfer-Encoding:
	MIME-Version:Message-Id:Date:Subject:Cc:To:From:Reply-To:Content-Type:
	Content-ID:Content-Description:In-Reply-To:References;
	bh=F3UjuhE2FBKcmgLerw1NnKKsKaQ1Vv0F+THBpoMNMME=; b=RUe0h4t2PDLQe/PbrYmnoJGzBv
	XpnXvqi6OUXrxehffQ1Zf3iom+dmkFdob8j4mg/Fas49lSB23CT9QoY4sPBHT4gD/sj7ySvs5Vrf1
	YlBGiPXcApj99d7zg4CiWufTxxd6zJETNOAbQpUZHP7JI/G6hkT4XxZ/Vg0SWIAYmhNl6AkpgMA63
	e2cWIx2oNICYJZFTgnao0HZdGFu0FriQCdSWlVoDiXrgJFb4ucufo8yvmCSkO1VpYxIYLfrsie/tz
	29KhaPmM8aD222XRsxlZECZiMS8rBg9NJydMRO9W4S4Ltm38AFPXw/MPQ+HkcdEr5AesYJTRLYIP9
	SYkllKNQ==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>,
	Hanna Reitz <hreitz@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	=?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Richard Henderson <richard.henderson@linaro.org>,
	Eduardo Habkost <eduardo@habkost.net>,
	David Woodhouse <dwmw2@infradead.org>,
	Marcelo Tosatti <mtosatti@redhat.com>,
	qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org,
	kvm@vger.kernel.org
Subject: [PATCH 0/12] Get Xen PV shim running in qemu
Date: Mon, 16 Oct 2023 16:18:57 +0100
Message-Id: <20231016151909.22133-1-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html

I hadn't got round to getting the PV shim running yet; I thought it would
need work on the multiboot loader. Turns out it doesn't. I *did* need to
fix a couple of brown-paper-bag bugs in the per-vCPU upcall vector support,
and implement Xen console support though. Now I can test PV guests:

 $ qemu-system-x86_64 --accel kvm,xen-version=0x40011,kernel-irqchip=split \
   -chardev stdio,mux=on,id=char0 -device xen-console,chardev=char0 \
   -drive file=${GUEST_IMAGE},if=xen -display none -m 1G \
   -kernel ~/git/xen/xen/xen -initrd ~/git/linux/arch/x86/boot/bzImage \
   -append "loglvl=all -- console=hvc0 root=/dev/xvda1"

 blockdev.c                                     |  15 +++-
 hw/block/xen-block.c                           |  26 +++++-
 hw/char/trace-events                           |   8 ++
 hw/char/xen_console.c                          | 522 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++--------------------------
 hw/i386/kvm/meson.build                        |   1 +
 hw/i386/kvm/trace-events                       |   2 +
 hw/i386/kvm/xen-stubs.c                        |   5 ++
 hw/i386/kvm/xen_evtchn.c                       |   6 ++
 hw/i386/kvm/xen_gnttab.c                       |  32 ++++++-
 hw/i386/kvm/xen_primary_console.c              | 167 ++++++++++++++++++++++++++++++++++
 hw/i386/kvm/xen_primary_console.h              |  22 +++++
 hw/i386/kvm/xen_xenstore.c                     |  21 ++++-
 hw/xen/xen-backend.c                           |  81 +++++++++++++----
 hw/xen/xen-bus.c                               |  21 ++++-
 hw/xen/xen-legacy-backend.c                    |   1 -
 include/hw/xen/interface/arch-arm.h            |  37 ++++----
 include/hw/xen/interface/arch-x86/cpuid.h      |  31 +++----
 include/hw/xen/interface/arch-x86/xen-x86_32.h |  19 +---
 include/hw/xen/interface/arch-x86/xen-x86_64.h |  19 +---
 include/hw/xen/interface/arch-x86/xen.h        |  26 +-----
 include/hw/xen/interface/event_channel.h       |  19 +---
 include/hw/xen/interface/features.h            |  19 +---
 include/hw/xen/interface/grant_table.h         |  19 +---
 include/hw/xen/interface/hvm/hvm_op.h          |  19 +---
 include/hw/xen/interface/hvm/params.h          |  19 +---
 include/hw/xen/interface/io/blkif.h            |  27 ++----
 include/hw/xen/interface/io/console.h          |  19 +---
 include/hw/xen/interface/io/fbif.h             |  19 +---
 include/hw/xen/interface/io/kbdif.h            |  19 +---
 include/hw/xen/interface/io/netif.h            |  25 ++----
 include/hw/xen/interface/io/protocols.h        |  19 +---
 include/hw/xen/interface/io/ring.h             |  49 +++++-----
 include/hw/xen/interface/io/usbif.h            |  19 +---
 include/hw/xen/interface/io/xenbus.h           |  19 +---
 include/hw/xen/interface/io/xs_wire.h          |  36 ++++----
 include/hw/xen/interface/memory.h              |  30 +++----
 include/hw/xen/interface/physdev.h             |  23 +----
 include/hw/xen/interface/sched.h               |  19 +---
 include/hw/xen/interface/trace.h               |  19 +---
 include/hw/xen/interface/vcpu.h                |  19 +---
 include/hw/xen/interface/version.h             |  19 +---
 include/hw/xen/interface/xen-compat.h          |  19 +---
 include/hw/xen/interface/xen.h                 |  19 +---
 include/hw/xen/xen-backend.h                   |   4 +
 include/hw/xen/xen-bus.h                       |   2 +
 include/sysemu/kvm_xen.h                       |   1 +
 target/i386/kvm/kvm.c                          |   4 +
 target/i386/kvm/xen-emu.c                      |  35 ++++++--
 48 files changed, 941 insertions(+), 680 deletions(-)




From xen-devel-bounces@lists.xenproject.org Mon Oct 16 15:19:40 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 15:19:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617753.960718 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsPNb-0002YO-Fo; Mon, 16 Oct 2023 15:19:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617753.960718; Mon, 16 Oct 2023 15:19: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 1qsPNb-0002WO-6T; Mon, 16 Oct 2023 15:19:39 +0000
Received: by outflank-mailman (input) for mailman id 617753;
 Mon, 16 Oct 2023 15:19: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=XUCO=F6=desiato.srs.infradead.org=BATV+1bdf71eab2d76d13073e+7358+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qsPNZ-0001wi-SH
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 15:19:37 +0000
Received: from desiato.infradead.org (desiato.infradead.org
 [2001:8b0:10b:1:d65d:64ff:fe57:4e05])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 6a2920c6-6c37-11ee-98d4-6d05b1d4d9a1;
 Mon, 16 Oct 2023 17:19:36 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by desiato.infradead.org with esmtpsa (Exim 4.96 #2 (Red Hat Linux))
 id 1qsPNB-0067AG-2H; Mon, 16 Oct 2023 15:19:15 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1qsPNB-0005nB-2D; Mon, 16 Oct 2023 16:19:13 +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
X-Inumbo-ID: 6a2920c6-6c37-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=desiato.20200630; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=sLSQjDyHM6H6vyCwrNd1oC0DrClv2UPw9aKIA6AhbP0=; b=FqeMYA/JfTC8p0DG5XK/5ZIu7B
	EUetaVF1ix6DTUyqYJPmR6BEKr8LA+088i3w5FooNB+tJ2CGq5fIwEk6CHqTMqRWi4A4JkeZDj4PO
	FFVaxZlOnTksjcWikg7PxddJcMky3TKcRovSYEeLHXsu9U/2HJZfBr2d77FPfZMF9Lw1bhqNl7arM
	I7LF7ZN8+aIXN0kV7FUmX70qmrghYiYcTbPPqJb6BE4mD4zOv1LHUL/J+w/UCAeu+v78F92hv3ea5
	KYP7zA2OShwtZ30hVrz5y3VZ46/VNhecSXsjdugWtI+wFOhgX2X++SXZeSAtEBesjmULCUOv8BaMW
	+MTswpPQ==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>,
	Hanna Reitz <hreitz@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	=?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Richard Henderson <richard.henderson@linaro.org>,
	Eduardo Habkost <eduardo@habkost.net>,
	David Woodhouse <dwmw2@infradead.org>,
	Marcelo Tosatti <mtosatti@redhat.com>,
	qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org,
	kvm@vger.kernel.org
Subject: [PATCH 02/12] hw/xen: select kernel mode for per-vCPU event channel upcall vector
Date: Mon, 16 Oct 2023 16:18:59 +0100
Message-Id: <20231016151909.22133-3-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231016151909.22133-1-dwmw2@infradead.org>
References: <20231016151909.22133-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by desiato.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

A guest which has configured the per-vCPU upcall vector may set the
HVM_PARAM_CALLBACK_IRQ param to fairly much anything other than zero.

For example, Linux v6.0+ after commit b1c3497e604 ("x86/xen: Add support
for HVMOP_set_evtchn_upcall_vector") will just do this after setting the
vector:

       /* Trick toolstack to think we are enlightened. */
       if (!cpu)
               rc = xen_set_callback_via(1);

That's explicitly setting the delivery to GSI#, but it's supposed to be
overridden by the per-vCPU vector setting. This mostly works in QEMU
*except* for the logic to enable the in-kernel handling of event channels,
which falsely determines that the kernel cannot accelerate GSI delivery
in this case.

Add a kvm_xen_has_vcpu_callback_vector() to report whether vCPU#0 has
the vector set, and use that in xen_evtchn_set_callback_param() to
enable the kernel acceleration features even when the param *appears*
to be set to target a GSI.

Preserve the Xen behaviour that when HVM_PARAM_CALLBACK_IRQ is set to
*zero* the event channel delivery is disabled completely. (Which is
what that bizarre guest behaviour is working round in the first place.)

Fixes: 91cce756179 ("hw/xen: Add xen_evtchn device for event channel emulation")
Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 hw/i386/kvm/xen_evtchn.c  | 6 ++++++
 include/sysemu/kvm_xen.h  | 1 +
 target/i386/kvm/xen-emu.c | 7 +++++++
 3 files changed, 14 insertions(+)

diff --git a/hw/i386/kvm/xen_evtchn.c b/hw/i386/kvm/xen_evtchn.c
index 4df973022c..d72dca6591 100644
--- a/hw/i386/kvm/xen_evtchn.c
+++ b/hw/i386/kvm/xen_evtchn.c
@@ -490,6 +490,12 @@ int xen_evtchn_set_callback_param(uint64_t param)
         break;
     }
 
+    /* If the guest has set a per-vCPU callback vector, prefer that. */
+    if (gsi && kvm_xen_has_vcpu_callback_vector()) {
+        in_kernel = kvm_xen_has_cap(EVTCHN_SEND);
+        gsi = 0;
+    }
+
     if (!ret) {
         /* If vector delivery was turned *off* then tell the kernel */
         if ((s->callback_param >> CALLBACK_VIA_TYPE_SHIFT) ==
diff --git a/include/sysemu/kvm_xen.h b/include/sysemu/kvm_xen.h
index 595abfbe40..961c702c4e 100644
--- a/include/sysemu/kvm_xen.h
+++ b/include/sysemu/kvm_xen.h
@@ -22,6 +22,7 @@
 int kvm_xen_soft_reset(void);
 uint32_t kvm_xen_get_caps(void);
 void *kvm_xen_get_vcpu_info_hva(uint32_t vcpu_id);
+bool kvm_xen_has_vcpu_callback_vector(void);
 void kvm_xen_inject_vcpu_callback_vector(uint32_t vcpu_id, int type);
 void kvm_xen_set_callback_asserted(void);
 int kvm_xen_set_vcpu_virq(uint32_t vcpu_id, uint16_t virq, uint16_t port);
diff --git a/target/i386/kvm/xen-emu.c b/target/i386/kvm/xen-emu.c
index b49a840438..477e93cd92 100644
--- a/target/i386/kvm/xen-emu.c
+++ b/target/i386/kvm/xen-emu.c
@@ -424,6 +424,13 @@ void kvm_xen_set_callback_asserted(void)
     }
 }
 
+bool kvm_xen_has_vcpu_callback_vector(void)
+{
+    CPUState *cs = qemu_get_cpu(0);
+
+    return cs && !!X86_CPU(cs)->env.xen_vcpu_callback_vector;
+}
+
 void kvm_xen_inject_vcpu_callback_vector(uint32_t vcpu_id, int type)
 {
     CPUState *cs = qemu_get_cpu(vcpu_id);
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Mon Oct 16 15:19:40 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 15:19:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617752.960709 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsPNa-0002P6-UZ; Mon, 16 Oct 2023 15:19:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617752.960709; Mon, 16 Oct 2023 15:19: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 1qsPNa-0002Jd-Na; Mon, 16 Oct 2023 15:19:38 +0000
Received: by outflank-mailman (input) for mailman id 617752;
 Mon, 16 Oct 2023 15:19: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=yi9k=F6=casper.srs.infradead.org=BATV+ffd15938eba190e275bf+7358+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qsPNY-0001wi-S1
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 15:19:36 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 6a0a8dc3-6c37-11ee-98d4-6d05b1d4d9a1;
 Mon, 16 Oct 2023 17:19:35 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qsPNC-006lqY-2R; Mon, 16 Oct 2023 15:19:14 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1qsPNB-0005n8-27; Mon, 16 Oct 2023 16:19:13 +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
X-Inumbo-ID: 6a0a8dc3-6c37-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=vtO5N+wDv4TrwwTv9zLMoxCNzI1zqbUwBjGBebK9mtU=; b=VytKiJSn6jDj/vFvhCOH+pzA+G
	hNoBp0fpQwayhvdjr2fGGMYnebOK+W9bolWMK3n10K6ocwhz7jBgMf10Dp4DKZgQWM24VmEvfTIsE
	BZb05ZDYRAQ2flMzqF/Wpj+6ewIlRuJG5zXq1par0JIOpljTKHvpNrC8EohvEaqA+jbnW5LlQEdqC
	TMs9W7hXJxB0RczoRR+VMHhxzhgqntDLNFLucvRN+++GPz7esDSR48LH0HkiDfuQDozgqbnwlx3EG
	GObBhsnpZgllt6nksabXqe90NabHtijgMAggzFnDlDfBwqXFegA1Rr1sdawRi/6Q7Ls9L3W7875C/
	CDyI0V6A==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>,
	Hanna Reitz <hreitz@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	=?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Richard Henderson <richard.henderson@linaro.org>,
	Eduardo Habkost <eduardo@habkost.net>,
	David Woodhouse <dwmw2@infradead.org>,
	Marcelo Tosatti <mtosatti@redhat.com>,
	qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org,
	kvm@vger.kernel.org
Subject: [PATCH 01/12] i386/xen: fix per-vCPU upcall vector for Xen emulation
Date: Mon, 16 Oct 2023 16:18:58 +0100
Message-Id: <20231016151909.22133-2-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231016151909.22133-1-dwmw2@infradead.org>
References: <20231016151909.22133-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

The per-vCPU upcall vector support had two problems. Firstly it was
using the wrong hypercall argument and would always return -EFAULT.
And secondly it was using the wrong ioctl() to pass the vector to
the kernel and thus the *kernel* would always return -EINVAL.

Linux doesn't (yet) use this mode so it went without decent testing
for a while.

Fixes: 105b47fdf2d0 ("i386/xen: implement HVMOP_set_evtchn_upcall_vector")
Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 target/i386/kvm/xen-emu.c | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/target/i386/kvm/xen-emu.c b/target/i386/kvm/xen-emu.c
index c4fa84a982..b49a840438 100644
--- a/target/i386/kvm/xen-emu.c
+++ b/target/i386/kvm/xen-emu.c
@@ -306,7 +306,7 @@ static int kvm_xen_set_vcpu_callback_vector(CPUState *cs)
 
     trace_kvm_xen_set_vcpu_callback(cs->cpu_index, vector);
 
-    return kvm_vcpu_ioctl(cs, KVM_XEN_HVM_SET_ATTR, &xva);
+    return kvm_vcpu_ioctl(cs, KVM_XEN_VCPU_SET_ATTR, &xva);
 }
 
 static void do_set_vcpu_callback_vector(CPUState *cs, run_on_cpu_data data)
@@ -849,8 +849,7 @@ static bool kvm_xen_hcall_hvm_op(struct kvm_xen_exit *exit, X86CPU *cpu,
     int ret = -ENOSYS;
     switch (cmd) {
     case HVMOP_set_evtchn_upcall_vector:
-        ret = kvm_xen_hcall_evtchn_upcall_vector(exit, cpu,
-                                                 exit->u.hcall.params[0]);
+        ret = kvm_xen_hcall_evtchn_upcall_vector(exit, cpu, arg);
         break;
 
     case HVMOP_pagetable_dying:
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Mon Oct 16 15:19:41 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 15:19:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617754.960737 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsPNd-0003DC-1y; Mon, 16 Oct 2023 15:19:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617754.960737; Mon, 16 Oct 2023 15: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 1qsPNc-0003Ag-Ps; Mon, 16 Oct 2023 15:19:40 +0000
Received: by outflank-mailman (input) for mailman id 617754;
 Mon, 16 Oct 2023 15:19: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=XUCO=F6=desiato.srs.infradead.org=BATV+1bdf71eab2d76d13073e+7358+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qsPNZ-0001wj-Fo
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 15:19:38 +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 68999eb3-6c37-11ee-9b0e-b553b5be7939;
 Mon, 16 Oct 2023 17:19:33 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by desiato.infradead.org with esmtpsa (Exim 4.96 #2 (Red Hat Linux))
 id 1qsPNB-0067AK-2I; Mon, 16 Oct 2023 15:19:15 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1qsPNC-0005ni-0J; Mon, 16 Oct 2023 16:19:14 +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
X-Inumbo-ID: 68999eb3-6c37-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=desiato.20200630; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=8ikJQCC5TLkL7JR5JlTU3UpA6g8LaKWjgM9/evGEzFk=; b=aGOU43EkvyJiadbd3LlgugWndr
	4xurUA890xm0/ENhk99UVqAb54O6T00LyeHtXfR8m3GM6lFk6OtKRHZ5HDxMqzKrpTPqvg5curQTr
	rIV6Rucgz20nRUsiqKnlZowMUo/NLQs17ZwN1GSv1fANshFRCM9lfJKWuQM8Ra8d0q9BT36RFta0K
	HgM66p0WtsRQkI9a/yI/ofe75YSiQI0/JmLUayOl4LbMquRoXLqmWyDFtxA6W3xa50XAID32EGqMX
	D1y4MMKSArdJ+xYoB6kSbjUQ7fDqJ6/e+9bWR4mjrbKDiSh7b0s3OvJc+W87KuuuGX5pAcILS2i5L
	20Sx+dJw==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>,
	Hanna Reitz <hreitz@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	=?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Richard Henderson <richard.henderson@linaro.org>,
	Eduardo Habkost <eduardo@habkost.net>,
	David Woodhouse <dwmw2@infradead.org>,
	Marcelo Tosatti <mtosatti@redhat.com>,
	qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org,
	kvm@vger.kernel.org
Subject: [PATCH 10/12] hw/xen: automatically assign device index to console devices
Date: Mon, 16 Oct 2023 16:19:07 +0100
Message-Id: <20231016151909.22133-11-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231016151909.22133-1-dwmw2@infradead.org>
References: <20231016151909.22133-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by desiato.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

Now that we can reliably tell whether a given device already exists, we
can allow the user to add console devices on the command line with just
'-device xen-console,chardev=foo'.

Start at 1, because we can't add the *primary* console; that's special
because the toolstack has to set up the guest end of that.

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 hw/char/xen_console.c | 16 ++++++++++++++++
 1 file changed, 16 insertions(+)

diff --git a/hw/char/xen_console.c b/hw/char/xen_console.c
index 2825b8c511..1a0f5ed3e1 100644
--- a/hw/char/xen_console.c
+++ b/hw/char/xen_console.c
@@ -333,6 +333,22 @@ static char *xen_console_get_name(XenDevice *xendev, Error **errp)
 {
     XenConsole *con = XEN_CONSOLE_DEVICE(xendev);
 
+    if (con->dev == -1) {
+        char name[11];
+        int idx = 1;
+
+        /* Theoretically we could go up to INT_MAX here but that's overkill */
+        while (idx < 100) {
+            snprintf(name, sizeof(name), "%u", idx);
+            if (!xen_backend_exists("console", name)) {
+                con->dev = idx;
+                return g_strdup(name);
+            }
+            idx++;
+        }
+        error_setg(errp, "cannot find device index for console device");
+        return NULL;
+    }
     return g_strdup_printf("%u", con->dev);
 }
 
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Mon Oct 16 15:19:41 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 15:19:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617755.960745 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsPNd-0003OM-JZ; Mon, 16 Oct 2023 15:19:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617755.960745; Mon, 16 Oct 2023 15: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 1qsPNd-0003L9-DM; Mon, 16 Oct 2023 15:19:41 +0000
Received: by outflank-mailman (input) for mailman id 617755;
 Mon, 16 Oct 2023 15:19: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=XUCO=F6=desiato.srs.infradead.org=BATV+1bdf71eab2d76d13073e+7358+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qsPNb-0001wj-3Y
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 15:19:39 +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 6a187ae1-6c37-11ee-9b0e-b553b5be7939;
 Mon, 16 Oct 2023 17:19:35 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by desiato.infradead.org with esmtpsa (Exim 4.96 #2 (Red Hat Linux))
 id 1qsPNB-0067AH-2I; Mon, 16 Oct 2023 15:19:15 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1qsPNB-0005nK-2S; Mon, 16 Oct 2023 16:19:13 +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
X-Inumbo-ID: 6a187ae1-6c37-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=desiato.20200630; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=iXDULQVzCobMyEZ4WUylbwZd7CUi+M/tuPLUTKt/3jw=; b=l1d5jbcw6JNVUwXd23LtcOWIrz
	awoQAWR2TcM4l7zFuNYfHDL5IW5doK4mER0sDrz9GFfi7g/6TGn1GKF7Nh4SXaBj7lExkZqV/6OBu
	BFw1UTrhAyKXsOt9PwCTU2pMxqKJdP2htFgualbxn+lvN/uSw/zpRypzgvobUd3b+niKIDlRnOUN0
	y25iFrORunLd1zKmTJ4gAmMrkYqYU3tM4LCEhYMpEqbeBcCd11W2GY5HtBdadVn3PG+6tuK2XfGfg
	nLsgelc99k1Us9mOk0LZPdAD9438EocKtKfbD+cMKYAq2PLkAUu3jedsBUI2LXJKDiK3BJ8DZHlBK
	82Uotnsw==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>,
	Hanna Reitz <hreitz@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	=?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Richard Henderson <richard.henderson@linaro.org>,
	Eduardo Habkost <eduardo@habkost.net>,
	David Woodhouse <dwmw2@infradead.org>,
	Marcelo Tosatti <mtosatti@redhat.com>,
	qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org,
	kvm@vger.kernel.org
Subject: [PATCH 04/12] i386/xen: advertise XEN_HVM_CPUID_UPCALL_VECTOR in CPUID
Date: Mon, 16 Oct 2023 16:19:01 +0100
Message-Id: <20231016151909.22133-5-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231016151909.22133-1-dwmw2@infradead.org>
References: <20231016151909.22133-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by desiato.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

This will allow Linux guests (since v6.0) to use the per-vCPU upcall
vector delivered as MSI through the local APIC.

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 target/i386/kvm/kvm.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/target/i386/kvm/kvm.c b/target/i386/kvm/kvm.c
index f6c7f7e268..8bdbdcdffe 100644
--- a/target/i386/kvm/kvm.c
+++ b/target/i386/kvm/kvm.c
@@ -1887,6 +1887,10 @@ int kvm_arch_init_vcpu(CPUState *cs)
                 c->eax |= XEN_HVM_CPUID_VCPU_ID_PRESENT;
                 c->ebx = cs->cpu_index;
             }
+
+            if (cs->kvm_state->xen_version >= XEN_VERSION(4, 17)) {
+                c->eax |= XEN_HVM_CPUID_UPCALL_VECTOR;
+            }
         }
 
         r = kvm_xen_init_vcpu(cs);
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Mon Oct 16 15:19:42 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 15:19:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617756.960758 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsPNe-0003eq-Jk; Mon, 16 Oct 2023 15:19:42 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617756.960758; Mon, 16 Oct 2023 15: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 1qsPNe-0003bu-5k; Mon, 16 Oct 2023 15:19:42 +0000
Received: by outflank-mailman (input) for mailman id 617756;
 Mon, 16 Oct 2023 15:19: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=XUCO=F6=desiato.srs.infradead.org=BATV+1bdf71eab2d76d13073e+7358+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qsPNb-0001wj-GF
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 15:19:39 +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 6a8034e5-6c37-11ee-9b0e-b553b5be7939;
 Mon, 16 Oct 2023 17:19:36 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by desiato.infradead.org with esmtpsa (Exim 4.96 #2 (Red Hat Linux))
 id 1qsPNB-0067AI-2H; Mon, 16 Oct 2023 15:19:15 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1qsPNC-0005na-07; Mon, 16 Oct 2023 16:19:14 +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
X-Inumbo-ID: 6a8034e5-6c37-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=desiato.20200630; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=MzyeUS8+Q6DyGG1BYkZOM8Vo8wKa2UEntgjHbKC7sqQ=; b=GJb2yG67l2i9wJHfLSPli4NmiV
	+WTJ+STZ9PvEtXrFika2dLjRUrokj2hMR900jok8EpQMettPN7gS3FHyPQKoznf647TUOpQSYHY87
	7NhsXIonFGtW9kxXtw/WrFVNq3USbXjMFevv9C8aamNvWluW8r5OoAlCDIqIh2MY7r95iGlt3LwPy
	5WsUY2qda44FfRXdd6nB2ta+X7WWj3YG/9DdMeQ3M++iT+3xJ8ubaNHJ4hpP0CAXaBOr6HpHe17qm
	Dw1r3eL81en6tel9bQMu5Y3fvInjNbKvWsdnZNPfP0uvJdUrEuS9xLq5kA/UMXrbV4xTXsKUFPxUa
	fbe12+bQ==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>,
	Hanna Reitz <hreitz@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	=?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Richard Henderson <richard.henderson@linaro.org>,
	Eduardo Habkost <eduardo@habkost.net>,
	David Woodhouse <dwmw2@infradead.org>,
	Marcelo Tosatti <mtosatti@redhat.com>,
	qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org,
	kvm@vger.kernel.org
Subject: [PATCH 08/12] hw/xen: do not repeatedly try to create a failing backend device
Date: Mon, 16 Oct 2023 16:19:05 +0100
Message-Id: <20231016151909.22133-9-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231016151909.22133-1-dwmw2@infradead.org>
References: <20231016151909.22133-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by desiato.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

If xen_backend_device_create() fails to instantiate a device, the XenBus
code will just keep trying over and over again each time the bus is
re-enumerated, as long as the backend appears online and in
XenbusStateInitialising.

The only thing which prevents the XenBus code from recreating duplicates
of devices which already exist, is the fact that xen_device_realize()
sets the backend state to XenbusStateInitWait. If the attempt to create
the device doesn't get *that* far, that's when it will keep getting
retried.

My first thought was to handle errors by setting the backend state to
XenbusStateClosed, but that doesn't work for XenConsole which wants to
*ignore* any device of type != "ioemu" completely.

So, make xen_backend_device_create() *keep* the XenBackendInstance for a
failed device, and provide a new xen_backend_exists() function to allow
xen_bus_type_enumerate() to check whether one already exists before
creating a new one.

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 hw/xen/xen-backend.c         | 27 +++++++++++++++++++++------
 hw/xen/xen-bus.c             |  3 ++-
 include/hw/xen/xen-backend.h |  1 +
 3 files changed, 24 insertions(+), 7 deletions(-)

diff --git a/hw/xen/xen-backend.c b/hw/xen/xen-backend.c
index 5b0fb76eae..b9bf70a9f5 100644
--- a/hw/xen/xen-backend.c
+++ b/hw/xen/xen-backend.c
@@ -101,6 +101,24 @@ static XenBackendInstance *xen_backend_list_find(XenDevice *xendev)
     return NULL;
 }
 
+bool xen_backend_exists(const char *type, const char *name)
+{
+    const XenBackendImpl *impl = xen_backend_table_lookup(type);
+    XenBackendInstance *backend;
+
+    if (!impl) {
+        return false;
+    }
+
+    QLIST_FOREACH(backend, &backend_list, entry) {
+        if (backend->impl == impl && !strcmp(backend->name, name)) {
+            return true;
+        }
+    }
+
+    return false;
+}
+
 static void xen_backend_list_remove(XenBackendInstance *backend)
 {
     QLIST_REMOVE(backend, entry);
@@ -122,11 +140,6 @@ void xen_backend_device_create(XenBus *xenbus, const char *type,
     backend->name = g_strdup(name);
 
     impl->create(backend, opts, errp);
-    if (*errp) {
-        g_free(backend->name);
-        g_free(backend);
-        return;
-    }
 
     backend->impl = impl;
     xen_backend_list_add(backend);
@@ -165,7 +178,9 @@ bool xen_backend_try_device_destroy(XenDevice *xendev, Error **errp)
     }
 
     impl = backend->impl;
-    impl->destroy(backend, errp);
+    if (backend->xendev) {
+        impl->destroy(backend, errp);
+    }
 
     xen_backend_list_remove(backend);
     g_free(backend->name);
diff --git a/hw/xen/xen-bus.c b/hw/xen/xen-bus.c
index cc524ed92c..0da2aa219a 100644
--- a/hw/xen/xen-bus.c
+++ b/hw/xen/xen-bus.c
@@ -209,7 +209,8 @@ static void xen_bus_type_enumerate(XenBus *xenbus, const char *type)
                           NULL, "%u", &online) != 1)
             online = 0;
 
-        if (online && state == XenbusStateInitialising) {
+        if (online && state == XenbusStateInitialising &&
+            !xen_backend_exists(type, backend[i])) {
             Error *local_err = NULL;
 
             xen_bus_backend_create(xenbus, type, backend[i], backend_path,
diff --git a/include/hw/xen/xen-backend.h b/include/hw/xen/xen-backend.h
index aac2fd454d..0f01631ae7 100644
--- a/include/hw/xen/xen-backend.h
+++ b/include/hw/xen/xen-backend.h
@@ -33,6 +33,7 @@ XenDevice *xen_backend_get_device(XenBackendInstance *backend);
 void xen_backend_register(const XenBackendInfo *info);
 const char **xen_backend_get_types(unsigned int *nr);
 
+bool xen_backend_exists(const char *type, const char *name);
 void xen_backend_device_create(XenBus *xenbus, const char *type,
                                const char *name, QDict *opts, Error **errp);
 bool xen_backend_try_device_destroy(XenDevice *xendev, Error **errp);
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Mon Oct 16 15:19:43 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 15:19:43 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617757.960762 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsPNf-0003sy-6D; Mon, 16 Oct 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 617757.960762; Mon, 16 Oct 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 1qsPNf-0003qr-0b; Mon, 16 Oct 2023 15:19:43 +0000
Received: by outflank-mailman (input) for mailman id 617757;
 Mon, 16 Oct 2023 15:19: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=XUCO=F6=desiato.srs.infradead.org=BATV+1bdf71eab2d76d13073e+7358+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qsPNc-0001wj-GK
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 15:19:40 +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 6b0e86a4-6c37-11ee-9b0e-b553b5be7939;
 Mon, 16 Oct 2023 17:19:37 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by desiato.infradead.org with esmtpsa (Exim 4.96 #2 (Red Hat Linux))
 id 1qsPNB-0067AJ-2F; Mon, 16 Oct 2023 15:19:15 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1qsPNC-0005ne-0D; Mon, 16 Oct 2023 16:19:14 +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
X-Inumbo-ID: 6b0e86a4-6c37-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=desiato.20200630; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=TdW7pWLHlLv278eB+Yc1VQQLRAc6P36ZNDdKDPh28m0=; b=RGDymOaeG8K1D/v44ruA5TZh8q
	yIisakCcpuamBOij8UlBgpYUEpR1D1wEBLaWOSU+ss27q//FiVgfKJeg7VS8pbyC9PsQmXmwnrOmW
	o5iVb9ww1iBkPJhyOi7Sc43Xfr7YBbFVdfusAPOOwRATZNOM2ObJhyC7K66YjP+S5gUOdMo0pr9mK
	Jo+USZWvusMx/TNmvhcGTcsrSwDS5+1Z1bYJmgYpEilt7n2HkBGrvg+D7T8zHfi73sb2dEblB7LX2
	iNt0YZiJQwK3W1lkbDeL4VfcIg9XkLaUoqSE48WawQUxp9Q87L69aiRbTfJZJYSkjK1T/tBHXRNPD
	lvQikPAQ==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>,
	Hanna Reitz <hreitz@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	=?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Richard Henderson <richard.henderson@linaro.org>,
	Eduardo Habkost <eduardo@habkost.net>,
	David Woodhouse <dwmw2@infradead.org>,
	Marcelo Tosatti <mtosatti@redhat.com>,
	qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org,
	kvm@vger.kernel.org
Subject: [PATCH 09/12] hw/xen: prevent duplicate device registrations
Date: Mon, 16 Oct 2023 16:19:06 +0100
Message-Id: <20231016151909.22133-10-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231016151909.22133-1-dwmw2@infradead.org>
References: <20231016151909.22133-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by desiato.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

Ensure that we have a XenBackendInstance for every device regardless
of whether it was "discovered" in XenStore or created directly in QEMU.

This allows the backend_list to be a source of truth about whether a
given backend exists, and allows us to reject duplicates.

This also cleans up the fact that backend drivers were calling
xen_backend_set_device() with a XenDevice immediately after calling
qdev_realize_and_unref() on it, when it wasn't theirs to play with any
more.

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 hw/block/xen-block.c         |  1 -
 hw/char/xen_console.c        |  2 +-
 hw/xen/xen-backend.c         | 78 ++++++++++++++++++++++++++----------
 hw/xen/xen-bus.c             |  8 ++++
 include/hw/xen/xen-backend.h |  3 ++
 5 files changed, 69 insertions(+), 23 deletions(-)

diff --git a/hw/block/xen-block.c b/hw/block/xen-block.c
index a07cd7eb5d..9262338535 100644
--- a/hw/block/xen-block.c
+++ b/hw/block/xen-block.c
@@ -975,7 +975,6 @@ static void xen_block_device_create(XenBackendInstance *backend,
         goto fail;
     }
 
-    xen_backend_set_device(backend, xendev);
     return;
 
 fail:
diff --git a/hw/char/xen_console.c b/hw/char/xen_console.c
index bd20be116c..2825b8c511 100644
--- a/hw/char/xen_console.c
+++ b/hw/char/xen_console.c
@@ -468,7 +468,7 @@ static void xen_console_device_create(XenBackendInstance *backend,
     Chardev *cd = NULL;
     struct qemu_xs_handle *xsh = xenbus->xsh;
 
-    if (qemu_strtoul(name, NULL, 10, &number)) {
+    if (qemu_strtoul(name, NULL, 10, &number) || number >= INT_MAX) {
         error_setg(errp, "failed to parse name '%s'", name);
         goto fail;
     }
diff --git a/hw/xen/xen-backend.c b/hw/xen/xen-backend.c
index b9bf70a9f5..dcb4329258 100644
--- a/hw/xen/xen-backend.c
+++ b/hw/xen/xen-backend.c
@@ -101,22 +101,28 @@ static XenBackendInstance *xen_backend_list_find(XenDevice *xendev)
     return NULL;
 }
 
-bool xen_backend_exists(const char *type, const char *name)
+static XenBackendInstance *xen_backend_lookup(const XenBackendImpl *impl, const char *name)
 {
-    const XenBackendImpl *impl = xen_backend_table_lookup(type);
     XenBackendInstance *backend;
 
-    if (!impl) {
-        return false;
-    }
-
     QLIST_FOREACH(backend, &backend_list, entry) {
         if (backend->impl == impl && !strcmp(backend->name, name)) {
-            return true;
+            return backend;
         }
     }
 
-    return false;
+    return NULL;
+}
+
+bool xen_backend_exists(const char *type, const char *name)
+{
+    const XenBackendImpl *impl = xen_backend_table_lookup(type);
+
+    if (!impl) {
+        return false;
+    }
+
+    return !!xen_backend_lookup(impl, name);
 }
 
 static void xen_backend_list_remove(XenBackendInstance *backend)
@@ -138,11 +144,10 @@ void xen_backend_device_create(XenBus *xenbus, const char *type,
     backend = g_new0(XenBackendInstance, 1);
     backend->xenbus = xenbus;
     backend->name = g_strdup(name);
-
-    impl->create(backend, opts, errp);
-
     backend->impl = impl;
     xen_backend_list_add(backend);
+
+    impl->create(backend, opts, errp);
 }
 
 XenBus *xen_backend_get_bus(XenBackendInstance *backend)
@@ -155,13 +160,6 @@ const char *xen_backend_get_name(XenBackendInstance *backend)
     return backend->name;
 }
 
-void xen_backend_set_device(XenBackendInstance *backend,
-                            XenDevice *xendev)
-{
-    g_assert(!backend->xendev);
-    backend->xendev = xendev;
-}
-
 XenDevice *xen_backend_get_device(XenBackendInstance *backend)
 {
     return backend->xendev;
@@ -178,9 +176,7 @@ bool xen_backend_try_device_destroy(XenDevice *xendev, Error **errp)
     }
 
     impl = backend->impl;
-    if (backend->xendev) {
-        impl->destroy(backend, errp);
-    }
+    impl->destroy(backend, errp);
 
     xen_backend_list_remove(backend);
     g_free(backend->name);
@@ -188,3 +184,43 @@ bool xen_backend_try_device_destroy(XenDevice *xendev, Error **errp)
 
     return true;
 }
+
+bool xen_backend_device_realized(XenDevice *xendev, Error **errp)
+{
+    XenDeviceClass *xendev_class = XEN_DEVICE_GET_CLASS(xendev);
+    const char *type = xendev_class->backend ? : object_get_typename(OBJECT(xendev));
+    const XenBackendImpl *impl = xen_backend_table_lookup(type);
+    XenBackendInstance *backend;
+
+    if (!impl) {
+        return false;
+    }
+
+    backend = xen_backend_lookup(impl, xendev->name);
+    if (backend) {
+        if (backend->xendev && backend->xendev != xendev) {
+            error_setg(errp, "device %s/%s already exists", type, xendev->name);
+            return false;
+        }
+        backend->xendev = xendev;
+        return true;
+    }
+
+    backend = g_new0(XenBackendInstance, 1);
+    backend->xenbus = XEN_BUS(qdev_get_parent_bus(DEVICE(xendev)));
+    backend->xendev = xendev;
+    backend->name = g_strdup(xendev->name);
+    backend->impl = impl;
+
+    xen_backend_list_add(backend);
+    return true;
+}
+
+void xen_backend_device_unrealized(XenDevice *xendev)
+{
+    XenBackendInstance *backend = xen_backend_list_find(xendev);
+
+    if (backend) {
+        backend->xendev = NULL;
+    }
+}
diff --git a/hw/xen/xen-bus.c b/hw/xen/xen-bus.c
index 0da2aa219a..0b232d1f94 100644
--- a/hw/xen/xen-bus.c
+++ b/hw/xen/xen-bus.c
@@ -359,6 +359,8 @@ static void xen_bus_realize(BusState *bus, Error **errp)
 
     g_free(type);
     g_free(key);
+
+    xen_bus_enumerate(xenbus);
     return;
 
 fail:
@@ -958,6 +960,8 @@ static void xen_device_unrealize(DeviceState *dev)
 
     trace_xen_device_unrealize(type, xendev->name);
 
+    xen_backend_device_unrealized(xendev);
+
     if (xendev->exit.notify) {
         qemu_remove_exit_notifier(&xendev->exit);
         xendev->exit.notify = NULL;
@@ -1024,6 +1028,10 @@ static void xen_device_realize(DeviceState *dev, Error **errp)
         goto unrealize;
     }
 
+    if (!xen_backend_device_realized(xendev, errp)) {
+        goto unrealize;
+    }
+
     trace_xen_device_realize(type, xendev->name);
 
     xendev->xsh = qemu_xen_xs_open();
diff --git a/include/hw/xen/xen-backend.h b/include/hw/xen/xen-backend.h
index 0f01631ae7..3f1e764c51 100644
--- a/include/hw/xen/xen-backend.h
+++ b/include/hw/xen/xen-backend.h
@@ -38,4 +38,7 @@ void xen_backend_device_create(XenBus *xenbus, const char *type,
                                const char *name, QDict *opts, Error **errp);
 bool xen_backend_try_device_destroy(XenDevice *xendev, Error **errp);
 
+bool xen_backend_device_realized(XenDevice *xendev, Error **errp);
+void xen_backend_device_unrealized(XenDevice *xendev);
+
 #endif /* HW_XEN_BACKEND_H */
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Mon Oct 16 15:19:44 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 15:19:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617758.960772 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsPNg-00043t-2n; Mon, 16 Oct 2023 15:19:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617758.960772; Mon, 16 Oct 2023 15: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 1qsPNf-00040D-Io; Mon, 16 Oct 2023 15:19:43 +0000
Received: by outflank-mailman (input) for mailman id 617758;
 Mon, 16 Oct 2023 15: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=yi9k=F6=casper.srs.infradead.org=BATV+ffd15938eba190e275bf+7358+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qsPNc-0001wi-EQ
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 15:19:40 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 6c680535-6c37-11ee-98d4-6d05b1d4d9a1;
 Mon, 16 Oct 2023 17:19:39 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qsPNC-006lqc-Bb; Mon, 16 Oct 2023 15:19:14 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1qsPNB-0005nW-37; Mon, 16 Oct 2023 16:19:13 +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
X-Inumbo-ID: 6c680535-6c37-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=MW+VqkBMBDTx8qpmwaHvLd47tVYOYFHTVMg8ZLGqw+E=; b=F6Le8wEulZH/uGxnTtpjVzO9ks
	9OnUELoCQHWZpUn/3J6l2TGdPJwLX8s0ZW6hyNfyRPBV+C7+l9seIP59ZPz4k4cKYhhHVS1dDUx4+
	PPPZDhIUbz3fykPPx7t2MFnACpZYcs7kJkjS8HweTafNS4o+gzn5cMC7MsQfCvFAriMq7WJis47n4
	Y8hwSAY0GPu2RemhT6zyN84lmtbiUjyDrBv+97ojYvjFBLJpZLHiXCtpl3kY6hQ6ebLthx0owWmXN
	deJEsBA0gren6xtJuy2xDD2w9k3puHr0xO2u8/hy+XyPGvwLve73rWPevvfZ4HXAu0Tm1sbmfA6Hs
	yWkA8PyA==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>,
	Hanna Reitz <hreitz@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	=?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Richard Henderson <richard.henderson@linaro.org>,
	Eduardo Habkost <eduardo@habkost.net>,
	David Woodhouse <dwmw2@infradead.org>,
	Marcelo Tosatti <mtosatti@redhat.com>,
	qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org,
	kvm@vger.kernel.org
Subject: [PATCH 07/12] hw/xen: update Xen console to XenDevice model
Date: Mon, 16 Oct 2023 16:19:04 +0100
Message-Id: <20231016151909.22133-8-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231016151909.22133-1-dwmw2@infradead.org>
References: <20231016151909.22133-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html

This allows (non-primary) console devices to be created on the command
line.

Signed-off-by: David Woodhouse <dwmw2@infradead.org>
---
 hw/char/trace-events        |   8 +
 hw/char/xen_console.c       | 502 +++++++++++++++++++++++++++---------
 hw/xen/xen-legacy-backend.c |   1 -
 3 files changed, 381 insertions(+), 130 deletions(-)

diff --git a/hw/char/trace-events b/hw/char/trace-events
index babf4d35ea..7a398c82a5 100644
--- a/hw/char/trace-events
+++ b/hw/char/trace-events
@@ -105,3 +105,11 @@ cadence_uart_baudrate(unsigned baudrate) "baudrate %u"
 # sh_serial.c
 sh_serial_read(char *id, unsigned size, uint64_t offs, uint64_t val) " %s size %d offs 0x%02" PRIx64 " -> 0x%02" PRIx64
 sh_serial_write(char *id, unsigned size, uint64_t offs, uint64_t val) "%s size %d offs 0x%02" PRIx64 " <- 0x%02" PRIx64
+
+# xen_console.c
+xen_console_connect(unsigned int idx, unsigned int ring_ref, unsigned int port, unsigned int limit) "idx %u ring_ref %u port %u limit %u"
+xen_console_disconnect(unsigned int idx) "idx %u"
+xen_console_unrealize(unsigned int idx) "idx %u"
+xen_console_realize(unsigned int idx, const char *chrdev) "idx %u chrdev %s"
+xen_console_device_create(unsigned int idx) "idx %u"
+xen_console_device_destroy(unsigned int idx) "idx %u"
diff --git a/hw/char/xen_console.c b/hw/char/xen_console.c
index 810dae3f44..bd20be116c 100644
--- a/hw/char/xen_console.c
+++ b/hw/char/xen_console.c
@@ -20,15 +20,19 @@
  */
 
 #include "qemu/osdep.h"
+#include "qemu/cutils.h"
 #include <sys/select.h>
 #include <termios.h>
 
 #include "qapi/error.h"
 #include "sysemu/sysemu.h"
 #include "chardev/char-fe.h"
-#include "hw/xen/xen-legacy-backend.h"
-
+#include "hw/xen/xen-backend.h"
+#include "hw/xen/xen-bus-helper.h"
+#include "hw/qdev-properties.h"
+#include "hw/qdev-properties-system.h"
 #include "hw/xen/interface/io/console.h"
+#include "trace.h"
 
 struct buffer {
     uint8_t *data;
@@ -39,16 +43,22 @@ struct buffer {
 };
 
 struct XenConsole {
-    struct XenLegacyDevice  xendev;  /* must be first */
+    struct XenDevice  xendev;  /* must be first */
+    XenEventChannel   *event_channel;
+    int               dev;
     struct buffer     buffer;
-    char              console[XEN_BUFSIZE];
-    int               ring_ref;
+    char              *fe_path;
+    unsigned int      ring_ref;
     void              *sring;
     CharBackend       chr;
     int               backlog;
 };
+typedef struct XenConsole XenConsole;
+
+#define TYPE_XEN_CONSOLE_DEVICE "xen-console"
+OBJECT_DECLARE_SIMPLE_TYPE(XenConsole, XEN_CONSOLE_DEVICE)
 
-static void buffer_append(struct XenConsole *con)
+static bool buffer_append(XenConsole *con)
 {
     struct buffer *buffer = &con->buffer;
     XENCONS_RING_IDX cons, prod, size;
@@ -60,7 +70,7 @@ static void buffer_append(struct XenConsole *con)
 
     size = prod - cons;
     if ((size == 0) || (size > sizeof(intf->out)))
-        return;
+        return false;
 
     if ((buffer->capacity - buffer->size) < size) {
         buffer->capacity += (size + 1024);
@@ -73,7 +83,7 @@ static void buffer_append(struct XenConsole *con)
 
     xen_mb();
     intf->out_cons = cons;
-    xen_pv_send_notify(&con->xendev);
+    xen_device_notify_event_channel(XEN_DEVICE(con), con->event_channel, NULL);
 
     if (buffer->max_capacity &&
         buffer->size > buffer->max_capacity) {
@@ -89,6 +99,7 @@ static void buffer_append(struct XenConsole *con)
         if (buffer->consumed > buffer->max_capacity - over)
             buffer->consumed = buffer->max_capacity - over;
     }
+    return true;
 }
 
 static void buffer_advance(struct buffer *buffer, size_t len)
@@ -100,7 +111,7 @@ static void buffer_advance(struct buffer *buffer, size_t len)
     }
 }
 
-static int ring_free_bytes(struct XenConsole *con)
+static int ring_free_bytes(XenConsole *con)
 {
     struct xencons_interface *intf = con->sring;
     XENCONS_RING_IDX cons, prod, space;
@@ -118,13 +129,13 @@ static int ring_free_bytes(struct XenConsole *con)
 
 static int xencons_can_receive(void *opaque)
 {
-    struct XenConsole *con = opaque;
+    XenConsole *con = opaque;
     return ring_free_bytes(con);
 }
 
 static void xencons_receive(void *opaque, const uint8_t *buf, int len)
 {
-    struct XenConsole *con = opaque;
+    XenConsole *con = opaque;
     struct xencons_interface *intf = con->sring;
     XENCONS_RING_IDX prod;
     int i, max;
@@ -141,10 +152,10 @@ static void xencons_receive(void *opaque, const uint8_t *buf, int len)
     }
     xen_wmb();
     intf->in_prod = prod;
-    xen_pv_send_notify(&con->xendev);
+    xen_device_notify_event_channel(XEN_DEVICE(con), con->event_channel, NULL);
 }
 
-static void xencons_send(struct XenConsole *con)
+static bool xencons_send(XenConsole *con)
 {
     ssize_t len, size;
 
@@ -159,174 +170,407 @@ static void xencons_send(struct XenConsole *con)
     if (len < 1) {
         if (!con->backlog) {
             con->backlog = 1;
-            xen_pv_printf(&con->xendev, 1,
-                          "backlog piling up, nobody listening?\n");
         }
     } else {
         buffer_advance(&con->buffer, len);
         if (con->backlog && len == size) {
             con->backlog = 0;
-            xen_pv_printf(&con->xendev, 1, "backlog is gone\n");
         }
     }
+    return len > 0;
 }
 
 /* -------------------------------------------------------------------- */
 
-static int store_con_info(struct XenConsole *con)
+static bool con_event(void *_xendev)
 {
-    Chardev *cs = qemu_chr_fe_get_driver(&con->chr);
-    char *pts = NULL;
-    char *dom_path;
-    g_autoptr(GString) path = NULL;
+    XenConsole *con = XEN_CONSOLE_DEVICE(_xendev);
+    bool done_something;
 
-    /* Only continue if we're talking to a pty. */
-    if (!CHARDEV_IS_PTY(cs)) {
-        return 0;
-    }
-    pts = cs->filename + 4;
+    done_something = buffer_append(con);
 
-    dom_path = qemu_xen_xs_get_domain_path(xenstore, xen_domid);
-    if (!dom_path) {
-        return 0;
+    if (con->buffer.size - con->buffer.consumed) {
+        done_something |= xencons_send(con);
     }
+    return done_something;
+}
 
-    path = g_string_new(dom_path);
-    free(dom_path);
+/* -------------------------------------------------------------------- */
 
-    if (con->xendev.dev) {
-        g_string_append_printf(path, "/device/console/%d", con->xendev.dev);
-    } else {
-        g_string_append(path, "/console");
+static void xen_console_disconnect(XenDevice *xendev, Error **errp)
+{
+    XenConsole *con = XEN_CONSOLE_DEVICE(xendev);
+
+    qemu_chr_fe_set_handlers(&con->chr, NULL, NULL, NULL, NULL,
+                             con, NULL, true);
+
+
+    trace_xen_console_disconnect(con->dev);
+
+    if (con->event_channel) {
+        xen_device_unbind_event_channel(xendev, con->event_channel,
+                                        errp);
     }
-    g_string_append(path, "/tty");
 
-    if (xenstore_write_str(con->console, path->str, pts)) {
-        fprintf(stderr, "xenstore_write_str for '%s' fail", path->str);
-        return -1;
+    if (!con->sring) {
+        return;
+    }
+
+    if (!con->dev) {
+        qemu_xen_foreignmem_unmap(con->sring, 1);
+    } else {
+        xen_device_unmap_grant_refs(xendev, con->sring,
+                                    &con->ring_ref, 1, errp);
     }
-    return 0;
 }
 
-static int con_init(struct XenLegacyDevice *xendev)
+static void xen_console_connect(XenDevice *xendev, Error **errp)
 {
-    struct XenConsole *con = container_of(xendev, struct XenConsole, xendev);
-    char *type, *dom, label[32];
-    int ret = 0;
-    const char *output;
-
-    /* setup */
-    dom = qemu_xen_xs_get_domain_path(xenstore, con->xendev.dom);
-    if (!xendev->dev) {
-        snprintf(con->console, sizeof(con->console), "%s/console", dom);
-    } else {
-        snprintf(con->console, sizeof(con->console), "%s/device/console/%d", dom, xendev->dev);
+    XenConsole *con = XEN_CONSOLE_DEVICE(xendev);
+    unsigned int port, limit;
+
+    if (xen_device_frontend_scanf(xendev, "ring-ref", "%u",
+                                  &con->ring_ref) != 1) {
+        error_setg(errp, "failed to read ring-ref");
+        return;
     }
-    free(dom);
 
-    type = xenstore_read_str(con->console, "type");
-    if (!type || strcmp(type, "ioemu") != 0) {
-        xen_pv_printf(xendev, 1, "not for me (type=%s)\n", type);
-        ret = -1;
-        goto out;
+    if (xen_device_frontend_scanf(xendev, "port", "%u", &port) != 1) {
+        error_setg(errp, "failed to read remote port");
+        return;
     }
 
-    output = xenstore_read_str(con->console, "output");
+    if (xen_device_frontend_scanf(xendev, "limit", "%u", &limit) == 1) {
+        con->buffer.max_capacity = limit;
+    }
 
-    /* no Xen override, use qemu output device */
-    if (output == NULL) {
-        if (con->xendev.dev) {
-            qemu_chr_fe_init(&con->chr, serial_hd(con->xendev.dev),
-                             &error_abort);
+    if (!con->dev) {
+        xen_pfn_t mfn = (xen_pfn_t)con->ring_ref;
+        con->sring = qemu_xen_foreignmem_map(xendev->frontend_id, NULL,
+                                             PROT_READ | PROT_WRITE,
+                                             1, &mfn, NULL);
+        if (!con->sring) {
+            error_setg(errp, "failed to map console page");
+            return;
         }
     } else {
-        snprintf(label, sizeof(label), "xencons%d", con->xendev.dev);
-        qemu_chr_fe_init(&con->chr,
-                         /*
-                          * FIXME: sure we want to support implicit
-                          * muxed monitors here?
-                          */
-                         qemu_chr_new_mux_mon(label, output, NULL),
-                         &error_abort);
+        con->sring = xen_device_map_grant_refs(xendev,
+                                               &con->ring_ref, 1,
+                                               PROT_READ | PROT_WRITE,
+                                               errp);
+        if (!con->sring) {
+            error_prepend(errp, "failed to map grant ref: ");
+            return;
+        }
     }
 
-    store_con_info(con);
+    con->event_channel = xen_device_bind_event_channel(xendev, port,
+                                                       con_event,
+                                                       con,
+                                                       errp);
+    if (!con->event_channel) {
+        xen_console_disconnect(xendev, NULL);
+        return;
+    }
 
-out:
-    g_free(type);
-    return ret;
+    trace_xen_console_connect(con->dev, con->ring_ref, port,
+                              con->buffer.max_capacity);
+
+    qemu_chr_fe_set_handlers(&con->chr, xencons_can_receive,
+                             xencons_receive, NULL, NULL, con, NULL,
+                             true);
 }
 
-static int con_initialise(struct XenLegacyDevice *xendev)
+
+static void xen_console_frontend_changed(XenDevice *xendev,
+                                       enum xenbus_state frontend_state,
+                                       Error **errp)
 {
-    struct XenConsole *con = container_of(xendev, struct XenConsole, xendev);
-    int limit;
-
-    if (xenstore_read_int(con->console, "ring-ref", &con->ring_ref) == -1)
-        return -1;
-    if (xenstore_read_int(con->console, "port", &con->xendev.remote_port) == -1)
-        return -1;
-    if (xenstore_read_int(con->console, "limit", &limit) == 0)
-        con->buffer.max_capacity = limit;
+    ERRP_GUARD();
+    enum xenbus_state backend_state = xen_device_backend_get_state(xendev);
+
+    switch (frontend_state) {
+    case XenbusStateInitialised:
+    case XenbusStateConnected:
+        if (backend_state == XenbusStateConnected) {
+            break;
+        }
 
-    if (!xendev->dev) {
-        xen_pfn_t mfn = con->ring_ref;
-        con->sring = qemu_xen_foreignmem_map(con->xendev.dom, NULL,
-                                             PROT_READ | PROT_WRITE,
-                                             1, &mfn, NULL);
-    } else {
-        con->sring = xen_be_map_grant_ref(xendev, con->ring_ref,
-                                          PROT_READ | PROT_WRITE);
+        xen_console_disconnect(xendev, errp);
+        if (*errp) {
+            break;
+        }
+
+        xen_console_connect(xendev, errp);
+        if (*errp) {
+            break;
+        }
+
+        xen_device_backend_set_state(xendev, XenbusStateConnected);
+        break;
+
+    case XenbusStateClosing:
+        xen_device_backend_set_state(xendev, XenbusStateClosing);
+        break;
+
+    case XenbusStateClosed:
+    case XenbusStateUnknown:
+        xen_console_disconnect(xendev, errp);
+        if (*errp) {
+            break;
+        }
+
+        xen_device_backend_set_state(xendev, XenbusStateClosed);
+        break;
+
+    default:
+        break;
     }
-    if (!con->sring)
-        return -1;
+}
 
-    xen_be_bind_evtchn(&con->xendev);
-    qemu_chr_fe_set_handlers(&con->chr, xencons_can_receive,
-                             xencons_receive, NULL, NULL, con, NULL, true);
-
-    xen_pv_printf(xendev, 1,
-                  "ring mfn %d, remote port %d, local port %d, limit %zd\n",
-                  con->ring_ref,
-                  con->xendev.remote_port,
-                  con->xendev.local_port,
-                  con->buffer.max_capacity);
-    return 0;
+
+static char *xen_console_get_name(XenDevice *xendev, Error **errp)
+{
+    XenConsole *con = XEN_CONSOLE_DEVICE(xendev);
+
+    return g_strdup_printf("%u", con->dev);
 }
 
-static void con_disconnect(struct XenLegacyDevice *xendev)
+static void xen_console_unrealize(XenDevice *xendev)
 {
-    struct XenConsole *con = container_of(xendev, struct XenConsole, xendev);
+    XenConsole *con = XEN_CONSOLE_DEVICE(xendev);
+
+    trace_xen_console_unrealize(con->dev);
+
+    /* Disconnect from the frontend in case this has not already happened */
+    xen_console_disconnect(xendev, NULL);
 
     qemu_chr_fe_deinit(&con->chr, false);
-    xen_pv_unbind_evtchn(&con->xendev);
+}
+
+static void xen_console_realize(XenDevice *xendev, Error **errp)
+{
+    ERRP_GUARD();
+    XenConsole *con = XEN_CONSOLE_DEVICE(xendev);
+    Chardev *cs = qemu_chr_fe_get_driver(&con->chr);
+    unsigned int u;
+
+    if (!cs) {
+        error_setg(errp, "no backing character device");
+        return;
+    }
+
+    if (con->dev == -1) {
+        error_setg(errp, "no device index provided");
+        return;
+    }
 
-    if (con->sring) {
-        if (!xendev->dev) {
-            qemu_xen_foreignmem_unmap(con->sring, 1);
-        } else {
-            xen_be_unmap_grant_ref(xendev, con->sring, con->ring_ref);
+    /*
+     * The Xen primary console is special. The ring-ref is actually a GFN to
+     * be mapped directly as foreignmem (not a grant ref), and the guest port
+     * was allocated *for* the guest by the toolstack. The guest gets these
+     * through HVMOP_get_param and can use the console long before it's got
+     * XenStore up and running. We cannot create those for a Xen guest.
+     */
+    if (!con->dev) {
+        if (xen_device_frontend_scanf(xendev, "ring-ref", "%u", &u) != 1 ||
+            xen_device_frontend_scanf(xendev, "port", "%u", &u) != 1) {
+            error_setg(errp, "cannot create primary Xen console");
+            return;
         }
-        con->sring = NULL;
+    }
+
+    trace_xen_console_realize(con->dev, object_get_typename(OBJECT(cs)));
+
+    if (CHARDEV_IS_PTY(cs)) {
+        /* Strip the leading 'pty:' */
+        xen_device_frontend_printf(xendev, "tty", "%s", cs->filename + 4);
+    }
+
+    /* No normal PV driver initialization for the primary console */
+    if (!con->dev) {
+        xen_console_connect(xendev, errp);
+    }
+}
+
+static char *console_frontend_path(struct qemu_xs_handle *xenstore,
+                                   unsigned int dom_id, unsigned int dev)
+{
+    if (!dev) {
+        return g_strdup_printf("/local/domain/%u/console", dom_id);
+    } else {
+        return g_strdup_printf("/local/domain/%u/device/console/%u", dom_id, dev);
     }
 }
 
-static void con_event(struct XenLegacyDevice *xendev)
+static char *xen_console_get_frontend_path(XenDevice *xendev, Error **errp)
 {
-    struct XenConsole *con = container_of(xendev, struct XenConsole, xendev);
+    XenConsole *con = XEN_CONSOLE_DEVICE(xendev);
+    XenBus *xenbus = XEN_BUS(qdev_get_parent_bus(DEVICE(xendev)));
+    char *ret = console_frontend_path(xenbus->xsh, xendev->frontend_id,
+                                      con->dev);
 
-    buffer_append(con);
-    if (con->buffer.size - con->buffer.consumed)
-        xencons_send(con);
+    if (!ret) {
+        error_setg(errp, "failed to create frontend path");
+    }
+    return ret;
 }
 
-/* -------------------------------------------------------------------- */
 
-struct XenDevOps xen_console_ops = {
-    .size       = sizeof(struct XenConsole),
-    .flags      = DEVOPS_FLAG_IGNORE_STATE|DEVOPS_FLAG_NEED_GNTDEV,
-    .init       = con_init,
-    .initialise = con_initialise,
-    .event      = con_event,
-    .disconnect = con_disconnect,
+static Property xen_console_properties[] = {
+    DEFINE_PROP_CHR("chardev", XenConsole, chr),
+    DEFINE_PROP_INT32("idx", XenConsole, dev, -1),
+    DEFINE_PROP_END_OF_LIST(),
+};
+
+static void xen_console_class_init(ObjectClass *class, void *data)
+{
+    DeviceClass *dev_class = DEVICE_CLASS(class);
+    XenDeviceClass *xendev_class = XEN_DEVICE_CLASS(class);
+
+    xendev_class->backend = "console";
+    xendev_class->device = "console";
+    xendev_class->get_name = xen_console_get_name;
+    xendev_class->realize = xen_console_realize;
+    xendev_class->frontend_changed = xen_console_frontend_changed;
+    xendev_class->unrealize = xen_console_unrealize;
+    xendev_class->get_frontend_path = xen_console_get_frontend_path;
+
+    device_class_set_props(dev_class, xen_console_properties);
+}
+
+static const TypeInfo xen_console_type_info = {
+    .name = TYPE_XEN_CONSOLE_DEVICE,
+    .parent = TYPE_XEN_DEVICE,
+    .instance_size = sizeof(XenConsole),
+    .class_init = xen_console_class_init,
+};
+
+static void xen_console_register_types(void)
+{
+    type_register_static(&xen_console_type_info);
+}
+
+type_init(xen_console_register_types)
+
+/* Called to instantiate a XenConsole when the backend is detected. */
+static void xen_console_device_create(XenBackendInstance *backend,
+                                      QDict *opts, Error **errp)
+{
+    ERRP_GUARD();
+    XenBus *xenbus = xen_backend_get_bus(backend);
+    const char *name = xen_backend_get_name(backend);
+    unsigned long number;
+    char *fe_path = NULL, *type = NULL, *output = NULL;
+    char label[32];
+    XenDevice *xendev = NULL;
+    XenConsole *con;
+    Chardev *cd = NULL;
+    struct qemu_xs_handle *xsh = xenbus->xsh;
+
+    if (qemu_strtoul(name, NULL, 10, &number)) {
+        error_setg(errp, "failed to parse name '%s'", name);
+        goto fail;
+    }
+
+    trace_xen_console_device_create(number);
+
+    fe_path = console_frontend_path(xsh, xen_domid, number);
+    if (fe_path == NULL) {
+        error_setg(errp, "failed to generate frontend path");
+        goto fail;
+    }
+
+    if (xs_node_scanf(xsh, XBT_NULL, fe_path, "type", errp, "%ms", &type) != 1) {
+        error_prepend(errp, "failed to read console device type: ");
+        goto fail;
+    }
+
+    if (strcmp(type, "ioemu")) {
+        error_setg(errp, "declining to handle console type '%s'",
+                   type);
+        goto fail;
+    }
+
+    xendev = XEN_DEVICE(qdev_new(TYPE_XEN_CONSOLE_DEVICE));
+    con = XEN_CONSOLE_DEVICE(xendev);
+
+    con->dev = number;
+
+    snprintf(label, sizeof(label), "xencons%ld", number);
+
+    if (xs_node_scanf(xsh, XBT_NULL, fe_path, "output", NULL, "%ms",
+                      &output) == 1) {
+        /*
+         * FIXME: sure we want to support implicit
+         * muxed monitors here?
+         */
+        cd = qemu_chr_new_mux_mon(label, output, NULL);
+        if (!cd) {
+            error_setg(errp, "console: No valid chardev found at '%s': ",
+                       output);
+            goto fail;
+        }
+    } else if (number) {
+        cd = serial_hd(number);
+        if (!cd) {
+            error_prepend(errp, "console: No serial device #%ld found: ",
+                          number);
+            goto fail;
+        }
+    } else {
+        /* No 'output' node on primary console: use null. */
+        cd = qemu_chr_new(label, "null", NULL);
+        if (!cd) {
+            error_setg(errp, "console: failed to create null device");
+            goto fail;
+        }
+    }
+
+    if (!qemu_chr_fe_init(&con->chr, cd, errp)) {
+        error_prepend(errp, "console: failed to initialize backing chardev: ");
+        goto fail;
+    }
+
+    if (qdev_realize_and_unref(DEVICE(xendev), BUS(xenbus), errp)) {
+        xendev = NULL;
+    } else {
+        error_prepend(errp, "realization of console device %lu failed: ",
+                      number);
+        goto fail;
+    }
+
+ fail:
+    if (xendev) {
+        object_unparent(OBJECT(xendev));
+    }
+
+    g_free(fe_path);
+    free(type);
+    free(output);
+}
+
+static void xen_console_device_destroy(XenBackendInstance *backend,
+                                       Error **errp)
+{
+    ERRP_GUARD();
+    XenDevice *xendev = xen_backend_get_device(backend);
+    XenConsole *con = XEN_CONSOLE_DEVICE(xendev);
+
+    trace_xen_console_device_destroy(con->dev);
+
+    object_unparent(OBJECT(xendev));
+}
+
+static const XenBackendInfo xen_console_backend_info  = {
+    .type = "console",
+    .create = xen_console_device_create,
+    .destroy = xen_console_device_destroy,
 };
+
+static void xen_console_register_backend(void)
+{
+    xen_backend_register(&xen_console_backend_info);
+}
+
+xen_backend_init(xen_console_register_backend);
diff --git a/hw/xen/xen-legacy-backend.c b/hw/xen/xen-legacy-backend.c
index 4ded3cec23..124dd5f3d6 100644
--- a/hw/xen/xen-legacy-backend.c
+++ b/hw/xen/xen-legacy-backend.c
@@ -623,7 +623,6 @@ void xen_be_init(void)
 
     xen_set_dynamic_sysbus();
 
-    xen_be_register("console", &xen_console_ops);
     xen_be_register("vkbd", &xen_kbdmouse_ops);
 #ifdef CONFIG_VIRTFS
     xen_be_register("9pfs", &xen_9pfs_ops);
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Mon Oct 16 15:19:45 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 15:19:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617759.960781 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsPNh-0004Jh-21; Mon, 16 Oct 2023 15:19:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617759.960781; Mon, 16 Oct 2023 15: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 1qsPNg-0004G2-KR; Mon, 16 Oct 2023 15:19:44 +0000
Received: by outflank-mailman (input) for mailman id 617759;
 Mon, 16 Oct 2023 15:19: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=XUCO=F6=desiato.srs.infradead.org=BATV+1bdf71eab2d76d13073e+7358+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qsPNe-0001wj-6E
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 15:19:42 +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 6c36a377-6c37-11ee-9b0e-b553b5be7939;
 Mon, 16 Oct 2023 17:19:39 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by desiato.infradead.org with esmtpsa (Exim 4.96 #2 (Red Hat Linux))
 id 1qsPNB-0067AL-2I; Mon, 16 Oct 2023 15:19:15 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1qsPNC-0005nr-0V; Mon, 16 Oct 2023 16:19:14 +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
X-Inumbo-ID: 6c36a377-6c37-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=desiato.20200630; h=Sender:Content-Transfer-Encoding:
	Content-Type:MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:
	To:From:Reply-To:Content-ID:Content-Description;
	bh=jwGGWJD+aiNhUio6yXXYsQeQjFRX090/8s/pV5DcAPo=; b=nTtN6JRD/EBeLKEvbsufzqlbru
	I5Y17CMSysfhnozFHuM9sbPyu6B7o38BvbjJP7YM/huwOwOmM7M69ztifXBKwRAx+0BFBQu/nSafh
	6D5Hv2f20ZHCxPY1qUHqQNx+EwO6SpBTNfmcTAyTvyd32h7REGSMT09J1UCxPWmSpYcunHlREOgEd
	mD1QhZbOwWNsw7Vpi9yQCxYy7YACIbopBij9Slp+QO4r7TG6Lj3YYB2qbVh0D0Bvjuwr2tU41hUkj
	RLpPFgm1NjcggUm8/3qf7afu4o64ishMZRotMptZIwIKC3APG/f9sfEVPIPSyV+gM5OK+VgVgnszX
	cORGT8mw==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>,
	Hanna Reitz <hreitz@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	=?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Richard Henderson <richard.henderson@linaro.org>,
	Eduardo Habkost <eduardo@habkost.net>,
	David Woodhouse <dwmw2@infradead.org>,
	Marcelo Tosatti <mtosatti@redhat.com>,
	qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org,
	kvm@vger.kernel.org
Subject: [PATCH 12/12] hw/xen: add support for Xen primary console in emulated mode
Date: Mon, 16 Oct 2023 16:19:09 +0100
Message-Id: <20231016151909.22133-13-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231016151909.22133-1-dwmw2@infradead.org>
References: <20231016151909.22133-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by desiato.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

The primary console is special because the toolstack maps a page at a
fixed GFN and also allocates the guest-side event channel. Add support
for that in emulated mode, so that we can have a primary console.

Add a *very* rudimentary stub of foriegnmem ops for emulated mode, which
supports literally nothing except a single-page mapping of the console
page. This might as well have been a hack in the xen_console driver, but
this way at least the special-casing is kept within the Xen emulation
code, and it gives us a hook for a more complete implementation if/when
we ever do need one.

Now at last we can boot the Xen PV shim and run PV kernels in QEMU.

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 hw/char/xen_console.c             |  12 ++-
 hw/i386/kvm/meson.build           |   1 +
 hw/i386/kvm/trace-events          |   2 +
 hw/i386/kvm/xen-stubs.c           |   5 +
 hw/i386/kvm/xen_gnttab.c          |  32 +++++-
 hw/i386/kvm/xen_primary_console.c | 167 ++++++++++++++++++++++++++++++
 hw/i386/kvm/xen_primary_console.h |  22 ++++
 hw/i386/kvm/xen_xenstore.c        |   9 ++
 target/i386/kvm/xen-emu.c         |  23 +++-
 9 files changed, 266 insertions(+), 7 deletions(-)
 create mode 100644 hw/i386/kvm/xen_primary_console.c
 create mode 100644 hw/i386/kvm/xen_primary_console.h

diff --git a/hw/char/xen_console.c b/hw/char/xen_console.c
index 1a0f5ed3e1..dfc4be0aa1 100644
--- a/hw/char/xen_console.c
+++ b/hw/char/xen_console.c
@@ -32,6 +32,7 @@
 #include "hw/qdev-properties.h"
 #include "hw/qdev-properties-system.h"
 #include "hw/xen/interface/io/console.h"
+#include "hw/i386/kvm/xen_primary_console.h"
 #include "trace.h"
 
 struct buffer {
@@ -334,8 +335,8 @@ static char *xen_console_get_name(XenDevice *xendev, Error **errp)
     XenConsole *con = XEN_CONSOLE_DEVICE(xendev);
 
     if (con->dev == -1) {
+        int idx = (xen_mode == XEN_EMULATE) ? 0 : 1;
         char name[11];
-        int idx = 1;
 
         /* Theoretically we could go up to INT_MAX here but that's overkill */
         while (idx < 100) {
@@ -386,10 +387,13 @@ static void xen_console_realize(XenDevice *xendev, Error **errp)
      * be mapped directly as foreignmem (not a grant ref), and the guest port
      * was allocated *for* the guest by the toolstack. The guest gets these
      * through HVMOP_get_param and can use the console long before it's got
-     * XenStore up and running. We cannot create those for a Xen guest.
+     * XenStore up and running. We cannot create those for a true Xen guest,
+     * but we can for Xen emulation.
      */
     if (!con->dev) {
-        if (xen_device_frontend_scanf(xendev, "ring-ref", "%u", &u) != 1 ||
+        if (xen_mode == XEN_EMULATE) {
+            xen_primary_console_create();
+        } else if (xen_device_frontend_scanf(xendev, "ring-ref", "%u", &u) != 1 ||
             xen_device_frontend_scanf(xendev, "port", "%u", &u) != 1) {
             error_setg(errp, "cannot create primary Xen console");
             return;
@@ -404,7 +408,7 @@ static void xen_console_realize(XenDevice *xendev, Error **errp)
     }
 
     /* No normal PV driver initialization for the primary console */
-    if (!con->dev) {
+    if (!con->dev && xen_mode != XEN_EMULATE) {
         xen_console_connect(xendev, errp);
     }
 }
diff --git a/hw/i386/kvm/meson.build b/hw/i386/kvm/meson.build
index ab143d6474..a4a2e23c06 100644
--- a/hw/i386/kvm/meson.build
+++ b/hw/i386/kvm/meson.build
@@ -9,6 +9,7 @@ i386_kvm_ss.add(when: 'CONFIG_XEN_EMU', if_true: files(
   'xen_evtchn.c',
   'xen_gnttab.c',
   'xen_xenstore.c',
+  'xen_primary_console.c',
   'xenstore_impl.c',
   ))
 
diff --git a/hw/i386/kvm/trace-events b/hw/i386/kvm/trace-events
index e4c82de6f3..67bf7f174e 100644
--- a/hw/i386/kvm/trace-events
+++ b/hw/i386/kvm/trace-events
@@ -18,3 +18,5 @@ xenstore_watch(const char *path, const char *token) "path %s token %s"
 xenstore_unwatch(const char *path, const char *token) "path %s token %s"
 xenstore_reset_watches(void) ""
 xenstore_watch_event(const char *path, const char *token) "path %s token %s"
+xen_primary_console_create(void) ""
+xen_primary_console_reset(int port) "port %u"
diff --git a/hw/i386/kvm/xen-stubs.c b/hw/i386/kvm/xen-stubs.c
index ae406e0b02..10068970fe 100644
--- a/hw/i386/kvm/xen-stubs.c
+++ b/hw/i386/kvm/xen-stubs.c
@@ -15,6 +15,7 @@
 #include "qapi/qapi-commands-misc-target.h"
 
 #include "xen_evtchn.h"
+#include "xen_primary_console.h"
 
 void xen_evtchn_snoop_msi(PCIDevice *dev, bool is_msix, unsigned int vector,
                           uint64_t addr, uint32_t data, bool is_masked)
@@ -30,6 +31,10 @@ bool xen_evtchn_deliver_pirq_msi(uint64_t address, uint32_t data)
     return false;
 }
 
+void xen_primary_console_create(void)
+{
+}
+
 #ifdef TARGET_I386
 EvtchnInfoList *qmp_xen_event_list(Error **errp)
 {
diff --git a/hw/i386/kvm/xen_gnttab.c b/hw/i386/kvm/xen_gnttab.c
index 21c30e3659..ea201cd582 100644
--- a/hw/i386/kvm/xen_gnttab.c
+++ b/hw/i386/kvm/xen_gnttab.c
@@ -25,6 +25,7 @@
 #include "hw/xen/xen_backend_ops.h"
 #include "xen_overlay.h"
 #include "xen_gnttab.h"
+#include "xen_primary_console.h"
 
 #include "sysemu/kvm.h"
 #include "sysemu/kvm_xen.h"
@@ -38,6 +39,7 @@ OBJECT_DECLARE_SIMPLE_TYPE(XenGnttabState, XEN_GNTTAB)
 #define ENTRIES_PER_FRAME_V1 (XEN_PAGE_SIZE / sizeof(grant_entry_v1_t))
 
 static struct gnttab_backend_ops emu_gnttab_backend_ops;
+static struct foreignmem_backend_ops emu_foreignmem_backend_ops;
 
 struct XenGnttabState {
     /*< private >*/
@@ -100,6 +102,7 @@ static void xen_gnttab_realize(DeviceState *dev, Error **errp)
     s->map_track = g_new0(uint8_t, s->max_frames * ENTRIES_PER_FRAME_V1);
 
     xen_gnttab_ops = &emu_gnttab_backend_ops;
+    xen_foreignmem_ops = &emu_foreignmem_backend_ops;
 }
 
 static int xen_gnttab_post_load(void *opaque, int version_id)
@@ -524,6 +527,29 @@ static struct gnttab_backend_ops emu_gnttab_backend_ops = {
     .unmap = xen_be_gnttab_unmap,
 };
 
+/* Dummy implementation of foriegnmem; just enough for console */
+static void *xen_be_foreignmem_map(uint32_t dom, void *addr, int prot,
+                                   size_t pages, xen_pfn_t *pfns,
+                                   int *errs)
+{
+    if (dom == xen_domid && !addr && pages == 1 &&
+        pfns[0] == xen_primary_console_get_pfn()) {
+        return xen_primary_console_get_map();
+    }
+
+    return NULL;
+}
+
+static int xen_be_foreignmem_unmap(void *addr, size_t pages)
+{
+    return 0;
+}
+
+static struct foreignmem_backend_ops emu_foreignmem_backend_ops = {
+    .map = xen_be_foreignmem_map,
+    .unmap = xen_be_foreignmem_unmap,
+};
+
 int xen_gnttab_reset(void)
 {
     XenGnttabState *s = xen_gnttab_singleton;
@@ -537,10 +563,14 @@ int xen_gnttab_reset(void)
     s->nr_frames = 0;
 
     memset(s->entries.v1, 0, XEN_PAGE_SIZE * s->max_frames);
-
     s->entries.v1[GNTTAB_RESERVED_XENSTORE].flags = GTF_permit_access;
     s->entries.v1[GNTTAB_RESERVED_XENSTORE].frame = XEN_SPECIAL_PFN(XENSTORE);
 
+    if (xen_primary_console_get_pfn()) {
+        s->entries.v1[GNTTAB_RESERVED_CONSOLE].flags = GTF_permit_access;
+        s->entries.v1[GNTTAB_RESERVED_CONSOLE].frame = XEN_SPECIAL_PFN(CONSOLE);
+    }
+
     memset(s->map_track, 0, s->max_frames * ENTRIES_PER_FRAME_V1);
 
     return 0;
diff --git a/hw/i386/kvm/xen_primary_console.c b/hw/i386/kvm/xen_primary_console.c
new file mode 100644
index 0000000000..0aa1c16ad6
--- /dev/null
+++ b/hw/i386/kvm/xen_primary_console.c
@@ -0,0 +1,167 @@
+/*
+ * QEMU Xen emulation: Primary console support
+ *
+ * Copyright © 2023 Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ *
+ * Authors: David Woodhouse <dwmw2@infradead.org>
+ *
+ * This work is licensed under the terms of the GNU GPL, version 2 or later.
+ * See the COPYING file in the top-level directory.
+ */
+
+#include "qemu/osdep.h"
+
+#include "qapi/error.h"
+
+#include "hw/sysbus.h"
+#include "hw/xen/xen.h"
+#include "hw/xen/xen_backend_ops.h"
+#include "xen_evtchn.h"
+#include "xen_overlay.h"
+#include "xen_primary_console.h"
+
+#include "sysemu/kvm.h"
+#include "sysemu/kvm_xen.h"
+
+#include "trace.h"
+
+#include "hw/xen/interface/event_channel.h"
+#include "hw/xen/interface/grant_table.h"
+
+#define TYPE_XEN_PRIMARY_CONSOLE "xen-primary-console"
+OBJECT_DECLARE_SIMPLE_TYPE(XenPrimaryConsoleState, XEN_PRIMARY_CONSOLE)
+
+struct XenPrimaryConsoleState {
+    /*< private >*/
+    SysBusDevice busdev;
+    /*< public >*/
+
+    MemoryRegion console_page;
+    void *cp;
+
+    evtchn_port_t guest_port;
+    evtchn_port_t be_port;
+
+    struct xengntdev_handle *gt;
+    void *granted_xs;
+};
+
+struct XenPrimaryConsoleState *xen_primary_console_singleton;
+
+static void xen_primary_console_realize(DeviceState *dev, Error **errp)
+{
+    XenPrimaryConsoleState *s = XEN_PRIMARY_CONSOLE(dev);
+
+    if (xen_mode != XEN_EMULATE) {
+        error_setg(errp, "Xen primary console support is for Xen emulation");
+        return;
+    }
+
+    memory_region_init_ram(&s->console_page, OBJECT(dev), "xen:console_page",
+                           XEN_PAGE_SIZE, &error_abort);
+    memory_region_set_enabled(&s->console_page, true);
+    s->cp = memory_region_get_ram_ptr(&s->console_page);
+    memset(s->cp, 0, XEN_PAGE_SIZE);
+
+    /* We can't map it this early as KVM isn't ready */
+    xen_primary_console_singleton = s;
+}
+
+static void xen_primary_console_class_init(ObjectClass *klass, void *data)
+{
+    DeviceClass *dc = DEVICE_CLASS(klass);
+
+    dc->realize = xen_primary_console_realize;
+}
+
+static const TypeInfo xen_primary_console_info = {
+    .name          = TYPE_XEN_PRIMARY_CONSOLE,
+    .parent        = TYPE_SYS_BUS_DEVICE,
+    .instance_size = sizeof(XenPrimaryConsoleState),
+    .class_init    = xen_primary_console_class_init,
+};
+
+
+void xen_primary_console_create(void)
+{
+    DeviceState *dev = sysbus_create_simple(TYPE_XEN_PRIMARY_CONSOLE, -1, NULL);
+
+    trace_xen_primary_console_create();
+
+    xen_primary_console_singleton = XEN_PRIMARY_CONSOLE(dev);
+
+    /*
+     * Defer the init (xen_primary_console_reset()) until KVM is set up and the
+     * overlay page can be mapped.
+     */
+}
+
+static void xen_primary_console_register_types(void)
+{
+    type_register_static(&xen_primary_console_info);
+}
+
+type_init(xen_primary_console_register_types)
+
+uint16_t xen_primary_console_get_port(void)
+{
+    XenPrimaryConsoleState *s = xen_primary_console_singleton;
+    if (!s) {
+        return 0;
+    }
+    return s->guest_port;
+}
+
+uint64_t xen_primary_console_get_pfn(void)
+{
+    XenPrimaryConsoleState *s = xen_primary_console_singleton;
+    if (!s) {
+        return 0;
+    }
+    return XEN_SPECIAL_PFN(CONSOLE);
+}
+
+void *xen_primary_console_get_map(void)
+{
+    XenPrimaryConsoleState *s = xen_primary_console_singleton;
+    if (!s) {
+        return 0;
+    }
+    return s->cp;
+}
+
+static void alloc_guest_port(XenPrimaryConsoleState *s)
+{
+    struct evtchn_alloc_unbound alloc = {
+        .dom = DOMID_SELF,
+        .remote_dom = DOMID_QEMU,
+    };
+
+    if (!xen_evtchn_alloc_unbound_op(&alloc)) {
+        s->guest_port = alloc.port;
+    }
+}
+
+int xen_primary_console_reset(void)
+{
+    XenPrimaryConsoleState *s = xen_primary_console_singleton;
+    if (!s) {
+        return 0;
+    }
+
+    if (!memory_region_is_mapped(&s->console_page)) {
+        uint64_t gpa = XEN_SPECIAL_PFN(CONSOLE) << TARGET_PAGE_BITS;
+        xen_overlay_do_map_page(&s->console_page, gpa);
+    }
+
+    alloc_guest_port(s);
+
+    trace_xen_primary_console_reset(s->guest_port);
+
+    s->gt = qemu_xen_gnttab_open();
+    uint32_t xs_gntref = GNTTAB_RESERVED_CONSOLE;
+    s->granted_xs = qemu_xen_gnttab_map_refs(s->gt, 1, xen_domid, &xs_gntref,
+                                             PROT_READ | PROT_WRITE);
+
+    return 0;
+}
diff --git a/hw/i386/kvm/xen_primary_console.h b/hw/i386/kvm/xen_primary_console.h
new file mode 100644
index 0000000000..dd4922f3f4
--- /dev/null
+++ b/hw/i386/kvm/xen_primary_console.h
@@ -0,0 +1,22 @@
+/*
+ * QEMU Xen emulation: Primary console support
+ *
+ * Copyright © 2023 Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ *
+ * Authors: David Woodhouse <dwmw2@infradead.org>
+ *
+ * This work is licensed under the terms of the GNU GPL, version 2 or later.
+ * See the COPYING file in the top-level directory.
+ */
+
+#ifndef QEMU_XEN_PRIMARY_CONSOLE_H
+#define QEMU_XEN_PRIMARY_CONSOLE_H
+
+void xen_primary_console_create(void);
+int xen_primary_console_reset(void);
+
+uint16_t xen_primary_console_get_port(void);
+uint64_t xen_primary_console_get_pfn(void);
+void *xen_primary_console_get_map(void);
+
+#endif /* QEMU_XEN_PRIMARY_CONSOLE_H */
diff --git a/hw/i386/kvm/xen_xenstore.c b/hw/i386/kvm/xen_xenstore.c
index 3300e0614a..9f8946e0ce 100644
--- a/hw/i386/kvm/xen_xenstore.c
+++ b/hw/i386/kvm/xen_xenstore.c
@@ -25,6 +25,7 @@
 #include "hw/xen/xen_backend_ops.h"
 #include "xen_overlay.h"
 #include "xen_evtchn.h"
+#include "xen_primary_console.h"
 #include "xen_xenstore.h"
 
 #include "sysemu/kvm.h"
@@ -1432,6 +1433,7 @@ static void alloc_guest_port(XenXenstoreState *s)
 int xen_xenstore_reset(void)
 {
     XenXenstoreState *s = xen_xenstore_singleton;
+    int console_port;
     GList *perms;
     int err;
 
@@ -1467,6 +1469,13 @@ int xen_xenstore_reset(void)
     relpath_printf(s, perms, "store/ring-ref", "%lu", XEN_SPECIAL_PFN(XENSTORE));
     relpath_printf(s, perms, "store/port", "%u", s->be_port);
 
+    console_port = xen_primary_console_get_port();
+    if (console_port) {
+        relpath_printf(s, perms, "console/ring-ref", "%lu", XEN_SPECIAL_PFN(CONSOLE));
+        relpath_printf(s, perms, "console/port", "%u", console_port);
+        relpath_printf(s, perms, "console/state", "%u", XenbusStateInitialised);
+    }
+
     g_list_free_full(perms, g_free);
 
     /*
diff --git a/target/i386/kvm/xen-emu.c b/target/i386/kvm/xen-emu.c
index 477e93cd92..9f57786e95 100644
--- a/target/i386/kvm/xen-emu.c
+++ b/target/i386/kvm/xen-emu.c
@@ -28,6 +28,7 @@
 #include "hw/i386/kvm/xen_overlay.h"
 #include "hw/i386/kvm/xen_evtchn.h"
 #include "hw/i386/kvm/xen_gnttab.h"
+#include "hw/i386/kvm/xen_primary_console.h"
 #include "hw/i386/kvm/xen_xenstore.h"
 
 #include "hw/xen/interface/version.h"
@@ -182,7 +183,8 @@ int kvm_xen_init(KVMState *s, uint32_t hypercall_msr)
         return ret;
     }
 
-    /* The page couldn't be overlaid until KVM was initialized */
+    /* The pages couldn't be overlaid until KVM was initialized */
+    xen_primary_console_reset();
     xen_xenstore_reset();
 
     return 0;
@@ -811,11 +813,23 @@ static bool handle_get_param(struct kvm_xen_exit *exit, X86CPU *cpu,
     case HVM_PARAM_STORE_EVTCHN:
         hp.value = xen_xenstore_get_port();
         break;
+    case HVM_PARAM_CONSOLE_PFN:
+        hp.value = xen_primary_console_get_pfn();
+        if (!hp.value) {
+            err = -EINVAL;
+        }
+        break;
+    case HVM_PARAM_CONSOLE_EVTCHN:
+        hp.value = xen_primary_console_get_port();
+        if (!hp.value) {
+            err = -EINVAL;
+        }
+        break;
     default:
         return false;
     }
 
-    if (kvm_copy_to_gva(cs, arg, &hp, sizeof(hp))) {
+    if (!err && kvm_copy_to_gva(cs, arg, &hp, sizeof(hp))) {
         err = -EFAULT;
     }
 out:
@@ -1426,6 +1440,11 @@ int kvm_xen_soft_reset(void)
         return err;
     }
 
+    err = xen_primary_console_reset();
+    if (err) {
+        return err;
+    }
+
     err = xen_xenstore_reset();
     if (err) {
         return err;
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Mon Oct 16 15:19:46 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 15:19:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617760.960787 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsPNh-0004TL-Oa; Mon, 16 Oct 2023 15:19:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617760.960787; Mon, 16 Oct 2023 15: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 1qsPNh-0004Pp-4o; Mon, 16 Oct 2023 15:19:45 +0000
Received: by outflank-mailman (input) for mailman id 617760;
 Mon, 16 Oct 2023 15:19: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=yi9k=F6=casper.srs.infradead.org=BATV+ffd15938eba190e275bf+7358+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qsPNe-0001wi-Fc
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 15:19:42 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 6d093efc-6c37-11ee-98d4-6d05b1d4d9a1;
 Mon, 16 Oct 2023 17:19:40 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qsPNC-006lqZ-25; Mon, 16 Oct 2023 15:19:14 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1qsPNB-0005nH-2M; Mon, 16 Oct 2023 16:19:13 +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
X-Inumbo-ID: 6d093efc-6c37-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=oXIYkBgWqGifderSC1Ie6itfGDjOSlFxOetg0dgIlJc=; b=ZqvA1DHpT6EVnq1euEg0gDCBf9
	zSVGzt6IKidO+fSnJxuFNxyeMPQL1z4FjZ52x3GefUUC6Uo8d/aytm/h1jw9qocdhjZOGcX8RiyNS
	NIpXSPw9iBK2BXZHrRwUM/8MG3xzuwa+lCIyyepUvCecX3XN3rySeoEx1lbB2MAt1Td1WAqF/KCUo
	csjWxFKfaZjk7AFxeU0WHuCkFAVqzh6Oie8noyrWhXdxXQ5/R6x6DNX9VMqv/tfkgjXT0l/i47BAF
	KVuWXsTz1qp/yBCO3SEPd2iyx53DEPo/MkMutsbbPAeUOCiYx+LHqT9hQca33aVMaGRqhtIDC75S4
	ODl5+8Sg==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>,
	Hanna Reitz <hreitz@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	=?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Richard Henderson <richard.henderson@linaro.org>,
	Eduardo Habkost <eduardo@habkost.net>,
	David Woodhouse <dwmw2@infradead.org>,
	Marcelo Tosatti <mtosatti@redhat.com>,
	qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org,
	kvm@vger.kernel.org
Subject: [PATCH 03/12] include: update Xen public headers to Xen 4.17.2 release
Date: Mon, 16 Oct 2023 16:19:00 +0100
Message-Id: <20231016151909.22133-4-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231016151909.22133-1-dwmw2@infradead.org>
References: <20231016151909.22133-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

... in order to advertise the XEN_HVM_CPUID_UPCALL_VECTOR feature,
which will come in a subsequent commit.

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 hw/i386/kvm/xen_xenstore.c                    |  2 +-
 include/hw/xen/interface/arch-arm.h           | 37 +++++++-------
 include/hw/xen/interface/arch-x86/cpuid.h     | 31 +++++-------
 .../hw/xen/interface/arch-x86/xen-x86_32.h    | 19 +------
 .../hw/xen/interface/arch-x86/xen-x86_64.h    | 19 +------
 include/hw/xen/interface/arch-x86/xen.h       | 26 ++--------
 include/hw/xen/interface/event_channel.h      | 19 +------
 include/hw/xen/interface/features.h           | 19 +------
 include/hw/xen/interface/grant_table.h        | 19 +------
 include/hw/xen/interface/hvm/hvm_op.h         | 19 +------
 include/hw/xen/interface/hvm/params.h         | 19 +------
 include/hw/xen/interface/io/blkif.h           | 27 ++++------
 include/hw/xen/interface/io/console.h         | 19 +------
 include/hw/xen/interface/io/fbif.h            | 19 +------
 include/hw/xen/interface/io/kbdif.h           | 19 +------
 include/hw/xen/interface/io/netif.h           | 25 +++-------
 include/hw/xen/interface/io/protocols.h       | 19 +------
 include/hw/xen/interface/io/ring.h            | 49 ++++++++++---------
 include/hw/xen/interface/io/usbif.h           | 19 +------
 include/hw/xen/interface/io/xenbus.h          | 19 +------
 include/hw/xen/interface/io/xs_wire.h         | 36 ++++++--------
 include/hw/xen/interface/memory.h             | 30 +++++-------
 include/hw/xen/interface/physdev.h            | 23 ++-------
 include/hw/xen/interface/sched.h              | 19 +------
 include/hw/xen/interface/trace.h              | 19 +------
 include/hw/xen/interface/vcpu.h               | 19 +------
 include/hw/xen/interface/version.h            | 19 +------
 include/hw/xen/interface/xen-compat.h         | 19 +------
 include/hw/xen/interface/xen.h                | 19 +------
 29 files changed, 124 insertions(+), 523 deletions(-)

diff --git a/hw/i386/kvm/xen_xenstore.c b/hw/i386/kvm/xen_xenstore.c
index 660d0b72f9..d2b311109b 100644
--- a/hw/i386/kvm/xen_xenstore.c
+++ b/hw/i386/kvm/xen_xenstore.c
@@ -331,7 +331,7 @@ static void xs_error(XenXenstoreState *s, unsigned int id,
     const char *errstr = NULL;
 
     for (unsigned int i = 0; i < ARRAY_SIZE(xsd_errors); i++) {
-        struct xsd_errors *xsd_error = &xsd_errors[i];
+        const struct xsd_errors *xsd_error = &xsd_errors[i];
 
         if (xsd_error->errnum == errnum) {
             errstr = xsd_error->errstring;
diff --git a/include/hw/xen/interface/arch-arm.h b/include/hw/xen/interface/arch-arm.h
index 94b31511dd..1528ced509 100644
--- a/include/hw/xen/interface/arch-arm.h
+++ b/include/hw/xen/interface/arch-arm.h
@@ -1,26 +1,9 @@
+/* SPDX-License-Identifier: MIT */
 /******************************************************************************
  * arch-arm.h
  *
  * Guest OS interface to ARM Xen.
  *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- *
  * Copyright 2011 (C) Citrix Systems
  */
 
@@ -361,6 +344,7 @@ typedef uint64_t xen_callback_t;
 #define PSR_DBG_MASK    (1<<9)        /* arm64: Debug Exception mask */
 #define PSR_IT_MASK     (0x0600fc00)  /* Thumb If-Then Mask */
 #define PSR_JAZELLE     (1<<24)       /* Jazelle Mode */
+#define PSR_Z           (1<<30)       /* Zero condition flag */
 
 /* 32 bit modes */
 #define PSR_MODE_USR 0x10
@@ -383,7 +367,15 @@ typedef uint64_t xen_callback_t;
 #define PSR_MODE_EL1t 0x04
 #define PSR_MODE_EL0t 0x00
 
-#define PSR_GUEST32_INIT  (PSR_ABT_MASK|PSR_FIQ_MASK|PSR_IRQ_MASK|PSR_MODE_SVC)
+/*
+ * We set PSR_Z to be able to boot Linux kernel versions with an invalid
+ * encoding of the first 8 NOP instructions. See commit a92882a4d270 in
+ * Linux.
+ *
+ * Note that PSR_Z is also set by U-Boot and QEMU -kernel when loading
+ * zImage kernels on aarch32.
+ */
+#define PSR_GUEST32_INIT (PSR_Z|PSR_ABT_MASK|PSR_FIQ_MASK|PSR_IRQ_MASK|PSR_MODE_SVC)
 #define PSR_GUEST64_INIT (PSR_ABT_MASK|PSR_FIQ_MASK|PSR_IRQ_MASK|PSR_MODE_EL1h)
 
 #define SCTLR_GUEST_INIT    xen_mk_ullong(0x00c50078)
@@ -398,6 +390,10 @@ typedef uint64_t xen_callback_t;
 
 /* Physical Address Space */
 
+/* Virtio MMIO mappings */
+#define GUEST_VIRTIO_MMIO_BASE   xen_mk_ullong(0x02000000)
+#define GUEST_VIRTIO_MMIO_SIZE   xen_mk_ullong(0x00100000)
+
 /*
  * vGIC mappings: Only one set of mapping is used by the guest.
  * Therefore they can overlap.
@@ -484,6 +480,9 @@ typedef uint64_t xen_callback_t;
 
 #define GUEST_VPL011_SPI        32
 
+#define GUEST_VIRTIO_MMIO_SPI_FIRST   33
+#define GUEST_VIRTIO_MMIO_SPI_LAST    43
+
 /* PSCI functions */
 #define PSCI_cpu_suspend 0
 #define PSCI_cpu_off     1
diff --git a/include/hw/xen/interface/arch-x86/cpuid.h b/include/hw/xen/interface/arch-x86/cpuid.h
index ce46305bee..7ecd16ae05 100644
--- a/include/hw/xen/interface/arch-x86/cpuid.h
+++ b/include/hw/xen/interface/arch-x86/cpuid.h
@@ -1,26 +1,9 @@
+/* SPDX-License-Identifier: MIT */
 /******************************************************************************
  * arch-x86/cpuid.h
  *
  * CPUID interface to Xen.
  *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- *
  * Copyright (c) 2007 Citrix Systems, Inc.
  *
  * Authors:
@@ -102,6 +85,18 @@
 #define XEN_HVM_CPUID_IOMMU_MAPPINGS   (1u << 2)
 #define XEN_HVM_CPUID_VCPU_ID_PRESENT  (1u << 3) /* vcpu id is present in EBX */
 #define XEN_HVM_CPUID_DOMID_PRESENT    (1u << 4) /* domid is present in ECX */
+/*
+ * With interrupt format set to 0 (non-remappable) bits 55:49 from the
+ * IO-APIC RTE and bits 11:5 from the MSI address can be used to store
+ * high bits for the Destination ID. This expands the Destination ID
+ * field from 8 to 15 bits, allowing to target APIC IDs up 32768.
+ */
+#define XEN_HVM_CPUID_EXT_DEST_ID      (1u << 5)
+/*
+ * Per-vCPU event channel upcalls work correctly with physical IRQs
+ * bound to event channels.
+ */
+#define XEN_HVM_CPUID_UPCALL_VECTOR    (1u << 6)
 
 /*
  * Leaf 6 (0x40000x05)
diff --git a/include/hw/xen/interface/arch-x86/xen-x86_32.h b/include/hw/xen/interface/arch-x86/xen-x86_32.h
index 19d7388633..139438e835 100644
--- a/include/hw/xen/interface/arch-x86/xen-x86_32.h
+++ b/include/hw/xen/interface/arch-x86/xen-x86_32.h
@@ -1,26 +1,9 @@
+/* SPDX-License-Identifier: MIT */
 /******************************************************************************
  * xen-x86_32.h
  *
  * Guest OS interface to x86 32-bit Xen.
  *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- *
  * Copyright (c) 2004-2007, K A Fraser
  */
 
diff --git a/include/hw/xen/interface/arch-x86/xen-x86_64.h b/include/hw/xen/interface/arch-x86/xen-x86_64.h
index 40aed14366..5d9035ed22 100644
--- a/include/hw/xen/interface/arch-x86/xen-x86_64.h
+++ b/include/hw/xen/interface/arch-x86/xen-x86_64.h
@@ -1,26 +1,9 @@
+/* SPDX-License-Identifier: MIT */
 /******************************************************************************
  * xen-x86_64.h
  *
  * Guest OS interface to x86 64-bit Xen.
  *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- *
  * Copyright (c) 2004-2006, K A Fraser
  */
 
diff --git a/include/hw/xen/interface/arch-x86/xen.h b/include/hw/xen/interface/arch-x86/xen.h
index 7acd94c8eb..c0f4551247 100644
--- a/include/hw/xen/interface/arch-x86/xen.h
+++ b/include/hw/xen/interface/arch-x86/xen.h
@@ -1,26 +1,9 @@
+/* SPDX-License-Identifier: MIT */
 /******************************************************************************
  * arch-x86/xen.h
  *
  * Guest OS interface to x86 Xen.
  *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- *
  * Copyright (c) 2004-2006, K A Fraser
  */
 
@@ -320,12 +303,9 @@ struct xen_arch_domainconfig {
     uint32_t misc_flags;
 };
 
-/* Location of online VCPU bitmap. */
-#define XEN_ACPI_CPU_MAP             0xaf00
-#define XEN_ACPI_CPU_MAP_LEN         ((HVM_MAX_VCPUS + 7) / 8)
+/* Max  XEN_X86_* constant. Used for ABI checking. */
+#define XEN_X86_MISC_FLAGS_MAX XEN_X86_MSR_RELAXED
 
-/* GPE0 bit set during CPU hotplug */
-#define XEN_ACPI_GPE0_CPUHP_BIT      2
 #endif
 
 /*
diff --git a/include/hw/xen/interface/event_channel.h b/include/hw/xen/interface/event_channel.h
index 73c9f38ce1..0d91a1c4af 100644
--- a/include/hw/xen/interface/event_channel.h
+++ b/include/hw/xen/interface/event_channel.h
@@ -1,26 +1,9 @@
+/* SPDX-License-Identifier: MIT */
 /******************************************************************************
  * event_channel.h
  *
  * Event channels between domains.
  *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- *
  * Copyright (c) 2003-2004, K A Fraser.
  */
 
diff --git a/include/hw/xen/interface/features.h b/include/hw/xen/interface/features.h
index 9ee2f760ef..d2a9175aae 100644
--- a/include/hw/xen/interface/features.h
+++ b/include/hw/xen/interface/features.h
@@ -1,26 +1,9 @@
+/* SPDX-License-Identifier: MIT */
 /******************************************************************************
  * features.h
  *
  * Feature flags, reported by XENVER_get_features.
  *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- *
  * Copyright (c) 2006, Keir Fraser <keir@xensource.com>
  */
 
diff --git a/include/hw/xen/interface/grant_table.h b/include/hw/xen/interface/grant_table.h
index 7934d7b718..1dfa17a6d0 100644
--- a/include/hw/xen/interface/grant_table.h
+++ b/include/hw/xen/interface/grant_table.h
@@ -1,27 +1,10 @@
+/* SPDX-License-Identifier: MIT */
 /******************************************************************************
  * grant_table.h
  *
  * Interface for granting foreign access to page frames, and receiving
  * page-ownership transfers.
  *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- *
  * Copyright (c) 2004, K A Fraser
  */
 
diff --git a/include/hw/xen/interface/hvm/hvm_op.h b/include/hw/xen/interface/hvm/hvm_op.h
index 870ec52060..e22adf0319 100644
--- a/include/hw/xen/interface/hvm/hvm_op.h
+++ b/include/hw/xen/interface/hvm/hvm_op.h
@@ -1,22 +1,5 @@
+/* SPDX-License-Identifier: MIT */
 /*
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- *
  * Copyright (c) 2007, Keir Fraser
  */
 
diff --git a/include/hw/xen/interface/hvm/params.h b/include/hw/xen/interface/hvm/params.h
index c9d6e70d7b..a22b4ed45d 100644
--- a/include/hw/xen/interface/hvm/params.h
+++ b/include/hw/xen/interface/hvm/params.h
@@ -1,22 +1,5 @@
+/* SPDX-License-Identifier: MIT */
 /*
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- *
  * Copyright (c) 2007, Keir Fraser
  */
 
diff --git a/include/hw/xen/interface/io/blkif.h b/include/hw/xen/interface/io/blkif.h
index 4cdba79aba..22f1eef0c0 100644
--- a/include/hw/xen/interface/io/blkif.h
+++ b/include/hw/xen/interface/io/blkif.h
@@ -1,26 +1,9 @@
+/* SPDX-License-Identifier: MIT */
 /******************************************************************************
  * blkif.h
  *
  * Unified block-device I/O interface for Xen guest OSes.
  *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- *
  * Copyright (c) 2003-2004, Keir Fraser
  * Copyright (c) 2012, Spectra Logic Corporation
  */
@@ -363,6 +346,14 @@
  *      that the frontend requires that the logical block size is 512 as it
  *      is hardcoded (which is the case in some frontend implementations).
  *
+ * trusted
+ *      Values:         0/1 (boolean)
+ *      Default value:  1
+ *
+ *      A value of "0" indicates that the frontend should not trust the
+ *      backend, and should deploy whatever measures available to protect from
+ *      a malicious backend on the other end.
+ *
  *------------------------- Virtual Device Properties -------------------------
  *
  * device-type
diff --git a/include/hw/xen/interface/io/console.h b/include/hw/xen/interface/io/console.h
index 4811f47220..4509b4b689 100644
--- a/include/hw/xen/interface/io/console.h
+++ b/include/hw/xen/interface/io/console.h
@@ -1,26 +1,9 @@
+/* SPDX-License-Identifier: MIT */
 /******************************************************************************
  * console.h
  *
  * Console I/O interface for Xen guest OSes.
  *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- *
  * Copyright (c) 2005, Keir Fraser
  */
 
diff --git a/include/hw/xen/interface/io/fbif.h b/include/hw/xen/interface/io/fbif.h
index cc25aab32e..93c73195d8 100644
--- a/include/hw/xen/interface/io/fbif.h
+++ b/include/hw/xen/interface/io/fbif.h
@@ -1,24 +1,7 @@
+/* SPDX-License-Identifier: MIT */
 /*
  * fbif.h -- Xen virtual frame buffer device
  *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- *
  * Copyright (C) 2005 Anthony Liguori <aliguori@us.ibm.com>
  * Copyright (C) 2006 Red Hat, Inc., Markus Armbruster <armbru@redhat.com>
  */
diff --git a/include/hw/xen/interface/io/kbdif.h b/include/hw/xen/interface/io/kbdif.h
index a6b01c52c7..4bde6b3821 100644
--- a/include/hw/xen/interface/io/kbdif.h
+++ b/include/hw/xen/interface/io/kbdif.h
@@ -1,24 +1,7 @@
+/* SPDX-License-Identifier: MIT */
 /*
  * kbdif.h -- Xen virtual keyboard/mouse
  *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- *
  * Copyright (C) 2005 Anthony Liguori <aliguori@us.ibm.com>
  * Copyright (C) 2006 Red Hat, Inc., Markus Armbruster <armbru@redhat.com>
  */
diff --git a/include/hw/xen/interface/io/netif.h b/include/hw/xen/interface/io/netif.h
index 00dd258712..c13b85061d 100644
--- a/include/hw/xen/interface/io/netif.h
+++ b/include/hw/xen/interface/io/netif.h
@@ -1,26 +1,9 @@
+/* SPDX-License-Identifier: MIT */
 /******************************************************************************
  * netif.h
  *
  * Unified network-device I/O interface for Xen guest OSes.
  *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- *
  * Copyright (c) 2003-2004, Keir Fraser
  */
 
@@ -160,6 +143,12 @@
  * be applied if it is set.
  */
 
+/*
+ * The setting of "trusted" node to "0" in the frontend path signals that the
+ * frontend should not trust the backend, and should deploy whatever measures
+ * available to protect from a malicious backend on the other end.
+ */
+
 /*
  * Control ring
  * ============
diff --git a/include/hw/xen/interface/io/protocols.h b/include/hw/xen/interface/io/protocols.h
index 52b4de0f81..7815e1ff0f 100644
--- a/include/hw/xen/interface/io/protocols.h
+++ b/include/hw/xen/interface/io/protocols.h
@@ -1,24 +1,7 @@
+/* SPDX-License-Identifier: MIT */
 /******************************************************************************
  * protocols.h
  *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- *
  * Copyright (c) 2008, Keir Fraser
  */
 
diff --git a/include/hw/xen/interface/io/ring.h b/include/hw/xen/interface/io/ring.h
index c486c457e0..025939278b 100644
--- a/include/hw/xen/interface/io/ring.h
+++ b/include/hw/xen/interface/io/ring.h
@@ -1,26 +1,9 @@
+/* SPDX-License-Identifier: MIT */
 /******************************************************************************
  * ring.h
  *
  * Shared producer-consumer ring macros.
  *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- *
  * Tim Deegan and Andrew Warfield November 2004.
  */
 
@@ -95,9 +78,8 @@ typedef unsigned int RING_IDX;
  * of the shared memory area (PAGE_SIZE, for instance). To initialise
  * the front half:
  *
- *     mytag_front_ring_t front_ring;
- *     SHARED_RING_INIT((mytag_sring_t *)shared_page);
- *     FRONT_RING_INIT(&front_ring, (mytag_sring_t *)shared_page, PAGE_SIZE);
+ *     mytag_front_ring_t ring;
+ *     XEN_FRONT_RING_INIT(&ring, (mytag_sring_t *)shared_page, PAGE_SIZE);
  *
  * Initializing the back follows similarly (note that only the front
  * initializes the shared ring):
@@ -184,6 +166,11 @@ typedef struct __name##_back_ring __name##_back_ring_t
 
 #define FRONT_RING_INIT(_r, _s, __size) FRONT_RING_ATTACH(_r, _s, 0, __size)
 
+#define XEN_FRONT_RING_INIT(r, s, size) do {                            \
+    SHARED_RING_INIT(s);                                                \
+    FRONT_RING_INIT(r, s, size);                                        \
+} while (0)
+
 #define BACK_RING_ATTACH(_r, _s, _i, __size) do {                       \
     (_r)->rsp_prod_pvt = (_i);                                          \
     (_r)->req_cons = (_i);                                              \
@@ -208,11 +195,11 @@ typedef struct __name##_back_ring __name##_back_ring_t
     (RING_FREE_REQUESTS(_r) == 0)
 
 /* Test if there are outstanding messages to be processed on a ring. */
-#define RING_HAS_UNCONSUMED_RESPONSES(_r)                               \
+#define XEN_RING_NR_UNCONSUMED_RESPONSES(_r)                            \
     ((_r)->sring->rsp_prod - (_r)->rsp_cons)
 
 #ifdef __GNUC__
-#define RING_HAS_UNCONSUMED_REQUESTS(_r) ({                             \
+#define XEN_RING_NR_UNCONSUMED_REQUESTS(_r) ({                          \
     unsigned int req = (_r)->sring->req_prod - (_r)->req_cons;          \
     unsigned int rsp = RING_SIZE(_r) -                                  \
         ((_r)->req_cons - (_r)->rsp_prod_pvt);                          \
@@ -220,13 +207,27 @@ typedef struct __name##_back_ring __name##_back_ring_t
 })
 #else
 /* Same as above, but without the nice GCC ({ ... }) syntax. */
-#define RING_HAS_UNCONSUMED_REQUESTS(_r)                                \
+#define XEN_RING_NR_UNCONSUMED_REQUESTS(_r)                             \
     ((((_r)->sring->req_prod - (_r)->req_cons) <                        \
       (RING_SIZE(_r) - ((_r)->req_cons - (_r)->rsp_prod_pvt))) ?        \
      ((_r)->sring->req_prod - (_r)->req_cons) :                         \
      (RING_SIZE(_r) - ((_r)->req_cons - (_r)->rsp_prod_pvt)))
 #endif
 
+#ifdef XEN_RING_HAS_UNCONSUMED_IS_BOOL
+/*
+ * These variants should only be used in case no caller is abusing them for
+ * obtaining the number of unconsumed responses/requests.
+ */
+#define RING_HAS_UNCONSUMED_RESPONSES(_r) \
+    (!!XEN_RING_NR_UNCONSUMED_RESPONSES(_r))
+#define RING_HAS_UNCONSUMED_REQUESTS(_r)  \
+    (!!XEN_RING_NR_UNCONSUMED_REQUESTS(_r))
+#else
+#define RING_HAS_UNCONSUMED_RESPONSES(_r) XEN_RING_NR_UNCONSUMED_RESPONSES(_r)
+#define RING_HAS_UNCONSUMED_REQUESTS(_r)  XEN_RING_NR_UNCONSUMED_REQUESTS(_r)
+#endif
+
 /* Direct access to individual ring elements, by index. */
 #define RING_GET_REQUEST(_r, _idx)                                      \
     (&((_r)->sring->ring[((_idx) & (RING_SIZE(_r) - 1))].req))
diff --git a/include/hw/xen/interface/io/usbif.h b/include/hw/xen/interface/io/usbif.h
index c0a552e195..875af0dc7c 100644
--- a/include/hw/xen/interface/io/usbif.h
+++ b/include/hw/xen/interface/io/usbif.h
@@ -1,3 +1,4 @@
+/* SPDX-License-Identifier: MIT */
 /*
  * usbif.h
  *
@@ -5,24 +6,6 @@
  *
  * Copyright (C) 2009, FUJITSU LABORATORIES LTD.
  * Author: Noboru Iwamatsu <n_iwamatsu@jp.fujitsu.com>
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
  */
 
 #ifndef __XEN_PUBLIC_IO_USBIF_H__
diff --git a/include/hw/xen/interface/io/xenbus.h b/include/hw/xen/interface/io/xenbus.h
index 927f9db552..9cd0cd7c67 100644
--- a/include/hw/xen/interface/io/xenbus.h
+++ b/include/hw/xen/interface/io/xenbus.h
@@ -1,26 +1,9 @@
+/* SPDX-License-Identifier: MIT */
 /*****************************************************************************
  * xenbus.h
  *
  * Xenbus protocol details.
  *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- *
  * Copyright (C) 2005 XenSource Ltd.
  */
 
diff --git a/include/hw/xen/interface/io/xs_wire.h b/include/hw/xen/interface/io/xs_wire.h
index 4dd6632669..04e6849feb 100644
--- a/include/hw/xen/interface/io/xs_wire.h
+++ b/include/hw/xen/interface/io/xs_wire.h
@@ -1,25 +1,8 @@
+/* SPDX-License-Identifier: MIT */
 /*
  * Details of the "wire" protocol between Xen Store Daemon and client
  * library or guest kernel.
  *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- *
  * Copyright (C) 2005 Rusty Russell IBM Corporation
  */
 
@@ -71,11 +54,12 @@ struct xsd_errors
 #ifdef EINVAL
 #define XSD_ERROR(x) { x, #x }
 /* LINTED: static unused */
-static struct xsd_errors xsd_errors[]
+static const struct xsd_errors xsd_errors[]
 #if defined(__GNUC__)
 __attribute__((unused))
 #endif
     = {
+    /* /!\ New errors should be added at the end of the array. */
     XSD_ERROR(EINVAL),
     XSD_ERROR(EACCES),
     XSD_ERROR(EEXIST),
@@ -90,7 +74,8 @@ __attribute__((unused))
     XSD_ERROR(EBUSY),
     XSD_ERROR(EAGAIN),
     XSD_ERROR(EISCONN),
-    XSD_ERROR(E2BIG)
+    XSD_ERROR(E2BIG),
+    XSD_ERROR(EPERM),
 };
 #endif
 
@@ -124,6 +109,7 @@ struct xenstore_domain_interface {
     XENSTORE_RING_IDX rsp_cons, rsp_prod;
     uint32_t server_features; /* Bitmap of features supported by the server */
     uint32_t connection;
+    uint32_t error;
 };
 
 /* Violating this is very bad.  See docs/misc/xenstore.txt. */
@@ -135,10 +121,18 @@ struct xenstore_domain_interface {
 
 /* The ability to reconnect a ring */
 #define XENSTORE_SERVER_FEATURE_RECONNECTION 1
+/* The presence of the "error" field in the ring page */
+#define XENSTORE_SERVER_FEATURE_ERROR        2
 
 /* Valid values for the connection field */
 #define XENSTORE_CONNECTED 0 /* the steady-state */
-#define XENSTORE_RECONNECT 1 /* guest has initiated a reconnect */
+#define XENSTORE_RECONNECT 1 /* reconnect in progress */
+
+/* Valid values for the error field */
+#define XENSTORE_ERROR_NONE    0 /* No error */
+#define XENSTORE_ERROR_COMM    1 /* Communication problem */
+#define XENSTORE_ERROR_RINGIDX 2 /* Invalid ring index */
+#define XENSTORE_ERROR_PROTO   3 /* Protocol violation (payload too long) */
 
 #endif /* _XS_WIRE_H */
 
diff --git a/include/hw/xen/interface/memory.h b/include/hw/xen/interface/memory.h
index 383a9468c3..29cf5c8239 100644
--- a/include/hw/xen/interface/memory.h
+++ b/include/hw/xen/interface/memory.h
@@ -1,26 +1,9 @@
+/* SPDX-License-Identifier: MIT */
 /******************************************************************************
  * memory.h
  *
  * Memory reservation and information.
  *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- *
  * Copyright (c) 2005, Keir Fraser <keir@xensource.com>
  */
 
@@ -541,12 +524,14 @@ struct xen_mem_sharing_op {
                 uint32_t gref;     /* IN: gref to debug         */
             } u;
         } debug;
-        struct mem_sharing_op_fork {      /* OP_FORK */
+        struct mem_sharing_op_fork {      /* OP_FORK{,_RESET} */
             domid_t parent_domain;        /* IN: parent's domain id */
 /* Only makes sense for short-lived forks */
 #define XENMEM_FORK_WITH_IOMMU_ALLOWED (1u << 0)
 /* Only makes sense for short-lived forks */
 #define XENMEM_FORK_BLOCK_INTERRUPTS   (1u << 1)
+#define XENMEM_FORK_RESET_STATE        (1u << 2)
+#define XENMEM_FORK_RESET_MEMORY       (1u << 3)
             uint16_t flags;               /* IN: optional settings */
             uint32_t pad;                 /* Must be set to 0 */
         } fork;
@@ -662,6 +647,13 @@ struct xen_mem_acquire_resource {
      * two calls.
      */
     uint32_t nr_frames;
+    /*
+     * Padding field, must be zero on input.
+     * In a previous version this was an output field with the lowest bit
+     * named XENMEM_rsrc_acq_caller_owned. Future versions of this interface
+     * will not reuse this bit as an output with the field being zero on
+     * input.
+     */
     uint32_t pad;
     /*
      * IN - the index of the initial frame to be mapped. This parameter
diff --git a/include/hw/xen/interface/physdev.h b/include/hw/xen/interface/physdev.h
index d271766ad0..f0c0d4727c 100644
--- a/include/hw/xen/interface/physdev.h
+++ b/include/hw/xen/interface/physdev.h
@@ -1,22 +1,5 @@
+/* SPDX-License-Identifier: MIT */
 /*
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- *
  * Copyright (c) 2006, Keir Fraser
  */
 
@@ -211,8 +194,8 @@ struct physdev_manage_pci_ext {
     /* IN */
     uint8_t bus;
     uint8_t devfn;
-    unsigned is_extfn;
-    unsigned is_virtfn;
+    uint32_t is_extfn;
+    uint32_t is_virtfn;
     struct {
         uint8_t bus;
         uint8_t devfn;
diff --git a/include/hw/xen/interface/sched.h b/include/hw/xen/interface/sched.h
index 811bd87c82..b4362c6a1d 100644
--- a/include/hw/xen/interface/sched.h
+++ b/include/hw/xen/interface/sched.h
@@ -1,26 +1,9 @@
+/* SPDX-License-Identifier: MIT */
 /******************************************************************************
  * sched.h
  *
  * Scheduler state interactions
  *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- *
  * Copyright (c) 2005, Keir Fraser <keir@xensource.com>
  */
 
diff --git a/include/hw/xen/interface/trace.h b/include/hw/xen/interface/trace.h
index d5fa4aea8d..62a179971d 100644
--- a/include/hw/xen/interface/trace.h
+++ b/include/hw/xen/interface/trace.h
@@ -1,24 +1,7 @@
+/* SPDX-License-Identifier: MIT */
 /******************************************************************************
  * include/public/trace.h
  *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- *
  * Mark Williamson, (C) 2004 Intel Research Cambridge
  * Copyright (C) 2005 Bin Ren
  */
diff --git a/include/hw/xen/interface/vcpu.h b/include/hw/xen/interface/vcpu.h
index 3623af932f..81a3b3a743 100644
--- a/include/hw/xen/interface/vcpu.h
+++ b/include/hw/xen/interface/vcpu.h
@@ -1,26 +1,9 @@
+/* SPDX-License-Identifier: MIT */
 /******************************************************************************
  * vcpu.h
  *
  * VCPU initialisation, query, and hotplug.
  *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- *
  * Copyright (c) 2005, Keir Fraser <keir@xensource.com>
  */
 
diff --git a/include/hw/xen/interface/version.h b/include/hw/xen/interface/version.h
index 17a81e23cd..9c78b4f3b6 100644
--- a/include/hw/xen/interface/version.h
+++ b/include/hw/xen/interface/version.h
@@ -1,26 +1,9 @@
+/* SPDX-License-Identifier: MIT */
 /******************************************************************************
  * version.h
  *
  * Xen version, type, and compile information.
  *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- *
  * Copyright (c) 2005, Nguyen Anh Quynh <aquynh@gmail.com>
  * Copyright (c) 2005, Keir Fraser <keir@xensource.com>
  */
diff --git a/include/hw/xen/interface/xen-compat.h b/include/hw/xen/interface/xen-compat.h
index e1c027a95c..97fe698498 100644
--- a/include/hw/xen/interface/xen-compat.h
+++ b/include/hw/xen/interface/xen-compat.h
@@ -1,26 +1,9 @@
+/* SPDX-License-Identifier: MIT */
 /******************************************************************************
  * xen-compat.h
  *
  * Guest OS interface to Xen.  Compatibility layer.
  *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- *
  * Copyright (c) 2006, Christian Limpach
  */
 
diff --git a/include/hw/xen/interface/xen.h b/include/hw/xen/interface/xen.h
index e373592c33..920567e006 100644
--- a/include/hw/xen/interface/xen.h
+++ b/include/hw/xen/interface/xen.h
@@ -1,26 +1,9 @@
+/* SPDX-License-Identifier: MIT */
 /******************************************************************************
  * xen.h
  *
  * Guest OS interface to Xen.
  *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- *
  * Copyright (c) 2004, K A Fraser
  */
 
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Mon Oct 16 15:27:36 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 15:27:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617779.960815 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsPV6-0004jN-6L; Mon, 16 Oct 2023 15:27:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617779.960815; Mon, 16 Oct 2023 15: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 1qsPV6-0004jG-2K; Mon, 16 Oct 2023 15:27:24 +0000
Received: by outflank-mailman (input) for mailman id 617779;
 Mon, 16 Oct 2023 15:27: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=BBjo=F6=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qsPV4-0004jA-OA
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 15:27:22 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur04on2073.outbound.protection.outlook.com [40.107.7.73])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 7f599a3b-6c38-11ee-98d4-6d05b1d4d9a1;
 Mon, 16 Oct 2023 17:27:21 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PAXPR04MB8638.eurprd04.prod.outlook.com (2603:10a6:102:21d::14)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.35; Mon, 16 Oct
 2023 15:26:51 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%6]) with mapi id 15.20.6886.034; Mon, 16 Oct 2023
 15:26: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: 7f599a3b-6c38-11ee-98d4-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=SRxERr2jXMhJDDtyw1JIYSsXs2Z8gHpmtKC4uwUZ8LYNgGkjKOVQkRUSBDRWtlJOu5+8dVxs812iz5VIErNekBSXRmXwzT0Z4w970y5LAEAns/5KF+OfiITJG+BDkFK1ubtoKv1ewJBsvhnt8pdmtlgpBvXyKRRfeY3iZNAMYvVRtFYpF3oNGJcrKneuXzsYYgtndpEkBcSZ4GYJzNY0fsNeNVfW67QL0hvgVG3Q4kycr7PaFBplcmWvPh2R3q+Fe8HDWVdCejIYFy2aqo4lSD9ItIWCexDKx0thh8gGcJeP0C96mXcCLO+y5EAgzb49fzVY5hhllCOaFXHCvuXh9Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=YNFF5l0WFjxRRCJamkZRiGvDRuEwmtqhh7uCkOdO294=;
 b=gaQc/ojQBLgRoXTECLF2fjIXkRnt2T14UuVYVp4tkeqln1ft+vrPP/Rz6UXV/H+SlIf/YAua3ftAgbZwGO9NNgKdLJU4bAjhzDxARgUATWz+CDvuUSjAD/1cavhQ03ppP+YkwtQ5g1yLNOGWL6v+KPBWFOVU7tdpedAk0FdM5L9OUDGF57lpRfuv61AwET56dP/RwRLTK9sgGU2lU8K6Ah8cNjR+k3hbWA4uErFNVv5QYmwMlTxhnaYOOrCXxXgUGo0k1i2mc9k138V05wKQsWdzMWvFoc5Be5VgyQILRTBv/gz88vZp+Wt7DVQoqJd/hL10TU7J/Khw4+ti6NTPFw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=YNFF5l0WFjxRRCJamkZRiGvDRuEwmtqhh7uCkOdO294=;
 b=COZ6oes39ac8gJvr+PXLpMRIoAdlkWDJsW3YP/iUpGq+v/PTvZYYqKsrD1LmWuCwk7zjJn2PkUOOAqI3cP2rOGH6eoYi/ALICqFLfklBVdBB99G/azng3vW9YukoIYoX1uKlv2B9Vd2Bc6lK/QFvRcbeBxScPHsFSTz/iwURxcolHaWZXpFdHSa8pvZ4EFByGrK62z8xjOHdrWQHcDR5cy3E0E6S5Nninx/USPz4xNVszXP8VDVFZ02hAmni7rrzu6DWZmLkiVFwB9vfGKbl8Wl/9/3ZVWCyqyjqRa5/t4z7PuRof0lfIXhlNC9m1XAjz3i2YzxFZsLDKv+R2W+Mog==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <d7cd7a02-b960-384e-4af2-f70b425e5ad1@suse.com>
Date: Mon, 16 Oct 2023 17:26: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 v3] xen/mm: 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, 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>,
 Shawn Anastasio <sanastasio@raptorengineering.com>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Henry Wang <henry.wang@arm.com>, xen-devel@lists.xenproject.org
References: <eedcfeb8d1c81527b7e18fcc0eca252577f00035.1696344012.git.federico.serafini@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <eedcfeb8d1c81527b7e18fcc0eca252577f00035.1696344012.git.federico.serafini@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0160.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:b3::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_|PAXPR04MB8638:EE_
X-MS-Office365-Filtering-Correlation-Id: e0a98853-5761-498f-6779-08dbce5c51c8
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	gAQDfRb5R82A3HuMZXLDygv9OauVnA8MxQ5Kerprn+yTUZWdD2petCCkcqeZnfZbXHB+qAqD0lRtqbZywTRnHJHbCse5q7XdM58Boi+b2p/2ciFk1QipBrIeGKW/niX2Fojg+oN3SO+A+s+7I9+UglgLHMS1+syYpEyyDUj6PAP7lmF6BCUWIukeeS/rKU5A9EVxN/TM5qqe9jlaIE2BDi35+cTOGTro7CAvrRxf581x2Y3/3zLujpmUJWoA1LwIt/K5Hi0jG1+Gib129Qm1cwAm9eWYMkSxKT8n0K1QmjHv/ZMRdKwaFLQcR6N3XNiZ+ACqpXUcVXlI7hibsNTBay/VoPb9h+aRjy3p3HEg5mP1+JYonHD5+PftjWQqej25hmLOhpH2q4Cxs6cTzBEtwGY9c0bCJu+ZZqdiBVIzAyBMvZFso0wL4ZcF3WzJns+s2roo4P/z9oHNiVo7eNQLxl/cRtHu0evkGr2OJApU40fmasNjhHVOMVvf39ZsT88c8QtvDrvL+8xtbNt22WFuayS9DPaVm7v+S4Ak0PItGB7HFCuglXqTxat6ZwJ9czVuHPE4sbwHc+O36HGKgESs8HnlsHgZwN3pt4Ab7Pvp1oijsz0cYYQkqkjhLUQf2xxH6iI3u5XC1LyfDF9Jai+GRw==
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)(136003)(39860400002)(376002)(230922051799003)(451199024)(64100799003)(1800799009)(186009)(31686004)(6486002)(36756003)(38100700002)(83380400001)(6512007)(26005)(6506007)(66946007)(66556008)(54906003)(66476007)(6916009)(316002)(478600001)(2616005)(53546011)(2906002)(41300700001)(7416002)(86362001)(31696002)(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?NytHWGU5UXBDeC84bWVZb2c2STF6S0VueDlpL0hMSUxzRXZ6M2FrSjlmNStG?=
 =?utf-8?B?anVTYXdFMWgvczhpaS9sc3QrVjBZVTZMUEJLWTFNbkVrUjQvb0t2ZSt3ekE1?=
 =?utf-8?B?OGtGbWpIc25RZlJEYmttUGxSOE1tM3ZGc1lOTW9CM3pMZGRHQmVSNSttV05B?=
 =?utf-8?B?ME8yQlNhdy9pcU5VZ0syckxyOFVkWUkrekM3ZUNGS1ZaamFtbGFZd3prYmta?=
 =?utf-8?B?V1lHdEM5a3htRkFjSW1mZnVrZ0lHT2lkWGYrMDAwSG1LLytyUE51Q0RWK3JN?=
 =?utf-8?B?UXdXa3I4cUM1Z0s4akRtNXRaNE5PY2FhQXVtSURFZWpOS0RmYVlYY2RZcGta?=
 =?utf-8?B?QWhpcExoaWFxQWxMcC8vdnphNklIWUxDZVNCSkR3RThBRXBQNVhyUHNXdER3?=
 =?utf-8?B?UDRWbGQrTjRxcW1MdXB1RVNUaUQxTnZ5alo5YnE3L3crbldQNFNzNWZNY1E0?=
 =?utf-8?B?Q3RFNm16ak9wTUJQcUh6UStTMnlaZitoSkZ3M2twR3VQNkp6WVhiRlpDcFQv?=
 =?utf-8?B?Y1VlQW1jT0xYRDV6WnJJVDdnZ0NHeHFpYmlqV29WdC8yYlRVUWVOMDU1c1pa?=
 =?utf-8?B?TElqaTRRS3YyWS9aMzZaVktIM3l3cHZyemRqNWh3RnVMeVhNcDVjYytNN2o2?=
 =?utf-8?B?WTUyKzNrQVNxMGp1ZGNZT0IrOUtpc2NGTWxyNkpYUEg2UjZOOTI5WTZ6SU41?=
 =?utf-8?B?a3M2MjgyQ1d6akhJMTFSSjNGNzBrL0pGWEtiWTJGc3p5OEVKaXl1SWFGdnNN?=
 =?utf-8?B?Ukk3SjNNN1YwVVRwazRKOTVQV2NmbUhRdHFIREJRYkNxQklCTXU4Tlo2STNS?=
 =?utf-8?B?bG9BcFlNc2dqVGF0b29tdi91SGEyUGdkdzFVRFZCYTRuSzlWRVNuWGo1YVZG?=
 =?utf-8?B?UFIzWUV0b1htZ1JmS1YxbUoyYmh2c2N0Q1FOWDVOVFNSVVVXMGRzUVZYSEFC?=
 =?utf-8?B?cTVXUW5KMWQyeHRJM0d6cmkvTGpBeS9GT3Zib201Q2NhUmlneXlTM09ubHBZ?=
 =?utf-8?B?SXFHN0dNemduSVFSc3pOZ1dDc1JvWnl3WVpaOGw0YTMzdXV2V0NxblM2YVl6?=
 =?utf-8?B?Y0F4bjRDOFU2VUxBMHVpTU5lcDJBTENHOWVxTUZkTmVUWEY0eFozZW8ySEd6?=
 =?utf-8?B?VE1jQ0pjUU51dWN4VjM0S2pwbTFsSjRiQTI3dUVrTUlYZ2x0d25MdWJGNzJp?=
 =?utf-8?B?SE5lNTArOUMxVTE1YkZmSnJRRkFob2xwZU5aUGVtZXdFc21ZWjUrVnN3YUh3?=
 =?utf-8?B?LzN6ODlZcldrMWhBRGtqS1Ewdnl0R1oycHpkSVhUbHkranZSSm5GdFFuVjBH?=
 =?utf-8?B?ejVieWVXeUVOYjVNNWxsZ3Y1cFVLTTRFdVdTck0xaEgrbjJBekN0WjVnT1Bz?=
 =?utf-8?B?NnNOUXFUbGgyeGx3U0owUnBPemtwRVBQYjdscyt6ZUNtVTZ3dThhSUZCYTlV?=
 =?utf-8?B?YkpiVmpXWkxQaFlyTG5vQmhxL253am9UWk9zQVRXOTNlY1NyUXdkZlU5VSth?=
 =?utf-8?B?Q25sS1AvREhGMXNEbFhMajlvVUtCSE5HTm42bUhtZVUzZWc5OE5UU3BpY1Jk?=
 =?utf-8?B?bGtMSGFCdk1KYkFQcFZNKy9naFZFeGNvcXhKQTRZN3hVZUY5VTM2ZnJGR1hW?=
 =?utf-8?B?dHl4NlBONTZ5RGcveis1QTk3NlkxL05zSWhRbGZ4WmE5Z1pBeTRUeFN0Q3Qv?=
 =?utf-8?B?TkZ3cXpkQWk1blpzU3Z2MjFWQitTNDVzTC94aElHc1JXcytvSU9UNzZCY1Fr?=
 =?utf-8?B?RTdaM05WTXlZZHp1MGtJcURFVWU2ZlpWZGozK3dnUk4wdnZqZW9qOWlCM1dx?=
 =?utf-8?B?aEpnNG5nN0FiNzVqWW9henZmWGNyRHN5SUpaU0JPb0hkU0ZScWtDTW5yVVJm?=
 =?utf-8?B?Y3ZKcXFydnNVU1Y5VExQQjR0T2w5NzVCL0hDcngrbDQvZkJmMXBFZzUzOVhF?=
 =?utf-8?B?emh5WGZPMGkwWWMvdGpXbWF1TlB5YnNKYkZsc3d3TjI3REdSYmVNOWR6K044?=
 =?utf-8?B?SEFhNnA0eXpTcEtGdWd1OUNpWGJSdlVMek9lS2M3WFBCN0tuelYzS0gvVWVa?=
 =?utf-8?B?RVhVUnd6SlluS0FCd2lOUlhsNW9xK0EySzJVN0llSEFGUGErMXZPWjljWmhJ?=
 =?utf-8?Q?Cakcpq6c4fJ64Dgi1AY2y2Tgi?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: e0a98853-5761-498f-6779-08dbce5c51c8
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Oct 2023 15:26:50.9572
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: m2UGeZ3oHcZJNzrRiBgnOHtY5d/U0G61/uDAJ6eOW9cY/hp7rTuRvdlMzOX9Ek3XUecFK5M/EeqhZG2E99B23Q==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB8638

On 03.10.2023 17:24, Federico Serafini wrote:
> --- a/xen/arch/x86/mm.c
> +++ b/xen/arch/x86/mm.c
> @@ -5901,17 +5901,17 @@ int destroy_xen_mappings(unsigned long s, unsigned long e)
>   * a problem.
>   */
>  void init_or_livepatch modify_xen_mappings_lite(
> -    unsigned long s, unsigned long e, unsigned int _nf)
> +    unsigned long s, unsigned long e, unsigned int nf)
>  {
> -    unsigned long v = s, fm, nf;
> +    unsigned long v = s, fm, flags;

While it looks correct, I consider this an unacceptably dangerous
change: What if by the time this is to be committed some new use of
the local "nf" appears, without resulting in fuzz while applying the
patch? Imo this needs doing in two steps: First nf -> flags, then
_nf -> nf.

Furthermore since you alter the local variable, is there any reason
not to also change it to be "unsigned int", matching the function
argument it's set from?

Yet then - can't we just delete "nf" and rename "_nf" to "nf"? The
function parameter is only used in

    nf = put_pte_flags(_nf & FLAGS_MASK);

Jan


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 15:31:18 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 15:31:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617790.960825 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsPYr-0007rB-KW; Mon, 16 Oct 2023 15:31:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617790.960825; Mon, 16 Oct 2023 15:31: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 1qsPYr-0007r4-Hv; Mon, 16 Oct 2023 15:31:17 +0000
Received: by outflank-mailman (input) for mailman id 617790;
 Mon, 16 Oct 2023 15:31: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 1qsPYq-0007qy-IT
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 15:31: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 1qsPYp-0005uQ-5D; Mon, 16 Oct 2023 15:31:15 +0000
Received: from 54-240-197-226.amazon.com ([54.240.197.226]
 helo=[192.168.9.197]) by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qsPYo-0004dK-Rh; Mon, 16 Oct 2023 15: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>
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=DzVnWNy4+9VGj7gl9nBMGi+gba97NgE8YNh8od6ZdGk=; b=hpp3aItmnaNYfjv+UGCMolJSc/
	TVAchJEilWswD7+Ygz/EZRzZRoreRTZhcNZjtXL0k+8mkacyFFgZHIZuwgG7N6TNFNcZyup7zQtDP
	DgN+9fLD0br1SThXmUaNSQ66eKx9wWXPPMMQ3peIZ9lAVLKB4RJbFYKfaKVccL6V7kA8=;
Message-ID: <990b21a3-f8c7-4d02-a8ac-63d31794a76d@xen.org>
Date: Mon, 16 Oct 2023 16:31:12 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v4 2/2] xen/arm: Enlarge identity map space to 10TB
Content-Language: en-GB
To: Bertrand Marquis <Bertrand.Marquis@arm.com>
Cc: Alexey Klimov <alexey.klimov@linaro.org>,
 Luca Fancellu <Luca.Fancellu@arm.com>, Michal Orzel <michal.orzel@amd.com>,
 "leo.yan@linaro.org" <leo.yan@linaro.org>,
 Xen-devel <xen-devel@lists.xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Rahul Singh <Rahul.Singh@arm.com>, Henry Wang <Henry.Wang@arm.com>
References: <20231013122658.1270506-1-leo.yan@linaro.org>
 <20231013122658.1270506-3-leo.yan@linaro.org>
 <169101f8-0475-45b1-b2c2-60dadd88d3f0@amd.com>
 <5a5e960b-e6fd-4617-b33a-10cf07f5bb52@xen.org>
 <8BCB97B4-CBDD-43D9-B0F8-7F637B8BE559@arm.com>
 <4B2BD200-5D3E-49D5-BF13-65B769AD4B90@arm.com>
 <CANgGJDqHu0CB=zzZqda18giLYDkL3My+gT592GLO-b9HsF2A4g@mail.gmail.com>
 <d3952200-9edb-4de0-94e3-c00c571a10b9@xen.org>
 <794B0D71-70A7-4546-98E0-EC01573E0D89@arm.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <794B0D71-70A7-4546-98E0-EC01573E0D89@arm.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit



On 16/10/2023 16:07, Bertrand Marquis wrote:
> Hi,
> 
>> On 16 Oct 2023, at 16:46, Julien Grall <julien@xen.org> wrote:
>>
>> CC Henry
>>
>> Hi Alexey,
>>
>> On 16/10/2023 15:24, Alexey Klimov wrote:
>>> On Mon, 16 Oct 2023 at 15:13, Luca Fancellu <Luca.Fancellu@arm.com> wrote:
>>>>
>>>>
>>>>
>>>>> On 16 Oct 2023, at 15:00, Bertrand Marquis <Bertrand.Marquis@arm.com> wrote:
>>>>>
>>>>> Hi
>>>>>
>>>>> +Luca and Rahul
>>>>>
>>>>>> On 16 Oct 2023, at 15:54, Julien Grall <julien@xen.org> wrote:
>>>>>>
>>>>>>
>>>>>>
>>>>>> On 16/10/2023 09:44, Michal Orzel wrote:
>>>>>>> Hi,
>>>>>>
>>>>>> Hi,
>>>>>>
>>>>>>> On 13/10/2023 14:26, 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 10TB, allowing module loading
>>>>>>>> within the range of [0x0 .. 0x000009ff_ffff_ffff].
>>>>>>>>
>>>>>>>> Fixes: 1c78d76b67 ("xen/arm64: mm: Introduce helpers to prepare/enable/disable")
>>>>>>> I don't think a fixes tag applies here given that 2TB was just a number we believed is enough
>>>>>>> and all of this is platform dependent.
>>>>>>> This can be dropped on commit if committer agrees
>>>>>> Xen may have booted on that platform before hand. So this would be considered a regression and therefore a tag would be warrant.
>>>>>>
>>>>>> AFAICT, the commit is only present on the upcoming 4.18. So the question is whether Xen 4.17 booted out-of-the-box on ADLink? If the answer is yes, then we need to add a Fixes tag. But the correct one would be
>>>>>>
>>>>>
>>>>> @Rahul or Luca: could you give an answer here ?
>>>>> I know you used Xen on an AVA platform but was it booting out of the box ?
>>>>
>>>> I can’t say for Xen 4.17, but our nightly job has run successfully on AVA for the commit 730406ab81094115d9fb5ca00ba8d53cec1279b3
>>>> (docs/misra: add deviations.rst to document additional deviations.)
>>>>
>>>> We are not applying any patch for it to run on AVA.
>>> Most likely it is because your UEFI/BIOS firmware is 2.x, for instance
>>> 2.04.100.07.
>>> This fix if for AVA machine with older UEFI firmware 1.07.300.03.
>>
>> OOI, why not updating your firmware? I was expecting that it would also contain other critical fixes.
>>
>> With this in mind, I am now more in two mind to ask to merge this patch in Xen 4.18. On one hand, I understand it will help to boot on AVA machine with an older firmware. But on the other hand this is changing the memory layout quite late in the release. The risk seems limited because Xen is not loaded at the top of the virtual address space (there is the directmap afterwards).
>>
>> Henry (as the release manager) and others, any opinions?
> 
> With the new information, I think it should be stated that it is fixing an issue on AVA platforms using an old firmware and platforms with and up-to-date firmware are not impacted.
> It is an important information to keep in mind that this is not a fix to be backported for example (and for me the fixes tag should not be kept).

IMHO, the fixes tag should not be based solely on the AVA platform. It 
should be based on whether this could sensibly affect others. Right now, 
there is nothing that would indicate either way.

And therefore a Fixes tag is sensible. This doesn't mean I would want to 
backport it right now (note that only 4.18 is affected). But this could 
change in the future if we get another report (post-4.18) on a platform 
where there are no other workaround.

Stefano any opinions?

> 
> On whether or not it should go in the release, I am not quite sure that making a change in the layout at that stage is a good idea unless it is fixing a critical issue (which is not the case here).
> So i would vote no but not go against if someone argue to have it in.

I agree with your statement with the information we have today. But it 
could become a critical issue if another platform is hit by the same 
issue and have no other workaround.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 15:33:47 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 15:33:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617795.960835 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsPbD-0000Mj-10; Mon, 16 Oct 2023 15:33:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617795.960835; Mon, 16 Oct 2023 15:33: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 1qsPbC-0000Mc-UJ; Mon, 16 Oct 2023 15:33:42 +0000
Received: by outflank-mailman (input) for mailman id 617795;
 Mon, 16 Oct 2023 15:33: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=BBjo=F6=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qsPbB-0000MW-QX
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 15:33:41 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com
 (mail-db3eur04on060c.outbound.protection.outlook.com
 [2a01:111:f400:fe0c::60c])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 61d76008-6c39-11ee-98d4-6d05b1d4d9a1;
 Mon, 16 Oct 2023 17:33:41 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DB9PR04MB8313.eurprd04.prod.outlook.com (2603:10a6:10:241::14)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.35; Mon, 16 Oct
 2023 15:33:39 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%6]) with mapi id 15.20.6886.034; Mon, 16 Oct 2023
 15:33: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: 61d76008-6c39-11ee-98d4-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=i9dHEMf131qX5IU4BsqCG4w7WCyJ9Xo400s52MwHu1IwsSFIlNpavUsM52eQD95ih5jwzV+vaoX7PIw4BnH1BuENzSqMyQUGZxRwzRkQVksG1aJ8OvSki/k+RmEae3nCpa+X4J/140k8VoRuAhZVH4j0dha/5Rb8reYe1I3kZIy5m6e/DpPSe5CnyjEqJzZmTq8iGQI2HhiSD/7PZHtpzMlwmvsRQwBIPGNbxvd6O5czgyzDJC9z6ijHC82qikuiKh/S5IwYHg4D37tub+0Dl+zEE0+WJztm+H5++vK64epZguUPdCQKbMhz5EjHGJfoX6VuSsyna6T2RKvxkm+PbA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=JBokwC2mnfdRoh97JfouDhPZyzLPNML0HpprPGECk6E=;
 b=bFGiE7VAvEepy8PhT1YL5SDtYdKCWVmUDzdo+A9IzR0QJbjiNQJ+8S1mx1Iq9SoJneKoHUA8hJY08fPNfQBNS5ow7BW2aZqD5C65JjJJPWurZk4jEaTy2WdMSvQHU43cj5wD0/GBNltWETgNZIgeXLo6PMoM4nvLpHK2wNu4Hrxjv7AwVs+TGOYLhEYrOkhKOIb7AoZD7rSteDJURRyVTXMNCCElfyNYfgjM6HDQrEx+v14ksQ7E4RtASD0wdVb6BxR3DsEROH+sBNr1dDwjr4H7MJ0+M3Alep1X4G1/3+1IQQq7lLzoxdP8wFWQPi55Nt6iWWkFTtO8FQ3yL0utmQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=JBokwC2mnfdRoh97JfouDhPZyzLPNML0HpprPGECk6E=;
 b=pUG2keL26zN/bMy6qX4mMz9yGGoSvNTBbsG47pSmT5xD854r3dfxyL4H5iG/xeNGaLarvQ2hj3/iAxld1044TDY28HINMw1aaoQ604SMcn49z6/CPmaT/5nIqfc072MQxVzQYyVclG4DaOKUjwcZ0Fb1EfP/rCGF868gztK082TqRlXFqKr7RUMm1sabJH0PTkdfar0NfcROTASjgcI9aHugqm9KP+WXSm3aFzgDN6W9c3pZiV3GVlNkWBaujg6Tjh6tmv/8AcJ/Bs5LfgYERhjBWGlZU3Yhb23rkCh6hPA8YLfu0kaknZOkxH/jBlq/lrT0WnsPoP3OwCrtQZLt8g==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <93408661-721b-c4b3-d504-e65142bbdaea@suse.com>
Date: Mon, 16 Oct 2023 17:33:36 +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][for-next][for-4.19 v2 1/8] xen/include: add macro
 LOWEST_BIT
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.cooper3@citrix.com, roger.pau@citrix.com,
 Simone Ballarin <simone.ballarin@bugseng.com>,
 Doug Goldstein <cardoe@cardoe.com>, George Dunlap
 <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Wei Liu <wl@xen.org>, xen-devel@lists.xenproject.org
References: <cover.1697123806.git.nicola.vetrini@bugseng.com>
 <bb0ba44f8a3944c22a1c7cf19196c7060e8adb4b.1697123806.git.nicola.vetrini@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <bb0ba44f8a3944c22a1c7cf19196c7060e8adb4b.1697123806.git.nicola.vetrini@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0049.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:48::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_|DB9PR04MB8313:EE_
X-MS-Office365-Filtering-Correlation-Id: 3fd3deb9-4854-4034-b2e1-08dbce5d4526
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	KDhTtbB6AzwPpiKEeCwQDKT8hB6hNC9I7vv45p0VXoKMS8SYlJBkila/4mlBKGCpJZ3z7OBqjvQqXNjMNgni5yi89n8cNUMSMiVL9K5t7WD1KD/mvEDOwACctFlFvv+5FH2/J3yaJWqG0QEkw5Sfd4XijzluMNNafrBsvzhg5QzPeAjcJNx2wAWr1/1kJMg5MmHxPd39CKbq9/5lRanxYSYWsgVw0Fs0Nkm9zSVBWjyXMxsvjPyBjfjxUUuHkUOKhKLB6Nk5g6CtK3uznqUgUW/XEereRINWbqGIb8wGPfNrvM3v9I+yUOBS6+wbn55F6Idfm1LI7wPpPmE8Gau8AK95nG5zvACnnUl8zoLvY+0X/k0WdUVAvR0yU8iYtYOl3KrCjCNMSWl5eXmMllFR5yWzO6uXG0GrRIreqqGvXVKhqZGdrEVm81TMB4zlXfOWU2O3jDv3AQ4BY8hmG7OzRf300INwUFHgxkDR0pqEeEsAa5oE74XB2OAm1Wq0YicX0A0QKT0VWYs3NqNWMR9H/QarJrJpn89ZqTIQ0s44cXNhic7U+BQ7qiN5bKdsKnqp9teNdqPBomGGT8z91EkYr9X6C7lc+3QDBjg2Qw+p+LOTYW7KymMLrJo+eRWpLeFM9Al20sgaRnqika34VL243g==
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)(230922051799003)(64100799003)(451199024)(186009)(1800799009)(26005)(31686004)(86362001)(31696002)(36756003)(478600001)(2906002)(6486002)(6666004)(41300700001)(53546011)(6506007)(5660300002)(38100700002)(2616005)(8676002)(66946007)(66476007)(66556008)(6916009)(316002)(8936002)(54906003)(4326008)(6512007)(7416002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?dHBPdFh4S1lwM1J1bDErSUhXb1crWThJbmNwNVQxVHdwMVVXdGFsWU5qMGgy?=
 =?utf-8?B?WVFUNzNWQUdXYXc2bUpBSVhCOTBwWXBGalFYRjBsUmsxOGUxOXovY1ZqQW5K?=
 =?utf-8?B?NnhkSnJIQWNBY2F6WEtnY1NFUXY2R3BHVnJ6R0diMGVFZkpaTUpSelZldnJD?=
 =?utf-8?B?UVMwR25mZ2hOOTg5ZStERDgrS0Y0L2wzb0U2ek9hM05pdDdLSGZ1ckVJTzJ3?=
 =?utf-8?B?NVA4ZUlocGVYWlNHZjFmSlNXNjlLNUgzbW9ndlQwbzBtN1ozN250VUhKWURH?=
 =?utf-8?B?a2ZzeWk2Ty9jZkd5bVVGTTNCclNPQy9QQm1zQWwrN3U4NTFWa010QmE4ekFk?=
 =?utf-8?B?WmhRZ0grVmVYa01vSnA3Q3hXNGlvZkZrbGk5ZEpueWxQSTBmdHg0SUNGYU9t?=
 =?utf-8?B?UHhOVE1WZmx0WjJ2SExPUm95bnY5cnhpTTlhUE1LN3FsemhRMlI3eE5QK1JL?=
 =?utf-8?B?U1gvOEZUZDF2UDl0Ymd5eEJONG1SUExJNS8reDVJaWY1MExJM3czWFcxZmVv?=
 =?utf-8?B?TjRvdXU1R0l4dXZVNmk2ZzZXWHdCS3g4MHNFSmNtcmsvakJlRWtFN2Zicml1?=
 =?utf-8?B?TzU4bkk0cDNFWGhOWGRhVHJkbC9iUGplZUJHZ0hIYyt4QW9lOVBYcFJiaVkv?=
 =?utf-8?B?OFpJNDNsazlkcjRoNzNHb0gzRzRZalk4V0c0bmd4VU5zN24wMm1PTXg0UE1k?=
 =?utf-8?B?QjdPb21SbXZYTkkwcXlVVENsajJqUjZDbjQxUEt6UGNxMDRDcUhaV0pJdlR2?=
 =?utf-8?B?MlBsekxxRlVSLzZXVmV3emFRUjFReDV0TVVOZWk3OFppZ2dQb0dLVFlXQWpn?=
 =?utf-8?B?ZHAwZ2xkVTlSbGhlRWw1anU2NWtjeE1nWjZEb2hCUkpTbjVLakZrK0NIemh4?=
 =?utf-8?B?blJXMlpHYXpXQUltYU9nZzExa1lNOElTTzdURGlFNkV4UVlIdjdlYzdkQ3dq?=
 =?utf-8?B?SDY1eHd3dzdpQmU3SDJ1RlhQelNacTc4b1RNalBLa044UW9aMmNXb0xnWnFi?=
 =?utf-8?B?M3VKQjZqZFNlOFJxalNlZjBOU0w1SGZxYTBqN1Q1NEdQUkZrbU9LeXNaa3Qx?=
 =?utf-8?B?RkgxVm5rd2tuaW5kV1JVcFFjZXY0N3RPVlV0M2RkMUpFQ0g0K1V5d1dDMFpF?=
 =?utf-8?B?T3gvdzJtakZ6WVE5ZVJMc1gwY2d1ancrbWprYnp0UklqbVllK3VvNVdkZGd2?=
 =?utf-8?B?ZGdwTGNYQy9DVFR0WW16bGlGcXp1YlU4Z1U0UmRybkFYK2RjcU9jclZjcTJB?=
 =?utf-8?B?dkxZKzM3ZTZoNnZNQ3hraERPSnJWTFVuTFZCUWhQQmZOeE0zNG1MeU5jSUZy?=
 =?utf-8?B?ZkUyRGxjMzNPOFV6eEVCQ3MrMUVjZkYyLys3TTZpQURtcE5QZE5VQ2Y1R3RJ?=
 =?utf-8?B?TFplMTN2c1U5dXRHRldHQnRBRzU3Ui9zTW01N1R4RzJMRjFvRTNUM01pdE9M?=
 =?utf-8?B?OXJGczd1bHVzanJVWmlOSVFKR2dmcmVkMnpVa2hRVlBKQkJISGYyY0RCSUty?=
 =?utf-8?B?Z2JibE01OEovRit4U3ZidnBYYXVubXVyUUZiRkhWa3UxZ3VnS0RUdFM4aWdz?=
 =?utf-8?B?VWRmTDJPK0pPQXljcTR3TXExYU9VdzNrSWZ4eU10WUpCUk1CT2ZQdlF3eVZU?=
 =?utf-8?B?K2U1cURJVUdmcGlmNGgxc0tHZXhBM2w1YjVHUkhaczJxa3dWQ3JPZlh5VEZq?=
 =?utf-8?B?cHJVQ2w4SWM0KzNBaFY2S0pXS2VXbEY3WUpwY1ovRWFjR0gyTXIvcm5OZ1Rn?=
 =?utf-8?B?QUFRMkk5MzhTU3R0aEtrNkRHeUx5VTZxdEYycWdNQXF0YjRxWFFLeUV6N1Jk?=
 =?utf-8?B?cjB3c0VwOUtYZlhnR1ZBYS9iVDlIcXR4MisxNWp1bzhkdndGV3o2bEJOS1Vi?=
 =?utf-8?B?REY1bFNRTU5OUjRtcHpmQ0xrTGhDdktrY2NodDluRGdJUGkyYlJFUGpqbzRN?=
 =?utf-8?B?NktUU2RmWlZvMFYvUkZUYkxvN1lQcXM5NmI2Uk4wS0Y0Yyt2ZFdFbFBGTWM4?=
 =?utf-8?B?U1JRbVBudUZ6QnpMRW1rK2wzZnlLTEJoTlZCWk5YTS9qblFVZ0ZEYklycktx?=
 =?utf-8?B?Yk5EbHdadnJLSFJMcFNNdFZBR1VJOXdvTVpGVzRVVHg1MnhaN29LbWxSMDVK?=
 =?utf-8?Q?FWAvPRCKQt0seqM6deuw/k449?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 3fd3deb9-4854-4034-b2e1-08dbce5d4526
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Oct 2023 15:33:39.1528
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: lI9LSyDAPVC5BjJ0XiB2EbULLBbBC3ya4R1Y3JccoLDwzWpAblyG23gfzqRs4MPdn425EJVTDTiNeZaV3ei6RQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR04MB8313

On 12.10.2023 17:28, Nicola Vetrini wrote:
> --- a/automation/eclair_analysis/ECLAIR/deviations.ecl
> +++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
> @@ -274,6 +274,12 @@ still non-negative."
>  -config=MC3R1.R10.1,etypes+={safe, "stmt(operator(logical)||node(conditional_operator||binary_conditional_operator))", "dst_type(ebool||boolean)"}
>  -doc_end
> 
> +-doc_begin="The macro LOWEST_BIT encapsulates a well-known pattern to obtain the value
> +2^ffs(x) for unsigned integers on two's complement architectures
> +(all the architectures supported by Xen satisfy this requirement)."
> +-config=MC3R1.R10.1,reports+={safe, "any_area(any_loc(any_exp(macro(^LOWEST_BIT$))))"}
> +-doc_end

Why is this added here rather than by ...

> --- a/xen/include/xen/macros.h
> +++ b/xen/include/xen/macros.h
> @@ -8,8 +8,10 @@
>  #define DIV_ROUND(n, d) (((n) + (d) / 2) / (d))
>  #define DIV_ROUND_UP(n, d) (((n) + (d) - 1) / (d))
> 
> -#define MASK_EXTR(v, m) (((v) & (m)) / ((m) & -(m)))
> -#define MASK_INSR(v, m) (((v) * ((m) & -(m))) & (m))

a SAF-<n>-safe comment here?

> +#define LOWEST_BIT(x) ((x) & -(x))

Personally I consider the name misleading: I'd expect a macro of this
name to return a bit number, not a mask with a single bit set. No
good, reasonably short name comes to mind - ISOLATE_LOW_BIT() is too
long for my taste.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 15:39:55 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 15:39:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617807.960844 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsPh6-0003TZ-Ls; Mon, 16 Oct 2023 15:39:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617807.960844; Mon, 16 Oct 2023 15:39: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 1qsPh6-0003T6-Iq; Mon, 16 Oct 2023 15:39:48 +0000
Received: by outflank-mailman (input) for mailman id 617807;
 Mon, 16 Oct 2023 15:39: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=4UvS=F6=arm.com=Bertrand.Marquis@srs-se1.protection.inumbo.net>)
 id 1qsPh5-0003Rq-2r
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 15:39:47 +0000
Received: from EUR02-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur02on20605.outbound.protection.outlook.com
 [2a01:111:f400:fe16::605])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 3b2f8d0d-6c3a-11ee-98d4-6d05b1d4d9a1;
 Mon, 16 Oct 2023 17:39:45 +0200 (CEST)
Received: from DU2PR04CA0059.eurprd04.prod.outlook.com (2603:10a6:10:234::34)
 by VI1PR08MB10244.eurprd08.prod.outlook.com (2603:10a6:800:1bd::7)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.35; Mon, 16 Oct
 2023 15:39:42 +0000
Received: from DBAEUR03FT057.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:234:cafe::84) by DU2PR04CA0059.outlook.office365.com
 (2603:10a6:10:234::34) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.34 via Frontend
 Transport; Mon, 16 Oct 2023 15:39:41 +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.6907.20 via Frontend Transport; Mon, 16 Oct 2023 15:39:41 +0000
Received: ("Tessian outbound 6d14f3380669:v211");
 Mon, 16 Oct 2023 15:39:41 +0000
Received: from 1f7612fbbae2.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 D0F70594-F0B7-49BB-AE93-0B8B00B88284.1; 
 Mon, 16 Oct 2023 15:39:35 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 1f7612fbbae2.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Mon, 16 Oct 2023 15:39:34 +0000
Received: from AM6PR08MB3784.eurprd08.prod.outlook.com (2603:10a6:20b:85::25)
 by PAXPR08MB7384.eurprd08.prod.outlook.com (2603:10a6:102:22f::8)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.35; Mon, 16 Oct
 2023 15:39:32 +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.6886.034; Mon, 16 Oct 2023
 15:39: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: 3b2f8d0d-6c3a-11ee-98d4-6d05b1d4d9a1
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=GIp9N9DbZfpVRuMrjJLkj1L/fkwi55LmFSNiEbRjBJk=;
 b=cEE9T3Ou+QEFM0SV6jJBVkR8Mw8/7MMLlvuZs7eEXCj+SIWAJ2ceoYiK2e22cVQOuh+ChY3cx0OxtUfauT025mQZhJCLNquN0djyJrEF4VymUoFHZCE7qn2N5u6Ygop5px+EZ5RuBfD6DDo/5ghkSncPeTzBTw2E/VYk7Ke9lHA=
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: 2146fd723f00856f
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=eeov6BP44bGzUfmqeXYcjkBQ1Kcp8t8Qun7srHEshrSIoWHqFOzl2Lh8MQSW4JWKNe3mTiqONTzyXJljtRI6FUJGgxX6Ax5Pj7BzicSARBgAwVqyIH9ijp5pDwVaOyvZ1kRK5zUYMlXuEhtqNQk/yKMBWrwHhw7g3tItZtscOJj9bY6cnfY9igD+jSpSSTgO/9I4Yhz0ISrqL/E7PHTYpV8UiQQ9AYQwo4kLBfV6d46fvOIUXngCMVkN9YbBlyWSo/gznRTwSAyx7pkCNh+tG30zYYTE1HN/OOMcJh7ebSExfI5OI2pqRaOD9dUNplkp+qzwIYQmlahXCMCVaWkL9Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=GIp9N9DbZfpVRuMrjJLkj1L/fkwi55LmFSNiEbRjBJk=;
 b=BdeeW900ufbCOkQT/WNqoL/B8JPFlXmpddExbG7yGziABrgt9ERIZ5O1XruWyjvhaPivDVOdvV+614gA1STj1Z55S5lPxrW1FA4wcOp+RSusUlHB3SRQhQ/TCSJdvwse14pDdveLs6eNvAtzKadgW4h9GjRFT6pqMrOSRfHOB5XzRdyz+vNBwIrLryKamN1qRT+jrxRf0au5/Twf1OaJrcRopr8BxGbyaKC1LwqrDCdCTN3bcSjFVQ+/mslSL2bwFMb31p1p2j5hZumSDRhRcoLcGFWsWXF5f7P5NjfDkZ1m4l5VOg5Ztf/41f9+9rMUAhfNlRbvBtowQN9WLrRVGQ==
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=GIp9N9DbZfpVRuMrjJLkj1L/fkwi55LmFSNiEbRjBJk=;
 b=cEE9T3Ou+QEFM0SV6jJBVkR8Mw8/7MMLlvuZs7eEXCj+SIWAJ2ceoYiK2e22cVQOuh+ChY3cx0OxtUfauT025mQZhJCLNquN0djyJrEF4VymUoFHZCE7qn2N5u6Ygop5px+EZ5RuBfD6DDo/5ghkSncPeTzBTw2E/VYk7Ke9lHA=
From: Bertrand Marquis <Bertrand.Marquis@arm.com>
To: Julien Grall <julien@xen.org>
CC: Alexey Klimov <alexey.klimov@linaro.org>, Luca Fancellu
	<Luca.Fancellu@arm.com>, Michal Orzel <michal.orzel@amd.com>,
	"leo.yan@linaro.org" <leo.yan@linaro.org>, Xen-devel
	<xen-devel@lists.xenproject.org>, Stefano Stabellini
	<sstabellini@kernel.org>, Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Rahul Singh <Rahul.Singh@arm.com>, Henry Wang <Henry.Wang@arm.com>
Subject: Re: [PATCH v4 2/2] xen/arm: Enlarge identity map space to 10TB
Thread-Topic: [PATCH v4 2/2] xen/arm: Enlarge identity map space to 10TB
Thread-Index:
 AQHZ/dCeetLGz4GvX0qAhZnpE9HtkrBMHj+AgABWt4CAAAGagIAAA68AgAADAgCAAAYrgIAABd6AgAAGqgCAAAJHgA==
Date: Mon, 16 Oct 2023 15:39:31 +0000
Message-ID: <E9128690-2C1E-47D8-AD94-682C4318E082@arm.com>
References: <20231013122658.1270506-1-leo.yan@linaro.org>
 <20231013122658.1270506-3-leo.yan@linaro.org>
 <169101f8-0475-45b1-b2c2-60dadd88d3f0@amd.com>
 <5a5e960b-e6fd-4617-b33a-10cf07f5bb52@xen.org>
 <8BCB97B4-CBDD-43D9-B0F8-7F637B8BE559@arm.com>
 <4B2BD200-5D3E-49D5-BF13-65B769AD4B90@arm.com>
 <CANgGJDqHu0CB=zzZqda18giLYDkL3My+gT592GLO-b9HsF2A4g@mail.gmail.com>
 <d3952200-9edb-4de0-94e3-c00c571a10b9@xen.org>
 <794B0D71-70A7-4546-98E0-EC01573E0D89@arm.com>
 <990b21a3-f8c7-4d02-a8ac-63d31794a76d@xen.org>
In-Reply-To: <990b21a3-f8c7-4d02-a8ac-63d31794a76d@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.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_|PAXPR08MB7384:EE_|DBAEUR03FT057:EE_|VI1PR08MB10244:EE_
X-MS-Office365-Filtering-Correlation-Id: 135dcf95-3beb-4fa3-449a-08dbce5e1d45
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:
 UxM6FzAKTo0VawGE3aIJsubJpA9QkTJrZNQVi9ABDRAYzHheSMC4pQOU2z52DyMxwF+nfgUpZ9blDGx5Nmbjs2/DhoeEKhrbzBJx1wuAAGBEMbUDMnDJtHSWUPSoQh883E58a/AqxO6xTtAWJUVi8AXmbXNbhD1KAHy+vXot8ti/ThUkziOx5F0dJotbK79wesVQiaZIk2m3W6fIgZPBcnHM4npjHovl6xNtuJLFQnp3ZDof0y4CeDtLzALWg4h3wSqbE5CDzqroidzijfFeTxOlPk70Qm17PFlKEBBvuRYoF1wvpMUqedDN3IVJv5XbkhiCEEI8bV+RCl5si3GVk2tF+bliUa77udQQL6s2Giz9T0NmByXhlbnQ1zf3KOk9oGEkPpWDspVnzVkjjyQ7ylPzdUylUIVkIlRmvcbmh2Ddbw1fj7/cI1ImXs0bU48PauTHUevwx8HCfJvZZj3tsjaJIjmpIWOpE53q69IYxCiAkTrBy6Hen9kDyVevtWqPQO9Zo5o2tTAmQdifyB3fMYfEMQNe7qiuYpyBLanDIG5Nrjn6kev5JCBU//0aSYXLE+CZKIVXSp2YrXYrfEVQeW5Irc8LmuO8pzjNg3cP/F2WWmpzh1h80VbnL152k6E0QwmkzwT4dJfvzcdgpFM05mbZh304gBfewjHnAje6SRxeS9m6J0EPH1Jn0TZ5tl/t
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)(366004)(376002)(396003)(136003)(230922051799003)(186009)(1800799009)(64100799003)(451199024)(316002)(478600001)(6916009)(91956017)(6486002)(76116006)(54906003)(64756008)(66446008)(66476007)(66556008)(66946007)(71200400001)(2616005)(53546011)(6506007)(26005)(6512007)(8676002)(8936002)(2906002)(4326008)(5660300002)(41300700001)(36756003)(33656002)(38070700005)(122000001)(86362001)(83380400001)(38100700002)(147533002)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <D94AE6FF70844D4C88ED184D7A0A1549@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR08MB7384
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:
	253addf0-4ede-4bcc-6fe3-08dbce5e177f
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	HAabE1K7vKKDDGMOhIqokmGmdgAIB2XMpfrTv666BPGzRVp5Hwo+30bI4D2Q4BFxGoh1Z3pyyy6i/DkFqBxKD7p3oe5Nn4TL0E0yDF8mT/cNKwrFvDoBdNAJmGVSNZ4SfI2jovBNKW5ixlCa1TYoSxvmkYiGV1S8MK1CGZkN7Xudoi2SF8/KkJRE/h4e59ER05RRFnfpfUr+mAQx89sm1PeqkKSGfGhVwdRG+/TQITfneqa1Ld7DCdI67EfQKDFRE3Z/y1RvDh0b3kfGCmUDMbAXvfqMqWeam8/s3KJ744Ww9STHWjN8f2BAQ/UUpvNbERYQ67MW8qpFvPvKU9XeWpq/X09y0Hq0BKUxpbPZr5cgEAbIr7P54e5ZCRRU2InAbO7f70dZg0sJExdlkQARj4xr/APFuVYJ1S+a7y7/pS4VkPO1tFz95KQ0pqqIf/DhXYY5SxxsGzD43ZxTMgkYnSCJBdRQv8nvxlT19Z7pn0yaHPYxC2TgXYrROPnsbCBH9qQb/Xb1EB5KW4yYeDyUTIAYvKTswEAj/n0LG7yC5xM4Iz50APBSLQnKmTW+dAbFbAdksGiAX+vVnqZOJefoEiw4MFFRwAiBA69+DtRBhqQS5gSHq+75/s7UOP/+jlE4b88kPhQN4llGm606/i5eBMWjrHiEmDVBn9g9bpneDWvKIEJ6SAO7wwwDpoRO1AqXRfVomuAtYHukFz4ts/RUBjyk1SzKsVuvqApObPVDtLrGdlpKdJqmlmj/Di+UAdo01SeK8W6opcL+AmkO036bPw==
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)(396003)(136003)(346002)(230922051799003)(1800799009)(186009)(451199024)(64100799003)(82310400011)(36840700001)(46966006)(40470700004)(5660300002)(40460700003)(6486002)(36860700001)(316002)(41300700001)(54906003)(70586007)(70206006)(6862004)(8676002)(8936002)(4326008)(40480700001)(2616005)(33656002)(81166007)(83380400001)(26005)(6512007)(356005)(82740400003)(36756003)(2906002)(336012)(86362001)(47076005)(478600001)(53546011)(6506007)(147533002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Oct 2023 15:39:41.5914
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 135dcf95-3beb-4fa3-449a-08dbce5e1d45
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: VI1PR08MB10244

DQoNCj4gT24gMTYgT2N0IDIwMjMsIGF0IDE3OjMxLCBKdWxpZW4gR3JhbGwgPGp1bGllbkB4ZW4u
b3JnPiB3cm90ZToNCj4gDQo+IA0KPiANCj4gT24gMTYvMTAvMjAyMyAxNjowNywgQmVydHJhbmQg
TWFycXVpcyB3cm90ZToNCj4+IEhpLA0KPj4+IE9uIDE2IE9jdCAyMDIzLCBhdCAxNjo0NiwgSnVs
aWVuIEdyYWxsIDxqdWxpZW5AeGVuLm9yZz4gd3JvdGU6DQo+Pj4gDQo+Pj4gQ0MgSGVucnkNCj4+
PiANCj4+PiBIaSBBbGV4ZXksDQo+Pj4gDQo+Pj4gT24gMTYvMTAvMjAyMyAxNToyNCwgQWxleGV5
IEtsaW1vdiB3cm90ZToNCj4+Pj4gT24gTW9uLCAxNiBPY3QgMjAyMyBhdCAxNToxMywgTHVjYSBG
YW5jZWxsdSA8THVjYS5GYW5jZWxsdUBhcm0uY29tPiB3cm90ZToNCj4+Pj4+IA0KPj4+Pj4gDQo+
Pj4+PiANCj4+Pj4+PiBPbiAxNiBPY3QgMjAyMywgYXQgMTU6MDAsIEJlcnRyYW5kIE1hcnF1aXMg
PEJlcnRyYW5kLk1hcnF1aXNAYXJtLmNvbT4gd3JvdGU6DQo+Pj4+Pj4gDQo+Pj4+Pj4gSGkNCj4+
Pj4+PiANCj4+Pj4+PiArTHVjYSBhbmQgUmFodWwNCj4+Pj4+PiANCj4+Pj4+Pj4gT24gMTYgT2N0
IDIwMjMsIGF0IDE1OjU0LCBKdWxpZW4gR3JhbGwgPGp1bGllbkB4ZW4ub3JnPiB3cm90ZToNCj4+
Pj4+Pj4gDQo+Pj4+Pj4+IA0KPj4+Pj4+PiANCj4+Pj4+Pj4gT24gMTYvMTAvMjAyMyAwOTo0NCwg
TWljaGFsIE9yemVsIHdyb3RlOg0KPj4+Pj4+Pj4gSGksDQo+Pj4+Pj4+IA0KPj4+Pj4+PiBIaSwN
Cj4+Pj4+Pj4gDQo+Pj4+Pj4+PiBPbiAxMy8xMC8yMDIzIDE0OjI2LCBMZW8gWWFuIHdyb3RlOg0K
Pj4+Pj4+Pj4+IA0KPj4+Pj4+Pj4+IA0KPj4+Pj4+Pj4+IE9uIEFETGluayBBVkEgcGxhdGZvcm0g
KEFtcGVyZSBBbHRyYSBTb0Mgd2l0aCAzMiBBcm0gTmVvdmVyc2UgTjEgY29yZXMpLA0KPj4+Pj4+
Pj4+IHRoZSBwaHlzaWNhbCBtZW1vcnkgcmVnaW9ucyBhcmU6DQo+Pj4+Pj4+Pj4gDQo+Pj4+Pj4+
Pj4gIERSQU0gbWVtb3J5IHJlZ2lvbnM6DQo+Pj4+Pj4+Pj4gICAgTm9kZVswXSBSZWdpb25bMF06
IDB4MDAwMDgwMDAwMDAwIC0gMHgwMDAwZmZmZmZmZmYNCj4+Pj4+Pj4+PiAgICBOb2RlWzBdIFJl
Z2lvblsxXTogMHgwODAwMDAwMDAwMDAgLSAweDA4MDA3ZmZmZmZmZg0KPj4+Pj4+Pj4+ICAgIE5v
ZGVbMF0gUmVnaW9uWzJdOiAweDA4MDEwMDAwMDAwMCAtIDB4MDgwN2ZmZmZmZmZmDQo+Pj4+Pj4+
Pj4gDQo+Pj4+Pj4+Pj4gVGhlIFVFRkkgbG9hZHMgWGVuIGh5cGVydmlzb3IgYW5kIERUQiBpbnRv
IHRoZSBoaWdoIG1lbW9yeSwgdGhlIGtlcm5lbA0KPj4+Pj4+Pj4+IGFuZCByYW1kaXNrIGltYWdl
cyBhcmUgbG9hZGVkIGludG8gdGhlIGxvdyBtZW1vcnkgc3BhY2U6DQo+Pj4+Pj4+Pj4gDQo+Pj4+
Pj4+Pj4gIChYRU4pIE1PRFVMRVswXTogMDAwMDA4MDdmNmRmMDAwMCAtIDAwMDAwODA3ZjZmM2Uw
MDAgWGVuDQo+Pj4+Pj4+Pj4gIChYRU4pIE1PRFVMRVsxXTogMDAwMDA4MDdmODA1NDAwMCAtIDAw
MDAwODA3ZjgwNTYwMDAgRGV2aWNlIFRyZWUNCj4+Pj4+Pj4+PiAgKFhFTikgTU9EVUxFWzJdOiAw
MDAwMDAwMGZhODM0MDAwIC0gMDAwMDAwMDBmYzVkZTFkNSBSYW1kaXNrDQo+Pj4+Pj4+Pj4gIChY
RU4pIE1PRFVMRVszXTogMDAwMDAwMDBmYzVkZjAwMCAtIDAwMDAwMDAwZmZiM2Y4MTAgS2VybmVs
DQo+Pj4+Pj4+Pj4gDQo+Pj4+Pj4+Pj4gSW4gdGhpcyBjYXNlLCB0aGUgWGVuIGJpbmFyeSBpcyBs
b2FkZWQgYWJvdmUgOFRCLCB3aGljaCBleGNlZWRzIHRoZQ0KPj4+Pj4+Pj4+IG1heGltdW0gc3Vw
cG9ydGVkIGlkZW50aXR5IG1hcCBzcGFjZSBvZiAyVEIgaW4gWGVuLiBDb25zZXF1ZW50bHksIHRo
ZQ0KPj4+Pj4+Pj4+IHN5c3RlbSBmYWlscyB0byBib290Lg0KPj4+Pj4+Pj4+IA0KPj4+Pj4+Pj4+
IFRoaXMgcGF0Y2ggZW5sYXJnZXMgaWRlbnRpdHkgbWFwIHNwYWNlIHRvIDEwVEIsIGFsbG93aW5n
IG1vZHVsZSBsb2FkaW5nDQo+Pj4+Pj4+Pj4gd2l0aGluIHRoZSByYW5nZSBvZiBbMHgwIC4uIDB4
MDAwMDA5ZmZfZmZmZl9mZmZmXS4NCj4+Pj4+Pj4+PiANCj4+Pj4+Pj4+PiBGaXhlczogMWM3OGQ3
NmI2NyAoInhlbi9hcm02NDogbW06IEludHJvZHVjZSBoZWxwZXJzIHRvIHByZXBhcmUvZW5hYmxl
L2Rpc2FibGUiKQ0KPj4+Pj4+Pj4gSSBkb24ndCB0aGluayBhIGZpeGVzIHRhZyBhcHBsaWVzIGhl
cmUgZ2l2ZW4gdGhhdCAyVEIgd2FzIGp1c3QgYSBudW1iZXIgd2UgYmVsaWV2ZWQgaXMgZW5vdWdo
DQo+Pj4+Pj4+PiBhbmQgYWxsIG9mIHRoaXMgaXMgcGxhdGZvcm0gZGVwZW5kZW50Lg0KPj4+Pj4+
Pj4gVGhpcyBjYW4gYmUgZHJvcHBlZCBvbiBjb21taXQgaWYgY29tbWl0dGVyIGFncmVlcw0KPj4+
Pj4+PiBYZW4gbWF5IGhhdmUgYm9vdGVkIG9uIHRoYXQgcGxhdGZvcm0gYmVmb3JlIGhhbmQuIFNv
IHRoaXMgd291bGQgYmUgY29uc2lkZXJlZCBhIHJlZ3Jlc3Npb24gYW5kIHRoZXJlZm9yZSBhIHRh
ZyB3b3VsZCBiZSB3YXJyYW50Lg0KPj4+Pj4+PiANCj4+Pj4+Pj4gQUZBSUNULCB0aGUgY29tbWl0
IGlzIG9ubHkgcHJlc2VudCBvbiB0aGUgdXBjb21pbmcgNC4xOC4gU28gdGhlIHF1ZXN0aW9uIGlz
IHdoZXRoZXIgWGVuIDQuMTcgYm9vdGVkIG91dC1vZi10aGUtYm94IG9uIEFETGluaz8gSWYgdGhl
IGFuc3dlciBpcyB5ZXMsIHRoZW4gd2UgbmVlZCB0byBhZGQgYSBGaXhlcyB0YWcuIEJ1dCB0aGUg
Y29ycmVjdCBvbmUgd291bGQgYmUNCj4+Pj4+Pj4gDQo+Pj4+Pj4gDQo+Pj4+Pj4gQFJhaHVsIG9y
IEx1Y2E6IGNvdWxkIHlvdSBnaXZlIGFuIGFuc3dlciBoZXJlID8NCj4+Pj4+PiBJIGtub3cgeW91
IHVzZWQgWGVuIG9uIGFuIEFWQSBwbGF0Zm9ybSBidXQgd2FzIGl0IGJvb3Rpbmcgb3V0IG9mIHRo
ZSBib3ggPw0KPj4+Pj4gDQo+Pj4+PiBJIGNhbuKAmXQgc2F5IGZvciBYZW4gNC4xNywgYnV0IG91
ciBuaWdodGx5IGpvYiBoYXMgcnVuIHN1Y2Nlc3NmdWxseSBvbiBBVkEgZm9yIHRoZSBjb21taXQg
NzMwNDA2YWI4MTA5NDExNWQ5ZmI1Y2EwMGJhOGQ1M2NlYzEyNzliMw0KPj4+Pj4gKGRvY3MvbWlz
cmE6IGFkZCBkZXZpYXRpb25zLnJzdCB0byBkb2N1bWVudCBhZGRpdGlvbmFsIGRldmlhdGlvbnMu
KQ0KPj4+Pj4gDQo+Pj4+PiBXZSBhcmUgbm90IGFwcGx5aW5nIGFueSBwYXRjaCBmb3IgaXQgdG8g
cnVuIG9uIEFWQS4NCj4+Pj4gTW9zdCBsaWtlbHkgaXQgaXMgYmVjYXVzZSB5b3VyIFVFRkkvQklP
UyBmaXJtd2FyZSBpcyAyLngsIGZvciBpbnN0YW5jZQ0KPj4+PiAyLjA0LjEwMC4wNy4NCj4+Pj4g
VGhpcyBmaXggaWYgZm9yIEFWQSBtYWNoaW5lIHdpdGggb2xkZXIgVUVGSSBmaXJtd2FyZSAxLjA3
LjMwMC4wMy4NCj4+PiANCj4+PiBPT0ksIHdoeSBub3QgdXBkYXRpbmcgeW91ciBmaXJtd2FyZT8g
SSB3YXMgZXhwZWN0aW5nIHRoYXQgaXQgd291bGQgYWxzbyBjb250YWluIG90aGVyIGNyaXRpY2Fs
IGZpeGVzLg0KPj4+IA0KPj4+IFdpdGggdGhpcyBpbiBtaW5kLCBJIGFtIG5vdyBtb3JlIGluIHR3
byBtaW5kIHRvIGFzayB0byBtZXJnZSB0aGlzIHBhdGNoIGluIFhlbiA0LjE4LiBPbiBvbmUgaGFu
ZCwgSSB1bmRlcnN0YW5kIGl0IHdpbGwgaGVscCB0byBib290IG9uIEFWQSBtYWNoaW5lIHdpdGgg
YW4gb2xkZXIgZmlybXdhcmUuIEJ1dCBvbiB0aGUgb3RoZXIgaGFuZCB0aGlzIGlzIGNoYW5naW5n
IHRoZSBtZW1vcnkgbGF5b3V0IHF1aXRlIGxhdGUgaW4gdGhlIHJlbGVhc2UuIFRoZSByaXNrIHNl
ZW1zIGxpbWl0ZWQgYmVjYXVzZSBYZW4gaXMgbm90IGxvYWRlZCBhdCB0aGUgdG9wIG9mIHRoZSB2
aXJ0dWFsIGFkZHJlc3Mgc3BhY2UgKHRoZXJlIGlzIHRoZSBkaXJlY3RtYXAgYWZ0ZXJ3YXJkcyku
DQo+Pj4gDQo+Pj4gSGVucnkgKGFzIHRoZSByZWxlYXNlIG1hbmFnZXIpIGFuZCBvdGhlcnMsIGFu
eSBvcGluaW9ucz8NCj4+IFdpdGggdGhlIG5ldyBpbmZvcm1hdGlvbiwgSSB0aGluayBpdCBzaG91
bGQgYmUgc3RhdGVkIHRoYXQgaXQgaXMgZml4aW5nIGFuIGlzc3VlIG9uIEFWQSBwbGF0Zm9ybXMg
dXNpbmcgYW4gb2xkIGZpcm13YXJlIGFuZCBwbGF0Zm9ybXMgd2l0aCBhbmQgdXAtdG8tZGF0ZSBm
aXJtd2FyZSBhcmUgbm90IGltcGFjdGVkLg0KPj4gSXQgaXMgYW4gaW1wb3J0YW50IGluZm9ybWF0
aW9uIHRvIGtlZXAgaW4gbWluZCB0aGF0IHRoaXMgaXMgbm90IGEgZml4IHRvIGJlIGJhY2twb3J0
ZWQgZm9yIGV4YW1wbGUgKGFuZCBmb3IgbWUgdGhlIGZpeGVzIHRhZyBzaG91bGQgbm90IGJlIGtl
cHQpLg0KPiANCj4gSU1ITywgdGhlIGZpeGVzIHRhZyBzaG91bGQgbm90IGJlIGJhc2VkIHNvbGVs
eSBvbiB0aGUgQVZBIHBsYXRmb3JtLiBJdCBzaG91bGQgYmUgYmFzZWQgb24gd2hldGhlciB0aGlz
IGNvdWxkIHNlbnNpYmx5IGFmZmVjdCBvdGhlcnMuIFJpZ2h0IG5vdywgdGhlcmUgaXMgbm90aGlu
ZyB0aGF0IHdvdWxkIGluZGljYXRlIGVpdGhlciB3YXkuDQo+IA0KPiBBbmQgdGhlcmVmb3JlIGEg
Rml4ZXMgdGFnIGlzIHNlbnNpYmxlLiBUaGlzIGRvZXNuJ3QgbWVhbiBJIHdvdWxkIHdhbnQgdG8g
YmFja3BvcnQgaXQgcmlnaHQgbm93IChub3RlIHRoYXQgb25seSA0LjE4IGlzIGFmZmVjdGVkKS4g
QnV0IHRoaXMgY291bGQgY2hhbmdlIGluIHRoZSBmdXR1cmUgaWYgd2UgZ2V0IGFub3RoZXIgcmVw
b3J0IChwb3N0LTQuMTgpIG9uIGEgcGxhdGZvcm0gd2hlcmUgdGhlcmUgYXJlIG5vIG90aGVyIHdv
cmthcm91bmQuDQo+IA0KPiBTdGVmYW5vIGFueSBvcGluaW9ucz8NCj4gDQo+PiBPbiB3aGV0aGVy
IG9yIG5vdCBpdCBzaG91bGQgZ28gaW4gdGhlIHJlbGVhc2UsIEkgYW0gbm90IHF1aXRlIHN1cmUg
dGhhdCBtYWtpbmcgYSBjaGFuZ2UgaW4gdGhlIGxheW91dCBhdCB0aGF0IHN0YWdlIGlzIGEgZ29v
ZCBpZGVhIHVubGVzcyBpdCBpcyBmaXhpbmcgYSBjcml0aWNhbCBpc3N1ZSAod2hpY2ggaXMgbm90
IHRoZSBjYXNlIGhlcmUpLg0KPj4gU28gaSB3b3VsZCB2b3RlIG5vIGJ1dCBub3QgZ28gYWdhaW5z
dCBpZiBzb21lb25lIGFyZ3VlIHRvIGhhdmUgaXQgaW4uDQo+IA0KPiBJIGFncmVlIHdpdGggeW91
ciBzdGF0ZW1lbnQgd2l0aCB0aGUgaW5mb3JtYXRpb24gd2UgaGF2ZSB0b2RheS4gQnV0IGl0IGNv
dWxkIGJlY29tZSBhIGNyaXRpY2FsIGlzc3VlIGlmIGFub3RoZXIgcGxhdGZvcm0gaXMgaGl0IGJ5
IHRoZSBzYW1lIGlzc3VlIGFuZCBoYXZlIG5vIG90aGVyIHdvcmthcm91bmQuDQoNCkkgYW0gbW9y
ZSBzZWVpbmcgdGhpcyBhcyBhZGRpbmcgc3VwcG9ydCBmb3IgcGxhdGZvcm1zIHdpdGggYSB0b3Bv
bG9neSB0aGF0IHdhcyBub3Qgc3VwcG9ydGVkIHVudGlsIG5vdyAoYmVjYXVzZSBpdCB3YXMgbm90
IGVuY291bnRlcmVkKSByYXRoZXIgdGhhbiBmaXhpbmcgYSBidWcgd2hpY2ggaXMgd2h5IGkgZmlu
ZCBpdCBhIGJpdCBvZGQgdG8gc2F5IHRoYXQgaXQgaXMgZml4aW5nIHNvbWUgaXNzdWUuIEJ1dCBk
ZWZpbml0ZWx5IHRoaXMgaXMgYW4gb3BpbmlvbiBhbmQgbm90aGluZyB0aGF0IGkgY291bGQgYXJn
dWUgb24gOi0pDQoNCkNoZWVycw0KQmVydHJhbmQNCg0KPiANCj4gQ2hlZXJzLA0KPiANCj4gLS0g
DQo+IEp1bGllbiBHcmFsbA0KDQoNCg==


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 15:42:20 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 15:42:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617816.960854 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsPjW-0006By-4z; Mon, 16 Oct 2023 15:42:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617816.960854; Mon, 16 Oct 2023 15:42: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 1qsPjW-0006Br-2K; Mon, 16 Oct 2023 15:42:18 +0000
Received: by outflank-mailman (input) for mailman id 617816;
 Mon, 16 Oct 2023 15:42: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=BBjo=F6=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qsPjU-0006Bj-RU
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 15:42:16 +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 943245aa-6c3a-11ee-9b0e-b553b5be7939;
 Mon, 16 Oct 2023 17:42:15 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS8PR04MB8721.eurprd04.prod.outlook.com (2603:10a6:20b:428::10)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.35; Mon, 16 Oct
 2023 15:42:13 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%6]) with mapi id 15.20.6886.034; Mon, 16 Oct 2023
 15: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: 943245aa-6c3a-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=nBLindH1IeYN7iTfSPmaolQSB4UBKxWQqx7jkK2euDiDuCAOBe9fRnD4Bo5gMoajyu/C41hdI/eSDKHR6hcp0uHd4UWxjrAIVbIvuOS2wUl57IQBwIYV51vHqwn7HFKXA9lrw9heOx/0jw0HRnG3PWYbZwmE5tFNHi/Xdm8Pkvg0b096CkF8MD8S57txaovG1/4Vx9JYiK5dfQHYOZnrw0htrppCaqWcrV3CiDVhYXkc16+4Kw4RrGLuSe3X7TyrNPwCIMmnC1VC73pUz9IbIPoErvrGixg8hA9V9tGJgFP8HA0VhTJEV/cYCjtkB23T3B7ULQu5lnpXjAfJz88Q8w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=OTDC0WfAR+lZCIZrpiMFQMM69m657zcLgvAgFRzBO70=;
 b=lnfCweaD5byGj3nuTlvRYfk0D61InrwTDBfepD5RoG1rGEmJxRxOHDw7TOCoD4ZYP1lV8G/f0LE/oAekwQ/EgmdZIJx2CgVivS10Bxd9C8BuMAfJO1CMWVZG5pzqUqdsg/SdHArQ6rcJZnpJvAHLYAsuDBaoly6ziTs1dethkEKzGMdXyWugC3vfKO2pF3F6Jbq7P2260RN/7czCFicgSatwKyHi4cG3orbEtmj+m+6UO2uvjsR95Lp/yvkKXBo4Hw7LHDvDdKXmE0DKmeEFdHFGbQ1P3PpWpSB30ZxNYFpX25Bh3+znwGTd9LN/EcRTLVqhZLYV0BqY5u++UOj77A==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=OTDC0WfAR+lZCIZrpiMFQMM69m657zcLgvAgFRzBO70=;
 b=wCK1ChBljFPsezrpoZyukhVZy/2s+NBuz2aukJObuh8OlR52gqYcP6upfSRx1WL3GjFyyoOy3Ryiu6ISHWEH/Br85JZablSIjQ46TCPEcNhnZy+3m795M+1G7V4J8Q/r1P2BUEbi02m+bKBnj+It3g926Eol5ArgxAyYgkKloac/PsaaxTF8S5V1pXhKiZq0qK2b5kakOLDjirLjWcLyfNQekOpy0+2SpP77z3ovm+imjSY9lPKiIHWNwWSatLSbMFiUC3LVEzbdAf9H5N/P1Q1LcsVL/vqH8YiHNgUmPm2Wfd3tvpTteC7YalKIp6oq2v3cxHPgv/myldLYoykYQQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <262b878b-578f-451a-6e7d-18af4a826848@suse.com>
Date: Mon, 16 Oct 2023 17:42:10 +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][for-next v2 5/8] x86/io_apic: address violation of
 MISRA C:2012 Rule 10.1
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.cooper3@citrix.com, roger.pau@citrix.com, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <cover.1697123806.git.nicola.vetrini@bugseng.com>
 <1fe7602b48cabb7710025f6b4e32e9b99a1faacd.1697123806.git.nicola.vetrini@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <1fe7602b48cabb7710025f6b4e32e9b99a1faacd.1697123806.git.nicola.vetrini@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR3P281CA0036.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:1c::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_|AS8PR04MB8721:EE_
X-MS-Office365-Filtering-Correlation-Id: 5d53e82d-ba9c-4102-d3ba-08dbce5e7751
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	XXut3EACajU9pz6wMaiJ1FGK+a53rH7C8MH1Bjc3Fh1jMUCRks8jXc0a130hZ8zqeiMhgh7DKQHBi2o2kytJpaik6/xab6s3V43l/bNSUxwx35Qp1lkzgalkK5TpeK2B98vhROTHxoU0gjXALR6B2aosbos1of/tIGIQ2BRE6CPldKK8G+NuwJ2NmelrV1b3bK0rdh5/YI7It/n8Jd1QoGnrMEN5TXoPrX+8sI+onmxEGWWuU1YU6OKzG0JTgBO7Caaq5nSpu6rONXHpBJzjBSR7TDxT2+x38zWAFJjkexXdw8/ZW0/QJsU42hSJcD3oyizDSaUZFtUhhsGSjiEUU7BcoM2ODW4+h03Vfs8JYzyshYMAByT0K4vi8bZk/Z4OvT+QP17uo9PQrZB0gqW82HZRO4IQ4xE4ey4dNai/k0ZiFwCJ0TJRF3gvrA4L5EDqTgSm3wJQYsmO0cyjLpZbPD5EEB2XY9XurwEtrlxmnILXF4xMw8hzVu+6lWO10mtH/ZTEq+7w3p3gfL/sr4ht5kNp42qZ0ciliWmr1BYVMMUnth3uZ4XagCABLUutfuAGymGzB2TxJWNYG5PlUOmSkdp0v+K4Qumid52K1SVMBoiMsdgC0kT5vvDYDjdmd2+jVhHlsfNiUe7bJtCZzzRMuA==
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)(396003)(136003)(376002)(230922051799003)(1800799009)(186009)(64100799003)(451199024)(6486002)(38100700002)(478600001)(2906002)(6512007)(6506007)(7416002)(316002)(66946007)(66476007)(66556008)(6916009)(4326008)(5660300002)(41300700001)(8936002)(8676002)(83380400001)(53546011)(26005)(2616005)(31686004)(36756003)(31696002)(86362001)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?dXM1K0lOL0ZjYTN3THFoZFBQRERvRTRVTmRUYTE0aDBOZWttNzZRM3dDc2tR?=
 =?utf-8?B?eWNHZnNEbDVOc0FrSWVPcUd1enVkSzMxU1NkVFowUWV6eHBRbGVQampIa1pU?=
 =?utf-8?B?OUVZWUZwaWlyYXJVOGowVkRlRHA3UzlpdGxOK0dKQkNhRm5MSUgzU1g3cDYv?=
 =?utf-8?B?TjlYUFc3Nk5wVUVPNjZ3cjFUTk5Ec3BDTmtZelRwMTh5TXRESnM0TmQxaE92?=
 =?utf-8?B?T0puOU9Ga2JZWkRocUd1Sy9wREp1ZzY4eThTL0pHZTRPaGc5WjV4U0o5QkZ0?=
 =?utf-8?B?VHhHNkdoSEY0anZwUUxhRVBYZjhEOWNtL05FV1R0Y3VRbVptYlI3KzNPTzMw?=
 =?utf-8?B?dFNJYjliRXNZME9HTGxuZ3l6ZG12Q0JSYzNJM3c4NmxmYzF4ZkNNdFZiV0wz?=
 =?utf-8?B?UlZvYTVucGNzb3pBdnFORE0wTHpLcFBiWVVBZlU5aWh5dU1ldi9VQlE5NTlU?=
 =?utf-8?B?a21sQURFYW11b3dZWDQwc08xaVREVHdiWWN5eEdSYmF0TXlrRjZxUW1TMm1P?=
 =?utf-8?B?ektmbFdVQjFnYk9QbmxlRWxnZ2krV3BmY21qNkVsNWdCaW5MWTFpeXlDMUJM?=
 =?utf-8?B?YVUwVzRlQXZoeGZvb0p1L2J0U0J0ek1qcngxNkF4blNDYmE5NlBzWkJhK2p5?=
 =?utf-8?B?S1lWVUg1dS9vUG9yK3lBeldLTzdBR0NwQXZ4UFVHOUlEVXF1MkJwOVd3Y2pQ?=
 =?utf-8?B?YTh0WUd3LzZwd1cweGt0NjNmWDhDNjYvUUdDRDNKZmhZYUJjNHN0WkxkZGFm?=
 =?utf-8?B?djVOYjZId0pKTFJUcUhtU2FrUlhZbEwxUGhHWG1CYWVad2VuN1JCa0hyaUll?=
 =?utf-8?B?ZEQyNnUvMkRkNG5nd2FFamlzcnY0a1BhVzRjek0vdVM4N3FkTWthVmFCS1Ny?=
 =?utf-8?B?cU5GR1RjRDVlQzhiK1JraHQrM0VUdUxxSTZzK3VaQnphWnp1bnBpVjUrQlFB?=
 =?utf-8?B?a0pMS0c4UU9weVBIc3JzVVVkUGp6WHVZSlkrN24vcHFZSk83Y2J0NjNGMUNw?=
 =?utf-8?B?VHVVZ1UrVDZQSzN0UUR1Z2RNVTBaZExNWThQdjZ5OGJveVByOUFtUHlaMVRp?=
 =?utf-8?B?ZW9OVit0VlR5NEtISDJUSzhhWkp3U3BrZFEzem85TVFTTG8rNUNBZWpYZFJj?=
 =?utf-8?B?UjBWRy9iYXhRdkw4aWU0SEFUM25tQVpvZUJLaEgyY2VsL3RLR3JJUkZGcTkz?=
 =?utf-8?B?cHk1WlJNTkJIWklFbXk1TWpueUFMQTZjTWdXUFZEZ0hwRlA3b2lHTUNIYW1I?=
 =?utf-8?B?MThLR2xmZDBwRFdyTlE4am9MY29xWlAxTGNhbnQyckxxTHBjcm1oWFgwd3l4?=
 =?utf-8?B?dWx3TWJZSUlIci9qK1pmTkZNb0YyUnNRRTdpNkN6dkRSMzBPRTFBOHh1b1hm?=
 =?utf-8?B?YUk3anpsVWxrTVgxWW1EeGx6UTRKRkhsYUsxZWZKbWlhUWxJRnE5YXNhNWlk?=
 =?utf-8?B?NU1SYlZQZ3RhamhIL0c5cEpPemZoQ0JWVDBwN2EwbThDaUNjRWQwdStVWnZ6?=
 =?utf-8?B?OFFxODR6UThiRWNtNStQakZBWmI3djd5OHExbjl2eTkxYkhJQUFWdnFDWitQ?=
 =?utf-8?B?YURXLzV3WXVMbFNuTDJCcjc5RkltQ0piT3JkSUlabXVib2hEVis4T3BoMGlQ?=
 =?utf-8?B?d2R1OHRkcE01OVZxWHNqSlVvOUpCcGozNzFzdEVCWkpWdllHR3JzVWlPR0pD?=
 =?utf-8?B?SGJLWGVMamN0aHFTenFTWm85WnJ1K2Z6bkRBS1RRQXpNT1lub1I0Mk9JTGhR?=
 =?utf-8?B?NFRObVIxTU53ZmM2V0REZnMzUzZRdi9qeDYxKzcxMXQ3R0kwNUJmY3hiK2dv?=
 =?utf-8?B?L0tVeWRjTTdpb3NtZEJtbDd5eDFuODNscTVhMElXalpsWjdxVkdLaWtLVVI1?=
 =?utf-8?B?Z2JTQWVYSEt6S0JQRHlaOTlVR1NMQzJxcEdPWGN1a1ovMHZxa1drSFlOUlNr?=
 =?utf-8?B?TFdwblZrMjZKMDA2cUhZNi85d1E3bEdxcnZiREQ0eHI5YVNNeFJ4a3FUK1l6?=
 =?utf-8?B?SUhsaWkzekpXaGFscXRubCtFNmJMWGxuOEZKYlEyYmgzY1NVTlpvT1MwZVVP?=
 =?utf-8?B?OVhEcFQ2NTcvTm5sd1FmbzFrRUsreDZqdmlGbkhJS0RaQ0xFUkRoWmlZYmt1?=
 =?utf-8?Q?FflZpm+4lvkAEEnHtUq+iYavE?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 5d53e82d-ba9c-4102-d3ba-08dbce5e7751
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Oct 2023 15:42:12.9556
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: e/2hFrPUd4CAPiBVdb7chIlygdE+w+KprTCr96kyoCm67oMVRmg2m6DZn1zknK/8eT02RnR+8r3UsTg2xtEpSw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB8721

On 12.10.2023 17:28, Nicola Vetrini wrote:
> The definition of IO_APIC_BASE contains a sum of an essentially enum
> value (FIX_IO_APIC_BASE_0) that is positive with an index that, in all
> instances, is unsigned, therefore the former is cast to unsigned, so that
> the operands are of the same essential type.
> 
> No functional change.
> ---
>  xen/arch/x86/include/asm/io_apic.h | 7 ++++---
>  1 file changed, 4 insertions(+), 3 deletions(-)
> 
> diff --git a/xen/arch/x86/include/asm/io_apic.h b/xen/arch/x86/include/asm/io_apic.h
> index a7e4c9e146de..a0fc50d601fe 100644
> --- a/xen/arch/x86/include/asm/io_apic.h
> +++ b/xen/arch/x86/include/asm/io_apic.h
> @@ -14,9 +14,10 @@
>   * Copyright (C) 1997, 1998, 1999, 2000 Ingo Molnar
>   */
>  
> -#define IO_APIC_BASE(idx)                                               \
> -    ((volatile uint32_t *)(__fix_to_virt(FIX_IO_APIC_BASE_0 + (idx))    \
> -                           + (mp_ioapics[idx].mpc_apicaddr & ~PAGE_MASK)))
> +#define IO_APIC_BASE(idx)                                     \
> +    ((volatile uint32_t *)                                    \
> +     (__fix_to_virt((unsigned int)FIX_IO_APIC_BASE_0 + (idx)) \
> +      + (mp_ioapics[idx].mpc_apicaddr & ~PAGE_MASK)))

Let's assume that down the road we want to make __fix_to_virt() an inline
function (which perhaps it really ought to be already): Won't this trade
one violation for another then? I wonder whether the better course of
action wouldn't be to switch the two enums to be "anonymous", even if that
means adjusting __set_fixmap() and __set_fixmap_x().

As an aside, since you touch the entire construct, it would be nice if the
+ was also moved to the end of the earlier line.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 15:43:24 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 15:43:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617821.960865 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsPkZ-0007WQ-I9; Mon, 16 Oct 2023 15:43:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617821.960865; Mon, 16 Oct 2023 15:43: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 1qsPkZ-0007WJ-E0; Mon, 16 Oct 2023 15:43:23 +0000
Received: by outflank-mailman (input) for mailman id 617821;
 Mon, 16 Oct 2023 15:43: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=BBjo=F6=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qsPkY-0007Ut-JV
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 15:43:22 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur04on2054.outbound.protection.outlook.com [40.107.7.54])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id bb6d4763-6c3a-11ee-9b0e-b553b5be7939;
 Mon, 16 Oct 2023 17:43:20 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PA4PR04MB7822.eurprd04.prod.outlook.com (2603:10a6:102:b8::19)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.35; Mon, 16 Oct
 2023 15:42:50 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%6]) with mapi id 15.20.6886.034; Mon, 16 Oct 2023
 15:42: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: bb6d4763-6c3a-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Te4c1JLHD2WAwa7BnuYflCYm1h/IuOIJhiGcO8/AC4rNPkbcieWdTPgRdIIgEDAtam32hb5KZ68eU8uFyUXhhAAlLrnKjLOdU8eheChpwUnFQg8CVsQ5r2UQ4TUPRmTORggNgKMvJ5jPY1hUqXKsXymUVxLVGI5213Wev7obzCNx2W/NS8bCTIdz+NlJWgPu690JxQVdiWvV3yz+KgLU+eNOn3vW0GIX9JMRJf5KkdToToh+IEn26rlMtSBbscWiNP/i/wO2q4GaHVGCAbjMsiiAfhd1a02DVtLjmMIaz+9cEKp+wQBpMJqZoKN6GSgs4oAWJ9OFL/drNyrer9u+ZA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=14n3ySF+i1IfwaNUMXlIHi/QBV0HBoFpjh+KJDaDLTs=;
 b=QpdEMrqEk6KdvnXwvNjqOhJ9XwP3uQ6oDG7BZ1aOJuAvhjPcG3+rbiPLecHrtqdMtLl0yfRNP7RZYH8gBlT7sGqiiuHNzVab6GNge7HJKUIG39RWAdcMm12FHpzRQg/uolPFB2yb4Mbgru5XCgpz7Q5ipyNav22elJt2e+hzFKaRaHI+/SB8kH5Q+x1SxFGTU7TB/mSFiC7k49lCWLLh0v9fQjR5Ogw/2IJKUcBiFyu/T+8PelQpdViZbBjzjh6pn2KC1N3KCi1Dl4a+sxxJn5aRG7stscr2US0gn7t+dt/Jnl93Q5M8bK1+qSnSdGpKw+CAOaKUgLlVOxuYjgp3kQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=14n3ySF+i1IfwaNUMXlIHi/QBV0HBoFpjh+KJDaDLTs=;
 b=l8dwpRAB1Q0OZXVLQKe4YJAyGq1ioYsn5a68rBDT3mkGMvHy0S+EHfhevILPea4jFvAxH3GzsP+kNjqe0ymuVXsa20wuhvIXZXKRWXtvMjJcLb0W3yhOZwM75kWun71VWAXAyNA2NKf1rv46xNdIjFvWbOcnzH2hVioZU7mi/pPF5YNYvdWWWZML0cHCSExvVN+tjG8w9uepxcNw/Zbb5vJy4H7xgnJZcif0S5OVPnFCy2GlUEZeCStMAN1OWtmbfbcdDby6rBnffUmMQpCwxE+sBkvYvrSBPXKoymjbbk/8u6fv/0qMew3kIrNbzNhl3BESJFqLrmy0Fqvd67xZFg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <d52fdb46-5ac2-fb0a-2b76-348acf4a5cff@suse.com>
Date: Mon, 16 Oct 2023 17:42: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][for-next v2 5/8] x86/io_apic: address violation of
 MISRA C:2012 Rule 10.1
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.cooper3@citrix.com, roger.pau@citrix.com, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <cover.1697123806.git.nicola.vetrini@bugseng.com>
 <1fe7602b48cabb7710025f6b4e32e9b99a1faacd.1697123806.git.nicola.vetrini@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <1fe7602b48cabb7710025f6b4e32e9b99a1faacd.1697123806.git.nicola.vetrini@bugseng.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_|PA4PR04MB7822:EE_
X-MS-Office365-Filtering-Correlation-Id: 58bf37d9-2cd9-4994-bee4-08dbce5e8db0
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	8qRYuLad2sb4a07srVPS8LCpJgAokPQVaHTXiZyO3hJgjFqz5cktWyFvWqHxpKRFz0H9/rF6/2+qkd4vqKrPouvqLfi+rczoSa1JjRkwbpxUd/PBdUwr/5Vu76g/izkEog9y+sZJNBQSx2k1Yp6Lax+2baV7MrnKpH5Qg45yjSa2nJSUukehmKF6T0Dko2PC19ffe5WJO61t3bsVm7zRW5PQNtjkvExuAsTNsJamLJsq5OXXMciJsqoNY/8ghepz7O9IIDtIDCuMYuGPNen5dFuCYMBylSxY5LIPKe9/1vOLO/kpBrfn9TXox6vbhMsHBoewpTVTKum8BhH5Ah/TLOd/9OAg0ocmLJcawNtrFsG9icnp9wC9jhiz/2HW5e9UXy38j0X6+uN8FqpfeFxepeiMWOa9+8UC6hmEmJjbhvpMAukSao18FfppEfwbdy9eMcBxIpjYmKPWeZPe/xjljF/PKeOrkvHR3cTq3r1XnjUNFeDBH7RNiTpj3378aYSWzeIBp0TfVqfAeoQFR9xTTZaQKaybrPQbwaE7DcbiGxRDhRcQB60fQ6TTwymr+tuy9l3rf+kQK8BSnr+gq44F1d6JfztOXyIfe7Ew4KZzm1dUzargXolEhBOsjLwI6UJg/xlAU+VtA4/JuI2StpLsHQ==
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)(346002)(396003)(366004)(230922051799003)(1800799009)(186009)(64100799003)(451199024)(6486002)(2616005)(6916009)(66476007)(66556008)(478600001)(316002)(66946007)(6512007)(26005)(53546011)(6506007)(2906002)(5660300002)(8676002)(8936002)(4326008)(41300700001)(7416002)(4744005)(86362001)(31696002)(36756003)(38100700002)(83380400001)(31686004)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?bVdlV0pob1pVVTgwMS9FQzY2cDFaQ0JOQXFaRUhKU3E4RlIyOHNVa2tyMjhv?=
 =?utf-8?B?U3NienVzdGtGNUMwWkhQbmRDRUxTbFhpZkEwWlJUL1lyazk3Mm03cmVPWlNk?=
 =?utf-8?B?OXUwa29lK3Nsc09MVHhuR3ZJUUM1VEk1TkZJa0NyMVYwOGJiNmE2emcvdzJs?=
 =?utf-8?B?dXFqVm1MT3J1UW51VTRtTnMvU1hhbi9yUlhYK09CdnVwQS9hMUVIcHNHWFZs?=
 =?utf-8?B?czFXd3pPc3lHdlN0V3ZvampNN00vWFpiRFh0Q3RwOFBPV1RnVU8wRVAwTm1V?=
 =?utf-8?B?enlmYmtORjAxekFkQytJVTREaHoxU1RJQUNtS1dVdGlmSjB3UHVOcDV6c1FV?=
 =?utf-8?B?bHhYc2t3bWhneTRNeHFzUENJSlkwdENMTkhLUUV1TUMwc29wN0o3endGdU03?=
 =?utf-8?B?dlhQTm1XVitxTHg5NUp5bndGTjMrMzM4TGR6dEdkc1AzS0REQS9qSzlMaVdt?=
 =?utf-8?B?RU1heWZzQmlocnBpR1QwZE53cVdrWmJpT0JxTEtyaE4zY0VRUmVicjFaSFJL?=
 =?utf-8?B?MHkyT3FkNEdzVk1HTEx2VXU3RTUzelYvUVRHTEFzZis3R1JmMGFoZE93NEJu?=
 =?utf-8?B?S0s0ZzlXUEl6SFR5ZWYwTlYwWmR5cW56cExFcDhibnJNQTRQaDhjeURmTndu?=
 =?utf-8?B?ejA1amM5RDdqSU9yVGdSQXZHdnVoZVZ5cWhLcDRucXQzOEFhc0Jna2pWVXdR?=
 =?utf-8?B?OUthMFUzRkRvZ3dCR2NMbkYwWUJiTWRpQzJJSXA2Uk9keWVzOUgvdmRvY2Jn?=
 =?utf-8?B?emgwNk5Ha2Z4U2pML253eVRWZXJzQk84dDRqVDRDOTJRM0tHbTl0M0oxbGdm?=
 =?utf-8?B?YzUrU1JZYkpqMllSQkRHQ2NFcENTUWFiVitvUGNyOUU5MnBiTWlXbUpoaWE5?=
 =?utf-8?B?Mm03bis4SDhMb0UzbVh0cEdCYW1iejJGL3VnVkpXVkhIQ1l5OWEwM0tpREJy?=
 =?utf-8?B?Y0g1STUzbmFqTWgxOHdseXB5RVh3U3JGMkI2amxEOTA1eE1OaktjME9MbGRa?=
 =?utf-8?B?b09YdnlBQlpCbXJXOHJLVnRhR3BoR3VEMG11NGJlSmdyQUUwSXo4U2g5emx5?=
 =?utf-8?B?L3htQm4vaDRuNUNBV3NCdUxpV0swTzFSNVViRmo3T24vNnBYam1yMWMvQm5D?=
 =?utf-8?B?aUc4YnpZdU05bmtOZWQwNkpVZGpqY1UxWjI4aG5FUTBnd0dTM2w1djloNVRY?=
 =?utf-8?B?M2VwTWdaRXI1OVVjT3MxZjlzSzdZT1JVOXdJc3pIdUQwY1M3MXJUN3U1Sldw?=
 =?utf-8?B?WWxSVVR5MXhIanA5Q2dXRUpCbVdlRXRtdVVtQTcyYWJpZmlIZHZ6Y0hTWjYy?=
 =?utf-8?B?SUgrNWpTUmFZVzFvU2tUcTEvc3RVc0ZTWFI3WnZpOTkvUUJkUEozZ29ZQVJp?=
 =?utf-8?B?YzlpcklWNSt2dnNFeHlyWWgrVnllLzR2YURkc2dIK3RybVArTkdzS2lIQ21E?=
 =?utf-8?B?RDZpK0hSK1Zrcno3ZndYc3UyK0tuM0JCR2s4MDkyMk9xQUo5N29senBBYzk0?=
 =?utf-8?B?cUhxNGNZMTgxVEhwTmdPVWMrbXZxVzgwWWU2QzFKWklVZGdxeUtzcHN3NCtM?=
 =?utf-8?B?Z1VweHkxTWpQeWQvYTRYTEdOaVYwSklybkxoMHROeEErS1NyVWFvYWxrZTgv?=
 =?utf-8?B?UjJtOFBVMC9wVWxkdDJZeVF6VHhiR0oxQmI0SExSeXQxeHVPOGxhZUtXUTRC?=
 =?utf-8?B?K3BIaEZRS1ZYZjl1S0Z0bjl3WVNpdklJVWozOXR5VXNKbDE5QmRwMUZPbE4w?=
 =?utf-8?B?Y2c1eUdWUG05aitmUlF6Nm5xRTR1MUJqeHFwcWNsZksxUW5iMko3amJ0NWRx?=
 =?utf-8?B?ZGNMbWR0aGFhTk55M0xiMkVxZDhvd3IzdFo3ZkN0YXN3emI1dG1Ld0txNWZl?=
 =?utf-8?B?SEx2TDFRYTdobnRmTmZDclR5bU9yUDQrejdBYUtqQXdtZTVvNWRwallPR0hp?=
 =?utf-8?B?SnBqNitpYWw5VDl4RXBpaVFpZU43bmNKaSt3Z3MvRXpDMW5TMTVkVWJBYjBS?=
 =?utf-8?B?YjZvdGt4MlN2Tlk1aFlmZEdzb0plZmplbGVRR0tkZmRyUkxQMS9nL3IxNHFo?=
 =?utf-8?B?REo4TTBiSFZES0pHTEx1U1BRV1Z1TzBHYzgzaC9BbjRsRDZXMjgvaFljeXdD?=
 =?utf-8?Q?VyRX4x2qCP3hXap49ruHWGu/T?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 58bf37d9-2cd9-4994-bee4-08dbce5e8db0
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Oct 2023 15:42:50.3406
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: hL4p8dSH8foNjs0Jjzmnii+3aCz/HmN/sbHNudFhuez4vm1ldRPG8gOb895baI46zrrsMiFmvN1dLvIigU2FBw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR04MB7822

On 12.10.2023 17:28, Nicola Vetrini wrote:
> The definition of IO_APIC_BASE contains a sum of an essentially enum
> value (FIX_IO_APIC_BASE_0) that is positive with an index that, in all
> instances, is unsigned, therefore the former is cast to unsigned, so that
> the operands are of the same essential type.
> 
> No functional change.
> ---
>  xen/arch/x86/include/asm/io_apic.h | 7 ++++---
>  1 file changed, 4 insertions(+), 3 deletions(-)

Oh, also - there's no S-o-b here.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 15:45:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 15:45:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617832.960876 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsPmy-0001ep-Vf; Mon, 16 Oct 2023 15:45:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617832.960876; Mon, 16 Oct 2023 15:45: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 1qsPmy-0001ei-Qn; Mon, 16 Oct 2023 15:45:52 +0000
Received: by outflank-mailman (input) for mailman id 617832;
 Mon, 16 Oct 2023 15:45: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=BBjo=F6=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qsPmx-0001ec-IO
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 15:45:51 +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 14f71e8b-6c3b-11ee-98d4-6d05b1d4d9a1;
 Mon, 16 Oct 2023 17:45:50 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PA4PR04MB7822.eurprd04.prod.outlook.com (2603:10a6:102:b8::19)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.35; Mon, 16 Oct
 2023 15:45:21 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%6]) with mapi id 15.20.6886.034; Mon, 16 Oct 2023
 15:45: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: 14f71e8b-6c3b-11ee-98d4-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=XvOppz9UAZkB5KEatf9xNpsGhmegQsDFunLfnaRJHw7fjR2oLcv/V2MH5veeRtjpKdQjhsDZShOlkN6P7jWgDJDLsDw7eTJ413qRdtqZrhJA53WAFKJfKMqS+Xd05AjCF+DPy+xdbnr1dpQcueNgpTUFUg2sP6mVs9Ymc55W3filuM3wlKCfO5D+X3B2A/C4lAZ4O6UFKSx7+/zrSG1dUtfZ5T+cqxWHj6J1B1FHmh3WyHVXtdzmd22QPfzHSaoG18pz0M2kuxsd+ojTIQL8zvmL0ZiANb6x76hzLBXWN6oR2ZaHKIvDtTanjaJGqc4KQnEPoH+9I10wqgHT9Svs0Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=5MtG5WG8C8z5WHNmPe3GjTvrXlY7bDtxauhg/a5/8hE=;
 b=elf04errhjTyTWH/s0xTsAMCbHZMxGx/pisZZUQLA8duffSeP0jEcfBj3EZkRm2u9dPgDh+rNSYtZ8R21VIv3CqnvAdhlYr+SCHaU7TSEROtdXtR6EBK7EoT05lx2Tw5zHF77h+ZtCQLA64l+7FYPTnwJeqHE/iLpSxaRVKr+ZYsM0qmXsSnE4L0UO3zN5N92FCiF+Beus1MgPVNPM6uu7riqJNtmycTUs5dOSDRNe8BLvzv4uGBjrp6XOwt/ebkepvbaHbw1VzZ1l99AUka85GczZC9fUQ7jnBZjpX0fd5KnRlln7afxVD4iKjs799H+Y3pQcW47ukl3c3uAlcB0w==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=5MtG5WG8C8z5WHNmPe3GjTvrXlY7bDtxauhg/a5/8hE=;
 b=ZDCGTqPt37DCDf4eXITXxDGsNx6639lJXBpHFrlTqhptqyyczy6V3fmH3m6uueVlBmrnLuVKx+oNPNa9PfVG/6mzoOa6NgD97y87u9B8NknL5wPLtF7V/dyXpiB6ANTU5YdWl0awODJQZNQNjPxSc5MK3SLckgV8HrRSA2lH0Qgc1HzME4eBgnuR+wsjMOzEUl2YzWChPKcCgLrsFnWM98cAnoYoa9dpd5KZFvbUyhrwO3mJ+0m5lXl0GNBoKu/Q378F1f4Vgdrl/FNY7j5m7s2IrV1Mqpn90uXhr0rY/PqiLA50imAvDxLGNoc+VUzttO8LNalepwgJWi3x7ovqeg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <f1f0fc3c-0eb2-81d6-132c-d6b2ed2d7308@suse.com>
Date: Mon, 16 Oct 2023 17:45: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][for-next v2 6/8] x86/mce: Move MC_NCLASSES into the
 enum mctelem_class
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.cooper3@citrix.com, roger.pau@citrix.com, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <cover.1697123806.git.nicola.vetrini@bugseng.com>
 <6622a2ec7079f86b73ae420e1e840d3d35ffb3a0.1697123806.git.nicola.vetrini@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <6622a2ec7079f86b73ae420e1e840d3d35ffb3a0.1697123806.git.nicola.vetrini@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0173.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:9f::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_|PA4PR04MB7822:EE_
X-MS-Office365-Filtering-Correlation-Id: 97b5ae39-5c60-4b4f-ffc8-08dbce5ee7c4
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	dV+hJZ+H/08zNDj2ZuTsXeOz6VAw6mTAP2gBpLPq3Qi6MLhXFeyLhdFIkc7NM5fYkbt6L7LJDjkAK2TMMjfiYBUcV1ThpoUP2oFeTy2Y0TSuLpK5endAphkeUkZOCghtUsTnxt+uFYiUcTNs//hUcp5UbZS8+D5T9yDAv5dIu1Pt8wwfmdNzAtkkY9vR4I9LeCel7tp8l/WRQfTIBw7VqnXvYnLd42mmlWeimbQQW2L5tUAjwoI7rlq36qrFpIkCquJyU46wyDpRJkidar+TPORydcJ8woKHWkNvSN/zKVaFgI8ykI33DXuX7/56P9J/Zp+ebVrU4J9PUCwhuUz+6ZY23xEQmfXChjE+McKFwyoOgmyab2CBSyrgTqp0QlkON0LQzUo6DXTJKf32+LrulngGUc2LPqUuLqPA/Bz6uoEiE+6UPSbdsddfaCZRQZ3ilhRR69q9jk1Ytfbq2K4PU9wBobOZDR/eQLxPyGAS7biJwYTGEHHg2so3WLey2LpWyGLpX9scAt8zEmjbmmVqiuVIP7wH1jarBA4KAbtWcLH7mTnm1vVSdtLRCZKR6bGp2yj6caLct1ojvOeAUR/LNfdx/yBdCmzzbkQSN2HjnX9fau7sKQqX4CFDzoXli+coEspl7VH/CKhkeDLbEbhmHQ==
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)(346002)(396003)(366004)(230922051799003)(1800799009)(186009)(64100799003)(451199024)(6486002)(2616005)(6916009)(66476007)(66556008)(478600001)(316002)(66946007)(6512007)(26005)(53546011)(6506007)(2906002)(5660300002)(8676002)(8936002)(4326008)(41300700001)(7416002)(86362001)(31696002)(36756003)(38100700002)(83380400001)(31686004)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?bmVxbGVwblljbXQyN1UwMTZOZXNiQjhaajVjVEh1N2pnUzBmYnRmdEdoekVQ?=
 =?utf-8?B?eDFxNWVCY1pVaWt0RFVRZHZnYWhOQW5sY2YrcFpsSnNPOGxUUXhybUpaQm91?=
 =?utf-8?B?cjdaZlAybFk5ZHFnUWFKYUhWc2ZMaXFwdmZET1I1eWVWVUZrblRqeGtIM2Zm?=
 =?utf-8?B?SlZ2QmxNNCtTSzdaejdFeHNJcCtMRVpDQmNBaVFTeEgzbUZlSFVrUzROclRX?=
 =?utf-8?B?a0UrLzNPaWVrZ3ZqQ0syUDVPaUw3SzFMVUl5Nm0rb1l3RDRuWkk3WDM1Tklw?=
 =?utf-8?B?cmN0ZE1rbTZNWEpWTURYeGtsT0N5TE5qWWtsSnhJQnE3dTA5bVBSak85QXhv?=
 =?utf-8?B?R1BYTjJ5VDRGMm5KTXFiSE9jZWwrZWNsbk1ibmtUY0svbmxER242SFdiTTVq?=
 =?utf-8?B?bmxlU1lNcVg4QlNQTWRScmdtcWx6cERVMlM3blB5UVY2Y1Z3aWdESGIzeUZU?=
 =?utf-8?B?TUxqTUhyK2U1M1ZwbXVEYk95bnZxMHEzcjhNUzl6ZVNLT1FwWEZoajhVWGFh?=
 =?utf-8?B?QzZXa2ZXdWMxNVJxbmJOVjVtcTVWdmRKSTZTanB5OWRLS3MrWVRiK0h4WEh3?=
 =?utf-8?B?a0NqNzJuSU91U2FkV2o4VWtxbFM5Z2FjNm1rRTBBa2NUU0c3T3BzbUlFN1Fu?=
 =?utf-8?B?THBJRFRsUVJCcUpyRnQwSWlRdCtQTldvQ3ViVC9IRGU3MmJGcXFiN0ZlZDRx?=
 =?utf-8?B?eHpTNisveXc5bmI0dUpxYk02aUphSFp6bWFoaVhWRTh1QXBxTnZ2SlMvcEJY?=
 =?utf-8?B?U21kZGFXaW1VZWRRTUJHS3JUQmdlbGRNTUNieVplNHJWbTljOW12NzJrWk9x?=
 =?utf-8?B?dThIejlHR2wyT2pCSHA4aGhWWnNBMEVRNjE2Y0xkWTkzL1dMUkUyWDVxL28r?=
 =?utf-8?B?a3R5UkxUWFBIWHIxYjZyOWMrT2cwNEZzcDNCcUVNM1dsZkp2UnVGQnFCTXVn?=
 =?utf-8?B?UzdGMkY2dEE5anRuaEVWNSt4eTc2TDBUNDVOak1HZ2VLU2k3eVU4eU8xRDJ1?=
 =?utf-8?B?YlV4cGJrSkRWeUhyZmVRN1BaOEdlY2t5OVNPcFVtam9VTkVyZzVZVC8ya1Zh?=
 =?utf-8?B?SGJHZFFjeDJnL2JPUVd3VjVmTkFXL0RlWnNvZFdWZWx6RVo1Mk9OMFpVMFRP?=
 =?utf-8?B?S0ozejVnT3J0UUdQakVCQktPV1R4UlZGUFZ6ekJYR2dxdzlEYnBlZ1k0NElU?=
 =?utf-8?B?OW8zcVBqSzk0TDRuK2kwTFljWnNOT3BCNzdjWkxMU2U0eEhjOXA1cm5Qbk5x?=
 =?utf-8?B?THFWWlBDVzE2QktVTEc1cEdod3ExbEQvdmNLR1VHb0ZEVGNGeWdZdjlOVXJI?=
 =?utf-8?B?WDRCc29VUFU0SlZraTgydzlZVkJRNldFeXVzSHJiUWFYajV2OW1ndzN0Ykhw?=
 =?utf-8?B?RGZpWmhRVVN0bnZvcmNIbzBSZ0dKSGlIaVowNTg5d25QaEpMUjVkVkdmMTFs?=
 =?utf-8?B?dG1mSUxQUHEvNEhEMGhKckxVcHVIOGhNMW9VZ25Ma01pcm55Y0JkbUtSZCtH?=
 =?utf-8?B?ZkpOdU1ZV0I1OTM1UTRkQU5mZVYydHR2aU5wU2NBSDdDMEdNYWlXL1N4YTAy?=
 =?utf-8?B?ZEVJNHp3ajZvUzg4VjB5bGx1dTRTczdpWGYzQmR1M2IwNk1xUndwTGlSMkZK?=
 =?utf-8?B?allGL3Uxa0poMGpCbG1yMDNuTnVBcVJiRWJGaFIvcG9yQzE0cXMzdEw0UkFt?=
 =?utf-8?B?cDgzTlFZb2htb1JXTVhCQmxET0p2Qkp6TFdFV0s2VUszQnJhVGRkZGFzeXc4?=
 =?utf-8?B?OUhlNWZZeXp6UWxxVjdVQ2RPQllyRUI0b0lPSXQ2NG9GUUVUbVdudzh3UmpR?=
 =?utf-8?B?SzUwelk0TkRxRlVOaWhCWjBENzNQa2IzTVlpa29HcmVYaWVEL2ZJWDBWaVRj?=
 =?utf-8?B?S0lCYUhkU0ppU1JTSE5YTVRQOC9tVW1JK2pnR2xCVHVHbjVlc09xblM1NXVU?=
 =?utf-8?B?M1VDbENqUlptYWZ4SjhuM2NpbHlOa09MRHNhWVJXaUk2VEd1azBzaUJ2Ulkr?=
 =?utf-8?B?ZEVHeVlMOXhrV2phU3lyb3RZMXliU2NGckc4OEdkUkczYkNacG1aTFNLKzI2?=
 =?utf-8?B?WHBrV2daYk92WGgzQVRNNjJQcitSa244Q2tRWDNoV0RkRlIyeGVDcWt0bTNX?=
 =?utf-8?Q?EDXi19Pvg2DRNWC4CqozXVFlY?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 97b5ae39-5c60-4b4f-ffc8-08dbce5ee7c4
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Oct 2023 15:45:21.4781
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: MpJcwKEOrrppY6RDiU01fDCH1gR2Co07Llyif5Jg5i7htZ2Gc8Nv/+VrxNq/0py2UvWgMv4JzT7m4c75Jm0lDA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR04MB7822

On 12.10.2023 17:28, Nicola Vetrini wrote:
> The definition of MC_NCLASSES contained a violation of MISRA C:2012
> Rule 10.1, therefore by moving it as an enumeration constant resolves the
> violation and makes it more resilient to possible additions to that enum.

And using an enumerator as array dimension specifier is okay for Misra?
That would be odd when elsewhere named enums are treated specially.

Jan

> --- a/xen/arch/x86/cpu/mcheck/mctelem.c
> +++ b/xen/arch/x86/cpu/mcheck/mctelem.c
> @@ -64,8 +64,6 @@ struct mctelem_ent {
>  
>  #define MC_NENT (MC_URGENT_NENT + MC_NONURGENT_NENT)
>  
> -#define	MC_NCLASSES		(MC_NONURGENT + 1)
> -
>  #define	COOKIE2MCTE(c)		((struct mctelem_ent *)(c))
>  #define	MCTE2COOKIE(tep)	((mctelem_cookie_t)(tep))
>  
> diff --git a/xen/arch/x86/cpu/mcheck/mctelem.h b/xen/arch/x86/cpu/mcheck/mctelem.h
> index d4eba53ae0e5..21b251847bc0 100644
> --- a/xen/arch/x86/cpu/mcheck/mctelem.h
> +++ b/xen/arch/x86/cpu/mcheck/mctelem.h
> @@ -55,8 +55,9 @@
>  typedef struct mctelem_cookie *mctelem_cookie_t;
>  
>  typedef enum mctelem_class {
> -	MC_URGENT,
> -	MC_NONURGENT
> +    MC_URGENT,
> +    MC_NONURGENT,
> +    MC_NCLASSES
>  } mctelem_class_t;
>  
>  extern void mctelem_init(unsigned int);



From xen-devel-bounces@lists.xenproject.org Mon Oct 16 15:49:41 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 15:49:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617837.960885 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsPqe-0004bd-Ln; Mon, 16 Oct 2023 15:49:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617837.960885; Mon, 16 Oct 2023 15:49: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 1qsPqe-0004bW-Hy; Mon, 16 Oct 2023 15:49:40 +0000
Received: by outflank-mailman (input) for mailman id 617837;
 Mon, 16 Oct 2023 15:49: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=BBjo=F6=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qsPqd-0004bQ-RJ
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 15:49:39 +0000
Received: from EUR01-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur01on2040.outbound.protection.outlook.com [40.107.13.40])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 9c6e1173-6c3b-11ee-9b0e-b553b5be7939;
 Mon, 16 Oct 2023 17:49:38 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by VI1PR04MB10028.eurprd04.prod.outlook.com (2603:10a6:800:1db::6)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.34; Mon, 16 Oct
 2023 15:49:06 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%6]) with mapi id 15.20.6886.034; Mon, 16 Oct 2023
 15: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>
X-Inumbo-ID: 9c6e1173-6c3b-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=PaJD8QkCwmjfTyl95ZOwHZY2u1H8mqTAej/ZnH/Y+7e0gmtmaWokWmOT4nRF6s05EthZ2eG5DQAIMkF+bt1ryZq/iHgTry80oEGsikUQInl6bHsvIno4CR9m6JaaOIybmGQjRBTOyI18cO4lxlzD+/KQib3v1JnJ/14Mk1bA6/Y028G9wNjFYroPP5u2hX1/4uCSyQvAc8Bnljfp4Ey3W3Kr/6xK7NnVNwifPryb17yjMyJkMU8Oyy2+iDtBJPh8VfBXIvoKgFOeuyS5y2eMpUjuo9QkQDXfEB9GYv+S4Cj0lvgX//cHaiRqYAlH4a41LoKTkPgP9b066/69idKaxw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=Co9c1WJR1J2gKj9Q39bNNmznPJ7Sf5SJUde9ztGPp1o=;
 b=AfLYUfzK6PNr/pTVMz6suJHnCcdveHQMf9dBwp0S0NtnOyw96lQcSwQAtn+KfUG04QIw6dBx3oNXBzpCcJxBtvW+vV4AYbR69oRRSHhpihW2iRswausu6Lx+oTZ1QZiox9ITqG9ONyw7ZSXlvr+h/w8+7Cl/imTiH4Zxj+JFnxpZ4mrNrWmZ8YxppF7n3pK1RA7uQDboV5sFoFA++Co+4goY8pvJ7vJassrEsv2fFE7+mvgy5kzth0H+BzXpwrnMWtM7zJ2OdcfoXwib9H7V+AM3R+4z25neullNpCzWNNKwlbvCvTm3neTLGLO8lSukmzF0w47a4xCh4pmcomdwxg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=Co9c1WJR1J2gKj9Q39bNNmznPJ7Sf5SJUde9ztGPp1o=;
 b=NNAN0onns4CfswnSr3ed8kWYxnzZa6sZDspYmnev2KzqTiC3iSI9fG0c28inTP34myqbypLeT8l8iWP3yPMXctPHsA3lnGdoED/yDWRyRbyVMHRhbumkEFNgftCUdWW+P+TJO433GsiSVYctu6e1zV2JIpziQquoGhShuUZ2j17Wi8ClGw5u/Ap9wOJzZSDjBAKQefkpXyMkMfOQ1vXIioVNLXMT7j1WWpSlQrD89QlmZPnKsPS/tgs5HhN5sg6naTMNfmr+/c6wSMRUADUU+wIZRkiQ2YIpPRgEy/kCvX4vV7ZVVrLTKUJbDsVcF/gZtPQhxM1GQbVsqv9rPH+kaQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <8c0a4331-4a89-4cb2-02ed-70cad3ad2116@suse.com>
Date: Mon, 16 Oct 2023 17:49:03 +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][for-4.19 v2 7/8] xen/types: address Rule 10.1 for
 DECLARE_BITMAP use
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.cooper3@citrix.com, roger.pau@citrix.com,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Wei Liu <wl@xen.org>, Paul Durrant <paul@xen.org>,
 xen-devel@lists.xenproject.org
References: <cover.1697123806.git.nicola.vetrini@bugseng.com>
 <f94b0c9411937a4003b86b5850b6d4ad91dff5d5.1697123806.git.nicola.vetrini@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <f94b0c9411937a4003b86b5850b6d4ad91dff5d5.1697123806.git.nicola.vetrini@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0173.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:9f::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_|VI1PR04MB10028:EE_
X-MS-Office365-Filtering-Correlation-Id: 0e842dbe-ca43-4d93-da73-08dbce5f6e00
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	fUIofPlcWjqV2nZixURdLBIylUKucbkCmoeyLHW6ECNQnh0pVuHmH0/K4+0VVnkU9fXrAvo0S0v8vtMW37uVU22g/BNxwYHZHqnbjQes9X97AT1dwhqJ/DadDVDdFWBbLTF3Sgf+g+eyg3Gx2QgbvBATn3OrsdzbN6PoXPlq0utV0n+y/bwx3lYjF9tAO/XP3LdRbA7Vl3U3UgIeMxjedq4++4Zq21uwYB/C0AxTkswOR7wZvKoFDmmg9s+pUy0pz4iNqyHQXpRxQCKKBzyP1d9KBkzCFaYXRCU6CrW6G3cv0ggMpV93mo46Ak0Gh2RtGTBEOsDe/woTHYLkJ5cbqNKJHhFHkodq3j+Kfu0lWRblrcfns35jOgHFria8waq/0YyfJBPNKPJjRo9C0DpKweZHy0pIvu6KqGoTzIeK2MKYkLrsKyV8fSaOSKchM72Tf/pEC9pv85JR+x9Unm1fAvclUFbtYY86WUZjhd4/pCRSYcYDMIJdLvdIxA3zyQ7qmZJP1vPWrDqS8QbZYZfbSZ4zfYD9xX/9ij8y2M4zedX8XFcABqSftNYXS1vCU4BKvHCh5LKbFXH4Y30NfNefqbs/JnOF/eQTkjaFbXSRHXlnpNXgboy9BPdc7vJzQvF8Ca1wsT5Vzx30k00SOPkgMQ==
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)(230922051799003)(1800799009)(186009)(451199024)(64100799003)(6512007)(38100700002)(26005)(2616005)(86362001)(478600001)(4326008)(8676002)(6486002)(4744005)(7416002)(8936002)(31696002)(2906002)(5660300002)(316002)(36756003)(41300700001)(66556008)(66476007)(6916009)(66946007)(54906003)(6666004)(53546011)(6506007)(31686004)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?OE1yaUt3b0Q4ZFg2YkV0L3FzYVZRNFltZVVlV3J3b3A1UlZYTXBwVWVEa0VS?=
 =?utf-8?B?M01lRGsybXBwcXFiTlg4amN4TlVoWklydkdsa2p4WTIyWVRWY1JNemdCaVE4?=
 =?utf-8?B?azdLcUxWRTFyQi9CRzRTMjkzRk5wTGFWWFkzeGNDQWJCcDVMVWdMMlRyQ0NE?=
 =?utf-8?B?QjVHdnZnalRaWlIxRi9COUNmWlpzZnl4S3VYU3pJdytnbE5tMFZwNDN1T0NH?=
 =?utf-8?B?SjRhWFhZRVhHN3lobjdyaU5lNk1NS2xRS3pld1NFbm5uODE1eXA3V0MrbDlk?=
 =?utf-8?B?Y0c0MVFPeHhSMVIrMDdJUXRlWVRnUFVqRjY3SUoxdW1ySWpzdXBVeVI0cHVp?=
 =?utf-8?B?MHdtWGtGUFgweDZERWVTY3FDNklZL2Zab1ZmVUFsREJ6U2RrWUxweXo4REt1?=
 =?utf-8?B?SjdhQWhrWlQrV0dwdkc3QTQycEZsWHNxc2oxR2h6VHhvWGFSUXdvMWlkVEo4?=
 =?utf-8?B?bmtUTGY1SUt0NnZmMHhCMlFtMmJMY0d3a01ETTBzUUxGYjhxV2NFdFNVVHVy?=
 =?utf-8?B?RmJlRkpyYjRGNElVMnkrcklEUjVIR2o4cWFtZzNaYTlTM0tJamtPQ3N0ajI2?=
 =?utf-8?B?SkZhTnJoVUFZaEUzWHFSQ1ZOZXBSVW95aWZBdVVmeDYvVWc4RlQzQms1eDhL?=
 =?utf-8?B?Zk1xVGliTnJuSXpIalZKVjhpVnZuYlFsQ252b3FMN0x6RllaV1V5ZnlSRXdi?=
 =?utf-8?B?QXNFb2dMdklJNHlHTndaZkorc0xRODlZTHY0M1hHdDNjc0dwNUpUR3k3QnEv?=
 =?utf-8?B?anRKSk9HZUdHbE9KTW11d2FDTkZtaVB3cHprdDI1ZWl3Sk52Z2V4UGxHYkZT?=
 =?utf-8?B?TmcwY3lnYldSWTBZeTlYUW92d3Z3aHcwNGVuN1ppbjhyMEl2WmpFTkhZOGwr?=
 =?utf-8?B?Tk9sMzRReWlIR3g3NXRhcXI2S3lpZEJKVnVaK2xwdEpSOExYbHlISUNlV1BD?=
 =?utf-8?B?S0l0b2tHVzM5V2NST1FSc1lpZWVjbGRnOHlOQVZ4RGJQMGJaWFZOZVpZSThp?=
 =?utf-8?B?RlpPU3A3QTlkSGt1c0M4QXZSWTgzazhUZ3FHQnZScEFybjBLRFhjYkxORDl5?=
 =?utf-8?B?V05HZ0lKZFc4TFU0UGV3eG01VWNTaGJnMWlaVWNJTDR6alZhdkl5TmJqZWVj?=
 =?utf-8?B?V0VnVVRHR0dMWSttT1VTejYyS1RtL1Y2emZCWVYyQ2pOL0h0L1ByNVM1N0JV?=
 =?utf-8?B?WlhIemEzdHp0QzB1dEVIK3J2VEtlOG52VVFsS2F5UFpEMEdibWtmNmZuNTFq?=
 =?utf-8?B?dEVVajAwNlpYUjVVNGd6UHc5eWpMMWJoVnhCbkdjYkNpUFBGZy80STlGZmlN?=
 =?utf-8?B?U2t2d0p5M21vakNXNTJKREhRSWRYWEc5Rm1DV0ZvaDVqK0RqRGJLMGFvcW9G?=
 =?utf-8?B?NXRQK08xNkVHY1o2eXFCUVdHcTA1MS9jL25wTVRBTHdycDlFbzAwT3ByblVy?=
 =?utf-8?B?WGlxOE55WWFBUXBqQ3J6ZmRoSW5VZGUrSDNRaE5YaEEzY0JmcnZ1aDNpajFM?=
 =?utf-8?B?cXpOaUpNbzJIbWlZQ1I2SjI2bWFXSE93OXN4VHdsRXRvdFp0QktlWGRPZ3VM?=
 =?utf-8?B?U2MzWXpOQzFETUViRndTMCtOWUhPZHlzOW9zVWlXZlVHUlFOVndETUN4ekRl?=
 =?utf-8?B?TjZZQ0wydHkrTGZWR3RDQmxyVFJkdHdZcFRPditvS0hGWmZTMTdOdkVFMy9u?=
 =?utf-8?B?TlE2eUVDbkpXZmdBODhHQ2VvYVBKakEyUHpMSzJzUEJLWm9ORDJDQ0ErbEgr?=
 =?utf-8?B?MDBpQ3RFdkxNZEJid1JnSGRjT1FCRTU1V3BseENRdXpCNCtqZ0pOUVp3ZkVT?=
 =?utf-8?B?OUJIZWNwbVYwZ3VTZUNRUFZmRkk2eG9Oc0NNWENHa2VDUjNNbjcva2ZiREdB?=
 =?utf-8?B?SlhxSnIxQkl6YTBmakk4bFE2TEpzVUFNc2tYenJBdFF2QXdBNnQvYmlnZDI4?=
 =?utf-8?B?SHBTelE0blBsUkJPQUNaMXFtYm51ekpmM1dRWGwxN2VGc0ladTNJSk1aUGN3?=
 =?utf-8?B?d2gzZ2dMa29VTlEvanR3WStadkdFSkoxNzVLbERXdEFCc3ByY2NJd3lFd2w1?=
 =?utf-8?B?MXhmVkdzZC9pN1dtZEQwWXJTU09GNzR4emZvaEJMRFZxWWhoTEZRcnZvU2JP?=
 =?utf-8?Q?CndH0Vrc2n6Y2qHHD2QaxorYa?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 0e842dbe-ca43-4d93-da73-08dbce5f6e00
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Oct 2023 15:49:06.6755
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: q6VYF32uakFmIa8W3WP0JRI5SSTWo7jMv/fbyd8Vf4KbVxux9ohl+PPKFgb2fkzqXKsy4yGpqr7cqP8vib431A==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR04MB10028

On 12.10.2023 17:28, Nicola Vetrini wrote:
> --- a/xen/include/xen/types.h
> +++ b/xen/include/xen/types.h
> @@ -22,6 +22,14 @@ typedef signed long ssize_t;
>  
>  typedef __PTRDIFF_TYPE__ ptrdiff_t;
>  
> +/*
> + * Users of this macro are expected to pass a positive value.

Is passing 0 going to cause any issues?

> + * Eventually, this should become an unsigned quantity, but this
> + * requires fixing various uses of this macro and BITS_PER_LONG in signed
> + * contexts, such as type-safe 'min' macro uses, which give rise to build errors
> + * when the arguments have differing signedness, due to the build flags used.
> + */

I'm not convinced of the usefulness of this part of the comment.

Jan

>  #define BITS_TO_LONGS(bits) \
>      (((bits)+BITS_PER_LONG-1)/BITS_PER_LONG)
>  #define DECLARE_BITMAP(name,bits) \



From xen-devel-bounces@lists.xenproject.org Mon Oct 16 16:05:32 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 16:05:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617841.960895 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsQ5t-0003hP-VT; Mon, 16 Oct 2023 16:05:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617841.960895; Mon, 16 Oct 2023 16:05: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 1qsQ5t-0003hI-SD; Mon, 16 Oct 2023 16:05:25 +0000
Received: by outflank-mailman (input) for mailman id 617841;
 Mon, 16 Oct 2023 16: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=2KAZ=F6=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qsQ5s-0003hC-Kg
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 16:05:24 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id cfe16da7-6c3d-11ee-98d4-6d05b1d4d9a1;
 Mon, 16 Oct 2023 18:05:23 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id C3EAF4EE0737;
 Mon, 16 Oct 2023 18:05: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: cfe16da7-6c3d-11ee-98d4-6d05b1d4d9a1
MIME-Version: 1.0
Date: Mon, 16 Oct 2023 18:05:22 +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.cooper3@citrix.com, roger.pau@citrix.com, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
Subject: Re: [XEN PATCH][for-next v2 6/8] x86/mce: Move MC_NCLASSES into the
 enum mctelem_class
In-Reply-To: <f1f0fc3c-0eb2-81d6-132c-d6b2ed2d7308@suse.com>
References: <cover.1697123806.git.nicola.vetrini@bugseng.com>
 <6622a2ec7079f86b73ae420e1e840d3d35ffb3a0.1697123806.git.nicola.vetrini@bugseng.com>
 <f1f0fc3c-0eb2-81d6-132c-d6b2ed2d7308@suse.com>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <d417da49a926fec385c95774035dc4cb@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 16/10/2023 17:45, Jan Beulich wrote:
> On 12.10.2023 17:28, Nicola Vetrini wrote:
>> The definition of MC_NCLASSES contained a violation of MISRA C:2012
>> Rule 10.1, therefore by moving it as an enumeration constant resolves 
>> the
>> violation and makes it more resilient to possible additions to that 
>> enum.
> 
> And using an enumerator as array dimension specifier is okay for Misra?
> That would be odd when elsewhere named enums are treated specially.
> 
> Jan
> 

Yes, the array subscript operator is one of the few places where an enum 
can be used as
an operand (also because negative values wouldn't compile), as opposed 
to mixing them
with ordinary integers.

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


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 16:07:35 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 16:07:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617847.960905 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsQ7y-0004Xk-90; Mon, 16 Oct 2023 16:07:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617847.960905; Mon, 16 Oct 2023 16:07: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 1qsQ7y-0004Xd-5u; Mon, 16 Oct 2023 16:07:34 +0000
Received: by outflank-mailman (input) for mailman id 617847;
 Mon, 16 Oct 2023 16:07: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 1qsQ7w-0004WF-Kl; Mon, 16 Oct 2023 16:07: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 1qsQ7w-0007Sv-Ds; Mon, 16 Oct 2023 16:07: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 1qsQ7w-0001rt-3G; Mon, 16 Oct 2023 16:07:32 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qsQ7w-0003WD-2n; Mon, 16 Oct 2023 16:07: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=SVsgYCi03BtrSJmqlXgIuP8Fsp9rWzHntnF/lpVShCc=; b=H5dF4j+QgmFLfWEwPhDWSSQs+Y
	xt86RZpRER4Cw+VeUSll7y9RUmhy8MtJN2u7xamDVQnaLQ5RwAxzI3Imz+OXfRwtlB7qpxPiUx6Vu
	Z22tYuIHf8iHgIjxSfcc1NSRWGDP7EdLxF7KDt1KG7AKxq5fTPJyXjKPaBF6omvdPNcQ=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183380-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 183380: tolerable FAIL - PUSHED
X-Osstest-Failures:
    linux-linus:test-amd64-amd64-xl-credit1:guest-start/debian.repeat:fail:heisenbug
    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-armhf-armhf-libvirt: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-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-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: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-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu: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-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-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-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-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd: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-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=58720809f52779dc0f08e53e54b014209d13eebb
X-Osstest-Versions-That:
    linux=fbe1bf1e5ff1e3b298420d7a8434983ef8d72bd1
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 16 Oct 2023 16:07:32 +0000

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

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-amd64-amd64-xl-credit1 22 guest-start/debian.repeat fail pass in 183386-retest

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183378
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183378
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183378
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183378
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183378
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183378
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183378
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183378
 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-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-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          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-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-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-qcow2 14 migrate-support-check        fail never pass
 test-amd64-amd64-libvirt-raw 14 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-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-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-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                58720809f52779dc0f08e53e54b014209d13eebb
baseline version:
 linux                fbe1bf1e5ff1e3b298420d7a8434983ef8d72bd1

Last test of basis   183378  2023-10-15 19:43:01 Z    0 days
Testing same since   183380  2023-10-16 02:44:29 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Linus Torvalds <torvalds@linux-foundation.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-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                                  fail    
 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
   fbe1bf1e5ff1..58720809f527  58720809f52779dc0f08e53e54b014209d13eebb -> tested/linux-linus


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 16:17:46 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 16:17:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617856.960915 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsQHf-00013W-Bc; Mon, 16 Oct 2023 16:17:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617856.960915; Mon, 16 Oct 2023 16: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 1qsQHf-00013P-8d; Mon, 16 Oct 2023 16:17:35 +0000
Received: by outflank-mailman (input) for mailman id 617856;
 Mon, 16 Oct 2023 16: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=2KAZ=F6=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qsQHd-00013J-Qi
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 16:17:33 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 82af9089-6c3f-11ee-98d4-6d05b1d4d9a1;
 Mon, 16 Oct 2023 18:17:32 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id 4FA294EE0737;
 Mon, 16 Oct 2023 18:17: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: 82af9089-6c3f-11ee-98d4-6d05b1d4d9a1
MIME-Version: 1.0
Date: Mon, 16 Oct 2023 18:17:32 +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.cooper3@citrix.com, roger.pau@citrix.com, Simone Ballarin
 <simone.ballarin@bugseng.com>, Doug Goldstein <cardoe@cardoe.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][for-next][for-4.19 v2 1/8] xen/include: add macro
 LOWEST_BIT
In-Reply-To: <93408661-721b-c4b3-d504-e65142bbdaea@suse.com>
References: <cover.1697123806.git.nicola.vetrini@bugseng.com>
 <bb0ba44f8a3944c22a1c7cf19196c7060e8adb4b.1697123806.git.nicola.vetrini@bugseng.com>
 <93408661-721b-c4b3-d504-e65142bbdaea@suse.com>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <42ee4de54f6d9bd80fb50db3545cbaf4@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 16/10/2023 17:33, Jan Beulich wrote:
> On 12.10.2023 17:28, Nicola Vetrini wrote:
>> --- a/automation/eclair_analysis/ECLAIR/deviations.ecl
>> +++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
>> @@ -274,6 +274,12 @@ still non-negative."
>>  -config=MC3R1.R10.1,etypes+={safe, 
>> "stmt(operator(logical)||node(conditional_operator||binary_conditional_operator))", 
>> "dst_type(ebool||boolean)"}
>>  -doc_end
>> 
>> +-doc_begin="The macro LOWEST_BIT encapsulates a well-known pattern to 
>> obtain the value
>> +2^ffs(x) for unsigned integers on two's complement architectures
>> +(all the architectures supported by Xen satisfy this requirement)."
>> +-config=MC3R1.R10.1,reports+={safe, 
>> "any_area(any_loc(any_exp(macro(^LOWEST_BIT$))))"}
>> +-doc_end
> 
> Why is this added here rather than by ...
> 
>> --- a/xen/include/xen/macros.h
>> +++ b/xen/include/xen/macros.h
>> @@ -8,8 +8,10 @@
>>  #define DIV_ROUND(n, d) (((n) + (d) / 2) / (d))
>>  #define DIV_ROUND_UP(n, d) (((n) + (d) - 1) / (d))
>> 
>> -#define MASK_EXTR(v, m) (((v) & (m)) / ((m) & -(m)))
>> -#define MASK_INSR(v, m) (((v) * ((m) & -(m))) & (m))
> 
> a SAF-<n>-safe comment here?
> 

One reason is that now that violations only belonging to tool 
configurations
and similar are documented in docs/misra/deviations.rst (committed in 
Stefano's
branch for-4.19 [1]). Also, there were disagreements on the SAF naming 
scheme, and
patches like those would not be accepted at the moment.

>> +#define LOWEST_BIT(x) ((x) & -(x))
> 
> Personally I consider the name misleading: I'd expect a macro of this
> name to return a bit number, not a mask with a single bit set. No
> good, reasonably short name comes to mind - ISOLATE_LOW_BIT() is too
> long for my taste.
> 
> Jan

[1] 
https://gitlab.com/xen-project/people/sstabellini/xen/-/commits/for-4.19

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


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 16:23:15 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 16:23:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617862.960924 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsQN2-000776-VA; Mon, 16 Oct 2023 16:23:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617862.960924; Mon, 16 Oct 2023 16: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 1qsQN2-00076z-Rl; Mon, 16 Oct 2023 16:23:08 +0000
Received: by outflank-mailman (input) for mailman id 617862;
 Mon, 16 Oct 2023 16:23: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 1qsQN1-00076a-NV
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 16:23: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 1qsQN0-0007nC-JS; Mon, 16 Oct 2023 16:23:06 +0000
Received: from 54-240-197-226.amazon.com ([54.240.197.226]
 helo=[192.168.9.197]) by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qsQN0-000794-At; Mon, 16 Oct 2023 16:23: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=cPp0j4hD4ZQAkeb330gMs/tZVDgrYE61d8i4CM5Id0o=; b=5LLcfTJWG2UunjF6ac0fiEc0zB
	ayqKi85xfYnbkStU+VGlUlK3CRNUmbGqASPaiiiQtfpN3xm3VwATaOTwEJaFSQQ42yS7cntcYDEMZ
	QxzbJnqNndiv3d2dnFhZb/eldaDqQQakRJxPCvT4hYFsGKi4WgQORINff//WNSUb6Nkk=;
Message-ID: <3bdf8745-ee34-4deb-be5e-5493fc202ade@xen.org>
Date: Mon, 16 Oct 2023 17:23:03 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v4 2/2] xen/arm: Enlarge identity map space to 10TB
Content-Language: en-GB
To: Bertrand Marquis <Bertrand.Marquis@arm.com>
Cc: Alexey Klimov <alexey.klimov@linaro.org>,
 Luca Fancellu <Luca.Fancellu@arm.com>, Michal Orzel <michal.orzel@amd.com>,
 "leo.yan@linaro.org" <leo.yan@linaro.org>,
 Xen-devel <xen-devel@lists.xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Rahul Singh <Rahul.Singh@arm.com>, Henry Wang <Henry.Wang@arm.com>
References: <20231013122658.1270506-1-leo.yan@linaro.org>
 <20231013122658.1270506-3-leo.yan@linaro.org>
 <169101f8-0475-45b1-b2c2-60dadd88d3f0@amd.com>
 <5a5e960b-e6fd-4617-b33a-10cf07f5bb52@xen.org>
 <8BCB97B4-CBDD-43D9-B0F8-7F637B8BE559@arm.com>
 <4B2BD200-5D3E-49D5-BF13-65B769AD4B90@arm.com>
 <CANgGJDqHu0CB=zzZqda18giLYDkL3My+gT592GLO-b9HsF2A4g@mail.gmail.com>
 <d3952200-9edb-4de0-94e3-c00c571a10b9@xen.org>
 <794B0D71-70A7-4546-98E0-EC01573E0D89@arm.com>
 <990b21a3-f8c7-4d02-a8ac-63d31794a76d@xen.org>
 <E9128690-2C1E-47D8-AD94-682C4318E082@arm.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <E9128690-2C1E-47D8-AD94-682C4318E082@arm.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit



On 16/10/2023 16:39, Bertrand Marquis wrote:
> 
> 
>> On 16 Oct 2023, at 17:31, Julien Grall <julien@xen.org> wrote:
>>
>>
>>
>> On 16/10/2023 16:07, Bertrand Marquis wrote:
>>> Hi,
>>>> On 16 Oct 2023, at 16:46, Julien Grall <julien@xen.org> wrote:
>>>>
>>>> CC Henry
>>>>
>>>> Hi Alexey,
>>>>
>>>> On 16/10/2023 15:24, Alexey Klimov wrote:
>>>>> On Mon, 16 Oct 2023 at 15:13, Luca Fancellu <Luca.Fancellu@arm.com> wrote:
>>>>>>
>>>>>>
>>>>>>
>>>>>>> On 16 Oct 2023, at 15:00, Bertrand Marquis <Bertrand.Marquis@arm.com> wrote:
>>>>>>>
>>>>>>> Hi
>>>>>>>
>>>>>>> +Luca and Rahul
>>>>>>>
>>>>>>>> On 16 Oct 2023, at 15:54, Julien Grall <julien@xen.org> wrote:
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> On 16/10/2023 09:44, Michal Orzel wrote:
>>>>>>>>> Hi,
>>>>>>>>
>>>>>>>> Hi,
>>>>>>>>
>>>>>>>>> On 13/10/2023 14:26, 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 10TB, allowing module loading
>>>>>>>>>> within the range of [0x0 .. 0x000009ff_ffff_ffff].
>>>>>>>>>>
>>>>>>>>>> Fixes: 1c78d76b67 ("xen/arm64: mm: Introduce helpers to prepare/enable/disable")
>>>>>>>>> I don't think a fixes tag applies here given that 2TB was just a number we believed is enough
>>>>>>>>> and all of this is platform dependent.
>>>>>>>>> This can be dropped on commit if committer agrees
>>>>>>>> Xen may have booted on that platform before hand. So this would be considered a regression and therefore a tag would be warrant.
>>>>>>>>
>>>>>>>> AFAICT, the commit is only present on the upcoming 4.18. So the question is whether Xen 4.17 booted out-of-the-box on ADLink? If the answer is yes, then we need to add a Fixes tag. But the correct one would be
>>>>>>>>
>>>>>>>
>>>>>>> @Rahul or Luca: could you give an answer here ?
>>>>>>> I know you used Xen on an AVA platform but was it booting out of the box ?
>>>>>>
>>>>>> I can’t say for Xen 4.17, but our nightly job has run successfully on AVA for the commit 730406ab81094115d9fb5ca00ba8d53cec1279b3
>>>>>> (docs/misra: add deviations.rst to document additional deviations.)
>>>>>>
>>>>>> We are not applying any patch for it to run on AVA.
>>>>> Most likely it is because your UEFI/BIOS firmware is 2.x, for instance
>>>>> 2.04.100.07.
>>>>> This fix if for AVA machine with older UEFI firmware 1.07.300.03.
>>>>
>>>> OOI, why not updating your firmware? I was expecting that it would also contain other critical fixes.
>>>>
>>>> With this in mind, I am now more in two mind to ask to merge this patch in Xen 4.18. On one hand, I understand it will help to boot on AVA machine with an older firmware. But on the other hand this is changing the memory layout quite late in the release. The risk seems limited because Xen is not loaded at the top of the virtual address space (there is the directmap afterwards).
>>>>
>>>> Henry (as the release manager) and others, any opinions?
>>> With the new information, I think it should be stated that it is fixing an issue on AVA platforms using an old firmware and platforms with and up-to-date firmware are not impacted.
>>> It is an important information to keep in mind that this is not a fix to be backported for example (and for me the fixes tag should not be kept).
>>
>> IMHO, the fixes tag should not be based solely on the AVA platform. It should be based on whether this could sensibly affect others. Right now, there is nothing that would indicate either way.
>>
>> And therefore a Fixes tag is sensible. This doesn't mean I would want to backport it right now (note that only 4.18 is affected). But this could change in the future if we get another report (post-4.18) on a platform where there are no other workaround.
>>
>> Stefano any opinions?
>>
>>> On whether or not it should go in the release, I am not quite sure that making a change in the layout at that stage is a good idea unless it is fixing a critical issue (which is not the case here).
>>> So i would vote no but not go against if someone argue to have it in.
>>
>> I agree with your statement with the information we have today. But it could become a critical issue if another platform is hit by the same issue and have no other workaround.
> 
> I am more seeing this as adding support for platforms with a topology that was not supported until now (because it was not encountered) rather than fixing a bug which is why i find it a bit odd to say that it is fixing some issue. But definitely this is an opinion and nothing that i could argue on :-)

This is a valid point. The problem is SUPPORT.md doesn't say anything 
about new HW. So in theory, if it works out-of-the-box on Xen 4.17, then 
one could expect that it should work on 4.18.

I can see why the owner of the platform may consider it critical. But I 
can see why the community may say it is not important.

This is not an easy one to solve because we don't exactly know all the 
use-cases where Xen is used. We only know the public ones.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 16:25:03 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 16:25:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617869.960935 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsQOr-0008Mk-9b; Mon, 16 Oct 2023 16:25:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617869.960935; Mon, 16 Oct 2023 16: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 1qsQOr-0008Md-6X; Mon, 16 Oct 2023 16:25:01 +0000
Received: by outflank-mailman (input) for mailman id 617869;
 Mon, 16 Oct 2023 16:24: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=fDQ6=F6=citrix.com=prvs=646b7f3c5=Andrew.Cooper3@srs-se1.protection.inumbo.net>)
 id 1qsQOp-0008I7-A6
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 16:24: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 8a096ab6-6c40-11ee-98d4-6d05b1d4d9a1;
 Mon, 16 Oct 2023 18:24: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: 8a096ab6-6c40-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1697473497;
  h=from:to:cc:subject:date:message-id:mime-version:
   content-transfer-encoding;
  bh=E8wbjDHabY5D/w/rdgUdQWa9yTs1C8lznXVUosJwlwA=;
  b=JdhFWE/AVVCPN77v3YbLAyxPXR4m3C17Kn9tTDbcUA9mgTtfbZPVjmcQ
   RdAGIowQLT2t5GmCCeKOsrUXm7ElBNI6LInS8Lfw9oRt96wOfKVdZeE+p
   JmZWJ1fWTHqUgTbZ6l2BtZUVNZXqnp4vxFJvCtod3T7nACl2oSIYxWqNR
   o=;
X-CSE-ConnectionGUID: yzlbLRSHSoK8GKn78rkUIQ==
X-CSE-MsgGUID: kaHAD0lkQNW0mX7KsF/kmA==
Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
X-SBRS: 4.0
X-MesageID: 126162428
X-Ironport-Server: esa1.hc3370-68.iphmx.com
X-Remote-IP: 162.221.159.70
X-Policy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:H1YPRK06Eqp0XnEYC/bD5R5xkn2cJEfYwER7XKvMYLTBsI5bpzAGn
 DYaWDuObPiOYWvyLdl3aorn90IO7ZPQz9ViQQRvpC1hF35El5HIVI+TRqvS04F+DeWYFR46s
 J9OAjXkBJppJpMJjk71atANlVEliOfQAOK6UbaYUsxIbVcMYD87jh5+kPIOjIdtgNyoayuAo
 tq3qMDEULOf82cc3lk8teTb83uDgNyo4GlD5wRnO6gS1LPjvyJ94Kw3dPnZw0TQGuG4LsbiL
 87fwbew+H/u/htFIrtJRZ6iLyXm6paLVeS/oiI+t5qK23CulQRrukoPD9IOaF8/ttm8t4sZJ
 OOhF3CHYVxB0qXkwIzxWvTDes10FfUuFLTveRBTvSEPpqFvnrSFL/hGVSkL0YMkFulfEHNK/
 9giExA2aTPTqMGwn+KhSdRNv5F2RCXrFNt3VnBIyDjYCbAtQIzZQrWM7thdtNsyrpkQR7CEP
 ZNfMGc+KkuYC/FMEg5/5JYWteGknHTgNRZfr0qYv/Ef6GnP1g1hlrPqNbI5f/TTH5sMwBzE/
 DKuE2LRARg6HfDHzTm81E30g9+QvjjVH4EXPejtnhJtqALKnTFCYPEMbnOrrP/8hkOgVtZ3L
 00P5jFovaU07FasTNT2Q1u/unHslgUHR9NaHuk+6QeM4qnZ+QCUAi4DVDEpQMMinN87Q3otz
 FDht9H0AT1itpWFRHTb8a2bxRuQEyUIKW4JZQcfUBAIpdLkpekbjB3VSc14OLWoldCzEjb1q
 xiqoS4klvMshMgE/6yh+BbMhDfEm3TSZldrvEONBDvjt14oItH9D2C11bTFxedSKIy9dGKhh
 38ny+e96r9eF5KwtRXYFY3hA4qVC+a53Cz02AA+QMV7qGz8oxZPbqgKvmsjeBkB3tIsPG+xO
 RCN42u98bcJZBOXgblLj5Vd4ijA5ZDnEMzsUPecRNdHaZgZmOSvp3o2OxD4M4wAiiERfUAD1
 XSzK5zE4Y4yU/gP8dZPb751PUUX7i4/33jPYpvw0g6q17GTDFbMF+ZaawrTM7hpvPzbyOkwz
 zq4H5LRoyizrcWkOnWHmWLtBQxiwYcH6WDe9JUMK7/rzvtOE2A9Ef7BqY4cl3het/0NzI/gp
 yjtMnK0PXKj3RUr3y3WMCE8AF4uNL4jxU8G0dsEZw3ygSl6Ot/zsc/ytfIfJNEayQCq9tYsJ
 9FtRilKKq0npujvk9jFUaTAkQ==
IronPort-HdrOrdr: A9a23:2XXDa68c8gXw9j8g10Vuk+C9I+orL9Y04lQ7vn2ZKCYlEfBw8v
 rFoB1173PJYVoqOE3I++rgBEDwex7hHPdOiOF7AV7IZmfbUQWTQ71f0Q==
X-Talos-CUID: 9a23:8LE142GHlV/FUEUXqmJ25koePvoeUkba7yf/AEnnWXxqdZysHAo=
X-Talos-MUID: 9a23:78BYJgo1c+JNfjfV82AezzJrFO5Eu6CtMWYyyZA25OqfG2tzPh7I2Q==
X-IronPort-AV: E=Sophos;i="6.03,229,1694750400"; 
   d="scan'208";a="126162428"
From: Andrew Cooper <andrew.cooper3@citrix.com>
To: Xen-devel <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, George Dunlap
	<George.Dunlap@eu.citrix.com>, Jan Beulich <JBeulich@suse.com>, "Stefano
 Stabellini" <sstabellini@kernel.org>, Wei Liu <wl@xen.org>, Julien Grall
	<julien@xen.org>, =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?=
	<roger.pau@citrix.com>, Juergen Gross <jgross@suse.com>, Henry Wang
	<Henry.Wang@arm.com>
Subject: [PATCH for-4.18] docs/sphinx: Lifecycle of a domid
Date: Mon, 16 Oct 2023 17:24:50 +0100
Message-ID: <20231016162450.1286178-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

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
---
CC: George Dunlap <George.Dunlap@eu.citrix.com>
CC: Jan Beulich <JBeulich@suse.com>
CC: Stefano Stabellini <sstabellini@kernel.org>
CC: Wei Liu <wl@xen.org>
CC: Julien Grall <julien@xen.org>
CC: Roger Pau Monné <roger.pau@citrix.com>
CC: Juergen Gross <jgross@suse.com>
CC: Henry Wang <Henry.Wang@arm.com>

Rendered form:
  https://andrewcoop-xen.readthedocs.io/en/docs-devel/hypervisor-guide/domid-lifecycle.html

I'm not sure why it's using the alibaster theme and not RTD theme, but I
don't have time to debug that further at this point.

This was written mostly while sat waiting for flights in Nanjing and Beijing.

If while reading this you spot a hole, congratulations.  There are holes which
need fixing...
---
 docs/glossary.rst                         |   9 ++
 docs/hypervisor-guide/domid-lifecycle.rst | 164 ++++++++++++++++++++++
 docs/hypervisor-guide/index.rst           |   1 +
 3 files changed, 174 insertions(+)
 create mode 100644 docs/hypervisor-guide/domid-lifecycle.rst

diff --git a/docs/glossary.rst b/docs/glossary.rst
index 8ddbdab160a1..1fd1de0f0e97 100644
--- a/docs/glossary.rst
+++ b/docs/glossary.rst
@@ -50,3 +50,12 @@ Glossary
 
      By default it gets all devices, including all disks and network cards, so
      is responsible for multiplexing guest I/O.
+
+   system domain
+     Abstractions within Xen that are modelled in a similar way to regular
+     :term:`domains<domain>`.  E.g. When there's no work to do, Xen schedules
+     ``DOMID_IDLE`` to put the CPU into a lower power state.
+
+     System domains have :term:`domids<domid>` and are referenced by
+     privileged software for certain control operations, but they do not run
+     guest code.
diff --git a/docs/hypervisor-guide/domid-lifecycle.rst b/docs/hypervisor-guide/domid-lifecycle.rst
new file mode 100644
index 000000000000..d405a321f3c7
--- /dev/null
+++ b/docs/hypervisor-guide/domid-lifecycle.rst
@@ -0,0 +1,164 @@
+.. SPDX-License-Identifier: CC-BY-4.0
+
+Lifecycle of a domid
+====================
+
+Overview
+--------
+
+A :term:`domid` is Xen's numeric identifier for a :term:`domain`.  In any
+operational Xen system, there are one or more domains running.
+
+Domids are 16-bit integers.  Regular domids start from 0, but there are some
+special identifiers, e.g. ``DOMID_SELF``, and :term:`system domains<system
+domain>`, e.g. ``DOMID_IDLE`` starting from 0x7ff0.  Therefore, a Xen system
+can run a maximum of 32k domains concurrently.
+
+.. note::
+
+   Despite being exposed in the domid ABI, the system domains are internal to
+   Xen and do not have lifecycles like regular domains.  Therefore, they are
+   not discussed further in this document.
+
+At system boot, Xen will construct one or more domains.  Kernels and
+configuration for these domains must be provided by the bootloader, or at
+Xen's compile time for more highly integrated solutions.
+
+Correct functioning of the domain lifecycle involves ``xenstored``, and some
+privileged entity which has bound the ``VIRQ_DOM_EXC`` global event channel.
+
+.. note::
+
+   While not a strict requirement for these to be the same entity, it is
+   ``xenstored`` which typically has ``VIRQ_DOM_EXC`` bound.  This document is
+   written assuming the common case.
+
+Creation
+--------
+
+Within Xen, the ``domain_create()`` function is used to allocate and perform
+bare minimum construction of a domain.  The :term:`control domain` accesses
+this functionality via the ``DOMCTL_createdomain`` hypercall.
+
+The final action that ``domain_create()`` performs before returning
+successfully is to enter the new domain into the domlist.  This makes the
+domain "visible" within Xen, allowing the new domid to be successfully
+referenced by other hypercalls.
+
+At this point, the domain exists as far as Xen is concerned, but not usefully
+as a VM yet.  The toolstack performs further construction activities;
+allocating vCPUs, RAM, copying in the initial executable code, etc.  Domains
+are automatically created with one "pause" reference count held, meaning that
+it is not eligible for scheduling.
+
+When the toolstack has finished VM construction, it send an ``XS_INTRODUCE``
+command to ``xenstored``.  This instructs ``xenstored`` to connect to the
+guest's xenstore ring, and fire the ``@introduceDomain`` watch.  The firing of
+this watch is the signal to all other components which care that a new VM has
+appeared and is about to start running.
+
+When the ``XS_INTRODUCE`` command returns successfully, the final action the
+toolstack performs is to unpause the guest, using the ``DOMCTL_unpausedomain``
+hypercall.  This drops the "pause" reference the domain was originally created
+with, meaning that the vCPU(s) are eligible for scheduling and the domain will
+start executing its first instruction.
+
+.. note::
+
+   It is common for vCPUs other than 0 to be left in an offline state, to be
+   started by actions within the VM.
+
+Termination
+-----------
+
+The VM runs for a period of time, but eventually stops.  It can stop for a
+number of reasons, including:
+
+ * Directly at the guest kernel's request, via the ``SCHEDOP_shutdown``
+   hypercall.  The hypercall also includes the reason for the shutdown,
+   e.g. ``poweroff``, ``reboot`` or ``crash``.
+
+ * Indirectly from certain states.  E.g. executing a ``HLT`` instruction with
+   interrupts disabled is interpreted as a shutdown request as it is a common
+   code pattern for fatal error handling when no better options are available.
+
+ * Indirectly from fatal exceptions.  In some states, execution is unable to
+   continue, e.g. Triple Fault on x86.
+
+ * Directly from the device model, via the ``DMOP_remote_shutdown`` hypercall.
+   E.g. On x86, the 0xcf9 IO port is commonly used to perform platform
+   poweroff, reset or sleep transitions.
+
+ * Directly from the toolstack.  The toolstack is capable of initiating
+   cleanup directly, e.g. ``xl destroy``.  This is typically an administration
+   action of last resort to clean up a domain which malfunctioned but not
+   terminated properly.
+
+ * Directly from Xen.  Some error handling ends up using ``domain_crash()``
+   when Xen doesn't think it can safely continue running the VM.
+
+Whatever the reason for termination, Xen ends up calling ``domain_shutdown()``
+to set the shutdown reason and deschedule all vCPUs.  Xen also fires the
+``VIRQ_DOM_EXC`` event channel, which is a signal to ``xenstored``.
+
+Upon receiving ``VIRQ_DOM_EXC``, ``xenstored`` re-scans all domains using the
+``SYSCTL_getdomaininfolist`` hypercall.  If any domain has changed state from
+running to shut down, ``xenstored`` fires the ``@releaseDomain`` watch.  The
+firing of this watch is the signal to all other components which care that a
+VM has stopped.
+
+.. note::
+
+   Xen does not treat reboot differently to poweroff; both statuses are
+   forwarded to the toolstack.  It is up to the toolstack to restart the VM,
+   which is typically done by constructing a new domain.
+
+.. note::
+
+   Some shutdowns may not result in the cleanup of a domain.  ``suspend`` for
+   example can be used for snapshotting, and the VM resumes execution in the
+   same domain/domid.  Therefore, a domain can cycle several times between
+   running and "shut down" before moving into the destruction phase.
+
+Destruction
+-----------
+
+The domain object in Xen is reference counted, and survives until all
+references are dropped.
+
+The ``@releaseDomain`` watch is to inform all entities that hold a reference
+on the domain to clean up.  This may include:
+
+ * Paravirtual driver backends having a grant map of the shared ring with the
+   frontend.
+ * A device model with a map of the IOREQ page(s).
+
+The toolstack also has work to do in response to ``@releaseDomain``.  It must
+issue the ``DOMCTL_destroydomain`` hypercall.  This hypercall can take minutes
+of wall-clock time to complete for large domains as, amongst other things, it
+is freeing the domain's RAM back to the system.
+
+The actions triggered by the ``@releaseDomain`` watch are asynchronous.  There
+is no guarantee as to the order in which actions start, or which action is the
+final one to complete.  However, the toolstack can achieve some ordering by
+delaying the ``DOMCTL_destroydomain`` hypercall if necessary.
+
+Freeing
+-------
+
+When the final reference on the domain object is dropped, Xen will remove the
+domain from the domlist.  This means the domid is no longer visible in Xen,
+and no longer able to be referenced by other hypercalls.
+
+Xen then schedules the object for deletion at some point after any concurrent
+hypercalls referencing the domain have completed.
+
+When the object is finally cleaned up, Xen fires the ``VIRQ_DOM_EXC`` event
+channel again, causing ``xenstored`` to rescan an notice that the domain has
+ceased to exist.  It fires the ``@releaseDomain`` watch a second time to
+signal to any components which care that the domain has gone away.
+
+E.g. The second ``@releaseDomain`` is commonly used by paravirtual driver
+backends to shut themselves down.
+
+At this point, the toolstack can reuse the domid for a new domain.
diff --git a/docs/hypervisor-guide/index.rst b/docs/hypervisor-guide/index.rst
index e4393b06975b..af88bcef8313 100644
--- a/docs/hypervisor-guide/index.rst
+++ b/docs/hypervisor-guide/index.rst
@@ -6,6 +6,7 @@ Hypervisor documentation
 .. toctree::
    :maxdepth: 2
 
+   domid-lifecycle
    code-coverage
 
    x86/index

base-commit: dc9d9aa62ddeb14abd5672690d30789829f58f7e
prerequisite-patch-id: 832bdc9a23500d426b4fe11237ae7f6614f2369c
-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Mon Oct 16 16:30:40 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 16:30:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617874.960945 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsQU8-00041O-Sw; Mon, 16 Oct 2023 16:30:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617874.960945; Mon, 16 Oct 2023 16:30: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 1qsQU8-00041H-QC; Mon, 16 Oct 2023 16:30:28 +0000
Received: by outflank-mailman (input) for mailman id 617874;
 Mon, 16 Oct 2023 16:30: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=BBjo=F6=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qsQU8-00041B-78
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 16:30:28 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur05on2061d.outbound.protection.outlook.com
 [2a01:111:f400:7d00::61d])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 4ffd316a-6c41-11ee-98d4-6d05b1d4d9a1;
 Mon, 16 Oct 2023 18:30:26 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM8PR04MB7363.eurprd04.prod.outlook.com (2603:10a6:20b:1c7::8)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.35; Mon, 16 Oct
 2023 16:30:24 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%6]) with mapi id 15.20.6886.034; Mon, 16 Oct 2023
 16: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: 4ffd316a-6c41-11ee-98d4-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=jOYxYYGs4jQnCdrP0RbglGI44FBo9V68yymQBc7WGrr/lIuX47RG/j56gEgoZuYjn6sR7plW4U1r6CzU90zmfr1U2HmUFdTAqialnMaJDMiINIHs/9slXT74T1Mpy0ZhXxnFgBK4R08mmiaQeYsAKQea3tF66IH/hmbgjanD/bsu/Y8rR3Ob7hVSdeIg6JBYbtm4dY3IZ/V4kBLlyJoR5XJ/EjqDkVocKYyOZdEeXgAQXBokeiQJWH/EgUL2640cR8gMMN+2xDuGtevTAEhQxATd0KFAXWAAWPP5sslrzqaWg5XJG4XLY+oiiW4brm84Hi9RlUjXDinYmlrGvotVBg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=v2DvKHWFgJ3dnr3loMFhHQayiithKGZo61d1xtOTSMs=;
 b=ATfHZShmrkKlcnDmLn9858OrGBK+hGBXmbpEMuySorQeyg3DWn2lXwwg3obXam1lad4i3QX7yPl4FcJXPPBTzTHK1CW5AnM23MMEufdjfqbwg9wlfVd52IL7IywnuPjbi1Ed7InqV4YGzd0TKT2msN2r7xs//byurb6kvItSn77StwnJVQou2G838KBd1bCf5WXqNP8c9S9mAcT4GHShbOlxnBSYPXHBZ61GBPq5CCxKNoT0iUDtRHeLXRqpwsrj/e+aWhnzCKYDAG/4UtN0WQXTyP+/rbe4i/Jbk+ISjzFL8O6rvsqt7ttyWnWUK5Q7oNIpe3fpSPddfK12xavjjA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=v2DvKHWFgJ3dnr3loMFhHQayiithKGZo61d1xtOTSMs=;
 b=BKa9LuBM0HzIENbDll/yWS6hWV1l6J4TrPWqHOy/QNYUr+4d2ALlmLs/OKtf5ber/Pht+c5NeIqmTO/Ca7kN6Y7OmCF6sQlBjYmQ7gQfDvBo8IMw0/mF3rxgIZ3w+vM/B9iiMzVvOwe4RlOrffPhRpjt1LON1sIib015O2NC/okgOwhCf3+RZUc6bKRlN2BQphrFVdX0Gm5NajqBy20muekQu7/BEZvhop5teqWSTw5EePczuRrZW40npazPuWmkpQq/4Wai2JMxEftJ4j9/zL+oCFsMtSvZK3FT4Jt44BsMi4dbstWnM3+CXKRSmQbx/dGkUmFVN4kP0UvWiOJTUg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <08286993-6a83-b928-6398-e129397927a0@suse.com>
Date: Mon, 16 Oct 2023 18:30:21 +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][for-next][for-4.19 v2 1/8] xen/include: add macro
 LOWEST_BIT
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.cooper3@citrix.com, roger.pau@citrix.com,
 Simone Ballarin <simone.ballarin@bugseng.com>,
 Doug Goldstein <cardoe@cardoe.com>, George Dunlap
 <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Wei Liu <wl@xen.org>, xen-devel@lists.xenproject.org
References: <cover.1697123806.git.nicola.vetrini@bugseng.com>
 <bb0ba44f8a3944c22a1c7cf19196c7060e8adb4b.1697123806.git.nicola.vetrini@bugseng.com>
 <93408661-721b-c4b3-d504-e65142bbdaea@suse.com>
 <42ee4de54f6d9bd80fb50db3545cbaf4@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <42ee4de54f6d9bd80fb50db3545cbaf4@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0079.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:1e::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_|AM8PR04MB7363:EE_
X-MS-Office365-Filtering-Correlation-Id: 9fd20a04-c19a-4b99-215f-08dbce653298
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	MUXL7Jqr6v98ZtLV1f5BuGf+rftTm70TPvHHN5khCf/OFMygF+p2hKioQ3zvEN9FzxPWv5Xneqw1F1sWu9lfCnw1WTOOgpWROaGBh83WqKWupON+h70WswENMQA0Bu8BBGLhx8tMZ/25n9LL6n++jU5gvzn6WC2bfWTllqSiZxuW1spA98tE2vGVph1VrKBMc6FDEBJdEwfeckCTaLR4Y+UdRODtP40uuoLtTjdO96clWehM5gMqwI5pvLEjzRNJc5Yw136Gy/W/AdDWPq97etl6OJ4cr1UwmvcR5Xozu6OJkJv5G+hMSjp6PUDlm7QCxEMvm0UrSEu71OSfCM0WPWaC1xZZ32I848QZegFByO5qYwimtXLdv722dBvfgvLvoxX6Gzm6q74NR5vKBr75lifktW9W7hHPxglrt61Xn1dSS/7rvRJd1zTxh6+Xnims4474WmoxGmVZZOSJvX/7aiCh+c3wR5luOcUBvlbBgMBf368ShKwjRSMFaZw0TChlQilIH15GD+wxgBudt2aYDogkO3CjrK20v6s/9NZUEhss+SkJ1ovXFhTBtgA3jwHD9Z23cPM4pKH86/ZznXvCeU04VOiH6yHQ5K40mN1jLgPSCcVXqKytrqhpgQOrcp2VF6d5x7WfpG1VrgKOXOtsRA==
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)(39860400002)(366004)(346002)(136003)(230922051799003)(1800799009)(186009)(64100799003)(451199024)(2616005)(6512007)(7416002)(66946007)(66556008)(66476007)(8676002)(4326008)(54906003)(8936002)(316002)(6916009)(6666004)(41300700001)(6506007)(53546011)(5660300002)(478600001)(2906002)(6486002)(38100700002)(31696002)(86362001)(36756003)(31686004)(26005)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?Y3NyREUrOTB6THRuUlJYazZMbk9mS0QxU3pVbzhGUUM4aGxrR05JWndCMXdN?=
 =?utf-8?B?dUVYL2tCQkhWdW9uNXQ5ODNlMFRCUmkvWnZ6WXdxZ25tZW5pbU1YNkdodXVa?=
 =?utf-8?B?VFBWNGJpRGtwQThsR0JYRjRUM0MyQnk1RHJjQkhyS3ZwTnBPYitoUWNnMTBk?=
 =?utf-8?B?RDhoS2k0ampOa3cwbGtEOWRjNlVJR3VmY1BKVnpPaTVGamJpYTREcE9FRHc2?=
 =?utf-8?B?QW8zYkdacVdJdExzMWpCcVJjNURKZmtTV240cEpYNTczY2N5RCtRVGMyVldS?=
 =?utf-8?B?aHlRNU4wWUR2UWVMRUk3VEF3cGV6WVlWczljR2pIanhLUGNhYUVSNTQ3RjA4?=
 =?utf-8?B?SkhiNDV0NUkyeU1oQTdNYW1EV0JtcjlWckFIb3dVTHhaTG9SaTNjemdTdUtI?=
 =?utf-8?B?VEpMRm5PVmNYeTVHR09CNDBrVEJ1aHE2QkwvWlcxRmZFT2kyZnpvbjdUQ1ZH?=
 =?utf-8?B?QzJrMVJBdTdNZDJUZkhzblI1cU9SVDZpVkVWTGs4bVR5YnJKUkFobmZJSy9T?=
 =?utf-8?B?VGt0SkgwWnVlL0VGeWpyMWRCRG5VQzZTbWFSck1SN0tOTFowbGlhcFc3WVR1?=
 =?utf-8?B?WG82QnN5aVVhazNOQkNjYU1xamsrbGJrUUp5RHBSTlNqUllVYkZuQ01rajhE?=
 =?utf-8?B?MzQybmEyU1gzMWFlS09kOFY1Qk5wTWoycFQrdUhlS3pnREtjWlpRT2RuRUhx?=
 =?utf-8?B?QmhFOHdNS0U5MFIxdVo0QTdKNXptLzZLRW5FcXQxZVFJNlRhYzJ4clo1dWpY?=
 =?utf-8?B?U29tbXMyTXhDSjIvbytkTVRrZWd3NldiQnJzUWsxeENudndoREtBMVdPejE5?=
 =?utf-8?B?ZmNPTFdneFpnL2JYVEl5NnBnUVcyRzJ4SHRId24yenZ2czcwQm1Pa2ljMS95?=
 =?utf-8?B?MjFKM3A2SU1HRTlabzI5Ti93UENIRzFXTEMxQmdaWFVVZlJiYk9ETWhuTTZL?=
 =?utf-8?B?QklkVU16YldFYVhLWDJuQUpYOHArYjNlMDhtVmNWaFpSZjV2TnhBLzJuQWVu?=
 =?utf-8?B?R1hwa0FCMDRwV1pXbWM4eFZKb25BQVFRSEZmdldQdGViZ0V2bnVVbkNYQ2V1?=
 =?utf-8?B?MXBsNUJBZ21XQytMaktndDB5cnR2cE1EdWxLNWJPZTM3Zkd6STdUWEVXU2Nu?=
 =?utf-8?B?WldkTFlzaTNLTEJOWk91NkhYUmZqWkQ2bi94b1BVSk55SklZMEtEcHZVRklM?=
 =?utf-8?B?QWhRY2d3M21oMndtWW9Yak5CcWRMZ2ZHZzZDYmw3R2ZhUCtJbitwM1VwOEp4?=
 =?utf-8?B?N3ZnMjdQN0wyVjRTM2pkTEFpSU9TTDNSNDhHdmtXMUhZMFdycXB5TGtCbDFQ?=
 =?utf-8?B?d1NzQU9oTHZrTWFnOExENGdsZ2JhaVd4VmRXSDg0bldpN09qbVljaHdqTm1i?=
 =?utf-8?B?REcxQkVZUHhTYTFJSzVYaG1BYnByQVVwck9hNXlPRVFmSklISGg3dWJDbXA0?=
 =?utf-8?B?c0ViaEM2VmEvY3Z5dEo2dHU4Y2dwOHZVb2grTmF0ZkVISndCYjFPNHdDT0s5?=
 =?utf-8?B?bmNuZ2NrS2NaTGVQTUpuT2svTkVEN1ZORit3WmMwc0pDVG5HRHBaSnZqK3Ry?=
 =?utf-8?B?UFF4Z3h3ZjVOZnh0QUFkaDZJR2VxQ3ZLbmxxK0pWUFE2WEs3Q2NScTYzMnF1?=
 =?utf-8?B?eklqVDNwMmNBU1JWQ1dTWkxRMkx0WElTNGp3WjRRd1lyQmlpanc3bi9KSUxw?=
 =?utf-8?B?ZS9pL2dvREp2emF0Tzd5czRNajFZTjJBVFZ1ekV1ZEZjVXozK2xQNC9hUXpT?=
 =?utf-8?B?WEtjcDI3YnpOSll4MXRHNjRxL284aG1uUHE4TXdCUlpUeEQ1aU5QY3NXUTcx?=
 =?utf-8?B?Q3MvdTRnWjVnWEdKb1V1dmhrR3dBT3U1azEzS0RlWmxkZG9rMFhnQ3Ixaktm?=
 =?utf-8?B?Zm1tZXBKK0E2YmlYLzZqRTFXOGlLVWJrR0ZmWEI2dGQxcFpTUXQ0VUsvNWJv?=
 =?utf-8?B?NnlYSTM3NHMvb3pIWVBJc3QrUnQrV1ZiMmhlYXFLTko2UFFSY2hKbG4wWnZz?=
 =?utf-8?B?aDBDUWZNbGhmbWRtdjQxa3hiSHJkZmlTeEZmOWtNN2oyRHRlbVJCTWRkdTVn?=
 =?utf-8?B?aGx4a3lhSmxGUUtoMDA4cUVIcllNa2VLTm9sR0xMRDd0VjhET3lpMGU2Vy9Q?=
 =?utf-8?Q?tgaUTiKBssTm0tbFZSVqiTKKD?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 9fd20a04-c19a-4b99-215f-08dbce653298
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Oct 2023 16:30:24.0336
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 70giWG/U5xw8g43gSH22ab9uOwoWaRb026uxbM5Llv7lVSpnjofkogDZuEwCv1ZB6/N4vlz2RrmQV8fhfaTq6A==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8PR04MB7363

On 16.10.2023 18:17, Nicola Vetrini wrote:
> On 16/10/2023 17:33, Jan Beulich wrote:
>> On 12.10.2023 17:28, Nicola Vetrini wrote:
>>> --- a/automation/eclair_analysis/ECLAIR/deviations.ecl
>>> +++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
>>> @@ -274,6 +274,12 @@ still non-negative."
>>>  -config=MC3R1.R10.1,etypes+={safe, 
>>> "stmt(operator(logical)||node(conditional_operator||binary_conditional_operator))", 
>>> "dst_type(ebool||boolean)"}
>>>  -doc_end
>>>
>>> +-doc_begin="The macro LOWEST_BIT encapsulates a well-known pattern to 
>>> obtain the value
>>> +2^ffs(x) for unsigned integers on two's complement architectures
>>> +(all the architectures supported by Xen satisfy this requirement)."
>>> +-config=MC3R1.R10.1,reports+={safe, 
>>> "any_area(any_loc(any_exp(macro(^LOWEST_BIT$))))"}
>>> +-doc_end
>>
>> Why is this added here rather than by ...
>>
>>> --- a/xen/include/xen/macros.h
>>> +++ b/xen/include/xen/macros.h
>>> @@ -8,8 +8,10 @@
>>>  #define DIV_ROUND(n, d) (((n) + (d) / 2) / (d))
>>>  #define DIV_ROUND_UP(n, d) (((n) + (d) - 1) / (d))
>>>
>>> -#define MASK_EXTR(v, m) (((v) & (m)) / ((m) & -(m)))
>>> -#define MASK_INSR(v, m) (((v) * ((m) & -(m))) & (m))
>>
>> a SAF-<n>-safe comment here?
>>
> 
> One reason is that now that violations only belonging to tool 
> configurations
> and similar are documented in docs/misra/deviations.rst (committed in 
> Stefano's
> branch for-4.19 [1]).

But tool configuration means every analysis tool needs configuring
separately. That's why the comment tagging scheme was decided to be
preferred, iirc.

> Also, there were disagreements on the SAF naming 
> scheme, and
> patches like those would not be accepted at the moment.

Well, that needs resolving. The naming there shouldn't lead to patches
being accepted that later may need redoing.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 16:36:15 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 16:36:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617879.960954 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsQZe-0005ge-Jx; Mon, 16 Oct 2023 16:36:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617879.960954; Mon, 16 Oct 2023 16: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 1qsQZe-0005gX-HL; Mon, 16 Oct 2023 16:36:10 +0000
Received: by outflank-mailman (input) for mailman id 617879;
 Mon, 16 Oct 2023 16: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=2KAZ=F6=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qsQZd-0005gR-Ks
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 16:36:09 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 183239b9-6c42-11ee-98d4-6d05b1d4d9a1;
 Mon, 16 Oct 2023 18:36:02 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id 202D34EE0737;
 Mon, 16 Oct 2023 18:36: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: 183239b9-6c42-11ee-98d4-6d05b1d4d9a1
MIME-Version: 1.0
Date: Mon, 16 Oct 2023 18:36:02 +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.cooper3@citrix.com, roger.pau@citrix.com, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
Subject: Re: [XEN PATCH][for-next v2 5/8] x86/io_apic: address violation of
 MISRA C:2012 Rule 10.1
In-Reply-To: <262b878b-578f-451a-6e7d-18af4a826848@suse.com>
References: <cover.1697123806.git.nicola.vetrini@bugseng.com>
 <1fe7602b48cabb7710025f6b4e32e9b99a1faacd.1697123806.git.nicola.vetrini@bugseng.com>
 <262b878b-578f-451a-6e7d-18af4a826848@suse.com>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <e4e6f6e9e0157a89fe50179d6f8fdbcd@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 16/10/2023 17:42, Jan Beulich wrote:
> On 12.10.2023 17:28, Nicola Vetrini wrote:
>> The definition of IO_APIC_BASE contains a sum of an essentially enum
>> value (FIX_IO_APIC_BASE_0) that is positive with an index that, in all
>> instances, is unsigned, therefore the former is cast to unsigned, so 
>> that
>> the operands are of the same essential type.
>> 
>> No functional change.
>> ---
>>  xen/arch/x86/include/asm/io_apic.h | 7 ++++---
>>  1 file changed, 4 insertions(+), 3 deletions(-)
>> 
>> diff --git a/xen/arch/x86/include/asm/io_apic.h 
>> b/xen/arch/x86/include/asm/io_apic.h
>> index a7e4c9e146de..a0fc50d601fe 100644
>> --- a/xen/arch/x86/include/asm/io_apic.h
>> +++ b/xen/arch/x86/include/asm/io_apic.h
>> @@ -14,9 +14,10 @@
>>   * Copyright (C) 1997, 1998, 1999, 2000 Ingo Molnar
>>   */
>> 
>> -#define IO_APIC_BASE(idx)                                             
>>   \
>> -    ((volatile uint32_t *)(__fix_to_virt(FIX_IO_APIC_BASE_0 + (idx))  
>>   \
>> -                           + (mp_ioapics[idx].mpc_apicaddr & 
>> ~PAGE_MASK)))
>> +#define IO_APIC_BASE(idx)                                     \
>> +    ((volatile uint32_t *)                                    \
>> +     (__fix_to_virt((unsigned int)FIX_IO_APIC_BASE_0 + (idx)) \
>> +      + (mp_ioapics[idx].mpc_apicaddr & ~PAGE_MASK)))
> 
> Let's assume that down the road we want to make __fix_to_virt() an 
> inline
> function (which perhaps it really ought to be already): Won't this 
> trade
> one violation for another then?

I don't think so: the violation is in the argument to the macro (i.e., 
the fact that
idx is unsigned and FIX_IO_APIC_BASE_0 is a constant from a named enum). 
Do you see a way in
which a MISRA rule is violated if __fix_to_virt becomes a function with 
an unsigned int argument?

> I wonder whether the better course of
> action wouldn't be to switch the two enums to be "anonymous", even if 
> that
> means adjusting __set_fixmap() and __set_fixmap_x().
> 

I don't know. It certainly would help from a violation count 
perspective, though that's more of a code
style decision in my opinion.

> As an aside, since you touch the entire construct, it would be nice if 
> the
> + was also moved to the end of the earlier line.
> 

Sure

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


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 16:36:53 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 16:36:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617883.960965 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsQaK-0006Ob-U3; Mon, 16 Oct 2023 16:36:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617883.960965; Mon, 16 Oct 2023 16:36: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 1qsQaK-0006OU-QA; Mon, 16 Oct 2023 16:36:52 +0000
Received: by outflank-mailman (input) for mailman id 617883;
 Mon, 16 Oct 2023 16:36: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=2KAZ=F6=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qsQaJ-0005gR-HP
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 16:36:51 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 35059009-6c42-11ee-98d4-6d05b1d4d9a1;
 Mon, 16 Oct 2023 18:36:51 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id B3A264EE0737;
 Mon, 16 Oct 2023 18:36: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: 35059009-6c42-11ee-98d4-6d05b1d4d9a1
MIME-Version: 1.0
Date: Mon, 16 Oct 2023 18:36:50 +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.cooper3@citrix.com, roger.pau@citrix.com, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
Subject: Re: [XEN PATCH][for-next v2 5/8] x86/io_apic: address violation of
 MISRA C:2012 Rule 10.1
In-Reply-To: <d52fdb46-5ac2-fb0a-2b76-348acf4a5cff@suse.com>
References: <cover.1697123806.git.nicola.vetrini@bugseng.com>
 <1fe7602b48cabb7710025f6b4e32e9b99a1faacd.1697123806.git.nicola.vetrini@bugseng.com>
 <d52fdb46-5ac2-fb0a-2b76-348acf4a5cff@suse.com>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <dedfe060d6dc7e39555b2d41710c9691@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 16/10/2023 17:42, Jan Beulich wrote:
> On 12.10.2023 17:28, Nicola Vetrini wrote:
>> The definition of IO_APIC_BASE contains a sum of an essentially enum
>> value (FIX_IO_APIC_BASE_0) that is positive with an index that, in all
>> instances, is unsigned, therefore the former is cast to unsigned, so 
>> that
>> the operands are of the same essential type.
>> 
>> No functional change.
>> ---
>>  xen/arch/x86/include/asm/io_apic.h | 7 ++++---
>>  1 file changed, 4 insertions(+), 3 deletions(-)
> 
> Oh, also - there's no S-o-b here.
> 
> Jan

Ah, good catch.

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


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 16:41:30 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 16:41:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617888.960976 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsQei-0000OE-EY; Mon, 16 Oct 2023 16:41:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617888.960976; Mon, 16 Oct 2023 16: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 1qsQei-0000O7-AH; Mon, 16 Oct 2023 16:41:24 +0000
Received: by outflank-mailman (input) for mailman id 617888;
 Mon, 16 Oct 2023 16: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 1qsQeg-0000Nz-Kq
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 16: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 1qsQeg-0008GH-Bv; Mon, 16 Oct 2023 16:41:22 +0000
Received: from 54-240-197-234.amazon.com ([54.240.197.234]
 helo=[192.168.9.197]) by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qsQeg-0007rX-64; Mon, 16 Oct 2023 16:41: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=1xJm5LbdEVoaOaJNCt8O1uzOxxtFAYe8gyZX26+4gFY=; b=BvNnBXBYtj7hUDiTZpYilpNzbq
	VvCSd69WIu/SK9LtDN/j+Fl+V5Fvy2ILXK/FSFIcB6yelynhioOHQd1Bly9TicgYBYBxz2geYoP3W
	6tjxpoEh4lHAi8R5wcYRX+iLdprSHajUqaaX4jNmaK8VNzFEDIye0U9KlhEaD6i8fCic=;
Message-ID: <0299c7f0-6235-421a-b57d-63b0ad4a650f@xen.org>
Date: Mon, 16 Oct 2023 17:41:20 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v7 8/8] xen/arm: mmu: move MMU specific P2M code to
 mmu/p2m.{c,h}
Content-Language: en-GB
To: Henry Wang <Henry.Wang@arm.com>
Cc: Xen-devel <xen-devel@lists.xenproject.org>,
 Penny Zheng <Penny.Zheng@arm.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Bertrand Marquis <Bertrand.Marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, Wei Chen <Wei.Chen@arm.com>
References: <20231009010313.3668423-1-Henry.Wang@arm.com>
 <20231009010313.3668423-9-Henry.Wang@arm.com>
 <af6a376c-a224-45d7-9972-d69ee44239d6@xen.org>
 <4607C809-7625-4C8E-A26E-8B8F641CEB29@arm.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <4607C809-7625-4C8E-A26E-8B8F641CEB29@arm.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit



On 14/10/2023 02:26, Henry Wang wrote:
> Hi Julien,

Hi Henry,

>> On Oct 14, 2023, at 02:22, Julien Grall <julien@xen.org> wrote:
>>
>> Hi Henry,
>>
>> On 09/10/2023 02:03, Henry Wang wrote:
>>> From: Penny Zheng <penny.zheng@arm.com>
>>> Current P2M implementation is designed for MMU system only.
>>> We move the MMU-specific codes into mmu/p2m.c, and only keep generic
>>> codes in p2m.c, like VMID allocator, etc. We also move MMU-specific
>>> definitions and declarations to mmu/p2m.h, such as p2m_tlb_flush_sync().
>>> Also expose previously static functions p2m_vmid_allocator_init(),
>>> p2m_alloc_vmid(), and setup_virt_paging_one() for further MPU usage.
>>> With the code movement, global variable max_vmid is used in multiple
>>> files instead of a single file (and will be used in MPU P2M
>>> implementation), declare it in the header and remove the "static" of
>>> this variable.
>>> Signed-off-by: Penny Zheng <penny.zheng@arm.com>
>>> Signed-off-by: Wei Chen <wei.chen@arm.com>
>>> Signed-off-by: Henry Wang <Henry.Wang@arm.com>
>>
>> Some remarks about some of the code not moved:
>> * struct p2m_domain: The bulk of the fields seems to be MMU specific. So depending on the number of common fields we either want to split or move the structure to p2m_domain. I would be ok to wait until the MPU code is present.
>> * p2m_type_t: It is not yet clear how this will apply to the MPU. I am ok to wait before moving it.
> 
> Agree with both here, let’s continue the discussion in the actual MPU patch for P2M
> then, but I am then a bit confused about...
> 
>> * p2m_cache_flush_range(): I expect the code will need some change because you may get large chunk of memory for the MPU.
>> * p2m_set_way_flush()/p2m_toggle_cache(): This was a giant hack to support cache flush operations via set/way. To make it efficient, we track the pages that have been touched and only flush them. For the MPU, this would not work. Can we attempt to not emulate the instructions?
> 
> …these two remarks here, do you expect me to do some changes with these three
> functions in this patch? Or we can defer the required changes to the MPU patch for
> P2M?

My original intention was to ask to move them right now. But if it is 
unclear whether they would be used, then it would be best to defer until 
we have a better understanding.

> 
> I think I am highly likely to make a mistake here but I took a look at the MPU
> implementation [1] and it looks like the MPU code can use these tree functions
> without changes - probably because these functions are simply used by
> (1) domctl and we only have dom0less DomUs on MPU
> (2) trap handlers
> which means these functions are simply not called…

I am not sure I fully understand why would the trap handlers not called. 
Is this suggesting that a dom0less domUs can not use set/way instructions?

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 16:49:58 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 16:49:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617892.960985 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsQmv-0004KA-6M; Mon, 16 Oct 2023 16:49:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617892.960985; Mon, 16 Oct 2023 16:49: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 1qsQmv-0004K3-3X; Mon, 16 Oct 2023 16:49:53 +0000
Received: by outflank-mailman (input) for mailman id 617892;
 Mon, 16 Oct 2023 16:49: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=2KAZ=F6=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qsQmt-0004Ij-NO
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 16:49:51 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 04dfed71-6c44-11ee-9b0e-b553b5be7939;
 Mon, 16 Oct 2023 18:49:49 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id 917694EE0737;
 Mon, 16 Oct 2023 18:49: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: 04dfed71-6c44-11ee-9b0e-b553b5be7939
MIME-Version: 1.0
Date: Mon, 16 Oct 2023 18:49:48 +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.cooper3@citrix.com, roger.pau@citrix.com, Simone Ballarin
 <simone.ballarin@bugseng.com>, Doug Goldstein <cardoe@cardoe.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][for-4.19 v2 1/1] xen: introduce a deviation for Rule
 11.9
In-Reply-To: <7be93272-dc82-06e0-726d-030d33aee5e1@suse.com>
References: <cover.1696948320.git.nicola.vetrini@bugseng.com>
 <c684c36402e6740472fa91d73436ca5790e5e109.1696948320.git.nicola.vetrini@bugseng.com>
 <7be93272-dc82-06e0-726d-030d33aee5e1@suse.com>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <66e27d108e856fcf69f78652daae6447@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 16/10/2023 15:43, Jan Beulich wrote:
> On 11.10.2023 14:46, Nicola Vetrini wrote:
>> --- a/xen/include/xen/compiler.h
>> +++ b/xen/include/xen/compiler.h
>> @@ -109,13 +109,16 @@
>> 
>>  #define offsetof(a,b) __builtin_offsetof(a,b)
>> 
>> +/* Access the field of structure type, without defining a local 
>> variable */
>> +#define access_field(type, member) (((type *)NULL)->member)
> 
> This is not a field access, so I consider the macro misnamed. Question 
> is
> whether such a helper macro is needed in the first place.
> 
>> +#define typeof_field(type, member) typeof(access_field(type, member))
> 
> If this needs adding, it wants to come ...
> 
>>  /**
>>   * sizeof_field(TYPE, MEMBER)
>>   *
>>   * @TYPE: The structure containing the field of interest
>>   * @MEMBER: The field to return the size of
>>   */
>> -#define sizeof_field(TYPE, MEMBER) sizeof((((TYPE *)0)->MEMBER))
>> +#define sizeof_field(TYPE, MEMBER) sizeof(access_field(TYPE, MEMBER))
> 
> ... with a commend similar as this one has. (Or the commend could be
> slightly altered to cover both).
> 

I added access_field since it's possibly useful on its own in the 
future,
but that may not be the case. Not a real field access, perhaps a 
fake_access_field?
Ok about the missing comment for typeof_field.

> Further, if fiddling with these: Wouldn't they better move to macros.h?
> 
> Jan

That seems a good suggestion, as they are not compiler-specific.

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


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 17:05:55 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 17:05:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617899.960995 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsR2H-0002c3-FW; Mon, 16 Oct 2023 17:05:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617899.960995; Mon, 16 Oct 2023 17: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 1qsR2H-0002bu-CM; Mon, 16 Oct 2023 17:05:45 +0000
Received: by outflank-mailman (input) for mailman id 617899;
 Mon, 16 Oct 2023 17:05: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=2KAZ=F6=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qsR2G-0002bo-7B
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 17:05:44 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 3c5a304f-6c46-11ee-9b0e-b553b5be7939;
 Mon, 16 Oct 2023 19:05:41 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id ADA774EE0737;
 Mon, 16 Oct 2023 19:05: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: 3c5a304f-6c46-11ee-9b0e-b553b5be7939
MIME-Version: 1.0
Date: Mon, 16 Oct 2023 19:05:40 +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.cooper3@citrix.com, roger.pau@citrix.com, 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>,
 xen-devel@lists.xenproject.org
Subject: Re: [XEN PATCH v2 1/7] xen: add declarations for variables where
 needed
In-Reply-To: <2023f16b-46fb-2a19-9620-7872b3029b5f@suse.com>
References: <cover.1696833629.git.nicola.vetrini@bugseng.com>
 <002d58b1d15619a8c4b2ec6c2b5f20960ed0a428.1696833629.git.nicola.vetrini@bugseng.com>
 <2023f16b-46fb-2a19-9620-7872b3029b5f@suse.com>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <f89fc0b2814cc4b84abc431c0355b348@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 16/10/2023 16:50, Jan Beulich wrote:
> On 09.10.2023 08:54, Nicola Vetrini wrote:
>> Some variables with external linkage used in C code do not have
>> a visible declaration where they are defined. Providing such
>> declaration also resolves violations of MISRA C:2012 Rule 8.4.
>> 
>> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
> 
> This is a mix of different approaches to the same underlying issue. I
> think respectively splitting would have helped.
> 
>> --- a/xen/arch/x86/include/asm/compat.h
>> +++ b/xen/arch/x86/include/asm/compat.h
>> @@ -13,6 +13,7 @@ typedef unsigned long full_ptr_t;
>> 
>>  struct domain;
>>  #ifdef CONFIG_PV32
>> +extern unsigned long cr4_pv32_mask;
> 
> Why is this needed? Didn't we say declarations aren't needed when the
> only consumer is assembly code? (I also wonder how this header is any
> more "appropriate" - see the changelog entry - than about any other
> one.)
> 

It was pointed out to me [1] that compat.h might be more appropriate 
than setup.h
(probably because the asm code referencing it is under x86_64/compat).
Further, while it's true that this variable is used in asm, it's also 
used in x86/setup.c, hence
the need for a declaration.

>> --- a/xen/arch/x86/include/asm/setup.h
>> +++ b/xen/arch/x86/include/asm/setup.h
>> @@ -13,6 +13,7 @@ extern char __2M_rwdata_start[], __2M_rwdata_end[];
>>  extern unsigned long xenheap_initial_phys_start;
>>  extern uint64_t boot_tsc_stamp;
>> 
>> +extern char cpu0_stack[STACK_SIZE];
> 
> Same question here.
> 

This one is a bit more nuanced (I wouldn't oppose deviating this), but 
there is indeed one use.

>> --- a/xen/common/symbols.c
>> +++ b/xen/common/symbols.c
>> @@ -21,23 +21,6 @@
>>  #include <xen/guest_access.h>
>>  #include <xen/errno.h>
>> 
>> -#ifdef SYMBOLS_ORIGIN
>> -extern const unsigned int symbols_offsets[];
>> -#define symbols_address(n) (SYMBOLS_ORIGIN + symbols_offsets[n])
>> -#else
>> -extern const unsigned long symbols_addresses[];
>> -#define symbols_address(n) symbols_addresses[n]
>> -#endif
>> -extern const unsigned int symbols_num_syms;
>> -extern const u8 symbols_names[];
>> -
>> -extern const struct symbol_offset symbols_sorted_offsets[];
>> -
>> -extern const u8 symbols_token_table[];
>> -extern const u16 symbols_token_index[];
>> -
>> -extern const unsigned int symbols_markers[];
>> -
>>  /* expand a compressed symbol data into the resulting uncompressed 
>> string,
>>     given the offset to where the symbol is in the compressed stream 
>> */
>>  static unsigned int symbols_expand_symbol(unsigned int off, char 
>> *result)
>> --- a/xen/include/xen/symbols.h
>> +++ b/xen/include/xen/symbols.h
>> @@ -33,4 +33,22 @@ struct symbol_offset {
>>      uint32_t stream; /* .. in the compressed stream.*/
>>      uint32_t addr;   /* .. and in the fixed size address array. */
>>  };
>> +
>> +#ifdef SYMBOLS_ORIGIN
>> +extern const unsigned int symbols_offsets[];
>> +#define symbols_address(n) (SYMBOLS_ORIGIN + symbols_offsets[n])
>> +#else
>> +extern const unsigned long symbols_addresses[];
>> +#define symbols_address(n) symbols_addresses[n]
>> +#endif
>> +extern const unsigned int symbols_num_syms;
>> +extern const u8 symbols_names[];
>> +
>> +extern const struct symbol_offset symbols_sorted_offsets[];
>> +
>> +extern const u8 symbols_token_table[];
>> +extern const u16 symbols_token_index[];
>> +
>> +extern const unsigned int symbols_markers[];
>> +
>>  #endif /*_XEN_SYMBOLS_H*/
> 
> This change is even less clear to me: The producer is assembly code,
> and the consumer already had appropriate declarations. Why would we
> want to increase the scope of their visibility?
> 
> Jan

The missing decls are about common/symbols-dummy.c. Xen can choose that 
this file does
not need to conform (to this guideline or any guideline), in which case 
this change can be dropped.

[1] https://lore.kernel.org/xen-devel/ZRqkbeVUZbjizjNv@MacBookPdeRoger/

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


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 17:52:17 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 17:52:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617907.961006 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsRl6-0008K5-Sj; Mon, 16 Oct 2023 17:52:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617907.961006; Mon, 16 Oct 2023 17: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 1qsRl6-0008Jy-OQ; Mon, 16 Oct 2023 17:52:04 +0000
Received: by outflank-mailman (input) for mailman id 617907;
 Mon, 16 Oct 2023 17:52: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 1qsRl5-0008Jo-JX; Mon, 16 Oct 2023 17:52: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 1qsRl5-0001Pi-D1; Mon, 16 Oct 2023 17:52: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 1qsRl5-0000BI-17; Mon, 16 Oct 2023 17:52:03 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qsRl5-0007ni-0V; Mon, 16 Oct 2023 17:52: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=NeZlea87m6rcxuNVL1myo0ECEVdalVjuwSFXZhweRbs=; b=BxU0xHfIexSUrF97hmh86hTvQ1
	Hq/XmnhvssECbjPWqjf6oOj1qqIrXhHQMnfpDxbEOXyzLU6ZqMlkd05RNQSWfAET+z25qhOsrceNO
	slO8uwQHnKY5XzKDGGGk1IgJ7lkWEz/yVX76Y3N0p70e6BZqzw2880GANjiFAQKWx8VE=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183385-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 183385: 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=618826f67306c32b2799e84ded9a8203f4109ccf
X-Osstest-Versions-That:
    xen=6432228fb5808150d3c5c14affb3d46af81b3878
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 16 Oct 2023 17:52:03 +0000

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

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                  618826f67306c32b2799e84ded9a8203f4109ccf
baseline version:
 xen                  6432228fb5808150d3c5c14affb3d46af81b3878

Last test of basis   183382  2023-10-16 10:03:41 Z    0 days
Testing same since   183385  2023-10-16 14:00:28 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  George Dunlap <george.dunlap@cloud.com>
  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
   6432228fb5..618826f673  618826f67306c32b2799e84ded9a8203f4109ccf -> smoke


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 18:06:19 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 18:06:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617913.961015 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsRyp-0003Gu-2S; Mon, 16 Oct 2023 18:06:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617913.961015; Mon, 16 Oct 2023 18:06: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 1qsRyo-0003Gn-Uy; Mon, 16 Oct 2023 18:06:14 +0000
Received: by outflank-mailman (input) for mailman id 617913;
 Mon, 16 Oct 2023 18:06: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 1qsRyn-0003Gc-Dm
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 18:06: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 1qsRym-0001xD-Se; Mon, 16 Oct 2023 18:06:12 +0000
Received: from 54-240-197-234.amazon.com ([54.240.197.234]
 helo=[192.168.9.197]) by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qsRym-0007tM-Ki; Mon, 16 Oct 2023 18:06: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:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=5P/40Bq5YWzrrk2qX2c5Ek3vRZ+gZ9KfNykKxfsXKSU=; b=vwx2iAjTQt5+q3uCuSDIntE8rS
	9cz/CmVSbqxpYzBBh5LmFWnTJEtWM8kcWOOtQ3K9agtZ9qWsOaFF0JN5eMK4bu4qqUIKuvD+lTeK5
	xTprC9RNP9tFtNvPAYfOpdy85wMeEOQ4xOj23iFyX9hd4qBTLtIHfqjhVAuLXtI14l9o=;
Message-ID: <5ddb6398-f2a3-4bcb-8808-bad653b6c3cd@xen.org>
Date: Mon, 16 Oct 2023 19:06:10 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: MISRA C:2012 D4.11 caution on staging
Content-Language: en-GB
To: Nicola Vetrini <nicola.vetrini@bugseng.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 Xen-devel <xen-devel@lists.xenproject.org>, consulting@bugseng.com,
 Stefano Stabellini <sstabellini@kernel.org>, Jan Beulich
 <jbeulich@suse.com>, Bertrand Marquis <bertrand.marquis@arm.com>,
 roger.pau@citrix.com, George Dunlap <george.dunlap@citrix.com>,
 Wei Liu <wl@xen.org>
References: <7972c20f361126022fa97f6b51ca2d9c@bugseng.com>
 <61f04d4b-34d9-4fd1-a989-56b042b4f3d8@citrix.com>
 <baa73fa24385b39bc6e82c4ccb08bd13@bugseng.com>
 <26f09702-9340-41ae-afcc-808becb67876@citrix.com>
 <75a00257-c062-4d82-9b64-1707ce4566e6@xen.org>
 <594c09e1f8b2e1e8321c2cb862fcb378@bugseng.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <594c09e1f8b2e1e8321c2cb862fcb378@bugseng.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

Hi Nicola,

On 13/10/2023 16:11, Nicola Vetrini wrote:
> On 13/10/2023 11:27, Julien Grall wrote:
>> Hi Andrew,
>>
>> On 11/10/2023 08:51, Andrew Cooper wrote:
>>> On 11/10/2023 3:47 pm, Nicola Vetrini wrote:
>>>> On 11/10/2023 02:15, Andrew Cooper wrote:
>>>>> On 10/10/2023 5:31 pm, Nicola Vetrini wrote:
>>>>>> Hi,
>>>>>>
>>>>>> as you can see from [1], there's a MISRA C guideline, D4.11, that is
>>>>>> supposed to be clean
>>>>>> (i.e., have no reports), but has a caution on an argument to memcpy
>>>>>> (the second argument might be null according to the checker, given a
>>>>>> set of assumptions on
>>>>>> the control flow). To access the report just click on the second link
>>>>>> in the log, which should take you to a webpage with a list of
>>>>>> MISRA guidelines. Click on D4.11 and you'll see the full report, 
>>>>>> which
>>>>>> I pasted below for convenience.
>>>>>>
>>>>>> If the finding is genuine, then some countermeasure needs to be taken
>>>>>> against this
>>>>>> possible bug, otherwise it needs to be motivated why the field
>>>>>> config->handle can't
>>>>>> be null at that point.
>>>>>> The finding is likely the result of an improvement made to the
>>>>>> checker, because the first
>>>>>> analysis I can see that spots it happened when rc1 has been tagged,
>>>>>> but that commit does not
>>>>>> touch the involved files.
>>>>>>
>>>>>> [1] https://gitlab.com/xen-project/xen/-/jobs/5251222578
>>>>>
>>>>> That's a false positive, but I'm not entirely surprised that the 
>>>>> checker
>>>>> struggled to see it.
>>>>>
>>>>> First,
>>>>>
>>>>> ASSERT(is_system_domain(d) ? config == NULL : config != NULL);
>>>>>
>>>>> All system domains (domid >= 0x7ff0, inc IDLE) pass a NULL config. All
>>>>> other domains pass a real config.
>>>>>
>>>>> Next,
>>>>>
>>>>> /* DOMID_{XEN,IO,etc} (other than IDLE) are sufficiently 
>>>>> constructed. */
>>>>> if ( is_system_domain(d) && !is_idle_domain(d) )
>>>>>      return d;
>>>>>
>>>>> So at this point we only have the IDLE domain and real domains.
>>>>>
>>>>> And finally, the complained-about construct is inside an:
>>>>>
>>>>> if ( !is_idle_domain(d) )
>>>>>      ...
>>>>>
>>>>> hence config cannot be NULL, but only because of the way in which
>>>>> is_{system,idle}_domain() interact.
>>>>>
>>>>> ~Andrew
>>>>
>>>> Ok. I think this should be documented as a false positive using the
>>>> comment deviation mechanism
>>>> in the false-positive-eclair.json file (once a name for the prefix is
>>>> settled on in the
>>>> other thread).
>>>>
>>>
>>> Yeah - I was expecting that.
>>>
>>> This code is mid-cleanup (in my copious free time, so not for several
>>> releases now...) but even when it is rearranged sufficiently for IDLE to
>>> have an earlier exit, I still wouldn't expect a static analyser to be
>>> able to recognise this as being safe.
>>
>> Looking through the analysis, I think Eclair properly detect the IDLE
>> domain. But it thinks the domain ID has changed mid function (see my
>> other reply to Stefano).
>>
>> So we can return early for the IDLE domain, then this should silence
>> Eclair. That said, it is unclear to me why it thinks the domain_id can
>> change...
>>
> 
> Well, the implementation of the directive has best-effort precision, 
> therefore false positives
> like this one are possible. Since Andrew argued that the path is indeed 
> safe, I think
> it's best to deviate this as such, since other minimal changes could 
> also make this one
> resurface in the future.

If Eclair always reported the false positive, then I would have agree 
that deviating would make sense. But you said this was due to an 
improvement in the checker.

I expect improvement in the checker to reduce the number of false 
positive, not introducing new ones. So I think we need to understand 
what changed.

> 
>> A simple way to fix it would be to have a local boolean that will be
>> used in place of is_idle_domain(d). This should help Eclair to detect
>> that a domain cannot change its ID in the middle of domain
>> construction.
>>
>> Cheers,
> 
> I think only conditions are checked to get the possible code paths, to 
> have a reasonable
> tradeoff between speed and analysis precision. Therefore, it's quite 
> possible that it would
> give the same caution.

What I want to avoid is adding a SAF-* every time there are an update to 
Eclair that reports more false positive. This will make the code more 
difficult to read.

Instead, it would be best to find a way to help Eclair to detect this is 
not an issue and also improve readability. Would the following help Eclair?

diff --git a/xen/common/domain.c b/xen/common/domain.c
index 30c227967345..ab16124eabd6 100644
--- a/xen/common/domain.c
+++ b/xen/common/domain.c
@@ -671,6 +671,8 @@ struct domain *domain_create(domid_t domid,

      if ( !is_idle_domain(d) )
      {
+        ASSERT(config);
+
          watchdog_domain_init(d);
          init_status |= INIT_watchdog;

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 18:07:47 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 18:07:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617918.961025 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsS0H-000491-Gn; Mon, 16 Oct 2023 18:07:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617918.961025; Mon, 16 Oct 2023 18:07: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 1qsS0H-00048u-DF; Mon, 16 Oct 2023 18:07:45 +0000
Received: by outflank-mailman (input) for mailman id 617918;
 Mon, 16 Oct 2023 18:07: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=/4Mm=F6=arm.com=Rahul.Singh@srs-se1.protection.inumbo.net>)
 id 1qsS0G-00048m-AC
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 18:07:44 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur04on0618.outbound.protection.outlook.com
 [2a01:111:f400:fe0e::618])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id e58ecea2-6c4e-11ee-9b0e-b553b5be7939;
 Mon, 16 Oct 2023 20:07:41 +0200 (CEST)
Received: from DUZPR01CA0209.eurprd01.prod.exchangelabs.com
 (2603:10a6:10:4b6::22) by DU0PR08MB7616.eurprd08.prod.outlook.com
 (2603:10a6:10:320::20) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.35; Mon, 16 Oct
 2023 18:07:38 +0000
Received: from DBAEUR03FT031.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:4b6:cafe::e) by DUZPR01CA0209.outlook.office365.com
 (2603:10a6:10:4b6::22) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.35 via Frontend
 Transport; Mon, 16 Oct 2023 18:07:38 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DBAEUR03FT031.mail.protection.outlook.com (100.127.142.173) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6907.20 via Frontend Transport; Mon, 16 Oct 2023 18:07:37 +0000
Received: ("Tessian outbound ee9c7f88acf7:v211");
 Mon, 16 Oct 2023 18:07:37 +0000
Received: from 50ae55196ac2.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 F0CF5583-AB1D-466F-80B8-C7334B33FE4B.1; 
 Mon, 16 Oct 2023 18:07:31 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 50ae55196ac2.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Mon, 16 Oct 2023 18:07:31 +0000
Received: from AS8PR08MB7158.eurprd08.prod.outlook.com (2603:10a6:20b:404::24)
 by VI0PR08MB10537.eurprd08.prod.outlook.com (2603:10a6:800:204::22)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.35; Mon, 16 Oct
 2023 18:07:27 +0000
Received: from AS8PR08MB7158.eurprd08.prod.outlook.com
 ([fe80::2124:8c0b:a86c:46d]) by AS8PR08MB7158.eurprd08.prod.outlook.com
 ([fe80::2124:8c0b:a86c:46d%4]) with mapi id 15.20.6863.046; Mon, 16 Oct 2023
 18:07: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: e58ecea2-6c4e-11ee-9b0e-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=hp7Fcb1qV6vgMQw+SYtpcDEABPiJ2gUSdJzR9iK15C0=;
 b=0gsPSVqeD4ezce1OzzhXNz0r3ch3wPale8nWVukWMzG2okIumG8fvZy01FMpVcoZte+8ZnMJ0SDacVk/NvKCYJBDtR0QSEvLYGa3aJwHPgb0cIfZ1HXYNO8bS2C/7WIjoVyX5h5x3NM6qGu9VI0g/YoFQLIw7caV0LJmR7JE96Y=
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: 96ad93f0a9f1cee5
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=legIRmnRitQic34v3Us28itvzo8tVJzZNgECo82Qvw29uFQA5UDU7LMw2y0IG/8UbGvKBbVi1/DUuJkG4Tc2IE5zxroqafkg/V6P/23TRiSs42oARYpnneSXrclsUx7OHgUwHkv95cvy9B9bdangMhTepgVHriNPfMR/jOP6y9Z6dXp+Fcq4o5uXecAA4Z8qkB6SGLRa0u2L1KrxdAk0ePOHveG3CMVOlHjAsjkLhUv5p0HU8SMBFuipeautNa822b7wR2WtVHT6e07A27HX3lL8TqztyUdBtkchlvshQelJQa97qfKBh858CwK9k7yD4aPj4hqJJ3iDKAy/GXomHQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=hp7Fcb1qV6vgMQw+SYtpcDEABPiJ2gUSdJzR9iK15C0=;
 b=CtHBstNkbeIlYQpjj+JsSUvsqhHB7nOb/TAAXfC+zmgVZjisTSPyp+H86xczr3ModcnlYt8D2gawEBKsc6YYATb2NrPzDSt3suRI8cFUiJkGFpNHEF5D8o8XIXcKtV91uIrNoPJVAmWDxjvwqVLE3ARrxHf3HnSWF7aigwuMnbOrEAMRABZ4F81S57x6bQhZ/q0GfE/cICYMigqU20P2EjPZAmT7grRlfnvC3ccoT8Hfy2EHqydqPRdIUtzz445oYDRPk/YKLyi8jELsbulGv8orpCY8/5RdL7TFR0JjWj7nAoR1A9+Acm8VI4Cm8GuNxQ8dRKzOblIMsya2bclDpA==
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=hp7Fcb1qV6vgMQw+SYtpcDEABPiJ2gUSdJzR9iK15C0=;
 b=0gsPSVqeD4ezce1OzzhXNz0r3ch3wPale8nWVukWMzG2okIumG8fvZy01FMpVcoZte+8ZnMJ0SDacVk/NvKCYJBDtR0QSEvLYGa3aJwHPgb0cIfZ1HXYNO8bS2C/7WIjoVyX5h5x3NM6qGu9VI0g/YoFQLIw7caV0LJmR7JE96Y=
From: Rahul Singh <Rahul.Singh@arm.com>
To: Bertrand Marquis <Bertrand.Marquis@arm.com>
CC: Julien Grall <julien@xen.org>, Federico Serafini
	<federico.serafini@bugseng.com>, Xen-devel <xen-devel@lists.xenproject.org>,
	"consulting@bugseng.com" <consulting@bugseng.com>, Stefano Stabellini
	<sstabellini@kernel.org>, Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Henry Wang <Henry.Wang@arm.com>
Subject: Re: [XEN PATCH 10/10] arm/smmu: address violation of MISRA C:2012
 Rule 8.2
Thread-Topic: [XEN PATCH 10/10] arm/smmu: address violation of MISRA C:2012
 Rule 8.2
Thread-Index: AQHZ/el7vMVF528FCE+PS9d3vBdu5bBMJIIAgABJvgCAAE0GAA==
Date: Mon, 16 Oct 2023 18:07:27 +0000
Message-ID: <B0581790-0AFB-4354-969C-45804B7095AD@arm.com>
References: <cover.1697207038.git.federico.serafini@bugseng.com>
 <199886f6ba1f2d5701eabd080b4f9723fc28f4b9.1697207038.git.federico.serafini@bugseng.com>
 <39d3f8e0-61cf-4b8d-84f1-a5087ba8ead4@xen.org>
 <D3320838-1E67-4339-A3D4-A3E60FBC4117@arm.com>
In-Reply-To: <D3320838-1E67-4339-A3D4-A3E60FBC4117@arm.com>
Accept-Language: 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:
	AS8PR08MB7158:EE_|VI0PR08MB10537:EE_|DBAEUR03FT031:EE_|DU0PR08MB7616:EE_
X-MS-Office365-Filtering-Correlation-Id: 82a4aa64-1dd4-4b9b-5e91-08dbce72c7db
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:
 cyfwo6pZi80cKopASvIwIhUSJ0iwgqwMLhOnQ2EJ3apTDFuDI2VbDX1gIRb1d9JBsoG/110FYmy0nmwSLH3y53E1kAEUge2aOUW3gjleqmncO1z0kyfqKgI4fAAAYCBBXRmregFzjZlTRHYJiCH67s9yJb9X94O8W3Dd9zSnFZIjVY4cpVzfuN5lga/uf+kew8XrX85ev6PoNOtkvhlYwWXwygF0hfJ/qbKQLoUulHpsX0Xgnjt6RWtwNuX5qUPU+dst74NHZvfpW9aUxFaN1QIaCm/0DyC+GHe4LnnafYTWmkVKrXb//2GyenPPhs2BL0Mr0PwKBuqN9D3Amy3rPGIVq3zgivfilfqP/67qvTtmfUHfNEY+JIz8Yq7nmNHMDJxBrEGIzPF5XbZ0bHv8p+HMk6Zi/C2QbR79JlnGkPlVm1ksSRwiHjgdLnUsHftmm/QzQ1nnAHfezAVFdbJkPFfkwenHoHaT9Vzr9sQXRNtF5esS0A6ezmAk9du4nKUYVUfmj0cPby3KZTUIh+gmCwoMiV8ovZIM438SlioU2vAczvC8Guxq0VOks+GNs0JRwNiKDvk0DhgcLwAfPbI0ULHlmlDobL3tYL/sahY1Z4ymUYp9IjKwR7+uFQw+v+uKo/BdBAwFEgBXklHcTQi0NA==
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7158.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(396003)(346002)(136003)(366004)(376002)(230922051799003)(64100799003)(1800799009)(451199024)(186009)(6636002)(37006003)(66946007)(478600001)(6486002)(91956017)(66556008)(54906003)(64756008)(66446008)(66476007)(76116006)(71200400001)(26005)(2616005)(53546011)(6506007)(6512007)(41300700001)(8676002)(8936002)(6862004)(2906002)(4326008)(5660300002)(36756003)(33656002)(38070700005)(316002)(122000001)(86362001)(83380400001)(38100700002)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <7D93BB3780FEC14785632ABF33095757@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI0PR08MB10537
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:
 DBAEUR03FT031.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	4cf270ed-d364-48b0-4d08-08dbce72c179
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	NULGd9qx5xgWtO98OMp53QT53V+WUBxd4IKA3+KCVVRLP0NT6/+hPOmdiWaY2TJCOzRyrwEqm8/m4P5NGimP+OttSBiReBrxL2LcU482iWAdUFDn5H8XfD6t2VDaPSr3fmSwUhk936tOJrWCh2vtaz7NDBwsNPDAKb/JeaArcFreb0hasuib244Tu5+z78w0uUCiYAkdnEfgG+EZncbf4tntqgk4bLt7k9hElGGpWE/wPVmSZL43VazkGvNyEFLAVegePGVWpWyB1+O/MxK6e8qgLoFW/sT4NooHfBe/IP/UXlGTcViwTw/I6jOC0c5j+URE+MtPduPkuNlHBP09do1t6M7nnU0ykbAv/FtveKG1THO/jqAbsW+qbvYuXNlHjeoJoity8WEW0yyKpbDtvK3HEGJZRdyWG5gW1vd6SND0RDFkxYyX73yYV7dUNrnE+qo7xoWTIK2TC8YqQcSwdGNnOlf0dedmqUmLrdJRcCnUjiPNyi3sj6ns/+1QxUGF8sf1g8zYS/Tx7lk9yKKV7DfTdIg5ZHQCfaANW4MBP1o8pH/oz5Wxuso1HVBoqUzmoMmcFptHhIqZWchlRy3+xR5Af+VvP6veok5sFeudXffhY6U7o7STEknEPuxqzJ+++C/cvSscd/a/55V5Tz6ANlKOP+Q2usC521LkXyC6Htm6pMwjZit+5ILFBaqy+b+5UAtuB4ID5oqFdg9ovTVQuGfSa4eXZgvp0Xif9kTGJdXm9X7M+CG9Ddfag99vH3JN
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)(186009)(64100799003)(451199024)(1800799009)(82310400011)(46966006)(36840700001)(40470700004)(478600001)(6486002)(37006003)(316002)(6636002)(41300700001)(6862004)(8936002)(8676002)(4326008)(70206006)(70586007)(54906003)(5660300002)(6506007)(53546011)(40480700001)(36860700001)(47076005)(81166007)(82740400003)(356005)(6512007)(86362001)(2616005)(26005)(336012)(36756003)(83380400001)(40460700003)(2906002)(33656002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Oct 2023 18:07:37.7537
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 82a4aa64-1dd4-4b9b-5e91-08dbce72c7db
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:
	DBAEUR03FT031.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR08MB7616

SGkgQmVydHJhbmQNCg0KPiBPbiAxNiBPY3QgMjAyMywgYXQgMjozMeKAr3BtLCBCZXJ0cmFuZCBN
YXJxdWlzIDxiZXJ0cmFuZC5tYXJxdWlzQGFybS5jb20+IHdyb3RlOg0KPiANCj4gSGkgSnVsaWVu
LA0KPiANCj4+IE9uIDE2IE9jdCAyMDIzLCBhdCAxMTowNywgSnVsaWVuIEdyYWxsIDxqdWxpZW5A
eGVuLm9yZz4gd3JvdGU6DQo+PiANCj4+IEhpLA0KPj4gDQo+PiBPbiAxMy8xMC8yMDIzIDE2OjI0
LCBGZWRlcmljbyBTZXJhZmluaSB3cm90ZToNCj4+PiBBZGQgbWlzc2luZyBwYXJhbWV0ZXIgbmFt
ZXMsIG5vIGZ1bmN0aW9uYWwgY2hhbmdlLg0KPj4+IFNpZ25lZC1vZmYtYnk6IEZlZGVyaWNvIFNl
cmFmaW5pIDxmZWRlcmljby5zZXJhZmluaUBidWdzZW5nLmNvbT4NCj4+PiAtLS0NCj4+PiB4ZW4v
ZHJpdmVycy9wYXNzdGhyb3VnaC9hcm0vc21tdS5jIHwgNiArKystLS0NCj4+IA0KPj4gVGhpcyBm
aWxlIGlzIHVzaW5nIHRoZSBMaW51eCBjb2Rpbmcgc3R5bGUgYmVjYXVzZSBpdCBpcyBpbXBvcnRl
ZCBmcm9tIExpbnV4LiBJIHdhcyB1bmRlciB0aGUgaW1wcmVzc2lvbiB3ZSB3b3VsZCBleGNsdWRl
IHN1Y2ggZmlsZSBmb3Igbm93Lg0KPj4gDQo+PiBMb29raW5nIGF0IGV4Y2x1ZGUtbGlzdC5qc29u
LCBpdCBkb2Vzbid0IHNlZW0gdG8gYmUgcHJlc2VudC4gSSB0aGluayB0aGlzIHBhdGNoIHNob3Vs
ZCBiZSByZXBsYWNlZCB3aXRoIGFkZGluZyBhIGxpbmUgaW4gZXhlY2x1ZGUtbGlzdC5qc29uLg0K
PiANCj4gSSB0aGluayB0aGF0IGR1cmluZyBvbmUgb2YgdGhlIGRpc2N1c3Npb25zIHdlIHNhaWQg
dGhhdCB0aGlzIGZpbGUgYWxyZWFkeSBkZXZpYXRlZCBxdWl0ZSBhIGxvdCBmcm9tIHRoZSBzdGF0
dXMgaW4gTGludXggYW5kIHdlIHdhbnRlZCB0byB0dXJuIGl0IHRvIFhlbiBjb2Rpbmcgc3R5bGUg
aW4gdGhlIGZ1dHVyZSBoZW5jZSBpdCBpcyBub3QgbGlzdGVkIGluIHRoZSBleGNsdWRlIGZpbGUu
DQo+IEF0IHRoZSBlbmQgaGF2aW5nIGEgd29ya2luZyBzbW11IG1pZ2h0IGJlIGNyaXRpY2FsIGlu
IGEgc2FmZXR5IGNvbnRleHQgc28gaXQgd2lsbCBtYWtlIHNlbnNlIHRvIGFsc28gY2hlY2sgdGhp
cyBwYXJ0IG9mIHhlbi4NCj4gDQo+IEBSYWh1bDogZG8geW91IGFncmVlID8NCg0KWWVzLCB5b3Ug
YXJlIHJpZ2h0IGN1cnJlbnQgU01NVXYzIGNvZGUgYWxyZWFkeSBkZXZpYXRlcyBxdWl0ZSBhIGxv
dCBmcm9tIHRoZSBzdGF0dXMgb2YgTGludXgNCmJlY2F1c2UgWGVuIGhhbmRsZXMgdGhlIGNvbW1h
bmQgcXVldWUgaW4gYSBkaWZmZXJlbnQgd2F5IHRoYW4gdGhlIHdheSBMaW51eCBoYW5kbGVzIGl0
LiANCk1vcmUgZGV0YWlsZWQgY2FuIGJlIGZvdW5kIGF0IHRoZSBzdGFydCBvZiB0aGUgU01NVXYz
IGZpbGUuIEkgYW0gcGFzdGluZyBpdCBoZXJlIGFsc28uDQoNCiogNS4gTGF0ZXN0IHZlcnNpb24g
b2YgdGhlIExpbnV4IFNNTVV2MyBjb2RlIGltcGxlbWVudHMgdGhlIGNvbW1hbmRzIHF1ZXVlDQoq
IGFjY2VzcyBmdW5jdGlvbnMgYmFzZWQgb24gYXRvbWljIG9wZXJhdGlvbnMgaW1wbGVtZW50ZWQg
aW4gTGludXguDQoqIEF0b21pYyBmdW5jdGlvbnMgdXNlZCBieSB0aGUgY29tbWFuZHMgcXVldWUg
YWNjZXNzIGZ1bmN0aW9ucyBhcmUgbm90DQoqIGltcGxlbWVudGVkIGluIFhFTiB0aGVyZWZvcmUg
d2UgZGVjaWRlZCB0byBwb3J0IHRoZSBlYXJsaWVyIHZlcnNpb24NCiogb2YgdGhlIGNvZGUuIEF0
b21pYyBvcGVyYXRpb25zIGFyZSBpbnRyb2R1Y2VkIHRvIGZpeCB0aGUgYm90dGxlbmVjayBvZg0K
KiB0aGUgU01NVSBjb21tYW5kIHF1ZXVlIGluc2VydGlvbiBvcGVyYXRpb24uIEEgbmV3IGFsZ29y
aXRobSBmb3INCiogaW5zZXJ0aW5nIGNvbW1hbmRzIGludG8gdGhlIHF1ZXVlIGlzIGludHJvZHVj
ZWQsIHdoaWNoIGlzDQoqIGxvY2stZnJlZSBvbiB0aGUgZmFzdC1wYXRoLg0KKiBDb25zZXF1ZW5j
ZSBvZiByZXZlcnRpbmcgdGhlIHBhdGNoIGlzIHRoYXQgdGhlIGNvbW1hbmQgcXVldWUgaW5zZXJ0
aW9uDQoqIHdpbGwgYmUgc2xvdyBmb3IgbGFyZ2Ugc3lzdGVtcyBhcyBzcGlubG9jayB3aWxsIGJl
IHVzZWQgdG8gc2VyaWFsaXplcw0KKiBhY2Nlc3NlcyBmcm9tIGFsbCBDUFVzIHRvIHRoZSBzaW5n
bGUgcXVldWUgc3VwcG9ydGVkIGJ5IHRoZSBoYXJkd2FyZS4NCiogT25jZSB0aGUgcHJvcGVyIGF0
b21pYyBvcGVyYXRpb25zIHdpbGwgYmUgYXZhaWxhYmxlIGluIFhFTiB0aGUgZHJpdmVyDQoqIGNh
biBiZSB1cGRhdGVkLg0KIA0KQW55d2F5IGJlY2F1c2Ugb2YgYWJvdmUgcmVhc29uIGJhY2twb3J0
aW5nIFNNTVV2MyBMaW51eCBkcml2ZXIgcGF0Y2hlcyB0byBYZW4gYXJlDQpub3Qgc3RyYWlnaHQg
Zm9yd2FyZC4gSWYgbWFraW5nIHNtbXUtdjMuYyB0byBYZW4gY29kaW5nIHN0eWxlIGhlbHBzIGlu
IHNhZmV0eSBjb250ZXh0IEkgYW0gb2theQ0Kd2l0aCB0aGF0Lg0KDQpSZWdhcmRzLA0KUmFodWwg
DQoNCg==


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 18:35:21 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 18:35:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617922.961034 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsSQr-00029I-JU; Mon, 16 Oct 2023 18:35:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617922.961034; Mon, 16 Oct 2023 18: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 1qsSQr-00029B-Gk; Mon, 16 Oct 2023 18:35:13 +0000
Received: by outflank-mailman (input) for mailman id 617922;
 Mon, 16 Oct 2023 18:35: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 1qsSQq-000295-0c
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 18:35: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 1qsSQp-0002jK-LU; Mon, 16 Oct 2023 18:35:11 +0000
Received: from 54-240-197-226.amazon.com ([54.240.197.226]
 helo=[192.168.9.197]) by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qsSQp-0000gk-EN; Mon, 16 Oct 2023 18: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=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=uxP634GNTzmNwu/sg68souTrEgRtRM2vRTiRWVz4iXw=; b=gKlmMTJo8Clm4zolN5ONr2Wihv
	pgs/Xc5nw9wSM7Oz+SosOMWFj8CjjwL/9gN8T7Yq3bRJYZVNSdfKPGt0ArAYEl1i+AUc9YpFnKsTZ
	2rl+Dn3DxOCVhG1Npfpzuh4I0uk2WOlXb3Q7HOfGLLDyfMWPWE6hYXc5MycLfoerA1gw=;
Message-ID: <f45a3278-a136-4a46-a4a6-4df9b5c6c5ee@xen.org>
Date: Mon, 16 Oct 2023 19:35:09 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN v1 2/4] xen/arm32: head.S: Introduce
 enable_{boot,secondary}_cpu_mm()
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,
 Volodymyr_Babchuk@epam.com, bertrand.marquis@arm.com, wei.chen@arm.com,
 penny.zheng@arm.com, henry.wang@arm.com
References: <20230911135942.791206-1-ayan.kumar.halder@amd.com>
 <20230911135942.791206-3-ayan.kumar.halder@amd.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <20230911135942.791206-3-ayan.kumar.halder@amd.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi Ayan,

On 11/09/2023 14:59, Ayan Kumar Halder wrote:
> 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

Most of the explanation in that commit message doesn't apply here. You 
also move call like setup_fixmap without explaining why.

Also, if you want to refer to the arm64 patch in the commit message (I 
think it would be better after ---), then it is best to point ot the now 
committed patch.

>
> 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

NIT: I would add a newline to make it clearer.

> -        bl    create_page_tables
> +        ldr   lr, =primary_switched

The existing code was using 'mov_w ...' to avoid load from memory. Can 
you explain why you switched to 'ldr'?

> +        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

NIT:  I would add a newline to make it clearer.

> +        bl    create_page_tables
> +

I think the comment on top of "mov_w lr, secondary_switched" should be 
moved here.

> +        mov_w lr, secondary_cpu_mmu_on
> +        b     enable_mmu
> +secondary_cpu_mmu_on:

I would prefer if we use 1 to avoid introducing local label.

> +        /*
> +         * 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

The above two instructions can be combined to:


/* Return to the virtual address requested by the caller (r6). */
mov pc, r6

> +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

NIT:  I would add a newline to make it clearer.

> +        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:

Same as the lable secondary_cpu_mmu_on.

> +        bl    setup_fixmap
> +
> +        mov   lr, r6
> +
> +        /* Return to the virtual address requested by the caller. */
> +        mov   pc, lr
In this case the 3 instructions can be replaced to:

mov lr, r6
b setup_fixmap

> +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

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 18:45:43 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 18:45:43 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617926.961044 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsSav-0004dt-G4; Mon, 16 Oct 2023 18:45:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617926.961044; Mon, 16 Oct 2023 18: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 1qsSav-0004dm-DU; Mon, 16 Oct 2023 18:45:37 +0000
Received: by outflank-mailman (input) for mailman id 617926;
 Mon, 16 Oct 2023 18:45:36 +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 1qsSau-0004dg-Cr
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 18:45:36 +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 1qsSat-0002wp-Sm; Mon, 16 Oct 2023 18:45:35 +0000
Received: from 54-240-197-234.amazon.com ([54.240.197.234]
 helo=[192.168.9.197]) by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qsSat-0001AU-Jo; Mon, 16 Oct 2023 18:45: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=PerKuqqMsYtLC9DEC65YCmYu5wpPJO3Hz5WZMBwWN50=; b=gQBMbV0/ZqU+pft68dIvOgxNE2
	JWaSOoYhTTUD5igIAosrXTG1qlhMBzuamtGSL7FNLlgj93SyzrpQwZUnDUCdes/mt06M24gPGIBNS
	gqBBQPImOYaPiq7gexja0L7yQwvY2EXhNa5Oh0P8zJl1v7AuN9tSOku4kmUQo/NAhdw8=;
Message-ID: <bb9f1242-adfb-484d-b9fc-57b9e12b78c7@xen.org>
Date: Mon, 16 Oct 2023 19:45:33 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN v1 3/4] xen/arm32: Split and move MMU-specific head.S to
 mmu/head.S
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,
 Volodymyr_Babchuk@epam.com, bertrand.marquis@arm.com, wei.chen@arm.com,
 penny.zheng@arm.com, henry.wang@arm.com
References: <20230911135942.791206-1-ayan.kumar.halder@amd.com>
 <20230911135942.791206-4-ayan.kumar.halder@amd.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <20230911135942.791206-4-ayan.kumar.halder@amd.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi,

On 11/09/2023 14:59, Ayan Kumar Halder wrote:
> 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

Same remark as patch #1. Please provide a proper commit message.

[...]

> 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

I see that we are still using load_paddr in arm64/head.S. But I don't 
think it makes entirely sense as r10 (x20) would always be 0 for the MPU.

In fact all the use in arm{32, 64}/head.S after this patch could be 
easily replaced with adr_l because they are called when the MMU is off 
so the return address will be a physical address.

So can you add a prequisite patch for arm32 to replace the remaining 
some of the load_paddr? With that, load_paddr can be moved in mmu/head.S.

I will take care of the arm64 part.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 20:43:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 20:43:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617931.961055 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsURB-0006xJ-Ui; Mon, 16 Oct 2023 20:43:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617931.961055; Mon, 16 Oct 2023 20:43: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 1qsURB-0006xC-RO; Mon, 16 Oct 2023 20:43:41 +0000
Received: by outflank-mailman (input) for mailman id 617931;
 Mon, 16 Oct 2023 20:43: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 1qsURA-0006x2-JQ; Mon, 16 Oct 2023 20:43: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 1qsURA-0005l1-Ga; Mon, 16 Oct 2023 20:43: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 1qsURA-0005Vj-4s; Mon, 16 Oct 2023 20:43:40 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qsURA-0006Uf-4R; Mon, 16 Oct 2023 20: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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=3C4f5jVIBtMQy1XxKMn8bnU4558TfHnOES8MFD/k5FE=; b=39TJHLqtX6rm2z9TVpU3lzRgCa
	S1pr2gvB+V6PyQrJSci9XzT5exQHcccL/iG2bjgBNT+cpQtU1AQrvtSN6uUfHZzRrz1GoTSOiNRG+
	qup/1eVjxtVScuL2+yJqld0SSkv51ykPBL/tEcieE5hxOZz/h+oLpNDpUxrUFR3uFiI0=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183389-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 183389: 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=0ce2ee7a16f2886c32b3f070bba3172f4a577aa4
X-Osstest-Versions-That:
    xen=618826f67306c32b2799e84ded9a8203f4109ccf
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 16 Oct 2023 20:43:40 +0000

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

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                  0ce2ee7a16f2886c32b3f070bba3172f4a577aa4
baseline version:
 xen                  618826f67306c32b2799e84ded9a8203f4109ccf

Last test of basis   183385  2023-10-16 14:00:28 Z    0 days
Testing same since   183389  2023-10-16 18:03:55 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Anthony PERARD <anthony.perard@citrix.com>
  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
   618826f673..0ce2ee7a16  0ce2ee7a16f2886c32b3f070bba3172f4a577aa4 -> smoke


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 20:47:36 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 20:47:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617937.961065 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsUUx-0007s8-Hd; Mon, 16 Oct 2023 20:47:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617937.961065; Mon, 16 Oct 2023 20: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 1qsUUx-0007s1-Ef; Mon, 16 Oct 2023 20:47:35 +0000
Received: by outflank-mailman (input) for mailman id 617937;
 Mon, 16 Oct 2023 20:47: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=1uuB=F6=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qsUUw-0007rv-HO
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 20:47:34 +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 3aebfbbe-6c65-11ee-98d4-6d05b1d4d9a1;
 Mon, 16 Oct 2023 22:47:33 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by ams.source.kernel.org (Postfix) with ESMTP id CEF9FB81A26;
 Mon, 16 Oct 2023 20:47:32 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 6CCA3C433C7;
 Mon, 16 Oct 2023 20:47: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: 3aebfbbe-6c65-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1697489251;
	bh=AtvmNXLpZkq947hg5ZDiQBdrLP7YpyYBPUXA9+Pywmw=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=icvgZFh3WU27PXsxZALamPFs1cwHg3jliIG0IHvlRT4D5aYnf0j44P1Ya+yoA3/kE
	 5tQV3sXxlnj90Hc5bzGGCjRCFJ/hc+7X2t0ciSK1DTGlzHfsao5XbDO8t0IIXfxLYL
	 ctzNR7kR/hXnW1XXz09UBX873nbkdSIc4vSLf+bpgmybKC4nu0Ar0KR1xd/ESh1xSs
	 FOS26IbGxoOiFIDGyPRjPs9NVTbx7Ahh5GuMlUP1EtFEAXxZG6qhIMw3dyzN4lQIPj
	 kYEjzaCkelm8cK9aYez8hnbbv0TBAxDI8/pK8mgqp+TYdz+mtjQx59ycqrKokr/KYe
	 nuCTdqhu2sGnw==
Date: Mon, 16 Oct 2023 13:47:28 -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: Julien Grall <julien@xen.org>, 
    Federico Serafini <federico.serafini@bugseng.com>, 
    Xen-devel <xen-devel@lists.xenproject.org>, 
    "consulting@bugseng.com" <consulting@bugseng.com>, 
    Rahul Singh <Rahul.Singh@arm.com>, 
    Stefano Stabellini <sstabellini@kernel.org>, 
    Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, 
    Henry Wang <Henry.Wang@arm.com>
Subject: Re: [XEN PATCH 10/10] arm/smmu: address violation of MISRA C:2012
 Rule 8.2
In-Reply-To: <92C52E39-729F-40AE-A02F-556C8EE471CB@arm.com>
Message-ID: <alpine.DEB.2.22.394.2310161338540.965337@ubuntu-linux-20-04-desktop>
References: <cover.1697207038.git.federico.serafini@bugseng.com> <199886f6ba1f2d5701eabd080b4f9723fc28f4b9.1697207038.git.federico.serafini@bugseng.com> <39d3f8e0-61cf-4b8d-84f1-a5087ba8ead4@xen.org> <D3320838-1E67-4339-A3D4-A3E60FBC4117@arm.com>
 <c9a7f059-4cf5-4a75-b231-573c4fe29b37@xen.org> <92C52E39-729F-40AE-A02F-556C8EE471CB@arm.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Mon, 16 Oct 2023, Bertrand Marquis wrote:
> > On 16 Oct 2023, at 15:38, Julien Grall <julien@xen.org> wrote:
> > 
> > 
> > 
> > On 16/10/2023 14:31, Bertrand Marquis wrote:
> >> Hi Julien,
> > 
> > Hi Bertrand,
> > 
> >>> On 16 Oct 2023, at 11:07, Julien Grall <julien@xen.org> wrote:
> >>> 
> >>> Hi,
> >>> 
> >>> On 13/10/2023 16:24, Federico Serafini wrote:
> >>>> Add missing parameter names, no functional change.
> >>>> Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
> >>>> ---
> >>>>  xen/drivers/passthrough/arm/smmu.c | 6 +++---
> >>> 
> >>> This file is using the Linux coding style because it is imported from Linux. I was under the impression we would exclude such file for now.
> >>> 
> >>> Looking at exclude-list.json, it doesn't seem to be present. I think this patch should be replaced with adding a line in execlude-list.json.
> >> I think that during one of the discussions we said that this file already deviated quite a lot from the status in Linux and we wanted to turn it to Xen coding style in the future hence it is not listed in the exclude file.
> > AFAIK the SMMUv{1, 2} code didn't deviate very much from Linux. I can't tell about the SMMUv3.
> 
> True that i had the v3 code in mind, we might not want to do that for v1/2 you are right.
> 
> > 
> >> At the end having a working smmu might be critical in a safety context so it will make sense to also check this part of xen.
> > I don't buy this argument right now. We have files in exclude-lists.json that I would consider critical for Xen to run (e.g. common/bitmap.c, common/libfdt). So if you want to use this argument then we need to move critical components of Xen out of the exclusion list.
> 
> I am sure we will at some point for runtime code but we cannot do everything on the first shot.
> I was not meaning to do that now but that it is something to consider.

Things that are in exclude-lists.json are source files that come from
other projects and also change very rarely. The argument that we don't
do MISRA C on the files in exclude-lists.json, it is not because those
files are unimportant, but because they change only once every many
years.

Of course the least we rely on exclude-lists.json the better.

For smmu.c, looking at the git history I think it is more actively
worked on than other files such as lib/rbtree.c or common/bitmap.c.
Given that backports from Linux to smmu.c are not straightforward anyway
(please correct me if I am wrong) then I think we should not add smmu.c
to exclude-lists.json and do MISRA for smmu.c.

On the other hand, if we think that doing MISRA for smmu.c is going to
make backports a lot harder, and we think that we want to do backports
"often" (every year or every couple of years) then maybe we shouldn't do
MISRA for smmu.c after all.


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 22:34:53 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 22:34:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617941.961074 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsWAZ-0006nd-53; Mon, 16 Oct 2023 22:34:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617941.961074; Mon, 16 Oct 2023 22: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 1qsWAZ-0006nW-2N; Mon, 16 Oct 2023 22:34:39 +0000
Received: by outflank-mailman (input) for mailman id 617941;
 Mon, 16 Oct 2023 22:34: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=1uuB=F6=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qsWAX-0006nO-7f
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 22:34: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 2e8510df-6c74-11ee-98d4-6d05b1d4d9a1;
 Tue, 17 Oct 2023 00: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 7C2DAB81AEE;
 Mon, 16 Oct 2023 22:34:34 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 6A83EC433C8;
 Mon, 16 Oct 2023 22:34:32 +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: 2e8510df-6c74-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1697495673;
	bh=bImQRXh6hTgsqHnM/V6XBLHSVhduPUEOgfs4Oqyvprw=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=AaFjZYIh3Z5doAOWD82b7nhAbRDYY9Dw5r4ZETXeMb0h8xHT+p7Gwp2jypoV5GFKy
	 xKTaRN73owm4XzMtUfenEnhjJhkRqsgpHKHo+wSQwh6jgXiMQe/iSNOh52O/OYN6uY
	 x7zcni8gcPAJtbrUv0i2OLvL4bV3z0ssUZgH8uEJPt2KPpWyC5kdFONilfLGJhgnrf
	 lxcz15MU0NK0AFdlTcBHcyUdg6L6D2SUuNmL5osL7DNNHT/LYCafriuG4PSSpL8I+l
	 BuLQ7oei+t9tHCMNs9liNMMmG/eX3j5woR4xOPHAYyx5PalwtqC6n0ov5VHSceCegb
	 arFWLXsxMvW2g==
Date: Mon, 16 Oct 2023 15:34:30 -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.cooper3@citrix.com, roger.pau@citrix.com, 
    Wei Liu <wl@xen.org>, xen-devel@lists.xenproject.org
Subject: Re: [XEN PATCH v2 3/7] x86: add deviation comments for asm-only
 functions
In-Reply-To: <741e81bc-050c-a773-e622-997b6c0b8335@suse.com>
Message-ID: <alpine.DEB.2.22.394.2310161520180.965337@ubuntu-linux-20-04-desktop>
References: <cover.1696833629.git.nicola.vetrini@bugseng.com> <6476706490cc15406bcf3377a57b7c4a303c4901.1696833629.git.nicola.vetrini@bugseng.com> <741e81bc-050c-a773-e622-997b6c0b8335@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, 16 Oct 2023, Jan Beulich wrote:
> On 09.10.2023 08:54, Nicola Vetrini wrote:
> > As stated in rules.rst, functions used only in asm code
> > are allowed to have no prior declaration visible when being
> > defined, hence these functions are deviated.
> > This also fixes violations of MISRA C:2012 Rule 8.4.
> > 
> > Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
> > Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
> > ---
> >  xen/arch/x86/hvm/svm/intr.c      | 1 +
> >  xen/arch/x86/hvm/svm/nestedsvm.c | 1 +
> >  xen/arch/x86/hvm/svm/svm.c       | 2 ++
> 
> Once again - why are you not also adjusting the respective VMX code?
> Iirc it was agreed long ago that scans should be extended to cover as
> much of the code base as possible.


Let me summarize here our past discussions on the subject to make sure 
we are all aligned.

With my AMD hat on, of course we want to work with the upstream
community as much as possible and improve the overall codebase. But it
is not a goal for AMD to improve Intel-specific drivers (VMX and
others). Our safety configuration for Xen, including the public ECLAIR
instance currently sponsored by AMD, only includes SVM files, not VMX
files. MISRA compliance costs time and effort; this was done both
because of lack of interest in VMX and also as a cost saving measure.

Upon maintainer's request we can expand the scope of individual patches.
For example, AMD is not interested in ARM32 either, but in the past we
did address certain MISRA C issues on ARM32 too, if nothing else for
consistency of the code base. It comes down to a compromise what we
should do for consistency of the codebase versus addressing things that
makes sense for AMD business. For sure we could work on a few violations
affecting Intel drivers, but overall I don't think AMD could be asked to
make Intel drivers MISRA compliant.


In addition to the above, we also discussed during one of the past MISRA
C working group meetings to have larger-than-usual ECLAIR scans. ECLAIR
takes a couple of hours to run, so it is a good idea to restrict its
configuration in the usual runs. However, at least once a week maybe on
a Sunday, it would be good to run a comprehensive scan including
components that are not currently targeted for safety. This would help
us detect regressions and in general spot potential bugs.

As part of this larger-than-usual ECLAIR scan we could certainly
include Intel drivers as well as other things currently unsupported.


Now, concrete action items. Nicola, I think we should look into having a
larger-than-usual ECLAIR scan every week which includes all of Intel
files and in general as much as possible of the codebase.

Jan, for this specific patch, I don't think we have the scan including
Intel vmx files yet. Nicola please correct me if I am wrong. So Nicola
wouldn't be able to easily expand this patch to also cover Intel vmx
violations of this rule because we don't have the list of violations
affecting those files. 


From xen-devel-bounces@lists.xenproject.org Mon Oct 16 23:14:40 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 16 Oct 2023 23:14:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617945.961085 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsWnB-0004dD-09; Mon, 16 Oct 2023 23:14:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617945.961085; Mon, 16 Oct 2023 23: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 1qsWnA-0004d6-TN; Mon, 16 Oct 2023 23:14:32 +0000
Received: by outflank-mailman (input) for mailman id 617945;
 Mon, 16 Oct 2023 23:14: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=1uuB=F6=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qsWn9-0004d0-QR
 for xen-devel@lists.xenproject.org; Mon, 16 Oct 2023 23:14:31 +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 c1c15347-6c79-11ee-98d4-6d05b1d4d9a1;
 Tue, 17 Oct 2023 01:14:30 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by dfw.source.kernel.org (Postfix) with ESMTP id AAB1661043;
 Mon, 16 Oct 2023 23:14:28 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 4D5F8C433C7;
 Mon, 16 Oct 2023 23:14: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: c1c15347-6c79-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1697498068;
	bh=6IGtM0EZqDQT9GRTPqAUlHC8FjNRqNvHP/nOPQFsQH8=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=qXnUnidEyHVTdNQi93B4PBJpz/gQDbRid0Xhk1n9+0mJ3ybAFj5ZeBKJXeOZEOjqC
	 kppMI5ygrA6++qlbIPEevMKEeVmX4Cu83Jkut1vchE9/ONDHKgzlwYNCl4c1vqxecr
	 S3m5jafzS40+7TgMZYlHT3E8IQkYndE+haDCwnspOcksqQmrKQPMGntZb4GFR/yhM4
	 HasEEveDsKasgzH8EF4+B7a4hp/JrRc1IoXYuDht3iQ6D6TlzJOfdkTujNEQX5aTmJ
	 o2C1kvZ3qRTu3UGN6/dScVWK19u9b46u4w69qJqMh2kuKB4WR+TGlJBsl+94/uOT4u
	 uehLzUA+uCxEQ==
Date: Mon, 16 Oct 2023 16:14:25 -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, George Dunlap <george.dunlap@cloud.com>, 
    Stefano Stabellini <stefano.stabellini@amd.com>, jgross@suse.com, 
    julien@xen.org, wl@xen.org, Henry.Wang@arm.com
Subject: Re: [PATCH] cxenstored: wait until after reset to notify dom0less
 domains
In-Reply-To: <20231013230624.1007969-1-sstabellini@kernel.org>
Message-ID: <alpine.DEB.2.22.394.2310161614080.965337@ubuntu-linux-20-04-desktop>
References: <20231013230624.1007969-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

+Henry for release ack


On Fri, 13 Oct 2023, Stefano Stabellini wrote:
> From: George Dunlap <george.dunlap@cloud.com>
> 
> Commit fc2b57c9a ("xenstored: send an evtchn notification on
> introduce_domain") introduced the sending of an event channel to the
> guest when first introduced, so that dom0less domains waiting for the
> connection would know that xenstore was ready to use.
> 
> Unfortunately, it was introduced in introduce_domain(), which 1) is
> called by other functions, where such functionality is unneeded, and
> 2) after the main XS_INTRODUCE call, calls domain_conn_reset().  This
> introduces a race condition, whereby if xenstored is delayed, a domain
> can wake up, send messages to the buffer, only to have them deleted by
> xenstore before finishing its processing of the XS_INTRODUCE message.
> 
> Move the connect-and-notfy call into do_introduce() instead, after the
> domain_conn_rest(); predicated on the state being in the
> XENSTORE_RECONNECT state.
> 
> (We don't need to check for "restoring", since that value is always
> passed as "false" from do_domain_introduce()).
> 
> Also take the opportunity to add a missing wmb barrier after resetting
> the indexes of the ring in domain_conn_reset.
> 
> This change will also remove an extra event channel notification for
> dom0 (because the notification is now done by do_introduce which is not
> called for dom0.) The extra dom0 event channel notification was only
> introduced by fc2b57c9a and was never present before. It is not needed
> because dom0 is the one to tell xenstored the connection parameters, so
> dom0 has to know that the ring page is setup correctly by the time
> xenstored starts looking at it. It is dom0 that performs the ring page
> init.
> 
> Signed-off-by: George Dunlap <george.dunlap@cloud.com>
> Signed-off-by: Stefano Stabellini <stefano.stabellini@amd.com>
> CC: jgross@suse.com
> CC: julien@xen.org
> CC: wl@xen.org
> ---
>  tools/xenstored/domain.c | 14 ++++++++------
>  1 file changed, 8 insertions(+), 6 deletions(-)
> 
> diff --git a/tools/xenstored/domain.c b/tools/xenstored/domain.c
> index a6cd199fdc..f6ef37856c 100644
> --- a/tools/xenstored/domain.c
> +++ b/tools/xenstored/domain.c
> @@ -923,6 +923,7 @@ static void domain_conn_reset(struct domain *domain)
>  
>  	domain->interface->req_cons = domain->interface->req_prod = 0;
>  	domain->interface->rsp_cons = domain->interface->rsp_prod = 0;
> +	xen_wmb();
>  }
>  
>  /*
> @@ -988,12 +989,6 @@ static struct domain *introduce_domain(const void *ctx,
>  		/* Now domain belongs to its connection. */
>  		talloc_steal(domain->conn, domain);
>  
> -		if (!restore) {
> -			/* Notify the domain that xenstore is available */
> -			interface->connection = XENSTORE_CONNECTED;
> -			xenevtchn_notify(xce_handle, domain->port);
> -		}
> -
>  		if (!is_master_domain && !restore)
>  			fire_special_watches("@introduceDomain");
>  	} else {
> @@ -1033,6 +1028,13 @@ int do_introduce(const void *ctx, struct connection *conn,
>  
>  	domain_conn_reset(domain);
>  
> +	if (domain->interface != NULL &&
> +		domain->interface->connection == XENSTORE_RECONNECT) {
> +		/* Notify the domain that xenstore is available */
> +		domain->interface->connection = XENSTORE_CONNECTED;
> +		xenevtchn_notify(xce_handle, domain->port);
> +	}
> +
>  	send_ack(conn, XS_INTRODUCE);
>  
>  	return 0;
> -- 
> 2.25.1
> 


From xen-devel-bounces@lists.xenproject.org Tue Oct 17 00:54:01 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 17 Oct 2023 00:54:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617949.961095 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsYLA-0003Dp-HW; Tue, 17 Oct 2023 00:53:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617949.961095; Tue, 17 Oct 2023 00: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 1qsYLA-0003Di-EY; Tue, 17 Oct 2023 00:53:44 +0000
Received: by outflank-mailman (input) for mailman id 617949;
 Tue, 17 Oct 2023 00:53: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 1qsYL8-0003DY-En; Tue, 17 Oct 2023 00:53: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 1qsYL8-0003Wu-C2; Tue, 17 Oct 2023 00:53: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 1qsYL7-0003nK-Ne; Tue, 17 Oct 2023 00:53:41 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qsYL7-0001cG-NA; Tue, 17 Oct 2023 00: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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=pHzkM+BarHZqsjpb51TqiAWJTw4O/uMEzMEx7pZ7x5Y=; b=ZSoFcEYZjzx5JwCKz8CCbfP9sy
	Y9bKB03iHYc+fkrhEp8gUSQgQlRjROkkhcb7KT75mwcmOiz3HZcIP/iRNOLMcQVcs/I+YbWjPBqMT
	J/s2uMIfvmcy9rrje03A4z1nY1djDPHHxVfitZRs4ORZ1rvPTOfKw/vv8CQfcJWcef78=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183390-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 183390: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=03d6569f70939d2a1653265367121212459a6b89
X-Osstest-Versions-That:
    ovmf=326b9e1d815c4ae4b0b207fcb0bfa16864af5400
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 17 Oct 2023 00:53:41 +0000

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

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 03d6569f70939d2a1653265367121212459a6b89
baseline version:
 ovmf                 326b9e1d815c4ae4b0b207fcb0bfa16864af5400

Last test of basis   183355  2023-10-12 09:13:57 Z    4 days
Testing same since   183390  2023-10-16 23:10:46 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
   326b9e1d81..03d6569f70  03d6569f70939d2a1653265367121212459a6b89 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Tue Oct 17 00:57:14 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 17 Oct 2023 00:57:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617955.961105 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsYOW-0003om-29; Tue, 17 Oct 2023 00:57:12 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617955.961105; Tue, 17 Oct 2023 00: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 1qsYOV-0003of-Ub; Tue, 17 Oct 2023 00:57:11 +0000
Received: by outflank-mailman (input) for mailman id 617955;
 Tue, 17 Oct 2023 00:57: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=dFgi=F7=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qsYOU-0003oZ-Gw
 for xen-devel@lists.xenproject.org; Tue, 17 Oct 2023 00:57:10 +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 180f337d-6c88-11ee-9b0e-b553b5be7939;
 Tue, 17 Oct 2023 02:57: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 908A1611FD;
 Tue, 17 Oct 2023 00:57:06 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 6B466C433C7;
 Tue, 17 Oct 2023 00:57: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: 180f337d-6c88-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1697504226;
	bh=nid6MtGSPECxGK+RVaCZzNB4TR0ROMCq52YSdmxDxM8=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=PagYFAPdS7caP4ww21pRb7DWeCFlnoxTgLAfkIgvzvNHSExunQFrN3tdVo2f+doux
	 BfdP8Lv+uS/TSbozI8FiDhXjCBm5tJPHGnc96RIypcb82yUg9NUY6QagRYcxKRLEY3
	 Mur8PI7IVPpMhVsn9GwJpzrcxx88INxD/GNRDEYCyEWbknSHvGqbTBvDxwlPfAZyF2
	 hM16W4RCIDb5FMAKgD9pEMyH67yn2aj1qIhhepTG6n+dlkSyfAQhDRxejOmclww2hs
	 pIfhHVTbEqkGIF+JZsJ+ihBDCVxEPp0uZ8nckP+Zi8Mw6ztwAhZc62Dl1eoLwfMpNa
	 tH0JutNNpUU4A==
Date: Mon, 16 Oct 2023 17:57:02 -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.cooper3@citrix.com, roger.pau@citrix.com, 
    Simone Ballarin <simone.ballarin@bugseng.com>, 
    Doug Goldstein <cardoe@cardoe.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][for-next][for-4.19 v2 1/8] xen/include: add macro
 LOWEST_BIT
In-Reply-To: <08286993-6a83-b928-6398-e129397927a0@suse.com>
Message-ID: <alpine.DEB.2.22.394.2310161756560.965337@ubuntu-linux-20-04-desktop>
References: <cover.1697123806.git.nicola.vetrini@bugseng.com> <bb0ba44f8a3944c22a1c7cf19196c7060e8adb4b.1697123806.git.nicola.vetrini@bugseng.com> <93408661-721b-c4b3-d504-e65142bbdaea@suse.com> <42ee4de54f6d9bd80fb50db3545cbaf4@bugseng.com>
 <08286993-6a83-b928-6398-e129397927a0@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, 16 Oct 2023, Jan Beulich wrote:
> On 16.10.2023 18:17, Nicola Vetrini wrote:
> > On 16/10/2023 17:33, Jan Beulich wrote:
> >> On 12.10.2023 17:28, Nicola Vetrini wrote:
> >>> --- a/automation/eclair_analysis/ECLAIR/deviations.ecl
> >>> +++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
> >>> @@ -274,6 +274,12 @@ still non-negative."
> >>>  -config=MC3R1.R10.1,etypes+={safe, 
> >>> "stmt(operator(logical)||node(conditional_operator||binary_conditional_operator))", 
> >>> "dst_type(ebool||boolean)"}
> >>>  -doc_end
> >>>
> >>> +-doc_begin="The macro LOWEST_BIT encapsulates a well-known pattern to 
> >>> obtain the value
> >>> +2^ffs(x) for unsigned integers on two's complement architectures
> >>> +(all the architectures supported by Xen satisfy this requirement)."
> >>> +-config=MC3R1.R10.1,reports+={safe, 
> >>> "any_area(any_loc(any_exp(macro(^LOWEST_BIT$))))"}
> >>> +-doc_end
> >>
> >> Why is this added here rather than by ...
> >>
> >>> --- a/xen/include/xen/macros.h
> >>> +++ b/xen/include/xen/macros.h
> >>> @@ -8,8 +8,10 @@
> >>>  #define DIV_ROUND(n, d) (((n) + (d) / 2) / (d))
> >>>  #define DIV_ROUND_UP(n, d) (((n) + (d) - 1) / (d))
> >>>
> >>> -#define MASK_EXTR(v, m) (((v) & (m)) / ((m) & -(m)))
> >>> -#define MASK_INSR(v, m) (((v) * ((m) & -(m))) & (m))
> >>
> >> a SAF-<n>-safe comment here?
> >>
> > 
> > One reason is that now that violations only belonging to tool 
> > configurations
> > and similar are documented in docs/misra/deviations.rst (committed in 
> > Stefano's
> > branch for-4.19 [1]).
> 
> But tool configuration means every analysis tool needs configuring
> separately. That's why the comment tagging scheme was decided to be
> preferred, iirc.
> 
> > Also, there were disagreements on the SAF naming 
> > scheme, and
> > patches like those would not be accepted at the moment.
> 
> Well, that needs resolving. The naming there shouldn't lead to patches
> being accepted that later may need redoing.

I agree


From xen-devel-bounces@lists.xenproject.org Tue Oct 17 01:00:21 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 17 Oct 2023 01:00:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617960.961119 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsYRW-0002s3-Ho; Tue, 17 Oct 2023 01:00:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617960.961119; Tue, 17 Oct 2023 01: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 1qsYRW-0002rA-Eg; Tue, 17 Oct 2023 01:00:18 +0000
Received: by outflank-mailman (input) for mailman id 617960;
 Tue, 17 Oct 2023 01:00: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=qhkS=F7=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qsYRV-0002Vw-MR
 for xen-devel@lists.xenproject.org; Tue, 17 Oct 2023 01:00:17 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 (mail-am6eur05on20619.outbound.protection.outlook.com
 [2a01:111:f400:7e1b::619])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 886fdccf-6c88-11ee-9b0e-b553b5be7939;
 Tue, 17 Oct 2023 03:00:15 +0200 (CEST)
Received: from DUZP191CA0048.EURP191.PROD.OUTLOOK.COM (2603:10a6:10:4f8::8) by
 AM9PR08MB6019.eurprd08.prod.outlook.com (2603:10a6:20b:2da::6) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6886.34; Tue, 17 Oct 2023 01:00:11 +0000
Received: from DBAEUR03FT003.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:4f8:cafe::be) by DUZP191CA0048.outlook.office365.com
 (2603:10a6:10:4f8::8) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.34 via Frontend
 Transport; Tue, 17 Oct 2023 01:00:11 +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.6907.20 via Frontend Transport; Tue, 17 Oct 2023 01:00:10 +0000
Received: ("Tessian outbound 6d14f3380669:v211");
 Tue, 17 Oct 2023 01:00:10 +0000
Received: from 310385ba5b92.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 16FD52E7-63E3-46DA-8A50-D76D5D6A90C0.1; 
 Tue, 17 Oct 2023 01:00:03 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 310385ba5b92.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Tue, 17 Oct 2023 01:00:03 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by AS2PR08MB8405.eurprd08.prod.outlook.com (2603:10a6:20b:558::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.36; Tue, 17 Oct
 2023 01:00:02 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41%4]) with mapi id 15.20.6886.034; Tue, 17 Oct 2023
 01:00: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: 886fdccf-6c88-11ee-9b0e-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=6ZNQ+C/iNvo0PqydzP2mEbiPdg73nPbPcmlonhX1kKE=;
 b=AAXRnwO4ToRWpwSfQL6MCP/J92tR+ErbCs4uIVdO+AJ97C3Zlv9o9mDDewT6h0h9pnDwHyTB3OP9r72gpcvMtJ8QGbvHK2JP37YMKuFjpPju7PoLoN1VyG4MgfGmkL6wgSL9wacKffooFneRbdpzAdeDX36BTRjjIMUzjiNQqp4=
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: 0c59971aa749a35d
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=OvKeGiHuacbzEvZZj/pN2H/iiSFdiqRAnT+KgC6lkYW2uLvc0MBfqZgk8DS5s3df8ud0upz8aZnx03KJ0vW9R8v76ungiIExufpxjfejerqAXlzAWAVRaHU+rjmVYi9R+iPfjj2EwXCiGyVUmYO2uohH09wmsCThbSFGmsqnv5HiXs46yjave2TOFFUSkSYt7vxRXaZlegv0v909B+NHSiyjjG4ydLFeC5RL12capwbmtHWy9VypdOtlmOFdDRWKj9I86lYD+3w5uva2b9TOv8wRUh+Uc/ncvIDsi68wkm4Ur0A32/X27llAJRffC+VIQxrV2Ajwva/bjWpW2//fjQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=6ZNQ+C/iNvo0PqydzP2mEbiPdg73nPbPcmlonhX1kKE=;
 b=d9G70tGBgc4JcIV27vA7FmYqSGBNQYT1Ib+dmf6k5JztB7a67BYgF9q4ntC0zsP9G4WtXmF61y3mk2eNR6bZNwJrmjlT5btx/lPp+QNNBefDNdx+fhiYzY0KQo2xnKWZDT0KlpC4yNGQw//88y2qU8Nzf4ZdntaTNHbgcWEV9iZoJyCsCo2eCVuovW3yM/vS2iwsXr6vN5l4unE76VVP/ZX8u43bRQWZrlHc8ySIJaZMULxIlbmkueX94AvKwI0W+I7ovg+Bt2rNDfEWPkFNSU3GV+XBDEFPl3XXe4IJ1DFDwT8Au0/rLxpLrRuA9dyjK6LnkWZWjw80y/VsyCgwlQ==
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=6ZNQ+C/iNvo0PqydzP2mEbiPdg73nPbPcmlonhX1kKE=;
 b=AAXRnwO4ToRWpwSfQL6MCP/J92tR+ErbCs4uIVdO+AJ97C3Zlv9o9mDDewT6h0h9pnDwHyTB3OP9r72gpcvMtJ8QGbvHK2JP37YMKuFjpPju7PoLoN1VyG4MgfGmkL6wgSL9wacKffooFneRbdpzAdeDX36BTRjjIMUzjiNQqp4=
From: Henry Wang <Henry.Wang@arm.com>
To: Jan Beulich <jbeulich@suse.com>
CC: Federico Serafini <federico.serafini@bugseng.com>, Xen-devel
	<xen-devel@lists.xenproject.org>, "consulting@bugseng.com"
	<consulting@bugseng.com>, Andrew Cooper <andrew.cooper3@citrix.com>,
	=?utf-8?B?Um9nZXIgUGF1IE1vbm7DqQ==?= <roger.pau@citrix.com>, Wei Liu
	<wl@xen.org>, Stefano Stabellini <sstabellini@kernel.org>
Subject: Re: [XEN PATCH] x86/paging: address a violation of MISRA C:2012 Rule
 8.3
Thread-Topic: [XEN PATCH] x86/paging: address a violation of MISRA C:2012 Rule
 8.3
Thread-Index: AQHZ9Ta/NlvugOvKeE2dpjYrdI/xh7A3GhEAgAAZ7QCAFWfTgIAApDaA
Date: Tue, 17 Oct 2023 01:00:01 +0000
Message-ID: <B209AFD3-2295-4DF2-86CC-BBCE0D0BD067@arm.com>
References:
 <5a304ffd4fbdd0d5809dc68b857410bbc02f32a0.1696252375.git.federico.serafini@bugseng.com>
 <alpine.DEB.2.22.394.2310021546070.2348112@ubuntu-linux-20-04-desktop>
 <3D657AA0-676B-4681-B980-26BCCC98B092@arm.com>
 <0ee1b2df-25eb-fc57-3d44-7de0e9cef478@suse.com>
In-Reply-To: <0ee1b2df-25eb-fc57-3d44-7de0e9cef478@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_|AS2PR08MB8405:EE_|DBAEUR03FT003:EE_|AM9PR08MB6019:EE_
X-MS-Office365-Filtering-Correlation-Id: 685aa3e5-4bca-454c-f0d5-08dbceac69c7
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:
 xxjthwrEsLEsZN8YKWl9oDb0KwVyd9tDYkVzqOF3NWApcrar9ltVp6KOqydOhjIQ/aSobnKYhM9mnWSPnk24dMpoUoIFjFQWt4QFJjwyUIHeLXKmzNw+z9Al18VQqrBLN/oHcuRdRKVCbq+9WbJULDO49pdcaDOkZfuppNc9vGBDyiGwHYep626T9xvQ0LoNXuh3eH25TVNIuNvOPoPnwvIoVQo+N7n7Emlq9Zp+VWAfev7TKmNt4RO537Vorqt/UBSX8I9GoBBv1N6pYfFWyKc65LOlva1+byGonIzkCz3o0P8OfzjHTNYCLt2ftOgz+NCLJ11Nk3U9vO1Zs/AqHQB4qRgeFpxRbKNAF7mCUDMSbfqncQQTFFijqGQwQG6tG+U/elDWb+DGQFsR+7AJboFO9njb8pWSzrO7dvDvFRi2/W5DY7EDtxiisXj1wftvlgcw500ALNMCIGs3nUtw01PK3mPvxjh6YjnQu2fvU+uYKlYCta5RYQdHbq8ryr88CCy8+8F2fH4ktiF+ltjLpaC/OHE7zk2vRFKtdABMJoxEQFtYjjd4MNeJEI9eiS20P1oIFa+CJua8P2SFGAeIIr99jLCd+xFYqm/9VMiE4etK3VWy2+MVqYBIoC1PDuaQr43kpeOGbyUe/n+DSj03+Q==
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)(366004)(346002)(396003)(39860400002)(230922051799003)(64100799003)(451199024)(186009)(1800799009)(478600001)(6486002)(91956017)(66946007)(76116006)(66556008)(66476007)(66446008)(64756008)(54906003)(71200400001)(6916009)(83380400001)(86362001)(38100700002)(2616005)(6512007)(26005)(53546011)(6506007)(33656002)(38070700005)(41300700001)(36756003)(122000001)(5660300002)(8936002)(4326008)(316002)(2906002)(4744005)(8676002)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <B3700E8787785643B51217CC94F9680E@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS2PR08MB8405
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:
	566f9d18-73f2-488d-0ef2-08dbceac6490
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	FF7BFa2l4QYBtPhNc9RiganZL/QSpFV7KcoROJxoTwO8JGlCPJNqh2UlA0FAbKZV7huBuInVtCnhvnl/s+WwYueRJCAvBpAx5SI8kAhW3wTjr9Q4/XftRqUeI5ZJ9jtUNmFANw/XIoG8IqnwpTQ0bJs/45Xx0n0DZNsPpCY6tD8bUKRaV8UEIR4AODEwd2xQcIRIVek9C3bsY8eEt9HiRPLK1fgl8QqVzvm3Jr8vLp+gzk6z7U1Jh+oRvUEfOUIpRzwpLvYXGXcwaig0iOfO8Scn5OB00SebBI6Vir4u72DF2rkw/54Von9Ta01eoUaOkxnwRgsR/AkIo9OQFxTaIw0VQvBHHSmUj4W1oW3ZdEAqPSJvhdZeFJQ5B7ijBYcQc+2MB2LAjTgCvp9c5Gx6hqOtap4sDdEPyW+pxJKl6bfKu4o2/51DTBQeRux/aPtHqFuumcV62NEgHBaxoJ8nmWpJuQ2omoFATMYhNoeLYcvB7c3wJx2k/aoJXS9dYTbMQjjm+DiUydqWqCe4u6NPn8h2v4qmfmwxqjutKSBrRzlHPnKgzyVV1Dw5a5H9woNOh1WzEwZXbeKg+E9Q2AXu6QiidtLT3/EkKYdJKHBA7WMgrpVuGuzNF9AUvCvnrDSWTbPmcZC3B5TElk2bEqvn8M5OvKbFEy+Mf7sjKEh5MQG8jx7y6NTzC9S+KmubHACvu6UnuAgPolwnSrDq/ONX5nPKt3UfNgo1ZUwBAFwiFnWlFcvh5HNwnaUhkUcBsLS8
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)(82310400011)(186009)(1800799009)(64100799003)(36840700001)(40470700004)(46966006)(40460700003)(107886003)(2616005)(336012)(26005)(6506007)(6512007)(53546011)(36860700001)(83380400001)(47076005)(41300700001)(4326008)(6862004)(5660300002)(8676002)(2906002)(478600001)(6486002)(8936002)(70206006)(70586007)(316002)(54906003)(82740400003)(356005)(81166007)(86362001)(36756003)(40480700001)(33656002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Oct 2023 01:00:10.7152
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 685aa3e5-4bca-454c-f0d5-08dbceac69c7
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: AM9PR08MB6019

SGkgSmFuLA0KDQo+IE9uIE9jdCAxNiwgMjAyMywgYXQgMjM6MTIsIEphbiBCZXVsaWNoIDxqYmV1
bGljaEBzdXNlLmNvbT4gd3JvdGU6DQo+IA0KPiBPbiAwMy4xMC4yMDIzIDAyOjE5LCBIZW5yeSBX
YW5nIHdyb3RlOg0KPj4+IE9uIE9jdCAzLCAyMDIzLCBhdCAwNjo0NiwgU3RlZmFubyBTdGFiZWxs
aW5pIDxzc3RhYmVsbGluaUBrZXJuZWwub3JnPiB3cm90ZToNCj4+PiANCj4+PiBPbiBNb24sIDIg
T2N0IDIwMjMsIEZlZGVyaWNvIFNlcmFmaW5pIHdyb3RlOg0KPj4+PiBNYWtlIGZ1bmN0aW9uIGRl
Y2xhcmF0aW9uIGFuZCBkZWZpbml0aW9uIGNvbnNpc3RlbnQuDQo+Pj4+IE5vIGZ1bmN0aW9uYWwg
Y2hhbmdlLg0KPj4+PiANCj4+Pj4gU2lnbmVkLW9mZi1ieTogRmVkZXJpY28gU2VyYWZpbmkgPGZl
ZGVyaWNvLnNlcmFmaW5pQGJ1Z3NlbmcuY29tPg0KPj4+IA0KPj4+IFJldmlld2VkLWJ5OiBTdGVm
YW5vIFN0YWJlbGxpbmkgPHNzdGFiZWxsaW5pQGtlcm5lbC5vcmc+DQo+PiANCj4+IFJlbGVhc2Ut
YWNrZWQtYnk6IEhlbnJ5IFdhbmcgPEhlbnJ5LldhbmdAYXJtLmNvbT4NCj4gDQo+IFdlJ3JlIHBh
c3QgUkMzLCBzbyBJJ2QgbGlrZSB0byBjb25maXJtIHdoZXRoZXIgdGhpcyBzdGlsbCBob2xkcy4N
Cg0KVGhhbmtzIGZvciByZWFjaGluZyBvdXQuIEFsdGhvdWdoIHdlIHJlYWNoZWQgYW4gYWdyZWVt
ZW50IHRoYXQgd2UgbmVlZCBhIGNhc2UNCmJ5IGNhc2UgYW5hbHlzaXMgZm9yIGlmIG1lcmdpbmcg
TUlTUkEgcGF0Y2hlcyBvciBub3QgdG8gNC4xOCwgYW5kIHRlY2huaWNhbGx5IE1JU1JBDQpwYXRj
aGVzIHNob3VsZCBiZSBjb21taXR0ZWQgYnkgUkMyLCB0byBiZSBob25lc3QgZm9yIHN1Y2ggYSBz
aW1wbGUgcGF0Y2ggSSBhbSBub3QNCmdvaW5nIHRvIGJsb2NrIGl0IGJlY2F1c2UgSSByZWFsbHkg
ZG9u4oCZdCB0aGluayBpdCB3aWxsIGNhdXNlIGEgYmVoYXZpb3JhbCBjaGFuZ2UsIHNvDQp5ZXMg
bXkgcmVsZWFzZS1hY2sgdGFnIHN0aWxsIGhvbGRzLiBGZWVsIGZyZWUgdG8gY29tbWl0IGl0Lg0K
DQpLaW5kIHJlZ2FyZHMsDQpIZW5yeSANCg0KDQo+IA0KPiBKYW4NCg0K


From xen-devel-bounces@lists.xenproject.org Tue Oct 17 01:02:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 17 Oct 2023 01:02:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617964.961128 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsYTM-0004Gv-0n; Tue, 17 Oct 2023 01:02:12 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617964.961128; Tue, 17 Oct 2023 01: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 1qsYTL-0004Go-UT; Tue, 17 Oct 2023 01:02:11 +0000
Received: by outflank-mailman (input) for mailman id 617964;
 Tue, 17 Oct 2023 01:02: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=qhkS=F7=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qsYTL-0004Gi-2W
 for xen-devel@lists.xenproject.org; Tue, 17 Oct 2023 01:02:11 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur04on2050.outbound.protection.outlook.com [40.107.7.50])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id cc7b1228-6c88-11ee-98d4-6d05b1d4d9a1;
 Tue, 17 Oct 2023 03:02:10 +0200 (CEST)
Received: from AM4PR07CA0026.eurprd07.prod.outlook.com (2603:10a6:205:1::39)
 by PAVPR08MB8848.eurprd08.prod.outlook.com (2603:10a6:102:321::18) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.35; Tue, 17 Oct
 2023 01:01:27 +0000
Received: from AM7EUR03FT029.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:205:1:cafe::7f) by AM4PR07CA0026.outlook.office365.com
 (2603:10a6:205:1::39) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.17 via Frontend
 Transport; Tue, 17 Oct 2023 01:01:27 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM7EUR03FT029.mail.protection.outlook.com (100.127.140.143) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6907.20 via Frontend Transport; Tue, 17 Oct 2023 01:01:27 +0000
Received: ("Tessian outbound 0ae75d4034ba:v211");
 Tue, 17 Oct 2023 01:01:26 +0000
Received: from e756384b19f5.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 62FA9C11-CE9D-4C86-807E-719FF862DCA0.1; 
 Tue, 17 Oct 2023 01:01:15 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id e756384b19f5.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Tue, 17 Oct 2023 01:01:15 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by AS2PR08MB8405.eurprd08.prod.outlook.com (2603:10a6:20b:558::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.36; Tue, 17 Oct
 2023 01:01:14 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41%4]) with mapi id 15.20.6886.034; Tue, 17 Oct 2023
 01: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: cc7b1228-6c88-11ee-98d4-6d05b1d4d9a1
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=gGd3wAwYvO67/uyc9zL52fvkIFMjk8vXoIsfUBjC+Rg=;
 b=Oa6x/NY7O7kuihfqGMr0cAMBbDtPhLphJjgkbaC3raC7UJmLyYpB1kK91zhXRNx+sD7pDd5WopD2ppCIjSYOv9+AMF7uaODlYzT4LV65q3j4cMhWjRPhPTcvALfnkHbAN33paN9d7CWNlgBMADQ0bn4lx+Qe7J4Q0JLoMXYJkx8=
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: 1aa56af410bf2b61
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=D0NSwUFm6mKPEyN3oI4Vh8npOQo6YNY9IF4BnFHqgwV+WkxfTPZqoW6Dr69ATpyoM+nRiyr+k8oRohRoI1JEaIAAC/NwQh4Dzu7JhM7Fme9OJ3m4IukBcPqBBjYEdzTyaXJYA+o5wRBQipcIcgPNvpp/DNp6tyUCJA5t3TJUWfYJErmq3E93BZ2YuzJU86hzF9o2geJeH9TpKY3U7sIxhFskGQYk95ytAJy3uc0GreDG7QzWb5YSf6f8Ubu33Rh/ZIe9iVpsflcNgLGZ8gkKb05zzsZS2CnhKnJgLpj8062jYeM7QCzCVFhNCLr94Ey6m2h0Ou20R8x4MOGLr5xsDg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=gGd3wAwYvO67/uyc9zL52fvkIFMjk8vXoIsfUBjC+Rg=;
 b=oVc6R1Pmes5ofUDVTENwzQtkvLYB0/u28JOekr3PCULdJ7947QKY5TiTloZN3vYB8RTwTQ7ruIMj1czXAuUsNjbo3q3B8OtCLWrEscyrt5kPgW/lKmZ5oNmRkVLgf7nN+tEwDIPxbmKmBgx1+P5CvvtyUe2FwBfOqKFyEN5YvA4DW0zGE7JLBS8SJ9CEHvaw0kszPoamSnfGHExkxsAwO7gFY8b2bl6WCj+05a/LVtcuO7cRVOBFpfTOgmrh6G64cK0hLjg8my5GPnBHKRR1m0zI/dMarvPcnBtMPKorTcgeKwtaJcatTTGNX/amRf2tB1EurbqBXapqUDCz9Xo7Sg==
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=gGd3wAwYvO67/uyc9zL52fvkIFMjk8vXoIsfUBjC+Rg=;
 b=Oa6x/NY7O7kuihfqGMr0cAMBbDtPhLphJjgkbaC3raC7UJmLyYpB1kK91zhXRNx+sD7pDd5WopD2ppCIjSYOv9+AMF7uaODlYzT4LV65q3j4cMhWjRPhPTcvALfnkHbAN33paN9d7CWNlgBMADQ0bn4lx+Qe7J4Q0JLoMXYJkx8=
From: Henry Wang <Henry.Wang@arm.com>
To: Jan Beulich <jbeulich@suse.com>
CC: Federico Serafini <federico.serafini@bugseng.com>, Xen-devel
	<xen-devel@lists.xenproject.org>, "consulting@bugseng.com"
	<consulting@bugseng.com>, 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>,
	=?iso-8859-1?Q?Roger_Pau_Monn=E9?= <roger.pau@citrix.com>, Stefano Stabellini
	<sstabellini@kernel.org>
Subject: Re: [XEN PATCH] xen/irq: address violations of MISRA C:2012 Rule 8.2
Thread-Topic: [XEN PATCH] xen/irq: address violations of MISRA C:2012 Rule 8.2
Thread-Index: AQHZ9Rx0XYZCWJoaU0iHka8JZCUjxbA3GfsAgAAaU4CAFWhrAIAAo9uA
Date: Tue, 17 Oct 2023 01:01:13 +0000
Message-ID: <B74E92BC-D1D3-4498-8A14-A40BE2C48A74@arm.com>
References:
 <fc077d4dba9c37d9d81cea5d184e59f00c3cdcd4.1696242264.git.federico.serafini@bugseng.com>
 <alpine.DEB.2.22.394.2310021545060.2348112@ubuntu-linux-20-04-desktop>
 <F8ED4DE9-CE9B-4B51-B702-893D062EFBB7@arm.com>
 <ee0fe22c-399e-70c6-830c-92617b987abe@suse.com>
In-Reply-To: <ee0fe22c-399e-70c6-830c-92617b987abe@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_|AS2PR08MB8405:EE_|AM7EUR03FT029:EE_|PAVPR08MB8848:EE_
X-MS-Office365-Filtering-Correlation-Id: dab79114-bfc6-43f9-745c-08dbceac9754
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:
 xDpMsM0Ik2IR6LSSa4WAS5VNOBcG3kwar5tbl9OlDOI4Ww4xBqpoTRiB7u8Py5HuK0zkpQ1+iqznHw0v8C7fnFkH5JNfvSDbhkyVUY/a/IVG+q1N5n5OwjSvi0rRyJ9g545vlvTIUfOVJJd5yqYVVUMmMnoz4tFte96I0XJnUZOov+Uexiv/kqQ3doT26utI8NI9hEqLt9LYq8EvCso8MCyEg/3WWasw38M8x7aQqu8rhLnvYQhdGFzd54EUkd2zJtoTJ+Bw3imNS1IC4sr37iMgvBptAHK0TvdsmPe+BSWVc2uw6ncBmvdWFtkktVT/KFJYEH6yFjhlH8Xvflojlp+9jwXmjOANzRYLlst1jirBOisTwbK+jEzNZT+qJ4p7cQUnKnnhZNwEuZlR8B1ZtM18AX8zdfc9s0zgYl9PxCPAHfzrL7pFQsrmBf0sSde7GzGjvLUgtSTzAL3mTLzHZ0BKFS6bcWEWzCc4H//es1W6Ew/OshCEnQaULwqRfcETegsC0v9Vf3m9bI4wXhqJCVI69SjpeQFyaeWFYv/Q0yX/2MycJ8HTivsz1LGOWuXXoKMmHO8kC3zsCvZ7sWcWcHAGaSdONY8q86ZfbTM8Nf+Ck6Sod4wZEXkfOC77K4OIf+ggd8u6sysIIs1C2o17WA==
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)(366004)(346002)(396003)(39860400002)(230922051799003)(64100799003)(451199024)(186009)(1800799009)(478600001)(6486002)(91956017)(66946007)(76116006)(66556008)(66476007)(66446008)(64756008)(54906003)(71200400001)(6916009)(86362001)(38100700002)(2616005)(6512007)(26005)(53546011)(6506007)(33656002)(38070700005)(41300700001)(36756003)(122000001)(5660300002)(8936002)(4326008)(316002)(2906002)(7416002)(4744005)(8676002)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="iso-8859-1"
Content-ID: <04A8CF3E9214EB4284D2134392C3F80A@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS2PR08MB8405
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:
 AM7EUR03FT029.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	8d87bd57-31ea-4241-aabe-08dbceac8f81
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	iwmylh8cueNXRjpMSBQZS0/2GVE3ysTge+AvTxrKWDNHHg2KBdyaTD3+CsrU1qnF46s9nGQLGLfWixAmardyAvDJcNhsc0fr5UAsfqt2fOa0r9nGnJ044w+SZiM5GCHNgStOib/lGoB74MsKsNQmcMnso36G/F/KjpsDsw10tYBDkTPd4E7PeeJfv6etS87NB1tjK9A6qH89l4f7UyZ5h/V9PIZfF/6xaOOVecShu5L7yrlj9WGm2PP2z7rb5PU7bzs3rDFIpHDV8n0HslwtIrcC7p4rZXtbS4hNF5I2+9fzHbTB2vUtauBUlnoqR6n+h6jSTaX7LmYPTsDxAAL+mO8MPGgLTQJkN2SL1o9kC/Xfd3a3A1csoAGjNgFvAzyJOiCCcrSpOdlgB7X8eT6yQ34kJKlcCu2JwipgTlCLYsODN8tOY6Kq50PlHzMVypslFTsuE6ME3JY9Sr9k+rcdFrqniLbPJxTY16ntjk2/3EDmiUimciYuj+Pw+bn+4lOcRql31KkSX7bb4ixtLOl4DdfLJO5jZvtl5a9uIOu+5RM+1Kw4M+R+6FWQXDH9dQp9/Q6ToBh1oRwAsjN7aIOzfpCw8ZzsQEygPSsbGA+SDNVHC7Qj00o15/y+CELR6O1nSSiZ18nh/Ao5OxB5w+mnUHEFwSgYX/Uia7653XbUQRfhshBI7cjhm7BpmDb5KqRnueio5a5W9h7HlN+kzbAp5sHT1X/5jDF/tMJH64wE+kpX+YogykegxHb83kCyt2It
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)(186009)(82310400011)(451199024)(64100799003)(1800799009)(40470700004)(46966006)(36840700001)(478600001)(70206006)(6486002)(70586007)(54906003)(107886003)(6506007)(41300700001)(26005)(53546011)(336012)(6512007)(316002)(2616005)(4744005)(8936002)(8676002)(6862004)(2906002)(5660300002)(33656002)(4326008)(36756003)(81166007)(86362001)(47076005)(36860700001)(82740400003)(356005)(40460700003)(40480700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Oct 2023 01:01:27.1023
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: dab79114-bfc6-43f9-745c-08dbceac9754
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:
	AM7EUR03FT029.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAVPR08MB8848



> On Oct 16, 2023, at 23:14, Jan Beulich <jbeulich@suse.com> wrote:
>=20
> On 03.10.2023 02:19, Henry Wang wrote:
>>> On Oct 3, 2023, at 06:45, Stefano Stabellini <sstabellini@kernel.org> w=
rote:
>>>=20
>>> On Mon, 2 Oct 2023, Federico Serafini wrote:
>>>> Add missing parameter names. No functional change.
>>>>=20
>>>> Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
>>>=20
>>> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
>>=20
>> Release-acked-by: Henry Wang <Henry.Wang@arm.com>
>=20
> Same question here wrt applicability now that we're past RC3.

Same answer here for this patch, as this is a simple one and nothing behavi=
oral
is expected to change. So I am ok to commit this.

Kind regards,
Henry

>=20
> Jan



From xen-devel-bounces@lists.xenproject.org Tue Oct 17 01:02:45 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 17 Oct 2023 01:02:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617967.961139 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsYTt-0004mc-A2; Tue, 17 Oct 2023 01:02:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617967.961139; Tue, 17 Oct 2023 01: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 1qsYTt-0004mV-5r; Tue, 17 Oct 2023 01:02:45 +0000
Received: by outflank-mailman (input) for mailman id 617967;
 Tue, 17 Oct 2023 01:02: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=qhkS=F7=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qsYTs-0004mL-DO
 for xen-devel@lists.xenproject.org; Tue, 17 Oct 2023 01:02:44 +0000
Received: from EUR03-AM7-obe.outbound.protection.outlook.com
 (mail-am7eur03on2060c.outbound.protection.outlook.com
 [2a01:111:f400:7eaf::60c])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id e038e76d-6c88-11ee-98d4-6d05b1d4d9a1;
 Tue, 17 Oct 2023 03:02:43 +0200 (CEST)
Received: from AS9PR01CA0022.eurprd01.prod.exchangelabs.com
 (2603:10a6:20b:540::26) by DBBPR08MB6314.eurprd08.prod.outlook.com
 (2603:10a6:10:20f::10) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.36; Tue, 17 Oct
 2023 01:02:39 +0000
Received: from AM7EUR03FT025.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:20b:540:cafe::f0) by AS9PR01CA0022.outlook.office365.com
 (2603:10a6:20b:540::26) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.30 via Frontend
 Transport; Tue, 17 Oct 2023 01:02:39 +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.6907.20 via Frontend Transport; Tue, 17 Oct 2023 01:02:38 +0000
Received: ("Tessian outbound 6d14f3380669:v211");
 Tue, 17 Oct 2023 01:02:37 +0000
Received: from f62bb415c8ce.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 A972A1EE-B7F1-45AC-93A8-55759847BA16.1; 
 Tue, 17 Oct 2023 01:02:30 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id f62bb415c8ce.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Tue, 17 Oct 2023 01:02:30 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by AS2PR08MB8405.eurprd08.prod.outlook.com (2603:10a6:20b:558::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.36; Tue, 17 Oct
 2023 01:02:29 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41%4]) with mapi id 15.20.6886.034; Tue, 17 Oct 2023
 01:02: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: e038e76d-6c88-11ee-98d4-6d05b1d4d9a1
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=ekQvGqXYkcI8LaosjYeBIv6kfj2Eba46wW2OXj9K0zQ=;
 b=6E8P+JV++k1+ESZHA/89kKC5AUaQX63ee2zkKni9Fx3Ww+s9+lnLER2GfQyG/zbk2xgZp3Bf4F0l6pWDu26IiYTi0WKmR681Be4sJs9dkAJUBnAf3kzaM0hOmiAKitSN7qEIkSoocGl6pMZe/tOF5c7rtgagqrnwS61PiagEZno=
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: 93955e5a60a68d29
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=R/uRu7tft9X7wth+yydw1DW0FlmCYY/8mmvUDL4UEyAYlpYfBZ6vVjSxVrlKSsWHlOKC3yeIMEI9dpzLwaWeWSU5zJPRwLCzXe491pXh6LKbnpJgBmfdXnxSGGCSH+4lfg2kTtu5tSY0SKSTiZkwxlfgkZl1XD6Lsllbh9/EnVq52Nqi9VRbBb4Wxu1pAVUBFBc4NOJD9kNBL+LFlgnqtBFpXhl4/QRdOeurc2z6yEX8dvkAv8wbwrz1zkmgG9slrFMH5iEi880hqJT2Lq+v3kRjyRMqwm1kuZq5SmasWNFUuAa+YUg01fu/FDIvNEa8fxqA8jTehMFScbmx4IcNwg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=ekQvGqXYkcI8LaosjYeBIv6kfj2Eba46wW2OXj9K0zQ=;
 b=LfBP1gH3HqbYkL+yQVeCpDWKST0hg30zvQ6mInVoiJxEO3Z/u037f/GnAdR2fOKxDg523ddiGz4eq1Cdhtv0AinnthjskjAJeLtEAI9LG7PUnceeWBJ/yNLr/vF0pD4lPxAXQDqC7SJLUf0y0OcL5f+Tq7mAQgk68/5SUEKR6/XQCMglgACxbjo16MzKG+imFeLIAZU2waxwjdLUGLRIcz7DWg+nK2RXqz/CGSU+LmmVg8Y4c5hSo/+h+teffPUqGu2WY80+pHgsMvmcL5nA9BwsY9VuMLfalVJaE8mVnk6urJXDezmbs0pBXdR4K3ghK6I3Q/BIcr33Sr8ojKq3Vg==
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=ekQvGqXYkcI8LaosjYeBIv6kfj2Eba46wW2OXj9K0zQ=;
 b=6E8P+JV++k1+ESZHA/89kKC5AUaQX63ee2zkKni9Fx3Ww+s9+lnLER2GfQyG/zbk2xgZp3Bf4F0l6pWDu26IiYTi0WKmR681Be4sJs9dkAJUBnAf3kzaM0hOmiAKitSN7qEIkSoocGl6pMZe/tOF5c7rtgagqrnwS61PiagEZno=
From: Henry Wang <Henry.Wang@arm.com>
To: Stefano Stabellini <sstabellini@kernel.org>
CC: Xen-devel <xen-devel@lists.xenproject.org>, George Dunlap
	<george.dunlap@cloud.com>, Stefano Stabellini <stefano.stabellini@amd.com>,
	"jgross@suse.com" <jgross@suse.com>, "julien@xen.org" <julien@xen.org>,
	"wl@xen.org" <wl@xen.org>
Subject: Re: [PATCH] cxenstored: wait until after reset to notify dom0less
 domains
Thread-Topic: [PATCH] cxenstored: wait until after reset to notify dom0less
 domains
Thread-Index: AQHZ/in5rn86ZQ9wkk+3c1ZjNJ43H7BNEK2AgAAeJQA=
Date: Tue, 17 Oct 2023 01:02:29 +0000
Message-ID: <04B22EBC-4766-45B1-A5E0-44E1A7EC2FE0@arm.com>
References: <20231013230624.1007969-1-sstabellini@kernel.org>
 <alpine.DEB.2.22.394.2310161614080.965337@ubuntu-linux-20-04-desktop>
In-Reply-To:
 <alpine.DEB.2.22.394.2310161614080.965337@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_|AS2PR08MB8405:EE_|AM7EUR03FT025:EE_|DBBPR08MB6314:EE_
X-MS-Office365-Filtering-Correlation-Id: c29f9806-b248-4dbe-6d8a-08dbceacc1c8
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:
 gKqwW0//EK6Zeia4vst6ViNY3iIIjBjQhi4VvokLw2GZ//fscQcR46JCKO/Sh73wnfcTTG8DP+W8NxVyBGStEj2HDSztsaQLRS2bjChT02SmhTCEawiy6wYrFvR75hwQjq0KhoFKtIGuuDZa/ufK0utee4GViE3aP1BbBCZtz/gB2nlhf32HZDITyZj34nkGgyD3AGX2QxtoPO0fxGCAbjR538VoRJfCbm3Qn2ypTZ5ZzDISY0Dr956Nq3WDsdpdanF2NVMsiR3N/zsLzQVguu/jayVQYeBW9eDG7MGs6/deySvVCUL7gtCVuYzqqXb3taf48InAau6pbMKN/tnykbbeqaNJUQ2bKT4Kdm4gXWKTPspmLYENDBp+lClannD9okZXu8oGpGnUr8U1hTtjnlp+3jLkQvCddkRXJ9p/8bHyAjNB//iQYmxarpQZaS5XhVoGMYS5S/nlIbo+VPaUzgHiufHFnBbOHVyC3eDcE5WFPF9WkIiIUpXnajreDQ+9VOJIKpVRfbBDt0II0g52tTHfXRiCuGq5OSBPYHAi8rmsNehUFBj/qvhmVr01sd9f81/N1LSj24BJ2iCztD/QhVlzqLuFbCCfHKJrBPYWTb9jausRKzIyImpuU/5f2dHbkNQTVcMgvDgOA32tC+KLwvz+b9qaYfuB48j/75cljX0=
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)(366004)(346002)(396003)(39860400002)(230922051799003)(64100799003)(451199024)(186009)(1800799009)(478600001)(6486002)(91956017)(66946007)(76116006)(66556008)(66476007)(66446008)(64756008)(54906003)(71200400001)(6916009)(83380400001)(86362001)(38100700002)(2616005)(6512007)(26005)(53546011)(6506007)(33656002)(38070700005)(41300700001)(36756003)(122000001)(5660300002)(8936002)(4326008)(316002)(2906002)(8676002)(32563001)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="us-ascii"
Content-ID: <1E92130511D30B44AEEA18F794E3FB9F@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS2PR08MB8405
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:
	774ca699-7e53-4726-2199-08dbceacbc6f
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	VSIMhaeQq2w63Lw39/eMCsaTU1BKJ7jWFT/3L7mdnHesIvOfxY7DF/b9Jyha4BX3FtzPDip7ZeV/Uy8F9J/tuNPjX0UEvL2hWkVD1BkL0x78YQ9xECcKWM7CbeYXu62eKCcDPi19turUHrm3Lp+fLZiSYwHrmdlJQJENSLik5UtVkChKwRCbAQ4gXz70OfLE2dz+/+TY6GSbrepJDkXnMRiQueo5q45ohreyFMjffSdZsroE15zjXAF+VVLU7tSIovXoGGURnCHQYOhMWWsIXF2+dHILgBb0gpPI1aN0WSAtCB9Ul+4W8Yk0hMLophMMXeWgUgO+nF0IFaCLK/KCFhg3lJO75LIoHcJCgBmEaMph5cQAmvGS0LoWnPyGekk5jfe4IGTRRHU1BVkqytIhfb9xWDtd9ZZ8VQwwEb7Whb3h1CN1dwBXxaDzwE7sLRZvaKhwsiPE/mSjTrDColV14aKikP4xC9hw/iOwwUBcTyUAjvX66vgxzUE6pB3ClNUaLtiRjNYLIEIgFjwiM+MlPEN0+nb+xAXy6+kZjpxvLVrHy+ITYVuqWY0G8jGSVl4NCqP7OcbhZHd1dSx/TeMzkb8Lg+s3ZhZCyPr9Nzt23YnMuhukV746jp5pp0K2IWJ+xai6k/g6Me9ln5HdOE+kRtg0xvMKXeFrSSXe3QGA5CzJyUCS41mbIs/DiTbP8BUipdzXZufX9zsFNNWbFWMJM9IdvtgQFQVr6HRZT2PKa2nrieLCJiCuKmf35xFAvb7M9mDDdbAe5Y8wvrRdUXXfIQ==
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)(1800799009)(451199024)(82310400011)(186009)(64100799003)(46966006)(36840700001)(40470700004)(70206006)(70586007)(40480700001)(316002)(54906003)(86362001)(2906002)(40460700003)(5660300002)(41300700001)(6862004)(8676002)(8936002)(4326008)(36756003)(33656002)(2616005)(81166007)(478600001)(6506007)(53546011)(6512007)(47076005)(336012)(82740400003)(6486002)(356005)(26005)(83380400001)(36860700001)(32563001);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Oct 2023 01:02:38.3266
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: c29f9806-b248-4dbe-6d8a-08dbceacc1c8
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: DBBPR08MB6314

Hi Stefano,

> On Oct 17, 2023, at 07:14, Stefano Stabellini <sstabellini@kernel.org> wr=
ote:
>=20
> +Henry for release ack

Thanks, I think we did have Juergen for reviewing this patch so:

Release-acked-by: Henry Wang <Henry.Wang@arm.com>

Kind regards,
Henry

>=20
>=20
> On Fri, 13 Oct 2023, Stefano Stabellini wrote:
>> From: George Dunlap <george.dunlap@cloud.com>
>>=20
>> Commit fc2b57c9a ("xenstored: send an evtchn notification on
>> introduce_domain") introduced the sending of an event channel to the
>> guest when first introduced, so that dom0less domains waiting for the
>> connection would know that xenstore was ready to use.
>>=20
>> Unfortunately, it was introduced in introduce_domain(), which 1) is
>> called by other functions, where such functionality is unneeded, and
>> 2) after the main XS_INTRODUCE call, calls domain_conn_reset().  This
>> introduces a race condition, whereby if xenstored is delayed, a domain
>> can wake up, send messages to the buffer, only to have them deleted by
>> xenstore before finishing its processing of the XS_INTRODUCE message.
>>=20
>> Move the connect-and-notfy call into do_introduce() instead, after the
>> domain_conn_rest(); predicated on the state being in the
>> XENSTORE_RECONNECT state.
>>=20
>> (We don't need to check for "restoring", since that value is always
>> passed as "false" from do_domain_introduce()).
>>=20
>> Also take the opportunity to add a missing wmb barrier after resetting
>> the indexes of the ring in domain_conn_reset.
>>=20
>> This change will also remove an extra event channel notification for
>> dom0 (because the notification is now done by do_introduce which is not
>> called for dom0.) The extra dom0 event channel notification was only
>> introduced by fc2b57c9a and was never present before. It is not needed
>> because dom0 is the one to tell xenstored the connection parameters, so
>> dom0 has to know that the ring page is setup correctly by the time
>> xenstored starts looking at it. It is dom0 that performs the ring page
>> init.
>>=20
>> Signed-off-by: George Dunlap <george.dunlap@cloud.com>
>> Signed-off-by: Stefano Stabellini <stefano.stabellini@amd.com>
>> CC: jgross@suse.com
>> CC: julien@xen.org
>> CC: wl@xen.org
>> ---
>> tools/xenstored/domain.c | 14 ++++++++------
>> 1 file changed, 8 insertions(+), 6 deletions(-)
>>=20
>> diff --git a/tools/xenstored/domain.c b/tools/xenstored/domain.c
>> index a6cd199fdc..f6ef37856c 100644
>> --- a/tools/xenstored/domain.c
>> +++ b/tools/xenstored/domain.c
>> @@ -923,6 +923,7 @@ static void domain_conn_reset(struct domain *domain)
>>=20
>> domain->interface->req_cons =3D domain->interface->req_prod =3D 0;
>> domain->interface->rsp_cons =3D domain->interface->rsp_prod =3D 0;
>> + xen_wmb();
>> }
>>=20
>> /*
>> @@ -988,12 +989,6 @@ static struct domain *introduce_domain(const void *=
ctx,
>> /* Now domain belongs to its connection. */
>> talloc_steal(domain->conn, domain);
>>=20
>> - if (!restore) {
>> - /* Notify the domain that xenstore is available */
>> - interface->connection =3D XENSTORE_CONNECTED;
>> - xenevtchn_notify(xce_handle, domain->port);
>> - }
>> -
>> if (!is_master_domain && !restore)
>> fire_special_watches("@introduceDomain");
>> } else {
>> @@ -1033,6 +1028,13 @@ int do_introduce(const void *ctx, struct connecti=
on *conn,
>>=20
>> domain_conn_reset(domain);
>>=20
>> + if (domain->interface !=3D NULL &&
>> + domain->interface->connection =3D=3D XENSTORE_RECONNECT) {
>> + /* Notify the domain that xenstore is available */
>> + domain->interface->connection =3D XENSTORE_CONNECTED;
>> + xenevtchn_notify(xce_handle, domain->port);
>> + }
>> +
>> send_ack(conn, XS_INTRODUCE);
>>=20
>> return 0;
>> --=20
>> 2.25.1
>>=20



From xen-devel-bounces@lists.xenproject.org Tue Oct 17 01:03:20 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 17 Oct 2023 01:03:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617970.961149 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsYUQ-0005JD-J9; Tue, 17 Oct 2023 01:03:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617970.961149; Tue, 17 Oct 2023 01:03: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 1qsYUQ-0005J3-Fd; Tue, 17 Oct 2023 01:03:18 +0000
Received: by outflank-mailman (input) for mailman id 617970;
 Tue, 17 Oct 2023 01:03: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=dFgi=F7=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qsYUP-0004bB-3t
 for xen-devel@lists.xenproject.org; Tue, 17 Oct 2023 01:03: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 f274833a-6c88-11ee-9b0e-b553b5be7939;
 Tue, 17 Oct 2023 03:03: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 4B6C3CE19A1;
 Tue, 17 Oct 2023 01:03:10 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id B8106C433C7;
 Tue, 17 Oct 2023 01:03: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: f274833a-6c88-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1697504588;
	bh=r6peTUbeu+FBL2dfOuzxA5dAAeC0Fx9l+Pd+mXmzXZw=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=VlZoSACgRe6FtpTx6ZB7dfHyrMtXxr85au++EDmdIh0jtb3XiFZQEDjpaqioGOU9M
	 Yhicste5NAaWsCfZCQAxLLAtCH1bXxeAIFWg+IHhzNKiZKp1b8CmuMbCIvEgDLDeJo
	 G+ED6dD+JCFxRIgM3rmqrW8qcJYkAdQ3KB4N2fgplU3atguQPWR2x+HWg5JULy9Oah
	 YgpFnwE4G8zlrtiVgD+C3nNbZZCo6E9TByAhxNid9VkJToCr6j2tkV1U8Dg+eegZFf
	 LJSRFYHXqrGV4I2EXW4o5KkMLLS6ltAg2oMazIjuKBsQfJG46W4gH9UCyKXotX9wo7
	 BMlUtYBWxOrsQ==
Date: Mon, 16 Oct 2023 18:03:06 -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>, 
    Federico Serafini <federico.serafini@bugseng.com>, 
    xen-devel@lists.xenproject.org, consulting@bugseng.com, 
    Bertrand Marquis <bertrand.marquis@arm.com>, 
    Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, 
    Henry Wang <henry.wang@arm.com>
Subject: Re: [XEN PATCH 02/10] arm/cpufeature: address violations of MISRA
 C:2012 Rule 8.2
In-Reply-To: <0e5a8d7a-4003-41a1-a041-8c8765351cb6@xen.org>
Message-ID: <alpine.DEB.2.22.394.2310161802370.965337@ubuntu-linux-20-04-desktop>
References: <cover.1697207038.git.federico.serafini@bugseng.com> <3b28dca993cac9391b997c1744218cf4062907df.1697207038.git.federico.serafini@bugseng.com> <alpine.DEB.2.22.394.2310131610440.965337@ubuntu-linux-20-04-desktop>
 <alpine.DEB.2.22.394.2310131633520.965337@ubuntu-linux-20-04-desktop> <0e5a8d7a-4003-41a1-a041-8c8765351cb6@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, 16 Oct 2023, Julien Grall wrote:
> On 14/10/2023 00:34, Stefano Stabellini wrote:
> > On Fri, 13 Oct 2023, Stefano Stabellini wrote:
> > > On Fri, 13 Oct 2023, Federico Serafini wrote:
> > > > Add missing parameter names, no functional change.
> > > > 
> > > > Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
> > > > ---
> > > >   xen/arch/arm/include/asm/cpufeature.h | 8 ++++----
> > > >   1 file changed, 4 insertions(+), 4 deletions(-)
> > > > 
> > > > diff --git a/xen/arch/arm/include/asm/cpufeature.h
> > > > b/xen/arch/arm/include/asm/cpufeature.h
> > > > index 8011076b8c..41e97c23dd 100644
> > > > --- a/xen/arch/arm/include/asm/cpufeature.h
> > > > +++ b/xen/arch/arm/include/asm/cpufeature.h
> > > > @@ -127,8 +127,8 @@ static inline void cpus_set_cap(unsigned int num)
> > > >   struct arm_cpu_capabilities {
> > > >       const char *desc;
> > > >       u16 capability;
> > > > -    bool (*matches)(const struct arm_cpu_capabilities *);
> > > > -    int (*enable)(void *); /* Called on every active CPUs */
> > > > +    bool (*matches)(const struct arm_cpu_capabilities *caps);
> > > 
> > > all the implementations of matches I found in xen/arch/arm/cpuerrata.c
> > > actually call the parameter "entry"
> > > 
> > > 
> > > > +    int (*enable)(void *ptr); /* Called on every active CPUs */
> > > 
> > > this one instead is "data"
> > 
> > I committed all the other patches in this series to the my for-4.19 branch
> 
> I have left some comments in patch #1. Given this is not the latest master, I
> think we should consider to remove/replace the patch rather than introducing a
> follow-up.

Makes sense. I took out patch #1 of this series and also took the
opportunity to rebase 4.19 on the latest staging


From xen-devel-bounces@lists.xenproject.org Tue Oct 17 01:04:22 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 17 Oct 2023 01:04:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617976.961159 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsYVQ-0006iU-0c; Tue, 17 Oct 2023 01:04:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617976.961159; Tue, 17 Oct 2023 01:04: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 1qsYVP-0006iN-Sk; Tue, 17 Oct 2023 01:04:19 +0000
Received: by outflank-mailman (input) for mailman id 617976;
 Tue, 17 Oct 2023 01:04: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 1qsYVP-0006iD-9j; Tue, 17 Oct 2023 01:04: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 1qsYVP-0002Gg-7F; Tue, 17 Oct 2023 01: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 1qsYVO-00041d-Rq; Tue, 17 Oct 2023 01:04:18 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qsYVO-00052V-RM; Tue, 17 Oct 2023 01:04: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=JEF/UjwVb4/LZwXfcsqQ/+uCqUKEmnjdFefZgA0XTS8=; b=y9lK35/Vhgyn/thuIRJtMpzXWJ
	xX+uFcto8/GbrhFD+a/DeEmP85gcwa312mfVcdAL/6upbtiWX72kXhlrUQGuFn7SIXfSOR4EZn9vi
	vxeeQx3EGZC32AozSAhhbJCW5iOlM/Gxl8CKOAOcHn0v7juCKM+oiRHAPwA9bKrfQ0uQ=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183383-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 183383: tolerable FAIL - PUSHED
X-Osstest-Failures:
    xen-unstable:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:xen-install: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-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-qemut-win7-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-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-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2: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-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm: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-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-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-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2: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-arndale:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-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-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=6432228fb5808150d3c5c14affb3d46af81b3878
X-Osstest-Versions-That:
    xen=730406ab81094115d9fb5ca00ba8d53cec1279b3
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 17 Oct 2023 01:04:18 +0000

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

Failures :-/ but no regressions.

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

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183379
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183379
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 183379
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183379
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183379
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183379
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 183379
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183379
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183379
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 183379
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 183379
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183379
 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-credit1  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-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  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-amd64-amd64-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-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-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-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-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-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                  6432228fb5808150d3c5c14affb3d46af81b3878
baseline version:
 xen                  730406ab81094115d9fb5ca00ba8d53cec1279b3

Last test of basis   183379  2023-10-16 01:53:31 Z    0 days
Testing same since   183383  2023-10-16 13:38:36 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                  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                                       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
   730406ab81..6432228fb5  6432228fb5808150d3c5c14affb3d46af81b3878 -> master


From xen-devel-bounces@lists.xenproject.org Tue Oct 17 01:12:41 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 17 Oct 2023 01:12:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617982.961169 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsYdQ-0008Hi-RB; Tue, 17 Oct 2023 01:12:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617982.961169; Tue, 17 Oct 2023 01:12: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 1qsYdQ-0008Hb-Mo; Tue, 17 Oct 2023 01:12:36 +0000
Received: by outflank-mailman (input) for mailman id 617982;
 Tue, 17 Oct 2023 01:12: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=qhkS=F7=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qsYdP-0008HV-Bc
 for xen-devel@lists.xenproject.org; Tue, 17 Oct 2023 01:12:35 +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 4029afb2-6c8a-11ee-98d4-6d05b1d4d9a1;
 Tue, 17 Oct 2023 03:12:34 +0200 (CEST)
Received: from AS9PR06CA0122.eurprd06.prod.outlook.com (2603:10a6:20b:467::8)
 by AM9PR08MB6706.eurprd08.prod.outlook.com (2603:10a6:20b:303::5)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.46; Tue, 17 Oct
 2023 01:12:29 +0000
Received: from AM7EUR03FT052.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:20b:467:cafe::b3) by AS9PR06CA0122.outlook.office365.com
 (2603:10a6:20b:467::8) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.36 via Frontend
 Transport; Tue, 17 Oct 2023 01:12:29 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM7EUR03FT052.mail.protection.outlook.com (100.127.140.214) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6907.20 via Frontend Transport; Tue, 17 Oct 2023 01:12:29 +0000
Received: ("Tessian outbound 6d14f3380669:v211");
 Tue, 17 Oct 2023 01:12:28 +0000
Received: from 906f395cd9d3.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 2DED9383-C922-4B21-84B2-8813ECD2C64E.1; 
 Tue, 17 Oct 2023 01:12:18 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 906f395cd9d3.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Tue, 17 Oct 2023 01:12:18 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by GV1PR08MB7380.eurprd08.prod.outlook.com (2603:10a6:150:24::7) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.35; Tue, 17 Oct
 2023 01:12:13 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41%4]) with mapi id 15.20.6886.034; Tue, 17 Oct 2023
 01:12: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: 4029afb2-6c8a-11ee-98d4-6d05b1d4d9a1
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=Xp9bRPTSC8h0ttFQuqpuJUs8smcqU46z5nqWMmvS5N4=;
 b=vCXePs39kfv/++RBo5P4q6Rr3SGabntL41aGYvfpXglnu0toBtYl4igdKaNqRtksXaHo1U0cRNpREv2SOXlkSbj+yKekd/U/40faNvy9E+0L1Htj0lwNaKvnIdOko2DNLhCB8ymOlTcB1iQ6sQPdBTF5f7kbhzFZzo1r1VnGLEU=
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: 1ef7ef0a82154ca8
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=nryqDKRHfMSDomrlXPhBuu/9+g2GlxrbHaH+xRjd1wfxXEouhtj0jAAehGkuEnc5fTtpGDfp1qI++gFepoAUzDCBWvIxwdPbSjpz1nuIv23ch66eTQ8eEIuGWry0n2PwpMXeYsY+WDbMqHml4ORBX3cZsUTGy4VHvTs/34ehgr7vPjvBasRQeAmoquizpk0Ph9lUse/kZ/uj5DNordMSHFXPB8uEoIMmt06MjB80dCxq+Xb/3q+fTuSZ78JMF1En8tM2lOwt2abeeVL1jOEWdkFSU24DIRAd7eyd4FxUUHrZ0tqNfnqQUsXm6Y8lNGCIhqTK4h68mGsF76E1Bzq1xA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=Xp9bRPTSC8h0ttFQuqpuJUs8smcqU46z5nqWMmvS5N4=;
 b=fl1VVvIqQv3vI/afGzgfCT7g/qAiZlWLEAxVcpnvAp1AyN/xWfSCCaswMM6KC9cyg5prf4l8VMF0arLM9toubhth0TALJgrT2lttl8iK+DX59jPdOXvxj889MuCiO56IJtmfwTl+0PhmYVNS8w4kL7en2ssAllmQbjcrJAB7vKijIrC6talo9Eewxt552P2362w/wY4kjpM3nIWeiIisaXnuHo94ao1YvwksExiqHi78Q1el813EJStAnINUulJMFvqhhFq5eY3w+2r5DaAiYDN6wCAkuzfPeIw5WLlo1nvRby7ydZ1BUvXPPk11/UOsXpYlTsuphLAVhEXIDjTcbQ==
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=Xp9bRPTSC8h0ttFQuqpuJUs8smcqU46z5nqWMmvS5N4=;
 b=vCXePs39kfv/++RBo5P4q6Rr3SGabntL41aGYvfpXglnu0toBtYl4igdKaNqRtksXaHo1U0cRNpREv2SOXlkSbj+yKekd/U/40faNvy9E+0L1Htj0lwNaKvnIdOko2DNLhCB8ymOlTcB1iQ6sQPdBTF5f7kbhzFZzo1r1VnGLEU=
From: Henry Wang <Henry.Wang@arm.com>
To: Julien Grall <julien@xen.org>
CC: Xen-devel <xen-devel@lists.xenproject.org>, Penny Zheng
	<Penny.Zheng@arm.com>, Stefano Stabellini <sstabellini@kernel.org>, Bertrand
 Marquis <Bertrand.Marquis@arm.com>, Volodymyr Babchuk
	<Volodymyr_Babchuk@epam.com>, Wei Chen <Wei.Chen@arm.com>
Subject: Re: [PATCH v7 8/8] xen/arm: mmu: move MMU specific P2M code to
 mmu/p2m.{c,h}
Thread-Topic: [PATCH v7 8/8] xen/arm: mmu: move MMU specific P2M code to
 mmu/p2m.{c,h}
Thread-Index: AQHZ+kyDxYKGSy7Hi0WFFm+WJG77tLBID9YAgAB2kICABCQvAIAAjrAA
Date: Tue, 17 Oct 2023 01:12:13 +0000
Message-ID: <2761E03D-0C3B-4B3D-8923-73B18564A9A6@arm.com>
References: <20231009010313.3668423-1-Henry.Wang@arm.com>
 <20231009010313.3668423-9-Henry.Wang@arm.com>
 <af6a376c-a224-45d7-9972-d69ee44239d6@xen.org>
 <4607C809-7625-4C8E-A26E-8B8F641CEB29@arm.com>
 <0299c7f0-6235-421a-b57d-63b0ad4a650f@xen.org>
In-Reply-To: <0299c7f0-6235-421a-b57d-63b0ad4a650f@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_|GV1PR08MB7380:EE_|AM7EUR03FT052:EE_|AM9PR08MB6706:EE_
X-MS-Office365-Filtering-Correlation-Id: d93a0135-f157-47cb-1d6f-08dbceae2217
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:
 3DE8oK7kHvx+vYg8GYu4Jzm+NRZGqaNSfGFY7uN/5zCHQOScjUTl+FcfdTnhN17G0s/K5YilFK51uQawZ+ysdz795tqOeJQbhlftwG6SvyWyv6aG/mxkBnz7c6diT0o8Ibf2wjVAbVkDKJYfRmuKgJu3sg6xa+jX+gI6/iIeRmVRDiB7HW26vUxw+C04sU115dyHnHD/1ZEKSFNyhNHTIrWTW2H7b6Qwo7kMUo3fn1v1c+DDiESW8y3D6HFvVfmz6QR5vMDm/u9rxR5AWAPy0MKYSzzg4w4AJgVV/sKxWnCX87DuuMdhpU3jk3MAsFgzZZgyeujgXChCFzk5AfcTV+2JGy/xfuEMhXmKFoRCIgxGlfrSAhc/324Nj8Rsz85VRDO0SxFL6GnQBQjgKLvHqujnLz1diYbTMQEy9CuKix7NqWnZuz2YbC7iqxncUSmJZVSb4/22ichbnyJ08Z9/ogjatbnPrSeOWRrjMHS3lriCLWGychlk/8d7RWz6dw+EQjxYYVSEyKlwRdOC6bQ8JMgluJs/G6MGgGMPvqFENI/21+9Ss3noi0s79/1t5lYfiG+AhAs6puMQPI9+SBiiCvu0Ib3JeLt/rPbh9FTNxbiGSYNze/ZGT4Rs7BFh41uLIh/S/j0QDPIeq0+7po89vQ==
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)(136003)(346002)(366004)(396003)(230922051799003)(64100799003)(1800799009)(186009)(451199024)(478600001)(66476007)(91956017)(6486002)(66556008)(76116006)(6916009)(66946007)(54906003)(64756008)(66446008)(71200400001)(26005)(53546011)(6506007)(41300700001)(2616005)(6512007)(8936002)(8676002)(2906002)(4326008)(5660300002)(38070700005)(36756003)(33656002)(122000001)(86362001)(38100700002)(316002)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <0D4DC9A3E05FD94D862D28C8EF56795F@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV1PR08MB7380
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:
 AM7EUR03FT052.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	505d009a-6ed0-48d7-ba8b-08dbceae1895
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	E11mONUn8VBv54+JbCF+b451qm3nNcbm4/BO1xio79Be3mhts/6EDpVb1TLIP61Vphnd8HOKTayZmgmj0yNWombPeWlTS0jP3ou+lbb4LJcOR6FJsQ3ipvQQNPTP2xxFhMLZGsHZlHEPJX0rFOzQJLPmF0tL1nkgRWTBjufwdxBK6X6t4E69tTU/B+QPVFBJjY3NaQ+qrjzbP5SavohskqVeCb+9GQNH6MhmF/WadQ+Wy0NX6iR8fkJ+bCZArBAEQZsG+1cN1EWCgrTi7EU4iQo8ZoeoshelJwGPgi1aMVyshCzOiYFygqsr9yHJoikRnvpIt0CHLOsUMQC9L2+VZd6zmfuT6d4fjqW2RZ922FbA5SZ2W66hRn+vZlReOXBKfr5LuyNCEi+ayDIgOUNChSeQAn/JMGxUonZjD1ymONA30RrVe3fJtoeE+axk+mZTzCmpLz1qonzdYDk6doWbkXRnxkFdx1xJBYRFaG2p6QtTxSfh5vwhHT3Y2T9TXu6KVFY9CxZPchw6Z7/t2Oe+1V+EvcrqPVlTCCgYL6mGGgrQerq8AxTQuAassVCKNUP24mWIacse0Qlr6BnkAwvsyVbxnVcsZkVVjoA3neJaN9sT8kksuGKYorPOT6VQAoImi56K3dvhNmaUvCC7X3zzLATJRyICipXMGzlaD0rjG73PfR/FOWg6oIl8bdUGhzWLXktKFY7NeI0p3c192tkvbYsWhSxXaOGn8frCjDKBXz43TswVsCWGWH4uDNnNGraN
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)(230922051799003)(186009)(451199024)(82310400011)(64100799003)(1800799009)(40470700004)(46966006)(36840700001)(6506007)(53546011)(336012)(2616005)(81166007)(40480700001)(6512007)(40460700003)(26005)(82740400003)(356005)(316002)(70206006)(70586007)(54906003)(36860700001)(33656002)(5660300002)(41300700001)(2906002)(86362001)(36756003)(8936002)(6862004)(4326008)(8676002)(47076005)(6486002)(478600001);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Oct 2023 01:12:29.3847
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: d93a0135-f157-47cb-1d6f-08dbceae2217
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:
	AM7EUR03FT052.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR08MB6706

SGkgSnVsaWVuLA0KDQo+IE9uIE9jdCAxNywgMjAyMywgYXQgMDA6NDEsIEp1bGllbiBHcmFsbCA8
anVsaWVuQHhlbi5vcmc+IHdyb3RlOg0KPiBPbiAxNC8xMC8yMDIzIDAyOjI2LCBIZW5yeSBXYW5n
IHdyb3RlOg0KPj4gSGkgSnVsaWVuLA0KPiANCj4gSGkgSGVucnksDQo+IA0KPj4+IE9uIE9jdCAx
NCwgMjAyMywgYXQgMDI6MjIsIEp1bGllbiBHcmFsbCA8anVsaWVuQHhlbi5vcmc+IHdyb3RlOg0K
Pj4+IA0KPj4+IEhpIEhlbnJ5LA0KPj4+IA0KPj4+IE9uIDA5LzEwLzIwMjMgMDI6MDMsIEhlbnJ5
IFdhbmcgd3JvdGU6DQo+Pj4+IEZyb206IFBlbm55IFpoZW5nIDxwZW5ueS56aGVuZ0Bhcm0uY29t
Pg0KPj4+PiBDdXJyZW50IFAyTSBpbXBsZW1lbnRhdGlvbiBpcyBkZXNpZ25lZCBmb3IgTU1VIHN5
c3RlbSBvbmx5Lg0KPj4+PiBXZSBtb3ZlIHRoZSBNTVUtc3BlY2lmaWMgY29kZXMgaW50byBtbXUv
cDJtLmMsIGFuZCBvbmx5IGtlZXAgZ2VuZXJpYw0KPj4+PiBjb2RlcyBpbiBwMm0uYywgbGlrZSBW
TUlEIGFsbG9jYXRvciwgZXRjLiBXZSBhbHNvIG1vdmUgTU1VLXNwZWNpZmljDQo+Pj4+IGRlZmlu
aXRpb25zIGFuZCBkZWNsYXJhdGlvbnMgdG8gbW11L3AybS5oLCBzdWNoIGFzIHAybV90bGJfZmx1
c2hfc3luYygpLg0KPj4+PiBBbHNvIGV4cG9zZSBwcmV2aW91c2x5IHN0YXRpYyBmdW5jdGlvbnMg
cDJtX3ZtaWRfYWxsb2NhdG9yX2luaXQoKSwNCj4+Pj4gcDJtX2FsbG9jX3ZtaWQoKSwgYW5kIHNl
dHVwX3ZpcnRfcGFnaW5nX29uZSgpIGZvciBmdXJ0aGVyIE1QVSB1c2FnZS4NCj4+Pj4gV2l0aCB0
aGUgY29kZSBtb3ZlbWVudCwgZ2xvYmFsIHZhcmlhYmxlIG1heF92bWlkIGlzIHVzZWQgaW4gbXVs
dGlwbGUNCj4+Pj4gZmlsZXMgaW5zdGVhZCBvZiBhIHNpbmdsZSBmaWxlIChhbmQgd2lsbCBiZSB1
c2VkIGluIE1QVSBQMk0NCj4+Pj4gaW1wbGVtZW50YXRpb24pLCBkZWNsYXJlIGl0IGluIHRoZSBo
ZWFkZXIgYW5kIHJlbW92ZSB0aGUgInN0YXRpYyIgb2YNCj4+Pj4gdGhpcyB2YXJpYWJsZS4NCj4+
Pj4gU2lnbmVkLW9mZi1ieTogUGVubnkgWmhlbmcgPHBlbm55LnpoZW5nQGFybS5jb20+DQo+Pj4+
IFNpZ25lZC1vZmYtYnk6IFdlaSBDaGVuIDx3ZWkuY2hlbkBhcm0uY29tPg0KPj4+PiBTaWduZWQt
b2ZmLWJ5OiBIZW5yeSBXYW5nIDxIZW5yeS5XYW5nQGFybS5jb20+DQo+Pj4gDQo+Pj4gU29tZSBy
ZW1hcmtzIGFib3V0IHNvbWUgb2YgdGhlIGNvZGUgbm90IG1vdmVkOg0KPj4+ICogc3RydWN0IHAy
bV9kb21haW46IFRoZSBidWxrIG9mIHRoZSBmaWVsZHMgc2VlbXMgdG8gYmUgTU1VIHNwZWNpZmlj
LiBTbyBkZXBlbmRpbmcgb24gdGhlIG51bWJlciBvZiBjb21tb24gZmllbGRzIHdlIGVpdGhlciB3
YW50IHRvIHNwbGl0IG9yIG1vdmUgdGhlIHN0cnVjdHVyZSB0byBwMm1fZG9tYWluLiBJIHdvdWxk
IGJlIG9rIHRvIHdhaXQgdW50aWwgdGhlIE1QVSBjb2RlIGlzIHByZXNlbnQuDQo+Pj4gKiBwMm1f
dHlwZV90OiBJdCBpcyBub3QgeWV0IGNsZWFyIGhvdyB0aGlzIHdpbGwgYXBwbHkgdG8gdGhlIE1Q
VS4gSSBhbSBvayB0byB3YWl0IGJlZm9yZSBtb3ZpbmcgaXQuDQo+PiBBZ3JlZSB3aXRoIGJvdGgg
aGVyZSwgbGV04oCZcyBjb250aW51ZSB0aGUgZGlzY3Vzc2lvbiBpbiB0aGUgYWN0dWFsIE1QVSBw
YXRjaCBmb3IgUDJNDQo+PiB0aGVuLCBidXQgSSBhbSB0aGVuIGEgYml0IGNvbmZ1c2VkIGFib3V0
Li4uDQo+Pj4gKiBwMm1fY2FjaGVfZmx1c2hfcmFuZ2UoKTogSSBleHBlY3QgdGhlIGNvZGUgd2ls
bCBuZWVkIHNvbWUgY2hhbmdlIGJlY2F1c2UgeW91IG1heSBnZXQgbGFyZ2UgY2h1bmsgb2YgbWVt
b3J5IGZvciB0aGUgTVBVLg0KPj4+ICogcDJtX3NldF93YXlfZmx1c2goKS9wMm1fdG9nZ2xlX2Nh
Y2hlKCk6IFRoaXMgd2FzIGEgZ2lhbnQgaGFjayB0byBzdXBwb3J0IGNhY2hlIGZsdXNoIG9wZXJh
dGlvbnMgdmlhIHNldC93YXkuIFRvIG1ha2UgaXQgZWZmaWNpZW50LCB3ZSB0cmFjayB0aGUgcGFn
ZXMgdGhhdCBoYXZlIGJlZW4gdG91Y2hlZCBhbmQgb25seSBmbHVzaCB0aGVtLiBGb3IgdGhlIE1Q
VSwgdGhpcyB3b3VsZCBub3Qgd29yay4gQ2FuIHdlIGF0dGVtcHQgdG8gbm90IGVtdWxhdGUgdGhl
IGluc3RydWN0aW9ucz8NCj4+IOKApnRoZXNlIHR3byByZW1hcmtzIGhlcmUsIGRvIHlvdSBleHBl
Y3QgbWUgdG8gZG8gc29tZSBjaGFuZ2VzIHdpdGggdGhlc2UgdGhyZWUNCj4+IGZ1bmN0aW9ucyBp
biB0aGlzIHBhdGNoPyBPciB3ZSBjYW4gZGVmZXIgdGhlIHJlcXVpcmVkIGNoYW5nZXMgdG8gdGhl
IE1QVSBwYXRjaCBmb3INCj4+IFAyTT8NCj4gDQo+IE15IG9yaWdpbmFsIGludGVudGlvbiB3YXMg
dG8gYXNrIHRvIG1vdmUgdGhlbSByaWdodCBub3cuIEJ1dCBpZiBpdCBpcyB1bmNsZWFyIHdoZXRo
ZXIgdGhleSB3b3VsZCBiZSB1c2VkLCB0aGVuIGl0IHdvdWxkIGJlIGJlc3QgdG8gZGVmZXIgdW50
aWwgd2UgaGF2ZSBhIGJldHRlciB1bmRlcnN0YW5kaW5nLg0KDQpTdXJlLCBJIHRoaW5rIEkgd2ls
bCBkZWZlciBpdCB0aGVuLg0KDQo+IA0KPj4gSSB0aGluayBJIGFtIGhpZ2hseSBsaWtlbHkgdG8g
bWFrZSBhIG1pc3Rha2UgaGVyZSBidXQgSSB0b29rIGEgbG9vayBhdCB0aGUgTVBVDQo+PiBpbXBs
ZW1lbnRhdGlvbiBbMV0gYW5kIGl0IGxvb2tzIGxpa2UgdGhlIE1QVSBjb2RlIGNhbiB1c2UgdGhl
c2UgdHJlZSBmdW5jdGlvbnMNCj4+IHdpdGhvdXQgY2hhbmdlcyAtIHByb2JhYmx5IGJlY2F1c2Ug
dGhlc2UgZnVuY3Rpb25zIGFyZSBzaW1wbHkgdXNlZCBieQ0KPj4gKDEpIGRvbWN0bCBhbmQgd2Ug
b25seSBoYXZlIGRvbTBsZXNzIERvbVVzIG9uIE1QVQ0KPj4gKDIpIHRyYXAgaGFuZGxlcnMNCj4+
IHdoaWNoIG1lYW5zIHRoZXNlIGZ1bmN0aW9ucyBhcmUgc2ltcGx5IG5vdCBjYWxsZWTigKYNCj4g
DQo+IEkgYW0gbm90IHN1cmUgSSBmdWxseSB1bmRlcnN0YW5kIHdoeSB3b3VsZCB0aGUgdHJhcCBo
YW5kbGVycyBub3QgY2FsbGVkLiBJcyB0aGlzIHN1Z2dlc3RpbmcgdGhhdCBhIGRvbTBsZXNzIGRv
bVVzIGNhbiBub3QgdXNlIHNldC93YXkgaW5zdHJ1Y3Rpb25zPw0KDQpObyBJIHdhcyB3cm9uZywg
c29ycnkgZm9yIHRoZSBjb25mdXNpb24sIEkgc29tZWhvdyDigJxtaXMtbGlua2Vk4oCdIHRoZSDi
gJx0cmFw4oCdIHRvIOKAnHBhbmlj4oCdIDovDQoNCkJ1dCBhcyBJIHNhdyB5b3VyIHJlcGx5IGFi
b3ZlLCBzbyBJIHRoaW5rIHByb2JhYmx5IHdlIGNhbiBkZWZlciB0aGUgbW92ZW1lbnQgb2YgdGhl
c2UgZnVuY3Rpb25zDQp0byBmdXJ0aGVyIGRpc2N1c3Npb25zIGluIE1QVSBzZXJpZXMuDQoNCktp
bmQgcmVnYXJkcywNCkhlbnJ5DQoNCg0KPiANCj4gQ2hlZXJzLA0KPiANCj4gLS0gDQo+IEp1bGll
biBHcmFsbA0KDQo=


From xen-devel-bounces@lists.xenproject.org Tue Oct 17 01:13:59 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 17 Oct 2023 01:13:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617987.961178 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsYek-0000lE-6m; Tue, 17 Oct 2023 01:13:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617987.961178; Tue, 17 Oct 2023 01:13: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 1qsYek-0000l7-3y; Tue, 17 Oct 2023 01:13:58 +0000
Received: by outflank-mailman (input) for mailman id 617987;
 Tue, 17 Oct 2023 01:13: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=dFgi=F7=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qsYej-0000ji-40
 for xen-devel@lists.xenproject.org; Tue, 17 Oct 2023 01:13:57 +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 709bd737-6c8a-11ee-9b0e-b553b5be7939;
 Tue, 17 Oct 2023 03:13: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 458EFB81ADA;
 Tue, 17 Oct 2023 01:13:52 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 6A869C433C8;
 Tue, 17 Oct 2023 01:13: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: 709bd737-6c8a-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1697505231;
	bh=V/Ng7ucBmPhpwpbJgTU+w5kM8Pn5PEutAqugiGXSP4A=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=ql3zXJN6iRW2cOUdIKyLa5PDw2ZsZfEHsGKX3zKHclOCrada85p7eyruHaWVUN3cc
	 +L46G6LhN+9DbbCJzQYcRT95pLkAzQM4gSWf+Kom4jUZYx4C9jKMZTtWOW99FlS48s
	 GcR1g/VpWAAfRGd6vpnbuBsTeRfa92ewaG5UbvPo8t+tFqe09DWoYECeB/N+lxIz11
	 ErcBSD1iFauC0xbE7PfvKVO1p0L7w+7RdE2UhrkrPi+3TUoZgqLjTfDQ34bKzQU9QL
	 GC7XmaVfr9r1EvvAN7ptfFMG55paPj6pCNxiIn1pee6/uohhPjmWWw59lKy0wIrim/
	 8AeefKfu2tJRA==
Date: Mon, 16 Oct 2023 18:13:46 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Jan Beulich <jbeulich@suse.com>
cc: Andrew Cooper <andrew.cooper3@citrix.com>, 
    Luca Fancellu <Luca.Fancellu@arm.com>, 
    Stefano Stabellini <sstabellini@kernel.org>, 
    =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>, 
    Bertrand Marquis <Bertrand.Marquis@arm.com>, 
    "julien@xen.org" <julien@xen.org>, 
    "george.dunlap@citrix.com" <george.dunlap@citrix.com>, 
    "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Subject: Re: SAF-x-safe rename
In-Reply-To: <71abd99d-7ef9-09db-9c1e-6b1c55188a6b@suse.com>
Message-ID: <alpine.DEB.2.22.394.2310161813010.965337@ubuntu-linux-20-04-desktop>
References: <alpine.DEB.2.22.394.2310041633080.2348112@ubuntu-linux-20-04-desktop> <9CF5DF50-B857-4B1D-A210-E6355492CC3B@arm.com> <75d160be-4a8c-48c7-a972-201d78f0bdf0@citrix.com> <50198a73-2f0c-4cf1-9173-86a8158b425b@citrix.com>
 <71abd99d-7ef9-09db-9c1e-6b1c55188a6b@suse.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="8323329-1145807480-1697505231=:965337"

  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-1145807480-1697505231=:965337
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8BIT

On Mon, 16 Oct 2023, Jan Beulich wrote:
> On 06.10.2023 00:01, Andrew Cooper wrote:
> > On 05/10/2023 10:38 pm, andrew.cooper3@citrix.com wrote:
> >> On 05/10/2023 8:43 am, Luca Fancellu wrote:
> >>>> On 5 Oct 2023, at 00:46, Stefano Stabellini <sstabellini@kernel.org> wrote:
> >>>>
> >>>> Hi MISRA C working group (Jan, Roger, Andrew, Julien, Bertrand, George)
> >>>>
> >>>> in a recent thread Andrew pointed out that the SAF-2-safe tag is
> >>>> confusing and requested a rename:
> >>>> https://marc.info/?l=xen-devel&m=169634970821202
> >>>>
> >>>> As documented by docs/misra/documenting-violations.rst:
> >>>>
> >>>> - SAF-X-safe: This tag means that the next line of code contains a finding, but
> >>>>   the non compliance to the checker is analysed and demonstrated to be safe.
> >>>> - SAF-X-false-positive-<tool>: This tag means that the next line of code
> >>>>   contains a finding, but the finding is a bug of the tool.
> >>>>
> >>>>
> >>>> Today we have already 28 instances of SAF tags in the Xen codebase.
> >>>>
> >>>>
> >>>> Andrew suggested "ANALYSIS" instead of SAF so I would imagine:
> >>>> - ANALYSIS-X-safe
> >>>> - ANALYSIS-X-false-positive-<tool>
> >>>>
> >>>> If we really want a rename I suggest to rename SAF to SAFE:
> >>>> - SAFE-X-safe
> >>>> - SAFE-X-false-positive-<tool>
> >>>>
> >>>> Or maybe MISRA:
> >>>> - MISRA-X-safe
> >>>> - MISRA-X-false-positive-<tool>
> >>>>
> >>>> But I actually prefer to keep the tag as it is today.
> >>> We chose a generic name instead of MISRA because the tag can potentially suppress findings
> >>> of any checker, including MISRA checker.
> >>>
> >>> If SAF-* is confusing, what about FUSA-* ?
> >>>
> >>> Anyway I’m thinking that every name we could come up will be confusing at first, improving the
> >>> documentation would mitigate it (by improving I mean to improve the fruition of it, for example a
> >>> Read the docs documentation has the search bar, a quick copy paste of SAF- would make the
> >>> documenting-violations page visible.)
> >>
> >> No - this is a problem *because* changing the documentation doesn't
> >> help.   (To be clear, updating the documentation is fine, but irrelevant
> >> here.)
> >>
> >>
> >> These are annotations in code.  They need to be:
> >>
> >> 1) Short (obviously)
> >> 2) Clear to someone who isn't you (the collective us of this group)
> >> reading the code.
> >> 3) Non-intrusive, so as not to get in the way of the code.
> >>
> >> and they must be all three.  This was even a principle given at the
> >> start of the MISRA work that we would not be deteriorating the quality
> >> of the code just to comply.
> >>
> >> Point 3 is other thread about end-of-line, or block regions.  Lets leave
> >> that there because it's really a metadata transformation problem
> >> constrained by where the comments can acceptably go.
> >>
> >>
> >> Point 2 is the issue here, and "SAF-$N-safe" scores very highly on the
> >> WTF-o-meter *even* for people who know that it's something related to MISRA.
> >>
> >> Seriously it looks like someone couldn't spell, and everyone else went
> >> with it (reflects poorly on everyone else).
> >>
> >> And yes, I know it's an initialisation for something, but it's not even
> >> an industry standard term - it's a contraction of an intentionally
> >> generic phrase, with substantial irony on an early MISRA call where
> >> there was uncertainly between people as to what it even stood for.
> >>
> >> These are the thoughts running through the minds of people reading the
> >> code when they don't understand what they're looking at.
> >>
> >>
> >> Annotations for other static analysers intentionally use their own name
> >> so they're googleable.
> >>
> >> Guess what SAF googles for?  Sustainable Aviation Fuel, or Specialist
> >> Automotive Finance.
> >>
> >> Fine, lets be more specific.  How about "Xen SAF" ?  Nope...
> >>
> >> "Did you mean to search for:
> >> Xen SAVE Xen SAN Xen VIF Xenstaff"
> >>
> >>
> >> Despite many of the search results referencing patches, or rendered
> >> documents out of docs/, not a single one of them gets
> >> documenting-violations.rst in any form, where the single definition of
> >> this term is hiding in a paragraph which spends 90% of it's volume
> >> describing a monotonically increasing number.
> >>
> >> Seriously, ChatGPT would struggle to make shit this good up.
> >>
> >>
> >> The thing we tag with *must* be trivially recognisable as an analysis
> >> tag in order for others to be able to read the code.  Therefore, it
> >> needs to be an actual full world (hence the ANALYSIS suggestion), or an
> >> industry standard term (where MISRA does qualify).
> 
> ANALYSIS imo gets in conflict with 1) above, considering that permitting
> line length violations was already brought up with the shorter SAF-*.
> 
> >> I don't exactly what it is - something else might turn out to be even
> >> better, but it is very important to be not this, for everyone else to
> >> have an easy time reading the code.
> >>
> >>
> >> And reasoning along that line...  What's wrong with just /* octal-ok */
> >> or /* womble-permitted */ so it's also apparent in context what the
> >> contentious issue might be and why it might be mitigated?
> 
> When the numbering scheme was discussed, I was asking why a shorthand
> for the issue to deal with (kind of a tag) can't be used. I don't
> recall any arguments, but here we are. One issue with something like
> just /* octal-ok */ is that it's not sufficiently reliably machine-
> parseable; that's aiui where the desire of the SAF (or whatever else)
> prefix came from.
> 
> >> The mechanics behind the scenes is just a trivial text replacement, and
> >> the tagging scheme does not have to uniform obfuscated identifier for
> >> that to work.
> > 
> > Or, as has been pointed out to me in private, even
> > 
> > /* RULE-$N-safe */
> > 
> > would be an improvement because it's clearly related to some set of
> > guidelines.
> 
> Both MISRA and RULE are Misra-specific; RULE, if you mean it to be
> followed by the rule number, would even be Misra version specific.

Please everyone fill in your preference here in advance of tomorrow's
MISRA C meeting so we can discuss the results live:
https://cryptpad.fr/form/#/2/form/view/kwflzAkvxhxF5U5Kv9O6QiQ5LEuCmHZlJhnNda7jk2g/
--8323329-1145807480-1697505231=:965337--


From xen-devel-bounces@lists.xenproject.org Tue Oct 17 01:14:43 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 17 Oct 2023 01:14:43 +0000
Received: from list by lists.xenproject.org with outflank-mailman.617992.961189 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsYfQ-0001eW-HU; Tue, 17 Oct 2023 01:14:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 617992.961189; Tue, 17 Oct 2023 01:14: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 1qsYfQ-0001eP-E3; Tue, 17 Oct 2023 01:14:40 +0000
Received: by outflank-mailman (input) for mailman id 617992;
 Tue, 17 Oct 2023 01:14: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=qhkS=F7=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qsYfP-0000ji-N0
 for xen-devel@lists.xenproject.org; Tue, 17 Oct 2023 01:14:39 +0000
Received: from EUR02-AM0-obe.outbound.protection.outlook.com
 (mail-am0eur02on2060b.outbound.protection.outlook.com
 [2a01:111:f400:fe13::60b])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 8883c935-6c8a-11ee-9b0e-b553b5be7939;
 Tue, 17 Oct 2023 03:14:35 +0200 (CEST)
Received: from AS9PR07CA0054.eurprd07.prod.outlook.com (2603:10a6:20b:46b::13)
 by AS8PR08MB9954.eurprd08.prod.outlook.com (2603:10a6:20b:638::11)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.36; Tue, 17 Oct
 2023 01:14:31 +0000
Received: from AM7EUR03FT063.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:20b:46b:cafe::74) by AS9PR07CA0054.outlook.office365.com
 (2603:10a6:20b:46b::13) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.18 via Frontend
 Transport; Tue, 17 Oct 2023 01:14: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.6907.20 via Frontend Transport; Tue, 17 Oct 2023 01:14:30 +0000
Received: ("Tessian outbound d219f9a4f5c9:v211");
 Tue, 17 Oct 2023 01:14:30 +0000
Received: from 6df375bc8753.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 4043F12C-6567-448B-956A-FCD60F7C6EDC.1; 
 Tue, 17 Oct 2023 01:14:24 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 6df375bc8753.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Tue, 17 Oct 2023 01:14:24 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by GV1PR08MB7380.eurprd08.prod.outlook.com (2603:10a6:150:24::7) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.35; Tue, 17 Oct
 2023 01:14:22 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41%4]) with mapi id 15.20.6886.034; Tue, 17 Oct 2023
 01: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: 8883c935-6c8a-11ee-9b0e-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=7cowd0ncFKjvWfwsNYKO8XD1DItcTWeYZVLf8QqI864=;
 b=yMdTtG1WGXUUpkVebTvHpBJDq8AyNlzQ3ZqIQ+Hb7wmVF551SJuIcEBHIFsXmC89ya0UD3udhT4jiPwyrBGKtDNn8DLZJDyAL3LDuWlcsCTZkCifWFD8MpyFwfaDskdigwUrjsUHoo+F+9YUa5Qn8gapekESsog7abeIGyodHig=
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: 76654382fd94d443
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=FDnO5D3Ib/p04FKyNsa/Cl+WhqxRf0Z0Qu8P8r5NbjJjHYz6pDirpTfo61PyCeD2JBkLl2L3WS9xE6WKv/mU4x3pQKEazwtcdpXPqDlfTQE0pm3ZZzbHrYZSYsrif3z9S8OTSaI5mZoHenCIiESRqYfTL5mCdwBcz56YAQwbLlq+NVsaVjdr9s8f7lUutlP8dyS/9rbYe62fGy46+ltiy5ojHgECJOgNrUgMD50H+IfphLtogEQ4d+nfsOBY2vbF9+I7544gfKHXF6Lthaqh+CtLWP1tz5vUTy19EczPvVlb+CVVE9WPTnZTKugkbF5EOBH2SgNbekCX79ACsSvKRg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=7cowd0ncFKjvWfwsNYKO8XD1DItcTWeYZVLf8QqI864=;
 b=jsYoCpHwwia2Nq+jI+7oni3O93s1koFvVORsxFn8y/HBkicsiGa002Gevv7ypSq6X7pHPSIiIba9vHUTtzdcS6YAw14jILi22iRaCRfXGo8XdGwMuNGQI8XtaYOn/t7R9DWgdIH0D5O0rLBIARopejj82tBxyf7eqc49Qs2F58hyWYK8ETrgl216mjPY68aRK3pL1OT3YPpfAQRoIjXUjpeTkEx/kjZF4QcdnnLv/kGKnxwz10QMGqBQgAfEc63jwpdNSwrsJI9wAhCA2tekjG1ZHI1PXmXIeNRRiRZ9SM0kuRgw+MJ6ctTEVyOaHKUck3MpHMgWWcSaaiJU91TWPQ==
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=7cowd0ncFKjvWfwsNYKO8XD1DItcTWeYZVLf8QqI864=;
 b=yMdTtG1WGXUUpkVebTvHpBJDq8AyNlzQ3ZqIQ+Hb7wmVF551SJuIcEBHIFsXmC89ya0UD3udhT4jiPwyrBGKtDNn8DLZJDyAL3LDuWlcsCTZkCifWFD8MpyFwfaDskdigwUrjsUHoo+F+9YUa5Qn8gapekESsog7abeIGyodHig=
From: Henry Wang <Henry.Wang@arm.com>
To: Xen-devel <xen-devel@lists.xenproject.org>, Xen-users
	<xen-users@lists.xenproject.org>, "xen-announce@lists.xenproject.org"
	<xen-announce@lists.xenproject.org>
CC: Community Manager <community.manager@xenproject.org>
Subject: Xen 4.18 rc3
Thread-Topic: Xen 4.18 rc3
Thread-Index: AQHaAJdC+jR+lkuHjEaiAi7ivmmoQg==
Date: Tue, 17 Oct 2023 01:14:22 +0000
Message-ID: <9D3774C3-16CA-4F37-B9E9-470BE98D8C76@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_|GV1PR08MB7380:EE_|AM7EUR03FT063:EE_|AS8PR08MB9954:EE_
X-MS-Office365-Filtering-Correlation-Id: f8885c79-6dc2-4ed4-17d4-08dbceae6a79
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:
 7xWGcWawEZ9/R9p6MxbN4n1/DxQLBSwRrv8ckfAKnJW9vCW/AiaViihCRVDKdT7+6d42zmNO9hWuOhdmUV+3viE4/5Jsw/4AHJaTJ0f6+nQ2XEEWoU/GTjGxgefnKOMwoUTiIoB61Q25JCmX0Se3dyomUpqrXbPX20ziqGmxSL8TN9M/3HpmmQEQO82zR6Df9fwjT8yGeSI9pzp9GLqimtIrI5hDxCxV3sEOamZnAZwHYE9jeojhzfMxH6RNQxe8ZcoY/JcRAlmuWDQLtaNhfWUqGWkIbvNay0raFj9Owfs96VWnvGSMBP2uqmZnQ+FQx73MdIt1aaQpznSLF1EslanVRfaPoxHSkgKeU3VPIgv6pBGzsHpMKqFb17Lb2VtAuZNYonjFNuh1QMIk/fPNYarrp3LiJHZ/0Hr79glvbqzacTaGFPNdFi8DMZV25osJf/u7IN68/b0DXHGzN7qpzJlVdf+4K8P2h3weCNYQHk15hCMJAfJB9K5CMNXpFpRmkoGYs/Z33oGqRhenojoCuZLj8H9JMEqDaCY9wOFhWC50DkmYK1M9Ww/NXN9PEgiI7bcjG0oFo3iu/SJ5Cc9k72/K62PMPflFMW77tkrt1eiUiylmv4RAQw1a2A/Yhfib
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)(136003)(346002)(366004)(396003)(230922051799003)(64100799003)(1800799009)(186009)(451199024)(478600001)(66476007)(966005)(91956017)(6486002)(66556008)(110136005)(76116006)(66946007)(64756008)(66446008)(71200400001)(26005)(6506007)(41300700001)(2616005)(6512007)(8936002)(8676002)(7116003)(2906002)(4326008)(4744005)(5660300002)(38070700005)(36756003)(33656002)(122000001)(86362001)(83380400001)(38100700002)(316002)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="us-ascii"
Content-ID: <9D5FB088339BC04693732B2F9B8D4642@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV1PR08MB7380
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:
	d1c31631-4f4a-44a6-a304-08dbceae6553
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	dAix/eiytP6VbK+XFkiIIt9H/9JrqnlesmAssWw967X6wDpjlrUbWLiwryp2shDwd2epJMceDW036iZhxhOFk523V+Fo9ib94RBnLgBI6p5TrSN2I1Bu2/1vdvRsk7dlg3ZZtd2kJ2bckIHZuLJ6+Jp3BB35hhQdI2/IHX10QbWMFlHJI3Xds/mBogL+6fH3NqHF/jZAxEieTOiYumIAqEP/UOVF09Mce3vEsjZ6v74oC+Mg/mE3xvtPk427hKVNh0S9Oqc/94LK4EjPrHib/OaAkPoAZ00F/0ogvqqwCUfvzjFY/Zd7fl6edaj0we7Ta+MXuiZMvXqjXq7faYNSxlR8aQkt/HO9+spwdwSaACtKjvylD52sLf5EbdNcnyYdDdW8MZOiuX3ybn4Cr6qAvP/4UC37df4/XzxYmuBYtXFMCQwx+GzjhqCFR6Bv1TSw90Oxdcki/nHl+XVvF8CqqkdEXxh+MNXSxRAMBvI9AhXImxMfY4tayS4eNH3fdYf9MturbvIf07GJ2PAZz9cEdqft5RT/5mt3WlXkR94W5auupLYK1Qa4Lwgj8IRwmtcr8KGlGNMOk1+n5GxFBtTo7WVLboB6Wxn1Igi7oeDntUL+bHQhDTkyEosUoO7Ondcd8xqaNKeLCOhAKav8aU9dE16IT21sJaw1qYKoG/T462QlVM0bssUPDs0m+Wk3eIQpUkNuh5n1hoFkbZwAZ3BrW6BTJL+VZZw/CyiVYjiFxvc=
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)(39860400002)(136003)(230922051799003)(1800799009)(82310400011)(186009)(64100799003)(451199024)(40470700004)(46966006)(36840700001)(86362001)(40480700001)(36756003)(33656002)(40460700003)(316002)(110136005)(70586007)(70206006)(450100002)(82740400003)(81166007)(356005)(83380400001)(36860700001)(47076005)(336012)(2616005)(26005)(6512007)(6506007)(4744005)(2906002)(6486002)(8936002)(966005)(478600001)(41300700001)(5660300002)(7116003)(8676002)(4326008);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Oct 2023 01:14:30.7915
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: f8885c79-6dc2-4ed4-17d4-08dbceae6a79
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: AS8PR08MB9954

Hi all,

Xen 4.18 rc3 is tagged. You can check that out from xen.git:

git://xenbits.xen.org/xen.git 4.18.0-rc3

For your convenience there is also a tarball at:
https://downloads.xenproject.org/release/xen/4.18.0-rc3/xen-4.18.0-rc3.tar.=
gz

And the signature is at:
https://downloads.xenproject.org/release/xen/4.18.0-rc3/xen-4.18.0-rc3.tar.=
gz.sig

Please send bug reports and test reports to xen-devel@lists.xenproject.org.
When sending bug reports, please CC relevant maintainers and me
(Henry.Wang@arm.com).

Kind regards,
Henry


From xen-devel-bounces@lists.xenproject.org Tue Oct 17 01:24:24 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 17 Oct 2023 01:24:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618018.961215 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsYom-0004zT-Sa; Tue, 17 Oct 2023 01:24:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618018.961215; Tue, 17 Oct 2023 01: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 1qsYom-0004zM-Pm; Tue, 17 Oct 2023 01:24:20 +0000
Received: by outflank-mailman (input) for mailman id 618018;
 Tue, 17 Oct 2023 01:24: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=qhkS=F7=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qsYgL-0000ji-K1
 for xen-devel@lists.xenproject.org; Tue, 17 Oct 2023 01:15:37 +0000
Received: from EUR03-AM7-obe.outbound.protection.outlook.com
 (mail-am7eur03on2062e.outbound.protection.outlook.com
 [2a01:111:f400:7eaf::62e])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id ac971896-6c8a-11ee-9b0e-b553b5be7939;
 Tue, 17 Oct 2023 03:15:35 +0200 (CEST)
Received: from DUZPR01CA0198.eurprd01.prod.exchangelabs.com
 (2603:10a6:10:4b6::29) by DB4PR08MB9336.eurprd08.prod.outlook.com
 (2603:10a6:10:3f3::13) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.36; Tue, 17 Oct
 2023 01:15:32 +0000
Received: from DBAEUR03FT043.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:4b6:cafe::66) by DUZPR01CA0198.outlook.office365.com
 (2603:10a6:10:4b6::29) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.36 via Frontend
 Transport; Tue, 17 Oct 2023 01:15:32 +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.6907.20 via Frontend Transport; Tue, 17 Oct 2023 01:15:32 +0000
Received: ("Tessian outbound 6d14f3380669:v211");
 Tue, 17 Oct 2023 01:15:32 +0000
Received: from 91a2f958c56f.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 C77DDE00-B591-4235-85A4-73748686904C.1; 
 Tue, 17 Oct 2023 01:15:21 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 91a2f958c56f.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Tue, 17 Oct 2023 01:15:21 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by GV1PR08MB7380.eurprd08.prod.outlook.com (2603:10a6:150:24::7) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.35; Tue, 17 Oct
 2023 01:15:18 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41%4]) with mapi id 15.20.6886.034; Tue, 17 Oct 2023
 01:15: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: ac971896-6c8a-11ee-9b0e-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=V0Qe752MZB4CTFUeNhrJEhLqxP6sgxdTF5/1tTj4gXo=;
 b=0yShSgclaGAzK9Us7EKJjgMBsP2t/t9kRsVMZDK4h1x0aqUlIfnpMnkyF/XIpu1OR+46aMWm1/Ym0EB/zW+jQAeVa0lDj3ttDU5vUWaAddlmZEAQzB3dccqTKauH1kiegVfhGk88l2fZpBxGmaRbKYE9jb/bsV7geV32dk238LQ=
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: 8fadf9fd7ea02c22
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=mhag310WyLy5UFLCEHdVLiZ+lWfPfInOB+NFHY0UsPUC/0EWVVsm3rJrRlabw27tD2+BeGeTfM4wK5DoyTP5c4bH0XYMQ984E4ElRv8F6b8Xo+/wquq6AE+iCY8F5MmtTOcPal31DIOhrK6ZqAu8Wf/YLJeBZtB6RnhL7VclXmGUhA9Cz1kVAEjUKBnJGlNDscVP+95qb++rIKW0pRj/rQgV0QCBWao9AUhzRnI4JLoJCHNZKie9ISetFGD9CSYreaWU/UAEXnA8362Pua+EMDNxbBZx46/sCY/b5okk8r+yWbV8VIpvWQx9sX/mbApCm9QhC278/LKs7KluuYbX6Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=V0Qe752MZB4CTFUeNhrJEhLqxP6sgxdTF5/1tTj4gXo=;
 b=OZhiMeCL71UAMe+Iq5zmbHXVZtsmMZLH1BNcDFTPYIaS5jrhbOCoY5YLvHXAOLc5yetUB7WdMmMjKlwAXlI7NeWLc8FSWnwEF5eD8jlvVeN6NWMJky0at30L+kO4EqMDP7W1srzl2ixS3veBvgDedeCbIC8W7tlfw42WnOcEjNBJh+ohx9kC0CwNnwmZRdQx5fXEU78afaU9hCI7bDMZYcBktSNauJ9rQki0aCBngjImPxsQaabVGBIQVbaGYQT/wUEiVquf8Sw1+Ss7sZfYjBBWIQOxx4H6+SGwwwrsXmtTRY0yjOAMLMSS2q0myqMm8XXKOseZDyO07GjuhVtWSQ==
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=V0Qe752MZB4CTFUeNhrJEhLqxP6sgxdTF5/1tTj4gXo=;
 b=0yShSgclaGAzK9Us7EKJjgMBsP2t/t9kRsVMZDK4h1x0aqUlIfnpMnkyF/XIpu1OR+46aMWm1/Ym0EB/zW+jQAeVa0lDj3ttDU5vUWaAddlmZEAQzB3dccqTKauH1kiegVfhGk88l2fZpBxGmaRbKYE9jb/bsV7geV32dk238LQ=
From: Henry Wang <Henry.Wang@arm.com>
To: Bertrand Marquis <Bertrand.Marquis@arm.com>, 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: [for-4.18][PATCH] xen/arm: Check return code from recursive calls
 to scan_pfdt_node()
Thread-Topic: [for-4.18][PATCH] xen/arm: Check return code from recursive
 calls to scan_pfdt_node()
Thread-Index: AQHaAC7LgeSduU1uk0uBgC7r5iKuprBMaPIAgADFa4A=
Date: Tue, 17 Oct 2023 01:15:18 +0000
Message-ID: <32511345-F7E9-4687-9848-4692EDD53AC7@arm.com>
References: <20231016124559.8220-1-michal.orzel@amd.com>
 <18D03C43-2224-43EE-B9BA-B04802A7FF5F@arm.com>
In-Reply-To: <18D03C43-2224-43EE-B9BA-B04802A7FF5F@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_|GV1PR08MB7380:EE_|DBAEUR03FT043:EE_|DB4PR08MB9336:EE_
X-MS-Office365-Filtering-Correlation-Id: 19669507-40e5-4fc4-b6cd-08dbceae8f2e
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:
 H7SR7HSfDr2s/L2/NhHwzj/ip04Joaf/kMu+GNIM7nAZRwUwd/gikSHO260OdWWF0Wnezfj0ENTXeAKpGfP/IcatAoQN4gxtBknvG5jDTPQDjHOUbkaN9+rzaF7pgy4SkPWCJsd4FIM+yq5STR6d9esGo2L/mb//AbJSyPDisxxaCDrju3NEc0E2dhXB9BY6agOBLGRN0ItZhheoMyAgPVSwpHGaJDKK4i6ES3i/Y6EzRVUkd3yZDX4K3x2rFdm1CmJ+OL2/z0+aimCmRwjrMPsl6iUuuBDvaaMEGMcub4GuIw8Lg6uSgt/9nT/TSd3pKLgwDQied08e2/JDm7An/vS3IwAbAGZiITsutBuwQWCuPaxkC3pqUjrrRJknlSn+yn0ZDBR/WB51n61334M1T0ZKMgg4i4mmRHgdusmhpasYmEw7SjnNXBTiz+ib25/M8cRmMxCls9liANXVU/WhZ27fzqM0Uo+ZmAvQphY4HHVnM/FuiCRdnjhb8TjpjkVUWTVNhfarbeRJ+iPvP+YW7i30HbIbjN8GfPq6Y+ehla/nSXsqnI3Emc2FRB32UGyGBOVtNLy+hJvI6wKEti0AQDdFvme/k5MjTy789FOulovvl88kXEIOMxYNLIbyOrMjAr0znOVQkX60EsbVoY+ztg==
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)(136003)(346002)(366004)(396003)(230922051799003)(64100799003)(1800799009)(186009)(451199024)(478600001)(66476007)(91956017)(6486002)(66556008)(110136005)(76116006)(66946007)(54906003)(64756008)(66446008)(71200400001)(26005)(53546011)(6506007)(41300700001)(2616005)(6512007)(8936002)(8676002)(2906002)(4326008)(5660300002)(38070700005)(36756003)(33656002)(122000001)(86362001)(83380400001)(38100700002)(316002)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="us-ascii"
Content-ID: <65BA0EDC40B7604DA7EAB62369839CA9@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV1PR08MB7380
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:
	3f412652-e562-44f3-9435-08dbceae86c0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	4BSWLabfE7hL8lc8zngqGvzC6c0tknfq4WLS56iJB8q+xgjEO5rs/a55qQi0HAnQzl9HTrpJpmkbqdTFUF2Vzv1e2ETy4GcFF6d+I+pSPCoF4JPocDOA/zMyhkv82PCB9t1g47uJrGsWGEJFn2NVHAM6uSR4df8fMXGx5MkYoh1WUUO8Cg5VNPd8Dwaqbx+Nc+Mheb0+y4xkP8NFiE40EHp+9ot23KIH1QqmDUXm+uuRdrt/nmlfU2plZ96xGZ58KM7sKmStWJnzl7XjoffFXyhiRj4iA69/bE/zq1XE0i+VgSHKW/s1G2oa3kjXF7j2g0pAkik1aanPqFMBLJGzCWI6mRu1d4erjsAFtLpcnZ9oELE0BXyTlDqxNu0wa1BtQJEzbwOJ1A//AIlsALjZ/LWzCtnYKPfmrkbEMeBbubiIp5BtZmQRZTOwfUh6Ay4tMRMkCkSpb5DzlXaOGXSv+tFK3J7QguvZtfOBp+0AoTpzjyn6o6og2yr4psliDW1rCx+estwkwEJqm1acvRQfn6ITDNOlhNG80SJeN5tFSovX+x1QGV7mzY7TgGMiOJzrDvXOl3K6zwSCvOVGR2lQALpFjEiC0ASnpikI0jNohDLn38YicRmVMQVae4zz7k+UkioWlyyI/ov/mbqF7IgeQsu3a1jaG5HGF5+uGEIVBJa8xLTI0jk43IJ8GUw6LW53EdEtgHa8JnEJHN/8C6ro3p0WEZ8oHPU8tZ88iE3/gM0ukPRR+iujeyoAO+UKnIwq
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)(64100799003)(451199024)(186009)(1800799009)(82310400011)(40470700004)(36840700001)(46966006)(40460700003)(107886003)(26005)(2616005)(6506007)(336012)(6512007)(53546011)(47076005)(36860700001)(83380400001)(70586007)(41300700001)(5660300002)(4326008)(8676002)(2906002)(478600001)(6486002)(8936002)(70206006)(316002)(110136005)(54906003)(82740400003)(81166007)(356005)(86362001)(36756003)(40480700001)(33656002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Oct 2023 01:15:32.4579
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 19669507-40e5-4fc4-b6cd-08dbceae8f2e
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: DB4PR08MB9336

Hi Michal,

> On Oct 16, 2023, at 21:28, Bertrand Marquis <Bertrand.Marquis@arm.com> wr=
ote:
>=20
> Hi Michal,
>=20
>> On 16 Oct 2023, at 14:45, Michal Orzel <michal.orzel@amd.com> wrote:
>>=20
>> At the moment, we do not check a return code from scan_pfdt_node()
>> called recursively. This means that any issue that may occur while
>> parsing and copying the passthrough nodes is hidden and Xen continues
>> to boot a domain despite errors. This may lead to incorrect device tree
>> generation and various guest issues (e.g. trap on attempt to access MMIO
>> not mapped in P2M). Fix it.
>>=20
>> Fixes: 669ecdf8d6cd ("xen/arm: copy dtb fragment to guest dtb")
>> Signed-off-by: Michal Orzel <michal.orzel@amd.com>
>=20
> Good finding :-)
>=20
> Reviewed-by: Bertrand Marquis <bertrand.marquis@arm.com>

Release-acked-by: Henry Wang <Henry.Wang@arm.com>

Kind regards,
Henry

>=20
> Cheers
> Bertrand
>=20
>> ---
>> @Henry:
>> This is a bug fix, so I think we should have it in 4.18 given the possib=
le
>> consequences I described in the commit msg. I don't see any risks as thi=
s change
>> only checks the return code for an error.
>> ---
>> xen/arch/arm/domain_build.c | 7 +++++--
>> 1 file changed, 5 insertions(+), 2 deletions(-)
>>=20
>> diff --git a/xen/arch/arm/domain_build.c b/xen/arch/arm/domain_build.c
>> index 24c9019cc43c..49792dd590ee 100644
>> --- a/xen/arch/arm/domain_build.c
>> +++ b/xen/arch/arm/domain_build.c
>> @@ -2872,8 +2872,11 @@ static int __init scan_pfdt_node(struct kernel_in=
fo *kinfo, const void *pfdt,
>>    node_next =3D fdt_first_subnode(pfdt, nodeoff);
>>    while ( node_next > 0 )
>>    {
>> -        scan_pfdt_node(kinfo, pfdt, node_next, address_cells, size_cell=
s,
>> -                       scan_passthrough_prop);
>> +        rc =3D scan_pfdt_node(kinfo, pfdt, node_next, address_cells, si=
ze_cells,
>> +                            scan_passthrough_prop);
>> +        if ( rc )
>> +            return rc;
>> +
>>        node_next =3D fdt_next_subnode(pfdt, node_next);
>>    }
>>=20
>> --
>> 2.25.1
>>=20
>=20



From xen-devel-bounces@lists.xenproject.org Tue Oct 17 04:52:55 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 17 Oct 2023 04:52:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618026.961225 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsc4O-00015A-0q; Tue, 17 Oct 2023 04:52:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618026.961225; Tue, 17 Oct 2023 04:52: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 1qsc4N-000153-UB; Tue, 17 Oct 2023 04:52:39 +0000
Received: by outflank-mailman (input) for mailman id 618026;
 Tue, 17 Oct 2023 04:52: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=qhkS=F7=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qsc4M-00014x-ES
 for xen-devel@lists.xenproject.org; Tue, 17 Oct 2023 04:52:38 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur04on2082.outbound.protection.outlook.com [40.107.7.82])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id fbadc114-6ca8-11ee-9b0e-b553b5be7939;
 Tue, 17 Oct 2023 06:52:33 +0200 (CEST)
Received: from AS9PR04CA0113.eurprd04.prod.outlook.com (2603:10a6:20b:531::18)
 by DU2PR08MB10037.eurprd08.prod.outlook.com (2603:10a6:10:49a::20)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.34; Tue, 17 Oct
 2023 04:52:00 +0000
Received: from AM7EUR03FT017.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:20b:531:cafe::80) by AS9PR04CA0113.outlook.office365.com
 (2603:10a6:20b:531::18) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.36 via Frontend
 Transport; Tue, 17 Oct 2023 04:52:00 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM7EUR03FT017.mail.protection.outlook.com (100.127.140.184) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6907.20 via Frontend Transport; Tue, 17 Oct 2023 04:51:59 +0000
Received: ("Tessian outbound fdf44c93bd44:v211");
 Tue, 17 Oct 2023 04:51:59 +0000
Received: from 7c9fc06d44bc.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 D88D0777-F4A7-460F-821F-5F9B9B0F907E.1; 
 Tue, 17 Oct 2023 04:51:52 +0000
Received: from EUR03-DBA-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 7c9fc06d44bc.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Tue, 17 Oct 2023 04:51:52 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by PAXPR08MB6511.eurprd08.prod.outlook.com (2603:10a6:102:12d::22)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.34; Tue, 17 Oct
 2023 04:51:48 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41%4]) with mapi id 15.20.6886.034; Tue, 17 Oct 2023
 04:51: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: fbadc114-6ca8-11ee-9b0e-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=X+Hxw/LAMqk42mMNzntNzCelYYsqYo790/5WU4ZC2TI=;
 b=Zhted2+VHm7DIQb383LGfbJZhYCDvQQNSHRcYk5Ipe+P3gIXWVQofIXR4tnNaU+S8RI68Deh1YENXtK/D0zZ7fZhdog5TON1ke7aOu9qojDcHwG5qjzqMMkOFnYZf2S6jkAw4wFo5zGEj0bS24nvADmVfHku2Uih/ZFco9Lr8jU=
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: 928f5e5ff5b6e737
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=jHZAsP9T/4YCZTi2Rh38gpmTUX7bvRqhSTYm3x6f5bWu7+FytxMaHHk2nzOpay2JkM1qfY8Ctlo9XySusaVmY7pLDJ9viizZy94yRjDHQaAm4m4LSNtKGAbOhFfdsbfiVsF7aOA9TB8M1x0W7PW5Zt7upQh1dEOmXpOvK+TQ+4OWeEZ1TrK+t5CwfY8VbtLfJ7NyU9Yb27q+/243RdQBmWitL65zfttGAI4B0CJRun0JbQENRptwCedE/CGDtUDcBrDMQ9uRkOQHpYjUBBP3KBQrMaBgmCs9KEkyEaAjDx8NUrui4owxOxgKrPtGUUPgzaOjPydDJHvORUL40BGOaw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=X+Hxw/LAMqk42mMNzntNzCelYYsqYo790/5WU4ZC2TI=;
 b=IUBS05otb2K3Ngz2D7lMeoXG7B1URnDnryXGeFEhTSirTxmKoHAnevSzAYuopt50UBGCsY4JUP1Sl43utzB7sIImYLNhoxy0cDmyMQk8RNA7byEawJaKGOV1Znt8Ng7WukdfsQ+b5ERdf9ygmQvWNyQ6aM6QXZsD3hclVTaGji4eaihFqtgE+VeabXnz3wDHetcccGZDSecw44pqnRqz6LLHdFHo27RNIK+7n9yYtsaK2shKgFYw3WnOPne04ciYl7uf9xoWc41hG/s65U/Tizuc6fKdFZZArNKCSpGCUx27PJFXsUJ7xYkyACBzPLqslKtr8d/7ei9OEcX0yLqMXQ==
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=X+Hxw/LAMqk42mMNzntNzCelYYsqYo790/5WU4ZC2TI=;
 b=Zhted2+VHm7DIQb383LGfbJZhYCDvQQNSHRcYk5Ipe+P3gIXWVQofIXR4tnNaU+S8RI68Deh1YENXtK/D0zZ7fZhdog5TON1ke7aOu9qojDcHwG5qjzqMMkOFnYZf2S6jkAw4wFo5zGEj0bS24nvADmVfHku2Uih/ZFco9Lr8jU=
From: Henry Wang <Henry.Wang@arm.com>
To: Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>
CC: Alexey Klimov <alexey.klimov@linaro.org>, Luca Fancellu
	<Luca.Fancellu@arm.com>, Bertrand Marquis <Bertrand.Marquis@arm.com>, Michal
 Orzel <michal.orzel@amd.com>, "leo.yan@linaro.org" <leo.yan@linaro.org>,
	Xen-devel <xen-devel@lists.xenproject.org>, Volodymyr Babchuk
	<Volodymyr_Babchuk@epam.com>, Rahul Singh <Rahul.Singh@arm.com>
Subject: Re: [PATCH v4 2/2] xen/arm: Enlarge identity map space to 10TB
Thread-Topic: [PATCH v4 2/2] xen/arm: Enlarge identity map space to 10TB
Thread-Index:
 AQHZ/dCmXXM/mYg9RESbVO2eUQWsBbBMHj+AgABWt4CAAAGnAIAAA6IAgAADAgCAAAYrgIAA7CcA
Date: Tue, 17 Oct 2023 04:51:47 +0000
Message-ID: <E83E6472-891E-45E6-923E-88C0DF69FAEA@arm.com>
References: <20231013122658.1270506-1-leo.yan@linaro.org>
 <20231013122658.1270506-3-leo.yan@linaro.org>
 <169101f8-0475-45b1-b2c2-60dadd88d3f0@amd.com>
 <5a5e960b-e6fd-4617-b33a-10cf07f5bb52@xen.org>
 <8BCB97B4-CBDD-43D9-B0F8-7F637B8BE559@arm.com>
 <4B2BD200-5D3E-49D5-BF13-65B769AD4B90@arm.com>
 <CANgGJDqHu0CB=zzZqda18giLYDkL3My+gT592GLO-b9HsF2A4g@mail.gmail.com>
 <d3952200-9edb-4de0-94e3-c00c571a10b9@xen.org>
In-Reply-To: <d3952200-9edb-4de0-94e3-c00c571a10b9@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_|PAXPR08MB6511:EE_|AM7EUR03FT017:EE_|DU2PR08MB10037:EE_
X-MS-Office365-Filtering-Correlation-Id: feb3da59-716d-4ef7-149b-08dbcecccc07
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:
 Lfx3nzqkQufC7ClqYnlDs497ayE9wUIV/yOqvYw5CRKQBjAIRNRHE8uymYDmA2BuJtUG79NVW0PF4UewMLBvZNI47i69X7SNJt+Ni8JyN0vnU/tw2ZmHU/SS99nGksWNPb77NsQxk58ydgTFNqde5ENLYF4l5vvN47swwlZrFKK+OgGdLXyiZ2tT3CzbaeY1a5M6OEBcnOWJ5q5uDRFoEasFvB6qHCRvO//4NO2xjrWDGWxYEHNSmd5ruVAk0vZte/gIXCWBrdSEaIbfdfujolMSky+hwMhomCP5ypV12DmaGh0b0JL7dMXhj0gJn02S0J2AViKidACk9ade3KHmgT/n4LzJnxze8o7//loCmxNjJh71I1f9Guvxg5MhzN8qZ7m9gMPm5rRbU4gPPyNTYU2ZVj0VHc95sKIz+uO2dY//rlXfbBa/I7sgjqksY5a4ERwgzqBerC48N6RYhyvDzkpk3KBs5ZVx4uf5urM2Lvljn89whkbmFzxi3r9dsA5nqK/ZuTTTqOikUlKQfSHGwG4anEQEzQ5hApV87t1pn4jn/jJ09KAS+855GItprbWbX6w9YCj2tehcyWLn0jSFfWoPtFkk0idANM9yvgd1znVH/bBBDknrTD+TEPTmrJ5N60+ST8E5ISKfJTCfeUEzhRyQMSc4UVLtiUfb8ueoOTY=
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)(136003)(39860400002)(376002)(396003)(346002)(230922051799003)(1800799009)(186009)(64100799003)(451199024)(2906002)(41300700001)(76116006)(316002)(66946007)(38070700005)(86362001)(71200400001)(66476007)(38100700002)(53546011)(122000001)(110136005)(54906003)(6506007)(64756008)(6512007)(66556008)(91956017)(478600001)(6486002)(66446008)(83380400001)(2616005)(5660300002)(26005)(33656002)(8936002)(36756003)(8676002)(4326008)(147533002)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <D1450B443329EC48B16D9673B1307197@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR08MB6511
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:
 AM7EUR03FT017.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	544d3818-a66b-435d-3568-08dbceccc4eb
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	d8jMYBn6QH3xfyItX3LUtUOx5FSbOzqjbQPDD4xH8RGpea1gFDm/4RZ8EUX7VPuabnGo+blj+qcvxH2X3u09lhd+2jlrQ3XYT9Wzs3g/eJX5hGpfpmoI/wMnIINv10eBNyAmCtR8+8b42JLB/Q5E1hqnGoZdj3ePxXcofTFgHKq6P71vOvCSDU9V04fSwFKoKCIdTVr1s0mi6y2x1ubqZ846AFv6GhuM6Pupdsw7XoNHkHqg+WmRgYYaUS/WeOwOwErz/KLKeIUKeDOyWTaQgDRxSfH+Iw6fSddu2GBiJeZgvl71PdknQpoLYvKIN5q2DFQss+4hWtWL/3yCxEjscVu6gPgneWf4DsRAtCe/eGTakVE2+3/Q76MWjtvTjmKCxRtHQhA3bn/UeS50qDppYnSJFljWaKKQAICyglgR/I7ZyX5KYbvyxWXWaeh5EYysiEMXdrJIFPbJBMZVY84XLZsvSxwoqFGk8nC4j2IdjqYCf7izwhhSNxLLO+IMPRapS249VLC9dwH6RBHLimD2OhMHRQLPv1X37J7DMGMw/0gjHxhYF9OL52vVmxmetGdarVUNgWsVM4I2rGIrvTAR53BxW83PMUE5jzLpTPCo6pXbL647PAtlAMIGLNPiuAK0Gj79nwSU7B8lden3XOUSdFm2Ydv7SK+qjzOrYeL8vzWVjTDzRSdeHqLAOZabboy7dkeNK78n1J9vAfGdc2EcXf6RmLLoNYKPoWfBxRJXQXqyEX9mU4pMG5SDcUq38MJ08Jojqwc4iKsuxqPhVc+6gw==
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)(376002)(39860400002)(230922051799003)(451199024)(1800799009)(64100799003)(186009)(82310400011)(46966006)(40470700004)(36840700001)(40460700003)(40480700001)(6486002)(356005)(36756003)(81166007)(36860700001)(82740400003)(47076005)(83380400001)(26005)(6506007)(336012)(110136005)(70586007)(70206006)(2616005)(478600001)(54906003)(53546011)(316002)(2906002)(41300700001)(86362001)(8676002)(4326008)(6512007)(33656002)(5660300002)(8936002)(147533002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Oct 2023 04:51:59.3942
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: feb3da59-716d-4ef7-149b-08dbcecccc07
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:
	AM7EUR03FT017.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU2PR08MB10037

SGkgSnVsaWVuLA0KDQo+IE9uIE9jdCAxNiwgMjAyMywgYXQgMjI6NDYsIEp1bGllbiBHcmFsbCA8
anVsaWVuQHhlbi5vcmc+IHdyb3RlOg0KPiANCj4gQ0MgSGVucnkNCg0KVGhhbmtzLg0KDQo+IEhp
IEFsZXhleSwNCj4gDQo+IE9uIDE2LzEwLzIwMjMgMTU6MjQsIEFsZXhleSBLbGltb3Ygd3JvdGU6
DQo+PiBPbiBNb24sIDE2IE9jdCAyMDIzIGF0IDE1OjEzLCBMdWNhIEZhbmNlbGx1IDxMdWNhLkZh
bmNlbGx1QGFybS5jb20+IHdyb3RlDQo+Pj4gDQo+Pj4+PiBPbiAxNi8xMC8yMDIzIDA5OjQ0LCBN
aWNoYWwgT3J6ZWwgd3JvdGU6DQo+Pj4+Pj4gT24gMTMvMTAvMjAyMyAxNDoyNiwgTGVvIFlhbiB3
cm90ZToNCj4+Pj4+Pj4gDQo+Pj4+Pj4+IA0KPj4+Pj4+PiBPbiBBRExpbmsgQVZBIHBsYXRmb3Jt
IChBbXBlcmUgQWx0cmEgU29DIHdpdGggMzIgQXJtIE5lb3ZlcnNlIE4xIGNvcmVzKSwNCj4+Pj4+
Pj4gdGhlIHBoeXNpY2FsIG1lbW9yeSByZWdpb25zIGFyZToNCj4+Pj4+Pj4gDQo+Pj4+Pj4+ICBE
UkFNIG1lbW9yeSByZWdpb25zOg0KPj4+Pj4+PiAgICBOb2RlWzBdIFJlZ2lvblswXTogMHgwMDAw
ODAwMDAwMDAgLSAweDAwMDBmZmZmZmZmZg0KPj4+Pj4+PiAgICBOb2RlWzBdIFJlZ2lvblsxXTog
MHgwODAwMDAwMDAwMDAgLSAweDA4MDA3ZmZmZmZmZg0KPj4+Pj4+PiAgICBOb2RlWzBdIFJlZ2lv
blsyXTogMHgwODAxMDAwMDAwMDAgLSAweDA4MDdmZmZmZmZmZg0KPj4+Pj4+PiANCj4+Pj4+Pj4g
VGhlIFVFRkkgbG9hZHMgWGVuIGh5cGVydmlzb3IgYW5kIERUQiBpbnRvIHRoZSBoaWdoIG1lbW9y
eSwgdGhlIGtlcm5lbA0KPj4+Pj4+PiBhbmQgcmFtZGlzayBpbWFnZXMgYXJlIGxvYWRlZCBpbnRv
IHRoZSBsb3cgbWVtb3J5IHNwYWNlOg0KPj4+Pj4+PiANCj4+Pj4+Pj4gIChYRU4pIE1PRFVMRVsw
XTogMDAwMDA4MDdmNmRmMDAwMCAtIDAwMDAwODA3ZjZmM2UwMDAgWGVuDQo+Pj4+Pj4+ICAoWEVO
KSBNT0RVTEVbMV06IDAwMDAwODA3ZjgwNTQwMDAgLSAwMDAwMDgwN2Y4MDU2MDAwIERldmljZSBU
cmVlDQo+Pj4+Pj4+ICAoWEVOKSBNT0RVTEVbMl06IDAwMDAwMDAwZmE4MzQwMDAgLSAwMDAwMDAw
MGZjNWRlMWQ1IFJhbWRpc2sNCj4+Pj4+Pj4gIChYRU4pIE1PRFVMRVszXTogMDAwMDAwMDBmYzVk
ZjAwMCAtIDAwMDAwMDAwZmZiM2Y4MTAgS2VybmVsDQo+Pj4+Pj4+IA0KPj4+Pj4+PiBJbiB0aGlz
IGNhc2UsIHRoZSBYZW4gYmluYXJ5IGlzIGxvYWRlZCBhYm92ZSA4VEIsIHdoaWNoIGV4Y2VlZHMg
dGhlDQo+Pj4+Pj4+IG1heGltdW0gc3VwcG9ydGVkIGlkZW50aXR5IG1hcCBzcGFjZSBvZiAyVEIg
aW4gWGVuLiBDb25zZXF1ZW50bHksIHRoZQ0KPj4+Pj4+PiBzeXN0ZW0gZmFpbHMgdG8gYm9vdC4N
Cj4+Pj4+Pj4gDQo+Pj4+Pj4+IFRoaXMgcGF0Y2ggZW5sYXJnZXMgaWRlbnRpdHkgbWFwIHNwYWNl
IHRvIDEwVEIsIGFsbG93aW5nIG1vZHVsZSBsb2FkaW5nDQo+Pj4+Pj4+IHdpdGhpbiB0aGUgcmFu
Z2Ugb2YgWzB4MCAuLiAweDAwMDAwOWZmX2ZmZmZfZmZmZl0uDQo+Pj4+Pj4+IA0KPj4+Pj4+PiBG
aXhlczogMWM3OGQ3NmI2NyAoInhlbi9hcm02NDogbW06IEludHJvZHVjZSBoZWxwZXJzIHRvIHBy
ZXBhcmUvZW5hYmxlL2Rpc2FibGUiKQ0KPj4+Pj4+IEkgZG9uJ3QgdGhpbmsgYSBmaXhlcyB0YWcg
YXBwbGllcyBoZXJlIGdpdmVuIHRoYXQgMlRCIHdhcyBqdXN0IGEgbnVtYmVyIHdlIGJlbGlldmVk
IGlzIGVub3VnaA0KPj4+Pj4+IGFuZCBhbGwgb2YgdGhpcyBpcyBwbGF0Zm9ybSBkZXBlbmRlbnQu
DQo+Pj4+Pj4gVGhpcyBjYW4gYmUgZHJvcHBlZCBvbiBjb21taXQgaWYgY29tbWl0dGVyIGFncmVl
cw0KPj4+Pj4gWGVuIG1heSBoYXZlIGJvb3RlZCBvbiB0aGF0IHBsYXRmb3JtIGJlZm9yZSBoYW5k
LiBTbyB0aGlzIHdvdWxkIGJlIGNvbnNpZGVyZWQgYSByZWdyZXNzaW9uIGFuZCB0aGVyZWZvcmUg
YSB0YWcgd291bGQgYmUgd2FycmFudC4NCj4+Pj4+IA0KPj4+Pj4gQUZBSUNULCB0aGUgY29tbWl0
IGlzIG9ubHkgcHJlc2VudCBvbiB0aGUgdXBjb21pbmcgNC4xOC4gU28gdGhlIHF1ZXN0aW9uIGlz
IHdoZXRoZXIgWGVuIDQuMTcgYm9vdGVkIG91dC1vZi10aGUtYm94IG9uIEFETGluaz8gSWYgdGhl
IGFuc3dlciBpcyB5ZXMsIHRoZW4gd2UgbmVlZCB0byBhZGQgYSBGaXhlcyB0YWcuIEJ1dCB0aGUg
Y29ycmVjdCBvbmUgd291bGQgYmUNCj4+Pj4+IA0KPj4+PiANCj4+Pj4gQFJhaHVsIG9yIEx1Y2E6
IGNvdWxkIHlvdSBnaXZlIGFuIGFuc3dlciBoZXJlID8NCj4+Pj4gSSBrbm93IHlvdSB1c2VkIFhl
biBvbiBhbiBBVkEgcGxhdGZvcm0gYnV0IHdhcyBpdCBib290aW5nIG91dCBvZiB0aGUgYm94ID8N
Cj4+PiANCj4+PiBJIGNhbuKAmXQgc2F5IGZvciBYZW4gNC4xNywgYnV0IG91ciBuaWdodGx5IGpv
YiBoYXMgcnVuIHN1Y2Nlc3NmdWxseSBvbiBBVkEgZm9yIHRoZSBjb21taXQgNzMwNDA2YWI4MTA5
NDExNWQ5ZmI1Y2EwMGJhOGQ1M2NlYzEyNzliMw0KPj4+IChkb2NzL21pc3JhOiBhZGQgZGV2aWF0
aW9ucy5yc3QgdG8gZG9jdW1lbnQgYWRkaXRpb25hbCBkZXZpYXRpb25zLikNCj4+PiANCj4+PiBX
ZSBhcmUgbm90IGFwcGx5aW5nIGFueSBwYXRjaCBmb3IgaXQgdG8gcnVuIG9uIEFWQS4NCj4+IE1v
c3QgbGlrZWx5IGl0IGlzIGJlY2F1c2UgeW91ciBVRUZJL0JJT1MgZmlybXdhcmUgaXMgMi54LCBm
b3IgaW5zdGFuY2UNCj4+IDIuMDQuMTAwLjA3Lg0KPj4gVGhpcyBmaXggaWYgZm9yIEFWQSBtYWNo
aW5lIHdpdGggb2xkZXIgVUVGSSBmaXJtd2FyZSAxLjA3LjMwMC4wMy4NCj4gDQo+IE9PSSwgd2h5
IG5vdCB1cGRhdGluZyB5b3VyIGZpcm13YXJlPyBJIHdhcyBleHBlY3RpbmcgdGhhdCBpdCB3b3Vs
ZCBhbHNvIGNvbnRhaW4gb3RoZXIgY3JpdGljYWwgZml4ZXMuDQoNCk5vdCBzdXJlIHdoYXQgaXMg
dGhlIHJlYXNvbiBmcm9tIEFsZXhleeKAmXMgc2lkZSwgYnV0IGZyb20gbXkgZXhwZXJpZW5jZSBv
Zg0KdXBkYXRpbmcgQVZBIGZpcm13YXJlLCBpdCBpcyBzb21ldGltZXMgdHJpY2t5IGFzIEkgcmVt
ZW1iZXIgSSBkaWQgNSBib2FyZHMNCnVzaW5nIHRoZSBzYW1lIHNldCBvZiB1cGdyYWRlIGluc3Ry
dWN0aW9ucyBidXQgb25lIGJvYXJkIHdhcyBicmlja2VkDQptYWdpY2FsbHkgZHVyaW5nIHRoaXMg
cHJvZ3Jlc3MgKEZ1bm55IHRoYXQgdGhlIHJlYXNvbiB3aHkgd2UgdXBncmFkZQ0KdGhlIGZpcm13
YXJlIHdhcyB0byBmaXggdGhpcyBpc3N1ZeKApikuIE9uY2UgdGhpcyBoYXBwZW5zLCB0aGUgb25s
eSBtZXRob2QgdG8NCnJlY292ZXIgaXMgdG8gaGF2ZSBhIGRlZGlwcm9nIG9yIHNvbWV0aGluZyBz
aW1pbGFyIHRvIHByb2dyYW0gdGhlIGZsYXNoLg0KSWYgdGhlcmUgaXMgbm8gaGFuZHkgdG9vbHMs
IHRoZW4gdGhlcmUgd291bGQgYmUgYSBwcm9ibGVt4oCmU28gSSB1bmRlcnN0YW5kDQpwZW9wbGUg
bWF5IGRvbuKAmXQgcmVhbGx5IHdhbnQgdG8gZG8gdGhlIHVwZ3JhZGluZywgYnV0IGluZGVlZCBJ
IGFsc28gcmVjb21tZW5kDQp0byB1cGdyYWRlIHRoZSBmaXJtd2FyZS4NCg0KPiANCj4gV2l0aCB0
aGlzIGluIG1pbmQsIEkgYW0gbm93IG1vcmUgaW4gdHdvIG1pbmQgdG8gYXNrIHRvIG1lcmdlIHRo
aXMgcGF0Y2ggaW4gWGVuIDQuMTguIE9uIG9uZSBoYW5kLCBJIHVuZGVyc3RhbmQgaXQgd2lsbCBo
ZWxwIHRvIGJvb3Qgb24gQVZBIG1hY2hpbmUgd2l0aCBhbiBvbGRlciBmaXJtd2FyZS4gQnV0IG9u
IHRoZSBvdGhlciBoYW5kIHRoaXMgaXMgY2hhbmdpbmcgdGhlIG1lbW9yeSBsYXlvdXQgcXVpdGUg
bGF0ZSBpbiB0aGUgcmVsZWFzZS4gVGhlIHJpc2sgc2VlbXMgbGltaXRlZCBiZWNhdXNlIFhlbiBp
cyBub3QgbG9hZGVkIGF0IHRoZSB0b3Agb2YgdGhlIHZpcnR1YWwgYWRkcmVzcyBzcGFjZSAodGhl
cmUgaXMgdGhlIGRpcmVjdG1hcCBhZnRlcndhcmRzKS4NCj4gDQo+IEhlbnJ5IChhcyB0aGUgcmVs
ZWFzZSBtYW5hZ2VyKSBhbmQgb3RoZXJzLCBhbnkgb3BpbmlvbnM/DQoNCkkgdGVzdGVkIHRoaXMg
c2VyaWVzIG9uIHRvcCBvZiB0b2RheeKAmXMgc3RhZ2luZyBpbiBvdXIgQ0kgYW5kIGl0IHNlZW1z
IHRoYXQgdGhpcw0Kc2VyaWVzIGlzIG5vdCBicmVha2luZyBhbnkgYm9hcmRzL2VtdWxhdG9ycyB3
ZSB1c2VkIGZvciB0ZXN0aW5nLCBzbzoNCg0KVGVzdGVkLWJ5OiBIZW5yeSBXYW5nIDxIZW5yeS5X
YW5nQGFybS5jb20+DQoNCkkgc2F3IHlvdSBhbmQgQmVydHJhbmQgaGFkIGEgc2xpZ2h0bHkgZGlm
ZmVyZW50IG9waW5pb24gb24gdGhpcyBhbmQgcHJvYmFibHkNCndlIG5lZWQgU3RlZmFub+KAmXMg
aW5wdXQgdG9vLCBBbnkgaWRlYXMgU3RlZmFubz8NCg0KQnV0IEkgcGVyc29uYWxseSB3b27igJl0
IGJsb2NrIHRoaXMgcGF0Y2gsIHNvIGlmIHRoZSBkaXNjdXNzaW9uIGlzIHNldHRsZWQgdG8NCm1l
cmdlIHRoaXMgdG8gNC4xOCwgZmVlbCBmcmVlOg0KDQpSZWxlYXNlLWFja2VkLWJ5OiBIZW5yeSBX
YW5nIDxIZW5yeS5XYW5nQGFybS5jb20+DQoNCktpbmQgcmVnYXJkcywNCkhlbnJ5DQoNCj4gDQo+
IENoZWVycywNCj4gDQo+IC0tIA0KPiBKdWxpZW4gR3JhbGwNCg0K


From xen-devel-bounces@lists.xenproject.org Tue Oct 17 05:24:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 17 Oct 2023 05:24:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618030.961235 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qscZQ-0006Oi-Ej; Tue, 17 Oct 2023 05:24:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618030.961235; Tue, 17 Oct 2023 05:24: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 1qscZQ-0006Ob-C3; Tue, 17 Oct 2023 05:24:44 +0000
Received: by outflank-mailman (input) for mailman id 618030;
 Tue, 17 Oct 2023 05:24: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=VGTZ=F7=suse.com=jgross@srs-se1.protection.inumbo.net>)
 id 1qscZP-0006OR-0j
 for xen-devel@lists.xenproject.org; Tue, 17 Oct 2023 05:24:43 +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 792ab0c7-6cad-11ee-98d4-6d05b1d4d9a1;
 Tue, 17 Oct 2023 07:24:41 +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 4263121CE0;
 Tue, 17 Oct 2023 05:24:40 +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 EAA7A132BE;
 Tue, 17 Oct 2023 05:24:39 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap2.suse-dmz.suse.de with ESMTPSA id SVn1N5caLmWwbgAAMHmgww
 (envelope-from <jgross@suse.com>); Tue, 17 Oct 2023 05: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>
X-Inumbo-ID: 792ab0c7-6cad-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1697520280; 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=Jaxq4t4TUHGsDV067EfT1iohN3Ymh2D9jPvDTQQDQc0=;
	b=fnJMpCrCJyDERAbjUoH9+3VhRwXxCXTAYECXBdbk4joYjMXL2b/ilMMJqdt1IABOYHO7S3
	+yx8czBA17L/bqOfqqOIQKta/RCB9+De3qjiI6uPax0ce0GQ5eKFcrySJKdKH+VRlFf7rs
	xm5sct9pm9dCPPo1mwmRy9QGlNJeqlo=
Message-ID: <ef8ca952-fe3a-4180-857b-7f4dd09b8259@suse.com>
Date: Tue, 17 Oct 2023 07:24:39 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH for-4.18] docs/sphinx: Lifecycle of a domid
Content-Language: en-US
To: Andrew Cooper <andrew.cooper3@citrix.com>,
 Xen-devel <xen-devel@lists.xenproject.org>
Cc: George Dunlap <George.Dunlap@eu.citrix.com>,
 Jan Beulich <JBeulich@suse.com>, Stefano Stabellini
 <sstabellini@kernel.org>, Wei Liu <wl@xen.org>, Julien Grall
 <julien@xen.org>, =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>,
 Henry Wang <Henry.Wang@arm.com>
References: <20231016162450.1286178-1-andrew.cooper3@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: <20231016162450.1286178-1-andrew.cooper3@citrix.com>
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature";
 boundary="------------SuhlFKXtC17hZxKEPapCSiqn"
Authentication-Results: smtp-out1.suse.de;
	none
X-Spam-Level: 
X-Spam-Score: -8.99
X-Spamd-Result: default: False [-8.99 / 50.00];
	 ARC_NA(0.00)[];
	 RCVD_VIA_SMTP_AUTH(0.00)[];
	 XM_UA_NO_VERSION(0.01)[];
	 FROM_HAS_DN(0.00)[];
	 TO_MATCH_ENVRCPT_ALL(0.00)[];
	 BAYES_HAM(-3.00)[100.00%];
	 MIME_GOOD(-0.20)[multipart/signed,multipart/mixed,text/plain];
	 HAS_ATTACHMENT(0.00)[];
	 NEURAL_HAM_LONG(-3.00)[-1.000];
	 DKIM_SIGNED(0.00)[suse.com:s=susede1];
	 TO_DN_ALL(0.00)[];
	 MIME_BASE64_TEXT(0.10)[];
	 RCPT_COUNT_SEVEN(0.00)[9];
	 NEURAL_HAM_SHORT(-1.00)[-1.000];
	 SIGNED_PGP(-2.00)[];
	 FROM_EQ_ENVFROM(0.00)[];
	 MIME_TRACE(0.00)[0:+,1:+,2:+,3:+,4:~,5:~];
	 RCVD_COUNT_TWO(0.00)[2];
	 RCVD_TLS_ALL(0.00)[];
	 MID_RHS_MATCH_FROM(0.00)[];
	 MIME_UNKNOWN(0.10)[application/pgp-keys]
X-Spam-Flag: NO

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--------------SuhlFKXtC17hZxKEPapCSiqn
Content-Type: multipart/mixed; boundary="------------yBAnfsK5fFjtz0ff9U4XBgeb";
 protected-headers="v1"
From: Juergen Gross <jgross@suse.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>,
 Xen-devel <xen-devel@lists.xenproject.org>
Cc: George Dunlap <George.Dunlap@eu.citrix.com>,
 Jan Beulich <JBeulich@suse.com>, Stefano Stabellini
 <sstabellini@kernel.org>, Wei Liu <wl@xen.org>, Julien Grall
 <julien@xen.org>, =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>,
 Henry Wang <Henry.Wang@arm.com>
Message-ID: <ef8ca952-fe3a-4180-857b-7f4dd09b8259@suse.com>
Subject: Re: [PATCH for-4.18] docs/sphinx: Lifecycle of a domid
References: <20231016162450.1286178-1-andrew.cooper3@citrix.com>
In-Reply-To: <20231016162450.1286178-1-andrew.cooper3@citrix.com>

--------------yBAnfsK5fFjtz0ff9U4XBgeb
Content-Type: multipart/mixed; boundary="------------ucWOQ0zQutHlE09XrK5i5ouj"

--------------ucWOQ0zQutHlE09XrK5i5ouj
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: base64

T24gMTYuMTAuMjMgMTg6MjQsIEFuZHJldyBDb29wZXIgd3JvdGU6DQo+IFNpZ25lZC1vZmYt
Ynk6IEFuZHJldyBDb29wZXIgPGFuZHJldy5jb29wZXIzQGNpdHJpeC5jb20+DQo+IC0tLQ0K
PiBDQzogR2VvcmdlIER1bmxhcCA8R2VvcmdlLkR1bmxhcEBldS5jaXRyaXguY29tPg0KPiBD
QzogSmFuIEJldWxpY2ggPEpCZXVsaWNoQHN1c2UuY29tPg0KPiBDQzogU3RlZmFubyBTdGFi
ZWxsaW5pIDxzc3RhYmVsbGluaUBrZXJuZWwub3JnPg0KPiBDQzogV2VpIExpdSA8d2xAeGVu
Lm9yZz4NCj4gQ0M6IEp1bGllbiBHcmFsbCA8anVsaWVuQHhlbi5vcmc+DQo+IENDOiBSb2dl
ciBQYXUgTW9ubsOpIDxyb2dlci5wYXVAY2l0cml4LmNvbT4NCj4gQ0M6IEp1ZXJnZW4gR3Jv
c3MgPGpncm9zc0BzdXNlLmNvbT4NCj4gQ0M6IEhlbnJ5IFdhbmcgPEhlbnJ5LldhbmdAYXJt
LmNvbT4NCj4gDQo+IFJlbmRlcmVkIGZvcm06DQo+ICAgIGh0dHBzOi8vYW5kcmV3Y29vcC14
ZW4ucmVhZHRoZWRvY3MuaW8vZW4vZG9jcy1kZXZlbC9oeXBlcnZpc29yLWd1aWRlL2RvbWlk
LWxpZmVjeWNsZS5odG1sDQo+IA0KPiBJJ20gbm90IHN1cmUgd2h5IGl0J3MgdXNpbmcgdGhl
IGFsaWJhc3RlciB0aGVtZSBhbmQgbm90IFJURCB0aGVtZSwgYnV0IEkNCj4gZG9uJ3QgaGF2
ZSB0aW1lIHRvIGRlYnVnIHRoYXQgZnVydGhlciBhdCB0aGlzIHBvaW50Lg0KPiANCj4gVGhp
cyB3YXMgd3JpdHRlbiBtb3N0bHkgd2hpbGUgc2F0IHdhaXRpbmcgZm9yIGZsaWdodHMgaW4g
TmFuamluZyBhbmQgQmVpamluZy4NCj4gDQo+IElmIHdoaWxlIHJlYWRpbmcgdGhpcyB5b3Ug
c3BvdCBhIGhvbGUsIGNvbmdyYXR1bGF0aW9ucy4gIFRoZXJlIGFyZSBob2xlcyB3aGljaA0K
PiBuZWVkIGZpeGluZy4uLg0KPiAtLS0NCj4gICBkb2NzL2dsb3NzYXJ5LnJzdCAgICAgICAg
ICAgICAgICAgICAgICAgICB8ICAgOSArKw0KPiAgIGRvY3MvaHlwZXJ2aXNvci1ndWlkZS9k
b21pZC1saWZlY3ljbGUucnN0IHwgMTY0ICsrKysrKysrKysrKysrKysrKysrKysNCj4gICBk
b2NzL2h5cGVydmlzb3ItZ3VpZGUvaW5kZXgucnN0ICAgICAgICAgICB8ICAgMSArDQo+ICAg
MyBmaWxlcyBjaGFuZ2VkLCAxNzQgaW5zZXJ0aW9ucygrKQ0KPiAgIGNyZWF0ZSBtb2RlIDEw
MDY0NCBkb2NzL2h5cGVydmlzb3ItZ3VpZGUvZG9taWQtbGlmZWN5Y2xlLnJzdA0KPiANCj4g
ZGlmZiAtLWdpdCBhL2RvY3MvZ2xvc3NhcnkucnN0IGIvZG9jcy9nbG9zc2FyeS5yc3QNCj4g
aW5kZXggOGRkYmRhYjE2MGExLi4xZmQxZGUwZjBlOTcgMTAwNjQ0DQo+IC0tLSBhL2RvY3Mv
Z2xvc3NhcnkucnN0DQo+ICsrKyBiL2RvY3MvZ2xvc3NhcnkucnN0DQo+IEBAIC01MCwzICs1
MCwxMiBAQCBHbG9zc2FyeQ0KPiAgIA0KPiAgICAgICAgQnkgZGVmYXVsdCBpdCBnZXRzIGFs
bCBkZXZpY2VzLCBpbmNsdWRpbmcgYWxsIGRpc2tzIGFuZCBuZXR3b3JrIGNhcmRzLCBzbw0K
PiAgICAgICAgaXMgcmVzcG9uc2libGUgZm9yIG11bHRpcGxleGluZyBndWVzdCBJL08uDQo+
ICsNCj4gKyAgIHN5c3RlbSBkb21haW4NCj4gKyAgICAgQWJzdHJhY3Rpb25zIHdpdGhpbiBY
ZW4gdGhhdCBhcmUgbW9kZWxsZWQgaW4gYSBzaW1pbGFyIHdheSB0byByZWd1bGFyDQo+ICsg
ICAgIDp0ZXJtOmBkb21haW5zPGRvbWFpbj5gLiAgRS5nLiBXaGVuIHRoZXJlJ3Mgbm8gd29y
ayB0byBkbywgWGVuIHNjaGVkdWxlcw0KPiArICAgICBgYERPTUlEX0lETEVgYCB0byBwdXQg
dGhlIENQVSBpbnRvIGEgbG93ZXIgcG93ZXIgc3RhdGUuDQo+ICsNCj4gKyAgICAgU3lzdGVt
IGRvbWFpbnMgaGF2ZSA6dGVybTpgZG9taWRzPGRvbWlkPmAgYW5kIGFyZSByZWZlcmVuY2Vk
IGJ5DQo+ICsgICAgIHByaXZpbGVnZWQgc29mdHdhcmUgZm9yIGNlcnRhaW4gY29udHJvbCBv
cGVyYXRpb25zLCBidXQgdGhleSBkbyBub3QgcnVuDQo+ICsgICAgIGd1ZXN0IGNvZGUuDQo+
IGRpZmYgLS1naXQgYS9kb2NzL2h5cGVydmlzb3ItZ3VpZGUvZG9taWQtbGlmZWN5Y2xlLnJz
dCBiL2RvY3MvaHlwZXJ2aXNvci1ndWlkZS9kb21pZC1saWZlY3ljbGUucnN0DQo+IG5ldyBm
aWxlIG1vZGUgMTAwNjQ0DQo+IGluZGV4IDAwMDAwMDAwMDAwMC4uZDQwNWEzMjFmM2M3DQo+
IC0tLSAvZGV2L251bGwNCj4gKysrIGIvZG9jcy9oeXBlcnZpc29yLWd1aWRlL2RvbWlkLWxp
ZmVjeWNsZS5yc3QNCj4gQEAgLTAsMCArMSwxNjQgQEANCj4gKy4uIFNQRFgtTGljZW5zZS1J
ZGVudGlmaWVyOiBDQy1CWS00LjANCj4gKw0KPiArTGlmZWN5Y2xlIG9mIGEgZG9taWQNCj4g
Kz09PT09PT09PT09PT09PT09PT09DQo+ICsNCj4gK092ZXJ2aWV3DQo+ICstLS0tLS0tLQ0K
PiArDQo+ICtBIDp0ZXJtOmBkb21pZGAgaXMgWGVuJ3MgbnVtZXJpYyBpZGVudGlmaWVyIGZv
ciBhIDp0ZXJtOmBkb21haW5gLiAgSW4gYW55DQo+ICtvcGVyYXRpb25hbCBYZW4gc3lzdGVt
LCB0aGVyZSBhcmUgb25lIG9yIG1vcmUgZG9tYWlucyBydW5uaW5nLg0KPiArDQo+ICtEb21p
ZHMgYXJlIDE2LWJpdCBpbnRlZ2Vycy4gIFJlZ3VsYXIgZG9taWRzIHN0YXJ0IGZyb20gMCwg
YnV0IHRoZXJlIGFyZSBzb21lDQo+ICtzcGVjaWFsIGlkZW50aWZpZXJzLCBlLmcuIGBgRE9N
SURfU0VMRmBgLCBhbmQgOnRlcm06YHN5c3RlbSBkb21haW5zPHN5c3RlbQ0KPiArZG9tYWlu
PmAsIGUuZy4gYGBET01JRF9JRExFYGAgc3RhcnRpbmcgZnJvbSAweDdmZjAuICBUaGVyZWZv
cmUsIGEgWGVuIHN5c3RlbQ0KPiArY2FuIHJ1biBhIG1heGltdW0gb2YgMzJrIGRvbWFpbnMg
Y29uY3VycmVudGx5Lg0KPiArDQo+ICsuLiBub3RlOjoNCj4gKw0KPiArICAgRGVzcGl0ZSBi
ZWluZyBleHBvc2VkIGluIHRoZSBkb21pZCBBQkksIHRoZSBzeXN0ZW0gZG9tYWlucyBhcmUg
aW50ZXJuYWwgdG8NCj4gKyAgIFhlbiBhbmQgZG8gbm90IGhhdmUgbGlmZWN5Y2xlcyBsaWtl
IHJlZ3VsYXIgZG9tYWlucy4gIFRoZXJlZm9yZSwgdGhleSBhcmUNCj4gKyAgIG5vdCBkaXNj
dXNzZWQgZnVydGhlciBpbiB0aGlzIGRvY3VtZW50Lg0KPiArDQo+ICtBdCBzeXN0ZW0gYm9v
dCwgWGVuIHdpbGwgY29uc3RydWN0IG9uZSBvciBtb3JlIGRvbWFpbnMuICBLZXJuZWxzIGFu
ZA0KPiArY29uZmlndXJhdGlvbiBmb3IgdGhlc2UgZG9tYWlucyBtdXN0IGJlIHByb3ZpZGVk
IGJ5IHRoZSBib290bG9hZGVyLCBvciBhdA0KPiArWGVuJ3MgY29tcGlsZSB0aW1lIGZvciBt
b3JlIGhpZ2hseSBpbnRlZ3JhdGVkIHNvbHV0aW9ucy4NCj4gKw0KPiArQ29ycmVjdCBmdW5j
dGlvbmluZyBvZiB0aGUgZG9tYWluIGxpZmVjeWNsZSBpbnZvbHZlcyBgYHhlbnN0b3JlZGBg
LCBhbmQgc29tZQ0KPiArcHJpdmlsZWdlZCBlbnRpdHkgd2hpY2ggaGFzIGJvdW5kIHRoZSBg
YFZJUlFfRE9NX0VYQ2BgIGdsb2JhbCBldmVudCBjaGFubmVsLg0KPiArDQo+ICsuLiBub3Rl
OjoNCj4gKw0KPiArICAgV2hpbGUgbm90IGEgc3RyaWN0IHJlcXVpcmVtZW50IGZvciB0aGVz
ZSB0byBiZSB0aGUgc2FtZSBlbnRpdHksIGl0IGlzDQo+ICsgICBgYHhlbnN0b3JlZGBgIHdo
aWNoIHR5cGljYWxseSBoYXMgYGBWSVJRX0RPTV9FWENgYCBib3VuZC4gIFRoaXMgZG9jdW1l
bnQgaXMNCj4gKyAgIHdyaXR0ZW4gYXNzdW1pbmcgdGhlIGNvbW1vbiBjYXNlLg0KPiArDQo+
ICtDcmVhdGlvbg0KPiArLS0tLS0tLS0NCj4gKw0KPiArV2l0aGluIFhlbiwgdGhlIGBgZG9t
YWluX2NyZWF0ZSgpYGAgZnVuY3Rpb24gaXMgdXNlZCB0byBhbGxvY2F0ZSBhbmQgcGVyZm9y
bQ0KPiArYmFyZSBtaW5pbXVtIGNvbnN0cnVjdGlvbiBvZiBhIGRvbWFpbi4gIFRoZSA6dGVy
bTpgY29udHJvbCBkb21haW5gIGFjY2Vzc2VzDQo+ICt0aGlzIGZ1bmN0aW9uYWxpdHkgdmlh
IHRoZSBgYERPTUNUTF9jcmVhdGVkb21haW5gYCBoeXBlcmNhbGwuDQo+ICsNCj4gK1RoZSBm
aW5hbCBhY3Rpb24gdGhhdCBgYGRvbWFpbl9jcmVhdGUoKWBgIHBlcmZvcm1zIGJlZm9yZSBy
ZXR1cm5pbmcNCj4gK3N1Y2Nlc3NmdWxseSBpcyB0byBlbnRlciB0aGUgbmV3IGRvbWFpbiBp
bnRvIHRoZSBkb21saXN0LiAgVGhpcyBtYWtlcyB0aGUNCj4gK2RvbWFpbiAidmlzaWJsZSIg
d2l0aGluIFhlbiwgYWxsb3dpbmcgdGhlIG5ldyBkb21pZCB0byBiZSBzdWNjZXNzZnVsbHkN
Cj4gK3JlZmVyZW5jZWQgYnkgb3RoZXIgaHlwZXJjYWxscy4NCj4gKw0KPiArQXQgdGhpcyBw
b2ludCwgdGhlIGRvbWFpbiBleGlzdHMgYXMgZmFyIGFzIFhlbiBpcyBjb25jZXJuZWQsIGJ1
dCBub3QgdXNlZnVsbHkNCj4gK2FzIGEgVk0geWV0LiAgVGhlIHRvb2xzdGFjayBwZXJmb3Jt
cyBmdXJ0aGVyIGNvbnN0cnVjdGlvbiBhY3Rpdml0aWVzOw0KPiArYWxsb2NhdGluZyB2Q1BV
cywgUkFNLCBjb3B5aW5nIGluIHRoZSBpbml0aWFsIGV4ZWN1dGFibGUgY29kZSwgZXRjLiAg
RG9tYWlucw0KPiArYXJlIGF1dG9tYXRpY2FsbHkgY3JlYXRlZCB3aXRoIG9uZSAicGF1c2Ui
IHJlZmVyZW5jZSBjb3VudCBoZWxkLCBtZWFuaW5nIHRoYXQNCj4gK2l0IGlzIG5vdCBlbGln
aWJsZSBmb3Igc2NoZWR1bGluZy4NCj4gKw0KPiArV2hlbiB0aGUgdG9vbHN0YWNrIGhhcyBm
aW5pc2hlZCBWTSBjb25zdHJ1Y3Rpb24sIGl0IHNlbmQgYW4gYGBYU19JTlRST0RVQ0VgYA0K
DQpzL3NlbmQvc2VuZHMvDQoNCj4gK2NvbW1hbmQgdG8gYGB4ZW5zdG9yZWRgYC4gIFRoaXMg
aW5zdHJ1Y3RzIGBgeGVuc3RvcmVkYGAgdG8gY29ubmVjdCB0byB0aGUNCj4gK2d1ZXN0J3Mg
eGVuc3RvcmUgcmluZywgYW5kIGZpcmUgdGhlIGBgQGludHJvZHVjZURvbWFpbmBgIHdhdGNo
LiAgVGhlIGZpcmluZyBvZg0KPiArdGhpcyB3YXRjaCBpcyB0aGUgc2lnbmFsIHRvIGFsbCBv
dGhlciBjb21wb25lbnRzIHdoaWNoIGNhcmUgdGhhdCBhIG5ldyBWTSBoYXMNCj4gK2FwcGVh
cmVkIGFuZCBpcyBhYm91dCB0byBzdGFydCBydW5uaW5nLg0KDQpBIG5vdGUgc2hvdWxkIGJl
IGFkZGVkIHRoYXQgdGhlIGNvbnRyb2wgZG9tYWluIGlzIGludHJvZHVjZWQgaW1wbGljaXRs
eSBieQ0KeGVuc3RvcmVkLCBzbyBubyBYU19JTlRST0RVQ0UgY29tbWFuZCBpcyBuZWVkZWQg
YW5kIG5vIEBpbnRyb2R1Y2VEb21haW4gd2F0Y2gNCmlzIGJlaW5nIHNlbnQgZm9yIHRoZSBj
b250cm9sIGRvbWFpbi4NCg0KQWxsIGNvbXBvbmVudHMgaW50ZXJlc3RlZCBpbiB0aGUgQGlu
dHJvZHVjZURvbWFpbiB3YXRjaCBoYXZlIHRvIGZpbmQgb3V0IGZvcg0KdGhlbXNlbHZlcyB3
aGljaCBuZXcgZG9tYWluIGhhcyBhcHBlYXJlZCwgYXMgdGhlIHdhdGNoIGV2ZW50IGRvZXNu
J3QgY29udGFpbg0KdGhlIGRvbWlkIG9mIHRoZSBuZXcgZG9tYWluLg0KDQo+ICsNCj4gK1do
ZW4gdGhlIGBgWFNfSU5UUk9EVUNFYGAgY29tbWFuZCByZXR1cm5zIHN1Y2Nlc3NmdWxseSwg
dGhlIGZpbmFsIGFjdGlvbiB0aGUNCj4gK3Rvb2xzdGFjayBwZXJmb3JtcyBpcyB0byB1bnBh
dXNlIHRoZSBndWVzdCwgdXNpbmcgdGhlIGBgRE9NQ1RMX3VucGF1c2Vkb21haW5gYA0KPiAr
aHlwZXJjYWxsLiAgVGhpcyBkcm9wcyB0aGUgInBhdXNlIiByZWZlcmVuY2UgdGhlIGRvbWFp
biB3YXMgb3JpZ2luYWxseSBjcmVhdGVkDQo+ICt3aXRoLCBtZWFuaW5nIHRoYXQgdGhlIHZD
UFUocykgYXJlIGVsaWdpYmxlIGZvciBzY2hlZHVsaW5nIGFuZCB0aGUgZG9tYWluIHdpbGwN
Cj4gK3N0YXJ0IGV4ZWN1dGluZyBpdHMgZmlyc3QgaW5zdHJ1Y3Rpb24uDQo+ICsNCj4gKy4u
IG5vdGU6Og0KPiArDQo+ICsgICBJdCBpcyBjb21tb24gZm9yIHZDUFVzIG90aGVyIHRoYW4g
MCB0byBiZSBsZWZ0IGluIGFuIG9mZmxpbmUgc3RhdGUsIHRvIGJlDQo+ICsgICBzdGFydGVk
IGJ5IGFjdGlvbnMgd2l0aGluIHRoZSBWTS4NCj4gKw0KPiArVGVybWluYXRpb24NCj4gKy0t
LS0tLS0tLS0tDQo+ICsNCj4gK1RoZSBWTSBydW5zIGZvciBhIHBlcmlvZCBvZiB0aW1lLCBi
dXQgZXZlbnR1YWxseSBzdG9wcy4gIEl0IGNhbiBzdG9wIGZvciBhDQo+ICtudW1iZXIgb2Yg
cmVhc29ucywgaW5jbHVkaW5nOg0KPiArDQo+ICsgKiBEaXJlY3RseSBhdCB0aGUgZ3Vlc3Qg
a2VybmVsJ3MgcmVxdWVzdCwgdmlhIHRoZSBgYFNDSEVET1Bfc2h1dGRvd25gYA0KPiArICAg
aHlwZXJjYWxsLiAgVGhlIGh5cGVyY2FsbCBhbHNvIGluY2x1ZGVzIHRoZSByZWFzb24gZm9y
IHRoZSBzaHV0ZG93biwNCj4gKyAgIGUuZy4gYGBwb3dlcm9mZmBgLCBgYHJlYm9vdGBgIG9y
IGBgY3Jhc2hgYC4NCj4gKw0KPiArICogSW5kaXJlY3RseSBmcm9tIGNlcnRhaW4gc3RhdGVz
LiAgRS5nLiBleGVjdXRpbmcgYSBgYEhMVGBgIGluc3RydWN0aW9uIHdpdGgNCj4gKyAgIGlu
dGVycnVwdHMgZGlzYWJsZWQgaXMgaW50ZXJwcmV0ZWQgYXMgYSBzaHV0ZG93biByZXF1ZXN0
IGFzIGl0IGlzIGEgY29tbW9uDQo+ICsgICBjb2RlIHBhdHRlcm4gZm9yIGZhdGFsIGVycm9y
IGhhbmRsaW5nIHdoZW4gbm8gYmV0dGVyIG9wdGlvbnMgYXJlIGF2YWlsYWJsZS4NCj4gKw0K
PiArICogSW5kaXJlY3RseSBmcm9tIGZhdGFsIGV4Y2VwdGlvbnMuICBJbiBzb21lIHN0YXRl
cywgZXhlY3V0aW9uIGlzIHVuYWJsZSB0bw0KPiArICAgY29udGludWUsIGUuZy4gVHJpcGxl
IEZhdWx0IG9uIHg4Ni4NCj4gKw0KPiArICogRGlyZWN0bHkgZnJvbSB0aGUgZGV2aWNlIG1v
ZGVsLCB2aWEgdGhlIGBgRE1PUF9yZW1vdGVfc2h1dGRvd25gYCBoeXBlcmNhbGwuDQo+ICsg
ICBFLmcuIE9uIHg4NiwgdGhlIDB4Y2Y5IElPIHBvcnQgaXMgY29tbW9ubHkgdXNlZCB0byBw
ZXJmb3JtIHBsYXRmb3JtDQo+ICsgICBwb3dlcm9mZiwgcmVzZXQgb3Igc2xlZXAgdHJhbnNp
dGlvbnMuDQo+ICsNCj4gKyAqIERpcmVjdGx5IGZyb20gdGhlIHRvb2xzdGFjay4gIFRoZSB0
b29sc3RhY2sgaXMgY2FwYWJsZSBvZiBpbml0aWF0aW5nDQo+ICsgICBjbGVhbnVwIGRpcmVj
dGx5LCBlLmcuIGBgeGwgZGVzdHJveWBgLiAgVGhpcyBpcyB0eXBpY2FsbHkgYW4gYWRtaW5p
c3RyYXRpb24NCj4gKyAgIGFjdGlvbiBvZiBsYXN0IHJlc29ydCB0byBjbGVhbiB1cCBhIGRv
bWFpbiB3aGljaCBtYWxmdW5jdGlvbmVkIGJ1dCBub3QNCj4gKyAgIHRlcm1pbmF0ZWQgcHJv
cGVybHkuDQo+ICsNCj4gKyAqIERpcmVjdGx5IGZyb20gWGVuLiAgU29tZSBlcnJvciBoYW5k
bGluZyBlbmRzIHVwIHVzaW5nIGBgZG9tYWluX2NyYXNoKClgYA0KPiArICAgd2hlbiBYZW4g
ZG9lc24ndCB0aGluayBpdCBjYW4gc2FmZWx5IGNvbnRpbnVlIHJ1bm5pbmcgdGhlIFZNLg0K
PiArDQo+ICtXaGF0ZXZlciB0aGUgcmVhc29uIGZvciB0ZXJtaW5hdGlvbiwgWGVuIGVuZHMg
dXAgY2FsbGluZyBgYGRvbWFpbl9zaHV0ZG93bigpYGANCj4gK3RvIHNldCB0aGUgc2h1dGRv
d24gcmVhc29uIGFuZCBkZXNjaGVkdWxlIGFsbCB2Q1BVcy4gIFhlbiBhbHNvIGZpcmVzIHRo
ZQ0KPiArYGBWSVJRX0RPTV9FWENgYCBldmVudCBjaGFubmVsLCB3aGljaCBpcyBhIHNpZ25h
bCB0byBgYHhlbnN0b3JlZGBgLg0KPiArDQo+ICtVcG9uIHJlY2VpdmluZyBgYFZJUlFfRE9N
X0VYQ2BgLCBgYHhlbnN0b3JlZGBgIHJlLXNjYW5zIGFsbCBkb21haW5zIHVzaW5nIHRoZQ0K
PiArYGBTWVNDVExfZ2V0ZG9tYWluaW5mb2xpc3RgYCBoeXBlcmNhbGwuICBJZiBhbnkgZG9t
YWluIGhhcyBjaGFuZ2VkIHN0YXRlIGZyb20NCj4gK3J1bm5pbmcgdG8gc2h1dCBkb3duLCBg
YHhlbnN0b3JlZGBgIGZpcmVzIHRoZSBgYEByZWxlYXNlRG9tYWluYGAgd2F0Y2guICBUaGUN
Cj4gK2ZpcmluZyBvZiB0aGlzIHdhdGNoIGlzIHRoZSBzaWduYWwgdG8gYWxsIG90aGVyIGNv
bXBvbmVudHMgd2hpY2ggY2FyZSB0aGF0IGENCj4gK1ZNIGhhcyBzdG9wcGVkLg0KDQpUaGUg
c2FtZSBhcyBhYm92ZSBhcHBsaWVzOiBhbGwgY29tcG9uZW50cyByZWNlaXZpbmcgdGhlIEBy
ZWxlYXNlRG9tYWluIHdhdGNoDQpldmVudCBoYXZlIHRvIGZpbmQgb3V0IHRoZW1zZWx2ZXMg
d2hpY2ggZG9tYWluIGhhcyBzdG9wcGVkLg0KDQo+ICsNCj4gKy4uIG5vdGU6Og0KPiArDQo+
ICsgICBYZW4gZG9lcyBub3QgdHJlYXQgcmVib290IGRpZmZlcmVudGx5IHRvIHBvd2Vyb2Zm
OyBib3RoIHN0YXR1c2VzIGFyZQ0KPiArICAgZm9yd2FyZGVkIHRvIHRoZSB0b29sc3RhY2su
ICBJdCBpcyB1cCB0byB0aGUgdG9vbHN0YWNrIHRvIHJlc3RhcnQgdGhlIFZNLA0KPiArICAg
d2hpY2ggaXMgdHlwaWNhbGx5IGRvbmUgYnkgY29uc3RydWN0aW5nIGEgbmV3IGRvbWFpbi4N
Cj4gKw0KPiArLi4gbm90ZTo6DQo+ICsNCj4gKyAgIFNvbWUgc2h1dGRvd25zIG1heSBub3Qg
cmVzdWx0IGluIHRoZSBjbGVhbnVwIG9mIGEgZG9tYWluLiAgYGBzdXNwZW5kYGAgZm9yDQo+
ICsgICBleGFtcGxlIGNhbiBiZSB1c2VkIGZvciBzbmFwc2hvdHRpbmcsIGFuZCB0aGUgVk0g
cmVzdW1lcyBleGVjdXRpb24gaW4gdGhlDQo+ICsgICBzYW1lIGRvbWFpbi9kb21pZC4gIFRo
ZXJlZm9yZSwgYSBkb21haW4gY2FuIGN5Y2xlIHNldmVyYWwgdGltZXMgYmV0d2Vlbg0KPiAr
ICAgcnVubmluZyBhbmQgInNodXQgZG93biIgYmVmb3JlIG1vdmluZyBpbnRvIHRoZSBkZXN0
cnVjdGlvbiBwaGFzZS4NCj4gKw0KPiArRGVzdHJ1Y3Rpb24NCj4gKy0tLS0tLS0tLS0tDQo+
ICsNCj4gK1RoZSBkb21haW4gb2JqZWN0IGluIFhlbiBpcyByZWZlcmVuY2UgY291bnRlZCwg
YW5kIHN1cnZpdmVzIHVudGlsIGFsbA0KPiArcmVmZXJlbmNlcyBhcmUgZHJvcHBlZC4NCj4g
Kw0KPiArVGhlIGBgQHJlbGVhc2VEb21haW5gYCB3YXRjaCBpcyB0byBpbmZvcm0gYWxsIGVu
dGl0aWVzIHRoYXQgaG9sZCBhIHJlZmVyZW5jZQ0KPiArb24gdGhlIGRvbWFpbiB0byBjbGVh
biB1cC4gIFRoaXMgbWF5IGluY2x1ZGU6DQo+ICsNCj4gKyAqIFBhcmF2aXJ0dWFsIGRyaXZl
ciBiYWNrZW5kcyBoYXZpbmcgYSBncmFudCBtYXAgb2YgdGhlIHNoYXJlZCByaW5nIHdpdGgg
dGhlDQo+ICsgICBmcm9udGVuZC4NCj4gKyAqIEEgZGV2aWNlIG1vZGVsIHdpdGggYSBtYXAg
b2YgdGhlIElPUkVRIHBhZ2UocykuDQo+ICsNCj4gK1RoZSB0b29sc3RhY2sgYWxzbyBoYXMg
d29yayB0byBkbyBpbiByZXNwb25zZSB0byBgYEByZWxlYXNlRG9tYWluYGAuICBJdCBtdXN0
DQo+ICtpc3N1ZSB0aGUgYGBET01DVExfZGVzdHJveWRvbWFpbmBgIGh5cGVyY2FsbC4gIFRo
aXMgaHlwZXJjYWxsIGNhbiB0YWtlIG1pbnV0ZXMNCj4gK29mIHdhbGwtY2xvY2sgdGltZSB0
byBjb21wbGV0ZSBmb3IgbGFyZ2UgZG9tYWlucyBhcywgYW1vbmdzdCBvdGhlciB0aGluZ3Ms
IGl0DQo+ICtpcyBmcmVlaW5nIHRoZSBkb21haW4ncyBSQU0gYmFjayB0byB0aGUgc3lzdGVt
Lg0KPiArDQo+ICtUaGUgYWN0aW9ucyB0cmlnZ2VyZWQgYnkgdGhlIGBgQHJlbGVhc2VEb21h
aW5gYCB3YXRjaCBhcmUgYXN5bmNocm9ub3VzLiAgVGhlcmUNCj4gK2lzIG5vIGd1YXJhbnRl
ZSBhcyB0byB0aGUgb3JkZXIgaW4gd2hpY2ggYWN0aW9ucyBzdGFydCwgb3Igd2hpY2ggYWN0
aW9uIGlzIHRoZQ0KPiArZmluYWwgb25lIHRvIGNvbXBsZXRlLiAgSG93ZXZlciwgdGhlIHRv
b2xzdGFjayBjYW4gYWNoaWV2ZSBzb21lIG9yZGVyaW5nIGJ5DQo+ICtkZWxheWluZyB0aGUg
YGBET01DVExfZGVzdHJveWRvbWFpbmBgIGh5cGVyY2FsbCBpZiBuZWNlc3NhcnkuDQo+ICsN
Cj4gK0ZyZWVpbmcNCj4gKy0tLS0tLS0NCj4gKw0KPiArV2hlbiB0aGUgZmluYWwgcmVmZXJl
bmNlIG9uIHRoZSBkb21haW4gb2JqZWN0IGlzIGRyb3BwZWQsIFhlbiB3aWxsIHJlbW92ZSB0
aGUNCj4gK2RvbWFpbiBmcm9tIHRoZSBkb21saXN0LiAgVGhpcyBtZWFucyB0aGUgZG9taWQg
aXMgbm8gbG9uZ2VyIHZpc2libGUgaW4gWGVuLA0KPiArYW5kIG5vIGxvbmdlciBhYmxlIHRv
IGJlIHJlZmVyZW5jZWQgYnkgb3RoZXIgaHlwZXJjYWxscy4NCj4gKw0KPiArWGVuIHRoZW4g
c2NoZWR1bGVzIHRoZSBvYmplY3QgZm9yIGRlbGV0aW9uIGF0IHNvbWUgcG9pbnQgYWZ0ZXIg
YW55IGNvbmN1cnJlbnQNCj4gK2h5cGVyY2FsbHMgcmVmZXJlbmNpbmcgdGhlIGRvbWFpbiBo
YXZlIGNvbXBsZXRlZC4NCj4gKw0KPiArV2hlbiB0aGUgb2JqZWN0IGlzIGZpbmFsbHkgY2xl
YW5lZCB1cCwgWGVuIGZpcmVzIHRoZSBgYFZJUlFfRE9NX0VYQ2BgIGV2ZW50DQo+ICtjaGFu
bmVsIGFnYWluLCBjYXVzaW5nIGBgeGVuc3RvcmVkYGAgdG8gcmVzY2FuIGFuIG5vdGljZSB0
aGF0IHRoZSBkb21haW4gaGFzDQoNCnMvYW4vYW5kLw0KDQo+ICtjZWFzZWQgdG8gZXhpc3Qu
ICBJdCBmaXJlcyB0aGUgYGBAcmVsZWFzZURvbWFpbmBgIHdhdGNoIGEgc2Vjb25kIHRpbWUg
dG8NCj4gK3NpZ25hbCB0byBhbnkgY29tcG9uZW50cyB3aGljaCBjYXJlIHRoYXQgdGhlIGRv
bWFpbiBoYXMgZ29uZSBhd2F5Lg0KPiArDQo+ICtFLmcuIFRoZSBzZWNvbmQgYGBAcmVsZWFz
ZURvbWFpbmBgIGlzIGNvbW1vbmx5IHVzZWQgYnkgcGFyYXZpcnR1YWwgZHJpdmVyDQo+ICti
YWNrZW5kcyB0byBzaHV0IHRoZW1zZWx2ZXMgZG93bi4NCg0KVGhlcmUgaXMgbm8gZ3VhcmFu
dGVlIHRoYXQgQHJlbGVhc2VEb21haW4gd2lsbCBhbHdheXMgYmUgZmlyZWQgdHdpY2UgZm9y
IGENCmRvbWFpbiBjZWFzaW5nIHRvIGV4aXN0LCBhbmQgbXVsdGlwbGUgZG9tYWlucyBkaXNh
cHBlYXJpbmcgbWlnaHQgcmVzdWx0IGluDQpvbmx5IG9uZSBAcmVsZWFzZURvbWFpbiB3YXRj
aCBiZWluZyBmaXJlZC4gVGhpcyBtZWFucyB0aGF0IGFueSBjb21wb25lbnQgDQpyZWNlaXZp
bmcgdGhpcyB3YXRjaCBldmVudCBoYXZlIG5vdCBvbmx5IHRvIGZpbmQgb3V0IHRoZSBkb21p
ZChzKSBvZiB0aGUNCmRvbWFpbnMgY2hhbmdpbmcgc3RhdGUsIGJ1dCB3aGV0aGVyIHRoZXkg
aGF2ZSBiZWVuIHNodXR0aW5nIGRvd24gb25seSwgb3INCmFyZSBjb21wbGV0ZWx5IGdvbmUs
IHRvby4NCg0KPiArDQo+ICtBdCB0aGlzIHBvaW50LCB0aGUgdG9vbHN0YWNrIGNhbiByZXVz
ZSB0aGUgZG9taWQgZm9yIGEgbmV3IGRvbWFpbi4NCj4gZGlmZiAtLWdpdCBhL2RvY3MvaHlw
ZXJ2aXNvci1ndWlkZS9pbmRleC5yc3QgYi9kb2NzL2h5cGVydmlzb3ItZ3VpZGUvaW5kZXgu
cnN0DQo+IGluZGV4IGU0MzkzYjA2OTc1Yi4uYWY4OGJjZWY4MzEzIDEwMDY0NA0KPiAtLS0g
YS9kb2NzL2h5cGVydmlzb3ItZ3VpZGUvaW5kZXgucnN0DQo+ICsrKyBiL2RvY3MvaHlwZXJ2
aXNvci1ndWlkZS9pbmRleC5yc3QNCj4gQEAgLTYsNiArNiw3IEBAIEh5cGVydmlzb3IgZG9j
dW1lbnRhdGlvbg0KPiAgIC4uIHRvY3RyZWU6Og0KPiAgICAgIDptYXhkZXB0aDogMg0KPiAg
IA0KPiArICAgZG9taWQtbGlmZWN5Y2xlDQo+ICAgICAgY29kZS1jb3ZlcmFnZQ0KPiAgIA0K
PiAgICAgIHg4Ni9pbmRleA0KPiANCj4gYmFzZS1jb21taXQ6IGRjOWQ5YWE2MmRkZWIxNGFi
ZDU2NzI2OTBkMzA3ODk4MjlmNThmN2UNCj4gcHJlcmVxdWlzaXRlLXBhdGNoLWlkOiA4MzJi
ZGM5YTIzNTAwZDQyNmI0ZmUxMTIzN2FlN2Y2NjE0ZjIzNjljDQoNCg0KSnVlcmdlbg0K
--------------ucWOQ0zQutHlE09XrK5i5ouj
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-----

--------------ucWOQ0zQutHlE09XrK5i5ouj--

--------------yBAnfsK5fFjtz0ff9U4XBgeb--

--------------SuhlFKXtC17hZxKEPapCSiqn
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/Ey8FAmUuGpcFAwAAAAAACgkQsN6d1ii/Ey/U
aQf/eGiLiFlShsPdnu1ybkT1vCNEXHDSEh4/keZI4xhx8R6URMjNFkMaoyzbgZsQ3ui+xCQbd6VK
GH+FaxOdznb8sT55T6sxl84FiVaTNlZeN0DViD3ck5UxKypnzNaRjqBvcLAswVXWRm2XyQno7iiO
y34VZPsn9DJMR1H4oY60yqhALEIB5hkETGVJjXoZ/F8sOWuQ3ANx5ZXxp7xy0LTEM+kaYTtgYy1+
j4q8YWaYvJvoqkOlQF1e8YRj9UeykVMoTWQbDQRQ0XH1WRt9oBff9+ktfWcuqMbDB7aM3J3mW6di
iOYAyVHujhOCUloOxLn+0HzYMeIxPi2Uj7rtRFVxXw==
=yGGe
-----END PGP SIGNATURE-----

--------------SuhlFKXtC17hZxKEPapCSiqn--


From xen-devel-bounces@lists.xenproject.org Tue Oct 17 05:56:34 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 17 Oct 2023 05:56:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618036.961245 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsd3y-0003lA-TZ; Tue, 17 Oct 2023 05:56:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618036.961245; Tue, 17 Oct 2023 05:56: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 1qsd3y-0003l3-Pr; Tue, 17 Oct 2023 05:56:18 +0000
Received: by outflank-mailman (input) for mailman id 618036;
 Tue, 17 Oct 2023 05:56: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=qhkS=F7=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qsd3x-0003kh-Au
 for xen-devel@lists.xenproject.org; Tue, 17 Oct 2023 05:56:17 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com
 (mail-db3eur04on0602.outbound.protection.outlook.com
 [2a01:111:f400:fe0c::602])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id dfc48caf-6cb1-11ee-9b0e-b553b5be7939;
 Tue, 17 Oct 2023 07:56:11 +0200 (CEST)
Received: from DUZP191CA0030.EURP191.PROD.OUTLOOK.COM (2603:10a6:10:4f8::19)
 by DBBPR08MB5881.eurprd08.prod.outlook.com (2603:10a6:10:208::14) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.36; Tue, 17 Oct
 2023 05:56:05 +0000
Received: from DBAEUR03FT025.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:4f8:cafe::1b) by DUZP191CA0030.outlook.office365.com
 (2603:10a6:10:4f8::19) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.36 via Frontend
 Transport; Tue, 17 Oct 2023 05:56:05 +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.6907.20 via Frontend Transport; Tue, 17 Oct 2023 05:56:05 +0000
Received: ("Tessian outbound fdf44c93bd44:v211");
 Tue, 17 Oct 2023 05:56:05 +0000
Received: from 1ec46d503c1b.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 CC41F592-AF83-40BC-BC24-C1F21C46E806.1; 
 Tue, 17 Oct 2023 05:55:53 +0000
Received: from EUR03-DBA-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 1ec46d503c1b.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Tue, 17 Oct 2023 05:55:53 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by VE1PR08MB5677.eurprd08.prod.outlook.com (2603:10a6:800:1ab::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.36; Tue, 17 Oct
 2023 05:55:50 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41%4]) with mapi id 15.20.6886.034; Tue, 17 Oct 2023
 05:55: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: dfc48caf-6cb1-11ee-9b0e-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=UGlFlyPhBSk+mEKeA6Qqh/qZxQrBEuDjqmQUvjFIPrg=;
 b=X2UgUDRaWtI9emO/nDgxQ3LA66ITna4gSwFW3wEcimrh5S507JihwzgshGc8oTl8PvHUeH2H/TpcS7T9q8Ttu740EGPwgNpT/jyQqVroAcePGYCTUbwfWc4qfG8JBxhSxRmH+LtEHyo0YJ5Y4rbvz1an9AeHykSmNS6I3/aQEuA=
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: f9dc8dcd90e3cf9f
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=gbnj77DURGSTpkV6C4JjOBj/iYmLh23RKy70HJFomn7jyz5y+FdlbEy0hIU2LZVwEbEvDk6jdUZvChU9SGuZgHecm6f5ogdidZQzbMZe6NrF6KNoN7GzbPq1kVjr/FDQi9U7vIXgAWy4/IU+SxqVjNbzFMCgLbdcFWy84QQ/omFEgz0yAardjiYo1nkh7FNymFFTP8JyYU5IalZZSPjVxJcCfDvPVy6aIqrDBKvmgY9SXBF/enWhs3YAxdhSfxCh/TO3TFNSXq7pi9Qym9JAQNlwxm1V2ky/IiC+wBcYzJf4br4Xb7Q2E/NWrOyHRzlLDBvGsMkccKPsPvKUjmfVMg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=UGlFlyPhBSk+mEKeA6Qqh/qZxQrBEuDjqmQUvjFIPrg=;
 b=mKX1/hgnhMHpCNcIIdFTZ39jTHqlQs4ZZI5Z5V6uUHyRZJ6bYCb3RqdNZyqu/kMuqW9b6RjqpMsndnzSEzNkHG5r8aJBqRtG5Kg/DDxmuGa5m3rHDZ3OC0+iHTHIilUST+uEaa7x5ickeNuHz+tv6r++3YnM3pg30jsVxShunDC4k+PtGW7qSWheza3EblxQxEbdfWRcq4hQe1vSkBx9uplfV3C/sZ2pp3ZzNTKHc3GyxatECLybGnMQXEsydCEoHbLD29n3Oo+7STB2TGSvyNfSWR5DgUzjoBX+SUXCK3GvBHlTiccVzl7IvxUB5gh3okSZRdZax5PDT4fpn8Om6A==
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=UGlFlyPhBSk+mEKeA6Qqh/qZxQrBEuDjqmQUvjFIPrg=;
 b=X2UgUDRaWtI9emO/nDgxQ3LA66ITna4gSwFW3wEcimrh5S507JihwzgshGc8oTl8PvHUeH2H/TpcS7T9q8Ttu740EGPwgNpT/jyQqVroAcePGYCTUbwfWc4qfG8JBxhSxRmH+LtEHyo0YJ5Y4rbvz1an9AeHykSmNS6I3/aQEuA=
From: Henry Wang <Henry.Wang@arm.com>
To: Julien Grall <julien@xen.org>
CC: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>, Penny
 Zheng <Penny.Zheng@arm.com>, Stefano Stabellini <sstabellini@kernel.org>,
	Bertrand Marquis <Bertrand.Marquis@arm.com>, Volodymyr Babchuk
	<Volodymyr_Babchuk@epam.com>, Wei Chen <Wei.Chen@arm.com>
Subject: Re: [PATCH v7 8/8] xen/arm: mmu: move MMU specific P2M code to
 mmu/p2m.{c,h}
Thread-Topic: [PATCH v7 8/8] xen/arm: mmu: move MMU specific P2M code to
 mmu/p2m.{c,h}
Thread-Index: AQHZ+kyDxYKGSy7Hi0WFFm+WJG77tLBID9YAgAV4qIA=
Date: Tue, 17 Oct 2023 05:55:48 +0000
Message-ID: <038DAAA9-25B5-4DDD-8206-35C3BCF69360@arm.com>
References: <20231009010313.3668423-1-Henry.Wang@arm.com>
 <20231009010313.3668423-9-Henry.Wang@arm.com>
 <af6a376c-a224-45d7-9972-d69ee44239d6@xen.org>
In-Reply-To: <af6a376c-a224-45d7-9972-d69ee44239d6@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_|VE1PR08MB5677:EE_|DBAEUR03FT025:EE_|DBBPR08MB5881:EE_
X-MS-Office365-Filtering-Correlation-Id: 04b773ed-9dbb-436c-cf37-08dbced5c05c
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:
 iKq0q3S1QkZhbDOUeHMlzqE9chE1XUZR0bC41a9M05LmDkgGykZCQaiMmMNt6XwN85ToL6wIflo6QNfIvgCwMqCcxyJfdZ2jf50OSk47fB3luPEPGpJydlqIt6HutOotUyxrAdbVZ8FQyy12BXEAHtXLNDmv1eA5X447f1gSyt3bxoIO12DBcee+PX3oFXJ9L9UtZ5I52Vfxlkwynq4DILfePnS1hUoIrCu0WMNcFui/exxJpMjBqR3CeyJA7YXcqvChyDpX7W/bEFRpyo5Y82m+x+g8c7tcduWtR3Z7fNQ7BGW50vh98IQNjtOfdyV+DuB6rrFz99Hu1LpvcDrHF/VPE6gpjX4BowmbiH4JW6ouNI2zU3HVkX+WfSG0jk/xQ1U6p9u3QhDogsd/72gH4mb/MvtCKck63ANsGMr9Rcvo6Dmr+Pcx9KVvb/KWfPBctaufn8E92SkacsGpdttx7Z334yzVWJt+2rJsqosexbfyWOALdD8869ry1j4qjkucZt2SOkEy5PPm5ufN5s+2GwD584+W+ItBFaRojxTU3bzEjS/ckTWl1iciAb0fvtgjtAN8rbLoVm8YV8HPG4auFB7F70QpEE+w0lkpvUCttUKMrxLmDuINXJCnodB18AJ/p6hAbOHru+DrjJACaMOYcw==
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)(396003)(376002)(366004)(136003)(230922051799003)(451199024)(64100799003)(186009)(1800799009)(316002)(66556008)(66476007)(66946007)(54906003)(76116006)(91956017)(6916009)(66446008)(64756008)(38070700005)(4326008)(8936002)(8676002)(38100700002)(6512007)(53546011)(2616005)(6486002)(71200400001)(6506007)(83380400001)(122000001)(478600001)(33656002)(26005)(36756003)(2906002)(5660300002)(86362001)(41300700001)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <6C038786ADA5B645B6ECAE5E70F7FE34@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VE1PR08MB5677
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:
	7e884d9d-14ad-4c1a-d20d-08dbced5b684
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	zZqDVJ29tbLof9Ad/FJIr1oNrG97AFHLenlYMUM4fc8wtl1HyDqAowReT5FVGKHsDggc0EA4AnG8oe4F2wfSr+h726c1DnH6bMpbs2ANE6EooaBXaQdqkoKjlMEO7a4YNxUBn+LIDQ6ngkWYypfSfc0vOFc9ihJ6cVdgKp40E9kE4krsosK/qxigvhwrWRxt1rYGCqEETbUpEIi92W7vyRXBS6MqN+lEg2K9STFPQlnR4mg22lFHffeTR2JYMvC2alTOfl8gh/cCLoLMaPsTeJSItCxTWdrt/Kfbzf1pPv17piCNZZQtJ1RcgNxTAy3AmNcsyX9l42bLzpWo5picBNniE3pM7x0j3TGXSlhu8zXvpNxg2nSSzL+rrMNsERRFwRgYw1q2csDp5OxfFDRI/4CQNsolW8n4Jt4URKaUpCpW/NDctqX+3b+TL41b97YLV/yXM+slLt/7W1seI33bD/Yd9PoGpdQazQJl2UCCp/CaQHMDPShqgL/Nu8MzHm3teQujPoVtV4hAkTJepk+Jw65o5qkLj5i13wFY6KMqlD216VPM6psWtawodL9ejwwme9p5XOUV+EQrzeVjSVhUAhTK7BjTekZ0pynP5C24MUP6pljZMDtojTKT+rt0FEeE8j+ea7zInsnFUG/scSLrSdHKCTzqELIvOo87ynGn+itewL6kZqLCVWgahkrpEpEZn6OpKXSoXP/4YBtdd4l3Bm5w2pQsULB1QZ9BNspBHDttDG9vstXEi7cctwGd2Olk
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)(39860400002)(136003)(230922051799003)(186009)(1800799009)(82310400011)(451199024)(64100799003)(46966006)(40470700004)(36840700001)(47076005)(83380400001)(8676002)(8936002)(36860700001)(6506007)(70586007)(6486002)(70206006)(478600001)(336012)(54906003)(26005)(6512007)(2616005)(53546011)(2906002)(33656002)(5660300002)(36756003)(86362001)(356005)(82740400003)(6862004)(4326008)(316002)(81166007)(41300700001)(40480700001)(40460700003);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Oct 2023 05:56:05.3564
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 04b773ed-9dbb-436c-cf37-08dbced5c05c
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: DBBPR08MB5881

SGkgSnVsaWVuLA0KDQo+IE9uIE9jdCAxNCwgMjAyMywgYXQgMDI6MjIsIEp1bGllbiBHcmFsbCA8
anVsaWVuQHhlbi5vcmc+IHdyb3RlOg0KPiANCj4gSGkgSGVucnksDQo+IA0KPiBPbiAwOS8xMC8y
MDIzIDAyOjAzLCBIZW5yeSBXYW5nIHdyb3RlOg0KPj4gDQo+PiBkaWZmIC0tZ2l0IGEveGVuL2Fy
Y2gvYXJtL2luY2x1ZGUvYXNtL3AybS5oIGIveGVuL2FyY2gvYXJtL2luY2x1ZGUvYXNtL3AybS5o
DQo+PiBpbmRleCA5NDA0OTVkNDJiLi5hOTYyMmRhYzlhIDEwMDY0NA0KPj4gLS0tIGEveGVuL2Fy
Y2gvYXJtL2luY2x1ZGUvYXNtL3AybS5oDQo+PiArKysgYi94ZW4vYXJjaC9hcm0vaW5jbHVkZS9h
c20vcDJtLmgNCj4+IEBAIC0xOSw2ICsxOSwyMiBAQCBleHRlcm4gdW5zaWduZWQgaW50IHAybV9y
b290X2xldmVsOw0KPj4gICNkZWZpbmUgUDJNX1JPT1RfT1JERVIgICAgcDJtX3Jvb3Rfb3JkZXIN
Cj4gDQo+IFlvdSBzZWVtIHRvIHVzZSBQMk1fUk9PVF9PUkRFUiB0byBhbGxvY2F0ZSBwMm0tPnJv
b3QgaW4gYXJtL3AybS5jLiBIb3dldmVyLCBhcyBJIG1lbnRpb25lZCBiZWZvcmUsIEkgZG9uJ3Qg
dGhpbmsgdGhlIGRlZmludGlvbiBvZiBwMm0tPnJvb3QgaXMgc3VpdGFibGUgZm9yIHRoZSBNUFUu
IEkgdGhpbmsgdGhlIHR3byBmdW5jdGlvbnMgdXNpbmcgcDJtLT5yb290IHNob3VsZCBiZSBtb3Zl
ZCBpbiBtbXUvcDJtLmMgYW5kIFAyTV9ST09UX09SREVSIHNob3VsZCBiZSBtb3ZlZCBpbiBtbXUv
cDJtLmguDQoNCldoaWxlIHdvcmtpbmcgb24gdGhpcywgSSBub3RpY2VkIHRoYXQgaWYgd2UgbW92
ZSBwMm1fZmluYWxfdGVhcmRvd24oKSAob25lIG9mIHRoZSB0d28NCmZ1bmN0aW9ucyB5b3UgbWVu
dGlvbmVkIHRoYXQgY29uc3VtaW5nIHAybS0+cm9vdCksIHdlIGFsc28gbmVlZCB0byBtb3ZlIHRo
ZSBzdGF0aWMNCmZ1bmN0aW9uIHAybV9mcmVlX3ZtaWQoKS4gVGhpcyBzZWVtcyByZWFzb25hYmxl
IGFzIG9uIE1QVSB3ZSBvbmx5IGhhdmUgZG9tMGxlc3MNCmRvbVVzIHNvIHdlIGRvbuKAmXQgcmVh
bGx5IG5lZWQgdG8gZnJlZSB2bWlkLiBIb3dldmVyLCBpZiBwMm1fZnJlZV92bWlkKCkgaXMgbW92
ZWQgdG8NCm1tdS9wMm0uYywgd2UgaGF2ZSB0d28gY29uc3VtZXJzIG9mICJzdGF0aWMgc3Bpbmxv
Y2tfdCB2bWlkX2FsbG9jX2xvY2vigJ0gYW5kDQoic3RhdGljIHVuc2lnbmVkIGxvbmcgKnZtaWRf
bWFzayIuDQoNClNvIEkgYW0gd3JpdGluZyB0aGlzIGVtYWlsIGp1c3QgdG8gY29uZmlybSB0aGF0
IGFyZSB5b3UgZmluZSB3aXRoIGV4cG9zaW5nIHRoZXNlIHR3bw0KZ2xvYmFsIHZhcmlhYmxlcz8g
VGhhbmtzIQ0KDQpUaGUgb3RoZXIgY29tbWVudHMgc2VlbSBmaW5lIGFuZCBJ4oCZdmUgZml4ZWQg
YWxsIG9mIHRoZW0uDQoNCktpbmQgcmVnYXJkcywNCkhlbnJ5


From xen-devel-bounces@lists.xenproject.org Tue Oct 17 06:09:55 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 17 Oct 2023 06:09:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618040.961255 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsdH1-0005ys-28; Tue, 17 Oct 2023 06:09:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618040.961255; Tue, 17 Oct 2023 06: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 1qsdH0-0005yl-VL; Tue, 17 Oct 2023 06:09:46 +0000
Received: by outflank-mailman (input) for mailman id 618040;
 Tue, 17 Oct 2023 06:09: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=ibp0=F7=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qsdGz-0005yf-NJ
 for xen-devel@lists.xenproject.org; Tue, 17 Oct 2023 06:09:45 +0000
Received: from EUR03-AM7-obe.outbound.protection.outlook.com
 (mail-am7eur03on20617.outbound.protection.outlook.com
 [2a01:111:f400:7eaf::617])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id c45d78d2-6cb3-11ee-98d4-6d05b1d4d9a1;
 Tue, 17 Oct 2023 08:09:44 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM0PR04MB6818.eurprd04.prod.outlook.com (2603:10a6:208:186::16)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.36; Tue, 17 Oct
 2023 06:09:42 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%6]) with mapi id 15.20.6886.034; Tue, 17 Oct 2023
 06: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>
X-Inumbo-ID: c45d78d2-6cb3-11ee-98d4-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=REYGKUaCvwYzvL4fwpTAwYfjtdDkcB76iwqJLcM8GKVFPga8VF8ukNf2srLdXNOMxG5Hdn339+TLv4bVjrhYG2ESXXgzFt0MUEKJdLzUuz7mUDxRfxQoZUloOQmplkZSdS00JvApZ8lVqsRHH+R5rqEMXlCHpRNPoh06imT22SrmA6xIgWe3Mv1mXT74ke4rUEb+Mt2u37DH4b1fGt27RLKVshYXS8rLFbMonWm0jqeHoB6sLboY9pNzKsRAxLTT60rJpMQqueSrhiTTBQxpDpTFpWnQ/NflkDJgWIS8t8N2152z6eMm096Hepds8dJ2jjl50QemVjBJfp+SqC+pSw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=GpuBrt9CJvySavkfGfUcB7OReHxmvuzZluMFYX8FOus=;
 b=UlSDhihfDEDuBfj2pjr6ffKhKkI/GxBp5703rE4hkdEAQdQMxYqBZ5dejz+cTrZGsxf9A/6kM7attRzS4/sBHy357A4S6rpv1L8xkV6P0RTMof3nbCmGD+6MFcGrPy3FH1z9sTb0zyzyesGsz2GvtER4HEkINCRwYnVGocj8IoAxW8+N62oo/Z7boPgx43s7Fr3t70cGt6LTMxBGrqw0Sf7TlZIXuhuXx/RvpP3lKXz98Cq39N0CTe6JMqYG5EWZVjJvKLeidBtBZ6e45mNAG3dAlKm0L/LGJpZffyRVtp9Qkgtmt2oMoudMRMc1MYUAxHf/S8ye68T8qY9l1fGfCg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=GpuBrt9CJvySavkfGfUcB7OReHxmvuzZluMFYX8FOus=;
 b=W2rtaGrFkI2ByN0YmdAJdSJdfTHv6KpcgzySY1Knys2zJZVJNYBREtKZKFy8Rn18lE0Mg+r7Y8NXo++pU08hh4BBeE2kuycHTxaJM2P9CtVkARubwA8LphfCLgaAyyMgBuoq44FZhhdgG7xti9iNUg0wxVXP8nfOFsiFjzobu2ct5KIocc6z9QcmIcRuj4p+3uK5H33MhggYZw/VRxuLIqlfLqflAT24Zhd3jVe/9Mvo2ivuXNgGWTRXvE1m53PeUYZzpqR1nTF2g7p759sLGXvQka7rJZS2hbpwcyVytQjnLmNkdOPv0lidAWdjSNGsrXYX7V70ec6XNvJSwOxsAw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <8546127f-9945-0175-4e11-e187233e13cb@suse.com>
Date: Tue, 17 Oct 2023 08:09:39 +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][for-4.19 v2 8/8] xen/compat: use BUILD_BUG_ON in
 CHECK_SIZE macros
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.cooper3@citrix.com, roger.pau@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.1697123806.git.nicola.vetrini@bugseng.com>
 <6138e02935236afd51a5db98d3527e5e2602468d.1697123806.git.nicola.vetrini@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <6138e02935236afd51a5db98d3527e5e2602468d.1697123806.git.nicola.vetrini@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0249.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:af::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_|AM0PR04MB6818:EE_
X-MS-Office365-Filtering-Correlation-Id: 7eb74b89-6920-424c-9c9e-08dbced7a6bb
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	H+L5v7J24w62st0gRqbYa9+vTDdXLPAiebmbfwo8yHWFt/54CrwviTAIRdUPGv9Vu7ueNSftsZZypSaiqUXznD/XktRlfsP66fCcnOPspltTNGSNOysCgQQjZ2iW/J75ANSBXgXkhHUY86gOM12gsDJ/2RN9k0wQBPsYTH7Od6KWkTimZCfO1C9OtaALSnOEM5VEdcomW/UVU9g/VhPJ+6RTa1XzT1zutJ0lwSxeNIkbYMRyLBnQw6VknEUF7WndAuiLLhSAh0ixmiLqR/EX58LIJPm7idgcQ8P/92SrlqqXaB1vmCSm+jrIwetYtz7eYuuYsjoctTwD6dxyWRjVtRG/ElsRBrmuEe+4/RfqxQ5MIKd/505Fs804Cvfc9gj793jJrwKFwzEuf1O5O7geyoy65BXaNGFPXf5u6Uvomjp9KXXxa6W1ONKvjmdiWZa8eVU7RpFutZ3m4w+t4WsyBsF/Zfu+KEbEZWzrJof6Y+7vtnHQ+lADMJfMmXqbdHeX7b6Uh9W7X0HmOimaMckEChiSkesLb7MEIJY2jO4gatYaqpckLKtdFyOzK3/zCAwfJsvdEhlpQFsMoVGozmGMZXj06vFtFmIcs0ECwgdYl1CTB5EMXn21vlCRIToC6dikDqGGWNODVL/agO0kG+3bYA==
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)(366004)(136003)(376002)(230922051799003)(451199024)(64100799003)(1800799009)(186009)(6486002)(6512007)(6506007)(53546011)(478600001)(66946007)(2906002)(7416002)(36756003)(86362001)(5660300002)(31696002)(31686004)(41300700001)(316002)(54906003)(66476007)(66556008)(6916009)(8676002)(4326008)(8936002)(2616005)(38100700002)(26005)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?VXNoclF2aWRGS2hxaXd1VXFQazFvcUx1YlRGQmV3cFB1TndraCtkaTd1Z1VY?=
 =?utf-8?B?MDJ2ci9vOTRRVm00ZUdEOVQ0VWxqeWdPd045ZzM1R1pJdFNOWWxxNVZoS1FT?=
 =?utf-8?B?eGJ6QkYxTHZwaDdZSFdEMTlYdk5FVW1lV2ZTRE5UYmFZdnNwUTVkcHFaRHBa?=
 =?utf-8?B?SXBVSGZrajg3dkF0SWtLVjRsSE0rZm1xbHJoaHJGOW5uQXd4RHdzSDBzeEl4?=
 =?utf-8?B?YVZSaityNlRnU0pLdGMxK01jR3VjOVoxdDVvSy9TR0VRS3BGU1hyV0wyeGNY?=
 =?utf-8?B?L1QyK2dPa002VkMyUTZETk9Da3dwaFlPZGxFK29PUitHZ0lBa0o2OXhmY1VD?=
 =?utf-8?B?OVpXNGdCV005bFFkNjVQMjF0dlBOQWFTMmZNQjQ0ZTVxdldUSU95QTBzQnNU?=
 =?utf-8?B?MHFJNTRZamMvbDhJaWRRODUzcGsyTzdKZFNXaDdzVW5FVzRnblNBUnhMYXBX?=
 =?utf-8?B?RXFwSjBmd3hsYkFPOFp1Qms1Q2l4emNEd2pQSndPU2lITXE4VDA2enRpeXpJ?=
 =?utf-8?B?US8xTGV1bm9waG5KZzJQNHB2Y0Q0L1A4ejFSdEswMlQ0VFNSOWdXOVN4b0No?=
 =?utf-8?B?Qk1iMHEwbmJSc1RqZEFTNkZoTjhsYTREU25oYVVDM0RtZTRDMGhZeVVXRWlt?=
 =?utf-8?B?cUFXSStucm96bUU0VkRhZ2pZbnNzUlBYRU9pSG9YMHM4VTF3M0pRYWN6MGdC?=
 =?utf-8?B?SkdKSnFKaEFrc0ovdWpTczdHSFJTVktBQmFNcnVVNThXRWJDZXRLbTg2QmpX?=
 =?utf-8?B?TGJWQml6S3lsdHZqSHFWVWVRNUNuNHNnV0hZUGdTbzBITmJmeWZFekx4czlV?=
 =?utf-8?B?MXIwaWMrTFVucncwWm9iTHh6YUlVMVBGNktUUWZNZ25HTzBFc0NDMU9xWFpl?=
 =?utf-8?B?QkMyb1o5c09ZaVBlNzVTQVlVdDBLRUpudFR4dWt6Y3ByZ25ZNXdLNTFQNHk5?=
 =?utf-8?B?ay9iN1BGNzBremxqb2hKQUR6Ti9XWVZyc0NGSHhiRlNXTWxDZWYrMXBIUmJQ?=
 =?utf-8?B?U3plMU8rRVRUNDY0WmF4ekQ5KzJLUWdGTXpNUWsvNFJQUFVyaUZxbE9yVTZP?=
 =?utf-8?B?L1gvYWl4U2Z0OVZOaGsxSEhtSjlDeDIra0pmYmdwcmJKQThQcFJlSjg3MVZa?=
 =?utf-8?B?VGJuRmhwY2dDTjM2czlFaS9tOGs5Rm5sVnZiZGZrNlZhSnFNM0kvTk1OblAr?=
 =?utf-8?B?WFJDMG9JcStkMlJXYTM2VFlGOWREQWszbnpVdUpYaFoyTHJKY280VE5ZY085?=
 =?utf-8?B?R1F0ak5RdVcyQ0hla3pxRWhxYW5QTGRpWHFtOExTcFFFQXRxQWdENmlhU2Nw?=
 =?utf-8?B?bFhSUWhZcDBpN0ltY2ZGQ25aUEZHNjRqQkFOZzFXbzQ3WTJtajNwdFVObzYy?=
 =?utf-8?B?dGJtUG1QRjVLcnNaMG9jbEd4eHVVV3VHSXZTNEhoSU5ja1ZLcXlsc0FNNUph?=
 =?utf-8?B?aTZvWkhVeTJNK3lTcC90UzU3ZTFUUUh0VTJRWGtuOG5RbEtmNWl5QldUSjk2?=
 =?utf-8?B?MkVWaHJoUUxDSm1LV0tMZXE0VDd0WVc2Wkx2Y3VjQjdmU01lZEVxT0o2NW8x?=
 =?utf-8?B?dWkwZzBpUndJSDhwYlZCaG1sMlpvVUV3c0hjbmt1UjJWZkhoMk4wcHJ0RWdr?=
 =?utf-8?B?UTBEZWlHMm5YdXd2R1ZEamZMQ3UxOWd4VTI1RDByM0JhZWZobGZORzZ5Tmtn?=
 =?utf-8?B?dG5rb3dOcFVNR0tISm1JSkNsQUF0UElFMUwvenJsUmFlWVJaMW1tSnVud0Fa?=
 =?utf-8?B?YU9lVGoyMWVVS2ZiQWc4R0tnbmFuRHBoTjZScDkvc2tCMGU1Ukt5VkszWitS?=
 =?utf-8?B?bUkyZ3dXQ0pONGdiOWZHdk12Q2RSK3V0b3VZd2luUVc4QTk3OERpNkVETlIx?=
 =?utf-8?B?SE11Z0ZnMThna2RrS1hLYnBpNjAwUlNXTHc0RlU0QzVnVW55blRNSFZaSU9Z?=
 =?utf-8?B?SkR4b1hlWUxOKzFkMG5MQUxLRHIvSm9IM0FHVERWZFNHOWNucDd5N0ZDRFB0?=
 =?utf-8?B?SWhRSThDd2dMeVAzTXdHdG82eTNQU3NOVktkR1FvYUpFWWZTUVJUeWxTYjla?=
 =?utf-8?B?ZjNaaDVEazc0SkczK3E3T1U3bmZKejlxcE43TTlHdkh5ZFBta28vYzRGK05h?=
 =?utf-8?Q?4wibxdDwoFO67JvYf+1kKLQjr?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 7eb74b89-6920-424c-9c9e-08dbced7a6bb
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Oct 2023 06:09:41.5405
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: flYPCAkOgZ81KkVH2M/17CrVN4T7FxCgk+ZJMAYl1mrJx7bsueAzcnEmjvjF8+BXwcc97Tf7b0xpi1iFfOVG2Q==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR04MB6818

On 12.10.2023 17:28, Nicola Vetrini wrote:
> BUILD_BUG_ON is the preferred way to induce a build error
> upon statically determined incorrect conditions.
> 
> This also fixes a MISRA C:2012 Rule 10.1 violation in the
> previous formulation.
> 
> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>

Hmm, looking back it's indeed not clear why I didn't use BUILD_BUG_ON() right
away. Perhaps just to avoid inline functions when things can be done without.
And/or because originally the macros were intended to be usable in function
bodies, not (just) at file scope. However, ...

> --- a/xen/include/xen/compat.h
> +++ b/xen/include/xen/compat.h
> @@ -151,12 +151,20 @@ CHECK_NAME_(k, n, T)(k xen_ ## n *x, \
>      return x == c; \
>  }
>  
> -#define CHECK_SIZE(name) \
> -    typedef int CHECK_NAME(name, S)[1 - (sizeof(xen_ ## name ## _t) != \
> -                                         sizeof(compat_ ## name ## _t)) * 2]
> +#define CHECK_SIZE(name)                                  \
> +static inline void __maybe_unused CHECK_SIZE_##name(void) \
> +{                                                         \
> +    typedef int CHECK_NAME(name, S)[1];                   \

... what's this and ...

> +    BUILD_BUG_ON(sizeof(xen_ ## name ## _t) !=            \
> +                 sizeof(compat_ ## name ## _t));          \
> +}
>  #define CHECK_SIZE_(k, n) \
> -    typedef int CHECK_NAME_(k, n, S)[1 - (sizeof(k xen_ ## n) != \
> -                                          sizeof(k compat_ ## n)) * 2]
> +static inline void __maybe_unused CHECK_SIZE_##k_##n(void) \
> +{                                                          \
> +    typedef int CHECK_NAME_(k, n, S)[1];                   \

... this needed for? The types aren't used anywhere afaict.

Jan

> +    BUILD_BUG_ON(sizeof(k xen_ ## n) !=                    \
> +                 sizeof(k compat_ ## n));                  \
> +}
>  
>  #define CHECK_FIELD_COMMON(name, t, f) \
>  static inline int __maybe_unused name(xen_ ## t ## _t *x, compat_ ## t ## _t *c) \



From xen-devel-bounces@lists.xenproject.org Tue Oct 17 06:11:25 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 17 Oct 2023 06:11:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618044.961265 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsdIZ-0007Nn-Ds; Tue, 17 Oct 2023 06:11:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618044.961265; Tue, 17 Oct 2023 06:11: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 1qsdIZ-0007Ng-AW; Tue, 17 Oct 2023 06:11:23 +0000
Received: by outflank-mailman (input) for mailman id 618044;
 Tue, 17 Oct 2023 06:11: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=ibp0=F7=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qsdIX-0007Na-Qz
 for xen-devel@lists.xenproject.org; Tue, 17 Oct 2023 06:11:21 +0000
Received: from EUR03-AM7-obe.outbound.protection.outlook.com
 (mail-am7eur03on20602.outbound.protection.outlook.com
 [2a01:111:f400:7eaf::602])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id fdd3f854-6cb3-11ee-98d4-6d05b1d4d9a1;
 Tue, 17 Oct 2023 08:11:21 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM0PR04MB6818.eurprd04.prod.outlook.com (2603:10a6:208:186::16)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.36; Tue, 17 Oct
 2023 06:11:19 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%6]) with mapi id 15.20.6886.034; Tue, 17 Oct 2023
 06:11: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: fdd3f854-6cb3-11ee-98d4-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=cSLwQC2yRXwTBzQRwGQIhFY6W2TTgNfdRllLYDEK1foG7WHUv+w1F54+hf/S5G0akhocwWJ4gdbUAHvgLafxP3kp3vrSOT13wfKxvut5K+wg3julyn+I4aFREAin2fVHUIA7w4DIvNI6nbnfqIaMgz/XsEexG91OoW4fwjcFbQgJEK0lDUcYK2b9Cw1lakTy5bYPYJVqgpb4YWB7eq/vaHFnATkBTGoySKq9TqaEsycHCOqDz5icIRSnsTCaLpVi4WTe7uNIYKTH26a8ffH6fYrpyt/eBnsxcog6dJVgNJg7Su1r38PWcpAAWMTb44ulTsvX1PQXPgpiGAxRkQsfAQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=dgGMb4drhATjxD3GXvHHzlPpnVQdcaB+mfRxDUNkf1k=;
 b=evnyq3jU4CdzO5/kwCUR2sul90M+Lk25O7A4oPVSe2j2hxOUdaC87JyAF1eahOjsn6cxWufI6wAhGJfN9svOhZIqTK7CjIrfqjrdoP+W+CcfXdiTrq7CMPohkNz8Z4P591Ku/l1i6Ar0DDgrkARJ3S87nU1enrksIy9RprwdaaNozBjQZ2uF6QI025H3Ouhy2ESr1GjGmzrixLq6baN+Ns4OBYtuRP8sTLYWpwwYWWTHfeENJDCcX1ns33iJ4ZGrsmbA6TCTTklcVRow4QyQW6VSgWELINpP0EMFsAYq3g6P/clRj4L5aScbFZasGVNqRnvwlT//U9AOzBhmcrunmA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=dgGMb4drhATjxD3GXvHHzlPpnVQdcaB+mfRxDUNkf1k=;
 b=weLRWm/8L0rsjuyRZvA7pXJav9uieCVo/iwQW5ZeGVlBOkoLhQb8T4ySu9kUMrFJ9s4YkyCOf4Qht9qCFUwDBDqYGeI7OYw6Y9f/FP6/oYr0GfwnEaCzk66enKmuRmPBajeMWR11BwIJE/FKY/cufdktQ3oBFO+g8C/MrJ1tT7DgyLSvPyRtbS4yS25FRXDeROSs/rlrpB2Po7rwQX6SdfK1pjlPEqzJYy36wrkJmDiqTlphdKJvS+XncUdSGm5msg7xmTgfBWgivBSSBtnshUXnS/2LhfSS8B0fqq8pjml3Jq8VEi3/QaAOYtxx8br9G5I1i0dFC9wP/mHwkyeQRA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <c4f4f1fc-b20a-c08f-9782-9ce06f6dd868@suse.com>
Date: Tue, 17 Oct 2023 08:11:17 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: MISRA C:2012 D4.11 caution on staging
Content-Language: en-US
To: Julien Grall <julien@xen.org>, Nicola Vetrini <nicola.vetrini@bugseng.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 Xen-devel <xen-devel@lists.xenproject.org>, consulting@bugseng.com,
 Stefano Stabellini <sstabellini@kernel.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>, roger.pau@citrix.com,
 George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>
References: <7972c20f361126022fa97f6b51ca2d9c@bugseng.com>
 <61f04d4b-34d9-4fd1-a989-56b042b4f3d8@citrix.com>
 <baa73fa24385b39bc6e82c4ccb08bd13@bugseng.com>
 <26f09702-9340-41ae-afcc-808becb67876@citrix.com>
 <75a00257-c062-4d82-9b64-1707ce4566e6@xen.org>
 <594c09e1f8b2e1e8321c2cb862fcb378@bugseng.com>
 <5ddb6398-f2a3-4bcb-8808-bad653b6c3cd@xen.org>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <5ddb6398-f2a3-4bcb-8808-bad653b6c3cd@xen.org>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0177.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:9f::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_|AM0PR04MB6818:EE_
X-MS-Office365-Filtering-Correlation-Id: 2fb8767b-041a-414e-551e-08dbced7e13d
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	zWnhTK53BQQuMawzKGATY3dEdrTQ9WEGxlbE9UoMLWLoeiP+I+WnUgpY1wQdd0/O4OYDWRKrGBXs00jgvrQoK1iXZ4eaq3SHprLUV/uE7fbuR/m9XvNfNm97hKRG7jmKMY+z3Kcj2TR0bIBWM+kW41fRYmC1wm5q52OFAG7EPNQO1cHDYFtFzSACZ6K5xiSfiWXAWxqCXejzY2uRslx4+1OAu2qN598wVnKVho/EgSivOvYxnyqlB1n4ZzjrFG183lDZPJRFI4xH0gq3v2uMVqdPdeAdPhUE40wtpPlUcZTrbGhqsWSVYmJ64IGdF7bca8ELxQWFqt9UAv5qWBYHMmSwBYoGKJkY5VRkjCITnKdllXzvF5svQ96MlE1oVLZKqjPO1oQ2gUbvQhA0khJQQiJCNl+1NI4tdETu8V/GxUZqluSUVjAeEWBPzFQbLpuAlQWHDxtrvQWS1iCItUK7kFX63kZrl43+8XSIinWdUVipnNVGb9glHD6zbIIS4U3L3GuGKWLHyRAYEhzrz9gnXq67lvCdBa3H3XVizXaqkGYrppX1LO2W+hmpSJu1iHShYblMXLD6GkjxLRAUmMm3HiWmiw30B7ftmtdtWvdND1EXqfKWHdjofUSnfDX11SEemYUY3DNYYvpjTtnuYlPV4g==
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)(366004)(136003)(376002)(230922051799003)(451199024)(64100799003)(1800799009)(186009)(6486002)(110136005)(6512007)(6506007)(53546011)(478600001)(66946007)(2906002)(4744005)(7416002)(36756003)(86362001)(5660300002)(31696002)(31686004)(41300700001)(316002)(54906003)(66476007)(66556008)(8676002)(4326008)(8936002)(83380400001)(2616005)(38100700002)(26005)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?aHFhSFpHMnEwNWpGVi9EaU15cFRaVFRGSnVnUUhRWlc5M2I4VWcrWldiQWhP?=
 =?utf-8?B?UER1WjZZRFMxQmxTbFFjSUU1bzRuenZDWDNNcUx5WjdIMGxZa0VrM2FSdjFX?=
 =?utf-8?B?U2FKbHpobmpkU2QzZDRscDBpVXdQL0h5cXQxeGxrcWk2ODhKWlJoMG5UZjFV?=
 =?utf-8?B?eFlZNFpCRnpseWxWM29DQWxQMFQ3aFRHZHdqbHVtdEgvbmNqLzJkcHBFMkNh?=
 =?utf-8?B?L0d6RjA5VGU1ZFVLRTVGZzY1K0JPRWdXQjIxamNMSEVIWnZYMU1jN1FWSU5B?=
 =?utf-8?B?aEZjM1oyeTh6UmRwNmNvQytMcTBoWmJtTW1PWndUWE5ZSEpPMy9BUStDZUJx?=
 =?utf-8?B?OTBrazB6MHczbmYyWXlMOGtuYTl0ckFTSUlTMmQ4Z1FmQXFZMjFlOW8vQWNN?=
 =?utf-8?B?S3JKcUd3QTkwendZQUwxbjBteHJOQlZ2YmtsOGhsWEtiOGszYmxtSjl5SkN5?=
 =?utf-8?B?YjBJL3VJcUdCUElqV0p1UXZxOFJtc2FsUE54a3R0U2tzLzJBL1VLN0NuTDha?=
 =?utf-8?B?ZyttYlVscCtKMUsvRHhBWkI2NTFmK1lGb0k0Vm5YRVBSU0FaNTJCQlVXNVV4?=
 =?utf-8?B?ZThkWWVteTJrcDkrUUk3NGdjd1ZBU3BEQlZoYjQvWitGWDdXczAwNnlBWm1q?=
 =?utf-8?B?ODJKSmlHdXFkM1pWaWsrV2tqV0E5K2Vta2hNWDhDckl6MG9jRWIrTGYyWGF3?=
 =?utf-8?B?bFY5b3U4NVJvazI5RTh1STUydmZDYlBacDlQSGdCL2d5c3RhNENPTm52S3Rz?=
 =?utf-8?B?ajR2ZS93MVdwU0N6Qjh4bVRjNmg2NFJUb2Z0UXN3QzM4UHZYZDh4d0Nvc1Bt?=
 =?utf-8?B?U05jcCtrU1lMR2k0VkVTNURYTHFrQllUaHdvRVhzcno1ZXRHZnVtR3hjK1Vx?=
 =?utf-8?B?Z2JSb1R0c0NaU2pXS083YkNkaEJkWE0vdm5rM2pyYld3MVZ0clJPQjNJeWpK?=
 =?utf-8?B?ajg1ZmdZaTNSU3duaHhQRTRteUIvc1hYcDRmb3kwcXI4cEt3cEozUmE0bW1B?=
 =?utf-8?B?SEowOGRvY3pJQitwc1JibTBUcXdTMExaOFFIRGlZdVRmSkhTQUtlZ0cxWVM3?=
 =?utf-8?B?b2JwSVVpeWgxeU1DeE00NFF3RnQyUElEMWxwMkJpUGZ4T3psb3IrNnlIdThh?=
 =?utf-8?B?clpBOWhHSCtmZ1l2NFdGdTFlNmo1THB5cWFmYkVUa2cwSlFhOTUwaS9ONGt1?=
 =?utf-8?B?WE5PTU1GTkJMMVEzMzExSkhZM01MZThNVHRCWktzaFhiRlBDazFNSUVBMjdT?=
 =?utf-8?B?OEVQYjE2N2NwZEh1VVpDdEZQRWNRekZFV3owaHZEbGtpeER3ZlFZbjduUFJH?=
 =?utf-8?B?Q2VQNnNJc1psWW4raXhFV3RrOW1ldCs3YlNRNnVleUFmc1B5aFpKMElyWmN3?=
 =?utf-8?B?OUF6K0ZWY213L1l1ZEJGbnFiZ3h3YkdNQWdva0ZTUnA0TUppUUd5dmJRZmJ0?=
 =?utf-8?B?dXIyQXZCNTY2dzRTMEJiQ0taaHFLUDNVZTU3dTFIS0JkK2g5Tng2dkd0dVNE?=
 =?utf-8?B?Y0VlQ3NxVGhkdGNkQUxRY3A3ZjJLS0l3R1ZHNDRlOWtCajc1cDlWb2pJZExh?=
 =?utf-8?B?M0x6Y24zaDlCZnJyVWZ3QmhRNFViNE56NWZocWtxTTJDSDJaNHJyYy9GWU9o?=
 =?utf-8?B?TFRoSU5udVhRa1c4bUZySVY0OGxnSUZXU2VoY0JnVnpoN0pKalE3M1JFc1U3?=
 =?utf-8?B?aDdGR3prTDB6RnJxM1NGRGtlOXQyOXNWQXZ0Y2FKSVkzVm12VGswTU8zREtS?=
 =?utf-8?B?cGVFSXFTbDliNjRBOTdnTUhoWGlqdk5ab2JSZDFUWHV1WTE1M2VCWDdrdGgy?=
 =?utf-8?B?eWVMS3pMWjV1NVFCNHI5M1dEQXhFVWs2NkZ2OXhoYXdVK1BFclhZcUhVMCtT?=
 =?utf-8?B?Y2FseTh3N0RBVVM2WE9XZ2N4dGZvMnM5amE4dkVGNDlhbGJOdDRYN3FCV0Jz?=
 =?utf-8?B?WFhnbkl1QTdqbzFjOHE5WTFHU2dKYWZvU2dlK3o5OGNSQStDbm9sVWs4RHRk?=
 =?utf-8?B?S2JPallJcWl6ckovZk1GUWEvaUhoT0JNbUM5eXhYZGxPdmRlT3NETC9wQ1BR?=
 =?utf-8?B?RVpyK2JEblBQV1gzazMyT0xpZzdRckMwK0hwNnpBYVIycm54YlErNWI4ajVJ?=
 =?utf-8?Q?azF3x58a/gdfRXQefvN/CmrMs?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 2fb8767b-041a-414e-551e-08dbced7e13d
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Oct 2023 06:11:19.6495
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: VIT9oo8++HkdEL3FhvhNntU5wmlHj4JQgBpNA4J8NXmmy2r+wRSoZpIDykWpGPbkuc//Mo2aDSlzbuK+LNmzew==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR04MB6818

On 16.10.2023 20:06, Julien Grall wrote:
> Instead, it would be best to find a way to help Eclair to detect this is 
> not an issue and also improve readability. Would the following help Eclair?
> 
> diff --git a/xen/common/domain.c b/xen/common/domain.c
> index 30c227967345..ab16124eabd6 100644
> --- a/xen/common/domain.c
> +++ b/xen/common/domain.c
> @@ -671,6 +671,8 @@ struct domain *domain_create(domid_t domid,
> 
>       if ( !is_idle_domain(d) )
>       {
> +        ASSERT(config);
> +
>           watchdog_domain_init(d);
>           init_status |= INIT_watchdog;

Just to mention it: Even if right now it turned out to help, it wouldn't
once release builds are also checked.

Jan


From xen-devel-bounces@lists.xenproject.org Tue Oct 17 06:27:28 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 17 Oct 2023 06:27:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618049.961275 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsdXv-00027D-Rh; Tue, 17 Oct 2023 06:27:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618049.961275; Tue, 17 Oct 2023 06:27: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 1qsdXv-000276-OK; Tue, 17 Oct 2023 06:27:15 +0000
Received: by outflank-mailman (input) for mailman id 618049;
 Tue, 17 Oct 2023 06:27: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 1qsdXu-00026u-O8; Tue, 17 Oct 2023 06:27: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 1qsdXu-0002Ur-Ko; Tue, 17 Oct 2023 06:27: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 1qsdXu-0003wt-2Z; Tue, 17 Oct 2023 06:27:14 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qsdXt-00017W-Vr; Tue, 17 Oct 2023 06:27: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=GcsDO8KRXJ2BX3NCWaxpivIeCwmVJXl4dQZMFKDfeUQ=; b=lJ3ICkZ8BPuKNl0TST4ApUjm9X
	Oete0taS+FwpuowfLrYAkKpQzKKxaipcw1EjEtGXde+eoaB2V7HfgNwEDa+1BRrOFudk8I4mXKtZJ
	uHy1Q9HfvPzQrGqhtKqV33eJPgJT3Nx95RlwDignEm1KM6VKnna3OowtjE48QBdLbUEc=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183394-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 183394: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=a445e1a42ccf3cb9f70537c7cd80ece689bf4d9a
X-Osstest-Versions-That:
    ovmf=03d6569f70939d2a1653265367121212459a6b89
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 17 Oct 2023 06:27:13 +0000

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

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 a445e1a42ccf3cb9f70537c7cd80ece689bf4d9a
baseline version:
 ovmf                 03d6569f70939d2a1653265367121212459a6b89

Last test of basis   183390  2023-10-16 23:10:46 Z    0 days
Testing same since   183394  2023-10-17 03:11:04 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Giri Mudusuru <girim@apple.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
   03d6569f70..a445e1a42c  a445e1a42ccf3cb9f70537c7cd80ece689bf4d9a -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Tue Oct 17 06:34:42 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 17 Oct 2023 06:34:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618055.961284 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsdf3-0004K7-JE; Tue, 17 Oct 2023 06:34:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618055.961284; Tue, 17 Oct 2023 06:34: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 1qsdf3-0004K0-GO; Tue, 17 Oct 2023 06:34:37 +0000
Received: by outflank-mailman (input) for mailman id 618055;
 Tue, 17 Oct 2023 06: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=ibp0=F7=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qsdf2-0004Ju-IV
 for xen-devel@lists.xenproject.org; Tue, 17 Oct 2023 06:34:36 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur04on2088.outbound.protection.outlook.com [40.107.7.88])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 3c135a09-6cb7-11ee-9b0e-b553b5be7939;
 Tue, 17 Oct 2023 08:34:34 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM9PR04MB8778.eurprd04.prod.outlook.com (2603:10a6:20b:409::11)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.34; Tue, 17 Oct
 2023 06:34:04 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%6]) with mapi id 15.20.6886.034; Tue, 17 Oct 2023
 06:34: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: 3c135a09-6cb7-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=UPPkMaIRiaJUKAcvwYVcqwvTHF/8t9XZ3M1JWAopUcsEshKXPsuX2WFGQDIc7p9Fd43U1+dSlEK58SMClWDN3luaw90JrmWTwjyUy/vP6i8xNhLnrcOSHPAVsSmVBkewZmDRt9rcgSDt2FcZcoboNbDMD0sCDJvm9kHffCCdU2QoFpmlGTfE3uI4NI7v7cgCtpNUgBEoE6pYq58fw05PmxRnrkSH3ot/EyGzuIMsLncOlBxkhH+YNyj+1kNSlbHnxEaK4py2GwNWDT3EcPjg3EhrZBz3cw15fAZWvp1eAh6muK8E6BK1Cnl/9P30XMKu4RzTjiNh3oTei6ebYj1Wcg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=iXTp2KOb+EVk+kvfHWNRlP8ZRauJZo6Pmg9z/mTuBEE=;
 b=U/uvfMmFrEXhHQFw1VsZfTxvenvIti4xfzDX1R6Jm11LIqmy5fHmtk04d+YVGX8CZDWVq34TwyVyagGG2H0B2T0sCmTxdd8p6q/TTMT4U0T8POtD45xVdDf54+BUNhDQsVt6OhDcrDtKtnR3Agbl2f7R+B/gUzkgvw8L3USpP1FmAPzoFbGlbAppQH9B6pAWMFhWW9uYBvGszetJU9gSyPA0JibOWgJVihAsbsbKACsd/FzqPVHgJay4YfklSwmzE7plo3jYUboBkqfwNTr+eGmhB33y2PaPZVqVN4i9Q2jSGUIO2YjBv+SCctSRjhRU13OCvv3ihzamst05XqdH4Q==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=iXTp2KOb+EVk+kvfHWNRlP8ZRauJZo6Pmg9z/mTuBEE=;
 b=jwWbmV7zPzYOzSsAX4LEpWPw6mi75QwReSDpstw6Os5J9DiRCXMxzSaeiS1VLm2i51e9tImujFxN7sc8dwDe3P43PfSj7CYxKbKfEeSMQdN1BJxEfpmLxtX/+Ms6lOiCVh7hBHtfIOVLIFuP1//Abqme6JR2dYzh1t8KANs/7PRFgck8e81HT2JPAcTlkhNPmZ5AbbDaLxA3EYKg3IBIgFL646BBpfQGTQ1CCIqJR5fVUnll1+wSoHFSfLCvagS/8ylyNDA/MqTw9f4um8KEKU5MYU0/cByvuOWxbuIG2gTGdxpGKUvm4RIE9zrqWaLLDH/LHcY4pSDD3HVQWgpqWg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <90e657ad-4109-442e-2b26-52cd2372f582@suse.com>
Date: Tue, 17 Oct 2023 08:34:01 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH for-4.18] docs/sphinx: Lifecycle of a domid
Content-Language: en-US
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: George Dunlap <George.Dunlap@eu.citrix.com>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 Julien Grall <julien@xen.org>, =?UTF-8?Q?Roger_Pau_Monn=c3=a9?=
 <roger.pau@citrix.com>, Juergen Gross <jgross@suse.com>,
 Henry Wang <Henry.Wang@arm.com>, Xen-devel <xen-devel@lists.xenproject.org>
References: <20231016162450.1286178-1-andrew.cooper3@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20231016162450.1286178-1-andrew.cooper3@citrix.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_|AM9PR04MB8778:EE_
X-MS-Office365-Filtering-Correlation-Id: 0a361402-9db9-45a0-8528-08dbcedb0e7e
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:
	1cdecKVOavrhUed1f/yo+imJu/FtnlDwuiqNM+m7JrJm5mEDlZxhhn/CpIYHiGQt5n8MYpohAIOarqE0YyeBhz9zacn3wb+C2thfNk9d+ReYsyNB+sqYafFvwcOFg/c/3oNPFah/Qyw28xxLdeoKhjDVIoQjaAEtZRpxWtBtfuHVzsxvXn+tyX0rmOJJAmRvqVa75P011zGnL/b8bkIM22QEwKZ+rrBI+8ceyQ/eXpPbtW29g+WeoZnC9Ijym2PGrl0w5utso+OHIf1TuVVCnN9tqzfmC1UgEe+SzILdYM2HRagBHka2LkEr1tX/3Rga6s/HgEi5rG60YWZeq+ffcFGtFaHAIab30Gdes7+rZa65dzVPJQt9OowtCtmTi7pt+9Rzo13Yz7jDogBSHjA3Be7uIzEbd7zbvyN8UekWd1pP6WHIRYM6UmXylSzXT7osDHtaBoiCch22E98SQObqn/N4Zdo0Mlm+Cqh8reXTFxoynmnRCTsb8gV5ALCz90XCC/iWjXdiiQT1g1CkVNJT8rvpWARxDWwr+4XfeKpUN5CZYnhQqcjvFlzgTLINok2l6BkzxuD9kfeL9F+q2EjDSrIEbrqtN636+39c5oeRSUfFv4b7pfwTSihJTg4ovEC4AMwMEZQMw6lXYatkTPSl+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)(346002)(136003)(376002)(366004)(39860400002)(396003)(230922051799003)(451199024)(64100799003)(1800799009)(186009)(8936002)(41300700001)(4326008)(8676002)(5660300002)(2906002)(31696002)(36756003)(6486002)(86362001)(6512007)(478600001)(6666004)(38100700002)(83380400001)(6506007)(53546011)(316002)(54906003)(2616005)(66556008)(6916009)(31686004)(66946007)(66476007)(26005)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?ZFhkS0JENitXU2d3ODErUWJSaVpuM0ZJK2hJVDQ4ZkN2Zmo3Q1F4em5HRUdL?=
 =?utf-8?B?SkJiMGtoSDlIdGhPMlpQYWtUTXk2eVVvUDRxVlBsSGlURlRJZEpQVXNJdzhZ?=
 =?utf-8?B?NXpRUENHaVBZdUg1cm1zMDBtMnBTV3FEZnovek12WUlCNGdTWlo3NzNFSjJC?=
 =?utf-8?B?Z3ovT0ZKZXdjd1dNVlpXWTYxN2RRWmMxUWtNdDZNazJGVG4rMXU3Uko5TjR6?=
 =?utf-8?B?YlpHUDlFMGw5aDl1S0xZSXFpS2JYdzVZS2l0UkNqNk5tWmliTnhEeHJHelpz?=
 =?utf-8?B?YldMM1BlTFh2YWhqamlzTVdya2hxMm5mQW5lUkZFME1nWmg5bXNlVDNNM2gw?=
 =?utf-8?B?WlNSdVpSazRLejR4TERTeGJGSmh3M3ZXaXBEemhQVkRzenlISU9rRzMyNTBV?=
 =?utf-8?B?bjFSMWtOSm5jREhBYmM3TjVPYnhaSkx4WlVhcEFqdHVaTzk5eUV4NlVwSy9s?=
 =?utf-8?B?YzIycEhmYWFIZVhoYjA5ZEpuaVhmRWhMejk2NGNaaVlKOEpHRkhqZjNPQXYw?=
 =?utf-8?B?eGJXUUFrZlY3YlFjUzBOejROa2hWaGpUSU1oY09FWUNCOE5xVmgvdW9Zb0dZ?=
 =?utf-8?B?VXZFamczTC9ZYTcrM3BPejZXMmFlYnhhTk1wVnBqc2diL2ordkg3aVh1cEtZ?=
 =?utf-8?B?RG1CNjhtTTFRVVprVDQrbStScWxrRzNGR0pHT0FiN1RZYWo3K0hsTHYvdi9M?=
 =?utf-8?B?QXZwOVd1YXhUMGZPTGNmSkMyM0FBcVcyS0dvUUFPeHgzU2w5MUZwNzl0RFVj?=
 =?utf-8?B?Uy9DUW54MGhkMUswdkJudlEzVG1Ja0FkWGt3QkM0MnNxTDNQWWF3VG1jTTBT?=
 =?utf-8?B?aEFkckRaOGpVcGl3eklLV3dGOGhWQTdLcUd3SG44dkdpVjZtaXMyWDN5KzBx?=
 =?utf-8?B?eFZmUHcxUXVuVG5kM01pektpZ0dmTXNKTTd0L0JYTGNFQXpaVVFSQ2VLNEwr?=
 =?utf-8?B?U0pjRWdOTndEelZlR0tvWHFiQjdDRUhCN3ZHdnZoMmQ4QlpiRldwS2FpMGxN?=
 =?utf-8?B?WlRWWUVoR0lKc2JJTXRvZHpiOGY0MnJ6eExURkZZSVo2dzgrTndVSWxYUHlo?=
 =?utf-8?B?NTZ5aHFXa3FJUnlVMFNoS3JQL0JxbHFrMmRtcGxsengybTJNdW81WVJEekVT?=
 =?utf-8?B?K3l3MUJwK3grbzFUa1dZbTRCSytzWm0wWjhWOXlBT21mNEJsRkM4WlJvZ0FG?=
 =?utf-8?B?Q1g2YkdDYmo0UlZUSDlyTUtvbHFmaXB6SWtHNEpkYWkrNkszeGlvT052dndY?=
 =?utf-8?B?dEZTUTAzTG9SL0RYQlRDbGRjTktudHlMRnRickZvVFBYR1IvWFRUaWZZcm93?=
 =?utf-8?B?Ujd0VFBwYzJLUUhDMTVSOEhubllRY1JidlpFblp0S3E1NGtRc1daTnZDcEhx?=
 =?utf-8?B?dStRdDFndGlTOGJoS0pBNWdXRjJ3NmhpalVtSHBBZ2hrRXFrQjNHUDBXbWJH?=
 =?utf-8?B?Y1ZZOE43MVdycEJFTXp3N3IxeDlKdWhQSjc5dUdkNW5DSmE1dGdvVEhLdDAr?=
 =?utf-8?B?TmIzeUsrMWxVMzJkS05zdG94SXMyMjdSZmNFbGM2bUkreWVSZFYvVnRzdCty?=
 =?utf-8?B?V1FaZjMxUzJncFNIa1htRGlYWEtnSCszVXlNQ21FclphajVuT2lKNUJDaFVs?=
 =?utf-8?B?R3lWNUZvb1N6Rk5hMG9jcStMM1U3NHVCTDc2cCs3RnhOTE1TcUppd3JsdlJL?=
 =?utf-8?B?ZEh0UUJhQXV6Z3F3eFcyZnJMaHRjVCtjdWI3ZWtQbWMrUnJjL3pKMXVvcnRL?=
 =?utf-8?B?Rzlhbm14ZFJ0ZVJOQ3JOdjVEbVBzakp0NEhyRFRQenV5M2gzU29abWZHcFlI?=
 =?utf-8?B?anRBLzA0SDEwSTFaU0JtVm5MZVFsQ1lIYWp4SE5MV05CLzNhZ2ZxbnBXWUtP?=
 =?utf-8?B?SW1wVkF6RVAvRmZhTlgyU0p6TGNHWHRYMXllV0NEazYzWVBDdVRYT0hyS3hZ?=
 =?utf-8?B?bm5VT0VGblh2dXd6SHltUld6Z3VZNXg5Rk9La24xdE5vUk1WYUVzY2FWRlM0?=
 =?utf-8?B?Tk5mRmJwVFJUK2dKaURKQ0tUVVNBbmxHVGZPY2dtTTlDRlRCZ0xHRE1heElt?=
 =?utf-8?B?OWFXRG5YRUxxcGZIVjdUNW1WTnFISGtkV2hLSWczam9TdVU3Q3BGeTgyNnBh?=
 =?utf-8?Q?Nvb1S7BkK7BjraTrTjCtu3VA2?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 0a361402-9db9-45a0-8528-08dbcedb0e7e
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Oct 2023 06:34:04.1359
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 0SPWTT1k6QbOa50jBXoIObsUI6gdhIQYRRM7cv7sFvHMfZdVDjglEDMpVXwAq0P+CLqkbnM3xp6QHGR7griwEA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR04MB8778

On 16.10.2023 18:24, Andrew Cooper wrote:
> +Creation
> +--------
> +
> +Within Xen, the ``domain_create()`` function is used to allocate and perform
> +bare minimum construction of a domain.  The :term:`control domain` accesses
> +this functionality via the ``DOMCTL_createdomain`` hypercall.
> +
> +The final action that ``domain_create()`` performs before returning
> +successfully is to enter the new domain into the domlist.  This makes the
> +domain "visible" within Xen, allowing the new domid to be successfully
> +referenced by other hypercalls.
> +
> +At this point, the domain exists as far as Xen is concerned, but not usefully
> +as a VM yet.  The toolstack performs further construction activities;
> +allocating vCPUs, RAM, copying in the initial executable code, etc.  Domains
> +are automatically created with one "pause" reference count held, meaning that
> +it is not eligible for scheduling.

Nit: Afaict either "A domain is ..." or "... they are ...". One might also
add "... right away, i.e. until the tool stack asks for the pause count to
be decremented".

> +Termination
> +-----------
> +
> +The VM runs for a period of time, but eventually stops.  It can stop for a
> +number of reasons, including:
> +
> + * Directly at the guest kernel's request, via the ``SCHEDOP_shutdown``
> +   hypercall.  The hypercall also includes the reason for the shutdown,
> +   e.g. ``poweroff``, ``reboot`` or ``crash``.
> +
> + * Indirectly from certain states.  E.g. executing a ``HLT`` instruction with
> +   interrupts disabled is interpreted as a shutdown request as it is a common
> +   code pattern for fatal error handling when no better options are available.

HLT (note btw that this is x86 and HVM specific and hence may want mentioning
as such) is interpreted this way only if all other vCPU-s are also "down"
already.

> + * Indirectly from fatal exceptions.  In some states, execution is unable to
> +   continue, e.g. Triple Fault on x86.

Nit: This again is HVM specific.

> + * Directly from the device model, via the ``DMOP_remote_shutdown`` hypercall.
> +   E.g. On x86, the 0xcf9 IO port is commonly used to perform platform
> +   poweroff, reset or sleep transitions.
> +
> + * Directly from the toolstack.  The toolstack is capable of initiating
> +   cleanup directly, e.g. ``xl destroy``.  This is typically an administration
> +   action of last resort to clean up a domain which malfunctioned but not
> +   terminated properly.

Nit: You're the native speaker, but doesn't this want to be "... but did not
terminate ..."?

> +Destruction
> +-----------
> +
> +The domain object in Xen is reference counted, and survives until all
> +references are dropped.
> +
> +The ``@releaseDomain`` watch is to inform all entities that hold a reference
> +on the domain to clean up.  This may include:
> +
> + * Paravirtual driver backends having a grant map of the shared ring with the
> +   frontend.

Beyond the shared ring(s), other (data) pages may also still have mappings.

Jan


From xen-devel-bounces@lists.xenproject.org Tue Oct 17 06:47:19 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 17 Oct 2023 06:47:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618059.961295 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsdrA-0006bS-Ma; Tue, 17 Oct 2023 06:47:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618059.961295; Tue, 17 Oct 2023 06:47: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 1qsdrA-0006bL-JQ; Tue, 17 Oct 2023 06:47:08 +0000
Received: by outflank-mailman (input) for mailman id 618059;
 Tue, 17 Oct 2023 06:47: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=ibp0=F7=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qsdr9-0006bF-K4
 for xen-devel@lists.xenproject.org; Tue, 17 Oct 2023 06:47:07 +0000
Received: from EUR03-AM7-obe.outbound.protection.outlook.com
 (mail-am7eur03on20607.outbound.protection.outlook.com
 [2a01:111:f400:7eaf::607])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id fbf10a1a-6cb8-11ee-9b0e-b553b5be7939;
 Tue, 17 Oct 2023 08:47:05 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by VE1PR04MB7472.eurprd04.prod.outlook.com (2603:10a6:800:1b2::15)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.34; Tue, 17 Oct
 2023 06:46:59 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%6]) with mapi id 15.20.6886.034; Tue, 17 Oct 2023
 06:46: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: fbf10a1a-6cb8-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=dfPsCVvNTJsOU1e+HqGzYnPnxzW5w2Fv4O1kwf/mfUZWbsK0A7LPwxPKI03IBxtnJp8+KJJiS3Y0XfIvjkLD+toCxpuCfUgO7xHyNPjPjhqx/6dircCeaFHI7IGklHGlcFKE1enVuUxPjua3n8XRonHghPcy/lJMS8qjlSv5V0NkL1lNyA9ekAGKF4cQfb+Q3ldrTuIySZWYIRuDTcPhe6KnjTxe7PU8yEtXQ5yEWAd/7nMhnfYXy1qJjt+VoVtkp9Xl8o0fW98KOoxHGPYhT/i1GBifL+ULAtws0UK3jH0wZm08rfJL+nIarGwK5b6SgUIys6eqBpKGDEvJH83MdQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=Pzti7Z3D0W28wY0DXu9LtuFyp4ivGka5hAVb6E3toPY=;
 b=lfo5RpDhsgbqMdcV93yLya9KAlavEj4qp4kDwDvdroYVhdV+BMRmzQ44AmLiHZqFJXWAvtDP2IBnR8VTCtQP++Y+WgOdRSe+aA7akP0UnW7bpuO8QrBRlmETPZegvin56O6HBRDHCjzih3bqeIEpnK7pMcOAroLX8L/9inAxvEKEZVgq/tAgcagOvCJarDy7L1+tIaxvfdiHMdXkk08s0QcU+AzA+SdctlnTX5c+CQ0UNMBvxUkL+hL7jxaM6sp0eCzN/uOj+9l5vCeXrotIk7QyFDdvghs+Tjo+dsefgl6G3Yy198eMVUTQMaTEINNtlxYjDor//p6/BEz9evZwww==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=Pzti7Z3D0W28wY0DXu9LtuFyp4ivGka5hAVb6E3toPY=;
 b=aya4Q22l6h0rXcjW7dSkGx9kxHpt5VJnUjxiM2XvtltLyMUMInKlZyUBUvISuAYMBEp+p66JGLqtrXsSBSJIVB/N88rL4VYNHpx9rjBEb51qv//Cpw1LtEv/USwMyH2i1AmLBirw/uW3TsR7fqE4WtfLGeZYZ96g7YJ9k5M6aKhAioL9tiPVU1RoQ4M/FIrD4oQk/HrsB81fj1hFFq9jEydAnq+NeP3jLBcRQlvjFC+K+mKahEWOf0p/8y0QPn0o6MqOCSuQnB/R0QWV8fBp6s6UrDVFFqRHOqY80vCjZm5TAVQzihtdUnK6YvqIqyfuCg+h5ubxiYnodWUs2CUAMg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <e5e8e3cb-056b-063d-8f6f-d3f68bdf1750@suse.com>
Date: Tue, 17 Oct 2023 08:46: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 PATCH v2 1/7] xen: add declarations for variables where
 needed
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.cooper3@citrix.com, roger.pau@citrix.com,
 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>,
 xen-devel@lists.xenproject.org
References: <cover.1696833629.git.nicola.vetrini@bugseng.com>
 <002d58b1d15619a8c4b2ec6c2b5f20960ed0a428.1696833629.git.nicola.vetrini@bugseng.com>
 <2023f16b-46fb-2a19-9620-7872b3029b5f@suse.com>
 <f89fc0b2814cc4b84abc431c0355b348@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <f89fc0b2814cc4b84abc431c0355b348@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR3P281CA0123.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:94::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_|VE1PR04MB7472:EE_
X-MS-Office365-Filtering-Correlation-Id: c9a15997-6dce-4504-244c-08dbcedcdc51
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	EQvlFU+2mn6nBtxN6eLsZkd4t/kqcl8lwFn22eo9eUmVwCYt3lvVo+3NrKO1VT9idWvRn6o0i0LswHcPHeTwPuWJtAA48Q9kNIFNPHxkaTbWNAChUP/q90XMPDFW1aH65RPll1LhMj1LlcynVNLdM7Hj11bA8i02nsVAHtj/CdXLwYnrjL0Y9Kr1AmkGqtxMARN3Y1wfoX14qp9IVVuC/W0glrPREzaxwxrRIUasqLzxCyxcheUHhbRwIWY2RlNbzf1rq8jN6vrAdLePWeTl3zF0M9y2xN2yrAc5gITNta+OBnBAO5vQUrhdiKdWTbDA2cToW+KPgUGKoeMIdLVQbsfosnd1raaNBOQj1y8bmyESd2q/PV2SW7T2Cg35g5k/kK9xnYsPU3VlJgXQVyptu/KQsFqrKDRdP5SA9gH0l63IKgundnuVWJbrqzFoXajqsNO6e4UmHSbJkT2ZFzs56K1kSwsTRNu4v7drakyXKowjvbMTAH+7xX84utI1fEH8sWRdjU6PJ09ITEeTeDtzEZeYC9ElNTRaOTvJ5i/7DUd+LG2O1bGOT2Xw13HQTn3xtgUMvk1INe1U60bmyQZvWrWGaKnJL0RFuvReMGbN4snMWO+rOoONx6z1jEzCOziibFQxecutVhLJMiOXja9w8g==
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)(230922051799003)(186009)(64100799003)(1800799009)(451199024)(6916009)(316002)(66946007)(54906003)(66556008)(36756003)(53546011)(83380400001)(6512007)(38100700002)(86362001)(31696002)(2616005)(478600001)(6486002)(6666004)(6506007)(66476007)(41300700001)(5660300002)(26005)(31686004)(2906002)(7416002)(8676002)(4326008)(8936002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?NEE5RmtJRUtkYlRLYWpmT2piczJOVHRXT05iRVFpbWlkK0pGUWVFb3RsMXRU?=
 =?utf-8?B?Ylk0Q3RMMnJCNUpSZk56WnB1ZWtyNmdmbUZtNVBRbExNdXlBUlpjT3lVSTNP?=
 =?utf-8?B?K0tna2pzZzNkUDJIV0JZSUd5V1lVaVZ4Nzd5VUcyRFFiYUhMa0FpSXNKaWxm?=
 =?utf-8?B?TVZ1cy92MEs0VEtJS3BtaVY4L1NFdDlhWUdFQ2JrR2RKMWtKUDMwbzlzRGpH?=
 =?utf-8?B?UG9jN1VONXNxNTh2SWdWQndHUGQ3ZmpENkJSZ0V1NXYwL1hMSzJvS0RYMnV6?=
 =?utf-8?B?aE90WVRLeGRUK1Zody96MFdTOHZ6OUpObXMvRGk3eVpPRVhFdXRkSktSaVpl?=
 =?utf-8?B?dkYxOG5JazNBVyttK3ZnOVlaVndYTGNFT1o2L3FVU0xuTlZZSUExK0dHZ3Yr?=
 =?utf-8?B?TENkYk52c1ZndHVWSGk0bFhlb0tkVytLT0ZweWdhd3NzTVNUeTc5eGs1WnE1?=
 =?utf-8?B?d21pWDF4NE1WR0JwWVFuT0pyeFc1aExyY0hyU05BQnNWL3NYd1RQd2oxN0I5?=
 =?utf-8?B?WjVhaWM0UThOR013K1g0RkErSUVkdzRPVE4yZXFRY2EzdkVCbWplajU3ZEtY?=
 =?utf-8?B?R3BQRndJZ0pwcy9xV1lXYkNpckNBbVRyWEJBTGpNZGFCSUZvdVRyNjFRcHM2?=
 =?utf-8?B?bytvUk11VUV0dGNDNGFuanZWbFNVTEdDWFFEWWl6OTBmd09SWTBDVVZOTUNS?=
 =?utf-8?B?cUVLTFp5V3cxdUNtK2M2QVQxMkVvMW11bFpNYjdsZkhTbitWcDF4ZUNkSTNX?=
 =?utf-8?B?MU9waFlNZWdHdG0zb1ZqOEF5b3IwMmxaQ1A4WVlEL0MzMkV3RVgraE1wWFJR?=
 =?utf-8?B?OFhMVkpZa1g5a3JEWlBUSjNaMmFBSCtiZnA1UWNuMzByTGlNLzVzMytCZEV3?=
 =?utf-8?B?UlF2bzJCeXJ3NHgrZktwamJmOHJwNkZGK1JRTzNSZnZUYkIvLzcyVFBRZms2?=
 =?utf-8?B?eUJycWRRQ1lQYmlMSHVpU2gzenZFUVRnZklvZnZ4WVJMMXprSzVla3F0R3M4?=
 =?utf-8?B?Z21yMmpJV0xiMnpPYndVWFZZY290b3o5dmJCOHBmWUJPbHN3WkpSY0FBOUQr?=
 =?utf-8?B?UThkK3lDUE15ZUtkU1VaZjd3VmJmZlVmd0xHSE5ISmswbW05eWdNdFlydnhF?=
 =?utf-8?B?aDZSNlhLa2gwRFV0S2wyTVZLOW5nSXUzRkx4T2ROcXltY2cxY1VZMk53YUtX?=
 =?utf-8?B?NWZTVmRzOTNWQ0ZST1Q4S3ZhYUwwbTZFTEVtQTVGZ1Q4cDhBMG1oKzY4bVJv?=
 =?utf-8?B?azZNMkRKUHlSRjFOSE1kcm4wMXNNT3U3VFB2OE9qTVBEL0VsK1RjSW5ZeDZF?=
 =?utf-8?B?eGQxYkFyQkV1SDFWQUpSTFAzOU1JODRHWVhrS2hiSFFtWGdqZHZnZlB2U0h2?=
 =?utf-8?B?RWRubkJtWXVmN0hNL1A2eVRmSlpWVG9tV1NWekRpMlMyUDQwbjdTVWZSWFQw?=
 =?utf-8?B?d09CUFExL2ZmM1pVNEdpME1Lc0p3bEFza29TZWNNUDBtbWUwV2lsREdGeE43?=
 =?utf-8?B?VU92OTRibytlcVFGREEyTmpkZTAxYlFTUjNrWGlPbHVUa0x4VVV1MUpNeU5X?=
 =?utf-8?B?TXNNRWxoQlhHajc5VzNGWVlKR2JTTzg5UDhDWGVmUWVKVzB0aVlQb3lBaVZ6?=
 =?utf-8?B?ai9vN0hKbytPM1N0Vk1qS1AvOFJGNHhaNGt3YWJlTGRMcXZQSW5yOXhvWTFW?=
 =?utf-8?B?cFFuUkZHTkRMNHFXSUc5dkM0cnA3RFl2aU9PaEZCalBOQjI1UUZ5OEpYMzJi?=
 =?utf-8?B?SEY2UGdyMzZkTG4yQjd3d1hPaDhVa3BsWjRjNFhyTnpKUjYwNkxhU3V1bS8v?=
 =?utf-8?B?ZXkvalcwbzJ3UTU1eE1WYUFidDhPeUc3YVptZk1qdmhrRWc4NkVudS8rdWF2?=
 =?utf-8?B?RDgwaUs5UTZvRGFpVWo5eElzaFdrYjZnZmFHQ1hrY05ldnJBbG5IU090MjJG?=
 =?utf-8?B?WHIyK2l0OFpsRXl6YjdqT3g1d0lMdkNHcFpBV3R3RFlOdi9JS2dsSGtCZ0xY?=
 =?utf-8?B?S21FWFlwODVSWmVWVjJsVVFpdHI2dVpvSG9IcG00SzAvWmoyMGtUR1RQL3Jp?=
 =?utf-8?B?aXI2NG5zb1FRd0hBQTlZS2VDajVoMUQ4ODhDSkhLbmJZQ1R3NXgzYUJyemV1?=
 =?utf-8?Q?gui/6MpsACy2tx5yl+RSK1abv?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: c9a15997-6dce-4504-244c-08dbcedcdc51
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Oct 2023 06:46:59.1187
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 8FFMsyenEN085FSoxTIBkbmnCEM2ApACd2CiQUOZANMM7j5BlLAVEMTeq3ksOnofRE1iKh4GtJ1Mz2PzS4XPVA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VE1PR04MB7472

On 16.10.2023 19:05, Nicola Vetrini wrote:
> On 16/10/2023 16:50, Jan Beulich wrote:
>> On 09.10.2023 08:54, Nicola Vetrini wrote:
>>> --- a/xen/arch/x86/include/asm/compat.h
>>> +++ b/xen/arch/x86/include/asm/compat.h
>>> @@ -13,6 +13,7 @@ typedef unsigned long full_ptr_t;
>>>
>>>  struct domain;
>>>  #ifdef CONFIG_PV32
>>> +extern unsigned long cr4_pv32_mask;
>>
>> Why is this needed? Didn't we say declarations aren't needed when the
>> only consumer is assembly code? (I also wonder how this header is any
>> more "appropriate" - see the changelog entry - than about any other
>> one.)
>>
> 
> It was pointed out to me [1] that compat.h might be more appropriate 
> than setup.h
> (probably because the asm code referencing it is under x86_64/compat).

Hmm. I agree setup.h isn't appropriate.

> Further, while it's true that this variable is used in asm, it's also 
> used in x86/setup.c, hence
> the need for a declaration.

But that's the file where the variable is defined. IOW no risk of
definition and (non-existing) declaration going out of sync.

>>> --- a/xen/arch/x86/include/asm/setup.h
>>> +++ b/xen/arch/x86/include/asm/setup.h
>>> @@ -13,6 +13,7 @@ extern char __2M_rwdata_start[], __2M_rwdata_end[];
>>>  extern unsigned long xenheap_initial_phys_start;
>>>  extern uint64_t boot_tsc_stamp;
>>>
>>> +extern char cpu0_stack[STACK_SIZE];
>>
>> Same question here.
>>
> 
> This one is a bit more nuanced (I wouldn't oppose deviating this), but 
> there is indeed one use.

Still same here then.

>>> --- a/xen/common/symbols.c
>>> +++ b/xen/common/symbols.c
>>> @@ -21,23 +21,6 @@
>>>  #include <xen/guest_access.h>
>>>  #include <xen/errno.h>
>>>
>>> -#ifdef SYMBOLS_ORIGIN
>>> -extern const unsigned int symbols_offsets[];
>>> -#define symbols_address(n) (SYMBOLS_ORIGIN + symbols_offsets[n])
>>> -#else
>>> -extern const unsigned long symbols_addresses[];
>>> -#define symbols_address(n) symbols_addresses[n]
>>> -#endif
>>> -extern const unsigned int symbols_num_syms;
>>> -extern const u8 symbols_names[];
>>> -
>>> -extern const struct symbol_offset symbols_sorted_offsets[];
>>> -
>>> -extern const u8 symbols_token_table[];
>>> -extern const u16 symbols_token_index[];
>>> -
>>> -extern const unsigned int symbols_markers[];
>>> -
>>>  /* expand a compressed symbol data into the resulting uncompressed 
>>> string,
>>>     given the offset to where the symbol is in the compressed stream 
>>> */
>>>  static unsigned int symbols_expand_symbol(unsigned int off, char 
>>> *result)
>>> --- a/xen/include/xen/symbols.h
>>> +++ b/xen/include/xen/symbols.h
>>> @@ -33,4 +33,22 @@ struct symbol_offset {
>>>      uint32_t stream; /* .. in the compressed stream.*/
>>>      uint32_t addr;   /* .. and in the fixed size address array. */
>>>  };
>>> +
>>> +#ifdef SYMBOLS_ORIGIN
>>> +extern const unsigned int symbols_offsets[];
>>> +#define symbols_address(n) (SYMBOLS_ORIGIN + symbols_offsets[n])
>>> +#else
>>> +extern const unsigned long symbols_addresses[];
>>> +#define symbols_address(n) symbols_addresses[n]
>>> +#endif
>>> +extern const unsigned int symbols_num_syms;
>>> +extern const u8 symbols_names[];
>>> +
>>> +extern const struct symbol_offset symbols_sorted_offsets[];
>>> +
>>> +extern const u8 symbols_token_table[];
>>> +extern const u16 symbols_token_index[];
>>> +
>>> +extern const unsigned int symbols_markers[];
>>> +
>>>  #endif /*_XEN_SYMBOLS_H*/
>>
>> This change is even less clear to me: The producer is assembly code,
>> and the consumer already had appropriate declarations. Why would we
>> want to increase the scope of their visibility?
> 
> The missing decls are about common/symbols-dummy.c. Xen can choose that 
> this file does
> not need to conform (to this guideline or any guideline), in which case 
> this change can be dropped.

Since symbols-dummy.c isn't used in the final binary, I'd prefer that.
Otherwise imo a new private header used by just the two files would want
introducing, to keep exposure limited.

Jan


From xen-devel-bounces@lists.xenproject.org Tue Oct 17 06:51:40 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 17 Oct 2023 06:51:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618064.961305 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsdvU-00087L-Bn; Tue, 17 Oct 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 618064.961305; Tue, 17 Oct 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 1qsdvU-00087E-7w; Tue, 17 Oct 2023 06:51:36 +0000
Received: by outflank-mailman (input) for mailman id 618064;
 Tue, 17 Oct 2023 06:51: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=ibp0=F7=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qsdvS-000878-SN
 for xen-devel@lists.xenproject.org; Tue, 17 Oct 2023 06:51:34 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur04on0603.outbound.protection.outlook.com
 [2a01:111:f400:fe0e::603])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 9b53826e-6cb9-11ee-9b0e-b553b5be7939;
 Tue, 17 Oct 2023 08:51:32 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DB8PR04MB6795.eurprd04.prod.outlook.com (2603:10a6:10:fa::15) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.36; Tue, 17 Oct
 2023 06:51:30 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%6]) with mapi id 15.20.6886.034; Tue, 17 Oct 2023
 06:51: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: 9b53826e-6cb9-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=cESuwN5Yw4ZlFZdaED9+EvMNn2JAYK8A4mnhC8yrKYYQ+PJoOu2spupe02I7jcPuLHZ1adHyXsRMPpdw7KA6KxjcchxPfuPY9pWxPlxyHDUvKTFpP5pe46ECvHevKFOJIPeItShoJ5K9oAE2K3ozy/8fs+zO9joYgMto0Ptgio8dBbOyzqJ8B3iso3Wg83MIQPS57pVdFYaCsCsiU5Vi9OSgJJyOs4cFZCitS5UpgG7pGUTMvgm0SAp5v1ETHQhL0y1WbP0DKUnK6kdN1xAKGWquOuljk3wS5eI/L7i0QBw1R06NalXxDhffDJy9bFCATJsRLq26wPR/DqecdPZDAw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=Ry6UbNeoxsnonY9lAwDQb65Wy4a9o21j6VWdkv7ewyA=;
 b=E2vmo78k+NkjS4oY0FThVQ/j9CI560lKkuzvsmmVnhB1SfjakgNSh4Tq5XspDwhxI/P1XPaMK2P/p+LaQZfHfV6CnwqAI97qb87VOC/gMrLS47MFNOCzOoUY/hm+tQGAAtI1EldQFIArD/94fuwVImjNvA+zLQ8+HuBZoPajYKf9T6KtTXTab81KYyr31Jr8cOJebbhxAZEBKhNRSIYQaDTSMYg0OSznUOpN62NJ6ep512WbMtJ7Cx4VWwIRfwUjGqPgAKmZWJsqTsEF1VEA7UGOnOqbLu1XKNjf1760jopa+10VLxmtFrHz3pSKyvlfYVKd3r+Rxir6oedKSe3mew==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=Ry6UbNeoxsnonY9lAwDQb65Wy4a9o21j6VWdkv7ewyA=;
 b=AQ7+PeBSRGf1gtyNwsripWeYNil9L1zjScaEftA5aQZreuijzRXUIaN3pk3+UNpiWRRLhCN2RkO3aVkJFb106vnRNujd/K4nwo7O6StOrST98WmOuuKRSO9ztJwp6zM84qe6DSFkiJEWP5imaM9jvxYpMBmMrdacMUiVTAcEJiiPNqpdGxWXVJguwdfLjUiPXDX2019tNK66QiYLQtHAYX/jWH6oe1EJUyF2B0QuUfkI81lGK203TXNFUdrzIHgSHjWVLRIEe4ZbLYj0cODl/kcC7zMLg4NJWjqW9gX1UiRmNNrzWmHAJSazNm3v7OB1gOhEyPvazSvVDXjgqpBweg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <b2048df4-ec76-f91f-1f17-fcd45f295281@suse.com>
Date: Tue, 17 Oct 2023 08: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: [XEN PATCH][for-4.19 v2 1/1] xen: introduce a deviation for Rule
 11.9
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.cooper3@citrix.com, roger.pau@citrix.com,
 Simone Ballarin <simone.ballarin@bugseng.com>,
 Doug Goldstein <cardoe@cardoe.com>, George Dunlap
 <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Wei Liu <wl@xen.org>, xen-devel@lists.xenproject.org
References: <cover.1696948320.git.nicola.vetrini@bugseng.com>
 <c684c36402e6740472fa91d73436ca5790e5e109.1696948320.git.nicola.vetrini@bugseng.com>
 <7be93272-dc82-06e0-726d-030d33aee5e1@suse.com>
 <66e27d108e856fcf69f78652daae6447@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <66e27d108e856fcf69f78652daae6447@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0056.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:cc::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_|DB8PR04MB6795:EE_
X-MS-Office365-Filtering-Correlation-Id: 4e9faec4-d9ba-4cd0-ba6a-08dbcedd7de2
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	IOa9NdnF5JTh6i2/ejvsewkipCyqEGmf92cz/KdtbKxmEtoZT4dtr8QWCvhXCaOa4xg3z9njDtl8hL1+P9bTRJ6dhD81NiufNxgloOyuv+ps0QeBckkEu0ffwV7CFshqp+Af+IBT2lAtBQySmN+MN2I2nftILPnjzsqz5rUiqI4p3K3u2Y5yktxXiBTFj9q9gQJR+JriivfoF1IxZXr8d+sH4mH2c+NtOtXlgHyv0Xb9jdNw4LAOgf87LGkhPa3YuNsUmb26yDKEt2YtW3j3oU+oJM6j9r917IA/aaNcPVpoX7XlD3a0ILufpQ/DQfLBT5OMOEkOVhn3003AmHgTERBWWLfOQtXSH/TECIKMP/ojdoLIj/6ZeG678kwDs6OMk1dHp9JBU8SdpjTTK6jqUl1lnlgxfi90Auff1K5B9ymNJ8/XW89YcWsQDEiglzLB/D6rYXccUU7TgHlQU4Gzb5gz6xckbovn21WHoeGVJuHkpETLzdFygWKbnJkiUTgn9MzzVeRkeRlv/ZENjYR55ppTIGq7bsvUfxA1T8Nbq50Pm+ej+9QnfPPGtNgPiDhda8zbr0ROYq7eFLCu52p2jesspK3PjK2xLqTHVKdVSLzKZrOCHcyq8mnUUYFwiYK2WtnyZ6PwFjxwHsUm73Rj+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)(346002)(366004)(39860400002)(376002)(136003)(396003)(230922051799003)(1800799009)(64100799003)(451199024)(186009)(83380400001)(6666004)(6506007)(53546011)(38100700002)(6512007)(2616005)(26005)(6486002)(478600001)(31686004)(66476007)(54906003)(66556008)(316002)(66946007)(8936002)(6916009)(41300700001)(4326008)(8676002)(7416002)(2906002)(86362001)(31696002)(5660300002)(36756003)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?bkw4cXRNM2JZdXN3a3dHRXZhaGJHTXFyMUlPSU9jUm40clk3U0hGTURZdUtI?=
 =?utf-8?B?TkxrWWN5K014SFl2MTFXQm9vaXZjMzdNU2lPL2tHQ29ITCtaanNtdTgxc05Z?=
 =?utf-8?B?akVRd01KK0tBNlBSRCthVFRIL3o2WlVjTFB1NEhSZmdUbFVuaUxZN1NjTzk3?=
 =?utf-8?B?Qjh4M3YrNVlRcU9MS3BOaDhveEJpT1hoV2x4Wit3NkYwOWZweEtZakNNNmM1?=
 =?utf-8?B?T0trNEQvdXB5SWFsb1p1cTU3eTRTU2lYcExZT1puVDMveFczK0dONWkxb0lp?=
 =?utf-8?B?QjJvT01uTUJBUDNJZHpnVWJFQ09PaFJwbXdVL2JOaXJkWW5UTFRpbU9NcnpM?=
 =?utf-8?B?QzJLUFplSSs5NGx3d2Z6UFZmektFTlZraEx6T0lWV2M3SEhhSlBGcTFPTDFx?=
 =?utf-8?B?b2FyUEx4NG94c3RlOXZ6T1JSWWJpNERGbkRTZ3V6NlB2T3BJMC9oZnFISDYy?=
 =?utf-8?B?cCtVa1JRdm1rMlUxNUdqbGc1ZGNTTDladHVrQjBLMlVZbGxxeU1FQUtwb1ds?=
 =?utf-8?B?RU9qRjhXS3gyaWljMGsxVGR1MUk5R0trS0x4WGJEMXZpTFVJenhTWkFnMHVX?=
 =?utf-8?B?SmVZanV5SGZqWnJyaDZsbEpCRENMTXVsdlBLbjhBNmZNbitqMzlaRUZ2bzVw?=
 =?utf-8?B?cGpBajhiaTI3ZkZoRFREanV1ZGZZY2tDdXQzQW5PbEsrdDFja09Id3hWa0k1?=
 =?utf-8?B?M040My8rN2RIOUc5TURkRGloT0R2ZVYzT2lyK3lJbkxoZmVNbHhnV0RXeVFw?=
 =?utf-8?B?SE1ybko4czdRVW1YenNUSHdvUVdTTDN3OGFrRW41QW9FdytSSjlqWXFkMVVJ?=
 =?utf-8?B?V3VJRUEyNHhRZTBoSUlEaVRuMnRtMFdmOWlaNXlpdGpkKzg2dmpBeVdGTFN6?=
 =?utf-8?B?Qnk0bUJ3TEpjZDFPT2srUTFlV1ZzK3dVUlUyS3NsYUZyR21RQVRnY3ZKYkdW?=
 =?utf-8?B?UFdrN1hENDE1bnhYRU80dkxTSDNCdytYK1lhUDFldG1kWU5IUTJxN0g5Lys4?=
 =?utf-8?B?cnhPK3hJVER1TWloV0ZpbWVreE0vQmYwbDk3YWRDTmdTVkNGU1hheEJQajZ6?=
 =?utf-8?B?Z0ZjM0JvZGppMHlDbGE1Yi9uaHRVMk9CUDc0N3U3dnF0YVQ5YllHa1I5NXo0?=
 =?utf-8?B?cnpOb2xZVm5UUlk3b2lROFNFRHJLaHluOVdQa1k3MmU2RG4wbGRWYlRlcHYz?=
 =?utf-8?B?OXN3UW5mbHRFa084NWxZSVI2dnFmUjM5TkhidDRXYUxBODlWUHQwYklITzFB?=
 =?utf-8?B?azlpR2RmVFB6WGxIbTVGMktTVHNkdy9jRVNRWlozclpWdW00bDM0czRvSmRD?=
 =?utf-8?B?TGt3SHd2VERwcys2RHVKY1QwWlFYU0hKK3dKK1JXVm8zaFFBd2owN2hiVFg5?=
 =?utf-8?B?U21JWVlORmdZd29mL1ZNeE9HK2x5bTlNNnBpeVl0Y0RkRnVvSzM2RitMVmVG?=
 =?utf-8?B?Ri9nS0hxbGR1dkxzcDZYSmoyMmdoUlB6bE5wd1pGME1MZ2hRSXlVYXdYbE8z?=
 =?utf-8?B?U2M3T0orV3orRm5lYmh2SkR4dlNpS0JpK2lyNE93VXRpTE1iR3g1L1ZlWjN1?=
 =?utf-8?B?Y3d5ZEltRG5hTXQyZmRMNHgvODd5SkxJVmVGd0czc2ZPZndjWWdoL25yUGJB?=
 =?utf-8?B?R01OalNMdXRYVm9JclJISnU5VXRsVk1mQnJEMUsxYkVXbWVjOWdINDJuMGJW?=
 =?utf-8?B?TVdvUVRRU1NYUmx2bVA0OHEvTHJRMmNGUkZGbHFYeXZjWTNZNkpiemw5V1U1?=
 =?utf-8?B?SElsWmdJRkl0ZHZXaDRhemluZlNwazQrT093VkIvRGJGdHkycmxnaXUxSG1w?=
 =?utf-8?B?RGMvc3dGT1pyNFFPK1BjMnZ0Y3JoUXhxTGNkUzdYSHozTkZUY2xuN0VlK09E?=
 =?utf-8?B?MzY4blBzTGFkdEJRNjlRd0NUM1dxelpJV0FwUHlWMWducDhrZmcwejZqRmgv?=
 =?utf-8?B?OEYvMzVNZXJ6a3kxN2d2UzBsaEFBeGppSXJYK053NndFQktCdXd2REM0QjQ4?=
 =?utf-8?B?QURHT3BoRTVRNlV1dW1HTVFvSHRLVEVYTjFmdENvckdib0ZHcXpyM2R5dEhk?=
 =?utf-8?B?cDdaUm1GYk9wSVd0SXlQL2JyWjVMVXpBb0tqZUR0aGlwcy8ram1KOHRZek1h?=
 =?utf-8?Q?tq3JnpOdqm4SsEyOZirbbrMS7?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 4e9faec4-d9ba-4cd0-ba6a-08dbcedd7de2
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Oct 2023 06:51:29.9426
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: zK76MtahBBYBdUaNf3veTGfO07mme+Esy271CQ6qQHGHw42xi9VXbD1jb+0XcSEiVszTohVszXF6XIXpKBTOig==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB8PR04MB6795

On 16.10.2023 18:49, Nicola Vetrini wrote:
> On 16/10/2023 15:43, Jan Beulich wrote:
>> On 11.10.2023 14:46, Nicola Vetrini wrote:
>>> --- a/xen/include/xen/compiler.h
>>> +++ b/xen/include/xen/compiler.h
>>> @@ -109,13 +109,16 @@
>>>
>>>  #define offsetof(a,b) __builtin_offsetof(a,b)
>>>
>>> +/* Access the field of structure type, without defining a local 
>>> variable */
>>> +#define access_field(type, member) (((type *)NULL)->member)
>>
>> This is not a field access, so I consider the macro misnamed. Question 
>> is
>> whether such a helper macro is needed in the first place.
>>
>>> +#define typeof_field(type, member) typeof(access_field(type, member))
>>
>> If this needs adding, it wants to come ...
>>
>>>  /**
>>>   * sizeof_field(TYPE, MEMBER)
>>>   *
>>>   * @TYPE: The structure containing the field of interest
>>>   * @MEMBER: The field to return the size of
>>>   */
>>> -#define sizeof_field(TYPE, MEMBER) sizeof((((TYPE *)0)->MEMBER))
>>> +#define sizeof_field(TYPE, MEMBER) sizeof(access_field(TYPE, MEMBER))
>>
>> ... with a commend similar as this one has. (Or the commend could be
>> slightly altered to cover both).
>>
> 
> I added access_field since it's possibly useful on its own in the 
> future,
> but that may not be the case. Not a real field access, perhaps a 
> fake_access_field?

I don't like this either, I'm afraid: This isn't a fake access. Maybe
field_of() or field_of_type()? Yet at this point I'd still prefer for
this to not be a separate macro in the first place.

Jan


From xen-devel-bounces@lists.xenproject.org Tue Oct 17 06:54:36 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 17 Oct 2023 06:54:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618069.961314 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsdyH-00019c-OO; Tue, 17 Oct 2023 06:54:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618069.961314; Tue, 17 Oct 2023 06:54: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 1qsdyH-00019V-Ln; Tue, 17 Oct 2023 06:54:29 +0000
Received: by outflank-mailman (input) for mailman id 618069;
 Tue, 17 Oct 2023 06:54: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=ibp0=F7=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qsdyF-00019P-Pg
 for xen-devel@lists.xenproject.org; Tue, 17 Oct 2023 06:54:27 +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 026bd03c-6cba-11ee-9b0e-b553b5be7939;
 Tue, 17 Oct 2023 08:54:25 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DBBPR04MB7819.eurprd04.prod.outlook.com (2603:10a6:10:1e9::5) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.35; Tue, 17 Oct
 2023 06:54:23 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%6]) with mapi id 15.20.6886.034; Tue, 17 Oct 2023
 06:54: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: 026bd03c-6cba-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=bwDODiU/gRJFWk6G6Eygs8wTAW7jNDNJ5GC7HI6iHxmujCoqV0rUpNebUbElmjgt2IvZ0GgXekbao7gEeXuVyQw0XdHumzXztHWiK/f9NjyHRSL4gSZ0rQhbWY68dsK03sTBRrHeOZCWtmI7Obya0plwJZfx2EBB8gXRhckpzGyet2SOsxKIAZu36Cm5Ht/SosRjDhK5We01I78gPy6GMjGWe6PMYXfdSh67UeYXzsgsZn8q86V65juaPokS9v0FZBLI2GnKlqWLkvP+G2Kqa4DjiKFNFsWEk2kFMJdQtwsxZft5V8mn8qcLzP5UvKPIGoIETnV4PgjB42ISrgw2Ug==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=M7aYkY8e5FIpd7pj9U+2yHyXDTXkN3c6zhkkZrw0HNs=;
 b=jWve9udy/cN1tpSLpq138ibSYV5QIPqXdOWMZ8kfvwMEleb89gFtyJFH7f2Gt93Hi871Mf+t8ciQ4wYMUyjrnaG1IM099/c9BRxFvm3xvehLXXUaml5E/2szeUEaz9MmByoKwS+UBrC4JxsTYnolLBwXE/BHTdmpFvV8jkYn6YnLHL3cfDJ7BziyzOQ0Z+MJAZukVbqEGsVo6oLL+PJn5Ea6H3Xje5gVpzSkhGk0/WG+eTvzHX2WtfMBzsQmFCnBy+U1WXsYpuYAITfc0siOm6J8SQ0sQpd2seAHB/9FsNrMdpdkXvOvkiQI9zOUXqUSx51sG0SMjpJ3JEywWaEZ2Q==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=M7aYkY8e5FIpd7pj9U+2yHyXDTXkN3c6zhkkZrw0HNs=;
 b=kU38wFHsDJofxXBNLWg6/Zzi67fmzhhmGez+NdYBAVXQwi1UfeWqQ9l4ce+5LO3oPs5bUBfMVN4jB7wTguo2EUZ5IHpuqWiPU20q61vXG354zyJZh0VzM2jSqScVP1o3glH+JlLDaVRWa9qs9ZjTVqqnYa9kqcsRTSbmcR9k9GYFig0DbZ6DfV2DaNA0e1nMj0MH7fMwDu4OGBkHAIlj4kd7oxGsa+dNAAaJVADDN7+z/2XqmsiCkcW2MKrphL2tkaDh1r3BVEzMp48gctH95hlnxVxPgaG/paa5NM0gQ3hFNG3ZoSbCKaQvpJUaUjoHOAgOLZXH7Vro6dPR1vw8MA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <dd3534dd-29b0-129d-9f34-b542ed3ffabc@suse.com>
Date: Tue, 17 Oct 2023 08:54:21 +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 3/7] x86: add deviation comments for asm-only
 functions
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.cooper3@citrix.com, roger.pau@citrix.com, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <cover.1696833629.git.nicola.vetrini@bugseng.com>
 <6476706490cc15406bcf3377a57b7c4a303c4901.1696833629.git.nicola.vetrini@bugseng.com>
 <741e81bc-050c-a773-e622-997b6c0b8335@suse.com>
 <alpine.DEB.2.22.394.2310161520180.965337@ubuntu-linux-20-04-desktop>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <alpine.DEB.2.22.394.2310161520180.965337@ubuntu-linux-20-04-desktop>
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_|DBBPR04MB7819:EE_
X-MS-Office365-Filtering-Correlation-Id: da3cedd2-022c-499b-319a-08dbcedde58b
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	7Gobhvny/xhGtZ9XVZOrIJfhNRCqzyfjW7yhiiN/jQWFm3dquPrCmTqnG1aLAC1BiWmjEjhqZZe/gRz+hhFu3nYM1ieG+DMeraqnNerF/ERHqSpcHysAT+FcweVeht0a93UnMbWCbSLdph9GPbq7lkIyO8k8/fVLMvUhdJM5CAni4df+7WPViqJqoWy+iGLYYD/Rmw1rVhcoK+ACc7Dy8SMeuuQRMNCPRL51mOH9HmaHtLViKQgfKqeTWvMzQoodRLv82K8WkVaSRSx7lTJligJ2t0WCXUVwKQE7VMcR2+GrMC++A1Rf0EztpqhWNTXiHwETmsLfCWrjtPMf57MR73pb7cr06DikfpEfh6jjpX8JsRmlmXosc8GJtBpp7qo2VTxh0e4cwH/4crzqccKkV1QLf1pE2nOLJscWSlkeZyoLRKabOb3x7T/PTN0rvyr1bl+op5msrBwhz7A2mn0Mz+qMrGZ8i4E+kuwSIXUqodfqReGgx7ptThew9Eg5d2JVIVYj9qGsRaM0BHgq1IuZwLJom2TitE3oTi6x5HhehAwtFv/tMdWOiPBBF7bQMCTHGdYsflj8mqBfqvSFSWiGKrNWUB9+JiyW/suB1O8HqYMS38aam2vqLScuIonszPEtNFLsV1ETJV88kBZWN21tog==
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)(346002)(376002)(230922051799003)(64100799003)(186009)(1800799009)(451199024)(6486002)(478600001)(2616005)(6916009)(66476007)(54906003)(316002)(66946007)(66556008)(31696002)(6512007)(26005)(6506007)(2906002)(8936002)(5660300002)(8676002)(4326008)(7416002)(41300700001)(86362001)(36756003)(38100700002)(83380400001)(53546011)(31686004)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?ZElQMmJsTGZuK1krQ0UrcmJ1dm52bEovSU9jTGNYU3d6WUFTc1hTcTJWZ2Uz?=
 =?utf-8?B?VkJhcWhaeExsbDZIaS9jSlRoUkUxbVdmQUhOVEltVDZOWXNFRGZDZW1ZaVRL?=
 =?utf-8?B?Yzl2ZllBcit4NzNBNDNaSGI5OVhFUkdtbkZ1ZHNCL3JuQWhTMkpoNzU5RGdJ?=
 =?utf-8?B?UFg0L1llbVhjdG9KWkNJVXFzVHhlYkJIUTQzVXErWWFwMGJ3bDdwOUhIanhy?=
 =?utf-8?B?RDFUWkNxWnBEY0hTOTRUZ0tXQnBpV2RRTHNwWHY1cnVkMzZkTzNLNkhzQksw?=
 =?utf-8?B?akM4N3BPNDVTQytDODJXWGFQWmhmY3VSNGl6SGpxQWVwMTZmZlU2WFdBRFVt?=
 =?utf-8?B?Ujk0Unh3MlRFTkVYN210ZnJIUnBYcnBiaDNTcnA5RWJhZ050NlFLdWl2WE1r?=
 =?utf-8?B?aHoxbXcybVVYT25rbHZ6Mjh4bkQvVHF0M05rZUh3ak1CWE5QMlE2aXc4aU9H?=
 =?utf-8?B?bktvYTVBODEwZXFRR3h1bmZjWmJyQjFuakxhYmU1NDZmVktIQStuZmE5TWRp?=
 =?utf-8?B?SzY4MlE5TGtNbVB1cUNzbExzdldaYkxSOS9GM2pIVmRVdElPVHAxZ2FOaTZZ?=
 =?utf-8?B?U1k0ZE1wSlFyQ1VIWEtuU0xjTWJOMms5aTRLKzAzQ2hLNHE1WVdwNHhFTzBw?=
 =?utf-8?B?Y3F2aFFLTGhTMW9nUHE3ZFAwVG82OWhqTlY0K3gzaDJIdWFJKzlVcGR5cVZi?=
 =?utf-8?B?TTR6czBTVm1HSDRCRU9mdGVybWxWN29SWnhGK1dQdTJYeFpsWXVSeHFkVFJF?=
 =?utf-8?B?QVdsb3FNVktYNnhwdEJSaVVXNVMyRVBIUkx0cXFuM3lvL2c3UlpBYVdLNGFr?=
 =?utf-8?B?SE9PV0h1c1RRVkVVVzdtL25PYTBrVmdOaVEzS2RpTUVEbThzN3M4V2t4TmtV?=
 =?utf-8?B?MHRhTjltRmNtc295cCtlcUlpWlJYV3BuRExzM2kzK09MT2VXR1BrQjFJRURo?=
 =?utf-8?B?RHZoa3NtL3FmOXEwaFhtc2NqTlFYVEVUSHdqYnlmQlUzUnZ1TGE2S3ZJcTdJ?=
 =?utf-8?B?d0dtaitTZW5NMDA4dm1SczlCR3RocmRneGk5NkdEdlhrMDhxYVF5clJIeGhw?=
 =?utf-8?B?MlRFQVJ2V01hRURpY3h1b093UVhTSUFtVVRDOW1LditjY3dLTDBjczZCNzVZ?=
 =?utf-8?B?dGs1VmtpRzN4Q3NDQTJTZ2xSZlAwZG80MlRKYWtSSkY1YnVWRDlVRUJOTmdW?=
 =?utf-8?B?M0hjSHJjRFZCQlVscXA2YUowOUtvYjIvSnk4eGY0Njh5c3ZMd05MYWVwczlO?=
 =?utf-8?B?cU0yY2FFQ1RZaFpKc0JweERrU2tDMkJCcGNvdktJaytMZFR1eHcrS2ZoZjZE?=
 =?utf-8?B?QnFxQ3NSdERCVXNpTm9vV2FHU3FDU1hIb0ZXZ280ajBRSzZqWVdjWitkY3pn?=
 =?utf-8?B?ZUMzWndmZjdhTWdYQjNxUFZIc0F6RXlsS2Q0dlczM0FLMVc0RG9Ma200K2tM?=
 =?utf-8?B?UUtzWTFjcUlOMXZwbzRGcnZWN2VneUN5TlA5anlLbHllc21RUDdvcVVDMGpz?=
 =?utf-8?B?SnplRVh4SmJLcjU2QTBReEhGQzB6M3JlZjlLNityMUxucWcrdldweWdrUkhk?=
 =?utf-8?B?MlViaWg5ZHJJWDBHbjZoNldIUm1YcUVxbmN4U2tLbkdjcDQvUkpBZXBuWk1X?=
 =?utf-8?B?U3RJUFRJRzdRemVvbDNFNGJFa1oxWHRyTXNSbzBXWjI3djFURUpGK1U2eUdT?=
 =?utf-8?B?NHYyVWovamtaS2lNWGpFQWdqUG5Ia21Xd0szSmF0NE1wa0traW9BU0FYMTN1?=
 =?utf-8?B?ZFpEejBvSWpKOFpyN3JmS0g3NFBHM1ZoYVNSQmJwWjVPMEZvaWtHOFNUVVkw?=
 =?utf-8?B?eWRYVVhXS0ozV1U1U1dOWllsSThuSmhLbERhMGVmLzVwWFlZMXN1U0lISk02?=
 =?utf-8?B?TzVsYTQ0clJIRXBCek8rdHA3Yi93b2J2M3Z6aUI1aWx3ckVwdGtidmFOSUZn?=
 =?utf-8?B?bXNIWDF5ZTN0WlU1em4rcDlyL1o1MmhvV0xiWVc5cVNzRDRuc2JFSlkrRFd5?=
 =?utf-8?B?VEJEbWFwaW5jeXY5aTdwemZJd1hFdk5jTkdIZGJtSExJT09uMS9qQTR1NnFo?=
 =?utf-8?B?YlR6ZjFJaGsyM1RMYjF2SUVaUEsrd3daa3ZWUFRrNkJzVzVCb3hnV0pOdkxI?=
 =?utf-8?Q?iZ37DYiU6445hmXW4NVhi4RNm?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: da3cedd2-022c-499b-319a-08dbcedde58b
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Oct 2023 06:54:23.8426
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: MTqR6/om2mJ5fvueRreNmUFmYv8rq2oBAfHgAUBoHd7QJ2uIqpE/m8i2M4DaUDvpi1Iur6aQ0Qv9bqYZR37XBg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBBPR04MB7819

On 17.10.2023 00:34, Stefano Stabellini wrote:
> On Mon, 16 Oct 2023, Jan Beulich wrote:
>> On 09.10.2023 08:54, Nicola Vetrini wrote:
>>> As stated in rules.rst, functions used only in asm code
>>> are allowed to have no prior declaration visible when being
>>> defined, hence these functions are deviated.
>>> This also fixes violations of MISRA C:2012 Rule 8.4.
>>>
>>> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
>>> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
>>> ---
>>>  xen/arch/x86/hvm/svm/intr.c      | 1 +
>>>  xen/arch/x86/hvm/svm/nestedsvm.c | 1 +
>>>  xen/arch/x86/hvm/svm/svm.c       | 2 ++
>>
>> Once again - why are you not also adjusting the respective VMX code?
>> Iirc it was agreed long ago that scans should be extended to cover as
>> much of the code base as possible.
> 
> 
> Let me summarize here our past discussions on the subject to make sure 
> we are all aligned.
> 
> With my AMD hat on, of course we want to work with the upstream
> community as much as possible and improve the overall codebase. But it
> is not a goal for AMD to improve Intel-specific drivers (VMX and
> others). Our safety configuration for Xen, including the public ECLAIR
> instance currently sponsored by AMD, only includes SVM files, not VMX
> files. MISRA compliance costs time and effort; this was done both
> because of lack of interest in VMX and also as a cost saving measure.
> 
> Upon maintainer's request we can expand the scope of individual patches.
> For example, AMD is not interested in ARM32 either, but in the past we
> did address certain MISRA C issues on ARM32 too, if nothing else for
> consistency of the code base. It comes down to a compromise what we
> should do for consistency of the codebase versus addressing things that
> makes sense for AMD business. For sure we could work on a few violations
> affecting Intel drivers, but overall I don't think AMD could be asked to
> make Intel drivers MISRA compliant.
> 
> 
> In addition to the above, we also discussed during one of the past MISRA
> C working group meetings to have larger-than-usual ECLAIR scans. ECLAIR
> takes a couple of hours to run, so it is a good idea to restrict its
> configuration in the usual runs. However, at least once a week maybe on
> a Sunday, it would be good to run a comprehensive scan including
> components that are not currently targeted for safety. This would help
> us detect regressions and in general spot potential bugs.
> 
> As part of this larger-than-usual ECLAIR scan we could certainly
> include Intel drivers as well as other things currently unsupported.
> 
> 
> Now, concrete action items. Nicola, I think we should look into having a
> larger-than-usual ECLAIR scan every week which includes all of Intel
> files and in general as much as possible of the codebase.
> 
> Jan, for this specific patch, I don't think we have the scan including
> Intel vmx files yet. Nicola please correct me if I am wrong. So Nicola
> wouldn't be able to easily expand this patch to also cover Intel vmx
> violations of this rule because we don't have the list of violations
> affecting those files. 

I'm afraid I disagree: There are likely direct VMX counterparts to the SVM
items adjusted. No scan is needed to spot those. Anything VMX-only can be
left separate, sure.

Jan


From xen-devel-bounces@lists.xenproject.org Tue Oct 17 06:58:36 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 17 Oct 2023 06:58:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618073.961325 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qse27-0001l2-8A; Tue, 17 Oct 2023 06:58:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618073.961325; Tue, 17 Oct 2023 06: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 1qse27-0001kv-5M; Tue, 17 Oct 2023 06:58:27 +0000
Received: by outflank-mailman (input) for mailman id 618073;
 Tue, 17 Oct 2023 06: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=ibp0=F7=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qse26-0001kp-7P
 for xen-devel@lists.xenproject.org; Tue, 17 Oct 2023 06:58:26 +0000
Received: from EUR01-DB5-obe.outbound.protection.outlook.com
 (mail-db5eur01on0626.outbound.protection.outlook.com
 [2a01:111:f400:fe02::626])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 8f1713d8-6cba-11ee-9b0e-b553b5be7939;
 Tue, 17 Oct 2023 08:58:22 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by GVXPR04MB10045.eurprd04.prod.outlook.com (2603:10a6:150:11a::10)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.35; Tue, 17 Oct
 2023 06:58:18 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%6]) with mapi id 15.20.6886.034; Tue, 17 Oct 2023
 06:58: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: 8f1713d8-6cba-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=gahqIr7hzLLf/xZXtddXR5m8zWHDgyQj5kWhRG5dTc19XlmP/DnYYulbp0kmeqmawosLMNEgMOsGQVreLy1rq7eiUM8+32dKC6iBGoYLMOFlBPcSpUKrGwkkOvWcb1p13c868RjFemDBs+/Y/5UrleqKbJT7rXTj/VR8VMXNB9/rcVXqrgC2ncyxZShGVJyVIo6hN13z22MIskC1S+hVapSJN4D2TlGK9DCUE/dHs2DvN8r/56YQ7BaVpsc63xGaxvLDlTj6Eg+rPFZV+WkaVDwFDiuwgLrN364EJHdRuX4+/ThZczH9NifXev5YMj+AJglsE+eIzgE2k48GX57z1g==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=U2PVwxb7tljwQjS2WtbBJY9Y6nHUWatUJ5/+dmiS4h8=;
 b=B16Him4zYQenQShrxkEY6IZoe1ya0i0uta/xFn9BS1iQCokhbsGsCrsFghzpqtFJGrUvTR7Z+m9unBZYIF2+sH7ALUUZ0yBXsSebYrCA0OFBZwv5xQkvNAG8/0ErZz4o32JGbJulbAbm58gUFqee7sWV+3qJqexKdANMIIzjzrZ6VqSBxmx0SRT1OXbhDsyLv0OMYMoDcXXGGzj8QIgisWC7m2BCVoaGcGdbSgSxPUPlBmPGMPO+ko71QdgdMoSbsE3DyW/yt7KHwtoEIE7BPN34mzmt/y3EAUAqnulhwNx9o9GYdLRKxBkzImeeTFY/UuyuVXv7mNFDeIKr6fHWSA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=U2PVwxb7tljwQjS2WtbBJY9Y6nHUWatUJ5/+dmiS4h8=;
 b=fmLjidfsecD9Hn7ALrM2Cr5QU0ko9x3U0hlbsclS/0XSrPilHewTezDwpFXJrySTpBfDInIi9DbmDhVYPYdA0u4jVzx4at2vEcaTUng1l2mkj71r0Ryf5dp65fuzuovHutdyHwXhx1Uvw2jW/e+4hoEtKltyntosEPW4qdaxX/HKUnvTyApXzGhvobJ0ZZn1bNJdMcb76WgjkWG+7djzgbs1oR83Yizv/PNHLe3OxkQYM03lonYQJN2vdZ/EaDHS5hRHxIkpLe30Ai1agjNkAXRlzxDPpNj9WKhbZ9BS1Y3madJusBWi0oDrDtcs5SJbJLxFABoaW1ADINLxcufG9Q==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <06a4b7ed-a6b3-a9ef-1f42-f44ff0497820@suse.com>
Date: Tue, 17 Oct 2023 08:58:15 +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][for-next v2 5/8] x86/io_apic: address violation of
 MISRA C:2012 Rule 10.1
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.cooper3@citrix.com, roger.pau@citrix.com, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <cover.1697123806.git.nicola.vetrini@bugseng.com>
 <1fe7602b48cabb7710025f6b4e32e9b99a1faacd.1697123806.git.nicola.vetrini@bugseng.com>
 <262b878b-578f-451a-6e7d-18af4a826848@suse.com>
 <e4e6f6e9e0157a89fe50179d6f8fdbcd@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <e4e6f6e9e0157a89fe50179d6f8fdbcd@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR5P281CA0014.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:f2::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_|GVXPR04MB10045:EE_
X-MS-Office365-Filtering-Correlation-Id: 01a3cc3b-4614-49f7-2acb-08dbcede70eb
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	WHB3zuj1EmQ4fWL2DH/7KdiXI5GYib6/G0Ho+BXzPbhvbaM6E1pD9o5ZRDArB5EDLVsBWyyrwchtWQDM9X3L2q9jpTxIKTUAih58LNXgte4PShLOksQnXqDwTbGKJwfRAK58RjhgnaznfmR6bbxA6SurMWSteG+5ZXX94polRSWG5V3qM9RD62HlThx7+pyOvbJDRBSPKHQ72Oqp7CANU91m298+e7E3hKsB831tI0zT5N08Wkupb8H6Kh/JGBvuZadfOhqhh6r8s6GAHeiZWXBj1WV6eY5n2BtB4viucEGgjwOkblJ1ivothnrRk+qjKeyVLDHzfr3JsdRTINzXVAo3XFA+z8YkwnATGWjAofQuD7zQtQF8FQB7gwEfFdnw8zJj3gsKQFYKZqT3qLLn1MisQPYvn8MtQ66MPakDNV7U1OvXVZcb/fRFLbluAr3hGd+IzAamqcHCBBpkocdIxpk7nZRcV0JOTp3mAy2iiShjH6uWxgdYETCKpbQKc+CGVyJeARrWOamb1EF3MqNsUkrsDV2wXM/qGOKylQTT/mme4J85QdJRJZYCy9aqGtM7gwH/qKIa4QKcLyMwmoDXIQxLRkIo/QMpoCgr9OgLSoUZxMGVAG0/xnoFxAOS1i8BJV8/yHBD0mo2MEWQI6Wc1g==
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)(230922051799003)(451199024)(1800799009)(186009)(64100799003)(53546011)(6506007)(5660300002)(6666004)(2906002)(36756003)(26005)(2616005)(6512007)(38100700002)(86362001)(31696002)(7416002)(478600001)(316002)(6486002)(41300700001)(66556008)(66946007)(66476007)(6916009)(4326008)(8936002)(31686004)(8676002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?MDZTM24rVTZNdTQrSFhhbmZ3YXVGK1BXRnNKSEdCRHg3REh5dHNIWk1kU0V2?=
 =?utf-8?B?dGdZWmowUytWL2FDNU5Pdi9YMCtkcEQyOVdtdGpmajB4R2s1VTRHTTY3VnVh?=
 =?utf-8?B?cDI2dUdLZXZWVWozUXJubEZIZDJBY0txUHhpdmFYWml3bnAvMjdURGtkaUxl?=
 =?utf-8?B?OVkvNjRiY1VPeUx1YjkrWUVHcjRxYmdPbFE3MG9BVFg0RXNMWE1sZW9WWXpo?=
 =?utf-8?B?cHUyZmxVTkxsZkNsWkZzM0JXUkFtRTVSVXRBM2Ezajh4TDhBMlE1TWJnaGlK?=
 =?utf-8?B?YjdKUEpDQ3ZRNW1obHl0TjFhNTU4M0g4ZWxTckIrNTRhSm9XTWFRbEhYVlhz?=
 =?utf-8?B?TVBUbVhFR3lqdzdxRTVJYUtHNldjYldyQ3VFL2FQdnUyaklRTFNHV0pjR05V?=
 =?utf-8?B?a09mTUppQlE1ZnprRzg2NnZjME1HSTR1WGpzUU0yWWRSNUpQYmYrdlp1eS9h?=
 =?utf-8?B?Qi9FWHMvSURRZDdhYTJMTDBBSEJRNmZ6OXh4b0pkaUlRcDhnamRBbjZIN01T?=
 =?utf-8?B?R3A3RGlaNFhYUHNYUnFaUDB2dUxmdERFVzgxZzNBbkNBdnJQbGVFSGNuQ3Z0?=
 =?utf-8?B?OWozbEZKWW9INWdNdlBUWUZycjhMU1RWT05ObURiZG9FV2xSVkplZ3BSeTUz?=
 =?utf-8?B?Q09XT2ZKb1YwOTd3Y2l0R2RiWUV3L0x3UitLTG9Fd2c0dG9OcUh1UWRJU3V6?=
 =?utf-8?B?Z3dlVXIyZ1RxN0c2cUxTWG9yeHgxcDkrTE9iTUFhMWRJUlUyNGlsc0RKb0ZR?=
 =?utf-8?B?VUNGZmhZUkVNci8rc1pNUzV0OE1CQkh2MmNGZnpGV1l4OWQ0dE0rRUp6alB2?=
 =?utf-8?B?cE5Zd1FzKzFtaGlDTmRsQy9lazREeis1N3NKRnlMdGkwVlgrSXU4R1pMc0s2?=
 =?utf-8?B?YkdWbG1LY1JRbkNVT3JnODB1VmNFc1NCTzZpeFMzMW95RS9PaFQzWHBmZlZR?=
 =?utf-8?B?Y0ZObTdReGRrak5WZFR6Sy81MjdOdG51bUFkZUVpd3RIYUFycEh3TWo0U1pH?=
 =?utf-8?B?ZUVEaDZVYTM3M0trRWJLSCtzT0lwbHVUSWtHSVJuRmxxZzVQRElDbzFsazJr?=
 =?utf-8?B?SEJYWDN1dDgwcW1nMzZ0bkdITUFxSGQrS0dUT3gzblE5ZzlLQ285MW5rdk5n?=
 =?utf-8?B?cjhDSkZIRjdNYTJ5NzhhanNlMGd2cmkwRnJFREQ3R3E4SEZ5ZXQ1WXBpRE84?=
 =?utf-8?B?T2g0d0s3N3ErZ3E5aEp6dXowNVRELzRhazBGcXprdVFHa3AxUnVmSEx5OXYx?=
 =?utf-8?B?NlJEYkc2dGVBZTh3SXJLcTlpYTh4dlF2b3dGbktQU2gvck5Mc3VnYW9zVGNK?=
 =?utf-8?B?OFp6Rnd1ZnBHTmtEbmlsUlZkL0RJaENPL25IbUMrTHpwd201SkdsdmxuMTFh?=
 =?utf-8?B?K294VGxUQzlBUVpPMVRUeUxmdDRGNlV4VjFZTHZ0L05aOU9oNDY2OEptU1pU?=
 =?utf-8?B?TlJpcksyVnEyRjByWG9yU1NueEdhdHFoOEozODh4eEsvbFZWUHhFcEtMSEpa?=
 =?utf-8?B?S1FDQ3pjK0d0R0pWd2NmZ0VtRng3b1NrOHZVS1N6bkpUY0dyVUtRL0tQUDI4?=
 =?utf-8?B?a0dBZ3d2Szc4NDNmNG9lQWpvK21Wd201VEE2K29mRktUYUkyaVNna3dHV0hM?=
 =?utf-8?B?b0J4WjZjOHRoQS9SRlRuWEZQT1NKeFhjUHgrRTV2Q3Y2RVRnUHVpVVdJY0dm?=
 =?utf-8?B?VzcyNFcySkxmUW1mK05GSmIrMFUrK1FSN0lyUm9DSWU5L2I1Rjk5a3dqd3lk?=
 =?utf-8?B?SEdpQVZUYk45UDl0SXdFMjZ2dnZOc2I2b0lCT3hDMUhCOXJ6Y2lCNWk1WUdp?=
 =?utf-8?B?R3p5MndoYVFodmhRV3F1U2pVRlhoeUxTUmkzbjNXR2dPbm5DdXBGaXgwanhr?=
 =?utf-8?B?WkdFVnRLLzNnMXJITlhmUktpS1FyQnNnZzh3QlJjWjRrcGxkUndEY2xnT3ha?=
 =?utf-8?B?SXh0cExxMVlUQkFvN3BZemVJTVNjS2JBVExtNVJZbVZSZEpTeGtYb1RHcW1E?=
 =?utf-8?B?ZjZTMzgzTHBOS0phbEgvWHdRTHFib3V4a1Q4U2hZWGFqdGgrQjhnbCsrQ2tS?=
 =?utf-8?B?RE81V3l3d2RDZng2MHc2R3RFajdKVFhaajJUd1h0TGJYM3VsWEdYdXV2Yll6?=
 =?utf-8?Q?jFUijqtS3KQNQXEbd+UwIBQX5?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 01a3cc3b-4614-49f7-2acb-08dbcede70eb
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Oct 2023 06:58:17.7373
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 3ioup467Il2GjXzVuk45MNnuSXv1GT7hPDDC7obYskeINAaPjuP8bDLDlsseyhNPki7XnwSBvVD2dPgJyeGJjA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: GVXPR04MB10045

On 16.10.2023 18:36, Nicola Vetrini wrote:
> On 16/10/2023 17:42, Jan Beulich wrote:
>> On 12.10.2023 17:28, Nicola Vetrini wrote:
>>> --- a/xen/arch/x86/include/asm/io_apic.h
>>> +++ b/xen/arch/x86/include/asm/io_apic.h
>>> @@ -14,9 +14,10 @@
>>>   * Copyright (C) 1997, 1998, 1999, 2000 Ingo Molnar
>>>   */
>>>
>>> -#define IO_APIC_BASE(idx)                                             
>>>   \
>>> -    ((volatile uint32_t *)(__fix_to_virt(FIX_IO_APIC_BASE_0 + (idx))  
>>>   \
>>> -                           + (mp_ioapics[idx].mpc_apicaddr & 
>>> ~PAGE_MASK)))
>>> +#define IO_APIC_BASE(idx)                                     \
>>> +    ((volatile uint32_t *)                                    \
>>> +     (__fix_to_virt((unsigned int)FIX_IO_APIC_BASE_0 + (idx)) \
>>> +      + (mp_ioapics[idx].mpc_apicaddr & ~PAGE_MASK)))
>>
>> Let's assume that down the road we want to make __fix_to_virt() an 
>> inline
>> function (which perhaps it really ought to be already): Won't this 
>> trade
>> one violation for another then?
> 
> I don't think so: the violation is in the argument to the macro (i.e., 
> the fact that
> idx is unsigned and FIX_IO_APIC_BASE_0 is a constant from a named enum). 
> Do you see a way in
> which a MISRA rule is violated if __fix_to_virt becomes a function with 
> an unsigned int argument?

No. But I assumed such a function would take an enum parameter.

Jan


From xen-devel-bounces@lists.xenproject.org Tue Oct 17 07:02:21 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 17 Oct 2023 07:02:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618077.961335 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qse5l-0003IQ-PY; Tue, 17 Oct 2023 07:02:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618077.961335; Tue, 17 Oct 2023 07:02: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 1qse5l-0003IJ-Mv; Tue, 17 Oct 2023 07:02:13 +0000
Received: by outflank-mailman (input) for mailman id 618077;
 Tue, 17 Oct 2023 07:02: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=ibp0=F7=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qse5k-0003IC-Cf
 for xen-devel@lists.xenproject.org; Tue, 17 Oct 2023 07:02:12 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur04on060f.outbound.protection.outlook.com
 [2a01:111:f400:fe0e::60f])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 172d9cfd-6cbb-11ee-9b0e-b553b5be7939;
 Tue, 17 Oct 2023 09:02:10 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PA4PR04MB7502.eurprd04.prod.outlook.com (2603:10a6:102:ef::21)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.36; Tue, 17 Oct
 2023 07:02:06 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%6]) with mapi id 15.20.6886.034; Tue, 17 Oct 2023
 07: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>
X-Inumbo-ID: 172d9cfd-6cbb-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=WDjj0F7JnG1TYdsW0DajpjMFENoBxE97d2A8vtKLuqf+ZrF5JKJ9QxXzLkTT51+NMF3Tno10B9RYOpwIzHBYub0oH76QnnWP6h6xDgw13keLOLvuOgh/NA9OSu9c3S40Xu94Nvj4Fwsu4UmASJtvvdZURgL4w6mEg3I/509xADrTmPk8ggIs1NZ93G82yo/lZ9cx0Id7lfsCvfi/zdmcrJQ+eFNRxIaHr+rEpgLnGQ+fYg5IJ0vd4Yr40zVcx4YGkcAgFCuhu2mItMopSN7W13HuUhY20cwngenffQWyB3bMRAQOPFIb/qgbI3z5krQr9/rgBSopoREUDFSRUh2ucA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=Lg13GoIsI7dB1FWZ5xU2D/AIk+2JTmUdJE5NNUtXe7I=;
 b=UXvBa5bJc6rM9gAA3HlxmfmrMk9cPCEB3xZm2ti9ooyyCuEbn4ij4QF+M/sp2on7kwXjVXmv3SoiaYMlqxIqXLZYDV7ddmEkWuES5K+Z7YsFVxFGfH/rlmUKog2eXKnlGHN7BebDiJ7K5vUvRYvheh40SP63w+eITxerwCWUQEcQXyYya2FOQY8DuT94pmNZQcvUnZ6WicI2sC7EyYLzo6UJdD8gjk1acAKhRBTEtFkfrzMA1qH2L9bQqt1U1Ij6KlO452asuy/6gHj/qJnOoYrtiQGIKMgmVyWpWbdN4dod5DBTgNeUzyRkYI8MC+57N+3PwVlEJuInMlh0FF0lSw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=Lg13GoIsI7dB1FWZ5xU2D/AIk+2JTmUdJE5NNUtXe7I=;
 b=y4IwNSoEO7njonx0AqnRtEq6Ou/Wk48dpp8HhDo1MzP61JVEmBXsEqD9BtoRqO0m+ln3T2a6J5Q2t686SAXd3cexaiU71eMLejzkPeuMWKrFRH7nUjPXTP72Qvt//R+0e8JLcKBvcQPVtAxbEw9+I2C3YWVTWMglpZhiWTqWWCrxLwYcBRK9PQHt8XP9UXfCs+l7jS50ShwnTCIEdLNzG8ATgDbNKVMEvsWV4s1CwKEP+Bl5TB/IQm0w0VGvu3yZVahAq74gUQWbpR3eMuaOYyj2pxlW9wC4ncxGaVdqd4eM4+7PAgz1y3YwnWc8TpgKhYLcZEXn3hsBh2yXMItgfA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <172b1f70-bffb-125f-3181-38ce5989daec@suse.com>
Date: Tue, 17 Oct 2023 09:02:03 +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][for-next v2 6/8] x86/mce: Move MC_NCLASSES into the
 enum mctelem_class
Content-Language: en-US
To: Nicola Vetrini <nicola.vetrini@bugseng.com>,
 Roberto Bagnara <roberto.bagnara@bugseng.com>
Cc: sstabellini@kernel.org, michal.orzel@amd.com, xenia.ragiadakou@amd.com,
 ayan.kumar.halder@amd.com, consulting@bugseng.com,
 andrew.cooper3@citrix.com, roger.pau@citrix.com, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <cover.1697123806.git.nicola.vetrini@bugseng.com>
 <6622a2ec7079f86b73ae420e1e840d3d35ffb3a0.1697123806.git.nicola.vetrini@bugseng.com>
 <f1f0fc3c-0eb2-81d6-132c-d6b2ed2d7308@suse.com>
 <d417da49a926fec385c95774035dc4cb@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <d417da49a926fec385c95774035dc4cb@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0072.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:9a::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_|PA4PR04MB7502:EE_
X-MS-Office365-Filtering-Correlation-Id: e051e80e-00b1-47a5-e270-08dbcedef941
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	GUMoTUspgd+4lzlnux26KRoCieiuXdTxRIqzrH0wvWTcIKZdZApvhQXaPAR9zryWNNBqupqPQWpJhMXKM6/3pcj1EK4ZSOKCG8bAKbNSky1OaGuKd1iEPwO4k2JFVrqmxxVZVLfo9dN7IepcpdNdw48Kzau4MuTvuRZQuWsLQRvGMdLlyEvMUuW7aJ/FI/o80WY/0JevxCnYlk2sLDCcTtV/g16XwMP8mRzcGuyvO5q7lWz0VOTDTZroPDpCxwr2jqDFMnp7luKoRTClZLcK7Gc5zOPZje5mIUo5UeSw6vNJwf17OFMRrfhe8DU1QUITwEue2U1Rj5lGPLme1f2K50zeWcAjv3CRnBoZ44iUXMomyAbBi9eQp4N4m+16H0QU+MHWLRmtXz/mQwVfqvLsC48MIdQ7OT7TLyTGPmbkwbr+K8RHGNVzrScPzzkJKpI3LuYoBqaXCZwmGYg00KXOmZbYXmvckCxFi92vo6Zs/YX+W2VQwP5OU3RBbC+mpiHQYKZ9zfTbu3iXvv/4yCn7kK6wPt2E6Y1NAkJGls37cmenY0XGaoLFPGerXOJHt8JRMDK+mtnutyEnSObcUwt+s5NOdEV65nMA/7rMcgAPVPZDIVx/iMhe0BvX7QOmfSzJ1dIDIh1+wckIF4xmrZ0VwQ==
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)(366004)(396003)(230922051799003)(451199024)(64100799003)(1800799009)(186009)(316002)(83380400001)(4326008)(8676002)(8936002)(7416002)(478600001)(66556008)(66946007)(6506007)(6666004)(6486002)(110136005)(26005)(66476007)(53546011)(2616005)(6512007)(4744005)(2906002)(36756003)(5660300002)(86362001)(31696002)(38100700002)(41300700001)(31686004)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?SnBTaDU3bm5wZVRGOGlqZlpOcTVlMEUyeHczY1pnYlc1R055UlpMeXRjNHhm?=
 =?utf-8?B?aE5JaUV1MWE5Q2FhVm5JN3ViU01jQWZMcnIrMDI0SC9Tdm0yMDhDR2x4c24z?=
 =?utf-8?B?K1lsd0NtWVlta055Z3FXM3VsYU1SbUN3UU1IWVp0T1E5ekJSMjVveUdIODRT?=
 =?utf-8?B?dEdSQklFaXRvd2NSUGFycTJrTUoyQjh3RXE3NXhYQnhKRDMyTTUzZUx1SEl0?=
 =?utf-8?B?L0puUk5hSnl6SjdtR1pUc3hXSStGSC9ERUVjS0ppN2RTWTZacmpKKzVlRUpz?=
 =?utf-8?B?QkF0UCtJczJZRzBsUkt3REtvUGVOc1hlbVhuM3p6blZOQlI3UjQ0MDdhbXJ6?=
 =?utf-8?B?QXR4ZDg2UUtYVHNqbHRGRlBwNnJDRDdCSXJMcUxZNDI1RVUwdnRDazdTeXBL?=
 =?utf-8?B?OWZIT2w2YXJrMXZVdnFUOE5DMFVLL1AwK2w1cUVDZWdqVFkrc0Zrblh4R282?=
 =?utf-8?B?bUJsU3hiQlVDdDEvRlI2SEh1eG1QWTM3ejREZUhBYlF4bkRvRm5jMHZieWcx?=
 =?utf-8?B?Zi9EN2NFc1FKSGR6YlUzdWdiQ1JwNStRaWRsdWtOR3hwcFJ3Q0NKQkhNeHk3?=
 =?utf-8?B?ZHM5NGZaQlFQaWxpbVJiVW1BbkxHc2VoYXlVemNxc3FmY0VaNHliV3c4ZXNM?=
 =?utf-8?B?b1RTMnp3QmpJTzJhb3hEMXpVVFd2cjhvVHFmV3gxWHBFKzJmQmY0RDJoTVZq?=
 =?utf-8?B?SVRwb1JTZUsrRmIzUTlrSjhLbHcwYTlFYzdFV1R2N0VIY1B5djVoVU1HdEl3?=
 =?utf-8?B?YjJnUTh6aTRtQ1ZiSTIybWIzMG9NMGx0YWUrYmliU0JiZnU1U2x2OVBSdldK?=
 =?utf-8?B?OUlnRWRuQjN6Rm4wbFhIUHRWRlhXTTJDMWJaeU5NMVRGQzU4V2FoWm13MTdo?=
 =?utf-8?B?S1hqbUQxeVBLVVVZK2M3WHNqN3dwSEJGaHNVT3cyZlI0YjVJY25EUitWRGtM?=
 =?utf-8?B?ZjlGeXN5UVVsV1luODlLbTB0VUY0OVYxNDFuTWt4Wk9hZUtlejlhNEhwOG5T?=
 =?utf-8?B?TGFpcCtGd2JzUVp2d2o1ZzB2YWliY3pXRXR1Yk11Mkw1UGhTS3R3OXBXck5a?=
 =?utf-8?B?L1JjbUZYYzE5aXI2bE5vL3RZeFpXOWF3VGs1UmhaQkM1VlhJdjMwNDRSenRk?=
 =?utf-8?B?dlRhTUpSWkpEZXpKbkRFM1d4cEZPVmgxaVJ0QlFOQkZLVkMycHVNYVZweDlm?=
 =?utf-8?B?dS9iNTZRejgyK1Q4MFpZSlBLRHovTVE5NStUOExzY1FramFKUFQ5M1dZUEp3?=
 =?utf-8?B?M0VNamovM3NMb24vSU9GMGNpdzRkVHNmUUdMdmNaeXBnQmYrRVRKdmhvMUI4?=
 =?utf-8?B?RUVLUE5xcHZvcWFZWG9KYUJNOExJc0hReXBxeGwyWlorUTZPcUNDTXRJT2pM?=
 =?utf-8?B?SGJEMGF4NVdZS2RuRzFVdkNXWDQ3cFdVR3JmV0dhNUZIbStQVENOMm9MRU1O?=
 =?utf-8?B?bVdxYjlxUEg5TzdjMTc2THQ0SnIrc2I3ZXBDRFhJRGR5dzE3ejlGQm9ud2I3?=
 =?utf-8?B?dW1VaUJqVmxmUnJZcmU1OG4zTlRtTzlSQThSSjIzaEJvbWM0MjhOUXpTV3Zq?=
 =?utf-8?B?QnVIZ2xvdlUva0F2eDdmMGhwU0Nld0ErdUYzWjVLVUVIRnNCcTRveC8wVGlL?=
 =?utf-8?B?TmMyRFc2bDF5aVBQdGlEZWlCRjRkWjBCZXl0UmZBVnVmMi80S3NqQi9DS2E0?=
 =?utf-8?B?RkVsNHczbVptOXNiSmVzOC9kektVZ1I3VGhFa1Jtc3VmZmVGK3hiMWl6L1RN?=
 =?utf-8?B?M3g1NFhWWWVyUTJScnNZT21jM3dzcjdBa3pBRkZjenZFam1xT0RSSFpOMnln?=
 =?utf-8?B?Y1UyRkJoT1A5MDEwdFFRejNaRDJ1SUJITkZSOTI5L3dmcW1CeEc4emFiNGNz?=
 =?utf-8?B?QlRIeHk4UFJ1YkUwTlRRN3o5L2UvMVZtYnlpekk5N2N0U2VaVFVpcUtaSnRi?=
 =?utf-8?B?a3A3TDk3RHo2TVJkYTNlZGFXK2NJMzRyV2V4Nk9SNDZuTWpiQ2JMNkRwQzN5?=
 =?utf-8?B?YWRINFVBb0N4c1FvT09qNXhHamJHT2d0WWVLQnIrTDd2UDZSMUZaUUJOVXRQ?=
 =?utf-8?B?NGh2WUxsVEk4bkxWTTN1MkxycE9IZllhRm1XWVFxcFBJY1ZWR0k1Q0JyTzJF?=
 =?utf-8?Q?JcHiG48MeMR5LM+8Yolob/7O9?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: e051e80e-00b1-47a5-e270-08dbcedef941
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Oct 2023 07:02:06.4859
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 4OSg/epZnFpivtDnbNUxHjAn9A7OcsJotY9cTfvl+L/1RBnehYajfr6Vok092oPwpekd0Bj7z3tCalTnPONDNA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR04MB7502

On 16.10.2023 18:05, Nicola Vetrini wrote:
> On 16/10/2023 17:45, Jan Beulich wrote:
>> On 12.10.2023 17:28, Nicola Vetrini wrote:
>>> The definition of MC_NCLASSES contained a violation of MISRA C:2012
>>> Rule 10.1, therefore by moving it as an enumeration constant resolves 
>>> the
>>> violation and makes it more resilient to possible additions to that 
>>> enum.
>>
>> And using an enumerator as array dimension specifier is okay for Misra?
>> That would be odd when elsewhere named enums are treated specially.
> 
> Yes, the array subscript operator is one of the few places where an enum 
> can be used as
> an operand (also because negative values wouldn't compile), as opposed 
> to mixing them
> with ordinary integers.

When saying "odd" I didn't even think of negative values. May I therefore
ask for the reasoning of why this specific case is deemed non-risky? To
me there looks to be a fair risk of creating undersized arrays, leading
to out-of-bounds accesses.

Jan


From xen-devel-bounces@lists.xenproject.org Tue Oct 17 07:44:49 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 17 Oct 2023 07:44:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618080.961344 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qseko-00048y-UX; Tue, 17 Oct 2023 07:44:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618080.961344; Tue, 17 Oct 2023 07: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 1qseko-00048r-Rb; Tue, 17 Oct 2023 07:44:38 +0000
Received: by outflank-mailman (input) for mailman id 618080;
 Tue, 17 Oct 2023 07:44: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=ibp0=F7=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qsekn-00048l-E7
 for xen-devel@lists.xenproject.org; Tue, 17 Oct 2023 07:44:37 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 (mail-db8eur05on2061a.outbound.protection.outlook.com
 [2a01:111:f400:7e1a::61a])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 04c2d035-6cc1-11ee-98d4-6d05b1d4d9a1;
 Tue, 17 Oct 2023 09:44:36 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS8PR04MB7877.eurprd04.prod.outlook.com (2603:10a6:20b:2ad::21)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.35; Tue, 17 Oct
 2023 07:44:33 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%6]) with mapi id 15.20.6886.034; Tue, 17 Oct 2023
 07: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: 04c2d035-6cc1-11ee-98d4-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=gSOlABdpaSUuH4qJoU2gGvTFTzEq7w/VD6bZlV04dZh1/Rg2CwcZrZlwoquzpWJPvwybQEwMf3Qf71zq6bI9h1oZk4H4JLGPZpD53HDuvRfDC5SejoYfpel6zQBMjwmSgzKAIW4VzquzwY0cqhiyle6eWBa2ujBwjOeTFifGelTebYUsR1DfkDKeZ/LYKnCjOsNyW/TURNaitxp3+0TvzcjoaN1YaWW4xf8tFkmhSalRHoOus2bPFjD31WU1y1q8Jx/XG77a2Ik3ZqBscZVNDyUf9pH5ubzZLXPHNbghX3c2Q1oAIHeLdqiA38bJqNaBKTsXg6Pp5tW6pcMSovChDQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=Wkze/OsYiRiiGj/wkVo7GoOtDqcT8JNdm9b2IMB2l6o=;
 b=dHE7/CU/HW3MeP3X+zguuodoBK18F4jrqDX3L/Jc8c1oEC415Ku8scrJ3lNH9cAYTB0/host6usDBtE/UNF64C0eUvKSOmoqtEYejQTe8pdMHZWbSokyeaSxsW1pYyq4Al+iiU2kmJef/IMHmybfw2sne67kSiBuCxaDDWmSRY10vXGfS+gUlvNChNwetyMF4gIOfaomIydHLblp+Hc/9aYa9EjhldayVzAuELDJT34sJu/S7dmFFdhmSUfSq4FJfc3qDa5/SYYvtuu/vp4BdjcI8zOEi0kYeq2kpecPwBo43DKfaVfo7tlXn5lhQqwZcwZwCqs0HBbMXo8uSxZzEQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=Wkze/OsYiRiiGj/wkVo7GoOtDqcT8JNdm9b2IMB2l6o=;
 b=bWAZHEggfJP/qtxX2EPf+XcWd64Hhv82VWiXdQZY7h2X3RWF4xF9oBW3HSL7z6Yf+jZz3K4bTwJJel1AJ+UcMkoPICvXA4+L3ACjyZyqdeGIAIGOMiwGrJvGMSG5VXPfgApftQVCDowgOOmVJk2wAoZUtdUQ7mD9veKFNynzEiMCCoSXlxfTAV+ktdU3Go2Clj4z0HHWOb0qHL5q9KEGP8cQpk73eydLILmWJyUKmOImnViJ7hGwcgwnM4xCiuo1YVWjivns4ltA2SlKV1YK2wlezvaP3WEbSN5uVbRzfeH6i/Unsyqj8B/MmrSse4YaOvaGIMf0eSo9SiQcBYGkew==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <ca7a8bad-4d6f-1da4-b48d-7acbb5db401e@suse.com>
Date: Tue, 17 Oct 2023 09:44: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] x86/amd: Address AMD erratum #1485
Content-Language: en-US
To: Alejandro Vallejo <alejandro.vallejo@cloud.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>, Henry Wang <Henry.Wang@arm.com>,
 Xen-devel <xen-devel@lists.xenproject.org>
References: <20231013153801.188324-1-alejandro.vallejo@cloud.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20231013153801.188324-1-alejandro.vallejo@cloud.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_|AS8PR04MB7877:EE_
X-MS-Office365-Filtering-Correlation-Id: beede205-2241-40fb-06a3-08dbcee4e738
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	3uQJLhLUkdqzgUamIHjuV+stnCRgJj41KDD6jOkY/reF7RbjcnNTE4wr/cMfqIqP+mge5zMIohlQiBs4RFhitzoYqOhUVwqc14C8BHVXSuvM98zR6bmR7myVdEAIgd16OsfOqLhRIWblGo6xBFmbZW14d+jJA1YrGRD0idbLKA5s3KFfhN1y5o0pJ/0vI8Y42wx/60kJadtG+JeuyNoUfRFoOm66aNldTgwbt8uH7WOkrJ577zOHfwqPUqAsNGstEyxhN0XuDVqllYNJCVicsIXl9LX+2/QUBzX1O9QNSdQPLXgAXSl8hxgk6/0mec042GAJfcxr5BO0IwrW79eshd1BopxIR2oHLoiSYACWkiDetmzgCzVMSeENWR0wDkdSvwbW8z5MaEll9ZFrjbFlU+fHgPZdFnBZeVE4jfIh+bH0gLHgLLyxL5X62kngYm+YthjtTGWtcj4OIWn+AwE566HkUv7hzqeIKmkp9qQ+iCTH7IQBgXGdF0O6rHRXavgjDw0k43rQziSPdECAXwsWI7b6S4X2vt0gyugZCe/iWAoA2b1BxcMLD1DFrdELomyoqKZswpN4wrKGRET2zKbh4pzFkcfaHlwhaaotg/2WZlQ5FngM9tqmLb32aLR/wBHIJ0UNoZ1UuCZCvGTSLYTC9g==
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)(396003)(39860400002)(230922051799003)(451199024)(64100799003)(186009)(1800799009)(53546011)(6506007)(5660300002)(2906002)(26005)(36756003)(2616005)(4744005)(38100700002)(86362001)(31696002)(6512007)(6486002)(966005)(478600001)(6916009)(66946007)(54906003)(66476007)(66556008)(41300700001)(316002)(4326008)(8936002)(8676002)(31686004)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?K2lVeGw0dklWRTlNQmpPMUsrRCs4OUhDR3c4d2dHVjFGN3NSOUZ0VGxlbGtr?=
 =?utf-8?B?VzhSbmNDaVZKbFBZQ3VJelNmMDVJSTlwN0RtbjVIWGJIMVpmclByQVJJUmgr?=
 =?utf-8?B?TWx6SEo3em5EczJCUHJzRktRL291bDFLU3BUa0tRVHNPMGZENGJaRW1LS1JH?=
 =?utf-8?B?TXJXWjhKcjRkNU12YmRnc0w1czZpNTJ5TnI4aDN6VFFwU0xFN2FUa0JTdzcv?=
 =?utf-8?B?V2FGOWJHdExwaGVZM21md1IxeVFCaDQwSFZzT2MyQ29HRmpleVBMc0pQazg0?=
 =?utf-8?B?R2dJTHZQL2J4VmNlNEc5TlJDYTJHbzh6RWtYRUlwcDk0RnY5K0NTRlNWaHJ2?=
 =?utf-8?B?SjhKZWZEa3BkMkNZSEIyOCs5cjJ6MnJMM1NKa3VMZWVxZUEwd3RETUg4SGNv?=
 =?utf-8?B?d00vQ3dmcjM2dlAxWUgrdUxCUFpuTU9NT0piK25IQnZ5ejlCd0QyejBSNEsv?=
 =?utf-8?B?RlRvSE1TNTNRQVlrTC9aMkhxYVhMRTQydGJNRFpCU0t5ZGYrTUdQcHcyeW5E?=
 =?utf-8?B?V3NsWU5Xc1Q0cG1mWGRtWUtrMmpTelkxYlFRQyt6QzNUWHQ1MFBFamZoS1ZV?=
 =?utf-8?B?ZWxWNEx6WHpzRFc2bk9vTnNuOVJQMmlEWkFxWXQrd2FML3FVWUtvTjltc3BH?=
 =?utf-8?B?bHh3YmFRT290cnlyS3FkazFaVFRGcEw2T3dZd05Va1BzcDNVVWJKd0lZU3Mv?=
 =?utf-8?B?Qi9jMnVZUTBmeUQ1S2NtUGU3TzE1ZWxibSs4SGJjeTlScTVUOTQxTjd0NDll?=
 =?utf-8?B?UDA5RG0vdkZlU3JyZjh2RkoySmQxT3hnWVFVYkVOV0VCZWRlTi9TNWtpS1VS?=
 =?utf-8?B?WG81S3lqZ1ZpbXlSQXRyMlkrNC9ZaGNyUlF3Mzh5bFBFWGtTMkpnSlRXNjEy?=
 =?utf-8?B?NkFmSHF2S1VidjNQd0h1YlJYZzZXcU0xcVlLNVdDcEkvVGhiNFJCWkdkR2tM?=
 =?utf-8?B?Z3R1dTYvTktXL0ZjMVVaM0N4QnBrd0JkQUdJOUc0U3FDWXZzb2NrdFRpaDNB?=
 =?utf-8?B?UGRsUjB0bHdHRmFZSGZ1V1FCZDBsK2lsK3BIWlpuRktlcWFTMjlWc2tyMHA4?=
 =?utf-8?B?bmhWcGJNM3M1Mmp6VEZxN1g3ci9VV29aOHN4UjVHZTVWRTlMZm92ekNsQVp5?=
 =?utf-8?B?ZG1UbmpkSUh2YTJaNXpjK3dSUFByUCt4VjFCUDFzYWVkR2hxNFBEblM1RUk4?=
 =?utf-8?B?V2dISStMdE5COWdHc0ZQQXBybEFoQWt2cGdsYUtLeVp2SmZqTTVOOUNUSjFx?=
 =?utf-8?B?ZzBqbEphZmlUSlJTMHJabC84ZWdpb1MyZEo2SmtrM1JxZ21ZUnQrSlp4RGZj?=
 =?utf-8?B?NkNEZWpoMEljOHFSMk9tR1ZpU2pwRm1hamNaS3l0SHMzaVdNVVZ1TEVwanEr?=
 =?utf-8?B?a1QxYkZ3emhTM2pKQkcyWDN0QXBsQ04xSkVZNVNvaXhyOU1SbncxODNTSU5S?=
 =?utf-8?B?VGpPWkdXbXRGRE5jNG1GU1QyRlZqbmVaSEQ0RlpybEtYVnVncWFKWFhuZmZw?=
 =?utf-8?B?QUsvMXpPWDBrQVZEQ2RnaWN0TzZIN1NwSzNLRGZwdTFnR1RRZXpwT1UxNHpB?=
 =?utf-8?B?MzMrU1lCY3hEcVdFR0laejR2a0JrTTVOdlh1VngySWtmNXJsU1ZnaHh0OTI0?=
 =?utf-8?B?Ukt3c3JIN2Zub3JWck1TRVRadlNVdlIybG9XTXdxYzJkSkEyUWd2Ui9KSUl3?=
 =?utf-8?B?VHd1SHNXbHFZQlFYTlplV013bkZHWWN6azUzNHZGblg5Ymh4MC8rQ2RaaFVM?=
 =?utf-8?B?V0s3VnBBYkVES3dUNjVQSXNTNkdid0tRS2hGVnM2NjNkOFVWQk5kZFM0a3N6?=
 =?utf-8?B?U1VQQkZIZXBwSk5YcHNIbkxwRjhaeXFKOXNwR2tzTGE2dVMrR3pVN00rYklN?=
 =?utf-8?B?ODdxcVAyUzRmaUk1aTJGRGpUeTIwK3N4a2ZzRG1yVURqMEtMUW1GTEdXUlZQ?=
 =?utf-8?B?ZGpDSnp0bnYwS3FsTS9iR0I0cm11b0VyT1NuZHllRzJ0RjZvR3Y2RjNVR0Y3?=
 =?utf-8?B?ZWJJek9ZWGdESDQzYjduK0VnOUZ5SnZBWVJQZDlCU0VBbFpFYWplbkdzOUU5?=
 =?utf-8?B?c0ZGYjhzS2pVWU81Yk0zZ29ybSsxRjdCemR3b2dJMEgzV0VBSkFkdDJtUUts?=
 =?utf-8?Q?mMlL5ouFweoAoXNa2k5VZEnIA?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: beede205-2241-40fb-06a3-08dbcee4e738
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Oct 2023 07:44:33.1322
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: Dsx9aC5u0y/e2YFgFYu36FMYvfFsRi9pKqu0SyFSrTG5QNjO3ycoSoBucPAqSxs8bAB7ki61aqSr832+vby2rA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB7877

On 13.10.2023 17:38, Alejandro Vallejo wrote:
> Fix adapted off Linux's mailing list:
>   https://lore.kernel.org/lkml/D99589F4-BC5D-430B-87B2-72C20370CF57@exactcode.com/T/#u

Why reference the bug report when there's a proper commit (f454b18e07f5) now?
Plus in any event a short summary of the erratum would help if put right here
(without needing to look up any documents or follow any links).

> --- a/xen/arch/x86/cpu/amd.c
> +++ b/xen/arch/x86/cpu/amd.c
> @@ -1004,6 +1004,28 @@ static void cf_check zen2_disable_c6(void *arg)
>  	wrmsrl(MSR_AMD_CSTATE_CFG, val & mask);
>  }
>  
> +static void amd_check_erratum_1485(void)
> +{
> +	uint64_t val, chickenbit = (1 << 5);

Linux gives the bit a name. Any reason you don't?

Everything else lgtm.

Jan


From xen-devel-bounces@lists.xenproject.org Tue Oct 17 07:50:57 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 17 Oct 2023 07:50:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618085.961354 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qseqp-0006Fv-KI; Tue, 17 Oct 2023 07:50:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618085.961354; Tue, 17 Oct 2023 07: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 1qseqp-0006Fo-HH; Tue, 17 Oct 2023 07:50:51 +0000
Received: by outflank-mailman (input) for mailman id 618085;
 Tue, 17 Oct 2023 07: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=sbBI=F7=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qseqn-0006Fi-I8
 for xen-devel@lists.xenproject.org; Tue, 17 Oct 2023 07:50:49 +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 e161751b-6cc1-11ee-9b0e-b553b5be7939;
 Tue, 17 Oct 2023 09:50:46 +0200 (CEST)
Received: by mail-wm1-x330.google.com with SMTP id
 5b1f17b1804b1-408002b5b9fso1501945e9.3
 for <xen-devel@lists.xenproject.org>; Tue, 17 Oct 2023 00:50:47 -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
 c9-20020a05600c0ac900b004068de50c64sm1119758wmr.46.2023.10.17.00.50.45
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 17 Oct 2023 00:50: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: e161751b-6cc1-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1697529046; x=1698133846; 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=c4zthoi5w/HWjFfQYHvTAcQFznol6KOTUn6i1rW0S+c=;
        b=uAvS4nefET0NBY8VAa9PU9ThOiC2axMVVShidnuxkPO1DE9fL9ZyiRYc3mN+x2KLVf
         R8ceaKrO6NAcKBmJ2SSjxBfB0WpmB+gV+qjKYO5PxaGTvHJvmrZgD7nWBr3R0GxYF8ZJ
         WsXg1QVpX8lDPGjOgQUuR6JKzOcIhhgUxoUtY=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697529046; x=1698133846;
        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=c4zthoi5w/HWjFfQYHvTAcQFznol6KOTUn6i1rW0S+c=;
        b=pH8i1+8gUr8XPbKjcWnVGa/qOcg0LxyKi0wan5nujO+OCWqCoPc3D7o41aaSbEBU4X
         czFntScgQrT8ZvBG9KdsMCUuAodbwnOZF3wUhyUBgcKLec5JG5AYByUGGXGGyCp/C0k0
         EjqEDHe1lIDgWVQF6xplNibokNE1mr7a/1ZfogTSQ7i1UjWS0BtVS5k1nlcwZmgd4Haw
         CSg8rR4h0nW0H1oIN2kwn3tt4ebDNj7IEwpnCvYptthYbl55aTzA9lMpbcdjKZmJChqm
         bjnX30z8i06euNCb+OsKnXoapeHx5/CjnyaWS85IEXp33/nk680Juz8MKnnnf1JDEpla
         m/BQ==
X-Gm-Message-State: AOJu0YxcCpxV7ILYUTvxYAH426JLJxSTrpY2LQ5X9yRAqI3nEN+g5T/h
	DU5NxcnVIvY5alad/ouvaarOQw==
X-Google-Smtp-Source: AGHT+IGDUXWV6iH4Sn+Zm4PxB9ev5iAP7ti3jxnpyhED59VyDAT4zN7y5dLMMCL+Rl828vnkNOdEGw==
X-Received: by 2002:a05:600c:1d96:b0:407:5b54:bb13 with SMTP id p22-20020a05600c1d9600b004075b54bb13mr1084990wms.37.1697529046380;
        Tue, 17 Oct 2023 00:50:46 -0700 (PDT)
Content-Type: multipart/alternative;
 boundary="------------9lT9NO8JjQ8S0V7aohEOKWEr"
Message-ID: <ac366b7c-497f-4a9e-873d-a961970c4ad8@citrix.com>
Date: Tue, 17 Oct 2023 08:50:45 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH v3] x86/amd: Address AMD erratum #1485
Content-Language: en-GB
To: Jan Beulich <jbeulich@suse.com>,
 Alejandro Vallejo <alejandro.vallejo@cloud.com>
Cc: =?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 <xen-devel@lists.xenproject.org>
References: <20231013153801.188324-1-alejandro.vallejo@cloud.com>
 <ca7a8bad-4d6f-1da4-b48d-7acbb5db401e@suse.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: <ca7a8bad-4d6f-1da4-b48d-7acbb5db401e@suse.com>

This is a multi-part message in MIME format.
--------------9lT9NO8JjQ8S0V7aohEOKWEr
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 17/10/2023 8:44 am, Jan Beulich wrote:
> On 13.10.2023 17:38, Alejandro Vallejo wrote:
>> Fix adapted off Linux's mailing list:
>>   https://lore.kernel.org/lkml/D99589F4-BC5D-430B-87B2-72C20370CF57@exactcode.com/T/#u
> Why reference the bug report when there's a proper commit (f454b18e07f5) now?
> Plus in any event a short summary of the erratum would help if put right here
> (without needing to look up any documents or follow any links).

That is not public information yet.  The erratum number alone is the
best we can do at this juncture.
>> --- a/xen/arch/x86/cpu/amd.c
>> +++ b/xen/arch/x86/cpu/amd.c
>> @@ -1004,6 +1004,28 @@ static void cf_check zen2_disable_c6(void *arg)
>>  	wrmsrl(MSR_AMD_CSTATE_CFG, val & mask);
>>  }
>>  
>> +static void amd_check_erratum_1485(void)
>> +{
>> +	uint64_t val, chickenbit = (1 << 5);
> Linux gives the bit a name. Any reason you don't?

There are multiple different names depending on where you look, and none
are particularly relevant here.

~Andrew
--------------9lT9NO8JjQ8S0V7aohEOKWEr
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: 8bit

<!DOCTYPE html>
<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body>
    <div class="moz-cite-prefix">On 17/10/2023 8:44 am, Jan Beulich
      wrote:<br>
    </div>
    <blockquote type="cite"
      cite="mid:ca7a8bad-4d6f-1da4-b48d-7acbb5db401e@suse.com">
      <pre class="moz-quote-pre" wrap="">On 13.10.2023 17:38, Alejandro Vallejo wrote:
</pre>
      <blockquote type="cite">
        <pre class="moz-quote-pre" wrap="">Fix adapted off Linux's mailing list:
  <a class="moz-txt-link-freetext" href="https://lore.kernel.org/lkml/D99589F4-BC5D-430B-87B2-72C20370CF57@exactcode.com/T/#u">https://lore.kernel.org/lkml/D99589F4-BC5D-430B-87B2-72C20370CF57@exactcode.com/T/#u</a>
</pre>
      </blockquote>
      <pre class="moz-quote-pre" wrap="">
Why reference the bug report when there's a proper commit (f454b18e07f5) now?
Plus in any event a short summary of the erratum would help if put right here
(without needing to look up any documents or follow any links).</pre>
    </blockquote>
    <br>
    That is not public information yet.  The erratum number alone is the
    best we can do at this juncture.<br>
    <span style="white-space: pre-wrap">

</span>
    <blockquote type="cite"
      cite="mid:ca7a8bad-4d6f-1da4-b48d-7acbb5db401e@suse.com">
      <blockquote type="cite">
        <pre class="moz-quote-pre" wrap="">--- a/xen/arch/x86/cpu/amd.c
+++ b/xen/arch/x86/cpu/amd.c
@@ -1004,6 +1004,28 @@ static void cf_check zen2_disable_c6(void *arg)
 	wrmsrl(MSR_AMD_CSTATE_CFG, val &amp; mask);
 }
 
+static void amd_check_erratum_1485(void)
+{
+	uint64_t val, chickenbit = (1 &lt;&lt; 5);
</pre>
      </blockquote>
      <pre class="moz-quote-pre" wrap="">
Linux gives the bit a name. Any reason you don't?</pre>
    </blockquote>
    <br>
    There are multiple different names depending on where you look, and
    none are particularly relevant here.<br>
    <br>
    ~Andrew<br>
  </body>
</html>

--------------9lT9NO8JjQ8S0V7aohEOKWEr--


From xen-devel-bounces@lists.xenproject.org Tue Oct 17 07:55:35 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 17 Oct 2023 07:55:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618091.961364 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsevM-00083H-83; Tue, 17 Oct 2023 07:55:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618091.961364; Tue, 17 Oct 2023 07: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 1qsevM-00083A-5P; Tue, 17 Oct 2023 07:55:32 +0000
Received: by outflank-mailman (input) for mailman id 618091;
 Tue, 17 Oct 2023 07:55: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=ibp0=F7=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qsevL-000834-Ok
 for xen-devel@lists.xenproject.org; Tue, 17 Oct 2023 07:55:31 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 (mail-am6eur05on20617.outbound.protection.outlook.com
 [2a01:111:f400:7e1b::617])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 8acd0e59-6cc2-11ee-98d4-6d05b1d4d9a1;
 Tue, 17 Oct 2023 09:55:30 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM9PR04MB8195.eurprd04.prod.outlook.com (2603:10a6:20b:3b7::21)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.36; Tue, 17 Oct
 2023 07:55:27 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%6]) with mapi id 15.20.6886.034; Tue, 17 Oct 2023
 07: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: 8acd0e59-6cc2-11ee-98d4-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=QLXQ2xCaKZQOyhgIbYAM6WnE6H+eeHvb0puMB8nWNzr61b15CARRTs63uU6Pivi/Aex2TjUqdB/RKAS6lYy5Z0ir4XTQ2ehgrdq4SukAsW207EjKU4gY/GvAW0kgPIX4W1DwK5rNkgK+rvM4w4Z0GG3bo9M/67gsh2cZC4adF4YeFs4UCAx2WMdaFpl8PuLpd5zVTwWKk8q+kJV1rYo8K53zHWTQkArFKyuxBfBGVR3pmIQJBfOiihmmc+wn+Q5CzfnaJWufVMBpyL2c6iboFn5IK2TnA1qcnLJwTQW/OUHwyyA17XdqXeNmdwkQe1dQIX9IZuMAra/I9SPpsrFfWg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=trJuyNf7n8cKQRPlwXajr0ncixVPL+MpA4VljwB7Iuk=;
 b=e8k9v+MsD8Goc4ed8/6Ow7GVasrE7Sx3qVZDCcJmsuOG8G8Lg+2FvliZYB7nGz2QK16X+JUJk2oYWUqwh5AksZvgUkHa551TFa5dDzxgw9BfLqUzd41BV6rYiBoLWggASrdtqQ91/5MWz1vRUsaeDAySkeSUSmRJsSCkEjN+PdjTVDkYPi/yDE4QZf4ET/2tPvB4996RDmU5ECMeg5B45rCTUEBea2y+PaKpnbvqJFw2SpwODFhQFbFQO5BNyxtqHWGmPQPEEugM7PE3IoFcsPXOWUAHKuzgE+1iMVFyyjfSjq+FXOtXK2Znhz6wmhd9ymwwe9Y86D1EcV4B1D+uhw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=trJuyNf7n8cKQRPlwXajr0ncixVPL+MpA4VljwB7Iuk=;
 b=zij8/F3HN0ruyVy62F06SD8KsReJQlW5WWmw7SJoRRstJA9cZdVMmmqaxLK2o3A4dJFiH4iDYr4M+H48uBPbc3ye4DTSZGuMjulPHql1rf0y+duatPWVMiY4qGblrhhO/EYO7q4IovNUuImWTjUajgSuxMKll8NNRfd57JTSNUcOPOILgTJ97mHC9gU/Q/HSIyTMue9Nxs81BoJDg45aKFCjChwv2z8C5eoJe5Q/5Lu6Eq77K6TYpy/4KIzpWHj06toY1Lke5XZrrveB3E/dzu2RuwMF9scSr/qtZHctQnkcEjFpurPVwm/yHeGH11lKYMZEanDLcGEBW0wXuJBbLg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <af22de04-f29e-9c13-b618-54cc867f0f81@suse.com>
Date: Tue, 17 Oct 2023 09: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 v8 1/4] x86/microcode: WARN->INFO for the "no ucode
 loading" log message
Content-Language: en-US
To: Alejandro Vallejo <alejandro.vallejo@cloud.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>, Xen-devel <xen-devel@lists.xenproject.org>
References: <20230830155326.10199-1-alejandro.vallejo@cloud.com>
 <20230830155326.10199-2-alejandro.vallejo@cloud.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20230830155326.10199-2-alejandro.vallejo@cloud.com>
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_|AM9PR04MB8195:EE_
X-MS-Office365-Filtering-Correlation-Id: 395eac6c-a317-4f7d-560f-08dbcee66d5b
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	P+SOjbnOkyCXzeQ81xS0FSsVsrSBKDORfOC282r4oTrWQbp6c+Ddm7vYTE4+96JS19VhtfcmgzW7DSeVL++goerzwfitnmQZz2nerPwAC1R066WW1zv+t3iXqfI5xBr84hROqjobYvcy4BRbgHChRcaYqrLdwSAuxRA1a5s18z319lZYDS/kTY1GoAczNGcma22z/cIhZn9V4J5XyjVtZ6rS8IRczjVgtnYlPrZKshddVRi3oeEcoLCgLJzeeiN6kz2JVHB1SxO/3q/ylT733DxuWy/7kKbl4iBN9ADvhyJw4nlCyHuBmYRAaA9H+jI+rMg3sUHQJ+DdBOaFEbLE5PPoTZfe3oaByqNRK7RfwZ6dJ/vW6E0JqeicxcFzvXexwhlFojYaAYvpgUhI9eMLRTS+ZadxLIjYrmAeLl7e3G+JToQ7b3RJMRtBAvdx1T01XZdUgbdFmUSzbuOtO4dk62h8fY/6Jhl+v0uvZKhNg5wUwJvA8xIz2CEK66OGkWc3MK/rtUEtrY1SIdQVJZTu4YHuPVBOIGCohIo2yqbVj/VsXkGmWyGrc2r10JXJyihYsYEPjM4333vu/vfKF7RBFiRN1w+wKiu1BftMJwCpMDdFY3BUfX4DNKgKeIQFw97bLu3gmwAS8O3qCMjziemSpw==
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)(39860400002)(346002)(396003)(230922051799003)(64100799003)(451199024)(186009)(1800799009)(6506007)(31686004)(478600001)(6486002)(66556008)(66946007)(66476007)(54906003)(6916009)(83380400001)(86362001)(38100700002)(31696002)(2616005)(6512007)(26005)(53546011)(41300700001)(36756003)(5660300002)(8936002)(4326008)(316002)(2906002)(4744005)(8676002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?M1JOVDJGVDZMbS9OVkxXMkVBNDFHenRJUHVCL2Vwa3Q2T1NsbWtqUy9ZSWtM?=
 =?utf-8?B?cUwrNlkxbVVNcTRhVGRNaHFmU2diaXI3NUkyQjhFbFlBaktDZnI2aHNWdXV4?=
 =?utf-8?B?d1d0M01BaEc2SW5uZkNIN2hZM0ZLR0h2VWttN0d6UVN2Q2lGcmlJTHllK1B6?=
 =?utf-8?B?TXNRL3ZvNEdYdEhobjFYU0lPd2hGbDFUS2J1cTRkcHpwbFYrRE9xd0RNS3NV?=
 =?utf-8?B?OE1rdjVBNDlkS3psVVBqQmVqWjYwMU9yRWw0cHA0Z2xJS1NEYitWK3BiREt0?=
 =?utf-8?B?eHpQR1RVNU1rOHlVQ04zVm5YRHVENGZYaWdsZFl4aGUzQ3NZa0RsREdtUXpI?=
 =?utf-8?B?amlYRXVEaUJZVnBZRHFuMnQ5ZlZwaUh3RDdmVEE2V0RuTXgvekN4L0RQTGZM?=
 =?utf-8?B?WEcyeC9yOHQ3ZURVd1A4OEFiaVpLaFNRSWhPOFRybGhUVERodEtMZFJZaFdJ?=
 =?utf-8?B?VytXV3JGVmR6K285bER5aFNsZXNhV0xjSEpSQmk3NU1IWEdqK0FIZU53VXIy?=
 =?utf-8?B?SENjRDZLbHM4eXhBcG9WVE96cC80Z3prMUdOU2g4WFNQRVNCOXhxOXVBSDFK?=
 =?utf-8?B?Yitnc1ZWNkoreTY3NWErSGQ3enVJZ3lMT015bXQ2bGhDdE9ULy9PQWFqZ1Iw?=
 =?utf-8?B?MUFXV2lXS1RnRVBubXJUd29Ha0ZLU2I4T25GT1dRY3duNWQ2STRSSHBkZTJL?=
 =?utf-8?B?dWFxdEV3WnMwYkdJcUljZVhsOHhoLzFXcjROSDFCTU85NTl3UHhTQmdmUGRL?=
 =?utf-8?B?a1lDNTlSUGk0dS9oanpVTEZGZXByaEtzMjNaSlJCWERjSGpyUWo4VzBINmtM?=
 =?utf-8?B?Mmc5TURxcHVlZWllTzZuUXhkOGhnV1FVMW1QOXpScWR1d3o4NHUyeVRwQVFO?=
 =?utf-8?B?MjhsQ0J1QjhCa3JpVDY3c0ZMQi9xOUhhcUhWV1BlZU9HMko3TnVSZ3NuQTNF?=
 =?utf-8?B?Y1hRRzRCQ1VRUVh1R243b0lwOVora29WS1lhV0NHTUlDaDFpelNrVy9yRkVY?=
 =?utf-8?B?ekFLSGJzUE5xczlUcVpkc2M3OU9VU09YbU1CVGdPbE9zazAyT3pIZVZKRzIz?=
 =?utf-8?B?QlpSVlk1T05wSk5NcldzQW14RzcrOWhDd1JKUDQrcktlc3pCejRraThHcVlv?=
 =?utf-8?B?SUw0VC9razJsM0hmZDBFYWp3RmxKWU1NaURtRDlPZlVJb1dXSlgyUjlldTY0?=
 =?utf-8?B?eCtQcXNveTNXNWtzLzYvR1dBUERHZW9iKzA4UXY1TWp2b2U4eTZWVTBJL1FP?=
 =?utf-8?B?c0hoMXFkdkp1NUVNTFhhc0h6ckM2Y3RZekFCMEFIQ0xkT1BVZFJFS29mdGQx?=
 =?utf-8?B?SHpSTGE1MHFvUDFLSVZraG1JelRKbDMwVS94ZVRKTUtybHM0bGJMYlY4dElx?=
 =?utf-8?B?SEExeHpxOVluYnowUFBMNi9IbWw3SC85eWs3d3YyVFdjNlJNbzZtcWprWXBI?=
 =?utf-8?B?aUdmMjlMNGxaWVQ2VGpBUUh5Y2d6N3FSaU5XMklmYXZuSFhzQzJKSFhtbGJ0?=
 =?utf-8?B?ekRPcGFwb1RoQi9QZUtBcTM5cXVrNEFySVJSWkdadzhrTHNaRk1Vc1FsVHBW?=
 =?utf-8?B?TnlDVThuenNBb29tWVdJTWRHTUJXUE9VTzcySDRlUys2YituSnREOEZMc2hH?=
 =?utf-8?B?d1lqRTI2TjJxWFh3KzhhaG5PWTM3Um5jdnRNVjRJOXkrYzQrUGFXY0RwV0px?=
 =?utf-8?B?dFRLNE1mNGFSRnFkNFNmcWtQRXY1ZEZlNFBCVGR5azJDTEF5SFJSNld1NEY4?=
 =?utf-8?B?L3R4bFE2MWlFRExJRXdHQng4RHpEcm9xZGlMY24wQXJ5SWVub3Ztb3NHcWNR?=
 =?utf-8?B?d0hmWE1Tc0g4NkxSUFVySkpTeStvaFoySm9nVC9weWcvRUZrcHNKUHM3WkJN?=
 =?utf-8?B?c3orTmg0Q0NnajlhUGhVZ3pEVk5GZEZMOG5sbkxsRzFWT1I1ak5ETHFvNGJD?=
 =?utf-8?B?NVlxYi9jT3hPYllPdG44eGZGR25aTXd6YXVWeWFuTkk3MVFnak9JZG0xaFl0?=
 =?utf-8?B?THk0aldmUDF1S2pVV0V6OVhDT1N0RnpXancwTmdlSU44a3Q5aERPRVdkQzVp?=
 =?utf-8?B?RlFKYTIxRFNua3QyN0tmeUMyNzdrc2dQYkFmZlVVeVRFcGtsOUxiZlI1SGRk?=
 =?utf-8?Q?vD7oI//9P9jqnA7dVWrGONtUO?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 395eac6c-a317-4f7d-560f-08dbcee66d5b
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Oct 2023 07:55:27.7201
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: vYZTjq9kGMltHLbfZY3vrn9ZB+unnA1DL4L6pH1uA4Wyp5YftfKb8rZo0HFa+XSteDpBPcOtNUvhN7XRE2E0jA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR04MB8195

On 30.08.2023 17:53, Alejandro Vallejo wrote:
> Currently there's a printk statement triggered when no ucode loading
> facilities are discovered. This statement should have severity INFO rather
> than WARNING because it's not reporting anything wrong. Warnings ought
> to be reserved for recoverable system errors.
> 
> Signed-off-by: Alejandro Vallejo <alejandro.vallejo@cloud.com>

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




From xen-devel-bounces@lists.xenproject.org Tue Oct 17 08:12:36 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 17 Oct 2023 08:12:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618100.961375 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsfBe-0003La-37; Tue, 17 Oct 2023 08:12:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618100.961375; Tue, 17 Oct 2023 08:12: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 1qsfBe-0003LT-0F; Tue, 17 Oct 2023 08:12:22 +0000
Received: by outflank-mailman (input) for mailman id 618100;
 Tue, 17 Oct 2023 08:12: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=tHSl=F7=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qsfBc-0003LN-M0
 for xen-devel@lists.xenproject.org; Tue, 17 Oct 2023 08:12:20 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id e3c098d7-6cc4-11ee-98d4-6d05b1d4d9a1;
 Tue, 17 Oct 2023 10:12:18 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id 36BD24EE0737;
 Tue, 17 Oct 2023 10:12: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: e3c098d7-6cc4-11ee-98d4-6d05b1d4d9a1
MIME-Version: 1.0
Date: Tue, 17 Oct 2023 10:12:18 +0200
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: Roberto Bagnara <roberto.bagnara@bugseng.com>, sstabellini@kernel.org,
 michal.orzel@amd.com, xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com,
 consulting@bugseng.com, andrew.cooper3@citrix.com, roger.pau@citrix.com, Wei
 Liu <wl@xen.org>, xen-devel@lists.xenproject.org
Subject: Re: [XEN PATCH][for-next v2 6/8] x86/mce: Move MC_NCLASSES into the
 enum mctelem_class
In-Reply-To: <172b1f70-bffb-125f-3181-38ce5989daec@suse.com>
References: <cover.1697123806.git.nicola.vetrini@bugseng.com>
 <6622a2ec7079f86b73ae420e1e840d3d35ffb3a0.1697123806.git.nicola.vetrini@bugseng.com>
 <f1f0fc3c-0eb2-81d6-132c-d6b2ed2d7308@suse.com>
 <d417da49a926fec385c95774035dc4cb@bugseng.com>
 <172b1f70-bffb-125f-3181-38ce5989daec@suse.com>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <831edadc894659a79f7689dfe384ba97@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 17/10/2023 09:02, Jan Beulich wrote:
> On 16.10.2023 18:05, Nicola Vetrini wrote:
>> On 16/10/2023 17:45, Jan Beulich wrote:
>>> On 12.10.2023 17:28, Nicola Vetrini wrote:
>>>> The definition of MC_NCLASSES contained a violation of MISRA C:2012
>>>> Rule 10.1, therefore by moving it as an enumeration constant 
>>>> resolves
>>>> the
>>>> violation and makes it more resilient to possible additions to that
>>>> enum.
>>> 
>>> And using an enumerator as array dimension specifier is okay for 
>>> Misra?
>>> That would be odd when elsewhere named enums are treated specially.
>> 
>> Yes, the array subscript operator is one of the few places where an 
>> enum
>> can be used as
>> an operand (also because negative values wouldn't compile), as opposed
>> to mixing them
>> with ordinary integers.
> 
> When saying "odd" I didn't even think of negative values. May I 
> therefore
> ask for the reasoning of why this specific case is deemed non-risky? To
> me there looks to be a fair risk of creating undersized arrays, leading
> to out-of-bounds accesses.
> 
> Jan

Two reasons: MC_NCLASSES is the last value of the enum, and a pattern 
I've spot in various
other places in Xen, so I assumed it was a fairly common pattern for the 
community.
The other reason is that since the value of an enum constant can be 
derived statically, there
is little risk of it being the wrong value, because no arithmetic is 
done on it in its use
as an array's size (and besides, the enum changed the last time ~15 
years ago, so I think
it's unlikely to change much in the near future).

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


From xen-devel-bounces@lists.xenproject.org Tue Oct 17 08:17:01 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 17 Oct 2023 08:17:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618117.961397 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsfG6-0005wR-TL; Tue, 17 Oct 2023 08:16:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618117.961397; Tue, 17 Oct 2023 08:16: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 1qsfG6-0005wK-Qn; Tue, 17 Oct 2023 08:16:58 +0000
Received: by outflank-mailman (input) for mailman id 618117;
 Tue, 17 Oct 2023 08:16: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=tHSl=F7=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qsfG5-0005mo-PG
 for xen-devel@lists.xenproject.org; Tue, 17 Oct 2023 08:16:57 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 89c6f4b8-6cc5-11ee-98d4-6d05b1d4d9a1;
 Tue, 17 Oct 2023 10:16:57 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id E464B4EE0737;
 Tue, 17 Oct 2023 10:16: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: 89c6f4b8-6cc5-11ee-98d4-6d05b1d4d9a1
MIME-Version: 1.0
Date: Tue, 17 Oct 2023 10:16:56 +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.cooper3@citrix.com, roger.pau@citrix.com, Simone Ballarin
 <simone.ballarin@bugseng.com>, Doug Goldstein <cardoe@cardoe.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][for-4.19 v2 1/1] xen: introduce a deviation for Rule
 11.9
In-Reply-To: <b2048df4-ec76-f91f-1f17-fcd45f295281@suse.com>
References: <cover.1696948320.git.nicola.vetrini@bugseng.com>
 <c684c36402e6740472fa91d73436ca5790e5e109.1696948320.git.nicola.vetrini@bugseng.com>
 <7be93272-dc82-06e0-726d-030d33aee5e1@suse.com>
 <66e27d108e856fcf69f78652daae6447@bugseng.com>
 <b2048df4-ec76-f91f-1f17-fcd45f295281@suse.com>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <c08559530413426ea7d06bc0921f2d85@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 17/10/2023 08:51, Jan Beulich wrote:
> On 16.10.2023 18:49, Nicola Vetrini wrote:
>> On 16/10/2023 15:43, Jan Beulich wrote:
>>> On 11.10.2023 14:46, Nicola Vetrini wrote:
>>>> --- a/xen/include/xen/compiler.h
>>>> +++ b/xen/include/xen/compiler.h
>>>> @@ -109,13 +109,16 @@
>>>> 
>>>>  #define offsetof(a,b) __builtin_offsetof(a,b)
>>>> 
>>>> +/* Access the field of structure type, without defining a local
>>>> variable */
>>>> +#define access_field(type, member) (((type *)NULL)->member)
>>> 
>>> This is not a field access, so I consider the macro misnamed. 
>>> Question
>>> is
>>> whether such a helper macro is needed in the first place.
>>> 
>>>> +#define typeof_field(type, member) typeof(access_field(type, 
>>>> member))
>>> 
>>> If this needs adding, it wants to come ...
>>> 
>>>>  /**
>>>>   * sizeof_field(TYPE, MEMBER)
>>>>   *
>>>>   * @TYPE: The structure containing the field of interest
>>>>   * @MEMBER: The field to return the size of
>>>>   */
>>>> -#define sizeof_field(TYPE, MEMBER) sizeof((((TYPE *)0)->MEMBER))
>>>> +#define sizeof_field(TYPE, MEMBER) sizeof(access_field(TYPE, 
>>>> MEMBER))
>>> 
>>> ... with a commend similar as this one has. (Or the commend could be
>>> slightly altered to cover both).
>>> 
>> 
>> I added access_field since it's possibly useful on its own in the
>> future,
>> but that may not be the case. Not a real field access, perhaps a
>> fake_access_field?
> 
> I don't like this either, I'm afraid: This isn't a fake access. Maybe
> field_of() or field_of_type()? Yet at this point I'd still prefer for
> this to not be a separate macro in the first place.
> 
> Jan

Ok, no problem.

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


From xen-devel-bounces@lists.xenproject.org Tue Oct 17 08:26:45 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 17 Oct 2023 08:26:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618130.961408 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsfPT-0000HT-PR; Tue, 17 Oct 2023 08:26:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618130.961408; Tue, 17 Oct 2023 08: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 1qsfPT-0000HM-M0; Tue, 17 Oct 2023 08:26:39 +0000
Received: by outflank-mailman (input) for mailman id 618130;
 Tue, 17 Oct 2023 08:26: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=ibp0=F7=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qsfPS-0000HG-I5
 for xen-devel@lists.xenproject.org; Tue, 17 Oct 2023 08:26:38 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur05on20616.outbound.protection.outlook.com
 [2a01:111:f400:7d00::616])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id e27e5605-6cc6-11ee-9b0e-b553b5be7939;
 Tue, 17 Oct 2023 10:26:35 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM8PR04MB7844.eurprd04.prod.outlook.com (2603:10a6:20b:236::14)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.21; Tue, 17 Oct
 2023 08:26:26 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%6]) with mapi id 15.20.6886.034; Tue, 17 Oct 2023
 08:26: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: e27e5605-6cc6-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=gIdfeU0OJyg31wdf8bUtDc3BLC37QOJ0yM6WdZQV8AW+zRjUt2FFJFPviAP6aZhaQJWhsn5Y9/kw+uAVGZ+JPSgTurJ8AVrpLaHTI6qBnw6HDRLW3KRiMh7WrhIAlFn41C2YiJJinN/qf9irHP49+aSSO4ckKozF2CdlKqMj7gBEuX3rcVTsMhjMdZULQx+n2XklbFEFTbvzxjRuia7m2PWfqrnjZQ2w/KRYWXDcgsU5QRNIGi43cozETGXUFcJzSggppSpSo+J/X8OM9D9J3POHoHuJORSxNfy/n0aR6plgJ3Udf26r07XcLvLtSQchRK4dNTjf7uv8sYWEv3qG/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=E5owAHsH02mEG9Pn1Q8DiJ+GrtJZuEr0uo6ZXpXZ2Ss=;
 b=KqaL/u+6q8j310RwvrGCZ9HhipafT75CnPrkML8PxFVlzf3CX0YLHtbN4iaNXOh5jPpG5KButksQQNYMPuchvtLoRkJtQKw63CsHGo3jEc8QbiQQJtneAfF+TqPbMkGrCEOMrfq0Sc9FR4zLx+9aYHg1MZaUo5yY4kpNT3z/BPedi5OOrCySNrAEww/z5hpsBx6r1QeIGSco7O3zmPKkFAo7+SeR0s5nFb71Bl7edJ7zV7nffVSP8sHjIHdD2mLMUr2Rk2mW/ITmCsF8sQPcm/kPFQAolR2inqjRXG7328799TP2mXsthzuwbQy4hgGTK144PT5m4lhnD2OPZTXVeQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=E5owAHsH02mEG9Pn1Q8DiJ+GrtJZuEr0uo6ZXpXZ2Ss=;
 b=XAhEE/siumP7U89nF+pPHlZ+ALrooI2TaK/9oJkU1YSnqaSvQyF23WcQX6rBtEf19OBjIhiVJvFlBrd4KPuvLVC4e6C45LPsh65xd8fNYUmqHwPiD+vIwggJLgBjhefOxVtlT7adxg403IXTdEY56HRlWhMj0z6UCsOnalKGrQoM8ruA5pdDtUSDy74Yjfu3Qhn0X8CRu3zfqabpS5J25PWlG422uxvfIfOjZxd6Eeeqmc7iUtGDeiGVu7vCvgHQBYPxuaUaOe2Af5nN7IjFFmEdgAHTih98Xxy9TSjy7SxDV199eNx5hDCvZAYtiuEa1j89y0FTqmPBuZRR4qFu8g==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <59692ac7-8b68-5913-8e51-0a68feb2a1bc@suse.com>
Date: Tue, 17 Oct 2023 10:26: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 PATCH][for-next v2 6/8] x86/mce: Move MC_NCLASSES into the
 enum mctelem_class
Content-Language: en-US
To: Nicola Vetrini <nicola.vetrini@bugseng.com>
Cc: Roberto Bagnara <roberto.bagnara@bugseng.com>, sstabellini@kernel.org,
 michal.orzel@amd.com, xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com,
 consulting@bugseng.com, andrew.cooper3@citrix.com, roger.pau@citrix.com,
 Wei Liu <wl@xen.org>, xen-devel@lists.xenproject.org
References: <cover.1697123806.git.nicola.vetrini@bugseng.com>
 <6622a2ec7079f86b73ae420e1e840d3d35ffb3a0.1697123806.git.nicola.vetrini@bugseng.com>
 <f1f0fc3c-0eb2-81d6-132c-d6b2ed2d7308@suse.com>
 <d417da49a926fec385c95774035dc4cb@bugseng.com>
 <172b1f70-bffb-125f-3181-38ce5989daec@suse.com>
 <831edadc894659a79f7689dfe384ba97@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <831edadc894659a79f7689dfe384ba97@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_|AM8PR04MB7844:EE_
X-MS-Office365-Filtering-Correlation-Id: 20edcc63-8dff-46b9-d16d-08dbceeac14b
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	PDkYBt2v6fMNDGVNsdcuZfIHWh7vdEOSmNI1gNCjGiVy4qgEBrCAeW5qn0dilFY+2eaNkBU2TDSUPAmwsKEvw842RdC2Z2QzEMYHctFETvV1rhYqX99Zog6sWOiIWqMcrxzPeZeep+y2UmDYyHA3k/8rkYkXIQH9OhKNw6UEoYxqQGC/0ugrQIwzmU0Hp3i71vE6EgqMv2j3emZ/Yd7U0+QKsZZEAg6OEj/RAhCk52xdpEpvDDY5aNOwR+WXy1odc5+z04SBv58gJ5MSRsVW6dT1se+/ZnbRLwDcpOnHvNQZlSNphtlQ+mtDeeIW7y00FrQbiiMjDZFsfPpcLtIrFPWSnhmvaYioHYFR8yxNTo287YV+YAuGSbrBRcZIs0QSG3ojQ8zGvwGupGZlf+FqUmh8dGRJ2S3IpyK3+2WsN8os2Fd65so9FrqXZXYoLFCKLsNgDKZlr6QPqszrCkFTlkyxg+sRM5PUhbApOQ1AZIpHJFwjy8j+DNyVaJHwUdwo2Tbh3deD0EB4IAnMz3Cu2URntX0Pg+GzATnmyTs50gl7R/1JFymo83JCTEfFEo1enfmR6xGPClPhZPh45Gj+snl0ztUIYIyky1vSfClwghgaFt5BhUcSjhaBTn3o9bmPl9VtlAO0Nbh3IRDhn0iSAQ==
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)(366004)(396003)(346002)(376002)(230922051799003)(186009)(1800799009)(64100799003)(451199024)(478600001)(6486002)(66556008)(66476007)(316002)(6916009)(54906003)(66946007)(83380400001)(26005)(2616005)(31696002)(86362001)(36756003)(38100700002)(6506007)(53546011)(31686004)(2906002)(7416002)(6512007)(41300700001)(5660300002)(8936002)(8676002)(4326008)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?TFBEbHJWVlZJOUUwWWZNVHdjZnlZbWc3VnpXVlFyWEkzcHZERXZ2ZTlFN3ov?=
 =?utf-8?B?Y2I1cGZ4c2dKeHkxeFJyL1pvZ0ZpYm5KL0NQY3pkRHM0UTRGTTdoWnRRZDI0?=
 =?utf-8?B?UUlyRnpFUHZxQ0JwM0JiTnREajdwRVA3dHBxSlMrTWJFYXFEMkkzY3A4Tmtk?=
 =?utf-8?B?L0haUmQ2dm4vdkwwR20rdGhYSDB4VW5VYVpSNUh1YlQ1aHNCK0NKQWw5Y295?=
 =?utf-8?B?enl1V01VOEFBeTdLM3JxakxUWlRrUXFVMFE4eWlKQXl1ODRTYkFqYUlCU0lN?=
 =?utf-8?B?U2ExKzZKWnZWSG9EUDc4ZlMrUE1Hc0sxQ20zMXE1Q3NSR243L3BHa1VUUmwz?=
 =?utf-8?B?YTNHRHZndERObjJXUVhGRkhGOXFQN0FNeVJIcW5zSXFJaHlGU2l3dWVKUU1m?=
 =?utf-8?B?QWdUTXhWQko4UldtVld1YWg4OGFhSjBZVld1RjFGZElyQ3pXYVNhNHlrcVBj?=
 =?utf-8?B?Z3JScHRJTEQ5K0gvSlRvY0kxQ1hXN0R3NTBsZGoxWXRkSEQ3UVhPdHBFc1Fo?=
 =?utf-8?B?TkxHcndtWU1oUWJ4TldvTUdUR1hVUjdOaTNyVEFBdlRkM2FjZTlrTTRGQnk4?=
 =?utf-8?B?TXJIekpqbTdEeXlnalJZeTBGU3N4VkdYbFNFcU9KV0xwVHhkQkNCZkdIUVZn?=
 =?utf-8?B?K1owVk1wWGtXK0pBS2xHdnBCSFA0UkgxVkFlUmxoRWdqQUZYQWk4TGs0QjlQ?=
 =?utf-8?B?NkR2bWUzbVRxbEs4Z1RsbGF2ZCtlQnJnS1RKTm8rQ2ozZWxwMVFscitraXp5?=
 =?utf-8?B?Mm1vdU0vS2ExbmtmcXNnRE90OTZYbTg4QnpFVGJSMUpocGhsaUFuRDYweFgx?=
 =?utf-8?B?cGtjd21iL2IrS1lsSDFOME0zSEFXVnV5SHVVSTBaR3plRlgya2pYZkZhQ3VL?=
 =?utf-8?B?dGRPRUpHMjNwbStSZmZlc0tWSnFCM21YdThCd3ByWTRBMGJsYVovZlJRbEMw?=
 =?utf-8?B?WEVIOHhZbWtteGFWbXZseFc2MHJRcmQ2aXJ6ZlJBUFpreTNBOHl0SVNvK3Ft?=
 =?utf-8?B?Z1dKUy92c0VWcTFsK2pteEhOTjNoOS9nbFZER1ZPd3NjclhtSm42cXUwc21X?=
 =?utf-8?B?LzAyK1V6eWxaS01WU0FhejZqN0RSeUt3TlhGdExwTVNXQUxVNUNWR3BtbUIr?=
 =?utf-8?B?VTJ6QjBFRVMvOXYwdkc4cTkrSm45SE91eEp6WnZXaC9sME1RZXoxZzJ1Nlh2?=
 =?utf-8?B?WkFTc0d1ckM1a1k4ZGNMUHRvemV0S2tmUTdVZ2RBS2RtNFB1ck4vbkZNWFpX?=
 =?utf-8?B?T1QvQmRXdXZ5dWlscmxCRmE3Q0lVMlBzYlRsVUZqSlRqSlIxd2g3QnpCVkhZ?=
 =?utf-8?B?RGloT3QvSTBKbFFodjZvR2hNVWMrS1FQcVNEbDF1S2ZQalVybktndUp5ai9V?=
 =?utf-8?B?QTVzcjE2b25WeS8wV0Njc3cxbGlwTG9WQVNpOTRXejNONmhDczlXY1YvY2U0?=
 =?utf-8?B?OXE1VUxaMUwwZ3FFNy9sMVIvdG1LbzR4eTFjOHVod3hWOWVGdXEyaWJBZjFM?=
 =?utf-8?B?Y1dvS0JUOWVkcTJVOUNYaXkyTnRybUh3MmwrY2dpQ0VUVFlseUFjWEx3akR1?=
 =?utf-8?B?WEpFeWVUR2w2ZUdoVlN2YUtaeU1acGxVQWxldVNLa05sakdBOHhFUklmSjRI?=
 =?utf-8?B?Mi9FeWNMUVV0c0NKRVdKY045T1lzUDlHZkdFdFdBMjJvSjJkQ29GeGN1c0ZF?=
 =?utf-8?B?dWxMQTVwb3pvbndobUxPMXRVTExLRHBYSTYwMVBqKzU2Z1V0amZybGhJYlV5?=
 =?utf-8?B?WUpib1ZZL0E1c1BZOUFLdk42MG93N2srQ2tDM2hBeWtRQVhGZEwrdVR0TlN5?=
 =?utf-8?B?djZqOUM1emdGdFVMMXp4RXRqQW9IVFpSZCtBVHhJZDBhUDNZV09zdzcvK0RS?=
 =?utf-8?B?aW9uZENMWEJBK1kvMnAzNEdYTFVkL3UwQzVpNmh6MlVEcHZtYjNudlM4S3JP?=
 =?utf-8?B?ZVM0VDFuYXU3RGovZUJObTB6U1IyeEtCeHYvTGJ6RGlWcHJTUG5DZGJqdEJG?=
 =?utf-8?B?cnFmc3NjbndWN3BZYm9NaTBSSy9xYTdCMUlFeTVtK2ovdUFRUm1WVHpDUXYx?=
 =?utf-8?B?YkpFRGhqK3EzdzAwRmlMUktrT3ZLbHgvV3l0WjF5M2FEVmY1L0ZkM1M4Q3cx?=
 =?utf-8?Q?MEi9B/VqBlTolbT05vDHlBV3R?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 20edcc63-8dff-46b9-d16d-08dbceeac14b
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Oct 2023 08:26:26.5059
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 2FzOy81ugLq4ARg0wGK4nyu0bM0S2zB+eHzPhdZxZ7+bdcCpFmg8bTWZbbASclIw8aFKm76zhhDh/NPj5JepWw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8PR04MB7844

On 17.10.2023 10:12, Nicola Vetrini wrote:
> On 17/10/2023 09:02, Jan Beulich wrote:
>> On 16.10.2023 18:05, Nicola Vetrini wrote:
>>> On 16/10/2023 17:45, Jan Beulich wrote:
>>>> On 12.10.2023 17:28, Nicola Vetrini wrote:
>>>>> The definition of MC_NCLASSES contained a violation of MISRA C:2012
>>>>> Rule 10.1, therefore by moving it as an enumeration constant 
>>>>> resolves
>>>>> the
>>>>> violation and makes it more resilient to possible additions to that
>>>>> enum.
>>>>
>>>> And using an enumerator as array dimension specifier is okay for 
>>>> Misra?
>>>> That would be odd when elsewhere named enums are treated specially.
>>>
>>> Yes, the array subscript operator is one of the few places where an 
>>> enum
>>> can be used as
>>> an operand (also because negative values wouldn't compile), as opposed
>>> to mixing them
>>> with ordinary integers.
>>
>> When saying "odd" I didn't even think of negative values. May I 
>> therefore
>> ask for the reasoning of why this specific case is deemed non-risky? To
>> me there looks to be a fair risk of creating undersized arrays, leading
>> to out-of-bounds accesses.
> 
> Two reasons: MC_NCLASSES is the last value of the enum, and a pattern 
> I've spot in various
> other places in Xen, so I assumed it was a fairly common pattern for the 
> community.
> The other reason is that since the value of an enum constant can be 
> derived statically, there
> is little risk of it being the wrong value, because no arithmetic is 
> done on it in its use
> as an array's size (and besides, the enum changed the last time ~15 
> years ago, so I think
> it's unlikely to change much in the near future).

You focus on the specific instance, yet my question was on the general
principle.

Jan


From xen-devel-bounces@lists.xenproject.org Tue Oct 17 08:28:16 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 17 Oct 2023 08:28:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618135.961418 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsfQy-0000sp-9t; Tue, 17 Oct 2023 08:28:12 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618135.961418; Tue, 17 Oct 2023 08:28: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 1qsfQy-0000si-5y; Tue, 17 Oct 2023 08:28:12 +0000
Received: by outflank-mailman (input) for mailman id 618135;
 Tue, 17 Oct 2023 08: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=BgJ9=F7=citrix.com=prvs=6472a2412=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qsfQv-0000sa-RT
 for xen-devel@lists.xenproject.org; Tue, 17 Oct 2023 08:28:10 +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 17c6fe47-6cc7-11ee-9b0e-b553b5be7939;
 Tue, 17 Oct 2023 10:28:06 +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;
 17 Oct 2023 04:28:04 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by DS7PR03MB5541.namprd03.prod.outlook.com (2603:10b6:5:2ca::11) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.21; Tue, 17 Oct
 2023 08:28:02 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::17e3:6cff:b087:fc64]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::17e3:6cff:b087:fc64%4]) with mapi id 15.20.6886.034; Tue, 17 Oct 2023
 08: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>
X-Inumbo-ID: 17c6fe47-6cc7-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1697531286;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=0Vxu8WXQzWtaZqknwBgdUjKA0PXdKHJwAp/Kb1NMfF4=;
  b=dZWo4Kz44BY2zpS4YEMTFMkOtODn6pkeqlTlqI8rBxPeUo+k/HTMuqfU
   Xz5+k9Fp6vNXdUWjlIssD3QpukGs6zDEV3p1P07j4q3a2d4vLE4W2+CgG
   978H9c0AO/wEHLfH6UYcss9evTTHnComRBTZjcdhWOao0ONNDTo1KgHhf
   k=;
X-CSE-ConnectionGUID: tZDA4AEsQw+dO6ykbkA+WQ==
X-CSE-MsgGUID: bK6Z7kJVSQ6bmCArpwA0lQ==
X-IronPort-RemoteIP: 104.47.58.101
X-IronPort-MID: 125667593
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:LHW9A6BWy9p9VhVW/+niw5YqxClBgxIJ4kV8jS/XYbTApDl3gjUOm
 GYcWmqCPqrbZGP1KItxOo639kwAsJeDx9AyQQY4rX1jcSlH+JHPbTi7wuUcHAvJd5GeExg3h
 yk6QoOdRCzhZiaE/n9BCpC48D8kk/nOH+KgYAL9EngZbRd+Tys8gg5Ulec8g4p56fC0GArIs
 t7pyyHlEAbNNwVcbCRMsMpvlDs15K6p4WtB4QRnDRx2lAS2e0c9Xcp3yZ6ZdxMUcqEMdsamS
 uDKyq2O/2+x13/B3fv8z94X2mVTKlLjFVDmZkh+AsBOsTAbzsAG6Y4pNeJ0VKtio27hc+ada
 jl6ncfYpQ8BZsUgkQmGOvVSO3kW0aZuoNcrLZUj2CA6IoKvn3bEmp1T4E8K0YIw5tRbKD1n2
 OchN3MBSU6ShOi16fGEc7w57igjBJGD0II3nFhFlGmcIdN4BJfJTuPN+MNS2yo2ioZWB/HCa
 sEFaD1pKhPdfxlIPVRRA5U79AuqriCnL3sE9xTI9exuuzG7IA9ZidABNPLPfdOHX4NNl1uwr
 WPa5WXpRBodMbRzzBLcqC/y2LCSzHiTtIQ6Hp7mxKFpomOo/zIZDTY/T0OkiKG9sxvrMz5YA
 wlOksY0loAw/kG2Stj2XzWjvWWJ+BUbXrJ4M+A88hDL9aPS7C6QHG1CRTlEAPQ5sOcmSDps0
 UWG9/vxDCFrmK2YTzSa7Lj8hSO/P20ZIHEPYQcATBAZ+J/zrYcrlBXNQ91/VqmvgbXI9SrYx
 jmLqG0ygusVhMtSj6Gjpwmf2nSru4TDSRMz6kPPRGW54whlZYmjIYu19Vzc6vUGJ4GcJrWcg
 EU5dwGlxLhmJfmweOalGY3hwJnBCy65DQDh
IronPort-HdrOrdr: A9a23:UjwOgKOc9z4MXsBcT1X155DYdb4zR+YMi2TDiHoddfUFSKalfp
 6V98jzjSWE8Ar4WBkb+exoS5PwOk80lKQFqLX5Uo3SODUO1FHHEGgm1/qa/9SCIVy3ygc+79
 YGT0EWMrSZYTdHZITBkW+F+r0bsbq6GdWT9ILjJgBWPGNXgs9bjjtRO0K+KAlbVQNGDZ02GN
 63/cxcvQetfnwRc4CSGmQFd/KrnayAqLvWJTo9QzI34giHij2lrJTgFQKD4xsYWzRThZ8/7G
 n+lRDj7KnLiYD39vac7R6e031loqqu9jJxPr3MtiHTEESttu+cXvUvZ1RFhkF3nAjg0idprD
 CGmWZbAy060QKtQojym2qn5+Co6kdT11byjVCfmnftusr/WXYzDNdAn5tQdl/D51Mnp8wU6t
 M+44u1jeskMfr7plWJ2/HYExVx0kakq3srluAey3RZTIsFcbdU6YgS5llcHpsMFD/zrNlPKp
 gZMOjMoPJNNV+KZXHQuWdihNSqQ3QoBx+DBkwPoNac3TRalG1wi0EY2MsclHEd849Vcegy28
 3UdqBz0L1eRM4faqxwQO8HXMusE2TIBQnBNWqDSG6XZ53v+0i926IfzI9Fld1CIqZ4s6fasK
 6xLm9liQ==
X-Talos-CUID: 9a23:IzzTz2D9t9VkCx/6EzVV2GdIM+0+S2KewFCOMkyyCk8qd4TAHA==
X-Talos-MUID: 9a23:a1kPZwSapacGzBTORXTmp29Qa8RK3Z+XVkoIurwco9atbShJbmI=
X-IronPort-AV: E=Sophos;i="6.03,231,1694750400"; 
   d="scan'208";a="125667593"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=jer61pZKCNcZMGN3gm0W3uS6p6/Sq3PQ5+yAoUTUbRq8+9AWm9YSmCtcv0hVhS5hqFegyeDYlPZMp+M3JQ7kCEvfejZ8mDswtG8aY1zVDfCWmoKe3D4iTubNowFihJPskI+hbqLyEjE/NAC1qfF0VqNFcJY1fPJFJHw2o2StciJMdqpcZ9E+GTyIdfB1cllXRzLYfDV6Fk1azpORpMfLKMO0pyi9+4+lDH2f0rRSIJ2d9ArsN4sizmnxLcJPpHwkAYzDmaW9Wjxp25S47WgFFZjeS8LiF2DQ2YMKbbGp+1hhsKF7WaIbP4pv1XrOV6NQifsWNtw+tRaXJw1+2p97xA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=f54w6Zr3KCTJo1wod39vZ3xfbmZtRo0OPjz69LMXohI=;
 b=fx9GD6aT04eJPMIhLknXsLNefKtKG6rW28cO4AMxnPb+XvrBpMJ7GOQD6squb8Md0kfW6lrmS8/kQhhgoszq7mj06r0p6BmWTpq1y6ZJ0CJ5Xt5Xvzz1w9RKj9MMvuV6boxixA51JwuAzUkGXswHePbMZG/z2FSLG3LRmIy7+eK6e9YruldzR/5Q/517hIQ87NcQNz8IA09AsUder7PzQoauS8OCIy8YbQ0WsBKqC4ml/yG9vhUBjOSYNbAUoXX2apAe+7u7z7iYyMEhg9uewFbQ3HY4y1HqqMiupcw8+0EK80XpLU+6rTADVK8v3LP6lMObnRTlCeRNwyIjBBlwqg==
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=f54w6Zr3KCTJo1wod39vZ3xfbmZtRo0OPjz69LMXohI=;
 b=A2d2ZRiiI187TAx8FNYniUUvP7vfpTQgF/J0QdBgXobvBKPy//fywnWlFRzZ0ej0wMD5H+OEmY751aLdkg+SY+rJ152o0fIwaW0GTnuXFJJMWyTJ/iga7RBr/U4Ul9jJoHmR0pf/WkjKrapLW4lLIPYRlTlYPs6Z8ZrAVAmNQ2U=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Tue, 17 Oct 2023 10:27:36 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: Henry Wang <Henry.Wang@arm.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
	Paul Durrant <paul@xen.org>, xen-devel@lists.xenproject.org
Subject: Re: [PATCH for-4.18 v2] x86/pvh: fix identity mapping of low 1MB
Message-ID: <ZS5FePRbBPG7wUIc@macbook>
References: <20231013085654.2789-1-roger.pau@citrix.com>
 <9aaae72b-fdcc-b48b-1155-e1cb0401d7d1@suse.com>
 <ZS0_zPxGLwfsuVvX@macbook>
 <879e6934-93b3-e260-770a-966cf8bcd2f8@suse.com>
 <ZS1N9wZ05ebun3WJ@macbook>
 <35528dc6-dbc0-3f3e-e774-c2fe4094bffa@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <35528dc6-dbc0-3f3e-e774-c2fe4094bffa@suse.com>
X-ClientProxiedBy: LO2P123CA0032.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600::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_|DS7PR03MB5541:EE_
X-MS-Office365-Filtering-Correlation-Id: 78a02c78-5243-4b67-53b8-08dbceeaeeae
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:
	rOduWGisNjUYVYIDvpRsV0LLvkmU/hC9ek0ML3IlRSlSsS092oTyY8RJVSCkBLBR3CNJrbaKEnlmtCxGKFuBZ4G9lbO4O8qEPkBTdYf0TcW3iT05ZpKXX1k3+lyzfE0pG62ksCvCf6BI050oagIe0PMGCCH8+Lp0WMOs3fLRWONJSfLRJl8BZeLVGhvmrCTVnktSGIE7U45tcB2t9XaXBH0xKTM6En7ZDFU56cp0+kvdbtFnNaeUWlyPVznKZgJLwaSSO1YK7aUaUizISrdp82FiGsDQitj5FX3s8cqxkM7/QQLwthdM+c8SNLAw1SXo7W6bPW2hU2QUOxlf4TF4YnffXVit9gG2k6vt223YuyRgGBlkE3xnbGUiUR7SvaAop2KWRcA2zvc+K8NsroATPrNUKF0yGKfGtjvy0Vmz3lSDH5813Z/2JKYgP69gwsaj208bvTD6CQC4CHyNPZRYMboS1rR8rMuz9HNizMEoxultbIUa5T+m2740xwEhtd5E4zaEIe4WY/QxanKmP7VmjMESkF0i9xsjPrTGS3DEA+MGtgSzqFS57W617XrwGiVj
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)(396003)(376002)(136003)(39860400002)(230922051799003)(1800799009)(186009)(451199024)(64100799003)(33716001)(6506007)(6512007)(6666004)(2906002)(5660300002)(8676002)(4326008)(8936002)(41300700001)(66476007)(54906003)(66946007)(66556008)(6916009)(316002)(6486002)(478600001)(53546011)(9686003)(26005)(83380400001)(85182001)(38100700002)(82960400001)(86362001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?ZWNWMlVEN3BxUGF5a2lzNkdjTktIN2NSRzlOd1dMa2R6cHJWYVJINHZYaVh4?=
 =?utf-8?B?VXVzTHRnemFYNGdBZnJsVXRpZEszMDh3U2FEeFN3VUhWS3dvY0p4UmlBMDVo?=
 =?utf-8?B?bmRJNkhEZ3BKM2lLbjlRQzhBS1RwVE0xLzBCelgzd0tNQlhxMk0zb0JhMFVS?=
 =?utf-8?B?T1NRbG5XNmlMd2trWFpmazU4YVdLM0FnRVNuOUF1elRjR2E3emtFTGZZVWZG?=
 =?utf-8?B?eWx6TVlmUG8yVjRTS2ppNU8vNDVmeS95YTBGcFhUeGpIRjltZDZkSXNWYWI0?=
 =?utf-8?B?emtqaFJ6ZjlaQzhkSU1XTlVHYWxZeFZvNTdTdG1KOWhtRVJNMEtzSnlBNUp0?=
 =?utf-8?B?OC9rSHczWVBNdlh2dVpNQWdQZUNUamlKRHZ0bkxqYWRaN2UrS3FQUlBMZEhq?=
 =?utf-8?B?THZheTZXMmJPZmJYUmJBdElPeXVMU1ptZ1ZLNkRPbmNxYXRKWWFFTTc2SHNT?=
 =?utf-8?B?alVFZ0l2RnNpbUZ6MEpWYUd6MFNKOURsOFFHNFZTQkZUQ0pGYnZhRzk3MHJw?=
 =?utf-8?B?c1B1dXBURTBHaE9PNUEzdm1IZVdxMVlZckJFb2RzbitrY2tJcjJYTUJTYmJ0?=
 =?utf-8?B?eGlaMUlqQVNFMXFZWVUrZGxxdC9wajUraHRjVy9PbitTNHVKYWU4eWxzd1FT?=
 =?utf-8?B?S1l5SGR1YlVScnBVSi9qUXNpd1JieGdqZjNlTXE2V3RpVVh3dmxjeVZzZVNn?=
 =?utf-8?B?azBCQldrWXU2WGg5TGpxR1VnVEhrYW4rL05keEtHNjRmRi9yVXBtS3F3cEpL?=
 =?utf-8?B?MkxDWE8xdnJ1S3BKT3htRTQyZEg5d1p1U2M0THhEQTBTUDNuUHl4aTBCWG1Q?=
 =?utf-8?B?RDlWMS9CSDJYdmo3bkdaQ2Q3RDhBeUR3OHUvRHN6M3RmZU5wck9zMXd6Zm9n?=
 =?utf-8?B?OFhETWI4aHBLcWlHOGRRTXFQNkx2TzlWeGJxVUM4Q1VaSkJZQ1RRWnc3RG55?=
 =?utf-8?B?RDRvdXZnUmlQSEloV2xtOG43QzZBQThXY0Jad3lNOU9waDBjbmg3ZkdWY1Ar?=
 =?utf-8?B?YXdPeEp4SEIvQXZHY1dBazlnMmlGMWdpQWlhMVlWeGwwbHc3RGxORXJUZ3BK?=
 =?utf-8?B?RWZ4MlRyOXB6V2hqUHU5THJzTC82MnRFdE9EV0hXWDR5OWNtWTVQWUR0UEJx?=
 =?utf-8?B?R25KRVY0YlVHWHZ3RFltUzU3eWorVG03SUhrYWtZbUR0N1pyd2Y4T1puQ0Fz?=
 =?utf-8?B?Q20wUm1KQWhucm10OHVQOElVUENwcXl2RnpIaDdzTmlRVnQ2eCtWL3Y3K0NN?=
 =?utf-8?B?R2FjK3NCWWRweUVoSnBGWUthVjJNNVV0S3hhNW85RUxacUJZN3dsRmxMQ3ZK?=
 =?utf-8?B?ekN1SHJHRGJtRGV4ZTlYc3JQTGhHNm83dHNrMDdEWE54bURMQXBoUjJJUTBN?=
 =?utf-8?B?NkFTeFByNXV2OHhsQkIrOHU1WVd6ODNFdWNNY3BRRHlNb2Vzek9oYWFKRHQx?=
 =?utf-8?B?b0g5ak1GOHZkSXVvbTErN0M5WmF0bWZhekZ2MVdzZ3VKWkljTUxrQ3NUZURI?=
 =?utf-8?B?NTlsYzBpRTR3QjgvMVdmT3RPQmxyd0hhdzFiZ1UwQ3F2VndMdnhwZUFXQVE2?=
 =?utf-8?B?aEpjMlF2QlVIWGZxNG50bDBkdW5uOTBjZWxKM0Z6Rmo1VkpvSm9jZFBXc3Fy?=
 =?utf-8?B?aTFMRGgrWmloK3ZoQ000YzE4YWowQXd4NXVrWjBtb3FlN2Z2WjFSL1oyWEox?=
 =?utf-8?B?K3VQSHkrMHZiRXFDTUZJMGh2eGd2aElWU0tlS3hYZ1JUdlJ1dmkvam5Nd3VC?=
 =?utf-8?B?ZXFna1MzaFBTTlJZVnVhRk5nZFZGU01xOUdXMXZUUE5vWDRpNDdvUUJScVhw?=
 =?utf-8?B?Wlo5MXVueG0zVU4vUnlOb0F0Y0ZrRUhQMEdDbEhkQTZCQjNiS210TWxQdW5w?=
 =?utf-8?B?VTVqOStDN09PcHlyYXFlMndocFBjblNjUmtETDJyTjZQVDY1YWd3V2ZJUysv?=
 =?utf-8?B?eWJMS2RnL1RWaHFxdTBCUUJEK0JPcllSeDlBd2YrM0Q0ZWtTbldzUU5FeGVR?=
 =?utf-8?B?Vmd0ZloxOFR0VStlQVVmMHpaMDBoamtHY2czL2hWc1NhcitJTU9sWGpVN0Nm?=
 =?utf-8?B?WVk2V1lyYlZJeks0bGQ0VjdlSGNOSmFuM01la0VKV0hEYTBHYjRtSzB3VjNn?=
 =?utf-8?B?SU5jemVmYnlxcys4anR3d3phekRMUUZoUWJ4MFlSZXhYazJLV3ZUN3hSN0hL?=
 =?utf-8?B?NFE9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	FoPFcnFujZ+ceeXxBKwsUz9t2XtSwrUmiJBGUwCguUez3q+AYQiMBhvhLtKLaYjf8QAFcmxNPTe1Y0EGYi0ax7HhlCcD4kbHPCRnuffg78J2wj0DwJ++RI5x8Y69OdcRaL9TJj+JQDRIha+hxfTM+OKQTCzl3H4BUU+zwVHV5cKN+VB5kAgMgRW2YTPpJAe6fkuFln04L60aws46ZgFzU4q9eJmG0IeIt0WY3o8dIS6hOnrX6x97mt0dNhwpoMnBjm4tyIM324/v/LwJHyoYINVIw7MWiLVURqyD+usKjhhYustl/q2oPa5qs6NGdwlyhVsjp0sLS1HMtT2zYPSXPcFlKCQ6JobEyuxJ7mvZq/pAQSBBby/rf55bfa6p/X2EDowNzW4F95SAEEyo0L0XpatThC/OWyfdi/2dVY1rpLml4RWAUQQA0CvaDU5wYKXSs2xohWT3qliJLM+CFgoNQNCWDcEohrtAfaDNgVXtvXRVQ/JoMsNd6XgYNBtpsX7ORSIoatnlnA36qNdPbTsxA6sv1lSN1kvM01R5V88m6eFBi1OQ9BZcWxhkxfce5eHCt640vYQWbCeGfU9TQqiICb4w7RCcKKFmfLHhtk1ujpZUHpWYYmSoiadaCWkjXdBlJa5GErqktDo+mqj/SJ8M2aw4yrfAhLZwY81k0j6A00vEgfYdMw/TVHjI5vlJ7FvtdGKvFggJ8Le0nfokEewd/Wdj4Cr1qWXWjfuHDxKr/0hHXIphTdGTU1ZUxImVdCVqJV4SybZpxqKRUFXRK+pPdoYxCAnzfUs0+Dk9uHa9pAFqEH9IWZQXr4GSAWc2it6R4H/5MEm+V4FUt+G7PEg6nENRlQhVen1VNkw3amx7PzA=
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 78a02c78-5243-4b67-53b8-08dbceeaeeae
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Oct 2023 08:28:02.0270
 (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: BxzMTRgo/WOS5+Ws/urgv3cnX5COiO6dIdmQF964NcGCauj430j+hj+LxuVHOtyMICxXZX5K5wJ3S3qhi5LZvA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR03MB5541

On Mon, Oct 16, 2023 at 04:55:30PM +0200, Jan Beulich wrote:
> On 16.10.2023 16:51, Roger Pau Monné wrote:
> > On Mon, Oct 16, 2023 at 04:07:22PM +0200, Jan Beulich wrote:
> >> On 16.10.2023 15:51, Roger Pau Monné wrote:
> >>> On Mon, Oct 16, 2023 at 03:32:54PM +0200, Jan Beulich wrote:
> >>>> On 13.10.2023 10:56, Roger Pau Monne wrote:
> >>>>> The mapping of memory regions below the 1MB mark was all done by the PVH dom0
> >>>>> builder code, causing the region to be avoided by the arch specific IOMMU
> >>>>> hardware domain initialization code.  That lead to the IOMMU being enabled
> >>>>> without reserved regions in the low 1MB identity mapped in the p2m for PVH
> >>>>> hardware domains.  Firmware which happens to be missing RMRR/IVMD ranges
> >>>>> describing E820 reserved regions in the low 1MB would transiently trigger IOMMU
> >>>>> faults until the p2m is populated by the PVH dom0 builder:
> >>>>>
> >>>>> AMD-Vi: IO_PAGE_FAULT: 0000:00:13.1 d0 addr 00000000000eb380 flags 0x20 RW
> >>>>> AMD-Vi: IO_PAGE_FAULT: 0000:00:13.1 d0 addr 00000000000eb340 flags 0
> >>>>> AMD-Vi: IO_PAGE_FAULT: 0000:00:13.2 d0 addr 00000000000ea1c0 flags 0
> >>>>> AMD-Vi: IO_PAGE_FAULT: 0000:00:14.5 d0 addr 00000000000eb480 flags 0x20 RW
> >>>>> AMD-Vi: IO_PAGE_FAULT: 0000:00:12.0 d0 addr 00000000000eb080 flags 0x20 RW
> >>>>> AMD-Vi: IO_PAGE_FAULT: 0000:00:14.5 d0 addr 00000000000eb400 flags 0
> >>>>> AMD-Vi: IO_PAGE_FAULT: 0000:00:12.0 d0 addr 00000000000eb040 flags 0
> >>>>>
> >>>>> Those errors have been observed on the osstest pinot{0,1} boxes (AMD Fam15h
> >>>>> Opteron(tm) Processor 3350 HE).
> >>>>>
> >>>>> Mostly remove the special handling of the low 1MB done by the PVH dom0 builder,
> >>>>> leaving just the data copy between RAM regions.  Otherwise rely on the IOMMU
> >>>>> arch init code to create any identity mappings for reserved regions in that
> >>>>> range (like it already does for reserved regions elsewhere).
> >>>>>
> >>>>> Note there's a small difference in behavior, as holes in the low 1MB will no
> >>>>> longer be identity mapped to the p2m.
> >>>>
> >>>> I certainly like the simplification, but I'm concerned by this: The BDA
> >>>> is not normally reserved, yet may want accessing by Dom0 (to see the real
> >>>> machine contents). We do access that first page of memory ourselves, so
> >>>> I expect OSes may do so as well (even if the specific aspect I'm thinking
> >>>> of - the warm/cold reboot field - is under Xen's control).
> >>>
> >>> The BDA on the systems I've checked falls into a RAM area on the
> >>> memory map, but if you think it can be problematic I could arrange for
> >>> arch_iommu_hwdom_init() to also identity map holes in the low 1MB.
> >>
> >> Hmm, this again is a case where I'd wish CPU and IOMMU mappings could
> >> be different. I don't see reasons to try I/O to such holes, but I can
> >> see reasons for CPU accesses (of more or less probing kind).
> > 
> > Hm, while I agree devices have likely no reason to access holes (there
> > or elsewhere) I don't see much benefit of having this differentiation,
> > it's easier to just map everything for accesses from both device and
> > CPU rather than us having to decide (and maybe get wrong) whether
> > ranges should only be accessed by the CPU.
> 
> I understand that, and I also follow Andrew's arguments towards not
> making such a distinction. The consequence though is that we need
> to map more than possibly necessary, and never too little.
> 
> >>> Keep in mind this is only for PVH, it won't affect PV.
> >>
> >> Of course.
> > 
> > Would you be willing to Ack it?
> 
> If "it" is the present version, then me doing so would be stretch.
> How averse are you to re-adding the hole mappings?

Given the point we are regarding the release I guess it's safer to
leave the mapping of the holes in the low 1MB as-is, and consider
removing it for 4.19?  That would give us a full release cycle to
check whether it causes issues on systems.

I will send the updated patch.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Tue Oct 17 08:29:30 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 17 Oct 2023 08:29:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618139.961427 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsfSD-0001RY-JA; Tue, 17 Oct 2023 08:29:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618139.961427; Tue, 17 Oct 2023 08: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 1qsfSD-0001RR-GB; Tue, 17 Oct 2023 08:29:29 +0000
Received: by outflank-mailman (input) for mailman id 618139;
 Tue, 17 Oct 2023 08:29: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=BgJ9=F7=citrix.com=prvs=6472a2412=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qsfSB-0001RJ-Gt
 for xen-devel@lists.xenproject.org; Tue, 17 Oct 2023 08:29:27 +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 466d9fe9-6cc7-11ee-98d4-6d05b1d4d9a1;
 Tue, 17 Oct 2023 10:29:25 +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;
 17 Oct 2023 04:29:21 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by DS7PR03MB5541.namprd03.prod.outlook.com (2603:10b6:5:2ca::11) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.21; Tue, 17 Oct
 2023 08:29:17 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::17e3:6cff:b087:fc64]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::17e3:6cff:b087:fc64%4]) with mapi id 15.20.6886.034; Tue, 17 Oct 2023
 08:29: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: 466d9fe9-6cc7-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1697531365;
  h=from:to:cc:subject:date:message-id:
   content-transfer-encoding:mime-version;
  bh=dpzB4/Pk6vMweDI0cavq74LUVdNpMSu8rZZbWzhJ9es=;
  b=Prec9+SSHqakd9/oC+6qrdoKsfQjWWlcC2VBXmnzz3mtMu1RyFheGQWD
   E2IG6cLY5QR5x4RLXgBPqYWAcuXaWstq4rP9/eNauxdjs2FsWV9sMxMd3
   VnFvj+eS8w+hvTyGqCnmE5iICWbluLiF9sTJiEFgZStg2NWSQqkUJq+rP
   A=;
X-CSE-ConnectionGUID: IN2ZL/IRSsK3zLkkw693vw==
X-CSE-MsgGUID: cnR+YTpkSQes99t0H/KRtw==
X-IronPort-RemoteIP: 104.47.66.40
X-IronPort-MID: 125667687
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:8VvGyKIVga3VNHUDFE+REJQlxSXFcZb7ZxGr2PjKsXjdYENS0GNTy
 GNLX2CEPPffZmX0fNF3btu1pE8HuZLXzYVhHlBlqX01Q3x08seUXt7xwmUcnc+xBpaaEB84t
 ZV2hv3odp1coqr0/0/1WlTZhSAhk/nOHvylULKs1hlZHWdMUD0mhQ9oh9k3i4tphcnRKw6Ws
 Jb5rta31GWNglaYCUpKrfrYwP9TlK6q4mhB5gVhPakjUGL2zBH5MrpOfcldEFOgKmVkNrbSb
 /rOyri/4lTY838FYj9yuu+mGqGiaue60Tmm0hK6aYD76vRxjnVaPpIAHOgdcS9qZwChxLid/
 jnvWauYEm/FNoWU8AgUvoIx/ytWZcWq85efSZSzXFD6I+QrvBIAzt03ZHzaM7H09c5WJzt80
 bs5EgsWTUuRo+G13+zqEfdz05FLwMnDZOvzu1lG5BSAV7MDfsqGRK/Ho9hFwD03m8ZCW+7EY
 NYUYiZuaxKGZABTPlAQC9Q1m+LAanvXKmUE7g7K4/RppTSLpOBy+OGF3N79YNuFSN8Thk+Fj
 mnH4374ElcRM9n3JT+tqyjx2LGQw3OkMG4UPLa+zL1bvEWQ/VUeE0xHSQOb5tqDllHrDrqzL
 GRRoELCt5Ma5EGtC9XwQRC8iHqFpQIHHcpdFfUg7wOAwbaS5ByWbkAkQzhbeZoZvck5bTUw0
 xmCmNaBLT5lvaCRSHmd3qyJtj70Mi8QRUcdYQcUQA1D5MPsyKkrhw/LZsZuFuiylNKdJN3r6
 zWDrSx7gqpJi8cOjv+/5Qqf32rqoYXVRAko4AmRRnii8g5yeI+iYcqv9ETf6vFDao2eSzFto
 UQ5piRX18hWZbnlqcBHaLxl8G2BjxpdDADhvA==
IronPort-HdrOrdr: A9a23:HSqOra+byKeAGwPYDLduk+AiI+orL9Y04lQ7vn1ZYzN/V4ixms
 20kO4AvCWZtN93YgBFpTngAtjkfZq4z/VICOYqTNSftXbdyRaVxe1Zg7cKugeQZBEWr9Qtq5
 uIEJIOauEYb2IK/PoSiTPQe7wdKb+8kZxAqt2uqUuFJjsLV0gP1WhE4tLyKDwLeOGeaKBJc6
 Z0nvArm9NWQwVuUizqbkN1JtQqWrXw5enbiQRsPW9c1DWz
X-Talos-CUID: 9a23:NsYOymMmqQCtB+5DeQ89xmpTO/oeaV6G3lPTIFDmWD13V+jA
X-Talos-MUID: =?us-ascii?q?9a23=3A9bmH7w7aaMBo/AjKy0Lwhe/Hxoxj5Z7tOXwVkq4?=
 =?us-ascii?q?/ttLVZDAoG3C+tiioF9o=3D?=
X-IronPort-AV: E=Sophos;i="6.03,231,1694750400"; 
   d="scan'208";a="125667687"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=SrSUunqN2PtIeLP6KoPiNNPfOj1I/FuRiqehLvZAua88yAeRBTOk/2Rspk0zmCSZ7gddk/yv65B9pXItqtDre9AbZl7kcspWLs/YVbXtKZGsnOg414E5hN6SVKNzBxKjPHOP/mMCZ85AOLT+W7jWVZ7e3DI4GaKQKKeHPbBgbqluaqXHMdUIAdEE79SvOSurJsyIFsHVedSz67Q5aGar+ZvTvNCexAy8AXIAhVAoraPgCMqZJhR8sVlNAakY9Bl33l2JSV5fl4ne6R5nCl4tW9P9+wjhcqJZ+8RwuKdiQQ25AReb9xK6bt7vZ9Um3W479G27MAr0469FwQrBghdtCg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=7Vu7yBp8ThX2WE3+gXCv46d1txt8MKSCB0guvSb2mgk=;
 b=OQ9PbTeXgO/JKdEf4cXZT/qLFakpty3QXqQKQhQ7WQzik5mCgKdLl+s8r5NytzUKMKhxHbu/0V1glHjWjRS8JVhOHOSy2d8FwiY51HUo5hdZTJgMyOYVvapDBOhR0Ce9f4/nKjimdQ9d2iWFH7PUhS2hZyx5EMWFWdl3Ruj+w58XCceCmCM1kXVe63/Ib8sd3CtPiQ5HJb6cdC7bevH0+cuhsuPw9e65FerTbA2fx4VT61lTQc93NnFQo9S41QPLC52HAuiJTx89rrq6Yv0dzn51bJ3M17Pm7Pux4HGmXtm/RIWfGJJ3mOKvVdYcaF0jz/m26cIpQQwtbF3N7FyHnQ==
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=7Vu7yBp8ThX2WE3+gXCv46d1txt8MKSCB0guvSb2mgk=;
 b=VUh8rdptpmO6N8THs6dpVxgUZbg82D64fsojbcLMcEVhcYF8DVMhnLjhQC4AmX8uEhyA80UYUzSmPFflYK7fl+NeBFTVsd1WWN/DpKK9AnUwC43WBIGeqVbCCkKNzUXtcadpitoCj9C2r3Xf26Zfy9/AKjMZM7+PZII0vSDCwrg=
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: Henry Wang <Henry.Wang@arm.com>,
	Roger Pau Monne <roger.pau@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	Wei Liu <wl@xen.org>,
	Paul Durrant <paul@xen.org>
Subject: [PATCH for-4.18 v3] x86/pvh: fix identity mapping of low 1MB
Date: Tue, 17 Oct 2023 10:29:07 +0200
Message-ID: <20231017082907.14455-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: LO4P123CA0462.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:1aa::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_|DS7PR03MB5541:EE_
X-MS-Office365-Filtering-Correlation-Id: b4e58ad4-fe7d-4433-e100-08dbceeb26ff
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:
	sWBY8Os1igl85qYj2EY4Om4jASj9Slx5MTtxye4b37jnLBt/aBF4VrL7DgFOL0YlLrNHlC+okE1QspdgydTwLyW29/sRyhGfd0XQKzozG7u/wNjKNORSZkHZv1sieuSuOVNaPnFq/8BlIApAOrhQ4kyTDhhQQR5pqvqW1PT7QjJDBFXc2O1FO21y4lfJYuAt1miT0Kty8QBaE28nlYI6wm9yVWCBW76vpVnvghUpBvvzx6kyZjxKTygJCVhQ6ytTBasEbSX6uB+t5Kzjs9BuWTXPfdmckCuk+gwoXUgXJo4oogoMOHTw4v39f202c+YZc2E2NjDvdvJhKFp+3cbOHs4vEBgTACXhWNOb8T+QC1/Ygz1SaBAnW3MtyM35vmt/x80VlvMxfbNyldQs2WYxYkZg3teyRJLkT2FH9hASNUGFICbmrYfEz0QkTGI5O/eZ2PyEFVZhuwY6rsqKo+52xF7RHzQlrGVgzkb9V11QYMId61oq9IQEbZm3xly6ZsXwUdzpqB6QTR3SpttHiN5tnaxXDrSjBB6szcMH7SCCwfWK9GUdrq86YQf7PRWTUW+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)(39860400002)(136003)(396003)(366004)(346002)(376002)(230922051799003)(64100799003)(186009)(1800799009)(451199024)(316002)(6486002)(66556008)(66946007)(66476007)(54906003)(6916009)(2616005)(1076003)(26005)(83380400001)(38100700002)(86362001)(82960400001)(36756003)(478600001)(6512007)(6506007)(6666004)(2906002)(41300700001)(5660300002)(4326008)(8676002)(8936002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?Z0s0d3VaeUxSVjBPZ21oZzhubjVnNENnM1M2S3NGMk94V0FGemZRZnRLaTZK?=
 =?utf-8?B?SGt6aVZJRnlpblptL1AzUzU3WEorWEZ2ZUpjekloOTNkNFNFdXNxOWsydWl4?=
 =?utf-8?B?bUVKV0pZQ1B4UXVPQ0ZuKzQrQkR5bkoyZnpWUXdGNldFamY5UDcvUkF6VTZu?=
 =?utf-8?B?M2w5VVBidVhWQkZUTEhpeWo1UUNDeC9nbXdEL01icHJ0ejhLdDhpdVpFcEND?=
 =?utf-8?B?azVmZGRaYmxLQWxuMkEvNjJiT0s0azE4WUhac0pRa2JtZm1EQVRKMllTN3ZK?=
 =?utf-8?B?WlNiWVUxWC9LbFI0dEJhdEVEeG9FTmVlVHNyS2cwNU0rMHRJN29LZHZwQkZk?=
 =?utf-8?B?NUhOZjNsKzd1Tm5kMkIzVUlQaFNWTWplcHhUZ3FsSkRhZU9xc1RCRmdOOE43?=
 =?utf-8?B?OXF5U05hZDFhNUxKYkdqYnNoaUI2TmhMcnA1am1NUm05MkFML25icVpDMjVr?=
 =?utf-8?B?SXE2QTdsVmJBcHU0U0NCcGlxRmV2eHJEL1dzZTlNZDA1R2M2dDBibHBCVVpa?=
 =?utf-8?B?N3pYTFhTNlA3Z0tKaGIxUkZmYWo1UmdOU2J0RWxqWXlvRSt2czB4OXhUUnA3?=
 =?utf-8?B?NzBtcDRtbndnbzhmMmM3ZmJOZ0VjdEt5em45ZlhCRnphOWVmTmFGMnlWUUlE?=
 =?utf-8?B?QmpLak5YN2wzMlI0K3UyM0c4Nlp2ZnRJMmRsSGtSK2RzcVlIbkNNQm5uUmh5?=
 =?utf-8?B?c1lBWVFhV2UyOU5lZkkwNlZ1dHk3cENXNVM0RzdJVW5kSG1rb2FndTB1b2hW?=
 =?utf-8?B?WTFrL2lQV3Q1VlBZT2s3SzdQdm1GYlk4b3JTTWlFd2UveVRHSmdTU0ZwYkJF?=
 =?utf-8?B?NUZKOHRHR0swdXBMd0Q4N0xTc2dJRy9oaExWazFyNG9wRVF3K3k1QlpxTEFB?=
 =?utf-8?B?RUkwdkxDNll6WmJCWUl4N0d4aDhlV2NlM2dPRFNkZGwvRnZyeGE0MnFlM1lz?=
 =?utf-8?B?aDlIZmY0a3BLTDNlZXcydGFQY2RsOGtmRmZHa3RUT2I4MytBcGZwWjY5SVQ5?=
 =?utf-8?B?YlNTSkpuVWExQi9aOEZ6OHVPeXQ3QkxleFRGSWtHWkhaTUhwZFcxTkZmWnVH?=
 =?utf-8?B?MXdNREcyRmlvQTQ0VzhqVVliNHY1OU1EaC9GellDNlNZU3MraFJrMmJQd3Vo?=
 =?utf-8?B?U3A3NE8yT1hPeWdOampvdkowZXd6U3E3M3FOMDFPQ1EyRmJZNmlYZjJIR3Br?=
 =?utf-8?B?aVVHc1EyS1gwenYzLzFJM25DZTFpSGM3aUZ1eW5SZlRpc1VUU3pOaThXOUt6?=
 =?utf-8?B?Mm5UbmhBTVR6YXBwTWNTU3Y1YkhvbXo0aFdLazc1bERKaTFPTStybXAxOVFi?=
 =?utf-8?B?b3V5aGYyOWJhWnZKZUwwVnZFa1djWDJSSkZPOVhQdUxCRyt1cC9QWmNwZ3FJ?=
 =?utf-8?B?aDEzMzBNUVdWMXphMGoxbUxrZmN1ZllBbmhHUUZOd203VXB1T2s5Rnl5ME5n?=
 =?utf-8?B?aHJDUExpNi8wRkxUTGUySEMvWlFGVThCU1F1bG82bm9OUkdZOWVqdUZHTzZO?=
 =?utf-8?B?WFgwT0kvbENDWU5XdmZSVlZxUVRaWjFYbUdlZjVmZXo5ZnYzbTlQRE8xVGky?=
 =?utf-8?B?N2ZUMkpFN3MyZnlrbkxObTlqMTRuSDBxTHhDR21Oc1o0eG9JUFN3UWtrc2xY?=
 =?utf-8?B?U3JURWlmMkIwYjdudm9nMTdIYWFXU0lMZW9qeXA2U2xjMjN6VnZFNXJXalA2?=
 =?utf-8?B?MWgxSzlhRmlCWU5Ga3IxK0xMREtKZjRDZ3VVS2ZBVC9Zcnl1VFVzSW9sWFY2?=
 =?utf-8?B?WW1wZ1g2ZlY1YS9rd1l0UFMzTE5tTSsyMXFWZUJWdU45VDhnU1V3eHJxTXF5?=
 =?utf-8?B?U3hzVG1mRkdSOWVXa0lhb3ppWVdKT2k4eTFLK1NoUngzS3dUS1Y2MXl6ZjNC?=
 =?utf-8?B?RkFHaU4rRDhEYXlIc1NXbDNDWlFnTG4rK296eU85dXlJaW9PNlNyd3BqY3o5?=
 =?utf-8?B?Yjc4UDM4YkxIY0ZuTFVyK1VHN3dxOFNjREUrS1JaQjUvU2RoZWl5Y2xJWjg3?=
 =?utf-8?B?VCtZQzJLMmthb3hPVmt3bzR3MGV5eXJubkwzQjFIaVZJZGlMQVZPRitpWUs2?=
 =?utf-8?B?S0hYSlB3dFo4NjhEenZEOG9lN0lnMTVKM1R1TW8zQko0TlM3aitrdVRMR3Ji?=
 =?utf-8?B?NEZPMnpHTHQyY29yV3Z3L2kxUEV5U2pxbXYveS9JNHBsZVdtUHB6WVpwSDNQ?=
 =?utf-8?B?Z2c9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	HIoXAJ9pGFeqxLzQEjW75eIqwPMdwmuvtQZK/53X65TM28JlVNgAzkiRDxkDBKHjRZwHZCYulUS0P2gm3oLOxvV/AUtxZbYI+yPlclcvIz4UhcVgchjSmPBzPEKY11d87fzVg7LJwNfHruwXU1Z/w3kECWk4qw6VmeMuSx7q08K2DXjc4R/vOkuUkrU2RnuY5v+RkhNPCMmWIBknRd6yzLcEAxo/7r+p95dFfOKjwVJhQa5XuGGVMwic89EjdTbyONFPPPiX847nFfOdSkP5v+9dv/EpsRxQ1nX62MxukCctJjnW27lKP8MMYI25ZDPNz/EM7J8CKVoAxmBAynRM4xffP74foEzw18pn6AAkj9rs0i2ul5InFA2r3+PZ+w6Nk74cHFurI+fm6OeRLiADRGqFlyVKuRoFn26W6n4Kb9Lo4QRcoXLi5J5reWlaXEVE+N7PQTDbYmVeH8fpcVXpJeMYc4lJG5J+gmEZHKyjuA46XNH3EBx8duqUNmS/zRa1QAW6Zw+NGoj+OWtyP/TRzO1s9+flW4rmCqLuuD/hTUyBte/xl9mCfo4oyCFV9igQx3MTeFLbbqNTX7MSaiIv1Fgz2bW7RI95UBO6mnuPmEOpCkMKDN3J/3pwW0mPzj1SH36WBruS7+Gw7eQatkTapcQJSiBW22oA5c73nRCpOQwYWj5GN4EjoCmCDinP0A00y3Glmm8/P3QWaTc1wlmvI8tQbmsKM4KQB8txdDX7kzMyws+I1tAT7fFAur0kZiMSN40PCQBM007y+BBGRe3yz+1uZ3fsOgec3k1hbXnGZ3XBoU2eB4mh+HrWtTBU+Q8ii+Rwh/7UM7EEW5Fj2DIR3n8IZj0tBJY9ZeFwq5F6qjY=
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: b4e58ad4-fe7d-4433-e100-08dbceeb26ff
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Oct 2023 08:29:17.2404
 (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: 8nZaaUrkKETHWv8gvjSVykFzoTpvXLWMVvyX+YObYgwt9lmRjLnOwnA7lFzbjCgbw92l+fKLd8FiSOLGTtEwqg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR03MB5541

The mapping of memory regions below the 1MB mark was all done by the PVH dom0
builder code, causing the region to be avoided by the arch specific IOMMU
hardware domain initialization code.  That lead to the IOMMU being enabled
without reserved regions in the low 1MB identity mapped in the p2m for PVH
hardware domains.  Firmware which happens to be missing RMRR/IVMD ranges
describing E820 reserved regions in the low 1MB would transiently trigger IOMMU
faults until the p2m is populated by the PVH dom0 builder:

AMD-Vi: IO_PAGE_FAULT: 0000:00:13.1 d0 addr 00000000000eb380 flags 0x20 RW
AMD-Vi: IO_PAGE_FAULT: 0000:00:13.1 d0 addr 00000000000eb340 flags 0
AMD-Vi: IO_PAGE_FAULT: 0000:00:13.2 d0 addr 00000000000ea1c0 flags 0
AMD-Vi: IO_PAGE_FAULT: 0000:00:14.5 d0 addr 00000000000eb480 flags 0x20 RW
AMD-Vi: IO_PAGE_FAULT: 0000:00:12.0 d0 addr 00000000000eb080 flags 0x20 RW
AMD-Vi: IO_PAGE_FAULT: 0000:00:14.5 d0 addr 00000000000eb400 flags 0
AMD-Vi: IO_PAGE_FAULT: 0000:00:12.0 d0 addr 00000000000eb040 flags 0

Those errors have been observed on the osstest pinot{0,1} boxes (AMD Fam15h
Opteron(tm) Processor 3350 HE).

Rely on the IOMMU arch init code to create any identity mappings for reserved
regions in the low 1MB range (like it already does for reserved regions
elsewhere), and leave the mapping of any holes to be performed by the dom0
builder code.

Fixes: 6b4f6a31ace1 ('x86/PVH: de-duplicate mappings for first Mb of Dom0 memory')
Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
---
Changes since v2:
 - Leave the identity mapping of holes in the low 1MB.

Changes since v1:
 - Reword commit message.
---
 xen/arch/x86/hvm/dom0_build.c       | 6 +++---
 xen/drivers/passthrough/x86/iommu.c | 8 +-------
 2 files changed, 4 insertions(+), 10 deletions(-)

diff --git a/xen/arch/x86/hvm/dom0_build.c b/xen/arch/x86/hvm/dom0_build.c
index bc0e290db612..b8c27c1b1646 100644
--- a/xen/arch/x86/hvm/dom0_build.c
+++ b/xen/arch/x86/hvm/dom0_build.c
@@ -449,7 +449,7 @@ static int __init pvh_populate_p2m(struct domain *d)
         }
     }
 
-    /* Non-RAM regions of space below 1MB get identity mapped. */
+    /* Identity map everything below 1MB that's not already mapped. */
     for ( i = rc = 0; i < MB1_PAGES; ++i )
     {
         p2m_type_t p2mt;
@@ -459,8 +459,8 @@ static int __init pvh_populate_p2m(struct domain *d)
             rc = set_mmio_p2m_entry(d, _gfn(i), _mfn(i), PAGE_ORDER_4K);
         else
             /*
-             * If the p2m entry is already set it must belong to a RMRR and
-             * already be identity mapped, or be a RAM region.
+             * If the p2m entry is already set it must belong to a RMRR/IVMD or
+             * reserved region and be identity mapped, or else be a RAM region.
              */
             ASSERT(p2mt == p2m_ram_rw || mfn_eq(mfn, _mfn(i)));
         put_gfn(d, i);
diff --git a/xen/drivers/passthrough/x86/iommu.c b/xen/drivers/passthrough/x86/iommu.c
index c85549ccad6e..857dccb6a465 100644
--- a/xen/drivers/passthrough/x86/iommu.c
+++ b/xen/drivers/passthrough/x86/iommu.c
@@ -400,13 +400,7 @@ void __hwdom_init arch_iommu_hwdom_init(struct domain *d)
     max_pfn = (GB(4) >> PAGE_SHIFT) - 1;
     top = max(max_pdx, pfn_to_pdx(max_pfn) + 1);
 
-    /*
-     * First Mb will get mapped in one go by pvh_populate_p2m(). Avoid
-     * setting up potentially conflicting mappings here.
-     */
-    start = paging_mode_translate(d) ? PFN_DOWN(MB(1)) : 0;
-
-    for ( i = pfn_to_pdx(start), count = 0; i < top; )
+    for ( i = 0, start = 0, count = 0; i < top; )
     {
         unsigned long pfn = pdx_to_pfn(i);
         unsigned int perms = hwdom_iommu_map(d, pfn, max_pfn);
-- 
2.42.0



From xen-devel-bounces@lists.xenproject.org Tue Oct 17 08:54:43 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 17 Oct 2023 08:54:43 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618145.961438 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsfqR-0007jG-KO; Tue, 17 Oct 2023 08:54:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618145.961438; Tue, 17 Oct 2023 08:54: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 1qsfqR-0007j9-GZ; Tue, 17 Oct 2023 08:54:31 +0000
Received: by outflank-mailman (input) for mailman id 618145;
 Tue, 17 Oct 2023 08:54: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=tHSl=F7=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qsfqQ-0007j3-Mr
 for xen-devel@lists.xenproject.org; Tue, 17 Oct 2023 08:54:30 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id c7b10304-6cca-11ee-9b0e-b553b5be7939;
 Tue, 17 Oct 2023 10:54:28 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id 1CE9A4EE0737;
 Tue, 17 Oct 2023 10:54: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: c7b10304-6cca-11ee-9b0e-b553b5be7939
MIME-Version: 1.0
Date: Tue, 17 Oct 2023 10:54:28 +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.cooper3@citrix.com, roger.pau@citrix.com, George Dunlap
 <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>, Wei Liu
 <wl@xen.org>, Paul Durrant <paul@xen.org>, xen-devel@lists.xenproject.org
Subject: Re: [XEN PATCH][for-4.19 v2 7/8] xen/types: address Rule 10.1 for
 DECLARE_BITMAP use
In-Reply-To: <8c0a4331-4a89-4cb2-02ed-70cad3ad2116@suse.com>
References: <cover.1697123806.git.nicola.vetrini@bugseng.com>
 <f94b0c9411937a4003b86b5850b6d4ad91dff5d5.1697123806.git.nicola.vetrini@bugseng.com>
 <8c0a4331-4a89-4cb2-02ed-70cad3ad2116@suse.com>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <89bd9f429c4a5e455956ca6be44da754@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 16/10/2023 17:49, Jan Beulich wrote:
> On 12.10.2023 17:28, Nicola Vetrini wrote:
>> --- a/xen/include/xen/types.h
>> +++ b/xen/include/xen/types.h
>> @@ -22,6 +22,14 @@ typedef signed long ssize_t;
>> 
>>  typedef __PTRDIFF_TYPE__ ptrdiff_t;
>> 
>> +/*
>> + * Users of this macro are expected to pass a positive value.
> 
> Is passing 0 going to cause any issues?
> 

I don't think so, even if that wouldn't make much sense. Given that the 
usage of the
zero lenght array extension is documented, that shouldn't be a concern 
either.

>> + * Eventually, this should become an unsigned quantity, but this
>> + * requires fixing various uses of this macro and BITS_PER_LONG in 
>> signed
>> + * contexts, such as type-safe 'min' macro uses, which give rise to 
>> build errors
>> + * when the arguments have differing signedness, due to the build 
>> flags used.
>> + */
> 
> I'm not convinced of the usefulness of this part of the comment.
> 
> Jan
> 

Isn't it useful to record why it was left as-is, and what should be done 
about it?
If it's not, this can be dropped on commit, in my opinion.

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


From xen-devel-bounces@lists.xenproject.org Tue Oct 17 09:14:09 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 17 Oct 2023 09:14:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618150.961448 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsg9D-0003fM-4n; Tue, 17 Oct 2023 09:13:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618150.961448; Tue, 17 Oct 2023 09: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 1qsg9D-0003fF-24; Tue, 17 Oct 2023 09:13:55 +0000
Received: by outflank-mailman (input) for mailman id 618150;
 Tue, 17 Oct 2023 09:13: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=BgJ9=F7=citrix.com=prvs=6472a2412=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qsg9B-0003cr-QH
 for xen-devel@lists.xenproject.org; Tue, 17 Oct 2023 09:13:53 +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 7c330efc-6ccd-11ee-98d4-6d05b1d4d9a1;
 Tue, 17 Oct 2023 11:13:51 +0200 (CEST)
Received: from mail-bn1nam02lp2041.outbound.protection.outlook.com (HELO
 NAM02-BN1-obe.outbound.protection.outlook.com) ([104.47.51.41])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 17 Oct 2023 05:13:48 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by CO1PR03MB5876.namprd03.prod.outlook.com (2603:10b6:303:93::11)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.34; Tue, 17 Oct
 2023 09:13:45 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::17e3:6cff:b087:fc64]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::17e3:6cff:b087:fc64%4]) with mapi id 15.20.6886.034; Tue, 17 Oct 2023
 09:13: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: 7c330efc-6ccd-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1697534031;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=vj19whVxZfVSbw0tpAdHxUDey/dDgrwBMhenQEvY7Ok=;
  b=K5A6UG0eyWNkcjijjZ8kKX505fjedAB0mZubp84XLn5I4i3dfXRA5t6c
   tcCnfqoz21PVMrAkIWkY5YGq9NFvt8cEBCQU4EdJANOqLAi/lvAuGmerg
   DAlthJnhIaXGvwKUfgV4gfHrr2b4nXuuE6ge0RCQ8DmwsxI/R9/4Hc4BF
   4=;
X-CSE-ConnectionGUID: Fr1rgefXS5a+4bDAz8PFmA==
X-CSE-MsgGUID: ZorBfCY7R2KpbKdVyByCZw==
X-IronPort-RemoteIP: 104.47.51.41
X-IronPort-MID: 125671220
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:LLq8OqxcZ2b74zTGSyJ6t+fhxyrEfRIJ4+MujC+fZmUNrF6WrkUFy
 zFLXD+EbviIYmT2LtElPd6/9R8FsJ+Gn4BhHAJr+SAxQypGp/SeCIXCJC8cHc8wwu7rFxs7s
 ppEOrEsCOhuExcwcz/0auCJQUFUjPzOHvykTrecZkidfCc8IA85kxVvhuUltYBhhNm9Emult
 Mj75sbSIzdJ4RYtWo4vw/zF8EgHUMja4mtC5QVmPK8T5TcyqlFOZH4hDfDpR5fHatE88t6SH
 47r0Ly/92XFyBYhYvvNfmHTKxBirhb6ZGBiu1IOM0SQqkEqSh8ai87XAME0e0ZP4whlqvgqo
 Dl7WT5cfi9yVkHEsLx1vxC1iEiSN4UekFPMCSDXXcB+UyQq2pYjqhljJBheAGEWxgp4KU9Ur
 OYXJT49VU2KxL687JupGtFCg+12eaEHPKtH0p1h5RfwKK58BLrlGuDN79Ie2yosjMdTG/qYf
 9AedTdkcBXHZVtIJ0sTD5U92uyvgxETcRUB8A7T+fVxvjGVkFUZPLvFabI5fvSQQspYhACAr
 3/u9GXlGBAKcteYzFJp91r13LKRwnqhAtp6+LuQxPlwqlO49zMpUj4OX3i3n+iTm2WMRIcKQ
 6AT0m90xUQoz2SpRNTgWxyzoFafowURHdFXFoUS4QWAyKPS7xyeQHYNSjpMatsOv8sxWDBs3
 ViM9/v2ARR/vbvTTmiSnp+0oDWoKG4qJGkNTSYeSE0O5NyLiJE+iFfDQ8huFIaxj8bpAnfgz
 jaSti88ir4Py8kR2M2GEUvvhjutot3DSFcz7wCPBGa9tFslPciiepCi7kXd4bBYNoGFQ1Kdv
 X8C3c+D8OQJCpLLnyuIKAkQIIyUCz++GGW0qTZS81MJrlxBJ1bLkVhs3QxD
IronPort-HdrOrdr: A9a23:VV+FCaEO5d7bVPFSpLqE5seALOsnbusQ8zAXPiFKJSC9F/byqy
 nAppsmPHPP5gr5OktBpTnwAsi9qBrnnPYejLX5Vo3SPzUO1lHYSb1K3M/PxCDhBj271sM179
 YFT0GmMqyTMWRH
X-Talos-CUID: 9a23:zp8Ibm+a5Cs2u+pEYCOVv2AOQ9oqf3Pt9yrZYBOyJU97GIW7THbFrQ==
X-Talos-MUID: 9a23:wYtlFAhit5ty5Gm9Dl15QMMpBsByyaqFOR83y7YeseqICz1aKhyvk2Hi
X-IronPort-AV: E=Sophos;i="6.03,231,1694750400"; 
   d="scan'208";a="125671220"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=THK2niNKsNT80q6Gj22duidAOHuBTR+HMCj9M8T3mUE14d+uwjDk8TBRBP2Uzi0Y57Hfe8J2iKR+2t19ZOMZ8hjcD/cd860zHmVEdelOHBKtKQngLPC4SNEsiFnmoyWj2+0S21zrukx9z2XWETE4llUWKefoxE+kd0OK1XbtgJVDmmwSQennDzU3YQNJ9cj7IAVfh+tWTifQ3ybDmF+2NbPGuhqRFDJUi91u10p6DsR0H6icx/zcFuEA6BpkscCa/UhjHd4TrwxCAp/JFxUvUVVphpbUKuHken40DqGHFupcXGNuqxBQ/5hMHB5vPkZgFYy2kDeJ5r4T8zhaw+MXmQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=94uc5/wpCD3aYoQUZNORvAEM7NXrlohsKtpfDYHQohE=;
 b=XsaTwxOefF5kY+8u8Dz4x9YMZDC0qM/i58xP+XIl0LvGI8rLFhWo2G37vKfMxvNhWjIPQsAlXfmFa7EGIj4K0VluU+PNR5vkc6DTPqSxd6erO/oEdq3liJ+O/3K5HQ8RoVRJ5Es5cQ/lzIANh8ZAPy7RydBe97KSrGkzrHVhR2HPnz17R/N/4y4pkQd50WTSOWm4l3apL6+IaBzk5Il0Pc1hU5ygLRZl0Uyvut1C8DoWcyliOVTJI7t6drOICMe6ZZ4UKmcFtXa6CrA7L/KbyjpBRXcQDHvCGdlWoqXMom/camP9a4tuE5E1xsgJNDoWcmsF9sLvWJDYdV1tAVyK8w==
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=94uc5/wpCD3aYoQUZNORvAEM7NXrlohsKtpfDYHQohE=;
 b=WeQM/OgBpSiH5CIRiy2Kps3CyOyrXz/YNfO4d9YNugXTC7XAcIv2i1ZId45o7gDkW37uLtGOz/N6yzzgbJVA55MLvd6496ANpzDIMfLnv6AYMfL1G76qaPFhOc/xe5n+aibUqEWmLXUrh/eKByV7gyzN/w/CsM51S4Ycq+91b3M=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Tue, 17 Oct 2023 11:13:39 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: Jan Beulich <jbeulich@suse.com>,
	Alejandro Vallejo <alejandro.vallejo@cloud.com>,
	Wei Liu <wl@xen.org>, Henry Wang <Henry.Wang@arm.com>,
	Xen-devel <xen-devel@lists.xenproject.org>
Subject: Re: [PATCH v3] x86/amd: Address AMD erratum #1485
Message-ID: <ZS5QQ8icFa-EQD4H@macbook>
References: <20231013153801.188324-1-alejandro.vallejo@cloud.com>
 <ca7a8bad-4d6f-1da4-b48d-7acbb5db401e@suse.com>
 <ac366b7c-497f-4a9e-873d-a961970c4ad8@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <ac366b7c-497f-4a9e-873d-a961970c4ad8@citrix.com>
X-ClientProxiedBy: LO4P123CA0187.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:1a4::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_|CO1PR03MB5876:EE_
X-MS-Office365-Filtering-Correlation-Id: 2b017d18-cfe6-490b-70d8-08dbcef15d0d
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:
	kj72HMCugGpNBtqQTuldJv6WS44wGinJDyxGowGazO+3T7M+9boSKCPh6T6/HmS0+QUB4BzHy25/ULSvAJksYsd/46xq4GgZjY+MYzw5G0MuwElOuWk9LNf6EGtDaBfIgqN7eDbxG+LdVNN1/6nmSPT8PdQCcjf5c17dyULKVwRS2uXolAnd1voOQzK5TuHI0PajVW97pLUpbniKxe4adRPjD1PddqRd9AZyfn6tUfhFOTx4DbHAnnkMutTUiabn4kpN+HsTaetgFnn8gYxQeGEEqSoNH+c0kBBTzJd63ODkhrvQ4n21TJiuQ4hwXGo4cI4q2iMSgtrQnNiyrqNwIuX4rtlo5+7D2Xv7dusMtD+7a7FbQ72Ipau71cYeFyncGuoKnsemVn6t+JNw14vuUyOOwvvsvygvACZrPCZnKo0j4TqmjcwX44kPS4JdACTB3EnZ+TLxYYU/yRJDNKc6eClG1ARXMTOoHXWTisUl99uxbhyApXaJm3CL7EF4rZkr08LjJtc5mv4ZonBeTRNnRxMFVY2iJ7Z9uSZXGpGyI+w=
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)(396003)(136003)(39860400002)(366004)(230922051799003)(451199024)(1800799009)(186009)(64100799003)(85182001)(66476007)(66556008)(54906003)(66946007)(38100700002)(86362001)(82960400001)(41300700001)(26005)(33716001)(6666004)(53546011)(2906002)(6512007)(6506007)(9686003)(478600001)(6636002)(4326008)(316002)(966005)(6486002)(8676002)(6862004)(8936002)(5660300002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?aVlNMy8zN3BoS3U2OTk3WnQ3aERCVnpLZUUveVh3NUFIRFVKa0xCVy9VaWcw?=
 =?utf-8?B?RGRDNkNpYitiU0t5Wk9pRG5BSUs4cm5BaW85YkF4TlB0NzZxWUkySUtmSGVl?=
 =?utf-8?B?T0lGM0RqcVc5QXI2dFJ1TEVuTzdjSkJUemlOaXcvSVQrelh1YmRTNVkwOTQ0?=
 =?utf-8?B?d0NlaGJyQmtiU1A4UDVBSS9RMzEwY29kQWh3Skg4cCtuOEVUVnkxeDFWQjJ1?=
 =?utf-8?B?aG9lREpWODZHeXRXZ1hMU2gzaHo0K0hlcVozczQweWJnQ3FKWGMvbjB6Yi9E?=
 =?utf-8?B?SDhScmo1WCtjQmI1cm05U0ZuZXM2VVZOTUtvQWxEcnJ0d1MvRkk1REdVL2d0?=
 =?utf-8?B?Z0ozaVk2dHRza1RjVXBkUXZYNmgyRHBoWlZ3RGRRUXNwUnJrUWMyQ3krbFln?=
 =?utf-8?B?Z2FoR2lBODQvOWxwYldZMVcwVVRLOTQzMEs4UEh4NDltNWlNQVV1cEkwTmor?=
 =?utf-8?B?akNwdTIvVTJFb2NXK3NERHB3M1FsOGc5bVoxb0wxRkwxVS9veW4wU0tZODQv?=
 =?utf-8?B?VzdpWVdXcFRGcU9nVkZPMnY3TURCcXVSNkVXS3YzUDgwcU1mcVp3aVMweHpu?=
 =?utf-8?B?cWV4cGFWMHd5Z3UwcU1FR0lFSmdTRFJ4K3BNdHowdVJnL1UrbVB2T1pqWUsr?=
 =?utf-8?B?UllJc3ZOQnMxMko0STlYMEd4dFlxWHNVRFRjeU5nUEFOUm5Cdm56N3lOMHFX?=
 =?utf-8?B?VVdqTUdWbmdSZ2d3Vi9QR3dFRWhxY28rS2JHOEw3UzRsL0xMUGVFbkJZbEQ4?=
 =?utf-8?B?Y210Z3BMLzlVUG5NTjE3YUZrc2tzVEVUTVQyZWQ3MmE4VVM0eWYraGkyaDJ2?=
 =?utf-8?B?NzBENlBnazNSQ3FjYUpuVHRwYkk2R0NiOEV4N1lQRGYwa2xKcjlLV2VyMGdS?=
 =?utf-8?B?MzcxSHVWNHIrSWZwbkFwR1ZQMTVUMFg2MWl6UzlCdC9jL1RpQ00wVnBjUFA2?=
 =?utf-8?B?VkYreHBjR3VBNDFKUDN4cjZyck43K0VHdGVFVnU0cUhrN2pmTEdieVloSmk3?=
 =?utf-8?B?Y0dlRFdJMFFQNXc1YjNSNTVXL1F0YS8xYmtxL0wwVFFZdmlONksyWnNEVzEx?=
 =?utf-8?B?UkJFOFAyS1JlYzEvZW9qWkF0bHhQQVk5SENFQUdQRXh2azJ3cjhzUEdXS3Z3?=
 =?utf-8?B?Z2c2ZDRlUkwzZzRoakt5MDFGY2pJZStQMm9nOFJnNEw0Ky9uTk9JbEY4UEtY?=
 =?utf-8?B?d3Q4V1dJVU9SaEx3cDA4YmtmQi9EVlFvT3k5SUEwTTJPSlQrNGQ2Y0dVUDRI?=
 =?utf-8?B?T2dvWm1ISXF4aU9tQmw4ZCt0NjRNME8yYWEzUFdHbDNlR283anZtd2Ryc21y?=
 =?utf-8?B?RU9nS0dhRjg4MVc4S0xCUXkyUXUxY2hiT0pRWlBQNjJkdTZ1TEpTa1B6TkNw?=
 =?utf-8?B?dm1YVWZEMGhuTGVIaGRnT2NkUVRUMGo0S0owcytoeDlFL2tDSXpCVUdpQ2Ez?=
 =?utf-8?B?OHBwVDNHQlgrN3VPK00yREY4SzhRN0l5WkRNUXQzcnBQSlJjRkxRdXBwS2Zo?=
 =?utf-8?B?UHNUYlF2VU9rOHEvOVJzSWp6aDA1TVM5RExvMHo1U3hSejdzM05RU2RJdm5x?=
 =?utf-8?B?VTNJQlhxZlNscUhrNUN1VHFSZlRFaitOanZhQkd4OElucVZ1bE1KK3ZiUmRM?=
 =?utf-8?B?bWlvdVN1U3VyM0dGeFdpV0JVVkRjSGovRkNaVmlHZ2tGbXpHNVBEWHpnRHRt?=
 =?utf-8?B?OW5ldDA0bHloYW14bE9ZTkI1RXlvMy8rV29sU3pGNHlMYjJFakxDbHo3dGc2?=
 =?utf-8?B?ZldjUlNLQkZLMnNsa3lTSHNOQk9KS0hwTE1OY1N1RjBLcXRJc1JLMTViZ2hU?=
 =?utf-8?B?ZlFidXFiOFQ0VzlJUWdGT3QzQVJhc0dRLytMU3pralNISTVGZys3S0tkZ3Fo?=
 =?utf-8?B?L1Q5RmYyM09xZ1I5RFNkYnRLa20rYXVZK0wzVzQxeVRpUFAyYWlmOXVjY1ZU?=
 =?utf-8?B?U3hTMnJYZ1ZlWkN6T3pWYUhGZzZWMzRIQ0NGcDFtcnQ0NnpqdGxsZnprTXF2?=
 =?utf-8?B?c1BzbXdqajFVcXhNZlJWODViYk1sOGErRjJjYkpYWGRTVzh6UGFEa3Vjdlcy?=
 =?utf-8?B?UUlicGlQVi9HQzkzN3BxQTFsQkx4dHRBamh1a0dhSzZ1OFZGbkI2bFlLZ3pk?=
 =?utf-8?B?UWNvR2JYcFVVTnhPTUxzM3dzVEJjUXJSZW9JK3ZpbUxrOEJLLzgxUzhEbm1o?=
 =?utf-8?B?NWc9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	CzLE0psV9TKrzOmXKV1WIrryeYwH84n32o9B/8t5m5EtHcH9nd9GN/65F/GYV9A0j+27ucjuidJVYxB1svMSO2ldjpihostpYX8yfXF4h0vwQsuPxp1AkXAvmeHjB8VNjglNsmBpx7MFvuueJSMrKylz9+2PkE45HxlEUmYDdDz8TNgkc0t4gbMT3DCtW8uFfD6SrP7TZP5ArkJfHw08DlQkh2d6V9K7yw10pNYxQgKLXm8dYIwT0je9dMqlSL23gZvQRK6fXCHjRK5N3C8eWCgLFJayuDqlhRGFebkQ396teI+hEDEflkdhupocGnM/MnOb+BGiCR4AFr3vQ3PjJP1Wx+P+IvDfN4TQVdZ7nvhGiaA7y/Y9Rtyjx5/v26xRM01FdgMHE95tz1EnyPy02vcJ2suZw5EqP80D420a6dVBT0ZSqNMzXONiQT547S8fOIGBY0pWTfTSV4zkaaKEhwEnirv1PbNDHb4znZEc+8TOqM2NjL9QBlVMqI2LCbdwIAPOeyQnQziLmCdCib0PtbwT1gSICUpErW2rtN7pTvZrcqJ3mSrUYvLDDcnVAXEkhUYioSOHA2YikdrgFj1JeLIhYkKdHL4hdnVwFNNctOmnMOrJkQm9TMjITDQu/AMqx9Fow4gJDQ9+zzVptR2IjpaA5HUBgWWWNjekFgS4j5CHHN4DmE7nR6we56fWLX/5U4XmuWyk79VxrCpK0+RVRsx6FMIMm8nV73a+cnLqQdZLul0Dl+wvrYZtYCWZHMgLFqwagNGod2m/ZRxvLDY9wjhn1whUoiHl2qwVRSdTrKyjzkjle+fOioIpe8WbIp/V/1XvxquXnjJrmMFHBFHlKr4VdAy4DGUZl4B99rnHd0yAY8WchvrpqQI4ZlP5A+Gw
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 2b017d18-cfe6-490b-70d8-08dbcef15d0d
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Oct 2023 09:13:44.9674
 (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: nC67oZ4lRStnhsuW6y9yQp8MK589Mf6uNP/IX26edMia8otJ3Ae5dkXI0wvnbS0j/wyQjcwZhu9HecHtLmaBNQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: CO1PR03MB5876

On Tue, Oct 17, 2023 at 08:50:45AM +0100, Andrew Cooper wrote:
> On 17/10/2023 8:44 am, Jan Beulich wrote:
> > On 13.10.2023 17:38, Alejandro Vallejo wrote:
> >> Fix adapted off Linux's mailing list:
> >>   https://lore.kernel.org/lkml/D99589F4-BC5D-430B-87B2-72C20370CF57@exactcode.com/T/#u
> > Why reference the bug report when there's a proper commit (f454b18e07f5) now?
> > Plus in any event a short summary of the erratum would help if put right here
> > (without needing to look up any documents or follow any links).
> 
> That is not public information yet.  The erratum number alone is the
> best we can do at this juncture.
> >> --- a/xen/arch/x86/cpu/amd.c
> >> +++ b/xen/arch/x86/cpu/amd.c
> >> @@ -1004,6 +1004,28 @@ static void cf_check zen2_disable_c6(void *arg)
> >>  	wrmsrl(MSR_AMD_CSTATE_CFG, val & mask);
> >>  }
> >>  
> >> +static void amd_check_erratum_1485(void)
> >> +{
> >> +	uint64_t val, chickenbit = (1 << 5);
> > Linux gives the bit a name. Any reason you don't?
> 
> There are multiple different names depending on where you look, and none
> are particularly relevant here.

Could we make chickenbit const static?

I would also use ULL just to be on the safe side, because we then copy
this for a different bit and it explodes.

(not strong requirements, but if a resend is needed it would be nice
to have).

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Tue Oct 17 09:21:57 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 17 Oct 2023 09:21:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618157.961457 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsgGu-0005oI-Rg; Tue, 17 Oct 2023 09:21:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618157.961457; Tue, 17 Oct 2023 09: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 1qsgGu-0005oB-P4; Tue, 17 Oct 2023 09:21:52 +0000
Received: by outflank-mailman (input) for mailman id 618157;
 Tue, 17 Oct 2023 09: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=ibp0=F7=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qsgGu-0005o5-13
 for xen-devel@lists.xenproject.org; Tue, 17 Oct 2023 09:21:52 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 (mail-am6eur05on20631.outbound.protection.outlook.com
 [2a01:111:f400:7e1b::631])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 9a9410c1-6cce-11ee-98d4-6d05b1d4d9a1;
 Tue, 17 Oct 2023 11:21:51 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DB9PR04MB8331.eurprd04.prod.outlook.com (2603:10a6:10:244::20)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.36; Tue, 17 Oct
 2023 09:21:49 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%6]) with mapi id 15.20.6886.034; Tue, 17 Oct 2023
 09:21: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: 9a9410c1-6cce-11ee-98d4-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Df+rgkpu7HkQoHuF78l4ZX8vrVT2raE/5E57qVKi6E0wu2Rwwg+R9sazsVlXaCWRkObzbEjrFi0EZDWD64zlhuGwaXDRIdEGCoB0bF6+gxpiznGHJ1VhIKuM+IZAeiy4Ag76SdHCtLlfI39n+GXgO1cP1QtR3rS2AIH2Xvd3gtIBbzrdQsTmkQsJbKbWyzcEY20nJ9CaRdFmJSsPbA2qIq3wN+XhWxWyTI8lGEa9fXMjNAXNxKZgDWeelJgp8ZL/ynBXEXSv4KTcbHgffcf71TJaeTdTKgTCzbULgoV4k1QxNHa1/cgdvt5twhT7gKKnJA6G7xSFWmYH/NEbpewxdA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=fWH6PyxsxbxR2mPdR/PgCHGLg1K4mC+PPMLkGM0TcsY=;
 b=hO/eu53kTEyYQLP/JGBIfGmQ/WjkEulawE5O9QN/r2tRQZxoeSwZ3WNGXYq735hHM1ZZt4lBmXncmsRLkNtr/Qag/bceeyHFFEbA6isj5XUfXgnWxNw/+FvNvErkT1ee1jJ+p7KgDdNa0TRbB7PEjvXAj0oZpqfqo2xzmZzxODW6Jktdcs+pcqwWI8CWfTBZTBsH8DzYHjKMTjwUWubws+hunvlPD3NVZRGcLgP/S22cWlBdLvVSY3A9UApDjgu1NJxA4evoJLXVZcPROKwhj4YWrla1Nr5hPfMrzkNEIgnTJnpDKDeROt/RKXl1CxCPDFPumRyPrzv7ugS2M04stQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=fWH6PyxsxbxR2mPdR/PgCHGLg1K4mC+PPMLkGM0TcsY=;
 b=xHOA8SHooen4V++aZVpfXj644KjjZaPqNKXKygj/GYXc7f/h9dMjn+uQDPwNFoG5IuNBpBC0jWGdoK5ZaKX+QLZ6+PorGhUGO6yLP60dZLGOhDRF+BiUAbjqrbCcz9FTzsmkLID3ipEGSE5QBX5F43tZPpL9qctXK6Mv7w7hNG1cJa+X58HhEVP4DJ4Guz4bNKwIgorXjemuXbtv2dEW3aej+dWhnPoDOlXJqEe7NuWqf1TGGp5jSQgZUNVAFI6yPTjcxKZvtw3f8BlcIyO5fjzJ8OZKxzWfwix3gdiWNk54Tw2g1u95hRZI5LykdbKBDPpG61ZUfjuzSUEL2c2snQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <3d043b4e-f6b6-1852-94d0-c0cfb5489661@suse.com>
Date: Tue, 17 Oct 2023 11:21: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] x86/amd: Address AMD erratum #1485
Content-Language: en-US
To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
Cc: Alejandro Vallejo <alejandro.vallejo@cloud.com>, Wei Liu <wl@xen.org>,
 Henry Wang <Henry.Wang@arm.com>, Xen-devel <xen-devel@lists.xenproject.org>,
 Andrew Cooper <andrew.cooper3@citrix.com>
References: <20231013153801.188324-1-alejandro.vallejo@cloud.com>
 <ca7a8bad-4d6f-1da4-b48d-7acbb5db401e@suse.com>
 <ac366b7c-497f-4a9e-873d-a961970c4ad8@citrix.com> <ZS5QQ8icFa-EQD4H@macbook>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <ZS5QQ8icFa-EQD4H@macbook>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR2P281CA0011.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:a::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_|DB9PR04MB8331:EE_
X-MS-Office365-Filtering-Correlation-Id: abe805b9-36b1-408c-f8d8-08dbcef27d9e
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	6Zi9Mwy9gzinevz6/C0i8N8FmBYQanA83xK6myFBxqGwFwGrMW20XfOY7ohGTwMLfwixEDsFXkpvvTSUmpd/TKHhFQHjLdk7VGeDwKDrn4WWhAfLKdgK2h1L2IrWGwAOoAmJY0zyyYhc+7dXIgHLZ6Uj6rtzm3Uy+aQxIk+ZSGtwdhhzVmCg+ivDU+93NUQH8qXb/Z/gqtXnssnak7GBU5Bjiyx9gVYinh0iH43zmQYsLOca9rlxuz66e4oTnA8G7gEs9Iv4TQjFRgvnqIaJEFxFt1rM/fcyZpxNG7QMdne/CbVj/9rgomwNXky/CGt9RIffHt2Kg00IsOQZ9vLnhbVhv1XPGhzahKoHrunVlr+aBEBpBCeFYaOnXpxeOl13wjlVNUngK3iGyVFK8bXx+gTzI/t1+UD9MGxD99TZC09GdVWYRGxqQjqDvvtjXZpheAyupsX5dXlWSns12XdHjusLQBmNM5+nQrzddjj0rv1v1LEUBPtEFDohn4sJ9fMhM92jb49DbkaPUSG2fftzCrjNMtEfByUWUMQMIiXp+a6Fo4zM+EbfeumpHtFDYNobXrANw5T8IStXPJ6KbOE2sUHhWuJhsGf4qRpcnW6ZBKUpoYCk7ET2BCmb0M72l8+nF++CuRbfABjwV0PrkzqRrg==
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)(39860400002)(366004)(346002)(136003)(230922051799003)(64100799003)(451199024)(1800799009)(186009)(26005)(6506007)(2616005)(966005)(53546011)(6486002)(41300700001)(5660300002)(4326008)(2906002)(478600001)(8936002)(8676002)(316002)(66946007)(66556008)(6916009)(54906003)(66476007)(38100700002)(31696002)(86362001)(6512007)(36756003)(31686004)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?aytTbXl4MzFCNWRNSVdoMk5ZdHV4TEdpRHNEb2prOGN6N1ZuNnZPMXVMcHho?=
 =?utf-8?B?bmhMZldqYzNYTk8xclE5Qm1SLzVHczJYaFhjYTNFSi9vL2dFMllleGkxSWdS?=
 =?utf-8?B?RGhTckhocGJMWTJMVkNFbEJjcWVzY0d0RGVWQk9WZWtSRmhodTh3VHYrMjhw?=
 =?utf-8?B?czk5WGxCd010dEt3aFZ4NW5vYzZwTnRVTEJ6MVhLSGxiSmozQkUxb0NLSGhN?=
 =?utf-8?B?WFhYRmF3RVlGTWlVUStZc1lxNVdwbm5Ldkt4eTQ5c1dWVC9CYTM2NmUvdnVv?=
 =?utf-8?B?eVl2dlE4a01TMVV3eC9Wbk91MEg3bFJOd082Q0J2MHhhbzdFM1loTkZ2TStu?=
 =?utf-8?B?ZmYyNmNhWHVmRDBRbDlOdmRRK3lwZGQrSkdPVHBLM0ZTdWhJUkM4dkV2L25L?=
 =?utf-8?B?T1N0dmFWb3h6eGRGQUxpaU1oMUdYSjlENVQxMFgvMFB2cit4QnRvdlJ5Zmxm?=
 =?utf-8?B?eDdRMzlxcFRvRUt0a0k0UW1ObWVXbW84dEZocXh4U0NrWlI0R1FqTENQUGF6?=
 =?utf-8?B?cy9HbTNUWkJPMmpiYk4xMEN3TEdYVjI4OUJMMWlIdVRuMmNCUXlwYnJEN1VW?=
 =?utf-8?B?SWl6TWdxTmRFL1h3a0ZtTjk2REkrbkV0UXBGY0pLWW5WS3BHS09KV21zVnBm?=
 =?utf-8?B?WVZNTDl1cURGYzBzN3pIKzVSWFlqK3RkRUM5UWR6SUJkV1oxYmRRWHY0SHg3?=
 =?utf-8?B?NW1ERTJTL1d3RlBYci96eEJhaUk3MHRmcm5UdFNuUFA1MTU1N0VpWEFES3E0?=
 =?utf-8?B?UUVoSEFGcGliWUpYNnpwalVNcWNTUy9UUGQwNlNCYUhNRExBUzNhSEdNaDc3?=
 =?utf-8?B?VkpERjlvUlkxRHMvb0ZjalczSDV6UnZhNEFGVC8yc2tWNmNLNlB4TXdKcXlx?=
 =?utf-8?B?ay9KZVBid2NsS0hXUm9JcUFyakRVQkVHbnJzZWlNd2lPMVZ4TFJMZ1NRMXpP?=
 =?utf-8?B?ZnJyM3NBQVJvdUJEclp0eElXdk80cXEvMmNBSUx4YzhQdU51N0NsZ1VPWlIr?=
 =?utf-8?B?SDF1QnZVbHA5aDNicGhvSlhZQWo0L01WR1lGbGZIclNrYlJlMDVPeDEvbU4v?=
 =?utf-8?B?K2FVRFBQZXBiMVljSVlqQW1QSzdXeWJpbzdYMU1MT2lPMkNvdks5ZDJaLzYx?=
 =?utf-8?B?UEYxSXJrcDdaZWx2TjU4Sytvb1F2cHduaFM0S0Y0eTdJNDhrNHNJcS9KTWpS?=
 =?utf-8?B?dUNzNWg3NUQ0dk5IbUhud1IyWkF6azB0ejNIUjBJa3RaNE9CTnIrMmtaNUVD?=
 =?utf-8?B?YndsaUFyM3JPRXlWbU8zaVlwZW1JaWVqMG5CUWlXT2JKMHZqUm5aamRReGdG?=
 =?utf-8?B?bUtWQ1ZTUE1UL3M5TWxiYVkzL21COW5jMjlCNWlSb3I3c2ZnK3dXM1hVL0JE?=
 =?utf-8?B?bURNc0RKT0krRmFURHVRaHVqSEpRb0ZDNExKU1BXVVF2ZWhWNXB2YnhOcTJG?=
 =?utf-8?B?NnFURngycEtZd09lVzIxbW9MTExQTkhOTlM0UTBIUUVkUGFmUHZRNEVmTC9k?=
 =?utf-8?B?SGN3aXVuMU9xNzdsaUV0VXZKWC84eklBNVZKN29JWnBrTEpSVEJDZElxdDFE?=
 =?utf-8?B?TFp4ZExjeXdOczViQkNuanBReUliWGlPVzd3N2NXN0xsdkhaNGV3SHY2QUkv?=
 =?utf-8?B?dlg2UWpHRllpU3NLKzlPTURGVTY0N2t3RjBoVWIyR2R4SnprRnU4VC9ScW9C?=
 =?utf-8?B?OE5PdTR2Z3I1d3ZINWg5OEpmZ3lFQVQxckp3ZkQ0SVVIc3RRZ2pPUXhPOU00?=
 =?utf-8?B?cXJ0a2REaUVienMxSXI1bi94L2lRTjNqYnVKenhJMmhDc3hxUGliakNhczI2?=
 =?utf-8?B?V1h4SC9QeWhVbzdjcXhoUFVBTUNuUWNMZVpvMTJRTHRvZi8yaFhwdXZva0Fn?=
 =?utf-8?B?ZWhPYXByTkpydVZSVENFeWhVcHpLSzRRYjEyK1J5bGlyWTQ0cC95SFhJZWNP?=
 =?utf-8?B?NU53Y0dzR1gzSHp5N1JYUEl0MXNHQlV2S1o2K1NINFBlQmN1YXE4dExRVkdU?=
 =?utf-8?B?NFAxclVWTFA5U2VvcFplbThrQnVHVlExUFQ3MVpYV3V3NGZyT3BPSElGYmtO?=
 =?utf-8?B?aUdJcER6Ym9Xc1FkVUt0UTFleUZHWDRyVUV3TDNmZVBDZWJsamZsVWQ4T2dY?=
 =?utf-8?Q?mTHUwdIuMQQnyGwWjsBtJwcnz?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: abe805b9-36b1-408c-f8d8-08dbcef27d9e
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Oct 2023 09:21:48.9706
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 0zbarTzfBmkgPZKSue7KlDS/aPTLBxehGc++fd+ptFpeJuw7tW0BXue5CzyVG4sdKpsQqFSW/JbuSNsGb9Z1PA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR04MB8331

On 17.10.2023 11:13, Roger Pau Monné wrote:
> On Tue, Oct 17, 2023 at 08:50:45AM +0100, Andrew Cooper wrote:
>> On 17/10/2023 8:44 am, Jan Beulich wrote:
>>> On 13.10.2023 17:38, Alejandro Vallejo wrote:
>>>> Fix adapted off Linux's mailing list:
>>>>   https://lore.kernel.org/lkml/D99589F4-BC5D-430B-87B2-72C20370CF57@exactcode.com/T/#u
>>> Why reference the bug report when there's a proper commit (f454b18e07f5) now?
>>> Plus in any event a short summary of the erratum would help if put right here
>>> (without needing to look up any documents or follow any links).
>>
>> That is not public information yet.  The erratum number alone is the
>> best we can do at this juncture.
>>>> --- a/xen/arch/x86/cpu/amd.c
>>>> +++ b/xen/arch/x86/cpu/amd.c
>>>> @@ -1004,6 +1004,28 @@ static void cf_check zen2_disable_c6(void *arg)
>>>>  	wrmsrl(MSR_AMD_CSTATE_CFG, val & mask);
>>>>  }
>>>>  
>>>> +static void amd_check_erratum_1485(void)
>>>> +{
>>>> +	uint64_t val, chickenbit = (1 << 5);
>>> Linux gives the bit a name. Any reason you don't?
>>
>> There are multiple different names depending on where you look, and none
>> are particularly relevant here.
> 
> Could we make chickenbit const static?
> 
> I would also use ULL just to be on the safe side, because we then copy
> this for a different bit and it explodes.

I guess the way it is resembles what we already have in amd_check_zenbleed().
Also it's not clear to me why besides "const" you also ask for "static".

Jan


From xen-devel-bounces@lists.xenproject.org Tue Oct 17 09:23:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 17 Oct 2023 09:23:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618160.961467 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsgIp-0006X5-7L; Tue, 17 Oct 2023 09:23:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618160.961467; Tue, 17 Oct 2023 09:23: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 1qsgIp-0006Wy-4c; Tue, 17 Oct 2023 09:23:51 +0000
Received: by outflank-mailman (input) for mailman id 618160;
 Tue, 17 Oct 2023 09:23: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=sbBI=F7=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qsgIn-0006Wo-MC
 for xen-devel@lists.xenproject.org; Tue, 17 Oct 2023 09:23:49 +0000
Received: from mail-ej1-x633.google.com (mail-ej1-x633.google.com
 [2a00:1450:4864:20::633])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id dfe71b30-6cce-11ee-9b0e-b553b5be7939;
 Tue, 17 Oct 2023 11:23:47 +0200 (CEST)
Received: by mail-ej1-x633.google.com with SMTP id
 a640c23a62f3a-99357737980so896375566b.2
 for <xen-devel@lists.xenproject.org>; Tue, 17 Oct 2023 02:23: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
 g12-20020a170906198c00b009a1a653770bsm862314ejd.87.2023.10.17.02.23.46
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 17 Oct 2023 02:23: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: dfe71b30-6cce-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1697534627; x=1698139427; darn=lists.xenproject.org;
        h=content-transfer-encoding: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=XqKkBbs+dHik9eEPedzVWercGOkFupP478hB+3xFLH8=;
        b=BbFkKYoqF2Cgu2H/GcFmrO2jt2Nemmsbijd8h76nFFn7CnTyr+Z9x5AWcsW51XIle+
         xDGYQEW0g/gkUCpcudZmlVL/itGAkoaa7E78gxqnKBKdLSn7ffxOGKiUkPNog2jBQNHS
         5pjuqWOkuV9mHDrbW6gYi9bFg8JdyzUVJD6sE=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697534627; x=1698139427;
        h=content-transfer-encoding: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=XqKkBbs+dHik9eEPedzVWercGOkFupP478hB+3xFLH8=;
        b=d2dl+l9618BmklY75cEl/gTV5G15n5ODTO7Af1Xl6eHfQqxzPoBWwgXZ1aXQ04hT4Y
         RNmdbn+nWT/7DBHCg0Wnt0OxkoU037XBAwNf1PHV6/fOSzvCrLbxyTGhfRXkuNFgtn4e
         9zDIgrOKGMJMfti1+d2LHnFj44FPqduoLggsUYKJzJAAnZeysdWT4vv9CTPihwt1/9Hw
         fYlEAV3hPy+tQHb/cJUmGgnobAv1Wej2MnO1lCHznGoTzwUiu34XEadBbXKVrMo8xpO3
         CgOcwcwqgWQwyBSiPamPfQgmfkD9r3bQAZ29SCmf61ZdYQwn4RV+OqFK2cnAsucQykho
         0Ubw==
X-Gm-Message-State: AOJu0Yw6YhEVkGWdkpz71LSU7OkK9JshVrwUHcm7B+yAY5Vn7VHL+uPJ
	AYbyztsn7rVXRhhCMuiSMwf90g==
X-Google-Smtp-Source: AGHT+IGl9OB+aAj5ncav4VdzAmubHVBX9tu7A6l5oQk4FFd3xadOdzGgtKqCveL2ja+dfQy9nbvaLQ==
X-Received: by 2002:a17:906:dacb:b0:9ba:8ed:eab8 with SMTP id xi11-20020a170906dacb00b009ba08edeab8mr1222613ejb.45.1697534626728;
        Tue, 17 Oct 2023 02:23:46 -0700 (PDT)
Message-ID: <0afad6d3-cde3-4b72-8328-62dfc19d8f39@citrix.com>
Date: Tue, 17 Oct 2023 10:23:45 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH v3] x86/amd: Address AMD erratum #1485
Content-Language: en-GB
To: =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>
Cc: Jan Beulich <jbeulich@suse.com>,
 Alejandro Vallejo <alejandro.vallejo@cloud.com>, Wei Liu <wl@xen.org>,
 Henry Wang <Henry.Wang@arm.com>, Xen-devel <xen-devel@lists.xenproject.org>
References: <20231013153801.188324-1-alejandro.vallejo@cloud.com>
 <ca7a8bad-4d6f-1da4-b48d-7acbb5db401e@suse.com>
 <ac366b7c-497f-4a9e-873d-a961970c4ad8@citrix.com> <ZS5QQ8icFa-EQD4H@macbook>
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: <ZS5QQ8icFa-EQD4H@macbook>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 17/10/2023 10:13 am, Roger Pau Monné wrote:
> On Tue, Oct 17, 2023 at 08:50:45AM +0100, Andrew Cooper wrote:
>> On 17/10/2023 8:44 am, Jan Beulich wrote:
>>> On 13.10.2023 17:38, Alejandro Vallejo wrote:
>>>> Fix adapted off Linux's mailing list:
>>>>   https://lore.kernel.org/lkml/D99589F4-BC5D-430B-87B2-72C20370CF57@exactcode.com/T/#u
>>> Why reference the bug report when there's a proper commit (f454b18e07f5) now?
>>> Plus in any event a short summary of the erratum would help if put right here
>>> (without needing to look up any documents or follow any links).
>> That is not public information yet.  The erratum number alone is the
>> best we can do at this juncture.
>>>> --- a/xen/arch/x86/cpu/amd.c
>>>> +++ b/xen/arch/x86/cpu/amd.c
>>>> @@ -1004,6 +1004,28 @@ static void cf_check zen2_disable_c6(void *arg)
>>>>  	wrmsrl(MSR_AMD_CSTATE_CFG, val & mask);
>>>>  }
>>>>  
>>>> +static void amd_check_erratum_1485(void)
>>>> +{
>>>> +	uint64_t val, chickenbit = (1 << 5);
>>> Linux gives the bit a name. Any reason you don't?
>> There are multiple different names depending on where you look, and none
>> are particularly relevant here.
> Could we make chickenbit const static?

Why would we want to force something that's optimised to an instruction
immediate into a .data variable?

~Andrew


From xen-devel-bounces@lists.xenproject.org Tue Oct 17 09:33:57 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 17 Oct 2023 09:33:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618164.961478 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsgSQ-0000qr-7D; Tue, 17 Oct 2023 09:33:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618164.961478; Tue, 17 Oct 2023 09:33: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 1qsgSQ-0000qk-4K; Tue, 17 Oct 2023 09:33:46 +0000
Received: by outflank-mailman (input) for mailman id 618164;
 Tue, 17 Oct 2023 09:33: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=BgJ9=F7=citrix.com=prvs=6472a2412=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qsgSN-0000px-LK
 for xen-devel@lists.xenproject.org; Tue, 17 Oct 2023 09:33: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 4089dca7-6cd0-11ee-9b0e-b553b5be7939;
 Tue, 17 Oct 2023 11:33:40 +0200 (CEST)
Received: from mail-mw2nam10lp2100.outbound.protection.outlook.com (HELO
 NAM10-MW2-obe.outbound.protection.outlook.com) ([104.47.55.100])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 17 Oct 2023 05:33:33 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by MW4PR03MB6508.namprd03.prod.outlook.com (2603:10b6:303:127::10)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.46; Tue, 17 Oct
 2023 09:33:30 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::17e3:6cff:b087:fc64]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::17e3:6cff:b087:fc64%4]) with mapi id 15.20.6886.034; Tue, 17 Oct 2023
 09:33: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: 4089dca7-6cd0-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1697535220;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=pTN/D6AtY46V730ixFe5DlTc0NNdYLZ5g/4ay9Yhkx0=;
  b=hwbnBUGY5a7UJmDWJ1Kho2A/8bRzLMbZVHjU3DarDCG2IngfRZTNLPIG
   7wUqQxafDBf8/gZFBt2YogNHgGlLOIHFAc//biq5UOmULo43ESBIZJmUu
   6WBOs/BpuBD56yEa1BXxqDnmviK4poj/N9Xtcg3RVBRSw4c5SQo/nom0U
   c=;
X-CSE-ConnectionGUID: bg+8Nz0rTbm9XHUByAjUfg==
X-CSE-MsgGUID: cs3TQYeQT1uifc9VfJ4Uqg==
X-IronPort-RemoteIP: 104.47.55.100
X-IronPort-MID: 128576457
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:9L9JnqONgtxeYRrvrR10lsFynXyQoLVcMsEvi/4bfWQNrUorgzQFm
 GEeX2yCbvyPNGrwet8gbYm/8RkAuJeBzYNkQAto+SlhQUwRpJueD7x1DKtS0wC6dZSfER09v
 63yTvGacajYm1eF/k/F3oDJ9CQ6jefQAOOkVIYoAwgpLSd8UiAtlBl/rOAwh49skLCRDhiE/
 Nj/uKUzAnf8s9JPGjxSs/nrRC9H5qyo42pA5wNmPJingXeF/5UrJMNHTU2OByOQrrl8RoaSW
 +vFxbelyWLVlz9F5gSNy+uTnuUiG9Y+DCDW4pZkc/HKbitq/0Te5p0TJvsEAXq7vh3S9zxHJ
 HehgrTrIeshFvWkdO3wyHC0GQkmVUFN0OevzXRSLaV/ZqAJGpfh66wGMa04AWEX0ux4QjFo5
 6QCFDoIPyCjusin6bCGROY506zPLOGzVG8ekldJ6GiBSNMZG9XESaiM4sJE1jAtgMwIBezZe
 8cSdTtoalLHfgFLPVAUTpk5mY9EhFGmK2Ee9A3T+PdxujCLpOBy+OGF3N79YNuFSN8Thk+Fj
 mnH4374ElcRM9n3JT+tqyj827CRwX6kMG4UPLajrcJTsVCq+jUOCRMdBGW1g6WEk0HrDrqzL
 GRRoELCt5Ma9kamU938VB2Qu2Ofs1gXXN84O+Q+5QOEzKbO5ECHD2wAQzxGQNcis9I6Azct0
 zehgNfBFTFp9rqPRhq11rqStyL0BiETIkcLfypCRgwAi/HzrYd2gh/RQ9JLFK+uksazCTz22
 yqNriU1m/MUl8Fj6kmg1VXOgjbpo4eTSAcwv13TRjj8tls/Y5O5bYu171Sd9exHMIuSUliGu
 j4DhtSa6+cNS5qKkURhXdkwIV1g3N7dWBW0vLKlN8BJG+iFk5J7Qb1t3Q==
IronPort-HdrOrdr: A9a23:OnditK2QRP7EFfgbsmDzcAqjBHYkLtp133Aq2lEZdPU0SKGlfq
 GV7ZEmPHrP4gr5N0tOpTntAse9qBDnhPxICOsqXYtKNTOO0AeVxelZhrcKqAeQeBEWmNQ96U
 9hGZIOcuEZDzJB/LvHCN/TKadd/DGFmprY+ts31x1WPGVXgzkL1XYANu6ceHcGIzVuNN4CO7
 e3wNFInDakcWR/VLXBOpFUN9KzweEijfjdEGc7OyI=
X-Talos-CUID: 9a23:2tXvX2PykJdJR+5DUiYkpGgGQtoZeHiM/FftCV6RC1tnR+jA
X-Talos-MUID: =?us-ascii?q?9a23=3AtbC8wA7jrFZkor0wQxvFMCjUxoxj+P+SMXEAqKl?=
 =?us-ascii?q?fpsiKPn1ONRXBsS24F9o=3D?=
X-IronPort-AV: E=Sophos;i="6.03,231,1694750400"; 
   d="scan'208";a="128576457"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=lrP9OUtvpF59T0mS+9jI0s9yxAGf7rsjdUwo1k3s8bptRDOikuIyD16Tqy4vt08vWV14muf0/46cG3vqTT3TvXysPJMV78840bbYDOh0wVFKYkFfREe2bDDN5Sx9/BJpsqxJoKI46o+5J4oDRCmVvL+brEjMSDFxTitscJajrPJiYkwCjHL7pRC1e8bTOamM+RtxtRdlOAUWzNvRPv0VbbvGNhrL6P4o0CmnbwbAXZhv6UodZpvA27EgBGIP8uDj5yO0AjJyciRPEWWNTAD9w9y9023iMF/mqLajtv5Of5fQ4yJhdRdysvuSiue19eoPZrmZxX+jM6UyWu1+G2/cBA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=MUyiJlry2f3+2kRIedj7PLj+jMMn+Wc3WjU6xAos6WQ=;
 b=SHBnV3UAh30VmKR/Zm2bzla3MWXec6f7gOWN+3QzImiWefb8BI9joTejmCKUFHWHY8b6E2tBGrfcVz/A1ltveHDsAHEkO5Mqyx7EiZSLF0jYaAmb5v0W7NhqXi1AB5b+OFCulr3dbga809DTWrfpAxYrab8e12KAeaaP4mcascbvSHpHZT9G3NDn3tFtFVJ/XlgyRHamEYQRWWqv0zZrSzFU4U3ykbFXWBcZIcpLXgSdeNoLTZz7BuQEQKmsFD/MZdB8SUVYCX1ScPspIftR+UZHN1Iudpd9gdjy4awJjo2AlsTYzK+qZMbe0a8jAdX0ptzsFxpu2JkIX6VEy55mOQ==
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=MUyiJlry2f3+2kRIedj7PLj+jMMn+Wc3WjU6xAos6WQ=;
 b=ultiTwyD9BptQ9UmxKv6bOFxNmwe9ifISwimq2rXYBMJPFvQ5e2akt8ZQDT7ZmSykiSY1GIS8aq4mOOE6sXNWzMfjdxEKuZFbfgiqct/vl6wqg+NPyzJyQ/tDsYxMs5hwgBH27NxRaCKFEm/wHJBvvT4IHf3iRlJ1XQ3EMPNK7Q=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Tue, 17 Oct 2023 11:33:24 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: Alejandro Vallejo <alejandro.vallejo@cloud.com>, Wei Liu <wl@xen.org>,
	Henry Wang <Henry.Wang@arm.com>,
	Xen-devel <xen-devel@lists.xenproject.org>,
	Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH v3] x86/amd: Address AMD erratum #1485
Message-ID: <ZS5U5MF5MuBK4guP@macbook>
References: <20231013153801.188324-1-alejandro.vallejo@cloud.com>
 <ca7a8bad-4d6f-1da4-b48d-7acbb5db401e@suse.com>
 <ac366b7c-497f-4a9e-873d-a961970c4ad8@citrix.com>
 <ZS5QQ8icFa-EQD4H@macbook>
 <3d043b4e-f6b6-1852-94d0-c0cfb5489661@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <3d043b4e-f6b6-1852-94d0-c0cfb5489661@suse.com>
X-ClientProxiedBy: LO4P265CA0305.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:391::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_|MW4PR03MB6508:EE_
X-MS-Office365-Filtering-Correlation-Id: 21fd87f3-1c9d-4fa6-5690-08dbcef41f5e
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:
	XQnC+9+I+JHNWe+1RZt1Dp33Cr5VwVDUZx5vydOKxY5ym4USbRTiNMcWvmMZD95JJkSgcz+79ZEXS5SlTEkgu0QXcU6CD/yiv8rSVnmdq6cfr6BZYhUK/GIF8TiWYSk/e8XFs2dmhFOozS6HnsAW1kxNaYahqUrFun44XZ8B9BxGVu/AYJe8dYs3nOAX5mBRY/ICvBuv3cY39GlcrknY2gcNEUJFkBLNzgBZ4QbgBep7p/ejmpzHXKD7IqO/y3uDweUMGGXahe2kHy8BLbi0DFlH81AQwg86p+XkdxlWzdKqxp4Vdc6FFnIepFn56hJvkbKp02No/bxTSY4ONW4gxzrv81w30M6ERNSBxC9SXEXZttHQeMorWyPWnpBz9E6hlxr5xrT9DwnpWR6mWBxy7BvjNdLjKjPw5hyQZVGU+b/kB3AENcBYhlnS5CuOsXUx7YWh4uK2Gt9gAr8RUvZzMFb11cUebMHDQCZXkI8904F3sqOIEJDGEqnZw+MvPcDSQ1juoF1fJ7uayCt5F9DAay1wa7HicfOZ7WW7m0QR7C4=
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)(346002)(396003)(39860400002)(376002)(230922051799003)(451199024)(64100799003)(1800799009)(186009)(33716001)(9686003)(6506007)(478600001)(53546011)(966005)(6512007)(6486002)(6666004)(86362001)(85182001)(38100700002)(82960400001)(6916009)(2906002)(107886003)(26005)(41300700001)(316002)(54906003)(66556008)(4326008)(8676002)(5660300002)(66476007)(66946007)(8936002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?bWFwUzAxUzNHaTZiZlJVWnFwUWkySXlPZ1lDZkdKWkZPRVMwNlV3MkJwUWJF?=
 =?utf-8?B?N3hNRjNvaE5zYis4Y3lIWjBuNlFQV2V5cDZKYzFwdjRoblRCTTQ2enFHL0pB?=
 =?utf-8?B?ai93YWtlNE9MM1VuUXBpYy9HRTMwandzaG9hY284SjNVSFFCTmcvendZa3FV?=
 =?utf-8?B?Z3BxdnNWUFcraGZnaDE1ZTRrcURBczFpSmhkZW5GdzBMQ0Ezc2ROMW9yVWU1?=
 =?utf-8?B?aVZ5UHhCM25KWnN1TmtocUQxNEdJT1JiWTdIc2NMT012Q3F2TnpZMTI4dHRo?=
 =?utf-8?B?TGRLMmJiOU1vaXZIUXpnSjcxbTFNWmh6YXBCRHZzOHRhZ2NmMmZnSFJBRElL?=
 =?utf-8?B?cGdvU0N3aGVqMitDUzExUllxY2dTbGZ0T2pwSkFFREdtYzdWa1VwZERRcTVC?=
 =?utf-8?B?VERmZ25QdEcxaVBqNElBM1lhUnVvYWcrTlVTSTgwd3dXVXpPb3JjVFVMVzFh?=
 =?utf-8?B?S2RwSnIxRWd4aE1sSXJSNjFXaWx5VWVLWEFIc09OL3BnUjhKOUVoaGlORFNl?=
 =?utf-8?B?N2lMUWhIR2g3bjlsdGduS2VObExYRVJMWEtVdWZteTg5dnpzNE9LdmI2eUZp?=
 =?utf-8?B?dEFweUNGVkVsR3c3eUs5MzB4K3R2MU1sVFovYVFaWjZNZUlEYVhtNmhKSWIw?=
 =?utf-8?B?dzFrcm5YVFIwd3BsM2xnV0Z5SzBZa2U1djRQMVRESWRFZERPUlFkQ1J6andT?=
 =?utf-8?B?SDRZRlEzODRwM2o3eWJONm9PTUtTNHJkakV5dkV0REkwSEdpT0VNTVdMRUhD?=
 =?utf-8?B?R1NQc2o0b2VRQmhRNC8rSEdob3lLVjdhY3JUUjN6TVJHQzZwT2hVRENNdHgw?=
 =?utf-8?B?ZFZiTU9GM09qQmNQUFR1MHV3RVB3d25RZmlvcDM1YmtDOENiSmRKbnVsK3g3?=
 =?utf-8?B?MFJySVhmREVkcngycmtVY01GbDJ5akd5K3EzblVKRU50cldQc3ROSVFwR1pm?=
 =?utf-8?B?SkVXd2FlU2U1SDdFQlNqS1B1b1VUYmtQNXNhMnBGKy9kSWZlbTVkTlExZ2Fo?=
 =?utf-8?B?ZDA1U3VCb1lLdXpYOVViWFpXOVh5VkIvRGhzMHZtajJ1YWlURFEzRmNTM3ZY?=
 =?utf-8?B?RU5WbDZ1c2c4OHo0bnBTR0dYNG9KU2kxZW9KVW9tOGcveWRSNWYzNldsanRm?=
 =?utf-8?B?NHZJRWFMK3dJbFkyeG9lQWl3UU5VR0taUGhtMVR0dFBEalJldTFxRk5wWisx?=
 =?utf-8?B?LzNCNGUyNEFBMnI2dXRVU3hKM0s1TGxnUWwyL1NPREhSazE5U3B1a3g5SUFm?=
 =?utf-8?B?OGFydkMzUU82c1gvZ0tVTGl6UjUwTlVFOVlKT0svK3ZSUURMS29ybUxFWEhx?=
 =?utf-8?B?NTlYbWZvTmExbzdJbXUwbUxsaGVsUmlOQXdHRG1UdmE5dFU3OGVXNlZqWU1s?=
 =?utf-8?B?bWsvZ2FsNGcwWHRxZXBMMk5MZXpwWU5ZL3BaRDVhNEE2b0JSYnpDb0xLUHJC?=
 =?utf-8?B?SC9IQi9wQ2oreXhPMzNJQ3ZzOTdBYTAwbjJyN3ZsV0hDWVRCemE2clhVRFUv?=
 =?utf-8?B?YkVNT2xDOUVMbllXbFlUZURBU0ZvU0h6bytCektOMWxGTllaT0lmaVJaRWox?=
 =?utf-8?B?aWUzVEJOVDdRRjJVRm1lTXg4bnpCeUFBMDBENU5FWGxPbldndjdlMStLUVFm?=
 =?utf-8?B?VUVFVC9YQW0xZkNTQThLcUxIV0ZzWmoxOWpWbUJPTTlKSHNoaGtOZXpiVVdu?=
 =?utf-8?B?UStFYkM4dGpZVXlxZVRLQkdpOWY3UmJmL01mNVR2emM4WWYzQVlGNCtBdlpZ?=
 =?utf-8?B?MmNtcm16ZXAzQURUMUdoaVduTlZLRXBzcGF5T2FHTVhpV2xOY1lUT1VKQzRR?=
 =?utf-8?B?bnBkcmNKYVhIZkprMG9tYTJiNGx4cnFqQ2swVzRsK0prK0tQcWNDU3lJWWZZ?=
 =?utf-8?B?Zno2WVd1aHpCcXdkNURMd1lKT1FLU0Q1MlVGTTZhbEJaSUpFRC80TFY1RXdy?=
 =?utf-8?B?Zy9GMU5zOElmMlRzVVoxdEJOQWpLSk5XNmlpN1d1K1BIelpBMzkvMlQ5K1lD?=
 =?utf-8?B?VktzSGo3Ynl2M3JhRm4yLzNod3BlUmpST05yVjg4RUROZ0NpTzl2MU02b0E5?=
 =?utf-8?B?YkZlWEwzOFBWWnlsR3ZtUlpweGJzR21YQVUzQzRvWmNlcXhpSWRYZ294TDgx?=
 =?utf-8?B?aGUvaHhTYkIwZi8rUEtjdDU0aWxtQXBxaDh5VVR0cnVDSDduTFZudFh5Q2tS?=
 =?utf-8?B?clE9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	/6+yJhQfxmm+bwonrruE1pLIPcVTeUL4m9AsUsEYMqQd0GdefdJjvM0Y8Po9VCbi3D2m0slEYrcpcsgwGevH2enE1ngE4g75BBHZ5YxIvE1x4sElKf1EXSUce6cc5Izo/MWO5LK60IoUu7d7D1eXt5qQ1Jjv+qBVG8ToBvzAF+0PC7qcJLeE5K5aLzBKoRGmNVJPGVUeDdAdREWCiRaTDMJERG/4Jw2mM9xczRzfhxrz1RsKdk6FWm3QqA9BkJwRhiMH/GjUThqSunS+VKnVu8gzF7sXg2LKELVuymL+MiszuuBDhmAgYW4L9vlIt2UThnOv/zSTnaX4Po/741WbrwtprwphdmE6NX7bzuhNMdk6r8xTl53nLQhveekRTW2rCWAgF14CzoZTscUGpvJTXhLiSsBBwPvv61KOCeD7ZwzhOSJVe5cC4ltDEjJweZZgdyPOP6CpHQtoZZFSuib9YE6HEwJS5i83zKVU7gwxkoPY2mxSckQwXN7nPGB9gbz7H9x+ZE550z7Jrdy7sARyexStoO26Uba17bY0mJGPrfHa6KVbItS5S7l0CwhMhbzavVT5+3zLl7YOLZmUm7jrB8kZXmWZGN3g9+NNOh58GFvfJvR9Gf4c7G5Rj9yJpou0JhueO/2cANcGH5iw/m7EUo6uUCbhJcSZxkOejTM3QOsMlBau2f9IYHH95mFgF2RnAOaVKYXBQCJLTOLbKgBjT3uGGI6YEIiV60lWkmA9oW5BVgu8Yze2lYqTah8vWd3WXWCBIGkUs87+X1WW7QDn5bAyblCMEOfrCmTLyd4RMERMfnjiW9rBCXIdOXoro19vm2CMGJrQTPrdzIicaRf4IkMmciYoxnouXaQTZkWJVFKOOLzQLX+crf32xHa1f6dm
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 21fd87f3-1c9d-4fa6-5690-08dbcef41f5e
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Oct 2023 09:33:29.9192
 (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: Eo93gpO9FDBPOv7mxZg98+nZgVQEvo9ZHSDUzNHsoimVaZtDeuYNNvYITJn775AOMXln9pVV/elMASWEsvifPA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW4PR03MB6508

On Tue, Oct 17, 2023 at 11:21:47AM +0200, Jan Beulich wrote:
> On 17.10.2023 11:13, Roger Pau Monné wrote:
> > On Tue, Oct 17, 2023 at 08:50:45AM +0100, Andrew Cooper wrote:
> >> On 17/10/2023 8:44 am, Jan Beulich wrote:
> >>> On 13.10.2023 17:38, Alejandro Vallejo wrote:
> >>>> Fix adapted off Linux's mailing list:
> >>>>   https://lore.kernel.org/lkml/D99589F4-BC5D-430B-87B2-72C20370CF57@exactcode.com/T/#u
> >>> Why reference the bug report when there's a proper commit (f454b18e07f5) now?
> >>> Plus in any event a short summary of the erratum would help if put right here
> >>> (without needing to look up any documents or follow any links).
> >>
> >> That is not public information yet.  The erratum number alone is the
> >> best we can do at this juncture.
> >>>> --- a/xen/arch/x86/cpu/amd.c
> >>>> +++ b/xen/arch/x86/cpu/amd.c
> >>>> @@ -1004,6 +1004,28 @@ static void cf_check zen2_disable_c6(void *arg)
> >>>>  	wrmsrl(MSR_AMD_CSTATE_CFG, val & mask);
> >>>>  }
> >>>>  
> >>>> +static void amd_check_erratum_1485(void)
> >>>> +{
> >>>> +	uint64_t val, chickenbit = (1 << 5);
> >>> Linux gives the bit a name. Any reason you don't?
> >>
> >> There are multiple different names depending on where you look, and none
> >> are particularly relevant here.
> > 
> > Could we make chickenbit const static?
> > 
> > I would also use ULL just to be on the safe side, because we then copy
> > this for a different bit and it explodes.
> 
> I guess the way it is resembles what we already have in amd_check_zenbleed().
> Also it's not clear to me why besides "const" you also ask for "static".

Yes, makes no sense to put in .rodata, sorry, just const.

Roger.


From xen-devel-bounces@lists.xenproject.org Tue Oct 17 09:43:45 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 17 Oct 2023 09:43:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618168.961488 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsgc0-0003E0-4X; Tue, 17 Oct 2023 09:43:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618168.961488; Tue, 17 Oct 2023 09:43: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 1qsgc0-0003Dt-0V; Tue, 17 Oct 2023 09:43:40 +0000
Received: by outflank-mailman (input) for mailman id 618168;
 Tue, 17 Oct 2023 09:43: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=tHSl=F7=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qsgbz-0003Dk-C6
 for xen-devel@lists.xenproject.org; Tue, 17 Oct 2023 09:43:39 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id a5b8047f-6cd1-11ee-98d4-6d05b1d4d9a1;
 Tue, 17 Oct 2023 11:43:38 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id A04144EE0737;
 Tue, 17 Oct 2023 11:43: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: a5b8047f-6cd1-11ee-98d4-6d05b1d4d9a1
MIME-Version: 1.0
Date: Tue, 17 Oct 2023 11:43:37 +0200
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: Roberto Bagnara <roberto.bagnara@bugseng.com>, sstabellini@kernel.org,
 michal.orzel@amd.com, xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com,
 consulting@bugseng.com, andrew.cooper3@citrix.com, roger.pau@citrix.com, Wei
 Liu <wl@xen.org>, xen-devel@lists.xenproject.org
Subject: Re: [XEN PATCH][for-next v2 6/8] x86/mce: Move MC_NCLASSES into the
 enum mctelem_class
In-Reply-To: <59692ac7-8b68-5913-8e51-0a68feb2a1bc@suse.com>
References: <cover.1697123806.git.nicola.vetrini@bugseng.com>
 <6622a2ec7079f86b73ae420e1e840d3d35ffb3a0.1697123806.git.nicola.vetrini@bugseng.com>
 <f1f0fc3c-0eb2-81d6-132c-d6b2ed2d7308@suse.com>
 <d417da49a926fec385c95774035dc4cb@bugseng.com>
 <172b1f70-bffb-125f-3181-38ce5989daec@suse.com>
 <831edadc894659a79f7689dfe384ba97@bugseng.com>
 <59692ac7-8b68-5913-8e51-0a68feb2a1bc@suse.com>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <b9177bf523d36df16b9fc3d116e0e89d@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 17/10/2023 10:26, Jan Beulich wrote:
> On 17.10.2023 10:12, Nicola Vetrini wrote:
>> On 17/10/2023 09:02, Jan Beulich wrote:
>>> On 16.10.2023 18:05, Nicola Vetrini wrote:
>>>> On 16/10/2023 17:45, Jan Beulich wrote:
>>>>> On 12.10.2023 17:28, Nicola Vetrini wrote:
>>>>>> The definition of MC_NCLASSES contained a violation of MISRA 
>>>>>> C:2012
>>>>>> Rule 10.1, therefore by moving it as an enumeration constant
>>>>>> resolves
>>>>>> the
>>>>>> violation and makes it more resilient to possible additions to 
>>>>>> that
>>>>>> enum.
>>>>> 
>>>>> And using an enumerator as array dimension specifier is okay for
>>>>> Misra?
>>>>> That would be odd when elsewhere named enums are treated specially.
>>>> 
>>>> Yes, the array subscript operator is one of the few places where an
>>>> enum
>>>> can be used as
>>>> an operand (also because negative values wouldn't compile), as 
>>>> opposed
>>>> to mixing them
>>>> with ordinary integers.
>>> 
>>> When saying "odd" I didn't even think of negative values. May I
>>> therefore
>>> ask for the reasoning of why this specific case is deemed non-risky? 
>>> To
>>> me there looks to be a fair risk of creating undersized arrays, 
>>> leading
>>> to out-of-bounds accesses.
>> 
>> Two reasons: MC_NCLASSES is the last value of the enum, and a pattern
>> I've spot in various
>> other places in Xen, so I assumed it was a fairly common pattern for 
>> the
>> community.
>> The other reason is that since the value of an enum constant can be
>> derived statically, there
>> is little risk of it being the wrong value, because no arithmetic is
>> done on it in its use
>> as an array's size (and besides, the enum changed the last time ~15
>> years ago, so I think
>> it's unlikely to change much in the near future).
> 
> You focus on the specific instance, yet my question was on the general
> principle.
> 
> Jan

A couple of reasons why this is allowed:
- associating values to set of symbols is typical and makes sense in 
some contexts
- out-of-bounds operations on arrays are dealt with by a host of other 
guidelines
   (Series 18, mainly)
- this rule is about which kinds of operands makes sense to use with 
certain operators.
   It was deemed unlikely by MISRA that risky behaviour may arise by 
using symbolic indices
   as subscripts, given the rest of the other guidelines and the 
unspecified and undefined
   associated with Rule 10.1. It's not impossible that problems will 
arise, but far less
   likely than using enums with no restrictions at all (such as those 
caused by an enum of
   and implementation-defined type used in an arithmetic operation, that 
could give
   unexpected results).

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


From xen-devel-bounces@lists.xenproject.org Tue Oct 17 09:45:46 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 17 Oct 2023 09:45:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618172.961498 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsgdy-0004bB-Ft; Tue, 17 Oct 2023 09:45:42 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618172.961498; Tue, 17 Oct 2023 09:45: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 1qsgdy-0004b4-CV; Tue, 17 Oct 2023 09:45:42 +0000
Received: by outflank-mailman (input) for mailman id 618172;
 Tue, 17 Oct 2023 09:45: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=tHSl=F7=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qsgdx-0004aw-D4
 for xen-devel@lists.xenproject.org; Tue, 17 Oct 2023 09:45:41 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id eeabbf7d-6cd1-11ee-98d4-6d05b1d4d9a1;
 Tue, 17 Oct 2023 11:45:40 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id 063274EE0737;
 Tue, 17 Oct 2023 11:45: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: eeabbf7d-6cd1-11ee-98d4-6d05b1d4d9a1
MIME-Version: 1.0
Date: Tue, 17 Oct 2023 11:45:40 +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.cooper3@citrix.com, roger.pau@citrix.com, Tamas K Lengyel
 <tamas@tklengyel.com>, Alexandru Isaila <aisaila@bitdefender.com>, Petre
 Pircalabu <ppircalabu@bitdefender.com>, George Dunlap
 <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
Subject: Re: [XEN PATCH][for-next v2 7/7] x86/mem_access: make function static
In-Reply-To: <c1d7f6e4-c0d9-d79d-504c-3b676d2be380@suse.com>
References: <cover.1696833629.git.nicola.vetrini@bugseng.com>
 <f9dcb169ad472fe888d6a03234264ec73e290df9.1696833629.git.nicola.vetrini@bugseng.com>
 <c1d7f6e4-c0d9-d79d-504c-3b676d2be380@suse.com>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <1bdfe82a4558b05a79c7790af5175958@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 16/10/2023 16:29, Jan Beulich wrote:
> On 09.10.2023 08:54, Nicola Vetrini wrote:
>> --- a/xen/arch/x86/mm/mem_access.c
>> +++ b/xen/arch/x86/mm/mem_access.c
>> @@ -249,7 +249,7 @@ bool p2m_mem_access_check(paddr_t gpa, unsigned 
>> long gla,
>>      return (p2ma != p2m_access_n2rwx);
>>  }
>> 
>> -int p2m_set_altp2m_mem_access(struct domain *d, struct p2m_domain 
>> *hp2m,
>> +static int p2m_set_altp2m_mem_access(struct domain *d, struct 
>> p2m_domain *hp2m,
>>                                struct p2m_domain *ap2m, p2m_access_t 
>> a,
>>                                gfn_t gfn)
> 
> As mentioned before, when adding static (or whatever else) like this,
> the next line(s) need re-indenting.
> 
> Jan

Ok.

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


From xen-devel-bounces@lists.xenproject.org Tue Oct 17 09:49:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 17 Oct 2023 09:49:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618176.961508 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsghU-0005HY-Vh; Tue, 17 Oct 2023 09:49:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618176.961508; Tue, 17 Oct 2023 09:49: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 1qsghU-0005HR-Rr; Tue, 17 Oct 2023 09:49:20 +0000
Received: by outflank-mailman (input) for mailman id 618176;
 Tue, 17 Oct 2023 09:49: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 1qsghU-0005H2-01
 for xen-devel@lists.xenproject.org; Tue, 17 Oct 2023 09:49: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 1qsghS-0008Ja-Va; Tue, 17 Oct 2023 09:49:18 +0000
Received: from [15.248.2.61] (helo=[10.24.67.33])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qsghS-00063b-N5; Tue, 17 Oct 2023 09:49: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=s+P7xKyTCd6MOyIHvM1R+bIEZkseXh6KQGGqVM7f9ls=; b=zXkVf2Xs1qEdLkvej8qxc4ojt6
	43934mULQY83CI1O8K4ZgkQh0T/Yt+OtLY5zbXRHYlAhfjlltRARWvNIcR92XUfWmVJLRgwlAAOo+
	FFY18C+RjSWgM0NgY+YRG3O4KAKEwvsG2kwEtub8/cC9dqnOEEd4lHWzGrP/6Ddg5WGw=;
Message-ID: <4718460e-756a-40fe-ba1b-7f32a1432b51@xen.org>
Date: Tue, 17 Oct 2023 10:49:16 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN PATCH 10/10] arm/smmu: address violation of MISRA C:2012
 Rule 8.2
Content-Language: en-GB
To: Stefano Stabellini <sstabellini@kernel.org>,
 Bertrand Marquis <Bertrand.Marquis@arm.com>
Cc: Federico Serafini <federico.serafini@bugseng.com>,
 Xen-devel <xen-devel@lists.xenproject.org>,
 "consulting@bugseng.com" <consulting@bugseng.com>,
 Rahul Singh <Rahul.Singh@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Henry Wang <Henry.Wang@arm.com>
References: <cover.1697207038.git.federico.serafini@bugseng.com>
 <199886f6ba1f2d5701eabd080b4f9723fc28f4b9.1697207038.git.federico.serafini@bugseng.com>
 <39d3f8e0-61cf-4b8d-84f1-a5087ba8ead4@xen.org>
 <D3320838-1E67-4339-A3D4-A3E60FBC4117@arm.com>
 <c9a7f059-4cf5-4a75-b231-573c4fe29b37@xen.org>
 <92C52E39-729F-40AE-A02F-556C8EE471CB@arm.com>
 <alpine.DEB.2.22.394.2310161338540.965337@ubuntu-linux-20-04-desktop>
From: Julien Grall <julien@xen.org>
In-Reply-To: <alpine.DEB.2.22.394.2310161338540.965337@ubuntu-linux-20-04-desktop>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi Stefano,

On 16/10/2023 21:47, Stefano Stabellini wrote:
> On Mon, 16 Oct 2023, Bertrand Marquis wrote:
>>> On 16 Oct 2023, at 15:38, Julien Grall <julien@xen.org> wrote:
>>>
>>>
>>>
>>> On 16/10/2023 14:31, Bertrand Marquis wrote:
>>>> Hi Julien,
>>>
>>> Hi Bertrand,
>>>
>>>>> On 16 Oct 2023, at 11:07, Julien Grall <julien@xen.org> wrote:
>>>>>
>>>>> Hi,
>>>>>
>>>>> On 13/10/2023 16:24, Federico Serafini wrote:
>>>>>> Add missing parameter names, no functional change.
>>>>>> Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
>>>>>> ---
>>>>>>   xen/drivers/passthrough/arm/smmu.c | 6 +++---
>>>>>
>>>>> This file is using the Linux coding style because it is imported from Linux. I was under the impression we would exclude such file for now.
>>>>>
>>>>> Looking at exclude-list.json, it doesn't seem to be present. I think this patch should be replaced with adding a line in execlude-list.json.
>>>> I think that during one of the discussions we said that this file already deviated quite a lot from the status in Linux and we wanted to turn it to Xen coding style in the future hence it is not listed in the exclude file.
>>> AFAIK the SMMUv{1, 2} code didn't deviate very much from Linux. I can't tell about the SMMUv3.
>>
>> True that i had the v3 code in mind, we might not want to do that for v1/2 you are right.
>>
>>>
>>>> At the end having a working smmu might be critical in a safety context so it will make sense to also check this part of xen.
>>> I don't buy this argument right now. We have files in exclude-lists.json that I would consider critical for Xen to run (e.g. common/bitmap.c, common/libfdt). So if you want to use this argument then we need to move critical components of Xen out of the exclusion list.
>>
>> I am sure we will at some point for runtime code but we cannot do everything on the first shot.
>> I was not meaning to do that now but that it is something to consider.
> 
> Things that are in exclude-lists.json are source files that come from
> other projects and also change very rarely. The argument that we don't
> do MISRA C on the files in exclude-lists.json, it is not because those
> files are unimportant, but because they change only once every many
> years.

Interesting. I would have thought this would be a condition to do MISRA 
as the cost to port a patch would increase a bit but this is one time 
cost every many years. Whereas code like the SMMU are still actively 
developped. And in particular for SMMUv2 we tried to stick close to 
Linux to help backport. So this would be a reason to initially exclude 
it from MISRA.

> 
> Of course the least we rely on exclude-lists.json the better.
> 
> For smmu.c, looking at the git history I think it is more actively
> worked on than other files such as lib/rbtree.c or common/bitmap.c.
> Given that backports from Linux to smmu.c are not straightforward anyway
> (please correct me if I am wrong) then I think we should not add smmu.c
> to exclude-lists.json and do MISRA for smmu.c.

I haven't done any recently. But if they are already not 
straightforward, then adding MISRA on top is not really to make it 
better. So I think if you want to do MISRA for the SMMU, then we need to 
fully convert it to Xen and abandon the idea to backport from Linux.

This would also make the code looks nicer as at the moment this contains 
wrapper just to stay as close as possible to Linux.

As a side note, the change here looks fairly self-contained. So I don't 
expect a major impact and therefore would not block this. This may not 
be the case for more complex one. Hence why I wanted to exclude it.

Do you expect larger MISRA changes in the SMMU driver?

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Oct 17 09:55:05 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 17 Oct 2023 09:55:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618179.961518 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsgmz-0007NK-I7; Tue, 17 Oct 2023 09:55:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618179.961518; Tue, 17 Oct 2023 09:55: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 1qsgmz-0007ND-ER; Tue, 17 Oct 2023 09:55:01 +0000
Received: by outflank-mailman (input) for mailman id 618179;
 Tue, 17 Oct 2023 09:55: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=ibp0=F7=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qsgmy-0007N7-BL
 for xen-devel@lists.xenproject.org; Tue, 17 Oct 2023 09:55:00 +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 3ad4a61d-6cd3-11ee-9b0e-b553b5be7939;
 Tue, 17 Oct 2023 11:54:58 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DB9PR04MB9673.eurprd04.prod.outlook.com (2603:10a6:10:305::7) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.34; Tue, 17 Oct
 2023 09:54:55 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%6]) with mapi id 15.20.6886.034; Tue, 17 Oct 2023
 09: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: 3ad4a61d-6cd3-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=QXvfdLDvy5Ps9qVtSQidTp0XM+ffj2Cq3XvcPrrGDTTsirBmuVT/cK7kbmD5yQ0bOGWX/5tvd2NamSGoi65KnDSIIBmsU9sG7m+HrcOHkz4SV8yQnjewL8QW00dFJFXJOZGlvF604UewghDlJElv8V0a8Or0e002aOjj65cUNoFi/phztiHVfSW5idawyE3ABK/Va3lUN9K4E08kUH1Tvi14iBgR9GLMHUlBNQjDjMkj8CM5Qlpj3D0LMiGg4Gk8xWrMpvP0qvUkJqgSxOExMi2zuUEDYrafHQIp2ztbhxet2yVZ4Wh9r079fa+AhMMJwN840Ajd6Jm9d7ZzFqNZOA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=n1QI2Vb1VDClnBA7T2LPT5pPhFqqW4bRTgWouuRdCc0=;
 b=eD+XvZtuOLMMyCzeF0fmPKc7lLxxr8CWQvS6A9h9g/IkFCUfAl8JAdfrpNLpmGhD+D6jlCHFfzlVavJn8mXHomcQxgcrwbXnOeNg3aN696IYoLI+pabpRt5skUeURFvWPg+xX88XArO4RIMs/cwMwHG64x4HjGV0Ztf8lxBB60pWD7HP0ys9uDvarShD+5pbDQI0Cx3cZYhGq1DaPmJDZ7ai0C6eM2upGAXUyUL8hrTgg9T0XW50X7lqh3Npw/3s2HVSXhSaKVLlzDkbLreZfxgwDNA+CnWNcZUMlaID9K+RuNnoSTNCZyErwdrA/tMRUUTTTtZNY8J7JZm9AslSZA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=n1QI2Vb1VDClnBA7T2LPT5pPhFqqW4bRTgWouuRdCc0=;
 b=nsYbF8ADkInSx40MuUiSPUQShjrnOhq7EsflRXt06Zrt2+n43S59ITXfh5CWDxrNH76zNcnsOGTDWEULlK0vFf6HtNasG+5U9+MGkWrplAdfE4jNayDDYS4FBgq6YHppFpvBC87TXZMhFCWjdzWidtFqZX4v61UstM1OQnIMKHlzdDV8FBPTQ8lpdZzGxmNMnosWY/H3xfBvTFWL/ynYtTUY1rRSd1KL/vv+Zwrxpzr334PQ6fsirdPxTxvSjNecLXXEFEDGf7UcqOBzDpnlSC40d6d5hNeb2oShVXvSWuj1fiZHvUw5lOi0dzvb6bEwwxRfBrkRfYrYmt7RIpxt5g==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <26c5caa2-fe17-e107-7732-e4221861d804@suse.com>
Date: Tue, 17 Oct 2023 11:54:52 +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][for-next v2 6/8] x86/mce: Move MC_NCLASSES into the
 enum mctelem_class
Content-Language: en-US
To: Nicola Vetrini <nicola.vetrini@bugseng.com>
Cc: Roberto Bagnara <roberto.bagnara@bugseng.com>, sstabellini@kernel.org,
 michal.orzel@amd.com, xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com,
 consulting@bugseng.com, andrew.cooper3@citrix.com, roger.pau@citrix.com,
 Wei Liu <wl@xen.org>, xen-devel@lists.xenproject.org
References: <cover.1697123806.git.nicola.vetrini@bugseng.com>
 <6622a2ec7079f86b73ae420e1e840d3d35ffb3a0.1697123806.git.nicola.vetrini@bugseng.com>
 <f1f0fc3c-0eb2-81d6-132c-d6b2ed2d7308@suse.com>
 <d417da49a926fec385c95774035dc4cb@bugseng.com>
 <172b1f70-bffb-125f-3181-38ce5989daec@suse.com>
 <831edadc894659a79f7689dfe384ba97@bugseng.com>
 <59692ac7-8b68-5913-8e51-0a68feb2a1bc@suse.com>
 <b9177bf523d36df16b9fc3d116e0e89d@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <b9177bf523d36df16b9fc3d116e0e89d@bugseng.com>
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_|DB9PR04MB9673:EE_
X-MS-Office365-Filtering-Correlation-Id: 52da0d01-9a8a-44ff-b650-08dbcef71d80
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	E2PX83WwA6+ohP50t31zh2HcS23rZ4X7ucZzeF8+ZiGWzW7NdigJ5jLUIsyblYu7ewt59QzzIuaFTzuHDnigm7ngv9F8bh6XEY2ah8DQMv3u6nltKJGUhFgywB6UUkRI6xkC12ZquDhvEKZW1deE+IEIAOLDv7sFLAPr+afb5RWZEywfEq/WYhbaphmZzeHmHkO+6l6QYSEedfzkl3lxXHu0gkupHsCWeMHfmxtCpcJMLfZIPUXxZ9ZSAQJZxtVLHLT4pqcuUKLmT31sy6ci0ehc+aNLpaja8NxtMkCsfqqEGvkHMA1ENYogDt3hEtmARRo+RGw83pvlvm7K/iwgroDU9k7x+qJdEQwCy3hskcU0Xs3/gNQipQTjf5PmT3SsVrFznewoQaj/APzoiNk49N4Wld+Q4BSC8v3RyZGfI0LEHxKM9c55ciR5Rzgz1/RTLMMhzOe3EoGP3EWv0X2r9GM2bLRELW3k24pJ/pmJY2Db4GPxHuWtSp+A5ZZMut6e2gJaqtcHKdwRd0uVRVYACR0am+7ytcyu3p8PKL8tb/uQafkXAhXTRpnyClHJAOgLHpd6XBnjeEcdjxWLiS4gTvaER8LPfKEj23UeqtgnIK1I0gX/GPXDF1WeRCUUM+9nYz1ilMpoP/F1PF22JAwYYA==
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)(230922051799003)(64100799003)(451199024)(186009)(1800799009)(31686004)(66899024)(6512007)(53546011)(6666004)(478600001)(6506007)(6486002)(86362001)(38100700002)(31696002)(36756003)(2906002)(7416002)(54906003)(83380400001)(26005)(2616005)(8676002)(66476007)(66556008)(8936002)(5660300002)(66946007)(4326008)(316002)(41300700001)(6916009)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?Q0dXR09OOTU2L0RCVmVMWFVSblY1YUpXWU44UjArRGVrQmpJSVhOaE94R0hC?=
 =?utf-8?B?YWN3U251bk5kUUdJR0dIWXY3WjVGanRpSzcxUTM2M3E5cllTbUl4S2ZnM2Mw?=
 =?utf-8?B?NnpMRHgwMDBZZk1LeE16c2dNSjJkbmY4QVFmSmZZZXpHcUEvd2xxblRvVCtm?=
 =?utf-8?B?V3ptK2wwK1ova3BUbmtMRzF5ME0xM1gzQ0IzNThldDZtOUpWWlVtLzN2dU9M?=
 =?utf-8?B?T0lVZm51ck1Qakt0c21jQk1YSXlKU1ZhdTNTYnp1UndubGRsVTNQS3hDYkkv?=
 =?utf-8?B?ejZvMDlMZGE0TFJHZDUyNFMrVVcwRE15U0tDbnFjOU9ZTU1pYVdWcjFzaTZQ?=
 =?utf-8?B?YWlTelNXQTlJaDA0cG5COE10d2R4K3FLS2xHTU1xcGd6OE5XY1AxdXNka0JP?=
 =?utf-8?B?bEE3NTZhS1NJYUJRcHhKUThkWGNHUzU3aWs0RXp3ajJ4T1VReGpralZuKzRn?=
 =?utf-8?B?OXhWVnJZamQzQjViL2RRai80aE0xeUZMMVVwMDZKMVUyQ0N1M0IzTlBwZk5x?=
 =?utf-8?B?TURxRVRnMG9PUko3VlZOb3RDNFZsNGhVRkw3T05TYUtaeGR3U1pja3E0Z1hE?=
 =?utf-8?B?eENUZXhXdzNnMUtrRE1ZMVNNT0gycWZ3ZU9Mdjk0c2xyV1NXR3ZpKzN0RUJi?=
 =?utf-8?B?MUN3Z2xTZGhQR1pqcDNDMFZ5NmNuWW8wVmhOUDBUUTJ4VmlKMEtHa1ErZE1k?=
 =?utf-8?B?bWFrVWhXVGgwSFhEYVF6anUzbkJaYVB5Zk14dEJzcFBzcUtyRGE4L1JHVlpk?=
 =?utf-8?B?Y2drWmo5OTBMMlg0bjlMZ1pLcVd5UDVJKy9relFneElubzIzejZDSDVLZ2xB?=
 =?utf-8?B?eGc0dzJnZ3hoeW9SZU1ONy83aDIvTEFMemNqeGV0dlRTbjJRQ0IreUJLYWR3?=
 =?utf-8?B?N25jR2NkTlZUK3JUeTl3M2R0MmFuQXl1RUF1MG5OM21MaEkxcWRxUG1tYUcw?=
 =?utf-8?B?K1NmMkVDTkdyMXhhK0NSdE1XMTRXOGJJeGltMWFhd3dJTEdPUU5zUHc1UTV4?=
 =?utf-8?B?WGQrblVkNSsrektMYk0vUGNvWWJhazljVHdsalNMdGhVbDBvekFBUERrY2lP?=
 =?utf-8?B?N0t6UC9sMEpqUEsySVR0ejJtOU5zcGdhM3BmZ05UNW9aRFpsREFrOWtpUUVP?=
 =?utf-8?B?Wmh2SlJrQ0gyVmE0V3hydGdPU3NZOUdKdVE1ck9VMHVrNFlWdlVZdHBWRVlm?=
 =?utf-8?B?RzlwMUJOQ0pEZGtRd0FMM25PL1N0L0RpNitFVm45NmliNlp0ZmdBOXdWM3Va?=
 =?utf-8?B?N1M3cVlDVHUzMWtldk9jVUpxZCs0MFA0eUFYMi9lV2ZFQXpSQ0pKUHBYa2k3?=
 =?utf-8?B?Wmc1L3FxcXhQR3pGamZzUENHb3ZQN0hQQ04ybTRrMFBpWWRIck0vZmMzRnF4?=
 =?utf-8?B?b2Z0NWFsYUxDY0MyMWxmSWsxNXF4V3hFdHcxS3U0VHdvQWlndDFKaDJhU0ZS?=
 =?utf-8?B?UzVUMGtLQUZCcEtZRTNLVGtndkNoZWhTMGZPV2hIc0RVOGtNUklIeGNrVE44?=
 =?utf-8?B?UjMzN3p1YXE1dlRvQ1JsV082ME9hUmZLeGFlQkdyT241SlVnUzFxSE1aWUI0?=
 =?utf-8?B?aENXMUZlaVNCSnFIbXFqaVNkY1diZ1VDMkZyRHZxVU8yMlJhbmREeWxlMklB?=
 =?utf-8?B?VFFGT0VKanpzRW5uSGVWT0hQdHQ0MHNKR05DSk91UmtHd2lHMEQ5cjUrZGV0?=
 =?utf-8?B?Yk8yVXlodStSS2dmVEJqbGRSV2FsM0p2MWRnOGo0SlhCWnRDekQ3UFoxMFlm?=
 =?utf-8?B?VmtpeHpManovZzRXay9uajl5bmJZYnZmK3VzYlBnbjVLQTZXQzZhQkJqeDVn?=
 =?utf-8?B?WWdvSXBqU3oxdjZNMTNJWVpYeTVYTDRkZmJpMUc1ZXN0L1lrMXlUUm9FV1A3?=
 =?utf-8?B?dnlGTG41NTNpZENuWGhyVDAwbnRxTXhWaFFURGlEUTRSMW5nd3NOQTVGWUVm?=
 =?utf-8?B?UEMzWjNqTTQ2WkJUeXFXRHVvd3ZxdFI0K2o1aE1XbVYrZSt3bUlkejhZWW9m?=
 =?utf-8?B?OXdZOFZxa3A3UEpSSnhOME5qRlhEME9XQSsyclJBelBmamw3STNXeU1WUm9V?=
 =?utf-8?B?QXZUQ0tOZGM2RUd1b3VGMTRqZWdheFJlOXVET20rcTUyS1NEaDZYcGtVQ3lL?=
 =?utf-8?Q?De2GsdvKCNOIULgOZ18WwTTD1?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 52da0d01-9a8a-44ff-b650-08dbcef71d80
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Oct 2023 09:54:55.1517
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 5mip/A+DZz+BrJWxy7hRp4hey4+huU5Q6K7k1Wm9U1K5R9n80XCUetez4Luv4HN/pRsT8wMr4pLwykQRpFO99A==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR04MB9673

On 17.10.2023 11:43, Nicola Vetrini wrote:
> On 17/10/2023 10:26, Jan Beulich wrote:
>> On 17.10.2023 10:12, Nicola Vetrini wrote:
>>> On 17/10/2023 09:02, Jan Beulich wrote:
>>>> On 16.10.2023 18:05, Nicola Vetrini wrote:
>>>>> On 16/10/2023 17:45, Jan Beulich wrote:
>>>>>> On 12.10.2023 17:28, Nicola Vetrini wrote:
>>>>>>> The definition of MC_NCLASSES contained a violation of MISRA 
>>>>>>> C:2012
>>>>>>> Rule 10.1, therefore by moving it as an enumeration constant
>>>>>>> resolves
>>>>>>> the
>>>>>>> violation and makes it more resilient to possible additions to 
>>>>>>> that
>>>>>>> enum.
>>>>>>
>>>>>> And using an enumerator as array dimension specifier is okay for
>>>>>> Misra?
>>>>>> That would be odd when elsewhere named enums are treated specially.
>>>>>
>>>>> Yes, the array subscript operator is one of the few places where an
>>>>> enum
>>>>> can be used as
>>>>> an operand (also because negative values wouldn't compile), as 
>>>>> opposed
>>>>> to mixing them
>>>>> with ordinary integers.
>>>>
>>>> When saying "odd" I didn't even think of negative values. May I
>>>> therefore
>>>> ask for the reasoning of why this specific case is deemed non-risky? 
>>>> To
>>>> me there looks to be a fair risk of creating undersized arrays, 
>>>> leading
>>>> to out-of-bounds accesses.
>>>
>>> Two reasons: MC_NCLASSES is the last value of the enum, and a pattern
>>> I've spot in various
>>> other places in Xen, so I assumed it was a fairly common pattern for 
>>> the
>>> community.
>>> The other reason is that since the value of an enum constant can be
>>> derived statically, there
>>> is little risk of it being the wrong value, because no arithmetic is
>>> done on it in its use
>>> as an array's size (and besides, the enum changed the last time ~15
>>> years ago, so I think
>>> it's unlikely to change much in the near future).
>>
>> You focus on the specific instance, yet my question was on the general
>> principle.
> 
> A couple of reasons why this is allowed:
> - associating values to set of symbols is typical and makes sense in 
> some contexts
> - out-of-bounds operations on arrays are dealt with by a host of other 
> guidelines
>    (Series 18, mainly)
> - this rule is about which kinds of operands makes sense to use with 
> certain operators.
>    It was deemed unlikely by MISRA that risky behaviour may arise by 
> using symbolic indices
>    as subscripts, given the rest of the other guidelines and the 
> unspecified and undefined
>    associated with Rule 10.1. It's not impossible that problems will 
> arise, but far less
>    likely than using enums with no restrictions at all (such as those 
> caused by an enum of
>    and implementation-defined type used in an arithmetic operation, that 
> could give
>    unexpected results).

Now you appear to focus on uses of arrays, not their definition. Yet even
there I wonder: array[idx] is nothing else than *(array + idx). Adding
integer types and enums is disallowed. Nothing is said about arithmetic
on pointers throughout the description of the type model and its rules.
So despite the restriction on integer types, adding enums to pointers is
permitted?

Jan


From xen-devel-bounces@lists.xenproject.org Tue Oct 17 10:09:45 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 17 Oct 2023 10:09:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618184.961528 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsh16-00027K-TG; Tue, 17 Oct 2023 10:09:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618184.961528; Tue, 17 Oct 2023 10: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 1qsh16-00027D-Q4; Tue, 17 Oct 2023 10:09:36 +0000
Received: by outflank-mailman (input) for mailman id 618184;
 Tue, 17 Oct 2023 10:09: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=sbBI=F7=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qsh15-000254-Rw
 for xen-devel@lists.xenproject.org; Tue, 17 Oct 2023 10:09:36 +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 4586b34d-6cd5-11ee-98d4-6d05b1d4d9a1;
 Tue, 17 Oct 2023 12:09:34 +0200 (CEST)
Received: by mail-ed1-x534.google.com with SMTP id
 4fb4d7f45d1cf-53e2308198eso8554823a12.1
 for <xen-devel@lists.xenproject.org>; Tue, 17 Oct 2023 03:09: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
 a93-20020a509ee6000000b00536159c6c45sm933884edf.15.2023.10.17.03.09.33
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 17 Oct 2023 03:09: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: 4586b34d-6cd5-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1697537374; x=1698142174; darn=lists.xenproject.org;
        h=content-transfer-encoding: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=c6n+AA/9zNI5CwCGBPq7mnW8RW4i64r7WOiGfs97Dhk=;
        b=UGU8U8liYb0RKYd8MbNli3gqay7KNvtrYKYRYKuL1XfeX3HA0mm5Cxorc/zF8bXVSw
         r3Un9Dw79yDU0ueGAt85Tf7HGhtT9NRThzMtI4l8QtHSD9xci9AXZiNF4ujF7gAU3J5w
         iZ4RyNXA1giNOEViAXDh7RGLbCTcjt6bYhtt8=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697537374; x=1698142174;
        h=content-transfer-encoding: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=c6n+AA/9zNI5CwCGBPq7mnW8RW4i64r7WOiGfs97Dhk=;
        b=rouBbcgv3Za3PEoGK8vrBVM2fahJ5nqSMBMxmtLB9hE2PSfkozYK4qzGMIoMZ9mmf0
         7aFa5ohXFFrzghcCRYUlehqQLtUphbRwiVMhVZMMdUNIVBV2lOaSzV+vCNYH++NYMiO2
         U1V+1Z7r2WSmyDvlHYw3fMB5f4jy4R4SK0ps561uKSJy/nfz22SyM+HCw/QHwUVjVOBV
         h4yg7Ve9XEZ1LitE6IFA4YhNcb2smeYhlQDeJq1anFY4ATUix4W1SsXv/ne1TZBbUTd/
         MB1mNKP4/2hfigMeEdmeC25W20Oe5zdVPNUYphAWPW+iRzfltcRJlt6mzQUVnG2fEdu5
         1DzA==
X-Gm-Message-State: AOJu0YyOOCjhLwFQcwmh7DLdtmTeYb0rtGhjscvzGbvUSX4Xxl1515iF
	VyxPd/4gRh6pFKB+jSWJr4z6yA==
X-Google-Smtp-Source: AGHT+IHYVoNe4HyAl4nG2bkZVzyaJ4t4HlpcLSGr/mC4NlbRPDoSceZ1JfPCIPNg28/xJZsjjfLpww==
X-Received: by 2002:a50:8e5a:0:b0:53e:7781:2279 with SMTP id 26-20020a508e5a000000b0053e77812279mr1479939edx.36.1697537374148;
        Tue, 17 Oct 2023 03:09:34 -0700 (PDT)
Message-ID: <9de84dd4-a137-4dcc-be57-7be953145f8f@citrix.com>
Date: Tue, 17 Oct 2023 11:09:33 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH for-4.18] docs/sphinx: Lifecycle of a domid
Content-Language: en-GB
To: Juergen Gross <jgross@suse.com>,
 Xen-devel <xen-devel@lists.xenproject.org>
Cc: George Dunlap <George.Dunlap@eu.citrix.com>,
 Jan Beulich <JBeulich@suse.com>, Stefano Stabellini
 <sstabellini@kernel.org>, Wei Liu <wl@xen.org>, Julien Grall
 <julien@xen.org>, =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>,
 Henry Wang <Henry.Wang@arm.com>
References: <20231016162450.1286178-1-andrew.cooper3@citrix.com>
 <ef8ca952-fe3a-4180-857b-7f4dd09b8259@suse.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: <ef8ca952-fe3a-4180-857b-7f4dd09b8259@suse.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 17/10/2023 6:24 am, Juergen Gross wrote:
> On 16.10.23 18:24, Andrew Cooper wrote:
>> +command to ``xenstored``.  This instructs ``xenstored`` to connect to
>> the
>> +guest's xenstore ring, and fire the ``@introduceDomain`` watch.  The
>> firing of
>> +this watch is the signal to all other components which care that a
>> new VM has
>> +appeared and is about to start running.
> 
> A note should be added that the control domain is introduced implicitly by
> xenstored, so no XS_INTRODUCE command is needed and no @introduceDomain
> watch is being sent for the control domain.

How does this work for a stub xenstored?  It can't know that dom0 is
alive, and is the control domain, and mustn't assume that this is true.

I admit that I've been a bit vague in the areas where I think there are
pre-existing bugs.  This is one area.

I'm planning a separate document on "how to connect to xenstore" seeing
as it is buggy in multiple ways in Linux (causing a deadlock on boot
with a stub xenstored), and made worse by dom0less creating memory
corruption from a 3rd entity into the xenstored<->kernel comms channel.

(And as I've said multiple times already, shuffling code in one of the
two xenstored's doesn't fix the root of the dom0less bug.  It simply
shuffles it around for someone else to trip over.)

> All components interested in the @introduceDomain watch have to find out for
> themselves which new domain has appeared, as the watch event doesn't contain
> the domid of the new domain.

Yes, but we're intending to change that, and it is diverting focus from
the domain's lifecycle.

I suppose I could put in a footnote discussing the single-bit-ness of
the three signals.

>> +ceased to exist.  It fires the ``@releaseDomain`` watch a second time to
>> +signal to any components which care that the domain has gone away.
>> +
>> +E.g. The second ``@releaseDomain`` is commonly used by paravirtual
>> driver
>> +backends to shut themselves down.
> 
> There is no guarantee that @releaseDomain will always be fired twice for a
> domain ceasing to exist,

Are you sure?

Because the toolstack needs to listen to @releaseDomain in order to
start cleanup, there will be two distinct @releaseDomain's for an
individual domain.

But an individual @releaseDomain can be relevant for a state change in
more than one domain, so there are not necessary 2*nr_doms worth of
@releaseDomain's fired.

> and multiple domains disappearing might result in
> only one @releaseDomain watch being fired. This means that any component
> receiving this watch event have not only to find out the domid(s) of the
> domains changing state, but whether they have been shutting down only, or
> are completely gone, too.

All entities holding a reference on the domain will block the second
notification until they have performed their own unmap action.

But for entities which don't hold a reference on the domain, there is a
race condition where it's @releaseDomain notification is delivered
sufficiently late that the domid has already disappeared.

It's certainly good coding practice to cope with the domain disappearing
entirely underfoot, but entities without held references don't watch
@releaseDomain in the first place, so I don't think this case occurs in
practice.

~Andrew


From xen-devel-bounces@lists.xenproject.org Tue Oct 17 10:09:49 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 17 Oct 2023 10:09:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618185.961538 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsh1J-0002P8-3u; Tue, 17 Oct 2023 10:09:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618185.961538; Tue, 17 Oct 2023 10:09: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 1qsh1J-0002P1-0k; Tue, 17 Oct 2023 10:09:49 +0000
Received: by outflank-mailman (input) for mailman id 618185;
 Tue, 17 Oct 2023 10:09: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 1qsh1H-0002OS-MF; Tue, 17 Oct 2023 10:09: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 1qsh1H-0000Ws-KK; Tue, 17 Oct 2023 10:09: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 1qsh1H-0006ZP-8N; Tue, 17 Oct 2023 10:09:47 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qsh1H-0002JH-7s; Tue, 17 Oct 2023 10:09: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=sMtfWElKLA2xRv/V9s7Msc/I0yn2yXVe2mIz6idZMPk=; b=VkP/RnwfC7frfno9iQLNCV/JlH
	7rp0NTKnoPtriv6f5V2NtcwbMCOWe6i/rKFiDayAE3yUD0Ttmbs6MXFloXKo7m+FdAMKTKtek59AZ
	Bz8YZbAHw2e5N26Geziy5iLjv+nha4lwLC6U7noCwHhrZBOG7KAmnuKWdJC4VbAQa/IA=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183397-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 183397: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=772ec92577a8c786b6c9f8643fa60f1cf893bcd9
X-Osstest-Versions-That:
    ovmf=a445e1a42ccf3cb9f70537c7cd80ece689bf4d9a
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 17 Oct 2023 10:09:47 +0000

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

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 772ec92577a8c786b6c9f8643fa60f1cf893bcd9
baseline version:
 ovmf                 a445e1a42ccf3cb9f70537c7cd80ece689bf4d9a

Last test of basis   183394  2023-10-17 03:11:04 Z    0 days
Testing same since   183397  2023-10-17 08:10:41 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Tuan Phan <tphan@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
   a445e1a42c..772ec92577  772ec92577a8c786b6c9f8643fa60f1cf893bcd9 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Tue Oct 17 10:16:15 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 17 Oct 2023 10:16:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618193.961548 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsh7L-0005G5-Nz; Tue, 17 Oct 2023 10:16:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618193.961548; Tue, 17 Oct 2023 10: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 1qsh7L-0005Fy-LG; Tue, 17 Oct 2023 10:16:03 +0000
Received: by outflank-mailman (input) for mailman id 618193;
 Tue, 17 Oct 2023 10:16: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=sbBI=F7=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qsh7L-0005Fs-1S
 for xen-devel@lists.xenproject.org; Tue, 17 Oct 2023 10:16:03 +0000
Received: from mail-ed1-x52b.google.com (mail-ed1-x52b.google.com
 [2a00:1450:4864:20::52b])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 2b08c937-6cd6-11ee-9b0e-b553b5be7939;
 Tue, 17 Oct 2023 12:15:59 +0200 (CEST)
Received: by mail-ed1-x52b.google.com with SMTP id
 4fb4d7f45d1cf-53d8320f0easo9380164a12.3
 for <xen-devel@lists.xenproject.org>; Tue, 17 Oct 2023 03:15: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
 c14-20020a50f60e000000b0053dff5568acsm951092edn.58.2023.10.17.03.15.58
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 17 Oct 2023 03:15: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: 2b08c937-6cd6-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1697537759; x=1698142559; 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=x1xnZKfx94PXTI1sJ4b4vYHEkGEOy/fo3hPTelC5fWI=;
        b=VszHHtB131C7Au8jWcySgstXWTUJB+nByN7VWJ/ZOlPDdbPtWadSjGYDHFXgsFZZYl
         wkHZFRS0VGebxuJO90n7b2inl9vOvUB4PQYXiHyu81iM/DSEQABhO7HjX5y417NY2YVP
         GndsiNBGw5//Zq0lOivENqNSjeY1FK15r4DZU=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697537759; x=1698142559;
        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=x1xnZKfx94PXTI1sJ4b4vYHEkGEOy/fo3hPTelC5fWI=;
        b=SruQ45egqwjXc7wPhxjthMqMtMYCyTptEwdnidh3+jyZuzIOdsE2fiWyg3/mpkjVsZ
         JyTpH/Zruf3A3kKSe9I+zgKUfoPIb1WIFRSZJlIbSKnG0NWK5AGd3lXfpt77eW5BgBMM
         YSGJJqu+Qx7+oNy9PKaRV527OObZxFUh32A5lVn5Hw2RrMZRNSekkp54dSoOTSoQlpLp
         zQkZz4Ng09jLrM7VRSQBx2JPgFeTa8jI0jpT2jM1Wny6L6xOMFF3xOhGqUvrdP/EEteT
         ub82wAthM7h8cdPraSp8VC8+5c0+fJuO8CBY7LWXp4RP7XMBJtp5NXeIi5UqdHCMV+y0
         o0oA==
X-Gm-Message-State: AOJu0YyPYPaKlPnsUs9dPEzTD6gGjrhdbagPSSPhNDMN1YKufmbGovmU
	H+YEUlTNatTwagL3dIXuL/SPlA==
X-Google-Smtp-Source: AGHT+IGSkATtRyRlc1+vtXS97+qpUqoqfHpa0SjgaJEtkzyIXeCeo8ZRFDkgYw2sOsFik9KUU2KcuQ==
X-Received: by 2002:a50:9fad:0:b0:53f:25c4:357f with SMTP id c42-20020a509fad000000b0053f25c4357fmr525378edf.34.1697537759265;
        Tue, 17 Oct 2023 03:15:59 -0700 (PDT)
Content-Type: multipart/alternative;
 boundary="------------ZLVQ3yYJP0EqtKlsJ8yJvoc1"
Message-ID: <a0fbce20-4022-477a-b150-d8662dd0aa68@citrix.com>
Date: Tue, 17 Oct 2023 11:15:58 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH for-4.18] docs/sphinx: Lifecycle of a domid
Content-Language: en-GB
To: Jan Beulich <jbeulich@suse.com>
Cc: George Dunlap <George.Dunlap@eu.citrix.com>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 Julien Grall <julien@xen.org>, =?UTF-8?Q?Roger_Pau_Monn=C3=A9?=
 <roger.pau@citrix.com>, Juergen Gross <jgross@suse.com>,
 Henry Wang <Henry.Wang@arm.com>, Xen-devel <xen-devel@lists.xenproject.org>
References: <20231016162450.1286178-1-andrew.cooper3@citrix.com>
 <90e657ad-4109-442e-2b26-52cd2372f582@suse.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: <90e657ad-4109-442e-2b26-52cd2372f582@suse.com>

This is a multi-part message in MIME format.
--------------ZLVQ3yYJP0EqtKlsJ8yJvoc1
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 17/10/2023 7:34 am, Jan Beulich wrote:
> On 16.10.2023 18:24, Andrew Cooper wrote:
>> +Termination
>> +-----------
>> +
>> +The VM runs for a period of time, but eventually stops.  It can stop for a
>> +number of reasons, including:
>> +
>> + * Directly at the guest kernel's request, via the ``SCHEDOP_shutdown``
>> +   hypercall.  The hypercall also includes the reason for the shutdown,
>> +   e.g. ``poweroff``, ``reboot`` or ``crash``.
>> +
>> + * Indirectly from certain states.  E.g. executing a ``HLT`` instruction with
>> +   interrupts disabled is interpreted as a shutdown request as it is a common
>> +   code pattern for fatal error handling when no better options are available.
> HLT (note btw that this is x86 and HVM specific and hence may want mentioning
> as such) is interpreted this way only if all other vCPU-s are also "down"
> already.
>
>> + * Indirectly from fatal exceptions.  In some states, execution is unable to
>> +   continue, e.g. Triple Fault on x86.
> Nit: This again is HVM specific.

Triple fault, maybe.  fatal exceptions terminating the VM, no.

For both, these details are not important for the document.  This is an
list of examples, not an exhaustive list.
>> +Destruction
>> +-----------
>> +
>> +The domain object in Xen is reference counted, and survives until all
>> +references are dropped.
>> +
>> +The ``@releaseDomain`` watch is to inform all entities that hold a reference
>> +on the domain to clean up.  This may include:
>> +
>> + * Paravirtual driver backends having a grant map of the shared ring with the
>> +   frontend.
> Beyond the shared ring(s), other (data) pages may also still have mappings.

Yes, but again, this is just a examples.  Other data pages should only
be mapped while data is in flight.

~Andrew
--------------ZLVQ3yYJP0EqtKlsJ8yJvoc1
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: 8bit

<!DOCTYPE html>
<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body>
    <div class="moz-cite-prefix">On 17/10/2023 7:34 am, Jan Beulich
      wrote:<br>
    </div>
    <blockquote type="cite"
      cite="mid:90e657ad-4109-442e-2b26-52cd2372f582@suse.com">
      <pre class="moz-quote-pre" wrap="">On 16.10.2023 18:24, Andrew Cooper wrote:
</pre>
      <blockquote type="cite">
        <pre class="moz-quote-pre" wrap="">+Termination
+-----------
+
+The VM runs for a period of time, but eventually stops.  It can stop for a
+number of reasons, including:
+
+ * Directly at the guest kernel's request, via the ``SCHEDOP_shutdown``
+   hypercall.  The hypercall also includes the reason for the shutdown,
+   e.g. ``poweroff``, ``reboot`` or ``crash``.
+
+ * Indirectly from certain states.  E.g. executing a ``HLT`` instruction with
+   interrupts disabled is interpreted as a shutdown request as it is a common
+   code pattern for fatal error handling when no better options are available.
</pre>
      </blockquote>
      <pre class="moz-quote-pre" wrap="">
HLT (note btw that this is x86 and HVM specific and hence may want mentioning
as such) is interpreted this way only if all other vCPU-s are also "down"
already.

</pre>
      <blockquote type="cite">
        <pre class="moz-quote-pre" wrap="">+ * Indirectly from fatal exceptions.  In some states, execution is unable to
+   continue, e.g. Triple Fault on x86.
</pre>
      </blockquote>
      <pre class="moz-quote-pre" wrap="">
Nit: This again is HVM specific.</pre>
    </blockquote>
    <br>
    Triple fault, maybe.  fatal exceptions terminating the VM, no.<br>
    <br>
    For both, these details are not important for the document.  This is
    an list of examples, not an exhaustive list.<br>
    <span style="white-space: pre-wrap">

</span>
    <blockquote type="cite"
      cite="mid:90e657ad-4109-442e-2b26-52cd2372f582@suse.com">
      <blockquote type="cite">
        <pre class="moz-quote-pre" wrap="">+Destruction
+-----------
+
+The domain object in Xen is reference counted, and survives until all
+references are dropped.
+
+The ``@releaseDomain`` watch is to inform all entities that hold a reference
+on the domain to clean up.  This may include:
+
+ * Paravirtual driver backends having a grant map of the shared ring with the
+   frontend.
</pre>
      </blockquote>
      <pre class="moz-quote-pre" wrap="">
Beyond the shared ring(s), other (data) pages may also still have mappings.</pre>
    </blockquote>
    <br>
    Yes, but again, this is just a examples.  Other data pages should
    only be mapped while data is in flight.<br>
    <br>
    ~Andrew<br>
  </body>
</html>

--------------ZLVQ3yYJP0EqtKlsJ8yJvoc1--


From xen-devel-bounces@lists.xenproject.org Tue Oct 17 10:21:30 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 17 Oct 2023 10:21:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618196.961558 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qshCV-0006hh-Al; Tue, 17 Oct 2023 10:21:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618196.961558; Tue, 17 Oct 2023 10:21: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 1qshCV-0006ha-7U; Tue, 17 Oct 2023 10:21:23 +0000
Received: by outflank-mailman (input) for mailman id 618196;
 Tue, 17 Oct 2023 10:21: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=ibp0=F7=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qshCU-0006hU-Fw
 for xen-devel@lists.xenproject.org; Tue, 17 Oct 2023 10:21:22 +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 ea07e859-6cd6-11ee-9b0e-b553b5be7939;
 Tue, 17 Oct 2023 12:21:20 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS8PR04MB7912.eurprd04.prod.outlook.com (2603:10a6:20b:2ae::21)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.36; Tue, 17 Oct
 2023 10:21:18 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%6]) with mapi id 15.20.6886.034; Tue, 17 Oct 2023
 10:21: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: ea07e859-6cd6-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=WjHslxwUOJmbYA/JqWLARgSwMkkZSrglf4y2abPYDwoHJrxh1R7C6HU3a+oX/12IthbToiW/PoYWWlwLC5V4oy6BJyZxUAPnYv3rWYfcwqM95HZv+pN8r1kXjfJXyNNdKgd1XAUNXhCl1RvHG5PhprXRBZN5Ut2JiBlsN0SSrOHUWTm37LQMw0Kqd3VHSh29T3mKyzq+VHgUiFtx9Zpc2sLmwZiCTK5AX5qgtIFia6KvxLVOEwgXw4XfcmLlDHZXE527gtlRMjK4lGngg4fub99ouxpusqPGnXtvIZ7nPXmCsRC53b1912O7bXxLxTxqTQDT0Yl68CuMCVpdWU2PwA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=hCgZxeitP2+HCZ+vg9RhnABHm13mpgjxXdjuE67eH1s=;
 b=DfRyMnU4F5F+NClZOzm+5oAmQLh9NCFUtKICz3lGboN5hvhEws+/7XBFZ7jNMOdteuMNwNSMb1QdP89Jt4OYif514hdzB+zf0DoYfQNmjrdQlnpcbgXp/1Z+gut5NcilVxXeHeIbiSCopWJlFjlfsCtk+tqhr4OV9LxyI7wRQv5eYn4ISuqfUcY3iuWKtedjnDIql5w7h7g/EFtgNQhtcl990SyTzKTYWQ5Gy7kuJUlz3K8aHBqaoqtffCa1VZ2LthBcjCRutI2HfytaULg8QKM6XCSQpuIJph7e7+k5E9L4TPUvuse1nK2GUGHtgIBnOW5NGGEgROLBfWMOmeR8hw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=hCgZxeitP2+HCZ+vg9RhnABHm13mpgjxXdjuE67eH1s=;
 b=tY6/ukd6J3tWosKgCw1ea2d+m4DAcxhSFryal9T4q88knYkqhHMZvWFFpXjftTuRCqEHX+3aUQQTzZuZwxNLbDEp2eEELKofoQX0ZkmMVHbS45Fh6TY1VTILW9IIEts3xUFuAYzFQ2uV/UZvvCpsEAzRSbqAWQ8/T0lEIixakfIwQl9MBKS1PlKtvwT/aILobqdpkaZl41ljmHbgDDBSbsEX460vzZaEKmttlGvXtphWeRI2pCUy63+jLIf720h00P8Q/rN9h6G0zmCzGNi4HwLh/iGN3WHExHbj4q8VGM5EdnoBDMtDoSONhYY2YHqhpJFYBVY/sx1qtWj2eFZSlw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <ce39ddb7-56f8-c807-053e-68a686f45920@suse.com>
Date: Tue, 17 Oct 2023 12:21:15 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH for-4.18] docs/sphinx: Lifecycle of a domid
Content-Language: en-US
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: George Dunlap <George.Dunlap@eu.citrix.com>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 Julien Grall <julien@xen.org>, =?UTF-8?Q?Roger_Pau_Monn=c3=a9?=
 <roger.pau@citrix.com>, Juergen Gross <jgross@suse.com>,
 Henry Wang <Henry.Wang@arm.com>, Xen-devel <xen-devel@lists.xenproject.org>
References: <20231016162450.1286178-1-andrew.cooper3@citrix.com>
 <90e657ad-4109-442e-2b26-52cd2372f582@suse.com>
 <a0fbce20-4022-477a-b150-d8662dd0aa68@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <a0fbce20-4022-477a-b150-d8662dd0aa68@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_|AS8PR04MB7912:EE_
X-MS-Office365-Filtering-Correlation-Id: 6223ec5b-c97b-4909-e3e2-08dbcefaccd8
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:
	sT4pJ91UG3+j80RdMAmI3cmLtqCtA+ScFkAMREJOAUxzx5xfjbAh+DYscH9nBFD/6yOWFpk40WErVoFWKrtuDDIRrMAkDL96W6YyfO159rZgW0BQG/fvol+3bKvJ8yhpfzdpH5O6ibzVVVfiAX5gyR4GjUmr13f1e74082KbEbdAutZzYgFtPGCqMmm9h0O1JujzjGn/wWGMRQ0sg5bvwm2yhGc0B50YJRWCPXaya/u6s5vJqmr8okPWEVUiWOSS6y2mpLq88k39m6QGhIngnULk0w96DYrbUBkQsIXv5I1JgX48UuMi7+zq03jwJrZ2Q14Li4PYcuWez9t7hViVQ6W5ZkhKuwNqspV74pkd8giEPP7TGDHx3I8/uPsXnW0W9bqN+uPhMUFDClXnhNcj4VGzjGDEHs4XEme57Fzz66jWUTl0kRelwPMXPRdW3viqyl4IJgzfVQrR8f05gb1o3XbhVNQgxxqXlW/nR19FIHVXVpo2A12CrdpSvXOpDmiHXajz/TkoVdQBUNsHG68ZwkuH7yvpE2VLR6YZx8NouzKPGQ1VNVkCA+GSN0ehMfg2UoWkiHrQOAaOrQH6y17f6Aul+uyHIVSUQOF32J5Ckt24+Q+bZUTdjYBkxadParGc7jxiZhGTiQQN6mAguJJfow==
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)(376002)(366004)(346002)(136003)(230922051799003)(1800799009)(451199024)(186009)(64100799003)(26005)(53546011)(41300700001)(83380400001)(36756003)(2616005)(6512007)(86362001)(38100700002)(31686004)(2906002)(6506007)(31696002)(5660300002)(6916009)(54906003)(66556008)(66476007)(66946007)(316002)(8936002)(6486002)(478600001)(4326008)(8676002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?ZzNFWUQvZmhqRzcrVXRpQWNxa3o2eTBtZXRkY3JvNGxOSGhnQXBoR1YxVHZF?=
 =?utf-8?B?S2czVGp5VnVaa3A3QzJXdjR5c2pia2NRUStERVZFcFdhRmFYeXExcHNnZXoz?=
 =?utf-8?B?V09CcmFBU2VjWmxXMUIxM3o1bFBmN3hJRkhkemZkdEtJZHhsZ2F3eThLT0N1?=
 =?utf-8?B?bFlZN29IUE9saUJsTWZEdEZRdk5PcXJPdWtjM0U4b0M5OUNpbnlaa1dGQWpv?=
 =?utf-8?B?eTUwVWhCLytkZ0I5YitCaDg2L1dxbjZ4VGVkM2ZYUXNUeDlYUGN1cjQwQXNU?=
 =?utf-8?B?VUcwZG1YNlBYeDgvaTVUcjZGQnJVUjFoRGJkV0I5ajhvczJmMHpIMWcvUGY2?=
 =?utf-8?B?ZzI2U0JGeDhZd2xvSFlEQ3dTNE5yNzY4OGRBUjVwWFB1RmNWZzFjS1VPYmJx?=
 =?utf-8?B?VmdnV3REVWM1UEVqdjRicXlqRW9NVXRSMXd2YUhZZTd6aWN4Z2Y4L3FXd21o?=
 =?utf-8?B?L0RmUCtVUzJkTVNLaC9PdjQ3cWM0V0xJNTZmZmhXbkgxYTI1QWYvRkJ6RGw1?=
 =?utf-8?B?UWtPWlNucDZYb0tNNTREZ2UvMWtoVWRFNURKTWxXejdieHZTeUkyRWdwbGNR?=
 =?utf-8?B?cjFST1BVZFpGMW94UG54ODhtYnZDSmRINXhwN1M3QWRGL3FWcnRtdEdycTJ0?=
 =?utf-8?B?SG05SVFKRmVCTmNvT3hwS1pyQkpnRDlCa3ZnZFExRkkxdTVHQVUvVmVpYytJ?=
 =?utf-8?B?NTJWQ1FXR1ZKcW16bEJVNFd2Tk16VTk1R1dPR01iNDVjOTdZS1gyc2NFWHF3?=
 =?utf-8?B?ZVZGVWYrME5MNXhZMDZlRDQyUm0zWE9IMVhwUlc5VURvZXQxUEFqY1lmS3c0?=
 =?utf-8?B?Y25JaGFYOFkrNVhzaHRxNXZrb0hpR3VDanFTNVNvVGdsMS9kRjNTUzhBUXRT?=
 =?utf-8?B?OGZ2LzBhQVNwN2FjQ1RuT2ZJQmdaK29Uc09QNXRUSUJiYjBsRllRSFBRdmUz?=
 =?utf-8?B?S2dGKzBZN29OZy9WZWVMNEUrWXRJNC8yVTVEdWNTNWJRQThGZGZwRzhpWExo?=
 =?utf-8?B?SldxSEtWazJUT2ZRN2pxSGVVWE9kR0wvb1BrTlhRdWE3WHlYWEM5RXRoSHAv?=
 =?utf-8?B?a0x5eFdhWWJ4bFdLZThTSC92NUl4YnExTURyZW5YZmdiUUM0VmZJTXBjMVN6?=
 =?utf-8?B?aE15ckpCbzhLaU9nV0FBMUxuVDRuMkVCVGhZdEZhbTkweGxsbmt0cmZUNW5p?=
 =?utf-8?B?cW4xdnQvMFBnQ1UwYjlBdGMzY3d2clpHUXRHWGYzVmN4YjFKb25TZjltQ3Vh?=
 =?utf-8?B?ZWJRUFB2MTNQeGtNdWptSHY5VXYvVUhLUnZiTGhLSmxmOHQya0F0ZlZ4Wndp?=
 =?utf-8?B?SkdwT3BjNHRYRFMxSTBLeUxZSmFmZHFVZ291OU1HZXVxdzlGUzFDck5Kckt0?=
 =?utf-8?B?VzhKOFRQZW1PLzhuOWVkK3M1M05nNkRXL0lnSjl4dTJKZElNOHlhbGlRWGh5?=
 =?utf-8?B?aW1teHg3d3ZUSjFHaW9NUFBzWTFnV2x6ejFtdzBLWXFReVllckY1WCtaeEor?=
 =?utf-8?B?eE9KaVp2UUhVbWtjSXJLTlduQWg3dWR6YVVzaENFbVN1S25yUE93ZHZBbzIv?=
 =?utf-8?B?dVVzWlUrUEp3cXN3bjVyQnVRVlFYV2ptSnZySHl6Um5ZS0d6akdjNWJkR0Yz?=
 =?utf-8?B?VmNmSzdsYkpjNUVvbFYyeDRSeUJLZDhKS08wWmFjK1dlS01vcUNhSzNFdTJI?=
 =?utf-8?B?VTlnMm5jb2tUWWxLb1JUc00xOS9TVm1udTBjQzdZVXdZV1VpZHBXeW12Ty9N?=
 =?utf-8?B?K3hmYjZTN05sTHhucXl3aWx0c3ltWllyYjMzM09CWmVVdUdoN29kZ1J3TEZU?=
 =?utf-8?B?RmdlekpIRlB2N216d1NKRFkyYnpGYUNRaFlxWFlBeVROREt0WFNhbzNjYktR?=
 =?utf-8?B?MzdGK1hrVk1vYkZQVm5ROWJ6UjVHQUlEVS91d3REbTFKb2F5M1BBbmV1b0p6?=
 =?utf-8?B?K1p3VHR2cHBEYWNuNFVPejBaNjhwU3dRbEVZR1ZuL2JYU1VxL2RIUm1mTmRQ?=
 =?utf-8?B?MFVTZ21PR0NBOHlhOGFuSXdUblB2VHpyZXp2ZjFyU2tNSnlEQXdOZHRGa25X?=
 =?utf-8?B?ZWZVS002bDl5M0RaQVNCMURYc2tVb0dHSmhFMmdOSXJtL2p3aUZ0aEd1MnA3?=
 =?utf-8?Q?GNg5xq9erbMIEWcQoM2M7OrmV?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 6223ec5b-c97b-4909-e3e2-08dbcefaccd8
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Oct 2023 10:21:17.8092
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: MIlNt020CVKlbnmnKv85uK0CZV1+OShAPWR3GBLjszrm+A1WFnFrCmMWSVeEYdCKGZMibCEYEywIp1pH3W6T9Q==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB7912

On 17.10.2023 12:15, Andrew Cooper wrote:
> On 17/10/2023 7:34 am, Jan Beulich wrote:
>> On 16.10.2023 18:24, Andrew Cooper wrote:
>>> +Termination
>>> +-----------
>>> +
>>> +The VM runs for a period of time, but eventually stops.  It can stop for a
>>> +number of reasons, including:
>>> +
>>> + * Directly at the guest kernel's request, via the ``SCHEDOP_shutdown``
>>> +   hypercall.  The hypercall also includes the reason for the shutdown,
>>> +   e.g. ``poweroff``, ``reboot`` or ``crash``.
>>> +
>>> + * Indirectly from certain states.  E.g. executing a ``HLT`` instruction with
>>> +   interrupts disabled is interpreted as a shutdown request as it is a common
>>> +   code pattern for fatal error handling when no better options are available.
>> HLT (note btw that this is x86 and HVM specific and hence may want mentioning
>> as such) is interpreted this way only if all other vCPU-s are also "down"
>> already.
>>
>>> + * Indirectly from fatal exceptions.  In some states, execution is unable to
>>> +   continue, e.g. Triple Fault on x86.
>> Nit: This again is HVM specific.
> 
> Triple fault, maybe.  fatal exceptions terminating the VM, no.
> 
> For both, these details are not important for the document.  This is an
> list of examples, not an exhaustive list.

Of course. But I would recommend to avoid having examples which don't
describe technical details correctly.

>>> +Destruction
>>> +-----------
>>> +
>>> +The domain object in Xen is reference counted, and survives until all
>>> +references are dropped.
>>> +
>>> +The ``@releaseDomain`` watch is to inform all entities that hold a reference
>>> +on the domain to clean up.  This may include:
>>> +
>>> + * Paravirtual driver backends having a grant map of the shared ring with the
>>> +   frontend.
>> Beyond the shared ring(s), other (data) pages may also still have mappings.
> 
> Yes, but again, this is just a examples.  Other data pages should only
> be mapped while data is in flight.

Hmm, blkif's persistent grants are explicitly not like that. All I'm asking
for here is to insert another "e.g."

Jan


From xen-devel-bounces@lists.xenproject.org Tue Oct 17 10:22:05 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 17 Oct 2023 10:22:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618200.961567 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qshDA-0007CH-ML; Tue, 17 Oct 2023 10:22:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618200.961567; Tue, 17 Oct 2023 10:22: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 1qshDA-0007CA-Jp; Tue, 17 Oct 2023 10:22:04 +0000
Received: by outflank-mailman (input) for mailman id 618200;
 Tue, 17 Oct 2023 10:22: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=9pfz=F7=redhat.com=kwolf@srs-se1.protection.inumbo.net>)
 id 1qshD9-00073H-EB
 for xen-devel@lists.xenproject.org; Tue, 17 Oct 2023 10:22:03 +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 02aabe38-6cd7-11ee-98d4-6d05b1d4d9a1;
 Tue, 17 Oct 2023 12:22:02 +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-145-XFVKNxzFMCyvX5vRUyqgBQ-1; Tue, 17 Oct 2023 06:21:56 -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 D99C41C0BB4B;
 Tue, 17 Oct 2023 10:21:55 +0000 (UTC)
Received: from redhat.com (unknown [10.39.194.150])
 by smtp.corp.redhat.com (Postfix) with ESMTPS id 8F17425C8;
 Tue, 17 Oct 2023 10:21: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: 02aabe38-6cd7-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
	s=mimecast20190719; t=1697538121;
	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=qHoeF+Tw+4uA1IH9IkZxlHP/efhEWyeV18C1FTUIP+k=;
	b=gjOAPqI7RmiXFTk1Qb5ySiHOSX/HS3tAyMn2o3Ll9z5RNMlvBVhVQd+eysvjKwStLpNJt3
	5pOXQcTzN7JLF3aTDb0ETvwa1xYSjWcVuOW3qU/hNdPeE1DZpUyxwpUUKw4umuBFBG5ttA
	iRLdS0ZZkSSfbX1kQ/UIk1zvGe8pnW0=
X-MC-Unique: XFVKNxzFMCyvX5vRUyqgBQ-1
Date: Tue, 17 Oct 2023 12:21:52 +0200
From: Kevin Wolf <kwolf@redhat.com>
To: David Woodhouse <dwmw2@infradead.org>
Cc: qemu-devel@nongnu.org, Hanna Reitz <hreitz@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	=?iso-8859-1?Q?Marc-Andr=E9?= Lureau <marcandre.lureau@redhat.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Richard Henderson <richard.henderson@linaro.org>,
	Eduardo Habkost <eduardo@habkost.net>,
	Marcelo Tosatti <mtosatti@redhat.com>, qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org, kvm@vger.kernel.org
Subject: Re: [PATCH 11/12] hw/xen: automatically assign device index to block
 devices
Message-ID: <ZS5gQL+KZjxOmUsk@redhat.com>
References: <20231016151909.22133-1-dwmw2@infradead.org>
 <20231016151909.22133-12-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <20231016151909.22133-12-dwmw2@infradead.org>
X-Scanned-By: MIMEDefang 3.4.1 on 10.11.54.1

Am 16.10.2023 um 17:19 hat David Woodhouse geschrieben:
> From: David Woodhouse <dwmw@amazon.co.uk>
> 
> There's no need to force the user to assign a vdev. We can automatically
> assign one, starting at xvda and searching until we find the first disk
> name that's unused.
> 
> This means we can now allow '-drive if=xen,file=xxx' to work without an
> explicit separate -driver argument, just like if=virtio.
> 
> Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>

> @@ -34,6 +34,31 @@ static char *xen_block_get_name(XenDevice *xendev, Error **errp)
>      XenBlockDevice *blockdev = XEN_BLOCK_DEVICE(xendev);
>      XenBlockVdev *vdev = &blockdev->props.vdev;
>  
> +    if (blockdev->props.vdev.type == XEN_BLOCK_VDEV_TYPE_INVALID) {
> +        char name[11];
> +        int disk = 0;
> +        unsigned long idx;
> +
> +        /* Find an unoccupied device name */
> +        while (disk < (1 << 20)) {

I like your optimism that we can handle a million disks. :-)

I haven't reviewed the Xen part in detail, but the patch looks fine on
the block layer side.

Acked-by: Kevin Wolf <kwolf@redhat.com>



From xen-devel-bounces@lists.xenproject.org Tue Oct 17 10:52:18 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 17 Oct 2023 10:52:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618203.961578 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qshgG-00065D-0L; Tue, 17 Oct 2023 10:52:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618203.961578; Tue, 17 Oct 2023 10: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 1qshgF-000656-TI; Tue, 17 Oct 2023 10:52:07 +0000
Received: by outflank-mailman (input) for mailman id 618203;
 Tue, 17 Oct 2023 10: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=VGTZ=F7=suse.com=jgross@srs-se1.protection.inumbo.net>)
 id 1qshgE-000650-JK
 for xen-devel@lists.xenproject.org; Tue, 17 Oct 2023 10:52:06 +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 35b2c807-6cdb-11ee-98d4-6d05b1d4d9a1;
 Tue, 17 Oct 2023 12:52:05 +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 6E7B221D08;
 Tue, 17 Oct 2023 10:52:04 +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 169E413597;
 Tue, 17 Oct 2023 10:52:04 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap2.suse-dmz.suse.de with ESMTPSA id C/ahA1RnLmWyHQAAMHmgww
 (envelope-from <jgross@suse.com>); Tue, 17 Oct 2023 10:52: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: 35b2c807-6cdb-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1697539924; 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=N82czOJhPB446fGiweg7rGQAP3QtHbqAcHIYnmMO7hk=;
	b=nIxW/spCnbeeFZomk1VbSZ+7RNz1xcQAXEP/mHLdtUi0v0MF9RjFI+5RcN1p2rM86L8s1H
	7qhGyLYbgFxSVL8/Da2PwjrkwFZzdsFoJPj4ITR5Gh5TxpoT/Nfht+57KkuEHwqQP2qtjO
	gP2P4Iim85FWcNYMvEjlAyvK28JJ2pk=
Message-ID: <34d3adca-6b8a-46a0-bd1f-ab0637f00288@suse.com>
Date: Tue, 17 Oct 2023 12:52:03 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH for-4.18] docs/sphinx: Lifecycle of a domid
Content-Language: en-US
To: Andrew Cooper <andrew.cooper3@citrix.com>,
 Xen-devel <xen-devel@lists.xenproject.org>
Cc: George Dunlap <George.Dunlap@eu.citrix.com>,
 Jan Beulich <JBeulich@suse.com>, Stefano Stabellini
 <sstabellini@kernel.org>, Wei Liu <wl@xen.org>, Julien Grall
 <julien@xen.org>, =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>,
 Henry Wang <Henry.Wang@arm.com>
References: <20231016162450.1286178-1-andrew.cooper3@citrix.com>
 <ef8ca952-fe3a-4180-857b-7f4dd09b8259@suse.com>
 <9de84dd4-a137-4dcc-be57-7be953145f8f@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: <9de84dd4-a137-4dcc-be57-7be953145f8f@citrix.com>
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature";
 boundary="------------QhI01Ab42W4G6SUz0QebZO77"
Authentication-Results: smtp-out1.suse.de;
	none
X-Spam-Level: 
X-Spam-Score: -8.99
X-Spamd-Result: default: False [-8.99 / 50.00];
	 ARC_NA(0.00)[];
	 RCVD_VIA_SMTP_AUTH(0.00)[];
	 XM_UA_NO_VERSION(0.01)[];
	 FROM_HAS_DN(0.00)[];
	 TO_MATCH_ENVRCPT_ALL(0.00)[];
	 BAYES_HAM(-3.00)[100.00%];
	 MIME_GOOD(-0.20)[multipart/signed,multipart/mixed,text/plain];
	 HAS_ATTACHMENT(0.00)[];
	 NEURAL_HAM_LONG(-3.00)[-1.000];
	 DKIM_SIGNED(0.00)[suse.com:s=susede1];
	 TO_DN_ALL(0.00)[];
	 MIME_BASE64_TEXT(0.10)[];
	 RCPT_COUNT_SEVEN(0.00)[9];
	 NEURAL_HAM_SHORT(-1.00)[-1.000];
	 SIGNED_PGP(-2.00)[];
	 FROM_EQ_ENVFROM(0.00)[];
	 MIME_TRACE(0.00)[0:+,1:+,2:+,3:+,4:~,5:~];
	 RCVD_COUNT_TWO(0.00)[2];
	 RCVD_TLS_ALL(0.00)[];
	 MID_RHS_MATCH_FROM(0.00)[];
	 MIME_UNKNOWN(0.10)[application/pgp-keys]
X-Spam-Flag: NO

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--------------QhI01Ab42W4G6SUz0QebZO77
Content-Type: multipart/mixed; boundary="------------Absri1TPo028au4c0mlytDiv";
 protected-headers="v1"
From: Juergen Gross <jgross@suse.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>,
 Xen-devel <xen-devel@lists.xenproject.org>
Cc: George Dunlap <George.Dunlap@eu.citrix.com>,
 Jan Beulich <JBeulich@suse.com>, Stefano Stabellini
 <sstabellini@kernel.org>, Wei Liu <wl@xen.org>, Julien Grall
 <julien@xen.org>, =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>,
 Henry Wang <Henry.Wang@arm.com>
Message-ID: <34d3adca-6b8a-46a0-bd1f-ab0637f00288@suse.com>
Subject: Re: [PATCH for-4.18] docs/sphinx: Lifecycle of a domid
References: <20231016162450.1286178-1-andrew.cooper3@citrix.com>
 <ef8ca952-fe3a-4180-857b-7f4dd09b8259@suse.com>
 <9de84dd4-a137-4dcc-be57-7be953145f8f@citrix.com>
In-Reply-To: <9de84dd4-a137-4dcc-be57-7be953145f8f@citrix.com>

--------------Absri1TPo028au4c0mlytDiv
Content-Type: multipart/mixed; boundary="------------TikLrfM5ENn3uEftyK7zdzNI"

--------------TikLrfM5ENn3uEftyK7zdzNI
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: base64

T24gMTcuMTAuMjMgMTI6MDksIEFuZHJldyBDb29wZXIgd3JvdGU6DQo+IE9uIDE3LzEwLzIw
MjMgNjoyNCBhbSwgSnVlcmdlbiBHcm9zcyB3cm90ZToNCj4+IE9uIDE2LjEwLjIzIDE4OjI0
LCBBbmRyZXcgQ29vcGVyIHdyb3RlOg0KPj4+ICtjb21tYW5kIHRvIGBgeGVuc3RvcmVkYGAu
wqAgVGhpcyBpbnN0cnVjdHMgYGB4ZW5zdG9yZWRgYCB0byBjb25uZWN0IHRvDQo+Pj4gdGhl
DQo+Pj4gK2d1ZXN0J3MgeGVuc3RvcmUgcmluZywgYW5kIGZpcmUgdGhlIGBgQGludHJvZHVj
ZURvbWFpbmBgIHdhdGNoLsKgIFRoZQ0KPj4+IGZpcmluZyBvZg0KPj4+ICt0aGlzIHdhdGNo
IGlzIHRoZSBzaWduYWwgdG8gYWxsIG90aGVyIGNvbXBvbmVudHMgd2hpY2ggY2FyZSB0aGF0
IGENCj4+PiBuZXcgVk0gaGFzDQo+Pj4gK2FwcGVhcmVkIGFuZCBpcyBhYm91dCB0byBzdGFy
dCBydW5uaW5nLg0KPj4NCj4+IEEgbm90ZSBzaG91bGQgYmUgYWRkZWQgdGhhdCB0aGUgY29u
dHJvbCBkb21haW4gaXMgaW50cm9kdWNlZCBpbXBsaWNpdGx5IGJ5DQo+PiB4ZW5zdG9yZWQs
IHNvIG5vIFhTX0lOVFJPRFVDRSBjb21tYW5kIGlzIG5lZWRlZCBhbmQgbm8gQGludHJvZHVj
ZURvbWFpbg0KPj4gd2F0Y2ggaXMgYmVpbmcgc2VudCBmb3IgdGhlIGNvbnRyb2wgZG9tYWlu
Lg0KPiANCj4gSG93IGRvZXMgdGhpcyB3b3JrIGZvciBhIHN0dWIgeGVuc3RvcmVkPyAgSXQg
Y2FuJ3Qga25vdyB0aGF0IGRvbTAgaXMNCj4gYWxpdmUsIGFuZCBpcyB0aGUgY29udHJvbCBk
b21haW4sIGFuZCBtdXN0bid0IGFzc3VtZSB0aGF0IHRoaXMgaXMgdHJ1ZS4NCg0KQSBzdHVi
IHhlbnN0b3JlZCBnZXRzIHRoZSBjb250cm9sIGRvbWFpbidzIGRvbWlkIHZpYSBhIGJvb3Qg
cGFyYW1ldGVyLg0KDQo+IEkgYWRtaXQgdGhhdCBJJ3ZlIGJlZW4gYSBiaXQgdmFndWUgaW4g
dGhlIGFyZWFzIHdoZXJlIEkgdGhpbmsgdGhlcmUgYXJlDQo+IHByZS1leGlzdGluZyBidWdz
LiAgVGhpcyBpcyBvbmUgYXJlYS4NCj4gDQo+IEknbSBwbGFubmluZyBhIHNlcGFyYXRlIGRv
Y3VtZW50IG9uICJob3cgdG8gY29ubmVjdCB0byB4ZW5zdG9yZSIgc2VlaW5nDQo+IGFzIGl0
IGlzIGJ1Z2d5IGluIG11bHRpcGxlIHdheXMgaW4gTGludXggKGNhdXNpbmcgYSBkZWFkbG9j
ayBvbiBib290DQo+IHdpdGggYSBzdHViIHhlbnN0b3JlZCksIGFuZCBtYWRlIHdvcnNlIGJ5
IGRvbTBsZXNzIGNyZWF0aW5nIG1lbW9yeQ0KPiBjb3JydXB0aW9uIGZyb20gYSAzcmQgZW50
aXR5IGludG8gdGhlIHhlbnN0b3JlZDwtPmtlcm5lbCBjb21tcyBjaGFubmVsLg0KPiANCj4g
KEFuZCBhcyBJJ3ZlIHNhaWQgbXVsdGlwbGUgdGltZXMgYWxyZWFkeSwgc2h1ZmZsaW5nIGNv
ZGUgaW4gb25lIG9mIHRoZQ0KPiB0d28geGVuc3RvcmVkJ3MgZG9lc24ndCBmaXggdGhlIHJv
b3Qgb2YgdGhlIGRvbTBsZXNzIGJ1Zy4gIEl0IHNpbXBseQ0KPiBzaHVmZmxlcyBpdCBhcm91
bmQgZm9yIHNvbWVvbmUgZWxzZSB0byB0cmlwIG92ZXIuKQ0KPiANCj4+IEFsbCBjb21wb25l
bnRzIGludGVyZXN0ZWQgaW4gdGhlIEBpbnRyb2R1Y2VEb21haW4gd2F0Y2ggaGF2ZSB0byBm
aW5kIG91dCBmb3INCj4+IHRoZW1zZWx2ZXMgd2hpY2ggbmV3IGRvbWFpbiBoYXMgYXBwZWFy
ZWQsIGFzIHRoZSB3YXRjaCBldmVudCBkb2Vzbid0IGNvbnRhaW4NCj4+IHRoZSBkb21pZCBv
ZiB0aGUgbmV3IGRvbWFpbi4NCj4gDQo+IFllcywgYnV0IHdlJ3JlIGludGVuZGluZyB0byBj
aGFuZ2UgdGhhdCwgYW5kIGl0IGlzIGRpdmVydGluZyBmb2N1cyBmcm9tDQo+IHRoZSBkb21h
aW4ncyBsaWZlY3ljbGUuDQo+IA0KPiBJIHN1cHBvc2UgSSBjb3VsZCBwdXQgaW4gYSBmb290
bm90ZSBkaXNjdXNzaW5nIHRoZSBzaW5nbGUtYml0LW5lc3Mgb2YNCj4gdGhlIHRocmVlIHNp
Z25hbHMuDQoNCkZpbmUgd2l0aCBtZS4gSSBqdXN0IHdhbnRlZCB0byBtZW50aW9uIHRoaXMg
ZGV0YWlsLg0KDQo+IA0KPj4+ICtjZWFzZWQgdG8gZXhpc3QuwqAgSXQgZmlyZXMgdGhlIGBg
QHJlbGVhc2VEb21haW5gYCB3YXRjaCBhIHNlY29uZCB0aW1lIHRvDQo+Pj4gK3NpZ25hbCB0
byBhbnkgY29tcG9uZW50cyB3aGljaCBjYXJlIHRoYXQgdGhlIGRvbWFpbiBoYXMgZ29uZSBh
d2F5Lg0KPj4+ICsNCj4+PiArRS5nLiBUaGUgc2Vjb25kIGBgQHJlbGVhc2VEb21haW5gYCBp
cyBjb21tb25seSB1c2VkIGJ5IHBhcmF2aXJ0dWFsDQo+Pj4gZHJpdmVyDQo+Pj4gK2JhY2tl
bmRzIHRvIHNodXQgdGhlbXNlbHZlcyBkb3duLg0KPj4NCj4+IFRoZXJlIGlzIG5vIGd1YXJh
bnRlZSB0aGF0IEByZWxlYXNlRG9tYWluIHdpbGwgYWx3YXlzIGJlIGZpcmVkIHR3aWNlIGZv
ciBhDQo+PiBkb21haW4gY2Vhc2luZyB0byBleGlzdCwNCj4gDQo+IEFyZSB5b3Ugc3VyZT8N
Cg0KWWVzLiBJZGVudGljYWwgcGVuZGluZyB3YXRjaCBldmVudHMgYXJlIGFsbG93ZWQgdG8g
YmUgbWVyZ2VkIGludG8gb25lLg0KDQo+IEJlY2F1c2UgdGhlIHRvb2xzdGFjayBuZWVkcyB0
byBsaXN0ZW4gdG8gQHJlbGVhc2VEb21haW4gaW4gb3JkZXIgdG8NCj4gc3RhcnQgY2xlYW51
cCwgdGhlcmUgd2lsbCBiZSB0d28gZGlzdGluY3QgQHJlbGVhc2VEb21haW4ncyBmb3IgYW4N
Cj4gaW5kaXZpZHVhbCBkb21haW4uDQo+ID4gQnV0IGFuIGluZGl2aWR1YWwgQHJlbGVhc2VE
b21haW4gY2FuIGJlIHJlbGV2YW50IGZvciBhIHN0YXRlIGNoYW5nZSBpbg0KPiBtb3JlIHRo
YW4gb25lIGRvbWFpbiwgc28gdGhlcmUgYXJlIG5vdCBuZWNlc3NhcnkgMipucl9kb21zIHdv
cnRoIG9mDQo+IEByZWxlYXNlRG9tYWluJ3MgZmlyZWQuDQoNCkNvcnJlY3QuDQoNCj4gDQo+
PiBhbmQgbXVsdGlwbGUgZG9tYWlucyBkaXNhcHBlYXJpbmcgbWlnaHQgcmVzdWx0IGluDQo+
PiBvbmx5IG9uZSBAcmVsZWFzZURvbWFpbiB3YXRjaCBiZWluZyBmaXJlZC4gVGhpcyBtZWFu
cyB0aGF0IGFueSBjb21wb25lbnQNCj4+IHJlY2VpdmluZyB0aGlzIHdhdGNoIGV2ZW50IGhh
dmUgbm90IG9ubHkgdG8gZmluZCBvdXQgdGhlIGRvbWlkKHMpIG9mIHRoZQ0KPj4gZG9tYWlu
cyBjaGFuZ2luZyBzdGF0ZSwgYnV0IHdoZXRoZXIgdGhleSBoYXZlIGJlZW4gc2h1dHRpbmcg
ZG93biBvbmx5LCBvcg0KPj4gYXJlIGNvbXBsZXRlbHkgZ29uZSwgdG9vLg0KPiANCj4gQWxs
IGVudGl0aWVzIGhvbGRpbmcgYSByZWZlcmVuY2Ugb24gdGhlIGRvbWFpbiB3aWxsIGJsb2Nr
IHRoZSBzZWNvbmQNCj4gbm90aWZpY2F0aW9uIHVudGlsIHRoZXkgaGF2ZSBwZXJmb3JtZWQg
dGhlaXIgb3duIHVubWFwIGFjdGlvbi4NCg0KWW91IGFyZSBhd2FyZSB0aGF0IGJhY2tlbmRz
IG5vcm1hbGx5IGRvbid0IHJlZ2lzdGVyIGZvciBAcmVsZWFzZURvbWFpbiwgYnV0DQpzZXQg
YSB3YXRjaCBvbiB0aGVpciBiYWNrZW5kIHNwZWNpZmljIFhlbnN0b3JlIG5vZGUgaW4gb3Jk
ZXIgdG8gcmVhY3Qgb24NCnRoZSB0b29sIHN0YWNrIHJlbW92aW5nIHRoZSBiYWNrZW5kIGRl
dmljZSBub2Rlcz8NCg0KPiBCdXQgZm9yIGVudGl0aWVzIHdoaWNoIGRvbid0IGhvbGQgYSBy
ZWZlcmVuY2Ugb24gdGhlIGRvbWFpbiwgdGhlcmUgaXMgYQ0KPiByYWNlIGNvbmRpdGlvbiB3
aGVyZSBpdCdzIEByZWxlYXNlRG9tYWluIG5vdGlmaWNhdGlvbiBpcyBkZWxpdmVyZWQNCj4g
c3VmZmljaWVudGx5IGxhdGUgdGhhdCB0aGUgZG9taWQgaGFzIGFscmVhZHkgZGlzYXBwZWFy
ZWQuDQoNCkV4YWN0bHkuDQoNCj4gSXQncyBjZXJ0YWlubHkgZ29vZCBjb2RpbmcgcHJhY3Rp
Y2UgdG8gY29wZSB3aXRoIHRoZSBkb21haW4gZGlzYXBwZWFyaW5nDQo+IGVudGlyZWx5IHVu
ZGVyZm9vdCwgYnV0IGVudGl0aWVzIHdpdGhvdXQgaGVsZCByZWZlcmVuY2VzIGRvbid0IHdh
dGNoDQo+IEByZWxlYXNlRG9tYWluIGluIHRoZSBmaXJzdCBwbGFjZSwgc28gSSBkb24ndCB0
aGluayB0aGlzIGNhc2Ugb2NjdXJzIGluDQo+IHByYWN0aWNlLg0KDQpJIGNvdWxkIGVhc2ls
eSBzZWUgdXNlIGNhc2VzIHdoZXJlIHRoaXMgYXNzdW1wdGlvbnMgaXNuJ3QgdHJ1ZSwgbGlr
ZSBhIGRhZW1vbg0Kc3VwZXJ2aXNpbmcgZG9tYWlucyBpbiBvcmRlciB0byByZXNwYXduIHRo
ZW0gaW4gY2FzZSB0aGV5IGhhdmUgZGllZC4NCg0KDQpKdWVyZ2VuDQo=
--------------TikLrfM5ENn3uEftyK7zdzNI
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-----

--------------TikLrfM5ENn3uEftyK7zdzNI--

--------------Absri1TPo028au4c0mlytDiv--

--------------QhI01Ab42W4G6SUz0QebZO77
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/Ey8FAmUuZ1MFAwAAAAAACgkQsN6d1ii/Ey+R
dwf9H+xt5fCtWhQNz/dVGXGdEFmX1xgY00IYFpAIBzN3JdIIHFV2u4E72F4DAMLpoPCm5A11eIp2
yzAeZjwKxNYn6s2TPerPA7sLc7dkJbEyF8WU9icvHPyFE1zpQaYlK1qrBFtQSQP2mF8u2jD4V6wr
XVZoJq4XRtp2S2+rZt/SBUn7mgTtWkFPYoAYLvR8bikMYCsF4zn3wUj+l7z7qpO8MhQjuqCUOmlb
col8AbF045Py2DOL2F9LspCUz4nQ6geA+H9fLtHNGZe5LdPnwR8y1GDtqZ7mnTEv2Jd2E1VauFY6
TnsKl0cyXFPsxTJbrJ3Fg8Nj3FGA6qM1WN2JohmDIg==
=/oYA
-----END PGP SIGNATURE-----

--------------QhI01Ab42W4G6SUz0QebZO77--


From xen-devel-bounces@lists.xenproject.org Tue Oct 17 11:09:29 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 17 Oct 2023 11:09:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618206.961587 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qshwr-0001GL-DS; Tue, 17 Oct 2023 11:09:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618206.961587; Tue, 17 Oct 2023 11:09: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 1qshwr-0001GE-Aj; Tue, 17 Oct 2023 11:09:17 +0000
Received: by outflank-mailman (input) for mailman id 618206;
 Tue, 17 Oct 2023 11:09: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 1qshwq-0001G4-Mj; Tue, 17 Oct 2023 11:09: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 1qshwq-0001uK-Fj; Tue, 17 Oct 2023 11:09: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 1qshwq-0008Jk-2T; Tue, 17 Oct 2023 11:09:16 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qshwq-0001y1-1y; Tue, 17 Oct 2023 11:09: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=i55lBnZzHYTJ/X9gBgx/iWDEawgilsyk1tI40NCh5K4=; b=4LJDIg+kbKLee/DYlMRSAJMt+k
	CKWvW3AgI9LNq14tq36RsGWtPOnT6kGCZGy+m7klhhjE0PElaKOcTYvZvenpMjwLCFJ10MJIIjAT8
	uqYK6kuRCu6PGeMbcTyewZaZAN90FkbWX728kcylL0GIKKQOp9S7AvR/09ZReSxQJ3qg=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183392-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 183392: tolerable FAIL - PUSHED
X-Osstest-Failures:
    xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:windows-install:fail:heisenbug
    xen-unstable:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:debian-hvm-install:fail:nonblocking
    xen-unstable:test-amd64-amd64-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-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-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-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop: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-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:saverestore-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-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-amd64-libvirt-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-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2: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-arndale:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-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-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=0ce2ee7a16f2886c32b3f070bba3172f4a577aa4
X-Osstest-Versions-That:
    xen=6432228fb5808150d3c5c14affb3d46af81b3878
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 17 Oct 2023 11:09:16 +0000

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

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-amd64-amd64-xl-qemuu-win7-amd64 12 windows-install fail pass in 183398-retest

Tests which did not succeed, but are not blocking:
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 12 debian-hvm-install fail blocked in 183383
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop  fail in 183398 like 183383
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183383
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183383
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 183383
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183383
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183383
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183383
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 183383
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183383
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183383
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 183383
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 183383
 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-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          16 saverestore-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-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-amd64-libvirt-xsm 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-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-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-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-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                  0ce2ee7a16f2886c32b3f070bba3172f4a577aa4
baseline version:
 xen                  6432228fb5808150d3c5c14affb3d46af81b3878

Last test of basis   183383  2023-10-16 13:38:36 Z    0 days
Testing same since   183392  2023-10-17 01:08:40 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Anthony PERARD <anthony.perard@citrix.com>
  George Dunlap <george.dunlap@cloud.com>
  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                  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                                       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
   6432228fb5..0ce2ee7a16  0ce2ee7a16f2886c32b3f070bba3172f4a577aa4 -> master


From xen-devel-bounces@lists.xenproject.org Tue Oct 17 11:37:38 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 17 Oct 2023 11:37:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618218.961622 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsiO1-0007v9-TY; Tue, 17 Oct 2023 11:37:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618218.961622; Tue, 17 Oct 2023 11:37: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 1qsiO1-0007v2-O2; Tue, 17 Oct 2023 11:37:21 +0000
Received: by outflank-mailman (input) for mailman id 618218;
 Tue, 17 Oct 2023 11:37: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 1qsiO0-0007uZ-DB; Tue, 17 Oct 2023 11:37: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 1qsiO0-0002Zf-C1; Tue, 17 Oct 2023 11:37: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 1qsiNz-0000Zy-Uy; Tue, 17 Oct 2023 11:37:20 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qsiNz-00081w-UQ; Tue, 17 Oct 2023 11:37: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=0S8lKr3shvjkTuonvUogOxgWjpmBRGIB2yDcPUjghDs=; b=6firpnnx7JrlqzMydcXyPqdCo3
	O/JrDZlNZC1skjOmG8j4f91UkqSH5uTD+jf6z6SczLAAdR9W7lZPy9acIJWiphz2K0eQQht7hJKs9
	ERD4DFvy2XU5BQO1MvnVBhw04lPkyE9hzrRyNJBZw8aUqoYaR6LQiCqDzNBM9kJIi36s=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183396-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 183396: 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=7114bbfc8424ee467c6c8c82f077764ca4fa799b
X-Osstest-Versions-That:
    xen=0ce2ee7a16f2886c32b3f070bba3172f4a577aa4
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 17 Oct 2023 11:37:19 +0000

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

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                  7114bbfc8424ee467c6c8c82f077764ca4fa799b
baseline version:
 xen                  0ce2ee7a16f2886c32b3f070bba3172f4a577aa4

Last test of basis   183389  2023-10-16 18:03:55 Z    0 days
Testing same since   183396  2023-10-17 08:05:24 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Anthony PERARD <anthony.perard@citrix.com>
  Federico Serafini <federico.serafini@bugseng.com>
  Jan Beulich <jbeulich@suse.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
   0ce2ee7a16..7114bbfc84  7114bbfc8424ee467c6c8c82f077764ca4fa799b -> smoke


From xen-devel-bounces@lists.xenproject.org Tue Oct 17 12:52:46 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 17 Oct 2023 12:52:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618241.961633 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsjYg-000482-Ga; Tue, 17 Oct 2023 12:52:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618241.961633; Tue, 17 Oct 2023 12:52: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 1qsjYg-00047v-C4; Tue, 17 Oct 2023 12:52:26 +0000
Received: by outflank-mailman (input) for mailman id 618241;
 Tue, 17 Oct 2023 12:52: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 1qsjYf-00047p-0g
 for xen-devel@lists.xenproject.org; Tue, 17 Oct 2023 12:52: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 1qsjYe-0004Bu-FG; Tue, 17 Oct 2023 12:52:24 +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 1qsjYe-000569-4z; Tue, 17 Oct 2023 12:52: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=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:MIME-Version:Message-Id:Date:
	Subject:Cc:To:From; bh=MknmP2wGrjGZswt9B/XD/+18BWa0iXBTx/DOGz518es=; b=0VjuO+
	LCVBaB1uWH4aQ5H6z50Z9e0Kjr33nbMDweemQeeQZxj1uZpToHiEWCJCUPjmwlNvf6qRtCWfMj7yW
	pUolvCV/euEdspZd5j7r+4k68YHt4eDBUK+C2NOO8cWspdPeIjdKEc5FCjnffbbivlFxc211jOb7/
	NpdvHavTib8=;
From: Julien Grall <julien@xen.org>
To: xen-devel@lists.xenproject.org
Cc: ayan.kumar.halder@amd.com,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: [for-4.19] xen/arm64: head: only use the macro load_paddr() in the MMU code
Date: Tue, 17 Oct 2023 13:52:19 +0100
Message-Id: <20231017125219.76626-1-julien@xen.org>
X-Mailer: git-send-email 2.40.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The macro load_paddr() requires to know the offset between the
physical location of Xen and the virtual location.

When using the MPU, x20 will always be 0. Rather than wasting
a register for a compile-time constant value, it would be best if
we can avoid using load_paddr() altogher in the common head.S code.

The current use of load_paddr() are equivalent to adr_l() because
the MMU is off.

All the use of load_paddr() in arm64/head.S are now replaced with
adr_l(). With that, load_paddr() can now be moved in arm64/mmu/head.S.

For now, x20 is still unconditionally set. But this could change
in the future if needed.

Signed-off-by: Julien Grall <julien@xen.org>
---
 xen/arch/arm/arm64/head.S               | 4 ++--
 xen/arch/arm/arm64/mmu/head.S           | 6 ++++++
 xen/arch/arm/include/asm/arm64/macros.h | 6 ------
 3 files changed, 8 insertions(+), 8 deletions(-)

diff --git a/xen/arch/arm/arm64/head.S b/xen/arch/arm/arm64/head.S
index 4ad85dcf58d2..8dbd3300d89f 100644
--- a/xen/arch/arm/arm64/head.S
+++ b/xen/arch/arm/arm64/head.S
@@ -259,7 +259,7 @@ real_start_efi:
 
         /* Using the DTB in the .dtb section? */
 .ifnes CONFIG_DTB_FILE,""
-        load_paddr x21, _sdtb
+        adr_l x21, _sdtb
 .endif
 
         /* Initialize the UART if earlyprintk has been enabled. */
@@ -301,7 +301,7 @@ GLOBAL(init_secondary)
         bic   x24, x0, x13           /* Mask out flags to get CPU ID */
 
         /* Wait here until __cpu_up is ready to handle the CPU */
-        load_paddr x0, smp_up_cpu
+        adr_l x0, smp_up_cpu
         dsb   sy
 2:      ldr   x1, [x0]
         cmp   x1, x24
diff --git a/xen/arch/arm/arm64/mmu/head.S b/xen/arch/arm/arm64/mmu/head.S
index 88075ef08334..412b28e649a4 100644
--- a/xen/arch/arm/arm64/mmu/head.S
+++ b/xen/arch/arm/arm64/mmu/head.S
@@ -19,6 +19,12 @@
 #define XEN_FIRST_SLOT      first_table_offset(XEN_VIRT_START)
 #define XEN_SECOND_SLOT     second_table_offset(XEN_VIRT_START)
 
+/* Load the physical address of a symbol into xb */
+.macro load_paddr xb, sym
+        ldr \xb, =\sym
+        add \xb, \xb, x20
+.endm
+
 /*
  * Flush local TLBs
  *
diff --git a/xen/arch/arm/include/asm/arm64/macros.h b/xen/arch/arm/include/asm/arm64/macros.h
index 99c401fcafa9..fb9a0602494d 100644
--- a/xen/arch/arm/include/asm/arm64/macros.h
+++ b/xen/arch/arm/include/asm/arm64/macros.h
@@ -62,12 +62,6 @@
         add  \dst, \dst, :lo12:\sym
 .endm
 
-/* Load the physical address of a symbol into xb */
-.macro load_paddr xb, sym
-        ldr \xb, =\sym
-        add \xb, \xb, x20
-.endm
-
 /*
  * Register aliases.
  */
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Tue Oct 17 13:10:46 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 17 Oct 2023 13:10:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618244.961641 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsjqG-0007bt-VA; Tue, 17 Oct 2023 13:10:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618244.961641; Tue, 17 Oct 2023 13:10: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 1qsjqG-0007bm-SN; Tue, 17 Oct 2023 13:10:36 +0000
Received: by outflank-mailman (input) for mailman id 618244;
 Tue, 17 Oct 2023 13:10: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=BgJ9=F7=citrix.com=prvs=6472a2412=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qsjqF-0007bg-B1
 for xen-devel@lists.xenproject.org; Tue, 17 Oct 2023 13:10:36 +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 894c46f4-6cee-11ee-9b0e-b553b5be7939;
 Tue, 17 Oct 2023 15:10:28 +0200 (CEST)
Received: from mail-bn1nam02lp2041.outbound.protection.outlook.com (HELO
 NAM02-BN1-obe.outbound.protection.outlook.com) ([104.47.51.41])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 17 Oct 2023 09:10:13 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by SA2PR03MB5897.namprd03.prod.outlook.com (2603:10b6:806:11e::8)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.34; Tue, 17 Oct
 2023 13:10:10 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::17e3:6cff:b087:fc64]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::17e3:6cff:b087:fc64%4]) with mapi id 15.20.6886.034; Tue, 17 Oct 2023
 13:10: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: 894c46f4-6cee-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1697548228;
  h=from:to:cc:subject:date:message-id:
   content-transfer-encoding:mime-version;
  bh=todqh5vCT3K6790jT/LVcMC5BwvoYx2Ed8HNF2Af/Xs=;
  b=IIM7kRNGyods3mCFDCP6eaxH5pHMqFJP2gevOl8RTGHxo09EVAlGgwAG
   CofpCbTOqmmskSVMIQ33BX9OuZLAj9MUqW7pa7CjhrYDxI/f3Tn3CqmzF
   FV2qc1TZ6BcEUODakeiUdiqhzWcGmmSjIuTIhfTc6voHwRl9lV0TY2jar
   I=;
X-CSE-ConnectionGUID: pkI4cggCQHm8BTOVZzRcyg==
X-CSE-MsgGUID: H6tXgyuXT6C6+BHrCmxB3A==
X-IronPort-RemoteIP: 104.47.51.41
X-IronPort-MID: 128594362
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:v6fJP6piFQeSkjUykT6KZwWSi15eBmIwZBIvgKrLsJaIsI4StFCzt
 garIBmOPKuOMTP2c49yaI6y9U8EuseHytFlTwFs+CAyHigb9ZuZCYyVIHmrMnLJJKUvbq7FA
 +Y2MYCccZ9uHhcwgj/3b9ANeFEljfngqoLUUbOCYmYpA1Y8FE/NsDo788YhmIlknNOlNA2Ev
 NL2sqX3NUSsnjV5KQr40YrawP9UlKq04GhwUmAWP6gR5waGziZNVvrzGInqR5fGatgMdgKFb
 76rIIGRpgvx4xorA9W5pbf3GmVirmn6ZFXmZtJ+AsBOszAazsAA+v9T2Mk0MC+7vw6hjdFpo
 OihgLTrIesf0g8gr8xGO/VQO3kW0aSrY9YrK1Dn2SCY5xWun3cBX5yCpaz5VGEV0r8fPI1Ay
 RAXACgOT0yIiO2d+ZK+GsNQofoRPvPgLYxK7xmMzRmBZRonabbqZv2QoPV+hXI3jM0IGuvCb
 c0EbzYpdA7HfxBEJlYQDtQ5gfusgX78NTZfrTp5p4JuuzSVkFM3jeGrbIO9lt+iHK25mm6Co
 W3L5SLhCwwyP92D0zuVtHmrg4cjmAuiAtJPReHjqKQCbFu75jIPOBIHSGuH/9LnyWSeQflaO
 2ZP0397xUQ13AnxJjXnZDWorXjBshMCVt54F+wh9BrL2qfS+xyeBGUPUnhGctNOnO87QyY7k
 GCAmdzBDCZq9raSTBq19bqKrDX0JSkcK0cDYzMJSU0O5NyLnW0ophfGT9ImGqjsiNTwQWv02
 2rS8HF4gKgPh8kW0an95UrAnz+nupnOSEgy+xnTWWWmqAh+YeZJerCV1LQS1t4YRK7xc7VLl
 CFsdxS2hAzWMaywqQ==
IronPort-HdrOrdr: A9a23:QzYtMqmQ+atLEm4EKPzQ7Bu0giHpDfLa3DAbv31ZSRFFG/Fw9/
 rCoB3U73/JYVcqKRcdcLW7UpVoLkmyyXcY2+cs1PKZLWvbUQiTXeZfBOnZsl7d8kTFn4Yw6U
 4jSdkaNDSZNzNHZK3BkW2F+rgboeVu8MqT9JjjJ3UGd3AVV0m3hT0JezpyESdNNXl77YJSLu
 vk2iLezQDQBEj+aK6AdwE4dtmGnfLnvrT8byULAhY2gTP+8Q9BuNbBYmOlNg51aUI0/Ysf
X-Talos-CUID: 9a23:uD1uRm+uU3yHF9f6YbaVv1YXO5wufXL29VfVc2WELlhbWoeeWFDFrQ==
X-Talos-MUID: =?us-ascii?q?9a23=3AAN8A2w7wAzhWUQib1e+mivuYxoxIvbieB1EQoal?=
 =?us-ascii?q?YkJfHHwxqEDKNpm+eF9o=3D?=
X-IronPort-AV: E=Sophos;i="6.03,232,1694750400"; 
   d="scan'208";a="128594362"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=m5e4k5SEA50VOQXaiLPZ1zDoE47qMrbyN1IaO/Qi/Mu7jaf7yvsv/my76mH62+BMAQjIoMKhnsZtWRlUGGZdIfNOV+K86Qg/cNTb7CQluzyjUjUY4tfR15Id6KJOWLwusIGn3rAZcTt+Lp/kKClCYl48XaFNDF28AZ0tqAUA3uT+SrTyJDfC0i3+7jhiwq4EKAgVPJUO7P3reS4tdgZSf6Ngubq8wBKBMW/eHDYn/o7FGttjoQaUd0Yg2PFQz+94Uo1N42URX1adhoPcYQRElzaFnoHnJbvtc9NwZ+H8GYpJganMnplHR4hX8PPv3beJ1fhCeUoH0BLfP//0ZVCifg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=Q3Pqfakh+wivShd6JtJSI6AU5g2VmHIJhHRDI3lyRBY=;
 b=GtHyCQVOYHFwcTt4t/5CB6vU7rjaq0QNmjWe9CV9tc3vmKa2aT+PGbaxggkPxrfb+Fpcu3GTcIHhlqpf3Y2L3Owvh2mR9xb5KpQRTyLCSZZN3MLhbagXrZLYq83DnPuE44ZbeIUhoASnVD28gcUK7UEkMoKNwSKhawKLDpRwUWR/eiERli7sRwNNGWUw2qh16A+rJG9tdnLPaTbVVG2pZksYVt9EDjiR5mk7j28Kg/AO+rLso4Sx7g8kvDhbCPiO7lBpxiK95cxyJQlzd27TJAU3XZlXOMooIhPPzNyIFzeX8LE6jcyuq7/C7WbRMiLd5gWVGxhsaa0oiDcvVe7SPQ==
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=Q3Pqfakh+wivShd6JtJSI6AU5g2VmHIJhHRDI3lyRBY=;
 b=qtSYz6GxFpcTZym0KcldO4ELl40+scwCiOxYtny243YTDOCVNiphsksld68J9bDEVGJVfGsZtcHYX7VHbD0733BGtIjIAhWeMa2yX9wSuInvaRc/pOtzFF8Q6VnAIJOpO3uygsmH6TB+nlAkFXkbPjjAXe/bIjuYio0auhoc1+4=
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: Henry Wang <Henry.Wang@arm.com>,
	Roger Pau Monne <roger.pau@citrix.com>,
	Kevin Tian <kevin.tian@intel.com>
Subject: [PATCH for-4.18] iommu/vt-d: use max supported AGAW
Date: Tue, 17 Oct 2023 15:09:43 +0200
Message-ID: <20231017130943.18111-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: MR1P264CA0205.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:501:56::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_|SA2PR03MB5897:EE_
X-MS-Office365-Filtering-Correlation-Id: 31b548b2-81e4-45a2-7424-08dbcf12639f
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:
	N1Hl2yFdcbx7giahJAZzxjaif2hOkbDAlei/3pY6dgLn3wk51BCZ3n44p61hgfKW1hXnJpGF4RyKoQcyjhMQSEs6rgHowWgbIkQxZaCI3T5wA7BurLFBi9pRlKmhBnwkgIpkpz5nTdf5Zwyr5KDKg2/WpeueScv+HxCb/+KRHHwMYLtI4ujLhtw2ir9rDFZBnsdgwlJwzdSe99JRY0rfMuyk8Bcoqff/47OqqeSQzaoz5s0ye/XfcHjIj9leIfQdw/ac7/UNDmYx6MQ7JfL26Ili2ybfi3QcOb94VrjRETYCGh0gX/uQVFAH3bgUIJmGifp7rpq+vNTEaxJn5YKzG38WIm1a6h8wa1KUaOzuMoej/ITeJHmB1lIOT537iZ4e7ztTQV1ekpT2uIyptFPBhJMBdPfLVX2KnGJLf2vbBEpxOvom7ySf78yjpUXA9qXi05hXMI3h4w4dbJ0Rf2Iy5QmvI9+8GtqP/RQM7lJnPqheE0TTBRcF8j5lF+HBQIANbEi2wMoLL9b6psbkj7g/MvBJdo8cl47DVmmGtynQikHvncZNmFkdUjOsOmMhJ+Ej
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)(39860400002)(376002)(346002)(396003)(230922051799003)(64100799003)(451199024)(1800799009)(186009)(8936002)(4326008)(8676002)(5660300002)(2906002)(41300700001)(86362001)(36756003)(26005)(38100700002)(6506007)(82960400001)(1076003)(2616005)(83380400001)(6512007)(6666004)(478600001)(66946007)(66556008)(6486002)(66476007)(316002)(54906003)(6916009);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?Y1k0N2NXWkdXL05qeFQ5Zm1McExFVEdSMjB5WDZ5V1g3enNWa1hLUVB4cU1Q?=
 =?utf-8?B?NDJlU2JXQUFQUEJ1eHprSEcxZ05wOHZLQ0hoS0IwSXhIenhhenk0b0ttcmtF?=
 =?utf-8?B?eXRZcEFCbDdEbUJnbzRDclZzVHdqakp0UjFwWWlJNys2VzdqQ21leEJDTi9T?=
 =?utf-8?B?Q2gwTGhFbUZ2U1RqVGozclBzdGVoamRhckVVOWlidDdaTmRYQ05MeW9FOWI0?=
 =?utf-8?B?RnVOZVFabW1pa1B6QUFIUkt5Z1VFbk5VRUtrMXlnRlE4VEVUYW5DU0EzZGNi?=
 =?utf-8?B?Nys1aTVnOG83ZUc2N0ZlYkVyaWp6TE5LSm1zYUZvTjZLS1FvZmxOMzFYQ1Jy?=
 =?utf-8?B?Rm5vNnozTzhVYzVjZmp4aENuQnZYNXJMbUtuYmtmUVN2NzNhWnpyMTM4ZzM3?=
 =?utf-8?B?d0VlUHZ0c0tNK3BWZFJYZVBmazlmKzhVV3h1dTZoWG1aYU91cmYzQUVvb3lm?=
 =?utf-8?B?T3RXNTR0YVdTVWsvRlRhOFlUb2txUGh3dVA1R05IY05QQWZkN1hlNXlhaVo5?=
 =?utf-8?B?QWhSMm5NaGVkQmhGMzZRdlFLQ0F2L1BnRFlBMDZ3TE81enVnWWM5dkwzWUVO?=
 =?utf-8?B?dU80TE10dmVWeVo4SXN2SEhHbVFIb2JPWnJicjFtT1VSN3lpR3UvRXpObzBy?=
 =?utf-8?B?bVhJNzNzbW0rWE5RNTdkSy9iekFwcUlacU5OcGpoazlVdkoyTm80RGlJZWdF?=
 =?utf-8?B?OC9ScXFQUm83dm5GL2NlZGtOVEVDU3VQWHAwR0RqU2svQVZhTHVrUEN6YVBH?=
 =?utf-8?B?SGExNUNjWDJFN050Y05PUHRHNldOYUNpS0NOeUx5alA2SDFjU0lOZS9rSGNC?=
 =?utf-8?B?OUdIYmpEZUJUQVpUdWZ0MlNCR2dlQmRRUGRJZU5XRjRpU216eG1NNGtrUnZz?=
 =?utf-8?B?Tk5wd2hDdzg1cDB2MjUvaER2NFFScHE1WTJnYjZlODArcjFEZEdPUlFGSVR6?=
 =?utf-8?B?cUVnZ1hSbkM2M01oMUx2cGQ1dml6cDdFQ0ZTQXFzOHJ5NzJOSVBVU2VmZjdL?=
 =?utf-8?B?bU5VY0lRREdqYUZ3SjBSQ2I5Y1hiL3F6Y25KWnVHbE5MeTNrdEsrMnNPS09W?=
 =?utf-8?B?ZVVoQjZSeDJabHZ4aWpBdEVWUi9jcUk0L1ZQVExockNsT0JCQStBMnR2UEJO?=
 =?utf-8?B?T2FnNUtrS1BsWjJKRENJOUQ5M2hnUVluMVh5bmlEMGZaYllmU0VmUDh5Sk9H?=
 =?utf-8?B?M3FDVGl1L1hIZWlDcCtmbm5uQ0FvdjE2alFlRDgrbTIxMi9TSUY2bExER3g0?=
 =?utf-8?B?VmZpU3lPcUkxMTVUU3RFRWdWRERGTzlKNUFGQ040NG9tOGMrRHVvR2NqZ1Qz?=
 =?utf-8?B?T0c4b290Zlp3OW1UenVGeHUvUGRBMEk0SS91Y0JCTGZxRHFkTDF6ZXYrTFA2?=
 =?utf-8?B?TGxncVdQTDQwbUVPTVo3YzRTWjBBYkszU3M4UXRtMkdnV2JsTnlMZlNlUmVm?=
 =?utf-8?B?RDU4eHBSOXBDK3ljWWFKYzJ6M0pCU2EyaG1kQVc1S1JhTHBTVGd6aC9WZ1FE?=
 =?utf-8?B?WkNsMEZhdE5hSE9lTXV6eHB2T1ZjTU5XcWFZTmh6aC8rUUY2clI4cCt0aTli?=
 =?utf-8?B?OEt6Z2dXdUwyV09MczhrdTF4R25UY0J6UWVkcDJGUW9xcDJyelRVWDB0Z2E5?=
 =?utf-8?B?cmMzUjFDTGlHd3RZMEdxOU5vZWcwVXRTUkIvcWQzb0p6YkhROVF1WjVSRGZB?=
 =?utf-8?B?elVNVmpaRGVrcmcvQVIzV3UzbXVoRllQM0hoS0wwUWg1RDVSUEpGVmkyYUdu?=
 =?utf-8?B?Mm5Ya3VVdGpnVFpoUlF3OTViQnFjbmZJM0s4allQdStMWVJiWlZXWi9kUWxX?=
 =?utf-8?B?dm1QWkQ4SjZWNjhDdDhZcDVHOEVPVlJLcE9HU3dhVXRmdWpwd04yNWNEcTFa?=
 =?utf-8?B?bkU2aDlOR3hrSVZzSDNGMk9QUkFGN0RpaG0xeEtrUGt3c2wvQ3J5dmQ0MERX?=
 =?utf-8?B?YTdvQ3J2Mm9pdFd1NER0UGpXNnNvRjdEWm9nbXpiOVlsZXgzbmZDSXA0dGxF?=
 =?utf-8?B?TEJsQkxJVlBhRFdTNy9wZUc4Y2d4SlNReFh2SDNFc29aU0NCbzJKK3d2S1Nh?=
 =?utf-8?B?SWdWOU5nZFBZQXlNdTZEUjlYR3V4SXhjREJpMUhnK1AvV0Z5enRCS2xNdlkr?=
 =?utf-8?Q?CIAyc0W+fG/dvvHIDLm+KUXjO?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	YpZd5MP1wNUZysb1XLEiW/t4mhcSjonBSIquM6bhp2eYaNzuhT8WGdWuud/4bSVH5rrWpGPjCvJEIISKbt7ahpSVZ60GgOZGEsdQiZxdWVQua4UPX+joLD8QJb1c4tHj0sW9equ9qROBm4aMRvR4hXq8z76rq9QXv3gWm0Wp6HF95YBjG6SYcFHV7fEH8IfFykIayPW0uUIPjSSyJa9JEhO7D/k6auuPFITvR7DBgZOzOaU/N6CACTvAl8Wq3lT7ygQiQZaAlY85NSMKGFM+TsBf3XDrUlZM/XBRNDqEj0NaXSEN4veXDUtVkVer+bSo4Y86nW8z77ZYPqpJSYLnvKO/tHKFo+9ZWZ4jx3Rqml2XlAE21hCbVghCGKwjbO9YuMWGTgoJORWoxRwftHg64BV5+ZLbadnGyZ9yzGaE45vA73+QGZIN8Xq5WgEZ/KcyxCPy1MPNPx3RCMMxXOuULZ0XOwBv/KxqKG+tkL8UInMbPe6sZLMX93Q8NgWR3owPPu3+VOq6YmlCYBpCln7K6t5PNGncFWX3x5iZ6S+t1I96iRISW+jKqFAEsy4D3XzcuPbzPPu1Ekst7f+o5wkSFfJ65JbuSYFXiJ0PbwT0/2xSt5yeQi6YDOyxCbvOfA/KlVvGInkSfK+cLSI14ioGYm4ziz5CbaNzX10MGeL9rAGgHluHFwDJ1iiSJtuVKvfsohs/j6m9lEibpoRmfOMA9Q76astgunQZiFi3PQBhW/Hyk215PzoinSKoJX+2cnNGnF8ix7d2cpwk9yKQNLsYHOQJ0iTaxNOmp/nkMEJDJCwer909V7Yqzw1LT1BJ9Si9VIYG7C7Nr9oopfJpK4n1qA==
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 31b548b2-81e4-45a2-7424-08dbcf12639f
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Oct 2023 13:10:09.4041
 (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: IXRV3fk0NC6rnaYh4r0MNRWTxjFlTohyWh6tzJQlU2nenUqkBQV9ax3Qi1TktCDWfr6WQMFMlj9Zr0fvibDvdw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA2PR03MB5897

SAGAW is a bitmap field, with bits 1 and 2 signaling support for AGAW 1 and
AGAW 2 respectively.  According to the Intel VT-d specification, an IOMMU might
support multiple AGAW values.

The AGAW value for each device is set in the device context entry, however
there's a caveat related to the value the field supports depending on the
translation type:

"When the Translation-type (T) field indicates pass-through (010b) or
guest-mode (100b or 101b), this field must be programmed to indicate the
largest AGAW value supported by hardware."

Of the translation types listed above Xen only uses pass-through (010b), and
hence we need to make sure the context entry AGAW field is set appropriately,
or else the IOMMU will report invalid context entry errors.

To do so calculate the IOMMU supported page table levels based on the last bit
set in the SAGAW field, instead of the first one.  This also allows making use
of the widest address width supported by the IOMMU, in case multiple AGAWs are
supported.

Note that 859d11b27912 claims to replace the open-coded find_first_set_bit(),
but it's actually replacing an open coded implementation to find the last set
bit.

Fixes: 859d11b27912 ('VT-d: prune SAGAW recognition')
Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
---
 xen/drivers/passthrough/vtd/iommu.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/xen/drivers/passthrough/vtd/iommu.c b/xen/drivers/passthrough/vtd/iommu.c
index ceef7359e553..be60d7573dae 100644
--- a/xen/drivers/passthrough/vtd/iommu.c
+++ b/xen/drivers/passthrough/vtd/iommu.c
@@ -1328,7 +1328,7 @@ int __init iommu_alloc(struct acpi_drhd_unit *drhd)
     /* Calculate number of pagetable levels: 3 or 4. */
     sagaw = cap_sagaw(iommu->cap);
     if ( sagaw & 6 )
-        agaw = find_first_set_bit(sagaw & 6);
+        agaw = fls(sagaw & 6) - 1;
     if ( !agaw )
     {
         printk(XENLOG_ERR VTDPREFIX "IOMMU: unsupported sagaw %x\n", sagaw);
-- 
2.42.0



From xen-devel-bounces@lists.xenproject.org Tue Oct 17 13:13:02 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 17 Oct 2023 13:13:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618247.961652 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsjsa-00089b-CY; Tue, 17 Oct 2023 13:13:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618247.961652; Tue, 17 Oct 2023 13: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 1qsjsa-00089U-9T; Tue, 17 Oct 2023 13:13:00 +0000
Received: by outflank-mailman (input) for mailman id 618247;
 Tue, 17 Oct 2023 13:12: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=oOJq=F7=linaro.org=philmd@srs-se1.protection.inumbo.net>)
 id 1qsjsZ-00089O-8u
 for xen-devel@lists.xenproject.org; Tue, 17 Oct 2023 13:12:59 +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 e315195b-6cee-11ee-9b0e-b553b5be7939;
 Tue, 17 Oct 2023 15:12:56 +0200 (CEST)
Received: by mail-wm1-x32a.google.com with SMTP id
 5b1f17b1804b1-40776b1ff73so33028705e9.2
 for <xen-devel@lists.xenproject.org>; Tue, 17 Oct 2023 06:12:56 -0700 (PDT)
Received: from m1x-phil.lan ([176.172.118.33])
 by smtp.gmail.com with ESMTPSA id
 t7-20020a1c7707000000b0040586360a36sm9759389wmi.17.2023.10.17.06.12.52
 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256);
 Tue, 17 Oct 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: e315195b-6cee-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=linaro.org; s=google; t=1697548376; x=1698153176; 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=MJO7DWWRMp74wYPOl7vPeEwkKht+ldFkzgAjlIPhGCE=;
        b=II0qDzjawmtzmFPi9cT2nVhB0TsQvNZzfex+oufcu2r308RL+xAgMG7+txJDJJzTqK
         BsWScCmIxBO7vg9o64u5G7PxwtJgNyIH60evQ3fQ198SLDkEjrPYQxibr6cgVRodtRu6
         QtVuKZLqUOayyLrzP5VpX/RJ3E/fozP9iYat+diSld9FNVQBjjRNt0czvjV3zgl0Wkn9
         EMTC00BG7M7f849Dt9hAJ0Rk2P1kOUy4HwIIIrRABrifHTWA4Snla2Fh7SNiKDcSvl3Y
         2YuQBJmm1bFZJimXQxNNtoghusdV3w+eeKRb/+61e1iT9y9kag9GHZz+yqFEfX11fHsa
         HTTA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697548376; x=1698153176;
        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=MJO7DWWRMp74wYPOl7vPeEwkKht+ldFkzgAjlIPhGCE=;
        b=Qvfx1yfeT2d7bMFWivM64NMrnB9QXYnNEje10ETHV8TvQq5OauSPXzrLDC7VgdeU+m
         WluXt5e27fEOBxiGwEV3ira57lx4jHBmWew9+wl9vNED9LxWu8WEeOreJGiiyHD1AgTJ
         sQ2zQrK41PL1PPJOHpGnxhKGN+iPgkxHtXEuMl8bXGZTcn+zoikalNiFQEZ4s3jFzpQ7
         vC6Fjcwu1w+9NVs4ivwdDUbh/ZL4sxMzM99hgz0yMkD6kTiw+FuLBumYGqfx/BM94roH
         f+Dn/V25ZwYrdJJe0fJdtL2BfVS9lMJe0fY/N2WKrr4T9lLKWJffo9NQ6F3SCBpgYEPJ
         TzDw==
X-Gm-Message-State: AOJu0Yx1sqL05Jb6jNAlBQs62fO2llpYHHK9kWYcES2yrQutHWLei7Vh
	vZOKaU4qYt1GioJEyLk6pX6TBg==
X-Google-Smtp-Source: AGHT+IGxy9d5wwgEu6D2b+uBg62HQt7DkljhO8VGs4e6HBhThmjfwChLZNZkDn086W1jhpisP8ep9A==
X-Received: by 2002:a05:600c:1c29:b0:406:5227:86f0 with SMTP id j41-20020a05600c1c2900b00406522786f0mr1787564wms.5.1697548374787;
        Tue, 17 Oct 2023 06:12:54 -0700 (PDT)
From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>
To: qemu-devel@nongnu.org
Cc: "Michael S. Tsirkin" <mst@redhat.com>,
	xen-devel@lists.xenproject.org,
	Stefano Stabellini <sstabellini@kernel.org>,
	qemu-ppc@nongnu.org,
	Paul Durrant <paul@xen.org>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Song Gao <gaosong@loongson.cn>,
	Gerd Hoffmann <kraxel@redhat.com>,
	Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>,
	Anthony Perard <anthony.perard@citrix.com>,
	=?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>
Subject: [PATCH] ui/input: Constify QemuInputHandler structure
Date: Tue, 17 Oct 2023 15:12:51 +0200
Message-ID: <20231017131251.43708-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

Access to QemuInputHandlerState::handler are read-only.

Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
---
 include/hw/virtio/virtio-input.h | 2 +-
 include/ui/input.h               | 2 +-
 chardev/msmouse.c                | 2 +-
 chardev/wctablet.c               | 2 +-
 hw/char/escc.c                   | 2 +-
 hw/display/xenfb.c               | 6 +++---
 hw/input/adb-kbd.c               | 2 +-
 hw/input/hid.c                   | 6 +++---
 hw/input/ps2.c                   | 4 ++--
 hw/input/virtio-input-hid.c      | 8 ++++----
 ui/input-legacy.c                | 2 +-
 ui/input.c                       | 4 ++--
 ui/vdagent.c                     | 2 +-
 13 files changed, 22 insertions(+), 22 deletions(-)

diff --git a/include/hw/virtio/virtio-input.h b/include/hw/virtio/virtio-input.h
index 08f1591424..a6c9703644 100644
--- a/include/hw/virtio/virtio-input.h
+++ b/include/hw/virtio/virtio-input.h
@@ -84,7 +84,7 @@ struct VirtIOInputHID {
     VirtIOInput                       parent_obj;
     char                              *display;
     uint32_t                          head;
-    QemuInputHandler                  *handler;
+    const QemuInputHandler            *handler;
     QemuInputHandlerState             *hs;
     int                               ledstate;
     bool                              wheel_axis;
diff --git a/include/ui/input.h b/include/ui/input.h
index 24d8e4579e..8f9aac562e 100644
--- a/include/ui/input.h
+++ b/include/ui/input.h
@@ -30,7 +30,7 @@ struct QemuInputHandler {
 };
 
 QemuInputHandlerState *qemu_input_handler_register(DeviceState *dev,
-                                                   QemuInputHandler *handler);
+                                            const QemuInputHandler *handler);
 void qemu_input_handler_activate(QemuInputHandlerState *s);
 void qemu_input_handler_deactivate(QemuInputHandlerState *s);
 void qemu_input_handler_unregister(QemuInputHandlerState *s);
diff --git a/chardev/msmouse.c b/chardev/msmouse.c
index ab8fe981d6..a774c397b4 100644
--- a/chardev/msmouse.c
+++ b/chardev/msmouse.c
@@ -171,7 +171,7 @@ static int msmouse_chr_write(struct Chardev *s, const uint8_t *buf, int len)
     return len;
 }
 
-static QemuInputHandler msmouse_handler = {
+static const QemuInputHandler msmouse_handler = {
     .name  = "QEMU Microsoft Mouse",
     .mask  = INPUT_EVENT_MASK_BTN | INPUT_EVENT_MASK_REL,
     .event = msmouse_input_event,
diff --git a/chardev/wctablet.c b/chardev/wctablet.c
index 43bdf6b608..f4008bf35b 100644
--- a/chardev/wctablet.c
+++ b/chardev/wctablet.c
@@ -178,7 +178,7 @@ static void wctablet_input_sync(DeviceState *dev)
     }
 }
 
-static QemuInputHandler wctablet_handler = {
+static const QemuInputHandler wctablet_handler = {
     .name  = "QEMU Wacom Pen Tablet",
     .mask  = INPUT_EVENT_MASK_BTN | INPUT_EVENT_MASK_ABS,
     .event = wctablet_input_event,
diff --git a/hw/char/escc.c b/hw/char/escc.c
index 4be66053c1..48b30ee760 100644
--- a/hw/char/escc.c
+++ b/hw/char/escc.c
@@ -845,7 +845,7 @@ static void sunkbd_handle_event(DeviceState *dev, QemuConsole *src,
     put_queue(s, keycode);
 }
 
-static QemuInputHandler sunkbd_handler = {
+static const QemuInputHandler sunkbd_handler = {
     .name  = "sun keyboard",
     .mask  = INPUT_EVENT_MASK_KEY,
     .event = sunkbd_handle_event,
diff --git a/hw/display/xenfb.c b/hw/display/xenfb.c
index 0074a9b6f8..b2130a0d70 100644
--- a/hw/display/xenfb.c
+++ b/hw/display/xenfb.c
@@ -321,20 +321,20 @@ static void xenfb_mouse_sync(DeviceState *dev)
     xenfb->wheel = 0;
 }
 
-static QemuInputHandler xenfb_keyboard = {
+static const QemuInputHandler xenfb_keyboard = {
     .name  = "Xen PV Keyboard",
     .mask  = INPUT_EVENT_MASK_KEY,
     .event = xenfb_key_event,
 };
 
-static QemuInputHandler xenfb_abs_mouse = {
+static const QemuInputHandler xenfb_abs_mouse = {
     .name  = "Xen PV Mouse",
     .mask  = INPUT_EVENT_MASK_BTN | INPUT_EVENT_MASK_ABS,
     .event = xenfb_mouse_event,
     .sync  = xenfb_mouse_sync,
 };
 
-static QemuInputHandler xenfb_rel_mouse = {
+static const QemuInputHandler xenfb_rel_mouse = {
     .name  = "Xen PV Mouse",
     .mask  = INPUT_EVENT_MASK_BTN | INPUT_EVENT_MASK_REL,
     .event = xenfb_mouse_event,
diff --git a/hw/input/adb-kbd.c b/hw/input/adb-kbd.c
index a9088c910c..e21edf9acd 100644
--- a/hw/input/adb-kbd.c
+++ b/hw/input/adb-kbd.c
@@ -355,7 +355,7 @@ static void adb_kbd_reset(DeviceState *dev)
     s->count = 0;
 }
 
-static QemuInputHandler adb_keyboard_handler = {
+static const QemuInputHandler adb_keyboard_handler = {
     .name  = "QEMU ADB Keyboard",
     .mask  = INPUT_EVENT_MASK_KEY,
     .event = adb_keyboard_event,
diff --git a/hw/input/hid.c b/hw/input/hid.c
index a9c7dd1ce1..b8e85374ca 100644
--- a/hw/input/hid.c
+++ b/hw/input/hid.c
@@ -510,20 +510,20 @@ void hid_free(HIDState *hs)
     hid_del_idle_timer(hs);
 }
 
-static QemuInputHandler hid_keyboard_handler = {
+static const QemuInputHandler hid_keyboard_handler = {
     .name  = "QEMU HID Keyboard",
     .mask  = INPUT_EVENT_MASK_KEY,
     .event = hid_keyboard_event,
 };
 
-static QemuInputHandler hid_mouse_handler = {
+static const QemuInputHandler hid_mouse_handler = {
     .name  = "QEMU HID Mouse",
     .mask  = INPUT_EVENT_MASK_BTN | INPUT_EVENT_MASK_REL,
     .event = hid_pointer_event,
     .sync  = hid_pointer_sync,
 };
 
-static QemuInputHandler hid_tablet_handler = {
+static const QemuInputHandler hid_tablet_handler = {
     .name  = "QEMU HID Tablet",
     .mask  = INPUT_EVENT_MASK_BTN | INPUT_EVENT_MASK_ABS,
     .event = hid_pointer_event,
diff --git a/hw/input/ps2.c b/hw/input/ps2.c
index 45af76a837..c8fd23cf36 100644
--- a/hw/input/ps2.c
+++ b/hw/input/ps2.c
@@ -1231,7 +1231,7 @@ static const VMStateDescription vmstate_ps2_mouse = {
     }
 };
 
-static QemuInputHandler ps2_keyboard_handler = {
+static const QemuInputHandler ps2_keyboard_handler = {
     .name  = "QEMU PS/2 Keyboard",
     .mask  = INPUT_EVENT_MASK_KEY,
     .event = ps2_keyboard_event,
@@ -1242,7 +1242,7 @@ static void ps2_kbd_realize(DeviceState *dev, Error **errp)
     qemu_input_handler_register(dev, &ps2_keyboard_handler);
 }
 
-static QemuInputHandler ps2_mouse_handler = {
+static const QemuInputHandler ps2_mouse_handler = {
     .name  = "QEMU PS/2 Mouse",
     .mask  = INPUT_EVENT_MASK_BTN | INPUT_EVENT_MASK_REL,
     .event = ps2_mouse_event,
diff --git a/hw/input/virtio-input-hid.c b/hw/input/virtio-input-hid.c
index 7053ad72d4..45e4d4c75d 100644
--- a/hw/input/virtio-input-hid.c
+++ b/hw/input/virtio-input-hid.c
@@ -265,7 +265,7 @@ static const TypeInfo virtio_input_hid_info = {
 
 /* ----------------------------------------------------------------- */
 
-static QemuInputHandler virtio_keyboard_handler = {
+static const QemuInputHandler virtio_keyboard_handler = {
     .name  = VIRTIO_ID_NAME_KEYBOARD,
     .mask  = INPUT_EVENT_MASK_KEY,
     .event = virtio_input_handle_event,
@@ -322,7 +322,7 @@ static const TypeInfo virtio_keyboard_info = {
 
 /* ----------------------------------------------------------------- */
 
-static QemuInputHandler virtio_mouse_handler = {
+static const QemuInputHandler virtio_mouse_handler = {
     .name  = VIRTIO_ID_NAME_MOUSE,
     .mask  = INPUT_EVENT_MASK_BTN | INPUT_EVENT_MASK_REL,
     .event = virtio_input_handle_event,
@@ -416,7 +416,7 @@ static const TypeInfo virtio_mouse_info = {
 
 /* ----------------------------------------------------------------- */
 
-static QemuInputHandler virtio_tablet_handler = {
+static const QemuInputHandler virtio_tablet_handler = {
     .name  = VIRTIO_ID_NAME_TABLET,
     .mask  = INPUT_EVENT_MASK_BTN | INPUT_EVENT_MASK_ABS,
     .event = virtio_input_handle_event,
@@ -541,7 +541,7 @@ static const TypeInfo virtio_tablet_info = {
 
 /* ----------------------------------------------------------------- */
 
-static QemuInputHandler virtio_multitouch_handler = {
+static const QemuInputHandler virtio_multitouch_handler = {
     .name  = VIRTIO_ID_NAME_MULTITOUCH,
     .mask  = INPUT_EVENT_MASK_BTN | INPUT_EVENT_MASK_MTT,
     .event = virtio_input_handle_event,
diff --git a/ui/input-legacy.c b/ui/input-legacy.c
index 46ea74e44d..210ae5eaca 100644
--- a/ui/input-legacy.c
+++ b/ui/input-legacy.c
@@ -127,7 +127,7 @@ static void legacy_kbd_event(DeviceState *dev, QemuConsole *src,
     }
 }
 
-static QemuInputHandler legacy_kbd_handler = {
+static const QemuInputHandler legacy_kbd_handler = {
     .name  = "legacy-kbd",
     .mask  = INPUT_EVENT_MASK_KEY,
     .event = legacy_kbd_event,
diff --git a/ui/input.c b/ui/input.c
index cbe8573c5c..dc745860f4 100644
--- a/ui/input.c
+++ b/ui/input.c
@@ -10,7 +10,7 @@
 
 struct QemuInputHandlerState {
     DeviceState       *dev;
-    QemuInputHandler  *handler;
+    const QemuInputHandler *handler;
     int               id;
     int               events;
     QemuConsole       *con;
@@ -46,7 +46,7 @@ static uint32_t queue_count;
 static uint32_t queue_limit = 1024;
 
 QemuInputHandlerState *qemu_input_handler_register(DeviceState *dev,
-                                                   QemuInputHandler *handler)
+                                            const QemuInputHandler *handler)
 {
     QemuInputHandlerState *s = g_new0(QemuInputHandlerState, 1);
     static int id = 1;
diff --git a/ui/vdagent.c b/ui/vdagent.c
index 00d36a8677..706d6d97bd 100644
--- a/ui/vdagent.c
+++ b/ui/vdagent.c
@@ -297,7 +297,7 @@ static void vdagent_pointer_sync(DeviceState *dev)
     }
 }
 
-static QemuInputHandler vdagent_mouse_handler = {
+static const QemuInputHandler vdagent_mouse_handler = {
     .name  = "vdagent mouse",
     .mask  = INPUT_EVENT_MASK_BTN | INPUT_EVENT_MASK_ABS,
     .event = vdagent_pointer_event,
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Tue Oct 17 13:28:28 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 17 Oct 2023 13:28:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618251.961662 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsk7R-0002fm-NA; Tue, 17 Oct 2023 13:28:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618251.961662; Tue, 17 Oct 2023 13:28: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 1qsk7R-0002ff-Je; Tue, 17 Oct 2023 13:28:21 +0000
Received: by outflank-mailman (input) for mailman id 618251;
 Tue, 17 Oct 2023 13:28: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 1qsk7Q-0002fZ-35
 for xen-devel@lists.xenproject.org; Tue, 17 Oct 2023 13:28: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 1qsk7O-00053h-VG; Tue, 17 Oct 2023 13:28:18 +0000
Received: from [15.248.2.61] (helo=[10.24.67.33])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qsk7O-00071Q-MC; Tue, 17 Oct 2023 13:28: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=yjcGE4cFUMAyeUWsGq2bRP9bfn5zOmjWrkp8xiBl0+U=; b=uOqFPtwOSXkpI6mjm9Y02aehqE
	KZW8p1IbU/YT4ZwilnNyfMe8BDXRABNxpwNNl35Shq11WQsOjUGcUcC74i1zWNKrUy39nYjqWI2cM
	agVVD3qLmYL6kWBDRuUQjU97wi6CZtkcJ3LxMhZkfKHCuLhKIq1ga0NXIrg/41+44UII=;
Message-ID: <3573c8c2-1a9c-444c-a542-539b16f689f2@xen.org>
Date: Tue, 17 Oct 2023 14:28:16 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: MISRA C:2012 D4.11 caution on staging
Content-Language: en-GB
To: Jan Beulich <jbeulich@suse.com>,
 Nicola Vetrini <nicola.vetrini@bugseng.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 Xen-devel <xen-devel@lists.xenproject.org>, consulting@bugseng.com,
 Stefano Stabellini <sstabellini@kernel.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>, roger.pau@citrix.com,
 George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>
References: <7972c20f361126022fa97f6b51ca2d9c@bugseng.com>
 <61f04d4b-34d9-4fd1-a989-56b042b4f3d8@citrix.com>
 <baa73fa24385b39bc6e82c4ccb08bd13@bugseng.com>
 <26f09702-9340-41ae-afcc-808becb67876@citrix.com>
 <75a00257-c062-4d82-9b64-1707ce4566e6@xen.org>
 <594c09e1f8b2e1e8321c2cb862fcb378@bugseng.com>
 <5ddb6398-f2a3-4bcb-8808-bad653b6c3cd@xen.org>
 <c4f4f1fc-b20a-c08f-9782-9ce06f6dd868@suse.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <c4f4f1fc-b20a-c08f-9782-9ce06f6dd868@suse.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi Jan,

On 17/10/2023 07:11, Jan Beulich wrote:
> On 16.10.2023 20:06, Julien Grall wrote:
>> Instead, it would be best to find a way to help Eclair to detect this is
>> not an issue and also improve readability. Would the following help Eclair?
>>
>> diff --git a/xen/common/domain.c b/xen/common/domain.c
>> index 30c227967345..ab16124eabd6 100644
>> --- a/xen/common/domain.c
>> +++ b/xen/common/domain.c
>> @@ -671,6 +671,8 @@ struct domain *domain_create(domid_t domid,
>>
>>        if ( !is_idle_domain(d) )
>>        {
>> +        ASSERT(config);
>> +
>>            watchdog_domain_init(d);
>>            init_status |= INIT_watchdog;
> 
> Just to mention it: Even if right now it turned out to help, it wouldn't
> once release builds are also checked.

Indeed. I thought about it when writing the e-mail yesterday. I have the 
feeling that we are not getting many similar report today thanks to the 
various ASSERT().

This may mean that the ASSERT() will have to be kept during static 
analysis or we deviate/add proper error checking.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Oct 17 13:32:48 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 17 Oct 2023 13:32:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618254.961672 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qskBj-00047S-7G; Tue, 17 Oct 2023 13:32:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618254.961672; Tue, 17 Oct 2023 13:32: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 1qskBj-00047L-43; Tue, 17 Oct 2023 13:32:47 +0000
Received: by outflank-mailman (input) for mailman id 618254;
 Tue, 17 Oct 2023 13:32: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=gfqK=F7=redhat.com=mlureau@srs-se1.protection.inumbo.net>)
 id 1qskBi-00047F-9s
 for xen-devel@lists.xenproject.org; Tue, 17 Oct 2023 13:32: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 a70e5c73-6cf1-11ee-98d4-6d05b1d4d9a1;
 Tue, 17 Oct 2023 15:32:45 +0200 (CEST)
Received: from mail-ed1-f69.google.com (mail-ed1-f69.google.com
 [209.85.208.69]) by relay.mimecast.com with ESMTP with STARTTLS
 (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id
 us-mta-381-RHL_i7VzN0CUv61rlMe4dg-1; Tue, 17 Oct 2023 09:32:40 -0400
Received: by mail-ed1-f69.google.com with SMTP id
 4fb4d7f45d1cf-53e26bbbc63so3830168a12.3
 for <xen-devel@lists.xenproject.org>; Tue, 17 Oct 2023 06:32: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: a70e5c73-6cf1-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
	s=mimecast20190719; t=1697549563;
	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=RnAjHPCtvpada5g6xexifMtMc7c621wwFdrDkXtr44M=;
	b=U8weylUtiZ9rS+DGDPEtLnPtkZijUso5DRLYICyRTbMXhvojJoOOs5LDcyT07JJW2LHhbs
	BA99qbe6Ybu0VIxE83A4yphRyUgFyYSGRbimRqWtSi++xlUs7e7CdDuoaMu96GlfjnyH/5
	DS7dIKvbsNnsMrVVx0eAXu9wiS4urHk=
X-MC-Unique: RHL_i7VzN0CUv61rlMe4dg-1
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697549559; x=1698154359;
        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=RnAjHPCtvpada5g6xexifMtMc7c621wwFdrDkXtr44M=;
        b=C/tdhVTcPvw+05O0asFqQPSN/X6Rs/sAQS59wdHYF/Tyo4c/ry/ZIl+p6RTObc0zMf
         YqRy++YWtSFVXLoLwIiIep1ybNYOd0xuCdAtexkIlkLgMIQuamLy00BMQ4uW096LUhxt
         5ZmzxUnJI5kd1Cyru4XMIPa8JQgo20drrEmjtJj43tLODUcbVurcqlvq7/vT7hy0AjKP
         F8L44Qw2zU1KsJ485Awznn9K5Wyvw92Cw+AqCQu1nrxFvBShTd6aAvVFKBP99lJZgtnx
         0U8xtXaRInJUtqRUCpILRpWGu7tlBEBgl608J9RdLD5jWi8XYuqpvnj9EbR74KGpZs07
         RtDA==
X-Gm-Message-State: AOJu0YxcFa76lpr/2Dm3Dm6ickDtcya2TNgsAp4x8xdQM9bzd16hSSGH
	GgV5LVKKdLKXygaHAKuCQwXmdUYsqu47yTJR1px5Btm1IBF76wa1tbuN+46lLFB0pBuQUf1+Zcl
	BoxW01ygYHgBzObnAKqhEoXwfabX8C17RBhvmJzLVYao=
X-Received: by 2002:a50:d59d:0:b0:53f:25c4:357b with SMTP id v29-20020a50d59d000000b0053f25c4357bmr916178edi.4.1697549559262;
        Tue, 17 Oct 2023 06:32:39 -0700 (PDT)
X-Google-Smtp-Source: AGHT+IE76Oi8to2BgfUxjSB0lsc/TQQ702YBKQHGt8xXJ9CSzy3oS07a/kmDA26uONAYXladps8VAlENH4TI4rm7F+4=
X-Received: by 2002:a50:d59d:0:b0:53f:25c4:357b with SMTP id
 v29-20020a50d59d000000b0053f25c4357bmr916157edi.4.1697549558880; Tue, 17 Oct
 2023 06:32:38 -0700 (PDT)
MIME-Version: 1.0
References: <20231017131251.43708-1-philmd@linaro.org>
In-Reply-To: <20231017131251.43708-1-philmd@linaro.org>
From: =?UTF-8?B?TWFyYy1BbmRyw6kgTHVyZWF1?= <marcandre.lureau@redhat.com>
Date: Tue, 17 Oct 2023 17:32:27 +0400
Message-ID: <CAMxuvazWSrZHMDqbJZ36CX1WsoWvZh+C0UeGrw=PvME5LUHtpQ@mail.gmail.com>
Subject: Re: [PATCH] ui/input: Constify QemuInputHandler structure
To: =?UTF-8?Q?Philippe_Mathieu=2DDaud=C3=A9?= <philmd@linaro.org>
Cc: qemu-devel@nongnu.org, "Michael S. Tsirkin" <mst@redhat.com>, xen-devel@lists.xenproject.org, 
	Stefano Stabellini <sstabellini@kernel.org>, qemu-ppc@nongnu.org, Paul Durrant <paul@xen.org>, 
	Paolo Bonzini <pbonzini@redhat.com>, Song Gao <gaosong@loongson.cn>, 
	Gerd Hoffmann <kraxel@redhat.com>, Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>, 
	Anthony Perard <anthony.perard@citrix.com>
X-Mimecast-Spam-Score: 0
X-Mimecast-Originator: redhat.com
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Tue, Oct 17, 2023 at 5:13=E2=80=AFPM Philippe Mathieu-Daud=C3=A9
<philmd@linaro.org> wrote:
>
> Access to QemuInputHandlerState::handler are read-only.
>
> Signed-off-by: Philippe Mathieu-Daud=C3=A9 <philmd@linaro.org>

Reviewed-by: Marc-Andr=C3=A9 Lureau <marcandre.lureau@redhat.com>

> ---
>  include/hw/virtio/virtio-input.h | 2 +-
>  include/ui/input.h               | 2 +-
>  chardev/msmouse.c                | 2 +-
>  chardev/wctablet.c               | 2 +-
>  hw/char/escc.c                   | 2 +-
>  hw/display/xenfb.c               | 6 +++---
>  hw/input/adb-kbd.c               | 2 +-
>  hw/input/hid.c                   | 6 +++---
>  hw/input/ps2.c                   | 4 ++--
>  hw/input/virtio-input-hid.c      | 8 ++++----
>  ui/input-legacy.c                | 2 +-
>  ui/input.c                       | 4 ++--
>  ui/vdagent.c                     | 2 +-
>  13 files changed, 22 insertions(+), 22 deletions(-)
>
> diff --git a/include/hw/virtio/virtio-input.h b/include/hw/virtio/virtio-=
input.h
> index 08f1591424..a6c9703644 100644
> --- a/include/hw/virtio/virtio-input.h
> +++ b/include/hw/virtio/virtio-input.h
> @@ -84,7 +84,7 @@ struct VirtIOInputHID {
>      VirtIOInput                       parent_obj;
>      char                              *display;
>      uint32_t                          head;
> -    QemuInputHandler                  *handler;
> +    const QemuInputHandler            *handler;
>      QemuInputHandlerState             *hs;
>      int                               ledstate;
>      bool                              wheel_axis;
> diff --git a/include/ui/input.h b/include/ui/input.h
> index 24d8e4579e..8f9aac562e 100644
> --- a/include/ui/input.h
> +++ b/include/ui/input.h
> @@ -30,7 +30,7 @@ struct QemuInputHandler {
>  };
>
>  QemuInputHandlerState *qemu_input_handler_register(DeviceState *dev,
> -                                                   QemuInputHandler *han=
dler);
> +                                            const QemuInputHandler *hand=
ler);
>  void qemu_input_handler_activate(QemuInputHandlerState *s);
>  void qemu_input_handler_deactivate(QemuInputHandlerState *s);
>  void qemu_input_handler_unregister(QemuInputHandlerState *s);
> diff --git a/chardev/msmouse.c b/chardev/msmouse.c
> index ab8fe981d6..a774c397b4 100644
> --- a/chardev/msmouse.c
> +++ b/chardev/msmouse.c
> @@ -171,7 +171,7 @@ static int msmouse_chr_write(struct Chardev *s, const=
 uint8_t *buf, int len)
>      return len;
>  }
>
> -static QemuInputHandler msmouse_handler =3D {
> +static const QemuInputHandler msmouse_handler =3D {
>      .name  =3D "QEMU Microsoft Mouse",
>      .mask  =3D INPUT_EVENT_MASK_BTN | INPUT_EVENT_MASK_REL,
>      .event =3D msmouse_input_event,
> diff --git a/chardev/wctablet.c b/chardev/wctablet.c
> index 43bdf6b608..f4008bf35b 100644
> --- a/chardev/wctablet.c
> +++ b/chardev/wctablet.c
> @@ -178,7 +178,7 @@ static void wctablet_input_sync(DeviceState *dev)
>      }
>  }
>
> -static QemuInputHandler wctablet_handler =3D {
> +static const QemuInputHandler wctablet_handler =3D {
>      .name  =3D "QEMU Wacom Pen Tablet",
>      .mask  =3D INPUT_EVENT_MASK_BTN | INPUT_EVENT_MASK_ABS,
>      .event =3D wctablet_input_event,
> diff --git a/hw/char/escc.c b/hw/char/escc.c
> index 4be66053c1..48b30ee760 100644
> --- a/hw/char/escc.c
> +++ b/hw/char/escc.c
> @@ -845,7 +845,7 @@ static void sunkbd_handle_event(DeviceState *dev, Qem=
uConsole *src,
>      put_queue(s, keycode);
>  }
>
> -static QemuInputHandler sunkbd_handler =3D {
> +static const QemuInputHandler sunkbd_handler =3D {
>      .name  =3D "sun keyboard",
>      .mask  =3D INPUT_EVENT_MASK_KEY,
>      .event =3D sunkbd_handle_event,
> diff --git a/hw/display/xenfb.c b/hw/display/xenfb.c
> index 0074a9b6f8..b2130a0d70 100644
> --- a/hw/display/xenfb.c
> +++ b/hw/display/xenfb.c
> @@ -321,20 +321,20 @@ static void xenfb_mouse_sync(DeviceState *dev)
>      xenfb->wheel =3D 0;
>  }
>
> -static QemuInputHandler xenfb_keyboard =3D {
> +static const QemuInputHandler xenfb_keyboard =3D {
>      .name  =3D "Xen PV Keyboard",
>      .mask  =3D INPUT_EVENT_MASK_KEY,
>      .event =3D xenfb_key_event,
>  };
>
> -static QemuInputHandler xenfb_abs_mouse =3D {
> +static const QemuInputHandler xenfb_abs_mouse =3D {
>      .name  =3D "Xen PV Mouse",
>      .mask  =3D INPUT_EVENT_MASK_BTN | INPUT_EVENT_MASK_ABS,
>      .event =3D xenfb_mouse_event,
>      .sync  =3D xenfb_mouse_sync,
>  };
>
> -static QemuInputHandler xenfb_rel_mouse =3D {
> +static const QemuInputHandler xenfb_rel_mouse =3D {
>      .name  =3D "Xen PV Mouse",
>      .mask  =3D INPUT_EVENT_MASK_BTN | INPUT_EVENT_MASK_REL,
>      .event =3D xenfb_mouse_event,
> diff --git a/hw/input/adb-kbd.c b/hw/input/adb-kbd.c
> index a9088c910c..e21edf9acd 100644
> --- a/hw/input/adb-kbd.c
> +++ b/hw/input/adb-kbd.c
> @@ -355,7 +355,7 @@ static void adb_kbd_reset(DeviceState *dev)
>      s->count =3D 0;
>  }
>
> -static QemuInputHandler adb_keyboard_handler =3D {
> +static const QemuInputHandler adb_keyboard_handler =3D {
>      .name  =3D "QEMU ADB Keyboard",
>      .mask  =3D INPUT_EVENT_MASK_KEY,
>      .event =3D adb_keyboard_event,
> diff --git a/hw/input/hid.c b/hw/input/hid.c
> index a9c7dd1ce1..b8e85374ca 100644
> --- a/hw/input/hid.c
> +++ b/hw/input/hid.c
> @@ -510,20 +510,20 @@ void hid_free(HIDState *hs)
>      hid_del_idle_timer(hs);
>  }
>
> -static QemuInputHandler hid_keyboard_handler =3D {
> +static const QemuInputHandler hid_keyboard_handler =3D {
>      .name  =3D "QEMU HID Keyboard",
>      .mask  =3D INPUT_EVENT_MASK_KEY,
>      .event =3D hid_keyboard_event,
>  };
>
> -static QemuInputHandler hid_mouse_handler =3D {
> +static const QemuInputHandler hid_mouse_handler =3D {
>      .name  =3D "QEMU HID Mouse",
>      .mask  =3D INPUT_EVENT_MASK_BTN | INPUT_EVENT_MASK_REL,
>      .event =3D hid_pointer_event,
>      .sync  =3D hid_pointer_sync,
>  };
>
> -static QemuInputHandler hid_tablet_handler =3D {
> +static const QemuInputHandler hid_tablet_handler =3D {
>      .name  =3D "QEMU HID Tablet",
>      .mask  =3D INPUT_EVENT_MASK_BTN | INPUT_EVENT_MASK_ABS,
>      .event =3D hid_pointer_event,
> diff --git a/hw/input/ps2.c b/hw/input/ps2.c
> index 45af76a837..c8fd23cf36 100644
> --- a/hw/input/ps2.c
> +++ b/hw/input/ps2.c
> @@ -1231,7 +1231,7 @@ static const VMStateDescription vmstate_ps2_mouse =
=3D {
>      }
>  };
>
> -static QemuInputHandler ps2_keyboard_handler =3D {
> +static const QemuInputHandler ps2_keyboard_handler =3D {
>      .name  =3D "QEMU PS/2 Keyboard",
>      .mask  =3D INPUT_EVENT_MASK_KEY,
>      .event =3D ps2_keyboard_event,
> @@ -1242,7 +1242,7 @@ static void ps2_kbd_realize(DeviceState *dev, Error=
 **errp)
>      qemu_input_handler_register(dev, &ps2_keyboard_handler);
>  }
>
> -static QemuInputHandler ps2_mouse_handler =3D {
> +static const QemuInputHandler ps2_mouse_handler =3D {
>      .name  =3D "QEMU PS/2 Mouse",
>      .mask  =3D INPUT_EVENT_MASK_BTN | INPUT_EVENT_MASK_REL,
>      .event =3D ps2_mouse_event,
> diff --git a/hw/input/virtio-input-hid.c b/hw/input/virtio-input-hid.c
> index 7053ad72d4..45e4d4c75d 100644
> --- a/hw/input/virtio-input-hid.c
> +++ b/hw/input/virtio-input-hid.c
> @@ -265,7 +265,7 @@ static const TypeInfo virtio_input_hid_info =3D {
>
>  /* ----------------------------------------------------------------- */
>
> -static QemuInputHandler virtio_keyboard_handler =3D {
> +static const QemuInputHandler virtio_keyboard_handler =3D {
>      .name  =3D VIRTIO_ID_NAME_KEYBOARD,
>      .mask  =3D INPUT_EVENT_MASK_KEY,
>      .event =3D virtio_input_handle_event,
> @@ -322,7 +322,7 @@ static const TypeInfo virtio_keyboard_info =3D {
>
>  /* ----------------------------------------------------------------- */
>
> -static QemuInputHandler virtio_mouse_handler =3D {
> +static const QemuInputHandler virtio_mouse_handler =3D {
>      .name  =3D VIRTIO_ID_NAME_MOUSE,
>      .mask  =3D INPUT_EVENT_MASK_BTN | INPUT_EVENT_MASK_REL,
>      .event =3D virtio_input_handle_event,
> @@ -416,7 +416,7 @@ static const TypeInfo virtio_mouse_info =3D {
>
>  /* ----------------------------------------------------------------- */
>
> -static QemuInputHandler virtio_tablet_handler =3D {
> +static const QemuInputHandler virtio_tablet_handler =3D {
>      .name  =3D VIRTIO_ID_NAME_TABLET,
>      .mask  =3D INPUT_EVENT_MASK_BTN | INPUT_EVENT_MASK_ABS,
>      .event =3D virtio_input_handle_event,
> @@ -541,7 +541,7 @@ static const TypeInfo virtio_tablet_info =3D {
>
>  /* ----------------------------------------------------------------- */
>
> -static QemuInputHandler virtio_multitouch_handler =3D {
> +static const QemuInputHandler virtio_multitouch_handler =3D {
>      .name  =3D VIRTIO_ID_NAME_MULTITOUCH,
>      .mask  =3D INPUT_EVENT_MASK_BTN | INPUT_EVENT_MASK_MTT,
>      .event =3D virtio_input_handle_event,
> diff --git a/ui/input-legacy.c b/ui/input-legacy.c
> index 46ea74e44d..210ae5eaca 100644
> --- a/ui/input-legacy.c
> +++ b/ui/input-legacy.c
> @@ -127,7 +127,7 @@ static void legacy_kbd_event(DeviceState *dev, QemuCo=
nsole *src,
>      }
>  }
>
> -static QemuInputHandler legacy_kbd_handler =3D {
> +static const QemuInputHandler legacy_kbd_handler =3D {
>      .name  =3D "legacy-kbd",
>      .mask  =3D INPUT_EVENT_MASK_KEY,
>      .event =3D legacy_kbd_event,
> diff --git a/ui/input.c b/ui/input.c
> index cbe8573c5c..dc745860f4 100644
> --- a/ui/input.c
> +++ b/ui/input.c
> @@ -10,7 +10,7 @@
>
>  struct QemuInputHandlerState {
>      DeviceState       *dev;
> -    QemuInputHandler  *handler;
> +    const QemuInputHandler *handler;
>      int               id;
>      int               events;
>      QemuConsole       *con;
> @@ -46,7 +46,7 @@ static uint32_t queue_count;
>  static uint32_t queue_limit =3D 1024;
>
>  QemuInputHandlerState *qemu_input_handler_register(DeviceState *dev,
> -                                                   QemuInputHandler *han=
dler)
> +                                            const QemuInputHandler *hand=
ler)
>  {
>      QemuInputHandlerState *s =3D g_new0(QemuInputHandlerState, 1);
>      static int id =3D 1;
> diff --git a/ui/vdagent.c b/ui/vdagent.c
> index 00d36a8677..706d6d97bd 100644
> --- a/ui/vdagent.c
> +++ b/ui/vdagent.c
> @@ -297,7 +297,7 @@ static void vdagent_pointer_sync(DeviceState *dev)
>      }
>  }
>
> -static QemuInputHandler vdagent_mouse_handler =3D {
> +static const QemuInputHandler vdagent_mouse_handler =3D {
>      .name  =3D "vdagent mouse",
>      .mask  =3D INPUT_EVENT_MASK_BTN | INPUT_EVENT_MASK_ABS,
>      .event =3D vdagent_pointer_event,
> --
> 2.41.0
>



From xen-devel-bounces@lists.xenproject.org Tue Oct 17 14:02:38 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 17 Oct 2023 14:02:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618257.961682 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qskeP-0001hJ-I4; Tue, 17 Oct 2023 14:02:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618257.961682; Tue, 17 Oct 2023 14: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 1qskeP-0001hC-Ev; Tue, 17 Oct 2023 14:02:25 +0000
Received: by outflank-mailman (input) for mailman id 618257;
 Tue, 17 Oct 2023 14:02: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=wy8C=F7=bugseng.com=federico.serafini@srs-se1.protection.inumbo.net>)
 id 1qskeO-0001h6-NF
 for xen-devel@lists.xenproject.org; Tue, 17 Oct 2023 14:02:24 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id cadab038-6cf5-11ee-9b0e-b553b5be7939;
 Tue, 17 Oct 2023 16:02:22 +0200 (CEST)
Received: from [157.138.166.97] (unknown [157.138.166.97])
 by support.bugseng.com (Postfix) with ESMTPSA id 871E04EE0738;
 Tue, 17 Oct 2023 16:02: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: cadab038-6cf5-11ee-9b0e-b553b5be7939
Message-ID: <49c60949-f654-4ea8-b04f-756d38f22ce4@bugseng.com>
Date: Tue, 17 Oct 2023 16:02:20 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN PATCH 01/10] arm/gic: address violations of MISRA C:2012
 Rule 8.2
To: Julien Grall <julien@xen.org>, xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com, Stefano Stabellini <sstabellini@kernel.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Henry Wang <henry.wang@arm.com>
References: <cover.1697207038.git.federico.serafini@bugseng.com>
 <e55bfe55e0c34e96692f397ff69365bc0819fd90.1697207038.git.federico.serafini@bugseng.com>
 <d2a58398-e381-4b0d-b5cc-ab1ed7f6c7fb@xen.org>
Content-Language: en-US, it
From: Federico Serafini <federico.serafini@bugseng.com>
Organization: BUGSENG srl
In-Reply-To: <d2a58398-e381-4b0d-b5cc-ab1ed7f6c7fb@xen.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

On 16/10/23 10:53, Julien Grall wrote:
> Hi,
> 
> On 13/10/2023 16:24, Federico Serafini wrote:
>> Add missing parameter names, no functional change.
>>
>> Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
>> ---
>>   xen/arch/arm/include/asm/gic.h | 12 ++++++------
>>   1 file changed, 6 insertions(+), 6 deletions(-)
>>
>> diff --git a/xen/arch/arm/include/asm/gic.h 
>> b/xen/arch/arm/include/asm/gic.h
>> index f1ef347edc..03f209529b 100644
>> --- a/xen/arch/arm/include/asm/gic.h
>> +++ b/xen/arch/arm/include/asm/gic.h
>> @@ -246,7 +246,7 @@ void gic_set_irq_type(struct irq_desc *desc, 
>> unsigned int type);
>>   /* Program the GIC to route an interrupt */
>>   extern void gic_route_irq_to_xen(struct irq_desc *desc, unsigned int 
>> priority);
>> -extern int gic_route_irq_to_guest(struct domain *, unsigned int virq,
>> +extern int gic_route_irq_to_guest(struct domain *d, unsigned int virq,
>>                                     struct irq_desc *desc,
>>                                     unsigned int priority);
>> @@ -330,11 +330,11 @@ struct gic_hw_operations {
>>       /* Initialize the GIC and the boot CPU */
>>       int (*init)(void);
>>       /* Save GIC registers */
>> -    void (*save_state)(struct vcpu *);
>> +    void (*save_state)(struct vcpu *v);
>>       /* Restore GIC registers */
>> -    void (*restore_state)(const struct vcpu *);
>> +    void (*restore_state)(const struct vcpu *v);
>>       /* Dump GIC LR register information */
>> -    void (*dump_state)(const struct vcpu *);
>> +    void (*dump_state)(const struct vcpu *v);
>>       /* hw_irq_controller to enable/disable/eoi host irq */
>>       hw_irq_controller *gic_host_irq_type;
>> @@ -369,9 +369,9 @@ struct gic_hw_operations {
>>       /* Clear LR register */
>>       void (*clear_lr)(int lr);
>>       /* Read LR register and populate gic_lr structure */
>> -    void (*read_lr)(int lr, struct gic_lr *);
>> +    void (*read_lr)(int lr, struct gic_lr *lr_reg);
>>       /* Write LR register from gic_lr structure */
>> -    void (*write_lr)(int lr, const struct gic_lr *);
>> +    void (*write_lr)(int lr, const struct gic_lr *lr_reg);
> 
> Are the parameters name meant to match the declaration of the callbacks?
> I am asking it because I see there are some inconsistencies between the 
> declaration in GICv3 and GICv2. So this may want to be harmonized.
> 
> Cheers,
> 

I can propose another patch that also changes parameter names
of gicv3_write_lr() as well as adding the missing ones in gic.h.

-- 
Federico Serafini, M.Sc.

Software Engineer, BUGSENG (http://bugseng.com)


From xen-devel-bounces@lists.xenproject.org Tue Oct 17 14:07:59 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 17 Oct 2023 14:07:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618261.961692 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qskjh-00032g-5i; Tue, 17 Oct 2023 14:07:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618261.961692; Tue, 17 Oct 2023 14:07: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 1qskjh-00032Z-2Z; Tue, 17 Oct 2023 14:07:53 +0000
Received: by outflank-mailman (input) for mailman id 618261;
 Tue, 17 Oct 2023 14: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=+ZPX=F7=amd.com=Michal.Orzel@srs-se1.protection.inumbo.net>)
 id 1qskjf-00032R-57
 for xen-devel@lists.xenproject.org; Tue, 17 Oct 2023 14:07:51 +0000
Received: from NAM10-MW2-obe.outbound.protection.outlook.com
 (mail-mw2nam10on20624.outbound.protection.outlook.com
 [2a01:111:f400:7e89::624])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 8cf8aa43-6cf6-11ee-98d4-6d05b1d4d9a1;
 Tue, 17 Oct 2023 16:07:49 +0200 (CEST)
Received: from CY8PR12CA0029.namprd12.prod.outlook.com (2603:10b6:930:49::17)
 by BY5PR12MB4193.namprd12.prod.outlook.com (2603:10b6:a03:20c::19)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.38; Tue, 17 Oct
 2023 14:07:44 +0000
Received: from CY4PEPF0000EE35.namprd05.prod.outlook.com
 (2603:10b6:930:49:cafe::cd) by CY8PR12CA0029.outlook.office365.com
 (2603:10b6:930:49::17) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.36 via Frontend
 Transport; Tue, 17 Oct 2023 14:07:44 +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.6838.22 via Frontend Transport; Tue, 17 Oct 2023 14:07:43 +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, 17 Oct
 2023 09:07: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; Tue, 17 Oct
 2023 07:07:19 -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, 17 Oct 2023 09:07: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: 8cf8aa43-6cf6-11ee-98d4-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=mHOCBYOaiBMK7I4WUzs8ikMvNpj2WLC5g8oBW5kQXCHhcltP8PXJLGlI8ffWdh3dvcZuypklO6ovIxLo6XKnwGFtQsugXhPbTtC+4VCNtOwKyfcdDM/9kIzZ/SYH+8KToOBcEtkfPqDq7nvbtLODYXi0eLHfWVgZbpUJksj6WRdA81GKwmzhst03PyZSjEUIgDu6v5SuRvT/Wa/v0F9w8CaMBE9mG9O8SmK2h1CyJYlEdb3OrP3qQ2y8o2RtZddsdm6iBO9ZNDQV/4CoEEgQy4daOb7EqEtxuf5iZdhsyRMer4hmusoclRcupgSDhPCB1QmN03+Ry+KKhHgOF0fFbw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=SsKVDvh2ecqYCHCl3DPVr8ayxOXgqnPZCxpgmjm0d/0=;
 b=AP0tdLGuo/CBJt0APlFpaYT4hK8+DDy+H9A2q1x6ZcDdJJeRlqdKLEIXYe/9YP2t3dyiVE50Aaqu4bira5KY2YqrfrMkkI5zvPiYzSKVRS1MA5ir+kaAS5Y7lCw9qTfLMjNkHyPEW+pO/EzpSwxQnhI8hT3qVEup0ldkZqwLThLO5bwx6WRSr39zPhB5+0UIASh4uvMDsk96UBBSeY5sEBpsrX+XlcYrzQ1h7xp4Wog+4ki9tWJd1VR/+BxGbiyhGR1vpbPSENrsTuHmQK37zGSPFGkteN1gM0sGWMs6d+BYPLFAKTVz/DvSiHFt7jS3AZI+j8NwLKy4ib6gLkGWTw==
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=SsKVDvh2ecqYCHCl3DPVr8ayxOXgqnPZCxpgmjm0d/0=;
 b=3vxC/IF8eYIdwkZsMJOzXxeLzDtOPDrYsD/9YeV55Q57yf3slVtShR7is0aO/nFapA808d78qrjtDvecRjEJq5LzSVeGsvSxLL3UaYQY604WeV4eqBwkVx0URcNjOzF0BMltm6L2rMzYbcn/o8dOmng+XfLHhqQZeZwoXHQRd1k=
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: <9487bcbc-fedd-4d0e-86a4-023480bc9c54@amd.com>
Date: Tue, 17 Oct 2023 16:07:17 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [for-4.19] xen/arm64: head: only use the macro load_paddr() in
 the MMU code
Content-Language: en-US
To: Julien Grall <julien@xen.org>, <xen-devel@lists.xenproject.org>
CC: <ayan.kumar.halder@amd.com>, Stefano Stabellini <sstabellini@kernel.org>,
	Bertrand Marquis <bertrand.marquis@arm.com>, Volodymyr Babchuk
	<Volodymyr_Babchuk@epam.com>
References: <20231017125219.76626-1-julien@xen.org>
From: Michal Orzel <michal.orzel@amd.com>
In-Reply-To: <20231017125219.76626-1-julien@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 7bit
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: CY4PEPF0000EE35:EE_|BY5PR12MB4193:EE_
X-MS-Office365-Filtering-Correlation-Id: 0a1d58d1-98b5-4674-34cb-08dbcf1a6ecf
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	w1X5sUnB2mPMV7LkB6zAgv+3N3Ce1y5aHBEYVNkf3yCFVofQWZK9jiIF54ULWahIcSi4n0WP99zobkMX3X/+B8NwHxZSr+6U/APvJ7YbtvgP0+98F3jFHjYe764JlA54VZh37Hok+hpyVIWjp98Uwz8JOBm8fTmkVNgttA5CoWywy36bBi9GEm40HSuFciA6VUfsLuTEnB4jAMSDeotTYYafjMRwn4V4RFqYqLij2qA1XMtTpO0uzinJUdEOyRBlyynY1Sua8plJbNwYNoUDncWTHQqQj6h4azDt3KMvrcE8c9zyjt7hhbrHOxCxrzAT+3K3W25C9bcrLK4bz8eE2UtKjifZSlsG6vBrO7/6z7avc3oyCUBlcENUBsXaXs3UCmKQx8rDhqX6UHuOUv63mbdXMNSCw5CI16ZZ4oDFHiD2vKqoASoTIK4p992GH+kD5aMtV16W4cHaCzgB49ntFVFb/70Alnni36DtHl3xziailfxAQZcGAEXlxMPr0DbU/VyJyEK/V6Cp8aAu948lKEAcGnGLiflx4JicuZNkgc6OLS+HlfLgimcQaAsLyG7zt8gofz4vw8cjVbXc0s1P4sR6LnLrh0onug0dmp8c/9MoQyhKS7/UxaqVKwBMye47mfeHt0LxfvyP2YH/AWARTzQsIzUZyurK+at8Eme4WWcr7P6eJvh40V9KjwJL3n8ayFjjsuck26odKACzSACBFG1A76m+GPusF00ITUGX+MCvrYjHmUyqygm1ccWbI6byb/0xUZ9hEtVyHxcmwvj6UFgbowWnbQ3MiOWtAbhtZF8=
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)(39860400002)(346002)(376002)(230922051799003)(186009)(451199024)(82310400011)(64100799003)(1800799009)(46966006)(36840700001)(40470700004)(31686004)(426003)(2616005)(26005)(336012)(53546011)(5660300002)(41300700001)(16576012)(8936002)(8676002)(316002)(2906002)(4326008)(478600001)(110136005)(36756003)(70206006)(54906003)(70586007)(44832011)(40460700003)(40480700001)(82740400003)(31696002)(86362001)(356005)(81166007)(47076005)(36860700001)(43740500002)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Oct 2023 14:07:43.7135
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 0a1d58d1-98b5-4674-34cb-08dbcf1a6ecf
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: BY5PR12MB4193

Hi Julien,

On 17/10/2023 14:52, Julien Grall wrote:
> 
> 
> The macro load_paddr() requires to know the offset between the
> physical location of Xen and the virtual location.
> 
> When using the MPU, x20 will always be 0. Rather than wasting
> a register for a compile-time constant value, it would be best if
> we can avoid using load_paddr() altogher in the common head.S code.
s/altogher/altogether/

> 
> The current use of load_paddr() are equivalent to adr_l() because
> the MMU is off.
> 
> All the use of load_paddr() in arm64/head.S are now replaced with
> adr_l(). With that, load_paddr() can now be moved in arm64/mmu/head.S.
> 
> For now, x20 is still unconditionally set. But this could change
> in the future if needed.
> 
> Signed-off-by: Julien Grall <julien@xen.org>
Reviewed-by: Michal Orzel <michal.orzel@amd.com>

Side note:
Looking at all the uses of load_paddr(), none of them takes place after enabling MMU
which would indicate that we actually don't need this macro at all. Do you agree?

~Michal
 


From xen-devel-bounces@lists.xenproject.org Tue Oct 17 14:34:55 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 17 Oct 2023 14:34:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618266.961702 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsl9k-0000Ix-DF; Tue, 17 Oct 2023 14:34:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618266.961702; Tue, 17 Oct 2023 14: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 1qsl9k-0000Ip-Ae; Tue, 17 Oct 2023 14:34:48 +0000
Received: by outflank-mailman (input) for mailman id 618266;
 Tue, 17 Oct 2023 14:34: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 1qsl9k-0000If-1r; Tue, 17 Oct 2023 14:34: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 1qsl9j-0006kb-VP; Tue, 17 Oct 2023 14:34: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 1qsl9j-0000kO-Du; Tue, 17 Oct 2023 14:34:47 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qsl9j-0003n5-B1; Tue, 17 Oct 2023 14:34: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=hhF3hk/idvRhtalxWXS5jWrKSk1foVRaf9q87wuhKaA=; b=o2O5vt3Z7kcP0zdzUM4PMelZRA
	qs9Fgao/gmxMhqYRTOPsTaSR/EoFLW8N1fM9kr3CJwltUOZGJgmLrpfOqNfoJAeiWsgPyCc9aSJ+A
	f653iN1wa3kWLKsw3gDjTPmAjMna35FsCEfQRE5wsnFUaUgTyXVlQsBF5hVECkyyqaDk=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183393-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 183393: tolerable FAIL - PUSHED
X-Osstest-Failures:
    linux-linus:test-amd64-amd64-libvirt-pair:guests-nbd-mirror/debian:fail:heisenbug
    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-armhf-armhf-libvirt: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-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-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: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-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu: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-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-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-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-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd: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-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=213f891525c222e8ed145ce1ce7ae1f47921cb9c
X-Osstest-Versions-That:
    linux=58720809f52779dc0f08e53e54b014209d13eebb
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 17 Oct 2023 14:34:47 +0000

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

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-amd64-amd64-libvirt-pair 22 guests-nbd-mirror/debian fail pass in 183401-retest

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183380
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183380
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183380
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183380
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183380
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183380
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183380
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183380
 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-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-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          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-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-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-qcow2 14 migrate-support-check        fail never pass
 test-amd64-amd64-libvirt-raw 14 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-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-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-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                213f891525c222e8ed145ce1ce7ae1f47921cb9c
baseline version:
 linux                58720809f52779dc0f08e53e54b014209d13eebb

Last test of basis   183380  2023-10-16 02:44:29 Z    1 days
Testing same since   183393  2023-10-17 02:12:22 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Anshuman Khandual <anshuman.khandual@arm.com>
  Claudio Imbrenda <imbrenda@linux.ibm.com>
  Dapeng Mi <dapeng1.mi@linux.intel.com>
  Dave Hansen <dave.hansen@linux.intel.com>
  Florent Revest <revest@chromium.org>
  Ganapatrao Kulkarni <gankulkarni@os.amperecomputing.com>
  Jim Mattson <jmattson@google.com>
  Joey Gouly <joey.gouly@arm.com>
  Like Xu <likexu@tencent.com>
  Linus Torvalds <torvalds@linux-foundation.org>
  Marc Zyngier <maz@kernel.org>
  Masami Hiramatsu (Google) <mhiramat@kernel.org>
  Maxim Levitsky <mlevitsk@redhat.com>
  Michael Mueller <mimu@linux.ibm.com>
  Mingwei Zhang <mizhang@google.com>
  Paolo Bonzini <pbonzini@redhat.com>
  Roman Kagan <rkagan@amazon.de>
  Sean Christopherson <seanjc@google.com>
  Suravee Suthikulpanit <suravee.suthikulpanit@amd.com>
  Tom Lendacky <thomas.lendacky@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                                fail    
 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
   58720809f527..213f891525c2  213f891525c222e8ed145ce1ce7ae1f47921cb9c -> tested/linux-linus


From xen-devel-bounces@lists.xenproject.org Tue Oct 17 14:39:58 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 17 Oct 2023 14:39:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618273.961712 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qslEf-0001F7-W1; Tue, 17 Oct 2023 14:39:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618273.961712; Tue, 17 Oct 2023 14:39: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 1qslEf-0001F0-TJ; Tue, 17 Oct 2023 14:39:53 +0000
Received: by outflank-mailman (input) for mailman id 618273;
 Tue, 17 Oct 2023 14:39: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 1qslEe-0001Eu-HN
 for xen-devel@lists.xenproject.org; Tue, 17 Oct 2023 14:39: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 1qslEe-0006qe-2i; Tue, 17 Oct 2023 14:39:52 +0000
Received: from [15.248.3.1] (helo=[10.24.67.33])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qslEd-0001bv-TM; Tue, 17 Oct 2023 14:39: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=3KYdbEah9xs0ADhmXaQxWb5VLopC25MlsZ4oe05NPUU=; b=cVGeJtN9oeNAc+LG+kviqrIyWu
	fmn4nepKwq1Ksf0hiDMjlk9srVU0QeY/ExJNh5kKxBWA/DW3DRkOe0dD3EWF8fAbeMViaCQeIugsQ
	GtBLCMoQKvcg51Ldco30nexRcDD9dOyKfoRn3VzQcQTogLzZYywtrimeTZiz1IS8RuMs=;
Message-ID: <2b10267a-514c-4c9b-b715-f65c26d7f757@xen.org>
Date: Tue, 17 Oct 2023 15:39:49 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [for-4.19] xen/arm64: head: only use the macro load_paddr() in
 the MMU code
Content-Language: en-GB
To: Michal Orzel <michal.orzel@amd.com>, xen-devel@lists.xenproject.org
Cc: ayan.kumar.halder@amd.com, Stefano Stabellini <sstabellini@kernel.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
References: <20231017125219.76626-1-julien@xen.org>
 <9487bcbc-fedd-4d0e-86a4-023480bc9c54@amd.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <9487bcbc-fedd-4d0e-86a4-023480bc9c54@amd.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi,

On 17/10/2023 15:07, Michal Orzel wrote:
> On 17/10/2023 14:52, Julien Grall wrote:
>>
>>
>> The macro load_paddr() requires to know the offset between the
>> physical location of Xen and the virtual location.
>>
>> When using the MPU, x20 will always be 0. Rather than wasting
>> a register for a compile-time constant value, it would be best if
>> we can avoid using load_paddr() altogher in the common head.S code.
> s/altogher/altogether/

I will fix it.

> 
>>
>> The current use of load_paddr() are equivalent to adr_l() because
>> the MMU is off.
>>
>> All the use of load_paddr() in arm64/head.S are now replaced with
>> adr_l(). With that, load_paddr() can now be moved in arm64/mmu/head.S.
>>
>> For now, x20 is still unconditionally set. But this could change
>> in the future if needed.
>>
>> Signed-off-by: Julien Grall <julien@xen.org>
> Reviewed-by: Michal Orzel <michal.orzel@amd.com>
> 
> Side note:
> Looking at all the uses of load_paddr(), none of them takes place after enabling MMU
> which would indicate that we actually don't need this macro at all. Do you agree?

I agree they are none today called after enabling the MMU. But, 
create_table_entry() used to be called after and I can't rule out this 
will not happen again.

So I don't think we should replace the use in create_table_entry() with 
adr_l. We could consider to open-code code though.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Oct 17 15:00:17 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 17 Oct 2023 15:00:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618279.961722 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qslYH-0006JB-ML; Tue, 17 Oct 2023 15:00:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618279.961722; Tue, 17 Oct 2023 15:00: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 1qslYH-0006J4-HY; Tue, 17 Oct 2023 15:00:09 +0000
Received: by outflank-mailman (input) for mailman id 618279;
 Tue, 17 Oct 2023 15:00: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 1qslYG-0006I9-Db; Tue, 17 Oct 2023 15:00: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 1qslYG-0007HK-AW; Tue, 17 Oct 2023 15:00: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 1qslYF-0002VE-Ow; Tue, 17 Oct 2023 15:00:07 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qslYF-0006ka-OQ; Tue, 17 Oct 2023 15:00: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=hlWwHnFgkXvZC1dXCdgJgYlGjd5OKcrlN6Z5s7q0Bfw=; b=Dew3/wDDdhO4D/vZDHdKO+c/Yq
	Z/o8ml72h7yJT3lykpp3isp+b5mEqvetLe8cLQ3R9LWMovFm5KPBObTsobijRvOdM3abTAF/xqd1J
	ZL84MT+BCavGN38EBctHcrYiplUw5rOObI4OMjGak9a1L1cJnogyfA8Y6uQL6f+Oft5Y=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183395-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [libvirt test] 183395: tolerable all pass - PUSHED
X-Osstest-Failures:
    libvirt:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt: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:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt:saverestore-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-amd64-amd64-libvirt-vhd: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-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    libvirt=0c5f37364ffcbdd58ef34ec35d081843d2e144b4
X-Osstest-Versions-That:
    libvirt=8eb09a2bb984f3550cc87074e57841b86be39601
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 17 Oct 2023 15:00:07 +0000

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

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183351
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183351
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183351
 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     15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt     16 saverestore-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-amd64-amd64-libvirt-vhd 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-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-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     15 migrate-support-check        fail   never pass

version targeted for testing:
 libvirt              0c5f37364ffcbdd58ef34ec35d081843d2e144b4
baseline version:
 libvirt              8eb09a2bb984f3550cc87074e57841b86be39601

Last test of basis   183351  2023-10-12 04:18:45 Z    5 days
Testing same since   183395  2023-10-17 04:20:33 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
   8eb09a2bb9..0c5f37364f  0c5f37364ffcbdd58ef34ec35d081843d2e144b4 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Tue Oct 17 15:09:18 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 17 Oct 2023 15:09:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618285.961732 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qslgy-0007Le-IC; Tue, 17 Oct 2023 15:09:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618285.961732; Tue, 17 Oct 2023 15: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 1qslgy-0007LX-FM; Tue, 17 Oct 2023 15:09:08 +0000
Received: by outflank-mailman (input) for mailman id 618285;
 Tue, 17 Oct 2023 15:09: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=6d0P=F7=cloud.com=alejandro.vallejo@srs-se1.protection.inumbo.net>)
 id 1qslgx-0007LR-JB
 for xen-devel@lists.xenproject.org; Tue, 17 Oct 2023 15:09:07 +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 1d3442dd-6cff-11ee-98d4-6d05b1d4d9a1;
 Tue, 17 Oct 2023 17:09:06 +0200 (CEST)
Received: by mail-ej1-x632.google.com with SMTP id
 a640c23a62f3a-9c41e95efcbso355390666b.3
 for <xen-devel@lists.xenproject.org>; Tue, 17 Oct 2023 08:09:05 -0700 (PDT)
Received: from EMEAENGAAD19049. (default-46-102-197-194.interdsl.co.uk.
 [46.102.197.194]) by smtp.gmail.com with ESMTPSA id
 hx3-20020a170906846300b009b2b47cd757sm1406874ejc.9.2023.10.17.08.09.04
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Tue, 17 Oct 2023 08:09: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: 1d3442dd-6cff-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1697555345; x=1698160145; darn=lists.xenproject.org;
        h=in-reply-to:content-transfer-encoding:content-disposition
         :mime-version:references:subject:cc:to:from:date:message-id:from:to
         :cc:subject:date:message-id:reply-to;
        bh=grXiTKgnvAvhGRo/vc3pmvz20DZyzjE2OS69aWDpo24=;
        b=Fn2N2uKt6FjNj0SZY+wNuywkSC95e5FCGUHgeePnRTisiXK++JGCMWG4pFqudwWdTx
         szWGfauISHGUSs+xlurEXb5fmrvoVg3N6jXtty3BJfD4TV6Cbd8Vn35rM2Vb7nzME1Bp
         ThZkN4NJPtea/KWTl3A6OKEjrpDGJ9DTIZ2Sk=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697555345; x=1698160145;
        h=in-reply-to:content-transfer-encoding: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=grXiTKgnvAvhGRo/vc3pmvz20DZyzjE2OS69aWDpo24=;
        b=K9M2b9X0IlYL6sE0WRoxaqzz9v4l3f6zt6VHgGUQr3cMn4cxjqzLoFBp4mUf2e/N5h
         47QS6vj3r19FmC0BojZwf/cQ13XHGM2fGSOE0RrmYKDmsmc97TLBtZrE3s/sokB8uIMV
         qkYcXizKwq0VsQYecev4Pmwp7tdy+TyfPq9UlwPVLP7n6RSybmXQAbZbirGSBxHWCKb0
         Dp75gw4wKp7OTxVoopgwdi1Hb5ynXW2tk2wtaCrilziCQt2kj4J6IGqt/0w5/uE8jsZd
         IrdkYZsJ2W+U4zjjY2CHl8DjtHNscsYKxyQqWkktUoCdOjaizm417RD24wBGO8STX4ZF
         imzQ==
X-Gm-Message-State: AOJu0YzXQiM7714JO3G3CRzcGR59ep28cWm51Yam0bVdtyCnngmjmZ7N
	3XUgLqbBhBgGWXnLNF1A27V5dg==
X-Google-Smtp-Source: AGHT+IFjp1oOuaqA+Z71qHOVFc+lY1ZDwW7mMmwgn+UGrlIjcn3THN8GLfLSFkpzd1QoRhtvMVpyOA==
X-Received: by 2002:a17:907:a0c9:b0:9c4:4b20:44a1 with SMTP id hw9-20020a170907a0c900b009c44b2044a1mr2110375ejc.65.1697555345197;
        Tue, 17 Oct 2023 08:09:05 -0700 (PDT)
Message-ID: <652ea390.170a0220.fc514.3c38@mx.google.com>
X-Google-Original-Message-ID: <ZS6jjsmJqwYymBBQ@EMEAENGAAD19049.>
Date: Tue, 17 Oct 2023 16:09:02 +0100
From: Alejandro Vallejo <alejandro.vallejo@cloud.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: Xen-devel <xen-devel@lists.xenproject.org>,
	George Dunlap <George.Dunlap@eu.citrix.com>,
	Jan Beulich <JBeulich@suse.com>,
	Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
	Julien Grall <julien@xen.org>,
	Roger Pau =?iso-8859-1?Q?Monn=E9?= <roger.pau@citrix.com>,
	Juergen Gross <jgross@suse.com>, Henry Wang <Henry.Wang@arm.com>
Subject: Re: [PATCH for-4.18] docs/sphinx: Lifecycle of a domid
References: <20231016162450.1286178-1-andrew.cooper3@citrix.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=iso-8859-1
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <20231016162450.1286178-1-andrew.cooper3@citrix.com>

The page is pretty nice overall and I quite liked it. Just a few extra
questions below, as I'm not familiar with this side of things,

On Mon, Oct 16, 2023 at 05:24:50PM +0100, Andrew Cooper wrote:
> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
> ---
> CC: George Dunlap <George.Dunlap@eu.citrix.com>
> CC: Jan Beulich <JBeulich@suse.com>
> CC: Stefano Stabellini <sstabellini@kernel.org>
> CC: Wei Liu <wl@xen.org>
> CC: Julien Grall <julien@xen.org>
> CC: Roger Pau Monn <roger.pau@citrix.com>
> CC: Juergen Gross <jgross@suse.com>
> CC: Henry Wang <Henry.Wang@arm.com>
> 
> Rendered form:
>   https://andrewcoop-xen.readthedocs.io/en/docs-devel/hypervisor-guide/domid-lifecycle.html
> 
> I'm not sure why it's using the alibaster theme and not RTD theme, but I
> don't have time to debug that further at this point.
> 
> This was written mostly while sat waiting for flights in Nanjing and Beijing.
> 
> If while reading this you spot a hole, congratulations.  There are holes which
> need fixing...
> ---
>  docs/glossary.rst                         |   9 ++
>  docs/hypervisor-guide/domid-lifecycle.rst | 164 ++++++++++++++++++++++
>  docs/hypervisor-guide/index.rst           |   1 +
>  3 files changed, 174 insertions(+)
>  create mode 100644 docs/hypervisor-guide/domid-lifecycle.rst
> 
> diff --git a/docs/glossary.rst b/docs/glossary.rst
> index 8ddbdab160a1..1fd1de0f0e97 100644
> --- a/docs/glossary.rst
> +++ b/docs/glossary.rst
> @@ -50,3 +50,12 @@ Glossary
>  
>       By default it gets all devices, including all disks and network cards, so
>       is responsible for multiplexing guest I/O.
> +
> +   system domain
> +     Abstractions within Xen that are modelled in a similar way to regular
> +     :term:`domains<domain>`.  E.g. When there's no work to do, Xen schedules
> +     ``DOMID_IDLE`` to put the CPU into a lower power state.
> +
> +     System domains have :term:`domids<domid>` and are referenced by
> +     privileged software for certain control operations, but they do not run
> +     guest code.
> diff --git a/docs/hypervisor-guide/domid-lifecycle.rst b/docs/hypervisor-guide/domid-lifecycle.rst
> new file mode 100644
> index 000000000000..d405a321f3c7
> --- /dev/null
> +++ b/docs/hypervisor-guide/domid-lifecycle.rst
> @@ -0,0 +1,164 @@
> +.. SPDX-License-Identifier: CC-BY-4.0
> +
> +Lifecycle of a domid
> +====================
> +
> +Overview
> +--------
> +
> +A :term:`domid` is Xen's numeric identifier for a :term:`domain`.  In any
> +operational Xen system, there are one or more domains running.
> +
> +Domids are 16-bit integers.  Regular domids start from 0, but there are some
> +special identifiers, e.g. ``DOMID_SELF``, and :term:`system domains<system
> +domain>`, e.g. ``DOMID_IDLE`` starting from 0x7ff0.  Therefore, a Xen system
> +can run a maximum of 32k domains concurrently.
> +
> +.. note::
> +
> +   Despite being exposed in the domid ABI, the system domains are internal to
> +   Xen and do not have lifecycles like regular domains.  Therefore, they are
> +   not discussed further in this document.
> +
> +At system boot, Xen will construct one or more domains.  Kernels and
> +configuration for these domains must be provided by the bootloader, or at
> +Xen's compile time for more highly integrated solutions.
> +
> +Correct functioning of the domain lifecycle involves ``xenstored``, and some
> +privileged entity which has bound the ``VIRQ_DOM_EXC`` global event channel.
> +
> +.. note::
> +
> +   While not a strict requirement for these to be the same entity, it is
> +   ``xenstored`` which typically has ``VIRQ_DOM_EXC`` bound.  This document is
> +   written assuming the common case.
> +
> +Creation
> +--------
> +
> +Within Xen, the ``domain_create()`` function is used to allocate and perform
> +bare minimum construction of a domain.  The :term:`control domain` accesses
> +this functionality via the ``DOMCTL_createdomain`` hypercall.
> +
> +The final action that ``domain_create()`` performs before returning
> +successfully is to enter the new domain into the domlist.  This makes the
> +domain "visible" within Xen, allowing the new domid to be successfully
> +referenced by other hypercalls.
> +
> +At this point, the domain exists as far as Xen is concerned, but not usefully
> +as a VM yet.  The toolstack performs further construction activities;
> +allocating vCPUs, RAM, copying in the initial executable code, etc.  Domains
> +are automatically created with one "pause" reference count held, meaning that
> +it is not eligible for scheduling.
> +
> +When the toolstack has finished VM construction, it send an ``XS_INTRODUCE``
> +command to ``xenstored``.  This instructs ``xenstored`` to connect to the
> +guest's xenstore ring, and fire the ``@introduceDomain`` watch.  The firing of
> +this watch is the signal to all other components which care that a new VM has
> +appeared and is about to start running.
Presumably the xenstore ring is memory shared between xenstore and the
newly created domain. Who establishes that connection? For the case where
xenstore lives in dom0 things are _simpler_ because it lives in the same VM
as the toolstack, but I suspect things are hairier when xenstore is in its
own stubdomain. A description of the grant dance (if any), would be helpful.

In that same line, having mermaid sequence diagrams would make these
descriptions easier to follow:

  https://sphinxcontrib-mermaid-demo.readthedocs.io/en/latest/

> +
> +When the ``XS_INTRODUCE`` command returns successfully, the final action the
Not knowing the internals I find the wording weird, though that might be my
own misunderstanding. I imagine you mean "... when xenstore replies with
the successful completion of the ``XS_INTRODUCE`` command...". Considering
the "xenstore ring" mentioned before, I assume all xenstore comms are
async.

> +toolstack performs is to unpause the guest, using the ``DOMCTL_unpausedomain``
> +hypercall.  This drops the "pause" reference the domain was originally created
> +with, meaning that the vCPU(s) are eligible for scheduling and the domain will
> +start executing its first instruction.
> +
> +.. note::
> +
> +   It is common for vCPUs other than 0 to be left in an offline state, to be
> +   started by actions within the VM.
Peculiar choice of words. I guess you don't want to pinch your fingers
precluding other toolstack implementations doing something different. One
possible way to express it is that "Conventionally, other vCPUs other than
0 are left in an offline state to be started by actions within the VM.
This is non-normative, however, and custom Xen-based systems may
choose to do otherwise."

As is, it's unclear whether the unconventional behaviour is assumed to be a
real possibility, a known existing bug, or uncertainty about the past,
present and future.

> +
> +Termination
> +-----------
> +
> +The VM runs for a period of time, but eventually stops.  It can stop for a
> +number of reasons, including:
> +
> + * Directly at the guest kernel's request, via the ``SCHEDOP_shutdown``
nit: I would 's/guest kernel/guest', but that's just me. Internally the
kernel may very well be a passive shim where the active intelligence is in
some disaggregated network of userspace components, making the kernel just
an accidental proxy.

> +   hypercall.  The hypercall also includes the reason for the shutdown,
> +   e.g. ``poweroff``, ``reboot`` or ``crash``.
> +
> + * Indirectly from certain states.  E.g. executing a ``HLT`` instruction with
> +   interrupts disabled is interpreted as a shutdown request as it is a common
> +   code pattern for fatal error handling when no better options are available.
> +
> + * Indirectly from fatal exceptions.  In some states, execution is unable to
> +   continue, e.g. Triple Fault on x86.
> +
> + * Directly from the device model, via the ``DMOP_remote_shutdown`` hypercall.
> +   E.g. On x86, the 0xcf9 IO port is commonly used to perform platform
> +   poweroff, reset or sleep transitions.
> +
> + * Directly from the toolstack.  The toolstack is capable of initiating
> +   cleanup directly, e.g. ``xl destroy``.  This is typically an administration
> +   action of last resort to clean up a domain which malfunctioned but not
> +   terminated properly.
This one is at a different abstraction layer than the others. The hypercall(s)
being used would be more helpful, along with a line saying that the
toolstack makes use of this through e.g: ``xl destory``.

> +
> + * Directly from Xen.  Some error handling ends up using ``domain_crash()``
> +   when Xen doesn't think it can safely continue running the VM.
> +
> +Whatever the reason for termination, Xen ends up calling ``domain_shutdown()``
> +to set the shutdown reason and deschedule all vCPUs.  Xen also fires the
> +``VIRQ_DOM_EXC`` event channel, which is a signal to ``xenstored``.
> +
> +Upon receiving ``VIRQ_DOM_EXC``, ``xenstored`` re-scans all domains using the
> +``SYSCTL_getdomaininfolist`` hypercall.  If any domain has changed state from
> +running to shut down, ``xenstored`` fires the ``@releaseDomain`` watch.  The
> +firing of this watch is the signal to all other components which care that a
> +VM has stopped.
> +
> +.. note::
> +
> +   Xen does not treat reboot differently to poweroff; both statuses are
> +   forwarded to the toolstack.  It is up to the toolstack to restart the VM,
> +   which is typically done by constructing a new domain.
> +
> +.. note::
> +
> +   Some shutdowns may not result in the cleanup of a domain.  ``suspend`` for
> +   example can be used for snapshotting, and the VM resumes execution in the
> +   same domain/domid.  Therefore, a domain can cycle several times between
> +   running and "shut down" before moving into the destruction phase.
> +
> +Destruction
> +-----------
> +
> +The domain object in Xen is reference counted, and survives until all
> +references are dropped.
What a "reference" means might help. I'd like to think it means any
pointer to a domain, and any domid in hypervisor memory, but...

> +
> +The ``@releaseDomain`` watch is to inform all entities that hold a reference
> +on the domain to clean up.  This may include:
... this statement leads me to believe only references held by trusted
parties are collected, and by their choice (not by force). What about pages
granted to other domains that may not whish (or be able to) comply?

> +
> + * Paravirtual driver backends having a grant map of the shared ring with the
> +   frontend.
On a related tangent, what happens if your driver domain is compromised?
Does it suddenly hold all your domains (and their RAM!) hostage because it
won't act upon ``@releaseDomain``?

> + * A device model with a map of the IOREQ page(s).
> +
> +The toolstack also has work to do in response to ``@releaseDomain``.  It must
> +issue the ``DOMCTL_destroydomain`` hypercall.  This hypercall can take minutes
> +of wall-clock time to complete for large domains as, amongst other things, it
> +is freeing the domain's RAM back to the system.
> +
> +The actions triggered by the ``@releaseDomain`` watch are asynchronous.  There
> +is no guarantee as to the order in which actions start, or which action is the
> +final one to complete.  However, the toolstack can achieve some ordering by
> +delaying the ``DOMCTL_destroydomain`` hypercall if necessary.
> +
> +Freeing
> +-------
> +
> +When the final reference on the domain object is dropped, Xen will remove the
nit: 's/will remove/removes'
> +domain from the domlist.  This means the domid is no longer visible in Xen,
> +and no longer able to be referenced by other hypercalls.
> +
> +Xen then schedules the object for deletion at some point after any concurrent
> +hypercalls referencing the domain have completed.
> +
> +When the object is finally cleaned up, Xen fires the ``VIRQ_DOM_EXC`` event
> +channel again, causing ``xenstored`` to rescan an notice that the domain has
> +ceased to exist.  It fires the ``@releaseDomain`` watch a second time to
> +signal to any components which care that the domain has gone away.
At which point did the grant tables drop the domid references? Are we relying
on the goodwill of the grant destination?

> +
> +E.g. The second ``@releaseDomain`` is commonly used by paravirtual driver
> +backends to shut themselves down.
> +
> +At this point, the toolstack can reuse the domid for a new domain.
> diff --git a/docs/hypervisor-guide/index.rst b/docs/hypervisor-guide/index.rst
> index e4393b06975b..af88bcef8313 100644
> --- a/docs/hypervisor-guide/index.rst
> +++ b/docs/hypervisor-guide/index.rst
> @@ -6,6 +6,7 @@ Hypervisor documentation
>  .. toctree::
>     :maxdepth: 2
>  
> +   domid-lifecycle
>     code-coverage
>  
>     x86/index
> 
> base-commit: dc9d9aa62ddeb14abd5672690d30789829f58f7e
> prerequisite-patch-id: 832bdc9a23500d426b4fe11237ae7f6614f2369c
> -- 
> 2.30.2
> 
> 

Thanks,
Alejandro


From xen-devel-bounces@lists.xenproject.org Tue Oct 17 15:24:51 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 17 Oct 2023 15:24:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618289.961742 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qslw1-0003Ds-Us; Tue, 17 Oct 2023 15:24:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618289.961742; Tue, 17 Oct 2023 15: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 1qslw1-0003Dl-RT; Tue, 17 Oct 2023 15:24:41 +0000
Received: by outflank-mailman (input) for mailman id 618289;
 Tue, 17 Oct 2023 15:24: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=tHSl=F7=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qslw0-0003Df-6U
 for xen-devel@lists.xenproject.org; Tue, 17 Oct 2023 15:24:40 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 483778b4-6d01-11ee-9b0e-b553b5be7939;
 Tue, 17 Oct 2023 17:24:37 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id 8839F4EE0738;
 Tue, 17 Oct 2023 17:24: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: 483778b4-6d01-11ee-9b0e-b553b5be7939
MIME-Version: 1.0
Date: Tue, 17 Oct 2023 17:24:36 +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.cooper3@citrix.com, roger.pau@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][for-4.19 v2 6/7] xen/console: make function static
 inline
In-Reply-To: <5cad5cef-27b7-58ef-42f1-8c4a83497f4b@suse.com>
References: <cover.1696833629.git.nicola.vetrini@bugseng.com>
 <6ca7d9834079b7824f9432799cce2308aa88d159.1696833629.git.nicola.vetrini@bugseng.com>
 <5cad5cef-27b7-58ef-42f1-8c4a83497f4b@suse.com>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <1dd47c07730ae143963891d79148e8f0@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 16/10/2023 16:52, Jan Beulich wrote:
> On 09.10.2023 08:54, Nicola Vetrini wrote:
>> --- a/xen/include/xen/consoled.h
>> +++ b/xen/include/xen/consoled.h
>> @@ -12,7 +12,7 @@ size_t consoled_guest_tx(char c);
>> 
>>  #else
>> 
>> -size_t consoled_guest_tx(char c) { return 0; }
>> +static inline size_t consoled_guest_tx(char c) { return 0; }
> 
> Why inline? We do so in headers, but we generally avoid "inline" in
> .c files.
> 
> Jan

Yes. The file modified is in fact an header.

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


From xen-devel-bounces@lists.xenproject.org Tue Oct 17 15:26:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 17 Oct 2023 15:26:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618293.961752 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qslyA-0003oL-C0; Tue, 17 Oct 2023 15:26:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618293.961752; Tue, 17 Oct 2023 15:26: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 1qslyA-0003oE-89; Tue, 17 Oct 2023 15:26:54 +0000
Received: by outflank-mailman (input) for mailman id 618293;
 Tue, 17 Oct 2023 15: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=tHSl=F7=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qsly8-0003o6-Df
 for xen-devel@lists.xenproject.org; Tue, 17 Oct 2023 15:26:52 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 97cd06a0-6d01-11ee-9b0e-b553b5be7939;
 Tue, 17 Oct 2023 17:26:50 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id 4425A4EE0738;
 Tue, 17 Oct 2023 17:26: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: 97cd06a0-6d01-11ee-9b0e-b553b5be7939
MIME-Version: 1.0
Date: Tue, 17 Oct 2023 17:26:50 +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.cooper3@citrix.com, roger.pau@citrix.com, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
Subject: Re: [XEN PATCH v2 3/7] x86: add deviation comments for asm-only
 functions
In-Reply-To: <alpine.DEB.2.22.394.2310161520180.965337@ubuntu-linux-20-04-desktop>
References: <cover.1696833629.git.nicola.vetrini@bugseng.com>
 <6476706490cc15406bcf3377a57b7c4a303c4901.1696833629.git.nicola.vetrini@bugseng.com>
 <741e81bc-050c-a773-e622-997b6c0b8335@suse.com>
 <alpine.DEB.2.22.394.2310161520180.965337@ubuntu-linux-20-04-desktop>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <d9532d49fe43e4f8c9e6a3c44287d9b3@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


> Now, concrete action items. Nicola, I think we should look into having 
> a
> larger-than-usual ECLAIR scan every week which includes all of Intel
> files and in general as much as possible of the codebase.
> 

This can be arranged. I'll keep you posted about this.

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


From xen-devel-bounces@lists.xenproject.org Tue Oct 17 16:27:05 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 17 Oct 2023 16:27:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618297.961761 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsmuD-0005ss-H9; Tue, 17 Oct 2023 16:26:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618297.961761; Tue, 17 Oct 2023 16: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 1qsmuD-0005sl-Ef; Tue, 17 Oct 2023 16:26:53 +0000
Received: by outflank-mailman (input) for mailman id 618297;
 Tue, 17 Oct 2023 16:26: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=ibp0=F7=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qsmuB-0005sd-Et
 for xen-devel@lists.xenproject.org; Tue, 17 Oct 2023 16:26:51 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com
 (mail-db3eur04on061f.outbound.protection.outlook.com
 [2a01:111:f400:fe0c::61f])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id f851705a-6d09-11ee-98d4-6d05b1d4d9a1;
 Tue, 17 Oct 2023 18:26:50 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PA4PR04MB9663.eurprd04.prod.outlook.com (2603:10a6:102:261::12)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.35; Tue, 17 Oct
 2023 16:26:46 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%6]) with mapi id 15.20.6886.034; Tue, 17 Oct 2023
 16:26: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: f851705a-6d09-11ee-98d4-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=SV7KEE9FhGI9f7MCAFgBbu8KaoxHct0RZ6vOf5zRG0LLGhBl+ao5cb338iQ4nkGIFRWFlr+ecVGuTNAelHILnwP93kYKTnjyfvnMnW7u7yBwk061krzeS+fBmvHEDF9C2fNXFLdXiB+yyeh8bHuKp0QvM3MmwOc5379F466Ws3XCs09sAVC6IK8myMOrMFVQhNAH6lt7KMef/X6V7+PEelkPM19qWOf3AQ7qNcDNwb60dJ2CxoYDSG1rPDVLco5kehijcyOFRwYDB9wTvub9x7Ks5iuIbpKzGw6nriYAq+3fPX5Q9FUbE/90qod1+6I24EZYHe/tE00/wKFLQhVuqg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=8TMuQPdeHWRt01YLH5bBA9qWnp0bjMJGeIk7GIBDYKc=;
 b=P4HhvHq6R9pB+JarKLRZedIQcX6++S/2/KRvoFUNgBDrWmVUS61U8/a31/wyfteIdv2XZj/tziI+ryf7AKMZEgcs+1rwfa5SgfP0+YBplVNeGaAA0d1v9E8ojFYF66r5UlzbJeBSanIpT9XQj2dJL0QGK2ZMI39hSx89V65OaxuyKf42eGVgsszIrAxOWqsDJUpJRRkd6gE29+zmDrjURfGBEeaX2lypbNfYgr0pA/Eag0bvLFxdF4EKYxBoXE7QG8zKY4o2zrvtL2UyR/iLqNG/dhAFp4eovNyxTM111ADa31FHtSpwDMlxwxGXrW0pBAScRnPBJfZc2QaKCOgngg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=8TMuQPdeHWRt01YLH5bBA9qWnp0bjMJGeIk7GIBDYKc=;
 b=Dfu6t0YNpwre8+e31HXu1+kuVuacUE5CwFuWKsJLkJTLm2SvL1zg2edPU0pDpIMHpfgt36poDc+1Y7EP4TdmgPMgfmj290R2ZU7ezC9uh5v5GHuUdL5zD4kmeAyYa79r7OfiJfFs1qt5sZZFGt+YghhGL82AVBvaGyoyDpx5a42kYhV1ezjRllEkPWCx7ayRgojarNcloocZ23JA6C2K7LAIU3/y7aNO/LvWJ6ASUNZTEB1em9wSPJu/vhGYWydbJ1aot4DO8TuKYUWjqKW1F0GVSfKPYsWCK3OxsXq5F6atG+lW7A9sUSMTds93BMNKfr5CGPAfQTUzvDB6xhH0sg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <ed66744c-5e80-7050-eae8-06afa4d060c1@suse.com>
Date: Tue, 17 Oct 2023 18:26:41 +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][for-4.19 v2 6/7] xen/console: make function static
 inline
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.cooper3@citrix.com, roger.pau@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.1696833629.git.nicola.vetrini@bugseng.com>
 <6ca7d9834079b7824f9432799cce2308aa88d159.1696833629.git.nicola.vetrini@bugseng.com>
 <5cad5cef-27b7-58ef-42f1-8c4a83497f4b@suse.com>
 <1dd47c07730ae143963891d79148e8f0@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <1dd47c07730ae143963891d79148e8f0@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0157.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:ba::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_|PA4PR04MB9663:EE_
X-MS-Office365-Filtering-Correlation-Id: 2a334a91-9553-4659-899a-08dbcf2ddaf6
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	S7pROlV2qA7o+mNO8PgylMcpyZA5kTob/tGeLEgcgyVw/bg1m+cGwVW0tlUSfRs52k41UV12nHlx8kbgYMQ3v81wmBO22HAztPLyGBCBGIt78XQCgCvwjRoT6p5NlXfPrVSJSzefVFZjboYhmukXqh4hfyC2Vi+LCZ3VWreqswAiBd0hPpSR7lnXeF/8Jki5zN3aP6iyx+RxQa4Bn0HaeDZNZJkumE6KTfOlQUn8mCaA0oEi2tV2xszMz7rcIot029UYtw4ohzpmCEKmLQYh/+yP75HidWHyLs6gSy927jN4KoHj0uiK3QMkMQimY8wUKyYdOzVpfbfCb5rpb2HA7j4JLMa5YmXUc3RlcF/FuBP6okMqarWyylpxOUExUzLgJxFfx/+q+3UV6h3dngoHMCDNExXUu0N72FbyZeNBouBzBx+pIb+WBAySYuojr2r9xMMQrTpxFU4HnGtLWrtzZaK7D9EqA14m75Yvjtdpb7mn6cuUHmbdgnAOeTrgB6JpS0F0Iw3+3I8tMEMzFIh7THaJqI5dl5kAgGoSVvqbkP1PYFr2dNuJ4+FkvQ0/wloTjjpRjwEFT9SqRFxfxIIRDOxSFiOaesXHN04VcfJWXS+2r124+ddZ1JZOcFWGqJpsfoocG/rAVLbQ0o2q2U8ObQ==
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)(396003)(366004)(376002)(230922051799003)(1800799009)(186009)(64100799003)(451199024)(316002)(8936002)(2616005)(4744005)(6512007)(7416002)(6916009)(8676002)(66556008)(66476007)(66946007)(4326008)(54906003)(6506007)(53546011)(41300700001)(5660300002)(478600001)(2906002)(6486002)(6666004)(38100700002)(31696002)(86362001)(36756003)(31686004)(26005)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?VklYdmJNcHozQlVzOFRJWGJCRW5zMm0xMGpyTjlSYXBnZkZLa0x3ZFBpTWhG?=
 =?utf-8?B?aVNmZzIvSFhCaEZqZmFiblAzN09KZ0I2M3picFc4M1huQ3ExWWFoWWdDNHA3?=
 =?utf-8?B?d21yUHFybDNoNzFPQ2V4dUMwNzBvVXdnK2pvd3dzMmQ1aUZ0NjlSV0N5ajlN?=
 =?utf-8?B?aDVHR3Z3Z2NROHJEQThKc0JFc1lYVGRUOXVoWEFJY0JYNGpXT2Z4UTlhNUxK?=
 =?utf-8?B?c1BrVXFLdnQvUVR1WkZ0Q3NuR090Yjl6ZUlMZEE1cnNPMWtGaXRhWjJERzNT?=
 =?utf-8?B?SzV5Nzd0RGJ4a2FQTDdYejRIM2pTMmFZYm9CV0FPbjZCTmFEMmxjcjRlYkV1?=
 =?utf-8?B?aXpnZ1k3SWdNeVNGMGduYWZNZktVM1k4eXFjOCt2eitDZWRyVVppQ3Y5eDda?=
 =?utf-8?B?RFlINFZ2dmd1Vk5CUkxYVzNmaTByRzhsczJuYkZiN3AydFZoK0F4cTA3QzIw?=
 =?utf-8?B?d2xMOTR5V0VPcGQwN005L21uTGYwWm1XUmRwZE00N25zUG43ME82Rkg5bENV?=
 =?utf-8?B?T1pkWkx5TDdNMGtlTy9lZGRobDZuM3MzSXBuaThqK1M4eWxhRjhCS3Y1bldS?=
 =?utf-8?B?eW5meWROUHhFTVV4ZFBtOUZyS1dlNW5qd0x4aTZRZS96ZkYxRkRhSGl3cTNu?=
 =?utf-8?B?ZFZ4bGxuQldrQWVxbnkxcm4xMmpIeEsrclZJK3VCN1J0dGpmMG1tT1djS3g5?=
 =?utf-8?B?ZUd5ZEN0WFh0cDg2S2o0YW0vMVJTUlpmTzJMeUFDZjFNblVWUzVqbzBUeHFu?=
 =?utf-8?B?cUYrVnVscTdNUUp1eFhLWjNuVHdaNi9wL3g5ZVFFNUg5QXNDTHFhSUZjbHFz?=
 =?utf-8?B?UXZUanRoWDlQMkZIVG1qWWdkWVI4VHlJNkI5dlhEcDRXZllNRkZGbURFTEx5?=
 =?utf-8?B?clBYaERJUjd5c2FDWmo5WVkyZGtZZ1NaUnUvTGNnVjBScHBXYVlsQkxPQy9k?=
 =?utf-8?B?b1JaeUJSK3ZLcnRlRWxmdEczUFBjR01xRHdwcDdDc2xIVURudENMR2czY3RX?=
 =?utf-8?B?V0d1dTJkQXlqY1A1TFQxSTJsQzZuaFdETUwrRE8zdWVQMHpxdjNOdU9WeHhE?=
 =?utf-8?B?MlhlelI4dFJvcFlFTkFFbzBOS0F0ZGRsM3Q2S1FWRkhEa0llcER0YjZLN2RE?=
 =?utf-8?B?d0c5WTB1cm5QSC9GRURoRllrckRPQ05CTlJqNUpoWTdUSnkwSEkrcGxhbDAy?=
 =?utf-8?B?d3laUGtvaGF5d0xlekJTcitJbHovZ2ljSDJWRGpXWSt5RForZStmOStjS3Zr?=
 =?utf-8?B?ZC9hL3ZUUklyNlVzYm41Q3A2WWk2d2liMHZkNW1wNlhwaXo3UEhlUUVQT2ls?=
 =?utf-8?B?NTlSTnJ3TWs3ekpOSGFkSTUvMWF3NE5nMWZPUVlUQkg3S1drRXRRcUtKL2x3?=
 =?utf-8?B?Y0FHaWlmNVQ3dENNVmEyNTRCNWs3NEc3QW5mRmZvZFEyWXpIUmFIQ1U0cHdv?=
 =?utf-8?B?eEdWcG5rd3BKQmYyQ0YvR0VpdXRWV21MaURlU1hjN0FRUC9MUTNDd3FMdk5C?=
 =?utf-8?B?Q3IxUGFkTi9zdlRGaFhta01QaVBFQWlsd1I3WWNCSFhJdUprUUdWRjJsKzVJ?=
 =?utf-8?B?VHVSK3ludEl1dCtybWEveWE2c2pWaHBpWWloTVVoOURNNkpnVHptYkRmbXJm?=
 =?utf-8?B?UTN5SzJvQ0hlWGZ6QmEvSHlBQWRuMjdrQW1IL3p2d3k3dVVCZGplMEpXM0Zs?=
 =?utf-8?B?TzhTdnNNL0xhMDdRN1huUUtsbVdhOSsyVzd4RGp3UlQzeWczQjIxZ0RPVkJX?=
 =?utf-8?B?Y0VORzUvT3lmcDBmSFVjUU94VHppYmNuUG51a1N3UmxHNXVlWC9aaDdpUnpV?=
 =?utf-8?B?cm5tV0ZHWFJrOUFxWDBicTBtd3V0bWFiNkliZklLa2RNOVFaYko5TU11bHZU?=
 =?utf-8?B?MXJzZHlMeUZRb2ZNSGlyWjM4M21qL1BRNVJhOXJNREtGMmVjODdab0VZQk9y?=
 =?utf-8?B?WlQ5K1lwd21CbmhqTDdwZGE5RzVqNUNXZkdCdkUwWDVES1Zpd2V5R2ZDdTlY?=
 =?utf-8?B?cnE1MFBFcERGZnBCaVE1cXlIZTc0QU56SlQ2ejdjL1VBR0lva1A0WnB5dUFk?=
 =?utf-8?B?TDF1R1dubUZwVVJWSU9EcndCUVUyUG1HLzFkLzZTS3c0K3hlNFVIanNQTHBC?=
 =?utf-8?Q?5RMWCPQ5Z9PX5CnSmd1dyg3Vs?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 2a334a91-9553-4659-899a-08dbcf2ddaf6
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Oct 2023 16:26:45.8914
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: VEeLfWmSvGDcaZRfvQx63wHSfBB4w/YfySDFg1OTOoG6rIQRTdvcWa/00cJWZ+AbhlqXo5oZErDGu9eIOoTGCw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR04MB9663

On 17.10.2023 17:24, Nicola Vetrini wrote:
> On 16/10/2023 16:52, Jan Beulich wrote:
>> On 09.10.2023 08:54, Nicola Vetrini wrote:
>>> --- a/xen/include/xen/consoled.h
>>> +++ b/xen/include/xen/consoled.h
>>> @@ -12,7 +12,7 @@ size_t consoled_guest_tx(char c);
>>>
>>>  #else
>>>
>>> -size_t consoled_guest_tx(char c) { return 0; }
>>> +static inline size_t consoled_guest_tx(char c) { return 0; }
>>
>> Why inline? We do so in headers, but we generally avoid "inline" in
>> .c files.
> 
> Yes. The file modified is in fact an header.

Hmm, how did I not pay attention? Yet then a different question arises:
Without the "static inline" I'd expect this to result in a build error
from any two .c files including this header. Yet we aren't aware of
such a build issue, so I wonder whether the stub is needed in the first
place.

Jan


From xen-devel-bounces@lists.xenproject.org Tue Oct 17 16:28:37 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 17 Oct 2023 16:28:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618302.961775 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsmvt-0006WF-7b; Tue, 17 Oct 2023 16:28:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618302.961775; Tue, 17 Oct 2023 16: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 1qsmvt-0006VS-4P; Tue, 17 Oct 2023 16:28:37 +0000
Received: by outflank-mailman (input) for mailman id 618302;
 Tue, 17 Oct 2023 16: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=QyJ2=F7=gmail.com=ubizjak@srs-se1.protection.inumbo.net>)
 id 1qsmvs-0006TP-EY
 for xen-devel@lists.xenproject.org; Tue, 17 Oct 2023 16:28:36 +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 377a6e79-6d0a-11ee-9b0e-b553b5be7939;
 Tue, 17 Oct 2023 18:28:34 +0200 (CEST)
Received: by mail-ed1-x529.google.com with SMTP id
 4fb4d7f45d1cf-53e08b60febso9140867a12.1
 for <xen-devel@lists.xenproject.org>; Tue, 17 Oct 2023 09:28:34 -0700 (PDT)
Received: from localhost.localdomain ([46.248.82.114])
 by smtp.gmail.com with ESMTPSA id
 b42-20020a509f2d000000b0053e43492ef1sm1515759edf.65.2023.10.17.09.28.32
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Tue, 17 Oct 2023 09:28: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: 377a6e79-6d0a-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1697560114; x=1698164914; 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=qD1TIlJEBCWEp5FpDJPkSVLZhr5746v+N1MHVT+wqUc=;
        b=lKFTHmMFYUWcObPkus4cfjhK8pP5FF3bUA9bmCiIvFhnLghyZTyEJGomV9EYCOK4s7
         tvDMHPgndD3tENanAFEuKMbLQedkgITEH+0J6S19U5gAvbELJBd6LWs4tETkTIfo+ldp
         lf71mPC5AFI9FVi0G1AvUZ7EW4mb8pul1OSqgGj8PeUFi591olgI4JGdn8hRsl36ICTW
         rO+Tw1H2x2n8nI4QvspJfqOW/zYCTNxdWTw7Sy4yNQpJAUTOvmSHiVq5RT7zcUm8Ug4n
         AYF1hzrxOPuXz74ir41AQtxmHxsQehBCN8nNrmy7hpKe+YSlYO/mhcoSGqa+JWY5vdQj
         Ei4A==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697560114; x=1698164914;
        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=qD1TIlJEBCWEp5FpDJPkSVLZhr5746v+N1MHVT+wqUc=;
        b=cxUnIo8ECECQPNHl0byPTxDRMKQBTFJNqbexEyb1Q1hk55xYGXWwXrD8GVrvLhJe4z
         UHT2yfwbWSO+xgu5iEDDTBrPiZTA7Z0vD0KPappSu3DL1Cn7WVyBuonbPTdbWxj3XSR0
         cG2BB7iLGeNtXfQqCwXUsE879qs0h5UVISMgHmgxSwg0O/gEMiqcCBDpzbqBghHjklFe
         WDkSoVVtlxksz1xIk1dZfXdSAZcwiKdDht9J7TCUD+7+QwTPsPTcmQJS7uNF/lH5w4Mb
         9R6Mp73EUYRPk2rIrItbea5cR7qoo3MvvIBKSHSyATi2ucWFrhDSq8iv8EopSeHrWEn8
         t/Fw==
X-Gm-Message-State: AOJu0Yz1JNsgZG2RSiIoWGW1ynr1jBaCIhT9OJCcr+HnnyMBlxT5nM/B
	HQZ2MvIUAsYQiAsT3FbIAYs=
X-Google-Smtp-Source: AGHT+IE3Cfh9b/JzqGg6j8gIi+dTtztg88/AEC+rLc5ZXs12bE5RhG34cZdOWcisCjIuoDPYLKhuIg==
X-Received: by 2002:a05:6402:40ce:b0:53d:d8ad:4d46 with SMTP id z14-20020a05640240ce00b0053dd8ad4d46mr2756595edb.36.1697560113606;
        Tue, 17 Oct 2023 09:28:33 -0700 (PDT)
From: Uros Bizjak <ubizjak@gmail.com>
To: x86@kernel.org,
	xen-devel@lists.xenproject.org,
	linux-kernel@vger.kernel.org
Cc: Uros Bizjak <ubizjak@gmail.com>,
	Thomas Gleixner <tglx@linutronix.de>,
	Ingo Molnar <mingo@kernel.org>,
	Borislav Petkov <bp@alien8.de>,
	Dave Hansen <dave.hansen@linux.intel.com>,
	"H. Peter Anvin" <hpa@zytor.com>
Subject: [PATCH -tip v3 1/3] x86/percpu: Correct PER_CPU_VAR usage to include symbol and its addend
Date: Tue, 17 Oct 2023 18:27:32 +0200
Message-ID: <20231017162811.200569-1-ubizjak@gmail.com>
X-Mailer: git-send-email 2.41.0
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

PER_CPU_VAR macro should be applied to a symbol and its addend.
Inconsistent usage is currently harmless, but needs to be corrected
before %rip-relative addressing is introduced to PER_CPU_VAR macro.

No functional changes intended.

Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Ingo Molnar <mingo@kernel.org>
Cc: Borislav Petkov <bp@alien8.de>
Cc: Dave Hansen <dave.hansen@linux.intel.com>
Cc: "H. Peter Anvin" <hpa@zytor.com>
Signed-off-by: Uros Bizjak <ubizjak@gmail.com>
---
 arch/x86/entry/calling.h  | 2 +-
 arch/x86/entry/entry_32.S | 2 +-
 arch/x86/entry/entry_64.S | 2 +-
 arch/x86/kernel/head_64.S | 2 +-
 4 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/arch/x86/entry/calling.h b/arch/x86/entry/calling.h
index f6907627172b..47368ab0bda0 100644
--- a/arch/x86/entry/calling.h
+++ b/arch/x86/entry/calling.h
@@ -173,7 +173,7 @@ For 32-bit we have the following conventions - kernel is built with
 .endm
 
 #define THIS_CPU_user_pcid_flush_mask   \
-	PER_CPU_VAR(cpu_tlbstate) + TLB_STATE_user_pcid_flush_mask
+	PER_CPU_VAR(cpu_tlbstate + TLB_STATE_user_pcid_flush_mask)
 
 .macro SWITCH_TO_USER_CR3_NOSTACK scratch_reg:req scratch_reg2:req
 	ALTERNATIVE "jmp .Lend_\@", "", X86_FEATURE_PTI
diff --git a/arch/x86/entry/entry_32.S b/arch/x86/entry/entry_32.S
index c73047bf9f4b..4e295798638b 100644
--- a/arch/x86/entry/entry_32.S
+++ b/arch/x86/entry/entry_32.S
@@ -305,7 +305,7 @@
 .macro CHECK_AND_APPLY_ESPFIX
 #ifdef CONFIG_X86_ESPFIX32
 #define GDT_ESPFIX_OFFSET (GDT_ENTRY_ESPFIX_SS * 8)
-#define GDT_ESPFIX_SS PER_CPU_VAR(gdt_page) + GDT_ESPFIX_OFFSET
+#define GDT_ESPFIX_SS PER_CPU_VAR(gdt_page + GDT_ESPFIX_OFFSET)
 
 	ALTERNATIVE	"jmp .Lend_\@", "", X86_BUG_ESPFIX
 
diff --git a/arch/x86/entry/entry_64.S b/arch/x86/entry/entry_64.S
index de6469dffe3a..1a88ad8a7b48 100644
--- a/arch/x86/entry/entry_64.S
+++ b/arch/x86/entry/entry_64.S
@@ -190,7 +190,7 @@ SYM_FUNC_START(__switch_to_asm)
 
 #ifdef CONFIG_STACKPROTECTOR
 	movq	TASK_stack_canary(%rsi), %rbx
-	movq	%rbx, PER_CPU_VAR(fixed_percpu_data) + FIXED_stack_canary
+	movq	%rbx, PER_CPU_VAR(fixed_percpu_data + FIXED_stack_canary)
 #endif
 
 	/*
diff --git a/arch/x86/kernel/head_64.S b/arch/x86/kernel/head_64.S
index 086a2c3aaaa0..3dcabbc49149 100644
--- a/arch/x86/kernel/head_64.S
+++ b/arch/x86/kernel/head_64.S
@@ -448,7 +448,7 @@ SYM_CODE_START(soft_restart_cpu)
 	UNWIND_HINT_END_OF_STACK
 
 	/* Find the idle task stack */
-	movq	PER_CPU_VAR(pcpu_hot) + X86_current_task, %rcx
+	movq	PER_CPU_VAR(pcpu_hot + X86_current_task), %rcx
 	movq	TASK_threadsp(%rcx), %rsp
 
 	jmp	.Ljump_to_C_code
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Tue Oct 17 16:28:38 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 17 Oct 2023 16:28:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618301.961771 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsmvt-0006Ti-0r; Tue, 17 Oct 2023 16:28:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618301.961771; Tue, 17 Oct 2023 16:28: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 1qsmvs-0006Tb-UJ; Tue, 17 Oct 2023 16:28:36 +0000
Received: by outflank-mailman (input) for mailman id 618301;
 Tue, 17 Oct 2023 16:28: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=QyJ2=F7=gmail.com=ubizjak@srs-se1.protection.inumbo.net>)
 id 1qsmvs-0006TK-1E
 for xen-devel@lists.xenproject.org; Tue, 17 Oct 2023 16:28:36 +0000
Received: from mail-ed1-x52c.google.com (mail-ed1-x52c.google.com
 [2a00:1450:4864:20::52c])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 37eb42db-6d0a-11ee-98d4-6d05b1d4d9a1;
 Tue, 17 Oct 2023 18:28:35 +0200 (CEST)
Received: by mail-ed1-x52c.google.com with SMTP id
 4fb4d7f45d1cf-53ed4688b9fso3797044a12.0
 for <xen-devel@lists.xenproject.org>; Tue, 17 Oct 2023 09:28:35 -0700 (PDT)
Received: from localhost.localdomain ([46.248.82.114])
 by smtp.gmail.com with ESMTPSA id
 b42-20020a509f2d000000b0053e43492ef1sm1515759edf.65.2023.10.17.09.28.33
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Tue, 17 Oct 2023 09:28: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: 37eb42db-6d0a-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1697560114; x=1698164914; 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=ACjTlp17z+YNibGqC8x+geAURHF1Kan1uHKDOj47eKE=;
        b=LOe3E3emijm5Bb4IbJ+jGKf89tb/xlrLP8yXAc7ayImM94tSZFVQMo9i7jDx83VEyD
         HIHEDedOKh3Re6qF6seOvODiWFAV763nbnqs7v/p/J+7NX6YPeeIYx9Cf1qEB5yjQTyq
         rhhJpcoT2NjbZrsMuD6Xkg5CJG0eNfyIb1SyleRxuokCX8rtNLDKXl6EddTAxLO/DEJi
         hM1mFe6bbc0vXC00jBrz9mRIKvgyhJp2mB0jrNPWGyaJ4nBGFPm08xqlhTyLjdsV0SJP
         cdOnwMcHg7Zu3ir+607UCb/ultaOLItmgoOanwWNKck8eKQ1+nIovAW2/W6IhH1nWTGn
         u51Q==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697560114; x=1698164914;
        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=ACjTlp17z+YNibGqC8x+geAURHF1Kan1uHKDOj47eKE=;
        b=C/r4vTlSTp4AjfGKkPJsMsCCV4dMzc+K6FURg3Bf9eRy1nj6UeEsJDh7UztZilkUgW
         fMzO0SVbNTmCwXNOuV3X+rm6307e6a2A4RQZB7jPjUV0JxHqGT9z0LhZAFOxIEeFyqC1
         UBb4bCMcpAfOTJF4hLiDE5rutYbQIzmtRudG6bkveV+biJlkM+VChxnr5gn+n9OwADzh
         rLuH7QufuXgJXgXunyRIvN6WvD1a6dZ2nCsNM23hA6CmDaw058cgFZ+a76X+ILlYtEvL
         hWLv4U0xWG4+L747FnIxPmGsEB5Ce2Vd9hk/xdEP/9GsCN/uK2XqEGHMv9HDvpyKD0BK
         3adQ==
X-Gm-Message-State: AOJu0YxVW5pUs/MOToOParCcBnJR8Z8Rn0qld4n7ndVlw6MyloC9D7tF
	uvbQF733tewZCDeTiSTfY7I=
X-Google-Smtp-Source: AGHT+IHDOoG54XbWT0w4HYKSIqNwfcnUP1l4hxV6R0suamSju/kc2UdPTin8Cao44o+9eCfjSpu0mg==
X-Received: by 2002:a05:6402:350b:b0:53e:2c49:8041 with SMTP id b11-20020a056402350b00b0053e2c498041mr2333292edd.8.1697560114667;
        Tue, 17 Oct 2023 09:28:34 -0700 (PDT)
From: Uros Bizjak <ubizjak@gmail.com>
To: x86@kernel.org,
	xen-devel@lists.xenproject.org,
	linux-kernel@vger.kernel.org
Cc: Uros Bizjak <ubizjak@gmail.com>,
	Juergen Gross <jgross@suse.com>,
	Thomas Gleixner <tglx@linutronix.de>,
	Ingo Molnar <mingo@kernel.org>,
	Borislav Petkov <bp@alien8.de>,
	Dave Hansen <dave.hansen@linux.intel.com>,
	"H. Peter Anvin" <hpa@zytor.com>,
	Boris Ostrovsky <boris.ostrovsky@oracle.com>
Subject: [PATCH -tip v3 2/3] x86/percpu, xen: Correct PER_CPU_VAR usage to include symbol and its addend
Date: Tue, 17 Oct 2023 18:27:33 +0200
Message-ID: <20231017162811.200569-2-ubizjak@gmail.com>
X-Mailer: git-send-email 2.41.0
In-Reply-To: <20231017162811.200569-1-ubizjak@gmail.com>
References: <20231017162811.200569-1-ubizjak@gmail.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

PER_CPU_VAR macro should be applied to a symbol and its addend.
Inconsistent usage is currently harmless, but needs to be corrected
before %rip-relative addressing is introduced to PER_CPU_VAR macro.

No functional changes intended.

Cc: Juergen Gross <jgross@suse.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Ingo Molnar <mingo@kernel.org>
Cc: Borislav Petkov <bp@alien8.de>
Cc: Dave Hansen <dave.hansen@linux.intel.com>
Cc: "H. Peter Anvin" <hpa@zytor.com>
Reviewed-by: Boris Ostrovsky <boris.ostrovsky@oracle.com>
Signed-off-by: Uros Bizjak <ubizjak@gmail.com>
---
 arch/x86/xen/xen-asm.S | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/arch/x86/xen/xen-asm.S b/arch/x86/xen/xen-asm.S
index 9e5e68008785..448958ddbaf8 100644
--- a/arch/x86/xen/xen-asm.S
+++ b/arch/x86/xen/xen-asm.S
@@ -28,7 +28,7 @@
  * non-zero.
  */
 SYM_FUNC_START(xen_irq_disable_direct)
-	movb $1, PER_CPU_VAR(xen_vcpu_info) + XEN_vcpu_info_mask
+	movb $1, PER_CPU_VAR(xen_vcpu_info + XEN_vcpu_info_mask)
 	RET
 SYM_FUNC_END(xen_irq_disable_direct)
 
@@ -69,7 +69,7 @@ SYM_FUNC_END(check_events)
 SYM_FUNC_START(xen_irq_enable_direct)
 	FRAME_BEGIN
 	/* Unmask events */
-	movb $0, PER_CPU_VAR(xen_vcpu_info) + XEN_vcpu_info_mask
+	movb $0, PER_CPU_VAR(xen_vcpu_info + XEN_vcpu_info_mask)
 
 	/*
 	 * Preempt here doesn't matter because that will deal with any
@@ -78,7 +78,7 @@ SYM_FUNC_START(xen_irq_enable_direct)
 	 */
 
 	/* Test for pending */
-	testb $0xff, PER_CPU_VAR(xen_vcpu_info) + XEN_vcpu_info_pending
+	testb $0xff, PER_CPU_VAR(xen_vcpu_info + XEN_vcpu_info_pending)
 	jz 1f
 
 	call check_events
@@ -97,7 +97,7 @@ SYM_FUNC_END(xen_irq_enable_direct)
  * x86 use opposite senses (mask vs enable).
  */
 SYM_FUNC_START(xen_save_fl_direct)
-	testb $0xff, PER_CPU_VAR(xen_vcpu_info) + XEN_vcpu_info_mask
+	testb $0xff, PER_CPU_VAR(xen_vcpu_info + XEN_vcpu_info_mask)
 	setz %ah
 	addb %ah, %ah
 	RET
@@ -113,7 +113,7 @@ SYM_FUNC_END(xen_read_cr2);
 
 SYM_FUNC_START(xen_read_cr2_direct)
 	FRAME_BEGIN
-	_ASM_MOV PER_CPU_VAR(xen_vcpu_info) + XEN_vcpu_info_arch_cr2, %_ASM_AX
+	_ASM_MOV PER_CPU_VAR(xen_vcpu_info + XEN_vcpu_info_arch_cr2), %_ASM_AX
 	FRAME_END
 	RET
 SYM_FUNC_END(xen_read_cr2_direct);
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Tue Oct 17 16:28:38 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 17 Oct 2023 16:28:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618303.961791 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsmvu-0006xn-HV; Tue, 17 Oct 2023 16:28:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618303.961791; Tue, 17 Oct 2023 16: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 1qsmvu-0006xM-DH; Tue, 17 Oct 2023 16:28:38 +0000
Received: by outflank-mailman (input) for mailman id 618303;
 Tue, 17 Oct 2023 16:28: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=QyJ2=F7=gmail.com=ubizjak@srs-se1.protection.inumbo.net>)
 id 1qsmvs-0006TK-MO
 for xen-devel@lists.xenproject.org; Tue, 17 Oct 2023 16:28:36 +0000
Received: from mail-ed1-x52f.google.com (mail-ed1-x52f.google.com
 [2a00:1450:4864:20::52f])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 386344da-6d0a-11ee-98d4-6d05b1d4d9a1;
 Tue, 17 Oct 2023 18:28:35 +0200 (CEST)
Received: by mail-ed1-x52f.google.com with SMTP id
 4fb4d7f45d1cf-53e855d7dacso5458224a12.0
 for <xen-devel@lists.xenproject.org>; Tue, 17 Oct 2023 09:28:35 -0700 (PDT)
Received: from localhost.localdomain ([46.248.82.114])
 by smtp.gmail.com with ESMTPSA id
 b42-20020a509f2d000000b0053e43492ef1sm1515759edf.65.2023.10.17.09.28.34
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Tue, 17 Oct 2023 09:28: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: 386344da-6d0a-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1697560115; x=1698164915; 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=wd8+uivnFNjs5ojARqpzKIhd4CLZvYGC8SduRH3wwns=;
        b=kxdTIuJaIxwTj1s56hcO5ngaX8pCDYJPENFgGbH7OSAwTjU7/xmlRhIzfgKk835UOY
         8InkykWBusnFEb/rBA+9fvjH0BqF5ZSM98HEmzslrVu40cg1CDkouIdK/Dw1cqP/PL6W
         LpiJlvq4cID84Fb8AGcu4f2PqC1mAYFEB9b5yoc2U2HLHdzd/mpY9Vu3qscAEhMNGC3S
         dAOZQC0IvNoeIj8OnrWN5znl6S1/4fV0cL1s2N07lE2ztj9G8PES/e0owrFeikHmGtQ2
         CSx90aXsYJno/qpLaAAKtrYpZwKDBq22sojL6Q/VFwfw+6cJJJhYmYibC9cb74B62nBn
         scAA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697560115; x=1698164915;
        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=wd8+uivnFNjs5ojARqpzKIhd4CLZvYGC8SduRH3wwns=;
        b=dXWn8Z499Po0Ghq95V5L50l5PyFPvFCSSgT5/U28F0uYU7+AByoQqZfXw5A34f9tcK
         croj07hriCiiPcNGkKowSi3asQFhp+qOEJ0oQcKwWzmBZScOIKu8ey2iPJbw2jF8S39N
         MjxTGLlKl8JX67mtzaY1ydkH426qWxdKq2zSJRmrNqkQzS+g4yeDSpgII8Ds4DgyqbYN
         V1Qy+xlFuypQDtMqCyxe1tSjbEKQmpI6SiA/4gG8VBatZwqvzj4JoLn27+N1I7gRKJZa
         jSe9sGKXba/fGZ4OwXbEDSSlbcHUsBtxq1Qf0I0s+hKDYXvbb+kylfGoSoTGnLW6Nk5S
         l6vg==
X-Gm-Message-State: AOJu0YwFDe6ezg3gKhZ3XjUhzhBkNovsD0yGog/U0OB+T/t4HoljqgdV
	HmT/mvr/XRDyZj3W66sCC3U=
X-Google-Smtp-Source: AGHT+IExRfgqF0ar4Uw/lTAoo37yoBstxFb3XX7ZSKhbmacQBwgsvAn76tNJe1OaOZAOL02C479skw==
X-Received: by 2002:a05:6402:26d4:b0:53e:37d1:a31f with SMTP id x20-20020a05640226d400b0053e37d1a31fmr2427959edd.28.1697560115437;
        Tue, 17 Oct 2023 09:28:35 -0700 (PDT)
From: Uros Bizjak <ubizjak@gmail.com>
To: x86@kernel.org,
	xen-devel@lists.xenproject.org,
	linux-kernel@vger.kernel.org
Cc: Uros Bizjak <ubizjak@gmail.com>,
	Thomas Gleixner <tglx@linutronix.de>,
	Ingo Molnar <mingo@kernel.org>,
	Borislav Petkov <bp@alien8.de>,
	Dave Hansen <dave.hansen@linux.intel.com>,
	"H. Peter Anvin" <hpa@zytor.com>,
	Peter Zijlstra <peterz@infradead.org>
Subject: [PATCH -tip v3 3/3] x86/percpu: Introduce %rip-relative addressing to PER_CPU_VAR
Date: Tue, 17 Oct 2023 18:27:34 +0200
Message-ID: <20231017162811.200569-3-ubizjak@gmail.com>
X-Mailer: git-send-email 2.41.0
In-Reply-To: <20231017162811.200569-1-ubizjak@gmail.com>
References: <20231017162811.200569-1-ubizjak@gmail.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Introduce x86_64 %rip-relative addressing to PER_CPU_VAR macro.
Instructions using %rip-relative address operand are one byte shorter
than their absolute address counterparts and are also compatible with
position independent executable (-fpie) build. The patch reduces
code size of a test kernel build by 150 bytes.

PER_CPU_VAR macro is intended to be applied to a symbol and should
not be used with register operands. Introduce new __percpu macro and
use it in cmpxchg{8,16}b_emu.S instead.

Also add a missing function comment to this_cpu_cmpxchg8b_emu.

No functional changes intended.

Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Ingo Molnar <mingo@kernel.org>
Cc: Borislav Petkov <bp@alien8.de>
Cc: Dave Hansen <dave.hansen@linux.intel.com>
Cc: "H. Peter Anvin" <hpa@zytor.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Signed-off-by: Uros Bizjak <ubizjak@gmail.com>
--
v2: Introduce PER_CPU_ARG macro to conditionally enable
    segment registers in cmpxchg{8,16}b_emu.S for CONFIG_SMP.
v3: Introduce __percpu macro instead of PER_CPU_ARG (hpa).
---
 arch/x86/include/asm/percpu.h | 12 ++++++++----
 arch/x86/lib/cmpxchg16b_emu.S | 12 ++++++------
 arch/x86/lib/cmpxchg8b_emu.S  | 30 +++++++++++++++++++++---------
 3 files changed, 35 insertions(+), 19 deletions(-)

diff --git a/arch/x86/include/asm/percpu.h b/arch/x86/include/asm/percpu.h
index 54746903b8c3..02f1780f02f5 100644
--- a/arch/x86/include/asm/percpu.h
+++ b/arch/x86/include/asm/percpu.h
@@ -4,17 +4,21 @@
 
 #ifdef CONFIG_X86_64
 #define __percpu_seg		gs
+#define __percpu_rel		(%rip)
 #else
 #define __percpu_seg		fs
+#define __percpu_rel
 #endif
 
 #ifdef __ASSEMBLY__
 
 #ifdef CONFIG_SMP
-#define PER_CPU_VAR(var)	%__percpu_seg:var
-#else /* ! SMP */
-#define PER_CPU_VAR(var)	var
-#endif	/* SMP */
+#define __percpu		%__percpu_seg:
+#else
+#define __percpu
+#endif
+
+#define PER_CPU_VAR(var)	__percpu(var)__percpu_rel
 
 #ifdef CONFIG_X86_64_SMP
 #define INIT_PER_CPU_VAR(var)  init_per_cpu__##var
diff --git a/arch/x86/lib/cmpxchg16b_emu.S b/arch/x86/lib/cmpxchg16b_emu.S
index 6962df315793..4fb44894ad87 100644
--- a/arch/x86/lib/cmpxchg16b_emu.S
+++ b/arch/x86/lib/cmpxchg16b_emu.S
@@ -23,14 +23,14 @@ SYM_FUNC_START(this_cpu_cmpxchg16b_emu)
 	cli
 
 	/* if (*ptr == old) */
-	cmpq	PER_CPU_VAR(0(%rsi)), %rax
+	cmpq	__percpu (%rsi), %rax
 	jne	.Lnot_same
-	cmpq	PER_CPU_VAR(8(%rsi)), %rdx
+	cmpq	__percpu 8(%rsi), %rdx
 	jne	.Lnot_same
 
 	/* *ptr = new */
-	movq	%rbx, PER_CPU_VAR(0(%rsi))
-	movq	%rcx, PER_CPU_VAR(8(%rsi))
+	movq	%rbx, __percpu (%rsi)
+	movq	%rcx, __percpu 8(%rsi)
 
 	/* set ZF in EFLAGS to indicate success */
 	orl	$X86_EFLAGS_ZF, (%rsp)
@@ -42,8 +42,8 @@ SYM_FUNC_START(this_cpu_cmpxchg16b_emu)
 	/* *ptr != old */
 
 	/* old = *ptr */
-	movq	PER_CPU_VAR(0(%rsi)), %rax
-	movq	PER_CPU_VAR(8(%rsi)), %rdx
+	movq	__percpu (%rsi), %rax
+	movq	__percpu 8(%rsi), %rdx
 
 	/* clear ZF in EFLAGS to indicate failure */
 	andl	$(~X86_EFLAGS_ZF), (%rsp)
diff --git a/arch/x86/lib/cmpxchg8b_emu.S b/arch/x86/lib/cmpxchg8b_emu.S
index 873e4ef23e49..1c96be769adc 100644
--- a/arch/x86/lib/cmpxchg8b_emu.S
+++ b/arch/x86/lib/cmpxchg8b_emu.S
@@ -24,12 +24,12 @@ SYM_FUNC_START(cmpxchg8b_emu)
 	pushfl
 	cli
 
-	cmpl	0(%esi), %eax
+	cmpl	(%esi), %eax
 	jne	.Lnot_same
 	cmpl	4(%esi), %edx
 	jne	.Lnot_same
 
-	movl	%ebx, 0(%esi)
+	movl	%ebx, (%esi)
 	movl	%ecx, 4(%esi)
 
 	orl	$X86_EFLAGS_ZF, (%esp)
@@ -38,7 +38,7 @@ SYM_FUNC_START(cmpxchg8b_emu)
 	RET
 
 .Lnot_same:
-	movl	0(%esi), %eax
+	movl	(%esi), %eax
 	movl	4(%esi), %edx
 
 	andl	$(~X86_EFLAGS_ZF), (%esp)
@@ -53,18 +53,30 @@ EXPORT_SYMBOL(cmpxchg8b_emu)
 
 #ifndef CONFIG_UML
 
+/*
+ * Emulate 'cmpxchg8b %fs:(%rsi)'
+ *
+ * Inputs:
+ * %esi : memory location to compare
+ * %eax : low 32 bits of old value
+ * %edx : high 32 bits of old value
+ * %ebx : low 32 bits of new value
+ * %ecx : high 32 bits of new value
+ *
+ * Notably this is not LOCK prefixed and is not safe against NMIs
+ */
 SYM_FUNC_START(this_cpu_cmpxchg8b_emu)
 
 	pushfl
 	cli
 
-	cmpl	PER_CPU_VAR(0(%esi)), %eax
+	cmpl	__percpu (%esi), %eax
 	jne	.Lnot_same2
-	cmpl	PER_CPU_VAR(4(%esi)), %edx
+	cmpl	__percpu 4(%esi), %edx
 	jne	.Lnot_same2
 
-	movl	%ebx, PER_CPU_VAR(0(%esi))
-	movl	%ecx, PER_CPU_VAR(4(%esi))
+	movl	%ebx, __percpu (%esi)
+	movl	%ecx, __percpu 4(%esi)
 
 	orl	$X86_EFLAGS_ZF, (%esp)
 
@@ -72,8 +84,8 @@ SYM_FUNC_START(this_cpu_cmpxchg8b_emu)
 	RET
 
 .Lnot_same2:
-	movl	PER_CPU_VAR(0(%esi)), %eax
-	movl	PER_CPU_VAR(4(%esi)), %edx
+	movl	__percpu (%esi), %eax
+	movl	__percpu 4(%esi), %edx
 
 	andl	$(~X86_EFLAGS_ZF), (%esp)
 
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Tue Oct 17 16:36:26 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 17 Oct 2023 16:36:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618310.961801 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsn3O-0001XZ-9L; Tue, 17 Oct 2023 16:36:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618310.961801; Tue, 17 Oct 2023 16:36: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 1qsn3O-0001XS-6r; Tue, 17 Oct 2023 16:36:22 +0000
Received: by outflank-mailman (input) for mailman id 618310;
 Tue, 17 Oct 2023 16:36: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=tHSl=F7=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qsn3N-0001XM-0C
 for xen-devel@lists.xenproject.org; Tue, 17 Oct 2023 16:36:21 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 4c46517c-6d0b-11ee-9b0e-b553b5be7939;
 Tue, 17 Oct 2023 18:36:18 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id 6670B4EE0738;
 Tue, 17 Oct 2023 18:36: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: 4c46517c-6d0b-11ee-9b0e-b553b5be7939
MIME-Version: 1.0
Date: Tue, 17 Oct 2023 18:36:18 +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.cooper3@citrix.com, roger.pau@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][for-4.19 v2 6/7] xen/console: make function static
 inline
In-Reply-To: <ed66744c-5e80-7050-eae8-06afa4d060c1@suse.com>
References: <cover.1696833629.git.nicola.vetrini@bugseng.com>
 <6ca7d9834079b7824f9432799cce2308aa88d159.1696833629.git.nicola.vetrini@bugseng.com>
 <5cad5cef-27b7-58ef-42f1-8c4a83497f4b@suse.com>
 <1dd47c07730ae143963891d79148e8f0@bugseng.com>
 <ed66744c-5e80-7050-eae8-06afa4d060c1@suse.com>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <229f4b85a9aef936d2f9864874de6d9f@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 17/10/2023 18:26, Jan Beulich wrote:
> On 17.10.2023 17:24, Nicola Vetrini wrote:
>> On 16/10/2023 16:52, Jan Beulich wrote:
>>> On 09.10.2023 08:54, Nicola Vetrini wrote:
>>>> --- a/xen/include/xen/consoled.h
>>>> +++ b/xen/include/xen/consoled.h
>>>> @@ -12,7 +12,7 @@ size_t consoled_guest_tx(char c);
>>>> 
>>>>  #else
>>>> 
>>>> -size_t consoled_guest_tx(char c) { return 0; }
>>>> +static inline size_t consoled_guest_tx(char c) { return 0; }
>>> 
>>> Why inline? We do so in headers, but we generally avoid "inline" in
>>> .c files.
>> 
>> Yes. The file modified is in fact an header.
> 
> Hmm, how did I not pay attention? Yet then a different question arises:
> Without the "static inline" I'd expect this to result in a build error
> from any two .c files including this header. Yet we aren't aware of
> such a build issue, so I wonder whether the stub is needed in the first
> place.
> 
> Jan

This is a good observation. Right now I see only one caller, that is 
conditioned on
both CONFIG_X86 and pv_shim and pv_console, making this stub unused as 
far as I can tell.
It might indeed be a good idea to drop it.

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


From xen-devel-bounces@lists.xenproject.org Tue Oct 17 17:47:25 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 17 Oct 2023 17:47:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618317.961812 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qso9t-0005gv-DJ; Tue, 17 Oct 2023 17:47:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618317.961812; Tue, 17 Oct 2023 17:47: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 1qso9t-0005go-Al; Tue, 17 Oct 2023 17:47:09 +0000
Received: by outflank-mailman (input) for mailman id 618317;
 Tue, 17 Oct 2023 17:47: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=QnrG=F7=collabora.com=dmitry.osipenko@srs-se1.protection.inumbo.net>)
 id 1qso9s-0005gi-Ap
 for xen-devel@lists.xenproject.org; Tue, 17 Oct 2023 17:47:08 +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 2edfe77e-6d15-11ee-9b0e-b553b5be7939;
 Tue, 17 Oct 2023 19:47:04 +0200 (CEST)
Received: from [192.168.2.39] (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 354A166030BF;
 Tue, 17 Oct 2023 18:47:02 +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: 2edfe77e-6d15-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=collabora.com;
	s=mail; t=1697564824;
	bh=7IsusT1dT12JlmsWi9fTD4lUiRDuxbrgFdaEhWCoJCc=;
	h=Date:Subject:To:Cc:References:From:In-Reply-To:From;
	b=HqEcLArg8mFxNxd6e0qNpQnrW/kTfGv9MFOTfihiBbA4ALKaa60aAYs3U45zbolVk
	 YZBWCy2RzPd0CCq39L0nUWRED41AUzcenQJs0SLWp/8sMxKvG3wzCrfMotL7TIjhHx
	 PfAAOxs1mBQT1tBn4LDjAGjjJ/zKIshrSX56s7RdU4JQDxBEa4RBMse8ZUOXPA+CEp
	 KKqgQTl8Sk3bx92mT0elWyVa62zHIGtw3x5RjEaKMXwoXtakNcx0pMJOthySgvsbJR
	 Sax8j8eAxAXSkrsq5A7dO3VqkY6InDoi3sCEAxkzQuCMNH6MCnCXjCYrI13PBB6KpP
	 7BQEV+XKTyAwg==
Message-ID: <1d902287-2ebf-fe0a-ccbd-bf671c04eddf@collabora.com>
Date: Tue, 17 Oct 2023 20:46:59 +0300
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 PATCH v5 05/13] virtio-gpu: Configure context init for
 virglrenderer
Content-Language: en-US
To: =?UTF-8?Q?Daniel_P=2e_Berrang=c3=a9?= <berrange@redhat.com>
Cc: Huang Rui <ray.huang@amd.com>, 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>,
 =?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>,
 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-6-ray.huang@amd.com>
 <16520a76-7177-f97c-049b-302d8baea616@collabora.com>
 <ZSU6pqcyBxTPTcwc@redhat.com>
From: Dmitry Osipenko <dmitry.osipenko@collabora.com>
In-Reply-To: <ZSU6pqcyBxTPTcwc@redhat.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 10/10/23 14:51, Daniel P. Berrangé wrote:
> On Tue, Oct 10, 2023 at 02:41:22PM +0300, Dmitry Osipenko wrote:
>> On 9/15/23 14:11, 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>
>>> ---
>>>
>>> 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))
>> The "cc.has_function" doesn't work properly with PKG_CONFIG_PATH. It ignores the the given pkg and uses system includes. Antonio was aware about that problem [1].
>>
>> [1] https://gitlab.freedesktop.org/Fahien/qemu/-/commit/ea1c252a707940983ccce71e92a292b49496bfcd
>>
>> Given that virglrenderer 1.0 has been released couple weeks ago,
>> can we make the v1.0 a mandatory requirement for qemu and remove
>> all the ifdefs? I doubt that anyone is going to test newer qemu
>> using older libviglrenderer, all that ifdef code will be bitrotting.
> 
> We cannot do that. If is is only weeks old, no distro will
> have virglrenderer 1.0 present. QEMU has a defined set of
> platforms that it targets compatibility with:
> 
>   https://www.qemu.org/docs/master/about/build-platforms.html
> 
> For newly added functionality we can set the min version to
> something newer than the oldest QEMU target platform.
> 
> For existing functionality though, we must not regress wrt
> the currently supported set of target platforms. So we can
> only bump the min version to that present in the oldest
> platform we target.

Well, then alternatively we could specify supported libvirglrender
features based on the lib version to avoid those pkgconfig+meson troubles.

-- 
Best regards,
Dmitry



From xen-devel-bounces@lists.xenproject.org Tue Oct 17 18:03:32 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 17 Oct 2023 18:03:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618321.961822 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsoPZ-0000Py-St; Tue, 17 Oct 2023 18:03:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618321.961822; Tue, 17 Oct 2023 18:03: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 1qsoPZ-0000Pr-Pe; Tue, 17 Oct 2023 18:03:21 +0000
Received: by outflank-mailman (input) for mailman id 618321;
 Tue, 17 Oct 2023 18:03: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=qm1H=F7=casper.srs.infradead.org=BATV+e442e50539a6073fd887+7359+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qsoPX-0000Pl-VR
 for xen-devel@lists.xenproject.org; Tue, 17 Oct 2023 18:03:20 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 7320e3ba-6d17-11ee-98d4-6d05b1d4d9a1;
 Tue, 17 Oct 2023 20:03:18 +0200 (CEST)
Received: from [2001:8b0:10b:5:b9aa:f92b:5d4c:b38]
 (helo=u3832b3a9db3152.ant.amazon.com)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qsoP6-00DlaR-Uz; Tue, 17 Oct 2023 18:02: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: 7320e3ba-6d17-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=MIME-Version:Content-Type:References:
	In-Reply-To:Date:Cc:To:From:Subject:Message-ID:Sender:Reply-To:
	Content-Transfer-Encoding:Content-ID:Content-Description;
	bh=8Z/G+xXxoqLc1oVYvgSvXAHrzhv9Z4bWUcJP/KnzsOE=; b=jwjtHEO2FKTFm8J9ww6LrJT+yt
	E/BOdsexhcXeJ5Y4jTgFUTtdgkU/NNVjdzbYPj4hqgtlN2LJuF2ZUbsyTgRTE0FkwkVuvVNoGzofY
	ZkQcWnhDs9/uMYcNWCdqn9VDMr1GpRCpFjgTZj/mX5pdztpw8V/lSONKCz00mQg1MqUQrH2Y94rQ0
	MYe3lZKolFLW9KROvwLV17SURXmGPMD/x15Jw6vKjp4qK42+kdRQeJYuoUX5dgc+pB9uOF1j4FwBE
	ZzU8LhU+/IXnfq/uH6LBtr+Hwt8riZtIgILaZlsQ92jVBkzmYMiNJQiztEwXGU8QxspAuMOFakbx9
	d28vqLJA==;
Message-ID: <ffbe26420b1bcc4ccecb110143d3856603b67d54.camel@infradead.org>
Subject: Re: [PATCH 11/12] hw/xen: automatically assign device index to
 block devices
From: David Woodhouse <dwmw2@infradead.org>
To: Kevin Wolf <kwolf@redhat.com>
Cc: qemu-devel@nongnu.org, Hanna Reitz <hreitz@redhat.com>, Stefano
 Stabellini <sstabellini@kernel.org>, Anthony Perard
 <anthony.perard@citrix.com>, Paul Durrant <paul@xen.org>,
 =?ISO-8859-1?Q?Marc-Andr=E9?= Lureau <marcandre.lureau@redhat.com>,  Paolo
 Bonzini <pbonzini@redhat.com>, "Michael S. Tsirkin" <mst@redhat.com>,
 Marcel Apfelbaum <marcel.apfelbaum@gmail.com>, Richard Henderson
 <richard.henderson@linaro.org>,  Eduardo Habkost <eduardo@habkost.net>,
 Marcelo Tosatti <mtosatti@redhat.com>, qemu-block@nongnu.org, 
 xen-devel@lists.xenproject.org, kvm@vger.kernel.org
Date: Tue, 17 Oct 2023 19:02:52 +0100
In-Reply-To: <ZS5gQL+KZjxOmUsk@redhat.com>
References: <20231016151909.22133-1-dwmw2@infradead.org>
	 <20231016151909.22133-12-dwmw2@infradead.org> <ZS5gQL+KZjxOmUsk@redhat.com>
Content-Type: multipart/signed; micalg="sha-256"; protocol="application/pkcs7-signature";
	boundary="=-g8ymWje5yQdoPBf4P1zh"
User-Agent: Evolution 3.44.4-0ubuntu2 
MIME-Version: 1.0
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html


--=-g8ymWje5yQdoPBf4P1zh
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Tue, 2023-10-17 at 12:21 +0200, Kevin Wolf wrote:
> Am 16.10.2023 um 17:19 hat David Woodhouse geschrieben:
> > From: David Woodhouse <dwmw@amazon.co.uk>
> >=20
> > There's no need to force the user to assign a vdev. We can automaticall=
y
> > assign one, starting at xvda and searching until we find the first disk
> > name that's unused.
> >=20
> > This means we can now allow '-drive if=3Dxen,file=3Dxxx' to work withou=
t an
> > explicit separate -driver argument, just like if=3Dvirtio.
> >=20
> > Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
>=20
> > @@ -34,6 +34,31 @@ static char *xen_block_get_name(XenDevice *xendev, E=
rror **errp)
> > =C2=A0=C2=A0=C2=A0=C2=A0 XenBlockDevice *blockdev =3D XEN_BLOCK_DEVICE(=
xendev);
> > =C2=A0=C2=A0=C2=A0=C2=A0 XenBlockVdev *vdev =3D &blockdev->props.vdev;
> > =C2=A0
> > +=C2=A0=C2=A0=C2=A0 if (blockdev->props.vdev.type =3D=3D XEN_BLOCK_VDEV=
_TYPE_INVALID) {
> > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 char name[11];
> > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 int disk =3D 0;
> > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 unsigned long idx;
> > +
> > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 /* Find an unoccupied devic=
e name */
> > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 while (disk < (1 << 20)) {
>=20
> I like your optimism that we can handle a million disks. :-)

Heh, yeah. Given that there *is* a limit, setting it lower seemed a bit
arbitrary.

For consoles I picked 100 instead of letting it go all the way to
INT_MAX, and in a patch set soon to be posted I'll do the same for the
xen-net-device as I convert it.

Even with a limit of 100, having that many devices *WITHOUT SPECIFYING
WHICH ONE IS WHICH* seems a bit many!

FWIW I've changed it to check for the existence of the *frontend* nodes
(the ones which are visible to the guest). Currently it checks for the
backend nodes, but those might be in different places.

> I haven't reviewed the Xen part in detail, but the patch looks fine on
> the block layer side.
>=20
> Acked-by: Kevin Wolf <kwolf@redhat.com>

Thanks.

--=-g8ymWje5yQdoPBf4P1zh
Content-Type: application/pkcs7-signature; name="smime.p7s"
Content-Disposition: attachment; filename="smime.p7s"
Content-Transfer-Encoding: base64

MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgEFADCABgkqhkiG9w0BBwEAAKCCEkQw
ggYQMIID+KADAgECAhBNlCwQ1DvglAnFgS06KwZPMA0GCSqGSIb3DQEBDAUAMIGIMQswCQYDVQQG
EwJVUzETMBEGA1UECBMKTmV3IEplcnNleTEUMBIGA1UEBxMLSmVyc2V5IENpdHkxHjAcBgNVBAoT
FVRoZSBVU0VSVFJVU1QgTmV0d29yazEuMCwGA1UEAxMlVVNFUlRydXN0IFJTQSBDZXJ0aWZpY2F0
aW9uIEF1dGhvcml0eTAeFw0xODExMDIwMDAwMDBaFw0zMDEyMzEyMzU5NTlaMIGWMQswCQYDVQQG
EwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYD
VQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50
aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC
AQEAyjztlApB/975Rrno1jvm2pK/KxBOqhq8gr2+JhwpKirSzZxQgT9tlC7zl6hn1fXjSo5MqXUf
ItMltrMaXqcESJuK8dtK56NCSrq4iDKaKq9NxOXFmqXX2zN8HHGjQ2b2Xv0v1L5Nk1MQPKA19xeW
QcpGEGFUUd0kN+oHox+L9aV1rjfNiCj3bJk6kJaOPabPi2503nn/ITX5e8WfPnGw4VuZ79Khj1YB
rf24k5Ee1sLTHsLtpiK9OjG4iQRBdq6Z/TlVx/hGAez5h36bBJMxqdHLpdwIUkTqT8se3ed0PewD
ch/8kHPo5fZl5u1B0ecpq/sDN/5sCG52Ds+QU5O5EwIDAQABo4IBZDCCAWAwHwYDVR0jBBgwFoAU
U3m/WqorSs9UgOHYm8Cd8rIDZsswHQYDVR0OBBYEFAnA8vwL2pTbX/4r36iZQs/J4K0AMA4GA1Ud
DwEB/wQEAwIBhjASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEF
BQcDBDARBgNVHSAECjAIMAYGBFUdIAAwUAYDVR0fBEkwRzBFoEOgQYY/aHR0cDovL2NybC51c2Vy
dHJ1c3QuY29tL1VTRVJUcnVzdFJTQUNlcnRpZmljYXRpb25BdXRob3JpdHkuY3JsMHYGCCsGAQUF
BwEBBGowaDA/BggrBgEFBQcwAoYzaHR0cDovL2NydC51c2VydHJ1c3QuY29tL1VTRVJUcnVzdFJT
QUFkZFRydXN0Q0EuY3J0MCUGCCsGAQUFBzABhhlodHRwOi8vb2NzcC51c2VydHJ1c3QuY29tMA0G
CSqGSIb3DQEBDAUAA4ICAQBBRHUAqznCFfXejpVtMnFojADdF9d6HBA4kMjjsb0XMZHztuOCtKF+
xswhh2GqkW5JQrM8zVlU+A2VP72Ky2nlRA1GwmIPgou74TZ/XTarHG8zdMSgaDrkVYzz1g3nIVO9
IHk96VwsacIvBF8JfqIs+8aWH2PfSUrNxP6Ys7U0sZYx4rXD6+cqFq/ZW5BUfClN/rhk2ddQXyn7
kkmka2RQb9d90nmNHdgKrwfQ49mQ2hWQNDkJJIXwKjYA6VUR/fZUFeCUisdDe/0ABLTI+jheXUV1
eoYV7lNwNBKpeHdNuO6Aacb533JlfeUHxvBz9OfYWUiXu09sMAviM11Q0DuMZ5760CdO2VnpsXP4
KxaYIhvqPqUMWqRdWyn7crItNkZeroXaecG03i3mM7dkiPaCkgocBg0EBYsbZDZ8bsG3a08LwEsL
1Ygz3SBsyECa0waq4hOf/Z85F2w2ZpXfP+w8q4ifwO90SGZZV+HR/Jh6rEaVPDRF/CEGVqR1hiuQ
OZ1YL5ezMTX0ZSLwrymUE0pwi/KDaiYB15uswgeIAcA6JzPFf9pLkAFFWs1QNyN++niFhsM47qod
x/PL+5jR87myx5uYdBEQkkDc+lKB1Wct6ucXqm2EmsaQ0M95QjTmy+rDWjkDYdw3Ms6mSWE3Bn7i
5ZgtwCLXgAIe5W8mybM2JzCCBhQwggT8oAMCAQICEQDGvhmWZ0DEAx0oURL6O6l+MA0GCSqGSIb3
DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYD
VQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28g
UlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMB4XDTIyMDEwNzAw
MDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJARYTZHdtdzJAaW5mcmFkZWFkLm9y
ZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3GpC2bomUqk+91wLYBzDMcCj5C9m6
oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZHh7htyAkWYVoFsFPrwHounto8xTsy
SSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT9YgcBqKCo65pTFmOnR/VVbjJk4K2
xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNjP+qDrh0db7PAjO1D4d5ftfrsf+kd
RR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy2U+eITZ5LLE5s45mX2oPFknWqxBo
bQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3BgBEmfsYWlBXO8rVXfvPgLs32VdV
NZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/7auNVRmPB3v5SWEsH8xi4Bez2V9U
KxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmdlFYhAflWKQ03Ufiu8t3iBE3VJbc2
5oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9aelIl6vtbhMA+l0nfrsORMa4kobqQ5
C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMBAAGjggHMMIIByDAfBgNVHSMEGDAW
gBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeDMcimo0oz8o1R1Nver3ZVpSkwDgYD
VR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYwFAYIKwYBBQUHAwQGCCsGAQUFBwMC
MEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYBBQUHAgEWF2h0dHBzOi8vc2VjdGln
by5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9jcmwuc2VjdGlnby5jb20vU2VjdGln
b1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1haWxDQS5jcmwwgYoGCCsGAQUFBwEB
BH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdvLmNvbS9TZWN0aWdvUlNBQ2xpZW50
QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAjBggrBgEFBQcwAYYXaHR0cDovL29j
c3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5mcmFkZWFkLm9yZzANBgkqhkiG9w0B
AQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQvQ/fzPXmtR9t54rpmI2TfyvcKgOXp
qa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvIlSPrzIB4Z2wyIGQpaPLlYflrrVFK
v9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9ChWFfgSXvrWDZspnU3Gjw/rMHrGnql
Htlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0whpBtXdyDjzBtQTaZJ7zTT/vlehc/
tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9IzCCBhQwggT8oAMCAQICEQDGvhmW
Z0DEAx0oURL6O6l+MA0GCSqGSIb3DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3Jl
YXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0
ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJl
IEVtYWlsIENBMB4XDTIyMDEwNzAwMDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJ
ARYTZHdtdzJAaW5mcmFkZWFkLm9yZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3
GpC2bomUqk+91wLYBzDMcCj5C9m6oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZH
h7htyAkWYVoFsFPrwHounto8xTsySSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT
9YgcBqKCo65pTFmOnR/VVbjJk4K2xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNj
P+qDrh0db7PAjO1D4d5ftfrsf+kdRR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy
2U+eITZ5LLE5s45mX2oPFknWqxBobQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3
BgBEmfsYWlBXO8rVXfvPgLs32VdVNZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/
7auNVRmPB3v5SWEsH8xi4Bez2V9UKxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmd
lFYhAflWKQ03Ufiu8t3iBE3VJbc25oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9ae
lIl6vtbhMA+l0nfrsORMa4kobqQ5C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMB
AAGjggHMMIIByDAfBgNVHSMEGDAWgBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeD
Mcimo0oz8o1R1Nver3ZVpSkwDgYDVR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYw
FAYIKwYBBQUHAwQGCCsGAQUFBwMCMEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYB
BQUHAgEWF2h0dHBzOi8vc2VjdGlnby5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9j
cmwuc2VjdGlnby5jb20vU2VjdGlnb1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1h
aWxDQS5jcmwwgYoGCCsGAQUFBwEBBH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdv
LmNvbS9TZWN0aWdvUlNBQ2xpZW50QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAj
BggrBgEFBQcwAYYXaHR0cDovL29jc3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5m
cmFkZWFkLm9yZzANBgkqhkiG9w0BAQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQv
Q/fzPXmtR9t54rpmI2TfyvcKgOXpqa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvI
lSPrzIB4Z2wyIGQpaPLlYflrrVFKv9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9Ch
WFfgSXvrWDZspnU3Gjw/rMHrGnqlHtlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0w
hpBtXdyDjzBtQTaZJ7zTT/vlehc/tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9
IzGCBMcwggTDAgEBMIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVz
dGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMT
NVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEA
xr4ZlmdAxAMdKFES+jupfjANBglghkgBZQMEAgEFAKCCAeswGAYJKoZIhvcNAQkDMQsGCSqGSIb3
DQEHATAcBgkqhkiG9w0BCQUxDxcNMjMxMDE3MTgwMjUyWjAvBgkqhkiG9w0BCQQxIgQgVSVJiyFQ
d5ahEA1aic++FkG4S7+GBim/tfSkLZxZ/Ocwgb0GCSsGAQQBgjcQBDGBrzCBrDCBljELMAkGA1UE
BhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEYMBYG
A1UEChMPU2VjdGlnbyBMaW1pdGVkMT4wPAYDVQQDEzVTZWN0aWdvIFJTQSBDbGllbnQgQXV0aGVu
dGljYXRpb24gYW5kIFNlY3VyZSBFbWFpbCBDQQIRAMa+GZZnQMQDHShREvo7qX4wgb8GCyqGSIb3
DQEJEAILMYGvoIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVy
MRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNl
Y3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEAxr4Z
lmdAxAMdKFES+jupfjANBgkqhkiG9w0BAQEFAASCAgBkaaX42hxtUsGcZwvSgdormRawhFeK3Uuf
QvYrmT6E6CijbxldljD3rx2Dm7ZMxoeZUPYnvCmLAEsCgAGv5jcW0hpAsITdIabeDwaLKD8cItiV
kjdJkcqNqqPArhJ/ubrkR8+UMbTFIANCKK0y+F4ARok6nesCUIp5swPx2IwOJ5i2lA7HEU/y3cUW
Utu3ts6Ugq6mFSsre1jDKooHiNGq63d8sWP1N5u79ypSQbs/j+T4qgpgCVMsutDs32uabkZWk4Cl
Pq2Y0prcEsU8iTHfrzwEow69U1Va2jGfBR7C6I3aObevxo9BwXbgyDd+SPQfoBQRDGFGQxqUgcTL
DcBQY2ka6VLLxKl2DS4ncb9BUgy2S9quMqIKaKec9ofPYyiOJMqAWU9VGT8hKAGcul6RqR2s4KJI
X7oHoqRuzp+wu8PrM1q02RucQcHrJC2cFsXzBy66BtiEkpmnqEbTft9MO5a2mtyenngZZOhKnSLJ
vtkMk+2DxtAAIwYMzXxHtMSkef8xp6VtIR8ocLsfM/r/5l17garKSq9QxnHwndhWlPkDXxvarNle
tajs9XtaTtWi1B/mLOTEGE1vTPa2fx9eBlBC7KubxQsjGpmB9ue/rOiAOf9aCc3g7WEvIvCTrd2M
5zMO592J78sP33uBsTnm22N2HKoQCwMacSV0dVBifQAAAAAAAA==


--=-g8ymWje5yQdoPBf4P1zh--


From xen-devel-bounces@lists.xenproject.org Tue Oct 17 18:13:29 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 17 Oct 2023 18:13:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618326.961831 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsoZI-0002W8-PA; Tue, 17 Oct 2023 18:13:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618326.961831; Tue, 17 Oct 2023 18: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 1qsoZI-0002W1-Mc; Tue, 17 Oct 2023 18:13:24 +0000
Received: by outflank-mailman (input) for mailman id 618326;
 Tue, 17 Oct 2023 18:13: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 1qsoZH-0002Vv-5g
 for xen-devel@lists.xenproject.org; Tue, 17 Oct 2023 18:13: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 1qsoZG-00048m-Sc; Tue, 17 Oct 2023 18:13:22 +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 1qsoZG-00078A-J8; Tue, 17 Oct 2023 18:13: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=wC1/0PukIRonx3dtGo4ro4BLNmVgYugQ4QkYYYBnicM=; b=ljIwagHARvTjxELy4X8jnDH6aP
	2o02Q339VkJzKh+8TPXmueTxrm2XV44PNT4U+uoWROiShOpPgb1yeLQFP3l6m+yXu86J1M0JjOPFK
	cO9v0uZfuxb9bD4LE4tZ1jEsJmCfGpXJP02gP+QuvUq0YLfMRY8gyuNYZcdwqjHPVfJQ=;
Message-ID: <c31aa392-bc06-4631-be3c-2973c74dfa51@xen.org>
Date: Tue, 17 Oct 2023 19:13:20 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v7 8/8] xen/arm: mmu: move MMU specific P2M code to
 mmu/p2m.{c,h}
Content-Language: en-GB
To: Henry Wang <Henry.Wang@arm.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 Penny Zheng <Penny.Zheng@arm.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Bertrand Marquis <Bertrand.Marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, Wei Chen <Wei.Chen@arm.com>
References: <20231009010313.3668423-1-Henry.Wang@arm.com>
 <20231009010313.3668423-9-Henry.Wang@arm.com>
 <af6a376c-a224-45d7-9972-d69ee44239d6@xen.org>
 <038DAAA9-25B5-4DDD-8206-35C3BCF69360@arm.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <038DAAA9-25B5-4DDD-8206-35C3BCF69360@arm.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

Hi Henry,

On 17/10/2023 06:55, Henry Wang wrote:
>> On Oct 14, 2023, at 02:22, Julien Grall <julien@xen.org> wrote:
>>
>> Hi Henry,
>>
>> On 09/10/2023 02:03, Henry Wang wrote:
>>>
>>> diff --git a/xen/arch/arm/include/asm/p2m.h b/xen/arch/arm/include/asm/p2m.h
>>> index 940495d42b..a9622dac9a 100644
>>> --- a/xen/arch/arm/include/asm/p2m.h
>>> +++ b/xen/arch/arm/include/asm/p2m.h
>>> @@ -19,6 +19,22 @@ extern unsigned int p2m_root_level;
>>>   #define P2M_ROOT_ORDER    p2m_root_order
>>
>> You seem to use P2M_ROOT_ORDER to allocate p2m->root in arm/p2m.c. However, as I mentioned before, I don't think the defintion of p2m->root is suitable for the MPU. I think the two functions using p2m->root should be moved in mmu/p2m.c and P2M_ROOT_ORDER should be moved in mmu/p2m.h.
> 
> While working on this, I noticed that if we move p2m_final_teardown() (one of the two
> functions you mentioned that consuming p2m->root), we also need to move the static
> function p2m_free_vmid(). This seems reasonable as on MPU we only have dom0less
> domUs so we don’t really need to free vmid.

Regardless on whether you need to free VMID on MPU, the allocation and 
free functions should live in the same unit. So if you plan to move 
p2m_final_teardown() in mmu/p2m.c, then p2m_free_vmid should be exported.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Oct 17 18:26:14 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 17 Oct 2023 18:26:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618329.961842 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsolc-0005Ff-SW; Tue, 17 Oct 2023 18:26:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618329.961842; Tue, 17 Oct 2023 18:26: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 1qsolc-0005FY-PP; Tue, 17 Oct 2023 18:26:08 +0000
Received: by outflank-mailman (input) for mailman id 618329;
 Tue, 17 Oct 2023 18:26: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=qm1H=F7=casper.srs.infradead.org=BATV+e442e50539a6073fd887+7359+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qsola-0005FN-T8
 for xen-devel@lists.xenproject.org; Tue, 17 Oct 2023 18:26:06 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id a048d7a8-6d1a-11ee-98d4-6d05b1d4d9a1;
 Tue, 17 Oct 2023 20:26:02 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qsolL-00DrCq-Pk; Tue, 17 Oct 2023 18:25:51 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1qsolI-000Par-2F; Tue, 17 Oct 2023 19:25:48 +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
X-Inumbo-ID: a048d7a8-6d1a-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=Sender:Content-Transfer-Encoding:
	Content-Type:MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:
	To:From:Reply-To:Content-ID:Content-Description;
	bh=mT1XScI7NSJ4weZ5c1NJoTEjfaqAFFggM/PoQY19qlQ=; b=u2pl0HXyBSCIO8jw1OQWFNhf2O
	Hj/MN1k4AK95NViqo7qIk/mSIRKYon9a3ezB59j4K+iKbmyMri//ejsICoyYSix0lyRkGFkcyL8Ou
	vMliReAQ0IrMARgiZES6WA1xMB9twTeVfZaMrm7HvisUfl1T8yHWWDxG1ReTokk08H8//LXKNOliM
	dUxj2P1UJ++Q69tUfpC1Q86upQsLUc8mxFbFAnIxev/h+kAeEKtWt0+X7iWYdUwPCLGF3kdmr5wMK
	7jQS8z9M1Mx5BxrobTWp3WEr1ZawgXQ8MGh4TnVlvCyk5ih0AL87cVI0NjBGyW7h/y/UBLoyHHEI6
	10GUyejw==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: "Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Richard Henderson <richard.henderson@linaro.org>,
	Eduardo Habkost <eduardo@habkost.net>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	Jason Wang <jasowang@redhat.com>,
	xen-devel@lists.xenproject.org
Subject: [PATCH 3/4] [WTF] avoid qemu_del_nic() in xen_netdev_unrealize() on shutdown
Date: Tue, 17 Oct 2023 19:25:44 +0100
Message-Id: <20231017182545.97973-4-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231017182545.97973-1-dwmw2@infradead.org>
References: <20231017182545.97973-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

When QEMU is exiting, qemu_cleanup() calls net_cleanup(), which deletes
the NIC from underneath the xen-net-device. When xen_netdev_unrealize()
is later called via the xenbus exit notifier, it crashes.

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 hw/net/xen_nic.c | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/hw/net/xen_nic.c b/hw/net/xen_nic.c
index 84914c329c..8d25fb3101 100644
--- a/hw/net/xen_nic.c
+++ b/hw/net/xen_nic.c
@@ -25,6 +25,8 @@
 #include "qapi/qmp/qdict.h"
 #include "qapi/error.h"
 
+#include "sysemu/runstate.h"
+
 #include <sys/socket.h>
 #include <sys/ioctl.h>
 #include <sys/wait.h>
@@ -530,7 +532,11 @@ static void xen_netdev_unrealize(XenDevice *xendev)
     /* Disconnect from the frontend in case this has not already happened */
     xen_netdev_disconnect(xendev, NULL);
 
-    if (netdev->nic) {
+    /*
+     * WTF? In RUN_STATE_SHUTDOWN, qemu_cleanup()→net_cleanup() already deleted
+     * our NIC from underneath us!
+     */
+    if (netdev->nic && !runstate_check(RUN_STATE_SHUTDOWN)) {
         qemu_del_nic(netdev->nic);
     }
 }
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Tue Oct 17 18:26:14 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 17 Oct 2023 18:26:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618331.961861 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsoli-0005kh-9j; Tue, 17 Oct 2023 18:26:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618331.961861; Tue, 17 Oct 2023 18: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 1qsoli-0005kW-6u; Tue, 17 Oct 2023 18:26:14 +0000
Received: by outflank-mailman (input) for mailman id 618331;
 Tue, 17 Oct 2023 18:26: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=qm1H=F7=casper.srs.infradead.org=BATV+e442e50539a6073fd887+7359+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qsolg-0005jg-QO
 for xen-devel@lists.xenproject.org; Tue, 17 Oct 2023 18:26:12 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id a327ac44-6d1a-11ee-9b0e-b553b5be7939;
 Tue, 17 Oct 2023 20:26:09 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qsolL-00DrCo-Or; Tue, 17 Oct 2023 18:25:51 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1qsolI-000Pau-2K; Tue, 17 Oct 2023 19:25:48 +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
X-Inumbo-ID: a327ac44-6d1a-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=i6ZTV9wtaYV9iGMHjBK+i6c16uQy0HhkOiTbhO1beOA=; b=kgUcqSpB3ZA6qV433Y7zjLuzBw
	WPppw8Z1Zqodeu1n+SgUTO1nCXQZH7RJxqWGZOw0OLAVhBimarKfifrC34uoWrTXlo8lePfvJMqqO
	XlFT/qsz3HrkkrNS5HTi2kyFe+3cyhTkEVPK1KPMNwEssFHL9gOB3erBlaSavxk3wPso+PnrHcDYE
	NZDjIHF9pXhcfNVpF1nChNaK1D+6IVaw2lKMonuPIW7EdBOXJR6utSoD5mi/+JDcpJ+UUU6gRM9lQ
	lT1dkCkvWBJWbdTx15tFxmtYGaGVgoL3NVdKFQ+iWonFAlFHVcvMMwXemBGVjpY6pVkeVnoz14Z6U
	+T9h+UGA==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: "Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Richard Henderson <richard.henderson@linaro.org>,
	Eduardo Habkost <eduardo@habkost.net>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	Jason Wang <jasowang@redhat.com>,
	xen-devel@lists.xenproject.org
Subject: [PATCH 4/4] hw/i386/pc: support '-nic' for xen-net-device
Date: Tue, 17 Oct 2023 19:25:45 +0100
Message-Id: <20231017182545.97973-5-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231017182545.97973-1-dwmw2@infradead.org>
References: <20231017182545.97973-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

The default NIC creation seems a bit hackish to me. I don't understand
why each platform ha to call pci_nic_init_nofail() from a point in the
code where it actually has a pointer to the PCI bus, and then we have
the special cases for things like ne2k_isa.

If qmp_device_add() can *find* the appropriate bus and instantiate
the device on it, why can't we just do that from generic code for
creating the default NICs too?

But that isn't a yak I want to shave today. Add a xenbus field to the
PCMachineState so that it can make its way from pc_basic_device_init()
to pc_nic_init() and be handled as a special case like ne2k_isa is.

Now we can launch emulated Xen guests with '-nic user'.

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 hw/i386/pc.c             | 11 ++++++++---
 hw/i386/pc_piix.c        |  2 +-
 hw/i386/pc_q35.c         |  2 +-
 hw/xen/xen-bus.c         |  4 +++-
 include/hw/i386/pc.h     |  4 +++-
 include/hw/xen/xen-bus.h |  2 +-
 6 files changed, 17 insertions(+), 8 deletions(-)

diff --git a/hw/i386/pc.c b/hw/i386/pc.c
index bb3854d1d0..7413ca50c8 100644
--- a/hw/i386/pc.c
+++ b/hw/i386/pc.c
@@ -1265,7 +1265,7 @@ void pc_basic_device_init(struct PCMachineState *pcms,
         if (pcms->bus) {
             pci_create_simple(pcms->bus, -1, "xen-platform");
         }
-        xen_bus_init();
+        pcms->xenbus = xen_bus_init();
         xen_be_init();
     }
 #endif
@@ -1291,7 +1291,8 @@ void pc_basic_device_init(struct PCMachineState *pcms,
                     pcms->vmport != ON_OFF_AUTO_ON);
 }
 
-void pc_nic_init(PCMachineClass *pcmc, ISABus *isa_bus, PCIBus *pci_bus)
+void pc_nic_init(PCMachineClass *pcmc, ISABus *isa_bus, PCIBus *pci_bus,
+                 BusState *xen_bus)
 {
     MachineClass *mc = MACHINE_CLASS(pcmc);
     int i;
@@ -1301,7 +1302,11 @@ void pc_nic_init(PCMachineClass *pcmc, ISABus *isa_bus, PCIBus *pci_bus)
         NICInfo *nd = &nd_table[i];
         const char *model = nd->model ? nd->model : mc->default_nic;
 
-        if (g_str_equal(model, "ne2k_isa")) {
+        if (xen_bus && (!nd->model || g_str_equal(model, "xen-net-device"))) {
+            DeviceState *dev = qdev_new("xen-net-device");
+            qdev_set_nic_properties(dev, nd);
+            qdev_realize_and_unref(dev, xen_bus, &error_fatal);
+        } else if (g_str_equal(model, "ne2k_isa")) {
             pc_init_ne2k_isa(isa_bus, nd);
         } else {
             pci_nic_init_nofail(nd, pci_bus, model, NULL);
diff --git a/hw/i386/pc_piix.c b/hw/i386/pc_piix.c
index e36a3262b2..90b5ae7258 100644
--- a/hw/i386/pc_piix.c
+++ b/hw/i386/pc_piix.c
@@ -322,7 +322,7 @@ static void pc_init1(MachineState *machine,
     pc_basic_device_init(pcms, isa_bus, x86ms->gsi, rtc_state, true,
                          0x4);
 
-    pc_nic_init(pcmc, isa_bus, pci_bus);
+    pc_nic_init(pcmc, isa_bus, pci_bus, pcms->xenbus);
 
     if (pcmc->pci_enabled) {
         PCIDevice *dev;
diff --git a/hw/i386/pc_q35.c b/hw/i386/pc_q35.c
index a7386f2ca2..2ed0aab2a7 100644
--- a/hw/i386/pc_q35.c
+++ b/hw/i386/pc_q35.c
@@ -340,7 +340,7 @@ static void pc_q35_init(MachineState *machine)
 
     /* the rest devices to which pci devfn is automatically assigned */
     pc_vga_init(isa_bus, host_bus);
-    pc_nic_init(pcmc, isa_bus, host_bus);
+    pc_nic_init(pcmc, isa_bus, host_bus, pcms->xenbus);
 
     if (machine->nvdimms_state->is_enabled) {
         nvdimm_init_acpi_state(machine->nvdimms_state, system_io,
diff --git a/hw/xen/xen-bus.c b/hw/xen/xen-bus.c
index 0da2aa219a..d7823964f8 100644
--- a/hw/xen/xen-bus.c
+++ b/hw/xen/xen-bus.c
@@ -1127,11 +1127,13 @@ static void xen_register_types(void)
 
 type_init(xen_register_types)
 
-void xen_bus_init(void)
+BusState *xen_bus_init(void)
 {
     DeviceState *dev = qdev_new(TYPE_XEN_BRIDGE);
     BusState *bus = qbus_new(TYPE_XEN_BUS, dev, NULL);
 
     sysbus_realize_and_unref(SYS_BUS_DEVICE(dev), &error_fatal);
     qbus_set_bus_hotplug_handler(bus);
+
+    return bus;
 }
diff --git a/include/hw/i386/pc.h b/include/hw/i386/pc.h
index bec38cb92c..feabf3d195 100644
--- a/include/hw/i386/pc.h
+++ b/include/hw/i386/pc.h
@@ -33,6 +33,7 @@ typedef struct PCMachineState {
 
     /* Pointers to devices and objects: */
     PCIBus *bus;
+    BusState *xenbus;
     I2CBus *smbus;
     PFlashCFI01 *flash[2];
     ISADevice *pcspk;
@@ -182,7 +183,8 @@ void pc_basic_device_init(struct PCMachineState *pcms,
 void pc_cmos_init(PCMachineState *pcms,
                   BusState *ide0, BusState *ide1,
                   ISADevice *s);
-void pc_nic_init(PCMachineClass *pcmc, ISABus *isa_bus, PCIBus *pci_bus);
+void pc_nic_init(PCMachineClass *pcmc, ISABus *isa_bus, PCIBus *pci_bus,
+                 BusState *xen_bus);
 
 void pc_i8259_create(ISABus *isa_bus, qemu_irq *i8259_irqs);
 
diff --git a/include/hw/xen/xen-bus.h b/include/hw/xen/xen-bus.h
index eb440880b5..acad871b80 100644
--- a/include/hw/xen/xen-bus.h
+++ b/include/hw/xen/xen-bus.h
@@ -75,7 +75,7 @@ struct XenBusClass {
 OBJECT_DECLARE_TYPE(XenBus, XenBusClass,
                     XEN_BUS)
 
-void xen_bus_init(void);
+BusState *xen_bus_init(void);
 
 void xen_device_backend_set_state(XenDevice *xendev,
                                   enum xenbus_state state);
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Tue Oct 17 18:26:14 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 17 Oct 2023 18:26:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618330.961846 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsold-0005IH-4W; Tue, 17 Oct 2023 18:26:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618330.961846; Tue, 17 Oct 2023 18:26: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 1qsold-0005HX-03; Tue, 17 Oct 2023 18:26:09 +0000
Received: by outflank-mailman (input) for mailman id 618330;
 Tue, 17 Oct 2023 18:26: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=qm1H=F7=casper.srs.infradead.org=BATV+e442e50539a6073fd887+7359+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qsolb-0005FN-Gv
 for xen-devel@lists.xenproject.org; Tue, 17 Oct 2023 18:26:07 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id a22994c3-6d1a-11ee-98d4-6d05b1d4d9a1;
 Tue, 17 Oct 2023 20:26:05 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qsolL-00DrCr-Or; Tue, 17 Oct 2023 18:25:51 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1qsolI-000Pai-1v; Tue, 17 Oct 2023 19:25:48 +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
X-Inumbo-ID: a22994c3-6d1a-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=Sender:Content-Transfer-Encoding:
	MIME-Version:Message-Id:Date:Subject:Cc:To:From:Reply-To:Content-Type:
	Content-ID:Content-Description:In-Reply-To:References;
	bh=NhekjLfYAXI/NswduTKtqNt6rro27mlB+ofHaT2pumE=; b=B54+8xbjN1/D65brxO5gvxQ/+T
	BriBIf5aZLrtEU81d1kSwxCW/2Q3v3Lm07bwmbgF3SCQH8JSxQmJKe5uGO79WY9e17xke6XBjjdug
	5JeG2ysM8oz9d5Gh1rP3rYRl5P74ainBs3yT5G5gthMXGADJTxMAEXPvN+uAvHvF6R4zwYb/AS9Gf
	Cz3UH+oaZQFcSOb2gFv/lXdjJAR36Chk/aNPxjE6H3aijnuu9hYbb4ShIkb/Fkral4HJdgGYifV2n
	jMd/JJwseJX+XdSnaIEPMqA4DDn7AruHt8gpN98o1fSI3bEa9k+BVu+66Reaw/Kf5dh/gqJK5/1UB
	SW5sUDdg==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: "Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Richard Henderson <richard.henderson@linaro.org>,
	Eduardo Habkost <eduardo@habkost.net>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	Jason Wang <jasowang@redhat.com>,
	xen-devel@lists.xenproject.org
Subject: [PATCH 0/4] Update QEMU qnic driver to "new" XenDevice model
Date: Tue, 17 Oct 2023 19:25:41 +0100
Message-Id: <20231017182545.97973-1-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html

This has been on my TODO list for a while, and Paul's since 2019. Having 
converted the console driver just to get PV guests booting, I figured I 
should do this one while I still remember how.

The fact that net_cleanup() frees my NIC from underneath me confused
me for a while. Not entirely sure what's going on there. Other devices
seem to survive just because they aren't cleaned up at exit. But XenBus
devices really should be properly cleaned up on exit, because in some
cases they leave detritus in XenStore, which outlives QEMU. So "Don't
Do That Then" doesn't seem like it's the answer.

The default NIC handling is horrid (I mean, before I even looked at it)
but that isn't today's yak to shave...

David Woodhouse (4):
      hw/xen: only remove peers of PCI NICs on unplug
      hw/xen: update Xen PV NIC to XenDevice model
      [WTF] avoid qemu_del_nic() in xen_netdev_unrealize() on shutdown
      hw/i386/pc: support '-nic' for xen-net-device

 hw/i386/pc.c               |  11 ++-
 hw/i386/pc_piix.c          |   2 +-
 hw/i386/pc_q35.c           |   2 +-
 hw/i386/xen/xen_platform.c |   9 ++-
 hw/net/meson.build         |   2 +-
 hw/net/trace-events        |   9 +++
 hw/net/xen_nic.c           | 434 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++------------------------
 hw/xen/xen-bus.c           |   4 +-
 hw/xenpv/xen_machine_pv.c  |   1 -
 include/hw/i386/pc.h       |   4 +-
 include/hw/xen/xen-bus.h   |   2 +-
 11 files changed, 373 insertions(+), 107 deletions(-)




From xen-devel-bounces@lists.xenproject.org Tue Oct 17 18:26:17 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 17 Oct 2023 18:26:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618332.961872 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsoll-000636-Kw; Tue, 17 Oct 2023 18:26:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618332.961872; Tue, 17 Oct 2023 18:26: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 1qsoll-00062u-Hy; Tue, 17 Oct 2023 18:26:17 +0000
Received: by outflank-mailman (input) for mailman id 618332;
 Tue, 17 Oct 2023 18:26: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=qm1H=F7=casper.srs.infradead.org=BATV+e442e50539a6073fd887+7359+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qsolk-0005jg-Ax
 for xen-devel@lists.xenproject.org; Tue, 17 Oct 2023 18:26:16 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id a6a400c9-6d1a-11ee-9b0e-b553b5be7939;
 Tue, 17 Oct 2023 20:26:13 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qsolL-00DrCp-On; Tue, 17 Oct 2023 18:25:51 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1qsolI-000Pao-2A; Tue, 17 Oct 2023 19:25:48 +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
X-Inumbo-ID: a6a400c9-6d1a-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=soewF1VEeC4Dlpkzvr2uXeIIPaScop4Mpb2XJvzItmY=; b=RkSR5Y5Ot3jJe1d4Q4FDdzIghn
	QI1NxIjMQyDz+f1OQpK27yB8HhfPT73C9TmxaFKMrAaodavvk2DeQYyT+z6zpFERv3aTi5OzxogQN
	Ri+bizOAO1LUuNW2k4tI7WfFDQQCNUJoSom9xBE86kI6yIk1lSxuRVCCXTlIYz5nzNTJfzTBllI4b
	qV/0Wn+6tYmcJ4OgNadm6bg76PsSMOnrDUyrjjcc+UQTdP7wYO26RkOc8Js83mUmGu041vzPhX2M8
	taWrsG/UUW5EU18fzdQHVmlV3+3lVA/LfbrWYdz94JanMSEkdDXntw7PopN+qW/4pJyLSx1++kO1N
	8w9ZXHfw==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: "Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Richard Henderson <richard.henderson@linaro.org>,
	Eduardo Habkost <eduardo@habkost.net>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	Jason Wang <jasowang@redhat.com>,
	xen-devel@lists.xenproject.org
Subject: [PATCH 2/4] hw/xen: update Xen PV NIC to XenDevice model
Date: Tue, 17 Oct 2023 19:25:43 +0100
Message-Id: <20231017182545.97973-3-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231017182545.97973-1-dwmw2@infradead.org>
References: <20231017182545.97973-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 hw/net/meson.build        |   2 +-
 hw/net/trace-events       |   9 +
 hw/net/xen_nic.c          | 426 +++++++++++++++++++++++++++++---------
 hw/xenpv/xen_machine_pv.c |   1 -
 4 files changed, 342 insertions(+), 96 deletions(-)

diff --git a/hw/net/meson.build b/hw/net/meson.build
index 2632634df3..f64651c467 100644
--- a/hw/net/meson.build
+++ b/hw/net/meson.build
@@ -1,5 +1,5 @@
 system_ss.add(when: 'CONFIG_DP8393X', if_true: files('dp8393x.c'))
-system_ss.add(when: 'CONFIG_XEN', if_true: files('xen_nic.c'))
+system_ss.add(when: 'CONFIG_XEN_BUS', if_true: files('xen_nic.c'))
 system_ss.add(when: 'CONFIG_NE2000_COMMON', if_true: files('ne2000.c'))
 
 # PCI network cards
diff --git a/hw/net/trace-events b/hw/net/trace-events
index 3abfd65e5b..ee56acfbce 100644
--- a/hw/net/trace-events
+++ b/hw/net/trace-events
@@ -482,3 +482,12 @@ dp8393x_receive_oversize(int size) "oversize packet, pkt_size is %d"
 dp8393x_receive_not_netcard(void) "packet not for netcard"
 dp8393x_receive_packet(int crba) "Receive packet at 0x%"PRIx32
 dp8393x_receive_write_status(int crba) "Write status at 0x%"PRIx32
+
+# xen_nic.c
+xen_netdev_realize(int idx, const char *info) "idx %u info '%s'"
+xen_netdev_unrealize(int idx) "idx %u"
+xen_netdev_create(int idx) "idx %u"
+xen_netdev_destroy(int idx) "idx %u"
+xen_netdev_disconnect(int idx) "idx %u"
+xen_netdev_connect(int idx, unsigned int tx, unsigned int rx, int port) "idx %u tx %u rx %u port %u"
+xen_netdev_frontend_changed(const char *idx, int state) "idx %s state %d"
diff --git a/hw/net/xen_nic.c b/hw/net/xen_nic.c
index 9bbf6599fc..84914c329c 100644
--- a/hw/net/xen_nic.c
+++ b/hw/net/xen_nic.c
@@ -20,6 +20,11 @@
  */
 
 #include "qemu/osdep.h"
+#include "qemu/cutils.h"
+#include "qemu/qemu-print.h"
+#include "qapi/qmp/qdict.h"
+#include "qapi/error.h"
+
 #include <sys/socket.h>
 #include <sys/ioctl.h>
 #include <sys/wait.h>
@@ -27,18 +32,26 @@
 #include "net/net.h"
 #include "net/checksum.h"
 #include "net/util.h"
-#include "hw/xen/xen-legacy-backend.h"
+
+#include "hw/xen/xen-backend.h"
+#include "hw/xen/xen-bus-helper.h"
+#include "hw/qdev-properties.h"
+#include "hw/qdev-properties-system.h"
 
 #include "hw/xen/interface/io/netif.h"
+#include "hw/xen/interface/io/xs_wire.h"
+
+#include "trace.h"
 
 /* ------------------------------------------------------------- */
 
 struct XenNetDev {
-    struct XenLegacyDevice      xendev;  /* must be first */
-    char                  *mac;
+    struct XenDevice      xendev;  /* must be first */
+    XenEventChannel       *event_channel;
+    int                   dev;
     int                   tx_work;
-    int                   tx_ring_ref;
-    int                   rx_ring_ref;
+    unsigned int          tx_ring_ref;
+    unsigned int          rx_ring_ref;
     struct netif_tx_sring *txs;
     struct netif_rx_sring *rxs;
     netif_tx_back_ring_t  tx_ring;
@@ -47,6 +60,13 @@ struct XenNetDev {
     NICState              *nic;
 };
 
+typedef struct XenNetDev XenNetDev;
+
+#define TYPE_XEN_NET_DEVICE "xen-net-device"
+OBJECT_DECLARE_SIMPLE_TYPE(XenNetDev, XEN_NET_DEVICE)
+
+#define xen_pv_printf(a, n, ...) qemu_printf(__VA_ARGS__)
+
 /* ------------------------------------------------------------- */
 
 static void net_tx_response(struct XenNetDev *netdev, netif_tx_request_t *txp, int8_t st)
@@ -68,7 +88,8 @@ static void net_tx_response(struct XenNetDev *netdev, netif_tx_request_t *txp, i
     netdev->tx_ring.rsp_prod_pvt = ++i;
     RING_PUSH_RESPONSES_AND_CHECK_NOTIFY(&netdev->tx_ring, notify);
     if (notify) {
-        xen_pv_send_notify(&netdev->xendev);
+        xen_device_notify_event_channel(XEN_DEVICE(netdev),
+                                        netdev->event_channel, NULL);
     }
 
     if (i == netdev->tx_ring.req_cons) {
@@ -104,8 +125,9 @@ static void net_tx_error(struct XenNetDev *netdev, netif_tx_request_t *txp, RING
 #endif
 }
 
-static void net_tx_packets(struct XenNetDev *netdev)
+static bool net_tx_packets(struct XenNetDev *netdev)
 {
+    bool done_something = false;
     netif_tx_request_t txreq;
     RING_IDX rc, rp;
     void *page;
@@ -122,6 +144,7 @@ static void net_tx_packets(struct XenNetDev *netdev)
             }
             memcpy(&txreq, RING_GET_REQUEST(&netdev->tx_ring, rc), sizeof(txreq));
             netdev->tx_ring.req_cons = ++rc;
+            done_something = true;
 
 #if 1
             /* should not happen in theory, we don't announce the *
@@ -151,7 +174,7 @@ static void net_tx_packets(struct XenNetDev *netdev)
                 continue;
             }
 
-            xen_pv_printf(&netdev->xendev, 3,
+            if (0) qemu_printf(//&netdev->xendev, 3,
                           "tx packet ref %d, off %d, len %d, flags 0x%x%s%s%s%s\n",
                           txreq.gref, txreq.offset, txreq.size, txreq.flags,
                           (txreq.flags & NETTXF_csum_blank)     ? " csum_blank"     : "",
@@ -159,8 +182,8 @@ static void net_tx_packets(struct XenNetDev *netdev)
                           (txreq.flags & NETTXF_more_data)      ? " more_data"      : "",
                           (txreq.flags & NETTXF_extra_info)     ? " extra_info"     : "");
 
-            page = xen_be_map_grant_ref(&netdev->xendev, txreq.gref,
-                                        PROT_READ);
+            page = xen_device_map_grant_refs(&netdev->xendev, &txreq.gref, 1,
+                                             PROT_READ, NULL);
             if (page == NULL) {
                 xen_pv_printf(&netdev->xendev, 0,
                               "error: tx gref dereference failed (%d)\n",
@@ -181,7 +204,8 @@ static void net_tx_packets(struct XenNetDev *netdev)
                 qemu_send_packet(qemu_get_queue(netdev->nic),
                                  page + txreq.offset, txreq.size);
             }
-            xen_be_unmap_grant_ref(&netdev->xendev, page, txreq.gref);
+            xen_device_unmap_grant_refs(&netdev->xendev, page, &txreq.gref, 1,
+                                        NULL);
             net_tx_response(netdev, &txreq, NETIF_RSP_OKAY);
         }
         if (!netdev->tx_work) {
@@ -190,6 +214,7 @@ static void net_tx_packets(struct XenNetDev *netdev)
         netdev->tx_work = 0;
     }
     g_free(tmpbuf);
+    return done_something;
 }
 
 /* ------------------------------------------------------------- */
@@ -212,14 +237,15 @@ static void net_rx_response(struct XenNetDev *netdev,
         resp->status = (int16_t)st;
     }
 
-    xen_pv_printf(&netdev->xendev, 3,
+    if (0) qemu_printf(//&netdev->xendev, 3,
                   "rx response: idx %d, status %d, flags 0x%x\n",
                   i, resp->status, resp->flags);
 
     netdev->rx_ring.rsp_prod_pvt = ++i;
     RING_PUSH_RESPONSES_AND_CHECK_NOTIFY(&netdev->rx_ring, notify);
     if (notify) {
-        xen_pv_send_notify(&netdev->xendev);
+        xen_device_notify_event_channel(XEN_DEVICE(netdev),
+                                        netdev->event_channel, NULL);
     }
 }
 
@@ -232,7 +258,7 @@ static ssize_t net_rx_packet(NetClientState *nc, const uint8_t *buf, size_t size
     RING_IDX rc, rp;
     void *page;
 
-    if (netdev->xendev.be_state != XenbusStateConnected) {
+    if (netdev->rx_ring.sring == NULL) {
         return -1;
     }
 
@@ -252,7 +278,8 @@ static ssize_t net_rx_packet(NetClientState *nc, const uint8_t *buf, size_t size
     memcpy(&rxreq, RING_GET_REQUEST(&netdev->rx_ring, rc), sizeof(rxreq));
     netdev->rx_ring.req_cons = ++rc;
 
-    page = xen_be_map_grant_ref(&netdev->xendev, rxreq.gref, PROT_WRITE);
+    page = xen_device_map_grant_refs(&netdev->xendev, &rxreq.gref, 1,
+                                     PROT_WRITE, NULL);
     if (page == NULL) {
         xen_pv_printf(&netdev->xendev, 0,
                       "error: rx gref dereference failed (%d)\n",
@@ -261,7 +288,7 @@ static ssize_t net_rx_packet(NetClientState *nc, const uint8_t *buf, size_t size
         return -1;
     }
     memcpy(page + NET_IP_ALIGN, buf, size);
-    xen_be_unmap_grant_ref(&netdev->xendev, page, rxreq.gref);
+    xen_device_unmap_grant_refs(&netdev->xendev, page, &rxreq.gref, 1, NULL);
     net_rx_response(netdev, &rxreq, NETIF_RSP_OKAY, NET_IP_ALIGN, size, 0);
 
     return size;
@@ -275,139 +302,350 @@ static NetClientInfo net_xen_info = {
     .receive = net_rx_packet,
 };
 
-static int net_init(struct XenLegacyDevice *xendev)
+static void xen_netdev_realize(XenDevice *xendev, Error **errp)
 {
-    struct XenNetDev *netdev = container_of(xendev, struct XenNetDev, xendev);
+    ERRP_GUARD();
+    XenNetDev *netdev = XEN_NET_DEVICE(xendev);
 
-    /* read xenstore entries */
-    if (netdev->mac == NULL) {
-        netdev->mac = xenstore_read_be_str(&netdev->xendev, "mac");
-    }
+    qemu_macaddr_default_if_unset(&netdev->conf.macaddr);
 
-    /* do we have all we need? */
-    if (netdev->mac == NULL) {
-        return -1;
-    }
-
-    if (net_parse_macaddr(netdev->conf.macaddr.a, netdev->mac) < 0) {
-        return -1;
-    }
+    xen_device_frontend_printf(xendev, "mac", "%02x:%02x:%02x:%02x:%02x:%02x",
+                               netdev->conf.macaddr.a[0],
+                               netdev->conf.macaddr.a[1],
+                               netdev->conf.macaddr.a[2],
+                               netdev->conf.macaddr.a[3],
+                               netdev->conf.macaddr.a[4],
+                               netdev->conf.macaddr.a[5]);
 
     netdev->nic = qemu_new_nic(&net_xen_info, &netdev->conf,
-                               "xen", NULL, netdev);
+                               object_get_typename(OBJECT(xendev)),
+                               DEVICE(xendev)->id, netdev);
 
-    qemu_set_info_str(qemu_get_queue(netdev->nic),
-                      "nic: xenbus vif macaddr=%s", netdev->mac);
+    qemu_format_nic_info_str(qemu_get_queue(netdev->nic), netdev->conf.macaddr.a);
 
     /* fill info */
-    xenstore_write_be_int(&netdev->xendev, "feature-rx-copy", 1);
-    xenstore_write_be_int(&netdev->xendev, "feature-rx-flip", 0);
+    xen_device_backend_printf(xendev, "feature-rx-copy", "%u", 1);
+    xen_device_backend_printf(xendev, "feature-rx-flip", "%u", 0);
 
-    return 0;
+    trace_xen_netdev_realize(netdev->dev, qemu_get_queue(netdev->nic)->info_str);
 }
 
-static int net_connect(struct XenLegacyDevice *xendev)
+static bool net_event(void *_xendev)
 {
-    struct XenNetDev *netdev = container_of(xendev, struct XenNetDev, xendev);
-    int rx_copy;
+    XenNetDev *netdev = XEN_NET_DEVICE(_xendev);
+    bool done_something;
 
-    if (xenstore_read_fe_int(&netdev->xendev, "tx-ring-ref",
-                             &netdev->tx_ring_ref) == -1) {
-        return -1;
+    done_something = net_tx_packets(netdev);
+    qemu_flush_queued_packets(qemu_get_queue(netdev->nic));
+    return done_something;
+}
+
+static bool xen_netdev_connect(XenDevice *xendev, Error **errp)
+{
+    XenNetDev *netdev = XEN_NET_DEVICE(xendev);
+    unsigned int port, rx_copy;
+
+    if (xen_device_frontend_scanf(xendev, "tx-ring-ref", "%u",
+                                  &netdev->tx_ring_ref) != 1) {
+        error_setg(errp, "failed to read tx-ring-ref");
+        return false;
     }
-    if (xenstore_read_fe_int(&netdev->xendev, "rx-ring-ref",
-                             &netdev->rx_ring_ref) == -1) {
-        return 1;
+
+    if (xen_device_frontend_scanf(xendev, "rx-ring-ref", "%u",
+                                  &netdev->rx_ring_ref) != 1) {
+        error_setg(errp, "failed to read rx-ring-ref");
+        return false;
     }
-    if (xenstore_read_fe_int(&netdev->xendev, "event-channel",
-                             &netdev->xendev.remote_port) == -1) {
-        return -1;
+
+    if (xen_device_frontend_scanf(xendev, "event-channel", "%u",
+                                  &port) != 1) {
+        error_setg(errp, "failed to read event-channel");
+        return false;
     }
 
-    if (xenstore_read_fe_int(&netdev->xendev, "request-rx-copy", &rx_copy) == -1) {
+    if (xen_device_frontend_scanf(xendev, "request-rx-copy", "%u",
+                                  &rx_copy) != 1) {
         rx_copy = 0;
     }
     if (rx_copy == 0) {
-        xen_pv_printf(&netdev->xendev, 0,
-                      "frontend doesn't support rx-copy.\n");
-        return -1;
+        error_setg(errp, "frontend doesn't support rx-copy");
+        return false;
     }
 
-    netdev->txs = xen_be_map_grant_ref(&netdev->xendev,
-                                       netdev->tx_ring_ref,
-                                       PROT_READ | PROT_WRITE);
+    netdev->txs = xen_device_map_grant_refs(xendev,
+                                            &netdev->tx_ring_ref, 1,
+                                            PROT_READ | PROT_WRITE,
+                                            errp);
     if (!netdev->txs) {
-        return -1;
+        error_prepend(errp, "failed to map tx grant ref: ");
+        return false;
     }
-    netdev->rxs = xen_be_map_grant_ref(&netdev->xendev,
-                                       netdev->rx_ring_ref,
-                                       PROT_READ | PROT_WRITE);
+
+    netdev->rxs = xen_device_map_grant_refs(xendev,
+                                            &netdev->rx_ring_ref, 1,
+                                            PROT_READ | PROT_WRITE,
+                                            errp);
     if (!netdev->rxs) {
-        xen_be_unmap_grant_ref(&netdev->xendev, netdev->txs,
-                               netdev->tx_ring_ref);
-        netdev->txs = NULL;
-        return -1;
+        error_prepend(errp, "failed to map rx grant ref: ");
+        return false;
     }
+
     BACK_RING_INIT(&netdev->tx_ring, netdev->txs, XEN_PAGE_SIZE);
     BACK_RING_INIT(&netdev->rx_ring, netdev->rxs, XEN_PAGE_SIZE);
 
-    xen_be_bind_evtchn(&netdev->xendev);
+    netdev->event_channel = xen_device_bind_event_channel(xendev, port,
+                                                          net_event,
+                                                          netdev,
+                                                          errp);
+    if (!netdev->event_channel) {
+        return false;
+    }
 
-    xen_pv_printf(&netdev->xendev, 1, "ok: tx-ring-ref %d, rx-ring-ref %d, "
-                  "remote port %d, local port %d\n",
-                  netdev->tx_ring_ref, netdev->rx_ring_ref,
-                  netdev->xendev.remote_port, netdev->xendev.local_port);
+    trace_xen_netdev_connect(netdev->dev, netdev->tx_ring_ref,
+                             netdev->rx_ring_ref, port);
 
     net_tx_packets(netdev);
-    return 0;
+    return true;
 }
 
-static void net_disconnect(struct XenLegacyDevice *xendev)
+static void xen_netdev_disconnect(XenDevice *xendev, Error **errp)
 {
-    struct XenNetDev *netdev = container_of(xendev, struct XenNetDev, xendev);
+    XenNetDev *netdev = XEN_NET_DEVICE(xendev);
+
+    trace_xen_netdev_disconnect(netdev->dev);
 
-    xen_pv_unbind_evtchn(&netdev->xendev);
+    netdev->tx_ring.sring = NULL;
+    netdev->rx_ring.sring = NULL;
 
+    if (netdev->event_channel) {
+        xen_device_unbind_event_channel(xendev, netdev->event_channel,
+                                        errp);
+        netdev->event_channel = NULL;
+    }
     if (netdev->txs) {
-        xen_be_unmap_grant_ref(&netdev->xendev, netdev->txs,
-                               netdev->tx_ring_ref);
+        xen_device_unmap_grant_refs(xendev, netdev->txs,
+                                    &netdev->tx_ring_ref, 1, errp);
         netdev->txs = NULL;
     }
     if (netdev->rxs) {
-        xen_be_unmap_grant_ref(&netdev->xendev, netdev->rxs,
-                               netdev->rx_ring_ref);
+        xen_device_unmap_grant_refs(xendev, netdev->rxs,
+                                    &netdev->rx_ring_ref, 1, errp);
         netdev->rxs = NULL;
     }
 }
 
-static void net_event(struct XenLegacyDevice *xendev)
+/* -------------------------------------------------------------------- */
+
+
+static void xen_netdev_frontend_changed(XenDevice *xendev,
+                                       enum xenbus_state frontend_state,
+                                       Error **errp)
 {
-    struct XenNetDev *netdev = container_of(xendev, struct XenNetDev, xendev);
-    net_tx_packets(netdev);
-    qemu_flush_queued_packets(qemu_get_queue(netdev->nic));
+    ERRP_GUARD();
+    enum xenbus_state backend_state = xen_device_backend_get_state(xendev);
+
+    trace_xen_netdev_frontend_changed(xendev->name, frontend_state);
+
+    switch (frontend_state) {
+    case XenbusStateInitialised:
+    case XenbusStateConnected:
+        if (backend_state == XenbusStateConnected) {
+            break;
+        }
+
+        xen_netdev_disconnect(xendev, errp);
+        if (*errp) {
+            break;
+        }
+
+        if (!xen_netdev_connect(xendev, errp)) {
+            xen_netdev_disconnect(xendev, NULL);
+            xen_device_backend_set_state(xendev, XenbusStateClosing);
+            break;
+        }
+
+        xen_device_backend_set_state(xendev, XenbusStateConnected);
+        break;
+
+    case XenbusStateClosing:
+        xen_device_backend_set_state(xendev, XenbusStateClosing);
+        break;
+
+    case XenbusStateClosed:
+    case XenbusStateUnknown:
+        xen_netdev_disconnect(xendev, errp);
+        if (*errp) {
+            break;
+        }
+
+        xen_device_backend_set_state(xendev, XenbusStateClosed);
+        break;
+
+    default:
+        break;
+    }
 }
 
-static int net_free(struct XenLegacyDevice *xendev)
+static char *xen_netdev_get_name(XenDevice *xendev, Error **errp)
 {
-    struct XenNetDev *netdev = container_of(xendev, struct XenNetDev, xendev);
+    XenNetDev *netdev = XEN_NET_DEVICE(xendev);
+
+    if (netdev->dev == -1) {
+        XenBus *xenbus = XEN_BUS(qdev_get_parent_bus(DEVICE(xendev)));
+        char fe_path[XENSTORE_ABS_PATH_MAX + 1];
+        int idx = (xen_mode == XEN_EMULATE) ? 0 : 1;
+        char *value;
+
+        /* Theoretically we could go up to INT_MAX here but that's overkill */
+        while (idx < 100) {
+            snprintf(fe_path, sizeof(fe_path),
+                     "/local/domain/%u/device/vif/%u",
+                     xendev->frontend_id, idx);
+            value = qemu_xen_xs_read(xenbus->xsh, XBT_NULL, fe_path, NULL);
+            if (!value) {
+                if (errno == ENOENT) {
+                    netdev->dev = idx;
+                    goto found;
+                }
+                error_setg(errp, "cannot read %s: %s", fe_path,
+                           strerror(errno));
+                return NULL;
+            }
+            free(value);
+            idx++;
+        }
+        error_setg(errp, "cannot find device index for netdev device");
+        return NULL;
+    }
+ found:
+    return g_strdup_printf("%u", netdev->dev);
+}
+
+static void xen_netdev_unrealize(XenDevice *xendev)
+{
+    XenNetDev *netdev = XEN_NET_DEVICE(xendev);
+
+    trace_xen_netdev_unrealize(netdev->dev);
+
+    /* Disconnect from the frontend in case this has not already happened */
+    xen_netdev_disconnect(xendev, NULL);
 
     if (netdev->nic) {
         qemu_del_nic(netdev->nic);
-        netdev->nic = NULL;
     }
-    g_free(netdev->mac);
-    netdev->mac = NULL;
-    return 0;
 }
 
 /* ------------------------------------------------------------- */
 
-struct XenDevOps xen_netdev_ops = {
-    .size       = sizeof(struct XenNetDev),
-    .flags      = DEVOPS_FLAG_NEED_GNTDEV,
-    .init       = net_init,
-    .initialise    = net_connect,
-    .event      = net_event,
-    .disconnect = net_disconnect,
-    .free       = net_free,
+static Property xen_netdev_properties[] = {
+    DEFINE_NIC_PROPERTIES(XenNetDev, conf),
+    DEFINE_PROP_INT32("idx", XenNetDev, dev, -1),
+    DEFINE_PROP_END_OF_LIST(),
 };
+
+static void xen_netdev_class_init(ObjectClass *class, void *data)
+{
+    DeviceClass *dev_class = DEVICE_CLASS(class);
+    XenDeviceClass *xendev_class = XEN_DEVICE_CLASS(class);
+
+    xendev_class->backend = "qnet";
+    xendev_class->device = "vif";
+    xendev_class->get_name = xen_netdev_get_name;
+    xendev_class->realize = xen_netdev_realize;
+    xendev_class->frontend_changed = xen_netdev_frontend_changed;
+    xendev_class->unrealize = xen_netdev_unrealize;
+    set_bit(DEVICE_CATEGORY_NETWORK, dev_class->categories);
+    dev_class->user_creatable = true;
+
+    device_class_set_props(dev_class, xen_netdev_properties);
+}
+
+static const TypeInfo xen_net_type_info = {
+    .name = TYPE_XEN_NET_DEVICE,
+    .parent = TYPE_XEN_DEVICE,
+    .instance_size = sizeof(XenNetDev),
+    .class_init = xen_netdev_class_init,
+};
+
+static void xen_net_register_types(void)
+{
+    type_register_static(&xen_net_type_info);
+}
+
+type_init(xen_net_register_types)
+
+/* Called to instantiate a XenNetDev when the backend is detected. */
+static void xen_net_device_create(XenBackendInstance *backend,
+                                  QDict *opts, Error **errp)
+{
+    ERRP_GUARD();
+    XenBus *xenbus = xen_backend_get_bus(backend);
+    const char *name = xen_backend_get_name(backend);
+    XenDevice *xendev = NULL;
+    unsigned long number;
+    const char *macstr;
+    XenNetDev *net;
+    MACAddr mac;
+
+    if (qemu_strtoul(name, NULL, 10, &number) || number >= INT_MAX) {
+        error_setg(errp, "failed to parse name '%s'", name);
+        goto fail;
+    }
+
+    trace_xen_netdev_create(number);
+
+    macstr = qdict_get_try_str(opts, "mac");
+    if (macstr == NULL) {
+        error_setg(errp, "no MAC address found");
+        goto fail;
+    }
+
+    if (net_parse_macaddr(mac.a, macstr) < 0) {
+        error_setg(errp, "failed to parse MAC address");
+        goto fail;
+    }
+
+    xendev = XEN_DEVICE(qdev_new(TYPE_XEN_NET_DEVICE));
+    net = XEN_NET_DEVICE(xendev);
+
+    net->dev = number;
+    memcpy(&net->conf.macaddr, &mac, sizeof(mac));
+
+    if (qdev_realize_and_unref(DEVICE(xendev), BUS(xenbus), errp)) {
+        xen_backend_set_device(backend, xendev);
+        return;
+    }
+
+    error_prepend(errp, "realization of net device %lu failed: ",
+                  number);
+
+ fail:
+    if (xendev) {
+        object_unparent(OBJECT(xendev));
+    }
+}
+
+static void xen_net_device_destroy(XenBackendInstance *backend,
+                                       Error **errp)
+{
+    ERRP_GUARD();
+    XenDevice *xendev = xen_backend_get_device(backend);
+    XenNetDev *netdev = XEN_NET_DEVICE(xendev);
+
+    trace_xen_netdev_destroy(netdev->dev);
+
+    object_unparent(OBJECT(xendev));
+}
+
+static const XenBackendInfo xen_net_backend_info  = {
+    .type = "qnet",
+    .create = xen_net_device_create,
+    .destroy = xen_net_device_destroy,
+};
+
+static void xen_net_register_backend(void)
+{
+    xen_backend_register(&xen_net_backend_info);
+}
+
+xen_backend_init(xen_net_register_backend);
diff --git a/hw/xenpv/xen_machine_pv.c b/hw/xenpv/xen_machine_pv.c
index 17cda5ec13..764ca5c4fa 100644
--- a/hw/xenpv/xen_machine_pv.c
+++ b/hw/xenpv/xen_machine_pv.c
@@ -55,7 +55,6 @@ static void xen_init_pv(MachineState *machine)
     }
 
     xen_be_register("vfb", &xen_framebuffer_ops);
-    xen_be_register("qnic", &xen_netdev_ops);
 
     /* configure framebuffer */
     if (vga_interface_type == VGA_XENFB) {
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Tue Oct 17 18:26:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 17 Oct 2023 18:26:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618334.961882 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsolu-0006WP-SV; Tue, 17 Oct 2023 18:26:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618334.961882; Tue, 17 Oct 2023 18:26: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 1qsolu-0006WD-PW; Tue, 17 Oct 2023 18:26:26 +0000
Received: by outflank-mailman (input) for mailman id 618334;
 Tue, 17 Oct 2023 18:26: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=QKvq=F7=desiato.srs.infradead.org=BATV+ff42024f62dfd72ba0d0+7359+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qsols-0005jg-EN
 for xen-devel@lists.xenproject.org; Tue, 17 Oct 2023 18:26:24 +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 aa86ec8f-6d1a-11ee-9b0e-b553b5be7939;
 Tue, 17 Oct 2023 20:26:21 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by desiato.infradead.org with esmtpsa (Exim 4.96 #2 (Red Hat Linux))
 id 1qsolL-007II3-25; Tue, 17 Oct 2023 18:25:51 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1qsolI-000Pal-25; Tue, 17 Oct 2023 19:25:48 +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
X-Inumbo-ID: aa86ec8f-6d1a-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=desiato.20200630; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=ASyx27ABg/WdxWXFMwdeXHtm2HUFOe8n8pbrbgV+R1U=; b=dCsAZYtU5oS750WARgfG1cbHbk
	bPq+UZ7bR809wKmsw6T/r5Nxzqx94zY+jrblkr53Fbw9QGaa0IdcMIDWC7gMM9f/2wG56EATB16YM
	6Cdyn/BVEQT8FmID+F6W4Do+H9HkX8Yx6y3050hlpOfC4WRRmLws8CV1sav8q1c3JvBJ1buZfhQ1b
	D7SbIvxrk3EDzcEPbzuFIPt/piSKj+wHOSdiGhorqpUF3KFolMfYdOAF71tj/YcAZF/QvMnkDo0kt
	wNcmRNEUqWWlcIWAgKAiCrsr8NFVyln/wn+h28XuAME3OeO+FgYtDeHIGbHAG+XixHHmENkN4g5m3
	E+1fmYTg==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: "Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Richard Henderson <richard.henderson@linaro.org>,
	Eduardo Habkost <eduardo@habkost.net>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	Jason Wang <jasowang@redhat.com>,
	xen-devel@lists.xenproject.org
Subject: [PATCH 1/4] hw/xen: only remove peers of PCI NICs on unplug
Date: Tue, 17 Oct 2023 19:25:42 +0100
Message-Id: <20231017182545.97973-2-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231017182545.97973-1-dwmw2@infradead.org>
References: <20231017182545.97973-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by desiato.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

When the Xen guest asks to unplug *emulated* NICs, it's kind of unhelpful
also to unplug the peer of the *Xen* PV NIC.

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 hw/i386/xen/xen_platform.c | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

diff --git a/hw/i386/xen/xen_platform.c b/hw/i386/xen/xen_platform.c
index 17457ff3de..e2dd1b536a 100644
--- a/hw/i386/xen/xen_platform.c
+++ b/hw/i386/xen/xen_platform.c
@@ -140,9 +140,14 @@ static void unplug_nic(PCIBus *b, PCIDevice *d, void *o)
 /* Remove the peer of the NIC device. Normally, this would be a tap device. */
 static void del_nic_peer(NICState *nic, void *opaque)
 {
-    NetClientState *nc;
+    NetClientState *nc = qemu_get_queue(nic);
+    ObjectClass *klass = module_object_class_by_name(nc->model);
+
+    /* Only delete peers of PCI NICs that we're about to delete */
+    if (!klass || !object_class_dynamic_cast(klass, TYPE_PCI_DEVICE)) {
+        return;
+    }
 
-    nc = qemu_get_queue(nic);
     if (nc->peer)
         qemu_del_net_client(nc->peer);
 }
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Tue Oct 17 18:57:29 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 17 Oct 2023 18:57:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618347.961892 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qspFi-0005eJ-68; Tue, 17 Oct 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 618347.961892; Tue, 17 Oct 2023 18: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 1qspFi-0005eC-2y; Tue, 17 Oct 2023 18:57:14 +0000
Received: by outflank-mailman (input) for mailman id 618347;
 Tue, 17 Oct 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=qm1H=F7=casper.srs.infradead.org=BATV+e442e50539a6073fd887+7359+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qspFf-0005e5-Kk
 for xen-devel@lists.xenproject.org; Tue, 17 Oct 2023 18:57:12 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id f970e0a2-6d1e-11ee-98d4-6d05b1d4d9a1;
 Tue, 17 Oct 2023 20:57:10 +0200 (CEST)
Received: from [2001:8b0:10b:5:b9aa:f92b:5d4c:b38]
 (helo=u3832b3a9db3152.ant.amazon.com)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qspFP-00DzEV-FA; Tue, 17 Oct 2023 18:56: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: f970e0a2-6d1e-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=MIME-Version:Content-Type:References:
	In-Reply-To:Date:Cc:To:From:Subject:Message-ID:Sender:Reply-To:
	Content-Transfer-Encoding:Content-ID:Content-Description;
	bh=EfbCCVU7NyrIqUUdVgE1C+ilK0F/RpY9RxA2IYRpgh8=; b=vBDdVtvGgHMYbuD5LW1RNERKGs
	cdu3QVkbyxgTS7M6Yl0ww8EhB1VYY2fhyhVbLlSrRjolpCnGbxXSIgwGU4ADEXGAZvuwW7zXB1FsZ
	r0PCOcFTWbqoZBrASAIwN5URaWq2YXZ1CRqjvgwvWL1bpTv0EAigCSBD9Nnrer1rk2utlQ+6rpLHP
	NQs7XvZ0O0qK+ra0fAG1SZ6RWdeEYt8kAEDthiB0LUM+kIfRMEd2I0s4HChkXCC2NfjgyjiVTtUlk
	xFscsn/eRZ79SSdVqv+o3BlrRFqexiAm2wz+dyNIAKl/ygPb92qGysQqlmC5Ju4HuFZrLpqLoBqUn
	GB1NxwgQ==;
Message-ID: <f64ef83452a2366aa3458dd49963cb8730a68ecd.camel@infradead.org>
Subject: Re: [PATCH 3/4] [WTF] avoid qemu_del_nic() in
 xen_netdev_unrealize() on shutdown
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: "Michael S. Tsirkin" <mst@redhat.com>, Marcel Apfelbaum
 <marcel.apfelbaum@gmail.com>, Paolo Bonzini <pbonzini@redhat.com>, Richard
 Henderson <richard.henderson@linaro.org>, Eduardo Habkost
 <eduardo@habkost.net>, Stefano Stabellini <sstabellini@kernel.org>, Anthony
 Perard <anthony.perard@citrix.com>, Paul Durrant <paul@xen.org>, Jason Wang
 <jasowang@redhat.com>, xen-devel@lists.xenproject.org
Date: Tue, 17 Oct 2023 19:56:54 +0100
In-Reply-To: <20231017182545.97973-4-dwmw2@infradead.org>
References: <20231017182545.97973-1-dwmw2@infradead.org>
	 <20231017182545.97973-4-dwmw2@infradead.org>
Content-Type: multipart/signed; micalg="sha-256"; protocol="application/pkcs7-signature";
	boundary="=-hR9TGmu+w92c2czADWKW"
User-Agent: Evolution 3.44.4-0ubuntu2 
MIME-Version: 1.0
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html


--=-hR9TGmu+w92c2czADWKW
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Tue, 2023-10-17 at 19:25 +0100, David Woodhouse wrote:
> From: David Woodhouse <dwmw@amazon.co.uk>
>=20
> When QEMU is exiting, qemu_cleanup() calls net_cleanup(), which deletes
> the NIC from underneath the xen-net-device. When xen_netdev_unrealize()
> is later called via the xenbus exit notifier, it crashes.
>=20
> Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
> ---
> =C2=A0hw/net/xen_nic.c | 8 +++++++-
> =C2=A01 file changed, 7 insertions(+), 1 deletion(-)
>=20
> diff --git a/hw/net/xen_nic.c b/hw/net/xen_nic.c
> index 84914c329c..8d25fb3101 100644
> --- a/hw/net/xen_nic.c
> +++ b/hw/net/xen_nic.c
> @@ -25,6 +25,8 @@
> =C2=A0#include "qapi/qmp/qdict.h"
> =C2=A0#include "qapi/error.h"
> =C2=A0
> +#include "sysemu/runstate.h"
> +
> =C2=A0#include <sys/socket.h>
> =C2=A0#include <sys/ioctl.h>
> =C2=A0#include <sys/wait.h>
> @@ -530,7 +532,11 @@ static void xen_netdev_unrealize(XenDevice *xendev)
> =C2=A0=C2=A0=C2=A0=C2=A0 /* Disconnect from the frontend in case this has=
 not already happened */
> =C2=A0=C2=A0=C2=A0=C2=A0 xen_netdev_disconnect(xendev, NULL);
> =C2=A0
> -=C2=A0=C2=A0=C2=A0 if (netdev->nic) {
> +=C2=A0=C2=A0=C2=A0 /*
> +=C2=A0=C2=A0=C2=A0=C2=A0 * WTF? In RUN_STATE_SHUTDOWN, qemu_cleanup()=E2=
=86=92net_cleanup() already deleted
> +=C2=A0=C2=A0=C2=A0=C2=A0 * our NIC from underneath us!
> +=C2=A0=C2=A0=C2=A0=C2=A0 */
> +=C2=A0=C2=A0=C2=A0 if (netdev->nic && !runstate_check(RUN_STATE_SHUTDOWN=
)) {
> =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 qemu_del_nic(netdev->nic=
);
> =C2=A0=C2=A0=C2=A0=C2=A0 }
> =C2=A0}

I wonder if this is the better answer? There's no point deleting the
*NICs*, is there? It's the other net clients we really want to clean
up?

--- a/net/net.c
+++ b/net/net.c
@@ -1499,18 +1499,22 @@ static void net_vm_change_state_handler(void *opaqu=
e, bool running,
=20
 void net_cleanup(void)
 {
-    NetClientState *nc;
+    NetClientState *nc, **p =3D &net_clients.tqh_first;
=20
     /*cleanup colo compare module for COLO*/
     colo_compare_cleanup();
=20
-    /* We may del multiple entries during qemu_del_net_client(),
-     * so QTAILQ_FOREACH_SAFE() is also not safe here.
+    /*
+     * We may del multiple entries during qemu_del_net_client(), so
+     * QTAILQ_FOREACH_SAFE() is not safe here. The only safe pointer
+     * to keep is a NET_CLIENT_DRIVER_NIC entry, as we don't want
+     * to delete those (we'd upset the devices which own them, if we
+     * did).
      */
-    while (!QTAILQ_EMPTY(&net_clients)) {
-        nc =3D QTAILQ_FIRST(&net_clients);
+    while (*p) {
+        nc =3D *p;
         if (nc->info->type =3D=3D NET_CLIENT_DRIVER_NIC) {
-            qemu_del_nic(qemu_get_nic(nc));
+            p =3D &nc->next.tqe_next;
         } else {
             qemu_del_net_client(nc);
         }


--=-hR9TGmu+w92c2czADWKW
Content-Type: application/pkcs7-signature; name="smime.p7s"
Content-Disposition: attachment; filename="smime.p7s"
Content-Transfer-Encoding: base64

MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgEFADCABgkqhkiG9w0BBwEAAKCCEkQw
ggYQMIID+KADAgECAhBNlCwQ1DvglAnFgS06KwZPMA0GCSqGSIb3DQEBDAUAMIGIMQswCQYDVQQG
EwJVUzETMBEGA1UECBMKTmV3IEplcnNleTEUMBIGA1UEBxMLSmVyc2V5IENpdHkxHjAcBgNVBAoT
FVRoZSBVU0VSVFJVU1QgTmV0d29yazEuMCwGA1UEAxMlVVNFUlRydXN0IFJTQSBDZXJ0aWZpY2F0
aW9uIEF1dGhvcml0eTAeFw0xODExMDIwMDAwMDBaFw0zMDEyMzEyMzU5NTlaMIGWMQswCQYDVQQG
EwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYD
VQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50
aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC
AQEAyjztlApB/975Rrno1jvm2pK/KxBOqhq8gr2+JhwpKirSzZxQgT9tlC7zl6hn1fXjSo5MqXUf
ItMltrMaXqcESJuK8dtK56NCSrq4iDKaKq9NxOXFmqXX2zN8HHGjQ2b2Xv0v1L5Nk1MQPKA19xeW
QcpGEGFUUd0kN+oHox+L9aV1rjfNiCj3bJk6kJaOPabPi2503nn/ITX5e8WfPnGw4VuZ79Khj1YB
rf24k5Ee1sLTHsLtpiK9OjG4iQRBdq6Z/TlVx/hGAez5h36bBJMxqdHLpdwIUkTqT8se3ed0PewD
ch/8kHPo5fZl5u1B0ecpq/sDN/5sCG52Ds+QU5O5EwIDAQABo4IBZDCCAWAwHwYDVR0jBBgwFoAU
U3m/WqorSs9UgOHYm8Cd8rIDZsswHQYDVR0OBBYEFAnA8vwL2pTbX/4r36iZQs/J4K0AMA4GA1Ud
DwEB/wQEAwIBhjASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEF
BQcDBDARBgNVHSAECjAIMAYGBFUdIAAwUAYDVR0fBEkwRzBFoEOgQYY/aHR0cDovL2NybC51c2Vy
dHJ1c3QuY29tL1VTRVJUcnVzdFJTQUNlcnRpZmljYXRpb25BdXRob3JpdHkuY3JsMHYGCCsGAQUF
BwEBBGowaDA/BggrBgEFBQcwAoYzaHR0cDovL2NydC51c2VydHJ1c3QuY29tL1VTRVJUcnVzdFJT
QUFkZFRydXN0Q0EuY3J0MCUGCCsGAQUFBzABhhlodHRwOi8vb2NzcC51c2VydHJ1c3QuY29tMA0G
CSqGSIb3DQEBDAUAA4ICAQBBRHUAqznCFfXejpVtMnFojADdF9d6HBA4kMjjsb0XMZHztuOCtKF+
xswhh2GqkW5JQrM8zVlU+A2VP72Ky2nlRA1GwmIPgou74TZ/XTarHG8zdMSgaDrkVYzz1g3nIVO9
IHk96VwsacIvBF8JfqIs+8aWH2PfSUrNxP6Ys7U0sZYx4rXD6+cqFq/ZW5BUfClN/rhk2ddQXyn7
kkmka2RQb9d90nmNHdgKrwfQ49mQ2hWQNDkJJIXwKjYA6VUR/fZUFeCUisdDe/0ABLTI+jheXUV1
eoYV7lNwNBKpeHdNuO6Aacb533JlfeUHxvBz9OfYWUiXu09sMAviM11Q0DuMZ5760CdO2VnpsXP4
KxaYIhvqPqUMWqRdWyn7crItNkZeroXaecG03i3mM7dkiPaCkgocBg0EBYsbZDZ8bsG3a08LwEsL
1Ygz3SBsyECa0waq4hOf/Z85F2w2ZpXfP+w8q4ifwO90SGZZV+HR/Jh6rEaVPDRF/CEGVqR1hiuQ
OZ1YL5ezMTX0ZSLwrymUE0pwi/KDaiYB15uswgeIAcA6JzPFf9pLkAFFWs1QNyN++niFhsM47qod
x/PL+5jR87myx5uYdBEQkkDc+lKB1Wct6ucXqm2EmsaQ0M95QjTmy+rDWjkDYdw3Ms6mSWE3Bn7i
5ZgtwCLXgAIe5W8mybM2JzCCBhQwggT8oAMCAQICEQDGvhmWZ0DEAx0oURL6O6l+MA0GCSqGSIb3
DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYD
VQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28g
UlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMB4XDTIyMDEwNzAw
MDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJARYTZHdtdzJAaW5mcmFkZWFkLm9y
ZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3GpC2bomUqk+91wLYBzDMcCj5C9m6
oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZHh7htyAkWYVoFsFPrwHounto8xTsy
SSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT9YgcBqKCo65pTFmOnR/VVbjJk4K2
xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNjP+qDrh0db7PAjO1D4d5ftfrsf+kd
RR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy2U+eITZ5LLE5s45mX2oPFknWqxBo
bQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3BgBEmfsYWlBXO8rVXfvPgLs32VdV
NZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/7auNVRmPB3v5SWEsH8xi4Bez2V9U
KxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmdlFYhAflWKQ03Ufiu8t3iBE3VJbc2
5oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9aelIl6vtbhMA+l0nfrsORMa4kobqQ5
C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMBAAGjggHMMIIByDAfBgNVHSMEGDAW
gBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeDMcimo0oz8o1R1Nver3ZVpSkwDgYD
VR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYwFAYIKwYBBQUHAwQGCCsGAQUFBwMC
MEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYBBQUHAgEWF2h0dHBzOi8vc2VjdGln
by5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9jcmwuc2VjdGlnby5jb20vU2VjdGln
b1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1haWxDQS5jcmwwgYoGCCsGAQUFBwEB
BH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdvLmNvbS9TZWN0aWdvUlNBQ2xpZW50
QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAjBggrBgEFBQcwAYYXaHR0cDovL29j
c3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5mcmFkZWFkLm9yZzANBgkqhkiG9w0B
AQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQvQ/fzPXmtR9t54rpmI2TfyvcKgOXp
qa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvIlSPrzIB4Z2wyIGQpaPLlYflrrVFK
v9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9ChWFfgSXvrWDZspnU3Gjw/rMHrGnql
Htlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0whpBtXdyDjzBtQTaZJ7zTT/vlehc/
tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9IzCCBhQwggT8oAMCAQICEQDGvhmW
Z0DEAx0oURL6O6l+MA0GCSqGSIb3DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3Jl
YXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0
ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJl
IEVtYWlsIENBMB4XDTIyMDEwNzAwMDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJ
ARYTZHdtdzJAaW5mcmFkZWFkLm9yZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3
GpC2bomUqk+91wLYBzDMcCj5C9m6oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZH
h7htyAkWYVoFsFPrwHounto8xTsySSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT
9YgcBqKCo65pTFmOnR/VVbjJk4K2xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNj
P+qDrh0db7PAjO1D4d5ftfrsf+kdRR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy
2U+eITZ5LLE5s45mX2oPFknWqxBobQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3
BgBEmfsYWlBXO8rVXfvPgLs32VdVNZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/
7auNVRmPB3v5SWEsH8xi4Bez2V9UKxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmd
lFYhAflWKQ03Ufiu8t3iBE3VJbc25oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9ae
lIl6vtbhMA+l0nfrsORMa4kobqQ5C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMB
AAGjggHMMIIByDAfBgNVHSMEGDAWgBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeD
Mcimo0oz8o1R1Nver3ZVpSkwDgYDVR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYw
FAYIKwYBBQUHAwQGCCsGAQUFBwMCMEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYB
BQUHAgEWF2h0dHBzOi8vc2VjdGlnby5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9j
cmwuc2VjdGlnby5jb20vU2VjdGlnb1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1h
aWxDQS5jcmwwgYoGCCsGAQUFBwEBBH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdv
LmNvbS9TZWN0aWdvUlNBQ2xpZW50QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAj
BggrBgEFBQcwAYYXaHR0cDovL29jc3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5m
cmFkZWFkLm9yZzANBgkqhkiG9w0BAQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQv
Q/fzPXmtR9t54rpmI2TfyvcKgOXpqa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvI
lSPrzIB4Z2wyIGQpaPLlYflrrVFKv9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9Ch
WFfgSXvrWDZspnU3Gjw/rMHrGnqlHtlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0w
hpBtXdyDjzBtQTaZJ7zTT/vlehc/tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9
IzGCBMcwggTDAgEBMIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVz
dGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMT
NVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEA
xr4ZlmdAxAMdKFES+jupfjANBglghkgBZQMEAgEFAKCCAeswGAYJKoZIhvcNAQkDMQsGCSqGSIb3
DQEHATAcBgkqhkiG9w0BCQUxDxcNMjMxMDE3MTg1NjU0WjAvBgkqhkiG9w0BCQQxIgQgoODushL6
/Ylx5sAXCSE1aPDJyrLRVZo++KZXStLujUYwgb0GCSsGAQQBgjcQBDGBrzCBrDCBljELMAkGA1UE
BhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEYMBYG
A1UEChMPU2VjdGlnbyBMaW1pdGVkMT4wPAYDVQQDEzVTZWN0aWdvIFJTQSBDbGllbnQgQXV0aGVu
dGljYXRpb24gYW5kIFNlY3VyZSBFbWFpbCBDQQIRAMa+GZZnQMQDHShREvo7qX4wgb8GCyqGSIb3
DQEJEAILMYGvoIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVy
MRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNl
Y3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEAxr4Z
lmdAxAMdKFES+jupfjANBgkqhkiG9w0BAQEFAASCAgA/k0UFLoaD55dCJujDZQX9kc/WvCWoRlTl
QeOqeW+PWQL4oSL3OpmmQeNjjQ9hYlWHauA40B97miKN+ISGo1+ml/wl8G7NrlCYjyJltlK45FHA
M06aL+9Po7eg/uy1mGvrnsa3W2dqjWmP2oKKtUhy1ScmKJ1EaLH9230Tftu+270Vr/WSGauhFikG
PkoZtyA5e4PN/BYhJYDV/qbBIEFnm4J3+ImPX4eUsLhELaCfkIYckVAgIDWA42c9E3+5kRbZSe56
GME3NrpE0coQO9ldjd3U/eDhwmQ66XasoQXxsSgfsO9n/M8RK4fVqAJ9fZ0Qb9+zhNNJ5o0oGr0g
9Y/CqEgl9FX1oywn8jUGOV3HkBdi5XlWtudD/Z1qxdTymfOl4eRMVmSBoMNH+EzTAI/LV7qzihbJ
FaSz7/7da5m/spBzpSRTu6aSk/rh+8cTzID1qmfS342cVlNPejDbZED8kqOZKQ1kvj6GuR+npJLe
z/9iu/EOo4KSHUkNck5pb2zwomSoNLx8tEnUikxSh16hQadPlh357v791jbbCJp2CRlnTIMnmnPv
V1k3w+nN6dl7i0bR5gJaQYpqD+eUw//Emy4Dl7thTHhxBUPcilk6IFhPDZtrfmVnOsdTWXgjFySx
/rRf1sKfRIN/vudyuZTSd51pwfZEshWW2y355gP4ewAAAAAAAA==


--=-hR9TGmu+w92c2czADWKW--


From xen-devel-bounces@lists.xenproject.org Tue Oct 17 19:59:12 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 17 Oct 2023 19:59:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618352.961901 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsqDP-0000Fj-EH; Tue, 17 Oct 2023 19:58:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618352.961901; Tue, 17 Oct 2023 19: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 1qsqDP-0000Fc-Bk; Tue, 17 Oct 2023 19:58:55 +0000
Received: by outflank-mailman (input) for mailman id 618352;
 Tue, 17 Oct 2023 19:58: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=dFgi=F7=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qsqDO-0000FU-6z
 for xen-devel@lists.xenproject.org; Tue, 17 Oct 2023 19:58:54 +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 966241ab-6d27-11ee-9b0e-b553b5be7939;
 Tue, 17 Oct 2023 21:58:50 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by sin.source.kernel.org (Postfix) with ESMTP id A7F8DCE1CF6;
 Tue, 17 Oct 2023 19:58:44 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 78C84C433C7;
 Tue, 17 Oct 2023 19:58: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: 966241ab-6d27-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1697572723;
	bh=PP7AX4Pq9aIcZ9xC5nXuuSDj/kmLE8PT+8RSDCw6ZsI=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=odGh0r2g6YoZ5CMd8LV8sRLohVIwtPQHPgchP5P7te6Aj/13KnTTVhbNXmTZr/Kk/
	 086u+/nd/Q0K0uM0AqihATAokIrkMCNzDVBWb9e4nQmSfwNIn8hXp49qwpSXwWf3r6
	 +M+hkvKUe3p/eUiSS1K19Dn0hSI0gq428mjmOltVshXyL7I93nGm96pEB9HT0v4tXh
	 Y1NQyVUO2Hqp0WWGHinLU47+vy4QKvQXIYQIfWRi/F5GIX7SGUF++fB3lHTl+WzQya
	 AT69MUmcsnN14xUkEtNjat//U6HTSKm8NRGFHFkwj7ShmOrtbBi9af5OPIyLECn8AJ
	 Wx48Pp/J9v1Xg==
Date: Tue, 17 Oct 2023 12:58:41 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Julien Grall <julien@xen.org>
cc: Bertrand Marquis <Bertrand.Marquis@arm.com>, 
    Alexey Klimov <alexey.klimov@linaro.org>, 
    Luca Fancellu <Luca.Fancellu@arm.com>, Michal Orzel <michal.orzel@amd.com>, 
    "leo.yan@linaro.org" <leo.yan@linaro.org>, 
    Xen-devel <xen-devel@lists.xenproject.org>, 
    Stefano Stabellini <sstabellini@kernel.org>, 
    Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, 
    Rahul Singh <Rahul.Singh@arm.com>, Henry Wang <Henry.Wang@arm.com>
Subject: Re: [PATCH v4 2/2] xen/arm: Enlarge identity map space to 10TB
In-Reply-To: <990b21a3-f8c7-4d02-a8ac-63d31794a76d@xen.org>
Message-ID: <alpine.DEB.2.22.394.2310171258330.965337@ubuntu-linux-20-04-desktop>
References: <20231013122658.1270506-1-leo.yan@linaro.org> <20231013122658.1270506-3-leo.yan@linaro.org> <169101f8-0475-45b1-b2c2-60dadd88d3f0@amd.com> <5a5e960b-e6fd-4617-b33a-10cf07f5bb52@xen.org> <8BCB97B4-CBDD-43D9-B0F8-7F637B8BE559@arm.com>
 <4B2BD200-5D3E-49D5-BF13-65B769AD4B90@arm.com> <CANgGJDqHu0CB=zzZqda18giLYDkL3My+gT592GLO-b9HsF2A4g@mail.gmail.com> <d3952200-9edb-4de0-94e3-c00c571a10b9@xen.org> <794B0D71-70A7-4546-98E0-EC01573E0D89@arm.com>
 <990b21a3-f8c7-4d02-a8ac-63d31794a76d@xen.org>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="8323329-551337818-1697572723=:965337"

  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-551337818-1697572723=:965337
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8BIT

On Mon, 15 Oct 2023, Julien Grall wrote:
> On 16/10/2023 16:07, Bertrand Marquis wrote:
> > > On 16 Oct 2023, at 16:46, Julien Grall <julien@xen.org> wrote:
> > > CC Henry
> > > 
> > > Hi Alexey,
> > > 
> > > On 16/10/2023 15:24, Alexey Klimov wrote:
> > > > On Mon, 16 Oct 2023 at 15:13, Luca Fancellu <Luca.Fancellu@arm.com>
> > > > wrote:
> > > > > 
> > > > > 
> > > > > 
> > > > > > On 16 Oct 2023, at 15:00, Bertrand Marquis
> > > > > > <Bertrand.Marquis@arm.com> wrote:
> > > > > > 
> > > > > > Hi
> > > > > > 
> > > > > > +Luca and Rahul
> > > > > > 
> > > > > > > On 16 Oct 2023, at 15:54, Julien Grall <julien@xen.org> wrote:
> > > > > > > 
> > > > > > > 
> > > > > > > 
> > > > > > > On 16/10/2023 09:44, Michal Orzel wrote:
> > > > > > > > Hi,
> > > > > > > 
> > > > > > > Hi,
> > > > > > > 
> > > > > > > > On 13/10/2023 14:26, 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 10TB, allowing
> > > > > > > > > module loading
> > > > > > > > > within the range of [0x0 .. 0x000009ff_ffff_ffff].
> > > > > > > > > 
> > > > > > > > > Fixes: 1c78d76b67 ("xen/arm64: mm: Introduce helpers to
> > > > > > > > > prepare/enable/disable")
> > > > > > > > I don't think a fixes tag applies here given that 2TB was just a
> > > > > > > > number we believed is enough
> > > > > > > > and all of this is platform dependent.
> > > > > > > > This can be dropped on commit if committer agrees
> > > > > > > Xen may have booted on that platform before hand. So this would be
> > > > > > > considered a regression and therefore a tag would be warrant.
> > > > > > > 
> > > > > > > AFAICT, the commit is only present on the upcoming 4.18. So the
> > > > > > > question is whether Xen 4.17 booted out-of-the-box on ADLink? If
> > > > > > > the answer is yes, then we need to add a Fixes tag. But the
> > > > > > > correct one would be
> > > > > > > 
> > > > > > 
> > > > > > @Rahul or Luca: could you give an answer here ?
> > > > > > I know you used Xen on an AVA platform but was it booting out of the
> > > > > > box ?
> > > > > 
> > > > > I can’t say for Xen 4.17, but our nightly job has run successfully on
> > > > > AVA for the commit 730406ab81094115d9fb5ca00ba8d53cec1279b3
> > > > > (docs/misra: add deviations.rst to document additional deviations.)
> > > > > 
> > > > > We are not applying any patch for it to run on AVA.
> > > > Most likely it is because your UEFI/BIOS firmware is 2.x, for instance
> > > > 2.04.100.07.
> > > > This fix if for AVA machine with older UEFI firmware 1.07.300.03.
> > > 
> > > OOI, why not updating your firmware? I was expecting that it would also
> > > contain other critical fixes.
> > > 
> > > With this in mind, I am now more in two mind to ask to merge this patch in
> > > Xen 4.18. On one hand, I understand it will help to boot on AVA machine
> > > with an older firmware. But on the other hand this is changing the memory
> > > layout quite late in the release. The risk seems limited because Xen is
> > > not loaded at the top of the virtual address space (there is the directmap
> > > afterwards).
> > > 
> > > Henry (as the release manager) and others, any opinions?
> > 
> > With the new information, I think it should be stated that it is fixing an
> > issue on AVA platforms using an old firmware and platforms with and
> > up-to-date firmware are not impacted.
> > It is an important information to keep in mind that this is not a fix to be
> > backported for example (and for me the fixes tag should not be kept).
> 
> IMHO, the fixes tag should not be based solely on the AVA platform. It should
> be based on whether this could sensibly affect others. Right now, there is
> nothing that would indicate either way.
> 
> And therefore a Fixes tag is sensible. This doesn't mean I would want to
> backport it right now (note that only 4.18 is affected). But this could change
> in the future if we get another report (post-4.18) on a platform where there
> are no other workaround.
> 
> Stefano any opinions?

The Fixes tag carries useful information but the problem is that it is
typically used for identifying backports and this is not a backport (at
least today we would not consider it a backport).

So I would provide the same information but without using the Fixes tag.
For instance: "This commit fixes an issue that was introduced by XXX
because of YYY and only affects the AVA platform with not up-to-date
firmware".

That way, we avoid the risk of someone taking all the applicable commits
with a Fixes tag and backporting them without thinking twice about it.
But we still have the information in the git log.
--8323329-551337818-1697572723=:965337--


From xen-devel-bounces@lists.xenproject.org Tue Oct 17 20:03:59 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 17 Oct 2023 20:03:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618356.961911 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsqII-00026A-05; Tue, 17 Oct 2023 20:03:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618356.961911; Tue, 17 Oct 2023 20: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 1qsqIH-000263-To; Tue, 17 Oct 2023 20:03:57 +0000
Received: by outflank-mailman (input) for mailman id 618356;
 Tue, 17 Oct 2023 20:03: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=GJo3=F7=ilande.co.uk=mark.cave-ayland@srs-se1.protection.inumbo.net>)
 id 1qsqIG-00025x-Us
 for xen-devel@lists.xenproject.org; Tue, 17 Oct 2023 20:03:57 +0000
Received: from mail.ilande.co.uk (mail.ilande.co.uk [2001:41c9:1:41f::167])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 4b8a8ca4-6d28-11ee-9b0e-b553b5be7939;
 Tue, 17 Oct 2023 22:03:53 +0200 (CEST)
Received: from [2a00:23c4:8bb0:3200:407d:a65c:9fb4:b9b4]
 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 1qsqI1-0001Wa-Ei; Tue, 17 Oct 2023 21:03:45 +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: 4b8a8ca4-6d28-11ee-9b0e-b553b5be7939
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=Uuyqiv3nZGm9IgxXvUvISIuIpnNbmO1i/BKyCpPauZg=; b=SCBq71hxcx9gsL/i0Hywr5DGoe
	8HuzyWolFaLTXsz9p8YsZLFxURbHTVaif2UzYOLac+fvlDzcQn12XQMXDQ3JV9uvBR+xrtx+KvhGN
	ZOK4i8HOYwbZX440K+YUEVIIxcBUDUuRy5GjnRi0onQ6Ynghp3dkLEwMNdqLSuRVzivYKQ9+MgKXm
	XJFRPZPh9Qpr24cSW5hL940CkCim9Kpr7Pl+necms61nFfCnWtNtceMv0ol9xNX7syQYagONk7cH/
	2w9Ok524668xVApbQHdIHll7kZ4hM4380k8UywivT+9WTXACbFx1y108nWCwaRcNdAqDK12FqzWG0
	hVXdE9hpwbPSXwKjlJv7mtkSokoqoJ8Qhk6yXxqUvH8mHtxrV40YH1Y+ci3Tkl6DtwYwNDSFdALF7
	wC9I9tldydlDRrgfkKyQelCriuKEx7g0RnHy6COLnTSOwLKuipGi/gqKQvzYLkqq69cOgA9QSqxat
	WGhSLlgc/6uChPV1swcjBOtN1N97P/Rn7h6Zkz17Y2xrlfJ+xfYGTI6ZQpHM7PDb/5CmN+AQSvrv6
	5aCAS4xsJamZGBUYo1vewJEeSwf8b1Lnq9B8xesSPKjxN5cwpNolAiFYS2vD1Yw2ij4gybSBAvhZZ
	TwJQxep0sD9INMZX4KVZV2AoNkgSuuxM5pcPb+b7U=;
Message-ID: <b8e0311c-242e-4447-937c-70b43d4d255b@ilande.co.uk>
Date: Tue, 17 Oct 2023 21:03:42 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Content-Language: en-US
To: =?UTF-8?Q?Philippe_Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
 qemu-devel@nongnu.org
Cc: "Michael S. Tsirkin" <mst@redhat.com>, xen-devel@lists.xenproject.org,
 Stefano Stabellini <sstabellini@kernel.org>, qemu-ppc@nongnu.org,
 Paul Durrant <paul@xen.org>, Paolo Bonzini <pbonzini@redhat.com>,
 Song Gao <gaosong@loongson.cn>, Gerd Hoffmann <kraxel@redhat.com>,
 Anthony Perard <anthony.perard@citrix.com>,
 =?UTF-8?Q?Marc-Andr=C3=A9_Lureau?= <marcandre.lureau@redhat.com>
References: <20231017131251.43708-1-philmd@linaro.org>
From: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
Autocrypt: addr=mark.cave-ayland@ilande.co.uk; keydata=
 xsBNBFQJuzwBCADAYvxrwUh1p/PvUlNFwKosVtVHHplgWi5p29t58QlOUkceZG0DBYSNqk93
 3JzBTbtd4JfFcSupo6MNNOrCzdCbCjZ64ik8ycaUOSzK2tKbeQLEXzXoaDL1Y7vuVO7nL9bG
 E5Ru3wkhCFc7SkoypIoAUqz8EtiB6T89/D9TDEyjdXUacc53R5gu8wEWiMg5MQQuGwzbQy9n
 PFI+mXC7AaEUqBVc2lBQVpAYXkN0EyqNNT12UfDLdxaxaFpUAE2pCa2LTyo5vn5hEW+i3VdN
 PkmjyPvL6DdY03fvC01PyY8zaw+UI94QqjlrDisHpUH40IUPpC/NB0LwzL2aQOMkzT2NABEB
 AAHNME1hcmsgQ2F2ZS1BeWxhbmQgPG1hcmsuY2F2ZS1heWxhbmRAaWxhbmRlLmNvLnVrPsLA
 eAQTAQIAIgUCVAm7PAIbAwYLCQgHAwIGFQgCCQoLBBYCAwECHgECF4AACgkQW8LFb64PMh9f
 NAgAuc3ObOEY8NbZko72AGrg2tWKdybcMVITxmcor4hb9155o/OWcA4IDbeATR6cfiDL/oxU
 mcmtXVgPqOwtW3NYAKr5g/FrZZ3uluQ2mtNYAyTFeALy8YF7N3yhs7LOcpbFP7tEbkSzoXNG
 z8iYMiYtKwttt40WaheWuRs0ZOLbs6yoczZBDhna3Nj0LA3GpeJKlaV03O4umjKJgACP1c/q
 T2Pkg+FCBHHFP454+waqojHp4OCBo6HyK+8I4wJRa9Z0EFqXIu8lTDYoggeX0Xd6bWeCFHK3
 DhD0/Xi/kegSW33unsp8oVcM4kcFxTkpBgj39dB4KwAUznhTJR0zUHf63M7ATQRUCbs8AQgA
 y7kyevA4bpetM/EjtuqQX4U05MBhEz/2SFkX6IaGtTG2NNw5wbcAfhOIuNNBYbw6ExuaJ3um
 2uLseHnudmvN4VSJ5Hfbd8rhqoMmmO71szgT/ZD9MEe2KHzBdmhmhxJdp+zQNivy215j6H27
 14mbC2dia7ktwP1rxPIX1OOfQwPuqlkmYPuVwZP19S4EYnCELOrnJ0m56tZLn5Zj+1jZX9Co
 YbNLMa28qsktYJ4oU4jtn6V79H+/zpERZAHmH40IRXdR3hA+Ye7iC/ZpWzT2VSDlPbGY9Yja
 Sp7w2347L5G+LLbAfaVoejHlfy/msPeehUcuKjAdBLoEhSPYzzdvEQARAQABwsBfBBgBAgAJ
 BQJUCbs8AhsMAAoJEFvCxW+uDzIfabYIAJXmBepHJpvCPiMNEQJNJ2ZSzSjhic84LTMWMbJ+
 opQgr5cb8SPQyyb508fc8b4uD8ejlF/cdbbBNktp3BXsHlO5BrmcABgxSP8HYYNsX0n9kERv
 NMToU0oiBuAaX7O/0K9+BW+3+PGMwiu5ml0cwDqljxfVN0dUBZnQ8kZpLsY+WDrIHmQWjtH+
 Ir6VauZs5Gp25XLrL6bh/SL8aK0BX6y79m5nhfKI1/6qtzHAjtMAjqy8ChPvOqVVVqmGUzFg
 KPsrrIoklWcYHXPyMLj9afispPVR8e0tMKvxzFBWzrWX1mzljbBlnV2n8BIwVXWNbgwpHSsj
 imgcU9TTGC5qd9g=
In-Reply-To: <20231017131251.43708-1-philmd@linaro.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
X-SA-Exim-Connect-IP: 2a00:23c4:8bb0:3200:407d:a65c:9fb4:b9b4
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] ui/input: Constify QemuInputHandler structure
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 17/10/2023 14:12, Philippe Mathieu-Daudé wrote:

> Access to QemuInputHandlerState::handler are read-only.
> 
> Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
> ---
>   include/hw/virtio/virtio-input.h | 2 +-
>   include/ui/input.h               | 2 +-
>   chardev/msmouse.c                | 2 +-
>   chardev/wctablet.c               | 2 +-
>   hw/char/escc.c                   | 2 +-
>   hw/display/xenfb.c               | 6 +++---
>   hw/input/adb-kbd.c               | 2 +-
>   hw/input/hid.c                   | 6 +++---
>   hw/input/ps2.c                   | 4 ++--
>   hw/input/virtio-input-hid.c      | 8 ++++----
>   ui/input-legacy.c                | 2 +-
>   ui/input.c                       | 4 ++--
>   ui/vdagent.c                     | 2 +-
>   13 files changed, 22 insertions(+), 22 deletions(-)
> 
> diff --git a/include/hw/virtio/virtio-input.h b/include/hw/virtio/virtio-input.h
> index 08f1591424..a6c9703644 100644
> --- a/include/hw/virtio/virtio-input.h
> +++ b/include/hw/virtio/virtio-input.h
> @@ -84,7 +84,7 @@ struct VirtIOInputHID {
>       VirtIOInput                       parent_obj;
>       char                              *display;
>       uint32_t                          head;
> -    QemuInputHandler                  *handler;
> +    const QemuInputHandler            *handler;
>       QemuInputHandlerState             *hs;
>       int                               ledstate;
>       bool                              wheel_axis;
> diff --git a/include/ui/input.h b/include/ui/input.h
> index 24d8e4579e..8f9aac562e 100644
> --- a/include/ui/input.h
> +++ b/include/ui/input.h
> @@ -30,7 +30,7 @@ struct QemuInputHandler {
>   };
>   
>   QemuInputHandlerState *qemu_input_handler_register(DeviceState *dev,
> -                                                   QemuInputHandler *handler);
> +                                            const QemuInputHandler *handler);
>   void qemu_input_handler_activate(QemuInputHandlerState *s);
>   void qemu_input_handler_deactivate(QemuInputHandlerState *s);
>   void qemu_input_handler_unregister(QemuInputHandlerState *s);
> diff --git a/chardev/msmouse.c b/chardev/msmouse.c
> index ab8fe981d6..a774c397b4 100644
> --- a/chardev/msmouse.c
> +++ b/chardev/msmouse.c
> @@ -171,7 +171,7 @@ static int msmouse_chr_write(struct Chardev *s, const uint8_t *buf, int len)
>       return len;
>   }
>   
> -static QemuInputHandler msmouse_handler = {
> +static const QemuInputHandler msmouse_handler = {
>       .name  = "QEMU Microsoft Mouse",
>       .mask  = INPUT_EVENT_MASK_BTN | INPUT_EVENT_MASK_REL,
>       .event = msmouse_input_event,
> diff --git a/chardev/wctablet.c b/chardev/wctablet.c
> index 43bdf6b608..f4008bf35b 100644
> --- a/chardev/wctablet.c
> +++ b/chardev/wctablet.c
> @@ -178,7 +178,7 @@ static void wctablet_input_sync(DeviceState *dev)
>       }
>   }
>   
> -static QemuInputHandler wctablet_handler = {
> +static const QemuInputHandler wctablet_handler = {
>       .name  = "QEMU Wacom Pen Tablet",
>       .mask  = INPUT_EVENT_MASK_BTN | INPUT_EVENT_MASK_ABS,
>       .event = wctablet_input_event,
> diff --git a/hw/char/escc.c b/hw/char/escc.c
> index 4be66053c1..48b30ee760 100644
> --- a/hw/char/escc.c
> +++ b/hw/char/escc.c
> @@ -845,7 +845,7 @@ static void sunkbd_handle_event(DeviceState *dev, QemuConsole *src,
>       put_queue(s, keycode);
>   }
>   
> -static QemuInputHandler sunkbd_handler = {
> +static const QemuInputHandler sunkbd_handler = {
>       .name  = "sun keyboard",
>       .mask  = INPUT_EVENT_MASK_KEY,
>       .event = sunkbd_handle_event,
> diff --git a/hw/display/xenfb.c b/hw/display/xenfb.c
> index 0074a9b6f8..b2130a0d70 100644
> --- a/hw/display/xenfb.c
> +++ b/hw/display/xenfb.c
> @@ -321,20 +321,20 @@ static void xenfb_mouse_sync(DeviceState *dev)
>       xenfb->wheel = 0;
>   }
>   
> -static QemuInputHandler xenfb_keyboard = {
> +static const QemuInputHandler xenfb_keyboard = {
>       .name  = "Xen PV Keyboard",
>       .mask  = INPUT_EVENT_MASK_KEY,
>       .event = xenfb_key_event,
>   };
>   
> -static QemuInputHandler xenfb_abs_mouse = {
> +static const QemuInputHandler xenfb_abs_mouse = {
>       .name  = "Xen PV Mouse",
>       .mask  = INPUT_EVENT_MASK_BTN | INPUT_EVENT_MASK_ABS,
>       .event = xenfb_mouse_event,
>       .sync  = xenfb_mouse_sync,
>   };
>   
> -static QemuInputHandler xenfb_rel_mouse = {
> +static const QemuInputHandler xenfb_rel_mouse = {
>       .name  = "Xen PV Mouse",
>       .mask  = INPUT_EVENT_MASK_BTN | INPUT_EVENT_MASK_REL,
>       .event = xenfb_mouse_event,
> diff --git a/hw/input/adb-kbd.c b/hw/input/adb-kbd.c
> index a9088c910c..e21edf9acd 100644
> --- a/hw/input/adb-kbd.c
> +++ b/hw/input/adb-kbd.c
> @@ -355,7 +355,7 @@ static void adb_kbd_reset(DeviceState *dev)
>       s->count = 0;
>   }
>   
> -static QemuInputHandler adb_keyboard_handler = {
> +static const QemuInputHandler adb_keyboard_handler = {
>       .name  = "QEMU ADB Keyboard",
>       .mask  = INPUT_EVENT_MASK_KEY,
>       .event = adb_keyboard_event,
> diff --git a/hw/input/hid.c b/hw/input/hid.c
> index a9c7dd1ce1..b8e85374ca 100644
> --- a/hw/input/hid.c
> +++ b/hw/input/hid.c
> @@ -510,20 +510,20 @@ void hid_free(HIDState *hs)
>       hid_del_idle_timer(hs);
>   }
>   
> -static QemuInputHandler hid_keyboard_handler = {
> +static const QemuInputHandler hid_keyboard_handler = {
>       .name  = "QEMU HID Keyboard",
>       .mask  = INPUT_EVENT_MASK_KEY,
>       .event = hid_keyboard_event,
>   };
>   
> -static QemuInputHandler hid_mouse_handler = {
> +static const QemuInputHandler hid_mouse_handler = {
>       .name  = "QEMU HID Mouse",
>       .mask  = INPUT_EVENT_MASK_BTN | INPUT_EVENT_MASK_REL,
>       .event = hid_pointer_event,
>       .sync  = hid_pointer_sync,
>   };
>   
> -static QemuInputHandler hid_tablet_handler = {
> +static const QemuInputHandler hid_tablet_handler = {
>       .name  = "QEMU HID Tablet",
>       .mask  = INPUT_EVENT_MASK_BTN | INPUT_EVENT_MASK_ABS,
>       .event = hid_pointer_event,
> diff --git a/hw/input/ps2.c b/hw/input/ps2.c
> index 45af76a837..c8fd23cf36 100644
> --- a/hw/input/ps2.c
> +++ b/hw/input/ps2.c
> @@ -1231,7 +1231,7 @@ static const VMStateDescription vmstate_ps2_mouse = {
>       }
>   };
>   
> -static QemuInputHandler ps2_keyboard_handler = {
> +static const QemuInputHandler ps2_keyboard_handler = {
>       .name  = "QEMU PS/2 Keyboard",
>       .mask  = INPUT_EVENT_MASK_KEY,
>       .event = ps2_keyboard_event,
> @@ -1242,7 +1242,7 @@ static void ps2_kbd_realize(DeviceState *dev, Error **errp)
>       qemu_input_handler_register(dev, &ps2_keyboard_handler);
>   }
>   
> -static QemuInputHandler ps2_mouse_handler = {
> +static const QemuInputHandler ps2_mouse_handler = {
>       .name  = "QEMU PS/2 Mouse",
>       .mask  = INPUT_EVENT_MASK_BTN | INPUT_EVENT_MASK_REL,
>       .event = ps2_mouse_event,
> diff --git a/hw/input/virtio-input-hid.c b/hw/input/virtio-input-hid.c
> index 7053ad72d4..45e4d4c75d 100644
> --- a/hw/input/virtio-input-hid.c
> +++ b/hw/input/virtio-input-hid.c
> @@ -265,7 +265,7 @@ static const TypeInfo virtio_input_hid_info = {
>   
>   /* ----------------------------------------------------------------- */
>   
> -static QemuInputHandler virtio_keyboard_handler = {
> +static const QemuInputHandler virtio_keyboard_handler = {
>       .name  = VIRTIO_ID_NAME_KEYBOARD,
>       .mask  = INPUT_EVENT_MASK_KEY,
>       .event = virtio_input_handle_event,
> @@ -322,7 +322,7 @@ static const TypeInfo virtio_keyboard_info = {
>   
>   /* ----------------------------------------------------------------- */
>   
> -static QemuInputHandler virtio_mouse_handler = {
> +static const QemuInputHandler virtio_mouse_handler = {
>       .name  = VIRTIO_ID_NAME_MOUSE,
>       .mask  = INPUT_EVENT_MASK_BTN | INPUT_EVENT_MASK_REL,
>       .event = virtio_input_handle_event,
> @@ -416,7 +416,7 @@ static const TypeInfo virtio_mouse_info = {
>   
>   /* ----------------------------------------------------------------- */
>   
> -static QemuInputHandler virtio_tablet_handler = {
> +static const QemuInputHandler virtio_tablet_handler = {
>       .name  = VIRTIO_ID_NAME_TABLET,
>       .mask  = INPUT_EVENT_MASK_BTN | INPUT_EVENT_MASK_ABS,
>       .event = virtio_input_handle_event,
> @@ -541,7 +541,7 @@ static const TypeInfo virtio_tablet_info = {
>   
>   /* ----------------------------------------------------------------- */
>   
> -static QemuInputHandler virtio_multitouch_handler = {
> +static const QemuInputHandler virtio_multitouch_handler = {
>       .name  = VIRTIO_ID_NAME_MULTITOUCH,
>       .mask  = INPUT_EVENT_MASK_BTN | INPUT_EVENT_MASK_MTT,
>       .event = virtio_input_handle_event,
> diff --git a/ui/input-legacy.c b/ui/input-legacy.c
> index 46ea74e44d..210ae5eaca 100644
> --- a/ui/input-legacy.c
> +++ b/ui/input-legacy.c
> @@ -127,7 +127,7 @@ static void legacy_kbd_event(DeviceState *dev, QemuConsole *src,
>       }
>   }
>   
> -static QemuInputHandler legacy_kbd_handler = {
> +static const QemuInputHandler legacy_kbd_handler = {
>       .name  = "legacy-kbd",
>       .mask  = INPUT_EVENT_MASK_KEY,
>       .event = legacy_kbd_event,
> diff --git a/ui/input.c b/ui/input.c
> index cbe8573c5c..dc745860f4 100644
> --- a/ui/input.c
> +++ b/ui/input.c
> @@ -10,7 +10,7 @@
>   
>   struct QemuInputHandlerState {
>       DeviceState       *dev;
> -    QemuInputHandler  *handler;
> +    const QemuInputHandler *handler;
>       int               id;
>       int               events;
>       QemuConsole       *con;
> @@ -46,7 +46,7 @@ static uint32_t queue_count;
>   static uint32_t queue_limit = 1024;
>   
>   QemuInputHandlerState *qemu_input_handler_register(DeviceState *dev,
> -                                                   QemuInputHandler *handler)
> +                                            const QemuInputHandler *handler)
>   {
>       QemuInputHandlerState *s = g_new0(QemuInputHandlerState, 1);
>       static int id = 1;
> diff --git a/ui/vdagent.c b/ui/vdagent.c
> index 00d36a8677..706d6d97bd 100644
> --- a/ui/vdagent.c
> +++ b/ui/vdagent.c
> @@ -297,7 +297,7 @@ static void vdagent_pointer_sync(DeviceState *dev)
>       }
>   }
>   
> -static QemuInputHandler vdagent_mouse_handler = {
> +static const QemuInputHandler vdagent_mouse_handler = {
>       .name  = "vdagent mouse",
>       .mask  = INPUT_EVENT_MASK_BTN | INPUT_EVENT_MASK_ABS,
>       .event = vdagent_pointer_event,

Looks mostly harmless to me:

Reviewed-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>


ATB,

Mark.



From xen-devel-bounces@lists.xenproject.org Tue Oct 17 20:36:20 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 17 Oct 2023 20:36:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618361.961922 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsqnT-0007w4-JL; Tue, 17 Oct 2023 20:36:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618361.961922; Tue, 17 Oct 2023 20:36: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 1qsqnT-0007vx-GB; Tue, 17 Oct 2023 20:36:11 +0000
Received: by outflank-mailman (input) for mailman id 618361;
 Tue, 17 Oct 2023 20:36: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 1qsqnS-0007vn-Fk; Tue, 17 Oct 2023 20:36: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 1qsqnS-0007dZ-Bb; Tue, 17 Oct 2023 20:36: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 1qsqnR-0003f2-Sp; Tue, 17 Oct 2023 20:36:09 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qsqnR-0005Uk-SI; Tue, 17 Oct 2023 20:36: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=JIABaVQnwTnS1m8swh90mV/HYsXRROLfTOkWQcmq9rI=; b=uV4nwMoAYBcVbG9iyRleVG9YTR
	SZ2U/vItmBK3V4p7YbTVPZP1w+MGiLlpTihFGqmGX2J/hY2Vq5E93iqqqRZ4r6l/mbcUT/nMpvCX0
	tril66zAO4+juQ4zqWoSwTIybTUJUI4wDl8JDt2R6NpfTVSnG7C+UL9JgIfvYPIGI7go=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183399-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 183399: tolerable FAIL
X-Osstest-Failures:
    xen-unstable:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:debian-hvm-install:fail:heisenbug
    xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:windows-install:fail:heisenbug
    xen-unstable:test-armhf-armhf-libvirt-raw:guest-start:fail:heisenbug
    xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-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-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-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-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop: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-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:saverestore-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-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-amd64-libvirt-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-arndale:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-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-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-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=0ce2ee7a16f2886c32b3f070bba3172f4a577aa4
X-Osstest-Versions-That:
    xen=0ce2ee7a16f2886c32b3f070bba3172f4a577aa4
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 17 Oct 2023 20:36:09 +0000

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

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 12 debian-hvm-install fail in 183392 pass in 183399
 test-amd64-amd64-xl-qemuu-win7-amd64 12 windows-install fail in 183392 pass in 183399
 test-armhf-armhf-libvirt-raw 13 guest-start                fail pass in 183392

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop      fail blocked in 183392
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail in 183392 blocked in 183399
 test-armhf-armhf-libvirt-raw 14 migrate-support-check fail in 183392 never pass
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183392
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183392
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 183392
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183392
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183392
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 183392
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183392
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183392
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 183392
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 183392
 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-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          16 saverestore-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-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-amd64-libvirt-xsm 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-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-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-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-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-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                  0ce2ee7a16f2886c32b3f070bba3172f4a577aa4
baseline version:
 xen                  0ce2ee7a16f2886c32b3f070bba3172f4a577aa4

Last test of basis   183399  2023-10-17 11:13:12 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                                 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


Published tested tree is already up to date.



From xen-devel-bounces@lists.xenproject.org Tue Oct 17 23:47:20 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 17 Oct 2023 23:47:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618369.961932 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qstmF-0000nm-26; Tue, 17 Oct 2023 23:47:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618369.961932; Tue, 17 Oct 2023 23:47: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 1qstmE-0000nf-Vf; Tue, 17 Oct 2023 23:47:06 +0000
Received: by outflank-mailman (input) for mailman id 618369;
 Tue, 17 Oct 2023 23:47: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=qm1H=F7=casper.srs.infradead.org=BATV+e442e50539a6073fd887+7359+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qstmC-0000nX-4P
 for xen-devel@lists.xenproject.org; Tue, 17 Oct 2023 23:47:05 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 75963796-6d47-11ee-9b0e-b553b5be7939;
 Wed, 18 Oct 2023 01:46:58 +0200 (CEST)
Received: from [2001:8b0:10b:5:b9aa:f92b:5d4c:b38]
 (helo=u3832b3a9db3152.ant.amazon.com)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qstm1-00FENl-21; Tue, 17 Oct 2023 23:46: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: 75963796-6d47-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=MIME-Version:Content-Type:Date:Cc:To:
	From:Subject:Message-ID:Sender:Reply-To:Content-Transfer-Encoding:Content-ID:
	Content-Description:In-Reply-To:References;
	bh=UyDAj6MCb5OdE6yv5OJjKtOf1V/fjbGh/bOznPBpmTU=; b=S2xRRGbvCIRDPTVLWsTxb6+4J0
	rM0LeuRIgJXuilG8Ccms/UjP7yHbHHxrMqnETE9bL0CZcqXTSXG2ocAEu/bZ6ZTyCD8ME2bNF5Lcb
	r+kjjk3FaEh/aNifZIQvn/rvQmRekQ5rlbEC9lPHYmcYg9aLHQUn5svdmHJGdj7Zvo6ZnfmHy9JoT
	TCQ74hJ8BF6rqO9wmZSXlZ9HDJWicOMHu36/22lvtu+sKE94fIdQdAU8bhruK/uEfZ9JU6w5zbUF+
	vLtHAnwvPyysMIgNpBIF2qbq4/OepGYDUXa+ZUD5jADp5HeQ5qEhWH/EGIyaBsWFS0v4fz0+C7IVc
	hpD6vRXQ==;
Message-ID: <72609f999d9451c13240acb8e4a4e54f8c62f542.camel@infradead.org>
Subject: [PATCH] hvc/xen: fix event channel handling for secondary consoles
From: David Woodhouse <dwmw2@infradead.org>
To: Juergen Gross <jgross@suse.com>, xen-devel
 <xen-devel@lists.xenproject.org>
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>, Jiri Slaby
 <jirislaby@kernel.org>, Roger Pau Monne <roger.pau@citrix.com>, Stefano
 Stabellini <sstabellini@kernel.org>, Dawei Li <set_pte_at@outlook.com>,
 linuxppc-dev@lists.ozlabs.org,  linux-kernel@vger.kernel.org,
 linux-serial@vger.kernel.org, Paul Durrant <paul@xen.org>
Date: Wed, 18 Oct 2023 00:46:52 +0100
Content-Type: multipart/signed; micalg="sha-256"; protocol="application/pkcs7-signature";
	boundary="=-Mjqe1h5Eoof5Yi3p4u/3"
User-Agent: Evolution 3.44.4-0ubuntu2 
MIME-Version: 1.0
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html


--=-Mjqe1h5Eoof5Yi3p4u/3
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

From: David Woodhouse <dwmw@amazon.co.uk>

The xencons_connect_backend() function allocates a local interdomain
event channel with xenbus_alloc_evtchn(), then calls
bind_interdomain_evtchn_to_irq_lateeoi() to bind to that port# on the
*remote* domain.

That doesn't work very well:

(qemu) device_add xen-console,id=3Dcon1,chardev=3Dpty0
[   44.323872] xenconsole console-1: 2 xenbus_dev_probe on device/console/1
[   44.323995] xenconsole: probe of console-1 failed with error -2

Fix it to use bind_evtchn_to_irq_lateeoi(), which does the right thing
by just binding that *local* event channel to an irq. The backend will
do the interdomain binding.

This didn't affect the primary console because the setup for that is
special =E2=80=94 the toolstack allocates the guest event channel and the g=
uest
discovers it with HVMOP_get_param.

Once that's fixed, there's also a warning on hot-unplug because
xencons_disconnect_backend() unconditionally calls free_irq() via
unbind_from_irqhandler():

(qemu) device_del con1
[   32.050919] ------------[ cut here ]------------
[   32.050942] Trying to free already-free IRQ 33
[   32.050990] WARNING: CPU: 0 PID: 51 at kernel/irq/manage.c:1895 __free_i=
rq+0x1d4/0x330

Fix that by calling notifier_del_irq() first, which only calls
free_irq() if the irq was requested in the first place. Then use
evtchn_put() to release the irq and event channel. Avoid calling
xenbus_free_evtchn() in the normal case, as evtchn_put() will do that
too. The only time xenbus_free_evtchn() needs to be called is for the
cleanup when bind_evtchn_to_irq_lateeoi() fails.

Finally, fix the error path in xen_hvc_init() when there's no primary
console. It should still register the frontend driver, as there may be
secondary consoles. (Qemu can always add secondary consoles, but only
the toolstack can add the primary because it's special.)

Fixes: fe415186b4 ("xen/console: harden hvc_xen against event channel storm=
s")
Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
Cc: stable@vger.kernel.org
---

Untested on actual Xen.

 drivers/tty/hvc/hvc_xen.c | 17 +++++++++++------
 1 file changed, 11 insertions(+), 6 deletions(-)

diff --git a/drivers/tty/hvc/hvc_xen.c b/drivers/tty/hvc/hvc_xen.c
index 98764e740c07..f0376612b267 100644
--- a/drivers/tty/hvc/hvc_xen.c
+++ b/drivers/tty/hvc/hvc_xen.c
@@ -377,9 +377,13 @@ void xen_console_resume(void)
 #ifdef CONFIG_HVC_XEN_FRONTEND
 static void xencons_disconnect_backend(struct xencons_info *info)
 {
-	if (info->irq > 0)
-		unbind_from_irqhandler(info->irq, NULL);
-	info->irq =3D 0;
+	if (info->irq > 0) {
+		notifier_del_irq(info->hvc, info->irq);
+		evtchn_put(info->evtchn);
+		info->irq =3D 0;
+		info->evtchn =3D 0;
+	}
+	/* evtchn_put() will also close it so this is only an error path */
 	if (info->evtchn > 0)
 		xenbus_free_evtchn(info->xbdev, info->evtchn);
 	info->evtchn =3D 0;
@@ -433,7 +437,7 @@ static int xencons_connect_backend(struct xenbus_device=
 *dev,
 	if (ret)
 		return ret;
 	info->evtchn =3D evtchn;
-	irq =3D bind_interdomain_evtchn_to_irq_lateeoi(dev, evtchn);
+	irq =3D bind_evtchn_to_irq_lateeoi(evtchn);
 	if (irq < 0)
 		return irq;
 	info->irq =3D irq;
@@ -597,7 +601,7 @@ static int __init xen_hvc_init(void)
 		else
 			r =3D xen_pv_console_init();
 		if (r < 0)
-			return r;
+			goto register_fe;
=20
 		info =3D vtermno_to_xencons(HVC_COOKIE);
 		info->irq =3D bind_evtchn_to_irq_lateeoi(info->evtchn);
@@ -616,12 +620,13 @@ static int __init xen_hvc_init(void)
 		list_del(&info->list);
 		spin_unlock_irqrestore(&xencons_lock, flags);
 		if (info->irq)
-			unbind_from_irqhandler(info->irq, NULL);
+			evtchn_put(info->evtchn);
 		kfree(info);
 		return r;
 	}
=20
 	r =3D 0;
+ register_fe:
 #ifdef CONFIG_HVC_XEN_FRONTEND
 	r =3D xenbus_register_frontend(&xencons_driver);
 #endif
--=20
2.40.1



--=-Mjqe1h5Eoof5Yi3p4u/3
Content-Type: application/pkcs7-signature; name="smime.p7s"
Content-Disposition: attachment; filename="smime.p7s"
Content-Transfer-Encoding: base64

MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgEFADCABgkqhkiG9w0BBwEAAKCCEkQw
ggYQMIID+KADAgECAhBNlCwQ1DvglAnFgS06KwZPMA0GCSqGSIb3DQEBDAUAMIGIMQswCQYDVQQG
EwJVUzETMBEGA1UECBMKTmV3IEplcnNleTEUMBIGA1UEBxMLSmVyc2V5IENpdHkxHjAcBgNVBAoT
FVRoZSBVU0VSVFJVU1QgTmV0d29yazEuMCwGA1UEAxMlVVNFUlRydXN0IFJTQSBDZXJ0aWZpY2F0
aW9uIEF1dGhvcml0eTAeFw0xODExMDIwMDAwMDBaFw0zMDEyMzEyMzU5NTlaMIGWMQswCQYDVQQG
EwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYD
VQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50
aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC
AQEAyjztlApB/975Rrno1jvm2pK/KxBOqhq8gr2+JhwpKirSzZxQgT9tlC7zl6hn1fXjSo5MqXUf
ItMltrMaXqcESJuK8dtK56NCSrq4iDKaKq9NxOXFmqXX2zN8HHGjQ2b2Xv0v1L5Nk1MQPKA19xeW
QcpGEGFUUd0kN+oHox+L9aV1rjfNiCj3bJk6kJaOPabPi2503nn/ITX5e8WfPnGw4VuZ79Khj1YB
rf24k5Ee1sLTHsLtpiK9OjG4iQRBdq6Z/TlVx/hGAez5h36bBJMxqdHLpdwIUkTqT8se3ed0PewD
ch/8kHPo5fZl5u1B0ecpq/sDN/5sCG52Ds+QU5O5EwIDAQABo4IBZDCCAWAwHwYDVR0jBBgwFoAU
U3m/WqorSs9UgOHYm8Cd8rIDZsswHQYDVR0OBBYEFAnA8vwL2pTbX/4r36iZQs/J4K0AMA4GA1Ud
DwEB/wQEAwIBhjASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEF
BQcDBDARBgNVHSAECjAIMAYGBFUdIAAwUAYDVR0fBEkwRzBFoEOgQYY/aHR0cDovL2NybC51c2Vy
dHJ1c3QuY29tL1VTRVJUcnVzdFJTQUNlcnRpZmljYXRpb25BdXRob3JpdHkuY3JsMHYGCCsGAQUF
BwEBBGowaDA/BggrBgEFBQcwAoYzaHR0cDovL2NydC51c2VydHJ1c3QuY29tL1VTRVJUcnVzdFJT
QUFkZFRydXN0Q0EuY3J0MCUGCCsGAQUFBzABhhlodHRwOi8vb2NzcC51c2VydHJ1c3QuY29tMA0G
CSqGSIb3DQEBDAUAA4ICAQBBRHUAqznCFfXejpVtMnFojADdF9d6HBA4kMjjsb0XMZHztuOCtKF+
xswhh2GqkW5JQrM8zVlU+A2VP72Ky2nlRA1GwmIPgou74TZ/XTarHG8zdMSgaDrkVYzz1g3nIVO9
IHk96VwsacIvBF8JfqIs+8aWH2PfSUrNxP6Ys7U0sZYx4rXD6+cqFq/ZW5BUfClN/rhk2ddQXyn7
kkmka2RQb9d90nmNHdgKrwfQ49mQ2hWQNDkJJIXwKjYA6VUR/fZUFeCUisdDe/0ABLTI+jheXUV1
eoYV7lNwNBKpeHdNuO6Aacb533JlfeUHxvBz9OfYWUiXu09sMAviM11Q0DuMZ5760CdO2VnpsXP4
KxaYIhvqPqUMWqRdWyn7crItNkZeroXaecG03i3mM7dkiPaCkgocBg0EBYsbZDZ8bsG3a08LwEsL
1Ygz3SBsyECa0waq4hOf/Z85F2w2ZpXfP+w8q4ifwO90SGZZV+HR/Jh6rEaVPDRF/CEGVqR1hiuQ
OZ1YL5ezMTX0ZSLwrymUE0pwi/KDaiYB15uswgeIAcA6JzPFf9pLkAFFWs1QNyN++niFhsM47qod
x/PL+5jR87myx5uYdBEQkkDc+lKB1Wct6ucXqm2EmsaQ0M95QjTmy+rDWjkDYdw3Ms6mSWE3Bn7i
5ZgtwCLXgAIe5W8mybM2JzCCBhQwggT8oAMCAQICEQDGvhmWZ0DEAx0oURL6O6l+MA0GCSqGSIb3
DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYD
VQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28g
UlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMB4XDTIyMDEwNzAw
MDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJARYTZHdtdzJAaW5mcmFkZWFkLm9y
ZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3GpC2bomUqk+91wLYBzDMcCj5C9m6
oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZHh7htyAkWYVoFsFPrwHounto8xTsy
SSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT9YgcBqKCo65pTFmOnR/VVbjJk4K2
xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNjP+qDrh0db7PAjO1D4d5ftfrsf+kd
RR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy2U+eITZ5LLE5s45mX2oPFknWqxBo
bQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3BgBEmfsYWlBXO8rVXfvPgLs32VdV
NZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/7auNVRmPB3v5SWEsH8xi4Bez2V9U
KxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmdlFYhAflWKQ03Ufiu8t3iBE3VJbc2
5oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9aelIl6vtbhMA+l0nfrsORMa4kobqQ5
C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMBAAGjggHMMIIByDAfBgNVHSMEGDAW
gBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeDMcimo0oz8o1R1Nver3ZVpSkwDgYD
VR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYwFAYIKwYBBQUHAwQGCCsGAQUFBwMC
MEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYBBQUHAgEWF2h0dHBzOi8vc2VjdGln
by5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9jcmwuc2VjdGlnby5jb20vU2VjdGln
b1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1haWxDQS5jcmwwgYoGCCsGAQUFBwEB
BH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdvLmNvbS9TZWN0aWdvUlNBQ2xpZW50
QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAjBggrBgEFBQcwAYYXaHR0cDovL29j
c3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5mcmFkZWFkLm9yZzANBgkqhkiG9w0B
AQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQvQ/fzPXmtR9t54rpmI2TfyvcKgOXp
qa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvIlSPrzIB4Z2wyIGQpaPLlYflrrVFK
v9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9ChWFfgSXvrWDZspnU3Gjw/rMHrGnql
Htlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0whpBtXdyDjzBtQTaZJ7zTT/vlehc/
tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9IzCCBhQwggT8oAMCAQICEQDGvhmW
Z0DEAx0oURL6O6l+MA0GCSqGSIb3DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3Jl
YXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0
ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJl
IEVtYWlsIENBMB4XDTIyMDEwNzAwMDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJ
ARYTZHdtdzJAaW5mcmFkZWFkLm9yZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3
GpC2bomUqk+91wLYBzDMcCj5C9m6oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZH
h7htyAkWYVoFsFPrwHounto8xTsySSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT
9YgcBqKCo65pTFmOnR/VVbjJk4K2xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNj
P+qDrh0db7PAjO1D4d5ftfrsf+kdRR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy
2U+eITZ5LLE5s45mX2oPFknWqxBobQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3
BgBEmfsYWlBXO8rVXfvPgLs32VdVNZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/
7auNVRmPB3v5SWEsH8xi4Bez2V9UKxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmd
lFYhAflWKQ03Ufiu8t3iBE3VJbc25oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9ae
lIl6vtbhMA+l0nfrsORMa4kobqQ5C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMB
AAGjggHMMIIByDAfBgNVHSMEGDAWgBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeD
Mcimo0oz8o1R1Nver3ZVpSkwDgYDVR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYw
FAYIKwYBBQUHAwQGCCsGAQUFBwMCMEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYB
BQUHAgEWF2h0dHBzOi8vc2VjdGlnby5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9j
cmwuc2VjdGlnby5jb20vU2VjdGlnb1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1h
aWxDQS5jcmwwgYoGCCsGAQUFBwEBBH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdv
LmNvbS9TZWN0aWdvUlNBQ2xpZW50QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAj
BggrBgEFBQcwAYYXaHR0cDovL29jc3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5m
cmFkZWFkLm9yZzANBgkqhkiG9w0BAQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQv
Q/fzPXmtR9t54rpmI2TfyvcKgOXpqa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvI
lSPrzIB4Z2wyIGQpaPLlYflrrVFKv9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9Ch
WFfgSXvrWDZspnU3Gjw/rMHrGnqlHtlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0w
hpBtXdyDjzBtQTaZJ7zTT/vlehc/tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9
IzGCBMcwggTDAgEBMIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVz
dGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMT
NVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEA
xr4ZlmdAxAMdKFES+jupfjANBglghkgBZQMEAgEFAKCCAeswGAYJKoZIhvcNAQkDMQsGCSqGSIb3
DQEHATAcBgkqhkiG9w0BCQUxDxcNMjMxMDE3MjM0NjUyWjAvBgkqhkiG9w0BCQQxIgQgIdAEwR2I
zlpEzHvsHxSsk2Wc6+De9U1Ei0oQuBayz04wgb0GCSsGAQQBgjcQBDGBrzCBrDCBljELMAkGA1UE
BhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEYMBYG
A1UEChMPU2VjdGlnbyBMaW1pdGVkMT4wPAYDVQQDEzVTZWN0aWdvIFJTQSBDbGllbnQgQXV0aGVu
dGljYXRpb24gYW5kIFNlY3VyZSBFbWFpbCBDQQIRAMa+GZZnQMQDHShREvo7qX4wgb8GCyqGSIb3
DQEJEAILMYGvoIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVy
MRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNl
Y3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEAxr4Z
lmdAxAMdKFES+jupfjANBgkqhkiG9w0BAQEFAASCAgBuhjQMnbbP+O4d6Bscki1guVey/M64ZxY4
810cTGC0d2IAAC4nykKI6KEPaCdUA8f0UE1dRtyKQ5jDrZrPUZFEcyfsnv1TSZkbhmWsaAE0v9bJ
5Eq7egXYKM0iam7dQCYHH+RozufU9wWStB+dYQvBUc1sFTlTkhXosQeGG4owYWxaMd2f3Zy1UWwv
4mTqcH1IlyPMOa3jzKo4ZM4nrFNdCOJA6tK2AgJPoBJSFpiqM7uWPgBBukD7vv34sw1JtF22fnLG
Cgy1S4yqFZF76TY3pA/qPIXBjHpaM9f1R1m1wnzgARQI02TbOs8IH8tZlYt2iS6GH8mCJ0w9fhC3
rBClKzc8qHqp0Rg9ym8EaH0l+oQdUTVA6t8AhNvGJOPbmQEzDc4NYlQ3HBysLEO/YPDQhkGTmL7d
nA+i5XepipEVUc1456kUJDuoe/zl267tFCOW4IaN4CL+ER4JU80hDrxDXWDyN6VMVXvID0aYNbwX
Bmj/tXmSmhiyPkGggfIK3IeC2NS3qaTmJ6iEM3ZO5Od/S9NqsktOjQcq2cQB6CdPMcow9ISFRv7B
3LzFxtaL7hJCNYxOgN733EvDeFxMysjdxh79qYHbnmrjn4VdQyJKUOhl/H9TP70I4avTRBBlDt3r
upus/160jzbLdo0n+Tlo5it8EqJ3C5ODchjePxEQTAAAAAAAAA==


--=-Mjqe1h5Eoof5Yi3p4u/3--


From xen-devel-bounces@lists.xenproject.org Wed Oct 18 00:48:33 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 00:48:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618377.961942 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsujT-0001RT-V0; Wed, 18 Oct 2023 00:48:19 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618377.961942; Wed, 18 Oct 2023 00:48: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 1qsujT-0001RM-RG; Wed, 18 Oct 2023 00:48:19 +0000
Received: by outflank-mailman (input) for mailman id 618377;
 Wed, 18 Oct 2023 00:48: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=UegX=GA=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qsujS-0001RB-JK
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 00:48: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 0549852f-6d50-11ee-98d4-6d05b1d4d9a1;
 Wed, 18 Oct 2023 02:48: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 08691CE2296;
 Wed, 18 Oct 2023 00:48:11 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 8306AC433C7;
 Wed, 18 Oct 2023 00:48: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: 0549852f-6d50-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1697590089;
	bh=o8fpQYGn80s5Uqok39gE8/xP7F35J6fIpMzhZ1BRG+k=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=iYgQOLRdantHZKfXnA8jTBCvuGyKmMK5PAar/0kek1KYyP5CHiexeXsSdsO3d5KUb
	 rhr5yQAAst9dDM6gupTX1SM21t53etMFlUgve9vXqw4J7JOIWnA/FAPHoGz6iret6c
	 5iYfzn+q6cIgQHVReonh2+3/d/vZDv2IqMXo6sEOxkMBiA27esspziIbg0S8/jj5YB
	 VSWtkeTLJemdKB9guhZAHnvopUFWIMrNqiSmYbxBP4ANJqoPvZcBBP2UE7F5sYI1mq
	 yMwpxs6l3fJ7LD4sszaf+sH86/56wHz8R60hn16iUraqKQd826iO2crgUE2CyccPa0
	 D/OIKldt9MZuw==
Date: Tue, 17 Oct 2023 17:48:05 -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>, 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
Subject: Re: [XEN PATCH v2 00/10] address violations of MISRA C:2012 Directive
 4.10
In-Reply-To: <725f5193-c8d3-1bc8-cd62-2a2b1b5ecc01@suse.com>
Message-ID: <alpine.DEB.2.22.394.2310171709310.965337@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> <725f5193-c8d3-1bc8-cd62-2a2b1b5ecc01@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, 16 Oct 2023, Jan Beulich wrote:
> On 29.09.2023 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.
> 
> Note how below you still suggest names with two leading underscores. I'm
> afraid ...

Sorry for the confusion. My example was an example of "path of least
resistance" trying to extrapolate the existing patterns. I was not
trying also to comply with the other MISRA rule about leading
underscores.

By "path of least resistance" I meant the smallest amount of work to
address Directive 4.10. As opposed to the "bite the bullet" approach
where we are willing to change everything to be consistent and also
address Directive 4.10.

So in my example of "path of least resistance" I kept the leading
underscores to minimize changes to the existing codebase.

The result of the MISRA C discussion this morning was that in general we
are *not* going to remove leading underscores everywhere, although
in general we would also like to avoid them when it can be done without
harming readability.

Now what does it mean for this patch series? See below for a proposal.


> > 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:
> 
> ... "least resistance" won't gain us much, as hardly any guards don't
> start with an underscore.
> 
> > - 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__ ?
> 
> There are no headers in xen/include/. For (e.g.) xen/include/xen/ we
> may go with XEN_BLAH_H; whether ASM prefixes are needed I'm not sure;
> we could go with just ARM_BLAH_H and X86_BLAH_H?
> 
> The primary question though is (imo) how to deal with private headers,
> such that the risk of name collisions is as small as possible.

Looking at concrete examples under xen/include/xen:
xen/include/xen/mm.h __XEN_MM_H__
xen/include/xen/dm.h __XEN_DM_H__
xen/include/xen/hypfs.h __XEN_HYPFS_H__

So I think we should do for consistency:
xen/include/xen/blah.h __XEN_BLAH_H__

Even if we know the leading underscore are undesirable, in this case I
would prefer consistency.



On the other hand looking at ARM examples:
xen/arch/arm/include/asm/traps.h __ASM_ARM_TRAPS__
xen/arch/arm/include/asm/time.h __ARM_TIME_H__
xen/arch/arm/include/asm/sysregs.h __ASM_ARM_SYSREGS_H
xen/arch/arm/include/asm/io.h _ASM_IO_H

And also looking at x86 examples:
xen/arch/x86/include/asm/paging.h _XEN_PAGING_H
xen/arch/x86/include/asm/p2m.h _XEN_ASM_X86_P2M_H
xen/arch/x86/include/asm/io.h _ASM_IO_H

Thet are very inconsistent.


So for ARM and X86 headers I think we are free to pick anything we want,
including your suggested ARM_BLAH_H and X86_BLAH_H. Those are fine by
me.


For private headers such as:
xen/arch/arm/vuart.h __ARCH_ARM_VUART_H__
xen/arch/arm/decode.h __ARCH_ARM_DECODE_H_
xen/arch/x86/mm/p2m.h __ARCH_MM_P2M_H__
xen/arch/x86/hvm/viridian/private.h X86_HVM_VIRIDIAN_PRIVATE_H

More similar but still inconsistent. I would go with ARCH_ARM_BLAH_H and
ARCH_X86_BLAH_H for new headers.

What do you think?


From xen-devel-bounces@lists.xenproject.org Wed Oct 18 00:55:36 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 00:55:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618383.961951 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsuqR-0003OM-Nk; Wed, 18 Oct 2023 00:55:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618383.961951; Wed, 18 Oct 2023 00:55: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 1qsuqR-0003OF-Kl; Wed, 18 Oct 2023 00:55:31 +0000
Received: by outflank-mailman (input) for mailman id 618383;
 Wed, 18 Oct 2023 00:55: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=UegX=GA=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qsuqQ-0003O9-OM
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 00:55: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 070673ad-6d51-11ee-9b0e-b553b5be7939;
 Wed, 18 Oct 2023 02:55:28 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by dfw.source.kernel.org (Postfix) with ESMTP id D310061582;
 Wed, 18 Oct 2023 00:55:26 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 53255C433C8;
 Wed, 18 Oct 2023 00:55: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: 070673ad-6d51-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1697590526;
	bh=1Sk7/v6oFDDNDBOAcwsLL0jBD124fXdU9fXuGEk05Jc=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=thZpwzVCcJea9tqg6guYzSPPbW/oMpVNKyWGN3mw5XX2QEuEgz2CST40adfkvjHSa
	 KOGkn96HckurJwbyofMXhHXy4PxOM2f58iSjUjTh2u66obKvbIJHZ3NpVK9/B6XI0C
	 fVhFq7xeiVwID3GlpR/N12hdTlJ/AanEltx4LUt5NXwK5iN5LZEX7PNBdF4zx3jXTr
	 or2L24HcWur9n3eP2NNqDv7O/BefwSqSvCLAy7M1P7vcomAmYl8vBmhyHE53hCrC8e
	 xeGYRT4akXENFU2gR18K0pYFYFBUelhpTwbUXBR3SgBt0C5d3s8gsdi8yODGjIvXiT
	 CM9TnFAD8LjJw==
Date: Tue, 17 Oct 2023 17:55:23 -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>, 
    Bertrand Marquis <Bertrand.Marquis@arm.com>, 
    Federico Serafini <federico.serafini@bugseng.com>, 
    Xen-devel <xen-devel@lists.xenproject.org>, 
    "consulting@bugseng.com" <consulting@bugseng.com>, 
    Rahul Singh <Rahul.Singh@arm.com>, 
    Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, 
    Henry Wang <Henry.Wang@arm.com>
Subject: Re: [XEN PATCH 10/10] arm/smmu: address violation of MISRA C:2012
 Rule 8.2
In-Reply-To: <4718460e-756a-40fe-ba1b-7f32a1432b51@xen.org>
Message-ID: <alpine.DEB.2.22.394.2310171750170.965337@ubuntu-linux-20-04-desktop>
References: <cover.1697207038.git.federico.serafini@bugseng.com> <199886f6ba1f2d5701eabd080b4f9723fc28f4b9.1697207038.git.federico.serafini@bugseng.com> <39d3f8e0-61cf-4b8d-84f1-a5087ba8ead4@xen.org> <D3320838-1E67-4339-A3D4-A3E60FBC4117@arm.com>
 <c9a7f059-4cf5-4a75-b231-573c4fe29b37@xen.org> <92C52E39-729F-40AE-A02F-556C8EE471CB@arm.com> <alpine.DEB.2.22.394.2310161338540.965337@ubuntu-linux-20-04-desktop> <4718460e-756a-40fe-ba1b-7f32a1432b51@xen.org>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Tue, 17 Oct 2023, Julien Grall wrote:
> Hi Stefano,
> 
> On 16/10/2023 21:47, Stefano Stabellini wrote:
> > On Mon, 16 Oct 2023, Bertrand Marquis wrote:
> > > > On 16 Oct 2023, at 15:38, Julien Grall <julien@xen.org> wrote:
> > > > 
> > > > 
> > > > 
> > > > On 16/10/2023 14:31, Bertrand Marquis wrote:
> > > > > Hi Julien,
> > > > 
> > > > Hi Bertrand,
> > > > 
> > > > > > On 16 Oct 2023, at 11:07, Julien Grall <julien@xen.org> wrote:
> > > > > > 
> > > > > > Hi,
> > > > > > 
> > > > > > On 13/10/2023 16:24, Federico Serafini wrote:
> > > > > > > Add missing parameter names, no functional change.
> > > > > > > Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
> > > > > > > ---
> > > > > > >   xen/drivers/passthrough/arm/smmu.c | 6 +++---
> > > > > > 
> > > > > > This file is using the Linux coding style because it is imported
> > > > > > from Linux. I was under the impression we would exclude such file
> > > > > > for now.
> > > > > > 
> > > > > > Looking at exclude-list.json, it doesn't seem to be present. I think
> > > > > > this patch should be replaced with adding a line in
> > > > > > execlude-list.json.
> > > > > I think that during one of the discussions we said that this file
> > > > > already deviated quite a lot from the status in Linux and we wanted to
> > > > > turn it to Xen coding style in the future hence it is not listed in
> > > > > the exclude file.
> > > > AFAIK the SMMUv{1, 2} code didn't deviate very much from Linux. I can't
> > > > tell about the SMMUv3.
> > > 
> > > True that i had the v3 code in mind, we might not want to do that for v1/2
> > > you are right.
> > > 
> > > > 
> > > > > At the end having a working smmu might be critical in a safety context
> > > > > so it will make sense to also check this part of xen.
> > > > I don't buy this argument right now. We have files in exclude-lists.json
> > > > that I would consider critical for Xen to run (e.g. common/bitmap.c,
> > > > common/libfdt). So if you want to use this argument then we need to move
> > > > critical components of Xen out of the exclusion list.
> > > 
> > > I am sure we will at some point for runtime code but we cannot do
> > > everything on the first shot.
> > > I was not meaning to do that now but that it is something to consider.
> > 
> > Things that are in exclude-lists.json are source files that come from
> > other projects and also change very rarely. The argument that we don't
> > do MISRA C on the files in exclude-lists.json, it is not because those
> > files are unimportant, but because they change only once every many
> > years.
> 
> Interesting. I would have thought this would be a condition to do MISRA as the
> cost to port a patch would increase a bit but this is one time cost every many
> years. Whereas code like the SMMU are still actively developped. And in
> particular for SMMUv2 we tried to stick close to Linux to help backport. So
> this would be a reason to initially exclude it from MISRA.
> 
> > 
> > Of course the least we rely on exclude-lists.json the better.
> > 
> > For smmu.c, looking at the git history I think it is more actively
> > worked on than other files such as lib/rbtree.c or common/bitmap.c.
> > Given that backports from Linux to smmu.c are not straightforward anyway
> > (please correct me if I am wrong) then I think we should not add smmu.c
> > to exclude-lists.json and do MISRA for smmu.c.
> 
> I haven't done any recently. But if they are already not straightforward, then
> adding MISRA on top is not really to make it better. So I think if you want to
> do MISRA for the SMMU, then we need to fully convert it to Xen and abandon the
> idea to backport from Linux.
> 
> This would also make the code looks nicer as at the moment this contains
> wrapper just to stay as close as possible to Linux.

You have a good point. If we do MISRA for the SMMU then we might as well
fully convert the file to Xen. As a clarification, we can still look at
the fixes on the Linux driver and "port" security fixes and other key
patches such as workarounds for broken specific SMMU versions, but for
sure we wouldn't want to backport a new feature of the driver or code
refactoring / code improvements of the driver. But that probably is
already the case today?


> As a side note, the change here looks fairly self-contained. So I don't expect
> a major impact and therefore would not block this. This may not be the case
> for more complex one. Hence why I wanted to exclude it.

Thanks!


> Do you expect larger MISRA changes in the SMMU driver?

I'll let Federico answer this one.


From xen-devel-bounces@lists.xenproject.org Wed Oct 18 00:57:18 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 00:57:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618385.961962 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsus9-0003wX-2D; Wed, 18 Oct 2023 00:57:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618385.961962; Wed, 18 Oct 2023 00: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 1qsus8-0003wQ-Vb; Wed, 18 Oct 2023 00:57:16 +0000
Received: by outflank-mailman (input) for mailman id 618385;
 Wed, 18 Oct 2023 00:57: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 1qsus7-0003wE-Ur; Wed, 18 Oct 2023 00:57: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 1qsus7-0005oA-QZ; Wed, 18 Oct 2023 00:57: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 1qsus7-0006ka-FI; Wed, 18 Oct 2023 00:57:15 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qsus7-00026P-En; Wed, 18 Oct 2023 00:57: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=6dziQN6KsL/xBK+zFi/LLRZwC/Xzzm0MnzgILdOTe5w=; b=5eiDSP/e8nED/AhtK2GANrZUkq
	ClNBtVkxWVg6G5LhvYU2WehEuRqvZaQyX0kErXKzOQfo3O0gAuK4xUgn4v4ttSTpfulkWd+A6AjvK
	xBAm6UzKUE3KnvrqZBadEFm8UQfdTemaPyLjk9bWXNfFJj+W6Y0ag4Rd6rAvy52gU08U=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183404-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 183404: 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=f51c92383b8dc76233481e2814aa2e905fb9b501
X-Osstest-Versions-That:
    xen=7114bbfc8424ee467c6c8c82f077764ca4fa799b
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 18 Oct 2023 00:57:15 +0000

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

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                  f51c92383b8dc76233481e2814aa2e905fb9b501
baseline version:
 xen                  7114bbfc8424ee467c6c8c82f077764ca4fa799b

Last test of basis   183396  2023-10-17 08:05:24 Z    0 days
Testing same since   183404  2023-10-17 22:02:08 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  George Dunlap <george.dunlap@cloud.com>
  Michal Orzel <michal.orzel@amd.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
   7114bbfc84..f51c92383b  f51c92383b8dc76233481e2814aa2e905fb9b501 -> smoke


From xen-devel-bounces@lists.xenproject.org Wed Oct 18 01:05:59 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 01:05:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618391.961971 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsv0N-0004GC-S2; Wed, 18 Oct 2023 01:05:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618391.961971; Wed, 18 Oct 2023 01: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 1qsv0N-0004G5-PQ; Wed, 18 Oct 2023 01:05:47 +0000
Received: by outflank-mailman (input) for mailman id 618391;
 Wed, 18 Oct 2023 01:05: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=J5aw=GA=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qsv0M-0004Fz-Kt
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 01:05:46 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com
 (mail-db3eur04on0608.outbound.protection.outlook.com
 [2a01:111:f400:fe0c::608])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 764d73f5-6d52-11ee-98d4-6d05b1d4d9a1;
 Wed, 18 Oct 2023 03:05:44 +0200 (CEST)
Received: from DU6P191CA0049.EURP191.PROD.OUTLOOK.COM (2603:10a6:10:53e::8) by
 VI1PR08MB9983.eurprd08.prod.outlook.com (2603:10a6:800:1c8::12) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.35; Wed, 18 Oct
 2023 01:05:39 +0000
Received: from DBAEUR03FT033.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:53e:cafe::17) by DU6P191CA0049.outlook.office365.com
 (2603:10a6:10:53e::8) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.21 via Frontend
 Transport; Wed, 18 Oct 2023 01:05:39 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DBAEUR03FT033.mail.protection.outlook.com (100.127.142.251) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6907.20 via Frontend Transport; Wed, 18 Oct 2023 01:05:38 +0000
Received: ("Tessian outbound fb5c0777b309:v211");
 Wed, 18 Oct 2023 01:05:38 +0000
Received: from a875e53fbac5.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 AD3FCA65-6F54-425E-9D89-BB7803D6C913.1; 
 Wed, 18 Oct 2023 01:05:32 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id a875e53fbac5.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Wed, 18 Oct 2023 01:05:32 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by AS8PR08MB8969.eurprd08.prod.outlook.com (2603:10a6:20b:5b4::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.21; Wed, 18 Oct
 2023 01:05:29 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41%4]) with mapi id 15.20.6886.034; Wed, 18 Oct 2023
 01:05: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: 764d73f5-6d52-11ee-98d4-6d05b1d4d9a1
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=41r4oovqyX9lXtJQ5PNApsKYxYNoamCpYxDPNO4cbSo=;
 b=evP/II9FlESuPrBe+1sh6NzI/R7MobktVGM3WqOXjxJ31U7/d/A5WofDzEPLDW9VVbMgz8HUYikp7x1yZ9NArVTdrpBT3D9TT3FPJ3p+DBaDkn6n6K4k+iaqxhtbS8K6DpwS0PWNhhvLSX+ptODAE3tW3hKO8NNPARhndI9ELEo=
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: 619f89e99f420082
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=edVrPnacu64BZV0icXSe3uxXHFFdTNYqa7a0C5efFVpg82heuTd/Z9y/89+/39LwaFjKNQh1BKAS+XViPyKdrsV+KvThTELbu1sZ4KpeBMXqNqr+avGynqmuS8sgZycpEOfmV6qA3PfXk+T2wQkDislsO4+sg42Wr6DVKn7tH8+lec3JdvOAjyo9m6APYAwV267ncnMX4dPO9stOhdn5+2riQbhg00+un+6NA3nBJP8CBS6fJ2ppqgX7UmPxpJPX4LCz4CGVffrtHzMToKUOZS7Uegzv2vki9bO1qzyhyeZFiDy19IXMCn6w4FCN/p8TKa9p0iuNM7OHo9Q0KPRmgw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=41r4oovqyX9lXtJQ5PNApsKYxYNoamCpYxDPNO4cbSo=;
 b=P+TxmbTGPwmJWYeVaSveKpGQdPgLFPySA2CBiNSvqOARyoFGP3WtNPVqZQpWHNBc9eW7y8zVHt0DdJAvq7oRuUI0KMWRRKx2/YnEgutDK3RtEOLKNKB0aGIXFJ1LPm1GelxNJ6t4GGx2cHbnAstzVdP2rxIwkqHUbGz0z6snFKcf/x4/NLuosdEDRWhyg+B4Y76TrRjtnczQ6xrDPOWpz+o2hQcv9voRSMCQnQ8Xs4O0RuYEpXivypTLqz+A9npkaCwcxn0cUij3q99xh3wfJOYv4Yd18nr32xpsAjH1D2S0wPW7Vc6DbV0pVzzxi1c4JWjVqEE9zXFRl8UC8QiaYA==
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=41r4oovqyX9lXtJQ5PNApsKYxYNoamCpYxDPNO4cbSo=;
 b=evP/II9FlESuPrBe+1sh6NzI/R7MobktVGM3WqOXjxJ31U7/d/A5WofDzEPLDW9VVbMgz8HUYikp7x1yZ9NArVTdrpBT3D9TT3FPJ3p+DBaDkn6n6K4k+iaqxhtbS8K6DpwS0PWNhhvLSX+ptODAE3tW3hKO8NNPARhndI9ELEo=
From: Henry Wang <Henry.Wang@arm.com>
To: Roger Pau Monne <roger.pau@citrix.com>
CC: Xen-devel <xen-devel@lists.xenproject.org>, Kevin Tian
	<kevin.tian@intel.com>
Subject: Re: [PATCH for-4.18] iommu/vt-d: use max supported AGAW
Thread-Topic: [PATCH for-4.18] iommu/vt-d: use max supported AGAW
Thread-Index: AQHaAPtNjoXmJF7Mn0CZnd7sKi5tRbBOvFgA
Date: Wed, 18 Oct 2023 01:05:27 +0000
Message-ID: <F767CA15-175D-47F2-A91E-8CEF8646D442@arm.com>
References: <20231017130943.18111-1-roger.pau@citrix.com>
In-Reply-To: <20231017130943.18111-1-roger.pau@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_|AS8PR08MB8969:EE_|DBAEUR03FT033:EE_|VI1PR08MB9983:EE_
X-MS-Office365-Filtering-Correlation-Id: 1a78a285-35fa-4e21-6b97-08dbcf7657b9
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:
 NuKwQfT53wVhRewm7kQk4BzyxfHfO9xYxDb60Z+j1TGJjOq9QHLJ0iU/AQ86u+hKgpV1uPejdHZisCesg+ZIOi0aH7JRW3unt2AnjoBrUx+aHCwd2mog8/ENkrt/sq7I24Gy5CGnRsAODU3S7cHi4pOkV5FHPuORy2WBVAdQxdneJa8hCGYr6lmXEfnNZXqL/qpLQvquwHaqY4w9tPu51imAAA/hKUD0PRkQNLLn//uqm1ECp2Mi6gNJt9XGEtd8NG1ThuelPSfz0VXKlmd3mZibJHh9CPIvQNMqUvMPGyRaOQq0yZOJvT+b42kJYsZlBJNjl3VZ/C9qBPc+9LY3oTYPB7lCO3J59vGgJzbArglsVbswWldJJy/MGLX1zJv8yxXbETuZSVhfxrcbfE6WgmS29IF+sM2/MB/7nxoJH2LQq7/3jgj9hkDRoUDGMq5EDzQ09Z1WlMRDvAJNqO4iE5E6mQPvVJiaGRgL4OADMzECKx9Z0kdV653i4PGd+u/M2tmA/yt9BD1xdOjjCnAgsSB5gnrTEaQ2wBej4NmrdGDXx6lziNSYR5UoSrLdCAy+FqOKWOtvUOLzfYEhpOAvdi4I5UWq8Y7NjZ+x9M7V/BZd31LoQHxAUx9zK4nZkpnIfC1VQQOXcGWIoZM5WfPq/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)(346002)(39860400002)(376002)(136003)(366004)(396003)(230922051799003)(186009)(64100799003)(1800799009)(451199024)(6512007)(26005)(53546011)(6506007)(2616005)(6486002)(71200400001)(478600001)(41300700001)(5660300002)(38100700002)(316002)(36756003)(122000001)(86362001)(38070700005)(2906002)(8676002)(33656002)(8936002)(4326008)(91956017)(54906003)(6916009)(64756008)(76116006)(66946007)(66556008)(66446008)(66476007)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <74458759544D8341B510E194C78750DE@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB8969
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:
 DBAEUR03FT033.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	7ab2b257-ee52-4442-f6b1-08dbcf7650e4
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	h0epZwaeggOl2m0WdBFrlX7TyFQ9WTsqAatqrPX460J8lDrAxRD5TLahEvtPg7BE9UnhN+9yyUg11cedX0K0eY3wYO8kU8vqLNJkeTQXfnzLPSDHrAOs8C8yRL9hqghdhVG9De03wKSZMe4AXwlDVtjvIT2iIsK4p4yn8LUgY1STiHMLat9d98qG8euM0jDE3o+06IKYgukIT0lUFnHGKGHQMwOcCy7plcUM0xsHjSNcIJdX+I36UiaEptmLa67KpAG+BLc/0CeMJJznCOZA0LkgAEJauUHIGYcL0vStAwQM5i2wJG64gla6knBIqFWl/hDqvYITWAohUsp3lMUwG7oNqIm/xHPpcwMMTz9FV13Y2w+zRQrN5xefU6iPywhPPEIHoPtTnajKvc+dvagdS93vK68oEG8oHh5mXRu5psxbQJ3EARcDXOjl53CondXstoEDeLHpuXtn7GA53TZWwEMiVMuJlqMuvBcIxHl5KH9O6P4mRsGoQ1v7kGo/WWt6Jydc7ucsXCnn8H2qBcFBKIzgc7N9ktVP4USzC9AilxsNltPp+gif7XTVDUHSguIeUBE91DCK85mWoqJ97vRByppn0o5VqcGpB5wVyTZZgOBVuWjWx1TIVLH3OeSfRmCeADNRCsSJvsNaU4lxhscj7Gnf8bnucYB/Wx2wZHVaRD0u69ENCmprpb7OI5INN5Rr2cshAZC5TB3bjlkaN4QgGYJl2FOZwsDcaGAR6medg3UG/EPOJadX191Rh2qGPYEy
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)(451199024)(1800799009)(82310400011)(186009)(36840700001)(40470700004)(46966006)(36756003)(70586007)(70206006)(54906003)(33656002)(40460700003)(86362001)(36860700001)(40480700001)(316002)(81166007)(5660300002)(356005)(8676002)(8936002)(2906002)(82740400003)(4326008)(6862004)(41300700001)(6512007)(53546011)(6506007)(2616005)(107886003)(336012)(26005)(6486002)(478600001)(47076005);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Oct 2023 01:05:38.7448
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 1a78a285-35fa-4e21-6b97-08dbcf7657b9
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:
	DBAEUR03FT033.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR08MB9983

SGkgUm9nZXIsDQoNCj4gT24gT2N0IDE3LCAyMDIzLCBhdCAyMTowOSwgUm9nZXIgUGF1IE1vbm5l
IDxyb2dlci5wYXVAY2l0cml4LmNvbT4gd3JvdGU6DQo+IA0KPiBTQUdBVyBpcyBhIGJpdG1hcCBm
aWVsZCwgd2l0aCBiaXRzIDEgYW5kIDIgc2lnbmFsaW5nIHN1cHBvcnQgZm9yIEFHQVcgMSBhbmQN
Cj4gQUdBVyAyIHJlc3BlY3RpdmVseS4gIEFjY29yZGluZyB0byB0aGUgSW50ZWwgVlQtZCBzcGVj
aWZpY2F0aW9uLCBhbiBJT01NVSBtaWdodA0KPiBzdXBwb3J0IG11bHRpcGxlIEFHQVcgdmFsdWVz
Lg0KPiANCj4gVGhlIEFHQVcgdmFsdWUgZm9yIGVhY2ggZGV2aWNlIGlzIHNldCBpbiB0aGUgZGV2
aWNlIGNvbnRleHQgZW50cnksIGhvd2V2ZXINCj4gdGhlcmUncyBhIGNhdmVhdCByZWxhdGVkIHRv
IHRoZSB2YWx1ZSB0aGUgZmllbGQgc3VwcG9ydHMgZGVwZW5kaW5nIG9uIHRoZQ0KPiB0cmFuc2xh
dGlvbiB0eXBlOg0KPiANCj4gIldoZW4gdGhlIFRyYW5zbGF0aW9uLXR5cGUgKFQpIGZpZWxkIGlu
ZGljYXRlcyBwYXNzLXRocm91Z2ggKDAxMGIpIG9yDQo+IGd1ZXN0LW1vZGUgKDEwMGIgb3IgMTAx
YiksIHRoaXMgZmllbGQgbXVzdCBiZSBwcm9ncmFtbWVkIHRvIGluZGljYXRlIHRoZQ0KPiBsYXJn
ZXN0IEFHQVcgdmFsdWUgc3VwcG9ydGVkIGJ5IGhhcmR3YXJlLiINCj4gDQo+IE9mIHRoZSB0cmFu
c2xhdGlvbiB0eXBlcyBsaXN0ZWQgYWJvdmUgWGVuIG9ubHkgdXNlcyBwYXNzLXRocm91Z2ggKDAx
MGIpLCBhbmQNCj4gaGVuY2Ugd2UgbmVlZCB0byBtYWtlIHN1cmUgdGhlIGNvbnRleHQgZW50cnkg
QUdBVyBmaWVsZCBpcyBzZXQgYXBwcm9wcmlhdGVseSwNCj4gb3IgZWxzZSB0aGUgSU9NTVUgd2ls
bCByZXBvcnQgaW52YWxpZCBjb250ZXh0IGVudHJ5IGVycm9ycy4NCj4gDQo+IFRvIGRvIHNvIGNh
bGN1bGF0ZSB0aGUgSU9NTVUgc3VwcG9ydGVkIHBhZ2UgdGFibGUgbGV2ZWxzIGJhc2VkIG9uIHRo
ZSBsYXN0IGJpdA0KPiBzZXQgaW4gdGhlIFNBR0FXIGZpZWxkLCBpbnN0ZWFkIG9mIHRoZSBmaXJz
dCBvbmUuICBUaGlzIGFsc28gYWxsb3dzIG1ha2luZyB1c2UNCj4gb2YgdGhlIHdpZGVzdCBhZGRy
ZXNzIHdpZHRoIHN1cHBvcnRlZCBieSB0aGUgSU9NTVUsIGluIGNhc2UgbXVsdGlwbGUgQUdBV3Mg
YXJlDQo+IHN1cHBvcnRlZC4NCj4gDQo+IE5vdGUgdGhhdCA4NTlkMTFiMjc5MTIgY2xhaW1zIHRv
IHJlcGxhY2UgdGhlIG9wZW4tY29kZWQgZmluZF9maXJzdF9zZXRfYml0KCksDQo+IGJ1dCBpdCdz
IGFjdHVhbGx5IHJlcGxhY2luZyBhbiBvcGVuIGNvZGVkIGltcGxlbWVudGF0aW9uIHRvIGZpbmQg
dGhlIGxhc3Qgc2V0DQo+IGJpdC4NCj4gDQo+IEZpeGVzOiA4NTlkMTFiMjc5MTIgKCdWVC1kOiBw
cnVuZSBTQUdBVyByZWNvZ25pdGlvbicpDQo+IFNpZ25lZC1vZmYtYnk6IFJvZ2VyIFBhdSBNb25u
w6kgPHJvZ2VyLnBhdUBjaXRyaXguY29tPg0KDQpSZWxlYXNlLWFja2VkLWJ5OiBIZW5yeSBXYW5n
IDxIZW5yeS5XYW5nQGFybS5jb20+DQoNCktpbmQgcmVnYXJkcywNCkhlbnJ5DQoNCg==


From xen-devel-bounces@lists.xenproject.org Wed Oct 18 03:07:31 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 03:07:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618396.961981 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qswtw-0006Ok-Sz; Wed, 18 Oct 2023 03:07:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618396.961981; Wed, 18 Oct 2023 03: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 1qswtw-0006Od-Q4; Wed, 18 Oct 2023 03:07:16 +0000
Received: by outflank-mailman (input) for mailman id 618396;
 Wed, 18 Oct 2023 03:07: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=J5aw=GA=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qswtv-0006OX-5F
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 03:07:15 +0000
Received: from EUR02-AM0-obe.outbound.protection.outlook.com
 (mail-am0eur02on20619.outbound.protection.outlook.com
 [2a01:111:f400:fe13::619])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 6d8beb47-6d63-11ee-9b0e-b553b5be7939;
 Wed, 18 Oct 2023 05:07:10 +0200 (CEST)
Received: from AM5PR04CA0024.eurprd04.prod.outlook.com (2603:10a6:206:1::37)
 by DU2PR08MB7376.eurprd08.prod.outlook.com (2603:10a6:10:2f4::5) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.36; Wed, 18 Oct
 2023 03:07:08 +0000
Received: from AM7EUR03FT042.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:206:1:cafe::65) by AM5PR04CA0024.outlook.office365.com
 (2603:10a6:206:1::37) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.36 via Frontend
 Transport; Wed, 18 Oct 2023 03:07:07 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM7EUR03FT042.mail.protection.outlook.com (100.127.140.209) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6907.20 via Frontend Transport; Wed, 18 Oct 2023 03:07:06 +0000
Received: ("Tessian outbound ab4fc72d2cd4:v211");
 Wed, 18 Oct 2023 03:07:06 +0000
Received: from c58625c343eb.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 008E2BD8-A080-4223-BDC1-B3143332B368.1; 
 Wed, 18 Oct 2023 03:06:59 +0000
Received: from EUR01-DB5-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id c58625c343eb.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Wed, 18 Oct 2023 03:06:59 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by AS8PR08MB6166.eurprd08.prod.outlook.com (2603:10a6:20b:296::16)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.36; Wed, 18 Oct
 2023 03:06:57 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41%4]) with mapi id 15.20.6886.034; Wed, 18 Oct 2023
 03:06: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: 6d8beb47-6d63-11ee-9b0e-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=w3rQqs277/fmIdY6xtPOjf4XKbytzZ6ExnSZ9C457WA=;
 b=I8pct8AKPh4Cdizbduyulb8zAck6c/MlAFLU8tsFUEfk4uh4c/6qjIR8RTWZzaqUpeVid/AL/jj70q+sK7B4E//wfNriYrNJSk5OfhdO1M22b3w2xzfIso2k+/++ITKnop4eWqZDi3oT0Luq9WBqv7c7xnEJq4+4S/IhKFmy6bE=
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: e04580fa63bb8736
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ctu9s+O33bJcwhG5qHUKY8r7fp5mwJn3U3up84GNBv0dML6DJ46VOXL9oNotQF0Sfjk0oEAB20fcmu9RhDUg8dO7VmlesQskHAGLgZENgq75UeJ8S1LVPZf1RycBDwdqzrT84xBR4X+I4BCdnU1d4uzbpGk2IsUCbm4xriwKwKiV5ilhEKsBzBuPzNzETDVn+tv0aULWw1gh5nmvcTDzJ38b4Q5L2BLkdji4OtFBKXOezxHiIJe4dIMEULRWTZ9Yu8aGLqMzz/J3tjnbQkiloTLVOmNiAXMb0hwR9sd+MEnBcZghVkNgvelG05pgNPYEYvMJLiiT4yGb6hp4XMNCcQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=w3rQqs277/fmIdY6xtPOjf4XKbytzZ6ExnSZ9C457WA=;
 b=iK2ZdrcexzKDinFfQzMagZzO+jr8po6fI2PgPXLIuvN1ZIo31kHsEI3u71f08RDSGC6Q4hlX9rWgMJaD5pjkW0UBVg0veHJhhSN6u0LJPye67NP6JloRg0Eb5+VFqAOsyiOkVKZ37Yfeph0/HAeXoqz6TKdo5bOv6lE8D+ZyD6cl8652HNmp1H0JF204fC+ugJaoHEzIIcdcV+YR5Av0ih4KFEVvKvxeL1vjBfuUlBcxoXdDpS7cK9jB9j9btbhgjBGPTi58hSjbiEmnLiVq+azdNU+68Zp3FrqtAW09Qd4UxbZej/pnSHFav/EVpwL3s/5yaHqW5TgDXrKbgDzGfA==
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=w3rQqs277/fmIdY6xtPOjf4XKbytzZ6ExnSZ9C457WA=;
 b=I8pct8AKPh4Cdizbduyulb8zAck6c/MlAFLU8tsFUEfk4uh4c/6qjIR8RTWZzaqUpeVid/AL/jj70q+sK7B4E//wfNriYrNJSk5OfhdO1M22b3w2xzfIso2k+/++ITKnop4eWqZDi3oT0Luq9WBqv7c7xnEJq4+4S/IhKFmy6bE=
From: Henry Wang <Henry.Wang@arm.com>
To: Julien Grall <julien@xen.org>
CC: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>, Penny
 Zheng <Penny.Zheng@arm.com>, Stefano Stabellini <sstabellini@kernel.org>,
	Bertrand Marquis <Bertrand.Marquis@arm.com>, Volodymyr Babchuk
	<Volodymyr_Babchuk@epam.com>, Wei Chen <Wei.Chen@arm.com>
Subject: Re: [PATCH v7 8/8] xen/arm: mmu: move MMU specific P2M code to
 mmu/p2m.{c,h}
Thread-Topic: [PATCH v7 8/8] xen/arm: mmu: move MMU specific P2M code to
 mmu/p2m.{c,h}
Thread-Index: AQHZ+kyDxYKGSy7Hi0WFFm+WJG77tLBID9YAgAV4qICAAM4gAIAAlQgA
Date: Wed, 18 Oct 2023 03:06:56 +0000
Message-ID: <83E02E8E-A59D-4498-9926-5F3F5E72ADE4@arm.com>
References: <20231009010313.3668423-1-Henry.Wang@arm.com>
 <20231009010313.3668423-9-Henry.Wang@arm.com>
 <af6a376c-a224-45d7-9972-d69ee44239d6@xen.org>
 <038DAAA9-25B5-4DDD-8206-35C3BCF69360@arm.com>
 <c31aa392-bc06-4631-be3c-2973c74dfa51@xen.org>
In-Reply-To: <c31aa392-bc06-4631-be3c-2973c74dfa51@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_|AS8PR08MB6166:EE_|AM7EUR03FT042:EE_|DU2PR08MB7376:EE_
X-MS-Office365-Filtering-Correlation-Id: 66270b93-dc2d-47eb-76ae-08dbcf874fb5
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:
 YOnXbAUEohZKeRfHnJIxAz4r+IyJMJ3itab2zVLUTQY5CyrxO5chUq3OabS9u77km9R2yZHXGt1J5xa1Cb3yCE0jPmz4G7oyW5zv0tDkkZfSqTJ2nw8hNNYZGOTrGTs/S7O/GS1dFsaXcoygb9JkrP4/NL443vleCw2mNUbvdbUJZ1/ti1PFpVmlmGODHmHhGqRCNFSx9fPWWRjVm4gRnKk/UurTm3dgtWaXwzYbSkaeG6xOZkfSmx9ejZCg70S0msHFdsEeUTPwZHbVLK9WbxLzV6erlbYZaqBzN2lVKJCd5LOEXyqgstxDHIzE76mUNTxoRMN0iKRk5EiaWqrWH3o1mNVE17XS6AqrR4hm6I81alPI81cXbkPu9twvbSms63YN/UWJy7nz04lTkLKnuvyYbvIBgYd9P/CZKwHjqwqIsAfO7I3amFslQNGn+zR7jqmcxmtBu8THbAUID+K11TYDSmV/xmgI0BflwNGnMmoTHs+NkADjRvqnVvkFx7R20yPoMPKvWZuRswJlFDXgYteI8hp0v/fgtEFUI69/Q3Os157BepPbHVPFCXvB4EQ4qEG6b2q+RFJ/4it2FAfg7PK/ryrc/T85ij/vCdjZCMgaQ6J3D+fR8Z5RHsJ1MlBmiVjhhYjtIgtdJlZrtODuNg==
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)(136003)(376002)(396003)(39860400002)(230922051799003)(186009)(451199024)(64100799003)(1800799009)(478600001)(6486002)(38100700002)(2906002)(86362001)(33656002)(6506007)(26005)(122000001)(36756003)(38070700005)(6512007)(2616005)(53546011)(54906003)(5660300002)(316002)(41300700001)(83380400001)(91956017)(6916009)(71200400001)(76116006)(64756008)(8936002)(8676002)(4326008)(66476007)(66446008)(66556008)(66946007)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <9494018AC958FB45951140074453CDF4@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB6166
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:
 AM7EUR03FT042.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	5c7423c2-f697-42cd-df0f-08dbcf8749df
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	WMpPZx/jd2qMeEuTOw9tKHbDthr7lNjAA4yUSzKPtA93H0e/ugdZrF+ZJ5yNj5OFiO7X1vk/ei2iu+G3yrPdVUlLCKwhr+yV2hCFw/LILtAh1y/Faa6m1lqL5SxS0h7fq9SMgBp9OlfK0mAJZ7FI3WqGlXHutwUGICgiLbipsmOIvmfxrljXcLa8nUR12NSG2uPP5hf4By8SkCOmN10IilVWVlm9+wXbPq6pzIVvVDcg8swbAtHIERPBWn5U/4XHuPsfOCQGxICYGBofCmHv2EQKOvvyc1L7hWSwr4Xjk3ipDvizEGLTu5pxcWfck2bAG6lrtUa2rdrCj0n5fEK0zXT0YWPtZNbq4dNOrsgCnRJp+nCgBsqu3Qj9VSmrfHaxQ2fwWcujS1UiE5hqo7Xbe1Dn+Uc4skfMQNw+PtOXbrsP1sPuAyH0pzbKbRIRsJZhE/26LxPUvdIVeyLsST9TiuRQKUor5LpqFrpPhqb+RfmsYAHOHt48ZN1JET9EK8G1pHhLZ5GLzYwyo1lp0j9BW0PPADPLds+tuXjIeNygwAowgIMxwpUqFI9W55GbVdagwdGQpFlFVwIyfeD0RhJdlqtPAkHjPo+SmBoxgIJ/CKDfrtQk6V1axbPJMcrPwHXJv9J7YPCUumSfOorUdTQ248FhX2U3dGEy3rNLOhOisOnhU3RSlWbWz057nKt2ke84IkPXeCX7svLGb7OMRD1Rkjcq1+iKS1u4k869w+jnoelOTI9RPZY5gYb1zLUH05ja
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)(1800799009)(186009)(82310400011)(64100799003)(451199024)(46966006)(36840700001)(40470700004)(40480700001)(70586007)(70206006)(316002)(54906003)(2906002)(86362001)(5660300002)(40460700003)(41300700001)(6862004)(8676002)(4326008)(8936002)(36756003)(33656002)(2616005)(81166007)(478600001)(6506007)(53546011)(6512007)(336012)(47076005)(356005)(83380400001)(6486002)(82740400003)(36860700001)(26005);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Oct 2023 03:07:06.7415
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 66270b93-dc2d-47eb-76ae-08dbcf874fb5
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:
	AM7EUR03FT042.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU2PR08MB7376

SGkgSnVsaWVuLA0KDQo+IE9uIE9jdCAxOCwgMjAyMywgYXQgMDI6MTMsIEp1bGllbiBHcmFsbCA8
anVsaWVuQHhlbi5vcmc+IHdyb3RlOg0KPiANCj4gSGkgSGVucnksDQo+IA0KPiBPbiAxNy8xMC8y
MDIzIDA2OjU1LCBIZW5yeSBXYW5nIHdyb3RlOg0KPj4+IE9uIE9jdCAxNCwgMjAyMywgYXQgMDI6
MjIsIEp1bGllbiBHcmFsbCA8anVsaWVuQHhlbi5vcmc+IHdyb3RlOg0KPj4+IA0KPj4+IEhpIEhl
bnJ5LA0KPj4+IA0KPj4+IE9uIDA5LzEwLzIwMjMgMDI6MDMsIEhlbnJ5IFdhbmcgd3JvdGU6DQo+
Pj4+IA0KPj4+PiBkaWZmIC0tZ2l0IGEveGVuL2FyY2gvYXJtL2luY2x1ZGUvYXNtL3AybS5oIGIv
eGVuL2FyY2gvYXJtL2luY2x1ZGUvYXNtL3AybS5oDQo+Pj4+IGluZGV4IDk0MDQ5NWQ0MmIuLmE5
NjIyZGFjOWEgMTAwNjQ0DQo+Pj4+IC0tLSBhL3hlbi9hcmNoL2FybS9pbmNsdWRlL2FzbS9wMm0u
aA0KPj4+PiArKysgYi94ZW4vYXJjaC9hcm0vaW5jbHVkZS9hc20vcDJtLmgNCj4+Pj4gQEAgLTE5
LDYgKzE5LDIyIEBAIGV4dGVybiB1bnNpZ25lZCBpbnQgcDJtX3Jvb3RfbGV2ZWw7DQo+Pj4+ICAj
ZGVmaW5lIFAyTV9ST09UX09SREVSICAgIHAybV9yb290X29yZGVyDQo+Pj4gDQo+Pj4gWW91IHNl
ZW0gdG8gdXNlIFAyTV9ST09UX09SREVSIHRvIGFsbG9jYXRlIHAybS0+cm9vdCBpbiBhcm0vcDJt
LmMuIEhvd2V2ZXIsIGFzIEkgbWVudGlvbmVkIGJlZm9yZSwgSSBkb24ndCB0aGluayB0aGUgZGVm
aW50aW9uIG9mIHAybS0+cm9vdCBpcyBzdWl0YWJsZSBmb3IgdGhlIE1QVS4gSSB0aGluayB0aGUg
dHdvIGZ1bmN0aW9ucyB1c2luZyBwMm0tPnJvb3Qgc2hvdWxkIGJlIG1vdmVkIGluIG1tdS9wMm0u
YyBhbmQgUDJNX1JPT1RfT1JERVIgc2hvdWxkIGJlIG1vdmVkIGluIG1tdS9wMm0uaC4NCj4+IFdo
aWxlIHdvcmtpbmcgb24gdGhpcywgSSBub3RpY2VkIHRoYXQgaWYgd2UgbW92ZSBwMm1fZmluYWxf
dGVhcmRvd24oKSAob25lIG9mIHRoZSB0d28NCj4+IGZ1bmN0aW9ucyB5b3UgbWVudGlvbmVkIHRo
YXQgY29uc3VtaW5nIHAybS0+cm9vdCksIHdlIGFsc28gbmVlZCB0byBtb3ZlIHRoZSBzdGF0aWMN
Cj4+IGZ1bmN0aW9uIHAybV9mcmVlX3ZtaWQoKS4gVGhpcyBzZWVtcyByZWFzb25hYmxlIGFzIG9u
IE1QVSB3ZSBvbmx5IGhhdmUgZG9tMGxlc3MNCj4+IGRvbVVzIHNvIHdlIGRvbuKAmXQgcmVhbGx5
IG5lZWQgdG8gZnJlZSB2bWlkLg0KPiANCj4gUmVnYXJkbGVzcyBvbiB3aGV0aGVyIHlvdSBuZWVk
IHRvIGZyZWUgVk1JRCBvbiBNUFUsIHRoZSBhbGxvY2F0aW9uIGFuZCBmcmVlIGZ1bmN0aW9ucyBz
aG91bGQgbGl2ZSBpbiB0aGUgc2FtZSB1bml0LiBTbyBpZiB5b3UgcGxhbiB0byBtb3ZlIHAybV9m
aW5hbF90ZWFyZG93bigpIGluIG1tdS9wMm0uYywgdGhlbiBwMm1fZnJlZV92bWlkIHNob3VsZCBi
ZSBleHBvcnRlZC4NCg0KU291bmRzIGdvb2QsIEkgd2lsbCBmb2xsb3cgdGhpcyB3YXkuIFRoYW5r
cy4NCg0KS2luZCByZWdhcmRzLA0KSGVucnkNCg0KPiANCj4gQ2hlZXJzLA0KPiANCj4gLS0gDQo+
IEp1bGllbiBHcmFsbA0KDQo=


From xen-devel-bounces@lists.xenproject.org Wed Oct 18 05:10:30 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 05:10:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618400.961992 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsyov-0008Ru-7T; Wed, 18 Oct 2023 05:10:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618400.961992; Wed, 18 Oct 2023 05:10: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 1qsyov-0008Rn-3G; Wed, 18 Oct 2023 05:10:13 +0000
Received: by outflank-mailman (input) for mailman id 618400;
 Wed, 18 Oct 2023 05:10: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=J5aw=GA=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qsyot-0008Rh-TF
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 05:10:12 +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 9b174fa9-6d74-11ee-9b0e-b553b5be7939;
 Wed, 18 Oct 2023 07:10:08 +0200 (CEST)
Received: from DUZPR01CA0111.eurprd01.prod.exchangelabs.com
 (2603:10a6:10:4bb::12) by DB5PR08MB10162.eurprd08.prod.outlook.com
 (2603:10a6:10:4a3::14) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.35; Wed, 18 Oct
 2023 05:10:05 +0000
Received: from DBAEUR03FT059.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:4bb:cafe::c7) by DUZPR01CA0111.outlook.office365.com
 (2603:10a6:10:4bb::12) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.21 via Frontend
 Transport; Wed, 18 Oct 2023 05:10:05 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DBAEUR03FT059.mail.protection.outlook.com (100.127.142.102) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6907.20 via Frontend Transport; Wed, 18 Oct 2023 05:10:05 +0000
Received: ("Tessian outbound 6d14f3380669:v211");
 Wed, 18 Oct 2023 05:10:05 +0000
Received: from c6d3209e4fdf.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 1EC7A502-0536-462D-9179-2388FE47C3A2.1; 
 Wed, 18 Oct 2023 05:09:58 +0000
Received: from EUR01-VE1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id c6d3209e4fdf.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Wed, 18 Oct 2023 05:09:58 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by AM0PR08MB5441.eurprd08.prod.outlook.com (2603:10a6:208:17d::23)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.36; Wed, 18 Oct
 2023 05:09:55 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41%4]) with mapi id 15.20.6886.034; Wed, 18 Oct 2023
 05:09: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: 9b174fa9-6d74-11ee-9b0e-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=YAG1pFuqfUzD5Gh+gfcM1UJyliO1/KRfuE+PxZAWc88=;
 b=iIhdQjaLFsE/KcGWgexRPeesSsX2z3BqlQtdVBPlFI36fOaPRk7FzlkJZUt9t5RnEqa1+0LcxjLnkBIshA1h8Y73M18/zloa79pNJk6gjCUC+ADXVplGK2le3QIhbaCgBLgfN1UWP6jlF9jel/f4uA//rc2DF9c+V+5N8ydywmM=
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: 1533bb515ba5c0c9
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=FTDDSPBOzpZtjoM4CjzFlaJC23pbwR+glClYSgs9zpc/k3AvAJ51j3ZdXGuVkyJMMAjc3kxWjTa9qz6TuIftfakhkgmOlZX4m5TC00K3aEEFYROPL+yUtcI2rk14LBExMyd1q0eiYD9CszPZNbnZzd4S7UzDSunOzMoOxBY8Mc2GvpbZi40htp+LjF/XxXXmqD2K0xw0ZVkxbvOFejZhMsIV16jdT/tuZyKDFc1cH+TfMZ39eOm6QFfgSWNliOtECSW9x0u66uXHLWoQ0kxIJsGBuX5EUcZ7U2IaliYfSSQK/eZEYIodj3oqDrzqao6MAo3ETUaPARXOiOEnUElDUA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=YAG1pFuqfUzD5Gh+gfcM1UJyliO1/KRfuE+PxZAWc88=;
 b=m+/hin3E8uEVXXA4ZXJ9iYbQ0lCKVAifvSQ2GrfHZ2u8rfCNAWmqVDOqNhcvPpSzGSFCQ5zw5BrBnMX5QI6WdtxhrZAy69tUmC7RnNiSUlVV+YLdTP6HY3nOXdtSshy2srnl8d4doZ0an24h9ZQBbSTes8GxUqLuCidx44s8Hu1izSYVV7JLZn1iL2vGPMWzHCxim0Ziybky5ftlc38E39MrE0hrZRv7yc/jfWeVAZJG81mSZo2MtTVPCoQvmgdC1nzu2XjPcx6lrkcBNvfdx603UHMaNQ8giA6sgJ0XdaIYXnvSOM8z0K0ka7sTbGaPHKxYWSDXwlyyi5fCxYkALQ==
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=YAG1pFuqfUzD5Gh+gfcM1UJyliO1/KRfuE+PxZAWc88=;
 b=iIhdQjaLFsE/KcGWgexRPeesSsX2z3BqlQtdVBPlFI36fOaPRk7FzlkJZUt9t5RnEqa1+0LcxjLnkBIshA1h8Y73M18/zloa79pNJk6gjCUC+ADXVplGK2le3QIhbaCgBLgfN1UWP6jlF9jel/f4uA//rc2DF9c+V+5N8ydywmM=
From: Henry Wang <Henry.Wang@arm.com>
To: Roger Pau Monne <roger.pau@citrix.com>
CC: Xen-devel <xen-devel@lists.xenproject.org>, Jan Beulich
	<jbeulich@suse.com>, Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu
	<wl@xen.org>, Paul Durrant <paul@xen.org>
Subject: Re: [PATCH for-4.18 v3] x86/pvh: fix identity mapping of low 1MB
Thread-Topic: [PATCH for-4.18 v3] x86/pvh: fix identity mapping of low 1MB
Thread-Index: AQHaANQS/LyQqw9DZ0a+r0ceZcWCMLBPAPAA
Date: Wed, 18 Oct 2023 05:09:53 +0000
Message-ID: <1823F14B-B08D-4E61-AD19-26D1B135F0BA@arm.com>
References: <20231017082907.14455-1-roger.pau@citrix.com>
In-Reply-To: <20231017082907.14455-1-roger.pau@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_|AM0PR08MB5441:EE_|DBAEUR03FT059:EE_|DB5PR08MB10162:EE_
X-MS-Office365-Filtering-Correlation-Id: 52b9cf8c-affd-4132-73c0-08dbcf987d88
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:
 nXgfnEuw9Omq/phfkcd477TtZb1WEECufGoCw+9wWRLU73SYqbaUO2IZOGShD7ReYi00WjVaIY3u9byLRYI53Fk0I6SIi5neSxgmOGs0mQhacP2PNFDjyGW5fPlU4VIN4Rj0i6G5uQ9/QBkyfRNIhxMGPZ1xf7RbDEfgZA/LyZZ91j9GMRxKsnL1rwOn7Tegdsy68cNtPUa79kS6xuApwev1eV/7BWiDBWqX+qLxp6YqKIodzxBnrdpgm7S2f/npfJkF+xFSLq0Q+HkXiVAmJeuGbDw2j6EqaLTv/NU77DfFGS0FW1eB6V+8cSIx+zO7KFDyrUCpPfctl27jRTUNAbkesr4ZHpgt+sp6xOsoHziG8TePtcu7fR/yz5/47E8c9gaRCiDztuXHOGqdVIJFeQ1sRXshmigW0boxymyExUYuEpDkhdSsC5vkoMUdNrUoRA+LkXa60ChQoyvGYc5xzEXTOt2Ud0fXGmvw2/Ak70evFZbbDIzJ3RwgHvwvy8B+i38W0mOD9VhWO5sqsrO/bDtnPnIhaMSt6UrOfJdkCW8krOYtc2Pe1SHo98Hd0SpSkERrSRxZ7hhGEwuo7Jaj8FvM3SZoMI01o18L2XVbM2ilRSnBGTJHKO0OMSUbK/mWIAaA1an61iVFqbr1BfGIig==
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)(230922051799003)(186009)(451199024)(64100799003)(1800799009)(478600001)(122000001)(38100700002)(6512007)(6506007)(53546011)(33656002)(2616005)(6486002)(26005)(38070700005)(71200400001)(41300700001)(5660300002)(66476007)(8936002)(4326008)(8676002)(316002)(54906003)(66946007)(76116006)(91956017)(6916009)(2906002)(86362001)(66446008)(66556008)(64756008)(36756003)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <0532A45ACBB76F4CA3ECB2F7B910AEFD@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR08MB5441
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:
 DBAEUR03FT059.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	f1fd21dc-3510-425a-2972-08dbcf987684
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	UDey4TyiLyXQVuzr93xUfu9cFrOfyUkOPsW0F9Tw7eoj2Z9WbwM+qWxrxSoDpdkN96ggpqiXiqhGcvrvzXTANivvJ/a/uVzBYuSIaQDwRT/q12+5s3RkxYu3ULzMHE2/6E5uum7mwhsIh5VYZMTgu38E7SD56Lr/JKRDNpMVAnixETZEgnyGs9F3aWJCqdzEJ534JByqyu/3/wzzIkGsPiCqhubTlerffz50S52tb557mU6iqSbIrQGeehjtS6bOT5Lg74KQkceogMfkblXI4HGBoUwoGel+oGaEqVZgnIABHXU7kCY0qbSzVHBaOqckzJVoIWB4WENWDrZJoFoRkgxSPqKoZrDFvy1U2meIfhoiN3CEzeOaKFoVxyeS0K3QMBXm+ZyPA5zc5xi8nfo7h12kfavnwchuFQaWgQtS7LvLkeETHzMY4RY3+jxKVtCfIPhpFL2UlIB8w0PXntLcHBq8saeMw2xHoGdyxnPwQabFMj+RQ+zVLiGJ0CuJAHA6l7ljGaQdfZAfznK4SIsTj1W9rrV/2YhZBGbEKaN9kBSWbjt43FoAggEkDpHGMtbACpco+NtAs1dSGP9JFaN+yViZ9bKjzvO9dEvuFFpjrDdZs6AcVj8exUaAp0qp70cI7r4qaH0VNoVHv3FzLWnzQQ0imKAb2kYVYaE9pAA7C++w8NjJijDz21qyMimTPkfctGYmWd6o1gUvvJhf0K1EbLgKcl4UiWz5CQieJT4+rZBnkiMQ3ZQ30C/t/8lthvbw
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)(451199024)(64100799003)(82310400011)(1800799009)(186009)(36840700001)(40470700004)(46966006)(40460700003)(40480700001)(54906003)(6486002)(70586007)(478600001)(70206006)(41300700001)(47076005)(36860700001)(86362001)(82740400003)(356005)(2616005)(6512007)(26005)(316002)(53546011)(336012)(6506007)(33656002)(6862004)(81166007)(36756003)(4326008)(8676002)(5660300002)(2906002)(8936002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Oct 2023 05:10:05.0974
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 52b9cf8c-affd-4132-73c0-08dbcf987d88
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:
	DBAEUR03FT059.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB5PR08MB10162

SGkgUm9nZXIsDQoNCj4gT24gT2N0IDE3LCAyMDIzLCBhdCAxNjoyOSwgUm9nZXIgUGF1IE1vbm5l
IDxyb2dlci5wYXVAY2l0cml4LmNvbT4gd3JvdGU6DQo+IA0KPiBUaGUgbWFwcGluZyBvZiBtZW1v
cnkgcmVnaW9ucyBiZWxvdyB0aGUgMU1CIG1hcmsgd2FzIGFsbCBkb25lIGJ5IHRoZSBQVkggZG9t
MA0KPiBidWlsZGVyIGNvZGUsIGNhdXNpbmcgdGhlIHJlZ2lvbiB0byBiZSBhdm9pZGVkIGJ5IHRo
ZSBhcmNoIHNwZWNpZmljIElPTU1VDQo+IGhhcmR3YXJlIGRvbWFpbiBpbml0aWFsaXphdGlvbiBj
b2RlLiAgVGhhdCBsZWFkIHRvIHRoZSBJT01NVSBiZWluZyBlbmFibGVkDQo+IHdpdGhvdXQgcmVz
ZXJ2ZWQgcmVnaW9ucyBpbiB0aGUgbG93IDFNQiBpZGVudGl0eSBtYXBwZWQgaW4gdGhlIHAybSBm
b3IgUFZIDQo+IGhhcmR3YXJlIGRvbWFpbnMuICBGaXJtd2FyZSB3aGljaCBoYXBwZW5zIHRvIGJl
IG1pc3NpbmcgUk1SUi9JVk1EIHJhbmdlcw0KPiBkZXNjcmliaW5nIEU4MjAgcmVzZXJ2ZWQgcmVn
aW9ucyBpbiB0aGUgbG93IDFNQiB3b3VsZCB0cmFuc2llbnRseSB0cmlnZ2VyIElPTU1VDQo+IGZh
dWx0cyB1bnRpbCB0aGUgcDJtIGlzIHBvcHVsYXRlZCBieSB0aGUgUFZIIGRvbTAgYnVpbGRlcjoN
Cj4gDQo+IEFNRC1WaTogSU9fUEFHRV9GQVVMVDogMDAwMDowMDoxMy4xIGQwIGFkZHIgMDAwMDAw
MDAwMDBlYjM4MCBmbGFncyAweDIwIFJXDQo+IEFNRC1WaTogSU9fUEFHRV9GQVVMVDogMDAwMDow
MDoxMy4xIGQwIGFkZHIgMDAwMDAwMDAwMDBlYjM0MCBmbGFncyAwDQo+IEFNRC1WaTogSU9fUEFH
RV9GQVVMVDogMDAwMDowMDoxMy4yIGQwIGFkZHIgMDAwMDAwMDAwMDBlYTFjMCBmbGFncyAwDQo+
IEFNRC1WaTogSU9fUEFHRV9GQVVMVDogMDAwMDowMDoxNC41IGQwIGFkZHIgMDAwMDAwMDAwMDBl
YjQ4MCBmbGFncyAweDIwIFJXDQo+IEFNRC1WaTogSU9fUEFHRV9GQVVMVDogMDAwMDowMDoxMi4w
IGQwIGFkZHIgMDAwMDAwMDAwMDBlYjA4MCBmbGFncyAweDIwIFJXDQo+IEFNRC1WaTogSU9fUEFH
RV9GQVVMVDogMDAwMDowMDoxNC41IGQwIGFkZHIgMDAwMDAwMDAwMDBlYjQwMCBmbGFncyAwDQo+
IEFNRC1WaTogSU9fUEFHRV9GQVVMVDogMDAwMDowMDoxMi4wIGQwIGFkZHIgMDAwMDAwMDAwMDBl
YjA0MCBmbGFncyAwDQo+IA0KPiBUaG9zZSBlcnJvcnMgaGF2ZSBiZWVuIG9ic2VydmVkIG9uIHRo
ZSBvc3N0ZXN0IHBpbm90ezAsMX0gYm94ZXMgKEFNRCBGYW0xNWgNCj4gT3B0ZXJvbih0bSkgUHJv
Y2Vzc29yIDMzNTAgSEUpLg0KPiANCj4gUmVseSBvbiB0aGUgSU9NTVUgYXJjaCBpbml0IGNvZGUg
dG8gY3JlYXRlIGFueSBpZGVudGl0eSBtYXBwaW5ncyBmb3IgcmVzZXJ2ZWQNCj4gcmVnaW9ucyBp
biB0aGUgbG93IDFNQiByYW5nZSAobGlrZSBpdCBhbHJlYWR5IGRvZXMgZm9yIHJlc2VydmVkIHJl
Z2lvbnMNCj4gZWxzZXdoZXJlKSwgYW5kIGxlYXZlIHRoZSBtYXBwaW5nIG9mIGFueSBob2xlcyB0
byBiZSBwZXJmb3JtZWQgYnkgdGhlIGRvbTANCj4gYnVpbGRlciBjb2RlLg0KPiANCj4gRml4ZXM6
IDZiNGY2YTMxYWNlMSAoJ3g4Ni9QVkg6IGRlLWR1cGxpY2F0ZSBtYXBwaW5ncyBmb3IgZmlyc3Qg
TWIgb2YgRG9tMCBtZW1vcnknKQ0KPiBTaWduZWQtb2ZmLWJ5OiBSb2dlciBQYXUgTW9ubsOpIDxy
b2dlci5wYXVAY2l0cml4LmNvbT4NCg0KUmVsZWFzZS1hY2tlZC1ieTogSGVucnkgV2FuZyA8SGVu
cnkuV2FuZ0Bhcm0uY29tPg0KDQpLaW5kIHJlZ2FyZHMsDQpIZW5yeQ0K


From xen-devel-bounces@lists.xenproject.org Wed Oct 18 05:15:45 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 05:15:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618406.962018 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qsyuC-0001Gn-Ty; Wed, 18 Oct 2023 05:15:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618406.962018; Wed, 18 Oct 2023 05: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 1qsyuC-0001Gg-RQ; Wed, 18 Oct 2023 05:15:40 +0000
Received: by outflank-mailman (input) for mailman id 618406;
 Wed, 18 Oct 2023 05:15: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 1qsyuB-0001GU-F1; Wed, 18 Oct 2023 05:15: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 1qsyuB-0002qr-Ck; Wed, 18 Oct 2023 05:15: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 1qsyuA-0001d6-SQ; Wed, 18 Oct 2023 05:15:38 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qsyuA-0007gW-Pg; Wed, 18 Oct 2023 05:15: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=mDOM2rBUuEaC2NiyRB69lMuCg7PpBB7JPqltkpBRV+Q=; b=pkNRKdVQtbraVDnfdU5TcHPKsh
	pv3Uea3OkxV8dYRyyJ9tTfpA8VpIqjxWv0yWB+EvL+10cyUw3O+YYtBZJhTHYyiohFd0M77Uhif1i
	M2D4o4Ek58SVXwBcpkgIGgkt0A1Uo2ivpQl3pWnYv1qBZre/oL6W4cCB5d0BZg4L3xY4=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183403-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 183403: tolerable FAIL - PUSHED
X-Osstest-Failures:
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:xen-install:fail:heisenbug
    xen-unstable:test-amd64-amd64-xl-credit1:guest-localmigrate/x10:fail:heisenbug
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw: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-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-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-qemut-win7-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-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-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:saverestore-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-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-amd64-libvirt-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-arndale:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:migrate-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-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-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-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=7114bbfc8424ee467c6c8c82f077764ca4fa799b
X-Osstest-Versions-That:
    xen=0ce2ee7a16f2886c32b3f070bba3172f4a577aa4
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 18 Oct 2023 05:15:38 +0000

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

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 7 xen-install fail pass in 183406-retest
 test-amd64-amd64-xl-credit1 20 guest-localmigrate/x10 fail pass in 183406-retest

Tests which did not succeed, but are not blocking:
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail in 183406 never pass
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183392
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183399
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183399
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 183399
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183399
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183399
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 183399
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183399
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183399
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 183399
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 183399
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183399
 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-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          16 saverestore-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-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-amd64-libvirt-xsm 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-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-libvirt     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-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-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-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                  7114bbfc8424ee467c6c8c82f077764ca4fa799b
baseline version:
 xen                  0ce2ee7a16f2886c32b3f070bba3172f4a577aa4

Last test of basis   183399  2023-10-17 11:13:12 Z    0 days
Testing same since   183403  2023-10-17 20:40:19 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Anthony PERARD <anthony.perard@citrix.com>
  Federico Serafini <federico.serafini@bugseng.com>
  Jan Beulich <jbeulich@suse.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            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                                  fail    
 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
   0ce2ee7a16..7114bbfc84  7114bbfc8424ee467c6c8c82f077764ca4fa799b -> master


From xen-devel-bounces@lists.xenproject.org Wed Oct 18 05:58:49 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 05:58:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618413.962028 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qszZn-0007bO-8t; Wed, 18 Oct 2023 05:58:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618413.962028; Wed, 18 Oct 2023 05:58: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 1qszZn-0007bH-6B; Wed, 18 Oct 2023 05:58:39 +0000
Received: by outflank-mailman (input) for mailman id 618413;
 Wed, 18 Oct 2023 05:58: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=EezS=GA=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qszZl-0007bB-VC
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 05:58:38 +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 5fde51cb-6d7b-11ee-9b0e-b553b5be7939;
 Wed, 18 Oct 2023 07:58:35 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM9PR04MB8841.eurprd04.prod.outlook.com (2603:10a6:20b:408::10)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.23; Wed, 18 Oct
 2023 05:58:32 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%7]) with mapi id 15.20.6907.022; Wed, 18 Oct 2023
 05:58: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: 5fde51cb-6d7b-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Ro+7UKfPhsDyA8zKi1Jz0aJ0C57KyvhZjqXNUIolJp5FzT7vHEdv4VMTZtZmPOMqdM6Oshm53A87c3SzSZKEiX/A6CqHp3aWy91bAY9PPhNITzR3FozNbgCmkUftOMRVs3VIT6VYJN3803DnL09d4Tj2VwWvDuj4IjdWu+ZV88cRwFpVlVBpiSMppDTJVYQBTO2x/VqrPJnrc9szjUxhInncK0J6BiD3niW7lh0P9XevUZd27XHJ7BI2ZonS41NIjTmrElMITt6Dy+lurXQG5nRColnOhgEtg5gjJuAcPudUAqIdHFq2k5CW3CZiBLmjMp3ToOZ/aGgsMpln39dC4Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=C6kLCulIez2CqVLFtlG4fGwKRZnzVFd960y7NDTJI60=;
 b=LW/URzE4IjX/rOZph1S+tULUDSiGuskqLCPuQyWA0skYf8fwuzUyIMeR0lTCuyK1h4LMXv7kdS7iGRcoPvnYWp8kzGrcA0ixD+lUzUESpdbtN0MChYLmcw3ZA/xz57sqd2f4CoONmItArgPQYMYlWnbhlK2wfy2GFVDTZGKgy/OqnK1kMzU4YvztAUGZxlXptfl4kXh9JLyIqHlOD/cf8LrPPSRYt+rUfMgcMauezllV8WmJSHTQYONnl3iHJOiW+REdsZjMecbSqPIEeQ6UkNS+WKT8//6Yh8l/FnXtoLr008fPBsHhfMMhqZ4HlFcdNtpb7zhG2510jC6ehblXdA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=C6kLCulIez2CqVLFtlG4fGwKRZnzVFd960y7NDTJI60=;
 b=t+f1jeO8AvcCsdan7kU5y5Kw5G9EpRDcY0xno28q1oj1enI+WFcYrOdBASORJY0kaHa3/S0ukOE6Mfwb4/YW0Aq6KZ388YJYnmkFv/6EZ2vR5AII3rJIgfpaSqWzIx+RPgpLNB8xRC1sdOrC2453ury5dpOH7A6fVKTvs96w+xoIUqEzxJuSF9kJia1037H7ALcSk0/BZxT5wc/Xa+/3/rRmqYYozegfAlNM8rFTFbJKSvw3OHU4koxkeqW/p7/hCoEv/c/EdbqcVdbulrkjevPPn5RD6HtluXBckioaJz+qymDRohrxOgqojUn9dRFZI49fI7QJLGuA3XfTEGwH/A==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <ead797ed-84cc-fb70-5259-7e11211d049e@suse.com>
Date: Wed, 18 Oct 2023 07:58:30 +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: Stefano Stabellini <sstabellini@kernel.org>
Cc: Simone Ballarin <simone.ballarin@bugseng.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
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>
 <725f5193-c8d3-1bc8-cd62-2a2b1b5ecc01@suse.com>
 <alpine.DEB.2.22.394.2310171709310.965337@ubuntu-linux-20-04-desktop>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <alpine.DEB.2.22.394.2310171709310.965337@ubuntu-linux-20-04-desktop>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0145.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:b8::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_|AM9PR04MB8841:EE_
X-MS-Office365-Filtering-Correlation-Id: 8354bec3-f3ec-48db-7a06-08dbcf9f4237
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	3lQMYoHxwsrrh4rHYQsBwaQorHwmUlaHHRVaZAQ2r0/FVrAged2Kk/ssAJJ3qPd2LT04TQ+Vyb4TcJRGoM2y7sNz8LCwRcO4tqC9WRd3FASB8sjjF0ABQrvNtjm2Jzs7UW99dpzccj6YrwQEJFiOlmi03ll9ImgyXXC5EoZ0B4NKwWFDSWCff+Q1/G5Qdrk6zR3agziCmZ/mM1I6ty1pUbCgU61nszfwpgC1kKTeO9OB5Uzf3cKpnGxN306AZ2yywBic3tig9SALepnn7QZM3jC6CL2hmKRYkElIywL3Cq88GEQoAKsITG/epWGqju7nXfLuk19btrdWebagWYSP4D7zVU31PDcEsOqmUOTMdN48xSMVg8dQDGuLEPzU8jgcw3JMDVocNhIXnUNVHIXh4ltw8y+vyo7oaL9Aouh1JAPBwdvNbHTsDayniAd+qDFjrb/b5UySKj4Lj7fXstIcMxsBOv6ED67O46gKDENYHTzdZQtHnUGue9/fgEKbABJYAPwZ8aNfZl8B6OYAyF7Eo7cM4ibBZdIFTijfyH4prh6qeHiSlUWea8UTjMPdi8xTjxCs24ctiNvSidso1PaBasdPTNYsh1h8kIVYOftubo4wTEqj3OIocdAFjvrvPWm7zWl4BiIx0svWYXFvDAACpA==
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)(366004)(136003)(39860400002)(230922051799003)(1800799009)(186009)(64100799003)(451199024)(86362001)(31696002)(36756003)(66899024)(41300700001)(5660300002)(6486002)(66946007)(316002)(54906003)(66476007)(66556008)(6916009)(38100700002)(31686004)(6512007)(53546011)(2616005)(26005)(6506007)(83380400001)(8936002)(4326008)(7416002)(2906002)(8676002)(478600001)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?SHVFekNsT1VxbDZOZXljWTAwb2J6dVBBK0FKNnZQczVETUNsUlAyVk5XM0hZ?=
 =?utf-8?B?cXlVRFpuRXNRTjFsWE1wMnRFTEliVWRGdHBLUGJyZUhaQlNhTDkySENVYmpa?=
 =?utf-8?B?YUdIS3ovdVBZODFNZ3ArOUM5dHp4OEFMSUthQ1oxNTJQdjBBb04rZ1JKRG4w?=
 =?utf-8?B?ZGVKbjZocVI4YWZ5a1Nhc2szRjR2V0J1dENFZEQ0MmlPdEVLVXFZVTVLcVgx?=
 =?utf-8?B?NmxxM2VOTXF4azg2U3R5YmwxcnVrcCtKV2tkTVplVEh2OTFqbGRLR3NyQ1Fu?=
 =?utf-8?B?b2UxMlBlTjIxOVAxSlJuQkRoMVhCSmtiMytjR2FhMUc4RU4yTUhtNGk1L2NK?=
 =?utf-8?B?eXQyY1dsNWxDamNUL2E2VkJDMlR6WGdMZFc0Vyt6elRjQ1RvZnErbDdKQmFz?=
 =?utf-8?B?a2kwMzh0UktzQ0QvNHNsV1hId0x4NENmYTk2WUpCU3U3b3lEOWhrRldoRjRL?=
 =?utf-8?B?M0ZQaWlqUmR5S0hRVS90aEZZSnFCdFl4ckVGQno2cWRHRG43YUdCSE9qRzNP?=
 =?utf-8?B?MHI4NGFHc0owemxmV2VEaE5wcXl0KytFSytKSWVyREhFQitKZmUrdVU5aHZQ?=
 =?utf-8?B?b3RFZGpjcGRDcjJaZENKclp0QVY0cktoZzQxV2hpYTJzYnZQMDR6RVZzSjVj?=
 =?utf-8?B?ajhYaldrZE1wcWVFUDROam1Bd2gyM0hkUGdiNGtzODhPTnV4eVl0V2xzakFN?=
 =?utf-8?B?dENWYXVOaWw5cjNLeHVIWWZmM01hUkdXTGtCdTVEVWZtVHMwWjgwUnVHdGQw?=
 =?utf-8?B?V2t4MjVjS2szYmszSUxERXAxbm5tRVZaYWsxU2txUjAzNHhQTmlWZFJlWlRw?=
 =?utf-8?B?UElUaTFES3V6amZzNlpaK3ZEMUtMaGhLYUIzVlloQUhFZ3Uwd0Jqem1aeFlo?=
 =?utf-8?B?bkZpNUlNWHlXSlBDaFFPWXJkNFdWd3hzRkNHNU9PTUtCSitpRVFDcnc3bWls?=
 =?utf-8?B?dXBrdmo2QlVxeGdVSlhtUjEyYXdZRG10VE9pVVZWd1I3dHUwNkVXNUhrUER2?=
 =?utf-8?B?cnRmeVdBM1Y1TDhXNjFyWmlCWmxHTFMxY2t5MWVaekpyelZ6WGNnU1pPVHhN?=
 =?utf-8?B?SUpLY3Q1cnd2VnFpZVQvT1kyYnY0VWlsR3RRSlVkdmQ2WnMxQVkvYURHQXZV?=
 =?utf-8?B?aEZzbDRsTVBsNG9nVUR0Wm1JSmM5UWlHTnd6V00zYkcyTW5xeWJNT21BM0Q1?=
 =?utf-8?B?bUdhNWZBTGdxSW5YZkkwV05oVXduSDVCN2ZnZnk1SFRYYjJvUHFtQW5ibUJw?=
 =?utf-8?B?cEt0bHJBaVE2UVM2L2VHOVkwV29XTjBmSG5oeFU1LzVJeHdBbEFwQkxSYTlR?=
 =?utf-8?B?cXA2bHkxU21kU1ZFMEI4Y1IxUDRmOVhNd1EwblIvUndzQmN6MHlnK2VJQnNC?=
 =?utf-8?B?SnhReHZRektrVmY4OHdQQXNqWWJyb1ppNHlrMmltSVBSOTdaVXZiMXplK2dm?=
 =?utf-8?B?YmJNRytOV1NrbVpISktOb0dHREM3KzNQckdoeS8wTEhtMER0cnhUSjBEREkz?=
 =?utf-8?B?QldqQ1hPaFRNMm4rY21XNy9TZzZlM0NBK1B6b1FHSWIrbnE5d3hjUzJQODZX?=
 =?utf-8?B?OFFDRU9VY2puYjlDZDlUZzA2bHBYTjF3eHk4THhNZGRUTmV4TEFtRm1EK2Nh?=
 =?utf-8?B?bjVyRFdjazB2Z2U0c0EweU5DdjlUVWowQnRiVE9La3M2eGJHeXl0OXhzTXIw?=
 =?utf-8?B?c2RHeGFUNDNBU1AybXNybzVySlZJR2RsN3NNQjZtT1JTYmpsaCtiUDViUy9S?=
 =?utf-8?B?ZVJtR2MxOUd2OVZHSTFvSEU2bW82RFFWK2Zyd0M0dFRtR2FnQ0FzWUt1VjNR?=
 =?utf-8?B?Y0hmclhrdDlDQStxZnczRDNQamJOTHFUNWVZbU41NkdraHRzMUdSSjFWK3V1?=
 =?utf-8?B?UXk0Ylk2Vzh0RlpjSjlkVkowQkJOZysrUmRvZlhQV3p6ejBUVWZsRTFjWkM5?=
 =?utf-8?B?ZFhHUjRmbEFubDdoZ2FSYUpIeHYycnZUK3BEMVh5c0R0czg3TVlXcFl0R2xm?=
 =?utf-8?B?ZlpmUCtmOXFkNFFsWjkyM0RPNTZVNHVYcHVoQm1YRGVwQ3dYeWhuanZQRlBw?=
 =?utf-8?B?OEFlaE5BT09ZdWQySGlocmlsUjZWelBSb0R6OVhVc0tWMTY5YUU0b3ZHQ1c0?=
 =?utf-8?Q?JZD/Z5P1f2nYNodPad8nAlQX+?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 8354bec3-f3ec-48db-7a06-08dbcf9f4237
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Oct 2023 05:58:32.4509
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: WxmhbnKWqoIKAVjuSzjSynZn7keK5IzP1DKd4PDAoBBKSfmIIzM01TFWGgz1ayW3kH0HZvamZeTWLcC1hvs/gQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR04MB8841

On 18.10.2023 02:48, Stefano Stabellini wrote:
> On Mon, 16 Oct 2023, Jan Beulich wrote:
>> On 29.09.2023 00:24, Stefano Stabellini wrote:
>>> 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:
>>
>> ... "least resistance" won't gain us much, as hardly any guards don't
>> start with an underscore.
>>
>>> - 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__ ?
>>
>> There are no headers in xen/include/. For (e.g.) xen/include/xen/ we
>> may go with XEN_BLAH_H; whether ASM prefixes are needed I'm not sure;
>> we could go with just ARM_BLAH_H and X86_BLAH_H?
>>
>> The primary question though is (imo) how to deal with private headers,
>> such that the risk of name collisions is as small as possible.
> 
> Looking at concrete examples under xen/include/xen:
> xen/include/xen/mm.h __XEN_MM_H__
> xen/include/xen/dm.h __XEN_DM_H__
> xen/include/xen/hypfs.h __XEN_HYPFS_H__
> 
> So I think we should do for consistency:
> xen/include/xen/blah.h __XEN_BLAH_H__
> 
> Even if we know the leading underscore are undesirable, in this case I
> would prefer consistency.

I'm kind of okay with that. FTAOD - here and below you mean to make this
one explicit first exception from the "no new leading underscores" goal,
for newly added headers?

> On the other hand looking at ARM examples:
> xen/arch/arm/include/asm/traps.h __ASM_ARM_TRAPS__
> xen/arch/arm/include/asm/time.h __ARM_TIME_H__
> xen/arch/arm/include/asm/sysregs.h __ASM_ARM_SYSREGS_H
> xen/arch/arm/include/asm/io.h _ASM_IO_H
> 
> And also looking at x86 examples:
> xen/arch/x86/include/asm/paging.h _XEN_PAGING_H
> xen/arch/x86/include/asm/p2m.h _XEN_ASM_X86_P2M_H
> xen/arch/x86/include/asm/io.h _ASM_IO_H
> 
> Thet are very inconsistent.
> 
> 
> So for ARM and X86 headers I think we are free to pick anything we want,
> including your suggested ARM_BLAH_H and X86_BLAH_H. Those are fine by
> me.

To be honest, I'd prefer a global underlying pattern, i.e. if common
headers are "fine" to use leading underscores for guards, arch header
should, too.

> For private headers such as:
> xen/arch/arm/vuart.h __ARCH_ARM_VUART_H__
> xen/arch/arm/decode.h __ARCH_ARM_DECODE_H_
> xen/arch/x86/mm/p2m.h __ARCH_MM_P2M_H__
> xen/arch/x86/hvm/viridian/private.h X86_HVM_VIRIDIAN_PRIVATE_H
> 
> More similar but still inconsistent. I would go with ARCH_ARM_BLAH_H and
> ARCH_X86_BLAH_H for new headers.

I'm afraid I don't like this, as deeper paths would lead to unwieldy
guard names. If we continue to use double-underscore prefixed names
in common and arch headers, why don't we demand no leading underscores
and no path-derived prefixes in private headers? That'll avoid any
collisions between the two groups.

Jan


From xen-devel-bounces@lists.xenproject.org Wed Oct 18 07:00:11 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 07:00:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618417.962038 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qt0X7-0008WN-Nd; Wed, 18 Oct 2023 06:59:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618417.962038; Wed, 18 Oct 2023 06: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 1qt0X7-0008WG-Jp; Wed, 18 Oct 2023 06:59:57 +0000
Received: by outflank-mailman (input) for mailman id 618417;
 Wed, 18 Oct 2023 06: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=EezS=GA=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qt0X6-0008WA-9N
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 06:59:56 +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 f0cadaa7-6d83-11ee-98d4-6d05b1d4d9a1;
 Wed, 18 Oct 2023 08:59:54 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by VI1PR04MB7021.eurprd04.prod.outlook.com (2603:10a6:800:127::24)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.21; Wed, 18 Oct
 2023 06:59:50 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%7]) with mapi id 15.20.6907.022; Wed, 18 Oct 2023
 06: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>
X-Inumbo-ID: f0cadaa7-6d83-11ee-98d4-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=fRjbV7svxcy2lysx/zhORa6LeypvRUc/YBlxGkTG7n7eb8wBkBeo4zCXQD4WCYAVU7v8BrpuO9JVWOfOmPCvdw8KqIryx7xCOiznFSS/9Jnk+r2QUuT38Aj956DluyHlSEObivtu+68sl1ybEeAc6Mlp+EjENQwubKmc8v4w2V/CSVH0/gc7OSUa8C+2idYMNHvq7exsbW4HFB0f/axQl008U7nx5BdKBLWdtKCzuvoFERxK6BHLjGg1fNVkYd+AIwWM5lCllp/n5KSMHdz0D7wl3vYe2MqWVJHKG04qsuNBpRHH7L7zWSIox3KvqOG5BtIxhhdYy3KTmTHKhjHwBA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=IIz/ik3vsk6vDc/DQNaFVQMZLtxs2fRArKQLalAqgvg=;
 b=RF+P2oZooGf2PqjfJgMfFpbs8m5oDLt6YNEvllmdhorNuXNTnwn0hn0YShjDYwPG5XByrOFAoYih0LieuBUY4RCmPlztZ8eT0LT83YPuEL5cb01VLvTaaHPlKybYrvi4TNtgLpvjaWZuJ0nZTJ6w0bxcYQVjzXFhzc7MIVwDvWTBtntA9egfr/EeCW4MlgSMU15xdqYgiUvRJobFVxLsJezIfG1HWMc7o69yS04xntW3WUy7+2A+Ya43QFIAxOVGww6kmnlcpQRgsiUHmT5dPhxVHGoRQSPdn6Vl/Hub3HgTgNksc0EB5fYDWYmQ0GTwUNuaBp7pBsD9BUY07qjJuA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=IIz/ik3vsk6vDc/DQNaFVQMZLtxs2fRArKQLalAqgvg=;
 b=30xdr0Ko7veB0oYP0wNOt+XjYgVyEFEgsDFRe5LUH0ljmyVmwxd6/G7hBlmN+eAJ8eK6fLd6My1HHp+TshSZ3+0cM2wkRL3YaKNySDMgImLH0nT0kOJNNenAsCU7AePEdTWgHrbXpJjI0l77Hy88h++2eFrILh46MME0ygZMouFuEInZ+Rs0uXOoxCbTt34oe6FqhdIavnb3h38PNhdfxYAp/sR0+P2f/1WLGJlli2he2u2w83tLTDSnwv76Z6fTHMGGd+Y3tUW0kvgjSQbGdgWOj9iXa0TwKBatnY0zGtticIp/VDYWcAAVYhbzbIB6oyeuubxb/5HvtlhG9MF7CA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <da32f4d7-7e17-b426-f080-993035d0ec44@suse.com>
Date: Wed, 18 Oct 2023 08:59: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 | Failed pipeline for staging | f51c9238
Content-Language: en-US
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>
References: <652f0b6b987b0_2c99ee41715dd@gitlab-sidekiq-catchall-v2-5c8bc8b6dc-2zmr8.mail>
From: Jan Beulich <jbeulich@suse.com>
Cc: "community.manager@xenproject.org" <community.manager@xenproject.org>
In-Reply-To: <652f0b6b987b0_2c99ee41715dd@gitlab-sidekiq-catchall-v2-5c8bc8b6dc-2zmr8.mail>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0100.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:cb::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_|VI1PR04MB7021:EE_
X-MS-Office365-Filtering-Correlation-Id: 8d239003-11a0-44e1-609a-08dbcfa7d27c
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	ruaaYUUwD2GwKZSG5HOjwyKamx4UC/ZYs2VTA0YXXcAfhref5YS7eTl0xdIwTZS0jSEY8leWdPxJ2UccmS6vynnm+ys33SRz2XZo06Szdj6WORV5Cwl7jjH+ZNdcVvuimTPXURhv4l8P7YlBHjLR6dLUjRJe7c91OtTpDq/0OxQatRN+9Sva3q232cFbCKe/gZKnvBUNqCKR/w2gPQun6Qee5K6O8lv1k1+Q9KBTJ2nkEAOdGOO8oBSP5y0PstCU62Y3wwjKPd9b9HBgwidC38ujMieIKdz5uQUWnVmYnXxjT7ekVXU/1AExWwrUZEbPe/ZhD3gIQGCDQwoGNJJJNaR/S3vLL7PVIt9CTNeG1hw5+tK+M68Gder6A/WDdDh0y3sy6r9kMBuOIp4CQtcCwK9U7nPFXPi+W8OXeNsc0fpzGVx6quXeM6QQD4MLZZ07IIPhs7HiJs6U5afJNPbWrSHKkTFo31fD3Z9LK68o3xw+yQfPE1DrTsBmfSLa2GEDQfyqWylJqrXE3z8D6akZ+MURYE3oHmpuSkOypyZQbYuHptz42OPV8jExDKu1CyGKVxMNbBlr7hJePAHZsq7GXTpd9P4CfUDSzx3p2HwWgsXXBdqTmqQ46X77VYp3urWW+RVBUP+JLGtJANSox5PAiw==
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)(230922051799003)(64100799003)(1800799009)(451199024)(186009)(8676002)(66946007)(31696002)(66476007)(66556008)(6512007)(41300700001)(110136005)(6506007)(86362001)(53546011)(966005)(478600001)(6486002)(316002)(4326008)(8936002)(36756003)(5660300002)(2906002)(2616005)(26005)(38100700002)(83380400001)(31686004)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?ckhsUllGU0NkSS81Qi8zbG0zSEZLdnZjN0FSdE83VkErK2xWNXIwWTRLMDlW?=
 =?utf-8?B?NzZEN08ySkdUNVFqY25YWVRnb0RsS0FUWDFMcXRHVytSUmRRRGZKRFBPVE1l?=
 =?utf-8?B?L2JLbHE3MWgwelJybVdQZXV4UFZDcTh5YWF2ZkFXZjhJZWs3N2VXTjY3Rmt0?=
 =?utf-8?B?ZDhUVzlsZHB4QVZPeWFkcml3eHAwaURRYjFUSWt5TmtMYUZEOGk1RlZPSzdO?=
 =?utf-8?B?Z1NqQjNYRDc3RGhZREw2QjNWbERGU085Z1JvbW5QL04wWTN5UFg3K09uTFFN?=
 =?utf-8?B?M0Ivb0EyV0JDUXBacU5wbnRjYzNzZVVpRWZjVDZtRmdrb3gxNERGdmF3eWhB?=
 =?utf-8?B?L3VJdVZiYmJpZGZSZUhLZEFGOVk3QndqOENDNGgxYmQ3OTAxZkdwT0FDd0Vn?=
 =?utf-8?B?b1dmaEZKUnZ6TTJuSUlyNFM4dFZvcnJycWY0cGp3QkVYdmNwbE1jMUNzNm5N?=
 =?utf-8?B?Uml6THhUbWVXRyttTEpFdlpnclFrWjd0Y2xvVHFma1VzN3Y2cHQxVnpoQ0k2?=
 =?utf-8?B?NVlZUFlTSzdpclBmbkNWUVlXRHRrUkJ3a0dUMnVNSkpJK2w2d1QzYTg3Yldy?=
 =?utf-8?B?eFQ3bjJmUEdXWEg4d25iblM4RnpYQlA5NS82YnVRYU5USjJSZzJDbzFrSTlB?=
 =?utf-8?B?anZjUm5QM0J2TzhHRkxad0FTd0Z2SWoyN1lrYXpqWFFpdjJlZGtkeTFhY0RS?=
 =?utf-8?B?cnM1RDhYUlpIQk5KZE5PdzRTQVNHZnhiUE5LbjJpOFJEZ05nbmdMK0JFOGpt?=
 =?utf-8?B?NHZzc243L05QWVdaYk5QQXZnQXpZR1hpQjBlR0FrbFVRQnRZVTZWRXF0OXpi?=
 =?utf-8?B?UXhOL2ZLbTgxT0k5Z2pEdlpYcDhuYUdvWFV4UnJUS284NUo4cXhiaENncWE0?=
 =?utf-8?B?NkdmQnRYMG9pSktkODdXZXRBV1pNMXhmcHh2Nzg0bUVLNGFjMDE1enFUcTc4?=
 =?utf-8?B?dU1GaVF3ci9oUHlKeHZMM2k0WEdab0hPMXpBR05YRmtmdzNMUDc4NU9wc3hV?=
 =?utf-8?B?N1JaZTVCcnZNUndJaXNjNW5yOGFweUpzZ2xvY2ltbTV5c1B3S2poeWdONTV5?=
 =?utf-8?B?bXZsRk4zVTUxV1p1eElDMDc0OGVaVkFSSGRUbUg1V0RrKzFLd2VXQVQ0MDF5?=
 =?utf-8?B?dHBGUkdIQlRoOXZCNFU4dlo4aGZ2RkplUENJR2diTkVGbmREdmliYTRETzFr?=
 =?utf-8?B?RUdZbDU0TTd5M0pJVXBMTVVRSXdFN2ZtL0h2UHBoL0RxS0RaOUJTd0s4THlG?=
 =?utf-8?B?ZjYvbXZaZXY4K2MweHBPN1doRnNsR3Rzclh6VFNWRDgxV2c3NG5wcDVaWFdY?=
 =?utf-8?B?QWMyakNjN29WRGc2WXZVK1NHNHRaSm1vVVNubHVMeGxjUVhzM3J5STBqUlRM?=
 =?utf-8?B?WjcxYXNNd1R1L2NYZk1kTmpQblJyTm9vVjJodjJMYi9BRFZGOFB1VG9MaWlF?=
 =?utf-8?B?YUVyWlg2c0tQRytmOTdadityQXB2UHBYVXhuQUZ1QkR5L081dmJSU2J4SXJM?=
 =?utf-8?B?cGhUSnQ0RGVDK1hsVHlSaWJMait4Zml5TjgzRE1qK2d2Wm1HOGt2TjBtNU9T?=
 =?utf-8?B?cjg3Q0wrMVp1LytMbDBsSFhXbitwSUpGdjlzRGs4WFBKblJIUFlBL2pvZk5M?=
 =?utf-8?B?bTR2UXJOQnRXUDBPZzVtYi9Xcm1TenB1VHNzWjhDd0QzN3lMY3JmZStrTDN3?=
 =?utf-8?B?L0dhOEZuZ04zNXNTbW81MjRqVTNHalUvM3IvaC8xZXlndExtOG9vY2J4NkZS?=
 =?utf-8?B?YVp4M1RIazRhMkx1WVFDa01pOTRqZzZCeUxtY2xmb2tzWDJHR0ZNclRjbGdU?=
 =?utf-8?B?d3k1RzNvNWdoVzRkWjR0MFVFMXBTWEZpTCtNZXZGUkNSMWQ0OTRXYTBpSHdT?=
 =?utf-8?B?L3JYTlhoRWZWVVUyU2ZYMkkyMi83MHZXT1kvZG44RlFzdDdYOE1NMDlvR01n?=
 =?utf-8?B?aEtsdE9zRnVtYnlQcXZiZ0t2ZWN0Y0c2OGxpQThaa2ljcmpqTEVjSksybXNQ?=
 =?utf-8?B?cUVlODFhTE5vd1VkQ1RtK0lDaHdRN1BoUUpIcXYxKzlHYkhRbTVqNTFVcUwv?=
 =?utf-8?B?REdnRkdHdXE1Ymt4Ri83K0E4cWJOUTBaMjI2YUM4TmFIam9FMFBTeWR1cDRT?=
 =?utf-8?Q?/NoQSad1ul8FkDKrC43vMOEiQ?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 8d239003-11a0-44e1-609a-08dbcfa7d27c
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Oct 2023 06:59:50.2268
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: hjtBzxBtXLWwpOJwA04V6CZq+Ztncrwcudjl6ujRItT5PV1Hy+S73vpFDhkXMDz2yC8mfNmUUTDKCydijCEAzQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR04MB7021

On 18.10.2023 00:32, GitLab wrote:
> 
> 
> Pipeline #1040204203 has failed!
> 
> Project: xen ( https://gitlab.com/xen-project/xen )
> Branch: staging ( https://gitlab.com/xen-project/xen/-/commits/staging )
> 
> Commit: f51c9238 ( https://gitlab.com/xen-project/xen/-/commit/f51c92383b8dc76233481e2814aa2e905fb9b501 )
> Commit Message: xen/arm: Check return code from recursive calls...
> Commit Author: Michal Orzel ( https://gitlab.com/orzelmichal )
> Committed by: Stefano Stabellini
> 
> 
> Pipeline #1040204203 ( https://gitlab.com/xen-project/xen/-/pipelines/1040204203 ) triggered by Ganis ( https://gitlab.com/ganis )
> had 16 failed jobs.
> 
> Job #5314335376 ( https://gitlab.com/xen-project/xen/-/jobs/5314335376/raw )
> 
> Stage: build
> Name: alpine-3.18-clang
> Job #5314335405 ( https://gitlab.com/xen-project/xen/-/jobs/5314335405/raw )
> 
> Stage: build
> Name: debian-bookworm-clang
> Job #5314335460 ( https://gitlab.com/xen-project/xen/-/jobs/5314335460/raw )
> 
> Stage: build
> Name: ubuntu-focal-gcc-debug
> Job #5314335478 ( https://gitlab.com/xen-project/xen/-/jobs/5314335478/raw )
> 
> Stage: build
> Name: opensuse-tumbleweed-clang-debug
> Job #5314335485 ( https://gitlab.com/xen-project/xen/-/jobs/5314335485/raw )
> 
> Stage: build
> Name: opensuse-tumbleweed-gcc-debug
> Job #5314335481 ( https://gitlab.com/xen-project/xen/-/jobs/5314335481/raw )
> 
> Stage: build
> Name: opensuse-tumbleweed-gcc
> Job #5314335458 ( https://gitlab.com/xen-project/xen/-/jobs/5314335458/raw )
> 
> Stage: build
> Name: ubuntu-focal-gcc
> Job #5314335431 ( https://gitlab.com/xen-project/xen/-/jobs/5314335431/raw )
> 
> Stage: build
> Name: fedora-gcc

Picking this as example:

../qemu-xen-dir-remote/io/channel-tls.c:510:1: fatal error: error writing to /tmp/cce3v8eA.s: No space left on device

I'm afraid I have to ask to delay plans to further switch processes to go
through gitlab until basic problems like (apparently) regular cleanup to
provision enough disk space haven't been sorted.

Furthermore I'd also like to ask that getting these reports sent to
xen-devel@ should be a prereq to further leveraging gitlab. Them being
sent to committers@ instead was meant to be a temporary measure only.

As an unrelated question: Do we have any control over the formatting of
these reporting mails? The grouping of items (i.e. the placement of the
apparently but not really separating blank lines) has been broken
forever, resulting in at least me always needing to think twice which
link belongs to which job.

Jan

> Job #5314335242 ( https://gitlab.com/xen-project/xen/-/jobs/5314335242/raw )
> 
> Stage: analyze
> Name: eclair-ARM64
> Job #5314335390 ( https://gitlab.com/xen-project/xen/-/jobs/5314335390/raw )
> 
> Stage: build
> Name: debian-stretch-gcc
> Job #5314335391 ( https://gitlab.com/xen-project/xen/-/jobs/5314335391/raw )
> 
> Stage: build
> Name: debian-stretch-clang
> Job #5314335454 ( https://gitlab.com/xen-project/xen/-/jobs/5314335454/raw )
> 
> Stage: build
> Name: ubuntu-bionic-gcc
> Job #5314335461 ( https://gitlab.com/xen-project/xen/-/jobs/5314335461/raw )
> 
> Stage: build
> Name: ubuntu-focal-clang
> Job #5314335470 ( https://gitlab.com/xen-project/xen/-/jobs/5314335470/raw )
> 
> Stage: build
> Name: opensuse-leap-gcc
> Job #5314335506 ( https://gitlab.com/xen-project/xen/-/jobs/5314335506/raw )
> 
> Stage: test
> Name: adl-pci-pv-x86-64-gcc-debug
> Job #5314335466 ( https://gitlab.com/xen-project/xen/-/jobs/5314335466/raw )
> 
> Stage: build
> Name: opensuse-leap-clang
> 



From xen-devel-bounces@lists.xenproject.org Wed Oct 18 07:07:22 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 07:07:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618421.962048 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qt0eD-0002BG-Eh; Wed, 18 Oct 2023 07:07:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618421.962048; Wed, 18 Oct 2023 07: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 1qt0eD-0002B9-Bo; Wed, 18 Oct 2023 07:07:17 +0000
Received: by outflank-mailman (input) for mailman id 618421;
 Wed, 18 Oct 2023 07:07: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=EezS=GA=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qt0eC-0002B3-5U
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 07:07:16 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur04on2041.outbound.protection.outlook.com [40.107.7.41])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id f77ab66b-6d84-11ee-98d4-6d05b1d4d9a1;
 Wed, 18 Oct 2023 09:07:15 +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.6907.21; Wed, 18 Oct
 2023 07:06:45 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%7]) with mapi id 15.20.6907.022; Wed, 18 Oct 2023
 07:06: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: f77ab66b-6d84-11ee-98d4-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Y+ZWTC6ChlcDy3pbTyPWJ9VtA+uaKdRSsJdS6bJo3VhokhLOV/1JwfSNqjQW5bs/vX40FtReBBrS4iYN/mzwr1SHdbZzVWuAAae3ofiB/3COiN95BsLxV4tK1Obxgatkfx8jZGzwNzmxEx8ZDvHVG9qrbt0NfIg/+sLtlCZ2go8GJTFTN+bKkvKSg4R3r31sz5NfkUClZMWqs7it5vtS7kM5Cldyo1mfLuahdXvTLyd7ZG5UVGTyN1T8103owu9QJgQPJD+fP7OwkdKXhMY45iMMzZREkvpUTdyUA2pmEQfzC7ahZIOI8s8iJrOSNjhDUWcW8QbkCkydtNMW0lfuWw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=uKdDwI2hzVwx/kUhrO3TgG3tpZjsIQYiZp1FPIOF9Mg=;
 b=jCRzvl3U7Tjq/79XC0X0yiP1kghSc4DTBn77USB4wehkzG94KaYXQf4X9IAUlvtv7HNTluqa73uio9M+RN4sZjALqZSnRnLK1P0l4ncFMblTja/j9K43+pygGtXYupfobTcSvAOvPNrrPZiCp72HF0PTespuDIqgmwCJFTFP/h4gYcHphRJS1Orc31I2+G3EH3//vasHqcrbyOZAZQrAi14ggb0TfTQAxf5fX2QYCs/HEjmW3L8vZnZz85/xH1gs4uz0XsiVuznHU3lBaYoQ+kM2Smm5aO8mWAR2kykqD/mYO3F9Btczjx1cHyVG9wPi2dv1QxyoRCfW+dKNVvkLZg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=uKdDwI2hzVwx/kUhrO3TgG3tpZjsIQYiZp1FPIOF9Mg=;
 b=GbLOWmbief/idIuv1KQ/Brkrtttt1s7lBCMN8CrBIf/G06sQpKoQmqF52OC5VXM05jmVs41H3RYTeT4Ql+KKHBUwA/vmv+QexeHxMPbjQNIJATOILGliX4xvHyBMrMJ/gRj5ag93ox+je5wFlWr4PFIvru72IrYkU1ha9sy5ekLUXs4P/dbI1J1cDjI2cFoOo0DxQEepV2fjITGyuDfGgugZY8VF81BH5BgCz/dLasuGe7AeihDqqPDUU8QqKjb/pH5hkyR7j2SGrsOP07n5fCLy53bMQduuN9jMsh4qfchX3OBM3VZQDfPC9ZL3rkACECUkrPK2rHxR/Rvnms29cw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <55f70f98-4a84-401c-f9a4-3cb50ca1418c@suse.com>
Date: Wed, 18 Oct 2023 09:06: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] cxenstored: wait until after reset to notify dom0less
 domains
Content-Language: en-US
To: Stefano Stabellini <sstabellini@kernel.org>,
 George Dunlap <george.dunlap@cloud.com>
Cc: Stefano Stabellini <stefano.stabellini@amd.com>, jgross@suse.com,
 julien@xen.org, wl@xen.org, xen-devel@lists.xenproject.org
References: <20231013230624.1007969-1-sstabellini@kernel.org>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20231013230624.1007969-1-sstabellini@kernel.org>
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_|DBAPR04MB7416:EE_
X-MS-Office365-Filtering-Correlation-Id: 473cd3ba-7ed6-468a-a807-08dbcfa8c9f1
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:
	LQSF9LkUh23Eg6yYTHujH6L0rNIVtWbuG/ZVnYynZwas7J9sULrsVAqsGHcql9oOzRh27YX/xfAo8XjW8vWNfrbGfRBtXDBPJ9awwDEoLbbWaFANaptqg1Ip6QgQKqM3xrrWcw3SXMpkqkskvGgYkYledXHk1NvDZp2AqaPgSdy1T+7U9wTdD2/SBiiTXAf49cpzXTMg01rZUxSWm+CUQ8q7fnujk9IKpEQ086/PeEKqpjG3UrwQhWDob2jPnSthhew9hEZAvoatRkA55aIjKuxxEigdTh2kHDBzfiyNCMDcVZYvgPkCCpMKGXNeFBzsrdCxjfdP8Cda4vBpCSHi4Mqsd/c2KT4VezWYaQIf/UsNz5Zf8cN7U9hqClJlWs1/HEfipw+yw4VkPXpWOv5ZxejbzE7lYJ8NxMtYRrr1Np7vDU77s7TKUuFQl1yrBVmV9rlNjVGKvOnNIMvgHpIVCUSAaG/v4hpXmzGO8bp7FJiu1XHNbH7ItqQJu/lz941xNOgep1rbkKa605edkZS+VW0lggxoeemSerGPIxfOD9pGF1WxnThVlLP7dDy9nCtiUrtH66fmILsFUzOtbmvZNYDekBl2B6EvivESebitNtdcjWJ+tfptpQHLn53Ji84mQYYrnXOBTlGTRiRcIDJ25iz15OYKYOW43vLsuEUCK5Y=
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)(396003)(39860400002)(230922051799003)(186009)(451199024)(64100799003)(1800799009)(316002)(66476007)(66946007)(66556008)(4326008)(41300700001)(8936002)(2906002)(5660300002)(6666004)(6506007)(6486002)(478600001)(8676002)(53546011)(6512007)(110136005)(31696002)(36756003)(38100700002)(86362001)(31686004)(2616005)(83380400001)(26005)(32563001)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?VnBIM3FRVVgvNTlJSzd4aTZxb0wxbDF5ZWI3SzduVkp6MktNdVJ6WG95YnUx?=
 =?utf-8?B?K1d0ZGk4MEViNmJEd2lDcEhVNW5hNHA5K2pHcGJMQmMrWnZ1NDNtdDBFeE9F?=
 =?utf-8?B?b3krRGozRkFUUkM2ZE9pd3NENGVMbzR6Q0tkcy9sRjd4UG9HZ3l2ZmppOHBS?=
 =?utf-8?B?ZHZEdmkzYXRzNTNRTG9GQjdJSFRsNFdSdFdjNHRWK3JZakczb20yakFLM1V0?=
 =?utf-8?B?eTVWYURaSmdMNk1UeDZySE5sN3pod0tCdnFlYjA1NG5LaUJvS3creDM3T3JM?=
 =?utf-8?B?VVIwbXVtRDJ1VmcxaFZwbGR4NlFnWjZ1VnBoUWt2UUdZVWxzN2IyaTlpbGRL?=
 =?utf-8?B?UHpBclBqWjlPVnZtcC95NENxQlcyVXl3K1p3TlpFenJjV00ycGE0Y2FiTTAx?=
 =?utf-8?B?YkwxWTJESThGWUxsY1FrTy85cWI5QXlUSHZiZjJES2dnQWVEeGtOVUdLUGd4?=
 =?utf-8?B?UGZDbGpCelhyMlNwVEZSMkEwb2RJWUtIcjBraERaSkpONFlteHY0aGJ5SHc3?=
 =?utf-8?B?TEpBR2FXZm45bGxlQVZ3ZjRkOEt1eWpYbTIxTDAvOGxRWXF3cHozelUvNzM5?=
 =?utf-8?B?aHZqRWRRR0tENnFOcU9BbndPYnp6Wm4wbXlMaHRoOUhNTGxaSXRaYm1ONHlS?=
 =?utf-8?B?SzFENEZONWY1dmlpTnQwZDhkRlcxRTBpWUo1QTUxN0Mvbzl1Y1ZnS2J6OGh1?=
 =?utf-8?B?Qms3cTJlYU5pbTlMb2pLZzdpWEZsRjJUWHljNXhzelhxbzVJR3NwSW92eUlm?=
 =?utf-8?B?V1VTWkI5clQ3cjdFa004SzFmMFhkM3k3dlpyMS90TE5vWmVHdHd6VFVvOEY4?=
 =?utf-8?B?ZTdQcmQxR211L3Y2dDIyRFBpS3JMY0M2cVZZaGtVOGNuNGpUbjcrc0lObjIz?=
 =?utf-8?B?TkNqTitVSHNudnJ0bGRBZWJacVU2a2xuc205cTU0bnR5RzE1cG1PR3A4N0FM?=
 =?utf-8?B?WGhGNEM2MXBVNzkyOXNxa0tSaEFRZ01pS1dwdmJiMzlGZlNkNXMzT3c1Tm5Z?=
 =?utf-8?B?ZTBNcnJQbWJyclFDOENJK3JNdURLRUllb3p3ODdwS3pwUW50dlBhWkxRZWJj?=
 =?utf-8?B?VnV3dHRiL2dJR1B0RE5reUI0ekNaQkpaQVBoYmNQSE8rNEk1Y3piMVhtM2h1?=
 =?utf-8?B?Y2FVNWl5dnR4TEYrNDU4OFlibjNhQiswNjFHUndiTVNOSWxoMThUS2V0WFph?=
 =?utf-8?B?WnZOMnJtWDRkUk9yWUpxOTRsYUJUWkt1QkR5TC90Yi83a3Q3OTNHMUdYZ2Rq?=
 =?utf-8?B?UlVOK2x4ODAzQzU2dENsbHJvZ00ySDFaZUIwZisxNGxQZS9jRkttNDgrdno2?=
 =?utf-8?B?RjMxNkptakNVdmVzby95TzRLRmIyQTVjQ1ZKUzVNRmI3NXY3WmZNa0ptWWY4?=
 =?utf-8?B?WlJqNkV0TkdrWDFJL2k3L3dUbEVPQzZGVWpYQzdVd21hVDJOODVkcWxyTjVh?=
 =?utf-8?B?cUNSbXFSRzRMUStkV0IzM0xhTVhEMXhlOGhxTWR2dGRMOVcvcjM4MVArM1dJ?=
 =?utf-8?B?a0xuV3p1dVJkZVU3U0JzOG1peWVtU1ZNQ0pBdXk1Q2xCY2U3cEFldHZIaFFN?=
 =?utf-8?B?ZmpIbWl1NHpzUHUxcUpwcDZsNlBnZ3FpR2g4RmNLbTlpc0ZCdW1NdTZJTmxR?=
 =?utf-8?B?WHpDZXZIV1VhSjZ2d1dWM1pDRm0xZW1jNkk0bkEwV0NEdDNURmFxVVZYdXdG?=
 =?utf-8?B?OVFPdmVhdWhEaGNoYU5UeXlpLzhBcXBHOGNHOXFZdEdqYjQrb1RZRURIR1FL?=
 =?utf-8?B?S3M4WFRDbU85elVpY251TzZRQ1FwYnhsc0hUVmQyQUh2cGJtYU1QMFBUMExw?=
 =?utf-8?B?MVRJNC90a0duVkRKZVVCYmJyUzZkRUhnSEFqbFNRZGtBUVk2V3lsU2ZEVWls?=
 =?utf-8?B?aUFtWWU4OVBIcTNxS2pvcjFITXhSQzRpYzVSemVmSU9WN0VsWUhVN3VOYzRm?=
 =?utf-8?B?RHl1SWsrcGYzVnl4aXdiN291S2lITXByYXNlUjZ4ZzRRQWxTQlFRZ0pXM3hW?=
 =?utf-8?B?NWVOSU9xMVFJUXJpcFg2WW5JTWV5RjJlcGhQRm1wRzhBWm9VeEZ2ckpkanFR?=
 =?utf-8?B?TGV4VFUrZ1A0Si9YcW8raGFtNG9yY04xY0Q3M3NIYUQ1WW5BcXNKQWNSSTNP?=
 =?utf-8?Q?u92Qp8Xf2s62+uFIpEURYTdSv?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 473cd3ba-7ed6-468a-a807-08dbcfa8c9f1
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Oct 2023 07:06:45.6974
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 2fnQ29/Xe+dXzhen5LM/8vgmQYxTU0I/vCmPV1aPF/TUrI8Emky/cExUqeEM08A8XSevni4yCCeWPUrVbqiS0g==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBAPR04MB7416

On 14.10.2023 01:06, Stefano Stabellini wrote:
> From: George Dunlap <george.dunlap@cloud.com>
> 
> Commit fc2b57c9a ("xenstored: send an evtchn notification on
> introduce_domain") introduced the sending of an event channel to the
> guest when first introduced, so that dom0less domains waiting for the
> connection would know that xenstore was ready to use.
> 
> Unfortunately, it was introduced in introduce_domain(), which 1) is
> called by other functions, where such functionality is unneeded, and
> 2) after the main XS_INTRODUCE call, calls domain_conn_reset().  This
> introduces a race condition, whereby if xenstored is delayed, a domain
> can wake up, send messages to the buffer, only to have them deleted by
> xenstore before finishing its processing of the XS_INTRODUCE message.
> 
> Move the connect-and-notfy call into do_introduce() instead, after the
> domain_conn_rest(); predicated on the state being in the
> XENSTORE_RECONNECT state.
> 
> (We don't need to check for "restoring", since that value is always
> passed as "false" from do_domain_introduce()).
> 
> Also take the opportunity to add a missing wmb barrier after resetting
> the indexes of the ring in domain_conn_reset.
> 
> This change will also remove an extra event channel notification for
> dom0 (because the notification is now done by do_introduce which is not
> called for dom0.) The extra dom0 event channel notification was only
> introduced by fc2b57c9a and was never present before. It is not needed
> because dom0 is the one to tell xenstored the connection parameters, so
> dom0 has to know that the ring page is setup correctly by the time
> xenstored starts looking at it. It is dom0 that performs the ring page
> init.
> 
> Signed-off-by: George Dunlap <george.dunlap@cloud.com>
> Signed-off-by: Stefano Stabellini <stefano.stabellini@amd.com>

Should this have had a Fixes: tag thus marking it to pick up for
backport?

Jan


From xen-devel-bounces@lists.xenproject.org Wed Oct 18 07:33:02 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 07:33:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618426.962058 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qt12z-0006r3-EG; Wed, 18 Oct 2023 07:32:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618426.962058; Wed, 18 Oct 2023 07:32: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 1qt12z-0006qw-B4; Wed, 18 Oct 2023 07:32:53 +0000
Received: by outflank-mailman (input) for mailman id 618426;
 Wed, 18 Oct 2023 07:32: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=s+j9=GA=redhat.com=imammedo@srs-se1.protection.inumbo.net>)
 id 1qt12x-0006qq-IW
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 07:32:51 +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 89dfa73c-6d88-11ee-98d4-6d05b1d4d9a1;
 Wed, 18 Oct 2023 09:32:50 +0200 (CEST)
Received: from mail-qv1-f69.google.com (mail-qv1-f69.google.com
 [209.85.219.69]) by relay.mimecast.com with ESMTP with STARTTLS
 (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id
 us-mta-582-3w0JA6f4Nrm9NDEgjEhF5Q-1; Wed, 18 Oct 2023 03:32:45 -0400
Received: by mail-qv1-f69.google.com with SMTP id
 6a1803df08f44-66d75988385so11958646d6.2
 for <xen-devel@lists.xenproject.org>; Wed, 18 Oct 2023 00:32:45 -0700 (PDT)
Received: from imammedo.users.ipa.redhat.com (nat-pool-brq-t.redhat.com.
 [213.175.37.10]) by smtp.gmail.com with ESMTPSA id
 qh29-20020a0562144c1d00b0066d1b4ce863sm1166386qvb.31.2023.10.18.00.32.41
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 18 Oct 2023 00:32: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: 89dfa73c-6d88-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
	s=mimecast20190719; t=1697614368;
	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=H9ARuw3ocrq2zuIRYqvsxkWkuBZXz4JrIIs6MzQ7cA8=;
	b=a+V/oXzCMjBbZFhkxP2ewU42nnVWBgzsmWLW9f8tjJK1A6LJLxhwNlSjidEnofrgfDLBeH
	NiHmtysQxZZFLr2WQzR4vqkxot3WPx/8crX3Ai6k4007V9hllu9Jtdo9jH7gJ3YiiVV/ev
	8jBC+ySxEegLp3McgOgf5cM9GmaIfBU=
X-MC-Unique: 3w0JA6f4Nrm9NDEgjEhF5Q-1
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697614365; x=1698219165;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:subject:cc:to:from:date:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=H9ARuw3ocrq2zuIRYqvsxkWkuBZXz4JrIIs6MzQ7cA8=;
        b=BHxzVmgeSiVCIaeWr8SJ5z8wVkr3B189NOYFe8LLH9MSpp5MP/BOJ+iffpoLxsoqdH
         7ADgysJuRRDyaaq/cS8Fs4xG25WE46gihJ1Gk/EUqdTqolUQxFBsMgXel8vI0HhVZqoO
         YIbftrcA2zGbGKFknnNeG2pEBJjSLXX1sMxoBdySMj2jbcNt19STE/k9Jgr98eUCs3Tt
         n6yVDqCcopq5qL//AQJYchl+MyGav2dgW5R3oRZUJ9EVsz8xIwsDK5eBsKv/fxm0hkVv
         4/EAJ1+ogqyEumpq1QLzLn1kEzRqn2Vi2hS3HK1RdXrYF9kfnRL9SEi3akZTQZTPfVYD
         CSvg==
X-Gm-Message-State: AOJu0Yy5fBmq2gxXRh0QFgUUkVyN0MIdcEhAFfX58uNnIbmTu28KIj+b
	Xdmr4nVdDt92caP8MmJvr8exNrDV97qaJHH3vMllYnmSUohjftMs2O7KqkeCpd5p48w2wmAx5PW
	HhVUCgTL+HUcsTenZ6pdF65IV8Sk=
X-Received: by 2002:a05:6214:1c0b:b0:66d:6845:ea2d with SMTP id u11-20020a0562141c0b00b0066d6845ea2dmr5259199qvc.53.1697614365064;
        Wed, 18 Oct 2023 00:32:45 -0700 (PDT)
X-Google-Smtp-Source: AGHT+IHVEqA4xPTiOaWetvvswhtwmlji+EpyS13eyeJ+VOWUsrcyK46S4glHUKGMSbBqRqY7/INBJw==
X-Received: by 2002:a05:6214:1c0b:b0:66d:6845:ea2d with SMTP id u11-20020a0562141c0b00b0066d6845ea2dmr5259182qvc.53.1697614364748;
        Wed, 18 Oct 2023 00:32:44 -0700 (PDT)
Date: Wed, 18 Oct 2023 09:32:39 +0200
From: Igor Mammedov <imammedo@redhat.com>
To: David Woodhouse <dwmw2@infradead.org>
Cc: qemu-devel@nongnu.org, Kevin Wolf <kwolf@redhat.com>, Hanna Reitz
 <hreitz@redhat.com>, Stefano Stabellini <sstabellini@kernel.org>, Anthony
 Perard <anthony.perard@citrix.com>, Paul Durrant <paul@xen.org>,
 =?UTF-8?B?TWFyYy1BbmRyw6k=?= Lureau <marcandre.lureau@redhat.com>, Paolo
 Bonzini <pbonzini@redhat.com>, "Michael S. Tsirkin" <mst@redhat.com>,
 Marcel Apfelbaum <marcel.apfelbaum@gmail.com>, Richard Henderson
 <richard.henderson@linaro.org>, Eduardo Habkost <eduardo@habkost.net>,
 Marcelo Tosatti <mtosatti@redhat.com>, qemu-block@nongnu.org,
 xen-devel@lists.xenproject.org, kvm@vger.kernel.org
Subject: Re: [PATCH 11/12] hw/xen: automatically assign device index to
 block devices
Message-ID: <20231018093239.3d525fd8@imammedo.users.ipa.redhat.com>
In-Reply-To: <20231016151909.22133-12-dwmw2@infradead.org>
References: <20231016151909.22133-1-dwmw2@infradead.org>
	<20231016151909.22133-12-dwmw2@infradead.org>
X-Mailer: Claws Mail 4.1.1 (GTK 3.24.38; x86_64-redhat-linux-gnu)
MIME-Version: 1.0
X-Mimecast-Spam-Score: 0
X-Mimecast-Originator: redhat.com
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit

On Mon, 16 Oct 2023 16:19:08 +0100
David Woodhouse <dwmw2@infradead.org> wrote:

> From: David Woodhouse <dwmw@amazon.co.uk>
> 

is this index a user (guest) visible?

> There's no need to force the user to assign a vdev. We can automatically
> assign one, starting at xvda and searching until we find the first disk
> name that's unused.
> 
> This means we can now allow '-drive if=xen,file=xxx' to work without an
> explicit separate -driver argument, just like if=virtio.
> 
> Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
> ---
>  blockdev.c           | 15 ++++++++++++---
>  hw/block/xen-block.c | 25 +++++++++++++++++++++++++
>  2 files changed, 37 insertions(+), 3 deletions(-)
> 
> diff --git a/blockdev.c b/blockdev.c
> index 325b7a3bef..9dec4c9c74 100644
> --- a/blockdev.c
> +++ b/blockdev.c
> @@ -255,13 +255,13 @@ void drive_check_orphaned(void)
>           * Ignore default drives, because we create certain default
>           * drives unconditionally, then leave them unclaimed.  Not the
>           * users fault.
> -         * Ignore IF_VIRTIO, because it gets desugared into -device,
> -         * so we can leave failing to -device.
> +         * Ignore IF_VIRTIO or IF_XEN, because it gets desugared into
> +         * -device, so we can leave failing to -device.
>           * Ignore IF_NONE, because leaving unclaimed IF_NONE remains
>           * available for device_add is a feature.
>           */
>          if (dinfo->is_default || dinfo->type == IF_VIRTIO
> -            || dinfo->type == IF_NONE) {
> +            || dinfo->type == IF_XEN || dinfo->type == IF_NONE) {
>              continue;
>          }
>          if (!blk_get_attached_dev(blk)) {
> @@ -977,6 +977,15 @@ DriveInfo *drive_new(QemuOpts *all_opts, BlockInterfaceType block_default_type,
>          qemu_opt_set(devopts, "driver", "virtio-blk", &error_abort);
>          qemu_opt_set(devopts, "drive", qdict_get_str(bs_opts, "id"),
>                       &error_abort);
> +    } else if (type == IF_XEN) {
> +        QemuOpts *devopts;
> +        devopts = qemu_opts_create(qemu_find_opts("device"), NULL, 0,
> +                                   &error_abort);
> +        qemu_opt_set(devopts, "driver",
> +                     (media == MEDIA_CDROM) ? "xen-cdrom" : "xen-disk",
> +                     &error_abort);
> +        qemu_opt_set(devopts, "drive", qdict_get_str(bs_opts, "id"),
> +                     &error_abort);
>      }
>  
>      filename = qemu_opt_get(legacy_opts, "file");
> diff --git a/hw/block/xen-block.c b/hw/block/xen-block.c
> index 9262338535..20fa783cbe 100644
> --- a/hw/block/xen-block.c
> +++ b/hw/block/xen-block.c
> @@ -34,6 +34,31 @@ static char *xen_block_get_name(XenDevice *xendev, Error **errp)
>      XenBlockDevice *blockdev = XEN_BLOCK_DEVICE(xendev);
>      XenBlockVdev *vdev = &blockdev->props.vdev;
>  
> +    if (blockdev->props.vdev.type == XEN_BLOCK_VDEV_TYPE_INVALID) {
> +        char name[11];
> +        int disk = 0;
> +        unsigned long idx;
> +
> +        /* Find an unoccupied device name */
> +        while (disk < (1 << 20)) {
> +            if (disk < (1 << 4)) {
> +                idx = (202 << 8) | (disk << 4);
> +            } else {
> +                idx = (1 << 28) | (disk << 8);
> +            }
> +            snprintf(name, sizeof(name), "%lu", idx);
> +            if (!xen_backend_exists("qdisk", name)) {
> +                vdev->type = XEN_BLOCK_VDEV_TYPE_XVD;
> +                vdev->partition = 0;
> +                vdev->disk = disk;
> +                vdev->number = idx;
> +                return g_strdup(name);
> +            }
> +            disk++;
> +        }
> +        error_setg(errp, "cannot find device vdev for block device");
> +        return NULL;
> +    }
>      return g_strdup_printf("%lu", vdev->number);
>  }
>  



From xen-devel-bounces@lists.xenproject.org Wed Oct 18 07:47:55 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 07:47:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618430.962067 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qt1HG-0001Hq-LB; Wed, 18 Oct 2023 07:47:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618430.962067; Wed, 18 Oct 2023 07: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 1qt1HG-0001Hj-Ih; Wed, 18 Oct 2023 07:47:38 +0000
Received: by outflank-mailman (input) for mailman id 618430;
 Wed, 18 Oct 2023 07:47: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=BVsY=GA=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qt1HF-0001Hd-F4
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 07:47:37 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 99dddf5f-6d8a-11ee-9b0e-b553b5be7939;
 Wed, 18 Oct 2023 09:47:35 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id A0FF64EE0738;
 Wed, 18 Oct 2023 09: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: 99dddf5f-6d8a-11ee-9b0e-b553b5be7939
MIME-Version: 1.0
Date: Wed, 18 Oct 2023 09:47: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.cooper3@citrix.com, roger.pau@citrix.com, 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>,
 xen-devel@lists.xenproject.org
Subject: Re: [XEN PATCH v2 1/7] xen: add declarations for variables where
 needed
In-Reply-To: <e5e8e3cb-056b-063d-8f6f-d3f68bdf1750@suse.com>
References: <cover.1696833629.git.nicola.vetrini@bugseng.com>
 <002d58b1d15619a8c4b2ec6c2b5f20960ed0a428.1696833629.git.nicola.vetrini@bugseng.com>
 <2023f16b-46fb-2a19-9620-7872b3029b5f@suse.com>
 <f89fc0b2814cc4b84abc431c0355b348@bugseng.com>
 <e5e8e3cb-056b-063d-8f6f-d3f68bdf1750@suse.com>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <41d5f7fc3a31e9ce510983aa1b237ab1@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 17/10/2023 08:46, Jan Beulich wrote:
> On 16.10.2023 19:05, Nicola Vetrini wrote:
>> On 16/10/2023 16:50, Jan Beulich wrote:
>>> On 09.10.2023 08:54, Nicola Vetrini wrote:
>>>> --- a/xen/arch/x86/include/asm/compat.h
>>>> +++ b/xen/arch/x86/include/asm/compat.h
>>>> @@ -13,6 +13,7 @@ typedef unsigned long full_ptr_t;
>>>> 
>>>>  struct domain;
>>>>  #ifdef CONFIG_PV32
>>>> +extern unsigned long cr4_pv32_mask;
>>> 
>>> Why is this needed? Didn't we say declarations aren't needed when the
>>> only consumer is assembly code? (I also wonder how this header is any
>>> more "appropriate" - see the changelog entry - than about any other
>>> one.)
>>> 
>> 
>> It was pointed out to me [1] that compat.h might be more appropriate
>> than setup.h
>> (probably because the asm code referencing it is under x86_64/compat).
> 
> Hmm. I agree setup.h isn't appropriate.
> 
>> Further, while it's true that this variable is used in asm, it's also
>> used in x86/setup.c, hence
>> the need for a declaration.
> 
> But that's the file where the variable is defined. IOW no risk of
> definition and (non-existing) declaration going out of sync.
> 

This is an aspect specific to this variable, that unfortunately the rule 
does not
capture. I'll deviate this in the next version of this series.

>>>> --- a/xen/arch/x86/include/asm/setup.h
>>>> +++ b/xen/arch/x86/include/asm/setup.h
>>>> @@ -13,6 +13,7 @@ extern char __2M_rwdata_start[], 
>>>> __2M_rwdata_end[];
>>>>  extern unsigned long xenheap_initial_phys_start;
>>>>  extern uint64_t boot_tsc_stamp;
>>>> 
>>>> +extern char cpu0_stack[STACK_SIZE];
>>> 
>>> Same question here.
>>> 
>> 
>> This one is a bit more nuanced (I wouldn't oppose deviating this), but
>> there is indeed one use.
> 
> Still same here then.
> 

Same as above; it can be argued that there's no risk of anything going 
out of sync.

>>>> --- a/xen/common/symbols.c
>>>> +++ b/xen/common/symbols.c
>>>> @@ -21,23 +21,6 @@
>>>>  #include <xen/guest_access.h>
>>>>  #include <xen/errno.h>
>>>> 
>>>> -#ifdef SYMBOLS_ORIGIN
>>>> -extern const unsigned int symbols_offsets[];
>>>> -#define symbols_address(n) (SYMBOLS_ORIGIN + symbols_offsets[n])
>>>> -#else
>>>> -extern const unsigned long symbols_addresses[];
>>>> -#define symbols_address(n) symbols_addresses[n]
>>>> -#endif
>>>> -extern const unsigned int symbols_num_syms;
>>>> -extern const u8 symbols_names[];
>>>> -
>>>> -extern const struct symbol_offset symbols_sorted_offsets[];
>>>> -
>>>> -extern const u8 symbols_token_table[];
>>>> -extern const u16 symbols_token_index[];
>>>> -
>>>> -extern const unsigned int symbols_markers[];
>>>> -
>>>>  /* expand a compressed symbol data into the resulting uncompressed
>>>> string,
>>>>     given the offset to where the symbol is in the compressed stream
>>>> */
>>>>  static unsigned int symbols_expand_symbol(unsigned int off, char
>>>> *result)
>>>> --- a/xen/include/xen/symbols.h
>>>> +++ b/xen/include/xen/symbols.h
>>>> @@ -33,4 +33,22 @@ struct symbol_offset {
>>>>      uint32_t stream; /* .. in the compressed stream.*/
>>>>      uint32_t addr;   /* .. and in the fixed size address array. */
>>>>  };
>>>> +
>>>> +#ifdef SYMBOLS_ORIGIN
>>>> +extern const unsigned int symbols_offsets[];
>>>> +#define symbols_address(n) (SYMBOLS_ORIGIN + symbols_offsets[n])
>>>> +#else
>>>> +extern const unsigned long symbols_addresses[];
>>>> +#define symbols_address(n) symbols_addresses[n]
>>>> +#endif
>>>> +extern const unsigned int symbols_num_syms;
>>>> +extern const u8 symbols_names[];
>>>> +
>>>> +extern const struct symbol_offset symbols_sorted_offsets[];
>>>> +
>>>> +extern const u8 symbols_token_table[];
>>>> +extern const u16 symbols_token_index[];
>>>> +
>>>> +extern const unsigned int symbols_markers[];
>>>> +
>>>>  #endif /*_XEN_SYMBOLS_H*/
>>> 
>>> This change is even less clear to me: The producer is assembly code,
>>> and the consumer already had appropriate declarations. Why would we
>>> want to increase the scope of their visibility?
>> 
>> The missing decls are about common/symbols-dummy.c. Xen can choose 
>> that
>> this file does
>> not need to conform (to this guideline or any guideline), in which 
>> case
>> this change can be dropped.
> 
> Since symbols-dummy.c isn't used in the final binary, I'd prefer that.
> Otherwise imo a new private header used by just the two files would 
> want
> introducing, to keep exposure limited.
> 
> Jan

Ok

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


From xen-devel-bounces@lists.xenproject.org Wed Oct 18 07:54:39 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 07:54:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618435.962078 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qt1Nn-0003Np-C3; Wed, 18 Oct 2023 07:54:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618435.962078; Wed, 18 Oct 2023 07:54: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 1qt1Nn-0003Ni-8o; Wed, 18 Oct 2023 07:54:23 +0000
Received: by outflank-mailman (input) for mailman id 618435;
 Wed, 18 Oct 2023 07:54: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=EezS=GA=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qt1Nl-0003Nc-Ts
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 07:54:21 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 (mail-am6eur05on2061e.outbound.protection.outlook.com
 [2a01:111:f400:7e1b::61e])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 8ba5a7ef-6d8b-11ee-98d4-6d05b1d4d9a1;
 Wed, 18 Oct 2023 09:54:20 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DB9PR04MB8169.eurprd04.prod.outlook.com (2603:10a6:10:25d::9) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.36; Wed, 18 Oct
 2023 07:54:18 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%7]) with mapi id 15.20.6907.022; Wed, 18 Oct 2023
 07: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: 8ba5a7ef-6d8b-11ee-98d4-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=bmPY7jfNsV6F4feHfrFKQJ8AcY592CshrT+3AD0Ngr9/Xzp6A6kTfSLVP2fZ9fBDqYY53H8hD7NR0k35RV0aeZU6xkVDQvEt2jZm8UBIkSWNnZ3WYhTuA2+7H2rTUWo9xmPu0x2Vx58rHgfwnamlwfZKqZtubjNVJ30GQPYw5jzjsOZ49A0XCih6ar7eD92N0xCwSqbGPXJQoqWjyrbFcSeKMI5QHWLh/Uq3vpNZzilfA34g8c97cgyXbnJofnC3k0H1GW3QBBuO8si9et14XADSVKjO9DguX5nhFvenNPa0RW4X89GF8kFh+0JJ0izBsIRBQLNeaWIVw4T+4ByjYA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=uyg6YN3Zh1a9d4JC5xIfee4oWWmRWWvhCuc2nePrjQA=;
 b=XQMHxAK3oAkx0RuaureRHqwjV5E//RUPobR6n1B+5bQrC9eoIpAlITpQYabedgldjTdmHTZTjB00nSKUGHjg4bxMU9nkzOLDGe7U8vLOeS+0l4nsaIUyCJbIW/s8bnFR8xLT/Z3V6cbAyWFxesVFoNOlckfUkA7fLeQMx52SUSqd0kx/LMRufK/uwGVEe9vUSbPDJF32s560/tZBjU2bLUsXUhXSwfF06IPrI/3845sefsYDNPDMLj+G/bWux/glDW5qXr7Z9lzrlj3MGNvLWmaf9nirJWt2sainE1f/NqsOr91CRqny/4KKtHjJHy+yAXZSIYJmZurwxNFIHt6v5Q==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=uyg6YN3Zh1a9d4JC5xIfee4oWWmRWWvhCuc2nePrjQA=;
 b=z59Unp18YgQ2OKThTFNtMlKaHCjQ30b8iCfZyKfgyCeEiuG3LdwT9S0MIRaDpuK2GvbiBJG1xgOLqfygIRKZ5hNcszEKPP7ltO0orQYdCfPQHJ6V2qAy63K+wnQck0dUk3WkOTLPrlqxI7CMq9iA9nVyXeRjQJFJg/jOuZiP/GNRHSilEc86CuirwQcUL716YcCHwoNH08yt0WDPkkVS5fBUkhw+ut0hqthfD1Li/Pu25m66ExT5PJTKZSb17Oyaz+ZtX5TDHsaASr+QVQec5ytonOjZx8QvtP6dva5rOcuzov27vCkd39oNWHcIstQ4XAF19lwZ16dyD5nUUDicqw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <c6e38ef6-87ef-d1f0-720f-4db6d307f667@suse.com>
Date: Wed, 18 Oct 2023 09:54:15 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH for-4.18] iommu/vt-d: use max supported AGAW
Content-Language: en-US
To: Roger Pau Monne <roger.pau@citrix.com>, Kevin Tian <kevin.tian@intel.com>
Cc: Henry Wang <Henry.Wang@arm.com>, xen-devel@lists.xenproject.org
References: <20231017130943.18111-1-roger.pau@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20231017130943.18111-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0060.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:49::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_|DB9PR04MB8169:EE_
X-MS-Office365-Filtering-Correlation-Id: 01587c13-fda6-4a30-2fa3-08dbcfaf6e0d
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	5dfEy+XtvwylslbUNNzjUwmQLzULsn44FieqAk+DKLg9kMfb48TtEEEUpklLT+1nEFheCRv9LeJt6VpQdHJrMGLVn5LMi/YT7+OLLmCaholBH38jKRZ0kll486cNrIb0wYHCupWDYbwxlyTWWLuSW9rtJJumlST3B9ZHNWhXs4ZjFq69shdC6RuiMu1HklqUPDxhulodny3vcQhSvZcQmrmkoB3/g4MJLnrvGkwxwxvdWgVD2ZaJg812tpXU+tPPw8mORoR8ZnfA/NVSxpNDMdICa1StWmGxWhLYhDG6rKbXy1NRsmeEoEf9BsBkzP/e5zZKiQ/mbq2s3JHzio6qlyr6jCG3HGyL9zVIZe8oTXpALfEpiWHpwwpQDK8IeCU1opqRb9dsPQtXM9PRuvwC5l8vKBpWssDoHVCxFogqHGDfpIebgfvgl/w8oLcMWIlCAjtQrmB6i3bAbQ/S4axSCHXdzejzRi+2H6GzoLYkmcJjMP1IVXVll3YMEofL7NdFL10vkg5loaiRs24fUItlVlWaLDCNrIFzVVo/tOt+6OxFpeo0ECFSExq63H79aklGJmaEgdMDg+Btrflm1n9ynIfBB60HTQC/cL2rzeyoxl+arwZhog58joxoDSSBBbqb2fqPiYZZExktpo+Zdvku+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)(346002)(376002)(39860400002)(136003)(366004)(230922051799003)(451199024)(186009)(1800799009)(64100799003)(8936002)(478600001)(6486002)(110136005)(316002)(66556008)(66476007)(66946007)(86362001)(31696002)(5660300002)(36756003)(41300700001)(2906002)(4326008)(8676002)(38100700002)(26005)(53546011)(31686004)(83380400001)(2616005)(6512007)(6506007)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?KzNJUEtnajlnMUczcysvVEpkTFoxK1hUclQrZXM4RmNiWkRkSVE4ZjZ3RTJu?=
 =?utf-8?B?aUpoM3B6QTlHVG13Vi9wMTdvdVI5elNadzFSNmZEejhYeUYweHNiK1ViUk1W?=
 =?utf-8?B?aEVad1M2TjhkTis4alZHemxIamVzQTcwblF3WFJJOHMyYzJqczZWNS83NS9j?=
 =?utf-8?B?RmRZK1RkT3RsNnNESTY1WERwS1pNa3RvY2pvY1NWelcyTS9FZEhvWGNyaTFW?=
 =?utf-8?B?cXJYWFVQTnROMkp0U0VqZHRva2cxRmJXeGpOWnVxaDhSeHhQWStMVklpa2Er?=
 =?utf-8?B?dzV1Rlh4ZG9pVTZ5N3FOekFrWlEwdVNsRENhUjVWUVdrc2JkVGNKZSt1VVJa?=
 =?utf-8?B?TVl5a3pLdm41ZUlSbGJNVDI0YlQ2T3liRnRrOTJkbnFwbzAySlVjR2F5MWdh?=
 =?utf-8?B?ZzcxYXFseE9XRVcyZ3F0OG1ZbUZPUUVIQms4KzMxZk5ZSHpsa1ZGVnkweHVy?=
 =?utf-8?B?alF6R1hNcm8zL1RUNVlTQlBhS3doQlJ3RmU3MmJmNEFGWjgrbFkvNWkyRHUx?=
 =?utf-8?B?bTRTRlpHOERqb3VTZ0YrNk1XL0RlZ0RhNkRSYm5mZnhNSllYanpDUTBQSG1O?=
 =?utf-8?B?T0Z4ZDJDWjFpZ0FsbWY1VzhrRmYwWWJVaUNWSnU2SVpyRjFObGdVRGhxVXA0?=
 =?utf-8?B?d0JSQS9CNmh1emF3RzdqYkNHeU9vQmNBWGJEMi9TaDgyRTMzcDFvVWdYczRW?=
 =?utf-8?B?ajhVaGFQaHlXOHN3UUsvTzJycmNqYmZYVk9tTTNtaytySEp6ZUcxbFB5R3ZK?=
 =?utf-8?B?MHRZWEFvRXpvOVU4TkYrdmVmSzl4b2NibkFiNlF4cUtpNExMWHJnb3lYUDZO?=
 =?utf-8?B?YXpyc3RrOHFZeUdtT010V2dPNnpkVmlhWkh5ZnN4SzZJYkFLdjk5NTUrNjM0?=
 =?utf-8?B?QkhnT0VpL2NXQXBJVjcvbHovZXZMNVNKazJ4RERkeTlCcXV4bDVLaUYxUUk4?=
 =?utf-8?B?aDJLdWM1OTFTclM0VVF5YThZZUZVS01DRFRtV1U3Z0FOUERMZkJVblBLVVUw?=
 =?utf-8?B?cHMyMWgzYkNqdFdhQ3JDOEpxd1N1a2dhNUJpanFlL3VxRmRwMGE1SkI1TjF5?=
 =?utf-8?B?N1paNDM0TXpEQXU3SCtzRE5Ba08zM05BQ1RoOWlxem1LczVYeHFlbkV6UGRX?=
 =?utf-8?B?aDEwZlBUcGR1REpyb0J4YTNudzN3WGhGdWtBV0VVcWU0V0haWEc2MWtYYjBL?=
 =?utf-8?B?YWp0VWpkRlZ6T2hKc1RWVUgrdEozTjR2a1VBb245bVF0Q0NrbURjZ0xWTWtr?=
 =?utf-8?B?eWdRdWlmQ2ZuWHd3V0EwUjg3bWRDTFUrZGdQUDMyKy84TGVUU1NWbUJMRW9F?=
 =?utf-8?B?MDdmYTBtZTg3d2hWREpjQW5FVmkzS2xYUmlES3dJSDNQYkhnK0dYSGJVR1dK?=
 =?utf-8?B?dWtnUlB0bXhuQnBjeTA0TmdBM05PL25yZVlod0VleWk4aElIbUdqbU1GSVR3?=
 =?utf-8?B?NjNKdTdDWW4wYjY1UU5CbzNhMUJaODhSZXFMZmRqVzVhWFV2WTFCZThYQktQ?=
 =?utf-8?B?b3FBa2x3ZFd0eG1jaVhpMk83cTVpZUx3d0xvcUJpdXRseVl4czdnRzBEcFg1?=
 =?utf-8?B?MVRPS1YvaHg1aS9oaUhjSHJxS3NxQWpsSEVzaVZ2T1I1djRreE43cmdRcXNi?=
 =?utf-8?B?TStoR01KN2FBQkl2eFZUZ1J3RTJRaHdiWmpjZmFPUkp2MEllR2kyQittMXlM?=
 =?utf-8?B?L0ovOEpNNFhmTVRMSzNxUG01WnlTV2ZFWWczdks2dEJ0S2RRRzBZclgraVFX?=
 =?utf-8?B?RzZEQ3VXOElJdTVCLzVaMnZEeVlVSmZ1RFc3TjI0M1FnODIrZkd5SVRGbGxN?=
 =?utf-8?B?eWpOMUp1UTh2cDJxMzlEaHdGZ1FwQWNubGc4NlYxbEtzWkJBOVB0c2dxQTll?=
 =?utf-8?B?N0p6WkNDVXFCRTVvR1luTWF0TGQ3Y1VSSjFkTThtdXBGRUovZ2duNzVZbFhQ?=
 =?utf-8?B?NFVOS3RxWWNsVng1cVplN2RJMHRibXFuTWhPN2pCZWVPZFlTRkpnQitWc2gy?=
 =?utf-8?B?cGRFTVljaHZYODdZUU5qd1RJd2VxQWdsc1lQbmlIbDl0WkpPOXV4ZmtZcXZx?=
 =?utf-8?B?eW5udVBtZ2Q0YzQ1VE5KdXp3eW5EcEZ3ZzVwQjl1b2pHRGQzT284Um90VnZk?=
 =?utf-8?Q?jCg3L4v72QKx4I5gHsdWky22Q?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 01587c13-fda6-4a30-2fa3-08dbcfaf6e0d
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Oct 2023 07:54:17.6976
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: lY+Ck34oRsYmKpt7hh549/iMXFc6e6Y6mBcMqlzxelQzETQ1Qf+/tyEztdR5ecNsY8JBi1btPOjjRSQkAgge1w==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR04MB8169

On 17.10.2023 15:09, Roger Pau Monne wrote:
> SAGAW is a bitmap field, with bits 1 and 2 signaling support for AGAW 1 and
> AGAW 2 respectively.  According to the Intel VT-d specification, an IOMMU might
> support multiple AGAW values.
> 
> The AGAW value for each device is set in the device context entry, however
> there's a caveat related to the value the field supports depending on the
> translation type:
> 
> "When the Translation-type (T) field indicates pass-through (010b) or
> guest-mode (100b or 101b), this field must be programmed to indicate the
> largest AGAW value supported by hardware."

Considering SAGAW=3 was reserved in earlier versions, and considering SAGAW=4
and higher continue to be reserved, how is one to write forward-compatible
code? (In retrospect I think this is what mislead me to wrongly use
find_first_set_bit().)

Furthermore, which version of the spec are you looking at? The newest public
one I found is 4.1 (-016), which only mentions pass-through, and only as a
2-bit quantity. (Doesn't matter much for the purposes of the actual code
change, but still.)

> Of the translation types listed above Xen only uses pass-through (010b), and
> hence we need to make sure the context entry AGAW field is set appropriately,
> or else the IOMMU will report invalid context entry errors.
> 
> To do so calculate the IOMMU supported page table levels based on the last bit
> set in the SAGAW field, instead of the first one.  This also allows making use
> of the widest address width supported by the IOMMU, in case multiple AGAWs are
> supported.

To truly achieve that (with the 5-level spec), ...

> --- a/xen/drivers/passthrough/vtd/iommu.c
> +++ b/xen/drivers/passthrough/vtd/iommu.c
> @@ -1328,7 +1328,7 @@ int __init iommu_alloc(struct acpi_drhd_unit *drhd)
>      /* Calculate number of pagetable levels: 3 or 4. */
>      sagaw = cap_sagaw(iommu->cap);
>      if ( sagaw & 6 )
> -        agaw = find_first_set_bit(sagaw & 6);
> +        agaw = fls(sagaw & 6) - 1;

... the mask here needs widening to 0xe. But see my forward-compatibility
remark above: It may need widening even further. Yet I'm not sure our code
is uniformly ready to handle levels > 4. As a result I think we need to
further alter the use of context_set_address_width(): We don't necessarily
want to use the maximum value with CONTEXT_TT_{DEV_IOTLB,MULTI_LEVEL}.
Specifically I don't think we want to use levels=5 (aw=3) there, until
such time that we support 5-level page tables (which as it looks right now
may well end up being never).

Furthermore just out of context we have

    iommu->nr_pt_levels = agaw_to_level(agaw);
    if ( min_pt_levels > iommu->nr_pt_levels )
        min_pt_levels = iommu->nr_pt_levels;

With fls() instead of find_first_set_bit() this won't be correct anymore.
Yet looking at the sole use (and depending on the resolution of the other
issue) it may be a mere matter of renaming the variable to properly
reflect its purpose.

Taking together perhaps:
- nr_pt_levels needs setting to the larger of 3 and 4, depending on what
  hardware supports, for use in non-pass-through entries,
- a new max_pt_levels field needs setting to what would result from your
  code change above, for use in pass-through entries,
- min_pt_levels could then remain as is,
- for the moment we ignore the forward-compatibility aspect, until the
  underlying principle has been clarified by Intel.

A possible further complication then is that we will end up switching
context entries between different AW values. That's not an issue when
we use CMPXCHG16B or transiently clear the present bit, but our best
effort fallback would likely be of security concern then.

Jan


From xen-devel-bounces@lists.xenproject.org Wed Oct 18 08:33:26 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 08:33:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618444.962088 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qt1zN-00020T-Kl; Wed, 18 Oct 2023 08:33:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618444.962088; Wed, 18 Oct 2023 08: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 1qt1zN-00020M-Gc; Wed, 18 Oct 2023 08:33:13 +0000
Received: by outflank-mailman (input) for mailman id 618444;
 Wed, 18 Oct 2023 08:33: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=+9wN=GA=casper.srs.infradead.org=BATV+8ac6f4fe82fdef80538c+7360+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qt1zJ-00020F-J0
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 08:33:11 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id f6b3af97-6d90-11ee-98d4-6d05b1d4d9a1;
 Wed, 18 Oct 2023 10:33:08 +0200 (CEST)
Received: from [2001:8b0:10b:5:b9aa:f92b:5d4c:b38]
 (helo=u3832b3a9db3152.ant.amazon.com)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qt1yx-00HTnM-TB; Wed, 18 Oct 2023 08:32: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: f6b3af97-6d90-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=MIME-Version:Content-Type:References:
	In-Reply-To:Date:Cc:To:From:Subject:Message-ID:Sender:Reply-To:
	Content-Transfer-Encoding:Content-ID:Content-Description;
	bh=OSdMe/0piv/480deW5y4fHcY7fQ1TKiiTnZvMhyVQxk=; b=cxU147VDhPzGX9tkwCE54Qxe97
	P/XVlX9XO0vkB21u2++OBmIfFsjzQmfVfvz1B5qjKt23AXL+YiLST3aGWyHKNdQyxfXZao6xpXjUT
	pHDDccEQ2WAF6FoA3rv8TfzIL+s72HGJzP6Unqn0xqQ2Ifx9O8AMtLlqHKwVdWVqqMCGYsnNM7SlL
	L7EECorAC4B6lEW8aPpQ+EgSHdta/vXtGdN+ku8z4w88g1dQiiZOWuEtqzLrgdSpHldyGB/T4IKG6
	Hh5Rch9IF65LDPP8SxhVcAQEhoE6r7ytVT83fObwhd11a6+qPaVeYhj7i9O6e/207qSS4jgFX3e9y
	PSjyHAMA==;
Message-ID: <3f3487af227dcdce7afb37e8406d5ce8dcdbf55f.camel@infradead.org>
Subject: Re: [PATCH 11/12] hw/xen: automatically assign device index to
 block devices
From: David Woodhouse <dwmw2@infradead.org>
To: Igor Mammedov <imammedo@redhat.com>
Cc: qemu-devel@nongnu.org, Kevin Wolf <kwolf@redhat.com>, Hanna Reitz
 <hreitz@redhat.com>, Stefano Stabellini <sstabellini@kernel.org>, Anthony
 Perard <anthony.perard@citrix.com>, Paul Durrant <paul@xen.org>, 
 =?ISO-8859-1?Q?Marc-Andr=E9?= Lureau <marcandre.lureau@redhat.com>, Paolo
 Bonzini <pbonzini@redhat.com>, "Michael S. Tsirkin" <mst@redhat.com>,
 Marcel Apfelbaum <marcel.apfelbaum@gmail.com>, Richard Henderson
 <richard.henderson@linaro.org>, Eduardo Habkost <eduardo@habkost.net>, 
 Marcelo Tosatti <mtosatti@redhat.com>, qemu-block@nongnu.org,
 xen-devel@lists.xenproject.org, kvm@vger.kernel.org
Date: Wed, 18 Oct 2023 09:32:47 +0100
In-Reply-To: <20231018093239.3d525fd8@imammedo.users.ipa.redhat.com>
References: <20231016151909.22133-1-dwmw2@infradead.org>
	 <20231016151909.22133-12-dwmw2@infradead.org>
	 <20231018093239.3d525fd8@imammedo.users.ipa.redhat.com>
Content-Type: multipart/signed; micalg="sha-256"; protocol="application/pkcs7-signature";
	boundary="=-CUJm0YzYMGHPmQlj6cTY"
User-Agent: Evolution 3.44.4-0ubuntu2 
MIME-Version: 1.0
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html


--=-CUJm0YzYMGHPmQlj6cTY
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: base64

T24gV2VkLCAyMDIzLTEwLTE4IGF0IDA5OjMyICswMjAwLCBJZ29yIE1hbW1lZG92IHdyb3RlOgo+
IE9uIE1vbiwgMTYgT2N0IDIwMjMgMTY6MTk6MDggKzAxMDAKPiBEYXZpZCBXb29kaG91c2UgPGR3
bXcyQGluZnJhZGVhZC5vcmc+IHdyb3RlOgo+IAo+ID4gRnJvbTogRGF2aWQgV29vZGhvdXNlIDxk
d213QGFtYXpvbi5jby51az4KPiA+IAo+IAo+IGlzIHRoaXMgaW5kZXggYSB1c2VyIChndWVzdCkg
dmlzaWJsZT8KClllcy4gSXQgZGVmaW5lcyB3aGF0IGJsb2NrIGRldmljZSAoZS5nLiAvZGV2L3h2
ZGEpIHRoZSBkaXNrIGFwcGVhcnMgYXMKaW4gdGhlIGd1ZXN0LiBJbiB0aGUgY29tbW9uIGNhc2Us
IGl0IGxpdGVyYWxseSBlbmNvZGVzIHRoZSBMaW51eAptYWpvci9taW5vciBudW1iZXJzLiBTbyB4
dmRhIChtYWpvciAyMDIpIGlzIDB4Y2EwMCwgeHZkYiBpcyAweGNhMTAgZXRjLgoKUHJldmlvdXNs
eSB3ZSBoYWQgdG8gZXhwbGljaXRseSBzZXQgaXQgZm9yIGVhY2ggZGlzayBpbiBRZW11OgoKICAt
ZHJpdmUgZmlsZT1kaXNrMS5pbWcsaWQ9ZHJ2MSAtZGV2aWNlIHhlbi1kaXNrLGRyaXZlPWRydjEs
dmRldj14dmRhCiAgLWRyaXZlIGZpbGU9ZGlzazIuaW1nLGlkPWRydjIgLWRldmljZSB4ZW4tZGlz
ayxkcml2ZT1kcnYyLHZkZXY9eHZkYgoKTm93IHdlIGNhbiBqdXN0IGRvCgogIC1kcml2ZSBmaWxl
PWRpc2sxLmltZyxpZj14ZW4gLWRyaXZlIGZpbGUtZGlzazIuaW1nLGlmPXhlbgoKKFdlIGNvdWxk
IGdvIGZ1cnRoZXIgYW5kIG1ha2UgaWY9eGVuIHRoZSBkZWZhdWx0IGZvciBYZW4gZ3Vlc3RzIHRv
bywKYnV0IHRoYXQgZG9lc24ndCB3b3JrIHJpZ2h0IG5vdyBiZWNhdXNlIHhlbi1ibG9jayB3aWxs
IGJhcmYgb24gdGhlCmRlZmF1bHQgcHJvdmlkZWQgQ0QtUk9NIHdoZW4gaXQncyBlbXB0eS4gSXQg
ZG9lc24ndCBoYW5kbGUgZW1wdHkKZGV2aWNlcy4gQW5kIGlmIEkgd29yayBhcm91bmQgdGhhdCwg
dGhlbiBgLWhkYSBkaXNrMS5pbWdgIHdvdWxkIHdvcmsgb24KdGhlIGNvbW1hbmQgbGluZS4uLiBi
dXQgd291bGQgbWFrZSBpdCBhcHBlYXIgYXMgL2Rldi94dmRhIGluc3RlYWQgb2YKL2Rldi9oZGEs
IGFuZCBJIGRvbid0IGtub3cgaG93IEkgZmVlbCBhYm91dCB0aGF0LikKCltyb290QGxvY2FsaG9z
dCB+XSMgeGVuc3RvcmUtbHMgIC1mIGRldmljZS92YmQKZGV2aWNlL3ZiZCA9ICIiCmRldmljZS92
YmQvNTE3MTIgPSAiIgpkZXZpY2UvdmJkLzUxNzEyL2JhY2tlbmQgPSAiL2xvY2FsL2RvbWFpbi8w
L2JhY2tlbmQvcWRpc2svMS81MTcxMiIKZGV2aWNlL3ZiZC81MTcxMi9iYWNrZW5kLWlkID0gIjAi
CmRldmljZS92YmQvNTE3MTIvZGV2aWNlLXR5cGUgPSAiZGlzayIKZGV2aWNlL3ZiZC81MTcxMi9l
dmVudC1jaGFubmVsID0gIjgiCmRldmljZS92YmQvNTE3MTIvZmVhdHVyZS1wZXJzaXN0ZW50ID0g
IjEiCmRldmljZS92YmQvNTE3MTIvcHJvdG9jb2wgPSAieDg2XzY0LWFiaSIKZGV2aWNlL3ZiZC81
MTcxMi9yaW5nLXJlZiA9ICI4IgpkZXZpY2UvdmJkLzUxNzEyL3N0YXRlID0gIjQiCmRldmljZS92
YmQvNTE3MTIvdmlydHVhbC1kZXZpY2UgPSAiNTE3MTIiCgo+IAo+ID4gVGhlcmUncyBubyBuZWVk
IHRvIGZvcmNlIHRoZSB1c2VyIHRvIGFzc2lnbiBhIHZkZXYuIFdlIGNhbiBhdXRvbWF0aWNhbGx5
Cj4gPiBhc3NpZ24gb25lLCBzdGFydGluZyBhdCB4dmRhIGFuZCBzZWFyY2hpbmcgdW50aWwgd2Ug
ZmluZCB0aGUgZmlyc3QgZGlzawo+ID4gbmFtZSB0aGF0J3MgdW51c2VkLgo+ID4gCj4gPiBUaGlz
IG1lYW5zIHdlIGNhbiBub3cgYWxsb3cgJy1kcml2ZSBpZj14ZW4sZmlsZT14eHgnIHRvIHdvcmsg
d2l0aG91dCBhbgo+ID4gZXhwbGljaXQgc2VwYXJhdGUgLWRyaXZlciBhcmd1bWVudCwganVzdCBs
aWtlIGlmPXZpcnRpby4KPiA+IAo+ID4gU2lnbmVkLW9mZi1ieTogRGF2aWQgV29vZGhvdXNlIDxk
d213QGFtYXpvbi5jby51az4KPiA+IC0tLQo+ID4gwqBibG9ja2Rldi5jwqDCoMKgwqDCoMKgwqDC
oMKgwqAgfCAxNSArKysrKysrKysrKystLS0KPiA+IMKgaHcvYmxvY2sveGVuLWJsb2NrLmMgfCAy
NSArKysrKysrKysrKysrKysrKysrKysrKysrCj4gPiDCoDIgZmlsZXMgY2hhbmdlZCwgMzcgaW5z
ZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKPiA+IAo+ID4gZGlmZiAtLWdpdCBhL2Jsb2NrZGV2
LmMgYi9ibG9ja2Rldi5jCj4gPiBpbmRleCAzMjViN2EzYmVmLi45ZGVjNGM5Yzc0IDEwMDY0NAo+
ID4gLS0tIGEvYmxvY2tkZXYuYwo+ID4gKysrIGIvYmxvY2tkZXYuYwo+ID4gQEAgLTI1NSwxMyAr
MjU1LDEzIEBAIHZvaWQgZHJpdmVfY2hlY2tfb3JwaGFuZWQodm9pZCkKPiA+IMKgwqDCoMKgwqDC
oMKgwqDCoCAqIElnbm9yZSBkZWZhdWx0IGRyaXZlcywgYmVjYXVzZSB3ZSBjcmVhdGUgY2VydGFp
biBkZWZhdWx0Cj4gPiDCoMKgwqDCoMKgwqDCoMKgwqAgKiBkcml2ZXMgdW5jb25kaXRpb25hbGx5
LCB0aGVuIGxlYXZlIHRoZW0gdW5jbGFpbWVkLsKgIE5vdCB0aGUKPiA+IMKgwqDCoMKgwqDCoMKg
wqDCoCAqIHVzZXJzIGZhdWx0Lgo+ID4gLcKgwqDCoMKgwqDCoMKgwqAgKiBJZ25vcmUgSUZfVklS
VElPLCBiZWNhdXNlIGl0IGdldHMgZGVzdWdhcmVkIGludG8gLWRldmljZSwKPiA+IC3CoMKgwqDC
oMKgwqDCoMKgICogc28gd2UgY2FuIGxlYXZlIGZhaWxpbmcgdG8gLWRldmljZS4KPiA+ICvCoMKg
wqDCoMKgwqDCoMKgICogSWdub3JlIElGX1ZJUlRJTyBvciBJRl9YRU4sIGJlY2F1c2UgaXQgZ2V0
cyBkZXN1Z2FyZWQgaW50bwo+ID4gK8KgwqDCoMKgwqDCoMKgwqAgKiAtZGV2aWNlLCBzbyB3ZSBj
YW4gbGVhdmUgZmFpbGluZyB0byAtZGV2aWNlLgo+ID4gwqDCoMKgwqDCoMKgwqDCoMKgICogSWdu
b3JlIElGX05PTkUsIGJlY2F1c2UgbGVhdmluZyB1bmNsYWltZWQgSUZfTk9ORSByZW1haW5zCj4g
PiDCoMKgwqDCoMKgwqDCoMKgwqAgKiBhdmFpbGFibGUgZm9yIGRldmljZV9hZGQgaXMgYSBmZWF0
dXJlLgo+ID4gwqDCoMKgwqDCoMKgwqDCoMKgICovCj4gPiDCoMKgwqDCoMKgwqDCoMKgIGlmIChk
aW5mby0+aXNfZGVmYXVsdCB8fCBkaW5mby0+dHlwZSA9PSBJRl9WSVJUSU8KPiA+IC3CoMKgwqDC
oMKgwqDCoMKgwqDCoMKgIHx8IGRpbmZvLT50eXBlID09IElGX05PTkUpIHsKPiA+ICvCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgIHx8IGRpbmZvLT50eXBlID09IElGX1hFTiB8fCBkaW5mby0+dHlwZSA9
PSBJRl9OT05FKSB7Cj4gPiDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgY29udGludWU7Cj4gPiDC
oMKgwqDCoMKgwqDCoMKgIH0KPiA+IMKgwqDCoMKgwqDCoMKgwqAgaWYgKCFibGtfZ2V0X2F0dGFj
aGVkX2RldihibGspKSB7Cj4gPiBAQCAtOTc3LDYgKzk3NywxNSBAQCBEcml2ZUluZm8gKmRyaXZl
X25ldyhRZW11T3B0cyAqYWxsX29wdHMsIEJsb2NrSW50ZXJmYWNlVHlwZSBibG9ja19kZWZhdWx0
X3R5cGUsCj4gPiDCoMKgwqDCoMKgwqDCoMKgIHFlbXVfb3B0X3NldChkZXZvcHRzLCAiZHJpdmVy
IiwgInZpcnRpby1ibGsiLCAmZXJyb3JfYWJvcnQpOwo+ID4gwqDCoMKgwqDCoMKgwqDCoCBxZW11
X29wdF9zZXQoZGV2b3B0cywgImRyaXZlIiwgcWRpY3RfZ2V0X3N0cihic19vcHRzLCAiaWQiKSwK
PiA+IMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAmZXJyb3JfYWJv
cnQpOwo+ID4gK8KgwqDCoCB9IGVsc2UgaWYgKHR5cGUgPT0gSUZfWEVOKSB7Cj4gPiArwqDCoMKg
wqDCoMKgwqAgUWVtdU9wdHMgKmRldm9wdHM7Cj4gPiArwqDCoMKgwqDCoMKgwqAgZGV2b3B0cyA9
IHFlbXVfb3B0c19jcmVhdGUocWVtdV9maW5kX29wdHMoImRldmljZSIpLCBOVUxMLCAwLAo+ID4g
K8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoMKgICZlcnJvcl9hYm9ydCk7Cj4gPiArwqDCoMKgwqDCoMKgwqAgcWVtdV9vcHRf
c2V0KGRldm9wdHMsICJkcml2ZXIiLAo+ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgwqAgKG1lZGlhID09IE1FRElBX0NEUk9NKSA/ICJ4ZW4tY2Ryb20iIDogInhlbi1k
aXNrIiwKPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICZlcnJv
cl9hYm9ydCk7Cj4gPiArwqDCoMKgwqDCoMKgwqAgcWVtdV9vcHRfc2V0KGRldm9wdHMsICJkcml2
ZSIsIHFkaWN0X2dldF9zdHIoYnNfb3B0cywgImlkIiksCj4gPiArwqDCoMKgwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAmZXJyb3JfYWJvcnQpOwo+ID4gwqDCoMKgwqAgfQo+ID4g
wqAKPiA+IMKgwqDCoMKgIGZpbGVuYW1lID0gcWVtdV9vcHRfZ2V0KGxlZ2FjeV9vcHRzLCAiZmls
ZSIpOwo+ID4gZGlmZiAtLWdpdCBhL2h3L2Jsb2NrL3hlbi1ibG9jay5jIGIvaHcvYmxvY2sveGVu
LWJsb2NrLmMKPiA+IGluZGV4IDkyNjIzMzg1MzUuLjIwZmE3ODNjYmUgMTAwNjQ0Cj4gPiAtLS0g
YS9ody9ibG9jay94ZW4tYmxvY2suYwo+ID4gKysrIGIvaHcvYmxvY2sveGVuLWJsb2NrLmMKPiA+
IEBAIC0zNCw2ICszNCwzMSBAQCBzdGF0aWMgY2hhciAqeGVuX2Jsb2NrX2dldF9uYW1lKFhlbkRl
dmljZSAqeGVuZGV2LCBFcnJvciAqKmVycnApCj4gPiDCoMKgwqDCoCBYZW5CbG9ja0RldmljZSAq
YmxvY2tkZXYgPSBYRU5fQkxPQ0tfREVWSUNFKHhlbmRldik7Cj4gPiDCoMKgwqDCoCBYZW5CbG9j
a1ZkZXYgKnZkZXYgPSAmYmxvY2tkZXYtPnByb3BzLnZkZXY7Cj4gPiDCoAo+ID4gK8KgwqDCoCBp
ZiAoYmxvY2tkZXYtPnByb3BzLnZkZXYudHlwZSA9PSBYRU5fQkxPQ0tfVkRFVl9UWVBFX0lOVkFM
SUQpIHsKPiA+ICvCoMKgwqDCoMKgwqDCoCBjaGFyIG5hbWVbMTFdOwo+ID4gK8KgwqDCoMKgwqDC
oMKgIGludCBkaXNrID0gMDsKPiA+ICvCoMKgwqDCoMKgwqDCoCB1bnNpZ25lZCBsb25nIGlkeDsK
PiA+ICsKPiA+ICvCoMKgwqDCoMKgwqDCoCAvKiBGaW5kIGFuIHVub2NjdXBpZWQgZGV2aWNlIG5h
bWUgKi8KPiA+ICvCoMKgwqDCoMKgwqDCoCB3aGlsZSAoZGlzayA8ICgxIDw8IDIwKSkgewo+ID4g
K8KgwqDCoMKgwqDCoMKgwqDCoMKgwqAgaWYgKGRpc2sgPCAoMSA8PCA0KSkgewo+ID4gK8KgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBpZHggPSAoMjAyIDw8IDgpIHwgKGRpc2sgPDwgNCk7
Cj4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB9IGVsc2Ugewo+ID4gK8KgwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoMKgwqDCoCBpZHggPSAoMSA8PCAyOCkgfCAoZGlzayA8PCA4KTsKPiA+ICvCoMKg
wqDCoMKgwqDCoMKgwqDCoMKgIH0KPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHNucHJpbnRm
KG5hbWUsIHNpemVvZihuYW1lKSwgIiVsdSIsIGlkeCk7Cj4gPiArwqDCoMKgwqDCoMKgwqDCoMKg
wqDCoCBpZiAoIXhlbl9iYWNrZW5kX2V4aXN0cygicWRpc2siLCBuYW1lKSkgewo+ID4gK8KgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB2ZGV2LT50eXBlID0gWEVOX0JMT0NLX1ZERVZfVFlQ
RV9YVkQ7Cj4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHZkZXYtPnBhcnRpdGlv
biA9IDA7Cj4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHZkZXYtPmRpc2sgPSBk
aXNrOwo+ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB2ZGV2LT5udW1iZXIgPSBp
ZHg7Cj4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHJldHVybiBnX3N0cmR1cChu
YW1lKTsKPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIH0KPiA+ICvCoMKgwqDCoMKgwqDCoMKg
wqDCoMKgIGRpc2srKzsKPiA+ICvCoMKgwqDCoMKgwqDCoCB9Cj4gPiArwqDCoMKgwqDCoMKgwqAg
ZXJyb3Jfc2V0ZyhlcnJwLCAiY2Fubm90IGZpbmQgZGV2aWNlIHZkZXYgZm9yIGJsb2NrIGRldmlj
ZSIpOwo+ID4gK8KgwqDCoMKgwqDCoMKgIHJldHVybiBOVUxMOwo+ID4gK8KgwqDCoCB9Cj4gPiDC
oMKgwqDCoCByZXR1cm4gZ19zdHJkdXBfcHJpbnRmKCIlbHUiLCB2ZGV2LT5udW1iZXIpOwo+ID4g
wqB9Cj4gPiDCoAo+IAo+IAoK


--=-CUJm0YzYMGHPmQlj6cTY
Content-Type: application/pkcs7-signature; name="smime.p7s"
Content-Disposition: attachment; filename="smime.p7s"
Content-Transfer-Encoding: base64

MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgEFADCABgkqhkiG9w0BBwEAAKCCEkQw
ggYQMIID+KADAgECAhBNlCwQ1DvglAnFgS06KwZPMA0GCSqGSIb3DQEBDAUAMIGIMQswCQYDVQQG
EwJVUzETMBEGA1UECBMKTmV3IEplcnNleTEUMBIGA1UEBxMLSmVyc2V5IENpdHkxHjAcBgNVBAoT
FVRoZSBVU0VSVFJVU1QgTmV0d29yazEuMCwGA1UEAxMlVVNFUlRydXN0IFJTQSBDZXJ0aWZpY2F0
aW9uIEF1dGhvcml0eTAeFw0xODExMDIwMDAwMDBaFw0zMDEyMzEyMzU5NTlaMIGWMQswCQYDVQQG
EwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYD
VQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50
aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC
AQEAyjztlApB/975Rrno1jvm2pK/KxBOqhq8gr2+JhwpKirSzZxQgT9tlC7zl6hn1fXjSo5MqXUf
ItMltrMaXqcESJuK8dtK56NCSrq4iDKaKq9NxOXFmqXX2zN8HHGjQ2b2Xv0v1L5Nk1MQPKA19xeW
QcpGEGFUUd0kN+oHox+L9aV1rjfNiCj3bJk6kJaOPabPi2503nn/ITX5e8WfPnGw4VuZ79Khj1YB
rf24k5Ee1sLTHsLtpiK9OjG4iQRBdq6Z/TlVx/hGAez5h36bBJMxqdHLpdwIUkTqT8se3ed0PewD
ch/8kHPo5fZl5u1B0ecpq/sDN/5sCG52Ds+QU5O5EwIDAQABo4IBZDCCAWAwHwYDVR0jBBgwFoAU
U3m/WqorSs9UgOHYm8Cd8rIDZsswHQYDVR0OBBYEFAnA8vwL2pTbX/4r36iZQs/J4K0AMA4GA1Ud
DwEB/wQEAwIBhjASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEF
BQcDBDARBgNVHSAECjAIMAYGBFUdIAAwUAYDVR0fBEkwRzBFoEOgQYY/aHR0cDovL2NybC51c2Vy
dHJ1c3QuY29tL1VTRVJUcnVzdFJTQUNlcnRpZmljYXRpb25BdXRob3JpdHkuY3JsMHYGCCsGAQUF
BwEBBGowaDA/BggrBgEFBQcwAoYzaHR0cDovL2NydC51c2VydHJ1c3QuY29tL1VTRVJUcnVzdFJT
QUFkZFRydXN0Q0EuY3J0MCUGCCsGAQUFBzABhhlodHRwOi8vb2NzcC51c2VydHJ1c3QuY29tMA0G
CSqGSIb3DQEBDAUAA4ICAQBBRHUAqznCFfXejpVtMnFojADdF9d6HBA4kMjjsb0XMZHztuOCtKF+
xswhh2GqkW5JQrM8zVlU+A2VP72Ky2nlRA1GwmIPgou74TZ/XTarHG8zdMSgaDrkVYzz1g3nIVO9
IHk96VwsacIvBF8JfqIs+8aWH2PfSUrNxP6Ys7U0sZYx4rXD6+cqFq/ZW5BUfClN/rhk2ddQXyn7
kkmka2RQb9d90nmNHdgKrwfQ49mQ2hWQNDkJJIXwKjYA6VUR/fZUFeCUisdDe/0ABLTI+jheXUV1
eoYV7lNwNBKpeHdNuO6Aacb533JlfeUHxvBz9OfYWUiXu09sMAviM11Q0DuMZ5760CdO2VnpsXP4
KxaYIhvqPqUMWqRdWyn7crItNkZeroXaecG03i3mM7dkiPaCkgocBg0EBYsbZDZ8bsG3a08LwEsL
1Ygz3SBsyECa0waq4hOf/Z85F2w2ZpXfP+w8q4ifwO90SGZZV+HR/Jh6rEaVPDRF/CEGVqR1hiuQ
OZ1YL5ezMTX0ZSLwrymUE0pwi/KDaiYB15uswgeIAcA6JzPFf9pLkAFFWs1QNyN++niFhsM47qod
x/PL+5jR87myx5uYdBEQkkDc+lKB1Wct6ucXqm2EmsaQ0M95QjTmy+rDWjkDYdw3Ms6mSWE3Bn7i
5ZgtwCLXgAIe5W8mybM2JzCCBhQwggT8oAMCAQICEQDGvhmWZ0DEAx0oURL6O6l+MA0GCSqGSIb3
DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYD
VQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28g
UlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMB4XDTIyMDEwNzAw
MDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJARYTZHdtdzJAaW5mcmFkZWFkLm9y
ZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3GpC2bomUqk+91wLYBzDMcCj5C9m6
oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZHh7htyAkWYVoFsFPrwHounto8xTsy
SSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT9YgcBqKCo65pTFmOnR/VVbjJk4K2
xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNjP+qDrh0db7PAjO1D4d5ftfrsf+kd
RR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy2U+eITZ5LLE5s45mX2oPFknWqxBo
bQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3BgBEmfsYWlBXO8rVXfvPgLs32VdV
NZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/7auNVRmPB3v5SWEsH8xi4Bez2V9U
KxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmdlFYhAflWKQ03Ufiu8t3iBE3VJbc2
5oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9aelIl6vtbhMA+l0nfrsORMa4kobqQ5
C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMBAAGjggHMMIIByDAfBgNVHSMEGDAW
gBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeDMcimo0oz8o1R1Nver3ZVpSkwDgYD
VR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYwFAYIKwYBBQUHAwQGCCsGAQUFBwMC
MEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYBBQUHAgEWF2h0dHBzOi8vc2VjdGln
by5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9jcmwuc2VjdGlnby5jb20vU2VjdGln
b1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1haWxDQS5jcmwwgYoGCCsGAQUFBwEB
BH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdvLmNvbS9TZWN0aWdvUlNBQ2xpZW50
QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAjBggrBgEFBQcwAYYXaHR0cDovL29j
c3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5mcmFkZWFkLm9yZzANBgkqhkiG9w0B
AQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQvQ/fzPXmtR9t54rpmI2TfyvcKgOXp
qa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvIlSPrzIB4Z2wyIGQpaPLlYflrrVFK
v9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9ChWFfgSXvrWDZspnU3Gjw/rMHrGnql
Htlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0whpBtXdyDjzBtQTaZJ7zTT/vlehc/
tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9IzCCBhQwggT8oAMCAQICEQDGvhmW
Z0DEAx0oURL6O6l+MA0GCSqGSIb3DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3Jl
YXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0
ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJl
IEVtYWlsIENBMB4XDTIyMDEwNzAwMDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJ
ARYTZHdtdzJAaW5mcmFkZWFkLm9yZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3
GpC2bomUqk+91wLYBzDMcCj5C9m6oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZH
h7htyAkWYVoFsFPrwHounto8xTsySSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT
9YgcBqKCo65pTFmOnR/VVbjJk4K2xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNj
P+qDrh0db7PAjO1D4d5ftfrsf+kdRR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy
2U+eITZ5LLE5s45mX2oPFknWqxBobQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3
BgBEmfsYWlBXO8rVXfvPgLs32VdVNZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/
7auNVRmPB3v5SWEsH8xi4Bez2V9UKxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmd
lFYhAflWKQ03Ufiu8t3iBE3VJbc25oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9ae
lIl6vtbhMA+l0nfrsORMa4kobqQ5C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMB
AAGjggHMMIIByDAfBgNVHSMEGDAWgBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeD
Mcimo0oz8o1R1Nver3ZVpSkwDgYDVR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYw
FAYIKwYBBQUHAwQGCCsGAQUFBwMCMEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYB
BQUHAgEWF2h0dHBzOi8vc2VjdGlnby5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9j
cmwuc2VjdGlnby5jb20vU2VjdGlnb1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1h
aWxDQS5jcmwwgYoGCCsGAQUFBwEBBH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdv
LmNvbS9TZWN0aWdvUlNBQ2xpZW50QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAj
BggrBgEFBQcwAYYXaHR0cDovL29jc3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5m
cmFkZWFkLm9yZzANBgkqhkiG9w0BAQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQv
Q/fzPXmtR9t54rpmI2TfyvcKgOXpqa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvI
lSPrzIB4Z2wyIGQpaPLlYflrrVFKv9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9Ch
WFfgSXvrWDZspnU3Gjw/rMHrGnqlHtlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0w
hpBtXdyDjzBtQTaZJ7zTT/vlehc/tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9
IzGCBMcwggTDAgEBMIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVz
dGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMT
NVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEA
xr4ZlmdAxAMdKFES+jupfjANBglghkgBZQMEAgEFAKCCAeswGAYJKoZIhvcNAQkDMQsGCSqGSIb3
DQEHATAcBgkqhkiG9w0BCQUxDxcNMjMxMDE4MDgzMjQ3WjAvBgkqhkiG9w0BCQQxIgQg9PQbHRNc
hJj+tnJitJSZ7fZ94+P7/kXm0/b2wHDQXgAwgb0GCSsGAQQBgjcQBDGBrzCBrDCBljELMAkGA1UE
BhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEYMBYG
A1UEChMPU2VjdGlnbyBMaW1pdGVkMT4wPAYDVQQDEzVTZWN0aWdvIFJTQSBDbGllbnQgQXV0aGVu
dGljYXRpb24gYW5kIFNlY3VyZSBFbWFpbCBDQQIRAMa+GZZnQMQDHShREvo7qX4wgb8GCyqGSIb3
DQEJEAILMYGvoIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVy
MRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNl
Y3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEAxr4Z
lmdAxAMdKFES+jupfjANBgkqhkiG9w0BAQEFAASCAgCymgRCjJ5XDRYenMgbwK3x+NDkX7AkSwhS
MstBPHHdEJ+JwPfwlloVp40nuYQWUbmbmh5eGK7CS6OAf6xcDq7bDWLrwg0HDA0FP32L+c8piiWj
FIInEUytYjYmdx48FicQmdOlCB/sGuJ9qRYodNK4qjgwGydbd/IU+V7xKUKIooATOPQKbvKXcXFn
U/72dcEMTJsF1bGyoTLLyWLsFn5I7K7qCd4odC7UpqB+jiB3HITxqumM8ZJz3N9CEB2Y85KI2lru
ZXRzsEJ3Lyjt3jpbV8moS2yVqYolGDnhAwhfPI2Fx+9v3HKL2bV/En5SOTUQMNlN2NX6wQuByktM
h7AIQmBM/T8CVHf+IzWn0UxXe11Vl1GGIfx3CbOivMKOaywXtBPMZ9jpKGsnsrLNIjGS8TwcMGa9
MD2TeddTkPg6xVr0AJWZKWQgzEyy+rhD/EsbN3yTGyV8e1mErkTcI13IcwKu9/9PbSD+SmHi1xHK
kjzJ5RVe8NdjVwctX/dOshtsK8gngZuXItqgO7ImoXr80VVcc/EDnFncke6zDhNitOD/cTUnIQaF
h/IkwGCWds6dML7An+ODBT0upHy0II5xjNSYxenUx9X/bUCLX4mJVDBfAFNnnJzWVyObHLctYzzK
ZiyObFm5RkgzLwOA3APo7nm0Si24fxYOVrUPRLkJWgAAAAAAAA==


--=-CUJm0YzYMGHPmQlj6cTY--


From xen-devel-bounces@lists.xenproject.org Wed Oct 18 08:52:31 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 08:52:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618448.962098 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qt2Hu-0005nv-8C; Wed, 18 Oct 2023 08:52:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618448.962098; Wed, 18 Oct 2023 08:52: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 1qt2Hu-0005no-4T; Wed, 18 Oct 2023 08:52:22 +0000
Received: by outflank-mailman (input) for mailman id 618448;
 Wed, 18 Oct 2023 08:52: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=bK4J=GA=redhat.com=kwolf@srs-se1.protection.inumbo.net>)
 id 1qt2Ht-0005ni-4f
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 08:52: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 a4e202a6-6d93-11ee-98d4-6d05b1d4d9a1;
 Wed, 18 Oct 2023 10:52:19 +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-582-7wigXbIkP_i32babYPld5g-1; Wed, 18 Oct 2023 04:52:14 -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 2347D28AC1EA;
 Wed, 18 Oct 2023 08:52:14 +0000 (UTC)
Received: from redhat.com (unknown [10.39.193.245])
 by smtp.corp.redhat.com (Postfix) with ESMTPS id CB252C15BB8;
 Wed, 18 Oct 2023 08:52: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: a4e202a6-6d93-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
	s=mimecast20190719; t=1697619138;
	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=2QqvfO0DgHUb1b4lvzB4Y2b9lzIz4ZUlzP/607LhnMw=;
	b=DN2KxSckrdpoKi0O0W1kFaXINM6B8/o6o4VS3JCT1ISbvo6kuQ9aFR5Uwpqd5+IZdxNZ9s
	UcuVpt3Z8a86BpF0rl0OAHlIC76ssZbpBLLOwVwtGF+rTHramIyxRTw7LDrjvV+qZDkLPG
	A2fHLYSto5KgWaZSPV5UE1HS6sFctWc=
X-MC-Unique: 7wigXbIkP_i32babYPld5g-1
Date: Wed, 18 Oct 2023 10:52:10 +0200
From: Kevin Wolf <kwolf@redhat.com>
To: David Woodhouse <dwmw2@infradead.org>
Cc: qemu-devel@nongnu.org, Hanna Reitz <hreitz@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	=?iso-8859-1?Q?Marc-Andr=E9?= Lureau <marcandre.lureau@redhat.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Richard Henderson <richard.henderson@linaro.org>,
	Eduardo Habkost <eduardo@habkost.net>,
	Marcelo Tosatti <mtosatti@redhat.com>, qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org, kvm@vger.kernel.org
Subject: Re: [PATCH 11/12] hw/xen: automatically assign device index to block
 devices
Message-ID: <ZS+cutIjulWBQakk@redhat.com>
References: <20231016151909.22133-1-dwmw2@infradead.org>
 <20231016151909.22133-12-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <20231016151909.22133-12-dwmw2@infradead.org>
X-Scanned-By: MIMEDefang 3.4.1 on 10.11.54.8

Am 16.10.2023 um 17:19 hat David Woodhouse geschrieben:
> From: David Woodhouse <dwmw@amazon.co.uk>
> 
> There's no need to force the user to assign a vdev. We can automatically
> assign one, starting at xvda and searching until we find the first disk
> name that's unused.
> 
> This means we can now allow '-drive if=xen,file=xxx' to work without an
> explicit separate -driver argument, just like if=virtio.
> 
> Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>

Actually, how does this play together with xen_config_dev_blk()? This
looks like it tried to implement a very similar thing (which is IF_XEN
even already existed).

Are we now trying to attach each if=xen disk twice in the 'xenpv'
machine? Or if something prevents this, is it dead code?

I think in both cases, we would want to delete that function and remove
the loop that calls it in xen_init_pv()?

Kevin



From xen-devel-bounces@lists.xenproject.org Wed Oct 18 08:54:28 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 08:54:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618450.962108 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qt2Jv-00071r-J8; Wed, 18 Oct 2023 08:54:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618450.962108; Wed, 18 Oct 2023 08:54: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 1qt2Jv-00071k-Fv; Wed, 18 Oct 2023 08:54:27 +0000
Received: by outflank-mailman (input) for mailman id 618450;
 Wed, 18 Oct 2023 08:54: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=4j4C=GA=citrix.com=prvs=648c180f0=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qt2Jt-00071c-Sn
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 08:54:26 +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 eddf55cc-6d93-11ee-98d4-6d05b1d4d9a1;
 Wed, 18 Oct 2023 10:54:24 +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;
 18 Oct 2023 04:54:19 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by SJ0PR03MB5487.namprd03.prod.outlook.com (2603:10b6:a03:284::8)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.21; Wed, 18 Oct
 2023 08:54:17 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::17e3:6cff:b087:fc64]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::17e3:6cff:b087:fc64%4]) with mapi id 15.20.6886.034; Wed, 18 Oct 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: eddf55cc-6d93-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1697619264;
  h=date:from:to:cc:subject:message-id:references:
   in-reply-to:mime-version;
  bh=8++SR9oHWyHFtkBBpz0rUi4XWRaGPqfEb3q/5OOaljY=;
  b=E5cYK0Rr/sebSuyEHf22FrIw5o8Gw5UJ2r6LWFCTx1iiTWQAwtYgy77+
   7XaLF57xmkg+ifdGawCMYcxoxLojx2lmEGHhSh3nvijG0FSSiF4FmChIy
   gLg9LrfXwdov8ZG9GtB3eGajsAUDwgjEF7G9l43Qs1DCxXRQDCSzyjtHc
   w=;
X-CSE-ConnectionGUID: BYuF5mc3RneWSmQcqUDsqQ==
X-CSE-MsgGUID: MaZoInQET2al6rY+YU4RrA==
X-IronPort-RemoteIP: 104.47.58.100
X-IronPort-MID: 125918281
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:WymQJKrivjQPjL6UDcSZfvhPB4teBmLcZBIvgKrLsJaIsI4StFCzt
 garIBmOa6nYN2GhfthzPYyx80gA75fUytZkGgNv+S5hQykR8ZuZCYyVIHmrMnLJJKUvbq7FA
 +Y2MYCccZ9uHhcwgj/3b9ANeFEljfngqoLUUbOCYmYpA1Y8FE/NsDo788YhmIlknNOlNA2Ev
 NL2sqX3NUSsnjV5KQr40YrawP9UlKq04GhwUmAWP6gR5waGzilNVfrzGInqR5fGatgMdgKFb
 76rIIGRpgvx4xorA9W5pbf3GmVirmn6ZFXmZtJ+AsBOszAazsAA+v9T2Mk0MC+7vw6hjdFpo
 OihgLTrIesf0g8gr8xGO/VQO3kW0aSrY9YrK1Dn2SCY5xWun3cBX5yCpaz5VGEV0r8fPI1Ay
 RAXABo8cz7egunt+rS2ddJpv886EeXwJbpK7xmMzRmBZRonabbqZvySoPN9gnI3jM0IGuvCb
 c0EbzYpdA7HfxBEJlYQDtQ5gfusgX78NTZfrTp5p4JuuzSVkFM3jeiraYKNEjCJbZw9ckKwv
 GXJ8n6/GhgHHNee1SCE4jSngeqncSbTAdhPReTorK4z6LGV7kkaOho3U2KWnaOwjhCkapFuF
 hAu4AN7+MDe82TuFLERRSaQonSJoxodUNp4CPAh5UeGza+8ywWUGGkCCCJAYdoOtckqSDhs3
 ViM9/vJCDp1ofuqQHSS3r6OqHW5Pi19BX8PY2oIQBUI5/HnoZovlVTfQ9B7Cqm3g9bpXzbqz
 Fi3QDMWgrwSiYsH0vu99FWe2za0/MGRFkgy+xndWX+j4kVhfom5aoe06F/dq/FdMIKeSVrHt
 38B8ySD0N0z4Vi2vHTlaI0w8HuBvp5p7BW0bYZTIqQc
IronPort-HdrOrdr: A9a23:RbWwNqllndkLsWZZHXR6pGcXFgLpDfI73DAbv31ZSRFFG/Fw8P
 rPoB1773LJYVMqMxsdcL+7Scq9qAznhPtICOUqUYtKPzOW2ldATrsC0WKK+VSJJ8SUzIBgPM
 lbHJSWAeeAaWRHsQ==
X-Talos-CUID: =?us-ascii?q?9a23=3AX64VQmlVi/4sasMFR623Y+NUMijXOVfs0VmNJkT?=
 =?us-ascii?q?jM2Bkd4aQcFSJxY9/ivM7zg=3D=3D?=
X-Talos-MUID: 9a23:sRynsAXtW+fOibPq/BrltjZDMv5F3/6nDB4XoNY3hpW+LwUlbg==
X-IronPort-AV: E=Sophos;i="6.03,234,1694750400"; 
   d="scan'208";a="125918281"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=brsYO5iSjNBEKiGCRbgPKFzkmPjArELZQh4vRg9uVuxn+ZSTWvCHEFG35ChEOTLcaJTsyoW1PH5h5tN7mPQpJN8OSRam2EKaVwVJaHpB2UwEsCL1Xf5yap1qMP0/5ttO4uWUPqQ+SaZcl8yRUS5T8t7ftyuMnVX7Ywt1FychnRxCGrWXSQUSk4ZYy053+3BwzMEXTTA3gfLEKdHa7jWy5lrpvxoroEzYIKRFNVdT1AmAacHh5/0QjqrWTyvjSzT+4gHyB+55SkNUvjhR8plwzIfRDG+vSJxr6CaI7gkYpOI1SJWFI/BHAdG0zHEau+g3U01EOBAG6r644i4YC+co5w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=5QtnMTXqwQJ4DM3MhvYcr94JiggEW7nNKuuL9H3pcis=;
 b=V/MsaH5bmLjxGkgZ2X3I6CAvenJkqqhfeJwhK6D+AEcCloaAptor1UVx+/PdNIq1QVqeJBhRrs9KMqvRZQ/4F5ev3pbdsUQY7KNpFegMVNYjP+VNMV7lqmDGBnWYdSKbSKJ32lPKxDsG6FPlCh90pFqXg2W0R9C4wxA0VxAV5Xw9DQkecm+Hzup5bKvV/N7SgagQWe9l50sdWTwKUACvAE3G5nHBccdT0kgSNdwJ6zvvAH1qKJD7oOrJxX4mI04jHtdCB2Ky5lBZBw8IAL+/T80vSTDPp1tmRQtzm8cDhcwZywpUwuZ0WOlojuc819qXYXldZskKwvfJvVUfWhUclA==
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=5QtnMTXqwQJ4DM3MhvYcr94JiggEW7nNKuuL9H3pcis=;
 b=dn8xNlTTZlBGGKTmDImxlu+oYAYXvjxp1HVIIlJswkt05cpyWUT/pi4aqtHSALUj0SmsEl/JVvS9tsePYdY2AvWuHej/lrqSquDb0wCm/EHJfe1o6uwo4pt4f1ZMDoAvYYHZEcqyKtR4W7+I+EEtdHY15y6pId6leuGZdo3jvU0=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Wed, 18 Oct 2023 10:54:11 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: Kevin Tian <kevin.tian@intel.com>, Henry Wang <Henry.Wang@arm.com>,
	xen-devel@lists.xenproject.org
Subject: Re: [PATCH for-4.18] iommu/vt-d: use max supported AGAW
Message-ID: <ZS-dM2TFYefJ272h@macbook>
References: <20231017130943.18111-1-roger.pau@citrix.com>
 <c6e38ef6-87ef-d1f0-720f-4db6d307f667@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <c6e38ef6-87ef-d1f0-720f-4db6d307f667@suse.com>
X-ClientProxiedBy: LO4P123CA0166.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:18a::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_|SJ0PR03MB5487:EE_
X-MS-Office365-Filtering-Correlation-Id: dc1284f8-3225-4038-f72d-08dbcfb7cfb9
X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	f8io70FW7CUqrH4yhZVHdPHqiuSzEGQH6DT/MwObomPyfCgG4AYCbHFPkh52UpBQqkrrXwC/xnn2rnkSFca4ugrBAkOvYOVpoy/YGoi5yB0KOVClEmETwstNHxwRExeIV3NH/XkqNff7h/DBs8UF6PyB9HKiGrjfVC4+FWg6WuYrXop/Rv8TjIhKCXv5sK3eaZ97Dmh2EMPwymRIzb71nVMN3jvgC/bkkS0ypqayfFR3AGIuB2RLBlK6TwPW97pFUwf6fR174DaK7RPeTlNax/zpo/1Zg8wdT4tcel6Uvo5KUOQKC/DV9ncpY49hjOU3tmSddPlpLO7Xjsd7v976B6YjktN89bahacC8fuGsZNlZ2EAkhij09rhZQ0JT5pHCXsuo2xqXfSSeds80U3pxo71nix6TWZxgtG76ClyuFAczUvnwHgZ//UirK7+RjjhEzw8G1SImYPATyc7HNesNISRy4EW2aLZNphE7ASUh+cWS+AR3WWid1Udg+y7qIUy+w+jYKrbiEx43bBjBnEcn0ri6CPgV9bq0y5bU0CSGaL4ypYkrq5YX91pWMfOFokHq
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)(396003)(376002)(39860400002)(366004)(346002)(230922051799003)(186009)(1800799009)(451199024)(64100799003)(26005)(6666004)(9686003)(53546011)(6512007)(6506007)(6486002)(41300700001)(8676002)(83380400001)(2906002)(8936002)(4326008)(66556008)(5660300002)(316002)(66946007)(54906003)(6916009)(66476007)(38100700002)(478600001)(82960400001)(85182001)(86362001)(33716001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?bXdEdTFPbkVYVTlVV1NTZWx2eTVkeVdjS2d0T29XdEJvTitDRE1Wbit6V3Vv?=
 =?utf-8?B?VEgxeWRKSElJeTExcGZpYnA5MDFoNEtoUk8zUnBFODN6U29vQXlGT2dSclJF?=
 =?utf-8?B?Q1MwNHliZzBuWE5RUFo0M3kyYldzbStJWUh4cHJEUTAvUTF4RVlHb2xTN2dM?=
 =?utf-8?B?cktLYnM1ZDkrQ2F0aTIxbklVN2hpZkMrVXRST2ttMjB4TUkyOFNtSGVVYjhK?=
 =?utf-8?B?bE82UEVrOUx0dkErLzlsd09qZ3JqVzMwMzZVYjZGUnIveHNiVlBtTTI0VjBB?=
 =?utf-8?B?SEJkcnRJcEc2NkdjU20wRTlEanJBSWo2K0dWSGtjWWhIUWE2S2pkTlMyckhD?=
 =?utf-8?B?YXVHUmJJeUYvZzVsb1M0Q08xNFkxOFg0NjlOZlFOb1ZnZGdsZVJaVENYNWJ5?=
 =?utf-8?B?SmFsREZ5cDczRjRYdzZleUZtcDIvZ1VRT1l5b29kME1uYVFmZGNETGdid1Ev?=
 =?utf-8?B?SWR2dUZWZml2cTcwVVZGOU9sUENMSStNL2pGS08xWkhwbkczdU1sTVdrWkFr?=
 =?utf-8?B?eVRjVjRrOGNYTEpFVW5Ec0JQVDRaWU15SzduMS8wTzVFWWcvZmJIY3N4a1oz?=
 =?utf-8?B?UXl6Wk1yZFVRSUpFMm9aOG1hcmdKVTBGQS9xQitkdndUNjR2QTNiSkNyVzZL?=
 =?utf-8?B?NkVVNzB3bWZHcitsNzNpVnd3anR4Y000cndydGV4bWkxazQ5RmQveWNGc2ZT?=
 =?utf-8?B?amJHRVZTbEZocGF5NDI3UVZ2bEtZRFpqeXFjWnlUQnV1ZjVoRjhuL3dMUmEy?=
 =?utf-8?B?R2VWSDVSN0tid1lRU1NjNkhtdlBlYm53OHZtd0UyVGI5M0JiUzJRSmNScStq?=
 =?utf-8?B?NEpxOTlURUoyUnRZREpac01nSFlBSzg4WjZhcFY2ekJZYjR6QUFndnVDci92?=
 =?utf-8?B?bGVUT1ArYXd3dkdaMnArUEw3Wk1SMmQ5V1k5N3VwSWVGT1dpMS9IZEhwRG1Z?=
 =?utf-8?B?RlRJZE4zcDNyN291aUFLMitmNGhpUElMVmhja0FhVDBWMmNaS2tXazJ0SGgv?=
 =?utf-8?B?VWYvZDFQREFrdVExVXRjNlZReXBtbGpURnhvZ3B0a212eWlzNUdpTkdhc3FI?=
 =?utf-8?B?eXZ0dU40TWsycnh4UkkwV3dqVlNxMmNVQUFna2RzUXlUNXVzK2xXa2JPdVY1?=
 =?utf-8?B?azh4YWRqbCtTWE54bDdtWG1pZGVQVmQ2eGJZeDM3Nm9vNGQ1bkdJekxXZ2Nn?=
 =?utf-8?B?UnU2V014ak9FRjJuZWhxTFdPVHJ4UUNyUklDNC9SS3BsK2ZUZXdvNVlYWURW?=
 =?utf-8?B?NTFyV3R6TnM5YjZoUjVEd3RDRy9xaU1XT0c0YnRWZ25qSll2Mmp3RDZzekFw?=
 =?utf-8?B?QUhmMTNLWmF4SUJ5UER0VmpvcjBBaTBCbWR3bFZROS9FekVYU0FwVDd0cDVP?=
 =?utf-8?B?ZFA0THBaUFlCT285Ymd1eXNFcWlVL04yN05sYStpeXE0Nm01WkJ5NEpMUmtv?=
 =?utf-8?B?SmVsM2xQZEVEQjBQQkRkM1FJMEt2MTQ4R1Y5MTM1Y0d4eEdCcFhyZ0hSdjky?=
 =?utf-8?B?azVIZ1ZNemdhSVR4MWI4UXYzT1lmUmh5dFlNQ2NvZmpJYWcrUXBlVDZiUlFD?=
 =?utf-8?B?UDN2bkRvSVl1bmVpTHFSRjZZK1dHb3FQcUdvS2xoTG5RRGpxK2swQnBqcGk2?=
 =?utf-8?B?a0xSL3NMdEkwV2FCQTNtTjFNa3BqVE4wQm5RRzJwU25kVk1udVJsTGlTdjBx?=
 =?utf-8?B?aXQwcHdNU2lraUl5QndjSDNwc2pkQ1VOZzNTTnQySUYzNlQ4NUJmTmtjUmw3?=
 =?utf-8?B?UUtTckNYeUxUdFJDOS94QVhMVE13WnR0TnhLWGpmb0dGT2xQVjk4QUlqUHZ3?=
 =?utf-8?B?Vm9LK3d3OWx0ZkpkMVhiZHhaN2FML2pibld5QlBodE9ldHlNUkdINEt5cGlC?=
 =?utf-8?B?a1c0NTlwRFg0aW5nWnNyRldxcU9IWC85T0JDd2RtcDFlWmdLRmdYRnZINGhK?=
 =?utf-8?B?YXE2Z28wNWJ0R1AxVnkzMzhSb0tYZWY0NFNyRGprK0g3Ni9lWURoKy9WN0VZ?=
 =?utf-8?B?UUdTM1lEOUhIVkwvTTRVbUttREhaQTlvbk1YS2V0ZEphclpYYU5ZY2NQQjdu?=
 =?utf-8?B?WnhLbzNlKy9sdHBPZWVEa2NyNXE1RGptb2ZFYkgxMnRlU3NVOHZoRjc2MXN2?=
 =?utf-8?Q?CuMA1L8a3I30r1rQRVdFw65tZ?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	tXVLnrSuzYYE9SswO5D7nIUwu4B3CHgrFMUn1b0EcWPW8KR/OB1xiCKGnJIrivVzLcr1eqeGuS9pirzG3bOb/V3uP3AXCSnnZXFJM0ShPwjoYvEmG7MQZb+44hH3VrabcK1TRub0qVB5VkzXvuwMNQNaZ3FUP2F3IweGO6ayd3afS6QZLqkWTZ6C5fi+4cwt5pymi05OBAh42G7yGQtc6I64nPpLHGqXzjrlJDsCkyNcaQpVZQKg/U1cF/9lxawDdI2I4MsvZf7AF0DqPC6WlQprliGpIYmZda8ZNOF6UKzJEB4bXMZPwsHLVdslWK2HADIkOKB7nKoi9TG59/zj+injYMCYIGUBlIw202oiBYZBBTawqHicRfDZ6iu47MdsSUQbLnrGNwdrH1s6AqJvmk4YpWX+hMrrMu1iYz6Bbs548ivuiZNYjMU+8/AYXP/RsJ0OIs00GmI3pbO3PaY2jS0QFXntypkqBksEqsBcple01uTZ7SZPxRBA0w/KfqpuCS+WBjz4dIEYbeEHQIM1FYO9tAs2WfYAYtvSuKz5EniHOBegnD6F6SbdN+OLexkCORSyUj6PZdUZyA4wJLSOzNjf4XQyZxdrl9GepllzIAxzUhsRzCFtsXCXi47bIIlK9iM5LBDy0dixtBxmyiikT10hoyAmS/WzasFLIDjXoOsA7RBVegoJlPEVrVzPyt1shuPL2X9T+q8/gL8hxqAuzLtoz+kqOiOPiwNO8w61p987j/9uAps4OwCYZrXhPNEMgpmw5CdmEvg8N0CSeh2+PGnQw80e9Fy1wdlXZ5ZvHdQl0BuBdji+/FfJ3ZlKavW5RNGDqVJvisO/eassMQAOKxxm0geUAsE9F6ldAsodNBU=
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: dc1284f8-3225-4038-f72d-08dbcfb7cfb9
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Oct 2023 08:54:17.7085
 (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: JAu19gdR4yf2IVRpxwhk9FDySBfmszZH3LFLOYT/E5Rsu6i1x4nt6EsEMRZP+p03IQtm9qwzIiTcSGT12hDV0A==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR03MB5487

On Wed, Oct 18, 2023 at 09:54:15AM +0200, Jan Beulich wrote:
> On 17.10.2023 15:09, Roger Pau Monne wrote:
> > SAGAW is a bitmap field, with bits 1 and 2 signaling support for AGAW 1 and
> > AGAW 2 respectively.  According to the Intel VT-d specification, an IOMMU might
> > support multiple AGAW values.
> > 
> > The AGAW value for each device is set in the device context entry, however
> > there's a caveat related to the value the field supports depending on the
> > translation type:
> > 
> > "When the Translation-type (T) field indicates pass-through (010b) or
> > guest-mode (100b or 101b), this field must be programmed to indicate the
> > largest AGAW value supported by hardware."
> 
> Considering SAGAW=3 was reserved in earlier versions, and considering SAGAW=4
> and higher continue to be reserved, how is one to write forward-compatible
> code? (In retrospect I think this is what mislead me to wrongly use
> find_first_set_bit().)

Oh, my spec copy still has SAGAW=3 reserved, only bits 1 and 2 of
SAGAW are not reserved.

> Furthermore, which version of the spec are you looking at? The newest public
> one I found is 4.1 (-016), which only mentions pass-through, and only as a
> 2-bit quantity. (Doesn't matter much for the purposes of the actual code
> change, but still.)

It's an old version, 2.4 from June 2016.  I've now picked up the last
4.1 version.  I indeed see the changes you mention, so will update the
commit message accordingly to pick the wording from the new spec
version (even if we don't care about the guest-mode.

I'm kind of confused by the removal of the guest-modes, but we didn't
use those anyway.

> > Of the translation types listed above Xen only uses pass-through (010b), and
> > hence we need to make sure the context entry AGAW field is set appropriately,
> > or else the IOMMU will report invalid context entry errors.
> > 
> > To do so calculate the IOMMU supported page table levels based on the last bit
> > set in the SAGAW field, instead of the first one.  This also allows making use
> > of the widest address width supported by the IOMMU, in case multiple AGAWs are
> > supported.
> 
> To truly achieve that (with the 5-level spec), ...
> 
> > --- a/xen/drivers/passthrough/vtd/iommu.c
> > +++ b/xen/drivers/passthrough/vtd/iommu.c
> > @@ -1328,7 +1328,7 @@ int __init iommu_alloc(struct acpi_drhd_unit *drhd)
> >      /* Calculate number of pagetable levels: 3 or 4. */
> >      sagaw = cap_sagaw(iommu->cap);
> >      if ( sagaw & 6 )
> > -        agaw = find_first_set_bit(sagaw & 6);
> > +        agaw = fls(sagaw & 6) - 1;
> 
> ... the mask here needs widening to 0xe. But see my forward-compatibility
> remark above: It may need widening even further. Yet I'm not sure our code
> is uniformly ready to handle levels > 4.

Hard to tell, I'm not sure we have a system with SAGAW bit 3 set to
test with, will have to check.

> As a result I think we need to
> further alter the use of context_set_address_width(): We don't necessarily
> want to use the maximum value with CONTEXT_TT_{DEV_IOTLB,MULTI_LEVEL}.
> Specifically I don't think we want to use levels=5 (aw=3) there, until
> such time that we support 5-level page tables (which as it looks right now
> may well end up being never).
> 
> Furthermore just out of context we have
> 
>     iommu->nr_pt_levels = agaw_to_level(agaw);
>     if ( min_pt_levels > iommu->nr_pt_levels )
>         min_pt_levels = iommu->nr_pt_levels;
> 
> With fls() instead of find_first_set_bit() this won't be correct anymore.

I think this is correct as a long as the context entry address width
field is forced to iommu->nr_pt_levels.  min_pt_levels needs to
reflect the minimal paging level used by any IOMMU on the system, even
if smaller page table levels are supported by the IOMMUs those are not
relevant given the unconditional setting of iommu->nr_pt_levels in the
context entry.

> Yet looking at the sole use (and depending on the resolution of the other
> issue) it may be a mere matter of renaming the variable to properly
> reflect its purpose.
> 
> Taking together perhaps:
> - nr_pt_levels needs setting to the larger of 3 and 4, depending on what
>   hardware supports, for use in non-pass-through entries,
> - a new max_pt_levels field needs setting to what would result from your
>   code change above, for use in pass-through entries,

It needs to be a per-IOMMU field, as I would assume IOMMUs can have
different page table level support on the same system?

> - min_pt_levels could then remain as is,
> - for the moment we ignore the forward-compatibility aspect, until the
>   underlying principle has been clarified by Intel.
> 
> A possible further complication then is that we will end up switching
> context entries between different AW values. That's not an issue when
> we use CMPXCHG16B or transiently clear the present bit, but our best
> effort fallback would likely be of security concern then.

We would need to update the AW context entry field unconditionally in
domain_context_mapping_one().

Hm, it's likely more change than what I was expecting to perform at
this point in the release, but I guess we cannot ignore the fact that
SAGAW might now have bit 3 set and hence passthrough mode is broken on
such systems.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Wed Oct 18 09:15:32 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 09:15:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618459.962121 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qt2eD-0002mE-AV; Wed, 18 Oct 2023 09:15:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618459.962121; Wed, 18 Oct 2023 09:15: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 1qt2eD-0002m7-7w; Wed, 18 Oct 2023 09:15:25 +0000
Received: by outflank-mailman (input) for mailman id 618459;
 Wed, 18 Oct 2023 09:15: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=EezS=GA=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qt2eB-0002lr-8b
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 09:15:23 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur04on2059.outbound.protection.outlook.com [40.107.7.59])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id dc8e32f7-6d96-11ee-9b0e-b553b5be7939;
 Wed, 18 Oct 2023 11:15:21 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM9PR04MB8381.eurprd04.prod.outlook.com (2603:10a6:20b:3b5::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.34; Wed, 18 Oct
 2023 09:14:52 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%7]) with mapi id 15.20.6907.022; Wed, 18 Oct 2023
 09:14: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: dc8e32f7-6d96-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=lrqYr3QRDC+NqcKXfmmXX8QOjHfla2xfuZCj5yTjtwrIiswUp1C4Zb0ZRerNX1qtlWxL7TxPM+wvV1XcAfNOEgEPawNgC4b+NKl3taVq8LwhxrccTQPwhlHf+mVo2aewkmpCtF3eBe4l0yzXNRj8eI+Fc51yfEKIROATNZXqGJKI+xjAIH0qIfW3obJMCK16vIG5PXwOyUbVCjj9PkPiy6OjwORZHHBg8/oYOuEqhivVfTN1oxyHDJePArivrDwMC8RTzuMpW9NRj609BuJDqnHmAF58TFT3uEzz3OUA49DPyrFdFS9FWMMWo7yYZ7MDSnXc76my70IxUelvNNJIEQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-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/d9klQd5LsNya+up6vzr0ff+wdYeA6/XnAet6JRZuk=;
 b=dhxhS1p4MqzWAXWxh0I4pRkYl8qHxg7kc0MNXhSZP1oRAAVdbUJviL4xR+O2nXbWTTbvki++/hA2Z46vOsZcfihMs3rRo5cm6Pp2vPPFODTaTo/bVCEifPjjO2Qltu9HYCUDkXZN5x1HqPdu80REDw1h8qtTYIg2axM2JuEaQrsMAVX9fCYsjUp9EtD02G3PtIQ1O7y4J00B3XmzOQkOGtxtj59Z10LpsYP+E4627yvK6kj7WxwVwTLVQ3fJuaf51koVvlFYzizvh6bcRhvWc5NrtWcHqKEUIb0CDDDzRMeCiA7U0OP2Usf9djsEzVmhXl8XzbwFQeTE9gDp1ziyeQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-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/d9klQd5LsNya+up6vzr0ff+wdYeA6/XnAet6JRZuk=;
 b=MMdKbN1c4aw/gLscFuBDJRtPbohhwmotAW3wklfDNnHb8AnTyMw+xzgQ4PKtDcJbThgPYswV219Y6glWBvV9neuK4OxG1oZfHZeGVnskPCzfwowuVV42H4wKwH1pWNsMUUoZlqp3NHYXunm/imciH7TvwEhIxPDUOUEn6wDD8mnSsf47XyafmGEyx5r6QkVzjV5ofrq92c8Nkc0dtTg8VA1p9DAzaeRgEHEetDTvhwOAsB9umTWwGAq11Jm4ZhmyQf1n8k+ww0ptMKUg4Bvou7bmOLCZoSexkuR7gWlBGYMBmefJ0tvi729FZ7lYfVhyLv9xZYGdQ+rCzVia5g5grw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <16f079c9-4da0-8cc9-b7da-2c00995ab34b@suse.com>
Date: Wed, 18 Oct 2023 11:14: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 for-4.18] iommu/vt-d: use max supported AGAW
Content-Language: en-US
To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
Cc: Kevin Tian <kevin.tian@intel.com>, Henry Wang <Henry.Wang@arm.com>,
 xen-devel@lists.xenproject.org
References: <20231017130943.18111-1-roger.pau@citrix.com>
 <c6e38ef6-87ef-d1f0-720f-4db6d307f667@suse.com> <ZS-dM2TFYefJ272h@macbook>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <ZS-dM2TFYefJ272h@macbook>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR4P281CA0087.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:cd::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_|AM9PR04MB8381:EE_
X-MS-Office365-Filtering-Correlation-Id: e514c96a-7557-46bd-fc60-08dbcfbaaf66
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	X8SKSKuKrZItTqbqee1tn4q/r44E6R5p3jDHMMhflJoLFRz8BmtLWQCKWU9KGKxkcN4jgoVcDwBMAJR8L5PlPRZRRvV7hV1nE+Xd7vnSrSu7E6Qd6VmHeKAKy1l6TeK0rPWderl0tBeEmwS67tFLCPrCgTg6jUyMjmKbWR8QgSMmgFGi+at0akfNbRfxDryZB72iKG39F1ul+0CcEaZicYJnarsBMb13xR1AFciCvrFX3qYUWUacK83yKandozo8oY8jzBJMaZkCjGW6xwtBmeODxU3z5UrNx8daoEvzCLKCWiOEF7TU0dsOS7GkkEKXinJu1IWI23dOEA1SrMDGFf3CttHhnArFxy8bDdSg+0h8IcrTTwexGEIFUzB1wtsJraSBeYmbbj5YdlrsAxIT9dRa4TgqsQt33LGvSKnwVQ3iUW0hYHO32m8I1QaPx1/22jQkiKXtQdjMJn9SnW/NwoR4j5688Dc/e+W1oeDqKPdTMy+1h2wAQfCO6/tnyLnrmNuwNyrcrfUraV9nye//MHNYYLBZ8AxVk69Y0j+ICDcVcgpu9x+pQWFLPm/+wre7KFwGqDwbXbapFVVYDc1eYKYLw/PXRv5ZwMYLCm6NuH3DFC4hb9R+jyWUZp31n2GPi+XPl66ofh/Npru2iVvOHA==
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)(346002)(396003)(376002)(230922051799003)(64100799003)(451199024)(1800799009)(186009)(8676002)(66899024)(8936002)(5660300002)(4326008)(31696002)(41300700001)(2906002)(86362001)(36756003)(26005)(38100700002)(6506007)(2616005)(478600001)(83380400001)(6512007)(53546011)(31686004)(66946007)(54906003)(66556008)(6486002)(66476007)(316002)(6916009)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?WksrNHVtNm5USldjVUxCcVdxeVQ2K3JOZ1JwUzNrWXVzZXQyM0FIVVRFUzdV?=
 =?utf-8?B?Y2tzM0t3QWNLUjMrcjVZeFZYNlRZcS9MZFNvb3pBdlk4djk1eFpXMGhuMU83?=
 =?utf-8?B?Ymp3Ly85OGFDRjhCOXl4UWY1dmwvOVFTV0FZWnMzK2lrVzZudWJDSzlobXlN?=
 =?utf-8?B?K3o1NTBaeHRhcFdEc2NNTm00SGZXazJ3SW5PdkFjZ2UyRUhlUHphd01RZWUz?=
 =?utf-8?B?ejQ3VzVhaEtvdkpoTU1UcWNaUmtTZi9tbzlRbzZzSlM0KzF5VjdiNEM0WFNn?=
 =?utf-8?B?aXVabytLcUp0OEZjMkk4YS9rUEFLeEhpVGQ0VFg1WHpyZmhKRXpHNHpRNWcw?=
 =?utf-8?B?bEFYeFAwRGlta1M1OC9YdVViTkFZcklnalFhS1E2QW92Tzk3TXRsMmQ4UVhs?=
 =?utf-8?B?ZFBqZk9yNWRsREpvZ0FteE9pTWpoclpZUUJydWdKZ0RqcVZJMEY2NUtYQXNH?=
 =?utf-8?B?TjdkM1J2Vk11S1VCUG1kaGc1WlFhZytJODlCaElPSVBpMWZXWWJlalhTVG1u?=
 =?utf-8?B?bCs0czhmOHZFdUVtbEUxZFM2YjV3QzQyN0hKRFFMb0U3TDBrVURkOXY3bTVl?=
 =?utf-8?B?aklINVQ2dnN2YWhQN2lreVRiUjhWZU1rZGM0L2ZNWlNwLzJhcmZGcFF1cjBz?=
 =?utf-8?B?QnNrcDZndGFHL1ZpVmVyZkxra0lwNkFHOVJhNGg1akgxLzNEV3RqMzF0dXBW?=
 =?utf-8?B?cDZrazdZNHM1cm1qcXZLSzRzYUNPUFlkNWpselhGUVdUQkNFL01oVG95UVhK?=
 =?utf-8?B?OG1nSHJEbmdSMnNldUZYR3RpYUltRng0TUh1cW5tUGVNQnVvWkw3cWdkdzFW?=
 =?utf-8?B?RGtwbXQ0amphNng4cyszWlpmR1ZTcUsxS3JUaGE2RzJpZ0doUUFWMXRlMFdL?=
 =?utf-8?B?cnpkUzNOVmJCZWI3RVBUU3hUN1VrT0tTcUJOdlBTaTNvcTV4MCtiem9wazlB?=
 =?utf-8?B?MnpVWjZwVTIxRVh0MkhYYlNkamtVc1hyc2ZMVG5yeEZUQ1hzS2l5eFVzVFcw?=
 =?utf-8?B?ME5HdlR1Y21xMHV2eGRrcHk4bHFTL2RsNG1pWDZ5c0o3VjJodVZHUnBpTzlM?=
 =?utf-8?B?RUtnN0E2aFhyMEwrZkhWZWxLTVVJaklreGJCSlI5VERFanQ3bWtwNzByOHBZ?=
 =?utf-8?B?TGpXUGJVMXpTRzFEWGF4THlEdUVZcCttY3g2UWVOejZuTi8vMGpLbjN6em5h?=
 =?utf-8?B?Z1diVUpwTkVzS1FIMnh6dktVbERodDF4NXdPaDNrVzFQaVF5ZGRLNXVPakN0?=
 =?utf-8?B?Szg2SnB2N0laU3RYOU82c3YwM3l2azZ0K3dRSlU5OExBYXFvZWxmT3hHQUg3?=
 =?utf-8?B?c2dwbkp5dEg3dWgzS2pIN0o4KzZ1QTJmQUxwazk1eklGODkrM1ZDalE5dnR0?=
 =?utf-8?B?Z0RITjl3dHRxWU45Kys5SFJLVWYveTk5NTFGa0c1Z29PS1ZJYzhMWGZheVpr?=
 =?utf-8?B?alZCOGJVVklHMnVNdWV3dGFVcnE0UGRZN2NXUlRjRHdpWDlTejNaQ1BpRGFG?=
 =?utf-8?B?OHlVY1djQnlNYXJ5UUEyeEtVSnpLaHJZaXVOalZ1UmZ6UDJjcjQxcERTK1ZH?=
 =?utf-8?B?Ny91d1p1blBoMnAvcVRyMHVRWU1jTmNYa0FjN0tPakR0WFJKd2wzYWlwUUIy?=
 =?utf-8?B?ajBDdW92NnhBMnhDUUd6SENGVE1jdjErZ0hzTDBwTVlVbCthVVp0QWlYb1Jr?=
 =?utf-8?B?N1VxOXZjTllSWm1DVFdYMnAyNFdQKzJPR0N4eWJqdUdrbFpXVVBwTmU4a3M2?=
 =?utf-8?B?cllldUMrZmUzT1BhNXhEQnE2bFo2bnllbmpQajMrQ3FEMHpFZUVQWDJZWnhN?=
 =?utf-8?B?OHB3MWJvV3BXQVNzWTVSd1FTWTFWeFRLanFRbFhEZWI5VkVRRHRMZHlrakta?=
 =?utf-8?B?cDdBVjFDV1NuOVVnWjBOeVpGc0laeVVVQ0w1WDMxT2lUZ1VZaVAwM1BrSTl4?=
 =?utf-8?B?aU9uYUpkcmRFd2xtaFlhdWcrdzNwVTYxRFRwWFZvblltNXQ4Wm1NcXd5WmhG?=
 =?utf-8?B?emNxdkdwbWF2UktoR3hEU2VSTktJWkFwSGJKZG5rQXRUZVFHK2ZzS0ZtV2pV?=
 =?utf-8?B?aXVQY1k3VjhaeSs3M0JSOWtodjJrT2VKLzY1amwzUmlCZzN4a0hLZ2xOR3Nu?=
 =?utf-8?Q?f5i8g51NSBD2TcNs0So+F6f2i?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: e514c96a-7557-46bd-fc60-08dbcfbaaf66
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Oct 2023 09:14:51.7854
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: Ys/XCH1q5PSYE+nXDDeQ1+iitQ68D4zRowbJ6XewzQuE/AwxUClRwzEa5h6ej7DsZFs699D2V95Hibs9S0bR3w==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR04MB8381

On 18.10.2023 10:54, Roger Pau Monné wrote:
> On Wed, Oct 18, 2023 at 09:54:15AM +0200, Jan Beulich wrote:
>> Taking together perhaps:
>> - nr_pt_levels needs setting to the larger of 3 and 4, depending on what
>>   hardware supports, for use in non-pass-through entries,
>> - a new max_pt_levels field needs setting to what would result from your
>>   code change above, for use in pass-through entries,
> 
> It needs to be a per-IOMMU field, as I would assume IOMMUs can have
> different page table level support on the same system?

Right, hence why I also said "field".

>> - min_pt_levels could then remain as is,
>> - for the moment we ignore the forward-compatibility aspect, until the
>>   underlying principle has been clarified by Intel.
>>
>> A possible further complication then is that we will end up switching
>> context entries between different AW values. That's not an issue when
>> we use CMPXCHG16B or transiently clear the present bit, but our best
>> effort fallback would likely be of security concern then.
> 
> We would need to update the AW context entry field unconditionally in
> domain_context_mapping_one().

Plus (just so it's not missed) purge the corresponding assertion.

> Hm, it's likely more change than what I was expecting to perform at
> this point in the release, but I guess we cannot ignore the fact that
> SAGAW might now have bit 3 set and hence passthrough mode is broken on
> such systems.

Ideally yes. Of course for the immediate purpose we might go with the
smaller change, but then with the description mentioning (and
justifying) the omission. If there are 5-level IOMMUs in the wild, I'm
afraid that wouldn't be a (good) option though. Otoh people shouldn't
be using hwdom-pass-through mode in the first place ...

Jan


From xen-devel-bounces@lists.xenproject.org Wed Oct 18 10:07:25 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 10:07:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618469.962131 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qt3SI-0003Tn-7e; Wed, 18 Oct 2023 10:07:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618469.962131; Wed, 18 Oct 2023 10: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 1qt3SI-0003Tg-4o; Wed, 18 Oct 2023 10:07:10 +0000
Received: by outflank-mailman (input) for mailman id 618469;
 Wed, 18 Oct 2023 10:07: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=MOie=GA=bugseng.com=federico.serafini@srs-se1.protection.inumbo.net>)
 id 1qt3SH-0003Ta-3I
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 10:07:09 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 16af6093-6d9e-11ee-9b0e-b553b5be7939;
 Wed, 18 Oct 2023 12:07:05 +0200 (CEST)
Received: from [157.138.166.97] (unknown [157.138.166.97])
 by support.bugseng.com (Postfix) with ESMTPSA id B41BC4EE0738;
 Wed, 18 Oct 2023 12:07: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: 16af6093-6d9e-11ee-9b0e-b553b5be7939
Message-ID: <da6e11ef-f35c-45d7-afcb-8c9b21defd9a@bugseng.com>
Date: Wed, 18 Oct 2023 12:07:03 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN PATCH v3] xen/mm: address violations of MISRA C:2012 Rules
 8.2 and 8.3
To: Jan Beulich <jbeulich@suse.com>
Cc: consulting@bugseng.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>,
 Shawn Anastasio <sanastasio@raptorengineering.com>,
 =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>,
 Henry Wang <henry.wang@arm.com>, xen-devel@lists.xenproject.org
References: <eedcfeb8d1c81527b7e18fcc0eca252577f00035.1696344012.git.federico.serafini@bugseng.com>
 <d7cd7a02-b960-384e-4af2-f70b425e5ad1@suse.com>
Content-Language: en-US, it
From: Federico Serafini <federico.serafini@bugseng.com>
Organization: BUGSENG srl
In-Reply-To: <d7cd7a02-b960-384e-4af2-f70b425e5ad1@suse.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 16/10/23 17:26, Jan Beulich wrote:
> On 03.10.2023 17:24, Federico Serafini wrote:
>> --- a/xen/arch/x86/mm.c
>> +++ b/xen/arch/x86/mm.c
>> @@ -5901,17 +5901,17 @@ int destroy_xen_mappings(unsigned long s, unsigned long e)
>>    * a problem.
>>    */
>>   void init_or_livepatch modify_xen_mappings_lite(
>> -    unsigned long s, unsigned long e, unsigned int _nf)
>> +    unsigned long s, unsigned long e, unsigned int nf)
>>   {
>> -    unsigned long v = s, fm, nf;
>> +    unsigned long v = s, fm, flags;
> 
> While it looks correct, I consider this an unacceptably dangerous
> change: What if by the time this is to be committed some new use of
> the local "nf" appears, without resulting in fuzz while applying the
> patch? Imo this needs doing in two steps: First nf -> flags, then
> _nf -> nf.
> 
> Furthermore since you alter the local variable, is there any reason
> not to also change it to be "unsigned int", matching the function
> argument it's set from?

If you are referring to the local variable 'flags', it is set using the
value returned from put_pte_flags() which is an intpte_t (typedef for 
u64). Am I missing something?

> 
> Yet then - can't we just delete "nf" and rename "_nf" to "nf"? The
> function parameter is only used in
> 
>      nf = put_pte_flags(_nf & FLAGS_MASK);
> 
> Jan
> 

I thought about it but it will introduce a violation of Rule 17.8:
"A function parameter should not be modified".
It is an advisory rule that is not currently accepted but one day
it may be.

-- 
Federico Serafini, M.Sc.

Software Engineer, BUGSENG (http://bugseng.com)


From xen-devel-bounces@lists.xenproject.org Wed Oct 18 10:16:31 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 10:16:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618473.962142 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qt3bG-0005Yl-3c; Wed, 18 Oct 2023 10:16:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618473.962142; Wed, 18 Oct 2023 10:16: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 1qt3bG-0005Ye-0L; Wed, 18 Oct 2023 10:16:26 +0000
Received: by outflank-mailman (input) for mailman id 618473;
 Wed, 18 Oct 2023 10:16: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 1qt3bE-0005YU-HU; Wed, 18 Oct 2023 10:16: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 1qt3bE-0002Hs-BH; Wed, 18 Oct 2023 10:16: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 1qt3bD-0007BZ-SF; Wed, 18 Oct 2023 10:16:23 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qt3bD-0003iP-Rp; Wed, 18 Oct 2023 10:16: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=LzsdJvbYCnHd4LQhDk+5Wewa3dIWMl3nPRWHtPAbXPY=; b=P0ysF5jgZU63f4qrCFUGa751VU
	diGvyxTOz4O2LWB5Z8Yzi89CjidBRLyeAl506KDgQ4VmvgS+WpuhMSR9lQRG02yagxChz4xGm/6rH
	SGdk0SffrgooWvMzHjL0LhGsG4AxWwFIw7fugVlkvhI2JBDN6r9LcYLsVOBiM3iFX3vY=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183405-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 183405: tolerable FAIL - PUSHED
X-Osstest-Failures:
    linux-linus:test-armhf-armhf-libvirt-raw:xen-boot:fail:heisenbug
    linux-linus:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw: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-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt: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-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-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: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-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu: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-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-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-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-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-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=06dc10eae55b5ceabfef287a7e5f16ceea204aa0
X-Osstest-Versions-That:
    linux=213f891525c222e8ed145ce1ce7ae1f47921cb9c
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 18 Oct 2023 10:16:23 +0000

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

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-armhf-armhf-libvirt-raw  8 xen-boot            fail pass in 183409-retest

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail in 183409 like 183393
 test-armhf-armhf-libvirt-raw 14 migrate-support-check fail in 183409 never pass
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183393
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183393
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183393
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183393
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183393
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183393
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183393
 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-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-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          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-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-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-qcow2 14 migrate-support-check        fail never pass
 test-amd64-amd64-libvirt-raw 14 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-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-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-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                06dc10eae55b5ceabfef287a7e5f16ceea204aa0
baseline version:
 linux                213f891525c222e8ed145ce1ce7ae1f47921cb9c

Last test of basis   183393  2023-10-17 02:12:22 Z    1 days
Testing same since   183405  2023-10-18 00:40:22 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Arnd Bergmann <arnd@arndb.de>
  Baoquan He <bhe@redhat.com>
  Dan Carpenter <dan.carpenter@linaro.org>
  Helge Deller <deller@gmx.de>
  Jorge Maidana <jorgem.linux@gmail.com>
  Kees Cook <keescook@chromium.org>
  Linus Torvalds <torvalds@linux-foundation.org>
  Sergey Shtylyov <s.shtylyov@omp.ru>

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                                 fail    
 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
   213f891525c2..06dc10eae55b  06dc10eae55b5ceabfef287a7e5f16ceea204aa0 -> tested/linux-linus


From xen-devel-bounces@lists.xenproject.org Wed Oct 18 10:35:06 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 10:35:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618478.962151 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qt3tD-0000dM-Kb; Wed, 18 Oct 2023 10:34:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618478.962151; Wed, 18 Oct 2023 10:34: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 1qt3tD-0000dF-I7; Wed, 18 Oct 2023 10:34:59 +0000
Received: by outflank-mailman (input) for mailman id 618478;
 Wed, 18 Oct 2023 10:34: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=EezS=GA=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qt3tC-0000d9-Jj
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 10:34: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 fb0c2a3b-6da1-11ee-9b0e-b553b5be7939;
 Wed, 18 Oct 2023 12:34:56 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DBBPR04MB7721.eurprd04.prod.outlook.com (2603:10a6:10:1f6::18)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.36; Wed, 18 Oct
 2023 10:34:53 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%7]) with mapi id 15.20.6907.022; Wed, 18 Oct 2023
 10:34: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: fb0c2a3b-6da1-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=aD9uc+9HKoOKwBHbI2huLwifqBtN3c77uoMzfYaX+YxxAvELW99BJqfSZXiKpoyRL+GAmZqEsaWZYCE0jVpVvihGomXp3LABAMzPRzLedIRjhu3DpD4HYAWv+CM+93iDq2qjOyDvjVH4Hl4HD0dAEmqFyqXWET0g4kU0jbWOmmPSOQ/0O/AyfV9MENNah+b5RFEjBdtH+245bkhzlgPYGYrkqE4Xu+fX+9cdxcbaEVr+22QH51yqs8tKx42twaTR9bDykhZj/zzq8V0/o3aPKGy3EaVRHUY2kbYDRvhX4g0w7791//ANoFINPpAbFSweP8wQ2yHvbRfOba2iVdIE/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=+GnZTBOTiaViRjl2hI0BmZXiyG6wGJy7U9euRhgUX3Q=;
 b=R7IqMOgWDhe663JBmiLZV41OX1maf22gkt0aJtKBztJmTSwcnHa37q/GUn6UStL4UpGTVdLoRCsdX6iaDb71BiXAgqLqliKNyeHWMl+6nXB6W8yrka6P3Z97WW0u3UGCK1T8nJ1YaS94n245bxCS8AASvfR88J3AJSdZXR56bQFeV6msyWfDxnjLFcIzSNiwusDBcAS7N25XYueaIir+AxvF1RXpRNPTZ14SwLvLN31mt9honOMe/LkcjCrXceHngkcUlMWOwIkdfzDtYE+SRIm365qiHojcj3Zar1Ipa8pImoyGUXGvce8WRxpbifWPFHhCGqVNMHQ87INZMrJAcg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=+GnZTBOTiaViRjl2hI0BmZXiyG6wGJy7U9euRhgUX3Q=;
 b=kK2RUx/SAWR5kcQy58LQB4icYI4hDvaa0TCVwxua+h6GDA+9AM5HEdCsYeHIlOVnmcMyFFW2+LJQA6ZkC3vi9GRNiwRIK7EVrAkeyH5uBMqS3n0oZ0nSylSy+GkzF/qoozAKfN9Sogt7rCyr0x6zXgQTv5OJP43KUkZtXRG2LXVObp0IWlwsvH59sdbhSmU3Yte974YuxVejA53SWYerUGvQhnYqMSZjjDe5L2omRRL6lhmb1e0599C4nLwPIfbkRb3ntRtXPKFbg2PRECDOSl138PRB3ha/9FKvdxDRQdG6tfLYWfaLXK72TpRVjhneERDXZVbUCD5EzdYNSzQsew==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <bc831c56-6c1a-8aac-2185-b9c36babd1f9@suse.com>
Date: Wed, 18 Oct 2023 12:34:51 +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] xen/mm: 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, 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>,
 Shawn Anastasio <sanastasio@raptorengineering.com>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Henry Wang <henry.wang@arm.com>, xen-devel@lists.xenproject.org
References: <eedcfeb8d1c81527b7e18fcc0eca252577f00035.1696344012.git.federico.serafini@bugseng.com>
 <d7cd7a02-b960-384e-4af2-f70b425e5ad1@suse.com>
 <da6e11ef-f35c-45d7-afcb-8c9b21defd9a@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <da6e11ef-f35c-45d7-afcb-8c9b21defd9a@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0042.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:c7::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_|DBBPR04MB7721:EE_
X-MS-Office365-Filtering-Correlation-Id: 48767db7-3492-4135-aee5-08dbcfc5dd9b
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	oR6W46HKrwtemRvMV9iCnD37geX94xcUFCQTORRNRZNworiD4mYhIyJhBFHmzOBX7bemBlXh/y56FEizq0nHP7kdISAYaEyqgvq18zFgQuUfj/g2ChUDGERL6USN0cVImo/Bjcq3V/7o5Q6eKOe+7QWOASX6c/frIBDDCA2nCXTBYvLTAwftOUQQYeS2XI9biCdlqzH8dThKoVxyOXOiUcLTKVHQazcG0Xs00ywWnhw6zl24Xxig7COYPJ8gr9SQCWrYYArTvrhpCBbVy4MiajFqFS6HdLkv28NDmhx0pOB9RVld83/XI2FmR0h1wYmTlzehAqepYmz1K0jHK/gwInuzHV/QjgIWGhiTpfRiPQ578DBfAIM/Xguo/ZYVh2P0qtEXKTw1MgvK0iHyipmUM4oM6HZHYmvpPhPwBr+J/S4qozUI4Z46Gu8QTL0zo9RpPgwi7Cw10y27dwpSCDwbdLy1J7Y2IsoUwXgoL2qkmOeueu6w3MiRbsUpAGBVKjKNWy1Icef/UPn0uOgnmBo/FAY8CvmZx3MWtp1G2sBuNGr2jHo+zbPd0qpgEl3fVh3rJhNrUNNVOBdlcnIrGYRXKuO1PKS6IlWDYAU5aDd4z9OA3CBmGOlhrAUMPOSlsE9djrtZ7wUFbK02z1pQChWyyw==
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)(230922051799003)(451199024)(64100799003)(186009)(1800799009)(316002)(66476007)(38100700002)(54906003)(66946007)(66556008)(4326008)(8936002)(8676002)(6506007)(6512007)(6486002)(2616005)(478600001)(53546011)(26005)(7416002)(31696002)(2906002)(86362001)(5660300002)(41300700001)(36756003)(6916009)(31686004)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?NzJxQmdHNnpNWkNJU2tDdEdnaDRLRzFHN3NIMWZIL2VvalhNUTU3eU9iRGt4?=
 =?utf-8?B?YkVlSTJtc1lzT0Z2aG90MXlvMEJCNWhHVzZROXR4SEUvLzdFY1ArdkoxQ0dP?=
 =?utf-8?B?Z3dFSGNPcDVjcTF0dC9WVnp3QlI1bWoxMmhiYVJnSUdvb3hLUlpMdUlSenV4?=
 =?utf-8?B?blZidlRoQVF2QjFGT25TY0lML29TNVIrU0xhWVdlMGdmQ082dnVwUWVBdVE0?=
 =?utf-8?B?aEpVN2UrR1dEWWZ4REtRbmR5Q1Q5cWo5dWxvM2FEZDIzTkpZY0pJTVFESy8z?=
 =?utf-8?B?a1FON0M4VDB0S2NwNW1oVFVVN0pPdlU5WjhCNFV1ZVFGbEMxOWN1eG9vYTY5?=
 =?utf-8?B?S0x2K0tIZFZuWmI3QlhYQXJJQ2JNODBkdXp3Z1F4bnlJYUdiTzh0aWN1NWh3?=
 =?utf-8?B?ZG5qWlNXZzRXb0lFSzk2N3pHUFZVZWNoUkNzMld6K1JJcHdQdHhSTTM0MnNF?=
 =?utf-8?B?TUV0M2tzelBFT0swaHJDYkxOdXF4V1ZiWm5Eck1CZ2NjSisrMEFPY3pFVU9o?=
 =?utf-8?B?eit2UWd1YUIyaFZVTkVGcXFodjI3ellBVVVqdjdoRVo0ek93QkJyYlNNQ2xO?=
 =?utf-8?B?akJIVE0yT0pCOUhYcTZ3TG5QYXN3VUdIYmhOWHdSYURRbjBiYllJaGRqMjd2?=
 =?utf-8?B?RjBJSGdTaEV5UVlFWWFzc1l2ZGo4WGNWeVoxMkNZNG9KdUN1TkVabTJ0ZVNX?=
 =?utf-8?B?aWwyNTAvampTTW9FcE5kckNHZ3NxVkIzZHNlSjRGcFAyMFZpRmd1Rk5TMEp0?=
 =?utf-8?B?OCtoMVc3MFpaeVhnQjNJMzZXS3NqYnRnQStmL0MyeWJXRFhmbXdoZndQamxN?=
 =?utf-8?B?S2V4SkpxekNrdjVTa0tFaW5tUWpTQ1pCdUNBdXNEdk1nOU5uUWdMTjVpK29S?=
 =?utf-8?B?M25Ba1VSNTRKNXhYaTFqamNqb0loUnBaTE0rWkx3MmJkY0dOQXZhaXF2UkFL?=
 =?utf-8?B?ZXl4d0ZkZUViZ3ZCVGJZOFRQeXdjMVJ3T21WbHIvVXRiK0cwZnJHTWpSb0Iv?=
 =?utf-8?B?VTlnMUFmQ0Vsa2tZOUxuMzJMNEJqcHpVcTdkZ1dLZ2IzTVIxOXUrYVhtaXFj?=
 =?utf-8?B?MCtOR1dvdnhqUHBtd01mU0NGOTlBQkZ4L0tkZi9WMFRPV0pMa0Fzd3ZnazFX?=
 =?utf-8?B?aEF3N1Q5bFJuY3F6MW1PSmlTU1c5UXE0dTh2VUQ2Rk9kbVZKL0RQSmRWc1l4?=
 =?utf-8?B?ZDBMeTQxRTkxSXpOVTdWODRFRVRsdjRSOXREWnFBNUpzM2ZLL0NCZnFQZTJK?=
 =?utf-8?B?OGdzVlZ2blZ6WDIweHREMXpzL2lkMksraGlWdm1VT2MzL2xlOC9jZGR2Y1Nt?=
 =?utf-8?B?TmpCcE1XcjRKbjFvQU56ZktTczVidWl2TUVMNjVUMzB1NUZxUDFaWVBvY3FV?=
 =?utf-8?B?U3JtZ1B0aWV5SmhEWklFOWh3N1Jxc1RoTTJsREtlbkJYU09sc0ZDOUdUaUNl?=
 =?utf-8?B?WGR3ZURoWkFNRGVuR2tFZEM2MVV5TmcvOUVMVzAraFF1Q1lOZzFad1RhcVpI?=
 =?utf-8?B?am5hdTFJN3hoS3FDd1JaKzZyc2RQeGdpd0MwZXRIR25tUHQ2TVRTRDhpdEsz?=
 =?utf-8?B?cUFXbXl1V3lJSjlMOWhGZklUbVR1VUdQQ1RHNEg1dVEvYy84cXd5TnBIdlZ4?=
 =?utf-8?B?NGdKbDBqcUtrdkt4SHpRR1NBU2w1bnZIaHh4WnViUmpKMlQrRXU4dVFuY1B0?=
 =?utf-8?B?bDNxSzdzd0ZjWVZRRVlkVTV0d0k5eTNwbGFXMWtXVEc0TUhNeFJBejU5emNC?=
 =?utf-8?B?bHJsRTFZMW9GZUlnQU95N3BHdDR3dldjOWhXUGxhWnVpRlZHNHNqK1FwdU84?=
 =?utf-8?B?UTRrNFlraVp1bWMwVTZjdjBaRWpTdGRYWnBBa3laL1liMWU0aDJSQkFWZ1BR?=
 =?utf-8?B?Z3FKajBiaVBCQWtaeWJWYjlaYnlGUWNiVWUvbmFUV2J2aGVnYnFxdm03VHVh?=
 =?utf-8?B?U29FUzNFdmdqRlFWdURnNFl0dEVidkRFMk5EMkJnVFI1ejlwNFZuWElZK0kr?=
 =?utf-8?B?ZW82L1JzQjdmcjYra2FGck0rMjYzMWJOQ0dpbU80elQ5eXkvZnk2bTMvbkll?=
 =?utf-8?B?di85VGJiSldDcWRvQ2JISWtiQ1ROMGZhWU1QWUExeXZYV2xEeTNVMXIrM3VZ?=
 =?utf-8?Q?36Qjr9l4HTsyfgWWmKGDfT+cF?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 48767db7-3492-4135-aee5-08dbcfc5dd9b
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Oct 2023 10:34:53.8055
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 9l5abiYld5cuOhgULzb8ZTxK8OgzSPyE6b8/2vLYsnv6Ut9jUGpSWmicYzvzViOn9XTPBxHO77YagxuTitATXA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBBPR04MB7721

On 18.10.2023 12:07, Federico Serafini wrote:
> On 16/10/23 17:26, Jan Beulich wrote:
>> On 03.10.2023 17:24, Federico Serafini wrote:
>>> --- a/xen/arch/x86/mm.c
>>> +++ b/xen/arch/x86/mm.c
>>> @@ -5901,17 +5901,17 @@ int destroy_xen_mappings(unsigned long s, unsigned long e)
>>>    * a problem.
>>>    */
>>>   void init_or_livepatch modify_xen_mappings_lite(
>>> -    unsigned long s, unsigned long e, unsigned int _nf)
>>> +    unsigned long s, unsigned long e, unsigned int nf)
>>>   {
>>> -    unsigned long v = s, fm, nf;
>>> +    unsigned long v = s, fm, flags;
>>
>> While it looks correct, I consider this an unacceptably dangerous
>> change: What if by the time this is to be committed some new use of
>> the local "nf" appears, without resulting in fuzz while applying the
>> patch? Imo this needs doing in two steps: First nf -> flags, then
>> _nf -> nf.
>>
>> Furthermore since you alter the local variable, is there any reason
>> not to also change it to be "unsigned int", matching the function
>> argument it's set from?
> 
> If you are referring to the local variable 'flags', it is set using the
> value returned from put_pte_flags() which is an intpte_t (typedef for 
> u64). Am I missing something?

Oh, I'm sorry, I didn't look there carefully enough. Which means using
_nf and nf here was probably not a good idea in the first place, when
both are of different type and nature.

Jan


From xen-devel-bounces@lists.xenproject.org Wed Oct 18 10:39:04 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 10:39:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618483.962161 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qt3x9-0001IM-80; Wed, 18 Oct 2023 10:39:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618483.962161; Wed, 18 Oct 2023 10:39: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 1qt3x9-0001IF-5S; Wed, 18 Oct 2023 10:39:03 +0000
Received: by outflank-mailman (input) for mailman id 618483;
 Wed, 18 Oct 2023 10:39: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=Y0YN=GA=antioche.eu.org=bouyer@srs-se1.protection.inumbo.net>)
 id 1qt3x7-0001I9-V0
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 10:39:01 +0000
Received: from isis.lip6.fr (isis.lip6.fr [2001:660:3302:283c::2])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 8bddff4b-6da2-11ee-98d4-6d05b1d4d9a1;
 Wed, 18 Oct 2023 12:39:00 +0200 (CEST)
Received: from asim.lip6.fr (asim.lip6.fr [132.227.86.2])
 by isis.lip6.fr (8.16.1/8.15.2) with ESMTPS id 39IAcwbl000294
 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NO)
 for <xen-devel@lists.xenproject.org>; Wed, 18 Oct 2023 12:38:58 +0200 (CEST)
Received: from armandeche.soc.lip6.fr (armandeche [132.227.63.133])
 by asim.lip6.fr (8.15.2/8.15.2) with ESMTP id 39IAcwoJ022746
 for <xen-devel@lists.xenproject.org>; Wed, 18 Oct 2023 12:38:58 +0200 (MEST)
Received: by armandeche.soc.lip6.fr (Postfix, from userid 20331)
 id D3B1577C1; Wed, 18 Oct 2023 12:38:57 +0200 (MEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 8bddff4b-6da2-11ee-98d4-6d05b1d4d9a1
Date: Wed, 18 Oct 2023 12:38:57 +0200
From: Manuel Bouyer <bouyer@antioche.eu.org>
To: xen-devel@lists.xenproject.org
Subject: Xen 4.18 pvshim console issue (with patch)
Message-ID: <ZS-1wVlZjdAJyUz6@mail.soc.lip6.fr>
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="CpdJGPHSvZKbuyRn"
Content-Disposition: inline
X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.6.4 (isis.lip6.fr [132.227.60.2]); Wed, 18 Oct 2023 12:38:58 +0200 (CEST)
X-Scanned-By: MIMEDefang 3.3 on 132.227.60.2


--CpdJGPHSvZKbuyRn
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline

Hello,
With Xen 4.18, a PV domain running under pvshim doesn't get console input.
This is because the domain id in pvshim isn't 0 (and on x86 max_init_domid is
hardwired to 0), so console_input_domain() will never select that domain
as input.

The attached patch fixes it by translating 0 to the real domain id for
pvshim, but there may be a better way to do this.

-- 
Manuel Bouyer <bouyer@antioche.eu.org>
     NetBSD: 26 ans d'experience feront toujours la difference
--

--CpdJGPHSvZKbuyRn
Content-Type: text/plain; charset=us-ascii
Content-Disposition: attachment; filename=diff

--- drivers/char/console.c.orig	2023-10-18 12:24:57.221891748 +0200
+++ drivers/char/console.c	2023-10-18 12:30:26.072844802 +0200
@@ -478,14 +478,20 @@
 /* Make sure to rcu_unlock_domain after use */
 struct domain *console_input_domain(void)
 {
+    domid_t domid;
     if ( console_rx == 0 )
             return NULL;
-    return rcu_lock_domain_by_id(console_rx - 1);
+    if (console_rx == 1 && pv_shim)
+        domid = get_initial_domain_id();
+    else
+	domid = console_rx - 1;
+    return rcu_lock_domain_by_id(domid);
 }
 
 static void switch_serial_input(void)
 {
     unsigned int next_rx = console_rx;
+    domid_t domid;
 
     /*
      * Rotate among Xen, dom0 and boot-time created domUs while skipping
@@ -502,7 +508,11 @@
             break;
         }
 
-        d = rcu_lock_domain_by_id(next_rx - 1);
+	if (next_rx == 1 && pv_shim)
+	    domid = get_initial_domain_id();
+	else
+	    domid = next_rx - 1;
+        d = rcu_lock_domain_by_id(domid);
         if ( d )
         {
             rcu_unlock_domain(d);

--CpdJGPHSvZKbuyRn--


From xen-devel-bounces@lists.xenproject.org Wed Oct 18 10:43:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 10:43:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618488.962171 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qt41j-0003Jm-QP; Wed, 18 Oct 2023 10:43:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618488.962171; Wed, 18 Oct 2023 10:43: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 1qt41j-0003Jf-Nn; Wed, 18 Oct 2023 10:43:47 +0000
Received: by outflank-mailman (input) for mailman id 618488;
 Wed, 18 Oct 2023 10:43: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=Y0YN=GA=antioche.eu.org=bouyer@srs-se1.protection.inumbo.net>)
 id 1qt41i-0003JZ-MP
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 10:43:46 +0000
Received: from isis.lip6.fr (isis.lip6.fr [2001:660:3302:283c::2])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 3547760c-6da3-11ee-9b0e-b553b5be7939;
 Wed, 18 Oct 2023 12:43:44 +0200 (CEST)
Received: from asim.lip6.fr (asim.lip6.fr [132.227.86.2])
 by isis.lip6.fr (8.16.1/8.15.2) with ESMTPS id 39IAhhAu024783
 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NO)
 for <xen-devel@lists.xenproject.org>; Wed, 18 Oct 2023 12:43:43 +0200 (CEST)
Received: from armandeche.soc.lip6.fr (armandeche [132.227.63.133])
 by asim.lip6.fr (8.15.2/8.15.2) with ESMTP id 39IAhg6U003127
 for <xen-devel@lists.xenproject.org>; Wed, 18 Oct 2023 12:43:42 +0200 (MEST)
Received: by armandeche.soc.lip6.fr (Postfix, from userid 20331)
 id 8D30D77C1; Wed, 18 Oct 2023 12:43:42 +0200 (MEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 3547760c-6da3-11ee-9b0e-b553b5be7939
Date: Wed, 18 Oct 2023 12:43:42 +0200
From: Manuel Bouyer <bouyer@antioche.eu.org>
To: xen-devel@lists.xenproject.org
Subject: Re: Xen 4.18 pvshim console issue (with patch)
Message-ID: <ZS-23ix-CFjbSkGY@mail.soc.lip6.fr>
References: <ZS-1wVlZjdAJyUz6@mail.soc.lip6.fr>
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="0bHS4o3aGSbADqa1"
Content-Disposition: inline
In-Reply-To: <ZS-1wVlZjdAJyUz6@mail.soc.lip6.fr>
X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.6.4 (isis.lip6.fr [132.227.60.2]); Wed, 18 Oct 2023 12:43:43 +0200 (CEST)
X-Scanned-By: MIMEDefang 3.3 on 132.227.60.2


--0bHS4o3aGSbADqa1
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline

On Wed, Oct 18, 2023 at 12:38:57PM +0200, Manuel Bouyer wrote:
> Hello,
> With Xen 4.18, a PV domain running under pvshim doesn't get console input.
> This is because the domain id in pvshim isn't 0 (and on x86 max_init_domid is
> hardwired to 0), so console_input_domain() will never select that domain
> as input.
> 
> The attached patch fixes it by translating 0 to the real domain id for
> pvshim, but there may be a better way to do this.

Small improvement, print the real domain ID instead of DOM0

-- 
Manuel Bouyer <bouyer@antioche.eu.org>
     NetBSD: 26 ans d'experience feront toujours la difference
--

--0bHS4o3aGSbADqa1
Content-Type: text/plain; charset=us-ascii
Content-Disposition: attachment; filename=diff

--- drivers/char/console.c.orig	2023-10-18 12:24:57.221891748 +0200
+++ drivers/char/console.c	2023-10-18 12:41:10.513003560 +0200
@@ -478,14 +478,20 @@
 /* Make sure to rcu_unlock_domain after use */
 struct domain *console_input_domain(void)
 {
+    domid_t domid;
     if ( console_rx == 0 )
             return NULL;
-    return rcu_lock_domain_by_id(console_rx - 1);
+    if (console_rx == 1 && pv_shim)
+        domid = get_initial_domain_id();
+    else
+	domid = console_rx - 1;
+    return rcu_lock_domain_by_id(domid);
 }
 
 static void switch_serial_input(void)
 {
     unsigned int next_rx = console_rx;
+    domid_t domid;
 
     /*
      * Rotate among Xen, dom0 and boot-time created domUs while skipping
@@ -502,12 +508,16 @@
             break;
         }
 
-        d = rcu_lock_domain_by_id(next_rx - 1);
+	if (next_rx == 1 && pv_shim)
+	    domid = get_initial_domain_id();
+	else
+	    domid = next_rx - 1;
+        d = rcu_lock_domain_by_id(domid);
         if ( d )
         {
             rcu_unlock_domain(d);
             console_rx = next_rx;
-            printk("*** Serial input to DOM%u", next_rx - 1);
+            printk("*** Serial input to DOM%u", domid);
             break;
         } else {
 		printk("next_rx %d not domain", next_rx);

--0bHS4o3aGSbADqa1--


From xen-devel-bounces@lists.xenproject.org Wed Oct 18 10:44:26 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 10:44:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618492.962181 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qt42M-0003og-2c; Wed, 18 Oct 2023 10:44:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618492.962181; Wed, 18 Oct 2023 10: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 1qt42L-0003oZ-WC; Wed, 18 Oct 2023 10:44:26 +0000
Received: by outflank-mailman (input) for mailman id 618492;
 Wed, 18 Oct 2023 10:44: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=w+tR=GA=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qt42J-0003ap-TW
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 10:44:23 +0000
Received: from mail-ej1-x633.google.com (mail-ej1-x633.google.com
 [2a00:1450:4864:20::633])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 4ce14b87-6da3-11ee-98d4-6d05b1d4d9a1;
 Wed, 18 Oct 2023 12:44:23 +0200 (CEST)
Received: by mail-ej1-x633.google.com with SMTP id
 a640c23a62f3a-9ba081173a3so1094726366b.1
 for <xen-devel@lists.xenproject.org>; Wed, 18 Oct 2023 03:44: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
 u7-20020a1709060b0700b009b64987e1absm1400982ejg.139.2023.10.18.03.44.22
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 18 Oct 2023 03:44: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: 4ce14b87-6da3-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1697625863; x=1698230663; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:autocrypt:from:references:to
         :content-language:subject:user-agent:mime-version:date:message-id
         :from:to:cc:subject:date:message-id:reply-to;
        bh=cNwnJh9KcCdVDA4XSyK9ke/SjOJDW08Il8p9IYwj+LU=;
        b=dckaFg6lIRf2O+qHBagg1tDjV1ezkpYxBDScGYrJqOxDrWc6r9m1UMhaHVKbVsTJHP
         clCug4bSCEYTEQCM4ZHX3Zu1Di7CJAtWvVzGZIVZUvr/VAZ2TGpvvglB5i/LT0B/y90h
         PEgnSX+o3qu3W14pncyMNH998hDzIFJ5KZmy0=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697625863; x=1698230663;
        h=content-transfer-encoding:in-reply-to:autocrypt: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=cNwnJh9KcCdVDA4XSyK9ke/SjOJDW08Il8p9IYwj+LU=;
        b=ECfrvuMFzTFvWM/6VpE8jKRJC/mkr444vhFwh9jnetofnwOROhLem1QXCxSRr+8M6L
         L1pOWo13BIcrBGDM+qlGsaQSndsaKoUQGZvysQhzkyJ5vQisC/1TP2DcuKc/q+iUAbNI
         vUYwmNnk4f3GFAmPR7K6KvWq9t77TA2cABBfUq2Jjp1NsybLDo+i0tBA6gu3P4uKxYrG
         k4TOL1uTOwfmXvQPLd7wtUP3gepry22AwLbq61pycS+Ut47uaRQzJQp5KSss6azaNg8U
         9RV1vd7b1AGx3HjrWKUykMA5qtcHqyljRf+W86EuXxnHLsCQPJY4i9il21VUu4OSWxO3
         ZDpQ==
X-Gm-Message-State: AOJu0Ywy7VmqPR51r+cvXQi19vE14iTpbEuVmTIOQA0vIbbcb4XAuL5E
	cxUZ58kB0MeJkGy2mVwwnrxZRA==
X-Google-Smtp-Source: AGHT+IGvoa9gyNlJI/TR63Ij2o7niwTidKPGNa89ihVVjHiAA/5gAQNbTBQgTxgX9VarhKmpkc80DA==
X-Received: by 2002:a17:907:980d:b0:9c3:a193:2580 with SMTP id ji13-20020a170907980d00b009c3a1932580mr3755627ejc.12.1697625862752;
        Wed, 18 Oct 2023 03:44:22 -0700 (PDT)
Message-ID: <c86df0f1-c89c-4702-9b12-c0faf61b2de9@citrix.com>
Date: Wed, 18 Oct 2023 11:44:22 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: Xen 4.18 pvshim console issue (with patch)
Content-Language: en-GB
To: Manuel Bouyer <bouyer@antioche.eu.org>, xen-devel@lists.xenproject.org,
 Henry Wang <Henry.Wang@arm.com>
References: <ZS-1wVlZjdAJyUz6@mail.soc.lip6.fr>
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: <ZS-1wVlZjdAJyUz6@mail.soc.lip6.fr>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit

On 18/10/2023 11:38 am, Manuel Bouyer wrote:
> Hello,
> With Xen 4.18, a PV domain running under pvshim doesn't get console input.
> This is because the domain id in pvshim isn't 0 (and on x86 max_init_domid is
> hardwired to 0), so console_input_domain() will never select that domain
> as input.
> 
> The attached patch fixes it by translating 0 to the real domain id for
> pvshim, but there may be a better way to do this.
> 

Thankyou for the report.

First, CC'ing Henry as 4.18 release manager.

There have been changes in how this works recently in 4.18, notably c/s
c2581c58bec96.

However, it's not obvious whether this worked in 4.17 or not.  i.e.
whether it's a regression in 4.18, or whether it's been broken since PV
Shim was introduced.

~Andrew


From xen-devel-bounces@lists.xenproject.org Wed Oct 18 10:52:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 10:52:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618497.962191 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qt4AH-0005NI-RE; Wed, 18 Oct 2023 10:52:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618497.962191; Wed, 18 Oct 2023 10: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 1qt4AH-0005NB-Of; Wed, 18 Oct 2023 10:52:37 +0000
Received: by outflank-mailman (input) for mailman id 618497;
 Wed, 18 Oct 2023 10:52: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=+9wN=GA=casper.srs.infradead.org=BATV+8ac6f4fe82fdef80538c+7360+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qt4AG-0005Mn-1E
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 10:52:36 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 71a7c378-6da4-11ee-98d4-6d05b1d4d9a1;
 Wed, 18 Oct 2023 12:52:34 +0200 (CEST)
Received: from [2001:8b0:10b:5:d4f9:734b:fde4:c827]
 (helo=u3832b3a9db3152.ant.amazon.com)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qt4A3-000TTo-0I; Wed, 18 Oct 2023 10:52: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: 71a7c378-6da4-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=MIME-Version:Content-Type:References:
	In-Reply-To:Date:Cc:To:From:Subject:Message-ID:Sender:Reply-To:
	Content-Transfer-Encoding:Content-ID:Content-Description;
	bh=RWOu6EufHEslEOT/ml7cID1dexo8WUA6sXS9WUg+E2Y=; b=KlsB4trtSyY2ao3J1JLNbhGBgU
	H/ZltPjXh0zqWWylZVMfZZ3L3wwuMudtJKMB3mr4vnuU2hwbu76dW8sQ9Y2i1zBJSFN3M5o6OEhrc
	DRkB1MWU01QlTRsxTpcnY4Qw9RWdKzH8hhGkCP5fJznJc5p9nXIV8RBbg5UxWOeSa8nfuBzUORc7k
	fGSHYO+/FdwaauyUjAwXqLYybRlqB5dJAGN9x2gP+dCxqyWTUYs5D2ODKqZlkVw7DEBw56rzEpi/e
	QEsDQ8UpdOYBu8UEId864KXB9J9w1eVoE7xk6eFrxI9MNDdyiXSmzKp6enAw7uE/Ie+9w644/0nAY
	8QInMWew==;
Message-ID: <950f3a62dfcecce902037f95575f1013697a5925.camel@infradead.org>
Subject: Re: [PATCH 11/12] hw/xen: automatically assign device index to
 block devices
From: David Woodhouse <dwmw2@infradead.org>
To: Kevin Wolf <kwolf@redhat.com>
Cc: qemu-devel@nongnu.org, Hanna Reitz <hreitz@redhat.com>, Stefano
 Stabellini <sstabellini@kernel.org>, Anthony Perard
 <anthony.perard@citrix.com>, Paul Durrant <paul@xen.org>,
 =?ISO-8859-1?Q?Marc-Andr=E9?= Lureau <marcandre.lureau@redhat.com>,  Paolo
 Bonzini <pbonzini@redhat.com>, "Michael S. Tsirkin" <mst@redhat.com>,
 Marcel Apfelbaum <marcel.apfelbaum@gmail.com>, Richard Henderson
 <richard.henderson@linaro.org>,  Eduardo Habkost <eduardo@habkost.net>,
 Marcelo Tosatti <mtosatti@redhat.com>, qemu-block@nongnu.org, 
 xen-devel@lists.xenproject.org, kvm@vger.kernel.org
Date: Wed, 18 Oct 2023 11:52:22 +0100
In-Reply-To: <ZS+cutIjulWBQakk@redhat.com>
References: <20231016151909.22133-1-dwmw2@infradead.org>
	 <20231016151909.22133-12-dwmw2@infradead.org> <ZS+cutIjulWBQakk@redhat.com>
Content-Type: multipart/signed; micalg="sha-256"; protocol="application/pkcs7-signature";
	boundary="=-vjw1R5siplEBMZaWAzvC"
User-Agent: Evolution 3.44.4-0ubuntu2 
MIME-Version: 1.0
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html


--=-vjw1R5siplEBMZaWAzvC
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Wed, 2023-10-18 at 10:52 +0200, Kevin Wolf wrote:
> Am 16.10.2023 um 17:19 hat David Woodhouse geschrieben:
> > From: David Woodhouse <dwmw@amazon.co.uk>
> >=20
> > There's no need to force the user to assign a vdev. We can automaticall=
y
> > assign one, starting at xvda and searching until we find the first disk
> > name that's unused.
> >=20
> > This means we can now allow '-drive if=3Dxen,file=3Dxxx' to work withou=
t an
> > explicit separate -driver argument, just like if=3Dvirtio.
> >=20
> > Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
>=20
> Actually, how does this play together with xen_config_dev_blk()? This
> looks like it tried to implement a very similar thing (which is IF_XEN
> even already existed).

Ah yes, thanks for spotting that! I hadn't been looking at the xenfv

> Are we now trying to attach each if=3Dxen disk twice in the 'xenpv'
> machine? Or if something prevents this, is it dead code.

I suspect we end up creating them twice (and probably thus failing to
lock the backing file).

The old Xen PV device drivers in Qemu, before Paul's XenDevice
conversion, were purely reactive. If they see nodes in XenStore
describing a backend which they should implement, they'd do so.

The code in xen_config_dev_blk() is *creating* those nodes for the
frontend (guest) and backend (host/qemu) to see, which prompts the
xen-block and xen-net drivers into action.

In the new XenDevice model, we can just instantiate a device (e.g.
qdev_new(TYPE_XEN_DISK_DEVICE) and its realize() method will create the
corresponding XenStore nodes (with some help from the generic XenBus
code for the common ones).

The new XenDevice/XenBus model will *also* react to nodes which it
discovers in XenStore, and instantiate the corresponding devices.

So I suspect what'll happen is xen_config_dev_blk() will create the
nodes starting at xvda (int vdev =3D 202 * 256 + 16 * disk->unit), and
later my new code will create a new set starting from xvdb or wherever
the next free one is.

> I think in both cases, we would want to delete that function and remove
> the loop that calls it in xen_init_pv()?

Yes, I think so. The xen_config_dev_blk() one can just die, as can
xen_config_dev_console() which isn't called from anywhere anyway.

The vkbd/vfb ones can stay until/unless those drivers are converted to
the new XenDevice model.

And xen_config_dev_nic() probably just needs to loop doing the same as
I did in pc_init_nic() in
https://lore.kernel.org/qemu-devel/20231017182545.97973-5-dwmw2@infradead.o=
rg/T/#u

+        if (xen_bus && (!nd->model || g_str_equal(model, "xen-net-device")=
)) {
+            DeviceState *dev =3D qdev_new("xen-net-device");
+            qdev_set_nic_properties(dev, nd);
+            qdev_realize_and_unref(dev, xen_bus, &error_fatal);


... but this just reinforces what I said there about "if
qmp_device_add() can find the damn bus and do this right, why do we
have to litter it through platform code?"

--=-vjw1R5siplEBMZaWAzvC
Content-Type: application/pkcs7-signature; name="smime.p7s"
Content-Disposition: attachment; filename="smime.p7s"
Content-Transfer-Encoding: base64

MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgEFADCABgkqhkiG9w0BBwEAAKCCEkQw
ggYQMIID+KADAgECAhBNlCwQ1DvglAnFgS06KwZPMA0GCSqGSIb3DQEBDAUAMIGIMQswCQYDVQQG
EwJVUzETMBEGA1UECBMKTmV3IEplcnNleTEUMBIGA1UEBxMLSmVyc2V5IENpdHkxHjAcBgNVBAoT
FVRoZSBVU0VSVFJVU1QgTmV0d29yazEuMCwGA1UEAxMlVVNFUlRydXN0IFJTQSBDZXJ0aWZpY2F0
aW9uIEF1dGhvcml0eTAeFw0xODExMDIwMDAwMDBaFw0zMDEyMzEyMzU5NTlaMIGWMQswCQYDVQQG
EwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYD
VQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50
aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC
AQEAyjztlApB/975Rrno1jvm2pK/KxBOqhq8gr2+JhwpKirSzZxQgT9tlC7zl6hn1fXjSo5MqXUf
ItMltrMaXqcESJuK8dtK56NCSrq4iDKaKq9NxOXFmqXX2zN8HHGjQ2b2Xv0v1L5Nk1MQPKA19xeW
QcpGEGFUUd0kN+oHox+L9aV1rjfNiCj3bJk6kJaOPabPi2503nn/ITX5e8WfPnGw4VuZ79Khj1YB
rf24k5Ee1sLTHsLtpiK9OjG4iQRBdq6Z/TlVx/hGAez5h36bBJMxqdHLpdwIUkTqT8se3ed0PewD
ch/8kHPo5fZl5u1B0ecpq/sDN/5sCG52Ds+QU5O5EwIDAQABo4IBZDCCAWAwHwYDVR0jBBgwFoAU
U3m/WqorSs9UgOHYm8Cd8rIDZsswHQYDVR0OBBYEFAnA8vwL2pTbX/4r36iZQs/J4K0AMA4GA1Ud
DwEB/wQEAwIBhjASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEF
BQcDBDARBgNVHSAECjAIMAYGBFUdIAAwUAYDVR0fBEkwRzBFoEOgQYY/aHR0cDovL2NybC51c2Vy
dHJ1c3QuY29tL1VTRVJUcnVzdFJTQUNlcnRpZmljYXRpb25BdXRob3JpdHkuY3JsMHYGCCsGAQUF
BwEBBGowaDA/BggrBgEFBQcwAoYzaHR0cDovL2NydC51c2VydHJ1c3QuY29tL1VTRVJUcnVzdFJT
QUFkZFRydXN0Q0EuY3J0MCUGCCsGAQUFBzABhhlodHRwOi8vb2NzcC51c2VydHJ1c3QuY29tMA0G
CSqGSIb3DQEBDAUAA4ICAQBBRHUAqznCFfXejpVtMnFojADdF9d6HBA4kMjjsb0XMZHztuOCtKF+
xswhh2GqkW5JQrM8zVlU+A2VP72Ky2nlRA1GwmIPgou74TZ/XTarHG8zdMSgaDrkVYzz1g3nIVO9
IHk96VwsacIvBF8JfqIs+8aWH2PfSUrNxP6Ys7U0sZYx4rXD6+cqFq/ZW5BUfClN/rhk2ddQXyn7
kkmka2RQb9d90nmNHdgKrwfQ49mQ2hWQNDkJJIXwKjYA6VUR/fZUFeCUisdDe/0ABLTI+jheXUV1
eoYV7lNwNBKpeHdNuO6Aacb533JlfeUHxvBz9OfYWUiXu09sMAviM11Q0DuMZ5760CdO2VnpsXP4
KxaYIhvqPqUMWqRdWyn7crItNkZeroXaecG03i3mM7dkiPaCkgocBg0EBYsbZDZ8bsG3a08LwEsL
1Ygz3SBsyECa0waq4hOf/Z85F2w2ZpXfP+w8q4ifwO90SGZZV+HR/Jh6rEaVPDRF/CEGVqR1hiuQ
OZ1YL5ezMTX0ZSLwrymUE0pwi/KDaiYB15uswgeIAcA6JzPFf9pLkAFFWs1QNyN++niFhsM47qod
x/PL+5jR87myx5uYdBEQkkDc+lKB1Wct6ucXqm2EmsaQ0M95QjTmy+rDWjkDYdw3Ms6mSWE3Bn7i
5ZgtwCLXgAIe5W8mybM2JzCCBhQwggT8oAMCAQICEQDGvhmWZ0DEAx0oURL6O6l+MA0GCSqGSIb3
DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYD
VQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28g
UlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMB4XDTIyMDEwNzAw
MDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJARYTZHdtdzJAaW5mcmFkZWFkLm9y
ZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3GpC2bomUqk+91wLYBzDMcCj5C9m6
oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZHh7htyAkWYVoFsFPrwHounto8xTsy
SSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT9YgcBqKCo65pTFmOnR/VVbjJk4K2
xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNjP+qDrh0db7PAjO1D4d5ftfrsf+kd
RR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy2U+eITZ5LLE5s45mX2oPFknWqxBo
bQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3BgBEmfsYWlBXO8rVXfvPgLs32VdV
NZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/7auNVRmPB3v5SWEsH8xi4Bez2V9U
KxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmdlFYhAflWKQ03Ufiu8t3iBE3VJbc2
5oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9aelIl6vtbhMA+l0nfrsORMa4kobqQ5
C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMBAAGjggHMMIIByDAfBgNVHSMEGDAW
gBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeDMcimo0oz8o1R1Nver3ZVpSkwDgYD
VR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYwFAYIKwYBBQUHAwQGCCsGAQUFBwMC
MEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYBBQUHAgEWF2h0dHBzOi8vc2VjdGln
by5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9jcmwuc2VjdGlnby5jb20vU2VjdGln
b1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1haWxDQS5jcmwwgYoGCCsGAQUFBwEB
BH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdvLmNvbS9TZWN0aWdvUlNBQ2xpZW50
QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAjBggrBgEFBQcwAYYXaHR0cDovL29j
c3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5mcmFkZWFkLm9yZzANBgkqhkiG9w0B
AQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQvQ/fzPXmtR9t54rpmI2TfyvcKgOXp
qa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvIlSPrzIB4Z2wyIGQpaPLlYflrrVFK
v9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9ChWFfgSXvrWDZspnU3Gjw/rMHrGnql
Htlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0whpBtXdyDjzBtQTaZJ7zTT/vlehc/
tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9IzCCBhQwggT8oAMCAQICEQDGvhmW
Z0DEAx0oURL6O6l+MA0GCSqGSIb3DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3Jl
YXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0
ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJl
IEVtYWlsIENBMB4XDTIyMDEwNzAwMDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJ
ARYTZHdtdzJAaW5mcmFkZWFkLm9yZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3
GpC2bomUqk+91wLYBzDMcCj5C9m6oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZH
h7htyAkWYVoFsFPrwHounto8xTsySSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT
9YgcBqKCo65pTFmOnR/VVbjJk4K2xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNj
P+qDrh0db7PAjO1D4d5ftfrsf+kdRR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy
2U+eITZ5LLE5s45mX2oPFknWqxBobQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3
BgBEmfsYWlBXO8rVXfvPgLs32VdVNZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/
7auNVRmPB3v5SWEsH8xi4Bez2V9UKxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmd
lFYhAflWKQ03Ufiu8t3iBE3VJbc25oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9ae
lIl6vtbhMA+l0nfrsORMa4kobqQ5C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMB
AAGjggHMMIIByDAfBgNVHSMEGDAWgBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeD
Mcimo0oz8o1R1Nver3ZVpSkwDgYDVR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYw
FAYIKwYBBQUHAwQGCCsGAQUFBwMCMEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYB
BQUHAgEWF2h0dHBzOi8vc2VjdGlnby5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9j
cmwuc2VjdGlnby5jb20vU2VjdGlnb1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1h
aWxDQS5jcmwwgYoGCCsGAQUFBwEBBH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdv
LmNvbS9TZWN0aWdvUlNBQ2xpZW50QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAj
BggrBgEFBQcwAYYXaHR0cDovL29jc3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5m
cmFkZWFkLm9yZzANBgkqhkiG9w0BAQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQv
Q/fzPXmtR9t54rpmI2TfyvcKgOXpqa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvI
lSPrzIB4Z2wyIGQpaPLlYflrrVFKv9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9Ch
WFfgSXvrWDZspnU3Gjw/rMHrGnqlHtlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0w
hpBtXdyDjzBtQTaZJ7zTT/vlehc/tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9
IzGCBMcwggTDAgEBMIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVz
dGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMT
NVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEA
xr4ZlmdAxAMdKFES+jupfjANBglghkgBZQMEAgEFAKCCAeswGAYJKoZIhvcNAQkDMQsGCSqGSIb3
DQEHATAcBgkqhkiG9w0BCQUxDxcNMjMxMDE4MTA1MjIyWjAvBgkqhkiG9w0BCQQxIgQg2FOXzkZD
QYrxwmh9RjDjX6z/2aXuJ8hYWFbWEDzb71wwgb0GCSsGAQQBgjcQBDGBrzCBrDCBljELMAkGA1UE
BhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEYMBYG
A1UEChMPU2VjdGlnbyBMaW1pdGVkMT4wPAYDVQQDEzVTZWN0aWdvIFJTQSBDbGllbnQgQXV0aGVu
dGljYXRpb24gYW5kIFNlY3VyZSBFbWFpbCBDQQIRAMa+GZZnQMQDHShREvo7qX4wgb8GCyqGSIb3
DQEJEAILMYGvoIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVy
MRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNl
Y3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEAxr4Z
lmdAxAMdKFES+jupfjANBgkqhkiG9w0BAQEFAASCAgCctzndAZbafBIa4WmO3EkD2Ky0ta6UBCnF
oPTZyXnWM45JPD+RtjDFDCU1PN2VL3TM6r/9zl7nCmDUL0zG57uUFN5wmBceWlQhVNYpu41zd/HT
N4F7dc8EcziwJ3+fV2yUhXymPQdo5VK2QXu0yhw9Fqha3+fcBXCchl0ZCBgGxXFmkRFyy8RIW5oH
iZ0by3PsYAv5H1PYiOwDzFZ91FZxcOImwa2dzzwPM4JUjfz2vahsZosR0HcArpczfQBufnCBIT8m
1SExZvThSSMcASQY5uDfrz+M/3cW1wRzF3MdwqmmUyOpb1t8C/ixEo1XYbqpIYjL2xj/DY36fI/f
jfLWzW5raIugtgImPfq4VwTF/u1RMmqO2eLSu3DaYE/iwjC3xJEp2CfsJbgBPW0ATd5ks0E4pVng
7NrgQBRH3Sza2b4rGR0AqZ8L9VJko3ummhMJ+PUzJLrukhJkeMpW5vfPkc8BwCfn2CxWlY9EJiIa
iiHh7jeNIkmdqlmJa80WQuhVPR9Zq08ZwqO6GpDOeoPc54J5tDwjr3MQForhLtT6KRqkQW7xDV4t
8OiKhoaqJ6OM6w9DEW1xO0S9v/EESuqoxcH7FQGpiK2e8F0ilL86OeQMCNCNSiRkjAcKhSKTsMWr
EJ8wUix7Wd2N8Uu+skPJvhu6EJUUJuPVLMdyCwUV/gAAAAAAAA==


--=-vjw1R5siplEBMZaWAzvC--


From xen-devel-bounces@lists.xenproject.org Wed Oct 18 10:59:11 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 10:59:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618501.962202 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qt4GX-0006gm-KH; Wed, 18 Oct 2023 10:59:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618501.962202; Wed, 18 Oct 2023 10: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 1qt4GX-0006gf-HT; Wed, 18 Oct 2023 10:59:05 +0000
Received: by outflank-mailman (input) for mailman id 618501;
 Wed, 18 Oct 2023 10:59: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=w+tR=GA=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qt4GW-0006gZ-8w
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 10:59:04 +0000
Received: from mail-ej1-x62d.google.com (mail-ej1-x62d.google.com
 [2a00:1450:4864:20::62d])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 58a0069c-6da5-11ee-9b0e-b553b5be7939;
 Wed, 18 Oct 2023 12:59:02 +0200 (CEST)
Received: by mail-ej1-x62d.google.com with SMTP id
 a640c23a62f3a-9c603e2354fso360612066b.1
 for <xen-devel@lists.xenproject.org>; Wed, 18 Oct 2023 03:59: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
 mm27-20020a170906cc5b00b009929ab17be0sm1441004ejb.162.2023.10.18.03.59.01
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 18 Oct 2023 03:59: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: 58a0069c-6da5-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1697626741; x=1698231541; darn=lists.xenproject.org;
        h=content-transfer-encoding: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=zgwySDVDVxLLu1jXWk79EUD1VOZfoqLvl8wfZOIDjD0=;
        b=Z8D2xHHzPQlWDMkWyD2SeKL62N+CyQL4vpdwSsW22VoN4GcfEnFB9Za+9wWtDdVrz+
         IgiVjOiem47tcOkmVrjMDbZY182TymOCp0KcYxOrEUTZzL2HDsOGjMS3LZoruIue2RV6
         GKLg3mdwYItpcFiARUmptSzZG87jydSqmouY4=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697626741; x=1698231541;
        h=content-transfer-encoding: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=zgwySDVDVxLLu1jXWk79EUD1VOZfoqLvl8wfZOIDjD0=;
        b=gPKunCfT8T95CPIGRi1ynncVynz5Sbx5h9nfXR2WfqDDWqc+REwfDsjpNYEdppqlkQ
         4Z0bThaI24Lyaq38DJ0LMXESzQXPAJbQxONZJTILyIgMYpwATN9zY85K+O02hdTUHGMa
         95RrMZJlZtMR/EiSvhCz6/9bMgAJ8cR6NSQy7LO5wQpaEvCVS80dloMiMqDp4PzPokIW
         7nDJ4Ejq+P+JXQ4xziLXYBsUXr5rJ6L02eKc0ofvqVjDYe7oayQOrl59csR4hgNUtTCj
         bnzQFreFYe4N9drjYYW1FxRk7GMw5T/3wAxEpLoRr7ErQ35A74QZ8+gD1zWm2b85KGXk
         0Itw==
X-Gm-Message-State: AOJu0YyerqRzz66DXm5jI71F5aodxyvpszaxKdj9g46bBYqEhe3AVjqP
	zoog7/l52Wd/nxmk46zK38eWTg==
X-Google-Smtp-Source: AGHT+IFM3XmoKisqKuMPlnxRgSYsiieQy7cMyq+eZtaclefQ5Fpu3LfL297ckelmyTksnt6F0FfeMg==
X-Received: by 2002:a17:907:9715:b0:98e:4f1:f987 with SMTP id jg21-20020a170907971500b0098e04f1f987mr3623245ejc.3.1697626741515;
        Wed, 18 Oct 2023 03:59:01 -0700 (PDT)
Message-ID: <35f127f6-9c5e-4832-b116-cdc9a9ff1fd8@citrix.com>
Date: Wed, 18 Oct 2023 11:59:00 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH RFC] x86/CPUID: bump max leaf values for guest exposure
Content-Language: en-GB
To: Jan Beulich <jbeulich@suse.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Wei Liu <wl@xen.org>, =?UTF-8?Q?Roger_Pau_Monn=C3=A9?=
 <roger.pau@citrix.com>
References: <4fe76484-fa35-807f-2323-276087469bc2@suse.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: <4fe76484-fa35-807f-2323-276087469bc2@suse.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit

On 17/08/2023 7:22 am, Jan Beulich wrote:
> --- a/xen/lib/x86/cpuid.c
> +++ b/xen/lib/x86/cpuid.c
> @@ -104,6 +104,22 @@ void x86_cpu_featureset_to_policy(
>      p->feat._7d1             = fs[FEATURESET_7d1];
>      p->arch_caps.lo          = fs[FEATURESET_m10Al];
>      p->arch_caps.hi          = fs[FEATURESET_m10Ah];
> +
> +    /*
> +     * We may force-enable certain features, which then needs reflecting in
> +     * respective max leaf / subleaf values.
> +     *
> +     * ARCH_CAPS lives in 7d0.
> +     */
> +    if ( p->feat._7d0 && p->basic.max_leaf < 7 )
> +        p->basic.max_leaf = 7;
> +
> +    /*
> +     * AMD's speculation related features (e.g. LFENCE_DISPATCH) live in
> +     * leaf e21a.
> +     */
> +    if ( p->extd.e21a && p->extd.max_leaf < 0x80000021 )
> +        p->extd.max_leaf = 0x80000021;

This logic cannot live here - this function is a simple deserialisation
of an array.

Such logic belongs in create compatible policy, the patch for which has
been pending even longer.

The toolstack does need to take when extending like this, and it is not
safe to do it automatically like this.

~Andrew


From xen-devel-bounces@lists.xenproject.org Wed Oct 18 10:59:14 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 10:59:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618502.962211 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qt4Gg-0006yQ-Re; Wed, 18 Oct 2023 10:59:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618502.962211; Wed, 18 Oct 2023 10: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 1qt4Gg-0006yJ-P5; Wed, 18 Oct 2023 10:59:14 +0000
Received: by outflank-mailman (input) for mailman id 618502;
 Wed, 18 Oct 2023 10:59: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 1qt4Gf-0006xg-Gj
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 10:59: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 1qt4Gc-0003Ap-U0; Wed, 18 Oct 2023 10:59:10 +0000
Received: from [15.248.2.150] (helo=[10.24.67.30])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qt4Gc-000860-Il; Wed, 18 Oct 2023 10:59: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=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=isAQ5/Et135JphEaW7zI4z2AreMYK1m3a1vIxTAk9lI=; b=tfMOZ8LAunt5E4w2qEPgzytGoX
	csFDonuX9GmL883xEEsoIDYMruSrM/PjyQujbOm/vWJ2g0pQX+vFrKz4vy3+yHclQL/N3RU/EXHBu
	ouWZpJv9zAqoBXFQpLkv3+jyWljy3dbpeFnpF6emDuGRcQJ7bBasYtaAR3NTTGBJ9sE8=;
Message-ID: <4fc83e61-1e57-4f75-b017-7045842165e5@xen.org>
Date: Wed, 18 Oct 2023 11:59:08 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v4 2/2] xen/arm: Enlarge identity map space to 10TB
Content-Language: en-GB
To: Stefano Stabellini <sstabellini@kernel.org>
Cc: Bertrand Marquis <Bertrand.Marquis@arm.com>,
 Alexey Klimov <alexey.klimov@linaro.org>,
 Luca Fancellu <Luca.Fancellu@arm.com>, Michal Orzel <michal.orzel@amd.com>,
 "leo.yan@linaro.org" <leo.yan@linaro.org>,
 Xen-devel <xen-devel@lists.xenproject.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Rahul Singh <Rahul.Singh@arm.com>, Henry Wang <Henry.Wang@arm.com>
References: <20231013122658.1270506-1-leo.yan@linaro.org>
 <20231013122658.1270506-3-leo.yan@linaro.org>
 <169101f8-0475-45b1-b2c2-60dadd88d3f0@amd.com>
 <5a5e960b-e6fd-4617-b33a-10cf07f5bb52@xen.org>
 <8BCB97B4-CBDD-43D9-B0F8-7F637B8BE559@arm.com>
 <4B2BD200-5D3E-49D5-BF13-65B769AD4B90@arm.com>
 <CANgGJDqHu0CB=zzZqda18giLYDkL3My+gT592GLO-b9HsF2A4g@mail.gmail.com>
 <d3952200-9edb-4de0-94e3-c00c571a10b9@xen.org>
 <794B0D71-70A7-4546-98E0-EC01573E0D89@arm.com>
 <990b21a3-f8c7-4d02-a8ac-63d31794a76d@xen.org>
 <alpine.DEB.2.22.394.2310171258330.965337@ubuntu-linux-20-04-desktop>
From: Julien Grall <julien@xen.org>
In-Reply-To: <alpine.DEB.2.22.394.2310171258330.965337@ubuntu-linux-20-04-desktop>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi Stefano,

On 17/10/2023 20:58, Stefano Stabellini wrote:
>> And therefore a Fixes tag is sensible. This doesn't mean I would want to
>> backport it right now (note that only 4.18 is affected). But this could change
>> in the future if we get another report (post-4.18) on a platform where there
>> are no other workaround.
>>
>> Stefano any opinions?
> 
> The Fixes tag carries useful information but the problem is that it is
> typically used for identifying backports and this is not a backport (at
> least today we would not consider it a backport).

Below the definition of Fixes tag (from  process/sending-patches.pandoc):

If your patch fixes a bug in a specific commit, e.g. you found an issue 
using ``git bisect``, please use the `Fixes:` tag with the first 12 
characters of the commit id, and the one line summary.

This doesn't say anything about backport. In fact, we introduced a 
separate tag for that (see Backport).

> 
> So I would provide the same information but without using the Fixes tag.
> For instance: "This commit fixes an issue that was introduced by XXX
> because of YYY and only affects the AVA platform with not up-to-date
> firmware".

The part after 'and' is misleading. So far we had a report only on AVA 
platform but this doesn't mean it couldn't happen on other HW. The same 
is true with the new limit.

So this wants to be:

"and so far we only had a report for the AVA platform when using UEFI 
older than vX."

>
> That way, we avoid the risk of someone taking all the applicable commits
> with a Fixes tag and backporting them without thinking twice about it.
> But we still have the information in the git log.

I don't really see the problem for someone to mistakenly backport this 
patch. In fact, this could potentially save them a lot of debugging if 
it happens that Xen is loaded above 2TB.

Anyway, both Bertrand and you seems to be against the Fixes tag here. So 
I can compromise with the "This commit fixes...". However, can Bertrand 
or you update process/send-patches.pandoc so it is clear for a 
contributor when they should add Fixes tag (which BTW I still disagree 
with but if the majority agrees, then I will not nack)?

Regarding this patch itself, Stefano can you queue to your branch for-4.19?

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Wed Oct 18 11:17:01 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 11:17:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618507.962222 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qt4Xd-0002xx-5z; Wed, 18 Oct 2023 11:16:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618507.962222; Wed, 18 Oct 2023 11: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 1qt4Xd-0002xq-2v; Wed, 18 Oct 2023 11:16:45 +0000
Received: by outflank-mailman (input) for mailman id 618507;
 Wed, 18 Oct 2023 11:16: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 1qt4Xb-0002xg-LP; Wed, 18 Oct 2023 11:16: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 1qt4Xb-0003dv-I6; Wed, 18 Oct 2023 11:16: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 1qt4Xb-0000UD-51; Wed, 18 Oct 2023 11:16:43 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qt4Xb-0005xp-4d; Wed, 18 Oct 2023 11: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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=qvFTXT0gVnZcRd23U1lRx7zacq/75X7Vno87RqFZG/c=; b=QgcD8MwJM9YcbZ3h8U8NcFZj1A
	4oisG3o3hRQruAJfs60JvuCvMeYig3da1JGiGkYCNWLLRqfLkAKg8VJtR+ZekFyHDH+uMSFNPRbh9
	hWhLf+fBBpkvme5K0K8TrHDG/zCOG98doWJMBPvCFTvfV1eLWTgjOBsrtiMhqEWqmZRE=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183410-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 183410: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=01e1bc28943a6bd66830e8af56665dc9e4647a08
X-Osstest-Versions-That:
    ovmf=772ec92577a8c786b6c9f8643fa60f1cf893bcd9
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 18 Oct 2023 11:16:43 +0000

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

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 01e1bc28943a6bd66830e8af56665dc9e4647a08
baseline version:
 ovmf                 772ec92577a8c786b6c9f8643fa60f1cf893bcd9

Last test of basis   183397  2023-10-17 08:10:41 Z    1 days
Testing same since   183410  2023-10-18 09:10:48 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Jeff Brasen <jbrasen@nvidia.com>
  Jeff Brasen via groups.io <jbrasen=nvidia.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
   772ec92577..01e1bc2894  01e1bc28943a6bd66830e8af56665dc9e4647a08 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Wed Oct 18 11:21:04 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 11:21:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618512.962232 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qt4bm-0004Q7-OV; Wed, 18 Oct 2023 11:21:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618512.962232; Wed, 18 Oct 2023 11: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 1qt4bm-0004Q0-Kn; Wed, 18 Oct 2023 11:21:02 +0000
Received: by outflank-mailman (input) for mailman id 618512;
 Wed, 18 Oct 2023 11:21: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=Y0YN=GA=antioche.eu.org=bouyer@srs-se1.protection.inumbo.net>)
 id 1qt4bl-0004Pu-2C
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 11:21:01 +0000
Received: from isis.lip6.fr (isis.lip6.fr [2001:660:3302:283c::2])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 699c27e7-6da8-11ee-9b0e-b553b5be7939;
 Wed, 18 Oct 2023 13:20:59 +0200 (CEST)
Received: from asim.lip6.fr (asim.lip6.fr [132.227.86.2])
 by isis.lip6.fr (8.16.1/8.15.2) with ESMTPS id 39IBKrVU009113
 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NO);
 Wed, 18 Oct 2023 13:20:54 +0200 (CEST)
Received: from armandeche.soc.lip6.fr (armandeche [132.227.63.133])
 by asim.lip6.fr (8.15.2/8.15.2) with ESMTP id 39IBKrci012946;
 Wed, 18 Oct 2023 13:20:53 +0200 (MEST)
Received: by armandeche.soc.lip6.fr (Postfix, from userid 20331)
 id A4AB677C1; Wed, 18 Oct 2023 13:20:53 +0200 (MEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 699c27e7-6da8-11ee-9b0e-b553b5be7939
Date: Wed, 18 Oct 2023 13:20:53 +0200
From: Manuel Bouyer <bouyer@antioche.eu.org>
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: xen-devel@lists.xenproject.org, Henry Wang <Henry.Wang@arm.com>
Subject: Re: Xen 4.18 pvshim console issue (with patch)
Message-ID: <ZS-_lcYqqDgEZdFi@mail.soc.lip6.fr>
References: <ZS-1wVlZjdAJyUz6@mail.soc.lip6.fr>
 <c86df0f1-c89c-4702-9b12-c0faf61b2de9@citrix.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <c86df0f1-c89c-4702-9b12-c0faf61b2de9@citrix.com>
X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.6.4 (isis.lip6.fr [132.227.60.2]); Wed, 18 Oct 2023 13:20:54 +0200 (CEST)
X-Scanned-By: MIMEDefang 3.3 on 132.227.60.2

On Wed, Oct 18, 2023 at 11:44:22AM +0100, Andrew Cooper wrote:
> On 18/10/2023 11:38 am, Manuel Bouyer wrote:
> > Hello,
> > With Xen 4.18, a PV domain running under pvshim doesn't get console input.
> > This is because the domain id in pvshim isn't 0 (and on x86 max_init_domid is
> > hardwired to 0), so console_input_domain() will never select that domain
> > as input.
> > 
> > The attached patch fixes it by translating 0 to the real domain id for
> > pvshim, but there may be a better way to do this.
> > 
> 
> Thankyou for the report.
> 
> First, CC'ing Henry as 4.18 release manager.
> 
> There have been changes in how this works recently in 4.18, notably c/s
> c2581c58bec96.

Yes, it looks like this one introduced the problem.
Before this, we would switch console_rx to 1 without checking if
domain (console_rx - 1) exists, and console_rx == 1 is a special case
in __serial_rx()

> 
> However, it's not obvious whether this worked in 4.17 or not.  i.e.
> whether it's a regression in 4.18, or whether it's been broken since PV
> Shim was introduced.

I don't know for 4.16 or 4.17 but I can tell that it's working in 4.15

-- 
Manuel Bouyer <bouyer@antioche.eu.org>
     NetBSD: 26 ans d'experience feront toujours la difference
--


From xen-devel-bounces@lists.xenproject.org Wed Oct 18 11:23:19 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 11:23:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618515.962241 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qt4dw-0004z7-34; Wed, 18 Oct 2023 11:23:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618515.962241; Wed, 18 Oct 2023 11:23: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 1qt4dw-0004z0-0R; Wed, 18 Oct 2023 11:23:16 +0000
Received: by outflank-mailman (input) for mailman id 618515;
 Wed, 18 Oct 2023 11:23: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=w+tR=GA=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qt4du-0004ys-Jx
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 11:23:14 +0000
Received: from mail-ed1-x531.google.com (mail-ed1-x531.google.com
 [2a00:1450:4864:20::531])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id b9eaf0b4-6da8-11ee-98d4-6d05b1d4d9a1;
 Wed, 18 Oct 2023 13:23:13 +0200 (CEST)
Received: by mail-ed1-x531.google.com with SMTP id
 4fb4d7f45d1cf-53d9f001b35so11438799a12.2
 for <xen-devel@lists.xenproject.org>; Wed, 18 Oct 2023 04:23:13 -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
 e17-20020a50a691000000b00534e791296bsm2730704edc.37.2023.10.18.04.23.12
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 18 Oct 2023 04:23: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: b9eaf0b4-6da8-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1697628193; x=1698232993; darn=lists.xenproject.org;
        h=content-transfer-encoding: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=NvPXeYzLdLdpo0FY6CNAlUqYyqu90vnFmq+Lv3O5uhU=;
        b=KxObjdwCgR9LJ1s5YfAki7gGvDsds3CpnCWf7aahIl1vAPb1VwMT/3f3zEd+Ot1qrF
         NNCnDDkCJnGo+TV7VSZ9RfCQGFDPzBcrCf+puQ7YJHhiccMdWda6VrxR7Qex/Y4CR99o
         sOKychNvilE1JRekXkeBmX4+ar+YctRSd847U=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697628193; x=1698232993;
        h=content-transfer-encoding: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=NvPXeYzLdLdpo0FY6CNAlUqYyqu90vnFmq+Lv3O5uhU=;
        b=FQJq+0UqeabGPCHzMULGLw7fa3HMQe0f9sgt03UtWCJZ37zZ8Mwm8pCqr944Z9KX1R
         Rn3JKJ3RxLX1MUpXKdTET1fPqahaVNcOWOrQCM2TlMQ7tmoCFzx9W5mpP2gCcfDp1fng
         wNHK6D8Z2PogDD54ksaAQo5D18kkq561Mxt/iVCtEOqW2BlmpYr7hWcxZeKUwGjYfB2k
         hRSa2dQ7ZYPfEkRfZprrJAr75+ge+3Q0lXZvwdOdYq5DDOm8xc3egfdvAfwnktR8i/y5
         rw8X4EN4NQBYthSUUpdvG74Bgpin/Ybi9MBTKovz/MREuUFK5/jskgM96gwzvLP/BZgR
         WJLg==
X-Gm-Message-State: AOJu0YzslDrrloamsCcep6PTruuUtMzdZxnwbngmnBvc2Fcelg6jZbyM
	2CC5635dmewX2qxaIxDyeJ8WSWULefX1wOzDudcJPQ==
X-Google-Smtp-Source: AGHT+IEDHUlt6TjhBzaO84DHm9081eU7K7ZY1qvUdvjua+rPo+jZjvLnsUdtKK16k6cofYwCqShWlA==
X-Received: by 2002:a50:cc06:0:b0:53e:1825:be81 with SMTP id m6-20020a50cc06000000b0053e1825be81mr3633419edi.21.1697628193240;
        Wed, 18 Oct 2023 04:23:13 -0700 (PDT)
Message-ID: <d44f1543-22e7-4abe-a245-7cd0d0d585e0@citrix.com>
Date: Wed, 18 Oct 2023 12:23:12 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: Xen 4.18 pvshim console issue (with patch)
Content-Language: en-GB
To: Manuel Bouyer <bouyer@antioche.eu.org>
Cc: xen-devel@lists.xenproject.org, Henry Wang <Henry.Wang@arm.com>
References: <ZS-1wVlZjdAJyUz6@mail.soc.lip6.fr>
 <c86df0f1-c89c-4702-9b12-c0faf61b2de9@citrix.com>
 <ZS-_lcYqqDgEZdFi@mail.soc.lip6.fr>
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: <ZS-_lcYqqDgEZdFi@mail.soc.lip6.fr>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit

On 18/10/2023 12:20 pm, Manuel Bouyer wrote:
> On Wed, Oct 18, 2023 at 11:44:22AM +0100, Andrew Cooper wrote:
>> On 18/10/2023 11:38 am, Manuel Bouyer wrote:
>>> Hello,
>>> With Xen 4.18, a PV domain running under pvshim doesn't get console input.
>>> This is because the domain id in pvshim isn't 0 (and on x86 max_init_domid is
>>> hardwired to 0), so console_input_domain() will never select that domain
>>> as input.
>>>
>>> The attached patch fixes it by translating 0 to the real domain id for
>>> pvshim, but there may be a better way to do this.
>>>
>> Thankyou for the report.
>>
>> First, CC'ing Henry as 4.18 release manager.
>>
>> There have been changes in how this works recently in 4.18, notably c/s
>> c2581c58bec96.
> Yes, it looks like this one introduced the problem.
> Before this, we would switch console_rx to 1 without checking if
> domain (console_rx - 1) exists, and console_rx == 1 is a special case
> in __serial_rx()
>
>> However, it's not obvious whether this worked in 4.17 or not.  i.e.
>> whether it's a regression in 4.18, or whether it's been broken since PV
>> Shim was introduced.
> I don't know for 4.16 or 4.17 but I can tell that it's working in 4.15
>

That commit is new in 4.18, so Henry - this is a release
critical/blocker owing to it being a regression vs 4.17.

I'll try and put some brainpower towards it when I get some other 4.18
work sorted.

~Andrew


From xen-devel-bounces@lists.xenproject.org Wed Oct 18 11:25:17 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 11:25:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618519.962252 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qt4fs-0006C5-Hb; Wed, 18 Oct 2023 11:25:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618519.962252; Wed, 18 Oct 2023 11:25: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 1qt4fs-0006By-Et; Wed, 18 Oct 2023 11:25:16 +0000
Received: by outflank-mailman (input) for mailman id 618519;
 Wed, 18 Oct 2023 11:25: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=J5aw=GA=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qt4fr-0006Bp-DD
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 11:25:15 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur05on20621.outbound.protection.outlook.com
 [2a01:111:f400:7d00::621])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 007b935b-6da9-11ee-9b0e-b553b5be7939;
 Wed, 18 Oct 2023 13:25:12 +0200 (CEST)
Received: from AS9PR04CA0057.eurprd04.prod.outlook.com (2603:10a6:20b:46a::17)
 by DBAPR08MB5863.eurprd08.prod.outlook.com (2603:10a6:10:1a1::22)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.34; Wed, 18 Oct
 2023 11:25:09 +0000
Received: from AMS0EPF00000190.eurprd05.prod.outlook.com
 (2603:10a6:20b:46a:cafe::99) by AS9PR04CA0057.outlook.office365.com
 (2603:10a6:20b:46a::17) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.36 via Frontend
 Transport; Wed, 18 Oct 2023 11:25:09 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AMS0EPF00000190.mail.protection.outlook.com (10.167.16.213) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6907.20 via Frontend Transport; Wed, 18 Oct 2023 11:25:07 +0000
Received: ("Tessian outbound 80b6fe5915e6:v215");
 Wed, 18 Oct 2023 11:25:07 +0000
Received: from 09e523b324c1.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 B933325C-806B-45F8-AF41-58A77B6C20A3.1; 
 Wed, 18 Oct 2023 11:25:00 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 09e523b324c1.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Wed, 18 Oct 2023 11:25:00 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by PAVPR08MB9281.eurprd08.prod.outlook.com (2603:10a6:102:306::6)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.21; Wed, 18 Oct
 2023 11:24:59 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41%4]) with mapi id 15.20.6886.034; Wed, 18 Oct 2023
 11:24: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: 007b935b-6da9-11ee-9b0e-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=YqSPYi0GN8sUqGSKdLJs0sFiem3qvk12wDPfYZaQ3vQ=;
 b=z4vwbFWHZ3ngQ/WrcBEWNazYaMReqSVq5anBQmhhhd+cNkSJcMfbx2qG7Rj3Xp8F2Jjvzn5w6porv4SkmX05o0zK4GJZft+8R72zHnyCHnaRhtNE4YdjipAENtVPcrnwJZ5h/zHSZutnodC18cnYOMVKmr3WJD1K8JE1B0Y2T6Y=
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: b3052623c04e2537
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=gWrxeXix4TxmHEmmunc3OckjV9MuB8bgbbc3qMy5A4SN8vaoYyhfbQgYF9nYnKStpltnKDXr9drUfHgZUlaYBcw1LgJZbFHIax4YRVl2xa7vVJXTES3rWD3h9P9CQahdMl0Vw6kg4w34oO4ilqKPW8ywe7P7q+FPedjaydQMpNRcgXiwX+8iEl1Oa5mkvfKdENABpptWz/eiD8vZ9Qzili7BG8ZGMOJTbbyvUahwuTnz/dBOK+KasYSuUeB0+LogC3f9h4ESTYczgcwrF16Rg6F4i/THWF/14mC1e1CI95tJx0puEZOo65plzH5tMxHyGhep0MTXBS5DGZzWlN95/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=YqSPYi0GN8sUqGSKdLJs0sFiem3qvk12wDPfYZaQ3vQ=;
 b=G4iRKShxQ/sSeYd5XNQG07U0YKMuVXMks0FWoegK6OWrD4sOVm3dupF3/6Vv71Z9VrCpQCzE+BLm/5gMWuCXOo7DAk4Qs0T9Rf+wMnFSXlHHY4eU9kVgzqDQRI8/rojS4PmPqo4O/q4ZxLjyrG86ise/+eMsvoHUv4/+VPyGQcY6S+QBNgw90PrRmgXv2P/W+kvnkHExwh0y7nBzO2uggg+04MtZknZUcmU3EXWrie5FwMtgt5oOFvTp18reCHU0zAVmm7dUwdlBpum5pJuCb9N8ck4NvMS7PYM1muG0qelb0r+EO4cuvfwQDuYKMRTDilXLj0FOumDLbP6z6NHOkQ==
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=YqSPYi0GN8sUqGSKdLJs0sFiem3qvk12wDPfYZaQ3vQ=;
 b=z4vwbFWHZ3ngQ/WrcBEWNazYaMReqSVq5anBQmhhhd+cNkSJcMfbx2qG7Rj3Xp8F2Jjvzn5w6porv4SkmX05o0zK4GJZft+8R72zHnyCHnaRhtNE4YdjipAENtVPcrnwJZ5h/zHSZutnodC18cnYOMVKmr3WJD1K8JE1B0Y2T6Y=
From: Henry Wang <Henry.Wang@arm.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>
CC: Manuel Bouyer <bouyer@antioche.eu.org>, "xen-devel@lists.xenproject.org"
	<xen-devel@lists.xenproject.org>
Subject: Re: Xen 4.18 pvshim console issue (with patch)
Thread-Topic: Xen 4.18 pvshim console issue (with patch)
Thread-Index: AQHaAa9cu8iUssZj1EaRHoR8glstO7BPXL0AgAAKM4CAAACmAIAAAG+A
Date: Wed, 18 Oct 2023 11:24:56 +0000
Message-ID: <420B99DE-F2EB-4DB4-9F32-A740C5886864@arm.com>
References: <ZS-1wVlZjdAJyUz6@mail.soc.lip6.fr>
 <c86df0f1-c89c-4702-9b12-c0faf61b2de9@citrix.com>
 <ZS-_lcYqqDgEZdFi@mail.soc.lip6.fr>
 <d44f1543-22e7-4abe-a245-7cd0d0d585e0@citrix.com>
In-Reply-To: <d44f1543-22e7-4abe-a245-7cd0d0d585e0@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_|PAVPR08MB9281:EE_|AMS0EPF00000190:EE_|DBAPR08MB5863:EE_
X-MS-Office365-Filtering-Correlation-Id: 4a2962c6-314a-48fd-86b3-08dbcfcce20b
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:
 d93Z6KgMTaDOjWeAGWg4VCFSwn5kAx5bD1XRjOgISr9x3cUNcJSGLmS9mn5gILzQMlqZp1WcLCba7j9L77LJah6BHR67p3/4AfbNBHH/d/kYc7TETqbZPiJGgarwzDM4U5m3tb/Swi9a6yiNFgU6b+D97OI70/eP6MK8QClM7BdmacsLr/ifMC48pqtRFISDlLhgesvEA1EVVWkIxrc/TeVEQu2hv6p4i79oZE4mcDdGjz9XZylPaUWg+4Hy3f/JchMEwpvX4df8Sjas9bH2tCqW+nvUlWHzfjSoH/difvrc3w4rPbiGe5lssXowNmK+uTc5LfyHndQ/iKEHDvMQE2PZ3KlEQPxZo1gWncBZxILy4tondqYDxZU9T8ieaUxZL0jKTGB0/G1Bl+teCscwUTVLgEeOkaOMvk/nRNWP0ES1cq+t3E1Fb+7KT1DtAkJ7Rghz6jP2ALvmC9bUlqBFF37KxNFcDZM+ctQjHc3sEAupSJz5j/aNtPR7kYhKqahR896JFUafB/0XmQD5xdGp9SvPwrwjWeJ81Zp3ZSjD0vsFMELcytPrqKb0ospcC82IXc4rlOf01BA2td95G5BnaQq+ku3oU1Wjq/eJlW1SYHRii64fAGEUUQgpSnNpWGPSlvhH/F/wqE1NDO9LDOZ5yg==
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)(39860400002)(136003)(396003)(376002)(230922051799003)(186009)(451199024)(1800799009)(64100799003)(38070700005)(86362001)(36756003)(33656002)(122000001)(26005)(38100700002)(6486002)(5660300002)(76116006)(478600001)(66556008)(64756008)(66476007)(6916009)(316002)(54906003)(66946007)(66446008)(6666004)(53546011)(6512007)(6506007)(71200400001)(91956017)(2616005)(4326008)(8676002)(8936002)(83380400001)(41300700001)(2906002)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="us-ascii"
Content-ID: <517ACC285F37B243ACE93F6ABC7E5F07@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAVPR08MB9281
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:
 AMS0EPF00000190.eurprd05.prod.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	70018a57-2ba8-49b5-086f-08dbcfccdb61
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	PxTuP/jWkfkKmQOpA2pQ54Os6Q31HFSUVFVAmnH1RUJkq92dnKQGTyQyW8elFrJ2Qe7gdSsQlvW2duITXSynCCgbbEd2Q3LvbpgQuqoa9W6SULo2ZH/Ohb6Lxxb6WtoKX/23ayDQybKfea3KJgAiQiCEZL6hO56Wy4uAtSpfY+xc8KS7ponFNXxybCJEPWkrpXnL4MGfY6rjGaqNpUxcC5BemSjTIvOKQge/vYW5s27epxRUpBhcy0gju08OyxEkBhP5MEdstPHSlZhJnki8j8FWeRUkgfKoDb82xswyAkaX/SPvUDczzkUkFcZjCPOtIfB4h3as89Gcpa/TADvcfQkYibq5uQvaoJdmoxhE5SMAez+2PBuCacpBjN3KI8ME7YuyOcAJT8Hk2TyJQN8nx5FZI9DmOd9/DBfHwUDHKa1tWg6mAHkKSEo4TlL3TryHyDoUuYXXRPqYzqxVhFJd2g5hkGF130+/XqMy7MULGvbVK2HFxah0E8JUoGnTDm7O6qJp6+wN5z+ZPFBLHcFpuUe8vlBbxAwiMi3Q4WeTCe1LdpaqfbQeIzOLdKBoL0rvDNYAabQPqb/ANV+3YqGK5/oD87Huv+ZjX/at8Tr0iCgrVoKhJjHyzOFabd9htDnDun6yPH9uQELvaz3rUv1foopxk/ZANw3+soJGojrWD1XjtkiWhAqEo+ZX/6XI9Ls0fw+a67mHtNUMNn7ZouXkRgwCd4cA/2f4GvhjhWIAkeJCb9WzmJrvf2IBp6CQ5lWa
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)(136003)(346002)(39850400004)(230922051799003)(451199024)(64100799003)(1800799009)(82310400011)(186009)(40470700004)(46966006)(36840700001)(47076005)(33656002)(86362001)(40480700001)(40460700003)(70586007)(54906003)(70206006)(6512007)(316002)(81166007)(36756003)(82740400003)(356005)(83380400001)(53546011)(36860700001)(6506007)(2616005)(6666004)(26005)(336012)(8936002)(6486002)(2906002)(8676002)(478600001)(4326008)(41300700001)(5660300002)(6862004);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Oct 2023 11:25:07.5272
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 4a2962c6-314a-48fd-86b3-08dbcfcce20b
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:
	AMS0EPF00000190.eurprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBAPR08MB5863

Hi Andrew,

> On Oct 18, 2023, at 19:23, Andrew Cooper <andrew.cooper3@citrix.com> wrot=
e:
>=20
> On 18/10/2023 12:20 pm, Manuel Bouyer wrote:
>> On Wed, Oct 18, 2023 at 11:44:22AM +0100, Andrew Cooper wrote:
>>> On 18/10/2023 11:38 am, Manuel Bouyer wrote:
>>>> Hello,
>>>> With Xen 4.18, a PV domain running under pvshim doesn't get console in=
put.
>>>> This is because the domain id in pvshim isn't 0 (and on x86 max_init_d=
omid is
>>>> hardwired to 0), so console_input_domain() will never select that doma=
in
>>>> as input.
>>>>=20
>>>> The attached patch fixes it by translating 0 to the real domain id for
>>>> pvshim, but there may be a better way to do this.
>>>>=20
>>> Thankyou for the report.
>>>=20
>>> First, CC'ing Henry as 4.18 release manager.
>>>=20
>>> There have been changes in how this works recently in 4.18, notably c/s
>>> c2581c58bec96.
>> Yes, it looks like this one introduced the problem.
>> Before this, we would switch console_rx to 1 without checking if
>> domain (console_rx - 1) exists, and console_rx =3D=3D 1 is a special cas=
e
>> in __serial_rx()
>>=20
>>> However, it's not obvious whether this worked in 4.17 or not.  i.e.
>>> whether it's a regression in 4.18, or whether it's been broken since PV
>>> Shim was introduced.
>> I don't know for 4.16 or 4.17 but I can tell that it's working in 4.15
>>=20
>=20
> That commit is new in 4.18, so Henry - this is a release
> critical/blocker owing to it being a regression vs 4.17.

Noted down.

Out of curiosity, do we have maintainers for that specific driver? It would
be good to looping them in.

Kind regards,
Henry

>=20
> I'll try and put some brainpower towards it when I get some other 4.18
> work sorted.
>=20
> ~Andrew



From xen-devel-bounces@lists.xenproject.org Wed Oct 18 11:28:33 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 11:28:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618523.962261 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qt4iv-00071X-0Q; Wed, 18 Oct 2023 11:28:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618523.962261; Wed, 18 Oct 2023 11:28: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 1qt4iu-00071Q-Ty; Wed, 18 Oct 2023 11:28:24 +0000
Received: by outflank-mailman (input) for mailman id 618523;
 Wed, 18 Oct 2023 11: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=w+tR=GA=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qt4it-00071K-B6
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 11:28:23 +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 7118ba45-6da9-11ee-98d4-6d05b1d4d9a1;
 Wed, 18 Oct 2023 13:28:21 +0200 (CEST)
Received: by mail-ed1-x532.google.com with SMTP id
 4fb4d7f45d1cf-53e04b17132so11043236a12.0
 for <xen-devel@lists.xenproject.org>; Wed, 18 Oct 2023 04:28:21 -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
 ck25-20020a0564021c1900b0053dab756073sm2631047edb.84.2023.10.18.04.28.19
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 18 Oct 2023 04:28: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: 7118ba45-6da9-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1697628500; x=1698233300; 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=3LgkL+Vi4mgV7ko/0mCDMpWCFqm3DxvFOY0j3mWBFV4=;
        b=ePfqDzm1QjBZ+SIi8FX6E1q8K9fHBHgYUXxF6Iyss0xU2UHAt8KWJxhG2Y8muaX2+n
         uvytqxhMi5DD86GNOPJL9u6DfWjBuXqx7rF6DaCb7QJqGBI36v1+z+zZ1vfsibKnETh/
         KMSPRpKSpSc4/GRzHwIBBVip/TNnQJS6+WO5E=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697628500; x=1698233300;
        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=3LgkL+Vi4mgV7ko/0mCDMpWCFqm3DxvFOY0j3mWBFV4=;
        b=riXLVVg6SJyKM6DWGHggwjk8ws3UzepKILvvlQkGTKFfy8z4PFScvJxBqO9GNFX2tu
         EQ6uhDE/N4vw2/7mJyxuQ2aHnKSjUy0/m+/YbDS3CqpYnfHL/XkiIepMWNYbMw9szqYo
         bwXdujnLCcDyDKedxRwrP+9FBOnL5p1eCeveOTaT2ehK4B7394GkIsI1YRKViXwYu4BT
         MlJAFz9xyG3TbQjwS4IW2rtTEj281d74Vs5a/QTVkyxiaGEpTUno5ZzWPdK5mlKBamoY
         hqcLBtgS/nJrFLyTMc/rAP+cJOQRYrleWmH2yQEEA9AcYMdg7JbQn01BM55BjeeQVzGE
         1Lsw==
X-Gm-Message-State: AOJu0YxoG3iRQvA+Ku7ohc+1WMUteBh51lUrRDD5ms2lLcQ6J/6TAc+8
	pP7WTV/dG/4wOA0PbmDnuwgz7Q==
X-Google-Smtp-Source: AGHT+IFKuK5gV9+bZo57KVbX9e+E6GE0MUkqynpMEMfiZtF0Y2DQqIQvabb3P6etOxsDjy9uKpZSnw==
X-Received: by 2002:a50:9992:0:b0:53e:1741:d76b with SMTP id m18-20020a509992000000b0053e1741d76bmr3065969edb.39.1697628500362;
        Wed, 18 Oct 2023 04:28:20 -0700 (PDT)
Content-Type: multipart/alternative;
 boundary="------------5aQc9fRFwlAIle0JWFaxCdbd"
Message-ID: <f23a183c-92d1-4789-b43f-d17476693307@citrix.com>
Date: Wed, 18 Oct 2023 12:28:19 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH for-4.18] docs/sphinx: Lifecycle of a domid
Content-Language: en-GB
To: Alejandro Vallejo <alejandro.vallejo@cloud.com>
Cc: Xen-devel <xen-devel@lists.xenproject.org>,
 George Dunlap <George.Dunlap@eu.citrix.com>, Jan Beulich
 <JBeulich@suse.com>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>, Julien Grall <julien@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>,
 Juergen Gross <jgross@suse.com>, Henry Wang <Henry.Wang@arm.com>
References: <20231016162450.1286178-1-andrew.cooper3@citrix.com>
 <652ea390.170a0220.fc514.3c38@mx.google.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: <652ea390.170a0220.fc514.3c38@mx.google.com>

This is a multi-part message in MIME format.
--------------5aQc9fRFwlAIle0JWFaxCdbd
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 17/10/2023 4:09 pm, Alejandro Vallejo wrote:
> The page is pretty nice overall and I quite liked it. Just a few extra
> questions below, as I'm not familiar with this side of things,
>
> On Mon, Oct 16, 2023 at 05:24:50PM +0100, Andrew Cooper wrote:
>> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
>> ---
>> CC: George Dunlap <George.Dunlap@eu.citrix.com>
>> CC: Jan Beulich <JBeulich@suse.com>
>> CC: Stefano Stabellini <sstabellini@kernel.org>
>> CC: Wei Liu <wl@xen.org>
>> CC: Julien Grall <julien@xen.org>
>> CC: Roger Pau Monné <roger.pau@citrix.com>
>> CC: Juergen Gross <jgross@suse.com>
>> CC: Henry Wang <Henry.Wang@arm.com>
>>
>> Rendered form:
>>   https://andrewcoop-xen.readthedocs.io/en/docs-devel/hypervisor-guide/domid-lifecycle.html
>>
>> I'm not sure why it's using the alibaster theme and not RTD theme, but I
>> don't have time to debug that further at this point.
>>
>> This was written mostly while sat waiting for flights in Nanjing and Beijing.
>>
>> If while reading this you spot a hole, congratulations.  There are holes which
>> need fixing...
>> ---
>>  docs/glossary.rst                         |   9 ++
>>  docs/hypervisor-guide/domid-lifecycle.rst | 164 ++++++++++++++++++++++
>>  docs/hypervisor-guide/index.rst           |   1 +
>>  3 files changed, 174 insertions(+)
>>  create mode 100644 docs/hypervisor-guide/domid-lifecycle.rst
>>
>> diff --git a/docs/glossary.rst b/docs/glossary.rst
>> index 8ddbdab160a1..1fd1de0f0e97 100644
>> --- a/docs/glossary.rst
>> +++ b/docs/glossary.rst
>> @@ -50,3 +50,12 @@ Glossary
>>  
>>       By default it gets all devices, including all disks and network cards, so
>>       is responsible for multiplexing guest I/O.
>> +
>> +   system domain
>> +     Abstractions within Xen that are modelled in a similar way to regular
>> +     :term:`domains<domain>`.  E.g. When there's no work to do, Xen schedules
>> +     ``DOMID_IDLE`` to put the CPU into a lower power state.
>> +
>> +     System domains have :term:`domids<domid>` and are referenced by
>> +     privileged software for certain control operations, but they do not run
>> +     guest code.
>> diff --git a/docs/hypervisor-guide/domid-lifecycle.rst b/docs/hypervisor-guide/domid-lifecycle.rst
>> new file mode 100644
>> index 000000000000..d405a321f3c7
>> --- /dev/null
>> +++ b/docs/hypervisor-guide/domid-lifecycle.rst
>> @@ -0,0 +1,164 @@
>> +.. SPDX-License-Identifier: CC-BY-4.0
>> +
>> +Lifecycle of a domid
>> +====================
>> +
>> +Overview
>> +--------
>> +
>> +A :term:`domid` is Xen's numeric identifier for a :term:`domain`.  In any
>> +operational Xen system, there are one or more domains running.
>> +
>> +Domids are 16-bit integers.  Regular domids start from 0, but there are some
>> +special identifiers, e.g. ``DOMID_SELF``, and :term:`system domains<system
>> +domain>`, e.g. ``DOMID_IDLE`` starting from 0x7ff0.  Therefore, a Xen system
>> +can run a maximum of 32k domains concurrently.
>> +
>> +.. note::
>> +
>> +   Despite being exposed in the domid ABI, the system domains are internal to
>> +   Xen and do not have lifecycles like regular domains.  Therefore, they are
>> +   not discussed further in this document.
>> +
>> +At system boot, Xen will construct one or more domains.  Kernels and
>> +configuration for these domains must be provided by the bootloader, or at
>> +Xen's compile time for more highly integrated solutions.
>> +
>> +Correct functioning of the domain lifecycle involves ``xenstored``, and some
>> +privileged entity which has bound the ``VIRQ_DOM_EXC`` global event channel.
>> +
>> +.. note::
>> +
>> +   While not a strict requirement for these to be the same entity, it is
>> +   ``xenstored`` which typically has ``VIRQ_DOM_EXC`` bound.  This document is
>> +   written assuming the common case.
>> +
>> +Creation
>> +--------
>> +
>> +Within Xen, the ``domain_create()`` function is used to allocate and perform
>> +bare minimum construction of a domain.  The :term:`control domain` accesses
>> +this functionality via the ``DOMCTL_createdomain`` hypercall.
>> +
>> +The final action that ``domain_create()`` performs before returning
>> +successfully is to enter the new domain into the domlist.  This makes the
>> +domain "visible" within Xen, allowing the new domid to be successfully
>> +referenced by other hypercalls.
>> +
>> +At this point, the domain exists as far as Xen is concerned, but not usefully
>> +as a VM yet.  The toolstack performs further construction activities;
>> +allocating vCPUs, RAM, copying in the initial executable code, etc.  Domains
>> +are automatically created with one "pause" reference count held, meaning that
>> +it is not eligible for scheduling.
>> +
>> +When the toolstack has finished VM construction, it send an ``XS_INTRODUCE``
>> +command to ``xenstored``.  This instructs ``xenstored`` to connect to the
>> +guest's xenstore ring, and fire the ``@introduceDomain`` watch.  The firing of
>> +this watch is the signal to all other components which care that a new VM has
>> +appeared and is about to start running.
> Presumably the xenstore ring is memory shared between xenstore and the
> newly created domain. Who establishes that connection? For the case where
> xenstore lives in dom0 things are _simpler_ because it lives in the same VM
> as the toolstack, but I suspect things are hairier when xenstore is in its
> own stubdomain. A description of the grant dance (if any), would be helpful.
>
> In that same line, having mermaid sequence diagrams would make these
> descriptions easier to follow:
>
>   https://sphinxcontrib-mermaid-demo.readthedocs.io/en/latest/

"how to connect to Xenstore" is the subject of a different document I
have planned.

I'll likely xlink it with this doc when it's done, but it's not
something to get mixed up in here, because it's extraordinary
complicated when all cases are considered.

>> +
>> +When the ``XS_INTRODUCE`` command returns successfully, the final action the
> Not knowing the internals I find the wording weird, though that might be my
> own misunderstanding. I imagine you mean "... when xenstore replies with
> the successful completion of the ``XS_INTRODUCE`` command...". Considering
> the "xenstore ring" mentioned before, I assume all xenstore comms are
> async.

All xenbus commands generate a reply.  Here I technically mean "the
reply from XS_INTRODUCE says success", but the libxenstore library wraps
them as blocking operations.

And now I'm staring at the code, I notice that libxl fails to check the
return value and assumes success... /sigh

>
>> +toolstack performs is to unpause the guest, using the ``DOMCTL_unpausedomain``
>> +hypercall.  This drops the "pause" reference the domain was originally created
>> +with, meaning that the vCPU(s) are eligible for scheduling and the domain will
>> +start executing its first instruction.
>> +
>> +.. note::
>> +
>> +   It is common for vCPUs other than 0 to be left in an offline state, to be
>> +   started by actions within the VM.
> Peculiar choice of words. I guess you don't want to pinch your fingers
> precluding other toolstack implementations doing something different. One
> possible way to express it is that "Conventionally, other vCPUs other than
> 0 are left in an offline state to be started by actions within the VM.
> This is non-normative, however, and custom Xen-based systems may
> choose to do otherwise."
>
> As is, it's unclear whether the unconventional behaviour is assumed to be a
> real possibility, a known existing bug, or uncertainty about the past,
> present and future.

There are some architectures which only support starting every thread of
a core at once.  (That said, I'm pretty sure OpenSBI already abstracts
this behaviour for kernels on RISC-V.)

When virtualised, we have the ability to undo that misbehaviour and give
the VM a nicer executing environment.


>
>> +
>> +Termination
>> +-----------
>> +
>> +The VM runs for a period of time, but eventually stops.  It can stop for a
>> +number of reasons, including:
>> +
>> + * Directly at the guest kernel's request, via the ``SCHEDOP_shutdown``
> nit: I would 's/guest kernel/guest', but that's just me. Internally the
> kernel may very well be a passive shim where the active intelligence is in
> some disaggregated network of userspace components, making the kernel just
> an accidental proxy.

Fine.

>
>> +   hypercall.  The hypercall also includes the reason for the shutdown,
>> +   e.g. ``poweroff``, ``reboot`` or ``crash``.
>> +
>> + * Indirectly from certain states.  E.g. executing a ``HLT`` instruction with
>> +   interrupts disabled is interpreted as a shutdown request as it is a common
>> +   code pattern for fatal error handling when no better options are available.
>> +
>> + * Indirectly from fatal exceptions.  In some states, execution is unable to
>> +   continue, e.g. Triple Fault on x86.
>> +
>> + * Directly from the device model, via the ``DMOP_remote_shutdown`` hypercall.
>> +   E.g. On x86, the 0xcf9 IO port is commonly used to perform platform
>> +   poweroff, reset or sleep transitions.
>> +
>> + * Directly from the toolstack.  The toolstack is capable of initiating
>> +   cleanup directly, e.g. ``xl destroy``.  This is typically an administration
>> +   action of last resort to clean up a domain which malfunctioned but not
>> +   terminated properly.
> This one is at a different abstraction layer than the others. The hypercall(s)
> being used would be more helpful, along with a line saying that the
> toolstack makes use of this through e.g: ``xl destory``.

It is a different abstraction, but it's relevant to how a VM may
terminate, and "how to implement xl destroy" isn't.
>> +
>> + * Directly from Xen.  Some error handling ends up using ``domain_crash()``
>> +   when Xen doesn't think it can safely continue running the VM.
>> +
>> +Whatever the reason for termination, Xen ends up calling ``domain_shutdown()``
>> +to set the shutdown reason and deschedule all vCPUs.  Xen also fires the
>> +``VIRQ_DOM_EXC`` event channel, which is a signal to ``xenstored``.
>> +
>> +Upon receiving ``VIRQ_DOM_EXC``, ``xenstored`` re-scans all domains using the
>> +``SYSCTL_getdomaininfolist`` hypercall.  If any domain has changed state from
>> +running to shut down, ``xenstored`` fires the ``@releaseDomain`` watch.  The
>> +firing of this watch is the signal to all other components which care that a
>> +VM has stopped.
>> +
>> +.. note::
>> +
>> +   Xen does not treat reboot differently to poweroff; both statuses are
>> +   forwarded to the toolstack.  It is up to the toolstack to restart the VM,
>> +   which is typically done by constructing a new domain.
>> +
>> +.. note::
>> +
>> +   Some shutdowns may not result in the cleanup of a domain.  ``suspend`` for
>> +   example can be used for snapshotting, and the VM resumes execution in the
>> +   same domain/domid.  Therefore, a domain can cycle several times between
>> +   running and "shut down" before moving into the destruction phase.
>> +
>> +Destruction
>> +-----------
>> +
>> +The domain object in Xen is reference counted, and survives until all
>> +references are dropped.
> What a "reference" means might help. I'd like to think it means any
> pointer to a domain, and any domid in hypervisor memory, but...
>
>> +
>> +The ``@releaseDomain`` watch is to inform all entities that hold a reference
>> +on the domain to clean up.  This may include:
> ... this statement leads me to believe only references held by trusted
> parties are collected, and by their choice (not by force). What about pages
> granted to other domains that may not whish (or be able to) comply?

That's not a question I can reasonably answer here.  There is an
atomic_t refcount in struct domain and that's ultimately what controls
the freeing of the structure, and oustanding mappings are one source
holding a ref, but there are others too.  e.g. there's one ref held for
the domain having a non-zero memory allocation.

>
>> +
>> + * Paravirtual driver backends having a grant map of the shared ring with the
>> +   frontend.
> On a related tangent, what happens if your driver domain is compromised?
> Does it suddenly hold all your domains (and their RAM!) hostage because it
> won't act upon ``@releaseDomain``?

Xen has no support for revocable grants.  It has been an issue under
discussion for more than a decade, but nothing has been completed.

If a rogue driver domain holds your memory hostage, tough.  The overall
system can recover by destroying the driver domain; one action in
DOMCTL_destroydomain is to unmap all oustanding mapped grants, which
will allow both domains to be cleaned up.
>> + * A device model with a map of the IOREQ page(s).
>> +
>> +The toolstack also has work to do in response to ``@releaseDomain``.  It must
>> +issue the ``DOMCTL_destroydomain`` hypercall.  This hypercall can take minutes
>> +of wall-clock time to complete for large domains as, amongst other things, it
>> +is freeing the domain's RAM back to the system.
>> +
>> +The actions triggered by the ``@releaseDomain`` watch are asynchronous.  There
>> +is no guarantee as to the order in which actions start, or which action is the
>> +final one to complete.  However, the toolstack can achieve some ordering by
>> +delaying the ``DOMCTL_destroydomain`` hypercall if necessary.
>> +
>> +Freeing
>> +-------
>> +
>> +When the final reference on the domain object is dropped, Xen will remove the
> nit: 's/will remove/removes'
>> +domain from the domlist.  This means the domid is no longer visible in Xen,
>> +and no longer able to be referenced by other hypercalls.
>> +
>> +Xen then schedules the object for deletion at some point after any concurrent
>> +hypercalls referencing the domain have completed.
>> +
>> +When the object is finally cleaned up, Xen fires the ``VIRQ_DOM_EXC`` event
>> +channel again, causing ``xenstored`` to rescan an notice that the domain has
>> +ceased to exist.  It fires the ``@releaseDomain`` watch a second time to
>> +signal to any components which care that the domain has gone away.
> At which point did the grant tables drop the domid references? Are we relying
> on the goodwill of the grant destination?

No - all of that is done in the previous section.  While there are
grants of the domain's mapped, it's refcount won't drop to 0.

~Andrew
--------------5aQc9fRFwlAIle0JWFaxCdbd
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: 8bit

<!DOCTYPE html>
<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body>
    <div class="moz-cite-prefix">On 17/10/2023 4:09 pm, Alejandro
      Vallejo wrote:<br>
    </div>
    <blockquote type="cite"
      cite="mid:652ea390.170a0220.fc514.3c38@mx.google.com">
      <pre class="moz-quote-pre" wrap="">The page is pretty nice overall and I quite liked it. Just a few extra
questions below, as I'm not familiar with this side of things,

On Mon, Oct 16, 2023 at 05:24:50PM +0100, Andrew Cooper wrote:
</pre>
      <blockquote type="cite">
        <pre class="moz-quote-pre" wrap="">Signed-off-by: Andrew Cooper <a class="moz-txt-link-rfc2396E" href="mailto:andrew.cooper3@citrix.com">&lt;andrew.cooper3@citrix.com&gt;</a>
---
CC: George Dunlap <a class="moz-txt-link-rfc2396E" href="mailto:George.Dunlap@eu.citrix.com">&lt;George.Dunlap@eu.citrix.com&gt;</a>
CC: Jan Beulich <a class="moz-txt-link-rfc2396E" href="mailto:JBeulich@suse.com">&lt;JBeulich@suse.com&gt;</a>
CC: Stefano Stabellini <a class="moz-txt-link-rfc2396E" href="mailto:sstabellini@kernel.org">&lt;sstabellini@kernel.org&gt;</a>
CC: Wei Liu <a class="moz-txt-link-rfc2396E" href="mailto:wl@xen.org">&lt;wl@xen.org&gt;</a>
CC: Julien Grall <a class="moz-txt-link-rfc2396E" href="mailto:julien@xen.org">&lt;julien@xen.org&gt;</a>
CC: Roger Pau Monné <a class="moz-txt-link-rfc2396E" href="mailto:roger.pau@citrix.com">&lt;roger.pau@citrix.com&gt;</a>
CC: Juergen Gross <a class="moz-txt-link-rfc2396E" href="mailto:jgross@suse.com">&lt;jgross@suse.com&gt;</a>
CC: Henry Wang <a class="moz-txt-link-rfc2396E" href="mailto:Henry.Wang@arm.com">&lt;Henry.Wang@arm.com&gt;</a>

Rendered form:
  <a class="moz-txt-link-freetext" href="https://andrewcoop-xen.readthedocs.io/en/docs-devel/hypervisor-guide/domid-lifecycle.html">https://andrewcoop-xen.readthedocs.io/en/docs-devel/hypervisor-guide/domid-lifecycle.html</a>

I'm not sure why it's using the alibaster theme and not RTD theme, but I
don't have time to debug that further at this point.

This was written mostly while sat waiting for flights in Nanjing and Beijing.

If while reading this you spot a hole, congratulations.  There are holes which
need fixing...
---
 docs/glossary.rst                         |   9 ++
 docs/hypervisor-guide/domid-lifecycle.rst | 164 ++++++++++++++++++++++
 docs/hypervisor-guide/index.rst           |   1 +
 3 files changed, 174 insertions(+)
 create mode 100644 docs/hypervisor-guide/domid-lifecycle.rst

diff --git a/docs/glossary.rst b/docs/glossary.rst
index 8ddbdab160a1..1fd1de0f0e97 100644
--- a/docs/glossary.rst
+++ b/docs/glossary.rst
@@ -50,3 +50,12 @@ Glossary
 
      By default it gets all devices, including all disks and network cards, so
      is responsible for multiplexing guest I/O.
+
+   system domain
+     Abstractions within Xen that are modelled in a similar way to regular
+     :term:`domains&lt;domain&gt;`.  E.g. When there's no work to do, Xen schedules
+     ``DOMID_IDLE`` to put the CPU into a lower power state.
+
+     System domains have :term:`domids&lt;domid&gt;` and are referenced by
+     privileged software for certain control operations, but they do not run
+     guest code.
diff --git a/docs/hypervisor-guide/domid-lifecycle.rst b/docs/hypervisor-guide/domid-lifecycle.rst
new file mode 100644
index 000000000000..d405a321f3c7
--- /dev/null
+++ b/docs/hypervisor-guide/domid-lifecycle.rst
@@ -0,0 +1,164 @@
+.. SPDX-License-Identifier: CC-BY-4.0
+
+Lifecycle of a domid
+====================
+
+Overview
+--------
+
+A :term:`domid` is Xen's numeric identifier for a :term:`domain`.  In any
+operational Xen system, there are one or more domains running.
+
+Domids are 16-bit integers.  Regular domids start from 0, but there are some
+special identifiers, e.g. ``DOMID_SELF``, and :term:`system domains&lt;system
+domain&gt;`, e.g. ``DOMID_IDLE`` starting from 0x7ff0.  Therefore, a Xen system
+can run a maximum of 32k domains concurrently.
+
+.. note::
+
+   Despite being exposed in the domid ABI, the system domains are internal to
+   Xen and do not have lifecycles like regular domains.  Therefore, they are
+   not discussed further in this document.
+
+At system boot, Xen will construct one or more domains.  Kernels and
+configuration for these domains must be provided by the bootloader, or at
+Xen's compile time for more highly integrated solutions.
+
+Correct functioning of the domain lifecycle involves ``xenstored``, and some
+privileged entity which has bound the ``VIRQ_DOM_EXC`` global event channel.
+
+.. note::
+
+   While not a strict requirement for these to be the same entity, it is
+   ``xenstored`` which typically has ``VIRQ_DOM_EXC`` bound.  This document is
+   written assuming the common case.
+
+Creation
+--------
+
+Within Xen, the ``domain_create()`` function is used to allocate and perform
+bare minimum construction of a domain.  The :term:`control domain` accesses
+this functionality via the ``DOMCTL_createdomain`` hypercall.
+
+The final action that ``domain_create()`` performs before returning
+successfully is to enter the new domain into the domlist.  This makes the
+domain "visible" within Xen, allowing the new domid to be successfully
+referenced by other hypercalls.
+
+At this point, the domain exists as far as Xen is concerned, but not usefully
+as a VM yet.  The toolstack performs further construction activities;
+allocating vCPUs, RAM, copying in the initial executable code, etc.  Domains
+are automatically created with one "pause" reference count held, meaning that
+it is not eligible for scheduling.
+
+When the toolstack has finished VM construction, it send an ``XS_INTRODUCE``
+command to ``xenstored``.  This instructs ``xenstored`` to connect to the
+guest's xenstore ring, and fire the ``@introduceDomain`` watch.  The firing of
+this watch is the signal to all other components which care that a new VM has
+appeared and is about to start running.
</pre>
      </blockquote>
      <pre class="moz-quote-pre" wrap="">Presumably the xenstore ring is memory shared between xenstore and the
newly created domain. Who establishes that connection? For the case where
xenstore lives in dom0 things are _simpler_ because it lives in the same VM
as the toolstack, but I suspect things are hairier when xenstore is in its
own stubdomain. A description of the grant dance (if any), would be helpful.

In that same line, having mermaid sequence diagrams would make these
descriptions easier to follow:

  <a class="moz-txt-link-freetext" href="https://sphinxcontrib-mermaid-demo.readthedocs.io/en/latest/">https://sphinxcontrib-mermaid-demo.readthedocs.io/en/latest/</a>
</pre>
    </blockquote>
    <br>
    "how to connect to Xenstore" is the subject of a different document
    I have planned.<br>
    <br>
    I'll likely xlink it with this doc when it's done, but it's not
    something to get mixed up in here, because it's extraordinary
    complicated when all cases are considered.<br>
    <br>
    <blockquote type="cite"
      cite="mid:652ea390.170a0220.fc514.3c38@mx.google.com">
      <pre class="moz-quote-pre" wrap="">
</pre>
      <blockquote type="cite">
        <pre class="moz-quote-pre" wrap="">+
+When the ``XS_INTRODUCE`` command returns successfully, the final action the
</pre>
      </blockquote>
      <pre class="moz-quote-pre" wrap="">Not knowing the internals I find the wording weird, though that might be my
own misunderstanding. I imagine you mean "... when xenstore replies with
the successful completion of the ``XS_INTRODUCE`` command...". Considering
the "xenstore ring" mentioned before, I assume all xenstore comms are
async.</pre>
    </blockquote>
    <br>
    All xenbus commands generate a reply.  Here I technically mean "the
    reply from XS_INTRODUCE says success", but the libxenstore library
    wraps them as blocking operations.<br>
    <br>
    And now I'm staring at the code, I notice that libxl fails to check
    the return value and assumes success... /sigh<br>
    <br>
    <blockquote type="cite"
      cite="mid:652ea390.170a0220.fc514.3c38@mx.google.com">
      <pre class="moz-quote-pre" wrap="">

</pre>
      <blockquote type="cite">
        <pre class="moz-quote-pre" wrap="">+toolstack performs is to unpause the guest, using the ``DOMCTL_unpausedomain``
+hypercall.  This drops the "pause" reference the domain was originally created
+with, meaning that the vCPU(s) are eligible for scheduling and the domain will
+start executing its first instruction.
+
+.. note::
+
+   It is common for vCPUs other than 0 to be left in an offline state, to be
+   started by actions within the VM.
</pre>
      </blockquote>
      <pre class="moz-quote-pre" wrap="">Peculiar choice of words. I guess you don't want to pinch your fingers
precluding other toolstack implementations doing something different. One
possible way to express it is that "Conventionally, other vCPUs other than
0 are left in an offline state to be started by actions within the VM.
This is non-normative, however, and custom Xen-based systems may
choose to do otherwise."

As is, it's unclear whether the unconventional behaviour is assumed to be a
real possibility, a known existing bug, or uncertainty about the past,
present and future.</pre>
    </blockquote>
    <br>
    There are some architectures which only support starting every
    thread of a core at once.  (That said, I'm pretty sure OpenSBI
    already abstracts this behaviour for kernels on RISC-V.)<br>
    <br>
    When virtualised, we have the ability to undo that misbehaviour and
    give the VM a nicer executing environment.<br>
    <br>
    <br>
    <blockquote type="cite"
      cite="mid:652ea390.170a0220.fc514.3c38@mx.google.com">
      <pre class="moz-quote-pre" wrap="">

</pre>
      <blockquote type="cite">
        <pre class="moz-quote-pre" wrap="">+
+Termination
+-----------
+
+The VM runs for a period of time, but eventually stops.  It can stop for a
+number of reasons, including:
+
+ * Directly at the guest kernel's request, via the ``SCHEDOP_shutdown``
</pre>
      </blockquote>
      <pre class="moz-quote-pre" wrap="">nit: I would 's/guest kernel/guest', but that's just me. Internally the
kernel may very well be a passive shim where the active intelligence is in
some disaggregated network of userspace components, making the kernel just
an accidental proxy.</pre>
    </blockquote>
    <br>
    Fine.<br>
    <br>
    <blockquote type="cite"
      cite="mid:652ea390.170a0220.fc514.3c38@mx.google.com">
      <pre class="moz-quote-pre" wrap="">

</pre>
      <blockquote type="cite">
        <pre class="moz-quote-pre" wrap="">+   hypercall.  The hypercall also includes the reason for the shutdown,
+   e.g. ``poweroff``, ``reboot`` or ``crash``.
+
+ * Indirectly from certain states.  E.g. executing a ``HLT`` instruction with
+   interrupts disabled is interpreted as a shutdown request as it is a common
+   code pattern for fatal error handling when no better options are available.
+
+ * Indirectly from fatal exceptions.  In some states, execution is unable to
+   continue, e.g. Triple Fault on x86.
+
+ * Directly from the device model, via the ``DMOP_remote_shutdown`` hypercall.
+   E.g. On x86, the 0xcf9 IO port is commonly used to perform platform
+   poweroff, reset or sleep transitions.
+
+ * Directly from the toolstack.  The toolstack is capable of initiating
+   cleanup directly, e.g. ``xl destroy``.  This is typically an administration
+   action of last resort to clean up a domain which malfunctioned but not
+   terminated properly.
</pre>
      </blockquote>
      <pre class="moz-quote-pre" wrap="">This one is at a different abstraction layer than the others. The hypercall(s)
being used would be more helpful, along with a line saying that the
toolstack makes use of this through e.g: ``xl destory``.</pre>
    </blockquote>
    <br>
    It is a different abstraction, but it's relevant to how a VM may
    terminate, and "how to implement xl destroy" isn't.<br>
    <span style="white-space: pre-wrap">

</span>
    <blockquote type="cite"
      cite="mid:652ea390.170a0220.fc514.3c38@mx.google.com">
      <blockquote type="cite">
        <pre class="moz-quote-pre" wrap="">+
+ * Directly from Xen.  Some error handling ends up using ``domain_crash()``
+   when Xen doesn't think it can safely continue running the VM.
+
+Whatever the reason for termination, Xen ends up calling ``domain_shutdown()``
+to set the shutdown reason and deschedule all vCPUs.  Xen also fires the
+``VIRQ_DOM_EXC`` event channel, which is a signal to ``xenstored``.
+
+Upon receiving ``VIRQ_DOM_EXC``, ``xenstored`` re-scans all domains using the
+``SYSCTL_getdomaininfolist`` hypercall.  If any domain has changed state from
+running to shut down, ``xenstored`` fires the ``@releaseDomain`` watch.  The
+firing of this watch is the signal to all other components which care that a
+VM has stopped.
+
+.. note::
+
+   Xen does not treat reboot differently to poweroff; both statuses are
+   forwarded to the toolstack.  It is up to the toolstack to restart the VM,
+   which is typically done by constructing a new domain.
+
+.. note::
+
+   Some shutdowns may not result in the cleanup of a domain.  ``suspend`` for
+   example can be used for snapshotting, and the VM resumes execution in the
+   same domain/domid.  Therefore, a domain can cycle several times between
+   running and "shut down" before moving into the destruction phase.
+
+Destruction
+-----------
+
+The domain object in Xen is reference counted, and survives until all
+references are dropped.
</pre>
      </blockquote>
      <pre class="moz-quote-pre" wrap="">What a "reference" means might help. I'd like to think it means any
pointer to a domain, and any domid in hypervisor memory, but...

</pre>
      <blockquote type="cite">
        <pre class="moz-quote-pre" wrap="">+
+The ``@releaseDomain`` watch is to inform all entities that hold a reference
+on the domain to clean up.  This may include:
</pre>
      </blockquote>
      <pre class="moz-quote-pre" wrap="">... this statement leads me to believe only references held by trusted
parties are collected, and by their choice (not by force). What about pages
granted to other domains that may not whish (or be able to) comply?</pre>
    </blockquote>
    <br>
    That's not a question I can reasonably answer here.  There is an
    atomic_t refcount in struct domain and that's ultimately what
    controls the freeing of the structure, and oustanding mappings are
    one source holding a ref, but there are others too.  e.g. there's
    one ref held for the domain having a non-zero memory allocation.<br>
    <br>
    <blockquote type="cite"
      cite="mid:652ea390.170a0220.fc514.3c38@mx.google.com">
      <pre class="moz-quote-pre" wrap="">

</pre>
      <blockquote type="cite">
        <pre class="moz-quote-pre" wrap="">+
+ * Paravirtual driver backends having a grant map of the shared ring with the
+   frontend.
</pre>
      </blockquote>
      <pre class="moz-quote-pre" wrap="">On a related tangent, what happens if your driver domain is compromised?
Does it suddenly hold all your domains (and their RAM!) hostage because it
won't act upon ``@releaseDomain``?</pre>
    </blockquote>
    <br>
    Xen has no support for revocable grants.  It has been an issue under
    discussion for more than a decade, but nothing has been completed.<br>
    <br>
    If a rogue driver domain holds your memory hostage, tough.  The
    overall system can recover by destroying the driver domain; one
    action in DOMCTL_destroydomain is to unmap all oustanding mapped
    grants, which will allow both domains to be cleaned up.<br>
    <span style="white-space: pre-wrap">

</span>
    <blockquote type="cite"
      cite="mid:652ea390.170a0220.fc514.3c38@mx.google.com">
      <blockquote type="cite">
        <pre class="moz-quote-pre" wrap="">+ * A device model with a map of the IOREQ page(s).
+
+The toolstack also has work to do in response to ``@releaseDomain``.  It must
+issue the ``DOMCTL_destroydomain`` hypercall.  This hypercall can take minutes
+of wall-clock time to complete for large domains as, amongst other things, it
+is freeing the domain's RAM back to the system.
+
+The actions triggered by the ``@releaseDomain`` watch are asynchronous.  There
+is no guarantee as to the order in which actions start, or which action is the
+final one to complete.  However, the toolstack can achieve some ordering by
+delaying the ``DOMCTL_destroydomain`` hypercall if necessary.
+
+Freeing
+-------
+
+When the final reference on the domain object is dropped, Xen will remove the
</pre>
      </blockquote>
      <pre class="moz-quote-pre" wrap="">nit: 's/will remove/removes'
</pre>
      <blockquote type="cite">
        <pre class="moz-quote-pre" wrap="">+domain from the domlist.  This means the domid is no longer visible in Xen,
+and no longer able to be referenced by other hypercalls.
+
+Xen then schedules the object for deletion at some point after any concurrent
+hypercalls referencing the domain have completed.
+
+When the object is finally cleaned up, Xen fires the ``VIRQ_DOM_EXC`` event
+channel again, causing ``xenstored`` to rescan an notice that the domain has
+ceased to exist.  It fires the ``@releaseDomain`` watch a second time to
+signal to any components which care that the domain has gone away.
</pre>
      </blockquote>
      <pre class="moz-quote-pre" wrap="">At which point did the grant tables drop the domid references? Are we relying
on the goodwill of the grant destination?</pre>
    </blockquote>
    <br>
    No - all of that is done in the previous section.  While there are
    grants of the domain's mapped, it's refcount won't drop to 0.<br>
    <br>
    ~Andrew<br>
  </body>
</html>

--------------5aQc9fRFwlAIle0JWFaxCdbd--


From xen-devel-bounces@lists.xenproject.org Wed Oct 18 11:58:06 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 11:58:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618531.962271 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qt5BT-0005HE-5I; Wed, 18 Oct 2023 11:57:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618531.962271; Wed, 18 Oct 2023 11:57: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 1qt5BT-0005H7-2g; Wed, 18 Oct 2023 11:57:55 +0000
Received: by outflank-mailman (input) for mailman id 618531;
 Wed, 18 Oct 2023 11:57: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 1qt5BR-0005Gx-Rn; Wed, 18 Oct 2023 11:57: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 1qt5BR-0004b8-Mf; Wed, 18 Oct 2023 11:57: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 1qt5BR-0001Zs-6P; Wed, 18 Oct 2023 11:57:53 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qt5BR-000348-5v; Wed, 18 Oct 2023 11:57: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=Gmmgatswss7idU4Lik7Nz+UL8AANmABv3m5YWLyxj9M=; b=OzYQnfDiU+Ukoww8kAw4s1uLdq
	H6D2KpXdddN6SBe7BxCYSvMc7m+yzJvLRpWPSj6/WXg5Hr58njRUOBp5JWG/yFD/nytJoqz4gI8eC
	5rTWWmiaL4ULdABiebXyqI1oKDM+T8vHDdgEpQbtzKH46IneLLbTYGODrpOum53BYGXs=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183407-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [libvirt test] 183407: tolerable all pass - PUSHED
X-Osstest-Failures:
    libvirt:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt: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-amd64-amd64-libvirt-vhd: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-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    libvirt=11839c8cc1d204ec3abdb3a0d9499b64dc83fc83
X-Osstest-Versions-That:
    libvirt=0c5f37364ffcbdd58ef34ec35d081843d2e144b4
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 18 Oct 2023 11:57:53 +0000

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

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183395
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183395
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183395
 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-amd64-amd64-libvirt-vhd 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-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-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     15 migrate-support-check        fail   never pass

version targeted for testing:
 libvirt              11839c8cc1d204ec3abdb3a0d9499b64dc83fc83
baseline version:
 libvirt              0c5f37364ffcbdd58ef34ec35d081843d2e144b4

Last test of basis   183395  2023-10-17 04:20:33 Z    1 days
Testing same since   183407  2023-10-18 04:18:51 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  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
   0c5f37364f..11839c8cc1  11839c8cc1d204ec3abdb3a0d9499b64dc83fc83 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Wed Oct 18 12:29:29 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 12:29:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618539.962281 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qt5fm-0002ps-LX; Wed, 18 Oct 2023 12:29:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618539.962281; Wed, 18 Oct 2023 12: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 1qt5fm-0002pl-Iu; Wed, 18 Oct 2023 12:29:14 +0000
Received: by outflank-mailman (input) for mailman id 618539;
 Wed, 18 Oct 2023 12: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=EezS=GA=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qt5fl-0002pf-9a
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 12:29:13 +0000
Received: from EUR01-DB5-obe.outbound.protection.outlook.com
 (mail-db5eur01on0620.outbound.protection.outlook.com
 [2a01:111:f400:fe02::620])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id ef37ce9a-6db1-11ee-9b0e-b553b5be7939;
 Wed, 18 Oct 2023 14:29:08 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DB9PR04MB9428.eurprd04.prod.outlook.com (2603:10a6:10:368::8) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.36; Wed, 18 Oct
 2023 12:29:05 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%7]) with mapi id 15.20.6907.022; Wed, 18 Oct 2023
 12:29: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: ef37ce9a-6db1-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=hiqHSLhGF/4gI0A/AvWMZIIcHY9Ut6eCj6zZUWg6PjNOnim10QLl6gCW20G7Yk0cHarPPCxizgNR91VIxlXgCeaymDVYckK2SwspV3HfJt2ULupwg4xflcpAhX4XjQ6mmI/tW3pris/kufVYPbGCUGT1Ff82kbR3RGRMQUZQCaLa2DVURI0I7smsM4L1nzJAtlUzFkUSTOhNadUHZXhDKLDl+s5fz/AT7wQfstSgt9drmIlDesP3O4p+CGMDrfxpLUafAuhvBzrOCCNAewFSfMkwIiLxAoaJzh3QAMTPDuFZW+cAnzyWffSRWgs+z6cSraELCVJGIAL6u3N8K+gZVA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=D2rrSjuV2MtVq4owiuIMMMyxRvsRjf8DFN/f1vE6/hc=;
 b=ISjNxkMSD9buWXuPX2klBKc4Zf7kFPhWAzuFqgrpLPpOTktjanCqCm3ar4gNlnQME1DJWsrBp1jd98TP1wwzfpJmlzWJdnV94d0/vRn4Zl2oYbdS5FsjbOjdfWzr1VtuK/SiuAWRKjxynmV05uUwN4050H9MDHlcX1+AT6wu6UCuEYvJOb76wa8KuClnfRi96aBZg6Wpju5FXn2ordIsBt3Q6CcAI+8o4IdOq+KCJX2BcWww3qukm/yNnVaWLrR/sRipqF2W40YbKncXlJfSobwPg1cQqa008bXezx7TXxQTLZry1yeyfUuaKqBKRlJhd1suSyvj4Oet5S1EPZu1nA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=D2rrSjuV2MtVq4owiuIMMMyxRvsRjf8DFN/f1vE6/hc=;
 b=xhA1QRbVEOlZXc83ZS52K4mEquYNnxIgjngF45D7IzYtLjeIjnbsKfGxARw0BKc0Av2IUe4LI7CF2vUdkCcXBSZ/haEz5Li8scgYjLHpgcoVPtcTf0PgcNZSF3q2SHJXrJswO4aL00CQdr4MkRTEPrsQvheShNF00N6XElwxkPUn5laYbXTbzNS6KCAJ1RZ01RK++AZA5Pj9IzUFexFx20QN9upb9LZr6b2hVUr8lGvHvU54lQEKDaExhqeN0Z4+TRAupoVp23xtXmx2nECS/vlFGE4VJU/HTNCxFUdPP9AC+7Xpqq3wkkcHJOG4oKBQSOe9jNARSGHRuroi/zgfwQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <27f708ff-e94b-1ced-34f6-a41264ed43fb@suse.com>
Date: Wed, 18 Oct 2023 14:29: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 RFC] x86/CPUID: bump max leaf values for guest exposure
Content-Language: en-US
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: Wei Liu <wl@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: <4fe76484-fa35-807f-2323-276087469bc2@suse.com>
 <35f127f6-9c5e-4832-b116-cdc9a9ff1fd8@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <35f127f6-9c5e-4832-b116-cdc9a9ff1fd8@citrix.com>
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_|DB9PR04MB9428:EE_
X-MS-Office365-Filtering-Correlation-Id: 4980ccde-f6de-47ec-76f9-08dbcfd5d1a4
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	ToG+1QHdqxvXS4ICnpU/v3Z8YEMzBCqggCjkdu61F5mbKX5JApW4Sx949wrknrUQ0KDAWajHHCRU2rlfzYxsHIGS607nRRtwCPvfdsEB0FpSfKXYpVjws2oWK4FuOmI8Ug5kaYQBheYwuiEUQkMfjLEeu1s7VWQ6+egKio4WLeBKO0mcG2eFk0jpEIYj2DCQ4B9MhazOaM8AZu5Hro6PdxcNP9JoLTwHqS3GpJQ6D3gtdGf60fOfb0Ax4i+v+MJ5udD/+/vFK1+zHgY0dNdMg1Y+Q8VUk9MG6cl9PKdKXvq7RECKrju1evrYxUsEfJiYXInST9PXir/CIHNTTTxJ4UDKHlYjh/PoIO3lFjGp6sIpVmZXwxhE8CgCSS7pBH2pXpAVPEm/1/DjN2zOc4YnatZE+nFRspWxUeXgZYc8oDouuMzLCcE+yeXrv5HMONttzoaUP9icBKWbOHI533ZQh1T/nDdOMfn2QyEBdakugfExoTEzunlckpw5isKXgayST2IQoSbASnlWEgUgBf++5yPRLMRWDBqtOsTcmlr7ZM5R5+4lbNYcGqENuXbzEUsdCOQxtOvUcXizmDIkpu25bGNNmxbka/EQ6jsINTg7nJtr2cp+UoqIi5FUO09h53Y+z0Zw5NmKEn9PJvH/04nYQg==
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)(376002)(136003)(346002)(230922051799003)(186009)(1800799009)(64100799003)(451199024)(6486002)(54906003)(66476007)(478600001)(66946007)(6916009)(66556008)(83380400001)(6506007)(41300700001)(6512007)(2616005)(26005)(2906002)(4326008)(8676002)(5660300002)(36756003)(8936002)(31696002)(86362001)(38100700002)(316002)(53546011)(31686004)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?dVlFM0RCUEpwNDNnMjJVa0JFemZFZXZsczZHSFZqZTN3eWZMQkt6eXdJMkcw?=
 =?utf-8?B?YmZxOXRvZ1hrOHJCRVgrYi95K0tCSWdZY1lUTmlXNzRMTENzR2t3cUFud1Zo?=
 =?utf-8?B?VXhOWFBVbW9tYUNnOTg1blpuTTlLM1Q5QXlaZ0VMOHh4Y2c5R0RTME9XVksw?=
 =?utf-8?B?TEJmUFkwNm9XRWF0cjdvRnJ2ZTlqRlNHUm5xakVRd3pEVFppbUR2YlU1NDFs?=
 =?utf-8?B?MXhGS0JSYmFNVHpvcWowNUIvT2pZMDdZVUJKdXZ6aDg2WjNmajUxUjYwbFFK?=
 =?utf-8?B?SG9Obkc3WEJYR0FObXpobDRnVjdkZVhkWHI4S0FRMUd4bkFSMDlOTWFQRGkr?=
 =?utf-8?B?b0kwVkp5UXZNYzcrSTZMZU1zU3Ird0ZzWHV1TUZhWk9YdkEveWt1dFp1MnlC?=
 =?utf-8?B?Um1FUTRONnNHTkkxUDJ0Uk11Y3JQUU9TVVZ4RmRHQzhCMlZQd2pSeEJKMGUz?=
 =?utf-8?B?a3Qxa1JKSngyTEhHT1RQdEhkNDNLYVZSbXN5YVVNejZEWGhGKzRUWkxGRFVM?=
 =?utf-8?B?U1ZtdjNHcnpqcXgwRU9yNHVZV1VSWVVqNmhFUkJFODJ4d0ZiL0ZzYlFnNDVt?=
 =?utf-8?B?ak9DSGttQlBGWFJJZnJRUTRJYkRyTDkzYTN2d242dDJWSjExMWlOYXZCakpH?=
 =?utf-8?B?UXk2NWN4ams3UlRyM2xtNDlKSFQyTlRWeCtJQmk0S0JVVytzdWtqTkl1S0Ev?=
 =?utf-8?B?QUxmditmMksreHdVc3ZRdFFBRUc5MnVOalVwNHNhUkFFQzlwVHRKNVNUajJS?=
 =?utf-8?B?NDR0VWhwOUllQk1jMlY3YlN4Z3krL3VIa2xKbVFZS0lRdkJ0T1B4YW1LdVFo?=
 =?utf-8?B?bXdqWUdYWFBDMCtSS241WG00OGhKS0NmU3luVVgralI5eWlkZGx3ZXNieEtk?=
 =?utf-8?B?VTJhRFFyZENGSytxWWVGczk1a0lUb2xEeEdpY2psMVIyOFlZUHBRbmpwRXR5?=
 =?utf-8?B?RXE5Mkt4Mnl6YzcrZDM5VEF0dCsveWFoK0VXZE9DR1lCYms4NEdVOTZudnlo?=
 =?utf-8?B?YmtwNGF0VWJBeVd1cVFPM3YwbVRoNVZST0RsWldrWTVjMmtoTmNFdTFUUWMy?=
 =?utf-8?B?bVlhN29yUE1zT05jSUIzcHdJc1RUT3ZUdEVuOTlDSUZHNldyZUxmWUM1ZHl1?=
 =?utf-8?B?OEtlK1hNSkkzTjF1dkJHMGRnaWtycnl6K0drREQ4S09rUEpmL2lBQndMeG5R?=
 =?utf-8?B?VU4xT0RXbGZibVZMcVVTTTZMTkpvdFV3SVNyRDNNb2pNb3RpV1Zwc0Izb3NZ?=
 =?utf-8?B?bnNyTXBRNEhiMVd5YVNGYnJKaGp5THVveVVxZnMwNCtGVTY2WTNtU1o3MWd0?=
 =?utf-8?B?OHU3L3RnK1BpRzh6bnhPL1JDYmRWcGlMYmZiOTNadmEvZjRDVmNmakZWeEtq?=
 =?utf-8?B?QUFiZnBGQmd1OXpaNVpHdUcwNXU1bkhEV0NOQTJnN2xybldmeUZqTE1vOWNn?=
 =?utf-8?B?V1JacDVkbisyTGhKb1F6Y2lEeVJOaEJVQWdSaFlTNlBVRXFXM1N2ckdBZk13?=
 =?utf-8?B?bDdSRTVBSWRtV1pGTDJkOUIwdjNrWXNiU05IWDBYalZjZVZTSkxpZW0raG8v?=
 =?utf-8?B?TWxTaVlaSTZ5WnZoV3lONFZ6dzBESFhydDNhbHA0VlBxdXV0cG8vd3VoclA0?=
 =?utf-8?B?bXVSMHJhQkdHNDlERjQ2WENpYmFJYmJOZ0lKazFRNGhFODEzMWpYb2hnUVZv?=
 =?utf-8?B?ZXJObG1BWnVVRkI2RXpLcEl3MVJ0WFFBdGl5Q2lKdGF5ZlZNbHMxaUJrRmxq?=
 =?utf-8?B?Qm5mNmVDSjg2ZzdwSmM5VFFTWXdKSkFzKzZqMW45ejY5b2dKWkYreVZkZ3Nx?=
 =?utf-8?B?cTA5Z2Y1aFZIa09JYXYvRlJwd1lIYURtU1EyMjY0QW5aaUhybUN0NGM0M01H?=
 =?utf-8?B?TWo1b1hTNTkxcEpsS2d3elFoZlE0bDc2K0FPOXFSczRXSW1nK3hVU05vQUFJ?=
 =?utf-8?B?NlNnM0V2Yk1YWXkvWmFCWS80czVPV1JjVDNJeU9jbUZUMGZ0cGcyMW1WcmRh?=
 =?utf-8?B?dmp5QkxGZnNUSVB6UnhqSkVMWnp5WjdIOUV6K3k3WEJRNG1UaVhyY21xSXl6?=
 =?utf-8?B?cGFDenRsMno2cnlIYjg1YWdtWjlUcWlIU2RadmdWNXEvM1dmaGxzOUIySk1M?=
 =?utf-8?Q?y4sk8zLYzhDnHoZeG0iAyi2Po?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 4980ccde-f6de-47ec-76f9-08dbcfd5d1a4
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Oct 2023 12:29:05.6183
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: zCV1DQzMKsF42f71nVreqWmZzUSXPagsgv4homNZM9LuzWkkw7Qwp1wX3S+y/ekxuou8LlcVD1EuqnEwi7QY+w==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR04MB9428

On 18.10.2023 12:59, Andrew Cooper wrote:
> On 17/08/2023 7:22 am, Jan Beulich wrote:
>> --- a/xen/lib/x86/cpuid.c
>> +++ b/xen/lib/x86/cpuid.c
>> @@ -104,6 +104,22 @@ void x86_cpu_featureset_to_policy(
>>      p->feat._7d1             = fs[FEATURESET_7d1];
>>      p->arch_caps.lo          = fs[FEATURESET_m10Al];
>>      p->arch_caps.hi          = fs[FEATURESET_m10Ah];
>> +
>> +    /*
>> +     * We may force-enable certain features, which then needs reflecting in
>> +     * respective max leaf / subleaf values.
>> +     *
>> +     * ARCH_CAPS lives in 7d0.
>> +     */
>> +    if ( p->feat._7d0 && p->basic.max_leaf < 7 )
>> +        p->basic.max_leaf = 7;
>> +
>> +    /*
>> +     * AMD's speculation related features (e.g. LFENCE_DISPATCH) live in
>> +     * leaf e21a.
>> +     */
>> +    if ( p->extd.e21a && p->extd.max_leaf < 0x80000021 )
>> +        p->extd.max_leaf = 0x80000021;
> 
> This logic cannot live here - this function is a simple deserialisation
> of an array.
> 
> Such logic belongs in create compatible policy, the patch for which has
> been pending even longer.

What's that patch's status?

Also the extended leaf bumping previously lived in calculate_host_policy()
alone, which isn't anywhere near "create compatible policy" either.

> The toolstack does need to take when extending like this, and it is not
> safe to do it automatically like this.

Feels like there's a word missing in the sentence, so it leaves some
guessing room. Question is - if it can't be done automatically (see also
the RFC: remark in the patch), how do we achieve a consistent resulting
policy? Plus I'm not sure we can distinguish the tool stack requesting
certain max leaf values merely because of finding them this way, from
a lower value being the result of a guest config setting.

Jan


From xen-devel-bounces@lists.xenproject.org Wed Oct 18 12:30:07 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 12:30:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618541.962292 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qt5gc-0004Ai-Ue; Wed, 18 Oct 2023 12:30:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618541.962292; Wed, 18 Oct 2023 12:30: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 1qt5gc-0004Ab-RD; Wed, 18 Oct 2023 12:30:06 +0000
Received: by outflank-mailman (input) for mailman id 618541;
 Wed, 18 Oct 2023 12:30: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=BVsY=GA=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qt5gb-0003E8-5H
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 12:30:05 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 10596059-6db2-11ee-98d4-6d05b1d4d9a1;
 Wed, 18 Oct 2023 14:30:04 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id BA38D4EE0738;
 Wed, 18 Oct 2023 14:30: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: 10596059-6db2-11ee-98d4-6d05b1d4d9a1
MIME-Version: 1.0
Date: Wed, 18 Oct 2023 14:30:03 +0200
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: Julien Grall <julien@xen.org>
Cc: Jan Beulich <jbeulich@suse.com>, Andrew Cooper
 <andrew.cooper3@citrix.com>, Xen-devel <xen-devel@lists.xenproject.org>,
 consulting@bugseng.com, Stefano Stabellini <sstabellini@kernel.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>, roger.pau@citrix.com, George
 Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>
Subject: Re: MISRA C:2012 D4.11 caution on staging
In-Reply-To: <3573c8c2-1a9c-444c-a542-539b16f689f2@xen.org>
References: <7972c20f361126022fa97f6b51ca2d9c@bugseng.com>
 <61f04d4b-34d9-4fd1-a989-56b042b4f3d8@citrix.com>
 <baa73fa24385b39bc6e82c4ccb08bd13@bugseng.com>
 <26f09702-9340-41ae-afcc-808becb67876@citrix.com>
 <75a00257-c062-4d82-9b64-1707ce4566e6@xen.org>
 <594c09e1f8b2e1e8321c2cb862fcb378@bugseng.com>
 <5ddb6398-f2a3-4bcb-8808-bad653b6c3cd@xen.org>
 <c4f4f1fc-b20a-c08f-9782-9ce06f6dd868@suse.com>
 <3573c8c2-1a9c-444c-a542-539b16f689f2@xen.org>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <8c25bfd7768d6b290362f56a8b8d44d9@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 17/10/2023 15:28, Julien Grall wrote:
> Hi Jan,
> 
> On 17/10/2023 07:11, Jan Beulich wrote:
>> On 16.10.2023 20:06, Julien Grall wrote:
>>> Instead, it would be best to find a way to help Eclair to detect this 
>>> is
>>> not an issue and also improve readability. Would the following help 
>>> Eclair?
>>> 
>>> diff --git a/xen/common/domain.c b/xen/common/domain.c
>>> index 30c227967345..ab16124eabd6 100644
>>> --- a/xen/common/domain.c
>>> +++ b/xen/common/domain.c
>>> @@ -671,6 +671,8 @@ struct domain *domain_create(domid_t domid,
>>> 
>>>        if ( !is_idle_domain(d) )
>>>        {
>>> +        ASSERT(config);
>>> +
>>>            watchdog_domain_init(d);
>>>            init_status |= INIT_watchdog;
>> 
>> Just to mention it: Even if right now it turned out to help, it 
>> wouldn't
>> once release builds are also checked.
> 
> Indeed. I thought about it when writing the e-mail yesterday. I have
> the feeling that we are not getting many similar report today thanks
> to the various ASSERT().
> 
> This may mean that the ASSERT() will have to be kept during static
> analysis or we deviate/add proper error checking.
> 
> Cheers,

I tested this, and the report is prevented by the ASSERT. It's up to the 
maintainers to
decide how do you want to proceed: my suggestion is deviating it, and 
then when someone
has the time to fix this with proper error handling remove the 
deviation.

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


From xen-devel-bounces@lists.xenproject.org Wed Oct 18 12:38:34 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 12:38:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618546.962302 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qt5oj-0005jX-On; Wed, 18 Oct 2023 12:38:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618546.962302; Wed, 18 Oct 2023 12:38: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 1qt5oj-0005jQ-MC; Wed, 18 Oct 2023 12:38:29 +0000
Received: by outflank-mailman (input) for mailman id 618546;
 Wed, 18 Oct 2023 12:38: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 1qt5oi-0005jK-DV
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 12:38: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 1qt5oh-0005al-4B; Wed, 18 Oct 2023 12:38:27 +0000
Received: from 54-240-197-234.amazon.com ([54.240.197.234]
 helo=[192.168.7.230]) by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qt5og-0003vd-T2; Wed, 18 Oct 2023 12:38: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:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=7JgcD+65hPVQqgszRth+TW0IiGjRqcomXwa+Uj38sCo=; b=Ifg3vvUOAGsvXTnQFqCg0gB+rq
	m4k99HR0BFoqpZLlC7gVbGaWzUGIWFAglTOeYk609KikDGWwnUrUaZ4QOP5fKruS5Am1JUFX16tI/
	t2qYfduQs6hN5KtT5hfBSgv3wfAmaqlMggxTHe+XrK1xliJeBVWr8KtMPdDfTVF2wf8o=;
Message-ID: <c47528e7-e202-4b5b-85ae-3bb0d1d0b608@xen.org>
Date: Wed, 18 Oct 2023 13:38:24 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: MISRA C:2012 D4.11 caution on staging
Content-Language: en-GB
To: Nicola Vetrini <nicola.vetrini@bugseng.com>
Cc: Jan Beulich <jbeulich@suse.com>, Andrew Cooper
 <andrew.cooper3@citrix.com>, Xen-devel <xen-devel@lists.xenproject.org>,
 consulting@bugseng.com, Stefano Stabellini <sstabellini@kernel.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>, roger.pau@citrix.com,
 George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>
References: <7972c20f361126022fa97f6b51ca2d9c@bugseng.com>
 <61f04d4b-34d9-4fd1-a989-56b042b4f3d8@citrix.com>
 <baa73fa24385b39bc6e82c4ccb08bd13@bugseng.com>
 <26f09702-9340-41ae-afcc-808becb67876@citrix.com>
 <75a00257-c062-4d82-9b64-1707ce4566e6@xen.org>
 <594c09e1f8b2e1e8321c2cb862fcb378@bugseng.com>
 <5ddb6398-f2a3-4bcb-8808-bad653b6c3cd@xen.org>
 <c4f4f1fc-b20a-c08f-9782-9ce06f6dd868@suse.com>
 <3573c8c2-1a9c-444c-a542-539b16f689f2@xen.org>
 <8c25bfd7768d6b290362f56a8b8d44d9@bugseng.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <8c25bfd7768d6b290362f56a8b8d44d9@bugseng.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi Nicola,

On 18/10/2023 13:30, Nicola Vetrini wrote:
> On 17/10/2023 15:28, Julien Grall wrote:
> I tested this, and the report is prevented by the ASSERT. It's up to the 
> maintainers to
> decide how do you want to proceed: my suggestion is deviating it,

It is not clear to me what would you deviate. Can you clarify?

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Wed Oct 18 12:51:19 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 12:51:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618549.962312 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qt611-0000Vf-Sd; Wed, 18 Oct 2023 12:51:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618549.962312; Wed, 18 Oct 2023 12:51: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 1qt611-0000VY-Pm; Wed, 18 Oct 2023 12:51:11 +0000
Received: by outflank-mailman (input) for mailman id 618549;
 Wed, 18 Oct 2023 12:51: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=MOie=GA=bugseng.com=federico.serafini@srs-se1.protection.inumbo.net>)
 id 1qt610-0000VS-Om
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 12:51:10 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 01e2b170-6db5-11ee-9b0e-b553b5be7939;
 Wed, 18 Oct 2023 14:51:08 +0200 (CEST)
Received: from Dell.bugseng.com (unknown [37.161.127.233])
 by support.bugseng.com (Postfix) with ESMTPSA id 406D14EE0738;
 Wed, 18 Oct 2023 14:51: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: 01e2b170-6db5-11ee-9b0e-b553b5be7939
From: Federico Serafini <federico.serafini@bugseng.com>
To: xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com,
	Federico Serafini <federico.serafini@bugseng.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: [XEN PATCH v2] arm/cpufeature: address violations of MISRA C:2012 Rule 8.2
Date: Wed, 18 Oct 2023 14:50:46 +0200
Message-Id: <7976ea7591a073a7896c2cfe9d0b1b77f414731a.1697632684.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. No functional change.

Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
---
Changes in v2:
- fixed names.
---
 xen/arch/arm/include/asm/cpufeature.h | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/xen/arch/arm/include/asm/cpufeature.h b/xen/arch/arm/include/asm/cpufeature.h
index 8011076b8c..c95582044a 100644
--- a/xen/arch/arm/include/asm/cpufeature.h
+++ b/xen/arch/arm/include/asm/cpufeature.h
@@ -127,8 +127,8 @@ static inline void cpus_set_cap(unsigned int num)
 struct arm_cpu_capabilities {
     const char *desc;
     u16 capability;
-    bool (*matches)(const struct arm_cpu_capabilities *);
-    int (*enable)(void *); /* Called on every active CPUs */
+    bool (*matches)(const struct arm_cpu_capabilities *entry);
+    int (*enable)(void *data); /* Called on every active CPUs */
     union {
         struct {    /* To be used for eratum handling only */
             u32 midr_model;
@@ -448,10 +448,10 @@ struct cpuinfo_arm {
 
 extern struct cpuinfo_arm system_cpuinfo;
 
-extern void identify_cpu(struct cpuinfo_arm *);
+extern void identify_cpu(struct cpuinfo_arm *c);
 
 #ifdef CONFIG_ARM_64
-extern void update_system_features(const struct cpuinfo_arm *);
+extern void update_system_features(const struct cpuinfo_arm *new);
 #else
 static inline void update_system_features(const struct cpuinfo_arm *cpuinfo)
 {
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Wed Oct 18 12:52:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 12:52:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618552.962322 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qt62Y-000133-76; Wed, 18 Oct 2023 12:52:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618552.962322; Wed, 18 Oct 2023 12:52: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 1qt62Y-00012w-3d; Wed, 18 Oct 2023 12:52:46 +0000
Received: by outflank-mailman (input) for mailman id 618552;
 Wed, 18 Oct 2023 12: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=BVsY=GA=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qt62W-00012o-Ub
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 12:52:44 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 3a45bacc-6db5-11ee-9b0e-b553b5be7939;
 Wed, 18 Oct 2023 14:52:43 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id CDED84EE0739;
 Wed, 18 Oct 2023 14:52: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: 3a45bacc-6db5-11ee-9b0e-b553b5be7939
MIME-Version: 1.0
Date: Wed, 18 Oct 2023 14:52:42 +0200
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: Julien Grall <julien@xen.org>
Cc: Jan Beulich <jbeulich@suse.com>, Andrew Cooper
 <andrew.cooper3@citrix.com>, Xen-devel <xen-devel@lists.xenproject.org>,
 consulting@bugseng.com, Stefano Stabellini <sstabellini@kernel.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>, roger.pau@citrix.com, George
 Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>
Subject: Re: MISRA C:2012 D4.11 caution on staging
In-Reply-To: <c47528e7-e202-4b5b-85ae-3bb0d1d0b608@xen.org>
References: <7972c20f361126022fa97f6b51ca2d9c@bugseng.com>
 <61f04d4b-34d9-4fd1-a989-56b042b4f3d8@citrix.com>
 <baa73fa24385b39bc6e82c4ccb08bd13@bugseng.com>
 <26f09702-9340-41ae-afcc-808becb67876@citrix.com>
 <75a00257-c062-4d82-9b64-1707ce4566e6@xen.org>
 <594c09e1f8b2e1e8321c2cb862fcb378@bugseng.com>
 <5ddb6398-f2a3-4bcb-8808-bad653b6c3cd@xen.org>
 <c4f4f1fc-b20a-c08f-9782-9ce06f6dd868@suse.com>
 <3573c8c2-1a9c-444c-a542-539b16f689f2@xen.org>
 <8c25bfd7768d6b290362f56a8b8d44d9@bugseng.com>
 <c47528e7-e202-4b5b-85ae-3bb0d1d0b608@xen.org>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <87b5936151ace813d9dc9592ee35f86e@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 18/10/2023 14:38, Julien Grall wrote:
> Hi Nicola,
> 
> On 18/10/2023 13:30, Nicola Vetrini wrote:
>> On 17/10/2023 15:28, Julien Grall wrote:
>> I tested this, and the report is prevented by the ASSERT. It's up to 
>> the maintainers to
>> decide how do you want to proceed: my suggestion is deviating it,
> 
> It is not clear to me what would you deviate. Can you clarify?
> 
> Cheers,

The memcpy call, as in:

/* SAF-x-false-positive-eclair */
memcpy(d->handle, config->handle, sizeof(d->handle));

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


From xen-devel-bounces@lists.xenproject.org Wed Oct 18 13:02:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 13:02:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618557.962332 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qt6CB-0003Kx-3d; Wed, 18 Oct 2023 13:02:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618557.962332; Wed, 18 Oct 2023 13:02: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 1qt6CB-0003Kq-0m; Wed, 18 Oct 2023 13:02:43 +0000
Received: by outflank-mailman (input) for mailman id 618557;
 Wed, 18 Oct 2023 13:02: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 1qt6C9-0003Kk-W9
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 13:02: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 1qt6C8-00062f-CS; Wed, 18 Oct 2023 13:02:40 +0000
Received: from 54-240-197-226.amazon.com ([54.240.197.226]
 helo=[192.168.7.230]) by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qt6C8-00057p-4Q; Wed, 18 Oct 2023 13: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>
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=K4XRwzZNGDricRLKmCYNfv1BzdfS1J1o7rRHHv2QCuM=; b=un0mf8dpqIjlzxc91qaIjXTqPp
	yL1HrTNhbjWLfN6KtaH1TvpB45U1t8pnyk5+FHdllcLSVciHTL/ZTTu2RBwP9j19YFo0Nx1ZFewxL
	1BVdfW6zw9ahEB+xeGGFaSWMN48X/MPzCYzxNVQkWc1CwMzLkDXhA9S2SjfjUPk0zJ+8=;
Message-ID: <1aaea648-b156-4297-b290-9c7b7a5010fd@xen.org>
Date: Wed, 18 Oct 2023 14:02:37 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: MISRA C:2012 D4.11 caution on staging
Content-Language: en-GB
To: Nicola Vetrini <nicola.vetrini@bugseng.com>
Cc: Jan Beulich <jbeulich@suse.com>, Andrew Cooper
 <andrew.cooper3@citrix.com>, Xen-devel <xen-devel@lists.xenproject.org>,
 consulting@bugseng.com, Stefano Stabellini <sstabellini@kernel.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>, roger.pau@citrix.com,
 George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>
References: <7972c20f361126022fa97f6b51ca2d9c@bugseng.com>
 <61f04d4b-34d9-4fd1-a989-56b042b4f3d8@citrix.com>
 <baa73fa24385b39bc6e82c4ccb08bd13@bugseng.com>
 <26f09702-9340-41ae-afcc-808becb67876@citrix.com>
 <75a00257-c062-4d82-9b64-1707ce4566e6@xen.org>
 <594c09e1f8b2e1e8321c2cb862fcb378@bugseng.com>
 <5ddb6398-f2a3-4bcb-8808-bad653b6c3cd@xen.org>
 <c4f4f1fc-b20a-c08f-9782-9ce06f6dd868@suse.com>
 <3573c8c2-1a9c-444c-a542-539b16f689f2@xen.org>
 <8c25bfd7768d6b290362f56a8b8d44d9@bugseng.com>
 <c47528e7-e202-4b5b-85ae-3bb0d1d0b608@xen.org>
 <87b5936151ace813d9dc9592ee35f86e@bugseng.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <87b5936151ace813d9dc9592ee35f86e@bugseng.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi,

On 18/10/2023 13:52, Nicola Vetrini wrote:
> On 18/10/2023 14:38, Julien Grall wrote:
>> Hi Nicola,
>>
>> On 18/10/2023 13:30, Nicola Vetrini wrote:
>>> On 17/10/2023 15:28, Julien Grall wrote:
>>> I tested this, and the report is prevented by the ASSERT. It's up to 
>>> the maintainers to
>>> decide how do you want to proceed: my suggestion is deviating it,
>>
>> It is not clear to me what would you deviate. Can you clarify?
>>
>> Cheers,
> 
> The memcpy call, as in:
> 
> /* SAF-x-false-positive-eclair */
> memcpy(d->handle, config->handle, sizeof(d->handle));

I am not in favor of this deviation. It could be a false positive today, 
but it may not be in the future.

I much prefer the ASSERT() version or the rework.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Wed Oct 18 13:15:03 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 13:15:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618560.962341 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qt6Nx-0006NM-4A; Wed, 18 Oct 2023 13:14:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618560.962341; Wed, 18 Oct 2023 13:14: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 1qt6Nx-0006NF-1b; Wed, 18 Oct 2023 13:14:53 +0000
Received: by outflank-mailman (input) for mailman id 618560;
 Wed, 18 Oct 2023 13:14: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=MOie=GA=bugseng.com=federico.serafini@srs-se1.protection.inumbo.net>)
 id 1qt6Nv-0006N9-BP
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 13:14:51 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 50c0155c-6db8-11ee-9b0e-b553b5be7939;
 Wed, 18 Oct 2023 15:14:49 +0200 (CEST)
Received: from Dell.bugseng.com (unknown [37.161.127.233])
 by support.bugseng.com (Postfix) with ESMTPSA id E96784EE0739;
 Wed, 18 Oct 2023 15:14: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: 50c0155c-6db8-11ee-9b0e-b553b5be7939
From: Federico Serafini <federico.serafini@bugseng.com>
To: xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com,
	Federico Serafini <federico.serafini@bugseng.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: [XEN PATCH v2] arm/gic: add missing parameter names and uniform function declarations
Date: Wed, 18 Oct 2023 15:14:39 +0200
Message-Id: <f22122c2b82f704dff17a455877c213940b54cc7.1697633691.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 remove inconsistencies between GICv3
and GICv2. No functional change.

Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
---
Changes in v2:
- switched parameter names of gicv3_write_lr().
---
 xen/arch/arm/gic-v3.c          | 22 +++++++++++-----------
 xen/arch/arm/include/asm/gic.h | 12 ++++++------
 2 files changed, 17 insertions(+), 17 deletions(-)

diff --git a/xen/arch/arm/gic-v3.c b/xen/arch/arm/gic-v3.c
index 95e4f020fe..172ff8c005 100644
--- a/xen/arch/arm/gic-v3.c
+++ b/xen/arch/arm/gic-v3.c
@@ -1086,29 +1086,29 @@ static void gicv3_read_lr(int lr, struct gic_lr *lr_reg)
     }
 }
 
-static void gicv3_write_lr(int lr_reg, const struct gic_lr *lr)
+static void gicv3_write_lr(int lr, const struct gic_lr *lr_reg)
 {
     uint64_t lrv = 0;
     const enum gic_version vgic_version = current->domain->arch.vgic.version;
 
 
-    lrv = ( ((u64)(lr->virq & ICH_LR_VIRTUAL_MASK)  << ICH_LR_VIRTUAL_SHIFT) |
-        ((u64)(lr->priority & ICH_LR_PRIORITY_MASK) << ICH_LR_PRIORITY_SHIFT) );
+    lrv = ( ((u64)(lr_reg->virq & ICH_LR_VIRTUAL_MASK)  << ICH_LR_VIRTUAL_SHIFT) |
+        ((u64)(lr_reg->priority & ICH_LR_PRIORITY_MASK) << ICH_LR_PRIORITY_SHIFT) );
 
-    if ( lr->active )
+    if ( lr_reg->active )
         lrv |= ICH_LR_STATE_ACTIVE;
 
-    if ( lr->pending )
+    if ( lr_reg->pending )
         lrv |= ICH_LR_STATE_PENDING;
 
-    if ( lr->hw_status )
+    if ( lr_reg->hw_status )
     {
         lrv |= ICH_LR_HW;
-        lrv |= (uint64_t)lr->hw.pirq << ICH_LR_PHYSICAL_SHIFT;
+        lrv |= (uint64_t)lr_reg->hw.pirq << ICH_LR_PHYSICAL_SHIFT;
     }
     else
     {
-        if ( lr->virt.eoi )
+        if ( lr_reg->virt.eoi )
             lrv |= ICH_LR_MAINTENANCE_IRQ;
         /* Source is only set in GICv2 compatible mode */
         if ( vgic_version == GIC_V2 )
@@ -1117,8 +1117,8 @@ static void gicv3_write_lr(int lr_reg, const struct gic_lr *lr)
              * Source is only valid for SGIs, the caller should make
              * sure the field virt.source is always 0 for non-SGI.
              */
-            ASSERT(!lr->virt.source || lr->virq < NR_GIC_SGI);
-            lrv |= (uint64_t)lr->virt.source << ICH_LR_CPUID_SHIFT;
+            ASSERT(!lr_reg->virt.source || lr_reg->virq < NR_GIC_SGI);
+            lrv |= (uint64_t)lr_reg->virt.source << ICH_LR_CPUID_SHIFT;
         }
     }
 
@@ -1129,7 +1129,7 @@ static void gicv3_write_lr(int lr_reg, const struct gic_lr *lr)
     if ( vgic_version == GIC_V3 )
         lrv |= ICH_LR_GRP1;
 
-    gicv3_ich_write_lr(lr_reg, lrv);
+    gicv3_ich_write_lr(lr, lrv);
 }
 
 static void gicv3_hcr_status(uint32_t flag, bool status)
diff --git a/xen/arch/arm/include/asm/gic.h b/xen/arch/arm/include/asm/gic.h
index f1ef347edc..03f209529b 100644
--- a/xen/arch/arm/include/asm/gic.h
+++ b/xen/arch/arm/include/asm/gic.h
@@ -246,7 +246,7 @@ void gic_set_irq_type(struct irq_desc *desc, unsigned int type);
 
 /* Program the GIC to route an interrupt */
 extern void gic_route_irq_to_xen(struct irq_desc *desc, unsigned int priority);
-extern int gic_route_irq_to_guest(struct domain *, unsigned int virq,
+extern int gic_route_irq_to_guest(struct domain *d, unsigned int virq,
                                   struct irq_desc *desc,
                                   unsigned int priority);
 
@@ -330,11 +330,11 @@ struct gic_hw_operations {
     /* Initialize the GIC and the boot CPU */
     int (*init)(void);
     /* Save GIC registers */
-    void (*save_state)(struct vcpu *);
+    void (*save_state)(struct vcpu *v);
     /* Restore GIC registers */
-    void (*restore_state)(const struct vcpu *);
+    void (*restore_state)(const struct vcpu *v);
     /* Dump GIC LR register information */
-    void (*dump_state)(const struct vcpu *);
+    void (*dump_state)(const struct vcpu *v);
 
     /* hw_irq_controller to enable/disable/eoi host irq */
     hw_irq_controller *gic_host_irq_type;
@@ -369,9 +369,9 @@ struct gic_hw_operations {
     /* Clear LR register */
     void (*clear_lr)(int lr);
     /* Read LR register and populate gic_lr structure */
-    void (*read_lr)(int lr, struct gic_lr *);
+    void (*read_lr)(int lr, struct gic_lr *lr_reg);
     /* Write LR register from gic_lr structure */
-    void (*write_lr)(int lr, const struct gic_lr *);
+    void (*write_lr)(int lr, const struct gic_lr *lr_reg);
     /* Read VMCR priority */
     unsigned int (*read_vmcr_priority)(void);
     /* Read APRn register */
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Wed Oct 18 13:24:33 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 13:24:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618565.962352 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qt6XG-0008UG-4V; Wed, 18 Oct 2023 13:24:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618565.962352; Wed, 18 Oct 2023 13:24: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 1qt6XG-0008U9-1P; Wed, 18 Oct 2023 13:24:30 +0000
Received: by outflank-mailman (input) for mailman id 618565;
 Wed, 18 Oct 2023 13:24: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=EezS=GA=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qt6XF-0008U3-NJ
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 13:24:29 +0000
Received: from EUR01-DB5-obe.outbound.protection.outlook.com
 (mail-db5eur01on0616.outbound.protection.outlook.com
 [2a01:111:f400:fe02::616])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id a92766fb-6db9-11ee-9b0e-b553b5be7939;
 Wed, 18 Oct 2023 15:24:27 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 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.6886.36; Wed, 18 Oct
 2023 13:24:24 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%7]) with mapi id 15.20.6907.022; Wed, 18 Oct 2023
 13:24: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: a92766fb-6db9-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=XBlthEiBEBQh3kDdgAX+FGp/5TVR7HZC+tgu+qCkjzo5cGoYXaLSnkxdwCIISGw/BvdPCmtx2ij1ISBxxEJvn73YkvtZnL0Ww95qACVTluSY/eTHaZMbY14KXVNvYg3YPTPAn2AIP/zmqDmaklJPsS3ZbmnYAv59Z2skDX9LKtdJXh8K0Pq6bNEfwF8AZSC0EwBkOn+QglWH5MejrwGo9MHrQh5rHpioT+wSGRRZEmLO0ke3VyM0cQnMd3RlusOj//uUVrZYUmPWuHXLpMpUrjPguRc8fX1BvtcxJSQAjEfoQGpF+e4/WaQXacOdpPq1ros6C144SQyeA5jgqu0t1w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=eQXX+HCySJXSG8XgZouesrCNnx8Pw90e0xf4eAuO3XE=;
 b=jOy7k5UJblZTSDLGSyyGZhuEhZl13OFVv1OIH9wXdX8cqtz2h5CXT+RDds8z8cftsUTcRv1EYfi4dPe3KE2nmU1lVXiAF3LQGAHFkBojtk10wP0YtaJq6fZpy+lV3I0xcWSvmcEyx7wIh0hXQTl81ysrE5YEqwIyRerx5GJNP5OF6Wnp/X3NC72k07df+sCwGX4YtffxAMupMYBpTT9wLQH8OLm7oGXSe+9Ct5U9PxaaXujAPKuWRhCLzQBNr1k+sUfrB4Wk6prFWuzVEs3zZXrlqRk17KwI2t3sS0NN/vYlgNo8sQSHC3hhjoA3dF0kLSAxj7MH9+9QdABhA1CEUw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=eQXX+HCySJXSG8XgZouesrCNnx8Pw90e0xf4eAuO3XE=;
 b=eno9fqQaPWmud+jtoB3A1+CTrst60mznAtYpCJVVSyJU8AKjpJqjFXIeS/c8TfTtq7Rq2zR5CzAkdw5qDtzGfWxWOMxzXenPvlVLBQ0QPS/uwfyxUDhNiIZTmSqVxbtgg92BKNEQUPok2pHuXQugYs/GvJyeA07omIvzLXn5ejLi4dNfgn7gg2hcsIf+y+wfi4kwjgPXUpMSl5y/KS/REWhA8sgDhXMyJ6nr+eDx3lYllHwHUi4GBohTws9pGkogvA7y3nJ8FjZuxjd+QDGzz9qb3BgT0o7qdJ2kL4PzgRStCKVriEEvSfn49MBMrA0nUNsRQU9gvRx6DwD6Tz4+Ow==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <b4f888eb-f49c-c77e-93ea-6d41041d39e5@suse.com>
Date: Wed, 18 Oct 2023 15:24: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 4.18 pvshim console issue (with patch)
Content-Language: en-US
To: Manuel Bouyer <bouyer@antioche.eu.org>
Cc: xen-devel@lists.xenproject.org, Henry Wang <Henry.Wang@arm.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>
References: <ZS-1wVlZjdAJyUz6@mail.soc.lip6.fr>
 <c86df0f1-c89c-4702-9b12-c0faf61b2de9@citrix.com>
 <ZS-_lcYqqDgEZdFi@mail.soc.lip6.fr>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <ZS-_lcYqqDgEZdFi@mail.soc.lip6.fr>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0312.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:f6::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_|AS4PR04MB9340:EE_
X-MS-Office365-Filtering-Correlation-Id: 396d1ac6-f3ae-4272-88d4-08dbcfdd8bd3
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	L6OxtPv0QWpLO11IAx+sH30iVM7B2qDU7WssJBacrPkaQmVYFRT/a4PgVttHivlN/tbl9oj+LhAw1GkVaqrmsjm9lrND+7CHyK7u5lhQKFCx/+LfU/EAWk4a13QdANE72YjntlLUSUbx2GuSN4nEv2KrkdBlDiuj6ZKXCKrDSBsAX5eL9YJ+Y4k4Ea/7qfI+X0bfdB0xn8ez+moFbRhcv7SYxGD3CeNPiPqdgsVW2ZEg1O0qMFyjnZ3aoU01GPYzYmaj+QxMODUgrptxQZ1hwleirRq0EC/IlDe3e7hfUPG86fv7SCn/iC0wEB5NB/4WJwmb7eeNwpTsQC9A6weE9jgN2v052tj5B8Vh5sorQRnNVVvMwuNO2+/rsDAEW1gnd1w1NPmfdrqmmKGoMDilDqQR5zKYYc91dkFUc5jMN4DxrQt+VycB4L5I1w/qQ4qCvJz6qb/cq5crr2X3Y4m+Bv1e4aiVMSETbFbAyUhShbuAM3faLjP7+ArYxa1sUX7cbANiIDaZc8xck6K0m0IfBZBP+1v96eEqp8d4Yvq6RrfWp2+4fWtvHpYRiKaNQm2awYJmTd4bkyHllVGmirB2Zn3A9rTTnGPKe5n8JeQNoaoEz2EnktmzMyVOTjsejSIn441UrLggz4RkrhJKZMBVnA==
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)(346002)(136003)(396003)(366004)(230922051799003)(64100799003)(451199024)(1800799009)(186009)(26005)(31686004)(6512007)(6506007)(53546011)(86362001)(31696002)(38100700002)(36756003)(2906002)(478600001)(6486002)(54906003)(83380400001)(2616005)(316002)(4326008)(66476007)(5660300002)(6916009)(66556008)(8676002)(41300700001)(8936002)(66946007)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?Yk5rcmM1WVpxbTU5VUxWUXBlMzIrK2RZb1NQQjVCN1VkUlpHbGgzRFlnR0Jm?=
 =?utf-8?B?Zy9QNkRjc2VkZHlleXl5bEQ3ZDJaSXpnR1pnS2ltdU9Dd1daNkV6OTJWRmpD?=
 =?utf-8?B?SkFLMUJwZndBc3lDbElmV0FHcWRadThTcEIzbVFWOGVNbWV0UXBsbzB4cld5?=
 =?utf-8?B?R1haZElCY2cwbkVsTTBEUnR3MmlvUGN1V3hVMUFUSmU3VmVaM2F3Szd2REU0?=
 =?utf-8?B?aW13dXRVZlgyVmx0akpOcHFMaEFiTVpjY3N0QU9yL1NxbmpoYWZWK1Q2Z0c0?=
 =?utf-8?B?allrVDBvY3NuQU9RbE11cDlKOEhZU01aakhQeUNSRXo2aWVoclpZM212SVg0?=
 =?utf-8?B?SnZ1b1djd29XVjM0YjMrUFpLZHpGOFRTb0c3NzhxRndmZnVpcGtDMmxzR1pZ?=
 =?utf-8?B?Q3hBclNKbm1UVWlEdG96VHFkMndoS2xucVhBb05QTDd0YmhHUk5Ic2VtWDNt?=
 =?utf-8?B?ZkNveFF5QUZGb3l4VjVMeUxVN2kzclEyOTlGMmhpU0doVnRUazhGS3hLdjlz?=
 =?utf-8?B?MTRLL0pDUEVYblBTTFBTT0gwREd4T01NbmNuQWFOallPTGJJZjBlM3YrODM0?=
 =?utf-8?B?VWhLd2JMTXNlUkVmdmpjQlNhQjVXNEJFSVl5c2kyRHY0ZG8vRTVnZ2EvY3hB?=
 =?utf-8?B?bmw1cDlhWXFHWjdQanVVbklYQkVNYjVMeUkzTjdSdzhGL3o1RVRFR09aTjh5?=
 =?utf-8?B?UXc4UVl2Szd5d2c5ZHhPek9sWG5FVldlYkhUSmYxKzV1dC9QM2JoRnU5UzNU?=
 =?utf-8?B?OXV2NkFvL2FrWHNidHNiTjg2d3gxM2dwRW1XeUIzeWFyRkV1NlY4TlNCV1Jo?=
 =?utf-8?B?V0IzaGgyeGhFeE01NW96SEc5bDRnRVdTNzVhazNDd3ZEbFVyMlZJTzBZWVdx?=
 =?utf-8?B?dkJTU0FLZCtnVC9EcWo3Tkt6SmhsRlMyUThuQzhQMHJETmpKelBibEdvNlBV?=
 =?utf-8?B?cjhXYW9QV1dLTGxnRmU2eE9abVA0L0QvYUtuMTNuTHhTSHFPU1JkUHJxNGd6?=
 =?utf-8?B?VU0wc3Y1U0d2Z1ZyUGZQUGRFNS80U1N0UXJMQlh1RWtxaTBtdlI4emRNMXZJ?=
 =?utf-8?B?U1JoazE3UGxrVjd3TzZ3cmZqMWZxVU9CR1NDYUUwSS84TmQ3UU9DdTR6Umwr?=
 =?utf-8?B?d0FDWUd6Vjk2d3prWGxhRWxDakFvZGJQM0VMZWk0Vi9aQWRDWjVPQXEvTW5V?=
 =?utf-8?B?SDBaeXUxU2Y5WGZWaHF4T0VrSW9OUk1KWWZDZU1kZGRrb2UyeTVubVlmSWhD?=
 =?utf-8?B?M0tQTEtIdFQwL0Z1T1RLN0JsbEZZVzdBU0RodWRVb1lBWFFteHJWa2FSb3h4?=
 =?utf-8?B?TGdZKzRPSmY4bnNLT0c5amtzamRrVjJPWnJaMVZjeUNmSVBWTVlzaVR0NlNN?=
 =?utf-8?B?S1BOT0JiN0FFOFRvWUgxN3ZuQVBHODdoZU5nbTRQYXh2ODREUHZlODBiVC84?=
 =?utf-8?B?cWR6aDJqYTdnRjJqMkx3VjhIZGVCR2x3RkkwYzNFVlV5OUl6T1JsdkhpcTUz?=
 =?utf-8?B?UHI0UDRPdHhsNGZaY1FWclhDVk5LcE5oRjB3VzZ6Yk9KVm0vNC9pb0dQWFl0?=
 =?utf-8?B?dU45TGEva1JheTFySzMybWZRNzM3QXB1aTFmNnQwNzNzY0lITjhoMWlLdE5T?=
 =?utf-8?B?VTA1WEJHeWFEaTd1cFhyc1o4cHJZcFI0akpwejNkSHcxMWl0MkhmVTk4cE1X?=
 =?utf-8?B?NjVaa2xBdGV1UDVZSkMvYUMwWlRDQW1qWmNQVWVSRmE0K3VNeXhzaEFGOVp5?=
 =?utf-8?B?YlQ1ZkUvZk90U1RoY2ZsUTl6UDAyZkpzSU1YWWJhQmNPYXNkWTN6ZmFyazNV?=
 =?utf-8?B?RjdMY0JVRDgvSVRJNHBMVU9kdVp0SDk3Q09QcXMyclIrbk9kdmVKT0lYZzNI?=
 =?utf-8?B?Z2IvMVZPNGZZR2ExSHJDcjQ3RE4yTVducjA5T2J6TC93Ly9YQnpSbzJnVWIx?=
 =?utf-8?B?K0phUDdvRVlYSGRQT2Q5WTNmWWVmbkpDUWp4UStRTlpBcEkyTmdBTGkyM0hK?=
 =?utf-8?B?WS9pNzdlNzlJSm1DV0paTnFvM281OEk3YzdORndFaTlGaStCcVQ5L1BldXlq?=
 =?utf-8?B?MUZXSnAydHBhZGlvQm9HMlF5TXJJR1VxRHNJa3lsZE9TVk1QVlN2d3dvWHZX?=
 =?utf-8?Q?brMgD8Gvk0XW92tkMrbOZXGtf?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 396d1ac6-f3ae-4272-88d4-08dbcfdd8bd3
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Oct 2023 13:24:24.5036
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: e9yTMUWB/9nk022ZQS32p5lSLInjsD1dESwaQjA4pgGa1d2Wpv/SV9KPDGJceTzkk4Llp0m7nGKnddE0sYbM6A==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS4PR04MB9340

On 18.10.2023 13:20, Manuel Bouyer wrote:
> On Wed, Oct 18, 2023 at 11:44:22AM +0100, Andrew Cooper wrote:
>> On 18/10/2023 11:38 am, Manuel Bouyer wrote:
>>> Hello,
>>> With Xen 4.18, a PV domain running under pvshim doesn't get console input.
>>> This is because the domain id in pvshim isn't 0 (and on x86 max_init_domid is
>>> hardwired to 0), so console_input_domain() will never select that domain
>>> as input.
>>>
>>> The attached patch fixes it by translating 0 to the real domain id for
>>> pvshim, but there may be a better way to do this.
>>>
>>
>> Thankyou for the report.
>>
>> First, CC'ing Henry as 4.18 release manager.
>>
>> There have been changes in how this works recently in 4.18, notably c/s
>> c2581c58bec96.
> 
> Yes, it looks like this one introduced the problem.
> Before this, we would switch console_rx to 1 without checking if
> domain (console_rx - 1) exists, and console_rx == 1 is a special case
> in __serial_rx()
> 
>>
>> However, it's not obvious whether this worked in 4.17 or not.  i.e.
>> whether it's a regression in 4.18, or whether it's been broken since PV
>> Shim was introduced.
> 
> I don't know for 4.16 or 4.17 but I can tell that it's working in 4.15

>From looking at the code, it doesn't look like it would: There
switch_serial_input() toggles console_rx between 0 and 1 afaict, and
console_input_domain() handles value 0 as "Xen" (like in 4.18), while
otherwise it calls rcu_lock_domain_by_id(console_rx - 1) (i.e. trying
to get hold of Dom0's domain structure, not Dom1's).

Jan


From xen-devel-bounces@lists.xenproject.org Wed Oct 18 13:29:24 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 13:29:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618570.962362 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qt6bu-0000yo-MH; Wed, 18 Oct 2023 13:29:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618570.962362; Wed, 18 Oct 2023 13: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 1qt6bu-0000yh-J3; Wed, 18 Oct 2023 13:29:18 +0000
Received: by outflank-mailman (input) for mailman id 618570;
 Wed, 18 Oct 2023 13:29: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=EezS=GA=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qt6bt-0000yb-7C
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 13:29:17 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur04on062b.outbound.protection.outlook.com
 [2a01:111:f400:fe0e::62b])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 52f59834-6dba-11ee-9b0e-b553b5be7939;
 Wed, 18 Oct 2023 15:29:12 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PAXPR04MB9705.eurprd04.prod.outlook.com (2603:10a6:102:24b::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.34; Wed, 18 Oct
 2023 13:29:10 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%7]) with mapi id 15.20.6907.022; Wed, 18 Oct 2023
 13:29: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: 52f59834-6dba-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=lX4HzXSQqtxGNuJj87/4af0hpsBNZOb0/GlgUcnH7VWDK1ry/5yVidGVx5t/6eE1GcDyUIRMgNH7rNH43PaUA/btBvPv65bEV6B3TtQLEjIyTaWeXpAZ9ZAf7ZKTxDBuqziYLt8w0Mm8x7bQO4EEQyKaW5vtQZz85nZuV0ErdmXcLJt95CeZTZRXzgXZFVn2qj0ndVS2LV27y6795Ij57uz0IGinE+VxlRUb7Gnb12uZz44lO6HYutM2iPpxTDgeYw6N7c8d843X6f4Pd1gsPB4ocRCH6IsyfGE+wKVuaOHRg1wzfzQdODD0kaa/h/NA0AG7dtyxSyRTszFO45a+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=wvwJ9iVehLeeMjXBKTpnEazMdsJg/OvA/WoNYRO4C9s=;
 b=V/nZTi0zAGiU0u2qkTvqeU0LzrgiA6XTJluc08GrQvOwWWT/E95LfMHqStB/ELdItJ9i2MbqktlYDGL0lU/5xDi9sWdd8DaS/PKi/n3aj5M7scMXqXb9H0/LFYHguM3CMxt1QK/bzebVNkYfwYLlvP+lx8foGYpEJu3vZAax8LjmAwRhhrUfGIF0GYni16whAGjdKbUFfwitr2KWKOfBIoN8M4nKqUJCmRtMCsZxRTDPIY2+bMqky4IMu3X4wRhsIrrQAR2dejSFfvo0yGhsDAMCaKV1ojFsgpOqeJUJw2vFNu8hNlcQYwbzASnzGXxMQVs+6NbGQkZD8tCi9jIiow==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=wvwJ9iVehLeeMjXBKTpnEazMdsJg/OvA/WoNYRO4C9s=;
 b=m8990YKI/XlQ2AMzHbaspCKgFWa84jotkQ6u9sPlsUNPCMq/LOI20GTQ6gOeY18dZ3xoP8yAcIhurIZGzLxLxuPGh8eTY7RpxJAPBVLEiYUR3WLQmb5+o09GmRSIa/r7VOlIhY1mWQcErlyDu2BwWSjewzPSZ25/MKBg6IjsWsgk7f+1GjNsmkthgVjAoyZoXbVn5/qkictJStbajCO4iJyuFdS3uCbfwWxrMFwWjAhe5uGKDhlG8RC54srKtmOy4VE3mPnB1KTtWQ/AI9snm6iyfEMv666c/G/DxVtOcPyExWYYDls57XIOlFZMUP9219hnzmdrdG+dNUNTW4yLDQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <9f5c0af3-44b6-e98a-2032-14185af265c9@suse.com>
Date: Wed, 18 Oct 2023 15:29:08 +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 pvshim console issue (with patch)
Content-Language: en-US
To: Manuel Bouyer <bouyer@antioche.eu.org>
References: <ZS-1wVlZjdAJyUz6@mail.soc.lip6.fr>
Cc: xen-devel@lists.xenproject.org, Henry Wang <Henry.Wang@arm.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 Michal Orzel <michal.orzel@amd.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <ZS-1wVlZjdAJyUz6@mail.soc.lip6.fr>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0018.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:c9::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_|PAXPR04MB9705:EE_
X-MS-Office365-Filtering-Correlation-Id: 62023101-24d3-4e82-c096-08dbcfde35de
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	19RCs9MxbKsJPU+vYGz+c4C0NiptSPTAHRDSW/7mmzTKL5IV/V9EcayP3z1LHyDI5MHU8pY+3BkzefAPz/eTC33PpxYQd/hT4VEETOT9xj/e8oFTe8JAwkP8UebSugWLy050grH+0vQiEB0v6dEjYWjUGmvRJqeXn0nYUnBvmlAEiFDP+DtcY7iI2tbaTbaUgpQtrZ6YW/4gm6xdLehbahNkGSVnLRQXZ/WT0LA9GoJjvfwhQB6Gw5ijNGEYXiIr27N8VlgEz2UsbYUYUdgQi9EcVHsClEb2UBMw7DFXAWewbtnmjCnv4YPOXaVoaTXjG5i9OJKs9luVz10a6PwZZ9AaRsI9wu3IAg8xUmQj9QvOHwL9Q3fmWcvBvN26wbZmvm1Tkxw3mReTVmSXv4i1kwKuDaBWVcEk7nM6/9GqFHbHs5Qoa8xEeK88xKq0Se/IWf/StGkT0VZQaC1AJdzsI0ftdOQOxjUr+V5wWAOu9NT/baNkHl++kaLIhEAvcnhmjA0zLapTDRwRdTgyEoTk6+u0LUzR88oBItWxf9yZq9OZYXRzxeH8gipsLX3zbfr2jR+IVEg15kT9yaXqo0aonKd7hG0js9a/harmJW4N9jBccWo2sW+J0JxujdvEgr+MDH19StBnwa0ejf/Nn4Lrr8yk0E4r3A3cTMY3qMv9Jxnutkg7GxH9fGeD65mviKtj
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)(230922051799003)(186009)(64100799003)(451199024)(1800799009)(31686004)(66946007)(54906003)(66476007)(316002)(4326008)(5660300002)(2906002)(41300700001)(6916009)(8936002)(66556008)(8676002)(4744005)(478600001)(86362001)(6486002)(53546011)(6506007)(31696002)(2616005)(36756003)(6512007)(26005)(38100700002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?bFZMK0V5NzlCTlZ6eWl6bytpU0F5V2pQa2ZyZ2NSTXdZZ2s5Yk1GdndHN2N2?=
 =?utf-8?B?SWhiUGo2dFlpNGU2Zk9QcDZmcjZDZ3lHUmNBc0gyTTlzMWgveHF1MVBFVk50?=
 =?utf-8?B?QUJxK3laWElGVjN1aHdyZjVDYVFZRyt4ODY4L1dDQzRRRXhyVXZXd2VwaUxP?=
 =?utf-8?B?Uk1zb2JlakM0OUFSd2tSZ2wwaTdja2phNHBvU2s1TmNoanNzKytDOGVZTWVQ?=
 =?utf-8?B?M1hKWVlMSS9LeG5PM0dEUjZ3UUluZ1pSMXJWem5GU1owVEhvWkxRQ3VKc3A4?=
 =?utf-8?B?d3B4NlA3NnZ2cU0wN2pOL1FOSUtMUEJBMitOSjRFY2pzS2M1YWQxNFdkTDVS?=
 =?utf-8?B?NERyQUVYVGdlSzFQOVBld2RUMjZteUQzVUtJZWlISDNoTnZITEMyc0J4RVlk?=
 =?utf-8?B?emhrSU5yQXF2ejJXU09PcjIwSXF5a281QWZPaDY2TmlYYmhneUtDcFpPMmtY?=
 =?utf-8?B?aHZoczRLV25YMXdYSjlrZ2dzSE9VWU1XZTFHZ0trTmJmUzdlaXZ2QUxCK09X?=
 =?utf-8?B?Q1dhT0U3UngySG9qYXFxTStHWm1nN2FPQU5BQ3V6NUl4RXgyN2kwYSthV3dp?=
 =?utf-8?B?Q2Yyd2J5VzE0K1doeWY4d2xnUHBmbXppbHFtZ1RvUk5Lc1VrM3NSSjBTTDFR?=
 =?utf-8?B?dis0Q3dhdFhJSHM1TmR0c1FiclZUZVdWWTRmcnBiL0JmWWQxVjN4Zlp5VjUr?=
 =?utf-8?B?Y3NqWUlEd0xvdUl3QUQzeHN4TjhQNVBCQ2NPMFNoLzhtVldFZE1XNGYwbzlz?=
 =?utf-8?B?eWNEQmZlVXlzM2hFZWVYZ1RETERFZzhraXVJRFpCRmRJQ25KMGpvMzlqMUdn?=
 =?utf-8?B?U2RZVjhxOCtVcW14MlZOYitCd3VKUjN5bjl4K2lVc3FYMFg5R2J6K3hZQldK?=
 =?utf-8?B?VmFRVGt2YTFBNWlPeXZST3A5b1ZXTURtYTE4ZkZhc0tuS1E0Y2xwYWlacUxW?=
 =?utf-8?B?amlFSWZ4NGNBUmEzdC9pOG5LK2YwSW9GWElvUm1JbUdiWXJRMFozOXBwcjAy?=
 =?utf-8?B?dzhhOXVnamhrcmExSEtvRUVDSDErWVQyQjFoVzdIYzZ3K0xwQnFJeGpqeThV?=
 =?utf-8?B?d1E1eEwxMjFBYytwTGNmNDJDbklidnlHS2RucVNhczc0K3BUdzNEcGo4blpt?=
 =?utf-8?B?Znc1NEtsSW1Ib0Z5REVkbjJCZVFBUStIcDdNWVFVc2ppWEd2UDFDbWxjVjVn?=
 =?utf-8?B?azQvZVZDdFNwdFl6RVpCSHBhM21ldjNRVVd6SUhPU2ticHdDMTJpSVV0YlJt?=
 =?utf-8?B?UjdOMFFMVFdhK1dwZHBwNm9wRGVYYXJ6T0RaQWU5WllDeExtckJnS0NveC9V?=
 =?utf-8?B?b1ZoVnBReU10REM0OXlsM1NtSXFXTzh2bUoyc2NhUlZaZkJ0eUUzM3E2MHgx?=
 =?utf-8?B?dEsrTXQ2NFU1WDlDQWFaMW1NT0tvWVI3MmpmK25nTzZUTG9TT05OcFJYbWRU?=
 =?utf-8?B?TXA5RThGT01kb3Q1djhIYktGWUVvYjVSemJaYk5pUkpEL3ladHRvd2NFSnJJ?=
 =?utf-8?B?cWpXTnhsSjl2UmREYXZpNUJMQ1ZsU3llZVU4amdJdU5uU2poVURITlVoS24v?=
 =?utf-8?B?cVNPc1dTYXJGbHpDODFwUFF5OTNGc1lJZjZPQzZZZXJtcGhrZXRRdXk2Q0Fo?=
 =?utf-8?B?TkRuaEFFcTMwd0w0Zno3TGI1S1IzNVdxeXlMVDZjd3UxeWFDbi9vdFc2Wkt4?=
 =?utf-8?B?QUh4NlpKZzlnYU9PaUxZc2x4bFhHN0crMHN2VWJvaXc1NVRHcE1CZGpDWXNn?=
 =?utf-8?B?LzdHaTQ0amE3WW9kL3ByV0MwWVBaa1F0akx0Ym1Qa3BGbEQ4M2xzVXNtMENa?=
 =?utf-8?B?TE8rNDJWckVYelZUS0ZtT0FwNmZOdHNIWk5JZUkrSGJyOXVMb1c4aHU3emlD?=
 =?utf-8?B?V1pPTHF6OFNpSkVDUnRYa1VraHk4OXg5MWxCZVFLU2N6NmVOS3VtVVhCZ3RU?=
 =?utf-8?B?VXdsa3NLeWJXZk1EU0pqLzJYaE9vTzhnNXJ6cVFTQVppRWQwaHg3MjNtb1Y1?=
 =?utf-8?B?eWxlaTJOUWxyVWRvcGsxeWgrcEJzT2dqSUlPUnhlYXdXbmt5R3YrVUU2QmhX?=
 =?utf-8?B?YXIra3pmYm80QVlkYndWUG55RnRwUVA5WWlYWlpsbGNCUTE1VmFNbW45Sy83?=
 =?utf-8?Q?Q9dpoadM4aW6m2GInpKf1WkYC?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 62023101-24d3-4e82-c096-08dbcfde35de
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Oct 2023 13:29:09.7704
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: S+BHxCVCy2TWDpUzXfGcwgou5tBsfxtqEGira0YO+GmxLo+ujwRvN5RVwjtYZ3B0q2MawTH2GmI2CAsqKEOQAA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB9705

On 18.10.2023 12:38, Manuel Bouyer wrote:
> Hello,
> With Xen 4.18, a PV domain running under pvshim doesn't get console input.
> This is because the domain id in pvshim isn't 0 (and on x86 max_init_domid is
> hardwired to 0), so console_input_domain() will never select that domain
> as input.
> 
> The attached patch fixes it by translating 0 to the real domain id for
> pvshim, but there may be a better way to do this.

My primary observation with the patch is that it presumably won't build for
other than x86. There are also indentation and other style issues, no S-o-b,
and no description. But I wonder whether a different approach doesn't want
taking: Wouldn't it help if max_init_domid was 1 in the shim case, with no
need for any other changes?

Also Cc-ing Michal as the author of the (possibly) offending patch.

Jan


From xen-devel-bounces@lists.xenproject.org Wed Oct 18 13:37:00 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 13:37:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618573.962372 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qt6jD-0003Mu-By; Wed, 18 Oct 2023 13:36:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618573.962372; Wed, 18 Oct 2023 13:36: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 1qt6jD-0003Mn-8g; Wed, 18 Oct 2023 13:36:51 +0000
Received: by outflank-mailman (input) for mailman id 618573;
 Wed, 18 Oct 2023 13:36: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=Y0YN=GA=antioche.eu.org=bouyer@srs-se1.protection.inumbo.net>)
 id 1qt6jC-0003Mh-1N
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 13:36:50 +0000
Received: from isis.lip6.fr (isis.lip6.fr [2001:660:3302:283c::2])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 62937c56-6dbb-11ee-9b0e-b553b5be7939;
 Wed, 18 Oct 2023 15:36:47 +0200 (CEST)
Received: from asim.lip6.fr (asim.lip6.fr [132.227.86.2])
 by isis.lip6.fr (8.16.1/8.15.2) with ESMTPS id 39IDadsV018202
 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NO);
 Wed, 18 Oct 2023 15:36:39 +0200 (CEST)
Received: from armandeche.soc.lip6.fr (armandeche [132.227.63.133])
 by asim.lip6.fr (8.15.2/8.15.2) with ESMTP id 39IDacuR028639;
 Wed, 18 Oct 2023 15:36:38 +0200 (MEST)
Received: by armandeche.soc.lip6.fr (Postfix, from userid 20331)
 id 913F777C1; Wed, 18 Oct 2023 15:36:38 +0200 (MEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 62937c56-6dbb-11ee-9b0e-b553b5be7939
Date: Wed, 18 Oct 2023 15:36:38 +0200
From: Manuel Bouyer <bouyer@antioche.eu.org>
To: Jan Beulich <jbeulich@suse.com>
Cc: xen-devel@lists.xenproject.org, Henry Wang <Henry.Wang@arm.com>,
        Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: Xen 4.18 pvshim console issue (with patch)
Message-ID: <ZS_fZg7AkBItN8fM@mail.soc.lip6.fr>
References: <ZS-1wVlZjdAJyUz6@mail.soc.lip6.fr>
 <c86df0f1-c89c-4702-9b12-c0faf61b2de9@citrix.com>
 <ZS-_lcYqqDgEZdFi@mail.soc.lip6.fr>
 <b4f888eb-f49c-c77e-93ea-6d41041d39e5@suse.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <b4f888eb-f49c-c77e-93ea-6d41041d39e5@suse.com>
X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.6.4 (isis.lip6.fr [132.227.60.2]); Wed, 18 Oct 2023 15:36:39 +0200 (CEST)
X-Scanned-By: MIMEDefang 3.3 on 132.227.60.2

On Wed, Oct 18, 2023 at 03:24:22PM +0200, Jan Beulich wrote:
> On 18.10.2023 13:20, Manuel Bouyer wrote:
> > On Wed, Oct 18, 2023 at 11:44:22AM +0100, Andrew Cooper wrote:
> >> On 18/10/2023 11:38 am, Manuel Bouyer wrote:
> >>> Hello,
> >>> With Xen 4.18, a PV domain running under pvshim doesn't get console input.
> >>> This is because the domain id in pvshim isn't 0 (and on x86 max_init_domid is
> >>> hardwired to 0), so console_input_domain() will never select that domain
> >>> as input.
> >>>
> >>> The attached patch fixes it by translating 0 to the real domain id for
> >>> pvshim, but there may be a better way to do this.
> >>>
> >>
> >> Thankyou for the report.
> >>
> >> First, CC'ing Henry as 4.18 release manager.
> >>
> >> There have been changes in how this works recently in 4.18, notably c/s
> >> c2581c58bec96.
> > 
> > Yes, it looks like this one introduced the problem.
> > Before this, we would switch console_rx to 1 without checking if
> > domain (console_rx - 1) exists, and console_rx == 1 is a special case
> > in __serial_rx()
> > 
> >>
> >> However, it's not obvious whether this worked in 4.17 or not.  i.e.
> >> whether it's a regression in 4.18, or whether it's been broken since PV
> >> Shim was introduced.
> > 
> > I don't know for 4.16 or 4.17 but I can tell that it's working in 4.15
> 
> >From looking at the code, it doesn't look like it would: There
> switch_serial_input() toggles console_rx between 0 and 1 afaict, and
> console_input_domain() handles value 0 as "Xen" (like in 4.18), while
> otherwise it calls rcu_lock_domain_by_id(console_rx - 1) (i.e. trying
> to get hold of Dom0's domain structure, not Dom1's).

Well, I have a 4.15.5 installation in production and I can tell you that
with PV+PVSHIM, the console is working, for sure.

AFAIK console_input_domain() is called only on ARM, from
vpl011_write_data_xen(). It's never called for x86.

-- 
Manuel Bouyer <bouyer@antioche.eu.org>
     NetBSD: 26 ans d'experience feront toujours la difference
--


From xen-devel-bounces@lists.xenproject.org Wed Oct 18 13:41:18 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 13:41:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618577.962382 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qt6nT-0004p7-Sf; Wed, 18 Oct 2023 13:41:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618577.962382; Wed, 18 Oct 2023 13: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 1qt6nT-0004p0-PG; Wed, 18 Oct 2023 13:41:15 +0000
Received: by outflank-mailman (input) for mailman id 618577;
 Wed, 18 Oct 2023 13:41: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=Y0YN=GA=antioche.eu.org=bouyer@srs-se1.protection.inumbo.net>)
 id 1qt6nS-0004ou-Lp
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 13:41:14 +0000
Received: from isis.lip6.fr (isis.lip6.fr [2001:660:3302:283c::2])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 0085920e-6dbc-11ee-9b0e-b553b5be7939;
 Wed, 18 Oct 2023 15:41:12 +0200 (CEST)
Received: from asim.lip6.fr (asim.lip6.fr [132.227.86.2])
 by isis.lip6.fr (8.16.1/8.15.2) with ESMTPS id 39IDelkA013578
 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NO);
 Wed, 18 Oct 2023 15:40:47 +0200 (CEST)
Received: from armandeche.soc.lip6.fr (armandeche [132.227.63.133])
 by asim.lip6.fr (8.15.2/8.15.2) with ESMTP id 39IDekRx015672;
 Wed, 18 Oct 2023 15:40:46 +0200 (MEST)
Received: by armandeche.soc.lip6.fr (Postfix, from userid 20331)
 id 7E63177C1; Wed, 18 Oct 2023 15:40:46 +0200 (MEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 0085920e-6dbc-11ee-9b0e-b553b5be7939
Date: Wed, 18 Oct 2023 15:40:46 +0200
From: Manuel Bouyer <bouyer@antioche.eu.org>
To: Jan Beulich <jbeulich@suse.com>
Cc: xen-devel@lists.xenproject.org, Henry Wang <Henry.Wang@arm.com>,
        Andrew Cooper <andrew.cooper3@citrix.com>,
        Michal Orzel <michal.orzel@amd.com>
Subject: Re: Xen 4.18 pvshim console issue (with patch)
Message-ID: <ZS_gXmBIETbXvs1J@mail.soc.lip6.fr>
References: <ZS-1wVlZjdAJyUz6@mail.soc.lip6.fr>
 <9f5c0af3-44b6-e98a-2032-14185af265c9@suse.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <9f5c0af3-44b6-e98a-2032-14185af265c9@suse.com>
X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.6.4 (isis.lip6.fr [132.227.60.2]); Wed, 18 Oct 2023 15:40:47 +0200 (CEST)
X-Scanned-By: MIMEDefang 3.3 on 132.227.60.2

On Wed, Oct 18, 2023 at 03:29:08PM +0200, Jan Beulich wrote:
> On 18.10.2023 12:38, Manuel Bouyer wrote:
> > Hello,
> > With Xen 4.18, a PV domain running under pvshim doesn't get console input.
> > This is because the domain id in pvshim isn't 0 (and on x86 max_init_domid is
> > hardwired to 0), so console_input_domain() will never select that domain
> > as input.
> > 
> > The attached patch fixes it by translating 0 to the real domain id for
> > pvshim, but there may be a better way to do this.
> 
> My primary observation with the patch is that it presumably won't build for
> other than x86.

It's possible, I don't have other platform to test

> There are also indentation and other style issues, no S-o-b,
> and no description.

I'll let whoever commit it deal with this

> But I wonder whether a different approach doesn't want
> taking: Wouldn't it help if max_init_domid was 1 in the shim case, with no
> need for any other changes?

max_init_domid=1 won't help, because we're using the real domid from the
real hypervisor here. So it can be arbitrary large (in my tests I did a
printk here, and the domid was matching the id from 'xl list')

-- 
Manuel Bouyer <bouyer@antioche.eu.org>
     NetBSD: 26 ans d'experience feront toujours la difference
--


From xen-devel-bounces@lists.xenproject.org Wed Oct 18 13:42:24 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 13:42:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618580.962392 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qt6oW-0005Lh-51; Wed, 18 Oct 2023 13:42:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618580.962392; Wed, 18 Oct 2023 13:42: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 1qt6oW-0005La-1s; Wed, 18 Oct 2023 13:42:20 +0000
Received: by outflank-mailman (input) for mailman id 618580;
 Wed, 18 Oct 2023 13:42: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=BVsY=GA=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qt6oU-0005LK-6r
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 13:42:18 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 264254e2-6dbc-11ee-9b0e-b553b5be7939;
 Wed, 18 Oct 2023 15:42:16 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id 0BB714EE0739;
 Wed, 18 Oct 2023 15:42: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: 264254e2-6dbc-11ee-9b0e-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>,
	Simone Ballarin <simone.ballarin@bugseng.com>,
	Doug Goldstein <cardoe@cardoe.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Julien Grall <julien@xen.org>,
	Wei Liu <wl@xen.org>
Subject: [XEN PATCH][for-4.19 v3] xen: address violations of Rule 11.9
Date: Wed, 18 Oct 2023 15:42:11 +0200
Message-Id: <d760ef0c088dc15ecc411b83640735123444f887.1697636446.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The constant 0 is used instead of NULL in '__ACCESS_ONCE' as a
compile-time check to detect non-scalar types; its usage for this
purpose is deviated.

Furthermore, the 'typeof_field' macro is introduced as a general way
to access the type of a struct member without declaring a variable
of struct type. Both this macro and 'sizeof_field' are moved to
'xen/macros.h'.

No functional change intended.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
---
Changes in v2:
- added entry in deviations.rst
Changes in v3:
- dropped access_field
- moved macro to macros.h
---
 automation/eclair_analysis/ECLAIR/deviations.ecl |  9 +++++++++
 docs/misra/deviations.rst                        |  5 +++++
 xen/include/xen/compiler.h                       |  8 --------
 xen/include/xen/kernel.h                         |  2 +-
 xen/include/xen/macros.h                         | 16 ++++++++++++++++
 5 files changed, 31 insertions(+), 9 deletions(-)

diff --git a/automation/eclair_analysis/ECLAIR/deviations.ecl b/automation/eclair_analysis/ECLAIR/deviations.ecl
index fa56e5c00a27..28d9c37bedb2 100644
--- a/automation/eclair_analysis/ECLAIR/deviations.ecl
+++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
@@ -246,6 +246,15 @@ constant expressions are required.\""
   "any()"}
 -doc_end
 
+#
+# Series 11
+#
+
+-doc_begin="This construct is used to check if the type is scalar, and for this purpose the use of 0 as a null pointer constant is deliberate."
+-config=MC3R1.R11.9,reports+={deliberate, "any_area(any_loc(any_exp(macro(^__ACCESS_ONCE$))))"
+}
+-doc_end
+
 #
 # Series 13
 #
diff --git a/docs/misra/deviations.rst b/docs/misra/deviations.rst
index ee7aed0609d2..1b00e4e3e9b7 100644
--- a/docs/misra/deviations.rst
+++ b/docs/misra/deviations.rst
@@ -199,6 +199,11 @@ Deviations related to MISRA C:2012 Rules:
        See automation/eclair_analysis/deviations.ecl for the full explanation.
      - Tagged as `safe` for ECLAIR.
 
+   * - R11.9
+     - __ACCESS_ONCE uses a 0 as a null pointer constant to check if a type is
+       scalar, therefore its usage for this purpose is allowed.
+     - Tagged as `deliberate` for ECLAIR.
+
    * - R13.5
      - All developers and reviewers can be safely assumed to be well aware of
        the short-circuit evaluation strategy for logical operators.
diff --git a/xen/include/xen/compiler.h b/xen/include/xen/compiler.h
index dd99e573083f..a8be1f19cfc2 100644
--- a/xen/include/xen/compiler.h
+++ b/xen/include/xen/compiler.h
@@ -109,14 +109,6 @@
 
 #define offsetof(a,b) __builtin_offsetof(a,b)
 
-/**
- * sizeof_field(TYPE, MEMBER)
- *
- * @TYPE: The structure containing the field of interest
- * @MEMBER: The field to return the size of
- */
-#define sizeof_field(TYPE, MEMBER) sizeof((((TYPE *)0)->MEMBER))
-
 #if !defined(__STDC_VERSION__) || __STDC_VERSION__ < 201112L
 #define alignof __alignof__
 #endif
diff --git a/xen/include/xen/kernel.h b/xen/include/xen/kernel.h
index 46b3c9c02625..2c5ed7736c99 100644
--- a/xen/include/xen/kernel.h
+++ b/xen/include/xen/kernel.h
@@ -51,7 +51,7 @@
  *
  */
 #define container_of(ptr, type, member) ({                      \
-        typeof( ((type *)0)->member ) *__mptr = (ptr);          \
+        typeof_field(type, member) *__mptr = (ptr);             \
         (type *)( (char *)__mptr - offsetof(type,member) );})
 
 /*
diff --git a/xen/include/xen/macros.h b/xen/include/xen/macros.h
index d0caae7db298..457c84b9d1a0 100644
--- a/xen/include/xen/macros.h
+++ b/xen/include/xen/macros.h
@@ -54,6 +54,22 @@
 
 #define ARRAY_SIZE(x) (sizeof(x) / sizeof((x)[0]) + __must_be_array(x))
 
+/**
+ * typeof_field(type, member)
+ *
+ * @type: The structure containing the field of interest
+ * @member: The field whose type is returned
+ */
+#define typeof_field(type, member) typeof(((type *)NULL)->member)
+
+/**
+ * sizeof_field(type, member)
+ *
+ * @type: The structure containing the field of interest
+ * @member: The field to return the size of
+ */
+#define sizeof_field(type, member) sizeof(((type *)NULL)->member)
+
 #endif /* __ASSEMBLY__ */
 
 #endif /* __MACROS_H__ */
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Wed Oct 18 13:52:10 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 13:52:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618586.962401 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qt6xu-0007lj-38; Wed, 18 Oct 2023 13:52:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618586.962401; Wed, 18 Oct 2023 13:52: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 1qt6xu-0007lc-0Q; Wed, 18 Oct 2023 13:52:02 +0000
Received: by outflank-mailman (input) for mailman id 618586;
 Wed, 18 Oct 2023 13:52: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=EezS=GA=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qt6xs-0007lW-HS
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 13:52:00 +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 81bb4786-6dbd-11ee-98d4-6d05b1d4d9a1;
 Wed, 18 Oct 2023 15:51:59 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM8PR04MB7874.eurprd04.prod.outlook.com (2603:10a6:20b:24d::9)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.22; Wed, 18 Oct
 2023 13:51:56 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%7]) with mapi id 15.20.6907.022; Wed, 18 Oct 2023
 13: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: 81bb4786-6dbd-11ee-98d4-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=jiJcoeweKB1S8R1gCeLbQmjf1ZjWXcsEHJ37IfnrNcpRKdzyQgI/AIrD5+OKKVZcQGWhD13aZydUwpYOCcpOpwZeV1k2uzYFpDPgbw93yBn8DeYgwNPiJWQu8avyZp6vEWm0ikGUsml/iELrgm2YAGAIuQ6ZPziW8RzsBVXRB998VDGvrzeZH30h+mcTwOqjkl6eHnQ16Am1aYEnOuJvkAGKSSrv8HNk7QMklFWfLqytjn+YKMeFiZzyvFtBplG97Fp5FXomjRvgh9vsrmoAEIE4xRUIkehpVxGMAIO3zhqiJwhyVdbqD6zbmISSOvHOoClscDaWAciuBnT2uErdhA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=lkNEBhG7rcEnDVwA1niXvg2PwbH6SuF1n2O2ilgP6HU=;
 b=bBj3Oih2ap+WnM3+6UN83U1W/U1PkHL3jiordLH6r+dWYb36xuzvEwygxXPhnrgdrn/zJqKufEnCkpfqhpo83m5KsumQAG59jUx5aEyCu3iwdVS1/KXZYLrWL/8AfinTCl6fBx2gkQzIWVbxouQolMxrKDMjUT8vd6zp2pPxn8jYAW99P2+fFey3kZIv07cdN5C6i0aFZVfAbLEUxlh9zOJHeOLQQ3962wPSRaN01TaRI6Riz4hmRenw8bFV6OcnG+qyS4Z5qUhW72/R4cXWomb2AFCimAzjtX1huDIohfuW825ltaaaCaLFv2iUVa+KWwGtmK/vIsAttNrw3IUT4g==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=lkNEBhG7rcEnDVwA1niXvg2PwbH6SuF1n2O2ilgP6HU=;
 b=qmPrnbTrrYe5DQmh8QC9ce4/Qoa6WaPfdH2fHUwsQ7XnWKYO4gMto9R2b7uMG6yLckHgyVhUkdqx6VS0+mWOpcFap3FQSi2fhNgdAu40RTYZY/l+83b8w7GKdBc+VEOZE5RCLENa/Xmqhd6iFdZXztwVV42774JYIWLGMWUVrs/4LCCrh/+RsWJ+ST4DYK8z9pwFoPd24e4VBHN+wnalf2Em8J22sBPFw202/Ae9SXGogaj/+IQN4I1msGrTCoMoyzwcmtsloAotNiHpSUjzSLTzGcUZlo1kYqOhBHwhfnG2WxmufWiGDcFW/iDvyXSR1ge5BDo0O/JvaZWpaNI0FA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <bc203e52-73a8-bc23-6106-15c925c80bc8@suse.com>
Date: Wed, 18 Oct 2023 15:51:54 +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 pvshim console issue (with patch)
Content-Language: en-US
To: Manuel Bouyer <bouyer@antioche.eu.org>
Cc: xen-devel@lists.xenproject.org, Henry Wang <Henry.Wang@arm.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>
References: <ZS-1wVlZjdAJyUz6@mail.soc.lip6.fr>
 <c86df0f1-c89c-4702-9b12-c0faf61b2de9@citrix.com>
 <ZS-_lcYqqDgEZdFi@mail.soc.lip6.fr>
 <b4f888eb-f49c-c77e-93ea-6d41041d39e5@suse.com>
 <ZS_fZg7AkBItN8fM@mail.soc.lip6.fr>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <ZS_fZg7AkBItN8fM@mail.soc.lip6.fr>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0097.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:a9::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_|AM8PR04MB7874:EE_
X-MS-Office365-Filtering-Correlation-Id: e78b12d7-d75b-4a99-8073-08dbcfe16498
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	vsHAx/jLB45Vh428t+eN8N59k0CM4ABXBY2oCbjsWknBAllgVW1nv3FKvhFQV4F7jqCVCjV+AOOrNHWEcOflUovqx5JykrAzFct1dm8mmA4H4ZX5+9eh1d7m3noYdLbWpcldFNCUUNHYDvZLvOYAtIPlfNn/Nb+33OP93+mwlxiLLSA5Fs7oNJD/tWzhLpTTNYb39haullhi0opntXQgOud8ScBWxWwUoukXkbQS52rZ9SWXHnHmaq+LQbO8oJOsnIcrKAQOblRcEfBpavXJN0tlr/gl+hoQzv0FGR8Nr8ZwTNB2te2is3NGqVLE0mjjWjvavHskS43BbnToJkQ9HQlllS2KdNxuoLsSHp9coQBwrChz5LNxM4h9jLdTmGpjY/pihoAbu54eUonUKy0s0GDTmWx9RVPtmfTiL9VjrZHTaWdG93E0SPzhXC29XjnrOFGrAQ1/a6Xmh0O11yr/37z0fgUUH6aFD+2gA2beq+Yv9NCyM7KOxV2fW84lisQyjP+RLcH9YH6/COwcI97E+VrwnxOT17203iEBVVJG+zjnmu+EcDDILxsaspQ/11U2i5OpHRiazxJFpTJIrHfxMvCIypYAQSqmYYQE8fbm4yq12F6Ae7YzM+R/GCyMpnXNyhx0yo1OCFlTeoTiDIuNnw==
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)(39860400002)(346002)(396003)(376002)(230922051799003)(451199024)(1800799009)(186009)(64100799003)(26005)(2616005)(53546011)(6506007)(478600001)(6512007)(83380400001)(4326008)(2906002)(8936002)(54906003)(6486002)(66556008)(66946007)(66476007)(8676002)(41300700001)(316002)(6916009)(5660300002)(38100700002)(36756003)(86362001)(31696002)(31686004)(66899024)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?K1hqM09Uc2lGUlBwSTdVUm1rTFM0MjFFOXhJY1IwMTRjRHAyelM2ZmFuZG53?=
 =?utf-8?B?ZnhhWHVHTVN3ZUs4cGpzWjN5SVBPUEU0K3FMOThDbURBWnRpYnhTMlUzYW05?=
 =?utf-8?B?MnE2dHFhTDF1ZVdpcFB0SlVtelgwTzFQWms1cS9mL25UbkVHdTFrU0JUV0U3?=
 =?utf-8?B?QS9tU2h4RXN3YjhxUXJyRU02L0xqeUJVUDM4Vnh5WEdOZThvb09WUXlncStk?=
 =?utf-8?B?Q1A5bmxPNWlXeUdoaE1RVWRabVpEVnZGbnJoTnBVWkFmSlhwL3dUa3pyekE0?=
 =?utf-8?B?T2hBM05zWTgrL29HWnYwU2NobEt0ZkpBeEJPdkxxWXAwR2NoWVFDTU03c0lh?=
 =?utf-8?B?QVZJbDBFRFJiR0xpVXlzbEY0RWFxY3pubTBlTlZGVUVmTjBBMVMrQzVORHN3?=
 =?utf-8?B?SE1kdmY0UlBiUUpVOTlpNFUwYkhiaHdSdzRqdWFwTUVlZ1I0cVhwZTUwK3lt?=
 =?utf-8?B?cHI1aTdKSDY0b0hNWDBhdzBpLzVIWEF1eWFCdktjSkxlUmtLUjZ4aUdWREth?=
 =?utf-8?B?Q2R0TUVUYTEvVzJkTGdOeThMbEp6YWUrZ0VDejBwclUyRnFLVUQ5SjR1Y1RT?=
 =?utf-8?B?Rk83dThQbHhaR21hN0pMK2EvVUNwSmxUa1pjNUVhcFRhUnQwdGxVaDhBUlU1?=
 =?utf-8?B?OFBjUXdWUlJMNCthMExEeE1ZekQ1ekUyaWUvbHN4aUhCY3NLQXdGa09kNVhz?=
 =?utf-8?B?V1FaMkNHeTNXTDFBdkJXNDBqeVFRNmo4NzBLYTFyRCtmeVFQaG5aM242U0VQ?=
 =?utf-8?B?elB2YW1YdGJseERiQW5HWFAwTmZhMjNlSmR5TFpXaHpGbFpycXpmVWNHYTVB?=
 =?utf-8?B?MGtiUkNERzNqWmVadDM2ZE42TEQxOXN6STVBUjhhMlR1RTk3aDdxUnNhOFlQ?=
 =?utf-8?B?eS9qTzQwSE5kK3NXcE1sUXkwSkJyUnNyWmt6ejI5WFJLclhqUG9zNzJrWCt2?=
 =?utf-8?B?NHh1b216MktUeWJpSzVtUTBFUFZ4aUh5cUh4MVpvcE1FUjRtNkRpSnZGYytT?=
 =?utf-8?B?L25JSC9ldFFhOTB2SlpMVXFXZVQza0JmWmYzeDhXclhvUGRrTE1IZHZtWWpI?=
 =?utf-8?B?dzFuYnczMTV5dHZCNFJBWjhNN0FTOVJveER1QlQrYW5vSmtSRjFnb0ZVeGow?=
 =?utf-8?B?SUx1d0JBWGgwMEpUWjYreVpyUit3M2FvWlVnUERUdGZoYzRhOXFhNitmLzBV?=
 =?utf-8?B?dVRLY29aZ3lmQ3JPMnVDRUhnL1hrNytTNU5zL1prWWNQQUJVbGxIMlh3YmpC?=
 =?utf-8?B?cTVBbFlhK0J4SzljNDJ1WG5IWTY2YUY5d2VhakRRTGNTamY5WlBGR09iWmVR?=
 =?utf-8?B?RHRyRUdwLzVVU0dCTDJ5NkVGcXpKL0FIRkp0VHdSK0psV01JdUVPMk8wOEp6?=
 =?utf-8?B?WGUwREZRTzZUWGVZQVJPMUtEcGtISGYvSFhZV0FidS9sRTlyTTNHNXpmczAr?=
 =?utf-8?B?ajZSRmhwYy9ZNU5hMTg5TW1tL3MwV3NsYkdGMnkyM205dDhSNUtQVGZ5aUpo?=
 =?utf-8?B?dUtoZE13ekdGeHc1U3B4cVEwL2lIVVFMcWE2eUhld29HUG1TMzQwS3BNNDFh?=
 =?utf-8?B?dU1zTndtdGFtRjFGYnhhLzRKU3BqSGp5UHB0SUo1S3VlRmJtSTBIZ1NSV05C?=
 =?utf-8?B?TjBIVk05OXNJME1PUnVtU00xb0N5WmNNcS9LZGp4cmN5TE1Rbmpzc1Z0cmhS?=
 =?utf-8?B?ZWd4dmpyZTd6SVFRbDZSRWhpd3duYXBJWUJyWmZPbWlqaEJFcVJkUnlXNnpy?=
 =?utf-8?B?QjFQRXEwUGRwaWlIYkk5YWVmRzl4RFBJWlVNeWxIbU9Ec3VMbmVNRkNnVmJo?=
 =?utf-8?B?N0JxRkMrM055MUhhYmZwWXdTOVJZQjZVbVpNTWdTQjU3eldMS1FQUlBnaGkv?=
 =?utf-8?B?STUxTUVBSnU3U25saWRqSTRzTS80S2Q4Wnppck1xWTVxYTgvSVlsSkE1NkFF?=
 =?utf-8?B?TEVrNTM5TG9OVmNOUmwvZklQR3luR3h3K2dWVjB6UExUeFNjTkQ5RjFqaDBa?=
 =?utf-8?B?M2dxTHYyVm9td1A0STdkbnloWXpjYzkydmZVTDRyVjVlZ2xKTUtEZUl0NFF0?=
 =?utf-8?B?K1BZV2k2cCtFVDBOVHZDRVo4RFhOaGlhK1F3M2ZyTmpqZGNQWEhUcm1qWmZk?=
 =?utf-8?Q?pR7LgZm/ABLkdAzNn198VHQ8e?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: e78b12d7-d75b-4a99-8073-08dbcfe16498
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Oct 2023 13:51:56.6862
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: WlF5y62+1xwxe3CIwyj6gwE1ODg8p/lfiGy8iTf6Q8mH8o9h1cZtSSDCd3ikFCamCTJom6U6joTdvn6YY0G4pQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8PR04MB7874

On 18.10.2023 15:36, Manuel Bouyer wrote:
> On Wed, Oct 18, 2023 at 03:24:22PM +0200, Jan Beulich wrote:
>> On 18.10.2023 13:20, Manuel Bouyer wrote:
>>> On Wed, Oct 18, 2023 at 11:44:22AM +0100, Andrew Cooper wrote:
>>>> On 18/10/2023 11:38 am, Manuel Bouyer wrote:
>>>>> Hello,
>>>>> With Xen 4.18, a PV domain running under pvshim doesn't get console input.
>>>>> This is because the domain id in pvshim isn't 0 (and on x86 max_init_domid is
>>>>> hardwired to 0), so console_input_domain() will never select that domain
>>>>> as input.
>>>>>
>>>>> The attached patch fixes it by translating 0 to the real domain id for
>>>>> pvshim, but there may be a better way to do this.
>>>>>
>>>>
>>>> Thankyou for the report.
>>>>
>>>> First, CC'ing Henry as 4.18 release manager.
>>>>
>>>> There have been changes in how this works recently in 4.18, notably c/s
>>>> c2581c58bec96.
>>>
>>> Yes, it looks like this one introduced the problem.
>>> Before this, we would switch console_rx to 1 without checking if
>>> domain (console_rx - 1) exists, and console_rx == 1 is a special case
>>> in __serial_rx()
>>>
>>>>
>>>> However, it's not obvious whether this worked in 4.17 or not.  i.e.
>>>> whether it's a regression in 4.18, or whether it's been broken since PV
>>>> Shim was introduced.
>>>
>>> I don't know for 4.16 or 4.17 but I can tell that it's working in 4.15
>>
>> >From looking at the code, it doesn't look like it would: There
>> switch_serial_input() toggles console_rx between 0 and 1 afaict, and
>> console_input_domain() handles value 0 as "Xen" (like in 4.18), while
>> otherwise it calls rcu_lock_domain_by_id(console_rx - 1) (i.e. trying
>> to get hold of Dom0's domain structure, not Dom1's).
> 
> Well, I have a 4.15.5 installation in production and I can tell you that
> with PV+PVSHIM, the console is working, for sure.
> 
> AFAIK console_input_domain() is called only on ARM, from
> vpl011_write_data_xen(). It's never called for x86.

Oh, indeed. I took your patch touching the function as meaning it's used
on x86. This then means my earlier suggestion won't work, as we need
console_rx to have the value 1 for input to be accepted from Dom1. Which
in turn means your change to switch_serial_input(), suitably cleaned up,
is then likely the best we can do, despite me not really liking the shim
special casing.

As to cleaning up - besides the build, indentation, and style issues I
think you want to drop the "&& pv_shim" part of the condition (as
get_initial_domain_id() takes care of that already), and ideally you'd
also move the new "domid" variable into the more narrow scope. If you
don't feel like providing a proper (updated) patch, I'm happy to take
over, but to retain indication of your initial work I'd need you to
permit me to add your S-o-b (alongside mine).

Jan


From xen-devel-bounces@lists.xenproject.org Wed Oct 18 13:56:33 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 13:56:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618589.962412 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qt72F-0000nm-LT; Wed, 18 Oct 2023 13:56:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618589.962412; Wed, 18 Oct 2023 13:56: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 1qt72F-0000nf-HW; Wed, 18 Oct 2023 13:56:31 +0000
Received: by outflank-mailman (input) for mailman id 618589;
 Wed, 18 Oct 2023 13:56: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=Y0YN=GA=antioche.eu.org=bouyer@srs-se1.protection.inumbo.net>)
 id 1qt72E-0000nZ-Dr
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 13:56:30 +0000
Received: from isis.lip6.fr (isis.lip6.fr [2001:660:3302:283c::2])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 22dc5979-6dbe-11ee-98d4-6d05b1d4d9a1;
 Wed, 18 Oct 2023 15:56:29 +0200 (CEST)
Received: from asim.lip6.fr (asim.lip6.fr [132.227.86.2])
 by isis.lip6.fr (8.16.1/8.15.2) with ESMTPS id 39IDuPfO014255
 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NO);
 Wed, 18 Oct 2023 15:56:25 +0200 (CEST)
Received: from armandeche.soc.lip6.fr (armandeche [132.227.63.133])
 by asim.lip6.fr (8.15.2/8.15.2) with ESMTP id 39IDuPqG027538;
 Wed, 18 Oct 2023 15:56:25 +0200 (MEST)
Received: by armandeche.soc.lip6.fr (Postfix, from userid 20331)
 id 203EE77C1; Wed, 18 Oct 2023 15:56:25 +0200 (MEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 22dc5979-6dbe-11ee-98d4-6d05b1d4d9a1
Date: Wed, 18 Oct 2023 15:56:25 +0200
From: Manuel Bouyer <bouyer@antioche.eu.org>
To: Jan Beulich <jbeulich@suse.com>
Cc: xen-devel@lists.xenproject.org, Henry Wang <Henry.Wang@arm.com>,
        Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: Xen 4.18 pvshim console issue (with patch)
Message-ID: <ZS_kCeRXXFcP8NxQ@mail.soc.lip6.fr>
References: <ZS-1wVlZjdAJyUz6@mail.soc.lip6.fr>
 <c86df0f1-c89c-4702-9b12-c0faf61b2de9@citrix.com>
 <ZS-_lcYqqDgEZdFi@mail.soc.lip6.fr>
 <b4f888eb-f49c-c77e-93ea-6d41041d39e5@suse.com>
 <ZS_fZg7AkBItN8fM@mail.soc.lip6.fr>
 <bc203e52-73a8-bc23-6106-15c925c80bc8@suse.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <bc203e52-73a8-bc23-6106-15c925c80bc8@suse.com>
X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.6.4 (isis.lip6.fr [132.227.60.2]); Wed, 18 Oct 2023 15:56:25 +0200 (CEST)
X-Scanned-By: MIMEDefang 3.3 on 132.227.60.2

On Wed, Oct 18, 2023 at 03:51:54PM +0200, Jan Beulich wrote:
> On 18.10.2023 15:36, Manuel Bouyer wrote:
> > On Wed, Oct 18, 2023 at 03:24:22PM +0200, Jan Beulich wrote:
> >> On 18.10.2023 13:20, Manuel Bouyer wrote:
> >>> On Wed, Oct 18, 2023 at 11:44:22AM +0100, Andrew Cooper wrote:
> >>>> On 18/10/2023 11:38 am, Manuel Bouyer wrote:
> >>>>> Hello,
> >>>>> With Xen 4.18, a PV domain running under pvshim doesn't get console input.
> >>>>> This is because the domain id in pvshim isn't 0 (and on x86 max_init_domid is
> >>>>> hardwired to 0), so console_input_domain() will never select that domain
> >>>>> as input.
> >>>>>
> >>>>> The attached patch fixes it by translating 0 to the real domain id for
> >>>>> pvshim, but there may be a better way to do this.
> >>>>>
> >>>>
> >>>> Thankyou for the report.
> >>>>
> >>>> First, CC'ing Henry as 4.18 release manager.
> >>>>
> >>>> There have been changes in how this works recently in 4.18, notably c/s
> >>>> c2581c58bec96.
> >>>
> >>> Yes, it looks like this one introduced the problem.
> >>> Before this, we would switch console_rx to 1 without checking if
> >>> domain (console_rx - 1) exists, and console_rx == 1 is a special case
> >>> in __serial_rx()
> >>>
> >>>>
> >>>> However, it's not obvious whether this worked in 4.17 or not.  i.e.
> >>>> whether it's a regression in 4.18, or whether it's been broken since PV
> >>>> Shim was introduced.
> >>>
> >>> I don't know for 4.16 or 4.17 but I can tell that it's working in 4.15
> >>
> >> >From looking at the code, it doesn't look like it would: There
> >> switch_serial_input() toggles console_rx between 0 and 1 afaict, and
> >> console_input_domain() handles value 0 as "Xen" (like in 4.18), while
> >> otherwise it calls rcu_lock_domain_by_id(console_rx - 1) (i.e. trying
> >> to get hold of Dom0's domain structure, not Dom1's).
> > 
> > Well, I have a 4.15.5 installation in production and I can tell you that
> > with PV+PVSHIM, the console is working, for sure.
> > 
> > AFAIK console_input_domain() is called only on ARM, from
> > vpl011_write_data_xen(). It's never called for x86.
> 
> Oh, indeed. I took your patch touching the function as meaning it's used
> on x86. This then means my earlier suggestion won't work, as we need
> console_rx to have the value 1 for input to be accepted from Dom1. Which
> in turn means your change to switch_serial_input(), suitably cleaned up,
> is then likely the best we can do, despite me not really liking the shim
> special casing.
> 
> As to cleaning up - besides the build, indentation, and style issues I
> think you want to drop the "&& pv_shim" part of the condition (as
> get_initial_domain_id() takes care of that already), and ideally you'd
> also move the new "domid" variable into the more narrow scope. If you
> don't feel like providing a proper (updated) patch, I'm happy to take
> over, but to retain indication of your initial work I'd need you to
> permit me to add your S-o-b (alongside mine).

No problem, please do !

-- 
Manuel Bouyer <bouyer@antioche.eu.org>
     NetBSD: 26 ans d'experience feront toujours la difference
--


From xen-devel-bounces@lists.xenproject.org Wed Oct 18 14:18:49 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 14:18:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618593.962421 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qt7Nj-0004w9-C4; Wed, 18 Oct 2023 14:18:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618593.962421; Wed, 18 Oct 2023 14:18: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 1qt7Nj-0004w2-9F; Wed, 18 Oct 2023 14:18:43 +0000
Received: by outflank-mailman (input) for mailman id 618593;
 Wed, 18 Oct 2023 14:18: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=TS4B=GA=amd.com=Michal.Orzel@srs-se1.protection.inumbo.net>)
 id 1qt7Ni-0004vw-6F
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 14:18:42 +0000
Received: from NAM12-BN8-obe.outbound.protection.outlook.com
 (mail-bn8nam12on20611.outbound.protection.outlook.com
 [2a01:111:f400:fe5b::611])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 3b77d017-6dc1-11ee-9b0e-b553b5be7939;
 Wed, 18 Oct 2023 16:18:39 +0200 (CEST)
Received: from CY8P222CA0008.NAMP222.PROD.OUTLOOK.COM (2603:10b6:930:6b::13)
 by MN0PR12MB5881.namprd12.prod.outlook.com (2603:10b6:208:379::12) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.35; Wed, 18 Oct
 2023 14:18:35 +0000
Received: from CY4PEPF0000E9D2.namprd03.prod.outlook.com
 (2603:10b6:930:6b:cafe::bc) by CY8P222CA0008.outlook.office365.com
 (2603:10b6:930:6b::13) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.23 via Frontend
 Transport; Wed, 18 Oct 2023 14:18:35 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 CY4PEPF0000E9D2.mail.protection.outlook.com (10.167.241.145) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6838.22 via Frontend Transport; Wed, 18 Oct 2023 14:18:35 +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, 18 Oct
 2023 09:18:33 -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, 18 Oct 2023 09:18: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: 3b77d017-6dc1-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=OPfxnL5we/M5TE0XndVZWf9heS+gN3gAWKD91g9r79/qk9A6H7Z6RYzarUnIP44Male9K84+xV5xVMZxARfxuzV0poJWqw9a63BmbjWS8ypC937yKh+TT6WMO6KWaYWpDCiy0AWwZrtYk0UfKAmszVAMdCZrTBKNZoA+0iP51i3WeSBMmjSB/1QmEW4Y0flybVP/auIh8DpR50HgmF6OEbI1x/oHmCfTLuDt/3EqqDMXfMGfd/AmVnhJZR+rWV3uIvlWMcSGu3FyIFLYC89wOMtGWChKfHM6R6XSzMD93S+sjrvf8Dm2PhCv2/RHxVPYqox4/GfxufcRC/VnF/qE/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=pO17vVtioHFKbYGcClS0dWe5vmQ+t96ZiIvfyxUwlJs=;
 b=GhaydBR1t5nGZ4N8/EO4TXoX8MzvtCY+zCRi4c6p81ogv/LTAJgFz1Zfl9so5exV5ScfezlII/RFW0dKxQupAMKn3myhqwTwhkpg1Q0XZ5ACMHlNqovKKVpld/0ylafRBMrKW+rE6CeJenrpe3rET/OGsAUriONIw1f48gC/tlEaJpYum8FE9z6HM/jOXp5QMtQPapPPSZpmpf2uxdJxownjzqziDFwgri0+BTpIZrSd1VbQzgNGJ123IVnu42DQKJ0FPqCLQQR1KUyoZmNU1E4TtjkHFtismKayh8wRbKt1SjNEc7jPYYWcMidWIqxxdld9HEZWJ/OrqNcNUU6yEQ==
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=pO17vVtioHFKbYGcClS0dWe5vmQ+t96ZiIvfyxUwlJs=;
 b=I1Cvdk1B+6HkATJ9qm3PIgA6OpHVey3CbUyASRtbJ3sBr41RkqCKWkVyC3jg3OloFtLaosiaiceVxhKmBk/tw8IiWsyyeEVgLP8t7ZvRBFCBaYHawLwodWoz0fu3/HD2gqW6YiAItd9MTEkjm3JzdQmj6m7Ms9eKJOc9TFvqpvw=
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: <ea9a1990-ecf4-43fb-af5b-b3aac0c71b2b@amd.com>
Date: Wed, 18 Oct 2023 16:18:26 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: Xen 4.18 pvshim console issue (with patch)
Content-Language: en-US
To: Jan Beulich <jbeulich@suse.com>, Manuel Bouyer <bouyer@antioche.eu.org>
CC: <xen-devel@lists.xenproject.org>, Henry Wang <Henry.Wang@arm.com>, Andrew
 Cooper <andrew.cooper3@citrix.com>
References: <ZS-1wVlZjdAJyUz6@mail.soc.lip6.fr>
 <9f5c0af3-44b6-e98a-2032-14185af265c9@suse.com>
From: Michal Orzel <michal.orzel@amd.com>
In-Reply-To: <9f5c0af3-44b6-e98a-2032-14185af265c9@suse.com>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 7bit
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: CY4PEPF0000E9D2:EE_|MN0PR12MB5881:EE_
X-MS-Office365-Filtering-Correlation-Id: 66f76ba6-31ce-4ec4-f26e-08dbcfe51d9b
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	ZKKMAIvKm7pGsfLURwNFuPkcgwL7e3LMj4F1PgbN1VPnyz2kTSnvAjy/nXMGzYYB/jzDQ/2ZWaGhNga0NfzrEfn0pk7kalvz7zlxs5k6mIvFbKWSLCLS6gNwHSuVU5lL4V5MFkiQPxn+1s9htxZORd29vq1kLBTmrFYMqA/VYU6e2tzGSQvx3bPXDIg7V9Y6fWc+85S1m6YhdhjeZwogsppm5C1B83fyjHIYm3bThRs3bsRccPk1HKKEn/Y0xfTO2SWha7nfegktImcChpFlZm4cXwJsUMLqL1ORWtuOlcuYgwfMWUK1wfVgalxoHLYQtmmcbhtUg7wgRkB3n5DsodHisfeh/XMHzabDgH0Xj6SCoLHS0T7YeRsKY5dcVA1R8NeeM2jSUrMNOsjvvCW6DgJIwl86WikNrAHR8N/cOLNF5MiBeKs/oE/AW9u9yZdaDuem/pGPwFQjU0VX5M/j5NeoIlxiSOeYa3OKGKFhDJXtUKmSsvGUVeKOrmMOjh/P+HQ1y8hF0y3EiCt74UDtvl49O62rHa2JLqUx1CtQ0YuuVltTCBS/S/V9vmGT9qbcfoHEk98LWS4q7qgXoQeCkFyGuoTAwchW0iWuYK7/yAcbsTKoWbeIu/iERZkYsc61gHtwOv9gGEOiIMddV4KDKuz9ssD7XMfV2OaLXH/qjz/shzO25ArLuUrSEZvBg5QTpZS48/zG5k5ZVyOHP0pP2c5j6E3lakqSWwmgRGBqeiBmzSAJcelEUwRfnuO0zRzRi/uO/WRYPQbltQwuoyFv6KvCYLImybcA9PPwVuh3RqdQjMUjOq514ib8jIRKEJLv
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)(376002)(136003)(230922051799003)(186009)(82310400011)(1800799009)(451199024)(64100799003)(40470700004)(36840700001)(46966006)(16576012)(478600001)(110136005)(70206006)(70586007)(6666004)(54906003)(316002)(53546011)(336012)(426003)(26005)(2616005)(8936002)(4326008)(2906002)(8676002)(44832011)(5660300002)(36756003)(41300700001)(81166007)(31696002)(86362001)(82740400003)(47076005)(36860700001)(356005)(31686004)(40480700001)(40460700003)(36900700001)(43740500002);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Oct 2023 14:18:35.3183
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 66f76ba6-31ce-4ec4-f26e-08dbcfe51d9b
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:
	CY4PEPF0000E9D2.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN0PR12MB5881

Hi,

On 18/10/2023 15:29, Jan Beulich wrote:
> 
> 
> On 18.10.2023 12:38, Manuel Bouyer wrote:
>> Hello,
>> With Xen 4.18, a PV domain running under pvshim doesn't get console input.
>> This is because the domain id in pvshim isn't 0 (and on x86 max_init_domid is
>> hardwired to 0), so console_input_domain() will never select that domain
>> as input.
>>
>> The attached patch fixes it by translating 0 to the real domain id for
>> pvshim, but there may be a better way to do this.
> 
> My primary observation with the patch is that it presumably won't build for
> other than x86. There are also indentation and other style issues, no S-o-b,
> and no description. But I wonder whether a different approach doesn't want
> taking: Wouldn't it help if max_init_domid was 1 in the shim case, with no
> need for any other changes?
> 
> Also Cc-ing Michal as the author of the (possibly) offending patch.
What if we set max_init_domid in pvshim case to the value returned by get_initial_domain_id()
in create_dom0()? The drawback is that we would waste some time in a loop if the value is large.

~Michal


From xen-devel-bounces@lists.xenproject.org Wed Oct 18 14:18:57 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 14:18:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618594.962431 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qt7Nx-0005E9-JB; Wed, 18 Oct 2023 14:18:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618594.962431; Wed, 18 Oct 2023 14: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 1qt7Nx-0005E1-GZ; Wed, 18 Oct 2023 14:18:57 +0000
Received: by outflank-mailman (input) for mailman id 618594;
 Wed, 18 Oct 2023 14:18: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=7etD=GA=bugseng.com=simone.ballarin@srs-se1.protection.inumbo.net>)
 id 1qt7Nw-0004vw-Az
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 14:18:56 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 44b87780-6dc1-11ee-9b0e-b553b5be7939;
 Wed, 18 Oct 2023 16:18:54 +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 8F5DB4EE0739;
 Wed, 18 Oct 2023 16:18: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: 44b87780-6dc1-11ee-9b0e-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>,
	Doug Goldstein <cardoe@cardoe.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Wei Liu <wl@xen.org>,
	Dario Faggioli <dfaggioli@suse.com>
Subject: [XEN PATCH 0/4][for-4.19] xen: address violations of Rule 13.1
Date: Wed, 18 Oct 2023 16:18:47 +0200
Message-Id: <cover.1697638210.git.simone.ballarin@bugseng.com>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

This series contains some changes and deviation to address
reports of MISRA C:2012 Rule 13.1:
Initializer lists shall not contain persistent side effects

Some expressions with side-effects have been moved outside the
initializer lists, others have been deviated.

Function calls do not necessarily have side-effects, in these cases this
path propose to add GCC pure or const attributes whenever possible.

Function attributes pure and const do not need to be added as GCC
attributes, they can be added using ECLAIR configurations.

Simone Ballarin (4):
  xen/arm: address violations of MISRA C:2012 Rule 13.1
  automation/eclair: add deviations and call properties.
  xen/include: add pure and const attributes
  xen: address violations of MISRA C:2012 Rule 13.1

 .../eclair_analysis/ECLAIR/call_properties.ecl   | 10 ++++++++++
 automation/eclair_analysis/ECLAIR/deviations.ecl | 13 +++++++++++++
 docs/misra/deviations.rst                        | 11 +++++++++++
 xen/arch/arm/device.c                            |  6 +++---
 xen/arch/arm/guestcopy.c                         | 12 ++++++++----
 xen/arch/arm/include/asm/current.h               |  2 +-
 xen/common/sched/core.c                          | 16 ++++++++++++----
 xen/drivers/char/ns16550.c                       |  4 +++-
 xen/include/xen/pdx.h                            |  2 +-
 xen/include/xen/typesafe.h                       |  4 ++--
 10 files changed, 64 insertions(+), 16 deletions(-)

-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Wed Oct 18 14:18:59 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 14:18:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618595.962442 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qt7Ny-0005UC-UL; Wed, 18 Oct 2023 14:18:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618595.962442; Wed, 18 Oct 2023 14:18: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 1qt7Ny-0005U5-RO; Wed, 18 Oct 2023 14:18:58 +0000
Received: by outflank-mailman (input) for mailman id 618595;
 Wed, 18 Oct 2023 14:18: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=7etD=GA=bugseng.com=simone.ballarin@srs-se1.protection.inumbo.net>)
 id 1qt7Nx-0004vw-B0
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 14:18:57 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 44dd416c-6dc1-11ee-9b0e-b553b5be7939;
 Wed, 18 Oct 2023 16:18:54 +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 4169E4EE0740;
 Wed, 18 Oct 2023 16:18: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: 44dd416c-6dc1-11ee-9b0e-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 1/4] xen/arm: address violations of MISRA C:2012 Rule 13.1
Date: Wed, 18 Oct 2023 16:18:48 +0200
Message-Id: <31a926a09dfcef43d13a402fd3b235aeba48009d.1697638210.git.simone.ballarin@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1697638210.git.simone.ballarin@bugseng.com>
References: <cover.1697638210.git.simone.ballarin@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Rule 13.1: Initializer lists shall not contain persistent side effects

This patch moves expressions with side-effects into new variables before
the initializer lists.

Function calls do not necessarily have side-effects, in these cases the
GCC pure or const attributes are added when possible.

No functional changes.

Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>

---
Function attributes pure and const do not need to be added as GCC
attributes, they can be added using ECLAIR configurations.
---
 xen/arch/arm/device.c              |  6 +++---
 xen/arch/arm/guestcopy.c           | 12 ++++++++----
 xen/arch/arm/include/asm/current.h |  2 +-
 3 files changed, 12 insertions(+), 8 deletions(-)

diff --git a/xen/arch/arm/device.c b/xen/arch/arm/device.c
index 1f631d3274..e9be078415 100644
--- a/xen/arch/arm/device.c
+++ b/xen/arch/arm/device.c
@@ -319,6 +319,8 @@ int handle_device(struct domain *d, struct dt_device_node *dev, p2m_type_t p2mt,
     int res;
     paddr_t addr, size;
     bool own_device = !dt_device_for_passthrough(dev);
+    bool dev_is_hostbridge = is_pci_passthrough_enabled() &&
+                             device_get_class(dev) == DEVICE_PCI_HOSTBRIDGE;
     /*
      * 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
@@ -329,9 +331,7 @@ int handle_device(struct domain *d, struct dt_device_node *dev, p2m_type_t p2mt,
     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)),
+        .skip_mapping = !own_device || dev_is_hostbridge,
         .iomem_ranges = iomem_ranges,
         .irq_ranges = irq_ranges
     };
diff --git a/xen/arch/arm/guestcopy.c b/xen/arch/arm/guestcopy.c
index 6716b03561..3ec6743bf6 100644
--- a/xen/arch/arm/guestcopy.c
+++ b/xen/arch/arm/guestcopy.c
@@ -109,27 +109,31 @@ static unsigned long copy_guest(void *buf, uint64_t addr, unsigned int len,
 
 unsigned long raw_copy_to_guest(void *to, const void *from, unsigned int len)
 {
+    struct vcpu *current_vcpu = current;
     return copy_guest((void *)from, (vaddr_t)to, len,
-                      GVA_INFO(current), COPY_to_guest | COPY_linear);
+                      GVA_INFO(current_vcpu), COPY_to_guest | COPY_linear);
 }
 
 unsigned long raw_copy_to_guest_flush_dcache(void *to, const void *from,
                                              unsigned int len)
 {
-    return copy_guest((void *)from, (vaddr_t)to, len, GVA_INFO(current),
+    struct vcpu *current_vcpu = current;
+    return copy_guest((void *)from, (vaddr_t)to, len, GVA_INFO(current_vcpu),
                       COPY_to_guest | COPY_flush_dcache | COPY_linear);
 }
 
 unsigned long raw_clear_guest(void *to, unsigned int len)
 {
-    return copy_guest(NULL, (vaddr_t)to, len, GVA_INFO(current),
+    struct vcpu *current_vcpu = current;
+    return copy_guest(NULL, (vaddr_t)to, len, GVA_INFO(current_vcpu),
                       COPY_to_guest | COPY_linear);
 }
 
 unsigned long raw_copy_from_guest(void *to, const void __user *from,
                                   unsigned int len)
 {
-    return copy_guest(to, (vaddr_t)from, len, GVA_INFO(current),
+    struct vcpu *current_vcpu = current;
+    return copy_guest(to, (vaddr_t)from, len, GVA_INFO(current_vcpu),
                       COPY_from_guest | COPY_linear);
 }
 
diff --git a/xen/arch/arm/include/asm/current.h b/xen/arch/arm/include/asm/current.h
index 6973eeb1d1..a66e28fefb 100644
--- a/xen/arch/arm/include/asm/current.h
+++ b/xen/arch/arm/include/asm/current.h
@@ -28,7 +28,7 @@ struct cpu_info {
     uint32_t flags;
 };
 
-static inline struct cpu_info *get_cpu_info(void)
+static inline __attribute_pure__ struct cpu_info *get_cpu_info(void)
 {
 #ifdef __clang__
     unsigned long sp;
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Wed Oct 18 14:18:59 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 14:18:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618596.962448 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qt7Nz-0005Xw-Az; Wed, 18 Oct 2023 14:18:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618596.962448; Wed, 18 Oct 2023 14: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 1qt7Nz-0005Ws-3s; Wed, 18 Oct 2023 14:18:59 +0000
Received: by outflank-mailman (input) for mailman id 618596;
 Wed, 18 Oct 2023 14:18: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=7etD=GA=bugseng.com=simone.ballarin@srs-se1.protection.inumbo.net>)
 id 1qt7Nx-0005Dj-J1
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 14:18:57 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 45c0c852-6dc1-11ee-98d4-6d05b1d4d9a1;
 Wed, 18 Oct 2023 16:18:56 +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 A09F04EE0744;
 Wed, 18 Oct 2023 16:18: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: 45c0c852-6dc1-11ee-98d4-6d05b1d4d9a1
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>,
	George Dunlap <george.dunlap@citrix.com>,
	Dario Faggioli <dfaggioli@suse.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Julien Grall <julien@xen.org>,
	Wei Liu <wl@xen.org>
Subject: [XEN PATCH 4/4] xen: address violations of MISRA C:2012 Rule 13.1
Date: Wed, 18 Oct 2023 16:18:51 +0200
Message-Id: <1e0f12095bcbc82ae3585c9fcf57bec7e324049c.1697638210.git.simone.ballarin@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1697638210.git.simone.ballarin@bugseng.com>
References: <cover.1697638210.git.simone.ballarin@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Rule 13.1: Initializer lists shall not contain persistent side effects

This patch moves expressions with side-effects outside the initializer lists.

No functional changes.

Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>
---
 xen/common/sched/core.c    | 16 ++++++++++++----
 xen/drivers/char/ns16550.c |  4 +++-
 2 files changed, 15 insertions(+), 5 deletions(-)

diff --git a/xen/common/sched/core.c b/xen/common/sched/core.c
index 12deefa745..519884f989 100644
--- a/xen/common/sched/core.c
+++ b/xen/common/sched/core.c
@@ -1504,6 +1504,8 @@ long vcpu_yield(void)
 {
     struct vcpu * v=current;
     spinlock_t *lock;
+    domid_t domain_id;
+    int vcpu_id;
 
     rcu_read_lock(&sched_res_rculock);
 
@@ -1515,7 +1517,9 @@ long vcpu_yield(void)
 
     SCHED_STAT_CRANK(vcpu_yield);
 
-    TRACE_2D(TRC_SCHED_YIELD, current->domain->domain_id, current->vcpu_id);
+    domain_id = current->domain->domain_id;
+    vcpu_id = current->vcpu_id;
+    TRACE_2D(TRC_SCHED_YIELD, domain_id, vcpu_id);
     raise_softirq(SCHEDULE_SOFTIRQ);
     return 0;
 }
@@ -1888,14 +1892,17 @@ ret_t do_sched_op(int cmd, XEN_GUEST_HANDLE_PARAM(void) arg)
     case SCHEDOP_shutdown:
     {
         struct sched_shutdown sched_shutdown;
+        domid_t domain_id;
+        int vcpu_id;
 
         ret = -EFAULT;
         if ( copy_from_guest(&sched_shutdown, arg, 1) )
             break;
 
+        domain_id = current->domain->domain_id;
+        vcpu_id = current->vcpu_id;
         TRACE_3D(TRC_SCHED_SHUTDOWN,
-                 current->domain->domain_id, current->vcpu_id,
-                 sched_shutdown.reason);
+                 domain_id, vcpu_id, sched_shutdown.reason);
         ret = domain_shutdown(current->domain, (u8)sched_shutdown.reason);
 
         break;
@@ -1905,13 +1912,14 @@ ret_t do_sched_op(int cmd, XEN_GUEST_HANDLE_PARAM(void) arg)
     {
         struct sched_shutdown sched_shutdown;
         struct domain *d = current->domain;
+        int vcpu_id = current->vcpu_id;
 
         ret = -EFAULT;
         if ( copy_from_guest(&sched_shutdown, arg, 1) )
             break;
 
         TRACE_3D(TRC_SCHED_SHUTDOWN_CODE,
-                 d->domain_id, current->vcpu_id, sched_shutdown.reason);
+                 d->domain_id, vcpu_id, sched_shutdown.reason);
 
         spin_lock(&d->shutdown_lock);
         if ( d->shutdown_code == SHUTDOWN_CODE_INVALID )
diff --git a/xen/drivers/char/ns16550.c b/xen/drivers/char/ns16550.c
index 28ddedd50d..0b3d8b2a30 100644
--- a/xen/drivers/char/ns16550.c
+++ b/xen/drivers/char/ns16550.c
@@ -445,10 +445,12 @@ static void __init cf_check ns16550_init_postirq(struct serial_port *port)
             struct msi_info msi = {
                 .sbdf = PCI_SBDF(0, uart->ps_bdf[0], uart->ps_bdf[1],
                                  uart->ps_bdf[2]),
-                .irq = rc = uart->irq,
+                .irq = uart->irq,
                 .entry_nr = 1
             };
 
+            rc = uart->irq;
+
             if ( rc > 0 )
             {
                 struct msi_desc *msi_desc = NULL;
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Wed Oct 18 14:18:59 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 14:18:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618597.962454 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qt7Nz-0005fX-O1; Wed, 18 Oct 2023 14:18:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618597.962454; Wed, 18 Oct 2023 14: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 1qt7Nz-0005eA-HF; Wed, 18 Oct 2023 14:18:59 +0000
Received: by outflank-mailman (input) for mailman id 618597;
 Wed, 18 Oct 2023 14:18: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=7etD=GA=bugseng.com=simone.ballarin@srs-se1.protection.inumbo.net>)
 id 1qt7Ny-0004vw-BC
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 14:18:58 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 4527c161-6dc1-11ee-9b0e-b553b5be7939;
 Wed, 18 Oct 2023 16:18:55 +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 A47764EE0743;
 Wed, 18 Oct 2023 16:18: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: 4527c161-6dc1-11ee-9b0e-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>
Subject: [XEN PATCH 2/4] automation/eclair: add deviations and call properties.
Date: Wed, 18 Oct 2023 16:18:49 +0200
Message-Id: <8f426cc761c734d457a74416dd5b83fd10128c26.1697638210.git.simone.ballarin@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1697638210.git.simone.ballarin@bugseng.com>
References: <cover.1697638210.git.simone.ballarin@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Deviate violations of MISRA C:2012 Rule 13.1 caused by
functions vcpu_runnable and __bad_atomic_size. These functions
contain side-effects such as debugging logs, assertions and
failures that cannot cause unexpected behaviors.

Add "noeffect" call property to functions read_u.*_atomic and
get_cycles.

Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>
---
 .../eclair_analysis/ECLAIR/call_properties.ecl      | 10 ++++++++++
 automation/eclair_analysis/ECLAIR/deviations.ecl    | 13 +++++++++++++
 docs/misra/deviations.rst                           | 11 +++++++++++
 3 files changed, 34 insertions(+)

diff --git a/automation/eclair_analysis/ECLAIR/call_properties.ecl b/automation/eclair_analysis/ECLAIR/call_properties.ecl
index 3f7794bf8b..f410a6aa58 100644
--- a/automation/eclair_analysis/ECLAIR/call_properties.ecl
+++ b/automation/eclair_analysis/ECLAIR/call_properties.ecl
@@ -104,3 +104,13 @@ Furthermore, their uses do initialize the involved variables as needed by futher
 -call_properties+={"macro(^(__)?(raw_)?copy_from_(paddr|guest|compat)(_offset)?$)", {"pointee_write(1=always)", "pointee_read(1=never)", "taken()"}}
 -call_properties+={"macro(^(__)?copy_to_(guest|compat)(_offset)?$)", {"pointee_write(2=always)", "pointee_read(2=never)", "taken()"}}
 -doc_end
+
+-doc_begin="Functions generated by build_atomic_read cannot be considered pure
+since the input pointer is volatile."
+-call_properties+={"^read_u(8|16|32|64|int)_atomic.*$", {"noeffect"}}
+-doc_end
+
+-doc_begin="get_cycles does not perform visible side-effects "
+-call_property+={"name(get_cycles)", {"noeffect"}}
+-doc_end
+
diff --git a/automation/eclair_analysis/ECLAIR/deviations.ecl b/automation/eclair_analysis/ECLAIR/deviations.ecl
index fa56e5c00a..b80ccea7bc 100644
--- a/automation/eclair_analysis/ECLAIR/deviations.ecl
+++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
@@ -233,6 +233,19 @@ this."
 -config=MC3R1.R10.1,etypes+={safe,
   "stmt(operator(and||or||xor||not||and_assign||or_assign||xor_assign))",
   "any()"}
+#
+# Series 13.
+#
+
+-doc_begin="Function __bad_atomic_size is intended to generate a linkage error
+if invoked. Calling it in intentionally unreachable switch cases is safe even
+in a initializer list."
+-config=MC3R1.R13.1,reports+={safe, "first_area(^.*__bad_atomic_size.*$)"}
+-doc_end
+
+-doc_begin="Function vcpu_runnable contains pragmas and other side-effects for
+debugging purposes, their invocation is safe even in a initializer list."
+-config=MC3R1.R13.1,reports+={safe, "first_area(^.*vcpu_runnable.*$)"}
 -doc_end
 
 -doc_begin="See Section \"4.5 Integers\" of \"GCC_MANUAL\", where it says that
diff --git a/docs/misra/deviations.rst b/docs/misra/deviations.rst
index 8511a18925..2fcdb8da58 100644
--- a/docs/misra/deviations.rst
+++ b/docs/misra/deviations.rst
@@ -192,6 +192,17 @@ Deviations related to MISRA C:2012 Rules:
        See automation/eclair_analysis/deviations.ecl for the full explanation.
      - Tagged as `safe` for ECLAIR.
 
+   * - R13.1
+     - Function __bad_atomic_size is intended to generate a linkage error if
+       invoked. Calling it in intentionally unreachable switch cases is
+       safe even in a initializer list.
+     - Tagged as `safe` for ECLAIR.
+
+   * - R13.1
+     - Function vcpu_runnable contains pragmas and other side-effects for
+       debugging purposes, their invocation is safe even in a initializer list.
+     - Tagged as `safe` for ECLAIR.
+
    * - R13.5
      - All developers and reviewers can be safely assumed to be well aware of
        the short-circuit evaluation strategy for logical operators.
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Wed Oct 18 14:19:01 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 14:19:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618598.962470 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qt7O0-0006C5-U0; Wed, 18 Oct 2023 14:19:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618598.962470; Wed, 18 Oct 2023 14:19: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 1qt7O0-0006Al-Qa; Wed, 18 Oct 2023 14:19:00 +0000
Received: by outflank-mailman (input) for mailman id 618598;
 Wed, 18 Oct 2023 14:18: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=7etD=GA=bugseng.com=simone.ballarin@srs-se1.protection.inumbo.net>)
 id 1qt7Nz-0004vw-BS
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 14:18:59 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 4570c89c-6dc1-11ee-9b0e-b553b5be7939;
 Wed, 18 Oct 2023 16:18:55 +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 2CA834EE0741;
 Wed, 18 Oct 2023 16:18: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: 4570c89c-6dc1-11ee-9b0e-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 3/4] xen/include: add pure and const attributes
Date: Wed, 18 Oct 2023 16:18:50 +0200
Message-Id: <fd5421162a00aa782e0776324ff6497193c1e3d3.1697638210.git.simone.ballarin@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1697638210.git.simone.ballarin@bugseng.com>
References: <cover.1697638210.git.simone.ballarin@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Add const and pure attributes to address reports
of MISRA C:2012 Rule 13.1: Initializer lists shall
not contain persistent side effects

Add pure attribute to function pdx_to_pfn.
Add const attribute to functions generated by TYPE_SAFE.

These functions are used in initializer lists: adding
the attributes ensures that no effect will be performed
by them.

Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>

---
Function attributes pure and const do not need to be added as GCC
attributes, they can be added using ECLAIR configurations.
---
 xen/include/xen/pdx.h      | 2 +-
 xen/include/xen/typesafe.h | 4 ++--
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/xen/include/xen/pdx.h b/xen/include/xen/pdx.h
index f3fbc4273a..5d1050967a 100644
--- a/xen/include/xen/pdx.h
+++ b/xen/include/xen/pdx.h
@@ -164,7 +164,7 @@ static inline unsigned long pfn_to_pdx(unsigned long pfn)
  * @param pdx Page index
  * @return Obtained pfn after decompressing the pdx
  */
-static inline unsigned long pdx_to_pfn(unsigned long pdx)
+static inline __attribute_pure__ unsigned long pdx_to_pfn(unsigned long pdx)
 {
     return (pdx & pfn_pdx_bottom_mask) |
            ((pdx << pfn_pdx_hole_shift) & pfn_top_mask);
diff --git a/xen/include/xen/typesafe.h b/xen/include/xen/typesafe.h
index 7ecd3b4a8d..615df6f944 100644
--- a/xen/include/xen/typesafe.h
+++ b/xen/include/xen/typesafe.h
@@ -21,8 +21,8 @@
 
 #define TYPE_SAFE(_type, _name)                                         \
     typedef struct { _type _name; } _name##_t;                          \
-    static inline _name##_t _##_name(_type n) { return (_name##_t) { n }; } \
-    static inline _type _name##_x(_name##_t n) { return n._name; }
+    static inline __attribute_const__ _name##_t _##_name(_type n) { return (_name##_t) { n }; } \
+    static inline __attribute_const__ _type _name##_x(_name##_t n) { return n._name; }
 
 #else
 
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Wed Oct 18 14:26:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 14:26:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618618.962487 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qt7V9-0001bL-0e; Wed, 18 Oct 2023 14:26:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618618.962487; Wed, 18 Oct 2023 14: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 1qt7V8-0001ax-SL; Wed, 18 Oct 2023 14:26:22 +0000
Received: by outflank-mailman (input) for mailman id 618618;
 Wed, 18 Oct 2023 14:26: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=MOie=GA=bugseng.com=federico.serafini@srs-se1.protection.inumbo.net>)
 id 1qt7V7-0001YJ-EN
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 14:26:21 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 4e887e8c-6dc2-11ee-98d4-6d05b1d4d9a1;
 Wed, 18 Oct 2023 16:26:20 +0200 (CEST)
Received: from Dell.bugseng.com (unknown [37.161.127.233])
 by support.bugseng.com (Postfix) with ESMTPSA id 309214EE0740;
 Wed, 18 Oct 2023 16:26: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: 4e887e8c-6dc2-11ee-98d4-6d05b1d4d9a1
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/7] x86/mctelem: address violations of MISRA C:2012 Rule 8.2
Date: Wed, 18 Oct 2023 16:25:54 +0200
Message-Id: <3e811e830f6f49af6cc5abf4fec3c8c74b72256c.1697638486.git.federico.serafini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1697638486.git.federico.serafini@bugseng.com>
References: <cover.1697638486.git.federico.serafini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Add missing parameter names. No functional change.

Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
---
 xen/arch/x86/cpu/mcheck/mctelem.c |  2 +-
 xen/arch/x86/cpu/mcheck/mctelem.h | 25 +++++++++++++------------
 2 files changed, 14 insertions(+), 13 deletions(-)

diff --git a/xen/arch/x86/cpu/mcheck/mctelem.c b/xen/arch/x86/cpu/mcheck/mctelem.c
index 77a4d1d5ff..b8d0368a7d 100644
--- a/xen/arch/x86/cpu/mcheck/mctelem.c
+++ b/xen/arch/x86/cpu/mcheck/mctelem.c
@@ -208,7 +208,7 @@ void mctelem_defer(mctelem_cookie_t cookie, bool lmce)
  *  @lmce: indicate which pending list on @cpu is handled
  */
 void mctelem_process_deferred(unsigned int cpu,
-			      int (*fn)(mctelem_cookie_t),
+			      int (*fn)(mctelem_cookie_t mctc),
 			      bool lmce)
 {
 	struct mctelem_ent *tep;
diff --git a/xen/arch/x86/cpu/mcheck/mctelem.h b/xen/arch/x86/cpu/mcheck/mctelem.h
index 21b251847b..f4c5ff848d 100644
--- a/xen/arch/x86/cpu/mcheck/mctelem.h
+++ b/xen/arch/x86/cpu/mcheck/mctelem.h
@@ -60,18 +60,19 @@ typedef enum mctelem_class {
     MC_NCLASSES
 } mctelem_class_t;
 
-extern void mctelem_init(unsigned int);
-extern mctelem_cookie_t mctelem_reserve(mctelem_class_t);
-extern void *mctelem_dataptr(mctelem_cookie_t);
-extern void mctelem_commit(mctelem_cookie_t);
-extern void mctelem_dismiss(mctelem_cookie_t);
-extern mctelem_cookie_t mctelem_consume_oldest_begin(mctelem_class_t);
-extern void mctelem_consume_oldest_end(mctelem_cookie_t);
-extern void mctelem_ack(mctelem_class_t, mctelem_cookie_t);
-extern void mctelem_defer(mctelem_cookie_t, bool lmce);
-extern void mctelem_process_deferred(unsigned int,
-                                     int (*)(mctelem_cookie_t), bool lmce);
-bool mctelem_has_deferred(unsigned int);
+extern void mctelem_init(unsigned int datasz);
+extern mctelem_cookie_t mctelem_reserve(mctelem_class_t which);
+extern void *mctelem_dataptr(mctelem_cookie_t cookie);
+extern void mctelem_commit(mctelem_cookie_t cookie);
+extern void mctelem_dismiss(mctelem_cookie_t cookie);
+extern mctelem_cookie_t mctelem_consume_oldest_begin(mctelem_class_t which);
+extern void mctelem_consume_oldest_end(mctelem_cookie_t cookie);
+extern void mctelem_ack(mctelem_class_t which, mctelem_cookie_t cookie);
+extern void mctelem_defer(mctelem_cookie_t cookie, bool lmce);
+extern void mctelem_process_deferred(unsigned int cpu,
+                                     int (*fn)(mctelem_cookie_t mctc),
+                                     bool lmce);
+bool mctelem_has_deferred(unsigned int cpu);
 bool mctelem_has_deferred_lmce(unsigned int cpu);
 
 #endif
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Wed Oct 18 14:26:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 14:26:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618617.962481 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qt7V8-0001Yd-OO; Wed, 18 Oct 2023 14:26:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618617.962481; Wed, 18 Oct 2023 14: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 1qt7V8-0001YW-Lk; Wed, 18 Oct 2023 14:26:22 +0000
Received: by outflank-mailman (input) for mailman id 618617;
 Wed, 18 Oct 2023 14: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=MOie=GA=bugseng.com=federico.serafini@srs-se1.protection.inumbo.net>)
 id 1qt7V6-0001YD-Rz
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 14:26:20 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 4dc24918-6dc2-11ee-9b0e-b553b5be7939;
 Wed, 18 Oct 2023 16:26:19 +0200 (CEST)
Received: from Dell.bugseng.com (unknown [37.161.127.233])
 by support.bugseng.com (Postfix) with ESMTPSA id 112834EE0739;
 Wed, 18 Oct 2023 16:26: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: 4dc24918-6dc2-11ee-9b0e-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 0/7] x86: address some violations of MISRA C:2012 Rule 8.2
Date: Wed, 18 Oct 2023 16:25:53 +0200
Message-Id: <cover.1697638486.git.federico.serafini@bugseng.com>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

This patch series addresses some of the violations of Rule 8.2 adding the
missing parameter names.

Federico Serafini (7):
  x86/mctelem: address violations of MISRA C:2012 Rule 8.2
  x86/mtrr: address violation of MISRA C:2012 Rule 8.2
  x86/domain: address violations of MISRA C:2012 Rule 8.2
  x86/cpuidle: address violations of MISRA C:2012 Rule 8.2
  x86/mcaction: address a violation of MISRA C:2012 Rule 8.2
  x86/vmce: address violations of MISRA C:2012 Rule 8.2
  x86/hpet: address violations of MISRA C:2012 Rule 8.2

 xen/arch/x86/cpu/mcheck/mcaction.h |  2 +-
 xen/arch/x86/cpu/mcheck/mctelem.c  |  2 +-
 xen/arch/x86/cpu/mcheck/mctelem.h  | 25 +++++++++++++------------
 xen/arch/x86/cpu/mcheck/vmce.h     |  8 ++++----
 xen/arch/x86/hpet.c                |  2 +-
 xen/arch/x86/include/asm/cpuidle.h | 11 ++++++-----
 xen/arch/x86/include/asm/domain.h  | 26 +++++++++++++-------------
 xen/arch/x86/include/asm/hpet.h    |  2 +-
 xen/arch/x86/include/asm/mtrr.h    | 10 +++++-----
 9 files changed, 45 insertions(+), 43 deletions(-)

-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Wed Oct 18 14:26:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 14:26:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618619.962494 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qt7V9-0001gP-AS; Wed, 18 Oct 2023 14:26:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618619.962494; Wed, 18 Oct 2023 14:26: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 1qt7V9-0001eT-2p; Wed, 18 Oct 2023 14:26:23 +0000
Received: by outflank-mailman (input) for mailman id 618619;
 Wed, 18 Oct 2023 14:26: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=MOie=GA=bugseng.com=federico.serafini@srs-se1.protection.inumbo.net>)
 id 1qt7V8-0001YJ-FI
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 14:26:22 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 4f62fdc0-6dc2-11ee-98d4-6d05b1d4d9a1;
 Wed, 18 Oct 2023 16:26:22 +0200 (CEST)
Received: from Dell.bugseng.com (unknown [37.161.127.233])
 by support.bugseng.com (Postfix) with ESMTPSA id 06ADC4EE073F;
 Wed, 18 Oct 2023 16:26: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: 4f62fdc0-6dc2-11ee-98d4-6d05b1d4d9a1
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/7] x86/mtrr: address violation of MISRA C:2012 Rule 8.2
Date: Wed, 18 Oct 2023 16:25:55 +0200
Message-Id: <d1fbcb647c82032660ffa547a0da073c3e625b7c.1697638486.git.federico.serafini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1697638486.git.federico.serafini@bugseng.com>
References: <cover.1697638486.git.federico.serafini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Add missing parameter names. No functional change.

Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
---
 xen/arch/x86/include/asm/mtrr.h | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/xen/arch/x86/include/asm/mtrr.h b/xen/arch/x86/include/asm/mtrr.h
index 14246e3387..1d2744eceb 100644
--- a/xen/arch/x86/include/asm/mtrr.h
+++ b/xen/arch/x86/include/asm/mtrr.h
@@ -48,7 +48,7 @@ struct mtrr_state {
 };
 extern struct mtrr_state mtrr_state;
 
-extern void cf_check mtrr_save_fixed_ranges(void *);
+extern void cf_check mtrr_save_fixed_ranges(void *info);
 extern void mtrr_save_state(void);
 extern int mtrr_add(unsigned long base, unsigned long size,
                     unsigned int type, char increment);
@@ -68,14 +68,14 @@ extern void mtrr_aps_sync_begin(void);
 extern void mtrr_aps_sync_end(void);
 extern void mtrr_bp_restore(void);
 
-extern bool_t mtrr_var_range_msr_set(struct domain *, struct mtrr_state *,
+extern bool_t mtrr_var_range_msr_set(struct domain *d, struct mtrr_state *m,
                                      uint32_t msr, uint64_t msr_content);
-extern bool_t mtrr_fix_range_msr_set(struct domain *, struct mtrr_state *,
+extern bool_t mtrr_fix_range_msr_set(struct domain *d, struct mtrr_state *m,
                                      uint32_t row, uint64_t msr_content);
-extern bool_t mtrr_def_type_msr_set(struct domain *, struct mtrr_state *,
+extern bool_t mtrr_def_type_msr_set(struct domain *d, struct mtrr_state *m,
                                     uint64_t msr_content);
 #ifdef CONFIG_HVM
-extern void memory_type_changed(struct domain *);
+extern void memory_type_changed(struct domain *d);
 #else
 static inline void memory_type_changed(struct domain *d) {}
 #endif
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Wed Oct 18 14:26:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 14:26:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618621.962522 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qt7VC-0002ZP-TK; Wed, 18 Oct 2023 14:26:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618621.962522; Wed, 18 Oct 2023 14:26: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 1qt7VC-0002ZG-QL; Wed, 18 Oct 2023 14:26:26 +0000
Received: by outflank-mailman (input) for mailman id 618621;
 Wed, 18 Oct 2023 14:26: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=MOie=GA=bugseng.com=federico.serafini@srs-se1.protection.inumbo.net>)
 id 1qt7VB-0001YJ-1u
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 14:26:25 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 50eefe53-6dc2-11ee-98d4-6d05b1d4d9a1;
 Wed, 18 Oct 2023 16:26:24 +0200 (CEST)
Received: from Dell.bugseng.com (unknown [37.161.127.233])
 by support.bugseng.com (Postfix) with ESMTPSA id 35FA94EE0741;
 Wed, 18 Oct 2023 16:26: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: 50eefe53-6dc2-11ee-98d4-6d05b1d4d9a1
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/7] x86/cpuidle: address violations of MISRA C:2012 Rule 8.2
Date: Wed, 18 Oct 2023 16:25:57 +0200
Message-Id: <2ce963d3d7c8d14f2ddc80600454ea990599e0e6.1697638486.git.federico.serafini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1697638486.git.federico.serafini@bugseng.com>
References: <cover.1697638486.git.federico.serafini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Add missing parameter names. No functional change.

Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
---
 xen/arch/x86/include/asm/cpuidle.h | 11 ++++++-----
 1 file changed, 6 insertions(+), 5 deletions(-)

diff --git a/xen/arch/x86/include/asm/cpuidle.h b/xen/arch/x86/include/asm/cpuidle.h
index 3edd7a75d2..707b3e948d 100644
--- a/xen/arch/x86/include/asm/cpuidle.h
+++ b/xen/arch/x86/include/asm/cpuidle.h
@@ -15,16 +15,17 @@ extern void (*lapic_timer_on)(void);
 
 extern uint64_t (*cpuidle_get_tick)(void);
 
-int mwait_idle_init(struct notifier_block *);
+int mwait_idle_init(struct notifier_block *nfb);
 int cpuidle_init_cpu(unsigned int cpu);
 void cf_check default_dead_idle(void);
 void cf_check acpi_dead_idle(void);
 void play_dead(void);
 void trace_exit_reason(u32 *irq_traced);
-void update_idle_stats(struct acpi_processor_power *,
-                       struct acpi_processor_cx *, uint64_t, uint64_t);
-void update_last_cx_stat(struct acpi_processor_power *,
-                         struct acpi_processor_cx *, uint64_t);
+void update_idle_stats(struct acpi_processor_power *power,
+                       struct acpi_processor_cx *cx,
+                       uint64_t before, uint64_t after);
+void update_last_cx_stat(struct acpi_processor_power *power,
+                         struct acpi_processor_cx *cx, uint64_t ticks);
 
 bool errata_c6_workaround(void);
 
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Wed Oct 18 14:26:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 14:26:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618620.962512 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qt7VB-0002Iu-L1; Wed, 18 Oct 2023 14:26:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618620.962512; Wed, 18 Oct 2023 14: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 1qt7VB-0002If-Gl; Wed, 18 Oct 2023 14:26:25 +0000
Received: by outflank-mailman (input) for mailman id 618620;
 Wed, 18 Oct 2023 14:26: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=MOie=GA=bugseng.com=federico.serafini@srs-se1.protection.inumbo.net>)
 id 1qt7VA-0001YD-JS
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 14:26:24 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 4ff7eb0a-6dc2-11ee-9b0e-b553b5be7939;
 Wed, 18 Oct 2023 16:26:22 +0200 (CEST)
Received: from Dell.bugseng.com (unknown [37.161.127.233])
 by support.bugseng.com (Postfix) with ESMTPSA id DEC424EE0742;
 Wed, 18 Oct 2023 16:26: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: 4ff7eb0a-6dc2-11ee-9b0e-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 3/7] x86/domain: address violations of MISRA C:2012 Rule 8.2
Date: Wed, 18 Oct 2023 16:25:56 +0200
Message-Id: <95f9938db062ac2ef10e10790fd12a987eaa90b1.1697638486.git.federico.serafini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1697638486.git.federico.serafini@bugseng.com>
References: <cover.1697638486.git.federico.serafini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Add missing parameter names. No functional change.

Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
---
 xen/arch/x86/include/asm/domain.h | 26 +++++++++++++-------------
 1 file changed, 13 insertions(+), 13 deletions(-)

diff --git a/xen/arch/x86/include/asm/domain.h b/xen/arch/x86/include/asm/domain.h
index 619e667938..d033224d2b 100644
--- a/xen/arch/x86/include/asm/domain.h
+++ b/xen/arch/x86/include/asm/domain.h
@@ -74,20 +74,20 @@ struct mapcache_domain {
     unsigned long *garbage;
 };
 
-int mapcache_domain_init(struct domain *);
-int mapcache_vcpu_init(struct vcpu *);
-void mapcache_override_current(struct vcpu *);
+int mapcache_domain_init(struct domain *d);
+int mapcache_vcpu_init(struct vcpu *v);
+void mapcache_override_current(struct vcpu *v);
 
 /* x86/64: toggle guest between kernel and user modes. */
-void toggle_guest_mode(struct vcpu *);
+void toggle_guest_mode(struct vcpu *v);
 /* x86/64: toggle guest page tables between kernel and user modes. */
-void toggle_guest_pt(struct vcpu *);
+void toggle_guest_pt(struct vcpu *v);
 
 /*
  * Initialise a hypercall-transfer page. The given pointer must be mapped
  * in Xen virtual address space (accesses are not validated or checked).
  */
-void init_hypercall_page(struct domain *d, void *);
+void init_hypercall_page(struct domain *d, void *ptr);
 
 /************************************************/
 /*          shadow paging extension             */
@@ -342,8 +342,8 @@ struct arch_domain
     struct page_list_head relmem_list;
 
     const struct arch_csw {
-        void (*from)(struct vcpu *);
-        void (*to)(struct vcpu *);
+        void (*from)(struct vcpu *v);
+        void (*to)(struct vcpu *v);
         void noreturn (*tail)(void);
     } *ctxt_switch;
 
@@ -690,12 +690,12 @@ void update_guest_memory_policy(struct vcpu *v,
 
 void domain_cpu_policy_changed(struct domain *d);
 
-bool update_secondary_system_time(struct vcpu *,
-                                  struct vcpu_time_info *);
-void force_update_secondary_system_time(struct vcpu *,
-                                        struct vcpu_time_info *);
+bool update_secondary_system_time(struct vcpu *v,
+                                  struct vcpu_time_info *u);
+void force_update_secondary_system_time(struct vcpu *v,
+                                        struct vcpu_time_info *map);
 
-void vcpu_show_registers(const struct vcpu *);
+void vcpu_show_registers(const struct vcpu *v);
 
 static inline struct vcpu_guest_context *alloc_vcpu_guest_context(void)
 {
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Wed Oct 18 14:26:28 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 14:26:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618622.962532 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qt7VE-0002rL-8V; Wed, 18 Oct 2023 14:26:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618622.962532; Wed, 18 Oct 2023 14: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 1qt7VE-0002qJ-57; Wed, 18 Oct 2023 14:26:28 +0000
Received: by outflank-mailman (input) for mailman id 618622;
 Wed, 18 Oct 2023 14:26: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=MOie=GA=bugseng.com=federico.serafini@srs-se1.protection.inumbo.net>)
 id 1qt7VC-0001YJ-SM
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 14:26:26 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 520793b4-6dc2-11ee-98d4-6d05b1d4d9a1;
 Wed, 18 Oct 2023 16:26:26 +0200 (CEST)
Received: from Dell.bugseng.com (unknown [37.161.127.233])
 by support.bugseng.com (Postfix) with ESMTPSA id B27864EE0743;
 Wed, 18 Oct 2023 16:26: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: 520793b4-6dc2-11ee-98d4-6d05b1d4d9a1
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 5/7] x86/mcaction: address a violation of MISRA C:2012 Rule 8.2
Date: Wed, 18 Oct 2023 16:25:58 +0200
Message-Id: <80b8eee23c265708dab569b513da9fbfc81febb9.1697638486.git.federico.serafini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1697638486.git.federico.serafini@bugseng.com>
References: <cover.1697638486.git.federico.serafini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Add missing parameter name. No functional change.

Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
---
 xen/arch/x86/cpu/mcheck/mcaction.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/xen/arch/x86/cpu/mcheck/mcaction.h b/xen/arch/x86/cpu/mcheck/mcaction.h
index 5cbe558fb0..9cb2ad6c9f 100644
--- a/xen/arch/x86/cpu/mcheck/mcaction.h
+++ b/xen/arch/x86/cpu/mcheck/mcaction.h
@@ -13,7 +13,7 @@ mc_memerr_dhandler(struct mca_binfo *binfo,
 #define MC_ADDR_VIRTUAL   1
 
 typedef bool (*mce_check_addr_t)(uint64_t status, uint64_t misc, int addr_type);
-extern void mce_register_addrcheck(mce_check_addr_t);
+extern void mce_register_addrcheck(mce_check_addr_t cbfunc);
 
 extern mce_check_addr_t mc_check_addr;
 
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Wed Oct 18 14:26:30 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 14:26:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618623.962542 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qt7VG-0003BX-IN; Wed, 18 Oct 2023 14:26:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618623.962542; Wed, 18 Oct 2023 14:26: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 1qt7VG-0003BM-FM; Wed, 18 Oct 2023 14:26:30 +0000
Received: by outflank-mailman (input) for mailman id 618623;
 Wed, 18 Oct 2023 14:26: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=MOie=GA=bugseng.com=federico.serafini@srs-se1.protection.inumbo.net>)
 id 1qt7VE-0001YJ-O3
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 14:26:28 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 5320d6e0-6dc2-11ee-98d4-6d05b1d4d9a1;
 Wed, 18 Oct 2023 16:26:28 +0200 (CEST)
Received: from Dell.bugseng.com (unknown [37.161.127.233])
 by support.bugseng.com (Postfix) with ESMTPSA id 70AE34EE073F;
 Wed, 18 Oct 2023 16:26: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: 5320d6e0-6dc2-11ee-98d4-6d05b1d4d9a1
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 6/7] x86/vmce: address violations of MISRA C:2012 Rule 8.2
Date: Wed, 18 Oct 2023 16:25:59 +0200
Message-Id: <f6df2bcbbe4bc0050edc1d62837d5e9a6ff56064.1697638486.git.federico.serafini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1697638486.git.federico.serafini@bugseng.com>
References: <cover.1697638486.git.federico.serafini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Add missing parameter names. No functional change.

Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
---
 xen/arch/x86/cpu/mcheck/vmce.h | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/xen/arch/x86/cpu/mcheck/vmce.h b/xen/arch/x86/cpu/mcheck/vmce.h
index 2e9b32a9bd..a9a325f776 100644
--- a/xen/arch/x86/cpu/mcheck/vmce.h
+++ b/xen/arch/x86/cpu/mcheck/vmce.h
@@ -11,10 +11,10 @@ int vmce_init(struct cpuinfo_x86 *c);
 
 int unmmap_broken_page(struct domain *d, mfn_t mfn, unsigned long gfn);
 
-int vmce_intel_rdmsr(const struct vcpu *, uint32_t msr, uint64_t *val);
-int vmce_intel_wrmsr(struct vcpu *, uint32_t msr, uint64_t val);
-int vmce_amd_rdmsr(const struct vcpu *, uint32_t msr, uint64_t *val);
-int vmce_amd_wrmsr(struct vcpu *, uint32_t msr, uint64_t val);
+int vmce_intel_rdmsr(const struct vcpu *v, uint32_t msr, uint64_t *val);
+int vmce_intel_wrmsr(struct vcpu *v, uint32_t msr, uint64_t val);
+int vmce_amd_rdmsr(const struct vcpu *v, uint32_t msr, uint64_t *val);
+int vmce_amd_wrmsr(struct vcpu *v, uint32_t msr, uint64_t val);
 
 int fill_vmsr_data(struct mcinfo_bank *mc_bank, struct domain *d,
                    uint64_t gstatus, int vmce_vcpuid);
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Wed Oct 18 14:26:32 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 14:26:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618624.962552 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qt7VH-0003TT-Su; Wed, 18 Oct 2023 14:26:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618624.962552; Wed, 18 Oct 2023 14:26: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 1qt7VH-0003TB-Nh; Wed, 18 Oct 2023 14:26:31 +0000
Received: by outflank-mailman (input) for mailman id 618624;
 Wed, 18 Oct 2023 14:26: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=MOie=GA=bugseng.com=federico.serafini@srs-se1.protection.inumbo.net>)
 id 1qt7VF-0001YJ-Qy
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 14:26:29 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 53c8e717-6dc2-11ee-98d4-6d05b1d4d9a1;
 Wed, 18 Oct 2023 16:26:29 +0200 (CEST)
Received: from Dell.bugseng.com (unknown [37.161.127.233])
 by support.bugseng.com (Postfix) with ESMTPSA id 49E054EE0740;
 Wed, 18 Oct 2023 16:26: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: 53c8e717-6dc2-11ee-98d4-6d05b1d4d9a1
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 7/7] x86/hpet: address violations of MISRA C:2012 Rule 8.2
Date: Wed, 18 Oct 2023 16:26:00 +0200
Message-Id: <4d3f6608e5c76152e4ad0bbb57e38ac80cf316f3.1697638486.git.federico.serafini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1697638486.git.federico.serafini@bugseng.com>
References: <cover.1697638486.git.federico.serafini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Add missing parameter names. No functional change.

Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
---
 xen/arch/x86/hpet.c             | 2 +-
 xen/arch/x86/include/asm/hpet.h | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/xen/arch/x86/hpet.c b/xen/arch/x86/hpet.c
index 79c07f6a9e..63d4158f0f 100644
--- a/xen/arch/x86/hpet.c
+++ b/xen/arch/x86/hpet.c
@@ -37,7 +37,7 @@ struct hpet_event_channel
     s_time_t      next_event;
     cpumask_var_t cpumask;
     spinlock_t    lock;
-    void          (*event_handler)(struct hpet_event_channel *);
+    void          (*event_handler)(struct hpet_event_channel *ch);
 
     unsigned int idx;   /* physical channel idx */
     unsigned int cpu;   /* msi target */
diff --git a/xen/arch/x86/include/asm/hpet.h b/xen/arch/x86/include/asm/hpet.h
index 9919f74730..b342a154e6 100644
--- a/xen/arch/x86/include/asm/hpet.h
+++ b/xen/arch/x86/include/asm/hpet.h
@@ -60,7 +60,7 @@ extern int8_t opt_hpet_legacy_replacement;
  * Return value is zero if HPET is unavailable.
  */
 u64 hpet_setup(void);
-void hpet_resume(u32 *);
+void hpet_resume(u32 *boot_cfg);
 
 /*
  * Disable HPET hardware: restore it to boot time state.
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Wed Oct 18 14:28:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 14:28:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618636.962562 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qt7XU-000604-Ar; Wed, 18 Oct 2023 14:28:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618636.962562; Wed, 18 Oct 2023 14:28: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 1qt7XU-0005zx-8F; Wed, 18 Oct 2023 14:28:48 +0000
Received: by outflank-mailman (input) for mailman id 618636;
 Wed, 18 Oct 2023 14:28: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=BVsY=GA=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qt7XT-0005zr-9M
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 14:28:47 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id a4de5e21-6dc2-11ee-9b0e-b553b5be7939;
 Wed, 18 Oct 2023 16:28:45 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id 184074EE0739;
 Wed, 18 Oct 2023 16:28: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: a4de5e21-6dc2-11ee-9b0e-b553b5be7939
MIME-Version: 1.0
Date: Wed, 18 Oct 2023 16:28:45 +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.cooper3@citrix.com, roger.pau@citrix.com, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
Subject: Re: [XEN PATCH v2 2/7] x86: add deviations for variables only used in
 asm code
In-Reply-To: <afbb7307-50e0-047a-807a-1bcf0139f5d3@suse.com>
References: <cover.1696833629.git.nicola.vetrini@bugseng.com>
 <5131b75996d0b91d4a98466f11dd927be910d7e5.1696833629.git.nicola.vetrini@bugseng.com>
 <afbb7307-50e0-047a-807a-1bcf0139f5d3@suse.com>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <b652c60c8b5179e31b9032c5e65e9498@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 16/10/2023 16:58, Jan Beulich wrote:
> On 09.10.2023 08:54, Nicola Vetrini wrote:
>> These variables are only used by asm code, and therefore
>> the lack of a declaration is justified by the corresponding
>> deviation comment.
> 
> Hmm, you say "declaration" here, but according to my understanding ...
> 
>> --- a/xen/arch/x86/include/asm/asm_defns.h
>> +++ b/xen/arch/x86/include/asm/asm_defns.h
>> @@ -31,6 +31,7 @@ asm ( "\t.equ CONFIG_INDIRECT_THUNK, "
>>   * gets set up by the containing function.
>>   */
>>  #ifdef CONFIG_FRAME_POINTER
>> +/* SAF-1-safe */
>>  register unsigned long current_stack_pointer asm("rsp");
> 
> ... this is a declaration, not a definition.
> 

It has automatic storage duration and it's not defined afterwards

>> --- 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;
> 
> Imo such comments want folding; question is whether the tooling can
> cope.
> 

As far as I know, it can't fold /* comment SAF-x-safe */, but /* 
SAF-x-safe comment */,
though the latter should be a justification, which this comment is not

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


From xen-devel-bounces@lists.xenproject.org Wed Oct 18 14:38:07 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 14:38:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618654.962571 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qt7gF-0008JD-4Y; Wed, 18 Oct 2023 14:37:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618654.962571; Wed, 18 Oct 2023 14:37: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 1qt7gF-0008J6-1a; Wed, 18 Oct 2023 14:37:51 +0000
Received: by outflank-mailman (input) for mailman id 618654;
 Wed, 18 Oct 2023 14:37: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=Y0YN=GA=antioche.eu.org=bouyer@srs-se1.protection.inumbo.net>)
 id 1qt7gD-0008J0-On
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 14:37:49 +0000
Received: from isis.lip6.fr (isis.lip6.fr [2001:660:3302:283c::2])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id e72f2681-6dc3-11ee-9b0e-b553b5be7939;
 Wed, 18 Oct 2023 16:37:46 +0200 (CEST)
Received: from asim.lip6.fr (asim.lip6.fr [132.227.86.2])
 by isis.lip6.fr (8.16.1/8.15.2) with ESMTPS id 39IEba14011073
 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NO);
 Wed, 18 Oct 2023 16:37:36 +0200 (CEST)
Received: from armandeche.soc.lip6.fr (armandeche [132.227.63.133])
 by asim.lip6.fr (8.15.2/8.15.2) with ESMTP id 39IEbaNQ021605;
 Wed, 18 Oct 2023 16:37:36 +0200 (MEST)
Received: by armandeche.soc.lip6.fr (Postfix, from userid 20331)
 id CDA6C77C7; Wed, 18 Oct 2023 16:37:35 +0200 (MEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: e72f2681-6dc3-11ee-9b0e-b553b5be7939
Date: Wed, 18 Oct 2023 16:37:35 +0200
From: Manuel Bouyer <bouyer@antioche.eu.org>
To: Michal Orzel <michal.orzel@amd.com>
Cc: Jan Beulich <jbeulich@suse.com>, xen-devel@lists.xenproject.org,
        Henry Wang <Henry.Wang@arm.com>,
        Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: Xen 4.18 pvshim console issue (with patch)
Message-ID: <ZS_tr9SfDEStufs-@mail.soc.lip6.fr>
References: <ZS-1wVlZjdAJyUz6@mail.soc.lip6.fr>
 <9f5c0af3-44b6-e98a-2032-14185af265c9@suse.com>
 <ea9a1990-ecf4-43fb-af5b-b3aac0c71b2b@amd.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <ea9a1990-ecf4-43fb-af5b-b3aac0c71b2b@amd.com>
X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.6.4 (isis.lip6.fr [132.227.60.2]); Wed, 18 Oct 2023 16:37:37 +0200 (CEST)
X-Scanned-By: MIMEDefang 3.3 on 132.227.60.2

On Wed, Oct 18, 2023 at 04:18:26PM +0200, Michal Orzel wrote:
> Hi,
> 
> On 18/10/2023 15:29, Jan Beulich wrote:
> > 
> > 
> > On 18.10.2023 12:38, Manuel Bouyer wrote:
> >> Hello,
> >> With Xen 4.18, a PV domain running under pvshim doesn't get console input.
> >> This is because the domain id in pvshim isn't 0 (and on x86 max_init_domid is
> >> hardwired to 0), so console_input_domain() will never select that domain
> >> as input.
> >>
> >> The attached patch fixes it by translating 0 to the real domain id for
> >> pvshim, but there may be a better way to do this.
> > 
> > My primary observation with the patch is that it presumably won't build for
> > other than x86. There are also indentation and other style issues, no S-o-b,
> > and no description. But I wonder whether a different approach doesn't want
> > taking: Wouldn't it help if max_init_domid was 1 in the shim case, with no
> > need for any other changes?
> > 
> > Also Cc-ing Michal as the author of the (possibly) offending patch.
> What if we set max_init_domid in pvshim case to the value returned by get_initial_domain_id()
> in create_dom0()? The drawback is that we would waste some time in a loop if the value is large.

I considered this too, but max_init_domid is a constant on x86; it looked
like a more intrusive change.

-- 
Manuel Bouyer <bouyer@antioche.eu.org>
     NetBSD: 26 ans d'experience feront toujours la difference
--


From xen-devel-bounces@lists.xenproject.org Wed Oct 18 14:51:51 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 14:51:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618658.962582 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qt7tg-0002xU-Ac; Wed, 18 Oct 2023 14:51:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618658.962582; Wed, 18 Oct 2023 14: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 1qt7tg-0002xN-6y; Wed, 18 Oct 2023 14:51:44 +0000
Received: by outflank-mailman (input) for mailman id 618658;
 Wed, 18 Oct 2023 14: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=EezS=GA=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qt7tf-0002xH-CK
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 14:51:43 +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 d93eb547-6dc5-11ee-98d4-6d05b1d4d9a1;
 Wed, 18 Oct 2023 16:51:41 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DB9PR04MB9939.eurprd04.prod.outlook.com (2603:10a6:10:4c4::15)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.35; Wed, 18 Oct
 2023 14:51:39 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%7]) with mapi id 15.20.6907.022; Wed, 18 Oct 2023
 14:51: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: d93eb547-6dc5-11ee-98d4-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=eBd1fc0FssCwX7PcbPJZv2P4/pjniy0W2CSlxRVMnzBcm0rlRlrvu/j0pKFf3gc9lAQ/ZAZrkEhUjewHhFC1PYo7erNB0Ewh6IDwvMcfnoaPavMOjPFDPcS5YXSLcUuSVuZFIQZbS1U6Mat60QqnYpMVEaCm8ghIKxE+CFpBTpF8XI0jfzQmYgepXiWvcXti9sVKVeS00ITGXAd2HtqeaD8GqBkv83Q/fnAo4a++875FTnm46CT3N6nKjFtPnX4RN5HtxAV9xuy/NQK5TY18dsAH0RGcsbfZx5mdhWpLw7IhfTip/lbExK72SJCgzMK5QufG6WoTJ+3lQ9CNJkA/AA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=OZWQHmUuKVGWsmJQ55ZCidsb/fl8ZxeoBBYHr72tnOg=;
 b=igVStCFxppyP7g1qVAja2crcb05duqItKNrS3wMrVdznqApEUkfCHB1aMJO4qYHMg5fUgaczTnkQNhlPUDMXvt0s2HfyDqAIm4tLrIp/ZmVeQI0H0AIsnhmiWT9gbUjulm5W8s1Mk9YbGXC1nUynZEGmckeDRLrcxD0t+SGhH+KK7h/Ro7SUK4BEM0qReikQA+xMa4QxsqsZn/lgUQlnSe0ZtpO7VuRzUA2MNiTqFR0hmpn/tG4gNAllUhIGgEeYdRhSCTZX0+jvfoVDn8+9VR2/cYC1Y9UoU1D2W7uWNArsHeqmi7iC3zAcNEYbDKFQILX/uoQdlzOp0t2cf42gcQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=OZWQHmUuKVGWsmJQ55ZCidsb/fl8ZxeoBBYHr72tnOg=;
 b=MW+H8n3zJkiHnayjwJI14xxes7+xC69sgBgJwdMUSrQao7CBtmDI6nFapSqwydFFWFa5nxiBXtt3tHis9MNg2C3e0lO2wTpufNUPTplxhFxMV1ojeqaAsNcrGFntMM5WAIGCDk1shjUnoZN7E9QPcPA6dq0RJYGcsMtoefxP/VhyCgz/5e1yRKqa7QLHT8hSBAQufSnhW15NtS/SidmIW7zuCYK7B5XyVJIPm3065+O04kGAb5HF5K/OPU6uF+ynLiIrZxoAzH5V1jcrv5iuGa7tj0170DnAtVuGsXukYtUcTYpdO5+wUl0gVK5FAmbSML53Ztt2GqNH51DZf6vcbw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <04edf9f2-2175-375a-e8a3-05989ab155ad@suse.com>
Date: Wed, 18 Oct 2023 16:51:36 +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 pvshim console issue (with patch)
Content-Language: en-US
To: Michal Orzel <michal.orzel@amd.com>
Cc: xen-devel@lists.xenproject.org, Henry Wang <Henry.Wang@arm.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 Manuel Bouyer <bouyer@antioche.eu.org>
References: <ZS-1wVlZjdAJyUz6@mail.soc.lip6.fr>
 <9f5c0af3-44b6-e98a-2032-14185af265c9@suse.com>
 <ea9a1990-ecf4-43fb-af5b-b3aac0c71b2b@amd.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <ea9a1990-ecf4-43fb-af5b-b3aac0c71b2b@amd.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0401.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:cf::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_|DB9PR04MB9939:EE_
X-MS-Office365-Filtering-Correlation-Id: e5322e4f-fd3c-44cf-66b8-08dbcfe9bbc6
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	1eGg653sniIhm/QQzoVmUmlbdYvd/887Bacnd1Fo6JsvrCRmzrwghco+avlxPaYtED82tNO7bI+xbMK5wgkaeol2DMdzCx0A4Iod68679IWxFp7uZGEtzhQqJaBg8X5HJt27XFn0wfNtpiYS0l8zoFEKL+xZzRbiCsO5ZDn2c6sYTSSE+yjVLe1FLz/eJR1Sgg6i7cfWw7KgCOxIKn5HaM+m4ryg9Mjd5opmVTPES/sQPs9dfZ3fgUnSPqQZU2UuV6yDsgs5E/oun5DZ77GSZwPeg9kSAl5yJkFSf0WqZlW1SSiHEdTGSS1620H8J/lNh6vfYGJ9PEbQSpqQhFZqcEzIykbYJFGi1tEaiZoIoCoSw5TJ5sqRMi8OoEwbs+/jJSt3hD3wFvgmSxMmKSTZUO62K08IRZjVkRllt6fHgBgHNBGFTdyZsvIALEXGGP7D2omwcFPgrfqRIVNXuukxD2ZRiRmcblDkxJn/Qk6wrz2QyzWRsXSbE7OBt6taiV8g3JK09oU3VvdLNSc2PK/bpJsDDbNr0Y+cnIEhHNUOxGMSAvFHf3uRmCPu1EeJ+FYCbXOATuKbOljbgb2+wHn+KbAdnALFdR/cSZxnNYNbaEnyU1uHjKZtMpMJ8jC/uxCulTwDrtZw25HYpUHTr6/iwQ==
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)(39860400002)(136003)(346002)(230922051799003)(451199024)(186009)(64100799003)(1800799009)(26005)(2616005)(8936002)(8676002)(4326008)(5660300002)(38100700002)(31686004)(478600001)(2906002)(6486002)(41300700001)(86362001)(31696002)(6512007)(316002)(6666004)(6506007)(66946007)(53546011)(66476007)(54906003)(36756003)(66556008)(6916009)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?SkdsV0YvYmhvYlpONVZuWkV3cjZDSGZLNGdnL2xuOHY1Nm5jM3dpQ0t6enVF?=
 =?utf-8?B?bVFqYThYenU4aDYzdFJWSGc5alJpSGRoNmZYaHM4Z2FIcFFFSllLQ3daeFBu?=
 =?utf-8?B?K1hCa0t3YXIxc215YkFKOG1IMjJSVW1adjN2VEFyQmJaNXFJUG9hK1p5VUVa?=
 =?utf-8?B?SGpVQmJ0V0JMWnVoYngrQTRWMk5aQUlsK051Sld3bnZCUU15UDNvVzd4ZDNx?=
 =?utf-8?B?cDBOMU1oR2UzOXp2VUVqV2tRTm9FRk9mT0J1S2VQWmFhQUJDSkhEdnJlcWhr?=
 =?utf-8?B?VTNmREdFTy9zTlkvMXR5WUNkOEVvRllLdjErbzVuRlNIV3M2UlhZVFA2Y1ZG?=
 =?utf-8?B?cUN0R2dtUWlZdEVOTU8rMVlobkNZMkUxeHc5UUIwSVA2SXdOM05ubDk5eHpv?=
 =?utf-8?B?VWdjVFVzMzBSRnBZMEhvSnZkNGV3ZWMwbm0xaytqc1pqdmNlZE52T1ZNRFBD?=
 =?utf-8?B?b2puNktBRkZleDJsQ0VxNGJub0twejZzZEw1RjFiV1hmTDdUQ05QUTNvOFcy?=
 =?utf-8?B?d1VuVTJNWWxJZFZMZmE0Z3NzZkRvM2dTZnI0emRHM0NpT3pRM3lKNjVDMEFY?=
 =?utf-8?B?Z1hydktFcWNtLzlaSW9wNVpWUEFkUW8ydU4rQlpUdWpzUnE5d0xLREJYLzc2?=
 =?utf-8?B?aERnTXlWbnhpcTZqZFdNaWtsVHdHSExEUWFGN0JzeGdzUkNQTmJPTCtvbzBC?=
 =?utf-8?B?Sk1PM0dSR2EvQWJDMVZiZG5XVDBuQUx6TjI5VHo4cWtkUEFha0ExbVBpTzVL?=
 =?utf-8?B?cjZpU3ZCUkNtQ2VtNVpiOXlFaFF3MzVQUW9FbzdRSVNWZVlLNTF6Zlp4M0pG?=
 =?utf-8?B?V3FRYW9vRjZYSmp2S1Z2a3NSakxpR1lkZzFZVTlUN1F1UWYycHRHVEVqUGFL?=
 =?utf-8?B?VG1GemJEbnY5ZFdYeW1Zc3VjY0txYjJubTQxcWM1cytEZzdrMEVMNVRwQ0ht?=
 =?utf-8?B?cUx1Q0lSdEoxMWFYcVJMVzdEYTdDWkYzNjBTdUR3TlBFZW1jbWxYMVNYbFVT?=
 =?utf-8?B?Tno5WGZuSThHQU9ORVZlZVVNSHlJOEh0K3o2aG12RXUwWklPWURNMkNiZ084?=
 =?utf-8?B?R1JwbHRyUFFITGJFS0Y1bWZJelNuTmhQODd1aFNTdyt4Q0xBcUF4ZUltSXA4?=
 =?utf-8?B?MlBIaUYrYVZLNDBBNktmanFVenYvbS9JMk94dkRHcCtwQUNXT3RlQ1N6Umhm?=
 =?utf-8?B?MnNUVmtGM21wd2RYMnkvTnU4NHkwR1IrMFVHL1lTQ0NPblUyRFlOeCt5YkdK?=
 =?utf-8?B?VlFjTGFtcWRRc1dIMHhidVhCdlI4QnB2ZHV5cVAzUUFQdEF4VGh3cXNHVkJ5?=
 =?utf-8?B?eTBRY3hGVkhiVERIWHVJTTFpUnAxNDlTSUdZUmN0cm5raENNMitqWFd4THlS?=
 =?utf-8?B?MFV2SE1HcTJLRjJIdWpDSkVHcTU1bkhPK1RpR2ttVmhWZk00eUswQ3ptQnVm?=
 =?utf-8?B?OWIvRTlPSDNaK2NWMTlMTDNXUGF3Wk14VGpUQy9YL0NZUXlwQUUrTUNIUmVl?=
 =?utf-8?B?Tkd1Y01PSFU0bzlERitBTEpZV2JHV1A2WENPQkRPL0ZpeGgrUFVwRzNHZ3N6?=
 =?utf-8?B?WGMrMitySUw0aWpTbW50SzJSczV3d0YrQndid1ZhbWNjaHZvOWpXaElaT2Rx?=
 =?utf-8?B?OUxhRXFSZEZRbloxY1JzRERUaHVic1ovRUtQZkRoaThDQWFXdzJYcTY5c0Y2?=
 =?utf-8?B?YzVrWVRreHNFdGtBNWM4UkhmNG45SVZtOVQwaG9iWlZVWmVKY0Q5NnFVcVlX?=
 =?utf-8?B?V1BxTWpyUGxaWmVUMUxYMUhCK2t2VHVsTzFxZExhaCtFNUd5WXdDbjRsdktQ?=
 =?utf-8?B?MmI5QUZUSjNhYkx2bnhJT21LQnZNamcxM1JEZjNVN256NmU0UE02WS9EMXN1?=
 =?utf-8?B?ZmxlblVGU0pwejlJWFNKcEl5VmVLMkVpRVlVYnJyeVM4ak40azduTDZQM0lC?=
 =?utf-8?B?OUhQZGxOZk1QZHhqcUE5d3JHUE1xemVuakxHc3dqcHV0NkVlS0ZDM2xNYmR2?=
 =?utf-8?B?dkdGdGo5L0ZlK2VyZUJ5c0NFQlNhclJ4aFpRYzF6TWV5UlcrZXhML3ZBaExE?=
 =?utf-8?B?WXpKQkJYdnA4MFhsajVjR1lSN2VsbTlwRmdTc1EvZ0ttcWlVcjY0a3c2d3ll?=
 =?utf-8?Q?qTRpW8rH44s4JoR7+aZ82OajP?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: e5322e4f-fd3c-44cf-66b8-08dbcfe9bbc6
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Oct 2023 14:51:38.8935
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 45FJ4thkgsYJzToPVGg3PP33Kb1g6XC/CeOspksrVGmtafDuMEJGpRmszHFvZG4yY0XarFsHe4n9h7Wm8/HiFA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR04MB9939

On 18.10.2023 16:18, Michal Orzel wrote:
> On 18/10/2023 15:29, Jan Beulich wrote:
>> On 18.10.2023 12:38, Manuel Bouyer wrote:
>>> Hello,
>>> With Xen 4.18, a PV domain running under pvshim doesn't get console input.
>>> This is because the domain id in pvshim isn't 0 (and on x86 max_init_domid is
>>> hardwired to 0), so console_input_domain() will never select that domain
>>> as input.
>>>
>>> The attached patch fixes it by translating 0 to the real domain id for
>>> pvshim, but there may be a better way to do this.
>>
>> My primary observation with the patch is that it presumably won't build for
>> other than x86. There are also indentation and other style issues, no S-o-b,
>> and no description. But I wonder whether a different approach doesn't want
>> taking: Wouldn't it help if max_init_domid was 1 in the shim case, with no
>> need for any other changes?
>>
>> Also Cc-ing Michal as the author of the (possibly) offending patch.
> What if we set max_init_domid in pvshim case to the value returned by get_initial_domain_id()
> in create_dom0()? The drawback is that we would waste some time in a loop if the value is large.

I'd like to avoid specifically that.

Jan



From xen-devel-bounces@lists.xenproject.org Wed Oct 18 14:57:11 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 14:57:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618662.962591 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qt7yr-0004Mk-1J; Wed, 18 Oct 2023 14:57:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618662.962591; Wed, 18 Oct 2023 14:57: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 1qt7yq-0004Md-V5; Wed, 18 Oct 2023 14:57:04 +0000
Received: by outflank-mailman (input) for mailman id 618662;
 Wed, 18 Oct 2023 14:57: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=EezS=GA=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qt7yp-0004MX-CD
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 14:57:03 +0000
Received: from EUR01-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur01on2053.outbound.protection.outlook.com [40.107.13.53])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 978dd7b3-6dc6-11ee-9b0e-b553b5be7939;
 Wed, 18 Oct 2023 16:57:01 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DBBPR04MB7818.eurprd04.prod.outlook.com (2603:10a6:10:1f2::23)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.22; Wed, 18 Oct
 2023 14:56:28 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%7]) with mapi id 15.20.6907.022; Wed, 18 Oct 2023
 14:56: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: 978dd7b3-6dc6-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Gxwgm2Fso3dUsMlbK1z50APGPX8GSrTl5OqqG9R51yOlsQdyN4BbZeWC4aAnEszf2hLEBfLKcgyH2WOLufRpw+8/j1VJOz8nx577wEnV+WmYe7ipwKz3A+3qjNqUICXPz4fAiXubL6dr8aVg1q3VlXf5W+BAtAgAarrTNNmlr8ivZQKT/J7BCLoI0+w7sJToGnm+4I4Ro8CSG3hZOmYBkq0zJIEQgH0n3lIMi2F8UQ2RbK2u3RCGALon/8JpRaCQ96G9CozQ26zEN+gsoqYksCDOZtWFRnAlvb7IB7dv1aR4pjDMKyTPNPah/LGNrqJ+//gJqZ6uEOYp579dODCT8w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=zZ1eItpsS2xyc9gqC0IhP4f2MW+FAhdSuboapcw+6lA=;
 b=Y6fuMfScywe0z9m0WrZZJYqdwWB3W2ft0OxOQuq8kWes6WWUYZXOKzpHBGuUwkFgH4RrTN7r3y1EdwmngOeZR1xI6Pyfhoir+EqpdHDqKFP0hBlBGxbV0RNKW+C8s+xnIexfEUi87hdsn04FOKxYGhRhoWPBNym+O5sGjBpgd6HxjpmrNzvkCnGeAP7FLX3Oj7Tw4KMQiaRu60Pfl4NSw+ALh4hjGDaJ46UOipmBGcEHKW/DexXS0++9i8jOKGxqQ7X/edH+Ox+bvYzFBTAxCxYhVPL+H1D6+qFyDEb/fUQZWy9TXae1COuM1YixjcwBLyOU9x7P5AOwjJnrFVqUUQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=zZ1eItpsS2xyc9gqC0IhP4f2MW+FAhdSuboapcw+6lA=;
 b=3/ogQ0+UKuVn7Q3/lAzITWSk0mjeHDU3fFkdgdN+XOcH9S+NhNyyJtAO/u8j7i+xLE5hJWriVhBa4IVwghWfrcC3q1qsG7BPpIhqNq+JVCD7ahebqoSvwlpcI9KhDaGTExK6IchZirTaMo7NYTFnmXZw6GOXTELhEyzOT3BZhSlFirg2pDpkp1WrO0Q8FNCvhnpYsGnXX0qU/O35P/BjznRAZJyClCOeXIhfJgPD80xm6TPtuC8Ty9uJV8j7c78r3fLHZsbkd4iX+cGwmTI+BeGqz6z3tPbvCmV6F1qflZY2/4GCQHIAHCfzMaIcXUz8OZiMETab6w63iQUVLX2SlA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <4b96ba28-f2c9-68b5-7c7f-f4ca946022a4@suse.com>
Date: Wed, 18 Oct 2023 16:56:26 +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 2/7] x86: add deviations for variables only used in
 asm code
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.cooper3@citrix.com, roger.pau@citrix.com, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <cover.1696833629.git.nicola.vetrini@bugseng.com>
 <5131b75996d0b91d4a98466f11dd927be910d7e5.1696833629.git.nicola.vetrini@bugseng.com>
 <afbb7307-50e0-047a-807a-1bcf0139f5d3@suse.com>
 <b652c60c8b5179e31b9032c5e65e9498@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <b652c60c8b5179e31b9032c5e65e9498@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0188.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:ca::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_|DBBPR04MB7818:EE_
X-MS-Office365-Filtering-Correlation-Id: 3718a50d-7cfc-483c-86b2-08dbcfea68a3
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	MMDOp/cUKjPDW8VUlPZVz/KnI4elJ/oKkvHQpOLBb7R9eh3q7Fmuzruurimgoan+DRDAiOXr1655qYCFweqOrLbuolRd7P0ZfV88ld6csWMIm0vw2yEfRoWCEm7vCBVte/To9Bvp7Qsgvx74FqvolRIqSbTlm5nx39T4EChbU/FubqT46+cvRa/3tq304ObTDdMjNHdQtv6YbodUHz9fnSRaUybgai502HmOMZyYYBonwHox3RGJth8RpXTCqxx1z+tU6cZPXV9b2MZkby/EWvrFFLxWfDEp2Sr8DZ/0MAzyiGaeqPpudAblGgzympderzLxn1V/dti4IfEnb0RiAihmrzIc/xGSkyIAX3/QpQinx6ZZebmtCJcbrEQ3F+v8BQf0ILNng1hnjbk9EuJv2JqVou2E1ncc3TWmsFcDGOBFGfLM7X6troIxU13HdHDi/Oopr3Q+1oJn/8Sxq3Q+IS+QeBqu8Gr7Rm9GV+E80zmUa4ng4/yOKMtZhEMZIOtjUj8XpmIIB6U1ZY6ckFNaDp4fZQoDqPdAe00MYasytJk2h/mMspZlsF1FTELkYfx4Vm2Kql56DyRDG9teubogPESPQVbhGBQJq0IMU8K+Pkl0lYHhC362NDJshYznnWxXoRXc/vHos++ROnKr6HFdcQ==
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)(39860400002)(366004)(230922051799003)(186009)(64100799003)(1800799009)(451199024)(7416002)(2906002)(4744005)(31696002)(86362001)(4326008)(8676002)(66556008)(316002)(6916009)(66476007)(8936002)(66946007)(41300700001)(5660300002)(36756003)(2616005)(26005)(6506007)(53546011)(6512007)(38100700002)(6486002)(31686004)(478600001)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?amI0M29OZWlLRmlKUi9BQzQ1QlhqcE1IZWpzYitOd0Z2QXE3UmJSWlBrUGZJ?=
 =?utf-8?B?RlptTE9OQlJaYlpialFjVmVSTG5nZDV2M3Q0bUh4Q3JVemtiNDQ3R2Z2cGRn?=
 =?utf-8?B?dlBBUGVjQ1pzSUZaZ1c0S1FaaEQyRFQzdTJZVGFhdjExR09Ta3A3M05lb25T?=
 =?utf-8?B?M2QzeURUb3ZLRElLRW1LNGJhTExpcFBFWkJLNXpubnVFS2JNMHBRWll2YTA3?=
 =?utf-8?B?UkcwVlZaQnlhOGFCRzJHSVpSVUF5ZnAzMlM4TkRSbHhpQmpCcTlucGJmd2Qz?=
 =?utf-8?B?RHF6VzZuQ0s1R0VPemVPR2hUZU9WL1AzbCsrOFNBWmw3cThuVVBtdnl2T0hp?=
 =?utf-8?B?NVhYTDA4dHBhYTVnZDU3ZUIyanRHZytsc0FBd1JHT3ZJN1RRZUN5QmxUbWtB?=
 =?utf-8?B?cGhpdGdxamQyVlVxeW1ia3ZmY1A5ZXJLM1oxalhnL1FqcFRYemJzZ1ByWmlY?=
 =?utf-8?B?R3cvdUVVNkI4QjNFamptcU9ZM25zNElncGtoY3RCK0xDY3ZYVHJPUDZDckYr?=
 =?utf-8?B?aExBVGJPTHRkZlBHdUpDZ2NRSHlXSkx0VXRldmY0cldVemFlSEhjeUVjdVQ4?=
 =?utf-8?B?T3htS08yb1grL3NMM1d5ZWQvM2hDLzk4QUJGRC85V3VDWkxwUkJOSktCVzd3?=
 =?utf-8?B?UnZBSmJWaEkzYjlTZG1rZ01QSDRvcGx4RmhXUGh1TWFwaVl6V0VreE5mNHlk?=
 =?utf-8?B?N2dwVStuMmNXYXB3Sm1nUDNXN0trYzduYlMxYmR3TjRUbXU1K1Z4c3ZZQ2Jj?=
 =?utf-8?B?UlpyWFM1VFhWMEVYeTM5ZFVuSDVBMS90N1hEbWJsV0pWTnRTT1MxMWJGN3J4?=
 =?utf-8?B?MDBqV3BmMzFHcFlBcjd0UDZPdGw2aW1NUGVKcWZZYlJ3N1R5VitISjVhKzJh?=
 =?utf-8?B?czh2Ni9RZUdHbHE5VzhhWHpHbDFEMTVlZStuNGk5bWRYZEM2SHNycWRqdDB5?=
 =?utf-8?B?U3VGcDZjSnRrV29Qc1VvUjhuT1ozY2RpSk9xZXlubUdaMTVYQjRyWUtsZmZh?=
 =?utf-8?B?aUJpZjRKSGxwN0RrbVYweUhVWEh6Y2M2d0FDbzJMQTJVZU5UYzVoUkJMZzJL?=
 =?utf-8?B?cERvS0k3dnVBVTR1MGtxQzFRMzVYOVNnaFM4Mzhuem4xUEw1eGYrN0ZrdTEr?=
 =?utf-8?B?K3h6cDA1SytzbzZ1V1JJa2R0d0lXSktoaXo1YU4ydCtaQlZPMVVjSGhNcE5O?=
 =?utf-8?B?Vk4weWRjTzhndmo3bWR1emQ2WEtycVpJMk1ZdzRYQ0dKelRqNmJjM1pVUEZl?=
 =?utf-8?B?aG9XeXVUT2JUN2xpUVlSZFZlcm1UcG03TGVEVGZheityM1pZV2kzbmY5V2I1?=
 =?utf-8?B?SHJlOVJ2K2pTQ3J5OTM4dktBQjJlQW9nN1RXbEV5VFh0WjNxckRPcnlqQ1VO?=
 =?utf-8?B?OHpIVm9iWlVnbFMyNlR6dnM2dm5vaWJ6bWJJOGVMOHczdEFpcmRFOUU0dlIw?=
 =?utf-8?B?VDV5MEt5aUova29MVjZoRXBnZE0rYlNlVGpFamtGVmZmM0FQTGFFdklWYmlM?=
 =?utf-8?B?ZlZSNWtTWnpzS1dvcEZLbWVkSkZ3dFRjb3VOMHhxOEtxUkdsM2dqNmhNbEEr?=
 =?utf-8?B?eWU1QjQ0ZWZURlhQNFZVNHlJSmg4N2dyTm9hMGxNSE1ZekhnQ0xEU3hYYVNz?=
 =?utf-8?B?ajRtQUkwMStNWEpveVJlcVQ3WUFRem80UU1JWDNuRHE3SHMxaVg3M2draDF0?=
 =?utf-8?B?N2NwUkExdUpzTzA0MDBCR0Z0a3NJNzkrYUNmSGlwOEJiU3JDSWJIQzJhU3VR?=
 =?utf-8?B?UjlxK2tqcWJ1c0p5Y1lNVFJYMTlHTWs2dTdYSjBLa1lHWGx4WEROZk1nUkxS?=
 =?utf-8?B?L0w5SUNvYU1IbjBoVjhwQ0pKZkx5Q0VISkxrY1hrWXBWNlRpWms4aFJHVzly?=
 =?utf-8?B?a091R2Y4LytrUmFxVWtxVVN1MGJpalZYMk95R0wxamdvdkRRc3YrRTFsTFBs?=
 =?utf-8?B?VWY4bGczS05uYXFjKzFRWGt0Wlp0N0NHQTBqWGhnalRYTGZNUk01dWF3QlJH?=
 =?utf-8?B?LzNKd1V0L1ZRaDdMSkZqMlNGNjMxOUNnSm1qazdLTVhEYThtTkJ1d1g1N0U2?=
 =?utf-8?B?NVhEblF6YThJR0hkdFd1L2ZLcFFNWEpFVEdvVU1US3ZyT1RzRXRreUNZdXVS?=
 =?utf-8?Q?eXXpnMoLibY7tB1KGbJVb/tJ8?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 3718a50d-7cfc-483c-86b2-08dbcfea68a3
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Oct 2023 14:56:28.8988
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: r3KHwlE3rFKopEV+1czRHkX+2dRf40V5NRSRVuY4/Wip2gPfRGCcbJC7jipDr+dq1NQ5OphHo2dk6RnPMhmWWA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBBPR04MB7818

On 18.10.2023 16:28, Nicola Vetrini wrote:
> On 16/10/2023 16:58, Jan Beulich wrote:
>> On 09.10.2023 08:54, Nicola Vetrini wrote:
>>> These variables are only used by asm code, and therefore
>>> the lack of a declaration is justified by the corresponding
>>> deviation comment.
>>
>> Hmm, you say "declaration" here, but according to my understanding ...
>>
>>> --- a/xen/arch/x86/include/asm/asm_defns.h
>>> +++ b/xen/arch/x86/include/asm/asm_defns.h
>>> @@ -31,6 +31,7 @@ asm ( "\t.equ CONFIG_INDIRECT_THUNK, "
>>>   * gets set up by the containing function.
>>>   */
>>>  #ifdef CONFIG_FRAME_POINTER
>>> +/* SAF-1-safe */
>>>  register unsigned long current_stack_pointer asm("rsp");
>>
>> ... this is a declaration, not a definition.
>>
> 
> It has automatic storage duration and it's not defined afterwards

Mind me asking what makes you derive "automatic storage duration"?
I also don't see how "not defined afterwards" matters here. This is
a special construct, not covered by the C standard.

Jan


From xen-devel-bounces@lists.xenproject.org Wed Oct 18 14:58:33 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 14:58:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618664.962601 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qt80G-0004uJ-Cc; Wed, 18 Oct 2023 14:58:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618664.962601; Wed, 18 Oct 2023 14:58: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 1qt80G-0004uC-9p; Wed, 18 Oct 2023 14:58:32 +0000
Received: by outflank-mailman (input) for mailman id 618664;
 Wed, 18 Oct 2023 14:58: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=EezS=GA=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qt80F-0004u4-36
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 14:58:31 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 (mail-db8eur05on20610.outbound.protection.outlook.com
 [2a01:111:f400:7e1a::610])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id cc863a86-6dc6-11ee-98d4-6d05b1d4d9a1;
 Wed, 18 Oct 2023 16:58:30 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PAXPR04MB9218.eurprd04.prod.outlook.com (2603:10a6:102:221::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.36; Wed, 18 Oct
 2023 14:58:28 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%7]) with mapi id 15.20.6907.022; Wed, 18 Oct 2023
 14: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: cc863a86-6dc6-11ee-98d4-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=AdoUY/SnoMF98PVpgrX7XDY3gFOEg+1Ig8W+Qn97g8XGfgFpg1dvbdtzSBQuJH/ftycM9NuwCiK/VX7GktGTXYMswrLVrGkuCeeGlgNIPqzFa6PnnM2QAHEZ374TLv8M2rCxykNqgBhTwzL18yDnVVem/0Znjhyp9ztZQYMCDPQsfPfG2m7ZDlscOgFi3dKdtJsB58KSPlqxm8atJbuSU3v6mSO0V9lnAj883hVqrMp91yBKULCCs9L6Aqwb41rMS4ryfReCwyqWy4FQNrAB2B6U0yc5In1iGTKkXqP6p8wsxDkT6xf1eVGzdqblq4dJOOH3QEjPvtJGQLy5xS9d8Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=JtdLStHJ6wPskxUHsn22Jm6tejXGHXKWQEDe753mGTI=;
 b=Coa08xWIQjOwomobi8OdZtU52gWpjExT0azZlCX/jKrbK4cGY5nmt7ZcsW7uqOL0PreUVRhissLkK3sKJDtKhhwfmvoINH5vQgqPUZ4oCofwbMyFQNwGnlZGfOyup6B69MMAoILLT0Q0n4DpGfQHsEyg6Bwfsm/HbZvg/CXIUW0P1+0ll2RdTesaUZ9AnoIGNhSjoZiKsJWkIkPn8Zqu4XpvMCsFha+sTCgzr22rl/F0MmSbRdWNzzCZcDfL88tzjJqLJCqrFQMZGvw3k2pKoAi8hA7jfVvcZ/PUiR/6dGwci8EFm8PBSNCoBJxAptnCWjoSCWulfhss2QHPGzzd5Q==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=JtdLStHJ6wPskxUHsn22Jm6tejXGHXKWQEDe753mGTI=;
 b=STp7LLMB0QlOLgd18yQC2tUh5jlgK7RQOwwwQm3YJFvdObHkMM7oGVfJaBkSLCM8smPesEJ3C8S5THWUfVqSM6iFfminWHzXzlf/iXSgd44EjuI5YhW7MXoFZ4XOVg3Dc5CBAQ/6yYNUNLc+9W4AbO61rA13umPPWlily+/JFSuETv2/xyuR3kw4P+onj7606zrllxkHf9rto8nXIXpKQcXfYLwPdsLLWsqgMMokp6I4pP2gAb4eV7YyiiUQVYXSH5STx3Zi3oZZ5n9SIvlX1vnmsFUpGmw2GkrxlZWwBZnDN/Wh0EshT/qrh7Whu/rGqlUFPPAPTjoj+XopOfpuOw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <ed275abf-351f-5237-7e19-a3856f6d4272@suse.com>
Date: Wed, 18 Oct 2023 16:58:25 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
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>,
 Henry Wang <Henry.Wang@arm.com>, Michal Orzel <michal.orzel@amd.com>,
 Manuel Bouyer <bouyer@antioche.eu.org>
From: Jan Beulich <jbeulich@suse.com>
Subject: [PATCH] console: make input work again for pv-shim
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0198.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:e5::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_|PAXPR04MB9218:EE_
X-MS-Office365-Filtering-Correlation-Id: 5987cc22-a158-4056-a621-08dbcfeaafb3
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	4S8cIsmSTs/wZhooeJWNgmqyL4bj9y4PC1cx781PTB2SZdiojEjssImRzB7TR8OQFJPaHUUqMXh/Jr1DkdeLadoDi2Mmt6Y3IMkjucANKXRy4CtZm0QmwaieOjDQzd94OUt53tvO0stKiHLGpsnKfXQhcoIbo9CwP2Ud9K1ye69uaBJCxULoQaxzGtb7Tt1b9Q5CVPcAoBeM5JWeqXt4eOQBbcK5Cb1hWm67ji2UZJByipPHfB540uKLYCpOpVXZzeogtw+aakzY4EE+zafxZr2DdXuXfSote1LmNEKfgwMxk9ZsaC8x2gIRnN9CA9LmVkVxbCK4fBUj2ydw3hYl5BrXYOu6Hhm2l4lKt4J5fIkhKUCjCWc+dSbeuACZm95T0OnGYQ/HmK06TmrvYuUjlBPvzp1PpRuwWAahEkbhyK1tQMfUZjnyp7bziqpV0OQrqtBJTYMBdSO/QCA8F0LHRuGNEF9rCKi8vOnBdeX8BpvY479sHYW/lW2tjaT0DkQCvr3r26fxdDvzhSzOC7Dh51+UQtKjqLyEQ6m5TseNReN1VZ5SjUZTVTQkQgq4EtL8vE+ddHOO0svtgRi+GQ8yKBSf3/luwHvHRxIcPGsAnM1eh8dRKQ69IvCc32rX1c4C1pczRJ5MzzrjihuyPeLJKQ==
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)(376002)(346002)(366004)(136003)(230922051799003)(451199024)(1800799009)(186009)(64100799003)(26005)(41300700001)(36756003)(83380400001)(2616005)(6512007)(86362001)(38100700002)(31686004)(2906002)(6506007)(31696002)(6666004)(6916009)(5660300002)(66476007)(316002)(66946007)(54906003)(66556008)(8936002)(6486002)(478600001)(8676002)(4326008)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?Q1JudUFIc3lxbnFQSmtJSm9UYm8rVWk4d2tPOS9VWTVvaFZKMXliRXNOekJM?=
 =?utf-8?B?bmhkNG9wWWxBbmswL1ZRQzJqeVpGZ0JXdmlEdzd4ZEN6L1djUUllZFJwL0JP?=
 =?utf-8?B?dngxTWZKWDRndTlrblRKQldYMUNzelY4Z2RuVUVways2NUdXcjhvcmpqTDA1?=
 =?utf-8?B?MWNZL3JBSDIxQThIZEJUL3Q2RXV1REkvZ0NrK0Rja1FVRG55WGd0cUxUOFpW?=
 =?utf-8?B?WnVHVDE5NFlmNnVVaXluMTk3NFpFQ0hPU2V1WUlZaXFTd0N4ejhjS0JLSEdT?=
 =?utf-8?B?TWdFOFFHYkNUTm5YVFVSSDUydG16Tk5vVkZxNkM4bVRtUk1OYXFybTBNR2Ji?=
 =?utf-8?B?OXgyNHZaVVVzN3lpTmpibWMwLzVRcFBCODVOUS80Mm4vRVFGSUlzdDNMRU5k?=
 =?utf-8?B?VGRtay8wTHQyWXhjRW9ITmxLMGx4cmE5S3dqTit5ekFzRnN6aU5POWxDd0RO?=
 =?utf-8?B?UU5oZXIyTStlMURvaUhIbXVjeTlEUXNnTktpR1NZVDNRR2hDUUIvM2ZwQjBQ?=
 =?utf-8?B?UGtDM0hpa3BHTVZMNUhuODEvUTAza3RZakwxd3BDbFg5L3FMSGhaYWN2M3VQ?=
 =?utf-8?B?ZlBpSzJmNXNxOGNIeStmTWRyeDVXUlgxcGZGZCtGWSsvTTRJSmU4SEFFQ0Er?=
 =?utf-8?B?UU0xOUtyRzhLL290QVVjZmF2T292c3lITFVBa0dGbzZZc29DNitVV0s0WTdy?=
 =?utf-8?B?b2huQktNaVd3RE1PaWNONGd4cnpFWHFoT0F1YzZXcnpBWU5vOTdGbG1WV2tt?=
 =?utf-8?B?ZmE3ZHR2U0FIMHRCSDZJc3NCY0w5aVJOS2p1V3I3RGovNGphakMwcithaUdE?=
 =?utf-8?B?dnpnTHlHQ215NEtKemVzL0xCMGwzc1UzNzFBUWFNOTU1Sm5UenJYdjZTUEV5?=
 =?utf-8?B?QkNJUnVsektvOW5sYzU4dkNBN2VRQlFDOTB2eDBVNnA3MlcrQ0Uvbkhrb2V1?=
 =?utf-8?B?RDY0RmFzUEtOdGlRbXlQTDY1b1hWQTl5aWpZZHBiZ1ViT3RhWG44dTAvSHZD?=
 =?utf-8?B?UG9ISHhRZzVSYXNMMkpSR2NrWEJNUVVHUTMrenZGVGJSdnJWSitranh5T2pC?=
 =?utf-8?B?ZTVwd3d4K1pYSGsyVFBNbXlmNEhLMVluK3dTdXdXSm0vVXZlNDU2YU84Q2lV?=
 =?utf-8?B?cno5L3hGVUNjUlVlOG9MYkxPWFlEc3cxSnp6MGNJRVRCUHlDLzlnTHJwQWhw?=
 =?utf-8?B?Rzc4WER3OXVQTW92NmwrSWNvZ2Q1Qys2a1BPdm0vQy9jektBUUVTaTlIaXdm?=
 =?utf-8?B?QXFVd3lKeFp4Z3VmandBS3VOdm1LdkNJTjYxTVhlNVIydmoxUG1lYkpMd25Q?=
 =?utf-8?B?VHFHQkEySm0rclBjTlJodmNCNG16YTlxME83T2lZLzMvWW5hdDhUVDhlS0Vl?=
 =?utf-8?B?VmNhZmNJZXRHVXM0NklINHdKcVN2Um5kR2ZrUG9ZZDZYU29sdnJiaDJscnNR?=
 =?utf-8?B?eXpadG1BQ3F6Tm1McTJOOSswTUY1UngrYm9qSlkzYzRRUnhZbDA3QzNkQWNt?=
 =?utf-8?B?d1ZKZ0g0aUF1d0xoVU1SckpwTzVidXpmL0Y2Y3RwdGhPb0NiNDBlb2F4Vk5S?=
 =?utf-8?B?UThLaExzc0ppV0MyVUhvc1p1QU9wQ0ZzdkRBOHFjZ0hYU1BwcHExQUJUZk05?=
 =?utf-8?B?Yi90UjFHUi9lNmxldjQvSFZUYllPNHh2UDk5R3FBYWJiQkI4M3M2SHdUTHhn?=
 =?utf-8?B?R0Rkd3F0eEdONGloK3RnZGU0bUVtZVZoTGtLUmc4Q0VleU1USFpnQ3FPV0Zz?=
 =?utf-8?B?VzdTRUxtV2JKOTRlSm9ETmRBNDlsRCtEd2FNY1ZLS2ZSODB5RDh3Lzg4dTl4?=
 =?utf-8?B?Z2VVQTRsK3ROeDJRT3gwRGFKYzU3NDlWQ3ozM3ROOVRrVHlIMzhmWGdQTW1F?=
 =?utf-8?B?dnZ5ODBxOTFtOC9QNEU4cG9JZlJkaDExZWRPQW04TlN5SmpJN3VVQVcvOE13?=
 =?utf-8?B?S1M3OCtaRlJDVERQS1ovV3gwL05JRWxaVzhJcnNvenlVTUVONUZhSk4waHJG?=
 =?utf-8?B?OC9EbHNESmtKMDVOSE1SekswYk0wV3VsQUVmQlVzYUhFUEJ0RjIrL3VwQ1Y1?=
 =?utf-8?B?RG93dXpFWlJLTkRoN08vMGFJeHhEa1l0NkVMVlAwZ21KS05qM2owVTA0R0lw?=
 =?utf-8?Q?PEAr634tsJJd9BIA3xoNh03CM?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 5987cc22-a158-4056-a621-08dbcfeaafb3
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Oct 2023 14:58:28.1030
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: wuNRB/SqWWjpB9fzgZTDaOkH66EiDu2lAYYJ8ZofMsyxRajsTc2rAtH2KSwOWOpPFzBeO2QdXLit8JUs+LfsOg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB9218

From: Manuel Bouyer <bouyer@antioche.eu.org>

The use of rcu_lock_domain_by_id() right in switch_serial_input() makes
assumptions about domain IDs which don't hold when in shim mode: The
sole (initial) domain there has a non-zero ID. Obtain the real domain ID
in that case (generalized as get_initial_domain_id() returns zero when
not in shim mode).

Note that console_input_domain() isn't altered, for not being used when
in shim mode (or more generally on x86).

Fixes: c2581c58bec9 ("xen/console: skip switching serial input to non existing domains")
Signed-off-by: Manuel Bouyer <bouyer@antioche.eu.org>
Signed-off-by: Jan Beulich <jbeulich@suse.com>

--- a/xen/drivers/char/console.c
+++ b/xen/drivers/char/console.c
@@ -468,7 +468,7 @@ static void cf_check dump_console_ring_k
 #define switch_code (opt_conswitch[0]-'a'+1)
 /*
  * console_rx=0 => input to xen
- * console_rx=1 => input to dom0
+ * console_rx=1 => input to dom0 (or the sole shim domain)
  * console_rx=N => input to dom(N-1)
  */
 static unsigned int __read_mostly console_rx = 0;
@@ -493,6 +493,7 @@ static void switch_serial_input(void)
      */
     for ( ; ; )
     {
+        domid_t domid;
         struct domain *d;
 
         if ( next_rx++ >= max_console_rx )
@@ -502,12 +503,18 @@ static void switch_serial_input(void)
             break;
         }
 
-        d = rcu_lock_domain_by_id(next_rx - 1);
+#ifdef CONFIG_PV_SHIM
+        if ( next_rx == 1 )
+            domid = get_initial_domain_id();
+        else
+#endif
+            domid = next_rx - 1;
+        d = rcu_lock_domain_by_id(domid);
         if ( d )
         {
             rcu_unlock_domain(d);
             console_rx = next_rx;
-            printk("*** Serial input to DOM%u", next_rx - 1);
+            printk("*** Serial input to DOM%u", domid);
             break;
         }
     }


From xen-devel-bounces@lists.xenproject.org Wed Oct 18 15:03:44 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 15:03:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618668.962612 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qt85A-0006X7-W9; Wed, 18 Oct 2023 15:03:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618668.962612; Wed, 18 Oct 2023 15:03: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 1qt85A-0006X0-TI; Wed, 18 Oct 2023 15:03:36 +0000
Received: by outflank-mailman (input) for mailman id 618668;
 Wed, 18 Oct 2023 15:03:35 +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 1qt859-0006Wu-Qj
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 15:03:35 +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 1qt859-0000fd-2t; Wed, 18 Oct 2023 15:03:35 +0000
Received: from 54-240-197-234.amazon.com ([54.240.197.234]
 helo=[192.168.7.230]) by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qt858-0001oB-RZ; Wed, 18 Oct 2023 15:03: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=LbAdJf0MMKBtdjmajrqXqd40ALMr8XuEiDLtdaOwfVk=; b=qjWwpx/5Lg2IH+om0sPjlJaDfv
	TXc1HyctEBDPpmqtPukha4GL+sIyAtGTzBjQHCvvsYJWzyiHOSCQbXckg50sLu6O6PxNqLg1mJJfR
	GZAV0GqhC1K2Y1dG4VV1QTPMlxgjGZFfXMJ3Ze9XP4BcYivnpfwqv2PU5XAgaYPabsh0=;
Message-ID: <41d82896-5471-4eaa-8bdd-a192e28d5546@xen.org>
Date: Wed, 18 Oct 2023 16:03:32 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN PATCH 1/4] xen/arm: address violations of MISRA C:2012 Rule
 13.1
Content-Language: en-GB
To: Simone Ballarin <simone.ballarin@bugseng.com>,
 xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com, sstabellini@kernel.org,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
References: <cover.1697638210.git.simone.ballarin@bugseng.com>
 <31a926a09dfcef43d13a402fd3b235aeba48009d.1697638210.git.simone.ballarin@bugseng.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <31a926a09dfcef43d13a402fd3b235aeba48009d.1697638210.git.simone.ballarin@bugseng.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi,

On 18/10/2023 15:18, Simone Ballarin wrote:
> Rule 13.1: Initializer lists shall not contain persistent side effects
> 
> This patch moves expressions with side-effects into new variables before
> the initializer lists.

Looking at the code, I feel the commit message should be a bit more 
verbose because they are no apparent side-effects.

> 
> Function calls do not necessarily have side-effects, in these cases the
> GCC pure or const attributes are added when possible.

You are only adding pure in this patch.

> 
> No functional changes.
> 
> Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>
> 
> ---
> Function attributes pure and const do not need to be added as GCC
> attributes, they can be added using ECLAIR configurations.
> ---
>   xen/arch/arm/device.c              |  6 +++---
>   xen/arch/arm/guestcopy.c           | 12 ++++++++----
>   xen/arch/arm/include/asm/current.h |  2 +-
>   3 files changed, 12 insertions(+), 8 deletions(-)
> 
> diff --git a/xen/arch/arm/device.c b/xen/arch/arm/device.c
> index 1f631d3274..e9be078415 100644
> --- a/xen/arch/arm/device.c
> +++ b/xen/arch/arm/device.c
> @@ -319,6 +319,8 @@ int handle_device(struct domain *d, struct dt_device_node *dev, p2m_type_t p2mt,
>       int res;
>       paddr_t addr, size;
>       bool own_device = !dt_device_for_passthrough(dev);
> +    bool dev_is_hostbridge = is_pci_passthrough_enabled() &&
> +                             device_get_class(dev) == DEVICE_PCI_HOSTBRIDGE;

The commit message suggests that the code is moved because there are 
side-effects. But none of them should have any side-effects.

In fact, if I am not mistaken, both is_pci_passthrough_enabled() and 
device_get_class() could be marked as pure.

>       /*
>        * 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
> @@ -329,9 +331,7 @@ int handle_device(struct domain *d, struct dt_device_node *dev, p2m_type_t p2mt,
>       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)),
> +        .skip_mapping = !own_device || dev_is_hostbridge,
>           .iomem_ranges = iomem_ranges,
>           .irq_ranges = irq_ranges
>       };
> diff --git a/xen/arch/arm/guestcopy.c b/xen/arch/arm/guestcopy.c
> index 6716b03561..3ec6743bf6 100644
> --- a/xen/arch/arm/guestcopy.c
> +++ b/xen/arch/arm/guestcopy.c
> @@ -109,27 +109,31 @@ static unsigned long copy_guest(void *buf, uint64_t addr, unsigned int len,
>   
>   unsigned long raw_copy_to_guest(void *to, const void *from, unsigned int len)
>   {
> +    struct vcpu *current_vcpu = current;

It is not clear to me what is the perceived side effect here and the 
others below. Can you clarify?

>       return copy_guest((void *)from, (vaddr_t)to, len,
> -                      GVA_INFO(current), COPY_to_guest | COPY_linear);
> +                      GVA_INFO(current_vcpu), COPY_to_guest | COPY_linear);
>   }
>   
>   unsigned long raw_copy_to_guest_flush_dcache(void *to, const void *from,
>                                                unsigned int len)
>   {
> -    return copy_guest((void *)from, (vaddr_t)to, len, GVA_INFO(current),
> +    struct vcpu *current_vcpu = current;
> +    return copy_guest((void *)from, (vaddr_t)to, len, GVA_INFO(current_vcpu),
>                         COPY_to_guest | COPY_flush_dcache | COPY_linear);
>   }
>   
>   unsigned long raw_clear_guest(void *to, unsigned int len)
>   {
> -    return copy_guest(NULL, (vaddr_t)to, len, GVA_INFO(current),
> +    struct vcpu *current_vcpu = current;
> +    return copy_guest(NULL, (vaddr_t)to, len, GVA_INFO(current_vcpu),
>                         COPY_to_guest | COPY_linear);
>   }
>   
>   unsigned long raw_copy_from_guest(void *to, const void __user *from,
>                                     unsigned int len)
>   {
> -    return copy_guest(to, (vaddr_t)from, len, GVA_INFO(current),
> +    struct vcpu *current_vcpu = current;
> +    return copy_guest(to, (vaddr_t)from, len, GVA_INFO(current_vcpu),
>                         COPY_from_guest | COPY_linear);
>   }
>   
> diff --git a/xen/arch/arm/include/asm/current.h b/xen/arch/arm/include/asm/current.h
> index 6973eeb1d1..a66e28fefb 100644
> --- a/xen/arch/arm/include/asm/current.h
> +++ b/xen/arch/arm/include/asm/current.h
> @@ -28,7 +28,7 @@ struct cpu_info {
>       uint32_t flags;
>   };
>   
> -static inline struct cpu_info *get_cpu_info(void)
> +static inline __attribute_pure__ struct cpu_info *get_cpu_info(void)
>   {
>   #ifdef __clang__
>       unsigned long sp;

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Wed Oct 18 15:12:12 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 15:12:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618673.962622 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qt8DN-0000Ij-QR; Wed, 18 Oct 2023 15:12:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618673.962622; Wed, 18 Oct 2023 15: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 1qt8DN-0000Ib-Mt; Wed, 18 Oct 2023 15:12:05 +0000
Received: by outflank-mailman (input) for mailman id 618673;
 Wed, 18 Oct 2023 15:12: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=EezS=GA=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qt8DM-0000IV-ME
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 15:12:04 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 (mail-am6eur05on20619.outbound.protection.outlook.com
 [2a01:111:f400:7e1b::619])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id b0d303fe-6dc8-11ee-9b0e-b553b5be7939;
 Wed, 18 Oct 2023 17:12:02 +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.6907.23; Wed, 18 Oct
 2023 15:12:00 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%7]) with mapi id 15.20.6907.022; Wed, 18 Oct 2023
 15:12: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: b0d303fe-6dc8-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=dXS2V/f7SG/5uqqS01nNtZ7xJI5OpwQ8/XoBfzfDL0Jywndk1tdKPIzSKGJHB6nCJkNwnlwqQc3DVeTeI0+O1cEVOfNRwKHYAQ5GKdSkxCdSPd4KPxvyCjpiq6xH5mXU/JD+cGwgpV/8wKSQyu1XQwwe6bCWqHzw/smHUYTfpyXT0zd+9qXihvvgkqJTInv/22JQNSj3BSQgXL7/gibKaZVohSFkZlzegGQH7nX6mgLWXS6QJV0iHAyd3exnxrpWcQ2zeGCt9ORcEy4ev0wJMOXsjNMX/v9KGajjZijGIquKJldWum2dKEp/+1r/k69IEkg0J5GWmJg8NW/7TXMP2w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=iAajDSIlP3B5P8dCbd0NMHnP5H9T3O4uCEqiz7W3HTM=;
 b=fSOWxSdoeE/FZkM7Duw10CkFre+2pyXdQCvdoznlHFFjcIGSV7NQ8ycZWLYtAukGRH2KhuCVLi3m9kcFbjLFZRsstucntgkPNXpH3gRmLbrYz4cu+iy5L3Ub9i1eRaknUjzJtEPu7zHm/jTKWbAQrogBwo3vi0xeCTIgeWti0nWr3DlyEB0L6YeWw3jCZ6UULVNHEl2Lv/QRd4UeOu5YxTfWAwJkhjl84oL0+BMU2dyJfjo6Z3gnbxMGZC3wiAjDhT8DearUEdF6QEVeDGu8AINskFgYLP3tii4ljKdV5JvP9eamzoNIm6ei6snSjUx9XTRDM+PDM33ep5DTFdbSFQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=iAajDSIlP3B5P8dCbd0NMHnP5H9T3O4uCEqiz7W3HTM=;
 b=zUdHDUFvwQtB0ogXVxsSZGyzwd8zyd8rKT9VhcCFIccKeXSv2lMuNqcIyxHnfmvkd9/Eb/g2WvmTsvYVVp4IV/ASuaBB/v3T431dUrsCgfx4Zp78gS0R4gN4TsTO3qqUdgQNuk9mVOWdW2ElCmsMVxGXiVjWCpW6h4SYuKjJNNPA89PNq5WMqpe558gNNUllb7ZMaWALB85u3EN7xnSIn51QBMvuxKaGs5cA6Aenuyf+HPBSMoU7enXizIk6nEHD8yT5gfQzEFBEy97ywdz9M6NlyPqLeFqOp8NNz8S/ih1OIAF92jgfgK53djhkwMZWQSXNkGMxRPrqa02xbWvISA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <f1ef0a3d-fbca-51ad-f282-fe3b9d49414b@suse.com>
Date: Wed, 18 Oct 2023 17:11: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 for-4.18 v3] x86/pvh: fix identity mapping of low 1MB
Content-Language: en-US
To: Roger Pau Monne <roger.pau@citrix.com>
Cc: Henry Wang <Henry.Wang@arm.com>, Andrew Cooper
 <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
 Paul Durrant <paul@xen.org>, xen-devel@lists.xenproject.org
References: <20231017082907.14455-1-roger.pau@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20231017082907.14455-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
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_|PAXPR04MB8621:EE_
X-MS-Office365-Filtering-Correlation-Id: 2ac33b86-012a-4404-2ada-08dbcfec93b6
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	nn6GuMCFVpBO37PFO0mqVt8f6fa+h6aVb1mala7OVofVwBQmsxRFgjiIQszcFaTD18A/kNvQ60c4HfgYsy1780Ck4o6wQY0QoEsH56R8bqaDXeQXVQ/P7O0peOAvFVzZLZ+N8INB8zzyoRYjROImERq/ZqU7U+ORhaYD4mTFokectTt++tMQpQT17BiDp6VKxRVVmLhsP1gdZtTVeFYzZF0FIL7fp54DENiYHQ97EKHbNbva6t/wJSC6QAouhpDvppeMxSnGh3N30Bxl1i7l6zfXQRVsGuf+ndiC/K2cYcG8/8aQbfcomL1f125mgEm23/andDSfcO6GKNleNTwCLOb0TA9VjVesFpdXYBALJZfVbPk1xUNBQ+Nq4EfwfCJ8DKEcdcW4V67jYequDAHIIAnY6kbTgqBTY4bwZ2FO6z0LiCj5+Onj4X+JQGYoOjO3V+ZCWBURvg6FkZqnaD1msrhJBtJyNDAJTELRNLtDPsvPPMrXpNNzKjoEQfz5SlHVPe5WUCPwEnpv0AdwGKTL23Wds6IdMWklO2RUHwa/PQYRjH1CWzC6QBahW3dn1vYKfsvbX6WLmAUqrebB/adBHvZlNQeEqrpT1evijQKBEdc/+keurZGg0/0V67KLEI+Og84RhR6J6IYHmJ6wYeF4uQ==
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)(39860400002)(346002)(136003)(230922051799003)(186009)(1800799009)(64100799003)(451199024)(6512007)(6506007)(53546011)(478600001)(6486002)(83380400001)(2616005)(54906003)(26005)(41300700001)(2906002)(316002)(66476007)(66946007)(6916009)(8936002)(5660300002)(8676002)(4326008)(66556008)(38100700002)(36756003)(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?ZkZzdjZyWm9SYUErdk50ZERHcUlrUUxjdm1LN0VvOXlIMTR2cXFCaC9IK0l2?=
 =?utf-8?B?VE1iRUt6TjJJYW1pTkJOTU4vZVZHeW5vNGtVWER1cmlnWlFXd1BNczVjZGxo?=
 =?utf-8?B?eUl2VXBQSzI0eVJzMVlwaHVmWFNCMjB4azJqOVBQKzEvNjVXcGM5RE1jbDg0?=
 =?utf-8?B?dFk5UFZyZzRkam00TXlvbVFVRFpsdlkzSnNoWnMzZGx4VkFUanJYVGpQQlQ5?=
 =?utf-8?B?cnJ4a0hNSS81RW1JVHI4QkR2MS9MMmxzekwrQk41N3FSSk4xOU1tbzdnM2pM?=
 =?utf-8?B?bkllSEhnOHpPdDFXRUVlZGpRUkNBNGpmNDBBQnd3ZkRWbTN6OHVXVXhiZTVs?=
 =?utf-8?B?U3k4RHA5WmExVXBiNVVqTjdhdTZPcURnWHlrWFZUcUJ1alBiOUMxRjlld1Rl?=
 =?utf-8?B?eVE1aVg2amhGa05qbk9EWXF2bHY3cHpBWXMvZHF5dHFGcmw1Y09rL01GNXN5?=
 =?utf-8?B?TDVkbjA3TmpxWnZOemF5R1E2Y2hRNHExV2RjOVpQaDBtOTZtcHNEa01kUUw4?=
 =?utf-8?B?KzVZTG9NK1pTYkZmNlVwa2xzYTZvd3F0dHFDSlFKR3BqK0NacXY5NFNoeGp2?=
 =?utf-8?B?RGs2N0lYZTBrSHVZSnVqNTl3bkJYVExiN0pDZHBGT2NOMHljalpTSU9ZclEv?=
 =?utf-8?B?cTJ1cG1FM0F1OTFyRWVuRFFTUEJ4YXR4czZzbzJ5TllvbHlaU3E5T01QTCtS?=
 =?utf-8?B?djEwUWgvbk5ySnpyRDZaZDBWWGNWVkJ5KzcvTHZZcGd5bnY4N01RVU00ME50?=
 =?utf-8?B?UXM1VnJ3Vjl0Qzg4NGhBVkpnYUVuUlFSNVBybm5iV1I4YndpcVRxUGFwbmdr?=
 =?utf-8?B?bG9aMUsxaGNRRCtrV2poNWU4Umh0cjRET3o0cFFxdXBaZzdjbEVDOHhaWWE0?=
 =?utf-8?B?cHFnUEdlekhIa1BvZDYwVXlwNGFqMUNLa0dsUDJpMnI2OUNhYWlxK3FDWGtH?=
 =?utf-8?B?RTNJeGUvbmgxc0tSR0N0QjU2Y3Q2U0lHSUYwUXJLWml5ekpuU3VHKzkxbXNn?=
 =?utf-8?B?M205Ly83bDFkYkJKVnFRUHhkOHAzd3Z5TGxURVdSK05rSWpWSGdaaFdhY2ww?=
 =?utf-8?B?S0t3V3YyUkhyNHRxakRxZE84ckZLSytjbW92WTdReHhYNk4rM05JVmllb3Vx?=
 =?utf-8?B?Q0R5SE9PL2ZEdnV4Vjh2TzVnelJLc0tYc1dLN2tzNE1EM2djQkhEYzVkM08r?=
 =?utf-8?B?T0YwWkdidThsUDdyT0h6b0dCcTlyRlB4cGV1RnF1QTY0V0ZwM2hUcW1qZEM3?=
 =?utf-8?B?bnFzU0syVjVua3Z1NXgwQ2Rub3BmRTU3Q2tNVHhvVHVHZEI2ZEtndDNNQlI4?=
 =?utf-8?B?dGF4V1ZoRURkdS9CdXRzRVVyK3M1QTY5ckxULzZRQjh4QVRhdHUyWlRiaVA5?=
 =?utf-8?B?SXc0OVp1aEMwS05MTUlOOGN4N3JhVlIwTHlQd3d5ZlB4NmNMVytrdm56cXBU?=
 =?utf-8?B?b01JM0xyd0JodExXdnRFWG9uQndvV3JoQVJHMHc1cWhiOUdsTE5KcmREQlVT?=
 =?utf-8?B?dEIwSVhlTWNrUkdQYWtBNS8xcHQvY1RESkc2MC85VTFOUlFJdkh6Q092ZTZC?=
 =?utf-8?B?SW5id01ZeHFZNmQ2dStoa0tJeWlLTzJNU3pmTkVuRU0wQVAvWXdQK2wxTENz?=
 =?utf-8?B?ajBMVzlBWWZ6Q09pZEFTMUJFRTlJdG1LZUk1b1VSUDl3NGRUSHNzalZYVnBD?=
 =?utf-8?B?VXpuY2dGS2IxdjU1NjdsdzY2TXpIM05Ud0JwdTdMUVhvTnZick4xMENNQlZQ?=
 =?utf-8?B?SGhhaGRlUG9YMXZPT1VwdEtLSXgwemJUWVptSklNaVZrN0E5K0FqY25aRkNs?=
 =?utf-8?B?TVA5NjZhWVdOR1RuQzh1WjFkeUo4ZHE4Yng2cldVbGlXUFg2V3dNcm5JVEUx?=
 =?utf-8?B?am4wWmlta01XUitBWTBUaTczcHcwd3BEcHl2Ri96RUlLOFJtSm4wVHpwbC8r?=
 =?utf-8?B?eEFPUksvM0M3OGRwYmVjK1FYYTZ5TGZmZjNSSGk5UFdPVkF3SXJ6bWE5VUk3?=
 =?utf-8?B?VUdxb2ZmMDhqeDJta0NJc1ZEek1yOXFMcnRXZjNOTHJySGdabVQ1UWZsZzV1?=
 =?utf-8?B?Qmk4WGVneXlhWFgzY0huc095QzVzWGNzT3ZiUjN6TUNPN2Fqa2tyeDZoaUdl?=
 =?utf-8?Q?xZOEMrzEQPgb4kjj0wtkxz1xd?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 2ac33b86-012a-4404-2ada-08dbcfec93b6
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Oct 2023 15:12:00.1766
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: GMaDQ9+Vd2Z/x7J5qGA9Oh2YxhfBr6iPrpOqNpCPIsxfA2xXHIbI5AGifbLMvhag7Fi1MapQ3QKjeThlEXPF0g==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB8621

On 17.10.2023 10:29, Roger Pau Monne wrote:
> The mapping of memory regions below the 1MB mark was all done by the PVH dom0
> builder code, causing the region to be avoided by the arch specific IOMMU
> hardware domain initialization code.  That lead to the IOMMU being enabled
> without reserved regions in the low 1MB identity mapped in the p2m for PVH
> hardware domains.  Firmware which happens to be missing RMRR/IVMD ranges
> describing E820 reserved regions in the low 1MB would transiently trigger IOMMU
> faults until the p2m is populated by the PVH dom0 builder:
> 
> AMD-Vi: IO_PAGE_FAULT: 0000:00:13.1 d0 addr 00000000000eb380 flags 0x20 RW
> AMD-Vi: IO_PAGE_FAULT: 0000:00:13.1 d0 addr 00000000000eb340 flags 0
> AMD-Vi: IO_PAGE_FAULT: 0000:00:13.2 d0 addr 00000000000ea1c0 flags 0
> AMD-Vi: IO_PAGE_FAULT: 0000:00:14.5 d0 addr 00000000000eb480 flags 0x20 RW
> AMD-Vi: IO_PAGE_FAULT: 0000:00:12.0 d0 addr 00000000000eb080 flags 0x20 RW
> AMD-Vi: IO_PAGE_FAULT: 0000:00:14.5 d0 addr 00000000000eb400 flags 0
> AMD-Vi: IO_PAGE_FAULT: 0000:00:12.0 d0 addr 00000000000eb040 flags 0
> 
> Those errors have been observed on the osstest pinot{0,1} boxes (AMD Fam15h
> Opteron(tm) Processor 3350 HE).
> 
> Rely on the IOMMU arch init code to create any identity mappings for reserved
> regions in the low 1MB range (like it already does for reserved regions
> elsewhere), and leave the mapping of any holes to be performed by the dom0
> builder code.
> 
> Fixes: 6b4f6a31ace1 ('x86/PVH: de-duplicate mappings for first Mb of Dom0 memory')
> Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>

Reviewed-by: Jan Beulich <jbeulich@suse.com>
with one suggestion:

> --- a/xen/arch/x86/hvm/dom0_build.c
> +++ b/xen/arch/x86/hvm/dom0_build.c
> @@ -449,7 +449,7 @@ static int __init pvh_populate_p2m(struct domain *d)
>          }
>      }
>  
> -    /* Non-RAM regions of space below 1MB get identity mapped. */
> +    /* Identity map everything below 1MB that's not already mapped. */
>      for ( i = rc = 0; i < MB1_PAGES; ++i )
>      {
>          p2m_type_t p2mt;
> @@ -459,8 +459,8 @@ static int __init pvh_populate_p2m(struct domain *d)
>              rc = set_mmio_p2m_entry(d, _gfn(i), _mfn(i), PAGE_ORDER_4K);
>          else
>              /*
> -             * If the p2m entry is already set it must belong to a RMRR and
> -             * already be identity mapped, or be a RAM region.
> +             * If the p2m entry is already set it must belong to a RMRR/IVMD or
> +             * reserved region and be identity mapped, or else be a RAM region.
>               */
>              ASSERT(p2mt == p2m_ram_rw || mfn_eq(mfn, _mfn(i)));

Would you mind wording the comment slightly differently, e.g.

"If the p2m entry is already set it must belong to a reserved region
 (e.g. RMRR/IVMD) and be identity mapped, or else be a RAM region."

This is because such RMRR/IVMD regions are required to be in reserved
ranges anyway.

Jan


From xen-devel-bounces@lists.xenproject.org Wed Oct 18 15:19:18 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 15:19:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618677.962631 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qt8KD-00020W-Kd; Wed, 18 Oct 2023 15:19:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618677.962631; Wed, 18 Oct 2023 15:19: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 1qt8KD-00020P-I2; Wed, 18 Oct 2023 15:19:09 +0000
Received: by outflank-mailman (input) for mailman id 618677;
 Wed, 18 Oct 2023 15:19: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=EezS=GA=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qt8KB-00020J-Mx
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 15:19:07 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 (mail-db8eur05on2061f.outbound.protection.outlook.com
 [2a01:111:f400:7e1a::61f])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id acf13638-6dc9-11ee-9b0e-b553b5be7939;
 Wed, 18 Oct 2023 17:19:05 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM7PR04MB6933.eurprd04.prod.outlook.com (2603:10a6:20b:10d::23)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.36; Wed, 18 Oct
 2023 15:19:03 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%7]) with mapi id 15.20.6907.022; Wed, 18 Oct 2023
 15: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>
X-Inumbo-ID: acf13638-6dc9-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=WK6Zmgw59gAF9M9mpqn5ZrPvRZBw+do2+G4g6xALToVvedMvdaQnZJtCytjbLT58SL7xYsCkuhJKTBMTahAfRBADB7TQN+Imb016Uxlah994K1PdWPesOmtXEaCDBgMpryKNiaGBS9yHQsw9lCmIArevBJ4tUpAVd3leJp/c8DF/AFRqcCvDv6QmK0x6Qx/p21uv5tEJdgLr8byc/9rrvKKeEYCNgfGB/bjkU78I9TlOXLIdrxxUryqIF5xjc99+KNFS+9zSr7ZkxiZFsuRBe1huOxXwrBHqvrN5CEN1O9ta240IBTlmp2jsqs1/RR4h+XQWFueNcEkkhxEJpGNnwg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=6xOcxw5jChZOZtOPT0VwNiHO+ohxXpx3N1Jwp+GTT0E=;
 b=F2iBU+D/TnN2JrvqkUadNicTtj4iqyXKSo5xA9UVw4sMA0BFo3Bb2Ust1wetgBdEAP8SuyO4OoaEKyVwILDeFwiqDRUg0LnYPNZxVfQT3sOh2z0CXJLrswRiNkb2OvO5EACHTdQwD54I4LuCou3O4ew/Pd8DzNe4rWGLROfiY3jPUWxj4HSBDgykjkca4StAlvmV059IBAxJNI2HR8i//mS8SwpcAosoUUF0ernzSQ5sHDljWXINN6TUtrxCSOxYf++BZTkYLIqdz0WQho+6RQ/bFA4RL4xuG5easY9BRrBCMzjewK9jUftcBin1nDCAwauk521PVSCKyI9uljI4fQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=6xOcxw5jChZOZtOPT0VwNiHO+ohxXpx3N1Jwp+GTT0E=;
 b=5T+hapM3NN04Yj0rQqZcI4P21a9JOstv9QNyM9gNhjfEHudqI3ei+zIv0zYTDhw2/HwDU7NPf66JbTIynX3cY9J2vagr8Z29AaK2yASmfEIWEy73f9ANQXK/2f+cGv82BVKkPgnwhj3DS8YghEVWMfGP8yJ1vszy9PZDm/XxvQxBu4+G/VoWBo/Fzqqh8j1JVC0oU/RwUAHO7RBKfZxq7vuAgmBU0Bt/LcHdcCTQHW+AggTb93i+hEyiqKPLDMccTxrTisUhz94Bv5elBaOZO5UzgghGRcIqOx6kJUZI63qFIgz80pxJKIeeAO8XpGjzDcgTYdUiDBoERA8gQSH7Ag==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <1c1ffe2f-eeb0-98d6-b061-c7bfcea427af@suse.com>
Date: Wed, 18 Oct 2023 17:19:00 +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][for-4.19 v3] xen: address violations of Rule 11.9
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.cooper3@citrix.com, roger.pau@citrix.com,
 Simone Ballarin <simone.ballarin@bugseng.com>,
 Doug Goldstein <cardoe@cardoe.com>, George Dunlap
 <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Wei Liu <wl@xen.org>, xen-devel@lists.xenproject.org
References: <d760ef0c088dc15ecc411b83640735123444f887.1697636446.git.nicola.vetrini@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <d760ef0c088dc15ecc411b83640735123444f887.1697636446.git.nicola.vetrini@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR3P281CA0175.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:a0::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_|AM7PR04MB6933:EE_
X-MS-Office365-Filtering-Correlation-Id: 6d11cb6f-ee03-48e7-fbba-08dbcfed8fe2
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	nADXy46QWyCwr8EegQTNMkrlzv40hKt2bM/CDrGBkmCfMr5ztZHIgYnmpDtubanKdj/GZ9jzuvnnfMB/a/93sHLWu9EZOnU2LIUoq0FwdV3K8NrDLzmmosd0ME6TWjtCTH4S//g81HKzcrbTA9NKwOfdoe5jpJsXC96NpTQ1GS6XrD0iq47Fe4DSt22QvYD6shJMLtA85lgDpdNz9W0VbSaV0dLwOVEHhWzlYh1KnExXzI0aV1Ed/tXuAriT6DKPrqfszs/5uxM45f6F2dufOG4m2ZhxU33loerv2a0/N2+StFV26N2A7Bf81m8JLsCIMUuKnlncJ/eoLaiWiz+u8xTdA0TeHV03/c9aN4KmHynP0CzF5ujpO+eaeaZPF+JVuCQlNbAXK/6Edx5p4rnIa4h4RIuI42T75pzhcdgDtJhbqDeScEoe/SUIOtj7Wry1daNdnW8sT7HPDnzDt9cEcR9EQSOkzcyeLhJvQ24IiQZY98v5yL2HQh3rNnjg6uDWAwKo3AURZsTnnNRdcAh0KgMX579twkNDbTP3qWIKY2lMKCI5eQNEZOx6LIdH8+wHCcK8dPnur9N1N6dOsM4VrpLgM9en9nY64gjL/6nddZYMnlIgQ1lwVRnC5B+FziBVNo3OthVsowiwzwBQGOgcmg==
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)(230922051799003)(64100799003)(186009)(451199024)(1800799009)(31686004)(36756003)(6506007)(53546011)(6512007)(478600001)(6486002)(66946007)(6916009)(316002)(66476007)(26005)(83380400001)(66556008)(54906003)(2616005)(41300700001)(38100700002)(5660300002)(4744005)(7416002)(8676002)(8936002)(4326008)(2906002)(31696002)(86362001)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?V2IyeW96RlhlVkJLSUlFSi9FUktDUjN2M3dNVGtNT2poODJZVTZ5Y2JnUFly?=
 =?utf-8?B?TjhYRlZhcktwK3VpeDd2OElIeHRrbmwrb1QwRjR0ZVdDYzVkZ3Vjb2prcS9R?=
 =?utf-8?B?RDhqWkxjZEcxUlh0bXEwNTBJZGt1Vm1oWHgyOGlWT2kzQ0Q3M1ZXZk9HeWp3?=
 =?utf-8?B?ZGtOcER2UGJ0OTdnY3lROThzeGJjN3NvTFBJTzdQMmQ3dmh4dE9LaGNsVmtX?=
 =?utf-8?B?VTNtdzUyTUtOUkFsRm5CSm1XMnlYYms1NEFvWnhXQVRiSUxJbTMvbGRhVjBN?=
 =?utf-8?B?RDZQckVURE1hbGpTOTFocURqWGdjRHBxcS9iWkIwdmwya0ozUW9XNnJBTzNW?=
 =?utf-8?B?SFczM1VwMnBtTms4RU1DY3BvQkQxTit0aXNEVWtlT1pFUysxcUdhay9NaFBC?=
 =?utf-8?B?OTdvOGk3R2RnRUs1V0JLZStiUWxJQzY0TFFVSE1PL29uZUc5NlJvVnVEWFV2?=
 =?utf-8?B?Vmcwd2wwVTlpS2NBSVFtc3Qvei9jdHA5bXR2OUpPajMvdktXMDlWMVJlOWhB?=
 =?utf-8?B?UVNOSlBDRThHeVlTUzdYS0Jmd3JNN3FjQ3ZrMGlBUHNIZUt3TzZ0QnE2UjQw?=
 =?utf-8?B?Wi95cUUvbzR2eldmNUtESXNHUXR6QjI2dy9ROUplYURsSlJMQXlqZDZPVlo3?=
 =?utf-8?B?RjFHaFdzZHNicWVLZ05DNE9tS1BVYzJoZitZbStpYS9WN040cTVhK2ZoeGpT?=
 =?utf-8?B?VkhYcFNGMUdtOExKcWMzY3FKWUtLcUxJYitrKzJJMldaMjVJZ1RzQTRsWmNo?=
 =?utf-8?B?a1ZSR0xSbjNHRXI1WW1odGJtNGVnbG5nQ3hNdk1DTUVsWDRSOTNwOVQ2TG5r?=
 =?utf-8?B?dzNSclQ4WDZkNlVNTnh0R1hRZHZBcFc3U3RXeHR1K0VDVEN4c2ZzR0lobEVD?=
 =?utf-8?B?UEoxbUJVNVgwMnllUkNRUkRyWkJ0UTUyWVRlQ2h6Z05wRXBFcFl6VUhxcTVT?=
 =?utf-8?B?OTNRZmNrWDR2NlFDcFNHNDdEV3h4Mk9kRWkyNGx1L3d1eVNFYmJMbkl2aVRv?=
 =?utf-8?B?cG5wa2l3UXBNL0NaekJ3TkttcEo0S1RtUElJSUtITXZZQzJYNHRZWlpleVN5?=
 =?utf-8?B?Z1JNMXF6T1UxVjVITnJzRmZPeENZZ3dEZ3hRUmsvS1NWS1J0VVh5RlBhTFdy?=
 =?utf-8?B?L2k1T0hUaFlzZ1ZVNWpmT01yckxHemlEbjVjNlFkVzN2S0d6SkEwcHpDZ25m?=
 =?utf-8?B?d1pUcWJjTlQ1QkFUNS9KUm9qeERtai84QlVUcmJ5a0phbXVEVDRDd29aN2xo?=
 =?utf-8?B?ZkluTTFBT0cwWFVraE9hYWxPZEhJdFVkM084STVENjVETnZKQ0FUTm5mMjIx?=
 =?utf-8?B?bmltaVh2UkVQZUhKSlZCbjVyRmZiZzN4dXdqL2RqNmQvR2NJVzhUdzZFVlFN?=
 =?utf-8?B?cFM1dWhlcmRCSktESExaQnRlNGRTSExQWHo1VlNRR1dwR0trSkN6K2RHUGNW?=
 =?utf-8?B?aENINVVYMm05NHhsM3YwancxZ3QyL082Rm9FRHhJV0ZvM1BiVnQvMGFYOHNK?=
 =?utf-8?B?ZWJDVW5xQWVTMTNXbmxhOVFNMHZMUTZPMkVCeDFFM29RalBxbUdWeUZrbTVy?=
 =?utf-8?B?RWZ6ZkloVnZvRHNIR21NdGFZZDB6N29DUGVQU3AwNE5WN2JkSjNrSnJkQW9u?=
 =?utf-8?B?bjd2RHlnVDEwQUkvcjExc2JQS002OWlEYUZrVWR0Y3MwUWt4ZnBjN1kxeUMv?=
 =?utf-8?B?SVRtL3hwTkl4LzE1dXBNMElHM2ZLNmZmZEN2UVhSdDFmdGRyUy9Md1Y0VmRa?=
 =?utf-8?B?dGRJWXJNMUViSG0rY1ptMitmREd3WStvZXA2WDg5S0RBdzBhNlFOT3EzYVJh?=
 =?utf-8?B?OG9lWFI2YnRFbVVSZjQ0bk5lRjNjYXJEUjI5dHYwTE5wRGhWbnV3UVpuUnNJ?=
 =?utf-8?B?cVJ1RHFnWnR5dndzSlk1enkvbjUxdk1henhkcXZMamJiNnRYQkZWZHZ4d3NO?=
 =?utf-8?B?SHduUzhTM01mS2tmaWFJOFEwOWxjNjg4N2p1TTgyTXlkbi9BNlV5UGVlQ2lz?=
 =?utf-8?B?SGVWM0UxbkxVcVNWU2V6cFhIYm50OUd0VWdWN2Q3ZkRYT3pNa0FjSzU3cGY1?=
 =?utf-8?B?YWJmTy9INXJtcDFOMEc0ejFURytESzdzTGtwaFNoUC9XbWFZM29nODREelB2?=
 =?utf-8?Q?qzw47dblY+x92bIfjWHkEdxB2?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 6d11cb6f-ee03-48e7-fbba-08dbcfed8fe2
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Oct 2023 15:19:03.2315
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: mmtWZcdS2+YzworxlegaYStFMg+yEY5FngUjn6Je5pDi/3i1rnzqtn2gLaIRvF8XRlClTdGZywaSQl0HmHbRBg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM7PR04MB6933

On 18.10.2023 15:42, Nicola Vetrini wrote:
> The constant 0 is used instead of NULL in '__ACCESS_ONCE' as a
> compile-time check to detect non-scalar types; its usage for this
> purpose is deviated.
> 
> Furthermore, the 'typeof_field' macro is introduced as a general way
> to access the type of a struct member without declaring a variable
> of struct type. Both this macro and 'sizeof_field' are moved to
> 'xen/macros.h'.
> 
> No functional change intended.
> 
> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>

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




From xen-devel-bounces@lists.xenproject.org Wed Oct 18 15:21:03 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 15:21:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618679.962641 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qt8M1-0003PS-Vc; Wed, 18 Oct 2023 15:21:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618679.962641; Wed, 18 Oct 2023 15: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 1qt8M1-0003PL-T3; Wed, 18 Oct 2023 15:21:01 +0000
Received: by outflank-mailman (input) for mailman id 618679;
 Wed, 18 Oct 2023 15: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=EezS=GA=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qt8M0-0003PD-46
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 15:21:00 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur04on2072.outbound.protection.outlook.com [40.107.7.72])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id f0afac8e-6dc9-11ee-98d4-6d05b1d4d9a1;
 Wed, 18 Oct 2023 17:20:59 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM9PR04MB7681.eurprd04.prod.outlook.com (2603:10a6:20b:286::20)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.21; Wed, 18 Oct
 2023 15:20:30 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%7]) with mapi id 15.20.6907.022; Wed, 18 Oct 2023
 15:20: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: f0afac8e-6dc9-11ee-98d4-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=n5/1utX3PSoVUWwEypX77aGJN/bNg+ofRTM7Bks134wlQ9cl2Oy7hkBP829Qp14bPb7UqyfqrCynmEZwRKWFWtZ7Wi1WxCQwmd7rbLBHQQYe9fXh0HzEhoJQML+2dtpuwPbkamtM6A0QIjnv5JbIp+cBbO8P8ZNYH3D6NcjOR/W6tL6RSbxHmfgQpzYuDZ85rMmAchNgZvnFwKEjx8vctzyCu5T1jkNhkLBA5fCMGlj+pRvcdMw/a2IcquqLUYmPfb3yRT1dVdcEnzv/XEESXmV1RgEOM7JiJbDPxah5VhdEtXmQmDrrQQYKDFS9APiS0mgTwmh2bMAyaj1OlCLppg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=uyDnMD6I5+3i0wJtXzO4vIDeZUU7PeldcJDsGQnlpfs=;
 b=DlnozyB+tJ5QD4DuQO6ylTUeHqQtn74dDMFA2YoJSma3OAIHztTgi8UNsoOzK/8R7AFzyjh1IcCf7GtWvfMdTNsdOtyWv7EQEMt2dxDnhi/UmOVSdPBtjSRq/Z4o/STlHttJN+Ap4VRKSR0+EHRVMZNN2BqMQdwrJhTu9JAj8l1p0AJQcIL9OM740jcwwVO7TFQC8pLLWhNBEFDsHmDJOKcDMvfygf4gjX8g4oTIgLdyXCSZG5tJ0dBvBFcBNydcAPdf15pQNvigh6cBjaMxHGtVLQp66vd5dO8UnGe/Y3AqgnoM8A6mq1Wi8o3xREdLfybuB/bE1DVotJNrtXJkvg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=uyDnMD6I5+3i0wJtXzO4vIDeZUU7PeldcJDsGQnlpfs=;
 b=29pA07chq/t4ADvFD3Bh00g2DUYLjymOSgz+AvJKDx8E/F/kjBWeqbuypwMefEtr0vcUPHbojOQhtrptD4l6p3bisuIfG/Im4YVuvwtt4WS1IR/Tsz5OHQskruCamt+JMzPriAfavDiEBzkyMFWCyMIZa5tdkqoV0yx7L3m+a9JMSzOkPSEhkPkfiA6bEkFn2JmNDMFh4B5ptA3qauF4p4VBxAxGfsisxX7iLiGsf33MMYw2IrfN3Fp/mgl4xQ9MIiJPkIJxX6Bvk4verbtiOYXkieBsJOOtWxHOEgrqWG7n9g2saI0/FK7GIJ7FGcVBYUkNwo9AHxG+3imQIlhqnw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <5f52c7cd-2913-6a57-8e6c-c8b8bd529e28@suse.com>
Date: Wed, 18 Oct 2023 17:20: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 v2 1/2] xen/ppc: Add .text.exceptions section for
 exception vectors
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.1697220184.git.sanastasio@raptorengineering.com>
 <f06ee2e5d836a64277bed6d9c6c1367dc0627dc8.1697220184.git.sanastasio@raptorengineering.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <f06ee2e5d836a64277bed6d9c6c1367dc0627dc8.1697220184.git.sanastasio@raptorengineering.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FRYP281CA0017.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10::27)
 To DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AM9PR04MB7681:EE_
X-MS-Office365-Filtering-Correlation-Id: 6b0f6c30-96cb-42b1-40ea-08dbcfedc3ee
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	pVK2Ud77BtlopvIhN9Oq5v0iMgsJPIqJvaheWhmW3OgN+6NIHfLBPgVxS41z7keT7Aa1aLPQV9PYi3kmR2p+MHST2X3/WKL7Z97kw/vYKUsk2gbvv/PJ5wcPhNZIEbD7nw1Ml1KAVe4lari25HG/kwUTVvPd4RFkAS8t5nJiQV7uita73I4OGEWy8oG0YkKMn2LvDjQeAEoXEQSWlQvnlUcbkWIhj6M1SwqbcLWBBXNxK49k1Ej74Gn175ZbKQdCahdRkMA4PD/abWwuSaNthIGBaA7gSbRoQVFiTbHgKEpApgBee1Nr7DoYsZaHf+Jyb3u/lhezt1dVRRueT8eUWHp4r59SvxayZ6fs7nFb/zEcIFUZsVrU8tZ5EieLCOjjWTEY2eXLWRBVkbgvNIucv1m0EbbxXLrs75MPTKQZSpJFPMroUSpMUMjVpgogKV2Vd1QSHAaihP4hJitKlRTTG0e5InxKZ4nAhkyZW0acRaKaSKCjaNFlArb5AihKR8Gs+XP3ggZKsNRJNkwVW7e4Gyeq4VnwTx4KcrPKcXLiGM8byBz0MharUgZWS/Y+l6drSg8T8Q7M/8b+WLJfwfdIQ35/HGdGoER2HsTBM9bTlw89QIIfZXj6J2JiAgfXU35IYTMmB+aa0rbDyU7V5+NEgKQa2JXWWtnDNZ467w6LquTvR9cyiAlljpf5Sc/iZNUE
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)(366004)(376002)(136003)(230922051799003)(64100799003)(186009)(1800799009)(451199024)(26005)(31686004)(38100700002)(66946007)(5660300002)(4326008)(66556008)(54906003)(8936002)(8676002)(4744005)(316002)(2906002)(31696002)(66476007)(478600001)(41300700001)(6486002)(6916009)(6506007)(53546011)(86362001)(6512007)(36756003)(2616005)(142923001)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?cks2OWFWb0dHYkd4STROY29ocEQxaWV6TndnUFJ6R1pxMlpSM2dHKzRLR0Vv?=
 =?utf-8?B?NWZoWUFzeE41c3kyMmZ6MlNhUUlLMExrRUdkeE5WTjdwZzAvMlFrNm9VMlEx?=
 =?utf-8?B?YlRrL1VVU3haYTlwY0hONTE2Nzk2aDdnYlArdFdreHpNa2lWNkJXOWpCTEhO?=
 =?utf-8?B?c1pBSytsUWxwMnBKNXVoR0N3QjlBc1YxY3ZJVGxndExDTEtEL29nL2pDMHJz?=
 =?utf-8?B?amFjYkthQ0pCcU1GdDdwVmQ2c1pCcHlqdGRINDI3emp6OVFVY213ekZTOUlt?=
 =?utf-8?B?Qy9wbGdsbnFYdzlQRnArOTBXa1JNWUZiYkJ3OEREZUVNSmk4R1ZEbDQ0NWhl?=
 =?utf-8?B?b1p1TnR4dDVmUktkb2JlaG9UMCtXWUV0dVV1ZzRtcGl5U0hCbE5jWE5pc0Ez?=
 =?utf-8?B?YjZ2cmY4N1RDMm8yVEVoZDdIUVRUZkRibUdkYU9LME9kUWFyRUR6Y3M4MjN5?=
 =?utf-8?B?TFRoZEdtbHhmTmFmcktWRGpyVzlRZCt0KzNxNFBWY2JMK3lZVm9ZUTBKakE2?=
 =?utf-8?B?MWxobldwZXRvL2FHdVBsQ0h6RVFwQStjb1lDbWlXek5KQU1ieHN5MHp6Y2Ez?=
 =?utf-8?B?NnpicFlOVGFZUk5YV1VQaThENUFJMUlFNWQySW5hVjZTeG9EczljWURLUjJT?=
 =?utf-8?B?UXU0WjNJaStMVDFxV3QxY0pLelFaVjhmOWZGOS8wU29uUm9UNWZ0QnE3cnNZ?=
 =?utf-8?B?d3ZjODBmK0l0KzlhNFMwdmxuS2t6Rzl6bjA3L3VXMXFhNUdycDY2TnlpVUhq?=
 =?utf-8?B?eEpIdk1FekdQekxFbG9yYkdleldXcGxrNG5EeXdtaUVtQ0gxZUZKM0d0RDlu?=
 =?utf-8?B?cmh0d3VnWjVCRVBWaWpVWU1SenhGMTNOVlhCcThoTlJKRWduYVRXS0xPd2FP?=
 =?utf-8?B?VDE2eTBNNDN5RXZQVGozQkRQMlpBZXJrYmVZc082NW8rUVhGUis2R2R2S0Rw?=
 =?utf-8?B?TTRrczRoZVk1cXdiUmxtZmhTRVVKMjBGbHhWOTArNTQvS2J4dXh6UTdaNmYw?=
 =?utf-8?B?UmpReGpqN0dtUlFjK1BNbENnQ1d5Q0RyaWlVVWhXNHZVYUxvaHJQOTY4K2lH?=
 =?utf-8?B?TVZHc1B3em1jTzFEL2ZFeU1USGcvQVdjdDhMWkNlZVJzcUlSdkNyYWlMcFRz?=
 =?utf-8?B?bURXd0k2aW9ud2QrN1JUYTNCSnZ5azhwQzAvRloyS3RtWkpmMExoc09JcFdL?=
 =?utf-8?B?bEExR1lBMUJ0YzZNR0JTSU9PQnRndWVuTUV2RlBTaFNxVllPTHRibmh1MTlq?=
 =?utf-8?B?VktKYWxYa2VXRXlsQkE5aGxHVHlsTnVBWHpjazBldFBYYVpRaDF1Q3N1NXJP?=
 =?utf-8?B?a25VUVdBbVg4SWZHYjdpNjVTekxHVEs4d2grNG52eFk1Zzh5QzdyVGdjOGcv?=
 =?utf-8?B?QnJCUzdKdE1pbkt5RCtnVVc0akNsL2taaDZjakNUOWJRYTNVeWVDSnB2Y0NJ?=
 =?utf-8?B?R21xenk1U3RucEVZQTJsU3g0ZEszaG11dmZsRGxmZlV6UHpDZ1IrTkRpTXoy?=
 =?utf-8?B?OC9CTmNTcGQza1Q5S241UFJpQkxUaFZrUDdJYUpGcUE5dUhjMGE2cG1GcFV0?=
 =?utf-8?B?NXRSYURXNnBtYkJZaGFiRTVJdXdYNGEwakpvTWZ6anhKZitiSDVaTVBwTS94?=
 =?utf-8?B?NXpCc2RXNmZ2bkF1aFcvZWpCeTV3emVJQ3hhTHVmUHk0bEN1RDNKbkE5a3dj?=
 =?utf-8?B?VnNMR3ZQWGxVc2lCVlpranFZdUtESGYwcm1lL255RkczZ1RVK0RMZVJLS1Za?=
 =?utf-8?B?QStmeVlOT2hWcFc4ZGpSdXZOUGxCY2U5eDhLVzVYNWI3VXp6emZUZmF5Q3dE?=
 =?utf-8?B?Nk9NZUdENlBqMTRITHd2cDhlNUZXeFFCb1NRS1VyS3dJT0kvSXQ3QUxEZlZz?=
 =?utf-8?B?T0E3Z25EUzFVVVBhbXJZMWFtU1FVblpac2NseWxuemlJTWcwOHJrWXcrTFpG?=
 =?utf-8?B?THZvUzFKcnk1RjFBN0FOd1lpc2N1NllESHNseEdCWUJMK2RHYnNXZlYwd21w?=
 =?utf-8?B?V1Q4Vnl5WkFzQTNCWVB1eXJVQ3hSVVI2VStLTzhCcjRsMzM5UmNJQWE4THJV?=
 =?utf-8?B?aUt6TlFINmVYYzFXdUxiYTA5cGM2TDRyOUdTd0J4MWpyL0RnK2lrYU9DUWV0?=
 =?utf-8?Q?Ugn9IuggKXHfQYW96QLEI6LOE?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 6b0f6c30-96cb-42b1-40ea-08dbcfedc3ee
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Oct 2023 15:20:30.5618
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: TRmF5jbBRi+Da8rFfQVmoECVJd/uhH2iQnhfzUy7XrOYIi2zUQEJVIQ71FFaNWLPl8IcdqWxnP6QvjsrreACdQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR04MB7681

On 13.10.2023 20:13, 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.
> 
> Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>

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




From xen-devel-bounces@lists.xenproject.org Wed Oct 18 15:24:11 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 15:24:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618681.962651 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qt8P3-00048l-Ea; Wed, 18 Oct 2023 15:24:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618681.962651; Wed, 18 Oct 2023 15: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 1qt8P3-00048e-Bd; Wed, 18 Oct 2023 15:24:09 +0000
Received: by outflank-mailman (input) for mailman id 618681;
 Wed, 18 Oct 2023 15:24: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=BVsY=GA=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qt8P2-000474-3y
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 15:24:08 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 60a53383-6dca-11ee-98d4-6d05b1d4d9a1;
 Wed, 18 Oct 2023 17:24:07 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id 716CE4EE0739;
 Wed, 18 Oct 2023 17:24: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: 60a53383-6dca-11ee-98d4-6d05b1d4d9a1
MIME-Version: 1.0
Date: Wed, 18 Oct 2023 17:24:06 +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.cooper3@citrix.com, roger.pau@citrix.com, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
Subject: Re: [XEN PATCH v2 2/7] x86: add deviations for variables only used in
 asm code
In-Reply-To: <4b96ba28-f2c9-68b5-7c7f-f4ca946022a4@suse.com>
References: <cover.1696833629.git.nicola.vetrini@bugseng.com>
 <5131b75996d0b91d4a98466f11dd927be910d7e5.1696833629.git.nicola.vetrini@bugseng.com>
 <afbb7307-50e0-047a-807a-1bcf0139f5d3@suse.com>
 <b652c60c8b5179e31b9032c5e65e9498@bugseng.com>
 <4b96ba28-f2c9-68b5-7c7f-f4ca946022a4@suse.com>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <8fd7b43f886d4728a4220ef35abd3423@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 18/10/2023 16:56, Jan Beulich wrote:
> On 18.10.2023 16:28, Nicola Vetrini wrote:
>> On 16/10/2023 16:58, Jan Beulich wrote:
>>> On 09.10.2023 08:54, Nicola Vetrini wrote:
>>>> These variables are only used by asm code, and therefore
>>>> the lack of a declaration is justified by the corresponding
>>>> deviation comment.
>>> 
>>> Hmm, you say "declaration" here, but according to my understanding 
>>> ...
>>> 
>>>> --- a/xen/arch/x86/include/asm/asm_defns.h
>>>> +++ b/xen/arch/x86/include/asm/asm_defns.h
>>>> @@ -31,6 +31,7 @@ asm ( "\t.equ CONFIG_INDIRECT_THUNK, "
>>>>   * gets set up by the containing function.
>>>>   */
>>>>  #ifdef CONFIG_FRAME_POINTER
>>>> +/* SAF-1-safe */
>>>>  register unsigned long current_stack_pointer asm("rsp");
>>> 
>>> ... this is a declaration, not a definition.
>>> 
>> 
>> It has automatic storage duration and it's not defined afterwards
> 
> Mind me asking what makes you derive "automatic storage duration"?
> I also don't see how "not defined afterwards" matters here. This is
> a special construct, not covered by the C standard.
> 
> Jan

Oh, you're right. I was fooled by the fact that this is not a standard 
construct.
I see your point now.

Thanks,

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


From xen-devel-bounces@lists.xenproject.org Wed Oct 18 15:43:35 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 15:43:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618687.962662 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qt8hb-0000Pl-Vf; Wed, 18 Oct 2023 15:43:19 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618687.962662; Wed, 18 Oct 2023 15:43: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 1qt8hb-0000Pe-SB; Wed, 18 Oct 2023 15:43:19 +0000
Received: by outflank-mailman (input) for mailman id 618687;
 Wed, 18 Oct 2023 15:43: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=EezS=GA=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qt8hb-0000PY-32
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 15:43:19 +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 0e43456d-6dcd-11ee-98d4-6d05b1d4d9a1;
 Wed, 18 Oct 2023 17:43:17 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PAXPR04MB9375.eurprd04.prod.outlook.com (2603:10a6:102:2b3::18)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.36; Wed, 18 Oct
 2023 15:43:15 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%7]) with mapi id 15.20.6907.022; Wed, 18 Oct 2023
 15:43: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: 0e43456d-6dcd-11ee-98d4-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=WtQC2Mb4U8d0BOuLzBEPqRqlr5/FQzVvIh0Iiw12TeuXB9NnfIM9eIIEAS2VmqCck5hotSASxDU1BBIulnGLoxJMObH+gau7QLnHsnVx3VEKOMI0DfHZYlwjEnmnGtPNAU8bEXo81VKiIleYgfhY5+WMmUI4Ud9L/Kl7fc7uqywqlXHEBPpGvyU7/1osdilio1Zb2G93xT9iHglHkCc8vdy7MxUheaBQct2lh3nKtJmL6Ft0GIPQSidERUPTpkQeT43+VUCxgx6jpMdov/4e2TMw3jhHlvC0IiXN33VffbAjelf12wpHYuKn+Ux1IWgfeNnhHwbbL7jMgXL2k9Oesg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=w/uvO/xyRT5iGCBG6rEhBQVzQHaCEz1eTNBLojXYlcs=;
 b=aHzzltPY5OepdqDzarVWBPSZA5EL7WxJSzCMxX461IO8CWGMDBCu7rAxx7jn8ee1vpXY29EkiTR4s1kuTpakDsjZ+6EFncAJeFOUdl5ZGw7rflFJ/R/cHlCfKt5Wl7zCcMJKVK2JsddW5RlhMzCw6AffvR2FdLfUC0hgUWmCCozSDzWyZ12D6XqxyytRP9i56SnzAaymfAMBfTZcQCHm/mPlz5L88ow+CULcZkp9Pvwz07lN2bKyijXy1JXvMkYW+XpO42mbPJceMDolOauOf+KiP2S2gtBQIdsJj/ndmKxKix4lMX0qr9gEFave/G/7HezCk8E/PWpmZFmsdoiuZw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=w/uvO/xyRT5iGCBG6rEhBQVzQHaCEz1eTNBLojXYlcs=;
 b=Z/jahRVJ/cDMA0l02tqiVPyKzCMiDCk6ZiP0BWnrzS1kHxUrjKNqd3t+1cvZKeRSg5HlQ/7y6Jj7ysW2IOpTw4TGP2pXklqhrQ8r64m++A+eZwgAn2bgJXCCkPVEVIWAOfr8L16tl6TUlBcnNSTNmol69pInZKkor9ZxVATM3ZPQGhEVnpb7IOKtgw8EnB+lAyxMhhttHUCgyekESyKz+n6TN5i947ATFhJ+V3UPOLUuZbLeVyA82KHuipLzKg4zf9q8e+E8cCaPuGN3kK8OP+6Y/3Og5EEm2EidGYz0S/XQeTDxf+EmxZ9ZaXTwnoJY9sUKMi5dmmjFrzzkG8nHPA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <a5db276d-6bc0-1fe6-6cdd-7c097308fdce@suse.com>
Date: Wed, 18 Oct 2023 17:43: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 2/2] xen/ppc: Implement a basic exception handler
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.1697220184.git.sanastasio@raptorengineering.com>
 <dfd134a6c59f329b62d2ecfaa37d74d70f8d4d90.1697220184.git.sanastasio@raptorengineering.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <dfd134a6c59f329b62d2ecfaa37d74d70f8d4d90.1697220184.git.sanastasio@raptorengineering.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0180.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:b4::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_|PAXPR04MB9375:EE_
X-MS-Office365-Filtering-Correlation-Id: 03eeb683-2b4f-4b11-3b31-08dbcff0f0f1
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	2R7fhL0kB0KjOeyhQydxs8IWjWylY4xavrA0KKZXm3Q96b96uEGKGR8wgERgeMSGYKlptAJK7bObBmIcMNUh1xV9BeYtbUnwzCW/Sxx/5a36Kd2lTh3WAwoSIPJfdyd0gqQXOrNH36nhDhBh7ifxgpyEPbU4yfefIngsTQjp5oWerTsz/8tXBzxyCT+ItPcfZKpse2jIBrHnD/EEpp18EEmeEFHhuvCjmO0zuxDxcRi1j+KRXhVFBLgHfyW7IHvMfP//tGB8DRqhYUBxZwnh/kbsyrMz40jNn20aKpo+vz5x18RTWAV36C/n+VVFiDM1WX6C/MxUIs+ncEpt5P25rfTZbv+QgGODhAulg8KtP5+KWM3kY89FXgVseJ8R6f8BO6Ys3b6+2jG7QL/rIkvmRui3P9YmFv9Qcc4fI52bDBznSRgIkfsdl94Ugxy8u9VT+Jz1r1YKXnDZ1kV45QXlayBAWdoRqRnljc+DhOS6DUWQPem7t/pXUHnnwLaM6lHrMorqdmmP7agthbI6z/Bpsv6t88dJWIk91E5MKntq/5/6Q5kLPsmA5UBjdE69YwHQdw9ik3gNxbZHyyp+5Cx1M3qOrUSpRBlCj0NwVYnZWMrFK6ZakE41dESj2817rLELqmII9hhpdatXQDZ49/4Rgg==
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)(396003)(376002)(136003)(39860400002)(230922051799003)(64100799003)(451199024)(1800799009)(186009)(6512007)(2906002)(8676002)(8936002)(4326008)(5660300002)(41300700001)(316002)(54906003)(66556008)(6916009)(66476007)(66946007)(6486002)(478600001)(38100700002)(53546011)(31686004)(6506007)(36756003)(31696002)(86362001)(26005)(83380400001)(2616005)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?cU80Ykl0OHpFYjBGblVmNS9EWlhncmNHdkNtMGpzZW1WSUZYUDVmcXhtaEVE?=
 =?utf-8?B?QWowWGNNZW0rQ0lhRVFZVmJMem5NS0E4dHhyNGRSejEvdGdMaDQwZ25nb0VN?=
 =?utf-8?B?ZWw3MVdwUGZ0TFkwb2JQM2YxRi9jS3FzUHhWbTRDVTJLZktuRC9YVURMczFn?=
 =?utf-8?B?NitaQnMzSGtmVzU4Z01NQ0IyUy8wSHBZVzV4aXhTa2QrOWVrQm5ZemwzV09I?=
 =?utf-8?B?RzlxVlhtM0E0MllwbllKTU40VDQwMVVZUnVRZjZhWDV6cUhyQzlIS2QxM0Yv?=
 =?utf-8?B?b3pEOWxCU2N0aSsrUktqN2h2L3E3WXp6RTdQcGdCZTJMeGlsdXcxZVJLdkxJ?=
 =?utf-8?B?dkRUaDFqeUtHNGVzRklMRjd0RWYxSU9xTm4rRTJkOFB6Y1VhRnZ0K0s5R1Fy?=
 =?utf-8?B?NngvMlFsQ1poZ3RwclZpMFMvOUF5Yk9nbEJTY1RqWUNIRXhCbGFKZi9CNUZp?=
 =?utf-8?B?cFpWaVcwV3l3VkVSb2dGSXVyYnBCQlpXK3VvNHBNUkdRUzZvYytUK3FXT2Vt?=
 =?utf-8?B?UC96SldkZllLZDVwbCtCc0Rka0RvTlFmbWdNZktCTmE3RXlzeGVkY3MvR2lv?=
 =?utf-8?B?UDRJV2Y3Y1ZRYitkNHFzbU1lN1F6Sm9jZUNHRS9YMHMrald6TDkvUW9hWTVx?=
 =?utf-8?B?a0RSOXo0T3BhNCtzK0lCdnNPWDhGVDdOTjZKQmU4NGxxUGw1WWExSzN4d2Fj?=
 =?utf-8?B?QTQvWm56TnVDdTFiUC9IVlhMbWdCMzlkcDJvMHhCVEU0ZnhzV09pU3FpRGF0?=
 =?utf-8?B?NmZJVjJoblh3bWR6NHJlSGNwbGxOOFlWNGllcjNNY3ppbmxIZGh6cXQyeFRG?=
 =?utf-8?B?cXRBNlpsZ1VOUUFoZGFFRkhUSng0aG5hWlFSQUozbnRMWUUrQzhUYkxnV29l?=
 =?utf-8?B?QWFuWlFCUGNHeWRxcW8wWkYwT3NTQXMzZHRXRTVQOW1vS0d6Rm1MVFpFZUxu?=
 =?utf-8?B?WGxoOHJVaTZIVjExNk5VcEVqdUR0WkJXSTh3c1dHam9aeWIyemtNUTcwVUow?=
 =?utf-8?B?OHdIaEhZZGtJRDVVa29JelpENnVjWWk5UEZDV0FISzRrcDRiR04xQVljZ1BT?=
 =?utf-8?B?dnJGMmdlVFpIRVh1NmwrcDFjZFR3RC82Ty9SUHlUZ0F6eVg2VnVHMFRrVXNx?=
 =?utf-8?B?OGM2bWFqY1ZnaTNpcGo1dGx1eVdFTEZTdGZjM0RQSWVQMzQwQVVmb05oZW9B?=
 =?utf-8?B?eFNWSmVIMTQzd241SGNzS3VtdDNYY1NGQ0tvSHlnTDU1b3d0c0FvamxRRTN0?=
 =?utf-8?B?V0V5dTVCWXJacitQdUp3QkwrZDYxeWJoYzg5eHhzbG4vdVBBQTdFUFo3c0l3?=
 =?utf-8?B?SGVlT1p1ak43bUVvbmJYMll2VEFHWTlROUZEbEtrTzNCaGdpL0IrQzB5ZG5B?=
 =?utf-8?B?OVJoUFllOUQwUjhBY2l6UXRuSmxsWS8rZ1lialB4dXhHSXpGMjhwb2RvOTht?=
 =?utf-8?B?WVdFcWQvQVNyU0ZtR1Q2WnZ2SHcxdE4rd2NOZFd4QTJPNjVTcncyaitsenNT?=
 =?utf-8?B?ODZ2cGVscTJCazEzSXNqbnlTMHFWOUxLdDNNUW5YSGFMRVRxelh1NXN0Wkc1?=
 =?utf-8?B?VHdhLzY2KzdLSXRJQWxzOGVPVm9qZXA1Q050b2QvNVgrZ0J2Ky9xay95TVl3?=
 =?utf-8?B?QWJjL0R6dkxGTW5VcWZNc0s0TkFTVkdSVmpjRVNnaEp4NW1RRXNDWXB0K2NB?=
 =?utf-8?B?eHRzRTc4Szl6dTVram00M2xraVcyZHJpOXhzMkVWbkVwclh5SkZ6d2wwQjFu?=
 =?utf-8?B?RlNZQjhjTXRLa05EQVdRZ1N6bkl6K1pJcUtiY2NBcFJpY1U2QU5tQndJWGg4?=
 =?utf-8?B?Snp5U1I3R1hqd2txZWsxK3o0YmI1QlYwcFJsQTR4QTY4aHFSNWMraU5iSy85?=
 =?utf-8?B?UWV6ZDdTUnV1QVBLVWRoRm9XQUV1TUVqNFRQN3dTcTZkVnh1ZTBIaGE5cHoz?=
 =?utf-8?B?OHEzdTFlTk9qOXp1MHdmWERSMEJldnpDenE4dmpWeXpZcWR6SGZhWk9jaEdD?=
 =?utf-8?B?UGhGZXJwK3pzODRkQ3lZVUZUNzR4ZjJGRzd1N2RSMlRVM3MyMld3SUJKdm1I?=
 =?utf-8?B?M3JHSC9DTTFaSWMyQ0QwZUhEdVpjQ0FPWWhVRHRSSnZQR1JpMTNiZGlwYzJy?=
 =?utf-8?Q?rZgWqFe82JOQsgYZ8M72PTqeI?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 03eeb683-2b4f-4b11-3b31-08dbcff0f0f1
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Oct 2023 15:43:14.6880
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: HpcNXH0hCGbvBF4W+bQXQ8na2tinTdpGhPTcfzk366FTWXHAJbhcrl/Nyyq9iFdizqMOa1Q3sfkeopjDpTDh2w==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB9375

On 13.10.2023 20:13, Shawn Anastasio wrote:
> --- /dev/null
> +++ b/xen/arch/ppc/ppc64/exceptions-asm.S
> @@ -0,0 +1,129 @@
> +/* SPDX-License-Identifier: GPL-2.0-or-later */
> +
> +#include <asm/asm-defns.h>
> +#include <asm/processor.h>
> +
> +    .section .text.exceptions, "ax", %progbits
> +
> +    /* 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)

This won't save the entry value of %r1, but the one that was already updated.
If this is not a problem, perhaps worth a comment?

> +    /* 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)

Except for these four lines the two functions look identical. Is it
really good to duplicate all of the rest of the code?

> +    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 the specified handler
> + */
> +.macro ISR name, exc, handler
> +    . = (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       \handler
> +
> +    .size \name, . - \name
> +    .type \name, %function
> +.endm
> +
> +

Nit: No double blank lines please.

> +ISR exc_sysreset,   EXC_SYSTEM_RESET,   exception_common
> +ISR exc_mcheck,     EXC_MACHINE_CHECK,  exception_common
> +ISR exc_dstore,     EXC_DATA_STORAGE,   exception_common
> +ISR exc_dsegment,   EXC_DATA_SEGMENT,   exception_common
> +ISR exc_istore,     EXC_INSN_STORAGE,   exception_common
> +ISR exc_isegment,   EXC_INSN_SEGMENT,   exception_common
> +ISR exc_extern,     EXC_EXTERNAL,       exception_common
> +ISR exc_align,      EXC_ALIGNMENT,      exception_common
> +ISR exc_program,    EXC_PROGRAM,        exception_common
> +ISR exc_fpu,        EXC_FPU_UNAVAIL,    exception_common
> +ISR exc_dec,        EXC_DECREMENTER,    exception_common
> +ISR exc_h_dec,      EXC_H_DECREMENTER,  h_exception_common
> +/* EXC_PRIV_DOORBELL ... EXC_TRACE */
> +ISR exc_h_dstore,   EXC_H_DATA_STORAGE, h_exception_common
> +ISR exc_h_istore,   EXC_H_INSN_STORAGE, h_exception_common

Aiui these are required to be in order, or else the assembler will choke.
Maybe worth another comment?

> --- /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";

Every string here has Interrupt at the end - any chance of collapsing
all of them?

> +    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);

While surely a matter of taste, I'd still like to ask: In dumping like
this, are 0x prefixes (taking space) actually useful?

> --- 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);
> +}

Please forgive my lack of PPC knowledge: There's no use of any address
here afaict. Where's the link to (presumably) AIL_VECTOR_BASE? If that
address is kind of magic, I'm then lacking a connection between
XEN_VIRT_START and that constant. (If Xen needed moving around in
address space, it would be nice if changing a single constant would
suffice.)

Also you only OR in LPCR_AIL_3 - is it guaranteed that the respective
field is zero when control is passed to Xen?

Jan


From xen-devel-bounces@lists.xenproject.org Wed Oct 18 15:47:38 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 15:47:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618692.962671 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qt8ll-0001ya-H3; Wed, 18 Oct 2023 15:47:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618692.962671; Wed, 18 Oct 2023 15:47: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 1qt8ll-0001yT-ET; Wed, 18 Oct 2023 15:47:37 +0000
Received: by outflank-mailman (input) for mailman id 618692;
 Wed, 18 Oct 2023 15:47: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=EezS=GA=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qt8lk-0001yN-Ld
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 15:47:36 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 (mail-db8eur05on20626.outbound.protection.outlook.com
 [2a01:111:f400:7e1a::626])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id a7875558-6dcd-11ee-9b0e-b553b5be7939;
 Wed, 18 Oct 2023 17:47:34 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM8PR04MB7972.eurprd04.prod.outlook.com (2603:10a6:20b:236::16)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.23; Wed, 18 Oct
 2023 15:47:32 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%7]) with mapi id 15.20.6907.022; Wed, 18 Oct 2023
 15:47: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: a7875558-6dcd-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=jX2qMofryQ7vCxL4nOScMc+120TY9PFTMIId9NJFb3kpH4OVmUak+X/7Bm5YfDbN7ZP/l2PLFZ6rTZrpzLCnfkSS3ot7wd0QSVpk2mUOxj5cEAvv4BYG1KzZ9OT3qBUSk8rfVQqllB76mI1zxqrfLc7scqM1SK8WM0CPXJG7gTNbkfkrdIYLzXvCpz9F6cUvDRQVVicaEoR1HBiU8hscydOjlG51DtJwhQ2Vr2VVkImfJQMa8CPRZfaGaGqWpFlH1QJGv0h59av9DBlg4ojpSVC0bx7AQWfRI4w78xi8lGyr2aItkExLHdsthaA6C/hFDh/3HTmmi4M0mkQj1zcKYg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=XzmgHrTUarUxfoFbbaKRndc6kXk/KvE64RBoKg+dT8E=;
 b=QIGGZgWU3RhwCtA9JvtqxVVXdNatGiW4s3YSIW3goGfRXWmTE8B4Z4jCA/ElDWta+TkTtVn8f8iD6Iy6JM9LpQ8JTqSyVU7OVG4mbQ0o7ec2BLWHdx0DfBy4qLgYPKNPmjbNp3DXJ7xF9oTj4CHYqFfgty5absf/8/7iTrMuReuoqewszBeTux9dG5j61NyQji5dMtSI3Xz3vqY2hnHFglbN1N2G3jBdrTPtF+T/G78MmadGpZCFdAO5PgkFx2168A8njUHMS8ByNME/BxeN8y2vcM7izNYD3EPlGJhw7HKwp5FbUNPU6JnnBLXfRpjNb4P+kkMtGy0+Az08q4Yw5w==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=XzmgHrTUarUxfoFbbaKRndc6kXk/KvE64RBoKg+dT8E=;
 b=Rcc1KGzW5ASeBoktkGm0O4H7WSGgNyYSX8INNjcHOpBi1K/gbrfDbLXWP8SIawRx27fdPCLu5KGuQK3G51J1Lq3RmSOm8PZCcHgKmt9HXkvoNvo9xmK7oRFKPWTwyC71pu3sfGqU4FLzgnA5m2J8jeIxB5mCUmD7tj3bWyuSLmV1rmg1gE5/wGYIl7Do8Pcvk3WHpwjbMNZ8fO9t3Xe6vWc40YaGMk7OZKwLqNgZH0ObbT0KDgpkHcU87hFlc6wofNQjzn9Y2+Md5TWtznhIp5j+gAs7Y3Y/qbMiISrj1Yl+y7MAwCpg0v3IxOTAf/YTilp9G1KW6dr+3KIT69HpfQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <03f6b4e4-adb2-db15-c07f-532d93254fe0@suse.com>
Date: Wed, 18 Oct 2023 17:47: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 v2 01/13] xen/spinlock: fix coding style issues
Content-Language: en-US
To: Juergen Gross <jgross@suse.com>
Cc: 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>, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <20231013094224.7060-1-jgross@suse.com>
 <20231013094224.7060-2-jgross@suse.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20231013094224.7060-2-jgross@suse.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0089.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:9b::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_|AM8PR04MB7972:EE_
X-MS-Office365-Filtering-Correlation-Id: 43187838-5ad8-46cc-f293-08dbcff18a56
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:
	ll07Q1nrmnDHrL6zf0ksoWUhdfRfvr5YVahIpV2MzYZSeN8S2kEez6cxKcsXFflsjjUj1kZvZuSk5gUS7WQrx6ImkJ2tt0L5lgb9eyHpWWhDB/e19+PAboEe/ajbOIhEDcWMEeifHnemwqy4ZVSPlPea6X0PAlSwGe/1e87xFiuknS9cZHZFf4ue9GyUjjcM+pQ5SrZESFVSWrm9PhCSa0s9Io1YoJl4nEU1oT3Z+etPtEqFxL6+R2XXSU9zmOA1R5EEOGDlWsr+pGtQSt6878OfUpKoG2Hvj7Abiyp7vDQwRfNgOunfuqEssigrrlT3iF7GK8R/WvKRJeiFkouq4Gfda1L2oV4H9QjltI17FWp3cuYeLAQUgukjJUWkZ2DY24ov/r/Y4K6IrUqEzjCKAXhQ2l4hdLa/HIfTtqGTFGgUTW9DQuUDh7lm0PvEyGcko8DsuTbO5lkKGxaZG4znZYsyAwPdwhqrTsZ4IJpuLcSUUTIUdmOOzaZN379V8aFBdZi4xCxNWQy2ZrGLudaNVaQHh5yHTT50qrwZzzgUkqg08aDX1fZVc4oAKpDrU64X/qrBeXSAC+r0uorI4tutzYrKuP3uRaP+xIMI7sJD/ul3F8dcCdxxWWvXq36eru1xekFblbbIS7O8DOH9mWDHOA==
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)(396003)(346002)(136003)(230922051799003)(64100799003)(186009)(1800799009)(451199024)(83380400001)(31686004)(4744005)(53546011)(2906002)(6862004)(36756003)(4326008)(8676002)(8936002)(26005)(2616005)(38100700002)(5660300002)(316002)(6636002)(86362001)(478600001)(6506007)(6486002)(6512007)(6666004)(66556008)(66946007)(54906003)(37006003)(41300700001)(31696002)(66476007)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?Zldsc0EyQ253eDE4RmYwUTRWdjdkR1FjVytjbGZyK09aZitHZWZBWkMrK1lU?=
 =?utf-8?B?eVVRYXJVN1daSitPODNUSmJFditNN0ZQZkNHT1M3azVtbGJCUVRCVW9iWERq?=
 =?utf-8?B?VHB0WHlBdjhtSjRHdjNYT0puSitDOFZzY1RuNDJSbmtNdFFUMmlGK2k2NWta?=
 =?utf-8?B?eFVYeDh0K2JRWE0zeHFJM0tpZEhwc1k1bURMQUsycTdwWlZMWWxmSnJkbnQz?=
 =?utf-8?B?T1JqVERkU1QweVRlQ2ZUQ0hrVkNnMlRyU0dBb0lPeWVJbkFYdUdBTlJJaC9S?=
 =?utf-8?B?ZjFHV1BTd2ZHQWxkRWZDVFBYakZBUExJMmd5eVlmUzFGY2g0TmVZV0UwdllZ?=
 =?utf-8?B?V004MnBjdkp1N2x1SmV5QytWMXdZODdKM0ZNd1hBaitEMkE0WXBFR1JLNVJi?=
 =?utf-8?B?SXZDZ0dmTXBhSHF6Z3QzK29wN29MYk5KMEJON2hybWxNN0dJWlhVVlR3dmhy?=
 =?utf-8?B?U1RJQzRnNk5QWmgwN3ZTU0VzQ1ZkTHlWeEpHT2ovWlNpVE9DQktNZ0JMUC9k?=
 =?utf-8?B?bmNFb0trUmNsMHlLT3hXNVhOMjgyYTBXUUJhZzRHaHJEeElIcDVSUzRqWllt?=
 =?utf-8?B?TXZBS0xMVTFUcVVQSUJ4UFRVSW1jWFBCYTFCRWpadkc5dHVQSmlORElHWUZT?=
 =?utf-8?B?dmpIa28yT2xMYmU4RzhabDFrblZ3citQT1JuVGlFaGNvUDNLbmVONTVyS2RB?=
 =?utf-8?B?TzQwTUlCRTB4c3ZSLzBnVDY4Mm5YREJvN3Q1U2VNZFpva20xUFdXWEwxa2Fy?=
 =?utf-8?B?QWxSUkVjUWphWEFwb0k4bVo2TkE2clZ0ZkpCRGRMU29kamlKS1dubEVRRHZi?=
 =?utf-8?B?RzdhT3FCWHNTMTNOemIzR2NhT2FrK0YvTnh4ZmVJd0JTTzNIQWJWZUZrY3Vp?=
 =?utf-8?B?dGlwZmlySXRDd3RpQmY1ZkRsZXNES1VtZytQZkw1NEFsOWppZDF3RjJlZmt1?=
 =?utf-8?B?OG5ick5jb1pVZng3UlFVbVJtc1EzMVQwaW1uMENMQ0hGOGFpbGtuU1dnVlRK?=
 =?utf-8?B?YnFJS1lwZHhKTU9SWDZnS0pleTVrMGF4L0hRdkRpU1MraUZqRzRZN2hNTkhC?=
 =?utf-8?B?RXdtTHVrSTNKKys4UUtWYVcwb1hpWDQ0YjlHVXJwbzBZYjVHTlF6cVhYWTBF?=
 =?utf-8?B?bXZUbzVlbDdxMCs0eU1YZDMzc0NGL2xtSkdSMkZQdnlrNlN0cXV3MStVY05Q?=
 =?utf-8?B?N2ZtT3VYWGgxaklQbjdRNTBMKzlXZzJ6SkJ6cW5iSm1wNWpHQXFITTB2UFlO?=
 =?utf-8?B?UFVOcFlxcWhPeG94THNFR2dUVUQvWEx0cms2ejM4ZVd1NFN1WnRVd1JJeDRK?=
 =?utf-8?B?Mzkwc2NONXlCSmx5dGgrUjNyaTJhdEh4dGNPSXRidXo3bCtOeGNBSWtlQzRX?=
 =?utf-8?B?dFQ0cTBnTzdhU3ZhYnYyd0xrKy9ZYUhJVktveDZ6QXZCSG5zdTZkcFdZb2ov?=
 =?utf-8?B?OFdqdTkrNDBqQmtUb0ZUeWdVTXZJaWI2MWUvOFZwdktOK3NuaGF1Y2hYV24x?=
 =?utf-8?B?ano0TTFSNFl0VGcxbUgzU0NmQkUxNm85aS9LSDNVczJsUmsxdDh5U0RQdFZW?=
 =?utf-8?B?VFltdDFaSFBMT25tNHdCTHA4Rlg0NnAyYnJ0WU9lN1VDWWFHQkYzQTRKREFF?=
 =?utf-8?B?eWU1Ny9icW1pUk1pRW9xMHFOUm4reFFCNXRJQmNJeFNDUnJkelZDRlpOc3R1?=
 =?utf-8?B?MkV5aWE0MHF1WGMzOC9SWnlob0RObloxb01UdlZJQStNcUF5TDRqbHdXVEE3?=
 =?utf-8?B?dGlYRDByYUVmeHZvMGx3MDFkdlozcnJiYW96UEFBbktqTXp3RjBBM09GVWFj?=
 =?utf-8?B?ckpRRU1rZTVjRU9TYzBmWFUvVWt0Ykp3S0tyUm01VkQ4clVCeE5heWx5N3Z6?=
 =?utf-8?B?N282b0k4eTNzK0FDREtQU3FGTkhKcW5wYmZPR3g2UGdFbWtRRUpZc2lMNjR1?=
 =?utf-8?B?d0RUWmdNREl5VnR2bmV2QzllbnlVdUJEbytNSTEzTWFLdHA4V2V0ZytWNXVo?=
 =?utf-8?B?dzlHZktPRElUSGRtSFNEMTlBR2JpNUpWUEVZOGZmVjF4UGFMQlJlQmtrNDFv?=
 =?utf-8?B?NlAwcU91cEEvL290OTIvVFBIeVRoZzMya3kzU2JJclREVlRGWjRQUnJKV1Z2?=
 =?utf-8?Q?195ICbsJmNFY/yWYkVleRQkjE?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 43187838-5ad8-46cc-f293-08dbcff18a56
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Oct 2023 15:47:31.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: +dgE8Jh3V04xfDVu8pnjjPHezwJWh1s6hxsMA+PvweYmNJ0c5m5WA3wvzaFAwdcq0BZxdjUlJfIUmG7dIoV/dw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8PR04MB7972

On 13.10.2023 11:42, Juergen Gross wrote:
> Fix some coding style issues in spinlock coding:
> 
> - Instead of u64 etc. use the preferred uint64_t etc. types
> - Remove some trailing spaces
> - Add missing spaces in "if" statements
> - Add some missing blank lines
> 
> Signed-off-by: Juergen Gross <jgross@suse.com>

Acked-by: Jan Beulich <jbeulich@suse.com>
with one possible further request:

> @@ -298,7 +298,7 @@ static always_inline spinlock_tickets_t observe_lock(spinlock_tickets_t *t)
>      return v;
>  }
>  
> -static always_inline u16 observe_head(spinlock_tickets_t *t)
> +static always_inline uint16_t observe_head(spinlock_tickets_t *t)

While there, could you also add const to the pointed-to parameter type?
t, after all, ...

>  {
>      smp_rmb();
>      return read_atomic(&t->head);

... is only read through. (I'd also be happy for this to be adjusted on
commit, so long as you agree.)

Jan


From xen-devel-bounces@lists.xenproject.org Wed Oct 18 15:52:47 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 15:52:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618695.962681 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qt8qf-0003aW-3Y; Wed, 18 Oct 2023 15:52:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618695.962681; Wed, 18 Oct 2023 15:52: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 1qt8qf-0003aP-0e; Wed, 18 Oct 2023 15:52:41 +0000
Received: by outflank-mailman (input) for mailman id 618695;
 Wed, 18 Oct 2023 15:52: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=RpGs=GA=suse.com=jgross@srs-se1.protection.inumbo.net>)
 id 1qt8qd-0003a3-MF
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 15:52:39 +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 5c4e5007-6dce-11ee-9b0e-b553b5be7939;
 Wed, 18 Oct 2023 17:52:37 +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 E612621879;
 Wed, 18 Oct 2023 15:52: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 A8EAE13915;
 Wed, 18 Oct 2023 15:52:36 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap2.suse-dmz.suse.de with ESMTPSA id XJjEJ0T/L2UWBwAAMHmgww
 (envelope-from <jgross@suse.com>); Wed, 18 Oct 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: 5c4e5007-6dce-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1697644356; 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=QkOi6Ong9YQ5UuzAL31XsLGZxmLOBQ6ztijBm0XdtdU=;
	b=hsRQ7/TBtIWM+AJ208KVxuvrgCDr5GgibsxOAEE11UAYto72UIaIT2vZwLfXZ7XLH4RKwQ
	CcTr548RbdaNoQEC5yXSO2FJ8ftxI0KeKtKHUBEFM25pxpIz50ndM14Lt6dc9fqp5ySzp/
	0lSDXuxh0ILKA75TgvY+oryAWmSIwVI=
Message-ID: <22c544a1-cd26-41dc-aed8-bc822b42cbbf@suse.com>
Date: Wed, 18 Oct 2023 17:52:36 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v2 01/13] xen/spinlock: fix coding style issues
Content-Language: en-US
To: Jan Beulich <jbeulich@suse.com>
Cc: 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>, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <20231013094224.7060-1-jgross@suse.com>
 <20231013094224.7060-2-jgross@suse.com>
 <03f6b4e4-adb2-db15-c07f-532d93254fe0@suse.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: <03f6b4e4-adb2-db15-c07f-532d93254fe0@suse.com>
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature";
 boundary="------------1kJYg7tbGvAZg0H7CeY88RXB"
Authentication-Results: smtp-out1.suse.de;
	none
X-Spam-Level: 
X-Spam-Score: -7.96
X-Spamd-Result: default: False [-7.96 / 50.00];
	 ARC_NA(0.00)[];
	 RCVD_VIA_SMTP_AUTH(0.00)[];
	 XM_UA_NO_VERSION(0.01)[];
	 FROM_HAS_DN(0.00)[];
	 TO_DN_SOME(0.00)[];
	 TO_MATCH_ENVRCPT_ALL(0.00)[];
	 BAYES_HAM(-2.97)[99.87%];
	 MIME_GOOD(-0.20)[multipart/signed,multipart/mixed,text/plain];
	 HAS_ATTACHMENT(0.00)[];
	 NEURAL_HAM_LONG(-3.00)[-1.000];
	 MIME_BASE64_TEXT_BOGUS(1.00)[];
	 DKIM_SIGNED(0.00)[suse.com:s=susede1];
	 NEURAL_HAM_SHORT(-1.00)[-1.000];
	 MIME_BASE64_TEXT(0.10)[];
	 RCPT_COUNT_SEVEN(0.00)[8];
	 SIGNED_PGP(-2.00)[];
	 FROM_EQ_ENVFROM(0.00)[];
	 MIME_TRACE(0.00)[0:+,1:+,2:+,3:+,4:~,5:~];
	 RCVD_COUNT_TWO(0.00)[2];
	 RCVD_TLS_ALL(0.00)[];
	 MID_RHS_MATCH_FROM(0.00)[];
	 MIME_UNKNOWN(0.10)[application/pgp-keys]
X-Spam-Flag: NO

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--------------1kJYg7tbGvAZg0H7CeY88RXB
Content-Type: multipart/mixed; boundary="------------hvZ23GQ109RXL3NLnUmMymmf";
 protected-headers="v1"
From: Juergen Gross <jgross@suse.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: 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>, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
Message-ID: <22c544a1-cd26-41dc-aed8-bc822b42cbbf@suse.com>
Subject: Re: [PATCH v2 01/13] xen/spinlock: fix coding style issues
References: <20231013094224.7060-1-jgross@suse.com>
 <20231013094224.7060-2-jgross@suse.com>
 <03f6b4e4-adb2-db15-c07f-532d93254fe0@suse.com>
In-Reply-To: <03f6b4e4-adb2-db15-c07f-532d93254fe0@suse.com>

--------------hvZ23GQ109RXL3NLnUmMymmf
Content-Type: multipart/mixed; boundary="------------C70kCx8FDO1w86UkJ0EQ3yXZ"

--------------C70kCx8FDO1w86UkJ0EQ3yXZ
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: base64

T24gMTguMTAuMjMgMTc6NDcsIEphbiBCZXVsaWNoIHdyb3RlOg0KPiBPbiAxMy4xMC4yMDIz
IDExOjQyLCBKdWVyZ2VuIEdyb3NzIHdyb3RlOg0KPj4gRml4IHNvbWUgY29kaW5nIHN0eWxl
IGlzc3VlcyBpbiBzcGlubG9jayBjb2Rpbmc6DQo+Pg0KPj4gLSBJbnN0ZWFkIG9mIHU2NCBl
dGMuIHVzZSB0aGUgcHJlZmVycmVkIHVpbnQ2NF90IGV0Yy4gdHlwZXMNCj4+IC0gUmVtb3Zl
IHNvbWUgdHJhaWxpbmcgc3BhY2VzDQo+PiAtIEFkZCBtaXNzaW5nIHNwYWNlcyBpbiAiaWYi
IHN0YXRlbWVudHMNCj4+IC0gQWRkIHNvbWUgbWlzc2luZyBibGFuayBsaW5lcw0KPj4NCj4+
IFNpZ25lZC1vZmYtYnk6IEp1ZXJnZW4gR3Jvc3MgPGpncm9zc0BzdXNlLmNvbT4NCj4gDQo+
IEFja2VkLWJ5OiBKYW4gQmV1bGljaCA8amJldWxpY2hAc3VzZS5jb20+DQo+IHdpdGggb25l
IHBvc3NpYmxlIGZ1cnRoZXIgcmVxdWVzdDoNCj4gDQo+PiBAQCAtMjk4LDcgKzI5OCw3IEBA
IHN0YXRpYyBhbHdheXNfaW5saW5lIHNwaW5sb2NrX3RpY2tldHNfdCBvYnNlcnZlX2xvY2so
c3BpbmxvY2tfdGlja2V0c190ICp0KQ0KPj4gICAgICAgcmV0dXJuIHY7DQo+PiAgIH0NCj4+
ICAgDQo+PiAtc3RhdGljIGFsd2F5c19pbmxpbmUgdTE2IG9ic2VydmVfaGVhZChzcGlubG9j
a190aWNrZXRzX3QgKnQpDQo+PiArc3RhdGljIGFsd2F5c19pbmxpbmUgdWludDE2X3Qgb2Jz
ZXJ2ZV9oZWFkKHNwaW5sb2NrX3RpY2tldHNfdCAqdCkNCj4gDQo+IFdoaWxlIHRoZXJlLCBj
b3VsZCB5b3UgYWxzbyBhZGQgY29uc3QgdG8gdGhlIHBvaW50ZWQtdG8gcGFyYW1ldGVyIHR5
cGU/DQo+IHQsIGFmdGVyIGFsbCwgLi4uDQo+IA0KPj4gICB7DQo+PiAgICAgICBzbXBfcm1i
KCk7DQo+PiAgICAgICByZXR1cm4gcmVhZF9hdG9taWMoJnQtPmhlYWQpOw0KPiANCj4gLi4u
IGlzIG9ubHkgcmVhZCB0aHJvdWdoLiAoSSdkIGFsc28gYmUgaGFwcHkgZm9yIHRoaXMgdG8g
YmUgYWRqdXN0ZWQgb24NCj4gY29tbWl0LCBzbyBsb25nIGFzIHlvdSBhZ3JlZS4pDQoNCkkg
YWdyZWUuDQoNCg0KSnVlcmdlbg0K
--------------C70kCx8FDO1w86UkJ0EQ3yXZ
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-----

--------------C70kCx8FDO1w86UkJ0EQ3yXZ--

--------------hvZ23GQ109RXL3NLnUmMymmf--

--------------1kJYg7tbGvAZg0H7CeY88RXB
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/Ey8FAmUv/0QFAwAAAAAACgkQsN6d1ii/Ey/Z
Dwf/fNf7P0QXAxMFWd4PIFrKB1HwRPDJxMlgfv8bVw1jkvAlRdbOhtWScLMpYnsvasTLmMqM1VJj
uKKJ/IAuyHbYcFrX+Qgp2UZhHrbtxogcb+Hji7zNgxH/xCzusyXteBMtfpWLuo3hSYtI37D6nKFS
EwDmWo28Gr8uBZrM/NoPYYPhVw3coiT/RdCfUAm9oJdxgoWeD5Anj3ra3IL7N6etZIEva/22V7LK
4JVAWqCD4bD9C5P79jYPe0/7Q4DAPpqPDG07tIhcDG5w7O8EJcgj6my6Qs6Stu+kcvyUjL+uWOg9
2IXt+u8p5U6XK7qr+YMK2o2SOxvLE7LY7yBT+mLDTQ==
=tNnY
-----END PGP SIGNATURE-----

--------------1kJYg7tbGvAZg0H7CeY88RXB--


From xen-devel-bounces@lists.xenproject.org Wed Oct 18 15:55:59 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 15:55:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618698.962692 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qt8to-0005Qv-JG; Wed, 18 Oct 2023 15:55:56 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618698.962692; Wed, 18 Oct 2023 15: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 1qt8to-0005Qo-Fw; Wed, 18 Oct 2023 15:55:56 +0000
Received: by outflank-mailman (input) for mailman id 618698;
 Wed, 18 Oct 2023 15:55: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=MOie=GA=bugseng.com=federico.serafini@srs-se1.protection.inumbo.net>)
 id 1qt8tn-0005Qg-0x
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 15:55:55 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id d1530225-6dce-11ee-98d4-6d05b1d4d9a1;
 Wed, 18 Oct 2023 17:55:53 +0200 (CEST)
Received: from [157.138.166.97] (unknown [157.138.166.97])
 by support.bugseng.com (Postfix) with ESMTPSA id 0CC0F4EE0739;
 Wed, 18 Oct 2023 17:55: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: d1530225-6dce-11ee-98d4-6d05b1d4d9a1
Message-ID: <ee654c4d-8b3d-4122-95c6-3e4c316687a1@bugseng.com>
Date: Wed, 18 Oct 2023 17:55:52 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN PATCH 10/10] arm/smmu: address violation of MISRA C:2012
 Rule 8.2
Content-Language: en-US, it
To: Stefano Stabellini <sstabellini@kernel.org>, Julien Grall <julien@xen.org>
Cc: Bertrand Marquis <Bertrand.Marquis@arm.com>,
 Xen-devel <xen-devel@lists.xenproject.org>,
 "consulting@bugseng.com" <consulting@bugseng.com>,
 Rahul Singh <Rahul.Singh@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Henry Wang <Henry.Wang@arm.com>
References: <cover.1697207038.git.federico.serafini@bugseng.com>
 <199886f6ba1f2d5701eabd080b4f9723fc28f4b9.1697207038.git.federico.serafini@bugseng.com>
 <39d3f8e0-61cf-4b8d-84f1-a5087ba8ead4@xen.org>
 <D3320838-1E67-4339-A3D4-A3E60FBC4117@arm.com>
 <c9a7f059-4cf5-4a75-b231-573c4fe29b37@xen.org>
 <92C52E39-729F-40AE-A02F-556C8EE471CB@arm.com>
 <alpine.DEB.2.22.394.2310161338540.965337@ubuntu-linux-20-04-desktop>
 <4718460e-756a-40fe-ba1b-7f32a1432b51@xen.org>
 <alpine.DEB.2.22.394.2310171750170.965337@ubuntu-linux-20-04-desktop>
From: Federico Serafini <federico.serafini@bugseng.com>
Organization: BUGSENG srl
In-Reply-To: <alpine.DEB.2.22.394.2310171750170.965337@ubuntu-linux-20-04-desktop>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 18/10/23 02:55, Stefano Stabellini wrote:
> On Tue, 17 Oct 2023, Julien Grall wrote:
>> Hi Stefano,
>>
>> On 16/10/2023 21:47, Stefano Stabellini wrote:
>>> On Mon, 16 Oct 2023, Bertrand Marquis wrote:
>>>>> On 16 Oct 2023, at 15:38, Julien Grall <julien@xen.org> wrote:
>>>>>
>>>>>
>>>>>
>>>>> On 16/10/2023 14:31, Bertrand Marquis wrote:
>>>>>> Hi Julien,
>>>>>
>>>>> Hi Bertrand,
>>>>>
>>>>>>> On 16 Oct 2023, at 11:07, Julien Grall <julien@xen.org> wrote:
>>>>>>>
>>>>>>> Hi,
>>>>>>>
>>>>>>> On 13/10/2023 16:24, Federico Serafini wrote:
>>>>>>>> Add missing parameter names, no functional change.
>>>>>>>> Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
>>>>>>>> ---
>>>>>>>>    xen/drivers/passthrough/arm/smmu.c | 6 +++---
>>>>>>>
>>>>>>> This file is using the Linux coding style because it is imported
>>>>>>> from Linux. I was under the impression we would exclude such file
>>>>>>> for now.
>>>>>>>
>>>>>>> Looking at exclude-list.json, it doesn't seem to be present. I think
>>>>>>> this patch should be replaced with adding a line in
>>>>>>> execlude-list.json.
>>>>>> I think that during one of the discussions we said that this file
>>>>>> already deviated quite a lot from the status in Linux and we wanted to
>>>>>> turn it to Xen coding style in the future hence it is not listed in
>>>>>> the exclude file.
>>>>> AFAIK the SMMUv{1, 2} code didn't deviate very much from Linux. I can't
>>>>> tell about the SMMUv3.
>>>>
>>>> True that i had the v3 code in mind, we might not want to do that for v1/2
>>>> you are right.
>>>>
>>>>>
>>>>>> At the end having a working smmu might be critical in a safety context
>>>>>> so it will make sense to also check this part of xen.
>>>>> I don't buy this argument right now. We have files in exclude-lists.json
>>>>> that I would consider critical for Xen to run (e.g. common/bitmap.c,
>>>>> common/libfdt). So if you want to use this argument then we need to move
>>>>> critical components of Xen out of the exclusion list.
>>>>
>>>> I am sure we will at some point for runtime code but we cannot do
>>>> everything on the first shot.
>>>> I was not meaning to do that now but that it is something to consider.
>>>
>>> Things that are in exclude-lists.json are source files that come from
>>> other projects and also change very rarely. The argument that we don't
>>> do MISRA C on the files in exclude-lists.json, it is not because those
>>> files are unimportant, but because they change only once every many
>>> years.
>>
>> Interesting. I would have thought this would be a condition to do MISRA as the
>> cost to port a patch would increase a bit but this is one time cost every many
>> years. Whereas code like the SMMU are still actively developped. And in
>> particular for SMMUv2 we tried to stick close to Linux to help backport. So
>> this would be a reason to initially exclude it from MISRA.
>>
>>>
>>> Of course the least we rely on exclude-lists.json the better.
>>>
>>> For smmu.c, looking at the git history I think it is more actively
>>> worked on than other files such as lib/rbtree.c or common/bitmap.c.
>>> Given that backports from Linux to smmu.c are not straightforward anyway
>>> (please correct me if I am wrong) then I think we should not add smmu.c
>>> to exclude-lists.json and do MISRA for smmu.c.
>>
>> I haven't done any recently. But if they are already not straightforward, then
>> adding MISRA on top is not really to make it better. So I think if you want to
>> do MISRA for the SMMU, then we need to fully convert it to Xen and abandon the
>> idea to backport from Linux.
>>
>> This would also make the code looks nicer as at the moment this contains
>> wrapper just to stay as close as possible to Linux.
> 
> You have a good point. If we do MISRA for the SMMU then we might as well
> fully convert the file to Xen. As a clarification, we can still look at
> the fixes on the Linux driver and "port" security fixes and other key
> patches such as workarounds for broken specific SMMU versions, but for
> sure we wouldn't want to backport a new feature of the driver or code
> refactoring / code improvements of the driver. But that probably is
> already the case today?
> 
> 
>> As a side note, the change here looks fairly self-contained. So I don't expect
>> a major impact and therefore would not block this. This may not be the case
>> for more complex one. Hence why I wanted to exclude it.
> 
> Thanks!
> 
> 
>> Do you expect larger MISRA changes in the SMMU driver?
> 
> I'll let Federico answer this one.
> 

There are more than 500 violations of accepted rules involving the SMMU
files under xen/drivers/passthrough/arm/ and half of them come from
smmu.c. Those are violations of the series 10 and the essential type 
system, so I'll definitely expect larger changes to SMMU driver.
Furthermore, there is approximately the same amount of violations
involving MISRA rules which have yet to be discussed.

-- 
Federico Serafini, M.Sc.

Software Engineer, BUGSENG (http://bugseng.com)


From xen-devel-bounces@lists.xenproject.org Wed Oct 18 15:57:57 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 15:57:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618702.962701 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qt8vg-00062A-W0; Wed, 18 Oct 2023 15:57:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618702.962701; Wed, 18 Oct 2023 15: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 1qt8vg-000623-TF; Wed, 18 Oct 2023 15:57:52 +0000
Received: by outflank-mailman (input) for mailman id 618702;
 Wed, 18 Oct 2023 15:57: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=EezS=GA=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qt8vg-00061v-Df
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 15:57:52 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 (mail-db8eur05on2061a.outbound.protection.outlook.com
 [2a01:111:f400:7e1a::61a])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 15a75169-6dcf-11ee-9b0e-b553b5be7939;
 Wed, 18 Oct 2023 17:57:48 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PR3PR04MB7434.eurprd04.prod.outlook.com (2603:10a6:102:8e::22)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.36; Wed, 18 Oct
 2023 15:57:46 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%7]) with mapi id 15.20.6907.022; Wed, 18 Oct 2023
 15:57: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: 15a75169-6dcf-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=jKfeP4jZ/MvMpD9+a4SsT+R82EeEKtf5kOtPWpr8CqzfH+BRoih35Nh5Jf3HrQsrTSkHsu/DiUBil8qBIkMc1ELy4JO5cilOJsPCFbz5C9KWsSb6PIoCUcS5oxAi+lhCSpfEujVt+ShtgI4+gebboC37OxjHU87pMbHzN42OUMiqR5OZuq8voh+h5zOkI7XbIf5EctsrWCSae2OxBQwOvaVoOCu37wuMiTaEz95Nmf8cH1E2lQdPBNgvtUvGzKSV4W492Xysfy1mjZdETsJk5E8E+x584I4YkdWbT+9sih/fcqB3yRQC3BU2NlJIaMK+KaHXkn5KQDf/OuISDYP6HQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=t8IBvTFzP1phOlDjw7SSlnqr2ekEcF07H/fIzSNK94c=;
 b=C6CEQ6pxIroNhNEfOH75x8phwOsCVwpeD0N+T41E0BJIjHJuP8AmHqY2i1iSv3jgP4sBvYtwMsIUQqrJx0hclD+/P1VzM70YkCIYn18o7sJ07NRKEx3MUQTdgF2/1Z1QClWcgSjPIpPQxnJoUopED5x1/WJD+JXcs0nHkvNbaV0BMp3jCWfYM0qTS0ZTToYsK13asSzxSc3lrSAQa1xGZ/5jPgvvx+3+3JnyOkkvwFe0ZQ1ZWzxafYIuIe47FWyM+bFeh5f7p25Hckhla1Le5gGFWGnKOMqgS8q546mbU312gx9fkeZK4NYmfRTSWSPpXhBDd8KV9ySrJtyqVpS9hw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=t8IBvTFzP1phOlDjw7SSlnqr2ekEcF07H/fIzSNK94c=;
 b=zPfGucHrUMty1f7v0BxJBoP4diecqpcgYPRNMiU+gF3s5p7R2eZ7Cc9YCUiCE4iW4C3heaw3L/uyNO8/4gWcCh+Zr1F6zpGXae/L4vLwfJdaWjl5Sy20BV1qQ2XOpymhcx+c1slekeDvuG6G5tp/yK5HWVmMTaDNZy+3lXj7HZr4djAU3tCkaBPjzBZYjGOssgKI9tU86jpPcvlW/caO+PMPCRTLfF+Q6CdBA/9kgLL/NNZJiH3NMB4fKiR0UC6Hr646oAMdS0ZaPd+rK0WsnkQS9iWT8pfxx9JGuAIHgh9Kvfchls0c6tnTc0jraeYdNyy74Wo99TOHyuCfxRQ/zQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <12b1909a-5ad2-bc8e-8855-e80b468990b1@suse.com>
Date: Wed, 18 Oct 2023 17:57: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 02/13] xen/spinlock: reduce lock profile ifdefs
Content-Language: en-US
To: Juergen Gross <jgross@suse.com>
Cc: 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>, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <20231013094224.7060-1-jgross@suse.com>
 <20231013094224.7060-3-jgross@suse.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20231013094224.7060-3-jgross@suse.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0187.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:ab::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_|PR3PR04MB7434:EE_
X-MS-Office365-Filtering-Correlation-Id: 736ca01d-e970-4bd6-3d95-08dbcff2f897
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:
	SJ8ftNgz9j84fMI/+uaKkqhed9/yWGN14SNNgvEsrlgTkMg7iebjuYCKVf3IPUTLKjqBAWsu6gcnP+mIjJE8h3bl3zFgKOhZ2NWVs4NKWjxMtHADSw5Ssz28mW8VCPr9SFvSePByCdGRkM/d6UiyiTlkgu905bff1+ttZVncPo8NFyMlOu9cFSsLBBwNfDTsx8nE4JfJyMVYSIcbObxqiRl+mAAAWeC0re+slvdpKIGliMZCZZJdy8NLdusOEmmluS6IbfgZ+FaEsSsx/vnZfamPxbsQCrkFvN2okDChAQDKuLTS1H5kA3oeC1kiNujqm3/vwVMJi6HmwqyoGFd94RxgVbyZ5T6YkwTLSGSiBIKst9u+WVYoscIo2rqBuGbEcqT/s1TQlTJog6qUdBvDY+ktUYysn0oq8nOR2rb0npwN+R6HBS30WG199lTny0zeyRxZBTDl4nOXryUCW6m2agiTIz3sbin8Zk9PRKR3LiZhRtPO/ywO+BSAEP4jdiU8tk0E2y9MXU8Ipoj2K1RCl7yi2kKLP9jLJvFeBMxR+0uxK1vrLAWMewp8+ArdQHAE3btibLnQbsDQeofBWEHq5q8cOVJizxtwdY7moPEfBxOhRKpQTQRdhWMX65Jp3gNutRJifQEvu8EXFbv50+bTDA==
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)(230922051799003)(451199024)(64100799003)(1800799009)(186009)(31686004)(6486002)(36756003)(316002)(6636002)(38100700002)(83380400001)(66476007)(2906002)(478600001)(66946007)(66556008)(54906003)(31696002)(37006003)(2616005)(6506007)(6512007)(53546011)(26005)(6862004)(86362001)(41300700001)(8936002)(8676002)(5660300002)(4326008)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?T2FaUlhEMVcyaS9iOGVvRzdBMmJrMFpBVHZHVXdWb2hiUVlmeDVrTDlEdldV?=
 =?utf-8?B?TGpQSENvTFdjTzBvWEZ0NWZnYmVoZEJFaDQ3d2drUEpRZUFKMTBRejhmQnJ4?=
 =?utf-8?B?emNabm1JdFJoS09ZQmxXUi95a0tUaHRZb1NWdHp1cUlRbVdCc0REVXlUejVE?=
 =?utf-8?B?MlEvckVHRW8vRGdzeEZZUHkzTjZJVGppU25uMXhZbWNIdW4wM2t0OU1XYXUv?=
 =?utf-8?B?VlhXTUtqSHJkbGRtNHY0VGJFSS8wKy9SRU5RcU9Ec0F0dkpkdWI1bHZ2NlMy?=
 =?utf-8?B?NzlQYVhveGkyWFBKL2lhYzcrdkRiS0RPUEFuaGRyeEs0NDBJWWtac2N2S1Jx?=
 =?utf-8?B?eVN3Y294cWhPRUdRV2xaalUzcGc3SWRrdUttSnlMSDBUemU2dWZLS2ZlZjdN?=
 =?utf-8?B?TDMwT0YyTlR5SFVINEJkZTBmOWVFdzU0SnE3bzBPS1ZWbjlaQUtuQkxaajZC?=
 =?utf-8?B?RXh6NzB2OWs5bTk4QVlVKzZHVGdSNTVqTlBiazNTeXBza1pxazl2TEpYTHpQ?=
 =?utf-8?B?RTFkWnBCV3VoNmU2MEhoWkN4TjZ4SWVLNjRaSGlsSGwzTkpJU21La25PRHRL?=
 =?utf-8?B?OWM0TjBQWnl5QUdDYUJDZEFGVnRUN09iTDhoM2VWK3lBRm9HczJrUWZnQVZw?=
 =?utf-8?B?TFQvL080QlREc1R3bzJwVXNCQlpHV1BFMXZsVDVTV3hJeHZCdUI0eDdFSy9L?=
 =?utf-8?B?eWFtQUZHSFZ6bmQ5cWVBZ1dBVHV4Y3JJcEVmN1Z1NnFKYlFzRTJsVFdRb2Jq?=
 =?utf-8?B?NysrcHltaTRlNHY5QmpHaUg5VDBuMzIrUnYraHFLK2s4bUdmN1djandPZndr?=
 =?utf-8?B?MlphcyttVC9qclBubTRKelgyN2hUOS81Q09rUlEvQm5rZlpXYjVEeVU2RzRP?=
 =?utf-8?B?a3ZhQVhXN2M2bnluazFOOVc5WVZnNTJBWUdBcWFKSTZZcStFVnZ0d2ZqT0RK?=
 =?utf-8?B?Z1R6N05JTE1vN0M5dGVVelFDazc0OHN3NkluRnA1Q0pDRStIWnJDY0twN2pr?=
 =?utf-8?B?MHlsVEF0KzI3UnFyZVlsMjEyK1lxbDdRNHYwNmdqb25FMWVOOEJoblROQ1dH?=
 =?utf-8?B?b2xHUk4rRy9JOStvYngxTkErNEdra3laNXFTTkdwWEYrRXc3VWIzTGxvaG9i?=
 =?utf-8?B?bVhIaE9zWVZGNXRteFB0VCtTVHRzK0l1dzBIcVMxMUhLcU1zT2g0ZGNVZXNS?=
 =?utf-8?B?dkFLS3BWNkhZMDl5bEpCWEcyeGMyTlIrS0hYVndJaXZvTGdBcXVmNWpJT0o4?=
 =?utf-8?B?VWkvZzBEeWtLZ2FVcm15YkpBUnBFWkg1WGVJdVk1Y00rakxpRHJlaE5nejRh?=
 =?utf-8?B?Q3VGUjZHSi84L3lCQmpZWjMwOE9mMjNLUUJVRWlJYmtraG9vNTM3dTRPZGNm?=
 =?utf-8?B?dTRzc1diZml3VTRCZnVVZEUvM1g4Y3RoZlhldkFGSmRmSWVIQ3Y4Uzl3dC9G?=
 =?utf-8?B?RHlUeVpEMlhiaVFtVTNIVFQ2OVFDWFlXRnV3aVY2dXpzai9ucTh2Ym5UcDJD?=
 =?utf-8?B?UjVRS3hjOENuaUxMU29WNHpkanFSU3BoUEM0VFUyNFhxb01nLzRsem1BN2I4?=
 =?utf-8?B?RkE2M1NKSzA3L0lzRmNEb3p2dStVWW44NFpaOVhtVXU0MmJub2E4SlNzaXRG?=
 =?utf-8?B?bmFmWGpPc3pYWmRHZkJZUGpnSHpFdXBaN3g1RHEwV20vdGFySGhhMndJWUtC?=
 =?utf-8?B?aUhrYzQvc1MxamEyMmtmbWxyamxzaVNlMmxtYU5yM2h0YUxseGFxZURvbk1J?=
 =?utf-8?B?WndtanVKTWZKUzFqVVFvM25BUnVUZzd5bzAvREVVU2VCc1o1N09IU3E4WDhM?=
 =?utf-8?B?VjNPMG0zb1pVNnNGMEMxd2RRVFQ5OGtIRjdmRFpkemF3MFp4TjNlcW1rTnd1?=
 =?utf-8?B?YVg3akRuMTN5R1NCeTliTW9YOVBvN3lSWDNPWXZidmVuT05sRHpmM2xGOERK?=
 =?utf-8?B?SENNYVJZOFBBaW82L0RrRFVac2NQYkUvb1JyU20rSzVxZ04zK1d1M1F0VVdi?=
 =?utf-8?B?UFdGeUtBYUpMWWZidlZBMzUyN1NrbTRzTHRhM2hzRFhyY2dSclZoSzJ2NDFI?=
 =?utf-8?B?VVlkd3FRbkdXK0N3SGNoRkF3M01SQktlU3I1SjhHcitnOXZ3b25zTUtVZy80?=
 =?utf-8?Q?jLXf4HfyXQF9DI9rFr1q7NpU1?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 736ca01d-e970-4bd6-3d95-08dbcff2f897
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Oct 2023 15:57:46.3894
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: rEI82B7zgZFeEASQHxpVj94Aq0iWA5rNS7q8FyUbJynYTX/CP/aUlUx6IjoFXSLjNWgqoeFEZbtXIafNksDVVQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PR3PR04MB7434

On 13.10.2023 11:42, Juergen Gross wrote:
> With some small adjustments to the LOCK_PROFILE_* macros some #ifdefs
> can be dropped from spinlock.c.
> 
> Signed-off-by: Juergen Gross <jgross@suse.com>
> ---
> V2:
> - new patch
> ---
>  xen/common/spinlock.c | 45 ++++++++++++++++++-------------------------
>  1 file changed, 19 insertions(+), 26 deletions(-)
> 
> diff --git a/xen/common/spinlock.c b/xen/common/spinlock.c
> index 202c707540..4878a01302 100644
> --- a/xen/common/spinlock.c
> +++ b/xen/common/spinlock.c
> @@ -267,25 +267,28 @@ void spin_debug_disable(void)
>          lock->profile->time_hold += NOW() - lock->profile->time_locked;      \
>          lock->profile->lock_cnt++;                                           \
>      }
> -#define LOCK_PROFILE_VAR    s_time_t block = 0
> -#define LOCK_PROFILE_BLOCK  block = block ? : NOW();
> -#define LOCK_PROFILE_GOT                                                     \
> +#define LOCK_PROFILE_VAR(val)    s_time_t block = (val)

This macro, and then at least for consistency also ...

> +#define LOCK_PROFILE_BLOCK  block = block ? : NOW()

... this one should imo take the variable name as an argument. Otherwise
situations like ...

>  void _spin_barrier(spinlock_t *lock)
>  {
>      spinlock_tickets_t sample;
> -#ifdef CONFIG_DEBUG_LOCK_PROFILE
> -    s_time_t block = NOW();
> -#endif
> +    LOCK_PROFILE_VAR(NOW());
>  
>      check_barrier(&lock->debug);
>      smp_mb();
> @@ -432,13 +431,7 @@ void _spin_barrier(spinlock_t *lock)
>      {
>          while ( observe_head(&lock->tickets) == sample.head )
>              arch_lock_relax();
> -#ifdef CONFIG_DEBUG_LOCK_PROFILE
> -        if ( lock->profile )
> -        {
> -            lock->profile->time_block += NOW() - block;
> -            lock->profile->block_cnt++;
> -        }
> -#endif
> +        LOCK_PROFILE_BLKACC(lock->profile, block);
>      }
>      smp_mb();
>  }

... this arise where there's no visible declaration of "block", but a
use. (Originally I was meaning to ask how this function would build,
when the declaration is dropped.)

Jan


From xen-devel-bounces@lists.xenproject.org Wed Oct 18 16:00:22 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 16:00:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618707.962721 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qt8y4-0007xR-Gf; Wed, 18 Oct 2023 16:00:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618707.962721; Wed, 18 Oct 2023 16: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 1qt8y4-0007wq-C9; Wed, 18 Oct 2023 16:00:20 +0000
Received: by outflank-mailman (input) for mailman id 618707;
 Wed, 18 Oct 2023 16: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=EezS=GA=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qt8y3-0007wS-9U
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 16:00:19 +0000
Received: from EUR02-AM0-obe.outbound.protection.outlook.com
 (mail-am0eur02on20622.outbound.protection.outlook.com
 [2a01:111:f400:fe13::622])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 6ec5486f-6dcf-11ee-98d4-6d05b1d4d9a1;
 Wed, 18 Oct 2023 18:00:18 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DU2PR04MB9098.eurprd04.prod.outlook.com (2603:10a6:10:2f1::12)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.23; Wed, 18 Oct
 2023 16:00:14 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%7]) with mapi id 15.20.6907.022; Wed, 18 Oct 2023
 16: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: 6ec5486f-6dcf-11ee-98d4-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Z80b3eLRc0v1MUCz5Fx0b1Rpjz9mtG/VIzXzT8SwVDmrzBlvXHGNbg5VFucR4EVmfTna0AuLyFgFejlA+nvFNu8P5QBxESFjfyJuCZNsUwiYkeLTbaxLBOFHvrhAEEhcQztpZMSxrCLixn1fh1gdMP+44J0QlYJfZph7qE3V7m2DHN7xRKz9kggU2dwRsZ0BMDw5hqdsyaM2oglLNhmo4p1QhTHwUni4B1XSRxsAW7/Ba6/hUxmU7nJt6b/j/6qe11wXXYRysDxr54thXpFsEntqEY2OeVm72pHsf/M8UgfbA/sLLhT1uUXDRQd8+2vc4/+UQXzM6ZuXX5AzD+rQIw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=fmI15CyJL8eFofYdk7/Jj9rLkDwGUR1a2m7urJ6glz8=;
 b=f9XGCrgn0bos4nWk5uw8e2NHBTlufBpCt5TnjGz2EBFERWUC9Em/WhdTig6+95nb8e9Xfh4rSZp/iEOQ3v/6D/JQvBXkhfR5cGm18qLeCWprG+13vzWf0eKWIX37e7lYX2WRP/S7H8vacKUlVxwiL+0CEZTWt+uxMFfoFOcJDLqpW2jW+f38QTs88frXEU9R/udLvIlRYMw1haOerB0f2E/RaFRtc/uzJJnFeu6LksTrzVM4hMvOte4LlXGDu7AIUuDkmfzuEt0rMewLnDEcEL2ERNkZVYTF6fn9dKD1Qpm8uJvZOSCg+N0RgVRe2sMSXGiDCFiiCZq+ybUJ/BVnXw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=fmI15CyJL8eFofYdk7/Jj9rLkDwGUR1a2m7urJ6glz8=;
 b=irb6ZRSN5UrA0gpvP67z1iET4Gqkz09pdGvszk46g42n8A4eaaxbdv9qpPudshxQiM/OTSxE7VICmDMzikLW7iEH0QrtARSTniVHJeKGtnWqBBjYICLyLAwq3NVTQ4s+1WPdqwOnUbojADFa/3Ocyw8KJeGYHvsaBOlGdEMT+wnVeHUwHZqhO/f19KTr7cS4mqO4h941Tz+lVY2SMoRRAhV0V/ZDCoxAGJkkxIs3nzOVHfsQievnBjvUwbDMZ0ubmCcOFfD6yh71EdjwgQhEMiNYBpRbL/jW0myiQMGZfpZD4tBv6VseSGm718igQq5KtTCRz3N1KSh3h05rfoP3rA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <bd47214f-4286-c2af-d7ad-c5aba11158a5@suse.com>
Date: Wed, 18 Oct 2023 18:00: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 v2 03/13] xen/spinlock: make spinlock initializers more
 readable
Content-Language: en-US
To: Juergen Gross <jgross@suse.com>
Cc: 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>, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <20231013094224.7060-1-jgross@suse.com>
 <20231013094224.7060-4-jgross@suse.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20231013094224.7060-4-jgross@suse.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0132.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:9e::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_|DU2PR04MB9098:EE_
X-MS-Office365-Filtering-Correlation-Id: a3634cd7-922e-430b-e86f-08dbcff35096
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:
	EdaJEaQR/omlGofXROe2X307W6KoY2QHW7p+cnvkPpttmf7Q2Fn8+IJsPlpNYrs6Uye52TPErikgpFllsM3PeC74HkXK+vIJU8PFpAyv3qyLEWgKOK05HaSjCpX7cFylU2Az2QjWGwjU6mVyQIdDuCeJg29LPuSVKVp0iZZl7vaMQyMZWDFJgV4CGcaHETNex/0cls9yIMOgdx1uavMk4aBRQTw15HtzsBypkJEtrAMmH4FDwxNQcn6c1wGyKvt7neM67BJuAY2hvqn7sqR9wfdM3qGM8osIgrCMWNMWszrHrIIJyvZ17H5OKm+Awf7KBKJzlsdidnGyskcDqiESCDt+67L61EtwalcM1Mz0Qvk62PvDxYWptbDVAfVK2cCNu2Uazz5MV32Gl5PTotQG4F+z0PgBn8tK9pq69xw3L3A4iW/vjnmzjO7pdILS/8I29EJPN9el8oOPeP1HGMDtJabzW3wBalDinaXJSQoEdkIfpi7vLN++xh0Gj1nhKrlTPmNi+ndfbRdOhHMyYb9w+OHQiHtkXV4fop4CsSoPMlJxvC+QvjR5kRGUKlowaAuOF68vgk2tQYfSP+Q5BJVs8CPe+WEo9U+pSKTv+BVgTdzYSx7HdRFKrk1+5o+uSdwWCz5AWywuxXZp6cX435MZjw==
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)(396003)(376002)(39860400002)(136003)(230922051799003)(186009)(451199024)(1800799009)(64100799003)(31686004)(26005)(38100700002)(41300700001)(66556008)(66476007)(54906003)(8676002)(37006003)(6862004)(4326008)(5660300002)(66946007)(8936002)(316002)(86362001)(6636002)(2906002)(31696002)(558084003)(6486002)(6506007)(53546011)(478600001)(6666004)(6512007)(2616005)(36756003)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?TVZ0NXVyL3BSd0xaOC9RSWNqOW8vb0tjdFZaVUt6eDF5RUNrWStGRVVURnpS?=
 =?utf-8?B?MTdoT01JUzJqbWJZNkpuUDluQ2pITWU3UFB5VlI1NEdhckw0S3pCMGZVdVZx?=
 =?utf-8?B?OTcwU3p0ZnM4ejh3c1UyUTltdnRjVnhXTjErOCs4MGljOEhXTkF5dnBTSGRT?=
 =?utf-8?B?cFAyejZ5MUVVdTgxcWhOMXkwREk0ZVB0M3pXLzlGdjd5QVpRN2VxNm1TOUJP?=
 =?utf-8?B?RmgyZGdjbjFxT2xJMlNaR1NWQlZZSHdUTWxQWmtDUUJsT3ZqSFRucDNHbEtN?=
 =?utf-8?B?aENMQ2J0SGhRVE00UXk5NDcyQXo4aTA1UWtvbUplQXRXdU5kWlB6ZzUvMCtJ?=
 =?utf-8?B?UDhqY3oyTFcyUERkWnJPd0FsWlpXYkxjUFJzTzlwNGhHamIwV2lTTHFJeE1M?=
 =?utf-8?B?ZEY1T2hpV0pGWXVtdUhnRXlCODN5T3pjQVVwdWJJWStGdnkrbXJmVXRwSVFy?=
 =?utf-8?B?a3d6dmVDL0grdWFBOEh4b3ljdFBkQjFOT0V0Rlp0WjFJdmxSQ3JtSDFuekNX?=
 =?utf-8?B?Z1JqV2RuampRVWZrREJObHZrWldlaTZOSUp2eUJWMzhlaDRmcHdZc2RUUUNP?=
 =?utf-8?B?OEZERU9kWGN3WDlxc09wTE9LOUhjOWY2dWJoY3V4Nm5TZ2IzWklxV1JVS3hk?=
 =?utf-8?B?NnNINUVBZEo2U1dGejE3VXhHRGJZekZkQTRCOG5OTW5hZGhVTXphWHoweW9D?=
 =?utf-8?B?bWI3SitQNVVaWS9LUUlaQmFnMXFReXA0RHBiRDJ4bkFPSFk5Sks1MTVkY1dp?=
 =?utf-8?B?YzF1RVZSbEVzVlF1a0RXaVUrN1RVdnZSY1lxWkkwek5wNkhDaXFrTmliZktQ?=
 =?utf-8?B?aHVFSzlDSW8wNzJUclFHMHlOSnZMUjQyaE5tRGk2OHYrQkxXcXhBM2w1a01y?=
 =?utf-8?B?QXNqdEZwNzlkNGN0cFc2cmVDYmtjeGZBejRlQm9ZQ2MzNjcwTGRoeUMrR2Uz?=
 =?utf-8?B?TGZEZkNmM2VGekUvUXVGWW0xeDBTWmY2QS9GMHEwWHk0Umthd0VSQWZnb0Vn?=
 =?utf-8?B?UGcrVHV3cUlBaENNWU5QS3FwQVcvVlBxT2Q5V0lhdXl1RnlZeWJiYjVmMi9I?=
 =?utf-8?B?VnFjMDBIdWl3eVNFa09uK2R3MXpQQnFWNVcwR1BCTnN3MHhSVzlQZmpLUTJT?=
 =?utf-8?B?VE5OZUhCZjlGd0FpeTlGdWRIbXNKejFORjRIZk50aXJmM1FwbVFDOEVDcERT?=
 =?utf-8?B?Q2VpM2VvbUxsd3ZNMk1NaHFGQ2wrZExQYlBkVG9mTEhpcFc1NmlaVTFZUmZB?=
 =?utf-8?B?cFJDeGc3Umd0NWovUERnQ3ZtQ3A5YllPZHhXdHEvUjNuZUlwc3J2RnkvUXJm?=
 =?utf-8?B?Ym9CdDZmUzRkUUllNDhCMFlJQjRnV0ZnT3F4SW9wb0VUNExtOVc3NkNZcmVM?=
 =?utf-8?B?OXhJOTZiUjY2WmgzRElQaVRRd1FORWhMV0FqZXlOMVFTNmxJU2FCZ252WENs?=
 =?utf-8?B?RWNzYnIwNFZSUzg1cjRqeXpidVFWOWRFWE1oeWZhc2RxU29Mc1laSHZoNmE5?=
 =?utf-8?B?dG1nVGZGKzYxQzZLREVMQTd2WTZwTUVXU2JLY2tBTjZPbHp6dFYyZ0lvY29D?=
 =?utf-8?B?cjAyQVduSDhCc0JVZWpwTnU5TGdPckZyckV5aDluTVdsb3ZPTGpoVWtrcVZx?=
 =?utf-8?B?L2hEbjNzVFhEWElMcW1oZGtMY0Zwek5WTm5PcjlBOTdSaXlhRVRjQ2VDeGs0?=
 =?utf-8?B?T05jRE1ubVFxek82TnpBZ2VNS212MTVyc004QVpNZytIOWdONCt6WWtEdm5m?=
 =?utf-8?B?QU1uK1VRT2w2SEtaa3hCOXQ2U2VkeTM2NTRWWC8zS0s4dDM4RjU1QklvRVVE?=
 =?utf-8?B?a1pycjdTYyt0MjZkWFJCRnptMG8vdVYvWEQ1cGtwS1dnR1hUOUFHZ0ZrR1lV?=
 =?utf-8?B?UlpjVkhTUWxUYW9mcE5qREIvQ2JOQ3NFM3FUVHB6NTlHcGU3S3o1OGRmWFV5?=
 =?utf-8?B?NktEUjhJdkFvMWp3ZU9pQlc3NTRnQXJCMkpHR0E2MlpDRE90b2ZVc2lNbWpI?=
 =?utf-8?B?NmtmTDRGQWpqRHZVTy9LSXducS9laWlrL2p2VUZrRUJJcnZtL2dNeDVJbVV2?=
 =?utf-8?B?Q1IrUy8zd0M3K1FiN2lnNFJEU0lFR01sR1EyaU9Jdmdwai9XaWVRMzVRNjdD?=
 =?utf-8?Q?VeXdzH5HvVKT0BeLsWLP0u5PE?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: a3634cd7-922e-430b-e86f-08dbcff35096
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Oct 2023 16:00:14.3171
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: TvYBWAkDEzWCpwEuAvYyUl/WwZzSu4qTE15R7gUoNFc9CFDLRfk2wTVgJmYY7YW6uTJAH80UJ1/+DkHArh4E6A==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU2PR04MB9098

On 13.10.2023 11:42, Juergen Gross wrote:
> Use named member initializers instead of positional ones for the macros
> used to initialize structures.
> 
> Signed-off-by: Juergen Gross <jgross@suse.com>

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




From xen-devel-bounces@lists.xenproject.org Wed Oct 18 16:01:00 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 16:01:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618710.962730 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qt8yh-0008Uh-OY; Wed, 18 Oct 2023 16:00:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618710.962730; Wed, 18 Oct 2023 16: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 1qt8yh-0008Ua-Kb; Wed, 18 Oct 2023 16:00:59 +0000
Received: by outflank-mailman (input) for mailman id 618710;
 Wed, 18 Oct 2023 16:00: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 1qt8yg-0008UI-3A; Wed, 18 Oct 2023 16:00: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 1qt8yg-0002db-0b; Wed, 18 Oct 2023 16:00: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 1qt8yf-00088B-Hu; Wed, 18 Oct 2023 16:00:57 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qt8yf-0001Gp-HY; Wed, 18 Oct 2023 16:00: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=b/Xb7wXAZDoJB2sJV9NwkBJjCcxidx2ZlhDuieDIUoo=; b=37e04vV0kiIHK68IW58gvI7vWi
	Va8prpcFQYpNhVa9mrDNMZw0dbFSoVHsidc3XMooIkp7QFDTPYVmbcrQrh+tBA1BBohOxWk6BqI1W
	p8Sczs4amaKY9qRb019/i4fkMYfahEbjFhzmQdiyz577qyZr99x1rZIxK3tntDXaTndQ=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183408-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 183408: tolerable FAIL - PUSHED
X-Osstest-Failures:
    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-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-qemut-win7-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-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-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:saverestore-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-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-amd64-libvirt-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-rtds:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-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-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:migrate-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-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=f51c92383b8dc76233481e2814aa2e905fb9b501
X-Osstest-Versions-That:
    xen=7114bbfc8424ee467c6c8c82f077764ca4fa799b
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 18 Oct 2023 16:00:57 +0000

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

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183403
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183403
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 183403
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183403
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183403
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183403
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 183403
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183403
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183403
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 183403
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 183403
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183403
 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-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          16 saverestore-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-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-amd64-libvirt-xsm 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-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-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-libvirt     15 migrate-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-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                  f51c92383b8dc76233481e2814aa2e905fb9b501
baseline version:
 xen                  7114bbfc8424ee467c6c8c82f077764ca4fa799b

Last test of basis   183403  2023-10-17 20:40:19 Z    0 days
Testing same since   183408  2023-10-18 05:18:08 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  George Dunlap <george.dunlap@cloud.com>
  Michal Orzel <michal.orzel@amd.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
   7114bbfc84..f51c92383b  f51c92383b8dc76233481e2814aa2e905fb9b501 -> master


From xen-devel-bounces@lists.xenproject.org Wed Oct 18 16:08:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 16:08:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618717.962740 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qt95m-0001ET-MM; Wed, 18 Oct 2023 16:08:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618717.962740; Wed, 18 Oct 2023 16:08: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 1qt95m-0001EM-JP; Wed, 18 Oct 2023 16:08:18 +0000
Received: by outflank-mailman (input) for mailman id 618717;
 Wed, 18 Oct 2023 16:08: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=4j4C=GA=citrix.com=prvs=648c180f0=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qt95k-0001EB-4X
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 16:08:16 +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 8973adcd-6dd0-11ee-98d4-6d05b1d4d9a1;
 Wed, 18 Oct 2023 18:08:14 +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 Oct 2023 12:08:10 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by SA1PR03MB6594.namprd03.prod.outlook.com (2603:10b6:806:1c9::20)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.34; Wed, 18 Oct
 2023 16:08:08 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::17e3:6cff:b087:fc64]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::17e3:6cff:b087:fc64%4]) with mapi id 15.20.6886.034; Wed, 18 Oct 2023
 16:08: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: 8973adcd-6dd0-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1697645293;
  h=from:to:cc:subject:date:message-id:
   content-transfer-encoding:mime-version;
  bh=ebC+wG1ZPbdqDPS5tUiT2M+u33PQOsOSxn/yfFL0K48=;
  b=HMN/sJOYknpxEKWaY9X8sHHqiO6Xj5ANx7+jBiNsszyWmp2/rDuob9YU
   /GbXcdtB7kZrloMe8s58VaFPA8E3M6+PzTPLix4nfDMqesLL2Djdvza10
   SNjyMlWSQz+hdUj0JiLxjBb+Ccn18IH5RttV88cF7SgadK2kp9JDtaT4w
   A=;
X-CSE-ConnectionGUID: ii2trKc1Sdm3Jrs4EOp7GA==
X-CSE-MsgGUID: jYHXpuitRu6uGXoG0adbyg==
X-IronPort-RemoteIP: 104.47.70.101
X-IronPort-MID: 125963607
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:8MR10qNixtl/0YzvrR1hlsFynXyQoLVcMsEvi/4bfWQNrUol0TMBy
 GcaXz3VOPncZjHyLYx3O9+2pkMHvpaBn9Q3Sgto+SlhQUwRpJueD7x1DKtS0wC6dZSfER09v
 63yTvGacajYm1eF/k/F3oDJ9CQ6jefQAOOkVIYoAwgpLSd8UiAtlBl/rOAwh49skLCRDhiE/
 Nj/uKUzAnf8s9JPGjxSs/nrRC9H5qyo42pA5wxmP5ingXeF/5UrJMNHTU2OByOQrrl8RoaSW
 +vFxbelyWLVlz9F5gSNy+uTnuUiG9Y+DCDW4pZkc/HKbitq/0Te5p0TJvsEAXq7vh3S9zxHJ
 HehgrTrIeshFvWkdO3wyHC0GQkmVUFN0OevzXRSLaV/ZqAJGpfh66wGMa04AWEX0ud2W31U1
 vdBEzwINTKZnL6b56rkZcA506zPLOGzVG8ekldJ6GiBSNwAHtXESaiM4sJE1jAtgMwIBezZe
 8cSdTtoalLHfgFLPVAUTpk5mY9EhFGmK2Ee9A3T+vJxujCKpOBy+OGF3N79YNuFSN8Thk+Fj
 mnH4374ElcRM9n3JT+tqyjx17GUw3ukMG4UPL+J1s5ynVyP/HFNFTImUnTjqPWzm0HrDrqzL
 GRRoELCt5Ma5EGtC9XwQRC8iHqFpQIHHcpdFfUg7wOAwbaS5ByWbkAkQzhbeZoZvck5bTUw0
 xmCmNaBLT5lvaCRSHmd3qyJtj70Mi8QRUcBaDEFS00Z4tDliIA1kh/LCN1kFcaIYsbdHDjxx
 3WAqnc4jrBK1coTjfzjpBbAni6moYXPQkgt/ALLU2m57wR/Iom4e4iv7lud5vFFRGqEcmS8U
 LE/s5D2xIgz4Vulz0RhnM1l8GmV2su4
IronPort-HdrOrdr: A9a23:i+e6+azgwm5PqsbTk/nNKrPwPb1zdoMgy1knxilNoH1uH/Bw8v
 rE9sjzuiWVtN9vYgBDpTntAsa9qBDnmaKdg7NhXotKNTOO0FdAR7sC0WKN+VPd8iTFh4tg6Z
 s=
X-Talos-CUID: =?us-ascii?q?9a23=3AvMi5zmo1FPi+xYh5YHttgT7mUcEkKGHH73yJGEO?=
 =?us-ascii?q?9UkRzU+G4bkfP14oxxg=3D=3D?=
X-Talos-MUID: =?us-ascii?q?9a23=3A2dDeeg9B48cBeV3V9RMfE5WQf8VZw5S2FUERq4h?=
 =?us-ascii?q?Ypua0MgMoMjuXnTviFw=3D=3D?=
X-IronPort-AV: E=Sophos;i="6.03,235,1694750400"; 
   d="scan'208";a="125963607"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=JdYFf1H38Ss7OGzXrSEOIU3QpFruyoUBU8ZSwKMohgtOAinSHkagc+ZsEEEtBr1pgHGYurgr47q3xntyHz6lISG7V0aSLXOvkpnne9wkZBzQ6Y+rMuSN2SEXJrI69AiOXYmV/8aZMywbRGIDOMVRHQINhWrfHOXqoB0ftLqsMirvU3d9Vr7zhFvYnl9G+vhw1JfHCJK6LfMl49eswy36DXeBPEp6Slz3cCRXMN1Ym3l9tVWGXKmmslVddZYSICLxNuzi/CIXspohc4y6mLVpg+lyUXgoHnv6mLl8y9h2LF300YpwCLkfDwEG16OyrrZ7Sxe+ys38BqQaldRfSL233g==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=0NB+b3J380cq5NzadCk1WF4+vrWWrWFw9x7B0e3IBno=;
 b=lAPxyw08+6dSbNJHqY/ZOdBz5fKUqS7XAIChZSUblQ5oiqg8ZI1Sgd93NDz+GJOoNOEioWdFC6baNOKSWzlDZ1JSCzF/7CRK+Dq8r9zxnBjOa4pckJdfJxLZWJQ6b6sVB+i+vAu2RvWEezEa9VjFWry2qRTF8sM0UibgWcevjZmI3nYS5YtlCXjTVp9JV91X5OE5Qal0da2H+Olr0kJVAh0XjxF5VJuP1OSXl7vo5tnI6bkW2LU1OcurDUJblbe/H+z06v+XUPpjvfgDkIYAl+epXysEGx23dTJ7ZCFFSDih9tGZS3AKFG9Kvfcrd28Avh0P2/Aip3baoC5YOv4khw==
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=0NB+b3J380cq5NzadCk1WF4+vrWWrWFw9x7B0e3IBno=;
 b=jUW/G4/oLh/czQTPdj828CTDEAr70AFt9vPEPC+KX2BT293A1Da57/9qg05evwZFb6rryfYQNd3GbLueZKbEkc/GB+bS8s3Ot1kCeyHp/h34wVmxC9mGBYGsGWdTSy9iblxJWjKn8xjEPXQHNKhjjbz0uQZGg5n6EAsGagtujZ8=
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: Henry Wang <Henry.Wang@arm.com>,
	Jan Beulich <jbeulich@suse.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	Roger Pau Monne <roger.pau@citrix.com>,
	Kevin Tian <kevin.tian@intel.com>
Subject: [PATCH for-4.18 v2] iommu/vt-d: fix SAGAW capability parsing
Date: Wed, 18 Oct 2023 18:07:33 +0200
Message-ID: <20231018160733.24655-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: LO4P123CA0626.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:294::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_|SA1PR03MB6594:EE_
X-MS-Office365-Filtering-Correlation-Id: 6419f4c5-aa04-467c-e62e-08dbcff46ac0
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:
	D6R4D+TPAdvhTJDldRE3NyreWILUZ+ty6I1izruLbSLS5EQM7lN4pZx+WYoQEWAJgMYZ3dp3ytb05KC5Bqx9BfiR82CVWPB4eItEhg++/U+PfVALbQ+ageva2XcPAevvKzwmq+5cQKfytPZaDwyJcr1qEYZEGHfAHXTwTrPKBKe9t/qDVzw5R5KwuofQI1Nb69u/6vGRdTlkcAvxyJM8pUsKQjujynCzdNIdpsXliS+7r+ddOykTO0AmaeVEYFOZZrxXcICVhj7l+yfCFRkkqPJb7biWns0B3nKLmB7Vb/195TbL5kaLyWH/7EsVAjAiUJTSzP+BIAWVO1dGUhDhhNEQIBBj33fvpRWydYOTfgnbyzxdZK43O1tsYwaSf2d6umzoMsL+HEiKE24O/86y9tuXGIqczs5PgwAb5w2yHqzNuEwi9A18156HcU7KEB75Wn1pW+lg5Ui2ce5iT2k/anHsHADnw+BpSRav9geaxSfc/i0ZdiV2miimJniDAbN8oMmTenOVSpUAyrWyHQg8AErjAY5/5fROJY/0Lb9J6vrnNO7HbqrO0KzWj2BhK3Gx
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)(366004)(396003)(376002)(346002)(230922051799003)(186009)(64100799003)(1800799009)(451199024)(83380400001)(66946007)(6916009)(66556008)(8936002)(66476007)(4326008)(54906003)(86362001)(316002)(8676002)(5660300002)(41300700001)(6666004)(478600001)(2906002)(6486002)(6506007)(2616005)(82960400001)(1076003)(26005)(6512007)(36756003)(38100700002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?ZDVFNG1qMnVYZDV2RWhVSTFUSVEvTHZGVCtMenhZaHJ4amY3NUNJeXljMWNU?=
 =?utf-8?B?bm9GR3oyZ3hDNURRUUxycEtuT3hZQWJISkx4djE2eG41eHFYdXRtbzdzblZ4?=
 =?utf-8?B?WGhqMkRvVHdUZm1LTHJ3dDU2ZDBMNEJuY1ltWi8vaERZSThHUEZjc0xNT0V4?=
 =?utf-8?B?aERGN21BNkdrUk5VYzZVbk82OHNCbVVXTkQ2RmxDNnVDbUtEWGs4djJoMk41?=
 =?utf-8?B?QnFITmNMb053UmQ5YlZqUkVBOG9nQ2lEWHVhOVJwSzl3TWoxK045K2FEZnZp?=
 =?utf-8?B?UlQwR2JQL1RSMFpGcWpaS1VHMGtzVzdZQWZKdWNUdklLOTFtN2IwcVlPZ1BP?=
 =?utf-8?B?QXNOSHgxS2l5MytlREdhYUh3Njl3UEIrVHBiZkhBU25SK3FCdE5UN0hMZEdq?=
 =?utf-8?B?RXpPbndRYmxnalIrbm9KbGc4cUxHQWxET2JpcEo1VjFXVWlNbythZ2NxK0lQ?=
 =?utf-8?B?MFNCK21IWXkxY0dSS3IyK1hNd3VLL01OdytBNm5JYVdTNlRxTDVVeXFMTHFz?=
 =?utf-8?B?d1dUajZaM3BVekVOZEtQdjN6VjVEVXIvNFhmSnpuRHdhaVpsdUNmK203aERH?=
 =?utf-8?B?UmpZTkVYSTlFOWRMbDhsenovWlhyc1BkZS9pUnd3K1lZUGE5SDEraVpSMlJa?=
 =?utf-8?B?RTJtVGxaVkgyelZ6ZG9xSldDdXZ6Mm9QOEh6K2kvVkFyOUhLcWpZT1pweEV4?=
 =?utf-8?B?UkFIZHAwWnNvRnp2alVhNnljUjBnWmx1cUNpZ2RNczhta1dUbll3WFYzZTVG?=
 =?utf-8?B?ZVFWZU5PbkViVG14d0hXVHBsVU9YSm1KaWttczBhSWRGYVNaUDcwTE0zdFFQ?=
 =?utf-8?B?blB1QnkwN0d2UjBlQjZ0ZGo5YXhWOHNhdWgzaVhQbkppUmFKYXhDbHZvRzVv?=
 =?utf-8?B?akx1ODJKWitCYTIxSFFlcnZXTE14cUJOZlJ6alB4REtxZmt2N3NWY0dteWxn?=
 =?utf-8?B?cU9tVGl4eldPazBhK3c4M1RxUlpod2hQTmFpZjdWSDRkSzN5Q1VwVy82UHlL?=
 =?utf-8?B?UWw3bStDV1pvckJvTzI5S21KUytTeERITWF6REpuOE4wZmRTK2lKakR5WWU1?=
 =?utf-8?B?dGZMeTNIc0dqY0w5a1ZyRnRkdnR4N2YyelArMG55dWZOMHZYbStvczdmN1N0?=
 =?utf-8?B?b2tId05CMXNiRGIzMlNsUVdPQWRaR09Ib1c0ajVKSmVQbHRzOWZLMExVZzU0?=
 =?utf-8?B?NndDNjJKQXp5VHZ2VmppK2NpS2Z6RVdEUVNLMmtPOHJWRkQ3K0dyTGpVTURy?=
 =?utf-8?B?UWJiK2NBaEk0ZlVjaE9VQkFvVTFXem02K0RIVGxKbWNMbEZRTG0weWFUaHJQ?=
 =?utf-8?B?RFFuazlwL0xwTzZ0LytpY3IwU0UrYkR1TkN2elVLem9XM255R0N5TW51U2Fk?=
 =?utf-8?B?QXROUURHeUs5b1pmVTdyejM5a3gwclNrWGhDT3J5aEs1azR2U1NJZnA2bita?=
 =?utf-8?B?UHhKWktEV0hqZmdFenZ2TWpodHdNWE13TEFoQisvcHlDYXVnamVvUk51b2Zh?=
 =?utf-8?B?MjNCRzRiZlQvSFZuZERrd3ZhbVpZR0FiQjR6YzFVQ2NYMTZJQ0piREtISHl2?=
 =?utf-8?B?MmZmeHY4cHNGT2h3RlppU1V1b0NUUGFCQU5icEFyVFRGUUVIckZzVTI5SXJu?=
 =?utf-8?B?aHc1VFBySGluZFlYME5NaTJxYmx3M2RmbDllMy8vZnVlTXAvU0c1U25nZTBo?=
 =?utf-8?B?SFhURmZpNUhJQlB6VVJKRzBOd3pycnBQZWlLaTRsUGZBWHFxRmw1M1JzdldL?=
 =?utf-8?B?Q1JOKzM1TnFQRTY0aUNRcGZuRk1hM2wvWkN3L2YwTURtc1VQd2pPcnl2aTd6?=
 =?utf-8?B?WHdCMDV6R2tKZ3M2Z2Q1RmVGM01yZ2JEZXdZVnFTK2l0NFIwNTJ1bU5laUVt?=
 =?utf-8?B?MzMveG5wTUdaZ09LWnZkOFhMUzVSeVpPM0xKYWlQUmVJMm1tOGYyRmxMVVcw?=
 =?utf-8?B?NVJTd0pkK2RISHBZWGdIU2IxNU5RQjMveHJ1Mlh3NXR1b3pIR3dReTUxUjgy?=
 =?utf-8?B?cmp3OW4rakxVQU8yZytNenFaNTU5N3FsV3BJREZIOFVMNTNmTHY0UTlMM09P?=
 =?utf-8?B?UWowMHQwRVFXTXVlTkJFR2dNZytML0tXU0dxeVZ3MlJXZUxOZm9Rd3lCbGIv?=
 =?utf-8?Q?YHjfuF93/bHNqVGLjV4g5eY/+?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	wLZnkHt67yXJZBaO75CM1oukEQdZ6NBxxTG++bNElOhifpwBp9AJWAFryZ3hpXZhp/dkM/pH8lONvtfFcw7KO/qhjRcfiCNZVy7Ixxb3JlP985A9se79qyUMoJZF3sOltUhvxvj6xIIqd9FZJCFeHdpPIHD0/nrPIPf8DZ+5XSA4vo6VVtIz146uFfpRkDyQ713k/szoBYhwCknG+ecH4E5r9iOQ1g3ZF+jNN9l1tic/aRUGrGK2dZpCD9UQF1SvRGJAcwo+pwAcv6MAHcMI4u0MLxZa4nPLm6b5IQZLMcIiB1Wr3d0hkwuzyAQUt9eI0i93mzykK1OeQW2NuWLCgWAq4IUIfIDkTnCR4mbbflwSb3Q7QMA+jw0gkRJMOVazMyZVugGSDck+X6vTDuclEw3UaV1E2KTcWPx6wIzA4b43dpRZRIGI7vXddbRtfqI47Pb99Qlliygp3RjIgGXIPLwKDNI/YGgru+xp3KzJGMS5mQ3ozhv3/HS2spP5PYryVnZu1Csq/+H8kS2RylD2Xh5b+3p437JwXXym1imzf3N6hQKSwUbh/LN6A3hQamHRr1aTyUTf1seYJsNPJJ4Pf4p8pvjCgaDHvZQm/hsTLxLcw6HfTA2zL51i32w+2kmA6Yysodi7BQVDnWH7ET2dpB/D4wK1kPLHn9vrm5eVNEppvYjsz9pvh5jYj1TWvCAxyJhi0o2ezE5x/2cWF2dh1dRmTTMq7MqkSIMjBRm8wJ46TZUNMtSxau7IBl2aYFBtv3ChWwPVQnq/4TD8Q0C1Hcbpcnto41WDUCKVadx35cMCMRXcjuHRIWhxUpzJTzfgwGj3mSJSRvIhPM/lVHqonKp/SoQyrcZHMRhYMXw5+s8=
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 6419f4c5-aa04-467c-e62e-08dbcff46ac0
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Oct 2023 16:08:07.5696
 (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: wNFnN+QGdbowu5Odd3q+LWnjg5SZfdks63QWyaIWPaxyDOjS2WhJarIENVcHuSKawD6t+wvqiXA1AdUoJboNZQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA1PR03MB6594

SAGAW is a bitmap field, with bits 1, 2 and 3 signaling support for 3, 4 and 5
level page tables respectively.  According to the Intel VT-d specification, an
IOMMU can report multiple SAGAW bits being set.

Commit 859d11b27912 claims to replace the open-coded find_first_set_bit(), but
it's actually replacing an open coded implementation to find the last set bit.
The change forces the used AGAW to the lowest supported by the IOMMU instead of
the highest one between 1 and 2.

Restore the previous SAGAW parsing by using fls() instead of
find_first_set_bit(), in order to get the highest (supported) AGAW to be used.

However there's a caveat related to the value the AW context entry field must
be set to when using passthrough mode:

"When the Translation-type (TT) field indicates pass-through processing (10b),
this field must be programmed to indicate the largest AGAW value supported by
hardware." [0]

Newer Intel IOMMU implementations support 5 level page tables for the IOMMU,
and signal such support in SAGAW bit 3.

Enabling 5 level paging support (AGAW 3) at this point in the release is too
risky, so instead put a bodge to unconditionally disable passthough mode if
SAGAW has any bits greater than 2 set.  Ignore bit 0, it's reserved in the
specification but unlikely to have any meaning in the future.

Note the message about unhandled SAGAW bits being set is printed
unconditionally, regardless of whether passthrough mode is enabled.  This is
done in order to easily notice IOMMU implementations with not yet supported
SAGAW values.

[0] Intel VT Directed Spec Rev 4.1

Fixes: 859d11b27912 ('VT-d: prune SAGAW recognition')
Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
---
Changes since v1:
 - Reword commit message
 - Put a bodge for SAGAW bit 3.
---
 xen/drivers/passthrough/vtd/iommu.c | 15 ++++++++++++---
 1 file changed, 12 insertions(+), 3 deletions(-)

diff --git a/xen/drivers/passthrough/vtd/iommu.c b/xen/drivers/passthrough/vtd/iommu.c
index ceef7359e553..d2211ecc0b1b 100644
--- a/xen/drivers/passthrough/vtd/iommu.c
+++ b/xen/drivers/passthrough/vtd/iommu.c
@@ -1327,15 +1327,24 @@ int __init iommu_alloc(struct acpi_drhd_unit *drhd)
 
     /* Calculate number of pagetable levels: 3 or 4. */
     sagaw = cap_sagaw(iommu->cap);
-    if ( sagaw & 6 )
-        agaw = find_first_set_bit(sagaw & 6);
-    if ( !agaw )
+    agaw = fls(sagaw & 6) - 1;
+    if ( agaw == -1 )
     {
         printk(XENLOG_ERR VTDPREFIX "IOMMU: unsupported sagaw %x\n", sagaw);
         print_iommu_regs(drhd);
         rc = -ENODEV;
         goto free;
     }
+    if ( sagaw >> 3 )
+    {
+        printk_once(XENLOG_WARNING VTDPREFIX
+                    "IOMMU: unhandled bits set in sagaw (%#x)%s\n",
+                    sagaw,
+                    iommu_hwdom_passthrough ? " disabling passthrough" : "" );
+        if ( iommu_hwdom_passthrough )
+            iommu_hwdom_passthrough = false;
+    }
+
     iommu->nr_pt_levels = agaw_to_level(agaw);
     if ( min_pt_levels > iommu->nr_pt_levels )
         min_pt_levels = iommu->nr_pt_levels;
-- 
2.42.0



From xen-devel-bounces@lists.xenproject.org Wed Oct 18 16:13:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 16:13:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618726.962750 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qt9AW-0003Sy-87; Wed, 18 Oct 2023 16:13:12 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618726.962750; Wed, 18 Oct 2023 16:13: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 1qt9AW-0003Sr-51; Wed, 18 Oct 2023 16:13:12 +0000
Received: by outflank-mailman (input) for mailman id 618726;
 Wed, 18 Oct 2023 16:13: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=4j4C=GA=citrix.com=prvs=648c180f0=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qt9AU-0003Sl-Ra
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 16:13:10 +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 393e3238-6dd1-11ee-98d4-6d05b1d4d9a1;
 Wed, 18 Oct 2023 18:13:08 +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;
 18 Oct 2023 12:13:05 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by MW4PR03MB6569.namprd03.prod.outlook.com (2603:10b6:303:128::9)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.35; Wed, 18 Oct
 2023 16:13:01 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::17e3:6cff:b087:fc64]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::17e3:6cff:b087:fc64%4]) with mapi id 15.20.6886.034; Wed, 18 Oct 2023
 16:13: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: 393e3238-6dd1-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1697645588;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=DCWeesufpX4Jx/xDEbYF9J/S99Wsdw/u71csJi3Wzqw=;
  b=if3F2f+v5iLvjxGWcT5GwLRCSLZE+rA1xkwbK6PtgCCT+YtiouViQ/al
   bvQBlIxRN21okjnniJDkhwk11lnh6x0mIMX+YsCESJpSW19UtX/JUl4Ux
   PV7dzfbNFi0k6XWjzBvyBCQwO2s187iZo2HSD28FDl+043hk70P5MnDzs
   E=;
X-CSE-ConnectionGUID: jSuojjOeR9Sq2BocmwaXcA==
X-CSE-MsgGUID: uHpI7K6qSXeBn8rrAimpHQ==
X-IronPort-RemoteIP: 104.47.55.168
X-IronPort-MID: 125832903
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:4JuN7a0DnM7UauswsvbD5RNwkn2cJEfYwER7XKvMYLTBsI5bpzNSy
 WtNDT3Sa/uOM2Hze9skO9yy/B8Fu5LUyIQ1G1ZopC1hF35El5HIVI+TRqvS04F+DeWYFR46s
 J9OAjXkBJppJpMJjk71atANlVEliOfQAOK6UbaYUsxIbVcMYD87jh5+kPIOjIdtgNyoayuAo
 tq3qMDEULOf82cc3lk8teTb83uDgNyo4GlD5wRnNagR1LPjvyJ94Kw3dPnZw0TQGuG4LsbiL
 87fwbew+H/u/htFIrtJRZ6iLyXm6paLVeS/oiI+t5qK23CulQRrukoPD9IOaF8/ttm8t4sZJ
 OOhF3CHYVxB0qXkwIzxWvTDes10FfUuFLTveRBTvSEPpqFvnrSFL/hGVSkL0YMkFulfA1pT8
 v4aDz03Pyua3cixy7ekQ9lnr5F2RCXrFNt3VnBI6xj8VKxja7aTBqLA6JlfwSs6gd1IEbDGf
 c0FZDFzbRPGJRpSJlMQD5F4l+Ct7pX9W2QA9BTJ+uxqvi6KklwZPLvFabI5fvSQQspYhACAr
 3/u9GXlGBAKcteYzFJp91r13LKfxnmqANl6+LuQ695yoQKwmHUoOBA8Uwuhu9C4j1aeYocKQ
 6AT0m90xUQoz2SpRNTgWxyzoFafowURHdFXFoUSyAyL0LuS3A+fCUANVDsHY9sj3OcpQRQ62
 1nPmMnmbRR3uaCRYWKQ8PGTtzzaETgYKyoOaDEJSSMB4sL/u8cjgxTXVNFhHaWpyNrvFlnNL
 yuiqSE/g/AZi54N3qDip1Tf2Wvy9t7OUxI/4RjRUiS99ARlaYW5Zouur1/G8fJHK4XfRV6E1
 JQZp/WjACk1JcnlvESwrC8lR9lFO97t3OXgvGNS
IronPort-HdrOrdr: A9a23:N+tmP6MHREMfw8BcTqKjsMiBIKoaSvp037BL7SBMoHluGfBw+P
 rCoB1273XJYVUqOU3I5+ruBEDoexq1yXcf2+Us1NmZMjXbhA==
X-Talos-CUID: =?us-ascii?q?9a23=3ADjFTl2n9eQXhq8l0XcA9Sbb3w/DXOX/m0XDSIWi?=
 =?us-ascii?q?1MzdSUee/TlSV56pUmOM7zg=3D=3D?=
X-Talos-MUID: 9a23:8xTXpwuWODUuAvUlsc2nmRF6FZhLvb2VOE0nl8UcoeCFMDRQAmLI
X-IronPort-AV: E=Sophos;i="6.03,235,1694750400"; 
   d="scan'208";a="125832903"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=AKpE2hAHyGzSP975yjeZ18jWyt7oy/1W7N5IULwhfaVIiknt66UdpEk10yb9ezXCJPbNRkGDsqmuMn/EhTQ+PIbhGFJM7K1BM88gCOHvL8i7wDua5we73HCEAsL9eoy6qZIS/SJGJBX2+3hvxTxdZcjIRik3ibwD40VnWtI7BxZ0+bzh/WegRVbG/+hD5Nz+7+IpZcTZ7xTvLY1Krqy3b1rFXQ5u0ip10xdeuWashsOHZcsf1zL5B1eEx0rW18VEnT1seRTz2+k2ZgyfmBqMxkhMWCFX+WK7U6RbBOJWDpeDnCASHN8sXgV/plAj6jyc+11GGQHafm53wsNQBq4B8Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=8ImUFCvbRcnRGlo1h1B+NH6f0YDU46KvTsjMng3UQXk=;
 b=W9kAioEOhNFGZ8ycsQ/DSwo9oEHebVUmUAueVTY283PUwYfKWRdiuOPKB6fY3PSYFXzZTqjupFavoY8iI5ZKFZLHqsr2Ky5pwbhO9sraPPohAbBLzcuLrV8AcUBNR8YgbwZSM7nhuv1ls1iGPnhsity+MeTbuz5NwcKUggGcsfk7L4uAKMbtmtv9Bivhhl6Fpt1N26vlHD6c/fSetvrqovhJv9p901fKjthERwHeofz+y91Pt+1gejiOZjGdG6XvqKbhhDjGXNZGzNEnKPKX398XB2sNrR+6J/JvxYYvihAWDYRYjykZEiS1Qrq3AFbaY4fuySBsHRhKI1jO8JaCDw==
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=8ImUFCvbRcnRGlo1h1B+NH6f0YDU46KvTsjMng3UQXk=;
 b=VdkPHYOkW7z47h2FP87W3Pa9b0dfJkS3hsWrD+lAufuGIBG2QzYqqjic3xnZv+UFx59uIB9j69h/fuZTNJ17mnYKbFvgVbPXdTIn5/z5LUxj0LRvxnDsbsee2ABAoSk5uQaI3hGT4sUGJbQ84H6kOA/wQx04RjxK3NGJbxiLS54=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Wed, 18 Oct 2023 18:12:55 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: Henry Wang <Henry.Wang@arm.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
	Paul Durrant <paul@xen.org>, xen-devel@lists.xenproject.org
Subject: Re: [PATCH for-4.18 v3] x86/pvh: fix identity mapping of low 1MB
Message-ID: <ZTAEBxMjHAHdlfS3@macbook>
References: <20231017082907.14455-1-roger.pau@citrix.com>
 <f1ef0a3d-fbca-51ad-f282-fe3b9d49414b@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <f1ef0a3d-fbca-51ad-f282-fe3b9d49414b@suse.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_|MW4PR03MB6569:EE_
X-MS-Office365-Filtering-Correlation-Id: 13656dfd-a4a0-4086-e7ee-08dbcff519c2
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:
	BTLOFNMQ+FuswctwAfekJ1xq6aGaYryL4NLC/o5UNj8Q2metTXcsECN/cZXaLmVuElOpx8j+Uo5QJx0aUulNcnT3by4tLN1DsWB16TaBNYEyXWuUqR5M/LQEaMuDS6qRB+LLY1kAsBUcJO+P1cqVXHxkawj1s350YC+sljV7QsLKA/OwC8QN8pD212Y94uGMLfRDqC5aWvCuh3rrsXY937W5/FNcx0MDOgarPOCiOeVbT/Gsb2sdXdohwozjbLY478U112u+1lH7EYt43en185sVedHJfscUPMmFgtBoU8p4eFHvIoJ0MbuT/vdIIN7zFXXOwqKwwVHJu64DXwCsuEgGQ3TOuIpU+GBTAGv4Zlw4hPzbWyxpR/Zi/3BVa1s5E6tPrDTUrPpIUW8ZDbj10UdMkFX90nJ2sPyNaekkpE+Q1rSndrxEYzwyBTCUTxZceUBgI1FyRaw/ZlXC8yMbR5lD6wuxXwduupYyAYL7zcEuxw1zJ8bzWqRp/sHv8+39hgasZ59Q9FD7mo2yAbrM4H06ay65QeIMogVkwZ01RGdOonDkBhWz8InDgM8PD9ma
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)(346002)(396003)(366004)(230922051799003)(1800799009)(64100799003)(186009)(451199024)(6486002)(316002)(478600001)(6916009)(54906003)(2906002)(6506007)(66476007)(66946007)(66556008)(9686003)(5660300002)(4326008)(33716001)(8676002)(26005)(6512007)(41300700001)(86362001)(8936002)(85182001)(38100700002)(83380400001)(6666004)(82960400001)(53546011);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?NWhITXZWYVpia3VCZUROSDl2RmxFTTBrMFowU0ZzbGJ4NzRrUFAxOUt2WUJp?=
 =?utf-8?B?VlUvQWRTMldWM3B0Wm1CSHpSZURVSEpOdDNuMXdaeVlqWko4aGt4cnE3a0hs?=
 =?utf-8?B?WGVmckZKb3pmVCtNaCszbk1JY2d5ZEh0dVU1amJDWlM1T3dVOWFsT3k1cWFI?=
 =?utf-8?B?WWNVbjZRZ3V4RzZBWHBRUlF3SzkwaEovblpmeEFzNGl1OVk5ZEFldkF6T1hH?=
 =?utf-8?B?SlZIajQ5dXRzcmpOYklJUmZIS2VHMG9Jckl3ODFTQzRsczdYYlZveHRiVGsw?=
 =?utf-8?B?VDBEZ3VwTXhnV085eVowZEhJR2hxWExlTUJ1eE1JNy9PKzNzQ2VZcXUvZElu?=
 =?utf-8?B?UkV6YVlHZjNkbUtidHB1NGpkNHZDTlgwSkFNNnV0cVBqWmd4ck4vdmhESzlz?=
 =?utf-8?B?VGRpeFNpdWJwa2F5emRwTVRvUDBiK0lRNjd2YjA5Rm1xdHRvN1ZiUUxpTkxX?=
 =?utf-8?B?TWRCV3JoWndYY1RhT3kxUEpKVzJBR0RLSDZ4Z3RseU1IemRXNnlJMzkrNi9r?=
 =?utf-8?B?aktZa2wrZ3ZPUzZaWHZldUloUGk5VUF6TWxVQkxjM0RrazRPSDh2cmVCK042?=
 =?utf-8?B?Q0hFWEJrcUkvcWw5R3RzRE85N2ZsV3lJVWtpMUJMYjkxQzlRWmZOU1ZYb05j?=
 =?utf-8?B?NXExajh0ZEJzYnhwb1ByOVA0UjA2bzF2eXEwQk8xTlpwdHB6eWh1eXg2dllT?=
 =?utf-8?B?czVQRE9OQXBQLzVoMW15ZGVCbmpodXA1MG14eWVod0xSZ3c2WVcybTNPdTlI?=
 =?utf-8?B?UXBWblNSRDZ3c0ZhcmZPbDB2emxZNTQ1Y0dnYmxkZ2ZoSG1DaFpwRFZJOFBR?=
 =?utf-8?B?SFRtRk82UG0xR1BwcDhwMDhzdUQ3RGo2b3hCbnc0VHlPbHJIZjFUMHRRdmt2?=
 =?utf-8?B?QWJOOUVvL2VWdUllRnc4aEpmcm1kNTRpRlRPcXBEMDZhbHdZYWs2cVlYV1JP?=
 =?utf-8?B?cm0xNEsyZ2pNUkxVQXNpR1F1djZ6eVcyTzNwbEJGSXFQdWhQYnh2bW5GNHRr?=
 =?utf-8?B?eHJlWFVQcCtwQ1JjQWJIL1g4OStFaVNKczNaVkVSeFcxRzlRaStnb2hYeEEx?=
 =?utf-8?B?K3pDenRoUStXeHFHb0xhQzZEL05iNDdBMFBGc0JWOVNNRzRaSEtEL212YzBF?=
 =?utf-8?B?TEFOMlhHejVsWGlENnpXQ2UyYnZOdUtRU1paQlJZOXFEWmZSVkJ0U3J2eWVC?=
 =?utf-8?B?T09COFhPYXNsTTl4SVlDVTR3SDdUTEh6SHlPR3RtT1JjUG0yb285VmYzWWps?=
 =?utf-8?B?TXl0anJza0JDMVZjVjd0MG9HNkhNTzRpMU9qUHNqMEJ6SzhEKy9ScXROcUVi?=
 =?utf-8?B?WWVWNGlMYXNCeEs5czZEdnFDYjNUN2V4ZFN2QVBEdlgzSU5pYS83SDg2cDBG?=
 =?utf-8?B?a3FWcThlYXVKSUtNWEFnOG1LVEJyYnVRbUtxcldGZkJ1TnJjSkNCanlpZERU?=
 =?utf-8?B?UGhnb2hWQVBlK0Nsd1hUazZUZ09wSExJbTlJcW83eWx3NWxzcm5hcWpralJ3?=
 =?utf-8?B?VXFuYU9RdmNsdmtVMEtIMUV6Q0ZybVBZNDR3dVlvdFQvNTBDZ2V2L29BUjh4?=
 =?utf-8?B?VWZaWWVMd2xRay9ObktKeWsyMFY2UElpZ2FjeGpIVzR1NWJVYlQvY1lOZVM1?=
 =?utf-8?B?dDFzYklmRVVJWld0YTBlZHFQT0U2cmhyNkpqZzFpUG9xSHZTQjlCNUJ3QTVM?=
 =?utf-8?B?SXhCL3cvS2NnUWdXMVU0eEFQS1pGMkV0YTY0QWRjL0hlcFpmMjJZM0hFeURL?=
 =?utf-8?B?MHNQMEFKM1pwYndsOWFEb3VzM0dML1A3T2s2Tm9lc29LRFg4RmpPaTJyTjJk?=
 =?utf-8?B?RUxXN21GK21Kdm1QVHp4L3JscUcxU0tMSEx6ei9LREJ0RVRYK3lvQ0RNTmVk?=
 =?utf-8?B?aVBJQXlKMU9yeFZaUHNoZ29TSkpwSFpZOHNhZThMdDFUOHROQm1KTFhwVU5r?=
 =?utf-8?B?VUtERjJZT2N1Mmt3TUNtcmNPek1KWExMR3BjYjRkQ0kwMXdjeW56Tmdqb0Jz?=
 =?utf-8?B?NU9kR1BzV29pcU5hdkdOcTd6eGZ3S2VUUGpPWXU4b1lHOGdVbWgvNUNOaTh2?=
 =?utf-8?B?a1VDcWtTcEhCRUNGVGkyN2h0cFdLcGNYNjh6ci9MTXBnSVRhNkV2Ync3d1N4?=
 =?utf-8?Q?0ja6CS8T5FEXTVZRTF43WuIHi?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	VSBjJUY8wbaH1YvESnKNKElUSpyFttkHzvJVPjOiGsy04Dym3hgf2K6yMAByQ/QcMQ4OWWuFQhD9v49r9tDpc+/xs5kOHbD5516FUiC4rI0Y2w0lqrzL55IRN2s0L6DP3wCGPBNZ8j9LXEfmFewPtRFrEA46bEW4tGNgbfDfyjwTcp48qrJEbvFGfVHNH3Xo1hq+az9xuSNq1BPqqHSb2WL0x/cnw07OCz/Vo4NS21w0yJAo1TV9SLpw8gV59J/riRo9Ev3gUL370Xn4/lEJK4yhdx8Xi08o18mNsRJ6QoUT9lVw0sm2Lh7B1hduoZWBDxEhoWHqWgMxzHyGd5uQzjdjHOi3di/vZl6G3ngj0o/lg4Vhyw8QlfqIdzWClQoPjnDl54bAar8g82VnZBEV0PhE11HmDjrUpEqoTmpNdhRRCz/mGYsiW1UskzVdfb/Nwqrka9TY5bkzzVqK/bbsJHdELmW27Toc1jrO3BTyyu5n5JYovRPEbMl/p8ZBSv83R+nzb+jEGA3B6t+E42v78IansDB3EZYl8W24dRbJy58mqjt/TzpYFXs+3uoA9XaPBU9nxHYBoZjtoSWn+ErzC71GTFCqVez4jBaOzKbiq4sl3hcn31kCB7EepL8fuxESwuXF0ch6Zjy23qZL1cO42saZbcXijgi2MsL2dyMbaG0ehGW3G876k8UD0tchMSHUX1xEQ5DfJygpthlKz1vQAvA5gTBYHDo780pJvwZTcNQu/3V4v7rTA+3v7KupUIJKabz2Dt/9oDCA3Mr77jHQ5GM8swuSVDAMa6i8UEqJriQoZLkdCIdl7SMLz0noC2TnwRxuCgogH0rBC3d5rcf8oWEBLPBumm4Ei9PrlY16QCU=
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 13656dfd-a4a0-4086-e7ee-08dbcff519c2
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Oct 2023 16:13:01.1045
 (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: 1VakbY6aGWnxhokUZbEdcpKvF4+febGYdNg3FFlqJWu5bNg4U8eJiGEdpFvqCPQ5ohhPMW/GxKHSrtMQxl7bDw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW4PR03MB6569

On Wed, Oct 18, 2023 at 05:11:58PM +0200, Jan Beulich wrote:
> On 17.10.2023 10:29, Roger Pau Monne wrote:
> > The mapping of memory regions below the 1MB mark was all done by the PVH dom0
> > builder code, causing the region to be avoided by the arch specific IOMMU
> > hardware domain initialization code.  That lead to the IOMMU being enabled
> > without reserved regions in the low 1MB identity mapped in the p2m for PVH
> > hardware domains.  Firmware which happens to be missing RMRR/IVMD ranges
> > describing E820 reserved regions in the low 1MB would transiently trigger IOMMU
> > faults until the p2m is populated by the PVH dom0 builder:
> > 
> > AMD-Vi: IO_PAGE_FAULT: 0000:00:13.1 d0 addr 00000000000eb380 flags 0x20 RW
> > AMD-Vi: IO_PAGE_FAULT: 0000:00:13.1 d0 addr 00000000000eb340 flags 0
> > AMD-Vi: IO_PAGE_FAULT: 0000:00:13.2 d0 addr 00000000000ea1c0 flags 0
> > AMD-Vi: IO_PAGE_FAULT: 0000:00:14.5 d0 addr 00000000000eb480 flags 0x20 RW
> > AMD-Vi: IO_PAGE_FAULT: 0000:00:12.0 d0 addr 00000000000eb080 flags 0x20 RW
> > AMD-Vi: IO_PAGE_FAULT: 0000:00:14.5 d0 addr 00000000000eb400 flags 0
> > AMD-Vi: IO_PAGE_FAULT: 0000:00:12.0 d0 addr 00000000000eb040 flags 0
> > 
> > Those errors have been observed on the osstest pinot{0,1} boxes (AMD Fam15h
> > Opteron(tm) Processor 3350 HE).
> > 
> > Rely on the IOMMU arch init code to create any identity mappings for reserved
> > regions in the low 1MB range (like it already does for reserved regions
> > elsewhere), and leave the mapping of any holes to be performed by the dom0
> > builder code.
> > 
> > Fixes: 6b4f6a31ace1 ('x86/PVH: de-duplicate mappings for first Mb of Dom0 memory')
> > Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
> 
> Reviewed-by: Jan Beulich <jbeulich@suse.com>
> with one suggestion:
> 
> > --- a/xen/arch/x86/hvm/dom0_build.c
> > +++ b/xen/arch/x86/hvm/dom0_build.c
> > @@ -449,7 +449,7 @@ static int __init pvh_populate_p2m(struct domain *d)
> >          }
> >      }
> >  
> > -    /* Non-RAM regions of space below 1MB get identity mapped. */
> > +    /* Identity map everything below 1MB that's not already mapped. */
> >      for ( i = rc = 0; i < MB1_PAGES; ++i )
> >      {
> >          p2m_type_t p2mt;
> > @@ -459,8 +459,8 @@ static int __init pvh_populate_p2m(struct domain *d)
> >              rc = set_mmio_p2m_entry(d, _gfn(i), _mfn(i), PAGE_ORDER_4K);
> >          else
> >              /*
> > -             * If the p2m entry is already set it must belong to a RMRR and
> > -             * already be identity mapped, or be a RAM region.
> > +             * If the p2m entry is already set it must belong to a RMRR/IVMD or
> > +             * reserved region and be identity mapped, or else be a RAM region.
> >               */
> >              ASSERT(p2mt == p2m_ram_rw || mfn_eq(mfn, _mfn(i)));
> 
> Would you mind wording the comment slightly differently, e.g.
> 
> "If the p2m entry is already set it must belong to a reserved region
>  (e.g. RMRR/IVMD) and be identity mapped, or else be a RAM region."
> 
> This is because such RMRR/IVMD regions are required to be in reserved
> ranges anyway.

IIRC there's an option to provide extra RMRR/IVMD regions on the
command line, and those are not required to be on reserved regions?

Otherwise LGTM, so would you mind adjusting at commit?

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Wed Oct 18 16:57:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 16:57:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618731.962760 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qt9rQ-0005pO-Ki; Wed, 18 Oct 2023 16:57:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618731.962760; Wed, 18 Oct 2023 16: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 1qt9rQ-0005pH-Ha; Wed, 18 Oct 2023 16:57:32 +0000
Received: by outflank-mailman (input) for mailman id 618731;
 Wed, 18 Oct 2023 16: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=B+S+=GA=arm.com=Bertrand.Marquis@srs-se1.protection.inumbo.net>)
 id 1qt9rP-0005pB-82
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 16:57:31 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com
 (mail-db3eur04on0624.outbound.protection.outlook.com
 [2a01:111:f400:fe0c::624])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 6acb83ff-6dd7-11ee-9b0e-b553b5be7939;
 Wed, 18 Oct 2023 18:57:28 +0200 (CEST)
Received: from DBBPR09CA0044.eurprd09.prod.outlook.com (2603:10a6:10:d4::32)
 by GV1PR08MB8009.eurprd08.prod.outlook.com (2603:10a6:150:9b::6) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.36; Wed, 18 Oct
 2023 16:57:19 +0000
Received: from DBAEUR03FT015.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:d4:cafe::6e) by DBBPR09CA0044.outlook.office365.com
 (2603:10a6:10:d4::32) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.36 via Frontend
 Transport; Wed, 18 Oct 2023 16:57:18 +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.6907.24 via Frontend Transport; Wed, 18 Oct 2023 16:57:17 +0000
Received: ("Tessian outbound d1b3e404ba03:v215");
 Wed, 18 Oct 2023 16:57:17 +0000
Received: from d88b962c1cae.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 B2B15E3A-D1EA-4B49-BFF6-A9420AACAFD1.1; 
 Wed, 18 Oct 2023 16:57:11 +0000
Received: from EUR03-AM7-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id d88b962c1cae.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Wed, 18 Oct 2023 16:57:11 +0000
Received: from AM6PR08MB3784.eurprd08.prod.outlook.com (2603:10a6:20b:85::25)
 by AS8PR08MB8372.eurprd08.prod.outlook.com (2603:10a6:20b:569::5)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.36; Wed, 18 Oct
 2023 16:57:08 +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.6907.022; Wed, 18 Oct 2023
 16:57: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: 6acb83ff-6dd7-11ee-9b0e-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=9SSYl09/YNSdJREsa4NJqyceIX6U7xNIcXTttQPm2ec=;
 b=62ERlDbxYQgLzHFb9CbDKUFJKKckPrpVmbVFlu8Zi+clhwtorPvbwus8afr174e1wiov73qOzrTDEJWYyaZgpSzaYNFo1yzbHUwIPyiLBY6fE689fyxYKPqNL85ma9n1jZCoS8x88IXBk3i9W7rrJ1QKqldcuVRBfBP30/mdJqA=
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: 902c6696850cbd39
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=BBT3nAMPr83g929ZcUL1nLTNEFOLYgbI5xl1cxyPq3qiYSc5c8eLJ6nQ/vkx1GwyrwLLLxSeLlw/k3Ao7u/sAIaA4Tq+0nPxDPcRuPUZ7RHe/gTG+GDi1Qoed5N3VZTAisUuInj6iXc5Q7ZluM/rAqJyqJ2vmB5Xr57K8BwbGqswN7vRWM3LazjTtxL3IBlArIcIoHvHH803T4DQ7QjcUAs5K1C7eiiCoigjQC0WL8IWKzhp2QqBBMMTD3RwrHHq33bxytbXugwNBRs49kCNABMo8WyToyhFeXj/3bK5v34DlG2X3fpDQM3RjERX7MKjf8CiF5xI/QY2EJtiB5LD9Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=9SSYl09/YNSdJREsa4NJqyceIX6U7xNIcXTttQPm2ec=;
 b=LTy7AbnHfDSWmt/WuUY0SwfQS28SDBHFr7FJAKaek2k82JsFrewR9ZrQfJUuTwk6SvtnghcJDOqCMG/0zArjMtTW7TItkZP0lK/5rVQNSFSKs7Hs4t1yBBDGA9LrBl5l3HnAo+5jp+gfHkrPZ2pkO9EJmoGdJl0g1yZjwrdi7MOZzynAHdxVCb/8BRv13lDDv8xz6vV3qyL8wkYu17e4RoPoRAhMQWFcSe7iKqaDIhE4qwpHvaT7rrRGD6bFUO/1lQfxqIjvu/R+izfwY1HpX3MPoWa5cbz9A5PmJ8nZo2bJqml37xK/JLUAR728tJ5YOKSSYQEGhgwhKn7gG0CENQ==
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=9SSYl09/YNSdJREsa4NJqyceIX6U7xNIcXTttQPm2ec=;
 b=62ERlDbxYQgLzHFb9CbDKUFJKKckPrpVmbVFlu8Zi+clhwtorPvbwus8afr174e1wiov73qOzrTDEJWYyaZgpSzaYNFo1yzbHUwIPyiLBY6fE689fyxYKPqNL85ma9n1jZCoS8x88IXBk3i9W7rrJ1QKqldcuVRBfBP30/mdJqA=
From: Bertrand Marquis <Bertrand.Marquis@arm.com>
To: Federico Serafini <federico.serafini@bugseng.com>
CC: Xen-devel <xen-devel@lists.xenproject.org>, "consulting@bugseng.com"
	<consulting@bugseng.com>, Stefano Stabellini <sstabellini@kernel.org>, Julien
 Grall <julien@xen.org>, Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: Re: [XEN PATCH v2] arm/cpufeature: address violations of MISRA C:2012
 Rule 8.2
Thread-Topic: [XEN PATCH v2] arm/cpufeature: address violations of MISRA
 C:2012 Rule 8.2
Thread-Index: AQHaAcHJMtQzql3zbUq10ZfwUNid8rBPxLGA
Date: Wed, 18 Oct 2023 16:57:08 +0000
Message-ID: <53253259-C582-4941-9CF0-BD61B4CA16AA@arm.com>
References:
 <7976ea7591a073a7896c2cfe9d0b1b77f414731a.1697632684.git.federico.serafini@bugseng.com>
In-Reply-To:
 <7976ea7591a073a7896c2cfe9d0b1b77f414731a.1697632684.git.federico.serafini@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_|AS8PR08MB8372:EE_|DBAEUR03FT015:EE_|GV1PR08MB8009:EE_
X-MS-Office365-Filtering-Correlation-Id: 2c4ab611-7fba-4ec4-c74e-08dbcffb4973
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:
 4DzDpC+YB69DN8uforbkmaQjg2CAxixKDhjdD+cVVGN2KQezld4udyv5oYVrbH1yB19oJRsfzBctyzVsAX0I0QFDkNNQMjmSlAX3tRESEbPJfKAjxG9P7FQp/18kR3v+zNRa1XtkqYYD5/G181qZLngFvMyXCzTEmprPo0T6T57XSyGlKVvFei/aY/Mbi7yvTeuLE/lDrl8J5TqHfA7qVQFzmj7CaCAKZpoYaootg+48R21fcETiIF23KlnF8iaqmU7ICsyNn1iToCtWO1DqXUgv6GoJ1hnWEIUHJBG2gZFdXAYGeQpdmQsoNrLwINB1sHiU96uKKVolwbJxtlsnWryn0L0Ip4iIwpmdSqV2E4UTN+oc9zNbBNsBlsxy2KXjYFqxTIYJJhDplY0bZ6+oPOYfJA96c9r5hUn8N+w2O2n9NTTBylJwdt8wi6V3qOPj/wSqvdFuMJ4m3vpB+ovGm69iLUf74RHaYyl+z27xbHGPcDQQwJJ5zafY72OhC85IsxraV5nFloch757OUtSbeV0Uf0aW5bacMpFja7eVGzWLQtK/89TVHVvIRgR0DtgsI6gYBarwI9ogN+kl7hjj910XcAgkkyQR7ANclR7ZTuygxbW6aWYRnK9tmOtlKABhnyhHN2Ynh6cX2kLv6qtXMg==
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)(396003)(136003)(366004)(39860400002)(376002)(346002)(230922051799003)(186009)(1800799009)(64100799003)(451199024)(36756003)(33656002)(6512007)(66476007)(6916009)(66946007)(66556008)(54906003)(76116006)(91956017)(66446008)(64756008)(38100700002)(86362001)(38070700005)(122000001)(53546011)(83380400001)(8936002)(2616005)(6506007)(71200400001)(4326008)(2906002)(478600001)(6486002)(5660300002)(316002)(8676002)(41300700001)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="us-ascii"
Content-ID: <E2FC68B4146E0746BC85C62C3328C2A7@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB8372
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:
	9e1b8496-5fae-4272-5043-08dbcffb43d1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	/W278xmJPHAtHOV40c4PXVo81yRJnjws6Nwq7Z5kHrTW+8cU8mUjxhTNtKMMEVtOMhLFubtadDkeF6jLD2mHQdKFA/cT/AezZpoK66bExFnXNSZkqbb24ProoxCHLJN7VATY6bojF/tUyOya/grcQbz/hfoLZ0TFpYaQES1/Yj9LNQAbGW9V1qQPdCgPhCA5ZVLc9TIb9Hemokfo3IsF6BR+KXU+myolRPdwFmm9Cpx2eviixnfCh6T5S/Mi82iqRrcZFDlqI4R1/yrIN34wjzf4vgyv8bvwgExxmVmY8lK8sPSQ3HKVf6tCypqEAM0CDyKrzVaIcFGHKfgAcQ2rESGmAjXgqplSbNGdzAiTctylfWMM+mwmKU/y33LRPq7VoI66vCl9PV7V1s+B+eWkh8XlwyzV4BRIR3lBAyEod7MRefhWbkxn8ddUjK05ej7KZ0CEQqiM1smDeqXbxP//Z3O/L+ZOQe0rGiDuFwlcfCFbuKhIk5ilUs0dQr3NP5IT7q8HskAFLQVAa3CPKOfqEYKud7fsiVOcyRu79im1fXIC3VaqbI5cRO2/z9E8gqNzuHSJRna2HB07Gd9WyP804dskIaEXqBDZRyzB2yesiJQD9eGzVujl8sTgkSal/u8HlxznNtjcRdTqinEzzlpvEQTTLFRrL8/0EHI6oub3Nn/7hrBpwF8/VOt7OR4p+ZbSN5J50BJPE3THvIu/RNdTVtbKub2G6aF/Isz/UEHofk/AqAAng/kvbHdvdZ6EsTBF
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)(186009)(82310400011)(1800799009)(451199024)(64100799003)(40470700004)(46966006)(36840700001)(36860700001)(478600001)(70586007)(6486002)(70206006)(54906003)(356005)(107886003)(336012)(53546011)(81166007)(33656002)(2616005)(83380400001)(8676002)(316002)(2906002)(41300700001)(4326008)(6862004)(8936002)(5660300002)(6512007)(36756003)(86362001)(82740400003)(47076005)(6506007)(26005)(40480700001)(40460700003);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Oct 2023 16:57:17.8653
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 2c4ab611-7fba-4ec4-c74e-08dbcffb4973
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: GV1PR08MB8009

Hi Frederico,

> On 18 Oct 2023, at 14:50, Federico Serafini <federico.serafini@bugseng.co=
m> wrote:
>=20
> Add missing parameter names. No functional change.
>=20
> Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>

Reviewed-by: Bertrand Marquis <bertrand.marquis@arm.com>

Cheers
Bertrand

> ---
> Changes in v2:
> - fixed names.
> ---
> xen/arch/arm/include/asm/cpufeature.h | 8 ++++----
> 1 file changed, 4 insertions(+), 4 deletions(-)
>=20
> diff --git a/xen/arch/arm/include/asm/cpufeature.h b/xen/arch/arm/include=
/asm/cpufeature.h
> index 8011076b8c..c95582044a 100644
> --- a/xen/arch/arm/include/asm/cpufeature.h
> +++ b/xen/arch/arm/include/asm/cpufeature.h
> @@ -127,8 +127,8 @@ static inline void cpus_set_cap(unsigned int num)
> struct arm_cpu_capabilities {
>     const char *desc;
>     u16 capability;
> -    bool (*matches)(const struct arm_cpu_capabilities *);
> -    int (*enable)(void *); /* Called on every active CPUs */
> +    bool (*matches)(const struct arm_cpu_capabilities *entry);
> +    int (*enable)(void *data); /* Called on every active CPUs */
>     union {
>         struct {    /* To be used for eratum handling only */
>             u32 midr_model;
> @@ -448,10 +448,10 @@ struct cpuinfo_arm {
>=20
> extern struct cpuinfo_arm system_cpuinfo;
>=20
> -extern void identify_cpu(struct cpuinfo_arm *);
> +extern void identify_cpu(struct cpuinfo_arm *c);
>=20
> #ifdef CONFIG_ARM_64
> -extern void update_system_features(const struct cpuinfo_arm *);
> +extern void update_system_features(const struct cpuinfo_arm *new);
> #else
> static inline void update_system_features(const struct cpuinfo_arm *cpuin=
fo)
> {
> --=20
> 2.34.1
>=20



From xen-devel-bounces@lists.xenproject.org Wed Oct 18 17:04:39 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 17:04:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618739.962769 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qt9yF-0007mx-Aa; Wed, 18 Oct 2023 17:04:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618739.962769; Wed, 18 Oct 2023 17:04: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 1qt9yF-0007mq-7u; Wed, 18 Oct 2023 17:04:35 +0000
Received: by outflank-mailman (input) for mailman id 618739;
 Wed, 18 Oct 2023 17:04: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=w+tR=GA=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qt9yD-0007mk-K9
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 17:04:33 +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 670e276e-6dd8-11ee-98d4-6d05b1d4d9a1;
 Wed, 18 Oct 2023 19:04:31 +0200 (CEST)
Received: by mail-ej1-x62b.google.com with SMTP id
 a640c23a62f3a-9c53e8b7cf4so451351866b.1
 for <xen-devel@lists.xenproject.org>; Wed, 18 Oct 2023 10:04:30 -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
 jt14-20020a170906ca0e00b009be23a040cfsm2019832ejb.40.2023.10.18.10.04.29
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 18 Oct 2023 10:04: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: 670e276e-6dd8-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1697648670; x=1698253470; darn=lists.xenproject.org;
        h=content-transfer-encoding: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=geuFNGJWT/h73QP1Bn0BiUXOn47T7jGs1jyhr09JFS8=;
        b=T+ZBX/l6KY1dZ8mAtQWXggxLbeqpV5/U+jCh05zFy15CNz1Nc8zcepJZpNLImfIzhr
         WGfgmwtTWWS0YkhWoiriOI27TXK4WKjuAmuCpFxuW/qPZm+Na8sdm7qurJhmq/kLGcq2
         heOtgZf6jZ7ybtFkyyZWw7Bp7RMfC2b7LmQ5Y=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697648670; x=1698253470;
        h=content-transfer-encoding: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=geuFNGJWT/h73QP1Bn0BiUXOn47T7jGs1jyhr09JFS8=;
        b=o6oPYn9cDGUyxKCT0FV2iBr0onY7M1+TgA+EOJ9WGb5FKusG5rcpYAvahfnSoHXge6
         vhrmraEj/BfqTFmt2ljOcZSyuXscJYZrdD+REQzzGcc3Mtzf+DG9C45kk0vdAZ0DkKDh
         nKTx/a01A70s3kpszSeJWWa5D2IisqBTwylkkM8Cn3xdqTQE7C02f904YQ27OvKI2MQi
         wDLgrhJcdi0Uv5QfCu/6tm4WrXogESy8ULMHtlsPBWYzJrDI9zH26NJuAtnxyxzCfuKl
         mSbQlouSTT3pMmJjO304UgsH1M8MHlYsX8NNEngBn9ns/LPJSWx2CXyP2FdEM1CWJ5Ot
         WnMw==
X-Gm-Message-State: AOJu0YzGRl0yv3ZlQ/o2jP1w4+UcflaYOxp8bRlaOQZaakiiUlysNvQj
	hfcpyesUZj0RoGZENbcNkEfpJg==
X-Google-Smtp-Source: AGHT+IFTF6zABigNCcFRyQokzNnp9xxNVu0GSPUM5wjqbn3ZFBCcIPRwErDWzns2pK4ErD3olGOkPA==
X-Received: by 2002:a17:906:4784:b0:9be:ea59:1457 with SMTP id cw4-20020a170906478400b009beea591457mr4711404ejc.40.1697648669913;
        Wed, 18 Oct 2023 10:04:29 -0700 (PDT)
Message-ID: <0237931f-dd15-43eb-9751-171615a005bb@citrix.com>
Date: Wed, 18 Oct 2023 18:04:29 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH for-4.18 v2] iommu/vt-d: fix SAGAW capability parsing
Content-Language: en-GB
To: Roger Pau Monne <roger.pau@citrix.com>, xen-devel@lists.xenproject.org
Cc: Henry Wang <Henry.Wang@arm.com>, Jan Beulich <jbeulich@suse.com>,
 Kevin Tian <kevin.tian@intel.com>
References: <20231018160733.24655-1-roger.pau@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: <20231018160733.24655-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit

On 18/10/2023 5:07 pm, Roger Pau Monne wrote:
> Enabling 5 level paging support (AGAW 3) at this point in the release is too
> risky,

This comment will go stale extremely quickly.

"It is too late in the Xen 4.18 release to enable support for 5 level
paging, ..."

~Andrew

>  so instead put a bodge to unconditionally disable passthough mode if
> SAGAW has any bits greater than 2 set.  Ignore bit 0, it's reserved in the
> specification but unlikely to have any meaning in the future.


From xen-devel-bounces@lists.xenproject.org Wed Oct 18 17:14:19 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 17:14:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618742.962780 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtA7S-00027u-4e; Wed, 18 Oct 2023 17:14:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618742.962780; Wed, 18 Oct 2023 17: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 1qtA7S-00027n-1d; Wed, 18 Oct 2023 17:14:06 +0000
Received: by outflank-mailman (input) for mailman id 618742;
 Wed, 18 Oct 2023 17:14: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 1qtA7Q-00025p-Ha; Wed, 18 Oct 2023 17:14: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 1qtA7Q-0004PK-Fw; Wed, 18 Oct 2023 17:14: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 1qtA7Q-0001VY-85; Wed, 18 Oct 2023 17:14:04 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qtA7Q-0002zQ-7Z; Wed, 18 Oct 2023 17:14: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=kBUmkPrBojB0W4v4I2RvhZaD7MTCJN10FgwmJ5OdfVE=; b=crYSRj7NP+kJLcToSDRz5+xqde
	s4n0RxYc6NEYjRflYdJfxvrFN5RVW4EAHxWPCNN5PHKSZLKtKOYHVuKIQIYjD0G9uXomCTgUca/hl
	cNM0EkE09rOFoMUGGRIin2GoD/FLXcc4UK+TFzVwRgv9lk+2PEz0fC4ouBNo1HueR/LE=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183414-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 183414: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=747a08eae26bda91c53d232d3bd65946183693d0
X-Osstest-Versions-That:
    ovmf=01e1bc28943a6bd66830e8af56665dc9e4647a08
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 18 Oct 2023 17:14:04 +0000

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

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 747a08eae26bda91c53d232d3bd65946183693d0
baseline version:
 ovmf                 01e1bc28943a6bd66830e8af56665dc9e4647a08

Last test of basis   183410  2023-10-18 09:10:48 Z    0 days
Testing same since   183414  2023-10-18 15:13:54 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
   01e1bc2894..747a08eae2  747a08eae26bda91c53d232d3bd65946183693d0 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Wed Oct 18 17:45:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 17:45:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618749.962789 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtAbT-0000WY-Cy; Wed, 18 Oct 2023 17:45:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618749.962789; Wed, 18 Oct 2023 17:45: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 1qtAbT-0000WR-AO; Wed, 18 Oct 2023 17:45:07 +0000
Received: by outflank-mailman (input) for mailman id 618749;
 Wed, 18 Oct 2023 17:45:06 +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 1qtAbS-0000WF-1f
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 17:45: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 1qtAbR-00055O-2z; Wed, 18 Oct 2023 17:45:05 +0000
Received: from 54-240-197-234.amazon.com ([54.240.197.234]
 helo=[192.168.7.230]) by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qtAbQ-0005h8-SR; Wed, 18 Oct 2023 17:45: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=grIjnEs9T2fYVEjEE3hhNPs3a72qdlxtwlOzI/S8vjA=; b=S2/LWDj9O3bkNUBxRjsn/HMsqf
	c0S8AFHRLuJgDyL+q6e9ktM8nSkf6vjfjTkXWH+uQMz1oCq6Ae67XbVPt7YtlUnfi4Kr2zGADiG82
	1TDJqQvBTUBLmtglOLAB7wTmD1XDfV06xy2fa5tpoLTwD+Tp7QlMp/hfPSh9q8En0Pgk=;
Message-ID: <6d2388f4-dc05-43bc-aaf7-43ac204fdc57@xen.org>
Date: Wed, 18 Oct 2023 18:45:02 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN PATCH 10/10] arm/smmu: address violation of MISRA C:2012
 Rule 8.2
Content-Language: en-GB
To: Stefano Stabellini <sstabellini@kernel.org>
Cc: Bertrand Marquis <Bertrand.Marquis@arm.com>,
 Federico Serafini <federico.serafini@bugseng.com>,
 Xen-devel <xen-devel@lists.xenproject.org>,
 "consulting@bugseng.com" <consulting@bugseng.com>,
 Rahul Singh <Rahul.Singh@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Henry Wang <Henry.Wang@arm.com>
References: <cover.1697207038.git.federico.serafini@bugseng.com>
 <199886f6ba1f2d5701eabd080b4f9723fc28f4b9.1697207038.git.federico.serafini@bugseng.com>
 <39d3f8e0-61cf-4b8d-84f1-a5087ba8ead4@xen.org>
 <D3320838-1E67-4339-A3D4-A3E60FBC4117@arm.com>
 <c9a7f059-4cf5-4a75-b231-573c4fe29b37@xen.org>
 <92C52E39-729F-40AE-A02F-556C8EE471CB@arm.com>
 <alpine.DEB.2.22.394.2310161338540.965337@ubuntu-linux-20-04-desktop>
 <4718460e-756a-40fe-ba1b-7f32a1432b51@xen.org>
 <alpine.DEB.2.22.394.2310171750170.965337@ubuntu-linux-20-04-desktop>
From: Julien Grall <julien@xen.org>
In-Reply-To: <alpine.DEB.2.22.394.2310171750170.965337@ubuntu-linux-20-04-desktop>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi Stefano,

On 18/10/2023 01:55, Stefano Stabellini wrote:
> On Tue, 17 Oct 2023, Julien Grall wrote:
>> Hi Stefano,
>>
>> On 16/10/2023 21:47, Stefano Stabellini wrote:
>>> On Mon, 16 Oct 2023, Bertrand Marquis wrote:
>>>>> On 16 Oct 2023, at 15:38, Julien Grall <julien@xen.org> wrote:
>>>>>
>>>>>
>>>>>
>>>>> On 16/10/2023 14:31, Bertrand Marquis wrote:
>>>>>> Hi Julien,
>>>>>
>>>>> Hi Bertrand,
>>>>>
>>>>>>> On 16 Oct 2023, at 11:07, Julien Grall <julien@xen.org> wrote:
>>>>>>>
>>>>>>> Hi,
>>>>>>>
>>>>>>> On 13/10/2023 16:24, Federico Serafini wrote:
>>>>>>>> Add missing parameter names, no functional change.
>>>>>>>> Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
>>>>>>>> ---
>>>>>>>>    xen/drivers/passthrough/arm/smmu.c | 6 +++---
>>>>>>>
>>>>>>> This file is using the Linux coding style because it is imported
>>>>>>> from Linux. I was under the impression we would exclude such file
>>>>>>> for now.
>>>>>>>
>>>>>>> Looking at exclude-list.json, it doesn't seem to be present. I think
>>>>>>> this patch should be replaced with adding a line in
>>>>>>> execlude-list.json.
>>>>>> I think that during one of the discussions we said that this file
>>>>>> already deviated quite a lot from the status in Linux and we wanted to
>>>>>> turn it to Xen coding style in the future hence it is not listed in
>>>>>> the exclude file.
>>>>> AFAIK the SMMUv{1, 2} code didn't deviate very much from Linux. I can't
>>>>> tell about the SMMUv3.
>>>>
>>>> True that i had the v3 code in mind, we might not want to do that for v1/2
>>>> you are right.
>>>>
>>>>>
>>>>>> At the end having a working smmu might be critical in a safety context
>>>>>> so it will make sense to also check this part of xen.
>>>>> I don't buy this argument right now. We have files in exclude-lists.json
>>>>> that I would consider critical for Xen to run (e.g. common/bitmap.c,
>>>>> common/libfdt). So if you want to use this argument then we need to move
>>>>> critical components of Xen out of the exclusion list.
>>>>
>>>> I am sure we will at some point for runtime code but we cannot do
>>>> everything on the first shot.
>>>> I was not meaning to do that now but that it is something to consider.
>>>
>>> Things that are in exclude-lists.json are source files that come from
>>> other projects and also change very rarely. The argument that we don't
>>> do MISRA C on the files in exclude-lists.json, it is not because those
>>> files are unimportant, but because they change only once every many
>>> years.
>>
>> Interesting. I would have thought this would be a condition to do MISRA as the
>> cost to port a patch would increase a bit but this is one time cost every many
>> years. Whereas code like the SMMU are still actively developped. And in
>> particular for SMMUv2 we tried to stick close to Linux to help backport. So
>> this would be a reason to initially exclude it from MISRA.
>>
>>>
>>> Of course the least we rely on exclude-lists.json the better.
>>>
>>> For smmu.c, looking at the git history I think it is more actively
>>> worked on than other files such as lib/rbtree.c or common/bitmap.c.
>>> Given that backports from Linux to smmu.c are not straightforward anyway
>>> (please correct me if I am wrong) then I think we should not add smmu.c
>>> to exclude-lists.json and do MISRA for smmu.c.
>>
>> I haven't done any recently. But if they are already not straightforward, then
>> adding MISRA on top is not really to make it better. So I think if you want to
>> do MISRA for the SMMU, then we need to fully convert it to Xen and abandon the
>> idea to backport from Linux.
>>
>> This would also make the code looks nicer as at the moment this contains
>> wrapper just to stay as close as possible to Linux.
> 
> You have a good point. If we do MISRA for the SMMU then we might as well
> fully convert the file to Xen. As a clarification, we can still look at
> the fixes on the Linux driver and "port" security fixes and other key
> patches such as workarounds for broken specific SMMU versions, but for
> sure we wouldn't want to backport a new feature of the driver or code
> refactoring / code improvements of the driver. But that probably is
> already the case today?

Most likely yes, some features might be useful to backport. The main one 
I can think of is not sharing the stage-2 page-tables as there might be 
some issue to allow the CPU to access the GICv3 ITS doorbell (so it 
would have to be only mapped in the IOMMU page-tables).

The other one is stage-1 support.

Anyway, it is not clear whether we could use the same implementation as 
Linux.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Wed Oct 18 17:45:14 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 17:45:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618750.962794 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtAbT-0000Yb-KC; Wed, 18 Oct 2023 17:45:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618750.962794; Wed, 18 Oct 2023 17:45: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 1qtAbT-0000Y8-Gc; Wed, 18 Oct 2023 17:45:07 +0000
Received: by outflank-mailman (input) for mailman id 618750;
 Wed, 18 Oct 2023 17:45: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=w+tR=GA=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qtAbS-0000WG-BD
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 17:45:06 +0000
Received: from mail-ed1-x52a.google.com (mail-ed1-x52a.google.com
 [2a00:1450:4864:20::52a])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 12062357-6dde-11ee-98d4-6d05b1d4d9a1;
 Wed, 18 Oct 2023 19:45:05 +0200 (CEST)
Received: by mail-ed1-x52a.google.com with SMTP id
 4fb4d7f45d1cf-538e8eca9c1so12096272a12.3
 for <xen-devel@lists.xenproject.org>; Wed, 18 Oct 2023 10:45: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
 v1-20020a50d081000000b0053dae8a5e1csm3183420edd.8.2023.10.18.10.45.04
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 18 Oct 2023 10:45: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: 12062357-6dde-11ee-98d4-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1697651104; x=1698255904; 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=uJvCwJDX/Ak20ZHNA0TrJJjgnf6WjJi0yzb0r3jrG5U=;
        b=lP7UrSvjFEyqZRTFEJnXkfFjPeDPxKBIgNeueoA7Ue73BqkufEwmV6erYO8CFvg+0V
         6cpwSc55HxYQaKGLjCIA0p8BEwOfnCWR66sjh/CX1lz0joK0Eo6eGdqwk3i1oBwkYOrx
         9JXkai5w52K14EUDewWWdqpxV5ObN9yid3uW4=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697651104; x=1698255904;
        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=uJvCwJDX/Ak20ZHNA0TrJJjgnf6WjJi0yzb0r3jrG5U=;
        b=OcmYa3qMw+YJi/DcyZtsV4V6D3ZU5YpCDbFT6ay42ad187L9iGp4Bj9BtcZISw3bOj
         OSplo1RjcKGp8cttx2BEBDItuwwDYNccKFx6UNpCUsKMJrz1byhi6GQVMzwV1cRrMLQs
         Zc1kF51lW6O+sB+y6dYvJF3Tlno8xnG+Cx/RT1fTvuQ4EnEx4VFClNJW3r5KUZIG4MgD
         Mfo75xIE3j8w4wZQdE2aeS+CGstEdlZWy5JhEBH7j+q7tm9039P4v1YPax3PK6XEhnEO
         JbFqHW5vsxTA8YgiVTsBVPW8dgTeIcE4a55LtajKfAbOnT/aiRIF6KYQ7piEHtdbrj8s
         nfmQ==
X-Gm-Message-State: AOJu0Yz29/WEV8S+plc9CICHkdEwNUERxSWp5RsJe49QtiZ4ttoL3nJv
	XOIoostRhsTxIDZdgVRiuNl20Q==
X-Google-Smtp-Source: AGHT+IEtiopXbX3S9tV1m45nPLkP41qGvbsDx1yOpqUDcrPdm3yXuj3/+RXn9MW7Nt4sd7QT8opiug==
X-Received: by 2002:a50:cc9c:0:b0:53e:6a4e:1f91 with SMTP id q28-20020a50cc9c000000b0053e6a4e1f91mr5044228edi.7.1697651104410;
        Wed, 18 Oct 2023 10:45:04 -0700 (PDT)
Message-ID: <9bcd8476-2a3f-43a3-8576-1e31d0df4bd3@citrix.com>
Date: Wed, 18 Oct 2023 18:45:03 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH 2/5] automation: hide timeout countdown in log
Content-Language: en-GB
To: =?UTF-8?Q?Marek_Marczykowski-G=C3=B3recki?=
 <marmarek@invisiblethingslab.com>, xen-devel@lists.xenproject.org
Cc: Henry Wang <Henry.Wang@arm.com>, Doug Goldstein <cardoe@cardoe.com>,
 Stefano Stabellini <sstabellini@kernel.org>
References: <cover.550599c54c91da4f8417fde358992e75bf8163c0.1696557834.git-series.marmarek@invisiblethingslab.com>
 <126f25fd791aa1f3e32463e600c59967504e19b6.1696557834.git-series.marmarek@invisiblethingslab.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: <126f25fd791aa1f3e32463e600c59967504e19b6.1696557834.git-series.marmarek@invisiblethingslab.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 06/10/2023 3:05 am, Marek Marczykowski-Górecki wrote:
> grep+sleep message every 1s makes job log unnecessary hard to read.
>
> Signed-off-by: Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
> ---
> I know I can download serial log file, but that's 3 more clicks...
> ---
>  automation/scripts/qubes-x86-64.sh | 2 ++
>  1 file changed, 2 insertions(+)
>
> diff --git a/automation/scripts/qubes-x86-64.sh b/automation/scripts/qubes-x86-64.sh
> index 1e84e40a4afc..5464d10fc343 100755
> --- a/automation/scripts/qubes-x86-64.sh
> +++ b/automation/scripts/qubes-x86-64.sh
> @@ -222,10 +222,12 @@ if [ -n "$wait_and_wakeup" ]; then
>      ssh $CONTROLLER wake
>  fi
>  
> +set +x
>  until grep "^Welcome to Alpine Linux" smoke.serial || [ $timeout -le 0 ]; do
>      sleep 1;
>      : $((--timeout))
>  done
> +set -x
>  
>  tail -n 100 smoke.serial
>  

This wants repeating in dom0_check= when looking for "Welcome to Alpine"
in guest-domU.log because the scrool is still visible in

https://gitlab.com/xen-project/people/marmarek/xen/-/jobs/5235487317

Happy to fix on commit, as this is the only comment I have on the series.

Alternatively, would it be worth writing a "wait_until $msg $file"
function to abstract this away?

~Andrew


From xen-devel-bounces@lists.xenproject.org Wed Oct 18 17:46:47 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 17:46:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618757.962810 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtAd4-0002BH-4Y; Wed, 18 Oct 2023 17:46:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618757.962810; Wed, 18 Oct 2023 17:46: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 1qtAd4-0002BA-11; Wed, 18 Oct 2023 17:46:46 +0000
Received: by outflank-mailman (input) for mailman id 618757;
 Wed, 18 Oct 2023 17:46: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=w+tR=GA=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qtAd3-0002Ay-0k
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 17:46:45 +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 4c7364a5-6dde-11ee-9b0e-b553b5be7939;
 Wed, 18 Oct 2023 19:46:42 +0200 (CEST)
Received: by mail-ed1-x536.google.com with SMTP id
 4fb4d7f45d1cf-53f3609550bso2653822a12.1
 for <xen-devel@lists.xenproject.org>; Wed, 18 Oct 2023 10:46: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
 v1-20020a50d081000000b0053dae8a5e1csm3183420edd.8.2023.10.18.10.46.42
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 18 Oct 2023 10:46: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: 4c7364a5-6dde-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1697651202; x=1698256002; 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=1k/joMOnoHEv32+c5LZ6M6FYeKOckcoaiG9s8VUTz/o=;
        b=bPVGSov9szOWjCPUIbipQRkRAMLh4DMyN/Vm+0xzNSBQa8/V1x6UBygYl3CfoJnLTX
         O1eJjk1FykwHqCDkSLqX5yBTPv0EaFE99NRELm2981vpDToFfbVliEA50/bbQ5MIAEAX
         agDVxhaHPzeKhnWb4qckwqOfqhDkp8Sp0c2WA=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697651202; x=1698256002;
        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=1k/joMOnoHEv32+c5LZ6M6FYeKOckcoaiG9s8VUTz/o=;
        b=qkOpWpmEVUQDG/X080v+V+CrtrciAfe6Pf1cUm42NvVEprvdjP/FezT6D1myx21XT/
         eRGWxjLLGGOGCAPgoZZ+nSu5MCRu5jdfE7zorfLeij5RtSzyDEvVCaQdF0AcGNSSaTb+
         hWUuGs1P3sJI11SPlNqvVf6B9uJ87jGGR73weBcSUeOWEUvsxh0TbCUlxbJJsErQwxsh
         P8KHDlmksQhMf/Ii2uZsuztUje7v7cPGO+SZIgOOsszNJAIsyrsd+YWcDfpZsOrNpB5w
         x4ZdSI/YoTqHmMZu77CZ+qa9BkKv/jYu0a01VRiRsu8oF4JGvIpWKxraE/wh7AfWrLSo
         TIag==
X-Gm-Message-State: AOJu0Yx6q3PVRoAl9AXII3bdiwXBBGvewFfcnzUoKnS81E5v7jIvNDsD
	FoMXfqJ/jYy/ECYhJKucKeG6bopKUuxfgIvaYO4q9Q==
X-Google-Smtp-Source: AGHT+IFGrLQyfGqUfZKQQm+bmQvj0OjcOMYQnNxslaK/edejdXQ/c8dKguHQYv6nuTM0C1AsqOlKlw==
X-Received: by 2002:a50:cc99:0:b0:53e:8e2e:2b8f with SMTP id q25-20020a50cc99000000b0053e8e2e2b8fmr4746584edi.9.1697651202452;
        Wed, 18 Oct 2023 10:46:42 -0700 (PDT)
Message-ID: <12f20d5a-3306-441b-823e-cdfb7008ec5d@citrix.com>
Date: Wed, 18 Oct 2023 18:46:42 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH for-4.18 0/5] automation: cleanup hardware based tests
Content-Language: en-GB
To: =?UTF-8?Q?Marek_Marczykowski-G=C3=B3recki?=
 <marmarek@invisiblethingslab.com>, xen-devel@lists.xenproject.org
Cc: Henry Wang <Henry.Wang@arm.com>, Doug Goldstein <cardoe@cardoe.com>,
 Stefano Stabellini <sstabellini@kernel.org>
References: <cover.550599c54c91da4f8417fde358992e75bf8163c0.1696557834.git-series.marmarek@invisiblethingslab.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: <cover.550599c54c91da4f8417fde358992e75bf8163c0.1696557834.git-series.marmarek@invisiblethingslab.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 06/10/2023 3:05 am, Marek Marczykowski-Górecki wrote:
> While working on tests for MSI-X, I did few cleanups of hw-based gitlab tests,
> greatly reducing false positive messages in the test output.
>
> After applying this series, the tests-artifacts/alpine/3.18 container needs to
> be rebuilt.
> Test run with container rebuilt (on my repo):
> https://gitlab.com/xen-project/people/marmarek/xen/-/pipelines/1027467761
>
> Cc-ing Henry for release ack.
> ---
> Cc: Henry Wang <Henry.Wang@arm.com>
> Cc:  Doug Goldstein <cardoe@cardoe.com>
> Cc:  Stefano Stabellini <sstabellini@kernel.org>
>
> Marek Marczykowski-Górecki (5):
>   automation: include real-time view of the domU console log too
>   automation: hide timeout countdown in log
>   automation: cleanup test alpine install
>   automation: improve checking for MSI/MSI-X in PCI passthrough tests
>   automation: extract QEMU log in relevant hardware tests

Acked-by: Andrew Cooper <andrew.cooper3@citrix.com>

Henry - this will be a good improvement to take.  It's only the test
logic, with Gitlab being happy with the result.


From xen-devel-bounces@lists.xenproject.org Wed Oct 18 18:01:02 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 18:01:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618762.962820 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtAqe-0005s7-BO; Wed, 18 Oct 2023 18:00:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618762.962820; Wed, 18 Oct 2023 18:00: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 1qtAqe-0005s0-86; Wed, 18 Oct 2023 18:00:48 +0000
Received: by outflank-mailman (input) for mailman id 618762;
 Wed, 18 Oct 2023 18:00: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 1qtAqd-0005ru-Fw
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 18:00: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 1qtAqa-0005Vp-Qu; Wed, 18 Oct 2023 18:00:44 +0000
Received: from 54-240-197-226.amazon.com ([54.240.197.226]
 helo=[192.168.7.230]) by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qtAqa-0006Gh-IC; Wed, 18 Oct 2023 18:00: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=dZmFyEtccW/jCB1bZ7BhiKX1cYYgHp86OWJlkIjoF9E=; b=5AEw94U3sXnuNac7choBZU9Nm6
	DcHY4DoiTf7kinuyBEtCjHKH8FVEd4QcMS7IJZmCYzCRjk17QbrhhbcD2v+3GuUrBp79i4LS5Qwnj
	d5yO5IntHYagqZIJtG7MhkjOOiN3PAtp4A6x74oS66P2d+MzLjXrXs/AkNXVQ+aX7sf0=;
Message-ID: <f2b51b47-fdeb-45a6-92c7-5b21da1855fe@xen.org>
Date: Wed, 18 Oct 2023 19:00:42 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH] console: make input work again for pv-shim
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>,
 Henry Wang <Henry.Wang@arm.com>, Michal Orzel <michal.orzel@amd.com>,
 Manuel Bouyer <bouyer@antioche.eu.org>
References: <ed275abf-351f-5237-7e19-a3856f6d4272@suse.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <ed275abf-351f-5237-7e19-a3856f6d4272@suse.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi Jan,

On 18/10/2023 15:58, Jan Beulich wrote:
> From: Manuel Bouyer <bouyer@antioche.eu.org>
> 
> The use of rcu_lock_domain_by_id() right in switch_serial_input() makes
> assumptions about domain IDs which don't hold when in shim mode: The
> sole (initial) domain there has a non-zero ID. Obtain the real domain ID
> in that case (generalized as get_initial_domain_id() returns zero when
> not in shim mode).
> 
> Note that console_input_domain() isn't altered, for not being used when
> in shim mode (or more generally on x86).

I think it would be worth to either add a comment in 
console_input_domain() and/or #ifdef the code. In any case...

> 
> Fixes: c2581c58bec9 ("xen/console: skip switching serial input to non existing domains")
> Signed-off-by: Manuel Bouyer <bouyer@antioche.eu.org>
> Signed-off-by: Jan Beulich <jbeulich@suse.com>

...

Reviewed-by: Julien Grall <jgrall@amazon.com>


Also, should we consider it for xen 4.18? (I notice there is no for-4.18 
tag).

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Wed Oct 18 18:11:24 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 18:11:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618765.962829 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtB0o-0008E7-7R; Wed, 18 Oct 2023 18:11:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618765.962829; Wed, 18 Oct 2023 18: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 1qtB0o-0008E0-4W; Wed, 18 Oct 2023 18:11:18 +0000
Received: by outflank-mailman (input) for mailman id 618765;
 Wed, 18 Oct 2023 18:11: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 1qtB0m-0008Du-IH
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 18:11: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 1qtB0j-0005sN-Ox; Wed, 18 Oct 2023 18:11:13 +0000
Received: from 54-240-197-234.amazon.com ([54.240.197.234]
 helo=[192.168.7.230]) by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qtB0j-0006xY-If; Wed, 18 Oct 2023 18:11: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:
	References:Cc:To:From:Subject:MIME-Version:Date:Message-ID;
	bh=3gU3GwLuDWBLYD6oKyWsahGu1lRW4AqzProvHk6L6Ns=; b=1oK/abdMZJIq05B3LrtCLKHNjZ
	1PeBpOcohFzRTR7ZyDRaiFh3e0fRMQgPoDciRk40bXwvTSFonB2QcIHVRJt/ZC9/zCCZHN99aco0/
	FHALRaUv6BhFevgPXAJGgjnO+pRAXuRbxZ1zgbvGJl2UBPWG7YjXF7noiRG02YBehTBo=;
Message-ID: <69be876f-4238-4041-a6ff-50f7f6487d5d@xen.org>
Date: Wed, 18 Oct 2023 19:11:11 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v4 2/2] xen/arm: Enlarge identity map space to 10TB
Content-Language: en-GB
From: Julien Grall <julien@xen.org>
To: Stefano Stabellini <sstabellini@kernel.org>
Cc: Bertrand Marquis <Bertrand.Marquis@arm.com>,
 Alexey Klimov <alexey.klimov@linaro.org>,
 Luca Fancellu <Luca.Fancellu@arm.com>, Michal Orzel <michal.orzel@amd.com>,
 "leo.yan@linaro.org" <leo.yan@linaro.org>,
 Xen-devel <xen-devel@lists.xenproject.org>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Rahul Singh <Rahul.Singh@arm.com>, Henry Wang <Henry.Wang@arm.com>
References: <20231013122658.1270506-1-leo.yan@linaro.org>
 <20231013122658.1270506-3-leo.yan@linaro.org>
 <169101f8-0475-45b1-b2c2-60dadd88d3f0@amd.com>
 <5a5e960b-e6fd-4617-b33a-10cf07f5bb52@xen.org>
 <8BCB97B4-CBDD-43D9-B0F8-7F637B8BE559@arm.com>
 <4B2BD200-5D3E-49D5-BF13-65B769AD4B90@arm.com>
 <CANgGJDqHu0CB=zzZqda18giLYDkL3My+gT592GLO-b9HsF2A4g@mail.gmail.com>
 <d3952200-9edb-4de0-94e3-c00c571a10b9@xen.org>
 <794B0D71-70A7-4546-98E0-EC01573E0D89@arm.com>
 <990b21a3-f8c7-4d02-a8ac-63d31794a76d@xen.org>
 <alpine.DEB.2.22.394.2310171258330.965337@ubuntu-linux-20-04-desktop>
 <4fc83e61-1e57-4f75-b017-7045842165e5@xen.org>
In-Reply-To: <4fc83e61-1e57-4f75-b017-7045842165e5@xen.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

Hi,

On 18/10/2023 11:59, Julien Grall wrote:
> On 17/10/2023 20:58, Stefano Stabellini wrote:
>>> And therefore a Fixes tag is sensible. This doesn't mean I would want to
>>> backport it right now (note that only 4.18 is affected). But this 
>>> could change
>>> in the future if we get another report (post-4.18) on a platform 
>>> where there
>>> are no other workaround.
>>>
>>> Stefano any opinions?
>>
>> The Fixes tag carries useful information but the problem is that it is
>> typically used for identifying backports and this is not a backport (at
>> least today we would not consider it a backport).
> 
> Below the definition of Fixes tag (from  process/sending-patches.pandoc):
> 
> If your patch fixes a bug in a specific commit, e.g. you found an issue 
> using ``git bisect``, please use the `Fixes:` tag with the first 12 
> characters of the commit id, and the one line summary.
> 
> This doesn't say anything about backport. In fact, we introduced a 
> separate tag for that (see Backport).
> 
>>
>> So I would provide the same information but without using the Fixes tag.
>> For instance: "This commit fixes an issue that was introduced by XXX
>> because of YYY and only affects the AVA platform with not up-to-date
>> firmware".
> 
> The part after 'and' is misleading. So far we had a report only on AVA 
> platform but this doesn't mean it couldn't happen on other HW. The same 
> is true with the new limit.
> 
> So this wants to be:
> 
> "and so far we only had a report for the AVA platform when using UEFI 
> older than vX."
> 
>>
>> That way, we avoid the risk of someone taking all the applicable commits
>> with a Fixes tag and backporting them without thinking twice about it.
>> But we still have the information in the git log.
> 
> I don't really see the problem for someone to mistakenly backport this 
> patch. In fact, this could potentially save them a lot of debugging if 
> it happens that Xen is loaded above 2TB.
> 
> Anyway, both Bertrand and you seems to be against the Fixes tag here. So 
> I can compromise with the "This commit fixes...". However, can Bertrand 
> or you update process/send-patches.pandoc so it is clear for a 
> contributor when they should add Fixes tag (which BTW I still disagree 
> with but if the majority agrees, then I will not nack)?

We had a chat about this during the Arm maintainer calls. The 
disagreement boiled down to the fact that SUPPORT.md (or the 
documentation) doesn't say anything about whether loading Xen above 2TB 
was supported or not. Depending on the view, one could consider a bug or 
not.

Looking through the documentation, the best place to document might 
actually be misc/arm/booting.txt where we already have some requirements 
to boot Xen (such the binary must be entered in NS EL2 mode).

I will prepare a patch and send one.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Wed Oct 18 18:30:40 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 18:30:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618768.962840 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtBJP-0004pk-On; Wed, 18 Oct 2023 18:30:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618768.962840; Wed, 18 Oct 2023 18:30: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 1qtBJP-0004pd-LE; Wed, 18 Oct 2023 18:30:31 +0000
Received: by outflank-mailman (input) for mailman id 618768;
 Wed, 18 Oct 2023 18: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=y8Bi=GA=amd.com=ayan.kumar.halder@srs-se1.protection.inumbo.net>)
 id 1qtBJO-0004pX-AJ
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 18:30:30 +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 67fca7e2-6de4-11ee-9b0e-b553b5be7939;
 Wed, 18 Oct 2023 20:30:27 +0200 (CEST)
Received: from SN6PR12MB2621.namprd12.prod.outlook.com (2603:10b6:805:73::15)
 by CY5PR12MB6454.namprd12.prod.outlook.com (2603:10b6:930:36::22)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.23; Wed, 18 Oct
 2023 18:30:21 +0000
Received: from SN6PR12MB2621.namprd12.prod.outlook.com
 ([fe80::7364:56e9:5097:3562]) by SN6PR12MB2621.namprd12.prod.outlook.com
 ([fe80::7364:56e9:5097:3562%4]) with mapi id 15.20.6886.034; Wed, 18 Oct 2023
 18:30: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: 67fca7e2-6de4-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=k6keN5RmxynHmykJZxirbpQRgEcTQkFZhCB0Nrh+EezCcVhqfWXk0v732iTTNKRLkLWYrnck18pe9lxRmknIsmZCe6f6UAMhKr8/k+jaI3tyUYRNmYwFmR97TAFc+iTi6t4f9sSXUgCJeLeM8tbaTSksR4BuXshWeKF74l42N+A/pTtDYWtwqPLD7Cj6vQMV0b8tqLN8Dp3Idwiu8Hv3ps/D8BUb5LBhj+QI/iUWEwxs/LUn+WTo4p2ZiZg+0FvRUn+z+xaFFFuA1IH+59lVkNe1haMQsCDoGgYR9jdxc9k4kCXS/zvcgyA8N7sxMjGrfJTWVFQVwFfqm3ZnrzLr5g==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=XuyeoLfyduaMwZa3Ewy35abtmHmC0a7soRbcPyvRyYY=;
 b=avdsUPFZlxARu381phnkBANLjjf2n8ZfpEeTgygy+L46S8AMz97nXyK9inUAdYFdbghO8kIxYmWa73G2hsNz8mlYjbpCdY45yvjXuSo6loxzLkIX6tPoZs3IDFkPg2CVVsrCk+n8/OZyOJ5YkHVcB6VyQ2Ie00616LcQqrKr/BSgRNo+70zRqUYtZXDjmoju9sLyB06MrXr+WHc56kI/Wjamv3SXCA7TGTBwbeU1z8ABB1uMgV54TYG53msPRFLaoVSwEW2roXOpj+Lb7HECyhp3iqaMM82J6FQB/mhpwc+Rlh1Kg7MxPmv1kdfYcL29FRDs124Qa5HE4sCFhr9Vlw==
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=XuyeoLfyduaMwZa3Ewy35abtmHmC0a7soRbcPyvRyYY=;
 b=dAe5iS1gRr6myj8/CNAJOvWkahBw84M+mn3t5dunq+5MUd76NbdXHwbOdtdInHFsvcqLeNKIf+mWAxpxDijxUCuqdYmekcQRMYGRHJbZ9naR+kRhUNC0uifDEBJ4+Wd/IsXTgvzti0b6kVavfcZaNmNFZSyjpvTcAlf/mJc2feg=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=amd.com;
Message-ID: <a94601b3-0100-4cbf-89eb-17959f6ef6cf@amd.com>
Date: Wed, 18 Oct 2023 19:30:14 +0100
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN v1 3/4] xen/arm32: Split and move MMU-specific head.S to
 mmu/head.S
Content-Language: en-GB
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,
 Volodymyr_Babchuk@epam.com, bertrand.marquis@arm.com, wei.chen@arm.com,
 penny.zheng@arm.com, henry.wang@arm.com
References: <20230911135942.791206-1-ayan.kumar.halder@amd.com>
 <20230911135942.791206-4-ayan.kumar.halder@amd.com>
 <bb9f1242-adfb-484d-b9fc-57b9e12b78c7@xen.org>
From: Ayan Kumar Halder <ayankuma@amd.com>
In-Reply-To: <bb9f1242-adfb-484d-b9fc-57b9e12b78c7@xen.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: PR0P264CA0152.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:100:1b::20) To SN6PR12MB2621.namprd12.prod.outlook.com
 (2603:10b6:805:73::15)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SN6PR12MB2621:EE_|CY5PR12MB6454:EE_
X-MS-Office365-Filtering-Correlation-Id: c3e9fc9b-95ac-48f7-0467-08dbd00848e3
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	vOAhFfKPF/Zn9KS0DS3oBnTuQhiFID36lNOD/fjW+NPzukrx3YKJ1D28Ittx8cvRZ8rR/02IwCIk+weMVZcU1x0xfoQrxi/wja3w69oEQMXzHwaxSeNNxP8GMrBW6O9hLHM6BHY+gZfbXq6O9JINWEFrNZBpk5SZa+Okf3A0a5C4R+gSVHSXXfN7kTYxRtJpovKNQ8Gq7hL/YWsk+PyEncgpaQ6XmfRTGitGyDlK9VIQu0NP5ZHjoUdvWLZ2s8Sarh4XIVtyTcSCtjPGQHJWHQVwoFQPix9ben9YMTuJ+9H7DjkGeZLpN7gqVYTTqy8iqsO4QYp35avN0VYnOeD4uXWkPD794lgeLCJuDPoqGoZ0XbAswUS3SNThPfjii3+v5NmJ55mXDQLHCA7Gne0MQDLlNG0Sg+li3eKBikAax1Ls2tZDDruxWNbrBO4rB2wr3ol0PUXc7QphhrBqnKGrhhmh65pCPuMd8jXwHlKD7z6h0hawuLViPG/m59dLfkxp7z0y5/oWwWQyUKyTh9M3c0TrpHHwG4BFLeNIRF+vy5JZ39lX5Q7hkk4dcMa7tkmvbY+w/RwybNYY3tOeS0aU99q+jCnI5xutA+obWsKQZkbpaSn2DAmpJMRSVzGJf27+e/8zm6E0WamumebmNa4tQA==
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)(136003)(396003)(39860400002)(366004)(230922051799003)(451199024)(1800799009)(64100799003)(186009)(2616005)(53546011)(6666004)(6506007)(6512007)(83380400001)(8936002)(5660300002)(41300700001)(8676002)(4326008)(2906002)(966005)(478600001)(6486002)(316002)(66556008)(110136005)(66946007)(66476007)(38100700002)(31696002)(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?dDV5WlBRUFRBME1ndm1nM3FSZnpNeVduSjd2MkRIVE1SYWFVVFJpZ3hRNTNq?=
 =?utf-8?B?SzBJT1paQnkzdFdaZFNlczhhcjBBVUJoSTlNTWhqaDRUNWlQem5qYVY1T29P?=
 =?utf-8?B?QlJrM2hCOG1Fc2ZWWUpoZDFYRGEzMzFyNC9XNWVaUkN4UmRDcy8zcmhSSUsz?=
 =?utf-8?B?anVCMThDZmxaZ3F0c1NhVGdxelcyWjNSWXpNS09ZNEtWNE5KMERkOEZvUG9j?=
 =?utf-8?B?QzFSYkFPNGRLYWg4V1MzVUpXYWRDMXpoeGpJdkVTUmlENmpUMTR2RS80MVVw?=
 =?utf-8?B?NEE2RDZ5bVhqdW1hYi9jNnd2TklYb0dsdUVwenhyVXJybDQxbFhsRW4rRmZa?=
 =?utf-8?B?d0FKclZjZDRvb1VxMUpHNmdkMzVTMldERkRoa2J0d3ZhdVNWUXBqaEFnOHpT?=
 =?utf-8?B?azhMZ2pDNzA0MzRNTE1PYThkWm84a2ZaTEFrMHl6NUtqT0NYaDQrNmNoV0lj?=
 =?utf-8?B?MXF3MmZEaHBHdFB2TVJhNGFxSk9IdkRuTStEc0lENytXR1NBN3ducHFjUTNh?=
 =?utf-8?B?WlJBcmZ0MThWemxuSnM3V1pSS2FjS2Y0T016SHpBNDNHSWZnd0I4c2gyL1dM?=
 =?utf-8?B?bWZBc29YcC9zMUdLbXZmVnBrTUNVZlhFRjl5bm5YaXRwbmVFdCtKNXM3QWhS?=
 =?utf-8?B?cWVSSFo3MEViYXlCUjM3NU5oelUreHVWSzJSNmNqQ0Fia1J5M0h5Y05Ea0p2?=
 =?utf-8?B?a3lMZkJtZ243M0JjOE9YcTZ5M1B1Znk1aHNCVXdqdmVXTWpzMVo2WVJvWWt3?=
 =?utf-8?B?N3Z2d0RIc1BXdGY1STRxNXRiMGd3cEF5UUNkcjNpMFpxRVNEMUoxdUZpWThZ?=
 =?utf-8?B?N0x4SHAyM2o1djdaWnAvaTRpeGp1NW9QelV6empOOUduMW1OZmhPdzRVQVR5?=
 =?utf-8?B?TkNLdjljRmthbm5qelRGT1RTZ1N3ZmdLM05KRmpyRSswL0dzQ1UxNTI5WGl1?=
 =?utf-8?B?Y09XUnVkTmNNaFhRV3lXT0NBT212UWNFdVZDVXFrTkRSTitBTENNYlU2UGNj?=
 =?utf-8?B?QkhQS09JSTJ4dFRzYmJCNHUxenBNdVdjTURDc2pZbUs4S3pwSVRaRzZJZ0Fy?=
 =?utf-8?B?ZXJ2VVp5Wkhza2haWVVEaVk3VmpqYlFmbEtNcXVkTDI3Zml4NEM4QWwxclVt?=
 =?utf-8?B?ZlF4LzRzWDluaGZtbVR6bG1ORDhPa0d0VGx5cmdRQTVoVzllOENhNnlyZTRF?=
 =?utf-8?B?V0F6SEk1ZEREaWFMYjQ3MEJGbnloRHNtTVloaW1Na3R1K1VSMldzSnMxU0tT?=
 =?utf-8?B?Nk9zYnRPZzdlWFdRQzZDa2VOMDBhVU5Ta25HSDd4UUdpeVRvclRQeVhVeGJw?=
 =?utf-8?B?K0NmdHZ0V3dvT1o2Vkw5WlNrK2ludmhaNTRRU3g5SWN4MW41eFlvU0p0N21z?=
 =?utf-8?B?NjVYbmptTzV3c2RaWjNVTXYxbWRVOUwrTGU4b0hDb0xLTnV3aWVhNFhZd05N?=
 =?utf-8?B?eDlWbFNIRWQvM2k4WE42dENJWE9YMXpzQkNKNXhmQ3Q5Ui9jVno5YWlwd3Bj?=
 =?utf-8?B?NkpCa1ZaSVpuMUUvU2pyaTl1OGwvU2cvZ21CL1RGSUhqVDdoOHBNcDliazcx?=
 =?utf-8?B?OXBhSVM1VW1XbzdIZVZycGZyaG1QOUJBaUtzLzdiaHZ4VEl5VjFIOXY5bVJE?=
 =?utf-8?B?NDJzdWkwSHYxSlcvUTZyS29EYkR2MDM0NDJSdVA5RFFHRVNGWGVVU2kwZ09n?=
 =?utf-8?B?T0NtQjhpdktVanU5TXJ6a2cwbjJOWUlaM1V3amdEUG41OVR1blJCL0Nzb25l?=
 =?utf-8?B?aWl5WmNGRUlxRmxubTNFTDd0bTdQNHJIeE1IT205bDJWNjBOd01YKzNPU251?=
 =?utf-8?B?T1hPNE51Y3FMc3ArZW0zM04xQmtnaHU5cGdoMlhrMUIzOVUzWGNJOFpvcVoy?=
 =?utf-8?B?ZHZQN3I0c0ZhcHNBSG1mdlRxbDN2b3FjcGVYTk8xQXh4SlFXU3lBVmtVU0Fz?=
 =?utf-8?B?bWdzam5MZ3NFT3lYVHZWWDFKVzF0NGNJVHU0NEhuMGkyUjI4Z3BkZkh1Sm9w?=
 =?utf-8?B?TnpDb3hNcDh5WWVSWjdYU2NzeWtlcm9lWUpOU0J6cnJLMnhrejM1VDRWaW9w?=
 =?utf-8?B?MXJsajJlSXJLUThmV2lFZnZXOGZOWno1N3JUS3QwaG92ZEZCeGFkbHpKM3Bk?=
 =?utf-8?Q?OmzpMZGKHMPk/UmL9B7hrxaWX?=
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-Network-Message-Id: c3e9fc9b-95ac-48f7-0467-08dbd00848e3
X-MS-Exchange-CrossTenant-AuthSource: SN6PR12MB2621.namprd12.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Oct 2023 18:30:21.5097
 (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: TDOt4ZO5LRH5ZCbHMuzsZknWApqSi+8obkQczdBO9Ifgx7/P220XcmJSQukPdA65hzbTOtWetXK2VvhqGH1xvw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY5PR12MB6454


On 16/10/2023 19:45, Julien Grall wrote:
> Hi,
Hi Julien,
>
> On 11/09/2023 14:59, Ayan Kumar Halder wrote:
>> 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 
>>
>
> Same remark as patch #1. Please provide a proper commit message.
>
> [...]
>
>> 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
>
> I see that we are still using load_paddr in arm64/head.S. But I don't 
> think it makes entirely sense as r10 (x20) would always be 0 for the MPU.
>
> In fact all the use in arm{32, 64}/head.S after this patch could be 
> easily replaced with adr_l because they are called when the MMU is off 
> so the return address will be a physical address.
>
> So can you add a prequisite patch for arm32 to replace the remaining 
> some of the load_paddr? With that, load_paddr can be moved in mmu/head.S.
Sure, I am doing this. I will send you a patch in next few days.
>
> I will take care of the arm64 part.

I see you have already sent the patch. :)

- Ayan

>
> Cheers,
>


From xen-devel-bounces@lists.xenproject.org Wed Oct 18 19:42:40 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 19:42:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618772.962850 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtCQy-0001SC-UD; Wed, 18 Oct 2023 19:42:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618772.962850; Wed, 18 Oct 2023 19:42: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 1qtCQy-0001S5-Qk; Wed, 18 Oct 2023 19:42:24 +0000
Received: by outflank-mailman (input) for mailman id 618772;
 Wed, 18 Oct 2023 19:42: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 1qtCQx-0001Rv-Ir; Wed, 18 Oct 2023 19:42: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 1qtCQx-0007zf-Fb; Wed, 18 Oct 2023 19:42: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 1qtCQx-0007Ch-49; Wed, 18 Oct 2023 19:42:23 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qtCQx-0005fv-3e; Wed, 18 Oct 2023 19:42: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=1LmwyM5MrQRqa8RmiMDjux/9/ntl7klaFYCOlFllLC4=; b=6hTxPu2mtQ7TiyxBUdOt1nc5NF
	ztK9V/Zj+h5fz2mh0zzvl2R2LtY0q3TKaV6IkDqByDctNhKoPIxD5kTkftkyzw9KGcd59C7Ih0EmG
	CV39433OtPbuVErcYPPEsq6laIlJPmrxFXWmXQpqs5hVzmmhDe3p6yb4m7igv5VN4okg=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183417-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 183417: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=7fe49887c4d227e585d5aa5530ee8a8d79d5fa1e
X-Osstest-Versions-That:
    ovmf=747a08eae26bda91c53d232d3bd65946183693d0
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 18 Oct 2023 19:42:23 +0000

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

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 7fe49887c4d227e585d5aa5530ee8a8d79d5fa1e
baseline version:
 ovmf                 747a08eae26bda91c53d232d3bd65946183693d0

Last test of basis   183414  2023-10-18 15:13:54 Z    0 days
Testing same since   183417  2023-10-18 17:42:23 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Laszlo Ersek <lersek@redhat.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
   747a08eae2..7fe49887c4  7fe49887c4d227e585d5aa5530ee8a8d79d5fa1e -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Wed Oct 18 21:31:30 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 21:31:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618777.962859 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtE8G-0001cm-Jx; Wed, 18 Oct 2023 21:31:12 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618777.962859; Wed, 18 Oct 2023 21:31: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 1qtE8G-0001cf-HK; Wed, 18 Oct 2023 21:31:12 +0000
Received: by outflank-mailman (input) for mailman id 618777;
 Wed, 18 Oct 2023 21:31: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=UegX=GA=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qtE8E-0001cX-VO
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 21:31:11 +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 a4978ab3-6dfd-11ee-9b0e-b553b5be7939;
 Wed, 18 Oct 2023 23:31:06 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by dfw.source.kernel.org (Postfix) with ESMTP id B108B61913;
 Wed, 18 Oct 2023 21:31:04 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 4CE75C433C8;
 Wed, 18 Oct 2023 21:31: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: a4978ab3-6dfd-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1697664664;
	bh=Tcrt9UaD9foHfBbXD3JjKAml/N4h4zdhfLvPd3jPAww=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=umcsGkPbXII4Wi4rMraA+Yn6ay1X7rbiWn0Uz7A46Zc+fNC8aL4DGi2M17VsqNpxn
	 vndUv99Ck/fvcCEqTW2RtIsyDZ7aB8NFUc+h9wzl1oXa3jmuaTQxcd3i34IcBmHtFc
	 gpTSOPsF56IrmYSl+IzNobK4x4pKBIqljpnhmndfd7MBnavPxz0sMFjuW4FiIoXWwA
	 FO7zusKTlvV7XAufTV+q3i+eJcbcr7WhkduQX9xYCWSnZBVBsjtSxfpMYJNNEol0q7
	 ib7hh6Dy5MbmM4p718wzsn9QZxnllyugA5Qmyh/uQY8gZY4v+aQWGLDmxBHOVHKjzV
	 q+Qg50lIgpvHA==
Date: Wed, 18 Oct 2023 14:31:01 -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>, 
    George Dunlap <george.dunlap@cloud.com>, 
    Stefano Stabellini <stefano.stabellini@amd.com>, jgross@suse.com, 
    julien@xen.org, wl@xen.org, xen-devel@lists.xenproject.org
Subject: Re: [PATCH] cxenstored: wait until after reset to notify dom0less
 domains
In-Reply-To: <55f70f98-4a84-401c-f9a4-3cb50ca1418c@suse.com>
Message-ID: <alpine.DEB.2.22.394.2310181430550.965337@ubuntu-linux-20-04-desktop>
References: <20231013230624.1007969-1-sstabellini@kernel.org> <55f70f98-4a84-401c-f9a4-3cb50ca1418c@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, 17 Oct 2023, Jan Beulich wrote:
> 
> On 14.10.2023 01:06, Stefano Stabellini wrote:
> > From: George Dunlap <george.dunlap@cloud.com>
> > 
> > Commit fc2b57c9a ("xenstored: send an evtchn notification on
> > introduce_domain") introduced the sending of an event channel to the
> > guest when first introduced, so that dom0less domains waiting for the
> > connection would know that xenstore was ready to use.
> > 
> > Unfortunately, it was introduced in introduce_domain(), which 1) is
> > called by other functions, where such functionality is unneeded, and
> > 2) after the main XS_INTRODUCE call, calls domain_conn_reset().  This
> > introduces a race condition, whereby if xenstored is delayed, a domain
> > can wake up, send messages to the buffer, only to have them deleted by
> > xenstore before finishing its processing of the XS_INTRODUCE message.
> > 
> > Move the connect-and-notfy call into do_introduce() instead, after the
> > domain_conn_rest(); predicated on the state being in the
> > XENSTORE_RECONNECT state.
> > 
> > (We don't need to check for "restoring", since that value is always
> > passed as "false" from do_domain_introduce()).
> > 
> > Also take the opportunity to add a missing wmb barrier after resetting
> > the indexes of the ring in domain_conn_reset.
> > 
> > This change will also remove an extra event channel notification for
> > dom0 (because the notification is now done by do_introduce which is not
> > called for dom0.) The extra dom0 event channel notification was only
> > introduced by fc2b57c9a and was never present before. It is not needed
> > because dom0 is the one to tell xenstored the connection parameters, so
> > dom0 has to know that the ring page is setup correctly by the time
> > xenstored starts looking at it. It is dom0 that performs the ring page
> > init.
> > 
> > Signed-off-by: George Dunlap <george.dunlap@cloud.com>
> > Signed-off-by: Stefano Stabellini <stefano.stabellini@amd.com>
> 
> Should this have had a Fixes: tag thus marking it to pick up for
> backport?

Sorry this was committed already


From xen-devel-bounces@lists.xenproject.org Wed Oct 18 21:34:06 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 21:34:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618779.962870 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtEB4-0002h4-0y; Wed, 18 Oct 2023 21:34:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618779.962870; Wed, 18 Oct 2023 21:34: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 1qtEB3-0002gx-UJ; Wed, 18 Oct 2023 21:34:05 +0000
Received: by outflank-mailman (input) for mailman id 618779;
 Wed, 18 Oct 2023 21:34: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=UegX=GA=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qtEB3-0002gr-HO
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 21:34:05 +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 0ee709f9-6dfe-11ee-9b0e-b553b5be7939;
 Wed, 18 Oct 2023 23:34: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 025A4B824F2;
 Wed, 18 Oct 2023 21:34:03 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 712B8C433C9;
 Wed, 18 Oct 2023 21:34: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: 0ee709f9-6dfe-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1697664841;
	bh=KKToORkeAunBLIUb9aGIEg3cdBo+lRrOpTqAmZxc/y0=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=t/froSH3q0lBom9fE53eG4vtTPoCzipal3BmD1h4FBx8lMyc4v+UV1NaK83FUR+Nu
	 yMCK1dtPo1RYkm24OicQ6egxluaKnIwwqCgTj89pu/h7agkjz0qm4d0chppcglMt7F
	 fbFWCMW1pZo9pNdgPffkH903jU8uS47JGuWEuYsZIWQqPvHNGXZ/NZAFqdDrJOAlcR
	 xRx7fHVGk/ZGUu/AL1ZI+GJ1wf1uAegz2Z3zAvdrEW+U8KTaFNbx+4xieZv4iHyYeH
	 UKpHGjYucNpH/LJOfGKkTi5zHm13ZvQuTA3oTPCjezWTku4PFBYriO5Ak6PCzi7mqv
	 tWcTgF9EpEw2Q==
Date: Wed, 18 Oct 2023 14:33:58 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Julien Grall <julien@xen.org>
cc: Nicola Vetrini <nicola.vetrini@bugseng.com>, 
    Jan Beulich <jbeulich@suse.com>, Andrew Cooper <andrew.cooper3@citrix.com>, 
    Xen-devel <xen-devel@lists.xenproject.org>, consulting@bugseng.com, 
    Stefano Stabellini <sstabellini@kernel.org>, 
    Bertrand Marquis <bertrand.marquis@arm.com>, roger.pau@citrix.com, 
    George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>
Subject: Re: MISRA C:2012 D4.11 caution on staging
In-Reply-To: <1aaea648-b156-4297-b290-9c7b7a5010fd@xen.org>
Message-ID: <alpine.DEB.2.22.394.2310181433140.965337@ubuntu-linux-20-04-desktop>
References: <7972c20f361126022fa97f6b51ca2d9c@bugseng.com> <61f04d4b-34d9-4fd1-a989-56b042b4f3d8@citrix.com> <baa73fa24385b39bc6e82c4ccb08bd13@bugseng.com> <26f09702-9340-41ae-afcc-808becb67876@citrix.com> <75a00257-c062-4d82-9b64-1707ce4566e6@xen.org>
 <594c09e1f8b2e1e8321c2cb862fcb378@bugseng.com> <5ddb6398-f2a3-4bcb-8808-bad653b6c3cd@xen.org> <c4f4f1fc-b20a-c08f-9782-9ce06f6dd868@suse.com> <3573c8c2-1a9c-444c-a542-539b16f689f2@xen.org> <8c25bfd7768d6b290362f56a8b8d44d9@bugseng.com>
 <c47528e7-e202-4b5b-85ae-3bb0d1d0b608@xen.org> <87b5936151ace813d9dc9592ee35f86e@bugseng.com> <1aaea648-b156-4297-b290-9c7b7a5010fd@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, 18 Oct 2023, Julien Grall wrote:
> On 18/10/2023 13:52, Nicola Vetrini wrote:
> > On 18/10/2023 14:38, Julien Grall wrote:
> > > Hi Nicola,
> > > 
> > > On 18/10/2023 13:30, Nicola Vetrini wrote:
> > > > On 17/10/2023 15:28, Julien Grall wrote:
> > > > I tested this, and the report is prevented by the ASSERT. It's up to the
> > > > maintainers to
> > > > decide how do you want to proceed: my suggestion is deviating it,
> > > 
> > > It is not clear to me what would you deviate. Can you clarify?
> > > 
> > > Cheers,
> > 
> > The memcpy call, as in:
> > 
> > /* SAF-x-false-positive-eclair */
> > memcpy(d->handle, config->handle, sizeof(d->handle));
> 
> I am not in favor of this deviation. It could be a false positive today, but
> it may not be in the future.
> 
> I much prefer the ASSERT() version or the rework.

Just to be clear about the next steps, Nicola are you OK with sending a
patch with the ASSERT or would you prefer Julien or someone else to do
it?


From xen-devel-bounces@lists.xenproject.org Wed Oct 18 21:53:38 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 21:53:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618783.962879 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtETq-0005yd-J5; Wed, 18 Oct 2023 21:53:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618783.962879; Wed, 18 Oct 2023 21:53: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 1qtETq-0005yW-GQ; Wed, 18 Oct 2023 21:53:30 +0000
Received: by outflank-mailman (input) for mailman id 618783;
 Wed, 18 Oct 2023 21:53: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 1qtETp-0005yM-Qg; Wed, 18 Oct 2023 21:53: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 1qtETp-0002a9-NT; Wed, 18 Oct 2023 21:53: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 1qtETp-0003PX-53; Wed, 18 Oct 2023 21:53:29 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qtETp-0007fy-4Y; Wed, 18 Oct 2023 21:53: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=9cWjrm7Q1Yeb+fJTda+V/TXApi9T5TGM294rE/qXXMs=; b=lPrEvG/8JXJJ/qzNkhrqs0cfg9
	zg8EFaHr0yWwljlv1hqZYBqbBmiU/MBVi33oJXHTQfa52MW7xz5YrVP76tpI/dttUVyyxzaMAdfXP
	PdySZDtwHNtdLnr9wK2TaCplFvm/+h8DBOvoBOnicb9QFd+s9vcmSuh9+hZFWWMP36qs=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183419-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 183419: 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=7c3616e6f1aa541884410c6430e3c8986cf0973c
X-Osstest-Versions-That:
    xen=f51c92383b8dc76233481e2814aa2e905fb9b501
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 18 Oct 2023 21:53:29 +0000

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

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                  7c3616e6f1aa541884410c6430e3c8986cf0973c
baseline version:
 xen                  f51c92383b8dc76233481e2814aa2e905fb9b501

Last test of basis   183404  2023-10-17 22:02:08 Z    0 days
Testing same since   183419  2023-10-18 19:02:05 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Alejandro Vallejo <alejandro.vallejo@cloud.com>
  Andrew Cooper <andrew.cooper3@citrix.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
   f51c92383b..7c3616e6f1  7c3616e6f1aa541884410c6430e3c8986cf0973c -> smoke


From xen-devel-bounces@lists.xenproject.org Wed Oct 18 22:16:53 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 22:16:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618788.962890 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtEqK-0001mg-AL; Wed, 18 Oct 2023 22:16:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618788.962890; Wed, 18 Oct 2023 22: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 1qtEqK-0001mZ-7S; Wed, 18 Oct 2023 22:16:44 +0000
Received: by outflank-mailman (input) for mailman id 618788;
 Wed, 18 Oct 2023 22: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=1DIN=GA=invisiblethingslab.com=marmarek@srs-se1.protection.inumbo.net>)
 id 1qtEqI-0001mD-9z
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 22:16:42 +0000
Received: from wout3-smtp.messagingengine.com (wout3-smtp.messagingengine.com
 [64.147.123.19]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 015cc59d-6e04-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 00:16:39 +0200 (CEST)
Received: from compute1.internal (compute1.nyi.internal [10.202.2.41])
 by mailout.west.internal (Postfix) with ESMTP id 0B2763200A7F;
 Wed, 18 Oct 2023 18:16:35 -0400 (EDT)
Received: from mailfrontend1 ([10.202.2.162])
 by compute1.internal (MEProxy); Wed, 18 Oct 2023 18:16:36 -0400
Received: by mail.messagingengine.com (Postfix) with ESMTPA; Wed,
 18 Oct 2023 18:16:34 -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: 015cc59d-6e04-11ee-98d5-6d05b1d4d9a1
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=
	1697667395; x=1697753795; bh=gqt7w3BtC5yBlDumOlLKLClmvzl6B4YY55b
	AtjOMMCo=; b=S84qF8bjDzfBXCNi5IBi6wptrLkIu7Wy1GpJgA0THLC6MdEm1NU
	qRNCLXDJb/GIOQfnNK3/M5ndkrrci97YR1ZKY5ddAKWLn17Zyuq0I/8TOoowSSy7
	bcoFYUx6q9+Z2WSpcGC0LaJF/7HWPHs3Avej8api8mU9CevzSX1DMOgOCS8+Jn5/
	ArC14S6n1tPAKc4vkGI048nGkLgRl65Tu1Z5q48ltnopCG2uhlAUbBuWE65Tj6vW
	Q6VaOcraFHdLQNCOM8ckNKbU2RrV9Vazq8YQDVMSxEMefHMHggXUoC304LUgRQS9
	XcpkNvrbcq9ZulHcJ4T6JWg8uydralYUdqg==
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=fm3; t=1697667395; x=1697753795; bh=gqt7w3BtC5yBl
	DumOlLKLClmvzl6B4YY55bAtjOMMCo=; b=LduNQjsAmMLZvd3g+2/tmxl40Lw9C
	rmHfxtUOAc37Lk+jKY27moqqbNH4nybqxaTZ9Fc67ab2Mn/XjydnN7RDkQ7yqLlU
	Fg3hffXflbhzF+wSnaMfGX2fAXqfmSOlGLz15KSlNaaT6yapLBqe3n0ygjzu+Tzg
	q5Jerp7Cl33fK3sV0Gk2EmNE0m3+OYuIY7TxFROTaF1Enc0nv5glPf/tkYhxTXo7
	kSzvSgQ8QtKTwKBQOVanCLRSzEsoUkoFpTQzVT+ikRMoId5FRv/55+auP5TVn6F8
	UVKg8yf/tKf/TNIJTakSe48iIvS9tGLbGWoX2JWsdnmtGkXTc1IGx82XQ==
X-ME-Sender: <xms:Q1kwZTG3TAT9SiY1lzLpflhdzLmfeuwFgoLews5Zjb96_YcY_kvvbw>
    <xme:Q1kwZQUiYmjwqzzSwgzkrdrj8cXn4fHNoQfs3mU4DsjFVQRvnhYEQF-k-8BjZ9jjA
    8IA9D9Qa_quqw>
X-ME-Received: <xmr:Q1kwZVJSVUa9AKVJHihKOvpzK6T-Lg0DiQBZQ7J2ApONHatOib3fqY_E53JrgzEv5fU0ya6lejgzWJD2mBj4gPAYbBBI6f8r7fs>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvkedrjeehgddtkecutefuodetggdotefrodftvf
    curfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfghnecu
    uegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmdenuc
    fjughrpeffhffvvefukfhfgggtuggjsehgtderredttdejnecuhfhrohhmpeforghrvghk
    ucforghrtgiihihkohifshhkihdqifpkrhgvtghkihcuoehmrghrmhgrrhgvkhesihhnvh
    hishhisghlvghthhhinhhgshhlrggsrdgtohhmqeenucggtffrrghtthgvrhhnpeevueej
    teegleelteduueevhfetgfffjeevtddvgfeiveehteehleegueelvdejveenucffohhmrg
    hinhepghhithhlrggsrdgtohhmnecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghm
    pehmrghilhhfrhhomhepmhgrrhhmrghrvghksehinhhvihhsihgslhgvthhhihhnghhslh
    grsgdrtghomh
X-ME-Proxy: <xmx:Q1kwZRElxd48Jye_IbQ8ZRscjy4TWOjTi-Lq8t0vQCtK7HgjD296aQ>
    <xmx:Q1kwZZXSLR_QkK1x2q9i2gufNKQrOO6jhSxIkTqnWEryPCUW8WDnhA>
    <xmx:Q1kwZcMj90nKVuRh4ScIR6XPIIM-tVqX9-pKNVHArrHxV1gbis8SbA>
    <xmx:Q1kwZWi9BjJfQm77agGD4Nq5ccR_F78WU1-dOmOMWQum4zy55AYYmw>
Feedback-ID: i1568416f:Fastmail
Date: Thu, 19 Oct 2023 00:16:31 +0200
From: Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: xen-devel@lists.xenproject.org, Henry Wang <Henry.Wang@arm.com>,
	Doug Goldstein <cardoe@cardoe.com>,
	Stefano Stabellini <sstabellini@kernel.org>
Subject: Re: [PATCH 2/5] automation: hide timeout countdown in log
Message-ID: <ZTBZQGS91FfSeClt@mail-itl>
References: <cover.550599c54c91da4f8417fde358992e75bf8163c0.1696557834.git-series.marmarek@invisiblethingslab.com>
 <126f25fd791aa1f3e32463e600c59967504e19b6.1696557834.git-series.marmarek@invisiblethingslab.com>
 <9bcd8476-2a3f-43a3-8576-1e31d0df4bd3@citrix.com>
MIME-Version: 1.0
Content-Type: multipart/signed; micalg=pgp-sha256;
	protocol="application/pgp-signature"; boundary="ry7Y1FzsF4tVHVJM"
Content-Disposition: inline
In-Reply-To: <9bcd8476-2a3f-43a3-8576-1e31d0df4bd3@citrix.com>


--ry7Y1FzsF4tVHVJM
Content-Type: text/plain; protected-headers=v1; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable
Date: Thu, 19 Oct 2023 00:16:31 +0200
From: Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: xen-devel@lists.xenproject.org, Henry Wang <Henry.Wang@arm.com>,
	Doug Goldstein <cardoe@cardoe.com>,
	Stefano Stabellini <sstabellini@kernel.org>
Subject: Re: [PATCH 2/5] automation: hide timeout countdown in log

On Wed, Oct 18, 2023 at 06:45:03PM +0100, Andrew Cooper wrote:
> On 06/10/2023 3:05 am, Marek Marczykowski-G=C3=B3recki wrote:
> > grep+sleep message every 1s makes job log unnecessary hard to read.
> >
> > Signed-off-by: Marek Marczykowski-G=C3=B3recki <marmarek@invisiblething=
slab.com>
> > ---
> > I know I can download serial log file, but that's 3 more clicks...
> > ---
> >  automation/scripts/qubes-x86-64.sh | 2 ++
> >  1 file changed, 2 insertions(+)
> >
> > diff --git a/automation/scripts/qubes-x86-64.sh b/automation/scripts/qu=
bes-x86-64.sh
> > index 1e84e40a4afc..5464d10fc343 100755
> > --- a/automation/scripts/qubes-x86-64.sh
> > +++ b/automation/scripts/qubes-x86-64.sh
> > @@ -222,10 +222,12 @@ if [ -n "$wait_and_wakeup" ]; then
> >      ssh $CONTROLLER wake
> >  fi
> > =20
> > +set +x
> >  until grep "^Welcome to Alpine Linux" smoke.serial || [ $timeout -le 0=
 ]; do
> >      sleep 1;
> >      : $((--timeout))
> >  done
> > +set -x
> > =20
> >  tail -n 100 smoke.serial
> > =20
>=20
> This wants repeating in dom0_check=3D when looking for "Welcome to Alpine"
> in guest-domU.log because the scrool is still visible in
>=20
> https://gitlab.com/xen-project/people/marmarek/xen/-/jobs/5235487317
>=20
> Happy to fix on commit, as this is the only comment I have on the series.

Fine with me, thanks!

> Alternatively, would it be worth writing a "wait_until $msg $file"
> function to abstract this away?

Can refactor it later, maybe when adding more tests.

--=20
Best Regards,
Marek Marczykowski-G=C3=B3recki
Invisible Things Lab

--ry7Y1FzsF4tVHVJM
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQEzBAEBCAAdFiEEhrpukzGPukRmQqkK24/THMrX1ywFAmUwWUAACgkQ24/THMrX
1yxtFwf/fUxQGg2TSO0t3Rkj7VkhGb2lCoL2G9uLCUGKTIdkSGdIDL22hrlbabPl
tFag0fKUmypvq6H7mEyiWIB0jxf+lhS6qu5JEG0avNoGo6KCwSy5zn4MvCwLrn1p
uH9CCWJge7BHfeqRdiC7O43Zacm7K6auELHzKiokGO9Y1e6ACvYLoPqA7sqarm9w
u4dLju4/YiRhAuxnQKOMgMez+xkIdZwYenKqZpnQ+/S4kBj0iW6/+G8jTRXbbf1b
i/2/ktc4OYNdHAZTtI5rT0n6cbsO35enEWXFbz2yoemqZu7ShgTw/cC6l/3jbiwU
sxzk7i+ZI0INae8oojfCCb2WEwgVLw==
=bnaM
-----END PGP SIGNATURE-----

--ry7Y1FzsF4tVHVJM--


From xen-devel-bounces@lists.xenproject.org Wed Oct 18 22:17:33 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 22:17:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618791.962900 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtEr7-0002Fr-KI; Wed, 18 Oct 2023 22:17:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618791.962900; Wed, 18 Oct 2023 22:17: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 1qtEr7-0002Fk-GR; Wed, 18 Oct 2023 22:17:33 +0000
Received: by outflank-mailman (input) for mailman id 618791;
 Wed, 18 Oct 2023 22:17: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=yc4L=GA=oracle.com=dongli.zhang@srs-se1.protection.inumbo.net>)
 id 1qtEr5-0002Fa-Py
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 22:17:32 +0000
Received: from mx0a-00069f02.pphosted.com (mx0a-00069f02.pphosted.com
 [205.220.165.32]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 1f72865a-6e04-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 00:17:29 +0200 (CEST)
Received: from pps.filterd (m0246617.ppops.net [127.0.0.1])
 by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id
 39IIp6F2018146; Wed, 18 Oct 2023 22:16:59 GMT
Received: from iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com
 (iadpaimrmta03.appoci.oracle.com [130.35.103.27])
 by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3tqkhu8ru1-1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK);
 Wed, 18 Oct 2023 22:16:58 +0000
Received: from pps.filterd
 (iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1])
 by iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com (8.17.1.19/8.17.1.19)
 with ESMTP id 39IKCSLO015439; Wed, 18 Oct 2023 22:16:57 GMT
Received: from nam12-mw2-obe.outbound.protection.outlook.com
 (mail-mw2nam12lp2040.outbound.protection.outlook.com [104.47.66.40])
 by iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id
 3trg1h43dw-1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK);
 Wed, 18 Oct 2023 22:16:57 +0000
Received: from BYAPR10MB2663.namprd10.prod.outlook.com (2603:10b6:a02:a9::20)
 by DS7PR10MB7324.namprd10.prod.outlook.com (2603:10b6:8:ec::22) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.34; Wed, 18 Oct
 2023 22:16:54 +0000
Received: from BYAPR10MB2663.namprd10.prod.outlook.com
 ([fe80::8e27:f49:9cc3:b5af]) by BYAPR10MB2663.namprd10.prod.outlook.com
 ([fe80::8e27:f49:9cc3:b5af%7]) with mapi id 15.20.6886.034; Wed, 18 Oct 2023
 22: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>
X-Inumbo-ID: 1f72865a-6e04-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=from : to : cc :
 subject : date : message-id : content-transfer-encoding : content-type :
 mime-version; s=corp-2023-03-30;
 bh=0S7AhvO2r1Sn1Aa/lDwDJew3h+/4QcW63K+NKu+NC5Q=;
 b=EMLlhEJMk+u83ogznJBxB2geY0LgKaFaxYkmXwU0ddAdpPmoUWuO67E/PBYxHTXXJD8s
 /vZbzM5WszGPWi1bP7dGp8xzyTdTyvW4TParkICrBlQPTUx5jeASuj6s0gSbO5TA07XN
 Qnq5LlBV5tDhK3i0M7buQIzlcXB8l/CGmnFcidfcB4S0Xi17p1ye5SJLuXZdn+/luoQq
 8bUHKWAdrogvn3DAn2Ri4QBjZPfSc84ajMAw3viYW17XZeQik+RZkk78a9HjbLeK+O1Z
 eP8i0LLCoMDTtFQKNum1HrlZmQN3sc6t+b4NoEnWHrqIKq02xf7rq4cmYDqYPCIvOw2q jA== 
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=bixzI537eDPelgaARUVyBvRdfr6pTsQRVJgiFLuxoBlYK4CWSU4jF1deaHA+ncFgGUFmPVF2hqBqGDZUNTBFUG3p3xkjwDtNcpHFl14Deeuk+SPqqNRCuJZihyXaI0yLVmWb7hpYhcpyTS8zTAdSfbSUTfJQr5MOICgP9M1diFNfsqU8V5nK+wQCX9qRYr2I4rkLpzimoAovdnChH1XL81ax++yjj3k0xhM51iR0lUf+1Dr+mtkUnVdV7FqZGBOhhvqt2yF/gnmyyJwk370zQC4eAelFvdDrjxWbd6YXOpUSIkhgQhYyEW7aNKFwyxJjIcF6nFfZZrMEpy54wAe9zg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=0S7AhvO2r1Sn1Aa/lDwDJew3h+/4QcW63K+NKu+NC5Q=;
 b=Rn+ucqTUJynw04DR6xNsxhSSpr4w7M+vjpCJAHIAq54FIMxdz74tLH4eIyj6eR+Um8GkVOzVy6MY+m7SC+hmVrqg+h/Fz+N9NaAr38fIBXiX3DD3Uhein2+uqRce6/UQfxfFBoN9+Oq53jHdLabG9rY7K/k0WcP69cGhOdfSR104mkljM6tMbE4qwb8c/RsbUHl0ohTbwNx8+uFsozEQXtQd7cPUOIsUhZcTJkyokvGo+E50iT3OS9IjcYJPTPCDoAk2kpCgRZ+OwNgRx6pAaDVf3W1fbikRM4NVruCM59/JExhVR0IyR1opfZiSuJI+U4lAPzwGJhY9Qh/fbjp68w==
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=0S7AhvO2r1Sn1Aa/lDwDJew3h+/4QcW63K+NKu+NC5Q=;
 b=QDCD5IYoFpHLdPWHaS7rE3z5KX/4d/C0Rv5YUEKjPZY/dwo5DEVS37fq6MUIAA46blOZvh82JFAOYx50bT5rEH3e6oVOKYFvJmbDRbt3npKlSB8FLEht1fHz/A0O71ZzUzTy9f/+KTKMhK8v5r+ComFq+f6IGNZm/TKnKFnSIt0=
From: Dongli Zhang <dongli.zhang@oracle.com>
To: x86@kernel.org, virtualization@lists.linux-foundation.org,
        kvm@vger.kernel.org, pv-drivers@vmware.com,
        xen-devel@lists.xenproject.org, linux-hyperv@vger.kernel.org
Cc: jgross@suse.com, akaher@vmware.com, amakhalov@vmware.com,
        tglx@linutronix.de, mingo@redhat.com, bp@alien8.de,
        dave.hansen@linux.intel.com, hpa@zytor.com, pbonzini@redhat.com,
        wanpengli@tencent.com, vkuznets@redhat.com, peterz@infradead.org,
        seanjc@google.com, dwmw2@infradead.org, joe.jin@oracle.com,
        boris.ostrovsky@oracle.com, linux-kernel@vger.kernel.org
Subject: [PATCH RFC 1/1] x86/paravirt: introduce param to disable pv sched_clock
Date: Wed, 18 Oct 2023 15:11:23 -0700
Message-Id: <20231018221123.136403-1-dongli.zhang@oracle.com>
X-Mailer: git-send-email 2.34.1
Content-Transfer-Encoding: 8bit
Content-Type: text/plain
X-ClientProxiedBy: SJ0PR13CA0189.namprd13.prod.outlook.com
 (2603:10b6:a03:2c3::14) To BYAPR10MB2663.namprd10.prod.outlook.com
 (2603:10b6:a02:a9::20)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: BYAPR10MB2663:EE_|DS7PR10MB7324:EE_
X-MS-Office365-Filtering-Correlation-Id: 62c8e463-993a-4f82-687d-08dbd027ef2c
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: 
	j/VlSwLWHQUJRWPrSQb1bQIIdNsAc/3mESMXa/yHu84sOPEWdjn0h1yGAeFQLajdF7grAPXZJb9l1SzDNucq6EFGsWtefIZo3/u/hBm1ziKtkPI8NyRwjm6t4yH32mz4MWdgSqIlFnccC+RRr3vT2lzB9uHDbOMfoGVV0/xHfGpg/mBkbTGJXr+X5w225nNBGgDqMuN88FGqLzdoi+y2bWCplCSpoSLOkcqUB7mCxDB2e1NDyc/nlfzEPVM5qOkR/MwpmksXtp35AHfL6VitX+XEhd1vBOBf0/GljmTf5kEm/4ue6BnEN2D4lXhPYX4Bo0y1un38ajgYbi9zVigyF7Pg0q/Nai0cvm+U9arVPROj8YWETryViE9H/Q3ZzysctHI9KGxNPWS4uZcyF4bigWkeNi0JAYUrHfofbduCNeGUAxuMwk/fcLMgGkVQs4Jrn39EasQdtUhuOmbiT+1ljt7iKyCP5yILO59Frb/wDpFXzP0IaRRw9cL/302wPZeR4+A7SQaDtl5vBcM3JfHR3Ud/zJhbB81lSi0OWonlzhYwY5OFS6hPHYHmFLmO5KMNlUVT6VpwqDicD1MLVU55Vw==
X-Forefront-Antispam-Report: 
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR10MB2663.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(366004)(396003)(376002)(136003)(39860400002)(230922051799003)(1800799009)(451199024)(64100799003)(186009)(36756003)(66476007)(86362001)(66946007)(38100700002)(2616005)(83380400001)(41300700001)(6512007)(26005)(6506007)(1076003)(6666004)(2906002)(478600001)(966005)(44832011)(7416002)(5660300002)(66556008)(316002)(8676002)(6486002)(8936002)(4326008);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0: 
	=?us-ascii?Q?mxL2wChVYcC177zpdi5qB+ttYnygWQw2vGxc7XlJUNSJKwSrf0CzuR/AOMAp?=
 =?us-ascii?Q?UtD+SiEU9aNz1BeobZMBS2U+Fj8Vdu2GJ7+yc3fen2moJj0QozhF7htGUt3N?=
 =?us-ascii?Q?M+nlOzyD6ES1lU0TR2lIpMg9DGmRp8DJp+XfkHFdOoLHEvZpnrxIxtrjc3N8?=
 =?us-ascii?Q?cSgm8r88uvdgaS6sWFPJACAnkLkz7P8MHZ2TSkSaK40NwyEhEOuxY+9EyROJ?=
 =?us-ascii?Q?EKBBwO0ZGOhgzNAgUNNyYa6+TKXpoz1Lem22MtT2X393HpuX/z0qZRV4LyYf?=
 =?us-ascii?Q?OqOm9BwUlskbqJPkS7aJpluKzNl92MnrOfDoT7HhIidVk3yQQMVCSKsqcqh9?=
 =?us-ascii?Q?oVivNFuac/DdO1iQNLqin2vD27tO5stiNrSaRAb2BCHeGwfF2LIlbzB5l0hE?=
 =?us-ascii?Q?+yLqESlne0xR1pSMfHqXLW6opiLx6Ir/PuHfujfUa1ua/to09fjmsZGllxZ+?=
 =?us-ascii?Q?/NAQAyKFoOoI8VyEAXcvXjZz3PMfIp1DG7wD+a3i6Tgt2CMv/9/XM1uaHCrq?=
 =?us-ascii?Q?3mU9pyXJW5tFGOAqgrnV9TrtrBsTWiVYVQrRAeZDAe6AH3IUwmydQrmF8Uh9?=
 =?us-ascii?Q?Jsje2V44KpkFN8GTYvkTTBtUlZzfGL+sduL6aNbRRVNflijPrCb3LRLl+iON?=
 =?us-ascii?Q?7369OImAy+JEZlglJT79Am3laJd6adA6S3YWJ3rOP8lbxhkqSP5aIocg2BJT?=
 =?us-ascii?Q?/Dwkep+DT2+vS0SMHD1I4+PYv/9WPlM1Dp2n5HlyPKcVc8r2KLzl9Sv5t165?=
 =?us-ascii?Q?SKN80ZcbtXKjtgF1AN5ZK+A6nQVYpoJomwUbFN+cJ1pEdXSgEAmLI45DWiPh?=
 =?us-ascii?Q?D60myZQDPKfXHrfWbuE+n1LtNokUHLuNxSEKCP0oHqQzupL7c+TFFxy+RDAa?=
 =?us-ascii?Q?m7kNdggytxe4hVvuGDz0hRxDziVmylneRpPxKFWeV6hqgr4kRHrhyo5JJ3io?=
 =?us-ascii?Q?eCYwUhtYR5aNffC1ZzvUli7Maynbufc8Vv560MycipKJXIN+CGVu/Ml+AO3z?=
 =?us-ascii?Q?rnXy9/h+1bFQpnJNa4IQGP61aKYD4PitGnGDsNzyFKMAlxRKHGfgGz8If6ay?=
 =?us-ascii?Q?CtDvR1GCEsVxAHH+fksCus7x3xzV7exOn3qQvbmMNXrXOxFoBKDulDvyczwP?=
 =?us-ascii?Q?QBIAT4xHmS8R4+79uOkyXLCNUF2p1V8jHWszdm3nA3hyBcK3y/t6/itzSpnw?=
 =?us-ascii?Q?0kgni1jT1zFSXbWLeSeVV5GZ8ZyQWp8cenzTINPuDKECLxWO7vbNbPD6Ux5j?=
 =?us-ascii?Q?uFol7aB/aCtDk5uX+HVE9BBeOseAnju0JvCkbi7Z3rOvbTOVPFlnTbP22+Ha?=
 =?us-ascii?Q?xaykVkV5Hjx3iIGzXqDOEsXR3YudD9MVcPjamEZlhZSVixKbD/6uLvil1Au6?=
 =?us-ascii?Q?4TOyJWvoPqdDAKvOfEiFMPY+zrqNlEACw+ik1NlNwgb7peTNZFwHpLGzDQ4J?=
 =?us-ascii?Q?lMG8j4f+RscoWd5D3ysc50mf1uqcu1mJNbU2ns/iTOwChMus1XbVP9leVWGu?=
 =?us-ascii?Q?EB6kFBSI5pSvklv1oyxHXYdLMNmyJu2Y6zRZG0sFy8AfU85ZneeYnGUsvr6c?=
 =?us-ascii?Q?b7Bti6Av9S9a3qyEcJ6bhNpdEprpa6DTbRiqCn0y?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: 
	=?us-ascii?Q?laHDKK39RvH2ouOnaZEwE7qXGr+KH10B+VzCPEwrmRTl0XV2ABIWgjkmUf0s?=
 =?us-ascii?Q?497NogqiqBIDJkxePdcYExoPtmRJOlro+fk1N5LqCSuF0utXL5MLHCkleaRM?=
 =?us-ascii?Q?ZG0ERD3fryi45tcJ6EesJKj0f8UDLDe8csUs7Q62vBKbxi351PNii9wLOCbc?=
 =?us-ascii?Q?M2vm62IjQYb1fsGT+2tHHERgQV9be0AekWsi431oxTLFhrgNGccjvR7Q/GVx?=
 =?us-ascii?Q?6TV5pwF8PIyh9Xcr56dw7kqy0m8ggkhs+cJq5+Kpi4LsM1/v9cwFDdTqrKnQ?=
 =?us-ascii?Q?jY5b++9V/KCYNX9z11hUszvnbC0GZ6XwOSwx02XYGDoihOSA5mT86BCGUU/v?=
 =?us-ascii?Q?5a6hgvZSjFVFXbZ2VdR6W5byvnHKTgl7NbEHUoshCzlhEL4pquAofwOT8JRX?=
 =?us-ascii?Q?1vDD6qbtjGexhFYQhyN3e9HNDV9Ft0lJ0mIoIJLjFIcUKYBUHL675RmHoQ4r?=
 =?us-ascii?Q?BC1fGjMV04uaausCWP173BXppbPKCNUQl3/TkW3CnVCWQyScTLNEykrcdzY0?=
 =?us-ascii?Q?TnKQpj28WAiBvC9DOhmSxut+wxgbbdqg0V2NEdLIZSoy6IneTFahDp7I/VI1?=
 =?us-ascii?Q?7DtCzK0YQ3y4HN8pz35VFMnYdBwr4YyJ2BhGyOSCiTMQF6En8yX4DHEWtuis?=
 =?us-ascii?Q?qC3zMDbdIsfHb8QORKoAZWygCKL1wGkVqCsxDf3fDWTorzhMYvCKBN/ldIGK?=
 =?us-ascii?Q?NA79exEi3U6jNXQVF1UjGn7dTrqPVllM1f4hIkJUdE7iAbsjdnJeKbqhsBHJ?=
 =?us-ascii?Q?jht1j2zG1ALP6hPyYMXJqvWICizOVLqZ4EtcCplS5OTmmya7hY2+LlfC4oHA?=
 =?us-ascii?Q?y/n5YFtn4OtS568bU4NNqdvqdQLoqBZ+wPOL0K0CI98QROm2MGY8kyfOA4Hv?=
 =?us-ascii?Q?p9J4qdCIgXvAmSoRqkpv006Lv3TzxAUnymecuBw/pQSevjRhaEwWeKtC4ti7?=
 =?us-ascii?Q?2GWuJ/N7gjp8ugcpnT7EFd76nWABhqGY8+qufOOQaoPP9u0DHGDqSTtFGVB8?=
 =?us-ascii?Q?zzHUA2uOkoLD/YocRLaFwPSqSlGxiR2qzBemmDJ/gHhhItQMGHlNKwR10cc4?=
 =?us-ascii?Q?sTVPQA0n0UMj0vPpgIDmHrBK+xfUhK/VKTbDZHSs+jQx76Hbwyw+nsBrJqDo?=
 =?us-ascii?Q?hUtFCgPRbZvVk1rJ0TN7OFR8EEXi7vlHvwxZ7xO9Wy5XP2yfdE0wldkxiIob?=
 =?us-ascii?Q?owZ1yeaeZwtJr2R1s0qp/lGWAMy2N8FyFfaF/E1ezhDKvnghuIlFzWQ4BGE?=
 =?us-ascii?Q?=3D?=
X-OriginatorOrg: oracle.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 62c8e463-993a-4f82-687d-08dbd027ef2c
X-MS-Exchange-CrossTenant-AuthSource: BYAPR10MB2663.namprd10.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Oct 2023 22:16:53.9536
 (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: VPUQs7wZovusS4MG23uJQt5z0aDrsF2gONM82Y5ICqmgOxcR5TxavE8HyoKGy/lpUIcVXjf5/mHGy1tvcQW/Rw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR10MB7324
X-Proofpoint-Virus-Version: vendor=baseguard
 engine=ICAP:2.0.272,Aquarius:18.0.980,Hydra:6.0.619,FMLib:17.11.176.26
 definitions=2023-10-18_18,2023-10-18_01,2023-05-22_02
X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 spamscore=0 phishscore=0 suspectscore=0
 mlxscore=0 mlxlogscore=999 bulkscore=0 malwarescore=0 adultscore=0
 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2309180000
 definitions=main-2310180183
X-Proofpoint-GUID: I_9Vn3ylX5O_ShZeLzA9mAADAWz4pA27
X-Proofpoint-ORIG-GUID: I_9Vn3ylX5O_ShZeLzA9mAADAWz4pA27

As mentioned in the linux kernel development document, "sched_clock() is
used for scheduling and timestamping". While there is a default native
implementation, many paravirtualizations have their own implementations.

About KVM, it uses kvm_sched_clock_read() and there is no way to only
disable KVM's sched_clock. The "no-kvmclock" may disable all
paravirtualized kvmclock features.

 94 static inline void kvm_sched_clock_init(bool stable)
 95 {
 96         if (!stable)
 97                 clear_sched_clock_stable();
 98         kvm_sched_clock_offset = kvm_clock_read();
 99         paravirt_set_sched_clock(kvm_sched_clock_read);
100
101         pr_info("kvm-clock: using sched offset of %llu cycles",
102                 kvm_sched_clock_offset);
103
104         BUILD_BUG_ON(sizeof(kvm_sched_clock_offset) >
105                 sizeof(((struct pvclock_vcpu_time_info *)NULL)->system_time));
106 }

There is known issue that kvmclock may drift during vCPU hotplug [1].
Although a temporary fix is available [2], we may need a way to disable pv
sched_clock. Nowadays, the TSC is more stable and has less performance
overhead than kvmclock.

This is to propose to introduce a global param to disable pv sched_clock
for all paravirtualizations.

Please suggest and comment if other options are better:

1. Global param (this RFC patch).

2. The kvmclock specific param (e.g., "no-vmw-sched-clock" in vmware).

Indeed I like the 2nd method.

3. Enforce native sched_clock only when TSC is invariant (hyper-v method).

4. Remove and cleanup pv sched_clock, and always use pv_sched_clock() for
all (suggested by Peter Zijlstra in [3]). Some paravirtualizations may
want to keep the pv sched_clock.

To introduce a param may be easier to backport to old kernel version.

References:
[1] https://lore.kernel.org/all/20230926230649.67852-1-dongli.zhang@oracle.com/
[2] https://lore.kernel.org/all/20231018195638.1898375-1-seanjc@google.com/
[3] https://lore.kernel.org/all/20231002211651.GA3774@noisy.programming.kicks-ass.net/

Thank you very much for the suggestion!

Signed-off-by: Dongli Zhang <dongli.zhang@oracle.com>
---
 arch/x86/include/asm/paravirt.h |  2 +-
 arch/x86/kernel/kvmclock.c      | 12 +++++++-----
 arch/x86/kernel/paravirt.c      | 18 +++++++++++++++++-
 3 files changed, 25 insertions(+), 7 deletions(-)

diff --git a/arch/x86/include/asm/paravirt.h b/arch/x86/include/asm/paravirt.h
index 6c8ff12140ae..f36edf608b6b 100644
--- a/arch/x86/include/asm/paravirt.h
+++ b/arch/x86/include/asm/paravirt.h
@@ -24,7 +24,7 @@ u64 dummy_sched_clock(void);
 DECLARE_STATIC_CALL(pv_steal_clock, dummy_steal_clock);
 DECLARE_STATIC_CALL(pv_sched_clock, dummy_sched_clock);
 
-void paravirt_set_sched_clock(u64 (*func)(void));
+int paravirt_set_sched_clock(u64 (*func)(void));
 
 static __always_inline u64 paravirt_sched_clock(void)
 {
diff --git a/arch/x86/kernel/kvmclock.c b/arch/x86/kernel/kvmclock.c
index fb8f52149be9..0b8bf5677d44 100644
--- a/arch/x86/kernel/kvmclock.c
+++ b/arch/x86/kernel/kvmclock.c
@@ -93,13 +93,15 @@ static noinstr u64 kvm_sched_clock_read(void)
 
 static inline void kvm_sched_clock_init(bool stable)
 {
-	if (!stable)
-		clear_sched_clock_stable();
 	kvm_sched_clock_offset = kvm_clock_read();
-	paravirt_set_sched_clock(kvm_sched_clock_read);
 
-	pr_info("kvm-clock: using sched offset of %llu cycles",
-		kvm_sched_clock_offset);
+	if (!paravirt_set_sched_clock(kvm_sched_clock_read)) {
+		if (!stable)
+			clear_sched_clock_stable();
+
+		pr_info("kvm-clock: using sched offset of %llu cycles",
+			kvm_sched_clock_offset);
+	}
 
 	BUILD_BUG_ON(sizeof(kvm_sched_clock_offset) >
 		sizeof(((struct pvclock_vcpu_time_info *)NULL)->system_time));
diff --git a/arch/x86/kernel/paravirt.c b/arch/x86/kernel/paravirt.c
index 97f1436c1a20..2cfef94317b0 100644
--- a/arch/x86/kernel/paravirt.c
+++ b/arch/x86/kernel/paravirt.c
@@ -118,9 +118,25 @@ static u64 native_steal_clock(int cpu)
 DEFINE_STATIC_CALL(pv_steal_clock, native_steal_clock);
 DEFINE_STATIC_CALL(pv_sched_clock, native_sched_clock);
 
-void paravirt_set_sched_clock(u64 (*func)(void))
+static bool no_pv_sched_clock;
+
+static int __init parse_no_pv_sched_clock(char *arg)
+{
+	no_pv_sched_clock = true;
+	return 0;
+}
+early_param("no_pv_sched_clock", parse_no_pv_sched_clock);
+
+int paravirt_set_sched_clock(u64 (*func)(void))
 {
+	if (no_pv_sched_clock) {
+		pr_info("sched_clock: not configurable\n");
+		return -EPERM;
+	}
+
 	static_call_update(pv_sched_clock, func);
+
+	return 0;
 }
 
 /* These are in entry.S */
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Wed Oct 18 22:23:26 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 22:23:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618796.962910 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtEwj-0003rA-BP; Wed, 18 Oct 2023 22:23:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618796.962910; Wed, 18 Oct 2023 22:23: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 1qtEwj-0003r3-7Q; Wed, 18 Oct 2023 22:23:21 +0000
Received: by outflank-mailman (input) for mailman id 618796;
 Wed, 18 Oct 2023 22: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 1qtEwh-0003qt-Jz; Wed, 18 Oct 2023 22: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 1qtEwh-0003Gx-EX; Wed, 18 Oct 2023 22: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 1qtEwh-0004Ed-3B; Wed, 18 Oct 2023 22:23:19 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qtEwh-0000f9-2o; Wed, 18 Oct 2023 22: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=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=aNdzaBqGdtf9R++Of2jbWWLQb2WYPx+HcKsusS71cfI=; b=w+C5WsI0gIhKWAGIdeQB9mDFjE
	iho7K5DTfQVkqy76K99aKCCxK64mPYI+rLCZ9c/lmdYgCvV8570/kNjZSbSvSrNlH2bcXkVNyZvgX
	rcw8/jxKK5jfVlG+SbowFBSCV6DLgqAokrxNt6NXMeAzB8EvuixEpmdpGADxQ3wYD574=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183420-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 183420: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=b75d9f556d6f290a4037064a2b934f5a3396328c
X-Osstest-Versions-That:
    ovmf=7fe49887c4d227e585d5aa5530ee8a8d79d5fa1e
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 18 Oct 2023 22:23:19 +0000

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

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 b75d9f556d6f290a4037064a2b934f5a3396328c
baseline version:
 ovmf                 7fe49887c4d227e585d5aa5530ee8a8d79d5fa1e

Last test of basis   183417  2023-10-18 17:42:23 Z    0 days
Testing same since   183420  2023-10-18 20:10:44 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Yuwei Chen <yuwei.chen@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
   7fe49887c4..b75d9f556d  b75d9f556d6f290a4037064a2b934f5a3396328c -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Wed Oct 18 22:32:35 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 22:32:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618801.962919 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtF5P-0005zW-4u; Wed, 18 Oct 2023 22:32:19 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618801.962919; Wed, 18 Oct 2023 22: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 1qtF5P-0005zP-24; Wed, 18 Oct 2023 22:32:19 +0000
Received: by outflank-mailman (input) for mailman id 618801;
 Wed, 18 Oct 2023 22:32: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=UegX=GA=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qtF5O-0005zJ-3w
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 22:32:18 +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 30750227-6e06-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 00:32:16 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by dfw.source.kernel.org (Postfix) with ESMTP id F0051619C6;
 Wed, 18 Oct 2023 22:32:14 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id C1D12C433C7;
 Wed, 18 Oct 2023 22:32: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: 30750227-6e06-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1697668334;
	bh=I3Kcl5qlOaegW/RoLIpvqbFfjhN3swj3h8MX7XHiWsw=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=ZbFW8Cg4f1RbXxYgnVJRumUIi42dVSSsb50khKHRXBH8uiXM82J+VHuF6tvgc4M00
	 2RfVUG97QjKagRkrvJwD9t2oRLSWw+ywXYGLrmwzizTH5PYHQ3i+JvRMnrNBp+qwbZ
	 HrK1ktV/ebk/tHGu50HCxAoQS5W127fDV/yP6GSXFg4RlyvQTjtyYAFiooSD7lDI2i
	 bvbV46Xbc0GBssp/jeqSLaYdvYlN7jRgtio8IwoHXjg70kAHoyXgEVf9j1CiCCvQmP
	 YDJ3xEo8I4Pwo1Nj7Bp2Q9JgFsNi/bTDpSjF1w67ELNylWyO3Pi9ov3PWhCGCBttHV
	 Xk9utckAGt76w==
Date: Wed, 18 Oct 2023 15:32:12 -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: =?UTF-8?Q?Marek_Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>, 
    xen-devel@lists.xenproject.org, Henry Wang <Henry.Wang@arm.com>, 
    Doug Goldstein <cardoe@cardoe.com>, 
    Stefano Stabellini <sstabellini@kernel.org>
Subject: Re: [PATCH for-4.18 0/5] automation: cleanup hardware based tests
In-Reply-To: <12f20d5a-3306-441b-823e-cdfb7008ec5d@citrix.com>
Message-ID: <alpine.DEB.2.22.394.2310181531200.965337@ubuntu-linux-20-04-desktop>
References: <cover.550599c54c91da4f8417fde358992e75bf8163c0.1696557834.git-series.marmarek@invisiblethingslab.com> <12f20d5a-3306-441b-823e-cdfb7008ec5d@citrix.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: multipart/mixed; BOUNDARY="8323329-983667875-1697668294=:965337"
Content-ID: <alpine.DEB.2.22.394.2310181531390.965337@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-983667875-1697668294=:965337
Content-Type: text/plain; CHARSET=UTF-8
Content-Transfer-Encoding: 8BIT
Content-ID: <alpine.DEB.2.22.394.2310181531391.965337@ubuntu-linux-20-04-desktop>

On Wed, 18 Oct 2023, Andrew Cooper wrote:
> On 06/10/2023 3:05 am, Marek Marczykowski-Górecki wrote:
> > While working on tests for MSI-X, I did few cleanups of hw-based gitlab tests,
> > greatly reducing false positive messages in the test output.
> >
> > After applying this series, the tests-artifacts/alpine/3.18 container needs to
> > be rebuilt.
> > Test run with container rebuilt (on my repo):
> > https://gitlab.com/xen-project/people/marmarek/xen/-/pipelines/1027467761
> >
> > Cc-ing Henry for release ack.
> > ---
> > Cc: Henry Wang <Henry.Wang@arm.com>
> > Cc:  Doug Goldstein <cardoe@cardoe.com>
> > Cc:  Stefano Stabellini <sstabellini@kernel.org>
> >
> > Marek Marczykowski-Górecki (5):
> >   automation: include real-time view of the domU console log too
> >   automation: hide timeout countdown in log
> >   automation: cleanup test alpine install
> >   automation: improve checking for MSI/MSI-X in PCI passthrough tests
> >   automation: extract QEMU log in relevant hardware tests
> 
> Acked-by: Andrew Cooper <andrew.cooper3@citrix.com>

Acked-by: Stefano Stabellini <sstabellini@kernel.org>


> Henry - this will be a good improvement to take.  It's only the test
> logic, with Gitlab being happy with the result.

I'll leave it to Henry.

Andrew, if/when you end up committing the series, please also update the
container,
--8323329-983667875-1697668294=:965337--


From xen-devel-bounces@lists.xenproject.org Wed Oct 18 22:36:04 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 22:36:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618804.962929 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtF91-0007ID-JR; Wed, 18 Oct 2023 22:36:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618804.962929; Wed, 18 Oct 2023 22:36: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 1qtF91-0007I6-Gs; Wed, 18 Oct 2023 22:36:03 +0000
Received: by outflank-mailman (input) for mailman id 618804;
 Wed, 18 Oct 2023 22:36: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=UegX=GA=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qtF90-0007I0-8B
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 22:36:02 +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 b5af3879-6e06-11ee-9b0e-b553b5be7939;
 Thu, 19 Oct 2023 00:36:00 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by dfw.source.kernel.org (Postfix) with ESMTP id CBE03619D9;
 Wed, 18 Oct 2023 22:35:58 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id C41E6C433C9;
 Wed, 18 Oct 2023 22:35: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: b5af3879-6e06-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1697668558;
	bh=uPtmfO+EA78Azp7vtbI+izY8X0dFEvOREDQqVMr1mp8=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=tVDQVRpaUJ611ucsoAg2/Z/7MU0gME6UEAsw4fpsn9QDWf0RNzfG6+akgw1TnXZd6
	 11U5NwObAdI6B028SK80spZ8xwHAeyycY1jUUkZn5YL2hx8oy6V0hO9FzDNw01Zg97
	 2sKTsccBYNdrkadatRzYIZDz7uSKOrVd2tQpuE8eMM+SYuGQtgG/5NyfEY+CjhvRP7
	 2w5dqdKMF/pY4Sk/dU/QgxgASMn+QQYF3J66bxRI3DxBwmFC36Km5sSm5V/pXKR+q7
	 PTBCFQ+BbbnJbeSXZzuHgLHoHlm9jSwuh1jQXFF6s29WTWXdCAufzHRY0X+un7llJu
	 05BXzYTUtt5mw==
Date: Wed, 18 Oct 2023 15:35: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, jbeulich@suse.com, andrew.cooper3@citrix.com, 
    roger.pau@citrix.com, Simone Ballarin <simone.ballarin@bugseng.com>, 
    Doug Goldstein <cardoe@cardoe.com>, 
    George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>, 
    Wei Liu <wl@xen.org>
Subject: Re: [XEN PATCH][for-4.19 v3] xen: address violations of Rule 11.9
In-Reply-To: <d760ef0c088dc15ecc411b83640735123444f887.1697636446.git.nicola.vetrini@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2310181535480.965337@ubuntu-linux-20-04-desktop>
References: <d760ef0c088dc15ecc411b83640735123444f887.1697636446.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, 18 Oct 2023, Nicola Vetrini wrote:
> The constant 0 is used instead of NULL in '__ACCESS_ONCE' as a
> compile-time check to detect non-scalar types; its usage for this
> purpose is deviated.
> 
> Furthermore, the 'typeof_field' macro is introduced as a general way
> to access the type of a struct member without declaring a variable
> of struct type. Both this macro and 'sizeof_field' are moved to
> 'xen/macros.h'.
> 
> No functional change intended.
> 
> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>

Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>



From xen-devel-bounces@lists.xenproject.org Wed Oct 18 22:44:12 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 22:44:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618808.962939 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtFGn-0000qm-BK; Wed, 18 Oct 2023 22:44:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618808.962939; Wed, 18 Oct 2023 22:44: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 1qtFGn-0000qf-8p; Wed, 18 Oct 2023 22:44:05 +0000
Received: by outflank-mailman (input) for mailman id 618808;
 Wed, 18 Oct 2023 22: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=UegX=GA=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qtFGl-0000qZ-Pr
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 22:44:03 +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 d45060df-6e07-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 00:44:02 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by sin.source.kernel.org (Postfix) with ESMTP id E9A7ECE2778;
 Wed, 18 Oct 2023 22:43:58 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 7B08AC433C7;
 Wed, 18 Oct 2023 22:43: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: d45060df-6e07-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1697669038;
	bh=KayYFwKPPJ5HPpCVo0vvslTSG6LhpnMJzpxpk/H3wWw=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=gD9Zd5QmKPzumoe+RZ5dyO17rdliZLr5SjuOUZ8MXP669+pO8kkDWuSRQ37Ei6TVc
	 osOiQiXQUSS8l+7cilwaaCPZeM8amsaoBTJcQXZHacuajKusvEmd0dVLifS90XY6q7
	 KyjkAWWNAX9haDgerRIBmu5V0fsIjLNVqOsBH1eRRijjiB5NBzqp6FcErM4mfKBe+8
	 ikPRnW4SDS5havkFb9JQv6tX+XSWPFX3DBxPbjrDZWDXAxg5RO9OoiTzbqKPPes+Ti
	 b0oO6UupvEYB5SyUlSWgxJGhP+d4g3cJ01UjKD1iGAH22o/BN1H9ppmfpU6dpw8tLX
	 kFTdUWVwfvzsQ==
Date: Wed, 18 Oct 2023 15:43:55 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Jan Beulich <jbeulich@suse.com>
cc: Federico Serafini <federico.serafini@bugseng.com>, consulting@bugseng.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>, 
    Shawn Anastasio <sanastasio@raptorengineering.com>, 
    =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>, 
    Henry Wang <henry.wang@arm.com>, xen-devel@lists.xenproject.org
Subject: Re: [XEN PATCH v3] xen/mm: address violations of MISRA C:2012 Rules
 8.2 and 8.3
In-Reply-To: <d7cd7a02-b960-384e-4af2-f70b425e5ad1@suse.com>
Message-ID: <alpine.DEB.2.22.394.2310181543030.965337@ubuntu-linux-20-04-desktop>
References: <eedcfeb8d1c81527b7e18fcc0eca252577f00035.1696344012.git.federico.serafini@bugseng.com> <d7cd7a02-b960-384e-4af2-f70b425e5ad1@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, 16 Oct 2023, Jan Beulich wrote:
> On 03.10.2023 17:24, Federico Serafini wrote:
> > --- a/xen/arch/x86/mm.c
> > +++ b/xen/arch/x86/mm.c
> > @@ -5901,17 +5901,17 @@ int destroy_xen_mappings(unsigned long s, unsigned long e)
> >   * a problem.
> >   */
> >  void init_or_livepatch modify_xen_mappings_lite(
> > -    unsigned long s, unsigned long e, unsigned int _nf)
> > +    unsigned long s, unsigned long e, unsigned int nf)
> >  {
> > -    unsigned long v = s, fm, nf;
> > +    unsigned long v = s, fm, flags;
> 
> While it looks correct, I consider this an unacceptably dangerous
> change: What if by the time this is to be committed some new use of
> the local "nf" appears, without resulting in fuzz while applying the
> patch? Imo this needs doing in two steps: First nf -> flags, then
> _nf -> nf.

Wouldn't it be sufficient for the committer to pay special attention
when committing this patch? We are in code freeze anyway, the rate of
changes affecting staging is low.


From xen-devel-bounces@lists.xenproject.org Wed Oct 18 23:13:42 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 23:13:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618813.962950 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtFjI-0006Ra-MO; Wed, 18 Oct 2023 23:13:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618813.962950; Wed, 18 Oct 2023 23:13: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 1qtFjI-0006RT-Hl; Wed, 18 Oct 2023 23:13:32 +0000
Received: by outflank-mailman (input) for mailman id 618813;
 Wed, 18 Oct 2023 23:13: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=w+tR=GA=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qtFjG-0006RN-Pv
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 23:13:31 +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 f229f69f-6e0b-11ee-9b0e-b553b5be7939;
 Thu, 19 Oct 2023 01:13:28 +0200 (CEST)
Received: by mail-wm1-x32e.google.com with SMTP id
 5b1f17b1804b1-4079ed65582so19006135e9.1
 for <xen-devel@lists.xenproject.org>; Wed, 18 Oct 2023 16:13:28 -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
 q15-20020adff78f000000b0032da6f17ffdsm3102606wrp.38.2023.10.18.16.13.27
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 18 Oct 2023 16:13: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: f229f69f-6e0b-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1697670808; x=1698275608; darn=lists.xenproject.org;
        h=content-transfer-encoding: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=9dk9QrN2o7ZYIm9t4iYA6iCCBFjEIHDLBTwLQrpa+5Q=;
        b=rLTCmDlXaPdDnbo8K6Td1z1GupXIb/jjHqKgDpxhFLbYb2Y1FISn0IS888RIr9V7WH
         h6ZQ2aSb08g4TpDIwxCE2bo6Bl3+vHUu5U4XhL3rlMBKDVwRRfOzC6jwWGACWFtIlTOl
         /AI+sl7uR4Y19luqZuZ4jap1DPWalqovlJNms=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697670808; x=1698275608;
        h=content-transfer-encoding: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=9dk9QrN2o7ZYIm9t4iYA6iCCBFjEIHDLBTwLQrpa+5Q=;
        b=KJDMcrp45xwtqLdLYbSrPsUZWf8xfJMgVN809Ol1sCceZZXAzCb5ew+ad4kIJ30jZC
         kH82/6ktJ9TAYwLSKtpoYbxNFPxUCa4ny7Ncdow1OlM63QZt8hYaWSibxVRc4wQXz74t
         p/d82U+ZUmDH6VHr+l9+66XxcaiKhmLnlcJOd8nWIepS7M37wF+ukmMnqA3RKFQWKOgF
         FRk1+uQyzS8giCQd00l7uMTnpyo0mhhylwpEgOiam+PBOOVT8WLhJEoP4L+dWvHxeJK0
         OzmSmlLUDX1pr+e3Gp1eUbqsklkq8kNHLUqADjVWTJqARzwYJnxRvLDFUJOQVYBt9SCI
         RlIQ==
X-Gm-Message-State: AOJu0YxKBsz4rpV/DInEntdgegnkb7jT7iBxrSMF3Ro5+q1K81gaD22T
	+d8K9mJ/d4JJXSYpol16oeBLmg==
X-Google-Smtp-Source: AGHT+IEpA33mc4DRfEwTr4w6uBDVE1BQpea/2ioPsiTpCDSz5q6JUYWnQH8rYJwfTMW39QzpgBtXjg==
X-Received: by 2002:a5d:5550:0:b0:32d:8f5d:c6db with SMTP id g16-20020a5d5550000000b0032d8f5dc6dbmr323389wrw.16.1697670807741;
        Wed, 18 Oct 2023 16:13:27 -0700 (PDT)
Message-ID: <35abc556-2f66-4498-b567-87e6a3216d50@citrix.com>
Date: Thu, 19 Oct 2023 00:13:26 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
From: andrew.cooper3@citrix.com
Subject: Re: [XEN PATCH][for-4.19 v3] xen: address violations of Rule 11.9
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, Simone Ballarin <simone.ballarin@bugseng.com>,
 Doug Goldstein <cardoe@cardoe.com>, George Dunlap
 <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Wei Liu <wl@xen.org>
References: <d760ef0c088dc15ecc411b83640735123444f887.1697636446.git.nicola.vetrini@bugseng.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: <d760ef0c088dc15ecc411b83640735123444f887.1697636446.git.nicola.vetrini@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 18/10/2023 2:42 pm, Nicola Vetrini wrote:
> diff --git a/docs/misra/deviations.rst b/docs/misra/deviations.rst
> index ee7aed0609d2..1b00e4e3e9b7 100644
> --- a/docs/misra/deviations.rst
> +++ b/docs/misra/deviations.rst
> @@ -199,6 +199,11 @@ Deviations related to MISRA C:2012 Rules:
>         See automation/eclair_analysis/deviations.ecl for the full explanation.
>       - Tagged as `safe` for ECLAIR.
>  
> +   * - R11.9
> +     - __ACCESS_ONCE uses a 0 as a null pointer constant to check if a type is
> +       scalar, therefore its usage for this purpose is allowed.

This is still deeply misleading.

There is an integer, which happens to be 0 but could be anything, used
for a compile time typecheck[1].  In some cases this may be interpreted
as a pointer constant, and is permitted for this purpose.

~Andrew

[1] I know I wrote scalar typecheck in the comment, but I suspect that
what I actually meant was non-compound-type typecheck.


From xen-devel-bounces@lists.xenproject.org Wed Oct 18 23:14:31 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 23:14:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618816.962959 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtFkE-0007HW-Tx; Wed, 18 Oct 2023 23:14:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618816.962959; Wed, 18 Oct 2023 23: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 1qtFkE-0007HP-RJ; Wed, 18 Oct 2023 23:14:30 +0000
Received: by outflank-mailman (input) for mailman id 618816;
 Wed, 18 Oct 2023 23:14: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=+9wN=GA=casper.srs.infradead.org=BATV+8ac6f4fe82fdef80538c+7360+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qtFkC-0006RN-53
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 23:14:30 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 138f6d27-6e0c-11ee-9b0e-b553b5be7939;
 Thu, 19 Oct 2023 01:14:25 +0200 (CEST)
Received: from [2001:8b0:10b:5:d4f9:734b:fde4:c827]
 (helo=u3832b3a9db3152.ant.amazon.com)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qtFjk-003eu4-Ne; Wed, 18 Oct 2023 23:14: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: 138f6d27-6e0c-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=MIME-Version:Content-Type:References:
	In-Reply-To:Date:Cc:To:From:Subject:Message-ID:Sender:Reply-To:
	Content-Transfer-Encoding:Content-ID:Content-Description;
	bh=N+rErIUncs6vtKxP0tvsUXxfPNPNsSG6K+bG4ccHWoQ=; b=L8zT5Ysz77ILcK2Imkn+hvzcX1
	rNRd0JI+Z7mmryrtsSRjU9+fWvzt9qkYWsbHify2sIDXAz+bClZIgQ2tkZ3FN2tF8O2mcDHuXT7lV
	9d/Lzkp2TUJ02bbR9jcM2JPSyFn/nQrGUzQ0RF3rlja5wPSPGiMT8b0kd4mcOkap1zRLeS1/R3dYH
	fR/n02ircWWiB4vTYXz1rh+M8tXorgltDNI1CLlvTh3F9ZY7JWGjtYQ/w/RU1dZwKnQ7lb6WNyZFS
	oIvdrdYyDIqkVNL9CfSqV00LVQ5+hEzldj/ZrkDy0kvwPHqgY7jCW6nd4JLFwPGYPq5coAVSYlNbM
	CWYpgNIw==;
Message-ID: <f889247e16b98a7f54628161d8c4fbeea6cdc506.camel@infradead.org>
Subject: Re: [PATCH 11/12] hw/xen: automatically assign device index to
 block devices
From: David Woodhouse <dwmw2@infradead.org>
To: Kevin Wolf <kwolf@redhat.com>
Cc: qemu-devel@nongnu.org, Hanna Reitz <hreitz@redhat.com>, Stefano
 Stabellini <sstabellini@kernel.org>, Anthony Perard
 <anthony.perard@citrix.com>, Paul Durrant <paul@xen.org>,
 =?ISO-8859-1?Q?Marc-Andr=E9?= Lureau <marcandre.lureau@redhat.com>,  Paolo
 Bonzini <pbonzini@redhat.com>, "Michael S. Tsirkin" <mst@redhat.com>,
 Marcel Apfelbaum <marcel.apfelbaum@gmail.com>, Richard Henderson
 <richard.henderson@linaro.org>,  Eduardo Habkost <eduardo@habkost.net>,
 Marcelo Tosatti <mtosatti@redhat.com>, qemu-block@nongnu.org, 
 xen-devel@lists.xenproject.org, kvm@vger.kernel.org
Date: Thu, 19 Oct 2023 00:13:59 +0100
In-Reply-To: <ZS+cutIjulWBQakk@redhat.com>
References: <20231016151909.22133-1-dwmw2@infradead.org>
	 <20231016151909.22133-12-dwmw2@infradead.org> <ZS+cutIjulWBQakk@redhat.com>
Content-Type: multipart/signed; micalg="sha-256"; protocol="application/pkcs7-signature";
	boundary="=-+tKukLmWCBrrXXnUxLFA"
User-Agent: Evolution 3.44.4-0ubuntu2 
MIME-Version: 1.0
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html


--=-+tKukLmWCBrrXXnUxLFA
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Wed, 2023-10-18 at 10:52 +0200, Kevin Wolf wrote:
> Am 16.10.2023 um 17:19 hat David Woodhouse geschrieben:
> > From: David Woodhouse <dwmw@amazon.co.uk>
> >=20
> > There's no need to force the user to assign a vdev. We can automaticall=
y
> > assign one, starting at xvda and searching until we find the first disk
> > name that's unused.
> >=20
> > This means we can now allow '-drive if=3Dxen,file=3Dxxx' to work withou=
t an
> > explicit separate -driver argument, just like if=3Dvirtio.
> >=20
> > Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
>=20
> Actually, how does this play together with xen_config_dev_blk()? This
> looks like it tried to implement a very similar thing (which is IF_XEN
> even already existed).
>=20
> Are we now trying to attach each if=3Dxen disk twice in the 'xenpv'
> machine? Or if something prevents this, is it dead code?
>=20
> I think in both cases, we would want to delete that function and remove
> the loop that calls it in xen_init_pv()?

I tested this with an xl config which looks a bit like this...

disk =3D [ "backendtype=3Dqdisk,format=3Dqcow2,vdev=3Dxvda,access=3Drw,targ=
et=3D/var/lib/libvirt/images/fedora28.qcow2" ]
device_model_override =3D "/home/dwmw2/git/qemu/build/qemu-system-x86_64"
device_model_version =3D "qemu-xen"
device_model_args =3D [ "-trace","xen*","-chardev","pty,id=3Dmon","-mon","m=
on","-drive","file=3D/var/lib/libvirt/images/solaris11.qcow2,format=3Dqcow2=
,if=3Dxen","-nic","user,model=3Dxen" ]

The code in xen_config_dev_blk() scribbles over the disk that the
toolstack has configured for me, and adds that qcow2 file from the
'-drive' option on the command line, but in *raw* mode.

Then the new xen-disk support kicks in and finds a free vdev, and adds
the -drive properly /dev/xvdb (as qcow2).

So v2 of this patch will just rip out xen_config_dev_blk() as you
suggest.


--=-+tKukLmWCBrrXXnUxLFA
Content-Type: application/pkcs7-signature; name="smime.p7s"
Content-Disposition: attachment; filename="smime.p7s"
Content-Transfer-Encoding: base64

MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgEFADCABgkqhkiG9w0BBwEAAKCCEkQw
ggYQMIID+KADAgECAhBNlCwQ1DvglAnFgS06KwZPMA0GCSqGSIb3DQEBDAUAMIGIMQswCQYDVQQG
EwJVUzETMBEGA1UECBMKTmV3IEplcnNleTEUMBIGA1UEBxMLSmVyc2V5IENpdHkxHjAcBgNVBAoT
FVRoZSBVU0VSVFJVU1QgTmV0d29yazEuMCwGA1UEAxMlVVNFUlRydXN0IFJTQSBDZXJ0aWZpY2F0
aW9uIEF1dGhvcml0eTAeFw0xODExMDIwMDAwMDBaFw0zMDEyMzEyMzU5NTlaMIGWMQswCQYDVQQG
EwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYD
VQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50
aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC
AQEAyjztlApB/975Rrno1jvm2pK/KxBOqhq8gr2+JhwpKirSzZxQgT9tlC7zl6hn1fXjSo5MqXUf
ItMltrMaXqcESJuK8dtK56NCSrq4iDKaKq9NxOXFmqXX2zN8HHGjQ2b2Xv0v1L5Nk1MQPKA19xeW
QcpGEGFUUd0kN+oHox+L9aV1rjfNiCj3bJk6kJaOPabPi2503nn/ITX5e8WfPnGw4VuZ79Khj1YB
rf24k5Ee1sLTHsLtpiK9OjG4iQRBdq6Z/TlVx/hGAez5h36bBJMxqdHLpdwIUkTqT8se3ed0PewD
ch/8kHPo5fZl5u1B0ecpq/sDN/5sCG52Ds+QU5O5EwIDAQABo4IBZDCCAWAwHwYDVR0jBBgwFoAU
U3m/WqorSs9UgOHYm8Cd8rIDZsswHQYDVR0OBBYEFAnA8vwL2pTbX/4r36iZQs/J4K0AMA4GA1Ud
DwEB/wQEAwIBhjASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEF
BQcDBDARBgNVHSAECjAIMAYGBFUdIAAwUAYDVR0fBEkwRzBFoEOgQYY/aHR0cDovL2NybC51c2Vy
dHJ1c3QuY29tL1VTRVJUcnVzdFJTQUNlcnRpZmljYXRpb25BdXRob3JpdHkuY3JsMHYGCCsGAQUF
BwEBBGowaDA/BggrBgEFBQcwAoYzaHR0cDovL2NydC51c2VydHJ1c3QuY29tL1VTRVJUcnVzdFJT
QUFkZFRydXN0Q0EuY3J0MCUGCCsGAQUFBzABhhlodHRwOi8vb2NzcC51c2VydHJ1c3QuY29tMA0G
CSqGSIb3DQEBDAUAA4ICAQBBRHUAqznCFfXejpVtMnFojADdF9d6HBA4kMjjsb0XMZHztuOCtKF+
xswhh2GqkW5JQrM8zVlU+A2VP72Ky2nlRA1GwmIPgou74TZ/XTarHG8zdMSgaDrkVYzz1g3nIVO9
IHk96VwsacIvBF8JfqIs+8aWH2PfSUrNxP6Ys7U0sZYx4rXD6+cqFq/ZW5BUfClN/rhk2ddQXyn7
kkmka2RQb9d90nmNHdgKrwfQ49mQ2hWQNDkJJIXwKjYA6VUR/fZUFeCUisdDe/0ABLTI+jheXUV1
eoYV7lNwNBKpeHdNuO6Aacb533JlfeUHxvBz9OfYWUiXu09sMAviM11Q0DuMZ5760CdO2VnpsXP4
KxaYIhvqPqUMWqRdWyn7crItNkZeroXaecG03i3mM7dkiPaCkgocBg0EBYsbZDZ8bsG3a08LwEsL
1Ygz3SBsyECa0waq4hOf/Z85F2w2ZpXfP+w8q4ifwO90SGZZV+HR/Jh6rEaVPDRF/CEGVqR1hiuQ
OZ1YL5ezMTX0ZSLwrymUE0pwi/KDaiYB15uswgeIAcA6JzPFf9pLkAFFWs1QNyN++niFhsM47qod
x/PL+5jR87myx5uYdBEQkkDc+lKB1Wct6ucXqm2EmsaQ0M95QjTmy+rDWjkDYdw3Ms6mSWE3Bn7i
5ZgtwCLXgAIe5W8mybM2JzCCBhQwggT8oAMCAQICEQDGvhmWZ0DEAx0oURL6O6l+MA0GCSqGSIb3
DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYD
VQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28g
UlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMB4XDTIyMDEwNzAw
MDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJARYTZHdtdzJAaW5mcmFkZWFkLm9y
ZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3GpC2bomUqk+91wLYBzDMcCj5C9m6
oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZHh7htyAkWYVoFsFPrwHounto8xTsy
SSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT9YgcBqKCo65pTFmOnR/VVbjJk4K2
xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNjP+qDrh0db7PAjO1D4d5ftfrsf+kd
RR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy2U+eITZ5LLE5s45mX2oPFknWqxBo
bQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3BgBEmfsYWlBXO8rVXfvPgLs32VdV
NZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/7auNVRmPB3v5SWEsH8xi4Bez2V9U
KxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmdlFYhAflWKQ03Ufiu8t3iBE3VJbc2
5oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9aelIl6vtbhMA+l0nfrsORMa4kobqQ5
C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMBAAGjggHMMIIByDAfBgNVHSMEGDAW
gBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeDMcimo0oz8o1R1Nver3ZVpSkwDgYD
VR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYwFAYIKwYBBQUHAwQGCCsGAQUFBwMC
MEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYBBQUHAgEWF2h0dHBzOi8vc2VjdGln
by5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9jcmwuc2VjdGlnby5jb20vU2VjdGln
b1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1haWxDQS5jcmwwgYoGCCsGAQUFBwEB
BH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdvLmNvbS9TZWN0aWdvUlNBQ2xpZW50
QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAjBggrBgEFBQcwAYYXaHR0cDovL29j
c3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5mcmFkZWFkLm9yZzANBgkqhkiG9w0B
AQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQvQ/fzPXmtR9t54rpmI2TfyvcKgOXp
qa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvIlSPrzIB4Z2wyIGQpaPLlYflrrVFK
v9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9ChWFfgSXvrWDZspnU3Gjw/rMHrGnql
Htlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0whpBtXdyDjzBtQTaZJ7zTT/vlehc/
tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9IzCCBhQwggT8oAMCAQICEQDGvhmW
Z0DEAx0oURL6O6l+MA0GCSqGSIb3DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3Jl
YXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0
ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJl
IEVtYWlsIENBMB4XDTIyMDEwNzAwMDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJ
ARYTZHdtdzJAaW5mcmFkZWFkLm9yZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3
GpC2bomUqk+91wLYBzDMcCj5C9m6oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZH
h7htyAkWYVoFsFPrwHounto8xTsySSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT
9YgcBqKCo65pTFmOnR/VVbjJk4K2xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNj
P+qDrh0db7PAjO1D4d5ftfrsf+kdRR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy
2U+eITZ5LLE5s45mX2oPFknWqxBobQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3
BgBEmfsYWlBXO8rVXfvPgLs32VdVNZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/
7auNVRmPB3v5SWEsH8xi4Bez2V9UKxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmd
lFYhAflWKQ03Ufiu8t3iBE3VJbc25oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9ae
lIl6vtbhMA+l0nfrsORMa4kobqQ5C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMB
AAGjggHMMIIByDAfBgNVHSMEGDAWgBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeD
Mcimo0oz8o1R1Nver3ZVpSkwDgYDVR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYw
FAYIKwYBBQUHAwQGCCsGAQUFBwMCMEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYB
BQUHAgEWF2h0dHBzOi8vc2VjdGlnby5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9j
cmwuc2VjdGlnby5jb20vU2VjdGlnb1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1h
aWxDQS5jcmwwgYoGCCsGAQUFBwEBBH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdv
LmNvbS9TZWN0aWdvUlNBQ2xpZW50QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAj
BggrBgEFBQcwAYYXaHR0cDovL29jc3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5m
cmFkZWFkLm9yZzANBgkqhkiG9w0BAQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQv
Q/fzPXmtR9t54rpmI2TfyvcKgOXpqa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvI
lSPrzIB4Z2wyIGQpaPLlYflrrVFKv9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9Ch
WFfgSXvrWDZspnU3Gjw/rMHrGnqlHtlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0w
hpBtXdyDjzBtQTaZJ7zTT/vlehc/tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9
IzGCBMcwggTDAgEBMIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVz
dGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMT
NVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEA
xr4ZlmdAxAMdKFES+jupfjANBglghkgBZQMEAgEFAKCCAeswGAYJKoZIhvcNAQkDMQsGCSqGSIb3
DQEHATAcBgkqhkiG9w0BCQUxDxcNMjMxMDE4MjMxMzU5WjAvBgkqhkiG9w0BCQQxIgQgF4aFY123
4CESk8wEPdlLz/d0XFAUkS0lxsHPZ6PzlWAwgb0GCSsGAQQBgjcQBDGBrzCBrDCBljELMAkGA1UE
BhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEYMBYG
A1UEChMPU2VjdGlnbyBMaW1pdGVkMT4wPAYDVQQDEzVTZWN0aWdvIFJTQSBDbGllbnQgQXV0aGVu
dGljYXRpb24gYW5kIFNlY3VyZSBFbWFpbCBDQQIRAMa+GZZnQMQDHShREvo7qX4wgb8GCyqGSIb3
DQEJEAILMYGvoIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVy
MRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNl
Y3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEAxr4Z
lmdAxAMdKFES+jupfjANBgkqhkiG9w0BAQEFAASCAgBeuuI1dDqXATx3JYKIDeedP/qkuw3wIR2L
/gLqk6LuiL/SgiEMvBsCStVhWe1wYzN2csI7K7F48Rfo7oqHD018/chSDAtu4X2XhSTMzG664FVy
Bf+KvClSmkn0UdpyxcOYfEjDAiJIIiVwNetaA+84b1cdPBwW7GSNRsvXrBO5sZo7L8dzW0hw4zR8
KbglPjkn+4+guZWHVjLvTgQDlelofCGThanG9zfZaMojyQ8eS30nueAEF98CZi5TWAoei1gQPfIr
rDXVn7qVaLuWJmwiK7pQlENxo0ZP0pGWqlT7j3TrIN0P7wU4+RkBMAZ3eTMBL5Xgm9hkm1g/rDBP
YPROPsug9iaoKPGwWXc73a0COXqDcwROTq/f0p+GSKCII2LyoVe9mf40ERzEVCBThw4Uya1J7Fd7
ur6YNtAknE+TYV0qAFYHj4gtAuDyCLTOwheKLF/xI0jdYYIP3WikyxxoYdAUUvnRTsbYz3yQB7x5
nGTQGBYW54bDc01FjC2VWC+aaJ+7kEwgUhJ/pp6uhrN3kSeNqnn4YMkNGQrS7GFDu8cVGdoj2UDI
U0KdlwUHSH2gUOdJYafLdPruJ+8Be0jNQOcjAnyq3VQwFJlemECBRLePdgYzYw80Lg7XDa4Wk8MJ
+t83m6/+Ba+XuTIzJC44ey+3tPgVhpx7CLsEuyHdvAAAAAAAAA==


--=-+tKukLmWCBrrXXnUxLFA--


From xen-devel-bounces@lists.xenproject.org Wed Oct 18 23:30:33 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 23:30:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618822.962970 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtFze-0002oz-B4; Wed, 18 Oct 2023 23:30:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618822.962970; Wed, 18 Oct 2023 23:30: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 1qtFze-0002os-8N; Wed, 18 Oct 2023 23:30:26 +0000
Received: by outflank-mailman (input) for mailman id 618822;
 Wed, 18 Oct 2023 23:30: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=w+tR=GA=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qtFzd-0002om-AE
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 23:30: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 4fc11fea-6e0e-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 01:30:24 +0200 (CEST)
Received: by mail-lj1-x236.google.com with SMTP id
 38308e7fff4ca-2c50cd16f3bso78891231fa.2
 for <xen-devel@lists.xenproject.org>; Wed, 18 Oct 2023 16:30:24 -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
 m36-20020a05600c3b2400b00405bbfd5d16sm2940958wms.7.2023.10.18.16.30.23
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 18 Oct 2023 16:30: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: 4fc11fea-6e0e-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1697671824; x=1698276624; 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=ewCKmGXOJvZOSgMbWns6ex8vwXVdo6mv1Ve49Ck6p6c=;
        b=HLijXH62XsIYDxuLTPdn8uosuyfCWeN4T/ImkyHifsaY9nfFYfkv/bn+lLBK9x0DC1
         w7AlT0XdVt+p/wlmwbWe5E63ZFdDPBb8bsqq71BDLOm9qWiMHkFP6eZwxek94SfrjDJd
         tgqcOrulLEyh/5wFfZw5ZcjMsZnirYTo1WFXk=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697671824; x=1698276624;
        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=ewCKmGXOJvZOSgMbWns6ex8vwXVdo6mv1Ve49Ck6p6c=;
        b=Jlvjv5GiCZ+yZvjzKJSR/rtiE9cbS8idqc0HGUs3ph8ytobsmQIFVPz/GK5A3NmJ8r
         B8PUzhqocSqpSd/XHM/5jgv1Un8fa48w6s6sNMfrrYuo3Cd39ynpvFtqE9o5oXANLoUu
         eYLVpxQn0tZlL5i+3uJbZLEJm/mNNBHz+SCUY0YSIjDTEBSpAyjWjd6jUMgLz7JOu6X7
         2lWOQC+gWJojQnLue0MT3gaj2Ui26LXC6Lml81DE5+i9tWRNIA95TrBDXFsOeyfyWcpk
         seruD5riPB02g6twqdoBTZ1Knn/LONyfdtlHvaQtdQ3I/rgZ6rk/hYz3ciGFrG1X7O74
         UqWQ==
X-Gm-Message-State: AOJu0YxBRJV1ny2cZ13LKJ/qTvHIKqydU35iy6a9DYZFj3lNKaVqEloQ
	oYeUy2l4vQOAYgnZRkj+f1SdUg==
X-Google-Smtp-Source: AGHT+IFXfcVC8coGZrSkW/k9kwFcaVAR40K9xME9FADxa7quLR4131chr6/qBoBBMCiWdlZKM84mqQ==
X-Received: by 2002:a2e:a233:0:b0:2c5:11fe:53af with SMTP id i19-20020a2ea233000000b002c511fe53afmr232403ljm.17.1697671823656;
        Wed, 18 Oct 2023 16:30:23 -0700 (PDT)
Message-ID: <33c1d5b2-8652-43b7-be7a-699db144e911@citrix.com>
Date: Thu, 19 Oct 2023 00:30:22 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH 4/5] automation: improve checking for MSI/MSI-X in PCI
 passthrough tests
Content-Language: en-GB
To: =?UTF-8?Q?Marek_Marczykowski-G=C3=B3recki?=
 <marmarek@invisiblethingslab.com>, xen-devel@lists.xenproject.org
Cc: Henry Wang <Henry.Wang@arm.com>, Doug Goldstein <cardoe@cardoe.com>,
 Stefano Stabellini <sstabellini@kernel.org>
References: <cover.550599c54c91da4f8417fde358992e75bf8163c0.1696557834.git-series.marmarek@invisiblethingslab.com>
 <18b10f667f2df986691ed299f7640724618ec95a.1696557834.git-series.marmarek@invisiblethingslab.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: <18b10f667f2df986691ed299f7640724618ec95a.1696557834.git-series.marmarek@invisiblethingslab.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 06/10/2023 3:05 am, Marek Marczykowski-Górecki wrote:
> diff --git a/automation/scripts/qubes-x86-64.sh b/automation/scripts/qubes-x86-64.sh
> index 5464d10fc343..842e6fae7204 100755
> --- a/automation/scripts/qubes-x86-64.sh
> +++ b/automation/scripts/qubes-x86-64.sh
> @@ -90,23 +90,18 @@ on_reboot = "destroy"
>  
>      domU_check="
>  set -x -e
> -ip link set eth0 up
> -timeout 30s udhcpc -i eth0
> +interface=eth0
> +ip link set \"\$interface\" up
> +timeout 30s udhcpc -i \"\$interface\"
>  pingip=\$(ip -o -4 r show default|cut -f 3 -d ' ')
>  ping -c 10 \"\$pingip\"
>  echo domU started
> -cat /proc/interrupts
> +pcidevice=\$(basename \$(readlink /sys/class/net/\$interface/device))
> +lspci -vs \$pcidevice

Actually, I know I said I had no more comments, and maybe this is one
for further cleanup rather than for now, but wouldn't we be much better
using a heredoc?

read -r -d '' domU_check <<"EOF"

lorem ipsum, no \ escaping " or $

EOF

If nothing else it would make the innards of the more readable as a
script fragment, and less likely go to wrong with variable expansion in
the wrong context.

~Andrew


From xen-devel-bounces@lists.xenproject.org Wed Oct 18 23:58:25 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 18 Oct 2023 23:58:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618825.962980 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtGQS-00086j-Eo; Wed, 18 Oct 2023 23:58:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618825.962980; Wed, 18 Oct 2023 23:58: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 1qtGQS-00086c-C1; Wed, 18 Oct 2023 23:58:08 +0000
Received: by outflank-mailman (input) for mailman id 618825;
 Wed, 18 Oct 2023 23:58: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=UegX=GA=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qtGQQ-00086W-Pa
 for xen-devel@lists.xenproject.org; Wed, 18 Oct 2023 23:58:06 +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 2ce595ec-6e12-11ee-9b0e-b553b5be7939;
 Thu, 19 Oct 2023 01:58: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 20A7FB82485;
 Wed, 18 Oct 2023 23:58:03 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 5D10FC433C7;
 Wed, 18 Oct 2023 23:58: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: 2ce595ec-6e12-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1697673482;
	bh=3gBd7x7/9L2RjM9vWQvX1SYgPBDjXZLy5e/83gUOZrk=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=nr2HOQiCOuSPRLTrSVfJ/4wFvJOQLpPxyURaCn/ATHpPkHnvDdzZ8O034XwDvbPU2
	 x2ET/vBX+IxAMKgIhIg0UC3BE+T6KN7QtSndhnI+kAYU3yOGL+h+YnjiDIQvUT6+aA
	 7k4FcR6piPRAFcX5EWZkSge30S9YkUQuwyItJ8j/BakSH/mV3QE1orZfAF2bjdbs0O
	 qieL4a7qPKtlzsi2/EpNBlGUqVHCQ4vXz1JtVQn4WRiLPm7bhh/2SchE+MNso6q5gt
	 UtGv85UBTkUHTrKVZ0bxHrB4+7RjDf8Z+3Sy3QJTrsZQDCIo8mZeBqINiJ25W7xqlm
	 ImHVwT0Fp0iVA==
Date: Wed, 18 Oct 2023 16:57:59 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Stefano Stabellini <sstabellini@kernel.org>
cc: Jan Beulich <jbeulich@suse.com>, Andrew Cooper <andrew.cooper3@citrix.com>, 
    Luca Fancellu <Luca.Fancellu@arm.com>, 
    =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>, 
    Bertrand Marquis <Bertrand.Marquis@arm.com>, 
    "julien@xen.org" <julien@xen.org>, 
    "george.dunlap@citrix.com" <george.dunlap@citrix.com>, 
    "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Subject: Re: SAF-x-safe rename
In-Reply-To: <alpine.DEB.2.22.394.2310161813010.965337@ubuntu-linux-20-04-desktop>
Message-ID: <alpine.DEB.2.22.394.2310181553380.965337@ubuntu-linux-20-04-desktop>
References: <alpine.DEB.2.22.394.2310041633080.2348112@ubuntu-linux-20-04-desktop> <9CF5DF50-B857-4B1D-A210-E6355492CC3B@arm.com> <75d160be-4a8c-48c7-a972-201d78f0bdf0@citrix.com> <50198a73-2f0c-4cf1-9173-86a8158b425b@citrix.com> <71abd99d-7ef9-09db-9c1e-6b1c55188a6b@suse.com>
 <alpine.DEB.2.22.394.2310161813010.965337@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

On Mon, 16 Oct 2023, Stefano Stabellini wrote:
> Please everyone fill in your preference here in advance of tomorrow's
> MISRA C meeting so we can discuss the results live:
> https://cryptpad.fr/form/#/2/form/view/kwflzAkvxhxF5U5Kv9O6QiQ5LEuCmHZlJhnNda7jk2g/

The results are ready. The following people voted:

Jan, Roger, Julien, Bertrand, Stefano, Andrew, and two anonymous guests.

These are the full results:
https://cryptpad.fr/sheet/#/2/sheet/view/xH3R+TopTAsyixnHU32DEKd5IpEIS7ZvnpBacMI1HcQ/

Accounting the two anonymous votes, there is a majority of 5/8 votes in
favor of keeping SAF as is.

Not accounting the two anonymous votes, there is a tie between the
people favoring to keep SAF as is and the ones that would like to change
it. However, the winner of the election is still "keep as is" according
to Cryptpad's Schulze condorcet method.

In conclusion, especially considering that the anonymous votes are
likely valuable members of the community, the winner is to keep "SAF" as
is.

Cheers,

Stefano


PS
If you are curious, the second best is "FUSA" accounting anonymous
votes, and it is "SAFE" not accounting anonymous votes.

PPS
I manually created a copy of the form without the anonymous votes to
check what would happen if we took them out of the equation


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 00:07:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 00:07:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618828.962990 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtGZO-0002bI-93; Thu, 19 Oct 2023 00:07:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618828.962990; Thu, 19 Oct 2023 00:07: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 1qtGZO-0002bB-5u; Thu, 19 Oct 2023 00:07:22 +0000
Received: by outflank-mailman (input) for mailman id 618828;
 Thu, 19 Oct 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=IZCy=GB=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qtGZM-0002b5-ST
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 00:07:20 +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 76f08d08-6e13-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 02:07:19 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by sin.source.kernel.org (Postfix) with ESMTP id 2FC2DCE278C;
 Thu, 19 Oct 2023 00:07:14 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 13D74C433C8;
 Thu, 19 Oct 2023 00:07: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: 76f08d08-6e13-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1697674033;
	bh=45T1Ts4CWcRjOlbhrg7tuYfg/OQJpw618hWVkhSq/IE=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=TdmHpirqdI0+FqN+VeuQShVx6+OrlpjW0rtFRN83Wr/6Grzn2VcTBbCAQweXc87sg
	 j/zXhpxr/XQbJFIXB4qMNdqmLlTS7S+4hbKBFJUvU1harOe0+/zNxLzun9Wr1Iudfp
	 +QOpsVUNQG+VCdUYIeWVEicDma6vpaaC7LfSKv7vVFEGd9D5/9vOkazFuF6Qo4e9xP
	 1riLPadQZA7fJWixG7Bg6+JjcHsCSAMMPS/P12qgqQUGtOGjWhoG4BXO/n80K8T5sB
	 zXuSgsKex+y/litrGoWXW5L3e5PeiHIBmHP8RNETfe5jmHqMMceWIZ+dK6z9/T1oz4
	 6EMHt8qVG28EQ==
Date: Wed, 18 Oct 2023 17:07:10 -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>, michal.orzel@amd.com, 
    xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, 
    consulting@bugseng.com, andrew.cooper3@citrix.com, roger.pau@citrix.com, 
    Wei Liu <wl@xen.org>, xen-devel@lists.xenproject.org
Subject: Re: [XEN PATCH v2 3/7] x86: add deviation comments for asm-only
 functions
In-Reply-To: <dd3534dd-29b0-129d-9f34-b542ed3ffabc@suse.com>
Message-ID: <alpine.DEB.2.22.394.2310181703170.965337@ubuntu-linux-20-04-desktop>
References: <cover.1696833629.git.nicola.vetrini@bugseng.com> <6476706490cc15406bcf3377a57b7c4a303c4901.1696833629.git.nicola.vetrini@bugseng.com> <741e81bc-050c-a773-e622-997b6c0b8335@suse.com> <alpine.DEB.2.22.394.2310161520180.965337@ubuntu-linux-20-04-desktop>
 <dd3534dd-29b0-129d-9f34-b542ed3ffabc@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, 17 Oct 2023, Jan Beulich wrote:
> > Jan, for this specific patch, I don't think we have the scan including
> > Intel vmx files yet. Nicola please correct me if I am wrong. So Nicola
> > wouldn't be able to easily expand this patch to also cover Intel vmx
> > violations of this rule because we don't have the list of violations
> > affecting those files. 
> 
> I'm afraid I disagree: There are likely direct VMX counterparts to the SVM
> items adjusted. No scan is needed to spot those. Anything VMX-only can be
> left separate, sure.

Nicola is new to the codebase, so let us help.

This patch adds deviations for these SVM functions:
- svm_intr_assist
- nsvm_vcpu_switch
- svm_vmenter_helper
- svm_vmexit_handler

I take these are the VMX equivalents:
- vmx_intr_assist
- nvmx_switch_guest
- vmx_vmenter_helper
- vmx_asm_vmexit_handler

Jan, did I miss anything?


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 00:16:34 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 00:16:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618831.963000 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtGi8-000529-2l; Thu, 19 Oct 2023 00:16:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618831.963000; Thu, 19 Oct 2023 00:16: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 1qtGi7-000522-VT; Thu, 19 Oct 2023 00:16:23 +0000
Received: by outflank-mailman (input) for mailman id 618831;
 Thu, 19 Oct 2023 00:16: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=1Zkf=GB=invisiblethingslab.com=marmarek@srs-se1.protection.inumbo.net>)
 id 1qtGi6-00051t-Jl
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 00:16:22 +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 b9306cbb-6e14-11ee-9b0e-b553b5be7939;
 Thu, 19 Oct 2023 02:16:19 +0200 (CEST)
Received: from compute5.internal (compute5.nyi.internal [10.202.2.45])
 by mailout.nyi.internal (Postfix) with ESMTP id A2DA15C025A;
 Wed, 18 Oct 2023 20:16:17 -0400 (EDT)
Received: from mailfrontend1 ([10.202.2.162])
 by compute5.internal (MEProxy); Wed, 18 Oct 2023 20:16:17 -0400
Received: by mail.messagingengine.com (Postfix) with ESMTPA; Wed,
 18 Oct 2023 20:16:16 -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: b9306cbb-6e14-11ee-9b0e-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=
	1697674577; x=1697760977; bh=hjRWnSITFwpAwNPFhQwJq2jfkX/z/yJdqAL
	l0NJWERo=; b=VQJjTa93X1tgOUCjnBXDE91TzxatENPoGTdvYTgoyc/TFEUNsfj
	+4n3j3wMb4Vv3QB1sYH/Wb+a2fpqXyCuN20d9wgOuiHCTshO/6rFreh1zHxldJyO
	A7VJg+7EXHynEoGynW42HbXmx03KeM+bPXcJbOrVZPji1sRiYiI03Iz3hd8qdBON
	RjiPgQLfkliMPtelI9adnbyHnH7N3whVHWey4LmJEhZh9068nePfqRrHYr6wJuOV
	ZGTTm1u6DtWVb9NwvlMOxVocgUGJQJbvGN9nhz4J/m/iUOLCy0Xz8npOPIII/BLn
	xNeCxwAqqkR0CIBNxNfYP82rQ1vtJdKAFsA==
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=fm3; t=1697674577; x=1697760977; bh=hjRWnSITFwpAw
	NPFhQwJq2jfkX/z/yJdqALl0NJWERo=; b=FfDCx3g8oL9VspmsAWImiD2NIeLRX
	ahKH2/FckLMLfvkMAGSFYZTOa2dS5qPz+kym3udzX0O2N8x37pBXs2JlaxJ2GG2n
	1fE0PSqIbNjv34v6Bujy4DTll9ay6YhY3+5clZFEfJFsagVx/jU/rBS5R88x3T/n
	8303/GWXKvPMHRB6VHCZkE78fwIBId0iT8Q4+hLBzqBbCervp6HCk6Si7qyzgCx8
	9SppLbX4bVfDscKYljk94qI0fJ9yCUAA9oSTqBagxaoBhcc8Xfk1l84/+X6/k5kS
	aVxi4Iqy3cquVJhmnD/AiDETnQnRh7h4mYPyCdqxiTaDHn3JMhjNI0r+Q==
X-ME-Sender: <xms:UXUwZVH-NT0L99fOvFOOheAjUstg3YdBnUnNLWDdVfrDlZbvr8187Q>
    <xme:UXUwZaUqHItF-XuJyPvmAWm97-hNmd78oSnPJQOn6eiZuKMu-eKr0VMtIwJ4kbz2y
    9A5MlMBV_GVyA>
X-ME-Received: <xmr:UXUwZXK-yub0sXkZFm4i-RK37ECTCl3XqWuG5Qip946Nfz5t3OX5r48g7fyqZhlIUdRa_QSjzwtOzy6js6pnvXmklK0Gs3A8jPs>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvkedrjeehgdefudcutefuodetggdotefrodftvf
    curfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfghnecu
    uegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmdenuc
    fjughrpeffhffvvefukfhfgggtuggjsehgtderredttdejnecuhfhrohhmpeforghrvghk
    ucforghrtgiihihkohifshhkihdqifpkrhgvtghkihcuoehmrghrmhgrrhgvkhesihhnvh
    hishhisghlvghthhhinhhgshhlrggsrdgtohhmqeenucggtffrrghtthgvrhhnpefgudel
    teefvefhfeehieetleeihfejhfeludevteetkeevtedtvdegueetfeejudenucevlhhush
    htvghrufhiiigvpedtnecurfgrrhgrmhepmhgrihhlfhhrohhmpehmrghrmhgrrhgvkhes
    ihhnvhhishhisghlvghthhhinhhgshhlrggsrdgtohhm
X-ME-Proxy: <xmx:UXUwZbHuaB3SCJ_YUASNebEvWikmuYizXMs2kPyqTIIHKnsWkVNtkw>
    <xmx:UXUwZbVrkJGnXTPnDWMiu8VRQVY-6wIYu4I17KadDhW9izLA-2v4Rg>
    <xmx:UXUwZWMWBX0OEdN_ga5comeaA1xla1WwyFbaq-r8IBxENGQ0Saibsw>
    <xmx:UXUwZYhady_4onImohOpTGQS8RSErpGt6zwnL88yevhtyjnRrKSy6A>
Feedback-ID: i1568416f:Fastmail
Date: Thu, 19 Oct 2023 02:16:12 +0200
From: Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: xen-devel@lists.xenproject.org, Henry Wang <Henry.Wang@arm.com>,
	Doug Goldstein <cardoe@cardoe.com>,
	Stefano Stabellini <sstabellini@kernel.org>
Subject: Re: [PATCH 4/5] automation: improve checking for MSI/MSI-X in PCI
 passthrough tests
Message-ID: <ZTB1TV7LX+tUGAKd@mail-itl>
References: <cover.550599c54c91da4f8417fde358992e75bf8163c0.1696557834.git-series.marmarek@invisiblethingslab.com>
 <18b10f667f2df986691ed299f7640724618ec95a.1696557834.git-series.marmarek@invisiblethingslab.com>
 <33c1d5b2-8652-43b7-be7a-699db144e911@citrix.com>
MIME-Version: 1.0
Content-Type: multipart/signed; micalg=pgp-sha256;
	protocol="application/pgp-signature"; boundary="vlNcnRzYbibicPzS"
Content-Disposition: inline
In-Reply-To: <33c1d5b2-8652-43b7-be7a-699db144e911@citrix.com>


--vlNcnRzYbibicPzS
Content-Type: text/plain; protected-headers=v1; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable
Date: Thu, 19 Oct 2023 02:16:12 +0200
From: Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: xen-devel@lists.xenproject.org, Henry Wang <Henry.Wang@arm.com>,
	Doug Goldstein <cardoe@cardoe.com>,
	Stefano Stabellini <sstabellini@kernel.org>
Subject: Re: [PATCH 4/5] automation: improve checking for MSI/MSI-X in PCI
 passthrough tests

On Thu, Oct 19, 2023 at 12:30:22AM +0100, Andrew Cooper wrote:
> On 06/10/2023 3:05 am, Marek Marczykowski-G=C3=B3recki wrote:
> > diff --git a/automation/scripts/qubes-x86-64.sh b/automation/scripts/qu=
bes-x86-64.sh
> > index 5464d10fc343..842e6fae7204 100755
> > --- a/automation/scripts/qubes-x86-64.sh
> > +++ b/automation/scripts/qubes-x86-64.sh
> > @@ -90,23 +90,18 @@ on_reboot =3D "destroy"
> > =20
> >      domU_check=3D"
> >  set -x -e
> > -ip link set eth0 up
> > -timeout 30s udhcpc -i eth0
> > +interface=3Deth0
> > +ip link set \"\$interface\" up
> > +timeout 30s udhcpc -i \"\$interface\"
> >  pingip=3D\$(ip -o -4 r show default|cut -f 3 -d ' ')
> >  ping -c 10 \"\$pingip\"
> >  echo domU started
> > -cat /proc/interrupts
> > +pcidevice=3D\$(basename \$(readlink /sys/class/net/\$interface/device))
> > +lspci -vs \$pcidevice
>=20
> Actually, I know I said I had no more comments, and maybe this is one
> for further cleanup rather than for now, but wouldn't we be much better
> using a heredoc?
>=20
> read -r -d '' domU_check <<"EOF"
>=20
> lorem ipsum, no \ escaping " or $
>=20
> EOF
>=20
> If nothing else it would make the innards of the more readable as a
> script fragment, and less likely go to wrong with variable expansion in
> the wrong context.

Some of those snippets have intentionally unescaped $ (as in - have it
expanded in place), and IMO having different method depending whether
you want to expand variables inside or not will be more error-prone.
Syntax highlighting in an editor makes it rather easy to spot unescaped
$ or such (and then decide whether it was intentional or not).

--=20
Best Regards,
Marek Marczykowski-G=C3=B3recki
Invisible Things Lab

--vlNcnRzYbibicPzS
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQEzBAEBCAAdFiEEhrpukzGPukRmQqkK24/THMrX1ywFAmUwdU0ACgkQ24/THMrX
1yx9ewf/d97RCvwHZA3RINdIAcmacvWevTXKqkZ03LnryocATOARIkVMN1IXdTyr
PzQUihelCeFew5IUQjizCDm0otP0yq6PU+kL6L6CBmrlBff/w/cwMbfbDhY10p03
E/5GXIu0z899SR9Hfzaz0jjNIybfOi7R2XzxrPHvX6N/p6GOfz9ZYfE69/Cyl3Vb
P2abrfp+giLCx/iJXMG/3BBl/gm2EC8NRmDy9awzYCSjA6D2paerwar40xj3s8Q8
+aVbCnxpqPwb0XuxBICC+mEW3187VyXsS5JewKplkG/Vf9tGPDD8siPylkBZH1Ge
aHpZ6eKNoMLiGRWiDp74+LAm5hY3Fg==
=SSC1
-----END PGP SIGNATURE-----

--vlNcnRzYbibicPzS--


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 00:21:36 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 00:21:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618835.963009 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtGn4-0006gB-Jw; Thu, 19 Oct 2023 00:21:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618835.963009; Thu, 19 Oct 2023 00: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 1qtGn4-0006g4-HQ; Thu, 19 Oct 2023 00:21:30 +0000
Received: by outflank-mailman (input) for mailman id 618835;
 Thu, 19 Oct 2023 00:21: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=IZCy=GB=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qtGn3-0006ft-M9
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 00:21:29 +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 7175ef42-6e15-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 02:21:28 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by ams.source.kernel.org (Postfix) with ESMTP id 7634CB82485;
 Thu, 19 Oct 2023 00:21:26 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 8BC69C433C9;
 Thu, 19 Oct 2023 00:21: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: 7175ef42-6e15-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1697674885;
	bh=rTBxWoO5OnkacBH+1zaBeT7UlqPSHXVdguNDJar5zD8=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=p6kiky/yHFPYOmwZaxomIq0QWJcRuJqkheBviKu9j9NAcpplQrnvkgIgRzBedpFKO
	 isTHiKE9wufydxUOXXvHUCM8MdMA9YyH3AoAXw5jaHt62RHaqtS+mhJYeORkV1hdYt
	 by/nSLFIaevIH+cafiYqiTNxSCsJea4XQINPFzEQlDPM3EY5ploWDr6Oi/dn3r/bxY
	 YzQm/t+C9Lu2NrPWuuNBFjpuCRr6yxoy4QMvBZgUR51PY9DeEHkiBcyufjrCUt7Dx9
	 dHIvnvbyvxgPLl5uWNqnlJPDuF1jOvBy2VeFWs4cK6vZZgSHti2JLop1LcsQigunsT
	 Lb1PUUbzx2dNw==
Date: Wed, 18 Oct 2023 17:21:23 -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>, 
    Bertrand Marquis <Bertrand.Marquis@arm.com>, 
    Federico Serafini <federico.serafini@bugseng.com>, 
    Xen-devel <xen-devel@lists.xenproject.org>, 
    "consulting@bugseng.com" <consulting@bugseng.com>, 
    Rahul Singh <Rahul.Singh@arm.com>, 
    Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, 
    Henry Wang <Henry.Wang@arm.com>
Subject: Re: [XEN PATCH 10/10] arm/smmu: address violation of MISRA C:2012
 Rule 8.2
In-Reply-To: <6d2388f4-dc05-43bc-aaf7-43ac204fdc57@xen.org>
Message-ID: <alpine.DEB.2.22.394.2310181720040.965337@ubuntu-linux-20-04-desktop>
References: <cover.1697207038.git.federico.serafini@bugseng.com> <199886f6ba1f2d5701eabd080b4f9723fc28f4b9.1697207038.git.federico.serafini@bugseng.com> <39d3f8e0-61cf-4b8d-84f1-a5087ba8ead4@xen.org> <D3320838-1E67-4339-A3D4-A3E60FBC4117@arm.com>
 <c9a7f059-4cf5-4a75-b231-573c4fe29b37@xen.org> <92C52E39-729F-40AE-A02F-556C8EE471CB@arm.com> <alpine.DEB.2.22.394.2310161338540.965337@ubuntu-linux-20-04-desktop> <4718460e-756a-40fe-ba1b-7f32a1432b51@xen.org> <alpine.DEB.2.22.394.2310171750170.965337@ubuntu-linux-20-04-desktop>
 <6d2388f4-dc05-43bc-aaf7-43ac204fdc57@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, 18 Oct 2023, Julien Grall wrote:
> Hi Stefano,
> 
> On 18/10/2023 01:55, Stefano Stabellini wrote:
> > On Tue, 17 Oct 2023, Julien Grall wrote:
> > > Hi Stefano,
> > > 
> > > On 16/10/2023 21:47, Stefano Stabellini wrote:
> > > > On Mon, 16 Oct 2023, Bertrand Marquis wrote:
> > > > > > On 16 Oct 2023, at 15:38, Julien Grall <julien@xen.org> wrote:
> > > > > > 
> > > > > > 
> > > > > > 
> > > > > > On 16/10/2023 14:31, Bertrand Marquis wrote:
> > > > > > > Hi Julien,
> > > > > > 
> > > > > > Hi Bertrand,
> > > > > > 
> > > > > > > > On 16 Oct 2023, at 11:07, Julien Grall <julien@xen.org> wrote:
> > > > > > > > 
> > > > > > > > Hi,
> > > > > > > > 
> > > > > > > > On 13/10/2023 16:24, Federico Serafini wrote:
> > > > > > > > > Add missing parameter names, no functional change.
> > > > > > > > > Signed-off-by: Federico Serafini
> > > > > > > > > <federico.serafini@bugseng.com>
> > > > > > > > > ---
> > > > > > > > >    xen/drivers/passthrough/arm/smmu.c | 6 +++---
> > > > > > > > 
> > > > > > > > This file is using the Linux coding style because it is imported
> > > > > > > > from Linux. I was under the impression we would exclude such
> > > > > > > > file
> > > > > > > > for now.
> > > > > > > > 
> > > > > > > > Looking at exclude-list.json, it doesn't seem to be present. I
> > > > > > > > think
> > > > > > > > this patch should be replaced with adding a line in
> > > > > > > > execlude-list.json.
> > > > > > > I think that during one of the discussions we said that this file
> > > > > > > already deviated quite a lot from the status in Linux and we
> > > > > > > wanted to
> > > > > > > turn it to Xen coding style in the future hence it is not listed
> > > > > > > in
> > > > > > > the exclude file.
> > > > > > AFAIK the SMMUv{1, 2} code didn't deviate very much from Linux. I
> > > > > > can't
> > > > > > tell about the SMMUv3.
> > > > > 
> > > > > True that i had the v3 code in mind, we might not want to do that for
> > > > > v1/2
> > > > > you are right.
> > > > > 
> > > > > > 
> > > > > > > At the end having a working smmu might be critical in a safety
> > > > > > > context
> > > > > > > so it will make sense to also check this part of xen.
> > > > > > I don't buy this argument right now. We have files in
> > > > > > exclude-lists.json
> > > > > > that I would consider critical for Xen to run (e.g. common/bitmap.c,
> > > > > > common/libfdt). So if you want to use this argument then we need to
> > > > > > move
> > > > > > critical components of Xen out of the exclusion list.
> > > > > 
> > > > > I am sure we will at some point for runtime code but we cannot do
> > > > > everything on the first shot.
> > > > > I was not meaning to do that now but that it is something to consider.
> > > > 
> > > > Things that are in exclude-lists.json are source files that come from
> > > > other projects and also change very rarely. The argument that we don't
> > > > do MISRA C on the files in exclude-lists.json, it is not because those
> > > > files are unimportant, but because they change only once every many
> > > > years.
> > > 
> > > Interesting. I would have thought this would be a condition to do MISRA as
> > > the
> > > cost to port a patch would increase a bit but this is one time cost every
> > > many
> > > years. Whereas code like the SMMU are still actively developped. And in
> > > particular for SMMUv2 we tried to stick close to Linux to help backport.
> > > So
> > > this would be a reason to initially exclude it from MISRA.
> > > 
> > > > 
> > > > Of course the least we rely on exclude-lists.json the better.
> > > > 
> > > > For smmu.c, looking at the git history I think it is more actively
> > > > worked on than other files such as lib/rbtree.c or common/bitmap.c.
> > > > Given that backports from Linux to smmu.c are not straightforward anyway
> > > > (please correct me if I am wrong) then I think we should not add smmu.c
> > > > to exclude-lists.json and do MISRA for smmu.c.
> > > 
> > > I haven't done any recently. But if they are already not straightforward,
> > > then
> > > adding MISRA on top is not really to make it better. So I think if you
> > > want to
> > > do MISRA for the SMMU, then we need to fully convert it to Xen and abandon
> > > the
> > > idea to backport from Linux.
> > > 
> > > This would also make the code looks nicer as at the moment this contains
> > > wrapper just to stay as close as possible to Linux.
> > 
> > You have a good point. If we do MISRA for the SMMU then we might as well
> > fully convert the file to Xen. As a clarification, we can still look at
> > the fixes on the Linux driver and "port" security fixes and other key
> > patches such as workarounds for broken specific SMMU versions, but for
> > sure we wouldn't want to backport a new feature of the driver or code
> > refactoring / code improvements of the driver. But that probably is
> > already the case today?
> 
> Most likely yes, some features might be useful to backport. The main one I can
> think of is not sharing the stage-2 page-tables as there might be some issue
> to allow the CPU to access the GICv3 ITS doorbell (so it would have to be only
> mapped in the IOMMU page-tables).
> 
> The other one is stage-1 support.
> 
> Anyway, it is not clear whether we could use the same implementation as Linux.

Yeah.

In terms of next steps, what do you suggest?

Are you OK with keeping smmu.c out of exclude-list? And to go forward
with this patch?


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 00:30:17 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 00:30:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618839.963020 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtGvP-00013t-IX; Thu, 19 Oct 2023 00:30:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618839.963020; Thu, 19 Oct 2023 00: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 1qtGvP-00013m-FF; Thu, 19 Oct 2023 00:30:07 +0000
Received: by outflank-mailman (input) for mailman id 618839;
 Thu, 19 Oct 2023 00:30: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=AWKy=GB=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qtGvN-0000yj-Mo
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 00:30:05 +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 a542a929-6e16-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 02:30:04 +0200 (CEST)
Received: from DUZPR01CA0142.eurprd01.prod.exchangelabs.com
 (2603:10a6:10:4bd::22) by DB4PR08MB8104.eurprd08.prod.outlook.com
 (2603:10a6:10:384::18) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.24; Thu, 19 Oct
 2023 00:30:00 +0000
Received: from DB1PEPF00039232.eurprd03.prod.outlook.com
 (2603:10a6:10:4bd:cafe::34) by DUZPR01CA0142.outlook.office365.com
 (2603:10a6:10:4bd::22) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.24 via Frontend
 Transport; Thu, 19 Oct 2023 00:30:00 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DB1PEPF00039232.mail.protection.outlook.com (10.167.8.105) 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, 19 Oct 2023 00:29:59 +0000
Received: ("Tessian outbound 9e011a9ddd13:v215");
 Thu, 19 Oct 2023 00:29:59 +0000
Received: from 30d863eedbea.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 E402F1F1-28C1-4010-BC1D-A18FC982573A.1; 
 Thu, 19 Oct 2023 00:29:53 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 30d863eedbea.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Thu, 19 Oct 2023 00:29:53 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by PAWPR08MB9709.eurprd08.prod.outlook.com (2603:10a6:102:2e6::12)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.22; Thu, 19 Oct
 2023 00:29:50 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41%4]) with mapi id 15.20.6907.022; Thu, 19 Oct 2023
 00:29: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: a542a929-6e16-11ee-98d5-6d05b1d4d9a1
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=k0bf0QTvTtO6awHU7/y5a8Ctj8jO9o+LX9Dh4nPoEXY=;
 b=N+EIclXd9mvzwZtbN1SdOAni+sZ3DvQM5JKdHgKbYTnL0W152/grAtrXVQ8ROiTSYppzlSFBsk4gk7ST4ROqlzh4i3xhYDqM7RlG72SM6Q7wV/uZ40wqfwux8v29ee2tOEcY7BcfAv2d23mlh80az+tsS2UODga1NS+PxapI+HY=
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: fcc4d0545151bcfa
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=bCxFfYOZgcZ7yppukoUGezJaZCCj2ZCeTQn0zzsrUfxNw/rhuGek8cUBoGP9SKNmU58Emr7SmDztfDIfylO+xYejfDvG7WEwB+JpR1yX5fdM3lJkqFLJz7fxyqB4847PCOkNsD0yWPAPiICR7ON5vQ3Jf8QPkwEqAX+6SaaVEroFiyNvITUT+X1X7W0g4kqkL9Y4QNWNqMSoqp71Jkhs0aIYjRDhjoqhyk4TNAgy1fIkG6BXOmsNiqjx20QdBCIjIVE383KK5p/Fzj72NbpGwI6bmlShgEFoPnvzyJAekV/OKW04R4UU/hTNUfnrGtsaQFaVG5hl8lMkJIk9IcStlA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=k0bf0QTvTtO6awHU7/y5a8Ctj8jO9o+LX9Dh4nPoEXY=;
 b=ns0PvaPeAmHuLlHJ3iZ/nl6fG7CMmvaDSjuJyKh3i7oqaP+IxiERLcy4JJWgwUJewD8PIzmOLi0LtpVr4QiAphDD+zKErAb8m1jA8i2nIhmdKUGnC+Yhoq7rUHf1wSFRcuQm9BvCbj8zYSUYm9HVzRPpGD0/0o2992yAPcJZGTXHAIC4iLYxTTovnvWHO+fnrWJ1+nZka/M393eZPA40rU7WSQ+EVGnKOPmr+uzHuQTSOAa2rtrAT+Ql+Wv839Y7/jSrHT5w8/5YiGyXbBBk+b7gbURSKh8JOTP6KgQh+s9iSRA13MRTkbJ6IFUmo2RbIAkTxuej50RrWYDl5GbqBw==
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=k0bf0QTvTtO6awHU7/y5a8Ctj8jO9o+LX9Dh4nPoEXY=;
 b=N+EIclXd9mvzwZtbN1SdOAni+sZ3DvQM5JKdHgKbYTnL0W152/grAtrXVQ8ROiTSYppzlSFBsk4gk7ST4ROqlzh4i3xhYDqM7RlG72SM6Q7wV/uZ40wqfwux8v29ee2tOEcY7BcfAv2d23mlh80az+tsS2UODga1NS+PxapI+HY=
From: Henry Wang <Henry.Wang@arm.com>
To: Julien Grall <julien@xen.org>, 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>,
	Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>, Michal
 Orzel <michal.orzel@amd.com>, Manuel Bouyer <bouyer@antioche.eu.org>
Subject: Re: [PATCH] console: make input work again for pv-shim
Thread-Topic: [PATCH] console: make input work again for pv-shim
Thread-Index: AQHaAdOTgwKy6u3JYkmo1XFC1IQNE7BP1l0AgABsrIA=
Date: Thu, 19 Oct 2023 00:29:50 +0000
Message-ID: <26553B5A-8DB2-42D0-81E8-1D3F5C1351EA@arm.com>
References: <ed275abf-351f-5237-7e19-a3856f6d4272@suse.com>
 <f2b51b47-fdeb-45a6-92c7-5b21da1855fe@xen.org>
In-Reply-To: <f2b51b47-fdeb-45a6-92c7-5b21da1855fe@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_|PAWPR08MB9709:EE_|DB1PEPF00039232:EE_|DB4PR08MB8104:EE_
X-MS-Office365-Filtering-Correlation-Id: 2f45685e-3424-4e06-d6ab-08dbd03a8738
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:
 Adb1sx2ciaD8y6mZLTmQQ0cBS8NiiAd1vW7xpiPvSrpCsEQDW0vYAiG/dqLxVZM2CxucvshZmAs4St1U5QKZzGgSiFIobWJMNW2oGQP/zBR4ihZOcjAHhEe54DH4gGdkm7GecWCd+XrSnjsGcd7uKVOiLgKauPESq6XrnAwgzxH/nTW0/oPqDDdLXhmT47/3FIaRsUwEJE+MGdZtdcC2rbLkO0VMZTCr5+79jcQ4wX6tgxMME3ox+v7DUVNYVTiOSVfymdGCVvFCYrXjuCmfJ9zq9/lokVabH4p4/DEWXXGDMRotRwOMI3E+zz6jQhMqZNdfyJaMZx9pTwM420GnrITYd3mP0KJ49O0+tdp/+2swPFH5ePAmRi+XEJWtTWrj9qmfGAtEA0z6y1hLBE6WCFlYPUf7UDSn5aH2IZ9Vwqahp12tt5o+D0kDRc5zT0ILNNo89AaMukoqSqygIkg5OY+cE104O64Mue4skF9Gz2cBbYTM0N66azi3zrlxYTb77h5mXznOrwvoGIs393uhEaLjcHYXmN1W/c6drznUqbhDtswRjUmGxQhxKST7AXCEcnRNN0JpUVko0FGDdpT63EEQf8du5uJegTmBWq7xDDuKFa3ljtu0YCSfScI8rHr/38Off3ZvLWakZFqTS0AwyQ==
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)(366004)(39860400002)(396003)(346002)(230922051799003)(186009)(1800799009)(451199024)(64100799003)(83380400001)(41300700001)(38100700002)(64756008)(91956017)(36756003)(38070700005)(2616005)(122000001)(6512007)(2906002)(478600001)(6486002)(66476007)(66556008)(66446008)(86362001)(4326008)(54906003)(66946007)(8936002)(6506007)(5660300002)(8676002)(53546011)(76116006)(316002)(33656002)(71200400001)(110136005)(26005)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="us-ascii"
Content-ID: <E3353DCC3427C44A9A1E78E8C2F65245@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAWPR08MB9709
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:
 DB1PEPF00039232.eurprd03.prod.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	eff6a75d-0094-48d2-cb83-08dbd03a81b9
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	RcuhnprNFhx/9e76cl94LH6w68Hw46EPIx4pJGSBX93U8GIq/B9isYgUrCIz8XeCZX1fCA+ygeJGHfHm9sx3hihAEeHDG1xYPLDIi21w2R69b/BtbIC0G0Fklz6ntPjonBsSfDNfi3yqn9U9paPullW6Ga0MxfOGqomTQWuKPGxUnI0l75X4g9zTrnwP1kouzFZyMilERE1yIn3XCaSDwAzumAGsrGmvPJ8QSjk5wiroUrobws/Rw6lzscCKlvwwDLAq1yT8b3RbKLYBgIkWcDrbWpaRUe3eY4ItwlSUfKnL9wq1BnUu/sIyn+JJUVNA34nXZ1EcyC53JeFa2OkeJD6SQQtJLB63T6CXMW2dw2FmQ63Us1xss76mjmcTauYgUbOwmBhxQx/FdL62dmruhtZJ3NNMZXJDbHCvTRrYjlk3ax5ApJn/sqrvxQaR245QQlJanOamnIZtb6lo97akjJ+/sErnN88+TdJ7Zea+MFSBnSCV3J3Thp5SpJDNib9HuI1KZMwGGWfLMn7kMZMiahjN6Zb9WqLQcjN04Pz5+C6Xg85z6QMF9wwEgpWIz4y/b675eNKZvFegXcOoSM/Kh4rQ8b3ATeGkFXW1hw0O178r5DdNJH8MDudzs/Wu4Wmqx86/TAlsQiwbrwX10jg7Cxd9eRWWPDMd0Mm+o4gnUzjibPIYZjGr44Uxl5O3LY0GtPGHWsPPfw8AnxrHfieNOS/HF5yD2kRhBSw2kMpxnm8cxQ0ICRyPve71Ma3nxazz
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)(346002)(136003)(376002)(396003)(230922051799003)(451199024)(1800799009)(82310400011)(64100799003)(186009)(36840700001)(40470700004)(46966006)(40460700003)(2616005)(336012)(26005)(6506007)(6512007)(53546011)(36860700001)(83380400001)(47076005)(478600001)(5660300002)(2906002)(6486002)(8676002)(70206006)(4326008)(8936002)(70586007)(110136005)(316002)(54906003)(41300700001)(82740400003)(86362001)(356005)(81166007)(40480700001)(36756003)(33656002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Oct 2023 00:29:59.7918
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 2f45685e-3424-4e06-d6ab-08dbd03a8738
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:
	DB1PEPF00039232.eurprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB4PR08MB8104

Hi,

> On Oct 19, 2023, at 02:00, Julien Grall <julien@xen.org> wrote:
>=20
> Hi Jan,
>=20
> On 18/10/2023 15:58, Jan Beulich wrote:
>> From: Manuel Bouyer <bouyer@antioche.eu.org>
>> The use of rcu_lock_domain_by_id() right in switch_serial_input() makes
>> assumptions about domain IDs which don't hold when in shim mode: The
>> sole (initial) domain there has a non-zero ID. Obtain the real domain ID
>> in that case (generalized as get_initial_domain_id() returns zero when
>> not in shim mode).
>> Note that console_input_domain() isn't altered, for not being used when
>> in shim mode (or more generally on x86).
>=20
> I think it would be worth to either add a comment in console_input_domain=
() and/or #ifdef the code. In any case...
>=20
>> Fixes: c2581c58bec9 ("xen/console: skip switching serial input to non ex=
isting domains")
>> Signed-off-by: Manuel Bouyer <bouyer@antioche.eu.org>
>> Signed-off-by: Jan Beulich <jbeulich@suse.com>
>=20
> ...
>=20
> Reviewed-by: Julien Grall <jgrall@amazon.com>
>=20
>=20
> Also, should we consider it for xen 4.18? (I notice there is no for-4.18 =
tag).

Yes, so:

Release-acked-by: Henry Wang <Henry.Wang@arm.com>

Kind regards,
Henry


>=20
> Cheers,
>=20
> --=20
> Julien Grall



From xen-devel-bounces@lists.xenproject.org Thu Oct 19 00:31:55 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 00:31:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618841.963029 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtGx4-0001es-T2; Thu, 19 Oct 2023 00:31:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618841.963029; Thu, 19 Oct 2023 00: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 1qtGx4-0001el-Q9; Thu, 19 Oct 2023 00:31:50 +0000
Received: by outflank-mailman (input) for mailman id 618841;
 Thu, 19 Oct 2023 00:31: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=AWKy=GB=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qtGx2-0001ef-PL
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 00:31:48 +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 e1dea820-6e16-11ee-9b0e-b553b5be7939;
 Thu, 19 Oct 2023 02:31:45 +0200 (CEST)
Received: from DBBPR09CA0047.eurprd09.prod.outlook.com (2603:10a6:10:d4::35)
 by AS8PR08MB10069.eurprd08.prod.outlook.com (2603:10a6:20b:636::14) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.23; Thu, 19 Oct
 2023 00:31:16 +0000
Received: from DBAEUR03FT009.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:d4:cafe::f8) by DBBPR09CA0047.outlook.office365.com
 (2603:10a6:10:d4::35) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.21 via Frontend
 Transport; Thu, 19 Oct 2023 00:31:15 +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.6907.24 via Frontend Transport; Thu, 19 Oct 2023 00:31:15 +0000
Received: ("Tessian outbound d9a8e74be042:v215");
 Thu, 19 Oct 2023 00:31:14 +0000
Received: from b6a31603b37d.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 A94DF694-BAED-4E67-9597-C55AC06F6D14.1; 
 Thu, 19 Oct 2023 00:31:07 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id b6a31603b37d.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Thu, 19 Oct 2023 00:31:07 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by PAWPR08MB9709.eurprd08.prod.outlook.com (2603:10a6:102:2e6::12)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.22; Thu, 19 Oct
 2023 00:31:06 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41%4]) with mapi id 15.20.6907.022; Thu, 19 Oct 2023
 00:31: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: e1dea820-6e16-11ee-9b0e-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=/XB11fqzmtvd8YESLLwZC7CPpWnuIQnr5I90/nWqd54=;
 b=np7VX8V17s8i9GjSBUSqwC4a/fmFUdbuO+v29MD/AA0iS9W14gtY+XvG45Go/4OwRL/MJOxtbAi+T0Hk37s+U/41iaWaFsyfwbSKeVuPdrM92NJQBzDszy+7duBKyqOXzx3oFzFsxaiewnfmROboV1pMP4M/N4HLOYAtt8ivhZs=
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: d763437a03b6cea8
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=C1ng+XsFsNTu/9n3evkSU7USa3KKymdN0hmZci+29w4FYgasVhgep3KpSRACGH0aPFFH0OW2v7h2K3aBPOGpUviVTEduuttV8Q//gbjFzel8J3xWwpRisw97BSorYLTGFT61PCl0egMfOuD6c0zXC6qhUNKIBRXZD2CrR0QmiHr7Bja5qi1A3ghI5Z0ZK48O1xlYrSrP4JegOcc1BZSLTExLEBaV3wgXI8qgaqsZstOvUeAvGlr22xcfn3Lx8DBqeSX0FyM715We4rmmN2Bjy0pvO7a79OWMCmpPRV521ZLgy0YLNHmOXLO5f6qmkwB6bf/3P4NzoalxnycAymqnCw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=/XB11fqzmtvd8YESLLwZC7CPpWnuIQnr5I90/nWqd54=;
 b=K4gxcpUyczcwlnEuftqkjE0ENQ6aGd1nMM8CMXCfbBjtKwDvWMsSvhQn0LCCVBbXT3z55By60FeTfB+XvlgN3U9Dv6qkcJ1tJstF7H3RjSIk5bEi+79MS0IX81/6FTNC59eL44LiMWqJ6ca7/f9vJ4SxL0kAEAO/7iZxHory1ErRTkifcXaSnjuTLih5quyUJAAKzUOkcJOPL1Ka/kXvWKCzkUZBA/NrB8IaJMpfnZO1J5G0H4YaNnvcxxUOVq5nBzEAIJqE6zA1U4hRvlXZfarSfs+R6ov+0C9zMDiPJ+5MVujAYZhVx0zuzsSwkPYeLM07gGUOftSKVx8fMeblDA==
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=/XB11fqzmtvd8YESLLwZC7CPpWnuIQnr5I90/nWqd54=;
 b=np7VX8V17s8i9GjSBUSqwC4a/fmFUdbuO+v29MD/AA0iS9W14gtY+XvG45Go/4OwRL/MJOxtbAi+T0Hk37s+U/41iaWaFsyfwbSKeVuPdrM92NJQBzDszy+7duBKyqOXzx3oFzFsxaiewnfmROboV1pMP4M/N4HLOYAtt8ivhZs=
From: Henry Wang <Henry.Wang@arm.com>
To: Stefano Stabellini <sstabellini@kernel.org>, Andrew Cooper
	<andrew.cooper3@citrix.com>
CC: =?utf-8?B?TWFyZWsgTWFyY3p5a293c2tpLUfDs3JlY2tp?=
	<marmarek@invisiblethingslab.com>, Xen-devel
	<xen-devel@lists.xenproject.org>, Doug Goldstein <cardoe@cardoe.com>
Subject: Re: [PATCH for-4.18 0/5] automation: cleanup hardware based tests
Thread-Topic: [PATCH for-4.18 0/5] automation: cleanup hardware based tests
Thread-Index: AQHaAesURD9oNP+b9UWLmiwv0WSMc7BQIgkAgAAhKAA=
Date: Thu, 19 Oct 2023 00:31:06 +0000
Message-ID: <73D6E742-172F-4442-8866-7215BB10D1CC@arm.com>
References:
 <cover.550599c54c91da4f8417fde358992e75bf8163c0.1696557834.git-series.marmarek@invisiblethingslab.com>
 <12f20d5a-3306-441b-823e-cdfb7008ec5d@citrix.com>
 <alpine.DEB.2.22.394.2310181531200.965337@ubuntu-linux-20-04-desktop>
In-Reply-To:
 <alpine.DEB.2.22.394.2310181531200.965337@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_|PAWPR08MB9709:EE_|DBAEUR03FT009:EE_|AS8PR08MB10069:EE_
X-MS-Office365-Filtering-Correlation-Id: 49e2aa7b-7907-43b2-5e83-08dbd03ab42d
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:
 d29JRNnL4/IWuDe+6z8zSBDDb1SfcTdFdAlKGEoslTuYJy8S8pfNQdLK1ban/xerbI4DvyJt6N5jkvwamXEtDocTQqzPCl0Nnf8bbTN8QFJ+uBFc8bz4fzFfArS6Lcw5VPGKeb7RQhcqPrDHj/VR6mQfoZtdiQS4phKG9IQCCnI7fctKxZiwcTkxrhQ/uiPXZGIwDLQ03+5Dk4hFkd0x0wjP5F7V4C5jMcAGwCamkbUWjselaE+bFrkENFyXGi70346UlY1qwd/R4ks+CvAF0jwiORb1KyuTFg3bdIJ9JzbOliSXacBNHXt8T7Nt5rQpwl47b1ESjkscgol/MpLZ1+l40+IPei9R2vZMqik5e95AFYG8pDqeBpVCD66Eva8la3UT3EySdYWXlsBqUN+G/BlsAM385Ixe/rABuMHWNW4g5OUhKhx0E6SjdwBDtE0x0JTQV691pBUDmxOa335ftW2jAsFZ4u+dy/rzbchPtPB3tRtGrjoOfE8gaxZCDGrVkaqEC3Jmi1otim/zNagM6eGu0r7ZzoIEePxH2A9r6r10mr5cV5XgoWOQjlz+gyVByBalcMSvqCAHEg7MD7/Hh+q1dOBMQE9ykFXIbGarHGSIWSaoMxgfv5vab4AVIVfMwm1DudjycigxH33hHbOeFg==
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)(366004)(39860400002)(396003)(346002)(230922051799003)(186009)(1800799009)(451199024)(64100799003)(83380400001)(41300700001)(38100700002)(64756008)(91956017)(36756003)(38070700005)(2616005)(122000001)(6512007)(2906002)(478600001)(6486002)(66476007)(66556008)(66446008)(86362001)(4326008)(54906003)(66946007)(8936002)(6506007)(5660300002)(8676002)(53546011)(76116006)(316002)(33656002)(71200400001)(966005)(110136005)(66574015)(26005)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <0A5ECE0FE81A7A4FBC54B808880C8C04@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAWPR08MB9709
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:
	d60ffac0-c2a6-4fcf-75d8-08dbd03aaeb5
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	hK6B8//X6EJ+OClN7qSXSH0WnBKqiJ7jRlkLaP9VLeZhtsuvn5FQ2UAwFMn05o5zJTS7lGRlF0uorq+TgoelpsQCqH9+iCo/l6xfCmCIceQkzAcMdJrmpP+Kv51CjUFcWxroonl8eTuMIbnT84LTqVRKcQVMfseK7fJl0xlMTvKPib1BYEnZSYYwdhg9ZTcDsClK1SMBnSvG8dNXCG9YpkxTDZPg/g14jK6M+EthbhU6dJfpRn+54PTnshSAkarRdjorbOndy+apGpO+qcHAnbx6pp4w36lwuH6wKZfVvvP/2CtVU3wUdwGHrYfs46XHXwCexZPXYPfZNpmT9dVAotihbWSUer0lXhf9878W2k+EhQIwDF6GljsjOLET+S7lY17jqBADoh+2pYpthEMjQK1Ugs6JUkLFDzuVKcmU7nU0S7SsQ3VyVrxBol/zKYSZgvy42wzAkKCAaqR4K58vs/vJyXyrUYkjLKzwetGBthc8VTPPUGrF8DsbECNARAMuqXRKh6mCGujtWgR1AYqpWfJMlVDm7fuedgaLWHAvCbG2q0xjAByKwOXDJe4gohwwTwrbWCwohrrQ5JlkadLA0VvwHi4oyCwZgeHpx7fQPA1/hFABKXFAfHzUv7TxCsEHufvGWKgRrceRvjuwlWniSMl3r5X8DhBSvtE12zqSOPMZ5hb+RM5rU3UoQj19QU0i5JDsNznyy7qDNH8OMl3hfFBt4ATrEV7mPdbFxMfX2Hc=
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)(230922051799003)(1800799009)(64100799003)(186009)(451199024)(82310400011)(36840700001)(46966006)(40470700004)(356005)(82740400003)(36756003)(33656002)(47076005)(26005)(336012)(66574015)(83380400001)(6512007)(2616005)(81166007)(53546011)(86362001)(107886003)(36860700001)(478600001)(6506007)(2906002)(40480700001)(41300700001)(54906003)(316002)(6486002)(5660300002)(70206006)(70586007)(110136005)(4326008)(40460700003)(966005)(8676002)(8936002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Oct 2023 00:31:15.1828
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 49e2aa7b-7907-43b2-5e83-08dbd03ab42d
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: AS8PR08MB10069

SGksDQoNCj4gT24gT2N0IDE5LCAyMDIzLCBhdCAwNjozMiwgU3RlZmFubyBTdGFiZWxsaW5pIDxz
c3RhYmVsbGluaUBrZXJuZWwub3JnPiB3cm90ZToNCj4gDQo+IE9uIFdlZCwgMTggT2N0IDIwMjMs
IEFuZHJldyBDb29wZXIgd3JvdGU6DQo+PiBPbiAwNi8xMC8yMDIzIDM6MDUgYW0sIE1hcmVrIE1h
cmN6eWtvd3NraS1Hw7NyZWNraSB3cm90ZToNCj4+PiBXaGlsZSB3b3JraW5nIG9uIHRlc3RzIGZv
ciBNU0ktWCwgSSBkaWQgZmV3IGNsZWFudXBzIG9mIGh3LWJhc2VkIGdpdGxhYiB0ZXN0cywNCj4+
PiBncmVhdGx5IHJlZHVjaW5nIGZhbHNlIHBvc2l0aXZlIG1lc3NhZ2VzIGluIHRoZSB0ZXN0IG91
dHB1dC4NCj4+PiANCj4+PiBBZnRlciBhcHBseWluZyB0aGlzIHNlcmllcywgdGhlIHRlc3RzLWFy
dGlmYWN0cy9hbHBpbmUvMy4xOCBjb250YWluZXIgbmVlZHMgdG8NCj4+PiBiZSByZWJ1aWx0Lg0K
Pj4+IFRlc3QgcnVuIHdpdGggY29udGFpbmVyIHJlYnVpbHQgKG9uIG15IHJlcG8pOg0KPj4+IGh0
dHBzOi8vZ2l0bGFiLmNvbS94ZW4tcHJvamVjdC9wZW9wbGUvbWFybWFyZWsveGVuLy0vcGlwZWxp
bmVzLzEwMjc0Njc3NjENCj4+PiANCj4+PiBDYy1pbmcgSGVucnkgZm9yIHJlbGVhc2UgYWNrLg0K
Pj4+IC0tLQ0KPj4+IENjOiBIZW5yeSBXYW5nIDxIZW5yeS5XYW5nQGFybS5jb20+DQo+Pj4gQ2M6
ICBEb3VnIEdvbGRzdGVpbiA8Y2FyZG9lQGNhcmRvZS5jb20+DQo+Pj4gQ2M6ICBTdGVmYW5vIFN0
YWJlbGxpbmkgPHNzdGFiZWxsaW5pQGtlcm5lbC5vcmc+DQo+Pj4gDQo+Pj4gTWFyZWsgTWFyY3p5
a293c2tpLUfDs3JlY2tpICg1KToNCj4+PiAgYXV0b21hdGlvbjogaW5jbHVkZSByZWFsLXRpbWUg
dmlldyBvZiB0aGUgZG9tVSBjb25zb2xlIGxvZyB0b28NCj4+PiAgYXV0b21hdGlvbjogaGlkZSB0
aW1lb3V0IGNvdW50ZG93biBpbiBsb2cNCj4+PiAgYXV0b21hdGlvbjogY2xlYW51cCB0ZXN0IGFs
cGluZSBpbnN0YWxsDQo+Pj4gIGF1dG9tYXRpb246IGltcHJvdmUgY2hlY2tpbmcgZm9yIE1TSS9N
U0ktWCBpbiBQQ0kgcGFzc3Rocm91Z2ggdGVzdHMNCj4+PiAgYXV0b21hdGlvbjogZXh0cmFjdCBR
RU1VIGxvZyBpbiByZWxldmFudCBoYXJkd2FyZSB0ZXN0cw0KPj4gDQo+PiBBY2tlZC1ieTogQW5k
cmV3IENvb3BlciA8YW5kcmV3LmNvb3BlcjNAY2l0cml4LmNvbT4NCj4gDQo+IEFja2VkLWJ5OiBT
dGVmYW5vIFN0YWJlbGxpbmkgPHNzdGFiZWxsaW5pQGtlcm5lbC5vcmc+DQo+IA0KPiANCj4+IEhl
bnJ5IC0gdGhpcyB3aWxsIGJlIGEgZ29vZCBpbXByb3ZlbWVudCB0byB0YWtlLiAgSXQncyBvbmx5
IHRoZSB0ZXN0DQo+PiBsb2dpYywgd2l0aCBHaXRsYWIgYmVpbmcgaGFwcHkgd2l0aCB0aGUgcmVz
dWx0Lg0KPiANCj4gSSdsbCBsZWF2ZSBpdCB0byBIZW5yeS4NCg0KSSBhbSBoYXBweSB0byBpbmNs
dWRlIHRoaXMgYXMgaW4gNC4xNyB3ZSBkaXNjdXNzZWQgdGhhdCBDSSBjaGFuZ2VzIHdvbuKAmXQg
YmUNCmJsb2NrZWQuDQoNClJlbGVhc2UtYWNrZWQtYnk6IEhlbnJ5IFdhbmcgPEhlbnJ5LldhbmdA
YXJtLmNvbT4NCg0KDQo+IEFuZHJldywgaWYvd2hlbiB5b3UgZW5kIHVwIGNvbW1pdHRpbmcgdGhl
IHNlcmllcywgcGxlYXNlIGFsc28gdXBkYXRlIHRoZQ0KPiBjb250YWluZXIsDQoNClBsZWFzZSBh
bnkgb2YgeW91IHR3byBkbyB0aGF0IDopIFRoYW5rIHlvdS4NCg0KS2luZCByZWdhcmRzLA0KSGVu
cnkNCg0KDQo=


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 00:39:07 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 00:39:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618845.963039 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtH41-0003PL-J8; Thu, 19 Oct 2023 00:39:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618845.963039; Thu, 19 Oct 2023 00:39: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 1qtH41-0003PE-GH; Thu, 19 Oct 2023 00:39:01 +0000
Received: by outflank-mailman (input) for mailman id 618845;
 Thu, 19 Oct 2023 00:39: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=IZCy=GB=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qtH41-0003P8-65
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 00:39:01 +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 e41280ee-6e17-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 02:38:59 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by dfw.source.kernel.org (Postfix) with ESMTP id 0E517618EA;
 Thu, 19 Oct 2023 00:38:58 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 6D5ADC433C7;
 Thu, 19 Oct 2023 00:38: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: e41280ee-6e17-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1697675937;
	bh=3p2eNKsp+RZLgZJNpenHd8/mHUMfhC/dXO9hXn9r/KI=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=ap2wym640smzN/rbj9Fq89Ne13IL5RgHddI+v3ZmTH2T/W04ii7VHLwOxBV30UPAM
	 DZIRoP95NTvi3ccMH5qZq5D/1cRb6s5FLQoauS8+3vPSQfpfKGH56W1pzRfTv+Ts/5
	 tHcpRLQ/PA6YYcD+fdEx7eVOgGy7HwDx/do0zjj3pZQtVZLOuncxko0zibh6RklSOC
	 UOGfu9xsPvYE5uvEJJEdBCn0fQYtjn9wJpG1eJ9y0vUgn30CD3hyTrOQoxVmR0y2dP
	 sL7MX48HyoFjcfYhDtud5pAFsyraHsoP4LXIqft9cQRQDS9qy9ScI7IO9epa2p1iOT
	 rohG/9UGz4dgg==
Date: Wed, 18 Oct 2023 17:38:54 -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, 
    Stefano Stabellini <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] arm/gic: add missing parameter names and uniform
 function declarations
In-Reply-To: <f22122c2b82f704dff17a455877c213940b54cc7.1697633691.git.federico.serafini@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2310181738480.965337@ubuntu-linux-20-04-desktop>
References: <f22122c2b82f704dff17a455877c213940b54cc7.1697633691.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 Wed, 18 Oct 2023, Federico Serafini wrote:
> Add missing parameter names and remove inconsistencies between GICv3
> and GICv2. 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 Thu Oct 19 00:44:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 00:44:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618848.963050 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtH9c-00061G-6w; Thu, 19 Oct 2023 00:44:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618848.963050; Thu, 19 Oct 2023 00:44: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 1qtH9c-000619-3t; Thu, 19 Oct 2023 00:44:48 +0000
Received: by outflank-mailman (input) for mailman id 618848;
 Thu, 19 Oct 2023 00:44: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=IZCy=GB=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qtH9b-000611-6U
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 00:44:47 +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 b25db5a8-6e18-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 02:44:45 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by dfw.source.kernel.org (Postfix) with ESMTP id EF29A61834;
 Thu, 19 Oct 2023 00:44:43 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id EA8C5C433C8;
 Thu, 19 Oct 2023 00:44: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: b25db5a8-6e18-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1697676283;
	bh=PeTLuMSmaYIZQoAQIcRGN4lVwV5A8yg3crHxqS1yjZ8=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=ToRTojp+gmW+Wy7pu0DeebJxn0Ru34+h6VzaclsBayNEnlnhnxt1tPKrGsKUXVIDG
	 yuAnCneYVPVc2lOHM4dHyG56DVAI/AXBdg+e2jDLmoxVx+UmpKunoytzQtieBFurpG
	 LC7+Tn5h1TIJyZ80izD8zz3ymYcDZPljfTUE6mYH8cxzqChQVnCRBs9N43h/KF+hcu
	 H2b26gHCG2+bnwGv3Lzgfijn3dVBEpcw7TeplLWaPPPwQP8NmheXo2ebPNoEKaADdZ
	 ezJ+VYCyJUncoOdCdPnFWNKjVuFnWb1kf9fHa0O8BoOt38/D6xr5Fmr1MxAMjLagZM
	 f1V51nbUlumTw==
Date: Wed, 18 Oct 2023 17:44: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>, 
    Simone Ballarin <simone.ballarin@bugseng.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
Subject: Re: [XEN PATCH v2 00/10] address violations of MISRA C:2012 Directive
 4.10
In-Reply-To: <ead797ed-84cc-fb70-5259-7e11211d049e@suse.com>
Message-ID: <alpine.DEB.2.22.394.2310181739270.965337@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> <725f5193-c8d3-1bc8-cd62-2a2b1b5ecc01@suse.com> <alpine.DEB.2.22.394.2310171709310.965337@ubuntu-linux-20-04-desktop>
 <ead797ed-84cc-fb70-5259-7e11211d049e@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, 18 Oct 2023, Jan Beulich wrote:
> On 18.10.2023 02:48, Stefano Stabellini wrote:
> > On Mon, 16 Oct 2023, Jan Beulich wrote:
> >> On 29.09.2023 00:24, Stefano Stabellini wrote:
> >>> 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:
> >>
> >> ... "least resistance" won't gain us much, as hardly any guards don't
> >> start with an underscore.
> >>
> >>> - 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__ ?
> >>
> >> There are no headers in xen/include/. For (e.g.) xen/include/xen/ we
> >> may go with XEN_BLAH_H; whether ASM prefixes are needed I'm not sure;
> >> we could go with just ARM_BLAH_H and X86_BLAH_H?
> >>
> >> The primary question though is (imo) how to deal with private headers,
> >> such that the risk of name collisions is as small as possible.
> > 
> > Looking at concrete examples under xen/include/xen:
> > xen/include/xen/mm.h __XEN_MM_H__
> > xen/include/xen/dm.h __XEN_DM_H__
> > xen/include/xen/hypfs.h __XEN_HYPFS_H__
> > 
> > So I think we should do for consistency:
> > xen/include/xen/blah.h __XEN_BLAH_H__
> > 
> > Even if we know the leading underscore are undesirable, in this case I
> > would prefer consistency.
> 
> I'm kind of okay with that. FTAOD - here and below you mean to make this
> one explicit first exception from the "no new leading underscores" goal,
> for newly added headers?

Yes. The reason is for consistency with the existing header files.


> > On the other hand looking at ARM examples:
> > xen/arch/arm/include/asm/traps.h __ASM_ARM_TRAPS__
> > xen/arch/arm/include/asm/time.h __ARM_TIME_H__
> > xen/arch/arm/include/asm/sysregs.h __ASM_ARM_SYSREGS_H
> > xen/arch/arm/include/asm/io.h _ASM_IO_H
> > 
> > And also looking at x86 examples:
> > xen/arch/x86/include/asm/paging.h _XEN_PAGING_H
> > xen/arch/x86/include/asm/p2m.h _XEN_ASM_X86_P2M_H
> > xen/arch/x86/include/asm/io.h _ASM_IO_H
> > 
> > Thet are very inconsistent.
> > 
> > 
> > So for ARM and X86 headers I think we are free to pick anything we want,
> > including your suggested ARM_BLAH_H and X86_BLAH_H. Those are fine by
> > me.
> 
> To be honest, I'd prefer a global underlying pattern, i.e. if common
> headers are "fine" to use leading underscores for guards, arch header
> should, too.

I am OK with that too. We could go with:
__ASM_ARM_BLAH_H__
__ASM_X86_BLAH_H__

I used "ASM" to make it easier to differentiate with the private headers
below. Also the version without "ASM" would work but it would only
differ with the private headers in terms of leading underscores. I
thought that also having "ASM" would help readability and help avoid
confusion.


> > For private headers such as:
> > xen/arch/arm/vuart.h __ARCH_ARM_VUART_H__
> > xen/arch/arm/decode.h __ARCH_ARM_DECODE_H_
> > xen/arch/x86/mm/p2m.h __ARCH_MM_P2M_H__
> > xen/arch/x86/hvm/viridian/private.h X86_HVM_VIRIDIAN_PRIVATE_H
> > 
> > More similar but still inconsistent. I would go with ARCH_ARM_BLAH_H and
> > ARCH_X86_BLAH_H for new headers.
> 
> I'm afraid I don't like this, as deeper paths would lead to unwieldy
> guard names. If we continue to use double-underscore prefixed names
> in common and arch headers, why don't we demand no leading underscores
> and no path-derived prefixes in private headers? That'll avoid any
> collisions between the two groups.

OK, so for private headers:

ARM_BLAH_H
X86_BLAH_H

What that work for you?


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 00:54:37 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 00:54:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618852.963060 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtHJ3-0008As-61; Thu, 19 Oct 2023 00:54:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618852.963060; Thu, 19 Oct 2023 00:54: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 1qtHJ3-0008Al-3O; Thu, 19 Oct 2023 00:54:33 +0000
Received: by outflank-mailman (input) for mailman id 618852;
 Thu, 19 Oct 2023 00:54: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=IZCy=GB=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qtHJ1-000897-Gx
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 00:54:31 +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 0f279688-6e1a-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 02:54:29 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by ams.source.kernel.org (Postfix) with ESMTP id 7C6B8B8255C;
 Thu, 19 Oct 2023 00:54:29 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id E3B6AC433C7;
 Thu, 19 Oct 2023 00:54: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: 0f279688-6e1a-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1697676868;
	bh=uKeNYQwAKnp5SXyY7crlpoaPoKUENkes0QvlVqflHrk=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=gGtKMMlyIcJawus6ev0aPtJ5HDR9c6Gqxi2EpUGAkVvE0wY5J5Zs3eof/TvEs2pdE
	 c3fDn+VLdiXxD/N2meCG0Owtb0vrfBd3xFGVega8AMcoKSKOwvPSYq4DNoQOYsLCR+
	 43t/4G95A0ibcncy1RhOzSV2FFmSijLKaXQmKo9qgI0nPx6s0dQoL/zvWnrVPW+j4z
	 9VpesuSb40MCtRLfh2LGZVFtz29ybI6O7xnBrhqaWJ58UbYSEK7FqkJ3ZAMPsLE+VM
	 +O9fwX+DKtbp5UtooQxQeik6yg05Y7ttw17tymaVB3C+XDuKnzd0XzkwWpBXWqP12L
	 4kVVFK5+wUCjg==
Date: Wed, 18 Oct 2023 17:54:25 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: andrew.cooper3@citrix.com
cc: Nicola Vetrini <nicola.vetrini@bugseng.com>, 
    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, roger.pau@citrix.com, 
    Simone Ballarin <simone.ballarin@bugseng.com>, 
    Doug Goldstein <cardoe@cardoe.com>, 
    George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>, 
    Wei Liu <wl@xen.org>
Subject: Re: [XEN PATCH][for-4.19 v3] xen: address violations of Rule 11.9
In-Reply-To: <35abc556-2f66-4498-b567-87e6a3216d50@citrix.com>
Message-ID: <alpine.DEB.2.22.394.2310181745300.965337@ubuntu-linux-20-04-desktop>
References: <d760ef0c088dc15ecc411b83640735123444f887.1697636446.git.nicola.vetrini@bugseng.com> <35abc556-2f66-4498-b567-87e6a3216d50@citrix.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: multipart/mixed; BOUNDARY="8323329-1979245646-1697676384=:965337"
Content-ID: <alpine.DEB.2.22.394.2310181746290.965337@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-1979245646-1697676384=:965337
Content-Type: text/plain; CHARSET=UTF-8
Content-Transfer-Encoding: 8BIT
Content-ID: <alpine.DEB.2.22.394.2310181746291.965337@ubuntu-linux-20-04-desktop>

On Thu, 19 Oct 2023, andrew.cooper3@citrix.com wrote:
> On 18/10/2023 2:42 pm, Nicola Vetrini wrote:
> > diff --git a/docs/misra/deviations.rst b/docs/misra/deviations.rst
> > index ee7aed0609d2..1b00e4e3e9b7 100644
> > --- a/docs/misra/deviations.rst
> > +++ b/docs/misra/deviations.rst
> > @@ -199,6 +199,11 @@ Deviations related to MISRA C:2012 Rules:
> >         See automation/eclair_analysis/deviations.ecl for the full explanation.
> >       - Tagged as `safe` for ECLAIR.
> >  
> > +   * - R11.9
> > +     - __ACCESS_ONCE uses a 0 as a null pointer constant to check if a type is
> > +       scalar, therefore its usage for this purpose is allowed.
> 
> This is still deeply misleading.
> 
> There is an integer, which happens to be 0 but could be anything, used
> for a compile time typecheck[1].  In some cases this may be interpreted
> as a pointer constant, and is permitted for this purpose.
> 
> ~Andrew
> 
> [1] I know I wrote scalar typecheck in the comment, but I suspect that
> what I actually meant was non-compound-type typecheck.

To help Nicola find the right wording do you have a concrete suggestion
for the text to use?

Reading your reply, I am guessing it would be:

* - R11.9
  - __ACCESS_ONCE uses an integer, which happens to be zero, as a
    non-compound-type typecheck. The typecheck uses a cast. The usage of
    zero or other integers for this purpose is allowed.

Andrew, please confirm? Nicola, please also confirm that this version of
the text would be suitable for an assessor.
--8323329-1979245646-1697676384=:965337--


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 00:57:39 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 00:57:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618856.963070 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtHM1-0000wO-KH; Thu, 19 Oct 2023 00:57:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618856.963070; Thu, 19 Oct 2023 00:57: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 1qtHM1-0000wH-H0; Thu, 19 Oct 2023 00:57:37 +0000
Received: by outflank-mailman (input) for mailman id 618856;
 Thu, 19 Oct 2023 00:57: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=IZCy=GB=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qtHLz-0000wA-WB
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 00:57:35 +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 7bb3197f-6e1a-11ee-9b0e-b553b5be7939;
 Thu, 19 Oct 2023 02:57:33 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by sin.source.kernel.org (Postfix) with ESMTP id D0280CE27CD;
 Thu, 19 Oct 2023 00:57:30 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 0036FC433C7;
 Thu, 19 Oct 2023 00:57: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: 7bb3197f-6e1a-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1697677049;
	bh=DQFzB0JJgxaX4dt/xISPVDIvil8RJ5j5M+4FThrvG+8=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=ED62PIkRl5qLG3MxXK+yvdTDQKUAyE8i3rnGrIFxvnbHrAt2HUNOB01LwkO9azlL5
	 9WHeyI4FPagbweGvXWBDuu7fjhqRDurU1sg26xObDQJS/WEhFPSHTNA3hwjiwPamOT
	 s5QOkz56uxeTdFzmRmvmV9oxktjX4KKVn1se/S8stcU/MRIZgGIQucNdTwGLflzYwo
	 hJdu5UBbMQZeLoN8/71eqgqGq+XnfovHgn7uo8DrlfeSDko1h71JP5Tb/1y0UG3q8w
	 ujEHnyLHQ47TQPNMkLp1u+7tlHdxxvb2W/Utpvfzhl4wLv8rzsx8DvHXnMOudJb4M4
	 L8xQgw7okVnFg==
Date: Wed, 18 Oct 2023 17:57:26 -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, 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>
Subject: Re: [XEN PATCH 2/4] automation/eclair: add deviations and call
 properties.
In-Reply-To: <8f426cc761c734d457a74416dd5b83fd10128c26.1697638210.git.simone.ballarin@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2310181756410.965337@ubuntu-linux-20-04-desktop>
References: <cover.1697638210.git.simone.ballarin@bugseng.com> <8f426cc761c734d457a74416dd5b83fd10128c26.1697638210.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 Wed, 18 Oct 2023, Simone Ballarin wrote:
> Deviate violations of MISRA C:2012 Rule 13.1 caused by
> functions vcpu_runnable and __bad_atomic_size. These functions
> contain side-effects such as debugging logs, assertions and
> failures that cannot cause unexpected behaviors.
> 
> Add "noeffect" call property to functions read_u.*_atomic and
> get_cycles.
> 
> Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>

Acked-by: Stefano Stabellini <sstabellini@kernel.org>

However one comment below


> ---
>  .../eclair_analysis/ECLAIR/call_properties.ecl      | 10 ++++++++++
>  automation/eclair_analysis/ECLAIR/deviations.ecl    | 13 +++++++++++++
>  docs/misra/deviations.rst                           | 11 +++++++++++
>  3 files changed, 34 insertions(+)
> 
> diff --git a/automation/eclair_analysis/ECLAIR/call_properties.ecl b/automation/eclair_analysis/ECLAIR/call_properties.ecl
> index 3f7794bf8b..f410a6aa58 100644
> --- a/automation/eclair_analysis/ECLAIR/call_properties.ecl
> +++ b/automation/eclair_analysis/ECLAIR/call_properties.ecl
> @@ -104,3 +104,13 @@ Furthermore, their uses do initialize the involved variables as needed by futher
>  -call_properties+={"macro(^(__)?(raw_)?copy_from_(paddr|guest|compat)(_offset)?$)", {"pointee_write(1=always)", "pointee_read(1=never)", "taken()"}}
>  -call_properties+={"macro(^(__)?copy_to_(guest|compat)(_offset)?$)", {"pointee_write(2=always)", "pointee_read(2=never)", "taken()"}}
>  -doc_end
> +
> +-doc_begin="Functions generated by build_atomic_read cannot be considered pure
> +since the input pointer is volatile."
> +-call_properties+={"^read_u(8|16|32|64|int)_atomic.*$", {"noeffect"}}
> +-doc_end
> +
> +-doc_begin="get_cycles does not perform visible side-effects "
> +-call_property+={"name(get_cycles)", {"noeffect"}}
> +-doc_end
> +
> diff --git a/automation/eclair_analysis/ECLAIR/deviations.ecl b/automation/eclair_analysis/ECLAIR/deviations.ecl
> index fa56e5c00a..b80ccea7bc 100644
> --- a/automation/eclair_analysis/ECLAIR/deviations.ecl
> +++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
> @@ -233,6 +233,19 @@ this."
>  -config=MC3R1.R10.1,etypes+={safe,
>    "stmt(operator(and||or||xor||not||and_assign||or_assign||xor_assign))",
>    "any()"}
> +#
> +# Series 13.
> +#
> +
> +-doc_begin="Function __bad_atomic_size is intended to generate a linkage error
> +if invoked. Calling it in intentionally unreachable switch cases is safe even
> +in a initializer list."
> +-config=MC3R1.R13.1,reports+={safe, "first_area(^.*__bad_atomic_size.*$)"}
> +-doc_end
> +
> +-doc_begin="Function vcpu_runnable contains pragmas and other side-effects for
> +debugging purposes, their invocation is safe even in a initializer list."
> +-config=MC3R1.R13.1,reports+={safe, "first_area(^.*vcpu_runnable.*$)"}
>  -doc_end
>  
>  -doc_begin="See Section \"4.5 Integers\" of \"GCC_MANUAL\", where it says that
> diff --git a/docs/misra/deviations.rst b/docs/misra/deviations.rst
> index 8511a18925..2fcdb8da58 100644
> --- a/docs/misra/deviations.rst
> +++ b/docs/misra/deviations.rst
> @@ -192,6 +192,17 @@ Deviations related to MISRA C:2012 Rules:
>         See automation/eclair_analysis/deviations.ecl for the full explanation.
>       - Tagged as `safe` for ECLAIR.
>  
> +   * - R13.1
> +     - Function __bad_atomic_size is intended to generate a linkage error if
> +       invoked. Calling it in intentionally unreachable switch cases is
> +       safe even in a initializer list.
> +     - Tagged as `safe` for ECLAIR.
> +
> +   * - R13.1
> +     - Function vcpu_runnable contains pragmas and other side-effects for
> +       debugging purposes, their invocation is safe even in a initializer list.
> +     - Tagged as `safe` for ECLAIR.


Would it be possible to use SAF instead? If not, this is fine.


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 01:01:48 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 01:01:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618860.963080 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtHPp-0005L7-2c; Thu, 19 Oct 2023 01:01:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618860.963080; Thu, 19 Oct 2023 01: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 1qtHPp-0005KI-00; Thu, 19 Oct 2023 01:01:33 +0000
Received: by outflank-mailman (input) for mailman id 618860;
 Thu, 19 Oct 2023 01:01: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=IZCy=GB=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qtHPn-0004en-Rr
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 01:01:31 +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 09dccb10-6e1b-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 03:01:30 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by ams.source.kernel.org (Postfix) with ESMTP id C2AA5B82557;
 Thu, 19 Oct 2023 01:01:29 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 2C26FC433C7;
 Thu, 19 Oct 2023 01:01: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: 09dccb10-6e1b-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1697677289;
	bh=x4Cc5DcGwgOHO1iqfr/CxeDGSA8RYrUExZsQiHLGXu0=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=AX3REtdqBLmzODLW+P3KGWw3IAjqR8frGM/9DHHp3S4hG71dLbO4y09/waEGHz39m
	 5a2XkMFhL+dVHdAcYgvXkFqAiKIXi2be9oAxfGHiR9OnkhHtt4ZXppaAiMz1PRKqa2
	 6tiYt34lIr6QEEH7shslkmHEa8Uy+QKuD9clQ7171R0uCjP5cyQY3gVkWKrmrbnWBN
	 tC1VUa4eNR91/wvcwDWbKebh8e0cJclZgEmLB723IPVxV54OCX/fjyD93retVPu5I/
	 pFz/LUp4yLSEHcIbJEReUKu4z/hRW18R6mjVJr4GmK6OhorE+YJhOdFNoKJRuJ4Boc
	 rHJzkStdPXECw==
Date: Wed, 18 Oct 2023 18:01:26 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Julien Grall <julien@xen.org>
cc: Simone Ballarin <simone.ballarin@bugseng.com>, 
    xen-devel@lists.xenproject.org, consulting@bugseng.com, 
    sstabellini@kernel.org, Bertrand Marquis <bertrand.marquis@arm.com>, 
    Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: Re: [XEN PATCH 1/4] xen/arm: address violations of MISRA C:2012 Rule
 13.1
In-Reply-To: <41d82896-5471-4eaa-8bdd-a192e28d5546@xen.org>
Message-ID: <alpine.DEB.2.22.394.2310181759310.965337@ubuntu-linux-20-04-desktop>
References: <cover.1697638210.git.simone.ballarin@bugseng.com> <31a926a09dfcef43d13a402fd3b235aeba48009d.1697638210.git.simone.ballarin@bugseng.com> <41d82896-5471-4eaa-8bdd-a192e28d5546@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, 18 Oct 2023, Julien Grall wrote:
> Hi,
> 
> On 18/10/2023 15:18, Simone Ballarin wrote:
> > Rule 13.1: Initializer lists shall not contain persistent side effects
> > 
> > This patch moves expressions with side-effects into new variables before
> > the initializer lists.
> 
> Looking at the code, I feel the commit message should be a bit more verbose
> because they are no apparent side-effects.
> 
> > 
> > Function calls do not necessarily have side-effects, in these cases the
> > GCC pure or const attributes are added when possible.
> 
> You are only adding pure in this patch.
> 
> > 
> > No functional changes.
> > 
> > Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>
> > 
> > ---
> > Function attributes pure and const do not need to be added as GCC
> > attributes, they can be added using ECLAIR configurations.
> > ---
> >   xen/arch/arm/device.c              |  6 +++---
> >   xen/arch/arm/guestcopy.c           | 12 ++++++++----
> >   xen/arch/arm/include/asm/current.h |  2 +-
> >   3 files changed, 12 insertions(+), 8 deletions(-)
> > 
> > diff --git a/xen/arch/arm/device.c b/xen/arch/arm/device.c
> > index 1f631d3274..e9be078415 100644
> > --- a/xen/arch/arm/device.c
> > +++ b/xen/arch/arm/device.c
> > @@ -319,6 +319,8 @@ int handle_device(struct domain *d, struct
> > dt_device_node *dev, p2m_type_t p2mt,
> >       int res;
> >       paddr_t addr, size;
> >       bool own_device = !dt_device_for_passthrough(dev);
> > +    bool dev_is_hostbridge = is_pci_passthrough_enabled() &&
> > +                             device_get_class(dev) ==
> > DEVICE_PCI_HOSTBRIDGE;
> 
> The commit message suggests that the code is moved because there are
> side-effects. But none of them should have any side-effects.
> 
> In fact, if I am not mistaken, both is_pci_passthrough_enabled() and
> device_get_class() could be marked as pure.
> 
> >       /*
> >        * 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
> > @@ -329,9 +331,7 @@ int handle_device(struct domain *d, struct
> > dt_device_node *dev, p2m_type_t p2mt,
> >       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)),
> > +        .skip_mapping = !own_device || dev_is_hostbridge,
> >           .iomem_ranges = iomem_ranges,
> >           .irq_ranges = irq_ranges
> >       };
> > diff --git a/xen/arch/arm/guestcopy.c b/xen/arch/arm/guestcopy.c
> > index 6716b03561..3ec6743bf6 100644
> > --- a/xen/arch/arm/guestcopy.c
> > +++ b/xen/arch/arm/guestcopy.c
> > @@ -109,27 +109,31 @@ static unsigned long copy_guest(void *buf, uint64_t
> > addr, unsigned int len,
> >     unsigned long raw_copy_to_guest(void *to, const void *from, unsigned int
> > len)
> >   {
> > +    struct vcpu *current_vcpu = current;
> 
> It is not clear to me what is the perceived side effect here and the others
> below. Can you clarify?

I am guessing that's because current is a global variable? But only
reading (not writing) a global variable should be OK?


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 01:02:16 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 01:02:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618862.963090 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtHQW-00019R-Ca; Thu, 19 Oct 2023 01:02:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618862.963090; Thu, 19 Oct 2023 01: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 1qtHQW-00019K-8n; Thu, 19 Oct 2023 01:02:16 +0000
Received: by outflank-mailman (input) for mailman id 618862;
 Thu, 19 Oct 2023 01:02: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=IZCy=GB=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qtHQV-00019A-Ei
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 01:02:15 +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 24202701-6e1b-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 03:02:14 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by ams.source.kernel.org (Postfix) with ESMTP id 37F24B82570;
 Thu, 19 Oct 2023 01:02:14 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 6B8E1C433C8;
 Thu, 19 Oct 2023 01:02: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: 24202701-6e1b-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1697677333;
	bh=XdszuGrBfG1vWwWGEVAMfMHz4+5IPka9YRdcbpjOpks=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=BNXuIXmo8y+n7CgpQwQ0eBptjyXiO33WHb4CDkXgI2tZzzn65ulJIjtPNCgwlFzQa
	 u1DLnUMvj9WUa+c98onOwFWDLv01il7Les6sDPtRG5T2rxb42aXWRuRbCpnXw74LrH
	 Xed00AEQfDoxG2v02l0rnD4fFu/ItCJWVSFXn21qP1mMG0LwbUkqCU47e9ds4jETB9
	 gQLj5m1mmEr/M0Y3CWI19/FmR/zblHsyIkRWxXa8XuQ9iAEIL85H8x2icWvT8I7A53
	 8b91/hJ0hKpmeZF2SMBRRHoxih0hrtobJX4/k5C3gulwUxHyddqPZxY7YZc0/zoh0/
	 XSkfo2NZb6TQw==
Date: Wed, 18 Oct 2023 18:02:10 -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 3/4] xen/include: add pure and const attributes
In-Reply-To: <fd5421162a00aa782e0776324ff6497193c1e3d3.1697638210.git.simone.ballarin@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2310181801350.965337@ubuntu-linux-20-04-desktop>
References: <cover.1697638210.git.simone.ballarin@bugseng.com> <fd5421162a00aa782e0776324ff6497193c1e3d3.1697638210.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 Wed, 18 Oct 2023, Simone Ballarin wrote:
> Add const and pure attributes to address reports
> of MISRA C:2012 Rule 13.1: Initializer lists shall
> not contain persistent side effects
> 
> Add pure attribute to function pdx_to_pfn.
> Add const attribute to functions generated by TYPE_SAFE.
> 
> These functions are used in initializer lists: adding
> the attributes ensures that no effect will be performed
> by them.
> 
> Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>

Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>

However one comment below...

> ---
> Function attributes pure and const do not need to be added as GCC
> attributes, they can be added using ECLAIR configurations.
> ---
>  xen/include/xen/pdx.h      | 2 +-
>  xen/include/xen/typesafe.h | 4 ++--
>  2 files changed, 3 insertions(+), 3 deletions(-)
> 
> diff --git a/xen/include/xen/pdx.h b/xen/include/xen/pdx.h
> index f3fbc4273a..5d1050967a 100644
> --- a/xen/include/xen/pdx.h
> +++ b/xen/include/xen/pdx.h
> @@ -164,7 +164,7 @@ static inline unsigned long pfn_to_pdx(unsigned long pfn)
>   * @param pdx Page index
>   * @return Obtained pfn after decompressing the pdx
>   */
> -static inline unsigned long pdx_to_pfn(unsigned long pdx)
> +static inline __attribute_pure__ unsigned long pdx_to_pfn(unsigned long pdx)
>  {
>      return (pdx & pfn_pdx_bottom_mask) |
>             ((pdx << pfn_pdx_hole_shift) & pfn_top_mask);
> diff --git a/xen/include/xen/typesafe.h b/xen/include/xen/typesafe.h
> index 7ecd3b4a8d..615df6f944 100644
> --- a/xen/include/xen/typesafe.h
> +++ b/xen/include/xen/typesafe.h
> @@ -21,8 +21,8 @@
>  
>  #define TYPE_SAFE(_type, _name)                                         \
>      typedef struct { _type _name; } _name##_t;                          \
> -    static inline _name##_t _##_name(_type n) { return (_name##_t) { n }; } \
> -    static inline _type _name##_x(_name##_t n) { return n._name; }
> +    static inline __attribute_const__ _name##_t _##_name(_type n) { return (_name##_t) { n }; } \
> +    static inline __attribute_const__ _type _name##_x(_name##_t n) { return n._name; }
>  
>  #else

I think we should also add __attribute_const__ in the NDEBUG definitions
just below.


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 01:06:26 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 01:06:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618866.963099 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtHUW-0002LN-S5; Thu, 19 Oct 2023 01:06:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618866.963099; Thu, 19 Oct 2023 01:06: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 1qtHUW-0002LG-Ou; Thu, 19 Oct 2023 01:06:24 +0000
Received: by outflank-mailman (input) for mailman id 618866;
 Thu, 19 Oct 2023 01:06: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 1qtHUV-0002L6-F6; Thu, 19 Oct 2023 01:06: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 1qtHUV-00068o-CO; Thu, 19 Oct 2023 01:06: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 1qtHUU-0003Kk-W7; Thu, 19 Oct 2023 01:06:23 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qtHUU-0007jW-VW; Thu, 19 Oct 2023 01:06: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=8Ar+mwiCx5FEtlLDHIGtlq1EtR2xCaERAi2cNmc4wzc=; b=54WShIzmtGvUaPSzCRofdLzxpt
	H+NRyLu5EdO3Crlwte2BrHai9+npadYF5RT08azJ4ciOSZd8iNYk4DOYXDtYmfPIdiMBl9G4meB0m
	CagB3fq9nC5tA0M7sqJhjHhnv+Ix9VGeIVY0w9dd89LXy/gkZtd2FbSdFeWdYTOFR2OI=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183416-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 183416: tolerable FAIL - PUSHED
X-Osstest-Failures:
    linux-linus:test-armhf-armhf-examine:reboot:fail:heisenbug
    linux-linus:test-armhf-armhf-libvirt-raw: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: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-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-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-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: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-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-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu: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-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-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-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-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd: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-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=dd72f9c7e512da377074d47d990564959b772643
X-Osstest-Versions-That:
    linux=06dc10eae55b5ceabfef287a7e5f16ceea204aa0
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 19 Oct 2023 01:06:22 +0000

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

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-armhf-armhf-examine      8 reboot              fail pass in 183422-retest

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail blocked in 183405
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183405
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183405
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183405
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183405
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183405
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183405
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183405
 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-xl-thunderx 15 migrate-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          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-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-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-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-qcow2 14 migrate-support-check        fail never pass
 test-amd64-amd64-libvirt-raw 14 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-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-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-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                dd72f9c7e512da377074d47d990564959b772643
baseline version:
 linux                06dc10eae55b5ceabfef287a7e5f16ceea204aa0

Last test of basis   183405  2023-10-18 00:40:22 Z    1 days
Testing same since   183416  2023-10-18 17:11:48 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  "William A. Kennington III" <william@wkennington.com>
  Johan Hovold <johan+linaro@kernel.org>
  Linus Torvalds <torvalds@linux-foundation.org>
  Mark Brown <broonie@kernel.org>
  William A. Kennington III <william@wkennington.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                                     fail    
 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
   06dc10eae55b..dd72f9c7e512  dd72f9c7e512da377074d47d990564959b772643 -> tested/linux-linus


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 01:06:49 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 01:06:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618874.963110 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtHUs-0002uK-91; Thu, 19 Oct 2023 01:06:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618874.963110; Thu, 19 Oct 2023 01:06: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 1qtHUs-0002uD-5P; Thu, 19 Oct 2023 01:06:46 +0000
Received: by outflank-mailman (input) for mailman id 618874;
 Thu, 19 Oct 2023 01:06: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=IZCy=GB=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qtHUr-0002rv-Ju
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 01:06:45 +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 c46919e4-6e1b-11ee-9b0e-b553b5be7939;
 Thu, 19 Oct 2023 03:06: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 DD080B82556;
 Thu, 19 Oct 2023 01:06:42 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id EF2BFC433C7;
 Thu, 19 Oct 2023 01:06: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: c46919e4-6e1b-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1697677602;
	bh=JF2U8c25xGMyxCZfF9xezl3QrXYZwYsxanyP3hrhDCY=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=n8z7Rwkw8Me9ddqXkxQL/lQSjgRAGgHkGoFBQGhw1euLQ5cOD7tZ3ukwTfr6Ppf9I
	 G4fw496/mEk4ekvFyRxY2v3ucrQ/QOYxdB8GQM51Y8nYYXSKfJI4mmY+IcUcG7UdtN
	 9IHNbTS3vX3gLydRClZvGok4iynZmWa7zETOFCFTh7R/gWso0cabQpHw3LdQxk4ss0
	 X3yPvRnb5IwWf5ZnI3XTm1a0o4jCAhhRilwNgXbEM7qT80PRTg67LWXq7psk36J3HQ
	 frDhdWC/dlMR8JCpLym82Y+kS0vFm+HZ3wbdMykEjm2WV6uU+tNsoD8XXigytGUW00
	 FPO2Dvc8d9ncg==
Date: Wed, 18 Oct 2023 18:06:39 -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, George Dunlap <george.dunlap@citrix.com>, 
    Dario Faggioli <dfaggioli@suse.com>, 
    Andrew Cooper <andrew.cooper3@citrix.com>, Jan Beulich <jbeulich@suse.com>, 
    Julien Grall <julien@xen.org>, Wei Liu <wl@xen.org>
Subject: Re: [XEN PATCH 4/4] xen: address violations of MISRA C:2012 Rule
 13.1
In-Reply-To: <1e0f12095bcbc82ae3585c9fcf57bec7e324049c.1697638210.git.simone.ballarin@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2310181803351.965337@ubuntu-linux-20-04-desktop>
References: <cover.1697638210.git.simone.ballarin@bugseng.com> <1e0f12095bcbc82ae3585c9fcf57bec7e324049c.1697638210.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 Wed, 18 Oct 2023, Simone Ballarin wrote:
> Rule 13.1: Initializer lists shall not contain persistent side effects
> 
> This patch moves expressions with side-effects outside the initializer lists.
> 
> No functional changes.
> 
> Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>
> ---
>  xen/common/sched/core.c    | 16 ++++++++++++----
>  xen/drivers/char/ns16550.c |  4 +++-
>  2 files changed, 15 insertions(+), 5 deletions(-)
> 
> diff --git a/xen/common/sched/core.c b/xen/common/sched/core.c
> index 12deefa745..519884f989 100644
> --- a/xen/common/sched/core.c
> +++ b/xen/common/sched/core.c
> @@ -1504,6 +1504,8 @@ long vcpu_yield(void)
>  {
>      struct vcpu * v=current;
>      spinlock_t *lock;
> +    domid_t domain_id;
> +    int vcpu_id;
>  
>      rcu_read_lock(&sched_res_rculock);
>  
> @@ -1515,7 +1517,9 @@ long vcpu_yield(void)
>  
>      SCHED_STAT_CRANK(vcpu_yield);
>  
> -    TRACE_2D(TRC_SCHED_YIELD, current->domain->domain_id, current->vcpu_id);
> +    domain_id = current->domain->domain_id;
> +    vcpu_id = current->vcpu_id;
> +    TRACE_2D(TRC_SCHED_YIELD, domain_id, vcpu_id);

Also here it looks like accessing the current pointer is considered a
side effect. Why? This is a just a global variable that is only accessed
for reading.


>      raise_softirq(SCHEDULE_SOFTIRQ);
>      return 0;
>  }
> @@ -1888,14 +1892,17 @@ ret_t do_sched_op(int cmd, XEN_GUEST_HANDLE_PARAM(void) arg)
>      case SCHEDOP_shutdown:
>      {
>          struct sched_shutdown sched_shutdown;
> +        domid_t domain_id;
> +        int vcpu_id;
>  
>          ret = -EFAULT;
>          if ( copy_from_guest(&sched_shutdown, arg, 1) )
>              break;
>  
> +        domain_id = current->domain->domain_id;
> +        vcpu_id = current->vcpu_id;
>          TRACE_3D(TRC_SCHED_SHUTDOWN,
> -                 current->domain->domain_id, current->vcpu_id,
> -                 sched_shutdown.reason);
> +                 domain_id, vcpu_id, sched_shutdown.reason);
>          ret = domain_shutdown(current->domain, (u8)sched_shutdown.reason);
>  
>          break;
> @@ -1905,13 +1912,14 @@ ret_t do_sched_op(int cmd, XEN_GUEST_HANDLE_PARAM(void) arg)
>      {
>          struct sched_shutdown sched_shutdown;
>          struct domain *d = current->domain;
> +        int vcpu_id = current->vcpu_id;
>  
>          ret = -EFAULT;
>          if ( copy_from_guest(&sched_shutdown, arg, 1) )
>              break;
>  
>          TRACE_3D(TRC_SCHED_SHUTDOWN_CODE,
> -                 d->domain_id, current->vcpu_id, sched_shutdown.reason);
> +                 d->domain_id, vcpu_id, sched_shutdown.reason);
>  
>          spin_lock(&d->shutdown_lock);
>          if ( d->shutdown_code == SHUTDOWN_CODE_INVALID )
> diff --git a/xen/drivers/char/ns16550.c b/xen/drivers/char/ns16550.c
> index 28ddedd50d..0b3d8b2a30 100644
> --- a/xen/drivers/char/ns16550.c
> +++ b/xen/drivers/char/ns16550.c
> @@ -445,10 +445,12 @@ static void __init cf_check ns16550_init_postirq(struct serial_port *port)
>              struct msi_info msi = {
>                  .sbdf = PCI_SBDF(0, uart->ps_bdf[0], uart->ps_bdf[1],
>                                   uart->ps_bdf[2]),
> -                .irq = rc = uart->irq,
> +                .irq = uart->irq,
>                  .entry_nr = 1
>              };
>  
> +            rc = uart->irq;

What's the side effect here? If the side effect is rc = uart->irq, why
is it considered a side effect?


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 05:21:26 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 05:21:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618879.963120 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtLT8-0008Pm-4j; Thu, 19 Oct 2023 05:21:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618879.963120; Thu, 19 Oct 2023 05: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 1qtLT8-0008Pf-0P; Thu, 19 Oct 2023 05:21:14 +0000
Received: by outflank-mailman (input) for mailman id 618879;
 Thu, 19 Oct 2023 05:21: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=AWKy=GB=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qtLT6-0008PX-62
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 05:21:12 +0000
Received: from foss.arm.com (foss.arm.com [217.140.110.172])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTP
 id 4fadf39f-6e3f-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 07:21:09 +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 E7AA22F4;
 Wed, 18 Oct 2023 22:21:49 -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 0E5B33F64C;
 Wed, 18 Oct 2023 22:21: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: 4fadf39f-6e3f-11ee-98d5-6d05b1d4d9a1
From: Henry Wang <Henry.Wang@arm.com>
To: xen-devel@lists.xenproject.org
Cc: Henry Wang <Henry.Wang@arm.com>,
	Community Manager <community.manager@xenproject.org>,
	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>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>,
	Wei Chen <wei.chen@arm.com>
Subject: [PATCH 0/3] Final CHANGELOG changes for 4.18
Date: Thu, 19 Oct 2023 13:20:47 +0800
Message-Id: <20231019052050.1032492-1-Henry.Wang@arm.com>
X-Mailer: git-send-email 2.25.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Hi all,

This series should be the final CHANGELOG changes for 4.18.

The first patch is mentioning the MISRA-C improvement during the
4.18 dev cycle, so should be committed before we branch.

The second patch sets the release date and tag of 4.18 release and
should be included in both the staging and stable-4.18 once we
branch (next week).

The third patch starts a new unstable section, so should be in
unstable master/staging only.

Thanks.

Henry Wang (3):
  CHANGELOG.md: Mention the MISRA-C improvement in 4.18 dev cycle
  CHANGELOG.md: Set 4.18 release date and tag
  CHANGELOG.md: Start new "unstable" section

 CHANGELOG.md | 9 +++++++++
 1 file changed, 9 insertions(+)

-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Thu Oct 19 05:21:26 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 05:21:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618881.963140 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtLTE-0000U9-I9; Thu, 19 Oct 2023 05:21:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618881.963140; Thu, 19 Oct 2023 05:21: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 1qtLTE-0000U2-Ex; Thu, 19 Oct 2023 05:21:20 +0000
Received: by outflank-mailman (input) for mailman id 618881;
 Thu, 19 Oct 2023 05: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=AWKy=GB=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qtLTE-0008PX-38
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 05:21:20 +0000
Received: from foss.arm.com (foss.arm.com [217.140.110.172])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTP
 id 558ca354-6e3f-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 07:21:19 +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 ED0EA2F4;
 Wed, 18 Oct 2023 22:21:59 -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 162813F64C;
 Wed, 18 Oct 2023 22:21: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: 558ca354-6e3f-11ee-98d5-6d05b1d4d9a1
From: Henry Wang <Henry.Wang@arm.com>
To: xen-devel@lists.xenproject.org
Cc: Henry Wang <Henry.Wang@arm.com>,
	Community Manager <community.manager@xenproject.org>,
	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>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>,
	Wei Chen <wei.chen@arm.com>
Subject: [PATCH 2/3] CHANGELOG.md: Set 4.18 release date and tag
Date: Thu, 19 Oct 2023 13:20:49 +0800
Message-Id: <20231019052050.1032492-3-Henry.Wang@arm.com>
X-Mailer: git-send-email 2.25.1
In-Reply-To: <20231019052050.1032492-1-Henry.Wang@arm.com>
References: <20231019052050.1032492-1-Henry.Wang@arm.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Signed-off-by: Henry Wang <Henry.Wang@arm.com>
---
 CHANGELOG.md | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/CHANGELOG.md b/CHANGELOG.md
index 47e98f036f..3c83878c9b 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -4,7 +4,7 @@ Notable changes to Xen will be documented in this file.
 
 The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
 
-## [unstable UNRELEASED](https://xenbits.xen.org/gitweb/?p=xen.git;a=shortlog;h=staging) - TBD
+## [4.18.0](https://xenbits.xen.org/gitweb/?p=xen.git;a=shortlog;h=RELEASE-4.18.0) - 2023-10-30
 
 ### Changed
  - Repurpose command line gnttab_max_{maptrack_,}frames options so they don't
-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Thu Oct 19 05:21:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 05:21:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618880.963129 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtLTB-0000DS-AN; Thu, 19 Oct 2023 05:21:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618880.963129; Thu, 19 Oct 2023 05:21: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 1qtLTB-0000DK-7s; Thu, 19 Oct 2023 05:21:17 +0000
Received: by outflank-mailman (input) for mailman id 618880;
 Thu, 19 Oct 2023 05:21: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=AWKy=GB=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qtLT9-0008PX-As
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 05:21:15 +0000
Received: from foss.arm.com (foss.arm.com [217.140.110.172])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTP
 id 52b1a71c-6e3f-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 07:21:14 +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 07FA61007;
 Wed, 18 Oct 2023 22:21:55 -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 21DBF3F64C;
 Wed, 18 Oct 2023 22: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: 52b1a71c-6e3f-11ee-98d5-6d05b1d4d9a1
From: Henry Wang <Henry.Wang@arm.com>
To: xen-devel@lists.xenproject.org
Cc: Henry Wang <Henry.Wang@arm.com>,
	Community Manager <community.manager@xenproject.org>,
	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>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>,
	Wei Chen <wei.chen@arm.com>
Subject: [PATCH 1/3] CHANGELOG.md: Mention the MISRA-C improvement in 4.18 dev cycle
Date: Thu, 19 Oct 2023 13:20:48 +0800
Message-Id: <20231019052050.1032492-2-Henry.Wang@arm.com>
X-Mailer: git-send-email 2.25.1
In-Reply-To: <20231019052050.1032492-1-Henry.Wang@arm.com>
References: <20231019052050.1032492-1-Henry.Wang@arm.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Signed-off-by: Henry Wang <Henry.Wang@arm.com>
---
 CHANGELOG.md | 1 +
 1 file changed, 1 insertion(+)

diff --git a/CHANGELOG.md b/CHANGELOG.md
index 165c5caf9b..47e98f036f 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -33,6 +33,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
    nodes using a device tree overlay binary (.dtbo).
  - Introduce two new hypercalls to map the vCPU runstate and time areas by
    physical rather than linear/virtual addresses.
+ - The project has now officially adopted 72 rules of MISRA-C.
 
 ### Removed
  - On x86, the "pku" command line option has been removed.  It has never
-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Thu Oct 19 05:21:28 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 05:21:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618883.963149 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtLTM-0000qW-Pf; Thu, 19 Oct 2023 05:21:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618883.963149; Thu, 19 Oct 2023 05: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 1qtLTM-0000qL-MJ; Thu, 19 Oct 2023 05:21:28 +0000
Received: by outflank-mailman (input) for mailman id 618883;
 Thu, 19 Oct 2023 05:21: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=AWKy=GB=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qtLTL-0000nR-FB
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 05:21:27 +0000
Received: from foss.arm.com (foss.arm.com [217.140.110.172])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTP
 id 5889075c-6e3f-11ee-9b0e-b553b5be7939;
 Thu, 19 Oct 2023 07:21: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 D3DFE2F4;
 Wed, 18 Oct 2023 22:22:04 -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 F204F3F64C;
 Wed, 18 Oct 2023 22:21: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: 5889075c-6e3f-11ee-9b0e-b553b5be7939
From: Henry Wang <Henry.Wang@arm.com>
To: xen-devel@lists.xenproject.org
Cc: Henry Wang <Henry.Wang@arm.com>,
	Community Manager <community.manager@xenproject.org>,
	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>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>,
	Wei Chen <wei.chen@arm.com>
Subject: [PATCH 3/3] CHANGELOG.md: Start new "unstable" section
Date: Thu, 19 Oct 2023 13:20:50 +0800
Message-Id: <20231019052050.1032492-4-Henry.Wang@arm.com>
X-Mailer: git-send-email 2.25.1
In-Reply-To: <20231019052050.1032492-1-Henry.Wang@arm.com>
References: <20231019052050.1032492-1-Henry.Wang@arm.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Signed-off-by: Henry Wang <Henry.Wang@arm.com>
---
 CHANGELOG.md | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/CHANGELOG.md b/CHANGELOG.md
index 3c83878c9b..48aff24f3a 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -4,6 +4,14 @@ Notable changes to Xen will be documented in this file.
 
 The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
 
+## [unstable UNRELEASED](https://xenbits.xen.org/gitweb/?p=xen.git;a=shortlog;h=staging) - TBD
+
+### Changed
+
+### Added
+
+### Removed
+
 ## [4.18.0](https://xenbits.xen.org/gitweb/?p=xen.git;a=shortlog;h=RELEASE-4.18.0) - 2023-10-30
 
 ### Changed
-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Thu Oct 19 06:35:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 06:35:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618895.963160 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtMd7-0004Fu-6c; Thu, 19 Oct 2023 06:35:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618895.963160; Thu, 19 Oct 2023 06:35: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 1qtMd7-0004Fn-3n; Thu, 19 Oct 2023 06:35:37 +0000
Received: by outflank-mailman (input) for mailman id 618895;
 Thu, 19 Oct 2023 06:35: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=g4nO=GB=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qtMd5-0004Fh-Lc
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 06:35:35 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 (mail-db8eur05on2060d.outbound.protection.outlook.com
 [2a01:111:f400:7e1a::60d])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id b3cb4870-6e49-11ee-9b0e-b553b5be7939;
 Thu, 19 Oct 2023 08:35:32 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM9PR04MB8747.eurprd04.prod.outlook.com (2603:10a6:20b:408::11)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.36; Thu, 19 Oct
 2023 06:35:31 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%7]) with mapi id 15.20.6907.022; Thu, 19 Oct 2023
 06: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: b3cb4870-6e49-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=aqESlWtdBCbQGMIFh2OAT3w3JTZtwt4998B5aRG3Av61S07wx4fuel5h6frYJqwO9wFP5da8w+hBS81gjCfcpDZlUGY6vw4WGmsZRgPGN/ekKv3z6UdqLbHcIN2Rf7BWhiMe9rzCPQKWfBXWGI1V01cvqxJKfXaNENwj7GoRCLH4Cz5kC/ALJb4rdV2AR4eHf/NAHGnHnC5nzdBu21Bu6XP8j35aO5dz0RKWAZ2wHu/oP2zAyNLMpqja5fCFdqexFRL5wWl0ge0F8bjGdjZp4vxmuFO+l1u4CEFLSuiWgCNNJ7sw+u02LbPmhEAoSKP0gUQApVCm9GDd2z4F8LAOtA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=tBdhVf6XAkSBxABwGO1mon3mcodc9IwKa3vK1gK8scc=;
 b=bgFJZPo8b83xlT73otOTbFeoXLHsRNOntVqUxeVns+Dvn4N5m7+mwlVvp663ak3nTWWgbIHck5UtqsPWRyW/SXi3bbOfFqAEHHKf6UNaExuZyChaU6Y/PBpR8nMtJbiFYu+cu4HiPFoiuMdmMTSTMA2DWMEWa2VQ1tpUoTBATWSZh1BP1IoNcluO7Vam2m9JJpTlfVpYIsGkF2AXIVXxjSQvrkaXduVBuqitdpVcwftG6QW3uZHZ+4bMKTB09d4JLg4gbq1on6Uwm7xXvkPgtp+W82CUvb8LS7P43BRmnENUCyCLspE2a/kCtPoaBE0OJs4Uiyp7kinSeM8x4zOR3w==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=tBdhVf6XAkSBxABwGO1mon3mcodc9IwKa3vK1gK8scc=;
 b=cTMk9I4oaEIwdtxjGGmcAAiVg1fvzFZl46/mhYr82GloERxRFYkDhy66VgmhQ/rH+D1wQLi32caIPArvq34slh39Tj0hsrr7NCW04WfbsNdCKiASzirmS8EiE4jzskFtFDj4c6y3nVo4LLtUxOhk3mPJo48EXx5givoq0dJizDPHhiMoDzZB50ted9V0B7Mnk20yzFEO5VmvfgvOuXvXWLe9DtHSNIx/1OMVdiJ3z7vU24tOF2gvyqEGHF3zQ/cO4VqjCeFy0JNnL/ATWnX8pBHxAn5QbXvKC6H9/0u5qqlwi9GOJHUjQehCavwCb/alPZLDpLy3+5U7ZCWn1DtMqw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <0f6a604e-7201-ea2d-cea3-89a3b9b08919@suse.com>
Date: Thu, 19 Oct 2023 08:35: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] console: make input work again for pv-shim
Content-Language: en-US
To: Julien Grall <julien@xen.org>,
 "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>,
 Henry Wang <Henry.Wang@arm.com>, Michal Orzel <michal.orzel@amd.com>,
 Manuel Bouyer <bouyer@antioche.eu.org>
References: <ed275abf-351f-5237-7e19-a3856f6d4272@suse.com>
 <f2b51b47-fdeb-45a6-92c7-5b21da1855fe@xen.org>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <f2b51b47-fdeb-45a6-92c7-5b21da1855fe@xen.org>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR3P281CA0071.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:4b::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_|AM9PR04MB8747:EE_
X-MS-Office365-Filtering-Correlation-Id: d1e8a846-06b9-4b73-1951-08dbd06d96de
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	yyCIJdhSyb+egeqAYKcvfnay+ruByjxEI1dNLd4olYMVU5fMlXEB62YD3kMwwix80SzUhI/+RJ52PFBMWYdFGfJ1EHoXSrMxWbFwHk+SxD/XGPqsqk411232ggv2+yoFff4dcIoPIeSqakLd1PwmweEi79EUyTYLlo67Nj57Q13bJC4vqphta8YArFNSB8ElTPNfyfgQlod9SZ2ZkmZ3vNnGuZpZNgzZM3vg1zzF6Ig2E/dTw1XllsTTvLYDBNaxElKvm9hnqBAx90zci0X0QRXt0nNKtsVlhsnAize6+eWU+l+l4Q1BWfA6hm6WH8fp4DPH6uZr9/s7cSBwvB8gW7aFjTIcT/XNWm7EoHp2nrlsy9RNeezfbAa9MiRqhND5HnLFeMZs6CjLUzZJulUXNeGDh1r4DdFlK0oSsGpomtlVIRAQsSAG7W1o+bMscE2PtiD7LfmUX0Ry9nynHgFfn9MwhH/HbZ5CIL81YzJYtYeIo94yJ7zPJXl8KswrXhgk2OrDAQpcxFqHNQzS88PPNSu5ez1Zwlj+a6PCwezyHzlG84CJ05/me1J5hDxxvUQpEW9BHI4aTmU2ycn6f0qZ2rsA/jY4oQ/O4bEGcX3TvfoVAiyBqifVAhqL7/h1svaVtpYH2xgG5eq9Q3ICJBra7Q==
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)(39860400002)(346002)(396003)(366004)(230922051799003)(64100799003)(451199024)(186009)(1800799009)(26005)(2616005)(83380400001)(8936002)(6506007)(53546011)(316002)(5660300002)(41300700001)(8676002)(478600001)(2906002)(54906003)(4326008)(6486002)(66476007)(110136005)(86362001)(38100700002)(31696002)(66556008)(66946007)(31686004)(6512007)(36756003)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?WXd1czhYeTZucG9mMkZMd08xVjVXOW9jYjZuTkJMWXdnWi9tN1IrRVB1WU5L?=
 =?utf-8?B?TUtQT20rRmtERE5Vanl2T0JnS3NZMGZaRTBFSkNkMEZUbkMvdURRWE8rdmdR?=
 =?utf-8?B?N2duMXFWWHdKMG1pQm9pUXBHejd6SzRoRU81MUovLzJvbTU2Z2JMS1E3NkxY?=
 =?utf-8?B?UHkzVUhpL3RnOVVsNXRzOUNRUGdUZ2NNSHBqMGJqaVR3a0ZuSVNacDVETzIx?=
 =?utf-8?B?OGlzMnZYUDVRM3pxS2M0ZHNCMnZkajZrd1dpUFM1R3Z0K0V4VG85QkNUMlVz?=
 =?utf-8?B?bUlCdFAyZEVqVTlXcHlaUG1kOEg4T2J3NDZrbjRLLzFSVFhPbWplRHovaGox?=
 =?utf-8?B?eWxVS01PWGd1a1hucVg3U0wxNHpsOTg5eW4wS3RTb25rMDFvc3ZrYWJjZUNl?=
 =?utf-8?B?RDZoV3U4RGYrODY2ZldZMVVuQ2pqWHVSZTRYckRMTi92TGd6VWZhSU9RZGVK?=
 =?utf-8?B?YjNON1J0UExGRDdQdHExWmo1a3RMN0RnV3g1RWtpZzhHK2UyTXY5ZkxMVXBa?=
 =?utf-8?B?THZwQUZXbUQ2OG1mRTE5QzlyMG4vME9BUnV4TjRPU3NUZGxyeEtXWGc1cm84?=
 =?utf-8?B?TnZyRXNFSVN4MVAvby9LWGFLb1VCKytJejNCUUVKbGZGRHl4bmtHMExKeS9u?=
 =?utf-8?B?Q2kxQ2tIM0Ricm5LSEpTak4xOFFDYWw5SWpFZHdCUXdMTm1DaTlmb3ExdXd4?=
 =?utf-8?B?WWY4Q2xRRFJ5TmtpdHZweGIwMGlXR0xwVnVpNGcyUmZ0Qi9palBYSkNkUUhW?=
 =?utf-8?B?c2JKSDFTWldORC9vR3B3QzY5Mm8zaEY4MHBhSVdXRi94SVpsQk5NVEdGQnJj?=
 =?utf-8?B?aENhWUJNaXdLS3hoV2IvTUNEVFFVcE9WblBabWUrRndHVm44RkdKRFA1Sm5x?=
 =?utf-8?B?a2ZsWGNRSURCc01xemY1R3o4SkpFUjE0TGNJNU9QYXhURUQyTmZwa2JaNENa?=
 =?utf-8?B?a0hqMWI1SXl3bnBjdXIxUGdJVlk5cHRZOHZRMWMxOVZSOEl2Nkx2M2h0Smph?=
 =?utf-8?B?Y1ZPSjhqdnlubUVBZzlZbWVHTTNnN2VSVytDRWVTS1BHV1pUaGw1SmZKRlk2?=
 =?utf-8?B?RnhnZGkvV2hSTStVWi92SXMzWWZtMTVtRVhFd3FpWGtqK1lMQVBCQ0tCTU5j?=
 =?utf-8?B?ZlJTc2tsNE5QRWx6cXZPQWRibDdaRTFGemx3ejNyYVkxSG5HWTBXZ1FnbHNq?=
 =?utf-8?B?SEFKT1RncVFUWnF6UHZVUVd4azh5V1owenRwMUVaaHJ5cm1xaFg1dnA0YUli?=
 =?utf-8?B?cENGckJ6QjVwK010UlNPMlFPQWthN055RS9Ra1VYd1UvVVdvczhicXdIZzBh?=
 =?utf-8?B?YkFHS29WV2w4RUhwYmh6bnVjWFczdjdWS1A5MHhLL3lHbFl5Q3oyR21hNVd4?=
 =?utf-8?B?NHdDa0gvOXBrNzVSZWd4cXNlajB2ald4RytocEhiczRvZmdiZmxaYmkycGQr?=
 =?utf-8?B?TzM4ZGJ3dmszTUkrTnUweFRLTG9kN3QvVW1sK3ZSSkFiRXhJVmdkd09hV1hW?=
 =?utf-8?B?VTcrK2cxdFRzU3p5U25hSmNmNFEvVUVsb1p3Q0NweXR2MXpHUkF2ck1MMkVn?=
 =?utf-8?B?VnJoYVpaRDU2Slk0WUdSM2pNVEFrRzhPR2NqQmUvS0dsZ0c1eHBRVkM4UUxO?=
 =?utf-8?B?eDIxU2RYdldBOTlVWTdGRmo2S3VLYWdOcWdnMVduSXkzVGxWZ2VrRlFHdUxs?=
 =?utf-8?B?djNNaE5WdjladXVyYWpmekxPUjFMRityOGp0OE11SkhPWWp2Vi9uUWRCdVhq?=
 =?utf-8?B?empFWE80a21KbjA1aW5uT25oUzREUGx4QktoOGIyVlpPa1JXMGVpR1ovSHFa?=
 =?utf-8?B?anl1c3FoaXlMdzZNVTNvTllidHNUdUszVVBBZ0pEd2pJcEhTS2oxWUpJdWMw?=
 =?utf-8?B?K28vWEVPSlBWMzRFSWcrNTB5dFNteVdtZFRJS2JWM1EwL0dCbk1xaHd2WlBj?=
 =?utf-8?B?MUw2R0l4WmltMWd0SEF5VWh1aTdKUWc0SFpuTkl1eDFQWE9YWGdJVExFVHVJ?=
 =?utf-8?B?NXZsWFlnMktNRWI3dUhPa1ZXWHB5YzNTT2Y1VmhiRTFyVmo4M0ZESGJGd3Ew?=
 =?utf-8?B?dnBXSHZ3U3c1NmlhQ2ZOWGE0Yk52TkNTdU90UEpQeTRGVlduaHFCQStDSzlL?=
 =?utf-8?Q?uTdOYwNbYlTsnc6BHVNqnR1xo?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: d1e8a846-06b9-4b73-1951-08dbd06d96de
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Oct 2023 06:35:30.7962
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: g2J6N+4wFdC+un5UmM77O4mK2x/iP2keTa4SBTUlmzKlx5OMt7xg6MIziUVuzIkMZRJeGjXahcd0dFykRGpQFQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR04MB8747

On 18.10.2023 20:00, Julien Grall wrote:
> On 18/10/2023 15:58, Jan Beulich wrote:
>> From: Manuel Bouyer <bouyer@antioche.eu.org>
>>
>> The use of rcu_lock_domain_by_id() right in switch_serial_input() makes
>> assumptions about domain IDs which don't hold when in shim mode: The
>> sole (initial) domain there has a non-zero ID. Obtain the real domain ID
>> in that case (generalized as get_initial_domain_id() returns zero when
>> not in shim mode).
>>
>> Note that console_input_domain() isn't altered, for not being used when
>> in shim mode (or more generally on x86).
> 
> I think it would be worth to either add a comment in 
> console_input_domain() and/or #ifdef the code. In any case...

I have such a patch already, but intend to submit only for post-4.18.

>> Fixes: c2581c58bec9 ("xen/console: skip switching serial input to non existing domains")
>> Signed-off-by: Manuel Bouyer <bouyer@antioche.eu.org>
>> Signed-off-by: Jan Beulich <jbeulich@suse.com>
> 
> ...
> 
> Reviewed-by: Julien Grall <jgrall@amazon.com>

Thanks.

> Also, should we consider it for xen 4.18? (I notice there is no for-4.18 
> tag).

Of course we should, as it's a regression. I probably should have added
the tag, despite my dislike for such. Intention was imo nevertheless
clear, by me having Cc-ed Henry.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 06:46:08 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 06:46:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618899.963170 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtMnD-00065J-7g; Thu, 19 Oct 2023 06:46:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618899.963170; Thu, 19 Oct 2023 06:46: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 1qtMnD-00065C-58; Thu, 19 Oct 2023 06:46:03 +0000
Received: by outflank-mailman (input) for mailman id 618899;
 Thu, 19 Oct 2023 06:46: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=g4nO=GB=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qtMnC-000650-6z
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 06:46:02 +0000
Received: from EUR01-VE1-obe.outbound.protection.outlook.com
 (mail-ve1eur01on0606.outbound.protection.outlook.com
 [2a01:111:f400:fe1f::606])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 29b1e086-6e4b-11ee-9b0e-b553b5be7939;
 Thu, 19 Oct 2023 08:46:00 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DU2PR04MB9178.eurprd04.prod.outlook.com (2603:10a6:10:2f5::11)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.8; Thu, 19 Oct
 2023 06:45:58 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%7]) with mapi id 15.20.6907.022; Thu, 19 Oct 2023
 06: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: 29b1e086-6e4b-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=jgxJOC4W1/9/PQVzOjffI5Y0iYAbeOAFsyugegNcVYrANc2kSfhhiJ6hKqvu2hnjEwHMJyqN3zr3zMnZmv99Ex8/pHqfgbiqlhuFz4GLmQkJEns9pNIppbTiltWTAjpOz/7ofYvnto8UXzlehL98l5HsupHfkzRdiAX+QkeRp8Vc4yh2ATdbCeVROsv80BkV8dGj42ZucJ/pB7q3reXiit8bQYtPYWBta142DoenJP1/OPfDRe2qVnv54C6OrPxtZ3GVHGobWLfBxnX9K4s1RqyzgyxVhh9Y49cmGBVRdNhB80T/CC0lT770O1SH41DjjLYTByP/+aObINIDEJ499Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=BGxyZhtmVl/sCWm/OqAtrZJ9AnUyWarl1V3WAOY+BUY=;
 b=TYKMXk70KCS/lg1Aw89cUD7P6k5fWlhDh3au+B6oeNyddATolgWhYNo/jgvE99bytDOoq2mBzSQQX5TttoacafO5Ng9c01sgnSUiCvbZ9N88H+6ULghMWNb9oxLNuHclFvIycJXj8TQNEs7QJuyKs/2jUSCP/6PZcF1igMk9hClwyX+RG+zExmqUb+tiEkSNTHaf6KTNuc553dcPTmejotX5ulNzNB0WVYHU+hzGyKPJ9TNI5hLXlsFhCqkgNQsPmyAq/mRP/EJElVkYNzjqX6nQjAAvP4rZRP7Sz/z6Dz8GNefa9aCn9LR+Mbika3U4VZzZg/tHSjcZpzjF+mEYnQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=BGxyZhtmVl/sCWm/OqAtrZJ9AnUyWarl1V3WAOY+BUY=;
 b=gcIct5EYbuoxLrhfs+x9hEajvkeib+uXzmMfffE26JGDFD1eiGcGOTusnt8JcnAdRIpHsR3VBfoep/SI+7Wlm+x9owPvWtLstUHCBk1B6KhZa11K3g0/efNA0f5hc8yvdzbEjgfHjX/M2z1uux9he/QeNpifzunQ9xBx2r3aa1J4m4U54ycU/Llbb3fAKPNKPTjJTiEmKzd8GyJBBagfKu5I/LqrBvBmm0e+FGKRDjhyWrWhq7XSOSe5Lfn7MJVV03tNq/kUnQ3tHxJxQ9nI3p5ycl3vCa52W6LjDQa3qG6xH72OFftToDDowRJPg5IIlk3Z+r7cQKPSgqj1to/wRA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <1567a9f8-9b3d-2285-4d60-fcbd3dfad0c4@suse.com>
Date: Thu, 19 Oct 2023 08:45: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 for-4.18 v3] x86/pvh: fix identity mapping of low 1MB
Content-Language: en-US
To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
Cc: Henry Wang <Henry.Wang@arm.com>, Andrew Cooper
 <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
 Paul Durrant <paul@xen.org>, xen-devel@lists.xenproject.org
References: <20231017082907.14455-1-roger.pau@citrix.com>
 <f1ef0a3d-fbca-51ad-f282-fe3b9d49414b@suse.com> <ZTAEBxMjHAHdlfS3@macbook>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <ZTAEBxMjHAHdlfS3@macbook>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR3P281CA0087.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:1f::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_|DU2PR04MB9178:EE_
X-MS-Office365-Filtering-Correlation-Id: 3737cdc9-292c-4ecf-013e-08dbd06f0cd0
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	kMXzl/aK4t9GtPU3/ZuAg0DnPN/pVFjOSfAwfZMFLzfQWxMM6nhIuGGYtDY2G7NoHFr4MwLrdHe+plXuThdaQONmeuMEuQyqpteop9JqUtSbsBqoBj82+CwxmVWwyRNpeaA9f+CdqjDe9UQZa3Y8nQC7OKQRt5U/WwIAZFTp/CNVIhjuWHSzPM9rtsXgwTLJiyFDV6eBTzq1ismRzdw6lWE5H9HjjqeZfPpY1f5nK+9WGjJmrpfBufuKC3sOwK/WyF3DsJ4TspDhVGy+upclxZgzfk0s38PVd/+DiZxPO6FZaU067x0ntYJHvgRD0vpQ+lShg2QxtmXccfa3eO1GM4vT1u8s4riSJ7fFDc6lL83CNAg9ZH/jY0XgieLFP5zjAnvIrkgumwU4R+cYQN/H1xg4MWVSdiNrbQmQDs9mE+PX6Ef7ntfQ3ivPTfgAvDlePpqGzn0hhFeRKVpkOjXkF5BW8HtM5mB8eJ/8P+Amc+WvUqYHPIgyAHz3gZbihQV5IDE0ZwD2iUhA2sFpYSZb6x9ei0esYlwTIUqs3UHmocHsfV0iy1+mXc/wWFIXGJvnfxNKTUQvWmqGg3TLf3G1TZAINgOo5D81n7kUoXENvx766Wd/q+BS6wV91xb3bK91IML52i1Y9jE72z12UcVjtw==
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)(136003)(39860400002)(346002)(230922051799003)(186009)(1800799009)(451199024)(64100799003)(36756003)(31686004)(54906003)(66476007)(6916009)(316002)(66946007)(66556008)(86362001)(31696002)(38100700002)(53546011)(83380400001)(26005)(2616005)(6512007)(6666004)(6506007)(2906002)(8936002)(478600001)(6486002)(41300700001)(4326008)(5660300002)(8676002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?cFlaR2FodVphNXd3V0U2N3pwa3oyNVo5UFlHU3puaWJaMHdHN3JKR1NNaDVZ?=
 =?utf-8?B?OVZnalF6N0xSZzErTlRwbjRiTys1UzVKUGdVNTU0em0rQzVGczdrWjFqcUtr?=
 =?utf-8?B?RDBZdGY4YTlHaUQrQzN3N0hZZmRXbzRicklEaGFLekkrV0JPVWpsdnhRY0JD?=
 =?utf-8?B?OWloRVdhM0NtbzRzOU05RDd6M0g3b2FHK3BCMCtZc1lwODdmMUdaQlR2VlFp?=
 =?utf-8?B?VlNyYW80cTFrQWdwZ013Y2RrN1kwT0xYVStzODBCRHAzT3psZkNiZ3BwcWVT?=
 =?utf-8?B?Zk5BQS9YaUxVL2tjMm15UDJqc0IxR3ZuZExMT2cyQmt1YWhsU1ZDNHhGeUZP?=
 =?utf-8?B?UzZQc0ZGSmI1MGdpZ0hENC9NTzZVaHpDT2xGbm5BNWJpUk5UQXhzZkx5NUNZ?=
 =?utf-8?B?bm9UMG5CVm12Wk1MbzExSXhHdE8vbU1qS3RCWWx5NTgwTlovTU4rYWpwMFFI?=
 =?utf-8?B?V1hMMnRBNU5VaklMWXUzL1MwTHZaUzUwKzNLZ0h4RUNaaVJmV1VBYlFmNnNx?=
 =?utf-8?B?VDRJV1J5MlU2M2F1Wkc5cWtJZlVIWTdzTDZnNUZIMEN1SEpoMnIxVkZ1ZW9D?=
 =?utf-8?B?L21qUTNxUk1uVkhTKyt6eE1TZzNoMDlzUCtHZWRsK1I0SVdiN3N3c2hRMVpK?=
 =?utf-8?B?YjhCU25tZEFTUVI5QnBoU2RPTFNKMXZRL2RUV1JIZWdRYzhnTWtmc1EyUUZC?=
 =?utf-8?B?KzhBbGhHM3ZIbFdJV3VTZEVnVyt6anZqV0Z1MFlwYklmWmhuVWpVWU9CMUdX?=
 =?utf-8?B?bGZJb0czcFVaYnpDdEJxQ0ltczBMM3ZId3dMTTVISHhiYTBNdG5SMzBSZk94?=
 =?utf-8?B?UlJZdC9KajhkT0paRzF6RkEwQ3RYTHpEZU1aZ3FBNURlZVRpQnNsZStpWFlB?=
 =?utf-8?B?VS8waEZsMUhJNXNBUDVValBEL3FKN1VlZE5YYWExNTJ0T3Z4SDQ2bjllbU5K?=
 =?utf-8?B?bE95WUtJUlhnOEhsZm9iMFFDM00xYnVIQ3Eyc0ZyTXRRSFphUk44dUxPU090?=
 =?utf-8?B?RVNLdkF0NE1rTU9IZ0tHajdSaFpTYzVEZ0FkRnVPb2YrcS9tNnhFT2tudnVI?=
 =?utf-8?B?S05wSHhRcis3cXZOMXROdHFIdEF6QU1MVU1tMGZnT2wyQ2lqbG0rQnVYY3lZ?=
 =?utf-8?B?c1FydDVsNFdGZVhhUm5aR1lVRm9HMjFYaHBRMi9HYm9MUkxmRHk2bkRtS08y?=
 =?utf-8?B?ZFNIb1U3RzRlZzlXOFo1VWIrbnRVbVl5QnA4Mk5CYVlyNGZRTE5zVkRUWmZH?=
 =?utf-8?B?TTdNUXR0WjZsdDVhSkhGek5vN0VaZ1djdEJ4b2RXL0NjQTZNSlh5TG53TDZq?=
 =?utf-8?B?QjBjQmdKWXY2VGhKYW1YK2JGRzJyR29sb1JXeUk2Qk0vNjNwbTMyMlF1UzRD?=
 =?utf-8?B?S2NkQU9qOWNEQUo3T0pETGtzNkdWbGczNDJ0S214RjdjdTZDU00wYUtualZk?=
 =?utf-8?B?RUhxK0lZUTdJdlEwTWdoajl2WkNKZlR4V3o3c3dqN3M4L1V6MHhlZmpSNVIr?=
 =?utf-8?B?WTc4ZFZvUTdRMk1OV0wyMkgxSFZxSWFJN1Y4bWJ2Uyt5clY4VEducmNJcnNv?=
 =?utf-8?B?b0VMTVZRMVJhQjY2cTR5cVJTblE4TU4yRGs4ellreHpCZHVWb1BCUEZpZ3Bq?=
 =?utf-8?B?UXpYVFVxdjNWWTFPZG55YUdMcmx6NVdZN1pQQ2UzbXlGVnVDWjZwcGdRQ3VO?=
 =?utf-8?B?V05HN2xNVGRCVE5EdEJZRUVIU0M4QnhJVmJtaTlmbEFPSWkzSUIzME9TQ3dL?=
 =?utf-8?B?b2NjeUkyeVdSUldrbDg3Tzd2RDV5RkJ4Q2huTGRVQktDOU43bDFHNmdEbHZB?=
 =?utf-8?B?V1QrMDVzSGc1SzBuNHRzalZmWnRMMEcwZXBDRlNrWGZNVVVEWmZaOFNmZTJW?=
 =?utf-8?B?T3hla1U1dXUwMmtWcndEaGlKeU4rd3MvLzVJWEFyMERDSFB0dHg5SzNvbnVB?=
 =?utf-8?B?L0grUS9oS0M3cHNWbTV6N1ArSXdQZVIrTldyVm53djU1OEgrbEcrQTRacEoy?=
 =?utf-8?B?eEtVT0JNemFtQlZpYU1HMzEvTG1TN0dvbGI1R2wyY1d6RjhLQWlOMnJYMFh5?=
 =?utf-8?B?US9NcXpnd3ltRExlUWUySDJLVkJGU2xoc0hGbVpmQnFPL3ozb0Q2Y2RrTTNX?=
 =?utf-8?Q?RsF032YJAOxxbuIcYLctvYvOG?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 3737cdc9-292c-4ecf-013e-08dbd06f0cd0
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Oct 2023 06:45:57.9563
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 2JrY4W6UXOssF4uNKd4AtwQixSiG/B1nZrPhQMO82s8hUJIpS0xH4nsCAetAFlsrH4aJlca+2kQticJEZboiXQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU2PR04MB9178

On 18.10.2023 18:12, Roger Pau Monné wrote:
> On Wed, Oct 18, 2023 at 05:11:58PM +0200, Jan Beulich wrote:
>> On 17.10.2023 10:29, Roger Pau Monne wrote:
>>> The mapping of memory regions below the 1MB mark was all done by the PVH dom0
>>> builder code, causing the region to be avoided by the arch specific IOMMU
>>> hardware domain initialization code.  That lead to the IOMMU being enabled
>>> without reserved regions in the low 1MB identity mapped in the p2m for PVH
>>> hardware domains.  Firmware which happens to be missing RMRR/IVMD ranges
>>> describing E820 reserved regions in the low 1MB would transiently trigger IOMMU
>>> faults until the p2m is populated by the PVH dom0 builder:
>>>
>>> AMD-Vi: IO_PAGE_FAULT: 0000:00:13.1 d0 addr 00000000000eb380 flags 0x20 RW
>>> AMD-Vi: IO_PAGE_FAULT: 0000:00:13.1 d0 addr 00000000000eb340 flags 0
>>> AMD-Vi: IO_PAGE_FAULT: 0000:00:13.2 d0 addr 00000000000ea1c0 flags 0
>>> AMD-Vi: IO_PAGE_FAULT: 0000:00:14.5 d0 addr 00000000000eb480 flags 0x20 RW
>>> AMD-Vi: IO_PAGE_FAULT: 0000:00:12.0 d0 addr 00000000000eb080 flags 0x20 RW
>>> AMD-Vi: IO_PAGE_FAULT: 0000:00:14.5 d0 addr 00000000000eb400 flags 0
>>> AMD-Vi: IO_PAGE_FAULT: 0000:00:12.0 d0 addr 00000000000eb040 flags 0
>>>
>>> Those errors have been observed on the osstest pinot{0,1} boxes (AMD Fam15h
>>> Opteron(tm) Processor 3350 HE).
>>>
>>> Rely on the IOMMU arch init code to create any identity mappings for reserved
>>> regions in the low 1MB range (like it already does for reserved regions
>>> elsewhere), and leave the mapping of any holes to be performed by the dom0
>>> builder code.
>>>
>>> Fixes: 6b4f6a31ace1 ('x86/PVH: de-duplicate mappings for first Mb of Dom0 memory')
>>> Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
>>
>> Reviewed-by: Jan Beulich <jbeulich@suse.com>
>> with one suggestion:
>>
>>> --- a/xen/arch/x86/hvm/dom0_build.c
>>> +++ b/xen/arch/x86/hvm/dom0_build.c
>>> @@ -449,7 +449,7 @@ static int __init pvh_populate_p2m(struct domain *d)
>>>          }
>>>      }
>>>  
>>> -    /* Non-RAM regions of space below 1MB get identity mapped. */
>>> +    /* Identity map everything below 1MB that's not already mapped. */
>>>      for ( i = rc = 0; i < MB1_PAGES; ++i )
>>>      {
>>>          p2m_type_t p2mt;
>>> @@ -459,8 +459,8 @@ static int __init pvh_populate_p2m(struct domain *d)
>>>              rc = set_mmio_p2m_entry(d, _gfn(i), _mfn(i), PAGE_ORDER_4K);
>>>          else
>>>              /*
>>> -             * If the p2m entry is already set it must belong to a RMRR and
>>> -             * already be identity mapped, or be a RAM region.
>>> +             * If the p2m entry is already set it must belong to a RMRR/IVMD or
>>> +             * reserved region and be identity mapped, or else be a RAM region.
>>>               */
>>>              ASSERT(p2mt == p2m_ram_rw || mfn_eq(mfn, _mfn(i)));
>>
>> Would you mind wording the comment slightly differently, e.g.
>>
>> "If the p2m entry is already set it must belong to a reserved region
>>  (e.g. RMRR/IVMD) and be identity mapped, or else be a RAM region."
>>
>> This is because such RMRR/IVMD regions are required to be in reserved
>> ranges anyway.
> 
> IIRC there's an option to provide extra RMRR/IVMD regions on the
> command line, and those are not required to be on reserved regions?

On AMD we force-reserve such regions, and I think it is a mistake that
we don't on VT-d.

> Otherwise LGTM, so would you mind adjusting at commit?

Sure.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 06:48:01 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 06:48:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618901.963180 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtMp6-0006o6-L0; Thu, 19 Oct 2023 06:48:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618901.963180; Thu, 19 Oct 2023 06:48: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 1qtMp6-0006nz-HG; Thu, 19 Oct 2023 06:48:00 +0000
Received: by outflank-mailman (input) for mailman id 618901;
 Thu, 19 Oct 2023 06:47: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=g4nO=GB=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qtMp4-0006ni-Rz
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 06:47:58 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 (mail-db8eur05on2062f.outbound.protection.outlook.com
 [2a01:111:f400:7e1a::62f])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 6ed5fe4b-6e4b-11ee-9b0e-b553b5be7939;
 Thu, 19 Oct 2023 08:47:56 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DU2PR04MB9178.eurprd04.prod.outlook.com (2603:10a6:10:2f5::11)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.8; Thu, 19 Oct
 2023 06:47:53 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%7]) with mapi id 15.20.6907.022; Thu, 19 Oct 2023
 06:47: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: 6ed5fe4b-6e4b-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=VdJOO4H7fCxpOAU6HCHAJiM8lAfKGVhqragpthUSv6jPp5pLKw1cNbiDk+0BZdcdOFTlDz4OJBrJWRBrBii4Kz001kEa8XAtUI6HL//BkUjxnPXMFm3y7HtPa8rnn1TXHbTDC5Zj1Tw7rxvGP3Jl2MGu5/qiu0MtZm7O+HRmJkvXrbGnqm+729MsjWyw1Go+0tEyXXvpsVVj1pay9iaCUyilA5JP9llg8GSatVFIBWmCK4u0yM0MqTfCk+Fb1pI9e6A82HIg7M5WTpnbSoJbKMILenF/Vh6Ax/EcOxRsqPLITu0bHhPZ5A7DmJX4I8m/PPh+07Cef/YrsylwDuWZJQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=KnhP3zfZNcV37hu5itZ0SOX16z+YvEZfB4Ow62HPw9I=;
 b=ka2/CNhmiv2c+qJzMTBD92hHIiASXGvI2Ki6FZPHbG9kTLtmDvOa/OxQK6jzMpX52WYfyG+Vtisqxna6LQEonSFlhgFDXXOEsv62MKPc3XnOBf5DmvGKiQkn9vnsE9iFjcV54MQYeayzl4V72hc/q+5gfXgQ+0ipqdqZqkJfYLFEQSfu9ulW4hHar5EYD5v80Q1ckEPq60m7/qt2k9ZRAP1rlz2SqCUgDpo5luJqsylquBYUv+i6D7lQmPfsh87/aQ0KAD6NTuBIjlBlF1pPNZ463RJ1vSD1PG9bs1I/V7iRj9yZRwiLxL415eNBQTRfQVaHIBtF/hLEB6hnjEA/wg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=KnhP3zfZNcV37hu5itZ0SOX16z+YvEZfB4Ow62HPw9I=;
 b=1Yl6OJKLDbVOoQDCaaPxyCrBoXgrGevGIJJRqysVs3740cYSy2FffIbXp5fXhY0iqf+TKXPISpXCRC7ELh5oq+1XUOp+oMDztV5a7tiW3bQ6F30Z5MV0xvXSbPacQM5CCQQJ850Qy8P1sGfYLG7/pKIQTSXpYyCHOXHpVvO2TdNXZn0/BlqUrExtJcH6VKzGcdeCwaLBFT5/jaIu/cOF8ptEARv2MxZ+ag0n5/686jA5DT3bC1QIAQozoCB8iaJ1LY3i9VwcP/5BcMLFiFRNCOVnQ8jKIurSjvjWfeqHLgW/ncAS8gUCOqPe8WoRaBH0sloAxwTfjXLOGm4s/gaY3Q==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <30394e20-04cd-9978-f9fb-575148f87104@suse.com>
Date: Thu, 19 Oct 2023 08:47: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] cxenstored: wait until after reset to notify dom0less
 domains
Content-Language: en-US
To: Stefano Stabellini <sstabellini@kernel.org>
Cc: George Dunlap <george.dunlap@cloud.com>,
 Stefano Stabellini <stefano.stabellini@amd.com>, jgross@suse.com,
 julien@xen.org, wl@xen.org, xen-devel@lists.xenproject.org
References: <20231013230624.1007969-1-sstabellini@kernel.org>
 <55f70f98-4a84-401c-f9a4-3cb50ca1418c@suse.com>
 <alpine.DEB.2.22.394.2310181430550.965337@ubuntu-linux-20-04-desktop>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <alpine.DEB.2.22.394.2310181430550.965337@ubuntu-linux-20-04-desktop>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0184.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:ca::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_|DU2PR04MB9178:EE_
X-MS-Office365-Filtering-Correlation-Id: f900cd67-681f-416c-8efa-08dbd06f51c5
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:
	WeW07rqTIEtTWx8tUDa3OToTg+fIgd13QfxWGLhzpjFKKWTDTL7ik8JXqLsbjQeRO372xQwq4m65FeSplANLhTdjovGUZbNLoU22EinOrNyU09ee3LySfsmVD5lKPs43oT9js7dQXhIia1VA7Qbb3RDN2epvK9i1iJus8SvONC7xh/VYN0cW2QoQmJTCsgqt4h6wWzoMgeJfNpmN0N5kB+/Oe86Sp99eRr+KLtrLLAX3bhXGuso5NdaO4terx/Kr1PyDjWwy/A66bsUKC0KwRFyDg7lXMM2qPGcZG7ghFIpvFlV6ufO0UhiSQkrr/1G6FZZw3y6C/KzIqvAGS8RvolX5CRbrWOAk47MkhT/k+PNo2Ihzbut2CZhjcvGQBrzmciXu/w/lSd0wFwTshz3ZPuBPU2a0PZuBrsOQ9K2rNKwJeoa2s4W5ZCLzhsBmQ7LsPngF9Kj9jVEBMzfDT16IjiyGLV+oSpKCE+QxGoXegGPZXQhFcF7vlcIdLACJRwquejML+wuaveSD5Hrhk42D2VNbs4R6DZF8pd+dLN6SB0MPOAcT2zxeTbUACWWnQPV7xh7fIdFIkFR00OhJM/p5VE03Uell89uyfoAaUBp5K/5RL+3V2eMhuCTqErNf/T2i0ZLGCeoRoObSXIz7+C4TWTDv2K5MsUfWUowsy8MENl4=
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)(136003)(39860400002)(346002)(230922051799003)(186009)(1800799009)(451199024)(64100799003)(36756003)(31686004)(54906003)(66476007)(6916009)(316002)(66946007)(66556008)(86362001)(31696002)(38100700002)(53546011)(83380400001)(26005)(2616005)(6512007)(6506007)(2906002)(8936002)(478600001)(6486002)(41300700001)(4326008)(5660300002)(8676002)(32563001)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?S1VJQWdyNVNSRHc2bXExSGlZc1dkQkFMeVhBYU9Ta2dKeVh4cXczQ2lQdVY4?=
 =?utf-8?B?NmZxckdLR29ZRG9qOUxmYWFsTEMwK1YwOWVyYnVhSUxaWW9jRTdoZjRpRGlt?=
 =?utf-8?B?Vnk5ZFJqYk9QNCtLTjAwYVpNelNUN1dQcVlJRVd6YkNndGVuazI1Mkl5UmlE?=
 =?utf-8?B?VWRqcmVFQ2hOZmg5dVR1VVl0Z0piVDBSb094b1NicDdkN3hQYXpZdzd6NjQ3?=
 =?utf-8?B?dkUwRjBtODhkRWQvZjVPZS9lUC9abTB2N1EyZ21LRXV5N1UwQ29HSko1TktI?=
 =?utf-8?B?QVNVUDRlVHBkTis5djhCNWtxWnRKdG5VVjZVakQ1RWx4RUVPaEdrdHphQnV5?=
 =?utf-8?B?WlRjZUh5YkVGNW5vZ2JNK3JvMnpFV25ueUlTc3NnUDFDRnErdkg1OXdYY1l2?=
 =?utf-8?B?OURWUXlxcnRKNDNFOWUvVm80K0o1S3NnMXBUd3JReS85Y09NdEIzRmNkNkVv?=
 =?utf-8?B?RW5WTWhWMnZFTTBOVjFCRFp5Z01MdXFHa2ttYzdONmVCNnNXYUJrazgxS09o?=
 =?utf-8?B?QStHUHZsSW1uQWQyeWY2NkJmb1pUYm5zZTN2cndRRHdkQlVJMVFXc1JNSDlm?=
 =?utf-8?B?aXViSjJVMlhPd1RjOUJaMDdxRnZQNVEzelpGVHc3OWxqK2pRQzNnTEtFV1dK?=
 =?utf-8?B?QUMyOWx6T2tXU3hyWEtHUHVDb1ZUWHhWcVBoUnBWNXJjb0U4UkVmTXprVGhq?=
 =?utf-8?B?UEdZL3c3OEl1TUR0elQrSGFXajdhaUswcUw4SWdDejRsQm9mNHlCbHozODQv?=
 =?utf-8?B?a1NYYkVKZnc0MlVGbE1hU3hlbENRQWtmeGFUN0J6WE40QUVHQ0pudkN1dXBL?=
 =?utf-8?B?MU95QjFXWVNuUTZCQUZrWS9OVUREVFZGekEvSlFVai9wZTVxT3lTczlUWFg0?=
 =?utf-8?B?aTFienVJUEJJWFo5MG1oQ25EZUlBZ0YxclJTVlk5ZHBGODdQS1laMm9TNHkx?=
 =?utf-8?B?YmhhNTlhK3g1cFMxV2ZLNVBoMW04bnJ6VWpmc25zMkJMcCtmUXJZYWNrUUtr?=
 =?utf-8?B?RENhUVpEeXpwZG14UGpXNGVNVklITjY0ay96VTFVaEVHN0ZZZ2VQMlFtM1Rz?=
 =?utf-8?B?NHROWWJkOUN0MFRYR2Q5dm1EZldTMWhwS29sY3Bja3k0MENkamUrMEY2MWpI?=
 =?utf-8?B?Y0lZeHFXUzY4VTlnelBJQ1FXRGNxbndGNFYvY0NvWEwrQUl5MXJoa2hTb0lF?=
 =?utf-8?B?aVdXVEN1TWhqM1QzbmhtNk0reWR3RUNkRUMyUUhRV2VSbEErN1Yxd1BReU5M?=
 =?utf-8?B?S3I3VFQ0ZWtaSVdPaERGcXFMK2pNT2FxZ0FRRExyK2dpT1ZyUGI3MEF6NFJF?=
 =?utf-8?B?Y1QxbWpRbDdPaC9sUWFZamxQQlhaSk94RGI3M2k0ZVVZakJWS1o4ZStZaDlh?=
 =?utf-8?B?TTBVNndLZEkwanMwdTQ5S016WmxZYnpZNEtPV1ZyS3NTRnNLZjRFUEh0ZmRx?=
 =?utf-8?B?MkpDNUdnSW5HWVRuTDFWZ1RZZWRub24wanIycyt1b3lDNUNyRDVla3lvQnoz?=
 =?utf-8?B?dUlJeTFoNzRZWDE2WC9HQlBlS2FYdGpRSGUzUzhSMnE0VjFtYTBpTnBYRk9N?=
 =?utf-8?B?UjM5aWwxNStGRVBnbFF5V1lLbUp0akx6aVBNTzU5NXhFWmVmZnVTNWNvZXJW?=
 =?utf-8?B?UHBSYVB6WTEwM1J2N25RUFRTekR0YTNJOWRtYzZlRGlRaW4wcVZzaW9wSjcw?=
 =?utf-8?B?aW1uNm1oaVJUN0NoYjBJVDJmQkVjYk5CcFd3RVhwaUwxbVNQd0RGT0MwYTJK?=
 =?utf-8?B?OWZxNjljeU80N0hvVnMxMUxselhpK0IzOWcxS2ZKemVBQ2x6WjFnTG9tejB6?=
 =?utf-8?B?cTVBZGJ6ZFdGK2ptMUZPK2VmdW5xbmpPMHFUUmFmcWNhUk5UdDZTTWwxRC9S?=
 =?utf-8?B?Q0RTczVWYzdxN2t4WktMM3ptZlB0Z0pDNjVabGZiLytyUlZkaTh6TzA0NC9C?=
 =?utf-8?B?UDlySDFreDk2dlZlTGNORnF4bjJLV0RmcVFqNjRiK0lmSjRPSDZTV0o2T2F5?=
 =?utf-8?B?T1dJbmZlczJONFhmV3FIY0RHbjArNys1aUc3VzU5TlBlL25LNEovZmtmUVlj?=
 =?utf-8?B?N0xOblFUZDdtZ2NPeHcwTmFMdkczbVZFNVdjNjZkNW5mTlVYcmlEOUdsNUQ1?=
 =?utf-8?Q?YfeaeUU2Y9k8S05Nl9Z1x2CNB?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: f900cd67-681f-416c-8efa-08dbd06f51c5
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Oct 2023 06:47:53.5993
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: jcuHiaQmi9DD8tdfmvFCaSNlnnRGzjJKQ/Jc7APQj8A/bYu6gwgcYi/Lt71fYkut4U3P6KJE+MV+MPyTAcxY2A==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU2PR04MB9178

On 18.10.2023 23:31, Stefano Stabellini wrote:
> On Wed, 17 Oct 2023, Jan Beulich wrote:
>>
>> On 14.10.2023 01:06, Stefano Stabellini wrote:
>>> From: George Dunlap <george.dunlap@cloud.com>
>>>
>>> Commit fc2b57c9a ("xenstored: send an evtchn notification on
>>> introduce_domain") introduced the sending of an event channel to the
>>> guest when first introduced, so that dom0less domains waiting for the
>>> connection would know that xenstore was ready to use.
>>>
>>> Unfortunately, it was introduced in introduce_domain(), which 1) is
>>> called by other functions, where such functionality is unneeded, and
>>> 2) after the main XS_INTRODUCE call, calls domain_conn_reset().  This
>>> introduces a race condition, whereby if xenstored is delayed, a domain
>>> can wake up, send messages to the buffer, only to have them deleted by
>>> xenstore before finishing its processing of the XS_INTRODUCE message.
>>>
>>> Move the connect-and-notfy call into do_introduce() instead, after the
>>> domain_conn_rest(); predicated on the state being in the
>>> XENSTORE_RECONNECT state.
>>>
>>> (We don't need to check for "restoring", since that value is always
>>> passed as "false" from do_domain_introduce()).
>>>
>>> Also take the opportunity to add a missing wmb barrier after resetting
>>> the indexes of the ring in domain_conn_reset.
>>>
>>> This change will also remove an extra event channel notification for
>>> dom0 (because the notification is now done by do_introduce which is not
>>> called for dom0.) The extra dom0 event channel notification was only
>>> introduced by fc2b57c9a and was never present before. It is not needed
>>> because dom0 is the one to tell xenstored the connection parameters, so
>>> dom0 has to know that the ring page is setup correctly by the time
>>> xenstored starts looking at it. It is dom0 that performs the ring page
>>> init.
>>>
>>> Signed-off-by: George Dunlap <george.dunlap@cloud.com>
>>> Signed-off-by: Stefano Stabellini <stefano.stabellini@amd.com>
>>
>> Should this have had a Fixes: tag thus marking it to pick up for
>> backport?
> 
> Sorry this was committed already

That's why I used "have had". I still need an answer to the question
though; your reply only hints towards "yes".

Jan


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 06:50:48 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 06:50:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618904.963190 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtMrl-0008HV-2G; Thu, 19 Oct 2023 06:50:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618904.963190; Thu, 19 Oct 2023 06: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 1qtMrk-0008HO-Ui; Thu, 19 Oct 2023 06:50:44 +0000
Received: by outflank-mailman (input) for mailman id 618904;
 Thu, 19 Oct 2023 06: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=AWKy=GB=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qtMrj-0008HG-4r
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 06:50:43 +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 d1a5def1-6e4b-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 08:50:41 +0200 (CEST)
Received: from DUZPR01CA0198.eurprd01.prod.exchangelabs.com
 (2603:10a6:10:4b6::29) by AS8PR08MB9669.eurprd08.prod.outlook.com
 (2603:10a6:20b:617::8) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.36; Thu, 19 Oct
 2023 06:50:37 +0000
Received: from DBAEUR03FT035.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:4b6:cafe::38) by DUZPR01CA0198.outlook.office365.com
 (2603:10a6:10:4b6::29) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.24 via Frontend
 Transport; Thu, 19 Oct 2023 06:50:37 +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.6907.24 via Frontend Transport; Thu, 19 Oct 2023 06:50:37 +0000
Received: ("Tessian outbound 80b6fe5915e6:v215");
 Thu, 19 Oct 2023 06:50:37 +0000
Received: from afb6420e87eb.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 8044B631-0417-4B15-A58E-D057E0CD070E.1; 
 Thu, 19 Oct 2023 06:50:30 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id afb6420e87eb.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Thu, 19 Oct 2023 06:50:30 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by PAXPR08MB7622.eurprd08.prod.outlook.com (2603:10a6:102:240::5)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.23; Thu, 19 Oct
 2023 06:50:28 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41%4]) with mapi id 15.20.6907.022; Thu, 19 Oct 2023
 06:50: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: d1a5def1-6e4b-11ee-98d5-6d05b1d4d9a1
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=cw6xe0r1s92aBf//64/3zcwoPi4+vK+WGG0omTcQyDU=;
 b=hG5ya5jJZPFO/ROVsl7qW8tvcRmNgPRyVXiF8UDCKGDoDaeHmiKc19rHBnAMcaS1EF4M5VAkp0QNVvqLNZ8qVqOhqNDMyzO9uZyFtq4Jaf30Ma9nKFffXyMY0BPVul/XqH5LQh0a631eEbUhYFIcpxqI4xeSHN/tlfuvVYYJ4q4=
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: efd11cd465f2e542
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=K433CnoVVSnZHD00PLgFwj4SYPQhRZKhNN/C/RPKjGRd/BjOIvOzBhMW9QOW8Nb4ryAI/BIyC6vO1kFRyU4SPU+fweJO7aN3Gkn75mkhZibD96t/2Yz67+HRHDOj52B+yyGF4FI9tMb5a48AlHCo8+NVsgOysGVA+ODszv8huuT5wy+C0+UOgOcGiUfYxA+2L+3N7VJE/BgkQ1Dj988yncQ0FSpK1Rlpn3C3s7OhTMvs0qEGJk5kuDdT7SJaPSvimy5Bvp+7DGqlBEPm3EfbnMt/puNPX5qLiRF/wkbFbgKPZ0mTSUCtSLA3ZTa/lbs54XZ2lrUulfEcqirKtQFwGQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=cw6xe0r1s92aBf//64/3zcwoPi4+vK+WGG0omTcQyDU=;
 b=eTKMU6cQqiFjl4vXpzXhuf5pwCVMMcPaOSOazpgHc11SVIz34ZHpEOdVL0Ovm1TTwtwV2g3onzxvJrSHAZBauZPayhDqd8iYwdzwzvZ0DFy7TUAI6/mVTAtiACccbUoK0PZycP0m5AlnFXYe3ZQ5u5fJ7MF3uhHYcyzxTv2862vbvoluSYqpxmVyyw9TvlOOf+RLKgRSSBeoUwSRiogqICr4LsQUUu4VaFqfa4wKjeGvJ38BQYSQmXMTuOTUHJwyWySEASaA/Ct3LDmPe3egVVAhrTMbSF1/ruAJy1oLdvVdKiFeleKg8x3rcP5cuEC1Vjc1FR3eT+YRqK0NOaO+Wg==
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=cw6xe0r1s92aBf//64/3zcwoPi4+vK+WGG0omTcQyDU=;
 b=hG5ya5jJZPFO/ROVsl7qW8tvcRmNgPRyVXiF8UDCKGDoDaeHmiKc19rHBnAMcaS1EF4M5VAkp0QNVvqLNZ8qVqOhqNDMyzO9uZyFtq4Jaf30Ma9nKFffXyMY0BPVul/XqH5LQh0a631eEbUhYFIcpxqI4xeSHN/tlfuvVYYJ4q4=
From: Henry Wang <Henry.Wang@arm.com>
To: Jan Beulich <jbeulich@suse.com>
CC: Julien Grall <julien@xen.org>, "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>, Michal Orzel
	<michal.orzel@amd.com>, Manuel Bouyer <bouyer@antioche.eu.org>
Subject: Re: [PATCH] console: make input work again for pv-shim
Thread-Topic: [PATCH] console: make input work again for pv-shim
Thread-Index: AQHaAdOTgwKy6u3JYkmo1XFC1IQNE7BP1l0AgADS4QCAAAQigA==
Date: Thu, 19 Oct 2023 06:50:27 +0000
Message-ID: <4187FE85-AF9C-4A52-ADF4-495B12C18B84@arm.com>
References: <ed275abf-351f-5237-7e19-a3856f6d4272@suse.com>
 <f2b51b47-fdeb-45a6-92c7-5b21da1855fe@xen.org>
 <0f6a604e-7201-ea2d-cea3-89a3b9b08919@suse.com>
In-Reply-To: <0f6a604e-7201-ea2d-cea3-89a3b9b08919@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_|PAXPR08MB7622:EE_|DBAEUR03FT035:EE_|AS8PR08MB9669:EE_
X-MS-Office365-Filtering-Correlation-Id: 60cbda1d-fad8-4ce7-0e01-08dbd06fb365
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:
 YVhrP5g8BjzagPLHV7XIjnXmeuouZs94OgbXYjpqUh9NEJkhrp7I39FGTB7FGP5/PCO15pw1YwOaGNfKwt+M1wi9jIsA4rSsyRas0/+oR2A0EGs0OOcokOiAky8LzLiZF69sL1ikPXZI7K75R/BgQkZ+RDyNqKT8Sus9VnK0hJDuWakctVTP079iijAOA8mR1clhGkAZZBIKKpD4egCORUrb6g2nEalQZpNMrjxwLlMRaeT71h5SNQoAXOvze8hIIW005mlhz/u/VBOEYCcInyAUdcP+fYXW3Q4CLpKoJmx9YRFiKxmMh9A42eYsDmE5RN8kOTZqxUsXcToYcDPoRgX/76I5+5+ZzafTrgzLpawtUdt2kDLHQ21WNZBTthlNNiJ2NOVFnrizSFfgQtDT1i2lxLqOeSBB3XgZu8xNwN9c6raeJYaotvmHXV82THREeXkJ3XpIRiQjTWllCaaAVUY5XKXGVQ+3kOHOGpNHOJvKeFt2ZwIHqBaVpoN5hxW0xlli9bBpoTHodWf6yLLV8oCWbK1U4s5wCKFnxdNX+St0caimw1Y0mp8j3pgRgp61hTAOdtY2h7Beym4MKjISUGSfb4NlmkVdb9JfMlKvDGtkdxFMp0vZzs7aFRblsxB8BhEcMaBUehbB3SARV4PFzQ==
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)(376002)(396003)(39860400002)(230922051799003)(451199024)(186009)(64100799003)(1800799009)(83380400001)(38100700002)(4744005)(91956017)(2616005)(122000001)(36756003)(38070700005)(6512007)(316002)(66476007)(66556008)(41300700001)(6916009)(66946007)(86362001)(54906003)(76116006)(64756008)(5660300002)(8936002)(6506007)(4326008)(8676002)(2906002)(478600001)(53546011)(71200400001)(33656002)(6486002)(66446008)(26005)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <1733BEA36E131846B88D399A061AAD03@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR08MB7622
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:
	8348240d-9f28-43c4-c30e-08dbd06fadc7
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	ccfOYJSY7qeuVCJX6qVgmuMXyiGo5KlDn3N81c+s5OzRDmxJ4WmBjz6JyS/cLuEMfx8uHXv3MtzolUJ34KIrnufq6ZlF5seNKvUmur8aX9NADnyk3kWMrmhgCumlGFtuOASOml90EA6uh7mszSNvuXQMH3lKk1dARIwAr13Go9Zec53FUjgf24eymQbK3yQEkY+6QS/Vy02KNzSzKvCWG36Rh/UV9SdrkrJSHYVvR0eDlP/iSGswDZokkNYDkjsZa9zwUiCC6GvVAHOeas3nD2e5VSf9kXMaviL8KInPQpOU0qAgY1+IGZkdo0npv4yXX+4wMN4Rsw0PWgZK01TVagM/zz1EX8sPBgjcH+0yX8QdAK9OAefI03lQp9l8tFStM1Si+j92lbzKoy7DgbNaRNhAqAqyfdNR4y+KGwl2/Zis/aBO9lH1RBXeWBu0VZpGQ3iiMaPhzF5cjwkL97Q26Ke/ICI452xtOTplMn/sW+dQl/nxM3uCWZvgfDX65ehrM16+F2DMUtGl8syIeyMRDhknnmL4RD4DN5eDyTJWxECW91k+j1LNxuWoYbKNB8sBXFsGxgQC4BbUy5XHzO5l5pXJ/ge4TOieQDklmoz1oQizf2sOgYsKP91orgmgDBNQADuDujwDy85q9uDJAtGBm3bs0i6O4TM0NT9k5Z+6EDp0RVntSHOeJtDp0tsFMTFz3AyJEgPo/B+Uihkv6vb7tCw3Fg/tYq8YTMBQNz+vWkLxUhH86OFMHa0y1Z/qOjIk
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)(186009)(1800799009)(82310400011)(451199024)(64100799003)(40470700004)(46966006)(36840700001)(6862004)(40460700003)(6506007)(316002)(8936002)(26005)(2616005)(36860700001)(6512007)(4744005)(4326008)(8676002)(70586007)(54906003)(83380400001)(70206006)(47076005)(53546011)(2906002)(82740400003)(478600001)(6486002)(41300700001)(81166007)(356005)(5660300002)(40480700001)(33656002)(36756003)(86362001)(336012);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Oct 2023 06:50:37.2592
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 60cbda1d-fad8-4ce7-0e01-08dbd06fb365
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: AS8PR08MB9669

SGkgSmFuLA0KDQo+IE9uIE9jdCAxOSwgMjAyMywgYXQgMTQ6MzUsIEphbiBCZXVsaWNoIDxqYmV1
bGljaEBzdXNlLmNvbT4gd3JvdGU6DQo+IA0KPj4gQWxzbywgc2hvdWxkIHdlIGNvbnNpZGVyIGl0
IGZvciB4ZW4gNC4xOD8gKEkgbm90aWNlIHRoZXJlIGlzIG5vIGZvci00LjE4IA0KPj4gdGFnKS4N
Cj4gDQo+IE9mIGNvdXJzZSB3ZSBzaG91bGQsIGFzIGl0J3MgYSByZWdyZXNzaW9uLiBJIHByb2Jh
Ymx5IHNob3VsZCBoYXZlIGFkZGVkDQo+IHRoZSB0YWcsIGRlc3BpdGUgbXkgZGlzbGlrZSBmb3Ig
c3VjaC4gSW50ZW50aW9uIHdhcyBpbW8gbmV2ZXJ0aGVsZXNzDQo+IGNsZWFyLCBieSBtZSBoYXZp
bmcgQ2MtZWQgSGVucnkuDQoNCkkgdGhpbmsgSeKAmXZlIHByb3ZpZGVkIHRoZSByZWxlYXNlLWFj
ayBmb3IgdGhpcyBwYXRjaCBzbyBwbGVhc2Uga2luZGx5IGNvbW1pdA0KdGhpcyB0byBmaXggdGhl
IHN0YWdpbmcgOikgVGhhbmsgeW91IHZlcnkgbXVjaCENCg0KS2luZCByZWdhcmRzLA0KSGVucnkN
Cg0KPiANCj4gSmFuDQoNCg==


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 06:51:25 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 06:51:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618907.963200 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtMsM-0000Sg-Dn; Thu, 19 Oct 2023 06:51:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618907.963200; Thu, 19 Oct 2023 06:51: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 1qtMsM-0000SZ-B2; Thu, 19 Oct 2023 06:51:22 +0000
Received: by outflank-mailman (input) for mailman id 618907;
 Thu, 19 Oct 2023 06:51: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=g4nO=GB=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qtMsK-0008HG-5c
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 06:51:20 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur05on20601.outbound.protection.outlook.com
 [2a01:111:f400:7d00::601])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id e8084c36-6e4b-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 08:51:19 +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.6886.36; Thu, 19 Oct
 2023 06:51:16 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%7]) with mapi id 15.20.6907.022; Thu, 19 Oct 2023
 06:51: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: e8084c36-6e4b-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=CWmKUR/sm9I1z2zOOmO279E1vIJdDGA0ooLifOldxsZqPyNjoEP//4cs0ZAGf5YKogZeQQmaXQzzG9hwipub/pId+H3UFXrYqt0ynCc7Sm4nwNLwxBBsA5Lx2jggDSjoe3EUFQ6AHjiQQ698hQdeWczTin5VZWa+JtA2P1f5sA9z/iABh5hhRZydxSzBVC5O0l8YjE4IL0WlsIy5h8PLqHR2wX0/HdVLnt+kVH/LcbNs2XUwCG4muhlkmKIeO3LXNUx0RtHRzEhrIdIJkZKUw8DwWqUIZnCaqm92IOzJUHIEccmQH9rpD2yOCE9s3eEk7G95RcWFSGUuN/fphzMjyQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=M77kAykSluPJeB0j8DujzaPjPARTR3AtbcxL54JzOds=;
 b=AX++vIoQqt2vFpinBr+VVpLERf9wiB5pmEmK+Hl24bQfMKYd2chzFKGeit3w33zyuoamuRdxLSJsajO9PUmtc3FgR+d/Dkwq9AjmIEdMmuQVsEEIzsiLRCTFiNZDSoAq3UbaSVgdKLzh8jAE4h7C3lCEMLgAD8PeCulEZMZWHT2XIIN7i6Ke4eSMnYGiP8i3nCPSWnDU6qAyygVkXB0ZMCTswEEBPGm0oxczJ2Vkig3RgS21f8GMBs/w/tiKgq+TGyNJ4P0+NoXAXhBUVjFe2Fz8dj/RjHXXQR31jdRYfKhspPbuW5WXoeCFWQYpAGHaA2qf3ma4D89SeCkDqACriw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=M77kAykSluPJeB0j8DujzaPjPARTR3AtbcxL54JzOds=;
 b=PFJnmFZiIEfMIAkPWQdCcz+NQncfHCh6mk4c0TgZYH5OpW8AbSTctcW/L+FHruiDAzpOq0rpzCzDBjukUvSUBGueYGDBkL8kbVEzWuXjR5Q+WSUgG99aB+ZN5fKGqyO3szJFmSYg+GSYs/mSAHtpgxQOMD4XbH7BTKUQqekZUGXRxhohWZaDI2qwItL++DPjn77ck5x3jSwM80ZY7dFU1XD94Am0dtMpOndXarXxSE/JdmndJBWrfkerQztDqBtPWVP31Up0VwmTBQ8r3hCZ8jz4r/cU4IIv0keIJgv9ounW77xLyKKUpt1pmd4Hg/RDosz5Op0AwHX9tM0lrEERdg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <e642bc2a-cefa-4ee4-6394-3c10102e8164@suse.com>
Date: Thu, 19 Oct 2023 08:51:13 +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: Stefano Stabellini <sstabellini@kernel.org>
Cc: Simone Ballarin <simone.ballarin@bugseng.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
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>
 <725f5193-c8d3-1bc8-cd62-2a2b1b5ecc01@suse.com>
 <alpine.DEB.2.22.394.2310171709310.965337@ubuntu-linux-20-04-desktop>
 <ead797ed-84cc-fb70-5259-7e11211d049e@suse.com>
 <alpine.DEB.2.22.394.2310181739270.965337@ubuntu-linux-20-04-desktop>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <alpine.DEB.2.22.394.2310181739270.965337@ubuntu-linux-20-04-desktop>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0180.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:b7::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_|AS1PR04MB9405:EE_
X-MS-Office365-Filtering-Correlation-Id: 24c44723-e2d6-4c85-49fc-08dbd06fcaac
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	8K5bi+SOFp2XSh/74+nIDaF5T7xs7kFSJZyGzVp8rD7zJQbC/CZKeA7vRzkmHmw9mbs2Imq5MeLJAD5ulJzLEbhG/E4ToSiS552IBHzFsknmys/epcHSMukqfAqky6bqsDovjXTQ7zj3TYygWo8gQxhRfAZweXN7iUo7rTyDZpTmiMOWt7QVeJYAFRQtLUh2qFjNHrMFvSlgo18WXe+K01fjDqNfxiRolPW0c6cVDZZKxugfC34aNdHirnToXvaDL4yD+V1pV2+20AERc9InzO6eWRQ3bf8qqmYOHXdBbkvjnUd5hLTkm04QG3Co53kp9bOTiYElt+SaxnXgUbhIA2okD359tGNqRSvYD3gINOJgul1S2lRI1EX8hhDjtBPFB68mONfUS3TZmhXMaqvakWIvGoiPdVDDzKa53FQ2YoxUYEMWG/mEM20J3LpYGkN8jmQbALDkjyEKlL38GexEU5PewDuY0ssHbBtWBdyyHpsPWxXWuVXb/iF9pJKDdvmwEnR088qxkpIlIgAnWE27dglSQt3nS+/82/DwkTg7jGyJBZwu3fTsQ6+PneQT1hhKb6Qa+z5AkERrQba624uR5PZ9OE/s/YowpwOmShnYkQhxqK52qABu4tWml/9/SfxjK5ToIVHbzQFy8wOJlfir7g==
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)(346002)(366004)(39860400002)(230922051799003)(64100799003)(1800799009)(186009)(451199024)(6506007)(86362001)(31696002)(478600001)(26005)(6486002)(53546011)(2616005)(6512007)(8676002)(8936002)(4326008)(5660300002)(2906002)(7416002)(6666004)(6916009)(66476007)(316002)(66899024)(41300700001)(36756003)(54906003)(83380400001)(66556008)(66946007)(38100700002)(31686004)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?RkVZUE9HdnFGR3BLR3Ewa29IN3UxbXIrZ04vNG56d0Q5YmtJRkRGZDEvZDR4?=
 =?utf-8?B?STkva0tsdUtpem4zVHhuU1ZaWkdXOVEwRmFWZGFwWk9vN1o1S013OUhTZmhw?=
 =?utf-8?B?Y1RuQ2lVUmJqcmRFZ05Ia1lWbnlnWmIzaEd4c2FWYTdzcHhOQVBIYXJ5K1pR?=
 =?utf-8?B?T2l2KzMvcGlTVGJGUEVtU2NBUjFNUnVwVFhqc2Qyang4RFJ3T3FVMXd1M0li?=
 =?utf-8?B?RUdNK1ppd2FvT1hHeFdkSjBwQUhmcURWVE5JYTZJbTEyMk5KYzJ6SWdITFl2?=
 =?utf-8?B?SFRROHU2V210eEJZTm16dVQvdm05b0F6dEI5QkE0MHdiNkIzVGc2VDJTRTV3?=
 =?utf-8?B?MllZcUQxOStlOTMzM0NIQnlQNHdwUEt5bDZUK0NWTWFYMGl2Vllxdnlsamtu?=
 =?utf-8?B?Zi92NlpZd0xkVDRmNDZBUDdSaWpTUmh3NlJaVnljVWE2ZkRNZ0YzWHBEci9w?=
 =?utf-8?B?QUY2Q29Fd3I4dE1IYW9nSVFMK1N6ZTdnYWMvaHZHdGpnT2ltS0pEdXUyaU9i?=
 =?utf-8?B?MGpzbjVGSktpdENIM1h0Q3c5Z0E0L0NUblJqUjkreHc0V3FPRlV2dGRxTkh6?=
 =?utf-8?B?L0pYRTU4WFNGRll3NkhwK0VrbVlzQnplRDZZcmFudm5ST1VWMlZTTDh5UCtW?=
 =?utf-8?B?NVpVbkRuYThFN0lXNnRNS3c3U2dHMkdSbXozYnFhUjZPTE5TQmZKZzBpTTJy?=
 =?utf-8?B?cWd3bHRCK1FGRDVSemdDMmY5OGRSUi82Uis5aFhYSmZPcVZlWkl6VmRXZmgz?=
 =?utf-8?B?TjV3dkV5Mzc4TmhCSEVTbnNWalpxMXVOUml5QnY1eTNOVzR5VHNQYkNBd2Y3?=
 =?utf-8?B?aitDQWtvMmRlbmFyamJnU0RadWE4bHZIRUlZMno0TWhNNnQ1aG1YM1R0ajI4?=
 =?utf-8?B?cFk0NWkzaFlpbWdMOG95d2ZCTTVyV1lZY0p3NUZGVnU1N1B1OHQ5SG1LY3BS?=
 =?utf-8?B?bzllRVl4NnA2bFhFd2E0VnRaM3JPTEVibFl5OXdQU01LSy9DV0R6YkgydUZP?=
 =?utf-8?B?VXVNSlEzQUFzay9HNDRGdXlpQkVMUjVXa21BcUJjcmVDMCtVZUdrcnVUVURH?=
 =?utf-8?B?bjU0YjY1Mk1xU0JHekkxWUsveG5SMkhpeFFjWlJMOEpVNHFjLzVQT1J0cGFq?=
 =?utf-8?B?K0JHenJZVExDREJNd3RQZ2tPRUVCbHpDQitUTTNONVJhNUZJYnFkdjRlVkR2?=
 =?utf-8?B?K3drL0ZMbHdCbzU3eFhRUm40M3VlR2lZcXpIdmJaQmRFM1FoT01mN0RFSmdE?=
 =?utf-8?B?cmRaenhFQXljZ0IrUjBVdEZnOVlLQ29KQjdXM0dWelhJWmRrOUcwN3djN2h1?=
 =?utf-8?B?OU93NG1xMEY2eXNkWDBtMmY5ZHM0NDFPRXNuUlhOb3dXVEpmSFVjN0NPc3FL?=
 =?utf-8?B?RFl5UUFvNEtSeVNjWkJpMTZCSndyTVM2cDNpTFEzVVBKMjIyeDF1S2ZuYWRt?=
 =?utf-8?B?QXZFd1FoaGM3VVdJcEk0ZXhHY080VjVRVmRaeDZTaFB6S2R4VXJaNmUwRk5t?=
 =?utf-8?B?SDA4RlpxWGxWK3FsS2V2YlI5VnV4M1FzWGk2a2llU3B6WHNrL1M4QWtVRVBX?=
 =?utf-8?B?ekdSS0Q5YzhCUndnTEJoUlcyb3pwN0hveTdZSzhodmpNTTBXR2hTZGlvTkI5?=
 =?utf-8?B?UU10ZDBXYTd2bkZYc3A5SzZseEtTOVJQaHFIWHpNeUFBakVZaEFxWDVRUmw1?=
 =?utf-8?B?M3V0MG81WWxseE9MMXo3RlVOeWtkc2JyT0txRlNjLzNJSk5iRmtSb0RST0hG?=
 =?utf-8?B?bDU4MkF2d1ZuVTRKNUxYMHltbWdLckNMVEN2UktXWmhieXorTWxvRy9KcXl4?=
 =?utf-8?B?NHlKcWlSWE1Tb2RXME1IdlVhRXh2M1NESmdiOGF0blhNbWN6aDBMc2wzaTh3?=
 =?utf-8?B?WGNWeGswNzh3SHk2NHpuelhOQzk3WVczVVEyUUJzTnRuTDJHUG9rYXRSUG9y?=
 =?utf-8?B?TmZoT0hTdml2LzYyWEcvc0c1eHBTWlJMMWh5bFpPdHdqblAwT01HUkIrYzVG?=
 =?utf-8?B?cTJ2VjY1OHRmeVUwNkVkVTk1YkloSlJsWGM4QTBGN0trc1NIU1BXTll3VURN?=
 =?utf-8?B?eEtSN1ZwNlUwVXVxdFZNSDRyZ201Z0lKdXYvQ3MvckZCazBxRVlreWwwcDRk?=
 =?utf-8?Q?e9lFYiEIi++7wdInUjJ3ukL2C?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 24c44723-e2d6-4c85-49fc-08dbd06fcaac
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Oct 2023 06:51:16.5828
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: tYXVae416RizMerhGdWyvvmP8uGp/RXtambyjjtUWfPQoHE6fN4uNmif+IXBTewCu9EKx3bckyliTdSVoYqCaw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS1PR04MB9405

On 19.10.2023 02:44, Stefano Stabellini wrote:
> On Wed, 18 Oct 2023, Jan Beulich wrote:
>> On 18.10.2023 02:48, Stefano Stabellini wrote:
>>> On Mon, 16 Oct 2023, Jan Beulich wrote:
>>>> On 29.09.2023 00:24, Stefano Stabellini wrote:
>>>>> 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:
>>>>
>>>> ... "least resistance" won't gain us much, as hardly any guards don't
>>>> start with an underscore.
>>>>
>>>>> - 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__ ?
>>>>
>>>> There are no headers in xen/include/. For (e.g.) xen/include/xen/ we
>>>> may go with XEN_BLAH_H; whether ASM prefixes are needed I'm not sure;
>>>> we could go with just ARM_BLAH_H and X86_BLAH_H?
>>>>
>>>> The primary question though is (imo) how to deal with private headers,
>>>> such that the risk of name collisions is as small as possible.
>>>
>>> Looking at concrete examples under xen/include/xen:
>>> xen/include/xen/mm.h __XEN_MM_H__
>>> xen/include/xen/dm.h __XEN_DM_H__
>>> xen/include/xen/hypfs.h __XEN_HYPFS_H__
>>>
>>> So I think we should do for consistency:
>>> xen/include/xen/blah.h __XEN_BLAH_H__
>>>
>>> Even if we know the leading underscore are undesirable, in this case I
>>> would prefer consistency.
>>
>> I'm kind of okay with that. FTAOD - here and below you mean to make this
>> one explicit first exception from the "no new leading underscores" goal,
>> for newly added headers?
> 
> Yes. The reason is for consistency with the existing header files.
> 
> 
>>> On the other hand looking at ARM examples:
>>> xen/arch/arm/include/asm/traps.h __ASM_ARM_TRAPS__
>>> xen/arch/arm/include/asm/time.h __ARM_TIME_H__
>>> xen/arch/arm/include/asm/sysregs.h __ASM_ARM_SYSREGS_H
>>> xen/arch/arm/include/asm/io.h _ASM_IO_H
>>>
>>> And also looking at x86 examples:
>>> xen/arch/x86/include/asm/paging.h _XEN_PAGING_H
>>> xen/arch/x86/include/asm/p2m.h _XEN_ASM_X86_P2M_H
>>> xen/arch/x86/include/asm/io.h _ASM_IO_H
>>>
>>> Thet are very inconsistent.
>>>
>>>
>>> So for ARM and X86 headers I think we are free to pick anything we want,
>>> including your suggested ARM_BLAH_H and X86_BLAH_H. Those are fine by
>>> me.
>>
>> To be honest, I'd prefer a global underlying pattern, i.e. if common
>> headers are "fine" to use leading underscores for guards, arch header
>> should, too.
> 
> I am OK with that too. We could go with:
> __ASM_ARM_BLAH_H__
> __ASM_X86_BLAH_H__
> 
> I used "ASM" to make it easier to differentiate with the private headers
> below. Also the version without "ASM" would work but it would only
> differ with the private headers in terms of leading underscores. I
> thought that also having "ASM" would help readability and help avoid
> confusion.
> 
> 
>>> For private headers such as:
>>> xen/arch/arm/vuart.h __ARCH_ARM_VUART_H__
>>> xen/arch/arm/decode.h __ARCH_ARM_DECODE_H_
>>> xen/arch/x86/mm/p2m.h __ARCH_MM_P2M_H__
>>> xen/arch/x86/hvm/viridian/private.h X86_HVM_VIRIDIAN_PRIVATE_H
>>>
>>> More similar but still inconsistent. I would go with ARCH_ARM_BLAH_H and
>>> ARCH_X86_BLAH_H for new headers.
>>
>> I'm afraid I don't like this, as deeper paths would lead to unwieldy
>> guard names. If we continue to use double-underscore prefixed names
>> in common and arch headers, why don't we demand no leading underscores
>> and no path-derived prefixes in private headers? That'll avoid any
>> collisions between the two groups.
> 
> OK, so for private headers:
> 
> ARM_BLAH_H
> X86_BLAH_H
> 
> What that work for you?

What are the ARM_ and X86_ prefixes supposed to indicate here? Or to ask
differently, how would you see e.g. common/decompress.h's guard named?

Jan


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 06:54:11 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 06:54:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618910.963209 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtMv2-0001c3-Ri; Thu, 19 Oct 2023 06:54:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618910.963209; Thu, 19 Oct 2023 06:54: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 1qtMv2-0001bw-Oj; Thu, 19 Oct 2023 06:54:08 +0000
Received: by outflank-mailman (input) for mailman id 618910;
 Thu, 19 Oct 2023 06:54: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=g4nO=GB=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qtMv2-0001bq-BG
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 06:54:08 +0000
Received: from EUR03-AM7-obe.outbound.protection.outlook.com
 (mail-am7eur03on20610.outbound.protection.outlook.com
 [2a01:111:f400:7eaf::610])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 4bba2d38-6e4c-11ee-9b0e-b553b5be7939;
 Thu, 19 Oct 2023 08:54:06 +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.6886.36; Thu, 19 Oct
 2023 06:54:04 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%7]) with mapi id 15.20.6907.022; Thu, 19 Oct 2023
 06:54: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: 4bba2d38-6e4c-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=RL1KCdA4yS9vgJcgFcxUTdmcABKKnZGFw3P50iXdAekmQA0Jut5QGa1fC3OYoE40I1Cg5tpwEKIUlncE32BzfPXdHUmWvvV4ehsQ5gQ+DIUgaQd5hx5oAoOBMTUiPYNEMcwrFZNWsCeqVO6+698WImctzgoz/5SV+LcNcTqVxKMuyaRTiWcqDMcZOHIkViP2CRWoUz+XSEBMA2sm3ZUrsyQAPNwx66Nk3ssKUd0hHrn4q9MQ4x/X1G1FKZf0TQSoE+br4NjLRzR32qATQ8VLCstbP8NgY8ZLSnqEsfHKeJs571fjL4VevbZeod9OVMgle7Q4Md1/TFCHGl2CxzDUPQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=a8NhRa60bkS4jIzHQs9OrZ7ps371BjrXqvSA4SO6bPc=;
 b=Q/b0IFHScvzAqGOgCPGuxQADh/ORnhUkymtJATgXNcFWs2OLh4CVHyBkErta5NOklvekqvBSAExV/5t1mJ7GXA1F88Mssn2bcYfRKcof+PtLXPFl6UpZVYqv0kw433YFjPF7cJH718ravT5EIFnJsr7h4ppcHxghRt75M4U+3FTEWt/WWduOKD2elLg9cSJ5ZwLsG+v2eeAwLIqNAaqN1OzIIpUIWoET8feWPZN4LIXhAtzG3nWH5DfdoFZGxf9mG5xXNPHr7YVxphOnJJJVCOZqviNgUA6t8y8y1IPY/Ms1uW9OVyfqF49jcoUbowpA9H45xuinRsdiCHPOm9HI2Q==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=a8NhRa60bkS4jIzHQs9OrZ7ps371BjrXqvSA4SO6bPc=;
 b=Ed7iZY554zFu2ihI4+h47YP0pb+ncUMDKeTp7f/+NtYnNTzIC4ZGRiW4pxCzrHeiAEufI3DwuVmkmzNEnoTKJ57vF4frZn8jYhwYHGVcKi2b1yJgqVssYXpzsGWxUxBeV69PDjMy1nr4m9m/9R0y4osATl1gH229StnM2s1C7udRtpShVMtLwDrxTQAnQQHb22QHG2sjzrxz5flvdzGs0Duaq+UMx7IvB/T70M2Y84M8S0eS0trU6phonpBWDFIppCB1zSekyhqurG8QnkQMFuB1KTkCKdgifbYP9nPBVKxNzCppc4NP+9VW7rgLQDyL2s+vkxxpiC5LgJVF4YAdTg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <30e35f13-d2d0-eaf3-9660-c508655b84ce@suse.com>
Date: Thu, 19 Oct 2023 08:54:02 +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] xen/mm: address violations of MISRA C:2012 Rules
 8.2 and 8.3
Content-Language: en-US
To: Stefano Stabellini <sstabellini@kernel.org>
Cc: Federico Serafini <federico.serafini@bugseng.com>,
 consulting@bugseng.com, 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>,
 Shawn Anastasio <sanastasio@raptorengineering.com>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Henry Wang <henry.wang@arm.com>, xen-devel@lists.xenproject.org
References: <eedcfeb8d1c81527b7e18fcc0eca252577f00035.1696344012.git.federico.serafini@bugseng.com>
 <d7cd7a02-b960-384e-4af2-f70b425e5ad1@suse.com>
 <alpine.DEB.2.22.394.2310181543030.965337@ubuntu-linux-20-04-desktop>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <alpine.DEB.2.22.394.2310181543030.965337@ubuntu-linux-20-04-desktop>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
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_|AS1PR04MB9405:EE_
X-MS-Office365-Filtering-Correlation-Id: 42e9b4f9-a1d7-4048-9088-08dbd0702efd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	8tZKVrlDSIA682/grnu2HXpiUrshAOTBSQrNutvtYIq/lfb7J8+yUs6Eu7OuGYDvl0v0Cg15hQtX/IFvBqfF8hMibdkvgh85y0KiF+0lxaXfXHyed3/3IRHLLPjs9RYJ/m4A9Wbxc9pdnmPIbLZFW0kYXGPeSjAj1C/lFnL5kscovRcwAoc8j0BaknzUlqQSJuJGxvZoltofvbS1PfB1qHcyPQdfva3R/O2eJYjmThhQ7ks/rrocksg3tu6rgBSv9O6IcJ50EcAFVVR/K7pJWQ/Cl1kB2bxm+p9rGK5jW1bXmWTtlVqs6bur+rRprptwOVXDzH2HlXQOC5FFDaPnB+SpeQRs06nguvjohcOwcW9MoIy3qNswHqzXHB0bpMchUUXrm2ElpICpK/5J+RepDTqus2cuoV0lILwE71L+1F0t3ipvIWO+U7apToXuj4aKKfESFP7ArPyZmMIeIflRNbbKl4Tgd1oP83EO6nhGC9hLAaf9Y9Ktee8noKVcJBUkQcZP4TFiudl8Vl04QgsJIIuHnQWETuAShSqUGWAKfIz2NBYJKbw8Bhb79QjFKeFtML9c8ttimO2EWc7m/8aSZnmKR1H7IBC1KpY4nR2G50BX0omxLc47iwm4Be8VcvoZE0oVGGGni27I3uJ3gCYvDw==
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)(346002)(366004)(39860400002)(230922051799003)(64100799003)(1800799009)(186009)(451199024)(6506007)(86362001)(31696002)(478600001)(26005)(6486002)(53546011)(2616005)(6512007)(8676002)(8936002)(4326008)(5660300002)(2906002)(7416002)(6916009)(66476007)(316002)(41300700001)(36756003)(54906003)(83380400001)(66556008)(66946007)(38100700002)(31686004)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?S0hobUJ6VGpHZ1M0VDVLNGNaamtvR0xOZytYdnM2dHNaUjhkRUt2RTBPSFY4?=
 =?utf-8?B?c2w0TWJQRzg3NGQ3RWFsRGJ3ZUNnVlNRQVdVa0NFdkJXSFA3d0RHeDJKUGla?=
 =?utf-8?B?SUNYMjUxcXV4SGhNMU8wcjkySXpaWnA0N3pOMElTdEcyUkI2TFh6UXBIQnl6?=
 =?utf-8?B?blVzTlpVNXF4dWw0VDVBK29Td1dMazFIbklZTnAwWkplY3NtbFdtNmhwcVBY?=
 =?utf-8?B?S1BhQ25xU0M2blpIdWg1RnBsU3gvbTNqdnQ0MVhSUmkxRHVsY3NmTTJPNk01?=
 =?utf-8?B?akloV2x2UlRkbGVxMUtDb3dLd1ErVS9pRG1aU0l0NStadHpiaGI3dzFURTR4?=
 =?utf-8?B?RmFlNGMzSjBLY05FSmw0ZDFHMVhxZFpPZmxVYmdCbWd1WVc3NG9vS2w0aDJR?=
 =?utf-8?B?TmFVK1ZZdE94OHp1K1ZJbFJYL2Jvc2d6Qnpoc1pGTHdQb2k5Ull4Y080Y21P?=
 =?utf-8?B?RGNWN1pFM1g4bDYwRmRUK0ZUZUQrck4vOGpQQ0ZuRERjZS83T3RHRGxvM1dG?=
 =?utf-8?B?ejJvZG04TmYyMHZCa3RMN1QwZng1QUdWUE5pR0VMYWh2OHV2cXhSM3dtYVhm?=
 =?utf-8?B?bzd5eUhxNWJZUDVmL1lLZE4rN2VpeXQyTXFqZWp5dFdqeVJKQVNjclI0RXFn?=
 =?utf-8?B?UFoxQ0duUnRYR2ZCUFI1U3RsMzJaRW4rb2tGcCsyOEsvV2NIU1Q3NTh1ckht?=
 =?utf-8?B?RitqbXpBQ1RHUUhrOXlBdjBJWnh3d3Z3eUE5TXB4VjVybUZBUkQvOG80TUY1?=
 =?utf-8?B?WTQwZ0x2b2hNVjFFMk1yQ25NckI0dU5hRUEyWWdDTU5Zc0VrQUxXcDJ0Zk00?=
 =?utf-8?B?d3N0WGE4S2tYbUNXMnB1RXAwcVB4MUF1YXRLWUg0R1lqSUlQSkQ2d2d3UVN5?=
 =?utf-8?B?OHp0UXpkR2o2R25lU0Y1bUx2Y0RZTVpwVisyVC9RekdEWDVnTzlac1lFeUJF?=
 =?utf-8?B?dnU4cW9ZUGJBdGhNaWtCc2JmT0V5Tk1nWTlPUlBSYVphTWY1RUhxOG4wVXBY?=
 =?utf-8?B?U1lmdzA4Sk5PNExsYmQzT1BYaGdCYUNpTkF4K2tKZ2ozSHdJY3hVM2ZCcFhQ?=
 =?utf-8?B?MllZeitja01hdEVDRmNPZUlRWEx5MTkyZnlXQXM2YnN3YnhQUnpKR2RIQkFv?=
 =?utf-8?B?dDQ2eXlHc3ZhNTAxRjRrVU1KMTgzeHhVLzFiZUc5dzBhTUNyb0owaUNYMnBP?=
 =?utf-8?B?QUttakM0bi9ONE5mRGJFWGJoWEhOMzlzMktndms2QUE1ZUVoU1dLc09oS2wv?=
 =?utf-8?B?R3ZqZERoaWRSN1RFZDJzQXFwaGxWVmtmNWd1U0daWC9NVFlodFJyVGNTVkww?=
 =?utf-8?B?UEpNL0Y3RHR1Rno4dm01VFI5dDV0K0Q5RGlDOEJsbk5JUmhSVFROd090aE1v?=
 =?utf-8?B?TTJIa05majFmSmhkbGdSZG96MUVvRzg1NVNMY00zNisxTmFsK1luZlFCS25q?=
 =?utf-8?B?NVBmQVpxLzVoeG9LVVVxeEZ2UVkyczYrcDJ2VTZNNmt3UCtQcG1jU1BudjUv?=
 =?utf-8?B?WEh4UkZYaS95ZkpNWndpSFZZeWowUkhCd1dEN3RYN2ZsS2lJdVdhNUFYRlZC?=
 =?utf-8?B?T1I3ZDdPSkgyUFVaU3ZobUtKaS85Y0xFR2k3bURxcmxEZ2xnS2hGcXhtU05L?=
 =?utf-8?B?WHd6czdaNlN1amdBeU5FemZwOWxtYlp3UWFOYzQ0SGF6WHhubkRrYWpza0NP?=
 =?utf-8?B?VGs4TWtSTlNCZ3JqVWFnVWdKUmo1R3dsWW1vK24rQ0IrcmNVYllPTUJ5eFpB?=
 =?utf-8?B?TVhzVXBEWWF1NjZmNjM0OEN4ZEFua0RTdXhYTEMyZVJmTiswSnZndXFSVyts?=
 =?utf-8?B?K1lmSHYvTHBYYi96VmdjNk5XTWljK0hXTmd4MWNMclN1RFNvMkxDM290VUht?=
 =?utf-8?B?bEJUSEE1UFUwVnV3djBMUWMydHE2YVFjVjZSSVB5dUpXZWVVQ0RUai8yL2p4?=
 =?utf-8?B?QW9nRE1rVzErWEViSmk3MDdCLzF6WU1rSU1XVGI4QXpGQVd4VGNJSU9wQ2tZ?=
 =?utf-8?B?enlxTnMwK3k1L3BYNGp3QXQvQml1ZzQxVTJKdjVmYkhreUNTd1NLQkQ0N0lN?=
 =?utf-8?B?eEJ4eFhTUUNTaUloa0ZOd0M4ZE0zNjR2cXBHWVdzU0RvQVpLYXVCd1ZYSmxz?=
 =?utf-8?Q?awLV/E59zSWukHWRw+rTxw5Cz?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 42e9b4f9-a1d7-4048-9088-08dbd0702efd
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Oct 2023 06:54:04.7416
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 2YpnjLGp9Uam7C5P6m6a9CYJpXlHDdyZP8FgScuYwBIqZ7WNFfN0S+YgwL/aE1zPF6SiTvzY/SwQEafYKtx/nQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS1PR04MB9405

On 19.10.2023 00:43, Stefano Stabellini wrote:
> On Mon, 16 Oct 2023, Jan Beulich wrote:
>> On 03.10.2023 17:24, Federico Serafini wrote:
>>> --- a/xen/arch/x86/mm.c
>>> +++ b/xen/arch/x86/mm.c
>>> @@ -5901,17 +5901,17 @@ int destroy_xen_mappings(unsigned long s, unsigned long e)
>>>   * a problem.
>>>   */
>>>  void init_or_livepatch modify_xen_mappings_lite(
>>> -    unsigned long s, unsigned long e, unsigned int _nf)
>>> +    unsigned long s, unsigned long e, unsigned int nf)
>>>  {
>>> -    unsigned long v = s, fm, nf;
>>> +    unsigned long v = s, fm, flags;
>>
>> While it looks correct, I consider this an unacceptably dangerous
>> change: What if by the time this is to be committed some new use of
>> the local "nf" appears, without resulting in fuzz while applying the
>> patch? Imo this needs doing in two steps: First nf -> flags, then
>> _nf -> nf.
> 
> Wouldn't it be sufficient for the committer to pay special attention
> when committing this patch? We are in code freeze anyway, the rate of
> changes affecting staging is low.

Any kind of risk excludes a patch from being a 4.18 candidate, imo.
That was the case in early RCs already, and is even more so now. Paying
special attention is generally a possibility, yet may I remind you that
committing in general is intended to be a purely mechanical operation?

Jan


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 06:55:58 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 06:55:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618914.963220 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtMwn-0002Sy-8r; Thu, 19 Oct 2023 06:55:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618914.963220; Thu, 19 Oct 2023 06:55: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 1qtMwn-0002Sr-4N; Thu, 19 Oct 2023 06:55:57 +0000
Received: by outflank-mailman (input) for mailman id 618914;
 Thu, 19 Oct 2023 06:55: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=g4nO=GB=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qtMwl-0002Sh-JQ
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 06:55:55 +0000
Received: from EUR03-AM7-obe.outbound.protection.outlook.com
 (mail-am7eur03on20604.outbound.protection.outlook.com
 [2a01:111:f400:7eaf::604])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 8c4d4a60-6e4c-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 08:55:54 +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.6886.36; Thu, 19 Oct
 2023 06:55:52 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%7]) with mapi id 15.20.6907.022; Thu, 19 Oct 2023
 06:55: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: 8c4d4a60-6e4c-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=iJwmPOSaH4dk712KIwHdjh10cWBXMid30YyOKCtYLtzvSkHm0mF88ZBKlEpc2JFrce6hDVlXC0nGdyR/9GdW32uXQsxJ0f2onsi8tXbcioUvzt802BICJONr1WLVjPz+BITQarLqqaXCfjxyK+REmoJ1pc+MeGWLfcYRJKDqgmQ3Trj+MOcSBtJMAlaFxY44ZudVmv69Dw9X5sYpdBn9a1eenkv8OnuNselYbGaCUHCZsxnjIRiyaqmIYAIBG0Q0JDyVDxlK9MYEExeFTjCJc2g3Ei5SucnWsLJdS2Em1L/5s6gePcVpySJXJu2KMypFwBqW1eJDGEfLxbre7ptdsg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=/bhVrLuQPKC+8kpciL3ONqdJ4d3A2oDVyZxZYwtoTOY=;
 b=lWV8vXE9vCcmjN5f9Jl53eTc7WrGG/Ui2q7GjqqeqWCuqs50pqUJ9WeR+ppzTIZCPgmNQ45tU804DoG7pOVra1pMen5goSErP+2w2LLw3/F3PFj5g/uF7u1OQUQvveC/CW1m1GVxfzxu4ik3dv4fUq5FyavsHOb/KcXA6GOgUDEvHUlRPvRHJ3r/4zs9Ta8psIBgb3ZcsZ+kNCF7Et4zUZDN98YoxT0s1rZOF3jLVaNA1xhFOxFvmf/rscDKjbHCMz2xOsXUkPVv/FWyLwr+ue8GjuC3HtdE/7coHTOWpirUFuaQKf49MUryq5KlUrYfIhVI+2EB4686jMBd1ADAvw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=/bhVrLuQPKC+8kpciL3ONqdJ4d3A2oDVyZxZYwtoTOY=;
 b=Pj5CfMD9Bu2AO38TO+BnpmVmIkXMj25LOuCJCG6QcgBMR1YyG+IO5jiq0FbozksrHiPWQ9Uo9WivSx+i7S21gF2AyADpM9XBDqMU6ZPq3SLFdIizzXhcnuRrKu98V59HB3hrxY3BCKMAo9dzgz/qzgLRgn7eDJS+ZLCWC56caRrQeg7+QNXzBJO8w7kyZnkniZ7OkowIpBzFTAGVMKm7T5mQf5fUJ8/IAaHM+CDe58jf3pVCNNM4Patog+HrCBS8VGTZhDokDCoBZFKvei4EZg5JCdq/bgKIwP36NB3Um/5SHip3iRyfFIHdc9BSZ87pa0ulWncQF+1OusqzUzKbiw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <94f59896-5182-c711-98d7-dcecf6073201@suse.com>
Date: Thu, 19 Oct 2023 08:55: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 v2 3/7] x86: add deviation comments for asm-only
 functions
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.cooper3@citrix.com, roger.pau@citrix.com, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <cover.1696833629.git.nicola.vetrini@bugseng.com>
 <6476706490cc15406bcf3377a57b7c4a303c4901.1696833629.git.nicola.vetrini@bugseng.com>
 <741e81bc-050c-a773-e622-997b6c0b8335@suse.com>
 <alpine.DEB.2.22.394.2310161520180.965337@ubuntu-linux-20-04-desktop>
 <dd3534dd-29b0-129d-9f34-b542ed3ffabc@suse.com>
 <alpine.DEB.2.22.394.2310181703170.965337@ubuntu-linux-20-04-desktop>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <alpine.DEB.2.22.394.2310181703170.965337@ubuntu-linux-20-04-desktop>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0028.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:c9::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: dccf94d3-0ed2-40aa-8064-08dbd0706f4f
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	zGdjks5Fv60YCCrAFFG9IWipxIyMvZ2KDBsYsWC0GeK3N0Ecy8QyR8bZQlTSH/JfUHivkhygLxk/RcmSoHA4GdM/Oyu5xfIBJhkaFQT2Fq/LsrzHXqxw5C3gwTQ5gPd0aH6/Yj7NInq5B50UglLtUH6/GJgRViY2XY9menuXqPzsR/n8K7f6FbBLx6WbladOiHYEZkUShkDRLRVXm/SLpRGKBrcQ10hlY9gaShYRud3ObHnFhcnMrDUDpjnDENb9vdL0is9gaVsYwXrJr2ka1ycOYUNmfJjD/QR5ZYuF+zjSifCFB6nHDCMWKTAQCKhSJWSg0xyIxWfnvc8FWKr1yuMUeHrEJMq2wfXN1TwB2uQuWRzPI7L7UsjpDwBmSVH0H7sSWINJqF1nwc0vFhR6ou4+Ex3aJZEGjsVSYa6jNZvisgVeSvMqoRD6lLqRzgW/Z4hkc9eisTorBYCHv6v57VrhBptMMc3LekbTiE/ZJzdRDZtilOZhuDaNQn+ZuY2VMRPflzDY4FH0eQgYF4QRmILDOrPgrlWY5exIpNh84jPitHUpPLxGYX1ke1d/5Kfjh/tw5ntHLnTcya9LLbJeGoCbi2YWxgNWz3gAtfdhn0H/xMK+Uw0Vl2VvY+vhdVT87yNr1B5D06v4Sni8vINRvg==
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)(346002)(366004)(39860400002)(230922051799003)(64100799003)(1800799009)(186009)(451199024)(6506007)(86362001)(31696002)(478600001)(26005)(6486002)(53546011)(2616005)(6512007)(8676002)(8936002)(4326008)(5660300002)(2906002)(7416002)(6916009)(66476007)(316002)(41300700001)(36756003)(54906003)(66556008)(66946007)(38100700002)(31686004)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?d1IvN0hId3MzTDl4WXk1a2hyRTc0bisvUG5qcDZ0UnNOSFJJQVpCQVByYW1Q?=
 =?utf-8?B?czg3ZlBJTk9ibm1Fem1rMlZVZUxJcnFqb0NmelErQ1FNUzdERFltTjQvOXJH?=
 =?utf-8?B?c1A5cXRUMVEzak4xcE9SR05BUnFxYjI2WVppbm5lK2t5QndiUVROMXNDTWtU?=
 =?utf-8?B?b0o0NmZJYVVPbDRrZExHZTBxaWpGR3pqYVZEbTRNdXJZRzExcGlJTjhTUUhr?=
 =?utf-8?B?anhNYjVnbEcxNTEzUWsvZ0N3Q0Ryb1RJTCs2cFNTc1JBSjNJZGdLKzhLeXhV?=
 =?utf-8?B?TEtXcjRCaTFpN2tiU0NsenhOalg1SXc3aklFNFk0KzVIckpPNXVWRHErSU41?=
 =?utf-8?B?L1c5QlFZZnNodXNtVXA0elZUNjhrbDRUNHVsbVViWVhOMEJ4eXFlOWZZUUlt?=
 =?utf-8?B?a0UvUUVlZ1VRaFAyNDRuYmw5eE5iRE9vSFNQc3FNWENMTGJ5QUpkeUJ2Q1N2?=
 =?utf-8?B?Zm1zdEE4TnNyQTRaNFJPS256bm1tVlBHWFB2OWVyMFpWMWJEWGxCQmMrQ1Nz?=
 =?utf-8?B?ZzVpVmllaGllYm41Ni9BdTNnYkVuQnlyVDIzKzZxWDBPbW4zenpPaG81M2tC?=
 =?utf-8?B?SXVsOVc1UGJCT044ejRQdHppZzRLeXlObFdXOU1EYzZaZHp5TmJSeUZPWmVR?=
 =?utf-8?B?aFJwb2x4cm4xNjZCNWJwcndsUnNDdkZqNmVra1c0aVJVT0RNLzhPbVNqRVJk?=
 =?utf-8?B?OVFsMkhXeDNVa2xLbVlKbjBKVFVpdHFLQ21KMXdoQVAzUmJXNHlsT3NodzFu?=
 =?utf-8?B?Q1E4ZEcyOFBUaVh1UnU0c2lWanhpeHZkcUI3TnFWWW43dCs5S1IwaHFIYWRl?=
 =?utf-8?B?aHFQanAvbDlUMFNvVVlnT1hva25pQVN2a3JqOEh6WVRzSm5DWENkZGNDY0NU?=
 =?utf-8?B?TVVCSjJxWXgrUm1FdnEwOFE3Y0xQTUp6dDUwa0xqRDNPak1nTVRXcjAwNSsz?=
 =?utf-8?B?eldTMmpYaGVQeHJpWGs1aFhsazBQdW1MZC82dERBMVdKTERUR0ZMVDBEVFhk?=
 =?utf-8?B?MEl2TGhMZUhHNktTdFRxS04rc2xvVkxqTEJ2T0MzdkxsNDZFVVlkWkd4bDRG?=
 =?utf-8?B?UXpJMk50OHA2eG1vQVlrTklNQjBwNFhSemExRnpBV1lXUjNEWjU2Uk15V1E1?=
 =?utf-8?B?a0VDZjQzWFR0TE5oSk9CUnBmaEF5K2RYSWVRWEd5eStFbVExZmtMbXFhZDVo?=
 =?utf-8?B?d0hHZlpFUDkyV2oyYlhVMDIvdlZScmlxcCtTMWx4ZU5teVkzbjZ0VHEvRDBs?=
 =?utf-8?B?bjYrejNwY0Rzb0dTZnNlRUU1V2drTm41b0ZDV1oyRjZPTVFEdEhTRnVpTzZl?=
 =?utf-8?B?RlorYk9Vd3RaZURUMTdkaUdmd2g0bk1pRGJDWXZNdzNiL20rUlhXMUcxSFhp?=
 =?utf-8?B?ejBDMFhvVEZiUmVHQ3NuODFmWmdRVisrWDVwRW9GaGozQXZ6TzRaVjhLcEwx?=
 =?utf-8?B?K0ZXa0dRRUdKS3RVeVU0M2xUdkdJYmdxSERIR2NtZmtCN1VpVU1hZmNLNFND?=
 =?utf-8?B?T0ZIb2RWdFdqT3Y1MDVMZkRLN1FZWmx1Zk9YOXhYTHFkSDJSTmNPNEpxamJZ?=
 =?utf-8?B?RU5YVkZvNVRkOFowR3pFdDhvblRlTlRicHE1WWZhSFhwS05UcGFXWDFFa3lL?=
 =?utf-8?B?QWFXam9FeXM4elpCdTBISXR1YjYrTzRPQW9JenFqeFV1bDNjaVVYc1NHalIr?=
 =?utf-8?B?ZVZiMVVsUWJTVU45MklWMzBaV2VuWDVWemlFK2hIZk90UHZVdGVBT29pVjl6?=
 =?utf-8?B?N0xFS2lVcGpHZDFUNGlLSWE5ZHB1SkJtOC9JaVUwbUNXSENSeTdGMEpGNm1R?=
 =?utf-8?B?Mi8wZXpkdVR3WkNPRUJsN1lnTUtjYkNhWld6RUxvaXFqWlB3c01tYzc1LzY5?=
 =?utf-8?B?UTlzVmlSR3hNWnc1L1FlQ00rZkM5czdSRll3QmtZWWhaRlJnbUNIZ2Z4dERW?=
 =?utf-8?B?aG13SzI5dHd1Ymh3enNZUElXNWh5VWVoOG1FVTVDU2lONWgrQUxWK1NTY3Ew?=
 =?utf-8?B?ak10eHcwMEw3OHZTRUFhaklQQ1NxZnpiUUh3amVlMngwbzBUVld3eUMxUG1E?=
 =?utf-8?B?Y2RsSm44RmN4TzNTODdhT2dScU5jL2FqbjE1a0d2MUc4aStYVWRKbFJoQm9U?=
 =?utf-8?Q?V5gpEOYucTU33jyydlEIrpyxS?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: dccf94d3-0ed2-40aa-8064-08dbd0706f4f
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Oct 2023 06:55:52.6680
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: nud2QBRqTp4wyistqlfnsRaycKi/+1Itkp6ZdkpZLkyCMbJQJq3W1IpOcCBFWLvjLev/jia/VhWjI4WRGeJfQg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS1PR04MB9405

On 19.10.2023 02:07, Stefano Stabellini wrote:
> On Tue, 17 Oct 2023, Jan Beulich wrote:
>>> Jan, for this specific patch, I don't think we have the scan including
>>> Intel vmx files yet. Nicola please correct me if I am wrong. So Nicola
>>> wouldn't be able to easily expand this patch to also cover Intel vmx
>>> violations of this rule because we don't have the list of violations
>>> affecting those files. 
>>
>> I'm afraid I disagree: There are likely direct VMX counterparts to the SVM
>> items adjusted. No scan is needed to spot those. Anything VMX-only can be
>> left separate, sure.
> 
> Nicola is new to the codebase, so let us help.
> 
> This patch adds deviations for these SVM functions:
> - svm_intr_assist
> - nsvm_vcpu_switch
> - svm_vmenter_helper
> - svm_vmexit_handler
> 
> I take these are the VMX equivalents:
> - vmx_intr_assist
> - nvmx_switch_guest
> - vmx_vmenter_helper
> - vmx_asm_vmexit_handler
> 
> Jan, did I miss anything?

At the first glance - no, I don't think you do.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 07:04:12 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 07:04:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618919.963229 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtN4g-0004F2-4H; Thu, 19 Oct 2023 07:04:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618919.963229; Thu, 19 Oct 2023 07:04: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 1qtN4g-0004Ev-1e; Thu, 19 Oct 2023 07:04:06 +0000
Received: by outflank-mailman (input) for mailman id 618919;
 Thu, 19 Oct 2023 07:04: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=g4nO=GB=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qtN4f-0004Ep-0E
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 07:04:05 +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 afb974f2-6e4d-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 09:04:03 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DU2PR04MB8535.eurprd04.prod.outlook.com (2603:10a6:10:2d6::24)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.9; Thu, 19 Oct
 2023 07:04:01 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%7]) with mapi id 15.20.6907.022; Thu, 19 Oct 2023
 07:04: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: afb974f2-6e4d-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=aR05aOQU1TFEPMK22rBGFVQhzFnUxFIqmdDikYpnbpUbLkC6/xwv58aInW2zO8Hb2nAHlhkeNHegFfIlDRZMJ7A47hpDPARpMbeGGkpSC1m0lrYvLxF+D/pzTQ371GuHJ8lnXa7qhYKeg2NrZYpgBSfeQ5rTaMKI9GJnUh0Ea3LQKA9/FbuFgYVaE80AK/gYZDdJtkoWfVtjTA/TbLqm6j44EjvNfDMHsv8H0IVWDRteAFeu0Zagw1IR3pRKl7fttnzGc0hEXCV16ofKsWXukwEaNSmKJg8JtPvXmyIHSO3vzAwujzcNM4xgZVDIM+u6yFgCqz97/zwfCrWaqBTQmA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=Nm7zzDCNquY95ZThtAd9HyPjgROfnWsn8rVzmO8/BgI=;
 b=mpb4m0ZK8AG2k3Y3deskk83GLFH0+XgzFhWv6cklsrDJcllSl1jQitiTyfBwRbl/dUldYT0+ZRBd4VID53hc4MLDeXuIFILXDZoJFcaU6OtVdd35jV10tQMDL/zPOMmKI1YLcFsXHJWHrZ3eqyU3h/RFZZegcvMUwY5jeClVAW+W/BgCias3vvMPjSYjOqol4yver7XI+5Pr2oFSbe4VF7NJs9V74QYnaQ+2ia4iUc+83YIL148QzIAcSyDt9RVxPdGB2aoCjA/eoz5fOOw57XGQ5a5AHNVZ4tUNdomf7O8zgDwjkxWzXizYYxA2eTnNY1OjwyLMXmftLP0xzLDvqg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=Nm7zzDCNquY95ZThtAd9HyPjgROfnWsn8rVzmO8/BgI=;
 b=0TjvvVfKuyTROhSQn3OElC+a0HY+bJ7DrPL2VXdIYjIDmECYpMNAyca48Rg5bwlolQ1yH8t0roRidJBPPft6fY9AdlOqRnjzunxpgusxoCIMZ4ZQssCcVYX3lHJ9MWSq/caWNo9N4wh6qsQrJXv3WdszBs1Twk1HiTL6xBZbrcp3Kpqn3LKwFneYYepns9aQy4IinnoOem9dos5RTCUKplEB7GEID4vzb0GgSgc6tO40CHWOOSnVE54gCCJIe1WSgQLQT+kHhNZwMSfgiKn3OV7gJyshBPU6PlgIUaPlyFtA9vSsgk3LsSJCDMj5qvOuKgddnw0sgHXvLo8m5N/g0g==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <5b44bf79-24fa-abe3-1759-da1dd5d3e5de@suse.com>
Date: Thu, 19 Oct 2023 09:03:59 +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][for-4.19 v3] xen: address violations of Rule 11.9
Content-Language: en-US
To: Stefano Stabellini <sstabellini@kernel.org>
Cc: 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,
 roger.pau@citrix.com, Simone Ballarin <simone.ballarin@bugseng.com>,
 Doug Goldstein <cardoe@cardoe.com>, George Dunlap
 <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Wei Liu <wl@xen.org>, andrew.cooper3@citrix.com
References: <d760ef0c088dc15ecc411b83640735123444f887.1697636446.git.nicola.vetrini@bugseng.com>
 <35abc556-2f66-4498-b567-87e6a3216d50@citrix.com>
 <alpine.DEB.2.22.394.2310181745300.965337@ubuntu-linux-20-04-desktop>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <alpine.DEB.2.22.394.2310181745300.965337@ubuntu-linux-20-04-desktop>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR4P281CA0072.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:ce::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_|DU2PR04MB8535:EE_
X-MS-Office365-Filtering-Correlation-Id: bfff18f7-2017-4495-be6d-08dbd07192db
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	AFnLhe/E1RVXgER2qd4XXZamaPv3Lxlbc8zbhyQ9T9JcudwdstGHiH3VyMu/r4+TBnO59O1JjatQsYITb9RYLtJJoiSsweqSQOg9sPycu6snZ0mI1yKIuzxd811VKrk/B8gQsaTVUddUdtOdIAC19jZCdPNA369d6yWO0/hNjwJczBR8mLNGny+spf6ctKJq4zDrVjfdUflHTL62CnFYsWtlvn45bk0+OUUemUcFBT2y9d24sjGq789Csr0LoCm/WPiSB6lxDQ7lwI6REhTN78kUFmWq8kud7jq2/QUossd4EoFbx+N6a89ecaXiG1M8ku2J6Er+NOzsZFiPgwuMpSU5qv+51b5F5XmTQ6gnVFFSAyVDgRz5cEjpGGYhBmj6EvSfl5ZNwVxRiQOwHF7++4ypxpP+IExIgUHafDQUXQ8SEu10CmUWSPgaT8ZtMclhiuq7TzBcF9as0qrUD1bjluAVu166v7rQAhVn7u4W5YmorPCqFASdWwZ55HvhBm6QvrY+edmW+oUqx40xauaxJQC8j6JJAQFKkKsO7nbpigKL8dKsPP5hiQR8JF/YZqu5IJ/9KHQq5uMa2oBSal6Sdydpt4efrvyM6avlHi5UQw9u+Fd95T6+FS10GgIyknP4sid7RrwHPbqc3wVGEe0Ozg==
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)(39860400002)(136003)(230922051799003)(186009)(64100799003)(1800799009)(451199024)(2906002)(7416002)(41300700001)(38100700002)(83380400001)(31696002)(86362001)(31686004)(53546011)(6512007)(6506007)(5660300002)(478600001)(26005)(2616005)(6916009)(316002)(4326008)(54906003)(66476007)(66556008)(66946007)(8676002)(8936002)(6486002)(36756003)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?OHJRV0tQZUFBY1o0RjBZZFhwM3I3TzdnRGU5dlhGRjRpbG1HMEJWVnhnK3VL?=
 =?utf-8?B?STlEaEdCdFc0YXNJU2ZRWVMwTk5TM3NHMGl6QjZDeWhvcU9wZ1d2ZXQ1b3du?=
 =?utf-8?B?WU9PblRTK0V5eWprYjhZNU96bFlsZWF4elU4azYweVcvV05xOTVsNk90cUV1?=
 =?utf-8?B?a3d3YURlMEY1cWtQZnVqUUVoaVNNRkh6T2VCNUNtMEJCZmowSEo5dFg3R0Zi?=
 =?utf-8?B?aGZvZG4vRnp1MkFLd1J0M05hVFNYOVNXMjdwMHpuWU0wd1VpMVo2SUR4ZEVD?=
 =?utf-8?B?RVdJc1JFWWs0aC92OXpEMWdMYmZ3Vk1WSDVTQ1pyRnJpUUY2VGE0a0lMR0Nk?=
 =?utf-8?B?TWNHR0pZbHNBUXREZlpKSlkwTTJSTlUxaFpzcmx2L08vN0V2TXpBY3lEWFBw?=
 =?utf-8?B?cGlLVmZoK0lqZlUrVEZrSnhKL2d6bHFhWHVtcU8rbURaRHJvZlJPdFNqMk02?=
 =?utf-8?B?MHVqYXZydnRBOUxrT0FVb3ZzMlpwcDlBanl0ek0zK1R1Q3ZJZy9JeEZXTTVx?=
 =?utf-8?B?S2ZiYmpLdmliQTA2NDBsR1ZFWXRjYStCMENBVTk0eEk5YW41TlpQTUpQREpC?=
 =?utf-8?B?NWgwRzNGYjg0VkxDQmpwTUE5cVdZNldBUm9vR2RjOVBSWlV0MzZqbHdneXFt?=
 =?utf-8?B?RGo1QjVIVnV5VXVJbnpoZ2IzZVFXaGJjdjFHYUJrdWQyeHVrR3VoN1o0UmlR?=
 =?utf-8?B?bklESC90a0QrTDdrZ3JHVnFjR21QTVREbmFiZWwxYjFENUs0dklWK0RGazBK?=
 =?utf-8?B?VWozMWdnMEFTSWw0YnNhbkRyOURXSURjZ291eU4vZnlRUmE4M3krK2d0czU0?=
 =?utf-8?B?SGNPT1BNak1KRUVLTGlXN2V0S2RURFNkN0VKY3JRK3U1YTlpWldRSU1weGJN?=
 =?utf-8?B?M2dHeUhSd3hZTTNHVWhGc2JMVWNmSXV0c0xMVkpwc2psNTBqSDhEV1pzc21I?=
 =?utf-8?B?YTdiNDhqdmU1NFpkRUpRUDVXRTU2clF5Ti9Ma0Q0U1AyYzNLUGVKZUlhamls?=
 =?utf-8?B?TjE1TGY2dlZSd2FYQWtWaks4a1MwV01NaHcvNG1HRWxjaFBlbytGd0FsSkZQ?=
 =?utf-8?B?OHJPUVhPa1RCWEtHdTQ0YThLOVVVbjBIYzg4eDM5MVdITXIvRGFrOE4vbzBo?=
 =?utf-8?B?a0N2a05ZdmtDQjJqVmN6QWxjMUhsOWxWdmNNYkU0ZFNGR1dtdFFGOS82UEtE?=
 =?utf-8?B?Qjd1cjBCeEFvU1RlZlhsdzJOTmtsUkhYVStOT3RNYi9rclRJUDlxcnJMUWU1?=
 =?utf-8?B?SHAyWk1PTHdwQWtSR29rTFpjL253ZC9iVy83amFTeWF1VCtOclZwUkF5OUg1?=
 =?utf-8?B?V0l6Qk1qMTdsY29rYmE3bjNneWhNcFpGR1dyZFBVTE9ybFA5MFFsblBTbFRk?=
 =?utf-8?B?NjFtM082RE9EUmJXVkhJNGFzOUhRVVphd0x4S3A0RDQydjJRa2lVWDVUN2ZQ?=
 =?utf-8?B?QmpmZk16MGh1aTdOOGpUblIyemI0ZEJNenlBTkZ0QVdqcWZrZ0wvNHlDRnZV?=
 =?utf-8?B?eHM5cHJ1d3dQdldtenVlb0ZIZFNrNVk5VVlCTG1SZk5xU0orakVKUUZXdjFX?=
 =?utf-8?B?MldUUzFHOHJlTlRDM01YdWI3MEljVFgzaTNoWTZBcWQzV09Ea2hvMHE0NXNW?=
 =?utf-8?B?cEhzYVVidGdjQURJdlNIZ2RFMmUydVZYNFFYVUZlR2VuY0cwUFFTZWVlUzFs?=
 =?utf-8?B?cTg5YzN6M3UveE54TDU5OHZoYzZOMUovM0VKdDZORGpkY3NkbU1iajVia2pK?=
 =?utf-8?B?dnNKbkVVM1A0WTJnL1AyZXpWZk5BbU5RaXdRQmFCcDJ1Y0xwOHJOd3hDZU9J?=
 =?utf-8?B?WUo3aGRySm13YnYwZWRFbHA2SUtjYkZCODdjTE1pcTRFTGxTaktEVnU0NGs3?=
 =?utf-8?B?U1h5M3dpLzN6bXdqcU5ERWYveFc1amNjUlVtT3Z6L0M1cmhra0RYTFJGZE1U?=
 =?utf-8?B?ODVhWW91NEprblJoSEMzSW1KdzlCemFiSjRzdVY4QmlHSnphbE5SSWVLaGFV?=
 =?utf-8?B?S0RhMmFMZHJWelVnamh4eXJTRi9UME0xOTZwWi8yZHphZ2xUSXRvcFRyWVp1?=
 =?utf-8?B?bVU3UVpVZ2xMeSt4NGJ4d05NNk91UUFIQ2pGMGtJZFZpbzdzOFdZKytkbHZE?=
 =?utf-8?Q?KDQnQ6Y1VlTI9ipCLKNxmO4Gi?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: bfff18f7-2017-4495-be6d-08dbd07192db
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Oct 2023 07:04:01.8081
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: rjVE2wqXAZOohzA2HfsMnt6cAA1pZiXJiAc+dgcavLc2vO4t5xol+YmgtxDKrScr/5IZMP+y/EXDkPjtHp053w==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU2PR04MB8535

On 19.10.2023 02:54, Stefano Stabellini wrote:
> On Thu, 19 Oct 2023, andrew.cooper3@citrix.com wrote:
>> On 18/10/2023 2:42 pm, Nicola Vetrini wrote:
>>> diff --git a/docs/misra/deviations.rst b/docs/misra/deviations.rst
>>> index ee7aed0609d2..1b00e4e3e9b7 100644
>>> --- a/docs/misra/deviations.rst
>>> +++ b/docs/misra/deviations.rst
>>> @@ -199,6 +199,11 @@ Deviations related to MISRA C:2012 Rules:
>>>         See automation/eclair_analysis/deviations.ecl for the full explanation.
>>>       - Tagged as `safe` for ECLAIR.
>>>  
>>> +   * - R11.9
>>> +     - __ACCESS_ONCE uses a 0 as a null pointer constant to check if a type is
>>> +       scalar, therefore its usage for this purpose is allowed.
>>
>> This is still deeply misleading.
>>
>> There is an integer, which happens to be 0 but could be anything, used
>> for a compile time typecheck[1].  In some cases this may be interpreted
>> as a pointer constant, and is permitted for this purpose.
>>
>> ~Andrew
>>
>> [1] I know I wrote scalar typecheck in the comment, but I suspect that
>> what I actually meant was non-compound-type typecheck.
> 
> To help Nicola find the right wording do you have a concrete suggestion
> for the text to use?
> 
> Reading your reply, I am guessing it would be:
> 
> * - R11.9
>   - __ACCESS_ONCE uses an integer, which happens to be zero, as a
>     non-compound-type typecheck. The typecheck uses a cast. The usage of
>     zero or other integers for this purpose is allowed.

"non-compound" isn't correct either: __int128_t, for example, isn't a
compound type but may not be used with ACCESS_ONCE(). Furthermore
certain compound types are, as indicated earlier, in principle okay
to use with ACCESS_ONCE(). Both are shortcomings of the present
implementation, which imo shouldn't propagate into this document. I'd
say just "as a compile time check".

Jan


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 07:16:18 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 07:16:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618922.963240 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtNGJ-00073V-9b; Thu, 19 Oct 2023 07:16:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618922.963240; Thu, 19 Oct 2023 07:16: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 1qtNGJ-00073O-44; Thu, 19 Oct 2023 07:16:07 +0000
Received: by outflank-mailman (input) for mailman id 618922;
 Thu, 19 Oct 2023 07:16: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 1qtNGI-00073E-PY; Thu, 19 Oct 2023 07:16: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 1qtNGI-0007Nr-Mp; Thu, 19 Oct 2023 07:16: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 1qtNGI-0001Mj-7h; Thu, 19 Oct 2023 07:16:06 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qtNGI-0004Qo-7C; Thu, 19 Oct 2023 07:16: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=DbG64TV5KxLZE07wec+wjhvhPO1vxPiova2uqeLZjAM=; b=YqBbQdFIF330Sz6vA5YlTLjv8E
	NIHtjiICLbvqyJ3BGDNVxbaItyj9r/QPzXhe5wVAYCffBDoTA2u9SOL4SJhqGRWVee05fGwRhd7ZG
	AYXO4ZaRVTuVeheXoZipE2vK0kNTG52JSzWRJpN83cs/fUz/olGCtMCeHR1SZnCK84yE=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183421-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 183421: tolerable FAIL - PUSHED
X-Osstest-Failures:
    xen-unstable:test-armhf-armhf-xl-credit1:guest-start/debian.repeat:fail:heisenbug
    xen-unstable:test-armhf-armhf-libvirt-qcow2:guest-start:fail:heisenbug
    xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:windows-install:fail:heisenbug
    xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2: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-amd64-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-i386-xl-qemuu-ws16-amd64:guest-stop: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-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:saverestore-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-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-amd64-libvirt-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-arndale:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale: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-libvirt:migrate-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-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=7c3616e6f1aa541884410c6430e3c8986cf0973c
X-Osstest-Versions-That:
    xen=f51c92383b8dc76233481e2814aa2e905fb9b501
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 19 Oct 2023 07:16:06 +0000

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

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-armhf-armhf-xl-credit1 18 guest-start/debian.repeat fail pass in 183423-retest
 test-armhf-armhf-libvirt-qcow2 13 guest-start       fail pass in 183423-retest
 test-amd64-amd64-xl-qemuu-win7-amd64 12 windows-install fail pass in 183423-retest

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail in 183423 like 183408
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop  fail in 183423 like 183408
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail in 183423 never pass
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183408
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183408
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 183408
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183408
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183408
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183408
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 183408
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183408
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 183408
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 183408
 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-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          16 saverestore-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-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-amd64-libvirt-xsm 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-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-libvirt     15 migrate-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-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                  7c3616e6f1aa541884410c6430e3c8986cf0973c
baseline version:
 xen                  f51c92383b8dc76233481e2814aa2e905fb9b501

Last test of basis   183408  2023-10-18 05:18:08 Z    1 days
Testing same since   183421  2023-10-18 22:07:03 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Alejandro Vallejo <alejandro.vallejo@cloud.com>
  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-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                                    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


Pushing revision :

To xenbits.xen.org:/home/xen/git/xen.git
   f51c92383b..7c3616e6f1  7c3616e6f1aa541884410c6430e3c8986cf0973c -> master


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 07:18:11 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 07:18:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618927.963250 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtNIH-0007v4-RD; Thu, 19 Oct 2023 07:18:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618927.963250; Thu, 19 Oct 2023 07:18: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 1qtNIH-0007ux-Nr; Thu, 19 Oct 2023 07:18:09 +0000
Received: by outflank-mailman (input) for mailman id 618927;
 Thu, 19 Oct 2023 07:18: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=Zn2w=GB=citrix.com=prvs=649eed31f=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qtNIG-0007uo-6z
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 07:18: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 a4596b5c-6e4f-11ee-9b0e-b553b5be7939;
 Thu, 19 Oct 2023 09:18:05 +0200 (CEST)
Received: from mail-bn8nam04lp2041.outbound.protection.outlook.com (HELO
 NAM04-BN8-obe.outbound.protection.outlook.com) ([104.47.74.41])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 19 Oct 2023 03:17:39 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by MN2PR03MB5136.namprd03.prod.outlook.com (2603:10b6:208:1a4::7)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.34; Thu, 19 Oct
 2023 07:17:37 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::17e3:6cff:b087:fc64]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::17e3:6cff:b087:fc64%4]) with mapi id 15.20.6886.034; Thu, 19 Oct 2023
 07:17: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: a4596b5c-6e4f-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1697699885;
  h=date:from:to:cc:subject:message-id:references:
   in-reply-to:mime-version;
  bh=1yd4Y+hBPMPioZOX9j3Sw0ZpCvZg/ZlTox1hIMaQRkg=;
  b=MI6MKnONZD2KgPwbjrONqXSMPY3q+cm6oFvJ8jY/AoevFys7tGL6gASL
   /mWa5ZOHh9d8zlNdg60/OqStLyt5W3MsL1iBTMBgrYcBtFsQMxcJxIfi1
   haUEp2zHqVANnuwrEJjQ28qzvTtbAdZOQ1ze4x3mC1hRhcw+UOA/lgfOo
   o=;
X-CSE-ConnectionGUID: UcOfVIQKRPOH4YQSDEqVIw==
X-CSE-MsgGUID: sdflAV9jSWuqqddtnllq1w==
X-IronPort-RemoteIP: 104.47.74.41
X-IronPort-MID: 124629210
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:QbpM4KPsYAeFtkzvrR1hlsFynXyQoLVcMsEvi/4bfWQNrUoq0WBVn
 GMZWGmDM/eKZTbzfNwgbtnn/EoHupOAmIRmGgto+SlhQUwRpJueD7x1DKtS0wC6dZSfER09v
 63yTvGacajYm1eF/k/F3oDJ9CQ6jefQAOOkVIYoAwgpLSd8UiAtlBl/rOAwh49skLCRDhiE/
 Nj/uKUzAnf8s9JPGjxSs/nrRC9H5qyo42pA5wxmPpingXeF/5UrJMNHTU2OByOQrrl8RoaSW
 +vFxbelyWLVlz9F5gSNy+uTnuUiG9Y+DCDW4pZkc/HKbitq/0Te5p0TJvsEAXq7vh3S9zxHJ
 HehgrTrIeshFvWkdO3wyHC0GQkmVUFN0OevzXRSLaV/ZqAJGpfh66wGMa04AWEX0tt8Jm9w1
 MU7EggqTkyyvtma7auFa/Y506zPLOGzVG8ekldJ6GmFSNwAEdXESaiM4sJE1jAtgMwIBezZe
 8cSdTtoalLHfgFLPVAUTpk5mY9EhFGmK2Ee9A3T+vZxvzG7IA9ZidABNPLPfdOHX4NNl1uwr
 WPa5WXpRBodMbRzzBLcqC7y3L6VxHuTtIQ6D7G28tdU0V+o+XEKEREaSV2/peDglRvrMz5YA
 wlOksY0loAi+UruQtTjUhmQpH+fogVaS9dWC/c96gyG1uzT+QnxLkgJSCRQLuMvssAeTCYvk
 FSOmrvBBzZirbmUQnK17aqPoHW5Pi19BWwPey4CCxcE6t/LoYcvgxaJRdFmeJNZlfXwEDD0h
 jqM/C43gu1PidZRj/niu1fanziru57FCBYv4RnaVX6k6QU/Y5O5Y4uv6h7Q6vMowJulc2Rtd
 UMsw6C2hN3ix7nWyERhnM1l8GmV2su4
IronPort-HdrOrdr: A9a23:sszJpa1ECaFBDJwqqbInWwqjBapyeYIsimQD101hICG9vPbo6P
 xG+85rpCMc6QxhJk3I9urwQJVof0mstKKdjbNhRItKGTOW3ldBwulZnMbfKxOJIVywygd279
 YqT0BGYOeAQWSTZ67BkUeF+q8bsZO6GcOT9IPjJhVWPHtXgvpbnk9E42+geyUcLmQrdPlJdq
 Zw/vA31wZIO05nCfhTKUN1H9QrzOe76a4ODyR2eyLOKWG1/EWVAX3BfSSw71MxVztOxPMF6m
 jKkwvw4+GGv+ugwhHRk0//hq4m4+cJCOEtOCVBsKkowrqFsHfgWG2pYd3y2QwdkaWU8V4vpt
 HHvhcnOK1ImgTsV1DwmwLk3z/q2C1G0Q6W9XaoxUH7qcjOXz4iDdFd7LgpBifx2g4bpdl55r
 hA2XmU3qAnfy/orWDG/tDNYQthkFG5l3okjIco/g9ibbc=
X-Talos-CUID: 9a23:Sc+gOmxXa8HiGchwP5/WBgUpEecrTFzk703oBG/kOF9SZJCMd36PrfY=
X-Talos-MUID: 9a23:n/zIaAQWnDiiQBZ0RXT3iD9mHfk54Z+RFVkUnZkavc2ALHVvbmI=
X-IronPort-AV: E=Sophos;i="6.03,236,1694750400"; 
   d="scan'208";a="124629210"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=WosEzmRKl0eiKfXtSpuz5dksP6YOx2bfWgTNKYh/XWcZgTMKSv+ep2qT9syhhCKC0lR+3Ss16XR+CMl1hm7+TBnbw9geNR4tWEKluwRGVqit7lx9utCKgjkeF8M6NbSQjOqHsv58KOu8bpffNsq5vlIK6etCZYEK0fGzFXja8eoxXv16YAe1Ih+/Yht+DAQNMfJiyRNIILrL001rrU6Gs+1u1rojmSHYn8sXQi/IJUyopg7Zi8xKv3OGQ69rw6bchk3abU33R/ew+cR4Y3oU+yVC0rrCHV2s3a8NbXAosUv8bVfk4x5yVj3xXtvC2KxyNy90U7KgB/o6TXmr1+RwsA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=0gVjLa3u4Ce9NTfI662baZRz8jgeAB0yYmtzYoYNsHI=;
 b=CSwqEdXHbqlo2VobvLNmFTnL2BTwR4jxpu53e4qmLHWvuv3ecC1gpuUZxyOo7WysHKFx2YsLKeRHdul+rkV1Y5k1iEaBI/jRxcper+MuuNnZa2uRMu1BRDpugfY2XItZ8a1XDf8M+KI6y66vtds3XV8G3A6Lxm1bEfyEYRPpqR5Bw6alHteGqCsoJdsX3FHkvwnAD/QZQT0TEcPl+mSe8EuLf2cdJNTFwrkEsX/H/o/mePwTcQ1bc4Lq4J3WJqhf5fl9RIKiSiNJAbEGt39C6pkwq1keFstWVrmxRBHTws/DvGTcn0Uz6qvv8b82UCCE322V15oJ2ztzIOfjt8kzEw==
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=0gVjLa3u4Ce9NTfI662baZRz8jgeAB0yYmtzYoYNsHI=;
 b=ePg2Y66DoQn9fegpv//OFM+UbXiN7VuuqsTDAD2RO+UDVNS5PqfKZQT/iurHFy6Zg0XZCGpAVcUjt4br8QB99L2yH/Wko3CngBcOPM/7ic91rWyQc0K6VpOK0LmoiOINDMRrzodXzQSbl4Jg3178qPzSF68JAI//ej7zDT+vVFE=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Thu, 19 Oct 2023 09:17:31 +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, Henry Wang <Henry.Wang@arm.com>,
	Jan Beulich <jbeulich@suse.com>, Kevin Tian <kevin.tian@intel.com>
Subject: Re: [PATCH for-4.18 v2] iommu/vt-d: fix SAGAW capability parsing
Message-ID: <ZTDYC95LkxjV1O3c@macbook>
References: <20231018160733.24655-1-roger.pau@citrix.com>
 <0237931f-dd15-43eb-9751-171615a005bb@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <0237931f-dd15-43eb-9751-171615a005bb@citrix.com>
X-ClientProxiedBy: MR1P264CA0202.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:501:57::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_|MN2PR03MB5136:EE_
X-MS-Office365-Filtering-Correlation-Id: b7eeefc4-5d8e-4489-2d07-08dbd07378a0
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:
	kzlULT2m9UYmJDjQQqYXXrtL39tQQZzL1tbkmXDhsCap1jyQ9mljS8X8ApIMIx5IgwRKNYpUQNt/oeNM4ynNA5YvCz6qwKZc9PiS8HxXwbpAWl8QACWEKoUJN+Go2YVTVclSxzlDf6mg72G79RQwIYKYOqXUfYqam/ywfpQeRL1NDzfYtdYfHJlPe3ucTOiJDYAV+lr/QCMt883Lmgblml0ldZazbB5lUzZMe/2rGzZzlSuEh2tFHJzmafEEd9kCZ0iteAgHrNVh4u3TXFYEyPk8zS0M8tXW0WhZGomN2Hy8OxoTGGqdV599RNYvQ7xUHTSFadD+r9F7gDcNMow1r/pfhLFC0MtbaZG5PUY0lLypzDKSuO/TnMBfGNRm3YeFpAVtJl49PmWfFpHkemJQVheVbj/oE3zdf57VmQJiIiCCKN5y3KcXHe39Q2weiINbRighSMjCGJnbicjv2oaqn+tyCw3k4SngvLg9H1QIBGwKSuJzB5DoAYZm6CysHQuUC91Me31buYtI/ZrMU6xp8TPs/DAxVdTUSHoC+jksjVIfLais+S4Jg3tfBE02Zdg4
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)(39860400002)(396003)(366004)(346002)(136003)(230922051799003)(451199024)(1800799009)(186009)(64100799003)(4744005)(2906002)(5660300002)(41300700001)(8936002)(6862004)(8676002)(4326008)(26005)(316002)(66946007)(6636002)(9686003)(33716001)(478600001)(6486002)(6666004)(6506007)(66476007)(54906003)(53546011)(83380400001)(86362001)(66556008)(85182001)(6512007)(38100700002)(82960400001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?czdwYjh3ZnpWY1FPUU42N3ZBc25lWGZQRHVUNUMvWWxGVDVpVldNbmc4WjRy?=
 =?utf-8?B?QlQwQ1R0UTRQRDcvejhrTi8wT2hIU0J0WGpyM3hvTUNGMnZjVCt1bU9Bd25v?=
 =?utf-8?B?cFBTU2NmUXhkQVRUaU5GYzZyTWJQSXRCMHZQR1M0VGpkZ1lUa0d2a0NJNmxm?=
 =?utf-8?B?YStMSUhIeFQ3S050bW14SVZCeFZ0QnlST1VobmhYUHhkSk41T0NTTWJEcURk?=
 =?utf-8?B?bVQyc0UyekhsTkJDZUJleEExa01mNitsNzl5Y0p4Z2lIaEZTTFZLZUdRUlBj?=
 =?utf-8?B?WkNCell0ZGc3UHpsVkpmbzlxaC9IQWpRR1hsZElqZFlYdHEybVoycU1HdVF1?=
 =?utf-8?B?b01kY2lKbzRqLzd0eThmeUxGVlNyejNvN2ZpNkdpWEhVMEJSWENDa3dlTTNO?=
 =?utf-8?B?TmxJdWNDZlQ2S3hJaGwwQy9EWXZwYU1HQ0w1cWxZQkdxR0JQaU0wQitXY2hz?=
 =?utf-8?B?YmpDMTlpRjMxeG5IUmJvbTBvZlFGTUd5NFp3VGhkVEVoMHhYMUlpVkQ2T1JJ?=
 =?utf-8?B?VXQrbFBEbS9vTXIyMGNTdXAyT1hDOUZ3REhFTmk0R2Q2QWE4R3llT25iZUMr?=
 =?utf-8?B?U3Z1dzFvSkNsWkpoNkxjZitoZ3ZBSmhZaVRyZ1VEcVkvRWluNStFUmpuNXRw?=
 =?utf-8?B?NC84Vk1GLzlYdFk2SE9qTnhRd29lVFVBbG1lS2JUUXZVNUxMUCthMGkwczZF?=
 =?utf-8?B?dW5pZnE0MVE3dWF5ajhpUFlpN3hQTHZoNzdOZXlkRFFuRUNYOFpsL29ZSDhO?=
 =?utf-8?B?WjZWNXZWSE96NDVDMG1UWTBTSVVjVXpZVzJNOU9yK21xS1V5Q1hwNDMwVFJv?=
 =?utf-8?B?eVEwMXZVT2pQNGg0TTA3QVJCZjBxNThDd1Y0YURrRUJPWXQxUkpROHNHWlhx?=
 =?utf-8?B?enB6VEJCeEpqU1lYWWVKOVN6RUNpeFBySDdQZHY2YTVPU1pvMTF2SElVNFh6?=
 =?utf-8?B?c1BCemJFMFJ0WU0xWXc1ZnVPUVhRYnVmUTIybHFFYkhyWVNiSTNWOTB6cy93?=
 =?utf-8?B?UUpNYm9tMWh5MXZVY1gvK2ZwdEllN1pqOWdMVWNIMFR4cmlhR0w3Z2IrV3hD?=
 =?utf-8?B?WlRTQXRRNjNlczdXR3BTYzRGc0VVa1VRem04R2lHdUx3M1VHdFhnMXYzUTVp?=
 =?utf-8?B?NTBzN1cwc0hQdnJ0NXVZdmYyYWcxV3BET2FGajhZMDIxNm5BclhPYjJtYUF4?=
 =?utf-8?B?OVpCcU93OWtnV2hKNC9td3l1K3JFSzJQci9EanlTWmZmcDBuU3JwT0w2SFln?=
 =?utf-8?B?S3A0ejd2c0wxellYMllPWE9zQXd3QVZUeHBSWi95b2h4VUpJZmhES3dhYnRw?=
 =?utf-8?B?MnBncmNRb3lFY24vdENMU3BaamRjRmltbzh5Rmd5U2tiM0J6eDUvK0V2UGNh?=
 =?utf-8?B?N2JFampyaTNBTHdrb21qcFc3U0ZGNVEzOGdpL09mQnUxbEIyaHFXK3Q1VmF3?=
 =?utf-8?B?YzRVb3cvazZxTlVYMWpYREFnaUU2c1VtUk40ZlJFb2FJSExUbnE4c0x1bzRY?=
 =?utf-8?B?WkF5MFlqbmR1V2o3enVpdHM0SHBDaC9SUjROUzdsSURaVkxUeG1KY2cyMzdH?=
 =?utf-8?B?WTFYOHMrcm9MWFk5YUV5akdwZksxV0VBTThmS1kyakVPc013Y0w1ZkNEQlk3?=
 =?utf-8?B?YXBaSU9uUS9rVXVvNzZkTmNUZTQ1U0pSZmFFOGtXR2sxTmwrZGlmWEJkOVE3?=
 =?utf-8?B?Rjd0QzVxMHJIUGkzdTY5by9sdnd1Z3lXRnJ5RTViWWZpV3poOTYwVHcwK05P?=
 =?utf-8?B?V1pLYzR5b0p4YTRtbWxTUiswSXBWYUpMNE1TaXN3dXYza3NVTkxIWXR5T0Vk?=
 =?utf-8?B?K3RQU0hkVkVmYkYzMXg5UHYxNDFuM2dnUEZjMldoRFQ1TzU1V05pQmlqWlkr?=
 =?utf-8?B?ZmNEWHFHNndJUnhIZVR0Ly9HSnlkQnNZUnpLZ0ptK1JLOGF4NVNMK2V2ZGZ0?=
 =?utf-8?B?dnd1SS90bnpoL0FzTVRTY0N0aTRKVTZFeHpFU0l3VU9lQnhtNEdSanZZV1hT?=
 =?utf-8?B?MG9zVTZzdU9EeGQ4TkQyd1orckhhZ2pxVVVsdzhYNmFLMXZyaVNZKzd0STF5?=
 =?utf-8?B?R1FHQjJLVU5PNEZCSHpPYmhTNFRHb2dCNjZtc0RqQjgzZVdCNm9wTGtCbHVL?=
 =?utf-8?Q?VzcDp7WDvzf/ltdPpIZXk6b56?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	KIWmwhKajpzWFau/wkMY53ChYWj53UEpl+1PWHjuNGhoP+uH1TlRMSAiu2zUtXmkgJDQDMbttpAUGh2H/8adejPkjWJ12B3tvJAsx95tg02qYo8a2PnKm8XdyJzLUxkQtUoPEXPdCwv6ZvKtgsmJflxY8OI/H/cIRoYfmOFVq94mj0+P26KuVlPbHT2ldtUSS8QSdEjvEigD5qVA3Kr9gdkUr/H8mo5A+/wb5z9HV2kXk3qkKDezmUQ1FsedR92RTEamWsQV3N7Hf5nF2RV/v2GDI9bveOqzKmcSpsKHyIQCGA5EcOubuta9agA32/yfRfVOq8X15tQ4qJyewFg9d+R9OiXtfkaaSPflJKzJ+n43ecUs3OtRahqUCbbutyT8s5fuNJdCZEI3JGU+MS95Lk9//XOsQlh/89ytN/j35N9M0ZhHfZ/RQXFXnX/5z5vK5OmQRxBJS6jPpgbrRSKW45hzYmvg4RkiqJy6JNIqpMzVLK1hk89NLc6I0EgmcyoDRlRzHO6TRSaDxMrgj4hldEhmuLRqBDC3m0IYGsWucc5MUSycsVnXRSxjwxZMFKCfJlcBK8dJfsiTdhKGxw0nc6pegV/TGBbMpFjg2TBc+8N8ncAkzFvj59h2LLeZFlC6odn05W0YD/LdYVGsqzK2bxr0jC7TPYe0BAW8w9/ViUJ/mDVm0NLihthJ58L6TFY7c8vSeltB1c70BI01MlBrz2hFNfV84PsshzI4aAaitZm55vATt3s06iHaEpDZjIv5/TY8nV3XWcd3dKGsCX89LGS8wVCjvqWHuKIlBUj4Vn6lJRsCHwOW0Un2sldMffrSA3Ug0dRBuCOOMMXEN+3/lbgNZ4tnMQJr8LFGeEKJ+qU=
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: b7eeefc4-5d8e-4489-2d07-08dbd07378a0
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Oct 2023 07:17:36.8520
 (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: 36NfWqHH/FykyChbmvCZKOiHHGKfC9gbR2Dz56PbZj8fy6WNA6CS7kc8fMow/aaQG1hs5dCI+834n0lms7454A==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN2PR03MB5136

On Wed, Oct 18, 2023 at 06:04:29PM +0100, Andrew Cooper wrote:
> On 18/10/2023 5:07 pm, Roger Pau Monne wrote:
> > Enabling 5 level paging support (AGAW 3) at this point in the release is too
> > risky,
> 
> This comment will go stale extremely quickly.
> 
> "It is too late in the Xen 4.18 release to enable support for 5 level
> paging, ..."

I was hoping it would be close enough to the branching and tagging,
but your wording removes that ambiguity, so that's better.

Will wait for further comments.

Thanks.


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 07:32:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 07:32:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618939.963288 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtNWP-00039A-AJ; Thu, 19 Oct 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 618939.963288; Thu, 19 Oct 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 1qtNWP-000393-7a; Thu, 19 Oct 2023 07:32:45 +0000
Received: by outflank-mailman (input) for mailman id 618939;
 Thu, 19 Oct 2023 07:32: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=cQIi=GB=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qtNWO-00038x-AL
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 07:32:44 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id af7007c1-6e51-11ee-9b0e-b553b5be7939;
 Thu, 19 Oct 2023 09:32:41 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id 4CD9B4EE0739;
 Thu, 19 Oct 2023 09:32: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: af7007c1-6e51-11ee-9b0e-b553b5be7939
MIME-Version: 1.0
Date: Thu, 19 Oct 2023 09:32:41 +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,
 roger.pau@citrix.com, Simone Ballarin <simone.ballarin@bugseng.com>, Doug
 Goldstein <cardoe@cardoe.com>, George Dunlap <george.dunlap@citrix.com>,
 Julien Grall <julien@xen.org>, Wei Liu <wl@xen.org>,
 andrew.cooper3@citrix.com
Subject: Re: [XEN PATCH][for-4.19 v3] xen: address violations of Rule 11.9
In-Reply-To: <5b44bf79-24fa-abe3-1759-da1dd5d3e5de@suse.com>
References: <d760ef0c088dc15ecc411b83640735123444f887.1697636446.git.nicola.vetrini@bugseng.com>
 <35abc556-2f66-4498-b567-87e6a3216d50@citrix.com>
 <alpine.DEB.2.22.394.2310181745300.965337@ubuntu-linux-20-04-desktop>
 <5b44bf79-24fa-abe3-1759-da1dd5d3e5de@suse.com>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <a098b894455fa0da64d91882d3aa2f3d@bugseng.com>
X-Sender: nicola.vetrini@bugseng.com
Organization: BUGSENG s.r.l.
Content-Type: text/plain; charset=UTF-8;
 format=flowed
Content-Transfer-Encoding: 8bit

On 19/10/2023 09:03, Jan Beulich wrote:
> On 19.10.2023 02:54, Stefano Stabellini wrote:
>> On Thu, 19 Oct 2023, andrew.cooper3@citrix.com wrote:
>>> On 18/10/2023 2:42 pm, Nicola Vetrini wrote:
>>>> diff --git a/docs/misra/deviations.rst b/docs/misra/deviations.rst
>>>> index ee7aed0609d2..1b00e4e3e9b7 100644
>>>> --- a/docs/misra/deviations.rst
>>>> +++ b/docs/misra/deviations.rst
>>>> @@ -199,6 +199,11 @@ Deviations related to MISRA C:2012 Rules:
>>>>         See automation/eclair_analysis/deviations.ecl for the full 
>>>> explanation.
>>>>       - Tagged as `safe` for ECLAIR.
>>>> 
>>>> +   * - R11.9
>>>> +     - __ACCESS_ONCE uses a 0 as a null pointer constant to check 
>>>> if a type is
>>>> +       scalar, therefore its usage for this purpose is allowed.
>>> 
>>> This is still deeply misleading.
>>> 
>>> There is an integer, which happens to be 0 but could be anything, 
>>> used
>>> for a compile time typecheck[1].  In some cases this may be 
>>> interpreted
>>> as a pointer constant, and is permitted for this purpose.
>>> 
>>> ~Andrew
>>> 
>>> [1] I know I wrote scalar typecheck in the comment, but I suspect 
>>> that
>>> what I actually meant was non-compound-type typecheck.
>> 
>> To help Nicola find the right wording do you have a concrete 
>> suggestion
>> for the text to use?
>> 
>> Reading your reply, I am guessing it would be:
>> 
>> * - R11.9
>>   - __ACCESS_ONCE uses an integer, which happens to be zero, as a
>>     non-compound-type typecheck. The typecheck uses a cast. The usage 
>> of
>>     zero or other integers for this purpose is allowed.
> 
> "non-compound" isn't correct either: __int128_t, for example, isn't a
> compound type but may not be used with ACCESS_ONCE(). Furthermore
> certain compound types are, as indicated earlier, in principle okay
> to use with ACCESS_ONCE(). Both are shortcomings of the present
> implementation, which imo shouldn't propagate into this document. I'd
> say just "as a compile time check".
> 
> Jan

Ok, I'll amend it

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


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 07:34:19 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 07:34:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618942.963297 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtNXu-00041N-Kt; Thu, 19 Oct 2023 07:34:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618942.963297; Thu, 19 Oct 2023 07:34: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 1qtNXu-00041G-I1; Thu, 19 Oct 2023 07:34:18 +0000
Received: by outflank-mailman (input) for mailman id 618942;
 Thu, 19 Oct 2023 07:34: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=in48=GB=bugseng.com=simone.ballarin@srs-se1.protection.inumbo.net>)
 id 1qtNXt-0003zs-1E
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 07:34:17 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id e7e63b2e-6e51-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 09:34:15 +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 576734EE0739;
 Thu, 19 Oct 2023 09:34: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: e7e63b2e-6e51-11ee-98d5-6d05b1d4d9a1
Message-ID: <3de5e340-30bb-44aa-affd-89f343ed1fa1@bugseng.com>
Date: Thu, 19 Oct 2023 09:34:14 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN PATCH 1/4] xen/arm: address violations of MISRA C:2012 Rule
 13.1
To: Julien Grall <julien@xen.org>, xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com, sstabellini@kernel.org,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
References: <cover.1697638210.git.simone.ballarin@bugseng.com>
 <31a926a09dfcef43d13a402fd3b235aeba48009d.1697638210.git.simone.ballarin@bugseng.com>
 <41d82896-5471-4eaa-8bdd-a192e28d5546@xen.org>
Content-Language: en-US
From: Simone Ballarin <simone.ballarin@bugseng.com>
Organization: BUGSENG
In-Reply-To: <41d82896-5471-4eaa-8bdd-a192e28d5546@xen.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

On 18/10/23 17:03, Julien Grall wrote:
> Hi,
> 
> On 18/10/2023 15:18, Simone Ballarin wrote:
>> Rule 13.1: Initializer lists shall not contain persistent side effects
>>
>> This patch moves expressions with side-effects into new variables before
>> the initializer lists.
> 
> Looking at the code, I feel the commit message should be a bit more 
> verbose because they are no apparent side-effects.
> 
>>
>> Function calls do not necessarily have side-effects, in these cases the
>> GCC pure or const attributes are added when possible.
> 
> You are only adding pure in this patch.
> 
>>
>> No functional changes.
>>
>> Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>
>>
>> ---
>> Function attributes pure and const do not need to be added as GCC
>> attributes, they can be added using ECLAIR configurations.
>> ---
>>   xen/arch/arm/device.c              |  6 +++---
>>   xen/arch/arm/guestcopy.c           | 12 ++++++++----
>>   xen/arch/arm/include/asm/current.h |  2 +-
>>   3 files changed, 12 insertions(+), 8 deletions(-)
>>
>> diff --git a/xen/arch/arm/device.c b/xen/arch/arm/device.c
>> index 1f631d3274..e9be078415 100644
>> --- a/xen/arch/arm/device.c
>> +++ b/xen/arch/arm/device.c
>> @@ -319,6 +319,8 @@ int handle_device(struct domain *d, struct 
>> dt_device_node *dev, p2m_type_t p2mt,
>>       int res;
>>       paddr_t addr, size;
>>       bool own_device = !dt_device_for_passthrough(dev);
>> +    bool dev_is_hostbridge = is_pci_passthrough_enabled() &&
>> +                             device_get_class(dev) == 
>> DEVICE_PCI_HOSTBRIDGE;
> 
> The commit message suggests that the code is moved because there are 
> side-effects. But none of them should have any side-effects.
> 

device_get_class contains an 'ASSERT(dev != NULL)' which is definitely
a side-effect.

I know that this kind of side-effect can be easily deviated, but 
considering the easy fix, I've decided to move the call outside.

By the way, I totally agree with you if you prefer to deviate.

> In fact, if I am not mistaken, both is_pci_passthrough_enabled() and 
> device_get_class() could be marked as pure.
>

Considering the ASSERT, I do not think we can put the attribute pure.

>>       /*
>>        * 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
>> @@ -329,9 +331,7 @@ int handle_device(struct domain *d, struct 
>> dt_device_node *dev, p2m_type_t p2mt,
>>       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)),
>> +        .skip_mapping = !own_device || dev_is_hostbridge,
>>           .iomem_ranges = iomem_ranges,
>>           .irq_ranges = irq_ranges
>>       };
>> diff --git a/xen/arch/arm/guestcopy.c b/xen/arch/arm/guestcopy.c
>> index 6716b03561..3ec6743bf6 100644
>> --- a/xen/arch/arm/guestcopy.c
>> +++ b/xen/arch/arm/guestcopy.c
>> @@ -109,27 +109,31 @@ static unsigned long copy_guest(void *buf, 
>> uint64_t addr, unsigned int len,
>>   unsigned long raw_copy_to_guest(void *to, const void *from, unsigned 
>> int len)
>>   {
>> +    struct vcpu *current_vcpu = current;
> 
> It is not clear to me what is the perceived side effect here and the 
> others below. Can you clarify?
> 

I will use the pure attribute.

>>       return copy_guest((void *)from, (vaddr_t)to, len,
>> -                      GVA_INFO(current), COPY_to_guest | COPY_linear);
>> +                      GVA_INFO(current_vcpu), COPY_to_guest | 
>> COPY_linear);
>>   }
>>   unsigned long raw_copy_to_guest_flush_dcache(void *to, const void 
>> *from,
>>                                                unsigned int len)
>>   {
>> -    return copy_guest((void *)from, (vaddr_t)to, len, GVA_INFO(current),
>> +    struct vcpu *current_vcpu = current;
>> +    return copy_guest((void *)from, (vaddr_t)to, len, 
>> GVA_INFO(current_vcpu),
>>                         COPY_to_guest | COPY_flush_dcache | COPY_linear);
>>   }
>>   unsigned long raw_clear_guest(void *to, unsigned int len)
>>   {
>> -    return copy_guest(NULL, (vaddr_t)to, len, GVA_INFO(current),
>> +    struct vcpu *current_vcpu = current;
>> +    return copy_guest(NULL, (vaddr_t)to, len, GVA_INFO(current_vcpu),
>>                         COPY_to_guest | COPY_linear);
>>   }
>>   unsigned long raw_copy_from_guest(void *to, const void __user *from,
>>                                     unsigned int len)
>>   {
>> -    return copy_guest(to, (vaddr_t)from, len, GVA_INFO(current),
>> +    struct vcpu *current_vcpu = current;
>> +    return copy_guest(to, (vaddr_t)from, len, GVA_INFO(current_vcpu),
>>                         COPY_from_guest | COPY_linear);
>>   }
>> diff --git a/xen/arch/arm/include/asm/current.h 
>> b/xen/arch/arm/include/asm/current.h
>> index 6973eeb1d1..a66e28fefb 100644
>> --- a/xen/arch/arm/include/asm/current.h
>> +++ b/xen/arch/arm/include/asm/current.h
>> @@ -28,7 +28,7 @@ struct cpu_info {
>>       uint32_t flags;
>>   };
>> -static inline struct cpu_info *get_cpu_info(void)
>> +static inline __attribute_pure__ struct cpu_info *get_cpu_info(void)
>>   {
>>   #ifdef __clang__
>>       unsigned long sp;
> 
> Cheers,
> 

-- 
Simone Ballarin, M.Sc.

Field Application Engineer, BUGSENG (https://bugseng.com)



From xen-devel-bounces@lists.xenproject.org Thu Oct 19 07:42:00 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 07:42:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618947.963307 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtNfB-00066O-Bt; Thu, 19 Oct 2023 07:41:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618947.963307; Thu, 19 Oct 2023 07: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 1qtNfB-00066H-9E; Thu, 19 Oct 2023 07:41:49 +0000
Received: by outflank-mailman (input) for mailman id 618947;
 Thu, 19 Oct 2023 07:41: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=g4nO=GB=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qtNf9-00066B-Qr
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 07:41:47 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 (mail-am6eur05on20617.outbound.protection.outlook.com
 [2a01:111:f400:7e1b::617])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id f37b43d6-6e52-11ee-9b0e-b553b5be7939;
 Thu, 19 Oct 2023 09:41:45 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DU2PR04MB8504.eurprd04.prod.outlook.com (2603:10a6:10:2d3::9) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.7; Thu, 19 Oct
 2023 07:41:43 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%7]) with mapi id 15.20.6907.022; Thu, 19 Oct 2023
 07: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: f37b43d6-6e52-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=GlPqzoBwttsBa8iM535btI0mo5dqzD9HJXd5tc7qAqb66XjsJU0EaxKkBltsktOUQ780iI6xuDSp33wry1uvLgqXOVD1rZ2FgOUH5sii3WzaAAGuHqsMaewYFMXfZBW+gSFKAcIKIiPAst17kTgVkZ6dm2ldjpIOgUJsIftkdSDLcbz7otGR1zufRELtr36z+tTf3fxHimmXDMvgrCmzZ/zZn5Yvbs7JH+nZrEcMw6vzoPFLrIQzXnuU0vklm0+gBxUONVooIqU9A/OuZVqcr5kz/O/nYZKFN5hgEX1ewkTZKuHOMCJKcNNpGCyf65Sc5PLe71RPLekj+am/6SvwyA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=wwBaS+zHgXx+cB9MCxbcfEc9WGIRvISgYv8txzGUKIM=;
 b=f36t4D+6JNmyvB9cfSTNfq+jjwhXAzAwhEZme5rg3hakHU25R9oJR+IeyF1sv10Xr5Mh4Gg4vErDJ1PES6UtQPmIMyxQtAhqdbRG5v6LWJGnOyweasadWfN6bW+PgJH1yIaEr8+T/4HZBSd5f37g74YL0xqC77z8dnH6kKM2Wu8FuosO+kZXkTtu0pVdEfxq4JDiy9BCGXCgYJt4hjsdOR5C9MdYeHiaaMBTZhrm2FT1ljAIMYg4YsW8+KK6Gatzpn1J8JkBdszicv34iDgOwCQ5tgTpa7TrqVr94MzLSPhVo3dGunCksFiF8xoa+HVqkxAHtmU08Lm5U5ljPxZ+TA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=wwBaS+zHgXx+cB9MCxbcfEc9WGIRvISgYv8txzGUKIM=;
 b=5ASI2dYVcKtTI6yOzK9woeqEWm9QLPjX0aDoB+EHLCm3f4IAuBrQ79b3ivTvaMvdEc8xCGnuTpYaZKtgBMpfGrujLKbBJCPExfseXkHBZYgIWAEw63ebuobBRsIfL41SZHOs2xfeX3ks8i3lRpVdhd5/+bcVnl2Rn/6hwKGeviBCfQyXLTNrDyDYtR7x/ffuwztb1QYnttu6eF6ogUCUcr1RbDDebLTB5mAExbq7j1B/Hdq4bYO3FJrKUjFlGZ0xUQhL83tVoQW4qvyLf/2AN2Yj2nsZLp002VTQa9JlWVBA63lX8l3LpbrOshFgxW2UW4OB2CayL2toCgDc7+hb6A==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <709ade00-9112-2866-4d2b-3bb718b13b46@suse.com>
Date: Thu, 19 Oct 2023 09:41: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 for-4.18 v2] iommu/vt-d: fix SAGAW capability parsing
Content-Language: en-US
To: Roger Pau Monne <roger.pau@citrix.com>
Cc: Henry Wang <Henry.Wang@arm.com>, Andrew Cooper
 <andrew.cooper3@citrix.com>, Kevin Tian <kevin.tian@intel.com>,
 xen-devel@lists.xenproject.org
References: <20231018160733.24655-1-roger.pau@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20231018160733.24655-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR5P281CA0014.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:f2::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_|DU2PR04MB8504:EE_
X-MS-Office365-Filtering-Correlation-Id: 420489f9-ecb1-4c8f-8bcd-08dbd076d6f6
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	+oMNAIsCoYGFW9S+qNhm+J8uGJ0JEx7TfIV5Oi+28MQXejVYguIURJ9FHILLmDxoSpfA6F7rB5CKom8p+ha2eRIjXw+AS16Qi6cEkvyXxBR/oGw5SWKvgDVFMkUXkpxwj0qyYl9XqcRLITbSZrYx2kd0Xn4d8nW1VEn56pF4IlNQ6BWu3MGi8Tj4MOsN890UeFqkP3DkTTv6HokbDJoWHBYNWWXeSWPSQGvDH+BzuC8e8tWdv0bjHVAWx3H+0A0ZiavndDwDluD17BufaTmrr0fCTs29c9YOJnFzsXvxgIfLTQxII8nL45HTzt8lKtdO78gQgVL/wO9MCeLDN72PuBm52tiIasXFxemUr4zb4Cq7PVKM0h6h96i9+OEl9Ov0LBX7OtG6ve70M87luNVjv/6NFlac5ja6wfGLHX4tJeM9G4DP9bJtg4z3ybc+fltxldUH1+4fg6BEtBsKjlBidaRseOEzuvHqVz5F3U0PvkNGpFILLJivO8q80Id2AdpMLqFWp4pC9YnKm+WO72QONz1rD/R0lp03m1gycptOcPidRrJSFVUjdvNLwDxzwR+gmCCCi+D6mpZxHT6ccjIcy0ZYwLHeA6whGEGQ/jhsv6KNTJAtlGBqmfJV7eduGn7lNK4xmaWGx6PYVFssH1s0Zg==
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)(376002)(396003)(346002)(230922051799003)(451199024)(64100799003)(186009)(1800799009)(83380400001)(53546011)(31686004)(38100700002)(2616005)(26005)(86362001)(2906002)(31696002)(8936002)(8676002)(4326008)(5660300002)(6512007)(6506007)(66946007)(66556008)(6486002)(66476007)(54906003)(6916009)(316002)(36756003)(41300700001)(478600001)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?M3VSQmp5N3hxVzFkTlYxMWk2ZktsMkFDdnM0ZXgyNnZIZUYyeThvdXZneDZ3?=
 =?utf-8?B?TjZhak1ZZE9Rdk1pM051NkxFWkZmRjlMSHdubFJFTFAzZHhoTlU1SitQRHBq?=
 =?utf-8?B?K2VFRjU2L1VtRXhadUNvelN5UVFlVUd6ZVlmRWlxSHM4L3hDVXZ6WTA3cVdX?=
 =?utf-8?B?ejZ5ZGVVUDIyS0RHRW9aSktScGJRV0dNeGNacHFxMVRuUDdaMGlORDNrNUNW?=
 =?utf-8?B?cXk2T3FDR09QQkVHOCt4MGFUcUN1WUF1c014VmhXOEtGK1ptZkhNN3M1Ykh2?=
 =?utf-8?B?QU9UU0o3LzFad2MvTGNNeVEzZmdHYmR1UFVaMHVTQ2hmUU1hQ2ZMWlg1TktK?=
 =?utf-8?B?dG13RXgraWJwaUplMnN0SGVucjhYWlJvVGZpclZzc09zUlVjQVFJTGF5MFJS?=
 =?utf-8?B?RjBBTnR1YklZYWhHQzdJTTZHdWE1NnZuVkplWUlvSzU3bncyKzAwMFNPRURt?=
 =?utf-8?B?d1AvM25DdTZ1VWlhd3QxWWQzci8yU3doTjlIcElrRzF3WG9CS0VLWGtYejJw?=
 =?utf-8?B?LzhxalhmY28vR2tZNTdUWTBJYm9zakVBeWc3Q3JobkFrdm9TMmFvVmJib2Fx?=
 =?utf-8?B?UEVCZno4VEV1b2NWeEFtRlpKN1Q5NTZFN0lrWVNFNWlZUGQvNXRaTy9kRzdt?=
 =?utf-8?B?empVZmdmdkVtYzFNOGIySWpCc08zWDF6OTNCRFViQmYwMTVoYXhvOCt3ZnF6?=
 =?utf-8?B?bEFYaW43S2dGR3lkSk01cWwwNm8zQmFaWVdrNzFlY2JCdDc2TXZCQllYYnNi?=
 =?utf-8?B?dDh2TlVGS3FUSHplZXZuNnIveVpSSHNMUWdMdnM2NWZFWGsyMVpNVFZsbjBx?=
 =?utf-8?B?dThIMStQVmtGVFpYemRiYzR3VE02N2pSL0Y2T0E0aGczNElXR3AwdHMyRDRs?=
 =?utf-8?B?OTFoajFIUDVZUW9zR3RCVHg5VDFWRXk1Mkk0WlpTMHhyK2RsUjUway93RVV3?=
 =?utf-8?B?TzlmMlpYZDNXNEhCTVVGOUZTOW1DM2dCTnp5MlRxTGF0YU9vVUppY0ZuQ29J?=
 =?utf-8?B?RG5FUnRvQ2hCUW8vNUJGVGlkVEsySC8yeU5lc242Q0huU0I0aktUd3RibDMv?=
 =?utf-8?B?UnMxdldSRU41MStMbzZzNXoyN1ZIV0RVa2N4Vk4yN2VjU0dKclFjR0x6VlVU?=
 =?utf-8?B?bHdZZzNFRDcycXhDZGNpUXN3YW4zQ2ZXUW15ZTdubURtZ0VodkUvR2E2dmhN?=
 =?utf-8?B?dnVsOHhpQzhmL1RKdzFBMHpOMlNTVHdqRnJPTWs2YkZsZk9PdkptRU5yWkZ5?=
 =?utf-8?B?RnZWZGhJeUNDYnlDS3V0RjgzSUdMUlNzN1h4M2FNaVNzMnd0WnNRSVB6dGdS?=
 =?utf-8?B?Z09hZHNlV1p1TW9zc0Q1SFRYN1ZFL09XeWFPRXFHYU8xZFRVQjM2OEREYWRG?=
 =?utf-8?B?YkhUc3kvZHA5Zk5sRGV1NGdHRWZ1Tk5tbkVFYXZ5WmlCblZWdmFLekFpSVo4?=
 =?utf-8?B?VWFuSHpWUWU1aHVVcFpqd3RIVGdOUWtmNWFUeEkxWFRORFZnQ3JJSjRJNy9Q?=
 =?utf-8?B?R0diejREbFRidSsrWmp1VWRFSy9VZ1RHaWNtWkNTbEd5ay9rSEJlaVorYXB2?=
 =?utf-8?B?a1ZXYnZsMUlpM09SWTR5cXpkMlBRak9CVG1ONFBqOGZqZzZzbi9GVHA5UWFE?=
 =?utf-8?B?S244UjNad0JqUHRjUmtHTlNGSUZGbUpHM3F6ZFJQamFoV21rejZMLzJjL2F5?=
 =?utf-8?B?VWRZMUhldWtMTHRDUm1DMFF1VWt4NkJTTTRzOWE3RzdneDlUMkRNbFlKSDdO?=
 =?utf-8?B?UUd0ZnkzeUpkZUY1ZTFLV2JjbSszQzM2aGVKY0dKL0g3MFhLS1l0MmVoMnIw?=
 =?utf-8?B?R00vSEFUaElTOFdHOEtidW9YOUtDSTlienhMWXYxQ0ZQY3IvL0pQQVJ2Ulk0?=
 =?utf-8?B?VUJVOXpXYjlySzJMMmxlS25sc21hNEZkUGV0SzlKM2Y4Z3E1aWZRRkQrYUFw?=
 =?utf-8?B?MTd4c05OcHV3a2U4a1EzMk9xTTZPLzFNTVQzRmhLZ3prbnNMUEZldGVjY1U1?=
 =?utf-8?B?d1M0a3hyeUs4K3EwMDJoS2hrUTdUNzlFVDFxVk9yaDV1RXVNNFF5N25HRWlx?=
 =?utf-8?B?aEh5OTVoWkMwWSt1YTJxcHJGMitGd2tjbE42d1pPZFo5STBDUGxrY3RSM0JC?=
 =?utf-8?Q?G2hR/Tbbs40t3fh3/zWFcKQXK?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 420489f9-ecb1-4c8f-8bcd-08dbd076d6f6
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Oct 2023 07:41:43.5248
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: MUna5xkUGeXPZGzaYBvfyndXZYRIUNkCZnOrnc0dvjP+5nnd7MiZy49bEDQO3aKtH3STkwxtqsvP8Li1lKGRcg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU2PR04MB8504

On 18.10.2023 18:07, Roger Pau Monne wrote:
> SAGAW is a bitmap field, with bits 1, 2 and 3 signaling support for 3, 4 and 5
> level page tables respectively.  According to the Intel VT-d specification, an
> IOMMU can report multiple SAGAW bits being set.
> 
> Commit 859d11b27912 claims to replace the open-coded find_first_set_bit(), but
> it's actually replacing an open coded implementation to find the last set bit.
> The change forces the used AGAW to the lowest supported by the IOMMU instead of
> the highest one between 1 and 2.
> 
> Restore the previous SAGAW parsing by using fls() instead of
> find_first_set_bit(), in order to get the highest (supported) AGAW to be used.
> 
> However there's a caveat related to the value the AW context entry field must
> be set to when using passthrough mode:
> 
> "When the Translation-type (TT) field indicates pass-through processing (10b),
> this field must be programmed to indicate the largest AGAW value supported by
> hardware." [0]
> 
> Newer Intel IOMMU implementations support 5 level page tables for the IOMMU,
> and signal such support in SAGAW bit 3.
> 
> Enabling 5 level paging support (AGAW 3) at this point in the release is too
> risky, so instead put a bodge to unconditionally disable passthough mode if
> SAGAW has any bits greater than 2 set.  Ignore bit 0, it's reserved in the
> specification but unlikely to have any meaning in the future.

May be worth mentioning that in earlier versions this indicated 2-level
paging support.

> --- a/xen/drivers/passthrough/vtd/iommu.c
> +++ b/xen/drivers/passthrough/vtd/iommu.c
> @@ -1327,15 +1327,24 @@ int __init iommu_alloc(struct acpi_drhd_unit *drhd)
>  
>      /* Calculate number of pagetable levels: 3 or 4. */
>      sagaw = cap_sagaw(iommu->cap);
> -    if ( sagaw & 6 )
> -        agaw = find_first_set_bit(sagaw & 6);
> -    if ( !agaw )
> +    agaw = fls(sagaw & 6) - 1;
> +    if ( agaw == -1 )

Would you mind making this "< 0" or even "<= 0"? The latter in particular
would already cover the likely future change of dropping the masking by 6.

>      {
>          printk(XENLOG_ERR VTDPREFIX "IOMMU: unsupported sagaw %x\n", sagaw);
>          print_iommu_regs(drhd);
>          rc = -ENODEV;
>          goto free;
>      }
> +    if ( sagaw >> 3 )
> +    {
> +        printk_once(XENLOG_WARNING VTDPREFIX
> +                    "IOMMU: unhandled bits set in sagaw (%#x)%s\n",

I think IOMMU: is redundant with VTDPREFIX (or alternatively iommu->index
would also want logging). Also note that VTDPREFIX (bogusly) has no
trailing space. (I realize both apply to the other log message in context
as well, but still. I'd be inclined to adjust that at the same time,
including switching to %#x as you have it in the new log message.)

> +                    sagaw,
> +                    iommu_hwdom_passthrough ? " disabling passthrough" : "" );

May want a leading comma (or some other separator) in the string.

> +        if ( iommu_hwdom_passthrough )
> +            iommu_hwdom_passthrough = false;

No real need for if() here.

I'd be happy to adjust any of the mentioned items while committing, but
of course I would first need to know which ones you agree with. Since all
of them are cosmetic, either way
Reviewed-by: Jan Beulich <jbeulich@suse.com>

Jan


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 07:44:26 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 07:44:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618950.963317 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtNhe-00074K-Re; Thu, 19 Oct 2023 07:44:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618950.963317; Thu, 19 Oct 2023 07:44: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 1qtNhe-00073O-Oo; Thu, 19 Oct 2023 07:44:22 +0000
Received: by outflank-mailman (input) for mailman id 618950;
 Thu, 19 Oct 2023 07:44: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=in48=GB=bugseng.com=simone.ballarin@srs-se1.protection.inumbo.net>)
 id 1qtNhe-00072w-14
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 07:44:22 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 5095b24e-6e53-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 09:44:21 +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 40C364EE0739;
 Thu, 19 Oct 2023 09:44: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: 5095b24e-6e53-11ee-98d5-6d05b1d4d9a1
Message-ID: <a31140c6-4c2f-4c86-affd-baf0a51a0bb7@bugseng.com>
Date: Thu, 19 Oct 2023 09:44:19 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN PATCH 2/4] automation/eclair: add deviations and call
 properties.
Content-Language: en-US
To: Stefano Stabellini <sstabellini@kernel.org>
Cc: xen-devel@lists.xenproject.org, 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>
References: <cover.1697638210.git.simone.ballarin@bugseng.com>
 <8f426cc761c734d457a74416dd5b83fd10128c26.1697638210.git.simone.ballarin@bugseng.com>
 <alpine.DEB.2.22.394.2310181756410.965337@ubuntu-linux-20-04-desktop>
From: Simone Ballarin <simone.ballarin@bugseng.com>
Organization: BUGSENG
In-Reply-To: <alpine.DEB.2.22.394.2310181756410.965337@ubuntu-linux-20-04-desktop>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 19/10/23 02:57, Stefano Stabellini wrote:
> On Wed, 18 Oct 2023, Simone Ballarin wrote:
>> Deviate violations of MISRA C:2012 Rule 13.1 caused by
>> functions vcpu_runnable and __bad_atomic_size. These functions
>> contain side-effects such as debugging logs, assertions and
>> failures that cannot cause unexpected behaviors.
>>
>> Add "noeffect" call property to functions read_u.*_atomic and
>> get_cycles.
>>
>> Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>
> 
> Acked-by: Stefano Stabellini <sstabellini@kernel.org>
> 
> However one comment below
> 
> 
>> ---
>>   .../eclair_analysis/ECLAIR/call_properties.ecl      | 10 ++++++++++
>>   automation/eclair_analysis/ECLAIR/deviations.ecl    | 13 +++++++++++++
>>   docs/misra/deviations.rst                           | 11 +++++++++++
>>   3 files changed, 34 insertions(+)
>>
>> diff --git a/automation/eclair_analysis/ECLAIR/call_properties.ecl b/automation/eclair_analysis/ECLAIR/call_properties.ecl
>> index 3f7794bf8b..f410a6aa58 100644
>> --- a/automation/eclair_analysis/ECLAIR/call_properties.ecl
>> +++ b/automation/eclair_analysis/ECLAIR/call_properties.ecl
>> @@ -104,3 +104,13 @@ Furthermore, their uses do initialize the involved variables as needed by futher
>>   -call_properties+={"macro(^(__)?(raw_)?copy_from_(paddr|guest|compat)(_offset)?$)", {"pointee_write(1=always)", "pointee_read(1=never)", "taken()"}}
>>   -call_properties+={"macro(^(__)?copy_to_(guest|compat)(_offset)?$)", {"pointee_write(2=always)", "pointee_read(2=never)", "taken()"}}
>>   -doc_end
>> +
>> +-doc_begin="Functions generated by build_atomic_read cannot be considered pure
>> +since the input pointer is volatile."
>> +-call_properties+={"^read_u(8|16|32|64|int)_atomic.*$", {"noeffect"}}
>> +-doc_end
>> +
>> +-doc_begin="get_cycles does not perform visible side-effects "
>> +-call_property+={"name(get_cycles)", {"noeffect"}}
>> +-doc_end
>> +
>> diff --git a/automation/eclair_analysis/ECLAIR/deviations.ecl b/automation/eclair_analysis/ECLAIR/deviations.ecl
>> index fa56e5c00a..b80ccea7bc 100644
>> --- a/automation/eclair_analysis/ECLAIR/deviations.ecl
>> +++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
>> @@ -233,6 +233,19 @@ this."
>>   -config=MC3R1.R10.1,etypes+={safe,
>>     "stmt(operator(and||or||xor||not||and_assign||or_assign||xor_assign))",
>>     "any()"}
>> +#
>> +# Series 13.
>> +#
>> +
>> +-doc_begin="Function __bad_atomic_size is intended to generate a linkage error
>> +if invoked. Calling it in intentionally unreachable switch cases is safe even
>> +in a initializer list."
>> +-config=MC3R1.R13.1,reports+={safe, "first_area(^.*__bad_atomic_size.*$)"}
>> +-doc_end
>> +
>> +-doc_begin="Function vcpu_runnable contains pragmas and other side-effects for
>> +debugging purposes, their invocation is safe even in a initializer list."
>> +-config=MC3R1.R13.1,reports+={safe, "first_area(^.*vcpu_runnable.*$)"}
>>   -doc_end
>>   
>>   -doc_begin="See Section \"4.5 Integers\" of \"GCC_MANUAL\", where it says that
>> diff --git a/docs/misra/deviations.rst b/docs/misra/deviations.rst
>> index 8511a18925..2fcdb8da58 100644
>> --- a/docs/misra/deviations.rst
>> +++ b/docs/misra/deviations.rst
>> @@ -192,6 +192,17 @@ Deviations related to MISRA C:2012 Rules:
>>          See automation/eclair_analysis/deviations.ecl for the full explanation.
>>        - Tagged as `safe` for ECLAIR.
>>   
>> +   * - R13.1
>> +     - Function __bad_atomic_size is intended to generate a linkage error if
>> +       invoked. Calling it in intentionally unreachable switch cases is
>> +       safe even in a initializer list.
>> +     - Tagged as `safe` for ECLAIR.
>> +
>> +   * - R13.1
>> +     - Function vcpu_runnable contains pragmas and other side-effects for
>> +       debugging purposes, their invocation is safe even in a initializer list.
>> +     - Tagged as `safe` for ECLAIR.
> 
> 
> Would it be possible to use SAF instead? If not, this is fine.

Yes, but I do not suggest using SAF comments in these cases.
The SAF should be placed before every non-compliant invocation and not 
only in the declaration, this could cause a lot of SAF comments instead
of a simple deviation.

-- 
Simone Ballarin, M.Sc.

Field Application Engineer, BUGSENG (https://bugseng.com)



From xen-devel-bounces@lists.xenproject.org Thu Oct 19 07:48:37 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 07:48:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618955.963328 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtNle-0008KV-Bj; Thu, 19 Oct 2023 07:48:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618955.963328; Thu, 19 Oct 2023 07:48: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 1qtNle-0008KO-7t; Thu, 19 Oct 2023 07:48:30 +0000
Received: by outflank-mailman (input) for mailman id 618955;
 Thu, 19 Oct 2023 07:48: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=g4nO=GB=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qtNld-0008KI-M9
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 07:48:29 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 (mail-db8eur05on2062f.outbound.protection.outlook.com
 [2a01:111:f400:7e1a::62f])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id e30d4b71-6e53-11ee-9b0e-b553b5be7939;
 Thu, 19 Oct 2023 09:48:27 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS8PR04MB8563.eurprd04.prod.outlook.com (2603:10a6:20b:422::14)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.36; Thu, 19 Oct
 2023 07:48:24 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%7]) with mapi id 15.20.6907.022; Thu, 19 Oct 2023
 07:48: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: e30d4b71-6e53-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=FVrhXRd2s6LQiGvM6aBrUSRPqdCMnfbEepQKMUwZgygzeZc8eRb2BLIi6VoGlUeJjP4KYYdRmepxm+cbPc4mf0jekVQZ1IukdtI5Ah2bvK84uD7l88yfr3BeCBENI2mMWJmMU4EsEcvwepZi9/gHbASj97ZgfX0kq7e1ioYPouMA0OxxTeecGQk2ava3px3X64eXrjuWWVspy3OK/9q0U/KNKnEq8Iv7VTlHhaFjgrw+Pl4DYFxchW16aRJXAOEEQ4E4q9YzpfU9Fuk5DwAN1Yy219GfdT4HX4eFoFzBd5x+7FkwcfI6NIch3GcYdly3nW2Fb1awLJCKfDxhPmCaBQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=AeDL6BkzpG6WN7PmKzsfB5IK1hDEhWpDLBhqUIxE+L8=;
 b=cK6G7JG6b2Fv3HcG1g8a5+/B9wTjY8jas2psXCeckoMSPRnTRR/Lr1A6RHYxYenXtd9p9xlRR8eFNKgW5seIZWE3hzWXS+0fUQvaTmCfdNt7RQbRW6fWRDFTJdyEAZfVbfAmBrb9/n+kvb8tkIAn6pEg2Tqd6FlkOxZpneeuvaWIA4cjcEjjiwVC9Os9TIR4J8krSAT/ulatTVkSmmx6FA7oASoSFozF+iQTq3OZm3mOXlZVTnZNxviKDGVAZtXFAUcjdXDbk0M/qfXUnrFgwn19kNi3liK8+6biZZB4nVy+r8Yi/KQwPTrjP6cbXWqKobnKijCx2+FLb00U9+WURg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=AeDL6BkzpG6WN7PmKzsfB5IK1hDEhWpDLBhqUIxE+L8=;
 b=yXbsYIFPqATBA3vX5rWLmPqw5kXX0jVtGl2N8sim89Ko6aithv6lLG6W2/jou+9TPCuF7a+4LqWs63oPzV3V4o6oinRcDngY0LAtJWhnBgH0pHa4NS6gadUo+Oi2+UuWZIGrFKRuK7aUoK94qQc0PcJWGIlIQcidCN0Z18/Zm6JYA79ACDv4TA2dH3ox79k6tSV3CuopPjG8AdKzOr9U7Zxc+Ig5ksNQ4kQmDeBiOYWNqTNwcdrmy0FCl+QAG2jtTrMDrKKrncl2beFIV5k2KIIWByWr05Iq8whgc4Hfdos6tsX1giwx1ZQlAX2+gyl7hFqSAGVDRULiqssPWmE+0Q==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <c86cb866-b795-b6af-0ad7-38e68c7d35c4@suse.com>
Date: Thu, 19 Oct 2023 09:48: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 v2 00/13] xen/spinlock: make recursive spinlocks a
 dedicated type
Content-Language: en-US
To: Juergen Gross <jgross@suse.com>
Cc: 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>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Paul Durrant <paul@xen.org>, Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Tamas K Lengyel <tamas@tklengyel.com>, Lukasz Hawrylko <lukasz@hawrylko.pl>,
 "Daniel P. Smith" <dpsmith@apertussolutions.com>,
 =?UTF-8?Q?Mateusz_M=c3=b3wka?= <mateusz.mowka@intel.com>,
 xen-devel@lists.xenproject.org
References: <20231013094224.7060-1-jgross@suse.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20231013094224.7060-1-jgross@suse.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0235.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:b2::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_|AS8PR04MB8563:EE_
X-MS-Office365-Filtering-Correlation-Id: 07fa5e2e-7b7a-4b17-1c00-08dbd077c609
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:
	M/t5MKAjtEEv9YJWET3jJIecw30f+2fKMg1zZOZzngbabqNlVStPSSNT+TvO4iLiCtsaa2nxmKbas3X0cfjWGEMP6l2WYriIM5eP6ZkH78NYJh9Hh12mk0QG6a69W/qt8+l0Z9r88C7Kc/+lQTxcpBSmc2IjK7+fyhPKCCiqGEKkk/0AtWEGHWowOgp9u4CXUoAx+MyUZlEetVsMuDiE8co9k5Xz7/XvHToAKnQvK3kmj94FdPL+/aDSLlcG8o53rJzgQLEJVWcljH9VLYrA9NPavIk8n/MdIvitLFUYmpRqBVuftnbCXwqLNQJklzTZhXNvLGxzK9JoCIFrI2BjXhrDtlOrKiEGymi3sabxemGXwaZnTFvvyvHs8laZFdz6wIXVo1pynw/L/64r5s9yaSMbRtUMqGYll7OVXUJaHlvIpQqWQnQTyEszUnwxJDvuaYkvSYfG2cDP1Y7K/ttu5oRrCzeBgnvjTlgUcRsPLKb1ECKP7BDcmIpaDY+gbaOlrnVDK/KHH51zta/6FHGAJobzCmB+BKpmP6H5ubhSeyEWJFyqeWoiXiRfy/Opg5ICgqDfvyWRA3nDXWaZ6jTlSLRMJd2IxApBxUZ3989qNOuDEnxXvovWsCKQoj7HnkzbVZHjbYprvstObbLONlTEaA==
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)(39860400002)(376002)(136003)(346002)(230922051799003)(64100799003)(1800799009)(186009)(451199024)(26005)(478600001)(2616005)(83380400001)(6512007)(6506007)(53546011)(31696002)(86362001)(6486002)(38100700002)(4326008)(8676002)(7416002)(6862004)(2906002)(36756003)(5660300002)(66556008)(66476007)(41300700001)(66946007)(54906003)(8936002)(6636002)(316002)(37006003)(31686004)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?dnpUNjJobXViemRzOEh3a0hiR0ZPbHVIZ0tJSU50aWtjMWtyNk5tSGh1UXBa?=
 =?utf-8?B?dThWaEZOcEJLV2V2R3dhcFJKdG8rcVVtUDhGTGl6MHB4NFlJeWxMZlRNL2Y0?=
 =?utf-8?B?d3ZsMkoxcmdQQVNDKy83Y0tvbVYzMmN0d2ZMeXF3YmRySFpSOVBEWC9LZXBp?=
 =?utf-8?B?U0RLVmFjc3cwR2JvQUg4R3Vob2hhcFB5dDVBZEhSMDZ0VVlCQ1hMeEllV1Zy?=
 =?utf-8?B?Zk03V2pVdXNuRkZTbGYwUWxKTWpkaUNvU3c2SEIvQVVJbEx5VWF0RTR0T0dk?=
 =?utf-8?B?bXZaY1RsYXRBS3ZPaE0zTnJVa2M0TXlSV0s4RHZMRnRQM1o5d2tnOFYwTFlt?=
 =?utf-8?B?NVEzNE1MZE9MU2tUQUtoQkRRVU9XUWV4NUNnWXJKTDJ4Q2ZRZTIvWlA5VVFS?=
 =?utf-8?B?bTN3NGpBS0lhWW1UelE2aUYrYTJqaUFYM3Jhb2NqOWhuai94YzloTlFZNS9J?=
 =?utf-8?B?QnJ6MzhUSWRHcmFWbmRBNVNwUHNFZVZoZE5qQ2lhcVZIQkNQOVRGYThTYi96?=
 =?utf-8?B?ZUNHSXpxMXZGQ2pJaDB4TFFkQnZVOXlrbS85TEpvME9uWTBGWkZkL1hsSTVY?=
 =?utf-8?B?RUlSMVBPZjg3cWNML1loYzV5aVdMVlBtbVduSUtQRjhRdHRRRzN5Ym1yYTJa?=
 =?utf-8?B?Zmh3YXlOdU9CQWVjRzhXOGVicitKMXlyNWVjeTlydzJGOGdoZ2Y0bHRJWHFD?=
 =?utf-8?B?TTMrNVhKMENoWW1oNlZMNUxDdzRGWndzVzRlVlQvTzBHZFdJOG1BMldTZ3VD?=
 =?utf-8?B?R1VlVFlETmRERE1tMEYybVZ3c1gxOHhCYUZOcTFoL0sxRldTcG1QdHNUME9E?=
 =?utf-8?B?eFMxYzc5MHlNaC9hUWNtOWg0NW1WVE8yZTlTVzZrL1BtVytJWGVrSVc3VW1M?=
 =?utf-8?B?bzJGbFNnWGdYa2pwK0lialdXUVRxdTZBejdHelVKRUR0MDgvTFRKeTNQTWx6?=
 =?utf-8?B?NUV2aXEvMXY2UzlmTVV5UlRTdWZ0NUcrd3B6TTVWMmdCeDhHVXNkTTlSL21Y?=
 =?utf-8?B?eC96T21QMXB3M0JoaEhUSHdzL3FsMVJWVlovUmRuYzBlZUZmc0FBaXVqdGRX?=
 =?utf-8?B?L1dlM2piK1pIazlTRlJUb3RVVWt2eFpuV2Y3akZwR3hBWVVmY3JWTUl3Y1NR?=
 =?utf-8?B?WnBxQUx3bTVXeFdXV3padXgxck5BUHFyOCs4aFo2aHFqMFVZNWMrNlduVjRW?=
 =?utf-8?B?Z0tNb0luU1k3NXRGaU5jUVJhYk82NTVpZTlUNW9DR0ZudHN3Q1pMNVF0bkFq?=
 =?utf-8?B?OFFGVGRGZGk1bkxNeWE2T0V1RDRuc3AzWVlqM1kzOUpnT3hQaXJDbFhGYlZX?=
 =?utf-8?B?OWFBbXVMbW1YQTlMdUM4VlRZMWh0NXowNjE1MmsxR2g4K1MxTXFDeURad3BN?=
 =?utf-8?B?dHRzYTBaQmxDVEhzR3FXRW9UbnlheTNyUkg2MmxkUkxucXFYSVQ1cFNnRytO?=
 =?utf-8?B?RUtINUptb1VWckhPWjhYYXpvSW9CWTg3YjUwODYrYmlIemN3dnZFWjFxU3ZE?=
 =?utf-8?B?emlJVk82SWQyMEN3dGtKTmxRN2FGNnVOVFVZeXpXbDRmVlpVdEFWTU4zM2Vv?=
 =?utf-8?B?eTdpaWw4RG1WdTJ1Vy9BbURkMHNhMHNuY1diNkpYcWp1TGFlTFl2dWVpZ3pH?=
 =?utf-8?B?Ym4zdWtPTEVCcEhubzdtdmo0eHRhY0ZadWxqdDUwVWdtdENmblNNbUxzK1FF?=
 =?utf-8?B?Y1ptTmFQSlo5QjJzQWdFeGw0UVhNbnA1U2QyZzBRdTlIMkphc3ROTmsrYWJW?=
 =?utf-8?B?by9iYmpBemNoVjJRQ043UlJpNGNMcXh3cFd6c1dFRkV1NEpMNkNzdnd2a1Er?=
 =?utf-8?B?dENTVXVyL1ZwYWZJYXRURW1wM1E2TVdPcnZqSlhlSTkrS3FWTlBmeGlmbVZL?=
 =?utf-8?B?WHFuQ1NXM21XOWxQKzY0ZG9LeFE3N1VTa2dha3FIb09DK2xDSUpqaEdKRVo1?=
 =?utf-8?B?RHlmNTNiS1FUMEhrcmEyZ3p1RGFuR1pEYngydDYwd2RnOFdzY25hVVdaVXB5?=
 =?utf-8?B?S1ZVMEU5UG45N1FoenpHR0h3SjlQTTBheG5jbzREMTJaeWl5aU9BbHoySUFH?=
 =?utf-8?B?K3k1NHBmUTNZUTQ2dXhEdlBLZnpQN1hmVmd3YlovVmFPempIcVE4bDFDOURS?=
 =?utf-8?Q?lssBBrHrhbThsb1xzl1xNU7Jj?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 07fa5e2e-7b7a-4b17-1c00-08dbd077c609
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Oct 2023 07:48:24.7137
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: HejUWvxX9pcLYCnup74lgCVMg4UgyD2hTk21F75w6Ul/RHpuNay/Jx7iP1p70HgC1Bf/NDS2mGkVO4i6qYsBwQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB8563

On 13.10.2023 11:42, Juergen Gross wrote:
> Instead of being able to use normal spinlocks as recursive ones, too,
> make recursive spinlocks a special lock type.
> 
> This will make the spinlock structure smaller in production builds and
> add type-safety.
> 
> This allows to increase the maximum number of physical cpus from 8191
> to 65535 without increasing the size of the lock structure in production
> builds (the size of recursive spinlocks in debug builds will grow to
> 12 bytes due to that change).
> 
> Changes in V2:
> - addressed comments by Jan Beulich
> - lots of additional cleanups
> - reorganized complete series
> 
> Juergen Gross (13):
>   xen/spinlock: fix coding style issues
>   xen/spinlock: reduce lock profile ifdefs
>   xen/spinlock: make spinlock initializers more readable
>   xen/spinlock: introduce new type for recursive spinlocks
>   xen/spinlock: rename recursive lock functions
>   xen/spinlock: add rspin_[un]lock_irq[save|restore]()
>   xen/spinlock: make struct lock_profile rspinlock_t aware
>   xen/spinlock: add explicit non-recursive locking functions
>   xen/spinlock: add another function level
>   xen/spinlock: add missing rspin_is_locked() and rspin_barrier()
>   xen/spinlock: split recursive spinlocks from normal ones
>   xen/spinlock: remove indirection through macros for spin_*() functions
>   xen/spinlock: support higher number of cpus

Before looking at patches 4 and onwards, I'd like us to settle on the future
of recursive locking in Xen, considering in particular Andrew's objections
to their use in the code base. If the plan was to eliminate them, I'd see
little point in reworking the infrastructure. I'd like to suggest that one
of us tries to remember to put this up as an agenda item for the next
Community Call. But of course the discussion can also happen right here; I
merely expect there might not be much of a reaction.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 07:55:37 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 07:55:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618958.963337 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtNsR-00028m-0r; Thu, 19 Oct 2023 07:55:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618958.963337; Thu, 19 Oct 2023 07: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 1qtNsQ-00028f-UT; Thu, 19 Oct 2023 07:55:30 +0000
Received: by outflank-mailman (input) for mailman id 618958;
 Thu, 19 Oct 2023 07:55: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=cQIi=GB=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qtNsP-00028Z-CD
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 07:55:29 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id ddf43a1a-6e54-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 09:55:27 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id 5740E4EE0739;
 Thu, 19 Oct 2023 09:55: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: ddf43a1a-6e54-11ee-98d5-6d05b1d4d9a1
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>,
	George Dunlap <george.dunlap@citrix.com>,
	Julien Grall <julien@xen.org>,
	Wei Liu <wl@xen.org>
Subject: [XEN PATCH][for-4.19 v4] xen: address violations of Rule 11.9
Date: Thu, 19 Oct 2023 09:55:22 +0200
Message-Id: <b8a82daf5862287bda9545d7e672ce98e49004a2.1697701358.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The constant 0 is used instead of NULL in '__ACCESS_ONCE' as a
compile-time check to detect non-scalar types; its usage for this
purpose is deviated.

Furthermore, the 'typeof_field' macro is introduced as a general way
to access the type of a struct member without declaring a variable
of struct type. Both this macro and 'sizeof_field' are moved to
'xen/macros.h'.

No functional change intended.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
Reviewed-by: Jan Beulich <jbeulich@suse.com>
Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
---
Changes in v2:
- added entry in deviations.rst
Changes in v3:
- dropped access_field
- moved macro to macros.h
---
Changes in v4:
- Amend deviation record.
---
 automation/eclair_analysis/ECLAIR/deviations.ecl |  9 +++++++++
 docs/misra/deviations.rst                        |  6 ++++++
 xen/include/xen/compiler.h                       |  8 --------
 xen/include/xen/kernel.h                         |  2 +-
 xen/include/xen/macros.h                         | 16 ++++++++++++++++
 5 files changed, 32 insertions(+), 9 deletions(-)

diff --git a/automation/eclair_analysis/ECLAIR/deviations.ecl b/automation/eclair_analysis/ECLAIR/deviations.ecl
index fa56e5c00a27..28d9c37bedb2 100644
--- a/automation/eclair_analysis/ECLAIR/deviations.ecl
+++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
@@ -246,6 +246,15 @@ constant expressions are required.\""
   "any()"}
 -doc_end

+#
+# Series 11
+#
+
+-doc_begin="This construct is used to check if the type is scalar, and for this purpose the use of 0 as a null pointer constant is deliberate."
+-config=MC3R1.R11.9,reports+={deliberate, "any_area(any_loc(any_exp(macro(^__ACCESS_ONCE$))))"
+}
+-doc_end
+
 #
 # Series 13
 #
diff --git a/docs/misra/deviations.rst b/docs/misra/deviations.rst
index ee7aed0609d2..81a924612ddf 100644
--- a/docs/misra/deviations.rst
+++ b/docs/misra/deviations.rst
@@ -199,6 +199,12 @@ Deviations related to MISRA C:2012 Rules:
        See automation/eclair_analysis/deviations.ecl for the full explanation.
      - Tagged as `safe` for ECLAIR.

+   * - R11.9
+     - __ACCESS_ONCE uses an integer, which happens to be zero, as a
+       compile time check. The typecheck uses a cast. The usage of zero or other
+       integers for this purpose is allowed.
+     - Tagged as `deliberate` for ECLAIR.
+
    * - R13.5
      - All developers and reviewers can be safely assumed to be well aware of
        the short-circuit evaluation strategy for logical operators.
diff --git a/xen/include/xen/compiler.h b/xen/include/xen/compiler.h
index dd99e573083f..a8be1f19cfc2 100644
--- a/xen/include/xen/compiler.h
+++ b/xen/include/xen/compiler.h
@@ -109,14 +109,6 @@

 #define offsetof(a,b) __builtin_offsetof(a,b)

-/**
- * sizeof_field(TYPE, MEMBER)
- *
- * @TYPE: The structure containing the field of interest
- * @MEMBER: The field to return the size of
- */
-#define sizeof_field(TYPE, MEMBER) sizeof((((TYPE *)0)->MEMBER))
-
 #if !defined(__STDC_VERSION__) || __STDC_VERSION__ < 201112L
 #define alignof __alignof__
 #endif
diff --git a/xen/include/xen/kernel.h b/xen/include/xen/kernel.h
index 46b3c9c02625..2c5ed7736c99 100644
--- a/xen/include/xen/kernel.h
+++ b/xen/include/xen/kernel.h
@@ -51,7 +51,7 @@
  *
  */
 #define container_of(ptr, type, member) ({                      \
-        typeof( ((type *)0)->member ) *__mptr = (ptr);          \
+        typeof_field(type, member) *__mptr = (ptr);             \
         (type *)( (char *)__mptr - offsetof(type,member) );})

 /*
diff --git a/xen/include/xen/macros.h b/xen/include/xen/macros.h
index d0caae7db298..457c84b9d1a0 100644
--- a/xen/include/xen/macros.h
+++ b/xen/include/xen/macros.h
@@ -54,6 +54,22 @@

 #define ARRAY_SIZE(x) (sizeof(x) / sizeof((x)[0]) + __must_be_array(x))

+/**
+ * typeof_field(type, member)
+ *
+ * @type: The structure containing the field of interest
+ * @member: The field whose type is returned
+ */
+#define typeof_field(type, member) typeof(((type *)NULL)->member)
+
+/**
+ * sizeof_field(type, member)
+ *
+ * @type: The structure containing the field of interest
+ * @member: The field to return the size of
+ */
+#define sizeof_field(type, member) sizeof(((type *)NULL)->member)
+
 #endif /* __ASSEMBLY__ */

 #endif /* __MACROS_H__ */
--
2.34.1


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 07:56:28 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 07:56:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618961.963348 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtNtM-0002x7-AI; Thu, 19 Oct 2023 07:56:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618961.963348; Thu, 19 Oct 2023 07:56: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 1qtNtM-0002x0-7J; Thu, 19 Oct 2023 07:56:28 +0000
Received: by outflank-mailman (input) for mailman id 618961;
 Thu, 19 Oct 2023 07:56: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=7/TV=GB=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qtNtK-0002wm-S9
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 07:56:26 +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 00961b57-6e55-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 09:56:25 +0200 (CEST)
Received: by mail-wr1-x42d.google.com with SMTP id
 ffacd0b85a97d-31c5cac3ae2so6516209f8f.3
 for <xen-devel@lists.xenproject.org>; Thu, 19 Oct 2023 00:56:25 -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
 d8-20020a5d5388000000b0032da8fb0d05sm3804977wrv.110.2023.10.19.00.56.24
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Thu, 19 Oct 2023 00:56: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: 00961b57-6e55-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1697702185; x=1698306985; darn=lists.xenproject.org;
        h=content-transfer-encoding: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=fE8Nf7x8RRI+OI25jOOfzdmfK7poX9Ji/hlUQN1g50c=;
        b=vPeQ72qbJFAKJqxpbrZaswVI+n7pVa07E9svsU1Ydwjk4KK/N5uDjNPNcstFyq9daG
         hgJN/Jb0T1nJkXuIkshjRQXJPtOfhlDd7KXZbNCCz0/2msUdGOXsHa5aQd4tLO3y9tvT
         3rOXcJ6uTWbSLkpQ8IU8PbpxLpqekT5XkzRFA=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697702185; x=1698306985;
        h=content-transfer-encoding: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=fE8Nf7x8RRI+OI25jOOfzdmfK7poX9Ji/hlUQN1g50c=;
        b=RIUORogjGx8t58nqaRzF7QkSDGAUN6n1nH4KIIV1YL15B0j8WQdv3hj3Q70dZVkw0G
         k6lVVJ7R1mjqKTuM4TCZUYFxnPvQl2d7rtq9kiD7hZnMbNhz6fk25BLH5SfUZkr5V2FI
         L9TmHyqM9MwngzzG+2Lxms9qr3+axfp014MWlzm4pMs2I+uRFwOs1eRaFndYQjopexK+
         eb7UfgP2k2mpTOoDNbAYK72cj/cETHKCFoYlqXeEiG/QIoFx8BKSHBjs2mt7ZTSLVNHz
         k5kuMXp1Q1hs8A8tGiE6x67BTVu8tHOdPIbg1wgnS4qOMbvV011EeoSa5ZOL2c59PzW7
         mTzw==
X-Gm-Message-State: AOJu0YxHiUaie7y8ofk2qR4lM3WmebYiLOfX7oTtbr+SxTUUMNTOTNLH
	Mj6lSRbwBUSscSFspf6j/yDCuQ==
X-Google-Smtp-Source: AGHT+IFMkFDNM7o7SXXAlhOHdaXDAfBGvOrcy+utRRulLGhIgmsFg47zFN+of+ZnW+MUrT8AasD7LQ==
X-Received: by 2002:a5d:6349:0:b0:32d:8108:504 with SMTP id b9-20020a5d6349000000b0032d81080504mr1060062wrw.61.1697702185191;
        Thu, 19 Oct 2023 00:56:25 -0700 (PDT)
Message-ID: <6f107d27-f5f2-4e8c-b029-dd25c8d3c678@citrix.com>
Date: Thu, 19 Oct 2023 08:56:24 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
From: andrew.cooper3@citrix.com
Subject: Re: [XEN PATCH][for-4.19 v3] xen: address violations of Rule 11.9
Content-Language: en-GB
To: Stefano Stabellini <sstabellini@kernel.org>
Cc: 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,
 jbeulich@suse.com, roger.pau@citrix.com,
 Simone Ballarin <simone.ballarin@bugseng.com>,
 Doug Goldstein <cardoe@cardoe.com>, George Dunlap
 <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Wei Liu <wl@xen.org>
References: <d760ef0c088dc15ecc411b83640735123444f887.1697636446.git.nicola.vetrini@bugseng.com>
 <35abc556-2f66-4498-b567-87e6a3216d50@citrix.com>
 <alpine.DEB.2.22.394.2310181745300.965337@ubuntu-linux-20-04-desktop>
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: <alpine.DEB.2.22.394.2310181745300.965337@ubuntu-linux-20-04-desktop>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 19/10/2023 1:54 am, Stefano Stabellini wrote:
> On Thu, 19 Oct 2023, andrew.cooper3@citrix.com wrote:
>> On 18/10/2023 2:42 pm, Nicola Vetrini wrote:
>>> diff --git a/docs/misra/deviations.rst b/docs/misra/deviations.rst
>>> index ee7aed0609d2..1b00e4e3e9b7 100644
>>> --- a/docs/misra/deviations.rst
>>> +++ b/docs/misra/deviations.rst
>>> @@ -199,6 +199,11 @@ Deviations related to MISRA C:2012 Rules:
>>>         See automation/eclair_analysis/deviations.ecl for the full explanation.
>>>       - Tagged as `safe` for ECLAIR.
>>>  
>>> +   * - R11.9
>>> +     - __ACCESS_ONCE uses a 0 as a null pointer constant to check if a type is
>>> +       scalar, therefore its usage for this purpose is allowed.
>> This is still deeply misleading.
>>
>> There is an integer, which happens to be 0 but could be anything, used
>> for a compile time typecheck[1].  In some cases this may be interpreted
>> as a pointer constant, and is permitted for this purpose.
>>
>> ~Andrew
>>
>> [1] I know I wrote scalar typecheck in the comment, but I suspect that
>> what I actually meant was non-compound-type typecheck.
> To help Nicola find the right wording do you have a concrete suggestion
> for the text to use?
>
> Reading your reply, I am guessing it would be:
>
> * - R11.9
>   - __ACCESS_ONCE uses an integer, which happens to be zero, as a
>     non-compound-type typecheck. The typecheck uses a cast. The usage of
>     zero or other integers for this purpose is allowed.
>
> Andrew, please confirm? Nicola, please also confirm that this version of
> the text would be suitable for an assessor.

Yes, that paragraph was intended as a specific suggestion, but I see I
did miss __ACCESS_ONCE() off the start.  Sorry.

And yes - we should probably just leave it as "a compile time
typecheck".  Anything more specific isn't relevant here, and isn't
trivial to describe either.

~Andrew


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 08:05:00 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 08:05:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618969.963358 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtO1T-0005Kw-Ja; Thu, 19 Oct 2023 08:04:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618969.963358; Thu, 19 Oct 2023 08:04: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 1qtO1T-0005Kp-Gm; Thu, 19 Oct 2023 08:04:51 +0000
Received: by outflank-mailman (input) for mailman id 618969;
 Thu, 19 Oct 2023 08:04: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=cQIi=GB=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qtO1S-0005KT-JE
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 08:04:50 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 2bb3d506-6e56-11ee-9b0e-b553b5be7939;
 Thu, 19 Oct 2023 10:04:47 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id EBC2C4EE0739;
 Thu, 19 Oct 2023 10:04: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: 2bb3d506-6e56-11ee-9b0e-b553b5be7939
MIME-Version: 1.0
Date: Thu, 19 Oct 2023 10:04:47 +0200
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: Stefano Stabellini <sstabellini@kernel.org>, michal.orzel@amd.com,
 xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, consulting@bugseng.com,
 andrew.cooper3@citrix.com, roger.pau@citrix.com, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
Subject: Re: [XEN PATCH v2 3/7] x86: add deviation comments for asm-only
 functions
In-Reply-To: <94f59896-5182-c711-98d7-dcecf6073201@suse.com>
References: <cover.1696833629.git.nicola.vetrini@bugseng.com>
 <6476706490cc15406bcf3377a57b7c4a303c4901.1696833629.git.nicola.vetrini@bugseng.com>
 <741e81bc-050c-a773-e622-997b6c0b8335@suse.com>
 <alpine.DEB.2.22.394.2310161520180.965337@ubuntu-linux-20-04-desktop>
 <dd3534dd-29b0-129d-9f34-b542ed3ffabc@suse.com>
 <alpine.DEB.2.22.394.2310181703170.965337@ubuntu-linux-20-04-desktop>
 <94f59896-5182-c711-98d7-dcecf6073201@suse.com>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <e723c1aad066436f701f284ada836f1f@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


>> - vmx_asm_vmexit_handler
>> 

Isn't this just a declaration:

void nocall vmx_asm_vmexit_handler(void);

while the function to be deviated is this:

void vmx_vmexit_handler(struct cpu_user_regs *regs)

Am I correct?

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


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 08:15:53 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 08:15:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618976.963367 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtOC2-0008FQ-FD; Thu, 19 Oct 2023 08:15:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618976.963367; Thu, 19 Oct 2023 08:15: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 1qtOC2-0008FJ-CW; Thu, 19 Oct 2023 08:15:46 +0000
Received: by outflank-mailman (input) for mailman id 618976;
 Thu, 19 Oct 2023 08:15: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=Zn2w=GB=citrix.com=prvs=649eed31f=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qtOC1-0008FD-LR
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 08:15:45 +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 b0c96220-6e57-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 10:15:42 +0200 (CEST)
Received: from mail-mw2nam10lp2101.outbound.protection.outlook.com (HELO
 NAM10-MW2-obe.outbound.protection.outlook.com) ([104.47.55.101])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 19 Oct 2023 04:15:33 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by CH3PR03MB7481.namprd03.prod.outlook.com (2603:10b6:610:19a::10)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.8; Thu, 19 Oct
 2023 08:15:27 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::17e3:6cff:b087:fc64]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::17e3:6cff:b087:fc64%4]) with mapi id 15.20.6886.034; Thu, 19 Oct 2023
 08: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: b0c96220-6e57-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1697703342;
  h=date:from:to:cc:subject:message-id:references:
   in-reply-to:mime-version;
  bh=9A/FDpwCBRXR4SYaIbUSDk+/wUUKA4XFTt15ytapKBU=;
  b=AHbYQVbzEKx8hsVtG3TDSfVJQZyr3qMT0zc5jOhtLzZ87y2T0btM3UHX
   Jj4YAC0g6cfMuFCBerCdBNx8GgNYIOb0ecLxLiK4MZwGlbb/mjiOnV+PS
   mfdnmIOtx0kT+BQ/foj9kbsjLpoFwXDTtxDNX0nFZjzmXlMxuAfmhaIMI
   I=;
X-CSE-ConnectionGUID: 9qfAUeBQTWiOrtZsAaFEUg==
X-CSE-MsgGUID: B54AY5OvRDWH5EZsorEoeA==
X-IronPort-RemoteIP: 104.47.55.101
X-IronPort-MID: 125276395
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:4YgE4KOOaoanflvvrR1hlsFynXyQoLVcMsEvi/4bfWQNrUor1j0Gz
 2oeWTvXO6vZMWKkfIwladm38kgOsJXXzIJhSQto+SlhQUwRpJueD7x1DKtS0wC6dZSfER09v
 63yTvGacajYm1eF/k/F3oDJ9CQ6jefQAOOkVIYoAwgpLSd8UiAtlBl/rOAwh49skLCRDhiE/
 Nj/uKUzAnf8s9JPGjxSs/nrRC9H5qyo42pA5wxmPpingXeF/5UrJMNHTU2OByOQrrl8RoaSW
 +vFxbelyWLVlz9F5gSNy+uTnuUiG9Y+DCDW4pZkc/HKbitq/0Te5p0TJvsEAXq7vh3S9zxHJ
 HehgrTrIeshFvWkdO3wyHC0GQkmVUFN0OevzXRSLaV/ZqAJGpfh66wGMa04AWEX0rduD0hz+
 NYhFA8MSQqftfmfyZyWd+Y506zPLOGzVG8ekldJ6GiBSNMZG9XESaiM4sJE1jAtgMwIBezZe
 8cSdTtoalLHfgFLPVAUTpk5mY9EhFGmK2Ee9A3T+PdxujCKpOBy+OGF3N79YNuFSN8Thk+Fj
 mnH4374ElcRM9n3JT+tqyjx3LCRxnKmMG4UPJflqtdb3XqN/EAsKEA7Z0C8u9S+h2frDrqzL
 GRRoELCt5Ma9kamU938VB2Qu2Ofs1gXXN84O8037hucjJXd5QmxD3IBCDVGbbQOt8IoRDpsy
 l6AmfvoAyBitPueTnf13qeZq3a+NDYYKUcGZDQYVk0V7t/7uoYxgxnTCNF5H8aIYsbdHDjxx
 3WPs3I4jrBK1coTjfzjpBbAni6moYXPQkgt/ALLU2m57wR/Iom4e4iv7lud5vFFRGqEcmS8U
 LE/s5D2xIgz4VulzURhnM1l8GmV2su4
IronPort-HdrOrdr: A9a23:FD8A36pG7C2KW63RD9UJfCQaV5pIeYIsimQD101hICG9E/b5qy
 nKpp8mPHDP5Qr5NEtLpTniAsi9qA3nmqKdiLN5VYtKNzOLhILHFu9f0bc=
X-Talos-CUID: =?us-ascii?q?9a23=3AcZL7Cmpgwu4sfdee1TFXHNzmUZE8fFTgwV3pH3C?=
 =?us-ascii?q?5Lnx1eqa8QHG9xawxxg=3D=3D?=
X-Talos-MUID: 9a23:ptKppQbNWWC5RuBTnWKwrQA/E9lSz5uOVW0/ipIcls6JHHkl
X-IronPort-AV: E=Sophos;i="6.03,236,1694750400"; 
   d="scan'208";a="125276395"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ZznVT4fLJ20z/K2A6R7omFadBXUPzawXBa6Zshhza4yQt2YpqP/ubPu7wqS2Lx52zLfRN/EeLpmCI9upsmfK20rmm6BgjzUSFB5sGimifb7Xt0Y2FEKJ3AaaYqjFfYDJSpNhgDmfpFfSgU+cRyayBK39WtWoImMFB0WGr5c29WnvqXSmJ18ITxWeVpinETYIycuRHkzLDv4WcGUG0bECCE0xSztk9HceWqDBbVp03D6+Iu+ETrq88RBQW5HGjuiKWBKG4QU+4JxITVIoiQrrJ9eZ6/X6gSax8vEn2t8wrbOgCbBOyfPqZuFFtT5sHOVV8/qito4hloQWpnoz+USC9Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=Jvos5fguPvWUro2R8PFeK+E4zfH73B+XhM/AMdCEFiM=;
 b=cmnmxfN1+EKC3PK2c6S44JHKP7ujJUDbT9NstNH9JucvAe3FdxXegSplow2DAZXvJOzKKlk8hJTfD2JPVE8MDMV+iJnF/zVI2QYRoNCustl5riJw+x8XjhRki2VL8PyRLhS25SOT4LLaoaHx0E8V9+01m2VMxJDPhpupJpMwJXNQ8b1813V+aOHGnB7vXntewXiaUaRTe+6Ff7D0bvTc2RCDj8WWq946YYRJkUeNkIpe3vW87OtN/UwBuclNHoJ1XQNBu1Al0O4Z6Gds5TiUGwLgMlncj9CBvJb5CoflaMal4UNtVWN9EQKuydhDccRqGwjL8QO92h2NRQHOMhTYjA==
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=Jvos5fguPvWUro2R8PFeK+E4zfH73B+XhM/AMdCEFiM=;
 b=MUw0ofBnmGrqE2vyPCruE/yHt5YkKtIEEgswZctMz52KJsThXBOJzyoeaMN4UzMUM4aQj6lADpzz8RHpXck9153Mq2RAebHq1Q498yUrJZOyViBuo9jbsA8uUiEQj8MqKMGFS3cVtsb3ezwgsICKU1R7+/d6iNmsC2AM0S3d/uQ=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Thu, 19 Oct 2023 10:15:23 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: Henry Wang <Henry.Wang@arm.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	Kevin Tian <kevin.tian@intel.com>, xen-devel@lists.xenproject.org
Subject: Re: [PATCH for-4.18 v2] iommu/vt-d: fix SAGAW capability parsing
Message-ID: <ZTDlm_msZrFlhubr@macbook>
References: <20231018160733.24655-1-roger.pau@citrix.com>
 <709ade00-9112-2866-4d2b-3bb718b13b46@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <709ade00-9112-2866-4d2b-3bb718b13b46@suse.com>
X-ClientProxiedBy: MR1P264CA0106.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:501:50::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_|CH3PR03MB7481:EE_
X-MS-Office365-Filtering-Correlation-Id: db31dd48-34c5-4d8c-58e2-08dbd07b8d01
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:
	/pKpb8CTcNTR31JitnM1VghlrjoRp3Sk5CIQwFQHp0M4crIJa+Wa8uemaTWxOEOHVyTlM9CRL/ZSqf91R3vqJhqwA/by/Et/hdOlHpfl6XB1ZrHMSnmVThn0kK2LPNj2kRV19HNSFa9oKbNPC3Fj27Zl/aqFOG4CO2JARUbWcqarHnTwq88kNgjKDnUM7ZnAScpsN1Qtns1lA3sUlaDwMZDR56u4zZdj1j5yTw5Pou9ZfMXYsiINix7bWBjQdUOC8MWwzZRPlyaD5aSGhcWQeUpXlnbVh4LIggzlxdP00yl2YQwFIsLqM0HQ5MIY69GnBUh6HcM7iTATl6QILzznP2gbhQuVtUeskYuhrI6VYbBw83x2Vj1rn8btE1XJfHcvn3bT9G/Pu9abbCE/Fz20yVzax8X8UVbLBUsj6Q0LpuRe4ymTjPqT9RqXai6VHVODE8PBe+7VW4uGyo0kmIgAPF+65yrX28gJOY2ojfuKjSrromaHikYBKphLDErgugVObsKFzdx8SwSVCgiyKtEve7Z/nnJEduLfmjRzg/4/EfeoY0wz6oDq4eaxGDb7AHK6
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)(39860400002)(346002)(376002)(136003)(230922051799003)(451199024)(186009)(1800799009)(64100799003)(2906002)(6666004)(54906003)(66946007)(66476007)(66556008)(316002)(478600001)(8936002)(6916009)(85182001)(6486002)(8676002)(41300700001)(4326008)(86362001)(5660300002)(6506007)(38100700002)(53546011)(9686003)(83380400001)(26005)(6512007)(82960400001)(33716001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?OGJ1dVlPMzBvRDUzV0xKNjRVSFBkY1FQSkx1YW5FMW1HK0I2dmVZYlY0Nlpl?=
 =?utf-8?B?REZNSDYyZ0xhNlhvaE5oZ1BTUEp1TTJ2Wm10MGVLME8vblBxVktvdmFBUVJ2?=
 =?utf-8?B?SjBBam5QVTlIZmdXeTluNG90ZWpTaVpRSG94U3IzVVRSamZCREh0KytpcmdI?=
 =?utf-8?B?R0xOdTJBSDVFMFQ4eWJXR283RFR6T1dsd3JaVWJaOUxVUU9Vak95WGdKY00v?=
 =?utf-8?B?MTM3cGVncFpEd3VqcG9va2lMei85YTBidCtUUkVNajJEL0Y5allScG95TGpI?=
 =?utf-8?B?bTk1bENGcEZFMC9LUmdvMzJCczZEY1FsNXROZHNPUTFQSWFma3dBc3YvbTk2?=
 =?utf-8?B?SndEOE16ejRpTDlYRHk2bnRwNjJuSEJ4YlJJWFlXdks2a2xXKzF5TVpYUEp4?=
 =?utf-8?B?WG4rVmVvNGh2cTVLUzhOTWNveVliMzhBQjk0U2R6dGpRTGdoVUZKRFhKRTFx?=
 =?utf-8?B?dTRYVy9HQWJXYmRvM1ArWVQ2WDlST3MrMHJxNFYwYXRBZEVIQUI4a3dxRkhZ?=
 =?utf-8?B?VzZTb3B0L09BMEJ6RGVrTWhDbWV1em1XUGM1ZnFRbWdla2dOMlU4WFdIazdW?=
 =?utf-8?B?cjhCK0NiRVhGWndQM2ZuNVVGMjZDSVJZeDJNTlQ0Y0lic0ZwMmZIN2VYNHd6?=
 =?utf-8?B?ODJ1ZkhvYjJoNGt5MVlqSFE4KzIrbDhGOTF2WGxuQzgrSEcyblNwOStIQUtL?=
 =?utf-8?B?ZmZEUFYxeXVoRlVqcENMQXBtWmR0TjRpbGFIa3VyWmZqMFowaXRjempzdTJ5?=
 =?utf-8?B?azRTWThjNVAyMkNWamw0NUh6NjVSUE11ZTZuYldWdmwvbGZzZlVmejFndmlZ?=
 =?utf-8?B?NWoxNUVXZVJOaVRvT21yRXZDOHBZa1pCUmx5OTlTbkIrdnNwOWVKMW5icDgx?=
 =?utf-8?B?R1FoNThCVzRiS05yMDBQbVdDdHpPNmEwY1l6aTNGMktUM2F3OVM5N0Vwa0VQ?=
 =?utf-8?B?SlMxRHdMK3NmTStjMUV0T1A3dkdjNWZVVTNRN3RiK1RpOEREZ3U3d0FCVTBl?=
 =?utf-8?B?bERVa1RNSytQOTMrNTNNUlNXaEdkNkRPNE5VemFvNGlLUzlaalZTa012RE9G?=
 =?utf-8?B?NkVTQ0JHTFdwQVdIUm0vZGZkUlZtV0NDMC9ZOTZlMVdBUml6aldzL0l3V2V5?=
 =?utf-8?B?T0orWjEwMlZ6SmFJRWRyUFZCKzJsTHVFNFZQRXJDNnpIcHphNFVHL0hGWUFq?=
 =?utf-8?B?ZUY2U0VodnhRT21nY1cwbW9GV3BRWlNyWTZ4ZnViTjR6WTdlQ05OaERuNzNs?=
 =?utf-8?B?RjVGOUpDNWp5aTNzV1ZLQ3V4V25DMlRtR2ljM2liUkJhaUE1SmxSUFJVMnk1?=
 =?utf-8?B?Yk5aL3RxMnkyOE84UldQNXdLZytQSzl3M0dpWEZsV2JxdFR3ZHowejZ0S052?=
 =?utf-8?B?SVZkY3ROa1dsdjlBQllCTFhSemNzSExOUExFZk0xWXpqN1RENHR3dWpFdWRR?=
 =?utf-8?B?d1lHaFNTbVNJZWF4U3BNbUJESWdxYi9hSnZ4NjhDMGd1UWYzVUJnK0IwSzFz?=
 =?utf-8?B?c2RPWjNDaExRcnR6NkFSdjdKc0tEeVpKRFYyQlpLd3RDaFpHMVJWL3JtN2kz?=
 =?utf-8?B?NGRkeGdsQmVIeVZWbUM3TktuOUJDM0ZXV29ML3pvdTQ2STcvc3NqcTRxb3dL?=
 =?utf-8?B?VG5ZK3VZUlU1UUlWanlsdDEzM1hnWnp4L2JvQkgwRGVLMXAxZnQ5VjR1ekxy?=
 =?utf-8?B?TlFEVGVhMWpRRWtLSUw1TnNqaXhMOHhxWDVRNWpSMDdwcVA3NEFFTlh6K28w?=
 =?utf-8?B?N2g3cThOL29CZU5LK01nTkprL0xVd2hVcWEyN2JBKzk5U2o0SHVhbGRWa0dz?=
 =?utf-8?B?YlZSQUFTU0V4MVY0aVZDNTFsRlZHVWJ3Szl3NU4xcHZCK25Qc1UvSGd3NWl5?=
 =?utf-8?B?T2gzeXo5ZUlXQ1NXeDhBUGZENDdiRjEzNFNOZ3UxTzVRYnF4Z2N1bmxFYXBH?=
 =?utf-8?B?QVdGSEZRVlZVQXJ3cFEvM2N1VVJYdm9SYWQ5WTBuMlR3M1RSWndJYkt5SU5q?=
 =?utf-8?B?VlNqWmxCNit1d2JyZm9TUExiei9GZ013YVNQTGhzc2ZKZ0dmNU0xdThLK2JS?=
 =?utf-8?B?OHNma3pjYlErQ2syNVZZMytPQzNacm9GQU13cjBUbXFTZUZHVTMwT2YvU0FS?=
 =?utf-8?Q?/4fLhuXCKOqckczUcroCxKBAH?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	hkMD7olAgm5F/QyyM6s5husQrDi51S3dNmEnsclAk9oioRWxnDmQ5Ulxxio83zmbjg9haKtNwcE5H+U1dfYXFB/qB4C6jv+GAXRwFiit8n97pJiqoA6Og1iAxUU/2kLYYGQ0XxWP1Dv0Kk+/qvYEfpwE4N9immfGhOxpJkV8GGj2ujZqwMR3LLvWCvrrfRpVPPQ5xUPsR7wFmWdHBEiCq+0kgC+aP/HUb+LNinkXiyqofLTRGQ7NxKBQNbGMOGAO/mWxJboZFWCzJu3wNhvqcxgyiXeiOnjeapU2KNDy2ABe4IuvkiylLkGitC+cgylg5P12nTpwBlvDXYXX3ts0Q9sCnyMaKCrpBSwO8bvNqRYhWNfc0uwMNvsofyR+QxuwLFwEr/lXVG4Z7uGTLdq2OIle8DQ4shwbEEwMXqU4RokMPmSA4isZ0A93rbewqhKS8hKwPwkrTJdQwdmdJJqA6vdE/h+AMdBAgsC94Df9XsTvxbZTkJvwVOyqdkvoIlaLNcvQDeOT8SXHak8Hpqf8c1t7/DrbpBfrVaJveO2n3+KLeMrDGqhsZbuTCvyFBW3yBSYtO1ZzSeX2jn93igBKjZTqgcwJNVawCj+nFEZgCs3td1csYFHiCI3Z4wOW8vqrjKwGG5RNcHN/meGJnV0sWEmi+scHonHZWC+P6zgJq83uxrZHxpcKUDkS1PafYcRhS/dLALxPmSZ3MB4Ram1D5/3aN131PztOQoO9ckX1c/Lg0Mxm5KnFD6Zvg2HKaEPb2PTGRppVsJ6MOL7eujQpBzhGbVgAUO8+2UhZIRv/5/EIC6fYTUBBl5KE+ygVo185idOxEr24vKcQNgrfEP00XxK9zjirMqiDLxVH+C3HxOQ=
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: db31dd48-34c5-4d8c-58e2-08dbd07b8d01
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Oct 2023 08:15:27.0975
 (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: vvsJPO0+XMmA7lxLi/7OrrSjzMlUzAr2G+inKIw16zFXUZ9tjaDzlZcQSbo5CjlzaQIR/7FQWaNP5MMNGpFifw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH3PR03MB7481

On Thu, Oct 19, 2023 at 09:41:41AM +0200, Jan Beulich wrote:
> On 18.10.2023 18:07, Roger Pau Monne wrote:
> > SAGAW is a bitmap field, with bits 1, 2 and 3 signaling support for 3, 4 and 5
> > level page tables respectively.  According to the Intel VT-d specification, an
> > IOMMU can report multiple SAGAW bits being set.
> > 
> > Commit 859d11b27912 claims to replace the open-coded find_first_set_bit(), but
> > it's actually replacing an open coded implementation to find the last set bit.
> > The change forces the used AGAW to the lowest supported by the IOMMU instead of
> > the highest one between 1 and 2.
> > 
> > Restore the previous SAGAW parsing by using fls() instead of
> > find_first_set_bit(), in order to get the highest (supported) AGAW to be used.
> > 
> > However there's a caveat related to the value the AW context entry field must
> > be set to when using passthrough mode:
> > 
> > "When the Translation-type (TT) field indicates pass-through processing (10b),
> > this field must be programmed to indicate the largest AGAW value supported by
> > hardware." [0]
> > 
> > Newer Intel IOMMU implementations support 5 level page tables for the IOMMU,
> > and signal such support in SAGAW bit 3.
> > 
> > Enabling 5 level paging support (AGAW 3) at this point in the release is too
> > risky, so instead put a bodge to unconditionally disable passthough mode if
> > SAGAW has any bits greater than 2 set.  Ignore bit 0, it's reserved in the
> > specification but unlikely to have any meaning in the future.
> 
> May be worth mentioning that in earlier versions this indicated 2-level
> paging support.

Oh, that's not even present in my copy of the spec from 2016.  I guess
it was removed very, very long time ago?

> > --- a/xen/drivers/passthrough/vtd/iommu.c
> > +++ b/xen/drivers/passthrough/vtd/iommu.c
> > @@ -1327,15 +1327,24 @@ int __init iommu_alloc(struct acpi_drhd_unit *drhd)
> >  
> >      /* Calculate number of pagetable levels: 3 or 4. */
> >      sagaw = cap_sagaw(iommu->cap);
> > -    if ( sagaw & 6 )
> > -        agaw = find_first_set_bit(sagaw & 6);
> > -    if ( !agaw )
> > +    agaw = fls(sagaw & 6) - 1;
> > +    if ( agaw == -1 )
> 
> Would you mind making this "< 0" or even "<= 0"? The latter in particular
> would already cover the likely future change of dropping the masking by 6.

My plan wasn't to drop the masking, but use 0xe if we support AGAW 3.
I'm fine with using < or <= if you think it's more robust.

> >      {
> >          printk(XENLOG_ERR VTDPREFIX "IOMMU: unsupported sagaw %x\n", sagaw);
> >          print_iommu_regs(drhd);
> >          rc = -ENODEV;
> >          goto free;
> >      }
> > +    if ( sagaw >> 3 )
> > +    {
> > +        printk_once(XENLOG_WARNING VTDPREFIX
> > +                    "IOMMU: unhandled bits set in sagaw (%#x)%s\n",
> 
> I think IOMMU: is redundant with VTDPREFIX (or alternatively iommu->index
> would also want logging). Also note that VTDPREFIX (bogusly) has no
> trailing space. (I realize both apply to the other log message in context
> as well, but still. I'd be inclined to adjust that at the same time,
> including switching to %#x as you have it in the new log message.)

Oh, I didn't realize VTDPREFIX had no trailing space.

Since it's a printk_once(), not sure iommu->index is really useful
here, as we would report just one IOMMU has having an unhandled SAGAW.
IMO if we switch to printing iommu->index we must also use a plain
printk.  But I don't see a lot of benefit in printing this for likely
each IOMMU on the system, and hence I would rather use printk_once()
and not print the index.

Feel free to drop the IOMMU prefix, but I'm not sure what to do with
VTDPREFIX and the missing trialing space, as some users of VTDPREFIX
already account for such missing space.

> > +                    sagaw,
> > +                    iommu_hwdom_passthrough ? " disabling passthrough" : "" );
> 
> May want a leading comma (or some other separator) in the string.
> 
> > +        if ( iommu_hwdom_passthrough )
> > +            iommu_hwdom_passthrough = false;
> 
> No real need for if() here.

Not really, but also no need for a write to iommu_hwdom_passthrough
every time an IOMMU is initialized if the condition is removed.

> I'd be happy to adjust any of the mentioned items while committing, but
> of course I would first need to know which ones you agree with. Since all
> of them are cosmetic, either way
> Reviewed-by: Jan Beulich <jbeulich@suse.com>

Let me know what you think re the log message.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 08:20:08 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 08:20:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618980.963378 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtOGA-0000wF-VC; Thu, 19 Oct 2023 08:20:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618980.963378; Thu, 19 Oct 2023 08: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 1qtOGA-0000vk-SC; Thu, 19 Oct 2023 08:20:02 +0000
Received: by outflank-mailman (input) for mailman id 618980;
 Thu, 19 Oct 2023 08:20: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 1qtOG9-0000hb-OQ
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 08:20: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 1qtOG9-0000wp-3z; Thu, 19 Oct 2023 08:20:01 +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 1qtOG8-0000Io-Uq; Thu, 19 Oct 2023 08: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>
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=ajAe7NkMxUXwaHEn5b+usjlscBSN7dnWbuTOJiht4JQ=; b=JHdny2LL/eyebbIqaZgUbdFkoJ
	JYujx7MJd9qFtMsL0dYb6YVgYoFEhFgaU+z7r+QRFlIL9UlaybJmnscXLdfYRkm97QRiH4l2ew6x0
	nOqjDzvbedKPebSVBn+IcK1HTCQLst6U1xPiZGS6howrx7Z4xRUzYKyQGvT4EvUTKmwQ=;
Message-ID: <7066a646-711c-4dce-f3c0-effb6ae91a39@xen.org>
Date: Thu, 19 Oct 2023 09:19: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.15.1
To: Simone Ballarin <simone.ballarin@bugseng.com>,
 xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com, sstabellini@kernel.org,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
References: <cover.1697638210.git.simone.ballarin@bugseng.com>
 <31a926a09dfcef43d13a402fd3b235aeba48009d.1697638210.git.simone.ballarin@bugseng.com>
 <41d82896-5471-4eaa-8bdd-a192e28d5546@xen.org>
 <3de5e340-30bb-44aa-affd-89f343ed1fa1@bugseng.com>
From: Julien Grall <julien@xen.org>
Subject: Re: [XEN PATCH 1/4] xen/arm: address violations of MISRA C:2012 Rule
 13.1
In-Reply-To: <3de5e340-30bb-44aa-affd-89f343ed1fa1@bugseng.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

Hi Simone,

On 19/10/2023 08:34, Simone Ballarin wrote:
> On 18/10/23 17:03, Julien Grall wrote:
>> Hi,
>>
>> On 18/10/2023 15:18, Simone Ballarin wrote:
>>> Rule 13.1: Initializer lists shall not contain persistent side effects
>>>
>>> This patch moves expressions with side-effects into new variables before
>>> the initializer lists.
>>
>> Looking at the code, I feel the commit message should be a bit more 
>> verbose because they are no apparent side-effects.
>>
>>>
>>> Function calls do not necessarily have side-effects, in these cases the
>>> GCC pure or const attributes are added when possible.
>>
>> You are only adding pure in this patch.
>>
>>>
>>> No functional changes.
>>>
>>> Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>
>>>
>>> ---
>>> Function attributes pure and const do not need to be added as GCC
>>> attributes, they can be added using ECLAIR configurations.
>>> ---
>>>   xen/arch/arm/device.c              |  6 +++---
>>>   xen/arch/arm/guestcopy.c           | 12 ++++++++----
>>>   xen/arch/arm/include/asm/current.h |  2 +-
>>>   3 files changed, 12 insertions(+), 8 deletions(-)
>>>
>>> diff --git a/xen/arch/arm/device.c b/xen/arch/arm/device.c
>>> index 1f631d3274..e9be078415 100644
>>> --- a/xen/arch/arm/device.c
>>> +++ b/xen/arch/arm/device.c
>>> @@ -319,6 +319,8 @@ int handle_device(struct domain *d, struct 
>>> dt_device_node *dev, p2m_type_t p2mt,
>>>       int res;
>>>       paddr_t addr, size;
>>>       bool own_device = !dt_device_for_passthrough(dev);
>>> +    bool dev_is_hostbridge = is_pci_passthrough_enabled() &&
>>> +                             device_get_class(dev) == 
>>> DEVICE_PCI_HOSTBRIDGE;
>>
>> The commit message suggests that the code is moved because there are 
>> side-effects. But none of them should have any side-effects.
>>
> 
> device_get_class contains an 'ASSERT(dev != NULL)' which is definitely
> a side-effect.

Just to confirm my understanding, the side-effect here would be the fact 
that it traps and then panic(). IOW, if the trap was hypothetically 
replaced by a while (1), then it would not be an issue. is it correct?

I can see two solutions:
   1) Remove the ASSERT(). It is only here to make the NULL dereference 
obvious in debug build. That said, the stack trace for a NULL 
dereference would still be as clear.
   2) Replace the ASSERT with a proper check if ( !dev ) return 
DEVICE_UNKONWN. AFAIU, we would not be able to add a 
ASSERT_UNREACHABLE() because this would be again a perceived side-effect.

The former feels a bit circumventing MISRA as the side effect is 
technically still present. Just hidden. But I do prefer over 2).

>>>       /*
>>>        * 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
>>> @@ -329,9 +331,7 @@ int handle_device(struct domain *d, struct 
>>> dt_device_node *dev, p2m_type_t p2mt,
>>>       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)),
>>> +        .skip_mapping = !own_device || dev_is_hostbridge,
>>>           .iomem_ranges = iomem_ranges,
>>>           .irq_ranges = irq_ranges
>>>       };
>>> diff --git a/xen/arch/arm/guestcopy.c b/xen/arch/arm/guestcopy.c
>>> index 6716b03561..3ec6743bf6 100644
>>> --- a/xen/arch/arm/guestcopy.c
>>> +++ b/xen/arch/arm/guestcopy.c
>>> @@ -109,27 +109,31 @@ static unsigned long copy_guest(void *buf, 
>>> uint64_t addr, unsigned int len,
>>>   unsigned long raw_copy_to_guest(void *to, const void *from, 
>>> unsigned int len)
>>>   {
>>> +    struct vcpu *current_vcpu = current;
>>
>> It is not clear to me what is the perceived side effect here and the 
>> others below. Can you clarify?
>>
> 
> I will use the pure attribute.

So x86 is using a function to define current. But AFAICT this is not the 
case on Arm. So how would you add the pure?

If it is by adding a function, then I would first like to understand 
which part 'current' is currently perceived as a side-effect.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 08:26:23 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 08:26:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618983.963387 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtOMC-00031Q-KY; Thu, 19 Oct 2023 08:26:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618983.963387; Thu, 19 Oct 2023 08:26: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 1qtOMC-00031J-HW; Thu, 19 Oct 2023 08:26:16 +0000
Received: by outflank-mailman (input) for mailman id 618983;
 Thu, 19 Oct 2023 08:26: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 1qtOMB-00031D-4y
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 08:26: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 1qtOMA-00013A-0M; Thu, 19 Oct 2023 08:26:14 +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 1qtOM9-0000cH-PP; Thu, 19 Oct 2023 08: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=d7NgqNXKBQu48u2+dzduwyE1jBlNNBFERbPD1JcpCX4=; b=568ECHyoCsPBqhzFYtCYNnuJYr
	K4XtQ0TTqVfOLc+iT+EQ/6etEwr9lEcrCnnlJID0wNxNxWXG2k6tS9uMbprmYM74rP3wF68tkDL4d
	ldtFplHuyjjcTcp51gIjzGo4MS1uwfdq4xb40aC2VodMlLAEAatKNxQ7YmwwaMWmI4Os=;
Message-ID: <578e282c-0b66-60c1-895f-197a859a1df4@xen.org>
Date: Thu, 19 Oct 2023 09:26:12 +0100
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: [XEN PATCH 2/4] automation/eclair: add deviations and call
 properties.
To: Simone Ballarin <simone.ballarin@bugseng.com>,
 Stefano Stabellini <sstabellini@kernel.org>
Cc: xen-devel@lists.xenproject.org, 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>, Wei Liu <wl@xen.org>
References: <cover.1697638210.git.simone.ballarin@bugseng.com>
 <8f426cc761c734d457a74416dd5b83fd10128c26.1697638210.git.simone.ballarin@bugseng.com>
 <alpine.DEB.2.22.394.2310181756410.965337@ubuntu-linux-20-04-desktop>
 <a31140c6-4c2f-4c86-affd-baf0a51a0bb7@bugseng.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <a31140c6-4c2f-4c86-affd-baf0a51a0bb7@bugseng.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

Hi Simone,

On 19/10/2023 08:44, Simone Ballarin wrote:
> On 19/10/23 02:57, Stefano Stabellini wrote:
>> On Wed, 18 Oct 2023, Simone Ballarin wrote:
>>> Deviate violations of MISRA C:2012 Rule 13.1 caused by
>>> functions vcpu_runnable and __bad_atomic_size. These functions
>>> contain side-effects such as debugging logs, assertions and
>>> failures that cannot cause unexpected behaviors.
>>>
>>> Add "noeffect" call property to functions read_u.*_atomic and
>>> get_cycles.
>>>
>>> Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>
>>
>> Acked-by: Stefano Stabellini <sstabellini@kernel.org>
>>
>> However one comment below
>>
>>
>>> ---
>>>   .../eclair_analysis/ECLAIR/call_properties.ecl      | 10 ++++++++++
>>>   automation/eclair_analysis/ECLAIR/deviations.ecl    | 13 +++++++++++++
>>>   docs/misra/deviations.rst                           | 11 +++++++++++
>>>   3 files changed, 34 insertions(+)
>>>
>>> diff --git a/automation/eclair_analysis/ECLAIR/call_properties.ecl 
>>> b/automation/eclair_analysis/ECLAIR/call_properties.ecl
>>> index 3f7794bf8b..f410a6aa58 100644
>>> --- a/automation/eclair_analysis/ECLAIR/call_properties.ecl
>>> +++ b/automation/eclair_analysis/ECLAIR/call_properties.ecl
>>> @@ -104,3 +104,13 @@ Furthermore, their uses do initialize the 
>>> involved variables as needed by futher
>>>   
>>> -call_properties+={"macro(^(__)?(raw_)?copy_from_(paddr|guest|compat)(_offset)?$)", {"pointee_write(1=always)", "pointee_read(1=never)", "taken()"}}
>>>   
>>> -call_properties+={"macro(^(__)?copy_to_(guest|compat)(_offset)?$)", 
>>> {"pointee_write(2=always)", "pointee_read(2=never)", "taken()"}}
>>>   -doc_end
>>> +
>>> +-doc_begin="Functions generated by build_atomic_read cannot be 
>>> considered pure
>>> +since the input pointer is volatile."
>>> +-call_properties+={"^read_u(8|16|32|64|int)_atomic.*$", {"noeffect"}}
>>> +-doc_end
>>> +
>>> +-doc_begin="get_cycles does not perform visible side-effects "
>>> +-call_property+={"name(get_cycles)", {"noeffect"}}
>>> +-doc_end
>>> +
>>> diff --git a/automation/eclair_analysis/ECLAIR/deviations.ecl 
>>> b/automation/eclair_analysis/ECLAIR/deviations.ecl
>>> index fa56e5c00a..b80ccea7bc 100644
>>> --- a/automation/eclair_analysis/ECLAIR/deviations.ecl
>>> +++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
>>> @@ -233,6 +233,19 @@ this."
>>>   -config=MC3R1.R10.1,etypes+={safe,
>>>     
>>> "stmt(operator(and||or||xor||not||and_assign||or_assign||xor_assign))",
>>>     "any()"}
>>> +#
>>> +# Series 13.
>>> +#
>>> +
>>> +-doc_begin="Function __bad_atomic_size is intended to generate a 
>>> linkage error
>>> +if invoked. Calling it in intentionally unreachable switch cases is 
>>> safe even
>>> +in a initializer list."
>>> +-config=MC3R1.R13.1,reports+={safe, 
>>> "first_area(^.*__bad_atomic_size.*$)"}
>>> +-doc_end
>>> +
>>> +-doc_begin="Function vcpu_runnable contains pragmas and other 
>>> side-effects for
>>> +debugging purposes, their invocation is safe even in a initializer 
>>> list."
>>> +-config=MC3R1.R13.1,reports+={safe, "first_area(^.*vcpu_runnable.*$)"}
>>>   -doc_end
>>>   -doc_begin="See Section \"4.5 Integers\" of \"GCC_MANUAL\", where 
>>> it says that
>>> diff --git a/docs/misra/deviations.rst b/docs/misra/deviations.rst
>>> index 8511a18925..2fcdb8da58 100644
>>> --- a/docs/misra/deviations.rst
>>> +++ b/docs/misra/deviations.rst
>>> @@ -192,6 +192,17 @@ Deviations related to MISRA C:2012 Rules:
>>>          See automation/eclair_analysis/deviations.ecl for the full 
>>> explanation.
>>>        - Tagged as `safe` for ECLAIR.
>>> +   * - R13.1
>>> +     - Function __bad_atomic_size is intended to generate a linkage 
>>> error if
>>> +       invoked. Calling it in intentionally unreachable switch cases is
>>> +       safe even in a initializer list.
>>> +     - Tagged as `safe` for ECLAIR.
>>> +
>>> +   * - R13.1
>>> +     - Function vcpu_runnable contains pragmas and other 
>>> side-effects for
>>> +       debugging purposes, their invocation is safe even in a 
>>> initializer list.
>>> +     - Tagged as `safe` for ECLAIR.
>>
>>
>> Would it be possible to use SAF instead? If not, this is fine.
> 
> Yes, but I do not suggest using SAF comments in these cases.

There are not many use of __bad_atomic_size() and I don't expect much 
more. So I think SAF- makes more sense.

For vcpu_runnable(), I don't quite understand the argument. I can't find 
any pragma around the function and I can't find any side-effects in it. 
Can you clarify?

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 08:43:42 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 08:43:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618987.963398 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtOcq-0006UQ-7Z; Thu, 19 Oct 2023 08:43:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618987.963398; Thu, 19 Oct 2023 08: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 1qtOcq-0006UJ-4S; Thu, 19 Oct 2023 08:43:28 +0000
Received: by outflank-mailman (input) for mailman id 618987;
 Thu, 19 Oct 2023 08:43: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=in48=GB=bugseng.com=simone.ballarin@srs-se1.protection.inumbo.net>)
 id 1qtOcp-0006UD-3P
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 08:43:27 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 8f9ed852-6e5b-11ee-9b0e-b553b5be7939;
 Thu, 19 Oct 2023 10:43:22 +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 F32154EE0742;
 Thu, 19 Oct 2023 10:43: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: 8f9ed852-6e5b-11ee-9b0e-b553b5be7939
Message-ID: <67782815-7803-4ef5-80f4-db6181f7a6e2@bugseng.com>
Date: Thu, 19 Oct 2023 10:43:21 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN PATCH 1/4] xen/arm: address violations of MISRA C:2012 Rule
 13.1
Content-Language: en-US
To: Julien Grall <julien@xen.org>, xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com, sstabellini@kernel.org,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
References: <cover.1697638210.git.simone.ballarin@bugseng.com>
 <31a926a09dfcef43d13a402fd3b235aeba48009d.1697638210.git.simone.ballarin@bugseng.com>
 <41d82896-5471-4eaa-8bdd-a192e28d5546@xen.org>
 <3de5e340-30bb-44aa-affd-89f343ed1fa1@bugseng.com>
 <7066a646-711c-4dce-f3c0-effb6ae91a39@xen.org>
From: Simone Ballarin <simone.ballarin@bugseng.com>
Organization: BUGSENG
In-Reply-To: <7066a646-711c-4dce-f3c0-effb6ae91a39@xen.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

On 19/10/23 10:19, Julien Grall wrote:
> Hi Simone,
> 
> On 19/10/2023 08:34, Simone Ballarin wrote:
>> On 18/10/23 17:03, Julien Grall wrote:
>>> Hi,
>>>
>>> On 18/10/2023 15:18, Simone Ballarin wrote:
>>>> Rule 13.1: Initializer lists shall not contain persistent side effects
>>>>
>>>> This patch moves expressions with side-effects into new variables 
>>>> before
>>>> the initializer lists.
>>>
>>> Looking at the code, I feel the commit message should be a bit more 
>>> verbose because they are no apparent side-effects.
>>>
>>>>
>>>> Function calls do not necessarily have side-effects, in these cases the
>>>> GCC pure or const attributes are added when possible.
>>>
>>> You are only adding pure in this patch.
>>>
>>>>
>>>> No functional changes.
>>>>
>>>> Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>
>>>>
>>>> ---
>>>> Function attributes pure and const do not need to be added as GCC
>>>> attributes, they can be added using ECLAIR configurations.
>>>> ---
>>>>   xen/arch/arm/device.c              |  6 +++---
>>>>   xen/arch/arm/guestcopy.c           | 12 ++++++++----
>>>>   xen/arch/arm/include/asm/current.h |  2 +-
>>>>   3 files changed, 12 insertions(+), 8 deletions(-)
>>>>
>>>> diff --git a/xen/arch/arm/device.c b/xen/arch/arm/device.c
>>>> index 1f631d3274..e9be078415 100644
>>>> --- a/xen/arch/arm/device.c
>>>> +++ b/xen/arch/arm/device.c
>>>> @@ -319,6 +319,8 @@ int handle_device(struct domain *d, struct 
>>>> dt_device_node *dev, p2m_type_t p2mt,
>>>>       int res;
>>>>       paddr_t addr, size;
>>>>       bool own_device = !dt_device_for_passthrough(dev);
>>>> +    bool dev_is_hostbridge = is_pci_passthrough_enabled() &&
>>>> +                             device_get_class(dev) == 
>>>> DEVICE_PCI_HOSTBRIDGE;
>>>
>>> The commit message suggests that the code is moved because there are 
>>> side-effects. But none of them should have any side-effects.
>>>
>>
>> device_get_class contains an 'ASSERT(dev != NULL)' which is definitely
>> a side-effect.
> 
> Just to confirm my understanding, the side-effect here would be the fact 
> that it traps and then panic(). IOW, if the trap was hypothetically 
> replaced by a while (1), then it would not be an issue. is it correct? >

No, it isn't. A infinite loop is a side effect.

> I can see two solutions:
>    1) Remove the ASSERT(). It is only here to make the NULL dereference 
> obvious in debug build. That said, the stack trace for a NULL 
> dereference would still be as clear.

Removing the ASSERT just to make MISRA happy does not sound good to me.

>    2) Replace the ASSERT with a proper check if ( !dev ) return 
> DEVICE_UNKONWN. AFAIU, we would not be able to add a 
> ASSERT_UNREACHABLE() because this would be again a perceived side-effect.
> 

Replacing it with a proper check can be a solution, but I still prefer 
to add a deviation or move the invocation outside the initializer list.

> The former feels a bit circumventing MISRA as the side effect is 
> technically still present. Just hidden. But I do prefer over 2).
> 
>>>>       /*
>>>>        * 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
>>>> @@ -329,9 +331,7 @@ int handle_device(struct domain *d, struct 
>>>> dt_device_node *dev, p2m_type_t p2mt,
>>>>       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)),
>>>> +        .skip_mapping = !own_device || dev_is_hostbridge,
>>>>           .iomem_ranges = iomem_ranges,
>>>>           .irq_ranges = irq_ranges
>>>>       };
>>>> diff --git a/xen/arch/arm/guestcopy.c b/xen/arch/arm/guestcopy.c
>>>> index 6716b03561..3ec6743bf6 100644
>>>> --- a/xen/arch/arm/guestcopy.c
>>>> +++ b/xen/arch/arm/guestcopy.c
>>>> @@ -109,27 +109,31 @@ static unsigned long copy_guest(void *buf, 
>>>> uint64_t addr, unsigned int len,
>>>>   unsigned long raw_copy_to_guest(void *to, const void *from, 
>>>> unsigned int len)
>>>>   {
>>>> +    struct vcpu *current_vcpu = current;
>>>
>>> It is not clear to me what is the perceived side effect here and the 
>>> others below. Can you clarify?
>>>
>>
>> I will use the pure attribute.
> So x86 is using a function to define current. But AFAICT this is not the 
> case on Arm. So how would you add the pure?
> 
> If it is by adding a function, then I would first like to understand 
> which part 'current' is currently perceived as a side-effect.
> 

Yes, sorry I was looking to the wrong definition.
In ARM the problem is the presence of a *volatile* ASM.
Please take a look here:

https://saas.eclairit.com:3787/fs/var/local/eclair/XEN.ecdf/ECLAIR_normal/arm/for-4.19/ARM64-Set2/latest/PROJECT.ecd;/by_service/MC3R1.R13.1.html#{"select":true,"selection":{"hiddenAreaKinds":[],"hiddenSubareaKinds":[],"show":true,"selector":{"enabled":true,"negated":false,"kind":0,"domain":"fingerprint","inputs":[{"enabled":true,"text":"0da7f0c9aea5491eba343618f965c81f5d7aed3c"}]}}}

> Cheers,
> 

-- 
Simone Ballarin, M.Sc.

Field Application Engineer, BUGSENG (https://bugseng.com)



From xen-devel-bounces@lists.xenproject.org Thu Oct 19 08:49:41 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 08:49:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618991.963408 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtOim-0007yV-Ri; Thu, 19 Oct 2023 08:49:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618991.963408; Thu, 19 Oct 2023 08: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 1qtOim-0007yO-Ou; Thu, 19 Oct 2023 08:49:36 +0000
Received: by outflank-mailman (input) for mailman id 618991;
 Thu, 19 Oct 2023 08:49: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=g4nO=GB=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qtOil-0007yI-U8
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 08:49:36 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 (mail-db8eur05on20613.outbound.protection.outlook.com
 [2a01:111:f400:7e1a::613])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 6c86ca2c-6e5c-11ee-9b0e-b553b5be7939;
 Thu, 19 Oct 2023 10:49:33 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DB9PR04MB9498.eurprd04.prod.outlook.com (2603:10a6:10:360::21)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.8; Thu, 19 Oct
 2023 08:49:31 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%7]) with mapi id 15.20.6907.022; Thu, 19 Oct 2023
 08:49: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: 6c86ca2c-6e5c-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=UI+bGUXjlz38rTBcvz1kCLZkD+wjYeGHVq0R2lHsYvKGeQG0RMt7u2Xwm0c4WiPsFDqKH+PpnFils4LMpY9VJ7LFyiRWdPsXepzDkdGU0FZ0k8cLGsK764+dtq5rgBnhKMoKY1Q6fqI1iTkBqaFaJDJiZhKFFKqUnqeMhHLe0YNbDlhOFuiGkPI/mHo+9BCEPOUJGmH6mX8Q2/2C6MzV1eeUCw1D0xHEYH3nV8ChP6Shmaayx3TET7+gg0AgPi8kyISbyWLTVCawDL92r6PVjgS7g0N/9Kn+gy5xRIe7fsXj4nCmLrWrng+yIu5z56++91+U44mMatnFtspBBK0how==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=RQvk9FqFmdxkh3g8tGijy/i8VZkTZKrmuQeKtXHGW0I=;
 b=euLj7VktIPPAwJ7GORbu5hBrjqEouBd/N/sTLNoWzX5k9ch/plokmmV+6GB8RcNTUaIbuuHeg1nhOUqic8OqXJ3FPhheJcoUN2CIJ7eCsXj7Z9hpPj2YrcEaxlxLGHNAdVyYXJZDepd4aEP47b9bq7jdl2eRj8cguKFXUxsUsoDyg5Zx/IzaTkz9I1oJx5D/75wJvghhGWC3uSJ2lIqrYryp21Of4XIf2AGinJk31MYJbi2B8fegSA7tSeJ6zgiHdIrXCojtMfVhQuXvYvU/szLIoM2w/Zufciw/vjy8W697Q15PSxZPaFbsNa2ejD6ndPrN9sJZOpWhhn15NCRtDw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=RQvk9FqFmdxkh3g8tGijy/i8VZkTZKrmuQeKtXHGW0I=;
 b=I1+BdrslkSXgdDIP9RxgmgvkOrk3/j8R/1rmIR+IdojTtIPxffh1KCjBnka0t5/QqSwlVgI4oSB1pQFoBATMmoZJC4lnvmw6XqvOpx1dpVs4QNKlfImBtOwlEZLkOQTbZzqtjgP+JEhHDJtbACn+ccciixzm2nORazX8SX9FzdVzouKPSdN1sjOQ8EbcJBZ5Lp4eZ10WMQIFjTTn9cKR58SxhGPSk0akfGEcXza4ZzszoSnOzt7YDUKm5IBAyYTdoFkoPDThvjODjlwQJEmy4dKGjqAPhcYhsQnEddTiJiZOrflwdxs7YRI0R/2Z1ZNbXyQPcHrq1s2WOcAzfE3+mA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <45b73e35-29b0-99dc-ff91-251fe38d78ed@suse.com>
Date: Thu, 19 Oct 2023 10:49: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 for-4.18 v2] iommu/vt-d: fix SAGAW capability parsing
Content-Language: en-US
To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
Cc: Henry Wang <Henry.Wang@arm.com>, Andrew Cooper
 <andrew.cooper3@citrix.com>, Kevin Tian <kevin.tian@intel.com>,
 xen-devel@lists.xenproject.org
References: <20231018160733.24655-1-roger.pau@citrix.com>
 <709ade00-9112-2866-4d2b-3bb718b13b46@suse.com> <ZTDlm_msZrFlhubr@macbook>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <ZTDlm_msZrFlhubr@macbook>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR4P281CA0015.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:c8::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_|DB9PR04MB9498:EE_
X-MS-Office365-Filtering-Correlation-Id: b2591d6c-a936-4b17-2004-08dbd0804f69
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	z4tcBXpYpfEUN94eUswV23F5q6THIFn04KP+Z63l7NPtPKP+w5xpkt9Nz5gseB7hKTN6s5CjqlH4vYLndDH3yDtUTWQl3eOkXr4dGuptKGzJKTPXBzZivGwjy1aLzPcEUlhqKWt+OU8s4SnINNmMLe9KD2tAPWlUIHrIaosOOJ63Jlw2Cdo0jgdAGMwvQx5Fd/LTDVfecegAe5P5tlAS/skPhhtwywpq9HfiWbmDByBHh5p+LhCZs+zXGLOIaYyoZmLWaByR6k5hCPER0FyBBJ9KsWjuu5sZCFL4X0gMTD8D8Bv2Cz2NnGMoZWEC2+6apn7hyWVxDlzgoYhtYcuFm+qTxdcWd8pOvq5FqFMr0WmXmYyGwTYUuOZ+xBwiiLR0cus8b2Yqw1Uk0xBBukYuANJiHHMZTbuq0oZ+oOu+Ap6BZbEkGHfmxslxxGr63dIyBS97GnHSKgQKXpVolGZZzmnqJBbIKwJMoAFesgEvMDZWL50NZ7SwX9X4SavIuHoqtJFQRX0l81WQkWxA174rlDkapMSRTh8CB0iOzRZRFNZ1QFqrWzOXQ4JauKLDkj3Fa/FqXWv9hICPWBZck9uZKs2G60OOhsXGWYr099gvjx6rV5UYgl/ddkMxh2j5f8/mzaqb1PmExWv7vMIwF2Uyzg==
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)(366004)(396003)(136003)(39860400002)(230922051799003)(451199024)(186009)(64100799003)(1800799009)(38100700002)(26005)(2616005)(41300700001)(6506007)(53546011)(6512007)(31686004)(83380400001)(6486002)(478600001)(6916009)(316002)(66899024)(66476007)(66946007)(66556008)(54906003)(2906002)(31696002)(86362001)(36756003)(5660300002)(8676002)(4326008)(8936002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?a0pEZ1NrVFlvakQzdW1FUU9zeEJkclNqTUtTVDRZZHVnRkRYUUtncVBiQTJ2?=
 =?utf-8?B?a0JXcmI1NFgrQzNxT0Q4UmxhaGkrQTY0VWNVdU9meUNHbDdFZWkrQU1ZMm5y?=
 =?utf-8?B?SGdSMnZCSHNUZXZSUFdKZ0dCSnVzaXZRZ2lBa2JMOUtrUTlrbDZMNllQS3Bo?=
 =?utf-8?B?VmcxVFdlYzNkU0hUbVFUbm41QTRuVFRxYXpNS0FpbHp5cUNCZjdCbTJHVHMy?=
 =?utf-8?B?OFQ5K1pLY3ZyMWtCZEJMdWRHU0YxUWkwck1TRzlGZDhVTXlsYnRQZzkwOVFC?=
 =?utf-8?B?Y2FkR2FzSXBPcldZMnVyMWVBcTdWclZIZUtSQ2ZTWjNrVUw3RTcyajQvWjdB?=
 =?utf-8?B?b0pBTE9GNXJ4NmNiQjZKZGowckJTMGNEMkF6dlVPeEcxeGVWQ3NSdHU1S2ov?=
 =?utf-8?B?Z0k2S2F0M0UrZ2lJcFFDQXAxZzdXeWU1OTNnRmR4WkJ3ZVM0WEp2RGhvK3RO?=
 =?utf-8?B?ZCtRZHJwVU9ENXFhOEFXZ0R3T0ZCNzZrbjc0SStNRE1HeHkzZUZ2VjJuNUpN?=
 =?utf-8?B?QWZpVGhmZUg5VDZQQ0R5dTJzOTk3OFFXL2ZoeTU2N0RyMHpDa1NWTHJKY2E3?=
 =?utf-8?B?Yy8rUDk3aGN1Z0FaRjBjdGJWZkJRUVUzakJiNW94bUJPNlVrMlBlN0c1TVB5?=
 =?utf-8?B?eVlmdm9OZDUwb0hKdkVsa3grM2trVGJBZWIvckVoTEhQMVlVeklPaGt1aUFs?=
 =?utf-8?B?aFRrVi9YUzNsRk1IVWRjRURrVGNyYnIwOWl1VjBiV3RiOEVadDhjQVJmUFZV?=
 =?utf-8?B?dHlOYm9scGpmMDlzWFVCaCtlSmROTUJZa0hxWStjTGY2U2lXQUYxNmhraEFz?=
 =?utf-8?B?eXpJZFhJdUNPYjFyRDdYdVE1a3RxQjRLNTZ0Unptb0lickhiQytwbWxvd21L?=
 =?utf-8?B?SWJpWGdEZE52Sk9JajRGeFVwOE5xYUszWC9JbVpvdS90TUdhUUNnTXZ4NDc4?=
 =?utf-8?B?REdnenZLVlVjM3BpZG9zNnFIcElJTGF2RllyMVJsZzVVTlBLeVhFbloyMm1Z?=
 =?utf-8?B?dkxNRVp4WUY3SkJmYW0xdVhQTUJ0dWpUK0JpQk50eWllaWkreWVveVpVZXk0?=
 =?utf-8?B?L1Bua1NSY1g4VHNqcnh2eDNjeUp1c3VzOGRRTkJnQ2NyL0Y1WFNpaU9xcWVI?=
 =?utf-8?B?OC9YSWxpVkJadC9WUzBiZ0hFdUFxU2dYK3FLSG1iMFB3SmhMd1dBR1Y0KzVK?=
 =?utf-8?B?azZObjNtMll1UG15MFZSZ3ByRElhYjlteVRFUEJQUDJpRTQyelNvK1F4WVlt?=
 =?utf-8?B?bUdTTVlZdXNOYlJrTDRTZEhkZXAvUVZCcTFWRitMbXU1Q3J6aEtnZkpUTVJS?=
 =?utf-8?B?M3k4Y3ZUZkVXY2xkTGRPM3RIRzNkZ2RtMVM2U0lHdzcrbkN5ZnpMemJXSEZl?=
 =?utf-8?B?bDdoVUI3SlpDWGQzTElvK0VncUlCUGNxZUE0S3cxT2FaZnY1U0ZYMWNuMnhK?=
 =?utf-8?B?dHlVOS9xNkY0cDNFejNTcDAyOTNUR20zTmdoZTE3L1BTbTNOd1FQWi9OTWhB?=
 =?utf-8?B?WGZtUjAvSEFnT1FhL3BDSW9ZaWNiQVczUG5iNTBmNFBsVlo5MWxMZ3BWNFZG?=
 =?utf-8?B?TkFDNllOcWtiSzRoOWlLczNmS2VkeGNQUGc0WXhwUEkrbXd3anAvc0sveHdU?=
 =?utf-8?B?QUVQbXNldVdDOFdBc2I2RUt5Snl6QjlTcWtXTlpQTXlkNUhRbWJMbC9NTlg5?=
 =?utf-8?B?TmxDZzlmVjBuMCtxZ1R4bUJwZ0FJRXY2emZUdUp2c1RUbDdEVWw3cGJybUhP?=
 =?utf-8?B?THlxOG8xcnZiV2YrWGF5cDlCY0pBa0ZNa1FNdkVYWkc2VCt0Vm1wVVY4Qis5?=
 =?utf-8?B?NEhJNkhsdzVLT0UwcHpiRytONVpRS0E4U1lINzJmTDFVTWxKb3M5Y0JrK0Qw?=
 =?utf-8?B?Vktvd29sRkk4M1lJT25EYW80NERYQ3FieHJRQ2JBaFd0VWFhaGlOalBzaTdw?=
 =?utf-8?B?NVNhdWFFSDE1Y09GWkZDM1V1ak5FVThuRUFrQitOb0NoUmNYdmNIL0hQbUhZ?=
 =?utf-8?B?aXdVUFM2eWc3RVkvOVdEb3FPcjA1TVova3M2bjlXdHVSZzE1Tk1oam9aV2ZB?=
 =?utf-8?B?dmV2ZllpS3FOb0xORGlVUmxiaTU0dU1IYmxaL0lWRzNZa0Q1ZkxGRnpuMUdV?=
 =?utf-8?Q?ftEKu+oc0G4Q5vJQnAKcOqXHG?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: b2591d6c-a936-4b17-2004-08dbd0804f69
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Oct 2023 08:49:31.0802
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: kb5m/wG9Oqg2fjojOCX2EDiNBcrLD5TkpC7gIXWVZ2IUqVWVpTWtjLUsvCF88JDuhoTbSlANNUwrDocnWCaerA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR04MB9498

On 19.10.2023 10:15, Roger Pau Monné wrote:
> On Thu, Oct 19, 2023 at 09:41:41AM +0200, Jan Beulich wrote:
>> On 18.10.2023 18:07, Roger Pau Monne wrote:
>>> SAGAW is a bitmap field, with bits 1, 2 and 3 signaling support for 3, 4 and 5
>>> level page tables respectively.  According to the Intel VT-d specification, an
>>> IOMMU can report multiple SAGAW bits being set.
>>>
>>> Commit 859d11b27912 claims to replace the open-coded find_first_set_bit(), but
>>> it's actually replacing an open coded implementation to find the last set bit.
>>> The change forces the used AGAW to the lowest supported by the IOMMU instead of
>>> the highest one between 1 and 2.
>>>
>>> Restore the previous SAGAW parsing by using fls() instead of
>>> find_first_set_bit(), in order to get the highest (supported) AGAW to be used.
>>>
>>> However there's a caveat related to the value the AW context entry field must
>>> be set to when using passthrough mode:
>>>
>>> "When the Translation-type (TT) field indicates pass-through processing (10b),
>>> this field must be programmed to indicate the largest AGAW value supported by
>>> hardware." [0]
>>>
>>> Newer Intel IOMMU implementations support 5 level page tables for the IOMMU,
>>> and signal such support in SAGAW bit 3.
>>>
>>> Enabling 5 level paging support (AGAW 3) at this point in the release is too
>>> risky, so instead put a bodge to unconditionally disable passthough mode if
>>> SAGAW has any bits greater than 2 set.  Ignore bit 0, it's reserved in the
>>> specification but unlikely to have any meaning in the future.
>>
>> May be worth mentioning that in earlier versions this indicated 2-level
>> paging support.
> 
> Oh, that's not even present in my copy of the spec from 2016.  I guess
> it was removed very, very long time ago?

Indeed, as mentioned in the commit you're fixing. Version 1.3 of the
spec still has it. Judging by the document numbers 2.2 may have been
its direct successor (i.e. no further 1.x and no 2.0 or 2.1).

>>> --- a/xen/drivers/passthrough/vtd/iommu.c
>>> +++ b/xen/drivers/passthrough/vtd/iommu.c
>>> @@ -1327,15 +1327,24 @@ int __init iommu_alloc(struct acpi_drhd_unit *drhd)
>>>  
>>>      /* Calculate number of pagetable levels: 3 or 4. */
>>>      sagaw = cap_sagaw(iommu->cap);
>>> -    if ( sagaw & 6 )
>>> -        agaw = find_first_set_bit(sagaw & 6);
>>> -    if ( !agaw )
>>> +    agaw = fls(sagaw & 6) - 1;
>>> +    if ( agaw == -1 )
>>
>> Would you mind making this "< 0" or even "<= 0"? The latter in particular
>> would already cover the likely future change of dropping the masking by 6.
> 
> My plan wasn't to drop the masking, but use 0xe if we support AGAW 3.

But we will also need to deal with bit 4 (at which point applying a mask
is going to be useless code). We can either guess that it's going to mean
6-level paging, or we need to treat it as having unknown meaning when set
(implying that we'd then still need to either fail initialization or
disable pass-through mode).

> I'm fine with using < or <= if you think it's more robust.

Good, will do so then.

>>>      {
>>>          printk(XENLOG_ERR VTDPREFIX "IOMMU: unsupported sagaw %x\n", sagaw);
>>>          print_iommu_regs(drhd);
>>>          rc = -ENODEV;
>>>          goto free;
>>>      }
>>> +    if ( sagaw >> 3 )
>>> +    {
>>> +        printk_once(XENLOG_WARNING VTDPREFIX
>>> +                    "IOMMU: unhandled bits set in sagaw (%#x)%s\n",
>>
>> I think IOMMU: is redundant with VTDPREFIX (or alternatively iommu->index
>> would also want logging). Also note that VTDPREFIX (bogusly) has no
>> trailing space. (I realize both apply to the other log message in context
>> as well, but still. I'd be inclined to adjust that at the same time,
>> including switching to %#x as you have it in the new log message.)
> 
> Oh, I didn't realize VTDPREFIX had no trailing space.
> 
> Since it's a printk_once(), not sure iommu->index is really useful
> here, as we would report just one IOMMU has having an unhandled SAGAW.
> IMO if we switch to printing iommu->index we must also use a plain
> printk.  But I don't see a lot of benefit in printing this for likely
> each IOMMU on the system, and hence I would rather use printk_once()
> and not print the index.

Well, logging the index in printk_once() has the benefit of identifying
the first IOMMU with the issue, which may help further analysis if not
all of them have bits beyond 2 set. But I'm not going to insist on this
aspect.

> Feel free to drop the IOMMU prefix, but I'm not sure what to do with
> VTDPREFIX and the missing trialing space, as some users of VTDPREFIX
> already account for such missing space.

I'd simply insert a leading space in the string literal.

>>> +                    sagaw,
>>> +                    iommu_hwdom_passthrough ? " disabling passthrough" : "" );
>>
>> May want a leading comma (or some other separator) in the string.
>>
>>> +        if ( iommu_hwdom_passthrough )
>>> +            iommu_hwdom_passthrough = false;
>>
>> No real need for if() here.
> 
> Not really, but also no need for a write to iommu_hwdom_passthrough
> every time an IOMMU is initialized if the condition is removed.

This is init-time code, and hence the excess writes aren't going to be
noticable.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 08:58:03 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 08:58:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618994.963418 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtOqq-0001wi-Le; Thu, 19 Oct 2023 08:57:56 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618994.963418; Thu, 19 Oct 2023 08:57: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 1qtOqq-0001wb-Ii; Thu, 19 Oct 2023 08:57:56 +0000
Received: by outflank-mailman (input) for mailman id 618994;
 Thu, 19 Oct 2023 08:57: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=g4nO=GB=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qtOqp-0001wV-KJ
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 08:57:55 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur05on2061b.outbound.protection.outlook.com
 [2a01:111:f400:7d00::61b])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 97357f52-6e5d-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 10:57:54 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS1PR04MB9582.eurprd04.prod.outlook.com (2603:10a6:20b:471::18)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.21; Thu, 19 Oct
 2023 08:57:52 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%7]) with mapi id 15.20.6907.022; Thu, 19 Oct 2023
 08:57: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: 97357f52-6e5d-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=T62FDYKLBwG22ccGIE1KZ4DO9P8Yy7yNFepqWdtVpHucVYvoDwZ37tZ887TbKxN8Q7h8R9F7xDUPtL7ezt/5dI0Pc5ur6LkZbYJVYuoQl9/eIJxVVMdyYCGdLR6DiAs1iULSyOeDowOi8YGUX7rnjV+3Sqrp0yjZJvyxLSxFGYJxkJlfswSyjMzPxY+344Py2dQa/hFcjDQdeDN8FbMjN/xUzFtacOm/PpQ7EZtzw+hYLPUgox+WWfbsbNEGfrrDjeRxgD2p0jNS8et0b4+W7drdBAjDBRIwu6MqE3FLKiIVInJOcL9IrqT0rzFmmT+jx5h6wnm/XD33/EDirK5E9Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=I3+NXjmF/TaXgYfqK+BH/JVAO+YO2KV37s5GmeVG/Dw=;
 b=X9gb0OKY39Lpbp99oesH5AMVCRvPajwZrzW5x/XuhH3vayo0Zisu1uY7V8EruehStwUWNqV9jhyYh2LEFXQlQJdzcU20Yrwf9LRd818m8sB+tHoovrVCTjpgeIYzgXV3q48MmQpkOnvS58hUGU+Dn1R595IWVbo6r92mgSlWr7e25phkUaTWP7QndxJAOiziBcYhdjmrjaxpsfMvXxjwLiMsbZxjy+MF52FTUhd+Dy9CtfliUMHS7zcaSK/epEoxxPIKeIjLD4AiILrYkFVg+vMdhOvkXKr99LJx4dTK3wl2TtoK9GE5V1/uFNb29EfCghVV9DyaYiwTLZwKVm9WpQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=I3+NXjmF/TaXgYfqK+BH/JVAO+YO2KV37s5GmeVG/Dw=;
 b=mXZxKDaFuOR3VzYkoum5PY0CYgWIb10RtMhldSE1SMxJmfqJr/eWLeCqomXvu4kxcWZbrf5vE+9I8w/YhfgZNl2V38A2/RghcqscANOMXwJ9BmlSH+SfyNHb6tYcCWDtspDz8hZeyK3o+96LV72VjLMS8iZqn5Q2TA1oXa/+VEjXWEI4PT6pOq6qpaewoPbvDGFL0gp5QWTD8nmG6Eh9LlCgQ92vD6oJc6YSTNXV/tQihFRWITg9+Z3akUlWxuUHvshfAYGD9tjTJtySxhDjcaeNwWjAokj0o3/sXAG1PMBjXaqUMXaNnip4bjp74ZN9BgMZz20Jr5Q4SPsi0ss6pQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <d67b3281-0600-a75f-5ce5-63dff47bc98f@suse.com>
Date: Thu, 19 Oct 2023 10:57:49 +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 3/7] x86: add deviation comments for asm-only
 functions
Content-Language: en-US
To: Nicola Vetrini <nicola.vetrini@bugseng.com>
Cc: Stefano Stabellini <sstabellini@kernel.org>, michal.orzel@amd.com,
 xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, consulting@bugseng.com,
 andrew.cooper3@citrix.com, roger.pau@citrix.com, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <cover.1696833629.git.nicola.vetrini@bugseng.com>
 <6476706490cc15406bcf3377a57b7c4a303c4901.1696833629.git.nicola.vetrini@bugseng.com>
 <741e81bc-050c-a773-e622-997b6c0b8335@suse.com>
 <alpine.DEB.2.22.394.2310161520180.965337@ubuntu-linux-20-04-desktop>
 <dd3534dd-29b0-129d-9f34-b542ed3ffabc@suse.com>
 <alpine.DEB.2.22.394.2310181703170.965337@ubuntu-linux-20-04-desktop>
 <94f59896-5182-c711-98d7-dcecf6073201@suse.com>
 <e723c1aad066436f701f284ada836f1f@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <e723c1aad066436f701f284ada836f1f@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR3P281CA0114.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:a3::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_|AS1PR04MB9582:EE_
X-MS-Office365-Filtering-Correlation-Id: 9cb74a2c-f90f-4932-b344-08dbd08179c8
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	ZJ4UmyWcQmidlyyM0ZiGSI4/dm3Zr8A5Go3oSmuFziF0XFZrhVloGK2Onox49SLdUBF4ccFvp9ATx1l7bIv6H0UuiEWQwlIa1Uo8UbCq3PkoqY3/3wI1k7PVW2QW8utrLO4kIIszSAEgw3WkssMaRdcEGbhzG4DRmI9NEJ7mUQdqczwXG5VlvzgnprZLuJW+che6zRHhelQskA5Ey2ypxltuMgsMjkGkDPTJ4ekZc4C3UcsV467acpGWgu5t3qABTY7FtfMG7ljBBpGFW49BKC4QMIzj0x9HMeoqT7xIKh9Ohhk/xUYsi4DJ23tebD6Teiz+fk7qdRa3Tb/Kv7eatQw4ABFF2D6F8IRtY1VkZbYj4g+pO2NYaBKBTfrrLd/lrvqoIWGASHYwQUYIJK37rEr26eAzfS32cFmPozMUmS4fh/U6xloVwDuScrc6TqBe/DGxzW2hhyp0b7ZIJ7G1aCT3PU74LHxAUxyi/YwTIi2o27bzxYeiqsOJalpwWsgVAkp2+f12f0sK5GFXfbprw7ahuztVYztWVnAsjIHgO2i4unC31vAFcN7NeWlOaF6gT+CUSonX7mtvkLeroscBJDYtnVmYsW53Ml5+JKWUJUDVPLQdfvLSSzhDUJEWNAwLLsSQZhDaA5h9HFUL9Pwmxg==
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)(230922051799003)(186009)(64100799003)(1800799009)(451199024)(36756003)(31686004)(6512007)(26005)(66476007)(66946007)(6916009)(66556008)(38100700002)(31696002)(86362001)(6486002)(53546011)(316002)(2906002)(2616005)(8936002)(6506007)(54906003)(478600001)(4744005)(7416002)(4326008)(5660300002)(8676002)(41300700001)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?RFQyNk5pcHVva3hySTNCQUZ4NUN4aW5zQXp4KzNHR05oaXFzL0lQZ0V5aytq?=
 =?utf-8?B?emdkOU40ekxKVW85NGp3Z0F3L3U0dHpMSm9GRVJIb0RjWHZ3aG1nMk9HUWRF?=
 =?utf-8?B?eXFqa2Z2N1VXRFRxWE9YeVZVK0ErT3NQV0JYdFE3bXB3aEFCdzd5NVBnZkhn?=
 =?utf-8?B?VEl2aW1vUkJmS09Za2loQVg1aCtJV2pTbzdBSWJaZVJrL2xIWGZjWUlWS3dJ?=
 =?utf-8?B?SjVOVUFzNytEZ0R5a2dIOGxadmRIOFRJNzFlVnRuOXphUXpIVUZ2bHlyN3RW?=
 =?utf-8?B?UVVSdWhZVUVzNWFEYjBNZU0vS0Z1azFYRlRUTjdPOVhUcTFYQWVlWDV1UGt6?=
 =?utf-8?B?aWMrOW9sKzYwUk1CeVZhTXNNcnpISnJYeklHQndJM2YzdnovOVE4ZGRramlW?=
 =?utf-8?B?S094ZnVwTlZRSkhtSktXYm1ORklyeitDZ2dGKzQxSko4NjBCd3ZTbVMwdCtk?=
 =?utf-8?B?Rmh6a0o3dFlOSGp6MmlEbGtoMFBNNWxyb252NWJiV3pqY1JiVDF0NzlZb0FR?=
 =?utf-8?B?NjZFdzFNV0QzN0NHNDA2Q0s4K2hONW1aMlg2RFpkaWM5Tkw3RzFPWldkZE1J?=
 =?utf-8?B?QnZ6RXJ4L3ZObHkxa2JIbkR4VWJHY3dpS2lmUk5STUFaYjFvQmd1clM1Z1lS?=
 =?utf-8?B?aTZqVlp5dDNUU2xDU0I1U3lndEhTcXRXRi9MbUFROEhoRHk2UUlJWDYzOFYy?=
 =?utf-8?B?cmV4cFd5Qlp5QzZBeFRIYm9TUXQ1N2dOSDRCb1NSVUw3WHVTalV0SW41TGN6?=
 =?utf-8?B?VTUrTFRIUmcxUjFxN3REYld3OEEvVzVLaWI5SzhHN1ROY0NqcGIzQ1AyWFR3?=
 =?utf-8?B?YkhSeTBWYVlGL0YvZ1YvdHQxMDFqM0FtdlJ3Y2Z0cnVrc3pnN3dtQVZyaGFo?=
 =?utf-8?B?a01MeUsrOHlQOWxUZ0IzZnIxR2JmczVITDJybDAyaE5tM2E3Yzgzd1JjK3lF?=
 =?utf-8?B?alBXZk5XUEFTUkp3VWcvamh3SENuSUtBWDd5WlE0aEN2aUF0U1dKNDBuWktV?=
 =?utf-8?B?ckR4WllablFqd2c4NXBJMSt4dzZmVzVMb2JnUkZSZkI2OWw2a3hyN2ZQVFJ0?=
 =?utf-8?B?dG1XYzZNdThaeTlOWDhMeStTb0MvQW56SXBuME5GUk4zcWhxOVM4SG4wNWZx?=
 =?utf-8?B?aUIzOFFIdHkrSC9GL296MnZ2L2dZMzN2VnRTcUVNODVIT3B4bk1qdjZuZXJN?=
 =?utf-8?B?SDVHUjlkNnhKZGNuM2djbTFUUWE1RHJsQzVXcnFMTGwrVU1XNlBjekVPWHlV?=
 =?utf-8?B?b1VxSHU3akErd3lReDBNanlDdFA2bEhVWXZSNHZUYVpzemxNNFBNeDA5WEkx?=
 =?utf-8?B?V0Q0QjBLY2M5aG96K2s2b0RUQ041TmwrMkQ3MlRZOVJBZFc2c3p4WXlIbDFV?=
 =?utf-8?B?eGg4UjQyK2xnRjFhSWNvY0twekUva0JXaG05MlhIT2NoVG0wajRNb2tldXZp?=
 =?utf-8?B?bjRpVVZXelBqK3h1U2k2LzdOYmhxRXFzd3JKd29MakNSZzloR3FqZkF0SEJk?=
 =?utf-8?B?MnA3RFJOeDdhQytMN2VUVm5hQmNBblQ2dmNreDd3OFljSDhvdjBSZzFiRzdS?=
 =?utf-8?B?WDN5ZDJwNkozMDlvb0hRVXNVdDBKQlVNUlNaZ2MxUk9oYWUyeWI4MGFLc1BZ?=
 =?utf-8?B?elhMQ3p5Ky9uRUs0aEpLY3ViMWVsZDZ5NnZjcW50TjFtczMxQnFMcUUwZWpi?=
 =?utf-8?B?ZDRCZ0lLeTV6ejZ0SHFYLzlsalhTRnFOY2NSMGVvK2xPYlJCRHVSczhrRzBR?=
 =?utf-8?B?bmx0RlRoRWZiNnkvVERvTEZaQlFHUlV1SXNVTm1aZko0Zkp3SEc1aHpoaS9L?=
 =?utf-8?B?TTFSc3lQVlBZdmRXVVZvekZRZTluVGtXWURjNHUxekkyZjJsNmJuRzJxdkF5?=
 =?utf-8?B?K1Z4ZlBidFFWWEYwVGNsenJlSzNMckVmZys4RnA0SUdac1VOdi81MlhPY202?=
 =?utf-8?B?UUVaREdEeWI5VHp6Y1J0QnFCM1BxMjBXK0tDV3JJYXluSTRDTGlwUHdCeDJl?=
 =?utf-8?B?T0JMc0ZRTTFrSk55L1RvSlp5d2I5SE56WjlOVm5zSlpxc1BwS1FsWndadHVF?=
 =?utf-8?B?U0EvT3FtSWt1Y3BpV3NHRS9wWXZML2lQdVZWR0Q5WG1QajdUZU9FakpVaFRC?=
 =?utf-8?Q?7a73XjCC2s0vERw5hMHkpLC1b?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 9cb74a2c-f90f-4932-b344-08dbd08179c8
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Oct 2023 08:57:51.7128
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: tY2P8CdECEwo2W6R6FxbyJ63NS3nGzdJrqGxAkTMPZFKwI4AwQmB8PDsHVOOclEnvChcjsCd/hr5K5b/5QRM/A==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS1PR04MB9582

On 19.10.2023 10:04, Nicola Vetrini wrote:
> 
>>> - vmx_asm_vmexit_handler
>>>
> 
> Isn't this just a declaration:
> 
> void nocall vmx_asm_vmexit_handler(void);
> 
> while the function to be deviated is this:
> 
> void vmx_vmexit_handler(struct cpu_user_regs *regs)
> 
> Am I correct?

Looks like you are, yes.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 09:04:26 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 09:04:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.618999.963428 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtOwz-0003a3-Fa; Thu, 19 Oct 2023 09:04:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 618999.963428; Thu, 19 Oct 2023 09:04: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 1qtOwz-0003Zw-Cm; Thu, 19 Oct 2023 09:04:17 +0000
Received: by outflank-mailman (input) for mailman id 618999;
 Thu, 19 Oct 2023 09:04: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=in48=GB=bugseng.com=simone.ballarin@srs-se1.protection.inumbo.net>)
 id 1qtOwx-0003YI-Uj
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 09:04:15 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 795590ef-6e5e-11ee-9b0e-b553b5be7939;
 Thu, 19 Oct 2023 11:04:13 +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 F41D64EE0743;
 Thu, 19 Oct 2023 11:04: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: 795590ef-6e5e-11ee-9b0e-b553b5be7939
Message-ID: <5b237454-d3e2-4595-82de-59bcfdf1e217@bugseng.com>
Date: Thu, 19 Oct 2023 11:04:12 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN PATCH 2/4] automation/eclair: add deviations and call
 properties.
Content-Language: en-US
To: Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>
Cc: xen-devel@lists.xenproject.org, 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>, Wei Liu <wl@xen.org>
References: <cover.1697638210.git.simone.ballarin@bugseng.com>
 <8f426cc761c734d457a74416dd5b83fd10128c26.1697638210.git.simone.ballarin@bugseng.com>
 <alpine.DEB.2.22.394.2310181756410.965337@ubuntu-linux-20-04-desktop>
 <a31140c6-4c2f-4c86-affd-baf0a51a0bb7@bugseng.com>
 <578e282c-0b66-60c1-895f-197a859a1df4@xen.org>
From: Simone Ballarin <simone.ballarin@bugseng.com>
Organization: BUGSENG
In-Reply-To: <578e282c-0b66-60c1-895f-197a859a1df4@xen.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

On 19/10/23 10:26, Julien Grall wrote:
> Hi Simone,
> 
> On 19/10/2023 08:44, Simone Ballarin wrote:
>> On 19/10/23 02:57, Stefano Stabellini wrote:
>>> On Wed, 18 Oct 2023, Simone Ballarin wrote:
>>>> Deviate violations of MISRA C:2012 Rule 13.1 caused by
>>>> functions vcpu_runnable and __bad_atomic_size. These functions
>>>> contain side-effects such as debugging logs, assertions and
>>>> failures that cannot cause unexpected behaviors.
>>>>
>>>> Add "noeffect" call property to functions read_u.*_atomic and
>>>> get_cycles.
>>>>
>>>> Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>
>>>
>>> Acked-by: Stefano Stabellini <sstabellini@kernel.org>
>>>
>>> However one comment below
>>>
>>>
>>>> ---
>>>>   .../eclair_analysis/ECLAIR/call_properties.ecl      | 10 ++++++++++
>>>>   automation/eclair_analysis/ECLAIR/deviations.ecl    | 13 
>>>> +++++++++++++
>>>>   docs/misra/deviations.rst                           | 11 +++++++++++
>>>>   3 files changed, 34 insertions(+)
>>>>
>>>> diff --git a/automation/eclair_analysis/ECLAIR/call_properties.ecl 
>>>> b/automation/eclair_analysis/ECLAIR/call_properties.ecl
>>>> index 3f7794bf8b..f410a6aa58 100644
>>>> --- a/automation/eclair_analysis/ECLAIR/call_properties.ecl
>>>> +++ b/automation/eclair_analysis/ECLAIR/call_properties.ecl
>>>> @@ -104,3 +104,13 @@ Furthermore, their uses do initialize the 
>>>> involved variables as needed by futher
>>>> -call_properties+={"macro(^(__)?(raw_)?copy_from_(paddr|guest|compat)(_offset)?$)", {"pointee_write(1=always)", "pointee_read(1=never)", "taken()"}}
>>>> -call_properties+={"macro(^(__)?copy_to_(guest|compat)(_offset)?$)", 
>>>> {"pointee_write(2=always)", "pointee_read(2=never)", "taken()"}}
>>>>   -doc_end
>>>> +
>>>> +-doc_begin="Functions generated by build_atomic_read cannot be 
>>>> considered pure
>>>> +since the input pointer is volatile."
>>>> +-call_properties+={"^read_u(8|16|32|64|int)_atomic.*$", {"noeffect"}}
>>>> +-doc_end
>>>> +
>>>> +-doc_begin="get_cycles does not perform visible side-effects "
>>>> +-call_property+={"name(get_cycles)", {"noeffect"}}
>>>> +-doc_end
>>>> +
>>>> diff --git a/automation/eclair_analysis/ECLAIR/deviations.ecl 
>>>> b/automation/eclair_analysis/ECLAIR/deviations.ecl
>>>> index fa56e5c00a..b80ccea7bc 100644
>>>> --- a/automation/eclair_analysis/ECLAIR/deviations.ecl
>>>> +++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
>>>> @@ -233,6 +233,19 @@ this."
>>>>   -config=MC3R1.R10.1,etypes+={safe,
>>>> "stmt(operator(and||or||xor||not||and_assign||or_assign||xor_assign))",
>>>>     "any()"}
>>>> +#
>>>> +# Series 13.
>>>> +#
>>>> +
>>>> +-doc_begin="Function __bad_atomic_size is intended to generate a 
>>>> linkage error
>>>> +if invoked. Calling it in intentionally unreachable switch cases is 
>>>> safe even
>>>> +in a initializer list."
>>>> +-config=MC3R1.R13.1,reports+={safe, 
>>>> "first_area(^.*__bad_atomic_size.*$)"}
>>>> +-doc_end
>>>> +
>>>> +-doc_begin="Function vcpu_runnable contains pragmas and other 
>>>> side-effects for
>>>> +debugging purposes, their invocation is safe even in a initializer 
>>>> list."
>>>> +-config=MC3R1.R13.1,reports+={safe, "first_area(^.*vcpu_runnable.*$)"}
>>>>   -doc_end
>>>>   -doc_begin="See Section \"4.5 Integers\" of \"GCC_MANUAL\", where 
>>>> it says that
>>>> diff --git a/docs/misra/deviations.rst b/docs/misra/deviations.rst
>>>> index 8511a18925..2fcdb8da58 100644
>>>> --- a/docs/misra/deviations.rst
>>>> +++ b/docs/misra/deviations.rst
>>>> @@ -192,6 +192,17 @@ Deviations related to MISRA C:2012 Rules:
>>>>          See automation/eclair_analysis/deviations.ecl for the full 
>>>> explanation.
>>>>        - Tagged as `safe` for ECLAIR.
>>>> +   * - R13.1
>>>> +     - Function __bad_atomic_size is intended to generate a linkage 
>>>> error if
>>>> +       invoked. Calling it in intentionally unreachable switch 
>>>> cases is
>>>> +       safe even in a initializer list.
>>>> +     - Tagged as `safe` for ECLAIR.
>>>> +
>>>> +   * - R13.1
>>>> +     - Function vcpu_runnable contains pragmas and other 
>>>> side-effects for
>>>> +       debugging purposes, their invocation is safe even in a 
>>>> initializer list.
>>>> +     - Tagged as `safe` for ECLAIR.
>>>
>>>
>>> Would it be possible to use SAF instead? If not, this is fine.
>>
>> Yes, but I do not suggest using SAF comments in these cases.
> 
> There are not many use of __bad_atomic_size() and I don't expect much 
> more. So I think SAF- makes more sense.

There are 13 invocations in the preprocessed code: some of them are 
contained in macro expansions. Adding a SAF in a macro means to add 
useless comments if the macro is not expanded in an initializer list.

The correct thing would be adding 13 SAFs. If this is ok, I can do it.

> 
> For vcpu_runnable(), I don't quite understand the argument. I can't find 
> any pragma around the function and I can't find any side-effects in it. 
> Can you clarify?
> 


vcpu_runnable calls atomic_read.

In ARM, atomic_read uses a volatile pointer (that's a side-effect).

In X86 it contains a MACRO (read_atomic) that contains the pragmas
and also __bad_atomic_size.

Maybe the text should discriminate the two cases.

> Cheers,
> 

-- 
Simone Ballarin, M.Sc.

Field Application Engineer, BUGSENG (https://bugseng.com)



From xen-devel-bounces@lists.xenproject.org Thu Oct 19 09:05:41 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 09:05:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619002.963438 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtOyK-0004bI-Qc; Thu, 19 Oct 2023 09:05:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619002.963438; Thu, 19 Oct 2023 09:05: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 1qtOyK-0004bB-NQ; Thu, 19 Oct 2023 09:05:40 +0000
Received: by outflank-mailman (input) for mailman id 619002;
 Thu, 19 Oct 2023 09:05: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=g4nO=GB=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qtOyJ-0004b3-Uq
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 09:05:39 +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 ac1f73db-6e5e-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 11:05:39 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DU2PR04MB8871.eurprd04.prod.outlook.com (2603:10a6:10:2e2::11)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.8; Thu, 19 Oct
 2023 09:05:36 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%7]) with mapi id 15.20.6907.022; Thu, 19 Oct 2023
 09:05: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: ac1f73db-6e5e-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Ia2HBhunl4Yxj7J2kIkpANnNjTCd+xb+7dohKGdmzl/CgWud4oxav3XfMkyBMBQogc0ULBjNBV5Z1n5pArZTH/DYmvRpi3VpM5F7l8BZAst79+ssUc1YmIlo7zJJk5j/FVOCqLS+HCJOSYAcuxqy9eaLSm1YiLMlbw+0eceNiaBMc/x23Ey8p0nmVohW9nDNrpsZqRQ8+j04yv8Ll5j4GwV0hBvQhr62D5S8vCYemT+iwDUsEMvNSs4vpw9jMFhc9ZWTCPEdUPNwRYxKaj6FZjEhS8XNryNuVlsVHkL5y+ZMzaIVTPOp/9F3ys1kadqO/YpmkABj0aNHBjTzBxwy/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=oUKz6YViOKcxiPSWSVo90ESDt9sgAVkTjfsUd1/DHfA=;
 b=VTRTGM9JtsmY8CDFHknA43CPunTFiB6+O96vsOXJ7+h8CnoJghnGXQ1jKNnm+eNWZJYZjVbce6bYoLg9nFS95OdGlcOIBQbdkFf0kcsIqVXSUyrLrO8eVBhlOERL8swmHmLjvgAX+Clc6zminOWDTNEgXnk+DkrT6J95PnsxTyKCVugcLgunLf53vYiHxdCvA3cKMs9q0PFbjZSntyq4D6F9x15WXhkgvBR4r46uVkP5InfLGpmNskD2JOGvPunfxeVWeL0FnYEhaEor3FQfxQhbJCFuhw3ji83inR5Ez09B2V7mvxdFzzkdlsiBMmNFaCao8XJEIacYDN7bVu9ShQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=oUKz6YViOKcxiPSWSVo90ESDt9sgAVkTjfsUd1/DHfA=;
 b=A26INJOE7nDupMKFTrdE8xmoScQrzkWUPy6HdKKYSBNnonycX2WHFFeF+DhleFtqz68odhwS+jOsz5b7LbxQJbKI1JikWcaB8V+V/H5SeMQJC9KmeFmjOqit0GtSbgHBWbGklQ+oDuJOETsPzcp02yR6lnxzmqB8JMLvTJe97A4z52Kwt3w3akaGecW2hx4hy7kD05PVEDUX8sJoVYN/kj3j5NPcqOD+p313KTen9xRjJJZvuAh1sHyntV7o90G+lv6KEsrfBNDRtKHmUzGRkzCvCfMqGO41rnYEDApDvVKJgnvrTdl4zrO5wba0FKvRTAvfjxSibX5fxm906KOGdA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <0911e74f-73e1-6053-ce1f-ecea98ea5f17@suse.com>
Date: Thu, 19 Oct 2023 11:05: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 v1 02/29] xen/asm-generic: introduce stub header paging.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>
 <5def596788d602b9b34302630c91644952c7115d.1694702259.git.oleksii.kurochko@gmail.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <5def596788d602b9b34302630c91644952c7115d.1694702259.git.oleksii.kurochko@gmail.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR5P281CA0058.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:f0::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_|DU2PR04MB8871:EE_
X-MS-Office365-Filtering-Correlation-Id: 1d54d6b3-066b-46b4-d8d5-08dbd0828ecd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	UPy4M4lV0cl82VR3hGf5/ereUP1pEFWHhRipHxdvJVGCzvDkV5yuPkU3obFb7LQCNZVGefCNjZbQ26Oai72J14adoN2WtiCj/xBY1SUFWmlgtxsgMiWsdHuavLb6/TKTOedp+sch6wYk3NUbhpyn3bEYCvCltPADa6LmPCN2aWvSZ8oByz5YJZyLT16tvsPqMy+sz9eOkdl4JArpgJWZMZU+jgUREBEC6aOXgX0yPbWM0pWg1YbdDdw3vM+3dhRz6cFkMBGLKLq90U0N0hgIzV6q4mzGmjxQST4ZEzJJzjhUfQWmCOaw2BW/M9ZHIFoqNolZEUx1WKiDx6avse5swPv6x9RZpf6ekoSPFgtC+Hn9KFIEDdiV864DpbT9SrlYzu5jC/Lu1Nd1ZpytE5JW0kwez8918Ll4cY2ZGPXgecLvUJ3tcQhPKIunHNvTK3uWdp3fdet3Y0ALemPFGe7mOXLOy1zWpsJdf9+0SsdZRSCFtvg/cbfWpCZZpN2LzgBgr2nj/gJMSeUvBf1UAaSXDkVspkZqyw7DbtxTjBwOBhDIKqjXwf6ndDLsMdgtMfKoGYulicKqBppsbvzJv9B9RHU03IpancElP6xFnfcq4FwmzJtSjbj26ymMyvBqCLvPR54ZlaBw5/LjTSedfwizwXAMW3+9SA5i/qagr8cDsbA=
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)(39860400002)(366004)(136003)(230922051799003)(451199024)(186009)(1800799009)(64100799003)(2906002)(4326008)(5660300002)(54906003)(66476007)(66946007)(6916009)(8936002)(66556008)(316002)(478600001)(6486002)(8676002)(41300700001)(36756003)(4744005)(86362001)(31696002)(38100700002)(2616005)(53546011)(6506007)(26005)(6512007)(31686004)(41533002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?Ty9kSVArMGhyOEJQMCtqZDVtUzFheVpXVUQreDc1SUpQVEVoT01HMnFnZnli?=
 =?utf-8?B?UlQrSDlYeGdSSElnTlBCTVpjRmw1UmtrYlNRM2JBQTdxVkpsU1NhM1ZmQWNC?=
 =?utf-8?B?eS9mS2dzd0pyNUJJTitQYjk1WEFsaWJWOU95a3JPOTBDUnFScGhQTnBXQktR?=
 =?utf-8?B?QlBBS2NaU0ZQTUtDMUpaRVNmZlJCUzJFTHZmZERxUnYwamNtRUVIb0VLeTZo?=
 =?utf-8?B?Z1BkeTQxZHBvakx0bys4MDhXSjJKaERaT3RENWdheWxWWlVDenFJbkpCYktX?=
 =?utf-8?B?OVBKQ2ExSDRaRXU4WUJWODJDVU9wbTRGRU1wY1VUU0VVaDNhUlk3MXdvbS94?=
 =?utf-8?B?S2VSWnd2Z2ZteVgydm9ySmNPb05kSktwaWlUV1B6KytZOHZuLzEvQWgvWSsx?=
 =?utf-8?B?bXQ3R0plYittVVMvZXFTMlhoYlNrb2pNSDFwbGR5dUtEUURpL2Q5bVZWMGRu?=
 =?utf-8?B?eW9wWUlleFR6aWZxMFI5OEJqSXdZTnVudldRSkRtNDVGbzhka1AwZDZYaS9o?=
 =?utf-8?B?Y0ltb2gydUt4Yk9FYW5MTkswMFRSdlh0K0VIK1lUdnVIMUFYYVpDWXJ3S3lq?=
 =?utf-8?B?K04wTVVoRTZDOGx5aFBETHovcDI0V0gvRVl6bWxCenlHaWwydHdPMFVqQ3dv?=
 =?utf-8?B?dmZLMytmNDFTRmQwa01vaklITXZPT1JXcUVIZ1pEQWo0Z0pIQ25oQTNIVXp3?=
 =?utf-8?B?QnBKUW9rRmxLTUZQb0Y0T2RDK1lTY3NLWTFtZTVMcnArNVhjYU12WHFVd08w?=
 =?utf-8?B?YmNSSmU5MjNxTVIzQnRKd29SSkRmbGdwOVU3clkyT09ZMmhUMWJ3dnNQMm8v?=
 =?utf-8?B?dzcxVklBQkY5S28vTVdOM0ZtV3h5N2NZOFRIVElhK2RjUWdJMk5Lbk4vQ1ZI?=
 =?utf-8?B?M3cwTDVnR0swUlZsVWt1bUpncjRQa0gzR1dHQlY0aUdxM1VEWlM2MTBYVDlJ?=
 =?utf-8?B?bnl2SW1rSU5ZWjBTUFZ5WDhaeGJsaC90K1dnRU10OHlENTlpalUxZUx5SUN2?=
 =?utf-8?B?V3VlVHBBWWJnTmNsa2V2dGR5NGM2V1RPeXUzNzcvcG1QaWphR1R6cDJsM1I1?=
 =?utf-8?B?OXJhZjhWeFhFTlQzMzlUdUx4OHJxNFV6ZnRub2d1WkFaWWxWMFBRMXFLaERs?=
 =?utf-8?B?Y056aDhBMSs3SllsUzZRZS9NTXREU0NsL1JWeldqQy9DeHlQN3FFckhZaUpT?=
 =?utf-8?B?LzkzRGZhZnNqamhRNUc1Y3A4SzgvTUlOOFNBT2VMd2RBbUMxekM3ODJYa0dw?=
 =?utf-8?B?bmF4UUZLUkpPeHpKb25pVmRaWmFoUjE5K050WWVlbTBiV2NQTzFGbEVZdmdC?=
 =?utf-8?B?RW1XTHhYQlMwZHM2QVZRRnByMzErQ2w3SnBRK2RSSHBnNDlPSTBGS3NjQjZn?=
 =?utf-8?B?WVI1ZU5HWXE5OHFueFhJY3FCWHptVUJGWTJ1dnlwOG9hcm5sZVRPcjdQSWRy?=
 =?utf-8?B?Vk04VWVydDliUTdNYisxZlBnaWp1ZWFqRFhOVHNHUzFRWnJwMUVNb0wyQXJv?=
 =?utf-8?B?OGljRE9mZUN2b0NHL2lRZDNtd01INzJQd0MwNkxYa0N0R2ZIQzVXc3VGUE0x?=
 =?utf-8?B?NVN6RjRWeDR5akRiNkw3bEtXdmRLUGlpcUZQTU9JbjlyYmRzL3h6dmsyNlBs?=
 =?utf-8?B?SFBzUzcxS241SFRIWFUyaTZ2MkNxcVNCUU1NRTA3WFNNbURuRzVoNS9VVENu?=
 =?utf-8?B?R2VWbTk2KzZ4T3ZBdWZZbzZJVGZoNksxekNncjFycU5JeXRoa3g3UzJrUlkw?=
 =?utf-8?B?M1Y2Zkk1eGYzcHpVNmJpUGtrWFZYMU9nZktKdmNNNXlheXlrM3lFU1Uya1pJ?=
 =?utf-8?B?eHhMM3M5SFg5bmZXcVlEWHJYUUVIbk91WDd1cmUraGcvb3U0NEt0YnV0cCtq?=
 =?utf-8?B?R01zcGdKV0JOV243U0ZPNkJWaGkvL3htQ2ZOaDV1OVdaK2lsTW5YQ2Raak1L?=
 =?utf-8?B?VW5ieXN0STFBUWV2V28zaTc4QnAvSUJMN0dMWmZwV1hiWHdodVJmV21GNTJX?=
 =?utf-8?B?d2lwODFORFUreENSSVhPZzVtMUtlVk5Xd1EvbktVRi9FUWhDTGFuR0NaNTJn?=
 =?utf-8?B?RnI0U3h1c29LVmU4SVBvdkM0RDEvUkI0Z2tMR3pRMVRpbEZZUVpOdVJ2OXUv?=
 =?utf-8?Q?dgViystyB+HIy5tTm22z8PWs7?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 1d54d6b3-066b-46b4-d8d5-08dbd0828ecd
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Oct 2023 09:05:36.4253
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: vtV7mmUDDRaFAMqmMTCCKVG/AnyyFOjzZJ7WQe4ManwvLZwNPzEQ/9PyKynHnC9PSkiCgu1NW+cQ0C103NFWTA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU2PR04MB8871

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>
> ---
>  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__ */

Looks okay, but wants accompanying by dropping (i.e. effectively moving)
Arm's respective header. The description than also wants adjusting (it
wasn't quite suitable anyway, as there's missing context).

Jan


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 09:06:00 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 09:06:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619003.963448 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtOye-00053x-1n; Thu, 19 Oct 2023 09:06:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619003.963448; Thu, 19 Oct 2023 09: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 1qtOyd-00053q-VC; Thu, 19 Oct 2023 09:05:59 +0000
Received: by outflank-mailman (input) for mailman id 619003;
 Thu, 19 Oct 2023 09: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=yz61=GB=suse.com=jgross@srs-se1.protection.inumbo.net>)
 id 1qtOyd-00052L-A8
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 09:05:59 +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 b6f5f50e-6e5e-11ee-9b0e-b553b5be7939;
 Thu, 19 Oct 2023 11:05:57 +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 7505721B00;
 Thu, 19 Oct 2023 09:05:56 +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 32B17139C2;
 Thu, 19 Oct 2023 09:05:56 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap2.suse-dmz.suse.de with ESMTPSA id PljBCnTxMGV5TwAAMHmgww
 (envelope-from <jgross@suse.com>); Thu, 19 Oct 2023 09:05: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: b6f5f50e-6e5e-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1697706356; 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=OeJbwcqNRCxvqk1O2Sj0l6691j6KA05WSasvzi0/x1w=;
	b=tW8NthHUkb4uYjAdV4f4G8hvw0doNYWJ0EvXru2NOIrHGg86/UzJWYrsdLeFBOn9sGFeEw
	yeywk0N47oSeSs6/czHuG8APzSlGi50aQyLBnyZUwGV4V7kcoWxs2pj07ztr4/Ry4/N5b2
	+UFtIGmg5H3EyO6vzZEAXBts+di7bUA=
Message-ID: <e909d01d-6609-4f3e-af05-e829bf1b278c@suse.com>
Date: Thu, 19 Oct 2023 11:05:55 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v2 02/13] xen/spinlock: reduce lock profile ifdefs
Content-Language: en-US
To: Jan Beulich <jbeulich@suse.com>
Cc: 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>, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <20231013094224.7060-1-jgross@suse.com>
 <20231013094224.7060-3-jgross@suse.com>
 <12b1909a-5ad2-bc8e-8855-e80b468990b1@suse.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: <12b1909a-5ad2-bc8e-8855-e80b468990b1@suse.com>
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature";
 boundary="------------nbbIPIugHUH5xZhsOGv50W1Y"
Authentication-Results: smtp-out1.suse.de;
	none
X-Spam-Level: 
X-Spam-Score: -7.98
X-Spamd-Result: default: False [-7.98 / 50.00];
	 ARC_NA(0.00)[];
	 RCVD_VIA_SMTP_AUTH(0.00)[];
	 XM_UA_NO_VERSION(0.01)[];
	 FROM_HAS_DN(0.00)[];
	 TO_DN_SOME(0.00)[];
	 TO_MATCH_ENVRCPT_ALL(0.00)[];
	 BAYES_HAM(-2.99)[99.95%];
	 MIME_GOOD(-0.20)[multipart/signed,multipart/mixed,text/plain];
	 HAS_ATTACHMENT(0.00)[];
	 NEURAL_HAM_LONG(-3.00)[-1.000];
	 MIME_BASE64_TEXT_BOGUS(1.00)[];
	 DKIM_SIGNED(0.00)[suse.com:s=susede1];
	 NEURAL_HAM_SHORT(-1.00)[-1.000];
	 MIME_BASE64_TEXT(0.10)[];
	 RCPT_COUNT_SEVEN(0.00)[8];
	 SIGNED_PGP(-2.00)[];
	 FROM_EQ_ENVFROM(0.00)[];
	 MIME_TRACE(0.00)[0:+,1:+,2:+,3:+,4:~,5:~];
	 RCVD_COUNT_TWO(0.00)[2];
	 RCVD_TLS_ALL(0.00)[];
	 MID_RHS_MATCH_FROM(0.00)[];
	 MIME_UNKNOWN(0.10)[application/pgp-keys]
X-Spam-Flag: NO

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--------------nbbIPIugHUH5xZhsOGv50W1Y
Content-Type: multipart/mixed; boundary="------------riJy0eTQm0zjsv0eIQCa8ExY";
 protected-headers="v1"
From: Juergen Gross <jgross@suse.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: 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>, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
Message-ID: <e909d01d-6609-4f3e-af05-e829bf1b278c@suse.com>
Subject: Re: [PATCH v2 02/13] xen/spinlock: reduce lock profile ifdefs
References: <20231013094224.7060-1-jgross@suse.com>
 <20231013094224.7060-3-jgross@suse.com>
 <12b1909a-5ad2-bc8e-8855-e80b468990b1@suse.com>
In-Reply-To: <12b1909a-5ad2-bc8e-8855-e80b468990b1@suse.com>

--------------riJy0eTQm0zjsv0eIQCa8ExY
Content-Type: multipart/mixed; boundary="------------uKVwR0BXy7AP33Brw0Zk0piE"

--------------uKVwR0BXy7AP33Brw0Zk0piE
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: base64

T24gMTguMTAuMjMgMTc6NTcsIEphbiBCZXVsaWNoIHdyb3RlOg0KPiBPbiAxMy4xMC4yMDIz
IDExOjQyLCBKdWVyZ2VuIEdyb3NzIHdyb3RlOg0KPj4gV2l0aCBzb21lIHNtYWxsIGFkanVz
dG1lbnRzIHRvIHRoZSBMT0NLX1BST0ZJTEVfKiBtYWNyb3Mgc29tZSAjaWZkZWZzDQo+PiBj
YW4gYmUgZHJvcHBlZCBmcm9tIHNwaW5sb2NrLmMuDQo+Pg0KPj4gU2lnbmVkLW9mZi1ieTog
SnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1c2UuY29tPg0KPj4gLS0tDQo+PiBWMjoNCj4+IC0g
bmV3IHBhdGNoDQo+PiAtLS0NCj4+ICAgeGVuL2NvbW1vbi9zcGlubG9jay5jIHwgNDUgKysr
KysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KPj4gICAxIGZpbGUg
Y2hhbmdlZCwgMTkgaW5zZXJ0aW9ucygrKSwgMjYgZGVsZXRpb25zKC0pDQo+Pg0KPj4gZGlm
ZiAtLWdpdCBhL3hlbi9jb21tb24vc3BpbmxvY2suYyBiL3hlbi9jb21tb24vc3BpbmxvY2su
Yw0KPj4gaW5kZXggMjAyYzcwNzU0MC4uNDg3OGEwMTMwMiAxMDA2NDQNCj4+IC0tLSBhL3hl
bi9jb21tb24vc3BpbmxvY2suYw0KPj4gKysrIGIveGVuL2NvbW1vbi9zcGlubG9jay5jDQo+
PiBAQCAtMjY3LDI1ICsyNjcsMjggQEAgdm9pZCBzcGluX2RlYnVnX2Rpc2FibGUodm9pZCkN
Cj4+ICAgICAgICAgICBsb2NrLT5wcm9maWxlLT50aW1lX2hvbGQgKz0gTk9XKCkgLSBsb2Nr
LT5wcm9maWxlLT50aW1lX2xvY2tlZDsgICAgICBcDQo+PiAgICAgICAgICAgbG9jay0+cHJv
ZmlsZS0+bG9ja19jbnQrKzsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgXA0KPj4gICAgICAgfQ0KPj4gLSNkZWZpbmUgTE9DS19QUk9GSUxFX1ZBUiAgICBz
X3RpbWVfdCBibG9jayA9IDANCj4+IC0jZGVmaW5lIExPQ0tfUFJPRklMRV9CTE9DSyAgYmxv
Y2sgPSBibG9jayA/IDogTk9XKCk7DQo+PiAtI2RlZmluZSBMT0NLX1BST0ZJTEVfR09UICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcDQo+
PiArI2RlZmluZSBMT0NLX1BST0ZJTEVfVkFSKHZhbCkgICAgc190aW1lX3QgYmxvY2sgPSAo
dmFsKQ0KPiANCj4gVGhpcyBtYWNybywgYW5kIHRoZW4gYXQgbGVhc3QgZm9yIGNvbnNpc3Rl
bmN5IGFsc28gLi4uDQo+IA0KPj4gKyNkZWZpbmUgTE9DS19QUk9GSUxFX0JMT0NLICBibG9j
ayA9IGJsb2NrID8gOiBOT1coKQ0KPiANCj4gLi4uIHRoaXMgb25lIHNob3VsZCBpbW8gdGFr
ZSB0aGUgdmFyaWFibGUgbmFtZSBhcyBhbiBhcmd1bWVudC4gT3RoZXJ3aXNlDQo+IHNpdHVh
dGlvbnMgbGlrZSAuLi4NCj4gDQo+PiAgIHZvaWQgX3NwaW5fYmFycmllcihzcGlubG9ja190
ICpsb2NrKQ0KPj4gICB7DQo+PiAgICAgICBzcGlubG9ja190aWNrZXRzX3Qgc2FtcGxlOw0K
Pj4gLSNpZmRlZiBDT05GSUdfREVCVUdfTE9DS19QUk9GSUxFDQo+PiAtICAgIHNfdGltZV90
IGJsb2NrID0gTk9XKCk7DQo+PiAtI2VuZGlmDQo+PiArICAgIExPQ0tfUFJPRklMRV9WQVIo
Tk9XKCkpOw0KPj4gICANCj4+ICAgICAgIGNoZWNrX2JhcnJpZXIoJmxvY2stPmRlYnVnKTsN
Cj4+ICAgICAgIHNtcF9tYigpOw0KPj4gQEAgLTQzMiwxMyArNDMxLDcgQEAgdm9pZCBfc3Bp
bl9iYXJyaWVyKHNwaW5sb2NrX3QgKmxvY2spDQo+PiAgICAgICB7DQo+PiAgICAgICAgICAg
d2hpbGUgKCBvYnNlcnZlX2hlYWQoJmxvY2stPnRpY2tldHMpID09IHNhbXBsZS5oZWFkICkN
Cj4+ICAgICAgICAgICAgICAgYXJjaF9sb2NrX3JlbGF4KCk7DQo+PiAtI2lmZGVmIENPTkZJ
R19ERUJVR19MT0NLX1BST0ZJTEUNCj4+IC0gICAgICAgIGlmICggbG9jay0+cHJvZmlsZSAp
DQo+PiAtICAgICAgICB7DQo+PiAtICAgICAgICAgICAgbG9jay0+cHJvZmlsZS0+dGltZV9i
bG9jayArPSBOT1coKSAtIGJsb2NrOw0KPj4gLSAgICAgICAgICAgIGxvY2stPnByb2ZpbGUt
PmJsb2NrX2NudCsrOw0KPj4gLSAgICAgICAgfQ0KPj4gLSNlbmRpZg0KPj4gKyAgICAgICAg
TE9DS19QUk9GSUxFX0JMS0FDQyhsb2NrLT5wcm9maWxlLCBibG9jayk7DQo+PiAgICAgICB9
DQo+PiAgICAgICBzbXBfbWIoKTsNCj4+ICAgfQ0KPiANCj4gLi4uIHRoaXMgYXJpc2Ugd2hl
cmUgdGhlcmUncyBubyB2aXNpYmxlIGRlY2xhcmF0aW9uIG9mICJibG9jayIsIGJ1dCBhDQo+
IHVzZS4gKE9yaWdpbmFsbHkgSSB3YXMgbWVhbmluZyB0byBhc2sgaG93IHRoaXMgZnVuY3Rp
b24gd291bGQgYnVpbGQsDQo+IHdoZW4gdGhlIGRlY2xhcmF0aW9uIGlzIGRyb3BwZWQuKQ0K
DQpPa2F5Lg0KDQoNCkp1ZXJnZW4NCg0K
--------------uKVwR0BXy7AP33Brw0Zk0piE
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-----

--------------uKVwR0BXy7AP33Brw0Zk0piE--

--------------riJy0eTQm0zjsv0eIQCa8ExY--

--------------nbbIPIugHUH5xZhsOGv50W1Y
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/Ey8FAmUw8XMFAwAAAAAACgkQsN6d1ii/Ey8R
xAf8C9igTRKe5RqFkX8GU+A7pEdSBObcjCYcFnVR+HMSyTV9+R5ICeRTTsLsqGj7+3Za06gFiaEh
UeANMcnqyVHTPGbYbVTHj6kj1cVAT7z9CJHdetl4GI8WVI3HnIX6Hs6lfsi/XoP7KLh2xzX/6Hwd
zfWRjRYvEAMxJITJEuArYV5S/vlWpS0NlIpj0J9N7uAJ1odt/14wyaAy0ykAvIevyLqEVYBRyvCJ
BKLuUOlKQktlKHdz+lK1pl91/h31Nj7GNEV3gJbn66wYVgiU80pHbFSacXKhvEf/8DjwgPQSTBP1
UE3Y/8QrDonm0gUaC23hRdE7JFhcJywWyNYxXL8hjw==
=Hepb
-----END PGP SIGNATURE-----

--------------nbbIPIugHUH5xZhsOGv50W1Y--


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 09:07:25 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 09:07:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619006.963458 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtP00-00068D-Fg; Thu, 19 Oct 2023 09:07:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619006.963458; Thu, 19 Oct 2023 09:07: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 1qtP00-000686-Cr; Thu, 19 Oct 2023 09:07:24 +0000
Received: by outflank-mailman (input) for mailman id 619006;
 Thu, 19 Oct 2023 09:07: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=in48=GB=bugseng.com=simone.ballarin@srs-se1.protection.inumbo.net>)
 id 1qtOzy-00067t-TA
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 09:07:22 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id e96be22d-6e5e-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 11:07:21 +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 4B6884EE0743;
 Thu, 19 Oct 2023 11:07: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: e96be22d-6e5e-11ee-98d5-6d05b1d4d9a1
Message-ID: <915d14c8-31fe-4381-bce6-3213da284115@bugseng.com>
Date: Thu, 19 Oct 2023 11:07:20 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN PATCH 3/4] xen/include: add pure and const attributes
Content-Language: en-US
To: Stefano Stabellini <sstabellini@kernel.org>
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>, Wei Liu <wl@xen.org>
References: <cover.1697638210.git.simone.ballarin@bugseng.com>
 <fd5421162a00aa782e0776324ff6497193c1e3d3.1697638210.git.simone.ballarin@bugseng.com>
 <alpine.DEB.2.22.394.2310181801350.965337@ubuntu-linux-20-04-desktop>
From: Simone Ballarin <simone.ballarin@bugseng.com>
Organization: BUGSENG
In-Reply-To: <alpine.DEB.2.22.394.2310181801350.965337@ubuntu-linux-20-04-desktop>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 19/10/23 03:02, Stefano Stabellini wrote:
> On Wed, 18 Oct 2023, Simone Ballarin wrote:
>> Add const and pure attributes to address reports
>> of MISRA C:2012 Rule 13.1: Initializer lists shall
>> not contain persistent side effects
>>
>> Add pure attribute to function pdx_to_pfn.
>> Add const attribute to functions generated by TYPE_SAFE.
>>
>> These functions are used in initializer lists: adding
>> the attributes ensures that no effect will be performed
>> by them.
>>
>> Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>
> 
> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
> 
> However one comment below...
> 
>> ---
>> Function attributes pure and const do not need to be added as GCC
>> attributes, they can be added using ECLAIR configurations.
>> ---
>>   xen/include/xen/pdx.h      | 2 +-
>>   xen/include/xen/typesafe.h | 4 ++--
>>   2 files changed, 3 insertions(+), 3 deletions(-)
>>
>> diff --git a/xen/include/xen/pdx.h b/xen/include/xen/pdx.h
>> index f3fbc4273a..5d1050967a 100644
>> --- a/xen/include/xen/pdx.h
>> +++ b/xen/include/xen/pdx.h
>> @@ -164,7 +164,7 @@ static inline unsigned long pfn_to_pdx(unsigned long pfn)
>>    * @param pdx Page index
>>    * @return Obtained pfn after decompressing the pdx
>>    */
>> -static inline unsigned long pdx_to_pfn(unsigned long pdx)
>> +static inline __attribute_pure__ unsigned long pdx_to_pfn(unsigned long pdx)
>>   {
>>       return (pdx & pfn_pdx_bottom_mask) |
>>              ((pdx << pfn_pdx_hole_shift) & pfn_top_mask);
>> diff --git a/xen/include/xen/typesafe.h b/xen/include/xen/typesafe.h
>> index 7ecd3b4a8d..615df6f944 100644
>> --- a/xen/include/xen/typesafe.h
>> +++ b/xen/include/xen/typesafe.h
>> @@ -21,8 +21,8 @@
>>   
>>   #define TYPE_SAFE(_type, _name)                                         \
>>       typedef struct { _type _name; } _name##_t;                          \
>> -    static inline _name##_t _##_name(_type n) { return (_name##_t) { n }; } \
>> -    static inline _type _name##_x(_name##_t n) { return n._name; }
>> +    static inline __attribute_const__ _name##_t _##_name(_type n) { return (_name##_t) { n }; } \
>> +    static inline __attribute_const__ _type _name##_x(_name##_t n) { return n._name; }
>>   
>>   #else
> 
> I think we should also add __attribute_const__ in the NDEBUG definitions
> just below.

Ok.

-- 
Simone Ballarin, M.Sc.

Field Application Engineer, BUGSENG (https://bugseng.com)



From xen-devel-bounces@lists.xenproject.org Thu Oct 19 09:11:35 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 09:11:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619014.963468 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtP3w-0007bC-V7; Thu, 19 Oct 2023 09:11:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619014.963468; Thu, 19 Oct 2023 09: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 1qtP3w-0007b5-Rn; Thu, 19 Oct 2023 09:11:28 +0000
Received: by outflank-mailman (input) for mailman id 619014;
 Thu, 19 Oct 2023 09: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=g4nO=GB=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qtP3v-0007az-Fu
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 09:11:27 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 (mail-db8eur05on20614.outbound.protection.outlook.com
 [2a01:111:f400:7e1a::614])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 7b57762d-6e5f-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 11:11:27 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PAXPR04MB9517.eurprd04.prod.outlook.com (2603:10a6:102:229::20)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.36; Thu, 19 Oct
 2023 09:11:24 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%7]) with mapi id 15.20.6907.022; Thu, 19 Oct 2023
 09:11: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: 7b57762d-6e5f-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=VGUPnxqPVk3ZUvZdzwVxYYRTC1sG3lLdyBoNsoi53o2jUzezEfVQCUSRkVda1ZsVqzh07mnFPdOxwXx8+FDGuCf/PiDnJ3FwEU9tfC1NwPbPeF4t5o5G7zCwvwhd0oy7njhOsGwynv/IwyGQ3nmb+u5wrcG8m6gy3GXFtDYIEJF+NgehZV3oO3r2pDEFn/WAtdgwSPlAvcutnBQyOdzmRgoSAKOUrOac9DOqIQHAHUmRogqOZd/HE1Hy3CvGJpjWPH6vFEpSodZiF7NNvTYjYldFjEhyfPZcWUZhKXysCByGgsQVFNF2lr31N2JTVJZYcxDodM6Zwx2Loomj+DZ+ag==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=Rg5LAyald4FspBOeWCyfr7t3aqJ0toy2Pkdy7hNxpQ4=;
 b=P50uxc7IaxM/0XQBEx2oFML++G6NQ9GZOJjBBQ+RsQp/Wuj0jreFtDjtNzPUNpBG9iLM9NL7UBT/6Xv/ln6cw9KrvPHUbBrbujkiah7wTa01C5t0spnqL36w0QnoHHabh0G2QnfCxB2bZfHDoU9tEwiLQZTSFayjQY8gL5AgThbOzCOJcqdLAPK/W7yY1VDMSb211V0+ezgN/OvcwdlwwzE3WkCOCgyC8ctgAZmjp5NAB7gnNisS+M6GpkHMv08BFgs04ldPOTZDJh3qMlgIri2WlCJg90aCUAge3aoHoo3WOeaQyHIzfoX5wUCx1ZtPkxp0kZDJ5id4CL/cAlVhCA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=Rg5LAyald4FspBOeWCyfr7t3aqJ0toy2Pkdy7hNxpQ4=;
 b=xanLZDJ+p3g8+LlCiRCqQz4CVfFWEJsN5njNcTod60goPAFz0wH6znXCgKV/ohWe634nOxj+2RrbFbM/KaCgBd5VvURw7TIXDZz2FttPUCCoR2bBKntnVugtHGkwKpq0R7rj20GvbmctPZ0v5l5sPmbsj3FHf6chUJhlRvtpLtK5Uvi/MzLHFpaji14fNLL2uqw6ITZRIisyZaHeSZdaNftbULNeWYEoxgQXYr6iE2D32NcpDFe/06oLYgyPQAE6JRfU8cqmfodHdyEMyAITOFIoUcU+c5Bx168N5aahyoirn493NcEOBesXhQw4iVTE+wWFnaORD2bkmB8ORp7MCg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <dbc0e6fb-3f25-b4cb-83a2-d7c5f1a9e0a3@suse.com>
Date: Thu, 19 Oct 2023 11:11: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 v1 03/29] xen/asm-generic: introduce stub header
 cpufeature.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>
 <c89b1a60ee40576a2841c222a2cefc5ae2a301d3.1694702259.git.oleksii.kurochko@gmail.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <c89b1a60ee40576a2841c222a2cefc5ae2a301d3.1694702259.git.oleksii.kurochko@gmail.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_|PAXPR04MB9517:EE_
X-MS-Office365-Filtering-Correlation-Id: 8494ec19-41e9-4319-2bd1-08dbd0835dff
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	rVWeLX+O4FfFnRABwqa6daHGqbeqgFxsBTP5s8LwGo946e/HNgkP0ro3POd8idmO7qeo0gvJGaqy3P9QLMF29hEbm4ZkE/dcJ4bchjf/DrLjrg/Un1uyYuwJ1woSIXn1QAgqjM9s5s7olWLczmbQBm6QKAccz6pipP9yyrsASmnuxWc/6voMomeHd0PDn/FTC4aCIwBlwEoFG7cHbYuD/uu780ZBtIIv2Xj8QHE2gkaZEJKAbd/sZxj1xsvzBQWpeFn3dWO2DuVWBMIoMnAKYnNg0iSmhvbS0wbhZLMtj/NwiO9Jbh3B/ey8wuDCnMr/yu9scjmkCmiwP3HAVeXZ9eJkQCXA2fhVdPOjdi51jB9z50dkT+oc2loHPT55e3tqcmSR1QKwdeok9dDrq02uwLZoCq+DnTdb5H6BaAmckoe8SE3eAFlzdTjvFiIdLRPDiUbnyPe52IDTT8mX8DFKOF+b76MOwo0YTzsKBDnIgMPOOc7oVWBx5Rh4ZNS3XrH1h2b848vDUvMZsyxQsMcDD7xRm+UMNtd7knUnV/BY2j7P7cCRirWNJ/Zf3+eoY++u02v3bSxLWpLa/vQzroXUB0Hk/6aN62hlHvzL4JUH4KOGN2JFmUfprtYVg6AFWRlEb0m0HqG75bRxTrRReVLgY7O+PlOrGXQf82WgbIkugno=
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)(230922051799003)(451199024)(64100799003)(186009)(1800799009)(66476007)(54906003)(31686004)(6486002)(478600001)(36756003)(38100700002)(66556008)(66946007)(26005)(41300700001)(316002)(2616005)(4744005)(53546011)(6916009)(6506007)(31696002)(86362001)(5660300002)(2906002)(4326008)(6666004)(6512007)(8676002)(8936002)(41533002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?RzhnZVJQVk9CV21TclBmYUdqdkIwdGdENmhVZmlPWEZlcHcyK1Q3STB5aCt0?=
 =?utf-8?B?RjViSm56NDhYYk9LRkdMd3MyZDVmSGw1NkFnSVNTZnJaN1ZUVTBDU0tEaElz?=
 =?utf-8?B?bGJtMWErOTYwVW5Sbm1hTmNXT2h6RnRhSHBTR0N3VmFvOEdpUEpwWU5DdkU0?=
 =?utf-8?B?TGVSZlM3ZEFjYUdWb214SGNVU2RXYXVjMTc2bTJQT0o5N1E0QmtqdGRseGc4?=
 =?utf-8?B?WUlhS3MzbXdVc2lIQi9BeUJyaDVra1ZwaG5LUGxYMkY3VXlPNktUNUo5Ylhi?=
 =?utf-8?B?ZUtDbXRiUk1SQXB0Vko4blZORlplOStIU09MMDhRNC93Ukc3VXNjeWVqc0V3?=
 =?utf-8?B?WG52aXdaZk1qRVR6UW1SZnVWcllVWU9DZmQyOFFJdkVLdUhGV0UzSkNXY0J6?=
 =?utf-8?B?NDZIRTA3V3M3dVVrTGNTWHZla1EyN2RlRmpGSmZIWnZUR2J6Wll1ODJ3S0pq?=
 =?utf-8?B?UytZODVaUW5XNmszVk9KZ1NtTEVHalpRRHJodnE0T2ZyOUZRdzV2b0s1SXlW?=
 =?utf-8?B?OUZIazNFSmpiNHpkd0FiUFd6a0ZMWUFRUHVndGQvdlhBb3l6Q0VxL0pVNnJF?=
 =?utf-8?B?eFNlbndnd1VGRS9vUTl6c3Q3NSszcWdOYWtQYVZkd293eElKWjBwbGFhM3ZE?=
 =?utf-8?B?QzNhZ2grNW5qdkhUaVVseGJ3R2o3N2pNSlhZd0JvM3pURnFkeHJvSTRocmk4?=
 =?utf-8?B?RHoxMWFSY2lBeWx4M3RDT2RqTUw2ZG9TeDh0ai9yMU03aXYyNHM0RDh2Rkd2?=
 =?utf-8?B?Q1NlWnZqQ01MQ3JZVUFWSFVQQjVNQnV0R0NwbHZDOVUyci9hMDdPTTE0R3Jt?=
 =?utf-8?B?SXhnQ2VvZ2xlVzU1OFZCRzZWNE5aUTlvdWxiYmF3a0Q1THNYMXc3dE5nTk9G?=
 =?utf-8?B?LzFzbTBnYlM2eElHdXJnVnp2ODNGOGtDcTg0WW00d01qU0RNQTMzaWJZSDlY?=
 =?utf-8?B?bGl6anV4TGFUWjl0dXBwWWEwOGFKOFZibnVxRDFXZFFFZ0EwR1QrZE51ckJN?=
 =?utf-8?B?dVdPbHdaejVodjM3czVzZnFSS2hBaEowUWlaam1VQm1HdnJPWFF4MkJxc0hI?=
 =?utf-8?B?WVNxQkVNWnBETnZ1TVNicG1lYzhxeThhNVVpRWI1bSs3djF1MjEwZVBOZ3hx?=
 =?utf-8?B?L2hXSFZQWDNDN05vNnArc3A0V1pjRVB1V2VzTHBLdDFTYlhjSk9vZHRaR0Fr?=
 =?utf-8?B?QVBlSkFJRk1GZTVwL1BidjNteFBTeEJ3dVVFSnhQdHhVOWdabEd6YXZWalUy?=
 =?utf-8?B?SUdrODFuWDBoeGRrVC9UZVRoeklSZjdDSzJQKy82My9KbWxwU05XdUR1MG83?=
 =?utf-8?B?ODhQUUVZSlZqUlNnVE1TTjR3T3dza0NsWnI0QnRJRm1BVjNyZjc3MEk4NlI3?=
 =?utf-8?B?WGRqS3htcTB5NHdNd3VnL0c2KzA3NHFYWitnL0k0WldoRmxqWmppcU03ek5Y?=
 =?utf-8?B?NC94c0RoUmFMZWROdnhZNk5Ycy9NWVorK0xSRWRiL2VCRXNhbWsva0dOZE1j?=
 =?utf-8?B?aDhSNi94dTBIR0pnZko1NGFIT05xa2RWdEVCT3RXbUYxN1VYejcyZUVTSWRD?=
 =?utf-8?B?QlpxSTVBbnp6alA5VFVZanNQQzNPdWI5UmFGSlNpSWo3S0dyZ2xheklLbUQ0?=
 =?utf-8?B?bjdkRmkxeUkzcTBxSHFSajQ4aVZoVGpyL1UwYmVTQkRtUEJtblVPY1BGWGoz?=
 =?utf-8?B?Y1pDa3VNWjR3dHF2S1llQU5TZUJ5NWk0dG5pQ3lnUWpKQ210R1hxRHkvY1N3?=
 =?utf-8?B?dC9WV3o1cFZZQkZWU1hROGR4Mlo1NFZKRE1udTlUajVVdGptVTA3ZDlUclF2?=
 =?utf-8?B?TStvMG1PeUpWUXNOOEg1NFFUSk1VaGMrSExqQlRkV0NESTZ4UktHRjU4RWI2?=
 =?utf-8?B?NnVIUHh2T3QyRWxWc2VLd3dKL1hJVDk2WVFTbVZ3RjVhLy8xaWVOd2tSMlNM?=
 =?utf-8?B?d2hqQnR1MjE1d1phcW9RWnFHWnhwd2IrTnNRaHgxQXRxTjE0TDdHMkl5emk1?=
 =?utf-8?B?QXNDWEg3bHhZVkMwRlNwellJU1RtQ3dRZHovWUpjUzFsMk15VCtOZUtma1Qz?=
 =?utf-8?B?TmRrc2dEVVBLN0gweUJlMWZHZ2duY1IvQjJiNXlOWmVSTWlKSDBhbjNBMllJ?=
 =?utf-8?Q?e3WXuW8ACkc5gaGvgAED6FYCS?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 8494ec19-41e9-4319-2bd1-08dbd0835dff
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Oct 2023 09:11:24.0537
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 9numKha/9rrmZEQXx1CZ6dc+VZL28a70+5IgierMhLbkZ4q1zrAW3x5JOtIEiRe1c8jrq9otIs6hZ2QMWaTJFg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB9517

On 14.09.2023 16:56, Oleksii Kurochko wrote:
> --- /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__  */

I'm not convinced an arch can get away without such a header. Certainly
RISC-V and PPC can't, with all their ISA extensions that already exist
(part of which will want making use of, others may simply want exposing
to guests).

Jan


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 09:14:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 09:14:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619017.963478 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtP7B-0000Kp-Co; Thu, 19 Oct 2023 09:14:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619017.963478; Thu, 19 Oct 2023 09: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 1qtP7B-0000Ki-9q; Thu, 19 Oct 2023 09:14:49 +0000
Received: by outflank-mailman (input) for mailman id 619017;
 Thu, 19 Oct 2023 09:14: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=g4nO=GB=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qtP79-0000Kc-8v
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 09:14:47 +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 f23e11a1-6e5f-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 11:14:46 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DBBPR04MB7899.eurprd04.prod.outlook.com (2603:10a6:10:1e1::21)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.21; Thu, 19 Oct
 2023 09:14:44 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%7]) with mapi id 15.20.6907.022; Thu, 19 Oct 2023
 09: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: f23e11a1-6e5f-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=loCPZ1j7b7uDxTHr+QFhr/JGftfvughUG392jLL3AUM1WNZCkRfqLpNpAIY0mGwcEpue3+On0UFFwoEkV13F6zznfg7dcszdrNdBoXFv0oiApYJG0cmIIWX5dZqvBOvr+REvSaglonZ48Ksh/89Re56TeZ6/ENMmL5gVuJtmSvon3Idg6x6XjYUzdIA97x17tV6n8fLtPiN82DvdSWWHBFsxoJuUvTW+Ete9pwVplpd6+fe8F2CHDEGt4aX6TRgc0zO6zWMaquhOd78gjn9buZmu0zr0BiSk/wcWf1o6Uv9Hk/+VPOiPmRgpLsd/5vZ9gu/bjYjEi1b/hmLe76Oi1g==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=r++V9lfQ29gh4CO7YslRm56X49EXxs5HjnB0TpT98Ds=;
 b=X7OQyaFT3mAlECStReTEsLaEFRxSYH+++wqNIxk3gqO5pn5mGzOSZRl/yXLqrB+QHP26A/O6AAZsArEGteoA8QseyFVZfkHzuDZ0d4eeX/er6Z7P/LM2bpAYP5xxoStXZvUE6r8ZHX+jDd0k2jBhbgt2ZfXLSRZsBYW9T3XD1qt0mTpW3wyTjjrYkUKU0IFCds0Eydth1Pulnh6jOIO9JtcN1e2GG1NryUCJTyxjYtDKp/yMpE9oOmVvxSpWrFktymxuO4zFoKklJNUWFRbxJex+nzfLk2Rd5EfE7HdfvdjXG4F9CmoDyL7muChkKo6Ms5X4ygBwSWZ8IJlD2T7EFA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=r++V9lfQ29gh4CO7YslRm56X49EXxs5HjnB0TpT98Ds=;
 b=08RKDupaf6Wz+WPnk8qELfGXWq4RljisH+v5MJz876W1KBc+QegUUJLZUEBNN4ZY0CB3YlFacsd8bVrP37LTfZLC1K9tULEOtSUMHc90O6brCy1ODhcWieP7An/Z6i9d4eotyTuZ216v4Xtc9rJgUvyeZc1YG9QzBh7Q1SskEijkgGR1OylNLwIdiGBCdbWDqxXwDhYFi9qfOyk5JkggpUZstKs8jlxwlGt+FTvuJo1gGSNRGqfmnl5AHCfFdFnGWm65zh+v+1cPqNs9TNF1FAE3iVVEgbuw/OJO7C1yKACjFHQKj5C57LDiq8QPiOJOyLJ8FEl5EiOz4ae8H668qg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <a20f5783-7ee3-6ed1-d4cf-379c30c64a12@suse.com>
Date: Thu, 19 Oct 2023 11:14: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 04/29] xen/asm-generic: introduce stub header device.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>
 <3cc9ecc3abcd21c5ed7276b01bf5963e6a5fd5e0.1694702259.git.oleksii.kurochko@gmail.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <3cc9ecc3abcd21c5ed7276b01bf5963e6a5fd5e0.1694702259.git.oleksii.kurochko@gmail.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0013.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:c8::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_|DBBPR04MB7899:EE_
X-MS-Office365-Filtering-Correlation-Id: ea1faa6b-1c07-4ef3-a854-08dbd083d54b
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	XZyflrlox+WVTDKsJzl4LLiKug26q4rvG+q7zvr1AX5G5cFj5BAImqdOWDnQbWo67KZ/Xjvh8cqA7AkkYYyBCEuHGJ94X/tYx8FynVZZ9nEPvh1ks7TAXgJLFZUejBe5MmWpBNzjSZ8PDwAXOHqZ0iIOxUS14WOysJwdDgn6U4xTsP7veBC5Rr/oQmyYR0ia79++5r8s/uJKZnlaF8ftXPJqfjTFaijmAsrB96bhou+e/QIAEdTumhX7pwNqurNujGdGhS3whztzuVMK4wTIyCveF3wN4FLs+pqehsix4Gej2IsXkj7pbI4I9zx6dso9uiBaRRqjtfTw6JoIp1CrPLmtoxjTbqScFo0TX9Tg5lpef7pS6rcNWe5+vs3XRSBbYRrwvb31NqJHSTCrKT/4tz+Qlr26daXDDsDbCwoqrxfdRhhZeMW+Ilxt4YoiqTDg0iuMosvwZ9NN3NvERUNU3w8RfQ9EwqPkZZwQJWbaAA94lyuCqElPBW8acephm8ogxvs9QQbVGijYmpuB2ktHaeAx0Z75swktq4zqgMS48N4Vpxtn1bqBKuYbRa9COhQ2lLSkaUMk7B3UG1LqVNtipxNVgtWQ0RrPGVAf2nspiCs8ZDoggfScog9DrptbUHQedcFMjDLU4QdXVEpcJDSUT+QhU1pNdc+V8o/3S0DZiDM=
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)(136003)(396003)(346002)(230922051799003)(64100799003)(451199024)(1800799009)(186009)(26005)(2616005)(53546011)(41300700001)(2906002)(4326008)(4744005)(86362001)(31686004)(36756003)(8676002)(31696002)(38100700002)(8936002)(6512007)(6486002)(66946007)(6506007)(6916009)(66476007)(66556008)(5660300002)(54906003)(316002)(6666004)(478600001)(41533002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?aUJ4QU4vam1iNWp2U0JpRlptRThrTDU2bUZrK0hpZTVaa2IwdUQyRmR5ZDN6?=
 =?utf-8?B?VUVhTFh2OFZwTFd4V0RUU1loMkZuOVdES3JSeWxhbkJ3UlN5dTF6WUU1ZjhX?=
 =?utf-8?B?RnVsbUE5WjFjQUN0TERNMThGVWpHb1NDTnhYaDQrOFMvSjdhYlRObGRVOEZl?=
 =?utf-8?B?T1BBT1ZzYUhJRFFOanJrMFJpSHh1Y0FLMCs1NEY2YVROUXMwMldlaHloRHVL?=
 =?utf-8?B?SmNtS2NjWUJmeElPZ1dYeHU3b1hXQWFuR3hHdUorbXFYc0V6WTdsQzhIck1T?=
 =?utf-8?B?dzVKTVV3SXVCcHBhbnNhVFdTa0pKRGlaMFFwTTBWU2N4QUt2NmFxWDhjTnRF?=
 =?utf-8?B?NytDQjZaTjVmakxtRmpZMUVINjdkV2U4R09qN1JLRW9jUFoydXh3Y3NOVCtx?=
 =?utf-8?B?MEJRaTR5QnpjTDI5aEF6WVhiRktXUmMwVnNabUdFZlF2NmpjTDZuTjlPQ25P?=
 =?utf-8?B?QlZSUFMzV3p4Q3VZNldYSWNscWRRbyt0RHhldW5mbzhTR2ZFVWRBTmVLTkFy?=
 =?utf-8?B?L1p3eCtlQ1M2aThaVXVXTmFXSW8yR1RtMnhzcHZhaTN5OTVYQVZsbjhPOXcx?=
 =?utf-8?B?TmVYdFZiSlk3dkFjcktRdjZzRThoYVFqQjhGeG45ZHdZaHFIS1JLeDZwa1ZZ?=
 =?utf-8?B?TDV6bU81MHNINUU3bkNodVhiTkpXZklUMUV5SmZCb2NEUlAwc0dmV1l1VEtS?=
 =?utf-8?B?dXZsSUh3YXoxbEtKTVgrRmt0NndmcFljYmYzb0xYelM5UnFURVQwVmdpQVRp?=
 =?utf-8?B?aWRWanBZT2w4SURBRmVHVTVYVHFGd3FCSE5zdGdFUDE4bExpL3NCQnNNNlcx?=
 =?utf-8?B?bm1Yc0pUQkkxUVl4a0d6M2J6RFdva2hSUlZqM0RoV281ai92Y3IyL0U4c1FI?=
 =?utf-8?B?d2NvMThiQVZrRUI5c0xCUGZDb1ZNaDc2bXdaeXhSTFZDaVZTcTBJSlhTQjQ4?=
 =?utf-8?B?dUNPWVI0QmpNYTlQRTEyOU5wV2xwd0NUaVB3S2xPa0tGK0Myb2x1dGg3QjFo?=
 =?utf-8?B?WmxsS3pKRFJQQ2ZiR2FaQm1XNmhYcWdvRWtRSXJJRERHb25QYmhzYXIwUjZ1?=
 =?utf-8?B?WGNTVXRxMjNsQXdWVG92c2pkQkhkQ2h5M1hDWlRwM01tc2JIajRhZ2JrUXh5?=
 =?utf-8?B?RHhBMDhTN09RL28xRDEySWM5NTg1a1FHcW1KQ1ZReXM1YTdKTDRGb3ZLMFFX?=
 =?utf-8?B?cndZaUs2cFhWU2ZYNU5nckw5T2dlbkNhMnBFV203ZGZWYjRkNzNvaGhtbldF?=
 =?utf-8?B?U2srOXVSeGZhV1dxQzhkbExCQVdmR3JUTnBEd3ZOeXFYS0kzMGhRWHpiVmc2?=
 =?utf-8?B?L0d2STRwdVo3T1pDKzR2Y1pZeFBBdy9PYTNWNnYwakpuY2tkNDJuSlMwQk0w?=
 =?utf-8?B?cWxOaHpCbHQwbUNSMXJZYUNmcUY4TFQ4OFR1dVM3ZVdGT1g0L2Z6T0RQNkNs?=
 =?utf-8?B?Um55Rk52L0ZDczQ1Z1JITDVuNzJMUXl0UXlZRjd3QXdBU2pCN0xJK2RBbUR0?=
 =?utf-8?B?QlRGcjRxL0V5M01kbGYwUEFWVHVDR2tCeDM5VWxUQXpIaDBhQmQyUFZjWUtt?=
 =?utf-8?B?SmpTcUM4ZzJPK09QaG0xbVlSSzQ4U25rTjNjU2gwUWdJeHh6bVBMMXJCaUZ4?=
 =?utf-8?B?cDhMeTY1Y1lzZmlwajNqNVhYbi9ub2poeVhDeS9FZHc5NS9pdEJ5cWlpTVJv?=
 =?utf-8?B?L0VnODE4QkpqL0dYMVdYZ1czVmxUUXBjMVNsRlBxbXVOVGFpTHBDS0ljbU5j?=
 =?utf-8?B?Ui8ydmFudGRZdm5kTS9OMUhrQUxDWTQ5UEIySUJWdUZsOGV2d2lMdHRpeStY?=
 =?utf-8?B?eVpVenN6c2xaNHVaQnBJYjd6VzRwSlZPMGZRT3RWSGVuT0VMMVE4Qk1IZjVQ?=
 =?utf-8?B?VDFVVGZzZmlHMkhBRGFlYy9UVmowQ1E3d0tlTFFwOTF2bjZjSVFhNzVWMjlk?=
 =?utf-8?B?T0hQOHZsWlowdEJKTUdvZzY3NXJQNWhiSVlObjEwNFEzYzNwenpZMzZ2RWVw?=
 =?utf-8?B?WXpGYnYrUTNxZWJZZGYvRFdBT2lZOURMV3VxZ1k2Q3oyemI4ZzF5Q0lBZUw4?=
 =?utf-8?B?Y010clpmYzM2Z1IvMGNhaXVKWUpKUlFBSHRHeVlIc2VrcUF0TGJuTkJENHNt?=
 =?utf-8?Q?8w2Xc7lw2tZU/L+19LSt08WzC?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: ea1faa6b-1c07-4ef3-a854-08dbd083d54b
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Oct 2023 09:14:44.3344
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: xVuIt304T48G+L1DCwjb1P1zlm/vtEnZ/N2C8/bemGsclZtBhh1V/VYdBoxWJuBXAPx6T1k2Ifq5UQQyaExEdg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBBPR04MB7899

On 14.09.2023 16:56, Oleksii Kurochko wrote:
> --- /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,
> +};

Are both of these really generic?

> +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,

This one certainly is Arm-specific.

> +    DEVICE_PCI_HOSTBRIDGE,

And this one's PCI-specific.

Overall same question as before: Are you expecting that RISC-V is going to
get away without a customized header? I wouldn't think so.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 09:15:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 09:15:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619019.963488 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtP7m-000166-LQ; Thu, 19 Oct 2023 09:15:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619019.963488; Thu, 19 Oct 2023 09:15: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 1qtP7m-00015z-IY; Thu, 19 Oct 2023 09:15:26 +0000
Received: by outflank-mailman (input) for mailman id 619019;
 Thu, 19 Oct 2023 09:15: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=yz61=GB=suse.com=jgross@srs-se1.protection.inumbo.net>)
 id 1qtP7l-0000oo-U3
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 09:15:25 +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 08fcfdd3-6e60-11ee-9b0e-b553b5be7939;
 Thu, 19 Oct 2023 11:15:24 +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 613971FD8C;
 Thu, 19 Oct 2023 09:15:23 +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 D2359139C2;
 Thu, 19 Oct 2023 09:15:22 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap2.suse-dmz.suse.de with ESMTPSA id fnsqMarzMGWwVAAAMHmgww
 (envelope-from <jgross@suse.com>); Thu, 19 Oct 2023 09:15: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: 08fcfdd3-6e60-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1697706923; 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=E3yro6bOZUqvaCMDNWEbvLZF+xxJcY0szaQQ5wMVbyY=;
	b=uzf8nm/kDJ+Ijp17n13oFoIE7j/nvomj+PI1AhcOSTPUbSVZB89yeloWUG9gW0czwezlEX
	Rmd8qHGjSKbfyJKkmfywo27aazWr0Ly2hKZGaUp6TKwLU8xPn/2nSVgclz2877RCOeXbFE
	RcaJPPTgbJXdypAZiks/+uDe5klZpeo=
From: Juergen Gross <jgross@suse.com>
To: linux-kernel@vger.kernel.org,
	x86@kernel.org,
	virtualization@lists.linux-foundation.org,
	kvm@vger.kernel.org
Cc: Juergen Gross <jgross@suse.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>,
	Ajay Kaher <akaher@vmware.com>,
	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: [PATCH v3 0/5] x86/paravirt: Get rid of paravirt patching
Date: Thu, 19 Oct 2023 11:15:15 +0200
Message-Id: <20231019091520.14540-1-jgross@suse.com>
X-Mailer: git-send-email 2.35.3
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Authentication-Results: smtp-out2.suse.de;
	none
X-Spam-Level: 
X-Spam-Score: -2.10
X-Spamd-Result: default: False [-2.10 / 50.00];
	 ARC_NA(0.00)[];
	 RCVD_VIA_SMTP_AUTH(0.00)[];
	 FROM_HAS_DN(0.00)[];
	 TO_DN_SOME(0.00)[];
	 TO_MATCH_ENVRCPT_ALL(0.00)[];
	 R_MISSING_CHARSET(2.50)[];
	 MIME_GOOD(-0.10)[text/plain];
	 BROKEN_CONTENT_TYPE(1.50)[];
	 NEURAL_HAM_LONG(-3.00)[-1.000];
	 DKIM_SIGNED(0.00)[suse.com:s=susede1];
	 NEURAL_HAM_SHORT(-1.00)[-1.000];
	 RCPT_COUNT_TWELVE(0.00)[18];
	 MID_CONTAINS_FROM(1.00)[];
	 FROM_EQ_ENVFROM(0.00)[];
	 MIME_TRACE(0.00)[0:+];
	 RCVD_COUNT_TWO(0.00)[2];
	 RCVD_TLS_ALL(0.00)[];
	 BAYES_HAM(-3.00)[100.00%]
X-Spam-Flag: NO

This is a small series getting rid of paravirt patching by switching
completely to alternative patching for the same functionality.

The basic idea is to add the capability to switch from indirect to
direct calls via a special alternative patching option.

This removes _some_ of the paravirt macro maze, but most of it needs
to stay due to the need of hiding the call instructions from the
compiler in order to avoid needless register save/restore.

What is going away is the nasty stacking of alternative and paravirt
patching and (of course) the special .parainstructions linker section.

I have tested the series on bare metal and as Xen PV domain to still
work.

Note that objtool might need some changes to cope with the new
indirect call patching mechanism. Additionally some paravirt handling
can probably be removed from it.

Changes in V3:
- split v2 patch 3 into 2 patches as requested by Peter and Ingo

Changes in V2:
- split last patch into 2
- rebase of patch 2 as suggested by Peter
- addressed Peter's comments for patch 3

Juergen Gross (5):
  x86/paravirt: move some functions and defines to alternative
  x86/alternative: add indirect call patching
  x86/paravirt: introduce ALT_NOT_XEN
  x86/paravirt: switch mixed paravirt/alternative calls to alternative_2
  x86/paravirt: remove no longer needed paravirt patching code

 arch/x86/include/asm/alternative.h        |  26 ++++-
 arch/x86/include/asm/paravirt.h           |  79 +++++----------
 arch/x86/include/asm/paravirt_types.h     |  73 +++-----------
 arch/x86/include/asm/qspinlock_paravirt.h |   4 +-
 arch/x86/include/asm/text-patching.h      |  12 ---
 arch/x86/kernel/alternative.c             | 116 ++++++++++------------
 arch/x86/kernel/callthunks.c              |  17 ++--
 arch/x86/kernel/kvm.c                     |   4 +-
 arch/x86/kernel/module.c                  |  20 +---
 arch/x86/kernel/paravirt.c                |  54 ++--------
 arch/x86/kernel/vmlinux.lds.S             |  13 ---
 arch/x86/tools/relocs.c                   |   2 +-
 arch/x86/xen/irq.c                        |   2 +-
 13 files changed, 137 insertions(+), 285 deletions(-)

-- 
2.35.3



From xen-devel-bounces@lists.xenproject.org Thu Oct 19 09:15:32 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 09:15:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619020.963499 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtP7s-0001TD-34; Thu, 19 Oct 2023 09:15:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619020.963499; Thu, 19 Oct 2023 09:15: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 1qtP7r-0001T4-Tm; Thu, 19 Oct 2023 09:15:31 +0000
Received: by outflank-mailman (input) for mailman id 619020;
 Thu, 19 Oct 2023 09:15: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=yz61=GB=suse.com=jgross@srs-se1.protection.inumbo.net>)
 id 1qtP7r-0001SF-4y
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 09:15:31 +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 0c662320-6e60-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 11:15:30 +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 4A9781FD92;
 Thu, 19 Oct 2023 09:15:29 +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 C2494139C2;
 Thu, 19 Oct 2023 09:15:28 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap2.suse-dmz.suse.de with ESMTPSA id n7wLLrDzMGXFVAAAMHmgww
 (envelope-from <jgross@suse.com>); Thu, 19 Oct 2023 09: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: 0c662320-6e60-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1697706929; 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=8SktsBRaT0WfP83H70+6Aqz0kX9lsT33YwrE6d/KceQ=;
	b=FcVlmKJsbSHxticTnIdtzCbL2oQKZUcqvXe4WAEaEeCOkyevWwBkkNALq1+gE5AYLYmNC3
	aCyKGz4j9u9FzkaHGOMXneWE2CNgrLOoOl3khGMNRzvlFPdFsN6kCroPou4nothpcyeGFl
	y3UVWNUZekaHj/f7QFu+mE6S68dzyek=
From: Juergen Gross <jgross@suse.com>
To: linux-kernel@vger.kernel.org,
	x86@kernel.org,
	virtualization@lists.linux-foundation.org,
	kvm@vger.kernel.org
Cc: Juergen Gross <jgross@suse.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>,
	Ajay Kaher <akaher@vmware.com>,
	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,
	Peter Zijlstra <peterz@infradead.org>
Subject: [PATCH v3 1/5] x86/paravirt: move some functions and defines to alternative
Date: Thu, 19 Oct 2023 11:15:16 +0200
Message-Id: <20231019091520.14540-2-jgross@suse.com>
X-Mailer: git-send-email 2.35.3
In-Reply-To: <20231019091520.14540-1-jgross@suse.com>
References: <20231019091520.14540-1-jgross@suse.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Authentication-Results: smtp-out2.suse.de;
	none
X-Spam-Level: 
X-Spam-Score: -6.10
X-Spamd-Result: default: False [-6.10 / 50.00];
	 ARC_NA(0.00)[];
	 RCVD_VIA_SMTP_AUTH(0.00)[];
	 FROM_HAS_DN(0.00)[];
	 TO_DN_SOME(0.00)[];
	 TO_MATCH_ENVRCPT_ALL(0.00)[];
	 R_MISSING_CHARSET(2.50)[];
	 MIME_GOOD(-0.10)[text/plain];
	 REPLY(-4.00)[];
	 BROKEN_CONTENT_TYPE(1.50)[];
	 NEURAL_HAM_LONG(-3.00)[-1.000];
	 DKIM_SIGNED(0.00)[suse.com:s=susede1];
	 NEURAL_HAM_SHORT(-1.00)[-1.000];
	 RCPT_COUNT_TWELVE(0.00)[19];
	 MID_CONTAINS_FROM(1.00)[];
	 FROM_EQ_ENVFROM(0.00)[];
	 MIME_TRACE(0.00)[0:+];
	 RCVD_COUNT_TWO(0.00)[2];
	 RCVD_TLS_ALL(0.00)[];
	 BAYES_HAM(-3.00)[100.00%]
X-Spam-Flag: NO

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>
---
 arch/x86/include/asm/alternative.h        | 16 ++++++++++++
 arch/x86/include/asm/paravirt.h           | 12 ---------
 arch/x86/include/asm/paravirt_types.h     |  4 +--
 arch/x86/include/asm/qspinlock_paravirt.h |  4 +--
 arch/x86/kernel/alternative.c             | 10 ++++++++
 arch/x86/kernel/kvm.c                     |  4 +--
 arch/x86/kernel/paravirt.c                | 30 +++++++----------------
 arch/x86/xen/irq.c                        |  2 +-
 8 files changed, 41 insertions(+), 41 deletions(-)

diff --git a/arch/x86/include/asm/alternative.h b/arch/x86/include/asm/alternative.h
index 9c4da699e11a..67e50bd40bb8 100644
--- a/arch/x86/include/asm/alternative.h
+++ b/arch/x86/include/asm/alternative.h
@@ -330,6 +330,22 @@ static inline int alternatives_text_reserved(void *start, void *end)
  */
 #define ASM_NO_INPUT_CLOBBER(clbr...) "i" (0) : clbr
 
+/* Macro for creating assembler functions avoiding any C magic. */
+#define DEFINE_ASM_FUNC(func, instr, sec)		\
+	asm (".pushsection " #sec ", \"ax\"\n"		\
+	     ".global " #func "\n\t"			\
+	     ".type " #func ", @function\n\t"		\
+	     ASM_FUNC_ALIGN "\n"			\
+	     #func ":\n\t"				\
+	     ASM_ENDBR					\
+	     instr "\n\t"				\
+	     ASM_RET					\
+	     ".size " #func ", . - " #func "\n\t"	\
+	     ".popsection")
+
+void x86_BUG(void);
+void x86_nop(void);
+
 #else /* __ASSEMBLY__ */
 
 #ifdef CONFIG_SMP
diff --git a/arch/x86/include/asm/paravirt.h b/arch/x86/include/asm/paravirt.h
index 6c8ff12140ae..ed5c7342f2ef 100644
--- a/arch/x86/include/asm/paravirt.h
+++ b/arch/x86/include/asm/paravirt.h
@@ -726,18 +726,6 @@ static __always_inline unsigned long arch_local_irq_save(void)
 #undef PVOP_VCALL4
 #undef PVOP_CALL4
 
-#define DEFINE_PARAVIRT_ASM(func, instr, sec)		\
-	asm (".pushsection " #sec ", \"ax\"\n"		\
-	     ".global " #func "\n\t"			\
-	     ".type " #func ", @function\n\t"		\
-	     ASM_FUNC_ALIGN "\n"			\
-	     #func ":\n\t"				\
-	     ASM_ENDBR					\
-	     instr "\n\t"				\
-	     ASM_RET					\
-	     ".size " #func ", . - " #func "\n\t"	\
-	     ".popsection")
-
 extern void default_banner(void);
 void native_pv_lock_init(void) __init;
 
diff --git a/arch/x86/include/asm/paravirt_types.h b/arch/x86/include/asm/paravirt_types.h
index 772d03487520..9f84dc074f88 100644
--- a/arch/x86/include/asm/paravirt_types.h
+++ b/arch/x86/include/asm/paravirt_types.h
@@ -542,8 +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))
 
-void _paravirt_nop(void);
-void paravirt_BUG(void);
 unsigned long paravirt_ret0(void);
 #ifdef CONFIG_PARAVIRT_XXL
 u64 _paravirt_ident_64(u64);
@@ -553,7 +551,7 @@ void pv_native_irq_enable(void);
 unsigned long pv_native_read_cr2(void);
 #endif
 
-#define paravirt_nop	((void *)_paravirt_nop)
+#define paravirt_nop	((void *)x86_nop)
 
 extern struct paravirt_patch_site __parainstructions[],
 	__parainstructions_end[];
diff --git a/arch/x86/include/asm/qspinlock_paravirt.h b/arch/x86/include/asm/qspinlock_paravirt.h
index 85b6e3609cb9..ef9697f20129 100644
--- a/arch/x86/include/asm/qspinlock_paravirt.h
+++ b/arch/x86/include/asm/qspinlock_paravirt.h
@@ -56,8 +56,8 @@ __PV_CALLEE_SAVE_REGS_THUNK(__pv_queued_spin_unlock_slowpath, ".spinlock.text");
 	"pop    %rdx\n\t"						\
 	FRAME_END
 
-DEFINE_PARAVIRT_ASM(__raw_callee_save___pv_queued_spin_unlock,
-		    PV_UNLOCK_ASM, .spinlock.text);
+DEFINE_ASM_FUNC(__raw_callee_save___pv_queued_spin_unlock,
+		PV_UNLOCK_ASM, .spinlock.text);
 
 #else /* CONFIG_64BIT */
 
diff --git a/arch/x86/kernel/alternative.c b/arch/x86/kernel/alternative.c
index 73be3931e4f0..1c8dd8e05f3f 100644
--- a/arch/x86/kernel/alternative.c
+++ b/arch/x86/kernel/alternative.c
@@ -385,6 +385,16 @@ apply_relocation(u8 *buf, size_t len, u8 *dest, u8 *src, size_t src_len)
 	}
 }
 
+/* Low-level backend functions usable from alternative code replacements. */
+DEFINE_ASM_FUNC(x86_nop, "", .entry.text);
+EXPORT_SYMBOL_GPL(x86_nop);
+
+noinstr void x86_BUG(void)
+{
+	BUG();
+}
+EXPORT_SYMBOL_GPL(x86_BUG);
+
 /*
  * Replace instructions with better alternatives for this CPU type. This runs
  * before SMP is initialized to avoid SMP problems with self modifying code.
diff --git a/arch/x86/kernel/kvm.c b/arch/x86/kernel/kvm.c
index b8ab9ee5896c..4ca59dccc15a 100644
--- a/arch/x86/kernel/kvm.c
+++ b/arch/x86/kernel/kvm.c
@@ -803,8 +803,8 @@ extern bool __raw_callee_save___kvm_vcpu_is_preempted(long);
  "cmpb   $0, " __stringify(KVM_STEAL_TIME_preempted) "+steal_time(%rax)\n\t" \
  "setne  %al\n\t"
 
-DEFINE_PARAVIRT_ASM(__raw_callee_save___kvm_vcpu_is_preempted,
-		    PV_VCPU_PREEMPTED_ASM, .text);
+DEFINE_ASM_FUNC(__raw_callee_save___kvm_vcpu_is_preempted,
+		PV_VCPU_PREEMPTED_ASM, .text);
 #endif
 
 static void __init kvm_guest_init(void)
diff --git a/arch/x86/kernel/paravirt.c b/arch/x86/kernel/paravirt.c
index 97f1436c1a20..32792b033de2 100644
--- a/arch/x86/kernel/paravirt.c
+++ b/arch/x86/kernel/paravirt.c
@@ -34,14 +34,8 @@
 #include <asm/io_bitmap.h>
 #include <asm/gsseg.h>
 
-/*
- * nop stub, which must not clobber anything *including the stack* to
- * avoid confusing the entry prologues.
- */
-DEFINE_PARAVIRT_ASM(_paravirt_nop, "", .entry.text);
-
 /* stub always returning 0. */
-DEFINE_PARAVIRT_ASM(paravirt_ret0, "xor %eax,%eax", .entry.text);
+DEFINE_ASM_FUNC(paravirt_ret0, "xor %eax,%eax", .entry.text);
 
 void __init default_banner(void)
 {
@@ -49,12 +43,6 @@ void __init default_banner(void)
 	       pv_info.name);
 }
 
-/* Undefined instruction for dealing with missing ops pointers. */
-noinstr void paravirt_BUG(void)
-{
-	BUG();
-}
-
 static unsigned paravirt_patch_call(void *insn_buff, const void *target,
 				    unsigned long addr, unsigned len)
 {
@@ -64,11 +52,11 @@ static unsigned paravirt_patch_call(void *insn_buff, const void *target,
 }
 
 #ifdef CONFIG_PARAVIRT_XXL
-DEFINE_PARAVIRT_ASM(_paravirt_ident_64, "mov %rdi, %rax", .text);
-DEFINE_PARAVIRT_ASM(pv_native_save_fl, "pushf; pop %rax", .noinstr.text);
-DEFINE_PARAVIRT_ASM(pv_native_irq_disable, "cli", .noinstr.text);
-DEFINE_PARAVIRT_ASM(pv_native_irq_enable, "sti", .noinstr.text);
-DEFINE_PARAVIRT_ASM(pv_native_read_cr2, "mov %cr2, %rax", .noinstr.text);
+DEFINE_ASM_FUNC(_paravirt_ident_64, "mov %rdi, %rax", .text);
+DEFINE_ASM_FUNC(pv_native_save_fl, "pushf; pop %rax", .noinstr.text);
+DEFINE_ASM_FUNC(pv_native_irq_disable, "cli", .noinstr.text);
+DEFINE_ASM_FUNC(pv_native_irq_enable, "sti", .noinstr.text);
+DEFINE_ASM_FUNC(pv_native_read_cr2, "mov %cr2, %rax", .noinstr.text);
 #endif
 
 DEFINE_STATIC_KEY_TRUE(virt_spin_lock_key);
@@ -96,9 +84,9 @@ unsigned int paravirt_patch(u8 type, void *insn_buff, unsigned long addr,
 	unsigned ret;
 
 	if (opfunc == NULL)
-		/* If there's no function, patch it with paravirt_BUG() */
-		ret = paravirt_patch_call(insn_buff, paravirt_BUG, addr, len);
-	else if (opfunc == _paravirt_nop)
+		/* If there's no function, patch it with x86_BUG() */
+		ret = paravirt_patch_call(insn_buff, x86_BUG, addr, len);
+	else if (opfunc == x86_nop)
 		ret = 0;
 	else
 		/* Otherwise call the function. */
diff --git a/arch/x86/xen/irq.c b/arch/x86/xen/irq.c
index 6092fea7d651..5d132f5a5d7d 100644
--- a/arch/x86/xen/irq.c
+++ b/arch/x86/xen/irq.c
@@ -45,7 +45,7 @@ static const typeof(pv_ops) xen_irq_ops __initconst = {
 		/* Initial interrupt flag handling only called while interrupts off. */
 		.save_fl = __PV_IS_CALLEE_SAVE(paravirt_ret0),
 		.irq_disable = __PV_IS_CALLEE_SAVE(paravirt_nop),
-		.irq_enable = __PV_IS_CALLEE_SAVE(paravirt_BUG),
+		.irq_enable = __PV_IS_CALLEE_SAVE(x86_BUG),
 
 		.safe_halt = xen_safe_halt,
 		.halt = xen_halt,
-- 
2.35.3



From xen-devel-bounces@lists.xenproject.org Thu Oct 19 09:17:57 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 09:17:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619025.963508 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtPA8-0002XP-DT; Thu, 19 Oct 2023 09:17:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619025.963508; Thu, 19 Oct 2023 09:17: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 1qtPA8-0002XG-AE; Thu, 19 Oct 2023 09:17:52 +0000
Received: by outflank-mailman (input) for mailman id 619025;
 Thu, 19 Oct 2023 09:17: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=b9Lg=GB=casper.srs.infradead.org=BATV+06ae5fa416ae820d9d5a+7361+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qtPA6-0002Wn-82
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 09:17:51 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 5eb6c969-6e60-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 11:17:48 +0200 (CEST)
Received: from [2001:8b0:10b:5:583b:153f:ff9:f813]
 (helo=u3832b3a9db3152.ant.amazon.com)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qtP9m-006CD5-AJ; Thu, 19 Oct 2023 09:17: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: 5eb6c969-6e60-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=MIME-Version:Content-Type:References:
	In-Reply-To:Date:Cc:To:From:Subject:Message-ID:Sender:Reply-To:
	Content-Transfer-Encoding:Content-ID:Content-Description;
	bh=TQpghlc2hnVcAA9ko5eURrbZG4hZg/v52UnpJlBT4rs=; b=DnGP+rVuZ/Bp47NvzaY3txYnFh
	Ojg4XaBwk0vVm594Jzj+EqDT3xeujtmVQV/z1YRByQLcEx+fSlSAxxrYe3WUB7OnupSUXoQkIO7DZ
	f883jsNi/NPm3IiZ1eG3a49+slkDxuetVmieTSeCtjgma4WB3XXG0EpW1YoQrWtqco/RLEEaMePK4
	LTxvZ+6g6uTado8GMl2az0EVR7m6PWj1dJyZhgqY17hTBu/UxhUsEM/eM+jxlyoWfT3LXiZECAs/z
	UvHJzhhx0vdAgAPuLKbG8facVjVVmzGhV6tVJ6pbdko+0zYAfgRH7xft+HcAB5Gn2RutN/fElt/y0
	0vu/Ol3Q==;
Message-ID: <bce4c425deccc9529f8515465e10392a93438ec6.camel@infradead.org>
Subject: Re: [QEMU][PATCH v1 1/7] xen: when unplugging emulated devices skip
 virtio devices
From: David Woodhouse <dwmw2@infradead.org>
To: Vikram Garhwal <vikram.garhwal@amd.com>, Stefano Stabellini
	 <sstabellini@kernel.org>
Cc: qemu-devel@nongnu.org, Juergen Gross <jgross@suse.com>, Anthony Perard
 <anthony.perard@citrix.com>, Paul Durrant <paul@xen.org>, "Michael S.
 Tsirkin" <mst@redhat.com>, Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
 Paolo Bonzini <pbonzini@redhat.com>, Richard Henderson
 <richard.henderson@linaro.org>,  Eduardo Habkost <eduardo@habkost.net>,
 "open list:X86 Xen CPUs" <xen-devel@lists.xenproject.org>
Date: Thu, 19 Oct 2023 10:17:29 +0100
In-Reply-To: <ZSWy9P4tKvPv0M_d@amd.com>
References: <20231005181629.4046-1-vikram.garhwal@amd.com>
	 <20231005181629.4046-2-vikram.garhwal@amd.com>
	 <alpine.DEB.2.22.394.2310091651110.3431292@ubuntu-linux-20-04-desktop>
	 <ZSWy9P4tKvPv0M_d@amd.com>
Content-Type: multipart/signed; micalg="sha-256"; protocol="application/pkcs7-signature";
	boundary="=-FFbScYBMq+2SmPMvLxxI"
User-Agent: Evolution 3.44.4-0ubuntu2 
MIME-Version: 1.0
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html


--=-FFbScYBMq+2SmPMvLxxI
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Tue, 2023-10-10 at 13:24 -0700, Vikram Garhwal wrote:
> Hi Stefano,
> On Mon, Oct 09, 2023 at 04:51:53PM -0700, Stefano Stabellini wrote:
> > On Thu, 5 Oct 2023, Vikram Garhwal wrote:
> > > From: Juergen Gross <jgross@suse.com>
> > >=20
> > > Virtio devices should never be unplugged at boot time, as they are
> > > similar to pci passthrough devices.
> > >=20
> > > Signed-off-by: Juergen Gross <jgross@suse.com>
> > > Signed-off-by: Vikram Garhwal <vikram.garhwal@amd.com>
> > > ---
> > > =C2=A0hw/i386/xen/xen_platform.c | 8 +++++++-
> > > =C2=A01 file changed, 7 insertions(+), 1 deletion(-)
> > >=20
> > > diff --git a/hw/i386/xen/xen_platform.c b/hw/i386/xen/xen_platform.c
> > > index 17457ff3de..3560eaf8c8 100644
> > > --- a/hw/i386/xen/xen_platform.c
> > > +++ b/hw/i386/xen/xen_platform.c
> > > @@ -28,6 +28,7 @@
> > > =C2=A0#include "hw/ide/pci.h"
> > > =C2=A0#include "hw/pci/pci.h"
> > > =C2=A0#include "migration/vmstate.h"
> > > +#include "hw/virtio/virtio-bus.h"
> > > =C2=A0#include "net/net.h"
> > > =C2=A0#include "trace.h"
> > > =C2=A0#include "sysemu/xen.h"
> > > @@ -132,7 +133,8 @@ static void unplug_nic(PCIBus *b, PCIDevice *d, v=
oid *o)
> > > =C2=A0=C2=A0=C2=A0=C2=A0 /* We have to ignore passthrough devices */
> > > =C2=A0=C2=A0=C2=A0=C2=A0 if (pci_get_word(d->config + PCI_CLASS_DEVIC=
E) =3D=3D
> > > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0 PCI_CLASS_NETWORK_ETHERNET
> > > -=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 &=
& !pci_device_is_passthrough(d)) {
> > > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 &=
& !pci_device_is_passthrough(d)
> > > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 &=
& !qdev_get_child_bus(&d->qdev, TYPE_VIRTIO_BUS)) {
> >=20
> > Please update the in-code comment above to say "ignore passthrough
> > devices and virtio devices"
>
> Sounds good. Will update in the code comment in v2.

Please could you also remove the note in docs/system/i386/xen.rst which
mentions having to dissuade the guest kernel from unplugging VirtIO
devices by adding 'xen_unplug_emul=3Dnever' to its command line?

--=-FFbScYBMq+2SmPMvLxxI
Content-Type: application/pkcs7-signature; name="smime.p7s"
Content-Disposition: attachment; filename="smime.p7s"
Content-Transfer-Encoding: base64

MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgEFADCABgkqhkiG9w0BBwEAAKCCEkQw
ggYQMIID+KADAgECAhBNlCwQ1DvglAnFgS06KwZPMA0GCSqGSIb3DQEBDAUAMIGIMQswCQYDVQQG
EwJVUzETMBEGA1UECBMKTmV3IEplcnNleTEUMBIGA1UEBxMLSmVyc2V5IENpdHkxHjAcBgNVBAoT
FVRoZSBVU0VSVFJVU1QgTmV0d29yazEuMCwGA1UEAxMlVVNFUlRydXN0IFJTQSBDZXJ0aWZpY2F0
aW9uIEF1dGhvcml0eTAeFw0xODExMDIwMDAwMDBaFw0zMDEyMzEyMzU5NTlaMIGWMQswCQYDVQQG
EwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYD
VQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50
aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC
AQEAyjztlApB/975Rrno1jvm2pK/KxBOqhq8gr2+JhwpKirSzZxQgT9tlC7zl6hn1fXjSo5MqXUf
ItMltrMaXqcESJuK8dtK56NCSrq4iDKaKq9NxOXFmqXX2zN8HHGjQ2b2Xv0v1L5Nk1MQPKA19xeW
QcpGEGFUUd0kN+oHox+L9aV1rjfNiCj3bJk6kJaOPabPi2503nn/ITX5e8WfPnGw4VuZ79Khj1YB
rf24k5Ee1sLTHsLtpiK9OjG4iQRBdq6Z/TlVx/hGAez5h36bBJMxqdHLpdwIUkTqT8se3ed0PewD
ch/8kHPo5fZl5u1B0ecpq/sDN/5sCG52Ds+QU5O5EwIDAQABo4IBZDCCAWAwHwYDVR0jBBgwFoAU
U3m/WqorSs9UgOHYm8Cd8rIDZsswHQYDVR0OBBYEFAnA8vwL2pTbX/4r36iZQs/J4K0AMA4GA1Ud
DwEB/wQEAwIBhjASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEF
BQcDBDARBgNVHSAECjAIMAYGBFUdIAAwUAYDVR0fBEkwRzBFoEOgQYY/aHR0cDovL2NybC51c2Vy
dHJ1c3QuY29tL1VTRVJUcnVzdFJTQUNlcnRpZmljYXRpb25BdXRob3JpdHkuY3JsMHYGCCsGAQUF
BwEBBGowaDA/BggrBgEFBQcwAoYzaHR0cDovL2NydC51c2VydHJ1c3QuY29tL1VTRVJUcnVzdFJT
QUFkZFRydXN0Q0EuY3J0MCUGCCsGAQUFBzABhhlodHRwOi8vb2NzcC51c2VydHJ1c3QuY29tMA0G
CSqGSIb3DQEBDAUAA4ICAQBBRHUAqznCFfXejpVtMnFojADdF9d6HBA4kMjjsb0XMZHztuOCtKF+
xswhh2GqkW5JQrM8zVlU+A2VP72Ky2nlRA1GwmIPgou74TZ/XTarHG8zdMSgaDrkVYzz1g3nIVO9
IHk96VwsacIvBF8JfqIs+8aWH2PfSUrNxP6Ys7U0sZYx4rXD6+cqFq/ZW5BUfClN/rhk2ddQXyn7
kkmka2RQb9d90nmNHdgKrwfQ49mQ2hWQNDkJJIXwKjYA6VUR/fZUFeCUisdDe/0ABLTI+jheXUV1
eoYV7lNwNBKpeHdNuO6Aacb533JlfeUHxvBz9OfYWUiXu09sMAviM11Q0DuMZ5760CdO2VnpsXP4
KxaYIhvqPqUMWqRdWyn7crItNkZeroXaecG03i3mM7dkiPaCkgocBg0EBYsbZDZ8bsG3a08LwEsL
1Ygz3SBsyECa0waq4hOf/Z85F2w2ZpXfP+w8q4ifwO90SGZZV+HR/Jh6rEaVPDRF/CEGVqR1hiuQ
OZ1YL5ezMTX0ZSLwrymUE0pwi/KDaiYB15uswgeIAcA6JzPFf9pLkAFFWs1QNyN++niFhsM47qod
x/PL+5jR87myx5uYdBEQkkDc+lKB1Wct6ucXqm2EmsaQ0M95QjTmy+rDWjkDYdw3Ms6mSWE3Bn7i
5ZgtwCLXgAIe5W8mybM2JzCCBhQwggT8oAMCAQICEQDGvhmWZ0DEAx0oURL6O6l+MA0GCSqGSIb3
DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYD
VQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28g
UlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMB4XDTIyMDEwNzAw
MDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJARYTZHdtdzJAaW5mcmFkZWFkLm9y
ZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3GpC2bomUqk+91wLYBzDMcCj5C9m6
oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZHh7htyAkWYVoFsFPrwHounto8xTsy
SSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT9YgcBqKCo65pTFmOnR/VVbjJk4K2
xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNjP+qDrh0db7PAjO1D4d5ftfrsf+kd
RR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy2U+eITZ5LLE5s45mX2oPFknWqxBo
bQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3BgBEmfsYWlBXO8rVXfvPgLs32VdV
NZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/7auNVRmPB3v5SWEsH8xi4Bez2V9U
KxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmdlFYhAflWKQ03Ufiu8t3iBE3VJbc2
5oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9aelIl6vtbhMA+l0nfrsORMa4kobqQ5
C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMBAAGjggHMMIIByDAfBgNVHSMEGDAW
gBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeDMcimo0oz8o1R1Nver3ZVpSkwDgYD
VR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYwFAYIKwYBBQUHAwQGCCsGAQUFBwMC
MEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYBBQUHAgEWF2h0dHBzOi8vc2VjdGln
by5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9jcmwuc2VjdGlnby5jb20vU2VjdGln
b1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1haWxDQS5jcmwwgYoGCCsGAQUFBwEB
BH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdvLmNvbS9TZWN0aWdvUlNBQ2xpZW50
QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAjBggrBgEFBQcwAYYXaHR0cDovL29j
c3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5mcmFkZWFkLm9yZzANBgkqhkiG9w0B
AQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQvQ/fzPXmtR9t54rpmI2TfyvcKgOXp
qa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvIlSPrzIB4Z2wyIGQpaPLlYflrrVFK
v9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9ChWFfgSXvrWDZspnU3Gjw/rMHrGnql
Htlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0whpBtXdyDjzBtQTaZJ7zTT/vlehc/
tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9IzCCBhQwggT8oAMCAQICEQDGvhmW
Z0DEAx0oURL6O6l+MA0GCSqGSIb3DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3Jl
YXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0
ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJl
IEVtYWlsIENBMB4XDTIyMDEwNzAwMDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJ
ARYTZHdtdzJAaW5mcmFkZWFkLm9yZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3
GpC2bomUqk+91wLYBzDMcCj5C9m6oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZH
h7htyAkWYVoFsFPrwHounto8xTsySSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT
9YgcBqKCo65pTFmOnR/VVbjJk4K2xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNj
P+qDrh0db7PAjO1D4d5ftfrsf+kdRR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy
2U+eITZ5LLE5s45mX2oPFknWqxBobQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3
BgBEmfsYWlBXO8rVXfvPgLs32VdVNZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/
7auNVRmPB3v5SWEsH8xi4Bez2V9UKxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmd
lFYhAflWKQ03Ufiu8t3iBE3VJbc25oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9ae
lIl6vtbhMA+l0nfrsORMa4kobqQ5C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMB
AAGjggHMMIIByDAfBgNVHSMEGDAWgBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeD
Mcimo0oz8o1R1Nver3ZVpSkwDgYDVR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYw
FAYIKwYBBQUHAwQGCCsGAQUFBwMCMEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYB
BQUHAgEWF2h0dHBzOi8vc2VjdGlnby5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9j
cmwuc2VjdGlnby5jb20vU2VjdGlnb1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1h
aWxDQS5jcmwwgYoGCCsGAQUFBwEBBH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdv
LmNvbS9TZWN0aWdvUlNBQ2xpZW50QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAj
BggrBgEFBQcwAYYXaHR0cDovL29jc3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5m
cmFkZWFkLm9yZzANBgkqhkiG9w0BAQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQv
Q/fzPXmtR9t54rpmI2TfyvcKgOXpqa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvI
lSPrzIB4Z2wyIGQpaPLlYflrrVFKv9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9Ch
WFfgSXvrWDZspnU3Gjw/rMHrGnqlHtlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0w
hpBtXdyDjzBtQTaZJ7zTT/vlehc/tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9
IzGCBMcwggTDAgEBMIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVz
dGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMT
NVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEA
xr4ZlmdAxAMdKFES+jupfjANBglghkgBZQMEAgEFAKCCAeswGAYJKoZIhvcNAQkDMQsGCSqGSIb3
DQEHATAcBgkqhkiG9w0BCQUxDxcNMjMxMDE5MDkxNzI5WjAvBgkqhkiG9w0BCQQxIgQghzwSlqT1
gKlTRHY4E9SJJUSobvouW8RhHwoy22CDIr4wgb0GCSsGAQQBgjcQBDGBrzCBrDCBljELMAkGA1UE
BhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEYMBYG
A1UEChMPU2VjdGlnbyBMaW1pdGVkMT4wPAYDVQQDEzVTZWN0aWdvIFJTQSBDbGllbnQgQXV0aGVu
dGljYXRpb24gYW5kIFNlY3VyZSBFbWFpbCBDQQIRAMa+GZZnQMQDHShREvo7qX4wgb8GCyqGSIb3
DQEJEAILMYGvoIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVy
MRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNl
Y3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEAxr4Z
lmdAxAMdKFES+jupfjANBgkqhkiG9w0BAQEFAASCAgCqEiGQN+JhRioY5qI3eA0NX2GxtOOgWSgf
Co+rioVwQPxxUMN4JJm5tOImg3GwDN8plbhjD+6y+m7M80ia6SRut4Jg8fHBkFvljspmL97rnsru
gNfuVT/76JbpyZ6MqyBiDIoKm3/KDhb/1MF9qy27DeHMDOVppsd0UKjFkARW7Qwi4YgFVu7+3MRm
sulmqWabVQemcFkkOCZrI5dbfsPLsDQikF6Bn8HkBSvTbppHZy04EQQChJD+WuRVKmXWGa83DnoJ
cdV40ODyzkWx6vpb4hxSiIK+aa3h2AjfouCNabIpNyPOYPNUAaOFO2oRx2ZVwzEYfvGWS62bsteU
gwMEMVYNtJnJVq6lMDKaX6NJzX5/ztqeMKFtv1ywhIfQ49QXhXjQg0N6grerB2F+EE3QNlNocxR9
/sOxJt9Vz5iFatN2rVx1CSSjfl8O9ZWJrD1iiGpqbQZO3ezjMn9MJhfCL6BCmrsiJYOx5CJPggjm
mpm4zYvOCXtx7FTmVzDRB0hcIVILxQZOcywxpXpYsWCOwU7wPmmobCoSZCbNW8jPdvr1LPnOfRQ/
pNesXB8UqgIdUbA/lLyXLMuLiJDUNHBrkHz60n9fd+UbKZg6GBr8nE9j+vHHS1L81fuSiaE7oqpf
QTI4RCqBIMM5RAis/q5wQ8iXSFj6ejB03rJUwo9HgQAAAAAAAA==


--=-FFbScYBMq+2SmPMvLxxI--


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 09:18:19 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 09:18:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619029.963518 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtPAZ-0002yg-LK; Thu, 19 Oct 2023 09:18:19 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619029.963518; Thu, 19 Oct 2023 09: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 1qtPAZ-0002yX-IT; Thu, 19 Oct 2023 09:18:19 +0000
Received: by outflank-mailman (input) for mailman id 619029;
 Thu, 19 Oct 2023 09: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=in48=GB=bugseng.com=simone.ballarin@srs-se1.protection.inumbo.net>)
 id 1qtPAY-0002Wn-BO
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 09:18:18 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 70569d51-6e60-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 11:18:17 +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 CC4654EE0743;
 Thu, 19 Oct 2023 11: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: 70569d51-6e60-11ee-98d5-6d05b1d4d9a1
Message-ID: <66049700-c16b-4086-b14f-154285f3ebf0@bugseng.com>
Date: Thu, 19 Oct 2023 11:18:16 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN PATCH 4/4] xen: address violations of MISRA C:2012 Rule 13.1
Content-Language: en-US
To: Stefano Stabellini <sstabellini@kernel.org>
Cc: xen-devel@lists.xenproject.org, consulting@bugseng.com,
 George Dunlap <george.dunlap@citrix.com>, Dario Faggioli
 <dfaggioli@suse.com>, Andrew Cooper <andrew.cooper3@citrix.com>,
 Jan Beulich <jbeulich@suse.com>, Julien Grall <julien@xen.org>,
 Wei Liu <wl@xen.org>
References: <cover.1697638210.git.simone.ballarin@bugseng.com>
 <1e0f12095bcbc82ae3585c9fcf57bec7e324049c.1697638210.git.simone.ballarin@bugseng.com>
 <alpine.DEB.2.22.394.2310181803351.965337@ubuntu-linux-20-04-desktop>
From: Simone Ballarin <simone.ballarin@bugseng.com>
Organization: BUGSENG
In-Reply-To: <alpine.DEB.2.22.394.2310181803351.965337@ubuntu-linux-20-04-desktop>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 19/10/23 03:06, Stefano Stabellini wrote:
> On Wed, 18 Oct 2023, Simone Ballarin wrote:
>> Rule 13.1: Initializer lists shall not contain persistent side effects
>>
>> This patch moves expressions with side-effects outside the initializer lists.
>>
>> No functional changes.
>>
>> Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>
>> ---
>>   xen/common/sched/core.c    | 16 ++++++++++++----
>>   xen/drivers/char/ns16550.c |  4 +++-
>>   2 files changed, 15 insertions(+), 5 deletions(-)
>>
>> diff --git a/xen/common/sched/core.c b/xen/common/sched/core.c
>> index 12deefa745..519884f989 100644
>> --- a/xen/common/sched/core.c
>> +++ b/xen/common/sched/core.c
>> @@ -1504,6 +1504,8 @@ long vcpu_yield(void)
>>   {
>>       struct vcpu * v=current;
>>       spinlock_t *lock;
>> +    domid_t domain_id;
>> +    int vcpu_id;
>>   
>>       rcu_read_lock(&sched_res_rculock);
>>   
>> @@ -1515,7 +1517,9 @@ long vcpu_yield(void)
>>   
>>       SCHED_STAT_CRANK(vcpu_yield);
>>   
>> -    TRACE_2D(TRC_SCHED_YIELD, current->domain->domain_id, current->vcpu_id);
>> +    domain_id = current->domain->domain_id;
>> +    vcpu_id = current->vcpu_id;
>> +    TRACE_2D(TRC_SCHED_YIELD, domain_id, vcpu_id);
> 
> Also here it looks like accessing the current pointer is considered a
> side effect. Why? This is a just a global variable that is only accessed
> for reading.
> 
> 
>>       raise_softirq(SCHEDULE_SOFTIRQ);
>>       return 0;
>>   }
>> @@ -1888,14 +1892,17 @@ ret_t do_sched_op(int cmd, XEN_GUEST_HANDLE_PARAM(void) arg)
>>       case SCHEDOP_shutdown:
>>       {
>>           struct sched_shutdown sched_shutdown;
>> +        domid_t domain_id;
>> +        int vcpu_id;
>>   
>>           ret = -EFAULT;
>>           if ( copy_from_guest(&sched_shutdown, arg, 1) )
>>               break;
>>   
>> +        domain_id = current->domain->domain_id;
>> +        vcpu_id = current->vcpu_id;
>>           TRACE_3D(TRC_SCHED_SHUTDOWN,
>> -                 current->domain->domain_id, current->vcpu_id,
>> -                 sched_shutdown.reason);
>> +                 domain_id, vcpu_id, sched_shutdown.reason);
>>           ret = domain_shutdown(current->domain, (u8)sched_shutdown.reason);
>>   
>>           break;
>> @@ -1905,13 +1912,14 @@ ret_t do_sched_op(int cmd, XEN_GUEST_HANDLE_PARAM(void) arg)
>>       {
>>           struct sched_shutdown sched_shutdown;
>>           struct domain *d = current->domain;
>> +        int vcpu_id = current->vcpu_id;
>>   
>>           ret = -EFAULT;
>>           if ( copy_from_guest(&sched_shutdown, arg, 1) )
>>               break;
>>   
>>           TRACE_3D(TRC_SCHED_SHUTDOWN_CODE,
>> -                 d->domain_id, current->vcpu_id, sched_shutdown.reason);
>> +                 d->domain_id, vcpu_id, sched_shutdown.reason);
>>   
>>           spin_lock(&d->shutdown_lock);
>>           if ( d->shutdown_code == SHUTDOWN_CODE_INVALID )
>> diff --git a/xen/drivers/char/ns16550.c b/xen/drivers/char/ns16550.c
>> index 28ddedd50d..0b3d8b2a30 100644
>> --- a/xen/drivers/char/ns16550.c
>> +++ b/xen/drivers/char/ns16550.c
>> @@ -445,10 +445,12 @@ static void __init cf_check ns16550_init_postirq(struct serial_port *port)
>>               struct msi_info msi = {
>>                   .sbdf = PCI_SBDF(0, uart->ps_bdf[0], uart->ps_bdf[1],
>>                                    uart->ps_bdf[2]),
>> -                .irq = rc = uart->irq,
>> +                .irq = uart->irq,
>>                   .entry_nr = 1
>>               };
>>   
>> +            rc = uart->irq;
> 
> What's the side effect here? If the side effect is rc = uart->irq, why
> is it considered a side effect?
> 

Yes, rc = uart->irq is the side-effect: it writes a variable
declared outside the context of the expression.

Consider the following example:

int rc;

struct S s = {
   .x = rc = 2,
   .y = rc = 3
};

What's the value of rc?


-- 
Simone Ballarin, M.Sc.

Field Application Engineer, BUGSENG (https://bugseng.com)



From xen-devel-bounces@lists.xenproject.org Thu Oct 19 09:18:48 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 09:18:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619033.963528 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtPB2-0003bu-26; Thu, 19 Oct 2023 09:18:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619033.963528; Thu, 19 Oct 2023 09: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 1qtPB1-0003bn-Vd; Thu, 19 Oct 2023 09:18:47 +0000
Received: by outflank-mailman (input) for mailman id 619033;
 Thu, 19 Oct 2023 09:18: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=g4nO=GB=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qtPB0-0003TN-PF
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 09:18:46 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 (mail-am6eur05on20621.outbound.protection.outlook.com
 [2a01:111:f400:7e1b::621])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 8094c8a3-6e60-11ee-9b0e-b553b5be7939;
 Thu, 19 Oct 2023 11:18:45 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DB9PR04MB9892.eurprd04.prod.outlook.com (2603:10a6:10:4ec::8) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.21; Thu, 19 Oct
 2023 09:18:42 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%7]) with mapi id 15.20.6907.022; Thu, 19 Oct 2023
 09:18: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: 8094c8a3-6e60-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=bfiUf38bDXcU0l7seHt+eT8zrTs0/m7qgZmMA1mzEIaE+RrS7ytVFpFUFVdlCXRqlvzbrcR1IeWYrVEUVRrpmYhE6hTSqfP6zGcSdzxDGvlMvm9IpaDfTgL+uoB1whzCy4Ujw7A1BCAaTjnqYJhhcxg/S2A7sglmsDLZWFipB6Qiih3lHIjlQYKwpadS2+mc17lKtlcmpPHiug9RpZRU0qU+s9USITKJAdG4Mz05jlSyA/56R2noHcBn49J2u2GpdaTqCGtXu1qkcm50/zhYoeRduAOA5HL4yvp8tbve7EuBSltvD8DdVMbkJ5e0y2wJ0auF0PZjgr1Lj8Ucx8XZDA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=CKHoipP/APf5T057x2ogsLBsB+fPgqZ5QMhPdRoaEes=;
 b=JJBiukhWFZtNgkyfNi19V07AuZIMIPoAQjtoQ+kC5IX+tT1HFTOTXLlywxFe/EMMgvHI751DGylsXc/ZeHPDba2+gXWjPtm5JH7XDABRcLOWFdv9P+9Tbr3bcxpQCy/7AGSegGlK7O7bxKR7S0oUaRYpl+YM4/S1E6ePP5ZEd8wpr3OFQzrz8B8xZUvxbdE19oNa3ErrBjXg24ikHd3VtlKgyJaV4b+vPgCrGj5NtOgBpPmyVCwlGrgRZPUSIN7ESeHZDbUAVv3IMcb0e4max+TuGebRYJT+C257g7LWAf5gGDHPHc54WTWeUVnUa/ZmapXm8cXlLif2K8fOctrbTA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=CKHoipP/APf5T057x2ogsLBsB+fPgqZ5QMhPdRoaEes=;
 b=Z01c/h0zqqELQIM5j4YijIRE/jFdnA3aRq4RlhmpZW1e2DQooToEowAL7VjybgsSmH0RYJ/NlcrJwjieZRizQxtpv/TjYqLpxPWV8pO3ZWUQDLDSBmaDJmYgk08uqyZI4zp3HJ5BZY5p1Isej8s5nvrZBuRF3k0zDP7YbEZyKLij6Ay7r071COXBEO714ber7cyIyjLgEzpfCLCzweZrJN0AnJO4bEx0NBmh13u3lQZpbz2Me4DbphixH+l21TIlGSC8ptOV8fKXxe9xNQNdBSk9PgBCxbkhY+Mf+c8Fruin0YwsMzMBGZ8HkxqqZ2WOUYU0XAEXVxnO4toRHXRv3w==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <a71eb141-6ef7-f1bf-d4fc-832d710f63e4@suse.com>
Date: Thu, 19 Oct 2023 11:18: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 v1 05/29] xen/asm-generic: introduce stub header event.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>
 <69563e3f41cb6971f93630d9df59395f159bd3c4.1694702259.git.oleksii.kurochko@gmail.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <69563e3f41cb6971f93630d9df59395f159bd3c4.1694702259.git.oleksii.kurochko@gmail.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0212.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:e4::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_|DB9PR04MB9892:EE_
X-MS-Office365-Filtering-Correlation-Id: 56dab772-10eb-4b94-8662-08dbd0846360
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	180+1a60s/JOXEKEjiSGWs5SPhL56z0vxT7GFkPahkKmPsjIg7XzTpCYfUdrYy5Qp77Sw0ZUgNq3DuoPA4T0Zw4VoMttPAw+51XskT0zA50ed3w4TrX3ARas193MjFEfQ1wCiuWS74eN2386BL1gnwmrcaNK8HgVB9QwhmbS2R0BpqKK7vNMMkyA5myVIN4raOjJNVVI6SqC/heqv9Zm+qGUm7utwdTsfPEyVfaU4XsAPZ9Gt/4kLenCgNTYg3qfU4GxsYaS2jEmIfYlnM17QDGQ9z7SIg6lT9sByNXZBKgpglTGB7zGsuBVvN3qm7sWL5bzEI/JmUy7sTMPpb+YTpt5gpC2wg0fYT2Pr43LghfNWoo/mx24kxt0M5f0Gbb8UmKzwE9XEUMW2pmVdq5WDMoDyCbDrOcTsPQvqglDtg4gcKHnsOOPy+mwlaiLOxCvPOkhzynQIoOWRfo4pwfiEHJxQP2sEYWJPtq0GpQY9ujz8Uc5po+OqRwicbpJgY4u5vyMkZshBWW0IPvetgEN/CiXLQKewD6/JF3PW4hgIlCfBpbFtGNfZSGNM3Sjhf0RZEpDq6J2MrTq8cUeoXg104IEBVc/HTGlWhZYWNlUcWus86qhB6j01PxGXVtRzA2SmZWtsFV1JzE+vhqdOw1rUracqGN7E+f5aaHc3zFL7Lc=
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)(230922051799003)(451199024)(186009)(1800799009)(64100799003)(53546011)(41300700001)(31696002)(54906003)(66556008)(478600001)(6486002)(66946007)(316002)(66476007)(6506007)(6916009)(86362001)(6512007)(36756003)(8676002)(8936002)(4326008)(5660300002)(4744005)(2906002)(38100700002)(2616005)(26005)(31686004)(41533002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?OFIxZ0ROUlFxQkY4bmY2WjYyMnpuWGVwWjVoZnlVWWVRV09OVzhFemlCTmRX?=
 =?utf-8?B?Z3V6b011Z25ZbWRFdjZwUGhjcXR1VVpLQk0yZmp1dlFIektScG1qVWFqU2FG?=
 =?utf-8?B?Q01mM2hmZStMYjJyN0hDNEZqTWl6ckNlRzQ1T29BQ1k4NXpqWlhRM2NTZHBC?=
 =?utf-8?B?Q1k0M0ZZMll0OHZVTnNtRVlLVSt1WDZrck45dGxLUUJqbDJHcnRkR29hZldF?=
 =?utf-8?B?Mk5uQks2RElSdUlhcEw1eTF5R0ZRT2VEYXRzSUNIMkd0YVg0WnlOZjI5SytW?=
 =?utf-8?B?ZmQ5dG1SMVRqbDFURVNURjVwdU9wM0JnWWcvVm1BY1pDZXVxVG5Na1M2YUdS?=
 =?utf-8?B?Sm9IRkVmU2JoT2lzRTF3dENXQTkyaXdHMExDTW04ZDc1QWduU3BzS3Q5NjMy?=
 =?utf-8?B?WlJBS0hKTitRS1U0VUdlT2ljcnE4aS9ZZTZUV0xIMHlKYnpjL2MwTWkwNGl5?=
 =?utf-8?B?c1N2UG5JTk50d0NoOHNpQ1liNnIxdVRsSTV4ckpnbkRtRHJ2OUpoT2JaRVVQ?=
 =?utf-8?B?bmN2RVZlNkt3UGFWc05DZnRiRHZadWtzTy9xVnpUNm1lOVZpME1taXZWVXpn?=
 =?utf-8?B?R3lIbzRIUUlob3haMmxVcUFvTndJa3JtQ1VhaFhBWWlxWDZXcVp2ZEFheE0x?=
 =?utf-8?B?cGo4UTg5eGZlWHN2QVJuMlhEQmlKNGR1bVIwY204OTZOZnh3ZHp3c1BjRlNH?=
 =?utf-8?B?STNCRm9SamFmeWRvUHFpYk5aUW5ucEhwWFY4ZmoyYjRvbVh5UjdOZ2toWmkr?=
 =?utf-8?B?bE9SZW5TRzhyYVdKQ21VMWR2VENvUEo2OXRDQlhEQjc3aVpoYlZET1M3RmVj?=
 =?utf-8?B?ZUlIREx4WFlRM0FWc2VXWXJTMWlkejFHcHQrLzA2ZVJieUJlZHJNQVpWcURx?=
 =?utf-8?B?U2NDcGhOUVlDaW1KT0RCL2FSVngvZ2dtL2xOM3JLZmJjUCtZR1JzK2QrNDMx?=
 =?utf-8?B?TmlHMiszTWFTVEdFc0o0VW5kMHpnQlFvdFpSbXpnMzN1bHAxcnV6MlUvYno5?=
 =?utf-8?B?THo2aUJpdUJSQnZWaTZqRG4rWFRiekUvbXRQcy8ySVp5dDM0S29YcDdQdTdX?=
 =?utf-8?B?ZE1zM0pieG42eWt3MytVMWZYQkdLamwva2tMMmZxeEJZS0F4N1lpem1ieWtV?=
 =?utf-8?B?My9jTzhOQ0pOSnRVSUs0U2R4aDdtWjh5ZzY3UWNXNUtxSWZMR2tUMzlqYkxs?=
 =?utf-8?B?VCtmVHhCaThPdlZaOVg2UmlPY2xLc1FRaHBnRmdNWUVQZ0ZRSnRqd0lubklC?=
 =?utf-8?B?VHBuRkZpdldycGt5K3RabUJodVB4SFV5VUlucW9oRm0xT1dCU3lGMzhFZWNa?=
 =?utf-8?B?bWtobGpNVC9IbjloNnZ5MUlXT2hucmIwY0xpN3llNFRydDJDS1hhNGlsSzhI?=
 =?utf-8?B?b3FmTVpobGhsOWJLRFVoTHpwd0hsQmRKV0dpVXFvbkVoZTZYczJWSWZGSXh0?=
 =?utf-8?B?TFhRK00rV3B3U2VUN24rRVVtY3VFc0tvU2cxWlhsZWN3QVBxWDUranBoTTJp?=
 =?utf-8?B?bkNXSnRrRk1mQi9DSG9KbHhkRGJNdHRJVDh5eXV6aGd3WWVGU0I0YjRTQ0ti?=
 =?utf-8?B?Zkw0T3dhYTM5SFV6UlhIV3V5MWlOd29hRm9ITmIvMWFrQmZ6cngzTnp4VXp3?=
 =?utf-8?B?eWd5YWNZSXE4eklvMkFYWW51T0FvQnVydEtqSEF5TGZFVEJ1T3JQSG13Ni9j?=
 =?utf-8?B?VkxoQlNCT1ZYdmNiazVJUk1pUXZnY0VKZDdOeGx1M21ZYjFOTjlocXV0VEtq?=
 =?utf-8?B?WDZlWFJKUDFJSEltTDJmRGV2UTlyVFNTTGttYWRwd3J4dFRKUnMxamlGdEx0?=
 =?utf-8?B?eDJBUWt1NGtUQnlpVWszYXVUdW5VbEFNTjZpdnlZS21sR0k5OUtsbHZ6dm4z?=
 =?utf-8?B?UElLZ053RTBGU2tzMDZMeHEybkhacW44TTgwL3V6bU82dC94NU40VEUzeUhD?=
 =?utf-8?B?d3ZoSWV2Y3M2UGg5TlI0R0ZXVWFlZnBQZGllak5ybGgrQmxrUzRxUTBDTjlv?=
 =?utf-8?B?TndvdUs1dnlzUU5KRDdSVldVejhjT0xvTzRVRlNpOTFNVUNZeDBER1ZKemY2?=
 =?utf-8?B?c0duNDhTd0NJQUd2SG1Qa2hwOXBLd2hIYnptbmVNTUQycGhiQk1sT280eW5B?=
 =?utf-8?Q?x6JIjGOeDIBGLLscQezfTZ2dK?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 56dab772-10eb-4b94-8662-08dbd0846360
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Oct 2023 09:18:42.5526
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: BnWrgUEX/KsrbI2gWxDDGN60T067u0Y1cFBmsXp2Y5FT4KOwt6gUnwhAPArXbkWj1dQlQ4LxB5XAlhEwMp067g==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR04MB9892

On 14.09.2023 16:56, Oleksii Kurochko wrote:
> --- /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)
> +{
> +}

While this will satisfy callers from a build perspective, no port
will be functional with an implementation like this. Yet the
generic headers need to provide the required functionality, not
just build stubs.

Going further in the series, I won't repeat this kind of comment.
Unless others disagree, my view is that headers put here should
be of use beyond initial bring-up of a new port.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 09:20:00 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 09:20:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619035.963538 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtPCA-0004Db-CG; Thu, 19 Oct 2023 09:19:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619035.963538; Thu, 19 Oct 2023 09:19: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 1qtPCA-0004DU-8e; Thu, 19 Oct 2023 09:19:58 +0000
Received: by outflank-mailman (input) for mailman id 619035;
 Thu, 19 Oct 2023 09:19: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=g4nO=GB=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qtPC9-0004DK-IC
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 09:19:57 +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 aa9f67e0-6e60-11ee-9b0e-b553b5be7939;
 Thu, 19 Oct 2023 11:19:55 +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.6907.23; Thu, 19 Oct
 2023 09:19:53 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%7]) with mapi id 15.20.6907.022; Thu, 19 Oct 2023
 09: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: aa9f67e0-6e60-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=R23xJlDkoGe2LHoFSb+xOtA5eAS0Old6HZU4WYsTtb0mXg6fPHsXvNsE5J0GrgRnUpT1d+O0D9av6ZajNuuKl1TIvId7FDDnoINJrq9WvDVI+BnQQovpUJGj5HHEYnhn/jULQRUBYadjLInKvNvDb/UTtegWi4jDuT6KWb7wVaTKJoAkxBGqrB9vgKZEPeWtltV86VfSW60MdMcHA6HwAAaRCBbhIr6xJSe0RWFy49InMtstEvCTJLZBKcuZ/J0q+r1sSwOR1MklPKOn2daHbxPf6iTmFL61ValNT8tvMSOscxHQJkjK4J+oKhBvYlW66KbmXfQBJ5uAU6vrW9Nvow==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=g7t2JAKBm9yJYuYo804pt8F1unb8nvaOsUiw4QXP+mo=;
 b=l8IqPnAHBoGyrPStWtjGOKJCFzAf7Jfbf47EhQDDufV06UB4x+Z8bgaPmkzRKzyh8RwFWys0MePQlVxvm8ouD7L8iZo7sLCpdnxVRM78spkFwIEYF5+5oSdhgBBhkI2IArP+a9m8VVkaPITuwyUvQW34Bliy1LwanVcfL3T5bt16ZGgh8gbfjiISbwgVQfbrJ670xu/sbRYX6ypRWdokXPs2KimCqpwrx8VEslalscvFfIPy/S7TQqNxDqvlNF1yTk63kulQGGmKsCI9sUm4OXhOlE6wkaWfpvo8+dS2rBlJNfogB1SIDxRcSx0e1nBitkO9n+x6DVFHfWN3QL0fEg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=g7t2JAKBm9yJYuYo804pt8F1unb8nvaOsUiw4QXP+mo=;
 b=aTQ6AoVSy4+xQIJ3+ivsQ9NjpZEJfOAgXI+8X+vbN6h+yLpygZCweTrXVtXQ6OvutHYMWM+XGiJYKFP8w0IbY7cLlihPaG5dMZlUzlYRRQPFGaDlcQqrRdOYoYuV2OQ/dg/ASyAnZsR/VVuni2mydlo6sVBSXVMy/yU/kkcJAYmwI4LSIrDY+XfueIhIaFvBI8fNvdifUvVInkuo3X677FxoQFEweqP9nCe4voEP7aeysVaLs7O0iAT3hTD5ZIiR71Ae7Jg1J424QdD1374wdL6cnA8jgTuMYVkcNSinxRrJXN+Kh4hVtFztWLQIl5QHaCYrbnDtL0763/PsLG70Ww==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <3e13d1ea-c242-46ac-c692-8f2237d2a23a@suse.com>
Date: Thu, 19 Oct 2023 11:19: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 v1 06/29] xen/asm-generic: introduce stub header
 grant_table.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>
 <f3efdfc93780b62be93fecec68860e12026fe66c.1694702259.git.oleksii.kurochko@gmail.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <f3efdfc93780b62be93fecec68860e12026fe66c.1694702259.git.oleksii.kurochko@gmail.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
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_|DBBPR04MB7882:EE_
X-MS-Office365-Filtering-Correlation-Id: df91f639-8985-472b-2d0e-08dbd0848d9b
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	ycp7RhjhurywhKqNBXdsyfYc87q00AlXHZn4+wDxf2UvX5LBzG12EwskSucbSfAqv6UCi4EG+G50lxwA6+/8I+0lKoTmaxYFQgT4uY1iCULpy0Kqj7Spf2IVY9wY/+boTGALOQsyC7etfme2TtbtEGOxxa+NHUFXjFikFUG7qfB8J0p750n/VGLGauAE4fOOp1J0zMz5GQeR0EP15I96Pypd0o/d6qmlNyAVPpByX7mz/MWJjiuemEKrW2iqIU3SWbSkTDYg8DPmeiTfshLkMo6kW2yVOQGC3biufGEd32b5JUzRWP3yhnTz3o8+5XuvRPaOu1VZRv6OvBmlA4vJ0VTXprzrcWgdQPe4vXikm7AWj/ml6UWbyy0mfZXgzdXCK98hWQXXD8E+hJ/UIGC4dqiVqIvo6S70ivek6n7NodXibZZCFb5Taq9KoGyQWc7UDcuo4cIsWXDIAm0CEYHYa8rHDOvCETAZewupL4yVt4tQpdQrRMTi6gG3Ki6n3MLXgoYlbbjx89224admO2jfl8yjvys2PjU98XRJGjJYDQM8GNRAoa5LFp31mb39m9DTUYKciN13kWQZtKN7zGETrLPscnxO8IIKIMgXmwok0wDBtag5mR9UpYLzqhkwdLhdadh7P9MH7+kFzUPP6Rt1YFyNO25Iidjext0XDMQ9U1U=
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)(396003)(376002)(136003)(39860400002)(230922051799003)(186009)(1800799009)(64100799003)(451199024)(31696002)(86362001)(36756003)(41300700001)(66556008)(66476007)(54906003)(66946007)(6916009)(6486002)(38100700002)(31686004)(316002)(6512007)(5660300002)(53546011)(26005)(2616005)(4744005)(478600001)(8936002)(8676002)(6506007)(2906002)(4326008)(41533002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?YWc3eGxBblpiekk3V2kvOTN6UDJEQXgrZVkxR0RadEV1Z0FUQ1p1QStFamgz?=
 =?utf-8?B?TlJkUEZKU1UvTjdzNDlaTXJsRlVoTExFbHN2alp5WDJSRHJmdFcrK2hRd0pr?=
 =?utf-8?B?aHRhL3QrcmVaV2s1bXlRa2NhS0l3SWRlT09BRVJjT2pWeUhWeXR3VXFmZzhQ?=
 =?utf-8?B?VFNkODZKRi9VVGwzWER6TU83ZnhmYnEzdSs5YXN1STFBeG5PR3RhVmFLdnRK?=
 =?utf-8?B?SEovUVZvdHl1aXRXTXkrZng1OTdCQjJ6WDNBVUtnekFvNm1sVGQxaW5Fb01i?=
 =?utf-8?B?ejIvbEZpSkdXTi9WOVZvWG9KbTNRU1N0R09ERk95ZWw4YklzcnFncmR6ZnZv?=
 =?utf-8?B?dVZhQ2FqblFzSm01M00yWlNwaUF3eUxNOFBpc0pzcFVnNWpDdkFycVNmU2ZZ?=
 =?utf-8?B?QUszcTFWT054Q2l4cEVqdkorUWdoaVdLN25FT0JQdjFqQXUwdjV3SXNXSTB3?=
 =?utf-8?B?MmVBdzdJZUZRcENsdFpHQU56UjhUWEFpQjFYalUvejVJV2c5allDQUVJMEMx?=
 =?utf-8?B?ZUFMeWJhbUwvYWpCangySklZMGtyYTJURXBlbmVLNU9KRi9abWtxTW1kYlhW?=
 =?utf-8?B?b3YyVFdteHRSdVRQS2VBTEorUTJiSzlHTWVOcmhWK1N4YlA4UnNkVGs2aFRh?=
 =?utf-8?B?Z1F5dFk4TEVkQXBrdVIxUGUyTzFqVENwUUpnZ3dOZjFlWlovVHYxd0ZPUEw5?=
 =?utf-8?B?SXJDZjUxVy8wM0hoVnRCTXdZWUlZbXpEQlJ5bDNSK2I0akk4K1NOWFhEeERC?=
 =?utf-8?B?anRvT2crWXZwNzl6ZFh3RDR6Ykd5SG94YXlYVERSQnBiUjlRdER3U2tFY3Ew?=
 =?utf-8?B?aTlQdCtkNnNHNncwQjQ1dVZOZHZBNTlrclJPWUN4bzArc3V3RmpDR2JBSEhI?=
 =?utf-8?B?cXo0RHRoQURmbEtsQVBJRkhGS3R6ZU41Y3BrczNXL0l3cUF2SUxuZldhQ3gz?=
 =?utf-8?B?SkhabTkvNHVNRmhNRGFlcEZqMXU2RHplc0xFSmtPUnBZZmlyd0UwTzFwVzlZ?=
 =?utf-8?B?c2NqM3dqenhJRzJDbkt0ZlU0VS9KcWJ5SkhqR1dPREcxVkdGQXN0K0lLakkv?=
 =?utf-8?B?U0VpQjhnVVlIMlRXNFpkOStmWThiTVpGc3dnQVVMdVFRWG1xSHZoWWxYUkNv?=
 =?utf-8?B?TGwzN0txNjdlV2xwYmF6N09PWE1NVGtJVnhiQkJVSk9rY3RDYjA2UFhzTkFK?=
 =?utf-8?B?SVQwVGUvaTRaUUJySmkyaG9ZbERjdEpiRFVxUWo5ZkRtbGl0cXFTWGVkd1BU?=
 =?utf-8?B?TitYQjJESXpvOFpKa0pqRFdEUmJXeVlrdWRPR3I3QzBneGdSMjU1QU1jUEtM?=
 =?utf-8?B?YlVMYUVXL1NNbUtNVnhqNVMrd2piK0tlNElsTlJiY1R1V29DZmprd3M5SjNs?=
 =?utf-8?B?eVJTUkpVN0NNb0ViY1Z5aVE4RmF6aEthbE55cDl5N1NmTnNzUW8vaGRPZTFq?=
 =?utf-8?B?Q2JiY3lLbkRNL3lTS1huaTNQb2NjYkNpYUJoOU1mYWpSVEM4MHFKc3Nlek00?=
 =?utf-8?B?UHpJK0N5Y2R4VTV3QVV1ZnpQcUhzdnZRSzI0Y2JUWFYxWWxhOUw1TDVxeENX?=
 =?utf-8?B?QVNSbDZOSmFHKzFDdU9yQlFsY0xVWHlvOHhFQ3pGK0xrKzd2aGFmQ1M3Y25p?=
 =?utf-8?B?SHhDZG9tVU5jNXZjSnBoMyswWjVuZitZQk5Zc2JFZitTY2t1UCthSmFKSTEr?=
 =?utf-8?B?VERFUHhXaXBRdG9aMGoxdnNMQ3lNdGN5dXlNcjBzUFZIZC9uUjlCTDFIL0J5?=
 =?utf-8?B?VHAreTBlZkR5ODI3a1RKMWx0WTY4VkNXdHFoYXpJc2pseXpOV1k2RXpWNW4z?=
 =?utf-8?B?TERmbldJSnA2N2dkVjNSRE1HZ0dzM3NuUWFCSVNzanVxVG9TdkRuVGZTbVUx?=
 =?utf-8?B?N0QydHVwZFFpaVBuWk9udERIbVpzQnRXUWNoRXA0ZDFoMFU0bjQxUGV4MFlk?=
 =?utf-8?B?TVJXdFN1TllROUtyZmFva0REcFpMdUNhRnp0bHVPY2pQMnk3SHJzYjkvNUxP?=
 =?utf-8?B?a0llMHVacWd1N09zYitHbGU4TXNLNTh5TEVIVGVMczhkRlZiNHhwUnR1ZFVS?=
 =?utf-8?B?Ri9tdno0NEw5SmRIMVZKK3Q2UmRtSStXems4RXhSL1RyQ0QzN3dZQ3g1SzJE?=
 =?utf-8?Q?17rapJ5t2c0yiPvBiGNgNMj3a?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: df91f639-8985-472b-2d0e-08dbd0848d9b
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Oct 2023 09:19:53.4980
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: IFvVGv3KX1zrBEGAZ29a7RH/RsX5m/nESqAdvTcAUUlaL2YDV8oAhmoYKAaFHNPDHHlXAyQVl0RUi2U/cD+ynQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBBPR04MB7882

On 14.09.2023 16:56, Oleksii Kurochko wrote:
> --- /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__ */

This isn't going to work with CONFIG_GRANT_TABLE=y, is it?

Jan



From xen-devel-bounces@lists.xenproject.org Thu Oct 19 09:24:25 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 09:24:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619041.963548 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtPGM-00065m-Rq; Thu, 19 Oct 2023 09:24:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619041.963548; Thu, 19 Oct 2023 09: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 1qtPGM-00065f-OX; Thu, 19 Oct 2023 09:24:18 +0000
Received: by outflank-mailman (input) for mailman id 619041;
 Thu, 19 Oct 2023 09:24: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=g4nO=GB=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qtPGL-00063m-37
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 09:24:17 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 (mail-db8eur05on20612.outbound.protection.outlook.com
 [2a01:111:f400:7e1a::612])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 4543ba6c-6e61-11ee-9b0e-b553b5be7939;
 Thu, 19 Oct 2023 11:24:15 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS8PR04MB8547.eurprd04.prod.outlook.com (2603:10a6:20b:422::11)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.23; Thu, 19 Oct
 2023 09:24:13 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%7]) with mapi id 15.20.6907.022; Thu, 19 Oct 2023
 09:24: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: 4543ba6c-6e61-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ig8k42ZffjCqz1XcRFj5N5yCfok+v9F5Qf8DCEi8tKgjMuSs+QDK+xFPy0AKO/8pDjv6mDpZCt6dPdVz08UH4OKdrQOTbCc98c/OfOOgcS48T+T0zjrlV66b2H+4+VbiQzOE064aWMVLam3jrZepRXsd76YdVHha1NSpw0npFbHYJ3MZAZWXy8IR34AT6fIz0H3TTNTh1N04jPqvVFz0WKRI1KtCgAOir8+KqJIPed77aa2unQZmbdY97YdQNReegkxyDDDQaNrxzKKU86WfIRl8jqETK9Pstmdi5bfSOi8FbOI0M1QyP+DyG9AUJchmTbl88VToH/acGynELUwkFg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=ksjN5UzqeLpxmqsO7kTlYPHjsTqWmkDQgwFba+UfPhs=;
 b=ctTnEQNZs61hi06KDhCrtC7LvB9zx73Gma9xpP+jCFw1mVWyygAb35La4AxEFsIWD9NWv7LA/JJNeHtyswWNsOP4xwKBCgIWXXU2OKThahX/IJzhzIFK691OOnJPdDb+2ZvNxCsXLdbhlu+YNvKkZlbu/N0Qd/W9P57uIBZIC7i7Ev1IELUi/OLNa7qhGPoYIjVC541UlhyRE+9ozecnwoMKfdioTrbVt9jZV3d/D68vQeu/h8++0PbWavLee4JEb9rWSqmyPbsUwHo5/u8FEKO9zndx+d4ObpVhw4PW2SSHLI23SmDQCR2rWsQdYIbeiUo5Mws3ABi50ddbKTGHYw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=ksjN5UzqeLpxmqsO7kTlYPHjsTqWmkDQgwFba+UfPhs=;
 b=unpUEs/OuBxHuHFgsXcXoNpZVTHlwvtC0b+RT+pI0R1JmGXigHjOMPxbllaKfOUwyUKNrknbjQgg4cBFgngiaDh32fOw7x2eos4gsUepHcCQ++CYf0xtUX6sqU/ZqTV6lWPR8E5QieoTc/eXYPifWObvYuy9C+PvpON8G2XqRF4g4Q154JE+kn3K4/ERZP+Nh7gMU6BuFd919S8TzpvFFF1hAmrAPvFvgdhkNbdUWpXGOLou5r45Zfbn2wi/BKl5adLzL79hmVaZTVRQ3s/AaKRwrxRYXsct6BjJ839vsEL8/FAug1tzEwAilduVXHe+xlZ6FXDH0z5cQ+jzzz0VQQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <f7293722-c708-947f-19ab-6c3b753f6dda@suse.com>
Date: Thu, 19 Oct 2023 11:24: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 v1 08/29] xen/asm-generic: introduce stub hypercall.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>
 <bd57ae1fd448b7d2f4188ff705bb5f537ac48521.1694702259.git.oleksii.kurochko@gmail.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <bd57ae1fd448b7d2f4188ff705bb5f537ac48521.1694702259.git.oleksii.kurochko@gmail.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0067.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:49::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_|AS8PR04MB8547:EE_
X-MS-Office365-Filtering-Correlation-Id: d541342b-444b-4f75-98c2-08dbd0852872
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	Tz46be0w5X81S8FiqHeuEGEkhEXVx2vPqFZdqtYXg1GRNAYasFWRGrdoGb5Z3jHhbrN7PpAiaOPPj1SbkcR6Q8Nhi3ycu5NtCvEn/sWufB6bSNn4LjjjhmnsriIneXeBFYzSHn1BrNs6W4SzcIjjJsLkYwvZ1nsX8c0642ilBgJ1WljHegDCHFcNZ9Q1KrSb4hyriGwQaCOLwsViTWXhAzFY9+W9iBMLqxcGbetpu7aCPoK5xFVMrXAk5A0TaMz++IE3IFWdt4MYKlogkpvLYaXrbGUmNSdf697UbNRvDod2HM9FeIL9BkZfqFb5YiHlEnx4JIkWNRIiXdpOE33Cl1KwVc9NgqJo43snDtH1v1EjdujCOKg5eMHSMLamsfobmXVZdxjJKCVblhVs9ju3cwEnbthrfLv4J1fcGSE5ja1BfZjThgxQQmumE/rESGBJlvkQXlQRG9SSr3B+0mL5MAFhcU7+BHpS2DPlUM+lULLjnn7ZWNrwq0sNWOFEnqjQL3eAPsYy326UUg2hUcMfAi20692QgFjEuXFe4pK0bTSQ+69RRi0tq2FU3Ne2mTZKzR8cw9VxLbfM86GYlN1/VVs7p7PDbx1pqSgbavred0R4Wt1//5yF9KqV23UkD3lIwInpvIe4J+6shbqaZ6Vwk5oQ6Tt09BD3iUncj6gTzfE=
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)(396003)(346002)(366004)(230922051799003)(451199024)(1800799009)(186009)(64100799003)(2616005)(26005)(31686004)(41300700001)(53546011)(6506007)(6512007)(38100700002)(478600001)(6486002)(316002)(6916009)(54906003)(66556008)(66946007)(66476007)(5660300002)(4744005)(86362001)(31696002)(36756003)(4326008)(8676002)(8936002)(2906002)(41533002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?dm5RZllCK1ExRVcyeHI2a2N2V3A4REdGWldFdTB6YXBpbTRiNTZKc2NWaXJU?=
 =?utf-8?B?czdQODBVRzJvWlQxQ1lIOENxUkp1UGV2WEZiRFE3UXB4STBWUkd3KzFuMjNx?=
 =?utf-8?B?QmlZNEdUSElEQjZvNEdyV3NRanMyalhZeURWTmpkNW8rR0hZckw0V1RuS3FG?=
 =?utf-8?B?bHVoVU13WEJQQ3hpQ0QvZnpwWjZNc0ZsbmdwcFlwSmI0cURRWEVJaTF0QWkx?=
 =?utf-8?B?NG5IY2VzS1VkT3k0c1pqZVYzY0MyaHE1d1dwUk1zMzdCS0R3aDNvYUtRUXJx?=
 =?utf-8?B?Q3FxVE5yZTdYWHRrbDZMSjVFTTY3MHR3bVNQamxjM21xNVJyNk9lUUVmSkk5?=
 =?utf-8?B?Q3ZQb0Z1WmZDVm15UDh3ZjBJQVR4R1d6czFFVytWclVBeDJvOFdKc1JVdUtT?=
 =?utf-8?B?SjBrZndWRjRvQitDaW1GbUdlZnlWcllyR3FHWU50aTdqa1lmOFM1MElUSXRm?=
 =?utf-8?B?QW9TRFhHbFJ4M3dhZTJnUWNWazd4ekJOblUvcEFhZ3NtQmFpeGNiTEpGaVNL?=
 =?utf-8?B?MTVmU3RaZjhZd09OYnZLVGt6SXV4eHI0ZlJxOTFYRFV0bkc1S09jVExkc2FX?=
 =?utf-8?B?MTc4MlhGMVIxdlBJcDhkNGVKdDJENlNNRlZLRnNtUzh5TFJjMHJKSThHVngv?=
 =?utf-8?B?WWRGNEdVNHFxdVpVeDhkMUo1TnZwdmtGMWdkaElzVHZWRGlZbUNhYmJSMDd4?=
 =?utf-8?B?dDE4SkxTQmRiN3QzdzVVTlhVZm52Zlc0QnBqODhWQm9rYkxJQlVrVm5ENzNE?=
 =?utf-8?B?OEpKZDdqK0ZJZVhLbEFtQmdtS0pNNjQ5TldVOUJmNFFoa3J4UnFOb1QxTFdB?=
 =?utf-8?B?dEhhdVg0YkpmSWFlSTFEYjdXckFaZk9DcGNkNVROaVc0VGJtVmY0V3BRQ05F?=
 =?utf-8?B?YlJJait5WjUvdWVHZFpJa1I3ZjI3M0VGVDZOOTVGRWo3N1BUVUtyVFlWbTBv?=
 =?utf-8?B?UWtmQ01NaHN5ZkQxOEJGcXhFNHdFSnorSFhPdFNEQ2lmVkRUajNqNlc0NnVn?=
 =?utf-8?B?TGFsd2hGVWZ2ZFoxQTY4ODFJYm96T3pHRGtmMG5WUDJKR3JBMEtTSkUwYThh?=
 =?utf-8?B?YmpnbFIrMHlFNjBYcGJ6U0d6TytPaTkwVXlkbzBoYnh1OEY2MkhVMURqQnly?=
 =?utf-8?B?Z2tSWjFjZ2JBaWZTL1FxVDhVUE96QS9KWDYzb3pyMnl3V0hwRkN6RmlKbWVR?=
 =?utf-8?B?L256Sk0xRUxlNFpkUnN0VGZBYkpLUElrVjUwakFmVlNYN3FYUGFZcFVsK1hH?=
 =?utf-8?B?cnVZemV1ZlBUUkFjdDVpY2RKNXA5cFlSNC9CdFFnTy8yNmNQbmcyRjhCYk5N?=
 =?utf-8?B?WGpjazJsTHNpT0g1L0lMczE5TkJLZUZYUURURXgxR25rZHNMMzRzRlRrM0Fs?=
 =?utf-8?B?aDNJL3dOdTBpNnpycDZtTlMybXdMY0xqK25sVEtmQjZWclVxQmc5OUVRdnNB?=
 =?utf-8?B?ZWUyZ0EyTTRoUGhIWEcyVk1odnNqTDk5NTh6WWE1OE9xYTExdjJWVnE2RHla?=
 =?utf-8?B?WUVNcDVMemd5bUVPU2JPZ3c3SHp1UG01dE1uYnlVV1cvNnVNNW11MTVBN1g3?=
 =?utf-8?B?eHZNZlVTRERXLy9jQ2JPeEovd09yRUpZSDYzM1A2bHd5RXBZSGRoSXcxMjZ1?=
 =?utf-8?B?MVl4WFhPMXp5R3JRYWZQZHBXUGtlM2JBby9NcTRaRmNsbno1aVU1SFp0NTJH?=
 =?utf-8?B?VUl0UVZ6Q0IzSlM4ZEtTQ1c2ZGQrd0N4dExwV3N4NHFoZWZjVjNKUHpaRTla?=
 =?utf-8?B?NlVKNHZNRUF0RXo3cURydG9sVEY2R0Vaa0lxMm5XNXl5TVovVkhoeHdyVEEx?=
 =?utf-8?B?Mjl3b01CMkg4TEtmV1NvOFVldFlCRGhRU1FyelVycDhtYXBZTjAreWFockNh?=
 =?utf-8?B?RHlydDBHM1o1N3puOWZueSt6UCtaQXVUZ3Q2Skp2cWFIWWFWMmp2L2VEQkRa?=
 =?utf-8?B?SGo3b0RXMWlrTi9qVjNJRlppbVkxQkJNUlFXeVd2ejF0Qks5emNXOGtxekVx?=
 =?utf-8?B?UGU0M01pZkdHUDNXWXM5cHpFRmNjQkNac0RCcnhWVWllTTYwSU4vbEJkZDJ1?=
 =?utf-8?B?Zlh5WVQ3UVhtZlZQNXQ5UGRhQ1JVR1VEcVdHQnc2Zzd3TWxEa0FxcGtxNHhH?=
 =?utf-8?Q?t/e8KkNeO8aGuZg+Ssc231+8v?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: d541342b-444b-4f75-98c2-08dbd0852872
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Oct 2023 09:24:13.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: XNYq4gJ5AQlIpEggNp+goMv9YH9v+ZH1EF00mriKiiWBUVLJaBZwI8AUmD8LX1XHR+BfQmRdJPTjgO4chIQH6w==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB8547

On 14.09.2023 16:56, Oleksii Kurochko wrote:
> --- /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__ */

This lacks the "should not be included directly" guard that x86 and Arm
headers have.

Jan



From xen-devel-bounces@lists.xenproject.org Thu Oct 19 09:25:10 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 09:25:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619044.963558 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtPHC-0006zj-8w; Thu, 19 Oct 2023 09:25:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619044.963558; Thu, 19 Oct 2023 09: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 1qtPHC-0006za-4a; Thu, 19 Oct 2023 09:25:10 +0000
Received: by outflank-mailman (input) for mailman id 619044;
 Thu, 19 Oct 2023 09: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=g4nO=GB=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qtPHB-0006y9-1V
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 09:25:09 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com
 (mail-db3eur04on0601.outbound.protection.outlook.com
 [2a01:111:f400:fe0c::601])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 64f2d2d2-6e61-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 11:25:08 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DB9PR04MB9332.eurprd04.prod.outlook.com (2603:10a6:10:36c::6) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.21; Thu, 19 Oct
 2023 09:25:05 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%7]) with mapi id 15.20.6907.022; Thu, 19 Oct 2023
 09: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: 64f2d2d2-6e61-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=I1npiKlL94fttQJAc4HV9ugrDb0pIvxyRTMbohoj7fQhmd90GpeEdcw+HnLAJnpH2zLKQPUb3/OtGzOeL7MbhQOSEXfasXAEFaxxyIZZwGsW/BkIsOimMt6OdXEtEhoNaQn60wOcNCRwsU+64pWpGdJP6KCdCndzpy1yOvNfYEZ+AJa5IKJjVyCOTRXDmUvBLN1tiCdleGdanBIu93LI6ncI7xqhrU6UU2qa3/Vz1i/tS/im/+lMfdgtZnjRJ7SfT3czr3O0d6rNbGsehXdpwInDNM0crnWNAyrpt0ZZnQXF6HiuQRH/JC4AZ8mfTE0GIsTvrnDfp3SVzdQHXssTIg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=u5DRb+w9UNyV0SEeMBDrQ1nJFbtoS48VriyVBuPcZPM=;
 b=BEnpayKg09Ofp2XHa1hEkRhxNKuhU9nvLBloophDXYUa35ZXNS1qaRCt8VRRZDo+WMXai+KzJN4MfaIfmMVOaueOW4TGFDf325Iu5YfIqQKFIID5Mz8bRXSp+Zp7+utqo9yCLpcYjkBRPKk7V5uVX/CeLq5a1h2iChi+2C2yqH4o0jBuCGQjujwWGqlbt1+ekXW5I44iRyVqep+92UFRTrIT90yOa7aPilyXggqluowoQIgIns7Rd5sTx1MZdxa1nMlGIIKQX4XQFa6wJgjPaFb71NzCG5tng6ksjZOgmRByFkOIyVJDSnw5w4TmUTQpCntg/QIx2E5Barg4fipknQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=u5DRb+w9UNyV0SEeMBDrQ1nJFbtoS48VriyVBuPcZPM=;
 b=BEdgcg7uRARCU4wqudUTEdKoX47fO2BCnwlXP7Z8upWOKQGh3MSL2bus/zYJIJl8YxOYQBqQYVlwA7SZ99GT9rdjNKpPAEQjcDJ9lPyljlGya5SsBZofqUaE0urltzKWJXLm597RjCX8mzUXOpR1FiPDWznOBRoyNMN+Vf0ziyT1WxYBX76lIqt2b36sbQkgdsDkuVvz38/m3k+R/MDHiRkP0I8uYZXCK8qv/lgAQpYg6y64TqNSCfcyM5L6//Y2Efr6jD+qYoRQhj2E2675PePNAn8OiJNTR1JPo1gsNWb+yP0wSGl/x+JQY/6h71BLGc4oFm1dNKAUyEfBxiaZ5w==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <57e16e1b-e306-fc8b-37fb-c770d8ea5fed@suse.com>
Date: Thu, 19 Oct 2023 11:25: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 v1 09/29] xen/asm-generic: introduce stub header iocap.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>
 <df3a94a5670b900ddc1a2b7e8142555a09571b52.1694702259.git.oleksii.kurochko@gmail.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <df3a94a5670b900ddc1a2b7e8142555a09571b52.1694702259.git.oleksii.kurochko@gmail.com>
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_|DB9PR04MB9332:EE_
X-MS-Office365-Filtering-Correlation-Id: 984abc25-d85d-45c1-80bd-08dbd08547da
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	4KpSCPnYHX3xs246NWpa5fblS4fNmzemrElGkwstftubV6WAEHfCAYpTg6YC6UjpShDkhapdb1wZIU40zQAGx8+lpe1EUnUgmBc6HszcfmHACLWNnP12qYMtx4E7QtCWc9vwrZzy2ndgdBr9IdYQPkIzw6yhxd6oGJ2iAJb7rW/Li64cQCZET/mxRPh56Fo/tqQO7cVWFmX/hKvMcnvqExtW7y+xmt14HvhDXo3pMI8r6Z+OFWuC7patrWodyDdI/+lQpOGJscrrTpVdjYtI8e7Q9rty0CuJBez6cuZCsCMcteDR+LD5EW77cgRJsqBFNkI7aBlEnmb3e1vku6MqNmRZ4n3XjPFsFW9L+2Ca5mvqUk9JVMSPIfysPWKwZLTzGhUQIlHi/wgXOI2xc1gt0nMGuIE94OKl6EpUo/yidmSBPpwHnCq51rR7EOAi/nX+LjvuTkmdv2esQAIdduxmr+0pUJvb8ucJtRdVFLG/fDH6O/0uJyuMuMxHP+9S9WFoe9dvrgeM1SjE9J+nWiuWkCyAf9SfhowcZw+NbkAq+tp9cy+gSAVFnXasRt/TWirU4jars8j5YyHxNOq2IiKMUJ+tcGH5aGRZfBYDSO0uBSQTQWR3ByBXMM2BUocL0tc/3ksrgRwil/maqu8vgsuKcpufBbMSgSAkh71Ckn2THSA=
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)(39860400002)(376002)(346002)(366004)(230922051799003)(186009)(64100799003)(1800799009)(451199024)(66476007)(478600001)(26005)(6506007)(53546011)(2616005)(38100700002)(6486002)(31686004)(6512007)(66556008)(66946007)(54906003)(6916009)(8936002)(4326008)(8676002)(86362001)(4744005)(31696002)(2906002)(316002)(36756003)(41300700001)(5660300002)(41533002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?c3h3NDFyQmMvajlwVXp2OUNtbElLcHNGMWVJZy9ON0ozZHQ1eTdNcmpqMHBV?=
 =?utf-8?B?c1dKQk5LeHdzWWVOd1pxZGJ3Rkt3dW1ndUZPSDErUFowcEtNcElEQ0xobGdq?=
 =?utf-8?B?dkZiTWdJMERna3RUenpkNmZ3NlZCQk5hZXpVdmk0cU84L1k5NWdPR3IvV25R?=
 =?utf-8?B?Um5iZTROaGNRa1pRWVFHbEg3azIrSzc5K0Z3NmhaM2NzQkt3NjhKWjVuNDNL?=
 =?utf-8?B?Y3ZIS0NYaUN2SDdsdEg4OGxCeS9ueTVWdjMzY1VjSkVoQTE3RTFHdU53LzZ5?=
 =?utf-8?B?aWphTTJmZXV3TUdmY2dkMFdYaFRFY0VHK2IybU1uUDBUYW1NSFhsWk1oN2Rk?=
 =?utf-8?B?bXI4UzFPOWswR2RUOGQ4NFo3M044RWVVRkx0b25yZ054QmF3ejNERG1Zbnh1?=
 =?utf-8?B?ZjhCUE1vUm44dzNTbngvOWNHMUNBRnUzQjRIZDFTelZIMnJjeHk3cTVBQ2g0?=
 =?utf-8?B?SjNDSEtNcytkUG4rb3FuZ2tKeHg0QUUraXNDRUYvRk9KZGMvNDUzS0RjbEZY?=
 =?utf-8?B?NDBiVWMyQlN4UTZOckl3eWFUV1BoZVkxYkFmTThlRWR5Z1F0MDdxMDFZd1A1?=
 =?utf-8?B?L00zdjZKaEJ2TEp0RW9QU1ZyQlM4Y1dmMHhYMW5GanJzdUhocTh1U0hlV1lx?=
 =?utf-8?B?ZVIvdVYrV215dWpBODJlanU3bUJ6ZUk1UEMrTGcvNTFlS2ZFZk85VjNvR3pS?=
 =?utf-8?B?Vmd0dUN5R0hocEZCRW1hbW9ZSDRVTlpTYnVTaUc4SVljQVVZUzVCZnFRdXls?=
 =?utf-8?B?WVdrbFlOM3FKZzBpRjdPT2o1U01CUjRJc1Jod0NBQnZrK0xYZnQ0NlZyS0tJ?=
 =?utf-8?B?RWVDSHRPa1IxdWZ2MVlLdkMvempWNXh2am9sTTFROVFodStSb1AydklIVTdy?=
 =?utf-8?B?RUhBVVZaMm9EMGYvOCt6bHNQZnN4elZCOHhLb3BwaHhlM2VMT2trUUROVHZv?=
 =?utf-8?B?N3VlQzdNNUtoRktPZHRXMzhwWWFHZzhkOFRrMmJoOE9FWXlkVktEMll1SUF0?=
 =?utf-8?B?TXlpbmF1V1Jtc0VpV1RqcGJOclJUZHFIVDVnZWdiOVBDdDdEbDgwT1hjWnZV?=
 =?utf-8?B?c3V0cEwvZVVYQVNraG9lZ1J0TnhiaEZBUHdNbUlYR002eEY2RDJtNXhJNkI1?=
 =?utf-8?B?dE9nZ3RyTmpwemVLSCtlV21zS1BRalQ1WGkvK3B1dS81M3EycWpuaW9rRHZX?=
 =?utf-8?B?UnhmWVg3ektTeVdWdHpXcHFOOWpVMmw3Z2Q1Z1g0KzVuTURzU05INk11dStR?=
 =?utf-8?B?NTIrWWFBNi9RaXFORzJZOUVyejlpemZJTHAraWxPZ3hTUWF3emtyQ29wdVRw?=
 =?utf-8?B?YkxmZWlwaVhXMVNJVm1DNzJRN1pHTFBxT2lqTnZ3MlBqTExERE5kNFhJbUIy?=
 =?utf-8?B?SVRlQm9MRE1ocjIxRU02TG84NDAydGpTc05sV2ZqOW1zQTcwTjhJRldHYSt1?=
 =?utf-8?B?Q1dPRnVkbUlMdGFSZ0IvRCtwQy9tMC9NV2E0N1RpNGVHYVcrRnB0d3hNWG4x?=
 =?utf-8?B?WFVnQndLQUlDN1JFTDBOUGF5N1RkcGlEcGZVUU1nanhkVjlFVXJMejRRUDlE?=
 =?utf-8?B?ekhTeTZuQUsrV1N3cG90VEVlZE1SdCtCOFBGdFpnZi9TYnJWeUJQZ0h5WTdr?=
 =?utf-8?B?ZmlkZjh1cTJBR3JIdGlwSFJOQXZTWUlZQTJUK0xYZkNRZ0E1MVhpUHdDZnA1?=
 =?utf-8?B?dFVMM2d3MVMyM0JQMlFialVjcU9lK3VJeUpRRHFtS2xwZ2k5MjJ1VFhmelJp?=
 =?utf-8?B?aElabEVGSXppUzBBNCtFcVgwd2xRd1RPWi9pSURGNnkyeGwyMGIwWVB5b2ht?=
 =?utf-8?B?WlVjVUw2Um9MYk5pMWFoV3YvbHZ4c3VKMU53MmhxaW12YXdza2htNjZXQStX?=
 =?utf-8?B?Z0cyUUZubnZRVjZXQjByaXF5bjR6OHk3RkMvUGk1OFFnbzNNYmZrak9qYTVG?=
 =?utf-8?B?TE5zU00ySHJDcEl1YS8wN3plM0QxOC82WTVZN2hTdStWbUdWSFdFcFIzN2Rk?=
 =?utf-8?B?M0dLa0h1T2tKQ05QS0ZVYmh4SUQvSlJhUnpNTzJuQUpLUzJMbHp3NzBvek1D?=
 =?utf-8?B?OTFCNHoxb2ZhVnV1QURxNU16Q051VXNZNXFza3VoaG9nM2xmR2VqdE9wYjEy?=
 =?utf-8?Q?wgJ/QW+4TouTyFzCcEOARubz5?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 984abc25-d85d-45c1-80bd-08dbd08547da
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Oct 2023 09:25:05.8656
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: igde8e8KW+H3zpjTJUNxTutrGNV+HyjQ1uBQqHL9qJo2gZudhm9z3rENmYlOHmlU76uUTUVxqu3rFjif8OvHVA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR04MB9332

On 14.09.2023 16:56, Oleksii Kurochko wrote:
> --- /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__ */

This again wants to eliminate Arm's header in exchange.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 09:35:23 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 09:35:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619048.963568 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtPQw-0001r5-54; Thu, 19 Oct 2023 09:35:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619048.963568; Thu, 19 Oct 2023 09:35: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 1qtPQw-0001qy-1M; Thu, 19 Oct 2023 09:35:14 +0000
Received: by outflank-mailman (input) for mailman id 619048;
 Thu, 19 Oct 2023 09:35: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=7/TV=GB=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qtPQu-0001qs-Fs
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 09:35:12 +0000
Received: from mail-ej1-x633.google.com (mail-ej1-x633.google.com
 [2a00:1450:4864:20::633])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id cbabe07a-6e62-11ee-9b0e-b553b5be7939;
 Thu, 19 Oct 2023 11:35:10 +0200 (CEST)
Received: by mail-ej1-x633.google.com with SMTP id
 a640c23a62f3a-98377c5d53eso1196127566b.0
 for <xen-devel@lists.xenproject.org>; Thu, 19 Oct 2023 02:35: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
 gz17-20020a170906f2d100b009add084a00csm3181269ejb.36.2023.10.19.02.35.07
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Thu, 19 Oct 2023 02:35: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: cbabe07a-6e62-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1697708109; x=1698312909; darn=lists.xenproject.org;
        h=content-transfer-encoding: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=gUCCBXqwz7sTA7yYqVXs7lz5o357Rb85S2rwW2kWAks=;
        b=q+hA+HhWqxGpZ9vBUKMktkq5HyKpM8nlXhWnUDuMVGXMq7ZS/DBs+RjEa0Yu3iwM3G
         NECGoczVgyJnMJNzLgbAOUwXmlb32NQ921+c7bLf5Ol4MCKXBrKCFJpN6wm6xjU4NBLb
         SuYmwz/uToWayuKkul8JAisObtJWgSaUxQ5Hc=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697708109; x=1698312909;
        h=content-transfer-encoding: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=gUCCBXqwz7sTA7yYqVXs7lz5o357Rb85S2rwW2kWAks=;
        b=JWJf/A6/0/w9+AoRy460rQtCQIKIHJ/WUzle22fdLDauOJff3pLW22TmI7rWiyV9Zu
         /Xf5er7bpT6lkT5ogMqa70RObxWDJpt9NLAeSf0myRQn9dAfvdGK5S4/gS3LtBRUOrqQ
         2cR7mrjykof+VdwsD25Nccst2jhBC1+xTtxOs1Caak4Ug2PEm4Ru6gdN061S/ROgJE+h
         APte98wJ8in4Cy2izCvYaQGrxgEU3dvbtUBWRDiqsfGT/ElQHV/kiH9rLL7WzRfIOFa+
         Az4EorSWEGbpjk6+c6gcqXsVWpxKV+Rwkduxwh9nygccduefDwu2WBRCYgTjDr6OlilI
         ls/Q==
X-Gm-Message-State: AOJu0Yy3+rMmuhEHO7KktMU+vbqMpwmG2J5guuDVuJYW2CyYOED0Q9q2
	P78Nkl3P/ZYNCO0r49GFBKSa3w==
X-Google-Smtp-Source: AGHT+IGwWK5f+NpCobjTcEfHqpKoi7s4hIcDKE4K1b9xtkESOYywqzya2Ws3cFLeF91y/ji5SiPCyw==
X-Received: by 2002:a17:907:806:b0:9b2:b691:9b5f with SMTP id wv6-20020a170907080600b009b2b6919b5fmr1290896ejb.41.1697708109264;
        Thu, 19 Oct 2023 02:35:09 -0700 (PDT)
Message-ID: <5f0cecef-8600-40b7-8e59-77d8e33750a7@citrix.com>
Date: Thu, 19 Oct 2023 10:35:07 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH v2 00/13] xen/spinlock: make recursive spinlocks a
 dedicated type
Content-Language: en-GB
To: Jan Beulich <jbeulich@suse.com>, Juergen Gross <jgross@suse.com>
Cc: 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>, =?UTF-8?Q?Roger_Pau_Monn=C3=A9?=
 <roger.pau@citrix.com>, Paul Durrant <paul@xen.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Tamas K Lengyel <tamas@tklengyel.com>, Lukasz Hawrylko <lukasz@hawrylko.pl>,
 "Daniel P. Smith" <dpsmith@apertussolutions.com>,
 =?UTF-8?Q?Mateusz_M=C3=B3wka?= <mateusz.mowka@intel.com>,
 xen-devel@lists.xenproject.org
References: <20231013094224.7060-1-jgross@suse.com>
 <c86cb866-b795-b6af-0ad7-38e68c7d35c4@suse.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: <c86cb866-b795-b6af-0ad7-38e68c7d35c4@suse.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 19/10/2023 8:48 am, Jan Beulich wrote:
> On 13.10.2023 11:42, Juergen Gross wrote:
>> Instead of being able to use normal spinlocks as recursive ones, too,
>> make recursive spinlocks a special lock type.
>>
>> This will make the spinlock structure smaller in production builds and
>> add type-safety.
>>
>> This allows to increase the maximum number of physical cpus from 8191
>> to 65535 without increasing the size of the lock structure in production
>> builds (the size of recursive spinlocks in debug builds will grow to
>> 12 bytes due to that change).
>>
>> Changes in V2:
>> - addressed comments by Jan Beulich
>> - lots of additional cleanups
>> - reorganized complete series
>>
>> Juergen Gross (13):
>>   xen/spinlock: fix coding style issues
>>   xen/spinlock: reduce lock profile ifdefs
>>   xen/spinlock: make spinlock initializers more readable
>>   xen/spinlock: introduce new type for recursive spinlocks
>>   xen/spinlock: rename recursive lock functions
>>   xen/spinlock: add rspin_[un]lock_irq[save|restore]()
>>   xen/spinlock: make struct lock_profile rspinlock_t aware
>>   xen/spinlock: add explicit non-recursive locking functions
>>   xen/spinlock: add another function level
>>   xen/spinlock: add missing rspin_is_locked() and rspin_barrier()
>>   xen/spinlock: split recursive spinlocks from normal ones
>>   xen/spinlock: remove indirection through macros for spin_*() functions
>>   xen/spinlock: support higher number of cpus
> Before looking at patches 4 and onwards, I'd like us to settle on the future
> of recursive locking in Xen, considering in particular Andrew's objections
> to their use in the code base. If the plan was to eliminate them, I'd see
> little point in reworking the infrastructure. I'd like to suggest that one
> of us tries to remember to put this up as an agenda item for the next
> Community Call. But of course the discussion can also happen right here; I
> merely expect there might not be much of a reaction.

Actually, I consider this series an improvement.  The CPU limit is the
most urgent problem to fix.

XenServer has just jumped to NR_CPUS=2k in order to support 2024's range
of hardware, and it's only going to be a couple of years more before
we're stuck given the current spinlocks.

I do genuinely think the code and logic would be better without
recursive locks, but making that happen is going to be very invasive and
complicated.

But in the meantime with spinlocks properly separated from recursive
locks, it becomes easier IMO to dissuade the introduction of new cases
while we unpick the existing ones.

And so what if we do end up deleting recursive locks in a few years
time?  That's not an argument against doing this untangling now.

~Andrew


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 09:35:26 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 09:35:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619049.963578 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtPR8-0002H4-Bq; Thu, 19 Oct 2023 09:35:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619049.963578; Thu, 19 Oct 2023 09: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 1qtPR8-0002Gv-94; Thu, 19 Oct 2023 09:35:26 +0000
Received: by outflank-mailman (input) for mailman id 619049;
 Thu, 19 Oct 2023 09: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=g4nO=GB=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qtPR7-0002Df-DV
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 09:35:25 +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 d43bf530-6e62-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 11:35:24 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS4PR04MB9506.eurprd04.prod.outlook.com (2603:10a6:20b:4c9::12)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.23; Thu, 19 Oct
 2023 09:35:20 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%7]) with mapi id 15.20.6907.022; Thu, 19 Oct 2023
 09:35: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: d43bf530-6e62-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=REtYofH8Mnxq7IqBubSzbgdAM78iLBfJ1BqUkcY0HYGcwRbBhZU+ZP487LKLS2Ep0L5ND63TlByziuB+m5DNjuDrtL8mLpAy8ZttLovWFM3nRZB1YPqXnO0pVBc2NGPTHeR+LZcZ0J9bQAgHkiDPSm8lpjgrSGsCxt6QASUrHggl5X7HAp9zs4vKrki1bzCyR9hPesDtwmQpzlzmfO52AVKI2zCG9nyMdE47LeK8/AMkflwgeZVfpX1IbHc9HL+H/TJzGZ/tSioWh1dOBT3FVQ5OJy4qVnotr20rv7Zg8Im4Z+JJu+bS22z1uzGNHIJMViNbh6/NWVAkHogqfp7S4A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=Pv+kPGT/Jmzqr4TLzPAXHp6uYmmXls4E8Q7d8Tt1sjc=;
 b=blgRzAHYm9OsK6CsL9j6SL5RDkos/m4yZ5+0qB1WUNq/I+GJaYLRdtTBQkAhblGqmjNRwC+3rDmBUp2THGI42fmAQ8VVCXleAgjR2tBb9xYVYbJ+qNH+cely6/YhdgC++kRnXcfphhdjSHZUM99wOzvoG6pSr2atNo04ig194MXfh2rhYI+tRYZLeDJhtFgFspcWOqvNultaajgYkQFsv8+CXaak0gSnTxvYS8fDFIaLfZ7gkr9YV2UCd/OMxQYJW83/fwLu7CrGCD18bp0kvXLoVyohAN9Tje4YApF9h1qZe/xydjvuVn+BkadycYSpBkICzMBElWuU4MwGLXH7Zw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=Pv+kPGT/Jmzqr4TLzPAXHp6uYmmXls4E8Q7d8Tt1sjc=;
 b=1dEVMeH2sFAUsoHf+rozMmrEnsKOk8YpQFNwDFRgaSm14Xw8NKQfjwCcJmXU7Hk1awVUHQKO0UZgFXg1IBvCgZCQzE3Gu2rIiV2TqoeRSEYN2DUuEtXJTK6P23eJHvuZm2zWuw5VFn5X2rjwnrmukU3oCRwJJ8/VDarbCeu74aa/sq1IZbmxIrO+o+KJiq7UiEefdCQC6I5zEqesGR2vGKGUiFc/54CRIj9+F5300fBVQaahWWu1v04aKMSsFNK/ZPxSZuNO/pVcjuq4rjWzAdHalYTqRJN12uke0Gr77wBLlWsuxHoEIUKc0SUjyFje0cDgkcFfLXjksEk7M/bG5Q==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <78a7b73a-fefb-6884-90c5-abad2860a521@suse.com>
Date: Thu, 19 Oct 2023 11:35: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 4/4] xen: address violations of MISRA C:2012 Rule 13.1
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,
 George Dunlap <george.dunlap@citrix.com>, Dario Faggioli
 <dfaggioli@suse.com>, Andrew Cooper <andrew.cooper3@citrix.com>,
 Julien Grall <julien@xen.org>, Wei Liu <wl@xen.org>
References: <cover.1697638210.git.simone.ballarin@bugseng.com>
 <1e0f12095bcbc82ae3585c9fcf57bec7e324049c.1697638210.git.simone.ballarin@bugseng.com>
 <alpine.DEB.2.22.394.2310181803351.965337@ubuntu-linux-20-04-desktop>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <alpine.DEB.2.22.394.2310181803351.965337@ubuntu-linux-20-04-desktop>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR5P281CA0005.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:f2::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_|AS4PR04MB9506:EE_
X-MS-Office365-Filtering-Correlation-Id: c1dfe822-8422-4dd8-5e33-08dbd086b63a
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:
	JMIW7+DlHlafd88Lx55P28Oj+hcNrNpye70oR1LRTnmz5jRfIB2e3RTxX7wuH0lU9loePaRO8Z/nC3uG/DxK4NBTX5PPRUrApxuNOtyQSZ2gHbTwxGp7GMIOgTu4/vlTJmZrJsbweSqIS7Derg5mq1eS3U/JvRkdoR000u6c/1/Egvp0rKEFst6g84Xv437BuqlsVTjUWl7iO2XuBX7L7nrPqJkcbYxX9Gxwi227PS3VaJoJfpcMx0DuVXGnmFnj1KDlHfEATrGNJNvlLGtGeFyhQOt4EHG4DACUPgBZoYQTZRrxWMtsCwc30PJVX7nIhwwrP3g3ilSu688Zin0GOJm2ZJkRZKZy9NGhWJ3dvh7lpNghLD0mFBMKNWGZPUe4Cuh2OT0BMqNH3SFOypRCBne6QyT6JHb5Jy9CXvUsHf93KXvCgZHH6UT1sC+cBt5xUkARzpv377XAJouzMDUS+OwE3k0DFH6edme+dvJvTGAp0KHQ56+q4JVtLx7XXGE9LS7/Peln1eZyWv2SpHIR8xXndKXR0JOYzwPjCZDFVtXFOnTM1aO41KeJsTnf5yLfHPkQVv/t3NAhcDJWWm71pSbeUJ+kxJ71UuU2MxyLnzIl1I9ReO5yLdsbvHa0sPg+beuMRdQnXvH2OpY4bTzQ4Q==
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)(396003)(366004)(376002)(230922051799003)(64100799003)(451199024)(186009)(1800799009)(83380400001)(31686004)(4326008)(66946007)(41300700001)(110136005)(316002)(8676002)(8936002)(66556008)(5660300002)(54906003)(66476007)(31696002)(478600001)(2906002)(86362001)(6486002)(53546011)(6506007)(38100700002)(36756003)(26005)(2616005)(6512007)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?UFU5ZU1TU0x0UzJyM3FWTFIzNCsxRTNwQkowdzI5cXJKRlBab3pOam5QaHcx?=
 =?utf-8?B?bEd6SDV5cDRuVi8zMHhXakp0eU85QUZTRVllTEVzUklWUGk1NWt2dWVBdkZE?=
 =?utf-8?B?eWhVdkZycVVEY2hXNWFOTDlROTVaVHlVSFFiWXg5cEtCNlYrT3FoSWdsakl1?=
 =?utf-8?B?ZGc4aHVnck5raDBudWlzVHFhK3FWWnREdU5NRnV4cDBhNVJmWXZ0djZzVE51?=
 =?utf-8?B?OHpxTkNVa0hGT3RvZXhqb0NZejdrUy9Sd3ByNXhMSVQ3LzZWZzdseG5rQjBM?=
 =?utf-8?B?Y2pWb1VrZEpxcm5Xb0t0UXZUVHNqc2w0bnpVZjladkRURFB3L0FQeDZKQkIy?=
 =?utf-8?B?bktXOUpyc0ZyaG02cVNvK0lOakpHSVpMaUhtYm90VWVHbDlaS2JEVDFjM1lz?=
 =?utf-8?B?OU5OdFBJeDRVRGowa3RhQm5PdHhSdkpad0kwQm9hMm9DOHliN21RU3Qzek9x?=
 =?utf-8?B?LzVsMFBzREtkU1lOTVhPNTJPdEJtWldSbHFKR1EyK2lXTy9VYVNiczJlR1BQ?=
 =?utf-8?B?WTJUS3I2MlhRWlJNOUhGRUVvVi9CZWQ3NWRldHZwM3l3b0hwd1lsUFRzNEFr?=
 =?utf-8?B?N1ZidVlPNmdwRFd4alR3WHRiZ0FhUG83WEU0ZE9NSXAvdERRM0RIMlI3YU1l?=
 =?utf-8?B?dERQeEFTRzRxU3V5b0hOMGE1Ukpqb0t5QXg2aGRxcTdhZG0weDI4UXFwYzMz?=
 =?utf-8?B?dlJnNDhPalo0S0hBTHNxT01WSWcvN2piaXF3QUZJVnUzR3BIaHBQZVlpYmNQ?=
 =?utf-8?B?aUFHOEV4Zk0rSW12S3duV3U0UHdhVC9PamdsSEY2ZE1XZEFBdWlGMXBOYVNL?=
 =?utf-8?B?RE4vcTFYeXdCWVc2TVM2RFdFVUI0aGN1Q05iUndtb085RCtXR1RNZDZqeTYw?=
 =?utf-8?B?blk5ZW1pZDVqNURaQlhVUG8rYmRJUzYxTG0zdExBeUY5SkdpdWQ1ZjA5Qm8z?=
 =?utf-8?B?Y3ZNTUdzRC9ucDhsR0MyTXVXRkNVdFhsWjZnTk5BS3pIS3pFR0ZmRjF4aVVF?=
 =?utf-8?B?aWV0bGs1cVg4UzMwbytXZTYrellRUDlTSC95TFcwTXdZWmJRTXk1OStKcjBu?=
 =?utf-8?B?Tm5BRkxNSm9WM3Jhd3pQWmM1YXpPK0dScnh1a2lsQ0VOcUlxb2hTdlUvT1B0?=
 =?utf-8?B?NUNVWkFsZnI4cDFKbS9BbGpTS2lQY2lqQUpmMXdhMVVEU0k3SDhJWSttWnVm?=
 =?utf-8?B?ZUlQTlZ4MlBFMzJMcEd5Q1NDQjhXNTFIRkZudUhRN2JYU2tjcFZxL1U3NzBt?=
 =?utf-8?B?R1VqelJsWkhvZE5qT0ZobUUya082WE44RkowdkhoWGJHRHhDdUxXNEl6ZWNX?=
 =?utf-8?B?bnFob0twbXN1TzlqNk5PU0wwUGIzdjBTRWRaRUxka3FJSkxGTmdjVkU0aHJV?=
 =?utf-8?B?cnM2U2cxZ3hKbDVWL3ZKUVMyYWpieGdIRkNVMWJuM0Y1QWlRNmFSMXlXS296?=
 =?utf-8?B?aW0zbHV0Uzc2V2dOeDhLVWVYZWlDaFlxOG5hK09XeGE4ZFl6cnQ3Z0pEbW45?=
 =?utf-8?B?ZURBeWxGaEsxb2pJVzVxNDJjZTcwaGdidUJtNWcrV2JlS2R5WUtMYmFjbi93?=
 =?utf-8?B?aGVtOHpKcHlQMXB1REdSVHo2RnhCKzJ0ZkhpMXdiNVNoRVBTbDZFNDgySGVz?=
 =?utf-8?B?MkdsclEwdCtCVzZRV1M4NmorSlRsbXF0ODFIWUh3Nk9IUHpWQUhoZUFseGF0?=
 =?utf-8?B?bnZxZWsyVWo0WkZQMjgydEcwS3hOSlI4UmZGK1FoYlBnYWpQc0xZWnIzaitp?=
 =?utf-8?B?VWYzVkFWSGQwL3N5VVRDQ1VaU25kUzRIZ2NpM2x2K2ZQc2dVWnRORFZKdEw1?=
 =?utf-8?B?Mlo1V09kUSs4Mm8xaTdRV0JLTlZOeGJ6Z3FYem1IRHNDMlpnUGZsZng1RnVm?=
 =?utf-8?B?MTlRdDdENGttSXhkK0JLWTJzTmk5cWN5dmlwdnZOVjB4UEJBN0lyY2NURmlT?=
 =?utf-8?B?UE5QV3k5WHhwMUd5VFhGNEo0RXpyc2IzcWg3YUsvbkZYZnFOYS90RzcxZUdp?=
 =?utf-8?B?aE1ua0VLRFE0ZEcyUkN1STZuUDhWTlF4TXNYV05mOHk5cWdNcFFQcFByZlFa?=
 =?utf-8?B?eXVPOHZqam8welROTno3QXFMWlBwUzdBQncxblJnalpkL0x1bTRZOHRUQTJY?=
 =?utf-8?Q?7KqPSzEQIfLn1+ukBA7yv0gaP?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: c1dfe822-8422-4dd8-5e33-08dbd086b63a
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Oct 2023 09:35:20.5872
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 008aM4x2Qrb8TAq0OyeIgjJfZ96xlLs6r4kdlzA/Uj6D4AGrJ3V8sVJNWJpx7Cer2U8GIC2+F6Q9xqy58vvyJQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS4PR04MB9506

On 19.10.2023 03:06, Stefano Stabellini wrote:
> On Wed, 18 Oct 2023, Simone Ballarin wrote:
>> --- a/xen/common/sched/core.c
>> +++ b/xen/common/sched/core.c
>> @@ -1504,6 +1504,8 @@ long vcpu_yield(void)
>>  {
>>      struct vcpu * v=current;
>>      spinlock_t *lock;
>> +    domid_t domain_id;
>> +    int vcpu_id;
>>  
>>      rcu_read_lock(&sched_res_rculock);
>>  
>> @@ -1515,7 +1517,9 @@ long vcpu_yield(void)
>>  
>>      SCHED_STAT_CRANK(vcpu_yield);
>>  
>> -    TRACE_2D(TRC_SCHED_YIELD, current->domain->domain_id, current->vcpu_id);
>> +    domain_id = current->domain->domain_id;
>> +    vcpu_id = current->vcpu_id;
>> +    TRACE_2D(TRC_SCHED_YIELD, domain_id, vcpu_id);
> 
> Also here it looks like accessing the current pointer is considered a
> side effect. Why? This is a just a global variable that is only accessed
> for reading.

Not exactly. It's a per-CPU variable access on Arm, but involves a
function call on x86. Still that function call has no other side
effects, but I guess Misra wouldn't honor this.

I'm afraid though that the suggested change violates rule 2.2, as
the two new assignments are dead code when !CONFIG_TRACEBUFFER.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 09:36:10 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 09:36:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619053.963587 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtPRp-0003Mf-OK; Thu, 19 Oct 2023 09:36:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619053.963587; Thu, 19 Oct 2023 09: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 1qtPRp-0003MY-Lf; Thu, 19 Oct 2023 09:36:09 +0000
Received: by outflank-mailman (input) for mailman id 619053;
 Thu, 19 Oct 2023 09: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=jD1O=GB=linaro.org=leo.yan@srs-se1.protection.inumbo.net>)
 id 1qtPRo-0001qs-NZ
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 09:36:08 +0000
Received: from mail-il1-x136.google.com (mail-il1-x136.google.com
 [2607:f8b0:4864:20::136])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id ec5cbd91-6e62-11ee-9b0e-b553b5be7939;
 Thu, 19 Oct 2023 11:36:05 +0200 (CEST)
Received: by mail-il1-x136.google.com with SMTP id
 e9e14a558f8ab-35769ea3194so24529065ab.1
 for <xen-devel@lists.xenproject.org>; Thu, 19 Oct 2023 02:36:05 -0700 (PDT)
Received: from leoy-huanghe.lan ([98.98.49.160])
 by smtp.gmail.com with ESMTPSA id
 d30-20020a630e1e000000b0057ab7d42a4dsm1600327pgl.86.2023.10.19.02.36.01
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Thu, 19 Oct 2023 02:36: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: ec5cbd91-6e62-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=linaro.org; s=google; t=1697708164; x=1698312964; 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=AdqJgLBhx/4PHuQvVCG22nsM5xfJw530V7pfQcH1O88=;
        b=ZUBSR1b37Xe3f2EragOqPou0m1zF2b4vkcql3cJhQvP/byBUjvju7bLmo18s4C4F+T
         LyLye5r5HEI4L07gukXdxnQI5XnOWoHcZBe++aK5JM94Ik0CitgGtTrXVS3mtChWrboq
         Dx7oD8zKzhnQRE6jMBdwSIKiM91XOomwk+OwSFi0bxj1dzfLi1CQa+VVesB5c2ZSLRx5
         4uiOULOBQKLG2ZCo4BIHqqhPCSYsRhVK/utTzseT38Xtp3AL9Q75yL12wfBPglMvaUlb
         Ynd6m6rP6G4YDkqYTZ/PbIw7YCg7vUUBKPRBJIW9WFH+44txIuaa0DmxbEygseDYyFZK
         GMiQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697708164; x=1698312964;
        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=AdqJgLBhx/4PHuQvVCG22nsM5xfJw530V7pfQcH1O88=;
        b=LzX/BWxzhF5lyesrUCsv+RmNJFPmn0UTPY/cW5EMX2ps15QthuK8EYDjFKfU9HCoa4
         eCUfr3axk9iEqKX44/ZWVn5gojDsK/qRxXcKqBLEa6Sw4mQ/q7EtBWhwighBTtXoM9kI
         +8h1entj8cEpE1lLExWm5mxmdhZQpBTxawdrWBtv4kzczEEweyD3Im8Jhglm1XxoEfQV
         5EQAtKN80JKZxOz6rjO+xz4ZAR42A9Lw9zZVr+TYiUt2i/ATpj76HIBZjA5uafYHXG4z
         QuFOcYO++C/KxewpDraqmQR7DUnVlJ0GvUpsNvOljT3Kw2ehjU2l8UznUiyv5s8kDp2o
         FREQ==
X-Gm-Message-State: AOJu0YxEM9zE9bIVzKPAAYrye6QjJEW0Q15x7U1909//UiK6YyjSxAsO
	asdZRTHUAe0fLjxk7UfO6KDQ9g==
X-Google-Smtp-Source: AGHT+IHCfV8gdk+EVjSvMvvFuFSmGng2zl5QGiH+9+7VosuVvz7YHfQqxfApgXuM+3y2Of9DxC0jqw==
X-Received: by 2002:a05:6e02:1be2:b0:357:5db1:9170 with SMTP id y2-20020a056e021be200b003575db19170mr2222585ilv.28.1697708164073;
        Thu, 19 Oct 2023 02:36:04 -0700 (PDT)
Date: Thu, 19 Oct 2023 17:35:59 +0800
From: Leo Yan <leo.yan@linaro.org>
To: Julien Grall <julien@xen.org>
Cc: Stefano Stabellini <sstabellini@kernel.org>,
	Bertrand Marquis <Bertrand.Marquis@arm.com>,
	Alexey Klimov <alexey.klimov@linaro.org>,
	Luca Fancellu <Luca.Fancellu@arm.com>,
	Michal Orzel <michal.orzel@amd.com>,
	Xen-devel <xen-devel@lists.xenproject.org>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Rahul Singh <Rahul.Singh@arm.com>, Henry Wang <Henry.Wang@arm.com>
Subject: Re: [PATCH v4 2/2] xen/arm: Enlarge identity map space to 10TB
Message-ID: <20231019093559.GA105208@leoy-huanghe.lan>
References: <5a5e960b-e6fd-4617-b33a-10cf07f5bb52@xen.org>
 <8BCB97B4-CBDD-43D9-B0F8-7F637B8BE559@arm.com>
 <4B2BD200-5D3E-49D5-BF13-65B769AD4B90@arm.com>
 <CANgGJDqHu0CB=zzZqda18giLYDkL3My+gT592GLO-b9HsF2A4g@mail.gmail.com>
 <d3952200-9edb-4de0-94e3-c00c571a10b9@xen.org>
 <794B0D71-70A7-4546-98E0-EC01573E0D89@arm.com>
 <990b21a3-f8c7-4d02-a8ac-63d31794a76d@xen.org>
 <alpine.DEB.2.22.394.2310171258330.965337@ubuntu-linux-20-04-desktop>
 <4fc83e61-1e57-4f75-b017-7045842165e5@xen.org>
 <69be876f-4238-4041-a6ff-50f7f6487d5d@xen.org>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <69be876f-4238-4041-a6ff-50f7f6487d5d@xen.org>

Hi Julien,

On Wed, Oct 18, 2023 at 07:11:11PM +0100, Julien Grall wrote:
> On 18/10/2023 11:59, Julien Grall wrote:
> > On 17/10/2023 20:58, Stefano Stabellini wrote:

[...]

> > I don't really see the problem for someone to mistakenly backport this
> > patch. In fact, this could potentially save them a lot of debugging if
> > it happens that Xen is loaded above 2TB.
> > 
> > Anyway, both Bertrand and you seems to be against the Fixes tag here. So
> > I can compromise with the "This commit fixes...". However, can Bertrand
> > or you update process/send-patches.pandoc so it is clear for a
> > contributor when they should add Fixes tag (which BTW I still disagree
> > with but if the majority agrees, then I will not nack)?
> 
> We had a chat about this during the Arm maintainer calls. The disagreement
> boiled down to the fact that SUPPORT.md (or the documentation) doesn't say
> anything about whether loading Xen above 2TB was supported or not. Depending
> on the view, one could consider a bug or not.
> 
> Looking through the documentation, the best place to document might actually
> be misc/arm/booting.txt where we already have some requirements to boot Xen
> (such the binary must be entered in NS EL2 mode).
> 
> I will prepare a patch and send one.


I would like to check if here is anything specific I should follow up
on. Based on the discussion in this thread, I've come to the following
conclusions:

- Remove the fixes tags;
- Add a description in commit log, something like:
  "Since commit 1c78d76b67e1 ('xen/arm64: mm: Introduce helpers to
   prepare/enable/disable the identity mapping'), Xen will fail to boot
   up if it's loaded in memory above 2TB. This commit fixes the
   regression introduced by that commit."
- Add tages:
  A review tag from Michal Orzel
  A review tag from Bertrand Marquis
  A test tag from Henry Wang

Should I repin a new patch set to address the items mentioned above?

Another question is for the 'Release-acked-by' tag.  Henry gave this
tag, but I don't know how to handle it if I need to respin this patch.
Seems to me this is a special tag only for release process, so I don't
need to include it in the new patch, right?

Thanks all of you for the efforts on this patch set!

Leo


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 09:39:22 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 09:39:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619058.963598 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtPUu-0004Ef-5V; Thu, 19 Oct 2023 09:39:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619058.963598; Thu, 19 Oct 2023 09:39: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 1qtPUu-0004EY-2j; Thu, 19 Oct 2023 09:39:20 +0000
Received: by outflank-mailman (input) for mailman id 619058;
 Thu, 19 Oct 2023 09:39: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=g4nO=GB=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qtPUs-0004ES-Gm
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 09:39:18 +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 5e7a6a30-6e63-11ee-9b0e-b553b5be7939;
 Thu, 19 Oct 2023 11:39:16 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PR3PR04MB7242.eurprd04.prod.outlook.com (2603:10a6:102:91::19)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.8; Thu, 19 Oct
 2023 09:39:13 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%7]) with mapi id 15.20.6907.022; Thu, 19 Oct 2023
 09: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: 5e7a6a30-6e63-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=O4sR/8XZ4Qh5lR1yPNMl1aVgUEFjP6mhXb4x9XoJGBvcwkemJHu/3H9syW8HOLUqM29qEFEXagPhwjpJ1VOtBovTov/3g5O9N70t90cIeRqfoYCQ4DGFhDqgPndPf/uwfDMpL+EtrcTWfavID8RUHBI2sZxHUV/dz8PYxbyPbJJgdyCRZsJZUnNHkSuMY/Vwv4Rg/iIxTdV7z7ObDEiQ/InrooLLuzhvENOLlDNXAR6cdb1pBbBbdkxRUwF1HV7oEHX9lpu7H5RMjJyh0lYsJlL5e+gy2mjnDpkMVpcL62Il4i7MROsDSncoQAiX8j3053WDqu+6ML2K436z3OdUEg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=Qm88oEBNO0LiB1sEOG6JScxDgICrDIMAREiLW/pv+O4=;
 b=GRl7N53aIoPWmEUcO/g3m37DdRl8LmjIuiPx2KIL8XUcHTZTDKDIBwMR1aUAAZ4swGPJwEPrnvBLtl8Q3zwdbiiWK1UpfIoFPJTIRTauljoIl3EvdjD/YDPYXp97mxuJXPL7xNtgZq9edmqp8cPQkixMPbGF4c6DoMS7aYDyffuNXLO8Yl6HcNlf4j7LJBMXTOtTiwiXQI2WncsKDxfTMIGQYb0WPjt6ahEz1WPDmQ71mymmfZ55CE+WA5W+ETcGGUxDiNo4DX9KuDq+sPNw/tRqwQ4pyNkuNZCjHorJ8Bz97LqwW1SbLVNHZs7hW/AFV6OWztmvy3y7Kd6XuTbDQQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=Qm88oEBNO0LiB1sEOG6JScxDgICrDIMAREiLW/pv+O4=;
 b=txDeDWqSNkEzyt8UFdVQpgDVj3LBIjHara6n2/M1eTUdXYoMt453HnV8ejTYmQ1qpmcnLfOp1HzSRztrtwB/8GYtrq1P3rFz6i3Ng0Uo/9JJjphf42+wgT3KfCbmz/ITHql6SlSE/QHDeK2mrezhL/5FO9omB9xBGoUnNcidPVLHnxO7OWUXSObfZJ0t1EGJkeXeG5jq5yzPyHOfirrxQDQs1LdJ0+sGWem5/thPL0NWIe4E9RDzDZExpT+l0u7reX34JV23kITV1ob8A9TiqaSIGFa5jkP/+lClCGixyBrGduc9oR0p70XI4mZTyI07iYOYAjyoD6/5HR1XXvS8+g==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <2efe4ba4-e94c-a5fd-008c-df8e0dc661b5@suse.com>
Date: Thu, 19 Oct 2023 11:39: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 v2 00/13] xen/spinlock: make recursive spinlocks a
 dedicated type
Content-Language: en-US
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: 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>, =?UTF-8?Q?Roger_Pau_Monn=c3=a9?=
 <roger.pau@citrix.com>, Paul Durrant <paul@xen.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Tamas K Lengyel <tamas@tklengyel.com>, Lukasz Hawrylko <lukasz@hawrylko.pl>,
 "Daniel P. Smith" <dpsmith@apertussolutions.com>,
 =?UTF-8?Q?Mateusz_M=c3=b3wka?= <mateusz.mowka@intel.com>,
 xen-devel@lists.xenproject.org, Juergen Gross <jgross@suse.com>
References: <20231013094224.7060-1-jgross@suse.com>
 <c86cb866-b795-b6af-0ad7-38e68c7d35c4@suse.com>
 <5f0cecef-8600-40b7-8e59-77d8e33750a7@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <5f0cecef-8600-40b7-8e59-77d8e33750a7@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
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_|PR3PR04MB7242:EE_
X-MS-Office365-Filtering-Correlation-Id: ddecb520-dba5-4810-656b-08dbd087410f
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:
	cZ5jPD6kbimM3cFKw9vAKJTVxHyyHA1eaJW68pBk6u5pqMMxqacAFinMTlgN/+T5ilrTFpjncD6zFVxncw+HaIr8uFM5mIqb6cY2X5C34xPIUGb8BBz99bLl11ewIOwOnCXgO4friv5UF48FXa+8m024pkKOIKQyJQaRjSPn++YWtOosGi+eyucc7DPAEsAhgfIBHwwf2FehUr0l9AYNv34L599vwy73OZuqeT8ly68Jly/kGqf5lFuUHQNYvLm0QuSQVUh3n7Mv4Tz/essO0AALgkeyxim8lLs1rB0rS2B835LEhJZlVCw2VCpZVXcdqKwASN+7hcFf+f++ZTB/0SQREAq6LBUEdSUiqzCisX+0mKJH14rsSrnU7sVZ4RwVpMoWlhQ2mHOQuz/2EwoUfUDCXY6Naddj78rV1dj73k1OUMprJQkqrJkT418XJs6Ys3L7D2SAVTc64B/kkma2zUQHDGJFZZHpDUFEc56D1PmXv0ICYiGem7iiE87keS/SaWYStF9UzF+HMBnrpKsEbonzflwg7HQzwlXg5B2ZUGXoGiP9+xF/lEwamFcWWv9qdlwjrqqlUivhOSeF92B2npboByMTXlEx/zip1eypHo7Csd9oEYn1eSssHeg4Ip7RYL9gZtsWmAEuI3VHc+lJQg==
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)(396003)(39860400002)(376002)(366004)(230922051799003)(451199024)(64100799003)(186009)(1800799009)(107886003)(2616005)(6512007)(6506007)(26005)(53546011)(83380400001)(41300700001)(4326008)(5660300002)(7416002)(8676002)(6486002)(8936002)(2906002)(478600001)(54906003)(6916009)(66946007)(66556008)(66476007)(316002)(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?cWp6SGxocmxxT0N6L01lOWNOWVFGcmdsWmtNbG9ucW1lUHZDWUhjaUcwWGxz?=
 =?utf-8?B?ZHJjZ2NXRUpuNGxoNTR1ZkVRL2d2MVpZYXdpcXJ4WlRJS0RwS0ttK1ZUR2U4?=
 =?utf-8?B?dUJDOU9lbktYcTVHYS9NVnlFcEhWMXZyYzhicXRNdEw5QmxqVHZOUEdUMyti?=
 =?utf-8?B?ZzVnOXR4R25OYU95SVZreVM1Z2lSUHhxWFlHV0FzQS90OWNuc1BUeGVtQWRh?=
 =?utf-8?B?UzdoWjI0NUZXMXpwQ2tKT3Nxd3l5dG80VVRlK0hNd2NMaWJFb0creHozdjZD?=
 =?utf-8?B?N2ovTG4wY29QNlNCOVIrdS9yMVFZQ21meGhJRm90STVrRlk4VlRiUjJjYmJU?=
 =?utf-8?B?TnRHdENrT3prU2E1RTI1dUVzbm1HQW5zYlgxNDFyeEEwSG80WEVrMmVhRUoy?=
 =?utf-8?B?b2pIQm1vZnNiRmRtcVVubzYzSy93bzkycUZLcU9sSlltejEwNmE1aExHVjJK?=
 =?utf-8?B?UStDSUdxdlF4Q1IzemhMQlMxc1psNXlZK2FLWkVjRDZMc3EzVU9meGZsMkRV?=
 =?utf-8?B?cnJPUWpuUHdqb2VKTTVoeHFjblp2S3M2OENsYVJ5OElwa25IV1U4S1VNcVZk?=
 =?utf-8?B?SDE3Tkp2d3N3UXhweHdSQW9mYVBmT2dxWE9qanlFMEsvVkx3K25aamM4azlN?=
 =?utf-8?B?dmNad3FOYTRFRjJqenlyWGF1QkhMVm83Wit0WHUxQWtSVFluUWRuaG1nZWl0?=
 =?utf-8?B?V0dKSjlsM2cxZ2F5TkUrRmVNMkRTWWVCa2paSS90eWlLZG9VSWY2d252UER2?=
 =?utf-8?B?NTl1UDdhUDkvNzlVQ3hVaDZ0SWpnTytSd28zcEhGQ293K1I5cnNybnYzaGls?=
 =?utf-8?B?SWhNTEtwa2N5M05mU3VodHU2MlZ1WFpJNmNUSHljN0VHTHBEY3hNL0FuZWdN?=
 =?utf-8?B?R1k2V1JrYW9zUDBYY2hTTGppQnZXbU5MdFlvMVdUS0hhTTQ0NkQyMGszRTBS?=
 =?utf-8?B?bDZncFRmY1JsV29wWGd6K0ZIUG44cU1zWVllWUVzVlFiTWFlVkN6b3pOeEJU?=
 =?utf-8?B?VGNrWkdsVnRaRVlMU29FcEFrNTFvaS9HYzBCSkVTWERiU21XR0NSWEpoQ3Uz?=
 =?utf-8?B?Z3U3elgvd1ViNlpvZ2YwU2VOa1c3VkQybVRSeDgyVEpYdnMwQ2htZkNrTHJV?=
 =?utf-8?B?VlE5bnd4MkVjVjVvRHV4WlJ6TXh6WVpydVpCaVk3UFNGMzRYUU56RjJQV2tx?=
 =?utf-8?B?V3JGR0Q2UWpvbGFYcnZMS2Z5cWs4WTE3TWdlenBKUXFqYkRsT3lkN1pveUdx?=
 =?utf-8?B?dkprdklyeWtHRW5ZSEdZUlRHdEdSRDlHM3dBZW5rOG53WENSRmVWUW9FWDlt?=
 =?utf-8?B?KzNHWEJmU2FuSDNGOFcvelh4aEMyUEFEdWIxZWJsMWswVnpybVpjdVFhbndF?=
 =?utf-8?B?WnJ5WGpKaUJlR2FodjNXdEE2cEhqZDJ6N2tDdGlUNngvWjBaK0NpUmxjamZH?=
 =?utf-8?B?RktmaGt4Z28vTVlHSE10SW83YVVCN2N5UkFsOWlMVHNkQ0RRM08zL1RzUEJG?=
 =?utf-8?B?ajk3TXBFT3YvV3gvSnVVWllkdEVoc3BVUGZtaFR1NTJtVGpUejhIb3lNTkFn?=
 =?utf-8?B?MGc4Mm9nbTg1UHROTUZkZFdXVVp3MjdmOHBnZFNaaUhwbjkvMnBZbWx0MlV5?=
 =?utf-8?B?NnpvY0VMZldOcU5YRzNBSE0vTSt4d1V3Y3VpcHo5bm0xZXMwNUk2Rm9qZVd5?=
 =?utf-8?B?RzBMS0FBL3RPc25IWk5OVFlzSUpEWDd0UFZEelM5SjF1MktUc2ZwNGZySnBX?=
 =?utf-8?B?czl3cU9ydGlvUlVnTkpWRE5aY2NRRkhhaWVHZDdROXpkdXVmbXdrUytJaWhQ?=
 =?utf-8?B?R3BDbGZpMyt6NjBrNlA1TE9abVBpcko5YWlpaE43MmRXWXA2WWlwTXFIclh1?=
 =?utf-8?B?ZkJ3QUFHbGg3STNrNk9JcFNoeEpDMFZtcWcrTTdrNlYvUFdCeEFtSEFrSHNH?=
 =?utf-8?B?WTVMb0pITFdmMkZOWTcwRm1NeGlRMFFyWnl5ZkQrdXNpR1YvVEYrR2lNeU5k?=
 =?utf-8?B?QUMraG9Fb3Vndmc3V1JNMGtYb1lsWHBZcThLdHRkakNmQnhmMTN6WXVnay82?=
 =?utf-8?B?UjVkenZmbUxtSzByNmZWWWdxdWpzbHFTMUJMT0RmdXNtaHA3UWltajl0dTlT?=
 =?utf-8?Q?At9ovItFeq+a3mYxAg9KPs6hT?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: ddecb520-dba5-4810-656b-08dbd087410f
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Oct 2023 09:39:13.5224
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: uYOA5Hpz5dboWhQDETPphJvdJx1pQf07UVVesp9Qiei46BD6/GCeepDZdZYaPQYtw4GU+ZSzPe5DrCHXVoqZ2g==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PR3PR04MB7242

On 19.10.2023 11:35, Andrew Cooper wrote:
> On 19/10/2023 8:48 am, Jan Beulich wrote:
>> On 13.10.2023 11:42, Juergen Gross wrote:
>>> Instead of being able to use normal spinlocks as recursive ones, too,
>>> make recursive spinlocks a special lock type.
>>>
>>> This will make the spinlock structure smaller in production builds and
>>> add type-safety.
>>>
>>> This allows to increase the maximum number of physical cpus from 8191
>>> to 65535 without increasing the size of the lock structure in production
>>> builds (the size of recursive spinlocks in debug builds will grow to
>>> 12 bytes due to that change).
>>>
>>> Changes in V2:
>>> - addressed comments by Jan Beulich
>>> - lots of additional cleanups
>>> - reorganized complete series
>>>
>>> Juergen Gross (13):
>>>   xen/spinlock: fix coding style issues
>>>   xen/spinlock: reduce lock profile ifdefs
>>>   xen/spinlock: make spinlock initializers more readable
>>>   xen/spinlock: introduce new type for recursive spinlocks
>>>   xen/spinlock: rename recursive lock functions
>>>   xen/spinlock: add rspin_[un]lock_irq[save|restore]()
>>>   xen/spinlock: make struct lock_profile rspinlock_t aware
>>>   xen/spinlock: add explicit non-recursive locking functions
>>>   xen/spinlock: add another function level
>>>   xen/spinlock: add missing rspin_is_locked() and rspin_barrier()
>>>   xen/spinlock: split recursive spinlocks from normal ones
>>>   xen/spinlock: remove indirection through macros for spin_*() functions
>>>   xen/spinlock: support higher number of cpus
>> Before looking at patches 4 and onwards, I'd like us to settle on the future
>> of recursive locking in Xen, considering in particular Andrew's objections
>> to their use in the code base. If the plan was to eliminate them, I'd see
>> little point in reworking the infrastructure. I'd like to suggest that one
>> of us tries to remember to put this up as an agenda item for the next
>> Community Call. But of course the discussion can also happen right here; I
>> merely expect there might not be much of a reaction.
> 
> Actually, I consider this series an improvement.  The CPU limit is the
> most urgent problem to fix.
> 
> XenServer has just jumped to NR_CPUS=2k in order to support 2024's range
> of hardware, and it's only going to be a couple of years more before
> we're stuck given the current spinlocks.
> 
> I do genuinely think the code and logic would be better without
> recursive locks, but making that happen is going to be very invasive and
> complicated.
> 
> But in the meantime with spinlocks properly separated from recursive
> locks, it becomes easier IMO to dissuade the introduction of new cases
> while we unpick the existing ones.
> 
> And so what if we do end up deleting recursive locks in a few years
> time?  That's not an argument against doing this untangling now.

Of course if that was happening only in a few years time, the series
here is still worthwhile to have. My question was rather towards us
possibly eliminating recursive locks in the next release cycle.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 09:45:14 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 09:45:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619061.963607 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtPaQ-00064a-P7; Thu, 19 Oct 2023 09:45:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619061.963607; Thu, 19 Oct 2023 09:45: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 1qtPaQ-00064T-MX; Thu, 19 Oct 2023 09:45:02 +0000
Received: by outflank-mailman (input) for mailman id 619061;
 Thu, 19 Oct 2023 09:45: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=g4nO=GB=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qtPaO-00062l-Um
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 09:45:00 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur05on2062e.outbound.protection.outlook.com
 [2a01:111:f400:7d00::62e])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 298d1229-6e64-11ee-9b0e-b553b5be7939;
 Thu, 19 Oct 2023 11:44:57 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PR3PR04MB7242.eurprd04.prod.outlook.com (2603:10a6:102:91::19)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.8; Thu, 19 Oct
 2023 09:44:54 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%7]) with mapi id 15.20.6907.022; Thu, 19 Oct 2023
 09:44: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: 298d1229-6e64-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Gxw8M3jp0hKvc0Kwyby2re+S6p7oxrn6jRp5ZD1IhbGI4rIqc3RCzSkkmgc+i58H4S4IoZ9QmUxNjlJd0cZApe4UZLNJrl/bIX2ugnjd7UI1ejTW488ny/IrJHXWd9u0v34aABN1aKK+E/qhk+UQgOo7fmX/vyZWVTDF7zlOjBnRL0ubh7CT3yNh6G8YekvdxImRc/9cMCs1xntgWk9Y0lv6Q6HurusK5/smP51+V+3ieASnSQZY6f5uhCm91vb8I/BojW4zYzstLph7QBnqYmdI4FGGgnFUeNt9qtDvMYlxcXHmlB6Jc3fXVK1WN65Vw9E3Yp9zxPL6PvAOXOVU0Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=O2vX67xNJd2B+amNzju0ZJQQhZq0mv/01Z4w3PMsoK4=;
 b=dOBVDdkw/QMdtF6Us/r5OpLAmCHT6Yu43kYYOvWLIGAkI6WPxoqUpgPAs9nTkWJ88kSJ8KNa7RVgAEeovtd/GfHg83lDaqXcxVWFIeOd620/POaF3nfptZXn+t8pjJu4R6PRBW/D/lluuTbS7yK955xeDjKHV3QS1qk7m1HEXbM16jBSG4I5psFkr8xw0qRl9KAlSfX6RVtyAMpk2x8jStgaboSt5jdPekAPg6PVNQ7c7Wh3DGh6g/NVX5cLHLCqIJUlWwWXWpBOEh1LBIVQK2dWzN7e1kuvj7wba9SS/uMLZJ1VNn1wD/MXjZQlJN0luJrLHBZMCcQQtsJRHmbxCQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=O2vX67xNJd2B+amNzju0ZJQQhZq0mv/01Z4w3PMsoK4=;
 b=h0S57lD5fOaz3FlNk9sHrlmsQA7DXx8WqPMgBM3YdWXSGHqM2nSXz/TRPUbhTg/ivUYtH6IZgfbxyDebI7V0PT8sZWMZYZzQEvckkow44d0ud9veaKo4msrIcXRMhiNKtQ36IQxwkkipYytmM8R3C230Ks+md7eGP1DK7bIvDa8AF2a+9sdJYfX/EtiQLqs6QX66dyEGkxUIaJYlEcdvFzINqwuUvWM8ikswFA0CzKFSfk7446oOezlg/onkfBorMWEHHt3Trv5FczoUzoxagojvIA+NbvhTpy/duKBiaElouIf7pfU5e7yHoCU5v5PqGDC8M5gHVyEFKz00ijZPjQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <65cdbeaa-6766-e5b7-65fb-191da6f59d81@suse.com>
Date: Thu, 19 Oct 2023 11:44: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 v1 10/29] xen/asm-generic: introduce stub header iommu.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>
 <8990c5c77c12333bfa7aba42b66bf7fffee5a096.1694702259.git.oleksii.kurochko@gmail.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <8990c5c77c12333bfa7aba42b66bf7fffee5a096.1694702259.git.oleksii.kurochko@gmail.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_|PR3PR04MB7242:EE_
X-MS-Office365-Filtering-Correlation-Id: 64bcf0e7-d182-4094-3a63-08dbd0880c6f
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	KUjr6yGXIo7Ygw/0xpurhQcmlw05hDPq1nlFv3Cr2ls8CQv4YlwStF1bUDp3MOmRHT2t2w+NfvwOri4YtYDOcZQOkXLEj/zA2zEmQleTpiM2NmSpkqFU2NAoFaSzxzZKLHicnCm4OKTu4eaD5GmIhYwg6MPP4MN6wrxyxTmE1uuQmhgcIKLLdNx2XUazpC72ccCOzgH1PMz0WiiRT81nK6NcHqHANwGU/Vv6Ik8GGPw1pWHfjFYiIw8S6g5/aKbB5ZRbzXzy2F+FEBLrOIF2wtDhM8uML2Ns4e0a30QXaQBYwJckabTQg/MklmOSTHP5SNQm4O3vxHkHfPCksxC+DNsRA4srRAiUqJWhoK/NWx3BL+bbSJZihCFhqePtQB5sYfDvM+yP1wmgo0s5ItyKiMUbSVPehum0yrNM/ZQ9HHLSDnCehHcjb7CLeBmIqi576LVuRCQcY+cZLFfnzHqw4Rx2r3vZJJNrYTY6e93QB+cwZw45mPt5izOhRm9pRSCtDeRHp8njMMpspXxjZLaj0BUnwNJpOcqf/HsPC9Ek5qLW8LEIN0iIRrgaCgvAPVdiDOY7GAM3xoaAmAJZ/pLvZmNHA9ovv+fb/mGpa1b8dIRLqiqzvvRka0DXm3LZNqun6XZneKLKzIpMpkPxr2SPUXorMjPEH20FZ84M2dQF1MA=
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)(396003)(39860400002)(376002)(366004)(230922051799003)(451199024)(64100799003)(186009)(1800799009)(2616005)(6512007)(6506007)(26005)(53546011)(41300700001)(4326008)(5660300002)(8676002)(4744005)(6486002)(8936002)(2906002)(478600001)(54906003)(6916009)(66946007)(66556008)(66476007)(316002)(31696002)(86362001)(38100700002)(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?cE9odjBEcGVrekhXQjlQbytZRWFZbFVYWkNZSFJyZGxCYmxoR1VBcERyYUI4?=
 =?utf-8?B?S3RYdHM3TGdCbDlIU0llSWttOFpWeHZjVGtIZTg5SWpPaDMxVkJLMHN6dXQ1?=
 =?utf-8?B?bDBPMU1RaGZnb3R2ZkZ4RzE0RG1SSTc5eUNVeWxVREJhWG04ZVRndTcxSVpz?=
 =?utf-8?B?VTh2bGlpU3BHelgxWTNLRHJWV3JCeUpGWitlQkpUclRkMS82em1jMHZjWU0x?=
 =?utf-8?B?YnpZZkl3V1Ztem9TeXJoZmRycFNhLzZHSlVwc2lmd1UyS0x6V05NTUxDUUdo?=
 =?utf-8?B?V2ZBVDZPalJFK0UydU5leVF3bmZLZitiVmp3Q1NZa2NZSDhSZm5LcDRNdC9Y?=
 =?utf-8?B?WWUyMFAyYWltWGF5Y29EZ0w5d1d3NXNPQzlsYnBib2VIK2tRN1VUSm5nU0Zv?=
 =?utf-8?B?alBsc1JpemNyajVSemwvY0phK1k0cFh6eEx6K29uQ3RYVE11eXdRbEgzUmE5?=
 =?utf-8?B?dVFRclFKQzAxZ0x6MU1qQnZGMjRPSTdsMFdpSmpCWmZnTm9mQVVZZWNicExr?=
 =?utf-8?B?dEhZbWMzZE5IZ2l2Nm9oY2Z2Z1hOSkg2UXBPbFB4M3hXMXR3aVJTS25mZEMv?=
 =?utf-8?B?bk9LMzkzYUd1bFphM01rS0p1ME02ZGhCTE5KN3Ntd0MweUhRczdCQjlId0No?=
 =?utf-8?B?Mk9VTENSNHptOHBWSHZXSUtNREdzQUpvaXBkQm54T3FRWVZ3QzM3djA4Q0Mr?=
 =?utf-8?B?Z0FNU2o2dUFsaWVPRllKMmlNejlnZ1hiWTU4ckpMV0piWXQxYzV0WlJZWFVO?=
 =?utf-8?B?WiszNGhUVFhlQjdRZW9HVWsyRXF1eWgwTlppVGltRGE5bzFUZVk2YXFINGd2?=
 =?utf-8?B?WEsrTEVvRUlFb0hObFJIWk5ZL1Q3YVRYY0JLQlhDVkN2ZFlFZVd3THFBd3px?=
 =?utf-8?B?SFl4a01PS1NXN3Z3VDk0OThzekVDSC9hUXdKd2E5cE53YnNVR1lFZTJSVElJ?=
 =?utf-8?B?eDlGQkpqekxWZ1JNMHJVVkZTcmNGalY5ZWtvNUkvYmNrT0N4SEtxODNjcmpX?=
 =?utf-8?B?UlNEUHdvbncvTG14bGZ1YXI1V1dOQ1hOZWQ0QTVzNzE0anF6dDhNa29HZWpw?=
 =?utf-8?B?WGJvdkN2Rmt0S2tpamthUlJNc2tqZjhHREFQekxOdkhia1BsenZYZW43bjAw?=
 =?utf-8?B?cHViZWJsQzdJYXRaR1VKMlRERmk3SHlBNkp4eVFxVXhLMmNyQmNYVkIyNnl2?=
 =?utf-8?B?QThlSHdGZXpGMUptbzFNdTRqQVBuQzAvK1VzMVJiSHM0eTh0Smc1L3FUYW5F?=
 =?utf-8?B?VWdKUlU3Ym8yb1NxNEtvQmpJalhJTEJrZ1d6emVMd0xFRUpiREExSjhoc1Ny?=
 =?utf-8?B?VUM0WTZ4Wmp2L2dDUjk1R3huRlBzaUxTdHpSakVJRTVlWi9obXFHZldLUm1T?=
 =?utf-8?B?T3l2R2UvMWgwdkI3UlMzT2pDTEdJLyt3eEdYYU5BSFdvZ050VkRwNEhFQU9U?=
 =?utf-8?B?RER5K1FwcXhjU2psbEluOHY4dnB3bEF6ams4YUtnaXcxQmpxZCtQVVZreUUx?=
 =?utf-8?B?anZmY3NidmlzanhObFR1YzY3OVhmSTNtUmpWVHhER3JXcjYrZHRpTFJtbTFs?=
 =?utf-8?B?SHJWcitxMHpRQ2FPM1RrdU1hd2ZhcGVIYVNrUmk5ajZoU0VSdXJtc1d4dlBS?=
 =?utf-8?B?ZDd4QUViL0VWUXRwcFcyUFYzRmF6RjgxT2VpNjMzQUNhWjc2ZjVxV2hNZGtD?=
 =?utf-8?B?ZXpBR2hzNm9QQzd3TU83Mnl0cHpzakdtYWczSUxpc2RSRGJyYzEyenVCS2Vi?=
 =?utf-8?B?Uk5TR0VyeVkwUW1Zc2s2b1J0aDZQUjV1T1RrUWpSdVMvN25kMGdSaDlIWXJa?=
 =?utf-8?B?cTBzdkZqd3prcnRoM284YTlDVnNXUmdIQ2tzZmRDWE9GcVdSVkI4T2t4alVm?=
 =?utf-8?B?SFhzVnZycUdTK0szdlN0ckhFYjFhTTlEaEgxU0tESTB2K2ljT1hSMDQxWXVk?=
 =?utf-8?B?OTdjdDBueHQyZXZvM3k0bnlJZ3I3alBpMHRxMUJ4K2RhVjBKTmFBSm5haktn?=
 =?utf-8?B?Ky9rNmlGWGZMNnhCU1YwemtJN0ZEWHJodGlwRUhYSXFHSU1kOUE4T0FxUStV?=
 =?utf-8?B?OWlMSHhLYzMxWkFkQWh2dkRuT1pwZk1FeHlHK1hpOTUzc0dXYmZqNmkxYWVj?=
 =?utf-8?Q?9kuq8t1tZHVifCvlmMSCpQ8ZN?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 64bcf0e7-d182-4094-3a63-08dbd0880c6f
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Oct 2023 09:44:54.7607
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: jDrlqV8ZCoVPB/q07QVyuZTwZD4vKcVz7O26WVv6hcxMLugjfKDtyPhiq09CPQn/UCXG/qdahm6r8Zyo/XfStA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PR3PR04MB7242

On 14.09.2023 16:56, Oleksii Kurochko wrote:
> --- /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__ */
This one's perhaps slightly more "interesting": Yes, we have a
HAS_PASSTHROUGH Kconfig option, which both Arm and x86 select. But it
is in principle possible to support guests without any kind of IOMMU
(permitting solely emulated and PV devices). In which case what's
(imo) needed here in addition is

#ifdef CONFIG_HAS_PASSTHROUGH
# error
#endif

Jan


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 09:46:33 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 09:46:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619064.963618 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtPbr-00072R-8D; Thu, 19 Oct 2023 09:46:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619064.963618; Thu, 19 Oct 2023 09:46: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 1qtPbr-00072K-5Y; Thu, 19 Oct 2023 09:46:31 +0000
Received: by outflank-mailman (input) for mailman id 619064;
 Thu, 19 Oct 2023 09: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=Zn2w=GB=citrix.com=prvs=649eed31f=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qtPbp-00072C-5i
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 09:46:29 +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 5e0451a3-6e64-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 11:46:27 +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;
 19 Oct 2023 05:46:23 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by BY5PR03MB5284.namprd03.prod.outlook.com (2603:10b6:a03:223::10)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.8; Thu, 19 Oct
 2023 09:46:20 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::17e3:6cff:b087:fc64]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::17e3:6cff:b087:fc64%4]) with mapi id 15.20.6886.034; Thu, 19 Oct 2023
 09:46: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: 5e0451a3-6e64-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1697708787;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=n6JJKzY9FqJkru6q/jkF+UMYl3sFsnuZmbBb/HLK8HE=;
  b=At7p8vz0mzOZMqo7M9X/rNjIZGOT+wqYBddR1V9EI6XbuP2TvFUG0QH7
   RNh8N17rhZPuTT8Uf+HS6jY5TGObAd6U8yOeDTCzDBeIHlOaMTG43+6O9
   BT1P5EXpV3O/Xy5WQ0XOeJVjH9Rw/OdqyZOhHHNliyhjmnKaLfH1sL92J
   4=;
X-CSE-ConnectionGUID: qqXRGR1JShGBiO2V7bUzQg==
X-CSE-MsgGUID: KWF8TvopQ7yoh0paXrJUTQ==
X-IronPort-RemoteIP: 104.47.59.169
X-IronPort-MID: 126473897
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:tnPhy6N0VeWTZv/vrR1hlsFynXyQoLVcMsEvi/4bfWQNrUoj0jFWy
 jNJCG2Hb/qPZmKgKNwib4W09UNT7JDUz9EyGwto+SlhQUwRpJueD7x1DKtS0wC6dZSfER09v
 63yTvGacajYm1eF/k/F3oDJ9CQ6jefQAOOkVIYoAwgpLSd8UiAtlBl/rOAwh49skLCRDhiE/
 Nj/uKUzAnf8s9JPGjxSs/nrRC9H5qyo42pA5wxmPpingXeF/5UrJMNHTU2OByOQrrl8RoaSW
 +vFxbelyWLVlz9F5gSNy+uTnuUiG9Y+DCDW4pZkc/HKbitq/0Te5p0TJvsEAXq7vh3S9zxHJ
 HehgrTrIeshFvWkdO3wyHC0GQkmVUFN0OevzXRSLaV/ZqAJGpfh66wGMa04AWEX0v9uMVthz
 6U6EzAiRBGk3dzpyo+pc+Y506zPLOGzVG8ekldJ6GiDSNoDH9XESaiM4sJE1jAtgMwIBezZe
 8cSdTtoalLHfgFLPVAUTpk5mY9EhFGmK2Ee9A3T+PtxujaCpOBy+OGF3N79YNuFSN8Thk+Fj
 mnH4374ElcRM9n3JT+tqyjy2rCUzXKkMG4UPJ6H2K5WnlqL/zMCDx1OTVKLu9uEtnfrDrqzL
 GRRoELCt5Ma9kamU938VB2Qu2Ofs1gXXN84O8037hucjJXd5QmxD3IBCDVGbbQOt8IoRDpsy
 l6AmfvoAyBitPueTnf13qeZq3a+NDYYKUcGZDQYVk0V7t/7uoYxgxnTCNF5H8aIYsbdHDjxx
 3WGqXY4jrBK18oTjfzlrBbAni6moYXPQkgt/ALLU2m57wR/Iom4e4iv7lud5vFFRGqEcmS8U
 LE/s5D2xIgz4VulzkRhnM1l8GmV2su4
IronPort-HdrOrdr: A9a23:mXiD/qFD95aHHpOypLqFrZHXdLJyesId70hD6qkRc20hTiX8ra
 vBoB1173/JYUkqKQ0dcLy7WZVoIkmshqKdn7NhX4tKNTOO0AGVxepZnOjfKlPbakjDHuU079
 YeT0AXYuedMbAQ5/yU3OF2eexM/PC3tJmNwcPi5zNVSwduApsQnTuQyGygYzNLrM0tP+tIKH
 JYjPA31gZIAk5nCviTNz0+Ru3eoN+OvIv+CCR2fiIP2U21lDa177y/OASZ2xp2aUIz/Z4StV
 LdlhD/5OGFu/W2oyWssFP73tBtgd78zdkGItKKhtN9EESLti+YIL55XqGEvnQOgMzH0idTrP
 D85y04Oth16TfqcnqrrQDL0w3tuQxekEPK+BujmH7+ps68ez4gEcpGgutiA2Hk13Y=
X-Talos-CUID: 9a23:Rpm3ZWNCCdDdw+5DQTBXzmEuQ+IeclL3zVCKHRCyNHRQR+jA
X-Talos-MUID: 9a23:tDAQFAtsvJQweAWSdc2npw5MZPt25LyXV1EKkc0esvmeFxFMAmLI
X-IronPort-AV: E=Sophos;i="6.03,236,1694750400"; 
   d="scan'208";a="126473897"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=b+f0d43+7qcvV7Yobubm1In5JXNPXg4f4P8VfvB+6JjiQvz4mXNQotaH7w65/7ecCTtFMIOaqGOEPDhZVy9lIjmsy0kz7fYUKfYARgIiIyaWxA1puv10CYYIrJYrdYKqnM5n6P3xedClqD2qDrxFtAVzfE49+ykM4+U8vV+035htoGP2xvqHMByIx7fPPnzTgZ/hMCsUmFk96xya+MPzfrSYlqiPukEuwTJuL/DG55yn3K3RFbToEMc20Pn5LSNTjmYC8GDAq8k1klk9f1xFVYjjSflIYNhblEerbGqb+q160sKU4loC6rDC96qsB8FUFuunXfwoVkBuZehW/9qPdg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=QirGQsxmnxCJFOtgMr79yOeTAgQqECVNZ8Q3BTeM8Es=;
 b=mdNeuyN260dLh/oOtmz7lqCahiHFMsz2fk/5XY6opPcywj6DLPNVYR9WET5/tbQPKSSMCaBYKm0OAqp+Vj/UXaEGxHOEvVJ8wFf4H8W9nFMZ8nfVbkwyv4InKdEdVUdfDzDcvyxyMsThsMmIUICbeXkvkI5ehM6E4y4fwaEQm4+GtTQJcMqTIZvcSoQFucRkgs/nwYSjBZbyIRoWKrioYYTkVgkCskiZ9xIzCOB7Ilef7ABjFwbSagJ0XgUCSNz6JfRa2ETCpzoVgNRM+HWOaTDqoImOOZXwe/+5z2+7/mKmfjHk0tyddNDbhIjtE34zZgu2S0aijMV1trR8aqr8yA==
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=QirGQsxmnxCJFOtgMr79yOeTAgQqECVNZ8Q3BTeM8Es=;
 b=bAVKDZschTVu03OOE/VBCffQMSHQPLVkQOoLB+gEhIF2NFUC0EmzRp7VGxHiE4AsFTNtcfWA4K5Et6QmWtUF9eTxfvd2cfpGuUyAJCy5XbfEisf/INwEBUNclwqlXpFc8DgKUqlEzDV5/uFFQx64AY8y4zQ+iKquQuOJogVMOT0=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Thu, 19 Oct 2023 11:46:14 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: Henry Wang <Henry.Wang@arm.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	Kevin Tian <kevin.tian@intel.com>, xen-devel@lists.xenproject.org
Subject: Re: [PATCH for-4.18 v2] iommu/vt-d: fix SAGAW capability parsing
Message-ID: <ZTD65qLQcQSAnr2X@macbook>
References: <20231018160733.24655-1-roger.pau@citrix.com>
 <709ade00-9112-2866-4d2b-3bb718b13b46@suse.com>
 <ZTDlm_msZrFlhubr@macbook>
 <45b73e35-29b0-99dc-ff91-251fe38d78ed@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <45b73e35-29b0-99dc-ff91-251fe38d78ed@suse.com>
X-ClientProxiedBy: LO2P265CA0184.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:a::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_|BY5PR03MB5284:EE_
X-MS-Office365-Filtering-Correlation-Id: 34f1c1d4-709c-4d8e-dd63-08dbd0883f68
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:
	+EsmLByVsGtYuidVQ64NM5kzBmNKbMmLDKW0OIpxddOLfOrr5E2AA0AOWQKwS2Wk0pXE8fI7ViEBY1MZyp9qQPCxlbvC64H7OI0og+uGTWKaOmzdXBzI+dCcG3g7hprpLVNv1AEwM3ubj6D1SXG/tiE+mMpTcQxk2S8Q5Py+xX3JDByuYu0aO4nQDK7rp3+vUFXBifQHI5CTdKoJZ6xKiDiaULUSlom7wHjIlnnvfx3SDGxcWTW+KRcwFeqaktCPhm5NEuwV4l2Vn9v20MDMrr4CaLSxBEAIBnnGhC3QvCB4pN9cEIGFoLo5Eu3/uxpMKG68UoG3eI/ZVnWmr6YylYpM4H/LGXN5pWqkyrFt7dr1qQS+bvc4mGoF5aayRYUlTDFcV1duYk0Y1C1h2KgzHHL6cYgTDbS8Y7qYSvyqG5Q3xdgHzSjUIVSCD3WrP2lNVPY568t15hNidSTlwNhOagtm/IqMarVacBCr7b1chKrdvx+Iy6rXDGUnKFdbMujIxEW/9HfQwctHxWTm+N2jGcKYoP3mtmBzm5mRMqayqBDN369rowTzCvKhsE5yvh0F
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)(39860400002)(396003)(376002)(346002)(136003)(230922051799003)(186009)(1800799009)(64100799003)(451199024)(33716001)(66899024)(86362001)(38100700002)(41300700001)(5660300002)(4326008)(2906002)(8676002)(83380400001)(82960400001)(9686003)(6512007)(26005)(6506007)(53546011)(8936002)(478600001)(85182001)(6486002)(6666004)(66476007)(66946007)(54906003)(6916009)(66556008)(316002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?am9HYmh5UXYzMUlxOFd3VHFzWGcreTBaT1hLS2hpaTBRS0RrTndiTXFzVWFr?=
 =?utf-8?B?Y1dpR3pWeFZnMDlxaFAzd0FRZE5JM3Y5YlcvWlEzZWl2d2NpQWFML1pKR0Vk?=
 =?utf-8?B?TWg5OUh4c1lDSWhyM2RBNkpGQjM3Y0pEVjVUbm1sUWhETlp3YktuUlRsbnVX?=
 =?utf-8?B?Zk9DWjd2VTFIN2s0S0VKY3piUm03dFRRckdKR0tBSytjUXVnb1hjeGh5WXcx?=
 =?utf-8?B?UzdVVXY2M3VjdEFaNzRqV3VNWVpvOFhwNk5QbXFtWCtJc1dEcStoMnN0elpY?=
 =?utf-8?B?a1pJWGFIbExGV2pBVXFrT2tBNk1GaDQvNWtlUEp5VzBvZ0M2Qy9WbGpEckl0?=
 =?utf-8?B?ekQzL3dDdkZ0NDBoUWkwOStPU3hYcnlnblBNeUk3cklmNEg0SGVjM0JGMWZQ?=
 =?utf-8?B?ZndlT2xLbDQ1azh2anJyMlNiOFF5WVVDRzc1Slh2V3hySUd0MmViVVY1aEZp?=
 =?utf-8?B?NWVGVmJlWFQ4U2orTS9wRjhuSlpoSm1pWkR1dmc3a2JBQ2lQb090eDBqV1Rh?=
 =?utf-8?B?djJ3QjlzdmRKdkp6TWxEU01KL29TSjJIck1YQUJiWHB4MFFFUytwU1RlbUJP?=
 =?utf-8?B?KzRVVEtkZUlYbHZTelRoN0V3OTVqeEgrbGZPbVdiWk5aaG8xRDNMYUorejBk?=
 =?utf-8?B?NitJQ1padTlHMTBGbXJlNlI1QzFpZW9IS1cveW1qbElTSm94LytGTnNzZnY1?=
 =?utf-8?B?U1FDZFh1NU5vNHh5U1dxN09TU1dEVGtYRUNleEhpcFMwcFhmaUpTV0xXblIv?=
 =?utf-8?B?V1lKWlgyNWorMk5qVnEvRDhjanE3OVJIbUs2ZmNXMlF6cDRZRkg1MG1pZDNW?=
 =?utf-8?B?R1Y2U3AwMUU1SUZTTmRBbTV2TnpJMVptY3VmNW1PbWt3aTNKWG1nSGtnTFBy?=
 =?utf-8?B?ODhhKytFNExXNXpoa3ppS01kTGw1QWZzR3NWa0UvakpQQmh0Zlo4S2YzeHR5?=
 =?utf-8?B?QldTbXJIZVN5ejEwUEY1TTJXOGdHM2ljODFJTVp0THdUOHlKYXRNQWRJVjd4?=
 =?utf-8?B?U2tlM0w5M04xMlozZVA4d0FVeHhDYkhTNDZNZUVPVjZveHhBcmpncFEwNWJk?=
 =?utf-8?B?RDdrT0liejVWN0NXbTVBTmVleHdKSTFySEZKd0NMVDlxQnRmN2ovQ2M0NmE2?=
 =?utf-8?B?WnhxNW14NFV5Zzltc1Q1S2UyYzJBaWNNOUhsUzVrdk1MZEtxNWhaN1B0bFVR?=
 =?utf-8?B?RDVqMjRHTVVzRnNtTUxtUTJlZTNLOVBFTXIvcjZpaFIvMkg4SGN2NHBWUzNU?=
 =?utf-8?B?cFMxdzNlVGlJWTRKVWgwblBmeXNMV1BhTWhIT1E4dEg3ZUo4MittVDRxNUdB?=
 =?utf-8?B?RnNTUFFwUmpYemdud1k2V0ZaQm1XbXlNZm5FWk5taGwyZG9pWnYzeGNwTGpI?=
 =?utf-8?B?QWxJeXFsOTJDTmZJK1VsL3lka25CaWE4QnFpTlg4RzVQZzdXUGM3N21wc3lq?=
 =?utf-8?B?Q0Vyd2t2QkczY0dLYkRnS0svQk9ZdUJHU2t3ZlY0LzVIY0NYc0ZxNW5Sd0U0?=
 =?utf-8?B?TzdOMG5EcFRYUVl4amR1Q3d0VHd5K3dHN2RQSjk2U3VwOUpmNTJtNTZySEJS?=
 =?utf-8?B?VWx0V0pJaEk3SWcrVkE2SnZsQU1aS1UzSlFtWUFaeTJQMEtvR25ON0l1aVdu?=
 =?utf-8?B?Zi9yR1hPN01yR05mcTg3Ykt0aU8rUC9uWHlvTjB1OHlQL0FZZExHN2IwSnlV?=
 =?utf-8?B?MmMyeXNFR3E5YnlqZXBzMGdXb0tIQWEyZTVTS2ltQmJmeDhMTWZHWlJNYk1p?=
 =?utf-8?B?ZDd1M05JaEFaZ210c2JObmlrQjVSTzllNHRET21paEIwc3dBRVpUbTFOdFVI?=
 =?utf-8?B?aVRhV1RJUlU2cVYxL3o1VW9ZWWRvRldpcWZVYzJQNTVJSjFHc3VJVTZ5WjBw?=
 =?utf-8?B?QnRoSFRwL0lxRVF1WFhKMlhpQUsvcERNZzRuNXFlTWNwVEJ2cmc0SFZveFQz?=
 =?utf-8?B?TkRTMkFiRTJGYlBrWVVrWHNYNHdRbTdNY0h6dk9rRnFWVkNsY245S0RrR0Nw?=
 =?utf-8?B?QXpld1didUNaNmxHYVlXTWJvVERnZXhXVHFlNnNOYlcvdGcvM1RIc3lmMVln?=
 =?utf-8?B?YXFnaFlVZWdZMTBMcDZuQVliUS9Gck1sM1o4MzNnTkJRM3RURDAwSE1JVjhs?=
 =?utf-8?Q?l2iSqkpS98s9YhTEfxBAQT3Zn?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	WDoRDofLbgv00/BwrzFQq/fuxZKbRpoZ1dTDqdeDRCbqPo9zzykhUeoVDNeVCEIIAPwGsFOngT0xGl2I9isUlpc+Hv2mDB7MS3q+aTE0umS9frJwdBhuw5RT/7czXHUcTBT+T3aNh+GIUmjo3f+AnhJTAnJAzuMuikWRE1ISko37s05PoQxL2ugrVMHZD3dvDIU4iCdfcrNs33UZkreq8JXsxK0Vkj9o6hOGKp8XvMaNeyoh5/9PPau3laPANyoeVdpquxIJI8FqeqDCmNBZp78s6odLVc+8zFhV4TSEmB9RHe+hcQxSIWyJP6xyGuuiN2NZdP0RzxPCA08EcXs4gWJq4+rlmm5/YGXXNGjawUm0GyxJHx7Bo0k+FRyu/JcEkuE4p2iPyAspOeEi0QsWuu4/nivg2SS/thhbjtFotNohDqReGwIiSxqf61Y8w/0eDIVIx/E62RFgCQAAl8cLgH3Jq9wfV3KkzeVUnnxyEZusgXPEGrrBSJjF0pdtzCWF1XvPDqLQTLOy3QM0412H5Z6AkZWgcuNHFN6lgsEXukTQ5OVKAWdZvV7GLz17yhRpmbs0kGIAt9egbjaZhrt1r5+esYZtVHZW/6/UBbjwyu3NedhdGf7V4MWtsPe6sb7JaBPRJd/EzmrY4iNBm16TutmyOzUYLNhbX2kEHCu1xm2nn9uQ0XpQJfirVEPFPNoptMf8xF0Z56TyHARfSgoEOtenf/9I+pOY0/66Su5kgRqR5uItsCjlW+9lYKcOxRM0R9JSN8n789W7w99Y+eumD204zqNU9GPM/GLA2B9BPcLPRR9ttj15ttjxEIiaxsxIZS21L53h/4XP2FZQmKZ6tCnaQMH4UeoCINn+5TyzAU4=
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 34f1c1d4-709c-4d8e-dd63-08dbd0883f68
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Oct 2023 09:46:20.3461
 (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: dJdIJxll5U6u6mwqTyt2Fy6QmtIuSOLUJyH0xcroUSZDNP91kM+nJCgrr3T7Sb4nVPHpCC/S85ejXx0V/VORrQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY5PR03MB5284

On Thu, Oct 19, 2023 at 10:49:29AM +0200, Jan Beulich wrote:
> On 19.10.2023 10:15, Roger Pau Monné wrote:
> > On Thu, Oct 19, 2023 at 09:41:41AM +0200, Jan Beulich wrote:
> >> On 18.10.2023 18:07, Roger Pau Monne wrote:
> >>> SAGAW is a bitmap field, with bits 1, 2 and 3 signaling support for 3, 4 and 5
> >>> level page tables respectively.  According to the Intel VT-d specification, an
> >>> IOMMU can report multiple SAGAW bits being set.
> >>>
> >>> Commit 859d11b27912 claims to replace the open-coded find_first_set_bit(), but
> >>> it's actually replacing an open coded implementation to find the last set bit.
> >>> The change forces the used AGAW to the lowest supported by the IOMMU instead of
> >>> the highest one between 1 and 2.
> >>>
> >>> Restore the previous SAGAW parsing by using fls() instead of
> >>> find_first_set_bit(), in order to get the highest (supported) AGAW to be used.
> >>>
> >>> However there's a caveat related to the value the AW context entry field must
> >>> be set to when using passthrough mode:
> >>>
> >>> "When the Translation-type (TT) field indicates pass-through processing (10b),
> >>> this field must be programmed to indicate the largest AGAW value supported by
> >>> hardware." [0]
> >>>
> >>> Newer Intel IOMMU implementations support 5 level page tables for the IOMMU,
> >>> and signal such support in SAGAW bit 3.
> >>>
> >>> Enabling 5 level paging support (AGAW 3) at this point in the release is too
> >>> risky, so instead put a bodge to unconditionally disable passthough mode if
> >>> SAGAW has any bits greater than 2 set.  Ignore bit 0, it's reserved in the
> >>> specification but unlikely to have any meaning in the future.
> >>
> >> May be worth mentioning that in earlier versions this indicated 2-level
> >> paging support.
> > 
> > Oh, that's not even present in my copy of the spec from 2016.  I guess
> > it was removed very, very long time ago?
> 
> Indeed, as mentioned in the commit you're fixing. Version 1.3 of the
> spec still has it. Judging by the document numbers 2.2 may have been
> its direct successor (i.e. no further 1.x and no 2.0 or 2.1).
> 
> >>> --- a/xen/drivers/passthrough/vtd/iommu.c
> >>> +++ b/xen/drivers/passthrough/vtd/iommu.c
> >>> @@ -1327,15 +1327,24 @@ int __init iommu_alloc(struct acpi_drhd_unit *drhd)
> >>>  
> >>>      /* Calculate number of pagetable levels: 3 or 4. */
> >>>      sagaw = cap_sagaw(iommu->cap);
> >>> -    if ( sagaw & 6 )
> >>> -        agaw = find_first_set_bit(sagaw & 6);
> >>> -    if ( !agaw )
> >>> +    agaw = fls(sagaw & 6) - 1;
> >>> +    if ( agaw == -1 )
> >>
> >> Would you mind making this "< 0" or even "<= 0"? The latter in particular
> >> would already cover the likely future change of dropping the masking by 6.
> > 
> > My plan wasn't to drop the masking, but use 0xe if we support AGAW 3.
> 
> But we will also need to deal with bit 4 (at which point applying a mask
> is going to be useless code). We can either guess that it's going to mean
> 6-level paging, or we need to treat it as having unknown meaning when set
> (implying that we'd then still need to either fail initialization or
> disable pass-through mode).

I wouldn't enable support for AGAW 4 unless we have a way to test it.
It's safer to just disable passthrough mode if SAGAW bit 4 is set.

> > I'm fine with using < or <= if you think it's more robust.
> 
> Good, will do so then.
> 
> >>>      {
> >>>          printk(XENLOG_ERR VTDPREFIX "IOMMU: unsupported sagaw %x\n", sagaw);
> >>>          print_iommu_regs(drhd);
> >>>          rc = -ENODEV;
> >>>          goto free;
> >>>      }
> >>> +    if ( sagaw >> 3 )
> >>> +    {
> >>> +        printk_once(XENLOG_WARNING VTDPREFIX
> >>> +                    "IOMMU: unhandled bits set in sagaw (%#x)%s\n",
> >>
> >> I think IOMMU: is redundant with VTDPREFIX (or alternatively iommu->index
> >> would also want logging). Also note that VTDPREFIX (bogusly) has no
> >> trailing space. (I realize both apply to the other log message in context
> >> as well, but still. I'd be inclined to adjust that at the same time,
> >> including switching to %#x as you have it in the new log message.)
> > 
> > Oh, I didn't realize VTDPREFIX had no trailing space.
> > 
> > Since it's a printk_once(), not sure iommu->index is really useful
> > here, as we would report just one IOMMU has having an unhandled SAGAW.
> > IMO if we switch to printing iommu->index we must also use a plain
> > printk.  But I don't see a lot of benefit in printing this for likely
> > each IOMMU on the system, and hence I would rather use printk_once()
> > and not print the index.
> 
> Well, logging the index in printk_once() has the benefit of identifying
> the first IOMMU with the issue, which may help further analysis if not
> all of them have bits beyond 2 set. But I'm not going to insist on this
> aspect.
> 
> > Feel free to drop the IOMMU prefix, but I'm not sure what to do with
> > VTDPREFIX and the missing trialing space, as some users of VTDPREFIX
> > already account for such missing space.
> 
> I'd simply insert a leading space in the string literal.

Ack.

> >>> +                    sagaw,
> >>> +                    iommu_hwdom_passthrough ? " disabling passthrough" : "" );
> >>
> >> May want a leading comma (or some other separator) in the string.
> >>
> >>> +        if ( iommu_hwdom_passthrough )
> >>> +            iommu_hwdom_passthrough = false;
> >>
> >> No real need for if() here.
> > 
> > Not really, but also no need for a write to iommu_hwdom_passthrough
> > every time an IOMMU is initialized if the condition is removed.
> 
> This is init-time code, and hence the excess writes aren't going to be
> noticable.

I don't have a strong opinion, TBH I used to have it without the
conditional and added it later.  If you prefer to drop the conditional
I won't oppose.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 09:52:30 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 09:52:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619068.963627 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtPhX-0001CD-RZ; Thu, 19 Oct 2023 09:52:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619068.963627; Thu, 19 Oct 2023 09:52: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 1qtPhX-0001C6-P1; Thu, 19 Oct 2023 09:52:23 +0000
Received: by outflank-mailman (input) for mailman id 619068;
 Thu, 19 Oct 2023 09:52: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=g4nO=GB=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qtPhW-0001C0-9v
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 09:52:22 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur04on2081.outbound.protection.outlook.com [40.107.7.81])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 31b14af4-6e65-11ee-9b0e-b553b5be7939;
 Thu, 19 Oct 2023 11:52:20 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by VI1PR04MB9907.eurprd04.prod.outlook.com (2603:10a6:800:1d4::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.8; Thu, 19 Oct
 2023 09:51:49 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%7]) with mapi id 15.20.6907.022; Thu, 19 Oct 2023
 09:51: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: 31b14af4-6e65-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=KmTwxne3QFhmd4qrAwbNzyxMdQ1XVg0vC/1TaoV1HhfqYRTeihdS93gVTHXHPf1FWkmuh9l/P8zr9UE7IlL8QqlPncVqGah6QDo/huwBkrzYo9pp5TZlGZOY0P0BCxaqe1gnvePBfFk60s4yQIjosdSFhnnpmNbOVOo5SYYF1naweAdnoRMC5tTQ8Hw4+FDDyLksWwLq2GnEdsjmvLDzIm05qv0cQZLdLD1VJ5EG1wvyDWrMIrPCg5ZzDWGM6z2PdvZ4RiQ+CU1cws0r3r8QltcKXnq1KU8O9XF1USSw6rHtrQkqghFF2VUiHaPHp4I7A5wk4erXLTQ1n4natNP5vQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=b4ucjr77fwf0ioLdOk+gBV/jF4CgTK6atl/mLF9b6JE=;
 b=J6yOOsTg4OaweuFdkA+T4eoUzUjAUL2fsaNlPb/IkV+IFj2xqFN8Lb1pr5Chx/cZ9x+0pxm24FnV7pkULzswfPfZ8X8Hf6ODhyxmP9aq2U++nuYkMM94QhSY28mxptyiBUTELaptFHObZnXKDbBgKEWvWhLr84vyWO7cDrwVAd4rMknOrYky3zNIT4QV38rn1QEBYwTT0xBYmUAdYqztNSs7U/nj5G+LpuBccNltyEKBboNCz5mkviJ/Sbtv1gGyN+wgqg6i2KWyxFU88JM30s3ig76v267w76XtKOypMdFuq4GpRYaR3xJqYnpMA9gf+VFVUMeGnpy+m00LuLGEUQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=b4ucjr77fwf0ioLdOk+gBV/jF4CgTK6atl/mLF9b6JE=;
 b=mMmGb4TkCc7lKgFMlKjvAtzxXAJfV0UzCOCCTcx/SkvazPoR0dS+br0wSMo8JjpKuDLImM/A7uoFe+AwIF02RCVxvPs9popC96pgOyr0Ok0DzUOjDJjjgkxFFfDu15+Kg+AiArsibVin4afrqb+ZxmLvihFI3XjMDkMrvuiBS8CHzS50FSlZoV+Od9d/Cf8B/Rh3FKiqNsGf0EpcTwNM1fHfYHrw91p9dSAbsMN0zsuv1iTBbAaoYe6yu8LjQdqeVZFXU1epXYIwZUukf2wH2rqNabxeLM4c/2naCrDFFO6SPthyBXJBCRQwq10TF3VIsI1rglOKjnKL8ppG88D72A==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <3cff4f87-0da3-1e46-4b86-c43c02dde064@suse.com>
Date: Thu, 19 Oct 2023 11:51: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 v1 11/29] xen/asm-generic: introduce stub header
 mem_access.h
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>, xen-devel@lists.xenproject.org
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
 <79ed96f65e7c7f4036cf62ba6b5b44a371c758ee.1694702259.git.oleksii.kurochko@gmail.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <79ed96f65e7c7f4036cf62ba6b5b44a371c758ee.1694702259.git.oleksii.kurochko@gmail.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR3P281CA0091.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:a1::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_|VI1PR04MB9907:EE_
X-MS-Office365-Filtering-Correlation-Id: 566f5c9f-2a74-415b-9213-08dbd08903aa
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	PcGBYaiffC5ThNexaSl4syLyGcBQilCgDZHAsoEb+Q6klSOSeWe6G1gtytLitf6olmbHiI04haqLnnQ13yvGl73QM1N1IKp8SRvCSZztghRm2nFJf4UNkgQ4uUtQJTlgXxBHXJuSm6fSH9gA5g7vubqbtUXA/3EkEfTHhJTkRIKYXaB4QKGLpHumZx5Acv9WktrrWfsyiaR8VDxLb7QcpAFwSdx0O5/Lq2jWxTYJPsRJEdT8x5XCoZURDhdOV6Xok6CBDbyWLQTdCBC6DAP0actNs5ekhvfYNVXvolMCM0YULXLgctZzBxAJqT0t7Mu/hTqdaVY0hft/A3C/XVPEpIR1z8Ss4OgAItt2dA6KxaY8fvDatkPEHEJqAaNnmb4p8fcVbuSzYKnqitG/3Rce+LpnLHU3npEt5u774UheWwBuOzPEBkRggu2vpCXpEnfIrc1Xi62Yu0wcQvp+EfDs4bZNBheGhzH+J5O/22mrfTJ4ulW85fWKsyYChNeOgwHSlBme/Md0N2lXK1aLaJxznoQn4RTXx4mDtrxltBkvRuPWkgGWdZynnfdx2qQJTzhODWJ1webxIZL/YS+SVKDRTOqL3cJk1SS7yET1QR6hNSDC6hKknRCEJ9JRwoY5XvgKD8ISJJeE+iovjW1ot7Mot+0Vr7ISSmbQDV7WFiXYkSc=
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)(376002)(366004)(136003)(230922051799003)(64100799003)(1800799009)(451199024)(186009)(31686004)(4744005)(4326008)(8676002)(8936002)(83380400001)(36756003)(26005)(6512007)(2616005)(6666004)(6506007)(53546011)(5660300002)(31696002)(2906002)(86362001)(66946007)(41300700001)(6916009)(478600001)(38100700002)(66476007)(66556008)(6486002)(54906003)(316002)(41533002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?V0p1M1JsMzhsSzcyeHp3SEpxbis1cWNGNWtPU3J2aFd4cEFRS2lISldabm1B?=
 =?utf-8?B?MFR4WVRuQyt0R3FNMVRnb2tOaEJ5bW0xbUpRTmN1eUlaejVmQzBLckJHK09T?=
 =?utf-8?B?QXNaV1k2dEtBbUxMRHYyQkdCNHNMWlpZSllWb2RZWVpjWHZveTlVN1hLWTQ0?=
 =?utf-8?B?LzI2aTV2REQxZVhmL1BnUkRDRlFBVzFIYURnU0hXbFdrRU9CbWkzaHhkdVRG?=
 =?utf-8?B?a0w1SHZSWForUmtTVTBHajErS0tTUy9HS1ppVFprclRlQnJ1WTRuNjhzeTBy?=
 =?utf-8?B?TDFRWHpHdWtYNzBtc2Y3UGxGdVJxUXF0dkFHaWJRSUVoYXJ2Y3NvZnF0OFVj?=
 =?utf-8?B?ZUhQM2ZYamtaRTNnZzlqelUra1lZZEVvWnJyVEJrVFRHRXpIMzJmSXpRS3Rk?=
 =?utf-8?B?TGtSeDl2aWZQcUtOVXZqYkUvQTlCOHl2QWtpQ2piRmczczkxbElYRXZhWGlH?=
 =?utf-8?B?MVZUZk9yOTYrL0Y1UzJNNDB3SE51MGgyRGIzOWpLUnQvMkFWWWEyQUdDWTZC?=
 =?utf-8?B?K0hqRkoyWHZTdDhaZVBkTkVsM2doSVcwTHkvWExHNjBCN0hoZElqblA5eC9p?=
 =?utf-8?B?YThJc0UyS0VOb3k1dlk3TUpwNTc4M0xXYTBpQ2JadzFya2F4UlBYUDE2Vmp4?=
 =?utf-8?B?YjlSREkzTmNxRTcvYmt4M2NWN0FZS0RmZHVDbHNjZVJvZk9lTUhHUWFxSUhI?=
 =?utf-8?B?WGtVWHVZeGlZT3JwUlM3MklLL3czZ3JTRnJGSTh2SlVaMGhWZDhWVzFvcjRI?=
 =?utf-8?B?N3lCN1FoNlpya0ZJbWNNd2p6bVdlZ1pJQnY1VCtIOWl6ekxBVUkxcXpML3R1?=
 =?utf-8?B?YTZSVlljbXYxTzNhU3Via1dMMTBCWTgwamU2TDZ1TVNEY3VQTGpkZ3h2RkRq?=
 =?utf-8?B?VGQ0ZFh6VTdZN3V6R3JPRGtDclY1NUhpNVFiYkJQZWs1M0hYYk9ibVUzbjNs?=
 =?utf-8?B?TzYzdUFCZUNianpMUlNucDlpZTFqRCtsZmhCQ09KZWtqNjROdlR2bEVTa1Za?=
 =?utf-8?B?eWhBN0dCNkVDM21vMGZWeXVmT0VFZEF6YTRrMmhicmp6RFQyU3VESFdEN0tk?=
 =?utf-8?B?VWlzdldEcWlTZ1l6RHBsTUJpQjdFRjVjUGcybmp1RmhlYVVwL1A0Smd2aW5G?=
 =?utf-8?B?aEhzS1VOTzdiQWRwZy9jNkluN0dDUWluVW1PNUdqdGJuT1NLZGNIY1dSRENU?=
 =?utf-8?B?NCtFRkhoU3NsdlgzNW43MGx4ek5ueTNpR2lmNEFuelIxcDQxSno0Wjl0WlJT?=
 =?utf-8?B?L3pCR2RVWUlqRTlKcVl5eE4wRG1kK2hjekNhMFo1cExuaWU3WG94T1gyVHE3?=
 =?utf-8?B?aXBFeHdXZ0UzSmNqSG4vYWpFOEZrUmx6YUxVMWVlMXpsVXlYOHdUdm81Nlhi?=
 =?utf-8?B?OERGMXVDdTdNdHl6SFVoMGNkOU5FQ0RlaXdZOVVwY3dNeTZRNVQwcFFUWVZo?=
 =?utf-8?B?UUVka0ljekNTbExxNXd1MklhTkVoWjZuM1ltMlF1YjBxYWlrS0twTGk0Tnlj?=
 =?utf-8?B?akdQSXRqWitzZE1oRFMvQ2ZqK29xUVhIZXo0SnFTKzUzbTh2c20xamY3Qmlz?=
 =?utf-8?B?QmZhY1lNUWQ4VFZFMzdKN2RxYzVzRXROYzVPWHV6b0JYNk9tOFhyN2JYQytJ?=
 =?utf-8?B?eU9aUVdKL0ttanlndnhXVjVBZHRmVktyUy9TZGo2dnpFZ3lLc2htbTBaeDlP?=
 =?utf-8?B?MDBla3k5aDViVm9vMlRqS2JxQmVTTHdqVFpIaWZxZmVqbDBhem9IM2t4ZWF4?=
 =?utf-8?B?bFhNM24xbmIrODU0UWlRY3ExN3d4Z1lSakhEUkRwSms5SERvUWxieDlLeS9a?=
 =?utf-8?B?bmZkQW0rV0hVbjdhWjhoZnlnUDNLVWhKZ1RkRERQdnZJVXl0NG1PTUYvRUtz?=
 =?utf-8?B?S3NsbnZHSVVCWkVKbHNQTDBTT0JyVDBDM0xjVjQramZlb0ticGVXRGlKM09x?=
 =?utf-8?B?Vm9zak14VnZWY0g4SUM4Zm9VUkR3dkVwdVRyVlFiam5QeE16TVRJc0cvQzBN?=
 =?utf-8?B?SWpKUDVrNEd2QTM2MlROYUdZN3lCMVBGWGF6RDZncjgxVGhHd01CM3Q0dnp4?=
 =?utf-8?B?RytkRlRXUFFWU3FJdmprUGg0Q3FETUQwc2M1RmtHMXJmWitHTmVLTVJnZmhv?=
 =?utf-8?Q?vEdX9jdHXaZosmL13iQ6yTu5S?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 566f5c9f-2a74-415b-9213-08dbd08903aa
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Oct 2023 09:51:49.5195
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: TEwDmuWRfUvTjiy5lUxk4vu3wKfUyqIpXIrhEJ2E4NoR931RKrzgwEzmmOzuRAH0SZ44jdWGpAqm9Qasvhi9qw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR04MB9907

On 14.09.2023 16:56, Oleksii Kurochko wrote:
> --- /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

Does xen/mem_access.h actually need to include asm/mem_access.h when
!CONFIG_MEM_ACCESS? Without that, I don't think this header is needed.

Jan



From xen-devel-bounces@lists.xenproject.org Thu Oct 19 09:55:28 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 09:55:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619071.963638 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtPkV-0003Ir-8N; Thu, 19 Oct 2023 09:55:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619071.963638; Thu, 19 Oct 2023 09:55: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 1qtPkV-0003Ik-5o; Thu, 19 Oct 2023 09:55:27 +0000
Received: by outflank-mailman (input) for mailman id 619071;
 Thu, 19 Oct 2023 09:55: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=g4nO=GB=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qtPkT-0003HD-RZ
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 09:55:25 +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 9f2a69fe-6e65-11ee-9b0e-b553b5be7939;
 Thu, 19 Oct 2023 11:55:23 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PAXPR04MB9644.eurprd04.prod.outlook.com (2603:10a6:102:242::11)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.21; Thu, 19 Oct
 2023 09:55:21 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%7]) with mapi id 15.20.6907.022; Thu, 19 Oct 2023
 09:55: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: 9f2a69fe-6e65-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Q5u0jKeNZ3FMWKKwBdMh6kcexjhw1v5gm+dKPa496wQ0dtLx1mKKgoq1SYneDRAuBYs6XAP8nN5vGl//cn4Mz0QYDP5/AJO8UwRXbVoatwfrV9PGsey+TdMKQMHbqVws2K7iZ7VzoSXQYODzkJs6zrP5xvHLS3nxaNE6w5D6C/2B87tkPBKdUlgEgafD1RhV8Vbu4pKjkZ1P8RFJiJl3i92dYT0qXpJU8K1RnA+dYnG8aeiIa/CXillrW4tS8X5mfU/DC2Dq7q97zcA9Hp6MHjlhUXfOUqpU9WBb4UFT+Zzl9BLAiFxfIUpJNBp59w4OH2xbN4sDM9f6yLX6/6tx5Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=3IohAPnF4SWv4d3fg3ogEwxvxRU3rFs8TFodVbaqGoE=;
 b=eJ1ws1FTucTDWMN/caT7iBD4m/QcHiPmk3sce76CGwugc2cDkQTkqkAf+1Xp6oyE6ySsMJr2ui4U9MBKxwb/aku86ukqezBlN5AjlfUoJr816Ba5LU4Aj9HW0qIwtazNOwIVspfoSj3m339kXZUnppCl2fc9u4z8HekijLkYtagHE81hHAjphHYG8PF2le4ModhMrB1DInncxoFcmvME+uQfB4C+/RdPmrsLdfkPQL0X966XxBage5qZxF4sghY7eWoRSKJDgwdxsDTNxufI3kUL9476pTOEI6RExtDlBc7Vrg27g8FvMlpz+jlZ2xJIywSzS7Q9dQBjm+ldgnuNUg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=3IohAPnF4SWv4d3fg3ogEwxvxRU3rFs8TFodVbaqGoE=;
 b=M+ITmyfkP7BdXQBJAG1ab5qfE0RVxMTYQ/BKDNR7H8cs7fmM9oKOKVFE29JvhA5fiZaQRYfAQTmTuW5zoF8I/R2Os+1LuqukfxadEJ4vFtexfwgQhamSFw1N23Kmi9CUG6D031HgYa2a4fDXJM3lzjlVQJoyfbrV6w/RX/SHpLO3DnEjYd2hBuaJJrl4fFI6JOVDY1qpU2+xbyUnXTW8FSIn/02zf2ttAvLDrM4GFKP8TgG3YGPy8P84FnqFtkZKebGtqZ5P93iIZSvSSfh6Pyy1AbsEKTgvrPrqFKSS0THS01f0Fuot+fLEGyALRZVAXcnqdqF/eS8hEGjLfIaygw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <d4dca6d7-ac54-beac-26fc-5eaf80783a73@suse.com>
Date: Thu, 19 Oct 2023 11:55:18 +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 12/29] xen/asm-generic: introduce stub header pci.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>
 <597a482c70fef196e245a5d898ea6314a0c479ca.1694702259.git.oleksii.kurochko@gmail.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <597a482c70fef196e245a5d898ea6314a0c479ca.1694702259.git.oleksii.kurochko@gmail.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0156.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:ba::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_|PAXPR04MB9644:EE_
X-MS-Office365-Filtering-Correlation-Id: 2a149693-36ba-48aa-9bad-08dbd089814a
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	g5jNJIiIGMifXsrRR9VnMmxyEIDHM+V4sMcmM8Gm0UPo1fjUO4wJrMGiQDeNjkMVNEieIwPp2Pt7VzHl0fbxMa+mHt7wFhVelxoyG6GHNLo2UwDpPXOBP/J0u6MuyQ/WcFPIhe545ivwkWX654CQy0/vkWk8BZMp8BBwJWz0CAvJy/wp5iJyr8BbHn8R6+IsGMIw2aB6z4/fbHC0Ir41PeEFb46VxTAeAgzVxfDEjFd1rZ3XvSS+Uvkcq6BS0MWY2rnP4ku70OmeGjklOYHEHUsEMUFjvlicxkx1Jmf9cFfy9uukY+4pl8p8Wukq2WWQX9ioSYiPQsXjX91I7y6lmxOZ+ddx69unzh838nwaJOcMSVYjovkOvCo73/QzUWuAbsBMaB5LAZV5cyexgEChZr2lx+zMA/jK9sO0J3O8O+pGbSKOnZgzyXPB5qgsipw+OpEiNr/SNKu09mVIKtbkKcd1F9wPL8LHJLwd/lA1haAsPicT6EsQUzgSxmvDy/yjMXHWo3VgPlGtOvsqJzJhBcMjEXhb6OuZM4VXkSvHLhuNmZjCaI6LDx1vaSikAj8E9KfF1Dk/wQ/8v7B+g76LM9PPu2f4qpRGPj6xHfz+yCv3TsqzJ7eGtjVbX7PtzQwHHkKUuJvPF720dylaQEImV1VrFLAr5AmOjC3Lalo1LUQ=
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)(376002)(136003)(346002)(230922051799003)(186009)(64100799003)(1800799009)(451199024)(31696002)(86362001)(31686004)(36756003)(316002)(54906003)(66556008)(6916009)(38100700002)(478600001)(66476007)(66946007)(53546011)(6512007)(6486002)(6506007)(26005)(2616005)(2906002)(8936002)(5660300002)(41300700001)(8676002)(4744005)(4326008)(41533002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?ZmsvSFFqR201Ull6blVwYnpzMlBOb2pJTi9UaFFFU2pHeTBBVm1uZHRhQ0M4?=
 =?utf-8?B?eVBsamFsZ1NwUTI0K3B5YWNLZWhwc0RpaTRVVWZtdHVtU0syM0tsbjg0bElh?=
 =?utf-8?B?NHV5aytvU0V6d3FBdTlIZVZ5bUJibXNUYXFkTE5idlhaZ014OWVHcmVFbkhE?=
 =?utf-8?B?NjRZOXQzZ1pRU3lnb3FwSWc5bHdhVmRhaDNsN3BpdzQrUVh1eFdmUVFmb2o3?=
 =?utf-8?B?c3Z5Sk1tUzdwNVFybE5nWmtPZGpGT2pEYzUrN1ZTcXNMcTBjTzVBcUhqcmZy?=
 =?utf-8?B?UkRFUTZvSW5EemY0VERvcHNhTmE1QjBaOUdidjIwNDRqVWRvOU9iNjdmblZS?=
 =?utf-8?B?V0Q3cVQyazZ4ZldYa2hRQWk2ZUF4cWhsZ0kwWkthWWRFd08ydmpqN1JpU0ZK?=
 =?utf-8?B?cm5RRDFUQ1JwbHBPTVpTZ0JDNXdCckFSakpGWGliRXBMUzM4Sk5XcTRGdExI?=
 =?utf-8?B?amZiYXJYZWFpbDdLM1J4NFpiOWxLaXoveFk4RXRqbkJ5RnBheHlWN3lodWRq?=
 =?utf-8?B?T3M0RlgrTkpmZ29uYVJCSThIMTRXVEhGME1sSk1hSm8wM096dUhlb1FWUS9B?=
 =?utf-8?B?cUQ4TmJpdGRWZEp0eE82M3IyUWZEc01yaFREUWtIbytOQTc5azZORmhaRjFm?=
 =?utf-8?B?NFYvYWVoVHVxNy82eVVkN0ZzeDRlMlJZK1FlUG5Pdks3dWlZWkkzdlh1YkFO?=
 =?utf-8?B?RFFkSVlocU53OXp1NGN1Rzl5N3ZCN1hQNGpiOGZVdm03bmFvQ0ZQVzc2MGFF?=
 =?utf-8?B?cWJBZjZBODdzQkplSUpwK1BydXR4d3VXbEhsSWthMWZQU05BNFlvRy9nbTI3?=
 =?utf-8?B?Qm1sRzZtK2w4eWozemhjMFdyV0hJWWNKSUt0TENHdCtxZzBCbHQxKzlNQWNH?=
 =?utf-8?B?NWl5ZE40ektnbGQ4eXZZSkg0V2FELzRTSXh2enNIVkozUXFPVHM2UnluNm1m?=
 =?utf-8?B?ZlE1bEwwNURiMHhmNkhHYWUzejloUHZVR2Jndml3VjdSM3I0ZlFRS1hwUis1?=
 =?utf-8?B?RVB5VmtuT3NwdXNnd3prRDFKVkR5K0hIYjV0bXdqajdIeC8ybC81cVk5REVq?=
 =?utf-8?B?elVwdVJvekdPWGl4TFptajV5eTZkQTd6SWVmZjVSb0tjNlpVTDkvZDNORVFC?=
 =?utf-8?B?SDJwRjFWVENRdzl2cTNzaDkzMnQ4VTloL2xTTWpJL1lQYytvSmY5d1VzVmpy?=
 =?utf-8?B?TnNsYWtEeEJMei9pOUE0VWV2NVQ5anZxZjJ3OHNvRExLNFJHZGpDZGdGa2VM?=
 =?utf-8?B?bXB1Y1hCdkk3NWErc0hNR3NrRDZYT3daRTExcy9PVWhmYlFIbnV5MnRiaElO?=
 =?utf-8?B?WGVHUXRQWmVPT0ZNbWh1SXFFUWU2M0VGR2x2SDBJcHdyQTVoNFQ4bGJodWRy?=
 =?utf-8?B?WWFiVCs5dkZHRERlenF4SWtLaHR4VDVCKzZ4ajFndjl3Mm5hN2NlZnFkcDJ5?=
 =?utf-8?B?ZnJVR3M4eFpwWmRkK2UvTHdRbW0vSnNyZHhpWE5Kc0xCTEZpdDlsM2FMUWFx?=
 =?utf-8?B?UTRxWk5XK3Z2MTNGcGNUZm04ejkzajF6QlU2eGhFbzE4U3JZK1p6ZnUwcC9I?=
 =?utf-8?B?dXp3WjZJcTBJMjZIYTFNNm52aUkvUEl3aXpRdzdKOXV3RVY4ZWFGV0d3cHJC?=
 =?utf-8?B?YmRxaTlSUWdocTZMaGNkdjF3dVJQUGhlQXc3S1NYMTZRN25Cc1RtMkVka2hQ?=
 =?utf-8?B?UVJPa1Z0cW91b3J3SS9ZVytoV0s3bUxQRk1OejJ5ckFOMERtR0tFbVo4RWpK?=
 =?utf-8?B?bkpDM0g0aGNMbG4xbHJRQnpvVlQ3OTlMSmVXUFZ6czJQd09PelRjK0R0MUdH?=
 =?utf-8?B?MlVKT2V0cXJiZlpEOUg5RGVIUFJpbmkxQ0x4K2hncDBSR05JUFN3N0dNekVT?=
 =?utf-8?B?WFFwV0NLOGdYVzZPK3U4ejl0UGVUdkxJajlTYWNsWGsrY09PUFprcUNkUitp?=
 =?utf-8?B?cGk2eTZZMWJxUG5KbW8rcG5IV01GWStRaTNVY2wwYW9xZnhIU2hNcm1EKzAr?=
 =?utf-8?B?cjU2K3IxZzBtdWk5RUFXWElmWFJkK2NIaTV1Z2NCdW1qNFNiNDRXaHNaOHdS?=
 =?utf-8?B?K3Z4YThiUXZxMEw4UHRBZVA4ZkdGU3R1RFBsUG9PTzRXSm4xL3JMWkFjeDJi?=
 =?utf-8?Q?/7e6NFXh6bk3sKTZ8pe6W3WB5?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 2a149693-36ba-48aa-9bad-08dbd089814a
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Oct 2023 09:55:20.2348
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: UKnRAu+7rJIKfTSCJ+RdE+AKmkt604f2tV2TFg6Au5U6Oa1CBHYbt62Lo7jJV1qkMsJqZ7dE9ouyNq19eAG6yQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB9644

On 14.09.2023 16:56, Oleksii Kurochko wrote:
> --- /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__ */

While more involved, I still wonder whether xen/pci.h could also avoid
including asm/pci.h when !HAS_PCI. Of course there's more than just the
#include which then would need #ifdef-ing out.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 10:10:02 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 10:10:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619075.963648 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtPyS-0006m3-Gk; Thu, 19 Oct 2023 10:09:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619075.963648; Thu, 19 Oct 2023 10:09: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 1qtPyS-0006lw-Di; Thu, 19 Oct 2023 10:09:52 +0000
Received: by outflank-mailman (input) for mailman id 619075;
 Thu, 19 Oct 2023 10:09: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=g4nO=GB=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qtPyR-0006lX-7a
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 10:09:51 +0000
Received: from EUR01-VE1-obe.outbound.protection.outlook.com
 (mail-ve1eur01on061b.outbound.protection.outlook.com
 [2a01:111:f400:fe1f::61b])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id a3129859-6e67-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 12:09:49 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PAXPR04MB8687.eurprd04.prod.outlook.com (2603:10a6:102:21e::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.23; Thu, 19 Oct
 2023 10:09:47 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%7]) with mapi id 15.20.6907.022; Thu, 19 Oct 2023
 10:09: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: a3129859-6e67-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=AdEcmroDke+mtqgJjhjtK8t/GQZddYR6zFAwVVz5LcVPf1+wcSdyel7Nh8bfAwSiOqywoTWzSP78HG32Fd5E/ld7rTi2vcshmYUQemycQPpfIrHQFE7ckQjPH0SfIHqoPdIuU4lexqjSss4x/DLUwYniniStJ6ESUSkuxKWUj8TDL69ufQPlqeLdTQph0RYdfO6upqMovCLWHnwKKxHGal7MxwSbPseTwr5SpP4accgSjRHEdv5kG532CJKEn8t8Y5hBnyxhysPjuDoq6H0PC8moGjF1vzyo3OTTiKrkYUUlbVnx15oeFEDht40G//nBQDK4ObfR8tx98qEvDCR25A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=8OCeDJBhsTdZBNp/OY0T0KSEoMZYq8hN/KYPp/Fz8ZA=;
 b=lplauD2MTYGkPcMavvye79beA1lyCptmwacAQ+i7bxGxQF8eTLFkzbADYEM8+/uYRchJgdlWLxasb80eKScGBe1hq7r2oBYhDhKuWPz4qmMLnOU3CiKUj/TR0LZVuthpOn/ed067sg1BlXLptjD+JHsypedbsznUMmF81tqTZpFyrRapM2F5X5zvrf4MeyWU1EZH3xICBwSTF6KxCvLz2WqTYTLLhgcF+zgF8D298YLwH679FDUxH45fwvk4S3A23T6hhjfjellSpH0WenORnPy478LaNDYULpvuzCMfD38poDLPIKciLdlRO9E65XA0XxBYwsP7ElPyX8LaWsGIew==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=8OCeDJBhsTdZBNp/OY0T0KSEoMZYq8hN/KYPp/Fz8ZA=;
 b=0C9dqpvUr0aH2XEln4JIxJmKsmZyQ2B/9iu6tlHFfWra3GGXLUrL0uqP3dXv2PJpxD+svSzGpQTK4j3YY7hgGug1B6L6fL/SOtv/gVT3WM+FpgxWfrLR/fsdFlYEpahcv27dl2AZhUhHusOFXK2/UoolzhablEQKNRTM6qe092Ib5b/GXvBaoyClCcJj7I/4i5WCfpgZfe3w6tj1uDdgXUI0OL1AL4yqiJfvL4jWk8JPLSrqHOBpae1Af0nHdN4rRYQ9KB7DSX6Vg0KIEg5Yppi0p1uwCGxoQhpngbg7OAKnO0m1qHJtdUkoHwZGrECSP4EnqZjmCdZkZOqpe/wCnA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <0efa2ef6-8815-4b39-bb53-f1d5902e71c7@suse.com>
Date: Thu, 19 Oct 2023 12:09: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 15/29] xen/asm-generic: introduce stub header
 xenoprof.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>
 <0b7805d6bd5f16d06656093d964d5d90030958d7.1694702259.git.oleksii.kurochko@gmail.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <0b7805d6bd5f16d06656093d964d5d90030958d7.1694702259.git.oleksii.kurochko@gmail.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_|PAXPR04MB8687:EE_
X-MS-Office365-Filtering-Correlation-Id: 92ece903-448e-4ab0-5232-08dbd08b85e0
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	JaC03C7HFVnGUh70Pwq5VOsGIto7InwN/+3YVviK687yhvOFBUBqRRCXlCtAwl/HZgVfTkVoa7HycH6y95irxv6klHGXKqYPC9y10HWGkXwwpa+/vnhUKamZV89DawVsbjWH4lR4O8JPxqMwfz46VFzzsnRwZ68p+tgTdHQqp4yW9L22VUsGyycT82t22hQkgeC5NPkc8cnecdCp6Iq2fozSOxsWM7P6PacgLm4D+DclaqSwY3JUtJ8eCEIdt3EoEyIe/x5VjIWRlWQfzaA5KpFOuR5k+J8j8AIld6A/hPg/aK5MQyWgHPOqZM2bGSbcPQy0lK+nHDZsAZT0PFZ7NyiHrvGU0qAscMvhrWzby3WSEdQ0z0S8Ia+7lf9/2wANFx5nB1eLCkCcoVP54Dt8F9DKX24/4OctV4mxwGiyF9XK6NaErVDkb+MQ3Q3UOPOoLutGhBXBJWseuOWieM0DaNF1KCsajP3JaRmqkoE63qNkQTjLKny2X/Ml2hTyMyx9lWs0oCaDU9iUFaKMq+Su175/iWJJPgbIn9jGue6Neo1oqSmYe/vVD6RV4oUQn167N2ftlE+ovp7B9mEphkIGKhi3fd1QoL5X1OYaZGXZnt/OtlVsrJlIcJ7dhqP7f3z0cntW1MredXQPxGr8atIER7YxGJrb40k+zYiwdsTBvBA=
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)(396003)(136003)(230922051799003)(451199024)(64100799003)(186009)(1800799009)(2906002)(4744005)(478600001)(6666004)(6486002)(38100700002)(4326008)(5660300002)(54906003)(8936002)(66476007)(8676002)(6916009)(36756003)(66946007)(316002)(66556008)(86362001)(41300700001)(31686004)(6512007)(31696002)(53546011)(6506007)(2616005)(26005)(41533002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?NXZMamRnazIxWWtpL3pQczk5VWxRV3ZGVEtHbEpkMFV4bFZRa3VFMmJHNDYy?=
 =?utf-8?B?akFrMm5qRU5BR3diYk1kZ00zbThGaGZIb0NrZG1CNyttdXlqNmxBSHMwWWEw?=
 =?utf-8?B?VFJSdlJyd2grQ09kdFBCTEM1am9ISVVzWWljZ3AxcFl0ZGhKTnNjeEYwNDhz?=
 =?utf-8?B?QlMzOUJwWUE4cVdkNi8rU3RTRjhqYzVxOUR3Vkk2dGYvcnRSNXIySUhlRWU3?=
 =?utf-8?B?alk5WHZIYnRTQ1hTRjhXTVFOcTcvK0NGc3A2ZE10WjVOK25FYXV4RGFJQmQ4?=
 =?utf-8?B?OGZjdHhBN3R4eWRWR3NQOEo0TVhhTFdHUDZxVjYxZ0pHWUh4dkFUUGZjaHk4?=
 =?utf-8?B?RnhjKzBOS3pYMllybFc0dDVPSW8rK1pBQjQ2SUpFWXVoYzk1eGlxNC9GT2xP?=
 =?utf-8?B?VDQ1TDUvbGtSS040WWU2REFvem5LTzBjWFhPa0g3Z2JJbVdEQ2hiZWY0MnZU?=
 =?utf-8?B?MjQ5a3IySW0wRm0xbkdWY0wyNTJqZkl1RzdwRHZLWG1UYVA0QVBFSEhSL2xj?=
 =?utf-8?B?a1lULzA0RkNMRGJsZjFPUnA5WWl4cVlUelhnejcrT0Y3bnhtUXRUL3ZZZUlU?=
 =?utf-8?B?dHJqRmZ1Y0RvelBDL0xid1YzU2Zkc0lLSnB0VVB3L0J3MTJCQU1KajNjb2c3?=
 =?utf-8?B?aFVRNzdCSVNyRitIbGxzTXBadjhkaXBKRVBjSlhpcUpIR09rakFMNXNGRktH?=
 =?utf-8?B?OWZ1cHNVR3BNOXNBN251aUVyQkkzMlpROTZoQjlPMENWcHJwb1lPSGNGemEr?=
 =?utf-8?B?UHpBQmtpNHJRZ0gzMGQ4MnAveEZQSkJUUnRrV1cwTlN1bnZDOFFNWHNwZ1Rk?=
 =?utf-8?B?U2NsOVdBUkRRRG52T3JpR1V1QUIvR2dSblBXQjJpaE9yMm5ZYitKNmtkYjRt?=
 =?utf-8?B?bzJFMk04aVJSNXprRGdmNmlDbHc0Z0h3MnM4ZDIwajVHNnJIL3UzWDZLZWZK?=
 =?utf-8?B?Zjc4S1loVlpuK3hJTkJwWmN4bjRiNGhvbk1hWTA3L2RBOG9xQnVDbk1RNUFD?=
 =?utf-8?B?TElJYnRJbFI5OUFINEorcmE1b1Y1OG81aWI3T2M4dkljTHloQXBqTWRFN1ZD?=
 =?utf-8?B?UlpDTTdQTCt2NlJSYWIxS1Fzc0NHaW1oOGFSd01MbWc3UEF2bXFVWE1HVDB5?=
 =?utf-8?B?eXJrZEVIVkE1TVVPbWMxcE9kQ2NDMWgvMFI5QXhSUXZBYnV4c1RDTEZmbTBy?=
 =?utf-8?B?di9zUUg1TENha2J3Q0tiY3JHNVNpcVlvMWVaWGlGbGMzWFpXQ0huRk9jMEZ2?=
 =?utf-8?B?QWhBUm1QWlBhZTNKdDNKMjdWTzdVUjU2NmtaS0dTL2FRRFJ4VEJWTVRYU01R?=
 =?utf-8?B?S0F2R0U3cnp2MDZCM2MzWlhIS1prZWRoOEo1WTh2NWVnNytLdFg1ZUVLbUxv?=
 =?utf-8?B?TzcyUm14d0FVUkI0eC9nb1pDMXJYalh5bkN3c1c4WkdJdWFiUVpPZis5dGky?=
 =?utf-8?B?VjdXTGxEZkFrUmtYbnB1b1RmSGZUSVJQdGZnb0YyaVBBZWJEazliZ3NCaWxX?=
 =?utf-8?B?Y0d0ZTlsNkViT296emEvbUFMekpES2M3ZDFLOWwweWVtTno1RWdtcUVZUy9q?=
 =?utf-8?B?elFJZzBDYmkxZ0h4UjljNjJTVXlEVzZXbUwwa1hKNmNsdjhXMFdwZUpwOVVX?=
 =?utf-8?B?QWJDcnlSeGV4N1hPeSsvdHRnQjZ4d09nOFBrQ1E0WWN3MUVhTlA2K0kvc0JY?=
 =?utf-8?B?SjN4cmJsRDQ2cXlnOWhzZkJQUEpra0kyYVh3R2hydkRlSjlVYTVvdlF0aStD?=
 =?utf-8?B?QVV1MXFUVnFmUVJlZmJuaTIwbGE2MEhVK01iTDV3YkpGM0hjdGZtcGZDbmg1?=
 =?utf-8?B?UmsrL1RjM3R3YlpCaUF4cTZSSFFNM1N1c2FzR0wraXlxTHg5U21ZNytEQkNR?=
 =?utf-8?B?UVlHeGRWdkN4U3kvT01GdHAreThkeFZ4cW9hcmtDSkZSUVVzUGVVTEtLK1FH?=
 =?utf-8?B?YzZ2SlNXRXg4TE93TWNsWG5zcFFVc044NS9OM2JBSUpVblM2YTlTSVU2aDFu?=
 =?utf-8?B?ZFVhSVRRYndMRDNEbVd0V1RBcXEzNDBrUTNlbHRwaFBtdUVpOVErRzdJbmpC?=
 =?utf-8?B?ajBmVTluajNialpjajlNQjRzQ3FCYkM1WUxjZVdmWEh6bkVGdDd1SUhCVWN2?=
 =?utf-8?Q?waK6YknWiB5TbhQmrUXA0HFOD?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 92ece903-448e-4ab0-5232-08dbd08b85e0
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Oct 2023 10:09:47.0552
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: XiFmQFrQP6ffmGpSU6FsPDC4XlRGbQY/pV39uFuq8klENqeSpCVQn1xgYV11XhKD4hpvyRfwuyLzQ/37CfZZew==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB8687

On 14.09.2023 16:56, Oleksii Kurochko wrote:
> --- /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__ */

I've made a patch to move #include-s in xen/xenoprof.h, dropping Arm's
header (and none going to be needed for RISC-V or PPC). I'll send that
patch in due course.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 10:11:38 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 10:11:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619077.963657 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtQ08-0008VS-Qy; Thu, 19 Oct 2023 10:11:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619077.963657; Thu, 19 Oct 2023 10: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 1qtQ08-0008VL-OS; Thu, 19 Oct 2023 10:11:36 +0000
Received: by outflank-mailman (input) for mailman id 619077;
 Thu, 19 Oct 2023 10:11:35 +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 1qtQ07-0008VA-QR
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 10:11:35 +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 1qtQ07-0003kl-3g; Thu, 19 Oct 2023 10:11:35 +0000
Received: from [15.248.3.1] (helo=[10.24.67.33])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qtQ06-00061W-TY; Thu, 19 Oct 2023 10:11: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=YGB9CJL1cQyyft3uKtTkeRUczYjJ7235rsCDSQl2Of8=; b=P8KKAAw6TF3UFw4Zzs9D/pkJUO
	8DF+Fkx/hXuvUs6X+Q5XzUBCxi6fPeqckpeOfXPtt51QrlLJ3zlbAcXM/aAHHTpNCM+Ul5cIKiXzx
	9C7OWmyIvC4KBpGUJJA74XQFicgPDGnhCM+pMu3mhDDDNXEyhlSScxUcwTuCFjeoZWY4=;
Message-ID: <15923aaf-c005-45fb-8bb4-50d2e0995f18@xen.org>
Date: Thu, 19 Oct 2023 11:11:33 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN PATCH 1/4] xen/arm: address violations of MISRA C:2012 Rule
 13.1
Content-Language: en-GB
To: Simone Ballarin <simone.ballarin@bugseng.com>,
 xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com, sstabellini@kernel.org,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
References: <cover.1697638210.git.simone.ballarin@bugseng.com>
 <31a926a09dfcef43d13a402fd3b235aeba48009d.1697638210.git.simone.ballarin@bugseng.com>
 <41d82896-5471-4eaa-8bdd-a192e28d5546@xen.org>
 <3de5e340-30bb-44aa-affd-89f343ed1fa1@bugseng.com>
 <7066a646-711c-4dce-f3c0-effb6ae91a39@xen.org>
 <67782815-7803-4ef5-80f4-db6181f7a6e2@bugseng.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <67782815-7803-4ef5-80f4-db6181f7a6e2@bugseng.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

Hi,

On 19/10/2023 09:43, Simone Ballarin wrote:
> On 19/10/23 10:19, Julien Grall wrote:
>> Hi Simone,
>>
>> On 19/10/2023 08:34, Simone Ballarin wrote:
>>> On 18/10/23 17:03, Julien Grall wrote:
>>>> Hi,
>>>>
>>>> On 18/10/2023 15:18, Simone Ballarin wrote:
>>>>> Rule 13.1: Initializer lists shall not contain persistent side effects
>>>>>
>>>>> This patch moves expressions with side-effects into new variables 
>>>>> before
>>>>> the initializer lists.
>>>>
>>>> Looking at the code, I feel the commit message should be a bit more 
>>>> verbose because they are no apparent side-effects.
>>>>
>>>>>
>>>>> Function calls do not necessarily have side-effects, in these cases 
>>>>> the
>>>>> GCC pure or const attributes are added when possible.
>>>>
>>>> You are only adding pure in this patch.
>>>>
>>>>>
>>>>> No functional changes.
>>>>>
>>>>> Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>
>>>>>
>>>>> ---
>>>>> Function attributes pure and const do not need to be added as GCC
>>>>> attributes, they can be added using ECLAIR configurations.
>>>>> ---
>>>>>   xen/arch/arm/device.c              |  6 +++---
>>>>>   xen/arch/arm/guestcopy.c           | 12 ++++++++----
>>>>>   xen/arch/arm/include/asm/current.h |  2 +-
>>>>>   3 files changed, 12 insertions(+), 8 deletions(-)
>>>>>
>>>>> diff --git a/xen/arch/arm/device.c b/xen/arch/arm/device.c
>>>>> index 1f631d3274..e9be078415 100644
>>>>> --- a/xen/arch/arm/device.c
>>>>> +++ b/xen/arch/arm/device.c
>>>>> @@ -319,6 +319,8 @@ int handle_device(struct domain *d, struct 
>>>>> dt_device_node *dev, p2m_type_t p2mt,
>>>>>       int res;
>>>>>       paddr_t addr, size;
>>>>>       bool own_device = !dt_device_for_passthrough(dev);
>>>>> +    bool dev_is_hostbridge = is_pci_passthrough_enabled() &&
>>>>> +                             device_get_class(dev) == 
>>>>> DEVICE_PCI_HOSTBRIDGE;
>>>>
>>>> The commit message suggests that the code is moved because there are 
>>>> side-effects. But none of them should have any side-effects.
>>>>
>>>
>>> device_get_class contains an 'ASSERT(dev != NULL)' which is definitely
>>> a side-effect.
>>
>> Just to confirm my understanding, the side-effect here would be the 
>> fact that it traps and then panic(). IOW, if the trap was 
>> hypothetically replaced by a while (1), then it would not be an issue. 
>> is it correct? >
> 
> No, it isn't. A infinite loop is a side effect.

I am not sure why. There are no change of state here.

> 
>> I can see two solutions:
>>    1) Remove the ASSERT(). It is only here to make the NULL 
>> dereference obvious in debug build. That said, the stack trace for a 
>> NULL dereference would still be as clear.
> 
> Removing the ASSERT just to make MISRA happy does not sound good to me.

I didn't suggest the ASSERT() just ot make MISRA happy. I suggested it 
because it has no value here (we still have stack track if there are any 
issue).

> 
>>    2) Replace the ASSERT with a proper check if ( !dev ) return 
>> DEVICE_UNKONWN. AFAIU, we would not be able to add a 
>> ASSERT_UNREACHABLE() because this would be again a perceived side-effect.
>>
> 
> Replacing it with a proper check can be a solution, but I still prefer 
> to add a deviation or move the invocation outside the initializer list.

In general, I am not in favor of adding deviation if we can avoid them 
because the code can changed and therefore either moot the deviation or 
hide any other issue.

[...]

> Yes, sorry I was looking to the wrong definition.
> In ARM the problem is the presence of a *volatile* ASM.
> Please take a look here:
> 
> https://saas.eclairit.com:3787/fs/var/local/eclair/XEN.ecdf/ECLAIR_normal/arm/for-4.19/ARM64-Set2/latest/PROJECT.ecd;/by_service/MC3R1.R13.1.html#{"select":true,"selection":{"hiddenAreaKinds":[],"hiddenSubareaKinds":[],"show":true,"selector":{"enabled":true,"negated":false,"kind":0,"domain":"fingerprint","inputs":[{"enabled":true,"text":"0da7f0c9aea5491eba343618f965c81f5d7aed3c"}]}}}

Ok. So the problem is the READ_SYSREG(...). Is there a way we can 
encapsulate the call so we don't need to use your propose trick or 
deviate at every use of 'current'?

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 10:16:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 10:16:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619083.963687 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtQ56-0002Tn-PB; Thu, 19 Oct 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 619083.963687; Thu, 19 Oct 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 1qtQ56-0002Tg-Lk; Thu, 19 Oct 2023 10:16:44 +0000
Received: by outflank-mailman (input) for mailman id 619083;
 Thu, 19 Oct 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=CTk7=GB=cloud.com=kelly.choi@srs-se1.protection.inumbo.net>)
 id 1qtQ55-00025d-QV
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 10:16:43 +0000
Received: from mail-ed1-x52d.google.com (mail-ed1-x52d.google.com
 [2a00:1450:4864:20::52d])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 98978c5a-6e68-11ee-9b0e-b553b5be7939;
 Thu, 19 Oct 2023 12:16:41 +0200 (CEST)
Received: by mail-ed1-x52d.google.com with SMTP id
 4fb4d7f45d1cf-523100882f2so12803155a12.2
 for <xen-devel@lists.xenproject.org>; Thu, 19 Oct 2023 03:16: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: 98978c5a-6e68-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1697710600; x=1698315400; darn=lists.xenproject.org;
        h=to:subject:message-id:date:from:mime-version:from:to:cc:subject
         :date:message-id:reply-to;
        bh=6AjigDeSar34ErFT+otJ+m8rjpOHadAzLwS+oaAnvCY=;
        b=HHKmkjsWo80HATRU5e7cMCfiZA53T63HUcKHDLjFbYCzXJGq7m2v4gcnPnyRj269Im
         8nz0HA32Vt88iuSLtrPVk13nVtJLDhfA7R3aaE73LoeRA+uMkLoUr9B5DXGXwuERO+vf
         rEOEhQ0qaLXBRXoqmCiCQe8HOdjTLGt7MBeIM=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697710600; x=1698315400;
        h=to:subject:message-id:date:from:mime-version:x-gm-message-state
         :from:to:cc:subject:date:message-id:reply-to;
        bh=6AjigDeSar34ErFT+otJ+m8rjpOHadAzLwS+oaAnvCY=;
        b=VJf7RE6TYOp2O3x2muL6OOXJ/f5L/6YCVSU/hNVrfYr1quNq4ltacJTFdSdBOqqLUT
         8Mt5QBbq2dHQshstnFXgdPDESqJJ4BWviQIrQzrR6sCOW3ohkw/9ZPWjrDW9+eIsKjHM
         V3sy3rJxpZFVAy2TpIywmj3SFt04TvzTyFLagLhGBI/KRqepaKhNvmNtuCX800lp7+dO
         jFGQN+IML3S/6fnl30N8A4GFCoOo4oXDdfO8MQdM/MG4oWGEEx/Fj1XLhvqcE/rkVdFT
         G5N5qp5D05SxdAKPQpOEfwMomOz3AugNJSDIqv0tKzOpB5M8uHzEQPKyQGBoxpHstVmz
         nQ/A==
X-Gm-Message-State: AOJu0YzlBhtRp7y9qPj80Z2HYpyz9VzdbQx9amIJejIJAcd85FmmX8pq
	uOwTs228Hl8rtknekyfiaOjiNPLL/HntrKrgC+nowiNVKFfGBxNhjr4=
X-Google-Smtp-Source: AGHT+IGkhjtGeejJJXMobzWb8aDwbkhmdt0fccQfKjtPA+9Qmy4+eum2npX7W/Nrsu3NEWJ4IK5D9UjOZU83G7f/B6M=
X-Received: by 2002:a05:6402:274f:b0:52c:b469:bafd with SMTP id
 z15-20020a056402274f00b0052cb469bafdmr1333529edd.41.1697710600332; Thu, 19
 Oct 2023 03:16:40 -0700 (PDT)
MIME-Version: 1.0
From: Kelly Choi <kelly.choi@cloud.com>
Date: Thu, 19 Oct 2023 11:16:05 +0100
Message-ID: <CAO-mL=zPB6DPC-6mh9u3WSJkirDKLRNDVHWnRvqCaemZfT8Yvg@mail.gmail.com>
Subject: Documentation survey results
To: xen-devel@lists.xenproject.org, xen-announce@lists.xenproject.org, 
	xen-users@lists.xenproject.org
Content-Type: multipart/alternative; boundary="00000000000043bdcc06080f0d33"

--00000000000043bdcc06080f0d33
Content-Type: text/plain; charset="UTF-8"

Hi everyone,

First and foremost, thank you for your time in providing valuable feedback
on our current documentation in The Xen Project.

This survey has now concluded, and I am happy to share the results with you.
Please find attached the full survey results here
<https://cryptpad.fr/file/#/2/file/9dhImqlBHovRuYMe-m8Eh3jO/>.

*Summary:*

   - We've received valuable suggestions for enhancing Xen documentation,
   including keeping it up-to-date, adding step-by-step tutorials, providing
   debugging guides, and diving deeper into architectural aspects.
   - Users recommend platforms like Doxygen, Sphinx, and GitLab for
   efficient documentation management. Incorporating visual aids and practical
   guides is emphasized for better user engagement.
   - A total of 35 participants gave feedback, with the majority having at
   least 2 years of experience and 10 who have been in the project for over
   10+ years.
   - The majority of the participants stated they used the Xen project wiki
   as their primary source for documentation, closely followed by Xen bits,
   asking the mailing list, Matrix/IRC, and distro documentation. However, one
   person didn't know we had documentation.
   - Overall it is clear to see there is a demand for clear and accurate
   documentation. Although the existing documentation has some benefits, the
   majority of the community would like to see this improved and changed.

*Next steps:*

There is no single solution that solves all the issues instantaneously.
However, we have identified the key aspects of updating content, especially
how-to guides for new users, and simplifying it for everyone to find the
information they need.

The community manager will be working on identifying different ways to
ensure users' suggestions are acknowledged and implemented. The next steps
will be to collaborate closely with the community on updating the content
and potentially the platform. The improved documentation will likely be
planned to be a part of the new website for The Xen Project.

Many thanks,
Kelly Choi

Open Source Community Manager
XenServer, Cloud Software Group

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

<div dir=3D"ltr">Hi everyone,<div><br></div><div>First and foremost, thank =
you for your time in providing valuable feedback on our current documentati=
on in=C2=A0The Xen Project.</div><div><br></div><div>This survey has now co=
ncluded, and I am happy to share the results with you.</div><div>Please fin=
d attached the <a href=3D"https://cryptpad.fr/file/#/2/file/9dhImqlBHovRuYM=
e-m8Eh3jO/">full survey results here</a>.</div><div><b><br></b></div><div><=
b>Summary:</b></div><ul><li>We&#39;ve received valuable suggestions for enh=
ancing Xen documentation, including keeping it up-to-date, adding step-by-s=
tep tutorials, providing debugging guides, and diving deeper into architect=
ural aspects.=C2=A0</li><li>Users recommend platforms like Doxygen, Sphinx,=
 and GitLab for efficient documentation management. Incorporating visual ai=
ds and practical guides is emphasized for better user engagement.</li><li>A=
 total of 35 participants gave feedback, with the majority having at least =
2 years of experience and 10 who have been in the project for over 10+ year=
s.</li><li>The majority of the participants stated they used the Xen projec=
t wiki as their primary source for documentation, closely followed by Xen b=
its, asking the mailing list, Matrix/IRC, and distro documentation. However=
, one person didn&#39;t know we had documentation.</li><li>Overall it is cl=
ear to see there is a demand for clear and accurate documentation. Although=
 the existing documentation has some benefits, the majority of the communit=
y would like to see this improved and changed.</li></ul><div><b>Next steps:=
</b></div><br>There is no single solution that solves all the issues instan=
taneously. However, we have identified the key aspects of updating content,=
 especially how-to guides for new users, and simplifying it for everyone to=
 find the information they need.=C2=A0<div><br></div><div>The community man=
ager will be working on identifying different ways to ensure users&#39; sug=
gestions are acknowledged and implemented. The next steps will be to collab=
orate closely with the community on updating the content and potentially th=
e platform. The improved documentation will likely be planned to be a part =
of the new website for The Xen Project.<div><br></div><div>Many thanks,<div=
><div dir=3D"ltr" class=3D"gmail_signature" data-smartmail=3D"gmail_signatu=
re"><div dir=3D"ltr"><div>Kelly Choi</div><div><br></div><div><div style=3D=
"color:rgb(136,136,136)">Open Source Community Manager</div><div style=3D"c=
olor:rgb(136,136,136)">XenServer, Cloud Software Group</div></div></div></d=
iv></div></div></div></div>

--00000000000043bdcc06080f0d33--


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 10:22:15 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 10:22:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619108.963697 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtQAM-0005Zn-D0; Thu, 19 Oct 2023 10:22:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619108.963697; Thu, 19 Oct 2023 10:22: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 1qtQAM-0005Zg-A7; Thu, 19 Oct 2023 10:22:10 +0000
Received: by outflank-mailman (input) for mailman id 619108;
 Thu, 19 Oct 2023 10:22: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=AWKy=GB=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qtQAK-0005YB-Qo
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 10:22:08 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 (mail-am6eur05on20601.outbound.protection.outlook.com
 [2a01:111:f400:7e1b::601])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 5a856a20-6e69-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 12:22:06 +0200 (CEST)
Received: from DUZPR01CA0222.eurprd01.prod.exchangelabs.com
 (2603:10a6:10:4b4::29) by DB9PR08MB9849.eurprd08.prod.outlook.com
 (2603:10a6:10:462::19) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.36; Thu, 19 Oct
 2023 10:22:03 +0000
Received: from DB5PEPF00014B8C.eurprd02.prod.outlook.com
 (2603:10a6:10:4b4:cafe::4a) by DUZPR01CA0222.outlook.office365.com
 (2603:10a6:10:4b4::29) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.24 via Frontend
 Transport; Thu, 19 Oct 2023 10:22:03 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DB5PEPF00014B8C.mail.protection.outlook.com (10.167.8.200) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6907.24 via Frontend Transport; Thu, 19 Oct 2023 10:22:02 +0000
Received: ("Tessian outbound 028b72acc2da:v215");
 Thu, 19 Oct 2023 10:22:02 +0000
Received: from b8cc3c7b04a8.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 17C4B66C-6A5A-4E3B-B6B5-98AADA88E828.1; 
 Thu, 19 Oct 2023 10:21:55 +0000
Received: from EUR02-VI1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id b8cc3c7b04a8.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Thu, 19 Oct 2023 10:21:55 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by GVXPR08MB10449.eurprd08.prod.outlook.com (2603:10a6:150:157::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.21; Thu, 19 Oct
 2023 10:21:53 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41%4]) with mapi id 15.20.6907.022; Thu, 19 Oct 2023
 10: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: 5a856a20-6e69-11ee-98d5-6d05b1d4d9a1
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=63SHCnY+JwYxHH0v7V3GFQAXf7A7Bxi0BaX6dcLHy6Y=;
 b=GyfdWmXtCVdJWrck45psuDPEx5cdx8ePpRoCt6hhEFlHvDYreewl9nWs8tQkAl/c8rYz3GrSCPjzYqZzVmteA1+MnpSOaG8LFtc7YpwHjkDG4dTLUO2uafvdPcPvL8umEUxH5wh5sE6TLSt9eXo9xDS5Gvvsswi87Iz6arlHBPA=
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: 55f8debd1347259f
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=fx2DFTAnpRnfApmoAZsEWRtEVI2MXlhYcgoGKXzHX/M2BrPCfqZUHtphlNue4uAZHDFakON/ZGWF8OlueQRscvryNn6i1EywwAOPxiynGzv/8WFHOi1A7lhz4mm7kPyj2yyzduCIdhI4Was3QMfeAUD8wnOZpr4L/sCeon50xYpTg0FfpsZjw7PuQbOj4qHJepMyoOoRyQTyaGwDrnNwJbaDQn/fLKlxksXVii3h6EYOzKtoaHFmeEYSaUgAUcGPMxm0qf9aRFajiAX9evbVajAgAksUNNWCRI8K0TqOxWBOjeSaEDzFw36z6WvwE5XklFlXP1AZWLP+eaPhv7vmuA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=63SHCnY+JwYxHH0v7V3GFQAXf7A7Bxi0BaX6dcLHy6Y=;
 b=ZNncUYz3iU193AxjYSJDy3UutWn8Bp6CnKVfuOGoWVEU2Sx//F2NiE+JCWJTzyW+NIzbTpRGFi4NrdEMUOQzqKQ2sBmS+hn7+/Ulf+s5AFVUW6py4qLvlswYiUk0DJhJT7q3GDF5TCgxEIV4JxJDzukiY9YN/8PKgitbrO3av241k6jkCZF8S6FpRiNijjX6UWh3K++dW+i2x0S4a9YYHJucAOXIMjFcfheI7s2FEQ7eWkFQC5t1sMMU7AX/kPi7Z/8v5KxoVbeoEShiPa2GFBuzjK5UGxT+o0f/DTumTEunFbMkUR0toag/uqJCYiACXShI8NHLLZ31yLpWQA0iJw==
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=63SHCnY+JwYxHH0v7V3GFQAXf7A7Bxi0BaX6dcLHy6Y=;
 b=GyfdWmXtCVdJWrck45psuDPEx5cdx8ePpRoCt6hhEFlHvDYreewl9nWs8tQkAl/c8rYz3GrSCPjzYqZzVmteA1+MnpSOaG8LFtc7YpwHjkDG4dTLUO2uafvdPcPvL8umEUxH5wh5sE6TLSt9eXo9xDS5Gvvsswi87Iz6arlHBPA=
From: Henry Wang <Henry.Wang@arm.com>
To: Jan Beulich <jbeulich@suse.com>
CC: Roger Pau Monne <roger.pau@citrix.com>, Andrew Cooper
	<andrew.cooper3@citrix.com>, Kevin Tian <kevin.tian@intel.com>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Subject: Re: [PATCH for-4.18 v2] iommu/vt-d: fix SAGAW capability parsing
Thread-Topic: [PATCH for-4.18 v2] iommu/vt-d: fix SAGAW capability parsing
Thread-Index: AQHaAd1VLBU5LYOtFUqTZ+pB/Sc9JLBQu6uAgAAstQA=
Date: Thu, 19 Oct 2023 10:21:53 +0000
Message-ID: <9F9DCAFD-2253-4D33-B9A1-3D04C859DB22@arm.com>
References: <20231018160733.24655-1-roger.pau@citrix.com>
 <709ade00-9112-2866-4d2b-3bb718b13b46@suse.com>
In-Reply-To: <709ade00-9112-2866-4d2b-3bb718b13b46@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_|GVXPR08MB10449:EE_|DB5PEPF00014B8C:EE_|DB9PR08MB9849:EE_
X-MS-Office365-Filtering-Correlation-Id: ff0bdb47-3032-4706-43ba-08dbd08d3c87
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:
 OqJ/gDweVyjLGFgvd9UmMHDFSOoaBnqPBPg4081KeripwNSOT/ii6AyaG15zRzo9xYJU+HbNOAEAyCH90nLQsPXY49DUDvLULVWgh8FvdPqxiN6cu2HtpqD8qqIdCOaLItLwBuf2+vL4Xfakp1xi8n1Mr2rbNqQkJsU/VVkUqwuo2WWa66egS//NE83+/Y4GeMmVIcB91Q7SsUVKU436b5ejTMwtRVQWpzZqb+wIAvMOkhkCxXGGQcdweIoui7s9fyS85hn9+fX5fyYefb/r1b0yce56KTf4dW+a+tGC2mzY5M8AFm545XAm860uOSlHQ7QntOw5fE9scdrJxftZLDAtW2lC4CPm8FDoSCKIV4WhCmAXZ7hsaZ8yDbcALe5tLTrAHkvuHIdg0GYaZT//AU63Wm9fo48wM/PtT9lsGzYfn67zi9+dcmC8bjQksqXaAe/6rFaLFzFHU/TNnav2nPJimCW3R7HZOzLMZQyqqONhZYtT14V03NzGKkZ3aP3JTLf/ui2h9TLNjDEf2iIvXKwql4430mUsSQJ8bq2uZhdJGQdf+ATAWRA2eO86+GhSdc8Xb6T4qJ5FP62iIcuIUnXF68nGBnHnTXEKZzE0kDOWNF+5ysd27A3a9oclQZxolXF70xkDgGo1DfNNzhbrBg==
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)(136003)(376002)(396003)(230922051799003)(451199024)(64100799003)(186009)(1800799009)(36756003)(66556008)(6916009)(316002)(66476007)(6512007)(6486002)(53546011)(91956017)(478600001)(2906002)(26005)(6506007)(76116006)(41300700001)(64756008)(66446008)(54906003)(4326008)(66946007)(71200400001)(38100700002)(2616005)(4744005)(5660300002)(122000001)(38070700005)(8936002)(33656002)(8676002)(86362001)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="us-ascii"
Content-ID: <AA13ECD984B0994DADF7E6B28780980F@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: GVXPR08MB10449
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:
 DB5PEPF00014B8C.eurprd02.prod.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	e1e5165c-3540-4a5d-7fc9-08dbd08d36bb
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	Yl+AuvvFc4rhFUlNgGGSqHPzR4v9iCB9cvq9D3J2KMXLqo2CCwVIJY/xMOmbqwg0zIaOp8GeO+lDWE5kYJm3vWoCquyiXbe3W7SF7fHX4P093fFRZZakdlll8FUTu3GgKgZJ8R+RUfwNpccsItpB+ScVQAPQUMkAGLmmZx+ZEEWtwJGLAT1TsDzE0KtKLFueMJC5JQBq1KUtfMkn8Zt/fLy05HZx6TE+bcD5tYBPbE9mRrBitK599wo75HB5kaNmVn3P6UR9d5B+gzEB7ftC01wxN2e1uxeCM32wikllmu90bLEpG0dWX3HmjCbUzZrSx0m2vP8z2ZGhaLif4V9IlQb/8HjuZ54v/Db6o44X4kbtgCFumpCYzOpB+/WFw60nsriTHuKGW8SCclBxCo2JWOrdg0jeMkjJ5MhIDKFEAzwP6sWIc2MLwr2Z8UGnJQ/HYIvAKMiefvMKtsYQKvG2xJgkiSWCZjMcPdsdpSXsu0wps8+2EIjIsVcVpT0xcOHNsBA4Iw+HCgOnWNbFiRth2lZ+o5OphrDYhCFoqQzisUQ2heAryZo84n644xgy+ScK+rWmXZB+TGGmjMEEhWcagfUY/Zm7eSRk/maAK/HkjPYU5EeNS0dpje8MKH/HmChARaSEUyriQ8w6n9H2AGKjNp/ONFhej8cjE4I1sOmXFfLzYJbcRVbyRob3FaHOnYbcJ+n5+Vn/IlwbQtHqqWyhQPGCiGW2+yo6KRrT6fkTP8H2kn/mVye/AA26ZnEBWMnV
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)(396003)(376002)(230922051799003)(451199024)(186009)(64100799003)(82310400011)(1800799009)(46966006)(40470700004)(36840700001)(36860700001)(40480700001)(47076005)(40460700003)(6486002)(54906003)(478600001)(70586007)(70206006)(2906002)(82740400003)(5660300002)(356005)(86362001)(8676002)(81166007)(4326008)(8936002)(316002)(41300700001)(36756003)(6862004)(33656002)(4744005)(336012)(6512007)(26005)(2616005)(53546011)(6506007);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Oct 2023 10:22:02.7208
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: ff0bdb47-3032-4706-43ba-08dbd08d3c87
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:
	DB5PEPF00014B8C.eurprd02.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR08MB9849

Hi Roger, Jan,

> On Oct 19, 2023, at 15:41, Jan Beulich <jbeulich@suse.com> wrote:
>=20
> On 18.10.2023 18:07, Roger Pau Monne wrote:
>=20
> I'd be happy to adjust any of the mentioned items while committing, but
> of course I would first need to know which ones you agree with. Since all
> of them are cosmetic, either way
> Reviewed-by: Jan Beulich <jbeulich@suse.com>

I am not sure if there is a v3 or the v2 will be committed with some
committers handling the comments, but either way I am ok with the
release-ack tag below:

Release-acked-by: Henry Wang <Henry.Wang@arm.com>

Kind regards,
Henry

>=20
> Jan



From xen-devel-bounces@lists.xenproject.org Thu Oct 19 10:22:29 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 10:22:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619110.963706 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtQAf-00063p-Oc; Thu, 19 Oct 2023 10:22:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619110.963706; Thu, 19 Oct 2023 10: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 1qtQAf-00063h-Lx; Thu, 19 Oct 2023 10:22:29 +0000
Received: by outflank-mailman (input) for mailman id 619110;
 Thu, 19 Oct 2023 10:22: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 1qtQAf-00062v-B5
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 10:22: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 1qtQAf-0003wU-3a; Thu, 19 Oct 2023 10:22:29 +0000
Received: from [15.248.3.1] (helo=[10.24.67.33])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qtQAe-0006Ny-TY; Thu, 19 Oct 2023 10:22: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=ULrLjZWhGuhOk7NlaC+5RDq8kjphw9tBnAQPN8dxbI0=; b=V+h7yI3iFz6pMvmeoqEtOVDHvs
	R5fCUgPInTYGtvCuUFFVdd1lQk21gzBDFlSXm184fS8RWuVKCIlq2A74JS3hcOXmWh83wgmZIhlCd
	957rXYMIVEbe9u1WQVtJOV+Bx0rzbhJ/J+pJO1+RSE9hGLA1Ir6YPgn3Uipyf4mi93o0=;
Message-ID: <dd3ac31c-6f9e-4e33-8b9f-8866e72ff9e8@xen.org>
Date: Thu, 19 Oct 2023 11:22:27 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v7 0/2] xen/riscv: introduce identity mapping
Content-Language: en-GB
To: Oleksii Kurochko <oleksii.kurochko@gmail.com>,
 xen-devel@lists.xenproject.org, Jan Beulich <jbeulich@suse.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 Bob Eshleman <bobbyeshleman@gmail.com>,
 Alistair Francis <alistair.francis@wdc.com>,
 Connor Davis <connojdavis@gmail.com>
References: <cover.1691507564.git.oleksii.kurochko@gmail.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <cover.1691507564.git.oleksii.kurochko@gmail.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi,

On 08/08/2023 16:14, Oleksii Kurochko wrote:
> The patch series introduces things necessary to implement identity mapping:
>    1. Make identity mapping for the entire Xen.
>    2. Enable MMU.
>    3. Jump to the virtual address world
>    4. Remove identity mapping.
> 
> 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 != load address, it will cause MMU fault.
> 
> The reason for this patch series can be found here:
> https://lore.kernel.org/xen-devel/4e336121-fc0c-b007-bf7b-430352563d55@citrix.com/

During the last community call it was pointed out that this is missing a 
formal ack. Now that we have no RISC-V maintainers, this would fall to 
the REST.

@Jan, you reviewed the previous version of the series. Would you be able 
to provide a formal ack?

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 10:28:29 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 10:28:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619134.963730 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtQGO-00018B-J1; Thu, 19 Oct 2023 10:28:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619134.963730; Thu, 19 Oct 2023 10:28: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 1qtQGO-000184-GJ; Thu, 19 Oct 2023 10:28:24 +0000
Received: by outflank-mailman (input) for mailman id 619134;
 Thu, 19 Oct 2023 10:28: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 1qtQGN-00016V-AF
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 10:28: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 1qtQGM-00044X-Ha; Thu, 19 Oct 2023 10:28:22 +0000
Received: from [15.248.3.1] (helo=[10.24.67.33])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qtQGM-0006Uy-Bw; Thu, 19 Oct 2023 10:28: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=BhuOIjfz1KHEnl/nQYxciTzTKK0UcfZrVMqcFSUE/ag=; b=zxwAvf682d3r5eTwWTadTkvI//
	2xJBOBOEtbehPWUCQ+jJHq4DpqF3PEdAZku1SAxiFeUCMXMNI3lYLc/i7fqfPYr5CDRKnTplDQwGB
	iG+mmY9bgXq1TSdfJrgtbfLQuIosc9FbxjTkE8ui5TXxdZ8eq+D/LMv26+RYeK86RFG4=;
Message-ID: <20958e43-2de5-455e-84f6-279887f3e3ad@xen.org>
Date: Thu, 19 Oct 2023 11:28:20 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN PATCH 10/10] arm/smmu: address violation of MISRA C:2012
 Rule 8.2
Content-Language: en-GB
To: Stefano Stabellini <sstabellini@kernel.org>
Cc: Bertrand Marquis <Bertrand.Marquis@arm.com>,
 Federico Serafini <federico.serafini@bugseng.com>,
 Xen-devel <xen-devel@lists.xenproject.org>,
 "consulting@bugseng.com" <consulting@bugseng.com>,
 Rahul Singh <Rahul.Singh@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Henry Wang <Henry.Wang@arm.com>
References: <cover.1697207038.git.federico.serafini@bugseng.com>
 <199886f6ba1f2d5701eabd080b4f9723fc28f4b9.1697207038.git.federico.serafini@bugseng.com>
 <39d3f8e0-61cf-4b8d-84f1-a5087ba8ead4@xen.org>
 <D3320838-1E67-4339-A3D4-A3E60FBC4117@arm.com>
 <c9a7f059-4cf5-4a75-b231-573c4fe29b37@xen.org>
 <92C52E39-729F-40AE-A02F-556C8EE471CB@arm.com>
 <alpine.DEB.2.22.394.2310161338540.965337@ubuntu-linux-20-04-desktop>
 <4718460e-756a-40fe-ba1b-7f32a1432b51@xen.org>
 <alpine.DEB.2.22.394.2310171750170.965337@ubuntu-linux-20-04-desktop>
 <6d2388f4-dc05-43bc-aaf7-43ac204fdc57@xen.org>
 <alpine.DEB.2.22.394.2310181720040.965337@ubuntu-linux-20-04-desktop>
From: Julien Grall <julien@xen.org>
In-Reply-To: <alpine.DEB.2.22.394.2310181720040.965337@ubuntu-linux-20-04-desktop>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi,

On 19/10/2023 01:21, Stefano Stabellini wrote:
> On Wed, 18 Oct 2023, Julien Grall wrote:
>> Hi Stefano,
>>
>> On 18/10/2023 01:55, Stefano Stabellini wrote:
>>> On Tue, 17 Oct 2023, Julien Grall wrote:
>>>> Hi Stefano,
>>>>
>>>> On 16/10/2023 21:47, Stefano Stabellini wrote:
>>>>> On Mon, 16 Oct 2023, Bertrand Marquis wrote:
>>>>>>> On 16 Oct 2023, at 15:38, Julien Grall <julien@xen.org> wrote:
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> On 16/10/2023 14:31, Bertrand Marquis wrote:
>>>>>>>> Hi Julien,
>>>>>>>
>>>>>>> Hi Bertrand,
>>>>>>>
>>>>>>>>> On 16 Oct 2023, at 11:07, Julien Grall <julien@xen.org> wrote:
>>>>>>>>>
>>>>>>>>> Hi,
>>>>>>>>>
>>>>>>>>> On 13/10/2023 16:24, Federico Serafini wrote:
>>>>>>>>>> Add missing parameter names, no functional change.
>>>>>>>>>> Signed-off-by: Federico Serafini
>>>>>>>>>> <federico.serafini@bugseng.com>
>>>>>>>>>> ---
>>>>>>>>>>     xen/drivers/passthrough/arm/smmu.c | 6 +++---
>>>>>>>>>
>>>>>>>>> This file is using the Linux coding style because it is imported
>>>>>>>>> from Linux. I was under the impression we would exclude such
>>>>>>>>> file
>>>>>>>>> for now.
>>>>>>>>>
>>>>>>>>> Looking at exclude-list.json, it doesn't seem to be present. I
>>>>>>>>> think
>>>>>>>>> this patch should be replaced with adding a line in
>>>>>>>>> execlude-list.json.
>>>>>>>> I think that during one of the discussions we said that this file
>>>>>>>> already deviated quite a lot from the status in Linux and we
>>>>>>>> wanted to
>>>>>>>> turn it to Xen coding style in the future hence it is not listed
>>>>>>>> in
>>>>>>>> the exclude file.
>>>>>>> AFAIK the SMMUv{1, 2} code didn't deviate very much from Linux. I
>>>>>>> can't
>>>>>>> tell about the SMMUv3.
>>>>>>
>>>>>> True that i had the v3 code in mind, we might not want to do that for
>>>>>> v1/2
>>>>>> you are right.
>>>>>>
>>>>>>>
>>>>>>>> At the end having a working smmu might be critical in a safety
>>>>>>>> context
>>>>>>>> so it will make sense to also check this part of xen.
>>>>>>> I don't buy this argument right now. We have files in
>>>>>>> exclude-lists.json
>>>>>>> that I would consider critical for Xen to run (e.g. common/bitmap.c,
>>>>>>> common/libfdt). So if you want to use this argument then we need to
>>>>>>> move
>>>>>>> critical components of Xen out of the exclusion list.
>>>>>>
>>>>>> I am sure we will at some point for runtime code but we cannot do
>>>>>> everything on the first shot.
>>>>>> I was not meaning to do that now but that it is something to consider.
>>>>>
>>>>> Things that are in exclude-lists.json are source files that come from
>>>>> other projects and also change very rarely. The argument that we don't
>>>>> do MISRA C on the files in exclude-lists.json, it is not because those
>>>>> files are unimportant, but because they change only once every many
>>>>> years.
>>>>
>>>> Interesting. I would have thought this would be a condition to do MISRA as
>>>> the
>>>> cost to port a patch would increase a bit but this is one time cost every
>>>> many
>>>> years. Whereas code like the SMMU are still actively developped. And in
>>>> particular for SMMUv2 we tried to stick close to Linux to help backport.
>>>> So
>>>> this would be a reason to initially exclude it from MISRA.
>>>>
>>>>>
>>>>> Of course the least we rely on exclude-lists.json the better.
>>>>>
>>>>> For smmu.c, looking at the git history I think it is more actively
>>>>> worked on than other files such as lib/rbtree.c or common/bitmap.c.
>>>>> Given that backports from Linux to smmu.c are not straightforward anyway
>>>>> (please correct me if I am wrong) then I think we should not add smmu.c
>>>>> to exclude-lists.json and do MISRA for smmu.c.
>>>>
>>>> I haven't done any recently. But if they are already not straightforward,
>>>> then
>>>> adding MISRA on top is not really to make it better. So I think if you
>>>> want to
>>>> do MISRA for the SMMU, then we need to fully convert it to Xen and abandon
>>>> the
>>>> idea to backport from Linux.
>>>>
>>>> This would also make the code looks nicer as at the moment this contains
>>>> wrapper just to stay as close as possible to Linux.
>>>
>>> You have a good point. If we do MISRA for the SMMU then we might as well
>>> fully convert the file to Xen. As a clarification, we can still look at
>>> the fixes on the Linux driver and "port" security fixes and other key
>>> patches such as workarounds for broken specific SMMU versions, but for
>>> sure we wouldn't want to backport a new feature of the driver or code
>>> refactoring / code improvements of the driver. But that probably is
>>> already the case today?
>>
>> Most likely yes, some features might be useful to backport. The main one I can
>> think of is not sharing the stage-2 page-tables as there might be some issue
>> to allow the CPU to access the GICv3 ITS doorbell (so it would have to be only
>> mapped in the IOMMU page-tables).
>>
>> The other one is stage-1 support.
>>
>> Anyway, it is not clear whether we could use the same implementation as Linux.
> 
> Yeah.
> 
> In terms of next steps, what do you suggest?
> 
> Are you OK with keeping smmu.c out of exclude-list? And to go forward
> with this patch?

Federico suggested that there are hundreds of violation. I feel like we 
should convert the SMMU driver to Xen coding style, clean-it up and then 
handle any MISRA violations.

I would still be ok to accept small MISRA fix first though.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 10:32:29 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 10:32:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619150.963740 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtQKJ-00038G-9T; Thu, 19 Oct 2023 10:32:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619150.963740; Thu, 19 Oct 2023 10: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 1qtQKJ-000389-5G; Thu, 19 Oct 2023 10:32:27 +0000
Received: by outflank-mailman (input) for mailman id 619150;
 Thu, 19 Oct 2023 10:32: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=g4nO=GB=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qtQKH-00036Z-Im
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 10:32:25 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur04on060e.outbound.protection.outlook.com
 [2a01:111:f400:fe0e::60e])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id cafec1ee-6e6a-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 12:32:24 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PA4PR04MB9461.eurprd04.prod.outlook.com (2603:10a6:102:2a9::18)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.36; Thu, 19 Oct
 2023 10:32:22 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%7]) with mapi id 15.20.6907.022; Thu, 19 Oct 2023
 10:32: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: cafec1ee-6e6a-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=DuGEonfQstDt3fjPUf6DB9dZQ536Qq52wx/1iIVZjxlaKCom4TOgc8rsCUfWoaV0rGxTkNnQzHwGqFoLG6FVfkfJAOVRbHM6+zUpF4wiMOXwbf6at3BI8piJW3u+gc9MBUqFoJ7lq1FdAaZon3ydcLondTrnV9H6qkwId4TZ96iqyXB2FVnA3TAL0lTObX1Sm2L2hTTj/Kb76+YFVzWNMiy4drzJaUQSpyf4kddcEJpCnjrj3AbdB/YgJO5a7wfg242pFWYh6g6Qf3iu2afPJnqqq3NrRFn/2VyclnRKzCLSU9QdLdaVravnz8I7+f4RO+MFhedSsgYno9QP5CoVyg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=AtDp2LM+nS3gcYzkfoE3b59zdiir11Lx+bhpl0XuDdo=;
 b=JD4pLjkKP4bpPXrY1S1NHC9zYbW7gLeVwcrWFuRoqiOWVDm8ReaHuiwattvRjgGgsbZxlbWQ59eAE8ejvgKSB8xspDhE4fFbpKTdSAAY4BIWS4ZmhC7tFmkh+FBlkAUZZiycTDpAy7Ordsv4+xT9Uge7z6V/T7XydDmi6IwrZDgKEkYVFSXRNeZKLkd+d5eYzSIVUgY79PBAACiq59be6f5tE1n5vMPxGT4B4Q8NWesROsqYK78NV8XRSyveVClKqlIEXFMVAvBTYMfu0tCPw/d2yAzeNj13CJLs/mVHoHixb3hfpZPQxYB3rWhWsVA8yFC3VBYkh5wwK6e+0Z+3HQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=AtDp2LM+nS3gcYzkfoE3b59zdiir11Lx+bhpl0XuDdo=;
 b=4cBmkFiy4w1EZQmMDlsmkkjGwpgbah4lrpeRXjZWxS+mWTOLqVeIyaCNJa5zDz3GvdctvGPtul5u4rnxzA/DwSEWnC5Sq6TL4UhCyMAdxWHv2v1evj1Bdbai0ryythPpmk/2hUioS1Z7pos4gJj3Xob8g1AvQTMQJxU4yxSasv3lbL3JWpR0al4vTNQx/Tx8EaeXBQO9hFru3k9+/PEEmTCqwALA18rZPnLAxIFLN+Zm0PHbhJSaOZOtsQagUd9rhm5OiidlVsE8/CXgdXdfUQxD9TZoFfhgHxRrW+cj20qD0NihwV8txMmXW4cxqELhQNlxd9MHkxgEsbt4ist75Q==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <059882ea-3e42-f74d-83e6-2f809d0993cb@suse.com>
Date: Thu, 19 Oct 2023 12:32: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 v7 0/2] xen/riscv: introduce identity mapping
Content-Language: en-US
To: Oleksii Kurochko <oleksii.kurochko@gmail.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 Bob Eshleman <bobbyeshleman@gmail.com>,
 Alistair Francis <alistair.francis@wdc.com>,
 Connor Davis <connojdavis@gmail.com>, xen-devel@lists.xenproject.org
References: <cover.1691507564.git.oleksii.kurochko@gmail.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <cover.1691507564.git.oleksii.kurochko@gmail.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0157.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:b3::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_|PA4PR04MB9461:EE_
X-MS-Office365-Filtering-Correlation-Id: 79d5858e-fe03-47b7-0e9c-08dbd08eaddf
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	n45TbIejRgo/o/4446Bhfaf0L+oFklpI80i92Yh5bfM1K2xISe3SpegxrLsxsmbeFOgw6PLyacYDgvD3xsOWfUAlxuIFIXAU5VWHMBOalUc1tTn6eNy5Yhjf/WWu/eJ8kdbwcOANXaQLgc2AGhHuvO0fTIgtojOwKlOpATfQ7CugOpaEF9Qhwk53FZ/9iHeZR5BfGpmsfNLQh3cd+LwOknERCmGyc3nuDJELgxwInqRL6kXUVagVVN1ttISuF7mA5d60pc8byVoMWinTsWkaqrsZdfvB2U1uqY9r6TAkEJjE9OqzNZw6L+HxSsdDZt2ic8GlrBDQdJSsR88i5IwfXjmxKRNDZngNoydqgvYNSOc2tE/wAzpTflYuaynasJLppYBQG/Kjk+lvW4tPieHOiaL+0t7ugA2z3vlIdw/dlGxBAjbiW7+cl+vC/SwliZwctBQG8tJmc3Fxs0B9+KWl3gP/aZV94sIPZe8JXmcK37ddTHgdXk8BW95iWQdVL7nWFEtqzw4xcDRx3i0OYsfsnkUweqRWVw2Yxl2dz5rGwiDyQUlC0sj+/3tpkszWL0O/bAKaHUjZ8pAvm+Cr3D9q3njBQeHY5i5u3czgoXynYqtOcf9WYGe3DKo2MhiBv6hFO1956rVrMNoyx4WxbR7lXw==
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)(230922051799003)(1800799009)(186009)(451199024)(64100799003)(54906003)(66476007)(316002)(66946007)(66556008)(6916009)(966005)(6486002)(2906002)(31696002)(41300700001)(478600001)(8676002)(8936002)(5660300002)(86362001)(2616005)(26005)(31686004)(4326008)(53546011)(6506007)(36756003)(6512007)(83380400001)(38100700002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?eVEySS9BV25nMTFyWjRQUjVydER3azd3TE0xaWduQkY3bkxxNGluWTF3NVlW?=
 =?utf-8?B?cUlEK2szWklKc1o5QThPNFdTSk1KN2p1K2VnRUxJZWdxdTRlYk40Y0xVY3hz?=
 =?utf-8?B?TmRVYzcrOUlBUEpiOXc1OUlOM3dXV3NwWVNhNnE1bElXSUtxb1pmMUFsd3FY?=
 =?utf-8?B?N2FsYnpXZlY4N0M5SEIyL2cxS1VYQ1RTTWdibTRaOHRiRFpKa1RpOUdrUzI4?=
 =?utf-8?B?WmZXa2JtV25jMEk5NVpCUGJkSkF0Q1JwUWdjYVoxMHljTDhwK2lGM2FFRGZV?=
 =?utf-8?B?MGlNYUdxUFdkaVFxZW5NZ01Ybk5IOW81dG1XZ0VwM0xNdU1vTHBOQU1UNGZr?=
 =?utf-8?B?eFFzYU9QT3FXMEhXOUpCblA4MDBjWWZCRVlzaWZjNXJZUno0N3hTU3RnQTha?=
 =?utf-8?B?TDUrcmpkS2VscmpUS2Fwd1dyTHF4bGJ2U2xodUgwdlpsM0tMS0lFNGFlSlE4?=
 =?utf-8?B?NmFlWW9ETHZVQ21UNmhxS1ZWVEYzVFU5bDliR0w0aTRPZ0JXaEJiUEN2bFQz?=
 =?utf-8?B?R1hwRDVTOTFoZTAxU2loTlVJV0RIMjVIRktFa3kxT0twbUhXUS84Q085c0Ey?=
 =?utf-8?B?d015bms0VmIvLzRTUU02UnhsVXJ4dmp0SGJDTU9FTmdUWUtxai9LKzQ5Y2ZF?=
 =?utf-8?B?NEZUdU1IejdYdXJwdUJWZ1NjTVRmOWVpSFg4QzVlWmlGaE9xWkNwRmp3Tlph?=
 =?utf-8?B?SS9YOWZXazdyWVl6Q0Z1OVJnTUZmdEkyOTBlVCtwS1grSGFJcytLRk9sQklo?=
 =?utf-8?B?SXFjUGpMZ0dzV1M0ZWVNaS8rV2hsODd6S2Mwd3A0R1lqYmhNd0JuNlFTdzZO?=
 =?utf-8?B?c0dSMkhaS2ZNc3Y0aUFkU09tdU1YdWs5elRycU1pbWlQdThLR1FHWU03ZGRU?=
 =?utf-8?B?WFJZbVphOGJZTVhqMjhnRGtsb0lRVEczd1lzRkVocnQyNW1ER2NTTDd2TnZK?=
 =?utf-8?B?NURjbWRJSklJeENZZllGd09yMDkxdUcvdFJaREpOckFvcFZrTENXbzlNZkxo?=
 =?utf-8?B?NVRka0ZkYjJtdVZMUUQ0cDFxb3E2ekdZbHhsdGZuOWtKZGEralpDYTFPWUta?=
 =?utf-8?B?RWZUMjFkZUFpU2xhM3REclVCRzRvYWdVbUlTdk1XOENTblRpNlJTMlNkYUtL?=
 =?utf-8?B?Y1d3Mkw1cENDdXZiZExSQk5TNkZBMFp4VDFvQmpsSnMrZXdiVjBkZkd3OGhG?=
 =?utf-8?B?NzlYNG81ei9yNHBwTlNoWWNUTktzWHlabzBTTUFBbTJkM1VwVWNTQTkvTTIy?=
 =?utf-8?B?U0lVMWZ3K25Za0hPVXNZYzhzWE40V0ttZWMyZWFJM2F6aDdSWXhGb1diSTls?=
 =?utf-8?B?T205cmRObi9SUXpyTjlaUVZTN0tib3dsWVhUQ09JbzhhYkc1T2VIZTFubEV3?=
 =?utf-8?B?SHY4bzVzMzlNdzZxZWowVmJoOGJPSmxYekVFa3F2YzBYamUxTGVuZ0llNDJv?=
 =?utf-8?B?MVQ0QTRYSEhXVGNUQlRZdGptaHhlQXdnSWRwZlQ5dTlGWGVjVlMxWlY0NzBL?=
 =?utf-8?B?a0NQcDdHZmlMd3ZFdGNCeHRPUmxFckd3OFB0VFBvUXdxTlNUeExxNXNnZUlm?=
 =?utf-8?B?SkpRdUloL1dSSVpjTTc1eEdCbE5JaFhWeDNmanNJSHdlUjN5Q2Z3NTkvQVFu?=
 =?utf-8?B?bkFmQ05hUkdGLy80aTlXOGFybFA3NWFhY25HZ1dXZEZzK1FFTWxIVVZkNTlY?=
 =?utf-8?B?Ky8zYm5RTVhCaFhxU3lhQ3JoaWd4SEtrY1h6Ym5ISHhPa3oxY0wzbkpuSVhp?=
 =?utf-8?B?R09pWnVRWFhRWUxnSHo1ZkRJTm9oeTM4K1RueHRMUkRCckN6SGVaVzJEZGpt?=
 =?utf-8?B?Rk90ZUVmQXlFazFpdTBZUlh6bDc5S0dRNGNOWE5LY1dMZHBnTXEzWU1LVHdW?=
 =?utf-8?B?VVhZMU00SEVmLzJTc0d6MElLSktjMlJyOTkySHJIZ0xYRjVBYlFhczVGZG05?=
 =?utf-8?B?b2s1bjlnanVzbkpGemVJYlRtcURSR2J3ZkNuVmxBdW5VemViWVZoNTZhVUpw?=
 =?utf-8?B?WTIyNS8vbmxPQTcwdUE0Z21xY1VONWlJTW1wTlFlUUJWc2tteEJ6b2Y3ZGdQ?=
 =?utf-8?B?R28zS3NXMFpwSnNIQ0VmU3pJcmdxVExkdG5FMmRrLzhwRkNpL0tCUmx6UjU2?=
 =?utf-8?Q?Q6dvjUTR3km9oVUvTNLUv/WlM?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 79d5858e-fe03-47b7-0e9c-08dbd08eaddf
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Oct 2023 10:32:22.5213
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: NvxE7zX/Cdc2LAPWVjdBfZ0Jw2cuiduDiCHa3VjyDw5OHR1/oqIXDT4M6bABzKQwGshfe/TEhFpN7Ug8E+nTsg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR04MB9461

On 08.08.2023 17:14, Oleksii Kurochko wrote:
> The patch series introduces things necessary to implement identity mapping:
>   1. Make identity mapping for the entire Xen.
>   2. Enable MMU.
>   3. Jump to the virtual address world
>   4. Remove identity mapping.
> 
> 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 != load address, it will cause MMU fault.
> 
> The reason for this patch series can be found here:
> https://lore.kernel.org/xen-devel/4e336121-fc0c-b007-bf7b-430352563d55@citrix.com/
> 
> ---
> Changes in V7:
>  - use srli instruction to be consistent with slli instruction in turn_on_mmu()
> ---
> Changes in V6:
>   - Update calc_phys_offset() after rebase.
>   - Refactor turn_on_mmu() and a way how an argument of turn_on_mmu() is
>     calculated.
> ---
> Changes in V5:
> 	- update the algo of identity mapping removing.
> 	- introduce IDENT_AREA_SIZE.
> 	- introduce turn_on_mmu() function to enable and switch from 1:1 mapping.
> 	- fix typo in PGTBL_INITIAL_COUNT define.
> 	- update the comment above PGTBL_INITIAL_COUNT.
> 	- update prototype of calc_phys_offset(). now it returns phys_offset.
> 	- declare phys_offset as static.
> 	- save returned value of calc_phys_offset to register s2.
> ---
> Changes in V4:
>   - drop patch 	[PATCH v3 1/3] xen/riscv: add SPDX tag to config.h as it was
>     merged to staging
>   - remove definition of ARRAY_SIZE and ROUNDUP as <xen/macors.h> was introduced where these macros are located now.
> 	- update definition of PGTBL_INITIAL_COUNT
> 	- update the commit message for patch 'xen/riscv: introduce identity mapping'
> 	- update the comments in head.S
>   - update the algo of identity mapping removing 
> ---
> Changes in V3:
>  - Update the patch series message.
>  - The following patches were merged to staging so droped from the patch series:
>    * xen/riscv: add .sbss section to .bss
>    * xen/riscv: introduce reset_stack() function
>    * xen/riscv: move extern of cpu0_boot_stack to header
>    * xen/riscv: add SPDX tags
>  - move save/restore of a0/a1 registers from patch 4 to patch 2 ( numbers are
>    from the previous patch series version )
>  - add SPDX tag in config.h
>  - update definition of PGTBL_INITIAL_COUNT taking into account identity mapping.
>  - refactor remove_identity_mapping() function.
>  - add explanatory comments in xen.lds.S and mm.c.
> ---
> Changes in V2:
>  - update the patch series message.
>  - drop patches from the previous version of the patch series:
>    * xen/riscv: add __ASSEMBLY__ guards". ( merged )
>    * xen/riscv: make sure that identity mapping isn't bigger then page size
>      ( entire Xen is 1:1 mapped so there is no need for the checks from the patch )
>  - add .sbss.* and put it befor .bss* .
>  - move out reset_stack() to .text section.
>  - add '__ro_after_init' for phys_offset variable.
>  - add '__init' for calc_phys_offset().
>  - declaring variable phys_off as non static as it will be used in head.S.
>  - update definition of PGTBL_INITIAL_COUNT and the comment above.
>  - code style fixes.
>  - remove id_addrs array becase entire Xen is mapped.
>  - reverse condition for cycle inside remove_identity_mapping().
>  - fix page table walk in remove_identity_mapping().
>  - save hart_id and dtb_addr before call MMU related C functions
>  - use phys_offset variable instead of doing calcultations to get phys offset
>    in head.S file. ( it can be easily done as entire Xen is 1:1 mapped now )
>  - declare enable_muu() as __init.
>  - Update SPDX tags.
>  - Add Review-By/Suggested-By for some patches.
>  - code style fixes.
> 
> Oleksii Kurochko (2):
>   xen/riscv: introduce function for physical offset calculation
>   xen/riscv: introduce identity mapping

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




From xen-devel-bounces@lists.xenproject.org Thu Oct 19 10:35:15 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 10:35:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619152.963750 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtQMv-0004Rr-Mz; Thu, 19 Oct 2023 10:35:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619152.963750; Thu, 19 Oct 2023 10:35: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 1qtQMv-0004Rk-Ii; Thu, 19 Oct 2023 10:35:09 +0000
Received: by outflank-mailman (input) for mailman id 619152;
 Thu, 19 Oct 2023 10:35: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 1qtQMu-0004Qr-Bv
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 10:35: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 1qtQMr-0004Ny-0c; Thu, 19 Oct 2023 10:35:05 +0000
Received: from [15.248.3.1] (helo=[10.24.67.33])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qtQMq-0006oG-Pi; Thu, 19 Oct 2023 10: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>
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=j62t+9DSO39t7SFMliHewsayfvCx4YrKUP9SV7smm6A=; b=jHnuvoNWtzWBZoCphRiDWa60wg
	3h6R/0oAfaTo5SlEg5lX3ganZi4uWL1q0WoFqv6ZTHNolWK7SYgW1qYAqCUhPAYlVGV1iAw1WXtUk
	4fvuj/qea3mL0yjwc1yF2+yO55xeiMt+n3VHNbPaUne+3iH7+OM91anWMXAA50zB/VMA=;
Message-ID: <c474dde4-3175-426b-a10d-43e816f9fe27@xen.org>
Date: Thu, 19 Oct 2023 11:35:03 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v1 02/29] xen/asm-generic: introduce stub header paging.h
Content-Language: en-GB
To: Jan Beulich <jbeulich@suse.com>,
 Oleksii Kurochko <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>,
 xen-devel@lists.xenproject.org
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
 <5def596788d602b9b34302630c91644952c7115d.1694702259.git.oleksii.kurochko@gmail.com>
 <0911e74f-73e1-6053-ce1f-ecea98ea5f17@suse.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <0911e74f-73e1-6053-ce1f-ecea98ea5f17@suse.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi,

On 19/10/2023 10:05, Jan Beulich wrote:
> 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>
>> ---
>>   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)
This is more a question for Jan, in the past I recall you asked the 
macor to evaluate the argument. Shouldn't we do the same here?

Also, I think we want to take the opportunity to convert to true. 
Lastly, this seems to be using hard tab rather than soft tab. In Xen we 
use the latter (unless this is a file imported from Linux).

>> +
>> +#endif /* __ASM_GENERIC_PAGING_H__ */
> 
> Looks okay, but wants accompanying by dropping (i.e. effectively moving)
> Arm's respective header.

FWIW, I would be ok if the change is separate. I can help to write it also.

> The description than also wants adjusting (it
> wasn't quite suitable anyway, as there's missing context).

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 10:39:26 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 10:39:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619156.963760 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtQR3-00059b-6e; Thu, 19 Oct 2023 10:39:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619156.963760; Thu, 19 Oct 2023 10:39: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 1qtQR3-00059U-3D; Thu, 19 Oct 2023 10:39:25 +0000
Received: by outflank-mailman (input) for mailman id 619156;
 Thu, 19 Oct 2023 10:39: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=g4nO=GB=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qtQR1-00059O-Vm
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 10:39:23 +0000
Received: from EUR01-DB5-obe.outbound.protection.outlook.com
 (mail-db5eur01on0628.outbound.protection.outlook.com
 [2a01:111:f400:fe02::628])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id c396fc8d-6e6b-11ee-9b0e-b553b5be7939;
 Thu, 19 Oct 2023 12:39:22 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PAXPR04MB9278.eurprd04.prod.outlook.com (2603:10a6:102:2b8::14)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.21; Thu, 19 Oct
 2023 10:39:19 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%7]) with mapi id 15.20.6907.022; Thu, 19 Oct 2023
 10:39: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: c396fc8d-6e6b-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=oW/mYG/B+yyK9KiKQxxqROzcTmiUGuImuRBOs0UkzehhfC8hAJ/CAuR2wYiy2am6MSitJtjW5JeoVeaGMo9CatvlHzfvTQEg80Q3PlZIRf8+WXYAL8naLtdl2gS7C5GT+ACwJWqDmeUEeoscSxZTjpKwy4WIKivTwnZ6VHptyO22FINDdMKDjCu2ibJ38Z2KsE9R6Ir5odfdqY7Gbzjrvg3g7NZTGEh9bcC1L3uSD8Ec+WW9c91b4zPgNtwc5o75uZHgco9GR8+FQXzkQpZw6o6SgOBA1V65KF6dX+lBTW9qGTsji6b9e46BNjtfAr9CEUi57b9zx29YI2CirIEbCQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=T8SIpwPF5aJzeTuL54KsKhXZBw0b3XmBVdSEEynAM6U=;
 b=NmCg/5d2AUF1FOpbv9ig8Xdk5dAJbftwVUsvjqFByJtlAoBQAR9u+c+pytFz+3Ep5SVM9/q5WH1UWXT9Y61k2XuffPDzDMes9mFzaicwzwh3yryMrLDRwIvnxxhXYWEE/G16bmNP4iQZ/9x4mxwRwuqzsbl8LDO0sN+k1G9j7Hl0JlGiE1EuEJvikz2/CUxLRK5A6Kwa4o20syuVJDHKIzafRljZ5TV7VEpovmJ37+rHY6oD1zJYuHjIMoZtKI4BFnSWmRcGlkkCLTbymJUUUu0GtlUMWWEK59qkWYMrN++JZb+9242QDtHoFe2KYlOyJ2YzF9wDav5rLEpajWRn1Q==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=T8SIpwPF5aJzeTuL54KsKhXZBw0b3XmBVdSEEynAM6U=;
 b=WuB2puVefvEGg49EjeiQ3xrzMSz5NGQZzDZHsupVPwr2Oi/UTYn7qSS6yB+VyGC2cgTQa6rwwVjymJPCjqA1DB5pofk61NlRKQComgQTA4TXwzsbmP0FyAz5rh4Dn8C6hzSOKMZoh9/pLWiiDVgWXSKiOmHTO54rF53lsX+qjYV8O8Y5coDKDwXciuD8mx3/XIb8I7Ywl7pU5Cc83b2MqRrVuWzF81ZLaaLBuaQE9TQZRGzIYNZKUWZ0Xezjl2x6ou2lbASPoj3j3jY21hQo1BzZr2N+jmKK4yXy2DGwR4QA6/WhJaW3PMklajAMeoPv62zzV2ilPYmy3WPxhdQVEA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <9136bdd4-2ae1-4b7a-b4b8-a66181b2bfe4@suse.com>
Date: Thu, 19 Oct 2023 12:39: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 v1 17/29] xen/asm-generic: introduce stub header percpu.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>
 <521647680aa5010629ded799010c8f9e5d22cde3.1694702259.git.oleksii.kurochko@gmail.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <521647680aa5010629ded799010c8f9e5d22cde3.1694702259.git.oleksii.kurochko@gmail.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 DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|PAXPR04MB9278:EE_
X-MS-Office365-Filtering-Correlation-Id: 640cdf5b-f0a7-405a-046d-08dbd08fa64e
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	sXp/7juRZjQP+pojHXfMCLCQwA2JAAdayh978pynUCdVhBJa3JOxf/whx7uUjEqKNsntWfrOyQoh67vyebY49C1JSsGLNb97isAsUyz/CeGIe+N1nCshYGOjzh3kGT0GjVI5GdB1Ke49fu02bXue2yS5yxlPvEtbJLHCemuguu3cTlFuCRkJbvoqgksEhBpZSrGJQ/xMl2KWdURtMtOKgtAO+lp2DBbDLaURyJZcsMpY5H5oEbead2lAbOR6Y7mlQJCcNpZBnu6KDLz3CYw4EqkLnINXTWaMljuPDQOp4X/iLuacMsZSP2rY7edb0lavrKwSNptmVXGfU5bRebIaC0Zd+DV80KAyIAlszNNnYkdAZIJOeQm4Xb9hxAl5XZKjCHi0Au+YKj6BqLZIORj59iju4jU+NB9KSHIxTz0Ahufx7o/857dtkafpLcuS2QT1wXpxm5uv5DAhlZEw7f1uECfP7T6Eq8vYh84gyIlbMbrRm5HB78xiKvL/Yu6daZybbl56p+No0T5Lz37s3sr26hXIira59XFO4PBVPtO5LodRjOEe2tfSZDmgsqxuoesyz1KrhV2OzaMubTJ5fWj8vBGfnu7Pue+2MpZ01xAZDHv8GqODX5mPHDv/9aZY1YR7gVvy9wK5/3+/e4vGSXs5XdLKdFFsci0A13faNN4z34o=
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)(376002)(39860400002)(346002)(396003)(230922051799003)(186009)(1800799009)(451199024)(64100799003)(83380400001)(4326008)(38100700002)(2616005)(6512007)(36756003)(86362001)(2906002)(316002)(31696002)(66476007)(66556008)(8936002)(66946007)(5660300002)(8676002)(54906003)(53546011)(6506007)(6486002)(41300700001)(6916009)(478600001)(26005)(31686004)(41533002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?YXRCTGxLS0d0SmM4dmRjS1NURjZtZllaODE1S2RWQXI5OTVhYllWODltY21B?=
 =?utf-8?B?VXlWREJsQUEyVGt5SnM2cnltbGlpanNVbjJQMDliZzZNa1BUR1A3dUVJZ210?=
 =?utf-8?B?QXBSS2hSdFk2cG44Y3dxaEY2c2Fha2tLdURwcEVndE1ESW81V1dtbVRlMHBx?=
 =?utf-8?B?dk03VUhjdVhBbmkxVGNGbEVUemxDMzl4Y0R2WURiK24xV2krQWdjcWFqbHBq?=
 =?utf-8?B?TlFNTFRmMGpxMVV3V3pJMXJ3YXNzVWFNQzVwVGw4cEp3TTQyOS9JRHZyZ3Vm?=
 =?utf-8?B?S1k2MFREb2UxMmpMM2M5dERUZnhNaWp2M3ZjT0loVHREOWRzSHhhQWhuVmFM?=
 =?utf-8?B?dndETzhXUDFBMWl3YkVyYzZ5SGVDS3hDQWhmOG1JVEREZDdjaVRYZGR5VitW?=
 =?utf-8?B?SDdwaWtZREg5eEEyKzdPbTFlR2hhR0ZPZXpXbzVsbisvQUx5MXdkVWdhVWU3?=
 =?utf-8?B?aitBNUE3eG13ck5KSHlnTFNYeE1iYnFSNHpCYnJ6U2VwK1h3ZTBxUVkvaG8w?=
 =?utf-8?B?SW1SUjdVNXN4M0VpeDNpUldVbUVLWFJNTkZlNFBmdmpFRnZXLzFtN1RMNkZH?=
 =?utf-8?B?UGhnaEtzQnVtbTdYU1RpcHdBU3dTMHdkYWhFUWxWWjZ4SXZ5bkRjUnFjMTc3?=
 =?utf-8?B?V00zZ3dZalhQbEhyV1E5bEpXSFRFUmYwUVRsOUhONW9uUG5rZEdzSWFvL1BI?=
 =?utf-8?B?U1c4MzVPb3NrdXB0TUg1RjREaHZFY1h1ajZlQ3BPd3BDdEN1U3p4NHMxckxp?=
 =?utf-8?B?TmdHbDdKZHFCekhTYTJDNU9SSHkvQjk5VmhEbGkyZkdyb1dYNDc1c1QyVlZi?=
 =?utf-8?B?RzNTUmxnWmhuWDF2Z2NoTU4vTWdoQUMxNjlINFZFWmRtT1dIL1FiVnM4emJF?=
 =?utf-8?B?SzJHcW5aeGpCaVZudmYyUmM5b0ZHNFZ5MjNtdkg1RHM2UnpsWnNVbW5wenRk?=
 =?utf-8?B?N3JEYTF4MVhUTTBjYUQ2VnU2M2YyOFhOL3dIdkx1VGUzeWtpUEgvMXdDTUNH?=
 =?utf-8?B?MUxGNVJlSjd0c3AraHFKb253VVJUMXZrMWFUOVlXUnFja2ZlUVhIYnVUUUsy?=
 =?utf-8?B?U1VEb1BKdVpEbFNaZyttMHIrK3dyRGdUMFJnZGtlQ2N1cFd1ZVBaaTFUU1RN?=
 =?utf-8?B?Y2Zla283UHdKQ0JzMUppZm1oVVFNcGRRSVhabVppdGg1NFF6VzZIWGdEbE4z?=
 =?utf-8?B?Y292NFViUmNXYi9VblQ0VCsyQkRmR20xaW5EZnpEeVBKREdRQ21FREp5cjJp?=
 =?utf-8?B?ajI0R2lyQzgvcVZJamlEbTFBQVRBN2NWaWFyZFluYnZGZW9kTnJFSnBMNitZ?=
 =?utf-8?B?aHgrOFp6YzdQRXNTaFVBNTBCZkxxNVhwa2h3Z2o5ck5aNkhvVE1zZHp2MFE3?=
 =?utf-8?B?a1F0OTRTUEovcGcvVlFYWWdyWVFEdXRuUU5EUXJ4clZxeFhteStNMDV6ZUFR?=
 =?utf-8?B?Kyt4U2lodlRGZG44OE9DQUNDbXphU1lIK1MrdUUyS1MvV2ZFQmhrc3R4OUZ2?=
 =?utf-8?B?eCtSZlR0MVIrdUdteWVkUEJ6UVJsamFNSWI0WTY5SXIxUHVtSmc2QWJqYmlk?=
 =?utf-8?B?dmpQdnIvUU84RzdtR2QwN0FzMVlGNzdaZStUcGhXVVkreitUV1VZb09PaVVp?=
 =?utf-8?B?TkZaNVNySC9HWmh2S1V3WEhPWXdLWDl6bDgrUGhPZ2Z2TCs3THJjMy9reDBL?=
 =?utf-8?B?Z2UrdGE3c2ZjeXovRjJEajZPdUlxeXFpbnZCam45WVdTNlRJcG5Ec3ZWbjRG?=
 =?utf-8?B?OWdmM1pPZGV4K1BRTnNWWm9LTlhyZUxwUHZUeGtmaXBRcU9GSmhnMThQemEx?=
 =?utf-8?B?Ny80SEVPRW1ZNzlXZ0l1eXNicDVPK1NVT0RMVGVNaWYxMHpsYk8yNnhXV3d1?=
 =?utf-8?B?Q21qUklQc2x3YWo5MUxaR2ttdWpGRnBaWlJSZzFBdzcramdkaGJPWmQ2a2hD?=
 =?utf-8?B?VEx5VEFSWUovL0NoaHZlUVdiTXBnMTd4L0QwUlU3WUJuMElncnIvc3A2Z3J0?=
 =?utf-8?B?aUdHRXNyMVVuL0QxNTBUTjJBNG9OSkZrN1hsb1pJcXZhK0ZWYzJ5QllENnlW?=
 =?utf-8?B?d2lvZ2FnN0pIRVpBakNTY3JubENJVjNGWE91d3ZSZ08rN3Ria0pVZEFXQ1pP?=
 =?utf-8?Q?vpKrred2A38tjn3Xxn1vTlrd2?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 640cdf5b-f0a7-405a-046d-08dbd08fa64e
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Oct 2023 10:39:19.3096
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: VoahUqWTsg2XUeMFWURTFd2g8/Sa4yl+Gn+fRQYS5JHrlLxSFKPPLZ1IN4te4PU33VAFn4BP3VOPA7tQVNgkFw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB9278

On 14.09.2023 16:56, Oleksii Kurochko wrote:
> --- /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__ */

This looks okay, just one request: Please use smp_processor_id(). You
may have seen on the Matrix channel that there's the intention to do
away with the get_processor_id() alias that's used in only very few
places.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 10:42:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 10:42:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619160.963770 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtQUF-00070h-NV; Thu, 19 Oct 2023 10:42:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619160.963770; Thu, 19 Oct 2023 10: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 1qtQUF-00070a-K6; Thu, 19 Oct 2023 10:42:43 +0000
Received: by outflank-mailman (input) for mailman id 619160;
 Thu, 19 Oct 2023 10:42: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 1qtQUE-00070U-Ko
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 10:42: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 1qtQUC-0004XU-IS; Thu, 19 Oct 2023 10:42:40 +0000
Received: from [15.248.3.1] (helo=[10.24.67.33])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qtQUC-0007CB-AO; Thu, 19 Oct 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>
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=N4qcqYJGHacde6of26e8ytX9+Tz/Y0wDSLy1tpexaKE=; b=3uPUmjyO3SXdfGEMF4qGRWTeRr
	Vk5yuzs/Zqf1D8s+oZfMoIuBhKPw8s/GMqNCqsykOHCNMZrmDjLreXEXgjmJ79Nkyfe93Vs1VskZu
	H7Fk1B4az8WwLPzEcxvsJO+W9VTdn5XQYePwapaiUC6ilQ3x2JRKUcrYX4rK7qVdedF4=;
Message-ID: <9ee7b3c9-de71-4790-815c-8b2859a85465@xen.org>
Date: Thu, 19 Oct 2023 11:42:38 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v1 04/29] xen/asm-generic: introduce stub header device.h
Content-Language: en-GB
To: Jan Beulich <jbeulich@suse.com>,
 Oleksii Kurochko <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>,
 xen-devel@lists.xenproject.org
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
 <3cc9ecc3abcd21c5ed7276b01bf5963e6a5fd5e0.1694702259.git.oleksii.kurochko@gmail.com>
 <a20f5783-7ee3-6ed1-d4cf-379c30c64a12@suse.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <a20f5783-7ee3-6ed1-d4cf-379c30c64a12@suse.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi,

On 19/10/2023 10:14, Jan Beulich wrote:
> On 14.09.2023 16:56, Oleksii Kurochko wrote:
>> --- /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,
>> +};
> 
> Are both of these really generic?

I think can be re-used for RISC-V to have an abstract view a device. 
This is for instance used in the IOMMU code where both PCI and platform 
(here called DT) can be assigned to a domain. The driver will need to 
know the difference, but the common layer doesn't need to.

>> +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,
> 
> This one certainly is Arm-specific.

This could be renamed to DEVICE_IC (or INTERRUPT_CONTROLLER)

> 
>> +    DEVICE_PCI_HOSTBRIDGE,
> 
> And this one's PCI-specific.

Are you suggesting to #ifdef it? If so, I don't exactly see the value here.

> 
> Overall same question as before: Are you expecting that RISC-V is going to
> get away without a customized header? I wouldn't think so.

I think it can be useful. Most likely you will have multiple drivers for 
a class and you may want to initialize certain device class early than 
others. See how it is used in device_init().

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 10:47:06 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 10:47:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619163.963780 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtQYM-00019S-7V; Thu, 19 Oct 2023 10:46:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619163.963780; Thu, 19 Oct 2023 10:46: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 1qtQYM-000197-3a; Thu, 19 Oct 2023 10:46:58 +0000
Received: by outflank-mailman (input) for mailman id 619163;
 Thu, 19 Oct 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=Zn2w=GB=citrix.com=prvs=649eed31f=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qtQYK-00017k-BU
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 10:46:56 +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 cfd8d2e3-6e6c-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 12:46: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 Oct 2023 06:46:41 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by CH0PR03MB6050.namprd03.prod.outlook.com (2603:10b6:610:bd::6) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.35; Thu, 19 Oct
 2023 10:46:36 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::17e3:6cff:b087:fc64]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::17e3:6cff:b087:fc64%4]) with mapi id 15.20.6886.034; Thu, 19 Oct 2023
 10: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: cfd8d2e3-6e6c-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1697712414;
  h=from:to:cc:subject:date:message-id:
   content-transfer-encoding:mime-version;
  bh=+iklqGrsicX+5rwWmIBKwCIz402OQsUkWR48M06lAnw=;
  b=L2A+nS6GgK0IC3ORCnYGMeAdAc2SbAr05e5jIQizVhV11LODZC1SgGz/
   wAHtzXu3BtsvH3AyOvTIgu0pOQN8o9iaUidDFiPX5s/f+7I+Vbr1uUD1S
   vWSAd0p1vco4DBrn5D0Mabd9ZQu2TWikqZ6w3X3jPPu6bpEln/05OenaS
   4=;
X-CSE-ConnectionGUID: U5LRXaC8RJ+eoQPZ0rPlGA==
X-CSE-MsgGUID: Y0qaxLJwS0a21MvAg9gYKA==
X-IronPort-RemoteIP: 104.47.58.168
X-IronPort-MID: 124647203
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:mUfUNa+rCz8WsbZLkIeQDrUDWn+TJUtcMsCJ2f8bNWPcYEJGY0x3n
 2VODWHTPK6OMGqjKNoiOoWx8UwGsceEzoNlTwY//H88E34SpcT7XtnIdU2Y0wF+jCHgZBk+s
 5hBMImowOQcFCK0SsKFa+C5xZVE/fjVAOK6UKidYnwZqTZMEE8JkQhkl/MynrlmiN24BxLlk
 d7pqojUNUTNNwRcawr40Ird7ks01BjOkGlA5AdnPaka5Aa2e0Q9V/rzG4ngdxMUfaEMdgKKb
 76r5K20+Grf4yAsBruN+losWhRXKlJ6FVHmZkt+A8BOsDAbzsAB+v9T2M4nQVVWk120c+VZk
 72hg3ASpTABZcUgkMxFO/VR/roX0aduoNcrKlDn2SCfItGvn9IBDJyCAWlvVbD09NqbDklzq
 NgiGDkmPiqhxO+x+YqJEvNUgusKeZyD0IM34hmMzBn/JNN/GNXpZfWP4tVVmjAtmspJAPDSI
 dIDbiZiZwjBZBsJPUoLDJU5n6GjgXyXnz9w8QrJ4/ZopTWDilUvgNABM/KMEjCObd9SkUuC4
 HrP4kzyAw0ANczZwj2Amp6prraVwX2nB9hKT9VU8NZb2ESa1kgxFyZOXAHihOeQhR+xavF2f
 hl8Fi0G6PJaGFaQZsnwWVi0rWCJujYYWsFMCKsq5QeV0K3W7g2FQG8eQVZpSNEgrt5wejUs2
 XeAhdavDjtq2JWXQ3+A8rafrRupJDMYa2QFYEcsTxYB4tTliJE+iFTIVNkLOLWuktT/FDX0w
 jaLhCsznbMeiYgMzarT1U/DqyKhoN7OVAFd2+nMdmes7wc8boj1YYWtsAHf9awZctbfSUSdt
 n8ZncTY9PoJEZyGiC2KRqMKAa2t4PGGdjbbhDaDAqUcythkwFb7Fag43d20DB4B3hosEdMxX
 HLuhA==
IronPort-HdrOrdr: A9a23:jaW886PXzN/wO8BcTuWjsMiBIKoaSvp037BL7TESdfUxSKalfq
 +V7ZcmPHPP+U4ssVAb6Le90cu7MAjhHZ8c2/hpAV7KZmCP0wuVxelZjLcKqAeQfxEWmNQtsJ
 uIsJITNDQzNzVHZArBjzVQaOxQpuVvOZrHuc7bz3NgCR5ncLth6QARMHfgLnFL
X-Talos-CUID: =?us-ascii?q?9a23=3AcAjET2oY3CWRQHIT1pp0ekPmUf14VkftxVyAGW3?=
 =?us-ascii?q?7BGFQcI/NU2eU14oxxg=3D=3D?=
X-Talos-MUID: =?us-ascii?q?9a23=3AJqbEzg+kbzpudyWenQlDOECQf/Yw+q2+LGISqs0?=
 =?us-ascii?q?P4ZChKwV/ajisrx3iFw=3D=3D?=
X-IronPort-AV: E=Sophos;i="6.03,237,1694750400"; 
   d="scan'208";a="124647203"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=j73QVPq4/f0m4DZ5adB127h/pXb5egEkA0A+0yUr6vH+mxBYYBNMXICz57jA0PQhNO959D3iODLOUpYmft2WbPu/PPwRGNx7WQ03I+PSEKD8WNzFKfiUwqmmFZ87a2wRcHZvouThDj5fuC1jmSAnEc48ivlY+ixcvVQQNASvWLTEObih9BVtkWs/vyJeKIsS5JT+n0zaaxV+GGc7yAJzn2kIMn4ztw47lcQ9VQcjeX5CwZzw+Nl0v8maMy+Cxg836tqzZsp1L48cTcjbOpQp0rG8mGIMG27H3/AaHr04o2hF4SDib+oW7BdX3Aw4PMtkZRyxfYSQR4k9j0I8vl2OjA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=IjpS+FYKGfARqI0AzJ0tD8nK2G71v5Eaq/qiMlHTqGY=;
 b=nBK5MVbqSKVlnu3VfQgdEz1jIHKWJ6oY3BSo8wqfXxl3DOpQHTOtDv1iPZjzmB7Y7Du3L2SWmv8ARswhaVEXrY65e9N62otrnz7ymAI3oP7+8HAG0afzzbl1i4LdLVQSG2hFG5BdCKi6xywpthYTS3wgdm74TcvJu0dIteHeirqXorMYUBgUOPGhnlmqQoYDoTXhZY645HZTeSxm+8Rapjb7oj6h1CcB6MDqQNOCR3CVA5KjnNNG5Y4WxfxJc5oMJDH17X0pcedjIa//I90RJZAXjfX6JRTyYBElVjZtVjiiXOcCoDpHZfwpmOdkCw5hG9gkf82UuZV+xLlG5OtpdQ==
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=IjpS+FYKGfARqI0AzJ0tD8nK2G71v5Eaq/qiMlHTqGY=;
 b=m/5fj9TTsDY3yeQ7OgmdQTAnr6tdJYjkaWJPCZRN8l+44pnd2lIKYoOmPR17HPqJOUH3h7siosl2i4GzOCGKvE/g3/mnNgr8B65ktPO4CC8O5FiBpIEj65GuS+jvBym1lt+5gtWD6UFQ7PPLGqSpfdHZBVjLce69JmaSlgETVpw=
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: Henry Wang <Henry.Wang@arm.com>,
	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 for-4.18] iommu: fix quarantine mode command line documentation
Date: Thu, 19 Oct 2023 12:45:51 +0200
Message-ID: <20231019104551.27870-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: LO4P265CA0001.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:2ad::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_|CH0PR03MB6050:EE_
X-MS-Office365-Filtering-Correlation-Id: c4cbf4a8-fd6e-45f7-47da-08dbd090aa8e
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:
	mlWLKj20B//0yZIJHPSGCoipZcHKUi2Ofi6ALtCDb1eLgG98/lQgSMQXtoyrd3eBmdHBMQbWTEfFVPUQYyu6dChl/Xfg/+o6U0yB8TK/9qUIfwu2VUzN+fLREvk3ko023N7rUPP1u+e/sC4CWfimN9xSxmx4CcKj2mOlBubt1IalGqanrtx33OHXrXF9TeCiliVOV7cJSeeXtQ5zQTXYXRu7f++AodsOeLm8PEWqc+lcfMftgO5kXUoHX+FA+Z3Rdjc+PcaNZvjHs9o8DP8LHF/Kx4D1B5f9/NVBS3KIDybrecTgd6al6pD06xJpjFgu0rhrXAMXUCUtMnBqig9yoqm4ewzXzcoDf7kWBAY/a9UN1FQIidIpeN1WMyMYKTVBRvYTThw3JY7sHVpmEsKQXfhYHja+5Sl79kOf4OgtC+aCbfi+tddYnXKI3E2WLVjUHWg40U7iXNgAusd1I3dbtk5btXXMeH9R2WeTlYgwz5gUFsI/ZaGOfCC393+U2EBdTzthWupdK2xsqpRsnwBa1nFTNpJLLkFhEpKVEPLCbeU+ueQhnOdYk/kD6dGo/agW
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)(39860400002)(346002)(396003)(136003)(366004)(376002)(230922051799003)(186009)(1800799009)(64100799003)(451199024)(6512007)(6666004)(2616005)(66476007)(6486002)(54906003)(66556008)(316002)(478600001)(66946007)(6916009)(1076003)(26005)(4326008)(2906002)(8936002)(8676002)(36756003)(41300700001)(5660300002)(86362001)(82960400001)(38100700002)(83380400001)(6506007);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?WVNwSTU1MURVeTRkVUJBd3FMU214MTZCYVczejZXUVloT2toWllucFgvK1BN?=
 =?utf-8?B?VCsycW9IYStKcUQ0aVpLa25pWG9YVVZKRUFnY1V0V0xqSEpkQnh3VmpBQlJO?=
 =?utf-8?B?alJSL1Q4NkJONHY0ZmVhV2d3RjMwZEdPUnFUb1hUckZESU55T1BxSlpCbDFi?=
 =?utf-8?B?RkZ4VnRlZFVQR09RRGdEclEwejA2QUV0YS8yTHg1QmJJNHZlc2g2anpCTHlw?=
 =?utf-8?B?Q3E5NDdKMkJxbndQM2ZXbGp6L25xVXV2MVhETldkZEZSTG1xRXpCVkswd0NT?=
 =?utf-8?B?cXFNOUowdHIzZVZaSGpYWWZ5VmRyZkxkN3dXdHlMa3FGa08xTW9yS0R5YXhH?=
 =?utf-8?B?Qy9QK1F4ajFlWnJvbS9TTGhrOW8vUWxnSjNjOWVaMzV1QkxuNXZVbWVJQTNu?=
 =?utf-8?B?SkYxUm1qQXA3YVFvOTJzRlM3TXpheWxuS09GbjJZVHZJeW9iYU9USEx4RmhO?=
 =?utf-8?B?M3YxSW9FQjNuYVpjaDRocm9yZGMvaGRCUDZiL0V1OFZjbDNkWmdOK1VEb0k4?=
 =?utf-8?B?ZVFKdE9xUlRmVXB5VGpoaXhUUk83TVFTa3BHSm42VHVyUmhoWDN3VTNxWDJD?=
 =?utf-8?B?MEQ2TE93L0x4cmdVZ3Q5cFhIMndNa2JEWlZ6cy9wMXF2UUtOSXZoM296SFNS?=
 =?utf-8?B?Z2JJby9acnhaNk0zMDBLQlJ0MWNNTkdmeXVJeklqYkRZeFZ6SzM1U2h3aGVo?=
 =?utf-8?B?TnBwbG1ORnR3RlhtVjZDTDk3eTM5Q2lLbmxiSk9yRHphdkZrd0VxRkZJbW1u?=
 =?utf-8?B?MkxjMTlzdnpxUCtwcW83OTJQeXZkQVVDNUhHbFBDblVlYlFMd2dmeFYwQ3U3?=
 =?utf-8?B?TTQ4dFUyS3RVVmNLdkhTbUpSM1FSK1ZuajlJSEI4Sm5WM0pjbzhtWDcvRzB5?=
 =?utf-8?B?Vk1XNTBmN3FnRVNhNFVtUmtSc0JtaTVaRFJBeGNIUGtIM0llQ2lSOFQ2M0dq?=
 =?utf-8?B?UVdadVY4Y2cvUlkrUUN3VUhOeGVVYmZLMWJLTjMycFZWM0REblNjQmh4ektC?=
 =?utf-8?B?U0FMTjgySzZHd2lnZExRMTZrYy9UK0toanJ4RHNvMitsZVZUNmJaa2owQkxR?=
 =?utf-8?B?enFwTWpVcHdZbXFCSXpDUlVXTXYxNTRBVWUxOUdsWVJnQXJVVmo1VmN2MlQx?=
 =?utf-8?B?RVFUbkkwc2JxY2d2UktsU2p3VlQwQncxaTZZenFGUzEzVi9ubkJiWXBqVWVq?=
 =?utf-8?B?Y3hNZ0NjR291U2Y0dUt2eWNkL0JJL2JCM1ZKb042ZVpVcWd2NVo3cTBFblhO?=
 =?utf-8?B?ZHNNcHgzRkZ2RWk2ZkpqdDN1a21YdFVTbXRYMXAyamlNb3RWcm1QSlhHdUxX?=
 =?utf-8?B?RklOaElId3ZXRWxlN3N3QlRrMXBTTDdNQXNsbERyWUMxV1pzUloyVWNqKzhW?=
 =?utf-8?B?QU1uM3hld3NETlhuY2JIU1dPRWhScllZQlFweG5GYzJnNmlseHhEQmErOThw?=
 =?utf-8?B?N2ViOUpoVFdHcWZHRGpRZi85bmxOSDBFaWJJaFY3WHVTQXAvTnZyd25XUVA4?=
 =?utf-8?B?UEdVWUlHWTBNckJyNjdJaXozbk5qNENCUVQ0cnk3SDVYWDV2aGxUR0QxSmdN?=
 =?utf-8?B?QjJxUmRDUDFDemNzQW9NVlNUbVVFSituZjRZMGR0cWl0VVMwQjZPVFBha0hW?=
 =?utf-8?B?RXhyMjBSeWdMK1FHS2JrVE5iOFFoUEVjUUpEZk43YkgzTjZqTlFKZFBpK1ZE?=
 =?utf-8?B?KzQ5OG9wR1Fab0Z1WnFvbDlMcDQ5MzVNbGRGMW1PWHpDc0xMbzhHSHhFaEEz?=
 =?utf-8?B?QUxLSE83VkNRQjYxUW9XVmJRWk1pTHRnMTFObWRLQmcxVEZXWkY3bTBRS0Np?=
 =?utf-8?B?TDJ3NjJvcHIrQVBtZDdjdUxYeXdDVHZudkoraWkzWkx6Uml0cEo5QnJ2dGx3?=
 =?utf-8?B?OHBpNTBrZXpROXRNTTd2cW5MWlkxV3k2KzFZcFJUbXF3UGhPSFBkOUhLNVpx?=
 =?utf-8?B?NnBEdVlVVmJzSFlyM0VHcGUxTHp4YlRYUVdhRW96MTdRYVltVzJ1akhkL0Nw?=
 =?utf-8?B?Q2Q5RENzWUxMVkszU3I5Q0ZlMElQYXd3cnRrT05TbW9yOG1FekdscHlSaUp1?=
 =?utf-8?B?d1JMb215ZHd3MkNZQnYzZFFyWVF1ZnpabUs1V3N3aGxXaG1WeE81SVFBMFBs?=
 =?utf-8?Q?VyxvZSyBGl678HmzZa9tiXLzA?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	SZDGeFMkx0ymV+xFpLTQsLnA7qZMarWJtAV4fwQImCWUr1JADbXBna6XwS3CkOMC061+m36A/kf+dTYLl876ZMB+XnmG4axjkXUax1vangDpZrDNSsvGaWkWD7x2PEdj2LGH22NL/Sy0IUW2X8pro8cfA/IkjM9VpN2WqKeCbnECHpWG8UB7hV7BCv+UFXhvvU7HwEEDsKxlHfv/Zf2tBzl5icjCoNtl0gf/Nnt1uYYUOD7skcYWgQDymX+DjMX/a1p88bwDV0kd0Vlblm/Jc6+wMHslS4Ruagta4X/7moTtYcWpZULPJl9xw6OexaK6QK9fwPONIaKnGsexA10h04UJgVFv4GUmvrFnkzhN41tXjS/J0ivCRc6w+oioCMxMo0pBsU1eVEQARLOy3y+XXDqGk6TO44jL6LvpyJAQQ7M54p1SYV7pqtLF/Y4pTeTZRWR4vqb+ZWh2PMd2wmnmDwn/PJNjpmQjM2lNpBUMG8jJuPyurFlOpy10PuysATe8xeZz/chh+/3NySHBSsb1pWxkawfyQzw9R5iimpZhEHo9zfXXWDiiQ47s38QUs7hQ/7cHbq9/dnYABeX0eN+pMaAAfNkjwepuUnBQwaNdqwbInibZDrt2p+/HW8KecrJ1gb2eUTpoddQhx+/1rp7503W+KbD7YaisDQR69Sh2104WQpuXNSUWW2vYqGmkIm1vF35LkKBTEcrwm5xyC7NRFOi30fpnPBVMqn1cCInlIrk8wtlL1Mc7qUEjrdDGg+I3hRnMezG7ZoMHO9N0LsC1OHD+8u5kPVdzKnKrxgW5NoBEq+59w5pKqUSa9apZXeoKXqNZ+Ivvo/dDLLqZCY0+9kycBC54FNyqHfvdI+hIXX80QLMv2FRMxXAduM9K311B
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: c4cbf4a8-fd6e-45f7-47da-08dbd090aa8e
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Oct 2023 10:46:36.1019
 (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: dPJJ2Zj/sSULVUtxu8XFS8NvisQsL4Z1tdCU5pK5xKOR5aBeIxUqtvZwPcnxhhUJJ28ca0nwFE7dAg5i5l5eMA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH0PR03MB6050

With the addition of per-device quarantine page tables the sink page is now
exclusive for each device, and thus writable.  Update the documentation to
reflect the current implementation.

Fixes: 14dd241aad8a ('IOMMU/x86: use per-device page tables for quarantining')
Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
---
 docs/misc/xen-command-line.pandoc | 9 ++++-----
 1 file changed, 4 insertions(+), 5 deletions(-)

diff --git a/docs/misc/xen-command-line.pandoc b/docs/misc/xen-command-line.pandoc
index 604650aaeeef..9121d8a29404 100644
--- a/docs/misc/xen-command-line.pandoc
+++ b/docs/misc/xen-command-line.pandoc
@@ -1520,15 +1520,14 @@ boolean (e.g. `iommu=no`) can override this and leave the IOMMUs disabled.
     should be enabled.  Quarantining can be done in two ways: In its basic
     form, all in-flight DMA will simply be forced to encounter IOMMU
     faults.  Since there are systems where doing so can cause host lockup,
-    an alternative form is available where writes to memory will be made
-    fault, but reads will be directed to a scratch page.  The implication
-    here is that such reads will go unnoticed, i.e. an admin may not
-    become aware of the underlying problem.
+    an alternative form is available where accesses to memory will be directed
+    to a scratch page. The implication here is that such accesses will go
+    unnoticed, i.e. an admin may not become aware of the underlying problem.
 
     Therefore, if this option is set to true (the default), Xen always
     quarantines such devices; they must be explicitly assigned back to Dom0
     before they can be used there again.  If set to "scratch-page", still
-    active DMA reads will additionally be directed to a "scratch" page.  If
+    active DMA operations will additionally be directed to a "scratch" page.  If
     set to false, Xen will only quarantine devices the toolstack has arranged
     for getting quarantined, and only in the "basic" form.
 
-- 
2.42.0



From xen-devel-bounces@lists.xenproject.org Thu Oct 19 10:49:21 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 10:49:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619166.963790 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtQaa-0002XO-JG; Thu, 19 Oct 2023 10:49:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619166.963790; Thu, 19 Oct 2023 10:49: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 1qtQaa-0002XH-G2; Thu, 19 Oct 2023 10:49:16 +0000
Received: by outflank-mailman (input) for mailman id 619166;
 Thu, 19 Oct 2023 10:49: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=g4nO=GB=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qtQaZ-0002X0-6h
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 10:49:15 +0000
Received: from EUR01-VE1-obe.outbound.protection.outlook.com
 (mail-ve1eur01on060a.outbound.protection.outlook.com
 [2a01:111:f400:fe1f::60a])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 23f63334-6e6d-11ee-9b0e-b553b5be7939;
 Thu, 19 Oct 2023 12:49:13 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS8PR04MB9141.eurprd04.prod.outlook.com (2603:10a6:20b:448::22)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.21; Thu, 19 Oct
 2023 10:49:10 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%7]) with mapi id 15.20.6907.022; Thu, 19 Oct 2023
 10: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: 23f63334-6e6d-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=DYRWh9AlyOEZCPh88+1XwXuAMmvR7TEy+5J9j+Ij4TZ+pa9ejIwUO5knc5gRHqx4KtqFLZoIr0hJtw0qZnt4x+59v6o4HBAD/ZHeqXS5nb0fQfG0Z9qjIT2YO+nJdrQ86baYIO3/kmD34E2PKN4c0zPx6D67TI+8wq/l5eq3gUine8qB1TKKOZsxVw2qjLMTxulNruZeA48JiyevlvALzihj2HrBoxccX5zjSiislfbPpoLbvt1chq9Y8CKXgZlnDcVftoE1EGpx4/MXEon0xpqhE4444h6p94aZy5zwV7bllctXvxdBx8duVm/PtfkijISio/ABvxUTIJJSDIGRFA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=OVjbXoRLzrAgp/ihPPVwM/kGZFysrF9AM61GmSMhvxg=;
 b=muhpA/TQnuUjyB626AiUwOZ+BiyVa6+7KVm+D73MVJhzZFDf+XEb/yMwDow3Y9tvlegJKq226w8akj3gAHb/fXeI93YJaIlHZoitknkBMYS8WCZejpEtYgb6cQlZz3F/hTkm+uUM4rfT/judwWkfHWSr8AYg4B8fCfIYN4zPR9JgPug9+7dmMAwc1u9wPpRuBVwZvd+LcwYbDGve3Q6HvqKzJEkWhWlAhugqJYir499sAF1NgDJ0ZcTGl/pQLtAnUkFGqlfQo1r1oVSTEhgXua6+bFefyigVJMKcPUYAmnjLB31A/+xNdfZtL7zsQi+Wng0tx803gxRrA/jMn6X02w==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=OVjbXoRLzrAgp/ihPPVwM/kGZFysrF9AM61GmSMhvxg=;
 b=pnc4GWFIjSUxM8Ia+Y+zX6ipHNKUk1023jBDjzO/TskxzwMpbrJz3Mv61F9zLPM1lZ1D2b7xcshsjnsAKuAyZzCJFzbuJfOzUj53sz6cBAnn2A0k0z0umU18BYll67FlrndZA2Xde4B4wY1TkhNJORrIllxMOBQsfFNflAOx2Duf52dISe45sXX2IDbYXMFX3udJ972jv2aQ6L6hdx+/8QNxChoSX0h3YitN02i9A+H9p5RYgLuNSGs9fgsrkM8tdSldSuevFZ0W5twI6cc1hUFxH8HYw96ZdREG68LfHmioxU0HGPxPHhFap4IKwVXfE0E6i4Wl/PIeh5Zn5no45A==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <bacfc35a-43a9-7b52-12eb-f0d828dd44dc@suse.com>
Date: Thu, 19 Oct 2023 12:49: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 v1 02/29] xen/asm-generic: introduce stub header paging.h
Content-Language: en-US
To: Julien Grall <julien@xen.org>,
 Oleksii Kurochko <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>,
 xen-devel@lists.xenproject.org
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
 <5def596788d602b9b34302630c91644952c7115d.1694702259.git.oleksii.kurochko@gmail.com>
 <0911e74f-73e1-6053-ce1f-ecea98ea5f17@suse.com>
 <c474dde4-3175-426b-a10d-43e816f9fe27@xen.org>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <c474dde4-3175-426b-a10d-43e816f9fe27@xen.org>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0150.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:98::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_|AS8PR04MB9141:EE_
X-MS-Office365-Filtering-Correlation-Id: 1923d809-992c-47c5-c4fe-08dbd09106b5
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	qWfVBP6zUZ4r/xMSTO1Q54EqkeppotkOn39PuA8oDvQiy6ZgGje6BcO3sccv2d3fwGsw3wZ5uooY0+92EHN5xIik4nCFIDo2JUaGDZohIR6F1XjKAyvOLWt2JgFRRzIOTxZz8kxh1DT05SF8lipp6BFee+DrU9bJHb4GFSt3d7JQYDC3ru4coPzEkBDIrbvxP0ykKItbodgSJZ0CXL0QBsOLLg3ZYAehv4NCKq6SZmVe2Nc3CQYVCzb1bNXIV1Lbr+xnY+q98WFUM7dXqN5EJWgHTMQLDEK9LXBIXwfPdclM5ndahgaV+gmB4v+V6JHrM4KiNnUsU1OE/VM5bQ6MeBSeOS5QTjlKyd9oqFBDfssJPekumvt9HxtSR3Mj+G4QDLQm9Q0qoSjsZMX7kgR59QH47P22dT3ppGPj3SO8XsoMxhkIlTPWZuMtPdOkp4MGz7lgbaWj/FXS1NyLcPHsI4VtLVZjdjwiDl++0FG09c3adhUvMUqvn+tQiDN+a7iOxm4Pn5j89vgXoLE33b3J9Dlr+b9qhGOsImkee3lUlbYs3Pzqs/Gp2nVW+AbOAumLDdoKj9EbSqe6Ev+dCc/TxE0YUNTqMScb79ylzgj12Sh4urnbj4iRPPslfY6jBJOwikDbhS5DBsWwm52ulWyooN1uGCpL/sUPHvW5O56RmqA=
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)(64100799003)(186009)(1800799009)(26005)(2616005)(83380400001)(6506007)(8936002)(53546011)(6486002)(316002)(2906002)(8676002)(4326008)(5660300002)(41300700001)(478600001)(54906003)(66556008)(66476007)(66946007)(110136005)(86362001)(38100700002)(31696002)(36756003)(31686004)(6512007)(41533002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?YjdOSG1EQldDUWtDMm1wUUpMeGNHK21uN3dlNWxFMDYrTmp4cVZRMHNBWnow?=
 =?utf-8?B?T0hMUlpXS2hNZjI2K1k0UTRsczNFWnhneE9UcmtqVlRZY3hRNVBDQnZaVzAy?=
 =?utf-8?B?YzRBV2haV0lPVkcxUWpjSlQ2cUpWVnVBMkJnM0RqWGFVbDF4bFBDQWJHTEw1?=
 =?utf-8?B?K3lLOHdFK3ppd3QyUndmVTMvOUR2b3VyMGFpRmlnaURPb1FadUlKdGJDenBx?=
 =?utf-8?B?M2c4U1RaMU5NK0Jwb3J2eUxLZzdSMlFNWWh0NVJMN1BoeVl1WlcyL1ZaQW9I?=
 =?utf-8?B?aDVKV2VYN3FmTEdvUm9GK3Q3WTFWR3FhL25sQVhCT0lGRzNvTk1Qc3U2MjZU?=
 =?utf-8?B?cVczNmFXeGsyRWNzNzdRK2FFNGJTeXFiNzRTR3B6T1BsY1RnNldXcUFKQVJx?=
 =?utf-8?B?Z0FURTQvSHBBS2d5bEJDc0pIdnFyT3VMZnhEY1FsbHg2STY1UHk3ZXRKOGhq?=
 =?utf-8?B?ZitBVDg3OVJTYS9XMXUxUUFTckpaalFDQkQ4MVFWQStqYi9YQ1NqbmxmUHor?=
 =?utf-8?B?QVJUVkg3QUFnVDBCeHZBRXUzR1E2ZllYRHpiZ09lRmxvcGhhbjV2TXlwVUNp?=
 =?utf-8?B?NXFCUDNKT1UyZEVyaGF5VVE0ZTZuSGphdEhaS2s0b0RjYTQ2aHNrTVRTYy9v?=
 =?utf-8?B?TFBXRlhmWmdndE9lR2pMSUR2QWZRT2xxQ2dwcE1ZMGpLNTg3UXUzOUMwc0VH?=
 =?utf-8?B?Ky80QW9PSkd2aDZiUG51QmVPNTlCbmFSa1h6TnBzdmt0TkUydERmMkVzOFJv?=
 =?utf-8?B?c1lpMEdiajh3US9WTTRrelYrem5LVWprOS9JdXVCU3F2Zko5Mnl4bXZBaFND?=
 =?utf-8?B?MUt5VHl0K3VGcVJmSHNBTFpleGVvL0x2cFd1bVo0NHM4aUxTeTBad0tvY3la?=
 =?utf-8?B?di9scWNtcFBtZ01vRzdaSkRja29zdEdYaUkwa0F1RWhYUFp4T1JyT050RkY3?=
 =?utf-8?B?aEExMlZZcThuWS9HUFVHK3NlOW0zdElDYXNHNEFLVHFSRVBSQmd4RVE1SjZX?=
 =?utf-8?B?R1pQU2pjeEJ2SytQcE5FcHhzYThWR3c4ZHdjZGxhc09PSlJwK3diMElka3ZE?=
 =?utf-8?B?MENKTFNHK2FBVm1HM0JCUFdOQVhDNHY0LzBwMDZCaXlLUDZjUFhUOS9IN05G?=
 =?utf-8?B?YmZtZHJCc0tzc2ZSMXN0cTkrTlZkS255WlI5dHhaeG05YzBJNGw1S2hSWVBh?=
 =?utf-8?B?Zis1dDJmSXpxSlN4b2xTeHhaTU1YU1E1Rndsb29FYUdaMXQwRmVjL1JqWDJv?=
 =?utf-8?B?Sy9hcU9PYzFTMWhhYnpqSmliVmZ1K0lsTUZ0cUEyUnBleERIY1FhMjJUbTdt?=
 =?utf-8?B?aERyY0N1QjlxWWF0R2Znb2hVT2kxVEFteFcrYU9YMTlob3hqTnJ3TXpjV04r?=
 =?utf-8?B?RUx1ZmlnTHlVQzdIK0d0UVd4YzdxTUZOc0hZeUVTSXlHVmhFQ25tWC96aWIz?=
 =?utf-8?B?WE5YaDhSSGZrYWkrdHhDNi93dS8yYnVwTmRzR3VoWWNHRkdGRkxYVndOUys5?=
 =?utf-8?B?NkRaNnF3MlBUem9LSkhDbzBrL2hBZEZvOUpCSFl4WE9Ed3d4cDk3T3c1WXRW?=
 =?utf-8?B?ZDdzVVdBNlI0aGFRSjBtei8vaS9QMHBnaHBCUm9BU3lRdERSeGhUUVZXaTVE?=
 =?utf-8?B?a0lZWmF5bXZsUnVZQXQrV3RHeFNZZWw3T0dHNWNqa2FCM3VRK2lRNGxIY3l0?=
 =?utf-8?B?dzJqTEZ0Yk9aVFl6T3Z2MjByUkNzcGh3c2tPOVYzTHpLMHlDVzM0RGxWNGph?=
 =?utf-8?B?cVJWVFVtVDc1M2NmeXBnbjNwaDY0MTF3b25RNTJic1lCQXdQK3JXMEpIQStW?=
 =?utf-8?B?YWEySVRUL3NxRi84ZzZjSHNCbHRhMk9CaXdjWFFkZnl4S2Y0VzhpRE12UG5L?=
 =?utf-8?B?aXhBaytneU9yQ3dnbFhCR1JZamdXdEJDZ0NHVk0rU3dLTXlLMTcvdDNFZkNN?=
 =?utf-8?B?SVFEVG9xUmpDV016cHcrL2tOL0ZxZ2s1QnkyYjRkRTYzeGlxWXI3clRKbmVt?=
 =?utf-8?B?b1lMZWNpQ0ZDeE4ydmZhdTFJRWJjNmdUSkZ3dmxjcDJ0aUNCanpuNmtJUzVR?=
 =?utf-8?B?SldGM2FpZmZ3cmVJY2l0N0hWVFdTaUZvbE5BNno1Z3E5dWt3OVZjdFdQMlZn?=
 =?utf-8?Q?sGtqa0jfBnAJYL2LazINCp2fP?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 1923d809-992c-47c5-c4fe-08dbd09106b5
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Oct 2023 10:49:10.6793
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 4DibtHCnDrKfBnAWAZ95JfuCW/KT1KVTEAGgJgfXU4Jg3iiuhKRo81m2IRGq3DiaQ3D5y6Ia6r7aUjYpOUPQFA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB9141

On 19.10.2023 12:35, Julien Grall wrote:
> Hi,
> 
> On 19/10/2023 10:05, Jan Beulich wrote:
>> 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>
>>> ---
>>>   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)
> This is more a question for Jan, in the past I recall you asked the 
> macor to evaluate the argument. Shouldn't we do the same here?

Would certainly be desirable, and iirc actually needed for one of the
Misra rules.

> Also, I think we want to take the opportunity to convert to true. 
> Lastly, this seems to be using hard tab rather than soft tab. In Xen we 
> use the latter (unless this is a file imported from Linux).

Oh, didn't even notice those; thanks for spotting. If we're at cosmetics,
the parentheses also aren't needed here in the expansions of the macros.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 10:50:38 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 10:50:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619170.963800 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtQbs-0004SC-U8; Thu, 19 Oct 2023 10:50:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619170.963800; Thu, 19 Oct 2023 10:50: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 1qtQbs-0004S5-Qr; Thu, 19 Oct 2023 10:50:36 +0000
Received: by outflank-mailman (input) for mailman id 619170;
 Thu, 19 Oct 2023 10:50: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=g4nO=GB=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qtQbr-0004PK-IB
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 10:50:35 +0000
Received: from EUR01-VE1-obe.outbound.protection.outlook.com
 (mail-ve1eur01on062d.outbound.protection.outlook.com
 [2a01:111:f400:fe1f::62d])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 53e896fa-6e6d-11ee-9b0e-b553b5be7939;
 Thu, 19 Oct 2023 12:50:33 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS8PR04MB9141.eurprd04.prod.outlook.com (2603:10a6:20b:448::22)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.21; Thu, 19 Oct
 2023 10:50:31 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%7]) with mapi id 15.20.6907.022; Thu, 19 Oct 2023
 10:50: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: 53e896fa-6e6d-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=LsIP+50SWMY3NfQKm4Sg9eSUZaSiZGtmQfJ62xJVJJZbsCCdHFl7q+f/RXWeC3166kTTripRqXvkHNcDQrUAb7KG9H10mrwU/BCv+3kwvYk8gqWIZuHgV1uzvB6YjKyJTMBBTQNI/KHuPOk3Rx8U/J70pV/cDuc/zET4qiIP5HhnpYa2CUsbrEf84vQDn++N7BGh9uudLD90Kp4EhAUeGwN5DJzsZydRASkNA1fXAaBBCgMY0j6XY3GAyQTfUhlxuhjS7fSvNT6m2yH4l5+LoDUevV9F2ZTlK3wul7VL18vaLJibbJb/8dAqT2F3iLvNcb+S4NH4uFLdiLZ5uPGWrw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=lDucUsl1ZPXm+E5i5UDfK+wDYzeX2VzORlqZ+V+YQsg=;
 b=mbU2jslszGj+q0FTdNTtR40tGrzIgngHu4BTb4m7ufsZD1ni26YP16UHGPrHC8IlL9BKlwy47yNXmq0NBdb1sZZwMF34o3xph6yPos+Tp9pTQYzpCKJJRPq8+a2lHnzNl+BUzZrfeL0gic98tANcF8nFHa8o/MPoWXMzPpFppB+K5af1Eq8EEe50riQ/sCT+e2OYb2wXX6yXX49dMKNLGInmn8iSX/qIWu+YCjRvQfrXrtlMQvLPAUsW9ntl6cX5lkOf9+9zJraUEF0P54UbNZ60nIVZy7KfTtMIPxBgYxvTM48q9t14dfafqz/ayfVbCvphuAd7WBLnmnIBW1q/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=lDucUsl1ZPXm+E5i5UDfK+wDYzeX2VzORlqZ+V+YQsg=;
 b=EMLxLNk1XbNUrmYMmE2PlsZEUg8QP6ci/LtonrRmWLiGWi4JI+SjSK0L769AoJwZr2eqPK8TAhOTTaU+SpuWprCASUWrOhsJpI9rvlHlbauIyTEtFUvhfMAVqfglo/aGmL8ZVY76vZEqakQuq9AcvGVOw16AWx/z2/qK0cGPer0a/CunglPTW7c1qra+RgMz4OnZZ31sl6aj0GtGkT4lhT63wWsq1djd2kHo2TQqs/rVOjtX01htO64vM2F34sDn0X+cNeMIw3T78U7LiEDI1lnVQad7K3PKGqMmBhic4rVp1cbyoDwBbTqY12nSUOVhJ/N3SeUcgkQyCJ2BkwnuBQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <803d5f10-edf4-9e10-f801-d480c93ebec8@suse.com>
Date: Thu, 19 Oct 2023 12:50: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 for-4.18] iommu: fix quarantine mode command line
 documentation
Content-Language: en-US
To: Roger Pau Monne <roger.pau@citrix.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>,
 Wei Liu <wl@xen.org>, xen-devel@lists.xenproject.org
References: <20231019104551.27870-1-roger.pau@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20231019104551.27870-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR4P281CA0028.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:c9::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_|AS8PR04MB9141:EE_
X-MS-Office365-Filtering-Correlation-Id: 3632f0fd-e324-4505-1dd3-08dbd0913711
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	owhfQmvFvyuI20OEC5UP9sTdPofaBiCxgJjGenFEp/Xv7cUnkoXTz2HZPnTqAkelV6G5skIsXJKk2hj6I1HgxLuQuVg4Z5ujNl7xNojWxsL0cD2wlj1UHjmOdB+iIx+azX1MUGJumr6jPvIu3A9t4Zln+s+WFYxlR/+BT6467ArwZOCMlkh3H3VdtiBBDavFob+d4AmB6Io6sVPIdfWyuKiEMBxPN1M+5lXKthTtiLh4h08u03pilgdFki+bcf+mkgBay9LK2dS99tOX+db/VebpTvLqLsO1B7EqlUzQX6RKCeNrUSDthWfd4eTgZXpq1P6698/gVZOV2vlkX4SGjA0amZEEU4suViLuH68g9uwv5S6gb0u6TAhikMnswhKBw5qp4Gd7ap6CH1wF+erZTKps4yga8N9jI3QblR6LQlcO4My7umXYcIw1NPSWELb+Wr2GLuKTezfE+NIJgN5U5w9YM71oUoCfHbP85LWuh1RGslHKiiKGytiUu206xAaxOJh5A/YvibkY9BcAlOq4CdC5jPR5FmAfJ+17uy70kdXibmuPo1F79HHdirxwyo4pYAQVXSqm+z3s3CX4iSWj/tSDhIUSBAdtlPczOm6BgnDptXJbihzUyZLDcdwI9GvEOOrw9z8a1RgCVlZsZYN4Ow==
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)(64100799003)(186009)(1800799009)(26005)(2616005)(83380400001)(6506007)(8936002)(53546011)(6486002)(316002)(2906002)(8676002)(4326008)(5660300002)(41300700001)(4744005)(478600001)(54906003)(66556008)(6916009)(66476007)(66946007)(86362001)(38100700002)(31696002)(36756003)(31686004)(6512007)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?SzlNb1JnWWN5b0VvRnh1cVdSQlQ5cUQwVG9RbjRmM3JpaUxzQjl1RkZvMFJk?=
 =?utf-8?B?VlkvWEZ5bEE1NEl1QVlpcDl3WlhCWXBYN2ZjVE1rczJVM3I4d0dJZHRZdUhw?=
 =?utf-8?B?bS9RYitPODJRb3B1NkxnOWR5eEF2ZThEWFhqWWsvZ3cyWllmVWVpUzFtQW05?=
 =?utf-8?B?ZkVUUGNDUmFJaTlKTlRaMmRuaEdIK3NxQ3V5WXUrYi9naE56anFhd2U0eitD?=
 =?utf-8?B?cWRxSmJEMWN0N3daQ3p0VE0wU0xEdWZTNHZDVGJWMFJ5ZWRUbmRLU043d2NU?=
 =?utf-8?B?Z2pGMnJ4TnYreXp3UXhZR1JENUQ1c2MxVHFIOTFEcktzS3A3MU5UV0I2eThU?=
 =?utf-8?B?a1lUYXJMaVY5YmwzUnVmRUQ2aEEvRDZZQllIY3djRUxCVjhlYkQreXpNV2lz?=
 =?utf-8?B?d1R5T1g5RCs3a3BaejBnQmJzSDR5QVc0WTRJMXNGRi9uejdwMm44WG91UW9C?=
 =?utf-8?B?VGlhcTVOVnNRSi94aHV2NXlRbkpiYnFDaEg5NU10RGVybFRFTEZrYkxUOHBt?=
 =?utf-8?B?Qmp3eUlvOThWdXQzOU1TMVo0ZnNGcTdQeXVNWmtidGlVN2szUGRWQlZzTXdp?=
 =?utf-8?B?aHlMK1R3U3JySlpiMzM3M2s5WWoybzJyUVkxWkszdGxjblY5Vk05TE5SWVp5?=
 =?utf-8?B?R0Rkd04rbUluMWhOZExPQnErMUx3eFRDR3llWW9vcFNBMTU1MlQwa1crdkdX?=
 =?utf-8?B?OG5DRUhHTjZHQlh3QWtBMmkzUkJyZHhDVnVaOEVxT2hubGhRUllqb2lpMTZ4?=
 =?utf-8?B?WmRjeWttUEY0SGZwMWxPNExTamw2RGlIUWdOeEcyTzY3QkluVm4vWkZCOWhZ?=
 =?utf-8?B?N09RWlV4MitOaTNFM25taDZiSWpnQUM0bnJyN1pLS0tYU01sK3dQVWlYL1VW?=
 =?utf-8?B?K2kxVElQUkc2OUIxZDA1ZDJpK3pHQmVlQ0IzR01nNWdWYjN1R3dFdEFPNDdL?=
 =?utf-8?B?UWp1TnFOKy9HWEUyT2E3MzRqUmVQeHNmYXlraTZ4clVpQjJUZkJyN3hPNVpB?=
 =?utf-8?B?MHNxVW9rOWpDY0dDZVdMMUFGTWNqUkVTNllaSHZ5cnNhR2NPY2twRXhlVHZQ?=
 =?utf-8?B?SlQzMU0zc0dHRDNLVHVyRStvYXJjODF2QmozK1ZRb2JiQTM3cC81cElzZ0F3?=
 =?utf-8?B?M1BkcjhEVGx6SnZXTVJRVmVWWXQrbiszSGFUakhDNlJzY29aMURLcmlXRTRw?=
 =?utf-8?B?dEEwZEp4djZQT2ZjYncwMWd5MjNMSnpJcU94QmdoWU5BN0ZweGgrOXVsaFpj?=
 =?utf-8?B?VUdzbDF4b0tmVzZpVmpSUGFoZktNTUNqdEh4UWc0eEpRdCtxbTliSXo1Kzls?=
 =?utf-8?B?TXRmQUpNVXV0RWdsSnpxalJURGxyQmdCYU00VE1sUUlFTk9iMmlYTUFtYklw?=
 =?utf-8?B?NlNIdWlyZzc3ZUNGQmE1SVBCbFR2UFl3RTRHYVBqT2RxZ2VoTVp1Y3Z6Sngw?=
 =?utf-8?B?TE1vTDRQVjBIS0E4SXljSkxmTEZ0WmJyV08yU1VQdXE4S3BiSUNSeUw5L2JG?=
 =?utf-8?B?YkFFWXI1RVdKQnhEQzJ6YTBOUFhOYzhOVXJWUEhuUncvZUR3ODNKeVRCdzgx?=
 =?utf-8?B?V2lLZDhtNFRhN2VabW1qZTJhZnFYQnJUU2Y1Kzl6MWFSZFlIaEtPbnJEemh5?=
 =?utf-8?B?bHNjMWNCcERoUDhIRk5HYi9uY2NiZjFiaDIyWWF2VFRxSEFRUFBveFFnaEZa?=
 =?utf-8?B?TEE2Rmd5ZWR5OHIzL2prS05KVEpBRUlwTDZnKzdZU2RtYnN4a0dpMjR1dEdn?=
 =?utf-8?B?TVNRWXVqc3FYZG5MVDd2OTBsL2ZkQVBBZmpDSEpDclJudUNNc3dFL1Jscmho?=
 =?utf-8?B?ZTg1MERKNzVmRlpxWkpKcEFNU1NML2hxWjlSMmNTR3FqVjZLSnhZS0RuMnFk?=
 =?utf-8?B?UHIzLy84aEJGWjV5QU82N1pwZCtDdFVSSHU1RW44UzhOMUVWYU0yU3JmUlJo?=
 =?utf-8?B?b05PTU90akZYNnd0aWsvRlJjdFRjUTh4UWJKSmM3NTB4cW4wd3Uxdyt0Z280?=
 =?utf-8?B?TThjN0xWOHFSR0FSVTllZFIxNmREejJieFF1TE5iV3c1MVdHby9RbWI2OVQ1?=
 =?utf-8?B?S01pS1NFMDBvVE41LzRNektaeXFlMmt4QVp5NG5jQllzc3YrWXBoajd0bmVh?=
 =?utf-8?Q?p3paE64xv8Agb71srybgYIh/4?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 3632f0fd-e324-4505-1dd3-08dbd0913711
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Oct 2023 10:50:31.7106
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: wlGYyzcThUJ4mMCBuHi7Zy7HHttn78UY8wmTqMHfYgmcID8YilNG2waOsEBtiPobQdBPlmOUupdHSUUqct0yIQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB9141

On 19.10.2023 12:45, Roger Pau Monne wrote:
> With the addition of per-device quarantine page tables the sink page is now
> exclusive for each device, and thus writable.  Update the documentation to
> reflect the current implementation.
> 
> Fixes: 14dd241aad8a ('IOMMU/x86: use per-device page tables for quarantining')
> Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>

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




From xen-devel-bounces@lists.xenproject.org Thu Oct 19 10:54:33 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 10:54:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619175.963809 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtQfX-0007EZ-Hw; Thu, 19 Oct 2023 10:54:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619175.963809; Thu, 19 Oct 2023 10:54: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 1qtQfX-0007Dh-FE; Thu, 19 Oct 2023 10:54:23 +0000
Received: by outflank-mailman (input) for mailman id 619175;
 Thu, 19 Oct 2023 10:54: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=g4nO=GB=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qtQfW-0007D8-JD
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 10:54:22 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur04on2081.outbound.protection.outlook.com [40.107.7.81])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id db253fc5-6e6d-11ee-9b0e-b553b5be7939;
 Thu, 19 Oct 2023 12:54:20 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by VI1PR04MB9978.eurprd04.prod.outlook.com (2603:10a6:800:1d7::19)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.23; Thu, 19 Oct
 2023 10:53:49 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%7]) with mapi id 15.20.6907.022; Thu, 19 Oct 2023
 10:53: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: db253fc5-6e6d-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=XNcdyh74e5eogeeqtdECzIjEBiA6xeC+udGFxxWz/WxqFJCJeZ0e9YP57n94V1VbWpnOUD6Ur3fEJ0LT0AG3Ir4XzXRPpKRdj6RdR29XKyie5vXBDtYVAhwFvXsn6nfmBwcRfLq1HU6Ks8D10wC09LyclnG63KTpu8bjl/ddeacVqHv3oQITv8tzaB5mtgIw+xniaQuX4JNTI6HfPojSbtj8itK+Ys3iKJXNrpTr71miDa8Faph0e2jhtXT8BL+ZLGUKSoithvJ5Q+coGUxo1U52zCRy9VD9u4/lIjDZNIPw/7pEKAGolmeMKEcXZJpFG3ydcybvg4wO5SIBEiebpg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=QNNGs01AkRp997b2t+zz+4hVoA41QnX/ieLc32A3NMk=;
 b=X9l5cN6JCY5zlWm1GDRUJBM1CPDTUguACrvivxAGNjnNlBLdgMgJwdV4/eVzh4iVWRE/7n0Q4j45JZPW/zNsUQ/6Ybajr9fa7abEnHGAwVZF16nHTHN48h8+lOiiYkE48JQbcjS12CEKpMs10SBe0Ea9EjjlHNDKFzNfijGiVsIPWN6s5P9GgXe8IV0v32NwzmRdWuf9DJE4Q4qCuYNSa3xOT36LqrpExD3n6b8ZjqrXu/9+elhhFp80Dxd63ecs8YjXbdx/c1beMOWfieAj9zPny5JfsmFBbjlUFyvuvhLnvY3w+cw8stAE048DClHFezZ2LH9TBJViwyVikM/2CQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=QNNGs01AkRp997b2t+zz+4hVoA41QnX/ieLc32A3NMk=;
 b=2Jr2X0z7AmQDAysSt/xUJsGjOE4H8QvSndcZ4r3G6aptyFPgI3vxTzF4H8+k7Wo1xCkpdQ2U/rSBdVBCxQa9dFIGy7DLzcF/BuERUHaXv0gpNLHCG8SDqQCYu2gRJFYLFOS+hs+kSwrBoZGaiO727Uy0bO5ysikp9VGkMZ4RyqRc4lbq0o1MAN/330KfzC1Hcl7Y0MjWJcmKp3i7BdRNPEmm2lQnFwKrlTPFB4kItk2+DFD+tVSfqtQ188RhSYx8f9+gaNuCLNSyDX8nH927L7d4rgzQbIrWaXyfkolAES95VxXiTX+J8h9GhUQRuC+iqI6Ae2oEDs6g+ShTcD29JQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <17d9102a-da9d-d41b-6362-1ccfe21b7976@suse.com>
Date: Thu, 19 Oct 2023 12:53: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 v1 04/29] xen/asm-generic: introduce stub header device.h
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>,
 xen-devel@lists.xenproject.org, Oleksii Kurochko <oleksii.kurochko@gmail.com>
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
 <3cc9ecc3abcd21c5ed7276b01bf5963e6a5fd5e0.1694702259.git.oleksii.kurochko@gmail.com>
 <a20f5783-7ee3-6ed1-d4cf-379c30c64a12@suse.com>
 <9ee7b3c9-de71-4790-815c-8b2859a85465@xen.org>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <9ee7b3c9-de71-4790-815c-8b2859a85465@xen.org>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0250.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:f5::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_|VI1PR04MB9978:EE_
X-MS-Office365-Filtering-Correlation-Id: 66d335a8-8c5a-4385-1f3d-08dbd091acec
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	RXn2iCx1SgJn0V7P1y44Zvf14ybQkTr9JoD/L9BGCt6d44E2gHVc+bxvFlzxTQ8rx3/n9kyJsbb3Tnv0LtErwVzpgYKKOamZebfuw1vki0s7DJCsRc7Xq0ygt5UvmKzIO3wE0zE4ubLnA4WJNZ02uilTvnntcl6XLnfnLO+A/KTLRE4Z+G3LlN1ocUYNh/9Uxce7z8kip2nwrE1QXe+2iV+STUMKhN33U37eNx43jG/F9fglRhMTn+5GDVx01SWRgyFlPDn2WaIuEzUMfIrMj4NH0INH6YIs/5r3Ory/CQRw5g3t+aIwOJfeNBjLv0CLtNuPYJSLtpXc63BopVGY1msj/mYFbVNSg7gUyS3lGzlSXwdcYSIJ7OgBFwxOQSdKnh3G2Y4GPFKVkXUs1coh7HcVNNM8mL4n3NdwiXGT0lIqj8m9SPp2RZHvDaNi23IMMjEFyyjvjZrEarEz1YhZKul4pEMuRQjIEXdrAv9DAtcQRbchHoLTEvCxTVOqf6kzj1Jq+xIj84YzroiasNkSfrx2VLeyTrb8ktoHDwV/ZsQIU58/WzmA2Md+sZfH7V02KhNbYW6M4M5L8tOUwuQG+jZu8Soes2kKYlLbBhOxf6pn/i1gFkh4uimU75ujNn7itJ/jBcvM5NfCTYZpzYf4JCIIRq6TQM94emN7hlfaZBQ=
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)(346002)(376002)(396003)(230922051799003)(64100799003)(186009)(451199024)(1800799009)(31686004)(2906002)(31696002)(6916009)(36756003)(8936002)(5660300002)(4326008)(8676002)(6486002)(66946007)(54906003)(478600001)(66476007)(26005)(86362001)(6512007)(53546011)(66556008)(2616005)(6506007)(41300700001)(316002)(38100700002)(41533002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?YTlobmR6bUoxcmdQL3hVVGFDY3czdTlITWM2eDBrTml1bFJMZWJENm9zMXgw?=
 =?utf-8?B?dm9EN2ZzY1Jnemd2dkxFN2RSVnpNZUcwekhVM3doR3E0UjdyRk1uWk91dmhO?=
 =?utf-8?B?cUx6dG5xdWpkRURwemFwT015Vkl3WENycVdXeTVoN3lvZzFaMDU4Z2tqMjlv?=
 =?utf-8?B?dGhnaHhMdUx6Ny8zYzdQYlhObklmSjBLRUY4WUtVeTBrRmwyM3M4OWFvN3dW?=
 =?utf-8?B?dVNnVFBpcHNYZDArc09zS1BrdDRrQmJRUGUrQVM2UzFBMmt6WlFjdG0vR0ta?=
 =?utf-8?B?YjNsUnpWL2hHanZFMWVIT3Q2TGVDZnVNWWtvd1lnTktrdkFGMzJHSHR6d1F0?=
 =?utf-8?B?bEdKajg4R0ZPVWJFOEtDNlVPQ2RvY0s5Z0k3QUowaGRQQlVrb3hlSkRXSEF0?=
 =?utf-8?B?aEp4MTlsNUg1UmsyWTRMdzlBdWM0ZHk5OExGbXpPMlZpYUIzc1FBSkZsdi9u?=
 =?utf-8?B?eVA0aDE0T3J4WG5ud3hKdS94NzZxeFJEMWFabC90c2lHRzE2T3l3TU1Ibjha?=
 =?utf-8?B?YTlCS2xQWWxaSlA5Rm1XdEVuY1MrQnJ2WEE1VTJBRHNYTDlXdXJQTGRscDJy?=
 =?utf-8?B?QU1hd1hQUWhGQS95aHIydkNWSzNEQ0xzZE55SGJvbGtoMnc5ZWVvUGt2NEZY?=
 =?utf-8?B?TDlxZFB1dWducDZYNGo5UVRSU3dYdEZDVlhMWjl3czBCSTRiK0FPWkgzTElr?=
 =?utf-8?B?cnpyd2hIcXkwb1pnOHNTd0UyUng5R3RaNDR2cFFxRkF2Vm5qQWhFWE03R2Fm?=
 =?utf-8?B?NWcxVlpLVGcwVVJFWDZiN1YvcDVGYXhES1RNdmkxRDA3Rk1ndHFaR3RVeG5w?=
 =?utf-8?B?V0ZublJuMkZ6QnA0WUhJQUF6d2wvWFZoVVBtMUF5anpaenZlMHI3MVp5eFIw?=
 =?utf-8?B?eUlObElkRnVGc2hKMGxqT3AzSkgySlArR0hPakNYb3NPRmlIYW96R0JoRmpt?=
 =?utf-8?B?ZVE0cThwT21RaitxTHhWSGM1WmdHdFN5TXBETi9pKzlEckx4YWt3WGFTTVJi?=
 =?utf-8?B?b3lzYTJZWW0vUVhqdWZia1NGOUJhdEd5NE0weGUvR2RDcTVsR0lWb1E4UzR4?=
 =?utf-8?B?OXNJRHQvS1IzeUVKZS95MzcyL1lyYkY2Z2FyejNzYzBiZTB6ajJnLzZsaVZQ?=
 =?utf-8?B?SEg0TjMwNVltMkZ3MGY4UTJRaUk0WVNadnQ0Q3dySDJSckIxK3FjR2F6UnQv?=
 =?utf-8?B?ZzE0dG52cDlRQVFHbkFTVER4L0kvMWZMK0prUmZTeWpORGNKaG83dXM0dmRC?=
 =?utf-8?B?M0dDeEFaM1I1STA1cHBLVnB6MWplWk03ODlvNkRYaUF6UHZ2R2ZuYkFkTm1O?=
 =?utf-8?B?MjRtdzdyRGZHaEowZ29LMm01YXovQkpBd3Z5RDhlUmZMSFZ4NG9rcFNpRGRK?=
 =?utf-8?B?b2lQbHU2b0ZrUXhIV2RMRmpjR2RFMkplNy8xbjlsa3BKV3FTTjErOENkR0do?=
 =?utf-8?B?UEFFYnY1YUpEQTFtQ3VQWFlRcjc1eGZFOE01NWd5a2IvL3J5K2h3Z01MOUNt?=
 =?utf-8?B?OEFKbGY2d01KNmxuUDgweHhzMWJnOVpEditONHNFS3h2cGVlS0RaWFREellt?=
 =?utf-8?B?aWVtVUpqcXU0ZmEweHUyNDVYVGp0MGNVeHNkNGlUT3d3VWd0UHJLSzd1djlG?=
 =?utf-8?B?S1lub0ptdVJYN0dHZUlOQUdLMjVqVjdaSHRIS0RYckQvSzNNcWRXa05vQkUz?=
 =?utf-8?B?dVQzeUViYTBsRDNmMTdZcElvelhISTVDcHNTYWZSWmFSbklEc2lkY1cvL0JF?=
 =?utf-8?B?OE9VaG5ybFVpb3Vpa2E3V0dwNWNnb0xrNDJ2V2ZZL0czeGV1UWJvOTE0cjJC?=
 =?utf-8?B?V3oyTnhXZ1FDaE5kQTZZYTNDNUQ3MkdrWkxSaW5rQVFyQ0JXaEM1cFpBZlZM?=
 =?utf-8?B?QUROS3JxR2xFOXVpZTQ5MkhTZU16VVkwVDlNQitFUkdtd2QwT3FiVnlvRC9C?=
 =?utf-8?B?anF4SG00QndNMWNKZXRaVkYwS1k3dzlaUEV6YzVJZllBUXViMjY0NERHdjRH?=
 =?utf-8?B?WGlWYTEwVkV5eHRVeWZmNThJQWZFVjloWld5dkdNSng3MkJLUjdSZ0RHMTN3?=
 =?utf-8?B?MmtlWkZIL1lHeUM4cDIzRTBIWk5jeW0wVk1lVEswUTgrVmF4VjRKQXBqT2tw?=
 =?utf-8?Q?b8bIktMlpk75UItUAxaluS7NX?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 66d335a8-8c5a-4385-1f3d-08dbd091acec
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Oct 2023 10:53:49.4290
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: UwPmYEoIuSPbpl4+B0yqnNNL+zD4lAnGtCPbsxhjai+FbSRr04BRKvB4b9ATCiTBdP4LrdwgBUPrJkacvRVyVQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR04MB9978

On 19.10.2023 12:42, Julien Grall wrote:
> On 19/10/2023 10:14, Jan Beulich wrote:
>> On 14.09.2023 16:56, Oleksii Kurochko wrote:
>>> --- /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,
>>> +};
>>
>> Are both of these really generic?
> 
> I think can be re-used for RISC-V to have an abstract view a device. 
> This is for instance used in the IOMMU code where both PCI and platform 
> (here called DT) can be assigned to a domain. The driver will need to 
> know the difference, but the common layer doesn't need to.

Question to me is whether DT and PCI can be considered "common", which
is a prereq for being used here.

>>> +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,
>>
>> This one certainly is Arm-specific.
> 
> This could be renamed to DEVICE_IC (or INTERRUPT_CONTROLLER)
> 
>>
>>> +    DEVICE_PCI_HOSTBRIDGE,
>>
>> And this one's PCI-specific.
> 
> Are you suggesting to #ifdef it? If so, I don't exactly see the value here.

What to do with it is secondary to me. I was questioning its presence here.

>> Overall same question as before: Are you expecting that RISC-V is going to
>> get away without a customized header? I wouldn't think so.
> 
> I think it can be useful. Most likely you will have multiple drivers for 
> a class and you may want to initialize certain device class early than 
> others. See how it is used in device_init().

I'm afraid I don't see how your reply relates to the question of such a
fallback header being sensible to have, or whether instead RISC-V will
need its own private header anyway.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 10:57:44 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 10:57:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619178.963820 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtQil-0000Fd-2B; Thu, 19 Oct 2023 10:57:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619178.963820; Thu, 19 Oct 2023 10:57: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 1qtQik-0000FW-Tz; Thu, 19 Oct 2023 10:57:42 +0000
Received: by outflank-mailman (input) for mailman id 619178;
 Thu, 19 Oct 2023 10:57:41 +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 1qtQij-0000FQ-B0
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 10:57:41 +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 1qtQif-0004q4-EW; Thu, 19 Oct 2023 10:57:37 +0000
Received: from [15.248.3.1] (helo=[10.24.67.33])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qtQif-0007qx-8n; Thu, 19 Oct 2023 10:57: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:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=HqxkxgGSE0Uf9AmAYoZUvxI294P3qe6ii1mgaGKmSmM=; b=lbIfM69BdMUEC20jkCh1gra1+m
	qgacBwqUAv3GCu6+Ms/vo/D8Zo8en0aoofy+VNHO+FUMDh7nySx5FwdO0gWDO9650TYlo4fpCWTH0
	ycvlmCT8fVex24awaqf/oTzf9mkxvQbmcylaxNPTFJ1bar+4l8oosmELU6MCWn9EnpEE=;
Message-ID: <5059771d-3842-4a7c-814d-69388179b246@xen.org>
Date: Thu, 19 Oct 2023 11:57:35 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v1 04/29] xen/asm-generic: introduce stub header device.h
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>,
 xen-devel@lists.xenproject.org, Oleksii Kurochko <oleksii.kurochko@gmail.com>
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
 <3cc9ecc3abcd21c5ed7276b01bf5963e6a5fd5e0.1694702259.git.oleksii.kurochko@gmail.com>
 <a20f5783-7ee3-6ed1-d4cf-379c30c64a12@suse.com>
 <9ee7b3c9-de71-4790-815c-8b2859a85465@xen.org>
 <17d9102a-da9d-d41b-6362-1ccfe21b7976@suse.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <17d9102a-da9d-d41b-6362-1ccfe21b7976@suse.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi Jan,

On 19/10/2023 11:53, Jan Beulich wrote:
> On 19.10.2023 12:42, Julien Grall wrote:
>> On 19/10/2023 10:14, Jan Beulich wrote:
>>> On 14.09.2023 16:56, Oleksii Kurochko wrote:
>>>> --- /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,
>>>> +};
>>>
>>> Are both of these really generic?
>>
>> I think can be re-used for RISC-V to have an abstract view a device.
>> This is for instance used in the IOMMU code where both PCI and platform
>> (here called DT) can be assigned to a domain. The driver will need to
>> know the difference, but the common layer doesn't need to.
> 
> Question to me is whether DT and PCI can be considered "common", which
> is a prereq for being used here.

I think it can. See more below.

> 
>>>> +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,
>>>
>>> This one certainly is Arm-specific.
>>
>> This could be renamed to DEVICE_IC (or INTERRUPT_CONTROLLER)
>>
>>>
>>>> +    DEVICE_PCI_HOSTBRIDGE,
>>>
>>> And this one's PCI-specific.
>>
>> Are you suggesting to #ifdef it? If so, I don't exactly see the value here.
> 
> What to do with it is secondary to me. I was questioning its presence here.
> 
>>> Overall same question as before: Are you expecting that RISC-V is going to
>>> get away without a customized header? I wouldn't think so.
>>
>> I think it can be useful. Most likely you will have multiple drivers for
>> a class and you may want to initialize certain device class early than
>> others. See how it is used in device_init().
> 
> I'm afraid I don't see how your reply relates to the question of such a
> fallback header being sensible to have, or whether instead RISC-V will
> need its own private header anyway.

My point is that RISC-V will most likely duplicate what Arm did (they 
are already copying the dom0less code). So the header would end up to be 
duplicated. This is not ideal and therefore we want to share the header.

I don't particularly care whether it lives in asm-generic or somewhere. 
I just want to avoid the duplication.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 10:58:12 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 10:58:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619180.963830 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtQjD-0000io-8F; Thu, 19 Oct 2023 10:58:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619180.963830; Thu, 19 Oct 2023 10:58: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 1qtQjD-0000ih-5b; Thu, 19 Oct 2023 10:58:11 +0000
Received: by outflank-mailman (input) for mailman id 619180;
 Thu, 19 Oct 2023 10:58: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=g4nO=GB=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qtQjB-0000dG-Oc
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 10:58:09 +0000
Received: from EUR01-VE1-obe.outbound.protection.outlook.com
 (mail-ve1eur01on062a.outbound.protection.outlook.com
 [2a01:111:f400:fe1f::62a])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 63758178-6e6e-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 12:58:09 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DU2PR04MB8647.eurprd04.prod.outlook.com (2603:10a6:10:2de::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.8; Thu, 19 Oct
 2023 10:58:07 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%7]) with mapi id 15.20.6907.022; Thu, 19 Oct 2023
 10:58: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: 63758178-6e6e-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=S+Qyb7KishHYxMQbl8Yn3TgXPk9aSC0pXz9ugJlgLK7dCq8FiXMqqEQhnQT/9inEqBoF/gQOfGBAEzPN5cftbe6gnifWqbWfTBHaRe0zAFaYWBMOEzRgHbOy2kxesevlgCpsWN5JxFu/piaRCFgYu/PY7G7D2qLr7NmQrHBnmHEKozyT+Xxbn7kK5DASPC2O+2cjAZCdIXtR9HRDlZi3s7rTDDWEmNw/CCrNRqBz1/dMJwQqA8cGYa91fcIs/k3YVz6ZF530wH1DeUftdk7f66Svnczb5XCw9QDNbqG9RjZ5R5/jpRYXxuBTECz1SIa18VjCVtz0bo8TqtXBGfD3hQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=mkEoCjaAANDv902aIsa8FTPwP0/8ENWU6TwgUbE9TFw=;
 b=TkYJ7BCY0cKMszWG4gj9Wro/yVm/UsHUlNFHnAlmG6kOHewsk+f7gE46fre+ZIT/JLjPmaUhp/zLu3nC1oxIYjm3ASsQ1gs1anu5xZFtrOhha35q/Yo43TrTtu0MWJQeVdb0WxshxZPSsRS1HwP+mRNBdCUCTbi6Ke8dG3tJuTyiF1qz0vXuT3xmQZgnQ3wdcChm0BhuonXdxjMG1w3m4Y1PkUtuRoaih29MzSc4LbKczLB7GlVCdZGgEG9mv2u6k0nObuc88fSmJFYzqvTEnLm6iym2BNqcLL4+qnT6FKXIANdUpSQ6n3rooROikyLtbkiHxsGe5dg3lrEswzBsjw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=mkEoCjaAANDv902aIsa8FTPwP0/8ENWU6TwgUbE9TFw=;
 b=w9+Vy06HpdDwE7nozVMxuG/7voyr3JnwUyDb5VYHM7gktBW0hScR3lint8otNJF5+871gs7WB/+NHqflQ/SxC0jhm2Qh8i5Ivi2XPjfElycAta9XjqNt+yUuYlCA88TPE5CgHs4XJu+Xtwxhz9Yvb/5CXL+fJwV7jJDFHN6jmZfSkPnRil4CBJbmJeqyCt7l5AOIqDqbcrHFSQHfaJmf8EHbzNV+qwf/rCfnQUCqZaplPtrlzVTmQmpC3B1XQumwfdsmWfZefD4c1gpydsKjmExMQQs13rUFL0NEmsmjco5rQAbfF4RIukVv3ePe7Jl1MQCPiVLZkjELWz3XtpVBwA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <3b012ae1-423e-545d-70bb-7265ca6a8ab3@suse.com>
Date: Thu, 19 Oct 2023 12:58: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 v1 18/29] xen/asm-generic: introduce stub header smp.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>
 <e803ff406f9f597bd42242010a219148d387bba6.1694702259.git.oleksii.kurochko@gmail.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <e803ff406f9f597bd42242010a219148d387bba6.1694702259.git.oleksii.kurochko@gmail.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0154.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:98::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_|DU2PR04MB8647:EE_
X-MS-Office365-Filtering-Correlation-Id: 84ac367c-3463-407d-5246-08dbd0924675
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	nf4kRpWPy5qtWIPtZAd1R8LNkVvLDB0p3sCLp+Vxnh2Eazw4oxC1/mo/laqOrcBwOiUeId4Mjzi9dsvoASkCDVEsyimC22xw0CFOzsdpEYqhwLibK5FRSMk8Is2jhxWWy9LbGYnd+ZTxG6VZ/0FAc538vTKD8Net6UTelCjs1MrKD8AlTu4cy3vM6wsK4ZQL8RXTWUQ85IUHb/3ZPEuXoVdcEMEvlJPqDJbNnGLDGNCL6K09Fsev0pFZCpXEtdzpmYdcDilWiz+4EuZxteyKGG6hIsl65K7sRzXzhQnySTnsEUcfZBGm1gjjPYUDhViYZxVa7w5DZ3pR5eyRYGqntgUalJs1PdlXYbmbb86Tu3ex4useYdKcLcIZLt31g8TrJVv5YDvQuHV9jqfCwLZTe5Xel3zioC0FzRFQLolSklvWopCUGXESUB6+rKvegeXC7i0z2ip5bhqDW0JlWqf0A2lnUjnVicFqGZi0ahacNy2HcyOpDNhG1GTHkHdWpI5+w2uL21ayUFrXyk99RwyKLcyXLcmjiS3pXf7GfBv+zqPZSU9TT95JW9drvoZ+z/VCOtbbeyjnE0MUTDtH7EhbQhkDG7HGzr007yx+sUxivvv/YM553ZWYy/o+hDAJ7+/yCbTZAUBt0p+D32yc7gir9xgUCL8AIwS5KbB13NuJnYs=
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)(396003)(346002)(366004)(230922051799003)(186009)(451199024)(1800799009)(64100799003)(6512007)(2906002)(26005)(2616005)(6506007)(4744005)(53546011)(8936002)(8676002)(4326008)(316002)(5660300002)(31686004)(41300700001)(478600001)(66476007)(6486002)(66556008)(66946007)(54906003)(6916009)(86362001)(31696002)(36756003)(38100700002)(41533002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?M3daUWR0N0ZybStRSHN6aHA5ZVJQMHhRWDhvTk42blgydFZrd3VWeDFWU25G?=
 =?utf-8?B?UFRENi9qS20wMS85L052czdha1FweU9CMDRtNUtWalQ0bXhMY3ZydHoxNGlD?=
 =?utf-8?B?djl0bFFTcDJ0M3B5YmNpN1pLK29RZEFjSUQwbmtuUzgrVVZMMUlHaU5wUktx?=
 =?utf-8?B?UVNPcml1VmpxWjlOd0tsMllKSC9PWlFPTTJ4dFp0MEFHaEJxbUYvSU04bmJI?=
 =?utf-8?B?YVo4U0dtdktySXBxNHlHQ2s5Um5sYlJWdzBTcm5tTnRkZ0lqS1lEc3JiNXpG?=
 =?utf-8?B?bTZDYk80MUEyTVZ4QXBIOFYwYVFlaHBvM1h6dHFReUlLZTdxNlZzbHBWVDIx?=
 =?utf-8?B?OUpZWE1iR0tBQ2crL3FUeXplbVV3dmNPOGx0RlhxYTFOMHh4TmNjd3ZkQkJk?=
 =?utf-8?B?dkk5MXVaVWhhc2ovMit2aTlRYWltSWtJR2hxMGFQQnFsYXp4TC9ZQXFGclEv?=
 =?utf-8?B?ZzB2M1V4QlRUaTV6dUN6QTRrYzdtTWhZbWNJNU9ZS1pnZENUQnpiNkMrVkdV?=
 =?utf-8?B?L0xqckt1SVRKRlpRckd0S2NUU3hnWDJSZTE4SGV5UGJnMWwycVFHaVpoSits?=
 =?utf-8?B?Z05zK2pJYSt2SU8ySzdsYyt2VmJZQUV0TXh1ajlVUlpoWWNkVzZxQ2xDRDZT?=
 =?utf-8?B?ckhYZDRZcURlaHA5amgxOHEyd0dsbVY3U3g3eElkcnN5RVA5a1lFcUh3YmJm?=
 =?utf-8?B?Rnp0dEh4Qk9NOHFRWHZCbUhzQmZqcTZjeXluZ2tBTUg3cWlRNXRXRXF2aklH?=
 =?utf-8?B?V1d6S2syM1BXVmlBQkUrWWFkcWRDcmZsSy9NUE8zVFVOQWNTVUNJSU9mY2Z4?=
 =?utf-8?B?dlF3c1RTL3FkeG5Xa1dkVFp1emVuMWczTDNMSXpRVFNZU0VJRG1hNnJhNEJC?=
 =?utf-8?B?eUJML0FTZHdya2lERlI1NmVpKzI2UVEwTFdGalBabzJENmsvOGorYjdQa1Jr?=
 =?utf-8?B?ZDl5dmxrZ1pMYmppak1jN1EzaVBGMndRRUxBVzg3NWUrSXBVMlZURHZRNTIv?=
 =?utf-8?B?c1BKT3pFQ3IwYXpqQmQ2U0R0aXZIU2I3OFJPeDdXWnhWVDA5T05wb3h4NzFL?=
 =?utf-8?B?VGt3Yks1VUU2RVJmellzcmlRa0J1cHg2KzJYVmtRWWNLcUhKL3B5TXBPR2p6?=
 =?utf-8?B?Um1FbWMvRlA3WSsyaS9odUd3cm51WlpuK0tpQnY1Ukd6NlZlbWpuRmI2ak5J?=
 =?utf-8?B?WVZlUDFYZjEzeGt5ckluYUMrQnAyS1RCU0RBRC9Ieklmd1JPb053Rm4rd2Vq?=
 =?utf-8?B?aXliWjRWVXM4TStYQnd2cjNIMlVJSUUxUnhLbEJ2NTExQ29hZFJBQkJGODhw?=
 =?utf-8?B?cjdUYUhYVGZjTXdmdFkrQm1zc1RzTFRQTUpYd2NaZ0MrRG5IblBvS3dILzZP?=
 =?utf-8?B?NEMxOTgzZHRBWUZISkFpREhmWGN1ZmZ4TXh4ckdmZzJYdCtjZVNtR2IwUmhY?=
 =?utf-8?B?TzdDazkvcVkrb1ZXemFSbWlXa0ZESWozR1lIdHpsUzVtNE9OL1FndGN3R3JC?=
 =?utf-8?B?ZjFpem5WS2JleGdTSVFhczhXc0ZJaWltWVMrcFllYlpyS1d2Wmc0cTFuRDFh?=
 =?utf-8?B?aTA2S3lnTVhpOWl3RDNwYk8xdEVlNEhqNmZFa1NQa3lQSlJFVllERWhuMTBD?=
 =?utf-8?B?Mnc2WUVYaEFQWmN1VldzS3lCQjQ1TkdQYXNzejkxN3FOUzhIc0xxcnZSZHp6?=
 =?utf-8?B?a0ZlMlVyZnA3R205NTJ1ZW5LUDR0b0kzODlJQnNkT1crU3dWeUFUMDNGVGx6?=
 =?utf-8?B?VVNCREhUKzNRWmtXM0d4NWFMY08rY2hRQkowWUpWd1JkN05TVEF3Um9MMk82?=
 =?utf-8?B?QkJHSUl2SWpENCtzclh1cEtxNngvMExkNFl6ZktFZmZ2R1NpZEd6b0dKSUJ4?=
 =?utf-8?B?ZUk5b3BJUHFlcHh3bDJnRVJZUnpJYmlzMHl3Y3h2NVF4OFAxazY3dnFMNjAx?=
 =?utf-8?B?K0FQUmgwdXNycXA3S292cWlNQjNFWVpweVliOFFRai9JMnpZN3pXUVAycGo1?=
 =?utf-8?B?RHhUWUtpL3I4bFprRkxkcWd3VjQxM2xSOFQybjF1TFNCaGxKQmM1WVVCT200?=
 =?utf-8?B?TStHclNNcFBrbXY2UFMvYy9DQldZcExiL1ZvZ0JmMXIwYk1UZFJ3MzNDVlVr?=
 =?utf-8?Q?Cos+54+2dsuY9FO+RXtuOy0GG?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 84ac367c-3463-407d-5246-08dbd0924675
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Oct 2023 10:58:06.9975
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: AQqaAnsOOdzC/L/LwbYS3Dvy7FrWPP/92WlkO3Pp1oP9eCaKTSM0lqhkOOlzyxj6Z0rkfg1Yf4iEFSqQx703aw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU2PR04MB8647

On 14.09.2023 16:56, Oleksii Kurochko wrote:
> The patch introduces header stub necessry for full Xen build.
> 
> Signed-off-by: Oleksii Kurochko <oleksii.kurochko@gmail.com>

Assuming you expect RISC-V to get away without its own smp.h, just
one remark:

> --- /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

This #endif need moving ...

> +DECLARE_PER_CPU(cpumask_var_t, cpu_sibling_mask);
> +DECLARE_PER_CPU(cpumask_var_t, cpu_core_mask);

... at least down here, if #includ-ing by assembly files is really
necessary to permit. Preferably the #ifndef would be dropped, though.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 11:01:58 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 11:01:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619184.963840 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtQmo-0002IH-Os; Thu, 19 Oct 2023 11:01:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619184.963840; Thu, 19 Oct 2023 11: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 1qtQmo-0002IA-L1; Thu, 19 Oct 2023 11:01:54 +0000
Received: by outflank-mailman (input) for mailman id 619184;
 Thu, 19 Oct 2023 11:01: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=g4nO=GB=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qtQmn-0002I4-05
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 11:01:53 +0000
Received: from EUR02-DB5-obe.outbound.protection.outlook.com
 (mail-db5eur02on20631.outbound.protection.outlook.com
 [2a01:111:f400:fe12::631])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id e75e2286-6e6e-11ee-9b0e-b553b5be7939;
 Thu, 19 Oct 2023 13:01:50 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by VI1PR04MB7085.eurprd04.prod.outlook.com (2603:10a6:800:122::14)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.36; Thu, 19 Oct
 2023 11:01:46 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%7]) with mapi id 15.20.6907.022; Thu, 19 Oct 2023
 11:01: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: e75e2286-6e6e-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=RF+vqA8kPqhkbitlWYfH4Qs++Bu1MJGcTGU2jS9Bimxg1br2s+SJE9pRvefT/13oCyyGpOy8WsuiBgPi5cbbltutovFEZc8J0o/dhAhlZonoztrcno6yE6K3h3RqH1qNdlo7vR8Wk3tN1Jxd5txNKNdb5mMN3qLMUT4IdRiiTZlGwell8P/oMgfSufuyU9Mck48u4t+8422SYG0YzOdsByGXVInF+AbvYSg77hflaaG4SwEXLBCD6PE2GNYZTXVDL5hzO8xrZyG1+GLwaCP6FRQAb+v8AXAFVe8Bc7GJOx4o9t4lJv64Ep2XdEt4NTIxS1RHpuhT9cyypWYIoyDP7w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=w97+z41buHZbfnL74K1t9B50FSpjptFsJX91bsO5OAI=;
 b=OAseBJEZWX4zeUIJ5Q4zYxO5CiVVbvwRQov8osgJfTmRkFa5g+lm+9sXmmMvj13CN2MswhCRy08/QsiW7TW3b8igpCKr4BgRaj54E/mjJYJeTSOVNIpT5eGvWHS5lpX8A7qWCGJWXWLt4qhfAqOz4lcrPGzAAcbCMNB022BwZx372rCNxbKphSOAvbcQ1xwI50/9S5vQhA7GIlFHZ2YrUpnC4qtglWkkqeC/3z8XvfJsLTjk4lpFQtPdw4SVIwQkI393kH13KFAN2vYlNyubiuL4KXDhCPejOL6L9Ziq1l+kC+cdbFEdGQpfiN+u5bGcXwt9leyhMfv+HwAFG6ACSQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=w97+z41buHZbfnL74K1t9B50FSpjptFsJX91bsO5OAI=;
 b=iqCr1SeLENT7xLX3N+HAHEPBQc8NYkMFRrowLThUDTYYVdgnzUMBDzx2Ig9MUgzl4LfMTylU+0yKd5g5YFs27l/TXwGChi96u1awhZkXxKHB+LD34x4oktg5VBnuaEVGwUK+m43Q6lPMf6UQp8yDT9ZrH9F/PtAJ1rCTOm6CtsG9IlLXqA0CCzs6hL65CzZs6gYnvaMiK6YGgLSOEALkffMz4VI/30U+NHZzcO+XfGa1Py69b9wqXn37214ebzLcjUA8RjusnNgffhal3t2ofPHYaZUK+ZEWG+BbPzWCY6jIe5vbWPSn1AHg9FhaKqwm3mJbKxjxTj/uMwwEsBfsOg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <61c20f5d-a324-9ece-2140-4d0c775e193c@suse.com>
Date: Thu, 19 Oct 2023 13:01: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 04/29] xen/asm-generic: introduce stub header device.h
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>,
 xen-devel@lists.xenproject.org, Oleksii Kurochko <oleksii.kurochko@gmail.com>
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
 <3cc9ecc3abcd21c5ed7276b01bf5963e6a5fd5e0.1694702259.git.oleksii.kurochko@gmail.com>
 <a20f5783-7ee3-6ed1-d4cf-379c30c64a12@suse.com>
 <9ee7b3c9-de71-4790-815c-8b2859a85465@xen.org>
 <17d9102a-da9d-d41b-6362-1ccfe21b7976@suse.com>
 <5059771d-3842-4a7c-814d-69388179b246@xen.org>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <5059771d-3842-4a7c-814d-69388179b246@xen.org>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0110.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:9c::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_|VI1PR04MB7085:EE_
X-MS-Office365-Filtering-Correlation-Id: 90504d1e-3623-4839-2426-08dbd092c93e
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	e0HE6KjTbU+4D88Zd1vqpbzpdGEFZA+DlBo/B4e8F3aiaD1hAdm6Xvwau8vqcajEsnktYWFXxejFFc8tDS1lA5v5U9LXW7k8OtJy9yekn/sY1ioQMU6W4UCt1LCE8ZNTcnJm1js+Sn/7X4r+4GO17DYtnIOPEyzEfJUB0IxbEbBehZJfeTdKJnKkXB7ZaaxYMQnbEgylXH/4BzH211vqvnUu1fS8G9Xfuz2fp7wLTui+gPNGf8nqQUwo1eU1bPQ4EKFhuVG5sd4hvakRhC/i1fvwj5VMHB9r8BkGjg2xlotWVjG1lPXNi8Rtdls2y9CzrsoZI7IbTPYpno9M04Jnxk8X3LXNl+PxIYjcSsgPsfzXzYG1A+d70UZFgDOYZDzTCASiVuTHt9GHexgdFK8hH0kHP6te/njKv+RU0Fmrf2mK5aIpM0ekTef8inz4Tvrm36G9ROYrtSHhgOGhg51fVGi0XTcTsvvqn/jsnHx77BUOvsAm/D6b2TxkzeiH86Rz8xrZ1r8SZwkbrdJMCplOGnMaXx0V6iaqFIR6S2azhObRVC2pL05siBdITc6dSAfYE9KCbTeTa7qd2NYMnKYDLInryqoDPhOmECfgvsGuclVMGkwkhcaUM+73+jUb17wWqLlsAXXZWAXtOCO8v3hfD0DJZ41TSE4txLmwzsvVcfc=
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)(346002)(396003)(136003)(366004)(230922051799003)(186009)(1800799009)(451199024)(64100799003)(6512007)(31686004)(2616005)(6506007)(53546011)(26005)(66899024)(478600001)(6486002)(5660300002)(41300700001)(36756003)(38100700002)(8936002)(31696002)(2906002)(8676002)(4326008)(86362001)(54906003)(66476007)(66556008)(66946007)(6916009)(316002)(41533002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?QXFpeTVDanl6cG1WQlN4bG9Nbm96NjZYL0QvNTJwS0FJSW1NMWRxR00vTjJK?=
 =?utf-8?B?cW5aNTFBYzNKUExpZlhTOFl6czgwMEtWdUc4S01JNEVpSzNnSHFUU2NJMXJI?=
 =?utf-8?B?VVBBRzl0R2YzMllZUmdBd0lVRFRVbXAveHREL0J2aWIrN0dBOEErQ29iUjNW?=
 =?utf-8?B?WHZhUUFLOFpqaUJNcTBoamdSSXlRQUZsS1lGWFpQMlVWNTIySFFTSklqVVF0?=
 =?utf-8?B?T3RSZWRhdTg0YnRoYnVOdnlKbS9uQmlibVBGZnRWVy9nWjdUOS82YXdvWlRF?=
 =?utf-8?B?TGpUTUh2SWRtR3psdkovMHpjWlpUSUk2TzZwQXMvcWlyb2lMQnBPb3FEdlJo?=
 =?utf-8?B?R2s5STlGbW1GeU1NVTB2dml5NXhHaGNRTUJlNE80L0FjbkZuSHowdG5QeXRx?=
 =?utf-8?B?UUMzV3dTSGZhdmtKeFNyZmM3RmtLeDVRVnhRVWhZYVNaWHBueUxZbm80b2xS?=
 =?utf-8?B?Rlc3Z2UxR3F2Qm9NNy9xZlp4RDkrRk14NTBNV1F1R25wNHlnMkozY0p6UVVl?=
 =?utf-8?B?OWhUVWJsZUowa1B5RzNlenFXSTdKdWdyVDJkUkdwaFR3MU55dHljWi9ONVdB?=
 =?utf-8?B?d1FmQ1VabGtGSVZVOTE4K24xUVpGc3NLRDQ3U1Z3bjhPZ2l6ZjQ4V09Fd2JO?=
 =?utf-8?B?NHAvMmdxT085cFVKbks1QmFKSUIvOHNkUE5Yc21mRVFMNFh1NnE2Yi9zM21l?=
 =?utf-8?B?djFERmdMNG10emFSUlBwYnpQbi9yUmNHc3U5MTJpL2pyM2pCVWw3NGQzOUxj?=
 =?utf-8?B?RTZCOTY5emZaVkVmYnl4T2dwNThuUHpZSHZOQW1vMDIwVDA3SEI2ZXRYYTlX?=
 =?utf-8?B?a01zeHdUMWs3YUVocS9TUCt1RXR1K29aL2RqMWVlNWY2Y1VCVXp1SkJUZUZL?=
 =?utf-8?B?QjJMdHZhNzhLVEFLZWJVUEJTaVEyWWNyaEJ6WUliYWlqRER2SFI0Z0xEZFJV?=
 =?utf-8?B?S25aQkxyQk5IaVNyam53NVBRZTZVaUNQNVV4S0x6bVlxc29GYnBjTmlTUTh0?=
 =?utf-8?B?K0w0ZUJaZU1GUTN3NkwzbEkycDVVY1NwWkxnMXF0SmwrYkVvZEF3YjVEZTZz?=
 =?utf-8?B?aVoybHJ1SzR5dlJIQWRoQXh2ajg2NHJDNU4zSFpRREdkNnB4NkxJeDlzT0NM?=
 =?utf-8?B?ZFhDV25ZRVV1Z0t0Wm10VUJSb0hIandZeHUrTmpaVFdpRCtNQjFZaExCSEwz?=
 =?utf-8?B?V2VZSmYvRjNaVzFJUDJjdHpSQmp0RTZBNUtxMnhESkxiRVFIWmlZZkpiRlJN?=
 =?utf-8?B?elVlT1hyZUYzSjRBR3lCSDFocW9pZkxzM1FyT2FncC8zVVZZbjhuWDZzQ1ND?=
 =?utf-8?B?VDkwNkcyN1lBbTdaakN3bW54YjdPT0UzdXFmK1BhT3U1TnNRQllwKzVjbmN6?=
 =?utf-8?B?Vm1vLzI3VWE1Ky9zZ2d6b3czVTYwY2tFZ3RaNFNjMjlIRm1nRTFCZ2ROOG9C?=
 =?utf-8?B?Y1NncTd6TzNwdjA3ZGY3cTNXOEo3dWtWSDFIN1ZkYmFINStYQ3dhSFRRL0c0?=
 =?utf-8?B?ZE9uMlNub1JHcmovakVUQURSQjZXYmIzZFh2ZEhpbGlid2ZsMGVrUW9Pa2tU?=
 =?utf-8?B?c1JGMUo4b0xnRW9oODFsNzN0L09qckI3TS9vZGV0K0FDRndoOU9nanRMMVpv?=
 =?utf-8?B?MzdBcUFkWll0REs4SW1ySElDdE4rR2RVaTdZOS96dmRTc2kzUmErSU9yZGVV?=
 =?utf-8?B?NEdJT3ZWTnhsMHFpVU1vbmNtRUhFWFg5Yi90K2ZzUzBDOVArQUgrWGJzRmVD?=
 =?utf-8?B?UExLd0hjalFPdTNlZVBFbHhtazQ4NGxQSDFpUjV3UWF5eDlEa3Z6eDRIanhE?=
 =?utf-8?B?VUxzZGpOalpXbFo4VGQ4UUxWVEZ1R2x4b3hIeGpraFpBYTB2YnNnbXZ0cThz?=
 =?utf-8?B?THpaR2U4SUdPOXlYUlR3QnNDRXJhMHR1aUxkbzlhT3h3SUlqcUthQUgvZnE0?=
 =?utf-8?B?RnFJbGhNOXhESk1CK2xlSnZobW5PT3hCNDcvYnFPQnhQZTFNbHhVL25ReGNI?=
 =?utf-8?B?VHBKUi9JaDM2UWFLM1BPTURTeG1LN0NEdkhNdzhad2hnMkszcEVtdFliazZP?=
 =?utf-8?B?MTdBUE8vSGhnamNQdlF1NG03ZWthTm9VbUljaWNwVWYyQzZJc01ja0NUSDV3?=
 =?utf-8?Q?hUEH3V+bbxixq/XshJ+RZ0nuA?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 90504d1e-3623-4839-2426-08dbd092c93e
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Oct 2023 11:01:46.4224
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 2LK67Yuh3PGBttvkF0z9yIcB+Jb9M7O8CEx2B5HnRbD1o+yXbLp9MbSOZotnWwl/jlQThYYHHDy7vTHRKOBjZw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR04MB7085

On 19.10.2023 12:57, Julien Grall wrote:
> On 19/10/2023 11:53, Jan Beulich wrote:
>> On 19.10.2023 12:42, Julien Grall wrote:
>>> On 19/10/2023 10:14, Jan Beulich wrote:
>>>> On 14.09.2023 16:56, Oleksii Kurochko wrote:
>>>>> --- /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,
>>>>> +};
>>>>
>>>> Are both of these really generic?
>>>
>>> I think can be re-used for RISC-V to have an abstract view a device.
>>> This is for instance used in the IOMMU code where both PCI and platform
>>> (here called DT) can be assigned to a domain. The driver will need to
>>> know the difference, but the common layer doesn't need to.
>>
>> Question to me is whether DT and PCI can be considered "common", which
>> is a prereq for being used here.
> 
> I think it can. See more below.
> 
>>
>>>>> +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,
>>>>
>>>> This one certainly is Arm-specific.
>>>
>>> This could be renamed to DEVICE_IC (or INTERRUPT_CONTROLLER)
>>>
>>>>
>>>>> +    DEVICE_PCI_HOSTBRIDGE,
>>>>
>>>> And this one's PCI-specific.
>>>
>>> Are you suggesting to #ifdef it? If so, I don't exactly see the value here.
>>
>> What to do with it is secondary to me. I was questioning its presence here.
>>
>>>> Overall same question as before: Are you expecting that RISC-V is going to
>>>> get away without a customized header? I wouldn't think so.
>>>
>>> I think it can be useful. Most likely you will have multiple drivers for
>>> a class and you may want to initialize certain device class early than
>>> others. See how it is used in device_init().
>>
>> I'm afraid I don't see how your reply relates to the question of such a
>> fallback header being sensible to have, or whether instead RISC-V will
>> need its own private header anyway.
> 
> My point is that RISC-V will most likely duplicate what Arm did (they 
> are already copying the dom0less code). So the header would end up to be 
> duplicated. This is not ideal and therefore we want to share the header.
> 
> I don't particularly care whether it lives in asm-generic or somewhere. 
> I just want to avoid the duplication.

Avoiding duplication is one goal, which I certainly appreciate. The header
as presented here is, however, only a subset of Arm's if I'm not mistaken.
If moving all of Arm's code here, I then wonder whether that really can
count as "generic".

Avoiding duplication could e.g. be achieved by making RISC-V symlink Arm's
header.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 11:05:05 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 11:05:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619188.963851 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtQpq-0002y5-B8; Thu, 19 Oct 2023 11:05:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619188.963851; Thu, 19 Oct 2023 11: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 1qtQpq-0002xy-6h; Thu, 19 Oct 2023 11:05:02 +0000
Received: by outflank-mailman (input) for mailman id 619188;
 Thu, 19 Oct 2023 11:05: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=cQIi=GB=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qtQpo-0002xs-W0
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 11:05:00 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 581d8bfe-6e6f-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 13:04:59 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id 83A5F4EE073D;
 Thu, 19 Oct 2023 13:04: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: 581d8bfe-6e6f-11ee-98d5-6d05b1d4d9a1
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>,
	George Dunlap <george.dunlap@citrix.com>,
	Julien Grall <julien@xen.org>,
	Wei Liu <wl@xen.org>
Subject: [XEN PATCH][for-4.19 v2] xen: Add SAF deviations for MISRA C:2012 Rule 7.1
Date: Thu, 19 Oct 2023 13:04:54 +0200
Message-Id: <a9c52c943380f2c35f0a6ccab8215c03e87c99dc.1697712857.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

As specified in rules.rst, these constants can be used
in the code. Suitable deviations records are added in deviations.rst

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
---
Changes in v2:
- replace some SAF deviations with configurations
---
 automation/eclair_analysis/ECLAIR/deviations.ecl | 8 ++++----
 docs/misra/deviations.rst                        | 6 ++++++
 docs/misra/safe.json                             | 8 ++++++++
 xen/common/inflate.c                             | 4 ++--
 4 files changed, 20 insertions(+), 6 deletions(-)

diff --git a/automation/eclair_analysis/ECLAIR/deviations.ecl b/automation/eclair_analysis/ECLAIR/deviations.ecl
index fa56e5c00a27..3bf8e8b8fdec 100644
--- a/automation/eclair_analysis/ECLAIR/deviations.ecl
+++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
@@ -85,10 +85,10 @@ conform to the directive."
 # Series 7.
 #

--doc_begin="Usage of the following constants is safe, since they are given as-is
-in the inflate algorithm specification and there is therefore no risk of them
-being interpreted as decimal constants."
--config=MC3R1.R7.1,literals={safe, "^0(007|37|070|213|236|300|321|330|331|332|333|334|335|337|371)$"}
+-doc_begin="Octal constants used as arguments to macro INSTR_ENC or MASK_EXTR
+can be used, because they appear as is in specifications, manuals, and
+algorithm descriptions."
+-config=MC3R1.R7.1,reports+={safe, "any_area(any_loc(any_exp(macro(^(INSTR_ENC|MASK_EXTR)$))))"}
 -doc_end

 -doc_begin="Violations in files that maintainers have asked to not modify in the
diff --git a/docs/misra/deviations.rst b/docs/misra/deviations.rst
index 8511a189253b..f26eb371f3e4 100644
--- a/docs/misra/deviations.rst
+++ b/docs/misra/deviations.rst
@@ -90,6 +90,12 @@ Deviations related to MISRA C:2012 Rules:
          - __emulate_2op and __emulate_2op_nobyte
          - read_debugreg and write_debugreg

+   * - R7.1
+     - It is safe to use certain octal constants the way they are defined in
+       specifications, manuals, and algorithm descriptions as arguments to
+       macros 'INSTR_ENC' and 'MASK_EXTR'.
+     - Tagged as `safe` for ECLAIR.
+
    * - R7.2
      - Violations caused by __HYPERVISOR_VIRT_START are related to the
        particular use of it done in xen_mk_ulong.
diff --git a/docs/misra/safe.json b/docs/misra/safe.json
index 39c5c056c7d4..7ea47344ffcc 100644
--- a/docs/misra/safe.json
+++ b/docs/misra/safe.json
@@ -20,6 +20,14 @@
         },
         {
             "id": "SAF-2-safe",
+            "analyser": {
+                "eclair": "MC3R1.R7.1"
+            },
+            "name": "Rule 7.1: constants defined in specifications, manuals, and algorithm descriptions",
+            "text": "It is safe to use certain octal constants the way they are defined in specifications, manuals, and algorithm descriptions."
+        },
+        {
+            "id": "SAF-3-safe",
             "analyser": {},
             "name": "Sentinel",
             "text": "Next ID to be used"
diff --git a/xen/common/inflate.c b/xen/common/inflate.c
index 8fa4b96d12a3..be6a9115187e 100644
--- a/xen/common/inflate.c
+++ b/xen/common/inflate.c
@@ -1201,8 +1201,8 @@ static int __init gunzip(void)
     magic[1] = NEXTBYTE();
     method   = NEXTBYTE();

-    if (magic[0] != 037 ||
-        ((magic[1] != 0213) && (magic[1] != 0236))) {
+    /* SAF-2-safe */
+    if (magic[0] != 037 || ((magic[1] != 0213) && (magic[1] != 0236))) {
         error("bad gzip magic numbers");
         return -1;
     }
--
2.34.1


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 11:05:29 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 11:05:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619190.963860 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtQqH-0003Tu-J6; Thu, 19 Oct 2023 11:05:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619190.963860; Thu, 19 Oct 2023 11:05: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 1qtQqH-0003Tn-Fa; Thu, 19 Oct 2023 11:05:29 +0000
Received: by outflank-mailman (input) for mailman id 619190;
 Thu, 19 Oct 2023 11:05: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=7/TV=GB=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qtQqG-0003Oa-By
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 11:05:28 +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 67f354ba-6e6f-11ee-9b0e-b553b5be7939;
 Thu, 19 Oct 2023 13:05:26 +0200 (CEST)
Received: by mail-wm1-x335.google.com with SMTP id
 5b1f17b1804b1-4083f61312eso12638535e9.3
 for <xen-devel@lists.xenproject.org>; Thu, 19 Oct 2023 04:05:26 -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
 bs30-20020a056000071e00b0032d9a1f2ec3sm4307639wrb.27.2023.10.19.04.05.24
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Thu, 19 Oct 2023 04:05: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: 67f354ba-6e6f-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1697713525; x=1698318325; darn=lists.xenproject.org;
        h=content-transfer-encoding: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=XmMJwa3l2soeLn6+XFCad/sSs5sDXHRJpXU8N66IEO0=;
        b=iMLVAQx4iuiNYb7Ir0t1o0VULJBINrdFNxaL8LbF3ELOffz2FsWEry05o3FPdOCwJc
         Os87WvTsSxcZVMojpgfjkIL3oWS9S2MQ3jKV0cm1qoMMSmmpexYfiGOmsjoTo067GYn2
         jiUpu+LUomwCPkAbkRn01t++qdDb34lWii7oo=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697713525; x=1698318325;
        h=content-transfer-encoding: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=XmMJwa3l2soeLn6+XFCad/sSs5sDXHRJpXU8N66IEO0=;
        b=UiD7Odoi2zcvC5CdoIsGb/P40BjlOwTsJ2tzEVs6P2k+BJiNRnQmEXuScg6D5G92aD
         kvJvVixmzXPSAih833ojKGwWUteZy0wRDucb7URZabDCO0nQDuJVamJd2dhRJ6fY50N7
         auSkmQFB8uIgVVoqtyrBvQRsDn1IBo8A+H0W4WCnF3UJxe1RDlfjCtKufZ31XohSFydS
         +3tJkgEdS4Q9W6gzc74iirwn6tP58XhfI62T1jQ5rHK6IQbMzKHDLfqxFHASwtp+Xh5X
         1ROYKzjbMqrCSy9pahx3Fb7Pwt8XBo743BbYu+osClBvtSo7LbJpBDMcXplk6mzKJaYb
         BLKQ==
X-Gm-Message-State: AOJu0Ywt4CYZZWbe8qwWfJyV+ZWfphwfYpfxztYb/6qQT/FWqsdUs+hH
	DFcjRdfRsfkcos8KuTQyytAkGRaaGAWasSYGQhJHDA==
X-Google-Smtp-Source: AGHT+IE0Q6mp18bxn9XUItuHyG4rdZsGlSmIjOok2gydJhs9avcMVJEZJDoRIQSNJ/NvuU+C4LmLOA==
X-Received: by 2002:adf:cd83:0:b0:329:6be4:e199 with SMTP id q3-20020adfcd83000000b003296be4e199mr1324005wrj.13.1697713525430;
        Thu, 19 Oct 2023 04:05:25 -0700 (PDT)
Message-ID: <72f65a40-1875-45a4-a265-f4111e02150e@citrix.com>
Date: Thu, 19 Oct 2023 12:05:24 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH v2 00/13] xen/spinlock: make recursive spinlocks a
 dedicated type
Content-Language: en-GB
To: Jan Beulich <jbeulich@suse.com>
Cc: 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>, =?UTF-8?Q?Roger_Pau_Monn=C3=A9?=
 <roger.pau@citrix.com>, Paul Durrant <paul@xen.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Tamas K Lengyel <tamas@tklengyel.com>, Lukasz Hawrylko <lukasz@hawrylko.pl>,
 "Daniel P. Smith" <dpsmith@apertussolutions.com>,
 =?UTF-8?Q?Mateusz_M=C3=B3wka?= <mateusz.mowka@intel.com>,
 xen-devel@lists.xenproject.org, Juergen Gross <jgross@suse.com>
References: <20231013094224.7060-1-jgross@suse.com>
 <c86cb866-b795-b6af-0ad7-38e68c7d35c4@suse.com>
 <5f0cecef-8600-40b7-8e59-77d8e33750a7@citrix.com>
 <2efe4ba4-e94c-a5fd-008c-df8e0dc661b5@suse.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: <2efe4ba4-e94c-a5fd-008c-df8e0dc661b5@suse.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 19/10/2023 10:39 am, Jan Beulich wrote:
> On 19.10.2023 11:35, Andrew Cooper wrote:
>> On 19/10/2023 8:48 am, Jan Beulich wrote:
>>> On 13.10.2023 11:42, Juergen Gross wrote:
>>>> Instead of being able to use normal spinlocks as recursive ones, too,
>>>> make recursive spinlocks a special lock type.
>>>>
>>>> This will make the spinlock structure smaller in production builds and
>>>> add type-safety.
>>>>
>>>> This allows to increase the maximum number of physical cpus from 8191
>>>> to 65535 without increasing the size of the lock structure in production
>>>> builds (the size of recursive spinlocks in debug builds will grow to
>>>> 12 bytes due to that change).
>>>>
>>>> Changes in V2:
>>>> - addressed comments by Jan Beulich
>>>> - lots of additional cleanups
>>>> - reorganized complete series
>>>>
>>>> Juergen Gross (13):
>>>>   xen/spinlock: fix coding style issues
>>>>   xen/spinlock: reduce lock profile ifdefs
>>>>   xen/spinlock: make spinlock initializers more readable
>>>>   xen/spinlock: introduce new type for recursive spinlocks
>>>>   xen/spinlock: rename recursive lock functions
>>>>   xen/spinlock: add rspin_[un]lock_irq[save|restore]()
>>>>   xen/spinlock: make struct lock_profile rspinlock_t aware
>>>>   xen/spinlock: add explicit non-recursive locking functions
>>>>   xen/spinlock: add another function level
>>>>   xen/spinlock: add missing rspin_is_locked() and rspin_barrier()
>>>>   xen/spinlock: split recursive spinlocks from normal ones
>>>>   xen/spinlock: remove indirection through macros for spin_*() functions
>>>>   xen/spinlock: support higher number of cpus
>>> Before looking at patches 4 and onwards, I'd like us to settle on the future
>>> of recursive locking in Xen, considering in particular Andrew's objections
>>> to their use in the code base. If the plan was to eliminate them, I'd see
>>> little point in reworking the infrastructure. I'd like to suggest that one
>>> of us tries to remember to put this up as an agenda item for the next
>>> Community Call. But of course the discussion can also happen right here; I
>>> merely expect there might not be much of a reaction.
>> Actually, I consider this series an improvement.  The CPU limit is the
>> most urgent problem to fix.
>>
>> XenServer has just jumped to NR_CPUS=2k in order to support 2024's range
>> of hardware, and it's only going to be a couple of years more before
>> we're stuck given the current spinlocks.
>>
>> I do genuinely think the code and logic would be better without
>> recursive locks, but making that happen is going to be very invasive and
>> complicated.
>>
>> But in the meantime with spinlocks properly separated from recursive
>> locks, it becomes easier IMO to dissuade the introduction of new cases
>> while we unpick the existing ones.
>>
>> And so what if we do end up deleting recursive locks in a few years
>> time?  That's not an argument against doing this untangling now.
> Of course if that was happening only in a few years time, the series
> here is still worthwhile to have. My question was rather towards us
> possibly eliminating recursive locks in the next release cycle.

I find it unlikely that we'd manage to do it in the next release cycle,
even if we did dedicate a significant portion of effort to it.  There
are more urgent things too.

But the same argument works with several years substituted for months. 

~Andrew


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 11:05:30 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 11:05:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619191.963870 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtQqI-0003jD-R8; Thu, 19 Oct 2023 11:05:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619191.963870; Thu, 19 Oct 2023 11:05: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 1qtQqI-0003j6-O8; Thu, 19 Oct 2023 11:05:30 +0000
Received: by outflank-mailman (input) for mailman id 619191;
 Thu, 19 Oct 2023 11:05: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=g4nO=GB=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qtQqH-0002xs-2H
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 11:05:29 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur04on2050.outbound.protection.outlook.com [40.107.7.50])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 6941029d-6e6f-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 13:05:28 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM7PR04MB7016.eurprd04.prod.outlook.com (2603:10a6:20b:11e::22)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.22; Thu, 19 Oct
 2023 11:04:58 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%7]) with mapi id 15.20.6907.022; Thu, 19 Oct 2023
 11:04: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: 6941029d-6e6f-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=lFc7e5FSZ/8UQH3PvWFOaL71Y3Q+l5oj0beh5TCqwHFWg04A12N1eXEzi6i3i8326RbtX/zoDPbm5nDFogg3Cc5TyYGXL0v8SDL9Q7QKxjqunBwGvTrGetve/7CotHUa2scuPAVs2MxW+H+dpiQj45ZdkuXmFV8DmsYxBmJjIf5JlyCaMR5/6KxJSAAvtb0hGmRRx7OedLDBJOGEN5q5NzpPHvjThroQWXigOYSURRCo41hIQeca4v++L18+El+QjvHyjc1IMUU0FbylNffHhPfbh6/aPCmbJYKhEFdbknG4/8GNV1zTQs32xl8B/IMfxnP524ZFKqrXJLFt1cHh9g==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=zl6czcccU3Je0a7T59b25S4OQslclU2No1euv4l2XDQ=;
 b=mTPr0ofhrm6mjJA8uX2T6nqcquVEJXCHf6HqbW8p6pvW/HhE9OaLho44ttcAIndx5UwCV5ZWrs4euGUHwxjKoABywxflhSj6URajqZoyQkd02aEIAgq1O3aMJl06vt8uaK2mGWUnP78n1P4Fou6seHWRKQWJOsquzOokOsOBI7NCbkwrI5m9YEAWL459Or5krQK3/Cx7jgYRpfxZCP8f234Symhnz303UuhZJOttbPXwlfkXSgJ6Z+pR0yA01R1jDIVXa70iqwaCDoZcHKCDRLZ3QOjycD7kG6iDtvBlFAeAwe0NaXktUWBcC0nD6ftDiyE7bGdxYNb3iTik2JzkLA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=zl6czcccU3Je0a7T59b25S4OQslclU2No1euv4l2XDQ=;
 b=LIt547Oz4Ah+rUGCg5r5JdUrtktoqlWEWrhatkFdocvTGaoZ0PAL1YVmQ4NLHPXO7kzCydgFO4OOTFoy6BLQuqR0MQrTEVrPLOhCThEFVBrKnLc1B2iDEzprZQcED0bxoD2aw1OOeXhzcp/8cLpjRb/69rfECOF9m+s8bdh5dg7t+6hC1sJYdZxG57t9PklNRRC3/XcpmbyV9xLSx0dtwnoaSPuiLGM9XcSVfpoZEQR/HTClYd59VEDfOD5BZirwk2p46jleTnBjiVRJUw6lV05W2X11HD+py/If12BhMjwEES8hie4gJMo9aSkqpnWsF/BOyecVZz2gePrVixKYhg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <95b6cdcf-2ceb-6b38-3318-afbd3b985a68@suse.com>
Date: Thu, 19 Oct 2023 13: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 v1 19/29] xen/asm-generic: introduce stub header hardirq.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>
 <cb76190d2b0b056c6733c1f5cfc941d0201f6490.1694702259.git.oleksii.kurochko@gmail.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <cb76190d2b0b056c6733c1f5cfc941d0201f6490.1694702259.git.oleksii.kurochko@gmail.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR5P281CA0040.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:f3::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_|AM7PR04MB7016:EE_
X-MS-Office365-Filtering-Correlation-Id: 1a1555c9-fa70-458f-344a-08dbd0933b94
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	IUhTGJ2/dOkDzh1gv02IXfWTrrtnANkhI820c72a2SiCQmaRYESJSgxRh6m2qX77jN1lytgmNVuUHhCZNcgxsiBFJN17Asbm8qC0Mtc8qx3Dt1zLA82ll3eDBjRFKGDud+uX5qQS3VHTEhSKVly679530pS2P86aGeTQGLGrYR7kZJyhnOgkaUEgL6yDN0La8QCUPhMkhZ8IiyDgnqSQVU01aopAZRY70aG/4pQHVM4qqgUW/8EqgLdLPDZ88J4rFmYxQCFA8PwFsJHVjip0xl3fayu0UE9rzVuaNm8Zy5pz7QKBXnkBAoUmrrd2m2ItGnGbmhfPKkFGZDDKL2MT9JnjZIdxHIBpnQewOTZHT8xOtwUvT/77K1lmm9f87MnvXw/J6q8zCr4EUYoR1LpmuZ7pleF2wCPtPqzsLdVLcQowvRzQt14zinPwH9ENdzu+j+rUSNU6DkwbpQcGVvyko/bCepJFv56deJztFpVRHNuBTOUKqQnmoeSSiXMLIkW35fUpRp2zsW/6wyZtGHZyWJCkTvxKMg/rH3Q/BpbQPyFFu1z5KNb/rzY38C64SflHeYUDLPKjDSuQb1hxYvnQKIdLU6WRx2VFqFoBtYrzI6bObvRw/6WEYkmMv7PSz+RGqEgVyo6NBnHVz9nDZZDfmDBFmV2VZmW6R4Zes3LKDjw=
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)(366004)(346002)(39860400002)(230922051799003)(451199024)(1800799009)(186009)(64100799003)(6486002)(4326008)(8676002)(8936002)(4744005)(31696002)(38100700002)(2616005)(86362001)(478600001)(53546011)(5660300002)(6506007)(41300700001)(26005)(54906003)(2906002)(66476007)(6666004)(6512007)(66946007)(316002)(31686004)(66556008)(36756003)(6916009)(41533002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?c3RoVEwwY0YvaWdERWNFMXI5c0JyVmhtU2U1bGNxNjhOVlMvKzhOZGo1VEo3?=
 =?utf-8?B?bFI0VUh3Q0hXZUpsbWJkNnFxam9sRTFOZFlvcVA5cW5lQVFGcmVJbWlmSUUr?=
 =?utf-8?B?eEpoOFFzOGZzNGF4WnJpWVZ4Ym1va3J5VkJiOHREWDRVdXZQcTEyOUVlLzgw?=
 =?utf-8?B?WEZzc2QvQzR2Rk1CV096QWFyRnIrTTJHcGdWYmgwL3N5TjZvb3Z2RDI5eHF2?=
 =?utf-8?B?VG9mTGtXbFpuNDhBTzB4VnU5aGo5bzdEQ1JKMC8wNnI2TDlIR1NLeEVqQXdr?=
 =?utf-8?B?ZVFLcHMvdUtlUEM4dkk4ZnFsQmxYRVQ0Y3A1TTJZb0I3KzNxRGROL2tBcFd5?=
 =?utf-8?B?VzkzUjlEUWRJclIyYSt2TSsvRFY0UWhwclVFWG8zU09LLy8zVkttdE1PL2hH?=
 =?utf-8?B?YVJ0L0JYSUN4b1piT2hrcjVDU21keitsVWlWRzRlL05RN3Q4eWVrSjVLcEpH?=
 =?utf-8?B?a01yWUlBLzRsNnFzbWNodGIyMWRDVzErSjBFQlVRTWdYQlZ3SzZzakRVeWVq?=
 =?utf-8?B?VG80aHRKRENFVmlkcGRmclU0SEwwaVNoYW1RbXlXcXJXT2dzdFdraGkwK3NY?=
 =?utf-8?B?a0dLL3Aza3lZUDVSWTNKL3Y2d0lSUW1QTncwL0VkU2kvb1ZXMG1yby9rVm9S?=
 =?utf-8?B?US9nOTJ5OEJhVFJBbEQzT0pvM0J2dWhkS2lXQWZXUnc4RlFTVHFZYzJVczk0?=
 =?utf-8?B?YzlMSUlHd24wb1lvL2hNV2Uxem01bUhTQ3h0TC9jS1V2WUt2SURVSFNZaCtL?=
 =?utf-8?B?N0Fva0ozS2JIL2RJMk5RM2Uxa3FGUTR2RFMraTZDQUZXMlJUODdtQjl5ekFD?=
 =?utf-8?B?RVlPUEI4VnMrbVFuL0JZQURTaWpRWEJDelUzUlFvbUxORmNWV0VmV1ZweWp2?=
 =?utf-8?B?TVlneWRyVFo0SmZhcjdLRTZ5VDFObXhYcGd2MjU1NU1DbDZmZWpKTUk3ODVS?=
 =?utf-8?B?T1FpV0k1U0xPcTA4dXp3aFFSNE1LdUtHSkxrcUdsNFdlS0ZpZkx3YnBXeHZo?=
 =?utf-8?B?dHZhUE9EbHZ5b0wwZ3MzMmJYWi9jeUZKMzdWZURRRWJHMU1LTlk3andXQkxI?=
 =?utf-8?B?RXlVWXhpb29KSkFabTh5NGtRanAvMWZFWjc2Vk9kSVlzWWp2UnVnOFU4dGla?=
 =?utf-8?B?d0VqNk1xUU1GWHErcnJwZW5aWkN3eC8xYlJNNWdONmp3SUtianRzNjVSYWZQ?=
 =?utf-8?B?djAyczBtaW0valRMRS9PaGxXS1huYjJTelBSTXJuZmJJWUdSVmdGNGREWXdI?=
 =?utf-8?B?OXViNzRYbGJOalYwc0RHVUNUK3VJYzlvQm1iOVEwMmJwcDlJMW1YMTZvdU5y?=
 =?utf-8?B?S292KzJJMlZsQm9mR0JWckFDcllzTkRhRTU0aFhGNjE1dFhSVkVvenVZOU14?=
 =?utf-8?B?TjJITDdOMnRUSG9CMkE4eUZpWXdZVm1la05HUERIbkd6cWNlMGZnMjR6aEo1?=
 =?utf-8?B?dWJrVzZyU1BBdTkxbytzVkhsbEorZVhlWUw5ZUg1U0h5d05tVHhZSU5jZmdZ?=
 =?utf-8?B?VWdXd042TXp5VldmMG1yNldmMkg5WDNmdXc1dEMyNFFQeU05VzVUd280b1B1?=
 =?utf-8?B?Z2NwOFRsS0lFQ2JjQkR2TkJGUTBkTmxXelk4NGJqYnRpRkNFQ3gxM0FIdTRm?=
 =?utf-8?B?THhIZktGV0xzS1NFUHUvbDYxVi9Od01CcGh3SW9JM0JjaENLdzVBWXdDbUJk?=
 =?utf-8?B?L1QvUi82TVQ2WkdCNmxuMDhuWDJ2SE1HYmdXdElrRktYb2JKc2ZTOUtDNzRF?=
 =?utf-8?B?VWNjb1VaV0RPazVzbTd0V0tGMU1uZE5MczNOM0ZhTmdOOVRQcUloeWtsRXhk?=
 =?utf-8?B?Qm1ZeDl4RXlpQ20vWktJQ1gwRXh2S1RTUFNqeUhpSHhwbitBL2oxSk93R0VD?=
 =?utf-8?B?WnpkN0hxa1BvQldXeHZpYXMwK0I1VkZKSEluOTArTkpWTEljVHN2M1VqcGhZ?=
 =?utf-8?B?QVkvckNSTzFjRCtqQjRHY04xWVhhMTRDMmNmU2lRdUJTd0d0Z210SGF4Ymhl?=
 =?utf-8?B?azVZMTZnU05ndUtWV3lldDRWT0RrVEhHMGJWV2hnYnZxZm13Wkx2c3VQeHpP?=
 =?utf-8?B?ZTNmeWFmOTc3NGZETWpZNDdzL0E1ejhmbnRYWGNKMFJCdkZDbVVvUXdnU2cx?=
 =?utf-8?Q?a9tc3xky2k4qMAGb6mQykSHtV?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 1a1555c9-fa70-458f-344a-08dbd0933b94
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Oct 2023 11:04:58.3868
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: Ri9c/JWu+1tOiVp1LjG0chK0v7lSDgj7nznUVxt62XURrunMlnU3ZwpnU2Qe7f2FOL4t4p7gB4CxVf63zt7bSw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM7PR04MB7016

On 14.09.2023 16:56, Oleksii Kurochko wrote:
> The patch introduces header stub necessry for full Xen build.
> 
> Signed-off-by: Oleksii Kurochko <oleksii.kurochko@gmail.com>

I agree this one can be generalized from Arm's, but ...

> --- /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;

... where is __cacheline_aligned going to come from without inclusion
of xen/cache.h (as Arm has it)?

Jan


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 11:07:40 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 11:07:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619195.963879 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtQsI-0004jN-6d; Thu, 19 Oct 2023 11:07:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619195.963879; Thu, 19 Oct 2023 11:07: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 1qtQsI-0004jG-4C; Thu, 19 Oct 2023 11:07:34 +0000
Received: by outflank-mailman (input) for mailman id 619195;
 Thu, 19 Oct 2023 11:07:32 +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 1qtQsG-0004ix-HS
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 11:07:32 +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 1qtQsE-0005Es-Sj; Thu, 19 Oct 2023 11:07:30 +0000
Received: from [15.248.3.1] (helo=[10.24.67.33])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qtQsE-0000BF-Mb; Thu, 19 Oct 2023 11:07: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=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=qEIO9m5EZKm/CvvVxkK0os9jTAF/Vb7xOzJduHr2Zn0=; b=JB5r2NOGYX/vdaE8+eFqAdfaii
	A4cPVb0J0a50W682goYxIhNkW3VOJ2zICe4GQMpcMAThZycaBDWDOaC0abfJa3gvakhGhWpMzBe8o
	vYGVC9Ee9TZk+HL1navS3JSQLRSoCpbuxJpO2E6uN5uniBGts+QlMW2Puv54sLWzhL18=;
Message-ID: <54ac0161-7302-4190-9c6e-273caa652058@xen.org>
Date: Thu, 19 Oct 2023 12:07:29 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v1 04/29] xen/asm-generic: introduce stub header device.h
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>,
 xen-devel@lists.xenproject.org, Oleksii Kurochko <oleksii.kurochko@gmail.com>
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
 <3cc9ecc3abcd21c5ed7276b01bf5963e6a5fd5e0.1694702259.git.oleksii.kurochko@gmail.com>
 <a20f5783-7ee3-6ed1-d4cf-379c30c64a12@suse.com>
 <9ee7b3c9-de71-4790-815c-8b2859a85465@xen.org>
 <17d9102a-da9d-d41b-6362-1ccfe21b7976@suse.com>
 <5059771d-3842-4a7c-814d-69388179b246@xen.org>
 <61c20f5d-a324-9ece-2140-4d0c775e193c@suse.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <61c20f5d-a324-9ece-2140-4d0c775e193c@suse.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit



On 19/10/2023 12:01, Jan Beulich wrote:
> On 19.10.2023 12:57, Julien Grall wrote:
>> On 19/10/2023 11:53, Jan Beulich wrote:
>>> On 19.10.2023 12:42, Julien Grall wrote:
>>>> On 19/10/2023 10:14, Jan Beulich wrote:
>>>>> On 14.09.2023 16:56, Oleksii Kurochko wrote:
>>>>>> --- /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,
>>>>>> +};
>>>>>
>>>>> Are both of these really generic?
>>>>
>>>> I think can be re-used for RISC-V to have an abstract view a device.
>>>> This is for instance used in the IOMMU code where both PCI and platform
>>>> (here called DT) can be assigned to a domain. The driver will need to
>>>> know the difference, but the common layer doesn't need to.
>>>
>>> Question to me is whether DT and PCI can be considered "common", which
>>> is a prereq for being used here.
>>
>> I think it can. See more below.
>>
>>>
>>>>>> +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,
>>>>>
>>>>> This one certainly is Arm-specific.
>>>>
>>>> This could be renamed to DEVICE_IC (or INTERRUPT_CONTROLLER)
>>>>
>>>>>
>>>>>> +    DEVICE_PCI_HOSTBRIDGE,
>>>>>
>>>>> And this one's PCI-specific.
>>>>
>>>> Are you suggesting to #ifdef it? If so, I don't exactly see the value here.
>>>
>>> What to do with it is secondary to me. I was questioning its presence here.
>>>
>>>>> Overall same question as before: Are you expecting that RISC-V is going to
>>>>> get away without a customized header? I wouldn't think so.
>>>>
>>>> I think it can be useful. Most likely you will have multiple drivers for
>>>> a class and you may want to initialize certain device class early than
>>>> others. See how it is used in device_init().
>>>
>>> I'm afraid I don't see how your reply relates to the question of such a
>>> fallback header being sensible to have, or whether instead RISC-V will
>>> need its own private header anyway.
>>
>> My point is that RISC-V will most likely duplicate what Arm did (they
>> are already copying the dom0less code). So the header would end up to be
>> duplicated. This is not ideal and therefore we want to share the header.
>>
>> I don't particularly care whether it lives in asm-generic or somewhere.
>> I just want to avoid the duplication.
> 
> Avoiding duplication is one goal, which I certainly appreciate. The header
> as presented here is, however, only a subset of Arm's if I'm not mistaken.
> If moving all of Arm's code here, I then wonder whether that really can
> count as "generic".

 From previous discussion, I recalled that we seemed to agree that if 
applies for most the architecture, then it should be considered common.

> 
> Avoiding duplication could e.g. be achieved by making RISC-V symlink Arm's
> header.

Ewwwwww. Removing the fact I dislike it, I can see some issues with this 
approach in term of review. Who is responsible to review for any changes 
here? Surely, we don't only want to the Arm folks to review.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 11:10:26 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 11:10:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619202.963890 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtQv3-0006Xp-Nt; Thu, 19 Oct 2023 11:10:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619202.963890; Thu, 19 Oct 2023 11: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 1qtQv3-0006Xi-Kn; Thu, 19 Oct 2023 11:10:25 +0000
Received: by outflank-mailman (input) for mailman id 619202;
 Thu, 19 Oct 2023 11:10: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=in48=GB=bugseng.com=simone.ballarin@srs-se1.protection.inumbo.net>)
 id 1qtQv3-0006Xc-1M
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 11:10:25 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 18bd1e58-6e70-11ee-9b0e-b553b5be7939;
 Thu, 19 Oct 2023 13:10:22 +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 ED7004EE073D;
 Thu, 19 Oct 2023 13:10: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: 18bd1e58-6e70-11ee-9b0e-b553b5be7939
Message-ID: <8734535a-0c00-44b4-8257-64155807b052@bugseng.com>
Date: Thu, 19 Oct 2023 13:10:21 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN PATCH 1/4] xen/arm: address violations of MISRA C:2012 Rule
 13.1
Content-Language: en-US
To: Julien Grall <julien@xen.org>, xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com, sstabellini@kernel.org,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
References: <cover.1697638210.git.simone.ballarin@bugseng.com>
 <31a926a09dfcef43d13a402fd3b235aeba48009d.1697638210.git.simone.ballarin@bugseng.com>
 <41d82896-5471-4eaa-8bdd-a192e28d5546@xen.org>
 <3de5e340-30bb-44aa-affd-89f343ed1fa1@bugseng.com>
 <7066a646-711c-4dce-f3c0-effb6ae91a39@xen.org>
 <67782815-7803-4ef5-80f4-db6181f7a6e2@bugseng.com>
 <15923aaf-c005-45fb-8bb4-50d2e0995f18@xen.org>
From: Simone Ballarin <simone.ballarin@bugseng.com>
Organization: BUGSENG
In-Reply-To: <15923aaf-c005-45fb-8bb4-50d2e0995f18@xen.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

On 19/10/23 12:11, Julien Grall wrote:
> Hi,
> 
> On 19/10/2023 09:43, Simone Ballarin wrote:
>> On 19/10/23 10:19, Julien Grall wrote:
>>> Hi Simone,
>>>
>>> On 19/10/2023 08:34, Simone Ballarin wrote:
>>>> On 18/10/23 17:03, Julien Grall wrote:
>>>>> Hi,
>>>>>
>>>>> On 18/10/2023 15:18, Simone Ballarin wrote:
>>>>>> Rule 13.1: Initializer lists shall not contain persistent side 
>>>>>> effects
>>>>>>
>>>>>> This patch moves expressions with side-effects into new variables 
>>>>>> before
>>>>>> the initializer lists.
>>>>>
>>>>> Looking at the code, I feel the commit message should be a bit more 
>>>>> verbose because they are no apparent side-effects.
>>>>>
>>>>>>
>>>>>> Function calls do not necessarily have side-effects, in these 
>>>>>> cases the
>>>>>> GCC pure or const attributes are added when possible.
>>>>>
>>>>> You are only adding pure in this patch.
>>>>>
>>>>>>
>>>>>> No functional changes.
>>>>>>
>>>>>> Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>
>>>>>>
>>>>>> ---
>>>>>> Function attributes pure and const do not need to be added as GCC
>>>>>> attributes, they can be added using ECLAIR configurations.
>>>>>> ---
>>>>>>   xen/arch/arm/device.c              |  6 +++---
>>>>>>   xen/arch/arm/guestcopy.c           | 12 ++++++++----
>>>>>>   xen/arch/arm/include/asm/current.h |  2 +-
>>>>>>   3 files changed, 12 insertions(+), 8 deletions(-)
>>>>>>
>>>>>> diff --git a/xen/arch/arm/device.c b/xen/arch/arm/device.c
>>>>>> index 1f631d3274..e9be078415 100644
>>>>>> --- a/xen/arch/arm/device.c
>>>>>> +++ b/xen/arch/arm/device.c
>>>>>> @@ -319,6 +319,8 @@ int handle_device(struct domain *d, struct 
>>>>>> dt_device_node *dev, p2m_type_t p2mt,
>>>>>>       int res;
>>>>>>       paddr_t addr, size;
>>>>>>       bool own_device = !dt_device_for_passthrough(dev);
>>>>>> +    bool dev_is_hostbridge = is_pci_passthrough_enabled() &&
>>>>>> +                             device_get_class(dev) == 
>>>>>> DEVICE_PCI_HOSTBRIDGE;
>>>>>
>>>>> The commit message suggests that the code is moved because there 
>>>>> are side-effects. But none of them should have any side-effects.
>>>>>
>>>>
>>>> device_get_class contains an 'ASSERT(dev != NULL)' which is definitely
>>>> a side-effect.
>>>
>>> Just to confirm my understanding, the side-effect here would be the 
>>> fact that it traps and then panic(). IOW, if the trap was 
>>> hypothetically replaced by a while (1), then it would not be an 
>>> issue. is it correct? >
>>
>> No, it isn't. A infinite loop is a side effect.
> 
> I am not sure why. There are no change of state here.
> 
>>
>>> I can see two solutions:
>>>    1) Remove the ASSERT(). It is only here to make the NULL 
>>> dereference obvious in debug build. That said, the stack trace for a 
>>> NULL dereference would still be as clear.
>>
>> Removing the ASSERT just to make MISRA happy does not sound good to me.
> 
> I didn't suggest the ASSERT() just ot make MISRA happy. I suggested it 
> because it has no value here (we still have stack track if there are any 
> issue).
> 
>>
>>>    2) Replace the ASSERT with a proper check if ( !dev ) return 
>>> DEVICE_UNKONWN. AFAIU, we would not be able to add a 
>>> ASSERT_UNREACHABLE() because this would be again a perceived 
>>> side-effect.
>>>
>>
>> Replacing it with a proper check can be a solution, but I still prefer 
>> to add a deviation or move the invocation outside the initializer list.
> 
> In general, I am not in favor of adding deviation if we can avoid them 
> because the code can changed and therefore either moot the deviation or 
> hide any other issue.
> 

Ok, I will proceed with option 1.

> [...]
> 
>> Yes, sorry I was looking to the wrong definition.
>> In ARM the problem is the presence of a *volatile* ASM.
>> Please take a look here:
>>
>> https://saas.eclairit.com:3787/fs/var/local/eclair/XEN.ecdf/ECLAIR_normal/arm/for-4.19/ARM64-Set2/latest/PROJECT.ecd;/by_service/MC3R1.R13.1.html#{"select":true,"selection":{"hiddenAreaKinds":[],"hiddenSubareaKinds":[],"show":true,"selector":{"enabled":true,"negated":false,"kind":0,"domain":"fingerprint","inputs":[{"enabled":true,"text":"0da7f0c9aea5491eba343618f965c81f5d7aed3c"}]}}}
> 
> Ok. So the problem is the READ_SYSREG(...). Is there a way we can 
> encapsulate the call so we don't need to use your propose trick or 
> deviate at every use of 'current'?
> 

The point is that we need to move "READ_SYSREG(TPIDR_EL2)" outside
the initializer (there are no advantages in wrapping it on a function
if the function cannot be declared pure).

The proposed solution seems to me the cleanest way do to it. I do not 
see any other acceptable solutions.


> Cheers,
> 

-- 
Simone Ballarin, M.Sc.

Field Application Engineer, BUGSENG (https://bugseng.com)



From xen-devel-bounces@lists.xenproject.org Thu Oct 19 11:12:17 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 11:12:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619205.963899 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtQwr-0007NX-1N; Thu, 19 Oct 2023 11:12:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619205.963899; Thu, 19 Oct 2023 11:12: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 1qtQwq-0007NQ-V1; Thu, 19 Oct 2023 11:12:16 +0000
Received: by outflank-mailman (input) for mailman id 619205;
 Thu, 19 Oct 2023 11:12: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=g4nO=GB=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qtQwp-0007NK-KD
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 11:12:15 +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 5ac208dd-6e70-11ee-9b0e-b553b5be7939;
 Thu, 19 Oct 2023 13:12:13 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM7PR04MB7031.eurprd04.prod.outlook.com (2603:10a6:20b:116::15)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.9; Thu, 19 Oct
 2023 11:12:11 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%7]) with mapi id 15.20.6907.022; Thu, 19 Oct 2023
 11:12: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: 5ac208dd-6e70-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=DMmOJ/o/ASbT1zwfBXedWV4H4J3BQgshXLVOFo7IVnI6+mMX4N3mzEta6cvN2wlp17e+nZNW7demIMb88D+5lUr3cIwp69PBdb8baiIghjuwjlPVgTM+sQEF4dsDF1gCsjZ2xEK0LiEDN96hXDdGMT/3kvvZ2zX7huhAIARn9MGLo62VSl5KNTI6b3pkISM2zzyrzhrhopIIf1jYuIc/7Ii9p5mSqZMb8Dz4VHTcmiRfaFHYecobtsgJlxMRKQm1AIxbIV91PhCEYNwiYONpV76WDBkkypRJ7qdDxvLxk8/LKKkxiusLXynt816ozm3Sjl+Kz2SS/J+rUPT1xA6VHw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=HLZsUKhIXPghoHJHATbYjETKwEOuoxAVnYN6srOTNUM=;
 b=c+mESyi3KieUvZnDh0jDf8EfYXMiZYEe8qC+cVkKfLqVRQucRO8HJbZHl0u/an9F80Q+trWhvp0BqKxFGYzvFSpz4TJLGBrp+yQaGOVf08DMz6POMwYm23wc9LwK3goYsyA3/NWg47uY2ZvKC+m8oyZZFttrt5gYmWNOXoAPHJM0PR7U1RC66HZP6CLCqO51uqOsDz4ZnLVawWbna7qwtTZv95/hWpKfloW8mAq2iwB5J7zqEyUt1j0vHF+zOlx6p3EM2Z141SZ2/EBaOJJAXlYh5LtUUh2QlufgEuSMhG8njfMFiPBJ2bIiNonm/KL8TLBxV+h2ACDwMLV+Pn+Qlw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=HLZsUKhIXPghoHJHATbYjETKwEOuoxAVnYN6srOTNUM=;
 b=Q6Y16JikcyimVdBY6iddsWTpC88uA9uf9cJsl8jXWPRnmikYoARdB16KHsnOyzvCMkTwdJIBEfSULqIOIXN9FdLKGdq7uRk4/I8XXpEo0L07hgBQHgbUArRVw7MXTzyEiZD2fOjm4rVsazUVnpzBocr5m5APyEiSiJMb3ZHzUYzKXQ4FqMT1bR+qkwPXDG8OO8kAZN+HaqkezWRHlNKaCusJjkLGIDQLsKllRfUhL3KYfYTEJ4SbGmCRWz3i+GQwypv7gu27UgWBo05D6TxlXHOFI7ieCWgB2+16/VhUhc+sSD8mEQpQ7ZthIrdEEkUWtN44vVPLsch5zuPUrthNxw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <337bcd1c-dfc5-cbe6-8e05-7fc640dde165@suse.com>
Date: Thu, 19 Oct 2023 13:12: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 v1 20/29] xen/asm-generic: introduce stub header div64.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>
 <0c006d03b917924c411e563dcdc8043498be48b3.1694702259.git.oleksii.kurochko@gmail.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <0c006d03b917924c411e563dcdc8043498be48b3.1694702259.git.oleksii.kurochko@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_|AM7PR04MB7031:EE_
X-MS-Office365-Filtering-Correlation-Id: bf6530bd-6f4e-4437-ef8d-08dbd0943d93
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	eynFr02p/cyksaAoO5kf5fp/ddAn8IB0/wjTjHM8ZSexOa/rfoogLqpP5nX+8bf4JrXPzW+xT4ZtHDhMXjKtGQF5Nlhu9JnhalTRQDrVTYrfgMuPjqcBTh3SYaOQjrl4EmWm0YyxqXrQ+jzVhBq+E2deGtKYFoayOoQOpxrR04NFkYtdpeixKFR7xqu9HH+zVbV19LjR0UQ+tPw/v3gxC87zet4UhAo3zeSMLa1KiobQHxbV1d3honraOqOFrE8BGP7c4Zea7Mc86v16X+k+TitFPreC+gkkbqlW1NfyRUE/ULKrpaUsdNQGljvD/jJxRpR8HsIeKqNQ412AkbLUh4RxxNJhZ6MCY56oZPKpB1Lg6PuAsSxa0OibmjbNym2Vd+Bp+QL1/HZxt8so25zyC64aEcEbD1JEzQZgT+2eggJlESmkJds8bjfsgq08rPKuzpYXF1FxZRQrGBQj488Xr//bI0c/AJYDLEhvofXNSpzzuhm59kJnM+0cQlvWg2DFdxrs0b6VhSTlVwng5BUlspTkuSyf0HdZBNAwyfvO/nyeGV/Uuy7bYl15jD5DA9E8BPnZnN+MVxqmTt9BxjGdg3+PxqDv9PvbkPzugR7Tv7JLHsntlEyAp9k+eSZ+vqimEoHbqiqqPJw6hNtCnpFpbZfV3uxgfu4eZWaAwKRL/vo=
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)(136003)(39860400002)(230922051799003)(451199024)(64100799003)(186009)(1800799009)(5660300002)(4326008)(8676002)(8936002)(53546011)(6666004)(6512007)(6506007)(36756003)(2906002)(26005)(2616005)(38100700002)(31696002)(86362001)(6916009)(478600001)(54906003)(316002)(66476007)(66556008)(66946007)(41300700001)(6486002)(31686004)(41533002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?N0pwbEZkcTQ0N1ZzNVkyNzVVTTJ3cE5EVmJMMWNsT0lzU3VGZVFhL2QwZWpp?=
 =?utf-8?B?eU1qdDRiSGtMUDdIZitDVi9MZGN3NkpKZ2JoSWpWekltU1k4cUZ5MldreWlY?=
 =?utf-8?B?K2V3dEV6L043SXpaSmhjdWZYK0YzbVNPY3NzeDkyZDdOUHZrNnlUSndwckVp?=
 =?utf-8?B?cWZZK1RUUlBJZENzVy80anIzRTczNlRBd3RDOElMZUNBUkV2MTVSWlB2WStR?=
 =?utf-8?B?YVZjMHJLWjRMRlZGajllMlUxUGtLdDlQMUdxdGtlWWJXSXgvRTE3TEZkMWs5?=
 =?utf-8?B?Qks4dTg2akJROWIyYlhFVFVnc2x2emVpbmlNY3lFbUJPT3dPQVJaZHk0ZUtE?=
 =?utf-8?B?TWNvOTFBNFRhdXVSQTd0VGIzdkxkZndzYlRaTjNvdHJmbXFBaFA4dEthd040?=
 =?utf-8?B?SGhSUUt3V21DTjhaeW9wdUxWelMrTldDd21vUWowY09GM2djczRDOTdMZmEv?=
 =?utf-8?B?RkZoWkpUeU5tcEw5U0VCNDIwcFcvNWxHL0k2OTVYT3dZQ1VFK3FhR2I5Vk9V?=
 =?utf-8?B?V0JJNy9rcGpsa2pvTWh4N2EwdkI3VFM3Sis0UUpYZ2FmK1FuQ0VWWFFBa3dw?=
 =?utf-8?B?ZHV5WG1TdEFFZ3JWanJzWko5WTlIb1c3RFVPOW5veUVJbUZhZXFmL0UrNVNL?=
 =?utf-8?B?L3d0Tm9RcjNGOHlHNFBNMmRhY05VcFdNL3g0YkpJYXZIL3ZBbG8waDY1UlFT?=
 =?utf-8?B?bFl1cUtGZkFiV0NpK0xydjdpSFdWajdxOWNGdzRuZUZhSnp6djd3cUhycHNq?=
 =?utf-8?B?MHJQN2xaNkY3bGN4THNvZnNuY2FEaFF4Z2U2aHc2Ky9FcnZaSWVYWGo3YmVV?=
 =?utf-8?B?Y05Wc2FrOHQ0N3RseHlKZTNwUzlWdU5hTmEwM0puM1dKejJiRkRQZllIeGNZ?=
 =?utf-8?B?bWRPQ0M2SFVyU0x3NGdYQUJRNTdCOXIySlc1VVBhZitYTWx1b1ltUDl4UGVF?=
 =?utf-8?B?L0c1MnlTYk9kZjNBSm9yTUFnVDRxcmQ5d29DZGJFMXBVUkRVdHc2M1F0NjRx?=
 =?utf-8?B?YnlRVmowUlA4cVp1UUJJS0IxREVyMElVNUNRTmN1R0d5RmRXbDNtQjYvSms1?=
 =?utf-8?B?cENFaFBRazhTWXF2dy92QkR3M2w0WWttMHdEWkorSmgwNVZldEVvQ2JBYUZO?=
 =?utf-8?B?WmFZakVDWHh6ZHZtZjJSSlhrQWVMWG52RHBJL1hJUnQxOG1GUkxQMzNLOWRQ?=
 =?utf-8?B?Tnp1Wmh2UHQ1Qk50YXlMdHN6cDZJNFlQSWFCb3V5NmVrbzFTWUs0WTdYWGIz?=
 =?utf-8?B?Um84S3JFWUJ1bllMQnlNaEtybWJBOVVmVDZ3aDVCekxibEpQaUd4dzlOSVJB?=
 =?utf-8?B?dTNrZzR6VTYrVXVGaS9VNkhGNHBKaWFQYldLNEIyYk0xS1JjdXkvUi91V0kw?=
 =?utf-8?B?d2lncHpHcHdIOSsvdnlJMzJOQ2JCb1dzbm9kczh5dGlDUDJwSG9VQzFGVTlr?=
 =?utf-8?B?VmRZTzlKc3J2MDJ4SytVQmpDL0NETmlhaUd5Um1tTG1wV1RZeHM2R3hKZUF1?=
 =?utf-8?B?M3VVeXpYSDBMUjI5MnI0L3JsOEw1M0tJUUUzdlMxWm5qWGJwRnB5blNXR3E4?=
 =?utf-8?B?ZmxQSitzcktaQ29TUVVicjNLeUlIN1N6TVJzdTBidEROWlZFVGhhbmt0aGxk?=
 =?utf-8?B?cVNkUWJjSDhHKzdCaTkrUmsxZ0dVMkd4VklEaDJJa3BKOThDaGpmK0NMQVps?=
 =?utf-8?B?OEpMK3NjR3FJT04vcW12NnFDaEV4QjMzTUZjQkUwQk92SWgvM1hSbkQxQkdE?=
 =?utf-8?B?NzQvdmErR003YkxzZUNJWnc1TTl1OWVUa0V5bkRsd05Kc2N2dmJXTXpud2Nw?=
 =?utf-8?B?TUc2dGh6RmNnckhmTk9Mb09HR1NZUFh2aVFLYkhtRnRSdGtYU2dBWjBac1Zi?=
 =?utf-8?B?NFh5NUJDa3VXMGhoUU5uZHhlWkpEcUFJSmZsOXpaVndJZXV3d1lKWVZHYWlL?=
 =?utf-8?B?N1B4UXdFTkV1V3ZjZWtLdXNkS2NGZDhOYmdITElBY0VDQXdwSUVhY3lWdE5w?=
 =?utf-8?B?cXVFSjJHVEZXdno3NUJHSUNPYi9JNmhJTkNxQnJWK0tUTjZmTjlnUWJFOS8w?=
 =?utf-8?B?bUJFTWN4WjNSOVorRG5zbzBmRzQvVTNOLzJLYnhBVVhBMENJcDZqUi9hNEsz?=
 =?utf-8?Q?4S/DjeFuSAjTHAFLl8JugjnZj?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: bf6530bd-6f4e-4437-ef8d-08dbd0943d93
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Oct 2023 11:12:11.0950
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: /OBYoEUnIQJPmhosgizftUosgT/B1Ns64E5KxWVvXNeUjn2o0hIa/xyb1Lotn+tdmWfRK8g6224+ry4wihO2DA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM7PR04MB7031

On 14.09.2023 16:56, Oleksii Kurochko wrote:
> --- /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;                                                  \
> + })

While I'm fine with having just the BITS_PER_LONG == 64 implementation
here, this then still needs to have the #if retained that Arm has. Only
with that will it then be fine to have a blank between # and define.

There are style issues though: A blank is missing after the comma,
and according to recent agreement leading underscores should not be
used for symbols like the ones here anymore (I also wonder whether
"base" is really a good name for the symbol; "divisor" may be more to
the point). There are also excess parentheses around the two cast
expressions.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 11:12:34 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 11:12:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619206.963909 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtQx8-0007lt-8X; Thu, 19 Oct 2023 11:12:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619206.963909; Thu, 19 Oct 2023 11:12: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 1qtQx8-0007lm-5h; Thu, 19 Oct 2023 11:12:34 +0000
Received: by outflank-mailman (input) for mailman id 619206;
 Thu, 19 Oct 2023 11:12: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=in48=GB=bugseng.com=simone.ballarin@srs-se1.protection.inumbo.net>)
 id 1qtQx6-0007NK-PN
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 11:12:32 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 654d687d-6e70-11ee-9b0e-b553b5be7939;
 Thu, 19 Oct 2023 13:12:31 +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 807674EE073D;
 Thu, 19 Oct 2023 13:12: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: 654d687d-6e70-11ee-9b0e-b553b5be7939
Message-ID: <27fcfc87-aa8f-4bfb-863a-91a75c763050@bugseng.com>
Date: Thu, 19 Oct 2023 13:12:30 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN PATCH 4/4] xen: address violations of MISRA C:2012 Rule 13.1
Content-Language: en-US
To: Jan Beulich <jbeulich@suse.com>,
 Stefano Stabellini <sstabellini@kernel.org>
Cc: xen-devel@lists.xenproject.org, consulting@bugseng.com,
 George Dunlap <george.dunlap@citrix.com>, Dario Faggioli
 <dfaggioli@suse.com>, Andrew Cooper <andrew.cooper3@citrix.com>,
 Julien Grall <julien@xen.org>, Wei Liu <wl@xen.org>
References: <cover.1697638210.git.simone.ballarin@bugseng.com>
 <1e0f12095bcbc82ae3585c9fcf57bec7e324049c.1697638210.git.simone.ballarin@bugseng.com>
 <alpine.DEB.2.22.394.2310181803351.965337@ubuntu-linux-20-04-desktop>
 <78a7b73a-fefb-6884-90c5-abad2860a521@suse.com>
From: Simone Ballarin <simone.ballarin@bugseng.com>
Organization: BUGSENG
In-Reply-To: <78a7b73a-fefb-6884-90c5-abad2860a521@suse.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 19/10/23 11:35, Jan Beulich wrote:
> On 19.10.2023 03:06, Stefano Stabellini wrote:
>> On Wed, 18 Oct 2023, Simone Ballarin wrote:
>>> --- a/xen/common/sched/core.c
>>> +++ b/xen/common/sched/core.c
>>> @@ -1504,6 +1504,8 @@ long vcpu_yield(void)
>>>   {
>>>       struct vcpu * v=current;
>>>       spinlock_t *lock;
>>> +    domid_t domain_id;
>>> +    int vcpu_id;
>>>   
>>>       rcu_read_lock(&sched_res_rculock);
>>>   
>>> @@ -1515,7 +1517,9 @@ long vcpu_yield(void)
>>>   
>>>       SCHED_STAT_CRANK(vcpu_yield);
>>>   
>>> -    TRACE_2D(TRC_SCHED_YIELD, current->domain->domain_id, current->vcpu_id);
>>> +    domain_id = current->domain->domain_id;
>>> +    vcpu_id = current->vcpu_id;
>>> +    TRACE_2D(TRC_SCHED_YIELD, domain_id, vcpu_id);
>>
>> Also here it looks like accessing the current pointer is considered a
>> side effect. Why? This is a just a global variable that is only accessed
>> for reading.
> 
> Not exactly. It's a per-CPU variable access on Arm, but involves a
> function call on x86. Still that function call has no other side
> effects, but I guess Misra wouldn't honor this.
> 
> I'm afraid though that the suggested change violates rule 2.2, as
> the two new assignments are dead code when !CONFIG_TRACEBUFFER.
> 
> Jan

I confirm that there is no problem in X86: I will simply propose a patch
adding __attribute_pure__ to get_cpu_info.

-- 
Simone Ballarin, M.Sc.

Field Application Engineer, BUGSENG (https://bugseng.com)



From xen-devel-bounces@lists.xenproject.org Thu Oct 19 11:14:58 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 11:14:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619211.963920 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtQzN-0000iV-Lw; Thu, 19 Oct 2023 11:14:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619211.963920; Thu, 19 Oct 2023 11:14: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 1qtQzN-0000iO-ID; Thu, 19 Oct 2023 11:14:53 +0000
Received: by outflank-mailman (input) for mailman id 619211;
 Thu, 19 Oct 2023 11:14: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=g4nO=GB=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qtQzM-0000gc-Cv
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 11:14:52 +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 b820a7f2-6e70-11ee-9b0e-b553b5be7939;
 Thu, 19 Oct 2023 13:14:50 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM7PR04MB7031.eurprd04.prod.outlook.com (2603:10a6:20b:116::15)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.9; Thu, 19 Oct
 2023 11:14:48 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%7]) with mapi id 15.20.6907.022; Thu, 19 Oct 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>
X-Inumbo-ID: b820a7f2-6e70-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=WU5CN/JNqKHeNvW0M6Uq1RV/B0qaTiLDQqwkb2aRMN5UG8bus8gYwX4PhzTUVKblQ1/S/FpzfvFmoaiMzjeckNL8zPk6BPt8EMd4OWODa7IYSZPATmI/GBRFwvYvajOBhqv/R7+zX9W1vDZXnq0xlrlKwGC56IeO/LQKbRUXQg4zZ9k2ti/DESbeAj+uwuVdYtqrqueeEMyyg9KSFHSnrgo09GGu4JJw6NSChfDblJS0JUFsISzphUKXuUDYVs54RHiPrUk5iYKkj94XFvXqg112OKSHJKTchFQMJJnhYErQm5xTf8bR4evjVCXCkype4/7k3YWn3JBoA401fv7gag==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=9MdrXl4iI7l7+aeaOIPZKeZ80Y8hARXounR30EkZd2k=;
 b=dxyYcyh1YbvW0oV8ESWqfNzyLTgp9mTvhyfIJlmi/su/4ZW0FxnbMIvJGRRn3oJ9dFxre7TNfKcxhkqct5Nq5cQN58fZTDsoCn031a5D5ZWJPLKRWMFx36KW7SJvrmg2dZ4bpcQf3PDrcbAbBJpzNUck43LAEyoSpCxJtHVD0lO7sqWmw4DoNXwJI+F0sgcgRJstviXoIZ9s66YtnDLey4ns0HkG7K7K0EEIlDm2E3tNaCttWrfIAtF2iVvYF2aCRIBrfNACHaW+6ViaoYR0BERdeSC1J/awjKAX/Scz7ZsnI6wAucTcca/UIZ66cydsQ9F6uA0kg6cn76FHnTLDaw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=9MdrXl4iI7l7+aeaOIPZKeZ80Y8hARXounR30EkZd2k=;
 b=NDhtD58GUdXpIb5qX/UsSsr/OB0sxN3VovWOAREGZ1eM+lgdsJmSHZp5tiVDksoL/ZbHV/NQy+LOq4ZTByb8mIhtBQk+9ZCU3L/afwBpc9WSP2vuHkaHGNIJIBaWM6wtWxMjWabA9lX65c4RMbFFwJV4vDFX4CeheBbltUsTdZE9eIaFSX6indrQcKzFfJNzKKJ+CxC+ieyqzob35pvW+ehFgrF9HdlCF70Ml3oCrMq57lO1tYrLFsmwe1v3HDdi70ijV+pf93N1aDIZSyl6KLMI2cX5yrLbiut4VGtJ0xfgy9abikeG/V35XvyawWuasgEFoQ5eF9XtNbZ4sMFr0w==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <04fe316e-bc4f-0df8-7771-5be7ca878297@suse.com>
Date: Thu, 19 Oct 2023 13:14: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 v1 04/29] xen/asm-generic: introduce stub header device.h
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>,
 xen-devel@lists.xenproject.org, Oleksii Kurochko <oleksii.kurochko@gmail.com>
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
 <3cc9ecc3abcd21c5ed7276b01bf5963e6a5fd5e0.1694702259.git.oleksii.kurochko@gmail.com>
 <a20f5783-7ee3-6ed1-d4cf-379c30c64a12@suse.com>
 <9ee7b3c9-de71-4790-815c-8b2859a85465@xen.org>
 <17d9102a-da9d-d41b-6362-1ccfe21b7976@suse.com>
 <5059771d-3842-4a7c-814d-69388179b246@xen.org>
 <61c20f5d-a324-9ece-2140-4d0c775e193c@suse.com>
 <54ac0161-7302-4190-9c6e-273caa652058@xen.org>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <54ac0161-7302-4190-9c6e-273caa652058@xen.org>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0183.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:ab::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_|AM7PR04MB7031:EE_
X-MS-Office365-Filtering-Correlation-Id: 879d7f91-7b1e-45d2-9964-08dbd0949ba0
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	VwYvmq2G9RVewedbHvF/Cd/XothT8N/VM4ZEGWknS5FcVfiD2uzaBGF2HPhqvhIDv9U/Wf+SJ/A/SALK48/7Ztuhpj2wBkM0xx3JSCbzGMT93VM3ynRDBE+i4ZNx8oAuh7B+EWiAjE9KkQICPhH1ZVGagC2YEuSRrF8N6Gy6oYAKIQtzJ8BzwfJy2FQUNL9wTS+nKkx8zYINbnzj8xFhv+73tpYZqMlq5Gzde/PvdA+H+68sw8yjEld1Re7Dcie650YaIc7+LH8IRHU9/PPW4nBKgw2ygdWIjxc3LDqUi1BWTut4GtvLNcnAQ8kH+Xl4R91NhmaHDPhMfKGw0jy2n/5+2PBHKDlE+IJI5x///sjRUvsspGAm/QC7wOCcg+RMHFZfsuUPFdxMW4EJancYB9N+ra56hMUR3F5z15fb10cJHSLBnfLp55Irzsu2wQHxYGWs+KWQc3zmRX1Ri6cojJWshG73L4wbb8ih74PH5Cd2SnOFWUEqo0ihANck6w9dw4T9/luvPcfl7OttRfDVji4kPzYLtcWSHKdLxzG+pFb2DVuZO8Fi745E1oJT9YXVl9rDaBDYIwY3kYWCyw8JUHBPI6XpU3zsossnr5Jp4fYYh9qeWAsVvp6TlTMCJZaIqOy52oJGWvlSUUY0BrofY89bwvt1tS5PN3g3dC/QRVI=
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)(136003)(39860400002)(230922051799003)(451199024)(64100799003)(186009)(1800799009)(5660300002)(4326008)(66899024)(8676002)(8936002)(53546011)(6512007)(6506007)(36756003)(2906002)(26005)(2616005)(38100700002)(31696002)(86362001)(6916009)(478600001)(54906003)(316002)(66476007)(66556008)(66946007)(41300700001)(6486002)(31686004)(41533002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?YllYYmh5a1FLZnlROXZhVFQ2T0xwQklQOXJDOXQ3ekp4R1VvU0x0alc3eVE4?=
 =?utf-8?B?U3JreXRKdjNyV2lQcXRTNW1LUlRPTUplaXVnZ2M3eW5wdjlWMENCRllmc2Y2?=
 =?utf-8?B?OTJkTHo3MjdHcVdMejRod09tVjE1SDZPS3g2WUNObEpId3J1NE9JZ3ZUblI2?=
 =?utf-8?B?QlE2a2MwVEwwK0JScm1NRHNlanZoS0J4TmE4RTlVWWtIK3M2MStZd0RyVmo0?=
 =?utf-8?B?c1pBOWtWb3ducU9iaVhWd2w2MUEvTzh0WmZndlc5cnZoYmFMaHplcktYZWpX?=
 =?utf-8?B?emxXTFpGSVZ5RStTYmx0SXIwdEI5eGlNYXJVeWNMdmZYQkVuY1dMRDVYSVov?=
 =?utf-8?B?VVlEbXNmdGJJVG40azZ3MWVyWDFJa0VFOWlmd3lVR2krb21mNzR6Wi9kZ2w4?=
 =?utf-8?B?MWs4ajdocVVudXN4dkxQTDlFaHFiOVMzOXg4ckZDckt3YTlpb0NJR2Z3TFJS?=
 =?utf-8?B?Nno5U0Q0cVZpMUJlSTNORzU5cUNlNitMbVMrUjBTNk9weWlaOW56WU02YmVy?=
 =?utf-8?B?cnNMWmd4RnFHUEpPMTloTXcvQVc0STdwK2FpRW5ucmJHQjFKNE1sQnliRXdP?=
 =?utf-8?B?UHhUdDZaUlA4Yzh5cEhXWTY0bVlCRmRvZFFtRGdNcEdkeTdpTXBaY2o2RCt4?=
 =?utf-8?B?REQ0SGNUa1VhU2FWMWJXS2ptSVAyU1YzZXdLOUlsVEo5THhLdEYweW5TRjYz?=
 =?utf-8?B?di9sTWtGYUxEWW1CSjVrTzlNaXcxTnUydTNDcHRxUjdBcEFTYzk1dE0wQzk3?=
 =?utf-8?B?c0N3dWl6bUQ5S0R4emE4RGdMZjZHL0tZL1JjSU1zaHU3enQydkhoUmQ2Mkgz?=
 =?utf-8?B?TURRYXlUWXg4MTByeGk5a2ZBR2Jqd0grWlRJbzB0OWc2VnIzclcwa3ZCejJm?=
 =?utf-8?B?aWYwOGxhNEVHWXFVZGg3cGowam1UQVFaM1NMeWRNWm9mZ2hPdDZsNjFaUDZp?=
 =?utf-8?B?dkt6QVdMWVBaQyszU3RSTklvemhocjNuNmRwVldGN3BRMWI0V2I0N09nbThP?=
 =?utf-8?B?dW84OTc1cGxRQVVFaTRTdUVKU2ZsbTg4YWttKzlJNGdFL0F2ZVRsdmFhdGJu?=
 =?utf-8?B?SVREWmxKamdqdXcyMFVudDBzZnBrVkFCc1NXbDdBUGEyMTIraVBPNS9XNEZU?=
 =?utf-8?B?ZzVFbWxpMzVRbGxKUS9GaEc2OWlIWlJTK1B0MWtEalc1MkJrWWxLU3l6aGJJ?=
 =?utf-8?B?WWN2alhOemVrNERUbmM4OHFycytuYjd1WnJiNVMwaHh6MDNkTHZQWVBxMEJo?=
 =?utf-8?B?TiswQk1qWVRsRi9EYy9IanN3WWI3OEU0Rkx1NzV1RXljMEg3QWdHdnRhMGpQ?=
 =?utf-8?B?d1JkQnlPbUtIcmMwdHFvWmpWZkorL0lSLzBtdml4V282ODAwYVNqWVVoYW5Q?=
 =?utf-8?B?Ky9qQlNWeWV2bVdUb3VqTzJXUUVoaFFGbjhCNm5XUUlsWkcrMlg3T1A1ZDA2?=
 =?utf-8?B?V2Y2alpoUER2WTlUa2VwWTNGSE5FY2ExUlhueGluVTNRcHlqTHZKZzdjR3JG?=
 =?utf-8?B?dndPbnRSZTZPQ0xHS3VIb3dtK0FmNEFoanBRSjYwbUNKTGh0RFZ6Zm1WaUF3?=
 =?utf-8?B?Rk5jVzhiRWMvMTFWNU0xcVFwQ2FmWEw2S0RtVTRiNy9IWTlyVE8rNmJwd2Jm?=
 =?utf-8?B?czgrQWt0L0pRaXQ3S1hHQlUzQVFlbDI0b1NXcFdmVnNmblowTzUyeXZ3dnhn?=
 =?utf-8?B?WnNLQ1JTUUkwNGtDR2VwSkNSUHRqWGtPYllhUkcxWU9aL1ZBZWdQZm81R2Fm?=
 =?utf-8?B?S2pnRXdzN1UrUHg5VVVQTDU4ejlSRjVKbDRwMVdPcllPMHVBMmlDZUZsMU1Y?=
 =?utf-8?B?U2RHU0U4a2VyWkhBS0hXdjZCZ2NtV0FWNXRpUHVmZkpKYndhcS9DVE1FenhE?=
 =?utf-8?B?OTU5aUlkUzloV2gxVW5lSmpLcnpobGxoZkhaRlZDUjV4bkZsNlpXb092dyt2?=
 =?utf-8?B?WXV2Vi9sSmliaUswalJqd3JORVNQWktLTlE5QXFBSEM3eExYMHlsV1lqTWNE?=
 =?utf-8?B?cUtIakNPaHBEeUZibENuVlNJdUhGdkQ5MWdtcTcxODlGeTRFMHBodDFzNzJ0?=
 =?utf-8?B?UDkvSW1WYVo0Skt3bHl5bnBhYXBkZldETEVXNWMrZ2VqWSszWXh5c0RPQnNO?=
 =?utf-8?Q?fZeT6xNoGfzcNRP5UW8u3MsKZ?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 879d7f91-7b1e-45d2-9964-08dbd0949ba0
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Oct 2023 11:14:48.8852
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 3DyLEKYSO4Mudp/iHKK3kYva+eLC6F8Nmj/kJFdv3UvgO6K4dP1sBx9pSn/vt3v7sNX1J2W4zvJ/SMi9KYj67Q==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM7PR04MB7031

On 19.10.2023 13:07, Julien Grall wrote:
> 
> 
> On 19/10/2023 12:01, Jan Beulich wrote:
>> On 19.10.2023 12:57, Julien Grall wrote:
>>> On 19/10/2023 11:53, Jan Beulich wrote:
>>>> On 19.10.2023 12:42, Julien Grall wrote:
>>>>> On 19/10/2023 10:14, Jan Beulich wrote:
>>>>>> On 14.09.2023 16:56, Oleksii Kurochko wrote:
>>>>>>> --- /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,
>>>>>>> +};
>>>>>>
>>>>>> Are both of these really generic?
>>>>>
>>>>> I think can be re-used for RISC-V to have an abstract view a device.
>>>>> This is for instance used in the IOMMU code where both PCI and platform
>>>>> (here called DT) can be assigned to a domain. The driver will need to
>>>>> know the difference, but the common layer doesn't need to.
>>>>
>>>> Question to me is whether DT and PCI can be considered "common", which
>>>> is a prereq for being used here.
>>>
>>> I think it can. See more below.
>>>
>>>>
>>>>>>> +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,
>>>>>>
>>>>>> This one certainly is Arm-specific.
>>>>>
>>>>> This could be renamed to DEVICE_IC (or INTERRUPT_CONTROLLER)
>>>>>
>>>>>>
>>>>>>> +    DEVICE_PCI_HOSTBRIDGE,
>>>>>>
>>>>>> And this one's PCI-specific.
>>>>>
>>>>> Are you suggesting to #ifdef it? If so, I don't exactly see the value here.
>>>>
>>>> What to do with it is secondary to me. I was questioning its presence here.
>>>>
>>>>>> Overall same question as before: Are you expecting that RISC-V is going to
>>>>>> get away without a customized header? I wouldn't think so.
>>>>>
>>>>> I think it can be useful. Most likely you will have multiple drivers for
>>>>> a class and you may want to initialize certain device class early than
>>>>> others. See how it is used in device_init().
>>>>
>>>> I'm afraid I don't see how your reply relates to the question of such a
>>>> fallback header being sensible to have, or whether instead RISC-V will
>>>> need its own private header anyway.
>>>
>>> My point is that RISC-V will most likely duplicate what Arm did (they
>>> are already copying the dom0less code). So the header would end up to be
>>> duplicated. This is not ideal and therefore we want to share the header.
>>>
>>> I don't particularly care whether it lives in asm-generic or somewhere.
>>> I just want to avoid the duplication.
>>
>> Avoiding duplication is one goal, which I certainly appreciate. The header
>> as presented here is, however, only a subset of Arm's if I'm not mistaken.
>> If moving all of Arm's code here, I then wonder whether that really can
>> count as "generic".
> 
>  From previous discussion, I recalled that we seemed to agree that if 
> applies for most the architecture, then it should be considered common.

Hmm, not my recollection - a certain amount of "does this make sense from
an abstract perspective" should also be applied.

>> Avoiding duplication could e.g. be achieved by making RISC-V symlink Arm's
>> header.
> 
> Ewwwwww. Removing the fact I dislike it, I can see some issues with this 
> approach in term of review. Who is responsible to review for any changes 
> here? Surely, we don't only want to the Arm folks to review.

That could be achieved by an F: entry in the RISC-V section of ./MAINTAINERS.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 11:20:03 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 11:20:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619217.963929 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtR4I-0004l2-Di; Thu, 19 Oct 2023 11:19:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619217.963929; Thu, 19 Oct 2023 11:19: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 1qtR4I-0004kv-B5; Thu, 19 Oct 2023 11:19:58 +0000
Received: by outflank-mailman (input) for mailman id 619217;
 Thu, 19 Oct 2023 11:19: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=g4nO=GB=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qtR4H-0004kf-7V
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 11:19:57 +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 6e7ed979-6e71-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 13:19:56 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by GV1PR04MB9069.eurprd04.prod.outlook.com (2603:10a6:150:20::22)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.8; Thu, 19 Oct
 2023 11:19:52 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%7]) with mapi id 15.20.6907.022; Thu, 19 Oct 2023
 11:19: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: 6e7ed979-6e71-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ATjgnNZuoVLxeUDmdH+WdVrjLmmt3ZDv56+Av3gSNRNNtGpuotLIQf5mlELfTuZYOUiAOdXsDLqUhcav1KaXtPkqCYnYMvFb2lHMhGbcfFJ3MMfqdDZsUaAEw7Xu4ntBlrFntdtiBkn84+60dZRrshk7IozyIY46squMho9cx2j2S2I/UjngKJ0vLHHmbKOFUNkllr45leyyUMyVUhP3KukxhHzls/j4djQb/Y8OFPsjVU/TM6cCEj67bb9bKChLR0jK2HLOi8+i+klNp2yJQiRv9NRH7ekTU/ujRxFi4YhWeYuEJCjoI09/8Nv/bxTsjHk8S2to28sbz/ikKRpl4w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=UJnRviuH5kVqzhbJRUDVKYJ0B7nGICAbdQehwGjRISk=;
 b=GfwHySPyZeG2mSi/I3LzzGHAuO5SK21aCXJ8UmHYhnvz5Dc4UgeUsKQKsnEbeZtXwnAOCNVyoGurqZfgwOQMi0Wu7rxMzNYgT5Z4xGEvMJZPjl3MQBoVnmXAmJp8+sS/jQz26ABBxdZrfyiW/uhFZpSWJwzpwksWnn+NrJI7NnJ5qTalKvSxMiL74ArGqr8acC6S5FfGkKbfGyyXDHbTGl9/3HPMko4JqJ14ER1syqKmQkdYzZc56WJJgg8Hk3LPe04xPERWcAEIXQMhzhY2ezolf2+lBOjSh/qbV7+YBUx38fHmTsIazkfJ9DjDKVSAEjcQvE0gXCD8h5JoMcGmtA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=UJnRviuH5kVqzhbJRUDVKYJ0B7nGICAbdQehwGjRISk=;
 b=y/dBMDyJ9wWMVD1kQZqaTPOIvL9KIFpDaK7oCyE9B71NSR4/9n01EBNoH0mXjjXBV/6RFf979tPHumFs++BXRBeNoBO75paOoZLXwU7wrgWYuxRzuCNqw3euc7SgDSeKQ0NyAHemqqp2eOS9d/Yb3ZhlwSr5vl3hwuLsH1AATqjilyStBJM8xHmsZI1gSqDJBgQ3LuQp3AL1R+JbWNzTW6MM57Hpr0cdASGeHhLn6yd/hLU57Re1paaUNH18L84OPEwgMTiQgkrTZ4ijVwtOoYJRCturDk0yM31QNM3AC3Zut3S/KqijwgkEpD6bpeEXRyRgBWXCHEYn//qGwVCLJQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <5c9b851f-6f64-f6bd-970a-63aefdab5b41@suse.com>
Date: Thu, 19 Oct 2023 13:19:49 +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 4/4] xen: address violations of MISRA C:2012 Rule 13.1
Content-Language: en-US
To: Simone Ballarin <simone.ballarin@bugseng.com>
Cc: xen-devel@lists.xenproject.org, consulting@bugseng.com,
 George Dunlap <george.dunlap@citrix.com>, Dario Faggioli
 <dfaggioli@suse.com>, Andrew Cooper <andrew.cooper3@citrix.com>,
 Julien Grall <julien@xen.org>, Wei Liu <wl@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>
References: <cover.1697638210.git.simone.ballarin@bugseng.com>
 <1e0f12095bcbc82ae3585c9fcf57bec7e324049c.1697638210.git.simone.ballarin@bugseng.com>
 <alpine.DEB.2.22.394.2310181803351.965337@ubuntu-linux-20-04-desktop>
 <78a7b73a-fefb-6884-90c5-abad2860a521@suse.com>
 <27fcfc87-aa8f-4bfb-863a-91a75c763050@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <27fcfc87-aa8f-4bfb-863a-91a75c763050@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_|GV1PR04MB9069:EE_
X-MS-Office365-Filtering-Correlation-Id: ccf5d81d-6121-4d4f-e659-08dbd095504b
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:
	kT8hT/5D5bs5NMNKyHzdlCVQRnC20oQrBTdnKiD4B5AY0uB/WZkyNNizmhu89sNNQHf4D+CHf+eigHM0StLCyIvtlbJSd3Ec8eZ4gD/Ut55tNKrVKuZpVeN/r/hQyDtwjSELOAWjv9rqPkIV8Gsqo7tV7QVGBS3IT7J0q2xd8cv/vZwJSMrPfiLN0BLC4HghV2hkGlzb/BP6RLB+Cnt4v5rih6oJliZFRebBUgdIHT0DL8LMJfSx+s/t61VNQbnpJQ3a4CjndCWY3b5JoYF/yKddAYLyiD5DhXFhbETgkLe0la8UZhCwqBq9Md7p4Q/TpL54vvSehczLW+3R7SXcjRthqZSy0xIf6XaM6aNiW3ak24v5BspzCLv0Z53ZVZe1xJKdeS5a1gqckAbW0If2OHr4ZTXyXxRoWDNjGSkNe/slnxIPoMehuVT/MKLER3gD29a1pT4FbSdY9b1T5JAu/VlMoPfY57eezku4xKLiCl2T+3SiGM6kQd4oLjEyv/RF8zDyZ9OedVvs/8wPlrhJyA7b8Ty6SPhfQyzmnpl1csZSbqGZYIj6k2uYPBY152wyG7kSxrfigK+8cRDYt+dH0uDlFpbT2vRgc8ILrbIeLpgte1e/l4tCiUiKaefxHrKQaCXqK/Lkemf8sivVRn6nLw==
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)(136003)(396003)(346002)(230922051799003)(451199024)(186009)(1800799009)(64100799003)(2906002)(5660300002)(4326008)(6916009)(54906003)(66476007)(66946007)(8936002)(66556008)(316002)(6666004)(478600001)(6486002)(8676002)(41300700001)(36756003)(86362001)(31696002)(38100700002)(2616005)(53546011)(6506007)(83380400001)(26005)(6512007)(31686004)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?QlJvVVhkRlRDTEVOSWg1VXNVVTkyVWF4cnlpVGlKOTB1THlvN2F5MzY4c1dN?=
 =?utf-8?B?dXZQamY1UFhwbjhOVzdvaEV1Z0Vvbnk2MHByQ3JCRS80SmViengvaG55Rmtn?=
 =?utf-8?B?dDRMc2gwSUVQSlFhekZ1NVliZWFlYUx2L09OVHJIekFKRU1JM2FteWh2aVNx?=
 =?utf-8?B?Q1pvK3p3SWlmUGRTdVhyaTludWxiTVZrdWVJNENmWCttNk1rWlZZZFNjQTZY?=
 =?utf-8?B?OEFPS0d1bzNCb1QyZFErdXBoOW9LM3kvVU1lRnFEcTJHQjdMTGJVOFpRblhn?=
 =?utf-8?B?NUt1cENUZ21lUmwyWjVhWmUzV3NON2VIRHh2dlI0bFBmYkNMYVpJMndMNFc5?=
 =?utf-8?B?Ny9abUNGVHYzVnNjb0xCTlRTR2lSSFZDMFpFMnZPNit5Q0IzR0NPNzhLMkxW?=
 =?utf-8?B?dXFMU2F6UDdxK3h5bzhVcUdZQm1yeGVueS94ZEFjZCtHU0xpY2pOZDhBdmtU?=
 =?utf-8?B?SHBrbEVIb1AwT0FQbFRBL0JjazNLK0hWYWQrMEorTmlvdGR0cEhPK2k5SXM4?=
 =?utf-8?B?aGVoaGdlcURPYjY3aWhrQU94SmVoeW4vb1VhbmdYY1pIRytxaEpSRXMvdXZ5?=
 =?utf-8?B?S2c5dFp5VGxuYTJtOGY1NVFBUTYvMmdEeW1jTHNkRlhHdHR4bHFhVHUwMkpL?=
 =?utf-8?B?aWt5VnFmNFZ3K2RSOEdwMzg0Z1hQWEJyalpCckIwc3dYZ2VsZmxqU1FJUVhm?=
 =?utf-8?B?dC8wOFl3Sk1ZZGFYUHNwT1hCdjFKbEtqczBYL3pTZm9HTGo4cEtlcVhiemFF?=
 =?utf-8?B?eGovdzN5N1M2OTdSdHpuMWJleDQ0ZG84OGFNZDFRdFpaanFBWTVlUm9kTGZs?=
 =?utf-8?B?U29USlpHLzhSai96eTkrdVIwdnNvSFp4bjNYRm8vSkU2TEFXT0xGRVdiZUNN?=
 =?utf-8?B?UVI1allqRVZkMnErUVdhMGwwMFZOcWpZekJYOHRVWmVwNnBQYmpIMHdEcERX?=
 =?utf-8?B?amFXOUVOSjNTWkFoa1hTeFQ4SC9hSTl0WXNRbm83bXhUc21zTmg3aVVuNHAy?=
 =?utf-8?B?a3hvSVVPdzIwL2k4R0p0Z0pac0t6L2ZLRlFKcGFBRXlqdzFTdkJZS1lPL2FX?=
 =?utf-8?B?NWxQVzlqRCtFQzNpeVQvUnVlalNIV00zRWU4dnJGVVgyMDJWSkgrT2JtRkxF?=
 =?utf-8?B?YjNRYTdtZjFMNDFjSmM2VWFQSFZMeWI2VzZjRDY1cVdkYkluNi93S003c2l4?=
 =?utf-8?B?eGZDM2d2MXZMYUJwTytSZm1WWStMYzdtZ0krVmY4M0R1b3o0TENhd0NQclBN?=
 =?utf-8?B?UW9TQWE4VGNmUDREYUpWM1ZEczF5UU45eStMWHh1ajM1UkRVb0RyV2dHWU5l?=
 =?utf-8?B?MWZDZEYrMm1ONUV2TU4vd3Zmd3R4MC9jZ1R0b0J4dVN4RS9oS3ovZjg2ZHJv?=
 =?utf-8?B?ZU5aVlBuZG9weWJ3ck1yVHkydC8yOFJwOUFTZWx0cmF2YUQzZHpaejNIc0Ew?=
 =?utf-8?B?V2phYkZ2WWJKUU1uMThjMVdnbHlZUENld2ZjYnVaZDM3dXY0cTJpOEdUZmNM?=
 =?utf-8?B?by9RTUFzWXJra1Nnb1RVTmRvZFBhdDZrdEdMQTBCdko0UlRWeVVCS1Z5Z0dz?=
 =?utf-8?B?dkVIL1hnbFE1UFEzQnZoK01qb1MwelBtMzFrZ2hza1MxZHNKTjNIRCtGM2Jk?=
 =?utf-8?B?SWkxZDRKb096S2tNYjdKODNiSWRUeldXNklEOTFaMnpPSUNwS3ZMT3I2TEZn?=
 =?utf-8?B?WkpZUy82UmsxUFlIdURvYU1vVllzZXJKU2hnSWxrWEZKU2pXblhnc24vUVRS?=
 =?utf-8?B?Qm15RFF1SXBUczM1cVF3OWN6WTd0bkZjNTFpRFgyOXdHRndNY2JLU0FjRTE4?=
 =?utf-8?B?MkZEeEFmdkpLUnhpanhPaEt3cWZTZE1MY1FpMVVrclU4VHo1VWQwbkd6dlFQ?=
 =?utf-8?B?NkxwYzYrcVdqbkhXN2lRNUI4TWZKVEcxWC9SUW4vQnRzY2xiRTdhMC9VNkll?=
 =?utf-8?B?T3p5M1I2ZTB1OG1lN1pkU2c2ek5OQlN1ZnI1NjZFcGc5a3pqV2xBNnRPYis1?=
 =?utf-8?B?cWdPM25pRnVEVUF5RVlRZ1lLUE0wMUJtWEhlWlZYeDV0REtRcDZ5MGdnT0xK?=
 =?utf-8?B?bWIxN1FHdjhsUlFiVWJGdzhqY1JUMms5QUhZNEt6Qml3WSs5MWFveUZPaWor?=
 =?utf-8?Q?k4VdR+yWDKSGdHHPPMkXkq3UM?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: ccf5d81d-6121-4d4f-e659-08dbd095504b
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Oct 2023 11:19:51.9970
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: +SO70PeeAIbtd+Ryyl0BCt1Dnv5Fe+9Z8nRKoF53NTMAzm9hjjJCxscqpjFfpbZVRSdZs0jP192si8o+wehZCQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV1PR04MB9069

On 19.10.2023 13:12, Simone Ballarin wrote:
> On 19/10/23 11:35, Jan Beulich wrote:
>> On 19.10.2023 03:06, Stefano Stabellini wrote:
>>> On Wed, 18 Oct 2023, Simone Ballarin wrote:
>>>> --- a/xen/common/sched/core.c
>>>> +++ b/xen/common/sched/core.c
>>>> @@ -1504,6 +1504,8 @@ long vcpu_yield(void)
>>>>   {
>>>>       struct vcpu * v=current;
>>>>       spinlock_t *lock;
>>>> +    domid_t domain_id;
>>>> +    int vcpu_id;
>>>>   
>>>>       rcu_read_lock(&sched_res_rculock);
>>>>   
>>>> @@ -1515,7 +1517,9 @@ long vcpu_yield(void)
>>>>   
>>>>       SCHED_STAT_CRANK(vcpu_yield);
>>>>   
>>>> -    TRACE_2D(TRC_SCHED_YIELD, current->domain->domain_id, current->vcpu_id);
>>>> +    domain_id = current->domain->domain_id;
>>>> +    vcpu_id = current->vcpu_id;
>>>> +    TRACE_2D(TRC_SCHED_YIELD, domain_id, vcpu_id);
>>>
>>> Also here it looks like accessing the current pointer is considered a
>>> side effect. Why? This is a just a global variable that is only accessed
>>> for reading.
>>
>> Not exactly. It's a per-CPU variable access on Arm, but involves a
>> function call on x86. Still that function call has no other side
>> effects, but I guess Misra wouldn't honor this.
>>
>> I'm afraid though that the suggested change violates rule 2.2, as
>> the two new assignments are dead code when !CONFIG_TRACEBUFFER.
> 
> I confirm that there is no problem in X86: I will simply propose a patch
> adding __attribute_pure__ to get_cpu_info.

I specifically did not suggest that, because I'm afraid the "pure" attribute
may not be used there. Besides this attribute typically being discarded for
inline functions in favor of the compiler's own judgement, it would allow
the compiler to squash multiple invocations. This might even be desirable in
most cases, but would break across a stack pointer change. (In this context
you also need to keep in mind late optimizations done by LTO.)

Jan


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 11:21:47 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 11:21:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619219.963941 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtR62-0006sk-Pp; Thu, 19 Oct 2023 11:21:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619219.963941; Thu, 19 Oct 2023 11: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 1qtR62-0006sd-LO; Thu, 19 Oct 2023 11:21:46 +0000
Received: by outflank-mailman (input) for mailman id 619219;
 Thu, 19 Oct 2023 11:21: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=+Bpc=GB=redhat.com=kwolf@srs-se1.protection.inumbo.net>)
 id 1qtR62-0006sX-2d
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 11:21:46 +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 aec5532b-6e71-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 13:21:44 +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-578-SK7vo6K2NX2TQ2jYrduzJQ-1; Thu, 19 Oct 2023 07:21:40 -0400
Received: from smtp.corp.redhat.com (int-mx10.intmail.prod.int.rdu2.redhat.com
 [10.11.54.10])
 (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 57E82801234;
 Thu, 19 Oct 2023 11:21:39 +0000 (UTC)
Received: from redhat.com (unknown [10.39.193.120])
 by smtp.corp.redhat.com (Postfix) with ESMTPS id D792A492BFB;
 Thu, 19 Oct 2023 11:21: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: aec5532b-6e71-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
	s=mimecast20190719; t=1697714503;
	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=wJbjQEX6r4FVtVGUs3f8q9Y8qBJ81kVTcIhxYAo3Mqk=;
	b=I4Fy1zkXJ+i4ar6jj/tCSAnfPsq/o7f5vphWb2XTK3zXgc9GChMpEbAmnYWsa1OqvYRasU
	hdpyxqMNqJBxQoW54IIBp2+yOdkNkoMBkJUCK0x1Tzn1Uup8W+iqM/wvDGasyBVsAAWh3Q
	+TPFC0SFg6J3CiQU5MSEHzsn32QJ5Bg=
X-MC-Unique: SK7vo6K2NX2TQ2jYrduzJQ-1
Date: Thu, 19 Oct 2023 13:21:35 +0200
From: Kevin Wolf <kwolf@redhat.com>
To: David Woodhouse <dwmw2@infradead.org>
Cc: qemu-devel@nongnu.org, Hanna Reitz <hreitz@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	=?iso-8859-1?Q?Marc-Andr=E9?= Lureau <marcandre.lureau@redhat.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Richard Henderson <richard.henderson@linaro.org>,
	Eduardo Habkost <eduardo@habkost.net>,
	Marcelo Tosatti <mtosatti@redhat.com>, qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org, kvm@vger.kernel.org
Subject: Re: [PATCH 11/12] hw/xen: automatically assign device index to block
 devices
Message-ID: <ZTERPwrbUJf7kty2@redhat.com>
References: <20231016151909.22133-1-dwmw2@infradead.org>
 <20231016151909.22133-12-dwmw2@infradead.org>
 <ZS+cutIjulWBQakk@redhat.com>
 <950f3a62dfcecce902037f95575f1013697a5925.camel@infradead.org>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <950f3a62dfcecce902037f95575f1013697a5925.camel@infradead.org>
X-Scanned-By: MIMEDefang 3.4.1 on 10.11.54.10

Am 18.10.2023 um 12:52 hat David Woodhouse geschrieben:
> > Actually, how does this play together with xen_config_dev_blk()? This
> > looks like it tried to implement a very similar thing (which is IF_XEN
> > even already existed).
> 
> Ah yes, thanks for spotting that! I hadn't been looking at the xenfv
> 
> > Are we now trying to attach each if=xen disk twice in the 'xenpv'
> > machine? Or if something prevents this, is it dead code.
> 
> I suspect we end up creating them twice (and probably thus failing to
> lock the backing file).
>
> [...]
>
> ... but this just reinforces what I said there about "if
> qmp_device_add() can find the damn bus and do this right, why do we
> have to litter it through platform code?"

Indeed, if you can do -device, it's always the best option. For block
devices not the least because it gives you a way to use -blockdev with
it. I'm happy whenever I see a drive_get() call go away.

Kevin



From xen-devel-bounces@lists.xenproject.org Thu Oct 19 11:23:23 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 11:23:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619222.963950 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtR7a-0007Rb-32; Thu, 19 Oct 2023 11:23:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619222.963950; Thu, 19 Oct 2023 11: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 1qtR7Z-0007RU-W5; Thu, 19 Oct 2023 11:23:21 +0000
Received: by outflank-mailman (input) for mailman id 619222;
 Thu, 19 Oct 2023 11:23: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=yz61=GB=suse.com=jgross@srs-se1.protection.inumbo.net>)
 id 1qtR7Y-0007RO-MQ
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 11:23:20 +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 e72dbaa9-6e71-11ee-9b0e-b553b5be7939;
 Thu, 19 Oct 2023 13:23: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 366521F38C;
 Thu, 19 Oct 2023 11:23: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 073D2139C2;
 Thu, 19 Oct 2023 11:23:17 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap2.suse-dmz.suse.de with ESMTPSA id r2xiAKURMWWMGQAAMHmgww
 (envelope-from <jgross@suse.com>); Thu, 19 Oct 2023 11:23: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: e72dbaa9-6e71-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1697714597; 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=JkdZSn6b+HgIOqHEQHEvOTxmV6yWUbnbXpERNmhJ/Vg=;
	b=O2hiSODSa0+biWi1ys7+YX4oy7uTwOV8REFetsYVaWlNLOyAgUoGxQn+6KCD1oDPRXGHIv
	amHGn/42da3NuFF7PZjk4A/bezOa7fdX0EMT6ckyuBOE+Oxst3amc9xRsJZhkXm1Iy+KJN
	mcdj4tW/+xdmBM1VV0e1voFoqa6CmWQ=
From: Juergen Gross <jgross@suse.com>
To: xen-devel@lists.xenproject.org
Cc: Juergen Gross <jgross@suse.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Dario Faggioli <dfaggioli@suse.com>,
	Henry Wang <Henry.Wang@arm.com>
Subject: [PATCH] xen/sched: fix sched_move_domain()
Date: Thu, 19 Oct 2023 13:23:14 +0200
Message-Id: <20231019112314.22665-1-jgross@suse.com>
X-Mailer: git-send-email 2.35.3
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Authentication-Results: smtp-out2.suse.de;
	none
X-Spam-Level: 
X-Spam-Score: 0.48
X-Spamd-Result: default: False [0.48 / 50.00];
	 ARC_NA(0.00)[];
	 RCVD_VIA_SMTP_AUTH(0.00)[];
	 FROM_HAS_DN(0.00)[];
	 TO_DN_SOME(0.00)[];
	 TO_MATCH_ENVRCPT_ALL(0.00)[];
	 R_MISSING_CHARSET(2.50)[];
	 MIME_GOOD(-0.10)[text/plain];
	 BROKEN_CONTENT_TYPE(1.50)[];
	 RCPT_COUNT_FIVE(0.00)[5];
	 NEURAL_HAM_LONG(-3.00)[-1.000];
	 DKIM_SIGNED(0.00)[suse.com:s=susede1];
	 NEURAL_HAM_SHORT(-1.00)[-1.000];
	 MID_CONTAINS_FROM(1.00)[];
	 FROM_EQ_ENVFROM(0.00)[];
	 MIME_TRACE(0.00)[0:+];
	 RCVD_COUNT_TWO(0.00)[2];
	 RCVD_TLS_ALL(0.00)[];
	 BAYES_HAM(-0.42)[78.22%]
X-Spam-Flag: NO

When moving a domain out of a cpupool running with the credit2
scheduler and having multiple run-queues, the following ASSERT() can
be observed:

(XEN) Xen call trace:
(XEN)    [<ffff82d04023a700>] R credit2.c#csched2_unit_remove+0xe3/0xe7
(XEN)    [<ffff82d040246adb>] S sched_move_domain+0x2f3/0x5b1
(XEN)    [<ffff82d040234cf7>] S cpupool.c#cpupool_move_domain_locked+0x1d/0x3b
(XEN)    [<ffff82d040236025>] S cpupool_move_domain+0x24/0x35
(XEN)    [<ffff82d040206513>] S domain_kill+0xa5/0x116
(XEN)    [<ffff82d040232b12>] S do_domctl+0xe5f/0x1951
(XEN)    [<ffff82d0402276ba>] S timer.c#timer_lock+0x69/0x143
(XEN)    [<ffff82d0402dc71b>] S pv_hypercall+0x44e/0x4a9
(XEN)    [<ffff82d0402012b7>] S lstar_enter+0x137/0x140
(XEN)
(XEN)
(XEN) ****************************************
(XEN) Panic on CPU 1:
(XEN) Assertion 'svc->rqd == c2rqd(sched_unit_master(unit))' failed at common/sched/credit2.c:1159
(XEN) ****************************************

This is happening as sched_move_domain() is setting a different cpu
for a scheduling unit without telling the scheduler. When this unit is
removed from the scheduler, the ASSERT() will trigger.

In non-debug builds the result is usually a clobbered pointer, leading
to another crash a short time later.

Fix that by swapping the two involved actions (setting another cpu and
removing the unit from the scheduler).

Cc: Henry Wang <Henry.Wang@arm.com>
Fixes: 70fadc41635b ("xen/cpupool: support moving domain between cpupools with different granularity")
Signed-off-by: Juergen Gross <jgross@suse.com>
---
This fixes a regression introduced in Xen 4.15. The fix is very simple
and it will affect only configurations with multiple cpupools. I think
whether to include it in 4.18 should be decided by the release manager
based on the current state of the release (I think I wouldn't have
added it that late in the release while being the release manager).
---
 xen/common/sched/core.c | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/xen/common/sched/core.c b/xen/common/sched/core.c
index 12deefa745..e9f7486197 100644
--- a/xen/common/sched/core.c
+++ b/xen/common/sched/core.c
@@ -738,12 +738,13 @@ int sched_move_domain(struct domain *d, struct cpupool *c)
     new_p = cpumask_first(d->cpupool->cpu_valid);
     for_each_sched_unit ( d, unit )
     {
-        spinlock_t *lock = unit_schedule_lock_irq(unit);
+        spinlock_t *lock;
+
+        sched_remove_unit(old_ops, unit);
 
+        lock = unit_schedule_lock_irq(unit);
         sched_set_res(unit, get_sched_res(new_p));
         spin_unlock_irq(lock);
-
-        sched_remove_unit(old_ops, unit);
     }
 
     old_units = d->sched_unit_list;
-- 
2.35.3



From xen-devel-bounces@lists.xenproject.org Thu Oct 19 11:27:36 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 11:27:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619226.963960 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtRBb-0000fX-Jv; Thu, 19 Oct 2023 11:27:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619226.963960; Thu, 19 Oct 2023 11:27: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 1qtRBb-0000fQ-Fp; Thu, 19 Oct 2023 11:27:31 +0000
Received: by outflank-mailman (input) for mailman id 619226;
 Thu, 19 Oct 2023 11:27: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=g4nO=GB=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qtRBa-0000fI-Ih
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 11:27:30 +0000
Received: from EUR03-DBA-obe.outbound.protection.outlook.com
 (mail-dbaeur03on20618.outbound.protection.outlook.com
 [2a01:111:f400:fe1a::618])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 7c15fcd1-6e72-11ee-9b0e-b553b5be7939;
 Thu, 19 Oct 2023 13:27:28 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM9PR04MB8422.eurprd04.prod.outlook.com (2603:10a6:20b:3ea::15)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.9; Thu, 19 Oct
 2023 11:27:26 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%7]) with mapi id 15.20.6907.022; Thu, 19 Oct 2023
 11:27: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: 7c15fcd1-6e72-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=M3XfB9fMd2rHCfnZh3HxotdKHV5weFApQ0IbZt+hCZk1U58BV0GNCIL6nwSEX0eFRC7mjnqu/X1y0UmIwKg5z42dNziw0B0UohTtkqwiXdgGRhXf11f81615YNtCsZsmtujlGrtxqa+NQlNBpBcFuUX2DtYOqxH5xXuok6Q161y4GT6zs0wUAEkcwKDtHld6dkfQGh4EAxiRiKF0c/Xsy2lujzAkblYpIje05QJyE7LYVfUSScoxsvIN/E2yoFnUbjHMgDydUoD7Ko/+fBKNKL1fFi7Xq/FlVPjHg8eudhe1/9d5rdAa9+Hz7UX4G4OY+xmUzhOSi0QjvKmpZoI0nA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=hLlb7nS/7c3RCP9QonB07Jz3Nk7u8VGVTktgJfx3dx4=;
 b=I17qspdQNWOQvPs8BeRF2prrZCH9dmJVO08szpzZ+JFQMLcxSuX8AiIpMnjvtpGD/9aw/H3ZEcjmBlsQit/qInO4TCHlZhG5SYcjjrx6mpjV0oN8EPqCWpXG3XzuB/d54puz5eNzpQm3Hk8qG6OaLVOZqYFkVMsIjaz97rYA3Zve3ypFj3uDvXfVEbVR9Fa9ERoYltjG8azNNZP2cLYZmSoxyX6g1rLUxwdZOX7qm0aj+MV+K4W17Mboh0tQIIQKO+V4XD9zVrMZZCDAhMy5hVqiIytqeHV8WNYMkdMltLUthB61bL/5ZxBXoFIWk1RJnyUpd9CdWvXZpIlEbT6B5Q==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=hLlb7nS/7c3RCP9QonB07Jz3Nk7u8VGVTktgJfx3dx4=;
 b=4q+6XMgQzB54xisyZE9bXhwwPGLPP7Xc5AcwzJj6UrHkZHqA9SH8Pt48I3+4vVfHI6x8NCyQxm3T3L/ckJHorVrmVWZ8cSxwhXM0XV5gle9Sq229bp3U+MUemTdz3BYgX5HkQ/0NmBBzq/BjK1dncGHKXwEaQJGowCBhbGDaauY9lpi9BpdPATPzxeBAm/LlQyJtrFDqWWgbVTwHBKIkRw3euIwNDikYJIzxKHDlA8cEvD+79Dod36/GQfPVcRv4lDOa/HYOTp7fR+NHnMtLWKEvt1No4JhQUJMCmVOLmCSDGNyCLsY5fZyqAeePhgNu6f12XRRtOA2pFlLAhyX9cg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <32b0e0b0-aed4-4204-ef6b-8b93bfb557c6@suse.com>
Date: Thu, 19 Oct 2023 13:27: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 v1 21/29] xen/asm-generic: introduce stub header altp2m.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>
 <619b24fbd568f439baf1941a972c6943f423b4ad.1694702259.git.oleksii.kurochko@gmail.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <619b24fbd568f439baf1941a972c6943f423b4ad.1694702259.git.oleksii.kurochko@gmail.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_|AM9PR04MB8422:EE_
X-MS-Office365-Filtering-Correlation-Id: db67b24e-97ea-42f0-97ba-08dbd0965e8d
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	tbMwviSjaX5XInlnUQiaccFvHd7SjfSbtx0iT3bDPYcIuMeP9HcVRF7Vqs2P+FDgo55wICAHIJpX8Y3Z9uWPzXsduIbRBAn+CAyA7T5hW5ahOkaRL+24shuFDoHkcnFFG2GIuVG+V0dAxmCH9KYDxebQTgdfqLwsbAZ+jfQITXlwstG9AsXzsjTx76oCOxZOrAvVdF7YloptW5qR8zLkvAciJCoDBeDLZtJJT8Ml+hBwRrNVNsOYzAz88TTZRipliVj2WnKqASuXVg6MUy0QGDuNwE5Pu9rl9D1u5Ookn0Hk3LWe4tzXaIIADFgFwqeaBkeD3VEpEU3m25H3+aNX8Ka8kNIG+iIUe8s1+pVzdjjNOXdCFy87IqgpAtZ5WwO5ri/KON9AhemQlcXSNiHMFBUBYKrd56q6SBZTCJbu7D7tss5Q909JgJSuqidh8lhGSiHaG299t4x2RkXIO2D6ZGHdmG70iANzZerXUCPQyrsXVIdMhpC1CONRnibqbRG5FI7kplRNIrVZ5S+MRQhFdrgyAH414TvcgNx9T3yPiKGf/RnR1Wgc8StE/L109vZlu2hyaO/Wjvqq1NitkZTjRbH2n3Wwkra7ojjWEiD7eGyz6lrz4d0zukf5TS+8WNhZbGrjcQk+ln1Ff6atMXOwtI51a8LgDS6JOQJ2WMSTbpY=
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)(136003)(396003)(366004)(376002)(230922051799003)(1800799009)(186009)(451199024)(64100799003)(31686004)(36756003)(6916009)(54906003)(66946007)(66476007)(66556008)(316002)(86362001)(31696002)(38100700002)(53546011)(83380400001)(6512007)(26005)(2616005)(6506007)(2906002)(8936002)(6486002)(478600001)(41300700001)(4326008)(5660300002)(8676002)(41533002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?dlg5R045a3JvM3Q3Z3lHemY0T2VPMVRyWFFqQnF3dFlrSmdxQzZEc0lORXo5?=
 =?utf-8?B?cHdGUlN4V2QyQ1p0Q0gvLysrSmc0amVranhuNXBJMWM3c1hTVWNFQ0k0K0pZ?=
 =?utf-8?B?V2pNTndUYyt3bDA3aGhGRlJFeGZ2cnBxWWFLVEtoRzVsc3FzMmFINWRCUnFJ?=
 =?utf-8?B?TnhHWWFJUEdYSkRwdzFxQi94OG1FcVo3eHJON2JwaS9YSkZxd0VVUTNCWWt2?=
 =?utf-8?B?bTRpdW9QZHg2azMrRG1wQXRUY05UcFBGTzZnVWpLVkhGT3ZpOGFuS0YxMlJo?=
 =?utf-8?B?ZlVjNW04bGpaeCszQm40eitDS25BZkxJamJYUUFrZjh4VG95ekhWcElkMGdF?=
 =?utf-8?B?SGZlMXpsamJNRHI1b3p3ZHlNOGY2TFJMdWIyOXBiZGJ5NlFVTGpJWGY0UHhp?=
 =?utf-8?B?Qkt3ZmV5Y2J5VHMyNSt0dmFETEthWlJ2MDBXcUxaR0YySUM1WFRGS1ROQ1Jj?=
 =?utf-8?B?YUlaTEgvRm1IdzRVbWUxMDdRMHFlZ3QzdTA3ZWtwbml6QVFLdFNKc3hmcHht?=
 =?utf-8?B?ek4rZ1lXbmlhdFBRNkpkemt1VVNQTnVjQU00YTFwYTBGMjFZWExJZ2RHWEtJ?=
 =?utf-8?B?cTROeXFKVDFSMTRMaW96dGc5TkJ2L3JWV05UTjJOeDI1azE1dld6eGo5MzJ4?=
 =?utf-8?B?WHpveEcxbHdKZW5SMkY3QTY5MGFJYkx4bTc4eHVTR3JjY0l0dUVkVzd0OHc1?=
 =?utf-8?B?aE15anV1YTd2SGFNMTRuRnVHNU5MMXdPaHV2MXhOalpNelJLMUJSelZzNHB4?=
 =?utf-8?B?K1JMb3VucWpodmg0ellRVUVjL0NYZTB1bC81WkhjT1dEd2lCNmVFV0tNbi9R?=
 =?utf-8?B?TklQaGtsT2NPQzVFbzNvSElRN0hrcGxqYzNnSms4Z1VsUi9TWkwrcG5KcXVq?=
 =?utf-8?B?eDJiQko1eEg5QzBSVVd6bWRRTnFubStUamJES1BrVWtiUmE3WWEwOUVoM0VG?=
 =?utf-8?B?Q29kMVJsTXZ1Q0ttM0NQOHhHNWNGZ0lIaElDaklrallBclNjcmw4K3RROHQ5?=
 =?utf-8?B?ZkdHU1VQREpjQzExY2lRdUdGSytYd01KNXcrK05mSU5WeFVYVml2NjlMcERZ?=
 =?utf-8?B?QlpVOGo2cHNnREsxZVhPMnc1RGsxRmxTK2dUdi8zYVFMQVkrRDR5dzQ5a3Bl?=
 =?utf-8?B?cWRLUm9uNlFOQkk3NHo2RmNkRE1sYnVWYnV3cmFyWnNpM056YTlYWHBRbHR3?=
 =?utf-8?B?TXlHZGoyUlorS1pWZDh2akhUdDNoMFVTbWxKVGg3alBONmZ4c1NUM2JRbnBz?=
 =?utf-8?B?TGFoSm9MTFg1K3ZaRm5PYm54SWlLM1VaaVkveVJxS2JNTVNPWlByNjFVY1ZW?=
 =?utf-8?B?OXcxcW9ZVm1SUTFoQ2VCbnZjbGZNWUlQUWhqTEFWZU9TQTdHS3BKNTNZZis0?=
 =?utf-8?B?Q0hpaWcvT3haRENVTzRuS3pHYmhQRU53L2Mxak11ZmpmOWhTbGhvZ0NvZWlF?=
 =?utf-8?B?bHBqT0JVU1ZZWEprTTJaa3hYcEFTYXN5TmZTRkFjYzVoTFRNMy9JVUhneloz?=
 =?utf-8?B?VjBFVWNRZmtEaThmYXhaWWVhSGZuU3BsQVphMnRhV1RnN1BoWXdIZDNSSFRm?=
 =?utf-8?B?YWNJN01OcUxMMlRENEQ1SGxkdXpvZU56UmV6eTZWb2tHMHlabnQzbWh5VUFZ?=
 =?utf-8?B?Ym03U2ZrS3Y3bWFKQ1drZVRyREpDZlJtWXlMZGtqK2d1YmsweEZyb0tub2Yx?=
 =?utf-8?B?R2JHWExtemFudUNxcXlkLzJkaURvQ2hlQnhKejNnaTVlc1RWMzN4TG51RGV4?=
 =?utf-8?B?OWVtMkpzRDZSRmtuMzVLcGppcURXMzIyK2gzcEY3bG4wWWNEZXVMbjVvcXdV?=
 =?utf-8?B?RzhpRDJFN0xOTW0xdzZhR1RSMTdOaG11a3JOeUNrcm1ISjdtVGluZGt1VGdl?=
 =?utf-8?B?V2FaK3R6Szk3Q0wxVjcwK3Z2VUg1WUFKTXhwYndDNlk4eVJJdTJUTVZ0UXZo?=
 =?utf-8?B?M3BwemxPSy9OR0twK3F5VUxITjFGSExSQzlsLzhMemlyc3d3Nm9ZM0kwQ3dG?=
 =?utf-8?B?dkE3S09RZEM1QXI2aFc1a0gzYnQ3RjBTSlBRRlF6VVJQN0FFT0w1dUlmSHdF?=
 =?utf-8?B?YVdJY2VMY0lLb0M5M2lQNnNZWnhaWGVkd3MrdjlhT25tR004cm95b2NNNVcy?=
 =?utf-8?Q?SJi3S4LqPQ0gc2ipmOHIuEGxP?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: db67b24e-97ea-42f0-97ba-08dbd0965e8d
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Oct 2023 11:27:25.4658
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: WlDzV9iAk8xejbnobdiWkG+RCOVtThXnbUB04/wU33SPxHbLKYM01jkC0QCFeKsZXVaipmqVswnOQWHyGZZklw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR04MB8422

On 14.09.2023 16: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/altp2m.h | 34 ++++++++++++++++++++++++++++++++
>  1 file changed, 34 insertions(+)
>  create mode 100644 xen/include/asm-generic/altp2m.h

While odd to be needed, this looks largely okay for the moment. Just
one remark:

> --- /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)

uint16_t is what x86 wants, but even on Arm it's suspicious. For a
generic header I'd say make it unsigned int, thus also eliminating
the question whether xen/types.h should be included here.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 11:27:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 11:27:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619228.963969 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtRBt-00013L-Tf; Thu, 19 Oct 2023 11:27:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619228.963969; Thu, 19 Oct 2023 11:27: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 1qtRBt-00013E-R7; Thu, 19 Oct 2023 11:27:49 +0000
Received: by outflank-mailman (input) for mailman id 619228;
 Thu, 19 Oct 2023 11:27:48 +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 1qtRBs-00012H-9t
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 11:27:48 +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 1qtRBq-0005hO-Hr; Thu, 19 Oct 2023 11:27:46 +0000
Received: from [15.248.3.1] (helo=[10.24.67.33])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qtRBq-0000xQ-BT; Thu, 19 Oct 2023 11:27: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=j3UuBiQMOLhoCP/Llu+VNCa7cyG+3gT8z/I1QPbyR3M=; b=JpqU54TjL/7RqceCEGe4hpFQEY
	Jljzox79lK2oBQeYi5HJb1m+kW4p1PJzM1hmOrGxti4GM95JugUaTGsBNefQpnH1cc275tjP2SYm2
	IOFmLFFqr2wmKjJ49+qIQ8wGhB0gqy9Akls0relWT+8AjbrP0JhhP8boLVqXq/eMFVaM=;
Message-ID: <3ce85a73-96ab-41c8-8b90-f3899e771845@xen.org>
Date: Thu, 19 Oct 2023 12:27:44 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v1 04/29] xen/asm-generic: introduce stub header device.h
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>,
 xen-devel@lists.xenproject.org, Oleksii Kurochko <oleksii.kurochko@gmail.com>
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
 <3cc9ecc3abcd21c5ed7276b01bf5963e6a5fd5e0.1694702259.git.oleksii.kurochko@gmail.com>
 <a20f5783-7ee3-6ed1-d4cf-379c30c64a12@suse.com>
 <9ee7b3c9-de71-4790-815c-8b2859a85465@xen.org>
 <17d9102a-da9d-d41b-6362-1ccfe21b7976@suse.com>
 <5059771d-3842-4a7c-814d-69388179b246@xen.org>
 <61c20f5d-a324-9ece-2140-4d0c775e193c@suse.com>
 <54ac0161-7302-4190-9c6e-273caa652058@xen.org>
 <04fe316e-bc4f-0df8-7771-5be7ca878297@suse.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <04fe316e-bc4f-0df8-7771-5be7ca878297@suse.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi Jan,

On 19/10/2023 12:14, Jan Beulich wrote:
> On 19.10.2023 13:07, Julien Grall wrote:
>>
>>
>> On 19/10/2023 12:01, Jan Beulich wrote:
>>> On 19.10.2023 12:57, Julien Grall wrote:
>>>> On 19/10/2023 11:53, Jan Beulich wrote:
>>>>> On 19.10.2023 12:42, Julien Grall wrote:
>>>>>> On 19/10/2023 10:14, Jan Beulich wrote:
>>>>>>> On 14.09.2023 16:56, Oleksii Kurochko wrote:
>>>>>>>> --- /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,
>>>>>>>> +};
>>>>>>>
>>>>>>> Are both of these really generic?
>>>>>>
>>>>>> I think can be re-used for RISC-V to have an abstract view a device.
>>>>>> This is for instance used in the IOMMU code where both PCI and platform
>>>>>> (here called DT) can be assigned to a domain. The driver will need to
>>>>>> know the difference, but the common layer doesn't need to.
>>>>>
>>>>> Question to me is whether DT and PCI can be considered "common", which
>>>>> is a prereq for being used here.
>>>>
>>>> I think it can. See more below.
>>>>
>>>>>
>>>>>>>> +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,
>>>>>>>
>>>>>>> This one certainly is Arm-specific.
>>>>>>
>>>>>> This could be renamed to DEVICE_IC (or INTERRUPT_CONTROLLER)
>>>>>>
>>>>>>>
>>>>>>>> +    DEVICE_PCI_HOSTBRIDGE,
>>>>>>>
>>>>>>> And this one's PCI-specific.
>>>>>>
>>>>>> Are you suggesting to #ifdef it? If so, I don't exactly see the value here.
>>>>>
>>>>> What to do with it is secondary to me. I was questioning its presence here.
>>>>>
>>>>>>> Overall same question as before: Are you expecting that RISC-V is going to
>>>>>>> get away without a customized header? I wouldn't think so.
>>>>>>
>>>>>> I think it can be useful. Most likely you will have multiple drivers for
>>>>>> a class and you may want to initialize certain device class early than
>>>>>> others. See how it is used in device_init().
>>>>>
>>>>> I'm afraid I don't see how your reply relates to the question of such a
>>>>> fallback header being sensible to have, or whether instead RISC-V will
>>>>> need its own private header anyway.
>>>>
>>>> My point is that RISC-V will most likely duplicate what Arm did (they
>>>> are already copying the dom0less code). So the header would end up to be
>>>> duplicated. This is not ideal and therefore we want to share the header.
>>>>
>>>> I don't particularly care whether it lives in asm-generic or somewhere.
>>>> I just want to avoid the duplication.
>>>
>>> Avoiding duplication is one goal, which I certainly appreciate. The header
>>> as presented here is, however, only a subset of Arm's if I'm not mistaken.
>>> If moving all of Arm's code here, I then wonder whether that really can
>>> count as "generic".
>>
>>   From previous discussion, I recalled that we seemed to agree that if
>> applies for most the architecture, then it should be considered common.
> 
> Hmm, not my recollection - a certain amount of "does this make sense from
> an abstract perspective" should also be applied.
> 
>>> Avoiding duplication could e.g. be achieved by making RISC-V symlink Arm's
>>> header.
>>
>> Ewwwwww. Removing the fact I dislike it, I can see some issues with this
>> approach in term of review. Who is responsible to review for any changes
>> here? Surely, we don't only want to the Arm folks to review.
> 
> That could be achieved by an F: entry in the RISC-V section of ./MAINTAINERS.

This works for one arch. But if PPC needs the same, then this is another 
symbolic link.

At which point, how would this be different from asm-generic? We need to 
have a way to share common headers that doesn't involve one arch to 
symlink headers from another arch.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 11:29:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 11:29:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619231.963981 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtRDo-0001nu-D2; Thu, 19 Oct 2023 11:29:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619231.963981; Thu, 19 Oct 2023 11:29: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 1qtRDo-0001nn-7f; Thu, 19 Oct 2023 11:29:48 +0000
Received: by outflank-mailman (input) for mailman id 619231;
 Thu, 19 Oct 2023 11:29: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 1qtRDm-0001nd-Up; Thu, 19 Oct 2023 11:29: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 1qtRDm-0005jh-Ts; Thu, 19 Oct 2023 11:29: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 1qtRDm-0004hD-Gt; Thu, 19 Oct 2023 11:29:46 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qtRDm-0000qT-GO; Thu, 19 Oct 2023 11:29: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=eg1C6s10quACqSnd20m/cW2/zJhNEFfiO89r4iO34ZI=; b=r91BRYJoxq0D6ncdWtqU/Tv2lC
	W/oXHt2b4ES4uRsKw1pnrCXGydMZaXMW5FU0lfZtQpVr8DW5vfwlxAolpkgVG3wQ8okcqmi0DRypT
	Zyy/bVo4H/vPpl9zrGfD55hbekDMkb01ieX2x2ZCVbMjaukD8CMsEk4vMfOd4EWw1EU0=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183425-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 183425: 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=698b0f5031c6083401234a9b9415175cc5855a0a
X-Osstest-Versions-That:
    xen=7c3616e6f1aa541884410c6430e3c8986cf0973c
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 19 Oct 2023 11:29:46 +0000

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

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                  698b0f5031c6083401234a9b9415175cc5855a0a
baseline version:
 xen                  7c3616e6f1aa541884410c6430e3c8986cf0973c

Last test of basis   183419  2023-10-18 19:02:05 Z    0 days
Testing same since   183425  2023-10-19 08:00:28 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Jan Beulich <jbeulich@suse.com>
  Manuel Bouyer <bouyer@antioche.eu.org>
  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
   7c3616e6f1..698b0f5031  698b0f5031c6083401234a9b9415175cc5855a0a -> smoke


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 11:30:34 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 11:30:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619235.963989 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtREU-0003Af-Jj; Thu, 19 Oct 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 619235.963989; Thu, 19 Oct 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 1qtREU-0003AY-Gs; Thu, 19 Oct 2023 11:30:30 +0000
Received: by outflank-mailman (input) for mailman id 619235;
 Thu, 19 Oct 2023 11:30: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=g4nO=GB=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qtRES-00031f-E2
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 11:30:28 +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 e6fd1ac8-6e72-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 13:30:27 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM9PR04MB8762.eurprd04.prod.outlook.com (2603:10a6:20b:409::16)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.8; Thu, 19 Oct
 2023 11:30:25 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%7]) with mapi id 15.20.6907.022; Thu, 19 Oct 2023
 11:30: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: e6fd1ac8-6e72-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=lW5mf1bwLZyc8EzFrRJ3W5AmtGbdCixkqTRkH8HKGfFEts0qihZr0jU06SpLbXqu8CaHCejXIUbA+h3ezbZvh1FaRsfxPlU6qpbGgoR0cjBaZX9aRp2TwK38ZtdO+LPcDKCT2gjoq4WRF+KJFhhk241/NpppzFHB7teOXq3Xs/yj4XNT7eVwR1oZ2Rg5jDzkM5zL5lfs23Tqi+rQj8NJHpIHQUXcp4I932ZwxAGSmz0yR4bkrU3CYc7stYDfd0Wndw8n9bZ4cKnGKPgF/UQDjf4El5CKrIEWIkymsafNb862aNeBqW0+bJzUFcnEfCF08IYfqDd7DkCoPejbbGXDFg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=R6y35kJIW413wlhYkU3Hog62Q5BxjFc4/67pLKvk1hw=;
 b=Di9V1WdAbIhG6SZAL+NwitYjJD1eP5OkTuE1ULd+6KbpxQLDoqsZTEcJnUP9QjM5Oqx8vYvI66di/cfhbY3mI6ZzQiWjkHHLePowuvayFm3qm52NtlaRTOtCLG4Cybpp+ahZNiycLZi8TvZFEJ6ttKlY/sYV3uHmEMMzknLIodoSapj01YF9SKTvJDRflmovQABI7wKjhg4Ghvtp9Ob+XRX658wSJCK6axuAIdC8GfET8ByQTnA3niRyGSwFOEcWpGJ1gVccsWbBD5C9ygrDPdDkbJOKAq3K4+LRoJt2IQC/MDW8rF1yXoAQs0x2SAk8fMho2hPIR4fkx/ht//mBWQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=R6y35kJIW413wlhYkU3Hog62Q5BxjFc4/67pLKvk1hw=;
 b=N3F/Mcn+oLMx6TBuH37luzfu0kYERpH6Rw7XRUdVLdcEOk5gGkuz+IzTbfVEDx2Lor4RYF5Yw7KiZQ+3AqmV2XxRYvqTdH+hVGt9rtjIr/I8JytY7ngESOIenm+BxJRlVwSocFP9uk0GcHGUHgkqCA+CxkebPBvRQql4Cf3PHMzurYi0NPKJ2zXqlaWFkycOng8W8KtC0KxdIPU0RD9aNgxpTSeHC4JKOvu/btPI+m3dzs1ZTB6tQsioa3tdFcbNxzVbc6k2yiTWqdpRG26xadS3nfRH4tNv2GtB7kY35CAAjTbnIua6nj/2HUc7J75MTgPToHjRnn812ZQwCdyX+A==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <73a8d43d-9626-fde3-9e81-a65bb9096712@suse.com>
Date: Thu, 19 Oct 2023 13:30: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 v1 22/29] xen/asm-generic: introduce stub header delay.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>
 <b16677ea84860ae7143339b8c856f0da7f8c2b6c.1694702259.git.oleksii.kurochko@gmail.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <b16677ea84860ae7143339b8c856f0da7f8c2b6c.1694702259.git.oleksii.kurochko@gmail.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0121.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:9d::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_|AM9PR04MB8762:EE_
X-MS-Office365-Filtering-Correlation-Id: b286f09e-7fac-4bb3-7105-08dbd096c9e9
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	7QdqTex2SYi/cVXL56CZAIEYr6KdEGrDNtUZjXx1vcX0+8onX0QXHJSaX3q+/MUrxPRWepFT+TwuY4dQT8GOmVX65FtaEukfhAdJKZfpV66uc94VbiP6t+AQHkAd6RObi4tIjGIPtoKXO2B7j7HepZvdYGafpIOVlcK/skT+9Oi/4hGuLbF2qBaPPnE7hvrKyjXc1gDlkrY7fe5PgmgDlViIvrY4flOHFSEZgGMhmqpeiyHMM8K9kEMDSuiZrAnHu3CMBCD8fvrYy6nSQ3sBC3pq02p1cW5O0Pajdpl97gBhfUdgLxL0rHoz9OMWprEuNa42Mnbt4+q5ovxNN3QQPYDsnZjAWCEj0Rfw2qmEDbA6j0qvhZ6ww8HcedoGBu5CQP5Xw+Fdmr6Oe2NmWsX1rhPepBOBKLTstUQu9mmnn0oDbBGf1+ZYqXdO4NByFND/T3xDKXNdlIdfMX3QGnonHrmcfkn0VGJuz++8z7Vxd1fGHg2k/FabvOjiiwa70CNeND0hlEKv0PwQyBfEOaUSLyrBOO/w22MbjoOOnD9VoThjALQIZMjUbdJPxBJ3fVlaQZu5xJ0QAWlrdbXB7P/tJGtHOFdD0b95uoAn5+WjKSCI6paOHYog7idCqifOU9EqeCSbh1JKoA57CfvGLPkefxC6w4Q0bk6Dfsv3Ak8DhrI=
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)(136003)(39860400002)(346002)(230922051799003)(64100799003)(1800799009)(186009)(451199024)(31686004)(86362001)(2906002)(6506007)(38100700002)(41300700001)(5660300002)(4326008)(31696002)(6512007)(26005)(53546011)(2616005)(478600001)(4744005)(36756003)(8936002)(6486002)(8676002)(66946007)(66556008)(66476007)(316002)(6916009)(54906003)(41533002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?L0ZSRGw1cnBacmRrQno0ZjV0cERKc2l1YUZ6NllUVUpSenJXTnRlSS9DUjFS?=
 =?utf-8?B?UzNaUjdNN2NscU1IYWx5R0JGVExkRzVYV2orc2xJb2dRakQwNjZNZzBFQkU0?=
 =?utf-8?B?L1BiNm1lVHBTWmVwQlBCcE4zS1p6b2xjejFUelk4TU1oSC9LYWZqZGRzWC8w?=
 =?utf-8?B?OEcwUmdvMDZzb0RLZ3MvajVOMVJ3V1ROZmtTTDNTalBkNm5nVW5TbG0vbG5o?=
 =?utf-8?B?blpISityZ2IyTk12OCsySnpFZ0JMVVpNN29iZzNiUXMzRnZFbkJ0d1huMnU3?=
 =?utf-8?B?WmtoR0Q3Z2pRdm9Da3BkOGQ4MExiKzZKTlVOUUo2dWlyeVFZM01BRHpRUk5I?=
 =?utf-8?B?Nk5LcHYrWHpiZU44OW56Vk8zV09JdDRQVVYrcG1wMm5YMmxvR2pGTkxRR0c4?=
 =?utf-8?B?TStzTkt5amFUTTdqTkNFZk1qL2NxRmUycCt1SFpETFFwMjhxdHl4aGE3QmZT?=
 =?utf-8?B?MHhuTEJyTnZuN0g4NFVLemt1aG9YWmkzRktHcXUrejZJMUlLU1ZBdFNRVGxM?=
 =?utf-8?B?OEUvVWpZQXZYcG1qZEVRdGV4K0cwcHE3TGpLN2pHNDlBbEM4R1BXTXR3K2tZ?=
 =?utf-8?B?WUlOQnhnRVZ1eG9YdFpNS1RVYWFDMVg5RTl4U3JkZ3orMjdjVi9vblBYeUdU?=
 =?utf-8?B?d3BpQjZHUXozb0xtL3lPQTFoaUFXZWY5c3JHdU9wcnoxWUxoZmRMazBxSVlC?=
 =?utf-8?B?THZUWDR4N3BPanlLT295andNckMrbmd3SFRGK05TeEJTQmFZM3Zhd1B2bDFa?=
 =?utf-8?B?VW94TTNaMEJCenI3MEpSSDNvNGpzQjI0LzJwNHVoNGxPU0YwQysrSTI5SEVT?=
 =?utf-8?B?ZGVCb0Z4czdFNXNnNkY4MFVRTW9vZkszQ1h1WW1pRnNiYk9qR2MzdXRacGxT?=
 =?utf-8?B?czVsVm1tc3RiVXloQ2pGTW5XejZJMmVDWmJlZlJyb3c1TWZFQXBTTDUwVEkx?=
 =?utf-8?B?OGQ5cUxjTVhIVDF4SnFGUXZxNFl6ZE03T2lDdmNUaFluQ2ZJWEtLNkFHYVFL?=
 =?utf-8?B?bFRvQ010VFVhREpOamE0a0lWb3RLb0ZKWGsvMVJkV1RvRVV1aHVabnM4TDha?=
 =?utf-8?B?M04rdG5yenJlalh6cEFZeDBrZ1F1S1NYbkpWN0x0MklzRmNvUGtHbWowK0Nu?=
 =?utf-8?B?cGV4TzRqWXU0Um5LNSthRXFHbDlxWU04OFYxa2h1eCs2R3VpY2NYLzFzTnlQ?=
 =?utf-8?B?WDYxRUxydHlaV0xsaVRGUy9WMU9aemZLRnMwT2ZHUjlpTklmVmVIZG0rQW8x?=
 =?utf-8?B?S0pIM01qd1U1T01tSlQya2VPZTNvTVJnbUpLV2w2cFltZitOUGNHUjJjV3dr?=
 =?utf-8?B?UE9TM25NNjJ5TmI4bGdnYkh1VzcvbHF3LzFoSjhiajFZR25GR1EvVnB0RjNJ?=
 =?utf-8?B?cTBNRlR6dUFLK2ppRDhrZG5UcVFRZ3Njb045SURvY2FKMjRiWFE2KzlwZXZW?=
 =?utf-8?B?bkVROUdYekp6NkNnRVFIeVdnSmRKMkpTTmhJMDEreHNBQzhsNlM1RngyUkVi?=
 =?utf-8?B?THNYem9mK3pNZUIveVh4bHFhWkVEY0FlYmt0TE5aWlo0czRrWW9TeU9vaWRX?=
 =?utf-8?B?WTdnM3Y1U2p0T1ppNjZJWGtiNWRLMTM1eHBYUVd6a1UxZ0hVajExTEYrZysw?=
 =?utf-8?B?cFZEOFBwcDhHclIwODRtNURteGNOT2xyMkE2cWVJbjNnN0NDNFBkTGpyZVpu?=
 =?utf-8?B?QXZXNU5yVnNXOVpwY0pjZzlKRDZkWEJpRVNvWjFQQ3hvREpKNlRBdzVHQUZm?=
 =?utf-8?B?ak54b2Q2dExQSWdUeWcxa00vUFR3bkJ5TmFvNGRjWnRaZkNtOHVMUUtMM1Bs?=
 =?utf-8?B?YjNEQ3ByR0lXMURMSHpMK29EYTRtTzNXbXhiOG5CZnY0OE5vbzNQUXV4Z1RM?=
 =?utf-8?B?bUNlWlJ4ako5Z3RZTE9MUC9OV0ZxNWFmLzc5VkVxNTJlYUdSS1VSMHlDdEFj?=
 =?utf-8?B?S1RaRDRsWC9UMitwdTNXVWZYdGw4TTJoT2pmZGY1KzZ4TDJRTXRQUmVuYWFG?=
 =?utf-8?B?NHNaNTNkbXpyOHBNTjZ2Q21qby9qeGExL0ZvU0RnT2dDWTVseTgrcy9qVG1R?=
 =?utf-8?B?dzBFRVF0ZGEyWGdiTHgveVV5K3hvNDA5dEtnSzlMTXBUeVBtS0JkLzNRQXVN?=
 =?utf-8?Q?++0YfCNcESuzQSpTi53zTOJam?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: b286f09e-7fac-4bb3-7105-08dbd096c9e9
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Oct 2023 11:30:25.5864
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: +lDcN/1ItW7j1t69W+jRJq2MeIRZ+KptzUgfwkEEo5nQ3DU8rr8mbCuhq0M+Gm0vEhAYgEuMGoQw8y//ccBgVA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR04MB8762

On 14.09.2023 16: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/delay.h | 21 +++++++++++++++++++++
>  1 file changed, 21 insertions(+)
>  create mode 100644 xen/include/asm-generic/delay.h

Besides the implementation below not being acceptable, imo we should do
away with asm/delay.h altogether. x86 can rename __udelay() to udelay(),
and then the declaration can move to xen/delay.h.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 11:31:29 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 11:31:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619237.964000 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtRFP-0003lH-Tp; Thu, 19 Oct 2023 11:31:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619237.964000; Thu, 19 Oct 2023 11:31: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 1qtRFP-0003lA-Q9; Thu, 19 Oct 2023 11:31:27 +0000
Received: by outflank-mailman (input) for mailman id 619237;
 Thu, 19 Oct 2023 11:31: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=AWKy=GB=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qtRFO-0003kc-JC
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 11:31:26 +0000
Received: from EUR03-AM7-obe.outbound.protection.outlook.com
 (mail-am7eur03on20629.outbound.protection.outlook.com
 [2a01:111:f400:7eaf::629])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 0859a53f-6e73-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 13:31:24 +0200 (CEST)
Received: from AM0PR05CA0084.eurprd05.prod.outlook.com (2603:10a6:208:136::24)
 by AS8PR08MB7371.eurprd08.prod.outlook.com (2603:10a6:20b:447::11)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.24; Thu, 19 Oct
 2023 11:31:15 +0000
Received: from AM4PEPF00027A68.eurprd04.prod.outlook.com
 (2603:10a6:208:136:cafe::b8) by AM0PR05CA0084.outlook.office365.com
 (2603:10a6:208:136::24) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.23 via Frontend
 Transport; Thu, 19 Oct 2023 11:31:15 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM4PEPF00027A68.mail.protection.outlook.com (10.167.16.85) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6907.21 via Frontend Transport; Thu, 19 Oct 2023 11:31:15 +0000
Received: ("Tessian outbound d9a8e74be042:v215");
 Thu, 19 Oct 2023 11:31:14 +0000
Received: from 8569ccbe177b.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 56C84F59-24F1-4664-8FA2-2CA0A069C643.1; 
 Thu, 19 Oct 2023 11:31:08 +0000
Received: from EUR02-AM0-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 8569ccbe177b.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Thu, 19 Oct 2023 11:31:08 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by AM9PR08MB6243.eurprd08.prod.outlook.com (2603:10a6:20b:2db::5)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.25; Thu, 19 Oct
 2023 11:31:04 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41%4]) with mapi id 15.20.6907.022; Thu, 19 Oct 2023
 11:31: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: 0859a53f-6e73-11ee-98d5-6d05b1d4d9a1
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=hTftYxIhLMCEGwnXlLd7+R+1t2DIWa7kh1eN2zlrEgA=;
 b=Tz3q9YPWuj+XxY+26IJImNlyiisGWnhnglI6V9TJ//HORdCSbkmOBNSVw+peAXJzFX2cEgMoEc5b5aY1pyvVa8eueioNWid7iscuZv38xq/1oAXVXrxOfxGBox/g83yEEs/U7DotCBeZDjot++uBr5MvVAVwxHTiYzdfZboHVo0=
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: 1380d9604436f945
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=mF927DEVVJva4K9EehD4jlkjgnhvf7UjYMBr8NRKw8f31ERcsog/AZBux9GIoGueuOK/fqWJ/WpiZwvEHRiKc8z3ymAq3/JwyQNeMZV0TJGerDH8zKA1h6zvCaXA8yQwfv3yX8vifKXIA0gi/Wman28Ggte1H0gTBGfSKiaHd/sSWK6qjplrR5q3NYxDjric+fpiqW6/x3T+xbJquqy/ahpGZmWEobf1iwfGHfCdNd2zGVGNZS+YdiKGGlrU0FvqfY6MYfqe1HaEbxbE2q+Ky+LOStjfuSVw9+vTmz+a5KFWKdeCjm/8rtgN3GXS69c1E3MOLhOuFKio0XY60+b5gw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=hTftYxIhLMCEGwnXlLd7+R+1t2DIWa7kh1eN2zlrEgA=;
 b=nbJ3b47CZMzouAOy9S2C0FX1+GikQ4UTFDpeZbng2oTqlAhIRzQl+JNNtI/MI2svVYBlBDdJp/AVtk8jvw3C0jV2l3Ejd2NrL5gjTA+ZHCrU9jjDGl9jNmM3nVVDI1rEZBvhSh/XNNctKS7xWUaO16yYIEcRJoJcD5Ptb8qHe9Zu/ox3chjEgYPxOeK2c47qRKdHY4Xmsm6di3jXSZqi/yOyaC7GvY2lntGahxHjy26r5Ow5WbVGsxqGbw2qeUEe2BzGfoAXPUrDv5RQoFdkBY933UqSdMDqTvUK8hToza+o5R017JcqaZjQdLS+txzoKnlkuEB9R4RHg+FMmoV7vQ==
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=hTftYxIhLMCEGwnXlLd7+R+1t2DIWa7kh1eN2zlrEgA=;
 b=Tz3q9YPWuj+XxY+26IJImNlyiisGWnhnglI6V9TJ//HORdCSbkmOBNSVw+peAXJzFX2cEgMoEc5b5aY1pyvVa8eueioNWid7iscuZv38xq/1oAXVXrxOfxGBox/g83yEEs/U7DotCBeZDjot++uBr5MvVAVwxHTiYzdfZboHVo0=
From: Henry Wang <Henry.Wang@arm.com>
To: Juergen Gross <jgross@suse.com>
CC: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>, George
 Dunlap <george.dunlap@citrix.com>, Dario Faggioli <dfaggioli@suse.com>
Subject: Re: [PATCH] xen/sched: fix sched_move_domain()
Thread-Topic: [PATCH] xen/sched: fix sched_move_domain()
Thread-Index: AQHaAn6ufpdY+57bqkWZN4b9/h1wsrBQ+nMA
Date: Thu, 19 Oct 2023 11:31:04 +0000
Message-ID: <F1CDF477-9003-45F9-83E8-2122413AB514@arm.com>
References: <20231019112314.22665-1-jgross@suse.com>
In-Reply-To: <20231019112314.22665-1-jgross@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_|AM9PR08MB6243:EE_|AM4PEPF00027A68:EE_|AS8PR08MB7371:EE_
X-MS-Office365-Filtering-Correlation-Id: e24ebf1d-336b-4a08-0317-08dbd096e78d
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:
 gV+Q8nqXKDBGkVOgsEonleQ5qP/qB8eQw/odAnx428DbaYXng7ZSu95f2ffQH9nhNnBEZcyBNSmLEUXjCL7ojRphdSXgNw11q77cWqOjRALjGEKbVCHLWcQ3uwXMfNTxi7iuKvpQE1mTV0uDlFBDLg2VEFQUudWXx87MeeYpWRQzVbfLeKKGTwZXs9ZsrR8xZxTH4sjCb+CdcKMsAtorryefIvLL5vAnT48toOpAjuCHiujZRAC6yMQBmx4sgHGVHtG+fsA+hB88ZqIb2nfjMs7vVzSbkos6M4lNEgWZksagKRAMtnnz46gQ4ho6rHVuXijBNLYagYk0nGJtu0vZwnTyFoNHdp7R+1J0YnyuZfLOe768FIP30iShwaJFAvtmEO4v3x3QF6UHnwetPu6RkT9zVMwBJziFRcfXjNr17mR5KjVbiyHf/SQk3gc/jG3CsMTs1BqJEIyRaLlTfB1avdpGVssf2NLCZMizK0acqHwCcytv92RpXHA9RYUJ/IgmmqwvWZZphpclMXkh48mZt51oJvtJCvgXpCqxFdVxzj+ZF22NsyZUug7g7REGsnZ28/NHq5tJJfB7csO9PImp81Wu1HznWMcm7ILd5IBuQwcD+1Nx7Plr1+89GoWJ1NNHomT8uM1662JKIaKkkWcOcQ==
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)(136003)(346002)(376002)(39860400002)(396003)(230922051799003)(1800799009)(186009)(64100799003)(451199024)(2906002)(6916009)(33656002)(26005)(5660300002)(4326008)(8936002)(8676002)(36756003)(41300700001)(54906003)(316002)(64756008)(66446008)(66476007)(66556008)(91956017)(86362001)(66946007)(478600001)(6486002)(71200400001)(76116006)(53546011)(6512007)(6506007)(2616005)(38100700002)(38070700005)(83380400001)(122000001)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <4120D735A34BEE4CA66346898FDDAD61@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR08MB6243
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:
 AM4PEPF00027A68.eurprd04.prod.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	b18af5bc-602c-4343-4b8d-08dbd096e152
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	I9DdqhBXejJ3ETUW2irEcnzbJ+AffaV/hfBofz8nSh5MNW/Vag7lSkSWUsIyy71wt0SmyyNMq0GFO9oI71K8IOyAXuJels6wPnXZ1ac5x4R6gV7gbNBrbblUUv2Y6E4WdChXft8opxYT2tKT/FOoZJIR4gKhxVvltmuYbmYBqgx+eSoI5DV1PFXHTtnsMYz+hjXImAJlUNSd+VI05CnQXCjhQEjnA8UEpl5WC02ZgKgk9K8f99j9FOpCqtScCsQJtxPElBxur3tjiB0MFRaFucU/2rZsLkZEszZ5DZDff0ZqQBBNI6tkf6W57k3LsUe+iubNM08IAUf+kfm/G7Tem50+Deio+4iOTBlGaRVAGcvhVvvx84V4nFnwq86oAASh13KNuBiQf83iGHZeKoELWUWvsNulSwbltXqd4SPhe1ac2MkX8bCp9o8PBgWl21Xg58WY4evwLNWieDAsmA3T0mvrmMSJT4CzC8Zd6DgNExwm2nTQWlVNoK/9Ea+Hyy5nbW/yC4MLFvs6a5YajHG2Rd9zlAR5n/BvP3QxyZx0wzLkKDZzX4qektoTQMvNO9I2oqKpZxsPH4M9sZ7xuU9BO1HFI2THKFXLzx4m1SsNIHytwBXCwJGNqsmo/Af7iDuFqTarOFWZxE2QLArZKVfyfNTfLwutnDN5YNIrL9FVZlrBJY6Nv9Cd0HgrQU3ACEP/9+BDVxOqgz2g1MDauGrRKrJb/OHwTdFvl+yXftmuqoA=
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)(396003)(346002)(230922051799003)(1800799009)(451199024)(186009)(64100799003)(82310400011)(46966006)(40470700004)(36840700001)(86362001)(40460700003)(40480700001)(54906003)(70586007)(70206006)(316002)(478600001)(8676002)(6486002)(8936002)(33656002)(41300700001)(4326008)(36756003)(2906002)(5660300002)(6862004)(47076005)(107886003)(36860700001)(53546011)(2616005)(6512007)(82740400003)(83380400001)(336012)(6506007)(81166007)(356005)(26005);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Oct 2023 11:31:15.1038
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: e24ebf1d-336b-4a08-0317-08dbd096e78d
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:
	AM4PEPF00027A68.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB7371

SGkgSnVlcmdlbiwNCg0KPiBPbiBPY3QgMTksIDIwMjMsIGF0IDE5OjIzLCBKdWVyZ2VuIEdyb3Nz
IDxqZ3Jvc3NAc3VzZS5jb20+IHdyb3RlOg0KPiANCj4gV2hlbiBtb3ZpbmcgYSBkb21haW4gb3V0
IG9mIGEgY3B1cG9vbCBydW5uaW5nIHdpdGggdGhlIGNyZWRpdDINCj4gc2NoZWR1bGVyIGFuZCBo
YXZpbmcgbXVsdGlwbGUgcnVuLXF1ZXVlcywgdGhlIGZvbGxvd2luZyBBU1NFUlQoKSBjYW4NCj4g
YmUgb2JzZXJ2ZWQ6DQo+IA0KPiAoWEVOKSBYZW4gY2FsbCB0cmFjZToNCj4gKFhFTikgICAgWzxm
ZmZmODJkMDQwMjNhNzAwPl0gUiBjcmVkaXQyLmMjY3NjaGVkMl91bml0X3JlbW92ZSsweGUzLzB4
ZTcNCj4gKFhFTikgICAgWzxmZmZmODJkMDQwMjQ2YWRiPl0gUyBzY2hlZF9tb3ZlX2RvbWFpbisw
eDJmMy8weDViMQ0KPiAoWEVOKSAgICBbPGZmZmY4MmQwNDAyMzRjZjc+XSBTIGNwdXBvb2wuYyNj
cHVwb29sX21vdmVfZG9tYWluX2xvY2tlZCsweDFkLzB4M2INCj4gKFhFTikgICAgWzxmZmZmODJk
MDQwMjM2MDI1Pl0gUyBjcHVwb29sX21vdmVfZG9tYWluKzB4MjQvMHgzNQ0KPiAoWEVOKSAgICBb
PGZmZmY4MmQwNDAyMDY1MTM+XSBTIGRvbWFpbl9raWxsKzB4YTUvMHgxMTYNCj4gKFhFTikgICAg
WzxmZmZmODJkMDQwMjMyYjEyPl0gUyBkb19kb21jdGwrMHhlNWYvMHgxOTUxDQo+IChYRU4pICAg
IFs8ZmZmZjgyZDA0MDIyNzZiYT5dIFMgdGltZXIuYyN0aW1lcl9sb2NrKzB4NjkvMHgxNDMNCj4g
KFhFTikgICAgWzxmZmZmODJkMDQwMmRjNzFiPl0gUyBwdl9oeXBlcmNhbGwrMHg0NGUvMHg0YTkN
Cj4gKFhFTikgICAgWzxmZmZmODJkMDQwMjAxMmI3Pl0gUyBsc3Rhcl9lbnRlcisweDEzNy8weDE0
MA0KPiAoWEVOKQ0KPiAoWEVOKQ0KPiAoWEVOKSAqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqDQo+IChYRU4pIFBhbmljIG9uIENQVSAxOg0KPiAoWEVOKSBBc3NlcnRpb24g
J3N2Yy0+cnFkID09IGMycnFkKHNjaGVkX3VuaXRfbWFzdGVyKHVuaXQpKScgZmFpbGVkIGF0IGNv
bW1vbi9zY2hlZC9jcmVkaXQyLmM6MTE1OQ0KPiAoWEVOKSAqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqDQo+IA0KPiBUaGlzIGlzIGhhcHBlbmluZyBhcyBzY2hlZF9tb3Zl
X2RvbWFpbigpIGlzIHNldHRpbmcgYSBkaWZmZXJlbnQgY3B1DQo+IGZvciBhIHNjaGVkdWxpbmcg
dW5pdCB3aXRob3V0IHRlbGxpbmcgdGhlIHNjaGVkdWxlci4gV2hlbiB0aGlzIHVuaXQgaXMNCj4g
cmVtb3ZlZCBmcm9tIHRoZSBzY2hlZHVsZXIsIHRoZSBBU1NFUlQoKSB3aWxsIHRyaWdnZXIuDQo+
IA0KPiBJbiBub24tZGVidWcgYnVpbGRzIHRoZSByZXN1bHQgaXMgdXN1YWxseSBhIGNsb2JiZXJl
ZCBwb2ludGVyLCBsZWFkaW5nDQo+IHRvIGFub3RoZXIgY3Jhc2ggYSBzaG9ydCB0aW1lIGxhdGVy
Lg0KPiANCj4gRml4IHRoYXQgYnkgc3dhcHBpbmcgdGhlIHR3byBpbnZvbHZlZCBhY3Rpb25zIChz
ZXR0aW5nIGFub3RoZXIgY3B1IGFuZA0KPiByZW1vdmluZyB0aGUgdW5pdCBmcm9tIHRoZSBzY2hl
ZHVsZXIpLg0KPiANCj4gQ2M6IEhlbnJ5IFdhbmcgPEhlbnJ5LldhbmdAYXJtLmNvbT4NCg0KRW1t
bSwgSSB0aGluayBeIHRoaXMgQ0MgaXMgYmV0dGVyIHRvIG1lIG1vdmVkIHRvIHRoZSBzY2lzc29y
cyBsaW5lLCBvdGhlcndpc2UNCmlmIHRoaXMgcGF0Y2ggaXMgY29tbWl0dGVkLCB0aGlzIGxpbmUg
d2lsbCBiZSBzaG93biBpbiB0aGUgY29tbWl0IG1lc3NhZ2UuLi4NCg0KPiBGaXhlczogNzBmYWRj
NDE2MzViICgieGVuL2NwdXBvb2w6IHN1cHBvcnQgbW92aW5nIGRvbWFpbiBiZXR3ZWVuIGNwdXBv
b2xzIHdpdGggZGlmZmVyZW50IGdyYW51bGFyaXR5IikNCj4gU2lnbmVkLW9mZi1ieTogSnVlcmdl
biBHcm9zcyA8amdyb3NzQHN1c2UuY29tPg0KPiAtLS0NCj4gVGhpcyBmaXhlcyBhIHJlZ3Jlc3Np
b24gaW50cm9kdWNlZCBpbiBYZW4gNC4xNS4gVGhlIGZpeCBpcyB2ZXJ5IHNpbXBsZQ0KPiBhbmQg
aXQgd2lsbCBhZmZlY3Qgb25seSBjb25maWd1cmF0aW9ucyB3aXRoIG11bHRpcGxlIGNwdXBvb2xz
LiBJIHRoaW5rDQo+IHdoZXRoZXIgdG8gaW5jbHVkZSBpdCBpbiA0LjE4IHNob3VsZCBiZSBkZWNp
ZGVkIGJ5IHRoZSByZWxlYXNlIG1hbmFnZXINCj4gYmFzZWQgb24gdGhlIGN1cnJlbnQgc3RhdGUg
b2YgdGhlIHJlbGVhc2UgKEkgdGhpbmsgSSB3b3VsZG4ndCBoYXZlDQo+IGFkZGVkIGl0IHRoYXQg
bGF0ZSBpbiB0aGUgcmVsZWFzZSB3aGlsZSBiZWluZyB0aGUgcmVsZWFzZSBtYW5hZ2VyKS4NCg0K
VGhhbmtzIGZvciB0aGUgcmVtaW5kZXIgOikNCg0KUGxlYXNlIGNvcnJlY3QgbWUgaWYgSSBhbSB3
cm9uZywgaWYgdGhpcyBpcyBmaXhpbmcgdGhlIHJlZ3Jlc3Npb24gaW50cm9kdWNlZCBpbg0KNC4x
NSwgc2hvdWxkbuKAmXQgdGhpcyBwYXRjaCBiZWluZyBiYWNrcG9ydGVkIHRvIDQuMTUsIDQuMTYs
IDQuMTcgYW5kIHNvb24NCjQuMTg/IFNvIGhvbmVzdGx5IEkgdGhpbmsgYXQgbGVhc3QgZm9yIDQu
MTggZWl0aGVyIGFkZCB0aGlzIHBhdGNoIG5vdyBvcg0KbGF0ZXIgd29u4oCZdCBtYWtlIG11Y2gg
ZGlmZmVyZW5jZeKApkkgYW0gb2sgZWl0aGVyIHdheSBJIGd1ZXNzLg0KDQpLaW5kIHJlZ2FyZHMs
DQpIZW5yeQ0KDQoNCg==


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 11:32:04 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 11:32:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619239.964010 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtRG0-0004Ql-8T; Thu, 19 Oct 2023 11:32:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619239.964010; Thu, 19 Oct 2023 11: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 1qtRG0-0004Qc-5B; Thu, 19 Oct 2023 11:32:04 +0000
Received: by outflank-mailman (input) for mailman id 619239;
 Thu, 19 Oct 2023 11:32: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=AWKy=GB=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qtRFy-0003kc-NF
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 11:32:02 +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 1f48dad2-6e73-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 13:32:02 +0200 (CEST)
Received: from DB7PR02CA0010.eurprd02.prod.outlook.com (2603:10a6:10:52::23)
 by DU0PR08MB9132.eurprd08.prod.outlook.com (2603:10a6:10:474::14) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.24; Thu, 19 Oct
 2023 11:31:29 +0000
Received: from DB5PEPF00014B9C.eurprd02.prod.outlook.com
 (2603:10a6:10:52:cafe::52) by DB7PR02CA0010.outlook.office365.com
 (2603:10a6:10:52::23) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.25 via Frontend
 Transport; Thu, 19 Oct 2023 11:31:29 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DB5PEPF00014B9C.mail.protection.outlook.com (10.167.8.170) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6907.20 via Frontend Transport; Thu, 19 Oct 2023 11:31:28 +0000
Received: ("Tessian outbound 470906b1fe6c:v215");
 Thu, 19 Oct 2023 11:31:28 +0000
Received: from 0f82464f40e5.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 44141C31-7F06-438E-B953-57048A8E19FD.1; 
 Thu, 19 Oct 2023 11:31:22 +0000
Received: from EUR02-AM0-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 0f82464f40e5.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Thu, 19 Oct 2023 11:31:22 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by AM9PR08MB6243.eurprd08.prod.outlook.com (2603:10a6:20b:2db::5)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.25; Thu, 19 Oct
 2023 11:31:21 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41%4]) with mapi id 15.20.6907.022; Thu, 19 Oct 2023
 11:31: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: 1f48dad2-6e73-11ee-98d5-6d05b1d4d9a1
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=+zCI9rSwaIYbX2/GzIn7SKRGYyk5emz9bZ9KcDhCDUk=;
 b=dprafdRHS/NiZ0h1w8ELOS6vUePVY47rW9PBq+SAVIIlfi/ZlxkRYsokpYfEKPQYpRQI5FKxGrXszzo2Pl9QHIxZF2TR6tJhY3AQzqeY6mvDPDtfSc+W3a+wAA9Q8T9JI0UEluwdVPA5ggZ3RnYCbADXhy7FPrq4XdsPia3NPRI=
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: fa05c62ad8cc3cb9
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ixPBkNoIiw1wKy7xwDjkTySBiju5LWipDsh+rwa0C5sQCHDGO5CBLxMdRYxB3NNCsq3jD8HVU/BNaS9clKA+Bzh4BjRs+GImTOLJyQ1vpV569OJrvO973/HtwMWjvPn5arqBREQPWz8Pp4qH5O72/NSrQWbtEauykf1qH+ynwlkAHSQO30moei+Dfdr8M+YmMkN02Zf3PteGrItOOiEyPyc3hFcgZWwbolsf8r6ib4DiGX0soBB1nBj9JAhy+SSGNfeyi2DcPH9WSNYgmSanfvHE61fTzd3tSEOQGA2QZkZsA0OTt7TFVJFYV/kh3/8Jc2JhnOjTbV3opH/m3YDaAg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=+zCI9rSwaIYbX2/GzIn7SKRGYyk5emz9bZ9KcDhCDUk=;
 b=Eu0zpxqCdHieyr1b2y6wKBJ2VXCsEjpncyGJBJI0RYuVFmzuz43kFsPfF7qbP8tbq3rNZSx3A0PejT6LCpsJqcpHLVzLpsGypTj5aEsIPeNU93ep69Sn7ORXjJAs6Elj7ImDZVHetuhvTD1tW7ksYb+AwsYdF3tkhMIl5c7eJi512NSjEr5jkpqvbiFHWGFQco4pN+6asz722+pM1S5P0a2dK7drsEc3x7QXTcqhp4JF1MzP+cJQ1f2Fpc34jXOP5k+x/v2CkuIZuGAAUCtSYkT6kZazN3YXmv4QBmDb+KOIyw3QZAT/QRrKEWM5ZT93BOA9ENA7X0EL0NpY2qeV4A==
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=+zCI9rSwaIYbX2/GzIn7SKRGYyk5emz9bZ9KcDhCDUk=;
 b=dprafdRHS/NiZ0h1w8ELOS6vUePVY47rW9PBq+SAVIIlfi/ZlxkRYsokpYfEKPQYpRQI5FKxGrXszzo2Pl9QHIxZF2TR6tJhY3AQzqeY6mvDPDtfSc+W3a+wAA9Q8T9JI0UEluwdVPA5ggZ3RnYCbADXhy7FPrq4XdsPia3NPRI=
From: Henry Wang <Henry.Wang@arm.com>
To: Jan Beulich <jbeulich@suse.com>, 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
	<xen-devel@lists.xenproject.org>
Subject: Re: [PATCH for-4.18] iommu: fix quarantine mode command line
 documentation
Thread-Topic: [PATCH for-4.18] iommu: fix quarantine mode command line
 documentation
Thread-Index: AQHaAnmVbDgQExfU5k2xqQmtvlQ2ELBQ7zKAgAALXgA=
Date: Thu, 19 Oct 2023 11:31:20 +0000
Message-ID: <8AFAA72C-4676-48EB-AFC3-041A070CA67B@arm.com>
References: <20231019104551.27870-1-roger.pau@citrix.com>
 <803d5f10-edf4-9e10-f801-d480c93ebec8@suse.com>
In-Reply-To: <803d5f10-edf4-9e10-f801-d480c93ebec8@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_|AM9PR08MB6243:EE_|DB5PEPF00014B9C:EE_|DU0PR08MB9132:EE_
X-MS-Office365-Filtering-Correlation-Id: be06f420-4463-46c7-a3cb-08dbd096efb7
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:
 RblHIT1A1cjVlch0e5uibYG1zoYlaQ4CC1Qn6cdTI6Dro05jqP34Pw/vrqd6SGAoEPZrs8phCXDz/pCjiVe4DbDKzSCAHmMyoyYV6F4FNkYRVNOrtV+K4Yk3FdYB3k2yLlP4v+weecdH0WyxFtOakJveIpcRZQ/mNpSOysQ8ujcUEOLGF2y3yj99vp4HJEoFz9VCBugW+WyXMYFXkvTSdRO/FuWEQp5Jzq3bXGJ0SvsZblXAU8s5OhyLrB1plpKfuUrP0Oi/0IjDhmdPnShuaJOrgzeLG4NEqBCExYG2w5bRimRB+vHLQo/3auv6DRDPi1o2zusTyMeYrT0WH6fJP+LpkGZ4J6xc1AymZltP/2WHNddfF+0IN4BPM9oyNh3NPCXd89mM6uWoVfoZggH1L8GQRFkAvF6lFPgXmJ+7hf7xrvmbS8Aj7bPu0Jh1Sn16R8DNUSo6yiX7I2LJmcU18SjFK5Hi8iYa0e6qYzSnlDH5GB96/zoXyuRYELh7E8LU9bx4X75r/m+vwsth0uFK+e3ShOkPOH9HXkHyF6+G+E4OZsR9+QMHHwtr3xD6nUeZiu1u5oA93pysjSpvw1U50DPAzzW1XO+tlo9GhCq2Ayc0NFUSAwiWSx9XHVo13IiDgN+ji7KuNR+dRnf6zg4+tA==
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)(136003)(346002)(376002)(39860400002)(396003)(230922051799003)(1800799009)(186009)(64100799003)(451199024)(2906002)(4744005)(33656002)(26005)(5660300002)(4326008)(8936002)(8676002)(36756003)(41300700001)(54906003)(316002)(64756008)(66446008)(66476007)(66556008)(91956017)(110136005)(86362001)(66946007)(478600001)(6486002)(71200400001)(76116006)(53546011)(6512007)(6506007)(2616005)(38100700002)(38070700005)(83380400001)(122000001)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <B0C3AB4461E88A459AB5AF217CF01619@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR08MB6243
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:
 DB5PEPF00014B9C.eurprd02.prod.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	923f4398-5edd-4042-a53f-08dbd096eb06
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	h/ysxeI2/vQkSfHJ9FJiAI+OQc+sTexuH1wYMs2lIrV3TJg9CYH8TF8gs+QtpSBEY1DtFE7tVBHwGNLB5SL83rnwZXTIesZa9YNV5iLS77GZe/a0m2sfuwC9COxaStNuvkHTg8GEREUJgfD/d7DkgNIWj/hPTK9ekPl6ZPEZKRcF2X2c41FV4POVAk5y65tQ+zCeqd0lhddWKeXo+ShS03o4LArlG1KO1V8A09JHwT0zuYUtJp/lF9zU66QydEEUY19OW/mrkrH68Wdx4LCeAiBuhUubi09+d4IDlgTK4TV70SaQfzrA05fny6BRhbZFdDumY8HkIrPRD+VWYvl82DtkDQee/+PmZ7spfvsP9/C9AmB3lGTD46BdREt5sau7XOv/PXoDHbzw26LY/um07w5J3tJ6wrSAJWXJV1gYnJDiudAMOLhxkLN46raE1LQi4lV6Xdi+5FAI6p77bVpqeahxWtz86cp+dJrIkxtezftWTBrhohzDw6fY/Pqel/IohzBBkXVpVAQhIhM+6HLvYSE6So7P4q1Jyur+BFzeo3uk+2Q0WLZGGzXrHDmOatnFXsfBeTQ3rhsxyt6IUV2a58z5IeQsCPHQAh9kFJc1CQaGFDPY5jltbxG4dQrQu6I6A1Bt+P66D3GJhl83m8AYLBBFxDJj+ub5593OlhQphc+UUuZytWRpRK8x2eeI2/tzIHrb9AnEgNjGcLrycvEYs13dOwjKH615iCbg94JIZsXRcM8CmJv7quS+wEXAgifXYFSIjpGCnMMyjnL7lgiuGJhosInzPIvwLHH/RC1k9Fg=
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)(396003)(376002)(230922051799003)(82310400011)(64100799003)(451199024)(186009)(1800799009)(36840700001)(46966006)(40470700004)(83380400001)(26005)(336012)(2616005)(2906002)(4744005)(5660300002)(8676002)(8936002)(4326008)(40460700003)(36756003)(33656002)(86362001)(356005)(81166007)(40480700001)(82740400003)(36860700001)(47076005)(6506007)(6512007)(6486002)(53546011)(110136005)(70586007)(41300700001)(316002)(70206006)(54906003)(478600001);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Oct 2023 11:31:28.8206
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: be06f420-4463-46c7-a3cb-08dbd096efb7
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:
	DB5PEPF00014B9C.eurprd02.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR08MB9132

SGkgSmFuLCBSb2dlciwNCg0KPiBPbiBPY3QgMTksIDIwMjMsIGF0IDE4OjUwLCBKYW4gQmV1bGlj
aCA8amJldWxpY2hAc3VzZS5jb20+IHdyb3RlOg0KPiANCj4gT24gMTkuMTAuMjAyMyAxMjo0NSwg
Um9nZXIgUGF1IE1vbm5lIHdyb3RlOg0KPj4gV2l0aCB0aGUgYWRkaXRpb24gb2YgcGVyLWRldmlj
ZSBxdWFyYW50aW5lIHBhZ2UgdGFibGVzIHRoZSBzaW5rIHBhZ2UgaXMgbm93DQo+PiBleGNsdXNp
dmUgZm9yIGVhY2ggZGV2aWNlLCBhbmQgdGh1cyB3cml0YWJsZS4gIFVwZGF0ZSB0aGUgZG9jdW1l
bnRhdGlvbiB0bw0KPj4gcmVmbGVjdCB0aGUgY3VycmVudCBpbXBsZW1lbnRhdGlvbi4NCj4+IA0K
Pj4gRml4ZXM6IDE0ZGQyNDFhYWQ4YSAoJ0lPTU1VL3g4NjogdXNlIHBlci1kZXZpY2UgcGFnZSB0
YWJsZXMgZm9yIHF1YXJhbnRpbmluZycpDQo+PiBTaWduZWQtb2ZmLWJ5OiBSb2dlciBQYXUgTW9u
bsOpIDxyb2dlci5wYXVAY2l0cml4LmNvbT4NCj4gDQo+IFJldmlld2VkLWJ5OiBKYW4gQmV1bGlj
aCA8amJldWxpY2hAc3VzZS5jb20+DQoNClJlbGVhc2UtYWNrZWQtYnk6IEhlbnJ5IFdhbmcgPEhl
bnJ5LldhbmdAYXJtLmNvbT4NCg0KS2luZCByZWdhcmRzLA0KSGVucnkNCg0K


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 11:34:16 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 11:34:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619243.964019 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtRI4-0005tk-Ka; Thu, 19 Oct 2023 11:34:12 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619243.964019; Thu, 19 Oct 2023 11:34: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 1qtRI4-0005td-Ho; Thu, 19 Oct 2023 11:34:12 +0000
Received: by outflank-mailman (input) for mailman id 619243;
 Thu, 19 Oct 2023 11:34: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=g4nO=GB=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qtRI3-0005s9-AN
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 11:34:11 +0000
Received: from EUR01-VE1-obe.outbound.protection.outlook.com
 (mail-ve1eur01on060b.outbound.protection.outlook.com
 [2a01:111:f400:fe1f::60b])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 6b09924c-6e73-11ee-9b0e-b553b5be7939;
 Thu, 19 Oct 2023 13:34:09 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by VI1PR04MB7134.eurprd04.prod.outlook.com (2603:10a6:800:12e::11)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.36; Thu, 19 Oct
 2023 11:34:07 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%7]) with mapi id 15.20.6907.022; Thu, 19 Oct 2023
 11:34: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: 6b09924c-6e73-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=f6xzsN6vP5ofwz4Txk2Me3jfTGiOOFCymKkSAfa7YsCfk3xCwsCsbv9wQ33VQ3Xo3T8dzu/C8nlncCMO5caCNeMhH1YFNY5NZpJImGcaV2FsANudgsA+HL7TUlepi0ODFvb0e4ziL9j2urjC61Lhd+2oCR6U8P4asKo8umV4YPBvVnw4/nSr90v/3Cub9mdt6BHPwjHj/E8ipYtODqSPPsRbZreCpkKanzmv5Av/ZRfLd5uJ+ypmna+VU8msBdwkqcpIjAgRyEtx1gvsHTmPR3FbXJs0BD4iucv2HdveqOyKMbHGe2AOmrbYHm/NFPOaF7Ofr8B+lMZIbR+rwNMV+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=k+sOnk7pfsJCIBixwM4iGZyICMVqavENGBaAPr8tuJk=;
 b=HiSdmaY8zg7f8Ryl/XuHzYw3YHNMUUfNeEBC3Zv1GzbUsP2Ii86FnvkKkGHjHXE1tTdmQcW43zQmVBZEq6UAnX25now2OFYKy9CeEfP3OQHvZDymkkVzs9pwWwxg8dxn2lPkCYUBWiDCOn0VYlpVX4Cglh+e4CH0DrulIClkYavIOL7XdXD6xdVabQMy51kDQHCy/FGaZwssOz8XlZQWOPKTCzx27RE09oGL5p2n8GUnONw2667Aeqb62Js+0f9Efn4qNWOTdeqkS6nVj4QWmU7iEJRXeoURLpJqD62/VKtuZA1lDsegIQKtixISrAhcEh4GboDH/YQ5dMcjgPRFGw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=k+sOnk7pfsJCIBixwM4iGZyICMVqavENGBaAPr8tuJk=;
 b=F7TqEDjhq4KfBnYr/asNVUXWFA6YE4iQLju7UkiJ+Ns87q4TR7WSZkWLLN12gtU89g7rZnYx67W7n7Qk4JqKgOTijB/P9S3QBGTMTrt/F4C4s823bciEnwstqreYz/XhMTzFwju+t4tuJjU/wHgLTdT+VceNHEnmTQv/oPtsvE/wpLHxjV7XpU5OIzDaOQ349xs91I5X1SXkmL8/5/AgG5KS4+HiUyTPI9QvYClFPbhs3D5SGEPZElmXTXHoyUI9Hko6oyl27e8Subst7h2TzrHMZq+ElQwkO0c33EHrdaRYgII1pKyJ2CJ/pxv8RN7Ap/axzQKTo0Yd+UMRatZYMQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <a6d597c2-b822-79fb-233c-fbd7d7bee137@suse.com>
Date: Thu, 19 Oct 2023 13:34: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 v1 25/29] xen/asm-generic: introduce stub header irq.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>
 <63ee09cef41d0d2ec5e26eb6dbe20df2e377a0fa.1694702259.git.oleksii.kurochko@gmail.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <63ee09cef41d0d2ec5e26eb6dbe20df2e377a0fa.1694702259.git.oleksii.kurochko@gmail.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0149.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:b8::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_|VI1PR04MB7134:EE_
X-MS-Office365-Filtering-Correlation-Id: 7ef7636e-ae68-4695-9b2d-08dbd0974e0b
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	Hf3SZt775RC8K8vvHn+f9W8odcANuWqGk0oDtTf8L8CwnNEzNmqPHS6tbBhLhp148MYxF+NMk2fV5Un5w9VzQzU+a1x1eBatgpE5VoaSmYTorJ9Vo/HmO72J6ujTsMHNJuEMb9mRmUxD9qP11YYR/qZDRL9Ger3SpHFQpEHyB6/sl4EcSVlJ7HRDXE0Eov0G3www9UPj/1RVb29ByrtRvvJ4g6ZQaMsqBy9QrSlt1bwk6XYh30uUcG7RSxqJ4OxodHrBdvvHw+Nz9kTiSIX728a4jirycvlgJMNXBhF6loScwBKX59ljLsGBt+MdZN34EZK53DL1dPm0W3nVtJ/kqjz7jpoTtx35ZXEjMb+Y1pjyLA0tf553KaXhLbBGCZdqbUtBaDCD2zNAbJDh22tTN9pBJ6oczrmNc3a19B47F7Y7juDCe1fSRbiM7TF7Qbp3qYRTcYdwNPqc7/euEvsdIgOGbz3RfxU/fBXYQ+iJ0Kn0ZxaYJAZNDZTAITz1Vp4mEqyGfPvFfREvWVtO7q3mAmdycei+wuwvjXb0SIPahnAZwtGeqskCDlkCUT/mze3TiHZrTZsA3nl5jyj/SurX+GyVGe+ka+v/pL2px7Y8wHTWHg6sYTO/qpDUzTqM2yPzvAUaH7iLXvtWIPfeXpiOqomJF6BwAoWek2AF9TqlgEA=
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)(376002)(39860400002)(346002)(396003)(230922051799003)(1800799009)(64100799003)(451199024)(186009)(5660300002)(38100700002)(53546011)(6512007)(6506007)(26005)(2616005)(478600001)(31686004)(66556008)(8936002)(54906003)(66946007)(4326008)(41300700001)(8676002)(316002)(6486002)(31696002)(4744005)(86362001)(2906002)(6916009)(66476007)(36756003)(41533002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?VnZRSmFYcG5OVWNISFIxcEN4TzNmSFVmSndPTWVkMXEzSUZIZnBXMzdpMUdX?=
 =?utf-8?B?U29CNis0ejBlOGZTUlRzdEUzY1JjM3BzTUd4QWZ3T1VaTWYzSHVyYUFkNHRU?=
 =?utf-8?B?Ym9iMDQwUEdzZmc1eUxkMVNjQzN6em9lLzU1OWhkYys1TnBvZW1UQ1hjUzhP?=
 =?utf-8?B?OXFCRnZsaHpXa1BxU29XZStzS1NEVkJGTFQ1WHNxQTZGUnRFbW1HY3c0NlhW?=
 =?utf-8?B?YWQ3ZGM0alM2U1NyM3psQ3Y3V0Y2TjNoWWh6dCtlSDZ2d2hKbjdySEk4OEIw?=
 =?utf-8?B?U2xFMGN0WWl1QXdMZERKKzFwSUhJRjRTb1pDUitZRW5nOUg1b01uSWlaRXJt?=
 =?utf-8?B?N0xERVVHUmFUT2NsbExMUHI5Z2pKRGd0aFp2K1YwNUtYandMUWlUV0RsVG0v?=
 =?utf-8?B?Umc1cElvZDBESUphdHFBQUEwL2RTMmNWaWc4am1xRVpGOEhKNS92ajJ1TFVF?=
 =?utf-8?B?MVJuZ2ZCeFUxUXprNU9zZkZaU3pLdGM2T0UxcnZSZU9lK0t1enZROU5uV2pH?=
 =?utf-8?B?d1RBNVJJWGRKK2Y2dGlqT213b3JQNmJ4bzE0SnRIYy9qb3d4ZGZQQ0h1OVlu?=
 =?utf-8?B?VGJwa2lLSXhxOVQ1T2tlUkhqaW1kWE5wZjZUeHhtK3hLbHU2dU1SWFJVT2Na?=
 =?utf-8?B?Vk9ZdlkxeWUvQUpRSXF3TjhINnRLRXArSFBzWlpIZmhHNWNpYmpONlNDdzFO?=
 =?utf-8?B?OGtMa0pPbFBTQ2V1NkxFbXFWS3lEWXY0SHE3TStFUDR1ay9MNVFtdUlLV2RS?=
 =?utf-8?B?cTFaSDdPaDJQcmhNZ3AvVDk1SVNLVCtWKzlsTXc5VzNtK0tUbUhZYUlzTnh6?=
 =?utf-8?B?MzlnaXIrM2t6cUtmZ1dpS1ZNT1lTRHhFQkQ5OXNUdXpsSEx4c3hwNkYyR0hp?=
 =?utf-8?B?cnNGMmkvaDFSSFVIVm1OU1cweFV4NzhDTDA3WklOanpoSTVhZVk1SWFFVVJy?=
 =?utf-8?B?a0IzUXNYVFVuR0hPNVpZZjNvbEs4VVpJRGhSeTBFbDg0dGo0aS9VWW5vczNC?=
 =?utf-8?B?Vk9vcHVpMGZralV3ejBpdmRLUDJySTlVeTU0aDd1UG5PZnlhbW0wMHNxMGNS?=
 =?utf-8?B?UVhwU0kzTjczS2hEVDNWRm9jNVo0Yk5YTEYvTHozOUtySkIxWU9pQjJ0bE5U?=
 =?utf-8?B?WFA2TzI3TDNHUjhxYnYySVB0ZldzK2dtd3B3VFlDRTIweUVmY1l1MlI1QlZx?=
 =?utf-8?B?ejlHa1N4RGJMMGFkYTZZVGkzL2gvRGQ1QjhlZ2FWRjZ1N3Y1dDJpRG9nMHl6?=
 =?utf-8?B?dmlzVHk5M2J0UUM4YXZJY3ZtL1gra1docjNtODdTSURGVWRyRkpEb1lObXEr?=
 =?utf-8?B?MkkzWHV4anpaL3VsTUgzaXRGOVcwaFZMRWtvUW5ndGk1QXh5ZC9rM3VSTHZF?=
 =?utf-8?B?a3AwcnN0ME1MUGFQTi9wQTR5RmVXT252aFFoalJIcU9Jb09IdUJ3NkFNTHhY?=
 =?utf-8?B?NzBIeWFRc2wvM1F4MElFUlh1dXRnYVNnazZwcGxycUZlR1lMdjFBeVpGQStW?=
 =?utf-8?B?dVNKLzlydHpFR2Fhd1c3VStmclRSL3BjYytOczh4bjZLSDlleW8waW5jcmYw?=
 =?utf-8?B?Rk5PUzFlT2lsU0FBTExwNWMxNGJLUjBuOVpXM3l0YXloZnFmNnRJNzBDdTFp?=
 =?utf-8?B?Vm5OK0p1YkRaL1BPdWdIT2dhcEZ1SERDRzNhYkRtYWRnNlVDT1VaSkRXaEk5?=
 =?utf-8?B?MmxhKzFHU2JIdmFrdEp1SGRWblQva1dFSXYzWDMyVnBNeFF4eU15R1pRN1l1?=
 =?utf-8?B?QUswdlBQcXlja3VuOVdPRm91YTFCeTZMVjFCNGhQUXpwWXlvcFVRUlR5M0p2?=
 =?utf-8?B?bGwvZUJIdC9GNW9BcWFNQlA1YzZFblM0NmVQck0wblNOWmZ2b05PNEVpMVp0?=
 =?utf-8?B?QXhaSFUzZkFKNjI0dFUzTUhIQ0V2enI1Q0U0cHZXcDNyakg5VThyeUJFZm1J?=
 =?utf-8?B?djZudEF5NXlhZXU2SzNBdXFLclZVNzVneDhHcXFIRW5ZbE1GZWN6S2wxeXVQ?=
 =?utf-8?B?diswc1IzenZyTVR3RHN1dVVOK2tucWV0SVNuemZjUC94ZE5FRjlUQlNPSVZI?=
 =?utf-8?B?U21XTk50alBwcHltZUFtb2lGSWxZNXJ2M2plVG1Vc0QwUmFLcFRzWmJxUDZD?=
 =?utf-8?Q?g9nGH31RxUxUMR/LHE5VM/dek?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 7ef7636e-ae68-4695-9b2d-08dbd0974e0b
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Oct 2023 11:34:07.2119
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: LoanLbvAdekjC1uxSNpSUeB34u/7gha2s8yp57CDvQ20ElKld2FDCu5wDARFoPhLm5DPMEWY1pC++2zQpVUGdg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR04MB7134

On 14.09.2023 16:56, Oleksii Kurochko wrote:
> --- /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>

While Julien and I are still discussing this aspect, my view is that DT
things may not appear in generic headers. At least the #include-s here
aren't necessary anyway, afaict.

> +/* TODO */
> +#define nr_irqs 0U
> +#define nr_static_irqs 0

Earlier comments apply (at least) here.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 11:36:09 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 11:36:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619249.964030 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtRJv-0007l1-Uq; Thu, 19 Oct 2023 11:36:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619249.964030; Thu, 19 Oct 2023 11: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 1qtRJv-0007ku-S8; Thu, 19 Oct 2023 11:36:07 +0000
Received: by outflank-mailman (input) for mailman id 619249;
 Thu, 19 Oct 2023 11: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=g4nO=GB=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qtRJu-0007hs-0z
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 11:36:06 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 (mail-am6eur05on20608.outbound.protection.outlook.com
 [2a01:111:f400:7e1b::608])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id ad7ac680-6e73-11ee-9b0e-b553b5be7939;
 Thu, 19 Oct 2023 13:36:00 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DU2PR04MB8679.eurprd04.prod.outlook.com (2603:10a6:10:2de::14)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.8; Thu, 19 Oct
 2023 11:35:59 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%7]) with mapi id 15.20.6907.022; Thu, 19 Oct 2023
 11:35: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: ad7ac680-6e73-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=JwCpU7Zgs8Aqcy8noTKRamaiJ/rkQb3HUCj8efJJYg9MpgqDDTWtBfRZbimU8q1c4Ls6yGXJgCsYn7GdEb/fr9+rCp8/uRItbVD4Cu8kIVNaJm3JXWyzR8Fg+0D/kVcsHiNHHIJLoqAc3GbKHkbl9u0WZLeVCIc9RhwPoKsUqUCKzHiIEYr9hNl5qCPy4GgNv+quH5/0Jshn8ov6Mp5W7T8g7fkvWNeINPWSyohz8piDNwUphO4L+WR/fgzSsPUXqHF805Yw+E5BjzVY+MaOMbJ8YsJYU/N24RfVL4M6xV2pV4kL+9W8jiLDZIURa88XwZGKJILDGnIIWj70SoQxJw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=BABu4yMQDxo7cdmk7s1eP54nwk8eC34OQRoGIquyl+8=;
 b=PecI0Uje+elDySM5adfHwLE91Oj5rIvfWywD/0Y4IFGFcy/E32srYbZf+Rc91TDGZSdNwmNgTbptBLrq0btyNZDI9CXXGs/SU+K8w56aKx/wGiXHXbWKGe319snlgIcDviMNBynV22wDoQ8sTBmHWPcx4VrkQS09Z5lxWHQphBFKJ3mIUi5Deh301G2nmsQ3EfZSzLVy1+VoYW8RO8Bag2Pu8Ykmn0z8Kpiwp27rxQAaRCfbnp9QHQIulGAfrajQHFj9mH2hIRo+dq/SqH+9JgpzoX7J83+GYovIQ3geHq6fRLSPSynxv8LrZMjPO7UM+7T6MWzYId3jzWdSFoEdZg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=BABu4yMQDxo7cdmk7s1eP54nwk8eC34OQRoGIquyl+8=;
 b=KtMET2t85rEbnXs4Hbx0MZcHAwpFgfhvSuhQ1NbG1nl7LzGjKThAlx5CZttEUBcynL0L+H/1hmOdRSUjkLqNY540StD7NLmst1ptJImBU1ZSBtshH1Pq8ycaA1DIbmg4HnhA9gc8KF2B77hJ0CmLLRBtYwnWt8MocxzGDp1fQ57bsKa4d4HqIEUEWXCZFH7jUaxvEROoHvCElG7TER5lkxwwjAKM9cqrF0CL2/BT4D8y22B7fcbM19rOqsxVcFK/ynS3vF1surDxkou2WMcNeevNMTPrrLtOMfMjP7hJMvdmTR7K9XdplpBJXxOvCruyKF9aDBlcU1JHGj+XK7rzfQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <99fcc71c-eefc-d004-d4d3-6e0d0e76339d@suse.com>
Date: Thu, 19 Oct 2023 13:35: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 v1 26/29] xen/asm-generic: introduce stub header monitor.h
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>, xen-devel@lists.xenproject.org
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
 <a2663ba600f468bc4d6544bb64354a77c86a40b3.1694702259.git.oleksii.kurochko@gmail.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <a2663ba600f468bc4d6544bb64354a77c86a40b3.1694702259.git.oleksii.kurochko@gmail.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0071.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:49::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_|DU2PR04MB8679:EE_
X-MS-Office365-Filtering-Correlation-Id: 82b16f0b-9230-440d-3632-08dbd09790e4
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	knsOItfLKW7bjWZXwjtABelHV35naFhuGsGHFKfHpIi4PTrZavgpYtQVQMXpLceuQMNIzhwudBS/zWk19HVp2CwBxYfb33y7G8urcRNUs+SIAF6ZHinZYt5dhLMbvDGzb/G0x3oVySbuHOydcTYtGW0dhKSo/yLjkxUPJYhX/lr2QLqLN8rwRiS+KwmbUcLRLHkj5SsfthL7QQ5fHu0uEMq7hvNtYPWk1tr6Inuiiog13PLiZn+Df8vPaKWYcb96tFPCtT4l0IFCOjltTSOJAxjfO1Xlq9YmClUFmrpHpElebe58JmgMGoClH/cpJBRs+klN+QsUWgx8dvRWJ/y7xC7yk8Rf5lCpchJDA+Lg9LCPbnFXDUQjQkRw2tECQhVJIUPp+VKqxZIhpPK/3piVSStCxns7As532zrngYR3js0VtZ/Yg69YyQQILeUoWKYRZ33hBMayfBAti66PuyBRHNLCR+SKVIs3Po1GRuBUioCEdEQ5EvUnVnfsIKsAog4FYO0ayvvpCNi0rwPGydCEdO6YrUfabNSTI9Q44js+iu4Gj2LIKZO6ftrYQEMT8NMIeBJqAwgTwvVHARDZS54EZYzpMlomeXShUfwnqH+t0z9rNwmVqXB4CI61wz4MB1ksLvPHFsSQm34v1lHtPym742hLC9pd0qTYJusP0mBnbXk=
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)(186009)(1800799009)(451199024)(64100799003)(31686004)(86362001)(6506007)(38100700002)(41300700001)(4326008)(2906002)(31696002)(26005)(6512007)(53546011)(2616005)(36756003)(478600001)(8676002)(5660300002)(6486002)(66476007)(66946007)(66556008)(316002)(54906003)(6916009)(8936002)(41533002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?cWRySzBPN2tWblR5K2hNcU9LbEdJTUpNVVpqd3poMlNVSWtwWU4vNEhQT1ZP?=
 =?utf-8?B?c0YzOE5oUjlzRExDd1hUMEJ6Tkx3SHJHNUZHTHhBRUFMUWQzZWJ2VHVwL09x?=
 =?utf-8?B?VWN0QmVsOUx3ak4zelJUeWtOVXIveDVnUXJMWUhINm1UV3ZmOGhOcTgyQ2RQ?=
 =?utf-8?B?NjZpY1MveW9BZU1NZm5sOGhOSThFTmZQVnk1dm94cENxUzM1SDZEWlZOUjBI?=
 =?utf-8?B?MzhSWHdQb2lvdU1MRDBoVjYyRTNIajNxbXpuWVh3Q1lVeGdyaVA4aFBMR1ZH?=
 =?utf-8?B?ZnV3YzR2cVErZDBJakRoeWhmdE9sL2VzVkhPY1FIekdxRVZ1c3A2T2ViTG9r?=
 =?utf-8?B?YXNKK0w5Zks3WU5Dcll3Y0VGKzlKVWJKOFdUQ1J2MnhTVDdhbXFCVFNFcWE2?=
 =?utf-8?B?UHU4OGVwL0ZMWVdLbDB4QVV6clhXRmgwb1N1dWsvRzhpSVlXY0l1bUZmWXFZ?=
 =?utf-8?B?c2w5cU1PZkt6d3M4bnlOMnQrbXZJUjFoakZxUXh0SllVQmlzd3N4eDFLRU9x?=
 =?utf-8?B?NktmOGNNblprL3JqS1FHS3lqQjdhczcxcUVKZFRGbGVrTTVIRnk2cC93SFdH?=
 =?utf-8?B?Ukh5V0lXMnJaUjNqaWgvSHN6MjhCaUI4ZEoyalhPUTZmRW9wdGFEMTZKSUNL?=
 =?utf-8?B?WUV5bU5oTEFXLzRzT2ltMWhPeGlXWWR1clRUUWJJTzhiYXRoWm4xTmRpbUt0?=
 =?utf-8?B?TUtMb09DNkdaUzlKN0Z0QmNJVUgvTnJyUDhUallHNkIvVUJxL3NwL2dhUG9z?=
 =?utf-8?B?VmJlYlBraWgyUThiTGQ4Mmc1ZnUzTzl0Q0JEVlNLYUYvekFUaUUzZDdNZjVV?=
 =?utf-8?B?QjJKTTE4VnQvMlB3dTVxcXozWGlic2NGeXJRcUErMktCUktlRzhxMFAyaDFB?=
 =?utf-8?B?NHlFZk9GcFZFM0pEU3RRRm0vS240WEpwaGpaemVYMTMrVU92VVdkWStjdVlT?=
 =?utf-8?B?YmRiWS9DZHZjZmhDZEFYZGo4L1ZhaW1vOVJRTEJQWitYR2dtZE1oNHBEcThJ?=
 =?utf-8?B?TWJYMFUvZFZBcEI3eEJJZWlzaVZmVnNsU2QvT1pGNzlsTW1rRWpyMC92SExu?=
 =?utf-8?B?eXIyeFpWVkozZDFFWTBrM0tnWldzdEd4TnJadEJzZEdSelZqbm9NQW9XQ0lG?=
 =?utf-8?B?UXp3V2pyWHFURmYvajF1bVlUTFZUdEkrYmM3SmUzTDdIRDNTSGhhZ1Fwdk9V?=
 =?utf-8?B?cmovdlJ1bWhYSzJQNlJ2blVXV0NXVlpoRW5xaytUWEg3SDY2N211czdNSjhx?=
 =?utf-8?B?a2NNWFFyZjMwcnhVRkw1a2NEQXJoc213dm40S2grMnAyWVU1VC9XL2swL25K?=
 =?utf-8?B?Y294enlvWTFMTU5YQlNLbWFRZitYZnNaa1QyZk40NmdhVFpBa2NmeTlHTVBa?=
 =?utf-8?B?VUppVmwvWmpIdno2ZW5yZzU3TyszaTQ0RjJKdWt0TjZhenBxRW5oam13TzNL?=
 =?utf-8?B?Ui9FVTF1Yy9kV2NjekJteDl6RG9LS1FIOFplSGlpbnJnbVgzVkcrYnpwcHhU?=
 =?utf-8?B?am1tNWZqdU1tdjFleGFKdEVEQ2dWYUk5amxiZzlhZFdkRFgraC8xSStPVGNI?=
 =?utf-8?B?Wi9RQUZ4T3Q4R2hjeEx5UStQNTYrK3NwMUtOeGt1MEFZSHNTWUtvbVV2TXp5?=
 =?utf-8?B?WEltaVpVTms3M25GV3Y0VTBvNGw4U1BjNTdGWTJRQ1RsVzlYaHgzMEJkL2xt?=
 =?utf-8?B?cUE5ekVweTBoaDd2RG92d0FnOWRoYlZFMm5ad2tEdUlpZnYzNDAvNFZsZEpS?=
 =?utf-8?B?QTA4RFl6T1BROTQyODh3QzRVTnVVb3o3bERZMzhqLzMyRXliRElGZTlIdFNk?=
 =?utf-8?B?NmpkalNsNFphaFV3dWZSWnFzd0FPSXZ6NUJRSEZOT3llTVNWSUdDZzhSZmov?=
 =?utf-8?B?TkJJOTJZOStpMWN6bk12Wng0NGp5bFRMQmt4UUZyQjExVmx6eHJCbGwwWnJX?=
 =?utf-8?B?eEMzNWNFc1hXRU1lM2tVUkRnTkpDZVlKd2pXTTNOTlhJbHRXNEVZNDhVNFM0?=
 =?utf-8?B?WWYrRTVLR3A0OGx2U3BmTGk2VXJJelc3bkxIakV2ZkpESnNiYU0zK3UwdW9z?=
 =?utf-8?B?eXgzZ1o0OVh5bXZHeDZsRU5sOVFXeDZJTEdqb1JuUHdLOU9EeTJ3WFFBUmJ3?=
 =?utf-8?Q?pGrWK+wHTcJ9gCjpw9vlbHySQ?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 82b16f0b-9230-440d-3632-08dbd09790e4
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Oct 2023 11:35:59.3886
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: yKWlj+81deOdNjYA5GJn4NlLgmbUMvcmF0+Nhf9bA6eWIVsuAcVuyAqmHn+zCEfAA+Dqru54YO7u76EHa8mPlw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU2PR04MB8679

On 14.09.2023 16:56, Oleksii Kurochko wrote:
> --- /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>

No need for this, I don't think?

> +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;

Just "return 0"?

Jan


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 11:38:47 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 11:38:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619253.964039 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtRMT-0001CF-EN; Thu, 19 Oct 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 619253.964039; Thu, 19 Oct 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 1qtRMT-0001C8-Bg; Thu, 19 Oct 2023 11:38:45 +0000
Received: by outflank-mailman (input) for mailman id 619253;
 Thu, 19 Oct 2023 11: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=yz61=GB=suse.com=jgross@srs-se1.protection.inumbo.net>)
 id 1qtRMS-0001Bz-Ta
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 11:38:45 +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 0e0196a3-6e74-11ee-9b0e-b553b5be7939;
 Thu, 19 Oct 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 0B7B21F38C;
 Thu, 19 Oct 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 D9A56139C2;
 Thu, 19 Oct 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 hFSLM0EVMWWrIgAAMHmgww
 (envelope-from <jgross@suse.com>); Thu, 19 Oct 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: 0e0196a3-6e74-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1697715522; 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=qzJ6TJbI9vJZwCZlDe5dCpDP4jbNYRA3VOgITl7b3o4=;
	b=Uh1bc4ayU+nVAzX1MA08mMS2ubkNiUBgE5Lfx4sp1CcV9qkpvNR0LuBzN3yz0xSNtN3qz+
	vJbrJoqqVfYzSxmjbrvEtriIXAjFg7Mkw1yK/4nv1zA5Ms0ZYOXMFYZMGgfdJ7mc+Rv/Lu
	Ayj8/r37L1WUYJxTN+TFDbD9tRB7Yek=
Message-ID: <1f8183eb-65cc-41b6-bd91-d1075757b366@suse.com>
Date: Thu, 19 Oct 2023 13:38:41 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH] xen/sched: fix sched_move_domain()
Content-Language: en-US
To: Henry Wang <Henry.Wang@arm.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 George Dunlap <george.dunlap@citrix.com>, Dario Faggioli <dfaggioli@suse.com>
References: <20231019112314.22665-1-jgross@suse.com>
 <F1CDF477-9003-45F9-83E8-2122413AB514@arm.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: <F1CDF477-9003-45F9-83E8-2122413AB514@arm.com>
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature";
 boundary="------------OqmMUqC304sT0nLmXWw4yeKi"
Authentication-Results: smtp-out2.suse.de;
	none
X-Spam-Level: 
X-Spam-Score: -8.99
X-Spamd-Result: default: False [-8.99 / 50.00];
	 ARC_NA(0.00)[];
	 TO_DN_EQ_ADDR_SOME(0.00)[];
	 XM_UA_NO_VERSION(0.01)[];
	 FROM_HAS_DN(0.00)[];
	 RCPT_COUNT_THREE(0.00)[4];
	 TO_DN_SOME(0.00)[];
	 TO_MATCH_ENVRCPT_ALL(0.00)[];
	 MIME_GOOD(-0.20)[multipart/signed,multipart/mixed,text/plain];
	 HAS_ATTACHMENT(0.00)[];
	 RCVD_VIA_SMTP_AUTH(0.00)[];
	 BAYES_HAM(-3.00)[100.00%];
	 NEURAL_HAM_LONG(-3.00)[-1.000];
	 DKIM_SIGNED(0.00)[suse.com:s=susede1];
	 NEURAL_HAM_SHORT(-1.00)[-1.000];
	 MIME_BASE64_TEXT(0.10)[];
	 SIGNED_PGP(-2.00)[];
	 FROM_EQ_ENVFROM(0.00)[];
	 MIME_TRACE(0.00)[0:+,1:+,2:+,3:+,4:~,5:~];
	 RCVD_COUNT_TWO(0.00)[2];
	 RCVD_TLS_ALL(0.00)[];
	 MID_RHS_MATCH_FROM(0.00)[];
	 MIME_UNKNOWN(0.10)[application/pgp-keys]
X-Spam-Flag: NO

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--------------OqmMUqC304sT0nLmXWw4yeKi
Content-Type: multipart/mixed; boundary="------------jvFoVQDNsSWL29d0XMA119a9";
 protected-headers="v1"
From: Juergen Gross <jgross@suse.com>
To: Henry Wang <Henry.Wang@arm.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 George Dunlap <george.dunlap@citrix.com>, Dario Faggioli <dfaggioli@suse.com>
Message-ID: <1f8183eb-65cc-41b6-bd91-d1075757b366@suse.com>
Subject: Re: [PATCH] xen/sched: fix sched_move_domain()
References: <20231019112314.22665-1-jgross@suse.com>
 <F1CDF477-9003-45F9-83E8-2122413AB514@arm.com>
In-Reply-To: <F1CDF477-9003-45F9-83E8-2122413AB514@arm.com>

--------------jvFoVQDNsSWL29d0XMA119a9
Content-Type: multipart/mixed; boundary="------------5KRz405KTaJFwc4dDhD0Uhlg"

--------------5KRz405KTaJFwc4dDhD0Uhlg
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: base64

T24gMTkuMTAuMjMgMTM6MzEsIEhlbnJ5IFdhbmcgd3JvdGU6DQo+IEhpIEp1ZXJnZW4sDQo+
IA0KPj4gT24gT2N0IDE5LCAyMDIzLCBhdCAxOToyMywgSnVlcmdlbiBHcm9zcyA8amdyb3Nz
QHN1c2UuY29tPiB3cm90ZToNCj4+DQo+PiBXaGVuIG1vdmluZyBhIGRvbWFpbiBvdXQgb2Yg
YSBjcHVwb29sIHJ1bm5pbmcgd2l0aCB0aGUgY3JlZGl0Mg0KPj4gc2NoZWR1bGVyIGFuZCBo
YXZpbmcgbXVsdGlwbGUgcnVuLXF1ZXVlcywgdGhlIGZvbGxvd2luZyBBU1NFUlQoKSBjYW4N
Cj4+IGJlIG9ic2VydmVkOg0KPj4NCj4+IChYRU4pIFhlbiBjYWxsIHRyYWNlOg0KPj4gKFhF
TikgICAgWzxmZmZmODJkMDQwMjNhNzAwPl0gUiBjcmVkaXQyLmMjY3NjaGVkMl91bml0X3Jl
bW92ZSsweGUzLzB4ZTcNCj4+IChYRU4pICAgIFs8ZmZmZjgyZDA0MDI0NmFkYj5dIFMgc2No
ZWRfbW92ZV9kb21haW4rMHgyZjMvMHg1YjENCj4+IChYRU4pICAgIFs8ZmZmZjgyZDA0MDIz
NGNmNz5dIFMgY3B1cG9vbC5jI2NwdXBvb2xfbW92ZV9kb21haW5fbG9ja2VkKzB4MWQvMHgz
Yg0KPj4gKFhFTikgICAgWzxmZmZmODJkMDQwMjM2MDI1Pl0gUyBjcHVwb29sX21vdmVfZG9t
YWluKzB4MjQvMHgzNQ0KPj4gKFhFTikgICAgWzxmZmZmODJkMDQwMjA2NTEzPl0gUyBkb21h
aW5fa2lsbCsweGE1LzB4MTE2DQo+PiAoWEVOKSAgICBbPGZmZmY4MmQwNDAyMzJiMTI+XSBT
IGRvX2RvbWN0bCsweGU1Zi8weDE5NTENCj4+IChYRU4pICAgIFs8ZmZmZjgyZDA0MDIyNzZi
YT5dIFMgdGltZXIuYyN0aW1lcl9sb2NrKzB4NjkvMHgxNDMNCj4+IChYRU4pICAgIFs8ZmZm
ZjgyZDA0MDJkYzcxYj5dIFMgcHZfaHlwZXJjYWxsKzB4NDRlLzB4NGE5DQo+PiAoWEVOKSAg
ICBbPGZmZmY4MmQwNDAyMDEyYjc+XSBTIGxzdGFyX2VudGVyKzB4MTM3LzB4MTQwDQo+PiAo
WEVOKQ0KPj4gKFhFTikNCj4+IChYRU4pICoqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioNCj4+IChYRU4pIFBhbmljIG9uIENQVSAxOg0KPj4gKFhFTikgQXNzZXJ0
aW9uICdzdmMtPnJxZCA9PSBjMnJxZChzY2hlZF91bml0X21hc3Rlcih1bml0KSknIGZhaWxl
ZCBhdCBjb21tb24vc2NoZWQvY3JlZGl0Mi5jOjExNTkNCj4+IChYRU4pICoqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioNCj4+DQo+PiBUaGlzIGlzIGhhcHBlbmlu
ZyBhcyBzY2hlZF9tb3ZlX2RvbWFpbigpIGlzIHNldHRpbmcgYSBkaWZmZXJlbnQgY3B1DQo+
PiBmb3IgYSBzY2hlZHVsaW5nIHVuaXQgd2l0aG91dCB0ZWxsaW5nIHRoZSBzY2hlZHVsZXIu
IFdoZW4gdGhpcyB1bml0IGlzDQo+PiByZW1vdmVkIGZyb20gdGhlIHNjaGVkdWxlciwgdGhl
IEFTU0VSVCgpIHdpbGwgdHJpZ2dlci4NCj4+DQo+PiBJbiBub24tZGVidWcgYnVpbGRzIHRo
ZSByZXN1bHQgaXMgdXN1YWxseSBhIGNsb2JiZXJlZCBwb2ludGVyLCBsZWFkaW5nDQo+PiB0
byBhbm90aGVyIGNyYXNoIGEgc2hvcnQgdGltZSBsYXRlci4NCj4+DQo+PiBGaXggdGhhdCBi
eSBzd2FwcGluZyB0aGUgdHdvIGludm9sdmVkIGFjdGlvbnMgKHNldHRpbmcgYW5vdGhlciBj
cHUgYW5kDQo+PiByZW1vdmluZyB0aGUgdW5pdCBmcm9tIHRoZSBzY2hlZHVsZXIpLg0KPj4N
Cj4+IENjOiBIZW5yeSBXYW5nIDxIZW5yeS5XYW5nQGFybS5jb20+DQo+IA0KPiBFbW1tLCBJ
IHRoaW5rIF4gdGhpcyBDQyBpcyBiZXR0ZXIgdG8gbWUgbW92ZWQgdG8gdGhlIHNjaXNzb3Jz
IGxpbmUsIG90aGVyd2lzZQ0KPiBpZiB0aGlzIHBhdGNoIGlzIGNvbW1pdHRlZCwgdGhpcyBs
aW5lIHdpbGwgYmUgc2hvd24gaW4gdGhlIGNvbW1pdCBtZXNzYWdlLi4uDQo+IA0KPj4gRml4
ZXM6IDcwZmFkYzQxNjM1YiAoInhlbi9jcHVwb29sOiBzdXBwb3J0IG1vdmluZyBkb21haW4g
YmV0d2VlbiBjcHVwb29scyB3aXRoIGRpZmZlcmVudCBncmFudWxhcml0eSIpDQo+PiBTaWdu
ZWQtb2ZmLWJ5OiBKdWVyZ2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+DQo+PiAtLS0NCj4+
IFRoaXMgZml4ZXMgYSByZWdyZXNzaW9uIGludHJvZHVjZWQgaW4gWGVuIDQuMTUuIFRoZSBm
aXggaXMgdmVyeSBzaW1wbGUNCj4+IGFuZCBpdCB3aWxsIGFmZmVjdCBvbmx5IGNvbmZpZ3Vy
YXRpb25zIHdpdGggbXVsdGlwbGUgY3B1cG9vbHMuIEkgdGhpbmsNCj4+IHdoZXRoZXIgdG8g
aW5jbHVkZSBpdCBpbiA0LjE4IHNob3VsZCBiZSBkZWNpZGVkIGJ5IHRoZSByZWxlYXNlIG1h
bmFnZXINCj4+IGJhc2VkIG9uIHRoZSBjdXJyZW50IHN0YXRlIG9mIHRoZSByZWxlYXNlIChJ
IHRoaW5rIEkgd291bGRuJ3QgaGF2ZQ0KPj4gYWRkZWQgaXQgdGhhdCBsYXRlIGluIHRoZSBy
ZWxlYXNlIHdoaWxlIGJlaW5nIHRoZSByZWxlYXNlIG1hbmFnZXIpLg0KPiANCj4gVGhhbmtz
IGZvciB0aGUgcmVtaW5kZXIgOikNCj4gDQo+IFBsZWFzZSBjb3JyZWN0IG1lIGlmIEkgYW0g
d3JvbmcsIGlmIHRoaXMgaXMgZml4aW5nIHRoZSByZWdyZXNzaW9uIGludHJvZHVjZWQgaW4N
Cj4gNC4xNSwgc2hvdWxkbuKAmXQgdGhpcyBwYXRjaCBiZWluZyBiYWNrcG9ydGVkIHRvIDQu
MTUsIDQuMTYsIDQuMTcgYW5kIHNvb24NCj4gNC4xOD8gU28gaG9uZXN0bHkgSSB0aGluayBh
dCBsZWFzdCBmb3IgNC4xOCBlaXRoZXIgYWRkIHRoaXMgcGF0Y2ggbm93IG9yDQo+IGxhdGVy
IHdvbuKAmXQgbWFrZSBtdWNoIGRpZmZlcmVuY2XigKZJIGFtIG9rIGVpdGhlciB3YXkgSSBn
dWVzcy4NCg0KWW91IGFyZSByaWdodCwgdGhlIHBhdGNoIG5lZWRzIHRvIGJlIGJhY2twb3J0
ZWQuDQoNCk9UT0ggbm9ib2R5IG5vdGljZWQgdGhlIHJlZ3Jlc3Npb24gdW50aWwgYSBmZXcg
ZGF5cyBhZ28uIFNvIGRlbGF5aW5nIHRoZSBmaXgNCmZvciBhIGZldyB3ZWVrcyB3b3VsZCBw
cm9iYWJseSBub3QgaHVydCB0b28gbWFueSBwZW9wbGUuIEVhY2ggcGF0Y2ggY2hhbmdpbmcN
CmNvZGUgaXMgYSByaXNrIHRvIGludHJvZHVjZSBhbm90aGVyIHJlZ3Jlc3Npb24sIHNvIGl0
cyB5b3VyIGRlY2lzaW9uIHdoZXRoZXINCnlvdSB3YW50IHRvIHRha2UgdGhpcyByaXNrLiBF
c3BlY2lhbGx5IGNoYW5nZXMgbGlrZSB0aGlzIG9uZSB0b3VjaGluZyB0aGUNCmNvcmUgc2No
ZWR1bGluZyBjb2RlIGFsd2F5cyBoYXZlIGEgbGF0ZW50IHJpc2sgdG8gb3BlbiB1cCBhIHNt
YWxsIHJhY2Ugd2luZG93DQoodGhpcyBjb3VsZCBiZSBzYWlkIGZvciB0aGUgb3JpZ2luYWwg
cGF0Y2ggSSdtIGZpeGluZyBoZXJlLCB0b28gOi0pICkuDQoNCg0KSnVlcmdlbg0K
--------------5KRz405KTaJFwc4dDhD0Uhlg
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-----

--------------5KRz405KTaJFwc4dDhD0Uhlg--

--------------jvFoVQDNsSWL29d0XMA119a9--

--------------OqmMUqC304sT0nLmXWw4yeKi
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/Ey8FAmUxFUEFAwAAAAAACgkQsN6d1ii/Ey/b
FAf/a2uCjPLJHjG6TUtXgLHwPBZYqPWCjaq2w8SuaXayA0HCqQ512V4Q4Rnt85oahy8n9e9tM19Z
H5UE4imYUmkeMB0MD2bd8EKoRzqktKjMcbmfiKmhryZK3EeD0iA5yD0r54WKRWn81Ap7Z3kMY6Ru
10R/Psrg1MxJm8SuzeVEyry+oTQM9WITFXOxEsxCQmJdP07TAPScksCffq70RsbwOGNXzLIPEDp2
YS6hwxV+wYRyJyhh0A15EMmYYEZdvQhme5kAn6uoHRLVySqQwYfPL8xSk59dZAz5Wm0QN+w9NBI8
5oTtlglGIlUtH50Cu7rO7hwwCC31mDbODl/c/jxZlQ==
=diOI
-----END PGP SIGNATURE-----

--------------OqmMUqC304sT0nLmXWw4yeKi--


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 11:41:31 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 11:41:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619256.964049 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtRP0-0003O4-Rh; Thu, 19 Oct 2023 11:41:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619256.964049; Thu, 19 Oct 2023 11:41: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 1qtRP0-0003Nx-Oy; Thu, 19 Oct 2023 11:41:22 +0000
Received: by outflank-mailman (input) for mailman id 619256;
 Thu, 19 Oct 2023 11:41: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=g4nO=GB=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qtROz-0003Np-Hi
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 11:41:21 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur05on2061c.outbound.protection.outlook.com
 [2a01:111:f400:7d00::61c])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 6bff0acf-6e74-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 13:41:20 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM8PR04MB7875.eurprd04.prod.outlook.com (2603:10a6:20b:236::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.8; Thu, 19 Oct
 2023 11:41:17 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%7]) with mapi id 15.20.6907.022; Thu, 19 Oct 2023
 11:41: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: 6bff0acf-6e74-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Cnln9jq+tfsWL/IBx1+woqLGSQ3kOdUVdkXO87rRpWF+52JTmHAPEM1lwm4L292GBSFjBHkQ3QSc20Vhq5Mm1CKpYnL26Pa7dUu/QheFLXRJbxTD/katdZw2tzHdo2Hp9s6dTrNXQFOk2mP8bMb6tpvP7Vippd7Vw14oBma3gK6BsQHVn38H8mWWSk6wBWy59BGYQ4EnNxGxKl2eONF7LshIIM2yYzdTcXVZl837pciqQi69wWIT+d45td9VSgUhtK/lNXN7z6YZ14FMtFCsWlcjZvjqi+aId7okkd5ypp2FMt0ieRo5KC0ythScDhY0rfGcPml8+kM1aQkAcfyZ8g==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=Uh3FKjZG7FBKjBOKSDJKX7bot77F0rtYHNCF4LUXK8k=;
 b=aP7dQtwHkcGE0PfKtHD+I5Tttoer+fqe4lAcUPjzHxw3zEFPNhYAD1SgnOS98ElkvZEzy779dEZDYcrGBdhEcWs4ZSBRrwyZSVbgTE7OR6gGfFrFCRXvGNZGT7xuPHpWBdcNNUtL4KxEtUKbO/fT8BmMdJAd6lFZhBrAnqeX3JWIlEJNvjrV3bKdi2ILfhPH2UlMNT8WbvMAxMGBxeQsp9YnxoQyyZ9uZpwdMT0AmYvGsI4YuVy5EvpjNc0mCRS5qsoMs+JiegRfnDCJHUQC6HErv755dy26Ow7Dt9fM0fv5FqpOkTyEBniEkUmuLmxUmXdxc/yw7XolwEwbqxIQsA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=Uh3FKjZG7FBKjBOKSDJKX7bot77F0rtYHNCF4LUXK8k=;
 b=yk+LFFAu9vp1r6Jh+OTNlluGId1GWC3Nw45F323h55+gCnZHj8e6udSt9iyl3t2HfHXtlb8JlGd+W4egC9NihgaWXPLtEP4QSes4NkhGWPaQ6N0vPDaeQ/Z+TI1kAWA1O7rjU3eAv8kkabFVJmS4GCPr9GeVABSaGGuPyNo7ZXQ2aEl/dTlxHm740psDWlFF3hr5ppWoXb7CQL+aJ4mV5iAdMV9sWH2FOvdzhnXsRMgkHNd/Zi5PLdq3kzfQuyE7XAr4a2i0AoQqv/k3X0xcbIgzel4VXEr8HOLsEf+Bt/ZLthjq6ZNxB4wO9ibytebmjEId3kS7029v+73c1/u2+Q==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <63392d67-f1af-a53b-59c2-ad4752159726@suse.com>
Date: Thu, 19 Oct 2023 13:41:15 +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 04/29] xen/asm-generic: introduce stub header device.h
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>,
 xen-devel@lists.xenproject.org, Oleksii Kurochko <oleksii.kurochko@gmail.com>
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
 <3cc9ecc3abcd21c5ed7276b01bf5963e6a5fd5e0.1694702259.git.oleksii.kurochko@gmail.com>
 <a20f5783-7ee3-6ed1-d4cf-379c30c64a12@suse.com>
 <9ee7b3c9-de71-4790-815c-8b2859a85465@xen.org>
 <17d9102a-da9d-d41b-6362-1ccfe21b7976@suse.com>
 <5059771d-3842-4a7c-814d-69388179b246@xen.org>
 <61c20f5d-a324-9ece-2140-4d0c775e193c@suse.com>
 <54ac0161-7302-4190-9c6e-273caa652058@xen.org>
 <04fe316e-bc4f-0df8-7771-5be7ca878297@suse.com>
 <3ce85a73-96ab-41c8-8b90-f3899e771845@xen.org>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <3ce85a73-96ab-41c8-8b90-f3899e771845@xen.org>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0284.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:e6::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_|AM8PR04MB7875:EE_
X-MS-Office365-Filtering-Correlation-Id: 589ead9d-61c3-4762-b10a-08dbd0984ecc
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	O+YPR/hlX13VWpyrXh30CMT+4OWd+GiHjP36+Nswt+F5h1HWZoV/NlsPysOWXCd7eL5VX1V/VdI74XasJI+DiaRE4OE7nPlZ0sT1qeuN2R7QIgGFNs0NT8uJqdA+ZfKqj2D4MHtCPAhn0Ou0QHe7/f4NOYPEjejbxFs7UcLccXYq9Llc1cykgAkkZKcBe6o04NswsOucSbz/Cr1cjgXpGJc5tPNnCNwQgICU2Xu1VYvEBi3nxi6hB5Xf3N9r/57yQV77P/tRgEAkMWBqXbzU9KqmpFNsKCqf2KtTmKttqHEwdFUST9RLC6GlJgUVj83guA2CM0aYrTMD6ybgROrZlpTRueG45c3IrxB8SkeW5B2JqcCTMbT2yVUML2MRmBDMLP4BKNjUPULzdDKq+JNfUijUXtf9PyWcOFbcQKrTj7cec8vm2vPSufsyCYeSLGTxD3lJc4vNoymRZ/50eKdGWl6uW9AF/No70SPnj4YtT3AFgvfnZGjmKOBa1+Z4ruKK0kMK+w0+IaJcsZoECfIJbLPe4kCBbCFQSOYBcI8ttwivFQ1/DwjOFfh/jO97lLoUnb1D18Wd1vfwC4ndru0NdIydv10RSo8n9qRX9ZvCSInyfgoKbh47T3H2o4LJtFvdWlVaCHIgr/MtjHnjfEbUptMQnesf4BEaiyBVNlNdy3k=
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)(39860400002)(376002)(396003)(230922051799003)(451199024)(64100799003)(1800799009)(186009)(6506007)(26005)(53546011)(6512007)(41300700001)(5660300002)(478600001)(2906002)(6486002)(6916009)(8676002)(8936002)(66476007)(66556008)(54906003)(316002)(2616005)(4326008)(66946007)(86362001)(31696002)(38100700002)(36756003)(31686004)(66899024)(41533002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?RXFpNFNmaDBhYWwrVVg2bUxTVllZTVlNSC9ZSHVSbVVRUVNNR1FtL0NCNURQ?=
 =?utf-8?B?dGU0K25rTTZoRWJabnVnK21rVEsyWG0wdVd6bnlvQU1ZcXVyTkVqTFRob3Nq?=
 =?utf-8?B?eUJIVk5hUEs2M2NXdVAyUFhIb2VTcjRqVEZXUjZzbFBCZStZM0VkUGdRem5R?=
 =?utf-8?B?T3RDTjdmZ1ZFRUhDUEZ3c1U5RjdLczNGc3VmRUxzakZzREwydDQ0dFNOOHJJ?=
 =?utf-8?B?c3ZaWWh4cW9RNkE5NVltOXhaVXRtNFRYenlwcFJIZ2tlcTN6WG5xUjdiUGRT?=
 =?utf-8?B?YzZ6RFRJMFovOVVUOFhsa21IblZLc2RhcjgzWGxWZy90VUVmeWMxYTFodS9Z?=
 =?utf-8?B?SzJSQVkvUVNHUDJ5RURaV1JRUjVRK1cxc0lBbTkzNEJuT0ptT01HemMwNnBQ?=
 =?utf-8?B?UzBzWnVmMDZNc2NsSVQ4OHdYTlVKekhYekVCc21TbzladjN3RnRwcjFPeFJj?=
 =?utf-8?B?ZmdnSy9KSDdXYWRSQklQZ29GSzNGOGdSeVJBZ3BsTVUvSWdSVmt0WjdIMEN6?=
 =?utf-8?B?NlpzbENkUGtGdnlxakpVaXlxb1hLVG0zWnpBaC9oa0Q0d0RjMjA2YTh4enNu?=
 =?utf-8?B?ZnpZeCtiNUFFV0xNc2pDdDBQZTVRWUdNc0JXUDZRQU5xTVpOMDdOMjdrZTY2?=
 =?utf-8?B?cFFFbHlVVC8xVU9JQlZDYlAwV0hFakdYYmVJWEhObG1lK0dyMmFpTmNOV0Yv?=
 =?utf-8?B?eWpORXZseVNUTWVBTXc3S2EvVWhxZElCcVR3SFh1bC85ME9Jc24zd3Z6c09N?=
 =?utf-8?B?S3c2Y2h5T2FvelF2bnRPamQrUUZDTkEyRS84YTVndXdiNVVsRmw5UkZUdW5O?=
 =?utf-8?B?RDJhUDJHcHhBREJldElrTGx5QVZPZ3Yyb3E2RTBQbjdwTWREVWpxMFZ2akg2?=
 =?utf-8?B?WDI0YW9saExzaG9ESk1uQzV2SCtDaVZoSXc1RDRyRlpzNVhlTUFrMS9XL3No?=
 =?utf-8?B?UmRtNCszUGdIb2JyMGpESkpFcWVLTHJOOTNJbEs2TGdEU1JTSEJKU1VvS3R5?=
 =?utf-8?B?K2MzeDVTaFI5Sk1LOWw2cHd4RnJ5d1gweWJNWUtUVHZ4S2dUWE9NL0Y1UnFl?=
 =?utf-8?B?VmF6VGpjOUk0NkROaHJlOWtBVkVMcmlMcEE4dFFGUXN4VVJLK1NpMnlMOGhR?=
 =?utf-8?B?cCtNMTZ0MmNTUGNxWGloOWRieGJmZDlrbGl4WmF6UWY1OHpUM2RmY2xnNnFY?=
 =?utf-8?B?L3pBcmlMd1VCWGI1dU5TbVA5L0Frak81NUJDaTM4SUQ0NXhpaDkwWXZIeVRU?=
 =?utf-8?B?ckFiNEFWVU50dGRCMnFkMlRLMm5yVm9QWENaaXUvYkZTNmNhT3BKOTJtaktl?=
 =?utf-8?B?TUtzUHlNcWxhVkYwbUtCbmtzRVRWWVRyajd2OGlpRUl2YzF2ZlVIWVhEYStD?=
 =?utf-8?B?NStSZ054U0hrTEpaYnNnOGtxbGxvczZuaGpxbGFEVCtkaTFwK1dRZ0g5RGo2?=
 =?utf-8?B?ZHBnWExOZDhQR05OdUdvNk5Jd2oxalZIZVRsY0FYQVE4Sy9jUWluOFVNc2ha?=
 =?utf-8?B?RFJ1NURCclAzN05yazNac2hlM3Eya3ZMQzN0TTBTUG5oMkMvVXM3emNnSzZB?=
 =?utf-8?B?a1dsZXY5NDZiTWRXMVFkZWFNejQyTTY0NWJZa3UyaWJkSU5xU2pMc0NtRTZu?=
 =?utf-8?B?SWt5dzRDNk1JVkhFNU5BaG1rWjlyNXdiS3p6NHpJTlhOUXdnb25ZMnRCSFp1?=
 =?utf-8?B?UmtMbWpaV0RyTTQzMEVTQWptUktPMDltV2hLTEdWZy9PUTJHSXRNL1QrR0VQ?=
 =?utf-8?B?NzJaWkQyU2ZXZVNuVndUYis3bmR2V1dYRCtZVUZuYnJhV1hGcUovRFNhQng4?=
 =?utf-8?B?VUEzS2FWVWJzVW80Wno1L1RUWkFuQmdjc2JTNVdRZi9JeHBqblRsYnU2U0Q5?=
 =?utf-8?B?SnNqYTIwL0lSeEc4OENDQkREeW1ocVM1Vm81dkVUSWc3d1g2b0FEbHZMNlhi?=
 =?utf-8?B?Tmo4TmNZZWxkZlV2M2hpK2tZUGdsdXYvUytDT3UzWWhnOGh0akJ5MGVXcUI0?=
 =?utf-8?B?YUh3VmVDQ0Jrd3VRcHRNa3VwVnhHdWt3QWJRVUVtSHdKYjlXb2kwT1hnL2Yy?=
 =?utf-8?B?QS9qazNqMU9XVGdyZVZSNFpERERjOEFtRWVWZ0Zkby92TEFuUmk3Z0sxWXcr?=
 =?utf-8?Q?4V7wz+0nm1JJmubOud2EdD/xG?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 589ead9d-61c3-4762-b10a-08dbd0984ecc
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Oct 2023 11:41:17.9774
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: JHeqlN7DLZ8RXq8wcfa2JLNVp16ywcwIgGfbjAnYJra5Y844n4TT8Vb/6RjgVGF/kFfyXtJwq2A2t+mTwtqJYg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8PR04MB7875

On 19.10.2023 13:27, Julien Grall wrote:
> Hi Jan,
> 
> On 19/10/2023 12:14, Jan Beulich wrote:
>> On 19.10.2023 13:07, Julien Grall wrote:
>>>
>>>
>>> On 19/10/2023 12:01, Jan Beulich wrote:
>>>> On 19.10.2023 12:57, Julien Grall wrote:
>>>>> On 19/10/2023 11:53, Jan Beulich wrote:
>>>>>> On 19.10.2023 12:42, Julien Grall wrote:
>>>>>>> On 19/10/2023 10:14, Jan Beulich wrote:
>>>>>>>> On 14.09.2023 16:56, Oleksii Kurochko wrote:
>>>>>>>>> --- /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,
>>>>>>>>> +};
>>>>>>>>
>>>>>>>> Are both of these really generic?
>>>>>>>
>>>>>>> I think can be re-used for RISC-V to have an abstract view a device.
>>>>>>> This is for instance used in the IOMMU code where both PCI and platform
>>>>>>> (here called DT) can be assigned to a domain. The driver will need to
>>>>>>> know the difference, but the common layer doesn't need to.
>>>>>>
>>>>>> Question to me is whether DT and PCI can be considered "common", which
>>>>>> is a prereq for being used here.
>>>>>
>>>>> I think it can. See more below.
>>>>>
>>>>>>
>>>>>>>>> +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,
>>>>>>>>
>>>>>>>> This one certainly is Arm-specific.
>>>>>>>
>>>>>>> This could be renamed to DEVICE_IC (or INTERRUPT_CONTROLLER)
>>>>>>>
>>>>>>>>
>>>>>>>>> +    DEVICE_PCI_HOSTBRIDGE,
>>>>>>>>
>>>>>>>> And this one's PCI-specific.
>>>>>>>
>>>>>>> Are you suggesting to #ifdef it? If so, I don't exactly see the value here.
>>>>>>
>>>>>> What to do with it is secondary to me. I was questioning its presence here.
>>>>>>
>>>>>>>> Overall same question as before: Are you expecting that RISC-V is going to
>>>>>>>> get away without a customized header? I wouldn't think so.
>>>>>>>
>>>>>>> I think it can be useful. Most likely you will have multiple drivers for
>>>>>>> a class and you may want to initialize certain device class early than
>>>>>>> others. See how it is used in device_init().
>>>>>>
>>>>>> I'm afraid I don't see how your reply relates to the question of such a
>>>>>> fallback header being sensible to have, or whether instead RISC-V will
>>>>>> need its own private header anyway.
>>>>>
>>>>> My point is that RISC-V will most likely duplicate what Arm did (they
>>>>> are already copying the dom0less code). So the header would end up to be
>>>>> duplicated. This is not ideal and therefore we want to share the header.
>>>>>
>>>>> I don't particularly care whether it lives in asm-generic or somewhere.
>>>>> I just want to avoid the duplication.
>>>>
>>>> Avoiding duplication is one goal, which I certainly appreciate. The header
>>>> as presented here is, however, only a subset of Arm's if I'm not mistaken.
>>>> If moving all of Arm's code here, I then wonder whether that really can
>>>> count as "generic".
>>>
>>>   From previous discussion, I recalled that we seemed to agree that if
>>> applies for most the architecture, then it should be considered common.
>>
>> Hmm, not my recollection - a certain amount of "does this make sense from
>> an abstract perspective" should also be applied.
>>
>>>> Avoiding duplication could e.g. be achieved by making RISC-V symlink Arm's
>>>> header.
>>>
>>> Ewwwwww. Removing the fact I dislike it, I can see some issues with this
>>> approach in term of review. Who is responsible to review for any changes
>>> here? Surely, we don't only want to the Arm folks to review.
>>
>> That could be achieved by an F: entry in the RISC-V section of ./MAINTAINERS.
> 
> This works for one arch. But if PPC needs the same, then this is another 
> symbolic link.
> 
> At which point, how would this be different from asm-generic? We need to 
> have a way to share common headers

... which are sufficiently arch-agnostic.

> that doesn't involve one arch to symlink headers from another arch.

Whether to use symlinks or #include "../../arch/..." or yet something else is
a matter of mechanics.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 11:45:42 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 11:45:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619260.964060 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtRTA-0006gX-CG; Thu, 19 Oct 2023 11:45:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619260.964060; Thu, 19 Oct 2023 11:45: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 1qtRTA-0006gQ-8v; Thu, 19 Oct 2023 11:45:40 +0000
Received: by outflank-mailman (input) for mailman id 619260;
 Thu, 19 Oct 2023 11:45: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=g4nO=GB=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qtRT9-0006cw-Es
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 11:45:39 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 (mail-db8eur05on20606.outbound.protection.outlook.com
 [2a01:111:f400:7e1a::606])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 05c5e1e0-6e75-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 13:45:38 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PAWPR04MB9958.eurprd04.prod.outlook.com (2603:10a6:102:380::5)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.22; Thu, 19 Oct
 2023 11:45:36 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%7]) with mapi id 15.20.6907.022; Thu, 19 Oct 2023
 11: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: 05c5e1e0-6e75-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=BuI85PPti6YIAYnjE95yuDnehOAf5Y19EaF42r4gMnpqUpRLhpyHPJ/P6hYMmQ5Vuy4xxMWA39LgF/SOZI5y8kopwiBVChCrl6kSgSEx6+onbkoPBvp8g0+nLMufnYpLgbvCrf1MqzIEHIcKRHlLUoYjUm4WPUPK2Jw1hUidxKto0xNgPa7Wm1QPmElud9H2KyY5vdgQOVUjDcpeAnpeqvtIR43h7/3g5syp3EJJTquPZlL13yP14P2GRsUntBAEhAdJUf/6b75v0GbfBwB5q5LQA/xyCvg2i1o7jCVSmw55MOFAa/P0/s4DwxIwF3wBFBCttgvu14t/QaXlVBTmQg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=7GlvpTOHiSo+w+OjXg2GACEazVVU3JeFmQjRK4NWK0Y=;
 b=BPtsHbbEipKaLUOCzxOfjVZxGOmIdvWCr742jiZzk/KUkjlsRGyBLSNg/F64DjmRnrexjIHU8GH6kHkOH2zxsD1VVWGzeqHw/gI5t1cfa/AFOOip6oaKrU8+rLVkOWsYwQ4SY2xbQsTh3HAVI3Gbn3YajNg0K3YHdhMgY8mkPbd5EVUfZJ7p9DAaSMLgdYpjStJB++wdYdZQ0IWoO9ozRKZRsXJwDv4xyX9JlZGzZKv0bhuR1+4C+Jb0S3saiwqDwOnIeHhW80DsEdK/NMjTrbfNunkrHq5ttzGTduDGeEjPumHC9N9hXLwEWnKXW8RKXa6nKAveQ6qi2tkVrxaLDw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=7GlvpTOHiSo+w+OjXg2GACEazVVU3JeFmQjRK4NWK0Y=;
 b=KhUtrO6fa32Y6o1CGv7oneE+wOW2WYMbw7m6f1TmMun5QBWEIBgCl6wnHGQ+Q7xUBZ2tf4wZWHniH8kVbY9883TKURUz2Dg+5UZ5i9oJUgkpxhE1ttiLK+Doch/UAOPOxAxbzxPS96xgkXFPC+sGxw/h48rv8Zq+oFW0dieBP7KAREqO3rF3MDKn5g6mBGqTc1PCVl2ncQXscd2Tp7CDkBxphaMaCpe7HPHPSalWykUkOR2FYK+Fkfm/g+jJSxFPgfMkxzCMOcrDUwPrqv+HhOAGFkh1Abjcw0rsIhgNBH9xHnN4DaqDZrLALjnNiqabbWXyGplljc5zxnTUXxwDgQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <f7904a76-8793-14b8-2c0c-3660c2965287@suse.com>
Date: Thu, 19 Oct 2023 13:45: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 v1 27/29] xen/asm-generic: introduce stub header numa.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>
 <102c2a155cc7b14f0a8ea8049672f1d5ecbcd0e5.1694702259.git.oleksii.kurochko@gmail.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <102c2a155cc7b14f0a8ea8049672f1d5ecbcd0e5.1694702259.git.oleksii.kurochko@gmail.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR5P281CA0027.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:f1::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_|PAWPR04MB9958:EE_
X-MS-Office365-Filtering-Correlation-Id: c0b26bdf-50c8-4b3e-c5af-08dbd098e898
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	umUjzoA2Ry1bYGMJUFt2xMPqqGg5vG8aAb2+YLowBOP1lOMux2k8U4G7mFrFuBJKbu1t3lCnWl0Us7ho/qjgQKgxIgn1akpSa9QwZBNa9EFGYmFwc/GU24PPTQmhm1yiIVGlKiTCDTMY+KjKVI0ZmVeGujJPzAl/BJ3f8Kq8QDDuOiZVFP/p2JMABlBV8HvzYlE2DyVBVWcbrT/k4bz91FI16rBItj26zl4yt1lt5UfJCU9ASyraiw6BDDofQhi1k394/1ue1RI6UtgBmjpttgnLjMUXaMdl8mQyvpBYsbgDDqswbaAwoammlzTTcX0b5mBG1gUfYCokJJmMwbWTkK3TkLpqrGiy63pFXq25LLklXEMDiMzxPp9CQZcnnYIwoOahvU1joN7G10VsRLB7PPXJ2Qg+1TkW3eW1zZLgA+J/HjmpcszLzoweTYBhc68aGHIgk4OoXnuHKh/fiA7YBrtldvluP225Qfu7DZ102cgbvXuhkfa6VJ0ITsegAJ7HlTIVzZGPptbLg7KWkX0huBPUssFbQR2QL6znXSQI7uhaBQWtZgDYpIfKY0MU47E9g0Vqcz3izGd2nnDN8lPvQIMjajmiU+tVz8IVQ0iu74WZKYl1nnPLGnqrLdN+t68XkfpQKC4clbJfsUxFxvUydrKwg0XpCYJEuIEyprvYGU4=
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)(376002)(346002)(230922051799003)(1800799009)(64100799003)(186009)(451199024)(6512007)(6506007)(53546011)(2616005)(31686004)(26005)(83380400001)(6666004)(6486002)(478600001)(316002)(5660300002)(36756003)(41300700001)(86362001)(38100700002)(8676002)(31696002)(2906002)(4326008)(8936002)(4744005)(66556008)(66476007)(66946007)(6916009)(54906003)(41533002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?dUpuWHB3cVR2NC9NUVhLb1cyd0FtOEZXVW1mc0tBSWl4bkx2dGFiK3BmZjZN?=
 =?utf-8?B?aTArVmlqWW9JYmtIUjZpWEhwRDVLOGtoaXJBMS8rbzJmeXBXT3h1SHFJL2xs?=
 =?utf-8?B?UGpnVUFnSFdBNkxwRERzZmo4YzZYNWZudjlWN1crZjdJUXJLQWd1N01zRGtW?=
 =?utf-8?B?dXhWTWk4T2NIT1NvNDF6a09hbzR2aDhEUHppSUFJSE5oR29LbCtTaFVlMXEy?=
 =?utf-8?B?c2xVYnM4Q1lYNUROZTE0RUMrdnM0T2Y1Q0U0ME1RYWt1NERxcHJOTWV5NWFw?=
 =?utf-8?B?Z1hwekNJRkhnZVVEVDBha3U1VG5acTFPeTdWWWNyZTE1cDJDeXoweWhNQWJi?=
 =?utf-8?B?UUJnQjlOVW5OR29xaFhndnQvR2E0SkNlVzhkR29iWlg3UVA4dFQ5VlVETWtQ?=
 =?utf-8?B?YWd0ZTZ5SVFTMklpcXdhZ2pHU2xNblRJeU8zKy9SY28rUGFxTDFIUlR1Yjlz?=
 =?utf-8?B?QTc5ZnJyeFNaSVFMRE84QVVUelg0Nkl2SSsxV2h1ang4RHFVbFVXRVJ2ZWha?=
 =?utf-8?B?M25rOUpCamltQ3Y0RUovcHFwTjZhdm5hUXB3NnIxbWpWWDF2S203WkRNcHhk?=
 =?utf-8?B?cHZuR2RURlJZQ3MwWVZRajhMdEw2Z09OMnh6VEw4U3FyTFlNUFAwaHpxZ2lH?=
 =?utf-8?B?Y1lUOHVTNGFoVWNsUHR0TGpoTzFRRFVaakhzUUFGemcxUnJpUk5ZSW04TjZj?=
 =?utf-8?B?UFlyTEtYV3N4OGtVOFB6RVVPREtCekVGRjlGVnFiSkNSSmF6QlNtZDFXYkZD?=
 =?utf-8?B?NVYwbW1Yc3I5czM1cnV4RGNCdlZ0WitPTHc3YUlKL0RNWjRjdVdPaUtqYWVr?=
 =?utf-8?B?OTM0TlNYeGtqc280QnNhRG1BaW5jQ25kV3RzcXlwOUdnY3ArVGNMakJpUGpp?=
 =?utf-8?B?YVFiSU1CbGlmbFAvU2tkcng2bEhmd1NvNU43UFlud2MxU1B4MG04dnFIcE8w?=
 =?utf-8?B?WktaY0dCcUFhcFhjUFUxcXZRSVdaSWhMZEl2dnJJRGtUUFhteVVSUUEwUnFQ?=
 =?utf-8?B?dHZRNjc3bXB6WFRnYXlwY3Jqc2h2dVc4eExudUpxcEZKeGxKbk9vTTRJMnJK?=
 =?utf-8?B?dU9JcE1xK0FXRE1iR2dRR3BXUWo0YTdmVUZvTVBxcm82VWxhdy82enZlSVlW?=
 =?utf-8?B?ZTV1WElGTk8yYTVQL2xmbHYwNVRNRVd3STE3WVpRdjB2Z1pud3MrQmJsdlVG?=
 =?utf-8?B?OGdwQlVDVnFvNWRhL2pUY1c2QkJpSFN2K1ZCVWFLNUpjUTQrTEZUZ3d5SmJo?=
 =?utf-8?B?a0piTE9IQk4vY3V3RFBhKzF3TW05VEVDRUg2WlFLWm0wK1N2c3lTakgyemFr?=
 =?utf-8?B?Z1hQR05WWTlVMGl3Tndhd29ibWY0dWg1ZmdxSk5GWU13TnBjdkZ2NFJXOEpR?=
 =?utf-8?B?MGlTZFhMU2phWDFuMkRWOEo2a0ZVNkxBNlhJcjVRNWZBekVKSXhlR0pWeTJp?=
 =?utf-8?B?UFYvU3psZzIwK0RlMTB1VjBnci9FZUh3TlVGR1hDVmhoYWpMSXZURi9xS0hJ?=
 =?utf-8?B?ZENUSndWUHc2dzBZU2pSRHJ1SW90N2lPaUd6SU9iTHlJYTN0YjlRR0NvbzNw?=
 =?utf-8?B?OVFGaWhZYlloakc5UTAwQjUvbGVmem9POWt0YjU2Z1Y0Z2tIMTBLa3pPTk9v?=
 =?utf-8?B?bUtzQkhlNGlaQ0ZjbHMwQ3lhYUFMU3RLV2llM2p2OWlCVElXVlhiUTUyZjRN?=
 =?utf-8?B?K2FEbk9sNVhJSms2aG9qOEhteFJPb2xTRW43N3UrRnh5TEJIYlNtNzlHRTR0?=
 =?utf-8?B?UmdBQjhSeGRrZUJqUnJXN3phdDZDS1Fxc2xGUVQ1RWpxTStWUVhOcm1IRms2?=
 =?utf-8?B?c05YbThjRmdXaGRIclNPd1E5MWxFbWFlKzMzWnhVZmlxVDBpMmxjbUNxdE5a?=
 =?utf-8?B?M0JVc1AzU2pTT3B5NW5wQ000RDR2SThsNTBuM242TFBsa3RiSHhPVU1FSDgz?=
 =?utf-8?B?OUl6OHVtYnhwcG5MTGhNUW0yb2Nwb1FIWSt0NDBOV2RMeVgzaGU2cDlkelBP?=
 =?utf-8?B?UzdWZFlsZnNpMUZocmg5bG9mbmxUdldxcjU0eitSMXdveC9XTVFBRUxNdzFW?=
 =?utf-8?B?K0tpdlJMbmxaNW84d0V2cEdVaXJzSjlmbzBtdXNQczhJaXNVVlIxa1Z5VFdN?=
 =?utf-8?Q?DDcClBy5NCZacAIfKda7+z5Rh?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: c0b26bdf-50c8-4b3e-c5af-08dbd098e898
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Oct 2023 11:45:36.0309
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: pulsgZOtkRSgzn+KBp33gKa399Q6m467beYmGe8EDwAMj6hMq1bDL5c2aVWDMPInsPfPPud5qnK7Fuk+mz7lgA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAWPR04MB9958

On 14.09.2023 16:56, Oleksii Kurochko wrote:
> --- /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;

If an 8-bit quantity, then uint8_t please.

> +/* Fake one node for now. See also node_online_map. */
> +#define cpu_to_node(cpu) 0
> +#define node_to_cpumask(node)   (cpu_online_map)

Looks like this really is fake NUMA then, with just a single node. That's
certainly in need of expressing in a comment.

> +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)

This also needs commenting, even if it ended up being "arbitrary".

> +static inline unsigned int arch_get_dma_bitsize(void)
> +{
> +    return 32;

Same here.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 11:50:01 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 11:50:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619264.964069 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtRXB-0000mi-09; Thu, 19 Oct 2023 11:49:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619264.964069; Thu, 19 Oct 2023 11:49: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 1qtRXA-0000mb-TM; Thu, 19 Oct 2023 11:49:48 +0000
Received: by outflank-mailman (input) for mailman id 619264;
 Thu, 19 Oct 2023 11:49: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=AWKy=GB=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qtRX9-0000mV-JQ
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 11:49:47 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur04on2084.outbound.protection.outlook.com [40.107.7.84])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 996709ca-6e75-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 13:49:46 +0200 (CEST)
Received: from AS8PR04CA0047.eurprd04.prod.outlook.com (2603:10a6:20b:312::22)
 by AM7PR08MB5479.eurprd08.prod.outlook.com (2603:10a6:20b:104::12)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.23; Thu, 19 Oct
 2023 11:49:16 +0000
Received: from AM2PEPF0001C716.eurprd05.prod.outlook.com
 (2603:10a6:20b:312:cafe::b7) by AS8PR04CA0047.outlook.office365.com
 (2603:10a6:20b:312::22) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.25 via Frontend
 Transport; Thu, 19 Oct 2023 11:49:16 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM2PEPF0001C716.mail.protection.outlook.com (10.167.16.186) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6907.20 via Frontend Transport; Thu, 19 Oct 2023 11:49:14 +0000
Received: ("Tessian outbound 9e011a9ddd13:v215");
 Thu, 19 Oct 2023 11:49:14 +0000
Received: from a3c853deeccc.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 3983F61F-0C36-483A-AB3C-ABA43DFB2EDF.1; 
 Thu, 19 Oct 2023 11:49:08 +0000
Received: from EUR02-DB5-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id a3c853deeccc.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Thu, 19 Oct 2023 11:49:08 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by DU5PR08MB10515.eurprd08.prod.outlook.com (2603:10a6:10:529::18)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.23; Thu, 19 Oct
 2023 11:49:06 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41%4]) with mapi id 15.20.6907.022; Thu, 19 Oct 2023
 11: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>
X-Inumbo-ID: 996709ca-6e75-11ee-98d5-6d05b1d4d9a1
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=PXin2IsumT0ldkqAtVH7Y+bxdFf/GfBf2HlSmfwZ1hA=;
 b=YCcwv5rCYNYI74alw1jgQwI9tQs6sjwQGcsznRLVKP2ZUPmybSigp394uHrPvzj26BSg8VFWSKhIbrcaMkvpmVjXNUayE66rtv/LrlEmka1tpNmMEVhJgN1QZ6R2Vdvxk/C8ZwX9D1X/YRRQJVTNAiKGrgTuFhJJgxLxz4G2Rlo=
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: 478887602acb7ec8
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=XMP6PLzEjroQKNtdiPI03kbqg6MKptpECwBcItQjSX0CWMvUTbocotNl6focW1+N9l6cS765uaGOQ/BPZMcgpQMlNTYsGA/EOI9mTbshqN9cij1IZnYERN393PYpxHialJzibpRwFPoi5VlW8QZy+7j79Udgf3PCJfgeOY0g29zIS8E7k3re8hsjVmKdidMboWFMX+SM3y9et1AYp9oDE9LCNQtgq8tvg1oW77sbRizQ8ae4Fp5UZ17F/T6YgQTchaQE0nvBhOURTUG9Qx8V+q1AV7IBPEpwILZmw4JYu/ToUeF6UA0Xh0XaSpOSUfY135ApgLjlHCEdWOaadpbI3A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=PXin2IsumT0ldkqAtVH7Y+bxdFf/GfBf2HlSmfwZ1hA=;
 b=lp8xmFXbpZSCFsFULHyBJjnjRDaTVPyTnvFaYSI7FIBymGrKgxvnr1IH8Je3g+BRJrlMu3MvwnejS8E6Jas6/KRsWdvrIZ7jkle68F3SJPuNZaF+FxpkLQLRTe9FvgTdnm1Z0cD55CvMxD9cA7PLDTVyakSg11m6QeP+du7MFOWnrfMjqAlVL0X/fAJa5BGxbH/WaZLKzDMVVDIo/UarvUmKEZwS16h5ETLdzF59Rx7ClyXkgGM8BBU0nFf7T0OF/5ELIw12Tz+OANM0nUcvcdHIzecv56dPl8tqyuS9MGvy5pgTLOl1Lt6lIYIUoDC8OhE2ALMODywtd8r2sQb7oQ==
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=PXin2IsumT0ldkqAtVH7Y+bxdFf/GfBf2HlSmfwZ1hA=;
 b=YCcwv5rCYNYI74alw1jgQwI9tQs6sjwQGcsznRLVKP2ZUPmybSigp394uHrPvzj26BSg8VFWSKhIbrcaMkvpmVjXNUayE66rtv/LrlEmka1tpNmMEVhJgN1QZ6R2Vdvxk/C8ZwX9D1X/YRRQJVTNAiKGrgTuFhJJgxLxz4G2Rlo=
From: Henry Wang <Henry.Wang@arm.com>
To: Juergen Gross <jgross@suse.com>
CC: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>, George
 Dunlap <george.dunlap@citrix.com>, Dario Faggioli <dfaggioli@suse.com>
Subject: Re: [PATCH] xen/sched: fix sched_move_domain()
Thread-Topic: [PATCH] xen/sched: fix sched_move_domain()
Thread-Index: AQHaAn6ufpdY+57bqkWZN4b9/h1wsrBQ+nMAgAACLYCAAALdAA==
Date: Thu, 19 Oct 2023 11:49:06 +0000
Message-ID: <83E6DCF6-926C-43A6-94D2-EB3B2C444309@arm.com>
References: <20231019112314.22665-1-jgross@suse.com>
 <F1CDF477-9003-45F9-83E8-2122413AB514@arm.com>
 <1f8183eb-65cc-41b6-bd91-d1075757b366@suse.com>
In-Reply-To: <1f8183eb-65cc-41b6-bd91-d1075757b366@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_|DU5PR08MB10515:EE_|AM2PEPF0001C716:EE_|AM7PR08MB5479:EE_
X-MS-Office365-Filtering-Correlation-Id: ccf98942-7011-4430-16ec-08dbd0996b32
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:
 HQc94hISsuumuCJpwOr2f46FjhSskaK6v9b9WVHu2fgJJ8mlqr91ltyGacwqqurgo/v66gbDEm7uHs8cnGp6j4qZuGYPIfE0NUpVOic13E0YNBal6x7PRcqP5r4TQJvJsHNKd2QJa+CXbzzNa5nTCa0hmJjIyF7Now5SUu3ioHonzBS3/YDehLv4KzdwhzRrr2COI9AxkVYPQL5VFZ23pjiWUK7/VRQGhOJ6kZjwI3UkTcrXdO+X+qmsKYuEul/FlPBY5YzollIO3R5foItMbX+H+QdtnhIGE7bfiiDo03jCPXF0cXvPikG8nrLe0s+idDPFwT8in7qMFg8GU+zn3AFMo21aZaJ0FZZq6V4tzTcPt/vmEJ7ESeLwXw9IC3kZ+xpHNzhcxbIVMLrCXZl49BN9d76sRqn4jimI5KAAW+YDxY+oqJxq4y6A+gmbkDg3Q2RpPfOzJpC6fzuL7FOtYV9qZEfqzislLG8XYteBvQcunkIe54RuM308ZbHxu9JpS/dy6GfnHtB6JjdzBsYNOCzdrgHl5w37RJZaHJFUmnfywaLouXpC65//yevoZxcRVCIWhahKm5fFeeZEx2+sKPbQfBpNwA3BASelcYMFqxWqJyym3Ad68PgQnusd3zOvpfjti58z6SEAN4rsKPxIGg==
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)(39860400002)(396003)(136003)(230922051799003)(1800799009)(451199024)(64100799003)(186009)(83380400001)(66476007)(38100700002)(36756003)(38070700005)(2616005)(122000001)(6512007)(6916009)(86362001)(2906002)(66556008)(316002)(8676002)(41300700001)(76116006)(54906003)(8936002)(66946007)(5660300002)(66446008)(91956017)(4326008)(64756008)(478600001)(6506007)(71200400001)(53546011)(6486002)(33656002)(26005)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <5D49760BF1952247A451B8D2CB3B1ABD@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU5PR08MB10515
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:
 AM2PEPF0001C716.eurprd05.prod.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	6821ad0c-0fea-403d-3079-08dbd0996639
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	BdCskVGqtD11NuSbNTs731ic0X654XrPZRvqAzLxM1LN1/gC06sT44qHmwT6aoV5dCgbcxlxsk+yO+Aj4YSJUvYXj+kHmpeOSpCj6jubg+lqPM5TZ+2/HFcrowvRo2FnDOSz5KDrhArl+vDcF5kpLDR3UvYoOND63fHeztIRcxi/eu7b5kCFOxM8ujkyEzDMFjH3MbWDNWZJU+nA/rytQIToXXGa2a+/BeTiqbTfc+qKAwYV8By36vBjlz+x0fFJXWSQD6FDCeRQxiGRCl2Gwc5nzlHpANAdFzsVpgUMhDSdhq7WmOHnfbBNpc00tM9ZtCnE3FyfEEE+7/i+6YiDdbHeFWZRs7s2QLpeEvL30kDDJFTsn0VCC44ngLy2qvhNgF4OblDArHjcCZNKSkwbvqBgFYunJHBzgQ0Q+0tNXoTFapZMyAs3f6zWg++GlbTIeZWAiycSssRlTjgBkPkcSXzvtZsNLttPGpILxyasjB1XDcK+humPhZqQD03b4IAFYeOMXsO5IGjyIELxypI6gNWuHwrFNXF5AKtWzu15u8PpG0YnEELd9L65/5j09RYnRXCpROaX9sKKx5VpxRBXJ3dhJCwMsljTv9WB9D6K3Z8EmUqJqXYIFuyIc75LXF4EVpOBtHBgGIJx7QArC+ys/Tw/+SIJWTzM8pJ2g7fDodEVIWRpAn37yH/I89hXHEMmMrlxFor2LMzmfpiwkb0xAZlx4o5nijfOBKWRX2CpDbk=
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)(346002)(136003)(376002)(396003)(230922051799003)(82310400011)(1800799009)(64100799003)(186009)(451199024)(36840700001)(46966006)(40470700004)(316002)(70586007)(70206006)(54906003)(5660300002)(8676002)(40460700003)(478600001)(8936002)(6862004)(6486002)(4326008)(40480700001)(82740400003)(83380400001)(81166007)(6512007)(356005)(36860700001)(86362001)(336012)(2906002)(107886003)(33656002)(53546011)(41300700001)(26005)(6506007)(47076005)(2616005)(36756003);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Oct 2023 11:49:14.9294
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: ccf98942-7011-4430-16ec-08dbd0996b32
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:
	AM2PEPF0001C716.eurprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM7PR08MB5479

SGkgSnVlcmdlbiwNCg0KPiBPbiBPY3QgMTksIDIwMjMsIGF0IDE5OjM4LCBKdWVyZ2VuIEdyb3Nz
IDxqZ3Jvc3NAc3VzZS5jb20+IHdyb3RlOg0KPiANCj4gT24gMTkuMTAuMjMgMTM6MzEsIEhlbnJ5
IFdhbmcgd3JvdGU6DQo+PiBIaSBKdWVyZ2VuLA0KPj4+IE9uIE9jdCAxOSwgMjAyMywgYXQgMTk6
MjMsIEp1ZXJnZW4gR3Jvc3MgPGpncm9zc0BzdXNlLmNvbT4gd3JvdGU6DQo+Pj4gDQo+Pj4gV2hl
biBtb3ZpbmcgYSBkb21haW4gb3V0IG9mIGEgY3B1cG9vbCBydW5uaW5nIHdpdGggdGhlIGNyZWRp
dDINCj4+PiBzY2hlZHVsZXIgYW5kIGhhdmluZyBtdWx0aXBsZSBydW4tcXVldWVzLCB0aGUgZm9s
bG93aW5nIEFTU0VSVCgpIGNhbg0KPj4+IGJlIG9ic2VydmVkOg0KPj4+IA0KPj4+IChYRU4pIFhl
biBjYWxsIHRyYWNlOg0KPj4+IChYRU4pICAgIFs8ZmZmZjgyZDA0MDIzYTcwMD5dIFIgY3JlZGl0
Mi5jI2NzY2hlZDJfdW5pdF9yZW1vdmUrMHhlMy8weGU3DQo+Pj4gKFhFTikgICAgWzxmZmZmODJk
MDQwMjQ2YWRiPl0gUyBzY2hlZF9tb3ZlX2RvbWFpbisweDJmMy8weDViMQ0KPj4+IChYRU4pICAg
IFs8ZmZmZjgyZDA0MDIzNGNmNz5dIFMgY3B1cG9vbC5jI2NwdXBvb2xfbW92ZV9kb21haW5fbG9j
a2VkKzB4MWQvMHgzYg0KPj4+IChYRU4pICAgIFs8ZmZmZjgyZDA0MDIzNjAyNT5dIFMgY3B1cG9v
bF9tb3ZlX2RvbWFpbisweDI0LzB4MzUNCj4+PiAoWEVOKSAgICBbPGZmZmY4MmQwNDAyMDY1MTM+
XSBTIGRvbWFpbl9raWxsKzB4YTUvMHgxMTYNCj4+PiAoWEVOKSAgICBbPGZmZmY4MmQwNDAyMzJi
MTI+XSBTIGRvX2RvbWN0bCsweGU1Zi8weDE5NTENCj4+PiAoWEVOKSAgICBbPGZmZmY4MmQwNDAy
Mjc2YmE+XSBTIHRpbWVyLmMjdGltZXJfbG9jaysweDY5LzB4MTQzDQo+Pj4gKFhFTikgICAgWzxm
ZmZmODJkMDQwMmRjNzFiPl0gUyBwdl9oeXBlcmNhbGwrMHg0NGUvMHg0YTkNCj4+PiAoWEVOKSAg
ICBbPGZmZmY4MmQwNDAyMDEyYjc+XSBTIGxzdGFyX2VudGVyKzB4MTM3LzB4MTQwDQo+Pj4gKFhF
TikNCj4+PiAoWEVOKQ0KPj4+IChYRU4pICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioNCj4+PiAoWEVOKSBQYW5pYyBvbiBDUFUgMToNCj4+PiAoWEVOKSBBc3NlcnRpb24g
J3N2Yy0+cnFkID09IGMycnFkKHNjaGVkX3VuaXRfbWFzdGVyKHVuaXQpKScgZmFpbGVkIGF0IGNv
bW1vbi9zY2hlZC9jcmVkaXQyLmM6MTE1OQ0KPj4+IChYRU4pICoqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioNCj4+PiANCj4+PiBUaGlzIGlzIGhhcHBlbmluZyBhcyBzY2hl
ZF9tb3ZlX2RvbWFpbigpIGlzIHNldHRpbmcgYSBkaWZmZXJlbnQgY3B1DQo+Pj4gZm9yIGEgc2No
ZWR1bGluZyB1bml0IHdpdGhvdXQgdGVsbGluZyB0aGUgc2NoZWR1bGVyLiBXaGVuIHRoaXMgdW5p
dCBpcw0KPj4+IHJlbW92ZWQgZnJvbSB0aGUgc2NoZWR1bGVyLCB0aGUgQVNTRVJUKCkgd2lsbCB0
cmlnZ2VyLg0KPj4+IA0KPj4+IEluIG5vbi1kZWJ1ZyBidWlsZHMgdGhlIHJlc3VsdCBpcyB1c3Vh
bGx5IGEgY2xvYmJlcmVkIHBvaW50ZXIsIGxlYWRpbmcNCj4+PiB0byBhbm90aGVyIGNyYXNoIGEg
c2hvcnQgdGltZSBsYXRlci4NCj4+PiANCj4+PiBGaXggdGhhdCBieSBzd2FwcGluZyB0aGUgdHdv
IGludm9sdmVkIGFjdGlvbnMgKHNldHRpbmcgYW5vdGhlciBjcHUgYW5kDQo+Pj4gcmVtb3Zpbmcg
dGhlIHVuaXQgZnJvbSB0aGUgc2NoZWR1bGVyKS4NCj4+PiANCj4+PiBDYzogSGVucnkgV2FuZyA8
SGVucnkuV2FuZ0Bhcm0uY29tPg0KPj4gRW1tbSwgSSB0aGluayBeIHRoaXMgQ0MgaXMgYmV0dGVy
IHRvIG1lIG1vdmVkIHRvIHRoZSBzY2lzc29ycyBsaW5lLCBvdGhlcndpc2UNCj4+IGlmIHRoaXMg
cGF0Y2ggaXMgY29tbWl0dGVkLCB0aGlzIGxpbmUgd2lsbCBiZSBzaG93biBpbiB0aGUgY29tbWl0
IG1lc3NhZ2UuLi4NCj4+PiBGaXhlczogNzBmYWRjNDE2MzViICgieGVuL2NwdXBvb2w6IHN1cHBv
cnQgbW92aW5nIGRvbWFpbiBiZXR3ZWVuIGNwdXBvb2xzIHdpdGggZGlmZmVyZW50IGdyYW51bGFy
aXR5IikNCj4+PiBTaWduZWQtb2ZmLWJ5OiBKdWVyZ2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+
DQo+Pj4gLS0tDQo+Pj4gVGhpcyBmaXhlcyBhIHJlZ3Jlc3Npb24gaW50cm9kdWNlZCBpbiBYZW4g
NC4xNS4gVGhlIGZpeCBpcyB2ZXJ5IHNpbXBsZQ0KPj4+IGFuZCBpdCB3aWxsIGFmZmVjdCBvbmx5
IGNvbmZpZ3VyYXRpb25zIHdpdGggbXVsdGlwbGUgY3B1cG9vbHMuIEkgdGhpbmsNCj4+PiB3aGV0
aGVyIHRvIGluY2x1ZGUgaXQgaW4gNC4xOCBzaG91bGQgYmUgZGVjaWRlZCBieSB0aGUgcmVsZWFz
ZSBtYW5hZ2VyDQo+Pj4gYmFzZWQgb24gdGhlIGN1cnJlbnQgc3RhdGUgb2YgdGhlIHJlbGVhc2Ug
KEkgdGhpbmsgSSB3b3VsZG4ndCBoYXZlDQo+Pj4gYWRkZWQgaXQgdGhhdCBsYXRlIGluIHRoZSBy
ZWxlYXNlIHdoaWxlIGJlaW5nIHRoZSByZWxlYXNlIG1hbmFnZXIpLg0KPj4gVGhhbmtzIGZvciB0
aGUgcmVtaW5kZXIgOikNCj4+IFBsZWFzZSBjb3JyZWN0IG1lIGlmIEkgYW0gd3JvbmcsIGlmIHRo
aXMgaXMgZml4aW5nIHRoZSByZWdyZXNzaW9uIGludHJvZHVjZWQgaW4NCj4+IDQuMTUsIHNob3Vs
ZG7igJl0IHRoaXMgcGF0Y2ggYmVpbmcgYmFja3BvcnRlZCB0byA0LjE1LCA0LjE2LCA0LjE3IGFu
ZCBzb29uDQo+PiA0LjE4PyBTbyBob25lc3RseSBJIHRoaW5rIGF0IGxlYXN0IGZvciA0LjE4IGVp
dGhlciBhZGQgdGhpcyBwYXRjaCBub3cgb3INCj4+IGxhdGVyIHdvbuKAmXQgbWFrZSBtdWNoIGRp
ZmZlcmVuY2XigKZJIGFtIG9rIGVpdGhlciB3YXkgSSBndWVzcy4NCj4gDQo+IFlvdSBhcmUgcmln
aHQsIHRoZSBwYXRjaCBuZWVkcyB0byBiZSBiYWNrcG9ydGVkLg0KPiANCj4gT1RPSCBub2JvZHkg
bm90aWNlZCB0aGUgcmVncmVzc2lvbiB1bnRpbCBhIGZldyBkYXlzIGFnby4gU28gZGVsYXlpbmcg
dGhlIGZpeA0KPiBmb3IgYSBmZXcgd2Vla3Mgd291bGQgcHJvYmFibHkgbm90IGh1cnQgdG9vIG1h
bnkgcGVvcGxlLg0KDQpJIGFtIHBsYW5uaW5nIHRvIGJyYW5jaCBuZXh0IHdlZWssIHNvIEkgd291
bGQgc2F5IHRoaXMgcGF0Y2ggcHJvYmFibHkgd2lsbCBiZQ0KZGVsYXllZCBtYXggMSB3ZWVrIEkg
Z3Vlc3MuDQoNCj4gRWFjaCBwYXRjaCBjaGFuZ2luZw0KPiBjb2RlIGlzIGEgcmlzayB0byBpbnRy
b2R1Y2UgYW5vdGhlciByZWdyZXNzaW9uLCBzbyBpdHMgeW91ciBkZWNpc2lvbiB3aGV0aGVyDQo+
IHlvdSB3YW50IHRvIHRha2UgdGhpcyByaXNrLiBFc3BlY2lhbGx5IGNoYW5nZXMgbGlrZSB0aGlz
IG9uZSB0b3VjaGluZyB0aGUNCj4gY29yZSBzY2hlZHVsaW5nIGNvZGUgYWx3YXlzIGhhdmUgYSBs
YXRlbnQgcmlzayB0byBvcGVuIHVwIGEgc21hbGwgcmFjZSB3aW5kb3cNCj4gKHRoaXMgY291bGQg
YmUgc2FpZCBmb3IgdGhlIG9yaWdpbmFsIHBhdGNoIEknbSBmaXhpbmcgaGVyZSwgdG9vIDotKSAp
Lg0KDQpUaGF0IHNhaWQsIGdpdmVuIHRoZSBmYWN0IHRoYXQgdGhpcyBwYXRjaCBpcyBmaXhpbmcg
YSByZWdyZXNzaW9uIHllYXJzIGFnbyBhbmQNCndpbGwgYmUgYmFja3BvcnRlZCB0byB0aGUgc3Rh
YmxlIHJlbGVhc2VzLCBJIGFtIG1vcmUgbGVhbmluZyB0b3dhcmRzIG1lcmdpbmcNCnRoaXMgcGF0
Y2ggd2hlbiB0aGUgdHJlZSByZW9wZW5zICh1bmxlc3Mgb3RoZXJzIHN0cm9uZ2x5IG9iamVjdCks
IHNvIHRoYXQgdGhpcw0KcGF0Y2ggd2lsbCBnZXQgdGhlIG9wcG9ydHVuaXR5IHRvIGJlIHRlc3Rl
ZCBwcm9wZXJseSwgYW5kIHdlIHdvbuKAmXQgdGFrZSB0b28gbXVjaA0KcmlzayB0byBkZWxheSB0
aGUgNC4xOCByZWxlYXNlLiBBbHNvIHRoaXMgZGVjaXNpb24gaXMgY29uc2lzdGVudCB3aXRoIHlv
dXIgKGFuDQpleCByZWxlYXNlIG1hbmFnZXIpIGFib3ZlIHdvcmRzIGluIHRoZSBzY2lzc29ycyBs
aW5lIDopDQoNCkhvcGVmdWxseSB5b3Ugd2lsbCBhbHNvIGJlIG9rIHdpdGggdGhhdC4NCg0KS2lu
ZCByZWdhcmRzLA0KSGVucnkNCg0KPiANCj4gDQo+IEp1ZXJnZW4NCj4gPE9wZW5QR1BfMHhCMERF
OURENjI4QkYxMzJGLmFzYz4NCg0K


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 11:54:11 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 11:54:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619267.964079 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtRbJ-0002XG-G1; Thu, 19 Oct 2023 11:54:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619267.964079; Thu, 19 Oct 2023 11:54: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 1qtRbJ-0002X9-DK; Thu, 19 Oct 2023 11:54:05 +0000
Received: by outflank-mailman (input) for mailman id 619267;
 Thu, 19 Oct 2023 11:54: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=g4nO=GB=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qtRbI-0002X3-8a
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 11:54:04 +0000
Received: from EUR02-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur02on20630.outbound.protection.outlook.com
 [2a01:111:f400:fe16::630])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 31ad2d64-6e76-11ee-9b0e-b553b5be7939;
 Thu, 19 Oct 2023 13:54:02 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS8PR04MB9176.eurprd04.prod.outlook.com (2603:10a6:20b:44b::7)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.9; Thu, 19 Oct
 2023 11:53:59 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%7]) with mapi id 15.20.6907.022; Thu, 19 Oct 2023
 11:53: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: 31ad2d64-6e76-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=NbpX658C4iyrn7dZBOod++qCSRL66J0KIWrbuRHqqthy5v0L6gv3khEc7cAN4plztHfl9SXNTCpWd57VX+UoyfEEHAhr0RoQz1GP1PUfXZSyzrnkHdtrbAxlyfEV++0WA9cgtB4RjAxOaOoH56tTBqwbOR7zREQZ4yvNN/eb52Fl8P2kl2pNL3Qk2VmpoirCGXgHf70Z0CQw1eGE+f7B6oYavypgdAR+iO3G8c6IILrNIOy++MxQ6wMgzBjZE8QouVFqblKKOfGBUMvadz/L1+/QGX6EkRW9OMSQMbsli1S+9I8yMVeb4X6xJNybXCjhoUAgL0i/AjvGa2fi3QorqA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=0h8t8Bln9ZXhABezXOluNm5YVG/JEWtUZDPGiFLBuCw=;
 b=RXknKmFIk+mAgzHUCjzb1/qA56JVAK2mVxQssDFUxE/wx3Dg/xXrKb9DDEWeT5X0qoWZ7FZRQbaJIcixyOaMMNGqlR5KdFMzWRepYOJDaETtlx2lQud3PI3M4vg3wm96BtZeehwEuGywIvheLBgXbA1KHgbSU4D2lJbbug55VqZWRu3pIqpC/mFNiO7y2CPRmdu1DFY8iSdEzOUO15M/fCygh2cUkaIk4H8DIsd0wWjZTcXicJ2iyBvLg4ZRjAQFjG7855RJdZsz9flyArP4WogTIqQn0kmUtnO4jj8WBouRh0/dgM1BdlIQeS9zmF6JrfAz8OdExDtLy+jDtU9Dpw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=0h8t8Bln9ZXhABezXOluNm5YVG/JEWtUZDPGiFLBuCw=;
 b=IPzATuak96uJoFn/+N7mhilz1ZQtX14+tBXaUfMeDxs5PYSkO3JlfQOBDi3HMnUZk8GDpvIxfw/WcBVtBkK+peacAhUyOtECbTYy2K9ySCCFd4r0FNXSn4A0Dch1I2LUPJ7xVLSTy3sjqHcgSNZ/T057slAiIISzqBtR5dfaCoL2VKSk8xKr7AlffUrsGeKa5XJgLXP6gK2nD5zH7gICkHcpU7Ulz/64CRkwSvo9Zb2GSkTGBKPiGBer7iS7z98w8+eh/x9+hl+y7klNtWY0eWobRx32r8uaNjEg0PcAt5nM4EYL+r7Ly8bS17UMvRqDXaDDqIhXYFRiwqIckIHb/Q==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <19065f09-e278-5471-eff7-1dd3b855a9aa@suse.com>
Date: Thu, 19 Oct 2023 13:53: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 v1 00/57] Enable build of full Xen for RISC-V
Content-Language: en-US
To: Oleksii Kurochko <oleksii.kurochko@gmail.com>
Cc: Bob Eshleman <bobbyeshleman@gmail.com>,
 Alistair Francis <alistair.francis@wdc.com>,
 Connor Davis <connojdavis@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>,
 Paul Durrant <paul@xen.org>, =?UTF-8?Q?Roger_Pau_Monn=c3=a9?=
 <roger.pau@citrix.com>, Doug Goldstein <cardoe@cardoe.com>,
 Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>,
 Ross Lagerwall <ross.lagerwall@citrix.com>, xen-devel@lists.xenproject.org
References: <cover.1692181079.git.oleksii.kurochko@gmail.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <cover.1692181079.git.oleksii.kurochko@gmail.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0118.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:9d::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_|AS8PR04MB9176:EE_
X-MS-Office365-Filtering-Correlation-Id: 43f88da2-7344-4675-be43-08dbd09a1465
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	h/NEkWAPuSSxVzvHEkJfsDHDtvtBXWtPgNAS4CW8dNk+zsQWUnNcGM1AVW/OJ0Xs6Wej8Bt+gkHEuEs+3RAcf+FiO2JTxpzFYSSHdmLfHrMARAi96oi58sqAGoFEgj4X21To/DtkDwo0LJaIJ0jOITOcHCp3yllYZ5RAc2dLGV+ePzAzq7npGT2s7TgQwCCm3pT0zDIRpCKlcXIHBSB7NbE36wUjdvX7806F9uPlQGHX0j8horyjOs4td57cyOpxeeqaz/nGrggigYcRZzfdMggCNJpzPY/0ydgpXS52nP6F5+ixpKsSvSOjS03KMq1MIen2vhMDDx+Zqb6tei3mlH+35xLlajuK3DtCQ+C9nXBX9iOUAWRc3YXI7cQb5DCAUOrfXpTrPX+ulDSveBZHOPjcdPG0poRBi3J6bMD6tWTN1/yv+iPKF/KTzo6myi7MC0AecEJlKA9B4UJWSWUN+CkaPhPWvJ2h0w21oWUToR7LMUP7HMYFZpAUqx+JMsgAX1ju7BksLc9AFI6L7trZEO4glxOjcB0cjuy9gOpUcAKNfh5P9wvbJzoHm4k+Z0wL2uuSmZcZkTJFJ+dzgJM2PNx6wzl5ANEI5fykryjo7ABiXdud1nUXuPrBf5kVjv0Nm+GWB+pLdQpd/f5/rGlAew==
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)(136003)(39860400002)(230922051799003)(186009)(1800799009)(64100799003)(451199024)(31686004)(38100700002)(5660300002)(41300700001)(4326008)(36756003)(86362001)(7416002)(2906002)(31696002)(8676002)(83380400001)(6512007)(26005)(6506007)(53546011)(2616005)(8936002)(478600001)(6666004)(6486002)(54906003)(66476007)(66556008)(66946007)(316002)(6916009)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?eFVIWHlwMUZjNmxnOC84czg0SEhCM0pWc0JsVDFaYTRQMUpDd3Voc0lhY3pw?=
 =?utf-8?B?MTVBenZYelVqZE5rRUhXN28vUnBybFpZdGRpdEZJWHdMQkQyajR6d1hjdFNl?=
 =?utf-8?B?TWZ1NlRUeURsZVdpcHdIb2hQNHQ5ME5VMjcvTUt4MTQzNlBuMXRQTVQvYmM1?=
 =?utf-8?B?OGJTcEtsNzV1Slh1S1piYW4xdE42VGxHSUdXZ2ZtVi9VejYvUWhFaloyK1Ja?=
 =?utf-8?B?cUlETHRDSEdkdUhjY2ptNVdBMGN6eWFDMGJkbHNTemtDaE4zenVBekVKYlVs?=
 =?utf-8?B?b0VTZkszdXJPSjMxbS95M3FmTEhNanlxZlAxWlcwZ01pVnRLeTM1OFltUzJq?=
 =?utf-8?B?VE9OMGp4Y3FDdGljTkN2bVhwRFoySGQ3S0hxUGlab2x5RThLckFYcmdHZG1v?=
 =?utf-8?B?T0xRdmQ1MXZpb3dDREE3d2JYYzZ6TTVEZ3ZVSE5MNXpXazdvc1FpTUEyMEo5?=
 =?utf-8?B?eWQ2NXdwbXV6TjRuSkx3Szg1V2dHSG8xcGRLdGtMU2hGTnphTzltWDJ1S1pY?=
 =?utf-8?B?RWJ6U2UrcGg2U1VUVmVnL3NPUVB6aC90WjdDNXEyTkxMWnY4VjdzQ2VrNTZj?=
 =?utf-8?B?UVh3eFZmd1pja244RHFqb2kwdWVRbjRvL2dIdE15QnNyMm1YMldERDV6d1N3?=
 =?utf-8?B?TXV4ZWhiQmt6WVNLQUttVk9wUCtWZmVMbVFXYm85RVFnWlY0clJYTzNKVXlB?=
 =?utf-8?B?WTl5VDFUMC9URm9taVh4QmFpc2pjVXlocG1tQ1hlZVdRMlJkazBpdDJTMUk5?=
 =?utf-8?B?YkF2eTJSQzlBMXBsVnJRdEYxaFJwbVBuNStLakV1R3Nld3htN1h1Z1V2eC9S?=
 =?utf-8?B?dTBVTWJQZU81TCtycm43dS9ueEdGMFFHYmQrdm9OaE1xL01NbUhmR1dUVUtH?=
 =?utf-8?B?SVRkRHR1RFI0M0NiZ2R5SmhFSGFLOFFvR1hYaytaY1VTZEdySWw0MStDMzk5?=
 =?utf-8?B?MFc0UHVkQ2xPUXZYb3pBamVvK2xEUkY3R0Yxc2JYY1Ryc2R1NjZKcnlMdGJa?=
 =?utf-8?B?UWdYdFYxaUE2K1RoRi95UnUyS2VUQURjTHdWL1BMdnFrVVExWjVFdXNrZHJz?=
 =?utf-8?B?cHRVcXBla214U25NNG5zQjFyZlJhUUhLMmwzY0liaTRrZE83UFNZSStqRWxV?=
 =?utf-8?B?bjVzd2NibVFuSFJaYndoQzRjVTVtamlqRjRFazN5UWZQRXFoM1h5SFFVS1lE?=
 =?utf-8?B?bUdwUm5kV1BJYng3eVhpNVVCU3FlOEdZdUEvMEZJLy9sL3RacFFhUG9nWDJu?=
 =?utf-8?B?VnB0RXhrbHQrSnBpcTR5NUJhZ0U4QnlGbEk0M3VyTFQ1c05Eam5PUzJ2dE5Y?=
 =?utf-8?B?aTkrejRhcytuTXZ5Q3RobUwzZDBFTFIxaTUydnJhUUFiTHdnQWFrNGJINUNy?=
 =?utf-8?B?R0F0czVxRFlMTGJhSnRBemVHTFBaamVPb3JEUWlXYTkyQTY5Q0JzL2dJZGtB?=
 =?utf-8?B?SnNPVUliazV6QzZzbHkzVUxKY05hRGNXQ2c0eWtUOTBmTmh4OGI3VkFrbU82?=
 =?utf-8?B?NjRKRGxxMmdpbDVCRVRwRzZFajJZWllKZXZLTlhldmJ4WFIyVyt3eUN0aEUx?=
 =?utf-8?B?bTR1SUxBQmMwU2t0OVhzbVJLYlU2Ukc4K2NCanBsKzg5YXdBMEN6bENWc29U?=
 =?utf-8?B?ejZ6WEJMVTR2dU5WOXVFTVV5c0IwSVRKNUtmdnFiRWhBVllWZU43cHdVRkNF?=
 =?utf-8?B?TlNBeDVIZXFUM21LQ3FadG1MMjloQkdMYWZRaVoxbis4SEFJQXloZTJGR09k?=
 =?utf-8?B?NGU5YzA5ZWRaMXJ6L3RnMHR0eCtUbmcrTHdFUTREUFBabGJuSFhFL3BaSnpk?=
 =?utf-8?B?OGtCUE5nU1Zpd1N4RHRJWitHK2g0Q3hrajUzQUkwRTVnUTRkUy9pY3dLaktW?=
 =?utf-8?B?b29jMXl3N1k3RDJiQkNWUFkrTDlhaXpXT3UxVk1vd2t3TlNWS2dkZENtSG5Z?=
 =?utf-8?B?RzNBZ0lZV3ExZDdzRzJpNnRIQTV2eU5WTE8rVk1zc0kwUzFXOFlTeUMzayta?=
 =?utf-8?B?Q0YyenRFOVRJYUJoQkR5SGFkZG41a05RTjl5d3pTSllzOGg3Qm53ZUpXYXhr?=
 =?utf-8?B?WnV3T0RLRUUrZS9jNW83KzFBVUdFN0FSajREMFdaV01ndVM2Z0kzWmdNR2NI?=
 =?utf-8?Q?5H6PjWWTU8iJmxRaZbysUPkDX?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 43f88da2-7344-4675-be43-08dbd09a1465
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Oct 2023 11:53:58.9994
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: ucDgeqGmtd4XzldZbHx/kADimd8s7CgUIABmOLkJaXrYgoVWUXF1q+R++43KC8cmtJP/oUK5YCeC24OqAgPZJA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB9176

On 16.08.2023 12:19, Oleksii Kurochko wrote:
> This patch series performs all of the additions necessary to drop the
> build overrides for RISCV 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.
> 
> Also the patch series has open question described in the patch 57
> 
> Patch 56 is only needed for test purposes and will be removed.
> 
> Oleksii Kurochko (57):
>   xen/riscv:introduce asm/byteorder.h
>   xen/riscv: add public arch-riscv.h
>   xen/riscv: introduce spinlock.h
>   xen/riscv: introduce fence.h
>   xen/riscv: introduce arch-riscv/hvm/save.h
>   xen/riscv: introduce paging.h
>   xen/riscv: introduce asm/cpufeature.h
>   xen/riscv: introduce asm/device.h
>   xen/riscv: introduce asm/event.h
>   xen/riscv: introduce asm/grant_table.h
>   xen/riscv: introduce asm/guest_atomics.h
>   xen/riscv: introduce asm/hypercall.h
>   xen/riscv: introduce asm/iocap.h
>   xen/riscv: introduce asm/iommu.h
>   xen/riscv: introduce asm/mem_access.h
>   xen/riscv: introduce asm/nospec.h
>   xen/riscv: introduce asm/pci.h
>   xen/riscv: introduce asm/random.h
>   xen/riscv: introduce asm/setup.h
>   xen/riscv: introduce asm/system.h
>   xen/riscv: introduce asm/xenoprof.h
>   xen/riscv: introduce bitops.h
>   xen/riscv: introduce flushtlb.h
>   xen/riscv: introduce asm/percpu.h
>   xen/riscv: introduce asm/smp.h
>   xen/riscv: introduce asm/atomic.h
>   xen/riscv: introduce cmpxchg.h
>   xen/riscv: introduce asm/io.h
>   xen/riscv: introduce asm/hardirq.h
>   xen/riscv: introduce div64.h
>   xen/riscv: define bug frame tables in xen.lds.S
>   xen/riscv: introduce bit operations
>   xen/riscv: introduce asm/altp2m.h
>   xen/riscv: introduce asm/delay.h
>   xen/riscv: introduce asm/domain.h
>   xen/riscv: introduce asm/guest_access.h
>   xen/riscv: introduce asm/irq.h
>   xen/riscv: introduce asm/monitor.h
>   xen/riscv: introduce asm/numa.h
>   xen/riscv: introduce asm/p2m.h
>   xen/riscv: introduce asm/regs.h
>   xen/riscv: introduce asm/softirq.h
>   xen/riscv: introduce asm/time.h
>   xen/riscv: introduce asm/vm_event.h
>   xen/riscv: add definition of __read_mostly
>   xen/riscv: define an address of frame table
>   xen/riscv: add required things to asm/current.h
>   xen/riscv: add minimal stuff to asm/page.h to build full Xen
>   xen/riscv: add minimal stuff to asm/processor.h to build full Xen
>   xen/riscv: add minimal stuff to asm/smp.h to build full Xen
>   xen: add RISCV support for pmu.h
>   xen: add necessary headers to common to build full Xen for RISC-V
>   xen/riscv: add minimal stuff to asm/mm.h to build full Xen
>   xen/rirscv: add minimal amount of stubs to build full Xen
>   xen/riscv: enable full Xen build
>   test only riscv
>   xxxen/riscv: WIP ( need advise )

Just to clarify: With the later 29-patch series superseding fair parts of this,
is there still any need to look at this (version of this) series in any detail?

Jan


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 11:55:46 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 11:55:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619269.964090 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtRcs-0003ck-Qa; Thu, 19 Oct 2023 11:55:42 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619269.964090; Thu, 19 Oct 2023 11:55: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 1qtRcs-0003cd-NJ; Thu, 19 Oct 2023 11:55:42 +0000
Received: by outflank-mailman (input) for mailman id 619269;
 Thu, 19 Oct 2023 11:55: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=3zlj=GB=redhat.com=vkuznets@srs-se1.protection.inumbo.net>)
 id 1qtRcs-0003bI-Cf
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 11:55:42 +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 6bf48134-6e76-11ee-9b0e-b553b5be7939;
 Thu, 19 Oct 2023 13:55:40 +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-664-ay8NE0scO6G0bw8Nglbr3A-1; Thu, 19 Oct 2023 07:55:35 -0400
Received: by mail-ej1-f69.google.com with SMTP id
 a640c23a62f3a-9b274cc9636so581907366b.0
 for <xen-devel@lists.xenproject.org>; Thu, 19 Oct 2023 04:55:35 -0700 (PDT)
Received: from fedora (g2.ign.cz. [91.219.240.8])
 by smtp.gmail.com with ESMTPSA id
 hb6-20020a170906b88600b009b8dbdd5203sm3372788ejb.107.2023.10.19.04.55.32
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Thu, 19 Oct 2023 04:55: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: 6bf48134-6e76-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
	s=mimecast20190719; t=1697716538;
	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=JG4lTBZAdQNjQdsOUJfgsaU+O9WpyXKgw/EAl16ov/Y=;
	b=RiLxNvb5Wa+ha85fC89PqckV5ObzJVzT1TZvrtKCAub0rsofHbHyBSWp/uQk8XyyFKCy1n
	pNoYeUhscd4mIq9Q5Nn0duvBXcaZEnnF6K7k3nyjz2LoeyBhvNvfgAJRSXppP+XSTyVZzw
	8NTfBOgIea7mj/SKFqW8SgnvgyeVMo0=
X-MC-Unique: ay8NE0scO6G0bw8Nglbr3A-1
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697716534; x=1698321334;
        h=mime-version:message-id:date:references:in-reply-to:subject:cc:to
         :from:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
        bh=JG4lTBZAdQNjQdsOUJfgsaU+O9WpyXKgw/EAl16ov/Y=;
        b=PM8OWvDNO2LbT5bZk+/DNdewaDaHytkYteLA9K7JMRERUZ0GKolm7M0Q76Mp/1bwOo
         /JJpZ+W5mz6rtrk3fPjW+g6TcCC4XxAELwmrm+TJRndwzb6NCp29KniBFCOnrubZ7uRc
         aaApwtEHq8NmIj7nGph/FqlrpkzP+L0jrbprP1qVqSOEm2brDs3zoF4eKz342voRdpsG
         HKs0tlLGpeDkMD31FHluF8SJVvVbnX/q22HAI+Ah/pN1oxcT6CNRyHAExjtsvepz3tla
         Oa+hZeOkrV1Rq0o3oI6uE64FQoQUSxdzOWHrP7GIXQlhukUaznPlpg27s8q+xrYPijdU
         IMag==
X-Gm-Message-State: AOJu0YxfE2lGF5UFSgpqmOa9G8sLD+Dx8ExHlFlSh1BP8aczWvy9+Oq+
	LBWToC/wxfvDL3fjM5p2R2iO89AI+GkF03hrE0tennnfzRNw0YFU3vYdUHtbD7nrj1UnaJDPFlj
	Qx2S3+NxXYnkbMDfiui1vk1E3gr4=
X-Received: by 2002:a17:907:7f0f:b0:9c4:d19:4a6a with SMTP id qf15-20020a1709077f0f00b009c40d194a6amr1860677ejc.53.1697716534555;
        Thu, 19 Oct 2023 04:55:34 -0700 (PDT)
X-Google-Smtp-Source: AGHT+IG9mIPgfvn9ZU7nuvj7xbGgy8xMbs+UZxNrZmJKG1kLP0WAJ1c7LQRgVQvXQZF9O5leQxJekQ==
X-Received: by 2002:a17:907:7f0f:b0:9c4:d19:4a6a with SMTP id qf15-20020a1709077f0f00b009c40d194a6amr1860648ejc.53.1697716534168;
        Thu, 19 Oct 2023 04:55:34 -0700 (PDT)
From: Vitaly Kuznetsov <vkuznets@redhat.com>
To: Dongli Zhang <dongli.zhang@oracle.com>, x86@kernel.org,
 virtualization@lists.linux-foundation.org, kvm@vger.kernel.org,
 pv-drivers@vmware.com, xen-devel@lists.xenproject.org,
 linux-hyperv@vger.kernel.org
Cc: jgross@suse.com, akaher@vmware.com, amakhalov@vmware.com,
 tglx@linutronix.de, mingo@redhat.com, bp@alien8.de,
 dave.hansen@linux.intel.com, hpa@zytor.com, pbonzini@redhat.com,
 wanpengli@tencent.com, peterz@infradead.org, seanjc@google.com,
 dwmw2@infradead.org, joe.jin@oracle.com, boris.ostrovsky@oracle.com,
 linux-kernel@vger.kernel.org
Subject: Re: [PATCH RFC 1/1] x86/paravirt: introduce param to disable pv
 sched_clock
In-Reply-To: <20231018221123.136403-1-dongli.zhang@oracle.com>
References: <20231018221123.136403-1-dongli.zhang@oracle.com>
Date: Thu, 19 Oct 2023 13:55:32 +0200
Message-ID: <87ttqm6d3f.fsf@redhat.com>
MIME-Version: 1.0
X-Mimecast-Spam-Score: 0
X-Mimecast-Originator: redhat.com
Content-Type: text/plain

Dongli Zhang <dongli.zhang@oracle.com> writes:

> As mentioned in the linux kernel development document, "sched_clock() is
> used for scheduling and timestamping". While there is a default native
> implementation, many paravirtualizations have their own implementations.
>
> About KVM, it uses kvm_sched_clock_read() and there is no way to only
> disable KVM's sched_clock. The "no-kvmclock" may disable all
> paravirtualized kvmclock features.
>
>  94 static inline void kvm_sched_clock_init(bool stable)
>  95 {
>  96         if (!stable)
>  97                 clear_sched_clock_stable();
>  98         kvm_sched_clock_offset = kvm_clock_read();
>  99         paravirt_set_sched_clock(kvm_sched_clock_read);
> 100
> 101         pr_info("kvm-clock: using sched offset of %llu cycles",
> 102                 kvm_sched_clock_offset);
> 103
> 104         BUILD_BUG_ON(sizeof(kvm_sched_clock_offset) >
> 105                 sizeof(((struct pvclock_vcpu_time_info *)NULL)->system_time));
> 106 }
>
> There is known issue that kvmclock may drift during vCPU hotplug [1].
> Although a temporary fix is available [2], we may need a way to disable pv
> sched_clock. Nowadays, the TSC is more stable and has less performance
> overhead than kvmclock.
>
> This is to propose to introduce a global param to disable pv sched_clock
> for all paravirtualizations.
>
> Please suggest and comment if other options are better:
>
> 1. Global param (this RFC patch).
>
> 2. The kvmclock specific param (e.g., "no-vmw-sched-clock" in vmware).
>
> Indeed I like the 2nd method.
>
> 3. Enforce native sched_clock only when TSC is invariant (hyper-v method).
>
> 4. Remove and cleanup pv sched_clock, and always use pv_sched_clock() for
> all (suggested by Peter Zijlstra in [3]). Some paravirtualizations may
> want to keep the pv sched_clock.

Normally, it should be up to the hypervisor to tell the guest which
clock to use, i.e. if TSC is reliable or not. Let me put my question
this way: if TSC on the particular host is good for everything, why
does the hypervisor advertises 'kvmclock' to its guests? If for some
'historical reasons' we can't revoke features we can always introduce a
new PV feature bit saying that TSC is preferred.

1) Global param doesn't sound like a good idea to me: chances are that
people will be setting it on their guest images to workaround problems
on one hypervisor (or, rather, on one public cloud which is too lazy to
fix their hypervisor) while simultaneously creating problems on another.

2) KVM specific parameter can work, but as KVM's sched_clock is the same
as kvmclock, I'm not convinced it actually makes sense to separate the
two. Like if sched_clock is known to be bad but TSC is good, why do we
need to use PV clock at all? Having a parameter for debugging purposes
may be OK though...

3) This is Hyper-V specific, you can see that it uses a dedicated PV bit
(HV_ACCESS_TSC_INVARIANT) and not the architectural
CPUID.80000007H:EDX[8]. I'm not sure we can blindly trust the later on
all hypervisors.

4) Personally, I'm not sure that relying on 'TSC is crap' detection is
100% reliable. I can imagine cases when we can't detect that fact that
while synchronized across CPUs and not going backwards, it is, for
example, ticking with an unstable frequency and PV sched clock is
supposed to give the right correction (all of them are rdtsc() based
anyways, aren't they?).

>
> To introduce a param may be easier to backport to old kernel version.
>
> References:
> [1] https://lore.kernel.org/all/20230926230649.67852-1-dongli.zhang@oracle.com/
> [2] https://lore.kernel.org/all/20231018195638.1898375-1-seanjc@google.com/
> [3] https://lore.kernel.org/all/20231002211651.GA3774@noisy.programming.kicks-ass.net/
>
> Thank you very much for the suggestion!
>
> Signed-off-by: Dongli Zhang <dongli.zhang@oracle.com>
> ---
>  arch/x86/include/asm/paravirt.h |  2 +-
>  arch/x86/kernel/kvmclock.c      | 12 +++++++-----
>  arch/x86/kernel/paravirt.c      | 18 +++++++++++++++++-
>  3 files changed, 25 insertions(+), 7 deletions(-)
>
> diff --git a/arch/x86/include/asm/paravirt.h b/arch/x86/include/asm/paravirt.h
> index 6c8ff12140ae..f36edf608b6b 100644
> --- a/arch/x86/include/asm/paravirt.h
> +++ b/arch/x86/include/asm/paravirt.h
> @@ -24,7 +24,7 @@ u64 dummy_sched_clock(void);
>  DECLARE_STATIC_CALL(pv_steal_clock, dummy_steal_clock);
>  DECLARE_STATIC_CALL(pv_sched_clock, dummy_sched_clock);
>  
> -void paravirt_set_sched_clock(u64 (*func)(void));
> +int paravirt_set_sched_clock(u64 (*func)(void));
>  
>  static __always_inline u64 paravirt_sched_clock(void)
>  {
> diff --git a/arch/x86/kernel/kvmclock.c b/arch/x86/kernel/kvmclock.c
> index fb8f52149be9..0b8bf5677d44 100644
> --- a/arch/x86/kernel/kvmclock.c
> +++ b/arch/x86/kernel/kvmclock.c
> @@ -93,13 +93,15 @@ static noinstr u64 kvm_sched_clock_read(void)
>  
>  static inline void kvm_sched_clock_init(bool stable)
>  {
> -	if (!stable)
> -		clear_sched_clock_stable();
>  	kvm_sched_clock_offset = kvm_clock_read();
> -	paravirt_set_sched_clock(kvm_sched_clock_read);
>  
> -	pr_info("kvm-clock: using sched offset of %llu cycles",
> -		kvm_sched_clock_offset);
> +	if (!paravirt_set_sched_clock(kvm_sched_clock_read)) {
> +		if (!stable)
> +			clear_sched_clock_stable();
> +
> +		pr_info("kvm-clock: using sched offset of %llu cycles",
> +			kvm_sched_clock_offset);
> +	}
>  
>  	BUILD_BUG_ON(sizeof(kvm_sched_clock_offset) >
>  		sizeof(((struct pvclock_vcpu_time_info *)NULL)->system_time));
> diff --git a/arch/x86/kernel/paravirt.c b/arch/x86/kernel/paravirt.c
> index 97f1436c1a20..2cfef94317b0 100644
> --- a/arch/x86/kernel/paravirt.c
> +++ b/arch/x86/kernel/paravirt.c
> @@ -118,9 +118,25 @@ static u64 native_steal_clock(int cpu)
>  DEFINE_STATIC_CALL(pv_steal_clock, native_steal_clock);
>  DEFINE_STATIC_CALL(pv_sched_clock, native_sched_clock);
>  
> -void paravirt_set_sched_clock(u64 (*func)(void))
> +static bool no_pv_sched_clock;
> +
> +static int __init parse_no_pv_sched_clock(char *arg)
> +{
> +	no_pv_sched_clock = true;
> +	return 0;
> +}
> +early_param("no_pv_sched_clock", parse_no_pv_sched_clock);
> +
> +int paravirt_set_sched_clock(u64 (*func)(void))
>  {
> +	if (no_pv_sched_clock) {
> +		pr_info("sched_clock: not configurable\n");
> +		return -EPERM;
> +	}
> +
>  	static_call_update(pv_sched_clock, func);
> +
> +	return 0;
>  }
>  
>  /* These are in entry.S */

-- 
Vitaly



From xen-devel-bounces@lists.xenproject.org Thu Oct 19 12:04:00 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 12:04:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619286.964100 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtRkp-0006Go-1O; Thu, 19 Oct 2023 12:03:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619286.964100; Thu, 19 Oct 2023 12: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 1qtRko-0006Gh-TG; Thu, 19 Oct 2023 12:03:54 +0000
Received: by outflank-mailman (input) for mailman id 619286;
 Thu, 19 Oct 2023 12: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=yz61=GB=suse.com=jgross@srs-se1.protection.inumbo.net>)
 id 1qtRkn-0006Gb-AO
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 12:03:53 +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 91d1c613-6e77-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 14:03:52 +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 091FD21A59;
 Thu, 19 Oct 2023 12:03:51 +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 D7E5F139C2;
 Thu, 19 Oct 2023 12:03:50 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap2.suse-dmz.suse.de with ESMTPSA id axZzMiYbMWW5MQAAMHmgww
 (envelope-from <jgross@suse.com>); Thu, 19 Oct 2023 12: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>
X-Inumbo-ID: 91d1c613-6e77-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1697717031; 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=9h5B858bAWry/8oNBNcVnj0nixdWb98VmSWHQtHhdlw=;
	b=Fs5Xl3nIP5xoaHrqs94xKN3yPTXYvdzkNrPaQquJu3cGtQjIXESAc6q7KFapcr848ZMsFS
	QwOW8UkjHiljf+Rf6kmpxhiY2WdtNfpg7TeaKpc3csyAKum2Mil61w1HY+w35KJy5U8jh6
	07mYNiBKnC8SpOdudlhxbyFlov4erm8=
Message-ID: <9a82244d-6d6b-4676-8050-a4aeb0747071@suse.com>
Date: Thu, 19 Oct 2023 14:03:50 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH] xen/sched: fix sched_move_domain()
Content-Language: en-US
To: Henry Wang <Henry.Wang@arm.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 George Dunlap <george.dunlap@citrix.com>, Dario Faggioli <dfaggioli@suse.com>
References: <20231019112314.22665-1-jgross@suse.com>
 <F1CDF477-9003-45F9-83E8-2122413AB514@arm.com>
 <1f8183eb-65cc-41b6-bd91-d1075757b366@suse.com>
 <83E6DCF6-926C-43A6-94D2-EB3B2C444309@arm.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: <83E6DCF6-926C-43A6-94D2-EB3B2C444309@arm.com>
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature";
 boundary="------------kiI4HuJ8YBLu9qlyVV32ofvf"
Authentication-Results: smtp-out1.suse.de;
	none
X-Spam-Level: 
X-Spam-Score: -8.99
X-Spamd-Result: default: False [-8.99 / 50.00];
	 ARC_NA(0.00)[];
	 TO_DN_EQ_ADDR_SOME(0.00)[];
	 XM_UA_NO_VERSION(0.01)[];
	 FROM_HAS_DN(0.00)[];
	 RCPT_COUNT_THREE(0.00)[4];
	 TO_DN_SOME(0.00)[];
	 TO_MATCH_ENVRCPT_ALL(0.00)[];
	 MIME_GOOD(-0.20)[multipart/signed,multipart/mixed,text/plain];
	 HAS_ATTACHMENT(0.00)[];
	 RCVD_VIA_SMTP_AUTH(0.00)[];
	 BAYES_HAM(-3.00)[100.00%];
	 NEURAL_HAM_LONG(-3.00)[-1.000];
	 DKIM_SIGNED(0.00)[suse.com:s=susede1];
	 NEURAL_HAM_SHORT(-1.00)[-1.000];
	 MIME_BASE64_TEXT(0.10)[];
	 SIGNED_PGP(-2.00)[];
	 FROM_EQ_ENVFROM(0.00)[];
	 MIME_TRACE(0.00)[0:+,1:+,2:+,3:+,4:~,5:~];
	 RCVD_COUNT_TWO(0.00)[2];
	 RCVD_TLS_ALL(0.00)[];
	 MID_RHS_MATCH_FROM(0.00)[];
	 MIME_UNKNOWN(0.10)[application/pgp-keys]
X-Spam-Flag: NO

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--------------kiI4HuJ8YBLu9qlyVV32ofvf
Content-Type: multipart/mixed; boundary="------------0z0As0vBNDnK3NLKJ031PDF7";
 protected-headers="v1"
From: Juergen Gross <jgross@suse.com>
To: Henry Wang <Henry.Wang@arm.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 George Dunlap <george.dunlap@citrix.com>, Dario Faggioli <dfaggioli@suse.com>
Message-ID: <9a82244d-6d6b-4676-8050-a4aeb0747071@suse.com>
Subject: Re: [PATCH] xen/sched: fix sched_move_domain()
References: <20231019112314.22665-1-jgross@suse.com>
 <F1CDF477-9003-45F9-83E8-2122413AB514@arm.com>
 <1f8183eb-65cc-41b6-bd91-d1075757b366@suse.com>
 <83E6DCF6-926C-43A6-94D2-EB3B2C444309@arm.com>
In-Reply-To: <83E6DCF6-926C-43A6-94D2-EB3B2C444309@arm.com>

--------------0z0As0vBNDnK3NLKJ031PDF7
Content-Type: multipart/mixed; boundary="------------bI7h4ETJgGYHVzgaq1f9116L"

--------------bI7h4ETJgGYHVzgaq1f9116L
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: base64

T24gMTkuMTAuMjMgMTM6NDksIEhlbnJ5IFdhbmcgd3JvdGU6DQo+IEhpIEp1ZXJnZW4sDQo+
IA0KPj4gT24gT2N0IDE5LCAyMDIzLCBhdCAxOTozOCwgSnVlcmdlbiBHcm9zcyA8amdyb3Nz
QHN1c2UuY29tPiB3cm90ZToNCj4+DQo+PiBPbiAxOS4xMC4yMyAxMzozMSwgSGVucnkgV2Fu
ZyB3cm90ZToNCj4+PiBIaSBKdWVyZ2VuLA0KPj4+PiBPbiBPY3QgMTksIDIwMjMsIGF0IDE5
OjIzLCBKdWVyZ2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+IHdyb3RlOg0KPj4+Pg0KPj4+
PiBXaGVuIG1vdmluZyBhIGRvbWFpbiBvdXQgb2YgYSBjcHVwb29sIHJ1bm5pbmcgd2l0aCB0
aGUgY3JlZGl0Mg0KPj4+PiBzY2hlZHVsZXIgYW5kIGhhdmluZyBtdWx0aXBsZSBydW4tcXVl
dWVzLCB0aGUgZm9sbG93aW5nIEFTU0VSVCgpIGNhbg0KPj4+PiBiZSBvYnNlcnZlZDoNCj4+
Pj4NCj4+Pj4gKFhFTikgWGVuIGNhbGwgdHJhY2U6DQo+Pj4+IChYRU4pICAgIFs8ZmZmZjgy
ZDA0MDIzYTcwMD5dIFIgY3JlZGl0Mi5jI2NzY2hlZDJfdW5pdF9yZW1vdmUrMHhlMy8weGU3
DQo+Pj4+IChYRU4pICAgIFs8ZmZmZjgyZDA0MDI0NmFkYj5dIFMgc2NoZWRfbW92ZV9kb21h
aW4rMHgyZjMvMHg1YjENCj4+Pj4gKFhFTikgICAgWzxmZmZmODJkMDQwMjM0Y2Y3Pl0gUyBj
cHVwb29sLmMjY3B1cG9vbF9tb3ZlX2RvbWFpbl9sb2NrZWQrMHgxZC8weDNiDQo+Pj4+IChY
RU4pICAgIFs8ZmZmZjgyZDA0MDIzNjAyNT5dIFMgY3B1cG9vbF9tb3ZlX2RvbWFpbisweDI0
LzB4MzUNCj4+Pj4gKFhFTikgICAgWzxmZmZmODJkMDQwMjA2NTEzPl0gUyBkb21haW5fa2ls
bCsweGE1LzB4MTE2DQo+Pj4+IChYRU4pICAgIFs8ZmZmZjgyZDA0MDIzMmIxMj5dIFMgZG9f
ZG9tY3RsKzB4ZTVmLzB4MTk1MQ0KPj4+PiAoWEVOKSAgICBbPGZmZmY4MmQwNDAyMjc2YmE+
XSBTIHRpbWVyLmMjdGltZXJfbG9jaysweDY5LzB4MTQzDQo+Pj4+IChYRU4pICAgIFs8ZmZm
ZjgyZDA0MDJkYzcxYj5dIFMgcHZfaHlwZXJjYWxsKzB4NDRlLzB4NGE5DQo+Pj4+IChYRU4p
ICAgIFs8ZmZmZjgyZDA0MDIwMTJiNz5dIFMgbHN0YXJfZW50ZXIrMHgxMzcvMHgxNDANCj4+
Pj4gKFhFTikNCj4+Pj4gKFhFTikNCj4+Pj4gKFhFTikgKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKg0KPj4+PiAoWEVOKSBQYW5pYyBvbiBDUFUgMToNCj4+Pj4g
KFhFTikgQXNzZXJ0aW9uICdzdmMtPnJxZCA9PSBjMnJxZChzY2hlZF91bml0X21hc3Rlcih1
bml0KSknIGZhaWxlZCBhdCBjb21tb24vc2NoZWQvY3JlZGl0Mi5jOjExNTkNCj4+Pj4gKFhF
TikgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKg0KPj4+Pg0KPj4+
PiBUaGlzIGlzIGhhcHBlbmluZyBhcyBzY2hlZF9tb3ZlX2RvbWFpbigpIGlzIHNldHRpbmcg
YSBkaWZmZXJlbnQgY3B1DQo+Pj4+IGZvciBhIHNjaGVkdWxpbmcgdW5pdCB3aXRob3V0IHRl
bGxpbmcgdGhlIHNjaGVkdWxlci4gV2hlbiB0aGlzIHVuaXQgaXMNCj4+Pj4gcmVtb3ZlZCBm
cm9tIHRoZSBzY2hlZHVsZXIsIHRoZSBBU1NFUlQoKSB3aWxsIHRyaWdnZXIuDQo+Pj4+DQo+
Pj4+IEluIG5vbi1kZWJ1ZyBidWlsZHMgdGhlIHJlc3VsdCBpcyB1c3VhbGx5IGEgY2xvYmJl
cmVkIHBvaW50ZXIsIGxlYWRpbmcNCj4+Pj4gdG8gYW5vdGhlciBjcmFzaCBhIHNob3J0IHRp
bWUgbGF0ZXIuDQo+Pj4+DQo+Pj4+IEZpeCB0aGF0IGJ5IHN3YXBwaW5nIHRoZSB0d28gaW52
b2x2ZWQgYWN0aW9ucyAoc2V0dGluZyBhbm90aGVyIGNwdSBhbmQNCj4+Pj4gcmVtb3Zpbmcg
dGhlIHVuaXQgZnJvbSB0aGUgc2NoZWR1bGVyKS4NCj4+Pj4NCj4+Pj4gQ2M6IEhlbnJ5IFdh
bmcgPEhlbnJ5LldhbmdAYXJtLmNvbT4NCj4+PiBFbW1tLCBJIHRoaW5rIF4gdGhpcyBDQyBp
cyBiZXR0ZXIgdG8gbWUgbW92ZWQgdG8gdGhlIHNjaXNzb3JzIGxpbmUsIG90aGVyd2lzZQ0K
Pj4+IGlmIHRoaXMgcGF0Y2ggaXMgY29tbWl0dGVkLCB0aGlzIGxpbmUgd2lsbCBiZSBzaG93
biBpbiB0aGUgY29tbWl0IG1lc3NhZ2UuLi4NCj4+Pj4gRml4ZXM6IDcwZmFkYzQxNjM1YiAo
Inhlbi9jcHVwb29sOiBzdXBwb3J0IG1vdmluZyBkb21haW4gYmV0d2VlbiBjcHVwb29scyB3
aXRoIGRpZmZlcmVudCBncmFudWxhcml0eSIpDQo+Pj4+IFNpZ25lZC1vZmYtYnk6IEp1ZXJn
ZW4gR3Jvc3MgPGpncm9zc0BzdXNlLmNvbT4NCj4+Pj4gLS0tDQo+Pj4+IFRoaXMgZml4ZXMg
YSByZWdyZXNzaW9uIGludHJvZHVjZWQgaW4gWGVuIDQuMTUuIFRoZSBmaXggaXMgdmVyeSBz
aW1wbGUNCj4+Pj4gYW5kIGl0IHdpbGwgYWZmZWN0IG9ubHkgY29uZmlndXJhdGlvbnMgd2l0
aCBtdWx0aXBsZSBjcHVwb29scy4gSSB0aGluaw0KPj4+PiB3aGV0aGVyIHRvIGluY2x1ZGUg
aXQgaW4gNC4xOCBzaG91bGQgYmUgZGVjaWRlZCBieSB0aGUgcmVsZWFzZSBtYW5hZ2VyDQo+
Pj4+IGJhc2VkIG9uIHRoZSBjdXJyZW50IHN0YXRlIG9mIHRoZSByZWxlYXNlIChJIHRoaW5r
IEkgd291bGRuJ3QgaGF2ZQ0KPj4+PiBhZGRlZCBpdCB0aGF0IGxhdGUgaW4gdGhlIHJlbGVh
c2Ugd2hpbGUgYmVpbmcgdGhlIHJlbGVhc2UgbWFuYWdlcikuDQo+Pj4gVGhhbmtzIGZvciB0
aGUgcmVtaW5kZXIgOikNCj4+PiBQbGVhc2UgY29ycmVjdCBtZSBpZiBJIGFtIHdyb25nLCBp
ZiB0aGlzIGlzIGZpeGluZyB0aGUgcmVncmVzc2lvbiBpbnRyb2R1Y2VkIGluDQo+Pj4gNC4x
NSwgc2hvdWxkbuKAmXQgdGhpcyBwYXRjaCBiZWluZyBiYWNrcG9ydGVkIHRvIDQuMTUsIDQu
MTYsIDQuMTcgYW5kIHNvb24NCj4+PiA0LjE4PyBTbyBob25lc3RseSBJIHRoaW5rIGF0IGxl
YXN0IGZvciA0LjE4IGVpdGhlciBhZGQgdGhpcyBwYXRjaCBub3cgb3INCj4+PiBsYXRlciB3
b27igJl0IG1ha2UgbXVjaCBkaWZmZXJlbmNl4oCmSSBhbSBvayBlaXRoZXIgd2F5IEkgZ3Vl
c3MuDQo+Pg0KPj4gWW91IGFyZSByaWdodCwgdGhlIHBhdGNoIG5lZWRzIHRvIGJlIGJhY2tw
b3J0ZWQuDQo+Pg0KPj4gT1RPSCBub2JvZHkgbm90aWNlZCB0aGUgcmVncmVzc2lvbiB1bnRp
bCBhIGZldyBkYXlzIGFnby4gU28gZGVsYXlpbmcgdGhlIGZpeA0KPj4gZm9yIGEgZmV3IHdl
ZWtzIHdvdWxkIHByb2JhYmx5IG5vdCBodXJ0IHRvbyBtYW55IHBlb3BsZS4NCj4gDQo+IEkg
YW0gcGxhbm5pbmcgdG8gYnJhbmNoIG5leHQgd2Vlaywgc28gSSB3b3VsZCBzYXkgdGhpcyBw
YXRjaCBwcm9iYWJseSB3aWxsIGJlDQo+IGRlbGF5ZWQgbWF4IDEgd2VlayBJIGd1ZXNzLg0K
PiANCj4+IEVhY2ggcGF0Y2ggY2hhbmdpbmcNCj4+IGNvZGUgaXMgYSByaXNrIHRvIGludHJv
ZHVjZSBhbm90aGVyIHJlZ3Jlc3Npb24sIHNvIGl0cyB5b3VyIGRlY2lzaW9uIHdoZXRoZXIN
Cj4+IHlvdSB3YW50IHRvIHRha2UgdGhpcyByaXNrLiBFc3BlY2lhbGx5IGNoYW5nZXMgbGlr
ZSB0aGlzIG9uZSB0b3VjaGluZyB0aGUNCj4+IGNvcmUgc2NoZWR1bGluZyBjb2RlIGFsd2F5
cyBoYXZlIGEgbGF0ZW50IHJpc2sgdG8gb3BlbiB1cCBhIHNtYWxsIHJhY2Ugd2luZG93DQo+
PiAodGhpcyBjb3VsZCBiZSBzYWlkIGZvciB0aGUgb3JpZ2luYWwgcGF0Y2ggSSdtIGZpeGlu
ZyBoZXJlLCB0b28gOi0pICkuDQo+IA0KPiBUaGF0IHNhaWQsIGdpdmVuIHRoZSBmYWN0IHRo
YXQgdGhpcyBwYXRjaCBpcyBmaXhpbmcgYSByZWdyZXNzaW9uIHllYXJzIGFnbyBhbmQNCj4g
d2lsbCBiZSBiYWNrcG9ydGVkIHRvIHRoZSBzdGFibGUgcmVsZWFzZXMsIEkgYW0gbW9yZSBs
ZWFuaW5nIHRvd2FyZHMgbWVyZ2luZw0KPiB0aGlzIHBhdGNoIHdoZW4gdGhlIHRyZWUgcmVv
cGVucyAodW5sZXNzIG90aGVycyBzdHJvbmdseSBvYmplY3QpLCBzbyB0aGF0IHRoaXMNCj4g
cGF0Y2ggd2lsbCBnZXQgdGhlIG9wcG9ydHVuaXR5IHRvIGJlIHRlc3RlZCBwcm9wZXJseSwg
YW5kIHdlIHdvbuKAmXQgdGFrZSB0b28gbXVjaA0KPiByaXNrIHRvIGRlbGF5IHRoZSA0LjE4
IHJlbGVhc2UuIEFsc28gdGhpcyBkZWNpc2lvbiBpcyBjb25zaXN0ZW50IHdpdGggeW91ciAo
YW4NCj4gZXggcmVsZWFzZSBtYW5hZ2VyKSBhYm92ZSB3b3JkcyBpbiB0aGUgc2Npc3NvcnMg
bGluZSA6KQ0KPiANCj4gSG9wZWZ1bGx5IHlvdSB3aWxsIGFsc28gYmUgb2sgd2l0aCB0aGF0
Lg0KDQpPZiBjb3Vyc2UgSSBhbS4NCg0KDQpKdWVyZ2VuDQo=
--------------bI7h4ETJgGYHVzgaq1f9116L
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-----

--------------bI7h4ETJgGYHVzgaq1f9116L--

--------------0z0As0vBNDnK3NLKJ031PDF7--

--------------kiI4HuJ8YBLu9qlyVV32ofvf
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/Ey8FAmUxGyYFAwAAAAAACgkQsN6d1ii/Ey/w
AggAlF+a4p48ui81LgS//JXeDf8WwhBcZcqKYEavv8g0gaUxPlUry16Ul9zwfq+pgZ8OXDL33YU+
/CDv6u0Ha/9utnfBCp2H9ersYkjy1FDknoPZvUUpPjjFtdfb7EveiGU/E+orPxA53wynL8FRKxit
naNjIC8JIIYyo97ZPTIwWhOn+JJEDNsHnVdMGd1FJIQ9+Qu/Spf3wYBg8uQRRD2AVYIhvwUps9ak
kelxhWNpeHfF9ktRc3LxZLmBQxhBf8GJhYyviEUrGkaJw/cENtv0haBAh2EuPt7zOIRhkuXnoWdT
hsyNGAeD1yqygc+kF8qXe1NRliqPsqcfC6lxfkbZTQ==
=TDX5
-----END PGP SIGNATURE-----

--------------kiI4HuJ8YBLu9qlyVV32ofvf--


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 12:09:06 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 12:09:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619290.964110 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtRph-0007BO-Gy; Thu, 19 Oct 2023 12:08:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619290.964110; Thu, 19 Oct 2023 12:08: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 1qtRph-0007BH-EB; Thu, 19 Oct 2023 12:08:57 +0000
Received: by outflank-mailman (input) for mailman id 619290;
 Thu, 19 Oct 2023 12: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=g4nO=GB=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qtRpf-0007BB-Cl
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 12:08:55 +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 45d76eed-6e78-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 14:08:54 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS8PR04MB7528.eurprd04.prod.outlook.com (2603:10a6:20b:297::12)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.8; Thu, 19 Oct
 2023 12:08:25 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%7]) with mapi id 15.20.6907.022; Thu, 19 Oct 2023
 12:08: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: 45d76eed-6e78-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ZIDSZu5FS154AzL5yFbyD9vn5yt5eZxrs4Rglc2oY7iGXqNQ4VaV2MqDR9PLrtYoL0uRdJAOmP8CVCCKcim1PkD6DrPRbHJGKVVFQ7/Nqx7t2BQmsxRacoaYqkFdFZNJH6bMHKQFzHmAWrbHsAo3pXYcGz/bFXzthO6Eb2cr35XueUNVSDbuYdSepRUjuEdivtp5UIQBGT8xsgV0qT3x9gbd8GL69WVSlmKloOI27L/53kFENe++TM7ayA3waSwWJv4ktm4ZJXCQEfVQQRbcRlWqjCprlwlNACyzQZvIFN4+Ubf4WoVt1QlTYj1T940xJW2a/89iCIooCnrgK6WVpw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=cPLOdN0IunUdktcorMlI1VaAvn/ISjH55YTNG2RP1hM=;
 b=M6PrHeAvlVEiVcXojUcKbtOdU1xo0aNKaUsA89NausbSpcqbx6hiwKLNDLnA2UzCQuZTCYjPwcBG7OwcmA5MuD63yjR2kP0A78D93D//oW0SSJ7eJUDYGFH99Df3EACL4kERkAtoG5uR8ynKb3JC5HDZlAd5sIaPW+lToUGaWHGId+89U5sBwZIfSzwJ+vSf0tThh8bE0laIg+KJhwcJyIVW+i3QOCQ2AqbOTzCiUIOI4+1NbiY8UxzOah5PSBqWep8YX29ILgR3uwActvUvJfCWW2iQPw8yMBHMhcKzv+y9VZahI2hihbWId3agM+oZ2fpygJsTXGiniDcaSZAsNQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=cPLOdN0IunUdktcorMlI1VaAvn/ISjH55YTNG2RP1hM=;
 b=g0ad9+bqnishRYCRGUkY3uMFVaVhWGLkauWQLy96zgi+XoGdE7o1x7XQ0afD7GTWEpFClW3Gp3A32VL8X37jst9AZJfA0FF+PO2Xpj9rPbQUp1seN2je++4iLcC5u4N0BKjVLauVbx7IbB2O7Zh3M4lO1pv96HXzCqHqMTQCJiYa10vlm+XRiMFJ4gGMwvQ+0524kpmrQE8roZr+31Efhb+milrstUQMs2cG0+UbquKLh4K89AIZVqTN5rVx2e/kuTea8ot7bOm5QhRPg7AjU3p3bXmS462hA4rWUCGiCseXd8YRrhRuAsESOghBTgerO15wNw7cGzerhU3EPIX/xw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <16a32be2-6982-2463-3d71-383a21d7e074@suse.com>
Date: Thu, 19 Oct 2023 14:08:22 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
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>,
 Henry Wang <Henry.Wang@arm.com>
From: Jan Beulich <jbeulich@suse.com>
Subject: [PATCH for-4.18] EFI: reduce memory map logging level
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0070.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:49::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_|AS8PR04MB7528:EE_
X-MS-Office365-Filtering-Correlation-Id: 4584eaba-c405-478e-cb2e-08dbd09c18e3
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	KHnK6VrGGPErR7Ow7XWMgY9fsEdlgZtIHUc/HlglZP+/vx7vFJVl/aHaVscy9r0lU1cPUH9mLdgw75hXRY+K9W1hhHK5aGD511ae1J1RogYtejRHGB6/08gqfbxaSlzIioDQJdbpMpPd7UahB13c05SUzxRXXNnSpVHnyn1SZDM++vQEHPaPzgmLqyJbSOtud+Y3Jdt86mYzOWRdcxGXaCiWL7HbtndB2rM/VYi98VgbqVjkSbYiUduMhrd6LpOcu3mxZRUPmH6qK7LlpwYK0wo0dC9B2RZMrY8pptJiJ/shojdCMcc/w+5mYNfSBnuxCcwoacPeMcrXSLHkcBzWer0chkPTHlpf9UBTAUYj1Pidrf5i9psXp4VXhnn8+SR0429/8mGacbC/o5Ok7MmmlFSsd0TTYRYV+LePZ5p6T7px8+gB3PyZ3fB6m7QEO0ILDyPdaLbyhFCKn3Z3dT8Hp25jfOFdLK2sYCquOqv8bzuCE6AITLblFmfHGc/3Xx+HG+DHVF5CDG/0wbRlShP0XPEHw8C+E+SvaDQL6Elm0emctQwUTQ9uS5LEYtjRrZm4XdsQissKPVrS6lgi+YMy0fj04vU5nRrsdr0jLwLXHPtLopaxutK+EoJx570JtolNpoVLLeKXVG6JvJmeO9g6Lw==
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)(346002)(396003)(136003)(230922051799003)(64100799003)(186009)(1800799009)(451199024)(86362001)(6512007)(26005)(2616005)(478600001)(6486002)(8676002)(5660300002)(8936002)(41300700001)(4326008)(4744005)(2906002)(31696002)(66946007)(316002)(6916009)(36756003)(54906003)(66476007)(66556008)(6666004)(6506007)(38100700002)(31686004)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?QXlQYXJ1NDF3czg4U01WYW81WTZPYzlpSEFhWVEvVjJSaHpxVlMxRFlaZ0R1?=
 =?utf-8?B?NUlOTW41YjRmWk16VEl4aGtWZ2dPRTJIbEdWR0JWeTNxTGhWSXE3ZTEyTGph?=
 =?utf-8?B?a2pxbUkyd3Q5VUtlN0xva0FHU2U5cU85TDA0L1ZaUzhpbWw1QjV2VXFFeXo4?=
 =?utf-8?B?KzhyMlU4SFBROE5mWnlMYk93MW5aL1JFaWdhQWpjV1dSOUtRckNMTkZlY21Z?=
 =?utf-8?B?U3Jpd3l3aHpSR0xtUGU1bmlzT3JZUGJUb2xaY3dCN0Nua25nZndaQVdxenFv?=
 =?utf-8?B?OWh2bFNXTWovK0dWSUE0SENsN2hBZUxaQ0J2REljSW9rNXgrN2ZCY1Q1QU16?=
 =?utf-8?B?ZFpQL0F2M0NjdGVzZWNiMC9oVFVJNzlqQ2t3c2xudHBsVXNEV1VKcVd4L2Rl?=
 =?utf-8?B?UVF1OEdqcjk5U3p0UHd5V0kycDMyOWUxQnFCNVpST09nUEgzbC9JTjJFTzRx?=
 =?utf-8?B?K3lYd1FZbjlmWEFZTm93K1g0SE1uWGc5b0gvU1ZyOWxVakcvSkFyYy9PMUtD?=
 =?utf-8?B?TTJRMGpMZnVvTVh3NVBXMjJSbW5xUkdaSzlCVDNVcVNibkdwUUJrcVFmWlpm?=
 =?utf-8?B?ZGdHaFNRdlQ0Q0k1SzNYQW9PWUFReVdlRzRCajViVklxS3pGRnQ1dm5VVnVo?=
 =?utf-8?B?dTBZa04yMGZpS0pMZkxHRnFwSjUvalNKVmtVbVlLL1BMeFBZZFZtdHQ1L0g0?=
 =?utf-8?B?UW91QWlkNml3R0JUM21TS3NPUzIxM01oM1M4a2owZ2x1Y0ZvcFdvakVyY3li?=
 =?utf-8?B?bWNJWjVKSjJ4Z3gzcm5EYm9HbngzTFRZR2srV0Rybzh0TUc2V2hMc0RtRlQ0?=
 =?utf-8?B?aWNrVElmeTlQYitEZkZ5M1diN3FmWkpKZmcwZnYvRUlPaDd0ZHhsa1BmSkRJ?=
 =?utf-8?B?T0FZUUlWY2hFUkt4YTJ2bW9nQlhIM2pyV0haRU93TjhlbjZoU3dFalRPeDZq?=
 =?utf-8?B?TVIxYmVEdzdzSy9LbDRmUlVVU1ZReFI2aWdFZ2gzdnBnODlhQUptQ29YNEJN?=
 =?utf-8?B?bnFVYW9CTnpta0paREZRb0YvN3JVRUNHRWhQNkhhYmIyb3BndStmTU4vcS84?=
 =?utf-8?B?Q1BKbmlQK2U3d1BiUDVwZnRLREtwbzNDSXZXOWtWOFlodVpBYVlEOWxoY3pJ?=
 =?utf-8?B?YmhUMEJaQlhaTjdQTFlhUGlpSnUzK2g1OWhNQVV4bW9lREEvRDdNVXlmVEdn?=
 =?utf-8?B?MEdGbHdBbWpiZkF3Y3lRTkxRYnZYcnNXdGt3Z3gvL3I3VUExU1VMSVV1QkdM?=
 =?utf-8?B?MmVIRGd0Y0Z4SnY0RDVhNktMbkdmUXorc3p4T1p5NER5c2FJbU1KVHJoanhx?=
 =?utf-8?B?aTNiREgweGcrY3hsMjhidUwveStyQ3RWUDhkTFlQeGNWb0QxQnBqeHE1TGox?=
 =?utf-8?B?dUp0R3d5SllaenBQWmpXNmVNM1d1YTJ5ajJWZlpDMTU2TnZUM042cDNxZWxs?=
 =?utf-8?B?dytuSWlzWjQxamh1N21xZ0x1N2tQcGFrVnFCeGxGRnhkaytLamppVmYxa3dJ?=
 =?utf-8?B?bXNvTnVkL2JMUDdjNklKcU9ZUG4zeGxVSGVaQ2srVlZybEhZUW1GMS9pdjBh?=
 =?utf-8?B?R0xGWnBEbWNERWxoS2I2U3Q1dzRTSThKWHlKNmFqRURRQVFPdVdSWUdVM25J?=
 =?utf-8?B?QVZrcENib3dCMUU2ZnozaXkxcjNidDJ2NDVOdklEaWxLNTl5U3d1aTlRZzFK?=
 =?utf-8?B?WmlPRkVOOTkySWUzRVRPdFlJeklnZE16UXRHaTVicEp5Sk8yZ0wrVm0zSU9j?=
 =?utf-8?B?NmkzSGJwZzZrOXNFZXBCMTlaa3NwRExtS1BZdTBzeHFXRkhrTFlrL0Y2L0M0?=
 =?utf-8?B?Q1pvZ1lieG1mSFZSVHNqMmRQT2RMN3pCZ0RjMEY0bXRuQTBOalB2K3FEb0xm?=
 =?utf-8?B?ZHJQR1FSbXdYNU1ud25NM0lDZzdNMEtVWkQ0SERIdE5QeVJHaGJPNk9aUy9k?=
 =?utf-8?B?QjNmN2hiK2F2dFpTS2RmNEwxdFU5ZUNLSEpMb3ZONUprbC9zV1ptYmJKazdJ?=
 =?utf-8?B?Tm5OY1RZNlVJeXVSMDRTY2FKamU1VWVBZVRoYmtmc1BLWGFvN3JvYzBTUVJx?=
 =?utf-8?B?S2RIbjhFdms3UjJuUW5OamFJY0dPZkdOenhSUjJnMytSVDFoelQvL28rK29r?=
 =?utf-8?Q?pingFrexJ3Xf/zeqCFxYIn19M?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 4584eaba-c405-478e-cb2e-08dbd09c18e3
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Oct 2023 12:08:25.5189
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: sukfhjdN5mus5fBY+BIjBVyW4omySIfn4UkPHXHxflfC+ZP5RYSlEB/wyBNEGuFe0SDFRk+UyihtA+BvvlXzeg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB7528

With the release build default now being INFO, the typically long EFI
memory map will want logging at DEBUG level only.

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

--- a/xen/common/efi/boot.c
+++ b/xen/common/efi/boot.c
@@ -1677,7 +1677,7 @@ void __init efi_init_memory(void)
     if ( !efi_enabled(EFI_BOOT) )
         return;
 
-    printk(XENLOG_INFO "EFI memory map:%s\n",
+    printk(XENLOG_DEBUG "EFI memory map:%s\n",
            map_bs ? " (mapping BootServices)" : "");
     for ( i = 0; i < efi_memmap_size; i += efi_mdesc_size )
     {
@@ -1688,8 +1688,8 @@ void __init efi_init_memory(void)
         paddr_t mem_base;
         unsigned long mem_npages;
 
-        printk(XENLOG_INFO " %013" PRIx64 "-%013" PRIx64
-                           " type=%u attr=%016" PRIx64 "\n",
+        printk(XENLOG_DEBUG " %013" PRIx64 "-%013" PRIx64
+                            " type=%u attr=%016" PRIx64 "\n",
                desc->PhysicalStart, desc->PhysicalStart + len - 1,
                desc->Type, desc->Attribute);
 


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 12:12:58 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 12:12:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619293.964119 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtRtZ-0000hr-0O; Thu, 19 Oct 2023 12:12:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619293.964119; Thu, 19 Oct 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 1qtRtY-0000hk-U6; Thu, 19 Oct 2023 12:12:56 +0000
Received: by outflank-mailman (input) for mailman id 619293;
 Thu, 19 Oct 2023 12:12:55 +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 1qtRtX-0000he-RY
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 12:12: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 1qtRtW-000713-6q; Thu, 19 Oct 2023 12:12:54 +0000
Received: from [15.248.3.1] (helo=[10.24.67.33])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qtRtV-00039r-Sh; Thu, 19 Oct 2023 12:12: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=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=+DAshfwyuAWm4s/Xxw/yeFbYMvNl6pP8EA5X1K8S4vc=; b=IVbzbb0XXqd38DXAXIdwBQAauO
	YJuXQ5NhFwH3EEculzGcMVv0yJEH4Ah3Fkb/8A4HrJnUJE8sEVbcDahuYXBLoYXhiWixzn/hwiMaY
	vZoTEP+PnWryz2s/T+8oB6Mps/qLAt40I/wjN6oCS2C8Mvk1J6hGRqBtOT7GSzgAdDEA=;
Message-ID: <97eaa9e6-bc4b-4128-9563-cf3647a794c7@xen.org>
Date: Thu, 19 Oct 2023 13:12:52 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v1 04/29] xen/asm-generic: introduce stub header device.h
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>,
 xen-devel@lists.xenproject.org, Oleksii Kurochko <oleksii.kurochko@gmail.com>
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
 <3cc9ecc3abcd21c5ed7276b01bf5963e6a5fd5e0.1694702259.git.oleksii.kurochko@gmail.com>
 <a20f5783-7ee3-6ed1-d4cf-379c30c64a12@suse.com>
 <9ee7b3c9-de71-4790-815c-8b2859a85465@xen.org>
 <17d9102a-da9d-d41b-6362-1ccfe21b7976@suse.com>
 <5059771d-3842-4a7c-814d-69388179b246@xen.org>
 <61c20f5d-a324-9ece-2140-4d0c775e193c@suse.com>
 <54ac0161-7302-4190-9c6e-273caa652058@xen.org>
 <04fe316e-bc4f-0df8-7771-5be7ca878297@suse.com>
 <3ce85a73-96ab-41c8-8b90-f3899e771845@xen.org>
 <63392d67-f1af-a53b-59c2-ad4752159726@suse.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <63392d67-f1af-a53b-59c2-ad4752159726@suse.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi,

On 19/10/2023 12:41, Jan Beulich wrote:
> On 19.10.2023 13:27, Julien Grall wrote:
>> that doesn't involve one arch to symlink headers from another arch.
> 
> Whether to use symlinks or #include "../../arch/..." or yet something else is
> a matter of mechanics.

#include "../../arch/../" is pretty much in the same category. This is 
simply hiding the fact they could be in asm-generic.

Anyway, I have shared my view. Let see what the others thinks.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 12:15:19 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 12:15:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619296.964130 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtRvm-00020K-Fv; Thu, 19 Oct 2023 12:15:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619296.964130; Thu, 19 Oct 2023 12:15: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 1qtRvm-00020C-Cx; Thu, 19 Oct 2023 12:15:14 +0000
Received: by outflank-mailman (input) for mailman id 619296;
 Thu, 19 Oct 2023 12:15: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=7/TV=GB=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qtRvl-0001yq-94
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 12:15:13 +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 267e4239-6e79-11ee-9b0e-b553b5be7939;
 Thu, 19 Oct 2023 14:15:11 +0200 (CEST)
Received: by mail-ej1-x636.google.com with SMTP id
 a640c23a62f3a-9becde9ea7bso157342866b.0
 for <xen-devel@lists.xenproject.org>; Thu, 19 Oct 2023 05:15: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
 7-20020a170906018700b009a5f7fb51dcsm3427846ejb.42.2023.10.19.05.15.10
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Thu, 19 Oct 2023 05:15: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: 267e4239-6e79-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1697717711; x=1698322511; darn=lists.xenproject.org;
        h=content-transfer-encoding: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=+BUoJlr2d9SGhOZnKXjwGXKAnqJ08sAzJRmuZR7OsvE=;
        b=mSE3cQr2tu07sEeaY/Ql7a3rCnpkFpZ7oakPHpAoY0QPvJKx5uDs2lbagnvMavMiLX
         e96NrGyzuEeUsFeSdKjBRpwT3sknlEdt649kop8imLUzgZvkBMotMopmU/XUeP/mj3a3
         JwL5yv2QguPP4dpmdguGpVhozqKUIwKa9j3GI=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697717711; x=1698322511;
        h=content-transfer-encoding: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=+BUoJlr2d9SGhOZnKXjwGXKAnqJ08sAzJRmuZR7OsvE=;
        b=FJXHIb46vC14WOYAffeYUisIttufwvJ84q0+WlTABg20a1Td1QH0dH5fiPtqCyj+yJ
         EuNxbi1+KVBRAefi1Hsuz37BgY2rHkUT5Oe0/sUiAJ4MJwiwX0L40+2fI2agv4A67M1/
         TSVUvh575PzJerKwxUyTGinP2RNGdXRVUt7yf8uWjxo0DS8/njhe++Z535R6fIg5h+eJ
         M8QXNzwHA+mclEzhFh9b2GGvGB67LDft0DtGrVDBNFGAQAFrY5Y1LmEVFsGwjMjQg7o6
         OMDJVIzEZkALDIDZFpBpCQIH+BUJtzrJ28Dv5nU02zzT5aYVY1WIt6pY1sGi7WE4mg32
         BE4A==
X-Gm-Message-State: AOJu0YwefqoYJqRWFSh+BxrxJ1uccIBPuEj6hnqB4tG2nHzblLJ2QLpk
	HFlmxDHaAvuzJWy7Nyq1MGBjJg==
X-Google-Smtp-Source: AGHT+IEQQkeDFCN8s0KLc+WM+DbyWQ4YOrXfZJiMcv69igJpbVFuc+OJd4SSkuUAY7dHRdXAXrOmEA==
X-Received: by 2002:a17:907:724b:b0:9a5:aa43:1c7c with SMTP id ds11-20020a170907724b00b009a5aa431c7cmr1466029ejc.26.1697717710630;
        Thu, 19 Oct 2023 05:15:10 -0700 (PDT)
Message-ID: <514d207c-fc27-405e-a71a-6ac24bf4184e@citrix.com>
Date: Thu, 19 Oct 2023 13:15:10 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH for-4.18] EFI: reduce memory map logging level
Content-Language: en-GB
To: Jan Beulich <jbeulich@suse.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: 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: <16a32be2-6982-2463-3d71-383a21d7e074@suse.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: <16a32be2-6982-2463-3d71-383a21d7e074@suse.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit

On 19/10/2023 1:08 pm, Jan Beulich wrote:
> With the release build default now being INFO, the typically long EFI
> memory map will want logging at DEBUG level only.
>
> Signed-off-by: Jan Beulich <jbeulich@suse.com>

Acked-by: Andrew Cooper <andrew.cooper3@citrix.com>

Honestly, we need more pruning because we end up printing this twice,
but that's not a change suitable for 4.18 at this juncture.


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 12:29:55 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 12:29:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619301.964139 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtS9p-0004MX-Mo; Thu, 19 Oct 2023 12:29:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619301.964139; Thu, 19 Oct 2023 12:29: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 1qtS9p-0004MQ-K2; Thu, 19 Oct 2023 12:29:45 +0000
Received: by outflank-mailman (input) for mailman id 619301;
 Thu, 19 Oct 2023 12:29: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=AWKy=GB=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qtS9o-0004MG-9N
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 12:29:44 +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 2dfa7808-6e7b-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 14:29:43 +0200 (CEST)
Received: from DUZPR01CA0207.eurprd01.prod.exchangelabs.com
 (2603:10a6:10:4b6::9) by DB3PR08MB8890.eurprd08.prod.outlook.com
 (2603:10a6:10:43a::22) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.24; Thu, 19 Oct
 2023 12:29:40 +0000
Received: from DBAEUR03FT039.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:4b6:cafe::e3) by DUZPR01CA0207.outlook.office365.com
 (2603:10a6:10:4b6::9) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.24 via Frontend
 Transport; Thu, 19 Oct 2023 12:29:40 +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.6907.26 via Frontend Transport; Thu, 19 Oct 2023 12:29:39 +0000
Received: ("Tessian outbound 470906b1fe6c:v215");
 Thu, 19 Oct 2023 12:29:39 +0000
Received: from 4d0112cf81cf.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 E690228F-06DB-4D7B-A869-99AE22EA8009.1; 
 Thu, 19 Oct 2023 12:29:33 +0000
Received: from EUR02-AM0-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 4d0112cf81cf.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Thu, 19 Oct 2023 12:29:33 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by PA6PR08MB10663.eurprd08.prod.outlook.com (2603:10a6:102:3c9::8)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.36; Thu, 19 Oct
 2023 12:29:31 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41%4]) with mapi id 15.20.6907.022; Thu, 19 Oct 2023
 12:29: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: 2dfa7808-6e7b-11ee-98d5-6d05b1d4d9a1
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=wvNjs8hdm554H2pPkmD66Oy4Zng7ZkFKQkpphr69qd0=;
 b=zGt3EE+XwRI81CD4RScyFvzH/ydjHWsqcuPN4CSV7FHJ1+POn4PBcNp4ZVO6Vw9u1eY2XkhfLTAXluopuAxYTTvGAk5rUHI0dPQFJVQLhNma+m61VQVqi4FzlLT6yySOYpCh1IkRCcTonAbfWaef/c/2XI+USXYLRLYeamY+TKA=
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: 701d8caa9ee9e0c3
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=bmUuj4CIsDm4U6Gmy6RX/7MaMXFr1Av5cUCfL+HgrEcDMd+7xV5k7v3rWj85wjYRyhpw0fDrdi8abq+kRurzHQW9aXIKrV8XvHTCbsRLClly0BNcyP1M8vJtER3apM/thFcgMP2KK+WPX+7tJ8NTX7XUtp08q4dO/3dJBYLuHMYGOrnK4xBaO3oDwsCGTtomLF/tCiee0zX2uR+L62mnxSzpOhey8/hfwVHohNgKI0uyysvJQVNTIjTlWBvaR8C5LFBMWseILsmWDFX5zO6K++CycdouBXheSrymOox6SMgP3/iZntEcGrAUvlvhhrXhOC1VrW89bNaGJMfKITQI5g==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=wvNjs8hdm554H2pPkmD66Oy4Zng7ZkFKQkpphr69qd0=;
 b=OCQWRDmd3VzxPG2qBnJ+EjPZNML7gyQQgmx/iwhbKH8uvS2YdYeSvQ6JTt0ECtk/VWAC8sAAA68tbXYWAcqkOcv5BUnvNusmYxewUfPIQdwiIxQN9aECcebGcPJN96GEnsvKe2qV7DDGM2g9zLPawmEgScAwReozCXu77RK7c6kAGOehlRrp1ns9AatCa0+o5JZlnpf0mWSjBUMA6xqQ0WZBw7FPrcgGk+mQfAxM6Lr8KFez8R4DVK2EqjsEvx2GnsXW9a507S1oCHJq9FswOlqRlFSUfVZIfBTbweYnWXRu2CsST7fLVpVoAIbY/yHl0GcH6+4qfXL2lZAwgmsE0g==
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=wvNjs8hdm554H2pPkmD66Oy4Zng7ZkFKQkpphr69qd0=;
 b=zGt3EE+XwRI81CD4RScyFvzH/ydjHWsqcuPN4CSV7FHJ1+POn4PBcNp4ZVO6Vw9u1eY2XkhfLTAXluopuAxYTTvGAk5rUHI0dPQFJVQLhNma+m61VQVqi4FzlLT6yySOYpCh1IkRCcTonAbfWaef/c/2XI+USXYLRLYeamY+TKA=
From: Henry Wang <Henry.Wang@arm.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>
CC: Jan Beulich <jbeulich@suse.com>, "xen-devel@lists.xenproject.org"
	<xen-devel@lists.xenproject.org>, George Dunlap <george.dunlap@citrix.com>,
	Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
	Wei Liu <wl@xen.org>
Subject: Re: [PATCH for-4.18] EFI: reduce memory map logging level
Thread-Topic: [PATCH for-4.18] EFI: reduce memory map logging level
Thread-Index: AQHaAoUDv9e4z7RTDkOyNBvOs3xAR7BRBsUAgAAD9oA=
Date: Thu, 19 Oct 2023 12:29:31 +0000
Message-ID: <19C3E926-CA38-437F-85AB-3D2273DD6F27@arm.com>
References: <16a32be2-6982-2463-3d71-383a21d7e074@suse.com>
 <514d207c-fc27-405e-a71a-6ac24bf4184e@citrix.com>
In-Reply-To: <514d207c-fc27-405e-a71a-6ac24bf4184e@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_|PA6PR08MB10663:EE_|DBAEUR03FT039:EE_|DB3PR08MB8890:EE_
X-MS-Office365-Filtering-Correlation-Id: a8082d7d-8863-4cde-85d3-08dbd09f1073
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:
 DouXAARd9/A7OKIr3VNCxfsDS6sESmjd4BhZ02CcQIR0l1rxx97JQPurUntO5Y7SU6PzBjImOMAYwf5dAOZcKMzCeLX1tuzA+lsOPC/Ls2peUICbjRcy+IXm9KbPMVsp69bz6kozyuBPqXqSx2ixvkUXsUZCF5gO9uY5DyiEbThY22hxPh2fjFDDujwSxHjkeFjrUti0/iEujb9DRskES5Kvv1IzWncLqCaxurdKg10rlWbaZ9SfJSlO9tRBGNumWZJSyvrLYN8oy7SasRhj5Ds95ZC9iEbLO2ZJ67uLxrxtY1o8lSKabIDvD2uq1kQZRA5Sv43kneP82uchA7MZXbMNwiYm6x8tWqxTmbwk8yM5qleJpmQHUKo7WxBpsOoH6vVEZF8RBSyvWhbny0EHjxzLHtYLUTdwn9cledJVHUXdxInFx3pzGR5I/1KyOKFQzv1up4rY2XBMwew8N6IFlDd/XKl5QfJPhdRWXuUG5u45BQ3k+99c7uIz+rh1uBTx6O6QYU/PSzTeNQVp/kgxrOODPaU8QzZ6sJamm2VpzB5EjGxQxm66tNm5KZGmGB6kHPfo6xQfUuGN4VZ6Zkq67KGdUv/Px9xvg24t1RZ4MJC3/nejtInoqbB6lQNQNZamqD++rBBZ70B+hYnW94UNLg==
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)(136003)(396003)(376002)(346002)(39860400002)(230922051799003)(451199024)(64100799003)(186009)(1800799009)(33656002)(26005)(2616005)(86362001)(4326008)(8936002)(41300700001)(5660300002)(122000001)(8676002)(38070700005)(36756003)(38100700002)(6512007)(6506007)(53546011)(66946007)(478600001)(6486002)(71200400001)(6916009)(66556008)(76116006)(66476007)(66446008)(91956017)(64756008)(316002)(54906003)(2906002)(4744005)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="us-ascii"
Content-ID: <D51A5C70D9422E4DB25A4A2DC17E96E0@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA6PR08MB10663
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:
	9df7ba86-6b13-435e-130a-08dbd09f0bb5
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	uPSCzsqJUgSbPs51H+a80rUdsOGfiKfCWa23EE5v0WGut4sHckUJzzCzIej4a3yNhrV4nWcLE0K96jjFoY5pE1Grz1Q0FYhAX3mtgJz1ishpHa4dkNu4kJtstFqrDcJm/R4sjiuFSuMHdrtGrnhrlt3RER2hPRueeHwbxcj/7WHfMSizhPcNbogxzMGrYOl5RJjZr+2QrJlM75vY9AVvigmuJfmHuFO7YMx3GJdf1oRWIJx8e1q6iKKD+riJcOlHMm+/OeomkONe2Pyx6DNBj25XJHZ93S+EWHhGJaqLR58vEKn8cs5ybOHzffQtmY54jfatA3MQ0R1meNpFjT4I6I9dKpZ0i4kigo8yoX+RyaFTi4Dh3uOtTlhqMHOvAGLQJXkm88vk3jNRM3rWlKO3Daiqcns3dzKwh+n09LeFlh0xXQnDgyNBHEVTgY8e+n9TAOzD3yeasz8JXKuktGRVPqDNc7Mww6sNXfMTbdqROr59pOvBY2aEwfh3chLFUdq3YOUXSZsWA+Tjr+OxfH4xvASbs6VeVQGN0a+sI5/K/7J5I37Kcexgip94+1Ch3aw1rkFW2D2bPQcGON43eF6ibf6fnR+xiIdUX78aOVILAUK+eoyowbuIkWwNv9Ub9O889TmTlQi5FjBo2LIMarBTdpPAk2cU6Vwu9ZuWo046a5F7SQ9RBoza5GAPVmNA4RptFVmgHc8T3c8V/P+qxqT4aA==
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)(376002)(39850400004)(230922051799003)(451199024)(64100799003)(1800799009)(186009)(82310400011)(46966006)(36840700001)(36756003)(33656002)(40480700001)(356005)(54906003)(81166007)(82740400003)(336012)(86362001)(47076005)(36860700001)(2616005)(26005)(53546011)(6506007)(6512007)(4744005)(6486002)(478600001)(2906002)(70206006)(70586007)(316002)(4326008)(41300700001)(8676002)(6862004)(5660300002)(8936002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Oct 2023 12:29:39.7128
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: a8082d7d-8863-4cde-85d3-08dbd09f1073
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: DB3PR08MB8890

Hi Andrew, Jan,

> On Oct 19, 2023, at 20:15, Andrew Cooper <andrew.cooper3@citrix.com> wrot=
e:
>=20
> On 19/10/2023 1:08 pm, Jan Beulich wrote:
>> With the release build default now being INFO, the typically long EFI
>> memory map will want logging at DEBUG level only.
>>=20
>> Signed-off-by: Jan Beulich <jbeulich@suse.com>
>=20
> Acked-by: Andrew Cooper <andrew.cooper3@citrix.com>

Release-acked-by: Henry Wang <Henry.Wang@arm.com>

Kind regards,
Henry


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 12:30:48 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 12:30:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619303.964150 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtSAq-0005jP-1a; Thu, 19 Oct 2023 12:30:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619303.964150; Thu, 19 Oct 2023 12: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 1qtSAp-0005jI-TE; Thu, 19 Oct 2023 12:30:47 +0000
Received: by outflank-mailman (input) for mailman id 619303;
 Thu, 19 Oct 2023 12:30: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 1qtSAo-0005j8-Jj
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 12:30: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 1qtSAn-0007QV-UK; Thu, 19 Oct 2023 12:30:45 +0000
Received: from [15.248.3.1] (helo=[10.24.67.33])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qtSAn-0003f9-OI; Thu, 19 Oct 2023 12:30: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=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=8PxoLLotM7v+VwNyJXjxvYo2eQzVUxnDitYf5K/TFeM=; b=fGToxjVJttZv2v6Raxc5LShShs
	Mjtz0ONxaOClgvVjECl/cTpg5rCgtCLA2pPeIYDA/b5Vg4C2B71sFwqua28tdNATt1uhH2Ljf/0Il
	ymhRs7A0ntVLZ4vZ8kbioZ7R9LUiDxohVcs0pILhl8ifoarXgUL6DLeWBovT1bOUcUeI=;
Message-ID: <edc5d2b1-a3bd-44c4-83ea-6ff436fe7346@xen.org>
Date: Thu, 19 Oct 2023 13:30:43 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN PATCH 1/4] xen/arm: address violations of MISRA C:2012 Rule
 13.1
Content-Language: en-GB
To: Simone Ballarin <simone.ballarin@bugseng.com>,
 xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com, sstabellini@kernel.org,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
References: <cover.1697638210.git.simone.ballarin@bugseng.com>
 <31a926a09dfcef43d13a402fd3b235aeba48009d.1697638210.git.simone.ballarin@bugseng.com>
 <41d82896-5471-4eaa-8bdd-a192e28d5546@xen.org>
 <3de5e340-30bb-44aa-affd-89f343ed1fa1@bugseng.com>
 <7066a646-711c-4dce-f3c0-effb6ae91a39@xen.org>
 <67782815-7803-4ef5-80f4-db6181f7a6e2@bugseng.com>
 <15923aaf-c005-45fb-8bb4-50d2e0995f18@xen.org>
 <8734535a-0c00-44b4-8257-64155807b052@bugseng.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <8734535a-0c00-44b4-8257-64155807b052@bugseng.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

Hi,

On 19/10/2023 12:10, Simone Ballarin wrote:
> On 19/10/23 12:11, Julien Grall wrote:
>> Hi,
>>
>> On 19/10/2023 09:43, Simone Ballarin wrote:
>>> On 19/10/23 10:19, Julien Grall wrote:
>>>> Hi Simone,
>>>>
>>>> On 19/10/2023 08:34, Simone Ballarin wrote:
>>>>> On 18/10/23 17:03, Julien Grall wrote:
>>>>>> Hi,
>>>>>>
>>>>>> On 18/10/2023 15:18, Simone Ballarin wrote:
>>>>>>> Rule 13.1: Initializer lists shall not contain persistent side 
>>>>>>> effects
>>>>>>>
>>>>>>> This patch moves expressions with side-effects into new variables 
>>>>>>> before
>>>>>>> the initializer lists.
>>>>>>
>>>>>> Looking at the code, I feel the commit message should be a bit 
>>>>>> more verbose because they are no apparent side-effects.
>>>>>>
>>>>>>>
>>>>>>> Function calls do not necessarily have side-effects, in these 
>>>>>>> cases the
>>>>>>> GCC pure or const attributes are added when possible.
>>>>>>
>>>>>> You are only adding pure in this patch.
>>>>>>
>>>>>>>
>>>>>>> No functional changes.
>>>>>>>
>>>>>>> Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>
>>>>>>>
>>>>>>> ---
>>>>>>> Function attributes pure and const do not need to be added as GCC
>>>>>>> attributes, they can be added using ECLAIR configurations.
>>>>>>> ---
>>>>>>>   xen/arch/arm/device.c              |  6 +++---
>>>>>>>   xen/arch/arm/guestcopy.c           | 12 ++++++++----
>>>>>>>   xen/arch/arm/include/asm/current.h |  2 +-
>>>>>>>   3 files changed, 12 insertions(+), 8 deletions(-)
>>>>>>>
>>>>>>> diff --git a/xen/arch/arm/device.c b/xen/arch/arm/device.c
>>>>>>> index 1f631d3274..e9be078415 100644
>>>>>>> --- a/xen/arch/arm/device.c
>>>>>>> +++ b/xen/arch/arm/device.c
>>>>>>> @@ -319,6 +319,8 @@ int handle_device(struct domain *d, struct 
>>>>>>> dt_device_node *dev, p2m_type_t p2mt,
>>>>>>>       int res;
>>>>>>>       paddr_t addr, size;
>>>>>>>       bool own_device = !dt_device_for_passthrough(dev);
>>>>>>> +    bool dev_is_hostbridge = is_pci_passthrough_enabled() &&
>>>>>>> +                             device_get_class(dev) == 
>>>>>>> DEVICE_PCI_HOSTBRIDGE;
>>>>>>
>>>>>> The commit message suggests that the code is moved because there 
>>>>>> are side-effects. But none of them should have any side-effects.
>>>>>>
>>>>>
>>>>> device_get_class contains an 'ASSERT(dev != NULL)' which is definitely
>>>>> a side-effect.
>>>>
>>>> Just to confirm my understanding, the side-effect here would be the 
>>>> fact that it traps and then panic(). IOW, if the trap was 
>>>> hypothetically replaced by a while (1), then it would not be an 
>>>> issue. is it correct? >
>>>
>>> No, it isn't. A infinite loop is a side effect.
>>
>> I am not sure why. There are no change of state here.
>>
>>>
>>>> I can see two solutions:
>>>>    1) Remove the ASSERT(). It is only here to make the NULL 
>>>> dereference obvious in debug build. That said, the stack trace for a 
>>>> NULL dereference would still be as clear.
>>>
>>> Removing the ASSERT just to make MISRA happy does not sound good to me.
>>
>> I didn't suggest the ASSERT() just ot make MISRA happy. I suggested it 
>> because it has no value here (we still have stack track if there are 
>> any issue).
>>
>>>
>>>>    2) Replace the ASSERT with a proper check if ( !dev ) return 
>>>> DEVICE_UNKONWN. AFAIU, we would not be able to add a 
>>>> ASSERT_UNREACHABLE() because this would be again a perceived 
>>>> side-effect.
>>>>
>>>
>>> Replacing it with a proper check can be a solution, but I still 
>>> prefer to add a deviation or move the invocation outside the 
>>> initializer list.
>>
>> In general, I am not in favor of adding deviation if we can avoid them 
>> because the code can changed and therefore either moot the deviation 
>> or hide any other issue.
>>
> 
> Ok, I will proceed with option 1.
> 
>> [...]
>>
>>> Yes, sorry I was looking to the wrong definition.
>>> In ARM the problem is the presence of a *volatile* ASM.
>>> Please take a look here:
>>>
>>> https://saas.eclairit.com:3787/fs/var/local/eclair/XEN.ecdf/ECLAIR_normal/arm/for-4.19/ARM64-Set2/latest/PROJECT.ecd;/by_service/MC3R1.R13.1.html#{"select":true,"selection":{"hiddenAreaKinds":[],"hiddenSubareaKinds":[],"show":true,"selector":{"enabled":true,"negated":false,"kind":0,"domain":"fingerprint","inputs":[{"enabled":true,"text":"0da7f0c9aea5491eba343618f965c81f5d7aed3c"}]}}}
>>
>> Ok. So the problem is the READ_SYSREG(...). Is there a way we can 
>> encapsulate the call so we don't need to use your propose trick or 
>> deviate at every use of 'current'?
>>
> 
> The point is that we need to move "READ_SYSREG(TPIDR_EL2)" outside
> the initializer (there are no advantages in wrapping it on a function
> if the function cannot be declared pure).

I was thinking that maybe it could help to deviate.

> 
> The proposed solution seems to me the cleanest way do to it. I do not 
> see any other acceptable solutions.

I have some concern with the proposal (they are most likely matter of 
taste).

We usually use this trick when 'current' is used multiple time to save 
process (using 'current' is not cost free). But in this case, this is 
renaming without any apparent benefits.

If we wanted to go down this route, then this would likely want a 
comment. At which point we should just deviate.

I will have a think if there are something else we can do. Could we 
consider to not address it for now?

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 12:37:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 12:37:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619307.964159 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtSHe-0007J7-Mp; Thu, 19 Oct 2023 12:37:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619307.964159; Thu, 19 Oct 2023 12:37: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 1qtSHe-0007J0-Jh; Thu, 19 Oct 2023 12:37:50 +0000
Received: by outflank-mailman (input) for mailman id 619307;
 Thu, 19 Oct 2023 12:37: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=b9Lg=GB=casper.srs.infradead.org=BATV+06ae5fa416ae820d9d5a+7361+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qtSHa-0007He-Jk
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 12:37:48 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 4d9b5a29-6e7c-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 14:37:45 +0200 (CEST)
Received: from [2001:8b0:10b:5:583b:153f:ff9:f813]
 (helo=u3832b3a9db3152.ant.amazon.com)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qtSHL-0072lR-8h; Thu, 19 Oct 2023 12:37: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: 4d9b5a29-6e7c-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=MIME-Version:Content-Type:References:
	In-Reply-To:Date:Cc:To:From:Subject:Message-ID:Sender:Reply-To:
	Content-Transfer-Encoding:Content-ID:Content-Description;
	bh=M8ZtQJm4spIcwBKs1cE9Y+VmbG/oqkYGXqzc+V9etOI=; b=WFM6+SLBj+2VN8uhQkj80V/C8y
	jNzHTXoblAEqfqoQUfCIAusdxj0aGNCOD03ubmu3UmcnXNebuI4KpQCF1udwMmIlYWe26n+KgfebG
	ve5jfzhtp6rDQNIneQJPIjhwHa+4xvCoIYHlV1Ism1R8mI8WSpbZ7nl4WAKWau/19Ih6N9El941LB
	g5FfivmRTOric36GQa6WlnV8TacAshTMJ/MCq+gn3lE9VxSGUMXxR3R9LyhzkNLKc0PzrnRfwlxRe
	LrHfH33lL3hXakfPivQ90UIuEaR42ILflh2zGAA6E/WrEWr6kMbqvvg+IDu5vJARSHTsbvZPO409I
	5Z/NKrGQ==;
Message-ID: <bad8f05b72710e436d01555704139839415249d6.camel@infradead.org>
Subject: Re: [PATCH v1 20/23] xen platform: unplug ahci object
From: David Woodhouse <dwmw2@infradead.org>
To: Bernhard Beschow <shentey@gmail.com>, qemu-devel@nongnu.org, Joel Upham
	 <jupham125@gmail.com>
Cc: Stefano Stabellini <sstabellini@kernel.org>, Anthony Perard
 <anthony.perard@citrix.com>, Paul Durrant <paul@xen.org>, "Michael S.
 Tsirkin" <mst@redhat.com>, Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
 Paolo Bonzini <pbonzini@redhat.com>, Richard Henderson
 <richard.henderson@linaro.org>,  Eduardo Habkost <eduardo@habkost.net>,
 xen-devel@lists.xenproject.org
Date: Thu, 19 Oct 2023 13:37:30 +0100
In-Reply-To: <CB4239A2-8502-406A-A594-3065C0D3B104@gmail.com>
References: <cover.1687278381.git.jupham125@gmail.com>
	 <9b8183903cbf20db4e2f0dafda9e0ed271a86a8e.1687278381.git.jupham125@gmail.com>
	 <CB4239A2-8502-406A-A594-3065C0D3B104@gmail.com>
Content-Type: multipart/signed; micalg="sha-256"; protocol="application/pkcs7-signature";
	boundary="=-bRDKDojRd76wga/45xFW"
User-Agent: Evolution 3.44.4-0ubuntu2 
MIME-Version: 1.0
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html


--=-bRDKDojRd76wga/45xFW
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Thu, 2023-06-22 at 05:40 +0000, Bernhard Beschow wrote:
> Am 20. Juni 2023 17:24:54 UTC schrieb Joel Upham <jupham125@gmail.com>:
> > This will unplug the ahci device when the Xen driver calls for an unplu=
g.
> > This has been tested to work in linux and Windows guests.
> > When q35 is detected, we will remove the ahci controller
> > with the hard disks.=C2=A0 In the libxl config, cdrom devices
> > are put on a seperate ahci controller. This allows for 6 cdrom
> > devices to be added, and 6 qemu hard disks.
>=20
> Does this also work with KVM Xen emulation? If so, the QEMU manual
> should be updated accordingly in this patch since it explicitly rules
> out Q35 due to missing AHCI unplug:
> https://gitlab.com/qemu-project/qemu/-/blob/stable-8.0/docs/system/i386/x=
en.rst?plain=3D1&ref_type=3Dheads#L51

No, it doesn't work.=C2=A0Those assumptions about the topology and which
disk/cdrom devices are attached to which AHCI device on which PCI bus,
are not valid in the general case. So if I boot an HVM guest thus...

 $ qemu-system-x86_64 -M q35 -m 1g -display none -serial mon:stdio \
     --accel kvm,xen-version=3D0x40011,kernel-irqchip=3Dsplit \
     -drive file=3D${GUEST_IMAGE},if=3Dxen=C2=A0\
     -drive file=3D${GUEST_IMAGE},file.locking=3Doff,if=3Dide

... it still sees the AHCI disk when it boots:

[root@localhost ~]# cat /proc/partitions=20
major minor  #blocks  name

 202        0   20971520 xvda
 202        1   18874368 xvda1
 202        2    2096128 xvda2
   8        0   20971520 sda
   8        1   18874368 sda1
   8        2    2096128 sda2
  11        0    1048575 sr0
[root@localhost ~]# lspci
00:00.0 Host bridge: Intel Corporation 82G33/G31/P35/P31 Express DRAM Contr=
oller
00:01.0 Unassigned class [ff80]: XenSource, Inc. Xen Platform Device (rev 0=
1)
00:02.0 VGA compatible controller: Device 1234:1111 (rev 02)
00:1f.0 ISA bridge: Intel Corporation 82801IB (ICH9) LPC Interface Controll=
er (rev 02)
00:1f.2 SATA controller: Intel Corporation 82801IR/IO/IH (ICH9R/DO/DH) 6 po=
rt SATA Controller [AHCI mode] (rev 02)
00:1f.3 SMBus: Intel Corporation 82801I (ICH9 Family) SMBus Controller (rev=
 02)

We probably do need to iterate over the children of the PCI device and
selectively destroy them. Which can be the *same* for IDE and AHCI.
Patch below.

It would be slightly more natural to do ide_dev_unplug() with an
'if (!idedev) return;' but I've done it this way to keep the
indentation the same, and thus highlight that it's just using the
existing blk unplug magic. I kind of hate that we *need* that magic,
shouldn't object_unparent() Just Work=E2=84=A2 and unwire everything?
(It *doesn't*; qemu later crashes. But I think it *should*).

As I'm literally about to hit send on this, I realise I messed up the
'aux' logic. But as a proof of concept for this approach, this works OK
for both pc and q35 machines with Xen emulation tested as in the above
command line. Feel free to use it as you see fit, to which end:

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>

--- a/hw/i386/xen/xen_platform.c
+++ b/hw/i386/xen/xen_platform.c
@@ -169,37 +169,49 @@ static void pci_unplug_nics(PCIBus *bus)
  *
  * [1] https://xenbits.xen.org/gitweb/?p=3Dxen.git;a=3Dblob;f=3Ddocs/misc/=
hvm-emulated-unplug.pandoc
  */
-static void pci_xen_ide_unplug(PCIDevice *d, bool aux)
+static int ide_dev_unplug(DeviceState *dev, void *opaque)
 {
-    DeviceState *dev =3D DEVICE(d);
-    PCIIDEState *pci_ide;
-    int i;
     IDEDevice *idedev;
     IDEBus *idebus;
     BlockBackend *blk;
+    int unit;
=20
-    pci_ide =3D PCI_IDE(dev);
-
-    for (i =3D aux ? 1 : 0; i < 4; i++) {
-        idebus =3D &pci_ide->bus[i / 2];
-        blk =3D idebus->ifs[i % 2].blk;
+    idedev =3D IDE_DEVICE(object_dynamic_cast(OBJECT(dev), "ide-hd"));
+    if (idedev) {
+        idebus =3D IDE_BUS(qdev_get_parent_bus(dev));
=20
-        if (blk && idebus->ifs[i % 2].drive_kind !=3D IDE_CD) {
-            if (!(i % 2)) {
-                idedev =3D idebus->master;
-            } else {
-                idedev =3D idebus->slave;
-            }
+        unit =3D (idedev =3D=3D idebus->slave);
+        assert(unit || idedev =3D=3D idebus->master);
=20
+        blk =3D idebus->ifs[unit].blk;
+        if (blk) {
             blk_drain(blk);
             blk_flush(blk);
=20
             blk_detach_dev(blk, DEVICE(idedev));
-            idebus->ifs[i % 2].blk =3D NULL;
+            idebus->ifs[unit].blk =3D NULL;
             idedev->conf.blk =3D NULL;
             monitor_remove_blk(blk);
             blk_unref(blk);
         }
+
+        object_unparent(OBJECT(dev));
+    }
+
+    return 0;
+}
+
+static void pci_xen_ide_unplug(PCIDevice *d, bool aux)
+{
+    DeviceState *dev =3D DEVICE(d);
+
+    if (!aux) {
+        IDEBus *idebus =3D IDE_BUS(qdev_get_child_bus(DEVICE(dev), "ide.0"=
));
+        if (idebus && idebus->master) {
+            ide_dev_unplug(DEVICE(idebus->master), NULL);
+        }
+    } else {
+        qdev_walk_children(dev, NULL, NULL, ide_dev_unplug, NULL, NULL);
     }
     pci_device_reset(d);
 }
@@ -216,6 +228,7 @@ static void unplug_disks(PCIBus *b, PCIDevice *d, void =
*opaque)
=20
     switch (pci_get_word(d->config + PCI_CLASS_DEVICE)) {
     case PCI_CLASS_STORAGE_IDE:
+    case PCI_CLASS_STORAGE_SATA:
         pci_xen_ide_unplug(d, aux);
         break;
=20
--=20
2.34.1



--=-bRDKDojRd76wga/45xFW
Content-Type: application/pkcs7-signature; name="smime.p7s"
Content-Disposition: attachment; filename="smime.p7s"
Content-Transfer-Encoding: base64

MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgEFADCABgkqhkiG9w0BBwEAAKCCEkQw
ggYQMIID+KADAgECAhBNlCwQ1DvglAnFgS06KwZPMA0GCSqGSIb3DQEBDAUAMIGIMQswCQYDVQQG
EwJVUzETMBEGA1UECBMKTmV3IEplcnNleTEUMBIGA1UEBxMLSmVyc2V5IENpdHkxHjAcBgNVBAoT
FVRoZSBVU0VSVFJVU1QgTmV0d29yazEuMCwGA1UEAxMlVVNFUlRydXN0IFJTQSBDZXJ0aWZpY2F0
aW9uIEF1dGhvcml0eTAeFw0xODExMDIwMDAwMDBaFw0zMDEyMzEyMzU5NTlaMIGWMQswCQYDVQQG
EwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYD
VQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50
aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC
AQEAyjztlApB/975Rrno1jvm2pK/KxBOqhq8gr2+JhwpKirSzZxQgT9tlC7zl6hn1fXjSo5MqXUf
ItMltrMaXqcESJuK8dtK56NCSrq4iDKaKq9NxOXFmqXX2zN8HHGjQ2b2Xv0v1L5Nk1MQPKA19xeW
QcpGEGFUUd0kN+oHox+L9aV1rjfNiCj3bJk6kJaOPabPi2503nn/ITX5e8WfPnGw4VuZ79Khj1YB
rf24k5Ee1sLTHsLtpiK9OjG4iQRBdq6Z/TlVx/hGAez5h36bBJMxqdHLpdwIUkTqT8se3ed0PewD
ch/8kHPo5fZl5u1B0ecpq/sDN/5sCG52Ds+QU5O5EwIDAQABo4IBZDCCAWAwHwYDVR0jBBgwFoAU
U3m/WqorSs9UgOHYm8Cd8rIDZsswHQYDVR0OBBYEFAnA8vwL2pTbX/4r36iZQs/J4K0AMA4GA1Ud
DwEB/wQEAwIBhjASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEF
BQcDBDARBgNVHSAECjAIMAYGBFUdIAAwUAYDVR0fBEkwRzBFoEOgQYY/aHR0cDovL2NybC51c2Vy
dHJ1c3QuY29tL1VTRVJUcnVzdFJTQUNlcnRpZmljYXRpb25BdXRob3JpdHkuY3JsMHYGCCsGAQUF
BwEBBGowaDA/BggrBgEFBQcwAoYzaHR0cDovL2NydC51c2VydHJ1c3QuY29tL1VTRVJUcnVzdFJT
QUFkZFRydXN0Q0EuY3J0MCUGCCsGAQUFBzABhhlodHRwOi8vb2NzcC51c2VydHJ1c3QuY29tMA0G
CSqGSIb3DQEBDAUAA4ICAQBBRHUAqznCFfXejpVtMnFojADdF9d6HBA4kMjjsb0XMZHztuOCtKF+
xswhh2GqkW5JQrM8zVlU+A2VP72Ky2nlRA1GwmIPgou74TZ/XTarHG8zdMSgaDrkVYzz1g3nIVO9
IHk96VwsacIvBF8JfqIs+8aWH2PfSUrNxP6Ys7U0sZYx4rXD6+cqFq/ZW5BUfClN/rhk2ddQXyn7
kkmka2RQb9d90nmNHdgKrwfQ49mQ2hWQNDkJJIXwKjYA6VUR/fZUFeCUisdDe/0ABLTI+jheXUV1
eoYV7lNwNBKpeHdNuO6Aacb533JlfeUHxvBz9OfYWUiXu09sMAviM11Q0DuMZ5760CdO2VnpsXP4
KxaYIhvqPqUMWqRdWyn7crItNkZeroXaecG03i3mM7dkiPaCkgocBg0EBYsbZDZ8bsG3a08LwEsL
1Ygz3SBsyECa0waq4hOf/Z85F2w2ZpXfP+w8q4ifwO90SGZZV+HR/Jh6rEaVPDRF/CEGVqR1hiuQ
OZ1YL5ezMTX0ZSLwrymUE0pwi/KDaiYB15uswgeIAcA6JzPFf9pLkAFFWs1QNyN++niFhsM47qod
x/PL+5jR87myx5uYdBEQkkDc+lKB1Wct6ucXqm2EmsaQ0M95QjTmy+rDWjkDYdw3Ms6mSWE3Bn7i
5ZgtwCLXgAIe5W8mybM2JzCCBhQwggT8oAMCAQICEQDGvhmWZ0DEAx0oURL6O6l+MA0GCSqGSIb3
DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYD
VQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28g
UlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMB4XDTIyMDEwNzAw
MDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJARYTZHdtdzJAaW5mcmFkZWFkLm9y
ZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3GpC2bomUqk+91wLYBzDMcCj5C9m6
oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZHh7htyAkWYVoFsFPrwHounto8xTsy
SSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT9YgcBqKCo65pTFmOnR/VVbjJk4K2
xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNjP+qDrh0db7PAjO1D4d5ftfrsf+kd
RR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy2U+eITZ5LLE5s45mX2oPFknWqxBo
bQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3BgBEmfsYWlBXO8rVXfvPgLs32VdV
NZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/7auNVRmPB3v5SWEsH8xi4Bez2V9U
KxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmdlFYhAflWKQ03Ufiu8t3iBE3VJbc2
5oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9aelIl6vtbhMA+l0nfrsORMa4kobqQ5
C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMBAAGjggHMMIIByDAfBgNVHSMEGDAW
gBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeDMcimo0oz8o1R1Nver3ZVpSkwDgYD
VR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYwFAYIKwYBBQUHAwQGCCsGAQUFBwMC
MEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYBBQUHAgEWF2h0dHBzOi8vc2VjdGln
by5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9jcmwuc2VjdGlnby5jb20vU2VjdGln
b1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1haWxDQS5jcmwwgYoGCCsGAQUFBwEB
BH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdvLmNvbS9TZWN0aWdvUlNBQ2xpZW50
QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAjBggrBgEFBQcwAYYXaHR0cDovL29j
c3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5mcmFkZWFkLm9yZzANBgkqhkiG9w0B
AQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQvQ/fzPXmtR9t54rpmI2TfyvcKgOXp
qa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvIlSPrzIB4Z2wyIGQpaPLlYflrrVFK
v9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9ChWFfgSXvrWDZspnU3Gjw/rMHrGnql
Htlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0whpBtXdyDjzBtQTaZJ7zTT/vlehc/
tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9IzCCBhQwggT8oAMCAQICEQDGvhmW
Z0DEAx0oURL6O6l+MA0GCSqGSIb3DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3Jl
YXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0
ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJl
IEVtYWlsIENBMB4XDTIyMDEwNzAwMDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJ
ARYTZHdtdzJAaW5mcmFkZWFkLm9yZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3
GpC2bomUqk+91wLYBzDMcCj5C9m6oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZH
h7htyAkWYVoFsFPrwHounto8xTsySSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT
9YgcBqKCo65pTFmOnR/VVbjJk4K2xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNj
P+qDrh0db7PAjO1D4d5ftfrsf+kdRR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy
2U+eITZ5LLE5s45mX2oPFknWqxBobQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3
BgBEmfsYWlBXO8rVXfvPgLs32VdVNZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/
7auNVRmPB3v5SWEsH8xi4Bez2V9UKxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmd
lFYhAflWKQ03Ufiu8t3iBE3VJbc25oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9ae
lIl6vtbhMA+l0nfrsORMa4kobqQ5C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMB
AAGjggHMMIIByDAfBgNVHSMEGDAWgBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeD
Mcimo0oz8o1R1Nver3ZVpSkwDgYDVR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYw
FAYIKwYBBQUHAwQGCCsGAQUFBwMCMEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYB
BQUHAgEWF2h0dHBzOi8vc2VjdGlnby5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9j
cmwuc2VjdGlnby5jb20vU2VjdGlnb1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1h
aWxDQS5jcmwwgYoGCCsGAQUFBwEBBH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdv
LmNvbS9TZWN0aWdvUlNBQ2xpZW50QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAj
BggrBgEFBQcwAYYXaHR0cDovL29jc3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5m
cmFkZWFkLm9yZzANBgkqhkiG9w0BAQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQv
Q/fzPXmtR9t54rpmI2TfyvcKgOXpqa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvI
lSPrzIB4Z2wyIGQpaPLlYflrrVFKv9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9Ch
WFfgSXvrWDZspnU3Gjw/rMHrGnqlHtlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0w
hpBtXdyDjzBtQTaZJ7zTT/vlehc/tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9
IzGCBMcwggTDAgEBMIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVz
dGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMT
NVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEA
xr4ZlmdAxAMdKFES+jupfjANBglghkgBZQMEAgEFAKCCAeswGAYJKoZIhvcNAQkDMQsGCSqGSIb3
DQEHATAcBgkqhkiG9w0BCQUxDxcNMjMxMDE5MTIzNzMwWjAvBgkqhkiG9w0BCQQxIgQgiRU49FbN
n1S93DctcGtQGIwrVjDZZhP1gzon/qCa4Rowgb0GCSsGAQQBgjcQBDGBrzCBrDCBljELMAkGA1UE
BhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEYMBYG
A1UEChMPU2VjdGlnbyBMaW1pdGVkMT4wPAYDVQQDEzVTZWN0aWdvIFJTQSBDbGllbnQgQXV0aGVu
dGljYXRpb24gYW5kIFNlY3VyZSBFbWFpbCBDQQIRAMa+GZZnQMQDHShREvo7qX4wgb8GCyqGSIb3
DQEJEAILMYGvoIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVy
MRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNl
Y3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEAxr4Z
lmdAxAMdKFES+jupfjANBgkqhkiG9w0BAQEFAASCAgACTUyOv0W38LyAPRHHXE5r54l0NZkUUyu9
HrlakIcoRWOSIfpiOhugdJpWjzdRYeGxZpA/LP1HGDcOSOC61mmfp+jrhKTdth1kFPwquPWQW6sI
zgaWTsY74FsMbNwIgAgyYoQSKHniF8N3sZBTC2QOQD5c8HclVcoFE3Jec19NdHECWhWwTmhWJg27
224lqu1cnnAJSPWVmy/xQnc4VOg3TvpnaadIv89r2TCz+aP12tPy6XRXtzBTJuq+pi3aH1SjlTUA
rn/lBqfI6dqmEUzsYWpyKr6jDhw9+8ayTjx4bgEXjjKPR0ccpgrdoxhJyXLgKNXWFGdM9i/YL+UL
+6/AKM+3Kkv23FzR41pNfnUCgkShh6aiB4ZqsTyp1I0XjQtsUZnmuywqj9f61SytaowY9qdlTQpj
G3BWzHdj51k2EQyxurVBPc0XpjiXjij8SUl+ZCD/JxhGTQ+zGYDRI9pw3PShjds3YlnTsL12GDXP
/tkGEived/2CiJILZA9/7gOXOPHlEnw1tELqq2LsAszyYGeYdnb58ov6TwRp1OZPR/+3R/B7wPCl
dRs+nAmXXegogL5xeP4aU6wimWhI5+2hxMWN6AmVRp5Lk+0MabIQcok/1Wa3qyw0k4QZgK5FpOkn
xSMlUxii60sJleo47/GujeGje+MbP5LwfUnghwDW2AAAAAAAAA==


--=-bRDKDojRd76wga/45xFW--


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 12:51:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 12:51:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619311.964170 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtSV0-0006Gk-WD; Thu, 19 Oct 2023 12:51:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619311.964170; Thu, 19 Oct 2023 12:51: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 1qtSV0-0006Gd-TY; Thu, 19 Oct 2023 12:51:38 +0000
Received: by outflank-mailman (input) for mailman id 619311;
 Thu, 19 Oct 2023 12:51: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=8dTy=GB=arm.com=Luca.Fancellu@srs-se1.protection.inumbo.net>)
 id 1qtSUz-0006GX-Vl
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 12:51:38 +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 3c8c83d3-6e7e-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 14:51:35 +0200 (CEST)
Received: from DUZPR01CA0228.eurprd01.prod.exchangelabs.com
 (2603:10a6:10:4b4::23) by PAXPR08MB7442.eurprd08.prod.outlook.com
 (2603:10a6:102:2b8::13) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.36; Thu, 19 Oct
 2023 12:51:33 +0000
Received: from DB1PEPF0003922F.eurprd03.prod.outlook.com
 (2603:10a6:10:4b4:cafe::6d) by DUZPR01CA0228.outlook.office365.com
 (2603:10a6:10:4b4::23) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.25 via Frontend
 Transport; Thu, 19 Oct 2023 12:51:33 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DB1PEPF0003922F.mail.protection.outlook.com (10.167.8.102) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6907.20 via Frontend Transport; Thu, 19 Oct 2023 12:51:32 +0000
Received: ("Tessian outbound 028b72acc2da:v215");
 Thu, 19 Oct 2023 12:51:32 +0000
Received: from d0606dacfd85.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 72E21672-BEBF-4DF2-947E-59BA9D24C121.1; 
 Thu, 19 Oct 2023 12:50:57 +0000
Received: from EUR02-DB5-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id d0606dacfd85.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Thu, 19 Oct 2023 12:50:57 +0000
Received: from AM6PR08MB3749.eurprd08.prod.outlook.com (2603:10a6:20b:8f::22)
 by DU5PR08MB10823.eurprd08.prod.outlook.com (2603:10a6:10:528::20)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.35; Thu, 19 Oct
 2023 12:50:55 +0000
Received: from AM6PR08MB3749.eurprd08.prod.outlook.com
 ([fe80::501a:489c:410b:338]) by AM6PR08MB3749.eurprd08.prod.outlook.com
 ([fe80::501a:489c:410b:338%7]) with mapi id 15.20.6886.034; Thu, 19 Oct 2023
 12:50: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: 3c8c83d3-6e7e-11ee-98d5-6d05b1d4d9a1
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=ZE/IJLidMeOmhxNxkKOUN2tRTqP/zSdl32jB1XGwoFI=;
 b=qNSxiLxSXOqHohni5F3eh8oyQqeHomQmdg7fhTUBb36Kxuw2dKi2C92GwFgmRnBBV8C3qH05dK0R5in0Bx87f1eH3//K2cgCeP6JELRcJIklD9KiiE8KMvyiztnx4YXtIvPTnmorJWEM2N4roOdyspYqodWNDIikxX9yctUFtNM=
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: 70ece8a6e7edcf12
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=jxW0Yhi2R+utCwZfBieRTtwmDrBQHv0rpXppvR5GRK+sZU4idn4TcBvhCjTmJrlUgcfvFrT8fqV9WWMBNepXTfh1UwkVy5SLVYrXyiCr74W22VCEMlvcT/pM+CyDNDqsg7Woj3oi6R8Ztm2qYnJ5I5ZFxgEHDpoZG/mTgYIHdgyROhrhvCp/KWt8nTntkM30e7a27ykZvm3a9y1bQD/ixQChfjq9284DYACeHR8wcWiiNzyVs+Hlx1XMe9qcYwKNcG4u/QTa4FbYBuLYWJUpg36/vl5M6SlKfuv9uiPgjGLlLctq+0jGjKUJRRFI97/+jxGcZPFCHd+AWQuP+yJgYw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=ZE/IJLidMeOmhxNxkKOUN2tRTqP/zSdl32jB1XGwoFI=;
 b=Bhn4TylplhTSe7f3no5nARHkxqnADq/2VdHEJbLY4T3PbbTr9AgirmEtLDg/0UzhsW3LzADc4/VP0ydBCwNVNoCC8LwpCpr+6ZvbDVN2TsFpkVbmAW0+uyFohYio3lfM+eGd2+wr5fdeJRcj4F39ZUcU45dWViEOEiEdUDk5oARELLgoYJuVMLsyUb5O1R0i/EFmX134k00+2+jMRTUSeEhIcwgPk3ko6rIvqa8gUxIFkPlaoxCUPaYZWvZoWurOzPNT5nHm83AakXW6XMyQsp9CazIvVuc7vy5I8UdyXeAHOGscj2jindgyzVWyU09LvmafL9tKTyVrS6V6jEU49g==
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=ZE/IJLidMeOmhxNxkKOUN2tRTqP/zSdl32jB1XGwoFI=;
 b=qNSxiLxSXOqHohni5F3eh8oyQqeHomQmdg7fhTUBb36Kxuw2dKi2C92GwFgmRnBBV8C3qH05dK0R5in0Bx87f1eH3//K2cgCeP6JELRcJIklD9KiiE8KMvyiztnx4YXtIvPTnmorJWEM2N4roOdyspYqodWNDIikxX9yctUFtNM=
From: Luca Fancellu <Luca.Fancellu@arm.com>
To: Anthony PERARD <anthony.perard@citrix.com>
CC: Xen-devel <xen-devel@lists.xenproject.org>, Peter Hoyes
	<Peter.Hoyes@arm.com>
Subject: Re: [PATCH] tools/xendomains: Only save/restore/migrate if supported
 by xenlight
Thread-Topic: [PATCH] tools/xendomains: Only save/restore/migrate if supported
 by xenlight
Thread-Index: AQHaAorkpr2Fw+/rt0uploS+PCDdYw==
Date: Thu, 19 Oct 2023 12:50:52 +0000
Message-ID: <6F0D3115-C030-423E-ADBB-ADBB104E7BA3@arm.com>
References: <20230322135800.3869458-1-peter.hoyes@arm.com>
In-Reply-To: <20230322135800.3869458-1-peter.hoyes@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.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_|DU5PR08MB10823:EE_|DB1PEPF0003922F:EE_|PAXPR08MB7442:EE_
X-MS-Office365-Filtering-Correlation-Id: 7d1b493f-0375-4452-c394-08dbd0a21efa
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:
 QbDdY403cFPd59OOioxbF1CpwWyqLnsX03z8BzSw64WZWAqbnGjhcFrxKsD3stNGC1vYzrq4alH2Jp5WBTvenbfgn06eCASRkWI0mW/e/exS2F88X5Em8OKKaw54KNo2Oa70EliRa0pXjtfuIZrMteibhATkR8xFjXr/RNtNv+2mADEEMcqrvp7zvZP+N3r/a63uJ07LevNbq4IVmVUEdENjm+A8S3q8vpad94Ab63wVoIdKVe97NlIX6v8Jj9WAIVCFAe5UCpQDN3pkB8Um15mj0XdSFFu3rfka6OfPN9m1+eGA/1XTLK4EKKeZmqPMaYC6eaNkGHwBw0zEOhLtic6y1xAxFRUIW3AqMq4rsedICK3QN3QFnEZmjhzvN3d3eM05E73LvfmLqRpYmSdfgLg2cC2ukv4BD5LTHW2N2ng+lj1OGypiHqltgi4paCjQlf/ndMv4oetWY/PxAmQQPPT6D1wEGQ+iLe0M8qsuOjPXFXp+CvpEo+Fp/J5KP0+x32h6cDWCV+Mz/V33NsHjINaYvxBiTYOYcg5jHlvdUw8DEUUko+6kumIPZk24BeDEMDPaD5+JSoglNl1QGWBCR8Mn5oW+IEHKox9JQnOnWFrp/xSXYP08PsaIUFF76huhzFATYQuNPCd30bE+lBBB5Q==
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)(346002)(396003)(136003)(366004)(376002)(230922051799003)(186009)(1800799009)(64100799003)(451199024)(41300700001)(66476007)(6666004)(66556008)(478600001)(6486002)(66946007)(6916009)(54906003)(966005)(64756008)(76116006)(91956017)(38070700005)(6506007)(26005)(316002)(2616005)(33656002)(4744005)(8676002)(4326008)(8936002)(36756003)(5660300002)(2906002)(122000001)(6512007)(71200400001)(66446008)(83380400001)(86362001)(53546011)(38100700002)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <AEC064744B972D4DAB3A1E5DAEF61035@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU5PR08MB10823
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:
 DB1PEPF0003922F.eurprd03.prod.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	68b860e6-15bf-48fa-ae43-08dbd0a20705
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	428QAM0ajCxi/R+xYyuXU3Ou6v9ssGAPpp0NHeMc5M+b259DJgcMqC4bWLKOsnHVcko68OhTV7HNgdMZo4g3+or2ToE0wGUTn1yZx5ktGZPwmnSCH/FQRIUHusO9/AZg/604Rm1YrEnNfO21F9hERCmKPjBC0XkSYCTFnNtSfRgrkCO3rhF3Rmb1JvP3qbjoD3aKMmTMmOz5eC2fR8xu3SgV5Aub7I6PE6/RvQukHBhZ3CZohxuNLMG8HaegJVlQnTjEy+F6wISicEacyJ6YPCSchmT/2tVg+ycbXHX1mUIhNDBxd9J9+vH+qLi9qblxHrTP5P0JWFwuTligRubbhnNAwOCQSGGbqsX/iEt6whgo5GUCnLqydx8C+2swY5clPxpWLEINeAyEkxsCGSzUwvyzMdu/bdUN95PvIgLmW+erf8wQGYfDkQsYft/VvuIKbRK2QyBO52yZkKcIeptU4gZS5267OfjGZ7iRA4K+sdLCqcFFYlFsmJrNSLZ1F+hZ9+iy4lL2y5XbogEwvr1KkDKIZ314VCHTRgM9BP4u77x/Hhxg0CHS6iqVXnOnfQu+yqW1+p1JpCOBDyAo25yqKE9fKcBdp7DL+k0qfIPGU+f9SMPj+eh4OfPC//dndlBZKS1wnW1wQbFzrwwP7BWy/bbNFjOstTY2xo99WuATLgfJg3vDkOVquw6n7YjM+j14JIPGCr8JinZXYkZ2/mAqge1qUMmT4fOOQUAyQP0CCok=
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)(396003)(39860400002)(136003)(230922051799003)(451199024)(82310400011)(1800799009)(186009)(64100799003)(36840700001)(46966006)(40470700004)(40480700001)(4744005)(2906002)(86362001)(4326008)(41300700001)(8676002)(70206006)(8936002)(6862004)(70586007)(40460700003)(5660300002)(36756003)(54906003)(316002)(33656002)(2616005)(356005)(26005)(81166007)(36860700001)(82740400003)(336012)(6512007)(83380400001)(6666004)(6506007)(53546011)(47076005)(966005)(6486002)(478600001);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Oct 2023 12:51:32.5774
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 7d1b493f-0375-4452-c394-08dbd0a21efa
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:
	DB1PEPF0003922F.eurprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR08MB7442

DQoNCj4gT24gMjIgTWFyIDIwMjMsIGF0IDEzOjU4LCBQZXRlciBIb3llcyA8UGV0ZXIuSG95ZXNA
YXJtLmNvbT4gd3JvdGU6DQo+IA0KPiBGcm9tOiBQZXRlciBIb3llcyA8UGV0ZXIuSG95ZXNAYXJt
LmNvbT4NCj4gDQo+IFNhdmluZywgcmVzdG9yaW5nIGFuZCBtaWdyYXRpbmcgZG9tYWlucyBhcmUg
bm90IGN1cnJlbnRseSBzdXBwb3J0ZWQgb24NCj4gYXJtIGFuZCBhcm02NCBwbGF0Zm9ybXMsIHNv
IHhlbmRvbWFpbnMgcHJpbnRzIHRoZSB3YXJuaW5nOg0KPiANCj4gIEFuIGVycm9yIG9jY3VycmVk
IHdoaWxlIHNhdmluZyBkb21haW46DQo+ICBjb21tYW5kIG5vdCBpbXBsZW1lbnRlZA0KPiANCj4g
d2hlbiBhdHRlbXB0aW5nIHRvIHJ1biBgeGVuZG9tYWlucyBzdG9wYC4gSXQgb3RoZXJ3aXNlIGNv
bnRpbnVlcyB0byBzaHV0DQo+IGRvd24gdGhlIGRvbWFpbnMgY2xlYW5seSwgd2l0aCB0aGUgdW5z
dXBwb3J0ZWQgc3RlcHMgc2tpcHBlZC4NCj4gDQo+IFVzZSBgeGwgaGVscGAgdG8gZGV0ZWN0IHdo
ZXRoZXIgc2F2ZS9yZXN0b3JlL21pZ3JhdGUgaXMgc3VwcG9ydGVkIGJ5IHRoZQ0KPiBwbGF0Zm9y
bS4gSWYgbm90LCBkbyBub3QgYXR0ZW1wdCB0byBydW4gdGhlIGNvcnJlc3BvbmRpbmcgY29tbWFu
ZC4NCj4gDQo+IFNpZ25lZC1vZmYtYnk6IFBldGVyIEhveWVzIDxQZXRlci5Ib3llc0Bhcm0uY29t
Pg0KPiAtLS0NCg0KSGkgQW50aG9ueSwNCg0KUmVnYXJkaW5nIHRoaXMgcGF0Y2gsIGlzIHRoZXJl
IGFueSB1cGRhdGU/DQoNCknigJltIGFza2luZyBqdXN0IGJlY2F1c2UgaGVyZSBodHRwczovL3Bh
dGNod29yay5rZXJuZWwub3JnL3Byb2plY3QveGVuLWRldmVsL3BhdGNoLzIwMjMwMzIyMTM1ODAw
LjM4Njk0NTgtMS1wZXRlci5ob3llc0Bhcm0uY29tLyBpdCBzZWVtcyB5b3Ugd2VyZSB2b2x1bnRl
ZXJpbmcgdG8gZml4IHRoYXQgaW4gYW5vdGhlciB3YXkuDQoNCkNoZWVycywNCkx1Y2ENCg0KDQo=


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 13:12:36 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 13:12:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619315.964190 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtSpB-0002Zl-VJ; Thu, 19 Oct 2023 13:12:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619315.964190; Thu, 19 Oct 2023 13: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 1qtSpB-0002Ze-Qn; Thu, 19 Oct 2023 13:12:29 +0000
Received: by outflank-mailman (input) for mailman id 619315;
 Thu, 19 Oct 2023 13:12: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=in48=GB=bugseng.com=simone.ballarin@srs-se1.protection.inumbo.net>)
 id 1qtSp9-0002Kc-SV
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 13:12:28 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 25f26cc1-6e81-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 15:12:26 +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 A0DF54EE0745;
 Thu, 19 Oct 2023 15:12: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: 25f26cc1-6e81-11ee-98d5-6d05b1d4d9a1
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 v8 2/3] x86/hvm: address violations of MISRA C:2012 Rule 7.2
Date: Thu, 19 Oct 2023 15:11:51 +0200
Message-Id: <e7b653d28632c8e198647e67d17c31d018f90d00.1697720584.git.simone.ballarin@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1697720584.git.simone.ballarin@bugseng.com>
References: <cover.1697720584.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 v8:
- add U suffixes to macro MSR_AMD64_BP_CFG that has been
  introduced rebasing the patch
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/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/msi.h         |   2 +-
 xen/arch/x86/include/asm/msr-index.h   | 184 ++++++++++++-------------
 xen/arch/x86/include/asm/pci.h         |   8 +-
 xen/arch/x86/include/asm/x86-defns.h   |  22 +--
 13 files changed, 136 insertions(+), 136 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/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/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. */
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 82a81bd0a2..492699c1b4 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)
@@ -191,7 +191,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 */
@@ -204,35 +204,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
 
@@ -318,7 +318,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))
@@ -350,83 +350,83 @@
 
 /* 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_BP_CFG		0xc001102e
-#define MSR_AMD64_DE_CFG2		0xc00110e3
+#define MSR_AMD64_EX_CFG		0xc001102cU
+#define MSR_AMD64_BP_CFG		0xc001102eU
+#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
@@ -435,22 +435,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 Oct 19 13:12:36 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 13:12:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619316.964196 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtSpC-0002fq-Ax; Thu, 19 Oct 2023 13:12:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619316.964196; Thu, 19 Oct 2023 13: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 1qtSpC-0002en-6r; Thu, 19 Oct 2023 13:12:30 +0000
Received: by outflank-mailman (input) for mailman id 619316;
 Thu, 19 Oct 2023 13:12: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=in48=GB=bugseng.com=simone.ballarin@srs-se1.protection.inumbo.net>)
 id 1qtSpA-0002Kc-Sq
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 13:12:28 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 2639dd93-6e81-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 15:12:26 +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 2A9B24EE0748;
 Thu, 19 Oct 2023 15:12: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: 2639dd93-6e81-11ee-98d5-6d05b1d4d9a1
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 v8 3/3] xen/x86: address violations of MISRA C:2012 Rule 7.2
Date: Thu, 19 Oct 2023 15:11:52 +0200
Message-Id: <c76165797b4a6ae92a514e512fcb3dc0cc9b01fc.1697720584.git.simone.ballarin@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1697720584.git.simone.ballarin@bugseng.com>
References: <cover.1697720584.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>
---
No changes in v8.
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 Oct 19 13:12:36 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 13:12:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619317.964202 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtSpC-0002km-L2; Thu, 19 Oct 2023 13:12:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619317.964202; Thu, 19 Oct 2023 13: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 1qtSpC-0002k6-FS; Thu, 19 Oct 2023 13:12:30 +0000
Received: by outflank-mailman (input) for mailman id 619317;
 Thu, 19 Oct 2023 13:12: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=in48=GB=bugseng.com=simone.ballarin@srs-se1.protection.inumbo.net>)
 id 1qtSpB-0002Kk-As
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 13:12:29 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 255cad50-6e81-11ee-9b0e-b553b5be7939;
 Thu, 19 Oct 2023 15:12:25 +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 826D94EE073D;
 Thu, 19 Oct 2023 15: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: 255cad50-6e81-11ee-9b0e-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 v8 0/3][for-next] Address violations of MISRA C:2012 Rule 7.2
Date: Thu, 19 Oct 2023 15:11:49 +0200
Message-Id: <cover.1697720584.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 only adds an U suffix on a newly introduced macro in
"x86/hvm: address violations of MISRA C:2012 Rule 7.2". No changes
in the other commits.

Gianluca Luparini (1):
  x86/vmx: address violations of MISRA C:2012 Rule 7.2

Simone Ballarin (2):
  x86/hvm: 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    | 184 ++++++++++++------------
 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, 217 insertions(+), 217 deletions(-)

-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Thu Oct 19 13:12:36 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 13:12:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619314.964180 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtSpA-0002Kx-Lm; Thu, 19 Oct 2023 13:12:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619314.964180; Thu, 19 Oct 2023 13:12: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 1qtSpA-0002Kq-Ih; Thu, 19 Oct 2023 13:12:28 +0000
Received: by outflank-mailman (input) for mailman id 619314;
 Thu, 19 Oct 2023 13:12: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=in48=GB=bugseng.com=simone.ballarin@srs-se1.protection.inumbo.net>)
 id 1qtSp9-0002Kc-8A
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 13:12:27 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 25a21502-6e81-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 15:12:25 +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 150304EE0741;
 Thu, 19 Oct 2023 15:12: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: 25a21502-6e81-11ee-98d5-6d05b1d4d9a1
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 v8 1/3] x86/vmx: address violations of MISRA C:2012 Rule 7.2
Date: Thu, 19 Oct 2023 15:11:50 +0200
Message-Id: <f060ac3b471528717550edb087a4ef85ca9a2e2b.1697720584.git.simone.ballarin@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1697720584.git.simone.ballarin@bugseng.com>
References: <cover.1697720584.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, v7 and v8.
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 Oct 19 13:24:58 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 13:24:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619331.964219 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtT1A-0002Y4-K9; Thu, 19 Oct 2023 13:24:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619331.964219; Thu, 19 Oct 2023 13:24: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 1qtT1A-0002Xx-HT; Thu, 19 Oct 2023 13:24:52 +0000
Received: by outflank-mailman (input) for mailman id 619331;
 Thu, 19 Oct 2023 13:24: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=in48=GB=bugseng.com=simone.ballarin@srs-se1.protection.inumbo.net>)
 id 1qtT18-0002Ux-TQ
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 13:24:50 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id e0cf2b7b-6e82-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 15:24:49 +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 A7F3A4EE073D;
 Thu, 19 Oct 2023 15:24: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: e0cf2b7b-6e82-11ee-98d5-6d05b1d4d9a1
Message-ID: <d6af702c-9945-4eea-a102-96910be334dc@bugseng.com>
Date: Thu, 19 Oct 2023 15:24:48 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN PATCH 1/4] xen/arm: address violations of MISRA C:2012 Rule
 13.1
Content-Language: en-US
To: Julien Grall <julien@xen.org>, xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com, sstabellini@kernel.org,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
References: <cover.1697638210.git.simone.ballarin@bugseng.com>
 <31a926a09dfcef43d13a402fd3b235aeba48009d.1697638210.git.simone.ballarin@bugseng.com>
 <41d82896-5471-4eaa-8bdd-a192e28d5546@xen.org>
 <3de5e340-30bb-44aa-affd-89f343ed1fa1@bugseng.com>
 <7066a646-711c-4dce-f3c0-effb6ae91a39@xen.org>
 <67782815-7803-4ef5-80f4-db6181f7a6e2@bugseng.com>
 <15923aaf-c005-45fb-8bb4-50d2e0995f18@xen.org>
 <8734535a-0c00-44b4-8257-64155807b052@bugseng.com>
 <edc5d2b1-a3bd-44c4-83ea-6ff436fe7346@xen.org>
From: Simone Ballarin <simone.ballarin@bugseng.com>
Organization: BUGSENG
In-Reply-To: <edc5d2b1-a3bd-44c4-83ea-6ff436fe7346@xen.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

On 19/10/23 14:30, Julien Grall wrote:
> Hi,
> 
> On 19/10/2023 12:10, Simone Ballarin wrote:
>> On 19/10/23 12:11, Julien Grall wrote:
>>> Hi,
>>>
>>> On 19/10/2023 09:43, Simone Ballarin wrote:
>>>> On 19/10/23 10:19, Julien Grall wrote:
>>>>> Hi Simone,
>>>>>
>>>>> On 19/10/2023 08:34, Simone Ballarin wrote:
>>>>>> On 18/10/23 17:03, Julien Grall wrote:
>>>>>>> Hi,
>>>>>>>
>>>>>>> On 18/10/2023 15:18, Simone Ballarin wrote:
>>>>>>>> Rule 13.1: Initializer lists shall not contain persistent side 
>>>>>>>> effects
>>>>>>>>
>>>>>>>> This patch moves expressions with side-effects into new 
>>>>>>>> variables before
>>>>>>>> the initializer lists.
>>>>>>>
>>>>>>> Looking at the code, I feel the commit message should be a bit 
>>>>>>> more verbose because they are no apparent side-effects.
>>>>>>>
>>>>>>>>
>>>>>>>> Function calls do not necessarily have side-effects, in these 
>>>>>>>> cases the
>>>>>>>> GCC pure or const attributes are added when possible.
>>>>>>>
>>>>>>> You are only adding pure in this patch.
>>>>>>>
>>>>>>>>
>>>>>>>> No functional changes.
>>>>>>>>
>>>>>>>> Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>
>>>>>>>>
>>>>>>>> ---
>>>>>>>> Function attributes pure and const do not need to be added as GCC
>>>>>>>> attributes, they can be added using ECLAIR configurations.
>>>>>>>> ---
>>>>>>>>   xen/arch/arm/device.c              |  6 +++---
>>>>>>>>   xen/arch/arm/guestcopy.c           | 12 ++++++++----
>>>>>>>>   xen/arch/arm/include/asm/current.h |  2 +-
>>>>>>>>   3 files changed, 12 insertions(+), 8 deletions(-)
>>>>>>>>
>>>>>>>> diff --git a/xen/arch/arm/device.c b/xen/arch/arm/device.c
>>>>>>>> index 1f631d3274..e9be078415 100644
>>>>>>>> --- a/xen/arch/arm/device.c
>>>>>>>> +++ b/xen/arch/arm/device.c
>>>>>>>> @@ -319,6 +319,8 @@ int handle_device(struct domain *d, struct 
>>>>>>>> dt_device_node *dev, p2m_type_t p2mt,
>>>>>>>>       int res;
>>>>>>>>       paddr_t addr, size;
>>>>>>>>       bool own_device = !dt_device_for_passthrough(dev);
>>>>>>>> +    bool dev_is_hostbridge = is_pci_passthrough_enabled() &&
>>>>>>>> +                             device_get_class(dev) == 
>>>>>>>> DEVICE_PCI_HOSTBRIDGE;
>>>>>>>
>>>>>>> The commit message suggests that the code is moved because there 
>>>>>>> are side-effects. But none of them should have any side-effects.
>>>>>>>
>>>>>>
>>>>>> device_get_class contains an 'ASSERT(dev != NULL)' which is 
>>>>>> definitely
>>>>>> a side-effect.
>>>>>
>>>>> Just to confirm my understanding, the side-effect here would be the 
>>>>> fact that it traps and then panic(). IOW, if the trap was 
>>>>> hypothetically replaced by a while (1), then it would not be an 
>>>>> issue. is it correct? >
>>>>
>>>> No, it isn't. A infinite loop is a side effect.
>>>
>>> I am not sure why. There are no change of state here.
>>>
>>>>
>>>>> I can see two solutions:
>>>>>    1) Remove the ASSERT(). It is only here to make the NULL 
>>>>> dereference obvious in debug build. That said, the stack trace for 
>>>>> a NULL dereference would still be as clear.
>>>>
>>>> Removing the ASSERT just to make MISRA happy does not sound good to me.
>>>
>>> I didn't suggest the ASSERT() just ot make MISRA happy. I suggested 
>>> it because it has no value here (we still have stack track if there 
>>> are any issue).
>>>
>>>>
>>>>>    2) Replace the ASSERT with a proper check if ( !dev ) return 
>>>>> DEVICE_UNKONWN. AFAIU, we would not be able to add a 
>>>>> ASSERT_UNREACHABLE() because this would be again a perceived 
>>>>> side-effect.
>>>>>
>>>>
>>>> Replacing it with a proper check can be a solution, but I still 
>>>> prefer to add a deviation or move the invocation outside the 
>>>> initializer list.
>>>
>>> In general, I am not in favor of adding deviation if we can avoid 
>>> them because the code can changed and therefore either moot the 
>>> deviation or hide any other issue.
>>>
>>
>> Ok, I will proceed with option 1.
>>
>>> [...]
>>>
>>>> Yes, sorry I was looking to the wrong definition.
>>>> In ARM the problem is the presence of a *volatile* ASM.
>>>> Please take a look here:
>>>>
>>>> https://saas.eclairit.com:3787/fs/var/local/eclair/XEN.ecdf/ECLAIR_normal/arm/for-4.19/ARM64-Set2/latest/PROJECT.ecd;/by_service/MC3R1.R13.1.html#{"select":true,"selection":{"hiddenAreaKinds":[],"hiddenSubareaKinds":[],"show":true,"selector":{"enabled":true,"negated":false,"kind":0,"domain":"fingerprint","inputs":[{"enabled":true,"text":"0da7f0c9aea5491eba343618f965c81f5d7aed3c"}]}}}
>>>
>>> Ok. So the problem is the READ_SYSREG(...). Is there a way we can 
>>> encapsulate the call so we don't need to use your propose trick or 
>>> deviate at every use of 'current'?
>>>
>>
>> The point is that we need to move "READ_SYSREG(TPIDR_EL2)" outside
>> the initializer (there are no advantages in wrapping it on a function
>> if the function cannot be declared pure).
> 
> I was thinking that maybe it could help to deviate.
> 
>>
>> The proposed solution seems to me the cleanest way do to it. I do not 
>> see any other acceptable solutions.
> 
> I have some concern with the proposal (they are most likely matter of 
> taste).
> 
> We usually use this trick when 'current' is used multiple time to save 
> process (using 'current' is not cost free). But in this case, this is 
> renaming without any apparent benefits.
> 
> If we wanted to go down this route, then this would likely want a 
> comment. At which point we should just deviate.
> 
> I will have a think if there are something else we can do. Could we 
> consider to not address it for now?
> 

I totally agree.

> Cheers,
> 

-- 
Simone Ballarin, M.Sc.

Field Application Engineer, BUGSENG (https://bugseng.com)



From xen-devel-bounces@lists.xenproject.org Thu Oct 19 13:36:37 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 13:36:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619335.964230 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtTCO-0005TS-LG; Thu, 19 Oct 2023 13:36:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619335.964230; Thu, 19 Oct 2023 13: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 1qtTCO-0005TL-IO; Thu, 19 Oct 2023 13:36:28 +0000
Received: by outflank-mailman (input) for mailman id 619335;
 Thu, 19 Oct 2023 13: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=in48=GB=bugseng.com=simone.ballarin@srs-se1.protection.inumbo.net>)
 id 1qtTCN-0005TF-IG
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 13:36:27 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 803275ac-6e84-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 15:36:26 +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 B6CD14EE073D;
 Thu, 19 Oct 2023 15:36: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: 803275ac-6e84-11ee-98d5-6d05b1d4d9a1
Message-ID: <fe5084f4-e5f3-4778-87c7-faac2076bde7@bugseng.com>
Date: Thu, 19 Oct 2023 15:36:25 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN PATCH 4/4] xen: address violations of MISRA C:2012 Rule 13.1
Content-Language: en-US
To: Jan Beulich <jbeulich@suse.com>
Cc: xen-devel@lists.xenproject.org, consulting@bugseng.com,
 George Dunlap <george.dunlap@citrix.com>, Dario Faggioli
 <dfaggioli@suse.com>, Andrew Cooper <andrew.cooper3@citrix.com>,
 Julien Grall <julien@xen.org>, Wei Liu <wl@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>
References: <cover.1697638210.git.simone.ballarin@bugseng.com>
 <1e0f12095bcbc82ae3585c9fcf57bec7e324049c.1697638210.git.simone.ballarin@bugseng.com>
 <alpine.DEB.2.22.394.2310181803351.965337@ubuntu-linux-20-04-desktop>
 <78a7b73a-fefb-6884-90c5-abad2860a521@suse.com>
 <27fcfc87-aa8f-4bfb-863a-91a75c763050@bugseng.com>
 <5c9b851f-6f64-f6bd-970a-63aefdab5b41@suse.com>
From: Simone Ballarin <simone.ballarin@bugseng.com>
Organization: BUGSENG
In-Reply-To: <5c9b851f-6f64-f6bd-970a-63aefdab5b41@suse.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 19/10/23 13:19, Jan Beulich wrote:
> On 19.10.2023 13:12, Simone Ballarin wrote:
>> On 19/10/23 11:35, Jan Beulich wrote:
>>> On 19.10.2023 03:06, Stefano Stabellini wrote:
>>>> On Wed, 18 Oct 2023, Simone Ballarin wrote:
>>>>> --- a/xen/common/sched/core.c
>>>>> +++ b/xen/common/sched/core.c
>>>>> @@ -1504,6 +1504,8 @@ long vcpu_yield(void)
>>>>>    {
>>>>>        struct vcpu * v=current;
>>>>>        spinlock_t *lock;
>>>>> +    domid_t domain_id;
>>>>> +    int vcpu_id;
>>>>>    
>>>>>        rcu_read_lock(&sched_res_rculock);
>>>>>    
>>>>> @@ -1515,7 +1517,9 @@ long vcpu_yield(void)
>>>>>    
>>>>>        SCHED_STAT_CRANK(vcpu_yield);
>>>>>    
>>>>> -    TRACE_2D(TRC_SCHED_YIELD, current->domain->domain_id, current->vcpu_id);
>>>>> +    domain_id = current->domain->domain_id;
>>>>> +    vcpu_id = current->vcpu_id;
>>>>> +    TRACE_2D(TRC_SCHED_YIELD, domain_id, vcpu_id);
>>>>
>>>> Also here it looks like accessing the current pointer is considered a
>>>> side effect. Why? This is a just a global variable that is only accessed
>>>> for reading.
>>>
>>> Not exactly. It's a per-CPU variable access on Arm, but involves a
>>> function call on x86. Still that function call has no other side
>>> effects, but I guess Misra wouldn't honor this.
>>>
>>> I'm afraid though that the suggested change violates rule 2.2, as
>>> the two new assignments are dead code when !CONFIG_TRACEBUFFER.
>>
>> I confirm that there is no problem in X86: I will simply propose a patch
>> adding __attribute_pure__ to get_cpu_info.
> 
> I specifically did not suggest that, because I'm afraid the "pure" attribute
> may not be used there. Besides this attribute typically being discarded for
> inline functions in favor of the compiler's own judgement, it would allow
> the compiler to squash multiple invocations. This might even be desirable in
> most cases, but would break across a stack pointer change. (In this context
> you also need to keep in mind late optimizations done by LTO.)
> 
> Jan
> 

Ok, in this case I will just configure ECLAIR to consider it without 
effects.

-- 
Simone Ballarin, M.Sc.

Field Application Engineer, BUGSENG (https://bugseng.com)



From xen-devel-bounces@lists.xenproject.org Thu Oct 19 13:40:15 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 13:40:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619339.964239 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtTG2-000804-3c; Thu, 19 Oct 2023 13:40:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619339.964239; Thu, 19 Oct 2023 13: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 1qtTG2-0007zw-0q; Thu, 19 Oct 2023 13:40:14 +0000
Received: by outflank-mailman (input) for mailman id 619339;
 Thu, 19 Oct 2023 13:40: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=cQIi=GB=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qtTG0-0007zm-EW
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 13:40:12 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 066503f9-6e85-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 15:40:11 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id 391554EE073D;
 Thu, 19 Oct 2023 15:40: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: 066503f9-6e85-11ee-98d5-6d05b1d4d9a1
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>,
	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>,
	Jun Nakajima <jun.nakajima@intel.com>,
	Kevin Tian <kevin.tian@intel.com>,
	Tamas K Lengyel <tamas@tklengyel.com>,
	Alexandru Isaila <aisaila@bitdefender.com>,
	Petre Pircalabu <ppircalabu@bitdefender.com>
Subject: [XEN PATCH][for-4.19 v3 0/8] Fix or deviate various instances of missing declarations
Date: Thu, 19 Oct 2023 15:39:58 +0200
Message-Id: <cover.1697722648.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The patches in this series aim to fix or deviate various instances where a
function or variable do not have a declaration visible when such entity is
defined (in violation of MISRA C:2012 Rule 8.4).
An exception listed under docs/misra/rules.rst allows asm-only functions and
variables to be exempted, while the other instances are either changed
(e.g., making them static) or a missing header inclusion is added.

Nicola Vetrini (8):
  xen: add declarations for variables where needed
  x86: add deviations for variables only used in asm code
  x86: add deviation comments for  asm-only functions
  x86/grant: switch included header to make declarations visible
  x86/vm_event: add missing include for hvm_vm_event_do_resume
  xen/console: remove stub definition in consoled.h
  x86/mem_access: make function static
  docs/misra: exclude three more files

 docs/misra/exclude-list.json               | 12 ++++++++++++
 xen/arch/arm/include/asm/setup.h           |  3 +++
 xen/arch/arm/include/asm/smp.h             |  3 +++
 xen/arch/arm/platform_hypercall.c          |  2 +-
 xen/arch/x86/cpu/mcheck/mce.c              |  6 +++---
 xen/arch/x86/hvm/grant_table.c             |  3 +--
 xen/arch/x86/hvm/svm/intr.c                |  1 +
 xen/arch/x86/hvm/svm/nestedsvm.c           |  1 +
 xen/arch/x86/hvm/svm/svm.c                 |  2 ++
 xen/arch/x86/hvm/vm_event.c                |  1 +
 xen/arch/x86/hvm/vmx/intr.c                |  1 +
 xen/arch/x86/hvm/vmx/vmx.c                 |  2 ++
 xen/arch/x86/hvm/vmx/vvmx.c                |  1 +
 xen/arch/x86/include/asm/asm_defns.h       |  1 +
 xen/arch/x86/include/asm/hvm/grant_table.h |  2 ++
 xen/arch/x86/irq.c                         |  2 +-
 xen/arch/x86/mm/mem_access.c               |  6 +++---
 xen/arch/x86/setup.c                       |  4 +++-
 xen/arch/x86/traps.c                       |  1 +
 xen/arch/x86/x86_64/traps.c                |  1 +
 xen/include/xen/consoled.h                 |  7 -------
 xen/include/xen/symbols.h                  |  1 +
 22 files changed, 45 insertions(+), 18 deletions(-)

--
2.34.1


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 13:40:15 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 13:40:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619340.964246 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtTG2-00087l-Hh; Thu, 19 Oct 2023 13:40:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619340.964246; Thu, 19 Oct 2023 13: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 1qtTG2-00085p-E0; Thu, 19 Oct 2023 13:40:14 +0000
Received: by outflank-mailman (input) for mailman id 619340;
 Thu, 19 Oct 2023 13: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=cQIi=GB=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qtTG1-0007zm-Rt
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 13: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 0769bdd0-6e85-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 15:40:13 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id 8DE5C4EE0740;
 Thu, 19 Oct 2023 15: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: 0769bdd0-6e85-11ee-98d5-6d05b1d4d9a1
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>,
	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>
Subject: [XEN PATCH][for-4.19 v3 1/8] xen: add declarations for variables where needed
Date: Thu, 19 Oct 2023 15:39:59 +0200
Message-Id: <4d419cbffc84e0f9934794d105705ac64094a54a.1697722648.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1697722648.git.nicola.vetrini@bugseng.com>
References: <cover.1697722648.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Some variables with external linkage used in C code do not have
a visible declaration where they are defined. Providing such
declaration also resolves violations of MISRA C:2012 Rule 8.4.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
---
Changes in v2:
- make xenpf_lock static on ARM
Changes in v3:
- moved back code from symbols.h to symbols.c
- dropped two declarations, now deviated
---
 xen/arch/arm/include/asm/setup.h  | 3 +++
 xen/arch/arm/include/asm/smp.h    | 3 +++
 xen/arch/arm/platform_hypercall.c | 2 +-
 xen/arch/x86/cpu/mcheck/mce.c     | 6 +++---
 xen/arch/x86/irq.c                | 2 +-
 xen/include/xen/symbols.h         | 1 +
 6 files changed, 12 insertions(+), 5 deletions(-)

diff --git a/xen/arch/arm/include/asm/setup.h b/xen/arch/arm/include/asm/setup.h
index 98af6f55f5a0..2a2d6114f2eb 100644
--- a/xen/arch/arm/include/asm/setup.h
+++ b/xen/arch/arm/include/asm/setup.h
@@ -184,9 +184,12 @@ int map_range_to_domain(const struct dt_device_node *dev,
 extern lpae_t boot_pgtable[XEN_PT_LPAE_ENTRIES];
 
 #ifdef CONFIG_ARM_64
+extern lpae_t boot_first[XEN_PT_LPAE_ENTRIES];
 extern lpae_t boot_first_id[XEN_PT_LPAE_ENTRIES];
 #endif
+extern lpae_t boot_second[XEN_PT_LPAE_ENTRIES];
 extern lpae_t boot_second_id[XEN_PT_LPAE_ENTRIES];
+extern lpae_t boot_third[XEN_PT_LPAE_ENTRIES * XEN_NR_ENTRIES(2)];
 extern lpae_t boot_third_id[XEN_PT_LPAE_ENTRIES];
 
 /* Find where Xen will be residing at runtime and return a PT entry */
diff --git a/xen/arch/arm/include/asm/smp.h b/xen/arch/arm/include/asm/smp.h
index 4fabdf5310d8..28bf24a01d95 100644
--- a/xen/arch/arm/include/asm/smp.h
+++ b/xen/arch/arm/include/asm/smp.h
@@ -6,6 +6,9 @@
 #include <asm/current.h>
 #endif
 
+extern struct init_info init_data;
+extern unsigned long smp_up_cpu;
+
 DECLARE_PER_CPU(cpumask_var_t, cpu_sibling_mask);
 DECLARE_PER_CPU(cpumask_var_t, cpu_core_mask);
 
diff --git a/xen/arch/arm/platform_hypercall.c b/xen/arch/arm/platform_hypercall.c
index 743687a30390..fde4bc3e5809 100644
--- a/xen/arch/arm/platform_hypercall.c
+++ b/xen/arch/arm/platform_hypercall.c
@@ -17,7 +17,7 @@
 #include <asm/current.h>
 #include <asm/event.h>
 
-DEFINE_SPINLOCK(xenpf_lock);
+static DEFINE_SPINLOCK(xenpf_lock);
 
 long do_platform_op(XEN_GUEST_HANDLE_PARAM(xen_platform_op_t) u_xenpf_op)
 {
diff --git a/xen/arch/x86/cpu/mcheck/mce.c b/xen/arch/x86/cpu/mcheck/mce.c
index 6141b7eb9cf1..e855f958030d 100644
--- a/xen/arch/x86/cpu/mcheck/mce.c
+++ b/xen/arch/x86/cpu/mcheck/mce.c
@@ -1682,13 +1682,13 @@ long do_mca(XEN_GUEST_HANDLE_PARAM(xen_mc_t) u_xen_mc)
     return ret;
 }
 
-int mcinfo_dumpped;
+static int mcinfo_dumped;
 static int cf_check x86_mcinfo_dump_panic(mctelem_cookie_t mctc)
 {
     struct mc_info *mcip = mctelem_dataptr(mctc);
 
     x86_mcinfo_dump(mcip);
-    mcinfo_dumpped++;
+    mcinfo_dumped++;
 
     return 0;
 }
@@ -1702,7 +1702,7 @@ static void mc_panic_dump(void)
     for_each_online_cpu(cpu)
         mctelem_process_deferred(cpu, x86_mcinfo_dump_panic,
                                  mctelem_has_deferred_lmce(cpu));
-    dprintk(XENLOG_ERR, "End dump mc_info, %x mcinfo dumped\n", mcinfo_dumpped);
+    dprintk(XENLOG_ERR, "End dump mc_info, %x mcinfo dumped\n", mcinfo_dumped);
 }
 
 void mc_panic(const char *s)
diff --git a/xen/arch/x86/irq.c b/xen/arch/x86/irq.c
index 6abfd8162120..604dba94b052 100644
--- a/xen/arch/x86/irq.c
+++ b/xen/arch/x86/irq.c
@@ -43,7 +43,7 @@ int __read_mostly opt_irq_vector_map = OPT_IRQ_VECTOR_MAP_DEFAULT;
 static unsigned char __read_mostly irq_max_guests;
 integer_param("irq-max-guests", irq_max_guests);
 
-vmask_t global_used_vector_map;
+static vmask_t global_used_vector_map;
 
 struct irq_desc __read_mostly *irq_desc = NULL;
 
diff --git a/xen/include/xen/symbols.h b/xen/include/xen/symbols.h
index 20bbb28ef226..1b2863663aa0 100644
--- a/xen/include/xen/symbols.h
+++ b/xen/include/xen/symbols.h
@@ -33,4 +33,5 @@ struct symbol_offset {
     uint32_t stream; /* .. in the compressed stream.*/
     uint32_t addr;   /* .. and in the fixed size address array. */
 };
+
 #endif /*_XEN_SYMBOLS_H*/
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Thu Oct 19 13:40:17 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 13:40:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619341.964260 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtTG5-0008W3-Oo; Thu, 19 Oct 2023 13:40:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619341.964260; Thu, 19 Oct 2023 13:40: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 1qtTG5-0008Vw-M5; Thu, 19 Oct 2023 13:40:17 +0000
Received: by outflank-mailman (input) for mailman id 619341;
 Thu, 19 Oct 2023 13: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=cQIi=GB=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qtTG4-0008Uq-EP
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 13: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 08465909-6e85-11ee-9b0e-b553b5be7939;
 Thu, 19 Oct 2023 15:40:14 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id 4CE9E4EE0741;
 Thu, 19 Oct 2023 15: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: 08465909-6e85-11ee-9b0e-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>
Subject: [XEN PATCH][for-4.19 v3 2/8] x86: add deviations for variables only used in asm code
Date: Thu, 19 Oct 2023 15:40:00 +0200
Message-Id: <3d4c3f6a1a62acc6c625f32448862a8be47b05aa.1697722648.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1697722648.git.nicola.vetrini@bugseng.com>
References: <cover.1697722648.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

To avoid a violation of MISRA C:2012 Rule 8.4, as permitted
by docs/misra/rules.rst.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
---
Changes in v3:
- Edited commit message
- Add two new variables
---
 xen/arch/x86/include/asm/asm_defns.h | 1 +
 xen/arch/x86/setup.c                 | 4 +++-
 2 files changed, 4 insertions(+), 1 deletion(-)

diff --git a/xen/arch/x86/include/asm/asm_defns.h b/xen/arch/x86/include/asm/asm_defns.h
index baaaccb26e17..a2516de7749b 100644
--- a/xen/arch/x86/include/asm/asm_defns.h
+++ b/xen/arch/x86/include/asm/asm_defns.h
@@ -31,6 +31,7 @@ asm ( "\t.equ CONFIG_INDIRECT_THUNK, "
  * gets set up by the containing function.
  */
 #ifdef CONFIG_FRAME_POINTER
+/* SAF-1-safe */
 register unsigned long current_stack_pointer asm("rsp");
 # define ASM_CALL_CONSTRAINT , "+r" (current_stack_pointer)
 #else
diff --git a/xen/arch/x86/setup.c b/xen/arch/x86/setup.c
index 08ba1f95d635..4480f08de718 100644
--- a/xen/arch/x86/setup.c
+++ b/xen/arch/x86/setup.c
@@ -75,6 +75,7 @@ static bool __initdata opt_invpcid = true;
 boolean_param("invpcid", opt_invpcid);
 bool __read_mostly use_invpcid;
 
+/* SAF-1-safe Only used in asm code and within this source file */
 unsigned long __read_mostly cr4_pv32_mask;
 
 /* **** Linux config option: propagated to domain0. */
@@ -147,12 +148,13 @@ cpumask_t __read_mostly cpu_present_map;
 unsigned long __read_mostly xen_phys_start;
 
 char __section(".init.bss.stack_aligned") __aligned(STACK_SIZE)
-    cpu0_stack[STACK_SIZE];
+    cpu0_stack[STACK_SIZE]; /* SAF-1-safe Only used in asm code and below */
 
 /* Used by the BSP/AP paths to find the higher half stack mapping to use. */
 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 };
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Thu Oct 19 13:40:18 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 13:40:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619342.964264 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtTG6-00008j-3N; Thu, 19 Oct 2023 13:40:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619342.964264; Thu, 19 Oct 2023 13: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 1qtTG5-00007p-Vk; Thu, 19 Oct 2023 13:40:17 +0000
Received: by outflank-mailman (input) for mailman id 619342;
 Thu, 19 Oct 2023 13:40: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=cQIi=GB=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qtTG4-0007zm-Ij
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 13:40:16 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 091312dd-6e85-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 15:40:15 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id 4C4634EE0745;
 Thu, 19 Oct 2023 15:40: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: 091312dd-6e85-11ee-98d5-6d05b1d4d9a1
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>
Subject: [XEN PATCH][for-4.19 v3 4/8] x86/grant: switch included header to make declarations visible
Date: Thu, 19 Oct 2023 15:40:02 +0200
Message-Id: <ec410a2cc83599a546f1cb3e4118d99e7b4d1a26.1697722648.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1697722648.git.nicola.vetrini@bugseng.com>
References: <cover.1697722648.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The declarations for {create,replace}_grant_p2m_mapping are
not visible when these functions are defined, therefore the right
header needs to be included to allow them to be visible.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
---
Changes in v3:
- asm/paging.h can be replaced with mm-frame.h, because just the
  definition of mfn_t is needed.
---
 xen/arch/x86/hvm/grant_table.c             | 3 +--
 xen/arch/x86/include/asm/hvm/grant_table.h | 2 ++
 2 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/xen/arch/x86/hvm/grant_table.c b/xen/arch/x86/hvm/grant_table.c
index 30d51d54a949..afe449d8882c 100644
--- a/xen/arch/x86/hvm/grant_table.c
+++ b/xen/arch/x86/hvm/grant_table.c
@@ -9,8 +9,7 @@
 
 #include <xen/types.h>
 
-#include <public/grant_table.h>
-
+#include <asm/hvm/grant_table.h>
 #include <asm/p2m.h>
 
 int create_grant_p2m_mapping(uint64_t addr, mfn_t frame,
diff --git a/xen/arch/x86/include/asm/hvm/grant_table.h b/xen/arch/x86/include/asm/hvm/grant_table.h
index 33c1da1a25f3..01e23f79b8cf 100644
--- a/xen/arch/x86/include/asm/hvm/grant_table.h
+++ b/xen/arch/x86/include/asm/hvm/grant_table.h
@@ -10,6 +10,8 @@
 #ifndef __X86_HVM_GRANT_TABLE_H__
 #define __X86_HVM_GRANT_TABLE_H__
 
+#include <xen/mm-frame.h>
+
 #ifdef CONFIG_HVM
 
 int create_grant_p2m_mapping(uint64_t addr, mfn_t frame,
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Thu Oct 19 13:40:18 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 13:40:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619343.964272 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtTG6-0000FM-Hb; Thu, 19 Oct 2023 13:40:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619343.964272; Thu, 19 Oct 2023 13: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 1qtTG6-0000E1-An; Thu, 19 Oct 2023 13:40:18 +0000
Received: by outflank-mailman (input) for mailman id 619343;
 Thu, 19 Oct 2023 13:40: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=cQIi=GB=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qtTG5-0008Uq-3n
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 13:40:17 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 08cbf97f-6e85-11ee-9b0e-b553b5be7939;
 Thu, 19 Oct 2023 15:40:15 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id 85C4A4EE0744;
 Thu, 19 Oct 2023 15: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: 08cbf97f-6e85-11ee-9b0e-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>,
	Jun Nakajima <jun.nakajima@intel.com>,
	Kevin Tian <kevin.tian@intel.com>
Subject: [XEN PATCH][for-4.19 v3 3/8] x86: add deviation comments for  asm-only functions
Date: Thu, 19 Oct 2023 15:40:01 +0200
Message-Id: <2e7d4a55c3b6c317fd00e8ce32f992af423193f1.1697722648.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1697722648.git.nicola.vetrini@bugseng.com>
References: <cover.1697722648.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

As stated in rules.rst, functions used only in asm code
are allowed to have no prior declaration visible when being
defined, hence these functions are deviated.
This also fixes violations of MISRA C:2012 Rule 8.4.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
---
Changes in v3:
- added SAF deviations for vmx counterparts to svm functions.
---
 xen/arch/x86/hvm/svm/intr.c      | 1 +
 xen/arch/x86/hvm/svm/nestedsvm.c | 1 +
 xen/arch/x86/hvm/svm/svm.c       | 2 ++
 xen/arch/x86/hvm/vmx/intr.c      | 1 +
 xen/arch/x86/hvm/vmx/vmx.c       | 2 ++
 xen/arch/x86/hvm/vmx/vvmx.c      | 1 +
 xen/arch/x86/traps.c             | 1 +
 xen/arch/x86/x86_64/traps.c      | 1 +
 8 files changed, 10 insertions(+)

diff --git a/xen/arch/x86/hvm/svm/intr.c b/xen/arch/x86/hvm/svm/intr.c
index 192e17ebbfbb..bd9dc560bbc6 100644
--- a/xen/arch/x86/hvm/svm/intr.c
+++ b/xen/arch/x86/hvm/svm/intr.c
@@ -123,6 +123,7 @@ static void svm_enable_intr_window(struct vcpu *v, struct hvm_intack intack)
         vmcb, general1_intercepts | GENERAL1_INTERCEPT_VINTR);
 }
 
+/* SAF-1-safe */
 void svm_intr_assist(void)
 {
     struct vcpu *v = current;
diff --git a/xen/arch/x86/hvm/svm/nestedsvm.c b/xen/arch/x86/hvm/svm/nestedsvm.c
index a09b6abaaeaf..c80d59e0728e 100644
--- a/xen/arch/x86/hvm/svm/nestedsvm.c
+++ b/xen/arch/x86/hvm/svm/nestedsvm.c
@@ -1441,6 +1441,7 @@ nestedsvm_vcpu_vmexit(struct vcpu *v, struct cpu_user_regs *regs,
 }
 
 /* VCPU switch */
+/* SAF-1-safe */
 void nsvm_vcpu_switch(void)
 {
     struct cpu_user_regs *regs = guest_cpu_user_regs();
diff --git a/xen/arch/x86/hvm/svm/svm.c b/xen/arch/x86/hvm/svm/svm.c
index 24c417ca7199..40ba69bcdfa1 100644
--- a/xen/arch/x86/hvm/svm/svm.c
+++ b/xen/arch/x86/hvm/svm/svm.c
@@ -1056,6 +1056,7 @@ static void noreturn cf_check svm_do_resume(void)
     reset_stack_and_jump(svm_asm_do_resume);
 }
 
+/* SAF-1-safe */
 void svm_vmenter_helper(void)
 {
     const struct cpu_user_regs *regs = guest_cpu_user_regs();
@@ -2586,6 +2587,7 @@ const struct hvm_function_table * __init start_svm(void)
     return &svm_function_table;
 }
 
+/* SAF-1-safe */
 void svm_vmexit_handler(void)
 {
     struct cpu_user_regs *regs = guest_cpu_user_regs();
diff --git a/xen/arch/x86/hvm/vmx/intr.c b/xen/arch/x86/hvm/vmx/intr.c
index fd719c4c01d2..1805aafb086d 100644
--- a/xen/arch/x86/hvm/vmx/intr.c
+++ b/xen/arch/x86/hvm/vmx/intr.c
@@ -224,6 +224,7 @@ void vmx_sync_exit_bitmap(struct vcpu *v)
     }
 }
 
+/* SAF-1-safe */
 void vmx_intr_assist(void)
 {
     struct hvm_intack intack;
diff --git a/xen/arch/x86/hvm/vmx/vmx.c b/xen/arch/x86/hvm/vmx/vmx.c
index 1edc7f1e919f..0936a263154e 100644
--- a/xen/arch/x86/hvm/vmx/vmx.c
+++ b/xen/arch/x86/hvm/vmx/vmx.c
@@ -4035,6 +4035,7 @@ static void undo_nmis_unblocked_by_iret(void)
               guest_info | VMX_INTR_SHADOW_NMI);
 }
 
+/* SAF-1-safe */
 void vmx_vmexit_handler(struct cpu_user_regs *regs)
 {
     unsigned long exit_qualification, exit_reason, idtv_info, intr_info = 0;
@@ -4787,6 +4788,7 @@ static void lbr_fixup(void)
 }
 
 /* Returns false if the vmentry has to be restarted */
+/* SAF-1-safe */
 bool vmx_vmenter_helper(const struct cpu_user_regs *regs)
 {
     struct vcpu *curr = current;
diff --git a/xen/arch/x86/hvm/vmx/vvmx.c b/xen/arch/x86/hvm/vmx/vvmx.c
index 16b0ef82b6c8..99d93b869307 100644
--- a/xen/arch/x86/hvm/vmx/vvmx.c
+++ b/xen/arch/x86/hvm/vmx/vvmx.c
@@ -1490,6 +1490,7 @@ static void nvmx_eptp_update(void)
     __vmwrite(EPT_POINTER, get_shadow_eptp(curr));
 }
 
+/* SAF-1-safe */
 void nvmx_switch_guest(void)
 {
     struct vcpu *v = current;
diff --git a/xen/arch/x86/traps.c b/xen/arch/x86/traps.c
index e1356f696aba..6af35a468199 100644
--- a/xen/arch/x86/traps.c
+++ b/xen/arch/x86/traps.c
@@ -2265,6 +2265,7 @@ void asm_domain_crash_synchronous(unsigned long addr)
 }
 
 #ifdef CONFIG_DEBUG
+/* SAF-1-safe */
 void check_ist_exit(const struct cpu_user_regs *regs, bool ist_exit)
 {
     const unsigned int ist_mask =
diff --git a/xen/arch/x86/x86_64/traps.c b/xen/arch/x86/x86_64/traps.c
index e03e80813e36..5963d26d7848 100644
--- a/xen/arch/x86/x86_64/traps.c
+++ b/xen/arch/x86/x86_64/traps.c
@@ -266,6 +266,7 @@ void show_page_walk(unsigned long addr)
            l1_table_offset(addr), l1e_get_intpte(l1e), pfn);
 }
 
+/* SAF-1-safe */
 void do_double_fault(struct cpu_user_regs *regs)
 {
     unsigned int cpu;
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Thu Oct 19 13:40:19 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 13:40:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619344.964288 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtTG7-0000k0-R6; Thu, 19 Oct 2023 13:40:19 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619344.964288; Thu, 19 Oct 2023 13:40: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 1qtTG7-0000in-LI; Thu, 19 Oct 2023 13:40:19 +0000
Received: by outflank-mailman (input) for mailman id 619344;
 Thu, 19 Oct 2023 13:40: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=cQIi=GB=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qtTG6-0008Uq-Hn
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 13:40:18 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 09c2f7b5-6e85-11ee-9b0e-b553b5be7939;
 Thu, 19 Oct 2023 15:40:17 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id 00F094EE0746;
 Thu, 19 Oct 2023 15:40: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: 09c2f7b5-6e85-11ee-9b0e-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>,
	Tamas K Lengyel <tamas@tklengyel.com>,
	Alexandru Isaila <aisaila@bitdefender.com>,
	Petre Pircalabu <ppircalabu@bitdefender.com>,
	Wei Liu <wl@xen.org>
Subject: [XEN PATCH][for-4.19 v3 5/8] x86/vm_event: add missing include for hvm_vm_event_do_resume
Date: Thu, 19 Oct 2023 15:40:03 +0200
Message-Id: <03492e824d326071a6694bb1eb3a055232b1a45c.1697722648.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1697722648.git.nicola.vetrini@bugseng.com>
References: <cover.1697722648.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The missing header makes the declaration visible when the function
is defined, thereby fixing a violation of MISRA C:2012 Rule 8.4.

Fixes: 1366a0e76db6 ("x86/vm_event: add hvm/vm_event.{h,c}")
Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
Acked-by: Tamas K Lengyel <tamas@tklengyel.com>
---
 xen/arch/x86/hvm/vm_event.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/xen/arch/x86/hvm/vm_event.c b/xen/arch/x86/hvm/vm_event.c
index 3b064bcfade5..c1af230e7aed 100644
--- a/xen/arch/x86/hvm/vm_event.c
+++ b/xen/arch/x86/hvm/vm_event.c
@@ -24,6 +24,7 @@
 #include <xen/vm_event.h>
 #include <asm/hvm/emulate.h>
 #include <asm/hvm/support.h>
+#include <asm/hvm/vm_event.h>
 #include <asm/vm_event.h>
 
 static void hvm_vm_event_set_registers(const struct vcpu *v)
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Thu Oct 19 13:40:21 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 13:40:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619345.964300 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtTG9-000178-3Y; Thu, 19 Oct 2023 13:40:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619345.964300; Thu, 19 Oct 2023 13:40: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 1qtTG8-00016v-V8; Thu, 19 Oct 2023 13:40:20 +0000
Received: by outflank-mailman (input) for mailman id 619345;
 Thu, 19 Oct 2023 13:40: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=cQIi=GB=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qtTG7-0007zm-7f
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 13:40:19 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 0aa9d556-6e85-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 15:40:18 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id C03604EE0741;
 Thu, 19 Oct 2023 15:40: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: 0aa9d556-6e85-11ee-98d5-6d05b1d4d9a1
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>,
	Tamas K Lengyel <tamas@tklengyel.com>,
	Alexandru Isaila <aisaila@bitdefender.com>,
	Petre Pircalabu <ppircalabu@bitdefender.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Wei Liu <wl@xen.org>
Subject: [XEN PATCH][for-4.19 v3 7/8] x86/mem_access: make function static
Date: Thu, 19 Oct 2023 15:40:05 +0200
Message-Id: <c7a9058c31f3b46ae81d63bf8715b7ee4b69008e.1697722648.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1697722648.git.nicola.vetrini@bugseng.com>
References: <cover.1697722648.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The function is used only within this file, and therefore can be static.

No functional change.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
Acked-by: Tamas K Lengyel <tamas@tklengyel.com>
---
Changes in v3:
- style fix
---
 xen/arch/x86/mm/mem_access.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/xen/arch/x86/mm/mem_access.c b/xen/arch/x86/mm/mem_access.c
index c472fa1ee58b..d3dd5ab5ef8b 100644
--- a/xen/arch/x86/mm/mem_access.c
+++ b/xen/arch/x86/mm/mem_access.c
@@ -249,9 +249,9 @@ bool p2m_mem_access_check(paddr_t gpa, unsigned long gla,
     return (p2ma != p2m_access_n2rwx);
 }
 
-int p2m_set_altp2m_mem_access(struct domain *d, struct p2m_domain *hp2m,
-                              struct p2m_domain *ap2m, p2m_access_t a,
-                              gfn_t gfn)
+static int p2m_set_altp2m_mem_access(struct domain *d, struct p2m_domain *hp2m,
+                                     struct p2m_domain *ap2m, p2m_access_t a,
+                                     gfn_t gfn)
 {
     mfn_t mfn;
     p2m_type_t t;
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Thu Oct 19 13:40:21 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 13:40:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619346.964305 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtTG9-0001Bu-IH; Thu, 19 Oct 2023 13:40:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619346.964305; Thu, 19 Oct 2023 13:40: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 1qtTG9-0001Ai-AC; Thu, 19 Oct 2023 13:40:21 +0000
Received: by outflank-mailman (input) for mailman id 619346;
 Thu, 19 Oct 2023 13:40: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=cQIi=GB=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qtTG7-0008Uq-Bp
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 13:40:19 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 0a457ac3-6e85-11ee-9b0e-b553b5be7939;
 Thu, 19 Oct 2023 15:40:17 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id E3FA24EE0740;
 Thu, 19 Oct 2023 15:40: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: 0a457ac3-6e85-11ee-9b0e-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>
Subject: [XEN PATCH][for-4.19 v3 6/8] xen/console: remove stub definition in consoled.h
Date: Thu, 19 Oct 2023 15:40:04 +0200
Message-Id: <d354aad8c58fd97058ed84751266562c12feb622.1697722648.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1697722648.git.nicola.vetrini@bugseng.com>
References: <cover.1697722648.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The stub  definition of 'consoled_guest_tx' can be removed, since its
its single caller uses the implementation built with PV_SHIM enabled.

Fixes: 5ef49f185c2d ("x86/pv-shim: shadow PV console's page for L2 DomU")
Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
---
 xen/include/xen/consoled.h | 7 -------
 1 file changed, 7 deletions(-)

diff --git a/xen/include/xen/consoled.h b/xen/include/xen/consoled.h
index fd5d220a8aca..2b30516b3a0a 100644
--- a/xen/include/xen/consoled.h
+++ b/xen/include/xen/consoled.h
@@ -3,18 +3,11 @@
 
 #include <public/io/console.h>
 
-#ifdef CONFIG_PV_SHIM
-
 void consoled_set_ring_addr(struct xencons_interface *ring);
 struct xencons_interface *consoled_get_ring_addr(void);
 size_t consoled_guest_rx(void);
 size_t consoled_guest_tx(char c);
 
-#else
-
-size_t consoled_guest_tx(char c) { return 0; }
-
-#endif /* !CONFIG_PV_SHIM */
 #endif /* __XEN_CONSOLED_H__ */
 /*
  * Local variables:
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Thu Oct 19 13:40:23 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 13:40:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619347.964318 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtTGB-0001en-3x; Thu, 19 Oct 2023 13:40:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619347.964318; Thu, 19 Oct 2023 13:40: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 1qtTGA-0001d1-Si; Thu, 19 Oct 2023 13:40:22 +0000
Received: by outflank-mailman (input) for mailman id 619347;
 Thu, 19 Oct 2023 13:40: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=cQIi=GB=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qtTG9-0008Uq-3K
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 13:40:21 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 0b45632f-6e85-11ee-9b0e-b553b5be7939;
 Thu, 19 Oct 2023 15:40:19 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id A36264EE0747;
 Thu, 19 Oct 2023 15: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: 0b45632f-6e85-11ee-9b0e-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>
Subject: [XEN PATCH][for-4.19 v3 8/8] docs/misra: exclude three more files
Date: Thu, 19 Oct 2023 15:40:06 +0200
Message-Id: <0eae39cdc68e48932936e2c510a867ebe1f7c298.1697722648.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1697722648.git.nicola.vetrini@bugseng.com>
References: <cover.1697722648.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

These files should not conform to MISRA guidelines at the moment,
therefore they are added to the exclusion list.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
---
These exclusions are automatically picked up by ECLAIR's automation
to hide reports originating from these files.
---
 docs/misra/exclude-list.json | 12 ++++++++++++
 1 file changed, 12 insertions(+)

diff --git a/docs/misra/exclude-list.json b/docs/misra/exclude-list.json
index 575ed22a7f67..b2b4b9253615 100644
--- a/docs/misra/exclude-list.json
+++ b/docs/misra/exclude-list.json
@@ -145,6 +145,10 @@
             "rel_path": "common/zstd/*",
             "comment": "Imported from Linux, ignore for now"
         },
+        {
+            "rel_path": "common/symbols-dummy.c",
+            "comment": "The resulting code is not included in the final Xen binary, ignore for now"
+        },
         {
             "rel_path": "crypto/*",
             "comment": "Origin is external and documented in crypto/README.source"
@@ -189,6 +193,14 @@
             "rel_path": "include/acpi/acpixf.h",
             "comment": "Imported from Linux, ignore for now"
         },
+        {
+          "rel_path": "include/acpi/acexep.h",
+          "comment": "Imported from Linux, ignore for now"
+        },
+        {
+          "rel_path": "include/acpi/acglobal.h",
+          "comment": "Imported from Linux, ignore for now"
+        },
         {
             "rel_path": "include/xen/acpi.h",
             "comment": "Imported from Linux, ignore for now"
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Thu Oct 19 14:09:45 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 14:09:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619381.964330 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtTiL-0001Lb-KE; Thu, 19 Oct 2023 14:09:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619381.964330; Thu, 19 Oct 2023 14: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 1qtTiL-0001LU-Hi; Thu, 19 Oct 2023 14:09:29 +0000
Received: by outflank-mailman (input) for mailman id 619381;
 Thu, 19 Oct 2023 14:09: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=g4nO=GB=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qtTiK-0001LO-Te
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 14:09:29 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur04on2085.outbound.protection.outlook.com [40.107.7.85])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 1d3f317b-6e89-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 16:09:27 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM9PR04MB8729.eurprd04.prod.outlook.com (2603:10a6:20b:43c::18)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.23; Thu, 19 Oct
 2023 14:08:58 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%7]) with mapi id 15.20.6907.022; Thu, 19 Oct 2023
 14:08: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: 1d3f317b-6e89-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=WRF6/EkvcLeNxtUj4Xq3q1dOYBlgMM/uAufi1gtF+1VGji8ejn8X2tw5p5XNdWHB1f2/nXjsmAAZ2Rg3bXTte0a7bu86HMZmfrOwLFY9Ba2FXR+b+Ufb8JsQ/pMPdrICbCbymGkZFMpZ0xHvgQDvoLyM6tOrbr38krvJQ+5GF7Pk2mGrU5gZjUBA7DS7AWvBIUNZWOMPNSwa+04m5CLzQ26tNLSRIYAtOD2Pq4sZQn7USyIWs4bQ9TuQ4XAuQ55U5sjwJNDkrJJAtrdpQ/7EkzwH5yjEyMo4RGHgAdczs73Ixi3aEPovrguznnPv1SwJ6BCYSzicBGs7SjZ7G5yi9Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=nPup7S4KIZEraNfVdUvnWqiHO6xFnRZxMLFUrwwn6sE=;
 b=faH7eWZO9e3NVH0TWd3o7jTgPVq76k+PlFmCymdPlojGPoLkmV6k0bxWwK87NsMt49rCAIMtBbWh8YHis2OjJWKF55tCeFkllnZB8Ih3zxLcAQBzgpJJwpoV1ELUAKfK24Y8hPP3FgZKnrsCeGG89FOYDQ4EcRSnq3SSqVA2UAQZZEkoNXOmlEvsoENGbVp68Uf13WHwRz7epgjqMM6HC4lFWr/wCUxh7PbI+cq1UPWP7vVBJURHzIVvKrblUiTujjr9m2JThvpHgfbxInd5+YMFUUIJ4+aU+NCjE+czr7b5BSdEbAqNLOej4S3pPoAmv9qdjWPnXfH3+R/2D2Gc3w==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=nPup7S4KIZEraNfVdUvnWqiHO6xFnRZxMLFUrwwn6sE=;
 b=FNDndr/oJlbp5Au681/PjBNfpVTUGIcetQm/gbMuAxdUFCnr1mqxfiaJhOPs8m0v7Becahv9BaYrA4BHuIV4iMNLKXkekfNcW5zHW7YGbFkr8tCwqK4zEtcFC41n9ZsbnEse0GEcUHTtBfyyFvWuDzaLX0v7J3LfDUCAP9X9xnJHplCtAtGhQmgDIchjtiNDgZOKE6xLNDbp8DKiKcpBvxBey7SRyEQKVZRvvNhKpvPGaQcoOwPjTRk4R5vxfnA/ob/5hT8wlc5HUf/9ZVJPWznvDtd7XtaDSrYOWkcGY+VWIRUbqHvhEGY4cT7IYgVyzRXyYNr2VOGTipP4aF3Pcg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <b60068bf-4afd-d650-62f5-b4ac1717ed3b@suse.com>
Date: Thu, 19 Oct 2023 16:08: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 for-4.18] EFI: reduce memory map logging level
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>,
 Henry Wang <Henry.Wang@arm.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <16a32be2-6982-2463-3d71-383a21d7e074@suse.com>
 <514d207c-fc27-405e-a71a-6ac24bf4184e@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <514d207c-fc27-405e-a71a-6ac24bf4184e@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0303.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:f6::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_|AM9PR04MB8729:EE_
X-MS-Office365-Filtering-Correlation-Id: cdaee596-5fe9-416f-20e2-08dbd0acf03d
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	Ny3ICUcoXks57hBflkHZmqSycHmhDj5f4SJ8YkIQQVesGYr1Wtxf2r27u9qqHznu/aaX2cOdaGbDIg0gm1eoRsDNBZzs6w0DBC/OUtzJFgfHBTAX6Py9ffyHjD7Mc7qy3hID7eedUBklJOsHQ4egegKrvqaojt0cpRusEjoZZQAR8NGNlpiTaYngi2mmIiJogOFyzdlqY66MX4eQgI8tcfs9cIA/fzJLp1eBpnHsxVWdFiD1opr5T4NpXfW2mDlRTy3CEhBs+ciFrkVZo8EWXjmQsnhflqGtBfUQCdivS57HxfmNepvZa/ajwAKLw7rRrxsBtALPVl0kX5Gnvt3UK8L+jj6B2EB3qkvcmT0+9wfoUlPKAeYV1A8LzFqEiATMlLZ5t2pFwoi86V5kS/fhGyw0xyE+3UtUihUzm6uqTY9pagXEtGwlfENIuxdFN2ShB1vtDa827S9eusjhBj8Ys9Inua6IKPt/1nA3Il7DQFE2SRAY4A1i1IQi9++HLc8KpyqJYin/DF6vTmD2GlfibYDArp8UHuhZoXl2SFsSNd8IQP8PaJ8/7QndyfSwrf2sMdLoLa6QiAbuMDNj2wV7eBFiklJBP7KmXRZc68yB31V9ZDum7fCi5fAahkwLVX545oAI3M9iAGFMWeHSOJisfg==
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)(230922051799003)(1800799009)(64100799003)(451199024)(186009)(66946007)(66556008)(66476007)(6916009)(54906003)(316002)(6486002)(478600001)(31696002)(2906002)(86362001)(5660300002)(36756003)(4744005)(4326008)(8936002)(8676002)(41300700001)(2616005)(38100700002)(31686004)(26005)(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?bDRGRjdZa2JodVlJaVRoL3hXZUJNWDIzNHVueFoxMTE5dmgrSWRTQ2hzRGd1?=
 =?utf-8?B?UkRIOTFpT1hBUUdOU0k0VzRoVmV4TmR6c3BieHBITW9rTFc1b3BkNExKSjJu?=
 =?utf-8?B?UndROTVEQXNDeHdqMmEzd1B3Y2ZMVnZSL2J3WDJoRXZhNDVpRnMydkZrakJ0?=
 =?utf-8?B?NlZoK1EvckZILzdQM2hJMEMyc3RBYlZBdkdTV21zdXJmeHgzbFUxMHJQYU5j?=
 =?utf-8?B?OHppTU1mQk9MNXJ4VlJLU09wUEYrYnc5UWw2SlpkWTBjaDVHWWU0Y3F1VXRF?=
 =?utf-8?B?VC9mWW1pcHZkU0lvYlBJRk1rVWdKRUxEOHo2bE12azdYdDdqdk9XVjNCTWY1?=
 =?utf-8?B?TTF5SFhtUHZCZHdndVR1NGQyNEFsalQ5dlNjZ0NIM24ybE1WWmxTYzhRaXc4?=
 =?utf-8?B?L0ZPUWFRRjhaWVJCeFI5VWdaVW9Lb3RURUI4QncxRzFreEtWYWFWUzNyV2hK?=
 =?utf-8?B?WlpROEUxMlZNVGtkMUNzQWo2RXF6MGhIVWU3bFU4VXhjaTVvSTB2TEtVUWVZ?=
 =?utf-8?B?QlYzaGJMdENrZnBKSDlCQ0VCWk5Vb3ZyazN2ZFQ1MFUvakxWZ1crWmhCRDRz?=
 =?utf-8?B?ZWJESjFSUHE1Rkh6bUJjVHV1RjY1aklpQlg5czBGSVRUR1ZtTndLdkdmbGZ0?=
 =?utf-8?B?MjIwZzkwZ0dzc2ZzZWtXSlhCaVdNcnhuMXR5YlhRMmhEbFgyQk4wRW9BblZG?=
 =?utf-8?B?Y1Y2ZTBuUnVDTm5Fd01DL09wcWFhYVNtRGF5ZG5XOERwUU92Y1kwWkloUTAx?=
 =?utf-8?B?S0U5cnpkVmlEUWNCYnRubUx6LzJ2NkliL0F0cTBKaXhuajZxc3NsbkdYVyty?=
 =?utf-8?B?T1BYaWNUZ2dndG9PbWNjMi9MNFNCbmFEeDc5ak5Ta1FScG1FQ2IrSWlzYkc1?=
 =?utf-8?B?eVprczdFMm5hQzBmTHREVDRhVGRjQ2pHcFM4enMvcG1XMVNSY1VubFRUdGpj?=
 =?utf-8?B?S240UmdRSXRXNldxZi9vTC8rZHg3dndLWStQMUxtOTllY1pBQWk1RUY0ZmhS?=
 =?utf-8?B?NFpqMUFPQXpTT0F6YU1GK3ZhT0hneDQ4Tkw1UHJySUJCak5JNll2SFA2bmdy?=
 =?utf-8?B?cW9UYlNmblJlOFZPcGhuSFEyVEJJVXJ0dnlGQzdhcEhBYWExT21WTllFemlB?=
 =?utf-8?B?aE1ST2orYmVYdk1oTGpXT1dyb00wUnZTOFhlYU1QdmNCRkl4ZzJkMnBibnZw?=
 =?utf-8?B?bnJ4MUU1UUVGYUxCS0Z5L2VWNTRXeUlIUUlwdDFtMEFHNmFTOWNIK1JPT0U4?=
 =?utf-8?B?WERabERnNGphTU1sa2RkeENMa09qb3RyT1V5NFZaNjJqZkpLcHFHc3pZQ1RN?=
 =?utf-8?B?bk1FZklDL2hKR2hvcnRpUEFQTy9EWld6YkRtTkFsMEFtbkNvNXZITXpidEta?=
 =?utf-8?B?YnJBMGQwK2pScUVQdUg5eVNGaEo2Y0dISFV2WDUzMDFRTGNjbndYWlVmUGdq?=
 =?utf-8?B?cHcwaDE2SWxpTndyMTQxUGwyVzFYNE1ua3BKendaV2FDMFFvVGVibmk2em93?=
 =?utf-8?B?SVJpV2FZK0xpK3Y2MkprQStCdkpWQkVBd3QrOFQ4b29tY0FWQm1IT1hWTy93?=
 =?utf-8?B?UFpIejNvY3Foc2lmdVh4alpycnZaL0RCWnRJTU5TQ1NlVGVNUkNDTGJFU2gz?=
 =?utf-8?B?SG5oV1ZJRU9RcGV1aUhjakZicmx0UzVEcTBGcXlnd0lJRXNGVTQxWk51OUZm?=
 =?utf-8?B?K0VxRnhZd0haZEExaEZzYjA0UjdvUXEzeFhaSHpyYnhUQWdwODUxODVrRWhY?=
 =?utf-8?B?d3AwbE04d0lxaUtoYzRpSW5zOWpwZWorR3hNN0RTc3duSjBrZjR2SDRuYlNQ?=
 =?utf-8?B?T2pDWnVzNGZqWGJ5N1VUa0NoOGlZaG0vRy95OW1keTVvazUrV2lWNWVaSkdL?=
 =?utf-8?B?THRVSksxeEcyMVliMFY3MGZyZkpxK3AyYTFLMXB3a3ZZTkVXNlNFL0Flak1r?=
 =?utf-8?B?RHNkalVwWkN3alV1YUxtMTlWSEE0OUgyWjFNRjdDZVgzdmg1bUZseGpOTEcx?=
 =?utf-8?B?WTFuSmluZUdxT0l4VDhwOG90MDZKdll2ekQxQldMUDVCVFlmbGl5SWZ2TUpR?=
 =?utf-8?B?NjlUakVsRXFia3g0RUw3OHZwM2RsU3NIOHdSVDFaVm1mbXgrS2RBQ1o2eldB?=
 =?utf-8?Q?A4dQSJj8DOzL3ozFBNdjd0jtV?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: cdaee596-5fe9-416f-20e2-08dbd0acf03d
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Oct 2023 14:08:58.7899
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: vg8Bo98xNAVi3DFZJCibEFrXlo12xgjH2AcigleaccJrtObag2oy+JZXMW3FCIJt6wnuL2FEwUYwjs6cHnr/RQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR04MB8729

On 19.10.2023 14:15, Andrew Cooper wrote:
> On 19/10/2023 1:08 pm, Jan Beulich wrote:
>> With the release build default now being INFO, the typically long EFI
>> memory map will want logging at DEBUG level only.
>>
>> Signed-off-by: Jan Beulich <jbeulich@suse.com>
> 
> Acked-by: Andrew Cooper <andrew.cooper3@citrix.com>

Thanks.

> Honestly, we need more pruning because we end up printing this twice,
> but that's not a change suitable for 4.18 at this juncture.

Hmm, I've not seen us print this twice. Can you give a little more detail?
Maybe I simply misunderstand what you mean.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 14:23:40 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 14:23:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619384.964339 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtTvx-0006Y4-Py; Thu, 19 Oct 2023 14:23:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619384.964339; Thu, 19 Oct 2023 14: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 1qtTvx-0006Xx-N8; Thu, 19 Oct 2023 14:23:33 +0000
Received: by outflank-mailman (input) for mailman id 619384;
 Thu, 19 Oct 2023 14:23: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 1qtTvx-0006Xn-6i; Thu, 19 Oct 2023 14:23: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 1qtTvx-0001zt-3N; Thu, 19 Oct 2023 14:23: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 1qtTvw-00023T-OO; Thu, 19 Oct 2023 14:23:32 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qtTvw-0004zW-Nx; Thu, 19 Oct 2023 14:23: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=gkjCW8XRfvR5Gbm/AyQItB2CuCyZlrqC2zoZW4THmVY=; b=YTnjRrQllWy25oy375wUXQFl+g
	4rWVRLXHgsPnU43zyaBCdwyT8HlAcnqDJERuP3oFUqlasd926TjgSyUUU5ovFbgMFeF7BmSpGC9hv
	EoVrmXSNoIrocNoPy2a45rVCcYoZ5FDwuDZMM8R1MjrJ907/bBizIuKsK8hS6xMrFOvg=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183424-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 183424: tolerable FAIL
X-Osstest-Failures:
    xen-unstable:test-armhf-armhf-xl-credit1:guest-start/debian.repeat:fail:heisenbug
    xen-unstable:test-armhf-armhf-libvirt-qcow2:guest-start:fail:heisenbug
    xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:windows-install:fail:heisenbug
    xen-unstable:test-amd64-i386-qemuu-rhel6hvm-amd:xen-install:fail:heisenbug
    xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-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-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-amd64-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-i386-xl-qemuu-ws16-amd64:guest-stop: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-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:saverestore-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-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-amd64-libvirt-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-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-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:migrate-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-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:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=7c3616e6f1aa541884410c6430e3c8986cf0973c
X-Osstest-Versions-That:
    xen=7c3616e6f1aa541884410c6430e3c8986cf0973c
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 19 Oct 2023 14:23:32 +0000

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

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-armhf-armhf-xl-credit1 18 guest-start/debian.repeat fail in 183421 pass in 183424
 test-armhf-armhf-libvirt-qcow2 13 guest-start    fail in 183421 pass in 183424
 test-amd64-amd64-xl-qemuu-win7-amd64 12 windows-install fail in 183421 pass in 183424
 test-amd64-i386-qemuu-rhel6hvm-amd  7 xen-install          fail pass in 183421

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail blocked in 183421
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop      fail blocked in 183421
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183421
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183421
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 183421
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183421
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183421
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183421
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 183421
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183421
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 183421
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 183421
 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-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          16 saverestore-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-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-amd64-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-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-libvirt     15 migrate-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-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          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass

version targeted for testing:
 xen                  7c3616e6f1aa541884410c6430e3c8986cf0973c
baseline version:
 xen                  7c3616e6f1aa541884410c6430e3c8986cf0973c

Last test of basis   183424  2023-10-19 07:18:27 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                           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                                 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 Oct 19 14:27:02 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 14:27:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619390.964349 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtTzI-0007Nf-CM; Thu, 19 Oct 2023 14:27:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619390.964349; Thu, 19 Oct 2023 14:27: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 1qtTzI-0007NY-9p; Thu, 19 Oct 2023 14:27:00 +0000
Received: by outflank-mailman (input) for mailman id 619390;
 Thu, 19 Oct 2023 14:26: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=cQIi=GB=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qtTzH-0007NS-I8
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 14:26:59 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 8ea9a175-6e8b-11ee-9b0e-b553b5be7939;
 Thu, 19 Oct 2023 16:26:57 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id 8A5924EE073D;
 Thu, 19 Oct 2023 16:26: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: 8ea9a175-6e8b-11ee-9b0e-b553b5be7939
MIME-Version: 1.0
Date: Thu, 19 Oct 2023 16:26:56 +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.cooper3@citrix.com, roger.pau@citrix.com, Simone Ballarin
 <simone.ballarin@bugseng.com>, Doug Goldstein <cardoe@cardoe.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][for-next][for-4.19 v2 1/8] xen/include: add macro
 LOWEST_BIT
In-Reply-To: <08286993-6a83-b928-6398-e129397927a0@suse.com>
References: <cover.1697123806.git.nicola.vetrini@bugseng.com>
 <bb0ba44f8a3944c22a1c7cf19196c7060e8adb4b.1697123806.git.nicola.vetrini@bugseng.com>
 <93408661-721b-c4b3-d504-e65142bbdaea@suse.com>
 <42ee4de54f6d9bd80fb50db3545cbaf4@bugseng.com>
 <08286993-6a83-b928-6398-e129397927a0@suse.com>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <9002a10f872fccc5217faab2f20ad5ba@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 16/10/2023 18:30, Jan Beulich wrote:
> On 16.10.2023 18:17, Nicola Vetrini wrote:
>> On 16/10/2023 17:33, Jan Beulich wrote:
>>> On 12.10.2023 17:28, Nicola Vetrini wrote:
>>>> --- a/automation/eclair_analysis/ECLAIR/deviations.ecl
>>>> +++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
>>>> @@ -274,6 +274,12 @@ still non-negative."
>>>>  -config=MC3R1.R10.1,etypes+={safe,
>>>> "stmt(operator(logical)||node(conditional_operator||binary_conditional_operator))",
>>>> "dst_type(ebool||boolean)"}
>>>>  -doc_end
>>>> 
>>>> +-doc_begin="The macro LOWEST_BIT encapsulates a well-known pattern 
>>>> to
>>>> obtain the value
>>>> +2^ffs(x) for unsigned integers on two's complement architectures
>>>> +(all the architectures supported by Xen satisfy this requirement)."
>>>> +-config=MC3R1.R10.1,reports+={safe,
>>>> "any_area(any_loc(any_exp(macro(^LOWEST_BIT$))))"}
>>>> +-doc_end
>>> 
>>> Why is this added here rather than by ...
>>> 
>>>> --- a/xen/include/xen/macros.h
>>>> +++ b/xen/include/xen/macros.h
>>>> @@ -8,8 +8,10 @@
>>>>  #define DIV_ROUND(n, d) (((n) + (d) / 2) / (d))
>>>>  #define DIV_ROUND_UP(n, d) (((n) + (d) - 1) / (d))
>>>> 
>>>> -#define MASK_EXTR(v, m) (((v) & (m)) / ((m) & -(m)))
>>>> -#define MASK_INSR(v, m) (((v) * ((m) & -(m))) & (m))
>>> 
>>> a SAF-<n>-safe comment here?
>>> 
>> 
>> One reason is that now that violations only belonging to tool
>> configurations
>> and similar are documented in docs/misra/deviations.rst (committed in
>> Stefano's
>> branch for-4.19 [1]).
> 
> But tool configuration means every analysis tool needs configuring
> separately. That's why the comment tagging scheme was decided to be
> preferred, iirc.
> 
>> Also, there were disagreements on the SAF naming
>> scheme, and
>> patches like those would not be accepted at the moment.
> 
> Well, that needs resolving. The naming there shouldn't lead to patches
> being accepted that later may need redoing.
> 
> Jan

While this is true, in this case I'm not willing to deviate with a SAF, 
given that
some ECLAIR-specific configuration would be needed anyways, given that 
I'm deviating a macro definition, rather than the line where it's 
actually used (and maybe other tools would need
that as well).

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


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 14:33:12 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 14:33:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619394.964361 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtU5E-0000Pb-2M; Thu, 19 Oct 2023 14:33:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619394.964361; Thu, 19 Oct 2023 14:33: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 1qtU5D-0000PU-U3; Thu, 19 Oct 2023 14:33:07 +0000
Received: by outflank-mailman (input) for mailman id 619394;
 Thu, 19 Oct 2023 14:33: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=cQIi=GB=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qtU5C-0000PM-O7
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 14:33:06 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 6a86f392-6e8c-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 16:33:05 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id 620DC4EE073D;
 Thu, 19 Oct 2023 16:33: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: 6a86f392-6e8c-11ee-98d5-6d05b1d4d9a1
MIME-Version: 1.0
Date: Thu, 19 Oct 2023 16:33:05 +0200
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: Roberto Bagnara <roberto.bagnara@bugseng.com>, sstabellini@kernel.org,
 michal.orzel@amd.com, xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com,
 consulting@bugseng.com, andrew.cooper3@citrix.com, roger.pau@citrix.com, Wei
 Liu <wl@xen.org>, xen-devel@lists.xenproject.org
Subject: Re: [XEN PATCH][for-next v2 6/8] x86/mce: Move MC_NCLASSES into the
 enum mctelem_class
In-Reply-To: <26c5caa2-fe17-e107-7732-e4221861d804@suse.com>
References: <cover.1697123806.git.nicola.vetrini@bugseng.com>
 <6622a2ec7079f86b73ae420e1e840d3d35ffb3a0.1697123806.git.nicola.vetrini@bugseng.com>
 <f1f0fc3c-0eb2-81d6-132c-d6b2ed2d7308@suse.com>
 <d417da49a926fec385c95774035dc4cb@bugseng.com>
 <172b1f70-bffb-125f-3181-38ce5989daec@suse.com>
 <831edadc894659a79f7689dfe384ba97@bugseng.com>
 <59692ac7-8b68-5913-8e51-0a68feb2a1bc@suse.com>
 <b9177bf523d36df16b9fc3d116e0e89d@bugseng.com>
 <26c5caa2-fe17-e107-7732-e4221861d804@suse.com>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <fbb1e53b7c365582433a2210e406c30c@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 17/10/2023 11:54, Jan Beulich wrote:
> On 17.10.2023 11:43, Nicola Vetrini wrote:
>> On 17/10/2023 10:26, Jan Beulich wrote:
>>> On 17.10.2023 10:12, Nicola Vetrini wrote:
>>>> On 17/10/2023 09:02, Jan Beulich wrote:
>>>>> On 16.10.2023 18:05, Nicola Vetrini wrote:
>>>>>> On 16/10/2023 17:45, Jan Beulich wrote:
>>>>>>> On 12.10.2023 17:28, Nicola Vetrini wrote:
>>>>>>>> The definition of MC_NCLASSES contained a violation of MISRA
>>>>>>>> C:2012
>>>>>>>> Rule 10.1, therefore by moving it as an enumeration constant
>>>>>>>> resolves
>>>>>>>> the
>>>>>>>> violation and makes it more resilient to possible additions to
>>>>>>>> that
>>>>>>>> enum.
>>>>>>> 
>>>>>>> And using an enumerator as array dimension specifier is okay for
>>>>>>> Misra?
>>>>>>> That would be odd when elsewhere named enums are treated 
>>>>>>> specially.
>>>>>> 
>>>>>> Yes, the array subscript operator is one of the few places where 
>>>>>> an
>>>>>> enum
>>>>>> can be used as
>>>>>> an operand (also because negative values wouldn't compile), as
>>>>>> opposed
>>>>>> to mixing them
>>>>>> with ordinary integers.
>>>>> 
>>>>> When saying "odd" I didn't even think of negative values. May I
>>>>> therefore
>>>>> ask for the reasoning of why this specific case is deemed 
>>>>> non-risky?
>>>>> To
>>>>> me there looks to be a fair risk of creating undersized arrays,
>>>>> leading
>>>>> to out-of-bounds accesses.
>>>> 
>>>> Two reasons: MC_NCLASSES is the last value of the enum, and a 
>>>> pattern
>>>> I've spot in various
>>>> other places in Xen, so I assumed it was a fairly common pattern for
>>>> the
>>>> community.
>>>> The other reason is that since the value of an enum constant can be
>>>> derived statically, there
>>>> is little risk of it being the wrong value, because no arithmetic is
>>>> done on it in its use
>>>> as an array's size (and besides, the enum changed the last time ~15
>>>> years ago, so I think
>>>> it's unlikely to change much in the near future).
>>> 
>>> You focus on the specific instance, yet my question was on the 
>>> general
>>> principle.
>> 
>> A couple of reasons why this is allowed:
>> - associating values to set of symbols is typical and makes sense in
>> some contexts
>> - out-of-bounds operations on arrays are dealt with by a host of other
>> guidelines
>>    (Series 18, mainly)
>> - this rule is about which kinds of operands makes sense to use with
>> certain operators.
>>    It was deemed unlikely by MISRA that risky behaviour may arise by
>> using symbolic indices
>>    as subscripts, given the rest of the other guidelines and the
>> unspecified and undefined
>>    associated with Rule 10.1. It's not impossible that problems will
>> arise, but far less
>>    likely than using enums with no restrictions at all (such as those
>> caused by an enum of
>>    and implementation-defined type used in an arithmetic operation, 
>> that
>> could give
>>    unexpected results).
> 
> Now you appear to focus on uses of arrays, not their definition. Yet 
> even
> there I wonder: array[idx] is nothing else than *(array + idx). Adding
> integer types and enums is disallowed. Nothing is said about arithmetic
> on pointers throughout the description of the type model and its rules.
> So despite the restriction on integer types, adding enums to pointers 
> is
> permitted?
> 
> Jan

It's not disallowed just to add enums to integers, but the operation of 
addition on
(named) enums. The MISRA C coding standard deemed arr[IDX] an 
appropriate (not to be
interpreted as safe, though what is unsafe is inappropriate as a 
consequence of the
essential type model) use of enums.

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


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 14:35:34 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 14:35:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619397.964369 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtU7X-0001dC-DF; Thu, 19 Oct 2023 14:35:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619397.964369; Thu, 19 Oct 2023 14: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 1qtU7X-0001d5-AZ; Thu, 19 Oct 2023 14:35:31 +0000
Received: by outflank-mailman (input) for mailman id 619397;
 Thu, 19 Oct 2023 14:35: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=cQIi=GB=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qtU7W-0001cy-BT
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 14:35:30 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id bf63922d-6e8c-11ee-9b0e-b553b5be7939;
 Thu, 19 Oct 2023 16:35:28 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id E69814EE073D;
 Thu, 19 Oct 2023 16:35: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: bf63922d-6e8c-11ee-9b0e-b553b5be7939
MIME-Version: 1.0
Date: Thu, 19 Oct 2023 16:35:27 +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.cooper3@citrix.com, roger.pau@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][for-4.19 v2 8/8] xen/compat: use BUILD_BUG_ON in
 CHECK_SIZE macros
In-Reply-To: <8546127f-9945-0175-4e11-e187233e13cb@suse.com>
References: <cover.1697123806.git.nicola.vetrini@bugseng.com>
 <6138e02935236afd51a5db98d3527e5e2602468d.1697123806.git.nicola.vetrini@bugseng.com>
 <8546127f-9945-0175-4e11-e187233e13cb@suse.com>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <4e0c7d27b73fd00e8574547eff2a8da6@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 17/10/2023 08:09, Jan Beulich wrote:
> On 12.10.2023 17:28, Nicola Vetrini wrote:
>> BUILD_BUG_ON is the preferred way to induce a build error
>> upon statically determined incorrect conditions.
>> 
>> This also fixes a MISRA C:2012 Rule 10.1 violation in the
>> previous formulation.
>> 
>> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
> 
> Hmm, looking back it's indeed not clear why I didn't use BUILD_BUG_ON() 
> right
> away. Perhaps just to avoid inline functions when things can be done 
> without.
> And/or because originally the macros were intended to be usable in 
> function
> bodies, not (just) at file scope. However, ...
> 
>> --- a/xen/include/xen/compat.h
>> +++ b/xen/include/xen/compat.h
>> @@ -151,12 +151,20 @@ CHECK_NAME_(k, n, T)(k xen_ ## n *x, \
>>      return x == c; \
>>  }
>> 
>> -#define CHECK_SIZE(name) \
>> -    typedef int CHECK_NAME(name, S)[1 - (sizeof(xen_ ## name ## _t) 
>> != \
>> -                                         sizeof(compat_ ## name ## 
>> _t)) * 2]
>> +#define CHECK_SIZE(name)                                  \
>> +static inline void __maybe_unused CHECK_SIZE_##name(void) \
>> +{                                                         \
>> +    typedef int CHECK_NAME(name, S)[1];                   \
> 
> ... what's this and ...
> 
>> +    BUILD_BUG_ON(sizeof(xen_ ## name ## _t) !=            \
>> +                 sizeof(compat_ ## name ## _t));          \
>> +}
>>  #define CHECK_SIZE_(k, n) \
>> -    typedef int CHECK_NAME_(k, n, S)[1 - (sizeof(k xen_ ## n) != \
>> -                                          sizeof(k compat_ ## n)) * 
>> 2]
>> +static inline void __maybe_unused CHECK_SIZE_##k_##n(void) \
>> +{                                                          \
>> +    typedef int CHECK_NAME_(k, n, S)[1];                   \
> 
> ... this needed for? The types aren't used anywhere afaict.
> 
> Jan
> 
>> +    BUILD_BUG_ON(sizeof(k xen_ ## n) !=                    \
>> +                 sizeof(k compat_ ## n));                  \
>> +}
>> 
>>  #define CHECK_FIELD_COMMON(name, t, f) \
>>  static inline int __maybe_unused name(xen_ ## t ## _t *x, compat_ ## 
>> t ## _t *c) \

You're probably right. I was wondering the same thing when replacing the 
code with
BUILD_BUG_ON.

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


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 14:43:57 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 14:43:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619402.964379 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtUFb-0003kV-6b; Thu, 19 Oct 2023 14:43:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619402.964379; Thu, 19 Oct 2023 14:43: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 1qtUFb-0003kO-40; Thu, 19 Oct 2023 14:43:51 +0000
Received: by outflank-mailman (input) for mailman id 619402;
 Thu, 19 Oct 2023 14:43: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 1qtUFa-0003kE-5R; Thu, 19 Oct 2023 14:43: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 1qtUFa-0002XS-3m; Thu, 19 Oct 2023 14:43: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 1qtUFZ-0002Zl-Qt; Thu, 19 Oct 2023 14:43:49 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qtUFZ-0003s9-QR; Thu, 19 Oct 2023 14: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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=eUKV9M948qd7y5aCnq5t0oiWLL9VsC73xhdVwcL2Z1w=; b=Et/ACrCo9LWQe736wcNyz2tIQi
	vWGMhtBrqfwLOVzT60jpk922V2ju54VW6kt+r+2PCUx8iTLMVqYAspWxTZ68lg3Xpk54MLQb7Lq4G
	DZbmv+B/YtdcVf+5ZrUhWo5PLW3cukUzI+SQlxjquI6b+AugdMtQL9sCheixG9YzLFd4=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183428-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 183428: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=8abbf6d87e68aa6634d63a5e3920ca44e331ddfa
X-Osstest-Versions-That:
    ovmf=b75d9f556d6f290a4037064a2b934f5a3396328c
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 19 Oct 2023 14:43:49 +0000

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

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 8abbf6d87e68aa6634d63a5e3920ca44e331ddfa
baseline version:
 ovmf                 b75d9f556d6f290a4037064a2b934f5a3396328c

Last test of basis   183420  2023-10-18 20:10:44 Z    0 days
Testing same since   183428  2023-10-19 12:42:27 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Gerd Hoffmann <kraxel@redhat.com>
  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
   b75d9f556d..8abbf6d87e  8abbf6d87e68aa6634d63a5e3920ca44e331ddfa -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 15:40:58 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 15:40:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619416.964452 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtV8o-0007KR-Tl; Thu, 19 Oct 2023 15:40:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619416.964452; Thu, 19 Oct 2023 15:40: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 1qtV8o-0007IV-Hc; Thu, 19 Oct 2023 15:40:54 +0000
Received: by outflank-mailman (input) for mailman id 619416;
 Thu, 19 Oct 2023 15:40: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=b9Lg=GB=casper.srs.infradead.org=BATV+06ae5fa416ae820d9d5a+7361+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qtV8n-0006dc-CN
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 15:40:53 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id df1c7b92-6e95-11ee-9b0e-b553b5be7939;
 Thu, 19 Oct 2023 17:40:48 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qtV8N-007osy-KY; Thu, 19 Oct 2023 15:40:27 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1qtV8N-000Pv1-0W; Thu, 19 Oct 2023 16:40:27 +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
X-Inumbo-ID: df1c7b92-6e95-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=6eB6ZTu6F2pRboHgvVTkcuf9JVHV2C3gx4pFbRpACpA=; b=v3tBGDFXA8XlwBj+VDbGUIikdR
	YvZpeBmMRPn8PIScM+B62OOMnMNtlSRN9f488qg8iDo/npxFjE9lU/InslkYOKIpIezyq7k5YPht8
	KshD2GVes/NkKgdIE9mBX3DoO/h/1f/BltQmn9++W+k582NPRu/KDohIJ+xJUbrCCpNeh7OmYonmv
	2cpOPnmtC8QmUyaYA1AqWbn00FbvvzyWCSHWECn+Kwto5av9TPVZDFDGUO8hrhrm7fgZu+RFJQIbD
	0b3BHphf2n2QuCHfcCuhuYYCoHB6Py8PkZcdR60uEMR0fVlYJgcjv5cOklq/bXCI7SpEmT/YVNp5B
	qiOyOYkQ==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>,
	Hanna Reitz <hreitz@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	=?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Richard Henderson <richard.henderson@linaro.org>,
	Eduardo Habkost <eduardo@habkost.net>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Jason Wang <jasowang@redhat.com>,
	Marcelo Tosatti <mtosatti@redhat.com>,
	Cleber Rosa <crosa@redhat.com>,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
	Wainer dos Santos Moschetta <wainersm@redhat.com>,
	Beraldo Leal <bleal@redhat.com>,
	qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org,
	kvm@vger.kernel.org,
	Bernhard Beschow <shentey@gmail.com>,
	Joel Upham <jupham125@gmail.com>
Subject: [PATCH v2 20/24] hw/xenpv: fix '-nic' support for xen-net-device
Date: Thu, 19 Oct 2023 16:40:16 +0100
Message-Id: <20231019154020.99080-21-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231019154020.99080-1-dwmw2@infradead.org>
References: <20231019154020.99080-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

I can't see how this has ever worked. If I start with the simple attempt
"-nic user,model=xen", it creates a device with index -1 because it's
assuming that it'll be attached to a hubport. So it creates a frontend
at e.g. "/local/domain/84/device/vif/-1" and the guest fails to connect.

If I jump through hoops to give it a configuration that it might like:
    -netdev user,id=usernic
    -netdev hubport,hubid=0,id=hub0,netdev=usernic
    -nic,hubport,hubid=0,model=xen
... it *still* doesn't work. Qemu does actually use a slightly more
sensible index in the XenStore frontend path now, and the guest does
manage to connect to it. But on the Qemu side, the NIC still isn't
actually *attached* to the netdev:

qemu-system-x86_64: warning: hub port #net036 has no peer
qemu-system-x86_64: warning: hub 0 with no nics
qemu-system-x86_64: warning: netdev #net036 has no peer
qemu-system-x86_64: warning: requested NIC (anonymous, model xen) was not created (not supported by this machine?)

I can't see any point in the git history where the xen-nic driver
would actually look at that "handle" property, find the right netdev,
and actually *attach* the emulated NIC to anything.

Just rip out the special XenStore magic and instantiate a xen-net-device
on the XenBus. It all works now. Accept "model=xen-net-device" because
that's the actual Qemu device name and that's what works on HVM & emu.
Also accept model==NULL because why in $DEITY's name was that excluded
before anyway? What else are we doing to do for *PV* guests?

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 hw/xen/xen_devconfig.c              | 28 ++++++----------------------
 hw/xenpv/xen_machine_pv.c           | 13 ++++++++-----
 include/hw/xen/xen-legacy-backend.h |  2 +-
 3 files changed, 15 insertions(+), 28 deletions(-)

diff --git a/hw/xen/xen_devconfig.c b/hw/xen/xen_devconfig.c
index 3f77c675c6..d72bac38e7 100644
--- a/hw/xen/xen_devconfig.c
+++ b/hw/xen/xen_devconfig.c
@@ -1,4 +1,5 @@
 #include "qemu/osdep.h"
+#include "qapi/error.h"
 #include "hw/xen/xen-legacy-backend.h"
 #include "qemu/option.h"
 #include "sysemu/blockdev.h"
@@ -46,29 +47,12 @@ static int xen_config_dev_all(char *fe, char *be)
 
 /* ------------------------------------------------------------- */
 
-int xen_config_dev_nic(NICInfo *nic)
+int xen_config_dev_nic(BusState *xen_bus, NICInfo *nic)
 {
-    char fe[256], be[256];
-    char mac[20];
-    int vlan_id = -1;
-
-    net_hub_id_for_client(nic->netdev, &vlan_id);
-    snprintf(mac, sizeof(mac), "%02x:%02x:%02x:%02x:%02x:%02x",
-             nic->macaddr.a[0], nic->macaddr.a[1], nic->macaddr.a[2],
-             nic->macaddr.a[3], nic->macaddr.a[4], nic->macaddr.a[5]);
-    xen_pv_printf(NULL, 1, "config nic %d: mac=\"%s\"\n", vlan_id, mac);
-    xen_config_dev_dirs("vif", "qnic", vlan_id, fe, be, sizeof(fe));
-
-    /* frontend */
-    xenstore_write_int(fe, "handle",     vlan_id);
-    xenstore_write_str(fe, "mac",        mac);
-
-    /* backend */
-    xenstore_write_int(be, "handle",     vlan_id);
-    xenstore_write_str(be, "mac",        mac);
-
-    /* common stuff */
-    return xen_config_dev_all(fe, be);
+    DeviceState *dev = qdev_new("xen-net-device");
+    qdev_set_nic_properties(dev, nic);
+    qdev_realize_and_unref(dev, xen_bus, &error_fatal);
+    return 0;
 }
 
 int xen_config_dev_vfb(int vdev, const char *type)
diff --git a/hw/xenpv/xen_machine_pv.c b/hw/xenpv/xen_machine_pv.c
index 9f9f137f99..3d3a87e416 100644
--- a/hw/xenpv/xen_machine_pv.c
+++ b/hw/xenpv/xen_machine_pv.c
@@ -32,6 +32,7 @@
 
 static void xen_init_pv(MachineState *machine)
 {
+    BusState *xen_bus;
     int i;
 
     setup_xen_backend_ops();
@@ -62,15 +63,17 @@ static void xen_init_pv(MachineState *machine)
         vga_interface_created = true;
     }
 
+    xen_bus = xen_bus_init();
+
     /* configure nics */
     for (i = 0; i < nb_nics; i++) {
-        if (!nd_table[i].model || 0 != strcmp(nd_table[i].model, "xen"))
-            continue;
-        xen_config_dev_nic(nd_table + i);
+        if (!nd_table[i].model ||
+            g_str_equal(nd_table[i].model, "xen") ||
+            g_str_equal(nd_table[i].model, "xen-net-device")) {
+                xen_config_dev_nic(xen_bus, nd_table + i);
+            }
     }
 
-    xen_bus_init();
-
     /* config cleanup hook */
     atexit(xen_config_cleanup);
 }
diff --git a/include/hw/xen/xen-legacy-backend.h b/include/hw/xen/xen-legacy-backend.h
index fc42146bc2..01cab3a35e 100644
--- a/include/hw/xen/xen-legacy-backend.h
+++ b/include/hw/xen/xen-legacy-backend.h
@@ -81,7 +81,7 @@ extern struct XenDevOps xen_usb_ops;          /* xen-usb.c         */
 
 /* configuration (aka xenbus setup) */
 void xen_config_cleanup(void);
-int xen_config_dev_nic(NICInfo *nic);
+int xen_config_dev_nic(BusState *xen_bus, NICInfo *nic);
 int xen_config_dev_vfb(int vdev, const char *type);
 int xen_config_dev_vkbd(int vdev);
 int xen_config_dev_console(int vdev);
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Thu Oct 19 15:40:58 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 15:40:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619410.964400 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtV8k-0006A9-LV; Thu, 19 Oct 2023 15:40:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619410.964400; Thu, 19 Oct 2023 15: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 1qtV8k-0006A2-Iv; Thu, 19 Oct 2023 15:40:50 +0000
Received: by outflank-mailman (input) for mailman id 619410;
 Thu, 19 Oct 2023 15: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=m+UH=GB=desiato.srs.infradead.org=BATV+298c059cf2aa39b7dc34+7361+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qtV8i-0005v1-KU
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 15:40:49 +0000
Received: from desiato.infradead.org (desiato.infradead.org
 [2001:8b0:10b:1:d65d:64ff:fe57:4e05])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id de2f3353-6e95-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 17:40:46 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by desiato.infradead.org with esmtpsa (Exim 4.96 #2 (Red Hat Linux))
 id 1qtV8M-009yCr-2Y; Thu, 19 Oct 2023 15:40:27 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1qtV8M-000PuS-1s; Thu, 19 Oct 2023 16:40:26 +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
X-Inumbo-ID: de2f3353-6e95-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=desiato.20200630; h=Sender:Content-Transfer-Encoding:
	Content-Type:MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:
	To:From:Reply-To:Content-ID:Content-Description;
	bh=j10esoq0FJNH76opTx2Ikt3KjCQW6JceQg/cwlpclKs=; b=VayzCs3Jcr5zFnMxp7BlQilagI
	tXNgRu8R6rL8iIho5a0FncN8I4SUIY7Pm5o0Vjtx0f4nExokqzOz/NEkiNNlht5FyKWMGDt96nV3J
	Wch5nB2MVR5Xh5Y01vGCYPAtCfRQXpciDPobqK0KJ3+VXXhLxqbrDRbbk1rz50m8yi1+53qLPLdQf
	LucVSSC+oHKdiyo9XTTwWqvueeBcscIN9lgwQsG7+S1VDTQLhq64Nco/Tu01+1fjHy1g+pj3TeBo1
	QHf96QTc6Sxrqe8pi5HQg/QurZqCAqIe538GeKsecG0hNqut8aYw9DSSk3twWpfmXAvKd55LUhbhX
	JMyavWmA==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>,
	Hanna Reitz <hreitz@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	=?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Richard Henderson <richard.henderson@linaro.org>,
	Eduardo Habkost <eduardo@habkost.net>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Jason Wang <jasowang@redhat.com>,
	Marcelo Tosatti <mtosatti@redhat.com>,
	Cleber Rosa <crosa@redhat.com>,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
	Wainer dos Santos Moschetta <wainersm@redhat.com>,
	Beraldo Leal <bleal@redhat.com>,
	qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org,
	kvm@vger.kernel.org,
	Bernhard Beschow <shentey@gmail.com>,
	Joel Upham <jupham125@gmail.com>
Subject: [PATCH v2 12/24] hw/xen: add get_frontend_path() method to XenDeviceClass
Date: Thu, 19 Oct 2023 16:40:08 +0100
Message-Id: <20231019154020.99080-13-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231019154020.99080-1-dwmw2@infradead.org>
References: <20231019154020.99080-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by desiato.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

The primary Xen console is special. The guest's side is set up for it by
the toolstack automatically and not by the standard PV init sequence.

Accordingly, its *frontend* doesn't appear in …/device/console/0 either;
instead it appears under …/console in the guest's XenStore node.

To allow the Xen console driver to override the frontend path for the
primary console, add a method to the XenDeviceClass which can be used
instead of the standard xen_device_get_frontend_path()

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 hw/xen/xen-bus.c         | 10 +++++++++-
 include/hw/xen/xen-bus.h |  2 ++
 2 files changed, 11 insertions(+), 1 deletion(-)

diff --git a/hw/xen/xen-bus.c b/hw/xen/xen-bus.c
index ece8ec40cd..cc524ed92c 100644
--- a/hw/xen/xen-bus.c
+++ b/hw/xen/xen-bus.c
@@ -711,8 +711,16 @@ static void xen_device_frontend_create(XenDevice *xendev, Error **errp)
 {
     ERRP_GUARD();
     XenBus *xenbus = XEN_BUS(qdev_get_parent_bus(DEVICE(xendev)));
+    XenDeviceClass *xendev_class = XEN_DEVICE_GET_CLASS(xendev);
 
-    xendev->frontend_path = xen_device_get_frontend_path(xendev);
+    if (xendev_class->get_frontend_path) {
+        xendev->frontend_path = xendev_class->get_frontend_path(xendev, errp);
+        if (!xendev->frontend_path) {
+            return;
+        }
+    } else {
+        xendev->frontend_path = xen_device_get_frontend_path(xendev);
+    }
 
     /*
      * The frontend area may have already been created by a legacy
diff --git a/include/hw/xen/xen-bus.h b/include/hw/xen/xen-bus.h
index f435898164..eb440880b5 100644
--- a/include/hw/xen/xen-bus.h
+++ b/include/hw/xen/xen-bus.h
@@ -33,6 +33,7 @@ struct XenDevice {
 };
 typedef struct XenDevice XenDevice;
 
+typedef char *(*XenDeviceGetFrontendPath)(XenDevice *xendev, Error **errp);
 typedef char *(*XenDeviceGetName)(XenDevice *xendev, Error **errp);
 typedef void (*XenDeviceRealize)(XenDevice *xendev, Error **errp);
 typedef void (*XenDeviceFrontendChanged)(XenDevice *xendev,
@@ -46,6 +47,7 @@ struct XenDeviceClass {
     /*< public >*/
     const char *backend;
     const char *device;
+    XenDeviceGetFrontendPath get_frontend_path;
     XenDeviceGetName get_name;
     XenDeviceRealize realize;
     XenDeviceFrontendChanged frontend_changed;
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Thu Oct 19 15:40:58 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 15:40:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619418.964466 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtV8p-0007dL-Vg; Thu, 19 Oct 2023 15:40:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619418.964466; Thu, 19 Oct 2023 15:40: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 1qtV8p-0007ay-IF; Thu, 19 Oct 2023 15:40:55 +0000
Received: by outflank-mailman (input) for mailman id 619418;
 Thu, 19 Oct 2023 15:40: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=b9Lg=GB=casper.srs.infradead.org=BATV+06ae5fa416ae820d9d5a+7361+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qtV8n-0006dc-S2
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 15:40:53 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id e0ae2758-6e95-11ee-9b0e-b553b5be7939;
 Thu, 19 Oct 2023 17:40:49 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qtV8M-007osl-TV; Thu, 19 Oct 2023 15:40:26 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1qtV8M-000PuJ-1F; Thu, 19 Oct 2023 16:40:26 +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
X-Inumbo-ID: e0ae2758-6e95-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=myF4kySQnt1R/jNl7y+DJzz8cGVKJ4FVkI+b72NBJHs=; b=motVjdfWE1GstniTdCu1wyhH13
	qEBExY7YPMY43dkg0DEqqvbr9P7356o1yb6boWXyNWqMcVVx/4OPNZcbnpslzrsbD7zzZjOP7aYu9
	TCZ1oeIaBkooBoOYWR3KPNh4kRyJ+oHJN6nm5S+GIb7EsvBYP44PDwj1osnfpYv85OJ3oFzZoUpgq
	VQlR3J8D0afyD12EnD8A7t+S3o2mmRJuAQHycDcUTMaD3CLWvyh+bGwGV4YFBzoIEOevNkv5p7G3r
	IuUA237noQcqX9vza0iCbsgnWJCR5mhcQJKpi0PUmZBjG6pbJVYE5xyvNSBgXvjg/E9MTjWhlnVuE
	VnFlJCiA==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>,
	Hanna Reitz <hreitz@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	=?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Richard Henderson <richard.henderson@linaro.org>,
	Eduardo Habkost <eduardo@habkost.net>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Jason Wang <jasowang@redhat.com>,
	Marcelo Tosatti <mtosatti@redhat.com>,
	Cleber Rosa <crosa@redhat.com>,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
	Wainer dos Santos Moschetta <wainersm@redhat.com>,
	Beraldo Leal <bleal@redhat.com>,
	qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org,
	kvm@vger.kernel.org,
	Bernhard Beschow <shentey@gmail.com>,
	Joel Upham <jupham125@gmail.com>
Subject: [PATCH v2 10/24] hw/xen: populate store frontend nodes with XenStore PFN/port
Date: Thu, 19 Oct 2023 16:40:06 +0100
Message-Id: <20231019154020.99080-11-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231019154020.99080-1-dwmw2@infradead.org>
References: <20231019154020.99080-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

This is kind of redundant since without being able to get these through
some other method (HVMOP_get_param) the guest wouldn't be able to access
XenStore in order to find them. But Xen populates them, and it does
allow guests to *rebind* to the event channel port after a reset.

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 hw/i386/kvm/xen_xenstore.c | 11 +++++++++++
 1 file changed, 11 insertions(+)

diff --git a/hw/i386/kvm/xen_xenstore.c b/hw/i386/kvm/xen_xenstore.c
index ef8aaa4c42..61692d4489 100644
--- a/hw/i386/kvm/xen_xenstore.c
+++ b/hw/i386/kvm/xen_xenstore.c
@@ -1434,6 +1434,7 @@ static void alloc_guest_port(XenXenstoreState *s)
 int xen_xenstore_reset(void)
 {
     XenXenstoreState *s = xen_xenstore_singleton;
+    GList *perms;
     int err;
 
     if (!s) {
@@ -1461,6 +1462,16 @@ int xen_xenstore_reset(void)
     }
     s->be_port = err;
 
+    /* Create frontend store nodes */
+    perms = g_list_append(NULL, xs_perm_as_string(XS_PERM_NONE, DOMID_QEMU));
+    perms = g_list_append(perms, xs_perm_as_string(XS_PERM_READ, xen_domid));
+
+    relpath_printf(s, perms, "store/port", "%u", s->guest_port);
+    relpath_printf(s, perms, "store/ring-ref", "%lu",
+                   XEN_SPECIAL_PFN(XENSTORE));
+
+    g_list_free_full(perms, g_free);
+
     /*
      * We don't actually access the guest's page through the grant, because
      * this isn't real Xen, and we can just use the page we gave it in the
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Thu Oct 19 15:40:58 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 15:40:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619419.964473 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtV8q-0007ra-Kp; Thu, 19 Oct 2023 15:40:56 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619419.964473; Thu, 19 Oct 2023 15:40: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 1qtV8q-0007n4-BT; Thu, 19 Oct 2023 15:40:56 +0000
Received: by outflank-mailman (input) for mailman id 619419;
 Thu, 19 Oct 2023 15:40: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=b9Lg=GB=casper.srs.infradead.org=BATV+06ae5fa416ae820d9d5a+7361+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qtV8o-0005v1-7M
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 15:40:54 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id e14739e7-6e95-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 17:40:50 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qtV8M-007osj-HC; Thu, 19 Oct 2023 15:40:26 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1qtV8M-000Pu6-0K; Thu, 19 Oct 2023 16:40:26 +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
X-Inumbo-ID: e14739e7-6e95-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=HpAnqIpUHaVwXa5iWHpYTFYCLZj1Y+T0PVMmr0HgVt0=; b=qoE9WPy4p0tLodU89sn1K6KZOH
	WKyBaVrLndSiy16DLnilXZzaF3uloDHYPsSrzDPTYEe+kIFqGfs5KLMtA8HG8Hs91NyXXxWuVzx7s
	dFHL7vXbL2eNxD4zF/wvaP5pg3fCmgduLWze5nEs7JcgRcKFPd8d+uqrDsGO/fqOdwvP+Jw626Yz+
	orGWQyoRtYvIGQH8lkenOd/4+aj7pYpIAjAf5q5XSvi7MP9+mA2PFVK3R4QWsk4pPeKEEHJZDzk4y
	CsCiOVQBpa+kMB4e3s44w0DsmK/sjSkci2/JRmVP2bUbPImsAXGekiJ0XN/MEAjluJBx+11ai0s2V
	oLYUSJcw==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>,
	Hanna Reitz <hreitz@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	=?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Richard Henderson <richard.henderson@linaro.org>,
	Eduardo Habkost <eduardo@habkost.net>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Jason Wang <jasowang@redhat.com>,
	Marcelo Tosatti <mtosatti@redhat.com>,
	Cleber Rosa <crosa@redhat.com>,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
	Wainer dos Santos Moschetta <wainersm@redhat.com>,
	Beraldo Leal <bleal@redhat.com>,
	qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org,
	kvm@vger.kernel.org,
	Bernhard Beschow <shentey@gmail.com>,
	Joel Upham <jupham125@gmail.com>
Subject: [PATCH v2 07/24] hw/xen: Clean up event channel 'type_val' handling to use union
Date: Thu, 19 Oct 2023 16:40:03 +0100
Message-Id: <20231019154020.99080-8-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231019154020.99080-1-dwmw2@infradead.org>
References: <20231019154020.99080-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

A previous implementation of this stuff used a 64-bit field for all of
the port information (vcpu/type/type_val) and did atomic exchanges on
them. When I implemented that in Qemu I regretted my life choices and
just kept it simple with locking instead.

So there's no need for the XenEvtchnPort to be so simplistic. We can
use a union for the pirq/virq/interdomain information, which lets us
keep a separate bit for the 'remote domain' in interdomain ports. A
single bit is enough since the only possible targets are loopback or
qemu itself.

So now we can ditch PORT_INFO_TYPEVAL_REMOTE_QEMU and the horrid
manual masking, although the in-memory representation is identical
so there's no change in the saved state ABI.

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
Reviewed-by: Paul Durrant <paul@xen.org>
---
 hw/i386/kvm/xen_evtchn.c | 151 ++++++++++++++++++---------------------
 1 file changed, 70 insertions(+), 81 deletions(-)

diff --git a/hw/i386/kvm/xen_evtchn.c b/hw/i386/kvm/xen_evtchn.c
index 3d6f4b4a0a..d72dca6591 100644
--- a/hw/i386/kvm/xen_evtchn.c
+++ b/hw/i386/kvm/xen_evtchn.c
@@ -58,7 +58,15 @@ OBJECT_DECLARE_SIMPLE_TYPE(XenEvtchnState, XEN_EVTCHN)
 typedef struct XenEvtchnPort {
     uint32_t vcpu;      /* Xen/ACPI vcpu_id */
     uint16_t type;      /* EVTCHNSTAT_xxxx */
-    uint16_t type_val;  /* pirq# / virq# / remote port according to type */
+    union {
+        uint16_t val;  /* raw value for serialization etc. */
+        uint16_t pirq;
+        uint16_t virq;
+        struct {
+            uint16_t port:15;
+            uint16_t to_qemu:1; /* Only two targets; qemu or loopback */
+        } interdomain;
+    } u;
 } XenEvtchnPort;
 
 /* 32-bit compatibility definitions, also used natively in 32-bit build */
@@ -105,14 +113,6 @@ struct xenevtchn_handle {
     int fd;
 };
 
-/*
- * For unbound/interdomain ports there are only two possible remote
- * domains; self and QEMU. Use a single high bit in type_val for that,
- * and the low bits for the remote port number (or 0 for unbound).
- */
-#define PORT_INFO_TYPEVAL_REMOTE_QEMU           0x8000
-#define PORT_INFO_TYPEVAL_REMOTE_PORT_MASK      0x7FFF
-
 /*
  * These 'emuirq' values are used by Xen in the LM stream... and yes, I am
  * insane enough to think about guest-transparent live migration from actual
@@ -210,16 +210,16 @@ static int xen_evtchn_post_load(void *opaque, int version_id)
         XenEvtchnPort *p = &s->port_table[i];
 
         if (p->type == EVTCHNSTAT_pirq) {
-            assert(p->type_val);
-            assert(p->type_val < s->nr_pirqs);
+            assert(p->u.pirq);
+            assert(p->u.pirq < s->nr_pirqs);
 
             /*
              * Set the gsi to IRQ_UNBOUND; it may be changed to an actual
              * GSI# below, or to IRQ_MSI_EMU when the MSI table snooping
              * catches up with it.
              */
-            s->pirq[p->type_val].gsi = IRQ_UNBOUND;
-            s->pirq[p->type_val].port = i;
+            s->pirq[p->u.pirq].gsi = IRQ_UNBOUND;
+            s->pirq[p->u.pirq].port = i;
         }
     }
     /* Rebuild s->pirq[].gsi mapping */
@@ -243,7 +243,7 @@ static const VMStateDescription xen_evtchn_port_vmstate = {
     .fields = (VMStateField[]) {
         VMSTATE_UINT32(vcpu, XenEvtchnPort),
         VMSTATE_UINT16(type, XenEvtchnPort),
-        VMSTATE_UINT16(type_val, XenEvtchnPort),
+        VMSTATE_UINT16(u.val, XenEvtchnPort),
         VMSTATE_END_OF_LIST()
     }
 };
@@ -605,14 +605,13 @@ static void unbind_backend_ports(XenEvtchnState *s)
 
     for (i = 1; i < s->nr_ports; i++) {
         p = &s->port_table[i];
-        if (p->type == EVTCHNSTAT_interdomain &&
-            (p->type_val & PORT_INFO_TYPEVAL_REMOTE_QEMU)) {
-            evtchn_port_t be_port = p->type_val & PORT_INFO_TYPEVAL_REMOTE_PORT_MASK;
+        if (p->type == EVTCHNSTAT_interdomain && p->u.interdomain.to_qemu) {
+            evtchn_port_t be_port = p->u.interdomain.port;
 
             if (s->be_handles[be_port]) {
                 /* This part will be overwritten on the load anyway. */
                 p->type = EVTCHNSTAT_unbound;
-                p->type_val = PORT_INFO_TYPEVAL_REMOTE_QEMU;
+                p->u.interdomain.port = 0;
 
                 /* Leave the backend port open and unbound too. */
                 if (kvm_xen_has_cap(EVTCHN_SEND)) {
@@ -650,30 +649,22 @@ int xen_evtchn_status_op(struct evtchn_status *status)
 
     switch (p->type) {
     case EVTCHNSTAT_unbound:
-        if (p->type_val & PORT_INFO_TYPEVAL_REMOTE_QEMU) {
-            status->u.unbound.dom = DOMID_QEMU;
-        } else {
-            status->u.unbound.dom = xen_domid;
-        }
+        status->u.unbound.dom = p->u.interdomain.to_qemu ? DOMID_QEMU
+                                                         : xen_domid;
         break;
 
     case EVTCHNSTAT_interdomain:
-        if (p->type_val & PORT_INFO_TYPEVAL_REMOTE_QEMU) {
-            status->u.interdomain.dom = DOMID_QEMU;
-        } else {
-            status->u.interdomain.dom = xen_domid;
-        }
-
-        status->u.interdomain.port = p->type_val &
-            PORT_INFO_TYPEVAL_REMOTE_PORT_MASK;
+        status->u.interdomain.dom = p->u.interdomain.to_qemu ? DOMID_QEMU
+                                                             : xen_domid;
+        status->u.interdomain.port = p->u.interdomain.port;
         break;
 
     case EVTCHNSTAT_pirq:
-        status->u.pirq = p->type_val;
+        status->u.pirq = p->u.pirq;
         break;
 
     case EVTCHNSTAT_virq:
-        status->u.virq = p->type_val;
+        status->u.virq = p->u.virq;
         break;
     }
 
@@ -989,7 +980,7 @@ static int clear_port_pending(XenEvtchnState *s, evtchn_port_t port)
 static void free_port(XenEvtchnState *s, evtchn_port_t port)
 {
     s->port_table[port].type = EVTCHNSTAT_closed;
-    s->port_table[port].type_val = 0;
+    s->port_table[port].u.val = 0;
     s->port_table[port].vcpu = 0;
 
     if (s->nr_ports == port + 1) {
@@ -1012,7 +1003,7 @@ static int allocate_port(XenEvtchnState *s, uint32_t vcpu, uint16_t type,
         if (s->port_table[p].type == EVTCHNSTAT_closed) {
             s->port_table[p].vcpu = vcpu;
             s->port_table[p].type = type;
-            s->port_table[p].type_val = val;
+            s->port_table[p].u.val = val;
 
             *port = p;
 
@@ -1053,15 +1044,15 @@ static int close_port(XenEvtchnState *s, evtchn_port_t port,
         return -ENOENT;
 
     case EVTCHNSTAT_pirq:
-        s->pirq[p->type_val].port = 0;
-        if (s->pirq[p->type_val].is_translated) {
+        s->pirq[p->u.pirq].port = 0;
+        if (s->pirq[p->u.pirq].is_translated) {
             *flush_kvm_routes = true;
         }
         break;
 
     case EVTCHNSTAT_virq:
-        kvm_xen_set_vcpu_virq(virq_is_global(p->type_val) ? 0 : p->vcpu,
-                              p->type_val, 0);
+        kvm_xen_set_vcpu_virq(virq_is_global(p->u.virq) ? 0 : p->vcpu,
+                              p->u.virq, 0);
         break;
 
     case EVTCHNSTAT_ipi:
@@ -1071,8 +1062,8 @@ static int close_port(XenEvtchnState *s, evtchn_port_t port,
         break;
 
     case EVTCHNSTAT_interdomain:
-        if (p->type_val & PORT_INFO_TYPEVAL_REMOTE_QEMU) {
-            uint16_t be_port = p->type_val & ~PORT_INFO_TYPEVAL_REMOTE_QEMU;
+        if (p->u.interdomain.to_qemu) {
+            uint16_t be_port = p->u.interdomain.port;
             struct xenevtchn_handle *xc = s->be_handles[be_port];
             if (xc) {
                 if (kvm_xen_has_cap(EVTCHN_SEND)) {
@@ -1082,14 +1073,15 @@ static int close_port(XenEvtchnState *s, evtchn_port_t port,
             }
         } else {
             /* Loopback interdomain */
-            XenEvtchnPort *rp = &s->port_table[p->type_val];
-            if (!valid_port(p->type_val) || rp->type_val != port ||
+            XenEvtchnPort *rp = &s->port_table[p->u.interdomain.port];
+            if (!valid_port(p->u.interdomain.port) ||
+                rp->u.interdomain.port != port ||
                 rp->type != EVTCHNSTAT_interdomain) {
                 error_report("Inconsistent state for interdomain unbind");
             } else {
                 /* Set the other end back to unbound */
                 rp->type = EVTCHNSTAT_unbound;
-                rp->type_val = 0;
+                rp->u.interdomain.port = 0;
             }
         }
         break;
@@ -1213,7 +1205,7 @@ int xen_evtchn_bind_vcpu_op(struct evtchn_bind_vcpu *vcpu)
     if (p->type == EVTCHNSTAT_interdomain ||
         p->type == EVTCHNSTAT_unbound ||
         p->type == EVTCHNSTAT_pirq ||
-        (p->type == EVTCHNSTAT_virq && virq_is_global(p->type_val))) {
+        (p->type == EVTCHNSTAT_virq && virq_is_global(p->u.virq))) {
         /*
          * unmask_port() with do_unmask==false will just raise the event
          * on the new vCPU if the port was already pending.
@@ -1358,19 +1350,15 @@ int xen_evtchn_bind_ipi_op(struct evtchn_bind_ipi *ipi)
 int xen_evtchn_bind_interdomain_op(struct evtchn_bind_interdomain *interdomain)
 {
     XenEvtchnState *s = xen_evtchn_singleton;
-    uint16_t type_val;
     int ret;
 
     if (!s) {
         return -ENOTSUP;
     }
 
-    if (interdomain->remote_dom == DOMID_QEMU) {
-        type_val = PORT_INFO_TYPEVAL_REMOTE_QEMU;
-    } else if (interdomain->remote_dom == DOMID_SELF ||
-               interdomain->remote_dom == xen_domid) {
-        type_val = 0;
-    } else {
+    if (interdomain->remote_dom != DOMID_QEMU &&
+        interdomain->remote_dom != DOMID_SELF &&
+        interdomain->remote_dom != xen_domid) {
         return -ESRCH;
     }
 
@@ -1381,8 +1369,8 @@ int xen_evtchn_bind_interdomain_op(struct evtchn_bind_interdomain *interdomain)
     qemu_mutex_lock(&s->port_lock);
 
     /* The newly allocated port starts out as unbound */
-    ret = allocate_port(s, 0, EVTCHNSTAT_unbound, type_val,
-                        &interdomain->local_port);
+    ret = allocate_port(s, 0, EVTCHNSTAT_unbound, 0, &interdomain->local_port);
+
     if (ret) {
         goto out;
     }
@@ -1407,7 +1395,8 @@ int xen_evtchn_bind_interdomain_op(struct evtchn_bind_interdomain *interdomain)
             assign_kernel_eventfd(lp->type, xc->guest_port, xc->fd);
         }
         lp->type = EVTCHNSTAT_interdomain;
-        lp->type_val = PORT_INFO_TYPEVAL_REMOTE_QEMU | interdomain->remote_port;
+        lp->u.interdomain.to_qemu = 1;
+        lp->u.interdomain.port = interdomain->remote_port;
         ret = 0;
     } else {
         /* Loopback */
@@ -1415,19 +1404,18 @@ int xen_evtchn_bind_interdomain_op(struct evtchn_bind_interdomain *interdomain)
         XenEvtchnPort *lp = &s->port_table[interdomain->local_port];
 
         /*
-         * The 'remote' port for loopback must be an unbound port allocated for
-         * communication with the local domain (as indicated by rp->type_val
-         * being zero, not PORT_INFO_TYPEVAL_REMOTE_QEMU), and must *not* be
-         * the port that was just allocated for the local end.
+         * The 'remote' port for loopback must be an unbound port allocated
+         * for communication with the local domain, and must *not* be the
+         * port that was just allocated for the local end.
          */
         if (interdomain->local_port != interdomain->remote_port &&
-            rp->type == EVTCHNSTAT_unbound && rp->type_val == 0) {
+            rp->type == EVTCHNSTAT_unbound && !rp->u.interdomain.to_qemu) {
 
             rp->type = EVTCHNSTAT_interdomain;
-            rp->type_val = interdomain->local_port;
+            rp->u.interdomain.port = interdomain->local_port;
 
             lp->type = EVTCHNSTAT_interdomain;
-            lp->type_val = interdomain->remote_port;
+            lp->u.interdomain.port = interdomain->remote_port;
         } else {
             ret = -EINVAL;
         }
@@ -1446,7 +1434,6 @@ int xen_evtchn_bind_interdomain_op(struct evtchn_bind_interdomain *interdomain)
 int xen_evtchn_alloc_unbound_op(struct evtchn_alloc_unbound *alloc)
 {
     XenEvtchnState *s = xen_evtchn_singleton;
-    uint16_t type_val;
     int ret;
 
     if (!s) {
@@ -1457,18 +1444,20 @@ int xen_evtchn_alloc_unbound_op(struct evtchn_alloc_unbound *alloc)
         return -ESRCH;
     }
 
-    if (alloc->remote_dom == DOMID_QEMU) {
-        type_val = PORT_INFO_TYPEVAL_REMOTE_QEMU;
-    } else if (alloc->remote_dom == DOMID_SELF ||
-               alloc->remote_dom == xen_domid) {
-        type_val = 0;
-    } else {
+    if (alloc->remote_dom != DOMID_QEMU &&
+        alloc->remote_dom != DOMID_SELF &&
+        alloc->remote_dom != xen_domid) {
         return -EPERM;
     }
 
     qemu_mutex_lock(&s->port_lock);
 
-    ret = allocate_port(s, 0, EVTCHNSTAT_unbound, type_val, &alloc->port);
+    ret = allocate_port(s, 0, EVTCHNSTAT_unbound, 0, &alloc->port);
+
+    if (!ret && alloc->remote_dom == DOMID_QEMU) {
+        XenEvtchnPort *p = &s->port_table[alloc->port];
+        p->u.interdomain.to_qemu = 1;
+    }
 
     qemu_mutex_unlock(&s->port_lock);
 
@@ -1495,12 +1484,12 @@ int xen_evtchn_send_op(struct evtchn_send *send)
 
     switch (p->type) {
     case EVTCHNSTAT_interdomain:
-        if (p->type_val & PORT_INFO_TYPEVAL_REMOTE_QEMU) {
+        if (p->u.interdomain.to_qemu) {
             /*
              * This is an event from the guest to qemu itself, which is
              * serving as the driver domain.
              */
-            uint16_t be_port = p->type_val & ~PORT_INFO_TYPEVAL_REMOTE_QEMU;
+            uint16_t be_port = p->u.interdomain.port;
             struct xenevtchn_handle *xc = s->be_handles[be_port];
             if (xc) {
                 eventfd_write(xc->fd, 1);
@@ -1510,7 +1499,7 @@ int xen_evtchn_send_op(struct evtchn_send *send)
             }
         } else {
             /* Loopback interdomain ports; just a complex IPI */
-            set_port_pending(s, p->type_val);
+            set_port_pending(s, p->u.interdomain.port);
         }
         break;
 
@@ -1552,8 +1541,7 @@ int xen_evtchn_set_port(uint16_t port)
 
     /* QEMU has no business sending to anything but these */
     if (p->type == EVTCHNSTAT_virq ||
-        (p->type == EVTCHNSTAT_interdomain &&
-         (p->type_val & PORT_INFO_TYPEVAL_REMOTE_QEMU))) {
+        (p->type == EVTCHNSTAT_interdomain && p->u.interdomain.to_qemu)) {
         set_port_pending(s, port);
         ret = 0;
     }
@@ -2063,7 +2051,7 @@ int xen_be_evtchn_bind_interdomain(struct xenevtchn_handle *xc, uint32_t domid,
     switch (gp->type) {
     case EVTCHNSTAT_interdomain:
         /* Allow rebinding after migration, preserve port # if possible */
-        be_port = gp->type_val & ~PORT_INFO_TYPEVAL_REMOTE_QEMU;
+        be_port = gp->u.interdomain.port;
         assert(be_port != 0);
         if (!s->be_handles[be_port]) {
             s->be_handles[be_port] = xc;
@@ -2084,7 +2072,8 @@ int xen_be_evtchn_bind_interdomain(struct xenevtchn_handle *xc, uint32_t domid,
         }
 
         gp->type = EVTCHNSTAT_interdomain;
-        gp->type_val = be_port | PORT_INFO_TYPEVAL_REMOTE_QEMU;
+        gp->u.interdomain.to_qemu = 1;
+        gp->u.interdomain.port = be_port;
         xc->guest_port = guest_port;
         if (kvm_xen_has_cap(EVTCHN_SEND)) {
             assign_kernel_eventfd(gp->type, guest_port, xc->fd);
@@ -2129,7 +2118,7 @@ int xen_be_evtchn_unbind(struct xenevtchn_handle *xc, evtchn_port_t port)
         /* This should never *not* be true */
         if (gp->type == EVTCHNSTAT_interdomain) {
             gp->type = EVTCHNSTAT_unbound;
-            gp->type_val = PORT_INFO_TYPEVAL_REMOTE_QEMU;
+            gp->u.interdomain.port = 0;
         }
 
         if (kvm_xen_has_cap(EVTCHN_SEND)) {
@@ -2283,11 +2272,11 @@ EvtchnInfoList *qmp_xen_event_list(Error **errp)
 
         info->type = p->type;
         if (p->type == EVTCHNSTAT_interdomain) {
-            info->remote_domain = g_strdup((p->type_val & PORT_INFO_TYPEVAL_REMOTE_QEMU) ?
+            info->remote_domain = g_strdup(p->u.interdomain.to_qemu ?
                                            "qemu" : "loopback");
-            info->target = p->type_val & PORT_INFO_TYPEVAL_REMOTE_PORT_MASK;
+            info->target = p->u.interdomain.port;
         } else {
-            info->target = p->type_val;
+            info->target = p->u.val; /* pirq# or virq# */
         }
         info->vcpu = p->vcpu;
         info->pending = test_bit(i, pending);
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Thu Oct 19 15:40:58 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 15:40:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619421.964492 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtV8s-0008IB-4U; Thu, 19 Oct 2023 15:40:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619421.964492; Thu, 19 Oct 2023 15: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 1qtV8r-0008FZ-QB; Thu, 19 Oct 2023 15:40:57 +0000
Received: by outflank-mailman (input) for mailman id 619421;
 Thu, 19 Oct 2023 15:40: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=b9Lg=GB=casper.srs.infradead.org=BATV+06ae5fa416ae820d9d5a+7361+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qtV8p-0005v1-7T
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 15:40:55 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id e233176c-6e95-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 17:40:52 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qtV8N-007oss-5e; Thu, 19 Oct 2023 15:40:27 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1qtV8M-000Puf-2S; Thu, 19 Oct 2023 16:40:26 +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
X-Inumbo-ID: e233176c-6e95-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=Sender:Content-Transfer-Encoding:
	Content-Type:MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:
	To:From:Reply-To:Content-ID:Content-Description;
	bh=MmPhIGlWb2xAfFIm6BUSfnZhzoUzKIh6oGhh2/7mAwo=; b=frefgQivOoocUfM7eIVSWCMRfO
	BZZORKVyxMVRYmMyFs6nu/44MbNhxs5IPAbxy7BYRr/mbCK/law4r3Zx6pfttvuuIaIkEL4P25LhR
	x8h7cWH/lDF14wmcB2k0U41Alx5W63kXh8aWokv/gBNJwifWSBySiUdE8vgk9xCPRqCIfh/iwsxDv
	7UOop6JyAOvjBF13wOrhQSliUUBwgRpDq3iPfLt0e/26uw+5sJSlkkLeAZUWuIc9h/0Z4HMUNwgFF
	Z1q5L9AgFZwkoj4ad17HJhxDax9BCBydo2LeFJletDyqg+wABKbNvanJPv8ApSxCY4opUZIV3gdxx
	c+E/zmhQ==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>,
	Hanna Reitz <hreitz@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	=?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Richard Henderson <richard.henderson@linaro.org>,
	Eduardo Habkost <eduardo@habkost.net>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Jason Wang <jasowang@redhat.com>,
	Marcelo Tosatti <mtosatti@redhat.com>,
	Cleber Rosa <crosa@redhat.com>,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
	Wainer dos Santos Moschetta <wainersm@redhat.com>,
	Beraldo Leal <bleal@redhat.com>,
	qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org,
	kvm@vger.kernel.org,
	Bernhard Beschow <shentey@gmail.com>,
	Joel Upham <jupham125@gmail.com>
Subject: [PATCH v2 15/24] hw/xen: add support for Xen primary console in emulated mode
Date: Thu, 19 Oct 2023 16:40:11 +0100
Message-Id: <20231019154020.99080-16-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231019154020.99080-1-dwmw2@infradead.org>
References: <20231019154020.99080-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

The primary console is special because the toolstack maps a page at a
fixed GFN and also allocates the guest-side event channel. Add support
for that in emulated mode, so that we can have a primary console.

Add a *very* rudimentary stub of foriegnmem ops for emulated mode, which
supports literally nothing except a single-page mapping of the console
page. This might as well have been a hack in the xen_console driver, but
this way at least the special-casing is kept within the Xen emulation
code, and it gives us a hook for a more complete implementation if/when
we ever do need one.

Now at last we can boot the Xen PV shim and run PV kernels in QEMU.

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 hw/char/xen_console.c             |  28 +++--
 hw/i386/kvm/meson.build           |   1 +
 hw/i386/kvm/trace-events          |   2 +
 hw/i386/kvm/xen-stubs.c           |   5 +
 hw/i386/kvm/xen_gnttab.c          |  32 +++++-
 hw/i386/kvm/xen_primary_console.c | 167 ++++++++++++++++++++++++++++++
 hw/i386/kvm/xen_primary_console.h |  22 ++++
 hw/i386/kvm/xen_xenstore.c        |  10 ++
 target/i386/kvm/xen-emu.c         |  23 +++-
 9 files changed, 278 insertions(+), 12 deletions(-)
 create mode 100644 hw/i386/kvm/xen_primary_console.c
 create mode 100644 hw/i386/kvm/xen_primary_console.h

diff --git a/hw/char/xen_console.c b/hw/char/xen_console.c
index f4c70709c7..8256b4b889 100644
--- a/hw/char/xen_console.c
+++ b/hw/char/xen_console.c
@@ -33,6 +33,7 @@
 #include "hw/qdev-properties-system.h"
 #include "hw/xen/interface/io/console.h"
 #include "hw/xen/interface/io/xs_wire.h"
+#include "hw/i386/kvm/xen_primary_console.h"
 #include "trace.h"
 
 struct buffer {
@@ -335,14 +336,19 @@ static char *xen_console_get_name(XenDevice *xendev, Error **errp)
     if (con->dev == -1) {
         XenBus *xenbus = XEN_BUS(qdev_get_parent_bus(DEVICE(xendev)));
         char fe_path[XENSTORE_ABS_PATH_MAX + 1];
+        int idx = (xen_mode == XEN_EMULATE) ? 0 : 1;
         char *value;
-        int idx = 1;
 
         /* Theoretically we could go up to INT_MAX here but that's overkill */
         while (idx < 100) {
-            snprintf(fe_path, sizeof(fe_path),
-                     "/local/domain/%u/device/console/%u",
-                     xendev->frontend_id, idx);
+            if (!idx) {
+                snprintf(fe_path, sizeof(fe_path),
+                         "/local/domain/%u/console", xendev->frontend_id);
+            } else {
+                snprintf(fe_path, sizeof(fe_path),
+                         "/local/domain/%u/device/console/%u",
+                         xendev->frontend_id, idx);
+            }
             value = qemu_xen_xs_read(xenbus->xsh, XBT_NULL, fe_path, NULL);
             if (!value) {
                 if (errno == ENOENT) {
@@ -397,11 +403,15 @@ static void xen_console_realize(XenDevice *xendev, Error **errp)
      * be mapped directly as foreignmem (not a grant ref), and the guest port
      * was allocated *for* the guest by the toolstack. The guest gets these
      * through HVMOP_get_param and can use the console long before it's got
-     * XenStore up and running. We cannot create those for a Xen guest.
+     * XenStore up and running. We cannot create those for a true Xen guest,
+     * but we can for Xen emulation.
      */
     if (!con->dev) {
-        if (xen_device_frontend_scanf(xendev, "ring-ref", "%u", &u) != 1 ||
-            xen_device_frontend_scanf(xendev, "port", "%u", &u) != 1) {
+        if (xen_mode == XEN_EMULATE) {
+            xen_primary_console_create();
+        } else if (xen_device_frontend_scanf(xendev, "ring-ref", "%u", &u)
+                   != 1 ||
+                   xen_device_frontend_scanf(xendev, "port", "%u", &u) != 1) {
             error_setg(errp, "cannot create primary Xen console");
             return;
         }
@@ -414,8 +424,8 @@ static void xen_console_realize(XenDevice *xendev, Error **errp)
         xen_device_frontend_printf(xendev, "tty", "%s", cs->filename + 4);
     }
 
-    /* No normal PV driver initialization for the primary console */
-    if (!con->dev) {
+    /* No normal PV driver initialization for the primary console under Xen */
+    if (!con->dev && xen_mode != XEN_EMULATE) {
         xen_console_connect(xendev, errp);
     }
 }
diff --git a/hw/i386/kvm/meson.build b/hw/i386/kvm/meson.build
index ab143d6474..a4a2e23c06 100644
--- a/hw/i386/kvm/meson.build
+++ b/hw/i386/kvm/meson.build
@@ -9,6 +9,7 @@ i386_kvm_ss.add(when: 'CONFIG_XEN_EMU', if_true: files(
   'xen_evtchn.c',
   'xen_gnttab.c',
   'xen_xenstore.c',
+  'xen_primary_console.c',
   'xenstore_impl.c',
   ))
 
diff --git a/hw/i386/kvm/trace-events b/hw/i386/kvm/trace-events
index e4c82de6f3..67bf7f174e 100644
--- a/hw/i386/kvm/trace-events
+++ b/hw/i386/kvm/trace-events
@@ -18,3 +18,5 @@ xenstore_watch(const char *path, const char *token) "path %s token %s"
 xenstore_unwatch(const char *path, const char *token) "path %s token %s"
 xenstore_reset_watches(void) ""
 xenstore_watch_event(const char *path, const char *token) "path %s token %s"
+xen_primary_console_create(void) ""
+xen_primary_console_reset(int port) "port %u"
diff --git a/hw/i386/kvm/xen-stubs.c b/hw/i386/kvm/xen-stubs.c
index ae406e0b02..10068970fe 100644
--- a/hw/i386/kvm/xen-stubs.c
+++ b/hw/i386/kvm/xen-stubs.c
@@ -15,6 +15,7 @@
 #include "qapi/qapi-commands-misc-target.h"
 
 #include "xen_evtchn.h"
+#include "xen_primary_console.h"
 
 void xen_evtchn_snoop_msi(PCIDevice *dev, bool is_msix, unsigned int vector,
                           uint64_t addr, uint32_t data, bool is_masked)
@@ -30,6 +31,10 @@ bool xen_evtchn_deliver_pirq_msi(uint64_t address, uint32_t data)
     return false;
 }
 
+void xen_primary_console_create(void)
+{
+}
+
 #ifdef TARGET_I386
 EvtchnInfoList *qmp_xen_event_list(Error **errp)
 {
diff --git a/hw/i386/kvm/xen_gnttab.c b/hw/i386/kvm/xen_gnttab.c
index 839ec920a1..5519f7712f 100644
--- a/hw/i386/kvm/xen_gnttab.c
+++ b/hw/i386/kvm/xen_gnttab.c
@@ -25,6 +25,7 @@
 #include "hw/xen/xen_backend_ops.h"
 #include "xen_overlay.h"
 #include "xen_gnttab.h"
+#include "xen_primary_console.h"
 
 #include "sysemu/kvm.h"
 #include "sysemu/kvm_xen.h"
@@ -38,6 +39,7 @@ OBJECT_DECLARE_SIMPLE_TYPE(XenGnttabState, XEN_GNTTAB)
 #define ENTRIES_PER_FRAME_V1 (XEN_PAGE_SIZE / sizeof(grant_entry_v1_t))
 
 static struct gnttab_backend_ops emu_gnttab_backend_ops;
+static struct foreignmem_backend_ops emu_foreignmem_backend_ops;
 
 struct XenGnttabState {
     /*< private >*/
@@ -100,6 +102,7 @@ static void xen_gnttab_realize(DeviceState *dev, Error **errp)
     s->map_track = g_new0(uint8_t, s->max_frames * ENTRIES_PER_FRAME_V1);
 
     xen_gnttab_ops = &emu_gnttab_backend_ops;
+    xen_foreignmem_ops = &emu_foreignmem_backend_ops;
 }
 
 static int xen_gnttab_post_load(void *opaque, int version_id)
@@ -524,6 +527,29 @@ static struct gnttab_backend_ops emu_gnttab_backend_ops = {
     .unmap = xen_be_gnttab_unmap,
 };
 
+/* Dummy implementation of foreignmem; just enough for console */
+static void *xen_be_foreignmem_map(uint32_t dom, void *addr, int prot,
+                                   size_t pages, xen_pfn_t *pfns,
+                                   int *errs)
+{
+    if (dom == xen_domid && !addr && pages == 1 &&
+        pfns[0] == xen_primary_console_get_pfn()) {
+        return xen_primary_console_get_map();
+    }
+
+    return NULL;
+}
+
+static int xen_be_foreignmem_unmap(void *addr, size_t pages)
+{
+    return 0;
+}
+
+static struct foreignmem_backend_ops emu_foreignmem_backend_ops = {
+    .map = xen_be_foreignmem_map,
+    .unmap = xen_be_foreignmem_unmap,
+};
+
 int xen_gnttab_reset(void)
 {
     XenGnttabState *s = xen_gnttab_singleton;
@@ -537,9 +563,13 @@ int xen_gnttab_reset(void)
     s->nr_frames = 0;
 
     memset(s->entries.v1, 0, XEN_PAGE_SIZE * s->max_frames);
-
     s->entries.v1[GNTTAB_RESERVED_XENSTORE].flags = GTF_permit_access;
     s->entries.v1[GNTTAB_RESERVED_XENSTORE].frame = XEN_SPECIAL_PFN(XENSTORE);
 
+    if (xen_primary_console_get_pfn()) {
+        s->entries.v1[GNTTAB_RESERVED_CONSOLE].flags = GTF_permit_access;
+        s->entries.v1[GNTTAB_RESERVED_CONSOLE].frame = XEN_SPECIAL_PFN(CONSOLE);
+    }
+
     return 0;
 }
diff --git a/hw/i386/kvm/xen_primary_console.c b/hw/i386/kvm/xen_primary_console.c
new file mode 100644
index 0000000000..0aa1c16ad6
--- /dev/null
+++ b/hw/i386/kvm/xen_primary_console.c
@@ -0,0 +1,167 @@
+/*
+ * QEMU Xen emulation: Primary console support
+ *
+ * Copyright © 2023 Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ *
+ * Authors: David Woodhouse <dwmw2@infradead.org>
+ *
+ * This work is licensed under the terms of the GNU GPL, version 2 or later.
+ * See the COPYING file in the top-level directory.
+ */
+
+#include "qemu/osdep.h"
+
+#include "qapi/error.h"
+
+#include "hw/sysbus.h"
+#include "hw/xen/xen.h"
+#include "hw/xen/xen_backend_ops.h"
+#include "xen_evtchn.h"
+#include "xen_overlay.h"
+#include "xen_primary_console.h"
+
+#include "sysemu/kvm.h"
+#include "sysemu/kvm_xen.h"
+
+#include "trace.h"
+
+#include "hw/xen/interface/event_channel.h"
+#include "hw/xen/interface/grant_table.h"
+
+#define TYPE_XEN_PRIMARY_CONSOLE "xen-primary-console"
+OBJECT_DECLARE_SIMPLE_TYPE(XenPrimaryConsoleState, XEN_PRIMARY_CONSOLE)
+
+struct XenPrimaryConsoleState {
+    /*< private >*/
+    SysBusDevice busdev;
+    /*< public >*/
+
+    MemoryRegion console_page;
+    void *cp;
+
+    evtchn_port_t guest_port;
+    evtchn_port_t be_port;
+
+    struct xengntdev_handle *gt;
+    void *granted_xs;
+};
+
+struct XenPrimaryConsoleState *xen_primary_console_singleton;
+
+static void xen_primary_console_realize(DeviceState *dev, Error **errp)
+{
+    XenPrimaryConsoleState *s = XEN_PRIMARY_CONSOLE(dev);
+
+    if (xen_mode != XEN_EMULATE) {
+        error_setg(errp, "Xen primary console support is for Xen emulation");
+        return;
+    }
+
+    memory_region_init_ram(&s->console_page, OBJECT(dev), "xen:console_page",
+                           XEN_PAGE_SIZE, &error_abort);
+    memory_region_set_enabled(&s->console_page, true);
+    s->cp = memory_region_get_ram_ptr(&s->console_page);
+    memset(s->cp, 0, XEN_PAGE_SIZE);
+
+    /* We can't map it this early as KVM isn't ready */
+    xen_primary_console_singleton = s;
+}
+
+static void xen_primary_console_class_init(ObjectClass *klass, void *data)
+{
+    DeviceClass *dc = DEVICE_CLASS(klass);
+
+    dc->realize = xen_primary_console_realize;
+}
+
+static const TypeInfo xen_primary_console_info = {
+    .name          = TYPE_XEN_PRIMARY_CONSOLE,
+    .parent        = TYPE_SYS_BUS_DEVICE,
+    .instance_size = sizeof(XenPrimaryConsoleState),
+    .class_init    = xen_primary_console_class_init,
+};
+
+
+void xen_primary_console_create(void)
+{
+    DeviceState *dev = sysbus_create_simple(TYPE_XEN_PRIMARY_CONSOLE, -1, NULL);
+
+    trace_xen_primary_console_create();
+
+    xen_primary_console_singleton = XEN_PRIMARY_CONSOLE(dev);
+
+    /*
+     * Defer the init (xen_primary_console_reset()) until KVM is set up and the
+     * overlay page can be mapped.
+     */
+}
+
+static void xen_primary_console_register_types(void)
+{
+    type_register_static(&xen_primary_console_info);
+}
+
+type_init(xen_primary_console_register_types)
+
+uint16_t xen_primary_console_get_port(void)
+{
+    XenPrimaryConsoleState *s = xen_primary_console_singleton;
+    if (!s) {
+        return 0;
+    }
+    return s->guest_port;
+}
+
+uint64_t xen_primary_console_get_pfn(void)
+{
+    XenPrimaryConsoleState *s = xen_primary_console_singleton;
+    if (!s) {
+        return 0;
+    }
+    return XEN_SPECIAL_PFN(CONSOLE);
+}
+
+void *xen_primary_console_get_map(void)
+{
+    XenPrimaryConsoleState *s = xen_primary_console_singleton;
+    if (!s) {
+        return 0;
+    }
+    return s->cp;
+}
+
+static void alloc_guest_port(XenPrimaryConsoleState *s)
+{
+    struct evtchn_alloc_unbound alloc = {
+        .dom = DOMID_SELF,
+        .remote_dom = DOMID_QEMU,
+    };
+
+    if (!xen_evtchn_alloc_unbound_op(&alloc)) {
+        s->guest_port = alloc.port;
+    }
+}
+
+int xen_primary_console_reset(void)
+{
+    XenPrimaryConsoleState *s = xen_primary_console_singleton;
+    if (!s) {
+        return 0;
+    }
+
+    if (!memory_region_is_mapped(&s->console_page)) {
+        uint64_t gpa = XEN_SPECIAL_PFN(CONSOLE) << TARGET_PAGE_BITS;
+        xen_overlay_do_map_page(&s->console_page, gpa);
+    }
+
+    alloc_guest_port(s);
+
+    trace_xen_primary_console_reset(s->guest_port);
+
+    s->gt = qemu_xen_gnttab_open();
+    uint32_t xs_gntref = GNTTAB_RESERVED_CONSOLE;
+    s->granted_xs = qemu_xen_gnttab_map_refs(s->gt, 1, xen_domid, &xs_gntref,
+                                             PROT_READ | PROT_WRITE);
+
+    return 0;
+}
diff --git a/hw/i386/kvm/xen_primary_console.h b/hw/i386/kvm/xen_primary_console.h
new file mode 100644
index 0000000000..dd4922f3f4
--- /dev/null
+++ b/hw/i386/kvm/xen_primary_console.h
@@ -0,0 +1,22 @@
+/*
+ * QEMU Xen emulation: Primary console support
+ *
+ * Copyright © 2023 Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ *
+ * Authors: David Woodhouse <dwmw2@infradead.org>
+ *
+ * This work is licensed under the terms of the GNU GPL, version 2 or later.
+ * See the COPYING file in the top-level directory.
+ */
+
+#ifndef QEMU_XEN_PRIMARY_CONSOLE_H
+#define QEMU_XEN_PRIMARY_CONSOLE_H
+
+void xen_primary_console_create(void);
+int xen_primary_console_reset(void);
+
+uint16_t xen_primary_console_get_port(void);
+uint64_t xen_primary_console_get_pfn(void);
+void *xen_primary_console_get_map(void);
+
+#endif /* QEMU_XEN_PRIMARY_CONSOLE_H */
diff --git a/hw/i386/kvm/xen_xenstore.c b/hw/i386/kvm/xen_xenstore.c
index 61692d4489..2ee4916c64 100644
--- a/hw/i386/kvm/xen_xenstore.c
+++ b/hw/i386/kvm/xen_xenstore.c
@@ -25,6 +25,7 @@
 #include "hw/xen/xen_backend_ops.h"
 #include "xen_overlay.h"
 #include "xen_evtchn.h"
+#include "xen_primary_console.h"
 #include "xen_xenstore.h"
 
 #include "sysemu/kvm.h"
@@ -1434,6 +1435,7 @@ static void alloc_guest_port(XenXenstoreState *s)
 int xen_xenstore_reset(void)
 {
     XenXenstoreState *s = xen_xenstore_singleton;
+    int console_port;
     GList *perms;
     int err;
 
@@ -1470,6 +1472,14 @@ int xen_xenstore_reset(void)
     relpath_printf(s, perms, "store/ring-ref", "%lu",
                    XEN_SPECIAL_PFN(XENSTORE));
 
+    console_port = xen_primary_console_get_port();
+    if (console_port) {
+        relpath_printf(s, perms, "console/ring-ref", "%lu",
+                       XEN_SPECIAL_PFN(CONSOLE));
+        relpath_printf(s, perms, "console/port", "%u", console_port);
+        relpath_printf(s, perms, "console/state", "%u", XenbusStateInitialised);
+    }
+
     g_list_free_full(perms, g_free);
 
     /*
diff --git a/target/i386/kvm/xen-emu.c b/target/i386/kvm/xen-emu.c
index 477e93cd92..9f57786e95 100644
--- a/target/i386/kvm/xen-emu.c
+++ b/target/i386/kvm/xen-emu.c
@@ -28,6 +28,7 @@
 #include "hw/i386/kvm/xen_overlay.h"
 #include "hw/i386/kvm/xen_evtchn.h"
 #include "hw/i386/kvm/xen_gnttab.h"
+#include "hw/i386/kvm/xen_primary_console.h"
 #include "hw/i386/kvm/xen_xenstore.h"
 
 #include "hw/xen/interface/version.h"
@@ -182,7 +183,8 @@ int kvm_xen_init(KVMState *s, uint32_t hypercall_msr)
         return ret;
     }
 
-    /* The page couldn't be overlaid until KVM was initialized */
+    /* The pages couldn't be overlaid until KVM was initialized */
+    xen_primary_console_reset();
     xen_xenstore_reset();
 
     return 0;
@@ -811,11 +813,23 @@ static bool handle_get_param(struct kvm_xen_exit *exit, X86CPU *cpu,
     case HVM_PARAM_STORE_EVTCHN:
         hp.value = xen_xenstore_get_port();
         break;
+    case HVM_PARAM_CONSOLE_PFN:
+        hp.value = xen_primary_console_get_pfn();
+        if (!hp.value) {
+            err = -EINVAL;
+        }
+        break;
+    case HVM_PARAM_CONSOLE_EVTCHN:
+        hp.value = xen_primary_console_get_port();
+        if (!hp.value) {
+            err = -EINVAL;
+        }
+        break;
     default:
         return false;
     }
 
-    if (kvm_copy_to_gva(cs, arg, &hp, sizeof(hp))) {
+    if (!err && kvm_copy_to_gva(cs, arg, &hp, sizeof(hp))) {
         err = -EFAULT;
     }
 out:
@@ -1426,6 +1440,11 @@ int kvm_xen_soft_reset(void)
         return err;
     }
 
+    err = xen_primary_console_reset();
+    if (err) {
+        return err;
+    }
+
     err = xen_xenstore_reset();
     if (err) {
         return err;
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Thu Oct 19 15:40:58 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 15:40:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619420.964484 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtV8r-00084v-Ib; Thu, 19 Oct 2023 15:40:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619420.964484; Thu, 19 Oct 2023 15: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 1qtV8r-00081o-3y; Thu, 19 Oct 2023 15:40:57 +0000
Received: by outflank-mailman (input) for mailman id 619420;
 Thu, 19 Oct 2023 15:40: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=m+UH=GB=desiato.srs.infradead.org=BATV+298c059cf2aa39b7dc34+7361+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qtV8o-0006dc-To
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 15:40:54 +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 e1ce9956-6e95-11ee-9b0e-b553b5be7939;
 Thu, 19 Oct 2023 17:40:51 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by desiato.infradead.org with esmtpsa (Exim 4.96 #2 (Red Hat Linux))
 id 1qtV8M-009yCl-2Y; Thu, 19 Oct 2023 15:40:27 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1qtV8L-000Ptt-2u; Thu, 19 Oct 2023 16:40:25 +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
X-Inumbo-ID: e1ce9956-6e95-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=desiato.20200630; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=hy2YuY0dWcf+Lr7etZHB++T3clcBvefTeZ93BBNCjCM=; b=DmYBdYN03plLfc9Z3a7Lig0nJS
	chnqFUJQtb1XZqAyZrsfM2mUTXC5PcfxZrq5zSrXl+lX6RKF4oHzTono8UUQK3c+YMIa+HnC3lfci
	wi9+B/rKkt09RsCvw0Bu21ZQJVXPp1+W6r8Xh5psyRFJoQDLcdlq3DSdw70ihNk9cHBPAwUgU/Zjs
	e4i22xctxwNK/haxM82vmxAcPxHGGy6RtaK2LO8sEocYde64fM423I6YsWQbsO02lH649k3cjpvNQ
	vM+kXLeT+o3P2w7JAyJ0oxgD/5bFr7LDzuaxudCx9YNoV3lkbsgasNcMGA5qD3B5CZtpS5Ov/GrXi
	oCWeFxiA==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>,
	Hanna Reitz <hreitz@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	=?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Richard Henderson <richard.henderson@linaro.org>,
	Eduardo Habkost <eduardo@habkost.net>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Jason Wang <jasowang@redhat.com>,
	Marcelo Tosatti <mtosatti@redhat.com>,
	Cleber Rosa <crosa@redhat.com>,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
	Wainer dos Santos Moschetta <wainersm@redhat.com>,
	Beraldo Leal <bleal@redhat.com>,
	qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org,
	kvm@vger.kernel.org,
	Bernhard Beschow <shentey@gmail.com>,
	Joel Upham <jupham125@gmail.com>
Subject: [PATCH v2 04/24] hw/xen: don't clear map_track[] in xen_gnttab_reset()
Date: Thu, 19 Oct 2023 16:40:00 +0100
Message-Id: <20231019154020.99080-5-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231019154020.99080-1-dwmw2@infradead.org>
References: <20231019154020.99080-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by desiato.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

The refcounts actually correspond to 'active_ref' structures stored in a
GHashTable per "user" on the backend side (mostly, per XenDevice).

If we zero map_track[] on reset, then when the backend drivers get torn
down and release their mapping we hit the assert(s->map_track[ref] != 0)
in gnt_unref().

So leave them in place. Each backend driver will disconnect and reconnect
as the guest comes back up again and reconnects, and it all works out OK
in the end as the old refs get dropped.

Fixes: de26b2619789 ("hw/xen: Implement soft reset for emulated gnttab")
Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 hw/i386/kvm/xen_gnttab.c | 2 --
 1 file changed, 2 deletions(-)

diff --git a/hw/i386/kvm/xen_gnttab.c b/hw/i386/kvm/xen_gnttab.c
index 21c30e3659..839ec920a1 100644
--- a/hw/i386/kvm/xen_gnttab.c
+++ b/hw/i386/kvm/xen_gnttab.c
@@ -541,7 +541,5 @@ int xen_gnttab_reset(void)
     s->entries.v1[GNTTAB_RESERVED_XENSTORE].flags = GTF_permit_access;
     s->entries.v1[GNTTAB_RESERVED_XENSTORE].frame = XEN_SPECIAL_PFN(XENSTORE);
 
-    memset(s->map_track, 0, s->max_frames * ENTRIES_PER_FRAME_V1);
-
     return 0;
 }
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Thu Oct 19 15:40:58 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 15:40:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619409.964390 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtV8j-0005vK-FJ; Thu, 19 Oct 2023 15:40:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619409.964390; Thu, 19 Oct 2023 15:40: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 1qtV8j-0005vC-B7; Thu, 19 Oct 2023 15:40:49 +0000
Received: by outflank-mailman (input) for mailman id 619409;
 Thu, 19 Oct 2023 15:40: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=b9Lg=GB=casper.srs.infradead.org=BATV+06ae5fa416ae820d9d5a+7361+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qtV8h-0005v1-Pw
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 15:40:48 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id de5c7d8a-6e95-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 17:40:46 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qtV8N-007ot1-K0; Thu, 19 Oct 2023 15:40:27 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1qtV8N-000Pv5-0t; Thu, 19 Oct 2023 16:40:27 +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
X-Inumbo-ID: de5c7d8a-6e95-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=iaeDXSTaoWdCm87GDHXDzDikArDTOfszjp92r6YPQM0=; b=i+jG3TmJBmY+zkUpHBdimsG7cq
	7p0LDLP5W7wK0hCX+CeYTknNp1J5rK1m0dyVJ6+T831ZnUgVu7V/UMwvxU4q9P/StzXIiLSxKYXt+
	VMW8IT2l6P1NZhPDNqyPqseAATfVk971Z4Q833tnPE/Kf0gKrP1Zh7BH2U410KfSi6+In3MJ/SBHN
	TI/EBEeH4n9s2rgGYbRurAllX+cLnCc/AbH7JXqf+RQkFqXb5Gsj+sF+n9eRd8R3u0ifOIq4fjnwO
	UaJEe6dC5bT5fJJM/beY/4CRxmoL3A5t0gs90g5VnQEnfwbjcVqTva9L1r8vyFio0Kb/uknr+vsxl
	QdfW8f8A==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>,
	Hanna Reitz <hreitz@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	=?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Richard Henderson <richard.henderson@linaro.org>,
	Eduardo Habkost <eduardo@habkost.net>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Jason Wang <jasowang@redhat.com>,
	Marcelo Tosatti <mtosatti@redhat.com>,
	Cleber Rosa <crosa@redhat.com>,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
	Wainer dos Santos Moschetta <wainersm@redhat.com>,
	Beraldo Leal <bleal@redhat.com>,
	qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org,
	kvm@vger.kernel.org,
	Bernhard Beschow <shentey@gmail.com>,
	Joel Upham <jupham125@gmail.com>
Subject: [PATCH v2 21/24] net: do not delete nics in net_cleanup()
Date: Thu, 19 Oct 2023 16:40:17 +0100
Message-Id: <20231019154020.99080-22-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231019154020.99080-1-dwmw2@infradead.org>
References: <20231019154020.99080-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

In net_cleanup() we only need to delete the netdevs, as those may have
state which outlives Qemu when it exits, and thus may actually need to
be cleaned up on exit.

The nics, on the other hand, are owned by the device which created them.
Most devices don't bother to clean up on exit because they don't have
any state which will outlive Qemu... but XenBus devices do need to clean
up their nodes in XenStore, and do have an exit handler to delete them.

When the XenBus exit handler destroys the xen-net-device, it attempts
to delete its nic after net_cleanup() had already done so. And crashes.

Fix this by only deleting netdevs as we walk the list. As the comment
notes, we can't use QTAILQ_FOREACH_SAFE() as each deletion may remove
*multiple* entries, including the "safely" saved 'next' pointer. But
we can store the *previous* entry, since nics are safe.

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 net/net.c | 28 ++++++++++++++++++++++------
 1 file changed, 22 insertions(+), 6 deletions(-)

diff --git a/net/net.c b/net/net.c
index c0c0cbe99e..bbe33da176 100644
--- a/net/net.c
+++ b/net/net.c
@@ -1499,18 +1499,34 @@ static void net_vm_change_state_handler(void *opaque, bool running,
 
 void net_cleanup(void)
 {
-    NetClientState *nc;
+    NetClientState *nc, **p = &QTAILQ_FIRST(&net_clients);
 
     /*cleanup colo compare module for COLO*/
     colo_compare_cleanup();
 
-    /* We may del multiple entries during qemu_del_net_client(),
-     * so QTAILQ_FOREACH_SAFE() is also not safe here.
+    /*
+     * Walk the net_clients list and remove the netdevs but *not* any
+     * NET_CLIENT_DRIVER_NIC entries. The latter are owned by the device
+     * model which created them, and in some cases (e.g. xen-net-device)
+     * the device itself may do cleanup at exit and will be upset if we
+     * just delete its NIC from underneath it.
+     *
+     * Since qemu_del_net_client() may delete multiple entries, using
+     * QTAILQ_FOREACH_SAFE() is not safe here. The only safe pointer
+     * to keep as a bookmark is a NET_CLIENT_DRIVER_NIC entry, so keep
+     * 'p' pointing to either the head of the list, or the 'next' field
+     * of the latest NET_CLIENT_DRIVER_NIC, and operate on *p as we walk
+     * the list.
+     *
+     * The 'nc' variable isn't part of the list traversal; it's purely
+     * for convenience as too much '(*p)->' has a tendency to make the
+     * readers' eyes bleed.
      */
-    while (!QTAILQ_EMPTY(&net_clients)) {
-        nc = QTAILQ_FIRST(&net_clients);
+    while (*p) {
+        nc = *p;
         if (nc->info->type == NET_CLIENT_DRIVER_NIC) {
-            qemu_del_nic(qemu_get_nic(nc));
+            /* Skip NET_CLIENT_DRIVER_NIC entries */
+            p = &QTAILQ_NEXT(nc, next);
         } else {
             qemu_del_net_client(nc);
         }
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Thu Oct 19 15:40:58 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 15:40:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619412.964414 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtV8l-0006NB-DF; Thu, 19 Oct 2023 15:40:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619412.964414; Thu, 19 Oct 2023 15:40: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 1qtV8l-0006Iw-6Z; Thu, 19 Oct 2023 15:40:51 +0000
Received: by outflank-mailman (input) for mailman id 619412;
 Thu, 19 Oct 2023 15:40: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=b9Lg=GB=casper.srs.infradead.org=BATV+06ae5fa416ae820d9d5a+7361+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qtV8k-0005v1-7B
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 15:40:50 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id e099c087-6e95-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 17:40:49 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qtV8M-007osg-1i; Thu, 19 Oct 2023 15:40:26 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1qtV8L-000Ptg-23; Thu, 19 Oct 2023 16:40:25 +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
X-Inumbo-ID: e099c087-6e95-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=QOmUYFl3LA5suJXP4FpVRY+eqhPYL8puoFjgeKxcxDM=; b=E/u0777Zbg/YBnlGZ6fL2Uibu9
	owPVLGamrIj5OCflE4FDlBiEJsUenhYlVTQdIlizriBxANMrHpZA7QeQkqiDwhPLom/ygF0bUONAU
	IDImPrmUPKJ2pNxZCLGGonhArbQgkof+VP/G6a/ZsG9Bm2qdQ3BX0HDpqm1oYhYk2iL8XJTCQMjEc
	fRH2qzotdj+OM0RNfXMVpfLwY36sCyYKRa5F+RrGDo8Z+rL+hmqm/bBpM6Xv6ste2MA1d39iW5som
	kX1caHIaW/N68g68EgY2NWB/p2EB62ZTSNp32+q6U/TVZ5KEfXUL5rLGGOQ7ziO6a5gAY0mvLMQOR
	6UbUDdPw==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>,
	Hanna Reitz <hreitz@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	=?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Richard Henderson <richard.henderson@linaro.org>,
	Eduardo Habkost <eduardo@habkost.net>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Jason Wang <jasowang@redhat.com>,
	Marcelo Tosatti <mtosatti@redhat.com>,
	Cleber Rosa <crosa@redhat.com>,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
	Wainer dos Santos Moschetta <wainersm@redhat.com>,
	Beraldo Leal <bleal@redhat.com>,
	qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org,
	kvm@vger.kernel.org,
	Bernhard Beschow <shentey@gmail.com>,
	Joel Upham <jupham125@gmail.com>
Subject: [PATCH v2 01/24] i386/xen: Don't advertise XENFEAT_supervisor_mode_kernel
Date: Thu, 19 Oct 2023 16:39:57 +0100
Message-Id: <20231019154020.99080-2-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231019154020.99080-1-dwmw2@infradead.org>
References: <20231019154020.99080-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

This confuses lscpu into thinking it's running in PVH mode.

Fixes: bedcc139248 ("i386/xen: implement HYPERVISOR_xen_version")
Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
Reviewed-by: Paul Durrant <paul@xen.org>
---
 target/i386/kvm/xen-emu.c | 1 -
 1 file changed, 1 deletion(-)

diff --git a/target/i386/kvm/xen-emu.c b/target/i386/kvm/xen-emu.c
index 76348f9d5d..0055441b2e 100644
--- a/target/i386/kvm/xen-emu.c
+++ b/target/i386/kvm/xen-emu.c
@@ -267,7 +267,6 @@ static bool kvm_xen_hcall_xen_version(struct kvm_xen_exit *exit, X86CPU *cpu,
             fi.submap |= 1 << XENFEAT_writable_page_tables |
                          1 << XENFEAT_writable_descriptor_tables |
                          1 << XENFEAT_auto_translated_physmap |
-                         1 << XENFEAT_supervisor_mode_kernel |
                          1 << XENFEAT_hvm_callback_vector |
                          1 << XENFEAT_hvm_safe_pvclock |
                          1 << XENFEAT_hvm_pirqs;
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Thu Oct 19 15:40:58 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 15:40:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619411.964405 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtV8k-0006DX-Vg; Thu, 19 Oct 2023 15:40:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619411.964405; Thu, 19 Oct 2023 15: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 1qtV8k-0006Cm-Pu; Thu, 19 Oct 2023 15:40:50 +0000
Received: by outflank-mailman (input) for mailman id 619411;
 Thu, 19 Oct 2023 15: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=m+UH=GB=desiato.srs.infradead.org=BATV+298c059cf2aa39b7dc34+7361+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qtV8j-0005v1-B6
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 15:40:49 +0000
Received: from desiato.infradead.org (desiato.infradead.org
 [2001:8b0:10b:1:d65d:64ff:fe57:4e05])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id dfe454f7-6e95-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 17:40:48 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by desiato.infradead.org with esmtpsa (Exim 4.96 #2 (Red Hat Linux))
 id 1qtV8M-009yCk-2Y; Thu, 19 Oct 2023 15:40:27 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1qtV8L-000Pto-2c; Thu, 19 Oct 2023 16:40:25 +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
X-Inumbo-ID: dfe454f7-6e95-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=desiato.20200630; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=yj3bQOsvlVS+cuxN5wPLkNEIrT6cixfjryf2/rFkYPo=; b=apmrUQjys+v5rup9nz+m2AM5cJ
	2Y2A05kFFcMK4lO0kAHJWQYvJuY7yW0Mbcd6xBkSdi7dZE8UYfHwT+MsBjpnPbxyw76XY0z6pWZIQ
	/Xbt2G1fOgOADjjv0bJg895NrBPYCnkgVjKTWWOXLkLH7it8HqWs9l/FFJgQ/mUgEiAcalOp8D8Wy
	qH7vnVOom93dI6oaB21y/lpt2E7eoveScrTU88jzuNmmhGwUA3Tinnyl0/mIZt9MdWKMLq3ME3d3a
	hd4UWY3+BnlXQGAEpOmqrAsqGKgxLgM6NjTY7kgwl4SAKcduwn8Pjydd4w/+pVV6+TRVb9aodRCJm
	9DCTuMag==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>,
	Hanna Reitz <hreitz@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	=?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Richard Henderson <richard.henderson@linaro.org>,
	Eduardo Habkost <eduardo@habkost.net>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Jason Wang <jasowang@redhat.com>,
	Marcelo Tosatti <mtosatti@redhat.com>,
	Cleber Rosa <crosa@redhat.com>,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
	Wainer dos Santos Moschetta <wainersm@redhat.com>,
	Beraldo Leal <bleal@redhat.com>,
	qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org,
	kvm@vger.kernel.org,
	Bernhard Beschow <shentey@gmail.com>,
	Joel Upham <jupham125@gmail.com>
Subject: [PATCH v2 03/24] hw/xen: select kernel mode for per-vCPU event channel upcall vector
Date: Thu, 19 Oct 2023 16:39:59 +0100
Message-Id: <20231019154020.99080-4-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231019154020.99080-1-dwmw2@infradead.org>
References: <20231019154020.99080-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by desiato.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

A guest which has configured the per-vCPU upcall vector may set the
HVM_PARAM_CALLBACK_IRQ param to fairly much anything other than zero.

For example, Linux v6.0+ after commit b1c3497e604 ("x86/xen: Add support
for HVMOP_set_evtchn_upcall_vector") will just do this after setting the
vector:

       /* Trick toolstack to think we are enlightened. */
       if (!cpu)
               rc = xen_set_callback_via(1);

That's explicitly setting the delivery to GSI#1, but it's supposed to be
overridden by the per-vCPU vector setting. This mostly works in Qemu
*except* for the logic to enable the in-kernel handling of event channels,
which falsely determines that the kernel cannot accelerate GSI delivery
in this case.

Add a kvm_xen_has_vcpu_callback_vector() to report whether vCPU#0 has
the vector set, and use that in xen_evtchn_set_callback_param() to
enable the kernel acceleration features even when the param *appears*
to be set to target a GSI.

Preserve the Xen behaviour that when HVM_PARAM_CALLBACK_IRQ is set to
*zero* the event channel delivery is disabled completely. (Which is
what that bizarre guest behaviour is working round in the first place.)

Fixes: 91cce756179 ("hw/xen: Add xen_evtchn device for event channel emulation")
Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 hw/i386/kvm/xen_evtchn.c  | 6 ++++++
 include/sysemu/kvm_xen.h  | 1 +
 target/i386/kvm/xen-emu.c | 7 +++++++
 3 files changed, 14 insertions(+)

diff --git a/hw/i386/kvm/xen_evtchn.c b/hw/i386/kvm/xen_evtchn.c
index a731738411..3d6f4b4a0a 100644
--- a/hw/i386/kvm/xen_evtchn.c
+++ b/hw/i386/kvm/xen_evtchn.c
@@ -490,6 +490,12 @@ int xen_evtchn_set_callback_param(uint64_t param)
         break;
     }
 
+    /* If the guest has set a per-vCPU callback vector, prefer that. */
+    if (gsi && kvm_xen_has_vcpu_callback_vector()) {
+        in_kernel = kvm_xen_has_cap(EVTCHN_SEND);
+        gsi = 0;
+    }
+
     if (!ret) {
         /* If vector delivery was turned *off* then tell the kernel */
         if ((s->callback_param >> CALLBACK_VIA_TYPE_SHIFT) ==
diff --git a/include/sysemu/kvm_xen.h b/include/sysemu/kvm_xen.h
index 595abfbe40..961c702c4e 100644
--- a/include/sysemu/kvm_xen.h
+++ b/include/sysemu/kvm_xen.h
@@ -22,6 +22,7 @@
 int kvm_xen_soft_reset(void);
 uint32_t kvm_xen_get_caps(void);
 void *kvm_xen_get_vcpu_info_hva(uint32_t vcpu_id);
+bool kvm_xen_has_vcpu_callback_vector(void);
 void kvm_xen_inject_vcpu_callback_vector(uint32_t vcpu_id, int type);
 void kvm_xen_set_callback_asserted(void);
 int kvm_xen_set_vcpu_virq(uint32_t vcpu_id, uint16_t virq, uint16_t port);
diff --git a/target/i386/kvm/xen-emu.c b/target/i386/kvm/xen-emu.c
index 619240398a..3ba636b09a 100644
--- a/target/i386/kvm/xen-emu.c
+++ b/target/i386/kvm/xen-emu.c
@@ -424,6 +424,13 @@ void kvm_xen_set_callback_asserted(void)
     }
 }
 
+bool kvm_xen_has_vcpu_callback_vector(void)
+{
+    CPUState *cs = qemu_get_cpu(0);
+
+    return cs && !!X86_CPU(cs)->env.xen_vcpu_callback_vector;
+}
+
 void kvm_xen_inject_vcpu_callback_vector(uint32_t vcpu_id, int type)
 {
     CPUState *cs = qemu_get_cpu(vcpu_id);
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Thu Oct 19 15:40:58 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 15:40:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619414.964440 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtV8o-0007AL-1N; Thu, 19 Oct 2023 15:40:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619414.964440; Thu, 19 Oct 2023 15:40: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 1qtV8n-0007A5-TT; Thu, 19 Oct 2023 15:40:53 +0000
Received: by outflank-mailman (input) for mailman id 619414;
 Thu, 19 Oct 2023 15:40: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=b9Lg=GB=casper.srs.infradead.org=BATV+06ae5fa416ae820d9d5a+7361+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qtV8m-0005v1-7J
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 15:40:52 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id e0bd07f6-6e95-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 17:40:49 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qtV8M-007osh-9t; Thu, 19 Oct 2023 15:40:26 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1qtV8L-000Pty-36; Thu, 19 Oct 2023 16:40:25 +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
X-Inumbo-ID: e0bd07f6-6e95-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=Sender:Content-Transfer-Encoding:
	Content-Type:MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:
	To:From:Reply-To:Content-ID:Content-Description;
	bh=hLazHzQr9WU4aKDL3e0cHQ8ZFMzJwP9pBwOEG+7+DoA=; b=mZVHuHGu2yiNHmYQ6lAmxyEZjN
	e6NSylNjif4ob9D4TnTQeVnUE1lTePYhEsdCI7J46anemdWJCMzjBGU6ztQsfxcdTtlyQER8zRAze
	sar13P2OM77RUpnRMfNomAGWXl77C3jfsJp+nY6jQeLnkhjLNP3Ey6o5ZGnxbcOnVTPrOyQMvyh6T
	icRvk0TzuJG1NIKoOMC1qdQLWJGsko7VHDIPJlICHOsG9ds8BfY7FtUgZwd0noA9uaOhkrfYLU7KL
	uyx63lcS6ETtZjPM4GkmV5/0HG4jDqF3shYhUhWy4stZZ7T/33VQ0O7W0wJg46U63S8BjjpCZMzZD
	qY8yAUEA==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>,
	Hanna Reitz <hreitz@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	=?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Richard Henderson <richard.henderson@linaro.org>,
	Eduardo Habkost <eduardo@habkost.net>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Jason Wang <jasowang@redhat.com>,
	Marcelo Tosatti <mtosatti@redhat.com>,
	Cleber Rosa <crosa@redhat.com>,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
	Wainer dos Santos Moschetta <wainersm@redhat.com>,
	Beraldo Leal <bleal@redhat.com>,
	qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org,
	kvm@vger.kernel.org,
	Bernhard Beschow <shentey@gmail.com>,
	Joel Upham <jupham125@gmail.com>
Subject: [PATCH v2 05/24] hw/xen: fix XenStore watch delivery to guest
Date: Thu, 19 Oct 2023 16:40:01 +0100
Message-Id: <20231019154020.99080-6-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231019154020.99080-1-dwmw2@infradead.org>
References: <20231019154020.99080-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

When fire_watch_cb() found the response buffer empty, it would call
deliver_watch() to generate the XS_WATCH_EVENT message in the response
buffer and send an event channel notification to the guest… without
actually *copying* the response buffer into the ring. So there was
nothing for the guest to see. The pending response didn't actually get
processed into the ring until the guest next triggered some activity
from its side.

Add the missing call to put_rsp().

It might have been slightly nicer to call xen_xenstore_event() here,
which would *almost* have worked. Except for the fact that it calls
xen_be_evtchn_pending() to check that it really does have an event
pending (and clear the eventfd for next time). And under Xen it's
defined that setting that fd to O_NONBLOCK isn't guaranteed to work,
so the emu implementation follows suit.

This fixes Xen device hot-unplug.

Fixes: 0254c4d19df ("hw/xen: Add xenstore wire implementation and implementation stubs")
Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 hw/i386/kvm/xen_xenstore.c | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/hw/i386/kvm/xen_xenstore.c b/hw/i386/kvm/xen_xenstore.c
index 660d0b72f9..82a215058a 100644
--- a/hw/i386/kvm/xen_xenstore.c
+++ b/hw/i386/kvm/xen_xenstore.c
@@ -1357,10 +1357,12 @@ static void fire_watch_cb(void *opaque, const char *path, const char *token)
     } else {
         deliver_watch(s, path, token);
         /*
-         * If the message was queued because there was already ring activity,
-         * no need to wake the guest. But if not, we need to send the evtchn.
+         * Attempt to queue the message into the actual ring, and send
+         * the event channel notification if any bytes are copied.
          */
-        xen_be_evtchn_notify(s->eh, s->be_port);
+        if (put_rsp(s) > 0) {
+            xen_be_evtchn_notify(s->eh, s->be_port);
+        }
     }
 }
 
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Thu Oct 19 15:40:59 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 15:40:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619413.964430 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtV8m-0006sX-HF; Thu, 19 Oct 2023 15:40:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619413.964430; Thu, 19 Oct 2023 15:40: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 1qtV8m-0006rf-EK; Thu, 19 Oct 2023 15:40:52 +0000
Received: by outflank-mailman (input) for mailman id 619413;
 Thu, 19 Oct 2023 15:40: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=m+UH=GB=desiato.srs.infradead.org=BATV+298c059cf2aa39b7dc34+7361+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qtV8l-0005v1-7C
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 15:40:51 +0000
Received: from desiato.infradead.org (desiato.infradead.org
 [2001:8b0:10b:1:d65d:64ff:fe57:4e05])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id dfd9cd55-6e95-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 17:40:48 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by desiato.infradead.org with esmtpsa (Exim 4.96 #2 (Red Hat Linux))
 id 1qtV8M-009yCp-2Y; Thu, 19 Oct 2023 15:40:27 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1qtV8M-000PuA-0h; Thu, 19 Oct 2023 16:40:26 +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
X-Inumbo-ID: dfd9cd55-6e95-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=desiato.20200630; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=XGo+TUX8HG3CQkOJKg/vere4roLlR78ENGdI8mo7bHg=; b=Xe0CUlsT1QwlebTGsex3QkqzQr
	Yv+UIEQLw0LMSFbgNs46in0W4QNj935tYilwWAmr6LKcmSwMCxAKpQv/Plg58HiyXKMhWLfEC5RQc
	3I9c4to4g1VhDEz8Wl4mTTGma55q1TkYxwxmGmYW4qqdsxwC/z2q180LptYuNctBKwhAdbd2+490l
	wqvnKtuYdhAUrvVm6MvStkaOKty6VA7djznzC3fMoT9v2CnqUI6Ge86ZP/tz/sPlIL0XTGtxzKGrv
	NkOINd7iEWjMboojppIfNFg/nBdVFt6LKQTM6qMqldvNYjanPa39kN7jSJS+8jt3xVddXMKxBs68h
	mi5ODulQ==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>,
	Hanna Reitz <hreitz@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	=?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Richard Henderson <richard.henderson@linaro.org>,
	Eduardo Habkost <eduardo@habkost.net>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Jason Wang <jasowang@redhat.com>,
	Marcelo Tosatti <mtosatti@redhat.com>,
	Cleber Rosa <crosa@redhat.com>,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
	Wainer dos Santos Moschetta <wainersm@redhat.com>,
	Beraldo Leal <bleal@redhat.com>,
	qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org,
	kvm@vger.kernel.org,
	Bernhard Beschow <shentey@gmail.com>,
	Joel Upham <jupham125@gmail.com>
Subject: [PATCH v2 08/24] include: update Xen public headers to Xen 4.17.2 release
Date: Thu, 19 Oct 2023 16:40:04 +0100
Message-Id: <20231019154020.99080-9-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231019154020.99080-1-dwmw2@infradead.org>
References: <20231019154020.99080-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by desiato.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

... in order to advertise the XEN_HVM_CPUID_UPCALL_VECTOR feature,
which will come in a subsequent commit.

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 hw/i386/kvm/xen_xenstore.c                    |  2 +-
 include/hw/xen/interface/arch-arm.h           | 37 +++++++-------
 include/hw/xen/interface/arch-x86/cpuid.h     | 31 +++++-------
 .../hw/xen/interface/arch-x86/xen-x86_32.h    | 19 +------
 .../hw/xen/interface/arch-x86/xen-x86_64.h    | 19 +------
 include/hw/xen/interface/arch-x86/xen.h       | 26 ++--------
 include/hw/xen/interface/event_channel.h      | 19 +------
 include/hw/xen/interface/features.h           | 19 +------
 include/hw/xen/interface/grant_table.h        | 19 +------
 include/hw/xen/interface/hvm/hvm_op.h         | 19 +------
 include/hw/xen/interface/hvm/params.h         | 19 +------
 include/hw/xen/interface/io/blkif.h           | 27 ++++------
 include/hw/xen/interface/io/console.h         | 19 +------
 include/hw/xen/interface/io/fbif.h            | 19 +------
 include/hw/xen/interface/io/kbdif.h           | 19 +------
 include/hw/xen/interface/io/netif.h           | 25 +++-------
 include/hw/xen/interface/io/protocols.h       | 19 +------
 include/hw/xen/interface/io/ring.h            | 49 ++++++++++---------
 include/hw/xen/interface/io/usbif.h           | 19 +------
 include/hw/xen/interface/io/xenbus.h          | 19 +------
 include/hw/xen/interface/io/xs_wire.h         | 36 ++++++--------
 include/hw/xen/interface/memory.h             | 30 +++++-------
 include/hw/xen/interface/physdev.h            | 23 ++-------
 include/hw/xen/interface/sched.h              | 19 +------
 include/hw/xen/interface/trace.h              | 19 +------
 include/hw/xen/interface/vcpu.h               | 19 +------
 include/hw/xen/interface/version.h            | 19 +------
 include/hw/xen/interface/xen-compat.h         | 19 +------
 include/hw/xen/interface/xen.h                | 19 +------
 29 files changed, 124 insertions(+), 523 deletions(-)

diff --git a/hw/i386/kvm/xen_xenstore.c b/hw/i386/kvm/xen_xenstore.c
index 82a215058a..ef8aaa4c42 100644
--- a/hw/i386/kvm/xen_xenstore.c
+++ b/hw/i386/kvm/xen_xenstore.c
@@ -331,7 +331,7 @@ static void xs_error(XenXenstoreState *s, unsigned int id,
     const char *errstr = NULL;
 
     for (unsigned int i = 0; i < ARRAY_SIZE(xsd_errors); i++) {
-        struct xsd_errors *xsd_error = &xsd_errors[i];
+        const struct xsd_errors *xsd_error = &xsd_errors[i];
 
         if (xsd_error->errnum == errnum) {
             errstr = xsd_error->errstring;
diff --git a/include/hw/xen/interface/arch-arm.h b/include/hw/xen/interface/arch-arm.h
index 94b31511dd..1528ced509 100644
--- a/include/hw/xen/interface/arch-arm.h
+++ b/include/hw/xen/interface/arch-arm.h
@@ -1,26 +1,9 @@
+/* SPDX-License-Identifier: MIT */
 /******************************************************************************
  * arch-arm.h
  *
  * Guest OS interface to ARM Xen.
  *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- *
  * Copyright 2011 (C) Citrix Systems
  */
 
@@ -361,6 +344,7 @@ typedef uint64_t xen_callback_t;
 #define PSR_DBG_MASK    (1<<9)        /* arm64: Debug Exception mask */
 #define PSR_IT_MASK     (0x0600fc00)  /* Thumb If-Then Mask */
 #define PSR_JAZELLE     (1<<24)       /* Jazelle Mode */
+#define PSR_Z           (1<<30)       /* Zero condition flag */
 
 /* 32 bit modes */
 #define PSR_MODE_USR 0x10
@@ -383,7 +367,15 @@ typedef uint64_t xen_callback_t;
 #define PSR_MODE_EL1t 0x04
 #define PSR_MODE_EL0t 0x00
 
-#define PSR_GUEST32_INIT  (PSR_ABT_MASK|PSR_FIQ_MASK|PSR_IRQ_MASK|PSR_MODE_SVC)
+/*
+ * We set PSR_Z to be able to boot Linux kernel versions with an invalid
+ * encoding of the first 8 NOP instructions. See commit a92882a4d270 in
+ * Linux.
+ *
+ * Note that PSR_Z is also set by U-Boot and QEMU -kernel when loading
+ * zImage kernels on aarch32.
+ */
+#define PSR_GUEST32_INIT (PSR_Z|PSR_ABT_MASK|PSR_FIQ_MASK|PSR_IRQ_MASK|PSR_MODE_SVC)
 #define PSR_GUEST64_INIT (PSR_ABT_MASK|PSR_FIQ_MASK|PSR_IRQ_MASK|PSR_MODE_EL1h)
 
 #define SCTLR_GUEST_INIT    xen_mk_ullong(0x00c50078)
@@ -398,6 +390,10 @@ typedef uint64_t xen_callback_t;
 
 /* Physical Address Space */
 
+/* Virtio MMIO mappings */
+#define GUEST_VIRTIO_MMIO_BASE   xen_mk_ullong(0x02000000)
+#define GUEST_VIRTIO_MMIO_SIZE   xen_mk_ullong(0x00100000)
+
 /*
  * vGIC mappings: Only one set of mapping is used by the guest.
  * Therefore they can overlap.
@@ -484,6 +480,9 @@ typedef uint64_t xen_callback_t;
 
 #define GUEST_VPL011_SPI        32
 
+#define GUEST_VIRTIO_MMIO_SPI_FIRST   33
+#define GUEST_VIRTIO_MMIO_SPI_LAST    43
+
 /* PSCI functions */
 #define PSCI_cpu_suspend 0
 #define PSCI_cpu_off     1
diff --git a/include/hw/xen/interface/arch-x86/cpuid.h b/include/hw/xen/interface/arch-x86/cpuid.h
index ce46305bee..7ecd16ae05 100644
--- a/include/hw/xen/interface/arch-x86/cpuid.h
+++ b/include/hw/xen/interface/arch-x86/cpuid.h
@@ -1,26 +1,9 @@
+/* SPDX-License-Identifier: MIT */
 /******************************************************************************
  * arch-x86/cpuid.h
  *
  * CPUID interface to Xen.
  *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- *
  * Copyright (c) 2007 Citrix Systems, Inc.
  *
  * Authors:
@@ -102,6 +85,18 @@
 #define XEN_HVM_CPUID_IOMMU_MAPPINGS   (1u << 2)
 #define XEN_HVM_CPUID_VCPU_ID_PRESENT  (1u << 3) /* vcpu id is present in EBX */
 #define XEN_HVM_CPUID_DOMID_PRESENT    (1u << 4) /* domid is present in ECX */
+/*
+ * With interrupt format set to 0 (non-remappable) bits 55:49 from the
+ * IO-APIC RTE and bits 11:5 from the MSI address can be used to store
+ * high bits for the Destination ID. This expands the Destination ID
+ * field from 8 to 15 bits, allowing to target APIC IDs up 32768.
+ */
+#define XEN_HVM_CPUID_EXT_DEST_ID      (1u << 5)
+/*
+ * Per-vCPU event channel upcalls work correctly with physical IRQs
+ * bound to event channels.
+ */
+#define XEN_HVM_CPUID_UPCALL_VECTOR    (1u << 6)
 
 /*
  * Leaf 6 (0x40000x05)
diff --git a/include/hw/xen/interface/arch-x86/xen-x86_32.h b/include/hw/xen/interface/arch-x86/xen-x86_32.h
index 19d7388633..139438e835 100644
--- a/include/hw/xen/interface/arch-x86/xen-x86_32.h
+++ b/include/hw/xen/interface/arch-x86/xen-x86_32.h
@@ -1,26 +1,9 @@
+/* SPDX-License-Identifier: MIT */
 /******************************************************************************
  * xen-x86_32.h
  *
  * Guest OS interface to x86 32-bit Xen.
  *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- *
  * Copyright (c) 2004-2007, K A Fraser
  */
 
diff --git a/include/hw/xen/interface/arch-x86/xen-x86_64.h b/include/hw/xen/interface/arch-x86/xen-x86_64.h
index 40aed14366..5d9035ed22 100644
--- a/include/hw/xen/interface/arch-x86/xen-x86_64.h
+++ b/include/hw/xen/interface/arch-x86/xen-x86_64.h
@@ -1,26 +1,9 @@
+/* SPDX-License-Identifier: MIT */
 /******************************************************************************
  * xen-x86_64.h
  *
  * Guest OS interface to x86 64-bit Xen.
  *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- *
  * Copyright (c) 2004-2006, K A Fraser
  */
 
diff --git a/include/hw/xen/interface/arch-x86/xen.h b/include/hw/xen/interface/arch-x86/xen.h
index 7acd94c8eb..c0f4551247 100644
--- a/include/hw/xen/interface/arch-x86/xen.h
+++ b/include/hw/xen/interface/arch-x86/xen.h
@@ -1,26 +1,9 @@
+/* SPDX-License-Identifier: MIT */
 /******************************************************************************
  * arch-x86/xen.h
  *
  * Guest OS interface to x86 Xen.
  *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- *
  * Copyright (c) 2004-2006, K A Fraser
  */
 
@@ -320,12 +303,9 @@ struct xen_arch_domainconfig {
     uint32_t misc_flags;
 };
 
-/* Location of online VCPU bitmap. */
-#define XEN_ACPI_CPU_MAP             0xaf00
-#define XEN_ACPI_CPU_MAP_LEN         ((HVM_MAX_VCPUS + 7) / 8)
+/* Max  XEN_X86_* constant. Used for ABI checking. */
+#define XEN_X86_MISC_FLAGS_MAX XEN_X86_MSR_RELAXED
 
-/* GPE0 bit set during CPU hotplug */
-#define XEN_ACPI_GPE0_CPUHP_BIT      2
 #endif
 
 /*
diff --git a/include/hw/xen/interface/event_channel.h b/include/hw/xen/interface/event_channel.h
index 73c9f38ce1..0d91a1c4af 100644
--- a/include/hw/xen/interface/event_channel.h
+++ b/include/hw/xen/interface/event_channel.h
@@ -1,26 +1,9 @@
+/* SPDX-License-Identifier: MIT */
 /******************************************************************************
  * event_channel.h
  *
  * Event channels between domains.
  *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- *
  * Copyright (c) 2003-2004, K A Fraser.
  */
 
diff --git a/include/hw/xen/interface/features.h b/include/hw/xen/interface/features.h
index 9ee2f760ef..d2a9175aae 100644
--- a/include/hw/xen/interface/features.h
+++ b/include/hw/xen/interface/features.h
@@ -1,26 +1,9 @@
+/* SPDX-License-Identifier: MIT */
 /******************************************************************************
  * features.h
  *
  * Feature flags, reported by XENVER_get_features.
  *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- *
  * Copyright (c) 2006, Keir Fraser <keir@xensource.com>
  */
 
diff --git a/include/hw/xen/interface/grant_table.h b/include/hw/xen/interface/grant_table.h
index 7934d7b718..1dfa17a6d0 100644
--- a/include/hw/xen/interface/grant_table.h
+++ b/include/hw/xen/interface/grant_table.h
@@ -1,27 +1,10 @@
+/* SPDX-License-Identifier: MIT */
 /******************************************************************************
  * grant_table.h
  *
  * Interface for granting foreign access to page frames, and receiving
  * page-ownership transfers.
  *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- *
  * Copyright (c) 2004, K A Fraser
  */
 
diff --git a/include/hw/xen/interface/hvm/hvm_op.h b/include/hw/xen/interface/hvm/hvm_op.h
index 870ec52060..e22adf0319 100644
--- a/include/hw/xen/interface/hvm/hvm_op.h
+++ b/include/hw/xen/interface/hvm/hvm_op.h
@@ -1,22 +1,5 @@
+/* SPDX-License-Identifier: MIT */
 /*
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- *
  * Copyright (c) 2007, Keir Fraser
  */
 
diff --git a/include/hw/xen/interface/hvm/params.h b/include/hw/xen/interface/hvm/params.h
index c9d6e70d7b..a22b4ed45d 100644
--- a/include/hw/xen/interface/hvm/params.h
+++ b/include/hw/xen/interface/hvm/params.h
@@ -1,22 +1,5 @@
+/* SPDX-License-Identifier: MIT */
 /*
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- *
  * Copyright (c) 2007, Keir Fraser
  */
 
diff --git a/include/hw/xen/interface/io/blkif.h b/include/hw/xen/interface/io/blkif.h
index 4cdba79aba..22f1eef0c0 100644
--- a/include/hw/xen/interface/io/blkif.h
+++ b/include/hw/xen/interface/io/blkif.h
@@ -1,26 +1,9 @@
+/* SPDX-License-Identifier: MIT */
 /******************************************************************************
  * blkif.h
  *
  * Unified block-device I/O interface for Xen guest OSes.
  *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- *
  * Copyright (c) 2003-2004, Keir Fraser
  * Copyright (c) 2012, Spectra Logic Corporation
  */
@@ -363,6 +346,14 @@
  *      that the frontend requires that the logical block size is 512 as it
  *      is hardcoded (which is the case in some frontend implementations).
  *
+ * trusted
+ *      Values:         0/1 (boolean)
+ *      Default value:  1
+ *
+ *      A value of "0" indicates that the frontend should not trust the
+ *      backend, and should deploy whatever measures available to protect from
+ *      a malicious backend on the other end.
+ *
  *------------------------- Virtual Device Properties -------------------------
  *
  * device-type
diff --git a/include/hw/xen/interface/io/console.h b/include/hw/xen/interface/io/console.h
index 4811f47220..4509b4b689 100644
--- a/include/hw/xen/interface/io/console.h
+++ b/include/hw/xen/interface/io/console.h
@@ -1,26 +1,9 @@
+/* SPDX-License-Identifier: MIT */
 /******************************************************************************
  * console.h
  *
  * Console I/O interface for Xen guest OSes.
  *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- *
  * Copyright (c) 2005, Keir Fraser
  */
 
diff --git a/include/hw/xen/interface/io/fbif.h b/include/hw/xen/interface/io/fbif.h
index cc25aab32e..93c73195d8 100644
--- a/include/hw/xen/interface/io/fbif.h
+++ b/include/hw/xen/interface/io/fbif.h
@@ -1,24 +1,7 @@
+/* SPDX-License-Identifier: MIT */
 /*
  * fbif.h -- Xen virtual frame buffer device
  *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- *
  * Copyright (C) 2005 Anthony Liguori <aliguori@us.ibm.com>
  * Copyright (C) 2006 Red Hat, Inc., Markus Armbruster <armbru@redhat.com>
  */
diff --git a/include/hw/xen/interface/io/kbdif.h b/include/hw/xen/interface/io/kbdif.h
index a6b01c52c7..4bde6b3821 100644
--- a/include/hw/xen/interface/io/kbdif.h
+++ b/include/hw/xen/interface/io/kbdif.h
@@ -1,24 +1,7 @@
+/* SPDX-License-Identifier: MIT */
 /*
  * kbdif.h -- Xen virtual keyboard/mouse
  *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- *
  * Copyright (C) 2005 Anthony Liguori <aliguori@us.ibm.com>
  * Copyright (C) 2006 Red Hat, Inc., Markus Armbruster <armbru@redhat.com>
  */
diff --git a/include/hw/xen/interface/io/netif.h b/include/hw/xen/interface/io/netif.h
index 00dd258712..c13b85061d 100644
--- a/include/hw/xen/interface/io/netif.h
+++ b/include/hw/xen/interface/io/netif.h
@@ -1,26 +1,9 @@
+/* SPDX-License-Identifier: MIT */
 /******************************************************************************
  * netif.h
  *
  * Unified network-device I/O interface for Xen guest OSes.
  *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- *
  * Copyright (c) 2003-2004, Keir Fraser
  */
 
@@ -160,6 +143,12 @@
  * be applied if it is set.
  */
 
+/*
+ * The setting of "trusted" node to "0" in the frontend path signals that the
+ * frontend should not trust the backend, and should deploy whatever measures
+ * available to protect from a malicious backend on the other end.
+ */
+
 /*
  * Control ring
  * ============
diff --git a/include/hw/xen/interface/io/protocols.h b/include/hw/xen/interface/io/protocols.h
index 52b4de0f81..7815e1ff0f 100644
--- a/include/hw/xen/interface/io/protocols.h
+++ b/include/hw/xen/interface/io/protocols.h
@@ -1,24 +1,7 @@
+/* SPDX-License-Identifier: MIT */
 /******************************************************************************
  * protocols.h
  *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- *
  * Copyright (c) 2008, Keir Fraser
  */
 
diff --git a/include/hw/xen/interface/io/ring.h b/include/hw/xen/interface/io/ring.h
index c486c457e0..025939278b 100644
--- a/include/hw/xen/interface/io/ring.h
+++ b/include/hw/xen/interface/io/ring.h
@@ -1,26 +1,9 @@
+/* SPDX-License-Identifier: MIT */
 /******************************************************************************
  * ring.h
  *
  * Shared producer-consumer ring macros.
  *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- *
  * Tim Deegan and Andrew Warfield November 2004.
  */
 
@@ -95,9 +78,8 @@ typedef unsigned int RING_IDX;
  * of the shared memory area (PAGE_SIZE, for instance). To initialise
  * the front half:
  *
- *     mytag_front_ring_t front_ring;
- *     SHARED_RING_INIT((mytag_sring_t *)shared_page);
- *     FRONT_RING_INIT(&front_ring, (mytag_sring_t *)shared_page, PAGE_SIZE);
+ *     mytag_front_ring_t ring;
+ *     XEN_FRONT_RING_INIT(&ring, (mytag_sring_t *)shared_page, PAGE_SIZE);
  *
  * Initializing the back follows similarly (note that only the front
  * initializes the shared ring):
@@ -184,6 +166,11 @@ typedef struct __name##_back_ring __name##_back_ring_t
 
 #define FRONT_RING_INIT(_r, _s, __size) FRONT_RING_ATTACH(_r, _s, 0, __size)
 
+#define XEN_FRONT_RING_INIT(r, s, size) do {                            \
+    SHARED_RING_INIT(s);                                                \
+    FRONT_RING_INIT(r, s, size);                                        \
+} while (0)
+
 #define BACK_RING_ATTACH(_r, _s, _i, __size) do {                       \
     (_r)->rsp_prod_pvt = (_i);                                          \
     (_r)->req_cons = (_i);                                              \
@@ -208,11 +195,11 @@ typedef struct __name##_back_ring __name##_back_ring_t
     (RING_FREE_REQUESTS(_r) == 0)
 
 /* Test if there are outstanding messages to be processed on a ring. */
-#define RING_HAS_UNCONSUMED_RESPONSES(_r)                               \
+#define XEN_RING_NR_UNCONSUMED_RESPONSES(_r)                            \
     ((_r)->sring->rsp_prod - (_r)->rsp_cons)
 
 #ifdef __GNUC__
-#define RING_HAS_UNCONSUMED_REQUESTS(_r) ({                             \
+#define XEN_RING_NR_UNCONSUMED_REQUESTS(_r) ({                          \
     unsigned int req = (_r)->sring->req_prod - (_r)->req_cons;          \
     unsigned int rsp = RING_SIZE(_r) -                                  \
         ((_r)->req_cons - (_r)->rsp_prod_pvt);                          \
@@ -220,13 +207,27 @@ typedef struct __name##_back_ring __name##_back_ring_t
 })
 #else
 /* Same as above, but without the nice GCC ({ ... }) syntax. */
-#define RING_HAS_UNCONSUMED_REQUESTS(_r)                                \
+#define XEN_RING_NR_UNCONSUMED_REQUESTS(_r)                             \
     ((((_r)->sring->req_prod - (_r)->req_cons) <                        \
       (RING_SIZE(_r) - ((_r)->req_cons - (_r)->rsp_prod_pvt))) ?        \
      ((_r)->sring->req_prod - (_r)->req_cons) :                         \
      (RING_SIZE(_r) - ((_r)->req_cons - (_r)->rsp_prod_pvt)))
 #endif
 
+#ifdef XEN_RING_HAS_UNCONSUMED_IS_BOOL
+/*
+ * These variants should only be used in case no caller is abusing them for
+ * obtaining the number of unconsumed responses/requests.
+ */
+#define RING_HAS_UNCONSUMED_RESPONSES(_r) \
+    (!!XEN_RING_NR_UNCONSUMED_RESPONSES(_r))
+#define RING_HAS_UNCONSUMED_REQUESTS(_r)  \
+    (!!XEN_RING_NR_UNCONSUMED_REQUESTS(_r))
+#else
+#define RING_HAS_UNCONSUMED_RESPONSES(_r) XEN_RING_NR_UNCONSUMED_RESPONSES(_r)
+#define RING_HAS_UNCONSUMED_REQUESTS(_r)  XEN_RING_NR_UNCONSUMED_REQUESTS(_r)
+#endif
+
 /* Direct access to individual ring elements, by index. */
 #define RING_GET_REQUEST(_r, _idx)                                      \
     (&((_r)->sring->ring[((_idx) & (RING_SIZE(_r) - 1))].req))
diff --git a/include/hw/xen/interface/io/usbif.h b/include/hw/xen/interface/io/usbif.h
index c0a552e195..875af0dc7c 100644
--- a/include/hw/xen/interface/io/usbif.h
+++ b/include/hw/xen/interface/io/usbif.h
@@ -1,3 +1,4 @@
+/* SPDX-License-Identifier: MIT */
 /*
  * usbif.h
  *
@@ -5,24 +6,6 @@
  *
  * Copyright (C) 2009, FUJITSU LABORATORIES LTD.
  * Author: Noboru Iwamatsu <n_iwamatsu@jp.fujitsu.com>
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
  */
 
 #ifndef __XEN_PUBLIC_IO_USBIF_H__
diff --git a/include/hw/xen/interface/io/xenbus.h b/include/hw/xen/interface/io/xenbus.h
index 927f9db552..9cd0cd7c67 100644
--- a/include/hw/xen/interface/io/xenbus.h
+++ b/include/hw/xen/interface/io/xenbus.h
@@ -1,26 +1,9 @@
+/* SPDX-License-Identifier: MIT */
 /*****************************************************************************
  * xenbus.h
  *
  * Xenbus protocol details.
  *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- *
  * Copyright (C) 2005 XenSource Ltd.
  */
 
diff --git a/include/hw/xen/interface/io/xs_wire.h b/include/hw/xen/interface/io/xs_wire.h
index 4dd6632669..04e6849feb 100644
--- a/include/hw/xen/interface/io/xs_wire.h
+++ b/include/hw/xen/interface/io/xs_wire.h
@@ -1,25 +1,8 @@
+/* SPDX-License-Identifier: MIT */
 /*
  * Details of the "wire" protocol between Xen Store Daemon and client
  * library or guest kernel.
  *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- *
  * Copyright (C) 2005 Rusty Russell IBM Corporation
  */
 
@@ -71,11 +54,12 @@ struct xsd_errors
 #ifdef EINVAL
 #define XSD_ERROR(x) { x, #x }
 /* LINTED: static unused */
-static struct xsd_errors xsd_errors[]
+static const struct xsd_errors xsd_errors[]
 #if defined(__GNUC__)
 __attribute__((unused))
 #endif
     = {
+    /* /!\ New errors should be added at the end of the array. */
     XSD_ERROR(EINVAL),
     XSD_ERROR(EACCES),
     XSD_ERROR(EEXIST),
@@ -90,7 +74,8 @@ __attribute__((unused))
     XSD_ERROR(EBUSY),
     XSD_ERROR(EAGAIN),
     XSD_ERROR(EISCONN),
-    XSD_ERROR(E2BIG)
+    XSD_ERROR(E2BIG),
+    XSD_ERROR(EPERM),
 };
 #endif
 
@@ -124,6 +109,7 @@ struct xenstore_domain_interface {
     XENSTORE_RING_IDX rsp_cons, rsp_prod;
     uint32_t server_features; /* Bitmap of features supported by the server */
     uint32_t connection;
+    uint32_t error;
 };
 
 /* Violating this is very bad.  See docs/misc/xenstore.txt. */
@@ -135,10 +121,18 @@ struct xenstore_domain_interface {
 
 /* The ability to reconnect a ring */
 #define XENSTORE_SERVER_FEATURE_RECONNECTION 1
+/* The presence of the "error" field in the ring page */
+#define XENSTORE_SERVER_FEATURE_ERROR        2
 
 /* Valid values for the connection field */
 #define XENSTORE_CONNECTED 0 /* the steady-state */
-#define XENSTORE_RECONNECT 1 /* guest has initiated a reconnect */
+#define XENSTORE_RECONNECT 1 /* reconnect in progress */
+
+/* Valid values for the error field */
+#define XENSTORE_ERROR_NONE    0 /* No error */
+#define XENSTORE_ERROR_COMM    1 /* Communication problem */
+#define XENSTORE_ERROR_RINGIDX 2 /* Invalid ring index */
+#define XENSTORE_ERROR_PROTO   3 /* Protocol violation (payload too long) */
 
 #endif /* _XS_WIRE_H */
 
diff --git a/include/hw/xen/interface/memory.h b/include/hw/xen/interface/memory.h
index 383a9468c3..29cf5c8239 100644
--- a/include/hw/xen/interface/memory.h
+++ b/include/hw/xen/interface/memory.h
@@ -1,26 +1,9 @@
+/* SPDX-License-Identifier: MIT */
 /******************************************************************************
  * memory.h
  *
  * Memory reservation and information.
  *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- *
  * Copyright (c) 2005, Keir Fraser <keir@xensource.com>
  */
 
@@ -541,12 +524,14 @@ struct xen_mem_sharing_op {
                 uint32_t gref;     /* IN: gref to debug         */
             } u;
         } debug;
-        struct mem_sharing_op_fork {      /* OP_FORK */
+        struct mem_sharing_op_fork {      /* OP_FORK{,_RESET} */
             domid_t parent_domain;        /* IN: parent's domain id */
 /* Only makes sense for short-lived forks */
 #define XENMEM_FORK_WITH_IOMMU_ALLOWED (1u << 0)
 /* Only makes sense for short-lived forks */
 #define XENMEM_FORK_BLOCK_INTERRUPTS   (1u << 1)
+#define XENMEM_FORK_RESET_STATE        (1u << 2)
+#define XENMEM_FORK_RESET_MEMORY       (1u << 3)
             uint16_t flags;               /* IN: optional settings */
             uint32_t pad;                 /* Must be set to 0 */
         } fork;
@@ -662,6 +647,13 @@ struct xen_mem_acquire_resource {
      * two calls.
      */
     uint32_t nr_frames;
+    /*
+     * Padding field, must be zero on input.
+     * In a previous version this was an output field with the lowest bit
+     * named XENMEM_rsrc_acq_caller_owned. Future versions of this interface
+     * will not reuse this bit as an output with the field being zero on
+     * input.
+     */
     uint32_t pad;
     /*
      * IN - the index of the initial frame to be mapped. This parameter
diff --git a/include/hw/xen/interface/physdev.h b/include/hw/xen/interface/physdev.h
index d271766ad0..f0c0d4727c 100644
--- a/include/hw/xen/interface/physdev.h
+++ b/include/hw/xen/interface/physdev.h
@@ -1,22 +1,5 @@
+/* SPDX-License-Identifier: MIT */
 /*
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- *
  * Copyright (c) 2006, Keir Fraser
  */
 
@@ -211,8 +194,8 @@ struct physdev_manage_pci_ext {
     /* IN */
     uint8_t bus;
     uint8_t devfn;
-    unsigned is_extfn;
-    unsigned is_virtfn;
+    uint32_t is_extfn;
+    uint32_t is_virtfn;
     struct {
         uint8_t bus;
         uint8_t devfn;
diff --git a/include/hw/xen/interface/sched.h b/include/hw/xen/interface/sched.h
index 811bd87c82..b4362c6a1d 100644
--- a/include/hw/xen/interface/sched.h
+++ b/include/hw/xen/interface/sched.h
@@ -1,26 +1,9 @@
+/* SPDX-License-Identifier: MIT */
 /******************************************************************************
  * sched.h
  *
  * Scheduler state interactions
  *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- *
  * Copyright (c) 2005, Keir Fraser <keir@xensource.com>
  */
 
diff --git a/include/hw/xen/interface/trace.h b/include/hw/xen/interface/trace.h
index d5fa4aea8d..62a179971d 100644
--- a/include/hw/xen/interface/trace.h
+++ b/include/hw/xen/interface/trace.h
@@ -1,24 +1,7 @@
+/* SPDX-License-Identifier: MIT */
 /******************************************************************************
  * include/public/trace.h
  *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- *
  * Mark Williamson, (C) 2004 Intel Research Cambridge
  * Copyright (C) 2005 Bin Ren
  */
diff --git a/include/hw/xen/interface/vcpu.h b/include/hw/xen/interface/vcpu.h
index 3623af932f..81a3b3a743 100644
--- a/include/hw/xen/interface/vcpu.h
+++ b/include/hw/xen/interface/vcpu.h
@@ -1,26 +1,9 @@
+/* SPDX-License-Identifier: MIT */
 /******************************************************************************
  * vcpu.h
  *
  * VCPU initialisation, query, and hotplug.
  *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- *
  * Copyright (c) 2005, Keir Fraser <keir@xensource.com>
  */
 
diff --git a/include/hw/xen/interface/version.h b/include/hw/xen/interface/version.h
index 17a81e23cd..9c78b4f3b6 100644
--- a/include/hw/xen/interface/version.h
+++ b/include/hw/xen/interface/version.h
@@ -1,26 +1,9 @@
+/* SPDX-License-Identifier: MIT */
 /******************************************************************************
  * version.h
  *
  * Xen version, type, and compile information.
  *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- *
  * Copyright (c) 2005, Nguyen Anh Quynh <aquynh@gmail.com>
  * Copyright (c) 2005, Keir Fraser <keir@xensource.com>
  */
diff --git a/include/hw/xen/interface/xen-compat.h b/include/hw/xen/interface/xen-compat.h
index e1c027a95c..97fe698498 100644
--- a/include/hw/xen/interface/xen-compat.h
+++ b/include/hw/xen/interface/xen-compat.h
@@ -1,26 +1,9 @@
+/* SPDX-License-Identifier: MIT */
 /******************************************************************************
  * xen-compat.h
  *
  * Guest OS interface to Xen.  Compatibility layer.
  *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- *
  * Copyright (c) 2006, Christian Limpach
  */
 
diff --git a/include/hw/xen/interface/xen.h b/include/hw/xen/interface/xen.h
index e373592c33..920567e006 100644
--- a/include/hw/xen/interface/xen.h
+++ b/include/hw/xen/interface/xen.h
@@ -1,26 +1,9 @@
+/* SPDX-License-Identifier: MIT */
 /******************************************************************************
  * xen.h
  *
  * Guest OS interface to Xen.
  *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- *
  * Copyright (c) 2004, K A Fraser
  */
 
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Thu Oct 19 15:40:59 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 15:40:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619417.964456 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtV8p-0007RB-67; Thu, 19 Oct 2023 15:40:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619417.964456; Thu, 19 Oct 2023 15:40: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 1qtV8p-0007Q8-0J; Thu, 19 Oct 2023 15:40:55 +0000
Received: by outflank-mailman (input) for mailman id 619417;
 Thu, 19 Oct 2023 15:40: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=b9Lg=GB=casper.srs.infradead.org=BATV+06ae5fa416ae820d9d5a+7361+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qtV8n-0006dc-Jh
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 15:40:53 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id df715722-6e95-11ee-9b0e-b553b5be7939;
 Thu, 19 Oct 2023 17:40:48 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qtV8M-007osp-TI; Thu, 19 Oct 2023 15:40:26 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1qtV8M-000PuO-1b; Thu, 19 Oct 2023 16:40:26 +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
X-Inumbo-ID: df715722-6e95-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=YiCYoQ74dUkz+/Yw6CbN6HlBrhYYc3OdkjhDV5gESs0=; b=GXhFdhy/z+aIbY/iYsIiOAlfI5
	lHmr8No/KBo7JHtk+f4Y7hin/kTcgjMWRdOZvFYaiPCRvW9JKOiEbJBa/P8wl4QqDU2gCaRwdSS/Z
	WZhqK2E7gBhb8a1vtH06wnAQfaf4pE1w4fP7MFv5acAPdeY8Q+fXsUF4WcNSECZTUPJWX+4JW5/KS
	RGx7n0OSqnRnT5uVPuR3dW2fK92QSbwyAvknxlfjqWM/K71GuJB3Ibd2mg/8I8HZ/QAGiUKSsdfVe
	vyvgVC+0zC4A0k/de7T5EB/cUD0DTOrf4IE5ySm0ocl54PZlNBDLeL/KovBRe21dDx3vH+2ACmN9J
	c+qtwl2g==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>,
	Hanna Reitz <hreitz@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	=?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Richard Henderson <richard.henderson@linaro.org>,
	Eduardo Habkost <eduardo@habkost.net>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Jason Wang <jasowang@redhat.com>,
	Marcelo Tosatti <mtosatti@redhat.com>,
	Cleber Rosa <crosa@redhat.com>,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
	Wainer dos Santos Moschetta <wainersm@redhat.com>,
	Beraldo Leal <bleal@redhat.com>,
	qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org,
	kvm@vger.kernel.org,
	Bernhard Beschow <shentey@gmail.com>,
	Joel Upham <jupham125@gmail.com>
Subject: [PATCH v2 11/24] hw/xen: automatically assign device index to block devices
Date: Thu, 19 Oct 2023 16:40:07 +0100
Message-Id: <20231019154020.99080-12-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231019154020.99080-1-dwmw2@infradead.org>
References: <20231019154020.99080-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

There's no need to force the user to assign a vdev. We can automatically
assign one, starting at xvda and searching until we find the first disk
name that's unused.

This means we can now allow '-drive if=xen,file=xxx' to work without an
explicit separate -driver argument, just like if=virtio.

Rip out the legacy handling from the xenpv machine, which was scribbling
over any disks configured by the toolstack, and didn't work with anything
but raw images.

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
Acked-by: Kevin Wolf <kwolf@redhat.com>
---
 blockdev.c                          | 15 +++++++++---
 hw/block/xen-block.c                | 38 +++++++++++++++++++++++++++++
 hw/xen/xen_devconfig.c              | 28 ---------------------
 hw/xenpv/xen_machine_pv.c           |  9 -------
 include/hw/xen/xen-legacy-backend.h |  1 -
 5 files changed, 50 insertions(+), 41 deletions(-)

diff --git a/blockdev.c b/blockdev.c
index a01c62596b..5d9f2e5395 100644
--- a/blockdev.c
+++ b/blockdev.c
@@ -255,13 +255,13 @@ void drive_check_orphaned(void)
          * Ignore default drives, because we create certain default
          * drives unconditionally, then leave them unclaimed.  Not the
          * users fault.
-         * Ignore IF_VIRTIO, because it gets desugared into -device,
-         * so we can leave failing to -device.
+         * Ignore IF_VIRTIO or IF_XEN, because it gets desugared into
+         * -device, so we can leave failing to -device.
          * Ignore IF_NONE, because leaving unclaimed IF_NONE remains
          * available for device_add is a feature.
          */
         if (dinfo->is_default || dinfo->type == IF_VIRTIO
-            || dinfo->type == IF_NONE) {
+            || dinfo->type == IF_XEN || dinfo->type == IF_NONE) {
             continue;
         }
         if (!blk_get_attached_dev(blk)) {
@@ -977,6 +977,15 @@ DriveInfo *drive_new(QemuOpts *all_opts, BlockInterfaceType block_default_type,
         qemu_opt_set(devopts, "driver", "virtio-blk", &error_abort);
         qemu_opt_set(devopts, "drive", qdict_get_str(bs_opts, "id"),
                      &error_abort);
+    } else if (type == IF_XEN) {
+        QemuOpts *devopts;
+        devopts = qemu_opts_create(qemu_find_opts("device"), NULL, 0,
+                                   &error_abort);
+        qemu_opt_set(devopts, "driver",
+                     (media == MEDIA_CDROM) ? "xen-cdrom" : "xen-disk",
+                     &error_abort);
+        qemu_opt_set(devopts, "drive", qdict_get_str(bs_opts, "id"),
+                     &error_abort);
     }
 
     filename = qemu_opt_get(legacy_opts, "file");
diff --git a/hw/block/xen-block.c b/hw/block/xen-block.c
index a07cd7eb5d..f490b24ec8 100644
--- a/hw/block/xen-block.c
+++ b/hw/block/xen-block.c
@@ -27,6 +27,7 @@
 #include "sysemu/block-backend.h"
 #include "sysemu/iothread.h"
 #include "dataplane/xen-block.h"
+#include "hw/xen/interface/io/xs_wire.h"
 #include "trace.h"
 
 static char *xen_block_get_name(XenDevice *xendev, Error **errp)
@@ -34,6 +35,43 @@ static char *xen_block_get_name(XenDevice *xendev, Error **errp)
     XenBlockDevice *blockdev = XEN_BLOCK_DEVICE(xendev);
     XenBlockVdev *vdev = &blockdev->props.vdev;
 
+    if (blockdev->props.vdev.type == XEN_BLOCK_VDEV_TYPE_INVALID) {
+        XenBus *xenbus = XEN_BUS(qdev_get_parent_bus(DEVICE(xendev)));
+        char fe_path[XENSTORE_ABS_PATH_MAX + 1];
+        char *value;
+        int disk = 0;
+        unsigned long idx;
+
+        /* Find an unoccupied device name */
+        while (disk < (1 << 20)) {
+            if (disk < (1 << 4)) {
+                idx = (202 << 8) | (disk << 4);
+            } else {
+                idx = (1 << 28) | (disk << 8);
+            }
+            snprintf(fe_path, sizeof(fe_path),
+                     "/local/domain/%u/device/vbd/%lu",
+                     xendev->frontend_id, idx);
+            value = qemu_xen_xs_read(xenbus->xsh, XBT_NULL, fe_path, NULL);
+            if (!value) {
+                if (errno == ENOENT) {
+                    vdev->type = XEN_BLOCK_VDEV_TYPE_XVD;
+                    vdev->partition = 0;
+                    vdev->disk = disk;
+                    vdev->number = idx;
+                    goto found;
+                }
+                error_setg(errp, "cannot read %s: %s", fe_path,
+                           strerror(errno));
+                return NULL;
+            }
+            free(value);
+            disk++;
+        }
+        error_setg(errp, "cannot find device vdev for block device");
+        return NULL;
+    }
+ found:
     return g_strdup_printf("%lu", vdev->number);
 }
 
diff --git a/hw/xen/xen_devconfig.c b/hw/xen/xen_devconfig.c
index 9b7304e544..3f77c675c6 100644
--- a/hw/xen/xen_devconfig.c
+++ b/hw/xen/xen_devconfig.c
@@ -46,34 +46,6 @@ static int xen_config_dev_all(char *fe, char *be)
 
 /* ------------------------------------------------------------- */
 
-int xen_config_dev_blk(DriveInfo *disk)
-{
-    char fe[256], be[256], device_name[32];
-    int vdev = 202 * 256 + 16 * disk->unit;
-    int cdrom = disk->media_cd;
-    const char *devtype = cdrom ? "cdrom" : "disk";
-    const char *mode    = cdrom ? "r"     : "w";
-    const char *filename = qemu_opt_get(disk->opts, "file");
-
-    snprintf(device_name, sizeof(device_name), "xvd%c", 'a' + disk->unit);
-    xen_pv_printf(NULL, 1, "config disk %d [%s]: %s\n",
-                  disk->unit, device_name, filename);
-    xen_config_dev_dirs("vbd", "qdisk", vdev, fe, be, sizeof(fe));
-
-    /* frontend */
-    xenstore_write_int(fe, "virtual-device",  vdev);
-    xenstore_write_str(fe, "device-type",     devtype);
-
-    /* backend */
-    xenstore_write_str(be, "dev",             device_name);
-    xenstore_write_str(be, "type",            "file");
-    xenstore_write_str(be, "params",          filename);
-    xenstore_write_str(be, "mode",            mode);
-
-    /* common stuff */
-    return xen_config_dev_all(fe, be);
-}
-
 int xen_config_dev_nic(NICInfo *nic)
 {
     char fe[256], be[256];
diff --git a/hw/xenpv/xen_machine_pv.c b/hw/xenpv/xen_machine_pv.c
index 17cda5ec13..1533f5dfb4 100644
--- a/hw/xenpv/xen_machine_pv.c
+++ b/hw/xenpv/xen_machine_pv.c
@@ -32,7 +32,6 @@
 
 static void xen_init_pv(MachineState *machine)
 {
-    DriveInfo *dinfo;
     int i;
 
     setup_xen_backend_ops();
@@ -64,14 +63,6 @@ static void xen_init_pv(MachineState *machine)
         vga_interface_created = true;
     }
 
-    /* configure disks */
-    for (i = 0; i < 16; i++) {
-        dinfo = drive_get(IF_XEN, 0, i);
-        if (!dinfo)
-            continue;
-        xen_config_dev_blk(dinfo);
-    }
-
     /* configure nics */
     for (i = 0; i < nb_nics; i++) {
         if (!nd_table[i].model || 0 != strcmp(nd_table[i].model, "xen"))
diff --git a/include/hw/xen/xen-legacy-backend.h b/include/hw/xen/xen-legacy-backend.h
index 6c307c5f2c..fc42146bc2 100644
--- a/include/hw/xen/xen-legacy-backend.h
+++ b/include/hw/xen/xen-legacy-backend.h
@@ -81,7 +81,6 @@ extern struct XenDevOps xen_usb_ops;          /* xen-usb.c         */
 
 /* configuration (aka xenbus setup) */
 void xen_config_cleanup(void);
-int xen_config_dev_blk(DriveInfo *disk);
 int xen_config_dev_nic(NICInfo *nic);
 int xen_config_dev_vfb(int vdev, const char *type);
 int xen_config_dev_vkbd(int vdev);
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Thu Oct 19 15:40:59 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 15:40:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619415.964445 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtV8o-0007CU-CA; Thu, 19 Oct 2023 15:40:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619415.964445; Thu, 19 Oct 2023 15:40: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 1qtV8o-0007Bb-5L; Thu, 19 Oct 2023 15:40:54 +0000
Received: by outflank-mailman (input) for mailman id 619415;
 Thu, 19 Oct 2023 15:40: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=b9Lg=GB=casper.srs.infradead.org=BATV+06ae5fa416ae820d9d5a+7361+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qtV8n-0005v1-7M
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 15:40:53 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id e12af5ed-6e95-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 17:40:50 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qtV8N-007ost-6Z; Thu, 19 Oct 2023 15:40:27 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1qtV8M-000Puj-2e; Thu, 19 Oct 2023 16:40:26 +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
X-Inumbo-ID: e12af5ed-6e95-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=bY7G6BllzrJN3vFK/Y7G+K3RXXQYNifA9f7cWw91v+w=; b=MWiT9XbJDhi9ujm0tGvm22upP7
	te/lmQ/hmveZzn0ycVjWqixFGMKT6/5fU6uvVcMql6gSfMbgWZLlU7jwp9ryFUBA7uH56p+hVjjco
	0AZoYkc+YKjxkHCN455FCa166iJ2BrpMdVUOsH/51ZvwultlVsVlL27jQtCS6+ycQutWfSv92YIn8
	7ztLveVVi78j4kpc/qu9EyXLlAdscdGLg+mFl9+MTP4eKRjsKTd0Wr4JMvc3B3VT382bsQWkXT3pd
	P8bP7vqrqozgMjgfKrnxvHZI95genVjq6SQ4008ksTv9EPtTYLWgSGCSZ6RMS3gPObuzgRGF6D9zW
	4qnfXlBg==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>,
	Hanna Reitz <hreitz@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	=?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Richard Henderson <richard.henderson@linaro.org>,
	Eduardo Habkost <eduardo@habkost.net>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Jason Wang <jasowang@redhat.com>,
	Marcelo Tosatti <mtosatti@redhat.com>,
	Cleber Rosa <crosa@redhat.com>,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
	Wainer dos Santos Moschetta <wainersm@redhat.com>,
	Beraldo Leal <bleal@redhat.com>,
	qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org,
	kvm@vger.kernel.org,
	Bernhard Beschow <shentey@gmail.com>,
	Joel Upham <jupham125@gmail.com>
Subject: [PATCH v2 16/24] hw/xen: handle soft reset for primary console
Date: Thu, 19 Oct 2023 16:40:12 +0100
Message-Id: <20231019154020.99080-17-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231019154020.99080-1-dwmw2@infradead.org>
References: <20231019154020.99080-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

On soft reset, the prinary console event channel needs to be rebound to
the backend port (in the xen-console driver). We could put that into the
xen-console driver itself, but it's slightly less ugly to keep it within
the KVM/Xen code, by stashing the backend port# on event channel reset
and then rebinding in the primary console reset when it has to recreate
the guest port anyway.

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 hw/i386/kvm/xen_evtchn.c          |  9 +++++++++
 hw/i386/kvm/xen_primary_console.c | 29 ++++++++++++++++++++++++++++-
 hw/i386/kvm/xen_primary_console.h |  1 +
 3 files changed, 38 insertions(+), 1 deletion(-)

diff --git a/hw/i386/kvm/xen_evtchn.c b/hw/i386/kvm/xen_evtchn.c
index d72dca6591..ce4da6d37a 100644
--- a/hw/i386/kvm/xen_evtchn.c
+++ b/hw/i386/kvm/xen_evtchn.c
@@ -40,6 +40,7 @@
 #include "xen_evtchn.h"
 #include "xen_overlay.h"
 #include "xen_xenstore.h"
+#include "xen_primary_console.h"
 
 #include "sysemu/kvm.h"
 #include "sysemu/kvm_xen.h"
@@ -1098,6 +1099,7 @@ int xen_evtchn_soft_reset(void)
 {
     XenEvtchnState *s = xen_evtchn_singleton;
     bool flush_kvm_routes;
+    uint16_t con_port = xen_primary_console_get_port();
     int i;
 
     if (!s) {
@@ -1108,6 +1110,13 @@ int xen_evtchn_soft_reset(void)
 
     qemu_mutex_lock(&s->port_lock);
 
+    if (con_port) {
+        XenEvtchnPort *p = &s->port_table[con_port];
+        if (p->type == EVTCHNSTAT_interdomain) {
+            xen_primary_console_set_be_port(p->u.interdomain.port);
+        }
+    }
+
     for (i = 0; i < s->nr_ports; i++) {
         close_port(s, i, &flush_kvm_routes);
     }
diff --git a/hw/i386/kvm/xen_primary_console.c b/hw/i386/kvm/xen_primary_console.c
index 0aa1c16ad6..5e6e085ac7 100644
--- a/hw/i386/kvm/xen_primary_console.c
+++ b/hw/i386/kvm/xen_primary_console.c
@@ -112,6 +112,15 @@ uint16_t xen_primary_console_get_port(void)
     return s->guest_port;
 }
 
+void xen_primary_console_set_be_port(uint16_t port)
+{
+    XenPrimaryConsoleState *s = xen_primary_console_singleton;
+    if (s) {
+        printf("be port set to %d\n", port);
+        s->be_port = port;
+    }
+}
+
 uint64_t xen_primary_console_get_pfn(void)
 {
     XenPrimaryConsoleState *s = xen_primary_console_singleton;
@@ -142,6 +151,20 @@ static void alloc_guest_port(XenPrimaryConsoleState *s)
     }
 }
 
+static void rebind_guest_port(XenPrimaryConsoleState *s)
+{
+    struct evtchn_bind_interdomain inter = {
+        .remote_dom = DOMID_QEMU,
+        .remote_port = s->be_port,
+    };
+
+    if (!xen_evtchn_bind_interdomain_op(&inter)) {
+        s->guest_port = inter.local_port;
+    }
+
+    s->be_port = 0;
+}
+
 int xen_primary_console_reset(void)
 {
     XenPrimaryConsoleState *s = xen_primary_console_singleton;
@@ -154,7 +177,11 @@ int xen_primary_console_reset(void)
         xen_overlay_do_map_page(&s->console_page, gpa);
     }
 
-    alloc_guest_port(s);
+    if (s->be_port) {
+        rebind_guest_port(s);
+    } else {
+        alloc_guest_port(s);
+    }
 
     trace_xen_primary_console_reset(s->guest_port);
 
diff --git a/hw/i386/kvm/xen_primary_console.h b/hw/i386/kvm/xen_primary_console.h
index dd4922f3f4..7e2989ea0d 100644
--- a/hw/i386/kvm/xen_primary_console.h
+++ b/hw/i386/kvm/xen_primary_console.h
@@ -16,6 +16,7 @@ void xen_primary_console_create(void);
 int xen_primary_console_reset(void);
 
 uint16_t xen_primary_console_get_port(void);
+void xen_primary_console_set_be_port(uint16_t port);
 uint64_t xen_primary_console_get_pfn(void);
 void *xen_primary_console_get_map(void);
 
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Thu Oct 19 15:41:00 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 15:41:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619422.964502 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtV8t-0000Di-JE; Thu, 19 Oct 2023 15:40:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619422.964502; Thu, 19 Oct 2023 15:40: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 1qtV8s-00009i-Ta; Thu, 19 Oct 2023 15:40:58 +0000
Received: by outflank-mailman (input) for mailman id 619422;
 Thu, 19 Oct 2023 15:40: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=m+UH=GB=desiato.srs.infradead.org=BATV+298c059cf2aa39b7dc34+7361+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qtV8p-0006dc-Rr
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 15:40:55 +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 e1898a59-6e95-11ee-9b0e-b553b5be7939;
 Thu, 19 Oct 2023 17:40:51 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by desiato.infradead.org with esmtpsa (Exim 4.96 #2 (Red Hat Linux))
 id 1qtV8O-009yCu-0Q; Thu, 19 Oct 2023 15:40:28 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1qtV8M-000Pur-39; Thu, 19 Oct 2023 16:40:26 +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
X-Inumbo-ID: e1898a59-6e95-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=desiato.20200630; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=MBQc9snncSE2SGAFzCkA4MXIHKXNBdfUi4wKrq7w/1Q=; b=ftO+b8ElisYoMpG6zh4oL72AfJ
	Ii6zdS2m5gCiLsTfzkWuceDvvAtF6ydm4VmZwsvnD9u6WC/l3M5bS8tBmYXwqyy5ik/WGknx4wUMq
	zTrGu1K4y7WdpY9FH/Yah0O4ZKN8sGhFl96X+8Vo9gN+FBAtWHBw+oNgsuZ9Kmfxq6ZZtmPDSFN/x
	0sp0dLKiKHxPJIWsXiR8Fn+p8oiyWGRHQOAUf0Bamp01RBJ2FPpB00o227cpACs7VAYQ/AdK6sr0I
	uytX2giVHMItlD5wlxHiC7L1Ajrb8aEV9+gENuG9w84JwBi4B7zekZsrIAYll/rPzp6XajxnH9iOU
	+tu/QtAw==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>,
	Hanna Reitz <hreitz@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	=?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Richard Henderson <richard.henderson@linaro.org>,
	Eduardo Habkost <eduardo@habkost.net>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Jason Wang <jasowang@redhat.com>,
	Marcelo Tosatti <mtosatti@redhat.com>,
	Cleber Rosa <crosa@redhat.com>,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
	Wainer dos Santos Moschetta <wainersm@redhat.com>,
	Beraldo Leal <bleal@redhat.com>,
	qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org,
	kvm@vger.kernel.org,
	Bernhard Beschow <shentey@gmail.com>,
	Joel Upham <jupham125@gmail.com>
Subject: [PATCH v2 18/24] hw/xen: update Xen PV NIC to XenDevice model
Date: Thu, 19 Oct 2023 16:40:14 +0100
Message-Id: <20231019154020.99080-19-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231019154020.99080-1-dwmw2@infradead.org>
References: <20231019154020.99080-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by desiato.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

This allows us to use Xen PV networking with emulated Xen guests, and to
add them on the command line or hotplug.

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 hw/net/meson.build        |   2 +-
 hw/net/trace-events       |  11 +
 hw/net/xen_nic.c          | 471 ++++++++++++++++++++++++++++----------
 hw/xenpv/xen_machine_pv.c |   1 -
 4 files changed, 368 insertions(+), 117 deletions(-)

diff --git a/hw/net/meson.build b/hw/net/meson.build
index 2632634df3..f64651c467 100644
--- a/hw/net/meson.build
+++ b/hw/net/meson.build
@@ -1,5 +1,5 @@
 system_ss.add(when: 'CONFIG_DP8393X', if_true: files('dp8393x.c'))
-system_ss.add(when: 'CONFIG_XEN', if_true: files('xen_nic.c'))
+system_ss.add(when: 'CONFIG_XEN_BUS', if_true: files('xen_nic.c'))
 system_ss.add(when: 'CONFIG_NE2000_COMMON', if_true: files('ne2000.c'))
 
 # PCI network cards
diff --git a/hw/net/trace-events b/hw/net/trace-events
index 3abfd65e5b..3097742cc0 100644
--- a/hw/net/trace-events
+++ b/hw/net/trace-events
@@ -482,3 +482,14 @@ dp8393x_receive_oversize(int size) "oversize packet, pkt_size is %d"
 dp8393x_receive_not_netcard(void) "packet not for netcard"
 dp8393x_receive_packet(int crba) "Receive packet at 0x%"PRIx32
 dp8393x_receive_write_status(int crba) "Write status at 0x%"PRIx32
+
+# xen_nic.c
+xen_netdev_realize(int dev, const char *info, const char *peer) "vif%u info '%s' peer '%s'"
+xen_netdev_unrealize(int dev) "vif%u"
+xen_netdev_create(int dev) "vif%u"
+xen_netdev_destroy(int dev) "vif%u"
+xen_netdev_disconnect(int dev) "vif%u"
+xen_netdev_connect(int dev, unsigned int tx, unsigned int rx, int port) "vif%u tx %u rx %u port %u"
+xen_netdev_frontend_changed(const char *dev, int state) "vif%s state %d"
+xen_netdev_tx(int dev, int ref, int off, int len, unsigned int flags, const char *c, const char *d, const char *m, const char *e) "vif%u ref %u off %u len %u flags 0x%x%s%s%s%s"
+xen_netdev_rx(int dev, int idx, int status, int flags) "vif%u idx %d status %d flags 0x%x"
diff --git a/hw/net/xen_nic.c b/hw/net/xen_nic.c
index 9bbf6599fc..d4d13a7c51 100644
--- a/hw/net/xen_nic.c
+++ b/hw/net/xen_nic.c
@@ -20,6 +20,12 @@
  */
 
 #include "qemu/osdep.h"
+#include "qemu/cutils.h"
+#include "qemu/log.h"
+#include "qemu/qemu-print.h"
+#include "qapi/qmp/qdict.h"
+#include "qapi/error.h"
+
 #include <sys/socket.h>
 #include <sys/ioctl.h>
 #include <sys/wait.h>
@@ -27,18 +33,26 @@
 #include "net/net.h"
 #include "net/checksum.h"
 #include "net/util.h"
-#include "hw/xen/xen-legacy-backend.h"
+
+#include "hw/xen/xen-backend.h"
+#include "hw/xen/xen-bus-helper.h"
+#include "hw/qdev-properties.h"
+#include "hw/qdev-properties-system.h"
 
 #include "hw/xen/interface/io/netif.h"
+#include "hw/xen/interface/io/xs_wire.h"
+
+#include "trace.h"
 
 /* ------------------------------------------------------------- */
 
 struct XenNetDev {
-    struct XenLegacyDevice      xendev;  /* must be first */
-    char                  *mac;
+    struct XenDevice      xendev;  /* must be first */
+    XenEventChannel       *event_channel;
+    int                   dev;
     int                   tx_work;
-    int                   tx_ring_ref;
-    int                   rx_ring_ref;
+    unsigned int          tx_ring_ref;
+    unsigned int          rx_ring_ref;
     struct netif_tx_sring *txs;
     struct netif_rx_sring *rxs;
     netif_tx_back_ring_t  tx_ring;
@@ -47,6 +61,11 @@ struct XenNetDev {
     NICState              *nic;
 };
 
+typedef struct XenNetDev XenNetDev;
+
+#define TYPE_XEN_NET_DEVICE "xen-net-device"
+OBJECT_DECLARE_SIMPLE_TYPE(XenNetDev, XEN_NET_DEVICE)
+
 /* ------------------------------------------------------------- */
 
 static void net_tx_response(struct XenNetDev *netdev, netif_tx_request_t *txp, int8_t st)
@@ -68,7 +87,8 @@ static void net_tx_response(struct XenNetDev *netdev, netif_tx_request_t *txp, i
     netdev->tx_ring.rsp_prod_pvt = ++i;
     RING_PUSH_RESPONSES_AND_CHECK_NOTIFY(&netdev->tx_ring, notify);
     if (notify) {
-        xen_pv_send_notify(&netdev->xendev);
+        xen_device_notify_event_channel(XEN_DEVICE(netdev),
+                                        netdev->event_channel, NULL);
     }
 
     if (i == netdev->tx_ring.req_cons) {
@@ -104,8 +124,9 @@ static void net_tx_error(struct XenNetDev *netdev, netif_tx_request_t *txp, RING
 #endif
 }
 
-static void net_tx_packets(struct XenNetDev *netdev)
+static bool net_tx_packets(struct XenNetDev *netdev)
 {
+    bool done_something = false;
     netif_tx_request_t txreq;
     RING_IDX rc, rp;
     void *page;
@@ -122,49 +143,52 @@ static void net_tx_packets(struct XenNetDev *netdev)
             }
             memcpy(&txreq, RING_GET_REQUEST(&netdev->tx_ring, rc), sizeof(txreq));
             netdev->tx_ring.req_cons = ++rc;
+            done_something = true;
 
 #if 1
             /* should not happen in theory, we don't announce the *
              * feature-{sg,gso,whatelse} flags in xenstore (yet?) */
             if (txreq.flags & NETTXF_extra_info) {
-                xen_pv_printf(&netdev->xendev, 0, "FIXME: extra info flag\n");
+                qemu_log_mask(LOG_UNIMP, "vif%u: FIXME: extra info flag\n",
+                              netdev->dev);
                 net_tx_error(netdev, &txreq, rc);
                 continue;
             }
             if (txreq.flags & NETTXF_more_data) {
-                xen_pv_printf(&netdev->xendev, 0, "FIXME: more data flag\n");
+                qemu_log_mask(LOG_UNIMP, "vif%u: FIXME: more data flag\n",
+                              netdev->dev);
                 net_tx_error(netdev, &txreq, rc);
                 continue;
             }
 #endif
 
             if (txreq.size < 14) {
-                xen_pv_printf(&netdev->xendev, 0, "bad packet size: %d\n",
-                              txreq.size);
+                qemu_log_mask(LOG_GUEST_ERROR, "vif%u: bad packet size: %d\n",
+                              netdev->dev, txreq.size);
                 net_tx_error(netdev, &txreq, rc);
                 continue;
             }
 
             if ((txreq.offset + txreq.size) > XEN_PAGE_SIZE) {
-                xen_pv_printf(&netdev->xendev, 0, "error: page crossing\n");
+                qemu_log_mask(LOG_GUEST_ERROR, "vif%u: error: page crossing\n",
+                              netdev->dev);
                 net_tx_error(netdev, &txreq, rc);
                 continue;
             }
 
-            xen_pv_printf(&netdev->xendev, 3,
-                          "tx packet ref %d, off %d, len %d, flags 0x%x%s%s%s%s\n",
-                          txreq.gref, txreq.offset, txreq.size, txreq.flags,
-                          (txreq.flags & NETTXF_csum_blank)     ? " csum_blank"     : "",
-                          (txreq.flags & NETTXF_data_validated) ? " data_validated" : "",
-                          (txreq.flags & NETTXF_more_data)      ? " more_data"      : "",
-                          (txreq.flags & NETTXF_extra_info)     ? " extra_info"     : "");
+            trace_xen_netdev_tx(netdev->dev, txreq.gref, txreq.offset,
+                                txreq.size, txreq.flags,
+                                (txreq.flags & NETTXF_csum_blank)     ? " csum_blank"     : "",
+                                (txreq.flags & NETTXF_data_validated) ? " data_validated" : "",
+                                (txreq.flags & NETTXF_more_data)      ? " more_data"      : "",
+                                (txreq.flags & NETTXF_extra_info)     ? " extra_info"     : "");
 
-            page = xen_be_map_grant_ref(&netdev->xendev, txreq.gref,
-                                        PROT_READ);
+            page = xen_device_map_grant_refs(&netdev->xendev, &txreq.gref, 1,
+                                             PROT_READ, NULL);
             if (page == NULL) {
-                xen_pv_printf(&netdev->xendev, 0,
-                              "error: tx gref dereference failed (%d)\n",
-                             txreq.gref);
+                qemu_log_mask(LOG_GUEST_ERROR,
+                              "vif%u: tx gref dereference failed (%d)\n",
+                              netdev->dev, txreq.gref);
                 net_tx_error(netdev, &txreq, rc);
                 continue;
             }
@@ -181,7 +205,8 @@ static void net_tx_packets(struct XenNetDev *netdev)
                 qemu_send_packet(qemu_get_queue(netdev->nic),
                                  page + txreq.offset, txreq.size);
             }
-            xen_be_unmap_grant_ref(&netdev->xendev, page, txreq.gref);
+            xen_device_unmap_grant_refs(&netdev->xendev, page, &txreq.gref, 1,
+                                        NULL);
             net_tx_response(netdev, &txreq, NETIF_RSP_OKAY);
         }
         if (!netdev->tx_work) {
@@ -190,6 +215,7 @@ static void net_tx_packets(struct XenNetDev *netdev)
         netdev->tx_work = 0;
     }
     g_free(tmpbuf);
+    return done_something;
 }
 
 /* ------------------------------------------------------------- */
@@ -212,14 +238,13 @@ static void net_rx_response(struct XenNetDev *netdev,
         resp->status = (int16_t)st;
     }
 
-    xen_pv_printf(&netdev->xendev, 3,
-                  "rx response: idx %d, status %d, flags 0x%x\n",
-                  i, resp->status, resp->flags);
+    trace_xen_netdev_rx(netdev->dev, i, resp->status, resp->flags);
 
     netdev->rx_ring.rsp_prod_pvt = ++i;
     RING_PUSH_RESPONSES_AND_CHECK_NOTIFY(&netdev->rx_ring, notify);
     if (notify) {
-        xen_pv_send_notify(&netdev->xendev);
+        xen_device_notify_event_channel(XEN_DEVICE(netdev),
+                                        netdev->event_channel, NULL);
     }
 }
 
@@ -232,7 +257,7 @@ static ssize_t net_rx_packet(NetClientState *nc, const uint8_t *buf, size_t size
     RING_IDX rc, rp;
     void *page;
 
-    if (netdev->xendev.be_state != XenbusStateConnected) {
+    if (netdev->rx_ring.sring == NULL) {
         return -1;
     }
 
@@ -244,24 +269,26 @@ static ssize_t net_rx_packet(NetClientState *nc, const uint8_t *buf, size_t size
         return 0;
     }
     if (size > XEN_PAGE_SIZE - NET_IP_ALIGN) {
-        xen_pv_printf(&netdev->xendev, 0, "packet too big (%lu > %ld)",
-                      (unsigned long)size, XEN_PAGE_SIZE - NET_IP_ALIGN);
+        qemu_log_mask(LOG_GUEST_ERROR, "vif%u: packet too big (%lu > %ld)",
+                      netdev->dev, (unsigned long)size,
+                      XEN_PAGE_SIZE - NET_IP_ALIGN);
         return -1;
     }
 
     memcpy(&rxreq, RING_GET_REQUEST(&netdev->rx_ring, rc), sizeof(rxreq));
     netdev->rx_ring.req_cons = ++rc;
 
-    page = xen_be_map_grant_ref(&netdev->xendev, rxreq.gref, PROT_WRITE);
+    page = xen_device_map_grant_refs(&netdev->xendev, &rxreq.gref, 1,
+                                     PROT_WRITE, NULL);
     if (page == NULL) {
-        xen_pv_printf(&netdev->xendev, 0,
-                      "error: rx gref dereference failed (%d)\n",
-                      rxreq.gref);
+        qemu_log_mask(LOG_GUEST_ERROR,
+                      "vif%u: rx gref dereference failed (%d)\n",
+                      netdev->dev, rxreq.gref);
         net_rx_response(netdev, &rxreq, NETIF_RSP_ERROR, 0, 0, 0);
         return -1;
     }
     memcpy(page + NET_IP_ALIGN, buf, size);
-    xen_be_unmap_grant_ref(&netdev->xendev, page, rxreq.gref);
+    xen_device_unmap_grant_refs(&netdev->xendev, page, &rxreq.gref, 1, NULL);
     net_rx_response(netdev, &rxreq, NETIF_RSP_OKAY, NET_IP_ALIGN, size, 0);
 
     return size;
@@ -275,139 +302,353 @@ static NetClientInfo net_xen_info = {
     .receive = net_rx_packet,
 };
 
-static int net_init(struct XenLegacyDevice *xendev)
+static void xen_netdev_realize(XenDevice *xendev, Error **errp)
 {
-    struct XenNetDev *netdev = container_of(xendev, struct XenNetDev, xendev);
-
-    /* read xenstore entries */
-    if (netdev->mac == NULL) {
-        netdev->mac = xenstore_read_be_str(&netdev->xendev, "mac");
-    }
+    ERRP_GUARD();
+    XenNetDev *netdev = XEN_NET_DEVICE(xendev);
+    NetClientState *nc;
 
-    /* do we have all we need? */
-    if (netdev->mac == NULL) {
-        return -1;
-    }
+    qemu_macaddr_default_if_unset(&netdev->conf.macaddr);
 
-    if (net_parse_macaddr(netdev->conf.macaddr.a, netdev->mac) < 0) {
-        return -1;
-    }
+    xen_device_frontend_printf(xendev, "mac", "%02x:%02x:%02x:%02x:%02x:%02x",
+                               netdev->conf.macaddr.a[0],
+                               netdev->conf.macaddr.a[1],
+                               netdev->conf.macaddr.a[2],
+                               netdev->conf.macaddr.a[3],
+                               netdev->conf.macaddr.a[4],
+                               netdev->conf.macaddr.a[5]);
 
     netdev->nic = qemu_new_nic(&net_xen_info, &netdev->conf,
-                               "xen", NULL, netdev);
+                               object_get_typename(OBJECT(xendev)),
+                               DEVICE(xendev)->id, netdev);
 
-    qemu_set_info_str(qemu_get_queue(netdev->nic),
-                      "nic: xenbus vif macaddr=%s", netdev->mac);
+    nc = qemu_get_queue(netdev->nic);
+    qemu_format_nic_info_str(nc, netdev->conf.macaddr.a);
 
     /* fill info */
-    xenstore_write_be_int(&netdev->xendev, "feature-rx-copy", 1);
-    xenstore_write_be_int(&netdev->xendev, "feature-rx-flip", 0);
+    xen_device_backend_printf(xendev, "feature-rx-copy", "%u", 1);
+    xen_device_backend_printf(xendev, "feature-rx-flip", "%u", 0);
 
-    return 0;
+    trace_xen_netdev_realize(netdev->dev, nc->info_str, nc->peer ?
+                             nc->peer->name : "(none)");
 }
 
-static int net_connect(struct XenLegacyDevice *xendev)
+static bool net_event(void *_xendev)
 {
-    struct XenNetDev *netdev = container_of(xendev, struct XenNetDev, xendev);
-    int rx_copy;
+    XenNetDev *netdev = XEN_NET_DEVICE(_xendev);
+    bool done_something;
 
-    if (xenstore_read_fe_int(&netdev->xendev, "tx-ring-ref",
-                             &netdev->tx_ring_ref) == -1) {
-        return -1;
+    done_something = net_tx_packets(netdev);
+    qemu_flush_queued_packets(qemu_get_queue(netdev->nic));
+    return done_something;
+}
+
+static bool xen_netdev_connect(XenDevice *xendev, Error **errp)
+{
+    XenNetDev *netdev = XEN_NET_DEVICE(xendev);
+    unsigned int port, rx_copy;
+
+    if (xen_device_frontend_scanf(xendev, "tx-ring-ref", "%u",
+                                  &netdev->tx_ring_ref) != 1) {
+        error_setg(errp, "failed to read tx-ring-ref");
+        return false;
     }
-    if (xenstore_read_fe_int(&netdev->xendev, "rx-ring-ref",
-                             &netdev->rx_ring_ref) == -1) {
-        return 1;
+
+    if (xen_device_frontend_scanf(xendev, "rx-ring-ref", "%u",
+                                  &netdev->rx_ring_ref) != 1) {
+        error_setg(errp, "failed to read rx-ring-ref");
+        return false;
     }
-    if (xenstore_read_fe_int(&netdev->xendev, "event-channel",
-                             &netdev->xendev.remote_port) == -1) {
-        return -1;
+
+    if (xen_device_frontend_scanf(xendev, "event-channel", "%u",
+                                  &port) != 1) {
+        error_setg(errp, "failed to read event-channel");
+        return false;
     }
 
-    if (xenstore_read_fe_int(&netdev->xendev, "request-rx-copy", &rx_copy) == -1) {
+    if (xen_device_frontend_scanf(xendev, "request-rx-copy", "%u",
+                                  &rx_copy) != 1) {
         rx_copy = 0;
     }
     if (rx_copy == 0) {
-        xen_pv_printf(&netdev->xendev, 0,
-                      "frontend doesn't support rx-copy.\n");
-        return -1;
+        error_setg(errp, "frontend doesn't support rx-copy");
+        return false;
     }
 
-    netdev->txs = xen_be_map_grant_ref(&netdev->xendev,
-                                       netdev->tx_ring_ref,
-                                       PROT_READ | PROT_WRITE);
+    netdev->txs = xen_device_map_grant_refs(xendev,
+                                            &netdev->tx_ring_ref, 1,
+                                            PROT_READ | PROT_WRITE,
+                                            errp);
     if (!netdev->txs) {
-        return -1;
+        error_prepend(errp, "failed to map tx grant ref: ");
+        return false;
     }
-    netdev->rxs = xen_be_map_grant_ref(&netdev->xendev,
-                                       netdev->rx_ring_ref,
-                                       PROT_READ | PROT_WRITE);
+
+    netdev->rxs = xen_device_map_grant_refs(xendev,
+                                            &netdev->rx_ring_ref, 1,
+                                            PROT_READ | PROT_WRITE,
+                                            errp);
     if (!netdev->rxs) {
-        xen_be_unmap_grant_ref(&netdev->xendev, netdev->txs,
-                               netdev->tx_ring_ref);
-        netdev->txs = NULL;
-        return -1;
+        error_prepend(errp, "failed to map rx grant ref: ");
+        return false;
     }
+
     BACK_RING_INIT(&netdev->tx_ring, netdev->txs, XEN_PAGE_SIZE);
     BACK_RING_INIT(&netdev->rx_ring, netdev->rxs, XEN_PAGE_SIZE);
 
-    xen_be_bind_evtchn(&netdev->xendev);
+    netdev->event_channel = xen_device_bind_event_channel(xendev, port,
+                                                          net_event,
+                                                          netdev,
+                                                          errp);
+    if (!netdev->event_channel) {
+        return false;
+    }
 
-    xen_pv_printf(&netdev->xendev, 1, "ok: tx-ring-ref %d, rx-ring-ref %d, "
-                  "remote port %d, local port %d\n",
-                  netdev->tx_ring_ref, netdev->rx_ring_ref,
-                  netdev->xendev.remote_port, netdev->xendev.local_port);
+    trace_xen_netdev_connect(netdev->dev, netdev->tx_ring_ref,
+                             netdev->rx_ring_ref, port);
 
     net_tx_packets(netdev);
-    return 0;
+    return true;
 }
 
-static void net_disconnect(struct XenLegacyDevice *xendev)
+static void xen_netdev_disconnect(XenDevice *xendev, Error **errp)
 {
-    struct XenNetDev *netdev = container_of(xendev, struct XenNetDev, xendev);
+    XenNetDev *netdev = XEN_NET_DEVICE(xendev);
 
-    xen_pv_unbind_evtchn(&netdev->xendev);
+    trace_xen_netdev_disconnect(netdev->dev);
 
+    netdev->tx_ring.sring = NULL;
+    netdev->rx_ring.sring = NULL;
+
+    if (netdev->event_channel) {
+        xen_device_unbind_event_channel(xendev, netdev->event_channel,
+                                        errp);
+        netdev->event_channel = NULL;
+    }
     if (netdev->txs) {
-        xen_be_unmap_grant_ref(&netdev->xendev, netdev->txs,
-                               netdev->tx_ring_ref);
+        xen_device_unmap_grant_refs(xendev, netdev->txs,
+                                    &netdev->tx_ring_ref, 1, errp);
         netdev->txs = NULL;
     }
     if (netdev->rxs) {
-        xen_be_unmap_grant_ref(&netdev->xendev, netdev->rxs,
-                               netdev->rx_ring_ref);
+        xen_device_unmap_grant_refs(xendev, netdev->rxs,
+                                    &netdev->rx_ring_ref, 1, errp);
         netdev->rxs = NULL;
     }
 }
 
-static void net_event(struct XenLegacyDevice *xendev)
+/* -------------------------------------------------------------------- */
+
+
+static void xen_netdev_frontend_changed(XenDevice *xendev,
+                                       enum xenbus_state frontend_state,
+                                       Error **errp)
 {
-    struct XenNetDev *netdev = container_of(xendev, struct XenNetDev, xendev);
-    net_tx_packets(netdev);
-    qemu_flush_queued_packets(qemu_get_queue(netdev->nic));
+    ERRP_GUARD();
+    enum xenbus_state backend_state = xen_device_backend_get_state(xendev);
+
+    trace_xen_netdev_frontend_changed(xendev->name, frontend_state);
+
+    switch (frontend_state) {
+    case XenbusStateInitialised:
+    case XenbusStateConnected:
+        if (backend_state == XenbusStateConnected) {
+            break;
+        }
+
+        xen_netdev_disconnect(xendev, errp);
+        if (*errp) {
+            break;
+        }
+
+        if (!xen_netdev_connect(xendev, errp)) {
+            xen_netdev_disconnect(xendev, NULL);
+            xen_device_backend_set_state(xendev, XenbusStateClosing);
+            break;
+        }
+
+        xen_device_backend_set_state(xendev, XenbusStateConnected);
+        break;
+
+    case XenbusStateClosing:
+        xen_device_backend_set_state(xendev, XenbusStateClosing);
+        break;
+
+    case XenbusStateClosed:
+    case XenbusStateUnknown:
+        xen_netdev_disconnect(xendev, errp);
+        if (*errp) {
+            break;
+        }
+
+        xen_device_backend_set_state(xendev, XenbusStateClosed);
+        break;
+
+    default:
+        break;
+    }
+}
+
+static char *xen_netdev_get_name(XenDevice *xendev, Error **errp)
+{
+    XenNetDev *netdev = XEN_NET_DEVICE(xendev);
+
+    if (netdev->dev == -1) {
+        XenBus *xenbus = XEN_BUS(qdev_get_parent_bus(DEVICE(xendev)));
+        char fe_path[XENSTORE_ABS_PATH_MAX + 1];
+        int idx = (xen_mode == XEN_EMULATE) ? 0 : 1;
+        char *value;
+
+        /* Theoretically we could go up to INT_MAX here but that's overkill */
+        while (idx < 100) {
+            snprintf(fe_path, sizeof(fe_path),
+                     "/local/domain/%u/device/vif/%u",
+                     xendev->frontend_id, idx);
+            value = qemu_xen_xs_read(xenbus->xsh, XBT_NULL, fe_path, NULL);
+            if (!value) {
+                if (errno == ENOENT) {
+                    netdev->dev = idx;
+                    goto found;
+                }
+                error_setg(errp, "cannot read %s: %s", fe_path,
+                           strerror(errno));
+                return NULL;
+            }
+            free(value);
+            idx++;
+        }
+        error_setg(errp, "cannot find device index for netdev device");
+        return NULL;
+    }
+ found:
+    return g_strdup_printf("%u", netdev->dev);
 }
 
-static int net_free(struct XenLegacyDevice *xendev)
+static void xen_netdev_unrealize(XenDevice *xendev)
 {
-    struct XenNetDev *netdev = container_of(xendev, struct XenNetDev, xendev);
+    XenNetDev *netdev = XEN_NET_DEVICE(xendev);
+
+    trace_xen_netdev_unrealize(netdev->dev);
+
+    /* Disconnect from the frontend in case this has not already happened */
+    xen_netdev_disconnect(xendev, NULL);
 
     if (netdev->nic) {
         qemu_del_nic(netdev->nic);
-        netdev->nic = NULL;
     }
-    g_free(netdev->mac);
-    netdev->mac = NULL;
-    return 0;
 }
 
 /* ------------------------------------------------------------- */
 
-struct XenDevOps xen_netdev_ops = {
-    .size       = sizeof(struct XenNetDev),
-    .flags      = DEVOPS_FLAG_NEED_GNTDEV,
-    .init       = net_init,
-    .initialise    = net_connect,
-    .event      = net_event,
-    .disconnect = net_disconnect,
-    .free       = net_free,
+static Property xen_netdev_properties[] = {
+    DEFINE_NIC_PROPERTIES(XenNetDev, conf),
+    DEFINE_PROP_INT32("idx", XenNetDev, dev, -1),
+    DEFINE_PROP_END_OF_LIST(),
+};
+
+static void xen_netdev_class_init(ObjectClass *class, void *data)
+{
+    DeviceClass *dev_class = DEVICE_CLASS(class);
+    XenDeviceClass *xendev_class = XEN_DEVICE_CLASS(class);
+
+    xendev_class->backend = "qnic";
+    xendev_class->device = "vif";
+    xendev_class->get_name = xen_netdev_get_name;
+    xendev_class->realize = xen_netdev_realize;
+    xendev_class->frontend_changed = xen_netdev_frontend_changed;
+    xendev_class->unrealize = xen_netdev_unrealize;
+    set_bit(DEVICE_CATEGORY_NETWORK, dev_class->categories);
+    dev_class->user_creatable = true;
+
+    device_class_set_props(dev_class, xen_netdev_properties);
+}
+
+static const TypeInfo xen_net_type_info = {
+    .name = TYPE_XEN_NET_DEVICE,
+    .parent = TYPE_XEN_DEVICE,
+    .instance_size = sizeof(XenNetDev),
+    .class_init = xen_netdev_class_init,
+};
+
+static void xen_net_register_types(void)
+{
+    type_register_static(&xen_net_type_info);
+}
+
+type_init(xen_net_register_types)
+
+/* Called to instantiate a XenNetDev when the backend is detected. */
+static void xen_net_device_create(XenBackendInstance *backend,
+                                  QDict *opts, Error **errp)
+{
+    ERRP_GUARD();
+    XenBus *xenbus = xen_backend_get_bus(backend);
+    const char *name = xen_backend_get_name(backend);
+    XenDevice *xendev = NULL;
+    unsigned long number;
+    const char *macstr;
+    XenNetDev *net;
+    MACAddr mac;
+
+    if (qemu_strtoul(name, NULL, 10, &number) || number >= INT_MAX) {
+        error_setg(errp, "failed to parse name '%s'", name);
+        goto fail;
+    }
+
+    trace_xen_netdev_create(number);
+
+    macstr = qdict_get_try_str(opts, "mac");
+    if (macstr == NULL) {
+        error_setg(errp, "no MAC address found");
+        goto fail;
+    }
+
+    if (net_parse_macaddr(mac.a, macstr) < 0) {
+        error_setg(errp, "failed to parse MAC address");
+        goto fail;
+    }
+
+    xendev = XEN_DEVICE(qdev_new(TYPE_XEN_NET_DEVICE));
+    net = XEN_NET_DEVICE(xendev);
+
+    net->dev = number;
+    memcpy(&net->conf.macaddr, &mac, sizeof(mac));
+
+    if (qdev_realize_and_unref(DEVICE(xendev), BUS(xenbus), errp)) {
+        xen_backend_set_device(backend, xendev);
+        return;
+    }
+
+    error_prepend(errp, "realization of net device %lu failed: ",
+                  number);
+
+ fail:
+    if (xendev) {
+        object_unparent(OBJECT(xendev));
+    }
+}
+
+static void xen_net_device_destroy(XenBackendInstance *backend,
+                                       Error **errp)
+{
+    ERRP_GUARD();
+    XenDevice *xendev = xen_backend_get_device(backend);
+    XenNetDev *netdev = XEN_NET_DEVICE(xendev);
+
+    trace_xen_netdev_destroy(netdev->dev);
+
+    object_unparent(OBJECT(xendev));
+}
+
+static const XenBackendInfo xen_net_backend_info  = {
+    .type = "qnic",
+    .create = xen_net_device_create,
+    .destroy = xen_net_device_destroy,
 };
+
+static void xen_net_register_backend(void)
+{
+    xen_backend_register(&xen_net_backend_info);
+}
+
+xen_backend_init(xen_net_register_backend);
diff --git a/hw/xenpv/xen_machine_pv.c b/hw/xenpv/xen_machine_pv.c
index 1533f5dfb4..9f9f137f99 100644
--- a/hw/xenpv/xen_machine_pv.c
+++ b/hw/xenpv/xen_machine_pv.c
@@ -54,7 +54,6 @@ static void xen_init_pv(MachineState *machine)
     }
 
     xen_be_register("vfb", &xen_framebuffer_ops);
-    xen_be_register("qnic", &xen_netdev_ops);
 
     /* configure framebuffer */
     if (vga_interface_type == VGA_XENFB) {
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Thu Oct 19 15:41:00 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 15:41:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619423.964510 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtV8u-0000M8-G7; Thu, 19 Oct 2023 15:41:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619423.964510; Thu, 19 Oct 2023 15:41: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 1qtV8t-0000I3-Kg; Thu, 19 Oct 2023 15:40:59 +0000
Received: by outflank-mailman (input) for mailman id 619423;
 Thu, 19 Oct 2023 15:40: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=b9Lg=GB=casper.srs.infradead.org=BATV+06ae5fa416ae820d9d5a+7361+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qtV8q-0005v1-7o
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 15:40:56 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id e38ed611-6e95-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 17:40:54 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qtV8N-007osx-KY; Thu, 19 Oct 2023 15:40:27 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1qtV8N-000Puv-0D; Thu, 19 Oct 2023 16:40:27 +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
X-Inumbo-ID: e38ed611-6e95-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=zEVOklvlUUQyQZ4N1FCYWmPuynX0GZRTCMHzzJrC3Bo=; b=hJ6t4WNhxI9VEdHaki64Gxt2yZ
	1yWmIl3OnKjrwiGCXuB4T28FJZS2qTF0IaKIFe/iLTDnX2sQlYtDaQy8w8d/Yfaw5buoIOl7jIWXk
	mTrlW0CtffIarggvIBFT3vnyIM23G01VOKOzKagy8C7eMWO7c+GN+M3ELLq3J3l6O14nNC7DCTjwA
	fbFqixN3jxynJwJn3vKd93xmbFnC+a6ImoaZDkCscpn+bJpI5Gq9wMXncbqiQOeUTGEeUxyTx2wGr
	Q3t4RzMeiGQ82/Ea9V+F6Q4u7ugAsepDqDJdkosIrN2Iuu2qr/nfmk1pLy6+K/YjNuFi1GKgNMZVX
	tizHSZZQ==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>,
	Hanna Reitz <hreitz@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	=?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Richard Henderson <richard.henderson@linaro.org>,
	Eduardo Habkost <eduardo@habkost.net>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Jason Wang <jasowang@redhat.com>,
	Marcelo Tosatti <mtosatti@redhat.com>,
	Cleber Rosa <crosa@redhat.com>,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
	Wainer dos Santos Moschetta <wainersm@redhat.com>,
	Beraldo Leal <bleal@redhat.com>,
	qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org,
	kvm@vger.kernel.org,
	Bernhard Beschow <shentey@gmail.com>,
	Joel Upham <jupham125@gmail.com>
Subject: [PATCH v2 19/24] hw/i386/pc: support '-nic' for xen-net-device
Date: Thu, 19 Oct 2023 16:40:15 +0100
Message-Id: <20231019154020.99080-20-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231019154020.99080-1-dwmw2@infradead.org>
References: <20231019154020.99080-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

The default NIC creation seems a bit hackish to me. I don't understand
why each platform has to call pci_nic_init_nofail() from a point in the
code where it actually has a pointer to the PCI bus, and then we have
the special cases for things like ne2k_isa.

If qmp_device_add() can *find* the appropriate bus and instantiate
the device on it, why can't we just do that from generic code for
creating the default NICs too?

But that isn't a yak I want to shave today. Add a xenbus field to the
PCMachineState so that it can make its way from pc_basic_device_init()
to pc_nic_init() and be handled as a special case like ne2k_isa is.

Now we can launch emulated Xen guests with '-nic user'.

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 hw/i386/pc.c             | 11 ++++++++---
 hw/i386/pc_piix.c        |  2 +-
 hw/i386/pc_q35.c         |  2 +-
 hw/xen/xen-bus.c         |  4 +++-
 include/hw/i386/pc.h     |  4 +++-
 include/hw/xen/xen-bus.h |  2 +-
 6 files changed, 17 insertions(+), 8 deletions(-)

diff --git a/hw/i386/pc.c b/hw/i386/pc.c
index bb3854d1d0..7413ca50c8 100644
--- a/hw/i386/pc.c
+++ b/hw/i386/pc.c
@@ -1265,7 +1265,7 @@ void pc_basic_device_init(struct PCMachineState *pcms,
         if (pcms->bus) {
             pci_create_simple(pcms->bus, -1, "xen-platform");
         }
-        xen_bus_init();
+        pcms->xenbus = xen_bus_init();
         xen_be_init();
     }
 #endif
@@ -1291,7 +1291,8 @@ void pc_basic_device_init(struct PCMachineState *pcms,
                     pcms->vmport != ON_OFF_AUTO_ON);
 }
 
-void pc_nic_init(PCMachineClass *pcmc, ISABus *isa_bus, PCIBus *pci_bus)
+void pc_nic_init(PCMachineClass *pcmc, ISABus *isa_bus, PCIBus *pci_bus,
+                 BusState *xen_bus)
 {
     MachineClass *mc = MACHINE_CLASS(pcmc);
     int i;
@@ -1301,7 +1302,11 @@ void pc_nic_init(PCMachineClass *pcmc, ISABus *isa_bus, PCIBus *pci_bus)
         NICInfo *nd = &nd_table[i];
         const char *model = nd->model ? nd->model : mc->default_nic;
 
-        if (g_str_equal(model, "ne2k_isa")) {
+        if (xen_bus && (!nd->model || g_str_equal(model, "xen-net-device"))) {
+            DeviceState *dev = qdev_new("xen-net-device");
+            qdev_set_nic_properties(dev, nd);
+            qdev_realize_and_unref(dev, xen_bus, &error_fatal);
+        } else if (g_str_equal(model, "ne2k_isa")) {
             pc_init_ne2k_isa(isa_bus, nd);
         } else {
             pci_nic_init_nofail(nd, pci_bus, model, NULL);
diff --git a/hw/i386/pc_piix.c b/hw/i386/pc_piix.c
index e36a3262b2..90b5ae7258 100644
--- a/hw/i386/pc_piix.c
+++ b/hw/i386/pc_piix.c
@@ -322,7 +322,7 @@ static void pc_init1(MachineState *machine,
     pc_basic_device_init(pcms, isa_bus, x86ms->gsi, rtc_state, true,
                          0x4);
 
-    pc_nic_init(pcmc, isa_bus, pci_bus);
+    pc_nic_init(pcmc, isa_bus, pci_bus, pcms->xenbus);
 
     if (pcmc->pci_enabled) {
         PCIDevice *dev;
diff --git a/hw/i386/pc_q35.c b/hw/i386/pc_q35.c
index a7386f2ca2..2ed0aab2a7 100644
--- a/hw/i386/pc_q35.c
+++ b/hw/i386/pc_q35.c
@@ -340,7 +340,7 @@ static void pc_q35_init(MachineState *machine)
 
     /* the rest devices to which pci devfn is automatically assigned */
     pc_vga_init(isa_bus, host_bus);
-    pc_nic_init(pcmc, isa_bus, host_bus);
+    pc_nic_init(pcmc, isa_bus, host_bus, pcms->xenbus);
 
     if (machine->nvdimms_state->is_enabled) {
         nvdimm_init_acpi_state(machine->nvdimms_state, system_io,
diff --git a/hw/xen/xen-bus.c b/hw/xen/xen-bus.c
index 0da2aa219a..d7823964f8 100644
--- a/hw/xen/xen-bus.c
+++ b/hw/xen/xen-bus.c
@@ -1127,11 +1127,13 @@ static void xen_register_types(void)
 
 type_init(xen_register_types)
 
-void xen_bus_init(void)
+BusState *xen_bus_init(void)
 {
     DeviceState *dev = qdev_new(TYPE_XEN_BRIDGE);
     BusState *bus = qbus_new(TYPE_XEN_BUS, dev, NULL);
 
     sysbus_realize_and_unref(SYS_BUS_DEVICE(dev), &error_fatal);
     qbus_set_bus_hotplug_handler(bus);
+
+    return bus;
 }
diff --git a/include/hw/i386/pc.h b/include/hw/i386/pc.h
index bec38cb92c..feabf3d195 100644
--- a/include/hw/i386/pc.h
+++ b/include/hw/i386/pc.h
@@ -33,6 +33,7 @@ typedef struct PCMachineState {
 
     /* Pointers to devices and objects: */
     PCIBus *bus;
+    BusState *xenbus;
     I2CBus *smbus;
     PFlashCFI01 *flash[2];
     ISADevice *pcspk;
@@ -182,7 +183,8 @@ void pc_basic_device_init(struct PCMachineState *pcms,
 void pc_cmos_init(PCMachineState *pcms,
                   BusState *ide0, BusState *ide1,
                   ISADevice *s);
-void pc_nic_init(PCMachineClass *pcmc, ISABus *isa_bus, PCIBus *pci_bus);
+void pc_nic_init(PCMachineClass *pcmc, ISABus *isa_bus, PCIBus *pci_bus,
+                 BusState *xen_bus);
 
 void pc_i8259_create(ISABus *isa_bus, qemu_irq *i8259_irqs);
 
diff --git a/include/hw/xen/xen-bus.h b/include/hw/xen/xen-bus.h
index eb440880b5..acad871b80 100644
--- a/include/hw/xen/xen-bus.h
+++ b/include/hw/xen/xen-bus.h
@@ -75,7 +75,7 @@ struct XenBusClass {
 OBJECT_DECLARE_TYPE(XenBus, XenBusClass,
                     XEN_BUS)
 
-void xen_bus_init(void);
+BusState *xen_bus_init(void);
 
 void xen_device_backend_set_state(XenDevice *xendev,
                                   enum xenbus_state state);
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Thu Oct 19 15:41:01 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 15:41:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619424.964519 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtV8v-0000cv-Cu; Thu, 19 Oct 2023 15:41:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619424.964519; Thu, 19 Oct 2023 15:41: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 1qtV8v-0000Zm-0t; Thu, 19 Oct 2023 15:41:01 +0000
Received: by outflank-mailman (input) for mailman id 619424;
 Thu, 19 Oct 2023 15: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=m+UH=GB=desiato.srs.infradead.org=BATV+298c059cf2aa39b7dc34+7361+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qtV8q-0006dc-Rx
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 15:40:56 +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 e25ba781-6e95-11ee-9b0e-b553b5be7939;
 Thu, 19 Oct 2023 17:40:52 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by desiato.infradead.org with esmtpsa (Exim 4.96 #2 (Red Hat Linux))
 id 1qtV8M-009yCh-2Y; Thu, 19 Oct 2023 15:40:27 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1qtV8L-000Ptk-2O; Thu, 19 Oct 2023 16:40:25 +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
X-Inumbo-ID: e25ba781-6e95-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=desiato.20200630; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=2nqUTV3vUpOx9clV41PRsXO9Zf0sXlL57tnkVmGApug=; b=IxYegd780SmdgDUUbQTnWSd/ai
	wuPPAJoA515FdGO8tU1vSZrNsyj+Eu6YIkOsX/w4u33wqDnGK/ZwF1FZAXaacLiotME7DJPR6U/Jt
	OuDfbp0EviQEM+jKnxB2735BGSNGjQPB5fQO0QhthLqzSiUxPJRE6nEg1YISAF7SGMMqZmiK5VeSg
	dzR41WsF4hHTtOF4Yx+UDPvs6VQbtX5ykHz8fZztlFt0rXHlMPaiXHGv2MgylP5snh0qflWdWsndn
	GcidSGgVKwpcNJ7umDEr2Y0Ng2MicE/qap/rao+XOsK2w46sGJSmaj6tItgKWDiX6XExPu+61OUBD
	r/Ld6nOw==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>,
	Hanna Reitz <hreitz@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	=?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Richard Henderson <richard.henderson@linaro.org>,
	Eduardo Habkost <eduardo@habkost.net>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Jason Wang <jasowang@redhat.com>,
	Marcelo Tosatti <mtosatti@redhat.com>,
	Cleber Rosa <crosa@redhat.com>,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
	Wainer dos Santos Moschetta <wainersm@redhat.com>,
	Beraldo Leal <bleal@redhat.com>,
	qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org,
	kvm@vger.kernel.org,
	Bernhard Beschow <shentey@gmail.com>,
	Joel Upham <jupham125@gmail.com>
Subject: [PATCH v2 02/24] i386/xen: fix per-vCPU upcall vector for Xen emulation
Date: Thu, 19 Oct 2023 16:39:58 +0100
Message-Id: <20231019154020.99080-3-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231019154020.99080-1-dwmw2@infradead.org>
References: <20231019154020.99080-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by desiato.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

The per-vCPU upcall vector support had two problems. Firstly it was
using the wrong hypercall argument and would always return -EFAULT.
And secondly it was using the wrong ioctl() to pass the vector to
the kernel and thus the *kernel* would always return -EINVAL.

Linux doesn't (yet) use this mode so it went without decent testing
for a while.

Fixes: 105b47fdf2d0 ("i386/xen: implement HVMOP_set_evtchn_upcall_vector")
Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 target/i386/kvm/xen-emu.c | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/target/i386/kvm/xen-emu.c b/target/i386/kvm/xen-emu.c
index 0055441b2e..619240398a 100644
--- a/target/i386/kvm/xen-emu.c
+++ b/target/i386/kvm/xen-emu.c
@@ -306,7 +306,7 @@ static int kvm_xen_set_vcpu_callback_vector(CPUState *cs)
 
     trace_kvm_xen_set_vcpu_callback(cs->cpu_index, vector);
 
-    return kvm_vcpu_ioctl(cs, KVM_XEN_HVM_SET_ATTR, &xva);
+    return kvm_vcpu_ioctl(cs, KVM_XEN_VCPU_SET_ATTR, &xva);
 }
 
 static void do_set_vcpu_callback_vector(CPUState *cs, run_on_cpu_data data)
@@ -849,8 +849,7 @@ static bool kvm_xen_hcall_hvm_op(struct kvm_xen_exit *exit, X86CPU *cpu,
     int ret = -ENOSYS;
     switch (cmd) {
     case HVMOP_set_evtchn_upcall_vector:
-        ret = kvm_xen_hcall_evtchn_upcall_vector(exit, cpu,
-                                                 exit->u.hcall.params[0]);
+        ret = kvm_xen_hcall_evtchn_upcall_vector(exit, cpu, arg);
         break;
 
     case HVMOP_pagetable_dying:
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Thu Oct 19 15:41:03 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 15:41:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619425.964528 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtV8w-0000yY-Vp; Thu, 19 Oct 2023 15:41:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619425.964528; Thu, 19 Oct 2023 15:41: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 1qtV8w-0000ty-3g; Thu, 19 Oct 2023 15:41:02 +0000
Received: by outflank-mailman (input) for mailman id 619425;
 Thu, 19 Oct 2023 15:40: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=b9Lg=GB=casper.srs.infradead.org=BATV+06ae5fa416ae820d9d5a+7361+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qtV8r-0006dc-Va
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 15:40:57 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id e3ac646c-6e95-11ee-9b0e-b553b5be7939;
 Thu, 19 Oct 2023 17:40:54 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qtV8N-007osu-Ka; Thu, 19 Oct 2023 15:40:27 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1qtV8M-000Pun-2t; Thu, 19 Oct 2023 16:40:26 +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
X-Inumbo-ID: e3ac646c-6e95-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=ASyx27ABg/WdxWXFMwdeXHtm2HUFOe8n8pbrbgV+R1U=; b=Q+6ncjmIFo7hTNy+ZtPc79xrDg
	U0NPXNlvZPU1d6HeGintbbtqvIYEobGpIB0sVq48i90OOnNVC0x5hreYF3WC+S7oFhdU/13C0cLWM
	UrhTnsczsHoP4H+j6SHuGqaEn2fGYbMjx7xUkY9vRx883FDUmsO01FIdAmlwBby8fb35TEO/07CkS
	4au4CXHmp+EBgIGBx39jcVmNxzfU0dKzcCq80PArVikh/em2Z8PYOnQPSUv2S0RwM2XY7x4eVYYGR
	wbhOd/4VV4zgWXwR8ewuYpktTU6ZEdD0hc2QTnjpwZ4IEaguUj3sAUgXLdwxiyp7sVTNcpGVQwFAF
	xn1VjjWw==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>,
	Hanna Reitz <hreitz@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	=?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Richard Henderson <richard.henderson@linaro.org>,
	Eduardo Habkost <eduardo@habkost.net>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Jason Wang <jasowang@redhat.com>,
	Marcelo Tosatti <mtosatti@redhat.com>,
	Cleber Rosa <crosa@redhat.com>,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
	Wainer dos Santos Moschetta <wainersm@redhat.com>,
	Beraldo Leal <bleal@redhat.com>,
	qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org,
	kvm@vger.kernel.org,
	Bernhard Beschow <shentey@gmail.com>,
	Joel Upham <jupham125@gmail.com>
Subject: [PATCH v2 17/24] hw/xen: only remove peers of PCI NICs on unplug
Date: Thu, 19 Oct 2023 16:40:13 +0100
Message-Id: <20231019154020.99080-18-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231019154020.99080-1-dwmw2@infradead.org>
References: <20231019154020.99080-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

When the Xen guest asks to unplug *emulated* NICs, it's kind of unhelpful
also to unplug the peer of the *Xen* PV NIC.

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 hw/i386/xen/xen_platform.c | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

diff --git a/hw/i386/xen/xen_platform.c b/hw/i386/xen/xen_platform.c
index 17457ff3de..e2dd1b536a 100644
--- a/hw/i386/xen/xen_platform.c
+++ b/hw/i386/xen/xen_platform.c
@@ -140,9 +140,14 @@ static void unplug_nic(PCIBus *b, PCIDevice *d, void *o)
 /* Remove the peer of the NIC device. Normally, this would be a tap device. */
 static void del_nic_peer(NICState *nic, void *opaque)
 {
-    NetClientState *nc;
+    NetClientState *nc = qemu_get_queue(nic);
+    ObjectClass *klass = module_object_class_by_name(nc->model);
+
+    /* Only delete peers of PCI NICs that we're about to delete */
+    if (!klass || !object_class_dynamic_cast(klass, TYPE_PCI_DEVICE)) {
+        return;
+    }
 
-    nc = qemu_get_queue(nic);
     if (nc->peer)
         qemu_del_net_client(nc->peer);
 }
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Thu Oct 19 15:41:04 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 15:41:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619426.964539 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtV8x-0001Ct-Tt; Thu, 19 Oct 2023 15:41:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619426.964539; Thu, 19 Oct 2023 15:41: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 1qtV8x-00018J-3n; Thu, 19 Oct 2023 15:41:03 +0000
Received: by outflank-mailman (input) for mailman id 619426;
 Thu, 19 Oct 2023 15:40: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=m+UH=GB=desiato.srs.infradead.org=BATV+298c059cf2aa39b7dc34+7361+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qtV8s-0006dc-SC
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 15:40:58 +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 e35e1947-6e95-11ee-9b0e-b553b5be7939;
 Thu, 19 Oct 2023 17:40:55 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by desiato.infradead.org with esmtpsa (Exim 4.96 #2 (Red Hat Linux))
 id 1qtV8O-009yD7-0P; Thu, 19 Oct 2023 15:40:28 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1qtV8N-000PvR-1m; Thu, 19 Oct 2023 16:40:27 +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
X-Inumbo-ID: e35e1947-6e95-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=desiato.20200630; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=DyY8I/ZKbCu/w/L7sfs0qQaOI3alzNFdd8No8uZAwJY=; b=poV1WGsApzadUT0xdj1lGj07Ks
	IIjmyFgyyhHHCCa4ppA7c3EQcnUM8KZHHQBeW/ta/PnFbfeVmW8WJYyEFhxgqunegGZQFI7xbD1/7
	fPB4Yk2ZzuW8AcHkoFs3T9n+3rkqi+i8aAB+lpJyNQkcsIVG+tH0I8kSL4/8hilNGyqXxt4nKc4F2
	1VYruLsoyPt9sV7drShBs2y4THHGaJUyrvKdv6jl+1jv58sLf+4BCkRLWbDjZmOpshREMjTG1A2K+
	gLfK01j5TZVqkaR5DV0hssWj6h3UaFyg+QWj3v0veF2O6ukerNiljYRn81Xjatg7EQZWYHHVwm/lz
	kfBK08xg==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>,
	Hanna Reitz <hreitz@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	=?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Richard Henderson <richard.henderson@linaro.org>,
	Eduardo Habkost <eduardo@habkost.net>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Jason Wang <jasowang@redhat.com>,
	Marcelo Tosatti <mtosatti@redhat.com>,
	Cleber Rosa <crosa@redhat.com>,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
	Wainer dos Santos Moschetta <wainersm@redhat.com>,
	Beraldo Leal <bleal@redhat.com>,
	qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org,
	kvm@vger.kernel.org,
	Bernhard Beschow <shentey@gmail.com>,
	Joel Upham <jupham125@gmail.com>
Subject: [PATCH v2 24/24] docs: update Xen-on-KVM documentation
Date: Thu, 19 Oct 2023 16:40:20 +0100
Message-Id: <20231019154020.99080-25-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231019154020.99080-1-dwmw2@infradead.org>
References: <20231019154020.99080-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by desiato.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

Add notes about console and network support, and how to launch PV guests.
Clean up the disk configuration examples now that that's simpler, and
remove the comment about IDE unplug on q35/AHCI now that it's fixed.

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 docs/system/i386/xen.rst | 100 ++++++++++++++++++++++++++++-----------
 1 file changed, 72 insertions(+), 28 deletions(-)

diff --git a/docs/system/i386/xen.rst b/docs/system/i386/xen.rst
index f06765e88c..6214c4571e 100644
--- a/docs/system/i386/xen.rst
+++ b/docs/system/i386/xen.rst
@@ -15,46 +15,24 @@ Setup
 -----
 
 Xen mode is enabled by setting the ``xen-version`` property of the KVM
-accelerator, for example for Xen 4.10:
+accelerator, for example for Xen 4.17:
 
 .. parsed-literal::
 
-  |qemu_system| --accel kvm,xen-version=0x4000a,kernel-irqchip=split
+  |qemu_system| --accel kvm,xen-version=0x40011,kernel-irqchip=split
 
 Additionally, virtual APIC support can be advertised to the guest through the
 ``xen-vapic`` CPU flag:
 
 .. parsed-literal::
 
-  |qemu_system| --accel kvm,xen-version=0x4000a,kernel-irqchip=split --cpu host,+xen_vapic
+  |qemu_system| --accel kvm,xen-version=0x40011,kernel-irqchip=split --cpu host,+xen-vapic
 
 When Xen support is enabled, QEMU changes hypervisor identification (CPUID
 0x40000000..0x4000000A) to Xen. The KVM identification and features are not
 advertised to a Xen guest. If Hyper-V is also enabled, the Xen identification
 moves to leaves 0x40000100..0x4000010A.
 
-The Xen platform device is enabled automatically for a Xen guest. This allows
-a guest to unplug all emulated devices, in order to use Xen PV block and network
-drivers instead. Under Xen, the boot disk is typically available both via IDE
-emulation, and as a PV block device. Guest bootloaders typically use IDE to load
-the guest kernel, which then unplugs the IDE and continues with the Xen PV block
-device.
-
-This configuration can be achieved as follows
-
-.. parsed-literal::
-
-  |qemu_system| -M pc --accel kvm,xen-version=0x4000a,kernel-irqchip=split \\
-       -drive file=${GUEST_IMAGE},if=none,id=disk,file.locking=off -device xen-disk,drive=disk,vdev=xvda \\
-       -drive file=${GUEST_IMAGE},index=2,media=disk,file.locking=off,if=ide
-
-It is necessary to use the pc machine type, as the q35 machine uses AHCI instead
-of legacy IDE, and AHCI disks are not unplugged through the Xen PV unplug
-mechanism.
-
-VirtIO devices can also be used; Linux guests may need to be dissuaded from
-umplugging them by adding 'xen_emul_unplug=never' on their command line.
-
 Properties
 ----------
 
@@ -63,7 +41,10 @@ The following properties exist on the KVM accelerator object:
 ``xen-version``
   This property contains the Xen version in ``XENVER_version`` form, with the
   major version in the top 16 bits and the minor version in the low 16 bits.
-  Setting this property enables the Xen guest support.
+  Setting this property enables the Xen guest support. If Xen version 4.5 or
+  greater is specified, the HVM leaf in Xen CPUID is populated. Xen version
+  4.6 enables the vCPU ID in CPUID, and version 4.17 advertises vCPU upcall
+  vector support to the guest.
 
 ``xen-evtchn-max-pirq``
   Xen PIRQs represent an emulated physical interrupt, either GSI or MSI, which
@@ -83,8 +64,71 @@ The following properties exist on the KVM accelerator object:
   through simultaneous grants. For guests with large numbers of PV devices and
   high throughput, it may be desirable to increase this value.
 
-OS requirements
----------------
+Xen paravirtual devices
+-----------------------
+
+The Xen PCI platform device is enabled automatically for a Xen guest. This
+allows a guest to unplug all emulated devices, in order to use paravirtual
+block and network drivers instead.
+
+Those paravirtual Xen block, network (and console) devices can be created
+through the command line, and/or hot-plugged.
+
+To provide a Xen console device, define a character device and then a device
+of type ``xen-console`` to connect to it. For the Xen console equivalent of
+the handy ``-serial mon:stdio`` option, for example:
+
+.. parsed-literal::
+   -chardev -chardev stdio,mux=on,id=char0,signal=off -mon char0 \\
+   -device xen-console,chardev=char0
+
+The Xen network device is ``xen-net-device``, which becomes the default NIC
+model for emulated Xen guests, meaning that just the default ``-nic user``
+should automatically work and present a Xen network device to the guest.
+
+Disks can be configured with '``-drive file=${GUEST_IMAGE},if=xen``' and will
+appear to the guest as ``xvda`` onwards.
+
+Under Xen, the boot disk is typically available both via IDE emulation, and
+as a PV block device. Guest bootloaders typically use IDE to load the guest
+kernel, which then unplugs the IDE and continues with the Xen PV block device.
+
+This configuration can be achieved as follows:
+
+.. parsed-literal::
+
+  |qemu_system| --accel kvm,xen-version=0x40011,kernel-irqchip=split \\
+       -drive file=${GUEST_IMAGE},if=xen \\
+       -drive file=${GUEST_IMAGE},file.locking=off,if=ide
+
+VirtIO devices can also be used; Linux guests may need to be dissuaded from
+umplugging them by adding '``xen_emul_unplug=never``' on their command line.
+
+Booting Xen PV guests
+---------------------
+
+Booting PV guest kernels is possible by using the Xen PV shim (a version of Xen
+itself, designed to run inside a Xen HVM guest and provide memory management
+services for one guest alone).
+
+The Xen binary is provided as the ``-kernel`` and the guest kernel itself (or
+PV Grub image) as the ``-initrd`` image, which actually just means the first
+multiboot "module". For example:
+
+.. parsed-literal::
+
+  |qemu_system| --accel kvm,xen-version=0x40011,kernel-irqchip=split \\
+       -chardev stdio,id=char0 -device xen-console,chardev=char0 \\
+       -display none  -m 1G  -kernel xen -initrd bzImage \\
+       -append "pv-shim console=xen,pv -- console=hvc0 root=/dev/xvda1" \\
+       -drive file=${GUEST_IMAGE},if=xen
+
+The Xen image must be built with the ``CONFIG_XEN_GUEST`` and ``CONFIG_PV_SHIM``
+options, and as of Xen 4.17, Xen's PV shim mode does not support using a serial
+port; it must have a Xen console or it will panic.
+
+Host OS requirements
+--------------------
 
 The minimal Xen support in the KVM accelerator requires the host to be running
 Linux v5.12 or newer. Later versions add optimisations: Linux v5.17 added
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Thu Oct 19 15:41:05 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 15:41:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619427.964548 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtV8y-0001WP-QR; Thu, 19 Oct 2023 15:41:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619427.964548; Thu, 19 Oct 2023 15: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 1qtV8y-0001Rx-AX; Thu, 19 Oct 2023 15:41:04 +0000
Received: by outflank-mailman (input) for mailman id 619427;
 Thu, 19 Oct 2023 15:41: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=m+UH=GB=desiato.srs.infradead.org=BATV+298c059cf2aa39b7dc34+7361+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qtV8t-0006dc-SL
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 15:40:59 +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 e4137783-6e95-11ee-9b0e-b553b5be7939;
 Thu, 19 Oct 2023 17:40:55 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by desiato.infradead.org with esmtpsa (Exim 4.96 #2 (Red Hat Linux))
 id 1qtV8M-009yCq-2Z; Thu, 19 Oct 2023 15:40:27 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1qtV8M-000PuF-12; Thu, 19 Oct 2023 16:40:26 +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
X-Inumbo-ID: e4137783-6e95-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=desiato.20200630; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=nvRcjzw6M/XXwV3zCk205Erqe071/IUToCid+vBMiOQ=; b=h7T/JZlXs4eYvi1D1r24IXvFZf
	eQnVE76BMO469Wvs1/Uyq8bo4pP8Oil1b3lK53uwNMfi/cWcct9pw89KU2TCiHFjLLJXAyh2oooj2
	9nPGS3gW6k1clnADbrXpN9PZ4G+kyLAPAZTjw7p/X2f3YiHWie8G1j0XlzkF07La89N9IyaA2rOdU
	Emvs6HGrzswQq1fb7HLyn4LLiprMl/woS11v1T4GUKtd0WBpO+/Lcf1AoyBXnzharnjokIaVKgCUx
	KXewbqi1OP/EnfsDd3SAx9ocBT8oG5pf8XmIybKckp+iiV9/0IBKNgJwmBPg82PyeLpGVJRtMC3lc
	RwCZ1nQQ==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>,
	Hanna Reitz <hreitz@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	=?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Richard Henderson <richard.henderson@linaro.org>,
	Eduardo Habkost <eduardo@habkost.net>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Jason Wang <jasowang@redhat.com>,
	Marcelo Tosatti <mtosatti@redhat.com>,
	Cleber Rosa <crosa@redhat.com>,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
	Wainer dos Santos Moschetta <wainersm@redhat.com>,
	Beraldo Leal <bleal@redhat.com>,
	qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org,
	kvm@vger.kernel.org,
	Bernhard Beschow <shentey@gmail.com>,
	Joel Upham <jupham125@gmail.com>
Subject: [PATCH v2 09/24] i386/xen: advertise XEN_HVM_CPUID_UPCALL_VECTOR in CPUID
Date: Thu, 19 Oct 2023 16:40:05 +0100
Message-Id: <20231019154020.99080-10-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231019154020.99080-1-dwmw2@infradead.org>
References: <20231019154020.99080-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by desiato.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

This will allow Linux guests (since v6.0) to use the per-vCPU upcall
vector delivered as MSI through the local APIC.

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 target/i386/kvm/kvm.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/target/i386/kvm/kvm.c b/target/i386/kvm/kvm.c
index ab72bcdfad..bd774b3e02 100644
--- a/target/i386/kvm/kvm.c
+++ b/target/i386/kvm/kvm.c
@@ -1889,6 +1889,10 @@ int kvm_arch_init_vcpu(CPUState *cs)
                 c->eax |= XEN_HVM_CPUID_VCPU_ID_PRESENT;
                 c->ebx = cs->cpu_index;
             }
+
+            if (cs->kvm_state->xen_version >= XEN_VERSION(4, 17)) {
+                c->eax |= XEN_HVM_CPUID_UPCALL_VECTOR;
+            }
         }
 
         r = kvm_xen_init_vcpu(cs);
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Thu Oct 19 15:41:07 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 15:41:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619428.964559 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtV90-0001v3-FQ; Thu, 19 Oct 2023 15:41:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619428.964559; Thu, 19 Oct 2023 15:41: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 1qtV8z-0001nr-LM; Thu, 19 Oct 2023 15:41:05 +0000
Received: by outflank-mailman (input) for mailman id 619428;
 Thu, 19 Oct 2023 15:41: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=m+UH=GB=desiato.srs.infradead.org=BATV+298c059cf2aa39b7dc34+7361+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qtV8w-0006dc-6k
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 15:41:02 +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 e6311328-6e95-11ee-9b0e-b553b5be7939;
 Thu, 19 Oct 2023 17:40:58 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by desiato.infradead.org with esmtpsa (Exim 4.96 #2 (Red Hat Linux))
 id 1qtV8M-009yCm-2X; Thu, 19 Oct 2023 15:40:27 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1qtV8M-000Pu2-04; Thu, 19 Oct 2023 16:40:26 +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
X-Inumbo-ID: e6311328-6e95-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=desiato.20200630; h=Sender:Content-Transfer-Encoding:
	Content-Type:MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:
	To:From:Reply-To:Content-ID:Content-Description;
	bh=I94165DVF5UqmBmDscBFuMqRd0gjhG/yUz/GC+u3DZo=; b=b27pRvnBGhO8GBTyfkDGo1zlxb
	TSesogQRQ2g+1BMqrLQKVS9a1UqGgeO/k1J331Y59qHD6EVut4zvVV0M1qgLrVRf/A+ir9G1MTQIF
	+0LXsZFDA3t1dM3upyUzwFNy8/FI5lxM+jDPhgc6FHQ22juT+DVHJ5pgPyGW8jgeW4rYxJpx3mDrp
	tUF1mVG428hFe9nSdcOJQqPLzDalaf0abHj0KqsdEIjy9c4f5HO701r8YI3m544Pe0l7kkTTLJf/o
	E74nIaxdkPhY7DJpjUTycGAcq0iMv+uHDvW6J9oEfLAz0orGmRTHzAcAbZuMvJ1c2hkl8UCHuriwd
	2+mw3Qig==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>,
	Hanna Reitz <hreitz@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	=?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Richard Henderson <richard.henderson@linaro.org>,
	Eduardo Habkost <eduardo@habkost.net>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Jason Wang <jasowang@redhat.com>,
	Marcelo Tosatti <mtosatti@redhat.com>,
	Cleber Rosa <crosa@redhat.com>,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
	Wainer dos Santos Moschetta <wainersm@redhat.com>,
	Beraldo Leal <bleal@redhat.com>,
	qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org,
	kvm@vger.kernel.org,
	Bernhard Beschow <shentey@gmail.com>,
	Joel Upham <jupham125@gmail.com>
Subject: [PATCH v2 06/24] i386/xen: Ignore VCPU_SSHOTTMR_future flag in set_singleshot_timer()
Date: Thu, 19 Oct 2023 16:40:02 +0100
Message-Id: <20231019154020.99080-7-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231019154020.99080-1-dwmw2@infradead.org>
References: <20231019154020.99080-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by desiato.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

Upstream Xen now ignores this flag¹, since the only guest kernel ever to
use it was buggy.

¹ https://xenbits.xen.org/gitweb/?p=xen.git;a=commitdiff;h=19c6cbd909

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
Reviewed-by: Paul Durrant <paul@xen.org>
---
 target/i386/kvm/xen-emu.c | 20 ++++++++++----------
 1 file changed, 10 insertions(+), 10 deletions(-)

diff --git a/target/i386/kvm/xen-emu.c b/target/i386/kvm/xen-emu.c
index 3ba636b09a..477e93cd92 100644
--- a/target/i386/kvm/xen-emu.c
+++ b/target/i386/kvm/xen-emu.c
@@ -1076,17 +1076,13 @@ static int vcpuop_stop_periodic_timer(CPUState *target)
  * Must always be called with xen_timers_lock held.
  */
 static int do_set_singleshot_timer(CPUState *cs, uint64_t timeout_abs,
-                                   bool future, bool linux_wa)
+                                   bool linux_wa)
 {
     CPUX86State *env = &X86_CPU(cs)->env;
     int64_t now = kvm_get_current_ns();
     int64_t qemu_now = qemu_clock_get_ns(QEMU_CLOCK_VIRTUAL);
     int64_t delta = timeout_abs - now;
 
-    if (future && timeout_abs < now) {
-        return -ETIME;
-    }
-
     if (linux_wa && unlikely((int64_t)timeout_abs < 0 ||
                              (delta > 0 && (uint32_t)(delta >> 50) != 0))) {
         /*
@@ -1128,9 +1124,13 @@ static int vcpuop_set_singleshot_timer(CPUState *cs, uint64_t arg)
     }
 
     QEMU_LOCK_GUARD(&X86_CPU(cs)->env.xen_timers_lock);
-    return do_set_singleshot_timer(cs, sst.timeout_abs_ns,
-                                   !!(sst.flags & VCPU_SSHOTTMR_future),
-                                   false);
+
+    /*
+     * We ignore the VCPU_SSHOTTMR_future flag, just as Xen now does.
+     * The only guest that ever used it, got it wrong.
+     * https://xenbits.xen.org/gitweb/?p=xen.git;a=commitdiff;h=19c6cbd909
+     */
+    return do_set_singleshot_timer(cs, sst.timeout_abs_ns, false);
 }
 
 static int vcpuop_stop_singleshot_timer(CPUState *cs)
@@ -1155,7 +1155,7 @@ static bool kvm_xen_hcall_set_timer_op(struct kvm_xen_exit *exit, X86CPU *cpu,
         err = vcpuop_stop_singleshot_timer(CPU(cpu));
     } else {
         QEMU_LOCK_GUARD(&X86_CPU(cpu)->env.xen_timers_lock);
-        err = do_set_singleshot_timer(CPU(cpu), timeout, false, true);
+        err = do_set_singleshot_timer(CPU(cpu), timeout, true);
     }
     exit->u.hcall.result = err;
     return true;
@@ -1843,7 +1843,7 @@ int kvm_put_xen_state(CPUState *cs)
         QEMU_LOCK_GUARD(&env->xen_timers_lock);
         if (env->xen_singleshot_timer_ns) {
             ret = do_set_singleshot_timer(cs, env->xen_singleshot_timer_ns,
-                                    false, false);
+                                          false);
             if (ret < 0) {
                 return ret;
             }
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Thu Oct 19 15:43:28 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 15:43:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619432.964590 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtVBG-0000Lo-Oi; Thu, 19 Oct 2023 15:43:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619432.964590; Thu, 19 Oct 2023 15:43: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 1qtVBG-0000Ld-LD; Thu, 19 Oct 2023 15:43:26 +0000
Received: by outflank-mailman (input) for mailman id 619432;
 Thu, 19 Oct 2023 15:43: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=m+UH=GB=desiato.srs.infradead.org=BATV+298c059cf2aa39b7dc34+7361+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qtV8w-0005v1-LU
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 15:41:02 +0000
Received: from desiato.infradead.org (desiato.infradead.org
 [2001:8b0:10b:1:d65d:64ff:fe57:4e05])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id e7db4f75-6e95-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 17:41:01 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by desiato.infradead.org with esmtpsa (Exim 4.96 #2 (Red Hat Linux))
 id 1qtV8O-009yCt-0Q; Thu, 19 Oct 2023 15:40:28 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1qtV8M-000Pub-2G; Thu, 19 Oct 2023 16:40:26 +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
X-Inumbo-ID: e7db4f75-6e95-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=desiato.20200630; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=QuCU5QcXms7wszQodB9qpu2o64rddhbI7UNM0sYshFY=; b=DvJY9tUlPJmX/25c9m+Tvd99uP
	JzddgymEh1I1Dv6gpVQ5LV/S/XbgbYYk6CN13PMz7jjGipM0lnO1xDF4RUebg6QShjdY7qzNA8swG
	T8LjzOrw/4c+shdbobyolxbHs+MNjYG73Mofjt2U4SvIl5ZNCDhOlEaJx5xC2Jfqq1JTmgodR+wgD
	Af5cZuMreaoVDxQsR9v0/8UmdTv3I7PnrkZkGCp5oVOlK8DvcN9IaBAa5IBsRlFjp+c8l2OfBIJX2
	1wzl+IiMV6vkmISEPxJtuWqgHilomW0XqCSNwHKHBSwmxjhwZ+PLFfntKrLv1nGaErD02sgaEmcqL
	yNPYomlw==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>,
	Hanna Reitz <hreitz@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	=?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Richard Henderson <richard.henderson@linaro.org>,
	Eduardo Habkost <eduardo@habkost.net>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Jason Wang <jasowang@redhat.com>,
	Marcelo Tosatti <mtosatti@redhat.com>,
	Cleber Rosa <crosa@redhat.com>,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
	Wainer dos Santos Moschetta <wainersm@redhat.com>,
	Beraldo Leal <bleal@redhat.com>,
	qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org,
	kvm@vger.kernel.org,
	Bernhard Beschow <shentey@gmail.com>,
	Joel Upham <jupham125@gmail.com>
Subject: [PATCH v2 14/24] hw/xen: update Xen console to XenDevice model
Date: Thu, 19 Oct 2023 16:40:10 +0100
Message-Id: <20231019154020.99080-15-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231019154020.99080-1-dwmw2@infradead.org>
References: <20231019154020.99080-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by desiato.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

This allows (non-primary) console devices to be created on the command
line and hotplugged.

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 hw/char/trace-events        |   8 +
 hw/char/xen_console.c       | 529 +++++++++++++++++++++++++++---------
 hw/xen/xen-legacy-backend.c |   1 -
 3 files changed, 408 insertions(+), 130 deletions(-)

diff --git a/hw/char/trace-events b/hw/char/trace-events
index babf4d35ea..7a398c82a5 100644
--- a/hw/char/trace-events
+++ b/hw/char/trace-events
@@ -105,3 +105,11 @@ cadence_uart_baudrate(unsigned baudrate) "baudrate %u"
 # sh_serial.c
 sh_serial_read(char *id, unsigned size, uint64_t offs, uint64_t val) " %s size %d offs 0x%02" PRIx64 " -> 0x%02" PRIx64
 sh_serial_write(char *id, unsigned size, uint64_t offs, uint64_t val) "%s size %d offs 0x%02" PRIx64 " <- 0x%02" PRIx64
+
+# xen_console.c
+xen_console_connect(unsigned int idx, unsigned int ring_ref, unsigned int port, unsigned int limit) "idx %u ring_ref %u port %u limit %u"
+xen_console_disconnect(unsigned int idx) "idx %u"
+xen_console_unrealize(unsigned int idx) "idx %u"
+xen_console_realize(unsigned int idx, const char *chrdev) "idx %u chrdev %s"
+xen_console_device_create(unsigned int idx) "idx %u"
+xen_console_device_destroy(unsigned int idx) "idx %u"
diff --git a/hw/char/xen_console.c b/hw/char/xen_console.c
index 810dae3f44..f4c70709c7 100644
--- a/hw/char/xen_console.c
+++ b/hw/char/xen_console.c
@@ -20,15 +20,20 @@
  */
 
 #include "qemu/osdep.h"
+#include "qemu/cutils.h"
 #include <sys/select.h>
 #include <termios.h>
 
 #include "qapi/error.h"
 #include "sysemu/sysemu.h"
 #include "chardev/char-fe.h"
-#include "hw/xen/xen-legacy-backend.h"
-
+#include "hw/xen/xen-backend.h"
+#include "hw/xen/xen-bus-helper.h"
+#include "hw/qdev-properties.h"
+#include "hw/qdev-properties-system.h"
 #include "hw/xen/interface/io/console.h"
+#include "hw/xen/interface/io/xs_wire.h"
+#include "trace.h"
 
 struct buffer {
     uint8_t *data;
@@ -39,16 +44,22 @@ struct buffer {
 };
 
 struct XenConsole {
-    struct XenLegacyDevice  xendev;  /* must be first */
+    struct XenDevice  xendev;  /* must be first */
+    XenEventChannel   *event_channel;
+    int               dev;
     struct buffer     buffer;
-    char              console[XEN_BUFSIZE];
-    int               ring_ref;
+    char              *fe_path;
+    unsigned int      ring_ref;
     void              *sring;
     CharBackend       chr;
     int               backlog;
 };
+typedef struct XenConsole XenConsole;
+
+#define TYPE_XEN_CONSOLE_DEVICE "xen-console"
+OBJECT_DECLARE_SIMPLE_TYPE(XenConsole, XEN_CONSOLE_DEVICE)
 
-static void buffer_append(struct XenConsole *con)
+static bool buffer_append(XenConsole *con)
 {
     struct buffer *buffer = &con->buffer;
     XENCONS_RING_IDX cons, prod, size;
@@ -60,7 +71,7 @@ static void buffer_append(struct XenConsole *con)
 
     size = prod - cons;
     if ((size == 0) || (size > sizeof(intf->out)))
-        return;
+        return false;
 
     if ((buffer->capacity - buffer->size) < size) {
         buffer->capacity += (size + 1024);
@@ -73,7 +84,7 @@ static void buffer_append(struct XenConsole *con)
 
     xen_mb();
     intf->out_cons = cons;
-    xen_pv_send_notify(&con->xendev);
+    xen_device_notify_event_channel(XEN_DEVICE(con), con->event_channel, NULL);
 
     if (buffer->max_capacity &&
         buffer->size > buffer->max_capacity) {
@@ -89,6 +100,7 @@ static void buffer_append(struct XenConsole *con)
         if (buffer->consumed > buffer->max_capacity - over)
             buffer->consumed = buffer->max_capacity - over;
     }
+    return true;
 }
 
 static void buffer_advance(struct buffer *buffer, size_t len)
@@ -100,7 +112,7 @@ static void buffer_advance(struct buffer *buffer, size_t len)
     }
 }
 
-static int ring_free_bytes(struct XenConsole *con)
+static int ring_free_bytes(XenConsole *con)
 {
     struct xencons_interface *intf = con->sring;
     XENCONS_RING_IDX cons, prod, space;
@@ -118,13 +130,13 @@ static int ring_free_bytes(struct XenConsole *con)
 
 static int xencons_can_receive(void *opaque)
 {
-    struct XenConsole *con = opaque;
+    XenConsole *con = opaque;
     return ring_free_bytes(con);
 }
 
 static void xencons_receive(void *opaque, const uint8_t *buf, int len)
 {
-    struct XenConsole *con = opaque;
+    XenConsole *con = opaque;
     struct xencons_interface *intf = con->sring;
     XENCONS_RING_IDX prod;
     int i, max;
@@ -141,10 +153,10 @@ static void xencons_receive(void *opaque, const uint8_t *buf, int len)
     }
     xen_wmb();
     intf->in_prod = prod;
-    xen_pv_send_notify(&con->xendev);
+    xen_device_notify_event_channel(XEN_DEVICE(con), con->event_channel, NULL);
 }
 
-static void xencons_send(struct XenConsole *con)
+static bool xencons_send(XenConsole *con)
 {
     ssize_t len, size;
 
@@ -159,174 +171,433 @@ static void xencons_send(struct XenConsole *con)
     if (len < 1) {
         if (!con->backlog) {
             con->backlog = 1;
-            xen_pv_printf(&con->xendev, 1,
-                          "backlog piling up, nobody listening?\n");
         }
     } else {
         buffer_advance(&con->buffer, len);
         if (con->backlog && len == size) {
             con->backlog = 0;
-            xen_pv_printf(&con->xendev, 1, "backlog is gone\n");
         }
     }
+    return len > 0;
 }
 
 /* -------------------------------------------------------------------- */
 
-static int store_con_info(struct XenConsole *con)
+static bool con_event(void *_xendev)
 {
-    Chardev *cs = qemu_chr_fe_get_driver(&con->chr);
-    char *pts = NULL;
-    char *dom_path;
-    g_autoptr(GString) path = NULL;
+    XenConsole *con = XEN_CONSOLE_DEVICE(_xendev);
+    bool done_something;
+
+    done_something = buffer_append(con);
+
+    if (con->buffer.size - con->buffer.consumed) {
+        done_something |= xencons_send(con);
+    }
+    return done_something;
+}
 
-    /* Only continue if we're talking to a pty. */
-    if (!CHARDEV_IS_PTY(cs)) {
-        return 0;
+/* -------------------------------------------------------------------- */
+
+static bool xen_console_connect(XenDevice *xendev, Error **errp)
+{
+    XenConsole *con = XEN_CONSOLE_DEVICE(xendev);
+    unsigned int port, limit;
+
+    if (xen_device_frontend_scanf(xendev, "ring-ref", "%u",
+                                  &con->ring_ref) != 1) {
+        error_setg(errp, "failed to read ring-ref");
+        return false;
     }
-    pts = cs->filename + 4;
 
-    dom_path = qemu_xen_xs_get_domain_path(xenstore, xen_domid);
-    if (!dom_path) {
-        return 0;
+    if (xen_device_frontend_scanf(xendev, "port", "%u", &port) != 1) {
+        error_setg(errp, "failed to read remote port");
+        return false;
     }
 
-    path = g_string_new(dom_path);
-    free(dom_path);
+    if (xen_device_frontend_scanf(xendev, "limit", "%u", &limit) == 1) {
+        con->buffer.max_capacity = limit;
+    }
 
-    if (con->xendev.dev) {
-        g_string_append_printf(path, "/device/console/%d", con->xendev.dev);
+    if (!con->dev) {
+        xen_pfn_t mfn = (xen_pfn_t)con->ring_ref;
+        con->sring = qemu_xen_foreignmem_map(xendev->frontend_id, NULL,
+                                             PROT_READ | PROT_WRITE,
+                                             1, &mfn, NULL);
+        if (!con->sring) {
+            error_setg(errp, "failed to map console page");
+            return false;
+        }
     } else {
-        g_string_append(path, "/console");
+        con->sring = xen_device_map_grant_refs(xendev,
+                                               &con->ring_ref, 1,
+                                               PROT_READ | PROT_WRITE,
+                                               errp);
+        if (!con->sring) {
+            error_prepend(errp, "failed to map grant ref: ");
+            return false;
+        }
     }
-    g_string_append(path, "/tty");
 
-    if (xenstore_write_str(con->console, path->str, pts)) {
-        fprintf(stderr, "xenstore_write_str for '%s' fail", path->str);
-        return -1;
+    con->event_channel = xen_device_bind_event_channel(xendev, port,
+                                                       con_event,
+                                                       con,
+                                                       errp);
+    if (!con->event_channel) {
+        return false;
     }
-    return 0;
+
+    trace_xen_console_connect(con->dev, con->ring_ref, port,
+                              con->buffer.max_capacity);
+
+    qemu_chr_fe_set_handlers(&con->chr, xencons_can_receive,
+                             xencons_receive, NULL, NULL, con, NULL,
+                             true);
+
+    return true;
 }
 
-static int con_init(struct XenLegacyDevice *xendev)
+static void xen_console_disconnect(XenDevice *xendev, Error **errp)
 {
-    struct XenConsole *con = container_of(xendev, struct XenConsole, xendev);
-    char *type, *dom, label[32];
-    int ret = 0;
-    const char *output;
-
-    /* setup */
-    dom = qemu_xen_xs_get_domain_path(xenstore, con->xendev.dom);
-    if (!xendev->dev) {
-        snprintf(con->console, sizeof(con->console), "%s/console", dom);
-    } else {
-        snprintf(con->console, sizeof(con->console), "%s/device/console/%d", dom, xendev->dev);
+    XenConsole *con = XEN_CONSOLE_DEVICE(xendev);
+
+    trace_xen_console_disconnect(con->dev);
+
+    qemu_chr_fe_set_handlers(&con->chr, NULL, NULL, NULL, NULL,
+                             con, NULL, true);
+
+    if (con->event_channel) {
+        xen_device_unbind_event_channel(xendev, con->event_channel,
+                                        errp);
+        con->event_channel = NULL;
     }
-    free(dom);
 
-    type = xenstore_read_str(con->console, "type");
-    if (!type || strcmp(type, "ioemu") != 0) {
-        xen_pv_printf(xendev, 1, "not for me (type=%s)\n", type);
-        ret = -1;
-        goto out;
+    if (con->sring) {
+        if (!con->dev) {
+            qemu_xen_foreignmem_unmap(con->sring, 1);
+        } else {
+            xen_device_unmap_grant_refs(xendev, con->sring,
+                                        &con->ring_ref, 1, errp);
+        }
+        con->sring = NULL;
     }
+}
 
-    output = xenstore_read_str(con->console, "output");
+static void xen_console_frontend_changed(XenDevice *xendev,
+                                         enum xenbus_state frontend_state,
+                                         Error **errp)
+{
+    ERRP_GUARD();
+    enum xenbus_state backend_state = xen_device_backend_get_state(xendev);
+
+    switch (frontend_state) {
+    case XenbusStateInitialised:
+    case XenbusStateConnected:
+        if (backend_state == XenbusStateConnected) {
+            break;
+        }
 
-    /* no Xen override, use qemu output device */
-    if (output == NULL) {
-        if (con->xendev.dev) {
-            qemu_chr_fe_init(&con->chr, serial_hd(con->xendev.dev),
-                             &error_abort);
+        xen_console_disconnect(xendev, errp);
+        if (*errp) {
+            break;
         }
-    } else {
-        snprintf(label, sizeof(label), "xencons%d", con->xendev.dev);
-        qemu_chr_fe_init(&con->chr,
-                         /*
-                          * FIXME: sure we want to support implicit
-                          * muxed monitors here?
-                          */
-                         qemu_chr_new_mux_mon(label, output, NULL),
-                         &error_abort);
+
+        if (!xen_console_connect(xendev, errp)) {
+            xen_device_backend_set_state(xendev, XenbusStateClosing);
+            break;
+        }
+
+        xen_device_backend_set_state(xendev, XenbusStateConnected);
+        break;
+
+    case XenbusStateClosing:
+        xen_device_backend_set_state(xendev, XenbusStateClosing);
+        break;
+
+    case XenbusStateClosed:
+    case XenbusStateUnknown:
+        xen_console_disconnect(xendev, errp);
+        if (*errp) {
+            break;
+        }
+
+        xen_device_backend_set_state(xendev, XenbusStateClosed);
+        break;
+
+    default:
+        break;
     }
+}
 
-    store_con_info(con);
+static char *xen_console_get_name(XenDevice *xendev, Error **errp)
+{
+    XenConsole *con = XEN_CONSOLE_DEVICE(xendev);
+
+    if (con->dev == -1) {
+        XenBus *xenbus = XEN_BUS(qdev_get_parent_bus(DEVICE(xendev)));
+        char fe_path[XENSTORE_ABS_PATH_MAX + 1];
+        char *value;
+        int idx = 1;
+
+        /* Theoretically we could go up to INT_MAX here but that's overkill */
+        while (idx < 100) {
+            snprintf(fe_path, sizeof(fe_path),
+                     "/local/domain/%u/device/console/%u",
+                     xendev->frontend_id, idx);
+            value = qemu_xen_xs_read(xenbus->xsh, XBT_NULL, fe_path, NULL);
+            if (!value) {
+                if (errno == ENOENT) {
+                    con->dev = idx;
+                    goto found;
+                }
+                error_setg(errp, "cannot read %s: %s", fe_path,
+                           strerror(errno));
+                return NULL;
+            }
+            free(value);
+            idx++;
+        }
+        error_setg(errp, "cannot find device index for console device");
+        return NULL;
+    }
+ found:
+    return g_strdup_printf("%u", con->dev);
+}
 
-out:
-    g_free(type);
-    return ret;
+static void xen_console_unrealize(XenDevice *xendev)
+{
+    XenConsole *con = XEN_CONSOLE_DEVICE(xendev);
+
+    trace_xen_console_unrealize(con->dev);
+
+    /* Disconnect from the frontend in case this has not already happened */
+    xen_console_disconnect(xendev, NULL);
+
+    qemu_chr_fe_deinit(&con->chr, false);
 }
 
-static int con_initialise(struct XenLegacyDevice *xendev)
+static void xen_console_realize(XenDevice *xendev, Error **errp)
 {
-    struct XenConsole *con = container_of(xendev, struct XenConsole, xendev);
-    int limit;
-
-    if (xenstore_read_int(con->console, "ring-ref", &con->ring_ref) == -1)
-        return -1;
-    if (xenstore_read_int(con->console, "port", &con->xendev.remote_port) == -1)
-        return -1;
-    if (xenstore_read_int(con->console, "limit", &limit) == 0)
-        con->buffer.max_capacity = limit;
+    ERRP_GUARD();
+    XenConsole *con = XEN_CONSOLE_DEVICE(xendev);
+    Chardev *cs = qemu_chr_fe_get_driver(&con->chr);
+    unsigned int u;
 
-    if (!xendev->dev) {
-        xen_pfn_t mfn = con->ring_ref;
-        con->sring = qemu_xen_foreignmem_map(con->xendev.dom, NULL,
-                                             PROT_READ | PROT_WRITE,
-                                             1, &mfn, NULL);
+    if (!cs) {
+        error_setg(errp, "no backing character device");
+        return;
+    }
+
+    if (con->dev == -1) {
+        error_setg(errp, "no device index provided");
+        return;
+    }
+
+    /*
+     * The Xen primary console is special. The ring-ref is actually a GFN to
+     * be mapped directly as foreignmem (not a grant ref), and the guest port
+     * was allocated *for* the guest by the toolstack. The guest gets these
+     * through HVMOP_get_param and can use the console long before it's got
+     * XenStore up and running. We cannot create those for a Xen guest.
+     */
+    if (!con->dev) {
+        if (xen_device_frontend_scanf(xendev, "ring-ref", "%u", &u) != 1 ||
+            xen_device_frontend_scanf(xendev, "port", "%u", &u) != 1) {
+            error_setg(errp, "cannot create primary Xen console");
+            return;
+        }
+    }
+
+    trace_xen_console_realize(con->dev, object_get_typename(OBJECT(cs)));
+
+    if (CHARDEV_IS_PTY(cs)) {
+        /* Strip the leading 'pty:' */
+        xen_device_frontend_printf(xendev, "tty", "%s", cs->filename + 4);
+    }
+
+    /* No normal PV driver initialization for the primary console */
+    if (!con->dev) {
+        xen_console_connect(xendev, errp);
+    }
+}
+
+static char *console_frontend_path(struct qemu_xs_handle *xenstore,
+                                   unsigned int dom_id, unsigned int dev)
+{
+    if (!dev) {
+        return g_strdup_printf("/local/domain/%u/console", dom_id);
     } else {
-        con->sring = xen_be_map_grant_ref(xendev, con->ring_ref,
-                                          PROT_READ | PROT_WRITE);
+        return g_strdup_printf("/local/domain/%u/device/console/%u", dom_id,
+                               dev);
     }
-    if (!con->sring)
-        return -1;
+}
 
-    xen_be_bind_evtchn(&con->xendev);
-    qemu_chr_fe_set_handlers(&con->chr, xencons_can_receive,
-                             xencons_receive, NULL, NULL, con, NULL, true);
-
-    xen_pv_printf(xendev, 1,
-                  "ring mfn %d, remote port %d, local port %d, limit %zd\n",
-                  con->ring_ref,
-                  con->xendev.remote_port,
-                  con->xendev.local_port,
-                  con->buffer.max_capacity);
-    return 0;
+static char *xen_console_get_frontend_path(XenDevice *xendev, Error **errp)
+{
+    XenConsole *con = XEN_CONSOLE_DEVICE(xendev);
+    XenBus *xenbus = XEN_BUS(qdev_get_parent_bus(DEVICE(xendev)));
+    char *ret = console_frontend_path(xenbus->xsh, xendev->frontend_id,
+                                      con->dev);
+
+    if (!ret) {
+        error_setg(errp, "failed to create frontend path");
+    }
+    return ret;
 }
 
-static void con_disconnect(struct XenLegacyDevice *xendev)
+
+static Property xen_console_properties[] = {
+    DEFINE_PROP_CHR("chardev", XenConsole, chr),
+    DEFINE_PROP_INT32("idx", XenConsole, dev, -1),
+    DEFINE_PROP_END_OF_LIST(),
+};
+
+static void xen_console_class_init(ObjectClass *class, void *data)
 {
-    struct XenConsole *con = container_of(xendev, struct XenConsole, xendev);
+    DeviceClass *dev_class = DEVICE_CLASS(class);
+    XenDeviceClass *xendev_class = XEN_DEVICE_CLASS(class);
+
+    xendev_class->backend = "console";
+    xendev_class->device = "console";
+    xendev_class->get_name = xen_console_get_name;
+    xendev_class->realize = xen_console_realize;
+    xendev_class->frontend_changed = xen_console_frontend_changed;
+    xendev_class->unrealize = xen_console_unrealize;
+    xendev_class->get_frontend_path = xen_console_get_frontend_path;
+
+    device_class_set_props(dev_class, xen_console_properties);
+}
 
-    qemu_chr_fe_deinit(&con->chr, false);
-    xen_pv_unbind_evtchn(&con->xendev);
+static const TypeInfo xen_console_type_info = {
+    .name = TYPE_XEN_CONSOLE_DEVICE,
+    .parent = TYPE_XEN_DEVICE,
+    .instance_size = sizeof(XenConsole),
+    .class_init = xen_console_class_init,
+};
 
-    if (con->sring) {
-        if (!xendev->dev) {
-            qemu_xen_foreignmem_unmap(con->sring, 1);
-        } else {
-            xen_be_unmap_grant_ref(xendev, con->sring, con->ring_ref);
+static void xen_console_register_types(void)
+{
+    type_register_static(&xen_console_type_info);
+}
+
+type_init(xen_console_register_types)
+
+/* Called to instantiate a XenConsole when the backend is detected. */
+static void xen_console_device_create(XenBackendInstance *backend,
+                                      QDict *opts, Error **errp)
+{
+    ERRP_GUARD();
+    XenBus *xenbus = xen_backend_get_bus(backend);
+    const char *name = xen_backend_get_name(backend);
+    unsigned long number;
+    char *fe = NULL, *type = NULL, *output = NULL;
+    char label[32];
+    XenDevice *xendev = NULL;
+    XenConsole *con;
+    Chardev *cd = NULL;
+    struct qemu_xs_handle *xsh = xenbus->xsh;
+
+    if (qemu_strtoul(name, NULL, 10, &number) || number > INT_MAX) {
+        error_setg(errp, "failed to parse name '%s'", name);
+        goto fail;
+    }
+
+    trace_xen_console_device_create(number);
+
+    fe = console_frontend_path(xsh, xen_domid, number);
+    if (fe == NULL) {
+        error_setg(errp, "failed to generate frontend path");
+        goto fail;
+    }
+
+    if (xs_node_scanf(xsh, XBT_NULL, fe, "type", errp, "%ms", &type) != 1) {
+        error_prepend(errp, "failed to read console device type: ");
+        goto fail;
+    }
+
+    if (strcmp(type, "ioemu")) {
+        error_setg(errp, "declining to handle console type '%s'",
+                   type);
+        goto fail;
+    }
+
+    xendev = XEN_DEVICE(qdev_new(TYPE_XEN_CONSOLE_DEVICE));
+    con = XEN_CONSOLE_DEVICE(xendev);
+
+    con->dev = number;
+
+    snprintf(label, sizeof(label), "xencons%ld", number);
+
+    if (xs_node_scanf(xsh, XBT_NULL, fe, "output", NULL, "%ms", &output) == 1) {
+        /*
+         * FIXME: sure we want to support implicit
+         * muxed monitors here?
+         */
+        cd = qemu_chr_new_mux_mon(label, output, NULL);
+        if (!cd) {
+            error_setg(errp, "console: No valid chardev found at '%s': ",
+                       output);
+            goto fail;
         }
-        con->sring = NULL;
+    } else if (number) {
+        cd = serial_hd(number);
+        if (!cd) {
+            error_prepend(errp, "console: No serial device #%ld found: ",
+                          number);
+            goto fail;
+        }
+    } else {
+        /* No 'output' node on primary console: use null. */
+        cd = qemu_chr_new(label, "null", NULL);
+        if (!cd) {
+            error_setg(errp, "console: failed to create null device");
+            goto fail;
+        }
+    }
+
+    if (!qemu_chr_fe_init(&con->chr, cd, errp)) {
+        error_prepend(errp, "console: failed to initialize backing chardev: ");
+        goto fail;
+    }
+
+    if (qdev_realize_and_unref(DEVICE(xendev), BUS(xenbus), errp)) {
+        xen_backend_set_device(backend, xendev);
+        goto done;
+    }
+
+    error_prepend(errp, "realization of console device %lu failed: ",
+                  number);
+
+ fail:
+    if (xendev) {
+        object_unparent(OBJECT(xendev));
     }
+ done:
+    g_free(fe);
+    free(type);
+    free(output);
 }
 
-static void con_event(struct XenLegacyDevice *xendev)
+static void xen_console_device_destroy(XenBackendInstance *backend,
+                                       Error **errp)
 {
-    struct XenConsole *con = container_of(xendev, struct XenConsole, xendev);
+    ERRP_GUARD();
+    XenDevice *xendev = xen_backend_get_device(backend);
+    XenConsole *con = XEN_CONSOLE_DEVICE(xendev);
 
-    buffer_append(con);
-    if (con->buffer.size - con->buffer.consumed)
-        xencons_send(con);
-}
+    trace_xen_console_device_destroy(con->dev);
 
-/* -------------------------------------------------------------------- */
+    object_unparent(OBJECT(xendev));
+}
 
-struct XenDevOps xen_console_ops = {
-    .size       = sizeof(struct XenConsole),
-    .flags      = DEVOPS_FLAG_IGNORE_STATE|DEVOPS_FLAG_NEED_GNTDEV,
-    .init       = con_init,
-    .initialise = con_initialise,
-    .event      = con_event,
-    .disconnect = con_disconnect,
+static const XenBackendInfo xen_console_backend_info  = {
+    .type = "console",
+    .create = xen_console_device_create,
+    .destroy = xen_console_device_destroy,
 };
+
+static void xen_console_register_backend(void)
+{
+    xen_backend_register(&xen_console_backend_info);
+}
+
+xen_backend_init(xen_console_register_backend);
diff --git a/hw/xen/xen-legacy-backend.c b/hw/xen/xen-legacy-backend.c
index 4ded3cec23..124dd5f3d6 100644
--- a/hw/xen/xen-legacy-backend.c
+++ b/hw/xen/xen-legacy-backend.c
@@ -623,7 +623,6 @@ void xen_be_init(void)
 
     xen_set_dynamic_sysbus();
 
-    xen_be_register("console", &xen_console_ops);
     xen_be_register("vkbd", &xen_kbdmouse_ops);
 #ifdef CONFIG_VIRTFS
     xen_be_register("9pfs", &xen_9pfs_ops);
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Thu Oct 19 15:43:49 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 15:43:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619442.964600 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtVBd-0001nl-5c; Thu, 19 Oct 2023 15:43:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619442.964600; Thu, 19 Oct 2023 15: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 1qtVBd-0001nc-1Y; Thu, 19 Oct 2023 15:43:49 +0000
Received: by outflank-mailman (input) for mailman id 619442;
 Thu, 19 Oct 2023 15:43: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=b9Lg=GB=casper.srs.infradead.org=BATV+06ae5fa416ae820d9d5a+7361+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qtV8s-0005v1-8J
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 15:40:58 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id e57cd846-6e95-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 17:40:57 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qtV8N-007ot2-OQ; Thu, 19 Oct 2023 15:40:27 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1qtV8N-000PvA-1E; Thu, 19 Oct 2023 16:40:27 +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
X-Inumbo-ID: e57cd846-6e95-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=jF67pHzxnrAWKEiszZxt5RKIgpusteGMnWw5yDJqImc=; b=imohxcfvgtCWq+2zIFKG49ThyV
	XP3T0mbUzGafIoUgVEIf2465cbSeAm78X1hwmUxQahR16j7YiaU4r0Gk2qVLKbmHzaZVMBYb+A+UH
	19tWH9EOZYj7xm2ZyAHOAU+Oyb5chRdqPvM9ERgCQWIpvyTuq2IBluPudM0rAaGlDAMqZjkEli+RS
	YpRi2jDv2eTzGGsc+5wCfgmtOS5HAHxT9wM80mUGHemr5aAQ/ItWqmoFJ6HYSwsPZlMEWszuVQlDt
	2DjW5zMibQLcUhji1knXOysxeWn2uzpvR108GmHMt2vpyQopheQTAB7sN5iR1UN0GQOFkwVEIS3f9
	R4Td0/QQ==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>,
	Hanna Reitz <hreitz@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	=?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Richard Henderson <richard.henderson@linaro.org>,
	Eduardo Habkost <eduardo@habkost.net>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Jason Wang <jasowang@redhat.com>,
	Marcelo Tosatti <mtosatti@redhat.com>,
	Cleber Rosa <crosa@redhat.com>,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
	Wainer dos Santos Moschetta <wainersm@redhat.com>,
	Beraldo Leal <bleal@redhat.com>,
	qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org,
	kvm@vger.kernel.org,
	Bernhard Beschow <shentey@gmail.com>,
	Joel Upham <jupham125@gmail.com>
Subject: [PATCH v2 22/24] tests/avocado: switch to using xen-net-device for Xen guest tests
Date: Thu, 19 Oct 2023 16:40:18 +0100
Message-Id: <20231019154020.99080-23-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231019154020.99080-1-dwmw2@infradead.org>
References: <20231019154020.99080-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

Fix the filename in the MAINTAINERS file too.

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 MAINTAINERS                    | 2 +-
 tests/avocado/kvm_xen_guest.py | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/MAINTAINERS b/MAINTAINERS
index 9bd4fe378d..d74043d8a9 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -476,7 +476,7 @@ S: Supported
 F: include/sysemu/kvm_xen.h
 F: target/i386/kvm/xen*
 F: hw/i386/kvm/xen*
-F: tests/avocado/xen_guest.py
+F: tests/avocado/kvm_xen_guest.py
 
 Guest CPU Cores (other accelerators)
 ------------------------------------
diff --git a/tests/avocado/kvm_xen_guest.py b/tests/avocado/kvm_xen_guest.py
index 5391283113..f098028eeb 100644
--- a/tests/avocado/kvm_xen_guest.py
+++ b/tests/avocado/kvm_xen_guest.py
@@ -61,7 +61,7 @@ def run_and_check(self):
                          '-append', self.kernel_params,
                          '-drive',  f"file={self.rootfs},if=none,format=raw,id=drv0",
                          '-device', 'xen-disk,drive=drv0,vdev=xvda',
-                         '-device', 'virtio-net-pci,netdev=unet',
+                         '-device', 'xen-net-device,netdev=unet',
                          '-netdev', 'user,id=unet,hostfwd=:127.0.0.1:0-:22')
 
         try:
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Thu Oct 19 15:44:20 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 15:44:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619466.964609 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtVC8-0002si-DB; Thu, 19 Oct 2023 15:44:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619466.964609; Thu, 19 Oct 2023 15:44: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 1qtVC8-0002sb-Aa; Thu, 19 Oct 2023 15:44:20 +0000
Received: by outflank-mailman (input) for mailman id 619466;
 Thu, 19 Oct 2023 15:44: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=m+UH=GB=desiato.srs.infradead.org=BATV+298c059cf2aa39b7dc34+7361+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qtV8r-0005v1-85
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 15:40:57 +0000
Received: from desiato.infradead.org (desiato.infradead.org
 [2001:8b0:10b:1:d65d:64ff:fe57:4e05])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id e392d8ad-6e95-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 17:40:54 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by desiato.infradead.org with esmtpsa (Exim 4.96 #2 (Red Hat Linux))
 id 1qtV8M-009yCg-2Y; Thu, 19 Oct 2023 15:40:27 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1qtV8L-000Ptd-1q; Thu, 19 Oct 2023 16:40:25 +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
X-Inumbo-ID: e392d8ad-6e95-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=desiato.20200630; h=Sender:Content-Transfer-Encoding:
	MIME-Version:Message-Id:Date:Subject:Cc:To:From:Reply-To:Content-Type:
	Content-ID:Content-Description:In-Reply-To:References;
	bh=qoXE4e8dR0GuGW0j5+hJCywYo6vYJihH8CE/sr/39k0=; b=fNShEHmJnqYl4Cf8Ai5HgDM7Wq
	gGMYPibBJf34QJ2TI7/MOGzj4zHcUstX5QGaDnB1ZsM8tljHG87y3uWOu8moqsQuikGAbOtaqOlNW
	DqpTrsSsm+up+0nYD/sP+a043OjR3YFg7GxFQUQnqR6bvZeEMxhnimk2v9XDH90M2BrZHf2euISoI
	2Ct/e8ST/gdSKuPdz06B8DCUSdRgLgScNe9zxfgQgZVJESrm71Y9Ic6BK5/mwNI9IuMoeESwAjYMp
	2qNvYdkHABQff/LxCOkQ1tHMTt4PGKEukRZ+BRqjTIEJQSQupKb9GQ3MNMIOZJABWYDbqDzrtXN9X
	1w8+onkQ==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>,
	Hanna Reitz <hreitz@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	=?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Richard Henderson <richard.henderson@linaro.org>,
	Eduardo Habkost <eduardo@habkost.net>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Jason Wang <jasowang@redhat.com>,
	Marcelo Tosatti <mtosatti@redhat.com>,
	Cleber Rosa <crosa@redhat.com>,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
	Wainer dos Santos Moschetta <wainersm@redhat.com>,
	Beraldo Leal <bleal@redhat.com>,
	qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org,
	kvm@vger.kernel.org,
	Bernhard Beschow <shentey@gmail.com>,
	Joel Upham <jupham125@gmail.com>
Subject: [PATCH v2 0/24] Get Xen PV shim running in Qemu, add net & console
Date: Thu, 19 Oct 2023 16:39:56 +0100
Message-Id: <20231019154020.99080-1-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by desiato.infradead.org. See http://www.infradead.org/rpr.html

Round up a couple of outstanding fixes, add console support and fix up
per-vCPU upcall vector support (which was previously untested), and that
allows us to boot PV guests. Document it.

Having fixed up the per-vCPU upcall vector support, pull in slightly 
newer Xen headers just for the definition of the CPUID bit that lets
us tell the Linux (6.0+) kernel to use it. That'll help with testing.

v2 of this series falls down the rabbithole a little more...

Now I know how to convert drivers to the "new" XenDevice model, let's do 
so for the Xen PV network driver, which has been on the TODO list for a 
while. Fix that up for actual Xen PV guests too (-m xenfv) because 
that's hosed right now even before the conversion.

Fix up net_cleanup() so it doesn't free the NICs from underneath the
device models which own them.

Switch the avocado test to use the Xen PV network device too.

Simplify the user experience for "-device file=IMAGE,if=xen" because
that was offending me.

Update the documentation, and take the opportunity to fix up that bit
about unplug not working on Q35, because I worked out how to do that
when heckling Joel's attempt to do so.

https://git.infradead.org/users/dwmw2/qemu.git/shortlog/refs/heads/xenfv-pv-2

David Woodhouse (24):
      i386/xen: Don't advertise XENFEAT_supervisor_mode_kernel
      i386/xen: fix per-vCPU upcall vector for Xen emulation
      hw/xen: select kernel mode for per-vCPU event channel upcall vector
      hw/xen: don't clear map_track[] in xen_gnttab_reset()
      hw/xen: fix XenStore watch delivery to guest
      i386/xen: Ignore VCPU_SSHOTTMR_future flag in set_singleshot_timer()
      hw/xen: Clean up event channel 'type_val' handling to use union
      include: update Xen public headers to Xen 4.17.2 release
      i386/xen: advertise XEN_HVM_CPUID_UPCALL_VECTOR in CPUID
      hw/xen: populate store frontend nodes with XenStore PFN/port
      hw/xen: automatically assign device index to block devices
      hw/xen: add get_frontend_path() method to XenDeviceClass
      hw/xen: do not repeatedly try to create a failing backend device
      hw/xen: update Xen console to XenDevice model
      hw/xen: add support for Xen primary console in emulated mode
      hw/xen: handle soft reset for primary console
      hw/xen: only remove peers of PCI NICs on unplug
      hw/xen: update Xen PV NIC to XenDevice model
      hw/i386/pc: support '-nic' for xen-net-device
      hw/xenpv: fix '-nic' support for xen-net-device
      net: do not delete nics in net_cleanup()
      tests/avocado: switch to using xen-net-device for Xen guest tests
      xen-platform: unplug AHCI disks
      docs: update Xen-on-KVM documentation

 MAINTAINERS                                    |   2 +-
 blockdev.c                                     |  15 +-
 docs/system/i386/xen.rst                       | 100 +++--
 hw/block/xen-block.c                           |  38 ++
 hw/char/trace-events                           |   8 +
 hw/char/xen_console.c                          | 539 +++++++++++++++++++------
 hw/i386/kvm/meson.build                        |   1 +
 hw/i386/kvm/trace-events                       |   2 +
 hw/i386/kvm/xen-stubs.c                        |   5 +
 hw/i386/kvm/xen_evtchn.c                       | 166 ++++----
 hw/i386/kvm/xen_gnttab.c                       |  32 +-
 hw/i386/kvm/xen_primary_console.c              | 194 +++++++++
 hw/i386/kvm/xen_primary_console.h              |  23 ++
 hw/i386/kvm/xen_xenstore.c                     |  31 +-
 hw/i386/pc.c                                   |  11 +-
 hw/i386/pc_piix.c                              |   2 +-
 hw/i386/pc_q35.c                               |   2 +-
 hw/i386/xen/xen_platform.c                     |  77 ++--
 hw/net/meson.build                             |   2 +-
 hw/net/trace-events                            |  11 +
 hw/net/xen_nic.c                               | 471 +++++++++++++++------
 hw/xen/xen-backend.c                           |  27 +-
 hw/xen/xen-bus.c                               |  17 +-
 hw/xen/xen-legacy-backend.c                    |   1 -
 hw/xen/xen_devconfig.c                         |  56 +--
 hw/xenpv/xen_machine_pv.c                      |  21 +-
 include/hw/i386/pc.h                           |   4 +-
 include/hw/xen/interface/arch-arm.h            |  37 +-
 include/hw/xen/interface/arch-x86/cpuid.h      |  31 +-
 include/hw/xen/interface/arch-x86/xen-x86_32.h |  19 +-
 include/hw/xen/interface/arch-x86/xen-x86_64.h |  19 +-
 include/hw/xen/interface/arch-x86/xen.h        |  26 +-
 include/hw/xen/interface/event_channel.h       |  19 +-
 include/hw/xen/interface/features.h            |  19 +-
 include/hw/xen/interface/grant_table.h         |  19 +-
 include/hw/xen/interface/hvm/hvm_op.h          |  19 +-
 include/hw/xen/interface/hvm/params.h          |  19 +-
 include/hw/xen/interface/io/blkif.h            |  27 +-
 include/hw/xen/interface/io/console.h          |  19 +-
 include/hw/xen/interface/io/fbif.h             |  19 +-
 include/hw/xen/interface/io/kbdif.h            |  19 +-
 include/hw/xen/interface/io/netif.h            |  25 +-
 include/hw/xen/interface/io/protocols.h        |  19 +-
 include/hw/xen/interface/io/ring.h             |  49 +--
 include/hw/xen/interface/io/usbif.h            |  19 +-
 include/hw/xen/interface/io/xenbus.h           |  19 +-
 include/hw/xen/interface/io/xs_wire.h          |  36 +-
 include/hw/xen/interface/memory.h              |  30 +-
 include/hw/xen/interface/physdev.h             |  23 +-
 include/hw/xen/interface/sched.h               |  19 +-
 include/hw/xen/interface/trace.h               |  19 +-
 include/hw/xen/interface/vcpu.h                |  19 +-
 include/hw/xen/interface/version.h             |  19 +-
 include/hw/xen/interface/xen-compat.h          |  19 +-
 include/hw/xen/interface/xen.h                 |  19 +-
 include/hw/xen/xen-backend.h                   |   1 +
 include/hw/xen/xen-bus.h                       |   4 +-
 include/hw/xen/xen-legacy-backend.h            |   3 +-
 include/sysemu/kvm_xen.h                       |   1 +
 net/net.c                                      |  28 +-
 target/i386/kvm/kvm.c                          |   4 +
 target/i386/kvm/xen-emu.c                      |  56 ++-
 tests/avocado/kvm_xen_guest.py                 |   2 +-
 63 files changed, 1585 insertions(+), 1017 deletions(-)




From xen-devel-bounces@lists.xenproject.org Thu Oct 19 15:44:20 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 15:44:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619467.964615 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtVC8-0002wD-M5; Thu, 19 Oct 2023 15:44:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619467.964615; Thu, 19 Oct 2023 15:44: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 1qtVC8-0002v6-H0; Thu, 19 Oct 2023 15:44:20 +0000
Received: by outflank-mailman (input) for mailman id 619467;
 Thu, 19 Oct 2023 15:44: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=m+UH=GB=desiato.srs.infradead.org=BATV+298c059cf2aa39b7dc34+7361+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qtV90-0005v1-Mh
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 15:41:06 +0000
Received: from desiato.infradead.org (desiato.infradead.org
 [2001:8b0:10b:1:d65d:64ff:fe57:4e05])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id ea8fe925-6e95-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 17:41:06 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by desiato.infradead.org with esmtpsa (Exim 4.96 #2 (Red Hat Linux))
 id 1qtV8O-009yD6-0Q; Thu, 19 Oct 2023 15:40:28 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1qtV8N-000PvL-1Y; Thu, 19 Oct 2023 16:40:27 +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
X-Inumbo-ID: ea8fe925-6e95-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=desiato.20200630; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=y4cEjsiuJ1bFNsoLeKKWM6n6686E9X1lvqONj/DtYQs=; b=ifFdukRbinWhGVDRnq/A05lFVT
	yRMvPZCaOprjgEjxSzFGvZEXWNAslFz/v02nsuwTcuGbTuoe87lOE+zeMrgTwkG6/h9ig70OqPSqR
	bfdxd1veEzZP6xazI37SnE2yFKvo6BmAmxHOmfpgbJmQmWgzAQikS/3Je7XInblKRqN2rQnABpZHM
	r6ALLY85CZBVonboM/IQU97amb2vBzbP0DXpc2lJwPkZcqFZXjSKQiiYdRPktO9GOD47jey1wR1Gi
	rH6C+2aLVVFDSEG1nrVG8whrh/Ri6ARPVyH8y1tnjL8ebe/pBpT+chEH4dy2J8n9B7uVQcA/77gtS
	3Q+CFtuA==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>,
	Hanna Reitz <hreitz@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	=?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Richard Henderson <richard.henderson@linaro.org>,
	Eduardo Habkost <eduardo@habkost.net>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Jason Wang <jasowang@redhat.com>,
	Marcelo Tosatti <mtosatti@redhat.com>,
	Cleber Rosa <crosa@redhat.com>,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
	Wainer dos Santos Moschetta <wainersm@redhat.com>,
	Beraldo Leal <bleal@redhat.com>,
	qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org,
	kvm@vger.kernel.org,
	Bernhard Beschow <shentey@gmail.com>,
	Joel Upham <jupham125@gmail.com>
Subject: [PATCH v2 23/24] xen-platform: unplug AHCI disks
Date: Thu, 19 Oct 2023 16:40:19 +0100
Message-Id: <20231019154020.99080-24-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231019154020.99080-1-dwmw2@infradead.org>
References: <20231019154020.99080-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by desiato.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

To support Xen guests using the Q35 chipset, the unplug protocol needs
to also remove AHCI disks.

Make pci_xen_ide_unplug() more generic, iterating over the children
of the PCI device and destroying the "ide-hd" devices. That works the
same for both AHCI and IDE, as does the detection of the primary disk
as unit 0 on the bus named "ide.0".

Then pci_xen_ide_unplug() can be used for both AHCI and IDE devices.

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 hw/i386/xen/xen_platform.c | 68 +++++++++++++++++++++++++-------------
 1 file changed, 45 insertions(+), 23 deletions(-)

diff --git a/hw/i386/xen/xen_platform.c b/hw/i386/xen/xen_platform.c
index e2dd1b536a..ef7d3fc05f 100644
--- a/hw/i386/xen/xen_platform.c
+++ b/hw/i386/xen/xen_platform.c
@@ -169,39 +169,60 @@ static void pci_unplug_nics(PCIBus *bus)
  *
  * [1] https://xenbits.xen.org/gitweb/?p=xen.git;a=blob;f=docs/misc/hvm-emulated-unplug.pandoc
  */
-static void pci_xen_ide_unplug(PCIDevice *d, bool aux)
+struct ide_unplug_state {
+    bool aux;
+    int nr_unplugged;
+};
+
+static int ide_dev_unplug(DeviceState *dev, void *_st)
 {
-    DeviceState *dev = DEVICE(d);
-    PCIIDEState *pci_ide;
-    int i;
+    struct ide_unplug_state *st = _st;
     IDEDevice *idedev;
     IDEBus *idebus;
     BlockBackend *blk;
+    int unit;
+
+    idedev = IDE_DEVICE(object_dynamic_cast(OBJECT(dev), "ide-hd"));
+    if (!idedev) {
+        return 0;
+    }
 
-    pci_ide = PCI_IDE(dev);
+    idebus = IDE_BUS(qdev_get_parent_bus(dev));
 
-    for (i = aux ? 1 : 0; i < 4; i++) {
-        idebus = &pci_ide->bus[i / 2];
-        blk = idebus->ifs[i % 2].blk;
+    unit = (idedev == idebus->slave);
+    assert(unit || idedev == idebus->master);
 
-        if (blk && idebus->ifs[i % 2].drive_kind != IDE_CD) {
-            if (!(i % 2)) {
-                idedev = idebus->master;
-            } else {
-                idedev = idebus->slave;
-            }
+    if (st->aux && !unit && !strcmp(BUS(idebus)->name, "ide.0")) {
+        return 0;
+    }
 
-            blk_drain(blk);
-            blk_flush(blk);
+    blk = idebus->ifs[unit].blk;
+    if (blk) {
+        blk_drain(blk);
+        blk_flush(blk);
 
-            blk_detach_dev(blk, DEVICE(idedev));
-            idebus->ifs[i % 2].blk = NULL;
-            idedev->conf.blk = NULL;
-            monitor_remove_blk(blk);
-            blk_unref(blk);
-        }
+        blk_detach_dev(blk, DEVICE(idedev));
+        idebus->ifs[unit].blk = NULL;
+        idedev->conf.blk = NULL;
+        monitor_remove_blk(blk);
+        blk_unref(blk);
+    }
+
+    object_unparent(OBJECT(dev));
+    st->nr_unplugged++;
+
+    return 0;
+}
+
+static void pci_xen_ide_unplug(PCIDevice *d, bool aux)
+{
+    struct ide_unplug_state st = { aux, 0 };
+    DeviceState *dev = DEVICE(d);
+
+    qdev_walk_children(dev, NULL, NULL, ide_dev_unplug, NULL, &st);
+    if (st.nr_unplugged) {
+        pci_device_reset(d);
     }
-    pci_device_reset(d);
 }
 
 static void unplug_disks(PCIBus *b, PCIDevice *d, void *opaque)
@@ -216,6 +237,7 @@ static void unplug_disks(PCIBus *b, PCIDevice *d, void *opaque)
 
     switch (pci_get_word(d->config + PCI_CLASS_DEVICE)) {
     case PCI_CLASS_STORAGE_IDE:
+    case PCI_CLASS_STORAGE_SATA:
         pci_xen_ide_unplug(d, aux);
         break;
 
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Thu Oct 19 15:44:41 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 15:44:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619481.964629 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtVCS-0004MQ-SS; Thu, 19 Oct 2023 15:44:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619481.964629; Thu, 19 Oct 2023 15: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 1qtVCS-0004MH-OR; Thu, 19 Oct 2023 15:44:40 +0000
Received: by outflank-mailman (input) for mailman id 619481;
 Thu, 19 Oct 2023 15: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=OWLx=GB=flex--seanjc.bounces.google.com=3C04xZQYKCZwOA6JF8CKKCHA.8KITAJ-9ARAHHEOPO.TAJLNKFA8P.KNC@srs-se1.protection.inumbo.net>)
 id 1qtV8z-0006dc-Cd
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 15:41:05 +0000
Received: from mail-yb1-xb4a.google.com (mail-yb1-xb4a.google.com
 [2607:f8b0:4864:20::b4a])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id e6d9037c-6e95-11ee-9b0e-b553b5be7939;
 Thu, 19 Oct 2023 17:41:00 +0200 (CEST)
Received: by mail-yb1-xb4a.google.com with SMTP id
 3f1490d57ef6-d9cad450d5fso1388405276.1
 for <xen-devel@lists.xenproject.org>; Thu, 19 Oct 2023 08:41: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: e6d9037c-6e95-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=google.com; s=20230601; t=1697730060; x=1698334860; darn=lists.xenproject.org;
        h=content-transfer-encoding:cc:to:from:subject:message-id:references
         :mime-version:in-reply-to:date:from:to:cc:subject:date:message-id
         :reply-to;
        bh=adJjdu4zvZG+fV58j+myDpWsiZ+K2SAIeatTq8Py4kU=;
        b=L7MOhmVlO2PDhX1Bue9mu0AIOiEi0llTEy5GXUTEy886zcyaXP737ka4lViY4TOEBP
         PoLcYvJ/NRlOg8LIP3CqReiq+BWpBjP+0n98H9UihDZhC1IgxVJaCUkj2mMjbRQr5cB8
         5Oh30mtXFOeA8Tqiivi0G7SDidVqGpBPF+YvdG80liDKoidyVvUh4LP16TIWZLTgNEJG
         3mCLIOsn5bX4fOPrzFeIrfF6VoSfk0updY0Ee+HJbPuXY2mYGdNwg89+rBbrEo+clanG
         u6kd1rlToxzt0Wjfc3bvYt7iNI+Xl2pUou+6Pw3MS5nZV+SPW6ohSRgXt+MgaOgMFLOF
         frSQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697730060; x=1698334860;
        h=content-transfer-encoding:cc:to:from:subject:message-id:references
         :mime-version:in-reply-to:date:x-gm-message-state:from:to:cc:subject
         :date:message-id:reply-to;
        bh=adJjdu4zvZG+fV58j+myDpWsiZ+K2SAIeatTq8Py4kU=;
        b=mAIMZD6A8O2nBZkKSvQfDASVE9n4m9rAbrMc1bauxbOUBncaBxhldrblK1ZBUga7Ia
         eS9xZSAfRqFKWQ56mcRqCO4wsFRKpoyJ0vyovazDHzRijmhzQV+JWvYUyCehaC63RpGB
         MQZaO63Sf+5bMHoyM630aHBPnnfv9gmQgsR2K/mGNdAcaZouDT9D/lUuT53s7qdrJyue
         Ia8bbvUJuZapf9Wxrzl7Vgud6VYs2+m4sMblhNYIJqQvwLXGQRBeQqAJmWD5NCuTNFSo
         N2uMy9OF0pzS5Gnad5BUfTNN0NLxAZX2Xm4GI3HzNYwt1xXMTnxGGOq4Dr4JD3IYB8qS
         ivrw==
X-Gm-Message-State: AOJu0YzVQLkTSbPDyCSkiLnuYKJFPcVvzWjf7Aa07IR2edD4wfDkr8/i
	4rKibvW8Qs9VXcTOS3WftbVwVivvKGQ=
X-Google-Smtp-Source: AGHT+IEdAkwGSI4JXsyGWR6R4FkKE7IdPr0rYajN80sqqfNdMpoFfjfsMAfenGioX8KaYubfndjOkTOpzXY=
X-Received: from zagreus.c.googlers.com ([fda3:e722:ac3:cc00:7f:e700:c0a8:5c37])
 (user=seanjc job=sendgmr) by 2002:a5b:a04:0:b0:d9a:6855:6d31 with SMTP id
 k4-20020a5b0a04000000b00d9a68556d31mr59932ybq.3.1697730059906; Thu, 19 Oct
 2023 08:40:59 -0700 (PDT)
Date: Thu, 19 Oct 2023 08:40:58 -0700
In-Reply-To: <87ttqm6d3f.fsf@redhat.com>
Mime-Version: 1.0
References: <20231018221123.136403-1-dongli.zhang@oracle.com> <87ttqm6d3f.fsf@redhat.com>
Message-ID: <ZTFOCqMCuSiH8VEt@google.com>
Subject: Re: [PATCH RFC 1/1] x86/paravirt: introduce param to disable pv sched_clock
From: Sean Christopherson <seanjc@google.com>
To: Vitaly Kuznetsov <vkuznets@redhat.com>
Cc: Dongli Zhang <dongli.zhang@oracle.com>, x86@kernel.org, 
	virtualization@lists.linux-foundation.org, kvm@vger.kernel.org, 
	pv-drivers@vmware.com, xen-devel@lists.xenproject.org, 
	linux-hyperv@vger.kernel.org, jgross@suse.com, akaher@vmware.com, 
	amakhalov@vmware.com, tglx@linutronix.de, mingo@redhat.com, bp@alien8.de, 
	dave.hansen@linux.intel.com, hpa@zytor.com, pbonzini@redhat.com, 
	wanpengli@tencent.com, peterz@infradead.org, dwmw2@infradead.org, 
	joe.jin@oracle.com, boris.ostrovsky@oracle.com, linux-kernel@vger.kernel.org
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: quoted-printable

On Thu, Oct 19, 2023, Vitaly Kuznetsov wrote:
> Dongli Zhang <dongli.zhang@oracle.com> writes:
>=20
> > As mentioned in the linux kernel development document, "sched_clock() i=
s
> > used for scheduling and timestamping". While there is a default native
> > implementation, many paravirtualizations have their own implementations=
.
> >
> > About KVM, it uses kvm_sched_clock_read() and there is no way to only
> > disable KVM's sched_clock. The "no-kvmclock" may disable all
> > paravirtualized kvmclock features.

...

> > Please suggest and comment if other options are better:
> >
> > 1. Global param (this RFC patch).
> >
> > 2. The kvmclock specific param (e.g., "no-vmw-sched-clock" in vmware).
> >
> > Indeed I like the 2nd method.
> >
> > 3. Enforce native sched_clock only when TSC is invariant (hyper-v metho=
d).
> >
> > 4. Remove and cleanup pv sched_clock, and always use pv_sched_clock() f=
or
> > all (suggested by Peter Zijlstra in [3]). Some paravirtualizations may
> > want to keep the pv sched_clock.
>=20
> Normally, it should be up to the hypervisor to tell the guest which
> clock to use, i.e. if TSC is reliable or not. Let me put my question
> this way: if TSC on the particular host is good for everything, why
> does the hypervisor advertises 'kvmclock' to its guests?

I suspect there are two reasons.

  1. As is likely the case in our fleet, no one revisited the set of advert=
ised
     PV features when defining the VM shapes for a new generation of hardwa=
re, or
     whoever did the reviews wasn't aware that advertising kvmclock is actu=
ally
     suboptimal.  All the PV clock stuff in KVM is quite labyrinthian, so i=
t's
     not hard to imagine it getting overlooked.

  2. Legacy VMs.  If VMs have been running with a PV clock for years, forci=
ng
     them to switch to a new clocksource is high-risk, low-reward.

> If for some 'historical reasons' we can't revoke features we can always
> introduce a new PV feature bit saying that TSC is preferred.
>=20
> 1) Global param doesn't sound like a good idea to me: chances are that
> people will be setting it on their guest images to workaround problems
> on one hypervisor (or, rather, on one public cloud which is too lazy to
> fix their hypervisor) while simultaneously creating problems on another.
>=20
> 2) KVM specific parameter can work, but as KVM's sched_clock is the same
> as kvmclock, I'm not convinced it actually makes sense to separate the
> two. Like if sched_clock is known to be bad but TSC is good, why do we
> need to use PV clock at all? Having a parameter for debugging purposes
> may be OK though...
>=20
> 3) This is Hyper-V specific, you can see that it uses a dedicated PV bit
> (HV_ACCESS_TSC_INVARIANT) and not the architectural
> CPUID.80000007H:EDX[8]. I'm not sure we can blindly trust the later on
> all hypervisors.
>=20
> 4) Personally, I'm not sure that relying on 'TSC is crap' detection is
> 100% reliable. I can imagine cases when we can't detect that fact that
> while synchronized across CPUs and not going backwards, it is, for
> example, ticking with an unstable frequency and PV sched clock is
> supposed to give the right correction (all of them are rdtsc() based
> anyways, aren't they?).

Yeah, practically speaking, the only thing adding a knob to turn off using =
PV
clocks for sched_clock will accomplish is creating an even bigger matrix of
combinations that can cause problems, e.g. where guests end up using kvmclo=
ck
timekeeping but not scheduling.

The explanation above and the links below fail to capture _the_ key point:
Linux-as-a-guest already prioritizes the TSC over paravirt clocks as the cl=
ocksource
when the TSC is constant and nonstop (first spliced blob below).

What I suggested is that if the TSC is chosen over a PV clock as the clocks=
ource,
then we have the kernel also override the sched_clock selection (second spl=
iced
blob below).

That doesn't require the guest admin to opt-in, and doesn't create even mor=
e
combinations to support.  It also provides for a smoother transition for wh=
en
customers inevitably end up creating VMs on hosts that don't advertise kvmc=
lock
(or any PV clock).

> > To introduce a param may be easier to backport to old kernel version.
> >
> > References:
> > [1] https://lore.kernel.org/all/20230926230649.67852-1-dongli.zhang@ora=
cle.com/
> > [2] https://lore.kernel.org/all/20231018195638.1898375-1-seanjc@google.=
com/
> > [3] https://lore.kernel.org/all/20231002211651.GA3774@noisy.programming=
.kicks-ass.net/

On Mon, Oct 2, 2023 at 11:18=E2=80=AFAM Sean Christopherson <seanjc@google.=
com> wrote:
> > Do we need to update the documentation to always suggest TSC when it is
> > constant, as I believe many users still prefer pv clock than tsc?
> >
> > Thanks to tsc ratio scaling, the live migration will not impact tsc.
> >
> > >From the source code, the rating of kvm-clock is still higher than tsc=
.
> >
> > BTW., how about to decrease the rating if guest detects constant tsc?
> >
> > 166 struct clocksource kvm_clock =3D {
> > 167         .name   =3D "kvm-clock",
> > 168         .read   =3D kvm_clock_get_cycles,
> > 169         .rating =3D 400,
> > 170         .mask   =3D CLOCKSOURCE_MASK(64),
> > 171         .flags  =3D CLOCK_SOURCE_IS_CONTINUOUS,
> > 172         .enable =3D kvm_cs_enable,
> > 173 };
> >
> > 1196 static struct clocksource clocksource_tsc =3D {
> > 1197         .name                   =3D "tsc",
> > 1198         .rating                 =3D 300,
> > 1199         .read                   =3D read_tsc,
>
> That's already done in kvmclock_init().
>
>         if (boot_cpu_has(X86_FEATURE_CONSTANT_TSC) &&
>             boot_cpu_has(X86_FEATURE_NONSTOP_TSC) &&
>             !check_tsc_unstable())
>                 kvm_clock.rating =3D 299;
>
> See also: https://lore.kernel.org/all/ZOjF2DMBgW%2FzVvL3@google.com
>
> > 2. The sched_clock.
> >
> > The scheduling is impacted if there is big drift.
>
> ...
>
> > Unfortunately, the "no-kvmclock" kernel parameter disables all pv clock
> > operations (not only sched_clock), e.g., after line 300.
>
> ...
>
> > Should I introduce a new param to disable no-kvm-sched-clock only, or t=
o
> > introduce a new param to allow the selection of sched_clock?
>
> I don't think we want a KVM-specific knob, because every flavor of paravi=
rt guest
> would need to do the same thing.  And unless there's a good reason to use=
 a
> paravirt clock, this really shouldn't be something the guest admin needs =
to opt
> into using.


On Mon, Oct 2, 2023 at 2:06=E2=80=AFPM Peter Zijlstra <peterz@infradead.org=
> wrote:
>
> On Mon, Oct 02, 2023 at 11:18:50AM -0700, Sean Christopherson wrote:
> > Assuming the desirable thing to do is to use native_sched_clock() in th=
is
> > scenario, do we need a separate rating system, or can we simply tie the
> > sched clock selection to the clocksource selection, e.g. override the
> > paravirt stuff if the TSC clock has higher priority and is chosen?
>
> Yeah, I see no point of another rating system. Just force the thing back
> to native (or don't set it to that other thing).


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 15:44:41 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 15:44:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619482.964635 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtVCT-0004P8-4z; Thu, 19 Oct 2023 15:44:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619482.964635; Thu, 19 Oct 2023 15:44: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 1qtVCT-0004OS-0a; Thu, 19 Oct 2023 15:44:41 +0000
Received: by outflank-mailman (input) for mailman id 619482;
 Thu, 19 Oct 2023 15: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=m+UH=GB=desiato.srs.infradead.org=BATV+298c059cf2aa39b7dc34+7361+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qtV8y-0006dc-CA
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 15:41:04 +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 e77ac9a3-6e95-11ee-9b0e-b553b5be7939;
 Thu, 19 Oct 2023 17:41:01 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by desiato.infradead.org with esmtpsa (Exim 4.96 #2 (Red Hat Linux))
 id 1qtV8O-009yCs-0P; Thu, 19 Oct 2023 15:40:28 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1qtV8M-000PuW-24; Thu, 19 Oct 2023 16:40:26 +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
X-Inumbo-ID: e77ac9a3-6e95-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=desiato.20200630; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=MzyeUS8+Q6DyGG1BYkZOM8Vo8wKa2UEntgjHbKC7sqQ=; b=lZba3Mv1zHO4kaMfOaXiCwtb+O
	wkslMdOA/sxcZ8z+TsvaxomvGGtAfw1gSBhna7Jmba1Z8fUOvcSarzhanIcn0e789VCRxX7PfZbfJ
	FB6Vjrn1KH0rWBXo62DIX99QdNvCwAwRMahWDqtC+8HlZeGFUKNRDMUhDDeQUCArM25zXmW3o98Kz
	93esbTShMa3BYKGQVUXv0Wlw6wxw91TwPUFTxJh3oQECcSs/18SJbwD5uHupEmtFRjTEwiRLJIfe0
	5CwpZMOWYOyJStEA1vn17LINb/uXQXJ1+at1fqvaTGKQ2Irh6EIqN8fbpep94f/Aywl2/mEG+C2sr
	OOmZoFVQ==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>,
	Hanna Reitz <hreitz@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	=?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Richard Henderson <richard.henderson@linaro.org>,
	Eduardo Habkost <eduardo@habkost.net>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Jason Wang <jasowang@redhat.com>,
	Marcelo Tosatti <mtosatti@redhat.com>,
	Cleber Rosa <crosa@redhat.com>,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
	Wainer dos Santos Moschetta <wainersm@redhat.com>,
	Beraldo Leal <bleal@redhat.com>,
	qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org,
	kvm@vger.kernel.org,
	Bernhard Beschow <shentey@gmail.com>,
	Joel Upham <jupham125@gmail.com>
Subject: [PATCH v2 13/24] hw/xen: do not repeatedly try to create a failing backend device
Date: Thu, 19 Oct 2023 16:40:09 +0100
Message-Id: <20231019154020.99080-14-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231019154020.99080-1-dwmw2@infradead.org>
References: <20231019154020.99080-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by desiato.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

If xen_backend_device_create() fails to instantiate a device, the XenBus
code will just keep trying over and over again each time the bus is
re-enumerated, as long as the backend appears online and in
XenbusStateInitialising.

The only thing which prevents the XenBus code from recreating duplicates
of devices which already exist, is the fact that xen_device_realize()
sets the backend state to XenbusStateInitWait. If the attempt to create
the device doesn't get *that* far, that's when it will keep getting
retried.

My first thought was to handle errors by setting the backend state to
XenbusStateClosed, but that doesn't work for XenConsole which wants to
*ignore* any device of type != "ioemu" completely.

So, make xen_backend_device_create() *keep* the XenBackendInstance for a
failed device, and provide a new xen_backend_exists() function to allow
xen_bus_type_enumerate() to check whether one already exists before
creating a new one.

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 hw/xen/xen-backend.c         | 27 +++++++++++++++++++++------
 hw/xen/xen-bus.c             |  3 ++-
 include/hw/xen/xen-backend.h |  1 +
 3 files changed, 24 insertions(+), 7 deletions(-)

diff --git a/hw/xen/xen-backend.c b/hw/xen/xen-backend.c
index 5b0fb76eae..b9bf70a9f5 100644
--- a/hw/xen/xen-backend.c
+++ b/hw/xen/xen-backend.c
@@ -101,6 +101,24 @@ static XenBackendInstance *xen_backend_list_find(XenDevice *xendev)
     return NULL;
 }
 
+bool xen_backend_exists(const char *type, const char *name)
+{
+    const XenBackendImpl *impl = xen_backend_table_lookup(type);
+    XenBackendInstance *backend;
+
+    if (!impl) {
+        return false;
+    }
+
+    QLIST_FOREACH(backend, &backend_list, entry) {
+        if (backend->impl == impl && !strcmp(backend->name, name)) {
+            return true;
+        }
+    }
+
+    return false;
+}
+
 static void xen_backend_list_remove(XenBackendInstance *backend)
 {
     QLIST_REMOVE(backend, entry);
@@ -122,11 +140,6 @@ void xen_backend_device_create(XenBus *xenbus, const char *type,
     backend->name = g_strdup(name);
 
     impl->create(backend, opts, errp);
-    if (*errp) {
-        g_free(backend->name);
-        g_free(backend);
-        return;
-    }
 
     backend->impl = impl;
     xen_backend_list_add(backend);
@@ -165,7 +178,9 @@ bool xen_backend_try_device_destroy(XenDevice *xendev, Error **errp)
     }
 
     impl = backend->impl;
-    impl->destroy(backend, errp);
+    if (backend->xendev) {
+        impl->destroy(backend, errp);
+    }
 
     xen_backend_list_remove(backend);
     g_free(backend->name);
diff --git a/hw/xen/xen-bus.c b/hw/xen/xen-bus.c
index cc524ed92c..0da2aa219a 100644
--- a/hw/xen/xen-bus.c
+++ b/hw/xen/xen-bus.c
@@ -209,7 +209,8 @@ static void xen_bus_type_enumerate(XenBus *xenbus, const char *type)
                           NULL, "%u", &online) != 1)
             online = 0;
 
-        if (online && state == XenbusStateInitialising) {
+        if (online && state == XenbusStateInitialising &&
+            !xen_backend_exists(type, backend[i])) {
             Error *local_err = NULL;
 
             xen_bus_backend_create(xenbus, type, backend[i], backend_path,
diff --git a/include/hw/xen/xen-backend.h b/include/hw/xen/xen-backend.h
index aac2fd454d..0f01631ae7 100644
--- a/include/hw/xen/xen-backend.h
+++ b/include/hw/xen/xen-backend.h
@@ -33,6 +33,7 @@ XenDevice *xen_backend_get_device(XenBackendInstance *backend);
 void xen_backend_register(const XenBackendInfo *info);
 const char **xen_backend_get_types(unsigned int *nr);
 
+bool xen_backend_exists(const char *type, const char *name);
 void xen_backend_device_create(XenBus *xenbus, const char *type,
                                const char *name, QDict *opts, Error **errp);
 bool xen_backend_try_device_destroy(XenDevice *xendev, Error **errp);
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Thu Oct 19 15:47:40 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 15:47:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619494.964649 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtVFI-0005zs-NA; Thu, 19 Oct 2023 15:47:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619494.964649; Thu, 19 Oct 2023 15:47: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 1qtVFI-0005zl-KU; Thu, 19 Oct 2023 15:47:36 +0000
Received: by outflank-mailman (input) for mailman id 619494;
 Thu, 19 Oct 2023 15:47: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=b9Lg=GB=casper.srs.infradead.org=BATV+06ae5fa416ae820d9d5a+7361+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qtVFG-0005ze-8C
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 15:47:35 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id d143a2f5-6e96-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 17:47:33 +0200 (CEST)
Received: from [2001:8b0:10b:5:583b:153f:ff9:f813]
 (helo=u3832b3a9db3152.ant.amazon.com)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qtVEp-007rba-1X; Thu, 19 Oct 2023 15:47: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: d143a2f5-6e96-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=MIME-Version:Content-Type:References:
	In-Reply-To:Date:Cc:To:From:Subject:Message-ID:Sender:Reply-To:
	Content-Transfer-Encoding:Content-ID:Content-Description;
	bh=aqf9kLJE8v26VP3DSoGgD8J3nAOJFMhCOB4usFhToH8=; b=Phxi+LeHacOZH2hZsKFN0/UiAf
	8wMSV5pxKmOJSYow1NUD2cCvRaZUBsGX+P4MQsHxibkrYFvAQOGcKkuZvctgNL2c6NzEUoES9kf1r
	dMe6LEypdCPgbt3zXclfmHou1ch0FVtgmtRhG1jMX0DpZ7xaLmxfCWaa85+7wjrgfgJJocK5O4VFO
	GDSyQ1q2N/du28si4HttjPqUnhNkli9/OlZRslLzPgM+S50/FQC6zLY89RRFVUedLe0a4YQZsZlkD
	pompPlX4w5kHSg7UlqkXqZ+A3b042hI5JISXVJp1hXzceFmgg0Qae5mLSxfZrY6zuEJVAwFeOGlXY
	r9zDNg1g==;
Message-ID: <2f1459d7c3e3e81cdca931e104c3ade71dfcfee5.camel@infradead.org>
Subject: Re: [PATCH RFC 1/1] x86/paravirt: introduce param to disable pv
 sched_clock
From: David Woodhouse <dwmw2@infradead.org>
To: Sean Christopherson <seanjc@google.com>, Vitaly Kuznetsov
	 <vkuznets@redhat.com>
Cc: Dongli Zhang <dongli.zhang@oracle.com>, x86@kernel.org, 
	virtualization@lists.linux-foundation.org, kvm@vger.kernel.org, 
	pv-drivers@vmware.com, xen-devel@lists.xenproject.org, 
	linux-hyperv@vger.kernel.org, jgross@suse.com, akaher@vmware.com, 
	amakhalov@vmware.com, tglx@linutronix.de, mingo@redhat.com, bp@alien8.de, 
	dave.hansen@linux.intel.com, hpa@zytor.com, pbonzini@redhat.com, 
	wanpengli@tencent.com, peterz@infradead.org, joe.jin@oracle.com, 
	boris.ostrovsky@oracle.com, linux-kernel@vger.kernel.org
Date: Thu, 19 Oct 2023 16:47:05 +0100
In-Reply-To: <ZTFOCqMCuSiH8VEt@google.com>
References: <20231018221123.136403-1-dongli.zhang@oracle.com>
	 <87ttqm6d3f.fsf@redhat.com> <ZTFOCqMCuSiH8VEt@google.com>
Content-Type: multipart/signed; micalg="sha-256"; protocol="application/pkcs7-signature";
	boundary="=-IOFzLyxqUftWQ1c88CUC"
User-Agent: Evolution 3.44.4-0ubuntu2 
MIME-Version: 1.0
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html


--=-IOFzLyxqUftWQ1c88CUC
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Thu, 2023-10-19 at 08:40 -0700, Sean Christopherson wrote:
>=20
> > Normally, it should be up to the hypervisor to tell the guest which
> > clock to use, i.e. if TSC is reliable or not. Let me put my question
> > this way: if TSC on the particular host is good for everything, why
> > does the hypervisor advertises 'kvmclock' to its guests?
>=20
> I suspect there are two reasons.
>=20
> =C2=A0 1. As is likely the case in our fleet, no one revisited the set of=
 advertised
> =C2=A0=C2=A0=C2=A0=C2=A0 PV features when defining the VM shapes for a ne=
w generation of hardware, or
> =C2=A0=C2=A0=C2=A0=C2=A0 whoever did the reviews wasn't aware that advert=
ising kvmclock is actually
> =C2=A0=C2=A0=C2=A0=C2=A0 suboptimal.=C2=A0 All the PV clock stuff in KVM =
is quite labyrinthian, so it's
> =C2=A0=C2=A0=C2=A0=C2=A0 not hard to imagine it getting overlooked.
>=20
> =C2=A0 2. Legacy VMs.=C2=A0 If VMs have been running with a PV clock for =
years, forcing
> =C2=A0=C2=A0=C2=A0=C2=A0 them to switch to a new clocksource is high-risk=
, low-reward.

Doubly true for Xen guests (given that the Xen clocksource is identical
to the KVM clocksource).

> > If for some 'historical reasons' we can't revoke features we can always
> > introduce a new PV feature bit saying that TSC is preferred.

Don't we already have one? It's the PVCLOCK_TSC_STABLE_BIT. Why would a
guest ever use kvmclock if the PVCLOCK_TSC_STABLE_BIT is set?

The *point* in the kvmclock is that the hypervisor can mess with the
epoch/scaling to try to compensate for TSC brokenness as the host
scales/sleeps/etc.

And the *problem* with the kvmclock is that it does just that, even
when the host TSC hasn't done anything wrong and the kvmclock shouldn't
have changed at all.

If the PVCLOCK_TSC_STABLE_BIT is set, a guest should just use the guest
TSC directly without looking to the kvmclock for adjusting it.

No?



--=-IOFzLyxqUftWQ1c88CUC
Content-Type: application/pkcs7-signature; name="smime.p7s"
Content-Disposition: attachment; filename="smime.p7s"
Content-Transfer-Encoding: base64

MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgEFADCABgkqhkiG9w0BBwEAAKCCEkQw
ggYQMIID+KADAgECAhBNlCwQ1DvglAnFgS06KwZPMA0GCSqGSIb3DQEBDAUAMIGIMQswCQYDVQQG
EwJVUzETMBEGA1UECBMKTmV3IEplcnNleTEUMBIGA1UEBxMLSmVyc2V5IENpdHkxHjAcBgNVBAoT
FVRoZSBVU0VSVFJVU1QgTmV0d29yazEuMCwGA1UEAxMlVVNFUlRydXN0IFJTQSBDZXJ0aWZpY2F0
aW9uIEF1dGhvcml0eTAeFw0xODExMDIwMDAwMDBaFw0zMDEyMzEyMzU5NTlaMIGWMQswCQYDVQQG
EwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYD
VQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50
aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC
AQEAyjztlApB/975Rrno1jvm2pK/KxBOqhq8gr2+JhwpKirSzZxQgT9tlC7zl6hn1fXjSo5MqXUf
ItMltrMaXqcESJuK8dtK56NCSrq4iDKaKq9NxOXFmqXX2zN8HHGjQ2b2Xv0v1L5Nk1MQPKA19xeW
QcpGEGFUUd0kN+oHox+L9aV1rjfNiCj3bJk6kJaOPabPi2503nn/ITX5e8WfPnGw4VuZ79Khj1YB
rf24k5Ee1sLTHsLtpiK9OjG4iQRBdq6Z/TlVx/hGAez5h36bBJMxqdHLpdwIUkTqT8se3ed0PewD
ch/8kHPo5fZl5u1B0ecpq/sDN/5sCG52Ds+QU5O5EwIDAQABo4IBZDCCAWAwHwYDVR0jBBgwFoAU
U3m/WqorSs9UgOHYm8Cd8rIDZsswHQYDVR0OBBYEFAnA8vwL2pTbX/4r36iZQs/J4K0AMA4GA1Ud
DwEB/wQEAwIBhjASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEF
BQcDBDARBgNVHSAECjAIMAYGBFUdIAAwUAYDVR0fBEkwRzBFoEOgQYY/aHR0cDovL2NybC51c2Vy
dHJ1c3QuY29tL1VTRVJUcnVzdFJTQUNlcnRpZmljYXRpb25BdXRob3JpdHkuY3JsMHYGCCsGAQUF
BwEBBGowaDA/BggrBgEFBQcwAoYzaHR0cDovL2NydC51c2VydHJ1c3QuY29tL1VTRVJUcnVzdFJT
QUFkZFRydXN0Q0EuY3J0MCUGCCsGAQUFBzABhhlodHRwOi8vb2NzcC51c2VydHJ1c3QuY29tMA0G
CSqGSIb3DQEBDAUAA4ICAQBBRHUAqznCFfXejpVtMnFojADdF9d6HBA4kMjjsb0XMZHztuOCtKF+
xswhh2GqkW5JQrM8zVlU+A2VP72Ky2nlRA1GwmIPgou74TZ/XTarHG8zdMSgaDrkVYzz1g3nIVO9
IHk96VwsacIvBF8JfqIs+8aWH2PfSUrNxP6Ys7U0sZYx4rXD6+cqFq/ZW5BUfClN/rhk2ddQXyn7
kkmka2RQb9d90nmNHdgKrwfQ49mQ2hWQNDkJJIXwKjYA6VUR/fZUFeCUisdDe/0ABLTI+jheXUV1
eoYV7lNwNBKpeHdNuO6Aacb533JlfeUHxvBz9OfYWUiXu09sMAviM11Q0DuMZ5760CdO2VnpsXP4
KxaYIhvqPqUMWqRdWyn7crItNkZeroXaecG03i3mM7dkiPaCkgocBg0EBYsbZDZ8bsG3a08LwEsL
1Ygz3SBsyECa0waq4hOf/Z85F2w2ZpXfP+w8q4ifwO90SGZZV+HR/Jh6rEaVPDRF/CEGVqR1hiuQ
OZ1YL5ezMTX0ZSLwrymUE0pwi/KDaiYB15uswgeIAcA6JzPFf9pLkAFFWs1QNyN++niFhsM47qod
x/PL+5jR87myx5uYdBEQkkDc+lKB1Wct6ucXqm2EmsaQ0M95QjTmy+rDWjkDYdw3Ms6mSWE3Bn7i
5ZgtwCLXgAIe5W8mybM2JzCCBhQwggT8oAMCAQICEQDGvhmWZ0DEAx0oURL6O6l+MA0GCSqGSIb3
DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYD
VQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28g
UlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMB4XDTIyMDEwNzAw
MDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJARYTZHdtdzJAaW5mcmFkZWFkLm9y
ZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3GpC2bomUqk+91wLYBzDMcCj5C9m6
oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZHh7htyAkWYVoFsFPrwHounto8xTsy
SSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT9YgcBqKCo65pTFmOnR/VVbjJk4K2
xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNjP+qDrh0db7PAjO1D4d5ftfrsf+kd
RR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy2U+eITZ5LLE5s45mX2oPFknWqxBo
bQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3BgBEmfsYWlBXO8rVXfvPgLs32VdV
NZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/7auNVRmPB3v5SWEsH8xi4Bez2V9U
KxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmdlFYhAflWKQ03Ufiu8t3iBE3VJbc2
5oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9aelIl6vtbhMA+l0nfrsORMa4kobqQ5
C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMBAAGjggHMMIIByDAfBgNVHSMEGDAW
gBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeDMcimo0oz8o1R1Nver3ZVpSkwDgYD
VR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYwFAYIKwYBBQUHAwQGCCsGAQUFBwMC
MEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYBBQUHAgEWF2h0dHBzOi8vc2VjdGln
by5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9jcmwuc2VjdGlnby5jb20vU2VjdGln
b1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1haWxDQS5jcmwwgYoGCCsGAQUFBwEB
BH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdvLmNvbS9TZWN0aWdvUlNBQ2xpZW50
QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAjBggrBgEFBQcwAYYXaHR0cDovL29j
c3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5mcmFkZWFkLm9yZzANBgkqhkiG9w0B
AQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQvQ/fzPXmtR9t54rpmI2TfyvcKgOXp
qa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvIlSPrzIB4Z2wyIGQpaPLlYflrrVFK
v9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9ChWFfgSXvrWDZspnU3Gjw/rMHrGnql
Htlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0whpBtXdyDjzBtQTaZJ7zTT/vlehc/
tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9IzCCBhQwggT8oAMCAQICEQDGvhmW
Z0DEAx0oURL6O6l+MA0GCSqGSIb3DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3Jl
YXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0
ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJl
IEVtYWlsIENBMB4XDTIyMDEwNzAwMDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJ
ARYTZHdtdzJAaW5mcmFkZWFkLm9yZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3
GpC2bomUqk+91wLYBzDMcCj5C9m6oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZH
h7htyAkWYVoFsFPrwHounto8xTsySSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT
9YgcBqKCo65pTFmOnR/VVbjJk4K2xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNj
P+qDrh0db7PAjO1D4d5ftfrsf+kdRR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy
2U+eITZ5LLE5s45mX2oPFknWqxBobQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3
BgBEmfsYWlBXO8rVXfvPgLs32VdVNZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/
7auNVRmPB3v5SWEsH8xi4Bez2V9UKxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmd
lFYhAflWKQ03Ufiu8t3iBE3VJbc25oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9ae
lIl6vtbhMA+l0nfrsORMa4kobqQ5C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMB
AAGjggHMMIIByDAfBgNVHSMEGDAWgBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeD
Mcimo0oz8o1R1Nver3ZVpSkwDgYDVR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYw
FAYIKwYBBQUHAwQGCCsGAQUFBwMCMEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYB
BQUHAgEWF2h0dHBzOi8vc2VjdGlnby5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9j
cmwuc2VjdGlnby5jb20vU2VjdGlnb1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1h
aWxDQS5jcmwwgYoGCCsGAQUFBwEBBH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdv
LmNvbS9TZWN0aWdvUlNBQ2xpZW50QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAj
BggrBgEFBQcwAYYXaHR0cDovL29jc3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5m
cmFkZWFkLm9yZzANBgkqhkiG9w0BAQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQv
Q/fzPXmtR9t54rpmI2TfyvcKgOXpqa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvI
lSPrzIB4Z2wyIGQpaPLlYflrrVFKv9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9Ch
WFfgSXvrWDZspnU3Gjw/rMHrGnqlHtlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0w
hpBtXdyDjzBtQTaZJ7zTT/vlehc/tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9
IzGCBMcwggTDAgEBMIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVz
dGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMT
NVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEA
xr4ZlmdAxAMdKFES+jupfjANBglghkgBZQMEAgEFAKCCAeswGAYJKoZIhvcNAQkDMQsGCSqGSIb3
DQEHATAcBgkqhkiG9w0BCQUxDxcNMjMxMDE5MTU0NzA1WjAvBgkqhkiG9w0BCQQxIgQgDr2+2ve7
EAx4DT6OsKvDPJNpUZWdoAh47bFgeh41prowgb0GCSsGAQQBgjcQBDGBrzCBrDCBljELMAkGA1UE
BhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEYMBYG
A1UEChMPU2VjdGlnbyBMaW1pdGVkMT4wPAYDVQQDEzVTZWN0aWdvIFJTQSBDbGllbnQgQXV0aGVu
dGljYXRpb24gYW5kIFNlY3VyZSBFbWFpbCBDQQIRAMa+GZZnQMQDHShREvo7qX4wgb8GCyqGSIb3
DQEJEAILMYGvoIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVy
MRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNl
Y3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEAxr4Z
lmdAxAMdKFES+jupfjANBgkqhkiG9w0BAQEFAASCAgCwloyMKznX9iK8pOW5B+cEGuvbBrpmuzHc
ko15b8ifpUpguNOCTpwOnZs1B0RQ/T0ptwcwkWYI038SECiwMD2ezW4Sa7K0vZEcTZk6aaqBcLMD
JwgTGVexTXM9ALXrZpk3As87ZrWXCKpcC6+RP/0OO2c3LxgztCOzOJRjMB/kKBdkpS6FQt4NE+1a
hvxV7nN5VKQA+6GTuXyoEofpT5XSdZaPDRWRBRErzW99aZxLYI8L1um6+mUBneIFip6er2S0iw3m
lqvQ5eftUnjj/3TuC8jlk5SJVTCNb4KmFCz8z26Ck2jYOaoK20TFA9+46lp9eqE6OFzv5i6SsD3y
lIfhBrzVgyNKZcdbpBCSvWtH2ueJFHv/y5/mvQBl9gytVdkNQUDEEpT1jjZg34Ni6lJA5wxgDvwO
K7CU0WOA5zLr0iW3rCEzeufiOo8FPFaxcKTrb+E+BIpF9+GWNwUQ42TPFp2/K+kIH5QZjs17g3OU
KIMei8nVBKBX9nZmFVVjq+FcMJDH3/H2p5b+2j9k+N6jx7nNE59x+usNBKcSBSsaIq55x29o1TVz
95jz+6g0ZmhkvrLlzfixbeysGNffsSPCZwneV7M/X7J0U6LQfkpcJiYLW/ZVcL3LIvh2JRnuYZMG
Nf8d1FB9xBqjQOHv5sUMe2v7NOuwO0Co98fULmBt9gAAAAAAAA==


--=-IOFzLyxqUftWQ1c88CUC--


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 15:57:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 15:57:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619499.964659 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtVP8-0008Co-KD; Thu, 19 Oct 2023 15:57:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619499.964659; Thu, 19 Oct 2023 15: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 1qtVP8-0008Cg-HO; Thu, 19 Oct 2023 15:57:46 +0000
Received: by outflank-mailman (input) for mailman id 619499;
 Thu, 19 Oct 2023 15:57: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=g4nO=GB=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qtVP7-0008Ca-96
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 15:57:45 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 (mail-db8eur05on20618.outbound.protection.outlook.com
 [2a01:111:f400:7e1a::618])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 3d20a05f-6e98-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 17:57:43 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by GVXPR04MB10047.eurprd04.prod.outlook.com (2603:10a6:150:117::16)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.9; Thu, 19 Oct
 2023 15:57:39 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%7]) with mapi id 15.20.6907.022; Thu, 19 Oct 2023
 15:57: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: 3d20a05f-6e98-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=oCXIDnGCcUqMnj88Cp+ryPIigWFsvFzpA7roB9tD8jXEGgTehYMM5fnegAUJLYQga6m7bJR+ONVH6yeNPUXm1Etr1Ji3nwd8+oq8qztNvg1DosJx01wTsfZ0IdXoVtvrBMjMRLx1WUlCdC2+/rQ8odqqwmFuLrk5IcW80dUTMpQBsVyg1eOkfwKsN2TyWZrmIHuxJktFQySptXWjJzEm+ZUR3mFYV+uc9zGNRNiGTHOSuEPkz2EcfkuJ/CmOaP9hiJw4KFH1ZsC941Idr772ScmFdxVyLHeISqm7x5glGNdXu/vH5FA9gNkVXahAGIMAXsVc1H6sfbDgHSBlZWQHhw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=paUzkZg44djMz3PJhmxQsfRLR+/UqD5sbLMmziOv8bs=;
 b=asF95lK4ARMXdSqnXq9X++7lZBFphTgzw09zF7YutW3FxtxJAkXQeWkLOOGM4eYEwR+re6KO+vLAzxJrOrbH19GC7xh5SO+BLiyw5kr3AXAoFHugdpjuc3YGDFkaxt7F9gEl1RuNOVQ9hmOooilVaowtiBv0yHxXUtzD9vHKtrUkUWkZOI7XqBYlEJ0jjpiw5SQCQdJ4vFTF+uymo493x+ezKWge93b4mEqNByUFFeCgeMomzQ1XjihMryGNZFKxPG/sqQjJFz0t2AnE0oI6mxclp6HiDQfYdY78qOiTXOv7hgQPgYdcjmv+pWXa3YH0iht4sWh/PyXki9FSKs95Vg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=paUzkZg44djMz3PJhmxQsfRLR+/UqD5sbLMmziOv8bs=;
 b=Dz1uze1yZAoaTlblqt2vVPjQk1gwsh5ptShzA1B99qeWe+EYfeBITeSOoiAb4aWiagKO7enm+ZeEuiP/zLd4inNIX55Xv0Q2WBznZ5quT1HiwHTPLePbGL5rGVf/IAI+g6W7B4qMKTymaIOPkFjCPgwnwIoT1XR779bHgHLZ7pacpD1v6penoliIFEBuik6OjXJC+HmK5K8qVTkxBhg3olH9xMudCRYLLqEO591oi+TE+DDYTBf2xVTJ6HiYmNm/QI1ucnFcS6WGPUJ4Kd6xQv+hSiGDWp7hkREqfPr6q52gFoPVjN5ddp+AfjkoV61cBslOjcxyDOspVIPUrIjkAA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <de2b666e-ca48-58d2-73eb-5adc797f818e@suse.com>
Date: Thu, 19 Oct 2023 17:57:36 +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][for-4.19 v2] xen: Add SAF deviations for MISRA C:2012
 Rule 7.1
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.cooper3@citrix.com, roger.pau@citrix.com,
 Simone Ballarin <simone.ballarin@bugseng.com>,
 Doug Goldstein <cardoe@cardoe.com>, George Dunlap
 <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Wei Liu <wl@xen.org>, xen-devel@lists.xenproject.org
References: <a9c52c943380f2c35f0a6ccab8215c03e87c99dc.1697712857.git.nicola.vetrini@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <a9c52c943380f2c35f0a6ccab8215c03e87c99dc.1697712857.git.nicola.vetrini@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0262.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:b5::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_|GVXPR04MB10047:EE_
X-MS-Office365-Filtering-Correlation-Id: 649d26a4-236b-4922-e801-08dbd0bc1ea7
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	mjFfGqV3PVnZYcDIdGEn0/0BhpTZ16HNgWdcNuL5mgUj3S/XCFiDeykqRlhgx6VcC99eI6Rd97hNNdO0p0eh6CoNcgIlNMltLvqs4q3m5+9ho5xXbNnO0iOQAnVMwXbub2ygyMxzUUZx0QVVjEih3MbXoikkSnr+KlOwZ6lLSPrAy+PPCHI1Uc/Agby6kAtCLZMDSvNNeOgM1VoNXcM1egkKP+YeoH/0J/fEG49l/InN+NQrXjvCQwCw9kJAXqUsrVMuPru8nvdb73GybTy875kLDLgsQAZu8Ch3Z3c+/vcwnej70GXpzQ/CE1eRutoFHkdtctDCP0Ed3RDbUeGlCYOSpiciY0SpWVhPJZ3I5JGYEAyghGSL3VP4o/qW83vuGs5mBOAk6q2Jc1nk4Xgeha1Gj20ZszZyG9X9/s3lepGRFSeDRHPcwFVUfty8qj8SgjH+ghKBECgbj17GZFGeneY6Ylk98FIB5/808quTSdl+IcWDsM/C4fo8haY94716WtDHErUQ9tvMMn//xU/tcFvFBGofNzwJMiJo7acTfIqoL3imh+JGTMkO7u2uj3Deqs26CRpzLQdNsgLhtlVVbZPpxro0fGC6eoFFNHLzcKRLbXRbB9WQivI6VDnv85aR5djnukzRru3+GMcqq18xyg==
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)(346002)(39860400002)(230922051799003)(64100799003)(451199024)(1800799009)(186009)(6512007)(26005)(6506007)(6666004)(53546011)(83380400001)(41300700001)(4326008)(5660300002)(8676002)(7416002)(2906002)(6486002)(8936002)(478600001)(316002)(66946007)(54906003)(6916009)(66476007)(66556008)(31696002)(86362001)(38100700002)(2616005)(36756003)(31686004)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?YVhaa1k4SmVhSGVwd1YrS2c2SXp1eWNaMXhSZDc4UWhLdHdPdmwzcHJWOGI5?=
 =?utf-8?B?ZENrMlpDSGJXZmxQMHBFY0RkZ2M3ZUgwNGtqdG1YQzMzRHUyS3gxWFdWRFg5?=
 =?utf-8?B?NW5GUG5UT3dCOHhoRksxNGpCVmt2VXREYVlSVU1rRVd0NjR2V3VxZzBjbE8z?=
 =?utf-8?B?eUZ4Wll3TXV0ek5XTmJSME8yQU1Icy9MRExMWTJyNVAwTFdYTGRoVEtZWjZq?=
 =?utf-8?B?aVJ6dTFsMUt0NjVXbFYyVVZuUmVJZi96Vkp3WXRqOW1FY0RPbkdDMEV2ZldD?=
 =?utf-8?B?Q2dBTlpPRVZSWFVPSGZ2Yy9SVDloclZpc0E5R0FJQzAvaU4xTjNlTzlhZmdQ?=
 =?utf-8?B?VEhNUEUzTm5ZVzZVUmk0WExGbzU5eGs1ZEpnV21OUHVRMzNVeWJjbDRyVTJV?=
 =?utf-8?B?MVVxSHZ1bjFreG0rcnNGU3AxV3NQSVBTVFlZeXU5Z0lDcmExZzljTHRjZnhF?=
 =?utf-8?B?WVRrMVgyNzdDR1RnNXowdE5RSnJwV0FrZkhCOWhaVmk0S0ZVMDAzZE11d24v?=
 =?utf-8?B?dVA3OGJYM2lhUGZXeFdFUUxGSU5kYTkvUXJPRVJlbWxCRFlySk5NMHFiWWhM?=
 =?utf-8?B?cU84T01mNXZjUjlPdFlXOTJMaHp4Tlk2ajJ4Rnl6aDZDWC9UcHEyUGJRNU1y?=
 =?utf-8?B?MjR3ME9ScU53KzhYam92aU9jTkV6TTZnNGJ3NWFSMjE4aUJWaVhXbkJTSUFJ?=
 =?utf-8?B?TjBuYkxlUncyTUptbWR0eVpna3ZsS0Fmcnk2YmFGbGRCbFRXT3hUY3l5eFFk?=
 =?utf-8?B?NEFGalZsTTFhN1EwMVVWWC9JRUJJUDloenVXVW9NNG42SmthTGlTSGp2eTBk?=
 =?utf-8?B?Y1RoejY2SCtKUE94d29RK0FFSVk4ZHEvbGhrbTBDNkthU3l5dkxNVHVIOUdE?=
 =?utf-8?B?R3VwVi8yam5zbDVFcWt5ZmxFUndzWDN3Qy94ZTlaZVZvaFFSNnRQaDdkR0JU?=
 =?utf-8?B?QUtqZnYwRVhsNVpqOEdORGlMYVpKbHZFeHNvOE15REJZUWZ6QU9LOXpyWjlo?=
 =?utf-8?B?dmlPUlRYOWtNYkxYMFNzeTJGRlNEdUM5Rjc0dVJnOVZCcS9uR2RySWhnSFk1?=
 =?utf-8?B?Q1JJMitMN2tEQXVmVW5UNWhrOHJxZWlBZXpwSEJ4NlNqOEtac21tOW5ZRTc4?=
 =?utf-8?B?c0Zlc3VHMmtaMGlHb0JvTjFKVUhUWkpsR0tjZExwYzN6ZXVvWGo3MG1TOTBa?=
 =?utf-8?B?bE5GUTdBMTRsZlFLVUFLZFlhNFR1MkpLZmE2Q0JjY2xpU1NkUmVmN0tjSEhU?=
 =?utf-8?B?UFZoSnVGK0xXV243QjkxakdNbmp4dFJhQlZxQVdyRWZ4Qi9rM0pKNXpIcHht?=
 =?utf-8?B?cjE5OFIvNmtaMDhibjFmL0JtQVRzK3RBRXVmNFJpOWpXRVpBb2o3bzRTWmw0?=
 =?utf-8?B?M2NBVS9ZL1h0VHpWeldhZWJ0L0ZtM2VoY3JrVDJTaGF5dnBBNTBBUCt5NFVu?=
 =?utf-8?B?NnBSQ2VtTzgzWCtpdHgzQTNMTERzcyt5NmU4Uk5sb0hLb3UrU0tJbDZrY1B4?=
 =?utf-8?B?V1k0QW00VEVaSFdPYnFvT3RzNUNqRklPMFhFNWpQUHd1WE0zZ2drdHBTbjdl?=
 =?utf-8?B?dVFvWTdWWGpSOCtmbTlTeGpYVGk1Nlo4eXpnbi9ZTmw2QVVnR2pqWkVKWUc2?=
 =?utf-8?B?ajlKc2tOZVVKSlMvQVJaRU1XdTVpRThGclVWQlhUeWZ2MnlJQXFGR3pBdEMy?=
 =?utf-8?B?NnN1WlBLOXVHdU81SHdiaXl5aFV2MFpHME4rMDlEMTBmNitFbEJ5SmdXZGJD?=
 =?utf-8?B?U00vWVpsdGZrdUlZamg2RDBpTGZhR3NoZXcyTHdrdldKUGwxdDg5a0tLY0k5?=
 =?utf-8?B?NjhCbFdaVGh4SXhmdlpVaW9VYTlTWi8zK003NHcvdnNRSVpkMktQa2owREt3?=
 =?utf-8?B?N1BZMjhIdmY0K0hZR1YxRnAxUXIwSnpYQ0RLdDhDOWFxRWsxU3htazhScE5P?=
 =?utf-8?B?UWRkdFdxbkJLU3NWM0pvZ0hBYXJ0R3BIeng3NmIvaVZ3WlIwbjZrdkxIOXhG?=
 =?utf-8?B?TkFUekdsRDVzcitac2FFczlEZVgva3RYQ2R3M1k1MFJuS2dCVElyRmc2NCtr?=
 =?utf-8?B?VXlCd2QxdzhNOHNFMVQ2eHQ4SkM4VEZ6WldvZFF2dmZJampUOXFReXVuUGFV?=
 =?utf-8?Q?hT3Wk595HlfFprQfE+tMQthEX?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 649d26a4-236b-4922-e801-08dbd0bc1ea7
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Oct 2023 15:57:39.0967
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 1jj+XoTjt45FyC9IbJX0XgrSyvxAQ/lJsm5IgtdO4dVFcsoG7az2CK+aBEkI9eg0mgIuR8LlfppgYz//3Ghd9A==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: GVXPR04MB10047

On 19.10.2023 13:04, Nicola Vetrini wrote:
> --- a/automation/eclair_analysis/ECLAIR/deviations.ecl
> +++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
> @@ -85,10 +85,10 @@ conform to the directive."
>  # Series 7.
>  #
> 
> --doc_begin="Usage of the following constants is safe, since they are given as-is
> -in the inflate algorithm specification and there is therefore no risk of them
> -being interpreted as decimal constants."
> --config=MC3R1.R7.1,literals={safe, "^0(007|37|070|213|236|300|321|330|331|332|333|334|335|337|371)$"}
> +-doc_begin="Octal constants used as arguments to macro INSTR_ENC or MASK_EXTR
> +can be used, because they appear as is in specifications, manuals, and
> +algorithm descriptions."
> +-config=MC3R1.R7.1,reports+={safe, "any_area(any_loc(any_exp(macro(^(INSTR_ENC|MASK_EXTR)$))))"}

INSTR_ENC() is a local macro in x86'es AMD SVM code. A macro of the same
name could imo be introduced without issues in, say, Arm code. The above
would then needlessly suppress findings there, aiui.

MASK_EXTR() otoh is a global macro which ise used for various purposes.
Excluding checking there is imo going too far, too.

> --- a/docs/misra/deviations.rst
> +++ b/docs/misra/deviations.rst
> @@ -90,6 +90,12 @@ Deviations related to MISRA C:2012 Rules:
>           - __emulate_2op and __emulate_2op_nobyte
>           - read_debugreg and write_debugreg
> 
> +   * - R7.1
> +     - It is safe to use certain octal constants the way they are defined in
> +       specifications, manuals, and algorithm descriptions as arguments to
> +       macros 'INSTR_ENC' and 'MASK_EXTR'.
> +     - Tagged as `safe` for ECLAIR.

Similarly this wording is imo inappropriate, while ...

> --- a/docs/misra/safe.json
> +++ b/docs/misra/safe.json
> @@ -20,6 +20,14 @@
>          },
>          {
>              "id": "SAF-2-safe",
> +            "analyser": {
> +                "eclair": "MC3R1.R7.1"
> +            },
> +            "name": "Rule 7.1: constants defined in specifications, manuals, and algorithm descriptions",
> +            "text": "It is safe to use certain octal constants the way they are defined in specifications, manuals, and algorithm descriptions."
> +        },

... this reads good to me.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 16:02:24 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 16:02:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619503.964670 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtVTa-000237-7u; Thu, 19 Oct 2023 16:02:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619503.964670; Thu, 19 Oct 2023 16:02: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 1qtVTa-000230-5I; Thu, 19 Oct 2023 16:02:22 +0000
Received: by outflank-mailman (input) for mailman id 619503;
 Thu, 19 Oct 2023 16: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=g4nO=GB=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qtVTY-00022u-9A
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 16:02:20 +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 e06eff0e-6e98-11ee-9b0e-b553b5be7939;
 Thu, 19 Oct 2023 18:02:18 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by GVXPR04MB10047.eurprd04.prod.outlook.com (2603:10a6:150:117::16)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.9; Thu, 19 Oct
 2023 16:02:15 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%7]) with mapi id 15.20.6907.022; Thu, 19 Oct 2023
 16:02: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: e06eff0e-6e98-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=dnjUPWkitZaFvW2dDz0c/PEJVXmD0Gm2dnh6b60FsYHKMxZgBIq3UgmP5yQe8HMhkUE5q3b0JvsHilFKbt+MdsfLkUslvkra4oPD5Bp1fQB7ziDi9vEx8HLvyxngCY4Qeb/xu62Jb/IS3wFuu0okASsfihNAzbI++VqVHcnJvO5UXtCtNG3M7M+0qV79naSkBM1BC9F8QyoFs+dLtA0YftUzZtlo1x2XUChr8Ui+q/MMcpMzK5f/9DSQ5gmztiwMZYo/0Iy5xA5m7n3hRWh4HNIPe2fzMN0yn2iVrmyyhypNnneNspGMLWHWwKWqdEyEWlEaZSMkxTkfasVbeIX/Ag==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-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+m6EROmYhCJOGP0SLj7cRx7h4LUMWM22ivHs6SHRDs=;
 b=BkHlsfSsDIV0Yh2vNi+ARkp6phmLMT2+n+YjkXNDf4cPLdey9cEniLdijGQPJfBPosFN/JjtVhODbGaBfwQsI+UY8z4LTd2xBJSNl8r+PHz5Chis2n3d0ZvzfjwWTpAiPL/ALsJzUtq+ca1B0GxTLK3rAFuQgszXTTsAPwTqMx0vc3/9CpdeRt9PKeEPEBLdzvO4DuMYyC0oT0Ifv0qrfl52EpMWnBc7FDS88xO23aiRAWFppCnEjmcAUO0UccVH9t1Ggq8QTzzrBxGEqOnYCkj1if9AvuVggk6+xaun4tAWjiYscFquzrH2ds2seYPiwIs8BqJJ704Qd9itR0MQcw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=D+m6EROmYhCJOGP0SLj7cRx7h4LUMWM22ivHs6SHRDs=;
 b=oTQGFQIHkH0g7jyGR8z4mF/PKl7AWytcSpaukocM+Hd0sq1+I+MzESsEV/o9tH6stuqBxR89x49OoM1QaOhjmrILoQkA+rTI4j3WuaEc913keVnlEv6FUbTqZBXQkW3O2SFHfkLjV135cN0OvinZM1aQAXF2FB+367LZ8vIYF/JI4ZFutue1bol9/k1JT/ZdSd5RWLLYB3KHohU10NTlMfMsVW/yhhZnd18qqEgUSFCNnEDx181Blla5MbDtIXMDj9hQdE//9ZvG3XXsGBFiZJmnWKzqWe7V8EFQTI2ocL4rSiLaZVhRmYuRrgpW8GlYs/H6v1pHejdq1DQ8l/8bLA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <84a840c9-30cf-8a51-89cd-a2e48da09a0b@suse.com>
Date: Thu, 19 Oct 2023 18:02:13 +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 v8 2/3] 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.1697720584.git.simone.ballarin@bugseng.com>
 <e7b653d28632c8e198647e67d17c31d018f90d00.1697720584.git.simone.ballarin@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <e7b653d28632c8e198647e67d17c31d018f90d00.1697720584.git.simone.ballarin@bugseng.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_|GVXPR04MB10047:EE_
X-MS-Office365-Filtering-Correlation-Id: bbaeaafc-d97c-4c3d-b1b7-08dbd0bcc36c
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	brZeoXUA+y82LUUgs749i/ZuAlaiqCES2StxtoAqZxhLjCnhTD25AXFvGy0LnPlCIpcCY04+Fo987+aGRE5/Fv3MkCJDXcUufyfW2g96VVbqmTktrUoo2PNF3GIgXvNrVZ455lDrsAMEph2vx2cQwP2xcrHgcec87tKsCmaf5RUl5tSumKKcWCwPqf+uEUUeyPHhCd0fFznMb6SBCu1vfSNYLSTzGiSad9EEqBZElUyfx3ueJp5t91kkZ+U+nM9gcLRV3A4fUDjpxnS3hO/oD1uBIm9Hr9vWNDvbah/7zKTWw19GSOJax6fWgOzfh+Yw+VqJNK3hIj8FUMK6YJvs951lPvVSdX3DOOtaZaJCyT/vMp6HbNOWDuZT637P/yirQR3pVVbKp6aWkOX32di5mZdzNTVIt1oDdDr2NhDumwLCzOXsa6NBikuSSILoS7pEYUhDr1fLyqbrjhMGPVd8gzRs4LCBZPz6Y5ybuQNclT/+JDWNPP+M5zO5QifPBDD/eHAg0MG8Jxu9u85kCv3jOHsh3ktEBd5QSC3YSqp9C5NMr9yNmNwWKEhFNALRizP+sIk8PvXsm+qBNLJP4TCm8u8BFhVyAP3dTt9508Wlkbkl7kfdQH8JnEjJU+6Yq81m4+22X8LAfkjCtKcv402QzQ==
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)(346002)(39860400002)(230922051799003)(64100799003)(451199024)(1800799009)(186009)(6512007)(26005)(6506007)(53546011)(41300700001)(4326008)(5660300002)(8676002)(2906002)(6486002)(8936002)(478600001)(316002)(66946007)(54906003)(6916009)(66476007)(66556008)(31696002)(86362001)(38100700002)(2616005)(36756003)(31686004)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?OGhGWWhwdmxrSytRVkl3RHdTMlExNEFIU1pMYVExZzFlbk9EVEM3dnBRVlRn?=
 =?utf-8?B?Mk4wMFpLTlhEWmlWL042Rmtrd2h3Zlp6emdCaWFZS1BtMXdkUytkTmhMaEFG?=
 =?utf-8?B?WENNUmpqNWI4c3lvMVJrTDVBMkIrT21La0kzNm1ITnJKdS9Nc1RvVS8yYzJi?=
 =?utf-8?B?N05oQkhaT0tpMlZOYUY4QkZ3cCt5OWt1ZWg0WHA0ZDBGSEVKdml6dk0zS0FO?=
 =?utf-8?B?aEliM1kxWnVsTVVZanNRUGpjSDdpcWhXWEtKempwV3lEWUlpSHRQZm5aRzhv?=
 =?utf-8?B?VmxtVEdoQkN1bjE4cmZrMzd3eE55T250Y0NoclArVlRwUGF2ZFZONmVNU1dm?=
 =?utf-8?B?TUdpd0s5d0JiT2xhVElEN1pKM1FadTdwbjJDNjVOb1FmQVdtQzFZMGF6eXhi?=
 =?utf-8?B?V3VpT1VMUys4R1I4eHRINlpBZXJyQStFVW9sQ3EzYklLaGEzZ0RrOGdYdEZY?=
 =?utf-8?B?M0pRVVR4SDliWERtZHQ2ei95eTY0REkvMmkwSHRNbDFNS0ovaXdHREZvaXBm?=
 =?utf-8?B?N0RPMDNDVHFkMkM5YUYxbWRYT2xHNXc5VDhUSURySCtpeEFUYkJ4a1JVWEc2?=
 =?utf-8?B?aU1qQzA1RlREQlpCU2tua3Q2SG00VWh0RklIUGlrdU50a0Z3REVnZytzMlFL?=
 =?utf-8?B?NU5zK0VpaXVyWGgzMGhsZFUyczIvdmUyZVQ3K1BEZ3M5NndhbTVCUWoxQy9Y?=
 =?utf-8?B?eG1ZT1R5M05kYXdzLzFWSzB5ZzhaQzRScUt3MS9PdFNCK0pxbnNncEVHelZw?=
 =?utf-8?B?SHQzSElxZnVqT2pONUYzZktlbVhsdTgxTnVIK2c0SWxEN3VHNy9VVUc5UkRq?=
 =?utf-8?B?VzRwelBZSWpvVlpCQWg4SDZkRFJOWXRDVVg4V3RKMkhxM1VnMGFnRUxJb2VR?=
 =?utf-8?B?UVdlajNuTk1NS1pSV2QxQWJDLzFHM1g2OGJjWGxybmVURkNaREZaTVp3ZmNY?=
 =?utf-8?B?bXJmRmNqV0ZUaVYvdURLbmZuTmM0NHVxOG5UTnFkSUtBa3JXUzhKZ0V3TFJK?=
 =?utf-8?B?amxyQ2g3UnZBb3MybmdtUWlSMCtRb1l4alNxcFhKNjRZQlNYS1ZzWXpSVE9E?=
 =?utf-8?B?WWU2WlVESC9DbWtCY2dzYUZwcUpHdHNnWHQ0TjU0c1FtU3g1Wi9hYlp4Y0Z0?=
 =?utf-8?B?WUlpWE1hRmt1cTJyVzBEM29UckQ0RHpySCs0aGN0TENwaHFiV1ppYWFkaXov?=
 =?utf-8?B?L1dMczdzWmdKejZqVlN4bE8xYUNjMnhqSmdKbFdsWHBGZDRBNkIxRWVkTGdq?=
 =?utf-8?B?Mk1KUkFkblJFNnZuT3BMMFVNYnF4NENwUklYRmJQUDhVUU1CeDNUdHJXeEdn?=
 =?utf-8?B?TXM4YVBDaWFPamQzdkt4dTVPMW5RRStsaVlYeDhrRUt3ZEJJVllEeVB6R0FV?=
 =?utf-8?B?NFB5NlZCekRwWnVacHNJaFpVejl6d2JuRWtrOW1ZS25iS0FETjNKdkNac1NZ?=
 =?utf-8?B?eWhCdGhiRVFWNEo2Zng5VHhTdDczSW5NcEhVUzdyNVlPNTlnd3J1dURnZHFr?=
 =?utf-8?B?YVN5UlVKRmdUUFRZYlQ5YzhwT3MxcVZGT1A3V2pRUTcwdDRpUkE5R0FCaU1X?=
 =?utf-8?B?QWxlVlllYkV4c1Rlb1o3RUNGMFk0RCtUbnVpbDJBZHNqdThFYXVhQ1l2SkFq?=
 =?utf-8?B?R3VjSm1QbkJPaHpvejhxQUVBVHB5NGYxVjQ3ZkZVYnVBdmdvWE1KWktUenpk?=
 =?utf-8?B?UE1ZaWFrdlNJaEoycTNiK1RjSU96RlJON2xKMXRIM3pyKzU3WHBkY2lERTM1?=
 =?utf-8?B?U0VjT24rczFnZUtHTkdnNnhSa05zV1ZnVmk5em5EWWkyMzloQjA4eUlON1cz?=
 =?utf-8?B?NGdhZTdZd0hBdFNXUEswQTNIUjI5U01pUUNUZTlYdHhCUGZKV3hxeVNyaXl2?=
 =?utf-8?B?alRpL3Z4NnJ3Y3A3eVpwYnBuY0lOQ0ZodHJpcHA0cE5tOEs5S3RjVTA3NW1p?=
 =?utf-8?B?dTZUazJMbE5JcUpLUzRmeHRpVkFXd0ZyMk1yaUJtaWQvY25kVU1RdE4rQlZr?=
 =?utf-8?B?SHlMK29nRTBLNENKbHJKRW5yZTkyOVRMVzRuNHZRc3Z6Nzd2ZTRjUDlTUGFu?=
 =?utf-8?B?NHFnTmpSelpRbWpWN3VVdDM3MlkvQ3hGUkdtTzFUQTlreFZzVEg2Ui9FWHF6?=
 =?utf-8?Q?BsuzvkPMpSiLQu81vlJ59EVm6?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: bbaeaafc-d97c-4c3d-b1b7-08dbd0bcc36c
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Oct 2023 16:02:15.5156
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: KlTE6wzXNvPrEigsQYWis/t32LnTgkfle8jANWsQF1DTMPQqgR/TB6f3CDI37KwWQBeauwa5uXMx0RekBfML/w==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: GVXPR04MB10047

On 19.10.2023 15:11, 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: Gianluca Luparini <gianluca.luparini@bugseng.com>
> Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>
> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>

Acked-by: Jan Beulich <jbeulich@suse.com>
albeit ...

> --- 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 looks like an unrelated (but benign) change.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 16:04:33 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 16:04:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619505.964679 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtVVc-0002hW-Jz; Thu, 19 Oct 2023 16:04:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619505.964679; Thu, 19 Oct 2023 16:04: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 1qtVVc-0002hP-HM; Thu, 19 Oct 2023 16:04:28 +0000
Received: by outflank-mailman (input) for mailman id 619505;
 Thu, 19 Oct 2023 16:04: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=g4nO=GB=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qtVVb-0002hJ-9K
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 16:04:27 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur05on2061d.outbound.protection.outlook.com
 [2a01:111:f400:7d00::61d])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 2c7583a6-6e99-11ee-9b0e-b553b5be7939;
 Thu, 19 Oct 2023 18:04:25 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by GVXPR04MB10047.eurprd04.prod.outlook.com (2603:10a6:150:117::16)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.9; Thu, 19 Oct
 2023 16:04:23 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%7]) with mapi id 15.20.6907.022; Thu, 19 Oct 2023
 16:04: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: 2c7583a6-6e99-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=WMtUUvh0Cv0UbuwSXlO/BSzeIeyrHU8Pe1TJGhgYu4B6L4T+wUWS+jUmpUtli8s5XnAUiADHE1MkD64tYP485lSJX0T9Z7+vt42Dgn7pkm4RMFwoGG0eZtJg/0JeRta4GI8Lt6jRQfUoFerlHeCCQAwzNPgpsTv2K4Xr84a37f4mVjjuMpp37g0J+DY0hZYuezog5Ydp8MPyJcd9qigdAMtLLF5KLMG8h6tIMyztBhMg/z+8JECBlXPdUfduXDTvU8cyAeTSCK/8nzm8lWGrAkKJsd3mp3GqECoPm59f6/BQlA6Gpn0xL9UnBZD4jMWJEQNyGxC+BFOA3Iz0p6CQCQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=pDzsckul1S4cNUeSrkIDA9DYg2SxvtrcBdw04tKj2kY=;
 b=KVA3bC18+JIAcZ5h1uqyaBbbRVFPV5/q1clJxE755HbwDFN4cS0JIoogzBpO/CAjWWgK44QrMvMw1I42dB50SXsoOcKQL6B/r7085c+XaJtj3lkxMogskC8XaQ87PGle44OqJUmSZcybUCYIzva/rYjrIuLWAYKRlGnFqgWFoI6MGrtZGSBVJILzqpYnyO+oQCz3mDgRi+bD6bBQe9AQCGL/px6nwdsRY1NVR21nz4ex1iR3era9Z8rMa5b1mzPZ+IhbdrNrXe2Qg5Bjy2F0zQi/PdgQ2tYHjqdumsTXk2hsOZlPWieNx3tsRen9DmlvrwKBkmj+byychwYb5a3odA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=pDzsckul1S4cNUeSrkIDA9DYg2SxvtrcBdw04tKj2kY=;
 b=I99vkH4Lb8jsd6xL4bzqtccIBTScsPeJYrE33ISfBQMEBUnrnFsTi3UbIKt/kKfY48kRmFA+CGhWV43/nXDeKXkfi4QkRroqRg+rZRy1MNVgxbTO1gGUP2H7NuZwaiQwYdNk3ncOG2IgIFpsCWNH5rLAtym29gBpSxrNjPrASVjK2kqg2r3u4PTb+ND/Ju0YkTtxm4kME1QFDBFSaPK0AzSpjx27qh6XHQqdO529epx0iM/1hm7E5GUuYggtDBn4Y2zehHOXQFWgvtvReIbQB5sgKLrg2wXbA81JmweS2HTGqzqiki7ZNt8tgIVQLyaPQzTtkFlEZUO/VyCxWR8Fww==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <148c6dfe-728a-9f3d-73ad-fc7cd7b18277@suse.com>
Date: Thu, 19 Oct 2023 18:04: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 PATCH v8 3/3] 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,
 Gianluca Luparini <gianluca.luparini@bugseng.com>
References: <cover.1697720584.git.simone.ballarin@bugseng.com>
 <c76165797b4a6ae92a514e512fcb3dc0cc9b01fc.1697720584.git.simone.ballarin@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <c76165797b4a6ae92a514e512fcb3dc0cc9b01fc.1697720584.git.simone.ballarin@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0043.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:48::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_|GVXPR04MB10047:EE_
X-MS-Office365-Filtering-Correlation-Id: e3893a05-4901-4e24-104b-08dbd0bd0f82
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	QhVtQYZFic8oY5cDUkStrVH/tcZtizY22akrWPvtoupGTWhhWdUyL3JFDTP3AfsKGSNuTgBgXqcjdjRAuFDtHxJ+CYMS7RON8O4i0SU35pWJaDEnn/SDGzzsvFIQhgCkdFWp2d4tluPCmk7o04+N+CWX7hKiNCAIQuqnyDLjrTXB2olKs5wMxltpDrthcLd8EGGGcn9Z8u365/V6yClIp6l0o576cgMrPojI+zc2HDs1dIujqpRyDU9R7hlc+eBYLas0i987OP9/QqhzrqpIj0uOjHk0ZSe9syfDS6gJkq852yWDdk2Y+gP4EAwOsmd8uwaKT9CegcmEmNyywDUXOvZjMltf/L/SXGudbzwMrIYoVBzIDgPwX1SDmTKADJ6BI6N8e6vfQAMVGd18JhoPbXpRlcqM5fWpEFtpzm1kZUk6B1lP67dM31eaCEd+Ie2yFWYnpMewUK7zHWdwAU1p1rksGEaIo5UPZnV940DO8h3+v9IMRpY+2/b12qSHEW2vmmO+Y2MVOmy4lZtWKJ6Or/2J/KJKqo4fb5LWRQHxD4nXGV9ro7aTmnMZpTP5sLgDZkz5j/O/w7jit0CP48a8Q73/4WkYR/XHt79lxfaDPG77wepxYManqiJBybdDzIH2rIfk9H8g8FMTosf3Zyb5qA==
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)(346002)(39860400002)(230922051799003)(64100799003)(451199024)(1800799009)(186009)(6512007)(26005)(6506007)(53546011)(41300700001)(4326008)(5660300002)(8676002)(2906002)(6486002)(4744005)(8936002)(478600001)(316002)(66946007)(54906003)(6916009)(66476007)(66556008)(31696002)(86362001)(38100700002)(2616005)(36756003)(31686004)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?c3AycVpKZzdzd2ZDNGNmaExocTV0Vyt1aEpzUlAyYW1rYldCSlA4VWc4M21n?=
 =?utf-8?B?VWlMVk1aakdVNmhocTNqdk4wLzJURitpRlFKODBxSmYvYnNVZ1N0Y0c5Y01B?=
 =?utf-8?B?bitKb3hXdVIxditQbDRFT25CVXl0aXU5UVBMSktPM1pVT2lhME5ReFQ1KzVl?=
 =?utf-8?B?eVNEZ09IZnNkaEx0TWdXY3d0STRTYzFzL1pqQlBzTDF5d0VkVWJnME1UM25G?=
 =?utf-8?B?L3ZrVDl1RG81d1NQQndlNWRyYnpMVGNBaXVKeTR5Q3g4UDgvWU55SnF4UkFV?=
 =?utf-8?B?eTAyY1kzNDhzTitIcVV4THFiREhUaXlLZmF4STQxMEcyVXZ6QkhaTVJkbnV1?=
 =?utf-8?B?cTFBZkxwMzQ2M1lmdThzN2s4YURhdFV4bVk4SkFDaEJEY2NiOTNYWHVSaGZ2?=
 =?utf-8?B?QkdBWnhGNXpTM1lvcDJVV2Zia3A4UnhSeGxxYXczaDlRb1lwUHVTckI5VUFt?=
 =?utf-8?B?V0tUcW5NenAyMUcvODFkcGRXbmFwOElSUnluS0xuRGMxYXVGbjBrcTNzUkRJ?=
 =?utf-8?B?VkVtcjNSYVNxUmlEZlhBMk5nWEJhNll0Sm9ReUEva3UxSi90UGF2L1RJY2Nv?=
 =?utf-8?B?ZlRWRXRSWW41TUp4d1o1REN0SUJSQzBHM1NqWExvWkxydTV4KzRLOHZteFVY?=
 =?utf-8?B?OEdRMEdlVFk4S0t0SkhlZHFtZDVLdEMwVUdyekdIdDU0YUlLNFRXMUNiMjhE?=
 =?utf-8?B?Qm1xWjBJUjgzQTh5dVVQVzFRR0N1UTZKdEFNcm9qRUIyYUNZTTQvdFNxMmdi?=
 =?utf-8?B?b3h3MXNPRDl5QWVZVC9lMjhDNi9PR3FJbjNuQnlGK25iOUVzQ3paQThBN3Jo?=
 =?utf-8?B?U05vZnVlN3ZIMkE5ZXZXOGdTMnJKcVJjZXRlaVhLVFJhOU5WeEtDcnk0dlly?=
 =?utf-8?B?dWZER3piMjVHMjJ6QW41b2psQ2grUWFPUUU5NGU1L0pqbjI4aHZLaG9yNmtk?=
 =?utf-8?B?Z2JjOU9Gb0tGaEJpbllaRUVKQTAvN2I4U296WUM2WFJLUXk5eklKUHB1bFVQ?=
 =?utf-8?B?N0RtSDdkT0hhR3hINzNxL05vWHhrRkdWcElBUGUwRXpiOFRXZ1RWcTRVTHZU?=
 =?utf-8?B?QmFyU1Bxa2JzcS9mVFVuVDNuUi9zVTNzYncvT0I5TEY4dmM1YjIzaDdld2hF?=
 =?utf-8?B?WDFYQ2tIOE9PMG1DMGYwdWlKcVZhTjJ6STU3ZGlpVjdQWjJkYmg1UnBPSFFm?=
 =?utf-8?B?Sjd4QlVta2doajd4ZVk1MHdIRXgvK2VrbzlocWVMM0hCU1hTbG9kN2RYcG84?=
 =?utf-8?B?MXdONzU0WWxXMERmaUw2RUhlWTB3MFZScGhIbG5uNWx0dk1ueEZWVVQxblZo?=
 =?utf-8?B?TkJXU09JeXhFS3dES1JXejM4dmZPNStTOGViZzYrTGxOYjhmb09Wd1Z3RHN2?=
 =?utf-8?B?am9ES2ZXYm9HcHl1UmwyWGxydjAxbEZQd1I5L3VyS0tyZjE0K25tRko0bXlx?=
 =?utf-8?B?V2dzT0ZEbTB3RjZBQzhGakhML3ppYnd3YjdPMXdKZkVEVng5T1VjYzgwdFFy?=
 =?utf-8?B?YnRmWm9pTTF1RUpHMWdOTEVCMGpOak5CWWx5WHdkZ0p1RjJWRDlWc2lDSkpF?=
 =?utf-8?B?Zk00eDJwMVJRWkx0dy9XVUNsWVNKOCtReTlOUHBjWkZwb0VOOUFkdkkxVG1q?=
 =?utf-8?B?S3JqNFVsK0tNWWtrQ3dzeHlXU3VUeVVNUDFrWkF6NEo5TXBIcnRudXhGalJQ?=
 =?utf-8?B?Sk5tbnlma1hIVmtZcjI3WkcrRmlRUVhUTDZHUmNhMzJyQmFoc3lqUlhuU2F0?=
 =?utf-8?B?SDR0YnRGSEwvaG1nbGZlRGwrYXZyYTByeHpaTmMrT1VGUWQ3bk4vTU5mVWIz?=
 =?utf-8?B?bG9NRXlmU29jaXg3YW92RWNRNHpZeTB6ek9weGFGSWVzU21pTDhldm1TVGtE?=
 =?utf-8?B?NXBDM0doak9HK1g3NDkxQW02R21IcE1mdlVKUnRNcTZCN2VjRmhmNE9rQ0xJ?=
 =?utf-8?B?YmxmYktiVThUWjE1Qko1MVUxbmpPUGRaamVjQk0yRjd1UkVaR1BnYm5nMEdq?=
 =?utf-8?B?RDJ1KzYrSWs2ajJ3WlUrUkF5ekZqUDlLdGdHVU02V0NHWDJ0VGswVE1iR2ZZ?=
 =?utf-8?B?UEQ0b2xYOUFjWUo5TlV0dDIzV0U4dVFWQk5abzBUcG95WE9UTVlWcVZUWGhO?=
 =?utf-8?Q?hq34rG1jKtF+bupHgYd+O9xM2?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: e3893a05-4901-4e24-104b-08dbd0bd0f82
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Oct 2023 16:04:23.1489
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: S4Ofh5viZxRAO447qx4oARSkTxIDjSYlBgENIIL4mS+R9YL45c0pd1bIj3PbqIJAn/YfeuELHatZlRMYfhONHw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: GVXPR04MB10047

On 19.10.2023 15:11, 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>

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




From xen-devel-bounces@lists.xenproject.org Thu Oct 19 16:13:43 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 16:13:43 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619509.964689 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtVeR-0005Ur-FN; Thu, 19 Oct 2023 16:13:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619509.964689; Thu, 19 Oct 2023 16:13: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 1qtVeR-0005Uk-Cs; Thu, 19 Oct 2023 16:13:35 +0000
Received: by outflank-mailman (input) for mailman id 619509;
 Thu, 19 Oct 2023 16:13: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=IZCy=GB=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qtVeQ-0005UW-3j
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 16:13:34 +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 712f3f64-6e9a-11ee-9b0e-b553b5be7939;
 Thu, 19 Oct 2023 18:13:31 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by sin.source.kernel.org (Postfix) with ESMTP id A2E74CE2F83;
 Thu, 19 Oct 2023 16:13:26 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 72A10C433C7;
 Thu, 19 Oct 2023 16:13: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: 712f3f64-6e9a-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1697732005;
	bh=M5Xh7zKav3Tv9iF3d/TT/YLrmHB9NHIZjCdrhGDsSWU=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=m0a/oScBoNTdMSSYapjpec4kC7b5p1oBkVEL1jIjbUB0YPDymTgAAJkTtsceTkN/R
	 YQ78uywYs5jaT97DlnguhthXlG+Azz8Bq8NUeXkM8Ihf3diyfasYXG/SkRsK+QZLRu
	 mEpCuhywklDaeOaPXLzZZnvxGAdkLhnKUFiLjvYFpNFF9QwpC6XlJthJ1PFsriN/AO
	 nApDCykSlpwzv2yBUTJeCWLqJaEIaL59Tu4bgLoppH6HSUkRvoSd4Ofvp9tkA9BE71
	 F49P6dulf4ZxjlXoIyJQMtgwSjECVIKxrMkjrtjqf2VwDSrW0Nv0klW7BV0QSRLJaT
	 B6CM+AxxU53rQ==
Date: Thu, 19 Oct 2023 09:13:22 -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, 
    Community Manager <community.manager@xenproject.org>, 
    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>, 
    =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>, 
    Wei Chen <wei.chen@arm.com>
Subject: Re: [PATCH 1/3] CHANGELOG.md: Mention the MISRA-C improvement in
 4.18 dev cycle
In-Reply-To: <20231019052050.1032492-2-Henry.Wang@arm.com>
Message-ID: <alpine.DEB.2.22.394.2310190911020.1945130@ubuntu-linux-20-04-desktop>
References: <20231019052050.1032492-1-Henry.Wang@arm.com> <20231019052050.1032492-2-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

On Thu, 19 Oct 2023, Henry Wang wrote:
> Signed-off-by: Henry Wang <Henry.Wang@arm.com>
> ---
>  CHANGELOG.md | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/CHANGELOG.md b/CHANGELOG.md
> index 165c5caf9b..47e98f036f 100644
> --- a/CHANGELOG.md
> +++ b/CHANGELOG.md
> @@ -33,6 +33,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
>     nodes using a device tree overlay binary (.dtbo).
>   - Introduce two new hypercalls to map the vCPU runstate and time areas by
>     physical rather than linear/virtual addresses.
> + - The project has now officially adopted 72 rules of MISRA-C.

I counted them again, they are 71 today. We have accepted 3 more
recently but for the CHANGELOG.md I would stick with what is on
docs/misra/rules.rst

Assuming 72 is changed to 71 on commit:

Acked-by: Stefano Stabellini <sstabellini@kernel.org>


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 16:14:10 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 16:14:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619511.964699 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtVez-00063w-Ny; Thu, 19 Oct 2023 16:14:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619511.964699; Thu, 19 Oct 2023 16:14: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 1qtVez-00063p-LL; Thu, 19 Oct 2023 16:14:09 +0000
Received: by outflank-mailman (input) for mailman id 619511;
 Thu, 19 Oct 2023 16:14: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=IZCy=GB=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qtVey-0005uY-Az
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 16:14:08 +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 871da096-6e9a-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 18:14:07 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by dfw.source.kernel.org (Postfix) with ESMTP id DAEA261940;
 Thu, 19 Oct 2023 16:14:05 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 109ACC433C8;
 Thu, 19 Oct 2023 16:14: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: 871da096-6e9a-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1697732045;
	bh=hNoHyFi2nZwyQtAamdqORFzJx3iK8BRIJgVnZltx0OE=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=UyXCAQ3AS99BlIh6GKbmbgT1QyBeKH5R5/gwUyBXUjorDyZgsc+VGiZeu1LlmGYVH
	 Edb2bpe76punjzN1FJbkrWtd0CrQwFyBcHRwAHRzBnrlGVIlcmhexan5ysEzDnD3KX
	 HR05S68XYWxjX/RViKMoGwdcBTUt/Sz4dadVzFmLnCZjckG6XTMoxb48LJzj5Q1Srn
	 snl54zWUjjQiOm7Udj8rZ7rbzqm60Cr1O64PbyfwTo7qAMtqOUxRh7usyWU1hKkgbT
	 Df/eHHJ6CW4hSmA+NPMjtgQf8shEGhtJiz118pK+CtqRv73qwg22wFwT+SDfylAQqR
	 aO+OdObMSZsXg==
Date: Thu, 19 Oct 2023 09:14:02 -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, 
    Community Manager <community.manager@xenproject.org>, 
    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>, 
    =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>, 
    Wei Chen <wei.chen@arm.com>
Subject: Re: [PATCH 2/3] CHANGELOG.md: Set 4.18 release date and tag
In-Reply-To: <20231019052050.1032492-3-Henry.Wang@arm.com>
Message-ID: <alpine.DEB.2.22.394.2310190913360.1945130@ubuntu-linux-20-04-desktop>
References: <20231019052050.1032492-1-Henry.Wang@arm.com> <20231019052050.1032492-3-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

On Thu, 19 Oct 2023, Henry Wang wrote:
> Signed-off-by: Henry Wang <Henry.Wang@arm.com>
> ---
>  CHANGELOG.md | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/CHANGELOG.md b/CHANGELOG.md
> index 47e98f036f..3c83878c9b 100644
> --- a/CHANGELOG.md
> +++ b/CHANGELOG.md
> @@ -4,7 +4,7 @@ Notable changes to Xen will be documented in this file.
>  
>  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
>  
> -## [unstable UNRELEASED](https://xenbits.xen.org/gitweb/?p=xen.git;a=shortlog;h=staging) - TBD
> +## [4.18.0](https://xenbits.xen.org/gitweb/?p=xen.git;a=shortlog;h=RELEASE-4.18.0) - 2023-10-30

Should we use xenbits.xenproject.org instead? I think that's the
official name. In any case:

Acked-by: Stefano Stabellini <sstabellini@kernel.org>


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 16:14:48 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 16:14:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619512.964710 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtVfa-0006mH-0I; Thu, 19 Oct 2023 16:14:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619512.964710; Thu, 19 Oct 2023 16:14: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 1qtVfZ-0006mA-Te; Thu, 19 Oct 2023 16:14:45 +0000
Received: by outflank-mailman (input) for mailman id 619512;
 Thu, 19 Oct 2023 16:14: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=IZCy=GB=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qtVfY-0006kd-BV
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 16:14:44 +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 9bdda8a3-6e9a-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 18:14: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 897B9CE2B53;
 Thu, 19 Oct 2023 16:14:40 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 5B487C433C7;
 Thu, 19 Oct 2023 16:14: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: 9bdda8a3-6e9a-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1697732079;
	bh=EOm7pPR+kyeRXvRZKKVaxeOcsLoE0YHFTknGdoTCmq0=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=T24FQvWCXNNY4o/7vQeG+0Sel+t+N37jEAuHaZRATPjRFWfY0Z5ZBmMuC7i4C3616
	 4ljwpOps4DfIcSNoWZQPPwT4D4vkKxfTAC4NR0anByTG45sOJdXE7I9p1A/506s2Yp
	 B1RnX6J8ZvNg+B8ZblmJnF1g+d2rVZrEnxJZ5+OtlnUcdInFw6ImLVhRBy7BXtl4iT
	 XGmMOse6Yf1oEULVu8Tr7C/EVKp/tCc9P0KIagOMiXaWJFYkIn7EncZVALpMBnvW0z
	 o6kFKAgsKDqEd6S3iiKI4r1RY2MIfUAdrw7uqefGTh+C2IeTgLW8BTbFfySpFu9zDh
	 zMRfCSysgO0KQ==
Date: Thu, 19 Oct 2023 09:14:37 -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, 
    Community Manager <community.manager@xenproject.org>, 
    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>, 
    =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>, 
    Wei Chen <wei.chen@arm.com>
Subject: Re: [PATCH 3/3] CHANGELOG.md: Start new "unstable" section
In-Reply-To: <20231019052050.1032492-4-Henry.Wang@arm.com>
Message-ID: <alpine.DEB.2.22.394.2310190914110.1945130@ubuntu-linux-20-04-desktop>
References: <20231019052050.1032492-1-Henry.Wang@arm.com> <20231019052050.1032492-4-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

On Thu, 19 Oct 2023, Henry Wang wrote:
> Signed-off-by: Henry Wang <Henry.Wang@arm.com>
> ---
>  CHANGELOG.md | 8 ++++++++
>  1 file changed, 8 insertions(+)
> 
> diff --git a/CHANGELOG.md b/CHANGELOG.md
> index 3c83878c9b..48aff24f3a 100644
> --- a/CHANGELOG.md
> +++ b/CHANGELOG.md
> @@ -4,6 +4,14 @@ Notable changes to Xen will be documented in this file.
>  
>  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
>  
> +## [unstable UNRELEASED](https://xenbits.xen.org/gitweb/?p=xen.git;a=shortlog;h=staging) - TBD

same here about xen.org/xenproject.org

In any case:

Acked-by: Stefano Stabellini <sstabellini@kernel.org>


> +### Changed
> +
> +### Added
> +
> +### Removed
> +
>  ## [4.18.0](https://xenbits.xen.org/gitweb/?p=xen.git;a=shortlog;h=RELEASE-4.18.0) - 2023-10-30
>  
>  ### Changed



From xen-devel-bounces@lists.xenproject.org Thu Oct 19 16:15:26 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 16:15:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619516.964719 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtVgE-0007SG-Ck; Thu, 19 Oct 2023 16:15:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619516.964719; Thu, 19 Oct 2023 16:15: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 1qtVgE-0007S9-A0; Thu, 19 Oct 2023 16:15:26 +0000
Received: by outflank-mailman (input) for mailman id 619516;
 Thu, 19 Oct 2023 16:15: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=IZCy=GB=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qtVgD-0006kd-J9
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 16:15:25 +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 b5c41d94-6e9a-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 18:15:25 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by ams.source.kernel.org (Postfix) with ESMTP id 81802B82AB5;
 Thu, 19 Oct 2023 16:15:24 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id D2CABC433C9;
 Thu, 19 Oct 2023 16:15: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: b5c41d94-6e9a-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1697732123;
	bh=vB5VkfwPmSVghVj8mrg+kAqhnvfwS+dBOSgJzXw7e1o=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=N1vb+CX2T1nFMP8MWO5nINH0H9y8yiogQI0Up+R9AGCxEBhtrUPyZDvVOH9kJq1rX
	 j06tc8NCxWu2/bFf4j/KBewqHR8gjcfnlQnkaAi8Dpr2wzaOHaD7A9FMQprA4+dkCY
	 t6WgKa14HlHZ4hE2Wo1SqbsazkghswwqU93RdXlU0pw86Y6RSKUsOb2zsNgUCqD4Ke
	 QR43fmQOCh0ezuTVcuwXEMaDwfVm35cZam8RICF7CVC6kHnCGd6Poh+vNtm0sPz8zs
	 Fovxo9Gi3k/vSL0cf+Hqu4Hc7TSGEsTZz0B1vxEb0VguStL1sop2cO//60klTUE72j
	 1pyMLeN400EjA==
Date: Thu, 19 Oct 2023 09:15:21 -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>, 
    George Dunlap <george.dunlap@cloud.com>, 
    Stefano Stabellini <stefano.stabellini@amd.com>, jgross@suse.com, 
    julien@xen.org, wl@xen.org, xen-devel@lists.xenproject.org
Subject: Re: [PATCH] cxenstored: wait until after reset to notify dom0less
 domains
In-Reply-To: <30394e20-04cd-9978-f9fb-575148f87104@suse.com>
Message-ID: <alpine.DEB.2.22.394.2310190914570.1945130@ubuntu-linux-20-04-desktop>
References: <20231013230624.1007969-1-sstabellini@kernel.org> <55f70f98-4a84-401c-f9a4-3cb50ca1418c@suse.com> <alpine.DEB.2.22.394.2310181430550.965337@ubuntu-linux-20-04-desktop> <30394e20-04cd-9978-f9fb-575148f87104@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, 19 Oct 2023, Jan Beulich wrote:
> On 18.10.2023 23:31, Stefano Stabellini wrote:
> > On Wed, 17 Oct 2023, Jan Beulich wrote:
> >>
> >> On 14.10.2023 01:06, Stefano Stabellini wrote:
> >>> From: George Dunlap <george.dunlap@cloud.com>
> >>>
> >>> Commit fc2b57c9a ("xenstored: send an evtchn notification on
> >>> introduce_domain") introduced the sending of an event channel to the
> >>> guest when first introduced, so that dom0less domains waiting for the
> >>> connection would know that xenstore was ready to use.
> >>>
> >>> Unfortunately, it was introduced in introduce_domain(), which 1) is
> >>> called by other functions, where such functionality is unneeded, and
> >>> 2) after the main XS_INTRODUCE call, calls domain_conn_reset().  This
> >>> introduces a race condition, whereby if xenstored is delayed, a domain
> >>> can wake up, send messages to the buffer, only to have them deleted by
> >>> xenstore before finishing its processing of the XS_INTRODUCE message.
> >>>
> >>> Move the connect-and-notfy call into do_introduce() instead, after the
> >>> domain_conn_rest(); predicated on the state being in the
> >>> XENSTORE_RECONNECT state.
> >>>
> >>> (We don't need to check for "restoring", since that value is always
> >>> passed as "false" from do_domain_introduce()).
> >>>
> >>> Also take the opportunity to add a missing wmb barrier after resetting
> >>> the indexes of the ring in domain_conn_reset.
> >>>
> >>> This change will also remove an extra event channel notification for
> >>> dom0 (because the notification is now done by do_introduce which is not
> >>> called for dom0.) The extra dom0 event channel notification was only
> >>> introduced by fc2b57c9a and was never present before. It is not needed
> >>> because dom0 is the one to tell xenstored the connection parameters, so
> >>> dom0 has to know that the ring page is setup correctly by the time
> >>> xenstored starts looking at it. It is dom0 that performs the ring page
> >>> init.
> >>>
> >>> Signed-off-by: George Dunlap <george.dunlap@cloud.com>
> >>> Signed-off-by: Stefano Stabellini <stefano.stabellini@amd.com>
> >>
> >> Should this have had a Fixes: tag thus marking it to pick up for
> >> backport?
> > 
> > Sorry this was committed already
> 
> That's why I used "have had". I still need an answer to the question
> though; your reply only hints towards "yes".

Yes, I would add the Fixes tag


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 16:19:58 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 16:19:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619522.964730 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtVkX-0000i7-VT; Thu, 19 Oct 2023 16:19:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619522.964730; Thu, 19 Oct 2023 16:19: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 1qtVkX-0000i0-SM; Thu, 19 Oct 2023 16:19:53 +0000
Received: by outflank-mailman (input) for mailman id 619522;
 Thu, 19 Oct 2023 16:19: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=IZCy=GB=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qtVkX-0000hu-AG
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 16:19: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 53cb7124-6e9b-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 18:19: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 53AB8CE2C62;
 Thu, 19 Oct 2023 16:19:47 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id E106AC433C7;
 Thu, 19 Oct 2023 16: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: 53cb7124-6e9b-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1697732386;
	bh=5ff8IyMm44pEyUVsyvPOzCu4VkXWd+IomOI7ZLX2Pp4=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=gHyFy7pgWsgRDFbHe6SbatjGOCalNgthpOJzzHyGvlx/wi3ptAxVYo28xl8vJMIS7
	 userMBq7+GEqBlhFkF1BkwB4WJLWiWSRKdwmRaf7JHMPyMhzvWt+XlMNJ0ysC+qqY8
	 3E+WXtfGgzVT7MTSkfu1LlVODcqSh52C5vPDiWlM04gnj5ZYR+DUF236iqVU/vcbsf
	 tbyS9hWZLmIL+5jePJrz7x9zStVuT0OZcvAEN8WQ5aCH+YHxaIewM03yYSN3JrZ/et
	 gNvOCJN1Mrms6ZJ+rOqK+IHTG7AfktpwBJeJjL5zKDgoyLihtlg9eqDlCe899V2MGP
	 je+3oV9LBLL6Q==
Date: Thu, 19 Oct 2023 09:19: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>, 
    Simone Ballarin <simone.ballarin@bugseng.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
Subject: Re: [XEN PATCH v2 00/10] address violations of MISRA C:2012 Directive
 4.10
In-Reply-To: <e642bc2a-cefa-4ee4-6394-3c10102e8164@suse.com>
Message-ID: <alpine.DEB.2.22.394.2310190915590.1945130@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> <725f5193-c8d3-1bc8-cd62-2a2b1b5ecc01@suse.com> <alpine.DEB.2.22.394.2310171709310.965337@ubuntu-linux-20-04-desktop>
 <ead797ed-84cc-fb70-5259-7e11211d049e@suse.com> <alpine.DEB.2.22.394.2310181739270.965337@ubuntu-linux-20-04-desktop> <e642bc2a-cefa-4ee4-6394-3c10102e8164@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, 19 Oct 2023, Jan Beulich wrote:
> On 19.10.2023 02:44, Stefano Stabellini wrote:
> > On Wed, 18 Oct 2023, Jan Beulich wrote:
> >> On 18.10.2023 02:48, Stefano Stabellini wrote:
> >>> On Mon, 16 Oct 2023, Jan Beulich wrote:
> >>>> On 29.09.2023 00:24, Stefano Stabellini wrote:
> >>>>> 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:
> >>>>
> >>>> ... "least resistance" won't gain us much, as hardly any guards don't
> >>>> start with an underscore.
> >>>>
> >>>>> - 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__ ?
> >>>>
> >>>> There are no headers in xen/include/. For (e.g.) xen/include/xen/ we
> >>>> may go with XEN_BLAH_H; whether ASM prefixes are needed I'm not sure;
> >>>> we could go with just ARM_BLAH_H and X86_BLAH_H?
> >>>>
> >>>> The primary question though is (imo) how to deal with private headers,
> >>>> such that the risk of name collisions is as small as possible.
> >>>
> >>> Looking at concrete examples under xen/include/xen:
> >>> xen/include/xen/mm.h __XEN_MM_H__
> >>> xen/include/xen/dm.h __XEN_DM_H__
> >>> xen/include/xen/hypfs.h __XEN_HYPFS_H__
> >>>
> >>> So I think we should do for consistency:
> >>> xen/include/xen/blah.h __XEN_BLAH_H__
> >>>
> >>> Even if we know the leading underscore are undesirable, in this case I
> >>> would prefer consistency.
> >>
> >> I'm kind of okay with that. FTAOD - here and below you mean to make this
> >> one explicit first exception from the "no new leading underscores" goal,
> >> for newly added headers?
> > 
> > Yes. The reason is for consistency with the existing header files.
> > 
> > 
> >>> On the other hand looking at ARM examples:
> >>> xen/arch/arm/include/asm/traps.h __ASM_ARM_TRAPS__
> >>> xen/arch/arm/include/asm/time.h __ARM_TIME_H__
> >>> xen/arch/arm/include/asm/sysregs.h __ASM_ARM_SYSREGS_H
> >>> xen/arch/arm/include/asm/io.h _ASM_IO_H
> >>>
> >>> And also looking at x86 examples:
> >>> xen/arch/x86/include/asm/paging.h _XEN_PAGING_H
> >>> xen/arch/x86/include/asm/p2m.h _XEN_ASM_X86_P2M_H
> >>> xen/arch/x86/include/asm/io.h _ASM_IO_H
> >>>
> >>> Thet are very inconsistent.
> >>>
> >>>
> >>> So for ARM and X86 headers I think we are free to pick anything we want,
> >>> including your suggested ARM_BLAH_H and X86_BLAH_H. Those are fine by
> >>> me.
> >>
> >> To be honest, I'd prefer a global underlying pattern, i.e. if common
> >> headers are "fine" to use leading underscores for guards, arch header
> >> should, too.
> > 
> > I am OK with that too. We could go with:
> > __ASM_ARM_BLAH_H__
> > __ASM_X86_BLAH_H__
> > 
> > I used "ASM" to make it easier to differentiate with the private headers
> > below. Also the version without "ASM" would work but it would only
> > differ with the private headers in terms of leading underscores. I
> > thought that also having "ASM" would help readability and help avoid
> > confusion.
> > 
> > 
> >>> For private headers such as:
> >>> xen/arch/arm/vuart.h __ARCH_ARM_VUART_H__
> >>> xen/arch/arm/decode.h __ARCH_ARM_DECODE_H_
> >>> xen/arch/x86/mm/p2m.h __ARCH_MM_P2M_H__
> >>> xen/arch/x86/hvm/viridian/private.h X86_HVM_VIRIDIAN_PRIVATE_H
> >>>
> >>> More similar but still inconsistent. I would go with ARCH_ARM_BLAH_H and
> >>> ARCH_X86_BLAH_H for new headers.
> >>
> >> I'm afraid I don't like this, as deeper paths would lead to unwieldy
> >> guard names. If we continue to use double-underscore prefixed names
> >> in common and arch headers, why don't we demand no leading underscores
> >> and no path-derived prefixes in private headers? That'll avoid any
> >> collisions between the two groups.
> > 
> > OK, so for private headers:
> > 
> > ARM_BLAH_H
> > X86_BLAH_H
> > 
> > What that work for you?
> 
> What are the ARM_ and X86_ prefixes supposed to indicate here? Or to ask
> differently, how would you see e.g. common/decompress.h's guard named?

I meant that:

xen/arch/arm/blah.h would use ARM_BLAH_H
xen/arch/x86/blah.h would use X86_BLAH_H

You have a good question on something like xen/common/decompress.h and
xen/common/event_channel.h.  What do you think about:

COMMON_BLAH_H, so specifically COMMON_DECOMPRESS_H

otherwise:

XEN_BLAH_H, so specifically XEN_DECOMPRESS_H

I prefer COMMON_BLAH_H but I think both versions are OK.


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 16:21:43 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 16:21:43 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619524.964739 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtVmI-000305-9O; Thu, 19 Oct 2023 16:21:42 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619524.964739; Thu, 19 Oct 2023 16: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 1qtVmI-0002zy-6U; Thu, 19 Oct 2023 16:21:42 +0000
Received: by outflank-mailman (input) for mailman id 619524;
 Thu, 19 Oct 2023 16: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=b9Lg=GB=casper.srs.infradead.org=BATV+06ae5fa416ae820d9d5a+7361+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qtVmH-0002zq-8W
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 16:21:41 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 936ca045-6e9b-11ee-9b0e-b553b5be7939;
 Thu, 19 Oct 2023 18:21:37 +0200 (CEST)
Received: from [2001:8b0:10b:5:583b:153f:ff9:f813]
 (helo=u3832b3a9db3152.ant.amazon.com)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qtVmA-0081qO-LG; Thu, 19 Oct 2023 16: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: 936ca045-6e9b-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=MIME-Version:Content-Type:Date:Cc:To:
	From:Subject:Message-ID:Sender:Reply-To:Content-Transfer-Encoding:Content-ID:
	Content-Description:In-Reply-To:References;
	bh=8/aCv9ZvI17YL8PRWe77kWCnwdWP8QE7b1K0f1aRw9M=; b=T0+Uqjj2wl7h6PtyV7BLUeHTEn
	sQMxM4qOnd+jVKg9Kjr8AKEpGF6wQmivHDuwC4AB883Uuplm5wh6OCKpHQnJPYiE3jFQwEQgxxfVu
	+9Cz7XQQTycItZ3RKufDu+4c4AHfcYDGQll+r1coQGH/cdmDKKPvrrCefBWR45Idi9hZ5JgDYeehH
	MhI5U8W98VI3owqpb8p7vLfcAto90/l6myXIU04f7Q2HS4NiFuoKk7plbAFdmQBx8F+BELTDYFnZY
	D5UDem0r5F1Dn9BYcswGjuUaRh9Y3Mo1Ogoyf4X5KeKwaOFL/mpB04X6iVNs56vRQl3X/QDJNZSR1
	ezKNRwtw==;
Message-ID: <de07d56188f13e222ddaa1b963c20f8d7d61350e.camel@infradead.org>
Subject: [PATCH] ns16550c: avoid crash in ns16550_endboot in PV shim mode
From: David Woodhouse <dwmw2@infradead.org>
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: Thu, 19 Oct 2023 17:21:33 +0100
Content-Type: multipart/signed; micalg="sha-256"; protocol="application/pkcs7-signature";
	boundary="=-IB4aNmT/qGBPAd3gX8/a"
User-Agent: Evolution 3.44.4-0ubuntu2 
MIME-Version: 1.0
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html


--=-IB4aNmT/qGBPAd3gX8/a
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

From: David Woodhouse <dwmw@amazon.co.uk>

In shim mode there is no hardware_domain. Dereferencing the pointer
doesn't end well.

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
This is about as far as I got in my abortive attempt to use the PV shim
without an actual PV console being provided by the HVM hosting
environment. It still doesn't pass the guest's console through to
serial; that only seems to shim to an actual PV console.

 xen/drivers/char/ns16550.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/xen/drivers/char/ns16550.c b/xen/drivers/char/ns16550.c
index 28ddedd50d..0818f5578c 100644
--- a/xen/drivers/char/ns16550.c
+++ b/xen/drivers/char/ns16550.c
@@ -586,6 +586,8 @@ static void __init cf_check ns16550_endboot(struct seri=
al_port *port)
=20
     if ( uart->remapped_io_base )
         return;
+    if (!hardware_domain)
+        return;
     rv =3D ioports_deny_access(hardware_domain, uart->io_base, uart->io_ba=
se + 7);
     if ( rv !=3D 0 )
         BUG();
--=20
2.34.1



--=-IB4aNmT/qGBPAd3gX8/a
Content-Type: application/pkcs7-signature; name="smime.p7s"
Content-Disposition: attachment; filename="smime.p7s"
Content-Transfer-Encoding: base64

MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgEFADCABgkqhkiG9w0BBwEAAKCCEkQw
ggYQMIID+KADAgECAhBNlCwQ1DvglAnFgS06KwZPMA0GCSqGSIb3DQEBDAUAMIGIMQswCQYDVQQG
EwJVUzETMBEGA1UECBMKTmV3IEplcnNleTEUMBIGA1UEBxMLSmVyc2V5IENpdHkxHjAcBgNVBAoT
FVRoZSBVU0VSVFJVU1QgTmV0d29yazEuMCwGA1UEAxMlVVNFUlRydXN0IFJTQSBDZXJ0aWZpY2F0
aW9uIEF1dGhvcml0eTAeFw0xODExMDIwMDAwMDBaFw0zMDEyMzEyMzU5NTlaMIGWMQswCQYDVQQG
EwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYD
VQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50
aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC
AQEAyjztlApB/975Rrno1jvm2pK/KxBOqhq8gr2+JhwpKirSzZxQgT9tlC7zl6hn1fXjSo5MqXUf
ItMltrMaXqcESJuK8dtK56NCSrq4iDKaKq9NxOXFmqXX2zN8HHGjQ2b2Xv0v1L5Nk1MQPKA19xeW
QcpGEGFUUd0kN+oHox+L9aV1rjfNiCj3bJk6kJaOPabPi2503nn/ITX5e8WfPnGw4VuZ79Khj1YB
rf24k5Ee1sLTHsLtpiK9OjG4iQRBdq6Z/TlVx/hGAez5h36bBJMxqdHLpdwIUkTqT8se3ed0PewD
ch/8kHPo5fZl5u1B0ecpq/sDN/5sCG52Ds+QU5O5EwIDAQABo4IBZDCCAWAwHwYDVR0jBBgwFoAU
U3m/WqorSs9UgOHYm8Cd8rIDZsswHQYDVR0OBBYEFAnA8vwL2pTbX/4r36iZQs/J4K0AMA4GA1Ud
DwEB/wQEAwIBhjASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEF
BQcDBDARBgNVHSAECjAIMAYGBFUdIAAwUAYDVR0fBEkwRzBFoEOgQYY/aHR0cDovL2NybC51c2Vy
dHJ1c3QuY29tL1VTRVJUcnVzdFJTQUNlcnRpZmljYXRpb25BdXRob3JpdHkuY3JsMHYGCCsGAQUF
BwEBBGowaDA/BggrBgEFBQcwAoYzaHR0cDovL2NydC51c2VydHJ1c3QuY29tL1VTRVJUcnVzdFJT
QUFkZFRydXN0Q0EuY3J0MCUGCCsGAQUFBzABhhlodHRwOi8vb2NzcC51c2VydHJ1c3QuY29tMA0G
CSqGSIb3DQEBDAUAA4ICAQBBRHUAqznCFfXejpVtMnFojADdF9d6HBA4kMjjsb0XMZHztuOCtKF+
xswhh2GqkW5JQrM8zVlU+A2VP72Ky2nlRA1GwmIPgou74TZ/XTarHG8zdMSgaDrkVYzz1g3nIVO9
IHk96VwsacIvBF8JfqIs+8aWH2PfSUrNxP6Ys7U0sZYx4rXD6+cqFq/ZW5BUfClN/rhk2ddQXyn7
kkmka2RQb9d90nmNHdgKrwfQ49mQ2hWQNDkJJIXwKjYA6VUR/fZUFeCUisdDe/0ABLTI+jheXUV1
eoYV7lNwNBKpeHdNuO6Aacb533JlfeUHxvBz9OfYWUiXu09sMAviM11Q0DuMZ5760CdO2VnpsXP4
KxaYIhvqPqUMWqRdWyn7crItNkZeroXaecG03i3mM7dkiPaCkgocBg0EBYsbZDZ8bsG3a08LwEsL
1Ygz3SBsyECa0waq4hOf/Z85F2w2ZpXfP+w8q4ifwO90SGZZV+HR/Jh6rEaVPDRF/CEGVqR1hiuQ
OZ1YL5ezMTX0ZSLwrymUE0pwi/KDaiYB15uswgeIAcA6JzPFf9pLkAFFWs1QNyN++niFhsM47qod
x/PL+5jR87myx5uYdBEQkkDc+lKB1Wct6ucXqm2EmsaQ0M95QjTmy+rDWjkDYdw3Ms6mSWE3Bn7i
5ZgtwCLXgAIe5W8mybM2JzCCBhQwggT8oAMCAQICEQDGvhmWZ0DEAx0oURL6O6l+MA0GCSqGSIb3
DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYD
VQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28g
UlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMB4XDTIyMDEwNzAw
MDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJARYTZHdtdzJAaW5mcmFkZWFkLm9y
ZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3GpC2bomUqk+91wLYBzDMcCj5C9m6
oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZHh7htyAkWYVoFsFPrwHounto8xTsy
SSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT9YgcBqKCo65pTFmOnR/VVbjJk4K2
xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNjP+qDrh0db7PAjO1D4d5ftfrsf+kd
RR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy2U+eITZ5LLE5s45mX2oPFknWqxBo
bQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3BgBEmfsYWlBXO8rVXfvPgLs32VdV
NZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/7auNVRmPB3v5SWEsH8xi4Bez2V9U
KxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmdlFYhAflWKQ03Ufiu8t3iBE3VJbc2
5oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9aelIl6vtbhMA+l0nfrsORMa4kobqQ5
C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMBAAGjggHMMIIByDAfBgNVHSMEGDAW
gBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeDMcimo0oz8o1R1Nver3ZVpSkwDgYD
VR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYwFAYIKwYBBQUHAwQGCCsGAQUFBwMC
MEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYBBQUHAgEWF2h0dHBzOi8vc2VjdGln
by5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9jcmwuc2VjdGlnby5jb20vU2VjdGln
b1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1haWxDQS5jcmwwgYoGCCsGAQUFBwEB
BH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdvLmNvbS9TZWN0aWdvUlNBQ2xpZW50
QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAjBggrBgEFBQcwAYYXaHR0cDovL29j
c3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5mcmFkZWFkLm9yZzANBgkqhkiG9w0B
AQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQvQ/fzPXmtR9t54rpmI2TfyvcKgOXp
qa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvIlSPrzIB4Z2wyIGQpaPLlYflrrVFK
v9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9ChWFfgSXvrWDZspnU3Gjw/rMHrGnql
Htlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0whpBtXdyDjzBtQTaZJ7zTT/vlehc/
tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9IzCCBhQwggT8oAMCAQICEQDGvhmW
Z0DEAx0oURL6O6l+MA0GCSqGSIb3DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3Jl
YXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0
ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJl
IEVtYWlsIENBMB4XDTIyMDEwNzAwMDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJ
ARYTZHdtdzJAaW5mcmFkZWFkLm9yZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3
GpC2bomUqk+91wLYBzDMcCj5C9m6oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZH
h7htyAkWYVoFsFPrwHounto8xTsySSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT
9YgcBqKCo65pTFmOnR/VVbjJk4K2xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNj
P+qDrh0db7PAjO1D4d5ftfrsf+kdRR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy
2U+eITZ5LLE5s45mX2oPFknWqxBobQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3
BgBEmfsYWlBXO8rVXfvPgLs32VdVNZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/
7auNVRmPB3v5SWEsH8xi4Bez2V9UKxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmd
lFYhAflWKQ03Ufiu8t3iBE3VJbc25oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9ae
lIl6vtbhMA+l0nfrsORMa4kobqQ5C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMB
AAGjggHMMIIByDAfBgNVHSMEGDAWgBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeD
Mcimo0oz8o1R1Nver3ZVpSkwDgYDVR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYw
FAYIKwYBBQUHAwQGCCsGAQUFBwMCMEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYB
BQUHAgEWF2h0dHBzOi8vc2VjdGlnby5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9j
cmwuc2VjdGlnby5jb20vU2VjdGlnb1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1h
aWxDQS5jcmwwgYoGCCsGAQUFBwEBBH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdv
LmNvbS9TZWN0aWdvUlNBQ2xpZW50QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAj
BggrBgEFBQcwAYYXaHR0cDovL29jc3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5m
cmFkZWFkLm9yZzANBgkqhkiG9w0BAQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQv
Q/fzPXmtR9t54rpmI2TfyvcKgOXpqa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvI
lSPrzIB4Z2wyIGQpaPLlYflrrVFKv9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9Ch
WFfgSXvrWDZspnU3Gjw/rMHrGnqlHtlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0w
hpBtXdyDjzBtQTaZJ7zTT/vlehc/tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9
IzGCBMcwggTDAgEBMIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVz
dGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMT
NVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEA
xr4ZlmdAxAMdKFES+jupfjANBglghkgBZQMEAgEFAKCCAeswGAYJKoZIhvcNAQkDMQsGCSqGSIb3
DQEHATAcBgkqhkiG9w0BCQUxDxcNMjMxMDE5MTYyMTMzWjAvBgkqhkiG9w0BCQQxIgQgf0TVc2iB
fnzn0cKNis8ils8mQlF+bAWGzUghUmBiY1Iwgb0GCSsGAQQBgjcQBDGBrzCBrDCBljELMAkGA1UE
BhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEYMBYG
A1UEChMPU2VjdGlnbyBMaW1pdGVkMT4wPAYDVQQDEzVTZWN0aWdvIFJTQSBDbGllbnQgQXV0aGVu
dGljYXRpb24gYW5kIFNlY3VyZSBFbWFpbCBDQQIRAMa+GZZnQMQDHShREvo7qX4wgb8GCyqGSIb3
DQEJEAILMYGvoIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVy
MRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNl
Y3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEAxr4Z
lmdAxAMdKFES+jupfjANBgkqhkiG9w0BAQEFAASCAgA8rT6lO5KJfAY7rEv6YfBPIkLSzxPtNA6Y
RYjqi5LDJnusV2Qve49eEeKp5KSxAFLPBt8PpT/LIvlhLOwWbSBxLhpmokyNnElQLm4Tsg14oZr6
1P8iBZDgI6Wf8yMGb/jec8Mv1chy3h+nxM0nvIkAODr12QM7jNZ0pxUGAIlyoxVERuqlPwOHaevL
UcHc/yEZoL2rTDBjZOFX2wEa8qKSQxjJIrQmcl3gbfJR+3CrexVgG5EKWvLhbkrDAfpLVjBKJ6YW
/kqEgULtXfbJ0IMqyHmICFS9bqOgLNERxCZycppAp5DHJhfcElaA84n4zPM4zjycJ5Yk3Q+ahjQJ
kLeMkJreORuxFoW9r61Y4YcSmwLlv/K0mQecR/uX7rDxOwn/hxoRX1Q6SEIwiC3NCHWIH43fFqRr
XJeCdeQfw1/TmqNozvxSgCmUbj7BRXuXXzv+nnRA07u2qF3ImfUPUTV347/AycXBgYbCq8SC1BJ6
ZheZ/KSxbHiWvZEh6togb+PuERF+OaEr6WDBBlnSAYL7YyfcLVvaoIVHK32myJLeWNImRLr0pYge
ssF8Flw6Lz/s88ZWh3Lt1y44ehrOY3dhJtB8n+q+fh4syayu1oxtLKKOaGHgUm0EGRxTg8aNEy4b
gv+xqD82gKK3ZwTLsz14wRATTrNu7w2JOlPPlCiixQAAAAAAAA==


--=-IB4aNmT/qGBPAd3gX8/a--


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 16:26:51 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 16:26:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619529.964749 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtVr9-0008En-QQ; Thu, 19 Oct 2023 16:26:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619529.964749; Thu, 19 Oct 2023 16: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 1qtVr9-0008Eg-NV; Thu, 19 Oct 2023 16:26:43 +0000
Received: by outflank-mailman (input) for mailman id 619529;
 Thu, 19 Oct 2023 16:26: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=IZCy=GB=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qtVr8-0008DC-35
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 16:26:42 +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 4815393f-6e9c-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 18:26: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 3226261558;
 Thu, 19 Oct 2023 16:26:39 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 25972C433C8;
 Thu, 19 Oct 2023 16:26: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: 4815393f-6e9c-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1697732798;
	bh=nyApptNkWd+CPREbFSCN0nP5KYXfmJxqXafHn0SVEU0=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=ZUfU+Piq68rAua6BGR4XULI9LSx+cw1XAPupDW/SR+8njOFsg1qjR03E7R4T5kzk2
	 xbJqfspWnDLlm2n3mR4fzPfYTehLA2JxrWjcB6Ym8/W+YWik/oarkUDUsR54xG+Ktp
	 PL/w8Nr3UHw8kBkgSfT06MPsodA1R9tIq5i7dU7J5IhYnZzTjc2b9Jd8uehE7tHjKu
	 AVcwxuiByJgJWIGJ5H9INrjrayBMHIg84vSA2XQHCSBWmUOTAltb9YVGecPcpuQI+Q
	 u4X/ZLtMxD5t77rLOxbgLQQiPFxIdeqEt4DqkeVzb4aH5ozTq/YJPk22EV7GTO9798
	 0A1qdSbvAxJmg==
Date: Thu, 19 Oct 2023 09:26:35 -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>, 
    Federico Serafini <federico.serafini@bugseng.com>, consulting@bugseng.com, 
    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>, 
    Shawn Anastasio <sanastasio@raptorengineering.com>, 
    =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>, 
    Henry Wang <henry.wang@arm.com>, xen-devel@lists.xenproject.org
Subject: Re: [XEN PATCH v3] xen/mm: address violations of MISRA C:2012 Rules
 8.2 and 8.3
In-Reply-To: <30e35f13-d2d0-eaf3-9660-c508655b84ce@suse.com>
Message-ID: <alpine.DEB.2.22.394.2310190921020.1945130@ubuntu-linux-20-04-desktop>
References: <eedcfeb8d1c81527b7e18fcc0eca252577f00035.1696344012.git.federico.serafini@bugseng.com> <d7cd7a02-b960-384e-4af2-f70b425e5ad1@suse.com> <alpine.DEB.2.22.394.2310181543030.965337@ubuntu-linux-20-04-desktop>
 <30e35f13-d2d0-eaf3-9660-c508655b84ce@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, 19 Oct 2023, Jan Beulich wrote:
> On 19.10.2023 00:43, Stefano Stabellini wrote:
> > On Mon, 16 Oct 2023, Jan Beulich wrote:
> >> On 03.10.2023 17:24, Federico Serafini wrote:
> >>> --- a/xen/arch/x86/mm.c
> >>> +++ b/xen/arch/x86/mm.c
> >>> @@ -5901,17 +5901,17 @@ int destroy_xen_mappings(unsigned long s, unsigned long e)
> >>>   * a problem.
> >>>   */
> >>>  void init_or_livepatch modify_xen_mappings_lite(
> >>> -    unsigned long s, unsigned long e, unsigned int _nf)
> >>> +    unsigned long s, unsigned long e, unsigned int nf)
> >>>  {
> >>> -    unsigned long v = s, fm, nf;
> >>> +    unsigned long v = s, fm, flags;
> >>
> >> While it looks correct, I consider this an unacceptably dangerous
> >> change: What if by the time this is to be committed some new use of
> >> the local "nf" appears, without resulting in fuzz while applying the
> >> patch? Imo this needs doing in two steps: First nf -> flags, then
> >> _nf -> nf.
> > 
> > Wouldn't it be sufficient for the committer to pay special attention
> > when committing this patch? We are in code freeze anyway, the rate of
> > changes affecting staging is low.
> 
> Any kind of risk excludes a patch from being a 4.18 candidate, imo.

I agree on that. I think it is best to commit it for 4.19 when the tree
opens.


> That was the case in early RCs already, and is even more so now. Paying
> special attention is generally a possibility, yet may I remind you that
> committing in general is intended to be a purely mechanical operation?

Sure, and I am not asking for a general process change. I am only
suggesting that this specific concern on this patch is best solved in
the simplest way: by a committer making sure the patch is correct on
commit. It is meant to save time for everyone.

Jan, if you are OK with it, we could just trust you to commit it the
right away as the earliest opportunity.


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 16:34:12 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 16:34:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619533.964760 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtVyJ-00054V-KA; Thu, 19 Oct 2023 16:34:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619533.964760; Thu, 19 Oct 2023 16:34: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 1qtVyJ-00054O-HC; Thu, 19 Oct 2023 16:34:07 +0000
Received: by outflank-mailman (input) for mailman id 619533;
 Thu, 19 Oct 2023 16:34: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=cQIi=GB=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qtVyI-00054I-19
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 16:34:06 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 51241421-6e9d-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 18:34:04 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id 5F8134EE073F;
 Thu, 19 Oct 2023 18:34: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: 51241421-6e9d-11ee-98d5-6d05b1d4d9a1
MIME-Version: 1.0
Date: Thu, 19 Oct 2023 18:34:04 +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.cooper3@citrix.com, roger.pau@citrix.com, Simone Ballarin
 <simone.ballarin@bugseng.com>, Doug Goldstein <cardoe@cardoe.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][for-4.19 v2] xen: Add SAF deviations for MISRA C:2012
 Rule 7.1
In-Reply-To: <de2b666e-ca48-58d2-73eb-5adc797f818e@suse.com>
References: <a9c52c943380f2c35f0a6ccab8215c03e87c99dc.1697712857.git.nicola.vetrini@bugseng.com>
 <de2b666e-ca48-58d2-73eb-5adc797f818e@suse.com>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <d879b8e4689e51131f081edcb3b2abe6@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/10/2023 17:57, Jan Beulich wrote:
> On 19.10.2023 13:04, Nicola Vetrini wrote:
>> --- a/automation/eclair_analysis/ECLAIR/deviations.ecl
>> +++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
>> @@ -85,10 +85,10 @@ conform to the directive."
>>  # Series 7.
>>  #
>> 
>> --doc_begin="Usage of the following constants is safe, since they are 
>> given as-is
>> -in the inflate algorithm specification and there is therefore no risk 
>> of them
>> -being interpreted as decimal constants."
>> --config=MC3R1.R7.1,literals={safe, 
>> "^0(007|37|070|213|236|300|321|330|331|332|333|334|335|337|371)$"}
>> +-doc_begin="Octal constants used as arguments to macro INSTR_ENC or 
>> MASK_EXTR
>> +can be used, because they appear as is in specifications, manuals, 
>> and
>> +algorithm descriptions."
>> +-config=MC3R1.R7.1,reports+={safe, 
>> "any_area(any_loc(any_exp(macro(^(INSTR_ENC|MASK_EXTR)$))))"}
> 
> INSTR_ENC() is a local macro in x86'es AMD SVM code. A macro of the 
> same
> name could imo be introduced without issues in, say, Arm code. The 
> above
> would then needlessly suppress findings there, aiui.
> 
> MASK_EXTR() otoh is a global macro which ise used for various purposes.
> Excluding checking there is imo going too far, too.

I should have thought about it; I can simply enforce the deviation to 
additionally match
only a specific file for each of the macros.

> 
>> --- a/docs/misra/deviations.rst
>> +++ b/docs/misra/deviations.rst
>> @@ -90,6 +90,12 @@ Deviations related to MISRA C:2012 Rules:
>>           - __emulate_2op and __emulate_2op_nobyte
>>           - read_debugreg and write_debugreg
>> 
>> +   * - R7.1
>> +     - It is safe to use certain octal constants the way they are 
>> defined in
>> +       specifications, manuals, and algorithm descriptions as 
>> arguments to
>> +       macros 'INSTR_ENC' and 'MASK_EXTR'.
>> +     - Tagged as `safe` for ECLAIR.
> 
> Similarly this wording is imo inappropriate, while ...
> 

I tried to be a bit more specific about what is actually being deviated, 
on the assumption
that the maintainers and contributors would find it more useful than 
parsing ecl files, but
if you prefer it to be more general, no problem.

>> --- a/docs/misra/safe.json
>> +++ b/docs/misra/safe.json
>> @@ -20,6 +20,14 @@
>>          },
>>          {
>>              "id": "SAF-2-safe",
>> +            "analyser": {
>> +                "eclair": "MC3R1.R7.1"
>> +            },
>> +            "name": "Rule 7.1: constants defined in specifications, 
>> manuals, and algorithm descriptions",
>> +            "text": "It is safe to use certain octal constants the 
>> way they are defined in specifications, manuals, and algorithm 
>> descriptions."
>> +        },
> 
> ... this reads good to me.
> 
> Jan

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


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 16:47:03 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 16:47:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619537.964769 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtWAb-0000uD-NQ; Thu, 19 Oct 2023 16:46:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619537.964769; Thu, 19 Oct 2023 16:46: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 1qtWAb-0000u6-Kv; Thu, 19 Oct 2023 16:46:49 +0000
Received: by outflank-mailman (input) for mailman id 619537;
 Thu, 19 Oct 2023 16: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=WgWq=GB=flex--seanjc.bounces.google.com=3dF0xZQYKCSUTFBOKDHPPHMF.DPNYFO-EFWFMMJTUT.YFOQSPKFDU.PSH@srs-se1.protection.inumbo.net>)
 id 1qtWAb-0000ss-3U
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 16:46:49 +0000
Received: from mail-yw1-x1149.google.com (mail-yw1-x1149.google.com
 [2607:f8b0:4864:20::1149])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 1683cab0-6e9f-11ee-9b0e-b553b5be7939;
 Thu, 19 Oct 2023 18:46:45 +0200 (CEST)
Received: by mail-yw1-x1149.google.com with SMTP id
 00721157ae682-59b5a586da6so8280087b3.1
 for <xen-devel@lists.xenproject.org>; Thu, 19 Oct 2023 09:46: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: 1683cab0-6e9f-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=google.com; s=20230601; t=1697734004; x=1698338804; darn=lists.xenproject.org;
        h=cc:to:from:subject:message-id:references:mime-version:in-reply-to
         :date:from:to:cc:subject:date:message-id:reply-to;
        bh=TpEPzMpbmRE7S67/u7J3M2Dti06L1rP8ZIHmBIwQBxQ=;
        b=nwdtCFg0ww8n6IynajY8au14owPegI7j37qYqD9iRWnl/wvCmPOxe+rJyhnhjB3hg5
         VPbV2Iu4DEJUTZTkUYcASxFg5p6FjfLdi/Z9A4ERYsYHeIWULTYbH8ekgA+h+E4Cgg/l
         FZGCjwQXDzyoSZ4wbG405S//BUEXfRYvbjoZ2rx6GkwL0eZK2/KhueCdlplEoZQnzFAM
         D1YWl08g5Sc4f+/KX4wrYEWUvS92SbYxSUsgtm5iBkeuTa6BA0v55U9oFC2Y6RrfwVXE
         pMdrjJEH6Oa4QsrYBgmQZxl0GFM+qEmClXYBDQiQp2OBeg/Ii/d99FNFkRDZzF3hFX7g
         jMng==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697734004; x=1698338804;
        h=cc:to:from:subject:message-id:references:mime-version:in-reply-to
         :date:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
        bh=TpEPzMpbmRE7S67/u7J3M2Dti06L1rP8ZIHmBIwQBxQ=;
        b=H/L3/cug7Z6eqVEGGAnvsJjU1VYNdScvYfGjSXkLlOPz9CMmRBC8+tRzZXJ6HiahVW
         ue79UWUBe/RMQmZ9zfy2Peq531ptdFOpo8FSmTwApYShXAbr714G5E1o5GviDaTZtUPp
         2v3wjt30yX/LW7kfSI0F1ogMJDCo+QP1H4JGAvSB3qVVpS3/mPd3fpkmjlYg0KsneDvo
         zuisjbTliVnbzCnq1rfEMDr9dILnYUpAXaXq9QYrJYb964tU9NQvXZq4eGdM2W9nPMaZ
         2tmp1k2veswTWKLs1NBksf6YVL1Xv7tNL1EjBbDWwBTnSLS+lu4MjPCvbgbz/dEOU3Vo
         507Q==
X-Gm-Message-State: AOJu0YyZVnxF/e+j8d+RD8AaUyqu3me0sommMdiOXsh5vxs1Ed1kOMjm
	fOs+JnqA3R+g5T6MXUzB5mQAVX6VocA=
X-Google-Smtp-Source: AGHT+IEY4l1tLFRd4OKDMZ5BEmKfsOkdl3pCTB2Bb27l0R7GZ2kCcrsoaryqlPd22mnjSHSD4UHcORKmX0Q=
X-Received: from zagreus.c.googlers.com ([fda3:e722:ac3:cc00:7f:e700:c0a8:5c37])
 (user=seanjc job=sendgmr) by 2002:a81:4fcb:0:b0:5a7:b4d5:5f27 with SMTP id
 d194-20020a814fcb000000b005a7b4d55f27mr63990ywb.5.1697734004668; Thu, 19 Oct
 2023 09:46:44 -0700 (PDT)
Date: Thu, 19 Oct 2023 09:46:43 -0700
In-Reply-To: <2f1459d7c3e3e81cdca931e104c3ade71dfcfee5.camel@infradead.org>
Mime-Version: 1.0
References: <20231018221123.136403-1-dongli.zhang@oracle.com>
 <87ttqm6d3f.fsf@redhat.com> <ZTFOCqMCuSiH8VEt@google.com> <2f1459d7c3e3e81cdca931e104c3ade71dfcfee5.camel@infradead.org>
Message-ID: <ZTFdczzpORPBNpbx@google.com>
Subject: Re: [PATCH RFC 1/1] x86/paravirt: introduce param to disable pv sched_clock
From: Sean Christopherson <seanjc@google.com>
To: David Woodhouse <dwmw2@infradead.org>
Cc: Vitaly Kuznetsov <vkuznets@redhat.com>, Dongli Zhang <dongli.zhang@oracle.com>, x86@kernel.org, 
	virtualization@lists.linux-foundation.org, kvm@vger.kernel.org, 
	pv-drivers@vmware.com, xen-devel@lists.xenproject.org, 
	linux-hyperv@vger.kernel.org, jgross@suse.com, akaher@vmware.com, 
	amakhalov@vmware.com, tglx@linutronix.de, mingo@redhat.com, bp@alien8.de, 
	dave.hansen@linux.intel.com, hpa@zytor.com, pbonzini@redhat.com, 
	wanpengli@tencent.com, peterz@infradead.org, joe.jin@oracle.com, 
	boris.ostrovsky@oracle.com, linux-kernel@vger.kernel.org
Content-Type: text/plain; charset="us-ascii"

On Thu, Oct 19, 2023, David Woodhouse wrote:
> On Thu, 2023-10-19 at 08:40 -0700, Sean Christopherson wrote:
> > > If for some 'historical reasons' we can't revoke features we can always
> > > introduce a new PV feature bit saying that TSC is preferred.
> 
> Don't we already have one? It's the PVCLOCK_TSC_STABLE_BIT. Why would a
> guest ever use kvmclock if the PVCLOCK_TSC_STABLE_BIT is set?
>
> The *point* in the kvmclock is that the hypervisor can mess with the
> epoch/scaling to try to compensate for TSC brokenness as the host
> scales/sleeps/etc.
> 
> And the *problem* with the kvmclock is that it does just that, even
> when the host TSC hasn't done anything wrong and the kvmclock shouldn't
> have changed at all.
> 
> If the PVCLOCK_TSC_STABLE_BIT is set, a guest should just use the guest
> TSC directly without looking to the kvmclock for adjusting it.
> 
> No?

No :-)

PVCLOCK_TSC_STABLE_BIT doesn't provide the guarantees that are needed to use the
raw TSC directly.  It's close, but there is at least one situation where using TSC
directly even when the TSC is stable is bad idea: when hardware doesn't support TSC
scaling and the guest virtual TSC is running at a higher frequency than the hardware
TSC.  The guest doesn't have to worry about the TSC going backwards, but using the
TSC directly would cause the guest's time calculations to be inaccurate.

And PVCLOCK_TSC_STABLE_BIT is also much more dynamic as it's tied to a given
generation/sequence.  E.g. if KVM stops using its masterclock for whatever reason,
then kvm_guest_time_update() will effectively clear PVCLOCK_TSC_STABLE_BIT and the
guest-side __pvclock_clocksource_read() will be forced to do a bit of extra work
to ensure the clock is monotonically increasing.


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 17:15:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 17:15:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619540.964779 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtWc6-0004NV-Ub; Thu, 19 Oct 2023 17:15:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619540.964779; Thu, 19 Oct 2023 17:15: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 1qtWc6-0004NO-S8; Thu, 19 Oct 2023 17:15:14 +0000
Received: by outflank-mailman (input) for mailman id 619540;
 Thu, 19 Oct 2023 17:15: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=bypV=GB=citrix.com=prvs=649365d7d=Andrew.Cooper3@srs-se1.protection.inumbo.net>)
 id 1qtWc4-0004NI-V9
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 17:15:13 +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 0cbb3e46-6ea3-11ee-9b0e-b553b5be7939;
 Thu, 19 Oct 2023 19:15: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: 0cbb3e46-6ea3-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1697735710;
  h=from:to:cc:subject:date:message-id:mime-version:
   content-transfer-encoding;
  bh=rmbtg4VTUyTGdO3MRQHKlPX6zE1mEMJt6imj33FjLKo=;
  b=TsBXjnpFbQqU5FPyR2DQTRaUsR+wti/uKSvLaoyZ/XV295n90pFrqYy5
   MsZiNWMVB/zMG2hwkvpSTFqowYEqqp8TY7AcARj36R3LIBnOW2D8k+cQT
   biVDGgPjVT91nDdlKFtiDPZXxi+WFkdF5ncIZFoJmLAB0TLTi9UmAnORc
   I=;
X-CSE-ConnectionGUID: rDc7S6lhTguwiUA6YPjaCg==
X-CSE-MsgGUID: s7hnxXQGQwqood7BdlFAcQ==
Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
X-SBRS: 5.1
X-MesageID: 124689196
X-Ironport-Server: esa5.hc3370-68.iphmx.com
X-Remote-IP: 162.221.159.70
X-Policy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:4ZO4yqoFjB9TrwvUL/LldQY4aZFeBmIrZRIvgKrLsJaIsI4StFCzt
 garIBnVbv7eYTamfNhxad/ipkwB6J+AytZiTQBkpX1mQSMa95uZCYyVIHmrMnLJJKUvbq7FA
 +Y2MYCccZ9uHhcwgj/3b9ANeFEljfngqoLUUbOCYmYpA1Y8FE/NsDo788YhmIlknNOlNA2Ev
 NL2sqX3NUSsnjV5KQr40YrawP9UlKq04GhwUmAWP6gR5waGzihNVfrzGInqR5fGatgMdgKFb
 76rIIGRpgvx4xorA9W5pbf3GmVirmn6ZFXmZtJ+AsBOszAazsAA+v9T2Mk0MC+7vw6hjdFpo
 OihgLTrIesf0g8gr8xGO/VQO3kW0aSrY9YrK1Dn2SCY5xWun3cBX5yCpaz5VGEV0r8fPI1Ay
 RAXACohZU+42ea2/L2mVehRr5oSFMviF4xK7xmMzRmBZRonaZXKQqGM7t5ExjYgwMtJGJ4yZ
 eJAN2ApNk6ZJUQSaxFIUPrSn8/x7pX7WxRepEiYuuwc5G/LwRYq+LPsLMDUapqBQsA9ckOw/
 ziaoTSoW0BEXDCZ4SHa8nS8ttbgpDziX4UeS5e08tBDi2TGkwT/DzVJDADm8JFVkHWWS99Zb
 kAZ5Ccqhawz71CwCMnwWQWip3yJtQJaXMBfe8Uh8x2EwKfQ5wefB0AHQyRHZdhgs9U5LRQv1
 1SJltevAiZ9vbm9QHeRsLyTqFuaMiEPIWgPTSQNVwcC7p/op4RbpjLCSMxyVpG8iNLdECv1h
 TuNqUADa6471JBRkf/hpBae3mPq+cChohMJChv/RE6usTgnYI6ZaJG36GXys8d4Lo+yQQzU1
 JQboPRy/NziHLnUyn3SGrhRRuv5jxqWGGeC2wMzQfHN4xzoqyb6It4KiN1rDB0xWvvobwMFd
 6M6Vel53JhWJHKsauddbou6C6zGJoC7Toy7CJg4gjdUC6WdlTNrHwk0PyZ8J0i3zCARfVgXY
 P93i/qEA3cAErhAxzGrXeob2rJD7nlglDyNGMyilUn+ieL2iJuppVAtaQPmUwzExPnc/FW9H
 yh3bKNmNCmzoMWhO3KKoOb/3HgBLGQhBICelvG7gtWre1I8cEl4Uqe56ep4J+RYc1F9y76gE
 oeVARQDljISRBTvdG23V5yUQO+1B8cm9ythZX1E0JTB8yFLXLtDJZw3L/MfFYTLPsQ6pRKoZ
 5Hpo/m9P8k=
IronPort-HdrOrdr: A9a23:DAqJiK7+H5smgYpFtAPXwPPXdLJyesId70hD6qkRc20tTiX8ra
 uTdZsgpHjJYVoqKRIdcKm7WJVoIkmsk6Kdg7N9AV7KZmCP0ldASrsSj7cKqAeQfxEWmNQtsJ
 uIRJITNDQgNzlHZZeT2meF+4hJ+ra6zJw=
X-Talos-CUID: =?us-ascii?q?9a23=3AUuSuGWjtvj3eI68EqfbSvfSbCDJuaFHWk0yOJ0+?=
 =?us-ascii?q?EBnt2SYC8F26o+qpPnJ87?=
X-Talos-MUID: =?us-ascii?q?9a23=3A9G3o1w40nQhkxb8MgOfjrUMVxoxzvKSoGHA0vqw?=
 =?us-ascii?q?Zos6DOXNaNzOzpT+OF9o=3D?=
X-IronPort-AV: E=Sophos;i="6.03,237,1694750400"; 
   d="scan'208";a="124689196"
From: Andrew Cooper <andrew.cooper3@citrix.com>
To: Xen-devel <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Anthony PERARD
	<anthony.perard@citrix.com>, Stefano Stabellini <sstabellini@kernel.org>,
	Michal Orzel <michal.orzel@amd.com>, Doug Goldstein <cardoe@cardoe.com>,
	Henry Wang <Henry.Wang@arm.com>
Subject: [PATCH for-4.18] CI: (More) Always pull base image when building a container
Date: Thu, 19 Oct 2023 18:14:52 +0100
Message-ID: <20231019171452.1704276-1-andrew.cooper3@citrix.com>
X-Mailer: git-send-email 2.30.2
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain

Repeat c/s 26ecc08b98fc ("automation: Always pull base image when building a
container") for the other makefile we've got building containers.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
---
CC: Anthony PERARD <anthony.perard@citrix.com>
CC: Stefano Stabellini <sstabellini@kernel.org>
CC: Michal Orzel <michal.orzel@amd.com>
CC: Doug Goldstein <cardoe@cardoe.com>
CC: Henry Wang <Henry.Wang@arm.com>

For 4.18.  This is CI infrastructure, not part of the regular build.
---
 automation/tests-artifacts/Makefile | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/automation/tests-artifacts/Makefile b/automation/tests-artifacts/Makefile
index 8ca71b78adbd..d055cd696bed 100644
--- a/automation/tests-artifacts/Makefile
+++ b/automation/tests-artifacts/Makefile
@@ -10,7 +10,7 @@ help:
 	@echo "To push container builds, set the env var PUSH"
 
 %: %.dockerfile ## Builds containers
-	docker build -t $(REGISTRY)/$(@D):$(@F) -f $< $(<D)
+	docker build --pull -t $(REGISTRY)/$(@D):$(@F) -f $< $(<D)
 	@if [ ! -z $${PUSH+x} ]; then \
 		docker push $(REGISTRY)/$(@D):$(@F); \
 	fi

base-commit: 698b0f5031c6083401234a9b9415175cc5855a0a
prerequisite-patch-id: 94c86c1b3eb7aeda8eeef91241cdc8fa2691e2bc
prerequisite-patch-id: 728853399bfbaf972317a0d35ecd695f65026844
prerequisite-patch-id: 5a145a4decd44ace43a37b0315773e0abc6d54c6
prerequisite-patch-id: 24fad994d25558a45bbd3ead38120c154a974e9a
prerequisite-patch-id: a2a69b5382a293809a03633fd0513c371f9cf668
-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Thu Oct 19 17:27:40 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 17:27:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619544.964790 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtWo2-0007rt-1w; Thu, 19 Oct 2023 17:27:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619544.964790; Thu, 19 Oct 2023 17:27: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 1qtWo1-0007rm-UF; Thu, 19 Oct 2023 17:27:33 +0000
Received: by outflank-mailman (input) for mailman id 619544;
 Thu, 19 Oct 2023 17: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=JNdL=GB=tklengyel.com=tamas@srs-se1.protection.inumbo.net>)
 id 1qtWo0-0007rg-LX
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 17:27:32 +0000
Received: from sender3-op-o19.zoho.com (sender3-op-o19.zoho.com
 [136.143.184.19]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id c6b6ea66-6ea4-11ee-9b0e-b553b5be7939;
 Thu, 19 Oct 2023 19:27:30 +0200 (CEST)
Delivered-To: tamas@tklengyel.com
Received: from localhost.localdomain (c-174-169-89-112.hsd1.ma.comcast.net
 [174.169.89.112]) by mx.zohomail.com
 with SMTPS id 169773644253087.09436354385764;
 Thu, 19 Oct 2023 10:27: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: c6b6ea66-6ea4-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; t=1697736444; cv=none; 
	d=zohomail.com; s=zohoarc; 
	b=RjYl6r+MuhbiXz2QlrmkKPzizkgb27HA9OTvhFPy5UhJw/XIGIaiC/jlVy1AaC5T1sTp0N5AgX8CFaZQcKW3mqcyfuDKOEDRQPzH7s2NYh0u4qe9QPqwM8ZHUXyAPjjRTRR54W8cmN4s2XjpnyLhc0ulAD05h78JjAuCCEGvuUQ=
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; 
	t=1697736444; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:MIME-Version:Message-ID:Subject:Subject:To:To:Message-Id:Reply-To; 
	bh=2cUdy2EjT3oE/tz9MxRYlrZhTYSHPwH21W1FCL9DulM=; 
	b=HbHb+PZ1ukQd+a7+GzdvAYteJenhfREh/E34hYI5KLu3gAkvxrYKb/NEecH6MaZzB3Dbz1OVJMon6L2qVFCvBh+ajpIjNtRMOztpBylxE0Ao0aobFUx5OdkAN4gUjyVk9qCDmRC4hTdTJduWm/ZeqS+zWjUTmY/2txWxQ4uf2YY=
ARC-Authentication-Results: i=1; mx.zohomail.com;
	dkim=pass  header.i=tklengyel.com;
	spf=pass  smtp.mailfrom=tamas@tklengyel.com;
	dmarc=pass header.from=<tamas@tklengyel.com>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; t=1697736444;
	s=zmail; d=tklengyel.com; i=tamas@tklengyel.com;
	h=From:From:To:To:Cc:Cc:Subject:Subject:Date:Date:Message-Id:Message-Id:MIME-Version:Content-Transfer-Encoding:Reply-To;
	bh=2cUdy2EjT3oE/tz9MxRYlrZhTYSHPwH21W1FCL9DulM=;
	b=DTnp/aYp6lv51ErfnR9dGju7TqGtG8FyMnr80fLTMshzMYUT6d1xpi1foWYlJ8KU
	DEmVuzjZddQ2PjSdkMBj3nzaaERwcqjIZMTRXrf8G3kSld4ILMrmMdc/yCg6Dy0BH3G
	6/YyX23p9Gq9w0XZ/BQL5/VccGNrajneTcfYM7Ck=
From: Tamas K Lengyel <tamas@tklengyel.com>
To: xen-devel@lists.xenproject.org
Cc: Tamas K Lengyel <tamas@tklengyel.com>,
	Jan Beulich <jbeulich@suse.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>,
	Wei Liu <wl@xen.org>
Subject: [PATCH for-4.18] x86/mem_sharing: add missing m2p entry when mapping shared_info page
Date: Wed, 18 Oct 2023 04:02:42 -0400
Message-Id: <20231018080242.1213-1-tamas@tklengyel.com>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

When mapping in the shared_info page to a fork the m2p entry wasn't set
resulting in the shared_info being reset even when the fork reset was called
with only reset_state and not reset_memory. This results in an extra
unnecessary TLB flush.

Fixes: 1a0000ac775 ("mem_sharing: map shared_info page to same gfn during fork")
Signed-off-by: Tamas K Lengyel <tamas@tklengyel.com>
---
 xen/arch/x86/mm/mem_sharing.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/xen/arch/x86/mm/mem_sharing.c b/xen/arch/x86/mm/mem_sharing.c
index 94b6b782ef..142258f16a 100644
--- a/xen/arch/x86/mm/mem_sharing.c
+++ b/xen/arch/x86/mm/mem_sharing.c
@@ -1847,6 +1847,8 @@ static int copy_special_pages(struct domain *cd, struct domain *d)
                                 p2m_ram_rw, p2m->default_access, -1);
             if ( rc )
                 return rc;
+
+            set_gpfn_from_mfn(mfn_x(new_mfn), gfn_x(old_gfn));
         }
     }
 
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Thu Oct 19 17:33:41 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 17:33:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619546.964801 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtWts-00025J-NB; Thu, 19 Oct 2023 17:33:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619546.964801; Thu, 19 Oct 2023 17:33: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 1qtWts-00025C-IQ; Thu, 19 Oct 2023 17:33:36 +0000
Received: by outflank-mailman (input) for mailman id 619546;
 Thu, 19 Oct 2023 17:33: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=gyPq=GB=cloud.com=anthony.perard@srs-se1.protection.inumbo.net>)
 id 1qtWtq-000250-6p
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 17:33:34 +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 9f69904c-6ea5-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 19:33:33 +0200 (CEST)
Received: by mail-ed1-x532.google.com with SMTP id
 4fb4d7f45d1cf-5384975e34cso14417088a12.0
 for <xen-devel@lists.xenproject.org>; Thu, 19 Oct 2023 10:33:32 -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
 b7-20020a170906660700b009a5f1d1564dsm3802118ejp.126.2023.10.19.10.33.30
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Thu, 19 Oct 2023 10:33: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: 9f69904c-6ea5-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1697736811; x=1698341611; 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=TNNdwNAyFLKq8WMgyakYbwr7XSBrEHOFQd3jTAYLzT8=;
        b=vrbi4TEqrol/CU0gbwO3kYef/qUpPrOMxdXey3JePi8sTf+iS+rMW2QQa+sUycda6A
         XXDnA1yeDd5v6g3H7mF9n63Ivhdt3fIRBzx00YCwZGJ+s3wJUGXq5iDpW7O/nqwF4ihY
         3XHFZwNG11akg7AnG18IHPj+kUTNdBK3YfOdE=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697736811; x=1698341611;
        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=TNNdwNAyFLKq8WMgyakYbwr7XSBrEHOFQd3jTAYLzT8=;
        b=UWmfREm2LQkkk0KbC7rHnJd5uL0hwopgmSiAkcglk+72WEGHDZsecESe3PfjPODlUv
         +Q8XEVmtfnUwJcKgd6nrMPFJKO47SOO8m7Nyi5Rc0nW6X4pDBlgyFrUGvuNbsc6CYtOG
         OrLHYndH1oSkOrtdLojzuFxqc9CBGL2a3mq1DEIqQ6EXxFBJdJa7uCXmO32NX1NDTH7u
         MCOezSVUWacvp7MF6d+bl1gSRSP4w5djCouV9AxG07LGpp6lINRpK08jBPRFQlvIgp+8
         tH8HFA8iD1wvPQSvL2rxFPV//m++TagfjcBOV3M6KYyslmAppFATTss3Dg/reAUV6puQ
         VC+g==
X-Gm-Message-State: AOJu0Yyy1jtT4eJ07w3W1iY12ZER8+eBTDrG1oh+JX3fr2M4btW5Al03
	wkPn/j9pO60ianUJIsMtgnLbiKNtluV9hAdGrK4=
X-Google-Smtp-Source: AGHT+IHX8c8lbk5uYQqu6RWN18DMC0I7nxXFmu8RsTQd4syzOjMis9Bt2K3jG1pQxf/eU0eVXpo+SA==
X-Received: by 2002:a17:907:7e91:b0:9a5:7f99:be54 with SMTP id qb17-20020a1709077e9100b009a57f99be54mr2529984ejc.67.1697736811407;
        Thu, 19 Oct 2023 10:33:31 -0700 (PDT)
Date: Thu, 19 Oct 2023 18:33:30 +0100
From: Anthony PERARD <anthony.perard@citrix.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: Xen-devel <xen-devel@lists.xenproject.org>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Michal Orzel <michal.orzel@amd.com>,
	Doug Goldstein <cardoe@cardoe.com>, Henry Wang <Henry.Wang@arm.com>
Subject: Re: [PATCH for-4.18] CI: (More) Always pull base image when building
 a container
Message-ID: <f8cb1c63-b634-4bd2-9bce-54d2e3e6dbe3@perard>
References: <20231019171452.1704276-1-andrew.cooper3@citrix.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <20231019171452.1704276-1-andrew.cooper3@citrix.com>

On Thu, Oct 19, 2023 at 06:14:52PM +0100, Andrew Cooper wrote:
> Repeat c/s 26ecc08b98fc ("automation: Always pull base image when building a
> container") for the other makefile we've got building containers.
> 
> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
> ---
> 
> For 4.18.  This is CI infrastructure, not part of the regular build.

Reviewed-by: Anthony PERARD <anthony.perard@citrix.com>

Thanks,

-- 
Anthony PERARD


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 18:31:06 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 18:31:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619550.964810 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtXnE-0008PR-Rw; Thu, 19 Oct 2023 18:30:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619550.964810; Thu, 19 Oct 2023 18: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 1qtXnE-0008PK-OW; Thu, 19 Oct 2023 18:30:48 +0000
Received: by outflank-mailman (input) for mailman id 619550;
 Thu, 19 Oct 2023 18:30: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=IZCy=GB=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qtXnD-0008PE-Tj
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 18:30:47 +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 9d9f2842-6ead-11ee-9b0e-b553b5be7939;
 Thu, 19 Oct 2023 20:30:45 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by ams.source.kernel.org (Postfix) with ESMTP id 7D2B2B82908;
 Thu, 19 Oct 2023 18:30:44 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id D6FC7C433C8;
 Thu, 19 Oct 2023 18:30: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: 9d9f2842-6ead-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1697740243;
	bh=aO457Or8c1ECKJgOrWZTx7LWJoQVGcZfvjSWI+Bm0NE=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=Hmb/bGqCr0p7pDnllo5wqtMi5T9JEPvXxXhxq5XjJR+0a3qLaSph/gcNZFHiBy7+L
	 jfSd9eN+LzrjzD38KSlghheLYsq0mkmcbYofk3KIjIYkwwDW2bNMQa6rUb4g4BLq6N
	 ODx2L1cJXgWBhIdpMM1DwsxfNolIIuEfcoMSrF9yjV9gr2pdxNkphFjU/IfLwsJ5eB
	 YHkuBr/2FAdd+iYt9njf6h0KPWsTlJLE3oc5Qq41Ew1xgyG6AGLgrSm1UXtxgSnrVJ
	 ZTsQFNeo5vljp4aAIGOaQOGfyluwdqwUxpI+hqQuf2iO1Hihs/uzlH+Kvpfgzcw4jV
	 JKjqDBOkBxPGw==
Date: Thu, 19 Oct 2023 11:30:20 -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: Julien Grall <julien@xen.org>, xen-devel@lists.xenproject.org, 
    consulting@bugseng.com, sstabellini@kernel.org, 
    Bertrand Marquis <bertrand.marquis@arm.com>, 
    Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: Re: [XEN PATCH 1/4] xen/arm: address violations of MISRA C:2012 Rule
 13.1
In-Reply-To: <d6af702c-9945-4eea-a102-96910be334dc@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2310191128560.2099202@ubuntu-linux-20-04-desktop>
References: <cover.1697638210.git.simone.ballarin@bugseng.com> <31a926a09dfcef43d13a402fd3b235aeba48009d.1697638210.git.simone.ballarin@bugseng.com> <41d82896-5471-4eaa-8bdd-a192e28d5546@xen.org> <3de5e340-30bb-44aa-affd-89f343ed1fa1@bugseng.com>
 <7066a646-711c-4dce-f3c0-effb6ae91a39@xen.org> <67782815-7803-4ef5-80f4-db6181f7a6e2@bugseng.com> <15923aaf-c005-45fb-8bb4-50d2e0995f18@xen.org> <8734535a-0c00-44b4-8257-64155807b052@bugseng.com> <edc5d2b1-a3bd-44c4-83ea-6ff436fe7346@xen.org>
 <d6af702c-9945-4eea-a102-96910be334dc@bugseng.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="8323329-1978348765-1697740243=:2099202"

  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-1978348765-1697740243=:2099202
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8BIT

On Thu, 19 Oct 2023, Simone Ballarin wrote:
> On 19/10/23 14:30, Julien Grall wrote:
> > Hi,
> > 
> > On 19/10/2023 12:10, Simone Ballarin wrote:
> > > On 19/10/23 12:11, Julien Grall wrote:
> > > > Hi,
> > > > 
> > > > On 19/10/2023 09:43, Simone Ballarin wrote:
> > > > > On 19/10/23 10:19, Julien Grall wrote:
> > > > > > Hi Simone,
> > > > > > 
> > > > > > On 19/10/2023 08:34, Simone Ballarin wrote:
> > > > > > > On 18/10/23 17:03, Julien Grall wrote:
> > > > > > > > Hi,
> > > > > > > > 
> > > > > > > > On 18/10/2023 15:18, Simone Ballarin wrote:
> > > > > > > > > Rule 13.1: Initializer lists shall not contain persistent side
> > > > > > > > > effects
> > > > > > > > > 
> > > > > > > > > This patch moves expressions with side-effects into new
> > > > > > > > > variables before
> > > > > > > > > the initializer lists.
> > > > > > > > 
> > > > > > > > Looking at the code, I feel the commit message should be a bit
> > > > > > > > more verbose because they are no apparent side-effects.
> > > > > > > > 
> > > > > > > > > 
> > > > > > > > > Function calls do not necessarily have side-effects, in these
> > > > > > > > > cases the
> > > > > > > > > GCC pure or const attributes are added when possible.
> > > > > > > > 
> > > > > > > > You are only adding pure in this patch.
> > > > > > > > 
> > > > > > > > > 
> > > > > > > > > No functional changes.
> > > > > > > > > 
> > > > > > > > > Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>
> > > > > > > > > 
> > > > > > > > > ---
> > > > > > > > > Function attributes pure and const do not need to be added as
> > > > > > > > > GCC
> > > > > > > > > attributes, they can be added using ECLAIR configurations.
> > > > > > > > > ---
> > > > > > > > >   xen/arch/arm/device.c              |  6 +++---
> > > > > > > > >   xen/arch/arm/guestcopy.c           | 12 ++++++++----
> > > > > > > > >   xen/arch/arm/include/asm/current.h |  2 +-
> > > > > > > > >   3 files changed, 12 insertions(+), 8 deletions(-)
> > > > > > > > > 
> > > > > > > > > diff --git a/xen/arch/arm/device.c b/xen/arch/arm/device.c
> > > > > > > > > index 1f631d3274..e9be078415 100644
> > > > > > > > > --- a/xen/arch/arm/device.c
> > > > > > > > > +++ b/xen/arch/arm/device.c
> > > > > > > > > @@ -319,6 +319,8 @@ int handle_device(struct domain *d, struct
> > > > > > > > > dt_device_node *dev, p2m_type_t p2mt,
> > > > > > > > >       int res;
> > > > > > > > >       paddr_t addr, size;
> > > > > > > > >       bool own_device = !dt_device_for_passthrough(dev);
> > > > > > > > > +    bool dev_is_hostbridge = is_pci_passthrough_enabled() &&
> > > > > > > > > +                             device_get_class(dev) ==
> > > > > > > > > DEVICE_PCI_HOSTBRIDGE;
> > > > > > > > 
> > > > > > > > The commit message suggests that the code is moved because there
> > > > > > > > are side-effects. But none of them should have any side-effects.
> > > > > > > > 
> > > > > > > 
> > > > > > > device_get_class contains an 'ASSERT(dev != NULL)' which is
> > > > > > > definitely
> > > > > > > a side-effect.
> > > > > > 
> > > > > > Just to confirm my understanding, the side-effect here would be the
> > > > > > fact that it traps and then panic(). IOW, if the trap was
> > > > > > hypothetically replaced by a while (1), then it would not be an
> > > > > > issue. is it correct? >
> > > > > 
> > > > > No, it isn't. A infinite loop is a side effect.
> > > > 
> > > > I am not sure why. There are no change of state here.
> > > > 
> > > > > 
> > > > > > I can see two solutions:
> > > > > >    1) Remove the ASSERT(). It is only here to make the NULL
> > > > > > dereference obvious in debug build. That said, the stack trace for a
> > > > > > NULL dereference would still be as clear.
> > > > > 
> > > > > Removing the ASSERT just to make MISRA happy does not sound good to
> > > > > me.
> > > > 
> > > > I didn't suggest the ASSERT() just ot make MISRA happy. I suggested it
> > > > because it has no value here (we still have stack track if there are any
> > > > issue).
> > > > 
> > > > > 
> > > > > >    2) Replace the ASSERT with a proper check if ( !dev ) return
> > > > > > DEVICE_UNKONWN. AFAIU, we would not be able to add a
> > > > > > ASSERT_UNREACHABLE() because this would be again a perceived
> > > > > > side-effect.
> > > > > > 
> > > > > 
> > > > > Replacing it with a proper check can be a solution, but I still prefer
> > > > > to add a deviation or move the invocation outside the initializer
> > > > > list.
> > > > 
> > > > In general, I am not in favor of adding deviation if we can avoid them
> > > > because the code can changed and therefore either moot the deviation or
> > > > hide any other issue.
> > > > 
> > > 
> > > Ok, I will proceed with option 1.
> > > 
> > > > [...]
> > > > 
> > > > > Yes, sorry I was looking to the wrong definition.
> > > > > In ARM the problem is the presence of a *volatile* ASM.
> > > > > Please take a look here:
> > > > > 
> > > > > https://saas.eclairit.com:3787/fs/var/local/eclair/XEN.ecdf/ECLAIR_normal/arm/for-4.19/ARM64-Set2/latest/PROJECT.ecd;/by_service/MC3R1.R13.1.html#{"select":true,"selection":{"hiddenAreaKinds":[],"hiddenSubareaKinds":[],"show":true,"selector":{"enabled":true,"negated":false,"kind":0,"domain":"fingerprint","inputs":[{"enabled":true,"text":"0da7f0c9aea5491eba343618f965c81f5d7aed3c"}]}}}
> > > > 
> > > > Ok. So the problem is the READ_SYSREG(...). Is there a way we can
> > > > encapsulate the call so we don't need to use your propose trick or
> > > > deviate at every use of 'current'?
> > > > 
> > > 
> > > The point is that we need to move "READ_SYSREG(TPIDR_EL2)" outside
> > > the initializer (there are no advantages in wrapping it on a function
> > > if the function cannot be declared pure).
> > 
> > I was thinking that maybe it could help to deviate.
> > 
> > > 
> > > The proposed solution seems to me the cleanest way do to it. I do not see
> > > any other acceptable solutions.
> > 
> > I have some concern with the proposal (they are most likely matter of
> > taste).
> > 
> > We usually use this trick when 'current' is used multiple time to save
> > process (using 'current' is not cost free). But in this case, this is
> > renaming without any apparent benefits.
> > 
> > If we wanted to go down this route, then this would likely want a comment.
> > At which point we should just deviate.
> > 
> > I will have a think if there are something else we can do. Could we consider
> > to not address it for now?
> > 
> 
> I totally agree.

I am wondering if we could deviate "current" because even with the
implementation using volatile we know it doesn't have "side effects" in
the sense of changing things for other code outside the function.
--8323329-1978348765-1697740243=:2099202--


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 18:35:14 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 18:35:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619553.964820 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtXrV-0001Cp-Fm; Thu, 19 Oct 2023 18:35:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619553.964820; Thu, 19 Oct 2023 18: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 1qtXrV-0001Ci-Ct; Thu, 19 Oct 2023 18:35:13 +0000
Received: by outflank-mailman (input) for mailman id 619553;
 Thu, 19 Oct 2023 18:35: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=IZCy=GB=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qtXrU-0001Ca-6z
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 18:35:12 +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 3b8cf07e-6eae-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 20:35: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 678DD60B2D;
 Thu, 19 Oct 2023 18:35:09 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id CD9CAC433C8;
 Thu, 19 Oct 2023 18:35: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: 3b8cf07e-6eae-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1697740509;
	bh=wgzxFF0yD0Toto9DYVX1hvn0/Ak6iljZwsBMYaswPMw=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=GXM9TyK02QUulbmoHrav9mRj7kYPjysVmMVTN0+pIHB+h/Go9993tlDgSFN9W2KZl
	 BHM4VmGwm5E8WE82C8SmZWajzDalq/e0zpFU9e4sNdUI3DU8fcK9u2SDV7tiann8z/
	 LkJAUawnnYFSbIzfTsPXi4ZCqzOBDLDaFvjjua4jOHKYF/FQehvpnqM51WXazVlkMA
	 yoDuwOL/i016qRiPilK8merrraKpo2ug2uCNKJlZLB1q19bQlrPXE0Y7KfVHGWkpks
	 pnv692JNHE2mito7nD1LP4y2Ja031vAtX3uPFtyCR5URQIEeeY0RZKvTavD5ezwDOs
	 J9ShOsp9nJ+oQ==
Date: Thu, 19 Oct 2023 11:35:06 -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>, xen-devel@lists.xenproject.org, 
    consulting@bugseng.com, George Dunlap <george.dunlap@citrix.com>, 
    Dario Faggioli <dfaggioli@suse.com>, 
    Andrew Cooper <andrew.cooper3@citrix.com>, Julien Grall <julien@xen.org>, 
    Wei Liu <wl@xen.org>, Stefano Stabellini <sstabellini@kernel.org>
Subject: Re: [XEN PATCH 4/4] xen: address violations of MISRA C:2012 Rule
 13.1
In-Reply-To: <fe5084f4-e5f3-4778-87c7-faac2076bde7@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2310191134400.2099202@ubuntu-linux-20-04-desktop>
References: <cover.1697638210.git.simone.ballarin@bugseng.com> <1e0f12095bcbc82ae3585c9fcf57bec7e324049c.1697638210.git.simone.ballarin@bugseng.com> <alpine.DEB.2.22.394.2310181803351.965337@ubuntu-linux-20-04-desktop> <78a7b73a-fefb-6884-90c5-abad2860a521@suse.com>
 <27fcfc87-aa8f-4bfb-863a-91a75c763050@bugseng.com> <5c9b851f-6f64-f6bd-970a-63aefdab5b41@suse.com> <fe5084f4-e5f3-4778-87c7-faac2076bde7@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, 19 Oct 2023, Simone Ballarin wrote:
> On 19/10/23 13:19, Jan Beulich wrote:
> > On 19.10.2023 13:12, Simone Ballarin wrote:
> > > On 19/10/23 11:35, Jan Beulich wrote:
> > > > On 19.10.2023 03:06, Stefano Stabellini wrote:
> > > > > On Wed, 18 Oct 2023, Simone Ballarin wrote:
> > > > > > --- a/xen/common/sched/core.c
> > > > > > +++ b/xen/common/sched/core.c
> > > > > > @@ -1504,6 +1504,8 @@ long vcpu_yield(void)
> > > > > >    {
> > > > > >        struct vcpu * v=current;
> > > > > >        spinlock_t *lock;
> > > > > > +    domid_t domain_id;
> > > > > > +    int vcpu_id;
> > > > > >           rcu_read_lock(&sched_res_rculock);
> > > > > >    @@ -1515,7 +1517,9 @@ long vcpu_yield(void)
> > > > > >           SCHED_STAT_CRANK(vcpu_yield);
> > > > > >    -    TRACE_2D(TRC_SCHED_YIELD, current->domain->domain_id,
> > > > > > current->vcpu_id);
> > > > > > +    domain_id = current->domain->domain_id;
> > > > > > +    vcpu_id = current->vcpu_id;
> > > > > > +    TRACE_2D(TRC_SCHED_YIELD, domain_id, vcpu_id);
> > > > > 
> > > > > Also here it looks like accessing the current pointer is considered a
> > > > > side effect. Why? This is a just a global variable that is only
> > > > > accessed
> > > > > for reading.
> > > > 
> > > > Not exactly. It's a per-CPU variable access on Arm, but involves a
> > > > function call on x86. Still that function call has no other side
> > > > effects, but I guess Misra wouldn't honor this.
> > > > 
> > > > I'm afraid though that the suggested change violates rule 2.2, as
> > > > the two new assignments are dead code when !CONFIG_TRACEBUFFER.
> > > 
> > > I confirm that there is no problem in X86: I will simply propose a patch
> > > adding __attribute_pure__ to get_cpu_info.
> > 
> > I specifically did not suggest that, because I'm afraid the "pure" attribute
> > may not be used there. Besides this attribute typically being discarded for
> > inline functions in favor of the compiler's own judgement, it would allow
> > the compiler to squash multiple invocations. This might even be desirable in
> > most cases, but would break across a stack pointer change. (In this context
> > you also need to keep in mind late optimizations done by LTO.)
> > 
> > Jan
> > 
> 
> Ok, in this case I will just configure ECLAIR to consider it without effects.

I think that's fine, just remember to either use SAF or document under
docs/misra/deviations.rst


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 18:35:39 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 18:35:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619555.964830 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtXrv-00024A-O2; Thu, 19 Oct 2023 18:35:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619555.964830; Thu, 19 Oct 2023 18:35: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 1qtXrv-000243-KS; Thu, 19 Oct 2023 18:35:39 +0000
Received: by outflank-mailman (input) for mailman id 619555;
 Thu, 19 Oct 2023 18: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=IZCy=GB=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qtXrt-00023U-UN
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 18:35:37 +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 4b27ca1b-6eae-11ee-9b0e-b553b5be7939;
 Thu, 19 Oct 2023 20:35:36 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by ams.source.kernel.org (Postfix) with ESMTP id 8A02EB82C73;
 Thu, 19 Oct 2023 18:35:35 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 9CAC9C433C8;
 Thu, 19 Oct 2023 18:35: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: 4b27ca1b-6eae-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1697740534;
	bh=vfFrlqoMFq2H1cHsnTO5TfocJZfWKV9VCBMwxgluEbk=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=WklyIdVufIRSfpRMgHcSrG7JFD49ahgro/YqGtO1nZ5AO23/D/mbFQy+mrPHurhad
	 7t+Y9dQq0ycpA5vr3drRH4H9+us3od7h5I31GiHEnQYrQRXqa/fR51tuillXUsDqwe
	 0ioMnrogjeos3WnusOTv6C17gdirQlDiN+N0k5v96tmWmOyGMoiGbrDVF3m+rNHTz8
	 Nl93noSf/ZW6mjvhst6JPqCJe25Sfe5xxnmwGA/KVKIVWowxDEphSC4JaUXl1RXLCZ
	 qSRLS5/MYZFnm1CM+5bDfl3YHA2Wr208ateCyFC+PkB2RKffGMHOhKNvjW4fCQsIY2
	 IJqJRNqxS0XNA==
Date: Thu, 19 Oct 2023 11:35: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: Stefano Stabellini <sstabellini@kernel.org>, 
    xen-devel@lists.xenproject.org, consulting@bugseng.com, 
    George Dunlap <george.dunlap@citrix.com>, 
    Dario Faggioli <dfaggioli@suse.com>, 
    Andrew Cooper <andrew.cooper3@citrix.com>, Jan Beulich <jbeulich@suse.com>, 
    Julien Grall <julien@xen.org>, Wei Liu <wl@xen.org>
Subject: Re: [XEN PATCH 4/4] xen: address violations of MISRA C:2012 Rule
 13.1
In-Reply-To: <66049700-c16b-4086-b14f-154285f3ebf0@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2310191135160.2099202@ubuntu-linux-20-04-desktop>
References: <cover.1697638210.git.simone.ballarin@bugseng.com> <1e0f12095bcbc82ae3585c9fcf57bec7e324049c.1697638210.git.simone.ballarin@bugseng.com> <alpine.DEB.2.22.394.2310181803351.965337@ubuntu-linux-20-04-desktop>
 <66049700-c16b-4086-b14f-154285f3ebf0@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, 19 Oct 2023, Simone Ballarin wrote:
> On 19/10/23 03:06, Stefano Stabellini wrote:
> > On Wed, 18 Oct 2023, Simone Ballarin wrote:
> > > Rule 13.1: Initializer lists shall not contain persistent side effects
> > > 
> > > This patch moves expressions with side-effects outside the initializer
> > > lists.
> > > 
> > > No functional changes.
> > > 
> > > Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>
> > > ---
> > >   xen/common/sched/core.c    | 16 ++++++++++++----
> > >   xen/drivers/char/ns16550.c |  4 +++-
> > >   2 files changed, 15 insertions(+), 5 deletions(-)
> > > 
> > > diff --git a/xen/common/sched/core.c b/xen/common/sched/core.c
> > > index 12deefa745..519884f989 100644
> > > --- a/xen/common/sched/core.c
> > > +++ b/xen/common/sched/core.c
> > > @@ -1504,6 +1504,8 @@ long vcpu_yield(void)
> > >   {
> > >       struct vcpu * v=current;
> > >       spinlock_t *lock;
> > > +    domid_t domain_id;
> > > +    int vcpu_id;
> > >         rcu_read_lock(&sched_res_rculock);
> > >   @@ -1515,7 +1517,9 @@ long vcpu_yield(void)
> > >         SCHED_STAT_CRANK(vcpu_yield);
> > >   -    TRACE_2D(TRC_SCHED_YIELD, current->domain->domain_id,
> > > current->vcpu_id);
> > > +    domain_id = current->domain->domain_id;
> > > +    vcpu_id = current->vcpu_id;
> > > +    TRACE_2D(TRC_SCHED_YIELD, domain_id, vcpu_id);
> > 
> > Also here it looks like accessing the current pointer is considered a
> > side effect. Why? This is a just a global variable that is only accessed
> > for reading.
> > 
> > 
> > >       raise_softirq(SCHEDULE_SOFTIRQ);
> > >       return 0;
> > >   }
> > > @@ -1888,14 +1892,17 @@ ret_t do_sched_op(int cmd,
> > > XEN_GUEST_HANDLE_PARAM(void) arg)
> > >       case SCHEDOP_shutdown:
> > >       {
> > >           struct sched_shutdown sched_shutdown;
> > > +        domid_t domain_id;
> > > +        int vcpu_id;
> > >             ret = -EFAULT;
> > >           if ( copy_from_guest(&sched_shutdown, arg, 1) )
> > >               break;
> > >   +        domain_id = current->domain->domain_id;
> > > +        vcpu_id = current->vcpu_id;
> > >           TRACE_3D(TRC_SCHED_SHUTDOWN,
> > > -                 current->domain->domain_id, current->vcpu_id,
> > > -                 sched_shutdown.reason);
> > > +                 domain_id, vcpu_id, sched_shutdown.reason);
> > >           ret = domain_shutdown(current->domain,
> > > (u8)sched_shutdown.reason);
> > >             break;
> > > @@ -1905,13 +1912,14 @@ ret_t do_sched_op(int cmd,
> > > XEN_GUEST_HANDLE_PARAM(void) arg)
> > >       {
> > >           struct sched_shutdown sched_shutdown;
> > >           struct domain *d = current->domain;
> > > +        int vcpu_id = current->vcpu_id;
> > >             ret = -EFAULT;
> > >           if ( copy_from_guest(&sched_shutdown, arg, 1) )
> > >               break;
> > >             TRACE_3D(TRC_SCHED_SHUTDOWN_CODE,
> > > -                 d->domain_id, current->vcpu_id, sched_shutdown.reason);
> > > +                 d->domain_id, vcpu_id, sched_shutdown.reason);
> > >             spin_lock(&d->shutdown_lock);
> > >           if ( d->shutdown_code == SHUTDOWN_CODE_INVALID )
> > > diff --git a/xen/drivers/char/ns16550.c b/xen/drivers/char/ns16550.c
> > > index 28ddedd50d..0b3d8b2a30 100644
> > > --- a/xen/drivers/char/ns16550.c
> > > +++ b/xen/drivers/char/ns16550.c
> > > @@ -445,10 +445,12 @@ static void __init cf_check
> > > ns16550_init_postirq(struct serial_port *port)
> > >               struct msi_info msi = {
> > >                   .sbdf = PCI_SBDF(0, uart->ps_bdf[0], uart->ps_bdf[1],
> > >                                    uart->ps_bdf[2]),
> > > -                .irq = rc = uart->irq,
> > > +                .irq = uart->irq,
> > >                   .entry_nr = 1
> > >               };
> > >   +            rc = uart->irq;
> > 
> > What's the side effect here? If the side effect is rc = uart->irq, why
> > is it considered a side effect?
> > 
> 
> Yes, rc = uart->irq is the side-effect: it writes a variable
> declared outside the context of the expression.
> 
> Consider the following example:
> 
> int rc;
> 
> struct S s = {
>   .x = rc = 2,
>   .y = rc = 3
> };
> 
> What's the value of rc?

OK thanks for the explanation.


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 19:26:07 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 19:26:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619561.964839 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtYef-000456-CH; Thu, 19 Oct 2023 19:26:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619561.964839; Thu, 19 Oct 2023 19: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 1qtYef-00044z-9C; Thu, 19 Oct 2023 19:26:01 +0000
Received: by outflank-mailman (input) for mailman id 619561;
 Thu, 19 Oct 2023 19: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 1qtYee-00044p-4M; Thu, 19 Oct 2023 19: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 1qtYee-0001WH-1s; Thu, 19 Oct 2023 19: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 1qtYed-00013C-Ns; Thu, 19 Oct 2023 19:25:59 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qtYed-0001Md-NR; Thu, 19 Oct 2023 19: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=ESKarv9+nTd1pmJHTASYWSO5KL7BTG25GE9rTh98LYY=; b=alKC1/Kd6ROBGnltQwvRuz6gX8
	XdxU+P//te2q7f6b/gbtKx//NsRFo5af79raaz+MZxzgcDvHOC9iHN1NyI9o55am1cb5aJKxRudMg
	K9D/RQbC4mScBp/2pfOC35HqPN7hrEQ3MZlDlr86KhWRsWqotf4LnXcP0Y6cZ/66J90g=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183431-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 183431: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=0355e559c6c4a7d3602120045d74e3a1e792fec6
X-Osstest-Versions-That:
    ovmf=8abbf6d87e68aa6634d63a5e3920ca44e331ddfa
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 19 Oct 2023 19:25:59 +0000

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

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 0355e559c6c4a7d3602120045d74e3a1e792fec6
baseline version:
 ovmf                 8abbf6d87e68aa6634d63a5e3920ca44e331ddfa

Last test of basis   183428  2023-10-19 12:42:27 Z    0 days
Testing same since   183431  2023-10-19 15:42:26 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Mateusz Albecki <mateusz.albecki@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
   8abbf6d87e..0355e559c6  0355e559c6c4a7d3602120045d74e3a1e792fec6 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 19:43:59 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 19:43:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619566.964850 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtYvn-0007bY-S9; Thu, 19 Oct 2023 19:43:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619566.964850; Thu, 19 Oct 2023 19:43: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 1qtYvn-0007bR-Os; Thu, 19 Oct 2023 19:43:43 +0000
Received: by outflank-mailman (input) for mailman id 619566;
 Thu, 19 Oct 2023 19:43: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=IZCy=GB=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qtYvm-0007bL-Gr
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 19:43:42 +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 ccc21940-6eb7-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 21:43:40 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by sin.source.kernel.org (Postfix) with ESMTP id F0AC0CE315B;
 Thu, 19 Oct 2023 19:43:34 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 4FCB8C433CB;
 Thu, 19 Oct 2023 19:43: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: ccc21940-6eb7-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1697744614;
	bh=+qamTx3Q3cmywi/l9y++MqbR2GYmqwvrbi9+l5lFaBM=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=RlixDy9v4BI+WNqhYGyqMoUnG4SVyS3Anx4UdVXMp8NIxssRuAT/1ZjEmOSBiuaZ5
	 VphwctMuKtxmJFW8vIXwr9VMfJgKN9HdeebSYUPPZNfy5XNVhSDszjIbL/HZiHvtkx
	 rlRxmNZJ7igI8pICkJ6V7k2G6H2GzXlPKtobm4MK3PlKWsRflnyyddNmuRj9m2f2zD
	 2SmjS6WWTLaPefnvu2cAycv4kWAuM4n4iJJRRkiahxq8UzT9nUZo4w+pWWfxw/mGx5
	 vAkNjvkpkInUKf1CB1jwVDGaZGMt9TCpt8ah9gCp9xbN4F7/wBtt6YZaPCv15Ubilq
	 xqVizpntUmfFw==
Date: Thu, 19 Oct 2023 12:43:31 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Anthony PERARD <anthony.perard@citrix.com>
cc: Andrew Cooper <andrew.cooper3@citrix.com>, 
    Xen-devel <xen-devel@lists.xenproject.org>, 
    Stefano Stabellini <sstabellini@kernel.org>, 
    Michal Orzel <michal.orzel@amd.com>, Doug Goldstein <cardoe@cardoe.com>, 
    Henry Wang <Henry.Wang@arm.com>
Subject: Re: [PATCH for-4.18] CI: (More) Always pull base image when building
 a container
In-Reply-To: <f8cb1c63-b634-4bd2-9bce-54d2e3e6dbe3@perard>
Message-ID: <alpine.DEB.2.22.394.2310191243260.2099202@ubuntu-linux-20-04-desktop>
References: <20231019171452.1704276-1-andrew.cooper3@citrix.com> <f8cb1c63-b634-4bd2-9bce-54d2e3e6dbe3@perard>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Thu, 19 Oct 2023, Anthony PERARD wrote:
> On Thu, Oct 19, 2023 at 06:14:52PM +0100, Andrew Cooper wrote:
> > Repeat c/s 26ecc08b98fc ("automation: Always pull base image when building a
> > container") for the other makefile we've got building containers.
> > 
> > Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
> > ---
> > 
> > For 4.18.  This is CI infrastructure, not part of the regular build.
> 
> Reviewed-by: Anthony PERARD <anthony.perard@citrix.com>

Acked-by: Stefano Stabellini <sstabellini@kernel.org>


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 19:58:17 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 19:58:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619569.964859 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtZ9m-00020C-VB; Thu, 19 Oct 2023 19:58:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619569.964859; Thu, 19 Oct 2023 19: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 1qtZ9m-000205-Sj; Thu, 19 Oct 2023 19:58:10 +0000
Received: by outflank-mailman (input) for mailman id 619569;
 Thu, 19 Oct 2023 19: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=IZCy=GB=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qtZ9l-0001zz-Qk
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 19:58:09 +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 d27449c0-6eb9-11ee-9b0e-b553b5be7939;
 Thu, 19 Oct 2023 21:58: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 0A100B82C9F;
 Thu, 19 Oct 2023 19:58:07 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 6F739C433C8;
 Thu, 19 Oct 2023 19:58: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: d27449c0-6eb9-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1697745486;
	bh=PQ+ucJRigwDJrObGww9Bgd1anpKfj7mDpV8dpxS2ty0=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=hy97AwR667WJo5svuB/auxfUygBMRhB+sTNoq2PODjE48vcGr9nf5JYn4rWXlQbYl
	 ZojUA97K96M8dnIRdEpzOZ+VklECi+uwWkKclQvlLyACzjeHeEDf9ETapreicWEUem
	 Ck7jDxQZM4Kn8OJR/J3Ya46VtHlPvcXpjamdoCW4qdQYmLtsNeebWu9VSSCWWBmp8D
	 Tj9Banx8PPIgcRG9yutISFQOR95vVnp+mbyPKBR0Mu2tE3yNFpwfz+rFbyscbR5bvv
	 EAyeJULI5z3gWFd7jAPWC5ldlpIpmYwM1QWNwlmoPQ75MASuu9gpScMnL77OlhP4iI
	 J5a4+g1dLQ3tA==
Date: Thu, 19 Oct 2023 12:58:02 -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.cooper3@citrix.com, roger.pau@citrix.com, 
    Simone Ballarin <simone.ballarin@bugseng.com>, 
    Doug Goldstein <cardoe@cardoe.com>, 
    George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>, 
    Wei Liu <wl@xen.org>, xen-devel@lists.xenproject.org, 
    Luca.Fancellu@arm.com
Subject: Re: [XEN PATCH][for-next][for-4.19 v2 1/8] xen/include: add macro
 LOWEST_BIT
In-Reply-To: <9002a10f872fccc5217faab2f20ad5ba@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2310191253440.2099202@ubuntu-linux-20-04-desktop>
References: <cover.1697123806.git.nicola.vetrini@bugseng.com> <bb0ba44f8a3944c22a1c7cf19196c7060e8adb4b.1697123806.git.nicola.vetrini@bugseng.com> <93408661-721b-c4b3-d504-e65142bbdaea@suse.com> <42ee4de54f6d9bd80fb50db3545cbaf4@bugseng.com>
 <08286993-6a83-b928-6398-e129397927a0@suse.com> <9002a10f872fccc5217faab2f20ad5ba@bugseng.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

+Luca

> > > > > --- a/xen/include/xen/macros.h
> > > > > +++ b/xen/include/xen/macros.h
> > > > > @@ -8,8 +8,10 @@
> > > > >  #define DIV_ROUND(n, d) (((n) + (d) / 2) / (d))
> > > > >  #define DIV_ROUND_UP(n, d) (((n) + (d) - 1) / (d))
> > > > > 
> > > > > -#define MASK_EXTR(v, m) (((v) & (m)) / ((m) & -(m)))
> > > > > -#define MASK_INSR(v, m) (((v) * ((m) & -(m))) & (m))
> > > > 
> > > > a SAF-<n>-safe comment here?
> > > > 
> > > 
> > > One reason is that now that violations only belonging to tool
> > > configurations
> > > and similar are documented in docs/misra/deviations.rst (committed in
> > > Stefano's
> > > branch for-4.19 [1]).
> > 
> > But tool configuration means every analysis tool needs configuring
> > separately. That's why the comment tagging scheme was decided to be
> > preferred, iirc.
> > 
> > > Also, there were disagreements on the SAF naming
> > > scheme, and
> > > patches like those would not be accepted at the moment.
> > 
> > Well, that needs resolving. The naming there shouldn't lead to patches
> > being accepted that later may need redoing.
> > 
> > Jan
> 
> While this is true, in this case I'm not willing to deviate with a SAF, given
> that
> some ECLAIR-specific configuration would be needed anyways, given that I'm
> deviating a macro definition, rather than the line where it's actually used
> (and maybe other tools would need
> that as well).

Did I get it right that the problem with using SAF in this case is that
it wouldn't be sufficient to add a SAF comment on top of the MACRO
definition, but we would need a SAF comment on top of every MACRO
invocation?

If so, then not just for this MACRO but in general basically we have to
use deviations.rst.

Luca, do you know what would be the behavior for cppcheck and/or
Coverity? I imagine it will be the same and they would also need a
deviation at every MACRO invocation, not just the definition?


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 20:03:04 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 20:03:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619572.964870 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtZEU-0003Vz-I3; Thu, 19 Oct 2023 20:03:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619572.964870; Thu, 19 Oct 2023 20:03: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 1qtZEU-0003Vs-Ea; Thu, 19 Oct 2023 20:03:02 +0000
Received: by outflank-mailman (input) for mailman id 619572;
 Thu, 19 Oct 2023 20:03: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=3Gc6=GB=raptorengineering.com=sanastasio@srs-se1.protection.inumbo.net>)
 id 1qtZET-0003Vm-PI
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 20:03:01 +0000
Received: from raptorengineering.com (mail.raptorengineering.com
 [23.155.224.40]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 7fd33291-6eba-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 22:02:59 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id AB5C18285527;
 Thu, 19 Oct 2023 15:02: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 3b-jTolaVfMa; Thu, 19 Oct 2023 15:02:56 -0500 (CDT)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 4EA8B8285966;
 Thu, 19 Oct 2023 15:02:56 -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 QGVWBXQ4VcnC; Thu, 19 Oct 2023 15:02:56 -0500 (CDT)
Received: from [10.11.0.3] (5.edge.rptsys.com [23.155.224.38])
 by mail.rptsys.com (Postfix) with ESMTPSA id D3F688285527;
 Thu, 19 Oct 2023 15:02:55 -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: 7fd33291-6eba-11ee-98d5-6d05b1d4d9a1
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com 4EA8B8285966
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD;
	t=1697745776; bh=iytuFWv62eiyYgq+TSnbCZnGXvdCmxrwQaBI8wH9DtM=;
	h=Message-ID:Date:MIME-Version:To:From;
	b=aHZ/5pmOJvjO6jcDZAHs6ClBbGE757xV0OVErfTDMGZO8s2WA7x7tQTbVTzhDdK5y
	 pX4qyhmDKwxsNFikhqkQQ/deK8L+4kjDQwf50qvUrf88G6hNjHjQE7/g6PP8I7R2t2
	 EbEYiyPzOI272IuzRe8aH1z0pgCSGvNh4NZ9sczQ=
X-Virus-Scanned: amavisd-new at rptsys.com
Message-ID: <4da4a57b-06ae-dd66-e8b5-a388f7e492b3@raptorengineering.com>
Date: Thu, 19 Oct 2023 15:02:55 -0500
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux ppc64le; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH v2 2/2] xen/ppc: Implement a basic exception handler
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.1697220184.git.sanastasio@raptorengineering.com>
 <dfd134a6c59f329b62d2ecfaa37d74d70f8d4d90.1697220184.git.sanastasio@raptorengineering.com>
 <a5db276d-6bc0-1fe6-6cdd-7c097308fdce@suse.com>
From: Shawn Anastasio <sanastasio@raptorengineering.com>
In-Reply-To: <a5db276d-6bc0-1fe6-6cdd-7c097308fdce@suse.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit

On 10/18/23 10:43 AM, Jan Beulich wrote:
> On 13.10.2023 20:13, Shawn Anastasio wrote:
>> --- /dev/null
>> +++ b/xen/arch/ppc/ppc64/exceptions-asm.S
>> @@ -0,0 +1,129 @@
>> +/* SPDX-License-Identifier: GPL-2.0-or-later */
>> +
>> +#include <asm/asm-defns.h>
>> +#include <asm/processor.h>
>> +
>> +    .section .text.exceptions, "ax", %progbits
>> +
>> +    /* 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)
> 
> This won't save the entry value of %r1, but the one that was already updated.
> If this is not a problem, perhaps worth a comment?
>

This is indeed not a problem for now, but agreed that it warrants a
comment. Will do.

>> +    /* 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)
> 
> Except for these four lines the two functions look identical. Is it
> really good to duplicate all of the rest of the code?
>

Andrew also pointed this out and as I mentioned to him, I expect the two
routines to diverge more significantly in the future, so I'd rather keep
them separate even if in this early stage there's not much difference.

>> +    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 the specified handler
>> + */
>> +.macro ISR name, exc, handler
>> +    . = (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       \handler
>> +
>> +    .size \name, . - \name
>> +    .type \name, %function
>> +.endm
>> +
>> +
> 
> Nit: No double blank lines please.
> 

Will fix.

>> +ISR exc_sysreset,   EXC_SYSTEM_RESET,   exception_common
>> +ISR exc_mcheck,     EXC_MACHINE_CHECK,  exception_common
>> +ISR exc_dstore,     EXC_DATA_STORAGE,   exception_common
>> +ISR exc_dsegment,   EXC_DATA_SEGMENT,   exception_common
>> +ISR exc_istore,     EXC_INSN_STORAGE,   exception_common
>> +ISR exc_isegment,   EXC_INSN_SEGMENT,   exception_common
>> +ISR exc_extern,     EXC_EXTERNAL,       exception_common
>> +ISR exc_align,      EXC_ALIGNMENT,      exception_common
>> +ISR exc_program,    EXC_PROGRAM,        exception_common
>> +ISR exc_fpu,        EXC_FPU_UNAVAIL,    exception_common
>> +ISR exc_dec,        EXC_DECREMENTER,    exception_common
>> +ISR exc_h_dec,      EXC_H_DECREMENTER,  h_exception_common
>> +/* EXC_PRIV_DOORBELL ... EXC_TRACE */
>> +ISR exc_h_dstore,   EXC_H_DATA_STORAGE, h_exception_common
>> +ISR exc_h_istore,   EXC_H_INSN_STORAGE, h_exception_common
> 
> Aiui these are required to be in order, or else the assembler will choke.
> Maybe worth another comment?
>

Correct, the ordering does matter here. I'll add a comment.

>> --- /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";
> 
> Every string here has Interrupt at the end - any chance of collapsing
> all of them?
> 

Fair enough, I'll drop " Interrupt" from all the strings.

>> +    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);
> 
> While surely a matter of taste, I'd still like to ask: In dumping like
> this, are 0x prefixes (taking space) actually useful?
>

I personally prefer the prefixes, but it is definitely just a matter of
taste.

>> --- 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);
>> +}
> 
> Please forgive my lack of PPC knowledge: There's no use of any address
> here afaict. Where's the link to (presumably) AIL_VECTOR_BASE? If that
> address is kind of magic, I'm then lacking a connection between
> XEN_VIRT_START and that constant. (If Xen needed moving around in
> address space, it would be nice if changing a single constant would
> suffice.)
>

AIL_VECTOR_BASE is indeed a magic address defined by the ISA for AIL=3.
As for the second part of your question, I'm a bit confused as to what
you're asking. The ISRs are placed at a position relative to
the start of the .text.exceptions section (EXCEPTION_VECTORS_START), so
Xen can be arbitrarily shuffled around in address space as long as
EXCEPTION_VECTORS_START lies at or before AIL_VECTOR_BASE.

> Also you only OR in LPCR_AIL_3 - is it guaranteed that the respective
> field is zero when control is passed to Xen?
>

As AIL=3 corresponds to 0b11, the intial state of the AIL field is
irrelevant and OR'ing will always yield the desired result.

> Jan

Thanks,
Shawn


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 21:14:14 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 21:14:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619576.964880 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtaL8-0008I3-Nr; Thu, 19 Oct 2023 21:13:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619576.964880; Thu, 19 Oct 2023 21:13: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 1qtaL8-0008Hw-KM; Thu, 19 Oct 2023 21:13:58 +0000
Received: by outflank-mailman (input) for mailman id 619576;
 Thu, 19 Oct 2023 21:13: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=IZCy=GB=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qtaL7-0008Hq-G4
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 21:13:57 +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 68944695-6ec4-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 23:13:55 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by dfw.source.kernel.org (Postfix) with ESMTP id 7A6FE61D60;
 Thu, 19 Oct 2023 21:13:53 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 55457C433C7;
 Thu, 19 Oct 2023 21:13: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: 68944695-6ec4-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1697750033;
	bh=ZA2j2DnRDwbTQbyadeP/e+wV7+BqIgxPr69VCFYC0a8=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=J7JJot02fyJ/5OvbkOO+SpXOBh+bgs3lG8GDfIlVrw9ImZBXSwXpS+TZP1UMUqi6R
	 DlDLNznO3RqGm37hMvH3Tm9vY0/sCIMYn6PyovVBTACI1CkHlK4b75yamwhpPG0y4I
	 Lr5Ksi47h/7KIZdeYDjZz/herq7/L/WceRI2WotwknWQtLCXFAKIgSPY6DYWfR55Ch
	 xmHR+Ems6uvM88h8gA9oXMyvLZa1bzx75Mp5Kghs0oIQXnjsGIt+vRJj23o1KwMuZ1
	 dGZE7/CmFCGcXTR7le5hTrAiFnjSqp6XmbkRqk0qS5k241cUb8IyMzXWgTrtgUZ7Pg
	 w3owBxyqtjvCQ==
Date: Thu, 19 Oct 2023 14:13:49 -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, 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>
Subject: Re: [XEN PATCH][for-4.19 v3 1/8] xen: add declarations for variables
 where needed
In-Reply-To: <4d419cbffc84e0f9934794d105705ac64094a54a.1697722648.git.nicola.vetrini@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2310191413310.2099202@ubuntu-linux-20-04-desktop>
References: <cover.1697722648.git.nicola.vetrini@bugseng.com> <4d419cbffc84e0f9934794d105705ac64094a54a.1697722648.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 Thu, 19 Oct 2023, Nicola Vetrini wrote:
> Some variables with external linkage used in C code do not have
> a visible declaration where they are defined. Providing such
> declaration also resolves violations of MISRA C:2012 Rule 8.4.
> 
> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
> ---
> Changes in v2:
> - make xenpf_lock static on ARM
> Changes in v3:
> - moved back code from symbols.h to symbols.c
> - dropped two declarations, now deviated
> ---
>  xen/arch/arm/include/asm/setup.h  | 3 +++
>  xen/arch/arm/include/asm/smp.h    | 3 +++
>  xen/arch/arm/platform_hypercall.c | 2 +-
>  xen/arch/x86/cpu/mcheck/mce.c     | 6 +++---
>  xen/arch/x86/irq.c                | 2 +-
>  xen/include/xen/symbols.h         | 1 +
>  6 files changed, 12 insertions(+), 5 deletions(-)
> 
> diff --git a/xen/arch/arm/include/asm/setup.h b/xen/arch/arm/include/asm/setup.h
> index 98af6f55f5a0..2a2d6114f2eb 100644
> --- a/xen/arch/arm/include/asm/setup.h
> +++ b/xen/arch/arm/include/asm/setup.h
> @@ -184,9 +184,12 @@ int map_range_to_domain(const struct dt_device_node *dev,
>  extern lpae_t boot_pgtable[XEN_PT_LPAE_ENTRIES];
>  
>  #ifdef CONFIG_ARM_64
> +extern lpae_t boot_first[XEN_PT_LPAE_ENTRIES];
>  extern lpae_t boot_first_id[XEN_PT_LPAE_ENTRIES];
>  #endif
> +extern lpae_t boot_second[XEN_PT_LPAE_ENTRIES];
>  extern lpae_t boot_second_id[XEN_PT_LPAE_ENTRIES];
> +extern lpae_t boot_third[XEN_PT_LPAE_ENTRIES * XEN_NR_ENTRIES(2)];
>  extern lpae_t boot_third_id[XEN_PT_LPAE_ENTRIES];
>  
>  /* Find where Xen will be residing at runtime and return a PT entry */
> diff --git a/xen/arch/arm/include/asm/smp.h b/xen/arch/arm/include/asm/smp.h
> index 4fabdf5310d8..28bf24a01d95 100644
> --- a/xen/arch/arm/include/asm/smp.h
> +++ b/xen/arch/arm/include/asm/smp.h
> @@ -6,6 +6,9 @@
>  #include <asm/current.h>
>  #endif
>  
> +extern struct init_info init_data;
> +extern unsigned long smp_up_cpu;
> +
>  DECLARE_PER_CPU(cpumask_var_t, cpu_sibling_mask);
>  DECLARE_PER_CPU(cpumask_var_t, cpu_core_mask);
>  
> diff --git a/xen/arch/arm/platform_hypercall.c b/xen/arch/arm/platform_hypercall.c
> index 743687a30390..fde4bc3e5809 100644
> --- a/xen/arch/arm/platform_hypercall.c
> +++ b/xen/arch/arm/platform_hypercall.c
> @@ -17,7 +17,7 @@
>  #include <asm/current.h>
>  #include <asm/event.h>
>  
> -DEFINE_SPINLOCK(xenpf_lock);
> +static DEFINE_SPINLOCK(xenpf_lock);
>  
>  long do_platform_op(XEN_GUEST_HANDLE_PARAM(xen_platform_op_t) u_xenpf_op)
>  {
> diff --git a/xen/arch/x86/cpu/mcheck/mce.c b/xen/arch/x86/cpu/mcheck/mce.c
> index 6141b7eb9cf1..e855f958030d 100644
> --- a/xen/arch/x86/cpu/mcheck/mce.c
> +++ b/xen/arch/x86/cpu/mcheck/mce.c
> @@ -1682,13 +1682,13 @@ long do_mca(XEN_GUEST_HANDLE_PARAM(xen_mc_t) u_xen_mc)
>      return ret;
>  }
>  
> -int mcinfo_dumpped;
> +static int mcinfo_dumped;
>  static int cf_check x86_mcinfo_dump_panic(mctelem_cookie_t mctc)
>  {
>      struct mc_info *mcip = mctelem_dataptr(mctc);
>  
>      x86_mcinfo_dump(mcip);
> -    mcinfo_dumpped++;
> +    mcinfo_dumped++;
>  
>      return 0;
>  }
> @@ -1702,7 +1702,7 @@ static void mc_panic_dump(void)
>      for_each_online_cpu(cpu)
>          mctelem_process_deferred(cpu, x86_mcinfo_dump_panic,
>                                   mctelem_has_deferred_lmce(cpu));
> -    dprintk(XENLOG_ERR, "End dump mc_info, %x mcinfo dumped\n", mcinfo_dumpped);
> +    dprintk(XENLOG_ERR, "End dump mc_info, %x mcinfo dumped\n", mcinfo_dumped);
>  }
>  
>  void mc_panic(const char *s)
> diff --git a/xen/arch/x86/irq.c b/xen/arch/x86/irq.c
> index 6abfd8162120..604dba94b052 100644
> --- a/xen/arch/x86/irq.c
> +++ b/xen/arch/x86/irq.c
> @@ -43,7 +43,7 @@ int __read_mostly opt_irq_vector_map = OPT_IRQ_VECTOR_MAP_DEFAULT;
>  static unsigned char __read_mostly irq_max_guests;
>  integer_param("irq-max-guests", irq_max_guests);
>  
> -vmask_t global_used_vector_map;
> +static vmask_t global_used_vector_map;
>  
>  struct irq_desc __read_mostly *irq_desc = NULL;
>  
> diff --git a/xen/include/xen/symbols.h b/xen/include/xen/symbols.h
> index 20bbb28ef226..1b2863663aa0 100644
> --- a/xen/include/xen/symbols.h
> +++ b/xen/include/xen/symbols.h
> @@ -33,4 +33,5 @@ struct symbol_offset {
>      uint32_t stream; /* .. in the compressed stream.*/
>      uint32_t addr;   /* .. and in the fixed size address array. */
>  };
> +
>  #endif /*_XEN_SYMBOLS_H*/

Spurious change.

Aside from this:

Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 21:16:58 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 21:16:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619578.964890 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtaO1-0000vw-6X; Thu, 19 Oct 2023 21:16:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619578.964890; Thu, 19 Oct 2023 21: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 1qtaO1-0000vp-2s; Thu, 19 Oct 2023 21:16:57 +0000
Received: by outflank-mailman (input) for mailman id 619578;
 Thu, 19 Oct 2023 21:16: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=IZCy=GB=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qtaNz-0000vd-78
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 21:16:55 +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 d36d06dc-6ec4-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 23:16:54 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by dfw.source.kernel.org (Postfix) with ESMTP id 1A4E761D9E;
 Thu, 19 Oct 2023 21:16:53 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 29433C433C8;
 Thu, 19 Oct 2023 21:16: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: d36d06dc-6ec4-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1697750212;
	bh=u6lO4uXsmi+Gt34ypzu37AZTHCKKULzb19pqUwphpBk=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=GS04/vGfC2dJ8GncvnuTB0FYNsL2uWk6SXMaPkRWgGMeexJsmKDeHUzSZLymm1vvp
	 sP7JrC9rmtxQNJx57EKJ2P+nfN8xYSL/7lzGwyDKglmVh2ZylK1z4AKutT0ZftkzqL
	 DsVwS2Ej+Ee1guiHMUsXbsE8Owi4YTfeUgU26id6zJWhlQaBmn7QL/6egfi1A0nVVY
	 5LhA8/B+wTuraNTwIs7cERky/9WxW2RnfoNdTb2JTNF2BqmmAP6x7ZBDUUGexHsz/U
	 YMnN3/zH9QbK6I4aFPbT5rm0/p3ZMEG7AxkhhRlrPjGpC7fe+ak9ZDwN4Km1tUB0ZC
	 MQgm4IiiZJuTw==
Date: Thu, 19 Oct 2023 14:16:49 -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>
Subject: Re: [XEN PATCH][for-4.19 v3 6/8] xen/console: remove stub definition
 in consoled.h
In-Reply-To: <d354aad8c58fd97058ed84751266562c12feb622.1697722648.git.nicola.vetrini@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2310191416430.2099202@ubuntu-linux-20-04-desktop>
References: <cover.1697722648.git.nicola.vetrini@bugseng.com> <d354aad8c58fd97058ed84751266562c12feb622.1697722648.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 Thu, 19 Oct 2023, Nicola Vetrini wrote:
> The stub  definition of 'consoled_guest_tx' can be removed, since its
> its single caller uses the implementation built with PV_SHIM enabled.
> 
> Fixes: 5ef49f185c2d ("x86/pv-shim: shadow PV console's page for L2 DomU")
> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>

Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>



From xen-devel-bounces@lists.xenproject.org Thu Oct 19 21:17:47 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 21:17:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619580.964899 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtaOp-0001Sh-FE; Thu, 19 Oct 2023 21:17:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619580.964899; Thu, 19 Oct 2023 21: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 1qtaOp-0001Sa-C4; Thu, 19 Oct 2023 21:17:47 +0000
Received: by outflank-mailman (input) for mailman id 619580;
 Thu, 19 Oct 2023 21: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=IZCy=GB=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qtaOo-0000vd-1D
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 21:17:46 +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 f253a5c5-6ec4-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 23:17:45 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by ams.source.kernel.org (Postfix) with ESMTP id EFECDB82D40;
 Thu, 19 Oct 2023 21:17:44 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id CD24FC433C8;
 Thu, 19 Oct 2023 21:17: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: f253a5c5-6ec4-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1697750264;
	bh=s0o99sdDgvCQP1IDir9uPc/Yq0i7csubuJMrRIcNmcc=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=NrkYQi8napaHlDEihXG8HECAOcLm6Yl8WwLY24H4q3cHazbuRduckbT0FZoRrgZI1
	 hWrFmAhg+yIyKB6P+CfeE7Gyx0ckxL3TwW9yNIpcxRK0g4LedySI5ivUsMTYGbax2h
	 QAFbbTWJ4tzA8xrk4lz0hLLTG0SoUQgf6DH6cT/XX789wlIdQTl2+NiG3/3mVze35d
	 F/JJ6d9H/K4OCd8dMYsMbyt1jXZvP7yvO01592MXEQg472cZt1JSSs+cTxD0LRHnap
	 qENg00wgLCtUUhS6Yyj7QDaFpZhdM+tDhW3cXeYHzipouIhpMYc1hGrzt6j9uR7uZS
	 XpBjOBtLUR0MA==
Date: Thu, 19 Oct 2023 14:17:41 -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>
Subject: Re: [XEN PATCH][for-4.19 v3 8/8] docs/misra: exclude three more
 files
In-Reply-To: <0eae39cdc68e48932936e2c510a867ebe1f7c298.1697722648.git.nicola.vetrini@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2310191417300.2099202@ubuntu-linux-20-04-desktop>
References: <cover.1697722648.git.nicola.vetrini@bugseng.com> <0eae39cdc68e48932936e2c510a867ebe1f7c298.1697722648.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 Thu, 19 Oct 2023, Nicola Vetrini wrote:
> These files should not conform to MISRA guidelines at the moment,
> therefore they are added to the exclusion list.
> 
> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>

Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 21:23:29 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 21:23:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619585.964909 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtaUI-0002yS-1J; Thu, 19 Oct 2023 21:23:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619585.964909; Thu, 19 Oct 2023 21:23: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 1qtaUH-0002yL-V2; Thu, 19 Oct 2023 21:23:25 +0000
Received: by outflank-mailman (input) for mailman id 619585;
 Thu, 19 Oct 2023 21:23: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=UmqE=GB=linaro.org=philmd@srs-se1.protection.inumbo.net>)
 id 1qtaUG-0002yE-Oh
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 21:23:24 +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 bac761d6-6ec5-11ee-9b0e-b553b5be7939;
 Thu, 19 Oct 2023 23:23:21 +0200 (CEST)
Received: by mail-wr1-x42a.google.com with SMTP id
 ffacd0b85a97d-313e742a787so97602f8f.1
 for <xen-devel@lists.xenproject.org>; Thu, 19 Oct 2023 14:23:22 -0700 (PDT)
Received: from m1x-phil.lan (176-131-216-177.abo.bbox.fr. [176.131.216.177])
 by smtp.gmail.com with ESMTPSA id
 x9-20020a05600c420900b004065e235417sm5250795wmh.21.2023.10.19.14.23.20
 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256);
 Thu, 19 Oct 2023 14:23: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: bac761d6-6ec5-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=linaro.org; s=google; t=1697750601; x=1698355401; 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=G9lJp+b2DIJ9xUd00S7g/tXGm5acpgAQSoiQZWG4ikE=;
        b=OZ2tbyDY3mKB3TkY88XGzWNfrivyueaVMbyBeevLHQuWBqlyhlfCsBLwvqB2i1gksf
         Tcs1kO4GoSQhMCp1czRhoJV62zwqRm0f0veGI+N+U42I5Vmivkp0xe/piFv8gr5K4EYR
         O7Ls2HeILvrr/NKiQMHObg/8zezgle9lgragYsw1WfrerO5vALLxedk7Frp84ib3yriz
         VGXrU/SuGrkILaLrymHV5yD+Di2ZhopZF5gQxTkuzzMaAznQ1/6VSi9dCrA7IztSPv6i
         +X+7jy9tnL4bMNC/paptWF86GA1QXa2I8CZcAM6SdjM4/PWAHjBT5CilKfUtOdUBeETP
         HniA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697750601; x=1698355401;
        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=G9lJp+b2DIJ9xUd00S7g/tXGm5acpgAQSoiQZWG4ikE=;
        b=H8Q0XHeXZpnXGkj8NtvmgqnvwV5KWBssB4CxAbt5Kan8eM3mjJoKVp0butOIzukTVS
         8QwIHhQbrbBSryDs2KM8bP1pexJ0od6bpMRz6tNdC5uJsw6AZBICdRNLmSd7FX1+y5VC
         GHvbyQwJ6SVQMZ+JA9XCCsgNBqeXccicPjDTE43Jc1QZTeiLx6HzCbxbKrpfIjUt16bh
         K/ozUXDP6SXc29qooyukPdX6YmcYbapj2pLaYZxL0o5NPD7nvZY2RlZpODGsQ1FD3rnu
         kHVP5bD1/zyJcILbmySLsqiDY0a6yVbnp8m6Pyb7m2S6ha/WECkhMVF1ZM0TeWUramYa
         6Y1g==
X-Gm-Message-State: AOJu0Yxs5WeOlgWtkNGEUfNj7J7ccKBVNhrLTkH4p8ExRFbwDHhSt8Mc
	M5eTDC5w+P1iB1ZULdORy6SoqQ==
X-Google-Smtp-Source: AGHT+IGg/Dp9IEokSsTjvDXCE+MBx08UvC0HGe/gKXfTnujJedy2dxKexIj/wRudUxPmQHNUI84yOg==
X-Received: by 2002:a5d:5956:0:b0:32d:de4f:140b with SMTP id e22-20020a5d5956000000b0032dde4f140bmr2955479wri.6.1697750601701;
        Thu, 19 Oct 2023 14:23:21 -0700 (PDT)
From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>
To: qemu-devel@nongnu.org
Cc: qemu-ppc@nongnu.org,
	qemu-s390x@nongnu.org,
	qemu-block@nongnu.org,
	qemu-arm@nongnu.org,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
	=?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>,
	Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Gerd Hoffmann <kraxel@redhat.com>,
	xen-devel@lists.xenproject.org
Subject: [PULL 46/46] ui/input: Constify QemuInputHandler structure
Date: Thu, 19 Oct 2023 23:18:11 +0200
Message-ID: <20231019211814.30576-47-philmd@linaro.org>
X-Mailer: git-send-email 2.41.0
In-Reply-To: <20231019211814.30576-1-philmd@linaro.org>
References: <20231019211814.30576-1-philmd@linaro.org>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Access to QemuInputHandlerState::handler are read-only.

Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Reviewed-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
Message-Id: <20231017131251.43708-1-philmd@linaro.org>
---
 include/hw/virtio/virtio-input.h | 2 +-
 include/ui/input.h               | 2 +-
 chardev/msmouse.c                | 2 +-
 chardev/wctablet.c               | 2 +-
 hw/char/escc.c                   | 2 +-
 hw/display/xenfb.c               | 6 +++---
 hw/input/adb-kbd.c               | 2 +-
 hw/input/hid.c                   | 6 +++---
 hw/input/ps2.c                   | 4 ++--
 hw/input/virtio-input-hid.c      | 8 ++++----
 ui/input-legacy.c                | 2 +-
 ui/input.c                       | 4 ++--
 ui/vdagent.c                     | 2 +-
 13 files changed, 22 insertions(+), 22 deletions(-)

diff --git a/include/hw/virtio/virtio-input.h b/include/hw/virtio/virtio-input.h
index 08f1591424..a6c9703644 100644
--- a/include/hw/virtio/virtio-input.h
+++ b/include/hw/virtio/virtio-input.h
@@ -84,7 +84,7 @@ struct VirtIOInputHID {
     VirtIOInput                       parent_obj;
     char                              *display;
     uint32_t                          head;
-    QemuInputHandler                  *handler;
+    const QemuInputHandler            *handler;
     QemuInputHandlerState             *hs;
     int                               ledstate;
     bool                              wheel_axis;
diff --git a/include/ui/input.h b/include/ui/input.h
index 24d8e4579e..8f9aac562e 100644
--- a/include/ui/input.h
+++ b/include/ui/input.h
@@ -30,7 +30,7 @@ struct QemuInputHandler {
 };
 
 QemuInputHandlerState *qemu_input_handler_register(DeviceState *dev,
-                                                   QemuInputHandler *handler);
+                                            const QemuInputHandler *handler);
 void qemu_input_handler_activate(QemuInputHandlerState *s);
 void qemu_input_handler_deactivate(QemuInputHandlerState *s);
 void qemu_input_handler_unregister(QemuInputHandlerState *s);
diff --git a/chardev/msmouse.c b/chardev/msmouse.c
index ab8fe981d6..a774c397b4 100644
--- a/chardev/msmouse.c
+++ b/chardev/msmouse.c
@@ -171,7 +171,7 @@ static int msmouse_chr_write(struct Chardev *s, const uint8_t *buf, int len)
     return len;
 }
 
-static QemuInputHandler msmouse_handler = {
+static const QemuInputHandler msmouse_handler = {
     .name  = "QEMU Microsoft Mouse",
     .mask  = INPUT_EVENT_MASK_BTN | INPUT_EVENT_MASK_REL,
     .event = msmouse_input_event,
diff --git a/chardev/wctablet.c b/chardev/wctablet.c
index 43bdf6b608..f4008bf35b 100644
--- a/chardev/wctablet.c
+++ b/chardev/wctablet.c
@@ -178,7 +178,7 @@ static void wctablet_input_sync(DeviceState *dev)
     }
 }
 
-static QemuInputHandler wctablet_handler = {
+static const QemuInputHandler wctablet_handler = {
     .name  = "QEMU Wacom Pen Tablet",
     .mask  = INPUT_EVENT_MASK_BTN | INPUT_EVENT_MASK_ABS,
     .event = wctablet_input_event,
diff --git a/hw/char/escc.c b/hw/char/escc.c
index 4be66053c1..48b30ee760 100644
--- a/hw/char/escc.c
+++ b/hw/char/escc.c
@@ -845,7 +845,7 @@ static void sunkbd_handle_event(DeviceState *dev, QemuConsole *src,
     put_queue(s, keycode);
 }
 
-static QemuInputHandler sunkbd_handler = {
+static const QemuInputHandler sunkbd_handler = {
     .name  = "sun keyboard",
     .mask  = INPUT_EVENT_MASK_KEY,
     .event = sunkbd_handle_event,
diff --git a/hw/display/xenfb.c b/hw/display/xenfb.c
index 0074a9b6f8..b2130a0d70 100644
--- a/hw/display/xenfb.c
+++ b/hw/display/xenfb.c
@@ -321,20 +321,20 @@ static void xenfb_mouse_sync(DeviceState *dev)
     xenfb->wheel = 0;
 }
 
-static QemuInputHandler xenfb_keyboard = {
+static const QemuInputHandler xenfb_keyboard = {
     .name  = "Xen PV Keyboard",
     .mask  = INPUT_EVENT_MASK_KEY,
     .event = xenfb_key_event,
 };
 
-static QemuInputHandler xenfb_abs_mouse = {
+static const QemuInputHandler xenfb_abs_mouse = {
     .name  = "Xen PV Mouse",
     .mask  = INPUT_EVENT_MASK_BTN | INPUT_EVENT_MASK_ABS,
     .event = xenfb_mouse_event,
     .sync  = xenfb_mouse_sync,
 };
 
-static QemuInputHandler xenfb_rel_mouse = {
+static const QemuInputHandler xenfb_rel_mouse = {
     .name  = "Xen PV Mouse",
     .mask  = INPUT_EVENT_MASK_BTN | INPUT_EVENT_MASK_REL,
     .event = xenfb_mouse_event,
diff --git a/hw/input/adb-kbd.c b/hw/input/adb-kbd.c
index a9088c910c..e21edf9acd 100644
--- a/hw/input/adb-kbd.c
+++ b/hw/input/adb-kbd.c
@@ -355,7 +355,7 @@ static void adb_kbd_reset(DeviceState *dev)
     s->count = 0;
 }
 
-static QemuInputHandler adb_keyboard_handler = {
+static const QemuInputHandler adb_keyboard_handler = {
     .name  = "QEMU ADB Keyboard",
     .mask  = INPUT_EVENT_MASK_KEY,
     .event = adb_keyboard_event,
diff --git a/hw/input/hid.c b/hw/input/hid.c
index a9c7dd1ce1..b8e85374ca 100644
--- a/hw/input/hid.c
+++ b/hw/input/hid.c
@@ -510,20 +510,20 @@ void hid_free(HIDState *hs)
     hid_del_idle_timer(hs);
 }
 
-static QemuInputHandler hid_keyboard_handler = {
+static const QemuInputHandler hid_keyboard_handler = {
     .name  = "QEMU HID Keyboard",
     .mask  = INPUT_EVENT_MASK_KEY,
     .event = hid_keyboard_event,
 };
 
-static QemuInputHandler hid_mouse_handler = {
+static const QemuInputHandler hid_mouse_handler = {
     .name  = "QEMU HID Mouse",
     .mask  = INPUT_EVENT_MASK_BTN | INPUT_EVENT_MASK_REL,
     .event = hid_pointer_event,
     .sync  = hid_pointer_sync,
 };
 
-static QemuInputHandler hid_tablet_handler = {
+static const QemuInputHandler hid_tablet_handler = {
     .name  = "QEMU HID Tablet",
     .mask  = INPUT_EVENT_MASK_BTN | INPUT_EVENT_MASK_ABS,
     .event = hid_pointer_event,
diff --git a/hw/input/ps2.c b/hw/input/ps2.c
index 45af76a837..c8fd23cf36 100644
--- a/hw/input/ps2.c
+++ b/hw/input/ps2.c
@@ -1231,7 +1231,7 @@ static const VMStateDescription vmstate_ps2_mouse = {
     }
 };
 
-static QemuInputHandler ps2_keyboard_handler = {
+static const QemuInputHandler ps2_keyboard_handler = {
     .name  = "QEMU PS/2 Keyboard",
     .mask  = INPUT_EVENT_MASK_KEY,
     .event = ps2_keyboard_event,
@@ -1242,7 +1242,7 @@ static void ps2_kbd_realize(DeviceState *dev, Error **errp)
     qemu_input_handler_register(dev, &ps2_keyboard_handler);
 }
 
-static QemuInputHandler ps2_mouse_handler = {
+static const QemuInputHandler ps2_mouse_handler = {
     .name  = "QEMU PS/2 Mouse",
     .mask  = INPUT_EVENT_MASK_BTN | INPUT_EVENT_MASK_REL,
     .event = ps2_mouse_event,
diff --git a/hw/input/virtio-input-hid.c b/hw/input/virtio-input-hid.c
index 7053ad72d4..45e4d4c75d 100644
--- a/hw/input/virtio-input-hid.c
+++ b/hw/input/virtio-input-hid.c
@@ -265,7 +265,7 @@ static const TypeInfo virtio_input_hid_info = {
 
 /* ----------------------------------------------------------------- */
 
-static QemuInputHandler virtio_keyboard_handler = {
+static const QemuInputHandler virtio_keyboard_handler = {
     .name  = VIRTIO_ID_NAME_KEYBOARD,
     .mask  = INPUT_EVENT_MASK_KEY,
     .event = virtio_input_handle_event,
@@ -322,7 +322,7 @@ static const TypeInfo virtio_keyboard_info = {
 
 /* ----------------------------------------------------------------- */
 
-static QemuInputHandler virtio_mouse_handler = {
+static const QemuInputHandler virtio_mouse_handler = {
     .name  = VIRTIO_ID_NAME_MOUSE,
     .mask  = INPUT_EVENT_MASK_BTN | INPUT_EVENT_MASK_REL,
     .event = virtio_input_handle_event,
@@ -416,7 +416,7 @@ static const TypeInfo virtio_mouse_info = {
 
 /* ----------------------------------------------------------------- */
 
-static QemuInputHandler virtio_tablet_handler = {
+static const QemuInputHandler virtio_tablet_handler = {
     .name  = VIRTIO_ID_NAME_TABLET,
     .mask  = INPUT_EVENT_MASK_BTN | INPUT_EVENT_MASK_ABS,
     .event = virtio_input_handle_event,
@@ -541,7 +541,7 @@ static const TypeInfo virtio_tablet_info = {
 
 /* ----------------------------------------------------------------- */
 
-static QemuInputHandler virtio_multitouch_handler = {
+static const QemuInputHandler virtio_multitouch_handler = {
     .name  = VIRTIO_ID_NAME_MULTITOUCH,
     .mask  = INPUT_EVENT_MASK_BTN | INPUT_EVENT_MASK_MTT,
     .event = virtio_input_handle_event,
diff --git a/ui/input-legacy.c b/ui/input-legacy.c
index 46ea74e44d..210ae5eaca 100644
--- a/ui/input-legacy.c
+++ b/ui/input-legacy.c
@@ -127,7 +127,7 @@ static void legacy_kbd_event(DeviceState *dev, QemuConsole *src,
     }
 }
 
-static QemuInputHandler legacy_kbd_handler = {
+static const QemuInputHandler legacy_kbd_handler = {
     .name  = "legacy-kbd",
     .mask  = INPUT_EVENT_MASK_KEY,
     .event = legacy_kbd_event,
diff --git a/ui/input.c b/ui/input.c
index cbe8573c5c..dc745860f4 100644
--- a/ui/input.c
+++ b/ui/input.c
@@ -10,7 +10,7 @@
 
 struct QemuInputHandlerState {
     DeviceState       *dev;
-    QemuInputHandler  *handler;
+    const QemuInputHandler *handler;
     int               id;
     int               events;
     QemuConsole       *con;
@@ -46,7 +46,7 @@ static uint32_t queue_count;
 static uint32_t queue_limit = 1024;
 
 QemuInputHandlerState *qemu_input_handler_register(DeviceState *dev,
-                                                   QemuInputHandler *handler)
+                                            const QemuInputHandler *handler)
 {
     QemuInputHandlerState *s = g_new0(QemuInputHandlerState, 1);
     static int id = 1;
diff --git a/ui/vdagent.c b/ui/vdagent.c
index 00d36a8677..706d6d97bd 100644
--- a/ui/vdagent.c
+++ b/ui/vdagent.c
@@ -297,7 +297,7 @@ static void vdagent_pointer_sync(DeviceState *dev)
     }
 }
 
-static QemuInputHandler vdagent_mouse_handler = {
+static const QemuInputHandler vdagent_mouse_handler = {
     .name  = "vdagent mouse",
     .mask  = INPUT_EVENT_MASK_BTN | INPUT_EVENT_MASK_ABS,
     .event = vdagent_pointer_event,
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Thu Oct 19 21:42:09 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 21:42:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619588.964920 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtamI-0007O1-Ib; Thu, 19 Oct 2023 21:42:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619588.964920; Thu, 19 Oct 2023 21:42: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 1qtamI-0007Nu-Ej; Thu, 19 Oct 2023 21:42:02 +0000
Received: by outflank-mailman (input) for mailman id 619588;
 Thu, 19 Oct 2023 21:42: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=UmqE=GB=linaro.org=philmd@srs-se1.protection.inumbo.net>)
 id 1qtamH-0007No-DO
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 21:42:01 +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 555c6330-6ec8-11ee-98d5-6d05b1d4d9a1;
 Thu, 19 Oct 2023 23:42:00 +0200 (CEST)
Received: by mail-wm1-x32e.google.com with SMTP id
 5b1f17b1804b1-40838915cecso1113265e9.2
 for <xen-devel@lists.xenproject.org>; Thu, 19 Oct 2023 14:42:00 -0700 (PDT)
Received: from [192.168.69.115] (176-131-216-177.abo.bbox.fr.
 [176.131.216.177]) by smtp.gmail.com with ESMTPSA id
 n15-20020a7bcbcf000000b004060f0a0fdbsm5331241wmi.41.2023.10.19.14.41.57
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Thu, 19 Oct 2023 14:41: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: 555c6330-6ec8-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=linaro.org; s=google; t=1697751719; x=1698356519; 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=iJaGa6xJu/JHhh5O53jFh8ALYoJ2QIrqMEDbhV9uQG8=;
        b=NJcqELj9aT2UppnasP1kwejV2qyo7m13Sl4ltg/dwi5wCqfERtaSd7+PtoTC8xRRX4
         Cc1N5iY4wrH6W6wR1MJGe4zzE0j1bvT7dBi5Fd5YoyLrVvUl4Rz6L+O8ij22HDL6UsN3
         0U81jzIXpEgCLrIw95eEqq84vtmrdPqdSCdGKdHjzannrsISd9ZIAdo2r2hkukDi5Lth
         wmFfH4TqkY7EB0Hv/knqLSORAWn0bc32dLLqrVi/x89hokePtYxgFKCf64RgcPXyWhJl
         ISGBIekEPbXii9fOOuQC6uYSTz9HmreD3szImDd/5mbcnYlvMvys053MNaeM4dwIi36V
         t2lw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697751719; x=1698356519;
        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=iJaGa6xJu/JHhh5O53jFh8ALYoJ2QIrqMEDbhV9uQG8=;
        b=Cq4VWMAsAm5VwDPf4qScgOgJkRuGZga+LJ8dCDLpVW5SXyubpMu7d+Ar4bcHo1lnub
         XxqpVUXWEX5xkoizm2pDAdEumRKymQfAzApi+AJPqqHdx1+HV5NEOqVOAa3dG+KOaMiP
         3vptp/f4ix1RublXXOqNd7BtoUWn2nPr8K/9NzB7m2kE4JIXB5xz9rlipTv0WkDDUD7t
         ZQSa1ssz9Gd2acfPM/YJ3lVecNrl8w91V5G2MlTHOtf0h/HduWNNFQrF2REQw3COB93o
         PS9COvJHGZ8YdXWf6X/Jf3Q2gUkA5lcbG3vFTwmdzBm5CkHGQqoAgCFyHzHdEFkj4yCn
         Z+ng==
X-Gm-Message-State: AOJu0YzND37GiSolT3q2zaagueXXRT+XCpX7hSond/2znzukjPlxwQTY
	D+gbKeMV3zmNubBpHBo7r5KHdA==
X-Google-Smtp-Source: AGHT+IHEpSb8qMFYR/UNiwgXEvUWR6SZOmri7Z/lqFEqynWCIvvjYl1tIO0mfDodPRspcpTnTik5Bg==
X-Received: by 2002:a05:600c:1f83:b0:404:fc52:a3c6 with SMTP id je3-20020a05600c1f8300b00404fc52a3c6mr78062wmb.25.1697751719502;
        Thu, 19 Oct 2023 14:41:59 -0700 (PDT)
Message-ID: <1562189c-2aab-993d-2240-304cabe6f62a@linaro.org>
Date: Thu, 19 Oct 2023 23:41:56 +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] ui/input: Constify QemuInputHandler structure
Content-Language: en-US
To: qemu-devel@nongnu.org
Cc: "Michael S. Tsirkin" <mst@redhat.com>, xen-devel@lists.xenproject.org,
 Stefano Stabellini <sstabellini@kernel.org>, qemu-ppc@nongnu.org,
 Paul Durrant <paul@xen.org>, Paolo Bonzini <pbonzini@redhat.com>,
 Song Gao <gaosong@loongson.cn>, Gerd Hoffmann <kraxel@redhat.com>,
 Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>,
 Anthony Perard <anthony.perard@citrix.com>,
 =?UTF-8?Q?Marc-Andr=c3=a9_Lureau?= <marcandre.lureau@redhat.com>
References: <20231017131251.43708-1-philmd@linaro.org>
From: =?UTF-8?Q?Philippe_Mathieu-Daud=c3=a9?= <philmd@linaro.org>
In-Reply-To: <20231017131251.43708-1-philmd@linaro.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

On 17/10/23 15:12, Philippe Mathieu-Daudé wrote:
> Access to QemuInputHandlerState::handler are read-only.
> 
> Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
> ---
>   include/hw/virtio/virtio-input.h | 2 +-
>   include/ui/input.h               | 2 +-
>   chardev/msmouse.c                | 2 +-
>   chardev/wctablet.c               | 2 +-
>   hw/char/escc.c                   | 2 +-
>   hw/display/xenfb.c               | 6 +++---
>   hw/input/adb-kbd.c               | 2 +-
>   hw/input/hid.c                   | 6 +++---
>   hw/input/ps2.c                   | 4 ++--
>   hw/input/virtio-input-hid.c      | 8 ++++----
>   ui/input-legacy.c                | 2 +-
>   ui/input.c                       | 4 ++--
>   ui/vdagent.c                     | 2 +-
>   13 files changed, 22 insertions(+), 22 deletions(-)

Patch queued to hw-misc.


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 23:05:12 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 23:05:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619592.964929 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtc4X-0006zq-Ky; Thu, 19 Oct 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 619592.964929; Thu, 19 Oct 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 1qtc4X-0006zj-I8; Thu, 19 Oct 2023 23:04:57 +0000
Received: by outflank-mailman (input) for mailman id 619592;
 Thu, 19 Oct 2023 23:04: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 1qtc4V-0006zZ-Ox; Thu, 19 Oct 2023 23:04: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 1qtc4V-00077Y-Kp; Thu, 19 Oct 2023 23:04: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 1qtc4V-0000ws-7o; Thu, 19 Oct 2023 23:04:55 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qtc4V-0004Lv-7D; Thu, 19 Oct 2023 23:04: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=dB+Q0in+J7L/YjRu5yFNdEFvQdwCniPP2iEa1XWu/xs=; b=rMEi18U8JxgoL3349FA0XBAPOq
	7XIqUGMUF2c85GrDzLCjC5HyetBGoE+pXe37VkcwxtqK0scocssgxvvOIfK2G8Dm591b9ZzfblwiR
	6TKU2SsrDv4HDuKULrrI2mk7NIx7BjLR7tR1A6j4+Fgy6GiohSXHkN9ILG3CFvgPNvSw=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183430-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 183430: tolerable FAIL - PUSHED
X-Osstest-Failures:
    xen-unstable:test-amd64-i386-migrupgrade:xen-install/dst_host:fail:heisenbug
    xen-unstable:test-amd64-i386-migrupgrade:xen-install/src_host:fail:heisenbug
    xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:windows-install: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-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-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop: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-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1: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:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1: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-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-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-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-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:migrate-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-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:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=698b0f5031c6083401234a9b9415175cc5855a0a
X-Osstest-Versions-That:
    xen=7c3616e6f1aa541884410c6430e3c8986cf0973c
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 19 Oct 2023 23:04:55 +0000

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

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-amd64-i386-migrupgrade 11 xen-install/dst_host fail in 183437 pass in 183430
 test-amd64-i386-migrupgrade 10 xen-install/src_host fail pass in 183437-retest

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemuu-win7-amd64 12 windows-install       fail like 183421
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183424
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183424
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 183424
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183424
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183424
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183424
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 183424
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183424
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183424
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 183424
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 183424
 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-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  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          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-amd64-amd64-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-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-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-libvirt     15 migrate-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-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          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass

version targeted for testing:
 xen                  698b0f5031c6083401234a9b9415175cc5855a0a
baseline version:
 xen                  7c3616e6f1aa541884410c6430e3c8986cf0973c

Last test of basis   183424  2023-10-19 07:18:27 Z    0 days
Testing same since   183430  2023-10-19 14:38:43 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Jan Beulich <jbeulich@suse.com>
  Manuel Bouyer <bouyer@antioche.eu.org>
  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


Pushing revision :

To xenbits.xen.org:/home/xen/git/xen.git
   7c3616e6f1..698b0f5031  698b0f5031c6083401234a9b9415175cc5855a0a -> master


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 23:12:09 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 23:12:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619599.964948 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtcBR-0000OQ-ES; Thu, 19 Oct 2023 23:12:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619599.964948; Thu, 19 Oct 2023 23: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 1qtcBR-0000OJ-An; Thu, 19 Oct 2023 23:12:05 +0000
Received: by outflank-mailman (input) for mailman id 619599;
 Thu, 19 Oct 2023 23:12: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=/9Nj=GB=oracle.com=dongli.zhang@srs-se1.protection.inumbo.net>)
 id 1qtcBP-0000OD-DO
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 23:12:03 +0000
Received: from mx0b-00069f02.pphosted.com (mx0b-00069f02.pphosted.com
 [205.220.177.32]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id e73ed64b-6ed4-11ee-9b0e-b553b5be7939;
 Fri, 20 Oct 2023 01:11:59 +0200 (CEST)
Received: from pps.filterd (m0333520.ppops.net [127.0.0.1])
 by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id
 39JKuM29011378; Thu, 19 Oct 2023 23:11:21 GMT
Received: from phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com
 (phxpaimrmta03.appoci.oracle.com [138.1.37.129])
 by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3tubw805fk-1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK);
 Thu, 19 Oct 2023 23:11:20 +0000
Received: from pps.filterd
 (phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com [127.0.0.1])
 by phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com (8.17.1.19/8.17.1.19)
 with ESMTP id 39JKrjPw038476; Thu, 19 Oct 2023 23:11:19 GMT
Received: from nam12-dm6-obe.outbound.protection.outlook.com
 (mail-dm6nam12lp2168.outbound.protection.outlook.com [104.47.59.168])
 by phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com (PPS) with ESMTPS id
 3tubw442cx-1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK);
 Thu, 19 Oct 2023 23:11:19 +0000
Received: from BYAPR10MB2663.namprd10.prod.outlook.com (2603:10b6:a02:a9::20)
 by PH7PR10MB6227.namprd10.prod.outlook.com (2603:10b6:510:1f0::12)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.21; Thu, 19 Oct
 2023 23:11:16 +0000
Received: from BYAPR10MB2663.namprd10.prod.outlook.com
 ([fe80::8e27:f49:9cc3:b5af]) by BYAPR10MB2663.namprd10.prod.outlook.com
 ([fe80::8e27:f49:9cc3:b5af%7]) with mapi id 15.20.6907.022; Thu, 19 Oct 2023
 23:11: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: e73ed64b-6ed4-11ee-9b0e-b553b5be7939
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=YyLWm7+ksttNZT9eGXTE7n93fg0u9xw05R9EmbVYJqc=;
 b=3h9sBocv2OQ/MOlD35cX0vbMTcfL4dDvHgD+pDqlyNDQJ4RJOlOQ2MPm9q4UTUBZF5x3
 +sODgZVluAV2EwibIQ1U78hPO+wHmBhFFU2Qlw+egd2hDeB9U8P/aVEQKzaevo8xmHvU
 fMeG2IqzZcgCJv7K+lPU58YfD/1ZKJxKQ3rq+IdthMNQa+uFYjcsbjscwa4G2TqF7Hb5
 ivxoRSSV0x/IMY8UrUeTKxc5KLHK939Ras3Axx64PDUA0Bc1bZZd5sdAX5yId7eSP1t2
 lPAOY01PFRE7m0X5bwlVTZ/j7i/4pkqILgb+m6IF8OmQ7qa7qtoQzmBlttaupMi2bZrM sw== 
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=dx8XvH/CtWgQ7cYSpRY9SMMR/OPgMgFP/Up0uCtZb4IWP2DiGZPmR7MoVgqVsf2GPjQM+Sc0+rUBSnigBDMTQ6cE2896P/YLMNv+gL41ayZHKdfj2V+seqYf7FVE8AahHUNPzfhXUQrpapfxMxVHtiQhY4mAlvACizWxPFJIGmTTyfEtEVn8rzJMxcjfn6zy+3ug0R9yvFlc+U1gI0TOwtvD5a8erYXQweRkNc1iJEmqsuBrhtgKGsakj3mIO68iGg/kwjTjzvRs2C/lx3WHHr6CgeFrinWBP1qLLI6mgoSR6+jBLfyyp9F0ubnjhWiGS7u94YlzYcVc6zOfJWFgVA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=YyLWm7+ksttNZT9eGXTE7n93fg0u9xw05R9EmbVYJqc=;
 b=dJ4yVotII5jeJAqph8aaWZsCXUERoGLOizpxcuIHolBovuXMtSdfQEKJX1veWQQ4uj3h3GRENncAqWw7Shv32d5vp21TeYOpMZ1XzPYOGu1PbjBcL0TZt77KObbgf7QdprszTAlDco6aYlvGJV0Zg+8cOYclD/OsZ/QgAtB2HluANDd87XxTH1exygdZk/H/hyYTj3RYy55jgVks2ZSL9wmSxX6mdfqahIjksB6L49EHXBIWrMx+yCR2pcgmHsM8B8sugIrQ3KsiD1Qe+8R/otPNrH/3IbbjJZEcmFboY7AW46EChl48lSHv1rTkFn4s9BQPSg4wX/e1YE8b9pbBrA==
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=YyLWm7+ksttNZT9eGXTE7n93fg0u9xw05R9EmbVYJqc=;
 b=o5tcbcgybRJFflfL1HW7bbK7SFEQ5xAJdCQgUod94kVjOVS9Zr23gUPDSgKn/HHamIahfExnBTR8TPcGtB0dS3hmasSX0C2enWMhGCR4khLa4ExpKJRC689Ab2E2eV/L9JK6yGPj5ZmEz/lPs4z3+SXBDpH5cSA1h2v86lDAwus=
Message-ID: <06e0a926-d6ad-8266-6571-583292365eea@oracle.com>
Date: Thu, 19 Oct 2023 16:11:12 -0700
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH RFC 1/1] x86/paravirt: introduce param to disable pv
 sched_clock
To: Sean Christopherson <seanjc@google.com>,
        Vitaly Kuznetsov <vkuznets@redhat.com>, dwmw2@infradead.org
Cc: x86@kernel.org, virtualization@lists.linux-foundation.org,
        kvm@vger.kernel.org, pv-drivers@vmware.com,
        xen-devel@lists.xenproject.org, linux-hyperv@vger.kernel.org,
        jgross@suse.com, akaher@vmware.com, amakhalov@vmware.com,
        tglx@linutronix.de, mingo@redhat.com, bp@alien8.de,
        dave.hansen@linux.intel.com, hpa@zytor.com, pbonzini@redhat.com,
        wanpengli@tencent.com, peterz@infradead.org, joe.jin@oracle.com,
        boris.ostrovsky@oracle.com, linux-kernel@vger.kernel.org
References: <20231018221123.136403-1-dongli.zhang@oracle.com>
 <87ttqm6d3f.fsf@redhat.com> <ZTFOCqMCuSiH8VEt@google.com>
Content-Language: en-US
From: Dongli Zhang <dongli.zhang@oracle.com>
In-Reply-To: <ZTFOCqMCuSiH8VEt@google.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: SN7PR04CA0155.namprd04.prod.outlook.com
 (2603:10b6:806:125::10) To BYAPR10MB2663.namprd10.prod.outlook.com
 (2603:10b6:a02:a9::20)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: BYAPR10MB2663:EE_|PH7PR10MB6227:EE_
X-MS-Office365-Filtering-Correlation-Id: 09ef3f3d-7b06-458f-f09b-08dbd0f8b262
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: 
	sRoPlkI9sDJ+B+diJdJvw8SbWdofSMvL3N0DeJOacHd4KCxNChGLjG8eAQpCLgLuBMavFUfY86MzyTtuOtL1Gcqpn3Gg2wWeHER1aI8gDCcNkjtqIOKP0zBWGtyss9ocoghRmXfOvpT9rr6H8271MQCRh0pwwIM0TwiDTGRbVkJs+/0ekAUgQmYCFOFh6FfqmPWraUtNd4O3B9kPIhh7FRBbMaoz3+sZj+BEDxC97nn35NfOK3Wary56LSqbVFi2+SFl5Oi3u70uRDpI4MtatWiBjGZLH4dTU7GauP4AP5pJG+y2njAImV7YZcF1m+yEKhHrN0zcrVZlUpF+uhMOAvhcmZqb6IEPNkeHFQx+g3ye2EL9vNS5m+RZtJN/D1ULMuc7n9dSwSwygbKqeJGY97+61q7KlPVtS9PyeOyZigervhYaDTyFi+xxgyNfJ30/yuTOJAbCXkOfOqCo9myB9fj+U1RY/7MguT5SQKpNrO81DaAfgjVG8/UCYn1NDdvXH6/DssXXbTlWK5msaDoKx1B1BTXlu82I+NnF2jCuCQ7ZIgEp3q+fJqvGv8Y98Q63bjBQOY1OG6Sag3M4Y1guJmV3QBN/Z3TGm4e9zh8+OfubgxjdMPVi3r0m70GOE+AJ7YtrJPJJ2iRB/fQE1ZyyKQLRahZPai2ydm56u32j1KC7rKZfxspTiLthY2baQHpc
X-Forefront-Antispam-Report: 
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR10MB2663.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376002)(396003)(39860400002)(346002)(136003)(366004)(230922051799003)(1800799009)(64100799003)(186009)(451199024)(53546011)(6512007)(26005)(83380400001)(6506007)(31686004)(2616005)(6666004)(966005)(8676002)(6486002)(4326008)(316002)(41300700001)(5660300002)(31696002)(30864003)(38100700002)(36756003)(8936002)(2906002)(86362001)(44832011)(478600001)(110136005)(7416002)(66476007)(66556008)(66946007)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0: 
	=?utf-8?B?MFAxNGN4NEc1SlRuUXdUNkdKVWpnbnhwNTl5VnI3emcvQk5kaVliazVuTTFs?=
 =?utf-8?B?SWUzb05zSGVJZmRjRXFPN1Rpc25lNGJsZFVUdFQ5OE55aTRjNC9TT08rOWQ4?=
 =?utf-8?B?R25pZk9QT2NUby93ck5RTS8rbTVBWEIra1V4SUdaVXV2UVloZmpFSThkbTIv?=
 =?utf-8?B?K3MrUW9CRVNPUTRhaTg1RmdqTHRJOHUwOThyeHhCSHlBOFBnb1lMZnNwWjZH?=
 =?utf-8?B?bXR5UmJSM3c2cUx5blFMUVFXcUE0QkVWY3ZrZU9zSFRjRXpMeUc3eFl3Z3dZ?=
 =?utf-8?B?WEh3UjByakhFZDB0MU5rNHRodWo4YTNsMFZ2aUhwUlhFL0lUNVN2QzYySXA1?=
 =?utf-8?B?Y0JUVG1lNytrUUVTYlZ5N0t0QkQrOW5HZENtOVdsczN2ODNzM3NPeEJDdit4?=
 =?utf-8?B?UVRiNTIzRmJMYzR6RHRPSmYyb2FVWktwY3ZnWmpMOEx5NXFOQkF6TVdPMExH?=
 =?utf-8?B?aHQ1bGQ0bGlMMVhtb2t1SCtrdFQra3dHcGhhU3BEK1VjZ3JBNHpteXBCbHBx?=
 =?utf-8?B?Q1FmZXE2b1o1M0J0WXFYZFVkZ2ZMTW9SMTFwL0srUUJRaDhWQTRMUkx0WThX?=
 =?utf-8?B?V0FCQXEzeTdKcXQ3WTJIVGdORUQzSktPcVVGK1FIQU1udGx5WnRDM2ZvSEV4?=
 =?utf-8?B?T1E5bVhYNlpzSVhnU3VNK3J6cFQyaWxiVHgvWTROU1hiempCVWhybE1FQ0dj?=
 =?utf-8?B?NGJCOHpmREh6c2V1cHJyaGhnZDM4Tk9HVkk2Q2ZpVDQ4b01Hb3NjRTh5VGd2?=
 =?utf-8?B?QzNCQTdnSVZiSndXOFRKVFlHWHIrYUxsVXN5M0dtVzF6c0Z5MnZTZlE3SzMr?=
 =?utf-8?B?QXlrbnMyTzFMUnE0OUZWNlJRTlVaYmUrSjF0a3NqNWRFY3ZaS2NsRDhHMlZy?=
 =?utf-8?B?MEpwcTdoMmZ4cm5GZ3JZRmtHSXpSK1B3VmRIa0JtRlFRd0NkbkJ5bnIvbzRa?=
 =?utf-8?B?YjJQZmpJTGVvT2kveUpGd2psU2lOVzVRc1hlZS9TdXliN2sya2Uzd1cvM0pa?=
 =?utf-8?B?c0luaUtTYmhUZDY1OVM3KzhVNmo1K2IyZ1RiMmRiQThkWGgzVmtUS05EdEZi?=
 =?utf-8?B?UnpoUGxTckZYSnN1QlpoeWRSdFY2Sk9UaHBXbGhhTkRvNGFacG5SM0FhYzNr?=
 =?utf-8?B?Tng1N2lneWtEVU5VWFJLSjcrbHR0dEUzNU1OMTJRQTBkN2lnRGFwdWhKV1ZY?=
 =?utf-8?B?N1ZSVE1NZEdIY1ZNR3UxTkkrZlVkUnU0elRnaGMvZ0ZwNGg2SjloeGVkVHNC?=
 =?utf-8?B?a3NvWFNrY1pmUHE5bVcwVzkrcGNXa3d4UThKc0pQNytQZXU3UHFSMktiZGNY?=
 =?utf-8?B?UWE4clZyOUY1YmZFQkRmK0dpTFNlZU5JWXdaZDgxUUsxZFN2Y2JPbFNMUTNn?=
 =?utf-8?B?ek9KbU5IR3J6RDV6T2xaT285WjRCVUx1QU5LdGRBZElyTmxNQS9GbGRqWFZ1?=
 =?utf-8?B?eFM0eDVLZ2cydXpLZWdIQW9QclZIYzRpSlRZTTUvcmdXV2gwQWZUZGtMRyts?=
 =?utf-8?B?Ny96UnY3TCtLaXVvQXRXcElSWFJpMXNqYU1xVVh1Qlo4NHpnRlNXUU9tZWFk?=
 =?utf-8?B?SFRhT0VGandvOXRqSjFKeUdZaEo0SmZLb2p1enBobGVObk5lVlJJZzZTNlhw?=
 =?utf-8?B?TFBDb2NPVmRkTUVhSXFvZHBoZVB1QUNoMUZaY2ZaYmhlRzBzUEV3Y2dnSFNr?=
 =?utf-8?B?UkFEQk5nRFRzdEg3SEd3cFNOZWQ1VkZvUG9USWVsVkYydHpRU2duMHhwRUtM?=
 =?utf-8?B?bzVreDJaUjZGTnZRR0tiMFpmMmxCdVR4eHhPTXJwUjBMakRMNWN0bDhUMTFF?=
 =?utf-8?B?eitqM0VVT1lnRHhDN3lEejJvUEJkQ0M3NjZuRjRKN0xkUW5uaXhMYWF6S1dX?=
 =?utf-8?B?Zmw3RHBVV0p6dmtVWGFnTGQxOFBnZG4vK256bGgxbTlwMCsxSGZYZnNyNTdO?=
 =?utf-8?B?VE5zSlo2dVRuMkhSQXUyNUxQcUkrWU5oSnQvdlRpYjZ2NTA2SXM1ZW0rOFhu?=
 =?utf-8?B?RXVvbUg1MWpwck1mTHVmT0JiaWtnbTR0S2J6bjBVa0hHTG5icjM4VzJaNWpG?=
 =?utf-8?B?Tm1Rc1dNVEplRmM3b2t4eWIyVEhlcUYvVUdjZWNSb2wxMFdyZ1hscHEybDFH?=
 =?utf-8?Q?epjmqEDlhuVwzVejutfr+Ml6T?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: 
	=?utf-8?B?OFVBWVJDeVk5WTYrWjRaMVZxY1FaN0hDajNlWjVWSC8vOXZGV0hqWm5iSHdW?=
 =?utf-8?B?RzdUckd0a3pOWEk5ZU5qdUR3WXZkc0xDZmFOUXVkUFNyVGhNM2xBclZQS1Mv?=
 =?utf-8?B?QmY5TnQram1OdGZVbk41cEhaaHlmNmdxWER6UFVpeHgzQ0dlZlFBY2hhWGdE?=
 =?utf-8?B?WVI1cHhYcHZKSmtLZDl3NTNjZGI0NVQ4cFJGQlJTbm03QjNQZnEwaCtPdWhp?=
 =?utf-8?B?ZzdOcS9KVFFqcWlobUlyYnJlN1ozWHZKc1FDbkNsdnR4aUcxVmRNNFZPajdh?=
 =?utf-8?B?ejRQUExqY2R2VEVvUjdnRnZrc1hDNnRaVWxFRkNRbVcreGJTbEpHRm5Ea01E?=
 =?utf-8?B?N0JiWWsrMmZ1RmxMT1QrUWtiZnZQT2R6Z0NLb0doVEpveUZkOUJIYml3eWxY?=
 =?utf-8?B?aWxmQlVBQ0ZXbms3Vm9iRHhGczRvMXBhREJaelowTzlZcVpCWEZFdmo1ajZY?=
 =?utf-8?B?OXFSSDBYNTIvV01BbWxQUWNzK3cvVDc5dzRPRFgxeGJnTFUzeEdmK0NScStz?=
 =?utf-8?B?WU1ETG1iakJoMXZOaG5ZZlRVaDBsQXk3ckFlVTUyMWlwbExJQXF6NWlrS1lR?=
 =?utf-8?B?bmZZc0JNZDczTnJrNzNnd1VsMDBJeE5udERkUUFBK3l1akEzZ0lWNytQSm9T?=
 =?utf-8?B?WDUwZm0wRnpRMHl4ZVVPVFVsdEpiQUFBeHU1WndyTDZTNUlucEh6NzIwa1dm?=
 =?utf-8?B?bDNpQ2Ntdk5jeDJHWW1jZjNxS0VmNnNhMFU3MytRQjJxd0hrQytqejJ1MWxF?=
 =?utf-8?B?c2FQek04YmJIUFRWelVHUitwM3JzbHpkMGZDdVRLSUZpUnMvTFVtb1NOZzdF?=
 =?utf-8?B?YmVDc05oUnZvSXkrTGR1ZXJhR0hjYXduYWI0WEdDOHlvTm1TZjJNZ3NOeDRV?=
 =?utf-8?B?bTRJZEdUdnNlQ3ZDQkIrZnpRTnZQZU1iSFMvKzJ2NmFmR2plMEc5WXpDZUxG?=
 =?utf-8?B?VVB1RVRBZUQvYm9RakNqYllUYVFyVnhlbTRrR00zbHdIaUFvWGNhSkpDbW9H?=
 =?utf-8?B?YUs4WlpnRUUvWmNxV2JZVUNtVzkwVEZIY2VQMGMxVmppU05kRER5QTBROVpq?=
 =?utf-8?B?bHZMUlZKcVNjMU9ZSFpxSDdiemROUVYyb2hHOVhwR1QyVzlyMnpJZUNkTm12?=
 =?utf-8?B?dEFuS3hKd1UwNkNpbjVScmd6NEFHUTNPZHIzOXRqOGF4bktCMzczdy82eVFH?=
 =?utf-8?B?U3NHVTZ2emxOS2ZLZ1ZMMGF2M2V3MWhVN01QZWUzVWVIZWRIa295dVNWL1E4?=
 =?utf-8?B?NENSWXhoNFp3d1dCWmVOOHc4byswVjM5b01PcStaa2dkaTJrUy84amRNUnBy?=
 =?utf-8?B?OW95alpnSEZrNGhLMml0SEFoUEtoN1NKWk5QM3JyS1A4TllCNVBxQVpicERO?=
 =?utf-8?B?ZTRzQTNNUEJTem84UWNKc3F1THN1N2k5cHRnWWNqQUlyUlRYUmI3L3VCY0VP?=
 =?utf-8?B?dEtGTnErRHJ1Wk1ZMWx3VnExdXc3emI3dENlUWxRME5mZjNOS1dnS09rNlhh?=
 =?utf-8?B?eGhESUkvS1JocDNmemxIVWhsTlVXbjE4T3RCV0dBTmNEZnVuR1NacEZUbmVC?=
 =?utf-8?B?NnVPRzVNYjN3ODliM1FPRFBDYTZMYzFQTEloeXVXRXJwSWt4N0pnVEZRNyti?=
 =?utf-8?Q?UWfUQsxJRX9QwbkAifkZUHFjKs1MiZVqyv8DqNHKmiCA=3D?=
X-OriginatorOrg: oracle.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 09ef3f3d-7b06-458f-f09b-08dbd0f8b262
X-MS-Exchange-CrossTenant-AuthSource: BYAPR10MB2663.namprd10.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Oct 2023 23:11:16.7882
 (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: rf4mqG4yu5PMPgABze0N2o/rbEu73PeUhrxQ7Tf7K3FVofd0EDWpgYjXGCMLBO7Kulnp6/MKBbvfMX23drSNDA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7PR10MB6227
X-Proofpoint-Virus-Version: vendor=baseguard
 engine=ICAP:2.0.272,Aquarius:18.0.980,Hydra:6.0.619,FMLib:17.11.176.26
 definitions=2023-10-19_21,2023-10-19_01,2023-05-22_02
X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 adultscore=0 suspectscore=0
 mlxlogscore=999 phishscore=0 spamscore=0 mlxscore=0 bulkscore=0
 malwarescore=0 classifier=spam adjust=0 reason=mlx scancount=1
 engine=8.12.0-2310170001 definitions=main-2310190196
X-Proofpoint-GUID: hjhkdoqT-Mz3-hmy0gVYF3kfu7GxJ53W
X-Proofpoint-ORIG-GUID: hjhkdoqT-Mz3-hmy0gVYF3kfu7GxJ53W

Hi Vitaly, Sean and David,

On 10/19/23 08:40, Sean Christopherson wrote:
> On Thu, Oct 19, 2023, Vitaly Kuznetsov wrote:
>> Dongli Zhang <dongli.zhang@oracle.com> writes:
>>
>>> As mentioned in the linux kernel development document, "sched_clock() is
>>> used for scheduling and timestamping". While there is a default native
>>> implementation, many paravirtualizations have their own implementations.
>>>
>>> About KVM, it uses kvm_sched_clock_read() and there is no way to only
>>> disable KVM's sched_clock. The "no-kvmclock" may disable all
>>> paravirtualized kvmclock features.
> 
> ...
> 
>>> Please suggest and comment if other options are better:
>>>
>>> 1. Global param (this RFC patch).
>>>
>>> 2. The kvmclock specific param (e.g., "no-vmw-sched-clock" in vmware).
>>>
>>> Indeed I like the 2nd method.
>>>
>>> 3. Enforce native sched_clock only when TSC is invariant (hyper-v method).
>>>
>>> 4. Remove and cleanup pv sched_clock, and always use pv_sched_clock() for
>>> all (suggested by Peter Zijlstra in [3]). Some paravirtualizations may
>>> want to keep the pv sched_clock.
>>
>> Normally, it should be up to the hypervisor to tell the guest which
>> clock to use, i.e. if TSC is reliable or not. Let me put my question
>> this way: if TSC on the particular host is good for everything, why
>> does the hypervisor advertises 'kvmclock' to its guests?
> 
> I suspect there are two reasons.
> 
>   1. As is likely the case in our fleet, no one revisited the set of advertised
>      PV features when defining the VM shapes for a new generation of hardware, or
>      whoever did the reviews wasn't aware that advertising kvmclock is actually
>      suboptimal.  All the PV clock stuff in KVM is quite labyrinthian, so it's
>      not hard to imagine it getting overlooked.
> 
>   2. Legacy VMs.  If VMs have been running with a PV clock for years, forcing
>      them to switch to a new clocksource is high-risk, low-reward.
> 
>> If for some 'historical reasons' we can't revoke features we can always
>> introduce a new PV feature bit saying that TSC is preferred.
>>
>> 1) Global param doesn't sound like a good idea to me: chances are that
>> people will be setting it on their guest images to workaround problems
>> on one hypervisor (or, rather, on one public cloud which is too lazy to
>> fix their hypervisor) while simultaneously creating problems on another.
>>
>> 2) KVM specific parameter can work, but as KVM's sched_clock is the same
>> as kvmclock, I'm not convinced it actually makes sense to separate the
>> two. Like if sched_clock is known to be bad but TSC is good, why do we
>> need to use PV clock at all? Having a parameter for debugging purposes
>> may be OK though...
>>
>> 3) This is Hyper-V specific, you can see that it uses a dedicated PV bit
>> (HV_ACCESS_TSC_INVARIANT) and not the architectural
>> CPUID.80000007H:EDX[8]. I'm not sure we can blindly trust the later on
>> all hypervisors.
>>
>> 4) Personally, I'm not sure that relying on 'TSC is crap' detection is
>> 100% reliable. I can imagine cases when we can't detect that fact that
>> while synchronized across CPUs and not going backwards, it is, for
>> example, ticking with an unstable frequency and PV sched clock is
>> supposed to give the right correction (all of them are rdtsc() based
>> anyways, aren't they?).
> 
> Yeah, practically speaking, the only thing adding a knob to turn off using PV
> clocks for sched_clock will accomplish is creating an even bigger matrix of
> combinations that can cause problems, e.g. where guests end up using kvmclock
> timekeeping but not scheduling.
> 
> The explanation above and the links below fail to capture _the_ key point:
> Linux-as-a-guest already prioritizes the TSC over paravirt clocks as the clocksource
> when the TSC is constant and nonstop (first spliced blob below).
> 
> What I suggested is that if the TSC is chosen over a PV clock as the clocksource,
> then we have the kernel also override the sched_clock selection (second spliced
> blob below).
> 
> That doesn't require the guest admin to opt-in, and doesn't create even more
> combinations to support.  It also provides for a smoother transition for when
> customers inevitably end up creating VMs on hosts that don't advertise kvmclock
> (or any PV clock).

I would prefer to always leave the option to allow the guest admin to change the
decision, especially for diagnostic/workaround reason (although the kvmclock is
always buggy when tsc is buggy).


As a summary of discussion:

1. Vitaly Kuznetsov prefers global param, e.g., for the easy deployment of the
same guest image on different hypervisors.

2. Sean Christopherson prefers an automatic change of sched_clock when
clocksource is or not TSC.


However, the clocksource and TSC are different concepts.

1. The clocksource is an arch global concept. That is, all archs (e.g., x86,
arm, mips) share the same implementation to register/select clocksource. In
additon, something like HPET does not have sched_clock.

2. Some architecture has its own sched_clock implementation. E.g., x86 has its
own sched_clock implementation in arch/x86/kernel/tsc.c.

309 notrace u64 sched_clock(void)
310 {
311         u64 now;
312         preempt_disable_notrace();
313         now = sched_clock_noinstr();
314         preempt_enable_notrace();
315         return now;
316 }

3. When !CONFIG_PARAVIRT, it is native_sched_clock().

4. When CONFIG_PARAVIRT, it is sched_clock_noinstr()->paravirt_sched_clock()
referring to paravirt specific implementation (native/kvm/xen/vmware/hyperv).

That is, the pv sched_clock is a concept under x86 when CONFIG_PARAVIRT==true.


Although the implementation is possible, I just do not like the idea to change
some arch global code, to accommodate some requirement as a leaf of the tree.


How about to keep the change at x86 as in below? It won't work unless I change
'tsc_clocksource_reliable' to an early_param.

---
 arch/x86/include/asm/paravirt.h |  2 +-
 arch/x86/kernel/kvmclock.c      | 12 +++++++-----
 arch/x86/kernel/paravirt.c      | 16 +++++++++++++++-
 3 files changed, 23 insertions(+), 7 deletions(-)

diff --git a/arch/x86/include/asm/paravirt.h b/arch/x86/include/asm/paravirt.h
index 6c8ff12..118b793 100644
--- a/arch/x86/include/asm/paravirt.h
+++ b/arch/x86/include/asm/paravirt.h
@@ -24,7 +24,7 @@
 DECLARE_STATIC_CALL(pv_steal_clock, dummy_steal_clock);
 DECLARE_STATIC_CALL(pv_sched_clock, dummy_sched_clock);

-void paravirt_set_sched_clock(u64 (*func)(void));
+bool paravirt_set_sched_clock(u64 (*func)(void));

 static __always_inline u64 paravirt_sched_clock(void)
 {
diff --git a/arch/x86/kernel/kvmclock.c b/arch/x86/kernel/kvmclock.c
index fb8f5214..0b8bf56 100644
--- a/arch/x86/kernel/kvmclock.c
+++ b/arch/x86/kernel/kvmclock.c
@@ -93,13 +93,15 @@ static noinstr u64 kvm_sched_clock_read(void)

 static inline void kvm_sched_clock_init(bool stable)
 {
-	if (!stable)
-		clear_sched_clock_stable();
 	kvm_sched_clock_offset = kvm_clock_read();
-	paravirt_set_sched_clock(kvm_sched_clock_read);

-	pr_info("kvm-clock: using sched offset of %llu cycles",
-		kvm_sched_clock_offset);
+	if (!paravirt_set_sched_clock(kvm_sched_clock_read)) {
+		if (!stable)
+			clear_sched_clock_stable();
+
+		pr_info("kvm-clock: using sched offset of %llu cycles",
+			kvm_sched_clock_offset);
+	}

 	BUILD_BUG_ON(sizeof(kvm_sched_clock_offset) >
 		sizeof(((struct pvclock_vcpu_time_info *)NULL)->system_time));
diff --git a/arch/x86/kernel/paravirt.c b/arch/x86/kernel/paravirt.c
index 97f1436..f8ad521 100644
--- a/arch/x86/kernel/paravirt.c
+++ b/arch/x86/kernel/paravirt.c
@@ -118,9 +118,23 @@ static u64 native_steal_clock(int cpu)
 DEFINE_STATIC_CALL(pv_steal_clock, native_steal_clock);
 DEFINE_STATIC_CALL(pv_sched_clock, native_sched_clock);

-void paravirt_set_sched_clock(u64 (*func)(void))
+bool paravirt_set_sched_clock(u64 (*func)(void))
 {
+	if (tsc_clocksource_reliable)
+		goto refuse;
+
+	if (boot_cpu_has(X86_FEATURE_CONSTANT_TSC) &&
+	    boot_cpu_has(X86_FEATURE_NONSTOP_TSC) &&
+	    !check_tsc_unstable())
+		goto refuse;
+
 	static_call_update(pv_sched_clock, func);
+
+	return 0;
+
+refuse:
+	pr_info("sched_clock: use native when TSC is reliable");
+	return -EPERM;
 }

 /* These are in entry.S */



Indeed my favorite is to keep within kvmclock.
(This won't work until I turn 'tsc_clocksource_reliable' into early_param).

diff --git a/arch/x86/kernel/kvmclock.c b/arch/x86/kernel/kvmclock.c
index fb8f5214..f16655d 100644
--- a/arch/x86/kernel/kvmclock.c
+++ b/arch/x86/kernel/kvmclock.c
@@ -286,6 +286,7 @@ static int kvmclock_setup_percpu(unsigned int cpu)

 void __init kvmclock_init(void)
 {
+       bool prefer_tsc;
        u8 flags;

        if (!kvm_para_available() || !kvmclock)
@@ -313,19 +314,8 @@ void __init kvmclock_init(void)
        if (kvm_para_has_feature(KVM_FEATURE_CLOCKSOURCE_STABLE_BIT))
                pvclock_set_flags(PVCLOCK_TSC_STABLE_BIT);

-       flags = pvclock_read_flags(&hv_clock_boot[0].pvti);
-       kvm_sched_clock_init(flags & PVCLOCK_TSC_STABLE_BIT);
-
-       x86_platform.calibrate_tsc = kvm_get_tsc_khz;
-       x86_platform.calibrate_cpu = kvm_get_tsc_khz;
-       x86_platform.get_wallclock = kvm_get_wallclock;
-       x86_platform.set_wallclock = kvm_set_wallclock;
-#ifdef CONFIG_X86_LOCAL_APIC
-       x86_cpuinit.early_percpu_clock_init = kvm_setup_secondary_clock;
-#endif
-       x86_platform.save_sched_clock_state = kvm_save_sched_clock_state;
-       x86_platform.restore_sched_clock_state = kvm_restore_sched_clock_state;
-       kvm_get_preset_lpj();
+       if (tsc_clocksource_reliable)
+               prefer_tsc = true;

        /*
         * X86_FEATURE_NONSTOP_TSC is TSC runs at constant rate
@@ -334,10 +324,31 @@ void __init kvmclock_init(void)
         * Invariant TSC exposed by host means kvmclock is not necessary:
         * can use TSC as clocksource.
         *
+        * The TSC is used also when tsc_clocksource_reliable is configured
+        * in kernel command line on purpose.
         */
        if (boot_cpu_has(X86_FEATURE_CONSTANT_TSC) &&
            boot_cpu_has(X86_FEATURE_NONSTOP_TSC) &&
            !check_tsc_unstable())
+               prefer_tsc = true;
+
+       if (!prefer_tsc) {
+               flags = pvclock_read_flags(&hv_clock_boot[0].pvti);
+               kvm_sched_clock_init(flags & PVCLOCK_TSC_STABLE_BIT);
+       }
+
+       x86_platform.calibrate_tsc = kvm_get_tsc_khz;
+       x86_platform.calibrate_cpu = kvm_get_tsc_khz;
+       x86_platform.get_wallclock = kvm_get_wallclock;
+       x86_platform.set_wallclock = kvm_set_wallclock;
+#ifdef CONFIG_X86_LOCAL_APIC
+       x86_cpuinit.early_percpu_clock_init = kvm_setup_secondary_clock;
+#endif
+       x86_platform.save_sched_clock_state = kvm_save_sched_clock_state;
+       x86_platform.restore_sched_clock_state = kvm_restore_sched_clock_state;
+       kvm_get_preset_lpj();
+
+       if (prefer_tsc)
                kvm_clock.rating = 299;

        clocksource_register_hz(&kvm_clock, NSEC_PER_SEC);


Thank you very much!

Dongli Zhang

> 
>>> To introduce a param may be easier to backport to old kernel version.
>>>
>>> References:
>>> [1] https://urldefense.com/v3/__https://lore.kernel.org/all/20230926230649.67852-1-dongli.zhang@oracle.com/__;!!ACWV5N9M2RV99hQ!Omk8Q6d8PW-UcKNdCRAeA8qSb698y3Eier2hro5vporwTCHqHSmYYk8fCinciVOHUG40CK4GQpHsjNlDiQ$ 
>>> [2] https://urldefense.com/v3/__https://lore.kernel.org/all/20231018195638.1898375-1-seanjc@google.com/__;!!ACWV5N9M2RV99hQ!Omk8Q6d8PW-UcKNdCRAeA8qSb698y3Eier2hro5vporwTCHqHSmYYk8fCinciVOHUG40CK4GQpHh5avzQg$ 
>>> [3] https://urldefense.com/v3/__https://lore.kernel.org/all/20231002211651.GA3774@noisy.programming.kicks-ass.net/__;!!ACWV5N9M2RV99hQ!Omk8Q6d8PW-UcKNdCRAeA8qSb698y3Eier2hro5vporwTCHqHSmYYk8fCinciVOHUG40CK4GQpH74It6kQ$ 
> 
> On Mon, Oct 2, 2023 at 11:18 AM Sean Christopherson <seanjc@google.com> wrote:
>>> Do we need to update the documentation to always suggest TSC when it is
>>> constant, as I believe many users still prefer pv clock than tsc?
>>>
>>> Thanks to tsc ratio scaling, the live migration will not impact tsc.
>>>
>>> >From the source code, the rating of kvm-clock is still higher than tsc.
>>>
>>> BTW., how about to decrease the rating if guest detects constant tsc?
>>>
>>> 166 struct clocksource kvm_clock = {
>>> 167         .name   = "kvm-clock",
>>> 168         .read   = kvm_clock_get_cycles,
>>> 169         .rating = 400,
>>> 170         .mask   = CLOCKSOURCE_MASK(64),
>>> 171         .flags  = CLOCK_SOURCE_IS_CONTINUOUS,
>>> 172         .enable = kvm_cs_enable,
>>> 173 };
>>>
>>> 1196 static struct clocksource clocksource_tsc = {
>>> 1197         .name                   = "tsc",
>>> 1198         .rating                 = 300,
>>> 1199         .read                   = read_tsc,
>>
>> That's already done in kvmclock_init().
>>
>>         if (boot_cpu_has(X86_FEATURE_CONSTANT_TSC) &&
>>             boot_cpu_has(X86_FEATURE_NONSTOP_TSC) &&
>>             !check_tsc_unstable())
>>                 kvm_clock.rating = 299;
>>
>> See also: https://urldefense.com/v3/__https://lore.kernel.org/all/ZOjF2DMBgW*2FzVvL3@google.com__;JQ!!ACWV5N9M2RV99hQ!Omk8Q6d8PW-UcKNdCRAeA8qSb698y3Eier2hro5vporwTCHqHSmYYk8fCinciVOHUG40CK4GQpFjD9PZNg$ 
>>
>>> 2. The sched_clock.
>>>
>>> The scheduling is impacted if there is big drift.
>>
>> ...
>>
>>> Unfortunately, the "no-kvmclock" kernel parameter disables all pv clock
>>> operations (not only sched_clock), e.g., after line 300.
>>
>> ...
>>
>>> Should I introduce a new param to disable no-kvm-sched-clock only, or to
>>> introduce a new param to allow the selection of sched_clock?
>>
>> I don't think we want a KVM-specific knob, because every flavor of paravirt guest
>> would need to do the same thing.  And unless there's a good reason to use a
>> paravirt clock, this really shouldn't be something the guest admin needs to opt
>> into using.
> 
> 
> On Mon, Oct 2, 2023 at 2:06 PM Peter Zijlstra <peterz@infradead.org> wrote:
>>
>> On Mon, Oct 02, 2023 at 11:18:50AM -0700, Sean Christopherson wrote:
>>> Assuming the desirable thing to do is to use native_sched_clock() in this
>>> scenario, do we need a separate rating system, or can we simply tie the
>>> sched clock selection to the clocksource selection, e.g. override the
>>> paravirt stuff if the TSC clock has higher priority and is chosen?
>>
>> Yeah, I see no point of another rating system. Just force the thing back
>> to native (or don't set it to that other thing).


From xen-devel-bounces@lists.xenproject.org Thu Oct 19 23:48:17 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 19 Oct 2023 23:48:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619603.964957 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtckK-0006vD-7I; Thu, 19 Oct 2023 23:48:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619603.964957; Thu, 19 Oct 2023 23:48: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 1qtckK-0006v6-4W; Thu, 19 Oct 2023 23:48:08 +0000
Received: by outflank-mailman (input) for mailman id 619603;
 Thu, 19 Oct 2023 23:48: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=7/TV=GB=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qtckJ-0006v0-5l
 for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 23:48:07 +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 f1fa6414-6ed9-11ee-9b0e-b553b5be7939;
 Fri, 20 Oct 2023 01:48:05 +0200 (CEST)
Received: by mail-lj1-x232.google.com with SMTP id
 38308e7fff4ca-2b9c907bc68so3123731fa.2
 for <xen-devel@lists.xenproject.org>; Thu, 19 Oct 2023 16:48:05 -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
 p10-20020a05600c05ca00b004083729fc14sm5432068wmd.20.2023.10.19.16.48.03
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Thu, 19 Oct 2023 16:48: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: f1fa6414-6ed9-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1697759284; x=1698364084; darn=lists.xenproject.org;
        h=content-transfer-encoding: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=lsnXKjOkzP9wpLrWtaLiQnxMJDYEcsa5u2Q8tCbvO2U=;
        b=Um2qmeuQ/gPfIvQnrc8DBHdvPTh5hnhMlrnjbb/rIIDQvrlkIN8IFHb+/qwRc1pRwT
         US4hQHiYSJVjkvoJsmdEaw1I4t2iWdgZDqTRiP6AlHDr2yJD7b0+nxz2WfAtRiv3K6FA
         CyBTLuXq+9nMxSCTNcP5auwCJJ7yTz2y59Uic=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697759284; x=1698364084;
        h=content-transfer-encoding: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=lsnXKjOkzP9wpLrWtaLiQnxMJDYEcsa5u2Q8tCbvO2U=;
        b=MGrPIQ2VUViyexLtExx0UTYfboNDYUDoXGCXHVcC3NFi/7pXVUwLD3x0tk6Nh0L5AK
         hHG3gRcXIoplJm4vRWSIP05JrnN3f/gBG4/aP4JkIvYlfLuCjuYDdMXHXsDbpYr7qbUq
         LmA8zlhRMAT01ght+0oxkFge16aHO54chdIeCTBfohOk7xTBdkLPS6+EsKmhS03RNn2J
         yvCN5ZpV69iBmECe+SRPVZxtp55Rer2/iDlJDW9YL642AMj+CJo4X152Yyp52ZDd48B+
         wbGPAGhcryv5yUA4ofNGvLMWVO24v9nU9FJ8C/w7xzQiLli2awXA155iv+VJETc/0Imy
         rFWg==
X-Gm-Message-State: AOJu0YzzgwhqKp0GUaLnIqpku9qVSROmXHDdgZ2cUiKtkycyKPPnQ9lq
	Lx2QbET9W5XIgoS0JsohMlbRqg==
X-Google-Smtp-Source: AGHT+IG6opXh2h2vBzrOmXB3+UcFhcTdHrLoC6XAEJ8FvwFsOZ0HKc/O6P1mk/Q7pBmbh3vGmE/9Rg==
X-Received: by 2002:a05:651c:543:b0:2c5:1640:3c97 with SMTP id q3-20020a05651c054300b002c516403c97mr324607ljp.22.1697759283617;
        Thu, 19 Oct 2023 16:48:03 -0700 (PDT)
Message-ID: <cc20f0f7-0216-4755-a9ef-ad5fa60982f6@citrix.com>
Date: Fri, 20 Oct 2023 00:48:02 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH for-4.18] x86/mem_sharing: add missing m2p entry when
 mapping shared_info page
Content-Language: en-GB
To: Tamas K Lengyel <tamas@tklengyel.com>, xen-devel@lists.xenproject.org
Cc: Jan Beulich <jbeulich@suse.com>, George Dunlap
 <george.dunlap@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>
References: <20231018080242.1213-1-tamas@tklengyel.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: <20231018080242.1213-1-tamas@tklengyel.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 18/10/2023 9:02 am, Tamas K Lengyel wrote:
> When mapping in the shared_info page to a fork the m2p entry wasn't set
> resulting in the shared_info being reset even when the fork reset was called
> with only reset_state and not reset_memory. This results in an extra
> unnecessary TLB flush.
>
> Fixes: 1a0000ac775 ("mem_sharing: map shared_info page to same gfn during fork")
> Signed-off-by: Tamas K Lengyel <tamas@tklengyel.com>
> ---
>  xen/arch/x86/mm/mem_sharing.c | 2 ++
>  1 file changed, 2 insertions(+)
>
> diff --git a/xen/arch/x86/mm/mem_sharing.c b/xen/arch/x86/mm/mem_sharing.c
> index 94b6b782ef..142258f16a 100644
> --- a/xen/arch/x86/mm/mem_sharing.c
> +++ b/xen/arch/x86/mm/mem_sharing.c
> @@ -1847,6 +1847,8 @@ static int copy_special_pages(struct domain *cd, struct domain *d)
>                                  p2m_ram_rw, p2m->default_access, -1);
>              if ( rc )
>                  return rc;
> +
> +            set_gpfn_from_mfn(mfn_x(new_mfn), gfn_x(old_gfn));
>          }
>      }
>  

Acked-by: Andrew Cooper <andrew.cooper3@citrix.com>

CC Henry.  This needs a view about a release ack.

Cons: it's been broken since Xen 4.14 and we're very deep into the 4.18
code freeze.

Pros: it's a bug and would clearly qualify for backport, and is in a
niche feature so isn't plausibly going to adversely affect other users.

~Andrew


From xen-devel-bounces@lists.xenproject.org Fri Oct 20 00:51:46 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 00:51:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619606.964968 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtdjc-0001xX-AK; Fri, 20 Oct 2023 00:51:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619606.964968; Fri, 20 Oct 2023 00:51: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 1qtdjc-0001xQ-7C; Fri, 20 Oct 2023 00:51:28 +0000
Received: by outflank-mailman (input) for mailman id 619606;
 Fri, 20 Oct 2023 00:51: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 1qtdja-0001xG-GQ; Fri, 20 Oct 2023 00:51: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 1qtdja-0001sF-9b; Fri, 20 Oct 2023 00:51: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 1qtdjZ-0003eN-Vw; Fri, 20 Oct 2023 00:51:26 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qtdjZ-0006so-VS; Fri, 20 Oct 2023 00: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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=xkpXRk4Dz605vPvt6hIxRMmTWxwbRdhbCeglLWJA1zk=; b=vAjwVweAQQ5NN/ZAMMPebCvxe7
	YqQJmDe42eHfegHpW2x953mlMaUBhsewVfTtOdQz3L97IN3bIILnirh+9+7LcMQGKfn4Qj614FyZt
	8Se0vSbu+DVBCgm0MFAD+wd7hlDE7MhBcUzgpZ7u/NoOZEO8ES3XBNkuyZ8Pp8yt47f4=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183436-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 183436: 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=474fc7d3c6525e209bd2fe1e6ef0bbb34de86bb4
X-Osstest-Versions-That:
    xen=698b0f5031c6083401234a9b9415175cc5855a0a
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 20 Oct 2023 00:51:25 +0000

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

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                  474fc7d3c6525e209bd2fe1e6ef0bbb34de86bb4
baseline version:
 xen                  698b0f5031c6083401234a9b9415175cc5855a0a

Last test of basis   183425  2023-10-19 08:00:28 Z    0 days
Testing same since   183436  2023-10-19 22:02:05 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Jan Beulich <jbeulich@suse.com>
  Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
  Roger Pau Monne <roger.pau@citrix.com>
  Roger Pau Monné <roger.pau@citrix.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
   698b0f5031..474fc7d3c6  474fc7d3c6525e209bd2fe1e6ef0bbb34de86bb4 -> smoke


From xen-devel-bounces@lists.xenproject.org Fri Oct 20 01:10:24 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 01:10:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619611.964978 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qte1l-0003u5-QQ; Fri, 20 Oct 2023 01:10:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619611.964978; Fri, 20 Oct 2023 01:10: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 1qte1l-0003ty-Ms; Fri, 20 Oct 2023 01:10:13 +0000
Received: by outflank-mailman (input) for mailman id 619611;
 Fri, 20 Oct 2023 01:10: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=0mrC=GC=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qte1j-0003tr-S8
 for xen-devel@lists.xenproject.org; Fri, 20 Oct 2023 01:10:11 +0000
Received: from EUR03-DBA-obe.outbound.protection.outlook.com
 (mail-dbaeur03on20624.outbound.protection.outlook.com
 [2a01:111:f400:fe1a::624])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 686837b0-6ee5-11ee-9b0e-b553b5be7939;
 Fri, 20 Oct 2023 03:10:07 +0200 (CEST)
Received: from DB9PR02CA0027.eurprd02.prod.outlook.com (2603:10a6:10:1d9::32)
 by AM8PR08MB6417.eurprd08.prod.outlook.com (2603:10a6:20b:362::20)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.25; Fri, 20 Oct
 2023 01:10:04 +0000
Received: from DB5PEPF00014B9F.eurprd02.prod.outlook.com
 (2603:10a6:10:1d9:cafe::ea) by DB9PR02CA0027.outlook.office365.com
 (2603:10a6:10:1d9::32) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.26 via Frontend
 Transport; Fri, 20 Oct 2023 01:10:04 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DB5PEPF00014B9F.mail.protection.outlook.com (10.167.8.169) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6907.24 via Frontend Transport; Fri, 20 Oct 2023 01:10:04 +0000
Received: ("Tessian outbound a024c74d4d6d:v215");
 Fri, 20 Oct 2023 01:10:04 +0000
Received: from 2fc86f1b4fdf.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 E1D4AAA4-80E4-415A-B15B-D5E996A0B7F0.1; 
 Fri, 20 Oct 2023 01:09:58 +0000
Received: from EUR01-VE1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 2fc86f1b4fdf.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Fri, 20 Oct 2023 01:09:58 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by GV1PR08MB8082.eurprd08.prod.outlook.com (2603:10a6:150:96::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.26; Fri, 20 Oct
 2023 01:09:55 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41%4]) with mapi id 15.20.6907.022; Fri, 20 Oct 2023
 01: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: 686837b0-6ee5-11ee-9b0e-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=9qyXG9ZiXASSVzHPAo0gjCuvSwpm/32VjtD51kZ39j8=;
 b=ZwqskH90Za2rcyZqUrtIzWmb9iub5wl6By8pAKMqkL1eoVj+tMDZ3ZmYMV5h0F6l8q4OZzU8ievodC9HRmd/4TtJZa1fxdONvgBuBKJa1G2HiROj2jCoMkq7ZV60bLrGIdGo/gr8eHj3ymDQXjAxJ4VqkiMtEgI+6eJ8Ld6cca8=
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: 7df759a999a713a7
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=nA+i/LoSVa/dS2y1hCY/MmemCGiZa7zGSs2FA71OAD3l1xZwzq63F0UJk+c5i4gajeAwpSsMwDi4Gri0oWh6C9exmKYbmMB3aMlI5ynMVbDrbBk0KXUKgqug06VB9qaLSO3CPq/JjQjDf9dEXnGBxyRyuxBsjYwVHG47skjChXoJMiI+RaUEvmN72HiHnOJZc8l4kYOJw1AWbuV215ioy2dqa4OioE/NUGW/r/0xKuZLxDLp7vtqTwRW1vsmlqf9tCz4CVQxKmlPFBpX0tgokms3HkO2U2Nes6mGsbMelqR4IZI2ScT/qaZgpzXW/XclfgQ+GNFeEDizjgFV0g/cTg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=9qyXG9ZiXASSVzHPAo0gjCuvSwpm/32VjtD51kZ39j8=;
 b=SEWYP8MHklxJUhsrVdce2++v8+tlU6zYHMgw+N1RH9MLQnjuAYDHqKN5ZzDlQ0AC7uKIp1s/fxVVvre413CTlsElpW8qgF8hYjOZo+J/ljbuMj3GYOcEygVAfnZ6w38tWzT8Xz8HiYFkPSPcbpENoJRY6c+QBEr01nPoXGoIpdAm/2udk7/9+35C6c5IUx2lQIrbxoz/Ag6BBg73jNjivmyHhfJId4Dz6tjy1eNZ5TtCZ+ZgwcemtpBlnKlb0xMBSR6zocYe8h+GKCs7wG0VukbAsbHHbcY24KM1Mji+Qglm50wU1V5QMyLyhzwTmXTpcFrI5OLpALO6j6SsS53/YA==
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=9qyXG9ZiXASSVzHPAo0gjCuvSwpm/32VjtD51kZ39j8=;
 b=ZwqskH90Za2rcyZqUrtIzWmb9iub5wl6By8pAKMqkL1eoVj+tMDZ3ZmYMV5h0F6l8q4OZzU8ievodC9HRmd/4TtJZa1fxdONvgBuBKJa1G2HiROj2jCoMkq7ZV60bLrGIdGo/gr8eHj3ymDQXjAxJ4VqkiMtEgI+6eJ8Ld6cca8=
From: Henry Wang <Henry.Wang@arm.com>
To: Stefano Stabellini <sstabellini@kernel.org>
CC: Anthony PERARD <anthony.perard@citrix.com>, Andrew Cooper
	<andrew.cooper3@citrix.com>, Xen-devel <xen-devel@lists.xenproject.org>,
	Michal Orzel <michal.orzel@amd.com>, Doug Goldstein <cardoe@cardoe.com>
Subject: Re: [PATCH for-4.18] CI: (More) Always pull base image when building
 a container
Thread-Topic: [PATCH for-4.18] CI: (More) Always pull base image when building
 a container
Thread-Index: AQHaAq/YN2Cped61akCKSY6IAN2rpLBRX2AAgAAkU4CAAFsjAA==
Date: Fri, 20 Oct 2023 01:09:55 +0000
Message-ID: <307CC40B-CD1B-47C4-BD33-E806A7F82F9A@arm.com>
References: <20231019171452.1704276-1-andrew.cooper3@citrix.com>
 <f8cb1c63-b634-4bd2-9bce-54d2e3e6dbe3@perard>
 <alpine.DEB.2.22.394.2310191243260.2099202@ubuntu-linux-20-04-desktop>
In-Reply-To:
 <alpine.DEB.2.22.394.2310191243260.2099202@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_|GV1PR08MB8082:EE_|DB5PEPF00014B9F:EE_|AM8PR08MB6417:EE_
X-MS-Office365-Filtering-Correlation-Id: fafbfa93-734d-4420-94d5-08dbd1094ad6
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:
 r4BIWlSCc0sWg/CFvsG5TyfaFNbu7ohjiRBB0xDd2kxJEywSSo880aUcWm5QznklNvTQGDnSuBq+SPWhdziF5ZeuMnyTw7Ps+KlIT5p5Bne8yy9xnJWXhuyyh95z17QtafemKzLCUq7o68HHkzdK3DMBYi8AIvzXzj+HJWJdbdpAt7Zw0xWN93sHAu03R4Ks8PcvL3zlaYP4n2TeybQPnFakV1g253qUrf5dGUsWkl3Uc5rymo1F1CIYAoJ6w1DHThEVRx+G/+4zgES97vf/ZmFLC/j+FPeMXIfsVRu2TbohNwL84djeQZqabSUjGB7+gI1sc7kzT0hPkX2ph1I8bYTkiLXCRWKQQVXUGLp7z3Ef8Me0PcR7u6SqYrdX4/4SPz/0r5qPLYxd7Cxd7T2tLz3MxWIdotHLxcj22AowTqCYXpKHQvNvOrqOw1YCnFGgY8kNHBHEoV1oSQ1OTW1HUHWoD0dqzHstaVj3RGGRUDDI4pxd9F0iCTH+YVjzIr5OLuwjwAIEe3obD+ngpKvtNPunC6/LTJFA4Tb9fOYSqieZ33LD6FaENjpOn3ZVFyfc3/QKfso77Kbm0ErvceGwquudek3t4c0DRHUc9GC2+kjRNYswEvxwmaGT87evxG/Se2vXYXOp6tkap3pZzLdQbg==
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)(39860400002)(346002)(376002)(136003)(230922051799003)(451199024)(186009)(1800799009)(64100799003)(4326008)(66946007)(76116006)(41300700001)(8936002)(54906003)(66446008)(64756008)(6916009)(316002)(8676002)(86362001)(91956017)(66556008)(66476007)(33656002)(36756003)(2906002)(4744005)(38100700002)(53546011)(6506007)(478600001)(6512007)(122000001)(71200400001)(26005)(2616005)(5660300002)(6486002)(38070700009)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="us-ascii"
Content-ID: <B86019F4E7EF4C489DB0AA44E01760AE@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV1PR08MB8082
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:
 DB5PEPF00014B9F.eurprd02.prod.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	637291d4-eef7-4878-604f-08dbd109457e
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	A/2StlP1YBnRPfVyycqhNSkO2nYQ/tYf0ix0l2FXDUAb6MxAd45iXnEVUQ+3IXNx9ATFHafOlyU0mXUOYhr4MuAShe050OCUhLSN3IyoxsHzKJY9o3fHI5vtlNEPStsT/6iW8a/Z3g3ni5S7HEG9JDyN2qJs29KE0wlcfhnMzanXdvJ2ZIVOvAirpfNjh5kTWtrgC9lHLlmX2AVFKGxfDgfAVKosPb7XxTbPELsNY1vzD3kiWUHbwc0D0cVNl9vu5cDL67umHJI7r/yA4oPTdRcNTLDJY/4FxgwuSvnGV7jnoEx5zX7kNMXt7w/tejIRv3RkQidIhLbSZ7RqisRCzI/nqpGql4qHc4Ai0+0TEXxRsik9+phB5uN2bnBqUpq1Fy2eVwWgZATI/LzRiGqUhQgHjrUuOg6+MG0GxjlN8TzF8ULukUAGDTkHuxx4Bq7Uz3HwdqyF9i7WyLcikiPh/9z2KarzyaTIHjXKg5F0tJTkjJp9xl6+lMGAkfQYdym86dzVtUuMI7imSZECjFpJta5l1fw/1uF21jTDBEudFD1cVfJorzx9YXMHUP8hSuXK8y2nubmq2JZDOtusRvDtBdGBP/3FmlpDmCjMJHLehIRMtrRJzJ1NhgNN6IWF6kmswoBBllX9o0udlKm4ETOLciovc3AjmlTTyldwr/XtWwv5WVrbkfta1KM6FJkHe6VdeEq/ff0qO3s6FUabddW74VYOyG7g+rozRWfrx+ggPIX3lmYZjpyzthR+QCn/JgmG
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)(186009)(82310400011)(451199024)(64100799003)(46966006)(36840700001)(40470700004)(2906002)(4744005)(53546011)(40460700003)(4326008)(6862004)(36756003)(5660300002)(8676002)(8936002)(40480700001)(41300700001)(54906003)(33656002)(478600001)(6486002)(86362001)(70586007)(107886003)(70206006)(6512007)(6506007)(2616005)(26005)(81166007)(356005)(82740400003)(36860700001)(336012)(316002)(47076005);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Oct 2023 01:10:04.3388
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: fafbfa93-734d-4420-94d5-08dbd1094ad6
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:
	DB5PEPF00014B9F.eurprd02.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8PR08MB6417

Hi all,

> On Oct 20, 2023, at 03:43, Stefano Stabellini <sstabellini@kernel.org> wr=
ote:
>=20
> On Thu, 19 Oct 2023, Anthony PERARD wrote:
>> On Thu, Oct 19, 2023 at 06:14:52PM +0100, Andrew Cooper wrote:
>>> Repeat c/s 26ecc08b98fc ("automation: Always pull base image when build=
ing a
>>> container") for the other makefile we've got building containers.
>>>=20
>>> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
>>> ---
>>>=20
>>> For 4.18.  This is CI infrastructure, not part of the regular build.
>>=20
>> Reviewed-by: Anthony PERARD <anthony.perard@citrix.com>
>=20
> Acked-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 Fri Oct 20 01:14:45 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 01:14:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619613.964988 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qte68-0004Up-9z; Fri, 20 Oct 2023 01:14:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619613.964988; Fri, 20 Oct 2023 01:14: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 1qte68-0004Ui-7H; Fri, 20 Oct 2023 01:14:44 +0000
Received: by outflank-mailman (input) for mailman id 619613;
 Fri, 20 Oct 2023 01: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=0mrC=GC=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qte66-0004UV-2z
 for xen-devel@lists.xenproject.org; Fri, 20 Oct 2023 01:14:42 +0000
Received: from EUR01-VE1-obe.outbound.protection.outlook.com
 (mail-ve1eur01on0613.outbound.protection.outlook.com
 [2a01:111:f400:fe1f::613])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 0a97b242-6ee6-11ee-9b0e-b553b5be7939;
 Fri, 20 Oct 2023 03:14:40 +0200 (CEST)
Received: from AS9PR01CA0012.eurprd01.prod.exchangelabs.com
 (2603:10a6:20b:540::8) by PAVPR08MB9332.eurprd08.prod.outlook.com
 (2603:10a6:102:302::12) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.22; Fri, 20 Oct
 2023 01:14:35 +0000
Received: from AM1PEPF000252E0.eurprd07.prod.outlook.com
 (2603:10a6:20b:540:cafe::25) by AS9PR01CA0012.outlook.office365.com
 (2603:10a6:20b:540::8) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.25 via Frontend
 Transport; Fri, 20 Oct 2023 01:14:35 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM1PEPF000252E0.mail.protection.outlook.com (10.167.16.58) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6907.20 via Frontend Transport; Fri, 20 Oct 2023 01:14:35 +0000
Received: ("Tessian outbound d1b3e404ba03:v215");
 Fri, 20 Oct 2023 01:14:34 +0000
Received: from 8ac2bf4b6e78.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 1823B52F-4E62-44FB-A56B-6A7A8204A5A8.1; 
 Fri, 20 Oct 2023 01:14:28 +0000
Received: from EUR03-DBA-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 8ac2bf4b6e78.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Fri, 20 Oct 2023 01:14:28 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by GV1PR08MB8082.eurprd08.prod.outlook.com (2603:10a6:150:96::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.26; Fri, 20 Oct
 2023 01:14:26 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41%4]) with mapi id 15.20.6907.022; Fri, 20 Oct 2023
 01:14: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: 0a97b242-6ee6-11ee-9b0e-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=eUrcSsiuOFjn2at/QvmhxV9wxGnqRPGF9W6A69+li0E=;
 b=a7tJNCOS3U2caY7u1Cs4q/lN2/OQE7fVmSWZOuSwsX6GnPbY3IU2xHrcjse+uyWbzmI8LBOvk5lJatYgp2C3mfLTDH8kSWAJwykj7Q0eywKXOzoryTktyMxROvpyz5zCJeGJ31TNLSOv1TAVLY+XRumw6FErqFgvKEdQ7CGW+M8=
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: d82070c804ba9aa1
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=CxIk3+F2HUxKBNE6lpdPyoLeuYedziUMhJs7qvLtwfbIMhCYkzQhhA6BjH6rBk0BD/P728FPK4lqXPCGBmULuNCjiRqrcvZsxuKkLSv7GchE25svcT/Q7pR33I51L8duMKbaA8jbOPbiB049rSEQPOJ6r71zBQgIQOGHpJ3F4H/med+0gMf8eZ0lcChYvq0sKJmfNBEh2VDT/oKt8qhuQgmjbKx0GQ4NNDSNZRweY/B4v0IVYWrmhwdOS3Atnypm5VSTC+bi76gfDYI+eVkpg5bJrCkXa8t5GPytQ8RsSZQOTKEOGht421lGfXZzs97VI9wSwrY50rZtKkwOcCxQXw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=eUrcSsiuOFjn2at/QvmhxV9wxGnqRPGF9W6A69+li0E=;
 b=WZ1r+XmuNB9b9tTUxoFpObBLQKYHh3qK5FSTwoTPDOjsGRJ0fZqUMYrW9sN8sC6mAKniF0KRIULQjsh2xxO24Z6T5cFh7L60gOOvN2d91K3m09EautucefZY+2Wu9+Bzxh6lhqlbDbBfV8i0sae8zjm12oMY28s7kp/rI4vESo4dF/xTH64Ikr6vwVNqrogcZsTSzP1kXWGXKZHtuAkra0yzVaFYtDuUAqqkHyT8Z78Nss8+m7CjTDCBA/91uKQ+FoJnosph0+Vrvd7mQmUZyN+dme+qQw1pQLl+RB2o8T0JnNUIHSne5dV320DuU2rxCNMf2brLONFNkBVHvupwlA==
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=eUrcSsiuOFjn2at/QvmhxV9wxGnqRPGF9W6A69+li0E=;
 b=a7tJNCOS3U2caY7u1Cs4q/lN2/OQE7fVmSWZOuSwsX6GnPbY3IU2xHrcjse+uyWbzmI8LBOvk5lJatYgp2C3mfLTDH8kSWAJwykj7Q0eywKXOzoryTktyMxROvpyz5zCJeGJ31TNLSOv1TAVLY+XRumw6FErqFgvKEdQ7CGW+M8=
From: Henry Wang <Henry.Wang@arm.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>
CC: Tamas K Lengyel <tamas@tklengyel.com>, "xen-devel@lists.xenproject.org"
	<xen-devel@lists.xenproject.org>, Jan Beulich <jbeulich@suse.com>, George
 Dunlap <george.dunlap@citrix.com>, =?iso-8859-1?Q?Roger_Pau_Monn=E9?=
	<roger.pau@citrix.com>, Wei Liu <wl@xen.org>
Subject: Re: [PATCH for-4.18] x86/mem_sharing: add missing m2p entry when
 mapping shared_info page
Thread-Topic: [PATCH for-4.18] x86/mem_sharing: add missing m2p entry when
 mapping shared_info page
Thread-Index: AQHaArGX/86ib4UWxEGYIxLP3yyU+LBRyAEAgAAYFIA=
Date: Fri, 20 Oct 2023 01:14:26 +0000
Message-ID: <7399BA16-EAC9-4AB9-8A31-6D5F34BCB376@arm.com>
References: <20231018080242.1213-1-tamas@tklengyel.com>
 <cc20f0f7-0216-4755-a9ef-ad5fa60982f6@citrix.com>
In-Reply-To: <cc20f0f7-0216-4755-a9ef-ad5fa60982f6@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_|GV1PR08MB8082:EE_|AM1PEPF000252E0:EE_|PAVPR08MB9332:EE_
X-MS-Office365-Filtering-Correlation-Id: 9a609aa6-ff98-4bca-9de1-08dbd109ec30
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:
 Bas0oQlOWtuJid09ymt47DKAu8UcaAcJyAVzQ+qqKLxY0rH6qaFM4EJf4eb3WvWS8CMUgay8E/JMs4eQiRStZdH7FS2Hp8xW6+mxx/rJJiq7JkuFv1AQBPWyOFnB7O1jvVtqspyfmlxYg50ExeurNI8J5Guoc11M4OtYp6DGemaENotydGcthTt5kT+6avrol9R/6M08DmUvqnmoJ711jJFnH/r7WBrdj40sOP7C/mkO/RMbIVUtWvu5+gV1zNM2f81uK4Z7qWj/yakXItiVeCSXjQHaVKMYULAQDb7gJIPKAIppDTnqjrI5B/U8+FiVD+MYV8ALQ3ijO79Fm2yrF8MlgcklKumX+6ozQyg5BN28VmDW1jKHVzohoVTawhVEAAkHwp41+kjwFveBYUtG30K8wyqRm6cJHGZ09dAeUkOnb6XNJxNKpVd/ebih9dNOeOtguNNTl+sTN8fXR0e9VJl7tScbE/H49Qju+4c6RA9vWUMoml4fsSu6qN0RFJIuSPD1qEdsU3ZobGV04J5Pjq1MwV7jczDvuUB8WWBwsaeDgnXxHh/x5/M1pVgUgB4ro6Vur/PetQ46VjoE7v2dCoiuo4Zobai5YwCRIvo4cYtOjtZP3gp88WAOMFRs9gTZeeGJ0oKwn/0V+6dnTHcCrg==
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)(39860400002)(346002)(376002)(136003)(230922051799003)(451199024)(186009)(1800799009)(64100799003)(83380400001)(4326008)(66946007)(76116006)(41300700001)(8936002)(54906003)(66446008)(64756008)(6916009)(316002)(8676002)(86362001)(91956017)(66556008)(66476007)(33656002)(36756003)(2906002)(38100700002)(53546011)(6506007)(966005)(478600001)(6512007)(122000001)(71200400001)(26005)(2616005)(5660300002)(6486002)(38070700009)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="iso-8859-1"
Content-ID: <EB49E4A2D1AE04498F28DCB348707189@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV1PR08MB8082
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:
 AM1PEPF000252E0.eurprd07.prod.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	4256124a-0f81-4e43-e64e-08dbd109e6eb
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	m4Ywki2wwhRvAhycwXNTZMHZlLrcB1Sbw8ldOK+CEEpaoQj17Gz2yVC9a7EeZAeOudiZ3kXE4PYxXxp1kc6WI7iIhB4P9WVK89N/F81SGqm3zAbCeIT5A+v5ali7mHo8bR8Ny+MCHvztRzafwXntqKEATzHf/BIPo88OnefghXdUbzmc3J84TgIn4yZuNZTDSJFcH0E8pHJ2p4XsGyKQJzQDIqY1ZhwYkwHG6DdlJgl0ksLQw6abTb2pFnhSskktPp16rni8pczGU1R86iBdBKdFEyvQfpSJJN0mDtPDmVGpHr2Tpx6yoeACOf9MPu86cUlor8NCkyy2fhCnEpmL9IZ7xhu5ZLLBEJdhPSXanmlZ+K3UoCpb7iAfWbmCQwkOZ6hdXk4fOJjzZlmFwyMpv/5fz/Nz23G6WtoGzS3YunP6qibxJj9hCpIAmxEK8YfDQl2WWNmCZVjeU96baoPg440jbsyhjA8SwZp1SY3Wmf1q/t6POCow8ldUl7irNCu8qM5AycwosRpQxdbtqiHfmRfIt4xKYKA8HBlYZtxyAp/9hVu9MXiKfnFBBPrfEIDTrOE/WUsRJ+XsZWFDN2bxMbXXusF0SoS5IFKk9GyS6/c37QgRZEbQOknUTsk9i5YocF8OnjSAvAPKLgWrnjHXXgm3Cxe1W8VW2z1aCXjJ+2JKXQb8MP3rgijnGV9DlRE+/PnpKSRxCrER1rOUdv8mqKwKJcziwS8L+YHHG050LXM=
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)(396003)(136003)(230922051799003)(64100799003)(82310400011)(451199024)(186009)(1800799009)(46966006)(36840700001)(40470700004)(54906003)(40460700003)(2906002)(5660300002)(26005)(4326008)(41300700001)(36756003)(336012)(8936002)(47076005)(33656002)(40480700001)(86362001)(6512007)(356005)(36860700001)(6506007)(82740400003)(81166007)(2616005)(8676002)(6862004)(70206006)(70586007)(6486002)(53546011)(478600001)(966005)(83380400001)(316002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Oct 2023 01:14:35.0108
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 9a609aa6-ff98-4bca-9de1-08dbd109ec30
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:
	AM1PEPF000252E0.eurprd07.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAVPR08MB9332

Hi all,

> On Oct 20, 2023, at 07:48, Andrew Cooper <andrew.cooper3@citrix.com> wrot=
e:
>=20
> On 18/10/2023 9:02 am, Tamas K Lengyel wrote:
>> When mapping in the shared_info page to a fork the m2p entry wasn't set
>> resulting in the shared_info being reset even when the fork reset was ca=
lled
>> with only reset_state and not reset_memory. This results in an extra
>> unnecessary TLB flush.
>>=20
>> Fixes: 1a0000ac775 ("mem_sharing: map shared_info page to same gfn durin=
g fork")
>> Signed-off-by: Tamas K Lengyel <tamas@tklengyel.com>
>> ---
>> xen/arch/x86/mm/mem_sharing.c | 2 ++
>> 1 file changed, 2 insertions(+)
>>=20
>> diff --git a/xen/arch/x86/mm/mem_sharing.c b/xen/arch/x86/mm/mem_sharing=
.c
>> index 94b6b782ef..142258f16a 100644
>> --- a/xen/arch/x86/mm/mem_sharing.c
>> +++ b/xen/arch/x86/mm/mem_sharing.c
>> @@ -1847,6 +1847,8 @@ static int copy_special_pages(struct domain *cd, s=
truct domain *d)
>>                                 p2m_ram_rw, p2m->default_access, -1);
>>             if ( rc )
>>                 return rc;
>> +
>> +            set_gpfn_from_mfn(mfn_x(new_mfn), gfn_x(old_gfn));
>>         }
>>     }
>>=20
>=20
> Acked-by: Andrew Cooper <andrew.cooper3@citrix.com>
>=20
> CC Henry.  This needs a view about a release ack.
>=20
> Cons: it's been broken since Xen 4.14 and we're very deep into the 4.18
> code freeze.
>=20
> Pros: it's a bug and would clearly qualify for backport, and is in a
> niche feature so isn't plausibly going to adversely affect other users.

Given the fact that it will be backported anyway, I had the same discussion=
 with Juergen
in his thread [1]. So if we can bear the risk of delaying merging this patc=
h for a week,
would it be ok to wait for the release and backport this patch to the stabl=
e tree? Thanks!

[1] https://lore.kernel.org/xen-devel/83E6DCF6-926C-43A6-94D2-EB3B2C444309@=
arm.com/

Kind regards,
Henry

>=20
> ~Andrew



From xen-devel-bounces@lists.xenproject.org Fri Oct 20 01:15:36 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 01:15:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619617.964998 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qte6v-00057P-Mw; Fri, 20 Oct 2023 01:15:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619617.964998; Fri, 20 Oct 2023 01: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 1qte6v-00057I-K2; Fri, 20 Oct 2023 01:15:33 +0000
Received: by outflank-mailman (input) for mailman id 619617;
 Fri, 20 Oct 2023 01: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=0mrC=GC=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qte6u-0004xJ-M1
 for xen-devel@lists.xenproject.org; Fri, 20 Oct 2023 01:15:32 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com
 (mail-db3eur04on0631.outbound.protection.outlook.com
 [2a01:111:f400:fe0c::631])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 299eefb9-6ee6-11ee-98d5-6d05b1d4d9a1;
 Fri, 20 Oct 2023 03:15:32 +0200 (CEST)
Received: from DUZPR01CA0029.eurprd01.prod.exchangelabs.com
 (2603:10a6:10:46b::18) by DU0PR08MB7392.eurprd08.prod.outlook.com
 (2603:10a6:10:353::16) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.24; Fri, 20 Oct
 2023 01:15:28 +0000
Received: from DU6PEPF0000B621.eurprd02.prod.outlook.com
 (2603:10a6:10:46b:cafe::44) by DUZPR01CA0029.outlook.office365.com
 (2603:10a6:10:46b::18) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.26 via Frontend
 Transport; Fri, 20 Oct 2023 01:15:28 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DU6PEPF0000B621.mail.protection.outlook.com (10.167.8.138) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6907.20 via Frontend Transport; Fri, 20 Oct 2023 01:15:27 +0000
Received: ("Tessian outbound 028b72acc2da:v215");
 Fri, 20 Oct 2023 01:15:27 +0000
Received: from 0f438b9b11cb.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 76B9460B-039F-422E-89C7-B534F3081F9B.1; 
 Fri, 20 Oct 2023 01:15:17 +0000
Received: from EUR03-DBA-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 0f438b9b11cb.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Fri, 20 Oct 2023 01:15:17 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by GV1PR08MB8082.eurprd08.prod.outlook.com (2603:10a6:150:96::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.26; Fri, 20 Oct
 2023 01:15:15 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41%4]) with mapi id 15.20.6907.022; Fri, 20 Oct 2023
 01: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>
X-Inumbo-ID: 299eefb9-6ee6-11ee-98d5-6d05b1d4d9a1
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=8JO4nu2+ZZR49sZ6y/Dh9LMufrhxJW+ac5Y2/Pl4DWE=;
 b=d2YZeNCmUU/6RlDjsE07oI7oq9OqQbt0Djubx05kWaaFxG+eSRy8WcpDXTTv22HUBRhP8+yq6s5tuVub0hAyND4r34LYVRTuE0ZKOEYKoOGYOcbs45c+OyYh5j+sG/OwS6OAHOCiGaPFTibnebqWOvwApc0Yq0y1IzkZRYeK+Ds=
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: 1854263bd165fd5c
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=esEfURn2eEMxoN6GAfZXDyw27y+2cHKXqoVX8Q97z0yVbADW2yDUYQ+ikDciGg5T9fiHoGBlNDuAZtMpACz7IWPmJdPacNmYXhp3b8hZXW9Yly2hHpTgozMGXhwPaHlmdUf3hVxtw7AL9sexpgpsdhDe0S+6thTumpXI381fDfkP1us9Ns82/JbyJLH1qqO+27jfceq42Kryb7HcajCFdWxKJQgeWf8kYTt3LBG4XcykMFNxGJrjAiO5PJA75og0Ay9Lp8LlsY6afhda9c3KPSlO0Z4LDZa2QJFWP1BVWI0Kp7NMLzdTxvXmmKo/aWd+iwrDdkTTB0I/6eKYUKEX4Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=8JO4nu2+ZZR49sZ6y/Dh9LMufrhxJW+ac5Y2/Pl4DWE=;
 b=KeqSNin7NN7UevEgNv16gCKpKW3d15CfAkvbq5fEu/2LH0tABfwqBbUXmZcTIR1ajdNmF5cWJsvWFZDJZdltfdXf4ub8wmI7cv8v/lZhFUPHKvBsf/XvaploMHksdWtYhBZkRpjZazSJXJeQXbuLk6Si7Ik6cjB5es4qhQmkSpw/A6QnIEg19NO8FTRB2XPteYy6d+agayHqYncoYOsMLiLqFLRzTL1a9cborLELNMKbR1D5dGNo7jWkzcHAvw3WTWZcIyhTvjTtGQsKIm9Gx6KpRk9jthE9uYHLeEjDL+Ihcc3e1k/OWEHaeTbVzggklO+1JNmDWMRF81eZ+EnWmw==
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=8JO4nu2+ZZR49sZ6y/Dh9LMufrhxJW+ac5Y2/Pl4DWE=;
 b=d2YZeNCmUU/6RlDjsE07oI7oq9OqQbt0Djubx05kWaaFxG+eSRy8WcpDXTTv22HUBRhP8+yq6s5tuVub0hAyND4r34LYVRTuE0ZKOEYKoOGYOcbs45c+OyYh5j+sG/OwS6OAHOCiGaPFTibnebqWOvwApc0Yq0y1IzkZRYeK+Ds=
From: Henry Wang <Henry.Wang@arm.com>
To: Stefano Stabellini <sstabellini@kernel.org>
CC: Xen-devel <xen-devel@lists.xenproject.org>, Community Manager
	<community.manager@xenproject.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>,
	=?iso-8859-1?Q?Roger_Pau_Monn=E9?= <roger.pau@citrix.com>, Wei Chen
	<Wei.Chen@arm.com>
Subject: Re: [PATCH 1/3] CHANGELOG.md: Mention the MISRA-C improvement in 4.18
 dev cycle
Thread-Topic: [PATCH 1/3] CHANGELOG.md: Mention the MISRA-C improvement in
 4.18 dev cycle
Thread-Index: AQHaAkwZpuNxj+yPc0utTQUv+u0QObBRScQAgACXVwA=
Date: Fri, 20 Oct 2023 01:15:14 +0000
Message-ID: <348BADAA-65C5-4234-A545-E41684538A46@arm.com>
References: <20231019052050.1032492-1-Henry.Wang@arm.com>
 <20231019052050.1032492-2-Henry.Wang@arm.com>
 <alpine.DEB.2.22.394.2310190911020.1945130@ubuntu-linux-20-04-desktop>
In-Reply-To:
 <alpine.DEB.2.22.394.2310190911020.1945130@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_|GV1PR08MB8082:EE_|DU6PEPF0000B621:EE_|DU0PR08MB7392:EE_
X-MS-Office365-Filtering-Correlation-Id: 06c47089-5c46-48b4-8873-08dbd10a0bb6
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:
 1jeA5hqJOTsi6o+TLXgUDzHeWTYyrbGXS9eEnNwcCzhCXJJy08mhZHdnGOkmxnJvhqo5HlrATNEddEaKsfClBFQKfgN0fpIiaEGlYMfs06QJvD8wWVaWheCzBkNOkZgn14yYtJv7UTjbHxZXSHeToPOmAtFeGYi2xM/da7561Ki64nJ3wv2YMEHf+EOL/Rfqu1z3Um/G69nAz0IdAlodLUeTXIqHl+71yJ8nXHsNqUoMwO16B2U1vxcOk27ynKAO7ElDxyPh9wPeNstAp3rG9WaaVe4P4QYn8T3TBMBvo6UUggYCeJdfR6pUb9CqlEwArTQzd9H95ZqeiLc4dcIxtLzLT0nbonwXw2wzRqf9fDpmTPe6jgnidFBxgoQtQu4YZ2He72VVkKZsJH+dhs85CNqMLSi50bMH0HSaxGwM4SN4hCfQY+lbtO9xzhYjIdsXqL/DLLQ6WWD/eZUfGS3zhTaQCasyMeX0SDVAlcXxT02lVJhXqcGLEAxII0ghVrst/LJ4er9dZtiyVdNSFRkHNX0R5AjC1WwPXoxSDL8NrkKans98hvltpabqC4pRByFEQPRk/q2aGXVQfdzuW+YTGDmXnIgGeVq7Pn41XaLBKiInKYcvjHb+JsB0ivK3tP3v8pSPyDnoC7NWObrOkWx5qp0YFF1IU2AYdFq+V5We2KLuFmohoptEszsQKv+11tEk
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)(39860400002)(346002)(376002)(136003)(230922051799003)(451199024)(186009)(1800799009)(64100799003)(83380400001)(4326008)(66946007)(76116006)(41300700001)(8936002)(54906003)(66446008)(64756008)(6916009)(316002)(8676002)(86362001)(91956017)(66556008)(66476007)(33656002)(36756003)(2906002)(4744005)(38100700002)(53546011)(6506007)(478600001)(6512007)(122000001)(71200400001)(26005)(2616005)(5660300002)(6486002)(38070700009)(219803003)(207903002)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="iso-8859-1"
Content-ID: <49BDEF068735124B9E8A5EB509D41458@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV1PR08MB8082
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:
 DU6PEPF0000B621.eurprd02.prod.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	3e3e5530-e26c-4e70-dc87-08dbd10a03f5
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	M9uM0JkJpTs2M+hJ1QaokcKD1RU2XqSR4Z+ya5rxrQehrvIazZfa81Sul0d7udzI6MxbwLMF4Rdan1WUu384qZOHL8HtiH2CjQw7mapBbxJZB+aHVtgKlvvWiH8W3PNZW6mvSD8f7PRxCu3wndOHM3CWxjUboFkavYSyZnIZ+sXtDn00B/Gu/IUxqembBl3MHdsNFvqCVsM0/SdQCjSWit+bB4BQ/Uha/kydBg35ZqlHf3KznIXqLy508QMvW+tdlFLCmHCSetCeGaKHTOMd/8fBPGSv/S6ZbtkdaDDtkIm3AkPQspo3BQwmeEOb/9MlL5ezBuJ+fxVQ3p7M2B0aq4EwsbOeJY4+AwSR41g1596c+iMMOAwdSakdF9VQHO2y+8yIF3QQM3dU/xvT99W/0cvlTxJ8It/we5BIKvov2hUPvO//5xQIfmO76MJue/OKC9Y3iQH8DAKF8G51PlEmH+SYEQB1quoSv0BszAIMO8IpuVbrqgtlcveNIuyY2DE4YiyWuz1XSRah/bQkMZiQwQWNFzLSQF8pc40+yRn+mvruAw76UOGZlVpm+IN++yok7yxydrJQcP4Qofssh/sVR/hkK/4wLqKUlG9d5YXgr25ZMUBBIhTfeueizGC2s+eMWSoz4c/0tS24/HUUnUIg2VtNMlqTpCJoF/BvPeqgot/LqXilKRp1c5YAwmUKUmqgLTN4bX9W7/CHAtvSVJqBY4fCGHWD2DVY42PifYgp2Nth93ld9U2pYW8szlHlD5UQ9Jaf6nQlLWOtg+4RF09Idoib97UqzsABCg11XKsXJ9M=
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)(136003)(346002)(396003)(230922051799003)(451199024)(82310400011)(64100799003)(186009)(1800799009)(36840700001)(40470700004)(46966006)(36756003)(2906002)(40480700001)(47076005)(40460700003)(4326008)(70206006)(70586007)(8936002)(54906003)(316002)(5660300002)(478600001)(8676002)(6486002)(33656002)(6862004)(86362001)(81166007)(36860700001)(41300700001)(2616005)(53546011)(6506007)(83380400001)(356005)(6512007)(336012)(26005)(82740400003)(219803003)(207903002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Oct 2023 01:15:27.8822
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 06c47089-5c46-48b4-8873-08dbd10a0bb6
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:
	DU6PEPF0000B621.eurprd02.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR08MB7392

Hi Stefano,

> On Oct 20, 2023, at 00:13, Stefano Stabellini <sstabellini@kernel.org> wr=
ote:
>=20
> On Thu, 19 Oct 2023, Henry Wang wrote:
>> Signed-off-by: Henry Wang <Henry.Wang@arm.com>
>> ---
>> CHANGELOG.md | 1 +
>> 1 file changed, 1 insertion(+)
>>=20
>> diff --git a/CHANGELOG.md b/CHANGELOG.md
>> index 165c5caf9b..47e98f036f 100644
>> --- a/CHANGELOG.md
>> +++ b/CHANGELOG.md
>> @@ -33,6 +33,7 @@ The format is based on [Keep a Changelog](https://keep=
achangelog.com/en/1.0.0/)
>>    nodes using a device tree overlay binary (.dtbo).
>>  - Introduce two new hypercalls to map the vCPU runstate and time areas =
by
>>    physical rather than linear/virtual addresses.
>> + - The project has now officially adopted 72 rules of MISRA-C.
>=20
> I counted them again, they are 71 today. We have accepted 3 more
> recently but for the CHANGELOG.md I would stick with what is on
> docs/misra/rules.rst

lol I will send a v2.

>=20
> Assuming 72 is changed to 71 on commit:
>=20
> Acked-by: Stefano Stabellini <sstabellini@kernel.org>

Thanks!

Kind regards,
Henry





From xen-devel-bounces@lists.xenproject.org Fri Oct 20 01:24:23 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 01:24:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619621.965007 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qteFM-0007v2-FE; Fri, 20 Oct 2023 01:24:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619621.965007; Fri, 20 Oct 2023 01:24: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 1qteFM-0007uv-Cd; Fri, 20 Oct 2023 01:24:16 +0000
Received: by outflank-mailman (input) for mailman id 619621;
 Fri, 20 Oct 2023 01:24: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=0mrC=GC=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qteFK-0007up-Ta
 for xen-devel@lists.xenproject.org; Fri, 20 Oct 2023 01:24:14 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 (mail-am6eur05on20628.outbound.protection.outlook.com
 [2a01:111:f400:7e1b::628])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 5ffbe917-6ee7-11ee-9b0e-b553b5be7939;
 Fri, 20 Oct 2023 03:24:12 +0200 (CEST)
Received: from DB6PR0301CA0079.eurprd03.prod.outlook.com (2603:10a6:6:30::26)
 by DB9PR08MB8435.eurprd08.prod.outlook.com (2603:10a6:10:3d5::7) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.26; Fri, 20 Oct
 2023 01:24:09 +0000
Received: from DU6PEPF00009529.eurprd02.prod.outlook.com
 (2603:10a6:6:30:cafe::5b) by DB6PR0301CA0079.outlook.office365.com
 (2603:10a6:6:30::26) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.26 via Frontend
 Transport; Fri, 20 Oct 2023 01:24:09 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DU6PEPF00009529.mail.protection.outlook.com (10.167.8.10) with
 Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6907.21 via Frontend Transport; Fri, 20 Oct 2023 01:24:09 +0000
Received: ("Tessian outbound 36e2b13fe8d0:v215");
 Fri, 20 Oct 2023 01:24:09 +0000
Received: from 1347e361894b.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 3FAE05F4-61AC-4FF6-AF30-7C109472EDE0.1; 
 Fri, 20 Oct 2023 01:23:59 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 1347e361894b.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Fri, 20 Oct 2023 01:23:59 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by AS8PR08MB10001.eurprd08.prod.outlook.com (2603:10a6:20b:632::16)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.23; Fri, 20 Oct
 2023 01:23:56 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41%4]) with mapi id 15.20.6907.022; Fri, 20 Oct 2023
 01:23: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: 5ffbe917-6ee7-11ee-9b0e-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=iBhBFV9Wdde77kOytVt9Rym9kvwEhwRRhDf/L8rLFb4=;
 b=18EIY3j+HBg6InD43UVAVGmZTWHQCkYt081as0oK9aYzPSmu1e0wSdXNfasmKtwvIblafNSbghJAoFUQ1SImLyFHial7wTvOV/qNyThBFSjl95KW2bTypiWS0dUJzQNrElOguCP8P7M7jmYASlA/+Ns9/v5R/L3M+KlhQFAoOtE=
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: 3417ae61d3af89f3
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ivmu6xAk7FrNvDmy11l2mjEshGUbtBQ2WqF2KX9S7ywSzItFlYJpkoogpA8dMCJbFBzTgKB3BMjKXLTxoVzpbT1yH38tmp93YgUbFVjoHGsQnjx3s0lIWgIndx6vDlaiHp8ogB7ZcJSktltaAOpC/EW0LKxbzv+Tk1SrRgVxRjbpd+8QyjfGpvuoNaKbflFFKNZlA/0jVVWpre/wsJ+3iOK/3gA8ro8F/RPhVe72S2ZsJlJHkgblI4t6VgQz52bQfzIw1V1lW2ieDgqWnvxJI7COgyFRG62v1S1hAG/iB5hdnfrDKOuAKzmSy14lm5v0zO9bnLJDa3yXce68c81q/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=iBhBFV9Wdde77kOytVt9Rym9kvwEhwRRhDf/L8rLFb4=;
 b=Ei4TPlC90DexH9aAsjJ+o1R2vBdJcZA1aps42XTz3Q5tmLEdJLUZcnczmJO9mmglRGHtWX/9EOV6qyH1OwqRKvZtsjhX7gT+6zSFop2khjLddSqp9A3CyqYgWs/tlaTKQrRpueFufPiYqhst8xEpkHUVMXPvb2SjVnhW2m6athVPsRS5PvOzb0mpCU2PGrJurGqNFg8r3MFz49D7pqDBxrKK6i4JHXGk56uJ87Svj6R+qYokNI0D9PXMuPvDsSA4vhrr4YNaHrFk/DuFKYDbiXdU6M6KRio9wK5qjo1HUiWCe2/oAOOuf+N+EPW7hvMuxTLHA+DXNgwj5K9boZPOZA==
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=iBhBFV9Wdde77kOytVt9Rym9kvwEhwRRhDf/L8rLFb4=;
 b=18EIY3j+HBg6InD43UVAVGmZTWHQCkYt081as0oK9aYzPSmu1e0wSdXNfasmKtwvIblafNSbghJAoFUQ1SImLyFHial7wTvOV/qNyThBFSjl95KW2bTypiWS0dUJzQNrElOguCP8P7M7jmYASlA/+Ns9/v5R/L3M+KlhQFAoOtE=
From: Henry Wang <Henry.Wang@arm.com>
To: Stefano Stabellini <sstabellini@kernel.org>
CC: Xen-devel <xen-devel@lists.xenproject.org>, Community Manager
	<community.manager@xenproject.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>,
	=?utf-8?B?Um9nZXIgUGF1IE1vbm7DqQ==?= <roger.pau@citrix.com>, Wei Chen
	<Wei.Chen@arm.com>
Subject: Re: [PATCH 2/3] CHANGELOG.md: Set 4.18 release date and tag
Thread-Topic: [PATCH 2/3] CHANGELOG.md: Set 4.18 release date and tag
Thread-Index: AQHaAkwelJ/nqwKyk0yYe6Zf84C1/bBRSfMAgACZlYA=
Date: Fri, 20 Oct 2023 01:23:56 +0000
Message-ID: <8327F8D2-72B7-42CE-A31A-9E845A38DAC0@arm.com>
References: <20231019052050.1032492-1-Henry.Wang@arm.com>
 <20231019052050.1032492-3-Henry.Wang@arm.com>
 <alpine.DEB.2.22.394.2310190913360.1945130@ubuntu-linux-20-04-desktop>
In-Reply-To:
 <alpine.DEB.2.22.394.2310190913360.1945130@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_|AS8PR08MB10001:EE_|DU6PEPF00009529:EE_|DB9PR08MB8435:EE_
X-MS-Office365-Filtering-Correlation-Id: 78e11254-c7aa-4a14-9ed4-08dbd10b427e
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:
 Zb51Qq95BgWp6fGR+r8XFEkte+cHVOX6DrZpnFtuqBhwxb33VMZ1vSrNrGjixgKvweePEOgppem5kAZypI8SaZBdw486bqvo2rmaXg6BilMpX3GDmqqRydLwqxocZ69j8WSYjHiOUndpQw9o7RIp0WHsrgIaC3zyows1+yHAAnZi3gowSQ5GuXLV9gflZgoUBUUXNp6jBmZJV8gPFJ8Xs+7HvgFwdVA9mgQyXpFaLN74aTIftjH60G10bBiyAW/uuCMllBCsAx5xZYHFt1jHzpDpwtE2vG4IC5zMi2xAHcRHcldkIhqDAx4POl6BZLaOqcLNUzju1OPj5z8K6KbaNVM5+7qIJXqQ+EcGEYdivEXb9Yfn7NeYpJUI8p9aj1MJEqcN1G8sUICOOnxIYA7ugz7NBaTW3LwUguO4SIRQF3zjZ3wugyXBAfvZ4qBBZQLh6t9+yqe7b+s8AlGbUI8K50TE+4KemeTLKa2R2QBZ13djFtiYwDjHG7IGdXPPHb/bN+jXGeDOawRGThZ1YI9ZPXeEtTEGe+psLbAKIswzMsfmvD7NEh4Xjj93VLdL/1I/IGsvru7GQnwqEUnfwMch5SFQyNl7scrTxMfRycvvyo2En5v66qUaFSAOtVVG6dVgGq6MgYA3ia7ooqEPUsx4NRI273mtbn0R/F1GMA4BDihCDN/GlqxhpwjjV/sw0SYSh27XAPVIHGDpSNJSByca39WaOEO/tNKwMfOV0ptaEkA=
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)(136003)(346002)(366004)(230922051799003)(451199024)(1800799009)(186009)(64100799003)(38070700009)(4001150100001)(36756003)(122000001)(2906002)(316002)(5660300002)(8936002)(33656002)(4326008)(86362001)(8676002)(26005)(71200400001)(53546011)(83380400001)(38100700002)(2616005)(6506007)(91956017)(6486002)(41300700001)(478600001)(6916009)(6512007)(76116006)(54906003)(66476007)(66446008)(66556008)(64756008)(66946007)(219803003)(207903002)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <36815FC55F58DC48A2AFDD1650140910@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB10001
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:
 DU6PEPF00009529.eurprd02.prod.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	d2c21e9a-20f6-4f68-dc65-08dbd10b3a98
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	tzhjDOf8nwdjBXLrVUoDV1xxgcPdPwEShFNC/LQXMx1Yw+IE/PdUV+h/9YN5wadkV0Tkxj+v91b96cdYdNwD/UCt2+9kMvJxPMC3TIQ9zSssu2n3VERlXUrGWQL70ANSJVvzLAb+9llv61Pqw90Z1fzazAo5bP6WI8eoCEJ+VpIS7mXkl9FgyX0For4MPzEtDOto3iPPQmnwU+vSBkpdPCc6ycb9C5n9zt3vdjTHUDyLNhB/zPcTUVbZz0HgC5QUqDXirHHX7VEYtqoyLLqMUk2vd/iRz6NUdu8BfRIZw+YTK7OloRDCtPU4C6CC0SDzha4X7QhZxD98NyPHdRSQp4prQv3i1alPnV1ZlSbgTwd4sR6GKL/sngnXFuWCdnVEzVxFlJGM88B/0utEpyE7GmH/P+OG3OOOKmvRoNS7xtshFi3ETFQq61L2HXk55Rjcq3FaEvUsrwRkzkmCCtstKsxdjEJCW2rVN7SOtKzrc2Jo4nnkv7DozQtWKprzNnqvOwfrTN8yQgBezNDE9fSO28Us/5f97teniJTTws4eG8GiQ5oVEfdqBoireB4pKzAxevKmOeGGEY8qJZJlX446e5ckrsSY45dhhRU4jEWuNsO20ukpPTaViJFzoCADr9UdKt39UtKrvHKmwY3TPgVstzmwN+hxxyESm8pORs+rlDUJ+7EBkJ6I2eMu2GGps7ePu1rfbEgDFnrUYv3SxVnG9bGE9a4tAy+xGyq7qoPRY4TBFz32nGa9E7QH+ER/yoM08l04ps7AZON0jTPBUkW5c9mnQVi73SS9ajf0EThp/sDdnbIVezsXPJQv/HZHSsvAiOShzV0HhjwKAsDbYTBMUg==
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)(64100799003)(82310400011)(186009)(451199024)(1800799009)(46966006)(36840700001)(40470700004)(47076005)(36860700001)(40460700003)(70586007)(70206006)(83380400001)(478600001)(6486002)(316002)(6506007)(53546011)(26005)(41300700001)(54906003)(2616005)(81166007)(356005)(4326008)(6862004)(8676002)(8936002)(6512007)(5660300002)(40480700001)(2906002)(4001150100001)(86362001)(33656002)(336012)(82740400003)(36756003)(207903002)(219803003);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Oct 2023 01:24:09.3184
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 78e11254-c7aa-4a14-9ed4-08dbd10b427e
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:
	DU6PEPF00009529.eurprd02.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR08MB8435

DQoNCj4gT24gT2N0IDIwLCAyMDIzLCBhdCAwMDoxNCwgU3RlZmFubyBTdGFiZWxsaW5pIDxzc3Rh
YmVsbGluaUBrZXJuZWwub3JnPiB3cm90ZToNCj4gDQo+IE9uIFRodSwgMTkgT2N0IDIwMjMsIEhl
bnJ5IFdhbmcgd3JvdGU6DQo+PiBTaWduZWQtb2ZmLWJ5OiBIZW5yeSBXYW5nIDxIZW5yeS5XYW5n
QGFybS5jb20+DQo+PiAtLS0NCj4+IENIQU5HRUxPRy5tZCB8IDIgKy0NCj4+IDEgZmlsZSBjaGFu
Z2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlvbigtKQ0KPj4gDQo+PiBkaWZmIC0tZ2l0IGEv
Q0hBTkdFTE9HLm1kIGIvQ0hBTkdFTE9HLm1kDQo+PiBpbmRleCA0N2U5OGYwMzZmLi4zYzgzODc4
YzliIDEwMDY0NA0KPj4gLS0tIGEvQ0hBTkdFTE9HLm1kDQo+PiArKysgYi9DSEFOR0VMT0cubWQN
Cj4+IEBAIC00LDcgKzQsNyBAQCBOb3RhYmxlIGNoYW5nZXMgdG8gWGVuIHdpbGwgYmUgZG9jdW1l
bnRlZCBpbiB0aGlzIGZpbGUuDQo+PiANCj4+IFRoZSBmb3JtYXQgaXMgYmFzZWQgb24gW0tlZXAg
YSBDaGFuZ2Vsb2ddKGh0dHBzOi8va2VlcGFjaGFuZ2Vsb2cuY29tL2VuLzEuMC4wLykNCj4+IA0K
Pj4gLSMjIFt1bnN0YWJsZSBVTlJFTEVBU0VEXShodHRwczovL3hlbmJpdHMueGVuLm9yZy9naXR3
ZWIvP3A9eGVuLmdpdDthPXNob3J0bG9nO2g9c3RhZ2luZykgLSBUQkQNCj4+ICsjIyBbNC4xOC4w
XShodHRwczovL3hlbmJpdHMueGVuLm9yZy9naXR3ZWIvP3A9eGVuLmdpdDthPXNob3J0bG9nO2g9
UkVMRUFTRS00LjE4LjApIC0gMjAyMy0xMC0zMA0KPiANCj4gU2hvdWxkIHdlIHVzZSB4ZW5iaXRz
LnhlbnByb2plY3Qub3JnIGluc3RlYWQ/IEkgdGhpbmsgdGhhdCdzIHRoZQ0KPiBvZmZpY2lhbCBu
YW1lLiBJbiBhbnkgY2FzZToNCg0KSG1tbSwgZ29vZCBxdWVzdGlvbiwgYnV0IGFmdGVyIHNvbWUg
ZGVlcGVyIGxvb2sgc29tZWhvdyBJIGFtIG1vcmUgY29uZnVzZWQgbm93Lg0KDQpTbyBpZiBJIGNs
aWNrIHRoZSB4ZW4uZ2l0IGxpbmsgaW4geGVuYml0cy54ZW5wcm9qZWN0Lm9yZyA8aHR0cDovL3hl
bmJpdHMueGVucHJvamVjdC5vcmcvPiwgSSB3aWxsIGJlIGRpcmVjdGVkIHRvDQoiaHR0cDovL3hl
bmJpdHMueGVuLm9yZy9naXR3ZWIvP3A9eGVuLmdpdDthPXN1bW1hcnnigJ0sIHdoZXJlIHRoZSBo
dHRwIGFuZCBodHRwcyBnaXQgVVJMDQphcmUgYm90aCB1c2luZyAieGVuYml0cy54ZW4ub3Jn4oCd
Lg0KDQpIb3dldmVyLCAiaHR0cHM6Ly94ZW5iaXRzLnhlbnByb2plY3Qub3JnL2dpdHdlYi8/cD14
ZW4uZ2l0O2E9c3VtbWFyeeKAnSBpcyBhbHNvIGEgdmFsaWQNCmxpbmssIGJ1dCB0aGUgaHR0cHMg
YW5kIGh0dHAgZ2l0IFVSTCBhcmUgc3RpbGwgYm90aCB1c2luZyDigJx4ZW5iaXRzLnhlbi5vcmfi
gJ0sIGFsc28sIGFsbCBvdXIgcHJldmlvdXMNCnJlbGVhc2VzIHNlZW0gdG8gdXNlICJ4ZW5iaXRz
Lnhlbi5vcmciLg0KDQpDb3VsZCBhbnlvbmUgaW4gdGhpcyBjb21tdW5pdHkgbG9uZyBlbm91Z2gg
cHJvdmlkZSBhIGJpdCBtb3JlIGRldGFpbHMvY2xhcmlmaWNhdGlvbnMgb24gdGhpcz8NCkkgYW0g
b2sgdG8gZWl0aGVyIGNoYW5nZSBvciBub3QgaWYgdGhlIGRpc2N1c3Npb24gaXMgc2V0dGxlZC4N
Cg0KPiANCj4gQWNrZWQtYnk6IFN0ZWZhbm8gU3RhYmVsbGluaSA8c3N0YWJlbGxpbmlAa2VybmVs
Lm9yZz4NCg0KVGhhbmsgeW91IHZlcnkgbXVjaCENCg0KS2luZCByZWdhcmRzLA0KSGVucnkNCg0K


From xen-devel-bounces@lists.xenproject.org Fri Oct 20 01:31:45 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 01:31:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619624.965018 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qteMW-00017t-70; Fri, 20 Oct 2023 01:31:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619624.965018; Fri, 20 Oct 2023 01: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 1qteMW-00017m-40; Fri, 20 Oct 2023 01:31:40 +0000
Received: by outflank-mailman (input) for mailman id 619624;
 Fri, 20 Oct 2023 01:31: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=0mrC=GC=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qteMU-00017g-84
 for xen-devel@lists.xenproject.org; Fri, 20 Oct 2023 01:31:38 +0000
Received: from EUR02-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur02on2060b.outbound.protection.outlook.com
 [2a01:111:f400:fe16::60b])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 67fc2550-6ee8-11ee-9b0e-b553b5be7939;
 Fri, 20 Oct 2023 03:31:35 +0200 (CEST)
Received: from AS9PR06CA0216.eurprd06.prod.outlook.com (2603:10a6:20b:45e::30)
 by AM8PR08MB6596.eurprd08.prod.outlook.com (2603:10a6:20b:369::24)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.24; Fri, 20 Oct
 2023 01:31:32 +0000
Received: from AM1PEPF000252DD.eurprd07.prod.outlook.com
 (2603:10a6:20b:45e:cafe::2f) by AS9PR06CA0216.outlook.office365.com
 (2603:10a6:20b:45e::30) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.26 via Frontend
 Transport; Fri, 20 Oct 2023 01:31:32 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM1PEPF000252DD.mail.protection.outlook.com (10.167.16.55) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6907.20 via Frontend Transport; Fri, 20 Oct 2023 01:31:31 +0000
Received: ("Tessian outbound 028b72acc2da:v215");
 Fri, 20 Oct 2023 01:31:30 +0000
Received: from ca413b4c90bc.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 16BE21E1-0A68-4D0B-9733-D984517DB2AF.1; 
 Fri, 20 Oct 2023 01:31:24 +0000
Received: from EUR01-DB5-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id ca413b4c90bc.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Fri, 20 Oct 2023 01:31:24 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by AS8PR08MB10001.eurprd08.prod.outlook.com (2603:10a6:20b:632::16)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.23; Fri, 20 Oct
 2023 01:31:22 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41%4]) with mapi id 15.20.6907.022; Fri, 20 Oct 2023
 01:31: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: 67fc2550-6ee8-11ee-9b0e-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=bjHqZbRp6oarfR+xLPUKOLup4+ESGzCBPM1m0YmmiOg=;
 b=pqs6lb8+1cCHhQKB3g8ZrejBTs6O/sQHIrLQy/lExDceMR8PKOgbKy+/y7pfatOvgNRWV+3SJX6mSXglRqu43HeESbDzM4c1GlLe1rtu2KGhlsOUaHI0xnfRXfweWbzdKc4QByI7OB0pzOZ7mPK0VfAEr8Dz0F5YuwpKXN+VgTM=
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: 1ba80428a08bffbd
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=V68J9535Xm8egZApl2PFbaWtociL4dc5mrXDyejGKAu4YHYXZThqY+uxjCcEIZXzhsGQbfwmkxvcgGfRBwKmrHnQx2CPELptewAXBbaal7XUS5ux1F5/pGHV3L9aG6BpYr9EpzctEL08BnhXgy4HRcAegIjKKmuy4/ouxfwGbkGSMPeL5GkoJiYVLDZL3x75dYCxGN5G/4ReElH5RVQeAip0UBPCF4R3WoTyGACnVVPTmMBb1nFxpEj6/CODZaP3Gc6zIL9vULwMcux2IvbAVpJz5nBiJkR2dqxvIx5zq6kcPq53fylfWTJZwA+f39I9SrRmrbEjqhJ7Rx/YnLrOCg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=bjHqZbRp6oarfR+xLPUKOLup4+ESGzCBPM1m0YmmiOg=;
 b=bG0VcoU0HjyBxK4/iF+IwB6QUMUHhtyc0qh27B1uViNxUQVYY80cL5JmwHxSny6cex7xs0fWQLGZnPq4O5oUkikX1tD/nzD8/a52UE3jXrMy5gIWstNLOmYF5R0k7T7XTuXXr5T8EA1Tg2lf9yxr4zDeKB+fHEnsBUWhPyu6jEwF0FwCoBusii7eHQaa4/HwGkm4v0Ey9VeWRne2rTMEHUFesmFZ81/Fchsq7CyN/Fgd84T0vlkyGnTPblMqodYfHGAhgBoqdynWWQ6RRk2oq8Y683fo76uHD3XuHHiIZSu9AcgEHB95z2ld+62LJfIU9eayRGzNyjlD/eeTBA/6vQ==
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=bjHqZbRp6oarfR+xLPUKOLup4+ESGzCBPM1m0YmmiOg=;
 b=pqs6lb8+1cCHhQKB3g8ZrejBTs6O/sQHIrLQy/lExDceMR8PKOgbKy+/y7pfatOvgNRWV+3SJX6mSXglRqu43HeESbDzM4c1GlLe1rtu2KGhlsOUaHI0xnfRXfweWbzdKc4QByI7OB0pzOZ7mPK0VfAEr8Dz0F5YuwpKXN+VgTM=
From: Henry Wang <Henry.Wang@arm.com>
To: Stefano Stabellini <sstabellini@kernel.org>
CC: Xen-devel <xen-devel@lists.xenproject.org>, Community Manager
	<community.manager@xenproject.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>,
	=?utf-8?B?Um9nZXIgUGF1IE1vbm7DqQ==?= <roger.pau@citrix.com>, Wei Chen
	<Wei.Chen@arm.com>
Subject: Re: [PATCH 1/3] CHANGELOG.md: Mention the MISRA-C improvement in 4.18
 dev cycle
Thread-Topic: [PATCH 1/3] CHANGELOG.md: Mention the MISRA-C improvement in
 4.18 dev cycle
Thread-Index: AQHaAkwZpuNxj+yPc0utTQUv+u0QObBRScQAgACb2IA=
Date: Fri, 20 Oct 2023 01:31:22 +0000
Message-ID: <B8B61F24-CE9D-4924-992D-A8C43EB22956@arm.com>
References: <20231019052050.1032492-1-Henry.Wang@arm.com>
 <20231019052050.1032492-2-Henry.Wang@arm.com>
 <alpine.DEB.2.22.394.2310190911020.1945130@ubuntu-linux-20-04-desktop>
In-Reply-To:
 <alpine.DEB.2.22.394.2310190911020.1945130@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_|AS8PR08MB10001:EE_|AM1PEPF000252DD:EE_|AM8PR08MB6596:EE_
X-MS-Office365-Filtering-Correlation-Id: 85f47805-8bcc-439a-6ce3-08dbd10c49e9
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:
 KdmEIV+wXFZhjtl5cklgw0CmqrWhjknwUJdRW96siz9Mh/BjJCT+72iYnSJ7KDS13ABCD0tD9NnDDIzGjimhY0RaT0qD9V/4a99bUUHeLkScUFp3qRIT0Azr64oSt1OZK9jCavOpmmxbDXxHZSLjCXyr7DsegrS/qZ8XjvaFfsBG51rN/80LTPT1Rad+SysmxtjoELFc2A3aAv5YKcktHTOeBMfKoKmRylCxgf/hx0T3mFq38/5MZwlhi2hkhiPtnuWU1DDe1orQLw5mdWmE5/xz//Wkejbby1VNU0b71w58pSfHLEc1+KS108d+onnMp1Vdhsme3vm6NLm7UWnro+AYQYVPFE6TC+nT9VnYbt7NozD6lgGDr0bXTt22DawuF5XFCKrh4/po/EvAsjQqp1jaCjHG2Nm2fsiXMEWIiCyvgf3TPjbIgnDdJESXu3Ain8GY2GTG9f5ZuYnbyvIdVJf8HCnFempMPadiA0mEOc8QFBahOOutFVaRSLS4o6pOCb0FhBCEtxJh/cjGQlmuGGFPdVpvcUXFz2PC+7KyIJRwbrJ6KHJsWHtEQR1/Zv6RTXju7y5tonfxrWNpSZBKKZk2PQeeJeLsmPl2Idt1AHmXkEvvvSK6GhEXWtSz1aQhrtanowa+gxqMHx8ec0+vJMgwcjLGnTWBccjJbCtwvSzBwfbiWZlqDePfN6WuHNQD
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)(186009)(1800799009)(64100799003)(451199024)(38070700009)(6506007)(66476007)(66446008)(54906003)(76116006)(66946007)(64756008)(66556008)(478600001)(91956017)(41300700001)(6486002)(6512007)(6916009)(4326008)(33656002)(8936002)(86362001)(5660300002)(8676002)(26005)(122000001)(36756003)(316002)(2906002)(38100700002)(2616005)(71200400001)(53546011)(83380400001)(219803003)(207903002)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <51C6BF9219F46A42A053A44D74DFED9D@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB10001
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:
 AM1PEPF000252DD.eurprd07.prod.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	cef94be6-e869-4280-e5ef-08dbd10c44c0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	a7f9lTGnOA2TjZpSMZcinwx9+R8VcRYFlcRfT+yZyBCLXnpohwyTMc2hmcfTHRigtsGsrqo978zKWEnrrC66aNKf2mlDloTZN+yRzsiezh9Yn0ItmtPdZ3mSQ2yRCk+eF332pnWAdFRkcKE1W5Ls426e/4IzVSrtzkNyYBWMlybSQRGBt0yfgbFXzy+OkzA9I/KNcl5qcEq+X/KEZBTa4XpZENy+jxFK0mTN1qDaV4N0+rZB8IWb0uj21J9gtUun6apWqq+8xoJsq+BBpn/olBn3oDMoOqSc93JwEB7uScZZmgN9sRF06mNm+advxEZq+bRkkhspT0eNo6rHd5fi7rBnxJlm7GCdqziTWo87RVN4q2zoIX+StYGfdzJdmt0ZdtJdtYWyo+EsmoTF2SsXTWxmxKMtKHZhEEW59RFzMPFk6or3WEEhIwe/uUY3bumud5sl4oVEKcywIfqg2iy3x76L5mAbO0S2zOXkG378SKYZMgaQ24EdBbAXo+wi+vsJAcziKRIc9aGYf3HBPEv9itvIvJHtuONepcJzobQX9Zj662dbZZ2I8ivGe04vujD8qSdZBROS/3WVL46/2/yBbY6PaUosrJn8O0hurLNpTVWzkj+s0LXjVdsZdGhGNlUxi4oi2WIPWg6Anjiej0oHlqSGrIyXIfxPu8iCtFNRiYmHYMZG+KjEtDPNh58pUyYnWbmhPGHJ+rjmajLLyNHpaQaJyFQYu8QrdWqnueWLdams3Nus3NGA+MphEt5pssiIGnNg4XbZwc1fW/a55yPgM7eM8sctRvUpfADA+OSM2y4=
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)(1800799009)(186009)(451199024)(64100799003)(82310400011)(36840700001)(40470700004)(46966006)(33656002)(83380400001)(36756003)(6506007)(478600001)(47076005)(86362001)(82740400003)(81166007)(36860700001)(356005)(40460700003)(336012)(2616005)(26005)(41300700001)(4326008)(54906003)(6862004)(5660300002)(316002)(6512007)(2906002)(8676002)(70206006)(70586007)(8936002)(6486002)(40480700001)(53546011)(219803003)(207903002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Oct 2023 01:31:31.2435
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 85f47805-8bcc-439a-6ce3-08dbd10c49e9
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:
	AM1PEPF000252DD.eurprd07.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8PR08MB6596

SGkgU3RlZmFubywNCg0KPiBPbiBPY3QgMjAsIDIwMjMsIGF0IDAwOjEzLCBTdGVmYW5vIFN0YWJl
bGxpbmkgPHNzdGFiZWxsaW5pQGtlcm5lbC5vcmc+IHdyb3RlOg0KPiANCj4gT24gVGh1LCAxOSBP
Y3QgMjAyMywgSGVucnkgV2FuZyB3cm90ZToNCj4+IFNpZ25lZC1vZmYtYnk6IEhlbnJ5IFdhbmcg
PEhlbnJ5LldhbmdAYXJtLmNvbT4NCj4+IC0tLQ0KPj4gQ0hBTkdFTE9HLm1kIHwgMSArDQo+PiAx
IGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKykNCj4+IA0KPj4gZGlmZiAtLWdpdCBhL0NIQU5H
RUxPRy5tZCBiL0NIQU5HRUxPRy5tZA0KPj4gaW5kZXggMTY1YzVjYWY5Yi4uNDdlOThmMDM2ZiAx
MDA2NDQNCj4+IC0tLSBhL0NIQU5HRUxPRy5tZA0KPj4gKysrIGIvQ0hBTkdFTE9HLm1kDQo+PiBA
QCAtMzMsNiArMzMsNyBAQCBUaGUgZm9ybWF0IGlzIGJhc2VkIG9uIFtLZWVwIGEgQ2hhbmdlbG9n
XShodHRwczovL2tlZXBhY2hhbmdlbG9nLmNvbS9lbi8xLjAuMC8pDQo+PiAgICBub2RlcyB1c2lu
ZyBhIGRldmljZSB0cmVlIG92ZXJsYXkgYmluYXJ5ICguZHRibykuDQo+PiAgLSBJbnRyb2R1Y2Ug
dHdvIG5ldyBoeXBlcmNhbGxzIHRvIG1hcCB0aGUgdkNQVSBydW5zdGF0ZSBhbmQgdGltZSBhcmVh
cyBieQ0KPj4gICAgcGh5c2ljYWwgcmF0aGVyIHRoYW4gbGluZWFyL3ZpcnR1YWwgYWRkcmVzc2Vz
Lg0KPj4gKyAtIFRoZSBwcm9qZWN0IGhhcyBub3cgb2ZmaWNpYWxseSBhZG9wdGVkIDcyIHJ1bGVz
IG9mIE1JU1JBLUMuDQo+IA0KPiBJIGNvdW50ZWQgdGhlbSBhZ2FpbiwgdGhleSBhcmUgNzEgdG9k
YXkuIFdlIGhhdmUgYWNjZXB0ZWQgMyBtb3JlDQo+IHJlY2VudGx5IGJ1dCBmb3IgdGhlIENIQU5H
RUxPRy5tZCBJIHdvdWxkIHN0aWNrIHdpdGggd2hhdCBpcyBvbg0KPiBkb2NzL21pc3JhL3J1bGVz
LnJzdA0KDQpUaGFua3MgZm9yIHRoZSBwb2ludGVyIG9mIHRoZSBkb2MsIEkgY2hlY2tlZCB0aGUg
ZG9jIGFuZCBub3RpY2VkIHRoYXQNCndlIGFjdHVhbGx5IHN1cHBvcnQgNjUgcnVsZXMgYW5kIDYg
ZGlyZWN0aXZlcyAoNjUrNj03MSBzbyB5b3UgYXJlIGNvcnJlY3QpLA0KYnV0IHRvIGF2b2lkIHRo
ZSBjb25mdXNpb24sIHdvdWxkIHlvdSBtaW5kIG1lIHdyaXRpbmcgaW4gdGhpcyB3YXk6DQoiVGhl
IHByb2plY3QgaGFzIG9mZmljaWFsbHkgYWRvcHRlZCA2IGRpcmVjdGl2ZXMgYW5kIDY1IHJ1bGVz
IG9mIE1JU1JBLUPigJ0/DQoNCktpbmQgcmVnYXJkcywNCkhlbnJ5


From xen-devel-bounces@lists.xenproject.org Fri Oct 20 01:47:44 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 01:47:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619628.965027 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtebu-0004eq-Ne; Fri, 20 Oct 2023 01:47:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619628.965027; Fri, 20 Oct 2023 01:47: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 1qtebu-0004ej-L3; Fri, 20 Oct 2023 01:47:34 +0000
Received: by outflank-mailman (input) for mailman id 619628;
 Fri, 20 Oct 2023 01:47: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=qnt2=GC=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qtebt-0004ed-UJ
 for xen-devel@lists.xenproject.org; Fri, 20 Oct 2023 01:47:33 +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 a2027d2e-6eea-11ee-9b0e-b553b5be7939;
 Fri, 20 Oct 2023 03:47:31 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by ams.source.kernel.org (Postfix) with ESMTP id E7FD2B82E0B;
 Fri, 20 Oct 2023 01:47:30 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 27E2BC433C8;
 Fri, 20 Oct 2023 01:47: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: a2027d2e-6eea-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1697766449;
	bh=ckDNUVgiCweELcVmuaitrGwswTkGjrwcgUeguKgk9JY=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=G6JjPqWzyDXVMOUOI+de+x3tk2ONed259h7U+/7E2+krsdmVNTXhLj5xVJupdJ+T4
	 8+5mitrFFHCv/dW6u3uGcyrBTm2ADqmo7655OJVM0s3muCUkiH03oVhFoADP/KWTLx
	 zACunUFCfRmMj+bs/nH2g94tWqms/oEUU9KHiKFbHc3Tv1fwae0yY1xJyQq/Mm2mVY
	 92NeNsGgMrLARvII+vI/6ci9pCOOW9ltP+eNFQK08qfBSdRgkMiIml/PyCVLkEtKRd
	 eGYi0sM3bnov3c377qynNeoS+p9U531lVzEBDgQkoOulJYRCJcxWDuP7UJ7AfkKALO
	 KtZPAIoFZ0bpQ==
Date: Thu, 19 Oct 2023 18:47:28 -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: Stefano Stabellini <sstabellini@kernel.org>, 
    Xen-devel <xen-devel@lists.xenproject.org>, 
    Community Manager <community.manager@xenproject.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>, 
    =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>, 
    Wei Chen <Wei.Chen@arm.com>
Subject: Re: [PATCH 1/3] CHANGELOG.md: Mention the MISRA-C improvement in
 4.18 dev cycle
In-Reply-To: <B8B61F24-CE9D-4924-992D-A8C43EB22956@arm.com>
Message-ID: <alpine.DEB.2.22.394.2310191847200.2166344@ubuntu-linux-20-04-desktop>
References: <20231019052050.1032492-1-Henry.Wang@arm.com> <20231019052050.1032492-2-Henry.Wang@arm.com> <alpine.DEB.2.22.394.2310190911020.1945130@ubuntu-linux-20-04-desktop> <B8B61F24-CE9D-4924-992D-A8C43EB22956@arm.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="8323329-451017214-1697766449=:2166344"

  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-451017214-1697766449=:2166344
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8BIT

On Fri, 20 Oct 2023, Henry Wang wrote:
> Hi Stefano,
> 
> > On Oct 20, 2023, at 00:13, Stefano Stabellini <sstabellini@kernel.org> wrote:
> > 
> > On Thu, 19 Oct 2023, Henry Wang wrote:
> >> Signed-off-by: Henry Wang <Henry.Wang@arm.com>
> >> ---
> >> CHANGELOG.md | 1 +
> >> 1 file changed, 1 insertion(+)
> >> 
> >> diff --git a/CHANGELOG.md b/CHANGELOG.md
> >> index 165c5caf9b..47e98f036f 100644
> >> --- a/CHANGELOG.md
> >> +++ b/CHANGELOG.md
> >> @@ -33,6 +33,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
> >>    nodes using a device tree overlay binary (.dtbo).
> >>  - Introduce two new hypercalls to map the vCPU runstate and time areas by
> >>    physical rather than linear/virtual addresses.
> >> + - The project has now officially adopted 72 rules of MISRA-C.
> > 
> > I counted them again, they are 71 today. We have accepted 3 more
> > recently but for the CHANGELOG.md I would stick with what is on
> > docs/misra/rules.rst
> 
> Thanks for the pointer of the doc, I checked the doc and noticed that
> we actually support 65 rules and 6 directives (65+6=71 so you are correct),
> but to avoid the confusion, would you mind me writing in this way:
> "The project has officially adopted 6 directives and 65 rules of MISRA-C”?

Sure that's fine!
--8323329-451017214-1697766449=:2166344--


From xen-devel-bounces@lists.xenproject.org Fri Oct 20 04:51:10 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 04:51:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619631.965038 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qthTL-0002Fp-Se; Fri, 20 Oct 2023 04:50:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619631.965038; Fri, 20 Oct 2023 04:50: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 1qthTL-0002Fi-Pz; Fri, 20 Oct 2023 04:50:55 +0000
Received: by outflank-mailman (input) for mailman id 619631;
 Fri, 20 Oct 2023 04:50: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 1qthTK-0002FY-CG; Fri, 20 Oct 2023 04:50: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 1qthTK-0006Ja-9a; Fri, 20 Oct 2023 04:50: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 1qthTJ-0006U1-Tm; Fri, 20 Oct 2023 04:50:54 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qthTJ-0000iy-RW; Fri, 20 Oct 2023 04: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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=TlriUSCt7xBCkOWd+nfj6uQoP9eaM7BK8dMkbA359Ss=; b=PeinuTXCNDR2QW9azlFwY2CPcU
	WgzEAy4VxI0Pp2s2DS0dWt08tj4IZ1hHYquBGnnS9COYNGyufZmsv2EfJKO6NS7R4jCqZyk+IiBjZ
	nwn1J04y7Z8qxUP6ID/nHg5cT23hMxkwQt/ULU8wvRiiZ6KOwCb69/UNOSEI+lozFcaI=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183432-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 183432: tolerable FAIL - PUSHED
X-Osstest-Failures:
    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-armhf-armhf-libvirt: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-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-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: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-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu: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-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-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-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-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd: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-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds: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-qcow2:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=7cf4bea77ab60742c128c2ceb4b1b8078887b823
X-Osstest-Versions-That:
    linux=dd72f9c7e512da377074d47d990564959b772643
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 20 Oct 2023 04:50:53 +0000

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

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 183416
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183416
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183416
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183416
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183416
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183416
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183416
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183416
 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-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-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          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-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-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-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-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-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-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-qcow2 14 migrate-support-check        fail never pass

version targeted for testing:
 linux                7cf4bea77ab60742c128c2ceb4b1b8078887b823
baseline version:
 linux                dd72f9c7e512da377074d47d990564959b772643

Last test of basis   183416  2023-10-18 17:11:48 Z    1 days
Testing same since   183432  2023-10-19 16:10:25 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  David Sterba <dsterba@suse.com>
  Linus Torvalds <torvalds@linux-foundation.org>
  Zygo Blaxell <ce3g8jdj@umail.furryterror.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-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
   dd72f9c7e512..7cf4bea77ab6  7cf4bea77ab60742c128c2ceb4b1b8078887b823 -> tested/linux-linus


From xen-devel-bounces@lists.xenproject.org Fri Oct 20 05:44:57 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 05:44:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619636.965049 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtiJU-00021S-PE; Fri, 20 Oct 2023 05:44:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619636.965049; Fri, 20 Oct 2023 05:44: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 1qtiJU-00021L-Ks; Fri, 20 Oct 2023 05:44:48 +0000
Received: by outflank-mailman (input) for mailman id 619636;
 Fri, 20 Oct 2023 05:44: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 1qtiJT-00021B-Jq; Fri, 20 Oct 2023 05:44: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 1qtiJT-00085p-Ii; Fri, 20 Oct 2023 05:44: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 1qtiJT-0008N8-4V; Fri, 20 Oct 2023 05:44:47 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qtiJT-0001Qo-3y; Fri, 20 Oct 2023 05:44: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=ki4Z6numpuopNpd6I4sXLQ/j46eY9Q4J0V9K4qK755U=; b=Lcq8gcZCFs/Lyn6GtaIbYubdbZ
	EOmT9uFSbLWDUcH+t+3Lf8PT8ibEqmu0qODnccbQPWwsGWO4iTF0IdTTDjpcRSKIt0Uhou23PVca3
	xBzQUn0eQLEdEfuw1R6CNf+5JvZ3mJX0wvsKtU2pLIZz86ELsIXJkHW0jFwxZ6CJC3ZU=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183439-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 183439: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=bed477d9cf727c1061f1203c5cd61fe1af2e9c19
X-Osstest-Versions-That:
    ovmf=0355e559c6c4a7d3602120045d74e3a1e792fec6
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 20 Oct 2023 05:44:47 +0000

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

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 bed477d9cf727c1061f1203c5cd61fe1af2e9c19
baseline version:
 ovmf                 0355e559c6c4a7d3602120045d74e3a1e792fec6

Last test of basis   183431  2023-10-19 15:42:26 Z    0 days
Testing same since   183439  2023-10-20 03:42:29 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Ni, Ray <ray.ni@intel.com>
  Ray Ni <ray.ni@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
   0355e559c6..bed477d9cf  bed477d9cf727c1061f1203c5cd61fe1af2e9c19 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Fri Oct 20 05:54:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 05:54:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619641.965058 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtiSP-0003w6-JW; Fri, 20 Oct 2023 05:54:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619641.965058; Fri, 20 Oct 2023 05:54: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 1qtiSP-0003vz-GO; Fri, 20 Oct 2023 05:54:01 +0000
Received: by outflank-mailman (input) for mailman id 619641;
 Fri, 20 Oct 2023 05:54: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=8lwx=GC=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qtiSO-0003vq-5X
 for xen-devel@lists.xenproject.org; Fri, 20 Oct 2023 05:54:00 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 (mail-am6eur05on20616.outbound.protection.outlook.com
 [2a01:111:f400:7e1b::616])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 0edc3e31-6f0d-11ee-9b0e-b553b5be7939;
 Fri, 20 Oct 2023 07:53:57 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DUZPR04MB9726.eurprd04.prod.outlook.com (2603:10a6:10:4e3::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.36; Fri, 20 Oct
 2023 05:53:54 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%7]) with mapi id 15.20.6907.022; Fri, 20 Oct 2023
 05: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>
X-Inumbo-ID: 0edc3e31-6f0d-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=LYrnvBTwcSHrB4hyOGuSO3BCVSLi+NaiOQ3u+D5ekkkeNOfgvGLhGNEpabqeFMlQIaOnlTAATQO3yRJCTsAxGUCZYCP8Jigwte52uN2w0/felXoPf8WvlNzxEZMkE5G7xx3zjpWeZi9LrRTzt0zhC6QQu8RCK6ruTdzdmSKmJm4tosotnb/yEnXtgkrgQabNo90Muo9MVp2du8d6J3Ljcf5SaR/Jr9rgAWdjMeIWDyvNzDNCT/ej3bdY4PDuY/B5WYgg5h29zjYOWG2iVeRUNftO14BNR7vUUcB+C8x+bCeVpbA7X6QC3HvP5LdLyZuKo0MTYWH9os0TCc49w8VZBQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=TnXed6+FlfRXN+vh2B6dVIZu3+1w6I3UU8BVo/S6jkw=;
 b=Yi8BolCCC02+kQmF56m/NotM6VycRMfpgayVEB3pv8HQ6eQvFxoBCu6KU7UeBo5ckhRh4ngjmycdYWWhI7zvHJsFC+tMawdZ9YfUqR3iKWRjN3ZlJ22lEc3Z9Y40bUBP4MUQHEpcFga4Ep+cO/LexR4zJYirEs+nTPSEq/ilNoKuIuX2s/lOImh0IS5oe7b9Lm5UBaPGdVt5NTFplfDjTGWPm+/V0I2+hhWRr058Pcpk65Nl6gKHmpbu4C6dQ4gpSog6dZAprzVqI4kMpmGlDjmLVO/fRNZJXFhCuHKI6fvT5nGWo2nOKcco0V1CzYPwBnpOTV+IFxNfDID5blL7EQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=TnXed6+FlfRXN+vh2B6dVIZu3+1w6I3UU8BVo/S6jkw=;
 b=pt2aUqsKmiSeddHqBUkNVxX86ToEiwsQskaPkkRct8t1UNO2VVhORdChGQRUdID0SfytTL1zxYl+3lNN9cJMpqtMPET+Bxt0zptQ6ndBLb6mJvnT861/2i93YLaNFiSqgAkijo+mgRz9shMZ/v1b/ZAsbGtlaxuyOcGhYl5n2n+K1eGmCy36i5Y1fVsSU72yD4NnbzxQAR4uCqltnEbh6vDdQwMV5TX4v2zvbI60zlJ+E+PLtmynJftWptVrCuLKFP5eKRZ7L1RTKu7PhM4yNasAy19+Ccrf5KOVrxZitB3p805uLFsQDl4p8a0ftplIVczz6zh06/XgSBFySDcvRg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <34aefb5f-252d-2992-c561-a73941429c4e@suse.com>
Date: Fri, 20 Oct 2023 07:53:51 +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 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: FR2P281CA0037.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:92::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_|DUZPR04MB9726:EE_
X-MS-Office365-Filtering-Correlation-Id: 315fd15a-ccbb-4502-6ed5-08dbd130f15a
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	Kynz+dElTRj+PsLpTjslcRePI2hlvwl389iUI8PHKBrJV1/3/ECJcY4g6QNMJAeOdIMHjcwOULjJuCK6g4+LjM+bdcE1qKGPpWDvRVei7OT2IjE1btYBmllVvmhNunNRS02JSGA1kFhojgOrch+11RoUFFhoJk4ncaXa6mRB9GB9yyIBty4CAa1iq0Ajj2Au7SSVXlclKya2c00HVClREfw4+UEoxwhJ0y/HNDXdo/7/uQFUHYanm7qLHh00sGb4k3enujLNeYrgA4UOvQ21ipYVVOPOx8Z7BmEvnkVFimzGLVlcyVdUnoKZQMj4pszdVToQX9YVYyPzMbNzDhssaS8o84+oheBF+cfjueCpYTQX8MF6aofOS0X9HcHaznqa5tSNEIuGNULPXaPVInmxyGPYAlA6iDTCPRnYaHmYVMRdkhpGa/H01p9TruHRCxxt8IOeJ2+RyDX5CthHLDIg4t9nqunEtVk4dd0RlmUBXaTCdP8uwRvatdbKwxXcmZU1OpSRzLnE7pKCkxBQmZrPTHwp+y2cDqKCkhv6BmC8I61nbCWf9X6s74C+p3mwKjQDxsYg4vLLvagHzbFdDZAykjQ31hh7sTHRK70QFnTAVWbOZ+WY0M+3ScqaTI23hF4+4sP/b8RcxicwA1wL8EVHfg==
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)(39860400002)(396003)(346002)(230922051799003)(186009)(64100799003)(1800799009)(451199024)(6512007)(36756003)(31686004)(966005)(316002)(66556008)(54906003)(66476007)(31696002)(26005)(66946007)(86362001)(38100700002)(6916009)(83380400001)(2616005)(6506007)(8936002)(6666004)(2906002)(6486002)(478600001)(41300700001)(8676002)(4326008)(5660300002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?WU5kekJLQ0hrZXFkbXEyN3BZRXdMMXFlZ1puOXN3S3Y4RlZzSEIxOU42eFZZ?=
 =?utf-8?B?ZHVwVHFzZTdVUnFiazVhSTNTQzRLZDhneUdYb1hkZVkvaFQ4aS9SOXg3UXp1?=
 =?utf-8?B?M1RyeUpUS25xQXQxb1U4SG5YU3QwSGtFQURZNVBCdXJyQXNIa0RSWHgydDg0?=
 =?utf-8?B?QVA1ME9MWVpFSWYvN1lRSnMyUzhMRXorbUFQZm5iK1dqdzg3MGJXd1pKaGRz?=
 =?utf-8?B?eDZLQkt1REY5UjZTT3dqcnluMGRBYlhhRTJleDZBeEU2bHR4Y0ZCYWtKOGFE?=
 =?utf-8?B?bytENTBlUnlKb0VQMHFQRjFheHJPUHIxaDluQ3ZvaDVYZHN3MXp5U3ZMeEg3?=
 =?utf-8?B?MWdBdEt5WkxIdU1QVk93NFRuRFpXZHQveGhYaXlDM0RPTUpYdFNFRldCbEhE?=
 =?utf-8?B?YzZ4UVNsczUvRWVKd3dnM1NaaVcrbDdCTndrQ0NSc25GVTdHWlJxUTRXUXB4?=
 =?utf-8?B?SFRoYUU3WFVNRjE4N2dCQ3poZEVPVGpjZGcyMEZrTmd0c0lxckFFMW1pZTBY?=
 =?utf-8?B?MUNxVStKL3hSMlRPclgwa1pzSEtVT3I3VS9XcjlpcW5hdGdEZWN1SU1uY1hl?=
 =?utf-8?B?R0FUdHZZZWtGOWptVmtFdlRQMS9SYkhrR3BYVEVqWHRFS1NmejlqMTN6WHdv?=
 =?utf-8?B?eHhZcGJhR3hpQVQ5VkRPU25lNGxXbnIwL1RPVG9iL0xhMGMyOGtUODRmc2Rw?=
 =?utf-8?B?eE94K1daZ080U0pTMmhpc0UySFp6SUhGL2NEaUFHUmVqTm1Ic3N6c2FCM3NU?=
 =?utf-8?B?blBSVWtHanlBeTlJVU1KeTBpRnFERSt2RzJIVHE1ZTZ1c24wTkE4aHM5RDNX?=
 =?utf-8?B?RUJMVFBZa3FHMFBuSElGR2psVm9FVmswZGt3RXk2UHE2aG05K010Ym1aU1VR?=
 =?utf-8?B?ZmhQWU1BZEt6VVd1UFBvYjhUSkVscnRlZytmbmZ0M3hoNzQ4WHFMNVBzcEs0?=
 =?utf-8?B?eGFtb3pnTmQySTlmS1N3aDJOTk4xQ25vRmg2ZkN0cVdDVitQZ1cya043YUpW?=
 =?utf-8?B?cnBZdE1pL0hoVDZEajlVZG8wWE9iOUJ2czFWSkU0SnVHRnl5Znl3dk5VUGc4?=
 =?utf-8?B?OG9id0gwTFVNTXlPaGxpaVAvY3orVzA2ZHFyOUZIdUZ1NzFac05mbWlZc3RI?=
 =?utf-8?B?d29Ld2FLRUNjK3lVN05udkY5NWlSVFQ1NG1xbW9QTnN4K3l2Vm5hU3lpVlh2?=
 =?utf-8?B?SDAvUHE0U0cvQS9VOG8rc3ZFUW5zOFZtZWJFaXVER2owZjhFZjJrWkdnRDlT?=
 =?utf-8?B?SVhiWm5PV21TeWN6M1JXdVZhTGRkME5iZTZ6aE9QdWJ4ZVBPZ2JXNk5nVlZQ?=
 =?utf-8?B?L0plR2JzWmVpbWthb2xJMDhNa25mTEErMUVNUWFzWHJxYU1Ia0xuRVZxcVF0?=
 =?utf-8?B?T2N4cDFCeDExUmw5RmorUnY3K3NNQ2VGRXdOSTBCNWs5MUMvT1pra0hOWDc4?=
 =?utf-8?B?WUNuQkNHUEpBbkY2dXM5NitxMEZSaGxadnlGYXlrbHkrdXF0SllRTGZqOExO?=
 =?utf-8?B?WVhHcGxzTWJRNnBFOFE1a3dPVnpmSTNpQXoxaDNOUFNDWjFSZm10dFRuZ0Rk?=
 =?utf-8?B?UVVrUmNSaFl2Q2x3TWxsV2Mya0VRMkxPYllvWVozV1NFeWlLRDRkdXVycStU?=
 =?utf-8?B?aTY0OUNYMzQ3RmNtcUFYK3grYzFkdTBndVJXZ0V2YUd2emRtQWVCZENMeElN?=
 =?utf-8?B?d053d1lnQmZEZVhIQmprRU1ROENBamFuV3JFVWJkV1hZbWlZRzF5Y1dSWnpL?=
 =?utf-8?B?K2R2c0tOdWFReVVaRUtrVWRmQ1Z4ek5hRGlSYUM1SnNPTHI0TG4zSFhwSXVz?=
 =?utf-8?B?YWFjdGp5ekpGL2pibFltM0lleWkyYThLV0w2bTFocmpuamdBc3BTbVg1Ynlr?=
 =?utf-8?B?QlM2MTZVM0J4UytZeVFSWG9iakhZZFhNLzh2ZGF3YThYM2lsMnV0Wkx1RzN4?=
 =?utf-8?B?OFNlY2Y1Qm5RWFVQWEZycUhNZjFUVGtXUndyVCsycmRNcXlIdS9wTkQ4OEdY?=
 =?utf-8?B?ZUNxTHd3MmFMYnhyT0wyNWdpVVZxaXpPUVFQS2FieVMyL05kbTl3Lzd6MjdG?=
 =?utf-8?B?WFVPYTBZSm9TazYwSE94SzVWUjE5T3Fnb1lUaWJsMXpMcG9hVVhKRjVZK3Vo?=
 =?utf-8?Q?ZHQwMLRBHKSjVrbR1J6lsTtU4?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 315fd15a-ccbb-4502-6ed5-08dbd130f15a
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Oct 2023 05:53:54.4229
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: NW18qSEJfa7uCMnb+ube3b/UaXeIg309eJynxeLHjrBE4VboAlbMIPYUEpKz/8k4RORJIAm+AolEQvtKi/HQJw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DUZPR04MB9726

[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. Note that already for 4.17 it had a
release ack to go in late; just the necessary normal ack continues to be
missing.

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.
---
v4: Re-base.
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
@@ -33,6 +33,8 @@ The format is based on [Keep a Changelog
    nodes using a device tree overlay binary (.dtbo).
  - Introduce two new hypercalls to map the vCPU runstate and time areas by
    physical rather than linear/virtual addresses.
+ - 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);
 
@@ -599,6 +621,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
@@ -202,6 +202,7 @@ static inline bool boot_cpu_has(unsigned
 #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_mcu_ctrl        boot_cpu_has(X86_FEATURE_MCU_CTRL)
+#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
@@ -56,6 +56,9 @@ config HAS_COMPAT
 config HAS_DEVICE_TREE
 	bool
 
+config HAS_DIT # Data Independent Timing
+	bool
+
 config HAS_EX_TABLE
 	bool
 
@@ -187,6 +190,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 Fri Oct 20 05:59:15 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 05:59:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619644.965068 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtiXN-0004c6-9a; Fri, 20 Oct 2023 05:59:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619644.965068; Fri, 20 Oct 2023 05: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 1qtiXN-0004bz-6g; Fri, 20 Oct 2023 05:59:09 +0000
Received: by outflank-mailman (input) for mailman id 619644;
 Fri, 20 Oct 2023 05:59: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=8lwx=GC=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qtiXM-0004br-4c
 for xen-devel@lists.xenproject.org; Fri, 20 Oct 2023 05:59:08 +0000
Received: from EUR01-DB5-obe.outbound.protection.outlook.com
 (mail-db5eur01hn2238.outbound.protection.outlook.com [52.100.6.238])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id c6f0c32c-6f0d-11ee-98d5-6d05b1d4d9a1;
 Fri, 20 Oct 2023 07:59:06 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DUZPR04MB9726.eurprd04.prod.outlook.com (2603:10a6:10:4e3::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.36; Fri, 20 Oct
 2023 05:59:04 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%7]) with mapi id 15.20.6907.022; Fri, 20 Oct 2023
 05:59: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: c6f0c32c-6f0d-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=gubV6prH5Orxw8DrwHsAMsr4nCCApNu6rkNgBdp/iUUfnPGRCTkdeUBXCGKCFTMTLks/msHdq7kEDQWcXNcEqeMQyyWM1NNjCpeoUVkEIa15tXlMBu7kghlwXW9VHV/vkhVPLxdGAywYe8BUgg6G9VYulvof7NflZsC5+mfj8PIEyuLcOHYidSH+fiORjmJBsn6ecX6RvxIk1VCrLo6Ey1IPHcgARyA1yxFPwSHDMZzGyzwlRDEWrmfL81iuXgjd5HMKg6c+g64xUpT3E4scy1pHpzqJoZRM5W6hA94OCvVDQ1rCImV+YI4r2+NrOtwnCmzQfTJ0VnmdgSKy7aTCUg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=UHBpAN4uqbwsMdfZ+zIl2Q1dKnK0ZHKEf8zTcwbz0zA=;
 b=i+Fs8Q9zk8pd4//VPg9TyS2iHWG3zPUHu6QPCnPRMHB3raRky12c/C/Oh8gC12PFWCxJ79Lr56vf/baxuYUA/+7XlLS8E9zlJtfXH5YMiBfbyJUZLQ7TpoJg8ja7cSqiJSnND0NqwJPDdtFSEo4VfXVYTAAiiiIbvHhP83mj3vCb2FYuJwOC45aYEazKuICKtjkzRN2nendUGHLrhFbJ1p1k1LhEh4yYqim41Gg9NXB4NpozbiubEaiTed2fm6sB2G2PRvAu5amLuy+QS8bHwTA/6NkPNtZEzqLafSWZudJHgagrUx8+jvm6l0T20/HnLgn12Q9IqPOpCklfJtb6mg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=UHBpAN4uqbwsMdfZ+zIl2Q1dKnK0ZHKEf8zTcwbz0zA=;
 b=310vCVaCdH7ulk2PVsX8cacD9qaOgzDU7M2+BwIFSZer0HE4/p/LSePvK6ibhJIs+d5Qvr2Jg9daFBoO+JW/IbW1FfRTxBn/sWPcYGnLVqEOX4HqWzn8NHR4T/okIIkyDOloJDMKXoPUphZXcQVED6mVDY4dc2Rbe9XN83mQCEk98ZNo0spvluDzaEGFuRROHvZGuT1WfZPKIdWIsCqHRSKFDuBhfJm7TIccuFw3MzSVcOUAxt8Zy4pZWJpOx+r4fEtOv2xAB80bdES9ZPS5snQXUsD+T6NMPWVcJT7un3vQT/bpLPKNzpp0t6Ud+fE62XsG6gN+7aw9pucegUgROQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <42132ef5-ddf5-a7a4-70fc-ccb42419300f@suse.com>
Date: Fri, 20 Oct 2023 07:59: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 2/3] CHANGELOG.md: Set 4.18 release date and tag
Content-Language: en-US
To: Henry Wang <Henry.Wang@arm.com>,
 Stefano Stabellini <sstabellini@kernel.org>
Cc: Xen-devel <xen-devel@lists.xenproject.org>,
 Community Manager <community.manager@xenproject.org>,
 Julien Grall <julien@xen.org>, Bertrand Marquis <Bertrand.Marquis@arm.com>,
 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>,
 Wei Chen <Wei.Chen@arm.com>
References: <20231019052050.1032492-1-Henry.Wang@arm.com>
 <20231019052050.1032492-3-Henry.Wang@arm.com>
 <alpine.DEB.2.22.394.2310190913360.1945130@ubuntu-linux-20-04-desktop>
 <8327F8D2-72B7-42CE-A31A-9E845A38DAC0@arm.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <8327F8D2-72B7-42CE-A31A-9E845A38DAC0@arm.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR3P281CA0193.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:a4::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_|DUZPR04MB9726:EE_
X-MS-Office365-Filtering-Correlation-Id: 501525e4-c95d-4ca7-4a4b-08dbd131aa36
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	=?utf-8?B?ZStSbXNPWWVxTnQxY0VvWndXcmVqaDRBTVdGRFUzc2IxbDdBMW5lK253eEJP?=
 =?utf-8?B?d3pQTWowMGxmcmwwY2FJa0hjMmxIdXdpNUREUHVwNStnYkVmV0wzRU1OeDlQ?=
 =?utf-8?B?em00UTZuTUZ5V0p5VmVVZ1IxVUd3aUtjNUltRGlob2hYVDZ6WUxXQlM0c0JR?=
 =?utf-8?B?Y08wUktCTTVYY1dBbXVwanhrNmFMUVlSa2E4RXlSQUxhTW1ybmxwNnFpZGN0?=
 =?utf-8?B?akFGNGdpSEdqQjdQUUROZkxtK1hBMjd3SVZmUnM5Qy9KMlBzWFRFMGdueG9V?=
 =?utf-8?B?MHBTYWUzT2t4djZwT1AvUm9DZ29pcW5Qb3N4TnhYeExobS9jbVQ5OW5Fc0tm?=
 =?utf-8?B?N2JmRE9ENjNwVVMySm90YlFDTThteFUxMzEvZTV2TldJQm16S0ZkMmRwV3pZ?=
 =?utf-8?B?K296c1RzZEM5NVgzRkZ6NnJ3MTI1SkM4QU8xbkhjNDcrTnRlNjNpRHJvNE1S?=
 =?utf-8?B?SlVSNWtZVk4vZHF5a24vK2pVdlhsbGMrQm45S3c0TDJuOXNmSFpLMjVDQmpJ?=
 =?utf-8?B?YjVNOWdycW1VVkxRUEtEcVIxL2VGQW9EaEo5YVlMd3RTcDExbUN0QUlCd1Y3?=
 =?utf-8?B?YXpWZExwVDhoTzFWNUpyVWl1dUprOEhsTW8zRFg0WmlCdExrUHZmMXRIanN2?=
 =?utf-8?B?N1FQaHMyN1JXUENUWDhocjRzbkZBZmdHYm9ZbTYvQVhmNWRiMFlTbkpMbXNV?=
 =?utf-8?B?OWQwOWo4aWhoc2plb0hPMlBtTWwyeVZkTkxqUXNhbG9MNkJoY1BpSFRVVjBl?=
 =?utf-8?B?ZXA0WnozaStSd1lkUDl0RS9xYU9sWjNxenZXWXdEUjRLUE9vRXQxaE9PVkNo?=
 =?utf-8?B?MFg1eGY3d0loV242Q1JUSENUN25LZTFLeE1JczRqK0cxZWxDSjBncmVZTFBW?=
 =?utf-8?B?cDNFdWZuUS93WTZVRjc4SVpZTnRLZnJRN2duQ01VVjN5SG9EaFJqeG1odEMx?=
 =?utf-8?B?bmR3SkZjZGpIamF0TWdaZGhJSVcwOGtvbHVWT2FxUUxjTGNxUktISXlKNkJP?=
 =?utf-8?B?OUFwRmM5RlhyMUhkNVNQTWtJSnoyWUE0S1REOWJwQlVjZFNmb0FqMTRVK2Nu?=
 =?utf-8?B?WjVYbkZieURrUGxlZFJEUmFTcHNCRHl4dU1uSmpQaVRQSzVqb01KZi9McVB3?=
 =?utf-8?B?TERveHp4clVHTEVxSTFNTHJDNlNzamNiNjZaeXBpRUp4eDlodjYwT2VzYXRB?=
 =?utf-8?B?bWR3K3JQeWM5K0VJOVJNR01JVXl3QXZsZ3NFUVd4YmNCK1RhVkRMVVpkeWZI?=
 =?utf-8?B?dEpCZVVMajFXYVk0UmcvNzdvcDFEM2w1MENHTXZ4R0pweXpXU0xCTXRESk5N?=
 =?utf-8?B?L1pFYzhSUTRRRzJtaURlZlZKM2ZwbHcrVUF5VUs5UU5BV0V3ZFM5UWlQYlhu?=
 =?utf-8?Q?+2yqf7M4XaAlmtc1YRYf+u8ahLRkJPrA=3D?=
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:5;SRV:;IPV:NLI;SFV:SPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:OSPM;SFS:(13230031)(376002)(366004)(136003)(39860400002)(396003)(346002)(230922051799003)(186009)(64100799003)(1800799009)(451199024)(6512007)(36756003)(31686004)(316002)(66556008)(54906003)(66476007)(31696002)(26005)(66946007)(86362001)(38100700002)(53546011)(83380400001)(2616005)(6506007)(110136005)(8936002)(7416002)(2906002)(6486002)(478600001)(41300700001)(4001150100001)(8676002)(4326008)(5660300002)(71176010)(59356011)(219803003);DIR:OUT;SFP:1501;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?ckNHb2h5eHRNdnppSFNlYUo5VTFhS2hxT1lET2xyTkRBcmg0czBPYmxhR2Q2?=
 =?utf-8?B?dzUrd1RjcHY3OU94UlZPTG1mTkJTWWMzWjhtTHZLSU96OEZXUzJJYUl6TmdX?=
 =?utf-8?B?M0p2ZklWZE5KWVJpN2JsanRtUWxKdS92RDUzeFhEUVFGeHpKYkVJUWFyZmhM?=
 =?utf-8?B?Q3JHTk8rd3FEU0dSQWZoOUhhREdRVjBlcXJPQS9DSlBjL003WEVxUFpqL1Bi?=
 =?utf-8?B?bm9MTzFHNk05WmVvbWlWVnpkWm9Ed0dMYnI0QkZTY3FyTEtQT2JlbWdwTG02?=
 =?utf-8?B?VmxrWU95VFUrQlNoTTY3TGxIU1RDNWJzOTRBOVo1eVRvWXZDVVNESFZsR2Z1?=
 =?utf-8?B?Q2JzUmcrMis5SmV4eVUwOGRUV1pqRWRrZ0dIci9jNVhUUkJTZzIrMC9rUmpz?=
 =?utf-8?B?NzFheng2bHhoanlyR3VDY1RsQXFkRG8rd1dwYnVPSE8yWmQxL1VyWTRoSG1H?=
 =?utf-8?B?ZWhTSEJocjlmKzFzRnk5clZXNytsdWt0LzBZT28zZjJxb0JSanM3cUFZems3?=
 =?utf-8?B?TVg1U2YvWG9NTWU1bE5yUlh4cTAvUGd4VWp4WDQrZEFoaTdJeXlOWUI2eUYz?=
 =?utf-8?B?TkhDUUhLaGZNUXNVUlptUUdoTU5jWVJueXU0eHkxdFRxYk9iL2dmV1pncmp1?=
 =?utf-8?B?SjFySEZORVBSZDhSc3AxSXJkdlFDVXZ4TGxMVFNnN05NVnRJMlBqUlY1QmVj?=
 =?utf-8?B?cWI1NGVzTWdCM3hyVHV1aVl1TkRKK3VtZXlHMFpFc3lkNm1kK0hLVEkveUlS?=
 =?utf-8?B?bUxlSmxqZE5CanFqelNrMzZsUTh1L1MxY1FqWDhHV2V3S2dINUtHZ2twWnA2?=
 =?utf-8?B?M1FuRzVpamRMMGdwWk5EZ0Zucnc2a1N5UEV3VSsxdVpLNE1pNUdueUVFYXNo?=
 =?utf-8?B?czl4WlJjQ3hta2ZxZTR3L3V3b2EzM0tlb2dWR0phbktTd3J5TW1IWU0zWW0y?=
 =?utf-8?B?S3JuL0FGMnY0T2NqOHhmNmxsUFFlaXdEd2FFTEdrYmVmYWpXVlhOOGhScTJ6?=
 =?utf-8?B?UTg5c1VVVFhsMndXc2luS0RyajZqdmdoNTVNMXluNzA1MVpFN2ZCRExjbEU4?=
 =?utf-8?B?YnRaZUJsNEQ4YUppVkVJa2tpa0VzK3ppVDJhU213dFBaMnoveDR4YkpMV0dy?=
 =?utf-8?B?eE9vYUt2UDlYNGRRbFBkNzIydWROZnRoYkJiajFVWnk2VHZma2ZrS0kvazRZ?=
 =?utf-8?B?S3FYaytyVVc3eGJ1TGNsbmVQNFNvdjk5V0piNHMwVnFtYnI3cFpYV3FEcUZm?=
 =?utf-8?B?WldWa2hpenRscjJQZm9LeWlxY05XNW1xQ2U0SlRuaERKOVY4S2p2a20xVWdt?=
 =?utf-8?B?SWVCeVY1SmwwWE5aUlFSOU5BSU9RWitBbUllMTVUcTNYTFBJUVQ2bDZhUEcx?=
 =?utf-8?B?WlFSOW5Qeld2a0cyUVVpRW4ydnVzc1o4bXh5MzBCNnI1OTM1Yjh6T2MvdStx?=
 =?utf-8?B?RDVHRkJMcUxxZkRsc2RuZ3dZdlkvQVRUU05CWmJkOEc3aks0bVJYNmE1Y0Rm?=
 =?utf-8?B?MUFIUXdCT2RWaWVPR0ZoZUVRUUplelZLdXVRb3g0SzQwZ2syT25va3B5dVFp?=
 =?utf-8?B?bitneXBLZVAyZjNUa0hwK0RaVUZjUEp4c2E3eVdzY1Ezd0NIeXMxSzFrT0sw?=
 =?utf-8?B?aDhFQk5wL2RsZmJ5M0NsYnhhSXNnSjhtY0FDeldkTXdSOHhuL21TK3VHMWJN?=
 =?utf-8?B?UlVoQy9wdGpTTmx0ZVhjczY3VG9SNzdGTGlha3pDYTVQUUF3SEMzQ1FIdVpM?=
 =?utf-8?B?Z1lhckw4b2dZdnRpU0NuRzUyTi9CV3VKMm9kSTZOMThSTUN3SVU0Rlk1aWhP?=
 =?utf-8?B?ZjQyeXFqUkUwYjlSQi9pR05LcjEyUTEvMUpWUHpzVk9UQ3E4OWU5bWV1WE4v?=
 =?utf-8?B?clc0RDhpOHNTKzRKbklXd3JWZURiVmR5Y1VORGpYYWZvc0hIZ2k0ZXFWTk9U?=
 =?utf-8?B?cnpCa2VscGJGWk1JL2FlRjFPVDA2M3hMTzk4a3BIQ0dnL05TTTdhbzl5M0Zh?=
 =?utf-8?B?dGRIdHRCNnBZUlByMFgzZGpRZndGMWl2eHRHRVZjdHVtbXE3U0lHK0RNYWhU?=
 =?utf-8?B?RmtPcitnamdjeGw3c1VvOUxkSldURGpCSm1RQVZjOWJFT0tzTU54cHVma2ZY?=
 =?utf-8?Q?mmpVzGnPcEII8bmwH0ByLr+hO?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 501525e4-c95d-4ca7-4a4b-08dbd131aa36
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Oct 2023 05:59:04.3715
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: eqvCboaFpYpuSiwDeM5necAZftPA2TzMTngUkrMjxltuhzCiQ9U+fxeIJ9k2hL1NYjYThKIPWZbD3iT9Vsn6hQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DUZPR04MB9726

On 20.10.2023 03:23, Henry Wang wrote:
> 
> 
>> On Oct 20, 2023, at 00:14, Stefano Stabellini <sstabellini@kernel.org> wrote:
>>
>> On Thu, 19 Oct 2023, Henry Wang wrote:
>>> Signed-off-by: Henry Wang <Henry.Wang@arm.com>
>>> ---
>>> CHANGELOG.md | 2 +-
>>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>>
>>> diff --git a/CHANGELOG.md b/CHANGELOG.md
>>> index 47e98f036f..3c83878c9b 100644
>>> --- a/CHANGELOG.md
>>> +++ b/CHANGELOG.md
>>> @@ -4,7 +4,7 @@ Notable changes to Xen will be documented in this file.
>>>
>>> The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
>>>
>>> -## [unstable UNRELEASED](https://xenbits.xen.org/gitweb/?p=xen.git;a=shortlog;h=staging) - TBD
>>> +## [4.18.0](https://xenbits.xen.org/gitweb/?p=xen.git;a=shortlog;h=RELEASE-4.18.0) - 2023-10-30
>>
>> Should we use xenbits.xenproject.org instead? I think that's the
>> official name. In any case:
> 
> Hmmm, good question, but after some deeper look somehow I am more confused now.
> 
> So if I click the xen.git link in xenbits.xenproject.org <http://xenbits.xenproject.org/>, I will be directed to
> "http://xenbits.xen.org/gitweb/?p=xen.git;a=summary”, where the http and https git URL
> are both using "xenbits.xen.org”.
> 
> However, "https://xenbits.xenproject.org/gitweb/?p=xen.git;a=summary” is also a valid
> link, but the https and http git URL are still both using “xenbits.xen.org”, also, all our previous
> releases seem to use "xenbits.xen.org".
> 
> Could anyone in this community long enough provide a bit more details/clarifications on this?

Well, "xenproject" appeared later as a name, with the intention of
becoming the "canonical" one. Still it was likely easiest at the time
to simply add respective redirects in the web server(s).

Jan


From xen-devel-bounces@lists.xenproject.org Fri Oct 20 06:01:23 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 06:01:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619648.965078 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtiZV-00066X-Kw; Fri, 20 Oct 2023 06:01:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619648.965078; Fri, 20 Oct 2023 06: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 1qtiZV-00066Q-IO; Fri, 20 Oct 2023 06:01:21 +0000
Received: by outflank-mailman (input) for mailman id 619648;
 Fri, 20 Oct 2023 06: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=8lwx=GC=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qtiZT-00066K-Ne
 for xen-devel@lists.xenproject.org; Fri, 20 Oct 2023 06:01:19 +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 1556cb26-6f0e-11ee-9b0e-b553b5be7939;
 Fri, 20 Oct 2023 08:01:17 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM9PR04MB8308.eurprd04.prod.outlook.com (2603:10a6:20b:3e3::10)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.23; Fri, 20 Oct
 2023 06:00:47 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%7]) with mapi id 15.20.6907.022; Fri, 20 Oct 2023
 06:00: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: 1556cb26-6f0e-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=HazNaNPJYalHQA+WzHDi2WkBqEKYgwC6XSu2N1yOiwZEeBsqLu9HVEFx01o16VhPz6rlbPVXJwedUxOkplLkjVzrf5ySSuHFRex2IymXwERicAKv5V6iBqzvxsgQsvn8Qx5dxwWwW+vT37Njh1O7LgeoGWCf1IzratIdBMdCbvCbb/UVwJyOs2LAakVo7+VF2CnUR1tValF9lRKQT9KB3ln/wrXOuhJhIgtk3VV05b7O5j8xwgvnlQkawaYxyVAOYlCbHVwuXtAdNNkl4OHAW+opleRXpPo4AwfXX2qbQiNo3qXwEXE/djXG/xasIwDOTYZmIHdnG92Kl9/wFC05gw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=xTd/oCJBDYMt323PEN9Omyh1OxMJyiOr/HXogrOc7OQ=;
 b=J1D5PkqMFn/tYpa8gX4hqmfh5tFwq0S8IJqe+DeQbLL/s88HE2/PGsVpwI/dS6PZT6a2T4rMF9UM5Vj+4JulH7yIi3T9n3dSVMBasYC5vlQA7f3lDZCSnISurp6xiAvw7+nfYdIDbrwhS7J+4CZpd08iglQhr4xNiVa6qe2nzZCp64UB2TjWp3TIBoENqP9+rhjZjgFHGs2N4LgYbAll1zQeyvWBKbBQ9w3uHjjgs52i2ZeOvdtZtQjAg7OlUD4fVtUIyFd8SO+1KKGXffFCDA7iJTZTwgFMqg+rbVdnvd/c7NlurVrDjYcs6G4kwm7bOKsnJvwUYPIL+WigTfJutw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=xTd/oCJBDYMt323PEN9Omyh1OxMJyiOr/HXogrOc7OQ=;
 b=EgSRfBjx98ZM2pw5MOQzpDH3Xa2iBfBuALXXIPH34fQjC7cv6GEW2vR8v3jpwvECBAXTfF5I8pdXXrlpOGGkecV41MVIrcUcU+P1YcpeAzJ5rwEgyxGN+5PHda9OKS/PZqB1Hl5+MVy/32iPOJyrwePfe0Eq1Z9Z3nBQOx4pDVnfY0b0F0jUo+up40eedEgs/JB1PE0YgH6/lzU9uvu2oZoMy6pzUiGXAd0B5wdg7DCYHw4mohQjT6pDYYzZZurisqnUOrWVMURftOqBaoCadOdzv72iFtZPSXC05VrNMbnlxcRHc8IST58rPfsPXc8q5oCSdEnpXsgjqkdYXugpRg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <9ab86d00-b539-25d1-4830-80932babcfbc@suse.com>
Date: Fri, 20 Oct 2023 08:00:43 +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][for-next][for-4.19 v2 1/8] xen/include: add macro
 LOWEST_BIT
Content-Language: en-US
To: Stefano Stabellini <sstabellini@kernel.org>,
 Nicola Vetrini <nicola.vetrini@bugseng.com>
Cc: michal.orzel@amd.com, xenia.ragiadakou@amd.com,
 ayan.kumar.halder@amd.com, consulting@bugseng.com,
 andrew.cooper3@citrix.com, roger.pau@citrix.com,
 Simone Ballarin <simone.ballarin@bugseng.com>,
 Doug Goldstein <cardoe@cardoe.com>, George Dunlap
 <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Wei Liu <wl@xen.org>, xen-devel@lists.xenproject.org, Luca.Fancellu@arm.com
References: <cover.1697123806.git.nicola.vetrini@bugseng.com>
 <bb0ba44f8a3944c22a1c7cf19196c7060e8adb4b.1697123806.git.nicola.vetrini@bugseng.com>
 <93408661-721b-c4b3-d504-e65142bbdaea@suse.com>
 <42ee4de54f6d9bd80fb50db3545cbaf4@bugseng.com>
 <08286993-6a83-b928-6398-e129397927a0@suse.com>
 <9002a10f872fccc5217faab2f20ad5ba@bugseng.com>
 <alpine.DEB.2.22.394.2310191253440.2099202@ubuntu-linux-20-04-desktop>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <alpine.DEB.2.22.394.2310191253440.2099202@ubuntu-linux-20-04-desktop>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0367.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:f8::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_|AM9PR04MB8308:EE_
X-MS-Office365-Filtering-Correlation-Id: a8b22108-0a01-4970-4ba7-08dbd131e75b
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	FUa2x59J9VUahMo5e4qMdlH/rD0/uB5qPPY/XSlprHPFsqUAdYwcYTqu4vLELl0UEe6BG6Fb018Mk60R9nTARD/zyiI2pqp8m5pdVM0nafcFmaer4lBlgaqvaUVfSIztf0DMWGnHsK/lZz3KcP6TqcpT+xsGhjORmaxD6msowiZ+NNN7d1mYgvgrj3UWtdh1/CZMG3q6lircj8OeLXii29xwUX2IjxH/Kzc84D/uHohovNvIlu1m9wedCF7IQec0ZBh3zxPuW4H43lYjh9/GHqSHydeIa6N0juAzLT9PXoIyj0HKSvRI/XXtpb/d8SV9RXMq4NveDu7CAwIoeV8vvcKXEvb2+e1VpCAuBzqjqov36teGtLEZkCFUviVvN8p1S8o3O7X1BQ+Ib+pHR1X2hBjxyDZBiINg/u+9JuK0OklCHH/i7k9XzfJzIx1LQM/7CeBev8m8vggsNW7SDsUIq3Y4ieiUrapbDDHKVGdeJ2M69V8ofGiHN6cbl9lJWWhgRPphtLZ8nNMsFa6P+wzyYqjTErbZwpdtihwB1aF6ag1VtHcC7Zs4L1uw28OXLx1ypkp0080Gd5qwGN6iiSqyubfnALVgTMqAUl8wceP2jdWD2VhmVpHRLhrJZa/1Sy/+FenAl2uT/H/b96vKDTKdkg==
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)(39860400002)(346002)(230922051799003)(186009)(1800799009)(451199024)(64100799003)(53546011)(6666004)(6506007)(2616005)(6512007)(41300700001)(8936002)(4326008)(6486002)(38100700002)(31686004)(66556008)(66476007)(54906003)(8676002)(110136005)(66946007)(316002)(478600001)(26005)(7416002)(5660300002)(86362001)(36756003)(31696002)(2906002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?WGJCZzB4aUo0eHVPbmtCTXFiMHVTNFpPS1JNN0ppUnZRb3A5Tyt5c2xmbVND?=
 =?utf-8?B?OXdFMU9XZWJKQ0V4TEo4S0dRSGlyaUIyNnRsSnpaKzNmbTgzNFdTa05FTHRD?=
 =?utf-8?B?d2VYSDBMZUdDUTdSSUJVaVc1QzR0UFgxcU9tRXBVdkswUWFuZ0QzcHoxSjMy?=
 =?utf-8?B?LzhwbWJicWxMQ0dVZmY5cTR6T3g2VkNLb21Vb01tWkUvc3BHR0dDazRWYjJQ?=
 =?utf-8?B?d2x3QWtSR1hzS3ZuQ3hkQnJGN1NLY3JNaUtHQ3NuOUNHbmxYbGpoZzZMMUU1?=
 =?utf-8?B?K1h5TWY5LzRTei9LQWhuaDFVTlJQd01VbVBQTlMxaCtySjlMRWJYTi9abDRD?=
 =?utf-8?B?b1Z5ZDFLS3VUZUduMkM0ck5PaW5wMlhCN0U1UVc4STNwUkh5K241MUs3ek5X?=
 =?utf-8?B?QVhiOTBjTkw5TGFTN2E4YXBETnp1dVFSMCtUVjVyV3J3N0o3MldSUERuWmsw?=
 =?utf-8?B?dlo2NUpJU044MEVSNTlUYVRqbmlqa2tzcHpzLzBPOUJ2aUVIMSsybHhwZDJJ?=
 =?utf-8?B?cGJpZmlsWkNDaDU1MkhNSjZHTm9ySjFVTW10Q3B0TSt2WXdHbXdWUldFUUxY?=
 =?utf-8?B?cERxVjVjN01oaWFLUjJuajd4WE4wa3NRRVFWbjhnNm5CRGlSb1NwM3hMY0Yr?=
 =?utf-8?B?dmNvR3ovMm50WDJXT2xYc3IwYUFKaTg2VWNFUkFWckEvVHlxRlVOaHl1MG1a?=
 =?utf-8?B?bnVzTWd4UU9FYVRyeHJuOXNMd3FINVRHVmNTNGVMU0ZKUEU2RW5vWmtWOXZK?=
 =?utf-8?B?bzRCQzgvcFdUVFpnSnJtNVRwemtFelYxaEVHdklvWFg5V3IyT3JZUnNGYWlq?=
 =?utf-8?B?RnJaZTlndDdlbEQ4L1NBRmR0NzVCaXB0aW5rcmlCb2VKUTRpd0tIZ0NwZzZi?=
 =?utf-8?B?UEwvM0ZPZTNpUlQ1YWNiVmNHY3liSGc4T08yaUZ0MzN6S2FwT0ljSVd1d0sv?=
 =?utf-8?B?WjNGRFJBR21qdEk2UUlLQXZTdzJhMU5XSjZ0K3h6bFhlU2NFOFNMcnV2YlRI?=
 =?utf-8?B?VTFnRmVXYWxmWFZTODhuWEtCcXV4Q2JWdVpqaDJRVjYyUUd2Vk5HcHBxRWNL?=
 =?utf-8?B?czd0R09DUWdoQVJmRC9adEhIbnU3THJKanEzTXNWNFJSV1hPOSt2NXNLcWR2?=
 =?utf-8?B?dUVkTmxJWHJ6VmdpZHZ4RWdTM0dZSWREUWFVRkhEbWJhYktuRzcyc1lDT3Y5?=
 =?utf-8?B?c0JBMjJCYU81TDlPR3E2S1FaWjltTEdQQkZpL2ViakxNS0lJN2tEbG0vY05l?=
 =?utf-8?B?NnNaK254L1VVc0psWkUzaUg2NnZscDV1aHYxYmE1VFJJQytkTlpONmlubWY3?=
 =?utf-8?B?bjl3UkFvMFo0WHFUb0lJVk0vY0ttREFUWjFnOHVybjlqWGFNeERFdmxxbEVl?=
 =?utf-8?B?aVdMc0RDZk5RWWVUQlA4dmdWVDBxZSs5Q0RmcXUrQU5oaDQ0aXZnbGxaWkZL?=
 =?utf-8?B?RURpS2FGNzVjbE9yNml5ZzE2QkZxTStUVXYxaGt3YnNqRmF6OFp3MnVjRm5X?=
 =?utf-8?B?elpTOSswODB4aHNQSDBXTllqUnVYbG1yaHhSQXBWR2Z3N1ZTaFM0WVNGSWR4?=
 =?utf-8?B?NUQ0RnpWb0x0QmFKOGFMZzlIVmdPUnlSWDUyS1M4QkYwajZDWnNzZWs5MUtP?=
 =?utf-8?B?THhzLzVubXpBeWhiOGVraVBLQXMvQUhlMytnZHV6Sk5tMjgxTTJnSldDMWFt?=
 =?utf-8?B?KzZjL3JpVEQ1akJZanFJK1Q5ZWxHVFRYaVRBb2FkeSsrY2NsZGVzSXM3YTFv?=
 =?utf-8?B?bXIzVEVlcEIzWWxMUnorb1NJOERjT0l1T1I2NWpmZVowL1RybmxFUzNEZE9t?=
 =?utf-8?B?OU00L1RXVllmVEw4eTJOYUJETU5wWHB0NlZ5RmRURTJtUFR1eEhML051a3dT?=
 =?utf-8?B?UC9RRkNMU3VMOWVzN0xzTjNZOGFnaFNxQlROMno2WWk3WmNuaVRaTmZ1YzQ4?=
 =?utf-8?B?UmpsancxTlpCcnZDT3ZUbDFlSHMzRU8yRGQwQWgwVE5xT0ZBQ1p1TGJQQUFF?=
 =?utf-8?B?RTdSRko0NEpFQVJ1c1owdkZhZWNwQlNVaWd2djExVFVjZ0pESjlnRktnQlMr?=
 =?utf-8?B?dVBJaW5zL0R6dUlXSklDL2NnZUhKTGhuNkVQMTRDaDVRY1ZGOGRNT09Zb3RO?=
 =?utf-8?Q?KtHULGRsq95izYNOaM1GVku92?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: a8b22108-0a01-4970-4ba7-08dbd131e75b
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Oct 2023 06:00:46.9427
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: lNLX7c1Ipr6lxgfqXaHmta1r0cuWJjNPw0/EgVbm0/yhiT2j/QejJS3P4ai9Gb/N2Gc9w1t2xtSG43eF+EDN+g==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR04MB8308

On 19.10.2023 21:58, Stefano Stabellini wrote:
>>>>>> --- a/xen/include/xen/macros.h
>>>>>> +++ b/xen/include/xen/macros.h
>>>>>> @@ -8,8 +8,10 @@
>>>>>>  #define DIV_ROUND(n, d) (((n) + (d) / 2) / (d))
>>>>>>  #define DIV_ROUND_UP(n, d) (((n) + (d) - 1) / (d))
>>>>>>
>>>>>> -#define MASK_EXTR(v, m) (((v) & (m)) / ((m) & -(m)))
>>>>>> -#define MASK_INSR(v, m) (((v) * ((m) & -(m))) & (m))
>>>>>
>>>>> a SAF-<n>-safe comment here?
>>>>>
>>>>
>>>> One reason is that now that violations only belonging to tool
>>>> configurations
>>>> and similar are documented in docs/misra/deviations.rst (committed in
>>>> Stefano's
>>>> branch for-4.19 [1]).
>>>
>>> But tool configuration means every analysis tool needs configuring
>>> separately. That's why the comment tagging scheme was decided to be
>>> preferred, iirc.
>>>
>>>> Also, there were disagreements on the SAF naming
>>>> scheme, and
>>>> patches like those would not be accepted at the moment.
>>>
>>> Well, that needs resolving. The naming there shouldn't lead to patches
>>> being accepted that later may need redoing.
>>>
>>> Jan
>>
>> While this is true, in this case I'm not willing to deviate with a SAF, given
>> that
>> some ECLAIR-specific configuration would be needed anyways, given that I'm
>> deviating a macro definition, rather than the line where it's actually used
>> (and maybe other tools would need
>> that as well).
> 
> Did I get it right that the problem with using SAF in this case is that
> it wouldn't be sufficient to add a SAF comment on top of the MACRO
> definition, but we would need a SAF comment on top of every MACRO
> invocation?
> 
> If so, then not just for this MACRO but in general basically we have to
> use deviations.rst.

That would be pretty sad.

Jan

> Luca, do you know what would be the behavior for cppcheck and/or
> Coverity? I imagine it will be the same and they would also need a
> deviation at every MACRO invocation, not just the definition?



From xen-devel-bounces@lists.xenproject.org Fri Oct 20 06:04:30 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 06:04:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619652.965089 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qticT-0007MW-4S; Fri, 20 Oct 2023 06:04:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619652.965089; Fri, 20 Oct 2023 06:04: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 1qticS-0007MP-W7; Fri, 20 Oct 2023 06:04:24 +0000
Received: by outflank-mailman (input) for mailman id 619652;
 Fri, 20 Oct 2023 06:04: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=8lwx=GC=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qticR-0007MJ-HN
 for xen-devel@lists.xenproject.org; Fri, 20 Oct 2023 06:04:23 +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 83a5a24a-6f0e-11ee-98d5-6d05b1d4d9a1;
 Fri, 20 Oct 2023 08:04:22 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PAXPR04MB8525.eurprd04.prod.outlook.com (2603:10a6:102:210::21)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.9; Fri, 20 Oct
 2023 06:04:20 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%7]) with mapi id 15.20.6907.022; Fri, 20 Oct 2023
 06:04: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: 83a5a24a-6f0e-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=P1DnYz7uQeuKinI9wdqGFAZq5RbDoXLRnRDNOro1E1TmoQouM9YqesDG/6L08f0bJ53j5OymP1u8dbUvt3w1nArGmJTh3zx8g/rkhcUbdnwtyjpWXPv7g+4gf4nZ8y2WjpsGwzj5MSJFAJdZo7uFMrQ1o1te99EG7IlR34NqOXRWKczynGQkQmlWSPtGdlwBcgZFO/lbiV5JpM3Z0sod7WmFTuooCGyJ1xUeJFmU68XK1YOkTpdZs1eg/AENTg19NlW5wRJdq7E/8/oEkeYScm3vp3cFRlyx0mHrUilQeYSerg8g7ixO7cwI2egl99T0scIPDQ8L/onSXnYW3u/Ckg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=ST5PFKJELAYjfeN5xAQ9z5qeuXzG2OqakSxoS50WKHU=;
 b=GgxikNZXhJ6OA7gida15cSC0Q26dd7PYrySOY8EZMLpmvj82YCpxP1tl4Lz2/d3+WUYqCNvdifEMnuWMnQlXi+fHrrrp/4QzKD3oBexlkLr8DkxyYUSGb9M7FbBoFR7lh3hg9Q8UrsC0hpKu6DDve1aLAqICsRWa/SvADmVFt1MajoWUZrd/wkyPE1j4PrERWts7z484viWgbLWyz+MZN6TSjrKproXUni9CsuSuI+AV034WUYdVCxNr7DMzwUQI6QmKlNxUyEERYx1VEGDNAoc9sAannV9Ref2KIUDtbQdvbIlYS/P+qOsblxipHS5U8o4ZCJ/tUPBEdx147Xt1Sg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=ST5PFKJELAYjfeN5xAQ9z5qeuXzG2OqakSxoS50WKHU=;
 b=AlmBp0/10wdRGAYFNS/CePba/cGhNtfpV2Bxed0b7kWlF8k9oeAdmbHeGBjbQiVATYX0eHuxOSIXzPyH4CeNDV4y+riFELmOeFW0knL/rWEcgondpakozBwQtF0fe3UKa7CUtbvNcBX1Js7kBdC+/smF79f6DvzIHitBOG5tPEhysgIar6Gr95gu5j1q3v+vPvI0+WA2u9NZMBUyfq+u3cyRhwmOMhUv5firNYcoHhthgIiZ09qx21KYpkGmrqV5MqnDhnjTH7pWqXWPCGoxJSB6kp/NWQpaUrglnWpLn451F4hCXYH6IxRISEsnZBouSardJVqzxrmwV2rte5UOqA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <6ed0694a-a8cb-f01b-3d16-681c29d48522@suse.com>
Date: Fri, 20 Oct 2023 08:04: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][for-4.19 v3 8/8] docs/misra: exclude three more files
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.cooper3@citrix.com, roger.pau@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.1697722648.git.nicola.vetrini@bugseng.com>
 <0eae39cdc68e48932936e2c510a867ebe1f7c298.1697722648.git.nicola.vetrini@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <0eae39cdc68e48932936e2c510a867ebe1f7c298.1697722648.git.nicola.vetrini@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR3P281CA0014.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:1d::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_|PAXPR04MB8525:EE_
X-MS-Office365-Filtering-Correlation-Id: 28768b09-e8e8-425e-56ab-08dbd13266e1
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	U8IVQtOFqgUT4A3iLySuG7JdfIhzBDxOa5PgAy1CRjaIscf7kfAluIqLv6mgF0ay1HeTKMWSrt4FKxxXEkrSOYsCYG+vOcFxDnvlfb4IuYQTNByyz0mDic4X56Y6SbJGUb66LWLx3FXwqNBcw9xnH4nv4nekx3Q6TsuxBt343BMzuh//jhC/G53QEx1SgpTJ4C8htp7BOOFPZ4b9aZsYe+w0Rxnbh2kJ113ynPJFza/En3nYL+r+h0ry42leTKnjwAyMjzLD9yzjmwtdq0nx/ynBZ4Lj0cECiH6+Bd+4/9CSQeFTBA03HWt9negfoq9ZVNkTfTf5zdo6demteYQp0Lg6QXwLsFJcBQkB2ruzIhHfS0WQwhwdIccSsBYc+0AYdmk/6DL3fgQRgYtav0TZ6675ByJnbikeDyxGWJzIPHZDCoJ8Hk7X2cwzu1kJkzx74ovkcO7u/awmPK2Xp2giYcmW+0ONl4r2zy6fL80LQGCH4PuyU/WJl8AbBJwyyqKTNivnF0DrXjT6HhzR/i/rK5iLr6e4gZnPmAYMEmsc48dfWZjMdHCkgqp1bmY0mF/FELjUb/2QnkPgRO6JIpVayNupYv96+uyxxweBm89yBSQKQpKc/IMRVE9D7jKZnXhVHZg3mCIO1zPubzKD910gbw==
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)(230922051799003)(186009)(64100799003)(451199024)(1800799009)(31686004)(4326008)(86362001)(38100700002)(31696002)(6506007)(7416002)(41300700001)(36756003)(5660300002)(2906002)(26005)(6512007)(2616005)(53546011)(478600001)(8676002)(6486002)(66946007)(8936002)(66476007)(316002)(54906003)(6916009)(66556008)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?M1JtQWUyeWg0aE83QTVTMzNidExaVG02U0E2dEZhWEZUWlNaa2RRMEdPSEpD?=
 =?utf-8?B?dDVuc25jRFB3d3lxZEJldmYvQ3hBYVpnS0RlT1Z1QllMdVl2WmtxZlNndHZ3?=
 =?utf-8?B?WmJUOFpXU2dEalJoYjZLYXk4WlI1WmRFem9rcndqNEcyUEFFU3F2M0RJb3Jj?=
 =?utf-8?B?OHJLalJGRlNKMTc4aTkwM2tKZXZ3T3pEVVJnYjkzZGdPSTk0c3dCMWNidmNP?=
 =?utf-8?B?dkhOVDc1c2NHQ3BWS0tuU1RPS29PSUcycGlmcXBCeEpaczY3WjBPMUNkK0hs?=
 =?utf-8?B?c0daNEQ0QWljV2pSTzEzUTFHaDRrenRUV3kzV1BnY3JDdVdYblV6VjZwd0Jl?=
 =?utf-8?B?N0ZPdE4yOHd2UjZKMkpTazdtM1BSeXJCRzIyRCtpdWo0WWRDa280ZGgwSjVz?=
 =?utf-8?B?c0QrbW9OME5DQ3ZCYm5jc2FQNWpXaDhrUmhEUlNoRVcrYUk0UytMenVpZTZv?=
 =?utf-8?B?djBFNXZJMHcvR1RTQkNqeWoyMEJYZVIzM2VjaFdVblY5Y2g4MzdFaGxaRXZ5?=
 =?utf-8?B?ZTBvWFY3UStuMVZxdVgvcEhPYjQyRnpDYXBUZUhwU1ZEQnFtb1BkNDNXWWV6?=
 =?utf-8?B?RXRGY3ZIcDBkMGpBN0JmQm5ockVnTUMyWTB1OFFGQW5zQ3pHYU5yWUhuYS9D?=
 =?utf-8?B?bGkxaDJtZzFxbFJSVi9QZ1g2NFRwU1MzZml0NFFHampYL1NRZXMwTDA5UGEv?=
 =?utf-8?B?NGNXY1RXVnlWbmF4aUlpeitmNmp5R2R3NkVFL09mdEFoblhYN1g1NkF1d2J6?=
 =?utf-8?B?WENWSjJqb0pUS1ZibHE0dkhNYitxS3dhc1UyVkpxMjc0L1J4S1VoUzJ4SzlX?=
 =?utf-8?B?cEoyODNySjVYWlJodG1wRXpzOTI1NjI5ekE2WUtzUmlFQTE4YTA2MzhwRkM0?=
 =?utf-8?B?WVhIaDN1b1ZPRWtBNVUwK2w5TVFkK09xV3JsYnlTUThPWVBZZjdiSUFEUXBB?=
 =?utf-8?B?bExSNXFhWDMvMDR5WXN6QitOaDBreTJlNFZqSGF3Q1BWb25ScVZnWko1SEF3?=
 =?utf-8?B?cDRJUnlOaXRmTXhsMDZaMVkyelFsNmRtNlNvZy8vRytsUitObUhSSVdVV2VT?=
 =?utf-8?B?Ylo3UitKbGJRaUgxbXl2bzUrOGFVaEFOc0JMVnpZNnlrSnFVeVVBNk51UzY1?=
 =?utf-8?B?R29BZzdVazdvWVlIVUZHRHo1c3MzSGsxOHdpTFlBc2dKRmV2Nlh2MnFFazRG?=
 =?utf-8?B?VXNuRFVNQ1doY0gxbXgvUkZTRVdBZG1FKzltWDA2dktpR1puYXRWQ0dhTU00?=
 =?utf-8?B?RmpKUDlJWXdKNm16bUthMi9LUHBXL2NsWnNHSnJZSTZOWkxwQzZ3cGxIVVRB?=
 =?utf-8?B?ajNhVlY3R0E1dnJhem8zbXphcUhDRzhhRHo5SXZIVG14WWlRRFY2YzVUM3Zo?=
 =?utf-8?B?aTlCRDZpUmc3Y3ltQUg0RkR0cXRNQk1XNFdIY3p1eTdvcHZmeDRnNlJjM3ZH?=
 =?utf-8?B?cm55L25vNndhRm1ienprMHpuWXBiRlZLMXl0TGdOQUY0VGpRdEtaejY2OUxQ?=
 =?utf-8?B?WkhQdVZucDRxWUM2VGZzTGNCdk1zTmZiZkplazAyTlhKdlQ1bHdpazhVWS9y?=
 =?utf-8?B?MFRRL1dHZWkvak1NV3UwbTBlMjA0cUpJTlRTOEtGY3NZSU0wbXF0SmNZUGIx?=
 =?utf-8?B?UDBMMkdwNlV6VjI1ZFVmTEJtVmFpL3JkMmVzV3d3TlhzOE0rc0dPYWJzT0hi?=
 =?utf-8?B?U3FJaXlObDYzY2JvenFsNUI4Z3NPTnE4U3RoZ1l4dmRJaCt6MWM1TStCOFMz?=
 =?utf-8?B?bkoyZXVwV0k1SHI4UHRkazlyOXpTZ05kRlFEeTFaT0lmK0pvNDN5eUVxNkxq?=
 =?utf-8?B?L1RnVkZCMHRlRHRveFBOS2EydEt2UENqZzB4ZHB3ZnowUUlhSitLbGNKK2M3?=
 =?utf-8?B?K09MSjFBUUN4c09pUXl4ZGdsS2NzVE9KcUxYczg0TXh4Qk9xcUhMZ1Z2TnpP?=
 =?utf-8?B?bEU0Zmc5SHdhRHJqeFJyVTBYK0NDUVJBQ2xTKy9tQkNWUGZ5aWVKNVozcW9Z?=
 =?utf-8?B?Z3JkS0tUcVFyZmJoRlRZaTNlb1RXbWw0RTZ2NDMyRllLZmx2bjByN2NPc1RN?=
 =?utf-8?B?REs4VnBxZkpCa0JsTVVNbTZZWExraC9UQTEwaHo1ZW9zWWwxaXFNd1ZsNmVI?=
 =?utf-8?Q?zQwAfWMSH4zWMbGSpNoGPLxJq?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 28768b09-e8e8-425e-56ab-08dbd13266e1
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Oct 2023 06:04:20.8791
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: RyMMavZFA4IZd5sbWszoG3Z+a6tDGfxeN4FUbVaRUabHb9Crt2pM3vwt7/QswvUXUNWM2cnz/Oq77cIBa6c2kA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB8525

On 19.10.2023 15:40, Nicola Vetrini wrote:
> These files should not conform to MISRA guidelines at the moment,
> therefore they are added to the exclusion list.
> 
> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
> ---
> These exclusions are automatically picked up by ECLAIR's automation
> to hide reports originating from these files.
> ---
>  docs/misra/exclude-list.json | 12 ++++++++++++
>  1 file changed, 12 insertions(+)
> 
> diff --git a/docs/misra/exclude-list.json b/docs/misra/exclude-list.json
> index 575ed22a7f67..b2b4b9253615 100644
> --- a/docs/misra/exclude-list.json
> +++ b/docs/misra/exclude-list.json
> @@ -145,6 +145,10 @@
>              "rel_path": "common/zstd/*",
>              "comment": "Imported from Linux, ignore for now"
>          },
> +        {
> +            "rel_path": "common/symbols-dummy.c",
> +            "comment": "The resulting code is not included in the final Xen binary, ignore for now"
> +        },
>          {
>              "rel_path": "crypto/*",
>              "comment": "Origin is external and documented in crypto/README.source"
> @@ -189,6 +193,14 @@
>              "rel_path": "include/acpi/acpixf.h",
>              "comment": "Imported from Linux, ignore for now"
>          },
> +        {
> +          "rel_path": "include/acpi/acexep.h",

Typo (include/acpi/acexcep.h)?

Jan


From xen-devel-bounces@lists.xenproject.org Fri Oct 20 06:18:07 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 06:18:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619656.965098 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtipb-0001Mn-CA; Fri, 20 Oct 2023 06:17:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619656.965098; Fri, 20 Oct 2023 06:17: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 1qtipb-0001Mg-92; Fri, 20 Oct 2023 06:17:59 +0000
Received: by outflank-mailman (input) for mailman id 619656;
 Fri, 20 Oct 2023 06:17: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=8lwx=GC=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qtipZ-0001Ma-VJ
 for xen-devel@lists.xenproject.org; Fri, 20 Oct 2023 06:17:57 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com
 (mail-db3eur04on062d.outbound.protection.outlook.com
 [2a01:111:f400:fe0c::62d])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 68e61053-6f10-11ee-98d5-6d05b1d4d9a1;
 Fri, 20 Oct 2023 08:17:57 +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.6907.23; Fri, 20 Oct
 2023 06:17:54 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%7]) with mapi id 15.20.6907.022; Fri, 20 Oct 2023
 06:17: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: 68e61053-6f10-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=WevBsIbsNg6wrcjL7zvP1LDrBOqeb6k/3RgzExAIrZ7RH/nMYjViqGaOdr1mSgMDzZ/CIVkHuRsNuBNXQjmfSg9eGBCqRseYH7ParQ7rN1OIrEzkIF5Y0h5Jc+gt/GkJct5FMruSQYbU0wj+1/jI9Fxoyz8G9DYzwEyPpWdD6pLAP8Nl+u8DPPTXX+nkS5Bh1WuqZTzKHtoThDOY1XoVPd1k8k+MjZy3xa8hX038S+SeZkJw8UWsHmM3OSq/yHnktcY7f1tInmQ8TcSFPHIK5T3Lnf/BiU3W19it1ljI+Ik3R6ycKBa+ww7QIwWO6QamoWWik0Lx7oBAp611bhVVxg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=aTwms9+MKt+WkL4ozlEIwyXsRkILlNw0fYcZHV7kwrE=;
 b=VrU5ZXcQKLgP1Ik0VszzWQDcOQjfEg7UptY/SWcDYgXOUio1zCqWNRuL33own6QSEwkVmNJGmyGoUQzSLIiSp57q8JogTN9Re6jqLnVURo46SmExOb+Oq+y/tpPC3kzdXDW6Elnof52/jblixRIl+Lp22bLUMxT56G4qEook5mZ+u20J+GZc0KPcT+s7NACeHVskw51Pd8RqmjxZO72TCyc1s/OgAJVj5NELIukqMZY/G6W06zZQTfRwjEABMseiwKupb0ynZFWNlT6nJVU2s+lBiIM+TVmte/9M8QgwZ5UpuCTFM97vX5HFCYeAw5BBrtXi052U43kcKGPGnrqopA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=aTwms9+MKt+WkL4ozlEIwyXsRkILlNw0fYcZHV7kwrE=;
 b=DrbHA/1vR4MATdhSHf6L9UH3Q2/S+Z5BqDKyKaEXr3aWYpVSoSoxWgKWzReGZevM1CnGLoxvlBX7uMk2xuyuOi5l80qCtgOwhfSujhmT72OiufSuqhnACxEQUNUMlD1Yn3s/hNcN4gE+Lx+bPThAGpSOByYZL7RLhuCpOUFXRI0MPqu+34y9xUOwnFq7VtuxVLH+XUSHu+Lr6qBJEqnjRWI7Is0uM3d9cOmKbmvV13VQftjdv0GN2+MEuNMigqBoKPprFVQOxBxlS5zx5YrX/oPQCGJUyPJAvJvLR5j+syxdCkHOSx26WBcICd1npximWyllE5d1EWc+CH0gXL0wDA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <df57ab56-5b8b-1213-5d71-14ca7b8cf9f4@suse.com>
Date: Fri, 20 Oct 2023 08:17: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] ns16550c: avoid crash in ns16550_endboot in PV shim mode
Content-Language: en-US
To: David Woodhouse <dwmw2@infradead.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>,
 xen-devel@lists.xenproject.org
References: <de07d56188f13e222ddaa1b963c20f8d7d61350e.camel@infradead.org>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <de07d56188f13e222ddaa1b963c20f8d7d61350e.camel@infradead.org>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR3P281CA0167.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:a0::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_|DUZPR04MB9871:EE_
X-MS-Office365-Filtering-Correlation-Id: 4e41c7c6-9b56-41a7-6937-08dbd1344b36
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	cXAQygzrRGnDDKzQxsvx3KxayObhxbPgBWF5AI/loKKr1hgL83tfQQYIh/GJS6Ch/vQeHPwqDZ994LYMEOIZ8AP/4aujSE3SdAFdDW2AEIlyvsnqXR4d8rtjzQ8iry2A38m8uoGaDzOeAnNv4TMhiOI0sDPoS8NCPqKnEc+kNanMjONdsju4Iqh9jYK6ADshkg9mNeqXuC7dy4HIuaiI7Q5U7Luix8oYN5zKlIwkaMCGrp/Xj561I9S+y2Yznu35Mn7+klE5CkF1lzCJyaavHXfSq4Xs8jDkSSZBhxAS9fKXzOWijgcVA0h6dhy808MkOZWNn0+v3TZUv7zj7B+dVq+zMvAPBCVe1AlMeOvCd72cPbW6pywHWldGIZgdey7eGjhR1DayLlQXIzBiV8LiEzpCAw+w+a7La9mlSeu6HUuGrQubK5tP2PI8/Ot6w3I7AuWNJj4NepCFwldUqPgrOrBcntlEhguu/Ohn9T59MnLBpRYXBDLPUgszQJ/FU3jao0OVslQ9qINV+HupsncifJZUY3JN08EnhmK7NCOHpRsznBKNFtszLHlaPG72J8xpMejWMLLypgugG0aL1TW+yHGGhT+EchoXvR0maPp8dGVkt/2A1onhDOeefBjomTnS1xhEwHdFRhBKIrLdT98DWQ==
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)(376002)(346002)(366004)(136003)(230922051799003)(186009)(1800799009)(64100799003)(451199024)(6486002)(26005)(2616005)(83380400001)(41300700001)(53546011)(6512007)(31686004)(6506007)(38100700002)(478600001)(316002)(66476007)(66946007)(6916009)(54906003)(66556008)(36756003)(4326008)(8676002)(5660300002)(8936002)(4744005)(2906002)(31696002)(86362001)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?UUdkeFF6bWJrY0Y4anBaMFRDQUkxUkV3Wi94VTRSdDhqYVViYzY0UUR2Z1Mv?=
 =?utf-8?B?azhSRkE4aGlzdEhaZEdiTHJpYURhcFFSNTVDVW9IVHRUTGl2L1ZpcHIyaGZ3?=
 =?utf-8?B?dUMzam5HNWtmNXl3MXZoSGRLU3F4VkluWStPc3J5Q2U3a282WnlvZW44d2tX?=
 =?utf-8?B?NTQ5ekhaME4vSkdTUHVwRnQ2YnJJSEd6R21sU1NKL1QrUDd3djhSZ0MzZ1M4?=
 =?utf-8?B?WUZ1TlFGMDRTNHJoYVdDVEZVQWRXYkdvYm1aOFB4NDQvVXpMR3dSZWVBS29M?=
 =?utf-8?B?UmhWUTBKaGNGRGZEOE05N1lLdFBXUm5MRHFFMnRUMVlhcEw4bVlEMjdwZkpD?=
 =?utf-8?B?cE91SjlNZ1NYQmNzaFA0bVY5Q0VScjFONVNzS1RJa2UrRzBBcDM5Q2NoZmw0?=
 =?utf-8?B?ZWZSOVBnK05pQi91L3VReWoxK052TURINGFHR3AzSzl4TUV5eTk1Mi9QcERu?=
 =?utf-8?B?RkV0M2xYR0pCMFpnVmZEcURHSVc0eE5ncVh4aGlXUHA5RWMyREVpS1JQMTNQ?=
 =?utf-8?B?a21oaEJoVE9UMWc4Y21BbUhuYU5uN09oaDhVbGNsbHR3ait5T2hJYXpqbll2?=
 =?utf-8?B?VGNadFZVTGlPUXR4M3NUdTdTQThsdWFBelVKcXUvVGdFSTFpTFVyckNXaith?=
 =?utf-8?B?RVZWLzl6eDNmdHF2RXhaMHM1TjloR3dYMUU2bnpneGZ5Rlc0OFBKTVZNcmlP?=
 =?utf-8?B?bkVQMjJWSUZtMDFOcC8wa1BhVW42ZVV1ajRGMW1CbXhHbVJrVkFENXVVNXF5?=
 =?utf-8?B?OTJyYytiT3NhZlRBbWdqZ3VmMUp4K0FmdkNxbHUwSmRHckhXV3BDUVdEbXFI?=
 =?utf-8?B?UGtHSVh4VGwwWWhjTENhRVJDR1RTZWxZcXVnZGFjOEdUUFZaNjJNWklwUlM3?=
 =?utf-8?B?dUJBeTB4eGZWQzRZaGpYVkZLUzZYakkvRG1pMitUaWFDak1vem9JZkRBNy9F?=
 =?utf-8?B?TEx6V2tRaXFCWTZ2YXdvcnIyQVBrTDYvZVMvRklDZUNYUkYwbGl6VFFGQWRp?=
 =?utf-8?B?a0ZkK3Y4WGN4c3dCYmRnZ2RVbHRlNlluNUt3RmVPbUMxeXNPakpCcGM1NGxX?=
 =?utf-8?B?emF1cmNkVGptK25sK0JVZHUyTUVtczBTeXJueVBrL2pVZlIxRThmZHdzUUl6?=
 =?utf-8?B?TmF0dHV1QWp3bW9ia0ZHQWJhNXlsL21vMnlYbEJISEpqV2JheUlxQitZNkR2?=
 =?utf-8?B?VlpwYlBLdVVxYmFYR0NCTjFuV3Q3VTFNVHR6T3E1QUlHTFBIVVpSa2s2dmxI?=
 =?utf-8?B?QTRvMFVLZXFZVm8vUXZGSXlUOGU0SmtkYk1sMUlUZ2FjUzQrRG52VW9sVFdu?=
 =?utf-8?B?R1FlSDVNc3JFaW5tNHhvQ0JNUGhGakxGZ1M4aFlZNTdFdGtFSzY3Y2V6L25a?=
 =?utf-8?B?TjhhQUYyVmJSQlgvY2d0aVFoR3o4YzhpUStDZjZlNmhPQzdiQVFhK3VjVFcy?=
 =?utf-8?B?MTBPaUd4VFBXbkM4a3Y3aTlOTTEvdWNjeHJYcDh6NlR1QWlBbDRBR0FZYk1L?=
 =?utf-8?B?N09neWhmMXZsQjlXOXdvUXhBNUp2SmcwWnFYV3o5UUFLT0c0d2VuVU9IQVd0?=
 =?utf-8?B?UW9JMmVmNldLSHlZekRZZC9IWnZ3MFNnY1FJcko5V2VGZ3lqWVFQS2NZTktH?=
 =?utf-8?B?Znk1SCtXTitzdnlUUC8weHUrK2RadEtlMHFYM0grMjFlRkxaQ1FQYjFYMVZT?=
 =?utf-8?B?UDR2M05aOVk4Vm05N1JZVWtocU5IOFo3UmlNcGVEVmhZMmJyUEhFVEd1WEEz?=
 =?utf-8?B?YnJ0ZHFtTXUzNVdEOUF0NVBwWU85WDJpd0hWM3QrY2wxajUvKzVQU3A2WlVL?=
 =?utf-8?B?SlFXQVZyV2I3MXZQTEF2Rk9teFltNzI4Z3UrditEZXpDM3dHcXdaM040elJD?=
 =?utf-8?B?cVNNZkFtYUpIRnF2cElXV0V1NUxPK1ROMFVXTDZFaE5BSjhocTJkSEdMczky?=
 =?utf-8?B?cEJQdEUzM0JkYVd4RXFHeld1QUN5dDNpdTVBKzdYZi9BNkhjei9SYU05dUFz?=
 =?utf-8?B?RHlpTS80UldCSytnUkpRcUlpQUJEdUtPOGc1ampGYW1ObUFUS2VUZExKZ2Z0?=
 =?utf-8?B?ZmJ0Y3lvSWEvcTF6ZSs3Qk1DbkZlTDZFaWZuT0FyR1FRYUNCNmoyLzRZVGdk?=
 =?utf-8?Q?vQB3JY4Gygdg79aZ9HK09qUCA?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 4e41c7c6-9b56-41a7-6937-08dbd1344b36
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Oct 2023 06:17:53.6691
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: aA0IYTi4yfHPOzLuZaZ9qy7kIKiIMojK7FWbEeSE8JlhPr0Mz4KOhvGme1wVPk3MAtbWb03f6wxJVY6pubLwEw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DUZPR04MB9871

On 19.10.2023 18:21, David Woodhouse wrote:
> --- a/xen/drivers/char/ns16550.c
> +++ b/xen/drivers/char/ns16550.c
> @@ -586,6 +586,8 @@ static void __init cf_check ns16550_endboot(struct serial_port *port)
>  
>      if ( uart->remapped_io_base )
>          return;
> +    if (!hardware_domain)
> +        return;
>      rv = ioports_deny_access(hardware_domain, uart->io_base, uart->io_base + 7);
>      if ( rv != 0 )
>          BUG();

Considering this is the only use of hardware_domain in the driver, fixing
it like this (with style adjusted) is certainly an option. I'd like to
ask though whether it makes sense for execution to make it here in shim
mode, where there's no serial port anyway (unless we start supporting
pass-through [of possibly even non-PCI devices] for the shim). I wonder
whether we wouldn't want to bypass ns16550_init() - likely as well as the
EHCI and XHCI ones - instead, until (if ever) such passing through was
actually deemed necessary to support.

Jan


From xen-devel-bounces@lists.xenproject.org Fri Oct 20 06:22:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 06:22:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619659.965108 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtiuI-0002pe-Ue; Fri, 20 Oct 2023 06:22:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619659.965108; Fri, 20 Oct 2023 06: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 1qtiuI-0002pX-Qh; Fri, 20 Oct 2023 06:22:50 +0000
Received: by outflank-mailman (input) for mailman id 619659;
 Fri, 20 Oct 2023 06: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=8lwx=GC=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qtiuH-0002pR-AJ
 for xen-devel@lists.xenproject.org; Fri, 20 Oct 2023 06:22:49 +0000
Received: from EUR02-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur02on2061a.outbound.protection.outlook.com
 [2a01:111:f400:fe16::61a])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 16bd662e-6f11-11ee-98d5-6d05b1d4d9a1;
 Fri, 20 Oct 2023 08:22:48 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PR3PR04MB7467.eurprd04.prod.outlook.com (2603:10a6:102:80::20)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.25; Fri, 20 Oct
 2023 06:22:45 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%7]) with mapi id 15.20.6907.022; Fri, 20 Oct 2023
 06:22: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: 16bd662e-6f11-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Zd/BL7Pc6qYyjuTJMqXK8IIyolCF8qHa1xQPWNl9PwgoGgYP2bhAVJ1PuDIkBUpqZLY6pQ/fBIFbdQvRMjSzhAP6PMBplfbjjd1iW/B1wOXMyTtlVb2MpN5up487sRzmZsNJmPhE3T++0v8b4LTmDCUcUVHSAMmvAqybi/xzhJGzdDPtzK7EaNelCwyGJJZXNp3mmj1g4UrzseBZKz42I6gz/PTaZzYsAsidYQ2y4HoP6mKmKbhuyoV5DFuwXynKIIP2XYA3pakazv5O4uqxP7LmsfOzGtLm+Z4GnpJ4Ak+g23xsXnCOEK/HrHZkZ8G61RhSg6rhRQ047IGZBeI/Rg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=eoAtz4WDTTn2dMSL09FgOWGApZOQNwAa89RAE8QS11A=;
 b=ALIdwlpGEmwcUWPlQeSXJp9MmCj7t7cVKy9y9X4pnTQa9qTLveegX4WR1JSB4zyRBkhGuMaDyr6sm3JHZNVLZw/rJGKCsa5edfiud7V/wc76PLkHXeu2iP+4tXtMEPBD7n7Ut2ClJFF+Uzpbir1n2Kj+gxrczZZKeLr3ZFL+9e1/Y6vdXS0ajTeBf6QJdJ0Ex0B/RQ0WVn7wW7mRMaFAJCGvV3NX7dU78PulKtTS3rXY2LlnmchIBjIK3IoHY+fGIObmTPK6Zd+gbvvrVBrOMcRxHOm8eKc8dpBA3biHsVrrbaBmvEqGnHZLAMcZ3lyZmcDr7dqmqS3zpqbEL9efxQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=eoAtz4WDTTn2dMSL09FgOWGApZOQNwAa89RAE8QS11A=;
 b=XaERV2Ajt1mzRYPUP+47KpvbkRvYhu5PcH1wExqxX6zzoxh8NcMKne1ZJs4wKxSS4JJsmnuuTLLzAFh373LpK3j4ELUnCwruCQbXHu9GTL/l2Nvq0iK0tF5n/Hc+eVzJUJiSNnaIBzRUiSANjZ+hK1z0ZmVQsdRKisJlNgnbIrcp7ZT44EvxikfpZtOvMRmVxmxTO09eEKTLVLl6Am66+5CF2Cek4aBqvJCdyk0wAcfks18Uvfex0DGpJ54tCystUGEKI+7k3slkwSPPqAjBE4TlT/KQWGE98n2uWjhSK/5HdjzOEHL74QjLF7xGrA3rXIiqoAK80lg8RbfPnMa+4w==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <0990f0b3-ff8a-105c-5cb7-643f72ece945@suse.com>
Date: Fri, 20 Oct 2023 08:22: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 v2 2/2] xen/ppc: Implement a basic exception handler
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.1697220184.git.sanastasio@raptorengineering.com>
 <dfd134a6c59f329b62d2ecfaa37d74d70f8d4d90.1697220184.git.sanastasio@raptorengineering.com>
 <a5db276d-6bc0-1fe6-6cdd-7c097308fdce@suse.com>
 <4da4a57b-06ae-dd66-e8b5-a388f7e492b3@raptorengineering.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <4da4a57b-06ae-dd66-e8b5-a388f7e492b3@raptorengineering.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0060.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:49::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_|PR3PR04MB7467:EE_
X-MS-Office365-Filtering-Correlation-Id: cc9c6665-602a-48b3-fd6a-08dbd134f965
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	G+PVk7ngSm0hsnlFkf83esUHHIMjxV76FjjM+vrAD9xUd7BjifUuna4ivA+cbUXTlM/YjfmhqGj9v6nQzFDCOjbTXkrwyJFAFf4nOWQu3BJ8kdO4UEhHj8Fql3CzSs2YUkPg/jJbFiWA4EQkr1C5/T3/T7Qwr1FVeJRC7AiKWoAC3qMnt4Xb4AFXNFqOJdih59fpVbWpTHqBssccDNcY3LdNtcySvaftjczgUDOB4GGs3WG4wNEWF5hUl8co2mfCQqMP7D2hgvzQ0/4Sp5xuGwMWnEQjIj2E7GW5m25ij/6w5XbkgXo3BCYmy81Mj7ejXXV2JIDxLHylBIvoh647DY0Tc1q299UtMg7ZU+m4blkj53GOh4Ht0Zhvk1eCDidLK/InZi5I4TeC98BiVVfmsGMCP4WNBU+AQcwD3cClxG3IKrK4H3ynoAlibinsFNtbOY9x6rSUEFXQaUbP5mP2Yp7ettxZT/yE7dngeQ7w0G+2kcG2HuJU32FINIaJwBntEc9V4lM4zjDcII+ArVpciTn4Fge3g6mhv6dncoB9/ZbCMorgKy3X5ksEPXDfz9H+lR+9nklbqjiPYVWDtz2TwrYQ9cRZfsCW/GUz8pAcoc8+yIF+y+a706k0Gza5+Nb8+fmw2GGP5yPW93ZgwontEQ==
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)(186009)(1800799009)(451199024)(86362001)(6512007)(26005)(2616005)(41300700001)(478600001)(6486002)(5660300002)(8936002)(2906002)(4326008)(66476007)(66946007)(6916009)(31696002)(316002)(36756003)(66556008)(54906003)(8676002)(53546011)(6506007)(38100700002)(31686004)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?ZmRJL0RKNWNTSmV1U3htaHVSakVtU1ZIVkhaSDdNd0ZJZThQZ09xdTZVMkti?=
 =?utf-8?B?dkZrTndTazZyaEYrL0pBL1NNbXZVT1YrR1RqN1Noc1lyOHR2VThHUDU1MGRt?=
 =?utf-8?B?QW9ZRnNOdXcxQlE5NE4vR29yTUFNYmhnelU1ak9wbmtraVVLMU5XaHlxbkxH?=
 =?utf-8?B?SWxaOE5iTTV2VmVaT0FVY3ZvM0FYK3lkWW9UWHdZdDRBaTNhN3dlL1RmWUYv?=
 =?utf-8?B?ZHArTG00RGp0WUVydS9NMklmS3VxamRkU01zaCsrVStNYWFxeDhTNml1WEx4?=
 =?utf-8?B?VmtSTjJBcGNXayt0bndwVDI3NTdzMXhieHNBVi9PdmVNRk5LSFlLbTZIZTAw?=
 =?utf-8?B?TmY1bVdncEdXV2lYUnY5ZE4xbTMvazdoaGdmckR1dU5EMzlSMUtMdFFscnFG?=
 =?utf-8?B?UHl2RXJCbWdmdlc2Wk1lZVJTQUFBR3R0R051Uk9JTDhFcnp2cUhxL2ExSG0v?=
 =?utf-8?B?bzR6Tjc1RUM2TWlIM24vMm5nU2d0a0JNaGFzSFBUc0U3V2M2UlNJbUlySklZ?=
 =?utf-8?B?bHFGNUdoR01xRUdDV1VHUTIybnJMcWQydmdJWWxzVkFmTlMyVUNrMmVPUG0w?=
 =?utf-8?B?QzgwZ2dTQkJYa29naXF4QXNJTjR3Kzk1Qy82Q0pyK1IxOXNldkdVOVA4clpB?=
 =?utf-8?B?WFU2NktFU2NEL2FjaFRDbEMrZUNsM3grd1k2Y2FqU20vcUtlcEJsKzZMa2dB?=
 =?utf-8?B?aCtxcEo2OHF1T2FGZ1kraHBYa2lSbGoxbjRITk1sWXR5WmlVRVRGYzVMYVl1?=
 =?utf-8?B?TEY4eWdUaWxGZnE1Nkwwak1HUGRhcC9NWC9lSDdLR0VZemlwSDBRcUg5MEtU?=
 =?utf-8?B?dmVwK1l1NFVzMnZTRE9kOHZXaUR3WFRYRzhyMUQxb1BIVW02NjZjOWh0VDhN?=
 =?utf-8?B?VWNyTnlQdmM5dkRGVHVVMUVRY3lWcUxRRjJnSHdDK2ZIdnUzVk9QbGE0aTUy?=
 =?utf-8?B?b3NxMEpjQWlFZVlCT284NTFGeVpNc000Ny9aejd0bldlR2pBRmxnSkRkOC9l?=
 =?utf-8?B?OGJoR1VWYWh3SitBTFVGaFhacDlHdzhrc2h1S3RjRXAzUkw0U1I4bDgzaVU3?=
 =?utf-8?B?cDdCYXk2OEllNkYyc2M2OE95ZW5vL09NamZSSFp1MWZBdTZYNFAydXE2S1p3?=
 =?utf-8?B?TENpangrQnhYeDdWQlBFWjU1SlNhQVJtTitrckdBdTUvSk4vR0RqcXNJZlFD?=
 =?utf-8?B?blJ6L0xrakswVUF0U3IweXoyS0FnWElIZ3YwTWJpL21DblNBQUd3N3dEL0Iy?=
 =?utf-8?B?bmZuMDM3TjVJcVFkUTNtZGhuOGZYL2NLWnFob2txUWl1R2JVRUQ4QlAvTUpM?=
 =?utf-8?B?NWJwTTFFS29PL2MyeUU2dXFRSmxyemxWSnltOURHbzV5VCtJY3ZLS253eDlE?=
 =?utf-8?B?VlFTdlhWU2lzSWpOM2Vkb3dpSEs2NzJYRlNXOEprVFBMeHRZTzkxVkhlcXJU?=
 =?utf-8?B?SE9WQlBJYXM1ays5dGhIRS9TU3FVMlphcDBNbFpEUXBRNkJtUDlSaGN1bm9X?=
 =?utf-8?B?NDU4a21Tc0tyZnF2eUw1MEI0R20raEN6bmFlZGVsODVLRENydVVwMzdRQ3or?=
 =?utf-8?B?dkNWaHlsMzcyai9vUlhENVJzMmVaNVdrRSticjdHUk9xMWRRRDRRUjNTY1hR?=
 =?utf-8?B?UHB1NHJwM0hESkQyb1dOTy8yR1RlUndCT1AwVzgrRGZhdGpHNksxZnJ4ZUpR?=
 =?utf-8?B?d0h5cXV5ejdnbTVabGo1SzIxRFUzMXNZOVhuVmFWRTExZHE0UEtBT1JVUVFE?=
 =?utf-8?B?b1NiSFJKQmxjRytEeTkybHpNdy9qOGtnUG1mSHVUbGNhcW5XdkEwSUt6c1cv?=
 =?utf-8?B?NG9HbzFrUkZody9zRkhUeXl0eXFyTjdzWkdxQTdPL0s0Y2JxSGpzZWFvb3FX?=
 =?utf-8?B?YzNRby9DL3ZkN1hnclFsbUlyV25iYVVqYkozUUcxYXFrMUpWMkNlc1Zic080?=
 =?utf-8?B?d1NrZktYYmNnUVdHZmJ2SlE2eFFjNEtTYml6Tzh5bGowTjBMcW9IQzh3M0lj?=
 =?utf-8?B?NS9mVVowU2JxaEh5SlVWY1F6NjV4SWZDenNQcC95UXZNcmlYeHM5SGx0T2cy?=
 =?utf-8?B?N3BYTWxUQm5MaE5hM3RINVh4Rk5aZExHTEpXUjBhOE9sVEZXQWdVd0c3Ni9G?=
 =?utf-8?Q?Ct0AiaTdJQaEksg//9eFeQjWo?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: cc9c6665-602a-48b3-fd6a-08dbd134f965
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Oct 2023 06:22:45.7414
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 5ZgmjxbJbW5Q1dA+KtSuClVkA1Owgqh1raqnC3AYCoJ5sSC+JowMB2WqEC7duJljupIowgGzjI0DTlHeCdGI7g==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PR3PR04MB7467

On 19.10.2023 22:02, Shawn Anastasio wrote:
> On 10/18/23 10:43 AM, Jan Beulich wrote:
>> On 13.10.2023 20:13, Shawn Anastasio wrote:
>>> --- 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);
>>> +}
>>
>> Please forgive my lack of PPC knowledge: There's no use of any address
>> here afaict. Where's the link to (presumably) AIL_VECTOR_BASE? If that
>> address is kind of magic, I'm then lacking a connection between
>> XEN_VIRT_START and that constant. (If Xen needed moving around in
>> address space, it would be nice if changing a single constant would
>> suffice.)
>>
> 
> AIL_VECTOR_BASE is indeed a magic address defined by the ISA for AIL=3.
> As for the second part of your question, I'm a bit confused as to what
> you're asking. The ISRs are placed at a position relative to
> the start of the .text.exceptions section (EXCEPTION_VECTORS_START), so
> Xen can be arbitrarily shuffled around in address space as long as
> EXCEPTION_VECTORS_START lies at or before AIL_VECTOR_BASE.

Well, AIL_VECTOR_BASE is #define-d to a plain constant, not derived
from EXCEPTION_VECTORS_START. In turn EXCEPTION_VECTORS_START is
#define-d to a plain constant in patch 1, not derived from
XEN_VIRT_START. Therefore moving Xen around would require to change
(at least) 3 #define-s afaict.

Jan


From xen-devel-bounces@lists.xenproject.org Fri Oct 20 06:28:47 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 06:28:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619662.965118 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtizw-0004Nd-HZ; Fri, 20 Oct 2023 06:28:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619662.965118; Fri, 20 Oct 2023 06:28: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 1qtizw-0004NW-E9; Fri, 20 Oct 2023 06:28:40 +0000
Received: by outflank-mailman (input) for mailman id 619662;
 Fri, 20 Oct 2023 06:28: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=SYNS=GC=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qtizu-0004NN-RQ
 for xen-devel@lists.xenproject.org; Fri, 20 Oct 2023 06:28:38 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id e631addc-6f11-11ee-9b0e-b553b5be7939;
 Fri, 20 Oct 2023 08:28:36 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id F28964EE073A;
 Fri, 20 Oct 2023 08:28: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: e631addc-6f11-11ee-9b0e-b553b5be7939
MIME-Version: 1.0
Date: Fri, 20 Oct 2023 08:28:35 +0200
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: Henry Wang <Henry.Wang@arm.com>
Cc: Stefano Stabellini <sstabellini@kernel.org>, Xen-devel
 <xen-devel@lists.xenproject.org>, Community Manager
 <community.manager@xenproject.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>, =?UTF-8?Q?Roger_Pau?=
 =?UTF-8?Q?_Monn=C3=A9?= <roger.pau@citrix.com>, Wei Chen <Wei.Chen@arm.com>
Subject: Re: [PATCH 1/3] CHANGELOG.md: Mention the MISRA-C improvement in 4.18
 dev cycle
In-Reply-To: <B8B61F24-CE9D-4924-992D-A8C43EB22956@arm.com>
References: <20231019052050.1032492-1-Henry.Wang@arm.com>
 <20231019052050.1032492-2-Henry.Wang@arm.com>
 <alpine.DEB.2.22.394.2310190911020.1945130@ubuntu-linux-20-04-desktop>
 <B8B61F24-CE9D-4924-992D-A8C43EB22956@arm.com>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <f8b782372150321e26ed77c1b5fcfa04@bugseng.com>
X-Sender: nicola.vetrini@bugseng.com
Organization: BUGSENG s.r.l.
Content-Type: text/plain; charset=UTF-8;
 format=flowed
Content-Transfer-Encoding: 8bit

On 20/10/2023 03:31, Henry Wang wrote:
> Hi Stefano,
> 
>> On Oct 20, 2023, at 00:13, Stefano Stabellini <sstabellini@kernel.org> 
>> wrote:
>> 
>> On Thu, 19 Oct 2023, Henry Wang wrote:
>>> Signed-off-by: Henry Wang <Henry.Wang@arm.com>
>>> ---
>>> CHANGELOG.md | 1 +
>>> 1 file changed, 1 insertion(+)
>>> 
>>> diff --git a/CHANGELOG.md b/CHANGELOG.md
>>> index 165c5caf9b..47e98f036f 100644
>>> --- a/CHANGELOG.md
>>> +++ b/CHANGELOG.md
>>> @@ -33,6 +33,7 @@ The format is based on [Keep a 
>>> Changelog](https://keepachangelog.com/en/1.0.0/)
>>>    nodes using a device tree overlay binary (.dtbo).
>>>  - Introduce two new hypercalls to map the vCPU runstate and time 
>>> areas by
>>>    physical rather than linear/virtual addresses.
>>> + - The project has now officially adopted 72 rules of MISRA-C.
>> 
>> I counted them again, they are 71 today. We have accepted 3 more
>> recently but for the CHANGELOG.md I would stick with what is on
>> docs/misra/rules.rst
> 
> Thanks for the pointer of the doc, I checked the doc and noticed that
> we actually support 65 rules and 6 directives (65+6=71 so you are 
> correct),
> but to avoid the confusion, would you mind me writing in this way:
> "The project has officially adopted 6 directives and 65 rules of 
> MISRA-C”?
> 
> Kind regards,
> Henry

Just dropping this small suggestion: the general term used by MISRA to 
indicate either
a Rule or a Directive is Guideline, so it's also correct to say that 71 
Guidelines have been
adopted.

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


From xen-devel-bounces@lists.xenproject.org Fri Oct 20 06:31:33 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 06:31:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619665.965127 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtj2h-0005ns-Tx; Fri, 20 Oct 2023 06:31:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619665.965127; Fri, 20 Oct 2023 06:31: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 1qtj2h-0005nl-Qn; Fri, 20 Oct 2023 06:31:31 +0000
Received: by outflank-mailman (input) for mailman id 619665;
 Fri, 20 Oct 2023 06:31: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=0mrC=GC=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qtj2g-0005nd-2E
 for xen-devel@lists.xenproject.org; Fri, 20 Oct 2023 06:31:30 +0000
Received: from EUR03-DBA-obe.outbound.protection.outlook.com
 (mail-dbaeur03on20629.outbound.protection.outlook.com
 [2a01:111:f400:fe1a::629])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 4c8ccb4c-6f12-11ee-98d5-6d05b1d4d9a1;
 Fri, 20 Oct 2023 08:31:28 +0200 (CEST)
Received: from DU2PR04CA0033.eurprd04.prod.outlook.com (2603:10a6:10:234::8)
 by AS8PR08MB9292.eurprd08.prod.outlook.com (2603:10a6:20b:5a7::15) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.26; Fri, 20 Oct
 2023 06:31:25 +0000
Received: from DB1PEPF00039234.eurprd03.prod.outlook.com
 (2603:10a6:10:234:cafe::9b) by DU2PR04CA0033.outlook.office365.com
 (2603:10a6:10:234::8) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.26 via Frontend
 Transport; Fri, 20 Oct 2023 06:31:25 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DB1PEPF00039234.mail.protection.outlook.com (10.167.8.107) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6907.24 via Frontend Transport; Fri, 20 Oct 2023 06:31:24 +0000
Received: ("Tessian outbound a024c74d4d6d:v215");
 Fri, 20 Oct 2023 06:31:24 +0000
Received: from 8eca8df7ce1e.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 C4D646C4-D377-47B7-B7DD-079F6842AB86.1; 
 Fri, 20 Oct 2023 06:31:13 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 8eca8df7ce1e.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Fri, 20 Oct 2023 06:31:13 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by DB9PR08MB9636.eurprd08.prod.outlook.com (2603:10a6:10:45c::15)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.26; Fri, 20 Oct
 2023 06:31:10 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41%4]) with mapi id 15.20.6907.022; Fri, 20 Oct 2023
 06:31: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: 4c8ccb4c-6f12-11ee-98d5-6d05b1d4d9a1
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=m5YkSlNS4BRoK2MoVktqNF9yXh+lq3mAp/fl6So8/gU=;
 b=y3o25u4gN/XQnlHw0BDn4arh3ctcXZD0MNrjgMAQWpZrQu0RW1KzlL7OMzINkOcs94uw9BbmDlhaAiVxULqn5X+ovgJEgc20IBxKH1DEwDQOsGd+I+t5cgPs//HE14GZiqJ8wrCZWP2qMxI3f1CtKVbUZ/P1QFfhxMd4ymhGwJ8=
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: ec728330a93003b2
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=aS2ZcnxRNvDyvfS/9SslW7bpRUQQg2bO4DMpO0NFmJvcvx5VObtDIbVj93Y7swEPXFPEPY3LKmvMnT8eiTA/vbW0gKtvCB1QP8tvRJZ3eADKnYlvrBMspUO7S/WevZFc1RV/ROiwXv95HEmBBrmxirnMrZ4+W4yDwJm+odA4vNXICdPOesNmQBduVqZM2hnLugJAkH9YDlbVrrQNVTLa9Eiclo2duB2AEK1Hk8mOOOH4/pI1aekdwfi1JBJiPhwSn14mh45kiBcwy4B6K9mairPgErRy0+Tt8xxQBuzxdrsCMcHvBQwp+uqEeNRjZ+P42RA4awD0+eAfdi/r2+vyuA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=m5YkSlNS4BRoK2MoVktqNF9yXh+lq3mAp/fl6So8/gU=;
 b=EzKkY2EPeqsbprP5ZAasXhtWYAJ0ttDCwil5fdk5O1iyK3Z4n+YnkPFwvBKmXS6HP5VfbTu5rJBBTFi/8CcWhHb7Z186rbR9Mmsphl1p0BxinFEnZJ9LHVT3zItYXKiqg4t19tFkxvwf8buSaITDqxjHmv9eUDayyP0bZeNFVeh5jxmD/aAK0HCUKABgxC4mEDxEp9Cus4ElUNZaZRQ0+qnLZQKuNgFni5Gbztz2DYr4OvAQkkgVry2hJdVxRBlx4Ru1NV18C+s0EgsQOQ3Te9237KqbYLoVhHt40Lt01xDiwTrJm/6Un5UpoFn361RixP3DHF/4TdFAYyc/a68nNw==
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=m5YkSlNS4BRoK2MoVktqNF9yXh+lq3mAp/fl6So8/gU=;
 b=y3o25u4gN/XQnlHw0BDn4arh3ctcXZD0MNrjgMAQWpZrQu0RW1KzlL7OMzINkOcs94uw9BbmDlhaAiVxULqn5X+ovgJEgc20IBxKH1DEwDQOsGd+I+t5cgPs//HE14GZiqJ8wrCZWP2qMxI3f1CtKVbUZ/P1QFfhxMd4ymhGwJ8=
From: Henry Wang <Henry.Wang@arm.com>
To: Nicola Vetrini <nicola.vetrini@bugseng.com>
CC: Stefano Stabellini <sstabellini@kernel.org>, Xen-devel
	<xen-devel@lists.xenproject.org>, Community Manager
	<community.manager@xenproject.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>,
	=?utf-8?B?Um9nZXIgUGF1IE1vbm7DqQ==?= <roger.pau@citrix.com>, Wei Chen
	<Wei.Chen@arm.com>
Subject: Re: [PATCH 1/3] CHANGELOG.md: Mention the MISRA-C improvement in 4.18
 dev cycle
Thread-Topic: [PATCH 1/3] CHANGELOG.md: Mention the MISRA-C improvement in
 4.18 dev cycle
Thread-Index: AQHaAkwZpuNxj+yPc0utTQUv+u0QObBRScQAgACb2ICAAFMagIAAAKgA
Date: Fri, 20 Oct 2023 06:31:10 +0000
Message-ID: <E09C7FDD-5A45-4B11-8461-E85EDBA978AC@arm.com>
References: <20231019052050.1032492-1-Henry.Wang@arm.com>
 <20231019052050.1032492-2-Henry.Wang@arm.com>
 <alpine.DEB.2.22.394.2310190911020.1945130@ubuntu-linux-20-04-desktop>
 <B8B61F24-CE9D-4924-992D-A8C43EB22956@arm.com>
 <f8b782372150321e26ed77c1b5fcfa04@bugseng.com>
In-Reply-To: <f8b782372150321e26ed77c1b5fcfa04@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_|DB9PR08MB9636:EE_|DB1PEPF00039234:EE_|AS8PR08MB9292:EE_
X-MS-Office365-Filtering-Correlation-Id: 9b777eae-c891-4b78-14f0-08dbd1362ece
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:
 BsHvFj0Z9CIqZy0AQyMfWIZKXrAbZLKyMMGHS0iCvYOPaUDVSFtRLhxNbEgBXAMCWEChLkail4aX7ejoQSYHyBhoRg7A3/3ZTAZMzgPQpYBvhCCKp4saawHGUAMxZVupRyxBQQa6KHgEH+iOBqlvciHCoruLVvrhlUGzLrUWCnKaU5jsDAjUt6nh9pvotRNMOpWuq+pDWfvRIPP03aAgoe0ZUi1fZLmX6wdlcjPnVcFlMkXeUsrZOfBgT7u8OAw8M7OWOEFt0H4kvBEF7AEj5WkzrQoJORh0v4vIDAsbhCec4Zulp9CpSgmO2aJotumbYn0V4gNUtdrc8rNM9vsNERiym9nW9skLPr5goQNQcaYl5ZxaM8c3JacpXCYlXMayI9apPJ38uSiSejfADgC2Ev7/FvVAoHCy7OmuauyR3v6E8jiJOp5etCuVwIGA97/JSCO3q8dKf5Pv5r6Agx49ueiH6cFJE+LF3aGeWvtpb2z3oBYM4g1LvJfBcZBId4RSOCE2MYVXgwgZ5fyik/iLLnleq2dTE0epAGDfbRYsMR/jZE/rf1V7B6RC16VMa7bg9JELFPkwnnjjOQm3mhZTMnAOkI0e7vgrby/QgAzVQGfTl35GbAUgvx6Oj23kh0OtMQaHlG1tVyZif93ZpJ7yX7iEjbA26EdVTlNpKudkQGMRV0RZogAO1Z0P3kNzTEYtqsqKUiIjr1VxIwj5U9tx4vyYzFMnwpohzg4QhY8FyrI=
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)(136003)(376002)(39860400002)(396003)(230922051799003)(186009)(1800799009)(64100799003)(451199024)(33656002)(26005)(53546011)(83380400001)(38100700002)(2616005)(6512007)(36756003)(122000001)(86362001)(38070700009)(2906002)(5660300002)(71200400001)(7416002)(76116006)(41300700001)(91956017)(6506007)(64756008)(66556008)(54906003)(66446008)(66476007)(6916009)(316002)(66946007)(8936002)(6486002)(478600001)(966005)(8676002)(4326008)(219803003)(207903002)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <59FC40350E040B45834059F63CE114A1@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR08MB9636
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:
 DB1PEPF00039234.eurprd03.prod.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	0b24afb1-a69e-4a9e-4742-08dbd136261c
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	hWOfpNVZfcVhbytHCHo9neePWVeIoW3SLpWSJX+1/UmZcklvL7M0g6/+9pufP07pPU4f5/EXRKziSvulcAVG0E33/NhYWS3Ycm1RuQZNHYu74QLRd4UDB415FPPWFMSZFFitdPwi0uYNbnI1hZaTZdJi0CkcNVJOutHk/aMHmbg+wnbsuGqJkLf0cgSJt6nvQxbNKIxTYmkqRlZw8xAT6kJf2m7ZyFzC1v9G3X2se3xkHEqy+mRBmg9q5n+JLpb42U3q4ooodW9dZ4tZc5ZvqNfiGjCUJAnC9fZeVyyjwMOCUX6Qryy2sQtV5rjygaiDfvC4LABFO7hZAOMSCBuxLHTAlWgQI/9yk1I2grr0Cze+BknbNy7yDFOXcfDtAaRRfscUXmxQlHXp93Sc7cO/kaVDCIDuJUftSFu815wOM0aCZpomBt3IOXg6kOG+6q+jnTjM0/IBIZ3MhMBK3dMpKo9gJf2DNs564PsONDOpYDP7ou/MD2FxwQF5TtWM+K+Sqj4N3qXDXwRmeuELC/d38j93s7bcn21P4M7xRJZ+mpD0+pEP6973bPDCzkbaPDN3SsDrraG50224GfCAaguA/E4cqb3jbq20fCNREBnHIae87uIhKkCIldFOh+Yz7ieAH5KH641/YoOCdYMHQx55Aj1j3tBl6b7RzR3U8qqMbCCF98JoO2XwlUfWlT5SQOhx2AS9vECFezPUZqykZhdXHipE0xYJOkh4J6Q6js77ozDcd3S3r0ZtNrMgvLMBeZln3ezeVcMFe7Uafzf8irfuhJquvTDHWRxpshBu77738UqpG92hFYBc3z9owmsp3yBoEPfPxAJO/ESeIE99FelAGQ==
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)(136003)(39860400002)(346002)(230922051799003)(1800799009)(186009)(82310400011)(451199024)(64100799003)(40470700004)(46966006)(36840700001)(8936002)(8676002)(316002)(6862004)(54906003)(70586007)(4326008)(70206006)(26005)(86362001)(40460700003)(478600001)(5660300002)(40480700001)(966005)(6486002)(36756003)(6506007)(41300700001)(33656002)(53546011)(6512007)(336012)(83380400001)(2616005)(82740400003)(356005)(81166007)(36860700001)(47076005)(2906002)(219803003)(207903002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Oct 2023 06:31:24.6754
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 9b777eae-c891-4b78-14f0-08dbd1362ece
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:
	DB1PEPF00039234.eurprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB9292

SGkgTmljb2xhLA0KDQo+IE9uIE9jdCAyMCwgMjAyMywgYXQgMTQ6MjgsIE5pY29sYSBWZXRyaW5p
IDxuaWNvbGEudmV0cmluaUBidWdzZW5nLmNvbT4gd3JvdGU6DQo+IA0KPiBPbiAyMC8xMC8yMDIz
IDAzOjMxLCBIZW5yeSBXYW5nIHdyb3RlOg0KPj4gSGkgU3RlZmFubywNCj4+PiBPbiBPY3QgMjAs
IDIwMjMsIGF0IDAwOjEzLCBTdGVmYW5vIFN0YWJlbGxpbmkgPHNzdGFiZWxsaW5pQGtlcm5lbC5v
cmc+IHdyb3RlOg0KPj4+IE9uIFRodSwgMTkgT2N0IDIwMjMsIEhlbnJ5IFdhbmcgd3JvdGU6DQo+
Pj4+IFNpZ25lZC1vZmYtYnk6IEhlbnJ5IFdhbmcgPEhlbnJ5LldhbmdAYXJtLmNvbT4NCj4+Pj4g
LS0tDQo+Pj4+IENIQU5HRUxPRy5tZCB8IDEgKw0KPj4+PiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNl
cnRpb24oKykNCj4+Pj4gZGlmZiAtLWdpdCBhL0NIQU5HRUxPRy5tZCBiL0NIQU5HRUxPRy5tZA0K
Pj4+PiBpbmRleCAxNjVjNWNhZjliLi40N2U5OGYwMzZmIDEwMDY0NA0KPj4+PiAtLS0gYS9DSEFO
R0VMT0cubWQNCj4+Pj4gKysrIGIvQ0hBTkdFTE9HLm1kDQo+Pj4+IEBAIC0zMyw2ICszMyw3IEBA
IFRoZSBmb3JtYXQgaXMgYmFzZWQgb24gW0tlZXAgYSBDaGFuZ2Vsb2ddKGh0dHBzOi8va2VlcGFj
aGFuZ2Vsb2cuY29tL2VuLzEuMC4wLykNCj4+Pj4gICBub2RlcyB1c2luZyBhIGRldmljZSB0cmVl
IG92ZXJsYXkgYmluYXJ5ICguZHRibykuDQo+Pj4+IC0gSW50cm9kdWNlIHR3byBuZXcgaHlwZXJj
YWxscyB0byBtYXAgdGhlIHZDUFUgcnVuc3RhdGUgYW5kIHRpbWUgYXJlYXMgYnkNCj4+Pj4gICBw
aHlzaWNhbCByYXRoZXIgdGhhbiBsaW5lYXIvdmlydHVhbCBhZGRyZXNzZXMuDQo+Pj4+ICsgLSBU
aGUgcHJvamVjdCBoYXMgbm93IG9mZmljaWFsbHkgYWRvcHRlZCA3MiBydWxlcyBvZiBNSVNSQS1D
Lg0KPj4+IEkgY291bnRlZCB0aGVtIGFnYWluLCB0aGV5IGFyZSA3MSB0b2RheS4gV2UgaGF2ZSBh
Y2NlcHRlZCAzIG1vcmUNCj4+PiByZWNlbnRseSBidXQgZm9yIHRoZSBDSEFOR0VMT0cubWQgSSB3
b3VsZCBzdGljayB3aXRoIHdoYXQgaXMgb24NCj4+PiBkb2NzL21pc3JhL3J1bGVzLnJzdA0KPj4g
VGhhbmtzIGZvciB0aGUgcG9pbnRlciBvZiB0aGUgZG9jLCBJIGNoZWNrZWQgdGhlIGRvYyBhbmQg
bm90aWNlZCB0aGF0DQo+PiB3ZSBhY3R1YWxseSBzdXBwb3J0IDY1IHJ1bGVzIGFuZCA2IGRpcmVj
dGl2ZXMgKDY1KzY9NzEgc28geW91IGFyZSBjb3JyZWN0KSwNCj4+IGJ1dCB0byBhdm9pZCB0aGUg
Y29uZnVzaW9uLCB3b3VsZCB5b3UgbWluZCBtZSB3cml0aW5nIGluIHRoaXMgd2F5Og0KPj4gIlRo
ZSBwcm9qZWN0IGhhcyBvZmZpY2lhbGx5IGFkb3B0ZWQgNiBkaXJlY3RpdmVzIGFuZCA2NSBydWxl
cyBvZiBNSVNSQS1D4oCdPw0KPj4gS2luZCByZWdhcmRzLA0KPj4gSGVucnkNCj4gDQo+IEp1c3Qg
ZHJvcHBpbmcgdGhpcyBzbWFsbCBzdWdnZXN0aW9uOiB0aGUgZ2VuZXJhbCB0ZXJtIHVzZWQgYnkg
TUlTUkEgdG8gaW5kaWNhdGUgZWl0aGVyDQo+IGEgUnVsZSBvciBhIERpcmVjdGl2ZSBpcyBHdWlk
ZWxpbmUsIHNvIGl0J3MgYWxzbyBjb3JyZWN0IHRvIHNheSB0aGF0IDcxIEd1aWRlbGluZXMgaGF2
ZSBiZWVuDQo+IGFkb3B0ZWQuDQoNCkNvcnJlY3QsIEkgd3JvdGUgc2VwYXJhdGVseSBqdXN0IHRv
IHNpbXBseSBrZWVwIHNvbWUgY29uc2lzdGVuY3kgYmV0d2VlbiB0aGUgd29yZGluZyB0aGF0DQp3
ZSBhbHJlYWR5IGRpZCBmb3IgNC4xNywgc2VlIFsxXS4NCg0KWzFdIGh0dHBzOi8veGVuYml0cy54
ZW4ub3JnL2dpdHdlYi8/cD14ZW4uZ2l0O2E9YmxvYjtmPUNIQU5HRUxPRy5tZDtoPTE2NWM1Y2Fm
OWJlYWZmNzJkYTRlYTA3ZDMyNjc0MzUwMGY0NzA0NjY7aGI9SEVBRCNsNTUNCg0KS2luZCByZWdh
cmRzLA0KSGVucnkNCg0KPiANCj4gLS0gDQo+IE5pY29sYSBWZXRyaW5pLCBCU2MNCj4gU29mdHdh
cmUgRW5naW5lZXIsIEJVR1NFTkcgc3JsIChodHRwczovL2J1Z3NlbmcuY29tKQ0KDQo=


From xen-devel-bounces@lists.xenproject.org Fri Oct 20 06:32:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 06:32:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619669.965137 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtj3N-0006OE-8L; Fri, 20 Oct 2023 06:32:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619669.965137; Fri, 20 Oct 2023 06: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 1qtj3N-0006O7-5m; Fri, 20 Oct 2023 06:32:13 +0000
Received: by outflank-mailman (input) for mailman id 619669;
 Fri, 20 Oct 2023 06:32: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=8lwx=GC=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qtj3M-0006Br-8O
 for xen-devel@lists.xenproject.org; Fri, 20 Oct 2023 06:32:12 +0000
Received: from EUR03-AM7-obe.outbound.protection.outlook.com
 (mail-am7eur03on20603.outbound.protection.outlook.com
 [2a01:111:f400:7eaf::603])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 65b7f003-6f12-11ee-9b0e-b553b5be7939;
 Fri, 20 Oct 2023 08:32:10 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PA4PR04MB9416.eurprd04.prod.outlook.com (2603:10a6:102:2ab::21)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.8; Fri, 20 Oct
 2023 06:32:07 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%7]) with mapi id 15.20.6907.022; Fri, 20 Oct 2023
 06: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>
X-Inumbo-ID: 65b7f003-6f12-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=BgdHoWuJPZxlk/lIMYi5unnLprIzg2UGN+yxauoSFp+6C/P/wL9FOsIy3Nmbj57YpWwUxCrz4T2+OJfAgdsM4yiYDcyM4yvo9htEfML8HbMeOev6oQm07FwIXhU03dzCihCuTfCS9E/21fVUuVdOvuRHVUBzi+Fw5dHPMdPoR2XBtISH8aLudIkJPf04Y6UfIMDslo3P2qjAmHFdDX66mw8Ns0lQsT3sv5LP0YnCCOZddrc5z0oULOuXvd8mlovFY6mb4rqxAEzdGoQxfx4zowL7ekcPCt2v3dKjkT5u/rh0ZAO32T2JBMHNT5Ma2xi+43gGQzGoNxbw1l+nq2UHhg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=sbhvh1GcsL6fpfYoonBPRC1IgpPQwB+6lddIbui0Lc4=;
 b=YA/7obFWBrjUINbkHdQlYmjOVdTNdMG+Hjxe63RR0gVBlN6hqGxZbxtBAI05tS86I46oJpYeYHDIDrSOhE61glOhn/0fZRs2/pk/0j/l3SfcB5NrRyZp+k9bTTzIDd4pt75acybwZUoVS+COGWwVzhtYVacWwDrvGL3iYDDojcqSMNiExMdhZOqPQXNnXPhZxaYwmdut9nxGImvv4SvJDXTEqd3lgkX6v5dgWQmxXWBY48GCviNG5xdaCE/Xa+Zov6WQAr7LiB62sSh4TD9jZN/O6kPGthnrT9tZ3mqWQoYl2q631EotFwOD2BLtH3hgOABNw7pjbrNcZ2Ilb0gTqQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=sbhvh1GcsL6fpfYoonBPRC1IgpPQwB+6lddIbui0Lc4=;
 b=yUOORizFUjREoPSHpmd7u4WLqiaxJoVhvZPPgry/fys7fLlWocmVGJ4/feVk6RjsBp10lfPTlydYzr7u4KWHR6GrlTl8bJjc3iEe10tfLJKQEfkFx2kdcmSPIfIT3yp58qLUpuTJTymeOOaFVditUb+MZQ8NbAGfAMCgxaCjRBFVrsx2DQVtvypJuirdFm+65p7HvO3vC6msTDaVFlb4WMRsZnyUzuUMBLNacNdPIBzLhmw1raRKNR2CzruLDJNxYT+/r6kOb9XG2QAOS1806he6DDmXc/LbUsSdLkTTYiDOVM1Qst6DvMwDlNExoC06PDnUH8ejrFnN2dkYhNK1xw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <6374f0f4-d58f-83ca-6eb3-d5a9fcbac525@suse.com>
Date: Fri, 20 Oct 2023 08:32:05 +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: Stefano Stabellini <sstabellini@kernel.org>
Cc: Simone Ballarin <simone.ballarin@bugseng.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
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>
 <725f5193-c8d3-1bc8-cd62-2a2b1b5ecc01@suse.com>
 <alpine.DEB.2.22.394.2310171709310.965337@ubuntu-linux-20-04-desktop>
 <ead797ed-84cc-fb70-5259-7e11211d049e@suse.com>
 <alpine.DEB.2.22.394.2310181739270.965337@ubuntu-linux-20-04-desktop>
 <e642bc2a-cefa-4ee4-6394-3c10102e8164@suse.com>
 <alpine.DEB.2.22.394.2310190915590.1945130@ubuntu-linux-20-04-desktop>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <alpine.DEB.2.22.394.2310190915590.1945130@ubuntu-linux-20-04-desktop>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0124.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:b9::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_|PA4PR04MB9416:EE_
X-MS-Office365-Filtering-Correlation-Id: dcb3554a-8b54-41fa-7930-08dbd1364829
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	+AXgkQ3OK2x9m2zModMetkBRmlyX35tSY89GRFOCQIdxhun8pXg6egXbkPO5Ub4qfmt1RQVLaEX4UMaJZM+ELwIUwGH/1hnsgHmzQRJDlpifZPUu9OqPdMHRsmeqAz7fkUwrP9eC1gHl1JpKWYUoQ2jWtfQSlDfvZKmxvXE4hQLY/5QH3EQ2w+qK95PDmun7km+sxwMnNmY13qmOvSiHWaWeQsNmhxaxjF+68bl6MdqqfKz5A5h8FvBgiKvMCpK2wI1tmHxbRNU28AMrZbaIrMDj73JVAm3e6yLJ9AVydV6iMLmPPBk5xnn+dEXxyHXOTsqbMtryY9Xt/oTR3hVBun6SwReqg1/Hwj+mQU6DFDz9+iB2AybAtpbPgkSQSpjKZXOXW7EE0vtcZvW2UP+hO6VxnupEFmPfEOl120608UipYKQkPnDylph1A/8oGg5WpkphL3EC0ieHYakjwBi2KpuYFeO22oYVoS38gWtlGMmk1z4Lt+FgK8eqXTz50CQgywC1Tm+kN5f/MIw6HFeUprxoQYRmQFTwOuL3BsGW39uvEH0F2aMJZp6N/vIS4Qk5h46z00w/vu17uujm1r6ulC7qtDdmZBDcvhExR1uaVzqpJDH/vA/Uz/J35MJkDo5b/1/mLAevciFBdpRHPbDGyg==
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)(396003)(39860400002)(376002)(366004)(230922051799003)(1800799009)(451199024)(186009)(64100799003)(36756003)(2906002)(66899024)(4326008)(6916009)(316002)(66946007)(8936002)(54906003)(66476007)(66556008)(478600001)(6486002)(8676002)(5660300002)(31696002)(86362001)(38100700002)(7416002)(41300700001)(26005)(2616005)(6506007)(53546011)(83380400001)(6512007)(31686004)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?ckhpZmFNOStjeDJVTXE3dGVzSVlWem9WSWRVUjFUTTBUY3Q1TVFvVkppTFNE?=
 =?utf-8?B?YUlmbXJCZXQ0ejZOYmdMK09qdkdjeUJCd24zNTA4NG91OVFSaEhEa05SWW9a?=
 =?utf-8?B?WnhERjFBcXBXZngraDNSWHpZWGlMNWxPUk1vSDF0TDZSaUNFYnVjNmk4SEFv?=
 =?utf-8?B?ZTE4MFRtMGh0b2xoczdmQUt1Wno5cHJ6SXRmZUxQU0VFWTd3MFRWb1NGM0ln?=
 =?utf-8?B?QlJQTkVGSmFIU1RQYVhNeFRpaXlZV1kzR090ZmJldzVmVlY3TDBvNnd0SVVK?=
 =?utf-8?B?VE9GaUZxZTlaZ2hiUmdBMU1HTFBhZjNQMFhGOUE1V25neXBvTWpXLzBVSmFv?=
 =?utf-8?B?YlFoTjBmRFMwVnQveUdHN21IN1dSV1NMT1QyVmFVTHpWTnhJeXlTNUtWVThj?=
 =?utf-8?B?Y1lmWE9FWUttQTRGMEE2TnJrNzlzR093d2R4L09PQU1aSW9xbWVxcVJ1UGhk?=
 =?utf-8?B?L2hmOER1Vk5HOXBQQUVtR2JNUER0aHZac0pvMlJCVUMxa2Ivb0k5bGZ5c0Mx?=
 =?utf-8?B?U1NDd2psRnZDVG52b3llVFA1dU54TXJMVHdtd24wV0JMVmY2d3FMV0hzaGN1?=
 =?utf-8?B?WE9tTlhHbCtYK0JBZVY2d3Q4UkR4T0NaR0hLQkdmcnVoN0R5RmZLMG5iMy9Z?=
 =?utf-8?B?UnRrVmRkV01WZ2J2cGNpWkxrMWtKUGNRVW1va1FCRGl0ek9NY1Z1dFN5akVH?=
 =?utf-8?B?T3h5M2pUR0hiWFA0TC9CUHI3cnpxRnFwVEJmTlFXRUEvVG11WTlLbno4U1lD?=
 =?utf-8?B?SmtsM1Y5OWNZNUg2MzROUmxuUExPbldQM0licXBMdm9NVmtXdmN3Q1FqL3FJ?=
 =?utf-8?B?Z00vKzFmUTQzN2RlYzN0c2I2L0dKLzJ3UHMrOEltOGdpREgxNXNoSlZTelk5?=
 =?utf-8?B?QVJqM0hDNU5vbk1QaVd1TEgzTThWMmQ0eXk0d3YyQzZkTy9PaVZoZm5VQUx1?=
 =?utf-8?B?RzYwS3JLZXZNNklFcldlQW9iN2s3WFdoSzJ5UVp6WWkxdStoVGxiVDVYcDM0?=
 =?utf-8?B?Y24rcGt4Z3VuVjhRZU9VeFgyNmlHTjFDekNQbUIreFR1bU9HT05PQjhsSHlB?=
 =?utf-8?B?Y3hqYzJsS2QwYjRuZGE3NEVMb3h5YzJwcS9UUmhuaEpVRTlRd21lanhXb3g2?=
 =?utf-8?B?WCtOQVRsbVRpTFcxQzh4cUgzQWxCU2ZuR3hvQnZvY0JRSWZpOTBlUng3VkIy?=
 =?utf-8?B?eUFaT2ptUlM0MVBaaXJRMm9aQitkaE1TYkhzZE9XekVsSnFmRnFBM0NOTVB6?=
 =?utf-8?B?VkZ6a3cvd3hFclBxaUZxNlFOUlUwQW53R1NxWWZJYXRsczBUNURsL1RRdTlL?=
 =?utf-8?B?cFBHb1JxV1Vsa3kvbWVCVVVmV0ltZk5OL1U3T2RkMXNBdEFWMHRQS1pEOExB?=
 =?utf-8?B?UnpvcmYrU1JpQURHUW1LUGN1SWdIeS92VW5vK3R4NGFKd1h6dFgyRmI0ZTVG?=
 =?utf-8?B?Mkp3Y2xobTdNYk1EQVRVUEl4S2tjZ0FMYzU5Z2lMWHBVMVoyWjdNcVNyenRj?=
 =?utf-8?B?S0JQM1kxUHBqTWozSWFLOStUdG9zazVnbkZidk9ZaGs3ZC91eDQvUE1BbU9T?=
 =?utf-8?B?THNOcSttMlluS0lDRFJTd2hlUjYzUVh0TkRvaFBwbk1FUGlXbFJiODRaMkda?=
 =?utf-8?B?bTQ3cm4wWlJiY0ZxQUZIUnA1YnozbGhWQ2lJbzFuYk8ranhZN29nS1lFaEVk?=
 =?utf-8?B?ZEV4dHVFejhjTmpKTmpOcFpOcTE4S1p6WEVOdzVtbUlvc3BzTVJtazZoQzQ2?=
 =?utf-8?B?VjM2YVlybVpZQTRlR1dsZ0pVdTJMSlpFaVFpdVVyS0JuMHZKNTZzOGdPY3Bs?=
 =?utf-8?B?MDFjNGszWXZCN3pjMVcwVXdaUWJMSFo4eitwRkNkN2MrWXlCSmtod2V0bE1N?=
 =?utf-8?B?encrdmVrbTd5d3VzN3VxVU9Zczh3VnBJZlpUVWxqYzJGaVlOSEEwamxReEZG?=
 =?utf-8?B?dGpibThNNGwvNGhrbzM3R3M0aEVpWDVEU2R3QUFsS2tSZDgvczNHNjl3N05J?=
 =?utf-8?B?UVRTNEQ3dGtIRURtOGh2Zk9ldHpzK1MvQkRNYUpoSEtzTWdHVllQOVBpN0J3?=
 =?utf-8?B?c2h5VDNtdlpuUndReHhWWG1NVVpFUWhqME14czZhVXdqKzBQMGwzY1NVdFhH?=
 =?utf-8?Q?fz1pIuWy0vLKrvPFnjCB7BD4H?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: dcb3554a-8b54-41fa-7930-08dbd1364829
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Oct 2023 06:32:07.3073
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: xg4fhZUPjq6yp9mx4pDfi3K7WufkF35+2n+YdZ1aH9ePrxQ9B9z7ovgSfDDqzvRxef8jzQ7nbXcuolmpkOy96g==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR04MB9416

On 19.10.2023 18:19, Stefano Stabellini wrote:
> On Thu, 19 Oct 2023, Jan Beulich wrote:
>> On 19.10.2023 02:44, Stefano Stabellini wrote:
>>> On Wed, 18 Oct 2023, Jan Beulich wrote:
>>>> On 18.10.2023 02:48, Stefano Stabellini wrote:
>>>>> On Mon, 16 Oct 2023, Jan Beulich wrote:
>>>>>> On 29.09.2023 00:24, Stefano Stabellini wrote:
>>>>>>> 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:
>>>>>>
>>>>>> ... "least resistance" won't gain us much, as hardly any guards don't
>>>>>> start with an underscore.
>>>>>>
>>>>>>> - 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__ ?
>>>>>>
>>>>>> There are no headers in xen/include/. For (e.g.) xen/include/xen/ we
>>>>>> may go with XEN_BLAH_H; whether ASM prefixes are needed I'm not sure;
>>>>>> we could go with just ARM_BLAH_H and X86_BLAH_H?
>>>>>>
>>>>>> The primary question though is (imo) how to deal with private headers,
>>>>>> such that the risk of name collisions is as small as possible.
>>>>>
>>>>> Looking at concrete examples under xen/include/xen:
>>>>> xen/include/xen/mm.h __XEN_MM_H__
>>>>> xen/include/xen/dm.h __XEN_DM_H__
>>>>> xen/include/xen/hypfs.h __XEN_HYPFS_H__
>>>>>
>>>>> So I think we should do for consistency:
>>>>> xen/include/xen/blah.h __XEN_BLAH_H__
>>>>>
>>>>> Even if we know the leading underscore are undesirable, in this case I
>>>>> would prefer consistency.
>>>>
>>>> I'm kind of okay with that. FTAOD - here and below you mean to make this
>>>> one explicit first exception from the "no new leading underscores" goal,
>>>> for newly added headers?
>>>
>>> Yes. The reason is for consistency with the existing header files.
>>>
>>>
>>>>> On the other hand looking at ARM examples:
>>>>> xen/arch/arm/include/asm/traps.h __ASM_ARM_TRAPS__
>>>>> xen/arch/arm/include/asm/time.h __ARM_TIME_H__
>>>>> xen/arch/arm/include/asm/sysregs.h __ASM_ARM_SYSREGS_H
>>>>> xen/arch/arm/include/asm/io.h _ASM_IO_H
>>>>>
>>>>> And also looking at x86 examples:
>>>>> xen/arch/x86/include/asm/paging.h _XEN_PAGING_H
>>>>> xen/arch/x86/include/asm/p2m.h _XEN_ASM_X86_P2M_H
>>>>> xen/arch/x86/include/asm/io.h _ASM_IO_H
>>>>>
>>>>> Thet are very inconsistent.
>>>>>
>>>>>
>>>>> So for ARM and X86 headers I think we are free to pick anything we want,
>>>>> including your suggested ARM_BLAH_H and X86_BLAH_H. Those are fine by
>>>>> me.
>>>>
>>>> To be honest, I'd prefer a global underlying pattern, i.e. if common
>>>> headers are "fine" to use leading underscores for guards, arch header
>>>> should, too.
>>>
>>> I am OK with that too. We could go with:
>>> __ASM_ARM_BLAH_H__
>>> __ASM_X86_BLAH_H__
>>>
>>> I used "ASM" to make it easier to differentiate with the private headers
>>> below. Also the version without "ASM" would work but it would only
>>> differ with the private headers in terms of leading underscores. I
>>> thought that also having "ASM" would help readability and help avoid
>>> confusion.
>>>
>>>
>>>>> For private headers such as:
>>>>> xen/arch/arm/vuart.h __ARCH_ARM_VUART_H__
>>>>> xen/arch/arm/decode.h __ARCH_ARM_DECODE_H_
>>>>> xen/arch/x86/mm/p2m.h __ARCH_MM_P2M_H__
>>>>> xen/arch/x86/hvm/viridian/private.h X86_HVM_VIRIDIAN_PRIVATE_H
>>>>>
>>>>> More similar but still inconsistent. I would go with ARCH_ARM_BLAH_H and
>>>>> ARCH_X86_BLAH_H for new headers.
>>>>
>>>> I'm afraid I don't like this, as deeper paths would lead to unwieldy
>>>> guard names. If we continue to use double-underscore prefixed names
>>>> in common and arch headers, why don't we demand no leading underscores
>>>> and no path-derived prefixes in private headers? That'll avoid any
>>>> collisions between the two groups.
>>>
>>> OK, so for private headers:
>>>
>>> ARM_BLAH_H
>>> X86_BLAH_H
>>>
>>> What that work for you?
>>
>> What are the ARM_ and X86_ prefixes supposed to indicate here? Or to ask
>> differently, how would you see e.g. common/decompress.h's guard named?
> 
> I meant that:
> 
> xen/arch/arm/blah.h would use ARM_BLAH_H
> xen/arch/x86/blah.h would use X86_BLAH_H
> 
> You have a good question on something like xen/common/decompress.h and
> xen/common/event_channel.h.  What do you think about:
> 
> COMMON_BLAH_H, so specifically COMMON_DECOMPRESS_H
> 
> otherwise:
> 
> XEN_BLAH_H, so specifically XEN_DECOMPRESS_H
> 
> I prefer COMMON_BLAH_H but I think both versions are OK.

IOW you disagree with my earlier "... and no path-derived prefixes",
and you prefer e.g. DRIVERS_PASSTHROUGH_VTD_DMAR_H as a consequence?
FTAOD my earlier suggestion was simply based on the observation that
the deeper the location of a header in the tree, the more unwieldy
its guard name would end up being if path prefixes were to be used.

Jan


From xen-devel-bounces@lists.xenproject.org Fri Oct 20 06:36:01 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 06:36:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619673.965148 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtj6x-00086g-Nu; Fri, 20 Oct 2023 06:35:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619673.965148; Fri, 20 Oct 2023 06:35: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 1qtj6x-00086Z-LA; Fri, 20 Oct 2023 06:35:55 +0000
Received: by outflank-mailman (input) for mailman id 619673;
 Fri, 20 Oct 2023 06:35: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=8lwx=GC=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qtj6w-00086T-9B
 for xen-devel@lists.xenproject.org; Fri, 20 Oct 2023 06:35:54 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur04on0611.outbound.protection.outlook.com
 [2a01:111:f400:fe0e::611])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id ea853bff-6f12-11ee-98d5-6d05b1d4d9a1;
 Fri, 20 Oct 2023 08:35:53 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM9PR04MB8682.eurprd04.prod.outlook.com (2603:10a6:20b:43d::9)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.7; Fri, 20 Oct
 2023 06:35:50 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%7]) with mapi id 15.20.6907.022; Fri, 20 Oct 2023
 06:35: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: ea853bff-6f12-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=RgC9vaELtMSmbLiHWBWNvSmn1UV3cGi+w8deceBSoqyJkOnQuqxW8vevEjkm0dtSZrbWVHg6YHnDlBSLAtok13QdxXv2MbVw7lvRbVo6nKIZdD/LB+IxeDlo9Twrxnsp+HvN86oRjmtPkjyTvnPIUsC2fxn/R/udwSst3FzEK2rC3x8ERZJslqCimzfXL8vBqM2P9bDZKXOudHChD1gdfv0fH3bQWWeabMvZIDdlnuFwTwsbud4wqW0wHuNmkODL/+kGYYTn4BYFLytBnqhvHaC8QsP6T0EktU/anixd8gYPhU5ob5umQ7kSej+/VahjyYdyqEK/4KQoSBOMQ98+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=g6f2tYvHry2L4w9vq3Qucgn66j8enyLW3TNbGkOpySc=;
 b=ElcgNg7zhiv0CBJU+lRyW1M5tJo0L3Uqv+u4OxMtWptcf4/WIGWU3+/vC2JuqomfL3hezuEN9IZ3IcDZo17BVHefSAAe+2JM/Hxb39EQ4hHtHfFnAmeQgH9ioso3PY1wrFClfATnGehjnqySSWkMwPD2Qo1ZE3AkC5FgvdGztDFY6xuW6ECZk3Bgf55f8LcMoN4TFkGfreqHPTGw12BjgabWylrpxpWflUsJbQ/YxjWGdwE/IzBR/iapGstcgxJI20/JJ0u7CLJUiR+DCwn94cR6LHVnQ7DG/GV2vVGVL3gl1ekPz2OgJAiWO5kHqCW71/UrP3RpzgwVMVYtQwlpAg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=g6f2tYvHry2L4w9vq3Qucgn66j8enyLW3TNbGkOpySc=;
 b=W4ZvlqupI/QL1f9T4OqujiUfsVdvc1Z47noSE+S54L3O8m2fZvdPAX034MH+mbAgTN3Ix+xepK6dZIXvCVp063IxP+y4b1XYqlF71cLv61IbMKDkLkbnbz9SWW6H/lcNMn7e16I2K6jYOcD1aeykK9y0U5/NacE0xRUmfm9e8JbURfC5VAWM5iKPtfwjkW6VBzCSeEF0rbKsQO2T4Oslx/Ny/DF0YhNe/dAv+aVdnfXSpIav7fTBZvEngpFY3yptuzjuh9x6nnr3H6+mkV61/r6tWsV/c+tSfhylsmFJujYzakZMv5zfw8DUOpcduCgSGCmPyAvR38OndPkC0oNd+Q==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <965cdb62-1b96-c8a1-733b-ad006bb2edc6@suse.com>
Date: Fri, 20 Oct 2023 08:35: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 v3] xen/mm: address violations of MISRA C:2012 Rules
 8.2 and 8.3
Content-Language: en-US
To: Stefano Stabellini <sstabellini@kernel.org>
Cc: Federico Serafini <federico.serafini@bugseng.com>,
 consulting@bugseng.com, 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>,
 Shawn Anastasio <sanastasio@raptorengineering.com>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Henry Wang <henry.wang@arm.com>, xen-devel@lists.xenproject.org
References: <eedcfeb8d1c81527b7e18fcc0eca252577f00035.1696344012.git.federico.serafini@bugseng.com>
 <d7cd7a02-b960-384e-4af2-f70b425e5ad1@suse.com>
 <alpine.DEB.2.22.394.2310181543030.965337@ubuntu-linux-20-04-desktop>
 <30e35f13-d2d0-eaf3-9660-c508655b84ce@suse.com>
 <alpine.DEB.2.22.394.2310190921020.1945130@ubuntu-linux-20-04-desktop>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <alpine.DEB.2.22.394.2310190921020.1945130@ubuntu-linux-20-04-desktop>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0138.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:96::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_|AM9PR04MB8682:EE_
X-MS-Office365-Filtering-Correlation-Id: 0283fa57-6074-40ef-5be1-08dbd136cd35
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	zw2r7UQEO/eZTg/D4n9vg0jDEUk7Kk4/sz8iSejhyVzHFg+JMJV0P+LPVhe9GKovFmvWEN9XEe+/so3V2Cw4GrlNDgrNiF27wjSAabp99TraZj6GaP36U+ih4+lqIwy4Hd/odZp/7/nds6LwUhCrYKK4drP6MSga96neykc/1D4eBrdmo1tVQryrp5oiKOQZIMmnhJPAJf7L4ojFGQKaNfQwRfvM+XEv1ar9q99OHVGS2TOeHbgWqCXsQLwTZn8YFXCMMJugXnGlB86OZhO9mlymEOoda+lvI3DNSWZQ0evUkKPJdwH9yGslNh6dF+dYuJKtnu+MJEvQcgnJMHxnk3dJoAb/NAuODhjyEfbc3TCl0G+7eM7RoaMq72if7+bzoxoA8B2XYYs2hUT7xnu40SUQiDCPm74eUjYgSOB4Nxu+vcdQvvHMujkzHuCH4gxzPqHqyUTU9sfSFKuEDEL3uwY2gNoQ+liFyRUWzgD64elmkSHLp4vvqxCu+6orFdzAHPWEUEFDylQzQsUR5FdbxIORlFriwMjxz7Co3fwvQPa51z9OplTHqf5Z/6D7IQ8gsAn49Hi2mXZiO4/J+ABacZYh6DetlsgliuIiMZXm/J+PQ/KEdWq0mxxH1NcZehZyFDjj/LrC0ex83p71h88JbQ==
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)(366004)(396003)(346002)(39860400002)(230922051799003)(64100799003)(1800799009)(451199024)(186009)(31686004)(2906002)(41300700001)(6512007)(38100700002)(83380400001)(6506007)(7416002)(36756003)(8676002)(4326008)(86362001)(31696002)(26005)(2616005)(53546011)(66946007)(6486002)(478600001)(5660300002)(54906003)(8936002)(66556008)(316002)(66476007)(6916009)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?QklONVJEazlZNU0yTmUwaW9jd25KRHBBa2Zxa2tPbUJPdFQ0SUpCZkRiaWs0?=
 =?utf-8?B?Qmhma05NaGRKam50aVZ4OHRkd0x3Nks2VHdybnUxSGJta25kMnhKNDBsaDNB?=
 =?utf-8?B?cFhtQmo4Y0FCS2FhYnRVL2M4bmovOU5Gbk9QTXVDZ3NtRDlBbDBqVVpHVTQ5?=
 =?utf-8?B?eG4vcFJrc3N6aGt4VzFmTC8zQURCMnVqY1VXcVV4Um9IM2NOZThWUVl6b2NU?=
 =?utf-8?B?VFRmZjRjYkdOWmFWWXZCdEJzKzRWRzdsQ09BNldxT2E4RWJ5QWFjanN5c1Jm?=
 =?utf-8?B?ejdwK3lYMHhYNVZWZHRXcUhVTTVQbDluams5a0dqVi9wbXptRjlSZks1QldI?=
 =?utf-8?B?clp2Y1FzbHYwZGI1MTV1c2VySkRQbjF0SzhtMmVQSlVzdEtCWlJjQ2pvZSsx?=
 =?utf-8?B?UXU0cFQrbEtUd0JGcjBCQ3VjMDAwMktaeTlxTXdRT1hBVHoxVUQyOGkybERu?=
 =?utf-8?B?RWVCZGxKM05BZUV6UnRMaWZ3L3VjWXZkSkpNcjYwMjY5OVMyOXNzYzhmaHY0?=
 =?utf-8?B?TGU3WXhUV3NiOFdaZWtrb25VK3YyRFcxRGNHeit2bUJ1Zm5FNHcwb3hWTC9T?=
 =?utf-8?B?ZmZZalRJSm9PdjQzVkRKeEdoL2FkNTV0L29GTlF3a2ZuUzE3ODFQVE9USFVl?=
 =?utf-8?B?V2tHd0twdFFxM3VyK3ZuUXF5U1lURDY3QUp4TjRHeEVxR3J6REp2VkhRNm1U?=
 =?utf-8?B?c0hIZzlrNDhJS1JVajg5eHZXYWFSejFnakFYN2ZOTVpYOWZvbzFpNHpHRkNS?=
 =?utf-8?B?WGFZOVVCak5UQWxUN2hlcDljSmNKclJjZU1TUm5BRnoxYStKUGRIbXJXdVlE?=
 =?utf-8?B?bnRlZ1dCYkIzalZTSnFyWHdKNEt6TVdTSzhkaVo0dW1hbzV1cml3cWsydlZV?=
 =?utf-8?B?UFRRKzRMY0RjbUwrNDdCektXQzRaVzRjdnBQUEhCZWU1VjdWR0l5N24yVWda?=
 =?utf-8?B?S1lsbmhoNmdUZlhYY0JkK0laMHFNVXlpNTE3UGhHV0k1QkRiMnlreGVXdnVT?=
 =?utf-8?B?QWF1bmF6anczNTJqc2xCVFpubTJBdVVsZnpFNWpOemIxOXYraFFCYUozWVlG?=
 =?utf-8?B?YlIvSmtlUWNIaGpObGdmUSswNFhxOGVtWUM1c1FydnczRVl5NnU0NWsxNlFm?=
 =?utf-8?B?TXdaN1NtUVZxcllLRHo3K3pid1FKQWI3R0kxbytIa2N0Z3dIOW1EbkpTYWdn?=
 =?utf-8?B?VDU1U0RDREVra2lFRHcvMGFKVWhtZktzakVQb2Y5Qk14bnkva2RxdDJ4QVJV?=
 =?utf-8?B?RkhDbEVScWx2Y3BtZjFucExKS3Ayb3dLZGM3Z3l0OFhOOG05TGxZZEl1WUhw?=
 =?utf-8?B?WkMveFlPQ1NiN3RPSVlmenpKMk51cm5TUVpMZ05laTg4K3hNcU8rM21aQUta?=
 =?utf-8?B?SVozaGRqMUFsRHNZK0h4M0hmZm9mUFk5c3k1cHlYTjZZVXV4NTdOT2VFNkUr?=
 =?utf-8?B?Q09RMDBxQWdhS0tDWXVRMmhtOEhxK2R6RGFFamQvZCtrZ3lwendyWWpjYjZu?=
 =?utf-8?B?dmVYWk1SYXR5RDJPTVprOHY2V2dXaEhvMmNjaU55RXY4SXpIQnpRUTh1NHZa?=
 =?utf-8?B?dmRGWjZrcUFFOU9xcS9Tc1QxV1RjZnNwdFNxTExWUFRsd2VGRERUMU14dzh0?=
 =?utf-8?B?ZVkzWjV0WTB3b2N3UW5KSHR0Qk1Sa2I4WDVTU2RJcnpHNXFzUGpuVVBUZ3FM?=
 =?utf-8?B?dWhtMUpZZXA4cFVGWE1IcmdkMkM1Q0o1bm9YRThIY3o1dE9wTDNOOEp0am5o?=
 =?utf-8?B?aHgyM2VPVjJwaHhyMkJmWVVNbGdwK0NzN0dXZ3ZCd3Z2VUgwbDJkaUZOUVBO?=
 =?utf-8?B?R3IyVnQrQ0xQUVhuYjVXZXFoRDNhWHMvMCswc1F5Q1QxM0taMG5aWWVVZk80?=
 =?utf-8?B?NU5lb2VXOERndDJQMXBqVTlmbGtrT3c5Ynd5VlFtTjBaMDNlV3NiaStXTWhC?=
 =?utf-8?B?ZlJ0amRnbDRCRS9rUm1LbzJVVDdnQU5zVnpPUXkxcHg0ZFo3am43YWVrZENJ?=
 =?utf-8?B?VkZ2OTRIODZFZndMRk5neG9QbHh3Sk1nR2hXaG95Z2IxT0h5TUdwUVZFSndo?=
 =?utf-8?B?UmVqVUlPc085eXVsOS9zMTl5cmprMDZFNDhrdTJCMkV6aEViVndLcFRPRGJT?=
 =?utf-8?Q?uJVaxxGVHUcPzpd10cCxDIF3g?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 0283fa57-6074-40ef-5be1-08dbd136cd35
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Oct 2023 06:35:50.5423
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: r35O4T5dOmJClkeuG7qzmxEPVM87buRUt/5XXcjgxgB6JwLR32miOszrYfDl4TZg9XRTYe7GWkThmVpA3KUbQw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR04MB8682

On 19.10.2023 18:26, Stefano Stabellini wrote:
> On Thu, 19 Oct 2023, Jan Beulich wrote:
>> On 19.10.2023 00:43, Stefano Stabellini wrote:
>>> On Mon, 16 Oct 2023, Jan Beulich wrote:
>>>> On 03.10.2023 17:24, Federico Serafini wrote:
>>>>> --- a/xen/arch/x86/mm.c
>>>>> +++ b/xen/arch/x86/mm.c
>>>>> @@ -5901,17 +5901,17 @@ int destroy_xen_mappings(unsigned long s, unsigned long e)
>>>>>   * a problem.
>>>>>   */
>>>>>  void init_or_livepatch modify_xen_mappings_lite(
>>>>> -    unsigned long s, unsigned long e, unsigned int _nf)
>>>>> +    unsigned long s, unsigned long e, unsigned int nf)
>>>>>  {
>>>>> -    unsigned long v = s, fm, nf;
>>>>> +    unsigned long v = s, fm, flags;
>>>>
>>>> While it looks correct, I consider this an unacceptably dangerous
>>>> change: What if by the time this is to be committed some new use of
>>>> the local "nf" appears, without resulting in fuzz while applying the
>>>> patch? Imo this needs doing in two steps: First nf -> flags, then
>>>> _nf -> nf.
>>>
>>> Wouldn't it be sufficient for the committer to pay special attention
>>> when committing this patch? We are in code freeze anyway, the rate of
>>> changes affecting staging is low.
>>
>> Any kind of risk excludes a patch from being a 4.18 candidate, imo.
> 
> I agree on that. I think it is best to commit it for 4.19 when the tree
> opens.
> 
> 
>> That was the case in early RCs already, and is even more so now. Paying
>> special attention is generally a possibility, yet may I remind you that
>> committing in general is intended to be a purely mechanical operation?
> 
> Sure, and I am not asking for a general process change. I am only
> suggesting that this specific concern on this patch is best solved in
> the simplest way: by a committer making sure the patch is correct on
> commit. It is meant to save time for everyone.
> 
> Jan, if you are OK with it, we could just trust you to commit it the
> right away as the earliest opportunity.

If you can get Andrew or Roger to ack this patch in its present shape,
I won't stand in the way. I'm not going to ack the change without the
indicated split.

Jan


From xen-devel-bounces@lists.xenproject.org Fri Oct 20 06:38:33 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 06:38:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619675.965158 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtj9U-0000ED-6O; Fri, 20 Oct 2023 06:38:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619675.965158; Fri, 20 Oct 2023 06:38: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 1qtj9U-0000E6-2D; Fri, 20 Oct 2023 06:38:32 +0000
Received: by outflank-mailman (input) for mailman id 619675;
 Fri, 20 Oct 2023 06:38: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=8lwx=GC=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qtj9S-0000E0-IN
 for xen-devel@lists.xenproject.org; Fri, 20 Oct 2023 06:38:30 +0000
Received: from EUR01-DB5-obe.outbound.protection.outlook.com
 (mail-db5eur01on0631.outbound.protection.outlook.com
 [2a01:111:f400:fe02::631])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 47a600dd-6f13-11ee-98d5-6d05b1d4d9a1;
 Fri, 20 Oct 2023 08:38:29 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PA4PR04MB9416.eurprd04.prod.outlook.com (2603:10a6:102:2ab::21)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.8; Fri, 20 Oct
 2023 06:38:27 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%7]) with mapi id 15.20.6907.022; Fri, 20 Oct 2023
 06:38: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: 47a600dd-6f13-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=BZ9/82jNVQpAlT7PSwxFlqxfHNKazp6KSUMo4zg/DoudECnp+zvjsWNCz0IypM8t6edyJm25RE0DM+mqwXPkiRbujSD6Z2BR2gVYpm3JaDskKmrwFfx/Qd9AYCgDXeCOLmC9SzY2pwQ/CmU6kX0nB5eDmoGlyGXLUnJCERfW1lOkKjbG3svV/dEI6sQFL6ojLZYFwk3t0PpnWLZDHjE/nM6VEWQe5pFhwzXx2Qrd8a7Xz5PdBu9p6aZP1D0lD9iEqGU6h/PRqcEVtNeAjnBrTUifwSUJydZMUBqjatgTbZ4mXcZjNwpn4LkLHk62+f3bBatnAY2P4lrfG728MGWstg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=0GlL0pCx8TxCi3MzjDPJc+lSsg7uh+KfVMtUHPMFiNI=;
 b=H59b75tNMvWJbR1F5B2sA2YABMetjgwjZb+GgI0bvtKScfTauS/0jNvdkvR3OIYf/6T4VQmav25sGz+O/5mSKhQ3FYJwmhQ5+vSmDAmr3WIVyWjyfChcRz8e3B3Av3S9fhzXDSgYcESz1NnJgpjwA9ftTnVmkLkSTqQeQNtP1dHLuKHh1fBHJawMjBUv9wH/fdVqZCv2R99XPZT8DvO9q84WIv4mkK0tY5O01JBYpm+qmsC06hK1XEYWuM9HsylegkYCmxO7TBvQDMNEz+wb+FTIWE5+Va8mgkdgsJ2opRTg1FfWM6xSzFSaoTPS1lPmRJId0zoxos069JrPdMhbBA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=0GlL0pCx8TxCi3MzjDPJc+lSsg7uh+KfVMtUHPMFiNI=;
 b=YQ0DpaT9m3wScj+nyz1zJSuQiCkQFwFoD7DQTyngSJeOhE901AW+ULcGGJ9uNwb37Eeve/URv+f3QKgJ3F5BN2AkSd0Ya0Btr8Vn2KCp7TNAN52BnoRHDOP3XXRhJ5jCCzlk7S2pLpURnDQGIimXH0kS5ZYLCRb9dldFPuCrGvc3FQsrC7i9tKoJ991bVSydz0XTVpkTKqVojD87DuvxLQMPQSjp1rD8a/gHFDWn4ZiwxgPHbKlIWRDTAfxdvlCjeG/uUupe653dNfdcPe/uUk6jBIcE1VHzmbtFbxSY3YTZzoAeADsjh+ch2fybmIXAli+xhNKV63holYtFir8Fvg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <dd58e1cb-8f17-986d-f4f9-f39e998e05a0@suse.com>
Date: Fri, 20 Oct 2023 08:38: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 PATCH][for-4.19 v2] xen: Add SAF deviations for MISRA C:2012
 Rule 7.1
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.cooper3@citrix.com, roger.pau@citrix.com,
 Simone Ballarin <simone.ballarin@bugseng.com>,
 Doug Goldstein <cardoe@cardoe.com>, George Dunlap
 <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Wei Liu <wl@xen.org>, xen-devel@lists.xenproject.org
References: <a9c52c943380f2c35f0a6ccab8215c03e87c99dc.1697712857.git.nicola.vetrini@bugseng.com>
 <de2b666e-ca48-58d2-73eb-5adc797f818e@suse.com>
 <d879b8e4689e51131f081edcb3b2abe6@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <d879b8e4689e51131f081edcb3b2abe6@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0238.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:b2::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_|PA4PR04MB9416:EE_
X-MS-Office365-Filtering-Correlation-Id: dc3b462c-4033-42f9-de04-08dbd1372aa4
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	zozzYr1kzwjZnlgNWikQEbfZFx62af3unvKEGoedTYRjL2rA+CrYwh9Y4iJyBkQ3TSeMyJGvBG9sKqfrDgtDQACcS+tS73yGJcNvF3TDVy2zEP6vsTBhevqrNoOxBf/q74U+d6dgw+qUeH2xeGJXGa1fbzafynTpMTUYseM5TWD7iqR1r0/OhJFM/BQm5k5PJm4LEC7FfbEKap5JB3PdNHtzyiC69i74GnVPj3UKitmWu66oBxWz10hAmSastNsPJCXu3ksuBx85fqIbww65wb/dJMa8W0k/uDSNpNDfnR9OIeIYDD7Ee2KFkGLkQjPcI7LN1jEr2dZ4gGmSkzsdd/SOb+oAFKnIVZBHHB6TO9DM+9ujb6JBqG2UemoBrxnSeZ2EH6xeFsVeqpL1rd3Cw62fI+JAUSKoEVBQCRW9Qlqj3OUkUPWWLUyEjG2YAWHnMAER8G7p8VW/CiMNlQyCaWyKUSs+3WtIC0eiRVGt01TTTjZe4Du+1M3hMz9Nikw0rixjyI2WQjoJG5Kp6tLrkLLvoPrRt8mjyf/V86oT/b6u/8/lC4qW6zIynd/FXjMzebufMhRnjtV0exsJhRUv4lI1GhysqggAPTVVdmkogdcgdka+ZnqOieMb98SinDTC8bhRwx7XWEoVf4WehWCxzg==
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)(230922051799003)(64100799003)(1800799009)(451199024)(186009)(31686004)(66899024)(36756003)(2906002)(7416002)(38100700002)(86362001)(83380400001)(6512007)(41300700001)(26005)(53546011)(6506007)(2616005)(31696002)(4326008)(6666004)(8676002)(6486002)(5660300002)(478600001)(66946007)(54906003)(8936002)(66476007)(6916009)(316002)(66556008)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?OTFidm5tMWlqVzVMU2RQTjBRbEJXSkJCTUlJRnFGWktmWkxIVFZLcUo1eVRL?=
 =?utf-8?B?eTBJRzVUMWUzemlLdGZCaUZ1eWNUd1paUnVBekwvdldBTGdlRFNFcnk1UUU1?=
 =?utf-8?B?R3BjU2VaWTN3QjJoK2ZscnRiWWhwcXZiSXJsZDdaNlg5L0RmUCtuTDI4ZlZL?=
 =?utf-8?B?Wkp0T1lRZ29FQk1oNlNBTDArYldWY2Z2ZS9UdmpVQUExQ01pRWFnN3Rha1lk?=
 =?utf-8?B?UjJlczhZU0N3a1hEMHZwczVYVE9mdlVtVjlFYTBNR3JEakpwNDBUYVdQNlFr?=
 =?utf-8?B?VnlNdWVnN25WZGdkcWdjK3d5ZDJHRkYzTUFKRnhYVkRkY1YyQzlLeC96dWdY?=
 =?utf-8?B?NElBUTFzNUVWSGJYNGVKR2svR3hJQTdpQ3lyMlEveGFhQnZPL3JEcUthVWQy?=
 =?utf-8?B?VFFWYjRickRuVHpyUkNETDI5ODhqZjBZWkxRc3ZoVFpyZituUUp0RnI1alNk?=
 =?utf-8?B?Rk5TTm9MMXMxZGVUVFhRTzVNZmtINXUxQWdoTjFWWHBsUXdkYUdoVlNEd3lx?=
 =?utf-8?B?Sy9Wb0diN1pISEZuL2NzYnNNVFdIRzRjbUF2MVduNm5aMHBJSDh0b3RQVmNN?=
 =?utf-8?B?Ti8zMnpTcmlIN1JRT3J6ci9IN3J6ZDRrTWZLa3BZYnMwL25CTUxDSzdpSjRY?=
 =?utf-8?B?MDVpU1pQNWQ3ZXBpQmZWOCtrQUpablFXTGx5VFRtbytmZTBqbERxSUJEWnNM?=
 =?utf-8?B?a2RMaENUQVVRYks0dzBHWFdRUi9jM3NvVGRXdUFEZE1PbjdreVJaR3E4WVA5?=
 =?utf-8?B?QjY3RzdGK20yNXpFWmdWZWZqRmZHNnB1U29obmoyblUyQUdMQ0NHNWF0M0xq?=
 =?utf-8?B?MExocC9PVUJXN2ZJUVBFRHVxTXQ3YTdCRkFPdFZZTTRTOE5mMHVEVDJmMmQ0?=
 =?utf-8?B?TkxBenZscXJBUFdZZExmaTF1TXlEakxkTXM1bytSV0FONk16ZWRPMnRqZ1VK?=
 =?utf-8?B?YUZzRVY1cFF5V1Q0ZFlnbkZEQjlTYU84Z0M3VHR0U0YyQmJmUVVxV1oyQzQz?=
 =?utf-8?B?ZG5UQnd1WjFtNllqZWRtcHJjc1U3WWxUL1ByMWdmTkk5TjZwVU5rdDllMXNQ?=
 =?utf-8?B?elNmdit4N2FENkRqK09LZG0rZEM0SEtFZXIyelJ6SGsrOFJQMWlaVXo5c3Jl?=
 =?utf-8?B?N2pQTlhBaWZzdFZneGhiTjh5cFhUQlRubGViZitpR2xGeW90aFZDMHVtY2lp?=
 =?utf-8?B?ZXlxWEhKY1dhV3I2QklKbHhJbmJkZGRna1ZvUEFnVWpvaDQ4ejdoT09KMDly?=
 =?utf-8?B?eWlLcXlkY0UwWXJaZTdnM0hUL0x3dndOZXp4ckVja1ZNMWYvbEcwM0lVVWE4?=
 =?utf-8?B?dXlBY1hYdmsyN0lGUmF1UFRzTHBCZ1c0d1ZER0RDb3V6K0RWdlZNTzBBaWJ1?=
 =?utf-8?B?T1lsZU9SK0ZoSVlxRDZ4U1VUU1NMTkZubEZLQ2xUcEVhQU1YR243VXZwNUVj?=
 =?utf-8?B?ZXNubkZPZFljWGdLMWZ6SGdPbEl3Y3JBeUc5WHVLcFlTV01vaE13VXViaHo2?=
 =?utf-8?B?NUdPTEpVVnNtaHRWOXdYSDFZbVpjOEtGZ2k0Zmorb2FCZld0bFUrRk9TRUZp?=
 =?utf-8?B?WDFMWWdpeDJxZCtkMFp3OWZtRnZ6b0xMTCtMYjJ5c1paOXhmbmpmSTVDc2x6?=
 =?utf-8?B?c1ozYnZuYWgyUFFvcTVQOXRDcy92cFVZUnIyZlhxKzI1b0VSNG5VR2szcldY?=
 =?utf-8?B?TUF1cEZPSnlvaU54V3JLcDVhb1V6dHppOENhMTdQQ1ZlYzNOdmVLejJ3L2V0?=
 =?utf-8?B?NXpQS2lESXMxU0poUWFWTE53M0FHTWZhdHdIczVyOFdGcloyU2EyQmRIamxU?=
 =?utf-8?B?YXQ0bHk4T01DcW4zMjRWTDN3ZStiZEdpaVFRNmhBNXpFRHVwWXZYZlIrandZ?=
 =?utf-8?B?Z2UzQ1pLTzE1SWlTUjJkWHM5elBoVjEyd3VOc3ZrK1lrOTluTm9IcWYxL3U3?=
 =?utf-8?B?eTZQSFlidTMzSStpa1lHZjB1Nm9GZU5ZcndoUDRuZVBKMHBQV0FkaFduQlRv?=
 =?utf-8?B?WkJpU01SSzRMUFI1S0JwY0c3eklhQnBpdlYyejU1RVhpcVlrQWlEZ0V4WjlP?=
 =?utf-8?B?djlENmlpUFlCd3pwdmYzT2d3b1BUejBPaWZEN0w4U21kWG1JVExSdTNjZFNp?=
 =?utf-8?Q?ga++cFJfuV91tz53+s0U48onW?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: dc3b462c-4033-42f9-de04-08dbd1372aa4
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Oct 2023 06:38:27.3316
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: kAsRENXUNwHXKlGIWul4N7FtTNdFvOzKyuAQKymlD5Ux9cRLwHYFW3VRJoxFUNltghQU87oRsLbyYGgtlGo1IA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR04MB9416

On 19.10.2023 18:34, Nicola Vetrini wrote:
> On 19/10/2023 17:57, Jan Beulich wrote:
>> On 19.10.2023 13:04, Nicola Vetrini wrote:
>>> --- a/automation/eclair_analysis/ECLAIR/deviations.ecl
>>> +++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
>>> @@ -85,10 +85,10 @@ conform to the directive."
>>>  # Series 7.
>>>  #
>>>
>>> --doc_begin="Usage of the following constants is safe, since they are 
>>> given as-is
>>> -in the inflate algorithm specification and there is therefore no risk 
>>> of them
>>> -being interpreted as decimal constants."
>>> --config=MC3R1.R7.1,literals={safe, 
>>> "^0(007|37|070|213|236|300|321|330|331|332|333|334|335|337|371)$"}
>>> +-doc_begin="Octal constants used as arguments to macro INSTR_ENC or 
>>> MASK_EXTR
>>> +can be used, because they appear as is in specifications, manuals, 
>>> and
>>> +algorithm descriptions."
>>> +-config=MC3R1.R7.1,reports+={safe, 
>>> "any_area(any_loc(any_exp(macro(^(INSTR_ENC|MASK_EXTR)$))))"}
>>
>> INSTR_ENC() is a local macro in x86'es AMD SVM code. A macro of the 
>> same
>> name could imo be introduced without issues in, say, Arm code. The 
>> above
>> would then needlessly suppress findings there, aiui.
>>
>> MASK_EXTR() otoh is a global macro which ise used for various purposes.
>> Excluding checking there is imo going too far, too.
> 
> I should have thought about it; I can simply enforce the deviation to 
> additionally match
> only a specific file for each of the macros.

That'll work for INSTR_ENC(), but not for MASK_EXTR().

>>> --- a/docs/misra/deviations.rst
>>> +++ b/docs/misra/deviations.rst
>>> @@ -90,6 +90,12 @@ Deviations related to MISRA C:2012 Rules:
>>>           - __emulate_2op and __emulate_2op_nobyte
>>>           - read_debugreg and write_debugreg
>>>
>>> +   * - R7.1
>>> +     - It is safe to use certain octal constants the way they are 
>>> defined in
>>> +       specifications, manuals, and algorithm descriptions as 
>>> arguments to
>>> +       macros 'INSTR_ENC' and 'MASK_EXTR'.
>>> +     - Tagged as `safe` for ECLAIR.
>>
>> Similarly this wording is imo inappropriate, while ...
>>
> 
> I tried to be a bit more specific about what is actually being deviated, 
> on the assumption
> that the maintainers and contributors would find it more useful than 
> parsing ecl files, but
> if you prefer it to be more general, no problem.

Just dropping everything after the last comma would deal with my concern.

Jan


From xen-devel-bounces@lists.xenproject.org Fri Oct 20 07:04:30 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 07:04:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619680.965167 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtjYH-0006Yd-58; Fri, 20 Oct 2023 07:04:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619680.965167; Fri, 20 Oct 2023 07: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 1qtjYH-0006YW-2d; Fri, 20 Oct 2023 07:04:09 +0000
Received: by outflank-mailman (input) for mailman id 619680;
 Fri, 20 Oct 2023 07: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=SYNS=GC=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qtjYF-0006Xe-Ar
 for xen-devel@lists.xenproject.org; Fri, 20 Oct 2023 07:04:07 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id db98a480-6f16-11ee-98d5-6d05b1d4d9a1;
 Fri, 20 Oct 2023 09:04:06 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id 86C794EE073A;
 Fri, 20 Oct 2023 09:04: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: db98a480-6f16-11ee-98d5-6d05b1d4d9a1
MIME-Version: 1.0
Date: Fri, 20 Oct 2023 09:04:05 +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.cooper3@citrix.com, roger.pau@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][for-4.19 v3 8/8] docs/misra: exclude three more files
In-Reply-To: <6ed0694a-a8cb-f01b-3d16-681c29d48522@suse.com>
References: <cover.1697722648.git.nicola.vetrini@bugseng.com>
 <0eae39cdc68e48932936e2c510a867ebe1f7c298.1697722648.git.nicola.vetrini@bugseng.com>
 <6ed0694a-a8cb-f01b-3d16-681c29d48522@suse.com>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <a3f9c1da3e5c5721da0f13161b30f539@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/10/2023 08:04, Jan Beulich wrote:
> On 19.10.2023 15:40, Nicola Vetrini wrote:
>> These files should not conform to MISRA guidelines at the moment,
>> therefore they are added to the exclusion list.
>> 
>> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
>> ---
>> These exclusions are automatically picked up by ECLAIR's automation
>> to hide reports originating from these files.
>> ---
>>  docs/misra/exclude-list.json | 12 ++++++++++++
>>  1 file changed, 12 insertions(+)
>> 
>> diff --git a/docs/misra/exclude-list.json 
>> b/docs/misra/exclude-list.json
>> index 575ed22a7f67..b2b4b9253615 100644
>> --- a/docs/misra/exclude-list.json
>> +++ b/docs/misra/exclude-list.json
>> @@ -145,6 +145,10 @@
>>              "rel_path": "common/zstd/*",
>>              "comment": "Imported from Linux, ignore for now"
>>          },
>> +        {
>> +            "rel_path": "common/symbols-dummy.c",
>> +            "comment": "The resulting code is not included in the 
>> final Xen binary, ignore for now"
>> +        },
>>          {
>>              "rel_path": "crypto/*",
>>              "comment": "Origin is external and documented in 
>> crypto/README.source"
>> @@ -189,6 +193,14 @@
>>              "rel_path": "include/acpi/acpixf.h",
>>              "comment": "Imported from Linux, ignore for now"
>>          },
>> +        {
>> +          "rel_path": "include/acpi/acexep.h",
> 
> Typo (include/acpi/acexcep.h)?
> 
> Jan

Indeed, thanks. This is trivial enough to be done on commit, I suppose.

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


From xen-devel-bounces@lists.xenproject.org Fri Oct 20 07:07:28 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 07:07:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619683.965178 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtjbS-0007z7-K8; Fri, 20 Oct 2023 07:07:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619683.965178; Fri, 20 Oct 2023 07: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 1qtjbS-0007z0-H0; Fri, 20 Oct 2023 07:07:26 +0000
Received: by outflank-mailman (input) for mailman id 619683;
 Fri, 20 Oct 2023 07:07: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=SYNS=GC=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qtjbQ-0007yt-T8
 for xen-devel@lists.xenproject.org; Fri, 20 Oct 2023 07:07:24 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 50ea5357-6f17-11ee-9b0e-b553b5be7939;
 Fri, 20 Oct 2023 09:07:22 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id 943604EE073A;
 Fri, 20 Oct 2023 09:07: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: 50ea5357-6f17-11ee-9b0e-b553b5be7939
MIME-Version: 1.0
Date: Fri, 20 Oct 2023 09:07:22 +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, 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>
Subject: Re: [XEN PATCH][for-4.19 v3 1/8] xen: add declarations for variables
 where needed
In-Reply-To: <alpine.DEB.2.22.394.2310191413310.2099202@ubuntu-linux-20-04-desktop>
References: <cover.1697722648.git.nicola.vetrini@bugseng.com>
 <4d419cbffc84e0f9934794d105705ac64094a54a.1697722648.git.nicola.vetrini@bugseng.com>
 <alpine.DEB.2.22.394.2310191413310.2099202@ubuntu-linux-20-04-desktop>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <e771f4d96334d3ed8631717c499f5c72@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/10/2023 23:13, Stefano Stabellini wrote:
> On Thu, 19 Oct 2023, Nicola Vetrini wrote:
>> Some variables with external linkage used in C code do not have
>> a visible declaration where they are defined. Providing such
>> declaration also resolves violations of MISRA C:2012 Rule 8.4.
>> 
>> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
>> ---
>> Changes in v2:
>> - make xenpf_lock static on ARM
>> Changes in v3:
>> - moved back code from symbols.h to symbols.c
>> - dropped two declarations, now deviated
>> ---
>>  xen/arch/arm/include/asm/setup.h  | 3 +++
>>  xen/arch/arm/include/asm/smp.h    | 3 +++
>>  xen/arch/arm/platform_hypercall.c | 2 +-
>>  xen/arch/x86/cpu/mcheck/mce.c     | 6 +++---
>>  xen/arch/x86/irq.c                | 2 +-
>>  xen/include/xen/symbols.h         | 1 +
>>  6 files changed, 12 insertions(+), 5 deletions(-)
>> 
>> diff --git a/xen/arch/arm/include/asm/setup.h 
>> b/xen/arch/arm/include/asm/setup.h
>> index 98af6f55f5a0..2a2d6114f2eb 100644
>> --- a/xen/arch/arm/include/asm/setup.h
>> +++ b/xen/arch/arm/include/asm/setup.h
>> @@ -184,9 +184,12 @@ int map_range_to_domain(const struct 
>> dt_device_node *dev,
>>  extern lpae_t boot_pgtable[XEN_PT_LPAE_ENTRIES];
>> 
>>  #ifdef CONFIG_ARM_64
>> +extern lpae_t boot_first[XEN_PT_LPAE_ENTRIES];
>>  extern lpae_t boot_first_id[XEN_PT_LPAE_ENTRIES];
>>  #endif
>> +extern lpae_t boot_second[XEN_PT_LPAE_ENTRIES];
>>  extern lpae_t boot_second_id[XEN_PT_LPAE_ENTRIES];
>> +extern lpae_t boot_third[XEN_PT_LPAE_ENTRIES * XEN_NR_ENTRIES(2)];
>>  extern lpae_t boot_third_id[XEN_PT_LPAE_ENTRIES];
>> 
>>  /* Find where Xen will be residing at runtime and return a PT entry 
>> */
>> diff --git a/xen/arch/arm/include/asm/smp.h 
>> b/xen/arch/arm/include/asm/smp.h
>> index 4fabdf5310d8..28bf24a01d95 100644
>> --- a/xen/arch/arm/include/asm/smp.h
>> +++ b/xen/arch/arm/include/asm/smp.h
>> @@ -6,6 +6,9 @@
>>  #include <asm/current.h>
>>  #endif
>> 
>> +extern struct init_info init_data;
>> +extern unsigned long smp_up_cpu;
>> +
>>  DECLARE_PER_CPU(cpumask_var_t, cpu_sibling_mask);
>>  DECLARE_PER_CPU(cpumask_var_t, cpu_core_mask);
>> 
>> diff --git a/xen/arch/arm/platform_hypercall.c 
>> b/xen/arch/arm/platform_hypercall.c
>> index 743687a30390..fde4bc3e5809 100644
>> --- a/xen/arch/arm/platform_hypercall.c
>> +++ b/xen/arch/arm/platform_hypercall.c
>> @@ -17,7 +17,7 @@
>>  #include <asm/current.h>
>>  #include <asm/event.h>
>> 
>> -DEFINE_SPINLOCK(xenpf_lock);
>> +static DEFINE_SPINLOCK(xenpf_lock);
>> 
>>  long do_platform_op(XEN_GUEST_HANDLE_PARAM(xen_platform_op_t) 
>> u_xenpf_op)
>>  {
>> diff --git a/xen/arch/x86/cpu/mcheck/mce.c 
>> b/xen/arch/x86/cpu/mcheck/mce.c
>> index 6141b7eb9cf1..e855f958030d 100644
>> --- a/xen/arch/x86/cpu/mcheck/mce.c
>> +++ b/xen/arch/x86/cpu/mcheck/mce.c
>> @@ -1682,13 +1682,13 @@ long do_mca(XEN_GUEST_HANDLE_PARAM(xen_mc_t) 
>> u_xen_mc)
>>      return ret;
>>  }
>> 
>> -int mcinfo_dumpped;
>> +static int mcinfo_dumped;
>>  static int cf_check x86_mcinfo_dump_panic(mctelem_cookie_t mctc)
>>  {
>>      struct mc_info *mcip = mctelem_dataptr(mctc);
>> 
>>      x86_mcinfo_dump(mcip);
>> -    mcinfo_dumpped++;
>> +    mcinfo_dumped++;
>> 
>>      return 0;
>>  }
>> @@ -1702,7 +1702,7 @@ static void mc_panic_dump(void)
>>      for_each_online_cpu(cpu)
>>          mctelem_process_deferred(cpu, x86_mcinfo_dump_panic,
>>                                   mctelem_has_deferred_lmce(cpu));
>> -    dprintk(XENLOG_ERR, "End dump mc_info, %x mcinfo dumped\n", 
>> mcinfo_dumpped);
>> +    dprintk(XENLOG_ERR, "End dump mc_info, %x mcinfo dumped\n", 
>> mcinfo_dumped);
>>  }
>> 
>>  void mc_panic(const char *s)
>> diff --git a/xen/arch/x86/irq.c b/xen/arch/x86/irq.c
>> index 6abfd8162120..604dba94b052 100644
>> --- a/xen/arch/x86/irq.c
>> +++ b/xen/arch/x86/irq.c
>> @@ -43,7 +43,7 @@ int __read_mostly opt_irq_vector_map = 
>> OPT_IRQ_VECTOR_MAP_DEFAULT;
>>  static unsigned char __read_mostly irq_max_guests;
>>  integer_param("irq-max-guests", irq_max_guests);
>> 
>> -vmask_t global_used_vector_map;
>> +static vmask_t global_used_vector_map;
>> 
>>  struct irq_desc __read_mostly *irq_desc = NULL;
>> 
>> diff --git a/xen/include/xen/symbols.h b/xen/include/xen/symbols.h
>> index 20bbb28ef226..1b2863663aa0 100644
>> --- a/xen/include/xen/symbols.h
>> +++ b/xen/include/xen/symbols.h
>> @@ -33,4 +33,5 @@ struct symbol_offset {
>>      uint32_t stream; /* .. in the compressed stream.*/
>>      uint32_t addr;   /* .. and in the fixed size address array. */
>>  };
>> +
>>  #endif /*_XEN_SYMBOLS_H*/
> 
> Spurious change.
> 
> Aside from this:
> 
> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>

I left it in on purpose, to separate code from the header guard.

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


From xen-devel-bounces@lists.xenproject.org Fri Oct 20 08:00:05 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 08:00:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619688.965188 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtkQG-00018T-Dc; Fri, 20 Oct 2023 07:59:56 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619688.965188; Fri, 20 Oct 2023 07:59: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 1qtkQG-00018M-AR; Fri, 20 Oct 2023 07:59:56 +0000
Received: by outflank-mailman (input) for mailman id 619688;
 Fri, 20 Oct 2023 07:59: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 1qtkQE-00018G-Lu
 for xen-devel@lists.xenproject.org; Fri, 20 Oct 2023 07:59: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 1qtkQD-0002z6-TC; Fri, 20 Oct 2023 07:59:53 +0000
Received: from 54-240-197-228.amazon.com ([54.240.197.228] helo=[10.95.107.48])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qtkQD-0000Gj-MF; Fri, 20 Oct 2023 07:59: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=fbpPQ8R/OiQdqr74i7KGVD4bIDMoIy76VyIulOIhmCQ=; b=gMyyn65vlkGQlfSPA4oacEfWIm
	xp9S4uejZu6GKYiVdlfZmXUwlRYDoqduOOn742Y1jNSFVZq7MeGX0o3Ah9fctdg1L9pAeRqAdk8Ba
	aOKXeFyaW/6glLol0mCd/cmk2+44IxcdVk9R5yacvUbOHZdbl8FxOo3CSnTaTiThcR+g=;
Message-ID: <de0dd96d-0416-44bc-944b-c08d955ef44d@xen.org>
Date: Fri, 20 Oct 2023 08:59:50 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN PATCH][for-4.19 v3 1/8] xen: add declarations for variables
 where needed
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,
 andrew.cooper3@citrix.com, roger.pau@citrix.com,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>
References: <cover.1697722648.git.nicola.vetrini@bugseng.com>
 <4d419cbffc84e0f9934794d105705ac64094a54a.1697722648.git.nicola.vetrini@bugseng.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <4d419cbffc84e0f9934794d105705ac64094a54a.1697722648.git.nicola.vetrini@bugseng.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi,

On 19/10/2023 14:39, Nicola Vetrini wrote:
> Some variables with external linkage used in C code do not have
> a visible declaration where they are defined. Providing such
> declaration also resolves violations of MISRA C:2012 Rule 8.4.

The commit message doesn't match the code in several places.

> 
> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
> ---
> Changes in v2:
> - make xenpf_lock static on ARM
> Changes in v3:
> - moved back code from symbols.h to symbols.c
> - dropped two declarations, now deviated
> ---
>   xen/arch/arm/include/asm/setup.h  | 3 +++
>   xen/arch/arm/include/asm/smp.h    | 3 +++
>   xen/arch/arm/platform_hypercall.c | 2 +-
>   xen/arch/x86/cpu/mcheck/mce.c     | 6 +++---
>   xen/arch/x86/irq.c                | 2 +-
>   xen/include/xen/symbols.h         | 1 +
>   6 files changed, 12 insertions(+), 5 deletions(-)
> 
> diff --git a/xen/arch/arm/include/asm/setup.h b/xen/arch/arm/include/asm/setup.h
> index 98af6f55f5a0..2a2d6114f2eb 100644
> --- a/xen/arch/arm/include/asm/setup.h
> +++ b/xen/arch/arm/include/asm/setup.h
> @@ -184,9 +184,12 @@ int map_range_to_domain(const struct dt_device_node *dev,
>   extern lpae_t boot_pgtable[XEN_PT_LPAE_ENTRIES];
>   
>   #ifdef CONFIG_ARM_64
> +extern lpae_t boot_first[XEN_PT_LPAE_ENTRIES];
>   extern lpae_t boot_first_id[XEN_PT_LPAE_ENTRIES];
>   #endif
> +extern lpae_t boot_second[XEN_PT_LPAE_ENTRIES];
>   extern lpae_t boot_second_id[XEN_PT_LPAE_ENTRIES];
> +extern lpae_t boot_third[XEN_PT_LPAE_ENTRIES * XEN_NR_ENTRIES(2)];
>   extern lpae_t boot_third_id[XEN_PT_LPAE_ENTRIES];
>   
>   /* Find where Xen will be residing at runtime and return a PT entry */
> diff --git a/xen/arch/arm/include/asm/smp.h b/xen/arch/arm/include/asm/smp.h
> index 4fabdf5310d8..28bf24a01d95 100644
> --- a/xen/arch/arm/include/asm/smp.h
> +++ b/xen/arch/arm/include/asm/smp.h
> @@ -6,6 +6,9 @@
>   #include <asm/current.h>
>   #endif
>   
> +extern struct init_info init_data;
> +extern unsigned long smp_up_cpu;
> +
>   DECLARE_PER_CPU(cpumask_var_t, cpu_sibling_mask);
>   DECLARE_PER_CPU(cpumask_var_t, cpu_core_mask);
>   
> diff --git a/xen/arch/arm/platform_hypercall.c b/xen/arch/arm/platform_hypercall.c
> index 743687a30390..fde4bc3e5809 100644
> --- a/xen/arch/arm/platform_hypercall.c
> +++ b/xen/arch/arm/platform_hypercall.c
> @@ -17,7 +17,7 @@
>   #include <asm/current.h>
>   #include <asm/event.h>
>   
> -DEFINE_SPINLOCK(xenpf_lock);
> +static DEFINE_SPINLOCK(xenpf_lock);

The commit message suggest we would add an external definition but here 
you add a 'static'. I am fine the static but it needs to clarify.

>   
>   long do_platform_op(XEN_GUEST_HANDLE_PARAM(xen_platform_op_t) u_xenpf_op)
>   {
> diff --git a/xen/arch/x86/cpu/mcheck/mce.c b/xen/arch/x86/cpu/mcheck/mce.c
> index 6141b7eb9cf1..e855f958030d 100644
> --- a/xen/arch/x86/cpu/mcheck/mce.c
> +++ b/xen/arch/x86/cpu/mcheck/mce.c
> @@ -1682,13 +1682,13 @@ long do_mca(XEN_GUEST_HANDLE_PARAM(xen_mc_t) u_xen_mc)
>       return ret;
>   }
>   
> -int mcinfo_dumpped;
> +static int mcinfo_dumped;

Same for the static. But you are also renaming the variable without 
explanation. Yes I know there are a typo, the point here is the commit 
message needs to reflect what you are doing.

>   static int cf_check x86_mcinfo_dump_panic(mctelem_cookie_t mctc)
>   {
>       struct mc_info *mcip = mctelem_dataptr(mctc);
>   
>       x86_mcinfo_dump(mcip);
> -    mcinfo_dumpped++;
> +    mcinfo_dumped++;
>   
>       return 0;
>   }
> @@ -1702,7 +1702,7 @@ static void mc_panic_dump(void)
>       for_each_online_cpu(cpu)
>           mctelem_process_deferred(cpu, x86_mcinfo_dump_panic,
>                                    mctelem_has_deferred_lmce(cpu));
> -    dprintk(XENLOG_ERR, "End dump mc_info, %x mcinfo dumped\n", mcinfo_dumpped);
> +    dprintk(XENLOG_ERR, "End dump mc_info, %x mcinfo dumped\n", mcinfo_dumped);
>   }
>   
>   void mc_panic(const char *s)
> diff --git a/xen/arch/x86/irq.c b/xen/arch/x86/irq.c
> index 6abfd8162120..604dba94b052 100644
> --- a/xen/arch/x86/irq.c
> +++ b/xen/arch/x86/irq.c
> @@ -43,7 +43,7 @@ int __read_mostly opt_irq_vector_map = OPT_IRQ_VECTOR_MAP_DEFAULT;
>   static unsigned char __read_mostly irq_max_guests;
>   integer_param("irq-max-guests", irq_max_guests);
>   
> -vmask_t global_used_vector_map;
> +static vmask_t global_used_vector_map;

Same for the static.

>   
>   struct irq_desc __read_mostly *irq_desc = NULL;
>   
> diff --git a/xen/include/xen/symbols.h b/xen/include/xen/symbols.h
> index 20bbb28ef226..1b2863663aa0 100644
> --- a/xen/include/xen/symbols.h
> +++ b/xen/include/xen/symbols.h
> @@ -33,4 +33,5 @@ struct symbol_offset {
>       uint32_t stream; /* .. in the compressed stream.*/
>       uint32_t addr;   /* .. and in the fixed size address array. */
>   };
> +
>   #endif /*_XEN_SYMBOLS_H*/

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Fri Oct 20 08:15:24 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 08:15:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619695.965197 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtkez-0005hd-20; Fri, 20 Oct 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 619695.965197; Fri, 20 Oct 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 1qtkey-0005hW-VD; Fri, 20 Oct 2023 08:15:08 +0000
Received: by outflank-mailman (input) for mailman id 619695;
 Fri, 20 Oct 2023 08:15: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=8lwx=GC=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qtkex-0005hQ-JO
 for xen-devel@lists.xenproject.org; Fri, 20 Oct 2023 08:15:07 +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 c5dee71b-6f20-11ee-9b0e-b553b5be7939;
 Fri, 20 Oct 2023 10:15:04 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM0PR04MB7172.eurprd04.prod.outlook.com (2603:10a6:208:192::16)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.9; Fri, 20 Oct
 2023 08:15:02 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%7]) with mapi id 15.20.6907.022; Fri, 20 Oct 2023
 08: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>
X-Inumbo-ID: c5dee71b-6f20-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=YnXZkcWF7dxyHHu/A1NIIZZatPMFMqm5letch04W4b3LD5OO1kk74sYZ1Zng6ZcnFQItnqjDs8ZOm+1G+LixDaMZ4A4WpU9xQo6A6Hs9blij4H+HAvIsjHzo6tSI2wACh6bmJwosTpVItqW3NDWRgAKV0QoVqkOkgdj2MJ+/UgnG07n6Tx0A6A59waFby1syqOEMnj13amIQr/qrLxBeR0hNh6xT+vMgj8FYA8CPFSBI/rLP6v0UsLZOY4tj+Olxy0xZiDC0yyrTK7xzW5+6iWMfFgzG27qNbqxHkcRSzcQ7IGIElOmUNTR4xrSMckPkvEEIugBNuJRR4BYhqHkxgA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=g7e6faYY5qsFFYwPchkqZU8nY2l000lqM7mdgCaXUcw=;
 b=PXEiLSVVphThqADxDGshLbYIzqKdPAJ1dm2Qwc8oNRMzjuhOmdUHXPfYRPBwOo7K8erXUz2q4O0BObwi4DACagDfQCtMm5xTANIgjP+aolcHy0MeUYznxApkNs9j3yBDcek7Mmaj69d/qoUk2koODbakKz6i3ExSktfOV7tdI0wFm96ntHVDdOLfEKKnfy4onPrjuXombO+CEZQe4EdtpUByqJbQ0EYMVCinl3b2ih6KBZB1VcVPeJbftf2+bqCvZy+9dRZwS6Yn8CotVn7x8wNR6fRCI2tG5zOPt6rFwXEr3xlts82mtSistXjtVbIcqRXVutmYN6o5/dOfM0oGQg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=g7e6faYY5qsFFYwPchkqZU8nY2l000lqM7mdgCaXUcw=;
 b=WWliqg9ZxGlMMGFqXAOiRIkpJA6JU7Pn1EHwH2flZgIRmRhLc7NERZe3vjEu3IC5zXlbam+n6psaD3lKA+arL9H1cD1qSBsCe4F/c7W8FR5v7GVt0pCPV7rRRYs4FQ2HU8hZ2yiUCBWESirno01h2wjPQhSbHfeUjX3/KcqSYIPU5+4PLV5h+ATT6+5Vilf6WzeuoreGB8FkWKxWXzrBc+ftmkiQIVgnxqrlNcnjTMYUj4eDvhkHZwTUbCywuZNQDjusAghEVmo4asJ8w/QJbK0Tr9A/FhpYkQzxkVEms5fhYAZf3TJzjuZETAASPOU64V9dxLKQbS6WbXHYCp9HMQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <d53d59d6-1d00-fefa-cbbb-0d2730e96d41@suse.com>
Date: Fri, 20 Oct 2023 10:14:59 +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][for-4.19 v3 1/8] xen: add declarations for variables
 where needed
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.cooper3@citrix.com, roger.pau@citrix.com,
 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>,
 xen-devel@lists.xenproject.org
References: <cover.1697722648.git.nicola.vetrini@bugseng.com>
 <4d419cbffc84e0f9934794d105705ac64094a54a.1697722648.git.nicola.vetrini@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <4d419cbffc84e0f9934794d105705ac64094a54a.1697722648.git.nicola.vetrini@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0085.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:1e::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_|AM0PR04MB7172:EE_
X-MS-Office365-Filtering-Correlation-Id: 0807de1d-d0a4-458f-76e7-08dbd144a8f3
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	NB8SyHykl8+8DYcOPZlFBH+6UCaZyt03rrDdeXUpLPkt07baYdB/71CJaP55LHxzFXdfGAc141qYvX53k+XVEX0dXgjTif1XLNKONy1cDwn5WXWcJ92RmJAisjMq+11mLasBUCPdk4UrjASystndrwldltb0/XR42i7tgbKFdZHqhgDy/RvMZ/ejTD87UK+8TRzckq8iF8Z3ffk2mvh5bZk3oa+TtGbm40Q+CuernnsfcW9I2LwGdTqQnbqpmjBfZ7fArz/fnghMLrLiQTYAwQQT2rsqg8yi/O1buiTHUPnyGQfcRM96ypsrY0CAgc6eEvTX/tzwQ/vf6/gZk5hyuvnBfm2P2E4QdZvlwS9cx0FlnVVJvM543e2azvkpoJF8KBf3+Z/jdVrdfMzdsrJkCCupNCFpvN9pi/lbfgDz2RVHnpTKDdXRllKVMMXEWxe084MbzxxIwyQqYJHXl/HpF2WVSNVFfYbsL3nL8789qrV03k8zwf1fY4AXTK8PXPhWg1ZHgMZ0DvkfPdoLh68M2I+VPK2jGYIDcxJUjmAl1TkMVeRMQpnYYwYWTosFRRxBLPgwPpFm1UvEoXa6hxTnrKR2HWWyJ3q21VUQB5xfUeq1rrHlmftbrkgYITNdlPbxh3AWnkdV3m2Yj4uYbYcBTQ==
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)(396003)(366004)(346002)(39860400002)(230922051799003)(451199024)(64100799003)(1800799009)(186009)(6916009)(4744005)(2906002)(6506007)(53546011)(6512007)(2616005)(54906003)(31696002)(478600001)(6486002)(86362001)(66946007)(66556008)(26005)(316002)(38100700002)(7416002)(41300700001)(66476007)(8676002)(4326008)(5660300002)(36756003)(8936002)(6666004)(31686004)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?QzZKeFpGMmxWbFRvRTBPNC9EYlJ1NmNMSnZ4ZkFLTlpGbUlIVkMzL05JVGRw?=
 =?utf-8?B?blR1TitBNVFpVzI5NU5DdVB0RGU1N2JNcVUxWGFlVTluVTlwUitDeFNmM3Y5?=
 =?utf-8?B?WFExUHhuSUppbU9aQTlwOWNsMmFaUXVYdGNpaTB2WVpaWTBFS250WlF0MUw0?=
 =?utf-8?B?THlYVUxjMzYyeHRrdWpNbnBodkp1Z1J1VTRTVkdabXN3U3krblNybUxnSXBR?=
 =?utf-8?B?Q0h5azI2SCthSGlDeDVkZ0VRYzF4eDYzNEs1c2t0d1drNlJBMXpVeEgxNzh6?=
 =?utf-8?B?SVFJYXVtZnhkay93ODB1aWxrRURVNTZYd2RjRkVaVXo1eWJYeGhGdTRxTGxI?=
 =?utf-8?B?Q09Wc1gvL2xLQTF6SnJrT2Y5dldDS3NtL3dwWkx3QytmZmdWeVNEQ1Z2USsx?=
 =?utf-8?B?UkpWbDJ5R2dQSS9WZEp0emFSOUxPNUVkSFNqUTB2cFZVUkM4Mk41SldnYStS?=
 =?utf-8?B?bTY4MG0zSWxIYjNIQ3JFTEd5R1FBeU9Cb0VPaVU4NXdxRldLdEdkNm1JZ095?=
 =?utf-8?B?TGNVcndKTzgvTkRra0JlQ0tCRHdiZENTNUdyTWZ1eWZyU0c1WkViRXNBVVNJ?=
 =?utf-8?B?OUduUVBNN2toUkVlMTM4NER6MUhmZStPU1BFbW9wMjhOTWdZRjhVMlNDb3VD?=
 =?utf-8?B?N0xhZkFJQ2x3Snc5b3ljUDV4aWs4aVlNMXVnb2VHbW00cWNJVmEwa01rbm9E?=
 =?utf-8?B?bWZFc1g0ZW5KQ1ZtVDdJbytjWmI4ckh3WkNpN25IczV1K1YyUG1RV1FjMWdl?=
 =?utf-8?B?YTV3V1BTcTBVWXJEMFMrdVZWY0lTNjdUQ0ZSRFZIYWRyNkE4WE1rV2dqOTk4?=
 =?utf-8?B?aVRXU05hVWZBSHVXU1czZWVWQndBTjI3cGpXSi9wYkJoVkpoNFZCKzZTR1Jz?=
 =?utf-8?B?QUFrTllNR2grc3RMQ0ttb3kva0VOZC9BLzhRdEsvTzVNenRSWTJzSmtLUlVF?=
 =?utf-8?B?QThjVlRsaTNiQ0daUjBDc292RHVTOUIzZ1VYM3ZycVIwc3FMdUxEMDlPUkU2?=
 =?utf-8?B?M21CUlFOMHBhaHJieUZvY0J4L2RpeVVDcU1wWS9tanhJNjNzRWEvcnMwNlNw?=
 =?utf-8?B?YlNKM3MvZU0rcFpzRmFQUGQ3R3RUbGYwc3FkcnZsb2dGeEU5NllKcGszMURr?=
 =?utf-8?B?Q1dCdGNhY255SHlXOGxPOXVNcUlPTGUreXhocXFudzdBaWJ2ZVVCN2xwOXBD?=
 =?utf-8?B?MW9KbkllODcvSlJlZ0E0aGRJL01vNHpNeVRYR056MEdOZ0U3dzBDQ2FFRUlk?=
 =?utf-8?B?TE5HV2QrSDZHajBJK2lvT0hxMEVLNk4rQzFUMkFMdDBJSk55N09odldkaDMx?=
 =?utf-8?B?WEJjcGticEdmdHdqa1B5YngvSDNwN25PcDFTemdKS2FrN1lvLzgzdEs4Smkx?=
 =?utf-8?B?ZStSekFoOVFuelplMDloblJBSzk1ZGRkRm03Uml4YlZVV2pIeks3N1Arb09l?=
 =?utf-8?B?Mis0RVVrZXJuS29rWkpETHBtUEY0T0NnM1NmTVZYNWdZL1JWeEc3Ty9wK25P?=
 =?utf-8?B?VUFwUk9iQSsxWFgvV0xsV1h0RUQvRnRIUTNsQ3VNeHNjOUV0TXFrRnhvZXNB?=
 =?utf-8?B?N1ZWZW82MnR4U1ZuUnBRcGRRNnIyR0VrODVZMzhWanV0SzBFMmNZRWdJdkQz?=
 =?utf-8?B?RGZvRkpCbXhIdUI4clNESjRuU0FGYnpLWEhxSlpxYWVnWWhyMFVOeUhWSC9t?=
 =?utf-8?B?MXU3alNrbWh6OW9YcGJIOGFYKzREaENoMXBYek5rY3M1TDIxdi9iSzY2dzdT?=
 =?utf-8?B?aFlyRnRmUWVwd01pYW81aUFlc3VRc3BOdE9DeXB2TURqd2JzcGM5aUNzWVRF?=
 =?utf-8?B?VXdFNHN1V3ZYSC9xTzl0U3FDZzJId3NEVDNnZEFQT3hNQ3RSUFVYZ3ZkcFNV?=
 =?utf-8?B?MWlQdVI2K0lYcXNMWE1RUUV5ZncyZ05tTnhBYjBHSXo5eEFZbGZZVks1TjJY?=
 =?utf-8?B?MHdPRzZPMW1JVVNXT0x3UVRLVDhHK3VueWxOTXcwM2ttMmh2Tk5vQ2ZJdk1o?=
 =?utf-8?B?S2Q0Y1k0MW12Sld0bGhjaTNOYlBCWEZqUjRtVFBPZzBHMG1zZ3h4VjBkTk4w?=
 =?utf-8?B?bW1kQm5EcGFCVlUxVUdOemdLMWR2a2k5RGY0Z3FMVzZJVThsRitjZmtSd2R1?=
 =?utf-8?Q?sQc8BXwK/7OWijRlE6hATojx4?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 0807de1d-d0a4-458f-76e7-08dbd144a8f3
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Oct 2023 08:15:02.6837
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 7eTrGA4DPu9JkEn7/cGeXGXaEDM4atyoNvqJmOWabKAoG5Mv51frbpesgl1BD+FtzUHH1lK+utXZ6JMcnNPW+w==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR04MB7172

On 19.10.2023 15:39, Nicola Vetrini wrote:
> --- a/xen/arch/x86/cpu/mcheck/mce.c
> +++ b/xen/arch/x86/cpu/mcheck/mce.c
> @@ -1682,13 +1682,13 @@ long do_mca(XEN_GUEST_HANDLE_PARAM(xen_mc_t) u_xen_mc)
>      return ret;
>  }
>  
> -int mcinfo_dumpped;
> +static int mcinfo_dumped;
>  static int cf_check x86_mcinfo_dump_panic(mctelem_cookie_t mctc)

While there, please also insert the missing blank line between the
two entities.

Jan


From xen-devel-bounces@lists.xenproject.org Fri Oct 20 08:26:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 08:26:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619698.965209 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtkpb-00084U-31; Fri, 20 Oct 2023 08:26:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619698.965209; Fri, 20 Oct 2023 08:26: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 1qtkpa-00084N-Uf; Fri, 20 Oct 2023 08:26:06 +0000
Received: by outflank-mailman (input) for mailman id 619698;
 Fri, 20 Oct 2023 08:26: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=SYNS=GC=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qtkpa-00083y-3h
 for xen-devel@lists.xenproject.org; Fri, 20 Oct 2023 08:26:06 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 4de428fe-6f22-11ee-9b0e-b553b5be7939;
 Fri, 20 Oct 2023 10:26:02 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id CB1694EE073A;
 Fri, 20 Oct 2023 10:26: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: 4de428fe-6f22-11ee-9b0e-b553b5be7939
MIME-Version: 1.0
Date: Fri, 20 Oct 2023 10:26:01 +0200
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: Julien Grall <julien@xen.org>
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, Bertrand Marquis <bertrand.marquis@arm.com>, Volodymyr
 Babchuk <Volodymyr_Babchuk@epam.com>, George Dunlap
 <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>
Subject: Re: [XEN PATCH][for-4.19 v3 1/8] xen: add declarations for variables
 where needed
In-Reply-To: <de0dd96d-0416-44bc-944b-c08d955ef44d@xen.org>
References: <cover.1697722648.git.nicola.vetrini@bugseng.com>
 <4d419cbffc84e0f9934794d105705ac64094a54a.1697722648.git.nicola.vetrini@bugseng.com>
 <de0dd96d-0416-44bc-944b-c08d955ef44d@xen.org>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <493856724312ef1da0ef26045f0951da@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/10/2023 09:59, Julien Grall wrote:
> Hi,
> 
> On 19/10/2023 14:39, Nicola Vetrini wrote:
>> Some variables with external linkage used in C code do not have
>> a visible declaration where they are defined. Providing such
>> declaration also resolves violations of MISRA C:2012 Rule 8.4.
> 
> The commit message doesn't match the code in several places.
> 

That's true; I'll do a more detailed summary of the changes.

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


From xen-devel-bounces@lists.xenproject.org Fri Oct 20 08:26:26 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 08:26:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619700.965217 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtkpu-0008Sy-Cs; Fri, 20 Oct 2023 08:26:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619700.965217; Fri, 20 Oct 2023 08:26: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 1qtkpu-0008Sr-9s; Fri, 20 Oct 2023 08:26:26 +0000
Received: by outflank-mailman (input) for mailman id 619700;
 Fri, 20 Oct 2023 08:26: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=SYNS=GC=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qtkpt-00083y-BW
 for xen-devel@lists.xenproject.org; Fri, 20 Oct 2023 08:26:25 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 5abf53e3-6f22-11ee-9b0e-b553b5be7939;
 Fri, 20 Oct 2023 10:26:23 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id 9700D4EE073A;
 Fri, 20 Oct 2023 10:26: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: 5abf53e3-6f22-11ee-9b0e-b553b5be7939
MIME-Version: 1.0
Date: Fri, 20 Oct 2023 10:26:23 +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.cooper3@citrix.com, roger.pau@citrix.com, 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>,
 xen-devel@lists.xenproject.org
Subject: Re: [XEN PATCH][for-4.19 v3 1/8] xen: add declarations for variables
 where needed
In-Reply-To: <d53d59d6-1d00-fefa-cbbb-0d2730e96d41@suse.com>
References: <cover.1697722648.git.nicola.vetrini@bugseng.com>
 <4d419cbffc84e0f9934794d105705ac64094a54a.1697722648.git.nicola.vetrini@bugseng.com>
 <d53d59d6-1d00-fefa-cbbb-0d2730e96d41@suse.com>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <4cf5f1d221ca20c29ae94686b5e8ec17@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/10/2023 10:14, Jan Beulich wrote:
> On 19.10.2023 15:39, Nicola Vetrini wrote:
>> --- a/xen/arch/x86/cpu/mcheck/mce.c
>> +++ b/xen/arch/x86/cpu/mcheck/mce.c
>> @@ -1682,13 +1682,13 @@ long do_mca(XEN_GUEST_HANDLE_PARAM(xen_mc_t) 
>> u_xen_mc)
>>      return ret;
>>  }
>> 
>> -int mcinfo_dumpped;
>> +static int mcinfo_dumped;
>>  static int cf_check x86_mcinfo_dump_panic(mctelem_cookie_t mctc)
> 
> While there, please also insert the missing blank line between the
> two entities.
> 
> Jan

Sure

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


From xen-devel-bounces@lists.xenproject.org Fri Oct 20 08:28:38 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 08:28:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619704.965227 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtks0-0000n5-OK; Fri, 20 Oct 2023 08:28:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619704.965227; Fri, 20 Oct 2023 08:28: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 1qtks0-0000my-Lj; Fri, 20 Oct 2023 08:28:36 +0000
Received: by outflank-mailman (input) for mailman id 619704;
 Fri, 20 Oct 2023 08:28:35 +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 1qtkrz-0000mq-8R
 for xen-devel@lists.xenproject.org; Fri, 20 Oct 2023 08:28:35 +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 1qtkry-0004C5-HP; Fri, 20 Oct 2023 08:28:34 +0000
Received: from 54-240-197-228.amazon.com ([54.240.197.228] helo=[10.95.107.48])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qtkry-0001SL-9n; Fri, 20 Oct 2023 08:28: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=to5RS7dbQcFB8aoAFh8r5uIcREVEtoyvAyWFcjTFZQg=; b=C2QV/YJNxcaJynbj+o4X+Gbt7C
	bmPfwLEE/gL8zvilqMfv1FkVL77ZM1wqIEWjGNppor539FTd/O1yiCLfa2wfVPq46IGwvRmSOGafJ
	vnhTshHqj5fjXyxtn3DcwgE02Sgo/JHvtThbUVp9m/QP485i0q/Zy62ujVGBfZtyjSzA=;
Message-ID: <fe61e283-93f7-4718-bc8d-d1df160f753c@xen.org>
Date: Fri, 20 Oct 2023 09:28:32 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN PATCH 1/4] xen/arm: address violations of MISRA C:2012 Rule
 13.1
Content-Language: en-GB
To: Stefano Stabellini <sstabellini@kernel.org>,
 Simone Ballarin <simone.ballarin@bugseng.com>
Cc: xen-devel@lists.xenproject.org, consulting@bugseng.com,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
References: <cover.1697638210.git.simone.ballarin@bugseng.com>
 <31a926a09dfcef43d13a402fd3b235aeba48009d.1697638210.git.simone.ballarin@bugseng.com>
 <41d82896-5471-4eaa-8bdd-a192e28d5546@xen.org>
 <3de5e340-30bb-44aa-affd-89f343ed1fa1@bugseng.com>
 <7066a646-711c-4dce-f3c0-effb6ae91a39@xen.org>
 <67782815-7803-4ef5-80f4-db6181f7a6e2@bugseng.com>
 <15923aaf-c005-45fb-8bb4-50d2e0995f18@xen.org>
 <8734535a-0c00-44b4-8257-64155807b052@bugseng.com>
 <edc5d2b1-a3bd-44c4-83ea-6ff436fe7346@xen.org>
 <d6af702c-9945-4eea-a102-96910be334dc@bugseng.com>
 <alpine.DEB.2.22.394.2310191128560.2099202@ubuntu-linux-20-04-desktop>
From: Julien Grall <julien@xen.org>
In-Reply-To: <alpine.DEB.2.22.394.2310191128560.2099202@ubuntu-linux-20-04-desktop>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi Stefano,

On 19/10/2023 19:30, Stefano Stabellini wrote:
>>> We usually use this trick when 'current' is used multiple time to save
>>> process (using 'current' is not cost free). But in this case, this is
>>> renaming without any apparent benefits.
>>>
>>> If we wanted to go down this route, then this would likely want a comment.
>>> At which point we should just deviate.
>>>
>>> I will have a think if there are something else we can do. Could we consider
>>> to not address it for now?
>>>
>>
>> I totally agree.
> 
> I am wondering if we could deviate "current" because even with the
> implementation using volatile we know it doesn't have "side effects" in
> the sense of changing things for other code outside the function.

I will let Simone to confirm whether it is possible to do it from a 
technical point of view.

Leaving the technical part aside, is the only violations are the one in 
this patch? If so, I don't think it makes sense to deviate 'current' 
globally. It would be better to have local deviations.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Fri Oct 20 08:51:58 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 08:51:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619709.965238 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtlER-0005tm-Jv; Fri, 20 Oct 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 619709.965238; Fri, 20 Oct 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 1qtlER-0005tf-Gi; Fri, 20 Oct 2023 08:51:47 +0000
Received: by outflank-mailman (input) for mailman id 619709;
 Fri, 20 Oct 2023 08:51: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=19pQ=GC=suse.com=jgross@srs-se1.protection.inumbo.net>)
 id 1qtlEP-0005tZ-AJ
 for xen-devel@lists.xenproject.org; Fri, 20 Oct 2023 08:51:45 +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 e44d7832-6f25-11ee-9b0e-b553b5be7939;
 Fri, 20 Oct 2023 10:51:43 +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 49B641F38C;
 Fri, 20 Oct 2023 08:51: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 E7EDB138E2;
 Fri, 20 Oct 2023 08:51:41 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap2.suse-dmz.suse.de with ESMTPSA id x0ctN50/MmVuLAAAMHmgww
 (envelope-from <jgross@suse.com>); Fri, 20 Oct 2023 08:51: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: e44d7832-6f25-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1697791902; 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=Sx6c/b3BNfpWksSQqdT6HOGDJovBDX7QQg69KCIxqB8=;
	b=H/6mMpCtAKnh+nbWOGqiJShom48YhD3dIGyXjcnl0s71pUvU9EdVkqtMu/5RyWZVdJMLQT
	UYdMvGDL3BszRYLHtzKVT8fW598upc9dFrE+SIlPpuoB3aGbESCz11fEnC0382bLeTCtNK
	wP8RnmthrxuWRwt+sZUIXjWtOzxyPpE=
Message-ID: <36c9298d-2052-42de-9ef4-135c120a2417@suse.com>
Date: Fri, 20 Oct 2023 10:51:41 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH] hvc/xen: fix event channel handling for secondary
 consoles
To: David Woodhouse <dwmw2@infradead.org>,
 xen-devel <xen-devel@lists.xenproject.org>
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
 Jiri Slaby <jirislaby@kernel.org>, Roger Pau Monne <roger.pau@citrix.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Dawei Li <set_pte_at@outlook.com>, linuxppc-dev@lists.ozlabs.org,
 linux-kernel@vger.kernel.org, linux-serial@vger.kernel.org,
 Paul Durrant <paul@xen.org>
References: <72609f999d9451c13240acb8e4a4e54f8c62f542.camel@infradead.org>
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: <72609f999d9451c13240acb8e4a4e54f8c62f542.camel@infradead.org>
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature";
 boundary="------------ZlGG2j4tKEV7xmIaEUbPt7TK"
Authentication-Results: smtp-out2.suse.de;
	none
X-Spam-Level: 
X-Spam-Score: -6.76
X-Spamd-Result: default: False [-6.76 / 50.00];
	 ARC_NA(0.00)[];
	 RCVD_VIA_SMTP_AUTH(0.00)[];
	 FREEMAIL_CC(0.00)[linuxfoundation.org,kernel.org,citrix.com,outlook.com,lists.ozlabs.org,vger.kernel.org,xen.org];
	 XM_UA_NO_VERSION(0.01)[];
	 FROM_HAS_DN(0.00)[];
	 TO_DN_SOME(0.00)[];
	 TO_MATCH_ENVRCPT_ALL(0.00)[];
	 FREEMAIL_ENVRCPT(0.00)[outlook.com];
	 MIME_GOOD(-0.20)[multipart/signed,multipart/mixed,text/plain];
	 HAS_ATTACHMENT(0.00)[];
	 NEURAL_HAM_LONG(-3.00)[-1.000];
	 BAYES_HAM(-0.77)[84.34%];
	 DKIM_SIGNED(0.00)[suse.com:s=susede1];
	 NEURAL_HAM_SHORT(-1.00)[-1.000];
	 MIME_BASE64_TEXT(0.10)[];
	 RCPT_COUNT_SEVEN(0.00)[11];
	 SIGNED_PGP(-2.00)[];
	 FROM_EQ_ENVFROM(0.00)[];
	 MIME_TRACE(0.00)[0:+,1:+,2:+,3:+,4:~,5:~];
	 RCVD_COUNT_TWO(0.00)[2];
	 RCVD_TLS_ALL(0.00)[];
	 MID_RHS_MATCH_FROM(0.00)[];
	 MIME_UNKNOWN(0.10)[application/pgp-keys]
X-Spam-Flag: NO

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--------------ZlGG2j4tKEV7xmIaEUbPt7TK
Content-Type: multipart/mixed; boundary="------------00whzQoLz1xVw85756gzGJ00";
 protected-headers="v1"
From: Juergen Gross <jgross@suse.com>
To: David Woodhouse <dwmw2@infradead.org>,
 xen-devel <xen-devel@lists.xenproject.org>
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
 Jiri Slaby <jirislaby@kernel.org>, Roger Pau Monne <roger.pau@citrix.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Dawei Li <set_pte_at@outlook.com>, linuxppc-dev@lists.ozlabs.org,
 linux-kernel@vger.kernel.org, linux-serial@vger.kernel.org,
 Paul Durrant <paul@xen.org>
Message-ID: <36c9298d-2052-42de-9ef4-135c120a2417@suse.com>
Subject: Re: [PATCH] hvc/xen: fix event channel handling for secondary
 consoles
References: <72609f999d9451c13240acb8e4a4e54f8c62f542.camel@infradead.org>
In-Reply-To: <72609f999d9451c13240acb8e4a4e54f8c62f542.camel@infradead.org>

--------------00whzQoLz1xVw85756gzGJ00
Content-Type: multipart/mixed; boundary="------------gXm9r0J0R4GhK6yQaAcHe0Me"

--------------gXm9r0J0R4GhK6yQaAcHe0Me
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: base64

T24gMTguMTAuMjMgMDE6NDYsIERhdmlkIFdvb2Rob3VzZSB3cm90ZToNCj4gRnJvbTogRGF2
aWQgV29vZGhvdXNlIDxkd213QGFtYXpvbi5jby51az4NCj4gDQo+IFRoZSB4ZW5jb25zX2Nv
bm5lY3RfYmFja2VuZCgpIGZ1bmN0aW9uIGFsbG9jYXRlcyBhIGxvY2FsIGludGVyZG9tYWlu
DQo+IGV2ZW50IGNoYW5uZWwgd2l0aCB4ZW5idXNfYWxsb2NfZXZ0Y2huKCksIHRoZW4gY2Fs
bHMNCj4gYmluZF9pbnRlcmRvbWFpbl9ldnRjaG5fdG9faXJxX2xhdGVlb2koKSB0byBiaW5k
IHRvIHRoYXQgcG9ydCMgb24gdGhlDQo+ICpyZW1vdGUqIGRvbWFpbi4NCj4gDQo+IFRoYXQg
ZG9lc24ndCB3b3JrIHZlcnkgd2VsbDoNCj4gDQo+IChxZW11KSBkZXZpY2VfYWRkIHhlbi1j
b25zb2xlLGlkPWNvbjEsY2hhcmRldj1wdHkwDQo+IFsgICA0NC4zMjM4NzJdIHhlbmNvbnNv
bGUgY29uc29sZS0xOiAyIHhlbmJ1c19kZXZfcHJvYmUgb24gZGV2aWNlL2NvbnNvbGUvMQ0K
PiBbICAgNDQuMzIzOTk1XSB4ZW5jb25zb2xlOiBwcm9iZSBvZiBjb25zb2xlLTEgZmFpbGVk
IHdpdGggZXJyb3IgLTINCj4gDQo+IEZpeCBpdCB0byB1c2UgYmluZF9ldnRjaG5fdG9faXJx
X2xhdGVlb2koKSwgd2hpY2ggZG9lcyB0aGUgcmlnaHQgdGhpbmcNCj4gYnkganVzdCBiaW5k
aW5nIHRoYXQgKmxvY2FsKiBldmVudCBjaGFubmVsIHRvIGFuIGlycS4gVGhlIGJhY2tlbmQg
d2lsbA0KPiBkbyB0aGUgaW50ZXJkb21haW4gYmluZGluZy4NCj4gDQo+IFRoaXMgZGlkbid0
IGFmZmVjdCB0aGUgcHJpbWFyeSBjb25zb2xlIGJlY2F1c2UgdGhlIHNldHVwIGZvciB0aGF0
IGlzDQo+IHNwZWNpYWwg4oCUIHRoZSB0b29sc3RhY2sgYWxsb2NhdGVzIHRoZSBndWVzdCBl
dmVudCBjaGFubmVsIGFuZCB0aGUgZ3Vlc3QNCj4gZGlzY292ZXJzIGl0IHdpdGggSFZNT1Bf
Z2V0X3BhcmFtLg0KPiANCj4gT25jZSB0aGF0J3MgZml4ZWQsIHRoZXJlJ3MgYWxzbyBhIHdh
cm5pbmcgb24gaG90LXVucGx1ZyBiZWNhdXNlDQo+IHhlbmNvbnNfZGlzY29ubmVjdF9iYWNr
ZW5kKCkgdW5jb25kaXRpb25hbGx5IGNhbGxzIGZyZWVfaXJxKCkgdmlhDQo+IHVuYmluZF9m
cm9tX2lycWhhbmRsZXIoKToNCj4gDQo+IChxZW11KSBkZXZpY2VfZGVsIGNvbjENCj4gWyAg
IDMyLjA1MDkxOV0gLS0tLS0tLS0tLS0tWyBjdXQgaGVyZSBdLS0tLS0tLS0tLS0tDQo+IFsg
ICAzMi4wNTA5NDJdIFRyeWluZyB0byBmcmVlIGFscmVhZHktZnJlZSBJUlEgMzMNCj4gWyAg
IDMyLjA1MDk5MF0gV0FSTklORzogQ1BVOiAwIFBJRDogNTEgYXQga2VybmVsL2lycS9tYW5h
Z2UuYzoxODk1IF9fZnJlZV9pcnErMHgxZDQvMHgzMzANCj4gDQo+IEZpeCB0aGF0IGJ5IGNh
bGxpbmcgbm90aWZpZXJfZGVsX2lycSgpIGZpcnN0LCB3aGljaCBvbmx5IGNhbGxzDQo+IGZy
ZWVfaXJxKCkgaWYgdGhlIGlycSB3YXMgcmVxdWVzdGVkIGluIHRoZSBmaXJzdCBwbGFjZS4g
VGhlbiB1c2UNCg0KSSBkb24ndCB0aGluayB0aGUgImlmIHRoZSBpcnEgd2FzIHJlcXVlc3Rl
ZCBpbiB0aGUgZmlyc3QgcGxhY2UiIGlzIHRoZSBjb3JyZWN0DQpyZWFzb25pbmcuDQoNCkkg
dGhpbmsgdGhlIHByb2JsZW0gaXMgdGhhdCBub3RpZmllcl9kZWxfaXJxKCkgd2lsbCBiZSBj
YWxsZWQgYW5vdGhlciB0aW1lDQp0aHJvdWdoIHRoZSAubm90aWZpZXJfZGVsIGhvb2suIFR3
byBjYWxscyBvZiBub3RpZmllcl9kZWxfaXJxKCkgYXJlIGZpbmUsIGJ1dA0Kb25lIGNhbGwg
b2YgaXQgYW5kIGFub3RoZXIgY2FsbCBvZiBmcmVlX2lycSgpIHZpYSB1bmJpbmRfZnJvbV9p
cnFoYW5kbGVyKCkgaXMNCmEgcHJvYmxlbS4NCg0KPiBldnRjaG5fcHV0KCkgdG8gcmVsZWFz
ZSB0aGUgaXJxIGFuZCBldmVudCBjaGFubmVsLiBBdm9pZCBjYWxsaW5nDQo+IHhlbmJ1c19m
cmVlX2V2dGNobigpIGluIHRoZSBub3JtYWwgY2FzZSwgYXMgZXZ0Y2huX3B1dCgpIHdpbGwg
ZG8gdGhhdA0KPiB0b28uIFRoZSBvbmx5IHRpbWUgeGVuYnVzX2ZyZWVfZXZ0Y2huKCkgbmVl
ZHMgdG8gYmUgY2FsbGVkIGlzIGZvciB0aGUNCj4gY2xlYW51cCB3aGVuIGJpbmRfZXZ0Y2hu
X3RvX2lycV9sYXRlZW9pKCkgZmFpbHMuDQo+IA0KPiBGaW5hbGx5LCBmaXggdGhlIGVycm9y
IHBhdGggaW4geGVuX2h2Y19pbml0KCkgd2hlbiB0aGVyZSdzIG5vIHByaW1hcnkNCj4gY29u
c29sZS4gSXQgc2hvdWxkIHN0aWxsIHJlZ2lzdGVyIHRoZSBmcm9udGVuZCBkcml2ZXIsIGFz
IHRoZXJlIG1heSBiZQ0KPiBzZWNvbmRhcnkgY29uc29sZXMuIChRZW11IGNhbiBhbHdheXMg
YWRkIHNlY29uZGFyeSBjb25zb2xlcywgYnV0IG9ubHkNCj4gdGhlIHRvb2xzdGFjayBjYW4g
YWRkIHRoZSBwcmltYXJ5IGJlY2F1c2UgaXQncyBzcGVjaWFsLikNCj4gDQo+IEZpeGVzOiBm
ZTQxNTE4NmI0ICgieGVuL2NvbnNvbGU6IGhhcmRlbiBodmNfeGVuIGFnYWluc3QgZXZlbnQg
Y2hhbm5lbCBzdG9ybXMiKQ0KPiBTaWduZWQtb2ZmLWJ5OiBEYXZpZCBXb29kaG91c2UgPGR3
bXdAYW1hem9uLmNvLnVrPg0KPiBDYzogc3RhYmxlQHZnZXIua2VybmVsLm9yZw0KDQpXaXRo
IGFib3ZlIGZpeGVkIGluIHRoZSBjb21taXQgbWVzc2FnZToNCg0KUmV2aWV3ZWQtYnk6IEp1
ZXJnZW4gR3Jvc3MgPGpncm9zc0BzdXNlLmNvbT4NCg0KDQpKdWVyZ2VuDQoNCg==
--------------gXm9r0J0R4GhK6yQaAcHe0Me
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-----

--------------gXm9r0J0R4GhK6yQaAcHe0Me--

--------------00whzQoLz1xVw85756gzGJ00--

--------------ZlGG2j4tKEV7xmIaEUbPt7TK
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/Ey8FAmUyP50FAwAAAAAACgkQsN6d1ii/Ey/Q
Qgf/bvZD/IabgI1gRWTi/vIi1b36ZkMGWfFnZbXCE1ND8eGlezRgQDri0Zt+l9DG62juTECd/BSM
ZD2OAulGS3VceLcWhbplqrwGs+OrexJJfkFWwd/p0FtPwQPr9r4ClX+FeF3wGQlUd7XOwVeMoJr8
TQ3pNdq38O9paW620O466JhS6PE0lGK7eaiO07I6Z0ICtgRMgWZgmB4jIuHjXMZfQg6Zhm0f3gRg
MNM7mblE7vegLv8jZHceGXDJLONRZFABQ+s+5JopsQ08Tr1AfJb31fAFouakveuarF+6RsQyCr3u
H4X3DPB0mb0S9Wvlb0HzFlawhCK++tp/ljaQEgCnPA==
=24Co
-----END PGP SIGNATURE-----

--------------ZlGG2j4tKEV7xmIaEUbPt7TK--


From xen-devel-bounces@lists.xenproject.org Fri Oct 20 09:00:45 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 09:00:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619715.965247 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtlN3-0008Fz-KL; Fri, 20 Oct 2023 09:00:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619715.965247; Fri, 20 Oct 2023 09:00: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 1qtlN3-0008Fs-HM; Fri, 20 Oct 2023 09:00:41 +0000
Received: by outflank-mailman (input) for mailman id 619715;
 Fri, 20 Oct 2023 09:00: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=0mrC=GC=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qtlN2-0008Fk-AA
 for xen-devel@lists.xenproject.org; Fri, 20 Oct 2023 09:00:40 +0000
Received: from foss.arm.com (foss.arm.com [217.140.110.172])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTP
 id 238c4024-6f27-11ee-98d5-6d05b1d4d9a1;
 Fri, 20 Oct 2023 11:00: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 071FD2F4;
 Fri, 20 Oct 2023 02:01:19 -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 2FBBC3F5A1;
 Fri, 20 Oct 2023 02:00: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: 238c4024-6f27-11ee-98d5-6d05b1d4d9a1
From: Henry Wang <Henry.Wang@arm.com>
To: xen-devel@lists.xenproject.org
Cc: Henry Wang <Henry.Wang@arm.com>,
	Community Manager <community.manager@xenproject.org>,
	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>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>,
	Wei Chen <wei.chen@arm.com>
Subject: [PATCH v2 0/3] Final CHANGELOG changes for 4.18
Date: Fri, 20 Oct 2023 17:00:20 +0800
Message-Id: <20231020090023.1298745-1-Henry.Wang@arm.com>
X-Mailer: git-send-email 2.25.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Hi all,

This series should be the final CHANGELOG changes for 4.18.

The first patch is mentioning the MISRA-C improvement during the
4.18 dev cycle, so should be committed before we branch.

The second patch sets the release date and tag of 4.18 release and
should be included in both the staging and stable-4.18 once we
branch (next week).

The third patch starts a new unstable section, so should be in
unstable master/staging only.

Thanks.

Henry Wang (3):
  CHANGELOG.md: Mention the MISRA-C improvement in 4.18 dev cycle
  CHANGELOG.md: Set 4.18 release date and tag
  CHANGELOG.md: Start new "unstable" section

 CHANGELOG.md | 9 +++++++++
 1 file changed, 9 insertions(+)

-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Fri Oct 20 09:00:47 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 09:00:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619716.965257 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtlN9-00004u-RC; Fri, 20 Oct 2023 09:00:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619716.965257; Fri, 20 Oct 2023 09:00: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 1qtlN9-0008WT-OW; Fri, 20 Oct 2023 09:00:47 +0000
Received: by outflank-mailman (input) for mailman id 619716;
 Fri, 20 Oct 2023 09:00: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=0mrC=GC=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qtlN8-0008Vd-3l
 for xen-devel@lists.xenproject.org; Fri, 20 Oct 2023 09:00:46 +0000
Received: from foss.arm.com (foss.arm.com [217.140.110.172])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTP
 id 26a219bf-6f27-11ee-9b0e-b553b5be7939;
 Fri, 20 Oct 2023 11:00: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 2B17C143D;
 Fri, 20 Oct 2023 02:01:24 -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 53DF13F5A1;
 Fri, 20 Oct 2023 02:00: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: 26a219bf-6f27-11ee-9b0e-b553b5be7939
From: Henry Wang <Henry.Wang@arm.com>
To: xen-devel@lists.xenproject.org
Cc: Henry Wang <Henry.Wang@arm.com>,
	Community Manager <community.manager@xenproject.org>,
	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>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>,
	Wei Chen <wei.chen@arm.com>
Subject: [PATCH v2 1/3] CHANGELOG.md: Mention the MISRA-C improvement in 4.18 dev cycle
Date: Fri, 20 Oct 2023 17:00:21 +0800
Message-Id: <20231020090023.1298745-2-Henry.Wang@arm.com>
X-Mailer: git-send-email 2.25.1
In-Reply-To: <20231020090023.1298745-1-Henry.Wang@arm.com>
References: <20231020090023.1298745-1-Henry.Wang@arm.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Signed-off-by: Henry Wang <Henry.Wang@arm.com>
Acked-by: Stefano Stabellini <sstabellini@kernel.org>
---
v2:
- Rewording to be more specific, correct the number of rules.
- Add Stefano's Acked-by tag.
---
 CHANGELOG.md | 1 +
 1 file changed, 1 insertion(+)

diff --git a/CHANGELOG.md b/CHANGELOG.md
index 165c5caf9b..108605198d 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -33,6 +33,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
    nodes using a device tree overlay binary (.dtbo).
  - Introduce two new hypercalls to map the vCPU runstate and time areas by
    physical rather than linear/virtual addresses.
+ - The project has now officially adopted 6 directives and 65 rules of MISRA-C.
 
 ### Removed
  - On x86, the "pku" command line option has been removed.  It has never
-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Fri Oct 20 09:00:51 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 09:00:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619717.965268 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtlND-0000NI-1Y; Fri, 20 Oct 2023 09:00:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619717.965268; Fri, 20 Oct 2023 09: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 1qtlNC-0000N9-VF; Fri, 20 Oct 2023 09:00:50 +0000
Received: by outflank-mailman (input) for mailman id 619717;
 Fri, 20 Oct 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=0mrC=GC=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qtlNB-0008Fk-Kl
 for xen-devel@lists.xenproject.org; Fri, 20 Oct 2023 09:00:49 +0000
Received: from foss.arm.com (foss.arm.com [217.140.110.172])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTP
 id 29a18e83-6f27-11ee-98d5-6d05b1d4d9a1;
 Fri, 20 Oct 2023 11:00: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 3BFEF2F4;
 Fri, 20 Oct 2023 02:01:29 -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 65A613F5A1;
 Fri, 20 Oct 2023 02:00: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: 29a18e83-6f27-11ee-98d5-6d05b1d4d9a1
From: Henry Wang <Henry.Wang@arm.com>
To: xen-devel@lists.xenproject.org
Cc: Henry Wang <Henry.Wang@arm.com>,
	Community Manager <community.manager@xenproject.org>,
	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>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>,
	Wei Chen <wei.chen@arm.com>
Subject: [PATCH v2 2/3] CHANGELOG.md: Set 4.18 release date and tag
Date: Fri, 20 Oct 2023 17:00:22 +0800
Message-Id: <20231020090023.1298745-3-Henry.Wang@arm.com>
X-Mailer: git-send-email 2.25.1
In-Reply-To: <20231020090023.1298745-1-Henry.Wang@arm.com>
References: <20231020090023.1298745-1-Henry.Wang@arm.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Signed-off-by: Henry Wang <Henry.Wang@arm.com>
Acked-by: Stefano Stabellini <sstabellini@kernel.org>
---
v2:
- Add Stefano's Acked-by tag.
---
 CHANGELOG.md | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/CHANGELOG.md b/CHANGELOG.md
index 108605198d..5857c51ac2 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -4,7 +4,7 @@ Notable changes to Xen will be documented in this file.
 
 The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
 
-## [unstable UNRELEASED](https://xenbits.xen.org/gitweb/?p=xen.git;a=shortlog;h=staging) - TBD
+## [4.18.0](https://xenbits.xen.org/gitweb/?p=xen.git;a=shortlog;h=RELEASE-4.18.0) - 2023-10-30
 
 ### Changed
  - Repurpose command line gnttab_max_{maptrack_,}frames options so they don't
-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Fri Oct 20 09:00:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 09:00:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619719.965278 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtlNI-0000iW-Dp; Fri, 20 Oct 2023 09:00:56 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619719.965278; Fri, 20 Oct 2023 09:00: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 1qtlNI-0000iN-Ao; Fri, 20 Oct 2023 09:00:56 +0000
Received: by outflank-mailman (input) for mailman id 619719;
 Fri, 20 Oct 2023 09:00: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=0mrC=GC=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qtlNH-0008Vd-Mw
 for xen-devel@lists.xenproject.org; Fri, 20 Oct 2023 09:00:55 +0000
Received: from foss.arm.com (foss.arm.com [217.140.110.172])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTP
 id 2c98b9f8-6f27-11ee-9b0e-b553b5be7939;
 Fri, 20 Oct 2023 11:00:54 +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 394AF2F4;
 Fri, 20 Oct 2023 02:01:34 -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 62B673F5A1;
 Fri, 20 Oct 2023 02:00: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: 2c98b9f8-6f27-11ee-9b0e-b553b5be7939
From: Henry Wang <Henry.Wang@arm.com>
To: xen-devel@lists.xenproject.org
Cc: Henry Wang <Henry.Wang@arm.com>,
	Community Manager <community.manager@xenproject.org>,
	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>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>,
	Wei Chen <wei.chen@arm.com>
Subject: [PATCH v2 3/3] CHANGELOG.md: Start new "unstable" section
Date: Fri, 20 Oct 2023 17:00:23 +0800
Message-Id: <20231020090023.1298745-4-Henry.Wang@arm.com>
X-Mailer: git-send-email 2.25.1
In-Reply-To: <20231020090023.1298745-1-Henry.Wang@arm.com>
References: <20231020090023.1298745-1-Henry.Wang@arm.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Signed-off-by: Henry Wang <Henry.Wang@arm.com>
Acked-by: Stefano Stabellini <sstabellini@kernel.org>
---
v2:
- Add Stefano's Acked-by tag.
---
 CHANGELOG.md | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/CHANGELOG.md b/CHANGELOG.md
index 5857c51ac2..613365ca42 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -4,6 +4,14 @@ Notable changes to Xen will be documented in this file.
 
 The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
 
+## [unstable UNRELEASED](https://xenbits.xen.org/gitweb/?p=xen.git;a=shortlog;h=staging) - TBD
+
+### Changed
+
+### Added
+
+### Removed
+
 ## [4.18.0](https://xenbits.xen.org/gitweb/?p=xen.git;a=shortlog;h=RELEASE-4.18.0) - 2023-10-30
 
 ### Changed
-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Fri Oct 20 09:09:08 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 09:09:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619732.965287 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtlV5-0002y4-66; Fri, 20 Oct 2023 09:08:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619732.965287; Fri, 20 Oct 2023 09: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 1qtlV5-0002xx-3H; Fri, 20 Oct 2023 09:08:59 +0000
Received: by outflank-mailman (input) for mailman id 619732;
 Fri, 20 Oct 2023 09:08: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=tdx5=GC=antgroup.com=houwenlong.hwl@srs-se1.protection.inumbo.net>)
 id 1qtlV4-0002xr-Aq
 for xen-devel@lists.xenproject.org; Fri, 20 Oct 2023 09:08:58 +0000
Received: from out0-194.mail.aliyun.com (out0-194.mail.aliyun.com
 [140.205.0.194]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 4a598ff1-6f28-11ee-98d5-6d05b1d4d9a1;
 Fri, 20 Oct 2023 11:08:55 +0200 (CEST)
Received: from localhost(mailfrom:houwenlong.hwl@antgroup.com
 fp:SMTPD_---.V3aO7cu_1697792930) by smtp.aliyun-inc.com;
 Fri, 20 Oct 2023 17:08:51 +0800
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 4a598ff1-6f28-11ee-98d5-6d05b1d4d9a1
X-Alimail-AntiSpam:AC=PASS;BC=-1|-1;BR=01201311R401e4;CH=green;DM=||false|;DS=||;FP=0|-1|-1|-1|0|-1|-1|-1;HT=ay29a033018047193;MF=houwenlong.hwl@antgroup.com;NM=1;PH=DS;RN=14;SR=0;TI=SMTPD_---.V3aO7cu_1697792930;
From: "Hou Wenlong" <houwenlong.hwl@antgroup.com>
To: linux-kernel@vger.kernel.org
Cc: "Hou Wenlong" <houwenlong.hwl@antgroup.com>,
  "Juergen Gross" <jgross@suse.com>,
  "Boris Ostrovsky" <boris.ostrovsky@oracle.com>,
  "Darren Hart" <dvhart@infradead.org>,
  "Andy Shevchenko" <andy@infradead.org>,
  "Thomas Gleixner" <tglx@linutronix.de>,
  "Ingo Molnar" <mingo@redhat.com>,
  "Borislav Petkov" <bp@alien8.de>,
  "Dave Hansen" <dave.hansen@linux.intel.com>,
  "=?UTF-8?B?bWFpbnRhaW5lcjpYODYgQVJDSElURUNUVVJFIDMyLUJJVCBBTkQgNjQtQklU?=" <x86@kernel.org>,
  "H. Peter Anvin" <hpa@zytor.com>,
  "=?UTF-8?B?bW9kZXJhdGVkIGxpc3Q6WEVOIEhZUEVSVklTT1IgWDg2?=" <xen-devel@lists.xenproject.org>,
  "=?UTF-8?B?b3BlbiBsaXN0Olg4NiBQTEFURk9STSBEUklWRVJTIC0gQVJDSA==?=" <platform-driver-x86@vger.kernel.org>
Subject: [PATCH] x86/xen/pvh: Enable PAE mode for 32-bit guest only when CONFIG_X86_PAE is set
Date: Fri, 20 Oct 2023 17:08:42 +0800
Message-Id: <8c5448eeebbba998a7fff9ed9b2f7e7f3e437967.1697792461.git.houwenlong.hwl@antgroup.com>
X-Mailer: git-send-email 2.31.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The PVH entry is available for 32-bit KVM guests, and 32-bit KVM guests
do not depend on CONFIG_X86_PAE. However, mk_early_pgtbl_32() builds
different pagetables depending on whether CONFIG_X86_PAE is set.
Therefore, enabling PAE mode for 32-bit KVM guests without
CONFIG_X86_PAE being set would result in a boot failure during CR3
loading.

Signed-off-by: Hou Wenlong <houwenlong.hwl@antgroup.com>
---
 arch/x86/platform/pvh/head.S | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/arch/x86/platform/pvh/head.S b/arch/x86/platform/pvh/head.S
index c4365a05ab83..085adb1b2313 100644
--- a/arch/x86/platform/pvh/head.S
+++ b/arch/x86/platform/pvh/head.S
@@ -70,10 +70,12 @@ SYM_CODE_START_LOCAL(pvh_start_xen)
 
 	mov $_pa(early_stack_end), %esp
 
+#if defined(CONFIG_X86_64) || defined(CONFIG_X86_PAE)
 	/* Enable PAE mode. */
 	mov %cr4, %eax
 	orl $X86_CR4_PAE, %eax
 	mov %eax, %cr4
+#endif
 
 #ifdef CONFIG_X86_64
 	/* Enable Long mode. */
-- 
2.31.1



From xen-devel-bounces@lists.xenproject.org Fri Oct 20 10:14:46 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 10:14:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619736.965298 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtmWW-0005wn-V5; Fri, 20 Oct 2023 10:14:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619736.965298; Fri, 20 Oct 2023 10: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 1qtmWW-0005wg-S5; Fri, 20 Oct 2023 10:14:32 +0000
Received: by outflank-mailman (input) for mailman id 619736;
 Fri, 20 Oct 2023 10:14: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=SkgR=GC=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qtmWV-0005wa-8k
 for xen-devel@lists.xenproject.org; Fri, 20 Oct 2023 10:14:31 +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 7477e1ec-6f31-11ee-98d5-6d05b1d4d9a1;
 Fri, 20 Oct 2023 12:14:29 +0200 (CEST)
Received: by mail-lf1-x135.google.com with SMTP id
 2adb3069b0e04-507973f3b65so889107e87.3
 for <xen-devel@lists.xenproject.org>; Fri, 20 Oct 2023 03:14:29 -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
 da11-20020a056402176b00b0053ebe6c1396sm1146976edb.27.2023.10.20.03.14.28
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Fri, 20 Oct 2023 03:14: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: 7477e1ec-6f31-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1697796869; x=1698401669; darn=lists.xenproject.org;
        h=content-transfer-encoding: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=HKAa9TId6lpAXNN80Vmpv2RhG09BT/xEU3AvTHcRAxk=;
        b=ZO3xKXd00uk7s64wm54oOSOU54kaj7+11BP4Lh/yLFikaBwkkUshjZfAEM4wrsrQxU
         RIxrUH+r63KNLozgxnoRdfChcTibZdjCRVuJ5xtSXR8QTh77Rer0kAF0lzETyqQ8xyZz
         RDxkYhAvfD5Cv3pIuFjN1bDCv8Iox7ZawTzf8=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697796869; x=1698401669;
        h=content-transfer-encoding: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=HKAa9TId6lpAXNN80Vmpv2RhG09BT/xEU3AvTHcRAxk=;
        b=MGiVQKNAVgY4BtI2M670N/08XB5gXJ7n2ZbFiGsR62KGdm/61JTyhMT+h14XQuCYTB
         Yjo6Zb+lwg3K7M3rDACX4kSnJ22vhSxkjqcIzJXguPohhPXtPbl7ksyt6O2BZjpfu9s8
         cDEDhuf122gV78Ap7ArVR9zvDtNaPSapt7z543DPsEX25aqxOx1B6MmIoqLHXiqFTTu1
         v3KMP+NHcJQNosj/GQoRkFze4zau7BEW7JlHYSWkXHO4ZV+1iRiepQECa668VwgGcUl/
         1ELta+4KrYtswYlDZsKwhhZ1VyktInvRiqfTErpwtpddRDGRtp/gIAcxmTr1pXAKYFmU
         wgRQ==
X-Gm-Message-State: AOJu0Yx7WPjVC6SrYyLugm/j0GdWcCo8v2EN2o06U0Uw92eWHwhN81GG
	SoUsc1ihQwE7cvPy9tenP8Fpng==
X-Google-Smtp-Source: AGHT+IGU2GHKNd1SpRWGd6cpULeQFtbNrvzQXUA8Oqd3Q1xYh9UOTYF+TnPmcsNd0au/I7Z/oBTm5A==
X-Received: by 2002:a19:7610:0:b0:507:9a55:c463 with SMTP id c16-20020a197610000000b005079a55c463mr967504lff.9.1697796868843;
        Fri, 20 Oct 2023 03:14:28 -0700 (PDT)
Message-ID: <14914ea1-2d2b-46e2-9933-2b7414acb7ba@citrix.com>
Date: Fri, 20 Oct 2023 11:14:27 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH] ns16550c: avoid crash in ns16550_endboot in PV shim mode
Content-Language: en-GB
To: David Woodhouse <dwmw2@infradead.org>, 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>, Wei Liu <wl@xen.org>
References: <de07d56188f13e222ddaa1b963c20f8d7d61350e.camel@infradead.org>
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: <de07d56188f13e222ddaa1b963c20f8d7d61350e.camel@infradead.org>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit

On 19/10/2023 5:21 pm, David Woodhouse wrote:
> From: David Woodhouse <dwmw@amazon.co.uk>
>
> In shim mode there is no hardware_domain. Dereferencing the pointer
> doesn't end well.
>
> Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
> ---
> This is about as far as I got in my abortive attempt to use the PV shim
> without an actual PV console being provided by the HVM hosting
> environment. It still doesn't pass the guest's console through to
> serial; that only seems to shim to an actual PV console.

There's no such thing as a Xen VM without a PV console.

And yes, this is an error, but that horse bolted 2 decades ago.


It would be nice if having a "real" serial didn't crash like this, but
PV Shim is specialised to transplant one normal-looking PV guest, and
the interposition logic is tied to the PV console.

~Andrew


From xen-devel-bounces@lists.xenproject.org Fri Oct 20 10:29:21 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 10:29:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619739.965307 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtmkm-0008P3-4v; Fri, 20 Oct 2023 10:29:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619739.965307; Fri, 20 Oct 2023 10: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 1qtmkm-0008Ow-2K; Fri, 20 Oct 2023 10:29:16 +0000
Received: by outflank-mailman (input) for mailman id 619739;
 Fri, 20 Oct 2023 10:29: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=fjAU=GC=casper.srs.infradead.org=BATV+5f4592396010e9e3c002+7362+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qtmkj-0008Oo-1R
 for xen-devel@lists.xenproject.org; Fri, 20 Oct 2023 10:29:15 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 7ff4f3cf-6f33-11ee-9b0e-b553b5be7939;
 Fri, 20 Oct 2023 12:29:08 +0200 (CEST)
Received: from [2001:8b0:10b:5:f7e9:453b:fc3b:2f6]
 (helo=u3832b3a9db3152.ant.amazon.com)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qtmkc-00CZnw-66; Fri, 20 Oct 2023 10:29: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: 7ff4f3cf-6f33-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=MIME-Version:Content-Type:References:
	In-Reply-To:Date:Cc:To:From:Subject:Message-ID:Sender:Reply-To:
	Content-Transfer-Encoding:Content-ID:Content-Description;
	bh=tpNP1AThXXjxlFwcsdqHc294f+nZ3RBE+/FwyNnLen8=; b=E+r/h0LvBnwsh/QzPsrI3LWtVI
	bvWm1OdUJgNaYDlJZitbZLqcCPtBWYM6c1DYizcENnTPPhhWlhdJHX7DXyXB9ZyIV3b3HavPsMs/B
	6H331wOcWaQHc8V75BTdbOxfuwsimtzEd0eSz6XnhF+bjLTJw/baV9eb70yW0NGE+gfCo3juH/ZZf
	0AtJbRq1E23BW0sIoVlQVDn/jvZSwdVdNkejXEqVpB6MQ7orRb/qP8TP10uGJJ8edqLFoZHI34kOM
	15/iLgmMCRlb4ZqSkUzY2CFW3/Gjgbd+pwq+XBRX5uLbL2TuaiPZ85CrbJPdBmakxIMf8nmQEmXRB
	ANEXNPoA==;
Message-ID: <f1ea054608f4ae38293f89bcd84c6937538f245b.camel@infradead.org>
Subject: Re: [PATCH] ns16550c: avoid crash in ns16550_endboot in PV shim mode
From: David Woodhouse <dwmw2@infradead.org>
To: Andrew Cooper <andrew.cooper3@citrix.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>, Wei Liu <wl@xen.org>
Date: Fri, 20 Oct 2023 11:29:03 +0100
In-Reply-To: <14914ea1-2d2b-46e2-9933-2b7414acb7ba@citrix.com>
References: <de07d56188f13e222ddaa1b963c20f8d7d61350e.camel@infradead.org>
	 <14914ea1-2d2b-46e2-9933-2b7414acb7ba@citrix.com>
Content-Type: multipart/signed; micalg="sha-256"; protocol="application/pkcs7-signature";
	boundary="=-vA7+bRSuH2b6ydGXDNWj"
User-Agent: Evolution 3.44.4-0ubuntu2 
MIME-Version: 1.0
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html


--=-vA7+bRSuH2b6ydGXDNWj
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Fri, 2023-10-20 at 11:14 +0100, Andrew Cooper wrote:
> On 19/10/2023 5:21 pm, David Woodhouse wrote:
> > From: David Woodhouse <dwmw@amazon.co.uk>
> >=20
> > In shim mode there is no hardware_domain. Dereferencing the pointer
> > doesn't end well.
> >=20
> > Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
> > ---
> > This is about as far as I got in my abortive attempt to use the PV shim
> > without an actual PV console being provided by the HVM hosting
> > environment. It still doesn't pass the guest's console through to
> > serial; that only seems to shim to an actual PV console.
>=20
> There's no such thing as a Xen VM without a PV console.

Huh? There are literally millions of them. Every EC2 Xen HVM instance
boots with a serial device but no Xen console. That's true of the ones
running on true Xen, as well as the newer launches which are running on
top of Linux/KVM.

We implemented Xen console support in the Nitro hypervisor, then had to
disable it because it wasn't faithful to the production environment
that guests previously experienced on Xen, and eventually ripped it out
because it was dead code.

Likewise, upstream Qemu's Xen emulation mode doesn't currently have
console support (although I did just add it to get the shim working).

> And yes, this is an error, but that horse bolted 2 decades ago.
>=20
>=20
> It would be nice if having a "real" serial didn't crash like this, but
> PV Shim is specialised to transplant one normal-looking PV guest, and
> the interposition logic is tied to the PV console.

That's a nicer model. When Spectre/Meltdown broke and we posted the
'Vixen' version of a shim, it actually implemented a console backend
and would output to the serial port. But I do agree it's nicer not to.

Even with a PV console though, it might still be useful to have the
shim's output going to a serial port while the guest's output goes to
the console though, to keep them separate.

--=-vA7+bRSuH2b6ydGXDNWj
Content-Type: application/pkcs7-signature; name="smime.p7s"
Content-Disposition: attachment; filename="smime.p7s"
Content-Transfer-Encoding: base64

MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgEFADCABgkqhkiG9w0BBwEAAKCCEkQw
ggYQMIID+KADAgECAhBNlCwQ1DvglAnFgS06KwZPMA0GCSqGSIb3DQEBDAUAMIGIMQswCQYDVQQG
EwJVUzETMBEGA1UECBMKTmV3IEplcnNleTEUMBIGA1UEBxMLSmVyc2V5IENpdHkxHjAcBgNVBAoT
FVRoZSBVU0VSVFJVU1QgTmV0d29yazEuMCwGA1UEAxMlVVNFUlRydXN0IFJTQSBDZXJ0aWZpY2F0
aW9uIEF1dGhvcml0eTAeFw0xODExMDIwMDAwMDBaFw0zMDEyMzEyMzU5NTlaMIGWMQswCQYDVQQG
EwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYD
VQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50
aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC
AQEAyjztlApB/975Rrno1jvm2pK/KxBOqhq8gr2+JhwpKirSzZxQgT9tlC7zl6hn1fXjSo5MqXUf
ItMltrMaXqcESJuK8dtK56NCSrq4iDKaKq9NxOXFmqXX2zN8HHGjQ2b2Xv0v1L5Nk1MQPKA19xeW
QcpGEGFUUd0kN+oHox+L9aV1rjfNiCj3bJk6kJaOPabPi2503nn/ITX5e8WfPnGw4VuZ79Khj1YB
rf24k5Ee1sLTHsLtpiK9OjG4iQRBdq6Z/TlVx/hGAez5h36bBJMxqdHLpdwIUkTqT8se3ed0PewD
ch/8kHPo5fZl5u1B0ecpq/sDN/5sCG52Ds+QU5O5EwIDAQABo4IBZDCCAWAwHwYDVR0jBBgwFoAU
U3m/WqorSs9UgOHYm8Cd8rIDZsswHQYDVR0OBBYEFAnA8vwL2pTbX/4r36iZQs/J4K0AMA4GA1Ud
DwEB/wQEAwIBhjASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEF
BQcDBDARBgNVHSAECjAIMAYGBFUdIAAwUAYDVR0fBEkwRzBFoEOgQYY/aHR0cDovL2NybC51c2Vy
dHJ1c3QuY29tL1VTRVJUcnVzdFJTQUNlcnRpZmljYXRpb25BdXRob3JpdHkuY3JsMHYGCCsGAQUF
BwEBBGowaDA/BggrBgEFBQcwAoYzaHR0cDovL2NydC51c2VydHJ1c3QuY29tL1VTRVJUcnVzdFJT
QUFkZFRydXN0Q0EuY3J0MCUGCCsGAQUFBzABhhlodHRwOi8vb2NzcC51c2VydHJ1c3QuY29tMA0G
CSqGSIb3DQEBDAUAA4ICAQBBRHUAqznCFfXejpVtMnFojADdF9d6HBA4kMjjsb0XMZHztuOCtKF+
xswhh2GqkW5JQrM8zVlU+A2VP72Ky2nlRA1GwmIPgou74TZ/XTarHG8zdMSgaDrkVYzz1g3nIVO9
IHk96VwsacIvBF8JfqIs+8aWH2PfSUrNxP6Ys7U0sZYx4rXD6+cqFq/ZW5BUfClN/rhk2ddQXyn7
kkmka2RQb9d90nmNHdgKrwfQ49mQ2hWQNDkJJIXwKjYA6VUR/fZUFeCUisdDe/0ABLTI+jheXUV1
eoYV7lNwNBKpeHdNuO6Aacb533JlfeUHxvBz9OfYWUiXu09sMAviM11Q0DuMZ5760CdO2VnpsXP4
KxaYIhvqPqUMWqRdWyn7crItNkZeroXaecG03i3mM7dkiPaCkgocBg0EBYsbZDZ8bsG3a08LwEsL
1Ygz3SBsyECa0waq4hOf/Z85F2w2ZpXfP+w8q4ifwO90SGZZV+HR/Jh6rEaVPDRF/CEGVqR1hiuQ
OZ1YL5ezMTX0ZSLwrymUE0pwi/KDaiYB15uswgeIAcA6JzPFf9pLkAFFWs1QNyN++niFhsM47qod
x/PL+5jR87myx5uYdBEQkkDc+lKB1Wct6ucXqm2EmsaQ0M95QjTmy+rDWjkDYdw3Ms6mSWE3Bn7i
5ZgtwCLXgAIe5W8mybM2JzCCBhQwggT8oAMCAQICEQDGvhmWZ0DEAx0oURL6O6l+MA0GCSqGSIb3
DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYD
VQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28g
UlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMB4XDTIyMDEwNzAw
MDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJARYTZHdtdzJAaW5mcmFkZWFkLm9y
ZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3GpC2bomUqk+91wLYBzDMcCj5C9m6
oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZHh7htyAkWYVoFsFPrwHounto8xTsy
SSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT9YgcBqKCo65pTFmOnR/VVbjJk4K2
xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNjP+qDrh0db7PAjO1D4d5ftfrsf+kd
RR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy2U+eITZ5LLE5s45mX2oPFknWqxBo
bQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3BgBEmfsYWlBXO8rVXfvPgLs32VdV
NZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/7auNVRmPB3v5SWEsH8xi4Bez2V9U
KxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmdlFYhAflWKQ03Ufiu8t3iBE3VJbc2
5oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9aelIl6vtbhMA+l0nfrsORMa4kobqQ5
C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMBAAGjggHMMIIByDAfBgNVHSMEGDAW
gBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeDMcimo0oz8o1R1Nver3ZVpSkwDgYD
VR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYwFAYIKwYBBQUHAwQGCCsGAQUFBwMC
MEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYBBQUHAgEWF2h0dHBzOi8vc2VjdGln
by5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9jcmwuc2VjdGlnby5jb20vU2VjdGln
b1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1haWxDQS5jcmwwgYoGCCsGAQUFBwEB
BH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdvLmNvbS9TZWN0aWdvUlNBQ2xpZW50
QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAjBggrBgEFBQcwAYYXaHR0cDovL29j
c3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5mcmFkZWFkLm9yZzANBgkqhkiG9w0B
AQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQvQ/fzPXmtR9t54rpmI2TfyvcKgOXp
qa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvIlSPrzIB4Z2wyIGQpaPLlYflrrVFK
v9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9ChWFfgSXvrWDZspnU3Gjw/rMHrGnql
Htlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0whpBtXdyDjzBtQTaZJ7zTT/vlehc/
tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9IzCCBhQwggT8oAMCAQICEQDGvhmW
Z0DEAx0oURL6O6l+MA0GCSqGSIb3DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3Jl
YXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0
ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJl
IEVtYWlsIENBMB4XDTIyMDEwNzAwMDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJ
ARYTZHdtdzJAaW5mcmFkZWFkLm9yZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3
GpC2bomUqk+91wLYBzDMcCj5C9m6oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZH
h7htyAkWYVoFsFPrwHounto8xTsySSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT
9YgcBqKCo65pTFmOnR/VVbjJk4K2xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNj
P+qDrh0db7PAjO1D4d5ftfrsf+kdRR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy
2U+eITZ5LLE5s45mX2oPFknWqxBobQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3
BgBEmfsYWlBXO8rVXfvPgLs32VdVNZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/
7auNVRmPB3v5SWEsH8xi4Bez2V9UKxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmd
lFYhAflWKQ03Ufiu8t3iBE3VJbc25oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9ae
lIl6vtbhMA+l0nfrsORMa4kobqQ5C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMB
AAGjggHMMIIByDAfBgNVHSMEGDAWgBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeD
Mcimo0oz8o1R1Nver3ZVpSkwDgYDVR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYw
FAYIKwYBBQUHAwQGCCsGAQUFBwMCMEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYB
BQUHAgEWF2h0dHBzOi8vc2VjdGlnby5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9j
cmwuc2VjdGlnby5jb20vU2VjdGlnb1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1h
aWxDQS5jcmwwgYoGCCsGAQUFBwEBBH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdv
LmNvbS9TZWN0aWdvUlNBQ2xpZW50QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAj
BggrBgEFBQcwAYYXaHR0cDovL29jc3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5m
cmFkZWFkLm9yZzANBgkqhkiG9w0BAQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQv
Q/fzPXmtR9t54rpmI2TfyvcKgOXpqa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvI
lSPrzIB4Z2wyIGQpaPLlYflrrVFKv9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9Ch
WFfgSXvrWDZspnU3Gjw/rMHrGnqlHtlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0w
hpBtXdyDjzBtQTaZJ7zTT/vlehc/tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9
IzGCBMcwggTDAgEBMIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVz
dGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMT
NVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEA
xr4ZlmdAxAMdKFES+jupfjANBglghkgBZQMEAgEFAKCCAeswGAYJKoZIhvcNAQkDMQsGCSqGSIb3
DQEHATAcBgkqhkiG9w0BCQUxDxcNMjMxMDIwMTAyOTA0WjAvBgkqhkiG9w0BCQQxIgQgqd9qhQ2k
pcPiytHX0/cg9Ojv2ds1I6PtG3QNYL5SUGEwgb0GCSsGAQQBgjcQBDGBrzCBrDCBljELMAkGA1UE
BhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEYMBYG
A1UEChMPU2VjdGlnbyBMaW1pdGVkMT4wPAYDVQQDEzVTZWN0aWdvIFJTQSBDbGllbnQgQXV0aGVu
dGljYXRpb24gYW5kIFNlY3VyZSBFbWFpbCBDQQIRAMa+GZZnQMQDHShREvo7qX4wgb8GCyqGSIb3
DQEJEAILMYGvoIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVy
MRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNl
Y3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEAxr4Z
lmdAxAMdKFES+jupfjANBgkqhkiG9w0BAQEFAASCAgBtnQp2DQMznk+wJjgwBf6109KC3IpcFtmw
qoutdMizfsuh54ruCRllOLV/eIsMRnt4GqoimbqM/Lar8O75EUGOKDe40SWxTWi3baFtWtjaTFrv
UNLV7gS6ifKf9YosCCRli/o8fi3BMOuxuxH+rl3VlpgzKAFTxBQe4l1tvH+nkfoAPfQJc5rzK3Ab
soV0PXCZJ+0x9UCQPfFbttFWOlTrsjFRzikjJxCxZMnmmk4ngm/9y9hvuvYPGSHU7pehte3xnOD+
caQCyEVYcHmwKq3BxUENDaTCH7bUW/ZJugZ3aS0OhNcBXCmwMnwI4fW84l4q0NjhU3//eWIdje7V
zAduFlIcuJS3r2NTV+zBfbDSlwiLSjX1W3b92K0x83CKd6w/Qn/3dq906QdAu58YB+wr2UL71PSs
tncPvyjdO0RYRs3oqM3eMWnL9dlaUPrt9Gy+bTWNgSfLSF1uQU32MW+H8yxLE3qoz4Njxi1IYark
vEwsqDeRk0Bsnvr4/5xOX7FAEWgPfa20oun+62nYFtPsdZ4NlR+7W+efX/h6AQRSfn+yraeaLP5K
mL7Mvcd+afPXgmyUVhdFsNBbk31tvs1m1dYPHVOEEMgMbJDq3ieO43zS6DUTaueeXcFuX9W7j7BH
nBn82ulfWbcoD9ERSAtNu80RJLSagX0EJyxTl2cIwAAAAAAAAA==


--=-vA7+bRSuH2b6ydGXDNWj--


From xen-devel-bounces@lists.xenproject.org Fri Oct 20 10:33:24 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 10:33:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619743.965317 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtmoh-0001To-Ki; Fri, 20 Oct 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 619743.965317; Fri, 20 Oct 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 1qtmoh-0001Th-IE; Fri, 20 Oct 2023 10:33:19 +0000
Received: by outflank-mailman (input) for mailman id 619743;
 Fri, 20 Oct 2023 10:33: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=SYNS=GC=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qtmog-0001Pe-E6
 for xen-devel@lists.xenproject.org; Fri, 20 Oct 2023 10:33:18 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 14a66183-6f34-11ee-98d5-6d05b1d4d9a1;
 Fri, 20 Oct 2023 12:33:17 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id D4B5E4EE073C;
 Fri, 20 Oct 2023 12:33: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: 14a66183-6f34-11ee-98d5-6d05b1d4d9a1
MIME-Version: 1.0
Date: Fri, 20 Oct 2023 12:33:16 +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.cooper3@citrix.com, roger.pau@citrix.com, Simone Ballarin
 <simone.ballarin@bugseng.com>, Doug Goldstein <cardoe@cardoe.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][for-4.19 v2] xen: Add SAF deviations for MISRA C:2012
 Rule 7.1
In-Reply-To: <dd58e1cb-8f17-986d-f4f9-f39e998e05a0@suse.com>
References: <a9c52c943380f2c35f0a6ccab8215c03e87c99dc.1697712857.git.nicola.vetrini@bugseng.com>
 <de2b666e-ca48-58d2-73eb-5adc797f818e@suse.com>
 <d879b8e4689e51131f081edcb3b2abe6@bugseng.com>
 <dd58e1cb-8f17-986d-f4f9-f39e998e05a0@suse.com>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <5b1cd4fba12664f2ef49bcc2eb198e31@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/10/2023 08:38, Jan Beulich wrote:
> On 19.10.2023 18:34, Nicola Vetrini wrote:
>> On 19/10/2023 17:57, Jan Beulich wrote:
>>> On 19.10.2023 13:04, Nicola Vetrini wrote:
>>>> --- a/automation/eclair_analysis/ECLAIR/deviations.ecl
>>>> +++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
>>>> @@ -85,10 +85,10 @@ conform to the directive."
>>>>  # Series 7.
>>>>  #
>>>> 
>>>> --doc_begin="Usage of the following constants is safe, since they 
>>>> are
>>>> given as-is
>>>> -in the inflate algorithm specification and there is therefore no 
>>>> risk
>>>> of them
>>>> -being interpreted as decimal constants."
>>>> --config=MC3R1.R7.1,literals={safe,
>>>> "^0(007|37|070|213|236|300|321|330|331|332|333|334|335|337|371)$"}
>>>> +-doc_begin="Octal constants used as arguments to macro INSTR_ENC or
>>>> MASK_EXTR
>>>> +can be used, because they appear as is in specifications, manuals,
>>>> and
>>>> +algorithm descriptions."
>>>> +-config=MC3R1.R7.1,reports+={safe,
>>>> "any_area(any_loc(any_exp(macro(^(INSTR_ENC|MASK_EXTR)$))))"}
>>> 
>>> INSTR_ENC() is a local macro in x86'es AMD SVM code. A macro of the
>>> same
>>> name could imo be introduced without issues in, say, Arm code. The
>>> above
>>> would then needlessly suppress findings there, aiui.
>>> 
>>> MASK_EXTR() otoh is a global macro which ise used for various 
>>> purposes.
>>> Excluding checking there is imo going too far, too.
>> 
>> I should have thought about it; I can simply enforce the deviation to
>> additionally match
>> only a specific file for each of the macros.
> 
> That'll work for INSTR_ENC(), but not for MASK_EXTR().
> 

Why? What I'm deviating is reports due to octal constants used in 
expressions
that contain MASK_EXTR in their expansion if and only if these are 
located in the
file svm.h.
No extra octal constant will match all these constraints.

>>>> --- a/docs/misra/deviations.rst
>>>> +++ b/docs/misra/deviations.rst
>>>> @@ -90,6 +90,12 @@ Deviations related to MISRA C:2012 Rules:
>>>>           - __emulate_2op and __emulate_2op_nobyte
>>>>           - read_debugreg and write_debugreg
>>>> 
>>>> +   * - R7.1
>>>> +     - It is safe to use certain octal constants the way they are
>>>> defined in
>>>> +       specifications, manuals, and algorithm descriptions as
>>>> arguments to
>>>> +       macros 'INSTR_ENC' and 'MASK_EXTR'.
>>>> +     - Tagged as `safe` for ECLAIR.
>>> 
>>> Similarly this wording is imo inappropriate, while ...
>>> 
>> 
>> I tried to be a bit more specific about what is actually being 
>> deviated,
>> on the assumption
>> that the maintainers and contributors would find it more useful than
>> parsing ecl files, but
>> if you prefer it to be more general, no problem.
> 
> Just dropping everything after the last comma would deal with my 
> concern.
> 
> Jan

Ok

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


From xen-devel-bounces@lists.xenproject.org Fri Oct 20 10:40:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 10:40:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619748.965328 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtmvt-0003ZV-H4; Fri, 20 Oct 2023 10:40:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619748.965328; Fri, 20 Oct 2023 10:40: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 1qtmvt-0003ZO-DL; Fri, 20 Oct 2023 10:40:45 +0000
Received: by outflank-mailman (input) for mailman id 619748;
 Fri, 20 Oct 2023 10:40: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=SYNS=GC=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qtmvs-0003ZG-RC
 for xen-devel@lists.xenproject.org; Fri, 20 Oct 2023 10:40:44 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 1edb37da-6f35-11ee-98d5-6d05b1d4d9a1;
 Fri, 20 Oct 2023 12:40:43 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id 5CA8F4EE073C;
 Fri, 20 Oct 2023 12:40: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: 1edb37da-6f35-11ee-98d5-6d05b1d4d9a1
MIME-Version: 1.0
Date: Fri, 20 Oct 2023 12:40:43 +0200
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: Stefano Stabellini <sstabellini@kernel.org>, michal.orzel@amd.com,
 xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, consulting@bugseng.com,
 andrew.cooper3@citrix.com, roger.pau@citrix.com, Simone Ballarin
 <simone.ballarin@bugseng.com>, Doug Goldstein <cardoe@cardoe.com>, George
 Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>, Wei Liu
 <wl@xen.org>, xen-devel@lists.xenproject.org, Luca.Fancellu@arm.com
Subject: Re: [XEN PATCH][for-next][for-4.19 v2 1/8] xen/include: add macro
 LOWEST_BIT
In-Reply-To: <9ab86d00-b539-25d1-4830-80932babcfbc@suse.com>
References: <cover.1697123806.git.nicola.vetrini@bugseng.com>
 <bb0ba44f8a3944c22a1c7cf19196c7060e8adb4b.1697123806.git.nicola.vetrini@bugseng.com>
 <93408661-721b-c4b3-d504-e65142bbdaea@suse.com>
 <42ee4de54f6d9bd80fb50db3545cbaf4@bugseng.com>
 <08286993-6a83-b928-6398-e129397927a0@suse.com>
 <9002a10f872fccc5217faab2f20ad5ba@bugseng.com>
 <alpine.DEB.2.22.394.2310191253440.2099202@ubuntu-linux-20-04-desktop>
 <9ab86d00-b539-25d1-4830-80932babcfbc@suse.com>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <0b87c8229ad041d62360ac39d58ada00@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/10/2023 08:00, Jan Beulich wrote:
> On 19.10.2023 21:58, Stefano Stabellini wrote:
>>>>>>> --- a/xen/include/xen/macros.h
>>>>>>> +++ b/xen/include/xen/macros.h
>>>>>>> @@ -8,8 +8,10 @@
>>>>>>>  #define DIV_ROUND(n, d) (((n) + (d) / 2) / (d))
>>>>>>>  #define DIV_ROUND_UP(n, d) (((n) + (d) - 1) / (d))
>>>>>>> 
>>>>>>> -#define MASK_EXTR(v, m) (((v) & (m)) / ((m) & -(m)))
>>>>>>> -#define MASK_INSR(v, m) (((v) * ((m) & -(m))) & (m))
>>>>>> 
>>>>>> a SAF-<n>-safe comment here?
>>>>>> 
>>>>> 
>>>>> One reason is that now that violations only belonging to tool
>>>>> configurations
>>>>> and similar are documented in docs/misra/deviations.rst (committed 
>>>>> in
>>>>> Stefano's
>>>>> branch for-4.19 [1]).
>>>> 
>>>> But tool configuration means every analysis tool needs configuring
>>>> separately. That's why the comment tagging scheme was decided to be
>>>> preferred, iirc.
>>>> 
>>>>> Also, there were disagreements on the SAF naming
>>>>> scheme, and
>>>>> patches like those would not be accepted at the moment.
>>>> 
>>>> Well, that needs resolving. The naming there shouldn't lead to 
>>>> patches
>>>> being accepted that later may need redoing.
>>>> 
>>>> Jan
>>> 
>>> While this is true, in this case I'm not willing to deviate with a 
>>> SAF, given
>>> that
>>> some ECLAIR-specific configuration would be needed anyways, given 
>>> that I'm
>>> deviating a macro definition, rather than the line where it's 
>>> actually used
>>> (and maybe other tools would need
>>> that as well).
>> 
>> Did I get it right that the problem with using SAF in this case is 
>> that
>> it wouldn't be sufficient to add a SAF comment on top of the MACRO
>> definition, but we would need a SAF comment on top of every MACRO
>> invocation?
>> 
>> If so, then not just for this MACRO but in general basically we have 
>> to
>> use deviations.rst.
> 
> That would be pretty sad.
> 
> Jan
> 

Local deviation comments are for local deviations; deviating patterns is 
a tool configuration.

>> Luca, do you know what would be the behavior for cppcheck and/or
>> Coverity? I imagine it will be the same and they would also need a
>> deviation at every MACRO invocation, not just the definition?

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


From xen-devel-bounces@lists.xenproject.org Fri Oct 20 10:53:29 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 10:53:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619752.965338 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtn85-0005hR-JS; Fri, 20 Oct 2023 10:53:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619752.965338; Fri, 20 Oct 2023 10:53: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 1qtn85-0005hK-GW; Fri, 20 Oct 2023 10:53:21 +0000
Received: by outflank-mailman (input) for mailman id 619752;
 Fri, 20 Oct 2023 10:53: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=nUGB=GC=citrix.com=prvs=6503d4fc7=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qtn84-0005hE-ET
 for xen-devel@lists.xenproject.org; Fri, 20 Oct 2023 10:53:20 +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 dede1b06-6f36-11ee-98d5-6d05b1d4d9a1;
 Fri, 20 Oct 2023 12:53:17 +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;
 20 Oct 2023 06:53:13 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by PH0PR03MB6680.namprd03.prod.outlook.com (2603:10b6:510:b8::9) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.34; Fri, 20 Oct
 2023 10:53:10 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::17e3:6cff:b087:fc64]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::17e3:6cff:b087:fc64%4]) with mapi id 15.20.6886.034; Fri, 20 Oct 2023
 10:53: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: dede1b06-6f36-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1697799197;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=ae+3Ko+N+5j1OqAl+d58iU2DSWFkvgdyt833uP8mJ0g=;
  b=WXZXd4uMoCM6O9aCnoemvUqu6Ul2NEOgz2o0k0+FEZBtI+N0GAUJtJN+
   /XipzIocquidqVdkjYVYWGEsFzY3/xwI0lrNQL5dCXb7eH3iKekn6cVMU
   qkP0J98aqaraxrH8bhYiwPMMFtkTLd2BmLceKGJiJXqP6RSrcgwam/Ovh
   4=;
X-CSE-ConnectionGUID: riK9FppMQ2S9ev7zAHLVLg==
X-CSE-MsgGUID: bLbIQiO6SwWnzCkOQoSVBA==
X-IronPort-RemoteIP: 104.47.57.169
X-IronPort-MID: 126600140
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:NkLmMKqdyg2tv/72pxru3lu46/xeBmLhZBIvgKrLsJaIsI4StFCzt
 garIBmEOKuNZmr0e9F+Povn80sP6sXcz9VhHQtqpXgyEyoW8ZuZCYyVIHmrMnLJJKUvbq7FA
 +Y2MYCccZ9uHhcwgj/3b9ANeFEljfngqoLUUbOCYmYpA1Y8FE/NsDo788YhmIlknNOlNA2Ev
 NL2sqX3NUSsnjV5KQr40YrawP9UlKq04GhwUmAWP6gR5waGzihNVvrzGInqR5fGatgMdgKFb
 76rIIGRpgvx4xorA9W5pbf3GmVirmn6ZFXmZtJ+AsBOszAazsAA+v9T2Mk0MC+7vw6hjdFpo
 OihgLTrIesf0g8gr8xGO/VQO3kW0aSrY9YrK1Dn2SCY5xWun3cBX5yCpaz5VGEV0r8fPI1Ay
 RAXACoMTUGtn/qT+eiAG+Ry2dYKDO3VGIxK7xmMzRmBZRonabbqZvyToPN9gnI3jM0IGuvCb
 c0EbzYpdA7HfxBEJlYQDtQ5gfusgX78NTZfrTp5p4JuuzSVkFM3jeeraYSEEjCJbZw9ckKwv
 GXJ8n6/GhgHHNee1SCE4jSngeqncSbTAdhMSuXgr6Iy6LGV7mY3AjwvVHzlmuaGjFyVWPVmL
 Hcq0AN7+MDe82TuFLERRSaQonSJoxodUNp4CPAh5UeGza+8yxaUAC0IQyBMbPQitdQqXno62
 1mRhdTrCDdz9rqPRhq19KqQrD60ETgYKykFfyBsZRAe/9DprYU3jxTOZtVuCqi4ipvyAz6Y6
 y+OhDgzgfMUl8Fj/6m2+FHvgjSyp4PIRAo4+gXWWG2+6gpzIoWiYuSAyVXd9+cGE4+fQXGIp
 n1CkM+bhN3iFrmInS2JBekIQreg4q/cNCWG2AA+WZ486z6q5nivO5hK5y1zL1toNcBCfiL1Z
 EjUukVa45o70GaWUJKbqrmZU6wCpZUM3/y8PhwIRrKiuqRMSTI=
IronPort-HdrOrdr: A9a23:JKlE6aMlOHg/lcBcTkyjsMiBIKoaSvp037BL7TETdfUxSKfzqy
 nApoVn6faFslsssQ4b6La90cW7LU80jKQFhrX5Xo3DYOCOggLBEGgF1+TfKlbbehEWmNQy6Y
 5QN4JaJOLdNmVTtPDfzDSRPv4c6LC8gcWVrNab5XJgUg1wVql42SNUNy7zKDwVeCB2QbUfPr
 qwj/A33waISDA2aceHBn0INtKzw+HjpdbDfBZDPRg68wOD5AnYk4LSIlykxR8QXDNEhYoz6G
 StqX2C2oyz9/y4yhuZ0XbP75JQgrLau6J+OPA=
X-Talos-CUID: 9a23:RV+0Fm8O8PTD3WdeIv2Vv1QVOZELamX49S3rckKmVnRAaJmrbVDFrQ==
X-Talos-MUID: 9a23:uhXyMAmZr4lRcIxYKV79dnpoEM1J2qWJVnsSrpMUkMqjDCtLBR202WE=
X-IronPort-AV: E=Sophos;i="6.03,238,1694750400"; 
   d="scan'208";a="126600140"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ZtYHY6c3TWJ93UAnstcVvUDi+SOb81SAQs/kx8YMRUFBUsgcg9b1D0/kbODd3KRetwDkKgtmL6yScnzJ+w5zZ1DLfCKTxPmaqMIcrpEvZyQD5bnuUwuRulqDWBKwT4gg69E12pX2dwUu6wN8IDJOk1MVWzI6ogV6KBFPjXoRMv0ck0KegBXKQUAHINAcXjNeN31QbcjqSsk9hZhvt2cGmDTbUbL3zDpp8NfH2CwtLhwDSGRlCHSLeSDQ4TY4vjEMlPicK6dgjV1mnRscbY3HVo671PxmhNvWWAz1A8A/+7yke8k8FWdNLGx/mqv+XptP+HRi2Z8sT3eO7O/W3zOmNg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=z7WBWg0w4CiKSxgeFcL0cfjpZ9HsA1QZTElgoVPM4tA=;
 b=ko1r4Q9SrdpoFa6n5ajWKIufVnDb/0oaN9mUKn69t2LCzR4KPhVo3+I1eluAkSyMK6SRtQK9eKih5e0PLHZiHDvYh0aaLNh5XEFcGefmXYxy1tQiOj6qcl/Ov4nD9HtpSCpM+tkefZcOqUqmDEb0xRnYXEHcUUy14LLV/QKKPpPZPXwlNS5HaPvP+YGQAtcjPdnRRwr9LWkeCsVcGMObK1n5BQIW9B9gIOIOPIlqH0sbgEXLhxh5k2YSXvEulSWPprEA7fE0VOpbqjUZHhHHlElqYZ5u3tLwWywUzMaWpbf6N1MNNJ3RV5kDaLvmJIiddg+VQ39k/KzFPisf4lU8qA==
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=z7WBWg0w4CiKSxgeFcL0cfjpZ9HsA1QZTElgoVPM4tA=;
 b=KPovnaMqSLGAENQ4fwE/+8z7dCEzFEIRjCy4rMTNm7ZWA55GH06LVZQP6lJ4UlnNPsmOIiSloSyoxuQyD4KRjFbCJVAtUnrF3bluAtCZ4BpUyPz9YNeZh2TlmkyhYYApWELrrpMxGpgYJa/vKDxHcCpjy9R26Phqg+xBLtokyx0=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Fri, 20 Oct 2023 12:53:05 +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>,
	Demi Marie Obenour <demi@invisiblethingslab.com>,
	Henry Wang <Henry.Wang@arm.com>
Subject: Re: [PATCH v4 for-4.18?] x86: support data operand independent
 timing mode
Message-ID: <ZTJcERG9yD8ejHFR@macbook>
References: <34aefb5f-252d-2992-c561-a73941429c4e@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <34aefb5f-252d-2992-c561-a73941429c4e@suse.com>
X-ClientProxiedBy: LO2P265CA0008.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:62::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_|PH0PR03MB6680:EE_
X-MS-Office365-Filtering-Correlation-Id: c7864b72-8736-4f63-4da9-08dbd15abffb
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:
	Yw49pq2Qzatizy3jTFbOJbtlGBT1OcY7PLMyLsdk24M+JmIindZr9DXdP+9t/V6aZJfMsMyItBUYip+E+H0VROuv0u2b5WjiJAgHYHEXBrEpIp16fuTg7QPVp6pH6FJc8zS0lREsKzQhvIhhBHJfEmysoO0V4rEFF+S4wPci6Ggb5iqRKZ3NFeLH1k0JevRtgUh+Bc/oamlRTDqzNCFzPvqf6KrvIm4gPVyRo0RzfyiyCnOOsQKFgEWSV4Jt2IUDPJXTmIPxkCXTpe+GSy9FZw0FQ4b7QlXkI3fWGOPD0oeq4WY673Mf4ljUKy0KonpjBb0blwTCUbDgdi4w1oIUhAJ2J3xsMItMFdlHy0/J6Kqrzxw1mNk5wn1WMZrsQiWW7j7ex6Np8GJrBG6z8qSRkh6aYbbbn+/jkjyzdzjybeUN1zKFlJ5bVPu4sS6FaaPLDjzT00zuNPOK+zEEyzAbJ0H08Qj22TFxxxWbmh6C/U32eMdp1dsx7XYZ/dgN/wJT5kp1QAjZhKIpGp8gsuKBy95TBtBLqUT914V37LyvTkY=
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)(39860400002)(396003)(376002)(230922051799003)(451199024)(1800799009)(186009)(64100799003)(85182001)(86362001)(82960400001)(6916009)(26005)(6512007)(9686003)(6506007)(38100700002)(66946007)(83380400001)(54906003)(478600001)(41300700001)(66476007)(33716001)(6666004)(2906002)(316002)(5660300002)(966005)(66556008)(8676002)(4326008)(6486002)(8936002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?SmRmOXE5RHFhUmRzY21RTUJJdFhmVnFUV1hJaVJRb0NQY3I2SG1VQnpRcTZH?=
 =?utf-8?B?YjJJbzF4UjdiLzRlWDN2TVNMa1VTT1dYdVJLY0tvSGlrZU1wdmVCbUtIdStP?=
 =?utf-8?B?WmVUeWMxRm5wbnNCaElaRVRHRGNzRzhKams0STJxenpveS96YlUrN3RGYkJY?=
 =?utf-8?B?T25aemh0aktvWXFIWFZ5dHEwVlFXcm9MUCtkQjJEcWhJWkxNRFBIZTZqUHRp?=
 =?utf-8?B?SlZSanFHTS9ma01rMS96d2oxUjFKeXB4bjZmdG14emQrQ2ZHakt0eWRkY2hr?=
 =?utf-8?B?bXh6cFZ1OGZacytIK2pndCtQd04zZ2I2VUdmNmNLRi8wdkdrZW9iSjQ5WFJM?=
 =?utf-8?B?SE5CZ3QrU0s2OFhjM0xCZXBpQjd1VURhUkZTK0pBUnZyMExSeVBRTEUzQlBH?=
 =?utf-8?B?MzI1bTBEM0FHejhtU3JEaEI5MUFpWlVNemxXMnYyWi9McFlGL3BCb2dGNGZI?=
 =?utf-8?B?TlRZUEJNVUI5ZXYxQUhBRTB0aERzN1d6M01jQ3BkcjFrOEY2RE1jMWx6d25I?=
 =?utf-8?B?dGg1Tm9xTWtaTThtbDhyRkIrNHM3YXVzU2NleTBKQk9vYmQ0aHRRa1JxeDZQ?=
 =?utf-8?B?ejMzSlEyTU1zdlJoRUtCRUc2VFlNblhHeFdqMEczZVkrNE9NRVdIaUphV283?=
 =?utf-8?B?c1Z4aUdVUjM3MVBubWpJeEppbGNZVUNPNXcvd1NVamRBRUxDVGpLTEVBT0Fy?=
 =?utf-8?B?bHptcC96ajFBaldQbHo2bTEvRkp1RVBZakJ2OCs2bjRTOWVoZkh3aGwyaE5o?=
 =?utf-8?B?aFJPck9MY3ZwLyt5QXF2eG1JVFFaY0dkdTZOMW9NMlIwQzRQeEhpK3RTOGtt?=
 =?utf-8?B?SWdsaHRCRnNwVCs4WXdRMENrd0pHdHA1S3czdGNIVFJlQjFsQXUvWEFPeStL?=
 =?utf-8?B?SWRXam51Ti9oQmI4dEdPR1NHeTN5a0d1RlRqSFRubEZ6ZHVhNVVBTHRKaHo4?=
 =?utf-8?B?amV0b09Dc2l6azkwT2Zzemxibkc4eFJFMkNtVmJ3MGhiZWdOWWlIeGJDZE1w?=
 =?utf-8?B?SWpPUmorUnJVL3h0Rm9uZ2JMQlN1YjI1Um5WbGlhYmdrTUt2ZzBlZ2RmdE51?=
 =?utf-8?B?ZERuL0d6VUFiQVhCTlB2aW1oNTlzSGRIOFhiWStndStyUWljaVQ3QWlMKzdy?=
 =?utf-8?B?K0NSaSswcmI3QUUrSFEzNXY1dFZ5RHN6aFJyMjVzdjdNblhFWGQzSGRXTkdU?=
 =?utf-8?B?aldIZTBtSU1LdDY5RmdXaWF1d1N0RDNIUllzclVHb0NrRTFMWGRxMURnRHRa?=
 =?utf-8?B?MVpwRGNuajhGOHpjYWUzSk1BSlFJNXUxMEJRZHhTY2VwSFVNenlnMThpWmFN?=
 =?utf-8?B?RkpFalpSTTBnU2h1eWJmSFl0TjVKbFNxSnQxWUtRZzY5ay94cVJPaTZhd3hj?=
 =?utf-8?B?Ly9GaUQ1VTVaMUtodGF4NjJGakNSR2hqVTBBeUNQelhyMWg0dTNhRW1vNVEz?=
 =?utf-8?B?YlByeEV5Ky9XSk1HeWhzNTN4aHRMUU1UYitmTE5kTTRPZllRMzIzaEhtOGZ1?=
 =?utf-8?B?WWYwZ1Z5UjVwNExtR0VRYVBzUEdyV3FrcnpKRmdpaVR1b2ljaGk2aDlROWpo?=
 =?utf-8?B?VkUyZm13WkJWdjByYjkvVzVsRE93YnJaMzh2NFNuc1NuZUlid0RTelZIRXdP?=
 =?utf-8?B?UUU0TEY1elJSTjhqeDNBNGwvNVZQb3hQcHRkMXlldXNFdHJaSVFFRUI3WXp1?=
 =?utf-8?B?Zi80YXhrT1J3Mlp1aUxaQjVsRS90Q0lMWFJDNVh4K3hScmRIYjVhZ0xqMXZ0?=
 =?utf-8?B?SFZwQ2RmNi9iTkVyd1FWbnB4cUZRcW9zVE1YTGZXa3RJRHB0ZnZWeUhCcEph?=
 =?utf-8?B?ekZzanZNNXg5T2V2Y1RjeVNMZWl5WVhDTXlyWG9nUFZ2Z1hXM2hMY3Y2Q2lr?=
 =?utf-8?B?Rm9WNm53eVVhMXVlSEF2U2pMeFVkeElJbFBMaFUveDRvY3cwTTE0NnlTTjYx?=
 =?utf-8?B?NEJnOUJoRjhNY0lHejN4THB6Rll1eXNaQUNmTHpaZEJqTkRCU3Q4N0tKK1Bx?=
 =?utf-8?B?ZElQYWllcWJBSGhpY0d5bk1oMWcyUTNESDdpZ1Joby9rQ01TYmdYaUFPNnNH?=
 =?utf-8?B?N1pUNzl5VmVlWGM1M0dJYkFvTGFFZXhIZ096NmdLTkRCK0xTVDVDemJlV3VX?=
 =?utf-8?Q?2tkN2+Xcj/wtaO8ahN4Q8Ry/I?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	=?utf-8?B?aTZqdUYzaldEOEwyakw2Y04yNm1CcFR2cysxV1I1SjRYa2pTTytyNmNVYU9F?=
 =?utf-8?B?V05DRTUvWTFsa1VLbTJPd2RTSGpoM3FkZ1hKcTl3dHBQdlJYcFplWVE1ajRq?=
 =?utf-8?B?ajFkZDFkZWFOTVRtRmdhenRXQk92d3VCM1JrV1cwcTFZTE9HNFFHWkFxY0xx?=
 =?utf-8?B?OFNBSW5lNWlFWlI5VXR2enVjNGRNT1JsKzBsZ0NQUkNwRXJvL0I3dUticmpJ?=
 =?utf-8?B?V2dtSXUweXIzUjBFTmZLeFpYdWR4QUp0WSt4TGY4NDFVMEhZWDh6VURNNmFs?=
 =?utf-8?B?SDZEZGt1WHpjYWNMUGoyY2NsQTFlQm9DTDNwWFk4VVhoanNJckRkamxmclZL?=
 =?utf-8?B?NGIwL0RwczZHcHRGSzhZaE9hM1JBVWdxeHhxVXJ1RitCWnU4WnZ0UjYwcmt6?=
 =?utf-8?B?YkdTSFRNRkh5NGhyWXM5ZDJnZzVldjRIdFRxYUhoSEdjY0ZwbWQ1SkMxSGlM?=
 =?utf-8?B?UlI3bW5wR1pXZlBXL3p3RmVsVy9xVTd4bTE2b1F6NEtyRU5pZ3FiNVVOeUNk?=
 =?utf-8?B?ZFpWdXE5emladDlONldQa2MzWlI2TEpuaG93Y21GSlFWQmFBaWx2cVdwQ3N6?=
 =?utf-8?B?RWdDa21RV0pnUng3V1FPa280MGR4Mm56bE9KMW84U0xTd0VoT2J4RlhWSXdz?=
 =?utf-8?B?cGs1ZjI5OU43bHM4Tys0RDlnVXowVFFUZzhjS0JOK3F2dnFlVGF5Q0N2WkVv?=
 =?utf-8?B?QllpeXl5Q1lQYURqSkJlVGFMeHJLd1U5cWZpb1BYQ2Y4MVYzM3BXNHhOaSts?=
 =?utf-8?B?akFOekcxMFpxUzhYQnhZOUFQWEdXYVJIZUV6L3laU0dUTTg0ZHU5MmZ3RmJN?=
 =?utf-8?B?akVmWjBISDlzZFFyTUFZQUVBbUdLcUZQN1NmVGtkZW5RTWwxZDNIYitHZTRM?=
 =?utf-8?B?RHJLVzZRUnc5QVh1azBraDVMUWpST3F1bXdGNnE3anp6MEhyM1VxTkdqbVJI?=
 =?utf-8?B?d2FQU0tjWGFPN3QvTUJVeTlPUlZXWEh0UkRiQmNOeXdJS09pUnlYaGNBbGFW?=
 =?utf-8?B?eDNLT01NTUM4MXNsTnY5Wk5XQ1dsa1FYbUlKT2p5dFczMWdaQW1tSnh1QVBh?=
 =?utf-8?B?SFhlZ0pTRVl5RlNFK3R2anJoN0UrTktMdklQckNoOTA0aEx2bWxhWUcwVzJ6?=
 =?utf-8?B?UUtYMzlEc3cvWTNKR3RpaHE0TUJCMGpGSTNKaWdEODh3R0NRMHp2bXRZbDJC?=
 =?utf-8?B?Y0xFY3BMYlJoOFdFdUdTTkNKNm90N2ptbFg5K3Jod3FOK09qZnhoQU04a3g0?=
 =?utf-8?Q?/ObWZJkIqlOZA/e?=
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: c7864b72-8736-4f63-4da9-08dbd15abffb
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Oct 2023 10:53:10.4454
 (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: O4MmFBX6OmoR35M1b0cTial91DLroufAMKArwDIKCi12QFGziI2iQLKZjWucmh/mPkHBk6KCyYPwUcrweqbgzQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR03MB6680

On Fri, Oct 20, 2023 at 07:53:51AM +0200, 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.

Couldn't we just expose DOITM in MSR_ARCH_CAPS (by setting the A flag
in the feature enumeration) and handle accesses to
MSR_UARCH_MISC_CTRL?

The complications would be with the leveling of the feature across a
pool, as AFAICT the bit needs to be OR'ed rather than AND'ed across
hosts.

It would also then need some special handling in order to allow
reporting DOITM on hardware that doesn't have the feature (and writes
to MSR_UARCH_MISC_CTRL won't be forwarded to hardware in that case).

>From an implementation PoV we might want to treat this as SSBD, and
allow Xen to run with the guest selection.

Anyway, likely much more than what you want to do

> 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>

Acked-by: Roger Pau Monné <roger.pau@citrix.com>

The only concern I have is with the Kconfig and command line options
being named DIT instead of DOIT, which would be what I would search
for given the documentation from Intel.  Maybe that's for unification
with Arm?

> ---
> 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. Note that already for 4.17 it had a
> release ack to go in late; just the necessary normal ack continues to be
> missing.
> 
> 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.

As I wrote below, we do not seem to be very consistent with where are
such setup functions called.  Would be good if we could unify all the
CPU initialization in a single function, as that could avoid
confusion, and mistakes with forgetting initialization in the resume
path.

> ---
> v4: Re-base.
> 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
> @@ -33,6 +33,8 @@ The format is based on [Keep a Changelog
>     nodes using a device tree overlay binary (.dtbo).
>   - Introduce two new hypercalls to map the vCPU runstate and time areas by
>     physical rather than linear/virtual addresses.
> + - 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)

Why DIT and not DOIT?  That seems to be the acronym used in Intel
docs, and what I would use to grep for in the command line document.

> +> `= <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);
>  
> @@ -599,6 +621,8 @@ void identify_cpu(struct cpuinfo_x86 *c)
>  
>  		mtrr_bp_init();
>  	}
> +
> +	setup_doitm();

We do not seem to to be very consistent about where features are
enabled, we do seem to have a tail of features that could also likely
be part of identify_cpu()? tsx_init(), update_mcu_opt_ctrl(),
MSR_SPEC_CTRL.

>  }
>  
>  /* leaf 0xb SMT level */
> --- a/xen/arch/x86/include/asm/cpufeature.h
> +++ b/xen/arch/x86/include/asm/cpufeature.h
> @@ -202,6 +202,7 @@ static inline bool boot_cpu_has(unsigned
>  #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_mcu_ctrl        boot_cpu_has(X86_FEATURE_MCU_CTRL)
> +#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
> @@ -56,6 +56,9 @@ config HAS_COMPAT
>  config HAS_DEVICE_TREE
>  	bool
>  
> +config HAS_DIT # Data Independent Timing
> +	bool
> +
>  config HAS_EX_TABLE
>  	bool
>  
> @@ -187,6 +190,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.

I would word the last sentence as `Note the build time value can be
changed at runtime using the "dit" command line option.`

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Fri Oct 20 10:57:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 10:57:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619756.965348 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtnCT-0006oq-5l; Fri, 20 Oct 2023 10:57:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619756.965348; Fri, 20 Oct 2023 10: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 1qtnCT-0006oj-23; Fri, 20 Oct 2023 10:57:53 +0000
Received: by outflank-mailman (input) for mailman id 619756;
 Fri, 20 Oct 2023 10: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=SkgR=GC=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qtnCR-0006od-7T
 for xen-devel@lists.xenproject.org; Fri, 20 Oct 2023 10:57:51 +0000
Received: from mail-ej1-x633.google.com (mail-ej1-x633.google.com
 [2a00:1450:4864:20::633])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 82baf223-6f37-11ee-98d5-6d05b1d4d9a1;
 Fri, 20 Oct 2023 12:57:50 +0200 (CEST)
Received: by mail-ej1-x633.google.com with SMTP id
 a640c23a62f3a-9bf86b77a2aso103969266b.0
 for <xen-devel@lists.xenproject.org>; Fri, 20 Oct 2023 03:57:50 -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
 gs26-20020a170906f19a00b0099ddc81903asm1259865ejb.221.2023.10.20.03.57.49
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Fri, 20 Oct 2023 03:57: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: 82baf223-6f37-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1697799470; x=1698404270; darn=lists.xenproject.org;
        h=content-transfer-encoding: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=JbS6XQ7LH7CWENNrt/82teeMD2nkJrOYSnMxL3Tg6M0=;
        b=aq+g/KISiLF3Ra0DPnzlR6NAdiLmfH4jV6uxu+aStS2hieXqk2nJGW0EIUwXjsRMGk
         VtHe5WlNdG6UcwDMYr5RVKRw7TwWO2ItAkvjVAHv44rVNldmt3yWYRuCx/QvDrgYEgqR
         XhIMqQ8GmKIiAGXhlaoT5mkNzaye2khe4SKO4=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697799470; x=1698404270;
        h=content-transfer-encoding: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=JbS6XQ7LH7CWENNrt/82teeMD2nkJrOYSnMxL3Tg6M0=;
        b=EKjhSrM/4gnbA/Cn+Qb7fjyKp3cTaMbGL3mufcEFQZreFMmn6yDpjhA1RGipSsuFyu
         Wlk2KZguuBgQQ05nnshS2Qw2Ggw/zDbKEKo1iZoQXd825jmeLa/g8skRolOFIZ45tnkd
         gjAoPa7coSDCIAaIXdT/hqTQ2VMyVX+XZnc53iCaxYCaIjFG4rOpqrUrmz7V14a5PFuW
         YX1SMfjxNJbHyyoWcO7bWyf14oZbataRZ1OUlE1mnuf/dSBXir/OsDm6Mp2VXnzccyQF
         LQzzvXvmKuMHrvgl9Gk9NQDUdIDiIZ7R41F1/vjA76uY37CC+9exbEQwG8H+xF5s+8MS
         J5mw==
X-Gm-Message-State: AOJu0Yz4WFp/FyRr36xzaxAZJrPWw9H6eEF0qSghq96VdfPCr+jJXxW5
	mwZ5vQW/z3v0Tj0UtdJqZgof/A==
X-Google-Smtp-Source: AGHT+IHkeDn+9pIqbisY76J0LUXcW/Y8w29/BTZy0zDdQt7+UxHaYT1MPra9PTUeKLrrKcANBvkYyw==
X-Received: by 2002:a17:906:da8c:b0:9ae:52fb:2202 with SMTP id xh12-20020a170906da8c00b009ae52fb2202mr1123487ejb.40.1697799469782;
        Fri, 20 Oct 2023 03:57:49 -0700 (PDT)
Message-ID: <376519cb-b7fa-4332-91d8-96c3e8714c57@citrix.com>
Date: Fri, 20 Oct 2023 11:57:49 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH for-4.18] x86/mem_sharing: add missing m2p entry when
 mapping shared_info page
Content-Language: en-GB
To: Henry Wang <Henry.Wang@arm.com>
Cc: Tamas K Lengyel <tamas@tklengyel.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 Jan Beulich <jbeulich@suse.com>, George Dunlap <george.dunlap@citrix.com>,
 =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>, Wei Liu <wl@xen.org>
References: <20231018080242.1213-1-tamas@tklengyel.com>
 <cc20f0f7-0216-4755-a9ef-ad5fa60982f6@citrix.com>
 <7399BA16-EAC9-4AB9-8A31-6D5F34BCB376@arm.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: <7399BA16-EAC9-4AB9-8A31-6D5F34BCB376@arm.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 20/10/2023 2:14 am, Henry Wang wrote:
> Hi all,
>
>> On Oct 20, 2023, at 07:48, Andrew Cooper <andrew.cooper3@citrix.com> wrote:
>>
>> On 18/10/2023 9:02 am, Tamas K Lengyel wrote:
>>> When mapping in the shared_info page to a fork the m2p entry wasn't set
>>> resulting in the shared_info being reset even when the fork reset was called
>>> with only reset_state and not reset_memory. This results in an extra
>>> unnecessary TLB flush.
>>>
>>> Fixes: 1a0000ac775 ("mem_sharing: map shared_info page to same gfn during fork")
>>> Signed-off-by: Tamas K Lengyel <tamas@tklengyel.com>
>>> ---
>>> xen/arch/x86/mm/mem_sharing.c | 2 ++
>>> 1 file changed, 2 insertions(+)
>>>
>>> diff --git a/xen/arch/x86/mm/mem_sharing.c b/xen/arch/x86/mm/mem_sharing.c
>>> index 94b6b782ef..142258f16a 100644
>>> --- a/xen/arch/x86/mm/mem_sharing.c
>>> +++ b/xen/arch/x86/mm/mem_sharing.c
>>> @@ -1847,6 +1847,8 @@ static int copy_special_pages(struct domain *cd, struct domain *d)
>>>                                 p2m_ram_rw, p2m->default_access, -1);
>>>             if ( rc )
>>>                 return rc;
>>> +
>>> +            set_gpfn_from_mfn(mfn_x(new_mfn), gfn_x(old_gfn));
>>>         }
>>>     }
>>>
>> Acked-by: Andrew Cooper <andrew.cooper3@citrix.com>
>>
>> CC Henry.  This needs a view about a release ack.
>>
>> Cons: it's been broken since Xen 4.14 and we're very deep into the 4.18
>> code freeze.
>>
>> Pros: it's a bug and would clearly qualify for backport, and is in a
>> niche feature so isn't plausibly going to adversely affect other users.
> Given the fact that it will be backported anyway, I had the same discussion with Juergen
> in his thread [1]. So if we can bear the risk of delaying merging this patch for a week,
> would it be ok to wait for the release and backport this patch to the stable tree? Thanks!
>
> [1] https://lore.kernel.org/xen-devel/83E6DCF6-926C-43A6-94D2-EB3B2C444309@arm.com/
>
> Kind regards,
> Henry

That's fine.  I'll pull this into my next branch for when the 4.19 tree
opens.

~Andrew


From xen-devel-bounces@lists.xenproject.org Fri Oct 20 12:11:04 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 12:11:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619760.965358 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtoL4-0002hG-It; Fri, 20 Oct 2023 12:10:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619760.965358; Fri, 20 Oct 2023 12:10: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 1qtoL4-0002h9-FA; Fri, 20 Oct 2023 12:10:50 +0000
Received: by outflank-mailman (input) for mailman id 619760;
 Fri, 20 Oct 2023 12:10: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 1qtoL3-0002gz-7W; Fri, 20 Oct 2023 12:10: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 1qtoL3-0001AX-38; Fri, 20 Oct 2023 12:10: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 1qtoL2-0005by-IY; Fri, 20 Oct 2023 12:10:48 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qtoL2-0003Ni-I6; Fri, 20 Oct 2023 12:10: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=94t7YqZgWCs4vUvLmNARLRvgB+Iy03SrGLXcfgABPfs=; b=H3t8evLysoHuLoWDZdt7ln4gh4
	6Zr87VYfoSZ/roEb1IT2RqjeYvA4tdiJZ1Yo6u19NC1O5dxl5K2/FKuecQ2G4BNFVJsYg8Zw3boer
	D8t8T6CyJXYd55riaJoDxPz9Jw23n7Y9Rd3zt8ZfEsF9TZPH7TS82+qmPdAWpeTFsyuI=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183438-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 183438: regressions - FAIL
X-Osstest-Failures:
    xen-unstable:test-amd64-i386-libvirt-raw:xen-install:fail:regression
    xen-unstable:test-amd64-i386-pair:xen-install/src_host:fail:heisenbug
    xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-migrupgrade:xen-install/src_host: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-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-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop: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-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1: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:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1: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-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-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-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-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt: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-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:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=474fc7d3c6525e209bd2fe1e6ef0bbb34de86bb4
X-Osstest-Versions-That:
    xen=698b0f5031c6083401234a9b9415175cc5855a0a
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 20 Oct 2023 12:10:48 +0000

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

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. 183430

Tests which are failing intermittently (not blocking):
 test-amd64-i386-pair        10 xen-install/src_host fail pass in 183441-retest

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop      fail blocked in 183430
 test-amd64-i386-migrupgrade  10 xen-install/src_host         fail  like 183430
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183430
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183430
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 183430
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183430
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183430
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183430
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 183430
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183430
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183430
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 183430
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 183430
 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-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  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          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-amd64-amd64-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-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-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-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-amd64-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-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-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          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass

version targeted for testing:
 xen                  474fc7d3c6525e209bd2fe1e6ef0bbb34de86bb4
baseline version:
 xen                  698b0f5031c6083401234a9b9415175cc5855a0a

Last test of basis   183430  2023-10-19 14:38:43 Z    0 days
Testing same since   183438  2023-10-20 01:08:42 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Jan Beulich <jbeulich@suse.com>
  Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
  Roger Pau Monne <roger.pau@citrix.com>
  Roger Pau Monné <roger.pau@citrix.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                                  fail    
 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                                  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


Not pushing.

------------------------------------------------------------
commit 474fc7d3c6525e209bd2fe1e6ef0bbb34de86bb4
Author: Roger Pau Monne <roger.pau@citrix.com>
Date:   Wed Oct 18 18:07:33 2023 +0200

    iommu/vt-d: fix SAGAW capability parsing
    
    SAGAW is a bitmap field, with bits 1, 2 and 3 signaling support for 3, 4 and 5
    level page tables respectively.  According to the Intel VT-d specification, an
    IOMMU can report multiple SAGAW bits being set.
    
    Commit 859d11b27912 claims to replace the open-coded find_first_set_bit(), but
    it's actually replacing an open coded implementation to find the last set bit.
    The change forces the used AGAW to the lowest supported by the IOMMU instead of
    the highest one between 1 and 2.
    
    Restore the previous SAGAW parsing by using fls() instead of
    find_first_set_bit(), in order to get the highest (supported) AGAW to be used.
    
    However there's a caveat related to the value the AW context entry field must
    be set to when using passthrough mode:
    
    "When the Translation-type (TT) field indicates pass-through processing (10b),
    this field must be programmed to indicate the largest AGAW value supported by
    hardware." [0]
    
    Newer Intel IOMMU implementations support 5 level page tables for the IOMMU,
    and signal such support in SAGAW bit 3.
    
    Enabling 5 level paging support (AGAW 3) is too risky at this point in the Xen
    4.18 release, so instead put a bodge to unconditionally disable passthough
    mode if SAGAW has any bits greater than 2 set.  Ignore bit 0; it's reserved in
    current specifications, but had a meaning in the past and is unlikely to be
    reused in the future.
    
    Note the message about unhandled SAGAW bits being set is printed
    unconditionally, regardless of whether passthrough mode is enabled.  This is
    done in order to easily notice IOMMU implementations with not yet supported
    SAGAW values.
    
    [0] Intel VT Directed Spec Rev 4.1
    
    Fixes: 859d11b27912 ('VT-d: prune SAGAW recognition')
    Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>
    Release-acked-by: Henry Wang <Henry.Wang@arm.com>

commit 94a5127ebeb4a005f128150909ca78bfea50206a
Author: Roger Pau Monne <roger.pau@citrix.com>
Date:   Thu Oct 19 12:45:51 2023 +0200

    iommu: fix quarantine mode command line documentation
    
    With the addition of per-device quarantine page tables the sink page is now
    exclusive for each device, and thus writable.  Update the documentation to
    reflect the current implementation.
    
    Fixes: 14dd241aad8a ('IOMMU/x86: use per-device page tables for quarantining')
    Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>
    Release-acked-by: Henry Wang <Henry.Wang@arm.com>

commit 11f81a5a2c74d021d34bd5d4a0f02a210df21b1c
Author: Jan Beulich <jbeulich@suse.com>
Date:   Thu Oct 19 14:08:22 2023 +0200

    EFI: reduce memory map logging level
    
    With the release build default now being INFO, the typically long EFI
    memory map will want logging at DEBUG level only.
    
    Signed-off-by: Jan Beulich <jbeulich@suse.com>

commit 196a8fac1cb5df44214c255420d465be8bff1040
Author: Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
Date:   Fri Oct 6 04:05:19 2023 +0200

    automation: extract QEMU log in relevant hardware tests
    
    Let it be printed to the console too. QEMU and Linux messages have
    different enough format that it should be possible to distinguish them.
    
    Signed-off-by: Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
    Acked-by: Stefano Stabellini <sstabellini@kernel.org>
    Acked-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Release-acked-by: Henry Wang <Henry.Wang@arm.com>

commit cbb0fdc0d7b7321d9293e974ea975999be1a3053
Author: Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
Date:   Fri Oct 6 04:05:18 2023 +0200

    automation: improve checking for MSI/MSI-X in PCI passthrough tests
    
    Checking /proc/interrupts is unreliable because different drivers set
    different names there. Install pciutils and use lspci instead.
    In fact, the /proc/interrupts content was confusing enough that
    adl-pci-hvm had it wrong (MSI-X is in use there). Fix this too.
    
    Signed-off-by: Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
    Acked-by: Stefano Stabellini <sstabellini@kernel.org>
    Acked-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Release-acked-by: Henry Wang <Henry.Wang@arm.com>

commit 9c34956b1916b2fcc2de8022b4d94202e46f1026
Author: Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
Date:   Fri Oct 6 04:05:17 2023 +0200

    automation: cleanup test alpine install
    
    Remove parts of initramfs for the test system (domU, and in few tests
    dom0 too) that are not not working and are not really needed in this
    simple system.
    
    This makes the test log much lighter on misleading error messages.
    
    Signed-off-by: Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
    Acked-by: Stefano Stabellini <sstabellini@kernel.org>
    Acked-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Release-acked-by: Henry Wang <Henry.Wang@arm.com>

commit 052813b1d23b0d148da1c39f2b7e4aacdba06bca
Author: Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
Date:   Fri Oct 6 04:05:16 2023 +0200

    automation: hide timeout countdown in log
    
    grep+sleep message every 1s makes job log unnecessary hard to read.
    
    Signed-off-by: Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
    Acked-by: Stefano Stabellini <sstabellini@kernel.org>
    Acked-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Release-acked-by: Henry Wang <Henry.Wang@arm.com>

commit dfe5bfc3d55811e285c9198febf3230eecc7f837
Author: Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
Date:   Fri Oct 6 04:05:15 2023 +0200

    automation: include real-time view of the domU console log too
    
    Passthrough domU console log to the serial console in real time, not
    only after the test. First of all, this gives domU console also in case
    of test failure. But also, allows correlation between domU and dom0 or
    Xen messages.
    
    To avoid ambiguity, add log prefix with 'sed'.
    
    Signed-off-by: Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
    Acked-by: Stefano Stabellini <sstabellini@kernel.org>
    Acked-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Release-acked-by: Henry Wang <Henry.Wang@arm.com>
(qemu changes not included)


From xen-devel-bounces@lists.xenproject.org Fri Oct 20 12:20:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 12:20:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619765.965367 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtoUi-0004ls-F1; Fri, 20 Oct 2023 12:20:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619765.965367; Fri, 20 Oct 2023 12:20: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 1qtoUi-0004ll-C9; Fri, 20 Oct 2023 12:20:48 +0000
Received: by outflank-mailman (input) for mailman id 619765;
 Fri, 20 Oct 2023 12: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=G6J+=GC=tklengyel.com=tamas@srs-se1.protection.inumbo.net>)
 id 1qtoUg-0004lf-KX
 for xen-devel@lists.xenproject.org; Fri, 20 Oct 2023 12:20:46 +0000
Received: from sender4-op-o12.zoho.com (sender4-op-o12.zoho.com
 [136.143.188.12]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 16cb126c-6f43-11ee-98d5-6d05b1d4d9a1;
 Fri, 20 Oct 2023 14:20:45 +0200 (CEST)
Received: from mail-yb1-f172.google.com (mail-yb1-f172.google.com
 [209.85.219.172]) by mx.zohomail.com
 with SMTPS id 1697804418701308.6957844333948;
 Fri, 20 Oct 2023 05:20:18 -0700 (PDT)
Received: by mail-yb1-f172.google.com with SMTP id
 3f1490d57ef6-d77ad095f13so713901276.2
 for <xen-devel@lists.xenproject.org>; Fri, 20 Oct 2023 05:20: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: 16cb126c-6f43-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; t=1697804419; cv=none; 
	d=zohomail.com; s=zohoarc; 
	b=Jf9DXYPiMT1lKWd/PRevnRpk5Tv1irRDRNNBls3hXTIJqZJ3uZ+XPlbutXdYKBTjWR4W8QOVw3PUQrJmEZ15PeZ8PivRml40AVp/3Z/sEVYlx4q+dWgUtO2mBuf7G+u8r5xOio9Ju08FPqNLOM2jGGH0aVCo1iaga0hfkdPMSsA=
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; 
	t=1697804419; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:MIME-Version:Message-ID:References:Subject:Subject:To:To:Message-Id:Reply-To; 
	bh=Pvnpw8d2bEUZD+p1LK2EHGE40ro7es6rYeZB/3Oq2jk=; 
	b=PzlltwDmSoLVH1JAAJCLJnYRC4zAHX0YPM4UXRH6LQbvnXQVthAqt1nHFTRy02H+hiNOGDWbyf07rvl6Ubf7OrX7wHMPf+UVedIouoDh1Vq+Oz/l/dGLJTpe1YSe457dpOyo4UQe3z4R/MUv7TjxpIPijh8+LKlq8Dt56jrhKPY=
ARC-Authentication-Results: i=1; mx.zohomail.com;
	dkim=pass  header.i=tklengyel.com;
	spf=pass  smtp.mailfrom=tamas@tklengyel.com;
	dmarc=pass header.from=<tamas@tklengyel.com>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; t=1697804419;
	s=zmail; d=tklengyel.com; i=tamas@tklengyel.com;
	h=MIME-Version:References:In-Reply-To:From:From:Date:Date:Message-ID:Subject:Subject:To:To:Cc:Cc:Content-Type:Content-Transfer-Encoding:Message-Id:Reply-To;
	bh=Pvnpw8d2bEUZD+p1LK2EHGE40ro7es6rYeZB/3Oq2jk=;
	b=g2e2985/yIXnZw9k+5r58QhBF1DxSrOoF2YX7bZo7+2fDmq5bo9OsoUUEPcMNx+7
	W2t836RckoXtIHte3JJzg0czgGiKAVB6MzZyGly/gdjBXAFEx6avLFmEuIsAMqgPPaM
	XfjRX7IBK102bu0nHsDz2txA3tfT5XFzgQtOF/zw=
X-Gm-Message-State: AOJu0YyQdAHlwGShEsf2j6a+SHTJw+YgVVFzsD3Z6RsyS5gjC1iBAW6p
	uzrPkOVtgBmrrmoWcvHmhNzSFV7/2hUjBXmgaF8=
X-Google-Smtp-Source: AGHT+IHkHue2FIe99cFJU05iJHKw+6U9TvvMlaOXqBjEffh6NH4eqxdcfnhN/Pmtox96dRe5hlaN35lTCuXafrtvrVE=
X-Received: by 2002:a25:ef48:0:b0:d9a:4163:7b6d with SMTP id
 w8-20020a25ef48000000b00d9a41637b6dmr1550208ybm.59.1697804417743; Fri, 20 Oct
 2023 05:20:17 -0700 (PDT)
MIME-Version: 1.0
References: <20231018080242.1213-1-tamas@tklengyel.com> <cc20f0f7-0216-4755-a9ef-ad5fa60982f6@citrix.com>
 <7399BA16-EAC9-4AB9-8A31-6D5F34BCB376@arm.com> <376519cb-b7fa-4332-91d8-96c3e8714c57@citrix.com>
In-Reply-To: <376519cb-b7fa-4332-91d8-96c3e8714c57@citrix.com>
From: Tamas K Lengyel <tamas@tklengyel.com>
Date: Fri, 20 Oct 2023 08:19:41 -0400
X-Gmail-Original-Message-ID: <CABfawh=pkCaEuizXe8YTVRtRwtoMvkz54w6nB5v=_EkHKvfuSA@mail.gmail.com>
Message-ID: <CABfawh=pkCaEuizXe8YTVRtRwtoMvkz54w6nB5v=_EkHKvfuSA@mail.gmail.com>
Subject: Re: [PATCH for-4.18] x86/mem_sharing: add missing m2p entry when
 mapping shared_info page
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: Henry Wang <Henry.Wang@arm.com>, 
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>, Jan Beulich <jbeulich@suse.com>, 
	George Dunlap <george.dunlap@citrix.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 Fri, Oct 20, 2023 at 6:57=E2=80=AFAM Andrew Cooper <andrew.cooper3@citri=
x.com> wrote:
>
> On 20/10/2023 2:14 am, Henry Wang wrote:
> > Hi all,
> >
> >> On Oct 20, 2023, at 07:48, Andrew Cooper <andrew.cooper3@citrix.com> w=
rote:
> >>
> >> On 18/10/2023 9:02 am, Tamas K Lengyel wrote:
> >>> When mapping in the shared_info page to a fork the m2p entry wasn't s=
et
> >>> resulting in the shared_info being reset even when the fork reset was=
 called
> >>> with only reset_state and not reset_memory. This results in an extra
> >>> unnecessary TLB flush.
> >>>
> >>> Fixes: 1a0000ac775 ("mem_sharing: map shared_info page to same gfn du=
ring fork")
> >>> Signed-off-by: Tamas K Lengyel <tamas@tklengyel.com>
> >>> ---
> >>> xen/arch/x86/mm/mem_sharing.c | 2 ++
> >>> 1 file changed, 2 insertions(+)
> >>>
> >>> diff --git a/xen/arch/x86/mm/mem_sharing.c b/xen/arch/x86/mm/mem_shar=
ing.c
> >>> index 94b6b782ef..142258f16a 100644
> >>> --- a/xen/arch/x86/mm/mem_sharing.c
> >>> +++ b/xen/arch/x86/mm/mem_sharing.c
> >>> @@ -1847,6 +1847,8 @@ static int copy_special_pages(struct domain *cd=
, struct domain *d)
> >>>                                 p2m_ram_rw, p2m->default_access, -1);
> >>>             if ( rc )
> >>>                 return rc;
> >>> +
> >>> +            set_gpfn_from_mfn(mfn_x(new_mfn), gfn_x(old_gfn));
> >>>         }
> >>>     }
> >>>
> >> Acked-by: Andrew Cooper <andrew.cooper3@citrix.com>
> >>
> >> CC Henry.  This needs a view about a release ack.
> >>
> >> Cons: it's been broken since Xen 4.14 and we're very deep into the 4.1=
8
> >> code freeze.
> >>
> >> Pros: it's a bug and would clearly qualify for backport, and is in a
> >> niche feature so isn't plausibly going to adversely affect other users=
.
> > Given the fact that it will be backported anyway, I had the same discus=
sion with Juergen
> > in his thread [1]. So if we can bear the risk of delaying merging this =
patch for a week,
> > would it be ok to wait for the release and backport this patch to the s=
table tree? Thanks!
> >
> > [1] https://lore.kernel.org/xen-devel/83E6DCF6-926C-43A6-94D2-EB3B2C444=
309@arm.com/
> >
> > Kind regards,
> > Henry
>
> That's fine.  I'll pull this into my next branch for when the 4.19 tree
> opens.

Thanks, I agree that backporting is perfectly fine for this one.

Tamas


From xen-devel-bounces@lists.xenproject.org Fri Oct 20 13:14:46 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 13:14:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619770.965380 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtpKd-00051t-BK; Fri, 20 Oct 2023 13:14:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619770.965380; Fri, 20 Oct 2023 13:14: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 1qtpKd-00051m-8a; Fri, 20 Oct 2023 13:14:27 +0000
Received: by outflank-mailman (input) for mailman id 619770;
 Fri, 20 Oct 2023 13:14: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=NyWa=GC=arm.com=Luca.Fancellu@srs-se1.protection.inumbo.net>)
 id 1qtpKb-00051g-O4
 for xen-devel@lists.xenproject.org; Fri, 20 Oct 2023 13:14:25 +0000
Received: from EUR02-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur02on2062f.outbound.protection.outlook.com
 [2a01:111:f400:fe16::62f])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 96a42b06-6f4a-11ee-98d5-6d05b1d4d9a1;
 Fri, 20 Oct 2023 15:14:24 +0200 (CEST)
Received: from AS9P251CA0002.EURP251.PROD.OUTLOOK.COM (2603:10a6:20b:50f::10)
 by PAXPR08MB7333.eurprd08.prod.outlook.com (2603:10a6:102:230::11)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.26; Fri, 20 Oct
 2023 13:14:13 +0000
Received: from AMS0EPF000001A8.eurprd05.prod.outlook.com
 (2603:10a6:20b:50f:cafe::68) by AS9P251CA0002.outlook.office365.com
 (2603:10a6:20b:50f::10) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.26 via Frontend
 Transport; Fri, 20 Oct 2023 13:14:13 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AMS0EPF000001A8.mail.protection.outlook.com (10.167.16.148) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6907.23 via Frontend Transport; Fri, 20 Oct 2023 13:14:12 +0000
Received: ("Tessian outbound d1b3e404ba03:v215");
 Fri, 20 Oct 2023 13:14:12 +0000
Received: from cb7aeb85453a.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 EE56D482-564E-472C-8048-66ADAB30721C.1; 
 Fri, 20 Oct 2023 13:13:31 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id cb7aeb85453a.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Fri, 20 Oct 2023 13:13:31 +0000
Received: from AM0PR08MB3745.eurprd08.prod.outlook.com (2603:10a6:208:ff::27)
 by DB9PR08MB6441.eurprd08.prod.outlook.com (2603:10a6:10:252::11)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.26; Fri, 20 Oct
 2023 13:13:27 +0000
Received: from AM0PR08MB3745.eurprd08.prod.outlook.com
 ([fe80::7d2f:80d6:9244:3266]) by AM0PR08MB3745.eurprd08.prod.outlook.com
 ([fe80::7d2f:80d6:9244:3266%7]) with mapi id 15.20.6907.021; Fri, 20 Oct 2023
 13:13: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: 96a42b06-6f4a-11ee-98d5-6d05b1d4d9a1
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=ERDxOXiZz7Oa2qagXONdttbfInGFqIn9hprZgcUwVak=;
 b=r3sApzFyZSg+Bv9pojbmBnDQC7KsEQzc0SIp1tLoqzi0w+8hQOppvkibdPNjDiZwwKPaLD50X8CK0RqWSPkuegxodeJLWeyIf5mrQpKQSORjN+sMdryUWgz/gKltvxCV1OJHGsfMGpnydl/etkiak9/VJ5jtK8YLAuOQvhGzfSs=
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: f6b136b397fd3479
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=BNObe2IMXUBDmlAQaPDqCoo8EdyUgpfwg+2L9nts5jvvVmVllsrFTfDcDaklreczLkX6Iztft2AntguC8WSb/5+gzGwjvLQwWq6UI/P6KKbXPvSEQ8hiXXyqoNLCofmU9ccdbthzkLvhkNEqiOXBlNdlnd3Z8gH8tvjHyORbiO/Zd5wO+MNqx9nvmkvtCs1p2wpf5xOlRfTEVGK/UR9/Ugm+Sr9cHI2HxWRqn6T6rTTMLc1Fyds5VmTzsMNye9SoWws92AmJLRAWxHXZGFgN+eo6h6CjgSnW/Lpk19WaNgXbF72OIQwl6G5Xi3bbXBQxBy3bCd16/flp6AJLIQOfzA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=ERDxOXiZz7Oa2qagXONdttbfInGFqIn9hprZgcUwVak=;
 b=Rntxf1eAfs/1wovpQbNBqiseULumFn19XydQSKTd8yWUm7jg1rD17Lh23nRO8nhiF3k1SDCbO4jexm7HgMLw7x2cywKbl9pOcsZyjRt4eCnUz4JSWatmjl9B1DPMOh2Aqh1Sr3GaH6hwEbfy3ABfI0YFkdO1CeXtBQkRSzRDtSffC1luKU4Bqe0OJ6BELrtb9LXWFMktlcsS00yhSsCu4LZfUCLgVhV9S1LvQJUIJxdMacem8pjoWXMAYUz6Btabsuypu3hetPK7v09Akia68dNf3vsIyX2YiMWvOvDcA53/wukIV8ZOJGLvvqSgy6f75OsYyFW2ezw2j2l0IZlRcA==
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=ERDxOXiZz7Oa2qagXONdttbfInGFqIn9hprZgcUwVak=;
 b=r3sApzFyZSg+Bv9pojbmBnDQC7KsEQzc0SIp1tLoqzi0w+8hQOppvkibdPNjDiZwwKPaLD50X8CK0RqWSPkuegxodeJLWeyIf5mrQpKQSORjN+sMdryUWgz/gKltvxCV1OJHGsfMGpnydl/etkiak9/VJ5jtK8YLAuOQvhGzfSs=
From: Luca Fancellu <Luca.Fancellu@arm.com>
To: Stefano Stabellini <sstabellini@kernel.org>
CC: Nicola Vetrini <nicola.vetrini@bugseng.com>, Jan Beulich
	<jbeulich@suse.com>, "michal.orzel@amd.com" <michal.orzel@amd.com>,
	"xenia.ragiadakou@amd.com" <xenia.ragiadakou@amd.com>,
	"ayan.kumar.halder@amd.com" <ayan.kumar.halder@amd.com>,
	"consulting@bugseng.com" <consulting@bugseng.com>,
	"andrew.cooper3@citrix.com" <andrew.cooper3@citrix.com>,
	"roger.pau@citrix.com" <roger.pau@citrix.com>, Simone Ballarin
	<simone.ballarin@bugseng.com>, Doug Goldstein <cardoe@cardoe.com>, George
 Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>, Wei Liu
	<wl@xen.org>, "xen-devel@lists.xenproject.org"
	<xen-devel@lists.xenproject.org>
Subject: Re: [XEN PATCH][for-next][for-4.19 v2 1/8] xen/include: add macro
 LOWEST_BIT
Thread-Topic: [XEN PATCH][for-next][for-4.19 v2 1/8] xen/include: add macro
 LOWEST_BIT
Thread-Index: AQHaAsacg3neJ95wsUGZXLbST/LDOrBSqNIA
Date: Fri, 20 Oct 2023 13:13:27 +0000
Message-ID: <93F0B739-367C-4DFA-9F53-0C2C58FCD756@arm.com>
References: <cover.1697123806.git.nicola.vetrini@bugseng.com>
 <bb0ba44f8a3944c22a1c7cf19196c7060e8adb4b.1697123806.git.nicola.vetrini@bugseng.com>
 <93408661-721b-c4b3-d504-e65142bbdaea@suse.com>
 <42ee4de54f6d9bd80fb50db3545cbaf4@bugseng.com>
 <08286993-6a83-b928-6398-e129397927a0@suse.com>
 <9002a10f872fccc5217faab2f20ad5ba@bugseng.com>
 <alpine.DEB.2.22.394.2310191253440.2099202@ubuntu-linux-20-04-desktop>
In-Reply-To:
 <alpine.DEB.2.22.394.2310191253440.2099202@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:
	AM0PR08MB3745:EE_|DB9PR08MB6441:EE_|AMS0EPF000001A8:EE_|PAXPR08MB7333:EE_
X-MS-Office365-Filtering-Correlation-Id: 4842f9ef-2039-4334-722a-08dbd16e7432
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:
 s7kCMHgMC2QWXbGR4w03g7EO2Odzi7BJN3I2gdvOlrmnwTK3Jc+mGfE5IB7pNhRYtgBqh0bSHFzI3vWaNnT/PWS/w3s8R++mDBk6MYl7BLQD/qGaenqJvq7rUsYZlb9oAX6Y1UyiyF/HoME8uK9l7xAImiQjhr/eWYwzOMT8rdiQlyZMZ+cZBmuiA7iOFgjbzrwLV23+TJzPMEdah9ZYhrw+IgDA73mAcBD9NPzPEi9S1zFJMdlvrjf6p96R99GIwR1pybzIq/t8xxIkJUoTOVJ3jKDR5F31YNhRBU61bNDUor8/LN7zqxibmte54MUYhGngdWKs8V20HzLA4MKREPUGb4mDXT63nxWoDlF3quD6dhUiQX8M2/DxSzmHydOl8cIf3RylIRsXZFU8mu88eyyGTzh4D1tvFcoQHGDz8N6a2rHkXL6jS0r54HxH+qLymkg8saybpdODDhy5LAOfZb7+7n+6CfTyAzQbrLcqhIh2cJW4YzeLr9s/if7/Rsi8ZcmzH3GJbaDZxQNwdGg/8Wvqf1CSIoBNf6GVO/NSK58PHUTGFXaRaYTHM8M+is3ths7V9aTekghtSnr3Uk8EHW7oxFqXbcgpfQIPrqcVMmPpNqcJgdxgy3RioGZ23y7RbJj6rsfQGmUQb7MBCy4spQ==
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM0PR08MB3745.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366004)(376002)(136003)(396003)(39860400002)(346002)(230922051799003)(64100799003)(186009)(1800799009)(451199024)(7416002)(8936002)(8676002)(4326008)(5660300002)(2906002)(86362001)(64756008)(33656002)(76116006)(122000001)(66946007)(38070700009)(66446008)(66476007)(91956017)(66556008)(6916009)(54906003)(316002)(41300700001)(38100700002)(36756003)(6486002)(478600001)(71200400001)(6512007)(6506007)(2616005)(26005)(53546011)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="us-ascii"
Content-ID: <170F6BE1852B7442B72B11DECDB15860@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR08MB6441
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:
 AMS0EPF000001A8.eurprd05.prod.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	84991359-43f9-4740-f3f6-08dbd16e58e3
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	PdMVRCMEGh6RvcqFMe4sQU3IS169qA3JzgZ75WmZ5jxedpn2Iu4PdnGtHv1Vqa4G8qoKsoLmENwltzf/0OZ8NX4mKS7wr/0TdkImRGxZlwDxwjIydoYnC4sAsN2FvQj662DevYhqi5T+77UTCqNRhbL5ZCKLP8l1x8dj6uNuZZHjC+IlDslM04hb8n1ifZwhDnowknEp7rntdp9K2EBmYYpXqw0hJwHjmkF9Za5JbVG/LUWWaw6ijUVR0YIxU2re0qo/TmQkT8RUFmK2d1xMbSMM3WhEXX4kEzhSTff1c5LjebEEFJgPj5bBY2Mkkdmn/ikl3Ebzal5kS4jgZ/pAuWILYWzbXYCjhoGC1S+aCSboZYeAOqDLfTqSP+Y6Yq3kpOmInfxD3Kw+tVRupPtfHmMUwHEWdwlGoB3B9f+uWZnt2Z5nQrjhnEsPpd0MMpnspnjdwSREIde9QfzGvlSfZlf2ALZyA6aj76VLKE/JTCbk7169EbJoO2o8v1lzY2eNp+mX6sY1S5N8wASZCaTMKbBeoHMZJuS8gTmBrsPqJH9Wjpp6wSdZlDY8GGYiQP9q4dUrXYizBHfWgeQ1Vw9JETNorHIVP+0lxW++rgf2xvrEhSdoV8MLtTRYBgcU4PkpLQZ10/DC1VNfVII5DXYWr5I0/PMLfI/MneVoiwGtks2i40ZcBSYK5Xwh/Jvy2yCm5Z6HQ6mu3IfBQBoldPPyUatryw0kL0fR9t4+t9RSifDZrJuSq3R4hano+h4PSQqH
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)(1800799009)(451199024)(186009)(64100799003)(82310400011)(46966006)(36840700001)(40470700004)(6512007)(6506007)(53546011)(2616005)(478600001)(6486002)(40480700001)(47076005)(336012)(26005)(2906002)(41300700001)(70586007)(70206006)(54906003)(316002)(4326008)(5660300002)(6862004)(8676002)(8936002)(40460700003)(36860700001)(36756003)(33656002)(82740400003)(86362001)(356005)(81166007);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Oct 2023 13:14:12.8659
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 4842f9ef-2039-4334-722a-08dbd16e7432
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:
	AMS0EPF000001A8.eurprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR08MB7333



> On 19 Oct 2023, at 20:58, Stefano Stabellini <sstabellini@kernel.org> wro=
te:
>=20
> +Luca
>=20
>>>>>> --- a/xen/include/xen/macros.h
>>>>>> +++ b/xen/include/xen/macros.h
>>>>>> @@ -8,8 +8,10 @@
>>>>>> #define DIV_ROUND(n, d) (((n) + (d) / 2) / (d))
>>>>>> #define DIV_ROUND_UP(n, d) (((n) + (d) - 1) / (d))
>>>>>>=20
>>>>>> -#define MASK_EXTR(v, m) (((v) & (m)) / ((m) & -(m)))
>>>>>> -#define MASK_INSR(v, m) (((v) * ((m) & -(m))) & (m))
>>>>>=20
>>>>> a SAF-<n>-safe comment here?
>>>>>=20
>>>>=20
>>>> One reason is that now that violations only belonging to tool
>>>> configurations
>>>> and similar are documented in docs/misra/deviations.rst (committed in
>>>> Stefano's
>>>> branch for-4.19 [1]).
>>>=20
>>> But tool configuration means every analysis tool needs configuring
>>> separately. That's why the comment tagging scheme was decided to be
>>> preferred, iirc.
>>>=20
>>>> Also, there were disagreements on the SAF naming
>>>> scheme, and
>>>> patches like those would not be accepted at the moment.
>>>=20
>>> Well, that needs resolving. The naming there shouldn't lead to patches
>>> being accepted that later may need redoing.
>>>=20
>>> Jan
>>=20
>> While this is true, in this case I'm not willing to deviate with a SAF, =
given
>> that
>> some ECLAIR-specific configuration would be needed anyways, given that I=
'm
>> deviating a macro definition, rather than the line where it's actually u=
sed
>> (and maybe other tools would need
>> that as well).
>=20
> Did I get it right that the problem with using SAF in this case is that
> it wouldn't be sufficient to add a SAF comment on top of the MACRO
> definition, but we would need a SAF comment on top of every MACRO
> invocation?
>=20
> If so, then not just for this MACRO but in general basically we have to
> use deviations.rst.
>=20
> Luca, do you know what would be the behavior for cppcheck and/or
> Coverity? I imagine it will be the same and they would also need a
> deviation at every MACRO invocation, not just the definition?

Seems that cppcheck reports at the macro definition, instead Coverity repor=
ts
at the macro invocation.





From xen-devel-bounces@lists.xenproject.org Fri Oct 20 13:16:12 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 13:16:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619772.965390 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtpMJ-0005jZ-Lj; Fri, 20 Oct 2023 13:16:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619772.965390; Fri, 20 Oct 2023 13: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 1qtpMJ-0005jS-J3; Fri, 20 Oct 2023 13:16:11 +0000
Received: by outflank-mailman (input) for mailman id 619772;
 Fri, 20 Oct 2023 13: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=8lwx=GC=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qtpMI-0005jM-EF
 for xen-devel@lists.xenproject.org; Fri, 20 Oct 2023 13:16:10 +0000
Received: from EUR03-DBA-obe.outbound.protection.outlook.com
 (mail-dbaeur03on20621.outbound.protection.outlook.com
 [2a01:111:f400:fe1a::621])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id d3eacebb-6f4a-11ee-9b0e-b553b5be7939;
 Fri, 20 Oct 2023 15:16:07 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PAXPR04MB8702.eurprd04.prod.outlook.com (2603:10a6:102:21d::21)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.8; Fri, 20 Oct
 2023 13:16:04 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%7]) with mapi id 15.20.6907.022; Fri, 20 Oct 2023
 13:16: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: d3eacebb-6f4a-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=JsRxev9oE44W1FUxaJUsACa3dChIXJ2bIPtcRBNI51+E7Slgd1/Eh3EucDoPKKiChGwK3FiGqgttAizRZxq3y7LJOTNn9R3yVT1/hQFRr652qIxhpQCGmf2JQUB0/D0Ybt33Tx1mgPz9xWLxjKb8GDbEs5SkHjV9Q9yyDZT7VHzKh2IQ3/Yoq1YHfTKwdImJ/TMn2eJjANLpnGi2yd5zZKlXW8liAbElj4VW4+u/KGTzJhnGTS5IBylXZyYgvCRamXJ85JYH4WWbAhz8EiktqGrL4hK0aNXDKUf8wFMsCrfp0KvPkw65B+ZG7SbQgKFUutxi0in185me9NhaaTQyGQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=AOugBdFs7lqZ4RXxUK9odGA+X6jNXX+3XiGo1y1OGtc=;
 b=PyrZ+Of9+bk20TgQmZhcTv0KPZjLORY32YDzOoM82PCopeAqy6QecCXX/KyncPS/vyp9XKxc5dl3wtZgtDLhHZjA+SKH45nh3FTdSnDwN1TPjo9NeHR/iTmu0LTbeL3fABe6tZG8vj/uzNgiu7J3jfQVNotorRfVcm1wZyZigjHi9fRM3TctPQIfrY6C/XdaBQPu8QkC5WfPTOBXM6DN7BEO0epk56DUcEswncnjpLT2WQ3L4E5vGTjGvdYjer6AL19Vcu++CR7Cu5aTLujCWPtACyVtLWBBwveH+H3MGEXe2logoRRnP9xu8KD4vCa9aGVcOPsUTNNuMWTHcdf/SQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=AOugBdFs7lqZ4RXxUK9odGA+X6jNXX+3XiGo1y1OGtc=;
 b=HfIOu5eXQOoY5sdzrhkMdDCYrdoqFdM912CxvU+rl7BlIQ0SkgCDekp0Sc29a//T5THtX4AdhJEL1/zTo+10DoQJ13khEtsMNmW7qLOaoIIbZMw9HJIUYzCV3TXAVrr8vTwF0Vc410qmkveqPNd2l9SYhWLg+jvLvQeBgNDPoOkjxF3aD/hN/Tq4zrfnpmRZx4MuOp4fPdhm8X4HGMDgId6pxQ987/BB+z4oYNSO9PGNiNRURWkOjUjN+dIIX9rDR5phZ1sDN+48at46A6FwVXyVIlXVWEkCrC+2ANVierrShkgADLY4LiyCSV+rAZ2uZcMuEVxDU3BGg0CNlHb5Gw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <985af766-adf6-9e9e-43ad-250fd917a5b8@suse.com>
Date: Fri, 20 Oct 2023 15:16: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 for-4.18?] x86: support data operand independent timing
 mode
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>,
 Demi Marie Obenour <demi@invisiblethingslab.com>,
 Henry Wang <Henry.Wang@arm.com>
References: <34aefb5f-252d-2992-c561-a73941429c4e@suse.com>
 <ZTJcERG9yD8ejHFR@macbook>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <ZTJcERG9yD8ejHFR@macbook>
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_|PAXPR04MB8702:EE_
X-MS-Office365-Filtering-Correlation-Id: 6a5fdc56-40dc-4d1b-35e8-08dbd16eb6aa
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	f0/dLS+aiYzU3eZWGTk2NzAjtRz82xVw1pqNYcDIWF8toeaH5/J5K6vZ6CITN8kMta8R2hDtea2cXGACFZtoqHBSsjQgGaUAqpXwMRWATamfJF5uzUvJD/3FXynbP+QYeh5WKqvRrZ0ESogloMx6OGWiox2QoSula/U8JcKTS+eMeTvyG7nXKUoIfxwHh01hnJDWPtBw5RM758kdjrrT3w0sZWa0hfCkiO2nAZjQ/2a6bz6BmFuWciD4rGPQ0Q/NGNbg/T6OR5U5jWIjbFvA8LnNHsRDeYRDU4js/6OwYJU+6zAlV532+y0KZGN0ID24PpXM5YwPQeA6kSR2zT6L+eRBlKmt4/wVFQwcXzHLv5D+4uh9kxDXl1RLnYddTPbn74n3bSMAMZC+UimHCwYvBwsE+/uwieB0+wGd0ZM/i6RCKAe4WzAg4e4zvZhjTyjdiVI+jqMuxUX27o9+sOBBOxlUd6bBDYboWlNIHgGFTv+hiY6EbT5BWoakrsL8NHaiiyYY+LgPsyqumtVOgVQbk44fYRqrwE8WfsYvOy+g/JD296cdnDPmEi3kz56+l0VuaIw5S0lCrr0FwbydrFzWsfYaT/GrK8pqrXwPhMzUdRl39rLIs0ILN1b8p+9l/O3l6RN5FypKjblHHEQQvaNuEQ==
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)(376002)(346002)(230922051799003)(64100799003)(451199024)(1800799009)(186009)(478600001)(66476007)(66556008)(54906003)(6916009)(8936002)(8676002)(316002)(6486002)(966005)(66946007)(41300700001)(36756003)(86362001)(31696002)(6506007)(38100700002)(6512007)(5660300002)(4326008)(2616005)(53546011)(2906002)(83380400001)(26005)(31686004)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?QlVsY0RkQnRoVGNKR2FLcUZ5ZU9BeURVbjBkMndvUUNUMlB3aWtIS2xGMVF3?=
 =?utf-8?B?ZDJUUExwMjIwWGpTRi9sWlpHQWZJT0dqcFloM3ZoNXhXQnB0b3FYSDRCQXg1?=
 =?utf-8?B?STZmQkJxc0t4VW9Bc24wT0hCcVpmekZOYjlRcFVhbS9uYnVnWS9LZmlZTEJZ?=
 =?utf-8?B?eE1ZZmVJMXdOQStwNllvSEY3VlJBVUJuMFlyN0xIcVBrWWVNYUV6dWNGS3dE?=
 =?utf-8?B?eW1lVy9vZ3dvSnN5ZGdBK25Wei9vVkR1VkZjdzlxK04rd0ZQbzlDd24wNTFF?=
 =?utf-8?B?V2dQUENKSXh5bHZJZWU5VWtsTHN6ZjEwQVh5cFVxam1LT1lQNmQwaE9qMjFl?=
 =?utf-8?B?VXVLRFVQeDBCbkR2NTl1RmptR1MrM3ArOHd1bDhORG80Vm1zcjBCVmduaVd5?=
 =?utf-8?B?WWRGVlNBSU9NaURWN0FuRUxkSk5VUHVuLy9LVEJpMWtXM2hKOEdyTHYwOTVG?=
 =?utf-8?B?STRBT1RVYm1wVGFmRnRyNWZ3ZzJpZjM0YU5zRU1YUE8reXF6NDR0c3l6Q1c1?=
 =?utf-8?B?bmFBTnkza01RdUlEMEZIV2EvYjlGOWtmMTEwV3Q3MUp6dFJSQVNwU3M1WWpO?=
 =?utf-8?B?M2lPZkdMRlNOR0V1OGp4aTlmejBXdEd5cVV0cGpFS0NJUGNmRm1VTXFKMm9v?=
 =?utf-8?B?WWJwYm1LeExySTRZamlKSWN4aHFUK2N5Zk0rR3VwK0NEM21xM2sreEI0YmZa?=
 =?utf-8?B?V1BES2hITUZrQ3JXdXhBVkQwNDJwckRBSzV1aVlvaXErbUV3SWxNbmpWZEQ2?=
 =?utf-8?B?eVhVYUhWZ0RQU3VxNUhqc3ZSRXBmbmp1cmhmME5LY3gxY2NhMVhqU05TK3FE?=
 =?utf-8?B?WDhETGNXWHFqUDlaQ1UzUUtxZ1h5RW9lQ3FtUnVHb250K3Q4UERaU3p6YWJt?=
 =?utf-8?B?RnUzeGpqUENacitGbUtjeU9XZUppQ3FVZzlRMXJtUUcvSG5rOUpIdTVDYndE?=
 =?utf-8?B?RXVZRXVMM3o1bFVtQWgwdy91eTEzYlhuU1dFbXRDOCsvd3BTQVl4ZEkxb1JL?=
 =?utf-8?B?UkpoaEhyZGFuY3Ntdk83MTRPU1UzK2RGRnVSREUvWnMvQ3k4TWJyUldkMWtD?=
 =?utf-8?B?bnJONEdJM29iVnhPOENrUDM3TnpiOXBka0JURzNWbSswNUNvTGdka0VsbG9D?=
 =?utf-8?B?NGs4WnoxSmZaK2QzeDRwcmprY016NWtjeWNSNFpHQ2x1b2VFZjJkeXExN0lm?=
 =?utf-8?B?TzhqOGRpQlBHY3hXTGpiOXVSeXc1Ynk2a05wT3VxMFVBS0x0L2hScU1TL2lZ?=
 =?utf-8?B?OGZraUIzcG9UdC9COVpxR3BVSk14WFhWOXcyNlBuaEtoTm9ySWRQaExZYTR4?=
 =?utf-8?B?dXVVY3BoNnVDMlJIMk52NWszNmovY3VDQmFQWTlpUnk1VWtOUWkxa21SZVRB?=
 =?utf-8?B?eGlpRFhCK1hQbVV3K0hXeklUVUp0K1VLVlJYMGgxZFRIaFJmSUhkS2h0YmVQ?=
 =?utf-8?B?S3ZTY2ZjUDh2bVFLUFNqYzlsU2c3b09HZEh5YXJVQ2dqWDBocm5RbjVBbHZz?=
 =?utf-8?B?MFFIYnVQc3dzRFJzYVYyWWpaazVEc1ZGcmk2Ujhjci9QMWVUaGMySlBkM3hx?=
 =?utf-8?B?VFJpRDhoWGZLd0RvYmx5dDgzZnNTYUZ1R0NBckg4cXR5bmtUL0tZclJpUzJ6?=
 =?utf-8?B?S2RmemNCMDN5bzVLNGJoRWxPSzkweWxmT28vbWUvcWVzV3VnUDZ5ZjY2N2FO?=
 =?utf-8?B?ZW0rc01hOXR4MHM3eXpldmtWOXZjMTArQjB4TjFMOGtzZTd6UEpjQ1Z3ejdH?=
 =?utf-8?B?RWV2VGRLWUM3Wkt5dmhuM0NoOG1BdnQ1dUYxdzBld3FVYmFsWllaYjYvZmxh?=
 =?utf-8?B?U25LVGpaSnhnekVzbnpJWjl0ekVhdWgyYmQ4VklsSW4wKzlrRDhqQ2ZPRklj?=
 =?utf-8?B?ajE1Rmw4VDFER3pKTE5IRU5HLzFOL0FoeVZUN1FjcEpERHNObkF2SFRROWlt?=
 =?utf-8?B?eElpbGdCell6d1NiemJadHJDSUNYZzJVL1hKa1hqUlRhMCtFcjhjN3k0RXpE?=
 =?utf-8?B?OVBQeFNQY1ZNZTNGSWxpSHV0UGl5VFJBeEhGWFJuekFCVlN1L0xZWHVUVmtD?=
 =?utf-8?B?RFp0UXBocStOTVFPblpEOWE0WS9KTjlVWTAzQU1XZXd5RlArYk1YSlRvYnlR?=
 =?utf-8?Q?MCqwwTv5c1Mjz2j8Wj+q1gN35?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 6a5fdc56-40dc-4d1b-35e8-08dbd16eb6aa
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Oct 2023 13:16:04.5467
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: g5HOgFnBWpT9qV+jhGYrs1IFbIqLgklv8l1bP2EjX1lQ7yTF6qAyyBST4g5m7p8rVlTqE5sfgE1ZKPp7zzWayg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB8702

On 20.10.2023 12:53, Roger Pau Monné wrote:
> On Fri, Oct 20, 2023 at 07:53:51AM +0200, 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.
> 
> Couldn't we just expose DOITM in MSR_ARCH_CAPS (by setting the A flag
> in the feature enumeration) and handle accesses to
> MSR_UARCH_MISC_CTRL?
> 
> The complications would be with the leveling of the feature across a
> pool, as AFAICT the bit needs to be OR'ed rather than AND'ed across
> hosts.
> 
> It would also then need some special handling in order to allow
> reporting DOITM on hardware that doesn't have the feature (and writes
> to MSR_UARCH_MISC_CTRL won't be forwarded to hardware in that case).
> 
> From an implementation PoV we might want to treat this as SSBD, and
> allow Xen to run with the guest selection.
> 
> Anyway, likely much more than what you want to do

Right, I understand that's also the reason why a yet more minimalistic
variant exists in XenServe's patch queue.

>> Since Arm64 supposedly also has such a control, put command line option
>> and Kconfig control in common files.

This, implicitly, ...

>> [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>
> 
> Acked-by: Roger Pau Monné <roger.pau@citrix.com>
> 
> The only concern I have is with the Kconfig and command line options
> being named DIT instead of DOIT, which would be what I would search
> for given the documentation from Intel.  Maybe that's for unification
> with Arm?

... relates to this: Supposedly DIT is the name used there.

Thanks for the ack.

>> @@ -187,6 +190,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.
> 
> I would word the last sentence as `Note the build time value can be
> changed at runtime using the "dit" command line option.`

Oh, yes, that's quite a bit better.

Jan


From xen-devel-bounces@lists.xenproject.org Fri Oct 20 13:24:41 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 13:24:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619776.965401 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtpUQ-0007J1-Fp; Fri, 20 Oct 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 619776.965401; Fri, 20 Oct 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 1qtpUQ-0007Iu-C0; Fri, 20 Oct 2023 13:24:34 +0000
Received: by outflank-mailman (input) for mailman id 619776;
 Fri, 20 Oct 2023 13: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=8lwx=GC=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qtpUP-0007Il-58
 for xen-devel@lists.xenproject.org; Fri, 20 Oct 2023 13:24:33 +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 00fb78d4-6f4c-11ee-98d5-6d05b1d4d9a1;
 Fri, 20 Oct 2023 15:24:32 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PAWPR04MB9807.eurprd04.prod.outlook.com (2603:10a6:102:384::22)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.36; Fri, 20 Oct
 2023 13:24:30 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%7]) with mapi id 15.20.6907.022; Fri, 20 Oct 2023
 13:24: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: 00fb78d4-6f4c-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=TLWlruq25vAwFoqnjxRwAq19vJwbMV2+N7a5syXm3DpeyJds3sOmAwTwJUoWAMrcLKlPpAcWBwSWrH5kiNUdNPSsTM/UfFkp0C12W0YfEjMHiLsBP4JtRAFxu98iYKVOePFaPsjYxKyQF5UqV2RUJswl+vAaGZH7SndwTfCMz/xzLe+E1KayeyO8vjsk4gOeTh1VFBAa/tnFP/0CAr8rjO13k4O+pvE/ZFCozkILNAWzBVska1nZ2kPC0EjbCXRJJWVzlz2hLGRmDXCcX+jK4hZp9GkOzEFxPGdZ92yBhgykFf9eWwHbWe/DDWpoUYB9dG+V4Ss2IVEFWtarjVimvA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=dv39S4Ni7hQ8MPT928Tci0t/QZzxekh5cXID8P5T/uU=;
 b=JrOpsZgnhtfFcPPPSd/GcicxGny1pIij6sFT3erSqiNmu2rt6MJvhfGE2ojXxdO0aMDaYET1Q7uPLoXMV7U+YJeBWmP+ddm9SslRb9v+hGdsM1jdSIgvwYP8ow+czH8irbFAjGMWBTj/b926YsydiyLMyY4h4sG1omsVZIku9KX4G15CDh43friw22h5TX4dJihiB71l8Ra7rCDI7Tj8o8aSTEkqmwNPBi8ucpTT4GzRMq81RMDFqen9FaucD0BKnSf0nVcEkXYi8OIYyHnVKz6GBwovrT6kMnmYQUREqfb3fEbAvgSC0Xmo/xgZBdVItIrTvfnya3ClE4L3LnRxTg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=dv39S4Ni7hQ8MPT928Tci0t/QZzxekh5cXID8P5T/uU=;
 b=g3qSaTlvB3Z253H3lzI1c8IK1tbAVFEv1KZCy2KjJUuRfDB7bQalZtlZvoW7sZJgONKiHibMQB3UIymOwMtiv66iPlaUmnuqn4T4cjWvReEU8ZHnUOvex8pYQ53bCDDfJ8nCKGXfr5xtVXaCV+xqvh1+zAOllkVtT16ioO9Df5vmzp6wwnM37hmUhHkcJRopiZoAau8T5s6uONuxYgal2P22bQwXHKWXU1kyOPAMi8ZFeuX/WcSzMEPMz70lH5jXXGbyZtg/KYgVIMdV7gloTkewsH9aaS0qNXX6C4Y4HXMpcZyENeJnvB8KscDA/Xhbb95wNVhLgt5K5UuTZX5Nag==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <d83c024b-05a9-5298-9e43-e693675c2da5@suse.com>
Date: Fri, 20 Oct 2023 15:24:27 +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][for-4.19 v2] xen: Add SAF deviations for MISRA C:2012
 Rule 7.1
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.cooper3@citrix.com, roger.pau@citrix.com,
 Simone Ballarin <simone.ballarin@bugseng.com>,
 Doug Goldstein <cardoe@cardoe.com>, George Dunlap
 <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Wei Liu <wl@xen.org>, xen-devel@lists.xenproject.org
References: <a9c52c943380f2c35f0a6ccab8215c03e87c99dc.1697712857.git.nicola.vetrini@bugseng.com>
 <de2b666e-ca48-58d2-73eb-5adc797f818e@suse.com>
 <d879b8e4689e51131f081edcb3b2abe6@bugseng.com>
 <dd58e1cb-8f17-986d-f4f9-f39e998e05a0@suse.com>
 <5b1cd4fba12664f2ef49bcc2eb198e31@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <5b1cd4fba12664f2ef49bcc2eb198e31@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0260.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:b5::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_|PAWPR04MB9807:EE_
X-MS-Office365-Filtering-Correlation-Id: 6988c762-ed82-4531-eda1-08dbd16fe3fd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	7hy3n2UcwLaQr4ZsHxjx0E2dG4+gsJg0rrUb7MCckT+oJLQDhB1jejy0DN1qT6K5OkjVSIqHGxTCA512M6ukm0ur4SKRm5OUcXG7OXzg27qMC2Zf2/TbBupo97ubEixVefG3W95nmfXMhZ5mcrg+eJA5Uj283B991iymwvM7/7J7Es38VAGuiOz+f5TwlZjSaH6Q2i1TsWCihanc3ChocHlUppsWDr9rejyMna81ZIzVK5xkZ8be/njvTzbss+/B+9ML3sjDKBaElk/gYkaHdH/+ZBw/bZfGshSjY2Gu12zHZPwT/NnmzN45HDjXChjGmu4IRQ1dgv0/LvkaZwkXG9P7vzi5YRtZQ13P9W59vWQOcuQGsahkMSpnREV7UtjQd1SD0pG7myOE+75T69Wyeae0v358RUmqayVWPUcqTKn4T24ChReylP0eGuzLEFTR/Des795IrLD4qeYI+5l73imKU42DRAtK0rsqaNMFWGE9Ed5iA8MbA1aBniZKu1LXWZlsBiXIG8tuFYnJDtMq7xryCi/gICWl06cnnSRx4S7BBnDRVl4LEAyVlaTktIgpLTv9Q59+lORJaTq+uquO7PN8OdtyZvDR/Is8qOulC5v4f7Dk4irrLZEFDviYhwjlC7fLI5micUgBB0mVzO9h5w==
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)(396003)(39860400002)(230922051799003)(1800799009)(64100799003)(186009)(451199024)(31686004)(6512007)(36756003)(86362001)(66946007)(66476007)(2616005)(6916009)(6666004)(316002)(38100700002)(31696002)(66556008)(478600001)(53546011)(83380400001)(26005)(6506007)(8936002)(6486002)(8676002)(54906003)(5660300002)(41300700001)(7416002)(2906002)(4326008)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?RjhYMHcxbnlVYmdTdFozRUNjOVB3OFlsWnpvZW9NOHBNWURIczVMYmxGTjNt?=
 =?utf-8?B?TjFRNU95T3U2MUJtL3hpSC9GZUdiRnNvc0VpRFE4cm83SmNCejBzTnN3TUZY?=
 =?utf-8?B?NjFDZHB0QStZaVFvY2tlV09LaHYzUXRtVkd0dVNNb3ArK3N1RFJKRkVqS2hJ?=
 =?utf-8?B?bGxJdnl1MExkZmlxbUxsWHVtdHVhUEdKQi8yc2JCeDdCZmI0NHBKMjhNYUQr?=
 =?utf-8?B?ZldldDZFK012VDBIL2RKYUltdlljK3R5bm80V0hrT1o3L3VxQithc1VwZUNW?=
 =?utf-8?B?Vi9vWTQvVXVZUGRyN3JGS3NpTE9ZODNWMzE0SmdvYnYyM1U2cDZPeUViUmkw?=
 =?utf-8?B?ckRvVTZUQXZ5bWNFd01BYXJjVXdVcEwwMVdDT3oraHM1WlE1OXBpcWNDZDFL?=
 =?utf-8?B?U01qbUgrNGFpRnk1U0RlTWtyT2RPaFpzcHI2a1ZoakVwZlNqeVZyMWZUYUVM?=
 =?utf-8?B?YTkxZ3Z5eWhrRXJlOFNGNE5wbnV3bE5USGNTbHNrMjQ3RkVDdUZMUUtneHRZ?=
 =?utf-8?B?SmJRdlJCVlhNSXRONHFLK1VjYllyYVdVWDZ5WGhlZTljU2Y0V2lQcFRJaGZ3?=
 =?utf-8?B?SVB2UWpnZldwZU1VOGJBcGRrK2s5MkJONjcwYWN0Mm5PcTZOQlQraTR4ODhL?=
 =?utf-8?B?amRhUnplZUw0M0loaFQzWU0waVIxTHIwbVVxRXQybUZvQXBrcVFTWmZVQXRk?=
 =?utf-8?B?Mk1WRVh5bnpKMG9YdWs4bzFXMXhCbFhQUVBZSnA0QUI2V1Z2S0NIVm85Vmp6?=
 =?utf-8?B?bXh2YjYwYnJRdkwzTUdEa2JiL2dNNjROQzVJeVFGK0VwLzE2VzhxNUxPb3p3?=
 =?utf-8?B?dWc5YVBlcC9ETFpSd3pOODd1UitjWlJYaGtDYzlOanZjQmgyMlZ4am0rK2Rl?=
 =?utf-8?B?NzlzVk5rTXhsL2FQVVh3cG5aMC91aWdIdStVVWFnYnRZdGJ5RnQ5bFNyaU9O?=
 =?utf-8?B?ekxSdWtjMHJPOXg0Z1lnSkpjZ2k5ZUxhYkVaZUkycElyajEzMzVOeUpZWFdR?=
 =?utf-8?B?dlN6UjJiR0YyL1dwMFlZWXFLOE5DcTloRFJxcUtlQlBUNzA2QkxZVEpqa2dE?=
 =?utf-8?B?SEc2RGFYOXdhVHNZYzE1VjhITmxmU0E5ZGoxSkhjUDNLbHd5VXZmSG93Wngz?=
 =?utf-8?B?UkFtZ2grUWNweXpjYjh4OVZxdVRINm5ta2k3WkRxOERNbDhqVGVobDlVZENZ?=
 =?utf-8?B?UUFJN3R0K1FpNkI5VGx5ZEp0cHlTTTNGdDBUYmVnV0QwdWtYTHlIR2txWXRu?=
 =?utf-8?B?cUhDOGF6V2hqTFVxaFlhTzZFTkRPTEdZckpYbTdiTWdkcDY1dVA4WVdGc2VU?=
 =?utf-8?B?TDF0SldVblB6SkMrU3BIa2I4Y3IvRk9udjAyUGJVZmU3aDliYitXc25sYnha?=
 =?utf-8?B?NGtyQ2NqM1U4NllZeDlld1ZFQTlPbkJZcEhNMGc5OWROZzVDOVA3RmtWOG1x?=
 =?utf-8?B?MUJJdTdmZWMvSysyeFJhdEc0V2pwanNjVmJyUFF6T0pTSFk3aEhCVnZycHZ1?=
 =?utf-8?B?LzFaS1dzakFiZW9rMFFyVkFYdm83a1hVWDIyQ2gyRWUrOHBHa0RuSERxb2NM?=
 =?utf-8?B?Wjg3TllDZWpiVWt0UTFLN1dORW5jcTFtdGg3b29XMGVxT2grL1h6OUs4TjZE?=
 =?utf-8?B?cEVhVlRHTzJhVVA3RkU1WEtQUU14QWh5YS9yMVR3UlFOb21XbDlORHhQVCsr?=
 =?utf-8?B?T0lqZDZmbHZobmdpLy9CSFVEQm84eVBISVN4NUo5TXd6Y2ppcit1ZFlzYmps?=
 =?utf-8?B?Z1JyY3BxTmhPM0NkalhXL3RVVzRLSlhSS3BrTHNqMTlGTDJlcFhtSnVINDU2?=
 =?utf-8?B?UDhZMENjWW5wLzVNMnhzTVZZQ2Uwak52TnhJbnFic3AveXZuR203V1M0VzJQ?=
 =?utf-8?B?VUtsbEJvMHlTdVAzc1RlMGQrZW4ycElyT2RmZ00zTEhvNGhwbW96S0oxV0l0?=
 =?utf-8?B?T2lUTk0rU3RXUXhxOFFSbThkTEJrd1p4b0s5NGdzYnJXZExUa1lXaXpaRHFj?=
 =?utf-8?B?TlMrWUt2YnZEQm9aRW9pSVVwOW14ZlhQaE8yVUgxQ0RNaUZFUDBZN1c2TGQr?=
 =?utf-8?B?VDA5MHhoNGkzVFZNWm9HNlJYbUlYYkh5QnZrRFpyZGtaSmZqRVJsUFFUSDJ6?=
 =?utf-8?Q?Ftqs50O+0TvRXuIC/KlX1iBTq?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 6988c762-ed82-4531-eda1-08dbd16fe3fd
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Oct 2023 13:24:30.1282
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 3qUz0S3JurRhUhVV3eGea6p4GWqz+knZfPHPnklNfTu1RRp1VbhQwMDJJAosnKf/TGafF9OJK0jk7cHySvd1Dw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAWPR04MB9807

On 20.10.2023 12:33, Nicola Vetrini wrote:
> On 20/10/2023 08:38, Jan Beulich wrote:
>> On 19.10.2023 18:34, Nicola Vetrini wrote:
>>> On 19/10/2023 17:57, Jan Beulich wrote:
>>>> On 19.10.2023 13:04, Nicola Vetrini wrote:
>>>>> --- a/automation/eclair_analysis/ECLAIR/deviations.ecl
>>>>> +++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
>>>>> @@ -85,10 +85,10 @@ conform to the directive."
>>>>>  # Series 7.
>>>>>  #
>>>>>
>>>>> --doc_begin="Usage of the following constants is safe, since they 
>>>>> are
>>>>> given as-is
>>>>> -in the inflate algorithm specification and there is therefore no 
>>>>> risk
>>>>> of them
>>>>> -being interpreted as decimal constants."
>>>>> --config=MC3R1.R7.1,literals={safe,
>>>>> "^0(007|37|070|213|236|300|321|330|331|332|333|334|335|337|371)$"}
>>>>> +-doc_begin="Octal constants used as arguments to macro INSTR_ENC or
>>>>> MASK_EXTR
>>>>> +can be used, because they appear as is in specifications, manuals,
>>>>> and
>>>>> +algorithm descriptions."
>>>>> +-config=MC3R1.R7.1,reports+={safe,
>>>>> "any_area(any_loc(any_exp(macro(^(INSTR_ENC|MASK_EXTR)$))))"}
>>>>
>>>> INSTR_ENC() is a local macro in x86'es AMD SVM code. A macro of the
>>>> same
>>>> name could imo be introduced without issues in, say, Arm code. The
>>>> above
>>>> would then needlessly suppress findings there, aiui.
>>>>
>>>> MASK_EXTR() otoh is a global macro which ise used for various 
>>>> purposes.
>>>> Excluding checking there is imo going too far, too.
>>>
>>> I should have thought about it; I can simply enforce the deviation to
>>> additionally match
>>> only a specific file for each of the macros.
>>
>> That'll work for INSTR_ENC(), but not for MASK_EXTR().
>>
> 
> Why? What I'm deviating is reports due to octal constants used in 
> expressions
> that contain MASK_EXTR in their expansion if and only if these are 
> located in the
> file svm.h.
> No extra octal constant will match all these constraints.

New MASK_EXTR() uses can appear at any time, without necessarily
matching the justification.

Jan


From xen-devel-bounces@lists.xenproject.org Fri Oct 20 13:25:41 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 13:25:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619779.965412 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtpVT-0007wQ-Tf; Fri, 20 Oct 2023 13:25:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619779.965412; Fri, 20 Oct 2023 13: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 1qtpVT-0007wJ-Ot; Fri, 20 Oct 2023 13:25:39 +0000
Received: by outflank-mailman (input) for mailman id 619779;
 Fri, 20 Oct 2023 13: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=SkgR=GC=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qtpVS-0007w7-Fl
 for xen-devel@lists.xenproject.org; Fri, 20 Oct 2023 13:25:38 +0000
Received: from mail-ej1-x629.google.com (mail-ej1-x629.google.com
 [2a00:1450:4864:20::629])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 27eff2f9-6f4c-11ee-98d5-6d05b1d4d9a1;
 Fri, 20 Oct 2023 15:25:37 +0200 (CEST)
Received: by mail-ej1-x629.google.com with SMTP id
 a640c23a62f3a-9bf0ac97fdeso125985166b.2
 for <xen-devel@lists.xenproject.org>; Fri, 20 Oct 2023 06:25: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
 jy20-20020a170907763400b009b97d9ae329sm1499790ejc.198.2023.10.20.06.25.36
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Fri, 20 Oct 2023 06:25: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: 27eff2f9-6f4c-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1697808337; x=1698413137; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:autocrypt:content-language
         :references:cc:to:subject:from:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=nS7ogMf1SpQhWTUG/kk2cgM6HWZUoEjfOERHuROFe/k=;
        b=BASMPhS7SlDNOZp4fRmNnR9MVX2XtHlTZyfTykP/tHmDHgxg/DycnJ5l69yVVKz5X2
         IahLwX8aamBYcOgohqchoNaLCXDk5xypFdSxvmp03sELcu+rGGMl/JQCiUjCT7DWYRBV
         pllCo/1InIoLbSbjKVBnlh897XLpzkR26KSpg=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697808337; x=1698413137;
        h=content-transfer-encoding:in-reply-to:autocrypt: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=nS7ogMf1SpQhWTUG/kk2cgM6HWZUoEjfOERHuROFe/k=;
        b=Ip9scomrOwdNN1LVUuz3mHTgfgiC1YBFloVu5Y3Th6Y2FJspPRVZ4TbtV5k2C1lw4O
         d89JPQCcI/cFK43dCLPm1+2Wejj7E8Zq0W5WKsCgcAylPv6KNBQfG6XjXJ7DptaWkbaI
         y0+BboA7QrNsdaL3DdwBodzvehtlCSW12g/svO7KskhrQe6r8Yypo8QWM7nv3tzA/3Yz
         4wq99VfPNlFpck0w6ii4T9zMBUmWKyadTw+WGn6W0OGXtca3rSdRe0Tix/pjj7FaB/Wa
         SmAfyonPaoauIYhupnoOPrrcB8nPl9eOOt9+kVuaTRIpJOQ8RAqpJkDwNV/zyO9Mx6kq
         6N3A==
X-Gm-Message-State: AOJu0YzFLFpPEDXBWkg6FOM03vaOYU+eHb6JR26cb9Z7rBVk0wwXIKVn
	lS949ngDJy7EFkIDorpF4H40Dg==
X-Google-Smtp-Source: AGHT+IHf/Wx2RFJpJQ1ydxMcSxnGR0jImrfdp0F4EvxC2hg0qYQ3qrysrU40HCtZD6T/8hmCpYRidw==
X-Received: by 2002:a17:907:6e91:b0:9be:fc31:8cd3 with SMTP id sh17-20020a1709076e9100b009befc318cd3mr1582947ejc.17.1697808336895;
        Fri, 20 Oct 2023 06:25:36 -0700 (PDT)
Message-ID: <f5603457-8bee-40b9-9ea2-d604abe4ee53@citrix.com>
Date: Fri, 20 Oct 2023 14:25:35 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH] ns16550c: avoid crash in ns16550_endboot in PV shim mode
To: David Woodhouse <dwmw2@infradead.org>, 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>, Wei Liu <wl@xen.org>
References: <de07d56188f13e222ddaa1b963c20f8d7d61350e.camel@infradead.org>
 <14914ea1-2d2b-46e2-9933-2b7414acb7ba@citrix.com>
 <f1ea054608f4ae38293f89bcd84c6937538f245b.camel@infradead.org>
Content-Language: en-GB
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: <f1ea054608f4ae38293f89bcd84c6937538f245b.camel@infradead.org>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 20/10/2023 11:29 am, David Woodhouse wrote:
> On Fri, 2023-10-20 at 11:14 +0100, Andrew Cooper wrote:
>> On 19/10/2023 5:21 pm, David Woodhouse wrote:
>>> From: David Woodhouse <dwmw@amazon.co.uk>
>>>
>>> In shim mode there is no hardware_domain. Dereferencing the pointer
>>> doesn't end well.
>>>
>>> Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
>>> ---
>>> This is about as far as I got in my abortive attempt to use the PV shim
>>> without an actual PV console being provided by the HVM hosting
>>> environment. It still doesn't pass the guest's console through to
>>> serial; that only seems to shim to an actual PV console.
>> There's no such thing as a Xen VM without a PV console.
> Huh? There are literally millions of them.

I'm very prepared to believe there are millions which don't overtly
malfunction when you don't fill in the HVM Params. 

Which is very different from saying "there's a way in the Xen guest ABI
to express 'you don't have a PV console' ".

~Andrew


From xen-devel-bounces@lists.xenproject.org Fri Oct 20 13:28:11 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 13:28:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619782.965421 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtpXu-0000lN-8U; Fri, 20 Oct 2023 13:28:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619782.965421; Fri, 20 Oct 2023 13: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 1qtpXu-0000lG-5U; Fri, 20 Oct 2023 13:28:10 +0000
Received: by outflank-mailman (input) for mailman id 619782;
 Fri, 20 Oct 2023 13:28: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=8lwx=GC=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qtpXs-0000kr-Og
 for xen-devel@lists.xenproject.org; Fri, 20 Oct 2023 13:28:08 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 (mail-db8eur05on20631.outbound.protection.outlook.com
 [2a01:111:f400:7e1a::631])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 8167cd4b-6f4c-11ee-98d5-6d05b1d4d9a1;
 Fri, 20 Oct 2023 15:28:07 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS8PR04MB9080.eurprd04.prod.outlook.com (2603:10a6:20b:447::16)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.11; Fri, 20 Oct
 2023 13:28:06 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%7]) with mapi id 15.20.6907.022; Fri, 20 Oct 2023
 13:28: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: 8167cd4b-6f4c-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=UotGr4AxyMPup4fg96OiMG0TCatAxHYs7zsFFC5hHv1u74BSpCEralVK/iGkI+rutDTBvG67s+X0C3tw3rVnay6brln+0qdrZHk/jsHol/KOnE1WkQ4iapvqwXvqGwKZNdbQauh4CCKF2Uxc5MqiguFpLiMuOp4PEczbitSNFMueR3+2rSu0iNc4qcgVr977OhFwZGKLMAVuPbUWB6WmNPdpEHPGBUa0eE9b975bZGdlwBrTMCcrkf07XSON+87C6VON/63XAGBvImoIipIzee6Z89yB8HH30nEM2Ms4FFdPJPK5V0Zxfj6ZpjNsckG+ix9mlnw/lVX1jJ33QmPAkQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=E9ciP7iJDMYNK8OJneVvRtRoSN0Ii4ttLfdNpeGHzU4=;
 b=gyEzg0AEcCSo74jYinN9CDZ17FacHcPoHyggFZVr3hIl/J5FV4iqVYMlt8UuDYgRU64vSmWw4Q/ieuni48gkUvxB6E/OwwgcKjWe7fZI0V3P05SIMaU24Gvb9CA+2Xh6CiOKzP4y4+SSRMLC2quPD2NMH06Pj2s0Rs6alZzHhxdt7dlWbmip8baId8K2hrrZn3xT2euCGSmYVBJmN9F+YLaoDajnZ5xMKhNTsXSYMGiZTjaUpuZHC49M8R/kWqVRZO7A36ZwA8My5iVMqCenjIe2AW1RhgnHBATw+ZtNJJh2cF1a9aO5dt9DpsPggVx84csjJaV+/rJEJozu0Dc5Ig==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=E9ciP7iJDMYNK8OJneVvRtRoSN0Ii4ttLfdNpeGHzU4=;
 b=2TdNTD1o3EsfFD0BhZ+Rk9vzGt40hxq4qA6oIlEoOLBORCDhHcDsO7MdDU+tDrqX7g5aNSMMLXR1nfWkfbF0JzzH4U2IdAmF/9FOdQxmHtmE/F7pfgL2nMXWXp8Ag1UBVTuy2WmBX8r1cR73ILnNtubueY/nF6ZkzLl9sf3KO3SFcO2bCjB/hUHF0jAGDP4l0h50VHfqW5imSxjvDToyJbewimRux9l2MjNZNYYdzp7YQ3cePoozTMYOjhxz5EbuEFLsj2Ai7/fezaQhJD5FKef/Q9bOQNgI3rzlgVs2DyE42fU2E8sd3iuClzCuA6Td9MpCc/DrY39uDhwZrhJBQA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <b0bc4115-ea8f-6afc-e469-12e2c3ae50b8@suse.com>
Date: Fri, 20 Oct 2023 15:28:03 +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][for-next][for-4.19 v2 1/8] xen/include: add macro
 LOWEST_BIT
Content-Language: en-US
To: Nicola Vetrini <nicola.vetrini@bugseng.com>
Cc: Stefano Stabellini <sstabellini@kernel.org>, michal.orzel@amd.com,
 xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, consulting@bugseng.com,
 andrew.cooper3@citrix.com, roger.pau@citrix.com,
 Simone Ballarin <simone.ballarin@bugseng.com>,
 Doug Goldstein <cardoe@cardoe.com>, George Dunlap
 <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Wei Liu <wl@xen.org>, xen-devel@lists.xenproject.org, Luca.Fancellu@arm.com
References: <cover.1697123806.git.nicola.vetrini@bugseng.com>
 <bb0ba44f8a3944c22a1c7cf19196c7060e8adb4b.1697123806.git.nicola.vetrini@bugseng.com>
 <93408661-721b-c4b3-d504-e65142bbdaea@suse.com>
 <42ee4de54f6d9bd80fb50db3545cbaf4@bugseng.com>
 <08286993-6a83-b928-6398-e129397927a0@suse.com>
 <9002a10f872fccc5217faab2f20ad5ba@bugseng.com>
 <alpine.DEB.2.22.394.2310191253440.2099202@ubuntu-linux-20-04-desktop>
 <9ab86d00-b539-25d1-4830-80932babcfbc@suse.com>
 <0b87c8229ad041d62360ac39d58ada00@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <0b87c8229ad041d62360ac39d58ada00@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR5P281CA0004.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:f2::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_|AS8PR04MB9080:EE_
X-MS-Office365-Filtering-Correlation-Id: b75fb32b-884b-4b2f-de75-08dbd17064b2
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	H5a31mFCrC+QYLkwyOeOR9GIm8e06BxFJw1NLBXfKRPmWQ7ie74pGiV657a5mihHPFLAXkO8g0C+KuqTnE0SbdWK4fs7UtAEql1aEvIStns89usYcVblBi5x7XitPKDN//0MVZOJdYr0GX8Jsfxj8TNixI/SfY6vj0bZT+StbR1GWsikBcohXqYh37Jp2NPQPgVtF3uCAs/yRfBPUnarmozk7juc2RaXDdL0ErXywQVgmhJvY/i4CKftAJJf8DWkikn+gL7rRudF0YN48/qLzf+GltHD6kwEUeDswID/amNI9q9FYxumkXlE/MSjk0XQv0L5MomFwC3V0TLrYvmpmvyqN01S+3NeCk7Qt+O5CuvrywppGWW8W5twJ5QqyV1og1GT9jHQ93yK+o7meRaqcrqHTsEyFsF2YmVWC8WJEUDZu0Vlmar/eDO6EeJO4s/CxXc1VXVj/Wg4fYmDjRHBmaTM044qpCs6losUxMC/iUX2y8QNnVBHaCvG/eeZ+dtWA8VdhODgsBw+42nq7AId9o9xY/jnuGesr1PPeLs2P+x4k1LYip4JPlyhStPgV2f2F2+VU6teR0DskdNc+YEpdJlJIyMmWrYmni1OiqTHUhkjyIwAKgy4vU8B4vfXHUfn2wP1FpD60vk8oTVxZbhjgw==
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)(39860400002)(376002)(136003)(230922051799003)(451199024)(186009)(1800799009)(64100799003)(41300700001)(7416002)(5660300002)(4326008)(8676002)(8936002)(2906002)(31696002)(86362001)(36756003)(6486002)(478600001)(6512007)(31686004)(26005)(2616005)(53546011)(83380400001)(6506007)(66556008)(66476007)(66946007)(6666004)(38100700002)(316002)(54906003)(6916009)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?SCtVcXhOc3hxOERaQmpuajZqT3FJUkt2YUNScHM5blFqQXROTzhScEJaZG96?=
 =?utf-8?B?MnNBQ0c4akEvb1NXY2NNR3NUbzBwVEhCdnl1WGtxNXJnUUdoTG9HMWdXS0lJ?=
 =?utf-8?B?VnJYNjd3T1QvK3A3K01sUE1aK3ByaVVCK3FnQXNUTmp6YVZ6c3FCRVBFQlhr?=
 =?utf-8?B?Q1BVSEJrYzdBdS8za1pVajgybFRJUGJOWW9mWlEyM01iMmJReTN4NTRIcTdv?=
 =?utf-8?B?N2o5azZTQkRNbUZTUjNrZTM4bkNVMmkxY09xNWRia3A1c2poSUE5dUVmaytP?=
 =?utf-8?B?RGRKVWJQUzMzcGdodE5MV2hhT3IxWVJzQ2wvZlY0S0tGYzhaOEkwZkFDY1Ax?=
 =?utf-8?B?NFJwLzdOMlBFQmpOZHNtY2hHdDQrNE1FTjlZa2ljdkJlTnltbXlONlVyeEVX?=
 =?utf-8?B?RHJPVUR1U0tncXlTb09IWHFvRys2bTk3ZzZmNlVYV21seXRZV0pCYm1YQkcw?=
 =?utf-8?B?NHk2eHhaM0xpM1hqdGFVWDRTQ2pUb09TVWlFcU8zWUtUSmdKRnM4dUNxdUxU?=
 =?utf-8?B?VUZ1bVdnUm1ZNnN2Z2JmenJtMisvVjBqOUdoRWRZeU5XbEEzRk85cFVkdU01?=
 =?utf-8?B?ZHdKcDRuNTJZSlpPV2FrYWNOdk9Zb3ZBNkV2M2IxY1BoeDNFYy83c2hpbzhH?=
 =?utf-8?B?NlN5dnZrUCs2UjN4WjA4T3NJa2dLVlBCNUIxNHdNWG1oeVVMQ2EvNnNPckF6?=
 =?utf-8?B?TVNyZnhpVEQzYWR6VU9tRmtqcExIbXZkTllSQnlTNVBWeEM3ZTZnRWFLWk1q?=
 =?utf-8?B?czdranMvYW1NME1WWTV6eVJRYzZkNXFWYmNjaTB0a05LbmIwTVZSaEc5azZ5?=
 =?utf-8?B?cHZHeFJrUUdTb3dXSzBjNE5rbHlna0dKN2hsNjQ2b0FjSmZsMTc4RDJudFRk?=
 =?utf-8?B?V2FpMnRkbE93Rks2MEtUUnFuTGY1aVREVHdXekZZeWJGTjVEZXk1NDVxZFR0?=
 =?utf-8?B?WERuNW9uUFNZUlBOT1FHZWRwdEQ3Q29ob1lUUVNlTEdNSkZKajBoMFR1UGRP?=
 =?utf-8?B?UzZOSHJLTzFDcmR3V0hScDhQOWV1b1JBM2F0dTlqUzRyQ2l4RHUycjQ2RGxI?=
 =?utf-8?B?LzZXTGNwc0doQzJMcGVXTGgycmR3MWxReDlMYzVKSDVDeXpWUG5TbitQYUtk?=
 =?utf-8?B?eWdTSHA3aXh2OUh3MlpoUnhMSXFSTEp6UXJnL3BGNGlna1Y1Nzhyb21RTWpr?=
 =?utf-8?B?Q1NhaDViZ2dHRFNUNGlLaTJZbUllNDFiMnQzdmIwSDBzSmpYWXR2aytlT3N6?=
 =?utf-8?B?cHNxZ2dGOVBMV1dPREw0MjFkNEs2bWFJWjNuTjdjNWxJd3pPaUNiVk5lS2NM?=
 =?utf-8?B?djVPcnAwZEp3clptS1RBMm9yOTVDOStqK3dZN3ZzeWVhL1FsL1VJNEEzVFpH?=
 =?utf-8?B?ZDhOTzJQY084aWVrUTlWTFZ3cExVZEpYOTVVbHJlTFZuN1I3UnRyMlNNT2tX?=
 =?utf-8?B?bklBUjgwbDNwaEJCZHljaklSeHN4ZWtGSFAzUUhNSXdzL3QybW5CVzNMMWRn?=
 =?utf-8?B?ZUdCOUh4alBYSFk4UnhncGZaN3dvMzBWZjViL2Z1d0k0Yy8zUjhYNUhRN0Ix?=
 =?utf-8?B?dE5QZytEN0p3OVFwM2ZQdUlVa21aWnEvQ21QZElMR01rc2VLSWNJNEdxUU1R?=
 =?utf-8?B?SHhqRXFaQ3VVQXBGU2p0Zm9qNlhoRklmT01TVkRQTnRkR2V4eklUK0dwUFpK?=
 =?utf-8?B?WnN6TjRXcnBaWjE4Q2U5cENEaGdXOFdNU2sxVW4yc1grbGNxMHBudFhtQXBz?=
 =?utf-8?B?ZG1UVDZUYllYSE9OeGQraHlIUkdWRGlqWDIydnEzY1c4dEFVcE1xMFhUSjhq?=
 =?utf-8?B?REtOanRKM2N4R2R6dEE5M0loUXZzTVJWOHJFak1VRytUbGo3TlQ1TzAzRE5m?=
 =?utf-8?B?QU1EVklRdlVDZTB4K2NYRm92ZnJNTzdEc0VRdTMrN2FTclM5TURzOWt1eUlt?=
 =?utf-8?B?U3hCWWpiK3VEaVFDUGZmZ3Z1aWN4dGI5S1A3clZkaG80NnYrd29YOGJaMTNK?=
 =?utf-8?B?S3ZDMlhUanpmeHh0YkNtdmFkakZ4VWFSTFRCdmV5OFFiWU5wcnE0Q1oxNkgy?=
 =?utf-8?B?YU1ZVHNwL0RZcUM2U1dwc1RPUnBpWUYwQXNZNGhkakhSL1dmbXNCeUJhRVFs?=
 =?utf-8?Q?rRGP71R0B8l4epzteKzGO1TMt?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: b75fb32b-884b-4b2f-de75-08dbd17064b2
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Oct 2023 13:28:06.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: MTOOql8psImwXGTEZV0zkBKynj2S4WCzUtT8PRqH0yVaTWX0TanLJ12zV8B95DIkEnenhhZKLU+VNty5DzFAHg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB9080

On 20.10.2023 12:40, Nicola Vetrini wrote:
> On 20/10/2023 08:00, Jan Beulich wrote:
>> On 19.10.2023 21:58, Stefano Stabellini wrote:
>>>>>>>> --- a/xen/include/xen/macros.h
>>>>>>>> +++ b/xen/include/xen/macros.h
>>>>>>>> @@ -8,8 +8,10 @@
>>>>>>>>  #define DIV_ROUND(n, d) (((n) + (d) / 2) / (d))
>>>>>>>>  #define DIV_ROUND_UP(n, d) (((n) + (d) - 1) / (d))
>>>>>>>>
>>>>>>>> -#define MASK_EXTR(v, m) (((v) & (m)) / ((m) & -(m)))
>>>>>>>> -#define MASK_INSR(v, m) (((v) * ((m) & -(m))) & (m))
>>>>>>>
>>>>>>> a SAF-<n>-safe comment here?
>>>>>>>
>>>>>>
>>>>>> One reason is that now that violations only belonging to tool
>>>>>> configurations
>>>>>> and similar are documented in docs/misra/deviations.rst (committed 
>>>>>> in
>>>>>> Stefano's
>>>>>> branch for-4.19 [1]).
>>>>>
>>>>> But tool configuration means every analysis tool needs configuring
>>>>> separately. That's why the comment tagging scheme was decided to be
>>>>> preferred, iirc.
>>>>>
>>>>>> Also, there were disagreements on the SAF naming
>>>>>> scheme, and
>>>>>> patches like those would not be accepted at the moment.
>>>>>
>>>>> Well, that needs resolving. The naming there shouldn't lead to 
>>>>> patches
>>>>> being accepted that later may need redoing.
>>>>>
>>>>> Jan
>>>>
>>>> While this is true, in this case I'm not willing to deviate with a 
>>>> SAF, given
>>>> that
>>>> some ECLAIR-specific configuration would be needed anyways, given 
>>>> that I'm
>>>> deviating a macro definition, rather than the line where it's 
>>>> actually used
>>>> (and maybe other tools would need
>>>> that as well).
>>>
>>> Did I get it right that the problem with using SAF in this case is 
>>> that
>>> it wouldn't be sufficient to add a SAF comment on top of the MACRO
>>> definition, but we would need a SAF comment on top of every MACRO
>>> invocation?
>>>
>>> If so, then not just for this MACRO but in general basically we have 
>>> to
>>> use deviations.rst.
>>
>> That would be pretty sad.
> 
> Local deviation comments are for local deviations; deviating patterns is 
> a tool configuration.

That's orthogonal. A deviating comment on a macro definition, when it is
about an aspect that's meaningful only after the macro is expanded (i.e.
not violating some rule concerning macro definitions only), would be
quite helpful to limit the number of such comments that need sprinkling
across the code base.

Jan


From xen-devel-bounces@lists.xenproject.org Fri Oct 20 13:29:46 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 13:29:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619785.965431 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtpZN-0001JI-Ix; Fri, 20 Oct 2023 13:29:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619785.965431; Fri, 20 Oct 2023 13:29: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 1qtpZN-0001JB-FD; Fri, 20 Oct 2023 13:29:41 +0000
Received: by outflank-mailman (input) for mailman id 619785;
 Fri, 20 Oct 2023 13:29: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=nUGB=GC=citrix.com=prvs=6503d4fc7=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qtpZL-0001J3-DD
 for xen-devel@lists.xenproject.org; Fri, 20 Oct 2023 13:29:39 +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 b56b311f-6f4c-11ee-9b0e-b553b5be7939;
 Fri, 20 Oct 2023 15:29:36 +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;
 20 Oct 2023 09:29:21 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by LV8PR03MB7494.namprd03.prod.outlook.com (2603:10b6:408:190::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.45; Fri, 20 Oct
 2023 13:29:18 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::17e3:6cff:b087:fc64]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::17e3:6cff:b087:fc64%4]) with mapi id 15.20.6886.034; Fri, 20 Oct 2023
 13:29: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: b56b311f-6f4c-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1697808576;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=M7kc8NhzohTBu2fEv9NcljSdCEWt5GwI6urlMkngxxc=;
  b=actS2DBSX2bgYuvlezC47P1SUMxfMna2fqNWDtUJkj72tyYsai/WlI9R
   JBRsCjx0pjsBHcOBit5hJnrrT5wmi58Wm5RufXmYk4EslvwWXv/u+BkpG
   RJpUS+e0MiIWHRL27OEur1UMiJ9oTBJQ/6zSqzBrP+7dlTRz3kNCunFsl
   8=;
X-CSE-ConnectionGUID: 9hVjPvQ5RsuFii/qoSfArg==
X-CSE-MsgGUID: boBm3/ANTkqbZOEEx1s3Ng==
X-IronPort-RemoteIP: 104.47.55.168
X-IronPort-MID: 124779082
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:haWq6avBURcwH9KYh4v1nCNq2ufnVLNfMUV32f8akzHdYApBsoF/q
 tZmKWiDOq2OMDD1KotyPdu0/UJXu8eAmtVlQFNr+y1mRS0W+JbJXdiXEBz9bniYRiHhoOCLz
 O1FM4Wdc5pkJpP4jk3wWlQ0hSAkjclkfpKlVaicfHg3HFc4IMsYoUoLs/YjhYJ1isSODQqIu
 Nfjy+XSI1bg0DNvWo4uw/vrRChH4rKq41v0gnRkPaoQ5QeEzyFMZH4iDfrZw0XQE9E88tGSH
 44v/JnhlkvF8hEkDM+Sk7qTWiXmlZaLYGBiIlIPM0STqkAqSh4ai87XB9JFAatjsB2bnsgZ9
 Tl4ncfYpTHFnEH7sL91vxFwS0mSNEDdkVPNCSDXXce7lyUqf5ZwqhnH4Y5f0YAwo45K7W9yG
 fMweTAzbCidvr+M26+VS+grn8MYIuDxM9ZK0p1g5Wmx4fcOZ7nmGv+Pz/kImTA6i4ZJAOrUY
 NcfZXx3dhPcbhZTO1ARTpUjgOOvgXq5eDpdwL6XjfNvvy6Pk0osjf60boq9lt+iHK25mm6Co
 W3L5SLhCwwyP92D0zuVtHmrg4cjmAuiAt5NS+zgpqQCbFu7zGs5DUZRfH2HouCzuGmTdsIGM
 Bcy9X97xUQ13AnxJjXnZDW0v3ub5DYdXdRKGuE34Q3LzbDbiy6JC25BQjNfZdgOsM4tWSdsx
 lKPh8nuBzFkrPuSU3313rWeoC62OCMVBXQffiJCRgwAi/HhvYUygxTnXttlVqmvgbXdAirsy
 jqHqCw/gbQ7jsMR0ai/u1fdjFqEuZzhXgMzoALNUQqYAhhRYYekY8mi7wjd5PMZdoKBFADf7
 D4DhtSU6/0IAdeVjiuRTe4RHbavofGYLDnbhl0pFJ4kn9iwx0OekUlryGkWDC9U3gwsIFcFv
 Ge7Vdtt2aJu
IronPort-HdrOrdr: A9a23:rLSCWK+6fjuTV4Vzz1Fuk+DbI+orL9Y04lQ7vn2ZhyYlFfBw9v
 re+sjzsCWftN9/YgBCpTntAsm9qBDnlKKdg7NhX4tKNTOO0ACVxepZnO7fKlPbaknDHy1muZ
 uIsZISNDQ9NzdHZA/BjjWFLw==
X-Talos-CUID: 9a23:4Kxh0m4E2g8IMss48NsspU4qGPg7SyDn12r+Ik7/EGFSRpSPRgrF
X-Talos-MUID: =?us-ascii?q?9a23=3At4LFggzlyb3JqYIAjkbghzbUywaaqK6pIkVW1rw?=
 =?us-ascii?q?gh8qdPx5XFhqN1S/sZIByfw=3D=3D?=
X-IronPort-AV: E=Sophos;i="6.03,239,1694750400"; 
   d="scan'208";a="124779082"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=JONCBdlMpVVYmdLbSRjTbv9gsYk6SWnSGJ35TafVKMKCaS2UeY1fnVGJkTBvgn5mw0nsZBKOiHIFz7EcvO3v/rrWjTJJ+7E6mxzlTCAyVznh7CJhD3vC24+qwuhnkTElKlJqqdW1zPEect0Mmmss0urHJEC3JplrZ1FyODiPodbMV33YbIcUB48L9U0So2+kIrWfAIMec2kgMr8yzhq3hpX5kZ6K6mRWwJEDTSxuMCd8swuypSOdtf3jDYk2ITmdvr95uX9oby6jGwZ0V3yy8nfIFsn6IyEO88isiGTa20ACGZtFr5D4AGOxIiOcNI8mVFmQ4bVKMKw61p1w8gChRg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=ZY9UJZzhWkYlJGnK3kQBhSXKCrMAcRkA3g4h7z8Ipec=;
 b=PMsq9EayDzlDIq3yIo609f6EJEkNmUuwOyl0F7VQWTePLHH0lvM6EV0GWhGAjPVW0X2BNuTNX96rQB0vX52+UhRAmp5rC+TYuciyJ0w11xBgfHMtpvywjyFnI7vF25YuRzKviM4P8md+THoB7L2QYWi+ZLKaM14L+S+lj7uFFP/cxcoXG66grYLfw3l9JDjJZqsma6LzF53ha5cK8o+sj84YZw0H9F/plFi1+XufhAmKJ167uy3Xw0mrmfgoMSeVUFy7RP7h2cgfTyitGXkRvlmK1a0zwqMsM38eNmxOSwiMk9znuxTYJ2D5kMbFqluuhwyaiNo3lsSy2+bKTJpLIg==
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=ZY9UJZzhWkYlJGnK3kQBhSXKCrMAcRkA3g4h7z8Ipec=;
 b=P+dGrlGfKJqitOWPlVlm8kL6N4JsaqcBCgewMUSO7ZeOEwuQbwSk0e3rJMgPJd/D58aMAfwQG1C4dh47/rAS9ikB4voBuKwRBZGpFIGp7lniRzQa/qcczBdt0qKEHis04vBGV377hXGGSqrsKbi//P25EhJnhAc7U8v78c/3hVI=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Fri, 20 Oct 2023 15:29:12 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: David Woodhouse <dwmw2@infradead.org>, xen-devel@lists.xenproject.org,
	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] ns16550c: avoid crash in ns16550_endboot in PV shim mode
Message-ID: <ZTKAqBILUBNelYCS@macbook>
References: <de07d56188f13e222ddaa1b963c20f8d7d61350e.camel@infradead.org>
 <14914ea1-2d2b-46e2-9933-2b7414acb7ba@citrix.com>
 <f1ea054608f4ae38293f89bcd84c6937538f245b.camel@infradead.org>
 <f5603457-8bee-40b9-9ea2-d604abe4ee53@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <f5603457-8bee-40b9-9ea2-d604abe4ee53@citrix.com>
X-ClientProxiedBy: LO4P123CA0555.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:33b::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_|LV8PR03MB7494:EE_
X-MS-Office365-Filtering-Correlation-Id: c49a362e-0861-4ec2-3ef9-08dbd1708f25
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:
	fay6p7xt0ZNh5J3bwrC7oSwuvBGQDAC6UcvgAgWYVVpRjdzF9m3Mfe4OyAqwlJq8G8lNS72PEj3eecQtvV4tidzhb/QWbSlGkiqUdtE/sV7z/wHzyeBBI6U3UYqkVABZS9thE26mLsE4aMWqI6S08RzxCur/MC9nRpkmH5Cq1bWwBwqR+Yw8jiVc59QypZyDxbqHBhzPNQxmuXgA9pJ+wfkuS3+DCmOG1EPTPpF01sC2sNQPznptZ3iz9xNs/81MErAqM85iRah2alTuMAlEP340IesNPyU2laOsmaKRF1q5LmBk199LyiLfRAMHF+OQm7eVEvKurzAlqLaD23pGVYvBSJi12wM36B+YcM2mdC1maBl5SymofdFhnf5FOi3XCwA7zY23Wgggc6jRD8cqZvPldyUyfJ9Re2HZ8qM5u7XVgUyqzhlzoKgsF6Ih+9PXp8AQfHHSbNboyS/oJR5a769ZdYIQ+KNro2m3ZsHDNWvIL/cma5Oty6KsmqfrQimx6sIE1iIWwcFtpStAAQFCHr2uF36wIlvBhb/QigdaUfU=
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)(376002)(136003)(396003)(230922051799003)(186009)(451199024)(1800799009)(64100799003)(6512007)(53546011)(6506007)(6666004)(85182001)(4001150100001)(26005)(33716001)(82960400001)(86362001)(5660300002)(38100700002)(2906002)(9686003)(54906003)(966005)(8676002)(66476007)(66556008)(6486002)(66946007)(41300700001)(6636002)(6862004)(478600001)(316002)(4326008)(8936002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?NWtaclg2QU5BRVdhcVRSdVJoalpOZG0wdkNNNkYrRms5UmI3OWt4ajMrMmcz?=
 =?utf-8?B?VG5ha2piaHhTYm5SQ2RDL0hiUFA2MnQ5RXVyWTE5U3pydzNqSWNNdWhMWFlo?=
 =?utf-8?B?L1h3Q1Fyb2N1V2dXUWdUWStNZldRaDRrZHJnRlBjRExBSkE1QmJ2cE1uQkhO?=
 =?utf-8?B?VVFLQXhibi9hTjNLYWxmcDhBOUMwWU1kQmhvVjlhdWlBN0R2aFVKbXVjNTdE?=
 =?utf-8?B?RU42ckRML0xNc3hDZzMxR1NNc0NKcmpDU0kvZVUvbzA2RHgyNnloZ1JsQTNu?=
 =?utf-8?B?dElDcGFLclZmWnAzdlh3S0Y4NTFUMVlHa2gwc3ZkK0Ftdi8vMVFvZHJiQkY0?=
 =?utf-8?B?bVVtMHpkMTVnSGYvaUt0QlQwenBwbkZXeENjMytCOE9ycHh0MlIrK0o1MGl6?=
 =?utf-8?B?bTJlQmMzbWN3ekFlU2U1L1BBdlJZVjJkNGxWaHJtYjh4Yzc2dlhiR3k4UCsz?=
 =?utf-8?B?aTdld3BnL3RzM2RBQ3RqL05QMzliUi9EN2s3bldFK2I0MVRnaW9zeDd0Q0hO?=
 =?utf-8?B?UDFuQXM0SitQeHdjSnhwSFJlV1RiSWFLQTlWUldqbnpnU0dpaFFJb204cTZB?=
 =?utf-8?B?MEZCOEZoTU0waGpoeFRGTmtIT1VKczl1RWl0d3FySXdKTVU5RHdrS0ZxQmxp?=
 =?utf-8?B?cnhkMSt1VkE1cmFFbWg2T213cHNlZGV4RkpvQSt1cEFwVFUxNW96UGFpS2xI?=
 =?utf-8?B?UW9VUW96aDh0UDd2ZjFsMDgyZlM5RTJpQ3pxNXhxWmhqcVoydkh1YmhzRHJS?=
 =?utf-8?B?OGhRVDJhOGNDU1NuV3Fnc044SzlEVERFVSszZXpSMndEakIwTG43RUo1ajVl?=
 =?utf-8?B?RzRRb2RtUTJZc0hIUE1QcFZ5WE03bklaVXlYTW1ySUNXckIvVzAwL05JVTRI?=
 =?utf-8?B?bnplRnAySHFvVm03U0ZBY1gwam5PTVB5NjhwMlIvMHQzSm9EaWNUdC9UTHB4?=
 =?utf-8?B?VDdNWlMyRmN0b0Vsc0NuSXoxZUxLdFpBbWZFT3Y2MnJwSkJHT0gzVWVwc0pT?=
 =?utf-8?B?aFNDWHU3Q2lrMnQzVm56S3gwdEthcGxieHVScXhHZDE4TWNVQy95QlY4L0FN?=
 =?utf-8?B?YlpTOVpIa1B3VUwvNldVQWR0YUhtVlNwN3BtbFdRNmVWZlJ2cDJNOEZGRHVz?=
 =?utf-8?B?QnBXeXZvaHRPSU1teWtoMkx0RHdYQk5Wem5lNHh4L0xLSjZpUC9tWHJibExy?=
 =?utf-8?B?d284V0lDTTNTVzdkUmRwT2NFZjBBdS9EYU81Q0F6Mm5MWlRXRnZtVlZIZWFV?=
 =?utf-8?B?TTlIdkFXVXpxZGhMV2hWL2FUcnQ0VTZTTUMyc1VrMTc5MjA1RHh3VXFIekdX?=
 =?utf-8?B?RGJzSUpuV3ZZMEgyaTFadm5xM2ZTMjF3S3pmS0JnTk5PWkZMZWY1ckJ4V3ky?=
 =?utf-8?B?ek9QSnIyUytlVE9jMk9ZOVFVUE5uTVI3QWdmUFRJbEFKa3dIbUFHR1Q1Y3Z1?=
 =?utf-8?B?azdaSWF3dTVYMFZjVWh4TVJibEVRZ1JiSS94eklybTJrcGpwV29mbXZzV1cy?=
 =?utf-8?B?UnoycnptdzYxMDJnN2wyWHBkY0cveGI0WjNNM09vdmFtOFpudEVwdTMvRG5I?=
 =?utf-8?B?bisvOEdzRGtxdXpHbytSVWpIcms3djFvOENsSk1nSXFhb2hHLytRZFQySkR0?=
 =?utf-8?B?NVhuNHJURlcvcHUyNzdNNksyQncvZE0yN2FoVVFUeDJ1Wk9IVTdSOW9GVTRa?=
 =?utf-8?B?WDh5eWJoQnRkWDNPd1dGVG5aM0wrOUxVSDJsd1R3Q2FwTFVnYWhwZVg5QkNS?=
 =?utf-8?B?RjlJblU2bndNVDg4cEJrTXczaldoYWRSditqSkVjZGJrSGEvOG5JekpraEkx?=
 =?utf-8?B?TGJiRmRnc2lVZTZjRTB4QzBpZGpJZ0RUUHFWSjZNZVBpZjFnZFRxWjlMeEY0?=
 =?utf-8?B?T1Fkd04rNmcrRm81UlphTmJCL3dLT0pkSElSNkN4T2VkYlBiVWhEc2FpN2Z2?=
 =?utf-8?B?VGd4U0ZpUXQrWGRCZUJEQ1czeloyaEVsSkFKM0pyY1JuN2twOWdqUjZJWVF4?=
 =?utf-8?B?UkMzWEJ1dzAxTWpONDRnSTZ5UDNqdHhsT1BhSmJ0NVg2eVVxQmRMMTZ6Znoz?=
 =?utf-8?B?Sm05cXJoamFnSWFFc1FhUnZ3NHExaTdJTzMrTFhYUmVrdmdYZnNVMDh6TXQz?=
 =?utf-8?Q?G+B8jhpgrpkt4X3ooGTMDCGc4?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	xODk8qo1InzWzTcQ6N8aM9UJh+taJXjg4P2wa2HaJtPc9P5/vy9qjqby1pg240tK8H3Fg30RscgfMUFSC0u6HhAvTBvTZCVg2x1XWPAuwofxqfkR+HkKoTsTge087mvLHEN7e2vsDFPv9D2gMvfyPhNaV+fGk+F31tDNeLYwkpNinLuQ8fk+TkY1zSocErWaAXpr/01oYsKGbNJAfaIVzE9DB9uDQAg+GWcs5jnYPG9Yl7HUOJ7XtZcDYob5kdHoifDhnifMBNeWY4uiMsPxy0puq0FPFUZSMp5AsZM3zYLOba4cCkwit4M5g29DCwV9bve32AEd6ATrvDXf3DmWMLRmdDFeG4853znypLjoSIyMX2BANs2lnASrRzOP6TOsIfyGyYkdYY9Rkd0QDyXZi2IR052FPZ7dhK7IqD1z1ez3RgUk5Gr4lttiTmIiMBoaC2wyZ31ntMjjxs7a6O9ln4O19Tym4yUlpy1hcy8pcVx0B14eCQn5duWHiuKdmd6yIPDO69DAG4QFGH8wrXr6CHE+74nWzd8f+igHrUtAhRVSMuKlZ/LIAMeU4Khu0DoMjquaX91YFPV73bYkRMPv4Wrf2LAuGbD3ehassV+1KMVA1IcpW32TZQw/qFVyYEZkJXRrQNdeYFeqQNTBlz+FWmnAxUHfgUTYTW9iInCPqrX5OtZ0jepj+1rOEfs1xgoAsC4VjF4VwrtG1R/fNfOxMTToJRSVYkoQy+wdhs0L/YYPKJCl616CMFKikFuddfknwZ9duQCjFGP+EQqE2PaE7cwQNnd8jY99RVDXTGPWo9/QMwdIs+jQlvLMQ5CVrKo2CrR95Fkz8W25sVEnJbVJXZWW/XBJZJudeHIVPe22iJOhdsN+Abc8plqUAK2Xn99Wp7xdKd1bge/FSr0nVxzfmA==
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: c49a362e-0861-4ec2-3ef9-08dbd1708f25
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Oct 2023 13:29:17.4133
 (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: hBeGPVw/NPenPEGJDk0R9beC16IB94xlP3X1pmKbP4+BJe/ZC6xHd/iJ25SFeNKoyX5V75BPR6eYtZ5RXALc8w==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: LV8PR03MB7494

On Fri, Oct 20, 2023 at 02:25:35PM +0100, Andrew Cooper wrote:
> On 20/10/2023 11:29 am, David Woodhouse wrote:
> > On Fri, 2023-10-20 at 11:14 +0100, Andrew Cooper wrote:
> >> On 19/10/2023 5:21 pm, David Woodhouse wrote:
> >>> From: David Woodhouse <dwmw@amazon.co.uk>
> >>>
> >>> In shim mode there is no hardware_domain. Dereferencing the pointer
> >>> doesn't end well.
> >>>
> >>> Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
> >>> ---
> >>> This is about as far as I got in my abortive attempt to use the PV shim
> >>> without an actual PV console being provided by the HVM hosting
> >>> environment. It still doesn't pass the guest's console through to
> >>> serial; that only seems to shim to an actual PV console.
> >> There's no such thing as a Xen VM without a PV console.
> > Huh? There are literally millions of them.
> 
> I'm very prepared to believe there are millions which don't overtly
> malfunction when you don't fill in the HVM Params. 
> 
> Which is very different from saying "there's a way in the Xen guest ABI
> to express 'you don't have a PV console' ".

FWIW, Linux assumes that either the console page or the event channel
being 0 implies no console available [0], so I guess that's the ABI
now.

Roger.

[0] https://elixir.bootlin.com/linux/latest/source/drivers/tty/hvc/hvc_xen.c#L258


From xen-devel-bounces@lists.xenproject.org Fri Oct 20 13:38:09 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 13:38:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619792.965443 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtphT-0003zg-Gx; Fri, 20 Oct 2023 13:38:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619792.965443; Fri, 20 Oct 2023 13:38: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 1qtphT-0003zZ-EC; Fri, 20 Oct 2023 13:38:03 +0000
Received: by outflank-mailman (input) for mailman id 619792;
 Fri, 20 Oct 2023 13:38: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=fjAU=GC=casper.srs.infradead.org=BATV+5f4592396010e9e3c002+7362+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qtphR-0003zR-E8
 for xen-devel@lists.xenproject.org; Fri, 20 Oct 2023 13:38:02 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id e2256f49-6f4d-11ee-98d5-6d05b1d4d9a1;
 Fri, 20 Oct 2023 15:38:00 +0200 (CEST)
Received: from [2001:8b0:10b:5:f7e9:453b:fc3b:2f6]
 (helo=u3832b3a9db3152.ant.amazon.com)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qtphO-00DO51-37; Fri, 20 Oct 2023 13:37: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: e2256f49-6f4d-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=MIME-Version:Content-Type:References:
	In-Reply-To:Date:Cc:To:From:Subject:Message-ID:Sender:Reply-To:
	Content-Transfer-Encoding:Content-ID:Content-Description;
	bh=7gNioTd0sL6hxeyYsRkvDA2DhWTOOi8c83OXvvJSVrg=; b=USIuqejTcN7Ax6QwZFlQ3YhZE7
	/p9tNiyUqPlt1xIgJJPt3FS1faED72NIg3UNcL06d/EA+6N44tsc6gH2+P0czb2AGAuZ719lU6QX5
	/UdzoYki2vpek/0xeY0zbEdsLfIWzwoHqMfXwwxNhoD0LsQ+ffc0gA/UbHPuTyJgu3OP3T74SxIBt
	/4GaTwZTFugI998IEootu6fvcZ2jLy5nAveethuQXtgqIVXkGkiRY9Iw/XUnUJ+7r2SC+q5Udgrnr
	xyy+3ck3fT4sAtP4oM7H0dk1eq1GJfMJr3pcBGTDmjmYMalF8q4KWwBrCyDx43U8juXBZQobAaKy7
	KTCmY27Q==;
Message-ID: <7e1fb34868adfa51f1a48eb8d77f4b92643db85e.camel@infradead.org>
Subject: Re: [PATCH] ns16550c: avoid crash in ns16550_endboot in PV shim mode
From: David Woodhouse <dwmw2@infradead.org>
To: Roger Pau =?ISO-8859-1?Q?Monn=E9?= <roger.pau@citrix.com>, Andrew Cooper
	 <andrew.cooper3@citrix.com>
Cc: xen-devel@lists.xenproject.org, 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: Fri, 20 Oct 2023 14:37:57 +0100
In-Reply-To: <ZTKAqBILUBNelYCS@macbook>
References: <de07d56188f13e222ddaa1b963c20f8d7d61350e.camel@infradead.org>
	 <14914ea1-2d2b-46e2-9933-2b7414acb7ba@citrix.com>
	 <f1ea054608f4ae38293f89bcd84c6937538f245b.camel@infradead.org>
	 <f5603457-8bee-40b9-9ea2-d604abe4ee53@citrix.com>
	 <ZTKAqBILUBNelYCS@macbook>
Content-Type: multipart/signed; micalg="sha-256"; protocol="application/pkcs7-signature";
	boundary="=-r0rpy3iN0pY+V1N+ur8g"
User-Agent: Evolution 3.44.4-0ubuntu2 
MIME-Version: 1.0
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html


--=-r0rpy3iN0pY+V1N+ur8g
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Fri, 2023-10-20 at 15:29 +0200, Roger Pau Monn=C3=A9 wrote:
> On Fri, Oct 20, 2023 at 02:25:35PM +0100, Andrew Cooper wrote:
> > On 20/10/2023 11:29 am, David Woodhouse wrote:
> > > On Fri, 2023-10-20 at 11:14 +0100, Andrew Cooper wrote:
> > > > On 19/10/2023 5:21 pm, David Woodhouse wrote:
> > > > > From: David Woodhouse <dwmw@amazon.co.uk>
> > > > >=20
> > > > > In shim mode there is no hardware_domain. Dereferencing the point=
er
> > > > > doesn't end well.
> > > > >=20
> > > > > Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
> > > > > ---
> > > > > This is about as far as I got in my abortive attempt to use the P=
V shim
> > > > > without an actual PV console being provided by the HVM hosting
> > > > > environment. It still doesn't pass the guest's console through to
> > > > > serial; that only seems to shim to an actual PV console.
> > > > There's no such thing as a Xen VM without a PV console.
> > > Huh? There are literally millions of them.
> >=20
> > I'm very prepared to believe there are millions which don't overtly
> > malfunction when you don't fill in the HVM Params.=C2=A0
> >=20
> > Which is very different from saying "there's a way in the Xen guest ABI
> > to express 'you don't have a PV console' ".
>=20
> FWIW, Linux assumes that either the console page or the event channel
> being 0 implies no console available [0], so I guess that's the ABI
> now.

Or if the HVMOP_get_param call returns an error.

> Roger.
>=20
> [0] https://elixir.bootlin.com/linux/latest/source/drivers/tty/hvc/hvc_xe=
n.c#L258

I'm not convinced I believe what the comment says there about evtchn 0
being theoretically valid. I don't believe zero is a valid evtchn#, is
it?

--=-r0rpy3iN0pY+V1N+ur8g
Content-Type: application/pkcs7-signature; name="smime.p7s"
Content-Disposition: attachment; filename="smime.p7s"
Content-Transfer-Encoding: base64

MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgEFADCABgkqhkiG9w0BBwEAAKCCEkQw
ggYQMIID+KADAgECAhBNlCwQ1DvglAnFgS06KwZPMA0GCSqGSIb3DQEBDAUAMIGIMQswCQYDVQQG
EwJVUzETMBEGA1UECBMKTmV3IEplcnNleTEUMBIGA1UEBxMLSmVyc2V5IENpdHkxHjAcBgNVBAoT
FVRoZSBVU0VSVFJVU1QgTmV0d29yazEuMCwGA1UEAxMlVVNFUlRydXN0IFJTQSBDZXJ0aWZpY2F0
aW9uIEF1dGhvcml0eTAeFw0xODExMDIwMDAwMDBaFw0zMDEyMzEyMzU5NTlaMIGWMQswCQYDVQQG
EwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYD
VQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50
aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC
AQEAyjztlApB/975Rrno1jvm2pK/KxBOqhq8gr2+JhwpKirSzZxQgT9tlC7zl6hn1fXjSo5MqXUf
ItMltrMaXqcESJuK8dtK56NCSrq4iDKaKq9NxOXFmqXX2zN8HHGjQ2b2Xv0v1L5Nk1MQPKA19xeW
QcpGEGFUUd0kN+oHox+L9aV1rjfNiCj3bJk6kJaOPabPi2503nn/ITX5e8WfPnGw4VuZ79Khj1YB
rf24k5Ee1sLTHsLtpiK9OjG4iQRBdq6Z/TlVx/hGAez5h36bBJMxqdHLpdwIUkTqT8se3ed0PewD
ch/8kHPo5fZl5u1B0ecpq/sDN/5sCG52Ds+QU5O5EwIDAQABo4IBZDCCAWAwHwYDVR0jBBgwFoAU
U3m/WqorSs9UgOHYm8Cd8rIDZsswHQYDVR0OBBYEFAnA8vwL2pTbX/4r36iZQs/J4K0AMA4GA1Ud
DwEB/wQEAwIBhjASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEF
BQcDBDARBgNVHSAECjAIMAYGBFUdIAAwUAYDVR0fBEkwRzBFoEOgQYY/aHR0cDovL2NybC51c2Vy
dHJ1c3QuY29tL1VTRVJUcnVzdFJTQUNlcnRpZmljYXRpb25BdXRob3JpdHkuY3JsMHYGCCsGAQUF
BwEBBGowaDA/BggrBgEFBQcwAoYzaHR0cDovL2NydC51c2VydHJ1c3QuY29tL1VTRVJUcnVzdFJT
QUFkZFRydXN0Q0EuY3J0MCUGCCsGAQUFBzABhhlodHRwOi8vb2NzcC51c2VydHJ1c3QuY29tMA0G
CSqGSIb3DQEBDAUAA4ICAQBBRHUAqznCFfXejpVtMnFojADdF9d6HBA4kMjjsb0XMZHztuOCtKF+
xswhh2GqkW5JQrM8zVlU+A2VP72Ky2nlRA1GwmIPgou74TZ/XTarHG8zdMSgaDrkVYzz1g3nIVO9
IHk96VwsacIvBF8JfqIs+8aWH2PfSUrNxP6Ys7U0sZYx4rXD6+cqFq/ZW5BUfClN/rhk2ddQXyn7
kkmka2RQb9d90nmNHdgKrwfQ49mQ2hWQNDkJJIXwKjYA6VUR/fZUFeCUisdDe/0ABLTI+jheXUV1
eoYV7lNwNBKpeHdNuO6Aacb533JlfeUHxvBz9OfYWUiXu09sMAviM11Q0DuMZ5760CdO2VnpsXP4
KxaYIhvqPqUMWqRdWyn7crItNkZeroXaecG03i3mM7dkiPaCkgocBg0EBYsbZDZ8bsG3a08LwEsL
1Ygz3SBsyECa0waq4hOf/Z85F2w2ZpXfP+w8q4ifwO90SGZZV+HR/Jh6rEaVPDRF/CEGVqR1hiuQ
OZ1YL5ezMTX0ZSLwrymUE0pwi/KDaiYB15uswgeIAcA6JzPFf9pLkAFFWs1QNyN++niFhsM47qod
x/PL+5jR87myx5uYdBEQkkDc+lKB1Wct6ucXqm2EmsaQ0M95QjTmy+rDWjkDYdw3Ms6mSWE3Bn7i
5ZgtwCLXgAIe5W8mybM2JzCCBhQwggT8oAMCAQICEQDGvhmWZ0DEAx0oURL6O6l+MA0GCSqGSIb3
DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYD
VQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28g
UlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMB4XDTIyMDEwNzAw
MDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJARYTZHdtdzJAaW5mcmFkZWFkLm9y
ZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3GpC2bomUqk+91wLYBzDMcCj5C9m6
oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZHh7htyAkWYVoFsFPrwHounto8xTsy
SSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT9YgcBqKCo65pTFmOnR/VVbjJk4K2
xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNjP+qDrh0db7PAjO1D4d5ftfrsf+kd
RR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy2U+eITZ5LLE5s45mX2oPFknWqxBo
bQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3BgBEmfsYWlBXO8rVXfvPgLs32VdV
NZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/7auNVRmPB3v5SWEsH8xi4Bez2V9U
KxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmdlFYhAflWKQ03Ufiu8t3iBE3VJbc2
5oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9aelIl6vtbhMA+l0nfrsORMa4kobqQ5
C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMBAAGjggHMMIIByDAfBgNVHSMEGDAW
gBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeDMcimo0oz8o1R1Nver3ZVpSkwDgYD
VR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYwFAYIKwYBBQUHAwQGCCsGAQUFBwMC
MEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYBBQUHAgEWF2h0dHBzOi8vc2VjdGln
by5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9jcmwuc2VjdGlnby5jb20vU2VjdGln
b1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1haWxDQS5jcmwwgYoGCCsGAQUFBwEB
BH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdvLmNvbS9TZWN0aWdvUlNBQ2xpZW50
QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAjBggrBgEFBQcwAYYXaHR0cDovL29j
c3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5mcmFkZWFkLm9yZzANBgkqhkiG9w0B
AQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQvQ/fzPXmtR9t54rpmI2TfyvcKgOXp
qa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvIlSPrzIB4Z2wyIGQpaPLlYflrrVFK
v9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9ChWFfgSXvrWDZspnU3Gjw/rMHrGnql
Htlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0whpBtXdyDjzBtQTaZJ7zTT/vlehc/
tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9IzCCBhQwggT8oAMCAQICEQDGvhmW
Z0DEAx0oURL6O6l+MA0GCSqGSIb3DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3Jl
YXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0
ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJl
IEVtYWlsIENBMB4XDTIyMDEwNzAwMDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJ
ARYTZHdtdzJAaW5mcmFkZWFkLm9yZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3
GpC2bomUqk+91wLYBzDMcCj5C9m6oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZH
h7htyAkWYVoFsFPrwHounto8xTsySSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT
9YgcBqKCo65pTFmOnR/VVbjJk4K2xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNj
P+qDrh0db7PAjO1D4d5ftfrsf+kdRR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy
2U+eITZ5LLE5s45mX2oPFknWqxBobQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3
BgBEmfsYWlBXO8rVXfvPgLs32VdVNZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/
7auNVRmPB3v5SWEsH8xi4Bez2V9UKxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmd
lFYhAflWKQ03Ufiu8t3iBE3VJbc25oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9ae
lIl6vtbhMA+l0nfrsORMa4kobqQ5C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMB
AAGjggHMMIIByDAfBgNVHSMEGDAWgBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeD
Mcimo0oz8o1R1Nver3ZVpSkwDgYDVR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYw
FAYIKwYBBQUHAwQGCCsGAQUFBwMCMEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYB
BQUHAgEWF2h0dHBzOi8vc2VjdGlnby5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9j
cmwuc2VjdGlnby5jb20vU2VjdGlnb1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1h
aWxDQS5jcmwwgYoGCCsGAQUFBwEBBH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdv
LmNvbS9TZWN0aWdvUlNBQ2xpZW50QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAj
BggrBgEFBQcwAYYXaHR0cDovL29jc3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5m
cmFkZWFkLm9yZzANBgkqhkiG9w0BAQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQv
Q/fzPXmtR9t54rpmI2TfyvcKgOXpqa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvI
lSPrzIB4Z2wyIGQpaPLlYflrrVFKv9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9Ch
WFfgSXvrWDZspnU3Gjw/rMHrGnqlHtlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0w
hpBtXdyDjzBtQTaZJ7zTT/vlehc/tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9
IzGCBMcwggTDAgEBMIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVz
dGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMT
NVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEA
xr4ZlmdAxAMdKFES+jupfjANBglghkgBZQMEAgEFAKCCAeswGAYJKoZIhvcNAQkDMQsGCSqGSIb3
DQEHATAcBgkqhkiG9w0BCQUxDxcNMjMxMDIwMTMzNzU3WjAvBgkqhkiG9w0BCQQxIgQg7E332BO2
qckzFl3P+5wVM+fyvqkWtxP3yRFpT22oNwAwgb0GCSsGAQQBgjcQBDGBrzCBrDCBljELMAkGA1UE
BhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEYMBYG
A1UEChMPU2VjdGlnbyBMaW1pdGVkMT4wPAYDVQQDEzVTZWN0aWdvIFJTQSBDbGllbnQgQXV0aGVu
dGljYXRpb24gYW5kIFNlY3VyZSBFbWFpbCBDQQIRAMa+GZZnQMQDHShREvo7qX4wgb8GCyqGSIb3
DQEJEAILMYGvoIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVy
MRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNl
Y3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEAxr4Z
lmdAxAMdKFES+jupfjANBgkqhkiG9w0BAQEFAASCAgCEkJdaVltfrpZIdV8y3yT+2XMbNxo3qws8
6qfp0Qpxq2Jeosy2r8aqOzQcrKeWNxPMogzUkTmC9zoWkAyFCwz/C/pncKwTEgSnfbGSsY+RjRXN
dtA2zPKfKgHCW+qz5wrq01tgf6oSO/cvLO75odlVadH+ipajbPlIVH+YO8pfeYsckd8KcRklNPzJ
fhj8qP04KAOuPvriQtThl1YcoCL/wNCcsmjN13rb1k64fZKbCFNZdsi4QZbQL/+pVOP7tWhJSZHR
wSlr/VYmcMowJ9fOyZREuN+3Yy1KsEbh634dWNnUv26dvdDqaFTxn9X6xoPLCJSZPz/gidDMg+dq
PGdmweoH8s+ekg0m5SR2m8WEPk+7OIYzhFA625fjxEF0DthotKSgg5lY97po5qQ+eVepWy0HH5zW
3Z/mS+5W1JPPzUSqwOgONfskKy32njo6+vcI++aEGZaiIvMEpWN1gL60b2wTtufIV49Nz6u4ag/U
frha486gRMYydNKLJltPTJtYrdjhDYNumuhTL4ka9YvS/I86IoCF3UJ+rnAQ3iBWWGcVC5o4+bT9
3gl/U3Zah9ityFhC+MiLUUSM3r3co1hqTPQm0UxNFDkfHYaflpjPXAW7laNBIhjx8BQOrQh6TsIg
5eLZhHgT6pDpObbQzYlWgSe0mJP8KHI7fOtAWdeRaQAAAAAAAA==


--=-r0rpy3iN0pY+V1N+ur8g--


From xen-devel-bounces@lists.xenproject.org Fri Oct 20 13:52:43 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 13:52:43 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619797.965457 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtpvY-0007U5-PF; Fri, 20 Oct 2023 13:52:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619797.965457; Fri, 20 Oct 2023 13:52: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 1qtpvY-0007Ty-MZ; Fri, 20 Oct 2023 13:52:36 +0000
Received: by outflank-mailman (input) for mailman id 619797;
 Fri, 20 Oct 2023 13:52: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=mE5s=GC=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qtpvX-0007Tn-QB
 for xen-devel@lists.xenproject.org; Fri, 20 Oct 2023 13:52: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 eafeda73-6f4f-11ee-9b0e-b553b5be7939;
 Fri, 20 Oct 2023 15:52:33 +0200 (CEST)
Received: by mail-ej1-x636.google.com with SMTP id
 a640c23a62f3a-9b1ebc80d0aso132318866b.0
 for <xen-devel@lists.xenproject.org>; Fri, 20 Oct 2023 06:52:33 -0700 (PDT)
Received: from [192.168.201.133] ([94.75.70.14])
 by smtp.gmail.com with ESMTPSA id
 f20-20020a17090660d400b009a1c05bd672sm1519766ejk.127.2023.10.20.06.52.31
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Fri, 20 Oct 2023 06:52: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: eafeda73-6f4f-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1697809952; x=1698414752; 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=NyC4slBPsVHFA4BVqfJBMjEmAIlbb68sj7NOG4bF0+c=;
        b=JFV12Aw71OB2h8L8vnTbiv0nToLKDCn0Bk4majSy4kxkYzN/q6fcOLnJdiB/zSq2ZT
         /PXf7NTxj8q6oOaIy4KrH2FRA0cV2k9Bs3ryvn0M5R63+ePQKzj3WrtgC7pCwDHykAyH
         7andEU9SIx0Sp3w0S5xxCLD3gVS6BkZEJKlWB/HS4TW2KYbgbhCw9kOyR3ekGICsjD1J
         qrCJKfU8DPTgg+kOYH5r75BYA7ZhQy6aqsvi6mUHaDItX5iTaYeurB0IJUYYcpV+aUnx
         tva+MYW5L3VXXLveNXXzGihZ8G+GZkX5N5IHaDHt0hmOGmVAOJoUgM/JgCx/1vSoKOd3
         9A9w==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697809952; x=1698414752;
        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=NyC4slBPsVHFA4BVqfJBMjEmAIlbb68sj7NOG4bF0+c=;
        b=G7Fi9ErrQUeKmR6fzm647JXI3a6Yo8sB83AahikG51whnF47D/OPpR8KZkTpxLUYBn
         /AdqF13tPsefa2+aNF9sfLg8R1SDNVaE+EV/kEcm2pdVWJTXJWqpTA7qRo88k6C1AhrW
         sYl9du5O/0qcPb4ZrRu27L4kgtftK9NZej2J7Ym26D6SiwMvZ2b/kjEcQeddjggh8QfF
         43QAEO494b/cNI4OSg51VRkO3yv9gp7TTq9As+QAtiX75eLKBiSG0acFFWoma9E439io
         XEZPy2d3JT9+YcCgjB8dobqqs8EEQHp1Rhjr9SsM6RibHmSCkTCeIVh7LB4r3jVKDUNK
         mbNQ==
X-Gm-Message-State: AOJu0Yx/IQ0MEvsrtkJs/1JWDhGEv2qVcO3otHmEqGsdlpXHg6BbgVDG
	zdruKbhzrKG/wnZE5lFWwKk=
X-Google-Smtp-Source: AGHT+IHBw6l4eo5Mj86YHiMGUQuoyg2D40cOz+uApfy3y5uN6ijwBFK1rkEdhssVh9FMrHjCrflyNg==
X-Received: by 2002:a17:906:fe4a:b0:9c3:b3cb:29b2 with SMTP id wz10-20020a170906fe4a00b009c3b3cb29b2mr1483819ejb.42.1697809952363;
        Fri, 20 Oct 2023 06:52:32 -0700 (PDT)
Message-ID: <ae6b419eac6eaefd65aab36b69e8926032983110.camel@gmail.com>
Subject: Re: [PATCH v7 0/2] xen/riscv: introduce identity mapping
From: Oleksii <oleksii.kurochko@gmail.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>, Bob Eshleman
 <bobbyeshleman@gmail.com>, Alistair Francis <alistair.francis@wdc.com>, 
 Connor Davis <connojdavis@gmail.com>, xen-devel@lists.xenproject.org,
 JulienGrall <julien@xen.org>
Date: Fri, 20 Oct 2023 16:52:30 +0300
In-Reply-To: <059882ea-3e42-f74d-83e6-2f809d0993cb@suse.com>
References: <cover.1691507564.git.oleksii.kurochko@gmail.com>
	 <059882ea-3e42-f74d-83e6-2f809d0993cb@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-10-19 at 12:32 +0200, Jan Beulich wrote:
> On 08.08.2023 17:14, 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@=
citrix.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 id=
entity mapping removing.
> > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0- introduce IDENT_AREA_=
SIZE.
> > =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_INI=
TIAL_COUNT define.
> > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0- update the comment ab=
ove PGTBL_INITIAL_COUNT.
> > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0- update prototype of c=
alc_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 a=
s static.
> > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0- save returned value o=
f 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 t=
o 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>
> > was 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 =
PGTBL_INITIAL_COUNT
> > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0- update the commit mes=
sage 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 i=
n 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 =
then
> > page size
> > =C2=A0=C2=A0=C2=A0=C2=A0 ( entire Xen is 1:1 mapped so there is no need=
 for 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
> Acked-by: Jan Beulich <jbeulich@suse.com>
Thanks for Ack.

Should be the patch series re-send with Ack after the end of code
freeze?

~ Oleksii


From xen-devel-bounces@lists.xenproject.org Fri Oct 20 13:54:20 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 13:54:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619799.965467 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtpxD-0008E2-5F; Fri, 20 Oct 2023 13:54:19 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619799.965467; Fri, 20 Oct 2023 13: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 1qtpxD-0008Dv-1V; Fri, 20 Oct 2023 13:54:19 +0000
Received: by outflank-mailman (input) for mailman id 619799;
 Fri, 20 Oct 2023 13:54: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=8lwx=GC=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qtpxB-0008Dp-3W
 for xen-devel@lists.xenproject.org; Fri, 20 Oct 2023 13:54:17 +0000
Received: from EUR01-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur01on2071.outbound.protection.outlook.com [40.107.13.71])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 28420b04-6f50-11ee-98d5-6d05b1d4d9a1;
 Fri, 20 Oct 2023 15:54:16 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DBBPR04MB7756.eurprd04.prod.outlook.com (2603:10a6:10:1e3::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.8; Fri, 20 Oct
 2023 13:53:47 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d9c0:d907:4d2d:15b3%7]) with mapi id 15.20.6907.022; Fri, 20 Oct 2023
 13:53: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: 28420b04-6f50-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=UtX6k4an7tlf02kakp9c9/kq4PI/85+Ss9RQT//XQYpShL1CJHxv/q06kDGzMLpqQd9WArYq0Qif0VZWn++0ZeKDdU7lOTAxV74TxCJB3ZX6z04+T/QaBJUOp1M690fzvbHtnLeoam4RuM8nOwA+5ORkU7uDsK4N8SwJDniqIIwjJwIee+CHGSCmKTiz0ENRmcU0Kn23AqA2z+NzeHhpxgrFLWQW4IZxMIhZmtB2/+tyi+btpG0HjzJCgr2AboGFJetKqtHBnriN7BEM2H0uPtgqvx3gE/1S4cJciun4mn5ffaLZ3LlCjZDhJ0KQ9rHujIyfmm39zX1n5rKWLDkxig==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=7h80mR4IclP8nbrUI/5w0VojkWbxSLN6CE2lJLBXgHs=;
 b=JmY47kTsZmF3JrKZDJZ14QsZb+K6YpUyM9jICucTC6aWmIY1LMAHDItauc3LilWaIENNQL3Z0YsnFI+qS+/iCm4gApL0sPlQp/xj/yjBSEY3iytU8xWSHqHNMSXT9VTTuNAsCYjzSxCG+eAlsmt2ZiEQFzlpNMT9M+YVxFRTNz1eOfHzeMMVtQ7SW4TQ78JkWbyIF0cUwvZ5hsqgAbe6bn1/cTAgbHBlXFT6Kaq7ahFNbLA+Dw6dRvzKCD45WBbWsSNUPJahc+4xPepbyI1uJOuifhApsVYvyEA9+OrefKUX1sqd3Z+Ozu2XGbxspn/lqX3vkdTAg8kGtLweVkrcZw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=7h80mR4IclP8nbrUI/5w0VojkWbxSLN6CE2lJLBXgHs=;
 b=Py4OehQtBTrcR8eRFrGQCmLqK7Myvs0TGkM4fvodnkvyOwOcRhEiqWakHJ6kcdTzgGfAExQUKM/JA09xe/fz/TSG4l/TrlRkkScdXd3ueM+/Xsv6rFkrPTRvuIDfnMqXwsrw/MJZQoR81hOhX7hvUbDmejEzuQA48ndkQqMxtR8XzXW97BxnTrBys2NsI1qO1KzUkolxnReYjthK+ywwbKzAlH5YbPIOhA6UVERXT3Y5Nc6C/Z4hNYtu0/xzRMuVnxq6ew2YkIhbxgeuJEYAeNxUK1+MrdwphbTG85a3VziwRQadyOZYVQBwW+iLnmwV2qrdSLiJ4CcVQRVHdTxJhg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <8e9ab120-11a3-40fb-fe3b-165b3b2ef1b3@suse.com>
Date: Fri, 20 Oct 2023 15:53: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 v7 0/2] xen/riscv: introduce identity mapping
Content-Language: en-US
To: Oleksii <oleksii.kurochko@gmail.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 Bob Eshleman <bobbyeshleman@gmail.com>,
 Alistair Francis <alistair.francis@wdc.com>,
 Connor Davis <connojdavis@gmail.com>, xen-devel@lists.xenproject.org,
 JulienGrall <julien@xen.org>
References: <cover.1691507564.git.oleksii.kurochko@gmail.com>
 <059882ea-3e42-f74d-83e6-2f809d0993cb@suse.com>
 <ae6b419eac6eaefd65aab36b69e8926032983110.camel@gmail.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <ae6b419eac6eaefd65aab36b69e8926032983110.camel@gmail.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR3P281CA0008.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:1d::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_|DBBPR04MB7756:EE_
X-MS-Office365-Filtering-Correlation-Id: 06ce3763-27f7-49a7-7886-08dbd173fb25
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	0HBB/3vCFc77iywOBN65hnt1MZQLSvpUHpKTBm5UsjR5F/16rQudh65PuUdRvKtiQi9L7hI07p2e9xzkEDyOGX41C54P+hLyGgBiYj4z0F0dAY5IneSDtSo3Ya9ctuH4Kg5lT75avnVY+h3StyFqwu6+HmYWVFiiRXgU/hhQlhk55jVQfatO60FKHwyNaxsl1EY2OxwM1uZA3iHqWIALKljWqBMrj9dPaeRlgdRXjiPc19xcH05YxxFmX7v2VBjMMs2IhiNBRL+73/XcpKHWE47RSi3GNr9QrM6pkKBM9jdOcrgn3RIzPRiIZDYNlxQJlExHDmcUoab3U7YXCuurGEIAvSsaOLKGVNxd8FjUz3R78SFz7bP0xWeOMzeZ0Sc+mJ9lQmanYV23N5TSoZUNgfXFF7Gs5hhbo2olv41R94RNluzUlaf9uT1mWfWQ5jMFCxkTuFv8mArTbNaOv1kMDj9FfVohZckDcnNr37j+Qp4NNrTwKx5/bxrINJTCUJ085xoX4BRZY+ZOwE+NKW0gtcvvotg0Hqc0G0GJF7UvGYCEY/bXkaz9XA46LVfXjupkZa0aN4n8agVyt5S3uqn6jmYmMPxzFpY2i8A61Vos9fkaVn1Zv4BGT5ky2hUfbnGfeI5hhFYGPN1n8796rPG6BA==
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)(396003)(39860400002)(230922051799003)(64100799003)(186009)(1800799009)(451199024)(31686004)(41300700001)(5660300002)(316002)(54906003)(6916009)(478600001)(66946007)(66476007)(6486002)(66556008)(4744005)(4001150100001)(6512007)(53546011)(2906002)(4326008)(8936002)(8676002)(6506007)(86362001)(38100700002)(26005)(31696002)(36756003)(2616005)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?cEdTKzQwcXY3SjZVcHFWTjUzZDVaRHhZM2JIT0NwUDRlMjlXWklNelRUL2Nk?=
 =?utf-8?B?a2J4YTgrZTdwOGYyOFJiVkdCalpDNjNVNXNnOXpKT05KV3NRWlF6bTV4UTdF?=
 =?utf-8?B?cVBQdUlic1QvSENxTUdnS1ZsZ1NuL3dhbUEzS2l1SFR4OGp5VGhDcXhkY1VG?=
 =?utf-8?B?UGNva25NZitqdUxNbW5oWE9ZbXdidmpWK2dUMnk4bFhFL0g0SjQwVXhLcjhK?=
 =?utf-8?B?SzJvRDlsZWpsYTc4NWRGT3pueUdqWjJ4RWJHZlZtVE96MlVvSUFmZjFlTzVS?=
 =?utf-8?B?UlBpU1VQWFFXdHA5YkFYUi9jb08xeHorYVFDR29rZWJkZmdmLzE2Y05wQVhS?=
 =?utf-8?B?dGFVUWhzL295RlFOZXhxdlZFZElXa1RNdWg2UUF0NWhwcmhGRllrUnhVVDVk?=
 =?utf-8?B?NlpjMkpzaWR1UktUMzJXS0pRcXpMakJzV1JXeDBTT0xvWEluV0l0NjdwdWFY?=
 =?utf-8?B?S25lcHJNTlJnUzFqVXhyVitGTHF5UU5MUjJ0clBjMlk1WUp5M3lVY0xEbW95?=
 =?utf-8?B?RGpOVXVQWDVJRWYyOGZ1Vm5EZ3hLSDg2bmVmYjdlQmVyS1VMSEVGb1o1Sm1t?=
 =?utf-8?B?Q0lrNXhCQWlLa2xwTXl2ZzFEeXlvb2dpUXVrUjRBL3JOaFVRSGVuWGUzK1Zv?=
 =?utf-8?B?NDI2YngrY0lMUUEvUCtIT3BDS2lYcWM4MHZtNFV6OUlnZVowZU1rOHRJRkMw?=
 =?utf-8?B?UnZnZ0tKbzA3L2N2WmJWNVdqNE43ckVkUEgxNEZ4UndLNXlqQi9iVkZNU1Vn?=
 =?utf-8?B?TzJWRjBIM1BUNlRLOFRSTUE0WmMwMys0d3B1ZG9VQktQZzNQTWlaUjJGMlJj?=
 =?utf-8?B?QTM1V2I0VkFVTWRML2k0dDdxTTFoZy82bHlKZmR4NkJoWGhaM2tVNFVYSVpp?=
 =?utf-8?B?MXBBVDlwNE10dkZteFJ5TnU1NnVtOUFYbUl5UmNKbGM2Vi9Hck05Y3o1aDRJ?=
 =?utf-8?B?YU1nT3UwejB1bXJYWXVzeHVCeVFjVnVGSkpqalZSMTd2UXJEb0hmTVNhSmVF?=
 =?utf-8?B?elF5RWlDNXZLSGZoTU1qWkZja3FmdkhmRmZrcG5KWE9QSS94TVg0VVBpVHlC?=
 =?utf-8?B?OXVGT0VBSnJsSS9OTTZFdHBpdWFVcy82ODZLSjJuSkM0Z2xoeTZtYW1wYzBB?=
 =?utf-8?B?aGRBZTYrTFprYWRIcVRteTQ0RStrSmZzUWUxWmRWUzNKSFk1dG5zdzlxMDR2?=
 =?utf-8?B?bjZ5ZTkzeFBSQ0FleUo1NmNOV3dHbmtPZVNDMFBLWmZPbFRzSlh3R3Y4Yndu?=
 =?utf-8?B?aEYwMVBJWHlUVVZXbDdpRHdSUjhhV0NYTGFBV0NoSUJJcEd1V1RxWlVIdlQ2?=
 =?utf-8?B?azRDRnBROFhxVmpyTmN4QzdBejlCSStHaW1iRk54elRRdlgzWElZSU82eFIv?=
 =?utf-8?B?U2I0UEErM0hBa1Rtdy9CYXRKZ0xiT3BIblFOR0Y3U2RKYjRUSlUzeWNrTXl6?=
 =?utf-8?B?azA3TDRWVmloc1FpaWNrb3djcEdHbkIwTG5KZWg5N0Q2a1BueWdaZlR6UmND?=
 =?utf-8?B?WFhOekQ0aVAzWDQ2c3ZicHVGVFQrRi9UeFNUdnlwWmVhSDdXeUEyOTNpN2tO?=
 =?utf-8?B?UisyMlF5UElvbjRwNUd1cUN4MWtIMkRYaTVzSVVPUzBDTUMxV3JOUlUyeTAw?=
 =?utf-8?B?N3crUkhqYU1OcUVtcXh5VjZxWTZiWVd3K2tZOVJLdzRuUlFNMlk5bW9hU3dv?=
 =?utf-8?B?ZlA5RE1Fbk5JQnh3YTVCMGpJcUY5by92NnJva21VeXVBR1M5VmFHVFBOOGhB?=
 =?utf-8?B?Y2ZPS0ZlcmVsRWZNWlEyYVMxY2U0NTdJZlJKQnU3SnBEbk5HVHdZbXE5aHha?=
 =?utf-8?B?MlM3VHhMTjZ6bkgvY0ZxRFhQN3kwcW1WYThsMTlTUEhuZTdzSmJSQlp3Qjk5?=
 =?utf-8?B?MUhOSGMwR1dEbEMvT0FEYzVsampnakpKNUZyaVRwK2RTKzdtdXVsMUpiZWJV?=
 =?utf-8?B?SUxoTHVRU1l1TnkwajZ4aTd6Qkh6RHAydXpIdWpPa0dMRGR4OEd4bzBLRERK?=
 =?utf-8?B?SjRZdFlKdlRsWU95QVZMQzJLMkNZUjFQWmdSYWtGaFNNYjUwUHRUZ29VK0Mz?=
 =?utf-8?B?bXhqUC9GNHBRL3FQaDVPZ2V4b1g4WEpMVmlZMHZKZm5KS00rUnl5RlVGZ0pR?=
 =?utf-8?Q?BwxuYtwIx+44ltFxk50C7YeSJ?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 06ce3763-27f7-49a7-7886-08dbd173fb25
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Oct 2023 13:53:46.9097
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: M3h1SZAF+zeGTV2DWbZ4YCVRqxKhRQPFkIoi+EBvuVIzDHPeHbS7frpz/zwjIXjhf9DLG9rWDXzxxXUVGLcffQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBBPR04MB7756

On 20.10.2023 15:52, Oleksii wrote:
> On Thu, 2023-10-19 at 12:32 +0200, Jan Beulich wrote:
>> On 08.08.2023 17:14, Oleksii Kurochko wrote:
>>> Oleksii Kurochko (2):
>>>   xen/riscv: introduce function for physical offset calculation
>>>   xen/riscv: introduce identity mapping
>>
>> Acked-by: Jan Beulich <jbeulich@suse.com>
> Thanks for Ack.
> 
> Should be the patch series re-send with Ack after the end of code
> freeze?

If what was sent still applies, I don't think there's a need.

Jan


From xen-devel-bounces@lists.xenproject.org Fri Oct 20 14:20:32 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 14:20:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619804.965477 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtqMK-0006Pf-8V; Fri, 20 Oct 2023 14:20:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619804.965477; Fri, 20 Oct 2023 14:20: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 1qtqMK-0006PY-4w; Fri, 20 Oct 2023 14:20:16 +0000
Received: by outflank-mailman (input) for mailman id 619804;
 Fri, 20 Oct 2023 14:20: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 1qtqMJ-0006PO-4T; Fri, 20 Oct 2023 14:20: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 1qtqMI-0004D4-Up; Fri, 20 Oct 2023 14:20: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 1qtqMI-00022F-O0; Fri, 20 Oct 2023 14:20:14 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qtqMI-0003BQ-Ne; Fri, 20 Oct 2023 14:20: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=pDpuzkpjZwSVnMlqIQrQL9J+4KljNOylQgj9OWKUsiA=; b=2UfqFCGikIisg52RCXIuLJP2EW
	EsY6ZtDONKB01lBXpHVOhpzT+vqjyOSNiN5Kc2ZIwtBMI0SjJ/3NJRxrRR+6D9t+0irLTPRmI6wIF
	aRmwZPe3Ah8GOu9vsO4WR2u7m4kJLTzE1YLPzYL5VbD27eGa0/AJ6Z9+eEWGvegkzub0=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183442-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 183442: 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=8a5ef972bab3ad57bf017a42601943aa05811536
X-Osstest-Versions-That:
    xen=474fc7d3c6525e209bd2fe1e6ef0bbb34de86bb4
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 20 Oct 2023 14:20:14 +0000

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

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                  8a5ef972bab3ad57bf017a42601943aa05811536
baseline version:
 xen                  474fc7d3c6525e209bd2fe1e6ef0bbb34de86bb4

Last test of basis   183436  2023-10-19 22:02:05 Z    0 days
Testing same since   183442  2023-10-20 11:00:27 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.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
   474fc7d3c6..8a5ef972ba  8a5ef972bab3ad57bf017a42601943aa05811536 -> smoke


From xen-devel-bounces@lists.xenproject.org Fri Oct 20 14:50:41 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 14:50:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619809.965487 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtqpa-0004I9-EB; Fri, 20 Oct 2023 14:50:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619809.965487; Fri, 20 Oct 2023 14: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 1qtqpa-0004I2-BR; Fri, 20 Oct 2023 14:50:30 +0000
Received: by outflank-mailman (input) for mailman id 619809;
 Fri, 20 Oct 2023 14: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=nVdZ=GC=gmail.com=xadimgnik@srs-se1.protection.inumbo.net>)
 id 1qtqpZ-0004Hq-G7
 for xen-devel@lists.xenproject.org; Fri, 20 Oct 2023 14:50:29 +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 00b4fa49-6f58-11ee-9b0e-b553b5be7939;
 Fri, 20 Oct 2023 16:50:25 +0200 (CEST)
Received: by mail-wm1-x32b.google.com with SMTP id
 5b1f17b1804b1-408002b5b9fso7403415e9.3
 for <xen-devel@lists.xenproject.org>; Fri, 20 Oct 2023 07:50:25 -0700 (PDT)
Received: from [192.168.13.103] (54-240-197-224.amazon.com. [54.240.197.224])
 by smtp.gmail.com with ESMTPSA id
 o12-20020a05600c4fcc00b0040775501256sm2342656wmq.16.2023.10.20.07.50.24
 for <xen-devel@lists.xenproject.org>
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Fri, 20 Oct 2023 07:50: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: 00b4fa49-6f58-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1697813425; x=1698418225; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:from:content-language
         :references:to:subject:reply-to:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=1jRwNvQ3o6tcreojDyKypiRUSOV5yfFCWNDl/FiZPCs=;
        b=aDBPeIEA8QXqRWegQ1Eydru8ieihpyvSX3unBhySyfWrjYCRlkrzje+3SBTmtrMhwu
         iKMkU2CkOfhfCzcSGQ24B+EUKhiyjInx3O5RMB+tlr9mhMs4QUGvwvbsqeT44znGywAu
         OUAuLJdOPAuSmHsEEisO7h7JmEkPmf1vZeB8XmIO26HuDaUhVptD+EKhPFabLjWQbLAj
         ygs4TEBjmsOO4NTcXU9F04lTWvabmQ+5JJOtIX2b4vFY5PfPlxUcgBzoJ2wiqv5G4X4m
         rLouocdvFFyvOk0CfErQ0i9BLJhnwK4e9WJ0taGWIu6pKlOMHsa5l2Sr0vTvPEP2yzWs
         Vgzg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697813425; x=1698418225;
        h=content-transfer-encoding:in-reply-to:from:content-language
         :references:to:subject:reply-to:user-agent:mime-version:date
         :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=1jRwNvQ3o6tcreojDyKypiRUSOV5yfFCWNDl/FiZPCs=;
        b=AW5NXVsCnPRhIfzcNVAbpTUR9pZz59TU1GVNBoQJKqD0QkalOadEvjC1S5ddk4efaM
         Hr7tDQFruzCx1Ma2r8L0WvytLqXQZtqbI4SQTwhKNmYxw2MT9S0hGY6WuhA79VpCE4/z
         jCxGIzYif3v97IdT/fkrkUUZQqoGDuxw4/QZdljLnsQ9ORSEg3eRfgVN81IVvOqOpaHg
         eaU8T+G/C2CgUQfDnxHYABqJ5kpEyV/7FhEU3o1hCVSujiWYsPdBKzJR72oozw7G/jSs
         1ZnrVAODuuKLn51wiG3/SwgrwHJt/W1SRpxz3RFWwaw/e1X7QngbI3Z7ETx2hbSyFHJ7
         TPfQ==
X-Gm-Message-State: AOJu0YwODAO5Joz/2zw9L8bFduWAODzpypOVFFN70gDEJzwnxzIPIsF3
	QmM1Z6jViHxmYK3GLrZ2NGZJ0sd8Z0SdXDLL
X-Google-Smtp-Source: AGHT+IHjO4Aw9nXybugHdrEZpZjqso7sqE90kmQFIek/t3HWdPLur76S/E/sl2K05C1pzhFbYZT0Gg==
X-Received: by 2002:a05:600c:4506:b0:405:dbe2:df10 with SMTP id t6-20020a05600c450600b00405dbe2df10mr1678680wmo.35.1697813424777;
        Fri, 20 Oct 2023 07:50:24 -0700 (PDT)
Message-ID: <0c2f1fd0-22d2-419b-8fc3-4788563fe9f2@gmail.com>
Date: Fri, 20 Oct 2023 15:50:23 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Reply-To: paul@xen.org
Subject: Re: [PATCH] ns16550c: avoid crash in ns16550_endboot in PV shim mode
To: xen-devel@lists.xenproject.org
References: <de07d56188f13e222ddaa1b963c20f8d7d61350e.camel@infradead.org>
 <14914ea1-2d2b-46e2-9933-2b7414acb7ba@citrix.com>
 <f1ea054608f4ae38293f89bcd84c6937538f245b.camel@infradead.org>
 <f5603457-8bee-40b9-9ea2-d604abe4ee53@citrix.com> <ZTKAqBILUBNelYCS@macbook>
 <7e1fb34868adfa51f1a48eb8d77f4b92643db85e.camel@infradead.org>
Content-Language: en-US
From: "Durrant, Paul" <xadimgnik@gmail.com>
In-Reply-To: <7e1fb34868adfa51f1a48eb8d77f4b92643db85e.camel@infradead.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 20/10/2023 14:37, David Woodhouse wrote:
[snip]
>>
>> [0] https://elixir.bootlin.com/linux/latest/source/drivers/tty/hvc/hvc_xen.c#L258
> 
> I'm not convinced I believe what the comment says there about evtchn 0
> being theoretically valid. I don't believe zero is a valid evtchn#, is
> it?

gfn 0 might be valid, but I'm also pretty sure evtchn 0 is not valid.

   Paul


From xen-devel-bounces@lists.xenproject.org Fri Oct 20 14:58:53 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 14:58:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619812.965497 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtqxd-0005qE-9z; Fri, 20 Oct 2023 14:58:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619812.965497; Fri, 20 Oct 2023 14:58: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 1qtqxd-0005q7-5f; Fri, 20 Oct 2023 14:58:49 +0000
Received: by outflank-mailman (input) for mailman id 619812;
 Fri, 20 Oct 2023 14:58: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=SYNS=GC=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qtqxc-0005q1-Dv
 for xen-devel@lists.xenproject.org; Fri, 20 Oct 2023 14:58:48 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 2b8dbe85-6f59-11ee-98d5-6d05b1d4d9a1;
 Fri, 20 Oct 2023 16:58:47 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id 794224EE073C;
 Fri, 20 Oct 2023 16:58: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: 2b8dbe85-6f59-11ee-98d5-6d05b1d4d9a1
MIME-Version: 1.0
Date: Fri, 20 Oct 2023 16:58:46 +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.cooper3@citrix.com, roger.pau@citrix.com, Simone Ballarin
 <simone.ballarin@bugseng.com>, Doug Goldstein <cardoe@cardoe.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][for-4.19 v2] xen: Add SAF deviations for MISRA C:2012
 Rule 7.1
In-Reply-To: <d83c024b-05a9-5298-9e43-e693675c2da5@suse.com>
References: <a9c52c943380f2c35f0a6ccab8215c03e87c99dc.1697712857.git.nicola.vetrini@bugseng.com>
 <de2b666e-ca48-58d2-73eb-5adc797f818e@suse.com>
 <d879b8e4689e51131f081edcb3b2abe6@bugseng.com>
 <dd58e1cb-8f17-986d-f4f9-f39e998e05a0@suse.com>
 <5b1cd4fba12664f2ef49bcc2eb198e31@bugseng.com>
 <d83c024b-05a9-5298-9e43-e693675c2da5@suse.com>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <6a90edf81f410db8069526228de75d7e@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/10/2023 15:24, Jan Beulich wrote:
> On 20.10.2023 12:33, Nicola Vetrini wrote:
>> On 20/10/2023 08:38, Jan Beulich wrote:
>>> On 19.10.2023 18:34, Nicola Vetrini wrote:
>>>> On 19/10/2023 17:57, Jan Beulich wrote:
>>>>> On 19.10.2023 13:04, Nicola Vetrini wrote:
>>>>>> --- a/automation/eclair_analysis/ECLAIR/deviations.ecl
>>>>>> +++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
>>>>>> @@ -85,10 +85,10 @@ conform to the directive."
>>>>>>  # Series 7.
>>>>>>  #
>>>>>> 
>>>>>> --doc_begin="Usage of the following constants is safe, since they
>>>>>> are
>>>>>> given as-is
>>>>>> -in the inflate algorithm specification and there is therefore no
>>>>>> risk
>>>>>> of them
>>>>>> -being interpreted as decimal constants."
>>>>>> --config=MC3R1.R7.1,literals={safe,
>>>>>> "^0(007|37|070|213|236|300|321|330|331|332|333|334|335|337|371)$"}
>>>>>> +-doc_begin="Octal constants used as arguments to macro INSTR_ENC 
>>>>>> or
>>>>>> MASK_EXTR
>>>>>> +can be used, because they appear as is in specifications, 
>>>>>> manuals,
>>>>>> and
>>>>>> +algorithm descriptions."
>>>>>> +-config=MC3R1.R7.1,reports+={safe,
>>>>>> "any_area(any_loc(any_exp(macro(^(INSTR_ENC|MASK_EXTR)$))))"}
>>>>> 
>>>>> INSTR_ENC() is a local macro in x86'es AMD SVM code. A macro of the
>>>>> same
>>>>> name could imo be introduced without issues in, say, Arm code. The
>>>>> above
>>>>> would then needlessly suppress findings there, aiui.
>>>>> 
>>>>> MASK_EXTR() otoh is a global macro which ise used for various
>>>>> purposes.
>>>>> Excluding checking there is imo going too far, too.
>>>> 
>>>> I should have thought about it; I can simply enforce the deviation 
>>>> to
>>>> additionally match
>>>> only a specific file for each of the macros.
>>> 
>>> That'll work for INSTR_ENC(), but not for MASK_EXTR().
>>> 
>> 
>> Why? What I'm deviating is reports due to octal constants used in
>> expressions
>> that contain MASK_EXTR in their expansion if and only if these are
>> located in the
>> file svm.h.
>> No extra octal constant will match all these constraints.
> 
> New MASK_EXTR() uses can appear at any time, without necessarily
> matching the justification.
> 
> Jan

Sorry, but I don't understand what's your concern exactly. With the 
improvements I proposed
(hence a new patch revision) I see the following possible future 
scenarios:

1. an use of MASK_EXTR() in a file other than x86/hvm/svm/emulate.c 
appears, with no
    use of octal constants in the expansion. This won't be deviated;
2. an use of MASK_EXTR() in x86/hvm/svm/emulate.c appears, with no use 
of octal
    constants in the expansion. This won't be deviated;
3. an use of MASK_EXTR() in x86/hvm/svm/emulate.c appears, with octal
    constants in the expansion. This will be deviated;
4. an use of any other macro with an octal constant in its expansion 
won't be deviated,
    unless the configuration is suitably edited.

Does this address your concern?
-- 
Nicola Vetrini, BSc
Software Engineer, BUGSENG srl (https://bugseng.com)


From xen-devel-bounces@lists.xenproject.org Fri Oct 20 15:06:51 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 15:06:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619816.965507 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtr5G-0007dK-1q; Fri, 20 Oct 2023 15:06:42 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619816.965507; Fri, 20 Oct 2023 15:06: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 1qtr5F-0007dD-V7; Fri, 20 Oct 2023 15:06:41 +0000
Received: by outflank-mailman (input) for mailman id 619816;
 Fri, 20 Oct 2023 15:06: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=0mrC=GC=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qtr5E-0007cS-Ep
 for xen-devel@lists.xenproject.org; Fri, 20 Oct 2023 15:06:40 +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 439411ab-6f5a-11ee-9b0e-b553b5be7939;
 Fri, 20 Oct 2023 17:06:37 +0200 (CEST)
Received: from DB3PR06CA0011.eurprd06.prod.outlook.com (2603:10a6:8:1::24) by
 PAVPR08MB9258.eurprd08.prod.outlook.com (2603:10a6:102:308::19) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.24; Fri, 20 Oct
 2023 15:06:34 +0000
Received: from DB5PEPF00014B8A.eurprd02.prod.outlook.com
 (2603:10a6:8:1:cafe::eb) by DB3PR06CA0011.outlook.office365.com
 (2603:10a6:8:1::24) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.24 via Frontend
 Transport; Fri, 20 Oct 2023 15:06:34 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DB5PEPF00014B8A.mail.protection.outlook.com (10.167.8.198) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6907.20 via Frontend Transport; Fri, 20 Oct 2023 15:06:34 +0000
Received: ("Tessian outbound a024c74d4d6d:v215");
 Fri, 20 Oct 2023 15:06:33 +0000
Received: from b3759e2d3735.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 E990F0BB-192F-4C47-A191-31D3CEF36B30.1; 
 Fri, 20 Oct 2023 15:06:23 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id b3759e2d3735.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Fri, 20 Oct 2023 15:06:23 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by GVXPR08MB10585.eurprd08.prod.outlook.com (2603:10a6:150:14e::20)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.26; Fri, 20 Oct
 2023 15:06:20 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::e1f8:1b40:67d1:6f41%4]) with mapi id 15.20.6907.022; Fri, 20 Oct 2023
 15:06: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: 439411ab-6f5a-11ee-9b0e-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=AJdQWkVxux7uYgeK5Q7E9WMCMl2JrEFbdepZEMuy6oA=;
 b=57J5wkdrWW0lTzXPU7ZT5wLWx/tQ149evOAE0+07/NDPPe6nY8NkAIjQz5jBjmigmI4vsaR3PL74lCuWlQEzqQ3yan/d3k97uEP0yaPci6vpB8UhevLt7dm6fMXP3z8rKXnFe+UvF0gVVNI7AUjDVYJiV/JPPl0oYNcr+Cnu6X4=
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: 1ca0142865f2d8d3
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=N8/TF+P5ZWbFWxA0dQGiSVcWff6CrbZkyotDGHdj4vDzXoPIcFELgCw4c258RtK115gt6ViFg7z+cUcutQPokvHECKCcve31I2yugpgdf8e/oZ7DuXeDpOAy5Zcxz+zppepI2Q3J/IVj51/eQcLWDV4S7SbXpI3wDf6bOObzZJkTQzek4tJNxvRVkwWmcBXf1SmS1H69BU4GT7tU8+JZnFT4Pyryz5lpaCmVXpSN8HbDuL+l576twOPWFZAp0gfr9m5X28HyNn1h1A3ko6mZlMGnkoF9Z3lbS0I53InEOPY2msjOZM+aqdQ3lWnFCe9AdnpODuiCvfs7pMotOL5Ilw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=AJdQWkVxux7uYgeK5Q7E9WMCMl2JrEFbdepZEMuy6oA=;
 b=Xf1iqEp4z18yxtDBVaKZtBCKOyOUgAENKJZOcPUadWMroteNG+UyFQzVq5ndfTM0nEha1FXTBbV+VERZfparUIhTfcb8O80a5ADB+/PcSRfuI1T1N5CrrPpvPhjicSTzEUALNFJYpfL5/WmVMk3y/P41IwJ5/vZ9SNCnmiLTTA9LdhvUianqF1d3WCJbNLs8ZIbKtbbplwYm1oWbBE3d45iDsHapfrp1ATEKuPRH2qqlEU+KhaUpvGQwxxgSL7LhmYQmGdDNjeaBRaaDYinEnMM12GB0hiu1qiMo9mavoOfOc8Bc7c0qiVfJWEzM9uzGgiEy4lpiFHBbxgf21V6AFA==
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=AJdQWkVxux7uYgeK5Q7E9WMCMl2JrEFbdepZEMuy6oA=;
 b=57J5wkdrWW0lTzXPU7ZT5wLWx/tQ149evOAE0+07/NDPPe6nY8NkAIjQz5jBjmigmI4vsaR3PL74lCuWlQEzqQ3yan/d3k97uEP0yaPci6vpB8UhevLt7dm6fMXP3z8rKXnFe+UvF0gVVNI7AUjDVYJiV/JPPl0oYNcr+Cnu6X4=
From: Henry Wang <Henry.Wang@arm.com>
To: Jan Beulich <jbeulich@suse.com>
CC: Stefano Stabellini <sstabellini@kernel.org>, Xen-devel
	<xen-devel@lists.xenproject.org>, Community Manager
	<community.manager@xenproject.org>, Julien Grall <julien@xen.org>, Bertrand
 Marquis <Bertrand.Marquis@arm.com>, Andrew Cooper
	<andrew.cooper3@citrix.com>, George Dunlap <george.dunlap@citrix.com>, Wei
 Liu <wl@xen.org>, =?utf-8?B?Um9nZXIgUGF1IE1vbm7DqQ==?=
	<roger.pau@citrix.com>, Wei Chen <Wei.Chen@arm.com>
Subject: Re: [PATCH 2/3] CHANGELOG.md: Set 4.18 release date and tag
Thread-Topic: [PATCH 2/3] CHANGELOG.md: Set 4.18 release date and tag
Thread-Index: AQHaAkwelJ/nqwKyk0yYe6Zf84C1/bBRSfMAgACZlYCAAEzsAIAAmN4A
Date: Fri, 20 Oct 2023 15:06:20 +0000
Message-ID: <4418D961-2A3B-4062-A888-55EBE6A4CFF6@arm.com>
References: <20231019052050.1032492-1-Henry.Wang@arm.com>
 <20231019052050.1032492-3-Henry.Wang@arm.com>
 <alpine.DEB.2.22.394.2310190913360.1945130@ubuntu-linux-20-04-desktop>
 <8327F8D2-72B7-42CE-A31A-9E845A38DAC0@arm.com>
 <42132ef5-ddf5-a7a4-70fc-ccb42419300f@suse.com>
In-Reply-To: <42132ef5-ddf5-a7a4-70fc-ccb42419300f@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_|GVXPR08MB10585:EE_|DB5PEPF00014B8A:EE_|PAVPR08MB9258:EE_
X-MS-Office365-Filtering-Correlation-Id: 71cb1fcc-a0ba-44a8-8c76-08dbd17e2637
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:
 pLfRE4XZq6Q53OSifXmTf+K2PmxvgC2Z8GQuwCw1UGJmArIAZE195XvO1kJRhVRRidTfD/tJL7YQ64TnltzhK6k89G3oyo0RfkJkWvOoXLR8a5hCOwdAIBystNE0393q03baejrvRxCgO+OJAR1tldWTdCyoybG6S+3+k2mDUdR5PBDhpSCf1hRHozQ52RQcUoaC3Hs0U5KRYpekYmck7yxTvFIsUkhf3dJeL8Af0C247SzagJcE+4wGIRFBcXIXNrEMlt+QBeeyDR1oLicGmwQXvciA8vBfjYVmep6f16r4bPPBoJvk9mUi3LVrSDfC76a51QVFvHtUl6lfL4LIUvlSJRiAyH7KJhp29t18kYu8WvdJCTbLJSTRTrER8/rNbAhh7elJ88QKvjZ1VXxiiaU8/gBzoTJJgI/5ijzSMV1U17xvI2FmqSHd+GV1DMefw7Rh95636f33ViFUvnmIW/mqfjX/zjCqnbXrfOfNp45g9jWv38pEIH43+wRqtOGJsv89zgQ90WIwCjQk9Ta0VlJouRibGLCHedR9kpOnepc9pkEg8IHX952aK96yYka8odOHs2dYVn214UVEdHwJbodqPYCpJtyWE/wLRmv19SReG0wqwqnMlX3R+bfwLJBFy4HfuQmol893BQiQfa6ApkuITDhBCj7EEFLGfRDAV89I91RFwOpPTrwEYHttTY42qV28ZGCjG76bugftv2Hj1v/brlh/M8KHq9Kjtq9mFcU=
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)(346002)(376002)(366004)(39860400002)(230922051799003)(1800799009)(451199024)(186009)(64100799003)(36756003)(33656002)(38100700002)(26005)(83380400001)(2616005)(86362001)(4001150100001)(122000001)(6512007)(38070700009)(2906002)(53546011)(6506007)(71200400001)(41300700001)(6916009)(64756008)(54906003)(66476007)(66946007)(76116006)(91956017)(66556008)(66446008)(316002)(5660300002)(8936002)(8676002)(4326008)(6486002)(478600001)(219803003)(207903002)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <EFFFEEC00DA34D4DA14386C07006F608@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: GVXPR08MB10585
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:
 DB5PEPF00014B8A.eurprd02.prod.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	1c8bd8f4-c002-4544-fae1-08dbd17e1e4b
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	ArID0R/0HaWhffuHWMj4CRfpIiFkwnOGDHhCC4iaNGtG5PAeSgy9O8shklyByzPM2i2L3Qa8wGdaDQXp7nJu1QWjrpUxeWG3StkIAOmxMLTsbtQIPU4+Uj+RcBTDfOItMa9QL4wxFUFnS71SBPTYabl9Mi26c0/RfNzBXlNIx7o7fymkx+e0uXST6UkLuQTDQs2CIM9g/G76TEbJa1aSRJkx+fuNM400qOENMv5JBdMjxKlpn97M4gMTc0r4McOd/QDX/na/GGI4yTE2SM+tmy5wfX3AbSSbbCYtn1n9IEcl06TFN0D6YIUQbu02T4Fryx8o86DowUvWVBCGUxo46SSRzaSggHuJ+bqxLJ/+aywQFsOT4vprnFBdieP3bm8+HEggYkadJWNDfWH42c41r8S+TSJYUGh3AlAXlDlqSQlvWSR2Wh1P+ii4jwhYVTkoXcQYoViTotZNis7Sr6sXNT6MVY1/+I1K3mo2BKNljFHMMH6DyyrmNJgopiJRXMLAreamu7ogHaQyRnQxgmq9xN9Mu0yAO0rvFSiok4pZyLW3yGRA9zOQgtnfJ5CJNEJ/usBeAuuthib6OEeKHIoDvqPvDcXU4y9EKG/80O1VJAcrjQZKyaBOD39/OGAqhrU87eufzGbbss+nG0hOGz80/t6xCoVgrXoF5pNU1cZJz0RA3PH3t8xHoiED6XVzDs4CIenPrrv30bP8srzn5ZIkD5bbW0Po7OPUAu8F1Y/nEps14ySM8ATU7SamITg5O0pGtZGTRM7luWpIwVZDP6POP7En7IvLEdUNsvK0n7nHoQHn7kxXHG62/5QJaE7fyAA1jrtBVaxEOPBhH0UNeK7MRg==
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)(136003)(396003)(346002)(230922051799003)(64100799003)(1800799009)(82310400011)(451199024)(186009)(46966006)(36840700001)(40470700004)(40460700003)(86362001)(2906002)(47076005)(83380400001)(36756003)(6862004)(41300700001)(4326008)(5660300002)(40480700001)(356005)(6512007)(26005)(6506007)(82740400003)(336012)(36860700001)(53546011)(2616005)(81166007)(4001150100001)(8676002)(478600001)(8936002)(6486002)(33656002)(70586007)(54906003)(70206006)(316002)(219803003)(207903002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Oct 2023 15:06:34.0003
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 71cb1fcc-a0ba-44a8-8c76-08dbd17e2637
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:
	DB5PEPF00014B8A.eurprd02.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAVPR08MB9258

SGkgSmFuLA0KDQo+IE9uIE9jdCAyMCwgMjAyMywgYXQgMTM6NTksIEphbiBCZXVsaWNoIDxqYmV1
bGljaEBzdXNlLmNvbT4gd3JvdGU6DQo+IA0KPiBPbiAyMC4xMC4yMDIzIDAzOjIzLCBIZW5yeSBX
YW5nIHdyb3RlOg0KPj4gDQo+PiANCj4+PiBPbiBPY3QgMjAsIDIwMjMsIGF0IDAwOjE0LCBTdGVm
YW5vIFN0YWJlbGxpbmkgPHNzdGFiZWxsaW5pQGtlcm5lbC5vcmc+IHdyb3RlOg0KPj4+IA0KPj4+
IE9uIFRodSwgMTkgT2N0IDIwMjMsIEhlbnJ5IFdhbmcgd3JvdGU6DQo+Pj4+IFNpZ25lZC1vZmYt
Ynk6IEhlbnJ5IFdhbmcgPEhlbnJ5LldhbmdAYXJtLmNvbT4NCj4+Pj4gLS0tDQo+Pj4+IENIQU5H
RUxPRy5tZCB8IDIgKy0NCj4+Pj4gMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRl
bGV0aW9uKC0pDQo+Pj4+IA0KPj4+PiBkaWZmIC0tZ2l0IGEvQ0hBTkdFTE9HLm1kIGIvQ0hBTkdF
TE9HLm1kDQo+Pj4+IGluZGV4IDQ3ZTk4ZjAzNmYuLjNjODM4NzhjOWIgMTAwNjQ0DQo+Pj4+IC0t
LSBhL0NIQU5HRUxPRy5tZA0KPj4+PiArKysgYi9DSEFOR0VMT0cubWQNCj4+Pj4gQEAgLTQsNyAr
NCw3IEBAIE5vdGFibGUgY2hhbmdlcyB0byBYZW4gd2lsbCBiZSBkb2N1bWVudGVkIGluIHRoaXMg
ZmlsZS4NCj4+Pj4gDQo+Pj4+IFRoZSBmb3JtYXQgaXMgYmFzZWQgb24gW0tlZXAgYSBDaGFuZ2Vs
b2ddKGh0dHBzOi8va2VlcGFjaGFuZ2Vsb2cuY29tL2VuLzEuMC4wLykNCj4+Pj4gDQo+Pj4+IC0j
IyBbdW5zdGFibGUgVU5SRUxFQVNFRF0oaHR0cHM6Ly94ZW5iaXRzLnhlbi5vcmcvZ2l0d2ViLz9w
PXhlbi5naXQ7YT1zaG9ydGxvZztoPXN0YWdpbmcpIC0gVEJEDQo+Pj4+ICsjIyBbNC4xOC4wXSho
dHRwczovL3hlbmJpdHMueGVuLm9yZy9naXR3ZWIvP3A9eGVuLmdpdDthPXNob3J0bG9nO2g9UkVM
RUFTRS00LjE4LjApIC0gMjAyMy0xMC0zMA0KPj4+IA0KPj4+IFNob3VsZCB3ZSB1c2UgeGVuYml0
cy54ZW5wcm9qZWN0Lm9yZyBpbnN0ZWFkPyBJIHRoaW5rIHRoYXQncyB0aGUNCj4+PiBvZmZpY2lh
bCBuYW1lLiBJbiBhbnkgY2FzZToNCj4+IA0KPj4gSG1tbSwgZ29vZCBxdWVzdGlvbiwgYnV0IGFm
dGVyIHNvbWUgZGVlcGVyIGxvb2sgc29tZWhvdyBJIGFtIG1vcmUgY29uZnVzZWQgbm93Lg0KPj4g
DQo+PiBTbyBpZiBJIGNsaWNrIHRoZSB4ZW4uZ2l0IGxpbmsgaW4geGVuYml0cy54ZW5wcm9qZWN0
Lm9yZyA8aHR0cDovL3hlbmJpdHMueGVucHJvamVjdC5vcmcvPiwgSSB3aWxsIGJlIGRpcmVjdGVk
IHRvDQo+PiAiaHR0cDovL3hlbmJpdHMueGVuLm9yZy9naXR3ZWIvP3A9eGVuLmdpdDthPXN1bW1h
cnnigJ0sIHdoZXJlIHRoZSBodHRwIGFuZCBodHRwcyBnaXQgVVJMDQo+PiBhcmUgYm90aCB1c2lu
ZyAieGVuYml0cy54ZW4ub3Jn4oCdLg0KPj4gDQo+PiBIb3dldmVyLCAiaHR0cHM6Ly94ZW5iaXRz
LnhlbnByb2plY3Qub3JnL2dpdHdlYi8/cD14ZW4uZ2l0O2E9c3VtbWFyeeKAnSBpcyBhbHNvIGEg
dmFsaWQNCj4+IGxpbmssIGJ1dCB0aGUgaHR0cHMgYW5kIGh0dHAgZ2l0IFVSTCBhcmUgc3RpbGwg
Ym90aCB1c2luZyDigJx4ZW5iaXRzLnhlbi5vcmfigJ0sIGFsc28sIGFsbCBvdXIgcHJldmlvdXMN
Cj4+IHJlbGVhc2VzIHNlZW0gdG8gdXNlICJ4ZW5iaXRzLnhlbi5vcmciLg0KPj4gDQo+PiBDb3Vs
ZCBhbnlvbmUgaW4gdGhpcyBjb21tdW5pdHkgbG9uZyBlbm91Z2ggcHJvdmlkZSBhIGJpdCBtb3Jl
IGRldGFpbHMvY2xhcmlmaWNhdGlvbnMgb24gdGhpcz8NCj4gDQo+IFdlbGwsICJ4ZW5wcm9qZWN0
IiBhcHBlYXJlZCBsYXRlciBhcyBhIG5hbWUsIHdpdGggdGhlIGludGVudGlvbiBvZg0KPiBiZWNv
bWluZyB0aGUgImNhbm9uaWNhbCIgb25lLiBTdGlsbCBpdCB3YXMgbGlrZWx5IGVhc2llc3QgYXQg
dGhlIHRpbWUNCj4gdG8gc2ltcGx5IGFkZCByZXNwZWN0aXZlIHJlZGlyZWN0cyBpbiB0aGUgd2Vi
IHNlcnZlcihzKS4NCg0KSSB0YWtlIGFib3ZlIGNvbW1lbnQgYXMgeW91IGFsc28gcHJlZmVyIHRo
ZSDigJx4ZW5iaXRzLnhlbnByb2plY3Qub3Jn4oCdPyBDb3VsZCB5b3UgcGxlYXNlIGtpbmRseQ0K
Y29uZmlybSB0aGF0PyBJZiB0aGF0IGlzIHRoZSBjYXNlLCBJIHdpbGwgc2VuZCBhIHYzIHdpdGgg
dGhlIGxpbmsgY2hhbmdlZCwgYXMgMiBjb21taXR0ZXJzIG5vdyBib3RoDQpwcmVmZXIgdGhlIOKA
nHhlbnByb2plY3TigJ0gb25lIGFuZCBJIHdvbuKAmXQgYXJndWUgZm9yIHRoYXQuDQoNCktpbmQg
cmVnYXJkcywNCkhlbnJ5DQoNCj4gDQo+IEphbg0KDQo=


From xen-devel-bounces@lists.xenproject.org Fri Oct 20 15:16:26 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 15:16:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619821.965519 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtrEc-0001w9-35; Fri, 20 Oct 2023 15:16:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619821.965519; Fri, 20 Oct 2023 15:16: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 1qtrEc-0001w2-0Q; Fri, 20 Oct 2023 15:16:22 +0000
Received: by outflank-mailman (input) for mailman id 619821;
 Fri, 20 Oct 2023 15:16: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=SkgR=GC=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qtrEa-0001vw-Gh
 for xen-devel@lists.xenproject.org; Fri, 20 Oct 2023 15:16:20 +0000
Received: from mail-ed1-x52a.google.com (mail-ed1-x52a.google.com
 [2a00:1450:4864:20::52a])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 9e364a8b-6f5b-11ee-9b0e-b553b5be7939;
 Fri, 20 Oct 2023 17:16:18 +0200 (CEST)
Received: by mail-ed1-x52a.google.com with SMTP id
 4fb4d7f45d1cf-53d8320f0easo1391295a12.3
 for <xen-devel@lists.xenproject.org>; Fri, 20 Oct 2023 08:16:18 -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
 y16-20020a056402135000b005333922efb0sm1618109edw.78.2023.10.20.08.16.17
 for <xen-devel@lists.xenproject.org>
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Fri, 20 Oct 2023 08:16: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: 9e364a8b-6f5b-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1697814977; x=1698419777; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:autocrypt:from:references:to
         :content-language:subject:user-agent:mime-version:date:message-id
         :from:to:cc:subject:date:message-id:reply-to;
        bh=U5p8Zbez3+b5oWMFe2613Z149cqySqsMcLqv7T3zXKE=;
        b=P7IMB7hW6NvCl3cssG7VNPdvHa04jFiPkr27/T9JFgDS0uo473zY8Jt05OWw0+/CwA
         by4mGh2HRxLX+EyYa5Su+N7AcQgbAMNLiy3Kha4f+PYRB7O3nzExUpz1P1tDVLLDaegr
         2ibS5MO/DJrIY9wc0fH6tqXCX1Fa7Thhs8t0c=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697814977; x=1698419777;
        h=content-transfer-encoding:in-reply-to:autocrypt: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=U5p8Zbez3+b5oWMFe2613Z149cqySqsMcLqv7T3zXKE=;
        b=LexlEe9jSkSnPTnmszWbs8qCeIgB2FAglwJ+n7QlznRdYQo0Ramt9R5333cmVK1Ijk
         gZ4TBEaJ6NDKduiteRbYeYuHweWkhcL6vGiBA72SlqDbEgrrbzDRI9zi01/oEKK8ZIdb
         4Bqkxx588ohYiTdN0Dmpiw+B1QPKv/zdU1o0kGebeJCerJNVFrHwUEas6JB57JC+cEXQ
         sJu2wCxnxK6G06nnbdSNMDAgxPjK9q+bcPP0/8Xv/MfQcNWUCdVetxrGW3KRUch6LiCc
         NDMb9nVeFIa9QMO5cyInU2EVe51cD4g0lRSPBtxSPvhpc4ow4gunS5vZPBQEUIAfmbGV
         ZvzQ==
X-Gm-Message-State: AOJu0Yx0/NZtKalcJLZx4N+1O5aclt812Jm7FyTXnWXVFzq27DYcUaN+
	4ycultH9qvj6qKyGJDFCZMOsq7mvllsJdEvsaUfzzw==
X-Google-Smtp-Source: AGHT+IG5gaDoPf4+JRTIPU9q2GHHwaXadYUyIx4ql7OzAEJU70hPKVxi4x969EA6uKBe8LEkms8ucA==
X-Received: by 2002:a05:6402:50d2:b0:53e:ba3d:acb9 with SMTP id h18-20020a05640250d200b0053eba3dacb9mr2082846edb.24.1697814977674;
        Fri, 20 Oct 2023 08:16:17 -0700 (PDT)
Message-ID: <ff1a67f7-8b33-4e7e-8e31-d5201f7212c1@citrix.com>
Date: Fri, 20 Oct 2023 16:16:16 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH] ns16550c: avoid crash in ns16550_endboot in PV shim mode
Content-Language: en-GB
To: xen-devel@lists.xenproject.org
References: <de07d56188f13e222ddaa1b963c20f8d7d61350e.camel@infradead.org>
 <14914ea1-2d2b-46e2-9933-2b7414acb7ba@citrix.com>
 <f1ea054608f4ae38293f89bcd84c6937538f245b.camel@infradead.org>
 <f5603457-8bee-40b9-9ea2-d604abe4ee53@citrix.com> <ZTKAqBILUBNelYCS@macbook>
 <7e1fb34868adfa51f1a48eb8d77f4b92643db85e.camel@infradead.org>
 <0c2f1fd0-22d2-419b-8fc3-4788563fe9f2@gmail.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: <0c2f1fd0-22d2-419b-8fc3-4788563fe9f2@gmail.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 20/10/2023 3:50 pm, Durrant, Paul wrote:
> On 20/10/2023 14:37, David Woodhouse wrote:
> [snip]
>>>
>>> [0]
>>> https://elixir.bootlin.com/linux/latest/source/drivers/tty/hvc/hvc_xen.c#L258
>>
>> I'm not convinced I believe what the comment says there about evtchn 0
>> being theoretically valid. I don't believe zero is a valid evtchn#, is
>> it?
>
> gfn 0 might be valid, but I'm also pretty sure evtchn 0 is not valid.

GFN 0 very much is valid.

evtchn 0 OTOH is explicitly not valid.  From evtchn_init():

    evtchn_from_port(d, 0)->state = ECS_RESERVED;


However, the fields being 0 doesn't mean not available.  That's the
signal to saying "not connected yet", because that's what dom0 gets
before xenconsoled starts up.

~Andrew


From xen-devel-bounces@lists.xenproject.org Fri Oct 20 15:20:37 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 15:20:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619824.965530 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtrIa-0003Y1-L8; Fri, 20 Oct 2023 15:20:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619824.965530; Fri, 20 Oct 2023 15: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 1qtrIa-0003Xu-HB; Fri, 20 Oct 2023 15:20:28 +0000
Received: by outflank-mailman (input) for mailman id 619824;
 Fri, 20 Oct 2023 15:20: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=fjAU=GC=casper.srs.infradead.org=BATV+5f4592396010e9e3c002+7362+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qtrIY-0003Xo-EY
 for xen-devel@lists.xenproject.org; Fri, 20 Oct 2023 15:20:27 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 3143be13-6f5c-11ee-98d5-6d05b1d4d9a1;
 Fri, 20 Oct 2023 17:20:25 +0200 (CEST)
Received: from [2001:8b0:10b:5:f7e9:453b:fc3b:2f6]
 (helo=u3832b3a9db3152.ant.amazon.com)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qtrIT-00DoUp-BR; Fri, 20 Oct 2023 15: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: 3143be13-6f5c-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=MIME-Version:Content-Type:References:
	In-Reply-To:Date:Cc:To:From:Subject:Message-ID:Sender:Reply-To:
	Content-Transfer-Encoding:Content-ID:Content-Description;
	bh=Lf+ERlE3zkgan4NebSxp76b8lHlffbXcgMiAMIBm1Ds=; b=hNgXR7VpvaP7WKZiKWyYg/pwM9
	Pkw1gWL1XPBx7I1GpUr5dyjU6xcu8PSdLD/Vn5K1hoBdAjyT3tkosiWIBJAP/gTGfwmbAhC2ytsAG
	YaedU+QiX3w5+Lc/WxUUmfGbjHtpGdh6QMThS7S4/3A8tUQm2Iz2c9DAWOthXxfoIfelGY5u1UoTx
	IIfBgvfwYLKURqFSbiV8ljVS0LiNsriOTAArHOAOFf+5TbeQF1fId1S9/6XNhzhiHgEScb9Z6j/6D
	fEwjFzy+WV88zNOd2UOgzqyCZw4o8lCDnyG12iixojHw9p4G5o275S6DBkVJfNM3qjwursGispI49
	xSn//EzQ==;
Message-ID: <55b87d75e13f1b888d90b03ea4bebe044b305e6a.camel@infradead.org>
Subject: Re: [PATCH] hvc/xen: fix event channel handling for secondary
 consoles
From: David Woodhouse <dwmw2@infradead.org>
To: Juergen Gross <jgross@suse.com>, xen-devel
 <xen-devel@lists.xenproject.org>
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>, Jiri Slaby
 <jirislaby@kernel.org>, Roger Pau Monne <roger.pau@citrix.com>, Stefano
 Stabellini <sstabellini@kernel.org>, Dawei Li <set_pte_at@outlook.com>,
 linuxppc-dev@lists.ozlabs.org,  linux-kernel@vger.kernel.org,
 linux-serial@vger.kernel.org, Paul Durrant <paul@xen.org>
Date: Fri, 20 Oct 2023 16:20:20 +0100
In-Reply-To: <36c9298d-2052-42de-9ef4-135c120a2417@suse.com>
References: <72609f999d9451c13240acb8e4a4e54f8c62f542.camel@infradead.org>
	 <36c9298d-2052-42de-9ef4-135c120a2417@suse.com>
Content-Type: multipart/signed; micalg="sha-256"; protocol="application/pkcs7-signature";
	boundary="=-xVW8ksiJEPKn31o3CewY"
User-Agent: Evolution 3.44.4-0ubuntu2 
MIME-Version: 1.0
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html


--=-xVW8ksiJEPKn31o3CewY
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Fri, 2023-10-20 at 10:51 +0200, Juergen Gross wrote:
>=20
> > (qemu) device_del con1
> > [=C2=A0=C2=A0 32.050919] ------------[ cut here ]------------
> > [=C2=A0=C2=A0 32.050942] Trying to free already-free IRQ 33
> > [=C2=A0=C2=A0 32.050990] WARNING: CPU: 0 PID: 51 at kernel/irq/manage.c=
:1895 __free_irq+0x1d4/0x330
> >=20
> > Fix that by calling notifier_del_irq() first, which only calls
> > free_irq() if the irq was requested in the first place. Then use
>=20
> I don't think the "if the irq was requested in the first place" is the co=
rrect
> reasoning.
>=20
> I think the problem is that notifier_del_irq() will be called another tim=
e
> through the .notifier_del hook. Two calls of notifier_del_irq() are fine,=
 but
> one call of it and another call of free_irq() via unbind_from_irqhandler(=
) is
> a problem.

Er... yes, the HVC tty device still exists, can still be open and in
use by userspace during the time that xencons_disconnect_backend() is
running.

Why does xencons_disconnect_backend() do all the evtchn and gnttab
teardown *first* and then only call hvc_remove() at the end. That seems
weird.

So if I do 'dd if=3D/dev/zero of=3D/dev/hvc1' while I remove the device
from qemu... yep, that seems to have filled the ring after the evtchn
was torn down, and it's waiting for ever in domU_write_console().

In fact, that isn't *even* because of the race within
xencons_disconnect_backend(). In xencons_backend_changed() when the
backend goes into state XenbusStateClos{ing,ed} for the disconnect, we
just set the frontend state directly to XenbusStateClosed without even
*calling* xencons_disconnect_backend().

So we were *told* of the impending unplug. We fail to actually stop
using the device, but we tell the backend that it's OK to go away.

Oops :)

The incremental patch below makes it work if I unplug a console while
writing /dev/zero to it.

But I suspect instead of calling xencons_disconnect_backend() when the
backend changes to XenbusStateClos{ing,ed}, it should actually *just*
do the hvc_close() part? The evtchn and gnttab cleanup should wait
until the backend has actually finished closing?

And what locking is there around xencons_disconnect_backend() anyway?
Do we rely on the fact that it can all only happen from the xenstore
watch thread?

diff --git a/drivers/tty/hvc/hvc_xen.c b/drivers/tty/hvc/hvc_xen.c
index f0376612b267..0806078835f6 100644
--- a/drivers/tty/hvc/hvc_xen.c
+++ b/drivers/tty/hvc/hvc_xen.c
@@ -377,8 +377,10 @@ void xen_console_resume(void)
 #ifdef CONFIG_HVC_XEN_FRONTEND
 static void xencons_disconnect_backend(struct xencons_info *info)
 {
+	if (info->hvc !=3D NULL)
+		hvc_remove(info->hvc);
+	info->hvc =3D NULL;
 	if (info->irq > 0) {
-		notifier_del_irq(info->hvc, info->irq);=20
 		evtchn_put(info->evtchn);
 		info->irq =3D 0;
 		info->evtchn =3D 0;
@@ -390,9 +392,6 @@ static void xencons_disconnect_backend(struct xencons_i=
nfo *info)
 	if (info->gntref > 0)
 		gnttab_free_grant_references(info->gntref);
 	info->gntref =3D 0;
-	if (info->hvc !=3D NULL)
-		hvc_remove(info->hvc);
-	info->hvc =3D NULL;
 }
=20
 static void xencons_free(struct xencons_info *info)
@@ -558,6 +557,7 @@ static void xencons_backend_changed(struct xenbus_devic=
e *dev,
 			break;
 		fallthrough;	/* Missed the backend's CLOSING state */
 	case XenbusStateClosing:
+		xencons_disconnect_backend(dev_get_drvdata(&dev->dev));
 		xenbus_frontend_closed(dev);
 		break;
 	}


--=-xVW8ksiJEPKn31o3CewY
Content-Type: application/pkcs7-signature; name="smime.p7s"
Content-Disposition: attachment; filename="smime.p7s"
Content-Transfer-Encoding: base64

MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgEFADCABgkqhkiG9w0BBwEAAKCCEkQw
ggYQMIID+KADAgECAhBNlCwQ1DvglAnFgS06KwZPMA0GCSqGSIb3DQEBDAUAMIGIMQswCQYDVQQG
EwJVUzETMBEGA1UECBMKTmV3IEplcnNleTEUMBIGA1UEBxMLSmVyc2V5IENpdHkxHjAcBgNVBAoT
FVRoZSBVU0VSVFJVU1QgTmV0d29yazEuMCwGA1UEAxMlVVNFUlRydXN0IFJTQSBDZXJ0aWZpY2F0
aW9uIEF1dGhvcml0eTAeFw0xODExMDIwMDAwMDBaFw0zMDEyMzEyMzU5NTlaMIGWMQswCQYDVQQG
EwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYD
VQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50
aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC
AQEAyjztlApB/975Rrno1jvm2pK/KxBOqhq8gr2+JhwpKirSzZxQgT9tlC7zl6hn1fXjSo5MqXUf
ItMltrMaXqcESJuK8dtK56NCSrq4iDKaKq9NxOXFmqXX2zN8HHGjQ2b2Xv0v1L5Nk1MQPKA19xeW
QcpGEGFUUd0kN+oHox+L9aV1rjfNiCj3bJk6kJaOPabPi2503nn/ITX5e8WfPnGw4VuZ79Khj1YB
rf24k5Ee1sLTHsLtpiK9OjG4iQRBdq6Z/TlVx/hGAez5h36bBJMxqdHLpdwIUkTqT8se3ed0PewD
ch/8kHPo5fZl5u1B0ecpq/sDN/5sCG52Ds+QU5O5EwIDAQABo4IBZDCCAWAwHwYDVR0jBBgwFoAU
U3m/WqorSs9UgOHYm8Cd8rIDZsswHQYDVR0OBBYEFAnA8vwL2pTbX/4r36iZQs/J4K0AMA4GA1Ud
DwEB/wQEAwIBhjASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEF
BQcDBDARBgNVHSAECjAIMAYGBFUdIAAwUAYDVR0fBEkwRzBFoEOgQYY/aHR0cDovL2NybC51c2Vy
dHJ1c3QuY29tL1VTRVJUcnVzdFJTQUNlcnRpZmljYXRpb25BdXRob3JpdHkuY3JsMHYGCCsGAQUF
BwEBBGowaDA/BggrBgEFBQcwAoYzaHR0cDovL2NydC51c2VydHJ1c3QuY29tL1VTRVJUcnVzdFJT
QUFkZFRydXN0Q0EuY3J0MCUGCCsGAQUFBzABhhlodHRwOi8vb2NzcC51c2VydHJ1c3QuY29tMA0G
CSqGSIb3DQEBDAUAA4ICAQBBRHUAqznCFfXejpVtMnFojADdF9d6HBA4kMjjsb0XMZHztuOCtKF+
xswhh2GqkW5JQrM8zVlU+A2VP72Ky2nlRA1GwmIPgou74TZ/XTarHG8zdMSgaDrkVYzz1g3nIVO9
IHk96VwsacIvBF8JfqIs+8aWH2PfSUrNxP6Ys7U0sZYx4rXD6+cqFq/ZW5BUfClN/rhk2ddQXyn7
kkmka2RQb9d90nmNHdgKrwfQ49mQ2hWQNDkJJIXwKjYA6VUR/fZUFeCUisdDe/0ABLTI+jheXUV1
eoYV7lNwNBKpeHdNuO6Aacb533JlfeUHxvBz9OfYWUiXu09sMAviM11Q0DuMZ5760CdO2VnpsXP4
KxaYIhvqPqUMWqRdWyn7crItNkZeroXaecG03i3mM7dkiPaCkgocBg0EBYsbZDZ8bsG3a08LwEsL
1Ygz3SBsyECa0waq4hOf/Z85F2w2ZpXfP+w8q4ifwO90SGZZV+HR/Jh6rEaVPDRF/CEGVqR1hiuQ
OZ1YL5ezMTX0ZSLwrymUE0pwi/KDaiYB15uswgeIAcA6JzPFf9pLkAFFWs1QNyN++niFhsM47qod
x/PL+5jR87myx5uYdBEQkkDc+lKB1Wct6ucXqm2EmsaQ0M95QjTmy+rDWjkDYdw3Ms6mSWE3Bn7i
5ZgtwCLXgAIe5W8mybM2JzCCBhQwggT8oAMCAQICEQDGvhmWZ0DEAx0oURL6O6l+MA0GCSqGSIb3
DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYD
VQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28g
UlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMB4XDTIyMDEwNzAw
MDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJARYTZHdtdzJAaW5mcmFkZWFkLm9y
ZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3GpC2bomUqk+91wLYBzDMcCj5C9m6
oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZHh7htyAkWYVoFsFPrwHounto8xTsy
SSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT9YgcBqKCo65pTFmOnR/VVbjJk4K2
xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNjP+qDrh0db7PAjO1D4d5ftfrsf+kd
RR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy2U+eITZ5LLE5s45mX2oPFknWqxBo
bQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3BgBEmfsYWlBXO8rVXfvPgLs32VdV
NZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/7auNVRmPB3v5SWEsH8xi4Bez2V9U
KxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmdlFYhAflWKQ03Ufiu8t3iBE3VJbc2
5oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9aelIl6vtbhMA+l0nfrsORMa4kobqQ5
C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMBAAGjggHMMIIByDAfBgNVHSMEGDAW
gBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeDMcimo0oz8o1R1Nver3ZVpSkwDgYD
VR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYwFAYIKwYBBQUHAwQGCCsGAQUFBwMC
MEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYBBQUHAgEWF2h0dHBzOi8vc2VjdGln
by5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9jcmwuc2VjdGlnby5jb20vU2VjdGln
b1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1haWxDQS5jcmwwgYoGCCsGAQUFBwEB
BH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdvLmNvbS9TZWN0aWdvUlNBQ2xpZW50
QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAjBggrBgEFBQcwAYYXaHR0cDovL29j
c3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5mcmFkZWFkLm9yZzANBgkqhkiG9w0B
AQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQvQ/fzPXmtR9t54rpmI2TfyvcKgOXp
qa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvIlSPrzIB4Z2wyIGQpaPLlYflrrVFK
v9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9ChWFfgSXvrWDZspnU3Gjw/rMHrGnql
Htlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0whpBtXdyDjzBtQTaZJ7zTT/vlehc/
tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9IzCCBhQwggT8oAMCAQICEQDGvhmW
Z0DEAx0oURL6O6l+MA0GCSqGSIb3DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3Jl
YXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0
ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJl
IEVtYWlsIENBMB4XDTIyMDEwNzAwMDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJ
ARYTZHdtdzJAaW5mcmFkZWFkLm9yZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3
GpC2bomUqk+91wLYBzDMcCj5C9m6oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZH
h7htyAkWYVoFsFPrwHounto8xTsySSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT
9YgcBqKCo65pTFmOnR/VVbjJk4K2xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNj
P+qDrh0db7PAjO1D4d5ftfrsf+kdRR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy
2U+eITZ5LLE5s45mX2oPFknWqxBobQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3
BgBEmfsYWlBXO8rVXfvPgLs32VdVNZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/
7auNVRmPB3v5SWEsH8xi4Bez2V9UKxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmd
lFYhAflWKQ03Ufiu8t3iBE3VJbc25oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9ae
lIl6vtbhMA+l0nfrsORMa4kobqQ5C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMB
AAGjggHMMIIByDAfBgNVHSMEGDAWgBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeD
Mcimo0oz8o1R1Nver3ZVpSkwDgYDVR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYw
FAYIKwYBBQUHAwQGCCsGAQUFBwMCMEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYB
BQUHAgEWF2h0dHBzOi8vc2VjdGlnby5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9j
cmwuc2VjdGlnby5jb20vU2VjdGlnb1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1h
aWxDQS5jcmwwgYoGCCsGAQUFBwEBBH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdv
LmNvbS9TZWN0aWdvUlNBQ2xpZW50QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAj
BggrBgEFBQcwAYYXaHR0cDovL29jc3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5m
cmFkZWFkLm9yZzANBgkqhkiG9w0BAQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQv
Q/fzPXmtR9t54rpmI2TfyvcKgOXpqa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvI
lSPrzIB4Z2wyIGQpaPLlYflrrVFKv9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9Ch
WFfgSXvrWDZspnU3Gjw/rMHrGnqlHtlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0w
hpBtXdyDjzBtQTaZJ7zTT/vlehc/tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9
IzGCBMcwggTDAgEBMIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVz
dGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMT
NVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEA
xr4ZlmdAxAMdKFES+jupfjANBglghkgBZQMEAgEFAKCCAeswGAYJKoZIhvcNAQkDMQsGCSqGSIb3
DQEHATAcBgkqhkiG9w0BCQUxDxcNMjMxMDIwMTUyMDIwWjAvBgkqhkiG9w0BCQQxIgQgaadtD8zI
3wa7x1BpGRAw2NJGeQmHMxVvY3dEu0N4TJIwgb0GCSsGAQQBgjcQBDGBrzCBrDCBljELMAkGA1UE
BhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEYMBYG
A1UEChMPU2VjdGlnbyBMaW1pdGVkMT4wPAYDVQQDEzVTZWN0aWdvIFJTQSBDbGllbnQgQXV0aGVu
dGljYXRpb24gYW5kIFNlY3VyZSBFbWFpbCBDQQIRAMa+GZZnQMQDHShREvo7qX4wgb8GCyqGSIb3
DQEJEAILMYGvoIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVy
MRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNl
Y3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEAxr4Z
lmdAxAMdKFES+jupfjANBgkqhkiG9w0BAQEFAASCAgCp8dboLZcPE6xQmWjVmMgAO3BlFt+42POq
pxPF8NM+XI3rNdQGIMh8/xQqPYcYSoDKwoWQmAGfxoeNnbg87eleHKcw/xWjBhvpEFBKtejemqrd
8tS80Fq/zaPvNJQurK0LcbpHQyeBFBOEWZaM9vPvAVCa0DcobFvefwqhscYKBnU70S+wqnZzkhYL
yL6gUXc7Bc/M5ypqjq1WL5E3rMIIKS0zXlyx3+T5/w/FdPNJGnl/dJg6k/jc5jVVrl/PhY5eNR/L
FhVoZa13rzGfmdFCt18yQjg0c8B0fHYJnQZQOEI29446Dec7x/KbU4RpoGKre4/H0crOuZWoZw6O
4EamR2nb8p9P5K3mjA/QHimOjlykn2HwldTDQXchlYR5NXBOIz1AFNK4yckE1u6/YKXWB1pT65AY
2nq4qjvVzGJJc3yzOZT0XtK70yaCKYfjUod++5SmNJje4KpE6T09Bw1PnFf/5uI0dZ43KPZYL1lL
qhWhOY9Xy0zalnj9fU+lcXh0b7GAfj6VGiTcqEC5GIG7gW5STbTV5SA/rI0fWCGJi90C+BSaIrFA
9xZJ7VIF0KBO3Png5KYmurxnozw/WR6q9r0omlUImlnrJ2McD3pxry5xRuX50L6utVkzCzt/0/UE
h1DE+RMAmDgpAjEkIBaiMf2zeoz7jZGj1LUZqGsMUwAAAAAAAA==


--=-xVW8ksiJEPKn31o3CewY--


From xen-devel-bounces@lists.xenproject.org Fri Oct 20 15:22:05 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 15:22:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619827.965540 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtrK2-00044n-VN; Fri, 20 Oct 2023 15:21:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619827.965540; Fri, 20 Oct 2023 15: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 1qtrK2-00044c-ST; Fri, 20 Oct 2023 15:21:58 +0000
Received: by outflank-mailman (input) for mailman id 619827;
 Fri, 20 Oct 2023 15: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=84aa=GC=linaro.org=alex.bennee@srs-se1.protection.inumbo.net>)
 id 1qtrK1-00044S-H3
 for xen-devel@lists.xenproject.org; Fri, 20 Oct 2023 15:21: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 675d0ca6-6f5c-11ee-98d5-6d05b1d4d9a1;
 Fri, 20 Oct 2023 17:21:56 +0200 (CEST)
Received: by mail-wm1-x331.google.com with SMTP id
 5b1f17b1804b1-4083f61322fso7565645e9.1
 for <xen-devel@lists.xenproject.org>; Fri, 20 Oct 2023 08:21:56 -0700 (PDT)
Received: from zen.linaroharston ([85.9.250.243])
 by smtp.gmail.com with ESMTPSA id
 c16-20020a05600c0ad000b004063c9f68f2sm2381004wmr.26.2023.10.20.08.21.54
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Fri, 20 Oct 2023 08:21:54 -0700 (PDT)
Received: from zen (localhost [127.0.0.1])
 by zen.linaroharston (Postfix) with ESMTP id 3B1221FFBB;
 Fri, 20 Oct 2023 16:21:54 +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: 675d0ca6-6f5c-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=linaro.org; s=google; t=1697815315; x=1698420115; 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=jbelIcZTS0juyOFnjn4MTy2vl3K16qAnjzUU98VyDMY=;
        b=qnMTca4aijWMsT5fqn/wVKdqN90y351+KI4ts7Ppm27VVnd/PV1UNTaGfOaaXH3I28
         Pjg6xKvRGR5RLfEbGxHudZcm0yKuyVpdeoSmYd15U+PrQvzX+wPixFwDWrqvsQAXrlLl
         oknRjDZBR3L8LZJnbeZW3CrxcJ2nvL4L8sDq5OvVyEvXhV738egAJ+cB7qcnyvXzwZMM
         W6uclUk/p5C0C2sWFnndagJIJn9nmUms7LSuNN1GGhhaN2pSvzDic068FZ29jKPGkxoT
         u0XW5OI+S0DkJ31l9YKxA7tDQ6CEMh7iqRc/wMavc0+xF6drfTSIHbQWnrvEbEeTEYnI
         IFPw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697815315; x=1698420115;
        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=jbelIcZTS0juyOFnjn4MTy2vl3K16qAnjzUU98VyDMY=;
        b=gdUvorFsvAKrlYgcE1ELAhn1r90/+2mKikWUhN3CjQLxiy/XZmRB18bWLOaBgnqhG/
         i8yQjBJtPwSc9+RjTB2qudjDwX4Ohy/zI2PFrovKwWKfKL08d8bLvP6+sCIhxMqdrsNV
         TVTVDnst+FpJOsX0LEsq1VSZET83WVhLC04teXwgcItLa/qOYv83E/zHu8UFG/dldZFX
         msHs+c3CpA+4WwZjh65nIVtHTS+X7PiNPjPQ95Q0WjYeT2XERh1aCDGPTUMIYt5SVOfZ
         mCr0yB2/sT1JpEApxv38R8PPJBMdfGG5TXelZux6mei4uv1IZAhw9ClN+o3wfooEzAN2
         QEaA==
X-Gm-Message-State: AOJu0YzU4dUxYoNeMiQEFMD9DnQI7BlfWJBwpNHj+e6rLEXg/qqxhnxN
	Y2dk5Ufm+KALfERi0UNY1Y06hA==
X-Google-Smtp-Source: AGHT+IHRLcFuOS3PeMTohe8jPOVqCX3X8WLS40JtSHcRyp1EElg3mXgLoTxLa68r4F7PYOX7lpzTvg==
X-Received: by 2002:a05:600c:c84:b0:406:8494:f684 with SMTP id fj4-20020a05600c0c8400b004068494f684mr1687044wmb.23.1697815315141;
        Fri, 20 Oct 2023 08:21:55 -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.22; 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>
Subject: Re: QEMU features useful for Xen development?
Date: Fri, 20 Oct 2023 16:15:19 +0100
In-reply-to: <799b1754-7529-0538-1b5a-d94a362eb74d@amd.com>
Message-ID: <87r0lp720d.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:
>> 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.
>>
>>
>> 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.

We wrote up whats required on our JIRA:

  https://linaro.atlassian.net/browse/QEMU-598

Given we have most of the bits already it shouldn't take long to build a
model for it. However I want to draw every ones attention to the notes:

  The real FPGA image does not have a global monitor that can support
  LDREX/STREX between the two CPUs for accesses in the DDR4 RAM or BRAM.
  This means that effectively guest software will only be able to use
  one CPU (the local monitor within the CPU works fine). This
  restriction won=E2=80=99t apply to the QEMU model, but is important to be
  aware of if you=E2=80=99re writing guest software on the QEMU model that =
you
  also want to be able to run on the FPGA board.

However if that meets the requirements for Xen testing and no one tries
to run SMP loads on real HW then I can try and find space on our roadmap
to do it (rough guess 9.1 or 9.2?).

--=20
Alex Benn=C3=A9e
Virtualisation Tech Lead @ Linaro


From xen-devel-bounces@lists.xenproject.org Fri Oct 20 15:28:49 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 15:28:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619833.965559 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtrQd-0005zG-US; Fri, 20 Oct 2023 15:28:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619833.965559; Fri, 20 Oct 2023 15: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 1qtrQd-0005z9-RT; Fri, 20 Oct 2023 15:28:47 +0000
Received: by outflank-mailman (input) for mailman id 619833;
 Fri, 20 Oct 2023 15:28: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=SYNS=GC=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qtrQc-0005jz-93
 for xen-devel@lists.xenproject.org; Fri, 20 Oct 2023 15:28:46 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 5ba8a4d1-6f5d-11ee-98d5-6d05b1d4d9a1;
 Fri, 20 Oct 2023 17:28:45 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id B5E1D4EE0741;
 Fri, 20 Oct 2023 17:28: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: 5ba8a4d1-6f5d-11ee-98d5-6d05b1d4d9a1
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>,
	George Dunlap <george.dunlap@citrix.com>,
	Julien Grall <julien@xen.org>,
	Wei Liu <wl@xen.org>
Subject: [XEN PATCH][for-4.19 v3 1/8] xen/include: add macro LOWEST_BIT
Date: Fri, 20 Oct 2023 17:28:30 +0200
Message-Id: <546cf30aa43d6d0687a9a6c6d23b11128e5783e8.1697815135.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1697815135.git.nicola.vetrini@bugseng.com>
References: <cover.1697815135.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The purpose of this macro is to encapsulate the well-known expression
'x & -x', that in 2's complement architectures on unsigned integers will
give 2^ffs(x), where ffs(x) is the position of the lowest set bit in x.

A deviation for ECLAIR is also introduced.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
---
Changes in v2:
- rename to LOWEST_BIT
Changes in v3:
- entry for deviations.rst
- comment on the macro defn
---
 automation/eclair_analysis/ECLAIR/deviations.ecl |  6 ++++++
 docs/misra/deviations.rst                        |  7 +++++++
 xen/include/xen/macros.h                         |  7 +++++--
 xen/include/xen/types.h                          | 10 +++++-----
 4 files changed, 23 insertions(+), 7 deletions(-)

diff --git a/automation/eclair_analysis/ECLAIR/deviations.ecl b/automation/eclair_analysis/ECLAIR/deviations.ecl
index fa56e5c00a27..9390f6d839ff 100644
--- a/automation/eclair_analysis/ECLAIR/deviations.ecl
+++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
@@ -246,6 +246,12 @@ constant expressions are required.\""
   "any()"}
 -doc_end
 
+-doc_begin="The macro LOWEST_BIT encapsulates a well-known pattern to obtain the value
+2^ffs(x) for unsigned integers on two's complement architectures
+(all the architectures supported by Xen satisfy this requirement)."
+-config=MC3R1.R10.1,reports+={safe, "any_area(any_loc(any_exp(macro(^LOWEST_BIT$))))"}
+-doc_end
+
 #
 # Series 13
 #
diff --git a/docs/misra/deviations.rst b/docs/misra/deviations.rst
index 8511a189253b..c3c65f4a9454 100644
--- a/docs/misra/deviations.rst
+++ b/docs/misra/deviations.rst
@@ -192,6 +192,13 @@ Deviations related to MISRA C:2012 Rules:
        See automation/eclair_analysis/deviations.ecl for the full explanation.
      - Tagged as `safe` for ECLAIR.
 
+   * - R10.1
+     - The well-known pattern (x & -x) applied to unsigned integer values on 2's
+       complement architectures (i.e., all architectures supported by Xen), used
+       to obtain the value 2^ffs(x), where ffs(x) is the position of the first
+       bit set. If no bits are set, zero is returned.
+     - Tagged as `safe` for ECLAIR.
+
    * - R13.5
      - All developers and reviewers can be safely assumed to be well aware of
        the short-circuit evaluation strategy for logical operators.
diff --git a/xen/include/xen/macros.h b/xen/include/xen/macros.h
index d0caae7db298..49f3ebf848e9 100644
--- a/xen/include/xen/macros.h
+++ b/xen/include/xen/macros.h
@@ -8,8 +8,11 @@
 #define DIV_ROUND(n, d) (((n) + (d) / 2) / (d))
 #define DIV_ROUND_UP(n, d) (((n) + (d) - 1) / (d))
 
-#define MASK_EXTR(v, m) (((v) & (m)) / ((m) & -(m)))
-#define MASK_INSR(v, m) (((v) * ((m) & -(m))) & (m))
+/* Returns the 2^ffs(x) or 0, where ffs(x) is the index of the lowest set bit */
+#define LOWEST_BIT(x) ((x) & -(x))
+
+#define MASK_EXTR(v, m) (((v) & (m)) / LOWEST_BIT(m))
+#define MASK_INSR(v, m) (((v) * LOWEST_BIT(m)) & (m))
 
 #define count_args_(dot, a1, a2, a3, a4, a5, a6, a7, a8, x, ...) x
 #define count_args(args...) \
diff --git a/xen/include/xen/types.h b/xen/include/xen/types.h
index aea259db1ef2..23cad71c8a47 100644
--- a/xen/include/xen/types.h
+++ b/xen/include/xen/types.h
@@ -31,9 +31,9 @@ typedef __PTRDIFF_TYPE__ ptrdiff_t;
 #define NULL ((void*)0)
 #endif
 
-#define INT8_MIN        (-127-1)
-#define INT16_MIN       (-32767-1)
-#define INT32_MIN       (-2147483647-1)
+#define INT8_MIN        (-127 - 1)
+#define INT16_MIN       (-32767 - 1)
+#define INT32_MIN       (-2147483647 - 1)
 
 #define INT8_MAX        (127)
 #define INT16_MAX       (32767)
@@ -43,10 +43,10 @@ typedef __PTRDIFF_TYPE__ ptrdiff_t;
 #define UINT16_MAX      (65535)
 #define UINT32_MAX      (4294967295U)
 
-#define INT_MAX         ((int)(~0U>>1))
+#define INT_MAX         ((int)(~0U >> 1))
 #define INT_MIN         (-INT_MAX - 1)
 #define UINT_MAX        (~0U)
-#define LONG_MAX        ((long)(~0UL>>1))
+#define LONG_MAX        ((long)(~0UL >> 1))
 #define LONG_MIN        (-LONG_MAX - 1)
 #define ULONG_MAX       (~0UL)
 
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Fri Oct 20 15:28:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 15:28:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619832.965550 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtrQb-0005kC-O6; Fri, 20 Oct 2023 15:28:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619832.965550; Fri, 20 Oct 2023 15:28: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 1qtrQb-0005k5-Kt; Fri, 20 Oct 2023 15:28:45 +0000
Received: by outflank-mailman (input) for mailman id 619832;
 Fri, 20 Oct 2023 15:28: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=SYNS=GC=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qtrQa-0005jz-Mq
 for xen-devel@lists.xenproject.org; Fri, 20 Oct 2023 15:28:44 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 5a7d6fb6-6f5d-11ee-98d5-6d05b1d4d9a1;
 Fri, 20 Oct 2023 17:28:43 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id 303064EE073C;
 Fri, 20 Oct 2023 17:28: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: 5a7d6fb6-6f5d-11ee-98d5-6d05b1d4d9a1
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>,
	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>,
	Paul Durrant <paul@xen.org>
Subject: [XEN PATCH][for-4.19 v3 0/8] address violations of MISRA C:2012 Rule 10.1
Date: Fri, 20 Oct 2023 17:28:29 +0200
Message-Id: <cover.1697815135.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The widely-used construct
(x & -x), where x is an unsigned integer quantity represented in 2's complement,
does yield the expected result. Since all architectures that are targets for
compliance do fulfill such requirements, the construct is deemed safe and
deviated.

The use of 'DECLARE_BITMAP(features, IOMMU_FEAT_count);' is deviated, to avoid
harming code readability.

On the contrary, other uses of inappropriate types are changed.

Changes in v3:
- Patch [6/8] has already been picked up in Andrew's for-next tree

Nicola Vetrini (8):
  xen/include: add macro LOWEST_BIT
  arm/bitops: encapsulate violation of MISRA C:2012 Rule 10.1
  xen/pdx: amend definition of PDX_GROUP_COUNT
  x86_64/mm: express macro CNT using LOWEST_BIT
  x86/io_apic: address violation of MISRA C:2012 Rule 10.1
  x86/mce: Move MC_NCLASSES into the enum mctelem_class
  xen/types: address Rule 10.1 for DECLARE_BITMAP use
  xen/compat: use BUILD_BUG_ON in CHECK_SIZE macros

 automation/eclair_analysis/ECLAIR/deviations.ecl |  6 ++++++
 docs/misra/deviations.rst                        |  7 +++++++
 docs/misra/safe.json                             |  8 ++++++++
 xen/arch/arm/include/asm/bitops.h                |  6 ++++--
 xen/arch/x86/cpu/mcheck/mctelem.c                |  2 --
 xen/arch/x86/cpu/mcheck/mctelem.h                |  5 +++--
 xen/arch/x86/include/asm/io_apic.h               |  7 ++++---
 xen/arch/x86/x86_64/mm.c                         | 12 ++++++------
 xen/include/xen/compat.h                         | 16 +++++++++++-----
 xen/include/xen/iommu.h                          |  1 +
 xen/include/xen/macros.h                         |  7 +++++--
 xen/include/xen/pdx.h                            |  2 +-
 xen/include/xen/types.h                          | 15 ++++++++++-----
 13 files changed, 66 insertions(+), 28 deletions(-)

--
2.34.1


From xen-devel-bounces@lists.xenproject.org Fri Oct 20 15:28:51 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 15:28:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619834.965570 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtrQh-0006Gn-6C; Fri, 20 Oct 2023 15:28:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619834.965570; Fri, 20 Oct 2023 15:28: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 1qtrQh-0006Gd-2O; Fri, 20 Oct 2023 15:28:51 +0000
Received: by outflank-mailman (input) for mailman id 619834;
 Fri, 20 Oct 2023 15:28: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=SYNS=GC=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qtrQf-0006F5-Io
 for xen-devel@lists.xenproject.org; Fri, 20 Oct 2023 15:28:49 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 5cda470a-6f5d-11ee-9b0e-b553b5be7939;
 Fri, 20 Oct 2023 17:28:47 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id A755F4EE0744;
 Fri, 20 Oct 2023 17:28: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: 5cda470a-6f5d-11ee-9b0e-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>,
	Julien Grall <julien@xen.org>,
	Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: [XEN PATCH][for-4.19 v3 2/8] arm/bitops: encapsulate violation of MISRA C:2012 Rule 10.1
Date: Fri, 20 Oct 2023 17:28:31 +0200
Message-Id: <097fbfb19084bf1278f249c5653609ba1990cc23.1697815135.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1697815135.git.nicola.vetrini@bugseng.com>
References: <cover.1697815135.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The definitions of ffs{l}? violate Rule 10.1, by using the well-known
pattern (x & -x); its usage is wrapped by the LOWEST_BIT macro.

No functional change.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
---
 xen/arch/arm/include/asm/bitops.h | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/xen/arch/arm/include/asm/bitops.h b/xen/arch/arm/include/asm/bitops.h
index 71ae14cab355..8b5d61545e19 100644
--- a/xen/arch/arm/include/asm/bitops.h
+++ b/xen/arch/arm/include/asm/bitops.h
@@ -9,6 +9,8 @@
 #ifndef _ARM_BITOPS_H
 #define _ARM_BITOPS_H
 
+#include <xen/macros.h>
+
 #include <asm/asm_defns.h>
 
 /*
@@ -155,8 +157,8 @@ static inline int fls(unsigned int x)
 }
 
 
-#define ffs(x) ({ unsigned int __t = (x); fls(__t & -__t); })
-#define ffsl(x) ({ unsigned long __t = (x); flsl(__t & -__t); })
+#define ffs(x) ({ unsigned int __t = (x); fls(LOWEST_BIT(__t)); })
+#define ffsl(x) ({ unsigned long __t = (x); flsl(LOWEST_BIT(__t)); })
 
 /**
  * find_first_set_bit - find the first set bit in @word
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Fri Oct 20 15:28:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 15:28:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619835.965580 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtrQi-0006Wv-CA; Fri, 20 Oct 2023 15:28:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619835.965580; Fri, 20 Oct 2023 15:28: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 1qtrQi-0006Wm-9S; Fri, 20 Oct 2023 15:28:52 +0000
Received: by outflank-mailman (input) for mailman id 619835;
 Fri, 20 Oct 2023 15:28: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=SYNS=GC=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qtrQh-0006F5-1R
 for xen-devel@lists.xenproject.org; Fri, 20 Oct 2023 15:28:51 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 5df5289a-6f5d-11ee-9b0e-b553b5be7939;
 Fri, 20 Oct 2023 17:28:49 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id B211E4EE0745;
 Fri, 20 Oct 2023 17:28: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: 5df5289a-6f5d-11ee-9b0e-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>
Subject: [XEN PATCH][for-4.19 v3 3/8] xen/pdx: amend definition of PDX_GROUP_COUNT
Date: Fri, 20 Oct 2023 17:28:32 +0200
Message-Id: <3e088f3551a8c2058154d09552ca215c94b321ae.1697815135.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1697815135.git.nicola.vetrini@bugseng.com>
References: <cover.1697815135.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The definition of PDX_GROUP_COUNT causes violations of
MISRA C:2012 Rule 10.1, therefore the problematic part now uses
the LOWEST_BIT macro, which encapsulates the pattern.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
---
 xen/include/xen/pdx.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/xen/include/xen/pdx.h b/xen/include/xen/pdx.h
index f3fbc4273aa4..36d618a8ba7d 100644
--- a/xen/include/xen/pdx.h
+++ b/xen/include/xen/pdx.h
@@ -72,7 +72,7 @@
 extern unsigned long max_pdx;
 
 #define PDX_GROUP_COUNT ((1 << PDX_GROUP_SHIFT) / \
-                         (sizeof(*frame_table) & -sizeof(*frame_table)))
+                         (LOWEST_BIT(sizeof(*frame_table))))
 extern unsigned long pdx_group_valid[];
 
 /**
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Fri Oct 20 15:28:53 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 15:28:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619836.965590 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtrQj-0006nY-KO; Fri, 20 Oct 2023 15:28:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619836.965590; Fri, 20 Oct 2023 15: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 1qtrQj-0006nJ-Gh; Fri, 20 Oct 2023 15:28:53 +0000
Received: by outflank-mailman (input) for mailman id 619836;
 Fri, 20 Oct 2023 15:28: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=SYNS=GC=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qtrQi-0006F5-Iv
 for xen-devel@lists.xenproject.org; Fri, 20 Oct 2023 15:28:52 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 5ecf08ff-6f5d-11ee-9b0e-b553b5be7939;
 Fri, 20 Oct 2023 17:28:51 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id 814F64EE0740;
 Fri, 20 Oct 2023 17: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: 5ecf08ff-6f5d-11ee-9b0e-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>
Subject: [XEN PATCH][for-4.19 v3 4/8] x86_64/mm: express macro CNT using LOWEST_BIT
Date: Fri, 20 Oct 2023 17:28:33 +0200
Message-Id: <938d39e2885bdef399da5788f85b7749ccfd9654.1697815135.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1697815135.git.nicola.vetrini@bugseng.com>
References: <cover.1697815135.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The various definitions of macro CNT (and the related BUILD_BUG_ON)
can be rewritten using LOWEST_BIT, encapsulating a violation of
MISRA C:2012 Rule 10.1.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
---
 xen/arch/x86/x86_64/mm.c | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/xen/arch/x86/x86_64/mm.c b/xen/arch/x86/x86_64/mm.c
index c3ebb777144a..0eb7b71124f5 100644
--- a/xen/arch/x86/x86_64/mm.c
+++ b/xen/arch/x86/x86_64/mm.c
@@ -351,9 +351,9 @@ static int setup_compat_m2p_table(struct mem_hotadd_info *info)
                 ~((1UL << (L2_PAGETABLE_SHIFT - 2)) - 1) );
 
 #define MFN(x) (((x) << L2_PAGETABLE_SHIFT) / sizeof(unsigned int))
-#define CNT ((sizeof(*frame_table) & -sizeof(*frame_table)) / \
+#define CNT (LOWEST_BIT(sizeof(*frame_table)) / \
              sizeof(*compat_machine_to_phys_mapping))
-    BUILD_BUG_ON((sizeof(*frame_table) & -sizeof(*frame_table)) % \
+    BUILD_BUG_ON(LOWEST_BIT(sizeof(*frame_table)) % \
                  sizeof(*compat_machine_to_phys_mapping));
 
     for ( i = smap; i < emap; i += (1UL << (L2_PAGETABLE_SHIFT - 2)) )
@@ -410,10 +410,10 @@ static int setup_m2p_table(struct mem_hotadd_info *info)
     va = RO_MPT_VIRT_START + smap * sizeof(*machine_to_phys_mapping);
 
 #define MFN(x) (((x) << L2_PAGETABLE_SHIFT) / sizeof(unsigned long))
-#define CNT ((sizeof(*frame_table) & -sizeof(*frame_table)) / \
+#define CNT (LOWEST_BIT(sizeof(*frame_table)) / \
              sizeof(*machine_to_phys_mapping))
 
-    BUILD_BUG_ON((sizeof(*frame_table) & -sizeof(*frame_table)) % \
+    BUILD_BUG_ON(LOWEST_BIT(sizeof(*frame_table)) % \
                  sizeof(*machine_to_phys_mapping));
 
     i = smap;
@@ -539,7 +539,7 @@ void __init paging_init(void)
     mpt_size  = (max_page * BYTES_PER_LONG) + (1UL << L2_PAGETABLE_SHIFT) - 1;
     mpt_size &= ~((1UL << L2_PAGETABLE_SHIFT) - 1UL);
 #define MFN(x) (((x) << L2_PAGETABLE_SHIFT) / sizeof(unsigned long))
-#define CNT ((sizeof(*frame_table) & -sizeof(*frame_table)) / \
+#define CNT (LOWEST_BIT(sizeof(*frame_table)) / \
              sizeof(*machine_to_phys_mapping))
     BUILD_BUG_ON((sizeof(*frame_table) & ~sizeof(*frame_table)) % \
                  sizeof(*machine_to_phys_mapping));
@@ -666,7 +666,7 @@ void __init paging_init(void)
         mpt_size = 0;
 
 #define MFN(x) (((x) << L2_PAGETABLE_SHIFT) / sizeof(unsigned int))
-#define CNT ((sizeof(*frame_table) & -sizeof(*frame_table)) / \
+#define CNT (LOWEST_BIT(sizeof(*frame_table)) / \
              sizeof(*compat_machine_to_phys_mapping))
     BUILD_BUG_ON((sizeof(*frame_table) & ~sizeof(*frame_table)) % \
                  sizeof(*compat_machine_to_phys_mapping));
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Fri Oct 20 15:28:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 15:28:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619837.965600 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtrQl-00076O-Sx; Fri, 20 Oct 2023 15:28:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619837.965600; Fri, 20 Oct 2023 15: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 1qtrQl-000769-Pl; Fri, 20 Oct 2023 15:28:55 +0000
Received: by outflank-mailman (input) for mailman id 619837;
 Fri, 20 Oct 2023 15:28: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=SYNS=GC=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qtrQk-0006F5-00
 for xen-devel@lists.xenproject.org; Fri, 20 Oct 2023 15:28:54 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 5fb0a006-6f5d-11ee-9b0e-b553b5be7939;
 Fri, 20 Oct 2023 17:28:52 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id 03BDC4EE0741;
 Fri, 20 Oct 2023 17:28: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: 5fb0a006-6f5d-11ee-9b0e-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>
Subject: [XEN PATCH][for-4.19 v3 5/8] x86/io_apic: address violation of MISRA C:2012 Rule 10.1
Date: Fri, 20 Oct 2023 17:28:34 +0200
Message-Id: <4db1f326a6dec164e2d3536caaedd9038407a6e7.1697815135.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1697815135.git.nicola.vetrini@bugseng.com>
References: <cover.1697815135.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The definition of IO_APIC_BASE contains a sum of an essentially enum
value (FIX_IO_APIC_BASE_0) that is positive with an index that, in all
instances, is unsigned, therefore the former is cast to unsigned, so that
the operands are of the same essential type.

No functional change.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
---
Eventually __fix_to_virt may become an inline function; in that case,
it should retain unsigned int as its parameter type.

Changes in v3:
- style fix
- Add missing S-o-b
---
 xen/arch/x86/include/asm/io_apic.h | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/xen/arch/x86/include/asm/io_apic.h b/xen/arch/x86/include/asm/io_apic.h
index a7e4c9e146de..206bb961c005 100644
--- a/xen/arch/x86/include/asm/io_apic.h
+++ b/xen/arch/x86/include/asm/io_apic.h
@@ -14,9 +14,10 @@
  * Copyright (C) 1997, 1998, 1999, 2000 Ingo Molnar
  */
 
-#define IO_APIC_BASE(idx)                                               \
-    ((volatile uint32_t *)(__fix_to_virt(FIX_IO_APIC_BASE_0 + (idx))    \
-                           + (mp_ioapics[idx].mpc_apicaddr & ~PAGE_MASK)))
+#define IO_APIC_BASE(idx)                                         \
+    ((volatile uint32_t *)                                        \
+     (__fix_to_virt((unsigned int)FIX_IO_APIC_BASE_0 + (idx)) +   \
+                    (mp_ioapics[idx].mpc_apicaddr & ~PAGE_MASK)))
 
 #define IO_APIC_ID(idx) (mp_ioapics[idx].mpc_apicid)
 
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Fri Oct 20 15:28:57 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 15:28:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619838.965611 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtrQn-0007NW-9h; Fri, 20 Oct 2023 15:28:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619838.965611; Fri, 20 Oct 2023 15: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 1qtrQn-0007MV-3e; Fri, 20 Oct 2023 15:28:57 +0000
Received: by outflank-mailman (input) for mailman id 619838;
 Fri, 20 Oct 2023 15:28: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=SYNS=GC=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qtrQl-0006F5-Pf
 for xen-devel@lists.xenproject.org; Fri, 20 Oct 2023 15:28:55 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 60c1a75f-6f5d-11ee-9b0e-b553b5be7939;
 Fri, 20 Oct 2023 17:28:54 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id 853374EE0746;
 Fri, 20 Oct 2023 17:28: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: 60c1a75f-6f5d-11ee-9b0e-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>
Subject: [XEN PATCH][for-4.19 v3 6/8] x86/mce: Move MC_NCLASSES into the enum mctelem_class
Date: Fri, 20 Oct 2023 17:28:35 +0200
Message-Id: <3e1f28494f0080e7bf3c31de8cefaf12e653710b.1697815135.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1697815135.git.nicola.vetrini@bugseng.com>
References: <cover.1697815135.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The definition of MC_NCLASSES contained a violation of MISRA C:2012
Rule 10.1, therefore by moving it as an enumeration constant resolves the
violation and makes it more resilient to possible additions to that enum.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
---
This patch has already been picked up in Andrew's for-next tree.

Note that the use of an enum constant as operand to [ ] and != is allowed
by the Rule.
---
 xen/arch/x86/cpu/mcheck/mctelem.c | 2 --
 xen/arch/x86/cpu/mcheck/mctelem.h | 5 +++--
 2 files changed, 3 insertions(+), 4 deletions(-)

diff --git a/xen/arch/x86/cpu/mcheck/mctelem.c b/xen/arch/x86/cpu/mcheck/mctelem.c
index 329ac20faf96..77a4d1d5ff48 100644
--- a/xen/arch/x86/cpu/mcheck/mctelem.c
+++ b/xen/arch/x86/cpu/mcheck/mctelem.c
@@ -64,8 +64,6 @@ struct mctelem_ent {
 
 #define MC_NENT (MC_URGENT_NENT + MC_NONURGENT_NENT)
 
-#define	MC_NCLASSES		(MC_NONURGENT + 1)
-
 #define	COOKIE2MCTE(c)		((struct mctelem_ent *)(c))
 #define	MCTE2COOKIE(tep)	((mctelem_cookie_t)(tep))
 
diff --git a/xen/arch/x86/cpu/mcheck/mctelem.h b/xen/arch/x86/cpu/mcheck/mctelem.h
index d4eba53ae0e5..21b251847bc0 100644
--- a/xen/arch/x86/cpu/mcheck/mctelem.h
+++ b/xen/arch/x86/cpu/mcheck/mctelem.h
@@ -55,8 +55,9 @@
 typedef struct mctelem_cookie *mctelem_cookie_t;
 
 typedef enum mctelem_class {
-	MC_URGENT,
-	MC_NONURGENT
+    MC_URGENT,
+    MC_NONURGENT,
+    MC_NCLASSES
 } mctelem_class_t;
 
 extern void mctelem_init(unsigned int);
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Fri Oct 20 15:28:57 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 15:28:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619839.965616 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtrQn-0007SY-Nm; Fri, 20 Oct 2023 15:28:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619839.965616; Fri, 20 Oct 2023 15: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 1qtrQn-0007S9-FF; Fri, 20 Oct 2023 15:28:57 +0000
Received: by outflank-mailman (input) for mailman id 619839;
 Fri, 20 Oct 2023 15:28: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=SYNS=GC=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qtrQm-0005jz-O7
 for xen-devel@lists.xenproject.org; Fri, 20 Oct 2023 15:28:56 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 61f0e886-6f5d-11ee-98d5-6d05b1d4d9a1;
 Fri, 20 Oct 2023 17:28:56 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id 462E94EE0744;
 Fri, 20 Oct 2023 17:28: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: 61f0e886-6f5d-11ee-98d5-6d05b1d4d9a1
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>,
	Paul Durrant <paul@xen.org>
Subject: [XEN PATCH][for-4.19 v3 7/8] xen/types: address Rule 10.1 for DECLARE_BITMAP use
Date: Fri, 20 Oct 2023 17:28:36 +0200
Message-Id: <9fd2cc7aa1a8640630910f873f6ddb65ed7adb6e.1697815135.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1697815135.git.nicola.vetrini@bugseng.com>
References: <cover.1697815135.git.nicola.vetrini@bugseng.com>
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
in macro 'BITS_TO_LONGS'.

This construct is deviated with a deviation comment.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
---
Changes in v3:
- edited comment
---
 docs/misra/safe.json    | 8 ++++++++
 xen/include/xen/iommu.h | 1 +
 xen/include/xen/types.h | 5 +++++
 3 files changed, 14 insertions(+)

diff --git a/docs/misra/safe.json b/docs/misra/safe.json
index 39c5c056c7d4..952324f85cf9 100644
--- a/docs/misra/safe.json
+++ b/docs/misra/safe.json
@@ -20,6 +20,14 @@
         },
         {
             "id": "SAF-2-safe",
+            "analyser": {
+                "eclair": "MC3R1.R10.1"
+            },
+            "name": "MC3R1.R10.1: use of an enumeration constant in an arithmetic operation",
+            "text": "This violation can be fixed with a cast to (int) of the enumeration constant, but a deviation was chosen due to code readability (see also the comment in BITS_TO_LONGS)."
+        },
+        {
+            "id": "SAF-3-safe",
             "analyser": {},
             "name": "Sentinel",
             "text": "Next ID to be used"
diff --git a/xen/include/xen/iommu.h b/xen/include/xen/iommu.h
index 0e747b0bbc1c..d5c25770915b 100644
--- a/xen/include/xen/iommu.h
+++ b/xen/include/xen/iommu.h
@@ -360,6 +360,7 @@ struct domain_iommu {
 #endif
 
     /* Features supported by the IOMMU */
+    /* SAF-2-safe enum constant in arithmetic operation */
     DECLARE_BITMAP(features, IOMMU_FEAT_count);
 
     /* Does the guest share HAP mapping with the IOMMU? */
diff --git a/xen/include/xen/types.h b/xen/include/xen/types.h
index 23cad71c8a47..9603ab70b54d 100644
--- a/xen/include/xen/types.h
+++ b/xen/include/xen/types.h
@@ -22,6 +22,11 @@ typedef signed long ssize_t;
 
 typedef __PTRDIFF_TYPE__ ptrdiff_t;
 
+/*
+ * Users of this macro are expected to pass a positive value.
+ *
+ * XXX: should become an unsigned quantity
+ */
 #define BITS_TO_LONGS(bits) \
     (((bits)+BITS_PER_LONG-1)/BITS_PER_LONG)
 #define DECLARE_BITMAP(name,bits) \
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Fri Oct 20 15:29:00 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 15:29:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619840.965629 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtrQq-00080B-8D; Fri, 20 Oct 2023 15:29:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619840.965629; Fri, 20 Oct 2023 15:29: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 1qtrQq-0007zw-4x; Fri, 20 Oct 2023 15:29:00 +0000
Received: by outflank-mailman (input) for mailman id 619840;
 Fri, 20 Oct 2023 15:28: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=SYNS=GC=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qtrQo-0005jz-IQ
 for xen-devel@lists.xenproject.org; Fri, 20 Oct 2023 15:28:58 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 6308a7b7-6f5d-11ee-98d5-6d05b1d4d9a1;
 Fri, 20 Oct 2023 17:28:58 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id 3AFB14EE0745;
 Fri, 20 Oct 2023 17:28: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: 6308a7b7-6f5d-11ee-98d5-6d05b1d4d9a1
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>
Subject: [XEN PATCH][for-4.19 v3 8/8] xen/compat: use BUILD_BUG_ON in CHECK_SIZE macros
Date: Fri, 20 Oct 2023 17:28:37 +0200
Message-Id: <cabd7c61f32b06a577026a92f3231b89c504babb.1697815135.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1697815135.git.nicola.vetrini@bugseng.com>
References: <cover.1697815135.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

BUILD_BUG_ON is the preferred way to induce a build error
upon statically determined incorrect conditions.

This also fixes a MISRA C:2012 Rule 10.1 violation in the
previous formulation.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
---
Changes in v2:
- replace the construct with a BUILD_BUG_ON.
Changes in v3:
- drop unused typedef.
---
 xen/include/xen/compat.h | 16 +++++++++++-----
 1 file changed, 11 insertions(+), 5 deletions(-)

diff --git a/xen/include/xen/compat.h b/xen/include/xen/compat.h
index f2ce5bb3580a..41a5d61eef98 100644
--- a/xen/include/xen/compat.h
+++ b/xen/include/xen/compat.h
@@ -151,12 +151,18 @@ CHECK_NAME_(k, n, T)(k xen_ ## n *x, \
     return x == c; \
 }
 
-#define CHECK_SIZE(name) \
-    typedef int CHECK_NAME(name, S)[1 - (sizeof(xen_ ## name ## _t) != \
-                                         sizeof(compat_ ## name ## _t)) * 2]
+#define CHECK_SIZE(name)                                  \
+static inline void __maybe_unused CHECK_SIZE_##name(void) \
+{                                                         \
+    BUILD_BUG_ON(sizeof(xen_ ## name ## _t) !=            \
+                 sizeof(compat_ ## name ## _t));          \
+}
 #define CHECK_SIZE_(k, n) \
-    typedef int CHECK_NAME_(k, n, S)[1 - (sizeof(k xen_ ## n) != \
-                                          sizeof(k compat_ ## n)) * 2]
+static inline void __maybe_unused CHECK_SIZE_##k_##n(void) \
+{                                                          \
+    BUILD_BUG_ON(sizeof(k xen_ ## n) !=                    \
+                 sizeof(k compat_ ## n));                  \
+}
 
 #define CHECK_FIELD_COMMON(name, t, f) \
 static inline int __maybe_unused name(xen_ ## t ## _t *x, compat_ ## t ## _t *c) \
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Fri Oct 20 15:39:26 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 15:39:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619869.965640 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtram-0004B2-7x; Fri, 20 Oct 2023 15:39:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619869.965640; Fri, 20 Oct 2023 15:39: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 1qtram-0004Av-4g; Fri, 20 Oct 2023 15:39:16 +0000
Received: by outflank-mailman (input) for mailman id 619869;
 Fri, 20 Oct 2023 15:39: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=19pQ=GC=suse.com=jgross@srs-se1.protection.inumbo.net>)
 id 1qtral-0004Ap-CD
 for xen-devel@lists.xenproject.org; Fri, 20 Oct 2023 15:39:15 +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 d1fcf6ec-6f5e-11ee-98d5-6d05b1d4d9a1;
 Fri, 20 Oct 2023 17:39:14 +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 A49A0216DA;
 Fri, 20 Oct 2023 15:39:12 +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 2EEB7138E2;
 Fri, 20 Oct 2023 15:39:12 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap2.suse-dmz.suse.de with ESMTPSA id UHsDCSCfMmXxagAAMHmgww
 (envelope-from <jgross@suse.com>); Fri, 20 Oct 2023 15:39: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: d1fcf6ec-6f5e-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1697816352; 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=l19PmirbpaGSX2xf75DiIab4GmBbwuUCCPjHlH8KvoA=;
	b=EdEOV1HdboFObV56Tp84XGv49a3mb9q3R1J5Lla4Fh8GsbXb7FSQeQ1g+w6ard7uC1/WRe
	O+MFf1nPIatSgLx7b1IWzU+wqUCKxh5KzeGuCTVX9iKDs7knQ4gEjzXyloN51ulG3nprs3
	tlpMiuiDEHJTmFzUcUqdW9U/AqoGD7I=
Message-ID: <2a02e3c2-b5c7-4bf0-8dcc-1e424efbfb6b@suse.com>
Date: Fri, 20 Oct 2023 17:39:11 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH] x86/xen/pvh: Enable PAE mode for 32-bit guest only when
 CONFIG_X86_PAE is set
Content-Language: en-US
To: Hou Wenlong <houwenlong.hwl@antgroup.com>, linux-kernel@vger.kernel.org
Cc: Boris Ostrovsky <boris.ostrovsky@oracle.com>,
 Darren Hart <dvhart@infradead.org>, Andy Shevchenko <andy@infradead.org>,
 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>,
 "moderated list:XEN HYPERVISOR X86" <xen-devel@lists.xenproject.org>,
 "open list:X86 PLATFORM DRIVERS - ARCH" <platform-driver-x86@vger.kernel.org>
References: <8c5448eeebbba998a7fff9ed9b2f7e7f3e437967.1697792461.git.houwenlong.hwl@antgroup.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: <8c5448eeebbba998a7fff9ed9b2f7e7f3e437967.1697792461.git.houwenlong.hwl@antgroup.com>
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature";
 boundary="------------oYfjd9pOR94jIfoHKNHseXn5"
Authentication-Results: smtp-out1.suse.de;
	none
X-Spam-Level: 
X-Spam-Score: -8.99
X-Spamd-Result: default: False [-8.99 / 50.00];
	 ARC_NA(0.00)[];
	 RCVD_VIA_SMTP_AUTH(0.00)[];
	 XM_UA_NO_VERSION(0.01)[];
	 FROM_HAS_DN(0.00)[];
	 TO_DN_SOME(0.00)[];
	 TO_MATCH_ENVRCPT_ALL(0.00)[];
	 BAYES_HAM(-0.00)[35.08%];
	 MIME_GOOD(-0.20)[multipart/signed,multipart/mixed,text/plain];
	 HAS_ATTACHMENT(0.00)[];
	 REPLY(-4.00)[];
	 MIME_BASE64_TEXT_BOGUS(1.00)[];
	 NEURAL_HAM_LONG(-3.00)[-1.000];
	 DKIM_SIGNED(0.00)[suse.com:s=susede1];
	 NEURAL_HAM_SHORT(-1.00)[-1.000];
	 MIME_BASE64_TEXT(0.10)[];
	 RCPT_COUNT_TWELVE(0.00)[13];
	 SIGNED_PGP(-2.00)[];
	 FROM_EQ_ENVFROM(0.00)[];
	 MIME_TRACE(0.00)[0:+,1:+,2:+,3:+,4:~,5:~];
	 RCVD_COUNT_TWO(0.00)[2];
	 RCVD_TLS_ALL(0.00)[];
	 MID_RHS_MATCH_FROM(0.00)[];
	 MIME_UNKNOWN(0.10)[application/pgp-keys]
X-Spam-Flag: NO

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--------------oYfjd9pOR94jIfoHKNHseXn5
Content-Type: multipart/mixed; boundary="------------zSdCr8BoN6Tlvn8KMsYPcQaN";
 protected-headers="v1"
From: Juergen Gross <jgross@suse.com>
To: Hou Wenlong <houwenlong.hwl@antgroup.com>, linux-kernel@vger.kernel.org
Cc: Boris Ostrovsky <boris.ostrovsky@oracle.com>,
 Darren Hart <dvhart@infradead.org>, Andy Shevchenko <andy@infradead.org>,
 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>,
 "moderated list:XEN HYPERVISOR X86" <xen-devel@lists.xenproject.org>,
 "open list:X86 PLATFORM DRIVERS - ARCH" <platform-driver-x86@vger.kernel.org>
Message-ID: <2a02e3c2-b5c7-4bf0-8dcc-1e424efbfb6b@suse.com>
Subject: Re: [PATCH] x86/xen/pvh: Enable PAE mode for 32-bit guest only when
 CONFIG_X86_PAE is set
References: <8c5448eeebbba998a7fff9ed9b2f7e7f3e437967.1697792461.git.houwenlong.hwl@antgroup.com>
In-Reply-To: <8c5448eeebbba998a7fff9ed9b2f7e7f3e437967.1697792461.git.houwenlong.hwl@antgroup.com>

--------------zSdCr8BoN6Tlvn8KMsYPcQaN
Content-Type: multipart/mixed; boundary="------------yibVqGzuIslmeND6naLvZL0u"

--------------yibVqGzuIslmeND6naLvZL0u
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: base64

T24gMjAuMTAuMjMgMTE6MDgsIEhvdSBXZW5sb25nIHdyb3RlOg0KPiBUaGUgUFZIIGVudHJ5
IGlzIGF2YWlsYWJsZSBmb3IgMzItYml0IEtWTSBndWVzdHMsIGFuZCAzMi1iaXQgS1ZNIGd1
ZXN0cw0KPiBkbyBub3QgZGVwZW5kIG9uIENPTkZJR19YODZfUEFFLiBIb3dldmVyLCBta19l
YXJseV9wZ3RibF8zMigpIGJ1aWxkcw0KPiBkaWZmZXJlbnQgcGFnZXRhYmxlcyBkZXBlbmRp
bmcgb24gd2hldGhlciBDT05GSUdfWDg2X1BBRSBpcyBzZXQuDQo+IFRoZXJlZm9yZSwgZW5h
YmxpbmcgUEFFIG1vZGUgZm9yIDMyLWJpdCBLVk0gZ3Vlc3RzIHdpdGhvdXQNCj4gQ09ORklH
X1g4Nl9QQUUgYmVpbmcgc2V0IHdvdWxkIHJlc3VsdCBpbiBhIGJvb3QgZmFpbHVyZSBkdXJp
bmcgQ1IzDQo+IGxvYWRpbmcuDQo+IA0KPiBTaWduZWQtb2ZmLWJ5OiBIb3UgV2VubG9uZyA8
aG91d2VubG9uZy5od2xAYW50Z3JvdXAuY29tPg0KDQpSZXZpZXdlZC1ieTogSnVlcmdlbiBH
cm9zcyA8amdyb3NzQHN1c2UuY29tPg0KDQoNCkp1ZXJnZW4NCg0K
--------------yibVqGzuIslmeND6naLvZL0u
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-----

--------------yibVqGzuIslmeND6naLvZL0u--

--------------zSdCr8BoN6Tlvn8KMsYPcQaN--

--------------oYfjd9pOR94jIfoHKNHseXn5
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/Ey8FAmUynx8FAwAAAAAACgkQsN6d1ii/Ey9A
rQf/QxBZ3uGz/gtWwqKMLC7hcnjxyPmsmxS2cWm3UU5OGIWblsS6z9eib+Zp15CpQJpWTQlbKeN6
lRAAQD7Z1t+6B2vg2/OPVWieDSH3J3rNhivbxcB5qML1Twnb4SNdbFJQwOYXjeeDuhCXMDhhT5Xp
7hxkCIp3xynqNGXYuglLitAbbowd3OxpAF2aFpOJsZDetmvhXXoHE4O6KSrUdMWB00hVfxzeMor4
PirLDq74zsk0XzAhx7ZxHYwZSGLg9FMQsgoB5b5Ipph5x0pcQzvyliGOQLsqEuJewb4R35u2Dncy
ZTl4W3Qge2vCos7gECr8R0aKTmRQLxAM8tSaye3Tsg==
=G7xQ
-----END PGP SIGNATURE-----

--------------oYfjd9pOR94jIfoHKNHseXn5--


From xen-devel-bounces@lists.xenproject.org Fri Oct 20 16:15:48 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 16:15:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619874.965664 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtsA4-0004Uo-Bs; Fri, 20 Oct 2023 16:15:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619874.965664; Fri, 20 Oct 2023 16:15: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 1qtsA4-0004UZ-5t; Fri, 20 Oct 2023 16:15:44 +0000
Received: by outflank-mailman (input) for mailman id 619874;
 Fri, 20 Oct 2023 16:15: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=fjAU=GC=casper.srs.infradead.org=BATV+5f4592396010e9e3c002+7362+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qtsA2-0004Dr-WA
 for xen-devel@lists.xenproject.org; Fri, 20 Oct 2023 16:15:42 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id e71fc38f-6f63-11ee-9b0e-b553b5be7939;
 Fri, 20 Oct 2023 18:15:36 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qts9u-00E44E-8P; Fri, 20 Oct 2023 16:15:34 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1qts9s-001UOc-1F; Fri, 20 Oct 2023 17:15:32 +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
X-Inumbo-ID: e71fc38f-6f63-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=tKr5NCYEWPmX5deg+2Ptja2Fo3YNlvlkNEh9wJh6ZDg=; b=ERnIsojrkc5WLnr34IDZQWQKrG
	wFzlSNa4uSGkth0zeh9LHdVk5FXd6R1LgmCBut8RlHh4SGdWnzA22SU/ejGMiigfeW+6R5k7l2fg2
	0uiPSrmfiUIoAU5Q2qVPTTjT2kI+9So4NYm2If5BnDiMQZk7Rt7YUcegC1ffCiPYVpfP+E6Imy9hV
	i2YFd5mM2Jc+985Yim+drAaCsJdkxvZKx7L2lWkn8w4S+76vvn2Jy23msUjaZ2EOVxJJfAY6wkfgh
	GDrxLxeDVf77oL1C2C89fPb2hRzeM7pGCmELvA/wEZqdkqmaffpDBxTbaPsfNHSm8zNZg6XsaeLtV
	M17Mpk1w==;
From: David Woodhouse <dwmw2@infradead.org>
To: Juergen Gross <jgross@suse.com>,
	xen-devel@lists.xenproject.org
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	Jiri Slaby <jirislaby@kernel.org>,
	Roger Pau Monne <roger.pau@citrix.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Dawei Li <set_pte_at@outlook.com>,
	linuxppc-dev@lists.ozlabs.org,
	linux-kernel@vger.kernel.org,
	linux-serial@vger.kernel.org,
	Paul Durrant <paul@xen.org>
Subject: [PATCH v2 3/3] hvc/xen: fix console unplug
Date: Fri, 20 Oct 2023 17:15:29 +0100
Message-Id: <20231020161529.355083-4-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231020161529.355083-1-dwmw2@infradead.org>
References: <20231020161529.355083-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

On unplug of a Xen console, xencons_disconnect_backend() unconditionally
calls free_irq() via unbind_from_irqhandler(), causing a warning of
freeing an already-free IRQ:

(qemu) device_del con1
[   32.050919] ------------[ cut here ]------------
[   32.050942] Trying to free already-free IRQ 33
[   32.050990] WARNING: CPU: 0 PID: 51 at kernel/irq/manage.c:1895 __free_irq+0x1d4/0x330

It should be using evtchn_put() to tear down the event channel binding,
and let the Linux IRQ side of it be handled by notifier_del_irq() through
the HVC code.

On which topic... xencons_disconnect_backend() should call hvc_remove()
*first*, rather than tearing down the event channel and grant mapping
while they are in use. And then the IRQ is guaranteed to be freed by
the time it's torn down by evtchn_put().

Since evtchn_put() also closes the actual event channel, avoid calling
xenbus_free_evtchn() except in the failure path where the IRQ was not
successfully set up.

However, calling hvc_remove() at the start of xencons_disconnect_backend()
still isn't early enough. An unplug request is indicated by the backend
setting its state to XenbusStateClosing, which triggers a notification
to xencons_backend_changed(), which... does nothing except set its own
frontend state directly to XenbusStateClosed without *actually* tearing
down the HVC device or, you know, making sure it isn't actively in use.

So the backend sees the guest frontend set its state to XenbusStateClosed
and stops servicing the interrupt... and the guest spins for ever in the
domU_write_console() function waiting for the ring to drain.

Fix that one by calling hvc_remove() from xencons_backend_changed() before
signalling to the backend that it's OK to proceed with the removal.

Tested with 'dd if=/dev/zero of=/dev/hvc1' while telling Qemu to remove
the console device.

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
Cc: stable@vger.kernel.org
---
 drivers/tty/hvc/hvc_xen.c | 32 ++++++++++++++++++++++++--------
 1 file changed, 24 insertions(+), 8 deletions(-)

diff --git a/drivers/tty/hvc/hvc_xen.c b/drivers/tty/hvc/hvc_xen.c
index 4a768b504263..34c01874f45b 100644
--- a/drivers/tty/hvc/hvc_xen.c
+++ b/drivers/tty/hvc/hvc_xen.c
@@ -377,18 +377,21 @@ void xen_console_resume(void)
 #ifdef CONFIG_HVC_XEN_FRONTEND
 static void xencons_disconnect_backend(struct xencons_info *info)
 {
-	if (info->irq > 0)
-		unbind_from_irqhandler(info->irq, NULL);
-	info->irq = 0;
+	if (info->hvc != NULL)
+		hvc_remove(info->hvc);
+	info->hvc = NULL;
+	if (info->irq > 0) {
+		evtchn_put(info->evtchn);
+		info->irq = 0;
+		info->evtchn = 0;
+	}
+	/* evtchn_put() will also close it so this is only an error path */
 	if (info->evtchn > 0)
 		xenbus_free_evtchn(info->xbdev, info->evtchn);
 	info->evtchn = 0;
 	if (info->gntref > 0)
 		gnttab_free_grant_references(info->gntref);
 	info->gntref = 0;
-	if (info->hvc != NULL)
-		hvc_remove(info->hvc);
-	info->hvc = NULL;
 }
 
 static void xencons_free(struct xencons_info *info)
@@ -553,10 +556,23 @@ static void xencons_backend_changed(struct xenbus_device *dev,
 		if (dev->state == XenbusStateClosed)
 			break;
 		fallthrough;	/* Missed the backend's CLOSING state */
-	case XenbusStateClosing:
+	case XenbusStateClosing: {
+		struct xencons_info *info = dev_get_drvdata(&dev->dev);;
+
+		/*
+		 * Don't tear down the evtchn and grant ref before the other
+		 * end has disconnected, but do stop userspace from trying
+		 * to use the device before we allow the backend to close.
+		 */
+		if (info->hvc) {
+			hvc_remove(info->hvc);
+			info->hvc = NULL;
+		}
+
 		xenbus_frontend_closed(dev);
 		break;
 	}
+	}
 }
 
 static const struct xenbus_device_id xencons_ids[] = {
@@ -616,7 +632,7 @@ static int __init xen_hvc_init(void)
 		list_del(&info->list);
 		spin_unlock_irqrestore(&xencons_lock, flags);
 		if (info->irq)
-			unbind_from_irqhandler(info->irq, NULL);
+			evtchn_put(info->evtchn);
 		kfree(info);
 		return r;
 	}
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Fri Oct 20 16:15:48 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 16:15:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619873.965660 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtsA4-0004T0-2D; Fri, 20 Oct 2023 16:15:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619873.965660; Fri, 20 Oct 2023 16:15: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 1qtsA3-0004Sr-Vg; Fri, 20 Oct 2023 16:15:43 +0000
Received: by outflank-mailman (input) for mailman id 619873;
 Fri, 20 Oct 2023 16:15: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=fjAU=GC=casper.srs.infradead.org=BATV+5f4592396010e9e3c002+7362+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qtsA2-0004Dr-Oo
 for xen-devel@lists.xenproject.org; Fri, 20 Oct 2023 16:15:42 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id e71fc3c1-6f63-11ee-9b0e-b553b5be7939;
 Fri, 20 Oct 2023 18:15:36 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qts9u-00E44C-84; Fri, 20 Oct 2023 16:15:34 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1qts9s-001UOZ-13; Fri, 20 Oct 2023 17:15:32 +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
X-Inumbo-ID: e71fc3c1-6f63-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=Sender:Content-Transfer-Encoding:
	Content-Type:MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:
	To:From:Reply-To:Content-ID:Content-Description;
	bh=I4hMGAn3CCXbvIhFniLsRuw1X84vM7LzNgk6oVf6hDo=; b=g6XL6KrLFvXCVI21u1A5KeupFv
	+QFnHNBtXPSX2WGx/qzbR8hAv15UjjS3G7GeUcRbT6Gzod96JethLXROgfY3uc2SU169IvhiZdRGh
	PQGKjDFv0/nWu/OIs7h5I+YdQjcKmWPq6iD07vRG6QQQEc9KMRwcxd9MEFfDm+JhqgzS/494qQBHg
	cmRRbbr+caoCft14R2moMfBDrzAlzzoBVVkfYfN3hN7MnKJVzuTCxV7GKaf92411iUcMwW41EdBZu
	LzyJ/6kNrv4xSgCoDDiOqDloTvQ2En//Zuw6p8kbzieBn/ZS50xuBKNEiKD53bPkfqRtyRa8Wwy2S
	MoYvVmXQ==;
From: David Woodhouse <dwmw2@infradead.org>
To: Juergen Gross <jgross@suse.com>,
	xen-devel@lists.xenproject.org
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	Jiri Slaby <jirislaby@kernel.org>,
	Roger Pau Monne <roger.pau@citrix.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Dawei Li <set_pte_at@outlook.com>,
	linuxppc-dev@lists.ozlabs.org,
	linux-kernel@vger.kernel.org,
	linux-serial@vger.kernel.org,
	Paul Durrant <paul@xen.org>
Subject: [PATCH v2 2/3] hvc/xen: fix error path in xen_hvc_init() to always register frontend driver
Date: Fri, 20 Oct 2023 17:15:28 +0100
Message-Id: <20231020161529.355083-3-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231020161529.355083-1-dwmw2@infradead.org>
References: <20231020161529.355083-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

The xen_hvc_init() function should always register the frontend driver,
even when there's no primary console — as there may be secondary consoles.
(Qemu can always add secondary consoles, but only the toolstack can add
the primary because it's special.)

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
Reviewed-by: Juergen Gross <jgross@suse.com>
Cc: stable@vger.kernel.org
---
 drivers/tty/hvc/hvc_xen.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/drivers/tty/hvc/hvc_xen.c b/drivers/tty/hvc/hvc_xen.c
index f24e285b6441..4a768b504263 100644
--- a/drivers/tty/hvc/hvc_xen.c
+++ b/drivers/tty/hvc/hvc_xen.c
@@ -588,7 +588,7 @@ static int __init xen_hvc_init(void)
 		ops = &dom0_hvc_ops;
 		r = xen_initial_domain_console_init();
 		if (r < 0)
-			return r;
+			goto register_fe;
 		info = vtermno_to_xencons(HVC_COOKIE);
 	} else {
 		ops = &domU_hvc_ops;
@@ -597,7 +597,7 @@ static int __init xen_hvc_init(void)
 		else
 			r = xen_pv_console_init();
 		if (r < 0)
-			return r;
+			goto register_fe;
 
 		info = vtermno_to_xencons(HVC_COOKIE);
 		info->irq = bind_evtchn_to_irq_lateeoi(info->evtchn);
@@ -622,6 +622,7 @@ static int __init xen_hvc_init(void)
 	}
 
 	r = 0;
+ register_fe:
 #ifdef CONFIG_HVC_XEN_FRONTEND
 	r = xenbus_register_frontend(&xencons_driver);
 #endif
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Fri Oct 20 16:15:48 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 16:15:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619875.965680 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtsA7-0004zU-N0; Fri, 20 Oct 2023 16:15:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619875.965680; Fri, 20 Oct 2023 16:15: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 1qtsA7-0004zH-Ji; Fri, 20 Oct 2023 16:15:47 +0000
Received: by outflank-mailman (input) for mailman id 619875;
 Fri, 20 Oct 2023 16:15: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=hgHW=GC=desiato.srs.infradead.org=BATV+0337522d548a1f056a92+7362+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qtsA5-0004Db-RF
 for xen-devel@lists.xenproject.org; Fri, 20 Oct 2023 16:15:46 +0000
Received: from desiato.infradead.org (desiato.infradead.org
 [2001:8b0:10b:1:d65d:64ff:fe57:4e05])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id eb95f86c-6f63-11ee-98d5-6d05b1d4d9a1;
 Fri, 20 Oct 2023 18:15:44 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by desiato.infradead.org with esmtpsa (Exim 4.96 #2 (Red Hat Linux))
 id 1qts9v-00BAsE-0Q; Fri, 20 Oct 2023 16:15:36 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1qts9s-001UOW-0m; Fri, 20 Oct 2023 17:15:32 +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
X-Inumbo-ID: eb95f86c-6f63-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=desiato.20200630; h=Sender:Content-Transfer-Encoding:
	Content-Type:MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:
	To:From:Reply-To:Content-ID:Content-Description;
	bh=OW6M6axVm5EebrjONkYC4l2vPrYg1mjhksi3LsyyGRs=; b=EMC1XQKNq6loHyWtwUrjbzwmwV
	cAgfQRMd4tmkJ8vfgqiDsAHkfDsIEKFYNphoGgZltm07MeMmeMyO41dK4BLYlKHBUnL8cqRNJUffv
	zVUHHvzr6M4MMJHsTleqmotIfBWN5RE5+FHp2NiKmK8ql6L7KcoxAfQIzazUnV+8qIv//5YmJyAH9
	OxkBx/FtKdKWlxLO5fHYVYMBiLVYGrhC5A2L6h+uGalAtARfBXqSpuBlQovufA2ZACvU44sInMHHX
	saBDt/gndB0Jsk/Udp6oA3ydy0qG4OQ/poadbKKrrsFCSauxFUH/o6H3FX9ha6MDCtAaqPZVCLSsN
	QtrjJRcw==;
From: David Woodhouse <dwmw2@infradead.org>
To: Juergen Gross <jgross@suse.com>,
	xen-devel@lists.xenproject.org
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	Jiri Slaby <jirislaby@kernel.org>,
	Roger Pau Monne <roger.pau@citrix.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Dawei Li <set_pte_at@outlook.com>,
	linuxppc-dev@lists.ozlabs.org,
	linux-kernel@vger.kernel.org,
	linux-serial@vger.kernel.org,
	Paul Durrant <paul@xen.org>
Subject: [PATCH v2 1/3] hvc/xen: fix event channel handling for secondary consoles
Date: Fri, 20 Oct 2023 17:15:27 +0100
Message-Id: <20231020161529.355083-2-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231020161529.355083-1-dwmw2@infradead.org>
References: <20231020161529.355083-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by desiato.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

The xencons_connect_backend() function allocates a local interdomain
event channel with xenbus_alloc_evtchn(), then calls
bind_interdomain_evtchn_to_irq_lateeoi() to bind to that port# on the
*remote* domain.

That doesn't work very well:

(qemu) device_add xen-console,id=con1,chardev=pty0
[   44.323872] xenconsole console-1: 2 xenbus_dev_probe on device/console/1
[   44.323995] xenconsole: probe of console-1 failed with error -2

Fix it to use bind_evtchn_to_irq_lateeoi(), which does the right thing
by just binding that *local* event channel to an irq. The backend will
do the interdomain binding.

This didn't affect the primary console because the setup for that is
special — the toolstack allocates the guest event channel and the guest
discovers it with HVMOP_get_param.

Fixes: fe415186b4 ("xen/console: harden hvc_xen against event channel storms")
Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
Reviewed-by: Juergen Gross <jgross@suse.com>
Cc: stable@vger.kernel.org
---
 drivers/tty/hvc/hvc_xen.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/tty/hvc/hvc_xen.c b/drivers/tty/hvc/hvc_xen.c
index 98764e740c07..f24e285b6441 100644
--- a/drivers/tty/hvc/hvc_xen.c
+++ b/drivers/tty/hvc/hvc_xen.c
@@ -433,7 +433,7 @@ static int xencons_connect_backend(struct xenbus_device *dev,
 	if (ret)
 		return ret;
 	info->evtchn = evtchn;
-	irq = bind_interdomain_evtchn_to_irq_lateeoi(dev, evtchn);
+	irq = bind_evtchn_to_irq_lateeoi(evtchn);
 	if (irq < 0)
 		return irq;
 	info->irq = irq;
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Fri Oct 20 16:15:48 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 16:15:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619872.965650 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qts9z-0004Do-TZ; Fri, 20 Oct 2023 16:15:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619872.965650; Fri, 20 Oct 2023 16:15: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 1qts9z-0004Dh-P0; Fri, 20 Oct 2023 16:15:39 +0000
Received: by outflank-mailman (input) for mailman id 619872;
 Fri, 20 Oct 2023 16:15: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=fjAU=GC=casper.srs.infradead.org=BATV+5f4592396010e9e3c002+7362+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qts9y-0004Db-8G
 for xen-devel@lists.xenproject.org; Fri, 20 Oct 2023 16:15:38 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id e7211ad1-6f63-11ee-98d5-6d05b1d4d9a1;
 Fri, 20 Oct 2023 18:15:36 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qts9u-00E44D-7G; Fri, 20 Oct 2023 16:15:34 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1qts9s-001UOT-0R; Fri, 20 Oct 2023 17:15:32 +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
X-Inumbo-ID: e7211ad1-6f63-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=Sender:Content-Transfer-Encoding:
	Content-Type:MIME-Version:Message-Id:Date:Subject:Cc:To:From:Reply-To:
	Content-ID:Content-Description:In-Reply-To:References;
	bh=+yckRkFG8qkJeHSM7gJpLJWXmYYcv8nGS7sjBbidu2o=; b=T0zKb6Qe+rPgKfDjqH/Yy6akUz
	iPqrhSFIqIkEL5Zx1lo+Xf8Ln6ZtkAldLanYm/TC+BiWcrLRUcQ7aYSs2pLWZ2YieCBlAIb/k7M/7
	t3T+lTc5eljToOU5aSM5pXsfSvxK9Kqe9iVLwwl353CI80nUZL3HYDGXD5o3LdUX5/eNgvAIVv7EA
	h8ATW3NHs8MGFwvwj64DIAwyJQi8A56iiBnF2Cp+Iyh66H0pPzt8sPBJ35utrpRCrdTMTH1lXlnPa
	PQqmwpaCOZlnPANH8XpVwHB5IUUFp0nTpjJIVqMv813nea7BnGnAGOxQKOJKJmeEKBsRlybO9JZKq
	ftfzAo2Q==;
From: David Woodhouse <dwmw2@infradead.org>
To: Juergen Gross <jgross@suse.com>,
	xen-devel@lists.xenproject.org
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	Jiri Slaby <jirislaby@kernel.org>,
	Roger Pau Monne <roger.pau@citrix.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Dawei Li <set_pte_at@outlook.com>,
	linuxppc-dev@lists.ozlabs.org,
	linux-kernel@vger.kernel.org,
	linux-serial@vger.kernel.org,
	Paul Durrant <paul@xen.org>
Subject: [PATCH v2 0/3] hvc/xen: Xen console fixes.
Date: Fri, 20 Oct 2023 17:15:26 +0100
Message-Id: <20231020161529.355083-1-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html

It started out relatively simple, fixing the fact that the secondary
consoles didn't work at *all* due to bugs in the IRQ setup. There were
one or two other simple fixes that I snuck into the same patch in v1.

But it's much more broken than that, so split the fixes out, especially
the last one for hot-unplug.

Preserving the Reviewed-by: from Jürgen on the first two seems fair;
the third patch is new and exciting but *does* fix the case of removing
the console while userspace is spamming it.

And all I really wanted to do this week was spin up a PV guest under KVM 
so I could play with its SMEP behaviour...

David Woodhouse (3):
      hvc/xen: fix event channel handling for secondary consoles
      hvc/xen: fix error path in xen_hvc_init() to always register frontend driver
      hvc/xen: fix console unplug

 drivers/tty/hvc/hvc_xen.c | 39 ++++++++++++++++++++++++++++-----------
 1 file changed, 28 insertions(+), 11 deletions(-)




From xen-devel-bounces@lists.xenproject.org Fri Oct 20 16:48:12 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 16:48:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619886.965690 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtsfF-0004WZ-4O; Fri, 20 Oct 2023 16:47:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619886.965690; Fri, 20 Oct 2023 16: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 1qtsfF-0004WS-0y; Fri, 20 Oct 2023 16:47:57 +0000
Received: by outflank-mailman (input) for mailman id 619886;
 Fri, 20 Oct 2023 16:47: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 1qtsfE-0004WI-Ab; Fri, 20 Oct 2023 16:47: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 1qtsfE-0008Ie-6i; Fri, 20 Oct 2023 16:47: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 1qtsfD-0002ad-IA; Fri, 20 Oct 2023 16:47:55 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qtsfD-0008Sp-Hg; Fri, 20 Oct 2023 16: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=3W2cgs7TunpfcgG+CLOLLSfr70s+8sFQ4WHHxGMaLe0=; b=AGC9ElOdKLRhdTHQnAf4+nygUP
	z9xeXjg5s1XoQ1doO+sTe+fLrj2znmKoJdoT61M8dAbgnm54fHeUF61L+FZzUaYpszqNJ2sUe5bU9
	M7NceuIL4herNCk+yTyHHd2kmK60sM7Q1XwxyQg/RMaY/19p8m8iVe2J8WxAj8R8sGP4=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183440-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 183440: tolerable FAIL - PUSHED
X-Osstest-Failures:
    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-armhf-armhf-libvirt: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-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx: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:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl: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-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu: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-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-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-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-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd: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-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds: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-qcow2:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=ce55c22ec8b223a90ff3e084d842f73cfba35588
X-Osstest-Versions-That:
    linux=7cf4bea77ab60742c128c2ceb4b1b8078887b823
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 20 Oct 2023 16:47:55 +0000

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

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 183432
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183432
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183432
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183432
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183432
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183432
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183432
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183432
 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-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 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          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-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-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-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-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-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-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-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-qcow2 14 migrate-support-check        fail never pass

version targeted for testing:
 linux                ce55c22ec8b223a90ff3e084d842f73cfba35588
baseline version:
 linux                7cf4bea77ab60742c128c2ceb4b1b8078887b823

Last test of basis   183432  2023-10-19 16:10:25 Z    1 days
Testing same since   183440  2023-10-20 04:54:14 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  "Jiri Slaby (SUSE)" <jirislaby@kernel.org>
  Aaron Conole <aconole@redhat.com>
  Albert Huang <huangjie.albert@bytedance.com>
  Amir Tzin <amirtz@nvidia.com>
  Arkadiusz Bokowy <arkadiusz.bokowy@gmail.com>
  Arnd Bergmann <arnd@arndb.de>
  Bagas Sanjaya <bagasdotme@gmail.com>
  Catalin Marinas <catalin.marinas@arm.com>
  Chris Mason <clm@fb.com>
  Christian Brauner <brauner@kernel.org>
  Christoph Paasch <cpaasch@apple.com>
  Dan Carpenter <dan.carpenter@linaro.org>
  Dan Clash <daclash@linux.microsoft.com>
  David S. Miller <davem@davemloft.net>
  Dong Chenchen <dongchenchen2@huawei.com>
  Dragos Tatulea <dtatulea@nvidia.com>
  Dust Li <dust.li@linux.alibaba.com>
  Edward AD <twuufnxlz@gmail.com>
  Eric Dumazet <edumazet@google.com>
  Florian Fainelli <florian.fainelli@broadcom.com>
  Florian Westphal <fw@strlen.de>
  Gabriel Marcano <gabemarcano@yahoo.com>
  Gavrilov Ilia <Ilia.Gavrilov@infotecs.ru>
  Geert Uytterhoeven <geert+renesas@glider.be>
  Geliang Tang <geliang.tang@suse.com>
  Herbert Xu <herbert@gondor.apana.org.au>
  Huacai Chen <chenhuacai@loongson.cn>
  Icenowy Zheng <uwu@icenowy.me>
  Ido Schimmel <idosch@nvidia.com>
  Iulia Tanasescu <iulia.tanasescu@nxp.com>
  Jacob Keller <jacob.e.keller@intel.com>
  Jakub Kicinski <kuba@kernel.org>
  Jakub Sitnicki <jakub@cloudflare.com>
  Jamal Hadi Salim <jhs@mojatatu.com>
  Jan Sokolowski <jan.sokolowski@intel.com>
  Jason Wang <jasowang@redhat.com>
  Jay Vosburgh <jay.vosburgh@canonical.com>
  Jesse Brandeburg <jesse.brandeburg@intel.com>
  Jianbo Liu <jianbol@nvidia.com>
  Jinjie Ruan <ruanjinjie@huawei.com>
  Jiri Pirko <jiri@nvidia.com>
  Jiri Slaby (SUSE) <jirislaby@kernel.org>
  Jiri Wiesner <jwiesner@suse.de>
  Johannes Berg <johannes.berg@intel.com>
  Josua Mayer <josua@solid-run.com>
  Kees Cook <keescook@chromium.org>
  kernel test robot <oliver.sang@intel.com>
  Konstantin Komarov <almaz.alexandrovich@paragon-software.com>
  Kory Maincent <kory.maincent@bootlin.com>
  Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
  Kuniyuki Iwashima <kuniyu@amazon.com>
  Lama Kayal <lkayal@nvidia.com>
  Lee, Chun-Yi <jlee@suse.com>
  Linus Torvalds <torvalds@linux-foundation.org>
  Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
  Ma Ke <make_ruc2021@163.com>
  Maher Sanalla <msanalla@nvidia.com>
  Manish Chopra <manishc@marvell.com>
  Mat Martineau <martineau@kernel.org>
  Mateusz Pacuszka <mateuszx.pacuszka@intel.com>
  Mateusz Polchlopek <mateusz.polchlopek@intel.com>
  Matthieu Baerts <matttbe@kernel.org>
  Max Chou <max.chou@realtek.com>
  MD Danish Anwar <danishanwar@ti.com>
  Michal Schmidt <mschmidt@redhat.com>
  Neal Cardwell <ncardwell@google.com>
  Niklas Schnelle <schnelle@linux.ibm.com>
  Pablo Neira Ayuso <pablo@netfilter.org>
  Paolo Abeni <pabeni@redhat.com>
  Paul Moore <paul@paul-moore.com> (Audit)
  Pauli Virtanen <pav@iki.fi>
  Pavel Skripkin <paskripkin@gmail.com>
  Pedro Tammela <pctammela@mojatatu.com>
  Phil Sutter <phil@nwl.cc>
  Pucha Himasekhar Reddy <himasekharx.reddy.pucha@intel.com> (A Contingent worker at Intel)
  Randy Dunlap <rdunlap@infradead.org>
  Saeed Mahameed <saeedm@nvidia.com>
  Shailend Chand <shailend@google.com>
  Shay Drory <shayd@nvidia.com>
  Shinas Rasheed <srasheed@marvell.com>
  Simon Horman <horms@kernel.org> # build-tested
  Sriram Yagnaraman <sriram.yagnaraman@est.tech>
  Stefan Wahren <wahrenst@gmx.net>
  Steffen Klassert <steffen.klassert@secunet.com>
  Su Hui <suhui@nfschina.com>
  Tianrui Zhao <zhaotianrui@loongson.cn>
  Tiezhu Yang <yangtiezhu@loongson.cn>
  Vlad Buslov <vladbu@nvidia.com>
  Vladimir Oltean <vladimir.oltean@nxp.com>
  Vlastimil Babka <vbabka@suse.cz>
  Willem de Bruijn <willemb@google.com>
  Xingyuan Mo <hdthky0@gmail.com>
  Yuchung Cheng <ycheng@google.com>
  Zeng Heng <zengheng4@huawei.com>
  Zhang Changzhong <zhangchangzhong@huawei.com>
  Ziqi Zhao <astrajoan@yahoo.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-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
   7cf4bea77ab6..ce55c22ec8b2  ce55c22ec8b223a90ff3e084d842f73cfba35588 -> tested/linux-linus


From xen-devel-bounces@lists.xenproject.org Fri Oct 20 17:03:20 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 17:03:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619891.965700 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtsty-00082U-DH; Fri, 20 Oct 2023 17:03:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619891.965700; Fri, 20 Oct 2023 17:03: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 1qtsty-00082N-9N; Fri, 20 Oct 2023 17:03:10 +0000
Received: by outflank-mailman (input) for mailman id 619891;
 Fri, 20 Oct 2023 17:03: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 1qtstw-00082H-2r
 for xen-devel@lists.xenproject.org; Fri, 20 Oct 2023 17:03: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 1qtstv-0000A4-Er; Fri, 20 Oct 2023 17:03:07 +0000
Received: from [54.239.6.188] (helo=[192.168.205.12])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qtstv-0003ja-8J; Fri, 20 Oct 2023 17: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>
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=FX5we33yGDaFkeVoB2KKuc2RMaQymN06UJQBN5B9hRw=; b=XcAmsaX1UTIj5byn0FDodKzw22
	Qfg387FpsLD66WDJEbk6ClU4pb7Hr2/A5KUB4f4Aa/OU8Cm+xYMB8va3fTIBy2LwhvNDtNwVNYalN
	Ed0CRLGwc1S/OL6+nD8fMCsJPFvJjPehF/+pAE/EcTa6PLoXKqyAoEDR9CdrRgqjUU6o=;
Message-ID: <75deb3bc-1115-42eb-a629-defb09991074@xen.org>
Date: Fri, 20 Oct 2023 18:03:04 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN PATCH][for-4.19 v3 1/8] xen/include: add macro LOWEST_BIT
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,
 andrew.cooper3@citrix.com, roger.pau@citrix.com,
 Simone Ballarin <simone.ballarin@bugseng.com>,
 Doug Goldstein <cardoe@cardoe.com>, George Dunlap
 <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>
References: <cover.1697815135.git.nicola.vetrini@bugseng.com>
 <546cf30aa43d6d0687a9a6c6d23b11128e5783e8.1697815135.git.nicola.vetrini@bugseng.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <546cf30aa43d6d0687a9a6c6d23b11128e5783e8.1697815135.git.nicola.vetrini@bugseng.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi Nicola,

On 20/10/2023 16:28, Nicola Vetrini wrote:
> diff --git a/xen/include/xen/macros.h b/xen/include/xen/macros.h
> index d0caae7db298..49f3ebf848e9 100644
> --- a/xen/include/xen/macros.h
> +++ b/xen/include/xen/macros.h
> @@ -8,8 +8,11 @@
>   #define DIV_ROUND(n, d) (((n) + (d) / 2) / (d))
>   #define DIV_ROUND_UP(n, d) (((n) + (d) - 1) / (d))
>   
> -#define MASK_EXTR(v, m) (((v) & (m)) / ((m) & -(m)))
> -#define MASK_INSR(v, m) (((v) * ((m) & -(m))) & (m))
> +/* Returns the 2^ffs(x) or 0, where ffs(x) is the index of the lowest set bit */
> +#define LOWEST_BIT(x) ((x) & -(x))
> +
> +#define MASK_EXTR(v, m) (((v) & (m)) / LOWEST_BIT(m))
> +#define MASK_INSR(v, m) (((v) * LOWEST_BIT(m)) & (m))
>   
>   #define count_args_(dot, a1, a2, a3, a4, a5, a6, a7, a8, x, ...) x
>   #define count_args(args...) \
> diff --git a/xen/include/xen/types.h b/xen/include/xen/types.h
> index aea259db1ef2..23cad71c8a47 100644
> --- a/xen/include/xen/types.h
> +++ b/xen/include/xen/types.h

I don't understand how the changes in this file are related to the 
commit. Did you intend to create a separate commit?

The rest LGTM.

> @@ -31,9 +31,9 @@ typedef __PTRDIFF_TYPE__ ptrdiff_t;
>   #define NULL ((void*)0)
>   #endif
>   
> -#define INT8_MIN        (-127-1)
> -#define INT16_MIN       (-32767-1)
> -#define INT32_MIN       (-2147483647-1)
> +#define INT8_MIN        (-127 - 1)
> +#define INT16_MIN       (-32767 - 1)
> +#define INT32_MIN       (-2147483647 - 1)
>   
>   #define INT8_MAX        (127)
>   #define INT16_MAX       (32767)
> @@ -43,10 +43,10 @@ typedef __PTRDIFF_TYPE__ ptrdiff_t;
>   #define UINT16_MAX      (65535)
>   #define UINT32_MAX      (4294967295U)
>   
> -#define INT_MAX         ((int)(~0U>>1))
> +#define INT_MAX         ((int)(~0U >> 1))
>   #define INT_MIN         (-INT_MAX - 1)
>   #define UINT_MAX        (~0U)
> -#define LONG_MAX        ((long)(~0UL>>1))
> +#define LONG_MAX        ((long)(~0UL >> 1))
>   #define LONG_MIN        (-LONG_MAX - 1)
>   #define ULONG_MAX       (~0UL)
>   

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Fri Oct 20 17:26:07 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 17:26:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619895.965709 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qttFy-00055L-8s; Fri, 20 Oct 2023 17:25:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619895.965709; Fri, 20 Oct 2023 17: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 1qttFy-00055E-62; Fri, 20 Oct 2023 17:25:54 +0000
Received: by outflank-mailman (input) for mailman id 619895;
 Fri, 20 Oct 2023 17:25: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 1qttFw-000558-Lh
 for xen-devel@lists.xenproject.org; Fri, 20 Oct 2023 17:25: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 1qttFv-0000gw-Nw; Fri, 20 Oct 2023 17:25:51 +0000
Received: from [54.239.6.188] (helo=[192.168.205.12])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qttFv-0004bT-Ew; Fri, 20 Oct 2023 17:25: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=xIOT9wHwoySGXKL3f3K4qMKlJir9SvvlZge57FCtzVo=; b=4L1cqjPcdYd3JJrZPgGvWRtP/0
	f7iJoVd7xL1dQ0S6pkWtGFItdn99YhyJEt/gXFp4Sth14K1IEI8XoszF8/lK/Al+J3vuqeXxTOW9c
	DVhRPyTNswkTXVTThd7+2zyr7UakldMkOt1SCIqluIl+f2xG2CuyprI1E9oSA045aOIw=;
Message-ID: <5f69d9de-23af-429f-afa5-4623bedbb3ed@xen.org>
Date: Fri, 20 Oct 2023 18:25:49 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v3 2/5] xen/arm: pci: plumb xen_arch_domainconfig with pci
 info
Content-Language: en-GB
To: Stewart Hildebrand <stewart.hildebrand@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>,
 Andrew Cooper <andrew.cooper3@citrix.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>
References: <20231009195747.889326-1-stewart.hildebrand@amd.com>
 <20231009195747.889326-3-stewart.hildebrand@amd.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <20231009195747.889326-3-stewart.hildebrand@amd.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit



On 09/10/2023 20:57, Stewart Hildebrand wrote:
> Add a flag to struct xen_arch_domainconfig to allow specifying at domain
> creation time whether the domain uses vPCI.
> 
> Add a corresponding flag to struct arch_domain to indicate vPCI and set it
> accordingly.

The new boolean you are adding doesn't seem very arch specific. So could 
we use a bit in xen_domctl_createdomain.flags?

> 
> Bump XEN_DOMCTL_INTERFACE_VERSION since we're modifying struct
> xen_arch_domainconfig.
> 
> Signed-off-by: Stewart Hildebrand <stewart.hildebrand@amd.com>
> ---
> v2->v3:
> * new patch
> ---
>   xen/arch/arm/domain.c             | 10 ++++++++++
>   xen/arch/arm/include/asm/domain.h |  2 ++
>   xen/include/public/arch-arm.h     |  4 ++++
>   xen/include/public/domctl.h       |  2 +-
>   4 files changed, 17 insertions(+), 1 deletion(-)
> 
> diff --git a/xen/arch/arm/domain.c b/xen/arch/arm/domain.c
> index 28e3aaa5e482..9470c28595da 100644
> --- a/xen/arch/arm/domain.c
> +++ b/xen/arch/arm/domain.c
> @@ -687,6 +687,13 @@ int arch_sanitise_domain_config(struct xen_domctl_createdomain *config)
>           return -EINVAL;
>       }
>   
> +    if ( (config->arch.pci_flags & XEN_DOMCTL_CONFIG_PCI_VPCI) &&
> +         !IS_ENABLED(CONFIG_HAS_VPCI) )
> +    {
> +        dprintk(XENLOG_INFO, "vPCI support not enabled\n");
> +        return -EINVAL;
> +    }
> +
>       return 0;
>   }
>   
> @@ -737,6 +744,9 @@ int arch_domain_create(struct domain *d,
>           BUG();
>       }
>   
> +    if ( config->arch.pci_flags & XEN_DOMCTL_CONFIG_PCI_VPCI )
> +        d->arch.has_vpci = true;
> +
>       if ( (rc = domain_vgic_register(d, &count)) != 0 )
>           goto fail;
>   
> diff --git a/xen/arch/arm/include/asm/domain.h b/xen/arch/arm/include/asm/domain.h
> index 99e798ffff68..0a66ed09a617 100644
> --- a/xen/arch/arm/include/asm/domain.h
> +++ b/xen/arch/arm/include/asm/domain.h
> @@ -119,6 +119,8 @@ struct arch_domain
>       void *tee;
>   #endif
>   
> +    bool has_vpci;
> +
>   }  __cacheline_aligned;
>   
>   struct arch_vcpu
> diff --git a/xen/include/public/arch-arm.h b/xen/include/public/arch-arm.h
> index 6a4467e8f5d1..5c8424341aad 100644
> --- a/xen/include/public/arch-arm.h
> +++ b/xen/include/public/arch-arm.h
> @@ -300,6 +300,8 @@ DEFINE_XEN_GUEST_HANDLE(vcpu_guest_context_t);
>   #define XEN_DOMCTL_CONFIG_TEE_OPTEE     1
>   #define XEN_DOMCTL_CONFIG_TEE_FFA       2
>   
> +#define XEN_DOMCTL_CONFIG_PCI_VPCI      (1U << 0)
> +
>   struct xen_arch_domainconfig {
>       /* IN/OUT */
>       uint8_t gic_version;
> @@ -323,6 +325,8 @@ struct xen_arch_domainconfig {
>        *
>        */
>       uint32_t clock_frequency;
> +    /* IN */
> +    uint8_t pci_flags;

Regardless what I wrote above. Do you have any plan for adding more PCI 
specific flags? If not, then if you want to keep the flag Arm specific, 
then I think this should be named pci_flags.

As you add a new field, I believe, you also want to modoify the various 
language specific bindings (e.g. go, ocaml).

>   };
>   #endif /* __XEN__ || __XEN_TOOLS__ */
>   
> diff --git a/xen/include/public/domctl.h b/xen/include/public/domctl.h
> index a33f9ec32b08..dcd42b3d603d 100644
> --- a/xen/include/public/domctl.h
> +++ b/xen/include/public/domctl.h
> @@ -21,7 +21,7 @@
>   #include "hvm/save.h"
>   #include "memory.h"
>   
> -#define XEN_DOMCTL_INTERFACE_VERSION 0x00000016
> +#define XEN_DOMCTL_INTERFACE_VERSION 0x00000017
>   
>   /*
>    * NB. xen_domctl.domain is an IN/OUT parameter for this operation.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Fri Oct 20 17:29:08 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 17:29:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619897.965720 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qttJ5-0005so-ND; Fri, 20 Oct 2023 17:29:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619897.965720; Fri, 20 Oct 2023 17:29: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 1qttJ5-0005sh-KZ; Fri, 20 Oct 2023 17:29:07 +0000
Received: by outflank-mailman (input) for mailman id 619897;
 Fri, 20 Oct 2023 17:29:06 +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 1qttJ4-0005sb-Ov
 for xen-devel@lists.xenproject.org; Fri, 20 Oct 2023 17:29: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 1qttJ4-0000lX-FG; Fri, 20 Oct 2023 17:29:06 +0000
Received: from [54.239.6.188] (helo=[192.168.205.12])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qttJ4-0004fP-7x; Fri, 20 Oct 2023 17:29: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=FtriFG5QKNohorzL1vY5FGE3lJ9qHxbEYNLYAAOG7bo=; b=5Y+yzTx7LNXfe5C4czLZWUJPXt
	c6uABN2Iul0WEXOX8G85ZJtCt7oQ9j3+jin3T88cg5IZFUGGIkUFQvvdDqv42p7BfGAXaXTY/qIK0
	rOwsFrnM2C8TpBsFrRlym/QrzOy7Yg3JIUuVkeXNblBMKwqUzeTdLSRiWVzZVaRhuxCg=;
Message-ID: <972ac641-9dff-4668-87eb-f48d9d0497c6@xen.org>
Date: Fri, 20 Oct 2023 18:29:04 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v3 3/5] xen/arm: make has_vpci() depend on
 d->arch.has_vpci
Content-Language: en-GB
To: Stewart Hildebrand <stewart.hildebrand@amd.com>,
 xen-devel@lists.xenproject.org
Cc: Oleksandr Andrushchenko <oleksandr_andrushchenko@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: <20231009195747.889326-1-stewart.hildebrand@amd.com>
 <20231009195747.889326-4-stewart.hildebrand@amd.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <20231009195747.889326-4-stewart.hildebrand@amd.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi,

On 09/10/2023 20:57, Stewart Hildebrand wrote:
> From: Oleksandr Andrushchenko <oleksandr_andrushchenko@epam.com>
> 
> VPCI is disabled on ARM. Make it depend on d->arch.has_vpci to enable the PCI
> passthrough support on ARM.
> 
> While here, remove the comment on the preceding line.
> 
> Signed-off-by: Oleksandr Andrushchenko <oleksandr_andrushchenko@epam.com>
> Signed-off-by: Rahul Singh <rahul.singh@arm.com>
> Signed-off-by: Stewart Hildebrand <stewart.hildebrand@amd.com>

I think this patch should be folded in patch #2. With that the 
hypervisor part would be properly plumbed as soon as the flag is introduced.

> ---
> There are two downstreams [1] [2] that have independently made a version this
> change, each with different Signed-off-by's. I simply picked one at random for
> the Author: field, and added both Signed-off-by lines. Please let me know if
> there are any objections.
> 
> v2->v3:
> * use d->arch.has_vpci since plumbing struct arch_domain with a vPCI flag
> 
> v1->v2:
> * add is_hardware_domain check. This will need to be removed after the vPCI
>    series [3] is merged.
> 
> downstream->v1:
> * change to IS_ENABLED(CONFIG_HAS_VPCI) instead of hardcoded to true
> * remove the comment on the preceding line
> 
> [1] https://gitlab.com/xen-project/people/bmarquis/xen-arm-poc/-/commit/27be1729ce8128dbe37275ce7946b2fbd2e5a382
> [2] https://github.com/xen-troops/xen/commit/bf12185e6fb2e31db0d8e6ea9ccd8a02abadec17
> [3] https://lists.xenproject.org/archives/html/xen-devel/2023-08/msg02361.html
> ---
>   xen/arch/arm/include/asm/domain.h | 3 +--
>   1 file changed, 1 insertion(+), 2 deletions(-)
> 
> diff --git a/xen/arch/arm/include/asm/domain.h b/xen/arch/arm/include/asm/domain.h
> index 0a66ed09a617..ebba2c25dceb 100644
> --- a/xen/arch/arm/include/asm/domain.h
> +++ b/xen/arch/arm/include/asm/domain.h
> @@ -300,8 +300,7 @@ static inline void arch_vcpu_block(struct vcpu *v) {}
>   
>   #define arch_vm_assist_valid_mask(d) (1UL << VMASST_TYPE_runstate_update_flag)
>   
> -/* vPCI is not available on Arm */
> -#define has_vpci(d)    ({ (void)(d); false; })
> +#define has_vpci(d) ( (d)->arch.has_vpci )

Coding style: I don't believe we add space after ( and before ) in this 
situation.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Fri Oct 20 17:33:20 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 17:33:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619901.965729 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qttN5-0007KR-7L; Fri, 20 Oct 2023 17:33:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619901.965729; Fri, 20 Oct 2023 17:33: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 1qttN5-0007KK-4k; Fri, 20 Oct 2023 17:33:15 +0000
Received: by outflank-mailman (input) for mailman id 619901;
 Fri, 20 Oct 2023 17:33: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 1qttN3-0007KE-D7
 for xen-devel@lists.xenproject.org; Fri, 20 Oct 2023 17:33: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 1qttN3-0000qg-4n; Fri, 20 Oct 2023 17:33:13 +0000
Received: from [54.239.6.188] (helo=[192.168.205.12])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qttN2-0004rx-Uz; Fri, 20 Oct 2023 17:33: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=2FdsT/hYGGXxepvNVi5gE1b31G743twemEEKB1qxrhA=; b=n236KeKRkqKFk0b0ybepnXx7jP
	WbSTZrGypQ6RCQSg931JvkiH4h4WIu9grrXYLWFvnMztg5EpwrpQNHxpVcvM9SVCj4zLbeZWjQLYY
	kNaMRCL2wqvZAeR68piYp1AW1KYHRuo9bmKlPlGVhV4JGpvMiaCFpE79ohxpdvVaTt5E=;
Message-ID: <6b446a2d-ac23-4cb4-ad6a-1a816b497023@xen.org>
Date: Fri, 20 Oct 2023 18:33:11 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v3 4/5] xen/arm: enable vPCI for dom0
Content-Language: en-GB
To: Stewart Hildebrand <stewart.hildebrand@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: <20231009195747.889326-1-stewart.hildebrand@amd.com>
 <20231009195747.889326-5-stewart.hildebrand@amd.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <20231009195747.889326-5-stewart.hildebrand@amd.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi Stewart,

On 09/10/2023 20:57, Stewart Hildebrand wrote:
> Set the pci flags in xen_arch_domainconfig to enable vPCI for dom0.
> 
> Signed-off-by: Stewart Hildebrand <stewart.hildebrand@amd.com>
> ---
> Julien had a suggestion to make this conditional on pci_passthrough_enabled [1].
> However, in v5 of the PCI ARM SMMU series [2], we propose removing the
> pci_passthrough_enabled flag. If pci_passthrough_enabled is gone, the conditions
> under which vPCI should be enabled for dom0 aren't entirely clear to me (other
> than CONFIG_HAS_VPCI=y).

I think it should be based on whether Xen detected a PCI hostbridge in 
system. I haven't looked which variable/function could be used in Xen 
for this purpose.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Fri Oct 20 17:48:39 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 17:48:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619904.965740 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qttbj-0002ME-H1; Fri, 20 Oct 2023 17:48:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619904.965740; Fri, 20 Oct 2023 17: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 1qttbj-0002M7-Cp; Fri, 20 Oct 2023 17:48:23 +0000
Received: by outflank-mailman (input) for mailman id 619904;
 Fri, 20 Oct 2023 17:48: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=fjAU=GC=casper.srs.infradead.org=BATV+5f4592396010e9e3c002+7362+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qttbh-0002M1-7V
 for xen-devel@lists.xenproject.org; Fri, 20 Oct 2023 17:48:21 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id d9d21a58-6f70-11ee-9b0e-b553b5be7939;
 Fri, 20 Oct 2023 19:48:18 +0200 (CEST)
Received: from [2001:8b0:10b:5:f7e9:453b:fc3b:2f6]
 (helo=u3832b3a9db3152.ant.amazon.com)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qttbH-00ERaa-Mh; Fri, 20 Oct 2023 17: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>
X-Inumbo-ID: d9d21a58-6f70-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=MIME-Version:Content-Type:References:
	In-Reply-To:Date:Cc:To:From:Subject:Message-ID:Sender:Reply-To:
	Content-Transfer-Encoding:Content-ID:Content-Description;
	bh=4asvvPQ4zBlyRpa2vhuFjhoiAxy0Stomlbt1oMwUNp0=; b=jzw5ntQeECvt5JqMcqHU2C6O6q
	rTGGcSLypqvw6CJuHdVu78wcGnKGX2ZAlqZk9XKimFTbKozeQmiPSsGpsTMs2wVzPbufbMdOAaS/7
	FJhlYZK9n0RdwOoUR2ICqlQj7LExJjw9NkOUeMyLDwuyv8MP+H2d2Ut77j7BVK4PqSUFdY/BArjyu
	s9Mv5tGSDXLfmdPntIa/k91AX0eU9BEmJUhgNcadWIurTnV8CQDjlkbfQPu9GuxueUnkx4h892zJB
	G8zy9Ro4SrFEXNg6UEvib+p2+aiGu/L3kogUHjmenUC66WCBZ4rikgBds1HVYm1zV6WK4DtAR8duo
	L6X1hSBw==;
Message-ID: <c9431ff971a464e96cff061eb5d62b9865f2ec9b.camel@infradead.org>
Subject: Re: [PATCH 11/12] hw/xen: automatically assign device index to
 block devices
From: David Woodhouse <dwmw2@infradead.org>
To: Kevin Wolf <kwolf@redhat.com>
Cc: qemu-devel@nongnu.org, Hanna Reitz <hreitz@redhat.com>, Stefano
 Stabellini <sstabellini@kernel.org>, Anthony Perard
 <anthony.perard@citrix.com>, Paul Durrant <paul@xen.org>,
 =?ISO-8859-1?Q?Marc-Andr=E9?= Lureau <marcandre.lureau@redhat.com>,  Paolo
 Bonzini <pbonzini@redhat.com>, "Michael S. Tsirkin" <mst@redhat.com>,
 Marcel Apfelbaum <marcel.apfelbaum@gmail.com>, Richard Henderson
 <richard.henderson@linaro.org>,  Eduardo Habkost <eduardo@habkost.net>,
 Marcelo Tosatti <mtosatti@redhat.com>, qemu-block@nongnu.org, 
 xen-devel@lists.xenproject.org, kvm@vger.kernel.org
Date: Fri, 20 Oct 2023 18:47:54 +0100
In-Reply-To: <950f3a62dfcecce902037f95575f1013697a5925.camel@infradead.org>
References: <20231016151909.22133-1-dwmw2@infradead.org>
	 <20231016151909.22133-12-dwmw2@infradead.org> <ZS+cutIjulWBQakk@redhat.com>
	 <950f3a62dfcecce902037f95575f1013697a5925.camel@infradead.org>
Content-Type: multipart/signed; micalg="sha-256"; protocol="application/pkcs7-signature";
	boundary="=-8FLDoG2Lppp2TASqZ2OU"
User-Agent: Evolution 3.44.4-0ubuntu2 
MIME-Version: 1.0
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html


--=-8FLDoG2Lppp2TASqZ2OU
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Wed, 2023-10-18 at 11:52 +0100, David Woodhouse wrote:
>=20
> And xen_config_dev_nic() probably just needs to loop doing the same
> as
> I did in pc_init_nic() in
> https://lore.kernel.org/qemu-devel/20231017182545.97973-5-dwmw2@infradead=
.org/T/#u
>=20
> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 if (xen_bus && (!nd->model ||=
 g_str_equal(model, "xen-net-
> device"))) {
> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 Devic=
eState *dev =3D qdev_new("xen-net-device");
> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 qdev_=
set_nic_properties(dev, nd);
> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 qdev_=
realize_and_unref(dev, xen_bus, &error_fatal);
>=20
>=20
> ... but this just reinforces what I said there about "if
> qmp_device_add() can find the damn bus and do this right, why do we
> have to litter it through platform code?"

I had a look through the network setup.

There are a bunch of platforms adding specific devices to their own
internal system bus, which often use nd_table[] directly. Sometimes
they do so whether it's been set up or now.

They can mostly be divided into two camps. Some of them will create
their NIC anyway, and will use a matching -nic configuration if it
exists. Others will only create their NIC if a corresponding -nic
configuration does exist.

This is fairly random, and perhaps platforms should be more consistent,
but it's best to avoid user-visible changes as much as possible while
doing the cleanup, so I've kept them as they were.

I've created qemu_configure_nic_device() and qemu_create_nic_device()
functions for those two use cases respectively, and most code which
directly accesses nd_table[] can be converted to those fairly simply:
https://git.infradead.org/users/dwmw2/qemu.git/commitdiff/7b4fb6fc10a4

It means I can throw away the horrid parts of -nic support for the Xen
network device, which were in the pc and xenfv platforms, and replace
it with a trivial loop in xenbus_init():

+    /* This is a bus-generic "configure all NICs on this bus type" */
+    while ((qnic =3D qemu_create_nic_device("xen-net-device", true, "xen")=
)) {
+            qdev_realize_and_unref(qnic, bus, &error_fatal);

Other than that one (which is cheating because there's only one type of
network device that can be instantiated on the XenBus), the only
remaining case is PCI. Most platforms just iterate over the -nic
configurations adding devices to a PCI bus of the platform's choice.
In some cases there's a special case, the first one goes at a specific
devfn and/or on a different bus.

There was a little more variation here... for example fuloong2e would
put the first nic (nd_table[0]) in slot 7 only if it's an rtl8139 (if
the model is unspecified). But PReP would put the first PCI NIC in slot
3 *regardless* of whether it's the expected PCNET or not.

I didn't faithfully preserve the behaviour there, because I don't think
it matters. They mostly look like this now (e.g. hw/sh4/r2d):

+    nd =3D qemu_find_nic_info(mc->default_nic, true, NULL);
+    if (nd) {
+        pci_nic_init_nofail(nd, pci_bus, mc->default_nic, "2");
+    }
+    pci_init_nic_devices(pci_bus, mc->default_nic);

So they'll take the first NIC configuration which is of the expected
model (again, or unspecified model) and place that in the special slot,
and then put the rest of the devices wherever they land.

For the change in behaviour to *matter*, the user would have to
explicitly specify a NIC of the *non-default* type first, and then a
NIC of the default type. My new code will put the default-type NIC in
the "right place", while the old code mostly wouldn't. I think that's
an OK change to make.

My plan is to *remember* which NIC models are used for lookups during
the board in, so that qemu_show_nic_devices() can print them all at the
end.

Current WIP if anyone wants to take a quick look at
https://git.infradead.org/users/dwmw2/qemu.git/shortlog/refs/heads/xenfv-ne=
t
but the weekend arrived quicker than I'd hoped, so I haven't quite got
it into shape to post yet. Hopefully it makes sense as an approach
though?



--=-8FLDoG2Lppp2TASqZ2OU
Content-Type: application/pkcs7-signature; name="smime.p7s"
Content-Disposition: attachment; filename="smime.p7s"
Content-Transfer-Encoding: base64

MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgEFADCABgkqhkiG9w0BBwEAAKCCEkQw
ggYQMIID+KADAgECAhBNlCwQ1DvglAnFgS06KwZPMA0GCSqGSIb3DQEBDAUAMIGIMQswCQYDVQQG
EwJVUzETMBEGA1UECBMKTmV3IEplcnNleTEUMBIGA1UEBxMLSmVyc2V5IENpdHkxHjAcBgNVBAoT
FVRoZSBVU0VSVFJVU1QgTmV0d29yazEuMCwGA1UEAxMlVVNFUlRydXN0IFJTQSBDZXJ0aWZpY2F0
aW9uIEF1dGhvcml0eTAeFw0xODExMDIwMDAwMDBaFw0zMDEyMzEyMzU5NTlaMIGWMQswCQYDVQQG
EwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYD
VQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50
aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC
AQEAyjztlApB/975Rrno1jvm2pK/KxBOqhq8gr2+JhwpKirSzZxQgT9tlC7zl6hn1fXjSo5MqXUf
ItMltrMaXqcESJuK8dtK56NCSrq4iDKaKq9NxOXFmqXX2zN8HHGjQ2b2Xv0v1L5Nk1MQPKA19xeW
QcpGEGFUUd0kN+oHox+L9aV1rjfNiCj3bJk6kJaOPabPi2503nn/ITX5e8WfPnGw4VuZ79Khj1YB
rf24k5Ee1sLTHsLtpiK9OjG4iQRBdq6Z/TlVx/hGAez5h36bBJMxqdHLpdwIUkTqT8se3ed0PewD
ch/8kHPo5fZl5u1B0ecpq/sDN/5sCG52Ds+QU5O5EwIDAQABo4IBZDCCAWAwHwYDVR0jBBgwFoAU
U3m/WqorSs9UgOHYm8Cd8rIDZsswHQYDVR0OBBYEFAnA8vwL2pTbX/4r36iZQs/J4K0AMA4GA1Ud
DwEB/wQEAwIBhjASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEF
BQcDBDARBgNVHSAECjAIMAYGBFUdIAAwUAYDVR0fBEkwRzBFoEOgQYY/aHR0cDovL2NybC51c2Vy
dHJ1c3QuY29tL1VTRVJUcnVzdFJTQUNlcnRpZmljYXRpb25BdXRob3JpdHkuY3JsMHYGCCsGAQUF
BwEBBGowaDA/BggrBgEFBQcwAoYzaHR0cDovL2NydC51c2VydHJ1c3QuY29tL1VTRVJUcnVzdFJT
QUFkZFRydXN0Q0EuY3J0MCUGCCsGAQUFBzABhhlodHRwOi8vb2NzcC51c2VydHJ1c3QuY29tMA0G
CSqGSIb3DQEBDAUAA4ICAQBBRHUAqznCFfXejpVtMnFojADdF9d6HBA4kMjjsb0XMZHztuOCtKF+
xswhh2GqkW5JQrM8zVlU+A2VP72Ky2nlRA1GwmIPgou74TZ/XTarHG8zdMSgaDrkVYzz1g3nIVO9
IHk96VwsacIvBF8JfqIs+8aWH2PfSUrNxP6Ys7U0sZYx4rXD6+cqFq/ZW5BUfClN/rhk2ddQXyn7
kkmka2RQb9d90nmNHdgKrwfQ49mQ2hWQNDkJJIXwKjYA6VUR/fZUFeCUisdDe/0ABLTI+jheXUV1
eoYV7lNwNBKpeHdNuO6Aacb533JlfeUHxvBz9OfYWUiXu09sMAviM11Q0DuMZ5760CdO2VnpsXP4
KxaYIhvqPqUMWqRdWyn7crItNkZeroXaecG03i3mM7dkiPaCkgocBg0EBYsbZDZ8bsG3a08LwEsL
1Ygz3SBsyECa0waq4hOf/Z85F2w2ZpXfP+w8q4ifwO90SGZZV+HR/Jh6rEaVPDRF/CEGVqR1hiuQ
OZ1YL5ezMTX0ZSLwrymUE0pwi/KDaiYB15uswgeIAcA6JzPFf9pLkAFFWs1QNyN++niFhsM47qod
x/PL+5jR87myx5uYdBEQkkDc+lKB1Wct6ucXqm2EmsaQ0M95QjTmy+rDWjkDYdw3Ms6mSWE3Bn7i
5ZgtwCLXgAIe5W8mybM2JzCCBhQwggT8oAMCAQICEQDGvhmWZ0DEAx0oURL6O6l+MA0GCSqGSIb3
DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYD
VQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28g
UlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMB4XDTIyMDEwNzAw
MDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJARYTZHdtdzJAaW5mcmFkZWFkLm9y
ZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3GpC2bomUqk+91wLYBzDMcCj5C9m6
oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZHh7htyAkWYVoFsFPrwHounto8xTsy
SSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT9YgcBqKCo65pTFmOnR/VVbjJk4K2
xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNjP+qDrh0db7PAjO1D4d5ftfrsf+kd
RR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy2U+eITZ5LLE5s45mX2oPFknWqxBo
bQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3BgBEmfsYWlBXO8rVXfvPgLs32VdV
NZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/7auNVRmPB3v5SWEsH8xi4Bez2V9U
KxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmdlFYhAflWKQ03Ufiu8t3iBE3VJbc2
5oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9aelIl6vtbhMA+l0nfrsORMa4kobqQ5
C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMBAAGjggHMMIIByDAfBgNVHSMEGDAW
gBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeDMcimo0oz8o1R1Nver3ZVpSkwDgYD
VR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYwFAYIKwYBBQUHAwQGCCsGAQUFBwMC
MEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYBBQUHAgEWF2h0dHBzOi8vc2VjdGln
by5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9jcmwuc2VjdGlnby5jb20vU2VjdGln
b1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1haWxDQS5jcmwwgYoGCCsGAQUFBwEB
BH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdvLmNvbS9TZWN0aWdvUlNBQ2xpZW50
QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAjBggrBgEFBQcwAYYXaHR0cDovL29j
c3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5mcmFkZWFkLm9yZzANBgkqhkiG9w0B
AQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQvQ/fzPXmtR9t54rpmI2TfyvcKgOXp
qa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvIlSPrzIB4Z2wyIGQpaPLlYflrrVFK
v9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9ChWFfgSXvrWDZspnU3Gjw/rMHrGnql
Htlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0whpBtXdyDjzBtQTaZJ7zTT/vlehc/
tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9IzCCBhQwggT8oAMCAQICEQDGvhmW
Z0DEAx0oURL6O6l+MA0GCSqGSIb3DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3Jl
YXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0
ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJl
IEVtYWlsIENBMB4XDTIyMDEwNzAwMDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJ
ARYTZHdtdzJAaW5mcmFkZWFkLm9yZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3
GpC2bomUqk+91wLYBzDMcCj5C9m6oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZH
h7htyAkWYVoFsFPrwHounto8xTsySSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT
9YgcBqKCo65pTFmOnR/VVbjJk4K2xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNj
P+qDrh0db7PAjO1D4d5ftfrsf+kdRR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy
2U+eITZ5LLE5s45mX2oPFknWqxBobQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3
BgBEmfsYWlBXO8rVXfvPgLs32VdVNZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/
7auNVRmPB3v5SWEsH8xi4Bez2V9UKxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmd
lFYhAflWKQ03Ufiu8t3iBE3VJbc25oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9ae
lIl6vtbhMA+l0nfrsORMa4kobqQ5C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMB
AAGjggHMMIIByDAfBgNVHSMEGDAWgBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeD
Mcimo0oz8o1R1Nver3ZVpSkwDgYDVR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYw
FAYIKwYBBQUHAwQGCCsGAQUFBwMCMEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYB
BQUHAgEWF2h0dHBzOi8vc2VjdGlnby5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9j
cmwuc2VjdGlnby5jb20vU2VjdGlnb1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1h
aWxDQS5jcmwwgYoGCCsGAQUFBwEBBH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdv
LmNvbS9TZWN0aWdvUlNBQ2xpZW50QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAj
BggrBgEFBQcwAYYXaHR0cDovL29jc3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5m
cmFkZWFkLm9yZzANBgkqhkiG9w0BAQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQv
Q/fzPXmtR9t54rpmI2TfyvcKgOXpqa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvI
lSPrzIB4Z2wyIGQpaPLlYflrrVFKv9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9Ch
WFfgSXvrWDZspnU3Gjw/rMHrGnqlHtlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0w
hpBtXdyDjzBtQTaZJ7zTT/vlehc/tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9
IzGCBMcwggTDAgEBMIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVz
dGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMT
NVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEA
xr4ZlmdAxAMdKFES+jupfjANBglghkgBZQMEAgEFAKCCAeswGAYJKoZIhvcNAQkDMQsGCSqGSIb3
DQEHATAcBgkqhkiG9w0BCQUxDxcNMjMxMDIwMTc0NzU0WjAvBgkqhkiG9w0BCQQxIgQgV5RZNcKF
wIFoEPV5qYQMok4+hSt7Bau9DYfnNCME91swgb0GCSsGAQQBgjcQBDGBrzCBrDCBljELMAkGA1UE
BhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEYMBYG
A1UEChMPU2VjdGlnbyBMaW1pdGVkMT4wPAYDVQQDEzVTZWN0aWdvIFJTQSBDbGllbnQgQXV0aGVu
dGljYXRpb24gYW5kIFNlY3VyZSBFbWFpbCBDQQIRAMa+GZZnQMQDHShREvo7qX4wgb8GCyqGSIb3
DQEJEAILMYGvoIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVy
MRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNl
Y3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEAxr4Z
lmdAxAMdKFES+jupfjANBgkqhkiG9w0BAQEFAASCAgBZ99jY4Q+GqTxQ4AxTC5SbrrEm18q6KUml
VOiu3fCZIgZKWHKbSWOnAxwxDNW3FG60ZYC+7x9+lkonSGmlkyEJlM8o19rIrEFddmWK0M84bfRz
ZGbNX5Z8LN6YNy0hYSBjdFXtt8rY4Jmu00aYuIhmWz8O9/I4EgAcMmBx6fHZjbeWhPBqS5yNDuo/
CRjKXpmZmmHmmDJF9itc5lSGzcX3vCEEOAW/t7MplHBXQxiRP/YvZQPnIQyH2VSM2CxXCLIvF+RU
ZWrsQdAztKsYpADJw+N95DZI+k9TZ3bxNELYkIOXJEgS3sG00/o0a8yh1ho6osgt4LCj37zM0M+G
Hg2eCF2iBTFyC52Qh/vlWq0KRruIFtc8w4OELvio+xXL54E3RmV4TlmXQ+uuv4czXELLzacv2ncn
Q7zeH8wcFgQBBU+4YfU48Cg7foU07X1qqd2K5GzNaCXihn6YksdLN4yScIpRVc9ydl7t67xqe4Xe
AovXeZWPb8IzSIVjOmmruOVu87Ri2oipwkMij1DsN9tENEHL95zNQl2OVPmizhHhioSGjaYbtV1J
NAGYJsSJHyjkx5jlRk+ih0Io4YOQDep730OadUyLP3vpNJo7WgaJ5UN7c/D32ZVLIgUQuixWI6BC
2Y6r4vXLs1XyFuGH46+q3b1SF+6nw7AhCoddkaIvOAAAAAAAAA==


--=-8FLDoG2Lppp2TASqZ2OU--


From xen-devel-bounces@lists.xenproject.org Fri Oct 20 18:02:24 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 18:02:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619908.965749 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qttpB-0006HT-Oe; Fri, 20 Oct 2023 18:02:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619908.965749; Fri, 20 Oct 2023 18:02: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 1qttpB-0006HM-M8; Fri, 20 Oct 2023 18:02:17 +0000
Received: by outflank-mailman (input) for mailman id 619908;
 Fri, 20 Oct 2023 18:02: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 1qttpB-0006HG-1m
 for xen-devel@lists.xenproject.org; Fri, 20 Oct 2023 18:02: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 1qttpA-0001dq-Mp; Fri, 20 Oct 2023 18:02:16 +0000
Received: from [54.239.6.188] (helo=[192.168.205.12])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qttpA-000615-Gn; Fri, 20 Oct 2023 18:02: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=r1/AEQOW3rJpZe7SHZ7WAusrV8f70aqhSl8y5z5pv80=; b=rbf89sMUb4lSGiHEhZPwn90j56
	VakncAkL3hjOg9LgvQAjOZy+193jAs84r5RjzNEOt2A1YuoYyeChca+qfoiVp9K+Se3KqfmQZfMCa
	JkEzOJrGSV0OZAwJKvBVbNoYEg5t2uuoFVPt6ML/osOweLEO0tRadpcrqRs5h8MZ2GCo=;
Message-ID: <7123faae-562e-4e78-a5d2-18c5ccc1b7f6@xen.org>
Date: Fri, 20 Oct 2023 19:02:14 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v5 9/9] xen/arm: Map ITS doorbell register to IOMMU page
 tables.
Content-Language: en-GB
To: Stewart Hildebrand <stewart.hildebrand@amd.com>,
 xen-devel@lists.xenproject.org
Cc: Rahul Singh <rahul.singh@arm.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
References: <20231004145604.1085358-1-stewart.hildebrand@amd.com>
 <20231004145604.1085358-10-stewart.hildebrand@amd.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <20231004145604.1085358-10-stewart.hildebrand@amd.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi Stewart,

On 04/10/2023 15:55, Stewart Hildebrand wrote:
> From: Rahul Singh <rahul.singh@arm.com>

This wants an explanation why this is needed.

> Signed-off-by: Rahul Singh <rahul.singh@arm.com>

Your signed-off-by is missing.

> ---
> v4->v5:
> * new patch
> ---
>   xen/arch/arm/vgic-v3-its.c | 12 ++++++++++++
>   1 file changed, 12 insertions(+)
> 
> diff --git a/xen/arch/arm/vgic-v3-its.c b/xen/arch/arm/vgic-v3-its.c
> index 05429030b539..df8f045198a3 100644
> --- a/xen/arch/arm/vgic-v3-its.c
> +++ b/xen/arch/arm/vgic-v3-its.c
> @@ -682,6 +682,18 @@ static int its_handle_mapd(struct virt_its *its, uint64_t *cmdptr)
>                                            BIT(size, UL), valid);
>           if ( ret && valid )
>               return ret;
> +
> +        if ( is_iommu_enabled(its->d) ) {

Coding style.

> +            ret = map_mmio_regions(its->d, gaddr_to_gfn(its->doorbell_address),
> +                           PFN_UP(ITS_DOORBELL_OFFSET),
> +                           maddr_to_mfn(its->doorbell_address));


A couple of remarks. Firstly, we know the ITS doorbell at domain 
creation. So I think thish should be called from vgic_v3_its_init_virtual().

Regardless that, any code related to device initialization belongs to 
gicv3_its_map_guest_device().

Lastly, I know the IOMMU page-tables and CPU page-tables are currently 
shared. But strictly speaking, map_mmio_regions() is incorrect because 
the doorbell is only meant to be accessible by the device. So this 
should only be mapped in the IOMMU page-tables.

In fact I vaguely recall that on some platforms you may get a lockup if 
the CPU attempts to write to the doorbell. So we may want to unshare 
page-tables in the future.

For now, we want to use the correct interface (iommu_*) and write down 
the potential security impact (so we remember when exposing a virtual 
ITS to  guests).

> +            if ( ret < 0 )
> +            {
> +                printk(XENLOG_ERR "GICv3: Map ITS translation register d%d failed.\n",
> +                        its->d->domain_id);

XENLOG_ERR is not ratelimited and therefore should not be called from 
emulation path. If you want to print an error, then you should use 
XENLOG_G_ERR.

Also, for printing domain, the preferred is to using %pd with the domain 
as argument (here its->d.

But as this is emulation and therefore the current vCPU belongs to 
its->d, you could directly use gprintk(XENLOG_ERR, "...").

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Fri Oct 20 18:03:08 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 18:03:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619910.965760 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qttq0-0006j8-2I; Fri, 20 Oct 2023 18:03:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619910.965760; Fri, 20 Oct 2023 18: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 1qttpz-0006j1-V8; Fri, 20 Oct 2023 18:03:07 +0000
Received: by outflank-mailman (input) for mailman id 619910;
 Fri, 20 Oct 2023 18:03: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=SkgR=GC=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qttpy-0006cl-CC
 for xen-devel@lists.xenproject.org; Fri, 20 Oct 2023 18:03:06 +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 ea66109c-6f72-11ee-9b0e-b553b5be7939;
 Fri, 20 Oct 2023 20:03:04 +0200 (CEST)
Received: by mail-ej1-x635.google.com with SMTP id
 a640c23a62f3a-98377c5d53eso172533466b.0
 for <xen-devel@lists.xenproject.org>; Fri, 20 Oct 2023 11:03: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
 s16-20020a170906bc5000b009b95b46bbd1sm1925545ejv.133.2023.10.20.11.03.03
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Fri, 20 Oct 2023 11:03: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: ea66109c-6f72-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1697824984; x=1698429784; 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=LXklF69dQjqD6WW2eyjT9Oj3bHKP/tvaQb21x7Nl+6g=;
        b=lgaokcu5l7X5yQx4gCoh1IbbOm1OS61cz9DznlA1S9LR9Mq42SgyqPwvQ0CQGrxgWE
         u2jhG6WOGKVZFfSvFogC5dKq2FNf6TQlVsuoclnOC6PhZ+qvwqRrl2haCemsj8/PcDWz
         FYMEmD/4cueywZCTqvfPtPjeePiBW3YuZE2To=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1697824984; x=1698429784;
        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=LXklF69dQjqD6WW2eyjT9Oj3bHKP/tvaQb21x7Nl+6g=;
        b=QCgl7k66kDIiB0iRpAqBIaOoZzNoxjllzD1TEKuZ0r/VEs/fGxFYcv1izs0Ts+NKwa
         ul9Hw+qCeZkI6X+31qLDVhd4FfAKAxZWQgJ5wLCG2JbfB4NqVXIkgEXflOx775D4dbC3
         u2NLRX4M3x1kCEp9TCC43i4+ko/Od5/QmM3ZjnlMUbYP8YVRvRrzPa7SXi90RgPL2xs0
         9sc9p2OT/p50i7QHFBC2509GnXKHLyMgbchKrzt4WjXsbRVFlbMr+osUtYjp8mhM1qsa
         4nVpW/dc5dLSXQYA0tUymRt3G+Dt7762LYY4/FwOB62FvXfQPYXvsqU1eTCdnGVSw/sa
         x7RA==
X-Gm-Message-State: AOJu0YwgqWgGvCoCbSnYlYl8GyjSH+hY8gS35lnlEaOCR4Va9ZRWuivH
	xqzW+j8+lUACOWlzmDQXVsM5EQ==
X-Google-Smtp-Source: AGHT+IEmk6HntFok9y15A6utNLRg2AeC74Uj0QPqPjD133CydkgthYbhEsIbM4czfPZHtn13B4qRHg==
X-Received: by 2002:a17:907:d505:b0:9ae:73ca:bbad with SMTP id wb5-20020a170907d50500b009ae73cabbadmr1581554ejc.43.1697824983903;
        Fri, 20 Oct 2023 11:03:03 -0700 (PDT)
Message-ID: <d1284225-8cca-4f5a-911e-8ebdc0336356@citrix.com>
Date: Fri, 20 Oct 2023 19:03:03 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH] xen/sched: fix sched_move_domain()
Content-Language: en-GB
To: Juergen Gross <jgross@suse.com>, xen-devel@lists.xenproject.org
Cc: George Dunlap <george.dunlap@citrix.com>,
 Dario Faggioli <dfaggioli@suse.com>, Henry Wang <Henry.Wang@arm.com>
References: <20231019112314.22665-1-jgross@suse.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: <20231019112314.22665-1-jgross@suse.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 19/10/2023 12:23 pm, Juergen Gross wrote:
> When moving a domain out of a cpupool running with the credit2
> scheduler and having multiple run-queues, the following ASSERT() can
> be observed:
>
> (XEN) Xen call trace:
> (XEN)    [<ffff82d04023a700>] R credit2.c#csched2_unit_remove+0xe3/0xe7
> (XEN)    [<ffff82d040246adb>] S sched_move_domain+0x2f3/0x5b1
> (XEN)    [<ffff82d040234cf7>] S cpupool.c#cpupool_move_domain_locked+0x1d/0x3b
> (XEN)    [<ffff82d040236025>] S cpupool_move_domain+0x24/0x35
> (XEN)    [<ffff82d040206513>] S domain_kill+0xa5/0x116
> (XEN)    [<ffff82d040232b12>] S do_domctl+0xe5f/0x1951
> (XEN)    [<ffff82d0402276ba>] S timer.c#timer_lock+0x69/0x143
> (XEN)    [<ffff82d0402dc71b>] S pv_hypercall+0x44e/0x4a9
> (XEN)    [<ffff82d0402012b7>] S lstar_enter+0x137/0x140
> (XEN)
> (XEN)
> (XEN) ****************************************
> (XEN) Panic on CPU 1:
> (XEN) Assertion 'svc->rqd == c2rqd(sched_unit_master(unit))' failed at common/sched/credit2.c:1159
> (XEN) ****************************************
>
> This is happening as sched_move_domain() is setting a different cpu
> for a scheduling unit without telling the scheduler. When this unit is
> removed from the scheduler, the ASSERT() will trigger.
>
> In non-debug builds the result is usually a clobbered pointer, leading
> to another crash a short time later.
>
> Fix that by swapping the two involved actions (setting another cpu and
> removing the unit from the scheduler).
>
> Cc: Henry Wang <Henry.Wang@arm.com>
> Fixes: 70fadc41635b ("xen/cpupool: support moving domain between cpupools with different granularity")

Link: https://github.com/Dasharo/dasharo-issues/issues/488

And a Reported/Tested-by if the discoverer wishes.

> Signed-off-by: Juergen Gross <jgross@suse.com>
> ---
> This fixes a regression introduced in Xen 4.15. The fix is very simple
> and it will affect only configurations with multiple cpupools. I think
> whether to include it in 4.18 should be decided by the release manager
> based on the current state of the release (I think I wouldn't have
> added it that late in the release while being the release manager).
> ---
>  xen/common/sched/core.c | 7 ++++---
>  1 file changed, 4 insertions(+), 3 deletions(-)
>
> diff --git a/xen/common/sched/core.c b/xen/common/sched/core.c
> index 12deefa745..e9f7486197 100644
> --- a/xen/common/sched/core.c
> +++ b/xen/common/sched/core.c
> @@ -738,12 +738,13 @@ int sched_move_domain(struct domain *d, struct cpupool *c)
>      new_p = cpumask_first(d->cpupool->cpu_valid);
>      for_each_sched_unit ( d, unit )
>      {
> -        spinlock_t *lock = unit_schedule_lock_irq(unit);
> +        spinlock_t *lock;
> +
> +        sched_remove_unit(old_ops, unit);
>  
> +        lock = unit_schedule_lock_irq(unit);
>          sched_set_res(unit, get_sched_res(new_p));
>          spin_unlock_irq(lock);
> -
> -        sched_remove_unit(old_ops, unit);

I'm happy to see the T-by, and that you know what's going on here, but I
don't understand the explanation.

The change here is the ordering of sched_remove_unit() with respect to
the lock/get&set/unlock block.

remove unit is moderately complicated, but the get&set is just an RCU
pointer assignment.  But as the assertion fires in the latter action, it
must be the get&set causing problems.

And that's because new_p is actually a cpu number, which has the
consequence of causing Credit2's c2rqd() to materialise the wrong
csched2_runqueue_data pointer, and then we're operating on someone
else's data without a suitable lock held.

And it's only by luck that none of the other schedulers tie something to
per-cpu data like this?


Other observations.

I think sched_move_domain() would be easier to follow with
s/new_p/new_cpu/ (and similar for unit_p) as "p" is not obviously
processor unless you notice the cpumask_first() calls.

Why do we move a domain back to cpupool0 on domain destroy?  There's
nothing magic about cpupool0 that I'm aware of here.  It seems like
unnecessary complexity.

~Andrew


From xen-devel-bounces@lists.xenproject.org Fri Oct 20 18:07:55 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 18:07:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619914.965770 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qttuX-0007Uc-Ih; Fri, 20 Oct 2023 18:07:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619914.965770; Fri, 20 Oct 2023 18:07: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 1qttuX-0007UV-Fw; Fri, 20 Oct 2023 18:07:49 +0000
Received: by outflank-mailman (input) for mailman id 619914;
 Fri, 20 Oct 2023 18:07: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=qnt2=GC=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qttuV-0007UP-SL
 for xen-devel@lists.xenproject.org; Fri, 20 Oct 2023 18:07:47 +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 8fbe707a-6f73-11ee-9b0e-b553b5be7939;
 Fri, 20 Oct 2023 20:07: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 52DEDCE34CE;
 Fri, 20 Oct 2023 18:07:38 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 9D07DC433C9;
 Fri, 20 Oct 2023 18:07: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: 8fbe707a-6f73-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1697825257;
	bh=YbevhFPLdC9WXimJJiiBx15EKNKNElHJ8LzBpaPUr9s=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=V5FznSmG2vVENk3YnaYVSg/BznA8qQ5sf5zhjWSHgEwbScWkETlmqXE7sIQU+x836
	 zqwAN1CZ21CIvTlNfDwE1zDLLbxDpKnTVbp0L9w29upfv7w6JHTO8W3KefHFfdkyrB
	 sqWVywu4n4yY69AK2JSqe9utR8H7VCgCe9nUM/iSjRs3ZiQDsr7blO/mR9kY1c3CAk
	 vFV2ETfUrMXKvX4NmHpMgOvJ737obmf4G1pF947G1zJrA+uYp0uoXjqTxQXklSkx4F
	 bWuiNjAjd8IGAMYGDqp9ZzGrSVPhJqDcuz/Me6FPoeZKtJpZssliiTk7a+HrL8/TlR
	 73SN9TjuwNOHQ==
Date: Fri, 20 Oct 2023 11:07:25 -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>, 
    Nicola Vetrini <nicola.vetrini@bugseng.com>, 
    Jan Beulich <jbeulich@suse.com>, 
    "michal.orzel@amd.com" <michal.orzel@amd.com>, 
    "xenia.ragiadakou@amd.com" <xenia.ragiadakou@amd.com>, 
    "ayan.kumar.halder@amd.com" <ayan.kumar.halder@amd.com>, 
    "consulting@bugseng.com" <consulting@bugseng.com>, 
    "andrew.cooper3@citrix.com" <andrew.cooper3@citrix.com>, 
    "roger.pau@citrix.com" <roger.pau@citrix.com>, 
    Simone Ballarin <simone.ballarin@bugseng.com>, 
    Doug Goldstein <cardoe@cardoe.com>, 
    George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>, 
    Wei Liu <wl@xen.org>, 
    "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Subject: Re: [XEN PATCH][for-next][for-4.19 v2 1/8] xen/include: add macro
 LOWEST_BIT
In-Reply-To: <93F0B739-367C-4DFA-9F53-0C2C58FCD756@arm.com>
Message-ID: <alpine.DEB.2.22.394.2310201107140.2356865@ubuntu-linux-20-04-desktop>
References: <cover.1697123806.git.nicola.vetrini@bugseng.com> <bb0ba44f8a3944c22a1c7cf19196c7060e8adb4b.1697123806.git.nicola.vetrini@bugseng.com> <93408661-721b-c4b3-d504-e65142bbdaea@suse.com> <42ee4de54f6d9bd80fb50db3545cbaf4@bugseng.com>
 <08286993-6a83-b928-6398-e129397927a0@suse.com> <9002a10f872fccc5217faab2f20ad5ba@bugseng.com> <alpine.DEB.2.22.394.2310191253440.2099202@ubuntu-linux-20-04-desktop> <93F0B739-367C-4DFA-9F53-0C2C58FCD756@arm.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Fri, 20 Oct 2023, Luca Fancellu wrote:
> > On 19 Oct 2023, at 20:58, Stefano Stabellini <sstabellini@kernel.org> wrote:
> > +Luca
> > 
> >>>>>> --- a/xen/include/xen/macros.h
> >>>>>> +++ b/xen/include/xen/macros.h
> >>>>>> @@ -8,8 +8,10 @@
> >>>>>> #define DIV_ROUND(n, d) (((n) + (d) / 2) / (d))
> >>>>>> #define DIV_ROUND_UP(n, d) (((n) + (d) - 1) / (d))
> >>>>>> 
> >>>>>> -#define MASK_EXTR(v, m) (((v) & (m)) / ((m) & -(m)))
> >>>>>> -#define MASK_INSR(v, m) (((v) * ((m) & -(m))) & (m))
> >>>>> 
> >>>>> a SAF-<n>-safe comment here?
> >>>>> 
> >>>> 
> >>>> One reason is that now that violations only belonging to tool
> >>>> configurations
> >>>> and similar are documented in docs/misra/deviations.rst (committed in
> >>>> Stefano's
> >>>> branch for-4.19 [1]).
> >>> 
> >>> But tool configuration means every analysis tool needs configuring
> >>> separately. That's why the comment tagging scheme was decided to be
> >>> preferred, iirc.
> >>> 
> >>>> Also, there were disagreements on the SAF naming
> >>>> scheme, and
> >>>> patches like those would not be accepted at the moment.
> >>> 
> >>> Well, that needs resolving. The naming there shouldn't lead to patches
> >>> being accepted that later may need redoing.
> >>> 
> >>> Jan
> >> 
> >> While this is true, in this case I'm not willing to deviate with a SAF, given
> >> that
> >> some ECLAIR-specific configuration would be needed anyways, given that I'm
> >> deviating a macro definition, rather than the line where it's actually used
> >> (and maybe other tools would need
> >> that as well).
> > 
> > Did I get it right that the problem with using SAF in this case is that
> > it wouldn't be sufficient to add a SAF comment on top of the MACRO
> > definition, but we would need a SAF comment on top of every MACRO
> > invocation?
> > 
> > If so, then not just for this MACRO but in general basically we have to
> > use deviations.rst.
> > 
> > Luca, do you know what would be the behavior for cppcheck and/or
> > Coverity? I imagine it will be the same and they would also need a
> > deviation at every MACRO invocation, not just the definition?
> 
> Seems that cppcheck reports at the macro definition, instead Coverity reports
> at the macro invocation.

Does that mean that a /* SAF-xx-safe */ comment would work at the MACRO
definition for cppcheck but not for Coverity?

If so, then I wonder if cppcheck's behavior is what we would like to
have, but from a code compliance point of view it is the least reliable,
so that's the reason why both Coverity and ECLAIR don't implement it. In
terms of correctness of the implementation we know cppcheck is lagging a
bit behind...


From xen-devel-bounces@lists.xenproject.org Fri Oct 20 18:11:02 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 18:11:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619917.965779 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qttxb-0000TK-VR; Fri, 20 Oct 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 619917.965779; Fri, 20 Oct 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 1qttxb-0000TD-SZ; Fri, 20 Oct 2023 18:10:59 +0000
Received: by outflank-mailman (input) for mailman id 619917;
 Fri, 20 Oct 2023 18:10: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 1qttxZ-0000T1-Si; Fri, 20 Oct 2023 18:10: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 1qttxZ-0001wc-It; Fri, 20 Oct 2023 18:10: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 1qttxZ-00066F-8G; Fri, 20 Oct 2023 18:10:57 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qttxZ-0007TT-7i; Fri, 20 Oct 2023 18: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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=8+InVvTm/8zP1HeET+92f29DHIOhRp9HAqBw8RTs1qI=; b=AOy/GBKtCxOLmANRLWTZw86a9D
	fYI9mXT1yUZgAicCyL/Q93JV1sNvuu8Q799GNwYnTUX9c8VHKVt7KaGO6cemsXbYQ/mkxPcj1qBjj
	FrQAsRFpoP06qTeIFkjIadSH0EWogSj/HI8vVsn04+s+rS6Xnv/LIYwYUhdr6BAZRsyg=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183447-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 183447: 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=bad1ac345b1910b820b8a703ad1b9f66412ea844
X-Osstest-Versions-That:
    xen=8a5ef972bab3ad57bf017a42601943aa05811536
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 20 Oct 2023 18:10:57 +0000

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

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                  bad1ac345b1910b820b8a703ad1b9f66412ea844
baseline version:
 xen                  8a5ef972bab3ad57bf017a42601943aa05811536

Last test of basis   183442  2023-10-20 11:00:27 Z    0 days
Testing same since   183447  2023-10-20 15:00:26 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Jan Beulich <jbeulich@suse.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
   8a5ef972ba..bad1ac345b  bad1ac345b1910b820b8a703ad1b9f66412ea844 -> smoke


From xen-devel-bounces@lists.xenproject.org Fri Oct 20 18:13:26 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 18:13:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619921.965790 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qttzs-0001BU-CJ; Fri, 20 Oct 2023 18:13:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619921.965790; Fri, 20 Oct 2023 18:13: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 1qttzs-0001BN-8E; Fri, 20 Oct 2023 18:13:20 +0000
Received: by outflank-mailman (input) for mailman id 619921;
 Fri, 20 Oct 2023 18:13: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 1qttzq-0001BF-Nz
 for xen-devel@lists.xenproject.org; Fri, 20 Oct 2023 18:13: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 1qttzp-00020Z-HJ; Fri, 20 Oct 2023 18:13:17 +0000
Received: from [54.239.6.188] (helo=[192.168.205.12])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qttzp-0006Yd-Ay; Fri, 20 Oct 2023 18:13: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=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=q9G45tJIWICHkA+KVSRLsXLJxvGjLNZjtGlaYfaswys=; b=eH8meLzyWKGXmGvSvb3GkT0E/L
	F5GMTFTzU+LCbdLRLVP8UiKfOWVo9F/m1+tj35x6NvaVOwGMhZuTmgLPbBNqOr783/sMIw16wWd3u
	089tPyQ++l47aAI0RHz9d+aSNkxZav9MVTAUl6bm1E6bARv5n6mRme3jPKTT9g1CAdSE=;
Message-ID: <2f802877-1d89-4d28-9f47-a13e7cd277c0@xen.org>
Date: Fri, 20 Oct 2023 19:13:14 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v5 8/9] Revert "xen/arm: Add cmdline boot option
 "pci-passthrough = <boolean>""
Content-Language: en-GB
To: Stewart Hildebrand <stewart.hildebrand@amd.com>,
 xen-devel@lists.xenproject.org
Cc: Rahul Singh <rahul.singh@arm.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>,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>
References: <20231004145604.1085358-1-stewart.hildebrand@amd.com>
 <20231004145604.1085358-9-stewart.hildebrand@amd.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <20231004145604.1085358-9-stewart.hildebrand@amd.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi,

On 04/10/2023 15:55, Stewart Hildebrand wrote:
> From: Rahul Singh <rahul.singh@arm.com>
> 
> This enables us to use IOMMU + PCI in dom0 without having to specify
> "pci-passthrough=yes".

IIRC, the goal was to also allow to easily disable PCI passthrough (IOW 
vPCI at boot time). How would you do that now?

> 
> This reverts commit 15517ed61f55be6039aedcc99720ee07c772ed44.

Rahul's signed-off-by and yours are missing.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Fri Oct 20 18:15:44 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 18:15:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619924.965799 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtu2A-0001w0-Q1; Fri, 20 Oct 2023 18:15:42 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619924.965799; Fri, 20 Oct 2023 18:15: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 1qtu2A-0001vt-NR; Fri, 20 Oct 2023 18:15:42 +0000
Received: by outflank-mailman (input) for mailman id 619924;
 Fri, 20 Oct 2023 18:15: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=7N33=GC=amd.com=ayan.kumar.halder@srs-se1.protection.inumbo.net>)
 id 1qtu29-0001vn-8D
 for xen-devel@lists.xenproject.org; Fri, 20 Oct 2023 18:15:41 +0000
Received: from NAM10-DM6-obe.outbound.protection.outlook.com
 (mail-dm6nam10on20613.outbound.protection.outlook.com
 [2a01:111:f400:7e88::613])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id ab0035b0-6f74-11ee-9b0e-b553b5be7939;
 Fri, 20 Oct 2023 20:15:38 +0200 (CEST)
Received: from SN6PR12MB2621.namprd12.prod.outlook.com (2603:10b6:805:73::15)
 by DM6PR12MB4515.namprd12.prod.outlook.com (2603:10b6:5:2a1::22) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.26; Fri, 20 Oct
 2023 18:15:32 +0000
Received: from SN6PR12MB2621.namprd12.prod.outlook.com
 ([fe80::7364:56e9:5097:3562]) by SN6PR12MB2621.namprd12.prod.outlook.com
 ([fe80::7364:56e9:5097:3562%4]) with mapi id 15.20.6907.025; Fri, 20 Oct 2023
 18:15: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: ab0035b0-6f74-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ZvZYDQop1RcHR/8xcJZhvCbUsprz7z3D37Muy3vKLsq91D1be2I7qCD8tqq4ufeAWuwcaKln99NpcECIaoMpQHjKWTwuTZtXqgR2IIXktSqD1Te3o3quZ7BtEAeHJAarccaX7WPuezn6MMYUKD0oCCU5p7PlHgRiA/Y7HlDg2sRTsx1Gmp6xyvyPcGZGI5zL51cmaVwjiQOBtn2mqtyJC449zmVaJ4X24xDiECARUxj7ogVJqsvUUgSECJSARA7qfsPp8J8CZ7++zJ7E7kPi4QI3hK5kfbFGV75YcH9MNqThS7ccmY1YOYGx+Kb/RbCgdoUdRwXP7sou6AQO0TmV7A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=YmwKfZa/DtF6GybwdS3XlOJuFOpxQ+yAxfoJ4CmS64A=;
 b=Y+tRSKtuXCOXxvaS4SG1R0fFf6WfEjQaNpusQSwZA0dIiTYC5BEPpViYMNUFHu1dTih/f1LvS7VD4MCAEw4CxzMaDILp3sJiPzB6UZn63SG08MCHDl6uwgNcf9mUzD7+gF2e6NRQ+hBp1MlealdCOUh9b+gPH82j/hmeFG7DyKQMrmTsqj8GSlCluojgzzrJ6JIOnzf+EpgBp9Vvn+h1N/YcHzmZl1hev5NxQ27SkndFtcug7QrnfjbdEa1X+p/3TrAPROVIx0/NMPBTysJN5DE6gNqZXhIA1vY+EMQE2o9IaW8NDWAVtC/l3Q0KUvLi0pLBJApNO2UlCb7vOqCyqw==
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=YmwKfZa/DtF6GybwdS3XlOJuFOpxQ+yAxfoJ4CmS64A=;
 b=qQ68o6UvNjAlP3SZ8Q/L6ow/9chm7Hqlpsjs33YGbWkYt8vl2Qz28R62xOkbv0wuwNx/rFhom1mITtVwHmIzfalrs3tGEaMZEEgfuNLJHLTFLBUFICD+HmHe+K5d3BXEQ92lKuqfraMUxdEjxmWfhF/AfV391VHEMoWp0vmF/V4=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=amd.com;
Message-ID: <4c01b3d0-3163-4379-9faf-c48229ea1d00@amd.com>
Date: Fri, 20 Oct 2023 19:15:25 +0100
User-Agent: Mozilla Thunderbird
Subject: Re: QEMU features useful for Xen development?
Content-Language: en-GB
To: =?UTF-8?Q?Alex_Benn=C3=A9e?= <alex.bennee@linaro.org>
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>
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> <87r0lp720d.fsf@linaro.org>
From: Ayan Kumar Halder <ayankuma@amd.com>
In-Reply-To: <87r0lp720d.fsf@linaro.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR2P281CA0137.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:9e::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_|DM6PR12MB4515:EE_
X-MS-Office365-Filtering-Correlation-Id: 347d3cec-c72e-4ad2-ec81-08dbd1988c4c
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	BmvffvNXK8lqbNg4pWWebYGcXkQ+FYVcPoFhsHiriEj3xT3vwIlcCun8PaVPWW3EnjjG7OqPkTlhEdBY5+4gUV1buN0e4WbFsi0bNGWF41YbXsdmrFT/+X+6u5eg7bBS+y+Ls8kNmO9/q5EEUDUcWsMeCTA3jtsXBDGs2SmocuTziofL3vV0sHXTG/sXiYe/4KceUYPk4kohCpSwazstqH2HjcCGCp4xL19ptFOHJBDqtmxlQKtZNLn0Z/BNP8GQG1FTcEWuAoVsv3vczw8J1myYQOE3Mm+RannghziItyXSidZef8r1hopANRg2WxOhIXROEp0L9FVhxbqxAOGgWkEzdSJ2+ucmdtYxAgLz6phTaRfvs8kS97zyqmaJZ5yVp+rk6ghGy3byHwpMdlbmZMuIFAgHz8s+Y5yLOGCis/Rea7hRsGPn/B5f6+tqxFGCX7h3ry9CBkfjKc3q0YJDSeFjIoa9Njc1gGVZv3xUvkrrrG40yV/LSMteUu9vFFbgGz6uTP06/lL/qNfmbnuvR58n5fp5kQIk9r6trrMtH/YP2Bp9caQ8JZDDUH/X9bEKhfD8CJGa4nT56lckhnQzl+dgZedXCF9mJThAwTD6aMcSMtfxewndQXYPVjt2kFW/FokI9/PH8URgx8Mw5n31BA==
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)(39860400002)(396003)(376002)(366004)(346002)(136003)(230922051799003)(186009)(64100799003)(451199024)(1800799009)(6916009)(31686004)(41300700001)(478600001)(66476007)(66946007)(66556008)(54906003)(5660300002)(6666004)(6506007)(6512007)(53546011)(38100700002)(7416002)(2906002)(2616005)(316002)(26005)(8936002)(8676002)(4326008)(66574015)(83380400001)(6486002)(966005)(31696002)(36756003)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?RjlxSWpSYlU0UGdZaDJBS29MK0tXWjJKNmNZQW9nYnpkMCswVDE3NUI5UUlv?=
 =?utf-8?B?OExzdGxvSSt2eFJLYUFuanVjY2JZa05UcnFUZVRIdVVsZWlTS2V2Q2c5TWpj?=
 =?utf-8?B?Z3FodEM5cStpWjVnUzZLMXpJMHRMZTFuNm1mOEJma1Y3NG14N1RqT0pQbzda?=
 =?utf-8?B?NkZ5YTltRzRFVEMvQnJlSjB3UjF2ek5Ea1lRM01DLzdNQlZhTWJya3Y5SlF3?=
 =?utf-8?B?Mlhtd0t6Q2JKdi9WTzZTY2VkN2dWamlYUEc3Ky91Qm1aZXpRL0swTWRlN3Zw?=
 =?utf-8?B?MEtqSUhaanZ4UWxrS2s0eGU1SXhlaGV6S0VVa1NEWHk2VUFLcXVKZ1hPbjh5?=
 =?utf-8?B?TXlPd1h0SWt0ejJ0aXFNRUM0cXluRUhxcG52STFwaWV2QzBHNlVaQ0FQVUlO?=
 =?utf-8?B?U1dXcmVpeEhTaWl1WlhtWkdTUnd2SHVGUWR0MnRxV2NqSEJMb0xILzZiZGkv?=
 =?utf-8?B?UzlFdzQ3WDQ1aGx5eE1CdnBMeGwxTjVMRk0xaXFzeGxsVHAvQTJwVHN0OEUz?=
 =?utf-8?B?TlhDTmlWRkxoQUl6OGpqWE9qY1hkdE9tSGV3TmVvRGczZlFXTFF3NlA3ZDNB?=
 =?utf-8?B?NW10bm1FUjMwVyt4Zy9Wb3k3a1gxM1lTZ09NZC85cEdzMHBrMGJyeTNXKzFJ?=
 =?utf-8?B?dHBVSXB5dlAvTHBoRmRzb2ZKb2RLMkkvLzF0QndoUjFFSC8rd2R1aUp1M1ZN?=
 =?utf-8?B?ZGRkMEZYcHVkbi9mNXVxeFNuUnFNYnVUb3J2a3F0UlJ5cGNTdDNFVmxUTjV4?=
 =?utf-8?B?U3BhdUMvQ0tNT2JKTXBZWCtEM2lJUTdVRGxva1lBZ2tVZ2hMTWowV0VGRDVG?=
 =?utf-8?B?Yk5WRGpzczZSSFBTemNZSEY4ckt3ZG5OckRJekt5QnkvVmlpWUw2bTVEM09k?=
 =?utf-8?B?OVJ4RDFHYVZEcUZKcFF0Z2E3QW93Mkw1OW00QjhkbUVIUnlHbnl6RHlDTFF3?=
 =?utf-8?B?NVlTbnBWVnErS2Y0QUVUb0RaVm9JckI0OG9ib2pnVHJoVXFueHNib3ZPUy9Y?=
 =?utf-8?B?ZTFwRnFBREk3ZHJCY2FWa3AwQjUwdEEySS91MC84Q3lIWEV0Q3dlL096N2Vr?=
 =?utf-8?B?akJxYlJYS0NHemZRWWxFOHowYmlFaFBoaTBEVFcwb2hSTG9FTkhzRzlpRXkv?=
 =?utf-8?B?Kzk4dmp5UkF4alVVUGpSMzZBNHlUeGc5b0gzb0VvblR0ZFNWSW9yYnYweno5?=
 =?utf-8?B?WHJlTEp0dW1FT1RZUjYwZzdnZmx6LzNNUVFCRE9ZN3NwMlZ0OGZNNm40SGdU?=
 =?utf-8?B?UlpBRzR6NWZaWkYycHdSclg0V214LzNselRiVE5ZV1EwWHQvbmlCcnlvV3Z5?=
 =?utf-8?B?VVlMbGdibkhsK0xjNExENUw1VnBkcU96UU4wVHcvbkY0ZVptaU1SblZWVVMy?=
 =?utf-8?B?dW44OFIyays0b2tiRi9aVmd5SkwrWTVSeFlXOXNud1JBNWlpZU5Nb3F0RHlV?=
 =?utf-8?B?Q0xtOEwrQmswUWdOYzBxYm5vczFjUnIxWGxKT0cxVmczT0Z5OGVleTErMFdp?=
 =?utf-8?B?SmhUYU1HM3U5YXF1WEp6V1FxbWtJNU5ma3B3Ry92MlYxaUQvQ0VXbWRIRE9R?=
 =?utf-8?B?SlNvVUJJRzF5eDRTVll0Q2Y0QnNzZVcxd01IMmtkNkJtK1MyYjg4Q1lldUxI?=
 =?utf-8?B?ZkpwSEkvTW9QeG9UeXpLVVdhTEJWT2dNV1ZiUEViZEtEbWJUbUFySHk4SGJm?=
 =?utf-8?B?cXpGMmtianJLbkVHN1lRRDBYYlgydDJrekdGWEc5QmpRS2pWajVKeDhteVV6?=
 =?utf-8?B?UjVFUmtNazZsdmxlR0c1dGhDZWlrWDNveFZZeTJCVWVMd1VmTjJxQ3N0YUIw?=
 =?utf-8?B?eW5jUGsvWkNydWx4YXlMci81UUlGNi9jUnVxZXg5ZWk2UlBnamJyTW1OQmFm?=
 =?utf-8?B?cDRvcWxqWkgvNTFuaktJYVNlUXJaYUtGYTUzaHcrWEtSenRyWlQ5L29GM0Nn?=
 =?utf-8?B?ZGl5V3NkOUhlTmQrSGRJNFdsZklKcWtNYmthMk83T0wwcE9Cb3krQ280UjVu?=
 =?utf-8?B?NCtkNUpybmwwV3BLZU51Z2NwczlzVytqU2p5bVBUQk56d1VrRlg2UE5CRGVs?=
 =?utf-8?B?ZGRvWVFWRi9CdjQrSURKSmc3MExNOVc2MDQwYytBTFlqYjQvbmwzTytFUExP?=
 =?utf-8?Q?5ca3TJc937oc9kJ4wd+WOfCCF?=
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 347d3cec-c72e-4ad2-ec81-08dbd1988c4c
X-MS-Exchange-CrossTenant-AuthSource: SN6PR12MB2621.namprd12.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Oct 2023 18:15:32.5017
 (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: 8ueYigUsBmEJ4WCHzFKd6VfwsnYW+G6MitDSHR5j8kIMvWDGnbDYOPn/cRrmkjL6lS9hmr60tZ1D5nI1JSuIFQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR12MB4515

Hi Alex,

On 20/10/2023 16:15, Alex Bennée wrote:
> Ayan Kumar Halder <ayankuma@amd.com> writes:
>
>> Hi Peter/Alex,
>>
>> Appreciate your help. :)
>>
>> On 31/08/2023 11:03, Peter Maydell 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.
>>>
>>>
>>> On Thu, 31 Aug 2023 at 10:53, Alex Bennée <alex.bennee@linaro.org> wrote:
>>>> Peter Maydell <peter.maydell@linaro.org> writes:
>>>>
>>>>> On Thu, 31 Aug 2023 at 01:57, Stefano Stabellini <sstabellini@kernel.org> 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.
> We wrote up whats required on our JIRA:
>
>    https://linaro.atlassian.net/browse/QEMU-598
>
> Given we have most of the bits already it shouldn't take long to build a
> model for it. However I want to draw every ones attention to the notes:
>
>    The real FPGA image does not have a global monitor that can support
>    LDREX/STREX between the two CPUs for accesses in the DDR4 RAM or BRAM.
>    This means that effectively guest software will only be able to use
>    one CPU (the local monitor within the CPU works fine). This
>    restriction won’t apply to the QEMU model, but is important to be
>    aware of if you’re writing guest software on the QEMU model that you
>    also want to be able to run on the FPGA board.
>
> However if that meets the requirements for Xen testing and no one tries
> to run SMP loads on real HW then I can try and find space on our roadmap
> to do it (rough guess 9.1 or 9.2?).

Yes, this meets the requirements for Xen testing.

It will be great to use Qemu for Xen testing.

Please keep me posted on this feature as I am plumbing the R52 bits in 
upstream Xen.

- Ayan

>


From xen-devel-bounces@lists.xenproject.org Fri Oct 20 18:17:08 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 18:17:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619927.965809 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtu3X-0002ct-3a; Fri, 20 Oct 2023 18:17:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619927.965809; Fri, 20 Oct 2023 18:17: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 1qtu3X-0002cm-13; Fri, 20 Oct 2023 18:17:07 +0000
Received: by outflank-mailman (input) for mailman id 619927;
 Fri, 20 Oct 2023 18:17:06 +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 1qtu3V-0002ce-Vw
 for xen-devel@lists.xenproject.org; Fri, 20 Oct 2023 18:17: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 1qtu3V-000244-Jx; Fri, 20 Oct 2023 18:17:05 +0000
Received: from [54.239.6.188] (helo=[192.168.205.12])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qtu3V-0006d7-Bz; Fri, 20 Oct 2023 18: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>
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=bAIPwaYn9EI/xmr168E3J+iH0LHDDLju4ouL0s3MhlA=; b=21diqskqfwZtUEVELBOkgvqInY
	+5pIKDOh6hisKOrJ62zBfPYlDy89SV5ed1d2ESscVrEZMWbe7Q1y+/Dszm9EMdqrrIZr/sJWXlmql
	vKHrHurMEjBE66dkyMFzB8sqMTME2SIHfjOvcAkhMV8p5CswPBMjJzxw7/PQCDrT/xhM=;
Message-ID: <7a1bb4f1-4bb1-4592-8ddf-9e97ad4a39f3@xen.org>
Date: Fri, 20 Oct 2023 19:17:03 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v5 7/9] xen/arm: Fix mapping for PCI bridge mmio region
Content-Language: en-GB
To: Stewart Hildebrand <stewart.hildebrand@amd.com>,
 xen-devel@lists.xenproject.org
Cc: Rahul Singh <rahul.singh@arm.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
References: <20231004145604.1085358-1-stewart.hildebrand@amd.com>
 <20231004145604.1085358-8-stewart.hildebrand@amd.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <20231004145604.1085358-8-stewart.hildebrand@amd.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi Stewart,

On 04/10/2023 15:55, Stewart Hildebrand wrote:
> From: Rahul Singh <rahul.singh@arm.com>
> 
> Current code skip the mapping for PCI bridge MMIO region to dom0 when
> pci_passthrough_enabled flag is set. Mapping should be skip when
> has_vpci(d) is enabled for the domain, as we need to skip the mapping
> only when VPCI handler are registered for ECAM.
> 
> Signed-off-by: Rahul Singh <rahul.singh@arm.com>
> Signed-off-by: Stewart Hildebrand <stewart.hildebrand@amd.com>
> ---
> v4->v5:
> * new patch

I am a bit lost. How is this a new patch but...

> * rebase on top of "dynamic node programming using overlay dtbo" series
> * replace !is_pci_passthrough_enabled() check with !IS_ENABLED(CONFIG_HAS_PCI)
>    instead of removing

... there is a changelog. Did you get the patch from somewhere?

> ---
>   xen/arch/arm/device.c       | 2 +-
>   xen/arch/arm/domain_build.c | 4 ++--
>   2 files changed, 3 insertions(+), 3 deletions(-)
> 
> diff --git a/xen/arch/arm/device.c b/xen/arch/arm/device.c
> index 1f631d327441..4d69c298858d 100644
> --- a/xen/arch/arm/device.c
> +++ b/xen/arch/arm/device.c
> @@ -330,7 +330,7 @@ int handle_device(struct domain *d, struct dt_device_node *dev, p2m_type_t p2mt,
>           .d = d,
>           .p2mt = p2mt,
>           .skip_mapping = !own_device ||
> -                        (is_pci_passthrough_enabled() &&
> +                        (has_vpci(d) &&
>                           (device_get_class(dev) == DEVICE_PCI_HOSTBRIDGE)),
>           .iomem_ranges = iomem_ranges,
>           .irq_ranges = irq_ranges
> diff --git a/xen/arch/arm/domain_build.c b/xen/arch/arm/domain_build.c
> index 7da254709d17..2c55528a62d4 100644
> --- a/xen/arch/arm/domain_build.c
> +++ b/xen/arch/arm/domain_build.c
> @@ -1064,7 +1064,7 @@ static void __init assign_static_memory_11(struct domain *d,
>   #endif
>   
>   /*
> - * When PCI passthrough is available we want to keep the
> + * When HAS_PCI is enabled we want to keep the
>    * "linux,pci-domain" in sync for every host bridge.
>    *
>    * Xen may not have a driver for all the host bridges. So we have
> @@ -1080,7 +1080,7 @@ static int __init handle_linux_pci_domain(struct kernel_info *kinfo,
>       uint16_t segment;
>       int res;
>   
> -    if ( !is_pci_passthrough_enabled() )
> +    if ( !IS_ENABLED(CONFIG_HAS_PCI) )

I don't understand why this wants to be HAS_PCI rather than has_vcpi()? 
This also doesn't seem to be mentioned in the commit message.

>           return 0;
>   
>       if ( !dt_device_type_is_equal(node, "pci") )

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Fri Oct 20 18:20:11 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 18:20:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619929.965819 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtu6Q-0004TP-I5; Fri, 20 Oct 2023 18:20:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619929.965819; Fri, 20 Oct 2023 18:20: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 1qtu6Q-0004TI-FF; Fri, 20 Oct 2023 18:20:06 +0000
Received: by outflank-mailman (input) for mailman id 619929;
 Fri, 20 Oct 2023 18:20: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=NyWa=GC=arm.com=Luca.Fancellu@srs-se1.protection.inumbo.net>)
 id 1qtu6P-0004Jd-5w
 for xen-devel@lists.xenproject.org; Fri, 20 Oct 2023 18:20:05 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur04on062b.outbound.protection.outlook.com
 [2a01:111:f400:fe0e::62b])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 48313b6b-6f75-11ee-98d5-6d05b1d4d9a1;
 Fri, 20 Oct 2023 20:20:03 +0200 (CEST)
Received: from AM5PR0101CA0022.eurprd01.prod.exchangelabs.com
 (2603:10a6:206:16::35) by AS8PR08MB7768.eurprd08.prod.outlook.com
 (2603:10a6:20b:52d::13) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.25; Fri, 20 Oct
 2023 18:19:43 +0000
Received: from AMS0EPF000001B6.eurprd05.prod.outlook.com
 (2603:10a6:206:16:cafe::16) by AM5PR0101CA0022.outlook.office365.com
 (2603:10a6:206:16::35) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.26 via Frontend
 Transport; Fri, 20 Oct 2023 18:19:43 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AMS0EPF000001B6.mail.protection.outlook.com (10.167.16.170) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6907.20 via Frontend Transport; Fri, 20 Oct 2023 18:19:42 +0000
Received: ("Tessian outbound a024c74d4d6d:v215");
 Fri, 20 Oct 2023 18:19:41 +0000
Received: from 561802e7e476.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 DA238116-B19A-486C-BA87-00C7E4749620.1; 
 Fri, 20 Oct 2023 18:11:52 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 561802e7e476.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Fri, 20 Oct 2023 18:11:52 +0000
Received: from AM6PR08MB3749.eurprd08.prod.outlook.com (2603:10a6:20b:8f::22)
 by DU0PR08MB9583.eurprd08.prod.outlook.com (2603:10a6:10:449::7) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.36; Fri, 20 Oct
 2023 18:11:46 +0000
Received: from AM6PR08MB3749.eurprd08.prod.outlook.com
 ([fe80::76e6:a7e1:1592:866]) by AM6PR08MB3749.eurprd08.prod.outlook.com
 ([fe80::76e6:a7e1:1592:866%3]) with mapi id 15.20.6907.025; Fri, 20 Oct 2023
 18:11: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: 48313b6b-6f75-11ee-98d5-6d05b1d4d9a1
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=N31IcyO83zIU9fo5F7yr3/usHEKEMzkmdlk1OF1LdOc=;
 b=ADGVeBfOwCUzbZBv+AKKlJZK/pKOqV5skxw02AV7FmosgajN736JKcgsJaWVevRrQMJJjfiSs6jUDxoBUHtfnWct8k2Sec2Sxt2yEG0G2Yc58DE6+wqvLOA9SL+Hc4bcVlMfToAqRnQmipVmxwHQRxkw/FAeLpqzik6Ns9wb8vE=
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: 2c7ddc77a755f593
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=MVqFXrwtFTH2jcF/OJPOLI7zL/YDYFgCqTGFLH56ptyaDUyYe1spNDipOUV0VloyAPyW7ekmXCn+82RHqf5yM3EOalne35g1j4w+83ipAcK1JFsnzQRpWxRefHrcueD8S52CAMAANWRQaE/C9QUHVF89ht3z0NpbR576/XKmgh7LOXwzrGzPt+Yt0z6vCzFFulUbHSnRjTNOqWFSiriQa01f+hQqMXxaRg9dM5iZDH0LSRtD6njCnsPWYmzL62CkANJSmZKuTRC5EXpP9QKtNPP6fAHIaTcKfFWtK0Ama1Z/EspiHWgR/YRwJmXA9lGg+jTfo1WrnR8CEomhlCRt5A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=N31IcyO83zIU9fo5F7yr3/usHEKEMzkmdlk1OF1LdOc=;
 b=Z1nnj6geTJ9ANc1upg6RW9fy6q0Hk3+HhgfM0I47+rpnZMVUoXT7D6DLfjQTniO0RAo8ep02pbvydU+Q9wHglyDP7vEkpjmTPgWNQe0x1fLSvTG4idzv03SPB4FeUxzd8kr9EFD1fSo0+BJOaXP5SWrhB6p+ttgIdcX1jMVTseWIe6/FieB0FKpUHiy0bM6k8axJo2UFyojSZMUFj1HcAQnxD4xX8PQxKtfaZ0n1gW99MbAkHOTTdJpE+LkOU7+ViQvXd4StVUevQASx6E7LlRqSgCwM3Yl11jaiR9+U0DJy1z8GZufgcnvl/es88f/9N4ROnopHEAKWeGinV8j+VA==
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=N31IcyO83zIU9fo5F7yr3/usHEKEMzkmdlk1OF1LdOc=;
 b=ADGVeBfOwCUzbZBv+AKKlJZK/pKOqV5skxw02AV7FmosgajN736JKcgsJaWVevRrQMJJjfiSs6jUDxoBUHtfnWct8k2Sec2Sxt2yEG0G2Yc58DE6+wqvLOA9SL+Hc4bcVlMfToAqRnQmipVmxwHQRxkw/FAeLpqzik6Ns9wb8vE=
From: Luca Fancellu <Luca.Fancellu@arm.com>
To: Stefano Stabellini <sstabellini@kernel.org>
CC: Nicola Vetrini <nicola.vetrini@bugseng.com>, Jan Beulich
	<jbeulich@suse.com>, "michal.orzel@amd.com" <michal.orzel@amd.com>,
	"xenia.ragiadakou@amd.com" <xenia.ragiadakou@amd.com>,
	"ayan.kumar.halder@amd.com" <ayan.kumar.halder@amd.com>,
	"consulting@bugseng.com" <consulting@bugseng.com>,
	"andrew.cooper3@citrix.com" <andrew.cooper3@citrix.com>,
	"roger.pau@citrix.com" <roger.pau@citrix.com>, Simone Ballarin
	<simone.ballarin@bugseng.com>, Doug Goldstein <cardoe@cardoe.com>, George
 Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>, Wei Liu
	<wl@xen.org>, "xen-devel@lists.xenproject.org"
	<xen-devel@lists.xenproject.org>
Subject: Re: [XEN PATCH][for-next][for-4.19 v2 1/8] xen/include: add macro
 LOWEST_BIT
Thread-Topic: [XEN PATCH][for-next][for-4.19 v2 1/8] xen/include: add macro
 LOWEST_BIT
Thread-Index: AQHaAsacg3neJ95wsUGZXLbST/LDOrBSqNIAgABSL4CAAAEqgA==
Date: Fri, 20 Oct 2023 18:11:46 +0000
Message-ID: <51E4585C-FD3D-4DF3-861F-A530138642AA@arm.com>
References: <cover.1697123806.git.nicola.vetrini@bugseng.com>
 <bb0ba44f8a3944c22a1c7cf19196c7060e8adb4b.1697123806.git.nicola.vetrini@bugseng.com>
 <93408661-721b-c4b3-d504-e65142bbdaea@suse.com>
 <42ee4de54f6d9bd80fb50db3545cbaf4@bugseng.com>
 <08286993-6a83-b928-6398-e129397927a0@suse.com>
 <9002a10f872fccc5217faab2f20ad5ba@bugseng.com>
 <alpine.DEB.2.22.394.2310191253440.2099202@ubuntu-linux-20-04-desktop>
 <93F0B739-367C-4DFA-9F53-0C2C58FCD756@arm.com>
 <alpine.DEB.2.22.394.2310201107140.2356865@ubuntu-linux-20-04-desktop>
In-Reply-To:
 <alpine.DEB.2.22.394.2310201107140.2356865@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_|DU0PR08MB9583:EE_|AMS0EPF000001B6:EE_|AS8PR08MB7768:EE_
X-MS-Office365-Filtering-Correlation-Id: 6fa1265d-1f06-40e6-6c90-08dbd1992177
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:
 FR8N1ZR/DGwAPKzowuLR0UzE+Z/Z0Jkc1GOglSIH3zTeWUloZlpnLjbU9wBkPGDuBxAcH9d2l+jQoKp6hQx9EL6IeYZCpKkSfNxHEjE9f/HgCYx5YnuBNlEXrsI7IR8CK7lY9OKc0lmcDQ7v78wKgm0xzDHSe7qVNMueN+pTK9C7LtnOoHalZo0YuoIE31iOdveKYesJDoGqfrpUq4lUgkB4zX/AD8lqDr1EJOKvSU4WTfRrlM6TvJZbA0P7uGBVke7l/zyCpaI+4bB+PS7aZfasIhVwybJ4Bcs4mDd76PlYvS1AI/T0jj6Sw8AkNWHnMA1y8V8HI1wBT4KgQyzWTqkT4OPbWA4LikwbMT6OWNrNN4g/weOL5iUyV8la8FkN92AAqQgMubIJJTrUG628x8LRf9lFww/h23eZ8Qwj9//Ued8ozLiHbmijeNFtGYJZ7fHkpRTufqdAbtCec5jsWxwv0jbBw75baBF0kiHSj7rxDk0b4htBrHTIDLZ/7QCzoAQBSBOM3IfeedYwgV4/KRn+cYwc9KjO8CPEhBj6prYWQZoxOve06+DUBM5O6Bou0S4oEBVA3W3h1Kbscm1qEeSAx6RJxi8l2Amo56c2wyc/mUyPNDqfeT7O8lCkBdjHI4w7asgDgBWtiDgtDi93KQ==
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)(136003)(366004)(346002)(376002)(396003)(230922051799003)(451199024)(64100799003)(186009)(1800799009)(66946007)(26005)(2616005)(6506007)(8936002)(91956017)(41300700001)(53546011)(5660300002)(8676002)(4326008)(2906002)(7416002)(6486002)(478600001)(54906003)(6916009)(66556008)(66476007)(122000001)(76116006)(316002)(64756008)(38100700002)(66446008)(71200400001)(86362001)(36756003)(33656002)(38070700009)(6512007)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <97FBD7F2B8BE1B45A5FEAFBDB22AE171@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR08MB9583
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:
 AMS0EPF000001B6.eurprd05.prod.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	994a74c4-86aa-4d83-79b1-08dbd19805e1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	x05c68FIV5VgUsgT8wVl6fxq/fg8tCe3KiWGI4JnhpgR5IGB7qKEbBkm3bCx86JrzUogROvu7JiIzLssh8AiiMYSLGdgH2V/q130c8g+2bzwZSyTFeLRbJZ/g6TB2glBTyb3VO4PF9FU+IARbC9aIp+ZDBPU6ZXjv0HfO75X2oCq3PO+qcHqgJvBshIyfM0tByKQCa/soXjQ+TichGy4KrFwKRJvBf1C8cxOmERuVTvMGbNTenXV7ecp8OVGWS2i2o63efREDgU4MMdzwK1hfgk1D8CiL/DFUDa10EDbjwQauDUXXJRKykgGlXIHWQRluzPKM3t5o4tBgFb1HKw7nInR9bcQY00pLL6as9XD9ZXNhW1MZ9qdj+oL1vN2DxmAKkyjTQIhry7/c25y3MgEt+EjA19awaYusMGjQTOcEwdHTDCZ8ax+SckKWo4QhMqdfUItEvKLMULKu0jb/wo/wQuULFZO6zNV/uX2Ok7UTxBYWfeeJ8mSS4nz/SnKcfILIPDP/0Mmn791u345xDTr8gDk5aOWYm89gkL3SAy4/OYALuXtQ0uhxPRijfR0uVzWWVZ6U6DryBGAihEXefDBaNoli4fC32kplPs/fwS2aVddJmCoV+KgoMKjCCpVdRPwDrtdCa7NXQrQJ/EYl21BEE4mg0aPRKbLJ5EZw2ycaqjzlf2IO69H9iXM4652sL6lYieKPJlf1USXbsMtcKuC3Atm0YuRB2Tz1EUyd2XKWPllORDw+kV6PpaWy1ZjXrn/
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)(136003)(396003)(230922051799003)(451199024)(82310400011)(186009)(1800799009)(64100799003)(40470700004)(36840700001)(46966006)(2906002)(40460700003)(40480700001)(70586007)(70206006)(8676002)(54906003)(316002)(8936002)(33656002)(478600001)(6486002)(4326008)(5660300002)(41300700001)(6862004)(86362001)(6506007)(36756003)(47076005)(36860700001)(356005)(336012)(2616005)(53546011)(6512007)(82740400003)(26005)(81166007);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Oct 2023 18:19:42.3952
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 6fa1265d-1f06-40e6-6c90-08dbd1992177
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:
	AMS0EPF000001B6.eurprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB7768

DQoNCj4gT24gMjAgT2N0IDIwMjMsIGF0IDE5OjA3LCBTdGVmYW5vIFN0YWJlbGxpbmkgPHNzdGFi
ZWxsaW5pQGtlcm5lbC5vcmc+IHdyb3RlOg0KPiANCj4gT24gRnJpLCAyMCBPY3QgMjAyMywgTHVj
YSBGYW5jZWxsdSB3cm90ZToNCj4+PiBPbiAxOSBPY3QgMjAyMywgYXQgMjA6NTgsIFN0ZWZhbm8g
U3RhYmVsbGluaSA8c3N0YWJlbGxpbmlAa2VybmVsLm9yZz4gd3JvdGU6DQo+Pj4gK0x1Y2ENCj4+
PiANCj4+Pj4+Pj4+IC0tLSBhL3hlbi9pbmNsdWRlL3hlbi9tYWNyb3MuaA0KPj4+Pj4+Pj4gKysr
IGIveGVuL2luY2x1ZGUveGVuL21hY3Jvcy5oDQo+Pj4+Pj4+PiBAQCAtOCw4ICs4LDEwIEBADQo+
Pj4+Pj4+PiAjZGVmaW5lIERJVl9ST1VORChuLCBkKSAoKChuKSArIChkKSAvIDIpIC8gKGQpKQ0K
Pj4+Pj4+Pj4gI2RlZmluZSBESVZfUk9VTkRfVVAobiwgZCkgKCgobikgKyAoZCkgLSAxKSAvIChk
KSkNCj4+Pj4+Pj4+IA0KPj4+Pj4+Pj4gLSNkZWZpbmUgTUFTS19FWFRSKHYsIG0pICgoKHYpICYg
KG0pKSAvICgobSkgJiAtKG0pKSkNCj4+Pj4+Pj4+IC0jZGVmaW5lIE1BU0tfSU5TUih2LCBtKSAo
KCh2KSAqICgobSkgJiAtKG0pKSkgJiAobSkpDQo+Pj4+Pj4+IA0KPj4+Pj4+PiBhIFNBRi08bj4t
c2FmZSBjb21tZW50IGhlcmU/DQo+Pj4+Pj4+IA0KPj4+Pj4+IA0KPj4+Pj4+IE9uZSByZWFzb24g
aXMgdGhhdCBub3cgdGhhdCB2aW9sYXRpb25zIG9ubHkgYmVsb25naW5nIHRvIHRvb2wNCj4+Pj4+
PiBjb25maWd1cmF0aW9ucw0KPj4+Pj4+IGFuZCBzaW1pbGFyIGFyZSBkb2N1bWVudGVkIGluIGRv
Y3MvbWlzcmEvZGV2aWF0aW9ucy5yc3QgKGNvbW1pdHRlZCBpbg0KPj4+Pj4+IFN0ZWZhbm8ncw0K
Pj4+Pj4+IGJyYW5jaCBmb3ItNC4xOSBbMV0pLg0KPj4+Pj4gDQo+Pj4+PiBCdXQgdG9vbCBjb25m
aWd1cmF0aW9uIG1lYW5zIGV2ZXJ5IGFuYWx5c2lzIHRvb2wgbmVlZHMgY29uZmlndXJpbmcNCj4+
Pj4+IHNlcGFyYXRlbHkuIFRoYXQncyB3aHkgdGhlIGNvbW1lbnQgdGFnZ2luZyBzY2hlbWUgd2Fz
IGRlY2lkZWQgdG8gYmUNCj4+Pj4+IHByZWZlcnJlZCwgaWlyYy4NCj4+Pj4+IA0KPj4+Pj4+IEFs
c28sIHRoZXJlIHdlcmUgZGlzYWdyZWVtZW50cyBvbiB0aGUgU0FGIG5hbWluZw0KPj4+Pj4+IHNj
aGVtZSwgYW5kDQo+Pj4+Pj4gcGF0Y2hlcyBsaWtlIHRob3NlIHdvdWxkIG5vdCBiZSBhY2NlcHRl
ZCBhdCB0aGUgbW9tZW50Lg0KPj4+Pj4gDQo+Pj4+PiBXZWxsLCB0aGF0IG5lZWRzIHJlc29sdmlu
Zy4gVGhlIG5hbWluZyB0aGVyZSBzaG91bGRuJ3QgbGVhZCB0byBwYXRjaGVzDQo+Pj4+PiBiZWlu
ZyBhY2NlcHRlZCB0aGF0IGxhdGVyIG1heSBuZWVkIHJlZG9pbmcuDQo+Pj4+PiANCj4+Pj4+IEph
bg0KPj4+PiANCj4+Pj4gV2hpbGUgdGhpcyBpcyB0cnVlLCBpbiB0aGlzIGNhc2UgSSdtIG5vdCB3
aWxsaW5nIHRvIGRldmlhdGUgd2l0aCBhIFNBRiwgZ2l2ZW4NCj4+Pj4gdGhhdA0KPj4+PiBzb21l
IEVDTEFJUi1zcGVjaWZpYyBjb25maWd1cmF0aW9uIHdvdWxkIGJlIG5lZWRlZCBhbnl3YXlzLCBn
aXZlbiB0aGF0IEknbQ0KPj4+PiBkZXZpYXRpbmcgYSBtYWNybyBkZWZpbml0aW9uLCByYXRoZXIg
dGhhbiB0aGUgbGluZSB3aGVyZSBpdCdzIGFjdHVhbGx5IHVzZWQNCj4+Pj4gKGFuZCBtYXliZSBv
dGhlciB0b29scyB3b3VsZCBuZWVkDQo+Pj4+IHRoYXQgYXMgd2VsbCkuDQo+Pj4gDQo+Pj4gRGlk
IEkgZ2V0IGl0IHJpZ2h0IHRoYXQgdGhlIHByb2JsZW0gd2l0aCB1c2luZyBTQUYgaW4gdGhpcyBj
YXNlIGlzIHRoYXQNCj4+PiBpdCB3b3VsZG4ndCBiZSBzdWZmaWNpZW50IHRvIGFkZCBhIFNBRiBj
b21tZW50IG9uIHRvcCBvZiB0aGUgTUFDUk8NCj4+PiBkZWZpbml0aW9uLCBidXQgd2Ugd291bGQg
bmVlZCBhIFNBRiBjb21tZW50IG9uIHRvcCBvZiBldmVyeSBNQUNSTw0KPj4+IGludm9jYXRpb24/
DQo+Pj4gDQo+Pj4gSWYgc28sIHRoZW4gbm90IGp1c3QgZm9yIHRoaXMgTUFDUk8gYnV0IGluIGdl
bmVyYWwgYmFzaWNhbGx5IHdlIGhhdmUgdG8NCj4+PiB1c2UgZGV2aWF0aW9ucy5yc3QuDQo+Pj4g
DQo+Pj4gTHVjYSwgZG8geW91IGtub3cgd2hhdCB3b3VsZCBiZSB0aGUgYmVoYXZpb3IgZm9yIGNw
cGNoZWNrIGFuZC9vcg0KPj4+IENvdmVyaXR5PyBJIGltYWdpbmUgaXQgd2lsbCBiZSB0aGUgc2Ft
ZSBhbmQgdGhleSB3b3VsZCBhbHNvIG5lZWQgYQ0KPj4+IGRldmlhdGlvbiBhdCBldmVyeSBNQUNS
TyBpbnZvY2F0aW9uLCBub3QganVzdCB0aGUgZGVmaW5pdGlvbj8NCj4+IA0KPj4gU2VlbXMgdGhh
dCBjcHBjaGVjayByZXBvcnRzIGF0IHRoZSBtYWNybyBkZWZpbml0aW9uLCBpbnN0ZWFkIENvdmVy
aXR5IHJlcG9ydHMNCj4+IGF0IHRoZSBtYWNybyBpbnZvY2F0aW9uLg0KPiANCj4gRG9lcyB0aGF0
IG1lYW4gdGhhdCBhIC8qIFNBRi14eC1zYWZlICovIGNvbW1lbnQgd291bGQgd29yayBhdCB0aGUg
TUFDUk8NCj4gZGVmaW5pdGlvbiBmb3IgY3BwY2hlY2sgYnV0IG5vdCBmb3IgQ292ZXJpdHk/DQo+
IA0KPiBJZiBzbywgdGhlbiBJIHdvbmRlciBpZiBjcHBjaGVjaydzIGJlaGF2aW9yIGlzIHdoYXQg
d2Ugd291bGQgbGlrZSB0bw0KPiBoYXZlLCBidXQgZnJvbSBhIGNvZGUgY29tcGxpYW5jZSBwb2lu
dCBvZiB2aWV3IGl0IGlzIHRoZSBsZWFzdCByZWxpYWJsZSwNCj4gc28gdGhhdCdzIHRoZSByZWFz
b24gd2h5IGJvdGggQ292ZXJpdHkgYW5kIEVDTEFJUiBkb24ndCBpbXBsZW1lbnQgaXQuIEluDQo+
IHRlcm1zIG9mIGNvcnJlY3RuZXNzIG9mIHRoZSBpbXBsZW1lbnRhdGlvbiB3ZSBrbm93IGNwcGNo
ZWNrIGlzIGxhZ2dpbmcgYQ0KPiBiaXQgYmVoaW5kLi4uDQoNClllcywgSeKAmW0gc3RhcnRpbmcg
dG8gdGhpbmsgdGhhdCBpZiB3ZSB3YW50IHRvIGRldmlhdGUgYSBsYXJnZSBudW1iZXIgb2YgbWFj
cm8gdXNhZ2UsDQpXZSBzaG91bGQgY29tZSB1cCB3aXRoIHNvbWV0aGluZyBsaWtlIGRlY2xhcmlu
ZyB0aGUgbWFjcm8gc29tZXdoZXJlIGFuZCBhZGRpbmcNCnRoZSBpbi1jb2RlIGNvbW1lbnQgYXV0
b21hdGljYWxseSBieSB0aGUgc2NyaXB0IGJlZm9yZSB0aGUgYW5hbHlzaXMuLi4NCkJ1dCB3ZSBu
ZWVkIHRvIHNlZSBob3cgZmVhc2libGUgaXQgaXMuDQoNCg0K


From xen-devel-bounces@lists.xenproject.org Fri Oct 20 18:49:11 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 18:49:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619936.965830 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtuYN-0003zt-SF; Fri, 20 Oct 2023 18:48:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619936.965830; Fri, 20 Oct 2023 18: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 1qtuYN-0003zm-PA; Fri, 20 Oct 2023 18:48:59 +0000
Received: by outflank-mailman (input) for mailman id 619936;
 Fri, 20 Oct 2023 18:48: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 1qtuYM-0003zf-A8
 for xen-devel@lists.xenproject.org; Fri, 20 Oct 2023 18:48: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 1qtuYL-0002mH-Ud; Fri, 20 Oct 2023 18:48:57 +0000
Received: from [54.239.6.188] (helo=[192.168.205.12])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qtuYL-0007mS-ND; Fri, 20 Oct 2023 18:48: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=BQVRZ4fNAz0vCSTq9xZ9ylTGV0MPdHcNLIKBab3M37Y=; b=GpUtMUxU2oU8nOyp5Cd19HnGyv
	aaLssJcx5pH7N2vUIGpx9FjeSgcaE9zRtSKet/tE0pB4R2/lNFcXkxv0Kf3m14roaQrBST71kTeuN
	3DSoqqnf8X649QZJoYqECrBHwqdSPTF2MLEZvncxmOCiDT0aO+5oV/7i2W2qVYTHa85o=;
Message-ID: <31cdf500-959d-42cb-a1ce-bbee7cb5e251@xen.org>
Date: Fri, 20 Oct 2023 19:48:55 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v5 1/9] xen/arm: don't pass iommu properties to hwdom for
 iommu-map
Content-Language: en-GB
To: Stewart Hildebrand <stewart.hildebrand@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>,
 Michal Orzel <michal.orzel@amd.com>
References: <20231004145604.1085358-1-stewart.hildebrand@amd.com>
 <20231004145604.1085358-2-stewart.hildebrand@amd.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <20231004145604.1085358-2-stewart.hildebrand@amd.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi,

On 04/10/2023 15:55, Stewart Hildebrand wrote:
> A device tree node for a PCIe root controller may have an iommu-map property [1]
> with a phandle reference to the SMMU node, but not necessarily an iommus
> property. In this case, we want to treat it the same as we currently handle
> devices with an iommus property: don't pass the iommu related properties to
> hwdom.
> 
> [1] https://www.kernel.org/doc/Documentation/devicetree/bindings/pci/pci-iommu.txt
> 
> Reported-by: Michal Orzel <michal.orzel@amd.com>
> Signed-off-by: Stewart Hildebrand <stewart.hildebrand@amd.com>

Acked-by: Julien Grall <jgrall@amazon.com>

> ---
> v4->v5:
> * new patch
> ---
>   xen/arch/arm/domain_build.c | 2 ++
>   1 file changed, 2 insertions(+)
> 
> diff --git a/xen/arch/arm/domain_build.c b/xen/arch/arm/domain_build.c
> index 24c9019cc43c..7da254709d17 100644
> --- a/xen/arch/arm/domain_build.c
> +++ b/xen/arch/arm/domain_build.c
> @@ -1135,6 +1135,8 @@ static int __init write_properties(struct domain *d, struct kernel_info *kinfo,
>        * should be skipped.
>        */
>       iommu_node = dt_parse_phandle(node, "iommus", 0);
> +    if ( !iommu_node )
> +        iommu_node = dt_parse_phandle(node, "iommu-map", 1);
>       if ( iommu_node && device_get_class(iommu_node) != DEVICE_IOMMU )
>           iommu_node = NULL;

I was looking at the history to understand why we decided to not always 
hide the properties.

AFAICT, this was mainly to avoid removing the master properties but 
keeping the IOMMU nodes in the DT. However, in reality, I don't expect 
the IOMMU to function properly in dom0 (in particular when grants are 
used for DMA).

Looking at the bindings, it turns out that all the IOMMU using the 
generic bindigns would contain the property #iommu-cells. So we could 
remove any device with such property.

This would not work for IOMMU bindings not using the generic one. AFAIK, 
this is only legacy SMMUv{1,2} binding so we could filter them by 
compatible.

With that we would unconditionally remove the properties iommu-* and 
avoid increasing the complexity.

Any thoughts?

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Fri Oct 20 18:49:11 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 18:49:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.619963.965839 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtuYZ-0004Mx-2P; Fri, 20 Oct 2023 18:49:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 619963.965839; Fri, 20 Oct 2023 18: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 1qtuYY-0004Mq-W5; Fri, 20 Oct 2023 18:49:10 +0000
Received: by outflank-mailman (input) for mailman id 619963;
 Fri, 20 Oct 2023 18:49: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 1qtuYX-0004MG-4R; Fri, 20 Oct 2023 18:49: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 1qtuYX-0002n0-3V; Fri, 20 Oct 2023 18:49: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 1qtuYW-0007X6-P2; Fri, 20 Oct 2023 18:49:08 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qtuYW-0000qc-OW; Fri, 20 Oct 2023 18:49: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=lbZ7b94M5wVZltb/msPCBrVLXgYoH6jimPQY8jUuiIk=; b=HNn/JY4AFuiIiGgjLwCf8mSA+z
	dBXfgpuLp1YiDqXKTmYVmpGhruh8Z+iTWQU0b+Bfj3wubE4yzAzqJpGtD7b14PJHoSac7gQxIeG0u
	YKv0Tlnfzs1lEY4lhcBtn+lUPRJsQ8F+vl8guHOR8uXnHEig/4Br1LbPQSL5gsZif8bY=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183445-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 183445: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=c591395f4ab5359c14e783481473685cf432fe75
X-Osstest-Versions-That:
    ovmf=bed477d9cf727c1061f1203c5cd61fe1af2e9c19
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 20 Oct 2023 18:49:08 +0000

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

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

Last test of basis   183439  2023-10-20 03:42:29 Z    0 days
Testing same since   183445  2023-10-20 13:10:42 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
  John Chew <yuinyee.chew@starfivetech.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
   bed477d9cf..c591395f4a  c591395f4ab5359c14e783481473685cf432fe75 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Fri Oct 20 20:27:20 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 20:27:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.620434.965851 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtw5J-0005jq-3l; Fri, 20 Oct 2023 20:27:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 620434.965851; Fri, 20 Oct 2023 20:27: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 1qtw5I-0005jj-Vb; Fri, 20 Oct 2023 20:27:04 +0000
Received: by outflank-mailman (input) for mailman id 620434;
 Fri, 20 Oct 2023 20: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=d6HR=GC=citrix.com=prvs=650384eb3=Andrew.Cooper3@srs-se1.protection.inumbo.net>)
 id 1qtw5H-0005jd-Lv
 for xen-devel@lists.xenproject.org; Fri, 20 Oct 2023 20:27:03 +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 03e55955-6f87-11ee-9b0e-b553b5be7939;
 Fri, 20 Oct 2023 22:26: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: 03e55955-6f87-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1697833619;
  h=from:to:cc:subject:date:message-id:mime-version:
   content-transfer-encoding;
  bh=dpNHhf1PLHrfMvYwmsb5wJU3HaHS1PzXmQZrVIsAsAg=;
  b=Gtrj6JB2ez7EP2vdgZDQ3Fnj4oOf5nfwdi17CY/gxn6R56lDSAEka/63
   7ggUMR+u46+IRbMZQRSPCRVKHHOvbwU6DSEZGUK2wfvmZqAskGZqnCyc2
   pjF1gUTeOJ4Qdp5FoV4ELIe2h/jjhEdOrcsyLx7xC2fkTckZM+oBhE2e7
   4=;
X-CSE-ConnectionGUID: VFknDW17QTKBnFx1+urDdQ==
X-CSE-MsgGUID: AomJxvRuQtuPSynYheseFA==
Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
X-SBRS: 5.1
X-MesageID: 128996198
X-Ironport-Server: esa4.hc3370-68.iphmx.com
X-Remote-IP: 162.221.159.70
X-Policy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:YJvAFK+hHP6ulIQ8kfnhDrUDqH6TJUtcMsCJ2f8bNWPcYEJGY0x3x
 jMYCjjSP/7fM2byeY8nOtiy8k5U6J+AzIVjQQdsq308E34SpcT7XtnIdU2Y0wF+jCHgZBk+s
 5hBMImowOQcFCK0SsKFa+C5xZVE/fjVAOK6UKidYnwZqTZMEE8JkQhkl/MynrlmiN24BxLlk
 d7pqojUNUTNNwRcawr40Ird7ks01BjOkGlA5AdnPaoT5Aa2e0Q9V/rzG4ngdxMUfaEMdgKKb
 76r5K20+Grf4yAsBruN+losWhRXKlJ6FVHmZkt+A8BOsDAbzsAB+v9T2M4nQVVWk120c+VZk
 72hg3ASpTABZcUgkMxFO/VR/roX0aduoNcrKlDn2SCfItGvn9IBDJyCAWlvVbD09NqbDklw2
 /8eBA9UMSm/pMiw7qLiCfR2qsgaeZyD0IM34hmMzBncBPciB5vCX7/L9ZlT2zJYasJmRKiEI
 ZBDMHw2MUWGPEUn1lQ/UfrSmM+BgHXlfiIeg1WSvactuEDYzRBr0airO93QEjCPbZwPzhfJ+
 DuXrwwVBDkzM9m92SS/70uwm9f0jCXKWI8JGZORo6sCbFq7mTVIVUx+uUGAiem0jAuyVsxSL
 2QQ+zEytu4i+UqzVN7/Uhak5nmesXY0efBdDuk74wGl0bfP7kCSAW1sZiVadNUsucsyRDor/
 lyEhdXkAXpoqrL9YW2Z3qeZq3W1Iyd9BW0fYS4JSyMV7t+lp5s85i8jVf46TvTz1IesX2itk
 nbV9EDSmon/k+Y1+aa90W+e3AuQhbLPYB5spRjNcm6cu1YRiJGeW2C41bTKxa8efdnDEwXb5
 ihsd9u2tr5UUM3T/MCZaKBdROj2uazt3Cj02wYHInU3y9i6F5dPl6ho5zRmLUFueuwJcDTpC
 KM4kVgKvMENVJdGgLUeXm5QNyjJ5fK6fTgdfqqIBueim7AoHON9wAlgZFSLw0fmm1U2nKc0N
 P+zKJj9UiZAV/o6lmvqH4/xNIPHIAhklAs/oriqpylLLJLEPCLFIVv7GAfmgh8FAFOs/1yOr
 oc32zqiwBRDSuzuChTqHXooBQlSdxATXMmuw+QOL7LrH+aTMDx4YxMn6eh6ININcmU8vrqgw
 0xRrWcCkAGm2SOddlTTAp2hAZu2NatCQbsAFXREFT6VN7ILOO5DMI93m0MLQIQa
IronPort-HdrOrdr: A9a23:jArVZqvB8mqv6MBH1+3RtMxP7skDetV00zEX/kB9WHVpmszxra
 6TdZMgpHjJYVcqKRUdcL+7WJVoLUmxyXcX2/h1AV7BZniEhILAFugLhuGO/9SJIVyZygc378
 ZdmsZFZ+EYdWIK7/rH3A==
X-Talos-CUID: 9a23:3By55WG3/CsiP353qmJZ2k0SNv98LUTh713WDV/hSntzZLGsHAo=
X-Talos-MUID: 9a23:8zqruQkFlF/fqDXFO12CdnpLM8JK87qUFXkRjK09qs+1NSFrNhm02WE=
X-IronPort-AV: E=Sophos;i="6.03,239,1694750400"; 
   d="scan'208";a="128996198"
From: Andrew Cooper <andrew.cooper3@citrix.com>
To: Xen-devel <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, George Dunlap
	<George.Dunlap@eu.citrix.com>, Jan Beulich <JBeulich@suse.com>, "Stefano
 Stabellini" <sstabellini@kernel.org>, Wei Liu <wl@xen.org>, Julien Grall
	<julien@xen.org>, =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>
Subject: [PATCH for-4.19] xen/xmalloc: XMEM_POOL_POISON improvements
Date: Fri, 20 Oct 2023 21:26:49 +0100
Message-ID: <20231020202649.1802700-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

When in use, the spew:

  (XEN) Assertion '!memchr_inv(b->ptr.buffer + MIN_BLOCK_SIZE, POISON_BYTE, (b->size & BLOCK_SIZE_MASK) - MIN_BLOCK_SIZE)' failed at common/xmalloc_tlsf.c:246

is unweidly and meaningless to non-Xen developers.  Therefore:

 * Switch to IS_ENABLED().  There's no need for full #ifdef-ary.
 * Pull memchr_inv() out into the if(), and provide a better error message.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
---
CC: George Dunlap <George.Dunlap@eu.citrix.com>
CC: Jan Beulich <JBeulich@suse.com>
CC: Stefano Stabellini <sstabellini@kernel.org>
CC: Wei Liu <wl@xen.org>
CC: Julien Grall <julien@xen.org>
CC: Roger Pau Monné <roger.pau@citrix.com>

Observations from the debugging of:
  https://github.com/Dasharo/dasharo-issues/issues/488

There's a further bug.  XMEM_POOL_POISON can be enabled in release builds,
where the ASSERT() gets dropped.

However, upping to a BUG() can't provide any helpful message out to the user.

I tried modifying BUG() to take an optional message, but xen/bug.h needs
untangling substantially before that will work, and I don't have time right now.
---
 xen/common/xmalloc_tlsf.c | 15 +++++++--------
 1 file changed, 7 insertions(+), 8 deletions(-)

diff --git a/xen/common/xmalloc_tlsf.c b/xen/common/xmalloc_tlsf.c
index 349b31cb4cc1..13305cd87c2f 100644
--- a/xen/common/xmalloc_tlsf.c
+++ b/xen/common/xmalloc_tlsf.c
@@ -249,11 +249,11 @@ static inline void EXTRACT_BLOCK(struct bhdr *b, struct xmem_pool *p, int fl,
     }
     b->ptr.free_ptr = (struct free_ptr) {NULL, NULL};
 
-#ifdef CONFIG_XMEM_POOL_POISON
-    if ( (b->size & BLOCK_SIZE_MASK) > MIN_BLOCK_SIZE )
-        ASSERT(!memchr_inv(b->ptr.buffer + MIN_BLOCK_SIZE, POISON_BYTE,
-                           (b->size & BLOCK_SIZE_MASK) - MIN_BLOCK_SIZE));
-#endif /* CONFIG_XMEM_POOL_POISON */
+    if ( IS_ENABLED(CONFIG_XMEM_POOL_POISON) &&
+         (b->size & BLOCK_SIZE_MASK) > MIN_BLOCK_SIZE &&
+         memchr_inv(b->ptr.buffer + MIN_BLOCK_SIZE, POISON_BYTE,
+                    (b->size & BLOCK_SIZE_MASK) - MIN_BLOCK_SIZE) )
+        ASSERT(!"XMEM Pool corruption found");
 }
 
 /**
@@ -261,11 +261,10 @@ static inline void EXTRACT_BLOCK(struct bhdr *b, struct xmem_pool *p, int fl,
  */
 static inline void INSERT_BLOCK(struct bhdr *b, struct xmem_pool *p, int fl, int sl)
 {
-#ifdef CONFIG_XMEM_POOL_POISON
-    if ( (b->size & BLOCK_SIZE_MASK) > MIN_BLOCK_SIZE )
+    if ( IS_ENABLED(CONFIG_XMEM_POOL_POISON) &&
+         (b->size & BLOCK_SIZE_MASK) > MIN_BLOCK_SIZE )
         memset(b->ptr.buffer + MIN_BLOCK_SIZE, POISON_BYTE,
                (b->size & BLOCK_SIZE_MASK) - MIN_BLOCK_SIZE);
-#endif /* CONFIG_XMEM_POOL_POISON */
 
     b->ptr.free_ptr = (struct free_ptr) {NULL, p->matrix[fl][sl]};
     if ( p->matrix[fl][sl] )
-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Fri Oct 20 22:40:17 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 22:40:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.620438.965860 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qty9y-0005AP-De; Fri, 20 Oct 2023 22:40:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 620438.965860; Fri, 20 Oct 2023 22:40: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 1qty9y-00059n-AJ; Fri, 20 Oct 2023 22:40:02 +0000
Received: by outflank-mailman (input) for mailman id 620438;
 Fri, 20 Oct 2023 22: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 1qty9x-00051l-Kc; Fri, 20 Oct 2023 22: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 1qty9x-0000GP-Gl; Fri, 20 Oct 2023 22: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 1qty9x-0007qH-0s; Fri, 20 Oct 2023 22:40:01 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qty9x-0006cc-0C; Fri, 20 Oct 2023 22:40: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=99VKbrvtSdyVes3TTf3SUeNtYQjVFjKdBB+7UI5Qymg=; b=PfNK8VEiwunBVINyVB4Zspdb3e
	8POs/7ADiuSbX/HoccHP9RfTk7z1tYQNeSEgvZOPzMSLgvgcDcdLeBEZZ5HxfQHvY+x1XIBc1hhO+
	XeMb9DPhPAY+D9xRjoLX+pQL+cZSRiF5OzpJja8+ilV3hLKTD3lDA2IRLJSzF6rj4DFc=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183444-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 183444: tolerable FAIL - PUSHED
X-Osstest-Failures:
    xen-unstable:test-amd64-i386-pair:xen-install/src_host:fail:heisenbug
    xen-unstable:test-amd64-i386-libvirt-raw: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-i386-migrupgrade:xen-install/src_host: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-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-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-qemut-win7-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-i386-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-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:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1: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:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1: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-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-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-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-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt: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-amd64-i386-libvirt-raw: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-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:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=474fc7d3c6525e209bd2fe1e6ef0bbb34de86bb4
X-Osstest-Versions-That:
    xen=698b0f5031c6083401234a9b9415175cc5855a0a
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 20 Oct 2023 22:40:01 +0000

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

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-amd64-i386-pair     10 xen-install/src_host fail in 183438 pass in 183444
 test-amd64-i386-libvirt-raw   7 xen-install      fail in 183438 pass in 183444
 test-armhf-armhf-xl-credit2  18 guest-start/debian.repeat  fail pass in 183438

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail in 183438 blocked in 183430
 test-amd64-i386-migrupgrade 10 xen-install/src_host fail in 183438 like 183430
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183430
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183430
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 183430
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183430
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183430
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 183430
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183430
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183430
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183430
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 183430
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 183430
 test-amd64-amd64-xl-qemuu-win7-amd64 12 windows-install       fail like 183430
 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-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-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  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          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-amd64-amd64-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-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-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-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-amd64-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-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-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-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          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass

version targeted for testing:
 xen                  474fc7d3c6525e209bd2fe1e6ef0bbb34de86bb4
baseline version:
 xen                  698b0f5031c6083401234a9b9415175cc5855a0a

Last test of basis   183430  2023-10-19 14:38:43 Z    1 days
Testing same since   183438  2023-10-20 01:08:42 Z    0 days    2 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Jan Beulich <jbeulich@suse.com>
  Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
  Roger Pau Monne <roger.pau@citrix.com>
  Roger Pau Monné <roger.pau@citrix.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                                  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                                 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
   698b0f5031..474fc7d3c6  474fc7d3c6525e209bd2fe1e6ef0bbb34de86bb4 -> master


From xen-devel-bounces@lists.xenproject.org Fri Oct 20 23:27:06 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 20 Oct 2023 23:27:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.620460.965901 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qtytO-0002m0-8B; Fri, 20 Oct 2023 23:26:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 620460.965901; Fri, 20 Oct 2023 23: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 1qtytO-0002lt-5X; Fri, 20 Oct 2023 23:26:58 +0000
Received: by outflank-mailman (input) for mailman id 620460;
 Fri, 20 Oct 2023 23:26: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=TBDO=GC=amd.com=stefano.stabellini@srs-se1.protection.inumbo.net>)
 id 1qtytM-0002ln-Je
 for xen-devel@lists.xenproject.org; Fri, 20 Oct 2023 23:26:56 +0000
Received: from NAM10-MW2-obe.outbound.protection.outlook.com
 (mail-mw2nam10on2062e.outbound.protection.outlook.com
 [2a01:111:f400:7e89::62e])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 24ece8aa-6fa0-11ee-9b0e-b553b5be7939;
 Sat, 21 Oct 2023 01:26:52 +0200 (CEST)
Received: from MN2PR05CA0062.namprd05.prod.outlook.com (2603:10b6:208:236::31)
 by SA0PR12MB4495.namprd12.prod.outlook.com (2603:10b6:806:70::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.26; Fri, 20 Oct
 2023 23:26:45 +0000
Received: from MN1PEPF0000F0E0.namprd04.prod.outlook.com
 (2603:10b6:208:236:cafe::dc) by MN2PR05CA0062.outlook.office365.com
 (2603:10b6:208:236::31) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.8 via Frontend
 Transport; Fri, 20 Oct 2023 23:26:45 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 MN1PEPF0000F0E0.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.6838.22 via Frontend Transport; Fri, 20 Oct 2023 23:26: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; Fri, 20 Oct
 2023 18:26:44 -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; Fri, 20 Oct 2023 18:26: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: 24ece8aa-6fa0-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=js2uwAcFSCi1tff/NxKwaOCgepZ005to09TrFK3Fle+8hbmbajqmiykxK3qhWB8k8+rANqX1jcc1/OMfqGT/wUx9OIqsh+0kVpWX7T64XILV4cHJ/SuiuwVn16aWu9wnDmRFxtM7KVtkGTVRlLul+qOKBBtGNZ+YagSPS/NeH6QBKG0DGsWVPrePA6oePmRZUCO9LPMk0jRcClM7SpX+W/qrc3WFyGRHaY4qLPYviO06ZM1b52Tol/c0puxvx2gECI1zx0knI1N+7ilx7JUPa4FFcfQC8mvD2secQNnbhEyl6lkG9vjzP+bjsVcn1qLeOloQRiwT86roFmYciI5vVw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=KbYw1rRZu5NOumriHBmYnlyi9F0lH4t1pYzdW7E9kis=;
 b=ZzkyNu28jJBC0b5Ce2Zjwjj6hpgkAq0s6PCFjPqwJID8/H54fiLw7whdb94c6N7jJjYMAU4LR+GfTzHSRsC/e/zTBu1MmQKwfduhgaxnP+PfgJA5iMna7LpdoSyTUrIrKHu7x2mFtBNXtbl+MaxXzkCO3xHGpj0w46JVvr3vtq7ckPLd1lbPbLrYwrjywxPR8/54bJEFjrcTXgTciMMmYvLpbmbH1wX4WlDWl4ABqPmQbicsor+E7PcA7Hmz05kB6lKWs64U27N4N+Z7waz4vKdmrYBSWkcZ5HvRKVohvMS1yUOtR84vzh12CNKakLgTE2gZR5tnI1fRTxf8MBSXNg==
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=KbYw1rRZu5NOumriHBmYnlyi9F0lH4t1pYzdW7E9kis=;
 b=kcf0dERF6uTtNpoecFz2yJ/IE+XJ7oNNVJ9pWX1B3eDQu4vBlAVy0xDG+JbbFEUP2JvgVoIEOI1fu+iTFJTSfX9AGHcaRiK6TaxPjxRPQZMUKpIt8f5OfbtE3P2Oo7Nlci3JfdP/Ou1k0WcmkFy07YqbriXKKXNgSSnHR8v3Rg4=
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
Date: Fri, 20 Oct 2023 16:26:38 -0700
From: Stefano Stabellini <stefano.stabellini@amd.com>
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>, <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>
Subject: Re: [XEN PATCH v2 00/10] address violations of MISRA C:2012 Directive
 4.10
In-Reply-To: <6374f0f4-d58f-83ca-6eb3-d5a9fcbac525@suse.com>
Message-ID: <alpine.DEB.2.22.394.2310201622160.2356865@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> <725f5193-c8d3-1bc8-cd62-2a2b1b5ecc01@suse.com> <alpine.DEB.2.22.394.2310171709310.965337@ubuntu-linux-20-04-desktop>
 <ead797ed-84cc-fb70-5259-7e11211d049e@suse.com> <alpine.DEB.2.22.394.2310181739270.965337@ubuntu-linux-20-04-desktop> <e642bc2a-cefa-4ee4-6394-3c10102e8164@suse.com> <alpine.DEB.2.22.394.2310190915590.1945130@ubuntu-linux-20-04-desktop>
 <6374f0f4-d58f-83ca-6eb3-d5a9fcbac525@suse.com>
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: MN1PEPF0000F0E0:EE_|SA0PR12MB4495:EE_
X-MS-Office365-Filtering-Correlation-Id: 34818369-132e-44f9-3c75-08dbd1c40642
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	wxFETpwjzC27au2KbrFa3lkyGaXcviPgDlBmqyj4iFP6QOOa98MCNslkdLjWSzQWILjRxFjQVFtrSqBLzEFQCcRpNjIo3Eo9PJtvJYs0EaJFIw5VksJMBY0d8uu6gLNU7TjHgGUZPnvLI0zoXOy6QQooNPX1CAm+dqkx4RA44YfVL9ETGlPB3d8pvIdKFgHVbmDHS8BOyA036tcBXtzz3XN9b7wJs6tbGo0LmONCW9L58U6LS19g1Bh+99pLBqQqiE7fzFUl0TD5OO7CxkUZGZrS+fcZaH17+Oe35kdLnjjCkVFvKisiFzKhlM1fFoARBrCk/EfhYVKCWWiYdCwA8sOk+PcZHbkV72BoM/zrIEy/IbPDvIuy6pfjhC4J/M4PVUhu0NuLIMLy0ya/hexM8E2COi/NTtRFYCyXdTu2SbK26xiAlwOUDfZBD9fqzktqq4LKHx9ElahtYcdoOin/i0s56ygsLucK+EdkIun+ayVZbR15dwG9HD4VJOZrzuF8Ah0e7LxmjQFkqgQcsGihcE5voCP/7OrLxa4lqLv09v1rPmRiZfFdPoHYMT8iX+zSuBiJv+UBYc9/FdtJva2nm5S2Qc8rjdbGftKt3TNUIDOs2pa1KMYD2R+I8eBi5ZELAq91kTwhpgSUc1m7zvgvLCaGJg+ncx9fEIK8buMZbHsYBt2Rz/e9reZnjwhEJ4XJvNyTPIwaczjKDFMQbeg1lau13jIQrSrIdVd9y0znNfkCPCSauCWy/hYKWUHy/5MT6rVOAte2LMF20f119/JLBw==
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)(7916004)(346002)(396003)(376002)(136003)(39860400002)(230922051799003)(451199024)(64100799003)(82310400011)(186009)(1800799009)(46966006)(36840700001)(40470700004)(6916009)(478600001)(40460700003)(2906002)(53546011)(9686003)(82740400003)(70206006)(70586007)(54906003)(316002)(426003)(86362001)(33716001)(26005)(36860700001)(47076005)(336012)(356005)(81166007)(83380400001)(7416002)(40480700001)(41300700001)(8936002)(44832011)(4326008)(5660300002)(8676002)(66899024)(6666004)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Oct 2023 23:26:45.0450
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 34818369-132e-44f9-3c75-08dbd1c40642
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:
	MN1PEPF0000F0E0.namprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA0PR12MB4495

On Fri, 20 Oct 2023, Jan Beulich wrote:
> On 19.10.2023 18:19, Stefano Stabellini wrote:
> > On Thu, 19 Oct 2023, Jan Beulich wrote:
> >> On 19.10.2023 02:44, Stefano Stabellini wrote:
> >>> On Wed, 18 Oct 2023, Jan Beulich wrote:
> >>>> On 18.10.2023 02:48, Stefano Stabellini wrote:
> >>>>> On Mon, 16 Oct 2023, Jan Beulich wrote:
> >>>>>> On 29.09.2023 00:24, Stefano Stabellini wrote:
> >>>>>>> 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:
> >>>>>>
> >>>>>> ... "least resistance" won't gain us much, as hardly any guards don't
> >>>>>> start with an underscore.
> >>>>>>
> >>>>>>> - 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__ ?
> >>>>>>
> >>>>>> There are no headers in xen/include/. For (e.g.) xen/include/xen/ we
> >>>>>> may go with XEN_BLAH_H; whether ASM prefixes are needed I'm not sure;
> >>>>>> we could go with just ARM_BLAH_H and X86_BLAH_H?
> >>>>>>
> >>>>>> The primary question though is (imo) how to deal with private headers,
> >>>>>> such that the risk of name collisions is as small as possible.
> >>>>>
> >>>>> Looking at concrete examples under xen/include/xen:
> >>>>> xen/include/xen/mm.h __XEN_MM_H__
> >>>>> xen/include/xen/dm.h __XEN_DM_H__
> >>>>> xen/include/xen/hypfs.h __XEN_HYPFS_H__
> >>>>>
> >>>>> So I think we should do for consistency:
> >>>>> xen/include/xen/blah.h __XEN_BLAH_H__
> >>>>>
> >>>>> Even if we know the leading underscore are undesirable, in this case I
> >>>>> would prefer consistency.
> >>>>
> >>>> I'm kind of okay with that. FTAOD - here and below you mean to make this
> >>>> one explicit first exception from the "no new leading underscores" goal,
> >>>> for newly added headers?
> >>>
> >>> Yes. The reason is for consistency with the existing header files.
> >>>
> >>>
> >>>>> On the other hand looking at ARM examples:
> >>>>> xen/arch/arm/include/asm/traps.h __ASM_ARM_TRAPS__
> >>>>> xen/arch/arm/include/asm/time.h __ARM_TIME_H__
> >>>>> xen/arch/arm/include/asm/sysregs.h __ASM_ARM_SYSREGS_H
> >>>>> xen/arch/arm/include/asm/io.h _ASM_IO_H
> >>>>>
> >>>>> And also looking at x86 examples:
> >>>>> xen/arch/x86/include/asm/paging.h _XEN_PAGING_H
> >>>>> xen/arch/x86/include/asm/p2m.h _XEN_ASM_X86_P2M_H
> >>>>> xen/arch/x86/include/asm/io.h _ASM_IO_H
> >>>>>
> >>>>> Thet are very inconsistent.
> >>>>>
> >>>>>
> >>>>> So for ARM and X86 headers I think we are free to pick anything we want,
> >>>>> including your suggested ARM_BLAH_H and X86_BLAH_H. Those are fine by
> >>>>> me.
> >>>>
> >>>> To be honest, I'd prefer a global underlying pattern, i.e. if common
> >>>> headers are "fine" to use leading underscores for guards, arch header
> >>>> should, too.
> >>>
> >>> I am OK with that too. We could go with:
> >>> __ASM_ARM_BLAH_H__
> >>> __ASM_X86_BLAH_H__
> >>>
> >>> I used "ASM" to make it easier to differentiate with the private headers
> >>> below. Also the version without "ASM" would work but it would only
> >>> differ with the private headers in terms of leading underscores. I
> >>> thought that also having "ASM" would help readability and help avoid
> >>> confusion.
> >>>
> >>>
> >>>>> For private headers such as:
> >>>>> xen/arch/arm/vuart.h __ARCH_ARM_VUART_H__
> >>>>> xen/arch/arm/decode.h __ARCH_ARM_DECODE_H_
> >>>>> xen/arch/x86/mm/p2m.h __ARCH_MM_P2M_H__
> >>>>> xen/arch/x86/hvm/viridian/private.h X86_HVM_VIRIDIAN_PRIVATE_H
> >>>>>
> >>>>> More similar but still inconsistent. I would go with ARCH_ARM_BLAH_H and
> >>>>> ARCH_X86_BLAH_H for new headers.
> >>>>
> >>>> I'm afraid I don't like this, as deeper paths would lead to unwieldy
> >>>> guard names. If we continue to use double-underscore prefixed names
> >>>> in common and arch headers, why don't we demand no leading underscores
> >>>> and no path-derived prefixes in private headers? That'll avoid any
> >>>> collisions between the two groups.
> >>>
> >>> OK, so for private headers:
> >>>
> >>> ARM_BLAH_H
> >>> X86_BLAH_H
> >>>
> >>> What that work for you?
> >>
> >> What are the ARM_ and X86_ prefixes supposed to indicate here? Or to ask
> >> differently, how would you see e.g. common/decompress.h's guard named?
> > 
> > I meant that:
> > 
> > xen/arch/arm/blah.h would use ARM_BLAH_H
> > xen/arch/x86/blah.h would use X86_BLAH_H
> > 
> > You have a good question on something like xen/common/decompress.h and
> > xen/common/event_channel.h.  What do you think about:
> > 
> > COMMON_BLAH_H, so specifically COMMON_DECOMPRESS_H
> > 
> > otherwise:
> > 
> > XEN_BLAH_H, so specifically XEN_DECOMPRESS_H
> > 
> > I prefer COMMON_BLAH_H but I think both versions are OK.
> 
> IOW you disagree with my earlier "... and no path-derived prefixes",
> and you prefer e.g. DRIVERS_PASSTHROUGH_VTD_DMAR_H as a consequence?
> FTAOD my earlier suggestion was simply based on the observation that
> the deeper the location of a header in the tree, the more unwieldy
> its guard name would end up being if path prefixes were to be used.

I don't have a strong opinion on "path-derived prefixes". I prefer
consistency and easy-to-figure-out guidelines over shortness.

The advantage of a path-derived prefix is that it is trivial to figure
out at first glance. If we can come up with another system that is also
easy then fine. Do you have a suggestion? If so, sorry I missed it.


From xen-devel-bounces@lists.xenproject.org Sat Oct 21 03:54:12 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 21 Oct 2023 03:54:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.620463.965911 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qu33h-0005p2-8t; Sat, 21 Oct 2023 03:53:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 620463.965911; Sat, 21 Oct 2023 03:53: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 1qu33h-0005ov-6D; Sat, 21 Oct 2023 03:53:53 +0000
Received: by outflank-mailman (input) for mailman id 620463;
 Sat, 21 Oct 2023 03:53: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 1qu33g-0005ol-32; Sat, 21 Oct 2023 03:53: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 1qu33f-0006iM-WE; Sat, 21 Oct 2023 03:53: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 1qu33f-0004fm-Fa; Sat, 21 Oct 2023 03:53:51 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qu33f-0003sv-CP; Sat, 21 Oct 2023 03:53: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=72iR+xLZA3vavsgR6jHXT5YIfo1UEpOLrmD+YKrJxOQ=; b=2jUymnDGyHCBePfwdsAq40I87c
	U0pEwpyhdBN5DSTr/st+PJ0WI48tSzPiFHpKaWKtUmbw3sypOf7x4BilqE6bpZRTMBtiby9ja+xIz
	8ko4ox8skhf1W+y4hKu/4s+TvHDeg8PboBo7tCnjl/Tu0Sc4+DqDJ5AhDCKEkrP2bw0k=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183448-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 183448: tolerable FAIL - PUSHED
X-Osstest-Failures:
    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-armhf-armhf-libvirt: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-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm: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-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:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl: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-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu: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-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-raw:migrate-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-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd: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-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds: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-qcow2:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=c8045b4a33a511ff1feaeb806e819572b90b6625
X-Osstest-Versions-That:
    linux=ce55c22ec8b223a90ff3e084d842f73cfba35588
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 21 Oct 2023 03:53:51 +0000

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

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 183440
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183440
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183440
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183440
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183440
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183440
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183440
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183440
 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-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 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 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          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-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-amd64-amd64-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-amd64-amd64-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-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-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-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-qcow2 14 migrate-support-check        fail never pass

version targeted for testing:
 linux                c8045b4a33a511ff1feaeb806e819572b90b6625
baseline version:
 linux                ce55c22ec8b223a90ff3e084d842f73cfba35588

Last test of basis   183440  2023-10-20 04:54:14 Z    0 days
Testing same since   183448  2023-10-20 17:12:10 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Alex Deucher <Alexander.Deucher@amd.com>
  Anton Bambura <jenneron@postmarketos.org>
  Borislav Petkov (AMD) <bp@alien8.de>
  Chen-Yu Tsai <wenst@chromium.org>
  Christian König <christian.koenig@amd.com>
  Chun-Kuang Hu <chunkuang.hu@kernel.org>
  Danilo Krummrich <dakr@redhat.com>
  Dave Airlie <airlied@redhat.com>
  Douglas Anderson <dianders@chromium.org>
  Felix Kuehling <Felix.Kuehling@amd.com>
  Hamza Mahfooz <hamza.mahfooz@amd.com>
  Hsin-Yi Wang <hsinyi@chromium.org>
  Jacek Lawrynowicz <jacek.lawrynowicz@linux.intel.com>
  Joerg Roedel <jroedel@suse.de>
  Karol Herbst <kherbst@redhat.com>
  Karolina Stolarek <karolina.stolarek@intel.com>
  Khaled Almahallawy <khaled.almahallawy@intel.com>
  Linus Torvalds <torvalds@linux-foundation.org>
  Luben Tuikov <luben.tuikov@amd.com>
  Radhakrishna Sripada <radhakrishna.sripada@intel.com>
  Randy Dunlap <rdunlap@infradead.org>
  Rodrigo Vivi <rodrigo.vivi@intel.com>
  Stanislaw Gruszka <stanislaw.gruszka@linux.intel.com>
  Stephen Boyd <swboyd@chromium.org>
  Thomas Zimmermann <tzimmermann@suse.de>
  Tom Dohrmann <erbse.13@gmx.de>
  Ville Syrjälä <ville.syrjala@linux.intel.com>
  Wludzik, Jozef <jozef.wludzik@intel.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
   ce55c22ec8b2..c8045b4a33a5  c8045b4a33a511ff1feaeb806e819572b90b6625 -> tested/linux-linus


From xen-devel-bounces@lists.xenproject.org Sat Oct 21 10:21:22 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 21 Oct 2023 10:21:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.620489.965922 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qu96P-0005Qe-S7; Sat, 21 Oct 2023 10:21:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 620489.965922; Sat, 21 Oct 2023 10:21: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 1qu96P-0005QX-Or; Sat, 21 Oct 2023 10:21:05 +0000
Received: by outflank-mailman (input) for mailman id 620489;
 Sat, 21 Oct 2023 10:21: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 1qu96O-0005QN-Dq; Sat, 21 Oct 2023 10:21: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 1qu96O-000070-A6; Sat, 21 Oct 2023 10:21: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 1qu96N-0002Jp-S4; Sat, 21 Oct 2023 10:21:03 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qu96N-0003zk-RJ; Sat, 21 Oct 2023 10:21: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=iUkj2dA2ppb/Nu7uUeB/xLi3e0jrL1VQJHk2SZM5HtM=; b=4vVt5f1SZ/MNueKBbrVuSbPL6q
	e5KAQdvlPI4CG9N2fXfINmEnlJp2uE3eI8qIv/CRTWWq48rUdkNriRWuKhaQJbUn9Mp6NnY/Fr9da
	4x6bLfT2wb0U9jppsnVcgxSa46nL3nddF/qczcHYgvDbp129pcOVIpbU4b8508b73uLY=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183449-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 183449: regressions - FAIL
X-Osstest-Failures:
    xen-unstable:test-amd64-i386-migrupgrade:xen-install/dst_host:fail:regression
    xen-unstable:test-amd64-amd64-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-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-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-qcow2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-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-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-credit1: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-credit1: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-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2: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-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-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-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt: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-amd64-i386-libvirt-raw: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-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:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=bad1ac345b1910b820b8a703ad1b9f66412ea844
X-Osstest-Versions-That:
    xen=474fc7d3c6525e209bd2fe1e6ef0bbb34de86bb4
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 21 Oct 2023 10:21:03 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-i386-migrupgrade  11 xen-install/dst_host     fail REGR. vs. 183444

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183438
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183444
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183444
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 183444
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183444
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183444
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 183444
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183444
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 183444
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183444
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183444
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 183444
 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-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-credit1  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-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-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-amd64-amd64-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-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-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-amd64-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-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-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-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          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass

version targeted for testing:
 xen                  bad1ac345b1910b820b8a703ad1b9f66412ea844
baseline version:
 xen                  474fc7d3c6525e209bd2fe1e6ef0bbb34de86bb4

Last test of basis   183444  2023-10-20 12:24:22 Z    0 days
Testing same since   183449  2023-10-20 23:10:19 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Jan Beulich <jbeulich@suse.com>
  Roger Pau Monné <roger.pau@citrix.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                                  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 bad1ac345b1910b820b8a703ad1b9f66412ea844
Author: Jan Beulich <jbeulich@suse.com>
Date:   Fri Oct 20 15:50:05 2023 +0200

    x86: support data operand independent timing mode
    
    [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>
    Acked-by: Roger Pau Monné <roger.pau@citrix.com>
    Release-acked-by: Henry Wang <Henry.Wang@arm.com>

commit 8a5ef972bab3ad57bf017a42601943aa05811536
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Thu Oct 19 14:56:26 2023 +0100

    CI: (More) Always pull base image when building a container
    
    Repeat c/s 26ecc08b98fc ("automation: Always pull base image when building a
    container") for the other makefile we've got building containers.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Anthony PERARD <anthony.perard@citrix.com>
    Acked-by: Stefano Stabellini <sstabellini@kernel.org>
    Release-acked-by: Henry Wang <Henry.Wang@arm.com>
(qemu changes not included)


From xen-devel-bounces@lists.xenproject.org Sat Oct 21 15:03:53 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 21 Oct 2023 15:03:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.620518.965994 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quDVk-0000in-Ph; Sat, 21 Oct 2023 15:03:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 620518.965994; Sat, 21 Oct 2023 15:03: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 1quDVk-0000ig-N1; Sat, 21 Oct 2023 15:03:32 +0000
Received: by outflank-mailman (input) for mailman id 620518;
 Sat, 21 Oct 2023 15:03: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 1quDVj-0000iW-IR; Sat, 21 Oct 2023 15:03: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 1quDVj-0006f4-6P; Sat, 21 Oct 2023 15:03: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 1quDVi-0007RP-T2; Sat, 21 Oct 2023 15:03:30 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1quDVi-000393-SZ; Sat, 21 Oct 2023 15: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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=eJOh1RB0ijaLNmyB0XTJ2ECMEG6BwVMElU6wIDus6xo=; b=llrdLxUkaYn2fX7N5P/7G1x9We
	5PhygKsd4ddhpdhcFNZ+sAqD/ZlncI4kWY1bQ2pWf3gXumOtL76vPb2iBHt5pzfGPv9V+Snw2qbaX
	EVK8IrczBIKvQJVSfhLIb8+giuaLlxzVEwJV4m1XNAx8B92of/CFc1sWJP80q61Cuv+k=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183450-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 183450: tolerable FAIL - PUSHED
X-Osstest-Failures:
    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-armhf-armhf-libvirt: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-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-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:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl: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-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu: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-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-raw:migrate-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-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd: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-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds: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-qcow2:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=9c5d00cb7b6bbc5a7965d9ab7d223b5402d1f02c
X-Osstest-Versions-That:
    linux=c8045b4a33a511ff1feaeb806e819572b90b6625
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 21 Oct 2023 15:03:30 +0000

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

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 183448
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183448
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183448
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183448
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183448
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183448
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183448
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183448
 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-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-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-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-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-amd64-amd64-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-amd64-amd64-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-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-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-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-qcow2 14 migrate-support-check        fail never pass

version targeted for testing:
 linux                9c5d00cb7b6bbc5a7965d9ab7d223b5402d1f02c
baseline version:
 linux                c8045b4a33a511ff1feaeb806e819572b90b6625

Last test of basis   183448  2023-10-20 17:12:10 Z    0 days
Testing same since   183450  2023-10-21 03:58:42 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Adrian Hunter <adrian.hunter@intel.com>
  Alon Zahavi <zahavi.alon@gmail.com>
  Amir Goldstein <amir73il@gmail.com>
  Andy Shevchenko <andriy.shevchenko@linux.intel.com>
  Anna Schumaker <Anna.Schumaker@Netapp.com>
  Arnaldo Carvalho de Melo <acme@redhat.com>
  Artem Borisov <dedsa2002@gmail.com>
  Avri Altman <avri.altman@wdc.com>
  Beau Belgrave <beaub@linux.microsoft.com>
  Benjamin Coddington <bcodding@redhat.com>
  Bibek Kumar Patro <quic_bibekkum@quicinc.com>
  Charles Keepax <ckeepax@opensource.cirrus.com>
  Christian Loehle <christian.loehle@arm.com>
  Conor Dooley <conor.dooley@microchip.com>
  D Scott Phillips <scott@os.amperecomputing.com>
  Dai Ngo <dai.ngo@oracle.com>
  Dan Carpenter <dan.carpenter@linaro.org>
  David Rau <David.Rau.opensource@dm.renesas.com>
  Geert Uytterhoeven <geert+renesas@glider.be>
  Haibo Chen <haibo.chen@nxp.com>
  Hanjun Guo <guohanjun@huawei.com>
  Jan Kara <jack@suse.cz>
  Jeff Layton <jlayton@kernel.org>
  Jens Axboe <axboe@kernel.dk>
  Johan Hovold <johan+linaro@kernel.org>
  Kailang Yang <kailang@realtek.com>
  Keith Busch <kbusch@kernel.org>
  Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
  Linus Torvalds <torvalds@linux-foundation.org>
  Linus Walleij <linus.walleij@linaro.org>
  Luka Guzenko <l.guzenko@web.de>
  Mark Brown <broonie@kernel.org>
  Martin K. Petersen <martin.petersen@oracle.com>
  Martin Kurbanov <mmkurbanov@sberdevices.ru>
  Martin Wilck <mwilck@suse.com>
  Maurizio Lombardi <mlombard@redhat.com>
  Michal Simek <michal.simek@amd.com>
  Milan Broz <gmazyland@gmail.com>
  Miquel Raynal <miquel.raynal@bootlin.com>
  Namhyung Kim <namhyung@kernel.org>
  Nilesh Javali <njavali@marvell.com>
  Olga Kornievskaia <kolga@netapp.com>
  Ondrej Kozina <okozina@redhat.com>
  Pablo Sun <pablo.sun@mediatek.com>
  Quentin Monnet <quentin@isovalent.com>
  Quinn Tran <qutran@marvell.com>
  Rafael J. Wysocki <rafael.j.wysocki@intel.com>
  Ravi Chandra Minnikanti <rminnikanti@marvell.com>
  Richard Fitzgerald <rf@opensource.cirrus.com>
  Rouven Czerwinski <r.czerwinski@pengutronix.de>
  Roy Chateau <roy.chateau@mep-info.com>
  Sagi Grimberg <sagi@grimberg.me>
  Scott Mayhew <smayhew@redhat.com>
  Shuah Khan <skhan@linuxfoundation.org>
  Shuming Fan <shumingf@realtek.com>
  Steven Rostedt (Google) <rostedt@goodmis.org>
  Sunil V L <sunilvl@ventanamicro.com>
  Sven van Ashbrook <svenva@chromium.org>
  Takashi Iwai <tiwai@suse.de>
  Tomas Henzl <thenzl@redhat.com>
  Trond Myklebust <trond.myklebust@hammerspace.com>
  Ulf Hansson <ulf.hansson@linaro.org>
  Wyes Karny <wyes.karny@amd.com>
  Yi Zhang <yi.zhang@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-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
   c8045b4a33a5..9c5d00cb7b6b  9c5d00cb7b6bbc5a7965d9ab7d223b5402d1f02c -> tested/linux-linus


From xen-devel-bounces@lists.xenproject.org Sat Oct 21 16:33:16 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 21 Oct 2023 16:33:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.620534.966031 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quEuL-0002VH-BS; Sat, 21 Oct 2023 16:33:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 620534.966031; Sat, 21 Oct 2023 16:33: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 1quEuL-0002VA-8u; Sat, 21 Oct 2023 16:33:01 +0000
Received: by outflank-mailman (input) for mailman id 620534;
 Sat, 21 Oct 2023 16:33: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=vO28=GD=linuxfoundation.org=gregkh@srs-se1.protection.inumbo.net>)
 id 1quEuJ-0002V4-U8
 for xen-devel@lists.xenproject.org; Sat, 21 Oct 2023 16:33:00 +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 7cda19e1-702f-11ee-98d5-6d05b1d4d9a1;
 Sat, 21 Oct 2023 18:32:57 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by sin.source.kernel.org (Postfix) with ESMTP id 781FFCE13E0;
 Sat, 21 Oct 2023 16:32:52 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 261F3C433C8;
 Sat, 21 Oct 2023 16:32: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: 7cda19e1-702f-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org;
	s=korg; t=1697905971;
	bh=J0YExM0i9UyGR28fuSNSuiNULcDD5AwOsLxt/rxGPN0=;
	h=Date:From:To:Cc:Subject:References:In-Reply-To:From;
	b=PdJE3qT4Sz+2st1qtPL0++FJpfbjfyZ1T9tVqqaXeIN0f0JAM94vs+LtZUvZcsFYQ
	 i2sA8e6eG4g1IMJIFyEOUDUboczRLoUL+oig1nGVB0pQ/8YK4J/umno0Dwj5r5mCBl
	 3nRqMnHJ18/H25w0WNfnrc01BDLIxlofdfkqGK8k=
Date: Sat, 21 Oct 2023 18:32:48 +0200
From: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
To: David Woodhouse <dwmw2@infradead.org>
Cc: Juergen Gross <jgross@suse.com>, xen-devel@lists.xenproject.org,
	Jiri Slaby <jirislaby@kernel.org>,
	Roger Pau Monne <roger.pau@citrix.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Dawei Li <set_pte_at@outlook.com>, linuxppc-dev@lists.ozlabs.org,
	linux-kernel@vger.kernel.org, linux-serial@vger.kernel.org,
	Paul Durrant <paul@xen.org>
Subject: Re: [PATCH v2 1/3] hvc/xen: fix event channel handling for secondary
 consoles
Message-ID: <2023102129-humongous-grant-4576@gregkh>
References: <20231020161529.355083-1-dwmw2@infradead.org>
 <20231020161529.355083-2-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <20231020161529.355083-2-dwmw2@infradead.org>

On Fri, Oct 20, 2023 at 05:15:27PM +0100, David Woodhouse wrote:
> From: David Woodhouse <dwmw@amazon.co.uk>
> 
> The xencons_connect_backend() function allocates a local interdomain
> event channel with xenbus_alloc_evtchn(), then calls
> bind_interdomain_evtchn_to_irq_lateeoi() to bind to that port# on the
> *remote* domain.
> 
> That doesn't work very well:
> 
> (qemu) device_add xen-console,id=con1,chardev=pty0
> [   44.323872] xenconsole console-1: 2 xenbus_dev_probe on device/console/1
> [   44.323995] xenconsole: probe of console-1 failed with error -2
> 
> Fix it to use bind_evtchn_to_irq_lateeoi(), which does the right thing
> by just binding that *local* event channel to an irq. The backend will
> do the interdomain binding.
> 
> This didn't affect the primary console because the setup for that is
> special — the toolstack allocates the guest event channel and the guest
> discovers it with HVMOP_get_param.
> 
> Fixes: fe415186b4 ("xen/console: harden hvc_xen against event channel storms")

Nit, our tools complain that the sha1 isn't big enough, "fe415186b43d"
I'll go fix it up...



From xen-devel-bounces@lists.xenproject.org Sat Oct 21 16:51:12 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 21 Oct 2023 16:51:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.620539.966047 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quFBp-000583-Sh; Sat, 21 Oct 2023 16:51:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 620539.966047; Sat, 21 Oct 2023 16: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 1quFBp-00057w-Pd; Sat, 21 Oct 2023 16:51:05 +0000
Received: by outflank-mailman (input) for mailman id 620539;
 Sat, 21 Oct 2023 16: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 1quFBo-00057m-1f; Sat, 21 Oct 2023 16: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 1quFBn-0001FW-JE; Sat, 21 Oct 2023 16: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 1quFBn-0001i1-82; Sat, 21 Oct 2023 16:51:03 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1quFBn-0002NA-7V; Sat, 21 Oct 2023 16: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=GErdoqWxRR4CJQ8IXRZjbUefmNx/sscBuYRT3bNrhIU=; b=C2+onRcnfADs043b5hmGvrSP/9
	fMMPA/fITC+hs4qnGNdz2JaBoQ6pn1WkG0OklSP+ACr69Q7f+yyVe6X0R4z4tWoR2lg1GOdwsAWAS
	VI/kHz91UgAFBtgAZg2OV4PvlhZ6ddlKYiVT6FnOxfiL7WVfZbXNer4AbZEU++Vc7MVk=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183451-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [libvirt test] 183451: tolerable all pass - PUSHED
X-Osstest-Failures:
    libvirt:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt: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-amd64-amd64-libvirt-vhd: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-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    libvirt=6be0d1a0d3f812cdf0b310e5e36bf3533a9b4ae4
X-Osstest-Versions-That:
    libvirt=11839c8cc1d204ec3abdb3a0d9499b64dc83fc83
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 21 Oct 2023 16:51:03 +0000

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

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183407
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183407
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183407
 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-amd64-amd64-libvirt-vhd 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-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-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     15 migrate-support-check        fail   never pass

version targeted for testing:
 libvirt              6be0d1a0d3f812cdf0b310e5e36bf3533a9b4ae4
baseline version:
 libvirt              11839c8cc1d204ec3abdb3a0d9499b64dc83fc83

Last test of basis   183407  2023-10-18 04:18:51 Z    3 days
Testing same since   183451  2023-10-21 04:18:54 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Dmitry Frolov <frolov@swemel.ru>
  Fima Shevrin <efim.shevrin@virtuozzo.com>
  Michal Privoznik <mprivozn@redhat.com>
  Narayana Murty N <nnmlinux@linux.ibm.com>
  Praveen K Paladugu <prapal@linux.microsoft.com>
  Sergey Mironov <mironov@fintech.ru>
  zhujun2 <zhujun2@cmss.chinamobile.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
   11839c8cc1..6be0d1a0d3  6be0d1a0d3f812cdf0b310e5e36bf3533a9b4ae4 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Sat Oct 21 22:22:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 21 Oct 2023 22:22:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.620590.966168 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quKMd-0007Br-Vw; Sat, 21 Oct 2023 22:22:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 620590.966168; Sat, 21 Oct 2023 22:22: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 1quKMd-0007Bk-Sj; Sat, 21 Oct 2023 22:22:35 +0000
Received: by outflank-mailman (input) for mailman id 620590;
 Sat, 21 Oct 2023 22:22: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 1quKMc-0007BZ-Le; Sat, 21 Oct 2023 22:22: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 1quKMc-0000r2-JB; Sat, 21 Oct 2023 22:22: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 1quKMc-0005BI-9d; Sat, 21 Oct 2023 22:22:34 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1quKMc-0006Nv-9F; Sat, 21 Oct 2023 22:22: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=Gt9u8Xe7xK50QLfity4EP/GURYJkQRBFqUroeEzjtt0=; b=XiMZK/rGVQvzESBPUyDPAsLj79
	2wSFklY6HbB/AERv0XIbPhPYIu3swOuhKQYc6BYepsUU7hAbP0koFSEQxdkFw6n+PvmPv62OCSY++
	BFty1LcdbdaZDcADeVwObTiWziXF+zk7TxfXQYUfu23vImJbu5lASGHSg0G+Abqgv9Nc=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183453-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 183453: tolerable FAIL - PUSHED
X-Osstest-Failures:
    xen-unstable:test-amd64-i386-migrupgrade:xen-install/dst_host:fail:heisenbug
    xen-unstable:test-amd64-coresched-i386-xl:guest-localmigrate/x10:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-rtds:guest-start/debian.repeat:fail:heisenbug
    xen-unstable:test-amd64-amd64-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-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-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-qcow2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-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-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-credit1: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-credit1: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-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2: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-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-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-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt: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-amd64-i386-libvirt-raw: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-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:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=bad1ac345b1910b820b8a703ad1b9f66412ea844
X-Osstest-Versions-That:
    xen=474fc7d3c6525e209bd2fe1e6ef0bbb34de86bb4
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 21 Oct 2023 22:22:34 +0000

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

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-amd64-i386-migrupgrade 11 xen-install/dst_host fail in 183449 pass in 183453
 test-amd64-coresched-i386-xl 20 guest-localmigrate/x10     fail pass in 183449
 test-armhf-armhf-xl-rtds     18 guest-start/debian.repeat  fail pass in 183449

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183438
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183444
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183444
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 183444
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183444
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183444
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 183444
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183444
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 183444
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183444
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183444
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 183444
 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-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-credit1  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-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-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-amd64-amd64-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-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-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-amd64-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-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-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-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          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass

version targeted for testing:
 xen                  bad1ac345b1910b820b8a703ad1b9f66412ea844
baseline version:
 xen                  474fc7d3c6525e209bd2fe1e6ef0bbb34de86bb4

Last test of basis   183444  2023-10-20 12:24:22 Z    1 days
Testing same since   183449  2023-10-20 23:10:19 Z    0 days    2 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Jan Beulich <jbeulich@suse.com>
  Roger Pau Monné <roger.pau@citrix.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                                 fail    
 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                                     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 :

To xenbits.xen.org:/home/xen/git/xen.git
   474fc7d3c6..bad1ac345b  bad1ac345b1910b820b8a703ad1b9f66412ea844 -> master


From xen-devel-bounces@lists.xenproject.org Sun Oct 22 03:27:59 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 22 Oct 2023 03:27:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.620607.966184 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quP7x-0003H8-Eh; Sun, 22 Oct 2023 03:27:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 620607.966184; Sun, 22 Oct 2023 03:27: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 1quP7x-0003H1-By; Sun, 22 Oct 2023 03:27:45 +0000
Received: by outflank-mailman (input) for mailman id 620607;
 Sun, 22 Oct 2023 03:27: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 1quP7v-0003Gq-JJ; Sun, 22 Oct 2023 03:27: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 1quP7v-0008B0-Bx; Sun, 22 Oct 2023 03:27: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 1quP7v-00052H-1X; Sun, 22 Oct 2023 03:27:43 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1quP7v-00031Y-0O; Sun, 22 Oct 2023 03:27: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=LwKM22gDFOFqUoBOvTi6v/GybjzafeFrcJcVY5N8tho=; b=3Ks4zb1QJWQxNLKFUXqfp6t1sN
	XpJKW7/Crrll4sA6V7ao4XiugItw70fTVfMwKqmE2ccPj+nYYVWUR9MkRqYBH5CuDniYbaONrPcZ6
	NzzR+TXYNz3nTkaG8QPJw401iuETyspfF//SwZijuKFsJccHZfI40lOQVjtPlPzqCno8=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183476-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 183476: tolerable FAIL - PUSHED
X-Osstest-Failures:
    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-armhf-armhf-libvirt: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-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-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-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-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-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu: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-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-raw:migrate-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-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd: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-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds: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-qcow2:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=4d7b04c0cda365f190c4a8f7fddc535b93aae9f9
X-Osstest-Versions-That:
    linux=9c5d00cb7b6bbc5a7965d9ab7d223b5402d1f02c
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sun, 22 Oct 2023 03:27:43 +0000

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

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 183450
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183450
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183450
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183450
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183450
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183450
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183450
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183450
 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-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-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-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-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-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-amd64-amd64-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-amd64-amd64-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-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-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-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-qcow2 14 migrate-support-check        fail never pass

version targeted for testing:
 linux                4d7b04c0cda365f190c4a8f7fddc535b93aae9f9
baseline version:
 linux                9c5d00cb7b6bbc5a7965d9ab7d223b5402d1f02c

Last test of basis   183450  2023-10-21 03:58:42 Z    0 days
Testing same since   183476  2023-10-21 18:15:19 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Armin Wolf <W_Armin@gmx.de>
  Benoît Monin <benoit.monin@gmx.fr>
  Darrick J. Wong <djwong@kernel.org>
  Denis Kenzior <denkenz@gmail.com>
  Dinghao Liu <dinghao.liu@zju.edu.cn>
  Fabio Porcedda <fabio.porcedda@gmail.com>
  Gil Fine <gil.fine@linux.intel.com>
  Greg Kroah-Hartman <gregkh@linuxfoundation.org>
  Hans de Goede <hdegoede@redhat.com>
  Herbert Xu <herbert@gondor.apana.org.au>
  Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
  Jan Stancek <jstancek@redhat.com>
  Johan Hovold <johan@kernel.org>
  Liming Sun <limings@nvidia.com>
  Linus Torvalds <torvalds@linux-foundation.org>
  Maximilian Luz <luzmaximilian@gmail.com>
  Mika Westerberg <mika.westerberg@linux.intel.com>
  Nikita Kravets <teackot@gmail.com>
  Niklas Schnelle <schnelle@linux.ibm.com>
  Orlando Chamberlain <orlandoch.dev@gmail.com>
  Puliang Lu <puliang.lu@fibocom.com>
  Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
  Vadim Pasternak <vadimp@nvidia.com>
  Vasily Gorbik <gor@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                                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
   9c5d00cb7b6b..4d7b04c0cda3  4d7b04c0cda365f190c4a8f7fddc535b93aae9f9 -> tested/linux-linus


From xen-devel-bounces@lists.xenproject.org Sun Oct 22 05:42:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 22 Oct 2023 05:42:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.620614.966194 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quREZ-0001jh-Uq; Sun, 22 Oct 2023 05:42:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 620614.966194; Sun, 22 Oct 2023 05: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 1quREZ-0001ja-Rz; Sun, 22 Oct 2023 05:42:43 +0000
Received: by outflank-mailman (input) for mailman id 620614;
 Sun, 22 Oct 2023 05:42: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=p64B=GE=onlineschubla.de=paul@srs-se1.protection.inumbo.net>)
 id 1quREX-0001jU-Hf
 for xen-devel@lists.xenproject.org; Sun, 22 Oct 2023 05:42:41 +0000
Received: from mo4-p00-ob.smtp.rzone.de (mo4-p00-ob.smtp.rzone.de
 [81.169.146.216]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id ceecae90-709d-11ee-98d5-6d05b1d4d9a1;
 Sun, 22 Oct 2023 07:42:39 +0200 (CEST)
Received: from mail.onlineschubla.de by smtp.strato.de (RZmta 49.9.0 AUTH)
 with ESMTPSA id D2f08ez9M5gbYDS
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256 bits))
 (Client did not present a certificate)
 for <xen-devel@lists.xenproject.org>;
 Sun, 22 Oct 2023 07:42:37 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mail.onlineschubla.de (Postfix) with ESMTP id 9F4602041C
 for <xen-devel@lists.xenproject.org>; Sun, 22 Oct 2023 07:42:36 +0200 (CEST)
Received: from mail.onlineschubla.de ([127.0.0.1])
 by localhost (mail.onlineschubla.de [127.0.0.1]) (amavis, port 10024)
 with ESMTP id UUkbtpFliE-g for <xen-devel@lists.xenproject.org>;
 Sun, 22 Oct 2023 07:42:35 +0200 (CEST)
Received: from [10.0.0.105] (unknown [10.0.0.105])
 by mail.onlineschubla.de (Postfix) with ESMTPA id CDB8A2014E
 for <xen-devel@lists.xenproject.org>; Sun, 22 Oct 2023 07:42: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: ceecae90-709d-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; t=1697953357; cv=none;
    d=strato.com; s=strato-dkim-0002;
    b=OpVNgH2q7GNw4n5UJ5FcToGUb3QsKBeBGpnRG9lErC/4e5b+VqFLFQNbZlWEfYuA7D
    QNDOz98wYApXFW265Hke8RnYCBvCzjs9GERMMuB+bz6jYOWglcc7DHSmv4+hCA6DO4RJ
    MBCtjn1n6y+xfO32A7ghKL40UAiQz6JsF71B3+EB6WesqpsY/ytS4VXNobaIyjipJ2hP
    uNxejU8bR91uMToQaErps0BRv6HcyVeQwFfNV2oHo4+FoYta8vSJbIoB5xzL+CQEGdUd
    w+9MszclM7ioYUyxXcyWUYygUmJ2WslJ5JeSgFSYi3Weo4X4CA1oJNzXlUSUiVaW3KP5
    k4Nw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; t=1697953357;
    s=strato-dkim-0002; d=strato.com;
    h=In-Reply-To:References:To:From:Subject:Date:Message-ID:Cc:Date:From:
    Subject:Sender;
    bh=FMyl1xyUW4qutqIUs7FKVX7LtYK58Kaave651uAIUiM=;
    b=Rq/ylbBwjnMTFzm4bJSsOcWCSFbI/El8Jjgj53i6llZkeWXvEl9sAwNeGszp7UIlT/
    Bg7GFtKXQp8/RkfCG6oOz709xqITuT4sWRLkwg4Kk8sP8PXyl0pWElufWtg8X2gjTRsn
    Wp+Iqnxic6MSClnq6veOD+m+WtLKd2UkQfuZX6SNv8OOmMHNZWBX1HyzvI7C38rTKe8R
    oZ8mGdY1iFMfLJ0QscgpAfqQEH/saBIk6N0mXd+vymJUE/TlX8S1rkxSyWG9T9uVKGkd
    PIKWlzKataubaI7a2Ji4wOZTFlcxYRCVedwzM8PYhiZk5PDKbM3dk2EsmslUTLKxpa9X
    AoAg==
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=1697953357;
    s=strato-dkim-0002; d=onlineschubla.de;
    h=In-Reply-To:References:To:From:Subject:Date:Message-ID:Cc:Date:From:
    Subject:Sender;
    bh=FMyl1xyUW4qutqIUs7FKVX7LtYK58Kaave651uAIUiM=;
    b=QdUbPqhhU50x4GgcqskjQS2999hYaxgySOckGcoYuap0I5zElctXIikFI81AeEWTiL
    JIxu1vcGUCGowqrT+gQsml5RtAnIkcj4LGI1pbuKZMToe16+dcnJ332llFLHIcjI5aoO
    oVKEy5/tsbPsLyqMdCq4xWdPAI/V8njpmppU6S7zfGtNQUd4qwFCfIvhOAhW5oVjfvcb
    xaQvygvzMXuGS6zn87ZZD9t//yOo/xNtuMmsEq8uO5BMBnkxTcGYyFoO5A+jXLwqTZ1J
    ol10+AvnNqyq4+G6j3rosU3a2Unc9+lBxCBrlUSTbHHnmogdbfxR9Ow23WYg+wX4PT3X
    cd0w==
DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; t=1697953357;
    s=strato-dkim-0003; d=onlineschubla.de;
    h=In-Reply-To:References:To:From:Subject:Date:Message-ID:Cc:Date:From:
    Subject:Sender;
    bh=FMyl1xyUW4qutqIUs7FKVX7LtYK58Kaave651uAIUiM=;
    b=KQcF12Cke/YFs3T9TkOtgD8iFDMxxWUpbuwHmdleBdCtrExZUqZeFP23n/00OPhgRI
    EAPWwzHPt6COBPdRqaCg==
X-RZG-AUTH: ":PG0ReWCndfO3rCSML4AvNaDxJ7WJyilEI/NMX3IPsStZLbcZC9mNZx0oO9uVFQeS3s1LjmLVPhrpXKQbsRW8lhx0FIeSG/QvumcK+dsPUA=="
X-Virus-Scanned: Debian amavis at onlineschubla.de
Message-ID: <4cddfd89-f195-4a50-a14d-b86121414e56@onlineschubla.de>
Date: Sun, 22 Oct 2023 07:42:36 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: Xen 4.18rc/ARM64 on Raspberry Pi 4B: Traffic in DomU crashing
 Dom0 when using VLANs
Content-Language: en-US
From: Paul Leiber <paul@onlineschubla.de>
To: xen-devel@lists.xenproject.org
References: <838ff75f-1352-4d3c-9bc1-c7a57c828231@onlineschubla.de>
In-Reply-To: <838ff75f-1352-4d3c-9bc1-c7a57c828231@onlineschubla.de>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

Am 13.10.2023 um 20:56 schrieb Paul Leiber:
> Hi Xen developers list,
> 
> TL;DR:
> ------
> 
> Causing certain web server traffic on a secondary VLAN on Raspberry Pi 
> under vanilla Debian/UEFI in combination with Xen leads to complete 
> system reboot (watchdog triggering for Dom0). Other strange things are 
> happening.
> 
> Description:
> ----------
> 
> I recently set up Xen (self compiled, Version 4.18-rc) on a Raspberry Pi 
> 4B (on vanilla Debian Bookworm, UEFI boot mode). Until some time ago, 
> everything worked well with Dom0, one DomU and one bridge.
> 
> Then I wanted to actually make use of the virtualization and started to 
> set up a second Debian Bookworm DomU (using xen-create-image) for 
> monitoring my systems with zabbix (a webserver based system monitoring 
> solution). The bridge used for this setup was the device bridging the 
> hardware NIC. I installed zabbix, set it up, and everything went well, I 
> could access the web interface without any problem.
> 
> Then I set up VLANs (initally using VLAN numbers 1 and 2) to separate 
> network traffic between the DomUs. I made the existing device bridge 
> VLAN 1 (bridge 1) and created a secondary device for bridging VLAN 2 
> (bridge 2). Using only bridge 1 / VLAN 1 everything works well, I can 
> access the zabbix web interface without any noticeable issue. After 
> switching the zabbix DomU to VLAN 2 / bridge 2, everything seemingly 
> keeps on working well, I can ping different devices in my network from 
> the zabbix DomU and vice versa, I can ssh into the machine.
> 
> However, as soon as I remotely access the zabbix web interface, the 
> complete system (DomUs and Dom0) becomes unresponsive and reboots after 
> some time (usually seconds, sometimes 1-2 minutes). The reboot is 
> reliably reproducable.
> 
> I didn't see any error message in any log (zabbix, DomU syslog, Dom0 
> syslog) except for the following lines immediately before the system 
> reboots on the Xen serial console:
> 
> (XEN) Watchdog timer fired for domain 0
> (XEN) Hardware Dom0 shutdown: watchdog rebooting machine
> 
> As soon as I change the bridge to bridge 1 (with or without VLAN setup), 
> the web interface is accessible again after booting the zabbix DomU, no 
> reboots.
> 
> So I assume that causing specific traffic on the virtual NIC when using 
> a VLAN setup with more than one VLAN under Xen makes the Dom0 system 
> hard crash. Of course, there might be other causes that I'm not aware 
> of, but to me, this seems to be the most likely explanation right now.
> 
> What I tried:
> -------------
> 
> 1. I changed the VLAN numbers. First to 101, 102, 103 etc. This was when 
> I noticed another strange thing: VLANs with numbers >99 simply don't 
> work on my Raspberry Pi under Debian, with or without Xen. VLAN 99 
> works, VLAN 100 (or everything else >99 that I tried) doesn't work. If I 
> choose a number >99, the VLAN is not configured, "ip a" doesn't list it. 
> Other Debian systems on x64 architecture don't show this behavior, 
> there, it was no problem to set up VLANs > 99. Therefore, I've changed 
> the VLANs to 10, 20, 30 etc., which worked. But it didn't solve the 
> initial problem of the crashing Dom0 and DomUs.
> 
> 2. Different bridge options, without noticable effect:
> bridge_stp off      # dont use STP (spanning tree proto)
> bridge_waitport 0   # dont wait for port to be available
> bridge_fd 0         # no forward delay
> 
> 3. Removing IPv6: No noticable effect.
> 
> 4. Network traffic analysis: Now, here it becomes _really_ strange. I 
> started tcpdumps on Dom0, and depending on on which interface/bridge 
> traffic was logged, the problem went away, meaning, the DomU was running 
> smoothly for hours, even when accessing the zabbix web interface. 
> Stopping the log makes the system crash (as above, after seconds up to 
> 1-2 minutes) reproducably if I access the zabbix web interface.
> 
> Logging enabcm6e4ei0 (NIC): no crashes
> Logging enabcm6e4ei0.10 (VLAN 10): instant crash
> Logging enabcm6e4ei0.20 (VLAN 20): no crashes
> Logging xenbr0 (on VLAN 10): instant crash
> Logging xenbr1 (on VLAN 20): no crashes
> 
> I am clinging to the thought that there must be a rational explanation 
> for why logging the traffic on certain interfaces/bridges should avoid 
> the crash of the complete system, while logging other interfaces/bridges 
> doesn't. I myself can't think of one.
> 
> I checked the dumps of enabcm6e4ei0.10 and xenbr0 (where the system 
> crashes) with wireshark, nothing sticks out to me (but I am really no 
> expert in analyzing network traffic). Dumps can be provided.
> 
> 5. Watchdog: I tried to dig deeper into the cause for the watchdog 
> triggering. However, I didn't find any useful documentation on the web 
> on how the watchdog works or how to enable logging.
> 
> 6. Eliminating Xen as cause: I booted the Debian system (which in Xen 
> setup would be Dom0) without Xen and set it up to use the VLAN 20 bridge 
> (the same that leads to a reboot when using it in the DomU) as primary 
> network interface. Everything seemed to be working, I could download 
> large files from the internet without any problem. Setting up Zabbix on 
> the base Debian system showed that the same setup (VLANs 10 and 20, 
> bridges 1 and 2, using bridge 2 as interface for Zabbix) without Xen is 
> working reliably, no reboots. This points to some Xen related component 
> being the root cause, I think.
> 
> 7. Eliminating Apache as root cause: Reloading the Apache starting page 
> hosted on DomU several times per second didn't lead to a reboot.
> 
> 8. Recompiling Xen: Independent of which Xen master branch version I was 
> using (all 4.18), the behavior was the same. I didn't get Xen working on 
> ARM64/UEFI in version 4.17.
> 
> Current situation:
> ------------------
> 
> I am out of ideas what to do next. Everything that was recommended to me 
> on xen-users didn't lead to significant insight or solve the problem.
> 
> I'd appreciate any hints how to troubleshoot this and/or how to proceed 
> otherwise.

O.k., let's try to break that issue down.

Firstly, how can I get more information on why the Xen watchdog 
triggers? Is there documentation? Are there any logs? I couldn't find 
anything useful with my search skills.

Thanks,

Paul


From xen-devel-bounces@lists.xenproject.org Sun Oct 22 09:38:17 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 22 Oct 2023 09:38:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.620634.966204 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quUuE-0000o0-3Z; Sun, 22 Oct 2023 09:37:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 620634.966204; Sun, 22 Oct 2023 09:37: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 1quUuE-0000nt-0p; Sun, 22 Oct 2023 09:37:58 +0000
Received: by outflank-mailman (input) for mailman id 620634;
 Sun, 22 Oct 2023 09:37: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 1quUuC-0000ni-L2; Sun, 22 Oct 2023 09:37: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 1quUuC-0001fC-Bj; Sun, 22 Oct 2023 09:37: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 1quUuB-0007Yq-Qs; Sun, 22 Oct 2023 09:37:55 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1quUuB-0007YG-QK; Sun, 22 Oct 2023 09:37: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=4ooP4utEexKrMTs38QLJuPn6vxXKvA5fwkpMn4oVh+k=; b=lCGlZzoAc7hih5R5/Rm+BIlC3X
	8TcUYa9/gVU4/KZPJ2S8+1VfNfxaTUEICwrRIeVQcXx/RSq+MtH1fGHAs93xukg72Lydk457JpQgF
	jPgR6cY4PNqEvuxsqttk1nfaf0QCbzV+M/Q6eykaUqOZYSHjhbBzaSIfXn7eKBfxVJBk=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183489-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 183489: tolerable FAIL
X-Osstest-Failures:
    xen-unstable:test-amd64-coresched-i386-xl:guest-localmigrate/x10:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-rtds:guest-start/debian.repeat:fail:heisenbug
    xen-unstable:test-amd64-i386-libvirt-xsm:xen-install:fail:heisenbug
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:guest-start/debianhvm.repeat:fail:heisenbug
    xen-unstable:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:debian-hvm-install:fail:heisenbug
    xen-unstable:test-amd64-i386-libvirt-xsm: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-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-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-i386-xl-pvshim:guest-start: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-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-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-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-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-arndale:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:saverestore-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-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt: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-amd64-i386-libvirt-raw: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-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:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=bad1ac345b1910b820b8a703ad1b9f66412ea844
X-Osstest-Versions-That:
    xen=bad1ac345b1910b820b8a703ad1b9f66412ea844
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sun, 22 Oct 2023 09:37:55 +0000

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

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-amd64-coresched-i386-xl 20 guest-localmigrate/x10 fail in 183453 pass in 183489
 test-armhf-armhf-xl-rtds 18 guest-start/debian.repeat fail in 183453 pass in 183489
 test-amd64-i386-libvirt-xsm   7 xen-install                fail pass in 183453
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 18 guest-start/debianhvm.repeat fail pass in 183453
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 12 debian-hvm-install fail pass in 183453

Tests which did not succeed, but are not blocking:
 test-amd64-i386-libvirt-xsm 15 migrate-support-check fail in 183453 never pass
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183453
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183453
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 183453
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183453
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183453
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 183453
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183453
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 183453
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183453
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183453
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 183453
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183453
 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-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          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-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-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-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-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-amd64-amd64-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-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-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-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          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass

version targeted for testing:
 xen                  bad1ac345b1910b820b8a703ad1b9f66412ea844
baseline version:
 xen                  bad1ac345b1910b820b8a703ad1b9f66412ea844

Last test of basis   183489  2023-10-22 01:51:57 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            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                 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                                  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                                    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 Oct 22 14:14:55 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 22 Oct 2023 14:14:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.620649.966214 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quZE1-0004MC-2D; Sun, 22 Oct 2023 14:14:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 620649.966214; Sun, 22 Oct 2023 14:14: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 1quZE0-0004M5-VE; Sun, 22 Oct 2023 14:14:40 +0000
Received: by outflank-mailman (input) for mailman id 620649;
 Sun, 22 Oct 2023 14:14: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=XLQu=GE=invisiblethingslab.com=marmarek@srs-se1.protection.inumbo.net>)
 id 1quZDz-0004Lz-UM
 for xen-devel@lists.xenproject.org; Sun, 22 Oct 2023 14:14:40 +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 530abefa-70e5-11ee-9b0e-b553b5be7939;
 Sun, 22 Oct 2023 16:14:35 +0200 (CEST)
Received: from compute7.internal (compute7.nyi.internal [10.202.2.48])
 by mailout.nyi.internal (Postfix) with ESMTP id CF8895C03AA
 for <xen-devel@lists.xenproject.org>; Sun, 22 Oct 2023 10:14:33 -0400 (EDT)
Received: from mailfrontend2 ([10.202.2.163])
 by compute7.internal (MEProxy); Sun, 22 Oct 2023 10:14:33 -0400
Received: by mail.messagingengine.com (Postfix) with ESMTPA for
 <xen-devel@lists.xenproject.org>; Sun, 22 Oct 2023 10:14:33 -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: 530abefa-70e5-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
	invisiblethingslab.com; h=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=fm3; t=
	1697984073; x=1698070473; bh=06taFp+Vp84R27lLelcTMDeAJPz5/W+8xYJ
	vQfdEFYg=; b=PwpXjym7xHa4g3mZjYIQepHu4QrygKWiq9M2415qXbVoipVKUSC
	KjqirqB7qkZyXjTk+MfwCap5UK0K/x6tYPNjO/SFTW1daqs8elxouiUTCbf1kidQ
	i4faYPPmqqo26F9vtBfPDD5pW99RjEp6FYcn+s95cULFPgg+VJsTcRS1kehjqFL2
	dHuK0jpbK7MTg4PLRw1hw1Kv6Y8iXTa4jMcG8lrobbnEV9GOI+TZJxL3LqMvFzMa
	ogfv7v8JzQlMprB6ucKHbExIcFGygV9c9+TeBoFFr4K1NvUGGyuwn8Gv06yWQo0s
	SLAUdbA1UcGHVyubMiFg4Snoa3YlXK4T0qw==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
	messagingengine.com; h=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=fm3; t=1697984073; x=1698070473; bh=06taFp+Vp84R2
	7lLelcTMDeAJPz5/W+8xYJvQfdEFYg=; b=hBs1Ss7gzzLGm2rEz/u8nXhzBdzQt
	mz1OCDbdGIC2n2yNFR8wRcL4G+ZNEyvUvNI26cFh06WGizQlZmU4G77rwE9IdUwL
	4fKqwYl4nyt771c0yqsuj737iylScWWsN6UjZk4E6tIHxtLKl2Sw0NmDrEdTK+ZL
	iyUwz0u7uO1IxC9Rs/ysokRcZzyaQIwIfxgacYsra8ff1/2wVKb4AKVQFTRu787f
	XwxjxmwkA4hqvgIA7yKU3uKpMg90ttMkL7enaTm6bSX+idTFFxzlr980py6veSMK
	wCH3BTK0nrKjVuKX0al1Nh8VbD7FpCyC+3O8qJSXJG+Pko8Rh+5hUGiUA==
X-ME-Sender: <xms:SS41ZXoVGzM8mbrAuHPXN39Q51wrGZI7EIUN33KP9oDmLUfHKWPSAQ>
    <xme:SS41ZRrdQfhpt988mgz-ssXkV_rV4OtzkdY75zBiOlFhQb_nQovqzoJprjes_Tu3S
    9AAYkTw6Kij4A>
X-ME-Received: <xmr:SS41ZUPYCDj4hkHb10N2KWH4rB7a6s5LlnnA3GMas2O4-2-X8G9zkykIALSx9ShOPWScCxzyKJEs2QGY_IkBv1UbpCldjsm88VQ>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvkedrkeefgdejgecutefuodetggdotefrodftvf
    curfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfghnecu
    uegrihhlohhuthemuceftddtnecunecujfgurhepfffhvffukfhfgggtuggjsehgtderre
    dttdejnecuhfhrohhmpeforghrvghkucforghrtgiihihkohifshhkihdqifpkrhgvtghk
    ihcuoehmrghrmhgrrhgvkhesihhnvhhishhisghlvghthhhinhhgshhlrggsrdgtohhmqe
    enucggtffrrghtthgvrhhnpeejuddtiedvudelieekveevgefgiedvfefgjeefgfetjeet
    feelieelleeikedtvdenucffohhmrghinhepohhpvghnshhushgvrdhorhhgpdhquhgsvg
    hsqdhoshdrohhrghdpghhithhhuhgsrdgtohhmnecuvehluhhsthgvrhfuihiivgeptden
    ucfrrghrrghmpehmrghilhhfrhhomhepmhgrrhhmrghrvghksehinhhvihhsihgslhgvth
    hhihhnghhslhgrsgdrtghomh
X-ME-Proxy: <xmx:SS41Za6yt4qUIQZKo4h5nGhzn3YLFU0pAk-d8S80KhV093rsz8CeNQ>
    <xmx:SS41ZW4sa_N_w4Au-jIph4K9Mi1P7bzB57Av5jatVbZi3fl0HO_rkg>
    <xmx:SS41ZShb28gdg3VWtdr6s8JkeYEoqpkuoF7ZscBqqnqN2HjvFZ8nEQ>
    <xmx:SS41ZYH1xtXAJ8nwDJaPtoc9UYlHoH7Gjg1SRxXruoXgFvS8hv16aQ>
Feedback-ID: i1568416f:Fastmail
Date: Sun, 22 Oct 2023 16:14:30 +0200
From: Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>
To: xen-devel <xen-devel@lists.xenproject.org>
Subject: Re: NULL pointer dereference in xenbus_thread->...
Message-ID: <ZTUuRj6e5x5xFVqb@mail-itl>
References: <ZO0WrR5J0xuwDIxW@mail-itl>
MIME-Version: 1.0
Content-Type: multipart/signed; micalg=pgp-sha256;
	protocol="application/pgp-signature"; boundary="TdbMmzv9Y12EVP5G"
Content-Disposition: inline
In-Reply-To: <ZO0WrR5J0xuwDIxW@mail-itl>


--TdbMmzv9Y12EVP5G
Content-Type: text/plain; protected-headers=v1; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable
Date: Sun, 22 Oct 2023 16:14:30 +0200
From: Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>
To: xen-devel <xen-devel@lists.xenproject.org>
Subject: Re: NULL pointer dereference in xenbus_thread->...

On Mon, Aug 28, 2023 at 11:50:36PM +0200, Marek Marczykowski-G=C3=B3recki w=
rote:
> Hi,
>=20
> I've noticed in Qubes's CI failure like this:
>=20
> [  871.271292] BUG: kernel NULL pointer dereference, address: 00000000000=
00000
> [  871.275290] #PF: supervisor read access in kernel mode
> [  871.277282] #PF: error_code(0x0000) - not-present page
> [  871.279182] PGD 106fdb067 P4D 106fdb067 PUD 106fdc067 PMD 0=20
> [  871.281071] Oops: 0000 [#1] PREEMPT SMP NOPTI
> [  871.282698] CPU: 1 PID: 28 Comm: xenbus Not tainted 6.1.43-1.qubes.fc3=
7.x86_64 #1
> [  871.285222] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIO=
S rel-1.16.0-0-gd239552-rebuilt.opensuse.org 04/01/2014
> [  871.288883] RIP: e030:__wake_up_common+0x4c/0x180
> [  871.292838] Code: 24 0c 89 4c 24 08 4d 85 c9 74 0a 41 f6 01 04 0f 85 a=
3 00 00 00 48 8b 43 08 4c 8d 40 e8 48 83 c3 08 49 8d 40 18 48 39 c3 74 5b <=
49> 8b 40 18 31 ed 4c 8d 70 e8 45 8b 28 41 f6 c5 04 75 5f 49 8b 40
> [  871.299776] RSP: e02b:ffffc900400f7e10 EFLAGS: 00010082
> [  871.301656] RAX: 0000000000000000 RBX: ffff88810541ce98 RCX: 000000000=
0000000
> [  871.304255] RDX: 0000000000000001 RSI: 0000000000000003 RDI: ffff88810=
541ce90
> [  871.306714] RBP: ffffc900400f0280 R08: ffffffffffffffe8 R09: ffffc9004=
00f7e68
> [  871.309937] R10: 0000000000007ff0 R11: ffff888100ad3000 R12: ffffc9004=
00f7e68
> [  871.312326] R13: 0000000000000000 R14: 0000000000000000 R15: 000000000=
0000000
> [  871.314647] FS:  0000000000000000(0000) GS:ffff88813ff00000(0000) knlG=
S:0000000000000000
> [  871.317677] CS:  10000e030 DS: 0000 ES: 0000 CR0: 0000000080050033
> [  871.319644] CR2: 0000000000000000 CR3: 00000001067fe000 CR4: 000000000=
0040660
> [  871.321973] Call Trace:
> [  871.322782]  <TASK>
> [  871.323494]  ? show_trace_log_lvl+0x1d3/0x2ef
> [  871.324901]  ? show_trace_log_lvl+0x1d3/0x2ef
> [  871.326310]  ? show_trace_log_lvl+0x1d3/0x2ef
> [  871.327721]  ? __wake_up_common_lock+0x82/0xd0
> [  871.329147]  ? __die_body.cold+0x8/0xd
> [  871.330378]  ? page_fault_oops+0x163/0x1a0
> [  871.331691]  ? exc_page_fault+0x70/0x170
> [  871.332946]  ? asm_exc_page_fault+0x22/0x30
> [  871.334454]  ? __wake_up_common+0x4c/0x180
> [  871.335777]  __wake_up_common_lock+0x82/0xd0
> [  871.337183]  ? process_writes+0x240/0x240
> [  871.338461]  process_msg+0x18e/0x2f0
> [  871.339627]  xenbus_thread+0x165/0x1c0
> [  871.340830]  ? cpuusage_read+0x10/0x10
> [  871.342032]  kthread+0xe9/0x110
> [  871.343317]  ? kthread_complete_and_exit+0x20/0x20
> [  871.345020]  ret_from_fork+0x22/0x30
> [  871.346239]  </TASK>
> [  871.347060] Modules linked in: snd_hda_codec_generic ledtrig_audio snd=
_hda_intel snd_intel_dspcfg snd_intel_sdw_acpi snd_hda_codec snd_hda_core s=
nd_hwdep snd_seq snd_seq_device joydev snd_pcm intel_rapl_msr ppdev intel_r=
apl_common snd_timer pcspkr e1000e snd soundcore i2c_piix4 parport_pc parpo=
rt loop fuse xenfs dm_crypt crct10dif_pclmul crc32_pclmul crc32c_intel poly=
val_clmulni polyval_generic floppy ghash_clmulni_intel sha512_ssse3 serio_r=
aw virtio_scsi virtio_console bochs xhci_pci xhci_pci_renesas xhci_hcd qemu=
_fw_cfg drm_vram_helper drm_ttm_helper ttm ata_generic pata_acpi xen_privcm=
d xen_pciback xen_blkback xen_gntalloc xen_gntdev xen_evtchn scsi_dh_rdac s=
csi_dh_emc scsi_dh_alua uinput dm_multipath
> [  871.368892] CR2: 0000000000000000
> [  871.370160] ---[ end trace 0000000000000000 ]---
> [  871.371719] RIP: e030:__wake_up_common+0x4c/0x180
> [  871.373273] Code: 24 0c 89 4c 24 08 4d 85 c9 74 0a 41 f6 01 04 0f 85 a=
3 00 00 00 48 8b 43 08 4c 8d 40 e8 48 83 c3 08 49 8d 40 18 48 39 c3 74 5b <=
49> 8b 40 18 31 ed 4c 8d 70 e8 45 8b 28 41 f6 c5 04 75 5f 49 8b 40
> [  871.379866] RSP: e02b:ffffc900400f7e10 EFLAGS: 00010082
> [  871.381689] RAX: 0000000000000000 RBX: ffff88810541ce98 RCX: 000000000=
0000000
> [  871.383971] RDX: 0000000000000001 RSI: 0000000000000003 RDI: ffff88810=
541ce90
> [  871.386235] RBP: ffffc900400f0280 R08: ffffffffffffffe8 R09: ffffc9004=
00f7e68
> [  871.388521] R10: 0000000000007ff0 R11: ffff888100ad3000 R12: ffffc9004=
00f7e68
> [  871.390789] R13: 0000000000000000 R14: 0000000000000000 R15: 000000000=
0000000
> [  871.393101] FS:  0000000000000000(0000) GS:ffff88813ff00000(0000) knlG=
S:0000000000000000
> [  871.395671] CS:  10000e030 DS: 0000 ES: 0000 CR0: 0000000080050033
> [  871.397863] CR2: 0000000000000000 CR3: 00000001067fe000 CR4: 000000000=
0040660
> [  871.400441] Kernel panic - not syncing: Fatal exception
> [  871.402171] Kernel Offset: disabled
> (XEN) Hardware Dom0 crashed: rebooting machine in 5 seconds.
>=20
> It isn't the first time I see similar crash, but I can't really
> reproduce it reliably. Restarted test usually passes.
> Note this is Xen nested in KVM, so it could very well be some oddity
> about nested virt, although looking at the stack trace, it's unlikely
> and more likely some race condition hit only on slower system.

Recently I've got the same crash on a real system in domU too. And also
on nested on newer kernel 6.1.57 (here it happened in dom0). So, this is
still an issue and affects not only nested case :/

> Unfortunately I don't have symbols for this kernel handy, but there is a
> single wake_up() call in process_writes(), so it shouldn't be an issue.
>=20
> Any ideas?
>=20
> Full log at https://openqa.qubes-os.org/tests/80779/logfile?filename=3Dse=
rial0.txt

More links at https://github.com/QubesOS/qubes-issues/issues/8638,
including more recent stack trace.


--=20
Best Regards,
Marek Marczykowski-G=C3=B3recki
Invisible Things Lab

--TdbMmzv9Y12EVP5G
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQEzBAEBCAAdFiEEhrpukzGPukRmQqkK24/THMrX1ywFAmU1LkYACgkQ24/THMrX
1yx6/Qf7BB4hqrKbO5flbvi8JG5DkYGgXAJvYa3qBwUty96YgIUCA6u8reYm387F
4v/pgIhW9gJLZ4BgB0Lz5qYqKrWbHoeLIG2tvVEDrXVqi1AQh7Q6CDtHwualmbO1
UdUdSSDNNcUZc6x0C3iY+kKi5i0GdYD6sK7IXHMkgt+VcNBDv55LmLR7C6J+/vDZ
OHwVJhobm9FGmKxAS6im9C4oFSz0DEeO/Aa/GO36hEADLyPdJtLoRO7PsaHsKpiG
mei2BM92KWETiSdL8BEiwmwiXwI1n+v5TMncxbhMpN66HawIWsIGpKP1D04NPwfm
//FwBl+tXCvkvrHdNFcZkTd+qMzH/w==
=EvVK
-----END PGP SIGNATURE-----

--TdbMmzv9Y12EVP5G--


From xen-devel-bounces@lists.xenproject.org Sun Oct 22 15:42:05 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 22 Oct 2023 15:42:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.620656.966224 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quaaH-0005LB-D3; Sun, 22 Oct 2023 15:41:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 620656.966224; Sun, 22 Oct 2023 15:41: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 1quaaH-0005L4-9E; Sun, 22 Oct 2023 15:41:45 +0000
Received: by outflank-mailman (input) for mailman id 620656;
 Sun, 22 Oct 2023 15:41: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 1quaaG-0005Ku-Af; Sun, 22 Oct 2023 15:41: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 1quaaF-0001Ql-Rs; Sun, 22 Oct 2023 15:41: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 1quaaF-0007hx-Dh; Sun, 22 Oct 2023 15:41:43 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1quaaF-0004QF-DD; Sun, 22 Oct 2023 15: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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=0Gj0vsQzmFiTE4yrMshLWrcvoDS9AXW+SY9Gd14GvFE=; b=eQLpWxmbUCqcNVjJiKxsgDfx8M
	1I8kMinPJlkJK5V95BHeaqn5Sk6s2YQc9wb5HlTHv3YS3x9T4rAUq2Z3kwbTwvWnjlz3YcqDbDAKR
	OtZQ9riXAIhEWeSaxP5qwjJggSbTfjXkum/TnZSZM5gm60R9mUQ93IGUNr2ZPHTtIups=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183490-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 183490: tolerable FAIL - PUSHED
X-Osstest-Failures:
    linux-linus:test-armhf-armhf-libvirt:xen-boot: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-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-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-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-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-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-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu: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-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-raw:migrate-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-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd: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-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds: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-qcow2:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=1acfd2bd3f0d9dc34ea1871a445c554220945d9f
X-Osstest-Versions-That:
    linux=4d7b04c0cda365f190c4a8f7fddc535b93aae9f9
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sun, 22 Oct 2023 15:41:43 +0000

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

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-armhf-armhf-libvirt      8 xen-boot            fail pass in 183491-retest

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt 16 saverestore-support-check fail in 183491 like 183476
 test-armhf-armhf-libvirt    15 migrate-support-check fail in 183491 never pass
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183476
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183476
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183476
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183476
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183476
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183476
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183476
 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-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-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-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-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-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-amd64-amd64-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-amd64-amd64-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-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-credit2  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-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-qcow2 14 migrate-support-check        fail never pass

version targeted for testing:
 linux                1acfd2bd3f0d9dc34ea1871a445c554220945d9f
baseline version:
 linux                4d7b04c0cda365f190c4a8f7fddc535b93aae9f9

Last test of basis   183476  2023-10-21 18:15:19 Z    0 days
Testing same since   183490  2023-10-22 03:30:53 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrea Righi <andrea.righi@canonical.com>
  Andy Shevchenko <andriy.shevchenko@linux.intel.com>
  Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
  Benno Lossin <benno.lossin@proton.me>
  Christophe Leroy <christophe.leroy@csgroup.eu>
  Dmitry Safonov <0x7f454c46@gmail.com>
  Francis Laniel <flaniel@linux.microsoft.com>
  Gary Guo <gary@garyguo.net>
  Haibo Chen <haibo.chen@nxp.com>
  Linus Torvalds <torvalds@linux-foundation.org>
  Manmohan Shukla <manmshuk@gmail.com>
  Masami Hiramatsu (Google) <mhiramat@kernel.org>
  Michael Ellerman <mpe@ellerman.id.au>
  Miguel Ojeda <ojeda@kernel.org>
  Nicholas Piggin <npiggin@gmail.com>
  Peter Zijlstra (Intel) <peterz@infradead.org>
  Peter Zijlstra <peterz@infradead.org>
  Sachin Sant <sachinp@linux.ibm.com>
  Shrikanth Hegde <sshegde@linux.vnet.ibm.com>
  Wedson Almeida Filho <walmeida@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-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
   4d7b04c0cda3..1acfd2bd3f0d  1acfd2bd3f0d9dc34ea1871a445c554220945d9f -> tested/linux-linus


From xen-devel-bounces@lists.xenproject.org Sun Oct 22 15:53:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 22 Oct 2023 15:53:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.620667.966283 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qualy-0007z3-Ie; Sun, 22 Oct 2023 15:53:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 620667.966283; Sun, 22 Oct 2023 15: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 1qualy-0007yb-62; Sun, 22 Oct 2023 15:53:50 +0000
Received: by outflank-mailman (input) for mailman id 620667;
 Sun, 22 Oct 2023 15: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=zZR7=GE=casper.srs.infradead.org=BATV+88d8721f4af1339c2fab+7364+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qualw-0007Cq-S6
 for xen-devel@lists.xenproject.org; Sun, 22 Oct 2023 15:53:48 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 2d261ffa-70f3-11ee-9b0e-b553b5be7939;
 Sun, 22 Oct 2023 17:53:44 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1quakJ-008TGU-Gp; Sun, 22 Oct 2023 15:52:07 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1quakI-001qZR-1q; Sun, 22 Oct 2023 16:52:06 +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
X-Inumbo-ID: 2d261ffa-70f3-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=ZVsyEacZEPo9v+IdyFxa1vXiELDpVwrjFPgVgSsBPjo=; b=BnpKw0aGF9RE8oqIh+1zerFI2O
	i2TeYnOG/6eq5NNZFZl91siM/I5XWWsFZRW2Hcx1rzj/lkefeQUTW/zoGtBpuL40ZcWjDJwPi1J+j
	QfMrHR8GaM6s4n79Bpw53eqaG8GsdBqWzxoT0KBKD8HiBg+Ld/IMSgQnO7Auo/rxCqKFiKWkWDyEv
	vAPT7N3t2Vj1QVlqTUIiKEJCXD3SrL0cVAfQ8Ivyxcsg2iRKwe+PlvXpwPWm9E/2WDx5hZ6HVulRe
	hY+qBA00V2aEatxie5CHJYSn13wZGqxMQWelAUyKkhM3mebuo+3Qwrfqo9D9c9X8O0R5nL0JCOdt7
	YaCU9giA==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Richard Henderson <richard.henderson@linaro.org>,
	Beniamino Galvani <b.galvani@gmail.com>,
	Peter Maydell <peter.maydell@linaro.org>,
	Strahinja Jankovic <strahinja.p.jankovic@gmail.com>,
	Niek Linnenbank <nieklinnenbank@gmail.com>,
	=?UTF-8?q?C=C3=A9dric=20Le=20Goater?= <clg@kaod.org>,
	Andrew Jeffery <andrew@aj.id.au>,
	Joel Stanley <joel@jms.id.au>,
	Igor Mitsyanko <i.mitsyanko@gmail.com>,
	Jean-Christophe Dubois <jcd@tribudubois.net>,
	Andrey Smirnov <andrew.smirnov@gmail.com>,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
	Rob Herring <robh@kernel.org>,
	Subbaraya Sundeep <sundeep.lkml@gmail.com>,
	Jan Kiszka <jan.kiszka@web.de>,
	Tyrone Ting <kfting@nuvoton.com>,
	Hao Wu <wuhaotsh@google.com>,
	Radoslaw Biernacki <rad@semihalf.com>,
	Leif Lindholm <quic_llindhol@quicinc.com>,
	Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>,
	"Edgar E. Iglesias" <edgar.iglesias@gmail.com>,
	Alistair Francis <alistair@alistair23.me>,
	Helge Deller <deller@gmx.de>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Eduardo Habkost <eduardo@habkost.net>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Song Gao <gaosong@loongson.cn>,
	Thomas Huth <huth@tuxfamily.org>,
	Laurent Vivier <laurent@vivier.eu>,
	Huacai Chen <chenhuacai@kernel.org>,
	Jiaxun Yang <jiaxun.yang@flygoat.com>,
	=?UTF-8?q?Herv=C3=A9=20Poussineau?= <hpoussin@reactos.org>,
	Aleksandar Rikalo <aleksandar.rikalo@syrmia.com>,
	Aurelien Jarno <aurelien@aurel32.net>,
	Jason Wang <jasowang@redhat.com>,
	Jia Liu <proljc@gmail.com>,
	Stafford Horne <shorne@gmail.com>,
	Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>,
	Nicholas Piggin <npiggin@gmail.com>,
	Daniel Henrique Barboza <danielhb413@gmail.com>,
	David Gibson <david@gibson.dropbear.id.au>,
	Harsh Prateek Bora <harshpb@linux.ibm.com>,
	Bin Meng <bin.meng@windriver.com>,
	Palmer Dabbelt <palmer@dabbelt.com>,
	Weiwei Li <liweiwei@iscas.ac.cn>,
	Liu Zhiwei <zhiwei_liu@linux.alibaba.com>,
	David Hildenbrand <david@redhat.com>,
	Ilya Leoshkevich <iii@linux.ibm.com>,
	Halil Pasic <pasic@linux.ibm.com>,
	Christian Borntraeger <borntraeger@linux.ibm.com>,
	Eric Farman <farman@linux.ibm.com>,
	Yoshinori Sato <ysato@users.sourceforge.jp>,
	Magnus Damm <magnus.damm@gmail.com>,
	Artyom Tarasenko <atar4qemu@gmail.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	Max Filippov <jcmvbkbc@gmail.com>,
	qemu-arm@nongnu.org,
	qemu-ppc@nongnu.org,
	qemu-riscv@nongnu.org,
	qemu-s390x@nongnu.org,
	xen-devel@lists.xenproject.org
Subject: [PATCH 18/45] hw/sh4/r2d: use pci_init_nic_devices()
Date: Sun, 22 Oct 2023 16:51:33 +0100
Message-Id: <20231022155200.436340-19-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231022155200.436340-1-dwmw2@infradead.org>
References: <20231022155200.436340-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

Previously, the first PCI NIC would be assigned to slot 2 even if the
user override the model and made it something other than an rtl8139
which is the default. Everything else would be dynamically assigned.

Now, the first rtl8139 gets slot 2 and everything else is dynamic.

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 hw/sh4/r2d.c | 6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

diff --git a/hw/sh4/r2d.c b/hw/sh4/r2d.c
index 4944994e9c..e9f316a6ce 100644
--- a/hw/sh4/r2d.c
+++ b/hw/sh4/r2d.c
@@ -240,7 +240,6 @@ static void r2d_init(MachineState *machine)
     MemoryRegion *sdram = g_new(MemoryRegion, 1);
     qemu_irq *irq;
     DriveInfo *dinfo;
-    int i;
     DeviceState *dev;
     SysBusDevice *busdev;
     MemoryRegion *address_space_mem = get_system_memory();
@@ -309,9 +308,8 @@ static void r2d_init(MachineState *machine)
                           0x555, 0x2aa, 0);
 
     /* NIC: rtl8139 on-board, and 2 slots. */
-    for (i = 0; i < nb_nics; i++)
-        pci_nic_init_nofail(&nd_table[i], pci_bus,
-                            mc->default_nic, i == 0 ? "2" : NULL);
+    pci_init_nic_in_slot(pci_bus, mc->default_nic, NULL, "2");
+    pci_init_nic_devices(pci_bus, mc->default_nic);
 
     /* USB keyboard */
     usb_create_simple(usb_bus_find(-1), "usb-kbd");
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Sun Oct 22 15:53:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 22 Oct 2023 15:53:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.620666.966278 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qualy-0007vt-6w; Sun, 22 Oct 2023 15:53:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 620666.966278; Sun, 22 Oct 2023 15: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 1qualx-0007v8-Tg; Sun, 22 Oct 2023 15:53:49 +0000
Received: by outflank-mailman (input) for mailman id 620666;
 Sun, 22 Oct 2023 15:53: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=zZR7=GE=casper.srs.infradead.org=BATV+88d8721f4af1339c2fab+7364+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qualw-0006wY-JJ
 for xen-devel@lists.xenproject.org; Sun, 22 Oct 2023 15:53:48 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 2e07923c-70f3-11ee-98d5-6d05b1d4d9a1;
 Sun, 22 Oct 2023 17:53:44 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1quakJ-008TGT-9k; Sun, 22 Oct 2023 15:52:07 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1quakI-001qZf-2u; Sun, 22 Oct 2023 16:52:06 +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
X-Inumbo-ID: 2e07923c-70f3-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=HOx5IwxtS1QVSZAtDVm2t9NNNk95b57VMhnZXGvMKg0=; b=rv55j5Z641+WrDbx2SDJ+G8W45
	ThK6O4QWd2R0tV3yylW9YX1BXTxHa+mzeJkXR3A3lKH0df493zAkJ57mL6jU/7u3XoKA1fJ5J6RbG
	JVvj656r/q0nxqtOFKzVdvDWQLWqjkAcRuTaBBUudP4j+dIWu7mbkjlrsTtBW3YC+wKLwA3RTjIaD
	v49jTAZqT73USsFXBw5JEDBBkzdTGKOoJ3DfDPDL5PzhuC0Gw9+A4MMSb8zqN5msTNe7q+nFcnLq0
	d4hOSSRteS05EP/2apLcmjh0HV0eP6CmINCKAM1M9gvQb1cAGRkkK+EO2RPDbPza9dZ054UgstUPg
	EHKEbNRQ==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Richard Henderson <richard.henderson@linaro.org>,
	Beniamino Galvani <b.galvani@gmail.com>,
	Peter Maydell <peter.maydell@linaro.org>,
	Strahinja Jankovic <strahinja.p.jankovic@gmail.com>,
	Niek Linnenbank <nieklinnenbank@gmail.com>,
	=?UTF-8?q?C=C3=A9dric=20Le=20Goater?= <clg@kaod.org>,
	Andrew Jeffery <andrew@aj.id.au>,
	Joel Stanley <joel@jms.id.au>,
	Igor Mitsyanko <i.mitsyanko@gmail.com>,
	Jean-Christophe Dubois <jcd@tribudubois.net>,
	Andrey Smirnov <andrew.smirnov@gmail.com>,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
	Rob Herring <robh@kernel.org>,
	Subbaraya Sundeep <sundeep.lkml@gmail.com>,
	Jan Kiszka <jan.kiszka@web.de>,
	Tyrone Ting <kfting@nuvoton.com>,
	Hao Wu <wuhaotsh@google.com>,
	Radoslaw Biernacki <rad@semihalf.com>,
	Leif Lindholm <quic_llindhol@quicinc.com>,
	Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>,
	"Edgar E. Iglesias" <edgar.iglesias@gmail.com>,
	Alistair Francis <alistair@alistair23.me>,
	Helge Deller <deller@gmx.de>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Eduardo Habkost <eduardo@habkost.net>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Song Gao <gaosong@loongson.cn>,
	Thomas Huth <huth@tuxfamily.org>,
	Laurent Vivier <laurent@vivier.eu>,
	Huacai Chen <chenhuacai@kernel.org>,
	Jiaxun Yang <jiaxun.yang@flygoat.com>,
	=?UTF-8?q?Herv=C3=A9=20Poussineau?= <hpoussin@reactos.org>,
	Aleksandar Rikalo <aleksandar.rikalo@syrmia.com>,
	Aurelien Jarno <aurelien@aurel32.net>,
	Jason Wang <jasowang@redhat.com>,
	Jia Liu <proljc@gmail.com>,
	Stafford Horne <shorne@gmail.com>,
	Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>,
	Nicholas Piggin <npiggin@gmail.com>,
	Daniel Henrique Barboza <danielhb413@gmail.com>,
	David Gibson <david@gibson.dropbear.id.au>,
	Harsh Prateek Bora <harshpb@linux.ibm.com>,
	Bin Meng <bin.meng@windriver.com>,
	Palmer Dabbelt <palmer@dabbelt.com>,
	Weiwei Li <liweiwei@iscas.ac.cn>,
	Liu Zhiwei <zhiwei_liu@linux.alibaba.com>,
	David Hildenbrand <david@redhat.com>,
	Ilya Leoshkevich <iii@linux.ibm.com>,
	Halil Pasic <pasic@linux.ibm.com>,
	Christian Borntraeger <borntraeger@linux.ibm.com>,
	Eric Farman <farman@linux.ibm.com>,
	Yoshinori Sato <ysato@users.sourceforge.jp>,
	Magnus Damm <magnus.damm@gmail.com>,
	Artyom Tarasenko <atar4qemu@gmail.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	Max Filippov <jcmvbkbc@gmail.com>,
	qemu-arm@nongnu.org,
	qemu-ppc@nongnu.org,
	qemu-riscv@nongnu.org,
	qemu-s390x@nongnu.org,
	xen-devel@lists.xenproject.org
Subject: [PATCH 21/45] hw/arm/allwinner: use qemu_configure_nic_device()
Date: Sun, 22 Oct 2023 16:51:36 +0100
Message-Id: <20231022155200.436340-22-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231022155200.436340-1-dwmw2@infradead.org>
References: <20231022155200.436340-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 hw/arm/allwinner-a10.c |  6 +-----
 hw/arm/allwinner-h3.c  |  6 +-----
 hw/arm/allwinner-r40.c | 27 ++-------------------------
 3 files changed, 4 insertions(+), 35 deletions(-)

diff --git a/hw/arm/allwinner-a10.c b/hw/arm/allwinner-a10.c
index b0ea3f7f66..57f52871ec 100644
--- a/hw/arm/allwinner-a10.c
+++ b/hw/arm/allwinner-a10.c
@@ -142,11 +142,7 @@ static void aw_a10_realize(DeviceState *dev, Error **errp)
     sysbus_realize(SYS_BUS_DEVICE(&s->dramc), &error_fatal);
     sysbus_mmio_map(SYS_BUS_DEVICE(&s->dramc), 0, AW_A10_DRAMC_BASE);
 
-    /* FIXME use qdev NIC properties instead of nd_table[] */
-    if (nd_table[0].used) {
-        qemu_check_nic_model(&nd_table[0], TYPE_AW_EMAC);
-        qdev_set_nic_properties(DEVICE(&s->emac), &nd_table[0]);
-    }
+    qemu_configure_nic_device(DEVICE(&s->emac), true, NULL);
     if (!sysbus_realize(SYS_BUS_DEVICE(&s->emac), errp)) {
         return;
     }
diff --git a/hw/arm/allwinner-h3.c b/hw/arm/allwinner-h3.c
index f05afddf7e..4f102ad082 100644
--- a/hw/arm/allwinner-h3.c
+++ b/hw/arm/allwinner-h3.c
@@ -369,11 +369,7 @@ static void allwinner_h3_realize(DeviceState *dev, Error **errp)
                               "sd-bus");
 
     /* EMAC */
-    /* FIXME use qdev NIC properties instead of nd_table[] */
-    if (nd_table[0].used) {
-        qemu_check_nic_model(&nd_table[0], TYPE_AW_SUN8I_EMAC);
-        qdev_set_nic_properties(DEVICE(&s->emac), &nd_table[0]);
-    }
+    qemu_configure_nic_device(DEVICE(&s->emac), true, NULL);
     object_property_set_link(OBJECT(&s->emac), "dma-memory",
                              OBJECT(get_system_memory()), &error_fatal);
     sysbus_realize(SYS_BUS_DEVICE(&s->emac), &error_fatal);
diff --git a/hw/arm/allwinner-r40.c b/hw/arm/allwinner-r40.c
index a0d367c60d..4d5661b014 100644
--- a/hw/arm/allwinner-r40.c
+++ b/hw/arm/allwinner-r40.c
@@ -294,7 +294,6 @@ static void allwinner_r40_init(Object *obj)
 
 static void allwinner_r40_realize(DeviceState *dev, Error **errp)
 {
-    const char *r40_nic_models[] = { "gmac", "emac", NULL };
     AwR40State *s = AW_R40(dev);
 
     /* CPUs */
@@ -454,31 +453,8 @@ static void allwinner_r40_realize(DeviceState *dev, Error **errp)
     sysbus_mmio_map(SYS_BUS_DEVICE(&s->dramc), 2,
                     s->memmap[AW_R40_DEV_DRAMPHY]);
 
-    /* nic support gmac and emac */
-    for (int i = 0; i < ARRAY_SIZE(r40_nic_models) - 1; i++) {
-        NICInfo *nic = &nd_table[i];
-
-        if (!nic->used) {
-            continue;
-        }
-        if (qemu_show_nic_models(nic->model, r40_nic_models)) {
-            exit(0);
-        }
-
-        switch (qemu_find_nic_model(nic, r40_nic_models, r40_nic_models[0])) {
-        case 0: /* gmac */
-            qdev_set_nic_properties(DEVICE(&s->gmac), nic);
-            break;
-        case 1: /* emac */
-            qdev_set_nic_properties(DEVICE(&s->emac), nic);
-            break;
-        default:
-            exit(1);
-            break;
-        }
-    }
-
     /* GMAC */
+    qemu_configure_nic_device(DEVICE(&s->gmac), true, "gmac");
     object_property_set_link(OBJECT(&s->gmac), "dma-memory",
                                      OBJECT(get_system_memory()), &error_fatal);
     sysbus_realize(SYS_BUS_DEVICE(&s->gmac), &error_fatal);
@@ -487,6 +463,7 @@ static void allwinner_r40_realize(DeviceState *dev, Error **errp)
                        qdev_get_gpio_in(DEVICE(&s->gic), AW_R40_GIC_SPI_GMAC));
 
     /* EMAC */
+    qemu_configure_nic_device(DEVICE(&s->emac), true, "emac");
     sysbus_realize(SYS_BUS_DEVICE(&s->emac), &error_fatal);
     sysbus_mmio_map(SYS_BUS_DEVICE(&s->emac), 0, s->memmap[AW_R40_DEV_EMAC]);
     sysbus_connect_irq(SYS_BUS_DEVICE(&s->emac), 0,
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Sun Oct 22 15:53:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 22 Oct 2023 15:53:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.620661.966233 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qualu-0006wq-FE; Sun, 22 Oct 2023 15:53:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 620661.966233; Sun, 22 Oct 2023 15:53: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 1qualu-0006wj-CS; Sun, 22 Oct 2023 15:53:46 +0000
Received: by outflank-mailman (input) for mailman id 620661;
 Sun, 22 Oct 2023 15:53: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=zZR7=GE=casper.srs.infradead.org=BATV+88d8721f4af1339c2fab+7364+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1quals-0006wY-V7
 for xen-devel@lists.xenproject.org; Sun, 22 Oct 2023 15:53:45 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 2d320327-70f3-11ee-98d5-6d05b1d4d9a1;
 Sun, 22 Oct 2023 17:53:43 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1quakL-008TGt-DF; Sun, 22 Oct 2023 15:52:09 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1quakK-001qau-1b; Sun, 22 Oct 2023 16:52:08 +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
X-Inumbo-ID: 2d320327-70f3-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=Ej3LKCNGH6R7gA1YUwsQNgVAJx3y6GAdEng2TtdyRY8=; b=YRrUXHCFp/2EjyZhhg74ig3d9C
	VAklLPOmMqY1AU+lDxqrSZTVBKGUJq2TG/BsOhy5Mn9XbOPcVYAiatMRLrVQjGSN/Gt+07BnrKXQO
	j7CwSZi/mhHFAiWSOSq6/j9m5DOSQ7ktt3tauggh/4Jy26HTYVGZaCEZC28LEcgjeU0QVSr3x42UP
	awJVA5TRKzvTrvUm3WhXMoUgMHIelOzFLk4H9vCAMOcm58pmlEOz6naKekM6xSFMQc0lpOSlbnUhD
	oeH4GaaPLjCquXs9sZfwjgGow/7iyFJHYe7fLTBAUDR82UOQXNFjE32U16Q4LOERmXlswbGhZ/+5G
	tQn9ORvQ==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Richard Henderson <richard.henderson@linaro.org>,
	Beniamino Galvani <b.galvani@gmail.com>,
	Peter Maydell <peter.maydell@linaro.org>,
	Strahinja Jankovic <strahinja.p.jankovic@gmail.com>,
	Niek Linnenbank <nieklinnenbank@gmail.com>,
	=?UTF-8?q?C=C3=A9dric=20Le=20Goater?= <clg@kaod.org>,
	Andrew Jeffery <andrew@aj.id.au>,
	Joel Stanley <joel@jms.id.au>,
	Igor Mitsyanko <i.mitsyanko@gmail.com>,
	Jean-Christophe Dubois <jcd@tribudubois.net>,
	Andrey Smirnov <andrew.smirnov@gmail.com>,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
	Rob Herring <robh@kernel.org>,
	Subbaraya Sundeep <sundeep.lkml@gmail.com>,
	Jan Kiszka <jan.kiszka@web.de>,
	Tyrone Ting <kfting@nuvoton.com>,
	Hao Wu <wuhaotsh@google.com>,
	Radoslaw Biernacki <rad@semihalf.com>,
	Leif Lindholm <quic_llindhol@quicinc.com>,
	Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>,
	"Edgar E. Iglesias" <edgar.iglesias@gmail.com>,
	Alistair Francis <alistair@alistair23.me>,
	Helge Deller <deller@gmx.de>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Eduardo Habkost <eduardo@habkost.net>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Song Gao <gaosong@loongson.cn>,
	Thomas Huth <huth@tuxfamily.org>,
	Laurent Vivier <laurent@vivier.eu>,
	Huacai Chen <chenhuacai@kernel.org>,
	Jiaxun Yang <jiaxun.yang@flygoat.com>,
	=?UTF-8?q?Herv=C3=A9=20Poussineau?= <hpoussin@reactos.org>,
	Aleksandar Rikalo <aleksandar.rikalo@syrmia.com>,
	Aurelien Jarno <aurelien@aurel32.net>,
	Jason Wang <jasowang@redhat.com>,
	Jia Liu <proljc@gmail.com>,
	Stafford Horne <shorne@gmail.com>,
	Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>,
	Nicholas Piggin <npiggin@gmail.com>,
	Daniel Henrique Barboza <danielhb413@gmail.com>,
	David Gibson <david@gibson.dropbear.id.au>,
	Harsh Prateek Bora <harshpb@linux.ibm.com>,
	Bin Meng <bin.meng@windriver.com>,
	Palmer Dabbelt <palmer@dabbelt.com>,
	Weiwei Li <liweiwei@iscas.ac.cn>,
	Liu Zhiwei <zhiwei_liu@linux.alibaba.com>,
	David Hildenbrand <david@redhat.com>,
	Ilya Leoshkevich <iii@linux.ibm.com>,
	Halil Pasic <pasic@linux.ibm.com>,
	Christian Borntraeger <borntraeger@linux.ibm.com>,
	Eric Farman <farman@linux.ibm.com>,
	Yoshinori Sato <ysato@users.sourceforge.jp>,
	Magnus Damm <magnus.damm@gmail.com>,
	Artyom Tarasenko <atar4qemu@gmail.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	Max Filippov <jcmvbkbc@gmail.com>,
	qemu-arm@nongnu.org,
	qemu-ppc@nongnu.org,
	qemu-riscv@nongnu.org,
	qemu-s390x@nongnu.org,
	xen-devel@lists.xenproject.org
Subject: [PATCH 38/45] hw/riscv: use qemu_configure_nic_device()
Date: Sun, 22 Oct 2023 16:51:53 +0100
Message-Id: <20231022155200.436340-39-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231022155200.436340-1-dwmw2@infradead.org>
References: <20231022155200.436340-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 hw/riscv/microchip_pfsoc.c | 13 ++-----------
 hw/riscv/sifive_u.c        |  7 +------
 2 files changed, 3 insertions(+), 17 deletions(-)

diff --git a/hw/riscv/microchip_pfsoc.c b/hw/riscv/microchip_pfsoc.c
index b775aa8946..8e0e3aa20c 100644
--- a/hw/riscv/microchip_pfsoc.c
+++ b/hw/riscv/microchip_pfsoc.c
@@ -411,17 +411,8 @@ static void microchip_pfsoc_soc_realize(DeviceState *dev, Error **errp)
         memmap[MICROCHIP_PFSOC_USB].size);
 
     /* GEMs */
-
-    nd = &nd_table[0];
-    if (nd->used) {
-        qemu_check_nic_model(nd, TYPE_CADENCE_GEM);
-        qdev_set_nic_properties(DEVICE(&s->gem0), nd);
-    }
-    nd = &nd_table[1];
-    if (nd->used) {
-        qemu_check_nic_model(nd, TYPE_CADENCE_GEM);
-        qdev_set_nic_properties(DEVICE(&s->gem1), nd);
-    }
+    qemu_configure_nic_device(DEVICE(&s->gem0), true, NULL);
+    qemu_configure_nic_device(DEVICE(&s->gem1), true, NULL);
 
     object_property_set_int(OBJECT(&s->gem0), "revision", GEM_REVISION, errp);
     object_property_set_int(OBJECT(&s->gem0), "phy-addr", 8, errp);
diff --git a/hw/riscv/sifive_u.c b/hw/riscv/sifive_u.c
index ec76dce6c9..5207ec1fa5 100644
--- a/hw/riscv/sifive_u.c
+++ b/hw/riscv/sifive_u.c
@@ -789,7 +789,6 @@ static void sifive_u_soc_realize(DeviceState *dev, Error **errp)
     MemoryRegion *l2lim_mem = g_new(MemoryRegion, 1);
     char *plic_hart_config;
     int i, j;
-    NICInfo *nd = &nd_table[0];
 
     qdev_prop_set_uint32(DEVICE(&s->u_cpus), "num-harts", ms->smp.cpus - 1);
     qdev_prop_set_uint32(DEVICE(&s->u_cpus), "hartid-base", 1);
@@ -893,11 +892,7 @@ static void sifive_u_soc_realize(DeviceState *dev, Error **errp)
     }
     sysbus_mmio_map(SYS_BUS_DEVICE(&s->otp), 0, memmap[SIFIVE_U_DEV_OTP].base);
 
-    /* FIXME use qdev NIC properties instead of nd_table[] */
-    if (nd->used) {
-        qemu_check_nic_model(nd, TYPE_CADENCE_GEM);
-        qdev_set_nic_properties(DEVICE(&s->gem), nd);
-    }
+    qemu_configure_nic_device(DEVICE(&s->gem), true, NULL);
     object_property_set_int(OBJECT(&s->gem), "revision", GEM_REVISION,
                             &error_abort);
     if (!sysbus_realize(SYS_BUS_DEVICE(&s->gem), errp)) {
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Sun Oct 22 15:53:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 22 Oct 2023 15:53:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.620664.966256 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qualw-0007MF-Gb; Sun, 22 Oct 2023 15:53:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 620664.966256; Sun, 22 Oct 2023 15:53: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 1qualw-0007Lh-A3; Sun, 22 Oct 2023 15:53:48 +0000
Received: by outflank-mailman (input) for mailman id 620664;
 Sun, 22 Oct 2023 15:53: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=zZR7=GE=casper.srs.infradead.org=BATV+88d8721f4af1339c2fab+7364+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qualv-0006wY-J2
 for xen-devel@lists.xenproject.org; Sun, 22 Oct 2023 15:53:47 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 2db5caee-70f3-11ee-98d5-6d05b1d4d9a1;
 Sun, 22 Oct 2023 17:53:44 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1quakI-008TGM-En; Sun, 22 Oct 2023 15:52:06 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1quakH-001qYj-16; Sun, 22 Oct 2023 16:52:05 +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
X-Inumbo-ID: 2db5caee-70f3-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=350z0rMMun2JRDk6OAEQdA+JsY37n82We01MlpWX5pg=; b=ImWsx5WrIr08Ag7fyqW0t8hzmN
	4SkNQT2tb8YkKezRdD2dJt0hInj/BqQCINRbuKRji9Xb5NS3sdcXUz+YqeRqKaeWK9OCqNiWqJmbs
	TC2f/iS/MJGY7BpqVqcigjPcWAWdzROV2yXQR8NkJ+abvMmdnjFur3vHnNyLtFj+2lRivWY37WdhS
	6aCExMkok6D0szWPv7/X0vBDWvtDPInnSQ06A0m3fGu4dcX7bnNkCt00w1V5ve8JFPyNV+EnHN/iX
	CuGRG9eA1kzR/zyE7+/f+FllC9ON2Tg3VMifjng9c5d9xgO7dt6xAYHunYI06RCke6vyO35pOG1h8
	E7GiuGzw==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Richard Henderson <richard.henderson@linaro.org>,
	Beniamino Galvani <b.galvani@gmail.com>,
	Peter Maydell <peter.maydell@linaro.org>,
	Strahinja Jankovic <strahinja.p.jankovic@gmail.com>,
	Niek Linnenbank <nieklinnenbank@gmail.com>,
	=?UTF-8?q?C=C3=A9dric=20Le=20Goater?= <clg@kaod.org>,
	Andrew Jeffery <andrew@aj.id.au>,
	Joel Stanley <joel@jms.id.au>,
	Igor Mitsyanko <i.mitsyanko@gmail.com>,
	Jean-Christophe Dubois <jcd@tribudubois.net>,
	Andrey Smirnov <andrew.smirnov@gmail.com>,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
	Rob Herring <robh@kernel.org>,
	Subbaraya Sundeep <sundeep.lkml@gmail.com>,
	Jan Kiszka <jan.kiszka@web.de>,
	Tyrone Ting <kfting@nuvoton.com>,
	Hao Wu <wuhaotsh@google.com>,
	Radoslaw Biernacki <rad@semihalf.com>,
	Leif Lindholm <quic_llindhol@quicinc.com>,
	Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>,
	"Edgar E. Iglesias" <edgar.iglesias@gmail.com>,
	Alistair Francis <alistair@alistair23.me>,
	Helge Deller <deller@gmx.de>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Eduardo Habkost <eduardo@habkost.net>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Song Gao <gaosong@loongson.cn>,
	Thomas Huth <huth@tuxfamily.org>,
	Laurent Vivier <laurent@vivier.eu>,
	Huacai Chen <chenhuacai@kernel.org>,
	Jiaxun Yang <jiaxun.yang@flygoat.com>,
	=?UTF-8?q?Herv=C3=A9=20Poussineau?= <hpoussin@reactos.org>,
	Aleksandar Rikalo <aleksandar.rikalo@syrmia.com>,
	Aurelien Jarno <aurelien@aurel32.net>,
	Jason Wang <jasowang@redhat.com>,
	Jia Liu <proljc@gmail.com>,
	Stafford Horne <shorne@gmail.com>,
	Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>,
	Nicholas Piggin <npiggin@gmail.com>,
	Daniel Henrique Barboza <danielhb413@gmail.com>,
	David Gibson <david@gibson.dropbear.id.au>,
	Harsh Prateek Bora <harshpb@linux.ibm.com>,
	Bin Meng <bin.meng@windriver.com>,
	Palmer Dabbelt <palmer@dabbelt.com>,
	Weiwei Li <liweiwei@iscas.ac.cn>,
	Liu Zhiwei <zhiwei_liu@linux.alibaba.com>,
	David Hildenbrand <david@redhat.com>,
	Ilya Leoshkevich <iii@linux.ibm.com>,
	Halil Pasic <pasic@linux.ibm.com>,
	Christian Borntraeger <borntraeger@linux.ibm.com>,
	Eric Farman <farman@linux.ibm.com>,
	Yoshinori Sato <ysato@users.sourceforge.jp>,
	Magnus Damm <magnus.damm@gmail.com>,
	Artyom Tarasenko <atar4qemu@gmail.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	Max Filippov <jcmvbkbc@gmail.com>,
	qemu-arm@nongnu.org,
	qemu-ppc@nongnu.org,
	qemu-riscv@nongnu.org,
	qemu-s390x@nongnu.org,
	xen-devel@lists.xenproject.org
Subject: [PATCH 08/45] hw/arm/sbsa-ref: use pci_init_nic_devices()
Date: Sun, 22 Oct 2023 16:51:23 +0100
Message-Id: <20231022155200.436340-9-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231022155200.436340-1-dwmw2@infradead.org>
References: <20231022155200.436340-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 hw/arm/sbsa-ref.c | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

diff --git a/hw/arm/sbsa-ref.c b/hw/arm/sbsa-ref.c
index 3c7dfcd6dc..582a28ce92 100644
--- a/hw/arm/sbsa-ref.c
+++ b/hw/arm/sbsa-ref.c
@@ -691,9 +691,7 @@ static void create_pcie(SBSAMachineState *sms)
 
     pci = PCI_HOST_BRIDGE(dev);
     if (pci->bus) {
-        for (i = 0; i < nb_nics; i++) {
-            pci_nic_init_nofail(&nd_table[i], pci->bus, mc->default_nic, NULL);
-        }
+        pci_init_nic_devices(pci->bus, mc->default_nic);
     }
 
     pci_create_simple(pci->bus, -1, "bochs-display");
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Sun Oct 22 15:53:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 22 Oct 2023 15:53:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.620665.966273 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qualx-0007t6-Q6; Sun, 22 Oct 2023 15:53:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 620665.966273; Sun, 22 Oct 2023 15: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 1qualx-0007rf-KF; Sun, 22 Oct 2023 15:53:49 +0000
Received: by outflank-mailman (input) for mailman id 620665;
 Sun, 22 Oct 2023 15: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=zZR7=GE=casper.srs.infradead.org=BATV+88d8721f4af1339c2fab+7364+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qualw-0007Cq-6T
 for xen-devel@lists.xenproject.org; Sun, 22 Oct 2023 15:53:48 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 2cea58ba-70f3-11ee-9b0e-b553b5be7939;
 Sun, 22 Oct 2023 17:53:44 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1quakL-008TGq-DL; Sun, 22 Oct 2023 15:52:09 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1quakK-001qap-1B; Sun, 22 Oct 2023 16:52:08 +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
X-Inumbo-ID: 2cea58ba-70f3-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=hC+8OBLQ6TWPZEybs0lVPrKizh4726sFY9u4hhRhbIY=; b=fDPPVNgKahIXw2sWosyOS59B6U
	aezjPTyZg5+fu5TplWvw6F75WoG6fhRhbhZo1tvgknB8gYmGw4BH5gqwZ1FSJ7xGNQXfgAjX5RMNw
	nbosUg8Rp1mLUvZjTqpkM0EHKwUy0mSfSCGcRoVYyA6oNfZCv04l1UV+mFHxifHvTDhQJYWVvGWIO
	oTo5iVr7igGWHO9HWPwDPaWGbIcqeJ9840vpOlZWiSZ7cKqSqf8KOHheAaApZbRaKU/6H8GE28ddR
	oGEUu/qQNaOhxyiIUnoJX1LNpVrHVx982edPVIFgPPedlOSJRvLFg2MWaIiVfudXKxHk1X055MMhl
	HKli6jRg==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Richard Henderson <richard.henderson@linaro.org>,
	Beniamino Galvani <b.galvani@gmail.com>,
	Peter Maydell <peter.maydell@linaro.org>,
	Strahinja Jankovic <strahinja.p.jankovic@gmail.com>,
	Niek Linnenbank <nieklinnenbank@gmail.com>,
	=?UTF-8?q?C=C3=A9dric=20Le=20Goater?= <clg@kaod.org>,
	Andrew Jeffery <andrew@aj.id.au>,
	Joel Stanley <joel@jms.id.au>,
	Igor Mitsyanko <i.mitsyanko@gmail.com>,
	Jean-Christophe Dubois <jcd@tribudubois.net>,
	Andrey Smirnov <andrew.smirnov@gmail.com>,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
	Rob Herring <robh@kernel.org>,
	Subbaraya Sundeep <sundeep.lkml@gmail.com>,
	Jan Kiszka <jan.kiszka@web.de>,
	Tyrone Ting <kfting@nuvoton.com>,
	Hao Wu <wuhaotsh@google.com>,
	Radoslaw Biernacki <rad@semihalf.com>,
	Leif Lindholm <quic_llindhol@quicinc.com>,
	Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>,
	"Edgar E. Iglesias" <edgar.iglesias@gmail.com>,
	Alistair Francis <alistair@alistair23.me>,
	Helge Deller <deller@gmx.de>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Eduardo Habkost <eduardo@habkost.net>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Song Gao <gaosong@loongson.cn>,
	Thomas Huth <huth@tuxfamily.org>,
	Laurent Vivier <laurent@vivier.eu>,
	Huacai Chen <chenhuacai@kernel.org>,
	Jiaxun Yang <jiaxun.yang@flygoat.com>,
	=?UTF-8?q?Herv=C3=A9=20Poussineau?= <hpoussin@reactos.org>,
	Aleksandar Rikalo <aleksandar.rikalo@syrmia.com>,
	Aurelien Jarno <aurelien@aurel32.net>,
	Jason Wang <jasowang@redhat.com>,
	Jia Liu <proljc@gmail.com>,
	Stafford Horne <shorne@gmail.com>,
	Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>,
	Nicholas Piggin <npiggin@gmail.com>,
	Daniel Henrique Barboza <danielhb413@gmail.com>,
	David Gibson <david@gibson.dropbear.id.au>,
	Harsh Prateek Bora <harshpb@linux.ibm.com>,
	Bin Meng <bin.meng@windriver.com>,
	Palmer Dabbelt <palmer@dabbelt.com>,
	Weiwei Li <liweiwei@iscas.ac.cn>,
	Liu Zhiwei <zhiwei_liu@linux.alibaba.com>,
	David Hildenbrand <david@redhat.com>,
	Ilya Leoshkevich <iii@linux.ibm.com>,
	Halil Pasic <pasic@linux.ibm.com>,
	Christian Borntraeger <borntraeger@linux.ibm.com>,
	Eric Farman <farman@linux.ibm.com>,
	Yoshinori Sato <ysato@users.sourceforge.jp>,
	Magnus Damm <magnus.damm@gmail.com>,
	Artyom Tarasenko <atar4qemu@gmail.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	Max Filippov <jcmvbkbc@gmail.com>,
	qemu-arm@nongnu.org,
	qemu-ppc@nongnu.org,
	qemu-riscv@nongnu.org,
	qemu-s390x@nongnu.org,
	xen-devel@lists.xenproject.org
Subject: [PATCH 37/45] hw/openrisc/openrisc_sim: use qemu_create_nic_device()
Date: Sun, 22 Oct 2023 16:51:52 +0100
Message-Id: <20231022155200.436340-38-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231022155200.436340-1-dwmw2@infradead.org>
References: <20231022155200.436340-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 hw/openrisc/openrisc_sim.c | 18 +++++++++---------
 1 file changed, 9 insertions(+), 9 deletions(-)

diff --git a/hw/openrisc/openrisc_sim.c b/hw/openrisc/openrisc_sim.c
index 35da123aef..bffd6f721f 100644
--- a/hw/openrisc/openrisc_sim.c
+++ b/hw/openrisc/openrisc_sim.c
@@ -170,7 +170,7 @@ static void openrisc_create_fdt(Or1ksimState *state,
 
 static void openrisc_sim_net_init(Or1ksimState *state, hwaddr base, hwaddr size,
                                   int num_cpus, OpenRISCCPU *cpus[],
-                                  int irq_pin, NICInfo *nd)
+                                  int irq_pin)
 {
     void *fdt = state->fdt;
     DeviceState *dev;
@@ -178,8 +178,10 @@ static void openrisc_sim_net_init(Or1ksimState *state, hwaddr base, hwaddr size,
     char *nodename;
     int i;
 
-    dev = qdev_new("open_eth");
-    qdev_set_nic_properties(dev, nd);
+    dev = qemu_create_nic_device("open_eth", true, NULL);
+    if (!dev) {
+        return;
+    }
 
     s = SYS_BUS_DEVICE(dev);
     sysbus_realize_and_unref(s, &error_fatal);
@@ -313,12 +315,10 @@ static void openrisc_sim_init(MachineState *machine)
     openrisc_create_fdt(state, or1ksim_memmap, smp_cpus, machine->ram_size,
                         machine->kernel_cmdline);
 
-    if (nd_table[0].used) {
-        openrisc_sim_net_init(state, or1ksim_memmap[OR1KSIM_ETHOC].base,
-                              or1ksim_memmap[OR1KSIM_ETHOC].size,
-                              smp_cpus, cpus,
-                              OR1KSIM_ETHOC_IRQ, nd_table);
-    }
+    openrisc_sim_net_init(state, or1ksim_memmap[OR1KSIM_ETHOC].base,
+                          or1ksim_memmap[OR1KSIM_ETHOC].size,
+                          smp_cpus, cpus,
+                          OR1KSIM_ETHOC_IRQ);
 
     if (smp_cpus > 1) {
         openrisc_sim_ompic_init(state, or1ksim_memmap[OR1KSIM_OMPIC].base,
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Sun Oct 22 15:53:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 22 Oct 2023 15:53:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.620662.966244 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qualv-0007Bw-R3; Sun, 22 Oct 2023 15:53:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 620662.966244; Sun, 22 Oct 2023 15: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 1qualv-0007Bp-N7; Sun, 22 Oct 2023 15:53:47 +0000
Received: by outflank-mailman (input) for mailman id 620662;
 Sun, 22 Oct 2023 15:53: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=zZR7=GE=casper.srs.infradead.org=BATV+88d8721f4af1339c2fab+7364+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qualt-0006wY-Oj
 for xen-devel@lists.xenproject.org; Sun, 22 Oct 2023 15:53:45 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 2cb7e936-70f3-11ee-98d5-6d05b1d4d9a1;
 Sun, 22 Oct 2023 17:53:43 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1quakK-008TGo-RQ; Sun, 22 Oct 2023 15:52:08 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1quakK-001qah-0a; Sun, 22 Oct 2023 16:52:08 +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
X-Inumbo-ID: 2cb7e936-70f3-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=KdVChXDyi4Lsk1+zy1mbsIif8KhkEel9PKnAsGBznGU=; b=vNnsctZ71nBlYPw/cwYJqzmKQl
	+4LnT94jVeyGtjJWUdI2onxOdZCqkhNeaRi+pRy6cUhbFLb0u2J+I5IpJsZPGAA8W1Vq5k5DhT7Cm
	U8/waeBSWRqUPZIkY4LVSzsIhFxstb48frzkyqqrseGjUSCwPwNNhW7ukPjq1qNgRUfKoHFnj37zN
	hitcYfFQvtcthqdZkIPa5oVCItjRv9+BhnIQ5L3xgykuS10AwVNEOMQgPSm/g+YJxYB6ZZ4dAXR7S
	Kzf5l34VwI/VdqTKImNsJOPSEIh6UmoX0cc+mBEX2LKmJvzUsOeM398BfMIW+CPJfqp/ujh2wTuUY
	fm5z52MQ==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Richard Henderson <richard.henderson@linaro.org>,
	Beniamino Galvani <b.galvani@gmail.com>,
	Peter Maydell <peter.maydell@linaro.org>,
	Strahinja Jankovic <strahinja.p.jankovic@gmail.com>,
	Niek Linnenbank <nieklinnenbank@gmail.com>,
	=?UTF-8?q?C=C3=A9dric=20Le=20Goater?= <clg@kaod.org>,
	Andrew Jeffery <andrew@aj.id.au>,
	Joel Stanley <joel@jms.id.au>,
	Igor Mitsyanko <i.mitsyanko@gmail.com>,
	Jean-Christophe Dubois <jcd@tribudubois.net>,
	Andrey Smirnov <andrew.smirnov@gmail.com>,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
	Rob Herring <robh@kernel.org>,
	Subbaraya Sundeep <sundeep.lkml@gmail.com>,
	Jan Kiszka <jan.kiszka@web.de>,
	Tyrone Ting <kfting@nuvoton.com>,
	Hao Wu <wuhaotsh@google.com>,
	Radoslaw Biernacki <rad@semihalf.com>,
	Leif Lindholm <quic_llindhol@quicinc.com>,
	Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>,
	"Edgar E. Iglesias" <edgar.iglesias@gmail.com>,
	Alistair Francis <alistair@alistair23.me>,
	Helge Deller <deller@gmx.de>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Eduardo Habkost <eduardo@habkost.net>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Song Gao <gaosong@loongson.cn>,
	Thomas Huth <huth@tuxfamily.org>,
	Laurent Vivier <laurent@vivier.eu>,
	Huacai Chen <chenhuacai@kernel.org>,
	Jiaxun Yang <jiaxun.yang@flygoat.com>,
	=?UTF-8?q?Herv=C3=A9=20Poussineau?= <hpoussin@reactos.org>,
	Aleksandar Rikalo <aleksandar.rikalo@syrmia.com>,
	Aurelien Jarno <aurelien@aurel32.net>,
	Jason Wang <jasowang@redhat.com>,
	Jia Liu <proljc@gmail.com>,
	Stafford Horne <shorne@gmail.com>,
	Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>,
	Nicholas Piggin <npiggin@gmail.com>,
	Daniel Henrique Barboza <danielhb413@gmail.com>,
	David Gibson <david@gibson.dropbear.id.au>,
	Harsh Prateek Bora <harshpb@linux.ibm.com>,
	Bin Meng <bin.meng@windriver.com>,
	Palmer Dabbelt <palmer@dabbelt.com>,
	Weiwei Li <liweiwei@iscas.ac.cn>,
	Liu Zhiwei <zhiwei_liu@linux.alibaba.com>,
	David Hildenbrand <david@redhat.com>,
	Ilya Leoshkevich <iii@linux.ibm.com>,
	Halil Pasic <pasic@linux.ibm.com>,
	Christian Borntraeger <borntraeger@linux.ibm.com>,
	Eric Farman <farman@linux.ibm.com>,
	Yoshinori Sato <ysato@users.sourceforge.jp>,
	Magnus Damm <magnus.damm@gmail.com>,
	Artyom Tarasenko <atar4qemu@gmail.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	Max Filippov <jcmvbkbc@gmail.com>,
	qemu-arm@nongnu.org,
	qemu-ppc@nongnu.org,
	qemu-riscv@nongnu.org,
	qemu-s390x@nongnu.org,
	xen-devel@lists.xenproject.org
Subject: [PATCH 35/45] hw/mips: use qemu_create_nic_device()
Date: Sun, 22 Oct 2023 16:51:50 +0100
Message-Id: <20231022155200.436340-36-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231022155200.436340-1-dwmw2@infradead.org>
References: <20231022155200.436340-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

The Jazz and MIPS SIM platforms both instantiate their NIC only if a
corresponding configuration exists for it. Convert them to use the
qemu_create_nic_device() function for that.

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 hw/mips/jazz.c    | 16 ++++++----------
 hw/mips/mipssim.c | 13 +++++++------
 2 files changed, 13 insertions(+), 16 deletions(-)

diff --git a/hw/mips/jazz.c b/hw/mips/jazz.c
index c32d2b0b0a..b0f4aa2763 100644
--- a/hw/mips/jazz.c
+++ b/hw/mips/jazz.c
@@ -114,7 +114,7 @@ static const MemoryRegionOps dma_dummy_ops = {
     .endianness = DEVICE_NATIVE_ENDIAN,
 };
 
-static void mips_jazz_init_net(NICInfo *nd, IOMMUMemoryRegion *rc4030_dma_mr,
+static void mips_jazz_init_net(IOMMUMemoryRegion *rc4030_dma_mr,
                                DeviceState *rc4030, MemoryRegion *dp8393x_prom)
 {
     DeviceState *dev;
@@ -122,10 +122,11 @@ static void mips_jazz_init_net(NICInfo *nd, IOMMUMemoryRegion *rc4030_dma_mr,
     int checksum, i;
     uint8_t *prom;
 
-    qemu_check_nic_model(nd, "dp83932");
+    dev = qemu_create_nic_device("dp8393x", true, "dp82932");
+    if (!dev) {
+        return;
+    }
 
-    dev = qdev_new("dp8393x");
-    qdev_set_nic_properties(dev, nd);
     qdev_prop_set_uint8(dev, "it_shift", 2);
     qdev_prop_set_bit(dev, "big_endian", TARGET_BIG_ENDIAN);
     object_property_set_link(OBJECT(dev), "dma_mr",
@@ -314,12 +315,7 @@ static void mips_jazz_init(MachineState *machine,
     }
 
     /* Network controller */
-    if (nb_nics == 1) {
-        mips_jazz_init_net(&nd_table[0], rc4030_dma_mr, rc4030, dp8393x_prom);
-    } else if (nb_nics > 1) {
-        error_report("This machine only supports one NIC");
-        exit(1);
-    }
+    mips_jazz_init_net(rc4030_dma_mr, rc4030, dp8393x_prom);
 
     /* SCSI adapter */
     dev = qdev_new(TYPE_SYSBUS_ESP);
diff --git a/hw/mips/mipssim.c b/hw/mips/mipssim.c
index 2f951f7fc6..072864f539 100644
--- a/hw/mips/mipssim.c
+++ b/hw/mips/mipssim.c
@@ -111,13 +111,15 @@ static void main_cpu_reset(void *opaque)
     }
 }
 
-static void mipsnet_init(int base, qemu_irq irq, NICInfo *nd)
+static void mipsnet_init(int base, qemu_irq irq)
 {
     DeviceState *dev;
     SysBusDevice *s;
 
-    dev = qdev_new("mipsnet");
-    qdev_set_nic_properties(dev, nd);
+    dev = qemu_create_nic_device("mipsnet", true, NULL);
+    if (!dev) {
+        return;
+    }
 
     s = SYS_BUS_DEVICE(dev);
     sysbus_realize_and_unref(s, &error_fatal);
@@ -218,9 +220,8 @@ mips_mipssim_init(MachineState *machine)
                       sysbus_mmio_get_region(SYS_BUS_DEVICE(dev), 0));
     }
 
-    if (nd_table[0].used)
-        /* MIPSnet uses the MIPS CPU INT0, which is interrupt 2. */
-        mipsnet_init(0x4200, env->irq[2], &nd_table[0]);
+    /* MIPSnet uses the MIPS CPU INT0, which is interrupt 2. */
+    mipsnet_init(0x4200, env->irq[2]);
 }
 
 static void mips_mipssim_machine_init(MachineClass *mc)
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Sun Oct 22 15:53:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 22 Oct 2023 15:53:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.620663.966250 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qualw-0007FP-3Y; Sun, 22 Oct 2023 15:53:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 620663.966250; Sun, 22 Oct 2023 15:53: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 1qualv-0007Ep-Uv; Sun, 22 Oct 2023 15:53:47 +0000
Received: by outflank-mailman (input) for mailman id 620663;
 Sun, 22 Oct 2023 15: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=zZR7=GE=casper.srs.infradead.org=BATV+88d8721f4af1339c2fab+7364+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qualu-0006wY-Iy
 for xen-devel@lists.xenproject.org; Sun, 22 Oct 2023 15:53:46 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 2da379db-70f3-11ee-98d5-6d05b1d4d9a1;
 Sun, 22 Oct 2023 17:53:44 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1quakJ-008TGa-O6; Sun, 22 Oct 2023 15:52:07 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1quakJ-001qa4-1M; Sun, 22 Oct 2023 16:52:07 +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
X-Inumbo-ID: 2da379db-70f3-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=igB1IK5oOoSe3ijCAJ2HgjOiVoli+QlUFi6e7XmNINs=; b=EREf3ovqvwxCLDPAJdSSJGo8hb
	jFWw5V+pv/dxOYxNE09cjQlFBYkZRiGNFEaNq0xWoMQ8ukbD17hJCPgxQhrfS9FOuBNDYI88H4n0g
	qvQ4qZEbVHh4bReqjkqvACKdqT1egEvJ9wjfWr+zaiO1aEoAo9xZ2ly5p28dOU5L29B9fOUBuOoMk
	faBExO4JLM8DLFu9WEWhkqi9Ge/6ET2MEVMCHwwTiE/hbsPDKhfB9R+8PNUBiR9QWMaY5rS8L9kUQ
	4xneIGLTe36E0mmAyrXHmj55UnX+36ZPbc2Giyp+nwg6bccD0bdYIGd5tebvlzGZaWR7/SX/I2PDq
	20Fb1Mmg==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Richard Henderson <richard.henderson@linaro.org>,
	Beniamino Galvani <b.galvani@gmail.com>,
	Peter Maydell <peter.maydell@linaro.org>,
	Strahinja Jankovic <strahinja.p.jankovic@gmail.com>,
	Niek Linnenbank <nieklinnenbank@gmail.com>,
	=?UTF-8?q?C=C3=A9dric=20Le=20Goater?= <clg@kaod.org>,
	Andrew Jeffery <andrew@aj.id.au>,
	Joel Stanley <joel@jms.id.au>,
	Igor Mitsyanko <i.mitsyanko@gmail.com>,
	Jean-Christophe Dubois <jcd@tribudubois.net>,
	Andrey Smirnov <andrew.smirnov@gmail.com>,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
	Rob Herring <robh@kernel.org>,
	Subbaraya Sundeep <sundeep.lkml@gmail.com>,
	Jan Kiszka <jan.kiszka@web.de>,
	Tyrone Ting <kfting@nuvoton.com>,
	Hao Wu <wuhaotsh@google.com>,
	Radoslaw Biernacki <rad@semihalf.com>,
	Leif Lindholm <quic_llindhol@quicinc.com>,
	Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>,
	"Edgar E. Iglesias" <edgar.iglesias@gmail.com>,
	Alistair Francis <alistair@alistair23.me>,
	Helge Deller <deller@gmx.de>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Eduardo Habkost <eduardo@habkost.net>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Song Gao <gaosong@loongson.cn>,
	Thomas Huth <huth@tuxfamily.org>,
	Laurent Vivier <laurent@vivier.eu>,
	Huacai Chen <chenhuacai@kernel.org>,
	Jiaxun Yang <jiaxun.yang@flygoat.com>,
	=?UTF-8?q?Herv=C3=A9=20Poussineau?= <hpoussin@reactos.org>,
	Aleksandar Rikalo <aleksandar.rikalo@syrmia.com>,
	Aurelien Jarno <aurelien@aurel32.net>,
	Jason Wang <jasowang@redhat.com>,
	Jia Liu <proljc@gmail.com>,
	Stafford Horne <shorne@gmail.com>,
	Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>,
	Nicholas Piggin <npiggin@gmail.com>,
	Daniel Henrique Barboza <danielhb413@gmail.com>,
	David Gibson <david@gibson.dropbear.id.au>,
	Harsh Prateek Bora <harshpb@linux.ibm.com>,
	Bin Meng <bin.meng@windriver.com>,
	Palmer Dabbelt <palmer@dabbelt.com>,
	Weiwei Li <liweiwei@iscas.ac.cn>,
	Liu Zhiwei <zhiwei_liu@linux.alibaba.com>,
	David Hildenbrand <david@redhat.com>,
	Ilya Leoshkevich <iii@linux.ibm.com>,
	Halil Pasic <pasic@linux.ibm.com>,
	Christian Borntraeger <borntraeger@linux.ibm.com>,
	Eric Farman <farman@linux.ibm.com>,
	Yoshinori Sato <ysato@users.sourceforge.jp>,
	Magnus Damm <magnus.damm@gmail.com>,
	Artyom Tarasenko <atar4qemu@gmail.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	Max Filippov <jcmvbkbc@gmail.com>,
	qemu-arm@nongnu.org,
	qemu-ppc@nongnu.org,
	qemu-riscv@nongnu.org,
	qemu-s390x@nongnu.org,
	xen-devel@lists.xenproject.org
Subject: [PATCH 27/45] hw/arm/highbank: use qemu_create_nic_device()
Date: Sun, 22 Oct 2023 16:51:42 +0100
Message-Id: <20231022155200.436340-28-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231022155200.436340-1-dwmw2@infradead.org>
References: <20231022155200.436340-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 hw/arm/highbank.c | 12 +++++-------
 1 file changed, 5 insertions(+), 7 deletions(-)

diff --git a/hw/arm/highbank.c b/hw/arm/highbank.c
index f12aacea6b..798e5391dc 100644
--- a/hw/arm/highbank.c
+++ b/hw/arm/highbank.c
@@ -296,19 +296,17 @@ static void calxeda_init(MachineState *machine, enum cxmachines machine_id)
 
     sysbus_create_simple(TYPE_SYSBUS_AHCI, 0xffe08000, pic[83]);
 
-    if (nd_table[0].used) {
-        qemu_check_nic_model(&nd_table[0], "xgmac");
-        dev = qdev_new("xgmac");
-        qdev_set_nic_properties(dev, &nd_table[0]);
+    dev = qemu_create_nic_device("xgmac", true, NULL);
+    if (dev) {
         sysbus_realize_and_unref(SYS_BUS_DEVICE(dev), &error_fatal);
         sysbus_mmio_map(SYS_BUS_DEVICE(dev), 0, 0xfff50000);
         sysbus_connect_irq(SYS_BUS_DEVICE(dev), 0, pic[77]);
         sysbus_connect_irq(SYS_BUS_DEVICE(dev), 1, pic[78]);
         sysbus_connect_irq(SYS_BUS_DEVICE(dev), 2, pic[79]);
+    }
 
-        qemu_check_nic_model(&nd_table[1], "xgmac");
-        dev = qdev_new("xgmac");
-        qdev_set_nic_properties(dev, &nd_table[1]);
+    dev = qemu_create_nic_device("xgmac", true, NULL);
+    if (dev) {
         sysbus_realize_and_unref(SYS_BUS_DEVICE(dev), &error_fatal);
         sysbus_mmio_map(SYS_BUS_DEVICE(dev), 0, 0xfff51000);
         sysbus_connect_irq(SYS_BUS_DEVICE(dev), 0, pic[80]);
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Sun Oct 22 15:53:51 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 22 Oct 2023 15:53:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.620668.966292 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qualz-0008Gn-F8; Sun, 22 Oct 2023 15:53:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 620668.966292; Sun, 22 Oct 2023 15:53: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 1qualz-0008EC-21; Sun, 22 Oct 2023 15:53:51 +0000
Received: by outflank-mailman (input) for mailman id 620668;
 Sun, 22 Oct 2023 15: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=zZR7=GE=casper.srs.infradead.org=BATV+88d8721f4af1339c2fab+7364+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qualx-0006wY-JW
 for xen-devel@lists.xenproject.org; Sun, 22 Oct 2023 15:53:49 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 2fc9f612-70f3-11ee-98d5-6d05b1d4d9a1;
 Sun, 22 Oct 2023 17:53:47 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1quakJ-008TGY-LP; Sun, 22 Oct 2023 15:52:07 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1quakJ-001qZv-0q; Sun, 22 Oct 2023 16:52:07 +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
X-Inumbo-ID: 2fc9f612-70f3-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=6L5rZLJkasqL2URPgSPiTRsDPGw7U0heegSHbSvzw3g=; b=f75rAvV8nOwsqPiNmVeTfSee1t
	XW4m6d9NDBlJfEGVCCJGehx1BzvS8lrgmm0vlO8qcJOc3iTpzr3wJmqyNgM8Dxb5Lu5MLUDpUYg6Y
	eg9nPGVDBlq5DSegiKbacR1M1wJHnIOj/T8lqqd6ytqVdunSDd7roaH5gPptSCXTh0BSn7SvJ+3is
	69N+xf/y/evGIgkEtjUno+fCmB1wmelTe1EBdKeaqGFAErncf2L39a0wEUZu7JgyvlZZ4Msq//Wmj
	CUuJM0vGVuyiWSUOdioM+ssCVinEgrzOduSYfsDoVZdjMcnElchlSMIFuDbCcF8gKAfZW/BXZkc6i
	NdcqKqIA==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Richard Henderson <richard.henderson@linaro.org>,
	Beniamino Galvani <b.galvani@gmail.com>,
	Peter Maydell <peter.maydell@linaro.org>,
	Strahinja Jankovic <strahinja.p.jankovic@gmail.com>,
	Niek Linnenbank <nieklinnenbank@gmail.com>,
	=?UTF-8?q?C=C3=A9dric=20Le=20Goater?= <clg@kaod.org>,
	Andrew Jeffery <andrew@aj.id.au>,
	Joel Stanley <joel@jms.id.au>,
	Igor Mitsyanko <i.mitsyanko@gmail.com>,
	Jean-Christophe Dubois <jcd@tribudubois.net>,
	Andrey Smirnov <andrew.smirnov@gmail.com>,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
	Rob Herring <robh@kernel.org>,
	Subbaraya Sundeep <sundeep.lkml@gmail.com>,
	Jan Kiszka <jan.kiszka@web.de>,
	Tyrone Ting <kfting@nuvoton.com>,
	Hao Wu <wuhaotsh@google.com>,
	Radoslaw Biernacki <rad@semihalf.com>,
	Leif Lindholm <quic_llindhol@quicinc.com>,
	Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>,
	"Edgar E. Iglesias" <edgar.iglesias@gmail.com>,
	Alistair Francis <alistair@alistair23.me>,
	Helge Deller <deller@gmx.de>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Eduardo Habkost <eduardo@habkost.net>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Song Gao <gaosong@loongson.cn>,
	Thomas Huth <huth@tuxfamily.org>,
	Laurent Vivier <laurent@vivier.eu>,
	Huacai Chen <chenhuacai@kernel.org>,
	Jiaxun Yang <jiaxun.yang@flygoat.com>,
	=?UTF-8?q?Herv=C3=A9=20Poussineau?= <hpoussin@reactos.org>,
	Aleksandar Rikalo <aleksandar.rikalo@syrmia.com>,
	Aurelien Jarno <aurelien@aurel32.net>,
	Jason Wang <jasowang@redhat.com>,
	Jia Liu <proljc@gmail.com>,
	Stafford Horne <shorne@gmail.com>,
	Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>,
	Nicholas Piggin <npiggin@gmail.com>,
	Daniel Henrique Barboza <danielhb413@gmail.com>,
	David Gibson <david@gibson.dropbear.id.au>,
	Harsh Prateek Bora <harshpb@linux.ibm.com>,
	Bin Meng <bin.meng@windriver.com>,
	Palmer Dabbelt <palmer@dabbelt.com>,
	Weiwei Li <liweiwei@iscas.ac.cn>,
	Liu Zhiwei <zhiwei_liu@linux.alibaba.com>,
	David Hildenbrand <david@redhat.com>,
	Ilya Leoshkevich <iii@linux.ibm.com>,
	Halil Pasic <pasic@linux.ibm.com>,
	Christian Borntraeger <borntraeger@linux.ibm.com>,
	Eric Farman <farman@linux.ibm.com>,
	Yoshinori Sato <ysato@users.sourceforge.jp>,
	Magnus Damm <magnus.damm@gmail.com>,
	Artyom Tarasenko <atar4qemu@gmail.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	Max Filippov <jcmvbkbc@gmail.com>,
	qemu-arm@nongnu.org,
	qemu-ppc@nongnu.org,
	qemu-riscv@nongnu.org,
	qemu-s390x@nongnu.org,
	xen-devel@lists.xenproject.org
Subject: [PATCH 25/45] hw/net/smc91c111: use qemu_configure_nic_device()
Date: Sun, 22 Oct 2023 16:51:40 +0100
Message-Id: <20231022155200.436340-26-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231022155200.436340-1-dwmw2@infradead.org>
References: <20231022155200.436340-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

Some callers instantiate the device unconditionally, others will do so only
if there is a NICInfo to go with it. This appears to be fairly random, but
preserve the existing behaviour for now.

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 hw/arm/gumstix.c           |  6 ++----
 hw/arm/integratorcp.c      |  5 +++--
 hw/arm/mainstone.c         |  3 +--
 hw/arm/realview.c          | 25 ++++++++++---------------
 hw/arm/versatilepb.c       | 15 ++++-----------
 hw/net/smc91c111.c         |  5 ++---
 include/hw/net/smc91c111.h |  2 +-
 7 files changed, 23 insertions(+), 38 deletions(-)

diff --git a/hw/arm/gumstix.c b/hw/arm/gumstix.c
index 2ca4140c9f..f58c4da7f9 100644
--- a/hw/arm/gumstix.c
+++ b/hw/arm/gumstix.c
@@ -74,8 +74,7 @@ static void connex_init(MachineState *machine)
                           FLASH_SECTOR_SIZE, 2, 0, 0, 0, 0, 0);
 
     /* Interrupt line of NIC is connected to GPIO line 36 */
-    smc91c111_init(&nd_table[0], 0x04000300,
-                    qdev_get_gpio_in(cpu->gpio, 36));
+    smc91c111_init(0x04000300, qdev_get_gpio_in(cpu->gpio, 36));
 }
 
 static void verdex_init(MachineState *machine)
@@ -98,8 +97,7 @@ static void verdex_init(MachineState *machine)
                           FLASH_SECTOR_SIZE, 2, 0, 0, 0, 0, 0);
 
     /* Interrupt line of NIC is connected to GPIO line 99 */
-    smc91c111_init(&nd_table[0], 0x04000300,
-                    qdev_get_gpio_in(cpu->gpio, 99));
+    smc91c111_init(0x04000300, qdev_get_gpio_in(cpu->gpio, 99));
 }
 
 static void connex_class_init(ObjectClass *oc, void *data)
diff --git a/hw/arm/integratorcp.c b/hw/arm/integratorcp.c
index d176e9af7e..29bc128992 100644
--- a/hw/arm/integratorcp.c
+++ b/hw/arm/integratorcp.c
@@ -669,8 +669,9 @@ static void integratorcp_init(MachineState *machine)
     sysbus_mmio_map(SYS_BUS_DEVICE(dev), 0, 0x1d000000);
     sysbus_connect_irq(SYS_BUS_DEVICE(dev), 0, pic[25]);
 
-    if (nd_table[0].used)
-        smc91c111_init(&nd_table[0], 0xc8000000, pic[27]);
+    if (qemu_find_nic_info("smc91c111", true, NULL)) {
+        smc91c111_init(0xc8000000, pic[27]);
+    }
 
     sysbus_create_simple("pl110", 0xc0000000, pic[22]);
 
diff --git a/hw/arm/mainstone.c b/hw/arm/mainstone.c
index 68329c4617..84dbb6e525 100644
--- a/hw/arm/mainstone.c
+++ b/hw/arm/mainstone.c
@@ -153,8 +153,7 @@ static void mainstone_common_init(MachineState *machine,
             qdev_get_gpio_in(mst_irq, S1_IRQ),
             qdev_get_gpio_in(mst_irq, S1_CD_IRQ));
 
-    smc91c111_init(&nd_table[0], MST_ETH_PHYS,
-                    qdev_get_gpio_in(mst_irq, ETHERNET_IRQ));
+    smc91c111_init(MST_ETH_PHYS, qdev_get_gpio_in(mst_irq, ETHERNET_IRQ));
 
     mainstone_binfo.board_id = arm_id;
     arm_load_kernel(mpu->cpu, machine, &mainstone_binfo);
diff --git a/hw/arm/realview.c b/hw/arm/realview.c
index 8f89526596..591f50581e 100644
--- a/hw/arm/realview.c
+++ b/hw/arm/realview.c
@@ -89,7 +89,6 @@ static void realview_init(MachineState *machine,
     I2CBus *i2c;
     int n;
     unsigned int smp_cpus = machine->smp.cpus;
-    int done_nic = 0;
     qemu_irq cpu_irq[4];
     int is_mpcore = 0;
     int is_pb = 0;
@@ -295,24 +294,20 @@ static void realview_init(MachineState *machine,
             n--;
         }
     }
-    for(n = 0; n < nb_nics; n++) {
-        nd = &nd_table[n];
-
-        if (!done_nic && (!nd->model ||
-                    strcmp(nd->model, is_pb ? "lan9118" : "smc91c111") == 0)) {
-            if (is_pb) {
-                lan9118_init(nd, 0x4e000000, pic[28]);
-            } else {
-                smc91c111_init(nd, 0x4e000000, pic[28]);
-            }
-            done_nic = 1;
+
+    nd = qemu_find_nic_info(is_pb ? "lan9118" : "smc91c111", true, NULL);
+    if (nd) {
+        if (is_pb) {
+            lan9118_init(nd, 0x4e000000, pic[28]);
         } else {
-            if (pci_bus) {
-                pci_nic_init_nofail(nd, pci_bus, "rtl8139", NULL);
-            }
+            smc91c111_init(0x4e000000, pic[28]);
         }
     }
 
+    if (pci_bus) {
+        pci_init_nic_devices(pci_bus, "rtl8139");
+    }
+
     dev = sysbus_create_simple(TYPE_ARM_SBCON_I2C, 0x10002000, NULL);
     i2c = (I2CBus *)qdev_get_child_bus(dev, "i2c");
     i2c_slave_create_simple(i2c, "ds1338", 0x68);
diff --git a/hw/arm/versatilepb.c b/hw/arm/versatilepb.c
index 2f22dc890f..7bf2ba7c21 100644
--- a/hw/arm/versatilepb.c
+++ b/hw/arm/versatilepb.c
@@ -192,10 +192,8 @@ static void versatile_init(MachineState *machine, int board_id)
     SysBusDevice *busdev;
     DeviceState *pl041;
     PCIBus *pci_bus;
-    NICInfo *nd;
     I2CBus *i2c;
     int n;
-    int done_smc = 0;
     DriveInfo *dinfo;
 
     if (machine->ram_size > 0x10000000) {
@@ -263,16 +261,11 @@ static void versatile_init(MachineState *machine, int board_id)
     sysbus_connect_irq(busdev, 3, sic[30]);
     pci_bus = (PCIBus *)qdev_get_child_bus(dev, "pci");
 
-    for(n = 0; n < nb_nics; n++) {
-        nd = &nd_table[n];
-
-        if (!done_smc && (!nd->model || strcmp(nd->model, "smc91c111") == 0)) {
-            smc91c111_init(nd, 0x10010000, sic[25]);
-            done_smc = 1;
-        } else {
-            pci_nic_init_nofail(nd, pci_bus, "rtl8139", NULL);
-        }
+    if (qemu_find_nic_info("smc91c111", true, NULL)) {
+        smc91c111_init(0x10010000, sic[25]);
     }
+    pci_init_nic_devices(pci_bus, "rtl8139");
+
     if (machine_usb(machine)) {
         pci_create_simple(pci_bus, -1, "pci-ohci");
     }
diff --git a/hw/net/smc91c111.c b/hw/net/smc91c111.c
index ddbceda967..dec4982cfe 100644
--- a/hw/net/smc91c111.c
+++ b/hw/net/smc91c111.c
@@ -817,14 +817,13 @@ static void smc91c111_register_types(void)
 
 /* Legacy helper function.  Should go away when machine config files are
    implemented.  */
-void smc91c111_init(NICInfo *nd, uint32_t base, qemu_irq irq)
+void smc91c111_init(uint32_t base, qemu_irq irq)
 {
     DeviceState *dev;
     SysBusDevice *s;
 
-    qemu_check_nic_model(nd, "smc91c111");
     dev = qdev_new(TYPE_SMC91C111);
-    qdev_set_nic_properties(dev, nd);
+    qemu_configure_nic_device(dev, true, NULL);
     s = SYS_BUS_DEVICE(dev);
     sysbus_realize_and_unref(s, &error_fatal);
     sysbus_mmio_map(s, 0, base);
diff --git a/include/hw/net/smc91c111.h b/include/hw/net/smc91c111.h
index df5b11dcef..dba32a233f 100644
--- a/include/hw/net/smc91c111.h
+++ b/include/hw/net/smc91c111.h
@@ -13,6 +13,6 @@
 
 #include "net/net.h"
 
-void smc91c111_init(NICInfo *, uint32_t, qemu_irq);
+void smc91c111_init(uint32_t, qemu_irq);
 
 #endif
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Sun Oct 22 15:53:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 22 Oct 2023 15:53:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.620669.966299 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quam0-0008R2-1H; Sun, 22 Oct 2023 15:53:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 620669.966299; Sun, 22 Oct 2023 15:53: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 1qualz-0008Mz-IG; Sun, 22 Oct 2023 15:53:51 +0000
Received: by outflank-mailman (input) for mailman id 620669;
 Sun, 22 Oct 2023 15:53: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=zZR7=GE=casper.srs.infradead.org=BATV+88d8721f4af1339c2fab+7364+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qualx-0007Cq-SG
 for xen-devel@lists.xenproject.org; Sun, 22 Oct 2023 15:53:49 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 2daffbe2-70f3-11ee-9b0e-b553b5be7939;
 Sun, 22 Oct 2023 17:53:44 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1quakJ-008TGW-Gu; Sun, 22 Oct 2023 15:52:07 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1quakJ-001qZr-0Z; Sun, 22 Oct 2023 16:52:07 +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
X-Inumbo-ID: 2daffbe2-70f3-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=EKjUCJKBd59P5cxJriDQFHF8sC3eB1BsnLW5Qch037k=; b=e2JwP3XOgcXNON2SV6S2by6iep
	34RgR39w+QTHdRpz5G3wLXbMGlpp2OwdWSD9zMC6mvvrB+qLY51mUjqzSevFFcVGrhD5lLVASVd+M
	TocwJShtBzKiZHJc8O405sOaERHgF8FZ/coOBR9VscvMhBhNr3m6mdkbeSgbTvkqfR2f2A9zY3bJm
	PHYRa4R7Ch6xFN3DXVUBzsitmK3COPKihJsAOj1x1FaOnhGhUow5RVvQKUAdbH1amNQ0Sksw++I22
	kolSa9ChKkx/F2TH+Omzll1cVli0qmDpwvXmwqaq8rcnknRrbhxXZfKL8gAkqdsZXrcy9isSlQO1A
	UbLogmLQ==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Richard Henderson <richard.henderson@linaro.org>,
	Beniamino Galvani <b.galvani@gmail.com>,
	Peter Maydell <peter.maydell@linaro.org>,
	Strahinja Jankovic <strahinja.p.jankovic@gmail.com>,
	Niek Linnenbank <nieklinnenbank@gmail.com>,
	=?UTF-8?q?C=C3=A9dric=20Le=20Goater?= <clg@kaod.org>,
	Andrew Jeffery <andrew@aj.id.au>,
	Joel Stanley <joel@jms.id.au>,
	Igor Mitsyanko <i.mitsyanko@gmail.com>,
	Jean-Christophe Dubois <jcd@tribudubois.net>,
	Andrey Smirnov <andrew.smirnov@gmail.com>,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
	Rob Herring <robh@kernel.org>,
	Subbaraya Sundeep <sundeep.lkml@gmail.com>,
	Jan Kiszka <jan.kiszka@web.de>,
	Tyrone Ting <kfting@nuvoton.com>,
	Hao Wu <wuhaotsh@google.com>,
	Radoslaw Biernacki <rad@semihalf.com>,
	Leif Lindholm <quic_llindhol@quicinc.com>,
	Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>,
	"Edgar E. Iglesias" <edgar.iglesias@gmail.com>,
	Alistair Francis <alistair@alistair23.me>,
	Helge Deller <deller@gmx.de>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Eduardo Habkost <eduardo@habkost.net>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Song Gao <gaosong@loongson.cn>,
	Thomas Huth <huth@tuxfamily.org>,
	Laurent Vivier <laurent@vivier.eu>,
	Huacai Chen <chenhuacai@kernel.org>,
	Jiaxun Yang <jiaxun.yang@flygoat.com>,
	=?UTF-8?q?Herv=C3=A9=20Poussineau?= <hpoussin@reactos.org>,
	Aleksandar Rikalo <aleksandar.rikalo@syrmia.com>,
	Aurelien Jarno <aurelien@aurel32.net>,
	Jason Wang <jasowang@redhat.com>,
	Jia Liu <proljc@gmail.com>,
	Stafford Horne <shorne@gmail.com>,
	Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>,
	Nicholas Piggin <npiggin@gmail.com>,
	Daniel Henrique Barboza <danielhb413@gmail.com>,
	David Gibson <david@gibson.dropbear.id.au>,
	Harsh Prateek Bora <harshpb@linux.ibm.com>,
	Bin Meng <bin.meng@windriver.com>,
	Palmer Dabbelt <palmer@dabbelt.com>,
	Weiwei Li <liweiwei@iscas.ac.cn>,
	Liu Zhiwei <zhiwei_liu@linux.alibaba.com>,
	David Hildenbrand <david@redhat.com>,
	Ilya Leoshkevich <iii@linux.ibm.com>,
	Halil Pasic <pasic@linux.ibm.com>,
	Christian Borntraeger <borntraeger@linux.ibm.com>,
	Eric Farman <farman@linux.ibm.com>,
	Yoshinori Sato <ysato@users.sourceforge.jp>,
	Magnus Damm <magnus.damm@gmail.com>,
	Artyom Tarasenko <atar4qemu@gmail.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	Max Filippov <jcmvbkbc@gmail.com>,
	qemu-arm@nongnu.org,
	qemu-ppc@nongnu.org,
	qemu-riscv@nongnu.org,
	qemu-s390x@nongnu.org,
	xen-devel@lists.xenproject.org
Subject: [PATCH 24/45] hw/arm/fsl: use qemu_configure_nic_device()
Date: Sun, 22 Oct 2023 16:51:39 +0100
Message-Id: <20231022155200.436340-25-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231022155200.436340-1-dwmw2@infradead.org>
References: <20231022155200.436340-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 hw/arm/fsl-imx25.c  | 2 +-
 hw/arm/fsl-imx6.c   | 2 +-
 hw/arm/fsl-imx6ul.c | 2 +-
 hw/arm/fsl-imx7.c   | 2 +-
 4 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/hw/arm/fsl-imx25.c b/hw/arm/fsl-imx25.c
index 24c4374590..28084d2e5a 100644
--- a/hw/arm/fsl-imx25.c
+++ b/hw/arm/fsl-imx25.c
@@ -170,7 +170,7 @@ static void fsl_imx25_realize(DeviceState *dev, Error **errp)
     }
 
     object_property_set_uint(OBJECT(&s->fec), "phy-num", s->phy_num, &err);
-    qdev_set_nic_properties(DEVICE(&s->fec), &nd_table[0]);
+    qemu_configure_nic_device(DEVICE(&s->fec), true, NULL);
 
     if (!sysbus_realize(SYS_BUS_DEVICE(&s->fec), errp)) {
         return;
diff --git a/hw/arm/fsl-imx6.c b/hw/arm/fsl-imx6.c
index 4fa7f0b95e..273bc79283 100644
--- a/hw/arm/fsl-imx6.c
+++ b/hw/arm/fsl-imx6.c
@@ -380,7 +380,7 @@ static void fsl_imx6_realize(DeviceState *dev, Error **errp)
     }
 
     object_property_set_uint(OBJECT(&s->eth), "phy-num", s->phy_num, &err);
-    qdev_set_nic_properties(DEVICE(&s->eth), &nd_table[0]);
+    qemu_configure_nic_device(DEVICE(&s->eth), true, NULL);
     if (!sysbus_realize(SYS_BUS_DEVICE(&s->eth), errp)) {
         return;
     }
diff --git a/hw/arm/fsl-imx6ul.c b/hw/arm/fsl-imx6ul.c
index e37b69a5e1..ca3dd439ec 100644
--- a/hw/arm/fsl-imx6ul.c
+++ b/hw/arm/fsl-imx6ul.c
@@ -442,7 +442,7 @@ static void fsl_imx6ul_realize(DeviceState *dev, Error **errp)
                                  s->phy_num[i], &error_abort);
         object_property_set_uint(OBJECT(&s->eth[i]), "tx-ring-num",
                                  FSL_IMX6UL_ETH_NUM_TX_RINGS, &error_abort);
-        qdev_set_nic_properties(DEVICE(&s->eth[i]), &nd_table[i]);
+        qemu_configure_nic_device(DEVICE(&s->eth[i]), true, NULL);
         sysbus_realize(SYS_BUS_DEVICE(&s->eth[i]), &error_abort);
 
         sysbus_mmio_map(SYS_BUS_DEVICE(&s->eth[i]), 0,
diff --git a/hw/arm/fsl-imx7.c b/hw/arm/fsl-imx7.c
index 474cfdc87c..1acbe065db 100644
--- a/hw/arm/fsl-imx7.c
+++ b/hw/arm/fsl-imx7.c
@@ -446,7 +446,7 @@ static void fsl_imx7_realize(DeviceState *dev, Error **errp)
                                  s->phy_num[i], &error_abort);
         object_property_set_uint(OBJECT(&s->eth[i]), "tx-ring-num",
                                  FSL_IMX7_ETH_NUM_TX_RINGS, &error_abort);
-        qdev_set_nic_properties(DEVICE(&s->eth[i]), &nd_table[i]);
+        qemu_configure_nic_device(DEVICE(&s->eth[i]), true, NULL);
         sysbus_realize(SYS_BUS_DEVICE(&s->eth[i]), &error_abort);
 
         sysbus_mmio_map(SYS_BUS_DEVICE(&s->eth[i]), 0, FSL_IMX7_ENETn_ADDR[i]);
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Sun Oct 22 15:53:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 22 Oct 2023 15:53:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.620670.966306 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quam0-0000BH-P8; Sun, 22 Oct 2023 15:53:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 620670.966306; Sun, 22 Oct 2023 15:53: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 1quam0-00008J-Cp; Sun, 22 Oct 2023 15:53:52 +0000
Received: by outflank-mailman (input) for mailman id 620670;
 Sun, 22 Oct 2023 15:53: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=zZR7=GE=casper.srs.infradead.org=BATV+88d8721f4af1339c2fab+7364+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qualy-0006wY-Jp
 for xen-devel@lists.xenproject.org; Sun, 22 Oct 2023 15:53:50 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 3040695c-70f3-11ee-98d5-6d05b1d4d9a1;
 Sun, 22 Oct 2023 17:53:48 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1quakK-008TGp-Mm; Sun, 22 Oct 2023 15:52:08 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1quakK-001qal-0u; Sun, 22 Oct 2023 16:52:08 +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
X-Inumbo-ID: 3040695c-70f3-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=0g2a82VH4gMCB3QhQoMvbFi3kUWOmKpYhQ7p6DKI8gg=; b=boPXLVBXAzKUUr3G7Cyr0GsWcS
	eOWRpIEQqHcHJY5/+NZZjC8fqSH+EgmnOi0vBRmd0JVDOJ/UAwgySC6UkwBxHvU3RO1CBTnw3OGEa
	+uc+n5Opp7OmB4oRg+weNpxoYJHRURIdzekYQtQt3Lp9ZTxhwKgmHr4tHvr2rlKqKIvvIlx5aC/wA
	F6F/8WQt2IQ+F0ruD3fhDr7Mx8sQAmnBQRnKoK6tjXNRVThrjttCviFsi2XYL6Vkyps3P/wBNZZGE
	igNHrC/s0hAXaE8nUF0mlcDcMvdMSulhSof8Uztem7KoyOjytCs6GDQBYRRCgOlWuTVyM/hO4fPx2
	QDwZA5cw==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Richard Henderson <richard.henderson@linaro.org>,
	Beniamino Galvani <b.galvani@gmail.com>,
	Peter Maydell <peter.maydell@linaro.org>,
	Strahinja Jankovic <strahinja.p.jankovic@gmail.com>,
	Niek Linnenbank <nieklinnenbank@gmail.com>,
	=?UTF-8?q?C=C3=A9dric=20Le=20Goater?= <clg@kaod.org>,
	Andrew Jeffery <andrew@aj.id.au>,
	Joel Stanley <joel@jms.id.au>,
	Igor Mitsyanko <i.mitsyanko@gmail.com>,
	Jean-Christophe Dubois <jcd@tribudubois.net>,
	Andrey Smirnov <andrew.smirnov@gmail.com>,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
	Rob Herring <robh@kernel.org>,
	Subbaraya Sundeep <sundeep.lkml@gmail.com>,
	Jan Kiszka <jan.kiszka@web.de>,
	Tyrone Ting <kfting@nuvoton.com>,
	Hao Wu <wuhaotsh@google.com>,
	Radoslaw Biernacki <rad@semihalf.com>,
	Leif Lindholm <quic_llindhol@quicinc.com>,
	Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>,
	"Edgar E. Iglesias" <edgar.iglesias@gmail.com>,
	Alistair Francis <alistair@alistair23.me>,
	Helge Deller <deller@gmx.de>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Eduardo Habkost <eduardo@habkost.net>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Song Gao <gaosong@loongson.cn>,
	Thomas Huth <huth@tuxfamily.org>,
	Laurent Vivier <laurent@vivier.eu>,
	Huacai Chen <chenhuacai@kernel.org>,
	Jiaxun Yang <jiaxun.yang@flygoat.com>,
	=?UTF-8?q?Herv=C3=A9=20Poussineau?= <hpoussin@reactos.org>,
	Aleksandar Rikalo <aleksandar.rikalo@syrmia.com>,
	Aurelien Jarno <aurelien@aurel32.net>,
	Jason Wang <jasowang@redhat.com>,
	Jia Liu <proljc@gmail.com>,
	Stafford Horne <shorne@gmail.com>,
	Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>,
	Nicholas Piggin <npiggin@gmail.com>,
	Daniel Henrique Barboza <danielhb413@gmail.com>,
	David Gibson <david@gibson.dropbear.id.au>,
	Harsh Prateek Bora <harshpb@linux.ibm.com>,
	Bin Meng <bin.meng@windriver.com>,
	Palmer Dabbelt <palmer@dabbelt.com>,
	Weiwei Li <liweiwei@iscas.ac.cn>,
	Liu Zhiwei <zhiwei_liu@linux.alibaba.com>,
	David Hildenbrand <david@redhat.com>,
	Ilya Leoshkevich <iii@linux.ibm.com>,
	Halil Pasic <pasic@linux.ibm.com>,
	Christian Borntraeger <borntraeger@linux.ibm.com>,
	Eric Farman <farman@linux.ibm.com>,
	Yoshinori Sato <ysato@users.sourceforge.jp>,
	Magnus Damm <magnus.damm@gmail.com>,
	Artyom Tarasenko <atar4qemu@gmail.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	Max Filippov <jcmvbkbc@gmail.com>,
	qemu-arm@nongnu.org,
	qemu-ppc@nongnu.org,
	qemu-riscv@nongnu.org,
	qemu-s390x@nongnu.org,
	xen-devel@lists.xenproject.org
Subject: [PATCH 36/45] hw/net/lasi_i82596: use qemu_configure_nic_device()
Date: Sun, 22 Oct 2023 16:51:51 +0100
Message-Id: <20231022155200.436340-37-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231022155200.436340-1-dwmw2@infradead.org>
References: <20231022155200.436340-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 hw/net/lasi_i82596.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/hw/net/lasi_i82596.c b/hw/net/lasi_i82596.c
index e37f7fabe9..c4c197aaa8 100644
--- a/hw/net/lasi_i82596.c
+++ b/hw/net/lasi_i82596.c
@@ -125,11 +125,10 @@ SysBusI82596State *lasi_82596_init(MemoryRegion *addr_space,
     static const MACAddr HP_MAC = {
         .a = { 0x08, 0x00, 0x09, 0xef, 0x34, 0xf6 } };
 
-    qemu_check_nic_model(&nd_table[0], TYPE_LASI_82596);
     dev = qdev_new(TYPE_LASI_82596);
     s = SYSBUS_I82596(dev);
     s->state.irq = lan_irq;
-    qdev_set_nic_properties(dev, &nd_table[0]);
+    qemu_configure_nic_device(dev, true, NULL);
     sysbus_realize_and_unref(SYS_BUS_DEVICE(dev), &error_fatal);
     s->state.conf.macaddr = HP_MAC; /* set HP MAC prefix */
 
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Sun Oct 22 15:53:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 22 Oct 2023 15:53:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.620671.966316 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quam1-0000MD-OQ; Sun, 22 Oct 2023 15:53:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 620671.966316; Sun, 22 Oct 2023 15:53: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 1quam1-0000JI-0O; Sun, 22 Oct 2023 15:53:53 +0000
Received: by outflank-mailman (input) for mailman id 620671;
 Sun, 22 Oct 2023 15:53: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=zZR7=GE=casper.srs.infradead.org=BATV+88d8721f4af1339c2fab+7364+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qualy-0007Cq-SN
 for xen-devel@lists.xenproject.org; Sun, 22 Oct 2023 15:53:50 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 2f916e7b-70f3-11ee-9b0e-b553b5be7939;
 Sun, 22 Oct 2023 17:53:47 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1quakK-008TGm-Ep; Sun, 22 Oct 2023 15:52:08 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1quakJ-001qaY-36; Sun, 22 Oct 2023 16:52:07 +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
X-Inumbo-ID: 2f916e7b-70f3-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=khyoXveG/BzHXWd28g0ECVTdEF2TXXqaXCqlRIzwomY=; b=pddXftyc1ckCsPadnXZvUQT0bW
	M5Ptl/u0mEOZM6a8arO++FndlfmK/9In3Y97NEiNvV6S/gnoMc4rPMktdQsqrpE8ITBGZJbN9YP+h
	7WXXezLpKgcUU6qsBUYt55PTO8nrIX1XqBdlBWxj+18Iu4HEasNRQpUygH0u4uQXNqaYtF60lY4tL
	2m5FzcX/XbiRWZ/oyNZkKLHejWh2LoySZb1SG5qDHBrUfq3SzhLhWqh128Iuw4s8tFqGtH7/LW26M
	dH0EP2RhBj/PoLPN9AezB/IU1DfNzJ769NI+o+uIhQ8Ac7QVnflEBlQ/DmyiYcCPxCUv9Jyt8FKH2
	ON7Jh9Sw==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Richard Henderson <richard.henderson@linaro.org>,
	Beniamino Galvani <b.galvani@gmail.com>,
	Peter Maydell <peter.maydell@linaro.org>,
	Strahinja Jankovic <strahinja.p.jankovic@gmail.com>,
	Niek Linnenbank <nieklinnenbank@gmail.com>,
	=?UTF-8?q?C=C3=A9dric=20Le=20Goater?= <clg@kaod.org>,
	Andrew Jeffery <andrew@aj.id.au>,
	Joel Stanley <joel@jms.id.au>,
	Igor Mitsyanko <i.mitsyanko@gmail.com>,
	Jean-Christophe Dubois <jcd@tribudubois.net>,
	Andrey Smirnov <andrew.smirnov@gmail.com>,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
	Rob Herring <robh@kernel.org>,
	Subbaraya Sundeep <sundeep.lkml@gmail.com>,
	Jan Kiszka <jan.kiszka@web.de>,
	Tyrone Ting <kfting@nuvoton.com>,
	Hao Wu <wuhaotsh@google.com>,
	Radoslaw Biernacki <rad@semihalf.com>,
	Leif Lindholm <quic_llindhol@quicinc.com>,
	Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>,
	"Edgar E. Iglesias" <edgar.iglesias@gmail.com>,
	Alistair Francis <alistair@alistair23.me>,
	Helge Deller <deller@gmx.de>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Eduardo Habkost <eduardo@habkost.net>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Song Gao <gaosong@loongson.cn>,
	Thomas Huth <huth@tuxfamily.org>,
	Laurent Vivier <laurent@vivier.eu>,
	Huacai Chen <chenhuacai@kernel.org>,
	Jiaxun Yang <jiaxun.yang@flygoat.com>,
	=?UTF-8?q?Herv=C3=A9=20Poussineau?= <hpoussin@reactos.org>,
	Aleksandar Rikalo <aleksandar.rikalo@syrmia.com>,
	Aurelien Jarno <aurelien@aurel32.net>,
	Jason Wang <jasowang@redhat.com>,
	Jia Liu <proljc@gmail.com>,
	Stafford Horne <shorne@gmail.com>,
	Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>,
	Nicholas Piggin <npiggin@gmail.com>,
	Daniel Henrique Barboza <danielhb413@gmail.com>,
	David Gibson <david@gibson.dropbear.id.au>,
	Harsh Prateek Bora <harshpb@linux.ibm.com>,
	Bin Meng <bin.meng@windriver.com>,
	Palmer Dabbelt <palmer@dabbelt.com>,
	Weiwei Li <liweiwei@iscas.ac.cn>,
	Liu Zhiwei <zhiwei_liu@linux.alibaba.com>,
	David Hildenbrand <david@redhat.com>,
	Ilya Leoshkevich <iii@linux.ibm.com>,
	Halil Pasic <pasic@linux.ibm.com>,
	Christian Borntraeger <borntraeger@linux.ibm.com>,
	Eric Farman <farman@linux.ibm.com>,
	Yoshinori Sato <ysato@users.sourceforge.jp>,
	Magnus Damm <magnus.damm@gmail.com>,
	Artyom Tarasenko <atar4qemu@gmail.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	Max Filippov <jcmvbkbc@gmail.com>,
	qemu-arm@nongnu.org,
	qemu-ppc@nongnu.org,
	qemu-riscv@nongnu.org,
	qemu-s390x@nongnu.org,
	xen-devel@lists.xenproject.org
Subject: [PATCH 33/45] hw/m68k/q800: use qemu_configure_nic_device()
Date: Sun, 22 Oct 2023 16:51:48 +0100
Message-Id: <20231022155200.436340-34-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231022155200.436340-1-dwmw2@infradead.org>
References: <20231022155200.436340-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

Then fetch the MAC that was assigned, if any. And assign one if not,
ensuring that it uses the Apple OUI.

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 hw/m68k/q800.c | 28 +++++++++++++++-------------
 1 file changed, 15 insertions(+), 13 deletions(-)

diff --git a/hw/m68k/q800.c b/hw/m68k/q800.c
index 1d7cd5ff1c..94e7c0dd60 100644
--- a/hw/m68k/q800.c
+++ b/hw/m68k/q800.c
@@ -271,6 +271,7 @@ static void q800_machine_init(MachineState *machine)
     BusState *adb_bus;
     NubusBus *nubus;
     DriveInfo *dinfo;
+    MACAddr mac;
     uint8_t rng_seed[32];
 
     linux_boot = (kernel_filename != NULL);
@@ -371,13 +372,6 @@ static void q800_machine_init(MachineState *machine)
 
     /* MACSONIC */
 
-    if (nb_nics > 1) {
-        error_report("q800 can only have one ethernet interface");
-        exit(1);
-    }
-
-    qemu_check_nic_model(&nd_table[0], "dp83932");
-
     /*
      * MacSonic driver needs an Apple MAC address
      * Valid prefix are:
@@ -387,14 +381,22 @@ static void q800_machine_init(MachineState *machine)
      * 08:00:07 Apple
      * (Q800 use the last one)
      */
-    nd_table[0].macaddr.a[0] = 0x08;
-    nd_table[0].macaddr.a[1] = 0x00;
-    nd_table[0].macaddr.a[2] = 0x07;
-
     object_initialize_child(OBJECT(machine), "dp8393x", &m->dp8393x,
                             TYPE_DP8393X);
     dev = DEVICE(&m->dp8393x);
-    qdev_set_nic_properties(dev, &nd_table[0]);
+    if (qemu_configure_nic_device(dev, TYPE_DP8393X, true, "dp83932")) {
+        gchar *macstr = object_property_get_str(OBJECT(dev));
+        if (macstr) {
+            net_parse_macaddr(mac.a, macstr);
+            g_free(macstr);
+        }
+    }
+    qemu_macaddr_default_if_unset(&mac);
+    mac.a[0] = 0x08;
+    mac.a[1] = 0x00;
+    mac.a[2] = 0x07;
+    qemu_prop_set_macaddr(dev, "mac", &mac.a);
+
     qdev_prop_set_uint8(dev, "it_shift", 2);
     qdev_prop_set_bit(dev, "big_endian", true);
     object_property_set_link(OBJECT(dev), "dma_mr",
@@ -415,7 +417,7 @@ static void q800_machine_init(MachineState *machine)
     prom = memory_region_get_ram_ptr(dp8393x_prom);
     checksum = 0;
     for (i = 0; i < 6; i++) {
-        prom[i] = revbit8(nd_table[0].macaddr.a[i]);
+        prom[i] = revbit8(mac.a[i]);
         checksum ^= prom[i];
     }
     prom[7] = 0xff - checksum;
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Sun Oct 22 15:53:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 22 Oct 2023 15:53:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.620672.966326 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quam2-0000di-L4; Sun, 22 Oct 2023 15:53:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 620672.966326; Sun, 22 Oct 2023 15: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 1quam2-0000bC-2w; Sun, 22 Oct 2023 15:53:54 +0000
Received: by outflank-mailman (input) for mailman id 620672;
 Sun, 22 Oct 2023 15:53: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=zZR7=GE=casper.srs.infradead.org=BATV+88d8721f4af1339c2fab+7364+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qualz-0006wY-Jo
 for xen-devel@lists.xenproject.org; Sun, 22 Oct 2023 15:53:51 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 304069e3-70f3-11ee-98d5-6d05b1d4d9a1;
 Sun, 22 Oct 2023 17:53:48 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1quakL-008TGu-DD; Sun, 22 Oct 2023 15:52:09 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1quakK-001qay-20; Sun, 22 Oct 2023 16:52:08 +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
X-Inumbo-ID: 304069e3-70f3-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=MzNB1kB+MKKgmKuvdGyjwRqbOWNmdCGP24EVU4gbBKs=; b=BOTpbmEhw9k8na/d3I1AbUe9b0
	E6G1Hj4USM9BvQ+F5xHHrxW1V2tmkvERcHo7d3FZ0Tv/uakTSMvIgZQqIcBtApttgEXq386rStogT
	NGtg59PSjG5qFluXSFVO+sAKemnE8U5ELEDGh1lS2gmYwSKkiPgrS55f2AofdoM6u3I1bGJrXl5ba
	xtTsjXmpZ4r05MqdxLNIFbmAxC8Uesnf2zu3wqnZtY34+ASHLO5qR+YC6Q8NgyQalK6K8L4i9FDzq
	dcEGLBKoVLWBDlgqQzAibSQxsnFGGMY+PV30dzPBeZf1vCuuNDbk+0qYFREsNCyFY8a1BTbrIBcce
	DMLchh8Q==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Richard Henderson <richard.henderson@linaro.org>,
	Beniamino Galvani <b.galvani@gmail.com>,
	Peter Maydell <peter.maydell@linaro.org>,
	Strahinja Jankovic <strahinja.p.jankovic@gmail.com>,
	Niek Linnenbank <nieklinnenbank@gmail.com>,
	=?UTF-8?q?C=C3=A9dric=20Le=20Goater?= <clg@kaod.org>,
	Andrew Jeffery <andrew@aj.id.au>,
	Joel Stanley <joel@jms.id.au>,
	Igor Mitsyanko <i.mitsyanko@gmail.com>,
	Jean-Christophe Dubois <jcd@tribudubois.net>,
	Andrey Smirnov <andrew.smirnov@gmail.com>,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
	Rob Herring <robh@kernel.org>,
	Subbaraya Sundeep <sundeep.lkml@gmail.com>,
	Jan Kiszka <jan.kiszka@web.de>,
	Tyrone Ting <kfting@nuvoton.com>,
	Hao Wu <wuhaotsh@google.com>,
	Radoslaw Biernacki <rad@semihalf.com>,
	Leif Lindholm <quic_llindhol@quicinc.com>,
	Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>,
	"Edgar E. Iglesias" <edgar.iglesias@gmail.com>,
	Alistair Francis <alistair@alistair23.me>,
	Helge Deller <deller@gmx.de>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Eduardo Habkost <eduardo@habkost.net>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Song Gao <gaosong@loongson.cn>,
	Thomas Huth <huth@tuxfamily.org>,
	Laurent Vivier <laurent@vivier.eu>,
	Huacai Chen <chenhuacai@kernel.org>,
	Jiaxun Yang <jiaxun.yang@flygoat.com>,
	=?UTF-8?q?Herv=C3=A9=20Poussineau?= <hpoussin@reactos.org>,
	Aleksandar Rikalo <aleksandar.rikalo@syrmia.com>,
	Aurelien Jarno <aurelien@aurel32.net>,
	Jason Wang <jasowang@redhat.com>,
	Jia Liu <proljc@gmail.com>,
	Stafford Horne <shorne@gmail.com>,
	Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>,
	Nicholas Piggin <npiggin@gmail.com>,
	Daniel Henrique Barboza <danielhb413@gmail.com>,
	David Gibson <david@gibson.dropbear.id.au>,
	Harsh Prateek Bora <harshpb@linux.ibm.com>,
	Bin Meng <bin.meng@windriver.com>,
	Palmer Dabbelt <palmer@dabbelt.com>,
	Weiwei Li <liweiwei@iscas.ac.cn>,
	Liu Zhiwei <zhiwei_liu@linux.alibaba.com>,
	David Hildenbrand <david@redhat.com>,
	Ilya Leoshkevich <iii@linux.ibm.com>,
	Halil Pasic <pasic@linux.ibm.com>,
	Christian Borntraeger <borntraeger@linux.ibm.com>,
	Eric Farman <farman@linux.ibm.com>,
	Yoshinori Sato <ysato@users.sourceforge.jp>,
	Magnus Damm <magnus.damm@gmail.com>,
	Artyom Tarasenko <atar4qemu@gmail.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	Max Filippov <jcmvbkbc@gmail.com>,
	qemu-arm@nongnu.org,
	qemu-ppc@nongnu.org,
	qemu-riscv@nongnu.org,
	qemu-s390x@nongnu.org,
	xen-devel@lists.xenproject.org
Subject: [PATCH 39/45] hw/s390x/s390-virtio-ccw: use qemu_create_nic_device()
Date: Sun, 22 Oct 2023 16:51:54 +0100
Message-Id: <20231022155200.436340-40-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231022155200.436340-1-dwmw2@infradead.org>
References: <20231022155200.436340-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 hw/s390x/s390-virtio-ccw.c | 11 ++---------
 1 file changed, 2 insertions(+), 9 deletions(-)

diff --git a/hw/s390x/s390-virtio-ccw.c b/hw/s390x/s390-virtio-ccw.c
index 2d75f2131f..b8b8a2a201 100644
--- a/hw/s390x/s390-virtio-ccw.c
+++ b/hw/s390x/s390-virtio-ccw.c
@@ -217,16 +217,9 @@ static void s390_init_ipl_dev(const char *kernel_filename,
 
 static void s390_create_virtio_net(BusState *bus, const char *name)
 {
-    int i;
-
-    for (i = 0; i < nb_nics; i++) {
-        NICInfo *nd = &nd_table[i];
-        DeviceState *dev;
-
-        qemu_check_nic_model(nd, "virtio");
+    DeviceState *dev;
 
-        dev = qdev_new(name);
-        qdev_set_nic_properties(dev, nd);
+    while ((dev = qemu_create_nic_device(name, true, "virtio")) {
         qdev_realize_and_unref(dev, bus, &error_fatal);
     }
 }
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Sun Oct 22 15:53:55 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 22 Oct 2023 15:53:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.620673.966330 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quam3-0000qa-B6; Sun, 22 Oct 2023 15:53:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 620673.966330; Sun, 22 Oct 2023 15:53: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 1quam2-0000iz-TG; Sun, 22 Oct 2023 15:53:54 +0000
Received: by outflank-mailman (input) for mailman id 620673;
 Sun, 22 Oct 2023 15:53: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=zZR7=GE=casper.srs.infradead.org=BATV+88d8721f4af1339c2fab+7364+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qualz-0007Cq-Si
 for xen-devel@lists.xenproject.org; Sun, 22 Oct 2023 15:53:51 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 304aabf9-70f3-11ee-9b0e-b553b5be7939;
 Sun, 22 Oct 2023 17:53:48 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1quakI-008TGN-Fa; Sun, 22 Oct 2023 15:52:06 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1quakI-001qZ9-0E; Sun, 22 Oct 2023 16:52:06 +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
X-Inumbo-ID: 304aabf9-70f3-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=EEprMiQFf2yiszoqkaPkPmN8nomXIq9mKJSWnsahnUg=; b=nPbfsthL1v3JooATXcEUeGqX7g
	FTNYixJKg9bIDNABcPWLl8tIAscTUp9MfnVQwM46fBG6noyfrICfQqoc1SCGA7lQbbf/CzrbVgWLw
	YC3WoWqxYe9HtzTYJUTvI2dniCFeBTBUTb9EalB2MNebFRo8MuDUhvekvDKahDhIlT3r/q/S7XRv2
	mFJbSZJoaq2rNrztifBSX5IpjJkA2PMFSqqqU5Mjsh+Dl27reNGJoizxFPLXQ53aJMAu0BL1Da2eE
	amYzb/nghkxUMuB7f5y/lRZzP4HUycIIeX0AwX+ky16lcEo6gsWSO3s85pn/iMT73Qh0IE90XRnEX
	ePABIhpw==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Richard Henderson <richard.henderson@linaro.org>,
	Beniamino Galvani <b.galvani@gmail.com>,
	Peter Maydell <peter.maydell@linaro.org>,
	Strahinja Jankovic <strahinja.p.jankovic@gmail.com>,
	Niek Linnenbank <nieklinnenbank@gmail.com>,
	=?UTF-8?q?C=C3=A9dric=20Le=20Goater?= <clg@kaod.org>,
	Andrew Jeffery <andrew@aj.id.au>,
	Joel Stanley <joel@jms.id.au>,
	Igor Mitsyanko <i.mitsyanko@gmail.com>,
	Jean-Christophe Dubois <jcd@tribudubois.net>,
	Andrey Smirnov <andrew.smirnov@gmail.com>,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
	Rob Herring <robh@kernel.org>,
	Subbaraya Sundeep <sundeep.lkml@gmail.com>,
	Jan Kiszka <jan.kiszka@web.de>,
	Tyrone Ting <kfting@nuvoton.com>,
	Hao Wu <wuhaotsh@google.com>,
	Radoslaw Biernacki <rad@semihalf.com>,
	Leif Lindholm <quic_llindhol@quicinc.com>,
	Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>,
	"Edgar E. Iglesias" <edgar.iglesias@gmail.com>,
	Alistair Francis <alistair@alistair23.me>,
	Helge Deller <deller@gmx.de>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Eduardo Habkost <eduardo@habkost.net>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Song Gao <gaosong@loongson.cn>,
	Thomas Huth <huth@tuxfamily.org>,
	Laurent Vivier <laurent@vivier.eu>,
	Huacai Chen <chenhuacai@kernel.org>,
	Jiaxun Yang <jiaxun.yang@flygoat.com>,
	=?UTF-8?q?Herv=C3=A9=20Poussineau?= <hpoussin@reactos.org>,
	Aleksandar Rikalo <aleksandar.rikalo@syrmia.com>,
	Aurelien Jarno <aurelien@aurel32.net>,
	Jason Wang <jasowang@redhat.com>,
	Jia Liu <proljc@gmail.com>,
	Stafford Horne <shorne@gmail.com>,
	Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>,
	Nicholas Piggin <npiggin@gmail.com>,
	Daniel Henrique Barboza <danielhb413@gmail.com>,
	David Gibson <david@gibson.dropbear.id.au>,
	Harsh Prateek Bora <harshpb@linux.ibm.com>,
	Bin Meng <bin.meng@windriver.com>,
	Palmer Dabbelt <palmer@dabbelt.com>,
	Weiwei Li <liweiwei@iscas.ac.cn>,
	Liu Zhiwei <zhiwei_liu@linux.alibaba.com>,
	David Hildenbrand <david@redhat.com>,
	Ilya Leoshkevich <iii@linux.ibm.com>,
	Halil Pasic <pasic@linux.ibm.com>,
	Christian Borntraeger <borntraeger@linux.ibm.com>,
	Eric Farman <farman@linux.ibm.com>,
	Yoshinori Sato <ysato@users.sourceforge.jp>,
	Magnus Damm <magnus.damm@gmail.com>,
	Artyom Tarasenko <atar4qemu@gmail.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	Max Filippov <jcmvbkbc@gmail.com>,
	qemu-arm@nongnu.org,
	qemu-ppc@nongnu.org,
	qemu-riscv@nongnu.org,
	qemu-s390x@nongnu.org,
	xen-devel@lists.xenproject.org
Subject: [PATCH 14/45] hw/mips/loongson3_virt: use pci_init_nic_devices()
Date: Sun, 22 Oct 2023 16:51:29 +0100
Message-Id: <20231022155200.436340-15-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231022155200.436340-1-dwmw2@infradead.org>
References: <20231022155200.436340-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 hw/mips/loongson3_virt.c | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

diff --git a/hw/mips/loongson3_virt.c b/hw/mips/loongson3_virt.c
index b74b358874..d9d6d4f5b6 100644
--- a/hw/mips/loongson3_virt.c
+++ b/hw/mips/loongson3_virt.c
@@ -452,9 +452,7 @@ static inline void loongson3_virt_devices_init(MachineState *machine,
         usb_create_simple(usb_bus_find(-1), "usb-tablet");
     }
 
-    for (i = 0; i < nb_nics; i++) {
-        pci_nic_init_nofail(&nd_table[i], pci_bus, mc->default_nic, NULL);
-    }
+    pci_init_nic_devices(pci_bus, mc->default_nic);
 }
 
 static void mips_loongson3_virt_init(MachineState *machine)
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Sun Oct 22 15:53:57 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 22 Oct 2023 15:53:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.620674.966343 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quam4-00015I-KC; Sun, 22 Oct 2023 15:53:56 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 620674.966343; Sun, 22 Oct 2023 15: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 1quam3-00011w-Rk; Sun, 22 Oct 2023 15:53:55 +0000
Received: by outflank-mailman (input) for mailman id 620674;
 Sun, 22 Oct 2023 15:53: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=zZR7=GE=casper.srs.infradead.org=BATV+88d8721f4af1339c2fab+7364+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1quam0-0006wY-K6
 for xen-devel@lists.xenproject.org; Sun, 22 Oct 2023 15:53:52 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 30713ecb-70f3-11ee-98d5-6d05b1d4d9a1;
 Sun, 22 Oct 2023 17:53:49 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1quakK-008TGh-EG; Sun, 22 Oct 2023 15:52:08 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1quakJ-001qaN-2W; Sun, 22 Oct 2023 16:52:07 +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
X-Inumbo-ID: 30713ecb-70f3-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=wFuuCRY8zOui6HSYprCMQeB6ch0WHk4OtRxF9bp2LAI=; b=eM7z4la1nf5TDHe2rrilvxonok
	YHTegQ2krOgylCgVG4t6L7b/SWP1IZbamqZ0Kkpc1RSHkfTJNfy3pd9yF6EhdUzxWuxj20QUXAT7r
	orSi4/1mWIHOfc0shwS+tVeoilm4XeKDzJC0cSnzBRQZSTk9gWRY9wKOF3vu2z6jtusPLfhlA1klS
	Pecahj9vzg69+FVNRpSuJZxlhBWUsH0GDgfH1nm3P8R3kIy1uS9V703UkIS+iBdjtJfYMaiRzgBZF
	aOTTQH41SetltFFXtS7ymeSYcZrtGtBezyfulG8VJ1BHXjKDGjeBl1C8atioBKTqyIKzFsIC2mw4e
	eVwkcONQ==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Richard Henderson <richard.henderson@linaro.org>,
	Beniamino Galvani <b.galvani@gmail.com>,
	Peter Maydell <peter.maydell@linaro.org>,
	Strahinja Jankovic <strahinja.p.jankovic@gmail.com>,
	Niek Linnenbank <nieklinnenbank@gmail.com>,
	=?UTF-8?q?C=C3=A9dric=20Le=20Goater?= <clg@kaod.org>,
	Andrew Jeffery <andrew@aj.id.au>,
	Joel Stanley <joel@jms.id.au>,
	Igor Mitsyanko <i.mitsyanko@gmail.com>,
	Jean-Christophe Dubois <jcd@tribudubois.net>,
	Andrey Smirnov <andrew.smirnov@gmail.com>,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
	Rob Herring <robh@kernel.org>,
	Subbaraya Sundeep <sundeep.lkml@gmail.com>,
	Jan Kiszka <jan.kiszka@web.de>,
	Tyrone Ting <kfting@nuvoton.com>,
	Hao Wu <wuhaotsh@google.com>,
	Radoslaw Biernacki <rad@semihalf.com>,
	Leif Lindholm <quic_llindhol@quicinc.com>,
	Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>,
	"Edgar E. Iglesias" <edgar.iglesias@gmail.com>,
	Alistair Francis <alistair@alistair23.me>,
	Helge Deller <deller@gmx.de>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Eduardo Habkost <eduardo@habkost.net>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Song Gao <gaosong@loongson.cn>,
	Thomas Huth <huth@tuxfamily.org>,
	Laurent Vivier <laurent@vivier.eu>,
	Huacai Chen <chenhuacai@kernel.org>,
	Jiaxun Yang <jiaxun.yang@flygoat.com>,
	=?UTF-8?q?Herv=C3=A9=20Poussineau?= <hpoussin@reactos.org>,
	Aleksandar Rikalo <aleksandar.rikalo@syrmia.com>,
	Aurelien Jarno <aurelien@aurel32.net>,
	Jason Wang <jasowang@redhat.com>,
	Jia Liu <proljc@gmail.com>,
	Stafford Horne <shorne@gmail.com>,
	Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>,
	Nicholas Piggin <npiggin@gmail.com>,
	Daniel Henrique Barboza <danielhb413@gmail.com>,
	David Gibson <david@gibson.dropbear.id.au>,
	Harsh Prateek Bora <harshpb@linux.ibm.com>,
	Bin Meng <bin.meng@windriver.com>,
	Palmer Dabbelt <palmer@dabbelt.com>,
	Weiwei Li <liweiwei@iscas.ac.cn>,
	Liu Zhiwei <zhiwei_liu@linux.alibaba.com>,
	David Hildenbrand <david@redhat.com>,
	Ilya Leoshkevich <iii@linux.ibm.com>,
	Halil Pasic <pasic@linux.ibm.com>,
	Christian Borntraeger <borntraeger@linux.ibm.com>,
	Eric Farman <farman@linux.ibm.com>,
	Yoshinori Sato <ysato@users.sourceforge.jp>,
	Magnus Damm <magnus.damm@gmail.com>,
	Artyom Tarasenko <atar4qemu@gmail.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	Max Filippov <jcmvbkbc@gmail.com>,
	qemu-arm@nongnu.org,
	qemu-ppc@nongnu.org,
	qemu-riscv@nongnu.org,
	qemu-s390x@nongnu.org,
	xen-devel@lists.xenproject.org
Subject: [PATCH 31/45] hw/net/etraxfs-eth: use qemu_configure_nic_device()
Date: Sun, 22 Oct 2023 16:51:46 +0100
Message-Id: <20231022155200.436340-32-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231022155200.436340-1-dwmw2@infradead.org>
References: <20231022155200.436340-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 hw/cris/axis_dev88.c      | 9 ++++-----
 hw/net/etraxfs_eth.c      | 5 ++---
 include/hw/cris/etraxfs.h | 2 +-
 3 files changed, 7 insertions(+), 9 deletions(-)

diff --git a/hw/cris/axis_dev88.c b/hw/cris/axis_dev88.c
index d82050d927..b41c4de9ff 100644
--- a/hw/cris/axis_dev88.c
+++ b/hw/cris/axis_dev88.c
@@ -308,15 +308,14 @@ void axisdev88_init(MachineState *machine)
 
     /* Add the two ethernet blocks.  */
     dma_eth = g_malloc0(sizeof dma_eth[0] * 4); /* Allocate 4 channels.  */
-    etraxfs_eth_init(&nd_table[0], 0x30034000, 1, &dma_eth[0], &dma_eth[1]);
-    if (nb_nics > 1) {
-        etraxfs_eth_init(&nd_table[1], 0x30036000, 2, &dma_eth[2], &dma_eth[3]);
-    }
 
+    etraxfs_eth_init(0x30034000, 1, &dma_eth[0], &dma_eth[1]);
     /* The DMA Connector block is missing, hardwire things for now.  */
     etraxfs_dmac_connect_client(etraxfs_dmac, 0, &dma_eth[0]);
     etraxfs_dmac_connect_client(etraxfs_dmac, 1, &dma_eth[1]);
-    if (nb_nics > 1) {
+
+    if (qemu_find_nic_info(dev, true, "fseth")) {
+        etraxfs_eth_init(0x30036000, 2, &dma_eth[2], &dma_eth[3]);
         etraxfs_dmac_connect_client(etraxfs_dmac, 6, &dma_eth[2]);
         etraxfs_dmac_connect_client(etraxfs_dmac, 7, &dma_eth[3]);
     }
diff --git a/hw/net/etraxfs_eth.c b/hw/net/etraxfs_eth.c
index 1b82aec794..ab60eaac04 100644
--- a/hw/net/etraxfs_eth.c
+++ b/hw/net/etraxfs_eth.c
@@ -646,15 +646,14 @@ static void etraxfs_eth_class_init(ObjectClass *klass, void *data)
 
 /* Instantiate an ETRAXFS Ethernet MAC.  */
 DeviceState *
-etraxfs_eth_init(NICInfo *nd, hwaddr base, int phyaddr,
+etraxfs_eth_init(hwaddr base, int phyaddr,
                  struct etraxfs_dma_client *dma_out,
                  struct etraxfs_dma_client *dma_in)
 {
     DeviceState *dev;
-    qemu_check_nic_model(nd, "fseth");
 
     dev = qdev_new("etraxfs-eth");
-    qdev_set_nic_properties(dev, nd);
+    qemu_configure_nic_device(dev, true, "fseth");
     qdev_prop_set_uint32(dev, "phyaddr", phyaddr);
 
     /*
diff --git a/include/hw/cris/etraxfs.h b/include/hw/cris/etraxfs.h
index 467b529dc0..012c4e9974 100644
--- a/include/hw/cris/etraxfs.h
+++ b/include/hw/cris/etraxfs.h
@@ -31,7 +31,7 @@
 #include "hw/sysbus.h"
 #include "qapi/error.h"
 
-DeviceState *etraxfs_eth_init(NICInfo *nd, hwaddr base, int phyaddr,
+DeviceState *etraxfs_eth_init(hwaddr base, int phyaddr,
                               struct etraxfs_dma_client *dma_out,
                               struct etraxfs_dma_client *dma_in);
 
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Sun Oct 22 15:53:57 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 22 Oct 2023 15:53:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.620675.966350 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quam5-0001NP-HT; Sun, 22 Oct 2023 15:53:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 620675.966350; Sun, 22 Oct 2023 15: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 1quam4-0001GY-UD; Sun, 22 Oct 2023 15:53:56 +0000
Received: by outflank-mailman (input) for mailman id 620675;
 Sun, 22 Oct 2023 15: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=zZR7=GE=casper.srs.infradead.org=BATV+88d8721f4af1339c2fab+7364+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1quam0-0007Cq-Sm
 for xen-devel@lists.xenproject.org; Sun, 22 Oct 2023 15:53:52 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 30cade49-70f3-11ee-9b0e-b553b5be7939;
 Sun, 22 Oct 2023 17:53:49 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1quakH-008TGH-DY; Sun, 22 Oct 2023 15:52:05 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1quakH-001qYV-01; Sun, 22 Oct 2023 16:52:05 +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
X-Inumbo-ID: 30cade49-70f3-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=FMouo7QQ2KXBuiMSmFA+4AfL0Ua1HAyBapVBTrY+ccg=; b=E0MEqNTVEqlo96r8WBTGAVzqqM
	WOKcOlQeHsyeBbKjvLocphxD2lv+IUnbo81qo4Gi8Ktprvj7QIsyonsqWnzpb6OOPkO6/ISjmBAUT
	3cOR4aeWvSKwvGx1bye1Sj1ciosiHzjrp3Uw4rmtGQzaE3FyA3smV1/12tjUNgzq7XqBPVZWalOVt
	zBBQ1o1LCIK5OLWeBP+Gg+KhKs+xHPxXY5rvoK8+6ZPH+Fgf0LmxVxU5NvjwvXiYbRqF/dSoVrff7
	J74lSXT7XFrvvrI1CNgBtAVzSR4Re5OKPzgXMgsJdWI1d9DTkWHZUlToq6Yq1BeKTuuVpT9FIp0qK
	5C/gpQSg==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Richard Henderson <richard.henderson@linaro.org>,
	Beniamino Galvani <b.galvani@gmail.com>,
	Peter Maydell <peter.maydell@linaro.org>,
	Strahinja Jankovic <strahinja.p.jankovic@gmail.com>,
	Niek Linnenbank <nieklinnenbank@gmail.com>,
	=?UTF-8?q?C=C3=A9dric=20Le=20Goater?= <clg@kaod.org>,
	Andrew Jeffery <andrew@aj.id.au>,
	Joel Stanley <joel@jms.id.au>,
	Igor Mitsyanko <i.mitsyanko@gmail.com>,
	Jean-Christophe Dubois <jcd@tribudubois.net>,
	Andrey Smirnov <andrew.smirnov@gmail.com>,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
	Rob Herring <robh@kernel.org>,
	Subbaraya Sundeep <sundeep.lkml@gmail.com>,
	Jan Kiszka <jan.kiszka@web.de>,
	Tyrone Ting <kfting@nuvoton.com>,
	Hao Wu <wuhaotsh@google.com>,
	Radoslaw Biernacki <rad@semihalf.com>,
	Leif Lindholm <quic_llindhol@quicinc.com>,
	Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>,
	"Edgar E. Iglesias" <edgar.iglesias@gmail.com>,
	Alistair Francis <alistair@alistair23.me>,
	Helge Deller <deller@gmx.de>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Eduardo Habkost <eduardo@habkost.net>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Song Gao <gaosong@loongson.cn>,
	Thomas Huth <huth@tuxfamily.org>,
	Laurent Vivier <laurent@vivier.eu>,
	Huacai Chen <chenhuacai@kernel.org>,
	Jiaxun Yang <jiaxun.yang@flygoat.com>,
	=?UTF-8?q?Herv=C3=A9=20Poussineau?= <hpoussin@reactos.org>,
	Aleksandar Rikalo <aleksandar.rikalo@syrmia.com>,
	Aurelien Jarno <aurelien@aurel32.net>,
	Jason Wang <jasowang@redhat.com>,
	Jia Liu <proljc@gmail.com>,
	Stafford Horne <shorne@gmail.com>,
	Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>,
	Nicholas Piggin <npiggin@gmail.com>,
	Daniel Henrique Barboza <danielhb413@gmail.com>,
	David Gibson <david@gibson.dropbear.id.au>,
	Harsh Prateek Bora <harshpb@linux.ibm.com>,
	Bin Meng <bin.meng@windriver.com>,
	Palmer Dabbelt <palmer@dabbelt.com>,
	Weiwei Li <liweiwei@iscas.ac.cn>,
	Liu Zhiwei <zhiwei_liu@linux.alibaba.com>,
	David Hildenbrand <david@redhat.com>,
	Ilya Leoshkevich <iii@linux.ibm.com>,
	Halil Pasic <pasic@linux.ibm.com>,
	Christian Borntraeger <borntraeger@linux.ibm.com>,
	Eric Farman <farman@linux.ibm.com>,
	Yoshinori Sato <ysato@users.sourceforge.jp>,
	Magnus Damm <magnus.damm@gmail.com>,
	Artyom Tarasenko <atar4qemu@gmail.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	Max Filippov <jcmvbkbc@gmail.com>,
	qemu-arm@nongnu.org,
	qemu-ppc@nongnu.org,
	qemu-riscv@nongnu.org,
	qemu-s390x@nongnu.org,
	xen-devel@lists.xenproject.org
Subject: [PATCH 05/45] hw/i386/pc: use qemu_get_nic_info() and pci_init_nic_devices()
Date: Sun, 22 Oct 2023 16:51:20 +0100
Message-Id: <20231022155200.436340-6-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231022155200.436340-1-dwmw2@infradead.org>
References: <20231022155200.436340-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

Eliminate direct access to nd_table[] and nb_nics by processing the the
ISA NICs first and then calling pci_init_nic_devices() for the test.

It's important to do this *before* the subsequent patch which registers
the Xen PV network devices, because the code being remove here didn't
check whether nd->instantiated was already set before using each entry.

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 hw/i386/pc.c                | 20 ++++++++++----------
 include/hw/net/ne2000-isa.h |  2 --
 2 files changed, 10 insertions(+), 12 deletions(-)

diff --git a/hw/i386/pc.c b/hw/i386/pc.c
index bb3854d1d0..e08600cbb3 100644
--- a/hw/i386/pc.c
+++ b/hw/i386/pc.c
@@ -652,8 +652,10 @@ static void pc_init_ne2k_isa(ISABus *bus, NICInfo *nd)
 {
     static int nb_ne2k = 0;
 
-    if (nb_ne2k == NE2000_NB_MAX)
+    if (nb_ne2k == NE2000_NB_MAX) {
+        error_setg(&error_fatal, "maximum number of ISA NE2000 devices exceeded");
         return;
+    }
     isa_ne2000_init(bus, ne2000_io[nb_ne2k],
                     ne2000_irq[nb_ne2k], nd);
     nb_ne2k++;
@@ -1294,19 +1296,17 @@ void pc_basic_device_init(struct PCMachineState *pcms,
 void pc_nic_init(PCMachineClass *pcmc, ISABus *isa_bus, PCIBus *pci_bus)
 {
     MachineClass *mc = MACHINE_CLASS(pcmc);
-    int i;
+    bool default_is_ne2k = g_str_equal(mc->default_nic, TYPE_ISA_NE2000);
+    NICInfo *nd;
 
     rom_set_order_override(FW_CFG_ORDER_OVERRIDE_NIC);
-    for (i = 0; i < nb_nics; i++) {
-        NICInfo *nd = &nd_table[i];
-        const char *model = nd->model ? nd->model : mc->default_nic;
 
-        if (g_str_equal(model, "ne2k_isa")) {
-            pc_init_ne2k_isa(isa_bus, nd);
-        } else {
-            pci_nic_init_nofail(nd, pci_bus, model, NULL);
-        }
+    while ((nd = qemu_find_nic_info(TYPE_ISA_NE2000, default_is_ne2k, NULL))) {
+        pc_init_ne2k_isa(isa_bus, nd);
     }
+
+    pci_init_nic_devices(pci_bus, mc->default_nic);
+
     rom_reset_order_override();
 }
 
diff --git a/include/hw/net/ne2000-isa.h b/include/hw/net/ne2000-isa.h
index af59ee0b02..73bae10ad1 100644
--- a/include/hw/net/ne2000-isa.h
+++ b/include/hw/net/ne2000-isa.h
@@ -22,8 +22,6 @@ static inline ISADevice *isa_ne2000_init(ISABus *bus, int base, int irq,
 {
     ISADevice *d;
 
-    qemu_check_nic_model(nd, "ne2k_isa");
-
     d = isa_try_new(TYPE_ISA_NE2000);
     if (d) {
         DeviceState *dev = DEVICE(d);
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Sun Oct 22 15:53:59 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 22 Oct 2023 15:53:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.620676.966363 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quam7-0001yH-Cw; Sun, 22 Oct 2023 15:53:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 620676.966363; Sun, 22 Oct 2023 15: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 1quam6-0001pa-OK; Sun, 22 Oct 2023 15:53:58 +0000
Received: by outflank-mailman (input) for mailman id 620676;
 Sun, 22 Oct 2023 15:53: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=zZR7=GE=casper.srs.infradead.org=BATV+88d8721f4af1339c2fab+7364+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1quam1-0006wY-KP
 for xen-devel@lists.xenproject.org; Sun, 22 Oct 2023 15:53:53 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 3255d32c-70f3-11ee-98d5-6d05b1d4d9a1;
 Sun, 22 Oct 2023 17:53:52 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1quakJ-008TGd-WA; Sun, 22 Oct 2023 15:52:08 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1quakJ-001qaD-1v; Sun, 22 Oct 2023 16:52:07 +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
X-Inumbo-ID: 3255d32c-70f3-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=cDe39DUQ85zReKLUErmTIqxRmXQD1aFZCXjsrH+LZ3s=; b=wYlHB7MJR3qNQm673tJ6ylQwiG
	Q4w+wdhYCdAZUH/BSQXjPoKmOmQH8VIR1ApYlF6SbYjU3nPhXVX5v9WVfwe0Hw3vR5HVqKer14Ic0
	upRmCB8gD1y0SNLX4JlW79DJoNu0ryKdzFIaW24UiHxH5MFibLvPH5bnh3GFI7mJVd8trcpFy/qn3
	gRFzd4OBA1qLgVVjhXcy/WN+TAiiJxNTtV6PRmseWqaw6LJsuuFh4Zpjo4T9IS3oU9W2GS2veJHCF
	6BbaK5WbTGgjXIu+V/KNB3DyniptnKAaSTMPnixjVArh1n7rmDwzaovXV4xmepF471piCTbELCmYh
	JjKAF+Mw==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Richard Henderson <richard.henderson@linaro.org>,
	Beniamino Galvani <b.galvani@gmail.com>,
	Peter Maydell <peter.maydell@linaro.org>,
	Strahinja Jankovic <strahinja.p.jankovic@gmail.com>,
	Niek Linnenbank <nieklinnenbank@gmail.com>,
	=?UTF-8?q?C=C3=A9dric=20Le=20Goater?= <clg@kaod.org>,
	Andrew Jeffery <andrew@aj.id.au>,
	Joel Stanley <joel@jms.id.au>,
	Igor Mitsyanko <i.mitsyanko@gmail.com>,
	Jean-Christophe Dubois <jcd@tribudubois.net>,
	Andrey Smirnov <andrew.smirnov@gmail.com>,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
	Rob Herring <robh@kernel.org>,
	Subbaraya Sundeep <sundeep.lkml@gmail.com>,
	Jan Kiszka <jan.kiszka@web.de>,
	Tyrone Ting <kfting@nuvoton.com>,
	Hao Wu <wuhaotsh@google.com>,
	Radoslaw Biernacki <rad@semihalf.com>,
	Leif Lindholm <quic_llindhol@quicinc.com>,
	Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>,
	"Edgar E. Iglesias" <edgar.iglesias@gmail.com>,
	Alistair Francis <alistair@alistair23.me>,
	Helge Deller <deller@gmx.de>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Eduardo Habkost <eduardo@habkost.net>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Song Gao <gaosong@loongson.cn>,
	Thomas Huth <huth@tuxfamily.org>,
	Laurent Vivier <laurent@vivier.eu>,
	Huacai Chen <chenhuacai@kernel.org>,
	Jiaxun Yang <jiaxun.yang@flygoat.com>,
	=?UTF-8?q?Herv=C3=A9=20Poussineau?= <hpoussin@reactos.org>,
	Aleksandar Rikalo <aleksandar.rikalo@syrmia.com>,
	Aurelien Jarno <aurelien@aurel32.net>,
	Jason Wang <jasowang@redhat.com>,
	Jia Liu <proljc@gmail.com>,
	Stafford Horne <shorne@gmail.com>,
	Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>,
	Nicholas Piggin <npiggin@gmail.com>,
	Daniel Henrique Barboza <danielhb413@gmail.com>,
	David Gibson <david@gibson.dropbear.id.au>,
	Harsh Prateek Bora <harshpb@linux.ibm.com>,
	Bin Meng <bin.meng@windriver.com>,
	Palmer Dabbelt <palmer@dabbelt.com>,
	Weiwei Li <liweiwei@iscas.ac.cn>,
	Liu Zhiwei <zhiwei_liu@linux.alibaba.com>,
	David Hildenbrand <david@redhat.com>,
	Ilya Leoshkevich <iii@linux.ibm.com>,
	Halil Pasic <pasic@linux.ibm.com>,
	Christian Borntraeger <borntraeger@linux.ibm.com>,
	Eric Farman <farman@linux.ibm.com>,
	Yoshinori Sato <ysato@users.sourceforge.jp>,
	Magnus Damm <magnus.damm@gmail.com>,
	Artyom Tarasenko <atar4qemu@gmail.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	Max Filippov <jcmvbkbc@gmail.com>,
	qemu-arm@nongnu.org,
	qemu-ppc@nongnu.org,
	qemu-riscv@nongnu.org,
	qemu-s390x@nongnu.org,
	xen-devel@lists.xenproject.org
Subject: [PATCH 29/45] hw/arm/stellaris: use qemu_find_nic_info()
Date: Sun, 22 Oct 2023 16:51:44 +0100
Message-Id: <20231022155200.436340-30-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231022155200.436340-1-dwmw2@infradead.org>
References: <20231022155200.436340-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

Rather than just using qemu_configure_nic_device(), populate the MAC
address in the system-registers device by peeking at the NICInfo before
it's assigned to the device.

Generate the MAC address early, if there is no matching -nic option.
Otherwise the MAC address wouldn't be generated until net_client_init1()
runs.

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 hw/arm/stellaris.c | 30 ++++++++++++++++++++++--------
 1 file changed, 22 insertions(+), 8 deletions(-)

diff --git a/hw/arm/stellaris.c b/hw/arm/stellaris.c
index aa5b0ddfaa..9385ccaafb 100644
--- a/hw/arm/stellaris.c
+++ b/hw/arm/stellaris.c
@@ -1025,7 +1025,8 @@ static void stellaris_init(MachineState *ms, stellaris_board_info *board)
     DeviceState *ssys_dev;
     int i;
     int j;
-    const uint8_t *macaddr;
+    NICInfo *nd;
+    MACAddr mac;
 
     MemoryRegion *sram = g_new(MemoryRegion, 1);
     MemoryRegion *flash = g_new(MemoryRegion, 1);
@@ -1048,12 +1049,22 @@ static void stellaris_init(MachineState *ms, stellaris_board_info *board)
      * need its sysclk output.
      */
     ssys_dev = qdev_new(TYPE_STELLARIS_SYS);
-    /* Most devices come preprogrammed with a MAC address in the user data. */
-    macaddr = nd_table[0].macaddr.a;
+
+    /*
+     * Most devices come preprogrammed with a MAC address in the user data.
+     * Generate a MAC address now, if there isn't a matching -nic for it.
+     */
+    nd = qemu_find_nic_info("stellaris_enet", true, "stellaris");
+    if (nd) {
+        memcpy(mac.a, nd->macaddr.a, sizeof(mac.a));
+    } else {
+        qemu_macaddr_default_if_unset(&mac);
+    }
+
     qdev_prop_set_uint32(ssys_dev, "user0",
-                         macaddr[0] | (macaddr[1] << 8) | (macaddr[2] << 16));
+                         mac.a[0] | (mac.a[1] << 8) | (mac.a[2] << 16));
     qdev_prop_set_uint32(ssys_dev, "user1",
-                         macaddr[3] | (macaddr[4] << 8) | (macaddr[5] << 16));
+                         mac.a[3] | (mac.a[4] << 8) | (mac.a[5] << 16));
     qdev_prop_set_uint32(ssys_dev, "did0", board->did0);
     qdev_prop_set_uint32(ssys_dev, "did1", board->did1);
     qdev_prop_set_uint32(ssys_dev, "dc0", board->dc0);
@@ -1265,10 +1276,13 @@ static void stellaris_init(MachineState *ms, stellaris_board_info *board)
     if (board->dc4 & (1 << 28)) {
         DeviceState *enet;
 
-        qemu_check_nic_model(&nd_table[0], "stellaris");
-
         enet = qdev_new("stellaris_enet");
-        qdev_set_nic_properties(enet, &nd_table[0]);
+        if (nd) {
+            qdev_set_nic_properties(enet, nd);
+        } else {
+            qdev_prop_set_macaddr(enet, "mac", mac.a);
+        }
+
         sysbus_realize_and_unref(SYS_BUS_DEVICE(enet), &error_fatal);
         sysbus_mmio_map(SYS_BUS_DEVICE(enet), 0, 0x40048000);
         sysbus_connect_irq(SYS_BUS_DEVICE(enet), 0, qdev_get_gpio_in(nvic, 42));
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Sun Oct 22 15:54:01 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 22 Oct 2023 15:54:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.620677.966377 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quam8-0002Co-Pb; Sun, 22 Oct 2023 15:54:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 620677.966377; Sun, 22 Oct 2023 15: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 1quam8-00027V-10; Sun, 22 Oct 2023 15:54:00 +0000
Received: by outflank-mailman (input) for mailman id 620677;
 Sun, 22 Oct 2023 15: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=zZR7=GE=casper.srs.infradead.org=BATV+88d8721f4af1339c2fab+7364+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1quam3-0007Cq-Bx
 for xen-devel@lists.xenproject.org; Sun, 22 Oct 2023 15:53:55 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 32921ea7-70f3-11ee-9b0e-b553b5be7939;
 Sun, 22 Oct 2023 17:53:52 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1quakH-008TGE-6H; Sun, 22 Oct 2023 15:52:05 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1quakG-001qYJ-2G; Sun, 22 Oct 2023 16:52:04 +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
X-Inumbo-ID: 32921ea7-70f3-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=jiJokkAd+xFdnQ5u2oAofZ5wGwg1JXjEJQz9TEy2l7Q=; b=fnKS23KVp+Jq2Us1+mVC4C7LWL
	9TTKXsX/mF6OW9aMxjPdN8+8QgpNwBOYNiYFv7Npnyv9hTrJqnwnWlP56lTrGNkm4PAeXyLg9wc7j
	wjo6qfGtVVFdhLQEMVbUfXTaVlMvXVeIJM9FuPSXahJw2JdhiARnBGsmBtyxaPgiYjNDdSEbmDQA6
	Wi2mTu4FfszMUQDsybU9Iuuzfp23oThWzCRzGBKaMAag0YT3a/oMrz9gbNq0BCkJYP6YqG0wz2ssi
	UWSyOGQK79+yF+C2h03XsEzHER1t/zSjKOPruuHqSAt/JJgrHz+3K9MSDb0KIe0qHFjlp4984OPdN
	LJTUIo1A==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Richard Henderson <richard.henderson@linaro.org>,
	Beniamino Galvani <b.galvani@gmail.com>,
	Peter Maydell <peter.maydell@linaro.org>,
	Strahinja Jankovic <strahinja.p.jankovic@gmail.com>,
	Niek Linnenbank <nieklinnenbank@gmail.com>,
	=?UTF-8?q?C=C3=A9dric=20Le=20Goater?= <clg@kaod.org>,
	Andrew Jeffery <andrew@aj.id.au>,
	Joel Stanley <joel@jms.id.au>,
	Igor Mitsyanko <i.mitsyanko@gmail.com>,
	Jean-Christophe Dubois <jcd@tribudubois.net>,
	Andrey Smirnov <andrew.smirnov@gmail.com>,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
	Rob Herring <robh@kernel.org>,
	Subbaraya Sundeep <sundeep.lkml@gmail.com>,
	Jan Kiszka <jan.kiszka@web.de>,
	Tyrone Ting <kfting@nuvoton.com>,
	Hao Wu <wuhaotsh@google.com>,
	Radoslaw Biernacki <rad@semihalf.com>,
	Leif Lindholm <quic_llindhol@quicinc.com>,
	Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>,
	"Edgar E. Iglesias" <edgar.iglesias@gmail.com>,
	Alistair Francis <alistair@alistair23.me>,
	Helge Deller <deller@gmx.de>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Eduardo Habkost <eduardo@habkost.net>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Song Gao <gaosong@loongson.cn>,
	Thomas Huth <huth@tuxfamily.org>,
	Laurent Vivier <laurent@vivier.eu>,
	Huacai Chen <chenhuacai@kernel.org>,
	Jiaxun Yang <jiaxun.yang@flygoat.com>,
	=?UTF-8?q?Herv=C3=A9=20Poussineau?= <hpoussin@reactos.org>,
	Aleksandar Rikalo <aleksandar.rikalo@syrmia.com>,
	Aurelien Jarno <aurelien@aurel32.net>,
	Jason Wang <jasowang@redhat.com>,
	Jia Liu <proljc@gmail.com>,
	Stafford Horne <shorne@gmail.com>,
	Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>,
	Nicholas Piggin <npiggin@gmail.com>,
	Daniel Henrique Barboza <danielhb413@gmail.com>,
	David Gibson <david@gibson.dropbear.id.au>,
	Harsh Prateek Bora <harshpb@linux.ibm.com>,
	Bin Meng <bin.meng@windriver.com>,
	Palmer Dabbelt <palmer@dabbelt.com>,
	Weiwei Li <liweiwei@iscas.ac.cn>,
	Liu Zhiwei <zhiwei_liu@linux.alibaba.com>,
	David Hildenbrand <david@redhat.com>,
	Ilya Leoshkevich <iii@linux.ibm.com>,
	Halil Pasic <pasic@linux.ibm.com>,
	Christian Borntraeger <borntraeger@linux.ibm.com>,
	Eric Farman <farman@linux.ibm.com>,
	Yoshinori Sato <ysato@users.sourceforge.jp>,
	Magnus Damm <magnus.damm@gmail.com>,
	Artyom Tarasenko <atar4qemu@gmail.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	Max Filippov <jcmvbkbc@gmail.com>,
	qemu-arm@nongnu.org,
	qemu-ppc@nongnu.org,
	qemu-riscv@nongnu.org,
	qemu-s390x@nongnu.org,
	xen-devel@lists.xenproject.org
Subject: [PATCH 02/45] net: report list of available models according to platform
Date: Sun, 22 Oct 2023 16:51:17 +0100
Message-Id: <20231022155200.436340-3-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231022155200.436340-1-dwmw2@infradead.org>
References: <20231022155200.436340-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

By noting the models for which a configuration was requested, we can give
the user an accurate list of which NIC models were actually available on
the platform/configuration that was otherwise chosen.

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 net/net.c | 94 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 94 insertions(+)

diff --git a/net/net.c b/net/net.c
index 606816a3b3..6e20f9d2e9 100644
--- a/net/net.c
+++ b/net/net.c
@@ -75,6 +75,8 @@ typedef QSIMPLEQ_HEAD(, NetdevQueueEntry) NetdevQueue;
 
 static NetdevQueue nd_queue = QSIMPLEQ_HEAD_INITIALIZER(nd_queue);
 
+static GHashTable *nic_model_help;
+
 /***********************************************************/
 /* network device redirectors */
 
@@ -1072,12 +1074,94 @@ static int net_init_nic(const Netdev *netdev, const char *name,
     return idx;
 }
 
+static gboolean add_nic_result(gpointer key, gpointer value, gpointer user_data)
+{
+    GPtrArray *results = user_data;
+    GPtrArray *alias_list = value;
+    const char *model = key;
+    char *result;
+
+    if (!alias_list) {
+        result = g_strdup(model);
+    } else {
+        GString *result_str = g_string_new(model);
+        int i;
+
+        g_string_append(result_str, " (aka ");
+        for (i = 0; i < alias_list->len; i++) {
+            if (i) {
+                g_string_append(result_str, ", ");
+            }
+            g_string_append(result_str, alias_list->pdata[i]);
+        }
+        g_string_append(result_str, ")");
+        result = result_str->str;
+        g_string_free(result_str, false);
+        g_ptr_array_unref(alias_list);
+    }
+    g_ptr_array_add(results, result);
+    return true;
+}
+
+static int model_cmp(char **a, char **b)
+{
+    return strcmp(*a, *b);
+}
+
+static void show_nic_models(void)
+{
+    GPtrArray *results = g_ptr_array_new();
+    int i;
+
+    g_hash_table_foreach_remove(nic_model_help, add_nic_result, results);
+    g_ptr_array_sort(results, (GCompareFunc)model_cmp);
+
+    printf("Available NIC models for this configuration:\n");
+    for (i = 0 ; i < results->len; i++) {
+        printf("%s\n", (char *)results->pdata[i]);
+    }
+    g_hash_table_unref(nic_model_help);
+    nic_model_help = NULL;
+}
+
+static void add_nic_model_help(const char *model, const char *alias)
+{
+    GPtrArray *alias_list = NULL;
+
+    if (g_hash_table_lookup_extended(nic_model_help, model, NULL,
+                                     (gpointer *)&alias_list)) {
+        /* Already exists, no alias to add: return */
+        if (!alias) {
+            return;
+        }
+        if (alias_list) {
+            /* Check if this alias is already in the list. Add if not. */
+            if (!g_ptr_array_find_with_equal_func(alias_list, alias,
+                                                  g_str_equal, NULL)) {
+                g_ptr_array_add(alias_list, g_strdup(alias));
+            }
+            return;
+        }
+    }
+    /* Either this model wasn't in the list already, or a first alias added */
+    if (alias) {
+        alias_list = g_ptr_array_new();
+        g_ptr_array_set_free_func(alias_list, g_free);
+        g_ptr_array_add(alias_list, g_strdup(alias));
+    }
+    g_hash_table_replace(nic_model_help, g_strdup(model), alias_list);
+}
+
 NICInfo *qemu_find_nic_info(const char *typename, bool match_default,
                             const char *alias)
 {
     NICInfo *nd;
     int i;
 
+    if (nic_model_help) {
+        add_nic_model_help(typename, alias);
+    }
+
     for (i = 0; i < nb_nics; i++) {
         nd = &nd_table[i];
 
@@ -1590,6 +1674,10 @@ void net_check_clients(void)
     NetClientState *nc;
     int i;
 
+    if (nic_model_help) {
+        show_nic_models();
+        exit(0);
+    }
     net_hub_check_clients();
 
     QTAILQ_FOREACH(nc, &net_clients, next) {
@@ -1669,6 +1757,12 @@ static int net_param_nic(void *dummy, QemuOpts *opts, Error **errp)
     memset(ni, 0, sizeof(*ni));
     ni->model = qemu_opt_get_del(opts, "model");
 
+    if (!nic_model_help && !g_strcmp0(ni->model, "help")) {
+        nic_model_help = g_hash_table_new_full(g_str_hash, g_str_equal,
+                                               g_free, NULL);
+        return 0;
+    }
+
     /* Create an ID if the user did not specify one */
     nd_id = g_strdup(qemu_opts_id(opts));
     if (!nd_id) {
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Sun Oct 22 15:54:02 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 22 Oct 2023 15:54:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.620678.966383 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quam9-0002Pj-V3; Sun, 22 Oct 2023 15:54:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 620678.966383; Sun, 22 Oct 2023 15:54: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 1quam8-0002IX-Uo; Sun, 22 Oct 2023 15:54:00 +0000
Received: by outflank-mailman (input) for mailman id 620678;
 Sun, 22 Oct 2023 15:53: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=zZR7=GE=casper.srs.infradead.org=BATV+88d8721f4af1339c2fab+7364+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1quam4-0007Cq-BI
 for xen-devel@lists.xenproject.org; Sun, 22 Oct 2023 15:53:56 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 3346e2bd-70f3-11ee-9b0e-b553b5be7939;
 Sun, 22 Oct 2023 17:53:53 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1quakK-008TGi-7C; Sun, 22 Oct 2023 15:52:08 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1quakJ-001qaS-2m; Sun, 22 Oct 2023 16:52:07 +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
X-Inumbo-ID: 3346e2bd-70f3-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=JzTcQ0rBwuNh/dC2n4aXnWP2v8pqHl5GWh4fXA8+m4Y=; b=TBJPbKw8zZXGvkgfoDHCY7jqCr
	I8o1kjziqiYAA0ymr7W5GAG1c+Pt4k1vwBZVjwCXVYUv+JONH/C/Z7vExYq1DYf8sB3trXGTTUtcT
	nOFg82E4VXm/eToIN21YPh6E71idDBLA/EBIdurcoKVz6zUvhQRF+QAqSXucLLkJNRm+UsjJv99pC
	c/J2Wg25NMOgeq8NkfsqcjNrNtuUlDs2mT7HDkVOFL0YmFq0XzWlc6P5yIYj//0ClsZ0AEFRlLJJh
	QlonA5UaMj44wTj7SizE30BqyHPDFfrpohf6ZDSmcLzwvdgKWHWEHkc1QBy9COwESNMfcOVjXkqPT
	muHaZ0bg==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Richard Henderson <richard.henderson@linaro.org>,
	Beniamino Galvani <b.galvani@gmail.com>,
	Peter Maydell <peter.maydell@linaro.org>,
	Strahinja Jankovic <strahinja.p.jankovic@gmail.com>,
	Niek Linnenbank <nieklinnenbank@gmail.com>,
	=?UTF-8?q?C=C3=A9dric=20Le=20Goater?= <clg@kaod.org>,
	Andrew Jeffery <andrew@aj.id.au>,
	Joel Stanley <joel@jms.id.au>,
	Igor Mitsyanko <i.mitsyanko@gmail.com>,
	Jean-Christophe Dubois <jcd@tribudubois.net>,
	Andrey Smirnov <andrew.smirnov@gmail.com>,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
	Rob Herring <robh@kernel.org>,
	Subbaraya Sundeep <sundeep.lkml@gmail.com>,
	Jan Kiszka <jan.kiszka@web.de>,
	Tyrone Ting <kfting@nuvoton.com>,
	Hao Wu <wuhaotsh@google.com>,
	Radoslaw Biernacki <rad@semihalf.com>,
	Leif Lindholm <quic_llindhol@quicinc.com>,
	Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>,
	"Edgar E. Iglesias" <edgar.iglesias@gmail.com>,
	Alistair Francis <alistair@alistair23.me>,
	Helge Deller <deller@gmx.de>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Eduardo Habkost <eduardo@habkost.net>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Song Gao <gaosong@loongson.cn>,
	Thomas Huth <huth@tuxfamily.org>,
	Laurent Vivier <laurent@vivier.eu>,
	Huacai Chen <chenhuacai@kernel.org>,
	Jiaxun Yang <jiaxun.yang@flygoat.com>,
	=?UTF-8?q?Herv=C3=A9=20Poussineau?= <hpoussin@reactos.org>,
	Aleksandar Rikalo <aleksandar.rikalo@syrmia.com>,
	Aurelien Jarno <aurelien@aurel32.net>,
	Jason Wang <jasowang@redhat.com>,
	Jia Liu <proljc@gmail.com>,
	Stafford Horne <shorne@gmail.com>,
	Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>,
	Nicholas Piggin <npiggin@gmail.com>,
	Daniel Henrique Barboza <danielhb413@gmail.com>,
	David Gibson <david@gibson.dropbear.id.au>,
	Harsh Prateek Bora <harshpb@linux.ibm.com>,
	Bin Meng <bin.meng@windriver.com>,
	Palmer Dabbelt <palmer@dabbelt.com>,
	Weiwei Li <liweiwei@iscas.ac.cn>,
	Liu Zhiwei <zhiwei_liu@linux.alibaba.com>,
	David Hildenbrand <david@redhat.com>,
	Ilya Leoshkevich <iii@linux.ibm.com>,
	Halil Pasic <pasic@linux.ibm.com>,
	Christian Borntraeger <borntraeger@linux.ibm.com>,
	Eric Farman <farman@linux.ibm.com>,
	Yoshinori Sato <ysato@users.sourceforge.jp>,
	Magnus Damm <magnus.damm@gmail.com>,
	Artyom Tarasenko <atar4qemu@gmail.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	Max Filippov <jcmvbkbc@gmail.com>,
	qemu-arm@nongnu.org,
	qemu-ppc@nongnu.org,
	qemu-riscv@nongnu.org,
	qemu-s390x@nongnu.org,
	xen-devel@lists.xenproject.org
Subject: [PATCH 32/45] hw/m68k/mcf5208: use qemu_create_nic_device()
Date: Sun, 22 Oct 2023 16:51:47 +0100
Message-Id: <20231022155200.436340-33-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231022155200.436340-1-dwmw2@infradead.org>
References: <20231022155200.436340-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 hw/m68k/mcf5208.c | 20 ++++++--------------
 1 file changed, 6 insertions(+), 14 deletions(-)

diff --git a/hw/m68k/mcf5208.c b/hw/m68k/mcf5208.c
index be1033f84f..cf23b7dc6e 100644
--- a/hw/m68k/mcf5208.c
+++ b/hw/m68k/mcf5208.c
@@ -206,16 +206,16 @@ static void mcf5208_sys_init(MemoryRegion *address_space, qemu_irq *pic)
     }
 }
 
-static void mcf_fec_init(MemoryRegion *sysmem, NICInfo *nd, hwaddr base,
-                         qemu_irq *irqs)
+static void mcf_fec_init(MemoryRegion *sysmem, hwaddr base, qemu_irq *irqs)
 {
     DeviceState *dev;
     SysBusDevice *s;
     int i;
 
-    qemu_check_nic_model(nd, TYPE_MCF_FEC_NET);
-    dev = qdev_new(TYPE_MCF_FEC_NET);
-    qdev_set_nic_properties(dev, nd);
+    dev = qemu_create_nic_device(TYPE_MCF_FEC_NET, true, NULL);
+    if (!dev) {
+        return;
+    }
 
     s = SYS_BUS_DEVICE(dev);
     sysbus_realize_and_unref(s, &error_fatal);
@@ -267,17 +267,9 @@ static void mcf5208evb_init(MachineState *machine)
 
     mcf5208_sys_init(address_space_mem, pic);
 
-    if (nb_nics > 1) {
-        error_report("Too many NICs");
-        exit(1);
-    }
-    if (nd_table[0].used) {
-        mcf_fec_init(address_space_mem, &nd_table[0],
-                     0xfc030000, pic + 36);
-    }
+    mcf_fec_init(address_space_mem, 0xfc030000, pic + 36);
 
     g_free(pic);
-
     /*  0xfc000000 SCM.  */
     /*  0xfc004000 XBS.  */
     /*  0xfc008000 FlexBus CS.  */
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Sun Oct 22 15:54:03 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 22 Oct 2023 15:54:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.620679.966392 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quamB-0002lF-HM; Sun, 22 Oct 2023 15:54:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 620679.966392; Sun, 22 Oct 2023 15: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 1quamA-0002fi-8Z; Sun, 22 Oct 2023 15:54:02 +0000
Received: by outflank-mailman (input) for mailman id 620679;
 Sun, 22 Oct 2023 15: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=zZR7=GE=casper.srs.infradead.org=BATV+88d8721f4af1339c2fab+7364+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1quam6-0007Cq-Ae
 for xen-devel@lists.xenproject.org; Sun, 22 Oct 2023 15:53:58 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 346cf61a-70f3-11ee-9b0e-b553b5be7939;
 Sun, 22 Oct 2023 17:53:55 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1quakL-008TGx-DB; Sun, 22 Oct 2023 15:52:09 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1quakL-001qbP-03; Sun, 22 Oct 2023 16:52:09 +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
X-Inumbo-ID: 346cf61a-70f3-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=lW4zrMtqp+RmpNoA/oVWXnLHObLrSyX00MNJ9BrDmtw=; b=IryzMNIYbd8IySEDjNh5QyewtC
	qktZ7fkA02qfNdewjcf15ujZ4dLWZbd4PEihsWEpzILqPDuXalN9tf+4Htj6ipOmDe3pZbRCKp1Uf
	8pwpN36n83U2XrZIwCgHdjUjxVn9OGcE3RAwj6DymgrXGFQjXqNmZeeKVyngfLSUVQIYjD+PWLN6m
	4rFpwdMXLu06iCJjIftgD9sAAsi5XFn/XxWs/yJXjOjTws9O8D1F/fbOzv+ThL8070sWL/sdZ9nWj
	08f3AsF8wASbJ0JpZu9RGXFijUoDB0PXrLFsc/7VZeZa8BZhUBDkAnsCgyJC0vaaCiMR7bfpwRGLq
	9SmmFdKA==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Richard Henderson <richard.henderson@linaro.org>,
	Beniamino Galvani <b.galvani@gmail.com>,
	Peter Maydell <peter.maydell@linaro.org>,
	Strahinja Jankovic <strahinja.p.jankovic@gmail.com>,
	Niek Linnenbank <nieklinnenbank@gmail.com>,
	=?UTF-8?q?C=C3=A9dric=20Le=20Goater?= <clg@kaod.org>,
	Andrew Jeffery <andrew@aj.id.au>,
	Joel Stanley <joel@jms.id.au>,
	Igor Mitsyanko <i.mitsyanko@gmail.com>,
	Jean-Christophe Dubois <jcd@tribudubois.net>,
	Andrey Smirnov <andrew.smirnov@gmail.com>,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
	Rob Herring <robh@kernel.org>,
	Subbaraya Sundeep <sundeep.lkml@gmail.com>,
	Jan Kiszka <jan.kiszka@web.de>,
	Tyrone Ting <kfting@nuvoton.com>,
	Hao Wu <wuhaotsh@google.com>,
	Radoslaw Biernacki <rad@semihalf.com>,
	Leif Lindholm <quic_llindhol@quicinc.com>,
	Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>,
	"Edgar E. Iglesias" <edgar.iglesias@gmail.com>,
	Alistair Francis <alistair@alistair23.me>,
	Helge Deller <deller@gmx.de>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Eduardo Habkost <eduardo@habkost.net>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Song Gao <gaosong@loongson.cn>,
	Thomas Huth <huth@tuxfamily.org>,
	Laurent Vivier <laurent@vivier.eu>,
	Huacai Chen <chenhuacai@kernel.org>,
	Jiaxun Yang <jiaxun.yang@flygoat.com>,
	=?UTF-8?q?Herv=C3=A9=20Poussineau?= <hpoussin@reactos.org>,
	Aleksandar Rikalo <aleksandar.rikalo@syrmia.com>,
	Aurelien Jarno <aurelien@aurel32.net>,
	Jason Wang <jasowang@redhat.com>,
	Jia Liu <proljc@gmail.com>,
	Stafford Horne <shorne@gmail.com>,
	Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>,
	Nicholas Piggin <npiggin@gmail.com>,
	Daniel Henrique Barboza <danielhb413@gmail.com>,
	David Gibson <david@gibson.dropbear.id.au>,
	Harsh Prateek Bora <harshpb@linux.ibm.com>,
	Bin Meng <bin.meng@windriver.com>,
	Palmer Dabbelt <palmer@dabbelt.com>,
	Weiwei Li <liweiwei@iscas.ac.cn>,
	Liu Zhiwei <zhiwei_liu@linux.alibaba.com>,
	David Hildenbrand <david@redhat.com>,
	Ilya Leoshkevich <iii@linux.ibm.com>,
	Halil Pasic <pasic@linux.ibm.com>,
	Christian Borntraeger <borntraeger@linux.ibm.com>,
	Eric Farman <farman@linux.ibm.com>,
	Yoshinori Sato <ysato@users.sourceforge.jp>,
	Magnus Damm <magnus.damm@gmail.com>,
	Artyom Tarasenko <atar4qemu@gmail.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	Max Filippov <jcmvbkbc@gmail.com>,
	qemu-arm@nongnu.org,
	qemu-ppc@nongnu.org,
	qemu-riscv@nongnu.org,
	qemu-s390x@nongnu.org,
	xen-devel@lists.xenproject.org
Subject: [PATCH 44/45] net: remove qemu_show_nic_models(), qemu_find_nic_model()
Date: Sun, 22 Oct 2023 16:51:59 +0100
Message-Id: <20231022155200.436340-45-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231022155200.436340-1-dwmw2@infradead.org>
References: <20231022155200.436340-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

These old functions can be removed now too. Let net_param_nic() print
the full set of network devices directly, and also make it note that a
list more specific to this platform/config will be available by using
'-nic model=help' instead.

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 include/net/net.h |  3 ---
 net/net.c         | 39 ++++++---------------------------------
 2 files changed, 6 insertions(+), 36 deletions(-)

diff --git a/include/net/net.h b/include/net/net.h
index 1512650190..290e604f03 100644
--- a/include/net/net.h
+++ b/include/net/net.h
@@ -201,9 +201,6 @@ void qemu_set_vnet_hdr_len(NetClientState *nc, int len);
 int qemu_set_vnet_le(NetClientState *nc, bool is_le);
 int qemu_set_vnet_be(NetClientState *nc, bool is_be);
 void qemu_macaddr_default_if_unset(MACAddr *macaddr);
-int qemu_show_nic_models(const char *arg, const char *const *models);
-int qemu_find_nic_model(NICInfo *nd, const char * const *models,
-                        const char *default_model);
 NICInfo *qemu_find_nic_info(const char *typename, bool match_default,
                             const char *alias);
 bool qemu_configure_nic_device(DeviceState *dev, bool match_default,
diff --git a/net/net.c b/net/net.c
index bdb31dcb27..ed0d638454 100644
--- a/net/net.c
+++ b/net/net.c
@@ -962,38 +962,6 @@ GPtrArray *qemu_get_nic_models(const char *device_type)
     return nic_models;
 }
 
-int qemu_show_nic_models(const char *arg, const char *const *models)
-{
-    int i;
-
-    if (!arg || !is_help_option(arg)) {
-        return 0;
-    }
-
-    printf("Available NIC models:\n");
-    for (i = 0 ; models[i]; i++) {
-        printf("%s\n", models[i]);
-    }
-    return 1;
-}
-
-int qemu_find_nic_model(NICInfo *nd, const char * const *models,
-                        const char *default_model)
-{
-    int i;
-
-    if (!nd->model)
-        nd->model = g_strdup(default_model);
-
-    for (i = 0 ; models[i]; i++) {
-        if (strcmp(nd->model, models[i]) == 0)
-            return i;
-    }
-
-    error_report("Unsupported NIC model: %s", nd->model);
-    return -1;
-}
-
 static int net_init_nic(const Netdev *netdev, const char *name,
                         NetClientState *peer, Error **errp)
 {
@@ -1775,9 +1743,14 @@ static int net_param_nic(void *dummy, QemuOpts *opts, Error **errp)
         }
         if (is_help_option(type)) {
             GPtrArray *nic_models = qemu_get_nic_models(TYPE_DEVICE);
+            int i;
             show_netdevs();
             printf("\n");
-            qemu_show_nic_models(type, (const char **)nic_models->pdata);
+            printf("Supported NIC models "
+                   "(use -nic model=help for a filtered list):\n");
+            for (i = 0 ; nic_models->pdata[i]; i++) {
+                printf("%s\n", (char *)nic_models->pdata[i]);
+            }
             g_ptr_array_free(nic_models, true);
             exit(0);
         }
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Sun Oct 22 15:54:07 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 22 Oct 2023 15:54:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.620680.966412 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quamF-0003iP-2t; Sun, 22 Oct 2023 15:54:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 620680.966412; Sun, 22 Oct 2023 15:54: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 1quamE-0003eF-Gr; Sun, 22 Oct 2023 15:54:06 +0000
Received: by outflank-mailman (input) for mailman id 620680;
 Sun, 22 Oct 2023 15:54: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=zZR7=GE=casper.srs.infradead.org=BATV+88d8721f4af1339c2fab+7364+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1quamB-0007Cq-KA
 for xen-devel@lists.xenproject.org; Sun, 22 Oct 2023 15:54:03 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 378da265-70f3-11ee-9b0e-b553b5be7939;
 Sun, 22 Oct 2023 17:54:00 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1quakH-008TGD-0E; Sun, 22 Oct 2023 15:52:05 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1quakG-001qYF-1u; Sun, 22 Oct 2023 16:52:04 +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
X-Inumbo-ID: 378da265-70f3-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=VNjlOw9Lzpr/68VPEyhUsosbr0JH0Sj3vnXB3DE2UGU=; b=Y2hRKEOH6Ds9uWxRws1Kg6CNFB
	ApE/teelN4H4OaNS9SQyP6hMJyNh5wzEHc/mxxFC/mF7+Yil0HSYonuHR2elCqZUFRnE2/3tlS/ir
	SGCOUNcLXiH5W0stnzpO5SKOX5qvHUi0NU8yS/OCoIdjPmwn8zWLmHXM2GxOwk+Iq2UY9Gq1MLArr
	L2NtTPwvAVvaZLyk9HDhDW9X2aDOgglCeSAm+s7Tf0sYj+fUMsuYAJj/AgxM8mB3dxetwKRF37WOU
	CG6oi5QSvtGxisnwoqD0lwgdOMH9nLTI1ajWWIwT6cilePhtUwNhUvXHpo6tUUikL07Gu1qhfb0yR
	vRXNieaA==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Richard Henderson <richard.henderson@linaro.org>,
	Beniamino Galvani <b.galvani@gmail.com>,
	Peter Maydell <peter.maydell@linaro.org>,
	Strahinja Jankovic <strahinja.p.jankovic@gmail.com>,
	Niek Linnenbank <nieklinnenbank@gmail.com>,
	=?UTF-8?q?C=C3=A9dric=20Le=20Goater?= <clg@kaod.org>,
	Andrew Jeffery <andrew@aj.id.au>,
	Joel Stanley <joel@jms.id.au>,
	Igor Mitsyanko <i.mitsyanko@gmail.com>,
	Jean-Christophe Dubois <jcd@tribudubois.net>,
	Andrey Smirnov <andrew.smirnov@gmail.com>,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
	Rob Herring <robh@kernel.org>,
	Subbaraya Sundeep <sundeep.lkml@gmail.com>,
	Jan Kiszka <jan.kiszka@web.de>,
	Tyrone Ting <kfting@nuvoton.com>,
	Hao Wu <wuhaotsh@google.com>,
	Radoslaw Biernacki <rad@semihalf.com>,
	Leif Lindholm <quic_llindhol@quicinc.com>,
	Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>,
	"Edgar E. Iglesias" <edgar.iglesias@gmail.com>,
	Alistair Francis <alistair@alistair23.me>,
	Helge Deller <deller@gmx.de>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Eduardo Habkost <eduardo@habkost.net>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Song Gao <gaosong@loongson.cn>,
	Thomas Huth <huth@tuxfamily.org>,
	Laurent Vivier <laurent@vivier.eu>,
	Huacai Chen <chenhuacai@kernel.org>,
	Jiaxun Yang <jiaxun.yang@flygoat.com>,
	=?UTF-8?q?Herv=C3=A9=20Poussineau?= <hpoussin@reactos.org>,
	Aleksandar Rikalo <aleksandar.rikalo@syrmia.com>,
	Aurelien Jarno <aurelien@aurel32.net>,
	Jason Wang <jasowang@redhat.com>,
	Jia Liu <proljc@gmail.com>,
	Stafford Horne <shorne@gmail.com>,
	Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>,
	Nicholas Piggin <npiggin@gmail.com>,
	Daniel Henrique Barboza <danielhb413@gmail.com>,
	David Gibson <david@gibson.dropbear.id.au>,
	Harsh Prateek Bora <harshpb@linux.ibm.com>,
	Bin Meng <bin.meng@windriver.com>,
	Palmer Dabbelt <palmer@dabbelt.com>,
	Weiwei Li <liweiwei@iscas.ac.cn>,
	Liu Zhiwei <zhiwei_liu@linux.alibaba.com>,
	David Hildenbrand <david@redhat.com>,
	Ilya Leoshkevich <iii@linux.ibm.com>,
	Halil Pasic <pasic@linux.ibm.com>,
	Christian Borntraeger <borntraeger@linux.ibm.com>,
	Eric Farman <farman@linux.ibm.com>,
	Yoshinori Sato <ysato@users.sourceforge.jp>,
	Magnus Damm <magnus.damm@gmail.com>,
	Artyom Tarasenko <atar4qemu@gmail.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	Max Filippov <jcmvbkbc@gmail.com>,
	qemu-arm@nongnu.org,
	qemu-ppc@nongnu.org,
	qemu-riscv@nongnu.org,
	qemu-s390x@nongnu.org,
	xen-devel@lists.xenproject.org
Subject: [PATCH 01/45] net: add qemu_{configure,create}_nic_device(), qemu_find_nic_info()
Date: Sun, 22 Oct 2023 16:51:16 +0100
Message-Id: <20231022155200.436340-2-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231022155200.436340-1-dwmw2@infradead.org>
References: <20231022155200.436340-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

Most code which directly accesses nd_table[] and nb_nics uses them for
one of two things. Either "I have created a NIC device and I'd like a
configuration for it", or "I will create a NIC device *if* there is a
configuration for it".  With some variants on the theme around whether
they actually *check* if the model specified in the configuration is
the right one.

Provide functions which perform both of those, allowing platforms to
be a little more consistent and as a step towards making nd_table[]
and nb_nics private to the net code.

Also export the qemu_find_nic_info() helper, as some platforms have
special cases they need to handle.

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 include/net/net.h |  7 ++++++-
 net/net.c         | 50 +++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 56 insertions(+), 1 deletion(-)

diff --git a/include/net/net.h b/include/net/net.h
index 2fb1c9181c..56be694c75 100644
--- a/include/net/net.h
+++ b/include/net/net.h
@@ -205,7 +205,12 @@ int qemu_show_nic_models(const char *arg, const char *const *models);
 void qemu_check_nic_model(NICInfo *nd, const char *model);
 int qemu_find_nic_model(NICInfo *nd, const char * const *models,
                         const char *default_model);
-
+NICInfo *qemu_find_nic_info(const char *typename, bool match_default,
+                            const char *alias);
+bool qemu_configure_nic_device(DeviceState *dev, bool match_default,
+                               const char *alias);
+DeviceState *qemu_create_nic_device(const char *typename, bool match_default,
+                                    const char *alias);
 void print_net_client(Monitor *mon, NetClientState *nc);
 void net_socket_rs_init(SocketReadState *rs,
                         SocketReadStateFinalize *finalize,
diff --git a/net/net.c b/net/net.c
index bbe33da176..606816a3b3 100644
--- a/net/net.c
+++ b/net/net.c
@@ -1072,6 +1072,56 @@ static int net_init_nic(const Netdev *netdev, const char *name,
     return idx;
 }
 
+NICInfo *qemu_find_nic_info(const char *typename, bool match_default,
+                            const char *alias)
+{
+    NICInfo *nd;
+    int i;
+
+    for (i = 0; i < nb_nics; i++) {
+        nd = &nd_table[i];
+
+        if (!nd->used || nd->instantiated)
+            continue;
+
+        if ((match_default && !nd->model) || !g_strcmp0(nd->model, typename)
+            || (alias && !g_strcmp0(nd->model, alias))) {
+            return nd;
+        }
+    }
+    return NULL;
+}
+
+
+/* "I have created a device. Please configure it if you can" */
+bool qemu_configure_nic_device(DeviceState *dev, bool match_default,
+                               const char *alias)
+{
+    NICInfo *nd = qemu_find_nic_info(object_get_typename(OBJECT(dev)),
+                                     match_default, alias);
+
+    if (nd) {
+        qdev_set_nic_properties(dev, nd);
+        return true;
+    }
+    return false;
+}
+
+/* "Please create a device, if you have a configuration for it" */
+DeviceState *qemu_create_nic_device(const char *typename, bool match_default,
+                                    const char *alias)
+{
+    NICInfo *nd = qemu_find_nic_info(typename, match_default, alias);
+    DeviceState *dev;
+
+    if (!nd) {
+        return NULL;
+    }
+
+    dev = qdev_new(typename);
+    qdev_set_nic_properties(dev, nd);
+    return dev;
+}
 
 static int (* const net_client_init_fun[NET_CLIENT_DRIVER__MAX])(
     const Netdev *netdev,
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Sun Oct 22 16:03:30 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 22 Oct 2023 16:03:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.620702.966438 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quavG-0002rt-IT; Sun, 22 Oct 2023 16:03:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 620702.966438; Sun, 22 Oct 2023 16:03: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 1quavG-0002qU-EO; Sun, 22 Oct 2023 16:03:26 +0000
Received: by outflank-mailman (input) for mailman id 620702;
 Sun, 22 Oct 2023 16:03: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=zZR7=GE=casper.srs.infradead.org=BATV+88d8721f4af1339c2fab+7364+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1quam3-0006wY-Kl
 for xen-devel@lists.xenproject.org; Sun, 22 Oct 2023 15:53:55 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 33e50b0a-70f3-11ee-98d5-6d05b1d4d9a1;
 Sun, 22 Oct 2023 17:53:54 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1quakI-008TGL-9l; Sun, 22 Oct 2023 15:52:06 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1quakH-001qZ5-32; Sun, 22 Oct 2023 16:52:05 +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
X-Inumbo-ID: 33e50b0a-70f3-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=/SS3XxTtYZBPNCPAcNZJPqZKxgPyT87SCot5d6FzLcg=; b=BWWF1Tj2ZCbw+Xl6/033gmXZ+h
	Qbn1OwrLbxPN5PvM19w75h6Icum5qoEOCDZJBV3jl545rM5RztpKW3lW/cPlOixSPELghzN8el1fR
	QDR9o9gJrrMiezrmi3cNZg94OZ0RXgWukT2Vi/XnWaoVlH8IntvKSfC8lHymx5IE0gaUdamHDRBh3
	h1qvWBwsVasZQgjnQvUSlmQWL38MlDGIjulgv8fP6LpvUTnU58ChCV7MtVxJbobhRJcaFJ85p5fiF
	ZKsoSQ7HXfmsdR+chBYDgW10xfrlksoh+WvYvQ9EfDLVz3iHINQfjPfGVqXRwEg0M7gH7Sb+/dNpf
	fBAQq70Q==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Richard Henderson <richard.henderson@linaro.org>,
	Beniamino Galvani <b.galvani@gmail.com>,
	Peter Maydell <peter.maydell@linaro.org>,
	Strahinja Jankovic <strahinja.p.jankovic@gmail.com>,
	Niek Linnenbank <nieklinnenbank@gmail.com>,
	=?UTF-8?q?C=C3=A9dric=20Le=20Goater?= <clg@kaod.org>,
	Andrew Jeffery <andrew@aj.id.au>,
	Joel Stanley <joel@jms.id.au>,
	Igor Mitsyanko <i.mitsyanko@gmail.com>,
	Jean-Christophe Dubois <jcd@tribudubois.net>,
	Andrey Smirnov <andrew.smirnov@gmail.com>,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
	Rob Herring <robh@kernel.org>,
	Subbaraya Sundeep <sundeep.lkml@gmail.com>,
	Jan Kiszka <jan.kiszka@web.de>,
	Tyrone Ting <kfting@nuvoton.com>,
	Hao Wu <wuhaotsh@google.com>,
	Radoslaw Biernacki <rad@semihalf.com>,
	Leif Lindholm <quic_llindhol@quicinc.com>,
	Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>,
	"Edgar E. Iglesias" <edgar.iglesias@gmail.com>,
	Alistair Francis <alistair@alistair23.me>,
	Helge Deller <deller@gmx.de>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Eduardo Habkost <eduardo@habkost.net>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Song Gao <gaosong@loongson.cn>,
	Thomas Huth <huth@tuxfamily.org>,
	Laurent Vivier <laurent@vivier.eu>,
	Huacai Chen <chenhuacai@kernel.org>,
	Jiaxun Yang <jiaxun.yang@flygoat.com>,
	=?UTF-8?q?Herv=C3=A9=20Poussineau?= <hpoussin@reactos.org>,
	Aleksandar Rikalo <aleksandar.rikalo@syrmia.com>,
	Aurelien Jarno <aurelien@aurel32.net>,
	Jason Wang <jasowang@redhat.com>,
	Jia Liu <proljc@gmail.com>,
	Stafford Horne <shorne@gmail.com>,
	Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>,
	Nicholas Piggin <npiggin@gmail.com>,
	Daniel Henrique Barboza <danielhb413@gmail.com>,
	David Gibson <david@gibson.dropbear.id.au>,
	Harsh Prateek Bora <harshpb@linux.ibm.com>,
	Bin Meng <bin.meng@windriver.com>,
	Palmer Dabbelt <palmer@dabbelt.com>,
	Weiwei Li <liweiwei@iscas.ac.cn>,
	Liu Zhiwei <zhiwei_liu@linux.alibaba.com>,
	David Hildenbrand <david@redhat.com>,
	Ilya Leoshkevich <iii@linux.ibm.com>,
	Halil Pasic <pasic@linux.ibm.com>,
	Christian Borntraeger <borntraeger@linux.ibm.com>,
	Eric Farman <farman@linux.ibm.com>,
	Yoshinori Sato <ysato@users.sourceforge.jp>,
	Magnus Damm <magnus.damm@gmail.com>,
	Artyom Tarasenko <atar4qemu@gmail.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	Max Filippov <jcmvbkbc@gmail.com>,
	qemu-arm@nongnu.org,
	qemu-ppc@nongnu.org,
	qemu-riscv@nongnu.org,
	qemu-s390x@nongnu.org,
	xen-devel@lists.xenproject.org
Subject: [PATCH 13/45] hw/mips/malta: use pci_init_nic_devices()
Date: Sun, 22 Oct 2023 16:51:28 +0100
Message-Id: <20231022155200.436340-14-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231022155200.436340-1-dwmw2@infradead.org>
References: <20231022155200.436340-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

The Malta board setup code would previously place the first NIC into PCI
slot 11 if was a PCNet card, and the rest (including the first if it was
anything other than a PCNet card) would be dynamically assigned.

Now it will place any PCNet NIC into slot 11, and then anything else will
be dynamically assigned.

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 hw/mips/malta.c | 15 +++------------
 1 file changed, 3 insertions(+), 12 deletions(-)

diff --git a/hw/mips/malta.c b/hw/mips/malta.c
index dac27fad9d..9357cb4c91 100644
--- a/hw/mips/malta.c
+++ b/hw/mips/malta.c
@@ -606,18 +606,9 @@ static MaltaFPGAState *malta_fpga_init(MemoryRegion *address_space,
 /* Network support */
 static void network_init(PCIBus *pci_bus)
 {
-    int i;
-
-    for (i = 0; i < nb_nics; i++) {
-        NICInfo *nd = &nd_table[i];
-        const char *default_devaddr = NULL;
-
-        if (i == 0 && (!nd->model || strcmp(nd->model, "pcnet") == 0))
-            /* The malta board has a PCNet card using PCI SLOT 11 */
-            default_devaddr = "0b";
-
-        pci_nic_init_nofail(nd, pci_bus, "pcnet", default_devaddr);
-    }
+    /* The malta board has a PCNet card using PCI SLOT 11 */
+    pci_init_nic_in_slot(pci_bus, "pcnet", NULL, "0b");
+    pci_init_nic_devices(pci_bus, "pcnet");
 }
 
 static void bl_setup_gt64120_jump_kernel(void **p, uint64_t run_addr,
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Sun Oct 22 16:03:30 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 22 Oct 2023 16:03:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.620701.966433 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quavG-0002og-9q; Sun, 22 Oct 2023 16:03:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 620701.966433; Sun, 22 Oct 2023 16:03: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 1quavG-0002oZ-78; Sun, 22 Oct 2023 16:03:26 +0000
Received: by outflank-mailman (input) for mailman id 620701;
 Sun, 22 Oct 2023 16:03: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=RY1I=GE=desiato.srs.infradead.org=BATV+fd6248c3715d1825373b+7364+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1quan1-0006wY-Vr
 for xen-devel@lists.xenproject.org; Sun, 22 Oct 2023 15:54:55 +0000
Received: from desiato.infradead.org (desiato.infradead.org
 [2001:8b0:10b:1:d65d:64ff:fe57:4e05])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 581da5e5-70f3-11ee-98d5-6d05b1d4d9a1;
 Sun, 22 Oct 2023 17:54:55 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by desiato.infradead.org with esmtpsa (Exim 4.96 #2 (Red Hat Linux))
 id 1quakI-00DCml-0V; Sun, 22 Oct 2023 15:53:38 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1quakH-001qYo-1T; Sun, 22 Oct 2023 16:52:05 +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
X-Inumbo-ID: 581da5e5-70f3-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=desiato.20200630; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=W0adFdXMEbi8j4klLNUE97TjOqmUyikyi07uSfzF8bk=; b=qpLAo7x6BHsqRoyzs5LkZJVNpU
	rTqiz5+Kq2oN/1n+kFGKWDDux3umF5SQIwtEJ9v7BBHiQVLR1Rs0LiuNG7KzjEORDAW18ZjsxHFx1
	msfIqKZXpZQ6XCKXgGFOx0UssR8BTar+zheMXWCYmiI0eKjaP0RFd3ihZBF8VvbZFIQDWgCAT53Nr
	WIvL1++L7kuTZhujt3SbsK364oiN7GCurcqrSj1+0kBuQrk774oS0IKc8QvVEF3E8T9w41pygkm7U
	IkTBTSrjRSFNyGb1MkrMrvWdF6sIRhZbA9j//JaP7l1yDFWkVrcjaRZSkCT9kmW7nK1/1t/vDswLw
	Qu/TrZKg==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Richard Henderson <richard.henderson@linaro.org>,
	Beniamino Galvani <b.galvani@gmail.com>,
	Peter Maydell <peter.maydell@linaro.org>,
	Strahinja Jankovic <strahinja.p.jankovic@gmail.com>,
	Niek Linnenbank <nieklinnenbank@gmail.com>,
	=?UTF-8?q?C=C3=A9dric=20Le=20Goater?= <clg@kaod.org>,
	Andrew Jeffery <andrew@aj.id.au>,
	Joel Stanley <joel@jms.id.au>,
	Igor Mitsyanko <i.mitsyanko@gmail.com>,
	Jean-Christophe Dubois <jcd@tribudubois.net>,
	Andrey Smirnov <andrew.smirnov@gmail.com>,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
	Rob Herring <robh@kernel.org>,
	Subbaraya Sundeep <sundeep.lkml@gmail.com>,
	Jan Kiszka <jan.kiszka@web.de>,
	Tyrone Ting <kfting@nuvoton.com>,
	Hao Wu <wuhaotsh@google.com>,
	Radoslaw Biernacki <rad@semihalf.com>,
	Leif Lindholm <quic_llindhol@quicinc.com>,
	Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>,
	"Edgar E. Iglesias" <edgar.iglesias@gmail.com>,
	Alistair Francis <alistair@alistair23.me>,
	Helge Deller <deller@gmx.de>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Eduardo Habkost <eduardo@habkost.net>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Song Gao <gaosong@loongson.cn>,
	Thomas Huth <huth@tuxfamily.org>,
	Laurent Vivier <laurent@vivier.eu>,
	Huacai Chen <chenhuacai@kernel.org>,
	Jiaxun Yang <jiaxun.yang@flygoat.com>,
	=?UTF-8?q?Herv=C3=A9=20Poussineau?= <hpoussin@reactos.org>,
	Aleksandar Rikalo <aleksandar.rikalo@syrmia.com>,
	Aurelien Jarno <aurelien@aurel32.net>,
	Jason Wang <jasowang@redhat.com>,
	Jia Liu <proljc@gmail.com>,
	Stafford Horne <shorne@gmail.com>,
	Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>,
	Nicholas Piggin <npiggin@gmail.com>,
	Daniel Henrique Barboza <danielhb413@gmail.com>,
	David Gibson <david@gibson.dropbear.id.au>,
	Harsh Prateek Bora <harshpb@linux.ibm.com>,
	Bin Meng <bin.meng@windriver.com>,
	Palmer Dabbelt <palmer@dabbelt.com>,
	Weiwei Li <liweiwei@iscas.ac.cn>,
	Liu Zhiwei <zhiwei_liu@linux.alibaba.com>,
	David Hildenbrand <david@redhat.com>,
	Ilya Leoshkevich <iii@linux.ibm.com>,
	Halil Pasic <pasic@linux.ibm.com>,
	Christian Borntraeger <borntraeger@linux.ibm.com>,
	Eric Farman <farman@linux.ibm.com>,
	Yoshinori Sato <ysato@users.sourceforge.jp>,
	Magnus Damm <magnus.damm@gmail.com>,
	Artyom Tarasenko <atar4qemu@gmail.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	Max Filippov <jcmvbkbc@gmail.com>,
	qemu-arm@nongnu.org,
	qemu-ppc@nongnu.org,
	qemu-riscv@nongnu.org,
	qemu-s390x@nongnu.org,
	xen-devel@lists.xenproject.org
Subject: [PATCH 09/45] hw/arm/virt: use pci_init_nic_devices()
Date: Sun, 22 Oct 2023 16:51:24 +0100
Message-Id: <20231022155200.436340-10-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231022155200.436340-1-dwmw2@infradead.org>
References: <20231022155200.436340-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by desiato.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 hw/arm/virt.c | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

diff --git a/hw/arm/virt.c b/hw/arm/virt.c
index 15e74249f9..6b43b92b89 100644
--- a/hw/arm/virt.c
+++ b/hw/arm/virt.c
@@ -1477,9 +1477,7 @@ static void create_pcie(VirtMachineState *vms)
     pci->bypass_iommu = vms->default_bus_bypass_iommu;
     vms->bus = pci->bus;
     if (vms->bus) {
-        for (i = 0; i < nb_nics; i++) {
-            pci_nic_init_nofail(&nd_table[i], pci->bus, mc->default_nic, NULL);
-        }
+        pci_init_nic_devices(pci->bus, mc->default_nic);
     }
 
     nodename = vms->pciehb_nodename = g_strdup_printf("/pcie@%" PRIx64, base);
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Sun Oct 22 16:04:37 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 22 Oct 2023 16:04:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.620708.966454 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quawM-0003yJ-T6; Sun, 22 Oct 2023 16:04:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 620708.966454; Sun, 22 Oct 2023 16:04: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 1quawM-0003yC-Pt; Sun, 22 Oct 2023 16:04:34 +0000
Received: by outflank-mailman (input) for mailman id 620708;
 Sun, 22 Oct 2023 16:04: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=RY1I=GE=desiato.srs.infradead.org=BATV+fd6248c3715d1825373b+7364+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1quame-0006wY-OT
 for xen-devel@lists.xenproject.org; Sun, 22 Oct 2023 15:54:32 +0000
Received: from desiato.infradead.org (desiato.infradead.org
 [2001:8b0:10b:1:d65d:64ff:fe57:4e05])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 467ad99b-70f3-11ee-98d5-6d05b1d4d9a1;
 Sun, 22 Oct 2023 17:54:25 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by desiato.infradead.org with esmtpsa (Exim 4.96 #2 (Red Hat Linux))
 id 1quakJ-00DCmt-22; Sun, 22 Oct 2023 15:52:22 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1quakI-001qZb-2Z; Sun, 22 Oct 2023 16:52:06 +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
X-Inumbo-ID: 467ad99b-70f3-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=desiato.20200630; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=6H4GKDrl3LtGOn+0aF2tgywlevIYDf06qVJKTWuBUKo=; b=pow24CYPDLt1PWCw93p6hwpKP5
	YTBMeSRjPYfBXglbqxoLeuz9N/S9JFiFuaQnZjokSZhHK9B/JSGbY79Y65dCU0yo7/x9FHzWkWlxN
	JJsJ3Wsgx1lWC3E0lOn/wh4KL46CDd9qTHjxgkCGLmetkq6oQCO+yRGjMfXZBLl0+uf45jbpKbEtN
	13vnWHCIYO5Mv3HVQNpRNV6M061EjFt7lDijaJLyObU2/Y3ZBv61Xk0TZnJagIBzSdc33owqz6+Ij
	KOmMWMt8ybv4f3oFpIOLuY13QcVeFlAulrHVf67l4Ntsm8PNyUIikk3a0zqplTLUXdV560t+oSArT
	C0jUXBrg==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Richard Henderson <richard.henderson@linaro.org>,
	Beniamino Galvani <b.galvani@gmail.com>,
	Peter Maydell <peter.maydell@linaro.org>,
	Strahinja Jankovic <strahinja.p.jankovic@gmail.com>,
	Niek Linnenbank <nieklinnenbank@gmail.com>,
	=?UTF-8?q?C=C3=A9dric=20Le=20Goater?= <clg@kaod.org>,
	Andrew Jeffery <andrew@aj.id.au>,
	Joel Stanley <joel@jms.id.au>,
	Igor Mitsyanko <i.mitsyanko@gmail.com>,
	Jean-Christophe Dubois <jcd@tribudubois.net>,
	Andrey Smirnov <andrew.smirnov@gmail.com>,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
	Rob Herring <robh@kernel.org>,
	Subbaraya Sundeep <sundeep.lkml@gmail.com>,
	Jan Kiszka <jan.kiszka@web.de>,
	Tyrone Ting <kfting@nuvoton.com>,
	Hao Wu <wuhaotsh@google.com>,
	Radoslaw Biernacki <rad@semihalf.com>,
	Leif Lindholm <quic_llindhol@quicinc.com>,
	Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>,
	"Edgar E. Iglesias" <edgar.iglesias@gmail.com>,
	Alistair Francis <alistair@alistair23.me>,
	Helge Deller <deller@gmx.de>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Eduardo Habkost <eduardo@habkost.net>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Song Gao <gaosong@loongson.cn>,
	Thomas Huth <huth@tuxfamily.org>,
	Laurent Vivier <laurent@vivier.eu>,
	Huacai Chen <chenhuacai@kernel.org>,
	Jiaxun Yang <jiaxun.yang@flygoat.com>,
	=?UTF-8?q?Herv=C3=A9=20Poussineau?= <hpoussin@reactos.org>,
	Aleksandar Rikalo <aleksandar.rikalo@syrmia.com>,
	Aurelien Jarno <aurelien@aurel32.net>,
	Jason Wang <jasowang@redhat.com>,
	Jia Liu <proljc@gmail.com>,
	Stafford Horne <shorne@gmail.com>,
	Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>,
	Nicholas Piggin <npiggin@gmail.com>,
	Daniel Henrique Barboza <danielhb413@gmail.com>,
	David Gibson <david@gibson.dropbear.id.au>,
	Harsh Prateek Bora <harshpb@linux.ibm.com>,
	Bin Meng <bin.meng@windriver.com>,
	Palmer Dabbelt <palmer@dabbelt.com>,
	Weiwei Li <liweiwei@iscas.ac.cn>,
	Liu Zhiwei <zhiwei_liu@linux.alibaba.com>,
	David Hildenbrand <david@redhat.com>,
	Ilya Leoshkevich <iii@linux.ibm.com>,
	Halil Pasic <pasic@linux.ibm.com>,
	Christian Borntraeger <borntraeger@linux.ibm.com>,
	Eric Farman <farman@linux.ibm.com>,
	Yoshinori Sato <ysato@users.sourceforge.jp>,
	Magnus Damm <magnus.damm@gmail.com>,
	Artyom Tarasenko <atar4qemu@gmail.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	Max Filippov <jcmvbkbc@gmail.com>,
	qemu-arm@nongnu.org,
	qemu-ppc@nongnu.org,
	qemu-riscv@nongnu.org,
	qemu-s390x@nongnu.org,
	xen-devel@lists.xenproject.org
Subject: [PATCH 20/45] hw/xtensa/virt: use pci_init_nic_devices()
Date: Sun, 22 Oct 2023 16:51:35 +0100
Message-Id: <20231022155200.436340-21-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231022155200.436340-1-dwmw2@infradead.org>
References: <20231022155200.436340-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by desiato.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 hw/xtensa/virt.c | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

diff --git a/hw/xtensa/virt.c b/hw/xtensa/virt.c
index a6cf646e99..5310a88861 100644
--- a/hw/xtensa/virt.c
+++ b/hw/xtensa/virt.c
@@ -102,9 +102,7 @@ static void create_pcie(MachineState *ms, CPUXtensaState *env, int irq_base,
 
     pci = PCI_HOST_BRIDGE(dev);
     if (pci->bus) {
-        for (i = 0; i < nb_nics; i++) {
-            pci_nic_init_nofail(&nd_table[i], pci->bus, mc->default_nic, NULL);
-        }
+        pci_init_nic_devices(pci->bus, mc->default_nic);
     }
 }
 
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Sun Oct 22 16:05:02 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 22 Oct 2023 16:05:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.620712.966464 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quawo-0004Yt-48; Sun, 22 Oct 2023 16:05:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 620712.966464; Sun, 22 Oct 2023 16: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 1quawo-0004Ym-1V; Sun, 22 Oct 2023 16:05:02 +0000
Received: by outflank-mailman (input) for mailman id 620712;
 Sun, 22 Oct 2023 16:05: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=RY1I=GE=desiato.srs.infradead.org=BATV+fd6248c3715d1825373b+7364+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1quamj-0006wY-AJ
 for xen-devel@lists.xenproject.org; Sun, 22 Oct 2023 15:54:37 +0000
Received: from desiato.infradead.org (desiato.infradead.org
 [2001:8b0:10b:1:d65d:64ff:fe57:4e05])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 4d0c44fc-70f3-11ee-98d5-6d05b1d4d9a1;
 Sun, 22 Oct 2023 17:54:36 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by desiato.infradead.org with esmtpsa (Exim 4.96 #2 (Red Hat Linux))
 id 1quakJ-00DCmu-24; Sun, 22 Oct 2023 15:53:09 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1quakJ-001qZj-00; Sun, 22 Oct 2023 16:52:07 +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
X-Inumbo-ID: 4d0c44fc-70f3-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=desiato.20200630; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=4+Mc5UoIk/j59DxPJr9/Bba3Ss0BlZ5eJh5qSsyPoYw=; b=jKJ5VvWEyZleEXgoeqEjZyi1L3
	F2uGIPRfZhpHac7DvT8dcH7gIWxpe/tRYcLh6a531myfO27mcnhfiU46UoKaXiCyX8XLGtR1CdiVj
	lCTsZg/ufvzJ5E1RjmOZ+bxSSWGgzoA5UbRs3K8EgeRsYod3r5vMmhKZ3EkWUbwXIyjj/7PuP3qzW
	rWINlK9wlyTwfAizsWoIWwhkaEp4EraKyMOG38tO68U98yl5KCKzvK08FpngEcsQfD3GNtneUfIMD
	/xfCnoqcaHNm5gZTtBehY1MvpMR+RyFE4tIdKv3DoushzbI5KZMsI8qV49iJYhVF3DJ61ye4Oaacl
	p2ZI+F2Q==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Richard Henderson <richard.henderson@linaro.org>,
	Beniamino Galvani <b.galvani@gmail.com>,
	Peter Maydell <peter.maydell@linaro.org>,
	Strahinja Jankovic <strahinja.p.jankovic@gmail.com>,
	Niek Linnenbank <nieklinnenbank@gmail.com>,
	=?UTF-8?q?C=C3=A9dric=20Le=20Goater?= <clg@kaod.org>,
	Andrew Jeffery <andrew@aj.id.au>,
	Joel Stanley <joel@jms.id.au>,
	Igor Mitsyanko <i.mitsyanko@gmail.com>,
	Jean-Christophe Dubois <jcd@tribudubois.net>,
	Andrey Smirnov <andrew.smirnov@gmail.com>,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
	Rob Herring <robh@kernel.org>,
	Subbaraya Sundeep <sundeep.lkml@gmail.com>,
	Jan Kiszka <jan.kiszka@web.de>,
	Tyrone Ting <kfting@nuvoton.com>,
	Hao Wu <wuhaotsh@google.com>,
	Radoslaw Biernacki <rad@semihalf.com>,
	Leif Lindholm <quic_llindhol@quicinc.com>,
	Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>,
	"Edgar E. Iglesias" <edgar.iglesias@gmail.com>,
	Alistair Francis <alistair@alistair23.me>,
	Helge Deller <deller@gmx.de>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Eduardo Habkost <eduardo@habkost.net>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Song Gao <gaosong@loongson.cn>,
	Thomas Huth <huth@tuxfamily.org>,
	Laurent Vivier <laurent@vivier.eu>,
	Huacai Chen <chenhuacai@kernel.org>,
	Jiaxun Yang <jiaxun.yang@flygoat.com>,
	=?UTF-8?q?Herv=C3=A9=20Poussineau?= <hpoussin@reactos.org>,
	Aleksandar Rikalo <aleksandar.rikalo@syrmia.com>,
	Aurelien Jarno <aurelien@aurel32.net>,
	Jason Wang <jasowang@redhat.com>,
	Jia Liu <proljc@gmail.com>,
	Stafford Horne <shorne@gmail.com>,
	Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>,
	Nicholas Piggin <npiggin@gmail.com>,
	Daniel Henrique Barboza <danielhb413@gmail.com>,
	David Gibson <david@gibson.dropbear.id.au>,
	Harsh Prateek Bora <harshpb@linux.ibm.com>,
	Bin Meng <bin.meng@windriver.com>,
	Palmer Dabbelt <palmer@dabbelt.com>,
	Weiwei Li <liweiwei@iscas.ac.cn>,
	Liu Zhiwei <zhiwei_liu@linux.alibaba.com>,
	David Hildenbrand <david@redhat.com>,
	Ilya Leoshkevich <iii@linux.ibm.com>,
	Halil Pasic <pasic@linux.ibm.com>,
	Christian Borntraeger <borntraeger@linux.ibm.com>,
	Eric Farman <farman@linux.ibm.com>,
	Yoshinori Sato <ysato@users.sourceforge.jp>,
	Magnus Damm <magnus.damm@gmail.com>,
	Artyom Tarasenko <atar4qemu@gmail.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	Max Filippov <jcmvbkbc@gmail.com>,
	qemu-arm@nongnu.org,
	qemu-ppc@nongnu.org,
	qemu-riscv@nongnu.org,
	qemu-s390x@nongnu.org,
	xen-devel@lists.xenproject.org
Subject: [PATCH 22/45] hw/arm/aspeed: use qemu_configure_nic_device()
Date: Sun, 22 Oct 2023 16:51:37 +0100
Message-Id: <20231022155200.436340-23-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231022155200.436340-1-dwmw2@infradead.org>
References: <20231022155200.436340-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by desiato.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 hw/arm/aspeed.c | 9 ++++-----
 1 file changed, 4 insertions(+), 5 deletions(-)

diff --git a/hw/arm/aspeed.c b/hw/arm/aspeed.c
index f8ba67531a..945ad97835 100644
--- a/hw/arm/aspeed.c
+++ b/hw/arm/aspeed.c
@@ -356,7 +356,6 @@ static void aspeed_machine_init(MachineState *machine)
     AspeedMachineClass *amc = ASPEED_MACHINE_GET_CLASS(machine);
     AspeedSoCClass *sc;
     int i;
-    NICInfo *nd = &nd_table[0];
 
     object_initialize_child(OBJECT(machine), "soc", &bmc->soc, amc->soc_name);
 
@@ -370,10 +369,10 @@ static void aspeed_machine_init(MachineState *machine)
                              &error_fatal);
 
     for (i = 0; i < sc->macs_num; i++) {
-        if ((amc->macs_mask & (1 << i)) && nd->used) {
-            qemu_check_nic_model(nd, TYPE_FTGMAC100);
-            qdev_set_nic_properties(DEVICE(&bmc->soc.ftgmac100[i]), nd);
-            nd++;
+        if ((amc->macs_mask & (1 << i)) &&
+            !qemu_configure_nic_device(DEVICE(&bmc->soc.ftgmac100[i]),
+                                       true, NULL)) {
+            break; /* No configs left; stop asking */
         }
     }
 
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Sun Oct 22 16:05:02 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 22 Oct 2023 16:05:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.620713.966469 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quawo-0004bQ-EC; Sun, 22 Oct 2023 16:05:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 620713.966469; Sun, 22 Oct 2023 16: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 1quawo-0004at-9H; Sun, 22 Oct 2023 16:05:02 +0000
Received: by outflank-mailman (input) for mailman id 620713;
 Sun, 22 Oct 2023 16:05: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=RY1I=GE=desiato.srs.infradead.org=BATV+fd6248c3715d1825373b+7364+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1quamT-0006wY-MV
 for xen-devel@lists.xenproject.org; Sun, 22 Oct 2023 15:54:21 +0000
Received: from desiato.infradead.org (desiato.infradead.org
 [2001:8b0:10b:1:d65d:64ff:fe57:4e05])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 420312c8-70f3-11ee-98d5-6d05b1d4d9a1;
 Sun, 22 Oct 2023 17:54:18 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by desiato.infradead.org with esmtpsa (Exim 4.96 #2 (Red Hat Linux))
 id 1quakM-00DCn2-0R; Sun, 22 Oct 2023 15:52:37 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1quakK-001qb4-2G; Sun, 22 Oct 2023 16:52:08 +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
X-Inumbo-ID: 420312c8-70f3-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=desiato.20200630; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=2pDGewIOozNTKyf2OldMVVayi4C1vxF7TkMEapx75UM=; b=Saf3H/Ddo4P2X21+F943q20V9E
	IH4TqcgjTFsjy6FVNIy55caMRuYY1nRP+BtW/RvvyJgr0UoPbIHZFEwW4uHroFPneBHdJIm2hTJeQ
	EfgBJ/nEz1ZUf7fJVSAjQ4uW4Zs3vcf9EJReL0aqNSAHD6M5W9PRr+NZqTh6NUN7wp3jiP2XR4ahd
	oXwXUMPUjXZdIWZ/vpg7DFiR4nLoRJRJaGt7pDSgzTYCF8H9+CQxzcuRd/XUQ7qxCrT7C+gQ+cjHQ
	VTHNMfJt2Uy7rTARhSrMQ1IsuYak9yrxEIsGUvuzkT92etZY8lfFqZsNNTNOuW4CE24mb5G7+L+hG
	kTnCqj+g==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Richard Henderson <richard.henderson@linaro.org>,
	Beniamino Galvani <b.galvani@gmail.com>,
	Peter Maydell <peter.maydell@linaro.org>,
	Strahinja Jankovic <strahinja.p.jankovic@gmail.com>,
	Niek Linnenbank <nieklinnenbank@gmail.com>,
	=?UTF-8?q?C=C3=A9dric=20Le=20Goater?= <clg@kaod.org>,
	Andrew Jeffery <andrew@aj.id.au>,
	Joel Stanley <joel@jms.id.au>,
	Igor Mitsyanko <i.mitsyanko@gmail.com>,
	Jean-Christophe Dubois <jcd@tribudubois.net>,
	Andrey Smirnov <andrew.smirnov@gmail.com>,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
	Rob Herring <robh@kernel.org>,
	Subbaraya Sundeep <sundeep.lkml@gmail.com>,
	Jan Kiszka <jan.kiszka@web.de>,
	Tyrone Ting <kfting@nuvoton.com>,
	Hao Wu <wuhaotsh@google.com>,
	Radoslaw Biernacki <rad@semihalf.com>,
	Leif Lindholm <quic_llindhol@quicinc.com>,
	Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>,
	"Edgar E. Iglesias" <edgar.iglesias@gmail.com>,
	Alistair Francis <alistair@alistair23.me>,
	Helge Deller <deller@gmx.de>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Eduardo Habkost <eduardo@habkost.net>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Song Gao <gaosong@loongson.cn>,
	Thomas Huth <huth@tuxfamily.org>,
	Laurent Vivier <laurent@vivier.eu>,
	Huacai Chen <chenhuacai@kernel.org>,
	Jiaxun Yang <jiaxun.yang@flygoat.com>,
	=?UTF-8?q?Herv=C3=A9=20Poussineau?= <hpoussin@reactos.org>,
	Aleksandar Rikalo <aleksandar.rikalo@syrmia.com>,
	Aurelien Jarno <aurelien@aurel32.net>,
	Jason Wang <jasowang@redhat.com>,
	Jia Liu <proljc@gmail.com>,
	Stafford Horne <shorne@gmail.com>,
	Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>,
	Nicholas Piggin <npiggin@gmail.com>,
	Daniel Henrique Barboza <danielhb413@gmail.com>,
	David Gibson <david@gibson.dropbear.id.au>,
	Harsh Prateek Bora <harshpb@linux.ibm.com>,
	Bin Meng <bin.meng@windriver.com>,
	Palmer Dabbelt <palmer@dabbelt.com>,
	Weiwei Li <liweiwei@iscas.ac.cn>,
	Liu Zhiwei <zhiwei_liu@linux.alibaba.com>,
	David Hildenbrand <david@redhat.com>,
	Ilya Leoshkevich <iii@linux.ibm.com>,
	Halil Pasic <pasic@linux.ibm.com>,
	Christian Borntraeger <borntraeger@linux.ibm.com>,
	Eric Farman <farman@linux.ibm.com>,
	Yoshinori Sato <ysato@users.sourceforge.jp>,
	Magnus Damm <magnus.damm@gmail.com>,
	Artyom Tarasenko <atar4qemu@gmail.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	Max Filippov <jcmvbkbc@gmail.com>,
	qemu-arm@nongnu.org,
	qemu-ppc@nongnu.org,
	qemu-riscv@nongnu.org,
	qemu-s390x@nongnu.org,
	xen-devel@lists.xenproject.org
Subject: [PATCH 40/45] hw/sparc/sun4m: use qemu_configure_nic_device()
Date: Sun, 22 Oct 2023 16:51:55 +0100
Message-Id: <20231022155200.436340-41-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231022155200.436340-1-dwmw2@infradead.org>
References: <20231022155200.436340-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by desiato.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 hw/sparc/sun4m.c | 8 +++-----
 1 file changed, 3 insertions(+), 5 deletions(-)

diff --git a/hw/sparc/sun4m.c b/hw/sparc/sun4m.c
index 17bf5f2879..259cf2f383 100644
--- a/hw/sparc/sun4m.c
+++ b/hw/sparc/sun4m.c
@@ -299,7 +299,7 @@ static void *iommu_init(hwaddr addr, uint32_t version, qemu_irq irq)
 
 static void *sparc32_dma_init(hwaddr dma_base,
                               hwaddr esp_base, qemu_irq espdma_irq,
-                              hwaddr le_base, qemu_irq ledma_irq, NICInfo *nd)
+                              hwaddr le_base, qemu_irq ledma_irq)
 {
     DeviceState *dma;
     ESPDMADeviceState *espdma;
@@ -320,7 +320,7 @@ static void *sparc32_dma_init(hwaddr dma_base,
 
     lance = SYSBUS_PCNET(object_resolve_path_component(
                          OBJECT(ledma), "lance"));
-    qdev_set_nic_properties(DEVICE(lance), nd);
+    qemu_configure_nic_device(DEVICE(lance), true, NULL);
 
     sysbus_realize_and_unref(SYS_BUS_DEVICE(dma), &error_fatal);
     sysbus_mmio_map(SYS_BUS_DEVICE(dma), 0, dma_base);
@@ -832,7 +832,6 @@ static void sun4m_hw_init(MachineState *machine)
     unsigned int smp_cpus = machine->smp.cpus;
     unsigned int max_cpus = machine->smp.max_cpus;
     HostMemoryBackend *ram_memdev = machine->memdev;
-    NICInfo *nd = &nd_table[0];
 
     if (machine->ram_size > hwdef->max_mem) {
         error_report("Too much memory for this machine: %" PRId64 ","
@@ -893,10 +892,9 @@ static void sun4m_hw_init(MachineState *machine)
                         hwdef->iommu_pad_base, hwdef->iommu_pad_len);
     }
 
-    qemu_check_nic_model(nd, TYPE_LANCE);
     sparc32_dma_init(hwdef->dma_base,
                      hwdef->esp_base, slavio_irq[18],
-                     hwdef->le_base, slavio_irq[16], nd);
+                     hwdef->le_base, slavio_irq[16]);
 
     if (graphic_depth != 8 && graphic_depth != 24) {
         error_report("Unsupported depth: %d", graphic_depth);
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Sun Oct 22 16:05:37 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 22 Oct 2023 16:05:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.620717.966484 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quaxM-0005dD-Oo; Sun, 22 Oct 2023 16:05:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 620717.966484; Sun, 22 Oct 2023 16:05: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 1quaxM-0005d6-KR; Sun, 22 Oct 2023 16:05:36 +0000
Received: by outflank-mailman (input) for mailman id 620717;
 Sun, 22 Oct 2023 16:05: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=RY1I=GE=desiato.srs.infradead.org=BATV+fd6248c3715d1825373b+7364+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1quama-0007Cq-M0
 for xen-devel@lists.xenproject.org; Sun, 22 Oct 2023 15:54:28 +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 4692bdf9-70f3-11ee-9b0e-b553b5be7939;
 Sun, 22 Oct 2023 17:54:26 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by desiato.infradead.org with esmtpsa (Exim 4.96 #2 (Red Hat Linux))
 id 1quakI-00DCmi-0T; Sun, 22 Oct 2023 15:52:10 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1quakG-001qYR-2u; Sun, 22 Oct 2023 16:52:04 +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
X-Inumbo-ID: 4692bdf9-70f3-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=desiato.20200630; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=9qWbK+XlQ4g+snp8vZ6Q76nLv7WCuuiJelCPcWERw+E=; b=TH0DfNv+/GkrIUofo1aPAcDDb4
	PG7p3nn76qfe5trIKXpIKgCOdMA7VCkEXLmPHf6YAhBLZiWfHtUY5SMAmXIeAltfrEMfIpKFBvNh0
	BqfK3W7wLO8py6AAGGLc7xbtTtbVmZFiiaUPKaqvFT/MVb6qkqawlYDRoO3ivslXPp34+KDjV9dVj
	V1E7zn3zD3cZZQ4Af7UTo4anky3ZvbSDaeyCXNX/Yvjb2mqXqGofbI/DtnGjKPYVUqliSPUjUxOki
	AQOrEbXCu2H7uV9fodBW1G6PursGXHXvyzoxZFEOvfq9MqMmuizPfSimjBbTRs28WxLdc+BeHmnyS
	Co3VHILg==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Richard Henderson <richard.henderson@linaro.org>,
	Beniamino Galvani <b.galvani@gmail.com>,
	Peter Maydell <peter.maydell@linaro.org>,
	Strahinja Jankovic <strahinja.p.jankovic@gmail.com>,
	Niek Linnenbank <nieklinnenbank@gmail.com>,
	=?UTF-8?q?C=C3=A9dric=20Le=20Goater?= <clg@kaod.org>,
	Andrew Jeffery <andrew@aj.id.au>,
	Joel Stanley <joel@jms.id.au>,
	Igor Mitsyanko <i.mitsyanko@gmail.com>,
	Jean-Christophe Dubois <jcd@tribudubois.net>,
	Andrey Smirnov <andrew.smirnov@gmail.com>,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
	Rob Herring <robh@kernel.org>,
	Subbaraya Sundeep <sundeep.lkml@gmail.com>,
	Jan Kiszka <jan.kiszka@web.de>,
	Tyrone Ting <kfting@nuvoton.com>,
	Hao Wu <wuhaotsh@google.com>,
	Radoslaw Biernacki <rad@semihalf.com>,
	Leif Lindholm <quic_llindhol@quicinc.com>,
	Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>,
	"Edgar E. Iglesias" <edgar.iglesias@gmail.com>,
	Alistair Francis <alistair@alistair23.me>,
	Helge Deller <deller@gmx.de>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Eduardo Habkost <eduardo@habkost.net>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Song Gao <gaosong@loongson.cn>,
	Thomas Huth <huth@tuxfamily.org>,
	Laurent Vivier <laurent@vivier.eu>,
	Huacai Chen <chenhuacai@kernel.org>,
	Jiaxun Yang <jiaxun.yang@flygoat.com>,
	=?UTF-8?q?Herv=C3=A9=20Poussineau?= <hpoussin@reactos.org>,
	Aleksandar Rikalo <aleksandar.rikalo@syrmia.com>,
	Aurelien Jarno <aurelien@aurel32.net>,
	Jason Wang <jasowang@redhat.com>,
	Jia Liu <proljc@gmail.com>,
	Stafford Horne <shorne@gmail.com>,
	Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>,
	Nicholas Piggin <npiggin@gmail.com>,
	Daniel Henrique Barboza <danielhb413@gmail.com>,
	David Gibson <david@gibson.dropbear.id.au>,
	Harsh Prateek Bora <harshpb@linux.ibm.com>,
	Bin Meng <bin.meng@windriver.com>,
	Palmer Dabbelt <palmer@dabbelt.com>,
	Weiwei Li <liweiwei@iscas.ac.cn>,
	Liu Zhiwei <zhiwei_liu@linux.alibaba.com>,
	David Hildenbrand <david@redhat.com>,
	Ilya Leoshkevich <iii@linux.ibm.com>,
	Halil Pasic <pasic@linux.ibm.com>,
	Christian Borntraeger <borntraeger@linux.ibm.com>,
	Eric Farman <farman@linux.ibm.com>,
	Yoshinori Sato <ysato@users.sourceforge.jp>,
	Magnus Damm <magnus.damm@gmail.com>,
	Artyom Tarasenko <atar4qemu@gmail.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	Max Filippov <jcmvbkbc@gmail.com>,
	qemu-arm@nongnu.org,
	qemu-ppc@nongnu.org,
	qemu-riscv@nongnu.org,
	qemu-s390x@nongnu.org,
	xen-devel@lists.xenproject.org
Subject: [PATCH 04/45] hw/pci: add pci_init_nic_devices(), pci_init_nic_in_slot()
Date: Sun, 22 Oct 2023 16:51:19 +0100
Message-Id: <20231022155200.436340-5-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231022155200.436340-1-dwmw2@infradead.org>
References: <20231022155200.436340-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by desiato.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

The loop over nd_table[] to add PCI NICs is repeated in quite a few
places. Add a helper function to do it.

Some platforms also try to instantiate a specific model in a specific
slot, to match the real hardware. Add pci_init_nic_in_slot() for that
purpose.

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 hw/pci/pci.c         | 45 ++++++++++++++++++++++++++++++++++++++++++++
 include/hw/pci/pci.h |  4 +++-
 2 files changed, 48 insertions(+), 1 deletion(-)

diff --git a/hw/pci/pci.c b/hw/pci/pci.c
index b0d21bf43a..904f189d30 100644
--- a/hw/pci/pci.c
+++ b/hw/pci/pci.c
@@ -1932,6 +1932,51 @@ PCIDevice *pci_nic_init_nofail(NICInfo *nd, PCIBus *rootbus,
     return pci_dev;
 }
 
+void pci_init_nic_devices(PCIBus *bus, const char *default_model)
+{
+    qemu_create_nic_bus_devices(&bus->qbus, TYPE_PCI_DEVICE, default_model,
+                                "virtio", "virtio-net-pci");
+}
+
+bool pci_init_nic_in_slot(PCIBus *rootbus, const char *model,
+                          const char *alias, const char *devaddr)
+{
+    NICInfo *nd = qemu_find_nic_info(model, true, alias);
+    int dom, busnr, devfn;
+    PCIDevice *pci_dev;
+    unsigned slot;
+    PCIBus *bus;
+
+    if (!nd) {
+        return false;
+    }
+
+    if (!devaddr || pci_parse_devaddr(devaddr, &dom, &busnr, &slot, NULL) < 0) {
+        error_report("Invalid PCI device address %s for device %s",
+                     devaddr, model);
+        exit(1);
+    }
+
+    if (dom != 0) {
+        error_report("No support for non-zero PCI domains");
+        exit(1);
+    }
+
+    devfn = PCI_DEVFN(slot, 0);
+
+    bus = pci_find_bus_nr(rootbus, busnr);
+    if (!bus) {
+        error_report("Invalid PCI device address %s for device %s",
+                     devaddr, model);
+        exit(1);
+    }
+
+    pci_dev = pci_new(devfn, model);
+    qdev_set_nic_properties(&pci_dev->qdev, nd);
+    pci_realize_and_unref(pci_dev, bus, &error_fatal);
+    return true;
+}
+
 PCIDevice *pci_vga_init(PCIBus *bus)
 {
     vga_interface_created = true;
diff --git a/include/hw/pci/pci.h b/include/hw/pci/pci.h
index b70a0b95ff..76d3ddab25 100644
--- a/include/hw/pci/pci.h
+++ b/include/hw/pci/pci.h
@@ -320,7 +320,9 @@ void pci_device_reset(PCIDevice *dev);
 PCIDevice *pci_nic_init_nofail(NICInfo *nd, PCIBus *rootbus,
                                const char *default_model,
                                const char *default_devaddr);
-
+void pci_init_nic_devices(PCIBus *bus, const char *default_model);
+bool pci_init_nic_in_slot(PCIBus *rootbus, const char *default_model,
+                          const char *alias, const char *devaddr);
 PCIDevice *pci_vga_init(PCIBus *bus);
 
 static inline PCIBus *pci_get_bus(const PCIDevice *dev)
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Sun Oct 22 16:07:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 22 Oct 2023 16:07:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.620725.966499 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quaz8-0006nl-CZ; Sun, 22 Oct 2023 16:07:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 620725.966499; Sun, 22 Oct 2023 16: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 1quaz8-0006mw-6w; Sun, 22 Oct 2023 16:07:26 +0000
Received: by outflank-mailman (input) for mailman id 620725;
 Sun, 22 Oct 2023 16: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=RY1I=GE=desiato.srs.infradead.org=BATV+fd6248c3715d1825373b+7364+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1quamh-0006wY-PQ
 for xen-devel@lists.xenproject.org; Sun, 22 Oct 2023 15:54:35 +0000
Received: from desiato.infradead.org (desiato.infradead.org
 [2001:8b0:10b:1:d65d:64ff:fe57:4e05])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 49b6402b-70f3-11ee-98d5-6d05b1d4d9a1;
 Sun, 22 Oct 2023 17:54:31 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by desiato.infradead.org with esmtpsa (Exim 4.96 #2 (Red Hat Linux))
 id 1quakM-00DCn5-0Q; Sun, 22 Oct 2023 15:52:39 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1quakK-001qbH-32; Sun, 22 Oct 2023 16:52:08 +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
X-Inumbo-ID: 49b6402b-70f3-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=desiato.20200630; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=NpZyAYhdLYFYjuFEd+xrircOBC9ywdFHvShEvfLcOxk=; b=Zg9moaRUzS1MffcEsROHUUiXlw
	qGHoyIZXaAQ3AQfKsgZHmpQjhrtYAMgrfol1hNoMz7OcxvwcPtEVQImnR5Yacf/Xb9ygNhQ6O6wsr
	pNW3RQ2d6PjZKKP1jJ+/vYAqcPSU/QTUHnZYJC67RKgk+13tRroSUTluH5Jc6xgvzMemD7o7v5NFi
	wFE4kTt5vYG0txjAAZDEFjp7upmFDhmPgXXXT476slUgRV3o2V/0vOQ5s+gcLynBqeYe6NlO0nTGg
	fBsjGDojdd8Ub9avn/+qsZxntiZ4vTZCsk0fr8uskgB++z5PCPnuq48d9Bbdh4WAfnbUjj1UCKbwT
	u7J9KRyg==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Richard Henderson <richard.henderson@linaro.org>,
	Beniamino Galvani <b.galvani@gmail.com>,
	Peter Maydell <peter.maydell@linaro.org>,
	Strahinja Jankovic <strahinja.p.jankovic@gmail.com>,
	Niek Linnenbank <nieklinnenbank@gmail.com>,
	=?UTF-8?q?C=C3=A9dric=20Le=20Goater?= <clg@kaod.org>,
	Andrew Jeffery <andrew@aj.id.au>,
	Joel Stanley <joel@jms.id.au>,
	Igor Mitsyanko <i.mitsyanko@gmail.com>,
	Jean-Christophe Dubois <jcd@tribudubois.net>,
	Andrey Smirnov <andrew.smirnov@gmail.com>,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
	Rob Herring <robh@kernel.org>,
	Subbaraya Sundeep <sundeep.lkml@gmail.com>,
	Jan Kiszka <jan.kiszka@web.de>,
	Tyrone Ting <kfting@nuvoton.com>,
	Hao Wu <wuhaotsh@google.com>,
	Radoslaw Biernacki <rad@semihalf.com>,
	Leif Lindholm <quic_llindhol@quicinc.com>,
	Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>,
	"Edgar E. Iglesias" <edgar.iglesias@gmail.com>,
	Alistair Francis <alistair@alistair23.me>,
	Helge Deller <deller@gmx.de>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Eduardo Habkost <eduardo@habkost.net>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Song Gao <gaosong@loongson.cn>,
	Thomas Huth <huth@tuxfamily.org>,
	Laurent Vivier <laurent@vivier.eu>,
	Huacai Chen <chenhuacai@kernel.org>,
	Jiaxun Yang <jiaxun.yang@flygoat.com>,
	=?UTF-8?q?Herv=C3=A9=20Poussineau?= <hpoussin@reactos.org>,
	Aleksandar Rikalo <aleksandar.rikalo@syrmia.com>,
	Aurelien Jarno <aurelien@aurel32.net>,
	Jason Wang <jasowang@redhat.com>,
	Jia Liu <proljc@gmail.com>,
	Stafford Horne <shorne@gmail.com>,
	Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>,
	Nicholas Piggin <npiggin@gmail.com>,
	Daniel Henrique Barboza <danielhb413@gmail.com>,
	David Gibson <david@gibson.dropbear.id.au>,
	Harsh Prateek Bora <harshpb@linux.ibm.com>,
	Bin Meng <bin.meng@windriver.com>,
	Palmer Dabbelt <palmer@dabbelt.com>,
	Weiwei Li <liweiwei@iscas.ac.cn>,
	Liu Zhiwei <zhiwei_liu@linux.alibaba.com>,
	David Hildenbrand <david@redhat.com>,
	Ilya Leoshkevich <iii@linux.ibm.com>,
	Halil Pasic <pasic@linux.ibm.com>,
	Christian Borntraeger <borntraeger@linux.ibm.com>,
	Eric Farman <farman@linux.ibm.com>,
	Yoshinori Sato <ysato@users.sourceforge.jp>,
	Magnus Damm <magnus.damm@gmail.com>,
	Artyom Tarasenko <atar4qemu@gmail.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	Max Filippov <jcmvbkbc@gmail.com>,
	qemu-arm@nongnu.org,
	qemu-ppc@nongnu.org,
	qemu-riscv@nongnu.org,
	qemu-s390x@nongnu.org,
	xen-devel@lists.xenproject.org
Subject: [PATCH 43/45] hw/pci: remove pci_nic_init_nofail()
Date: Sun, 22 Oct 2023 16:51:58 +0100
Message-Id: <20231022155200.436340-44-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231022155200.436340-1-dwmw2@infradead.org>
References: <20231022155200.436340-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by desiato.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

This function is no longer used.

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 hw/pci/pci.c         | 72 --------------------------------------------
 include/hw/pci/pci.h |  3 --
 2 files changed, 75 deletions(-)

diff --git a/hw/pci/pci.c b/hw/pci/pci.c
index 904f189d30..439458374e 100644
--- a/hw/pci/pci.c
+++ b/hw/pci/pci.c
@@ -1860,78 +1860,6 @@ const pci_class_desc *get_class_desc(int class)
     return desc;
 }
 
-/* Initialize a PCI NIC.  */
-PCIDevice *pci_nic_init_nofail(NICInfo *nd, PCIBus *rootbus,
-                               const char *default_model,
-                               const char *default_devaddr)
-{
-    const char *devaddr = nd->devaddr ? nd->devaddr : default_devaddr;
-    GPtrArray *pci_nic_models;
-    PCIBus *bus;
-    PCIDevice *pci_dev;
-    DeviceState *dev;
-    int devfn;
-    int i;
-    int dom, busnr;
-    unsigned slot;
-
-    if (nd->model && !strcmp(nd->model, "virtio")) {
-        g_free(nd->model);
-        nd->model = g_strdup("virtio-net-pci");
-    }
-
-    pci_nic_models = qemu_get_nic_models(TYPE_PCI_DEVICE);
-
-    if (qemu_show_nic_models(nd->model, (const char **)pci_nic_models->pdata)) {
-        exit(0);
-    }
-
-    i = qemu_find_nic_model(nd, (const char **)pci_nic_models->pdata,
-                            default_model);
-    if (i < 0) {
-        exit(1);
-    }
-
-    if (!rootbus) {
-        error_report("No primary PCI bus");
-        exit(1);
-    }
-
-    assert(!rootbus->parent_dev);
-
-    if (!devaddr) {
-        devfn = -1;
-        busnr = 0;
-    } else {
-        if (pci_parse_devaddr(devaddr, &dom, &busnr, &slot, NULL) < 0) {
-            error_report("Invalid PCI device address %s for device %s",
-                         devaddr, nd->model);
-            exit(1);
-        }
-
-        if (dom != 0) {
-            error_report("No support for non-zero PCI domains");
-            exit(1);
-        }
-
-        devfn = PCI_DEVFN(slot, 0);
-    }
-
-    bus = pci_find_bus_nr(rootbus, busnr);
-    if (!bus) {
-        error_report("Invalid PCI device address %s for device %s",
-                     devaddr, nd->model);
-        exit(1);
-    }
-
-    pci_dev = pci_new(devfn, nd->model);
-    dev = &pci_dev->qdev;
-    qdev_set_nic_properties(dev, nd);
-    pci_realize_and_unref(pci_dev, bus, &error_fatal);
-    g_ptr_array_free(pci_nic_models, true);
-    return pci_dev;
-}
-
 void pci_init_nic_devices(PCIBus *bus, const char *default_model)
 {
     qemu_create_nic_bus_devices(&bus->qbus, TYPE_PCI_DEVICE, default_model,
diff --git a/include/hw/pci/pci.h b/include/hw/pci/pci.h
index 76d3ddab25..7ea36467a5 100644
--- a/include/hw/pci/pci.h
+++ b/include/hw/pci/pci.h
@@ -317,9 +317,6 @@ void pci_device_set_intx_routing_notifier(PCIDevice *dev,
                                           PCIINTxRoutingNotifier notifier);
 void pci_device_reset(PCIDevice *dev);
 
-PCIDevice *pci_nic_init_nofail(NICInfo *nd, PCIBus *rootbus,
-                               const char *default_model,
-                               const char *default_devaddr);
 void pci_init_nic_devices(PCIBus *bus, const char *default_model);
 bool pci_init_nic_in_slot(PCIBus *rootbus, const char *default_model,
                           const char *alias, const char *devaddr);
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Sun Oct 22 16:07:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 22 Oct 2023 16:07:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.620724.966494 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quaz8-0006lK-3f; Sun, 22 Oct 2023 16:07:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 620724.966494; Sun, 22 Oct 2023 16: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 1quaz8-0006lA-00; Sun, 22 Oct 2023 16:07:26 +0000
Received: by outflank-mailman (input) for mailman id 620724;
 Sun, 22 Oct 2023 16:07: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=RY1I=GE=desiato.srs.infradead.org=BATV+fd6248c3715d1825373b+7364+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1quan1-0007Cq-Ic
 for xen-devel@lists.xenproject.org; Sun, 22 Oct 2023 15:54:55 +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 569cecf3-70f3-11ee-9b0e-b553b5be7939;
 Sun, 22 Oct 2023 17:54:53 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by desiato.infradead.org with esmtpsa (Exim 4.96 #2 (Red Hat Linux))
 id 1quakJ-00DCms-21; Sun, 22 Oct 2023 15:53:37 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1quakI-001qZL-1Q; Sun, 22 Oct 2023 16:52:06 +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
X-Inumbo-ID: 569cecf3-70f3-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=desiato.20200630; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=+bWR+4W0QySPA6dDThhvaIVgU90LGPZKdMQCWNuwJ7c=; b=Jkj4zt574pDV5MVV3UJFRstXCu
	0z+H5/fKv6CVRFEd/rzZi+JSbHvN4lNF3JE5gM7ujHkf0rziZIGjNXunYN/qXxdxRoUzjsN2iozPr
	pgm6p6Mgl1QXkKZz5PBasdEWZd+KB8bTzF+8bY4rFsARFhUGkMHZFV8HXBz8+lW5CccULZi0bXbrX
	lRHjKaMkiKD5JaAjdyym9t0UOK5odXY4i2jnB0ivkGdDX085Hcmv+CFPoRv1PQpwpUwg6WCCSfk+f
	oodoncuiqMwaGpIFmW8Crn4461eqZDXRdDcBr2YBaVEmh7pIs9s7KHQoiogJ2ePWrFOrd10H11tC7
	255Rxlqg==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Richard Henderson <richard.henderson@linaro.org>,
	Beniamino Galvani <b.galvani@gmail.com>,
	Peter Maydell <peter.maydell@linaro.org>,
	Strahinja Jankovic <strahinja.p.jankovic@gmail.com>,
	Niek Linnenbank <nieklinnenbank@gmail.com>,
	=?UTF-8?q?C=C3=A9dric=20Le=20Goater?= <clg@kaod.org>,
	Andrew Jeffery <andrew@aj.id.au>,
	Joel Stanley <joel@jms.id.au>,
	Igor Mitsyanko <i.mitsyanko@gmail.com>,
	Jean-Christophe Dubois <jcd@tribudubois.net>,
	Andrey Smirnov <andrew.smirnov@gmail.com>,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
	Rob Herring <robh@kernel.org>,
	Subbaraya Sundeep <sundeep.lkml@gmail.com>,
	Jan Kiszka <jan.kiszka@web.de>,
	Tyrone Ting <kfting@nuvoton.com>,
	Hao Wu <wuhaotsh@google.com>,
	Radoslaw Biernacki <rad@semihalf.com>,
	Leif Lindholm <quic_llindhol@quicinc.com>,
	Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>,
	"Edgar E. Iglesias" <edgar.iglesias@gmail.com>,
	Alistair Francis <alistair@alistair23.me>,
	Helge Deller <deller@gmx.de>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Eduardo Habkost <eduardo@habkost.net>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Song Gao <gaosong@loongson.cn>,
	Thomas Huth <huth@tuxfamily.org>,
	Laurent Vivier <laurent@vivier.eu>,
	Huacai Chen <chenhuacai@kernel.org>,
	Jiaxun Yang <jiaxun.yang@flygoat.com>,
	=?UTF-8?q?Herv=C3=A9=20Poussineau?= <hpoussin@reactos.org>,
	Aleksandar Rikalo <aleksandar.rikalo@syrmia.com>,
	Aurelien Jarno <aurelien@aurel32.net>,
	Jason Wang <jasowang@redhat.com>,
	Jia Liu <proljc@gmail.com>,
	Stafford Horne <shorne@gmail.com>,
	Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>,
	Nicholas Piggin <npiggin@gmail.com>,
	Daniel Henrique Barboza <danielhb413@gmail.com>,
	David Gibson <david@gibson.dropbear.id.au>,
	Harsh Prateek Bora <harshpb@linux.ibm.com>,
	Bin Meng <bin.meng@windriver.com>,
	Palmer Dabbelt <palmer@dabbelt.com>,
	Weiwei Li <liweiwei@iscas.ac.cn>,
	Liu Zhiwei <zhiwei_liu@linux.alibaba.com>,
	David Hildenbrand <david@redhat.com>,
	Ilya Leoshkevich <iii@linux.ibm.com>,
	Halil Pasic <pasic@linux.ibm.com>,
	Christian Borntraeger <borntraeger@linux.ibm.com>,
	Eric Farman <farman@linux.ibm.com>,
	Yoshinori Sato <ysato@users.sourceforge.jp>,
	Magnus Damm <magnus.damm@gmail.com>,
	Artyom Tarasenko <atar4qemu@gmail.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	Max Filippov <jcmvbkbc@gmail.com>,
	qemu-arm@nongnu.org,
	qemu-ppc@nongnu.org,
	qemu-riscv@nongnu.org,
	qemu-s390x@nongnu.org,
	xen-devel@lists.xenproject.org
Subject: [PATCH 17/45] hw/ppc: use pci_init_nic_devices()
Date: Sun, 22 Oct 2023 16:51:32 +0100
Message-Id: <20231022155200.436340-18-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231022155200.436340-1-dwmw2@infradead.org>
References: <20231022155200.436340-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by desiato.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 hw/ppc/e500.c          |  4 +---
 hw/ppc/mac_newworld.c  |  4 +---
 hw/ppc/mac_oldworld.c  |  4 +---
 hw/ppc/ppc440_bamboo.c | 13 +++++--------
 4 files changed, 8 insertions(+), 17 deletions(-)

diff --git a/hw/ppc/e500.c b/hw/ppc/e500.c
index e04114fb3c..f62eeb3411 100644
--- a/hw/ppc/e500.c
+++ b/hw/ppc/e500.c
@@ -1075,9 +1075,7 @@ void ppce500_init(MachineState *machine)
 
     if (pci_bus) {
         /* Register network interfaces. */
-        for (i = 0; i < nb_nics; i++) {
-            pci_nic_init_nofail(&nd_table[i], pci_bus, mc->default_nic, NULL);
-        }
+        pci_init_nic_devices(pci_bus, mc->default_nic);
     }
 
     /* Register spinning region */
diff --git a/hw/ppc/mac_newworld.c b/hw/ppc/mac_newworld.c
index 535710314a..b36dbaf2b6 100644
--- a/hw/ppc/mac_newworld.c
+++ b/hw/ppc/mac_newworld.c
@@ -444,9 +444,7 @@ static void ppc_core99_init(MachineState *machine)
         graphic_depth = 15;
     }
 
-    for (i = 0; i < nb_nics; i++) {
-        pci_nic_init_nofail(&nd_table[i], pci_bus, mc->default_nic, NULL);
-    }
+    pci_init_nic_devices(pci_bus, mc->default_nic);
 
     /* The NewWorld NVRAM is not located in the MacIO device */
     if (kvm_enabled() && qemu_real_host_page_size() > 4096) {
diff --git a/hw/ppc/mac_oldworld.c b/hw/ppc/mac_oldworld.c
index 9acc7adfc9..1981d3d8f6 100644
--- a/hw/ppc/mac_oldworld.c
+++ b/hw/ppc/mac_oldworld.c
@@ -277,9 +277,7 @@ static void ppc_heathrow_init(MachineState *machine)
 
     pci_vga_init(pci_bus);
 
-    for (i = 0; i < nb_nics; i++) {
-        pci_nic_init_nofail(&nd_table[i], pci_bus, mc->default_nic, NULL);
-    }
+    pci_init_nic_devices(pci_bus, mc->default_nic);
 
     /* MacIO IDE */
     ide_drive_get(hd, ARRAY_SIZE(hd));
diff --git a/hw/ppc/ppc440_bamboo.c b/hw/ppc/ppc440_bamboo.c
index 45f409c838..e63289144a 100644
--- a/hw/ppc/ppc440_bamboo.c
+++ b/hw/ppc/ppc440_bamboo.c
@@ -235,14 +235,11 @@ static void bamboo_init(MachineState *machine)
     }
 
     if (pcibus) {
-        /* Register network interfaces. */
-        for (i = 0; i < nb_nics; i++) {
-            /*
-             * There are no PCI NICs on the Bamboo board, but there are
-             * PCI slots, so we can pick whatever default model we want.
-             */
-            pci_nic_init_nofail(&nd_table[i], pcibus, mc->default_nic, NULL);
-        }
+        /*
+         * There are no PCI NICs on the Bamboo board, but there are
+         * PCI slots, so we can pick whatever default model we want.
+         */
+        pci_init_nic_devices(pcibus, mc->default_nic);
     }
 
     /* Load kernel. */
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Sun Oct 22 16:07:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 22 Oct 2023 16:07:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.620727.966513 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quaz9-0007Gp-L3; Sun, 22 Oct 2023 16:07:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 620727.966513; Sun, 22 Oct 2023 16: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 1quaz9-0007GL-Hy; Sun, 22 Oct 2023 16:07:27 +0000
Received: by outflank-mailman (input) for mailman id 620727;
 Sun, 22 Oct 2023 16:07: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=RY1I=GE=desiato.srs.infradead.org=BATV+fd6248c3715d1825373b+7364+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1quamX-0007Cq-TK
 for xen-devel@lists.xenproject.org; Sun, 22 Oct 2023 15:54:25 +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 43fc1095-70f3-11ee-9b0e-b553b5be7939;
 Sun, 22 Oct 2023 17:54:22 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by desiato.infradead.org with esmtpsa (Exim 4.96 #2 (Red Hat Linux))
 id 1quakI-00DCmk-0T; Sun, 22 Oct 2023 15:52:09 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1quakH-001qYf-0m; Sun, 22 Oct 2023 16:52:05 +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
X-Inumbo-ID: 43fc1095-70f3-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=desiato.20200630; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=LSOT+i68QAXGw5nmfqnaPDMSr2L9t1MExAWbfT8YrMc=; b=ijBcck6ioqdEnU4sTrfyFOY5N2
	ZVKetmVBXzhhypRTvqbWn8w7j3+924tcPja/EREQWaQZxiBlVlRIY1zJj+83h0cHvU5vXlXzrrUgG
	qbXwmSptBmEgxUcAWDbvOi7V9h55IoqA7ftNsiQ3+ilne2HQzjYEl6r9KmuT0shkk3Ro/a+33GP0d
	riKTACqWHz+JKVwiRng40Iou3FlDpLk1p0O8LTVrixLSoO7thP93piqFETzFUaS1+TVjfUwGgtoP/
	DqQiw9ykRUCZ31B+0nTsET4RQCijsTMsc4XG0XMUv9czp3pz02o74sgVpQurf1z6xvpldcwygH0yr
	ncDJw5aA==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Richard Henderson <richard.henderson@linaro.org>,
	Beniamino Galvani <b.galvani@gmail.com>,
	Peter Maydell <peter.maydell@linaro.org>,
	Strahinja Jankovic <strahinja.p.jankovic@gmail.com>,
	Niek Linnenbank <nieklinnenbank@gmail.com>,
	=?UTF-8?q?C=C3=A9dric=20Le=20Goater?= <clg@kaod.org>,
	Andrew Jeffery <andrew@aj.id.au>,
	Joel Stanley <joel@jms.id.au>,
	Igor Mitsyanko <i.mitsyanko@gmail.com>,
	Jean-Christophe Dubois <jcd@tribudubois.net>,
	Andrey Smirnov <andrew.smirnov@gmail.com>,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
	Rob Herring <robh@kernel.org>,
	Subbaraya Sundeep <sundeep.lkml@gmail.com>,
	Jan Kiszka <jan.kiszka@web.de>,
	Tyrone Ting <kfting@nuvoton.com>,
	Hao Wu <wuhaotsh@google.com>,
	Radoslaw Biernacki <rad@semihalf.com>,
	Leif Lindholm <quic_llindhol@quicinc.com>,
	Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>,
	"Edgar E. Iglesias" <edgar.iglesias@gmail.com>,
	Alistair Francis <alistair@alistair23.me>,
	Helge Deller <deller@gmx.de>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Eduardo Habkost <eduardo@habkost.net>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Song Gao <gaosong@loongson.cn>,
	Thomas Huth <huth@tuxfamily.org>,
	Laurent Vivier <laurent@vivier.eu>,
	Huacai Chen <chenhuacai@kernel.org>,
	Jiaxun Yang <jiaxun.yang@flygoat.com>,
	=?UTF-8?q?Herv=C3=A9=20Poussineau?= <hpoussin@reactos.org>,
	Aleksandar Rikalo <aleksandar.rikalo@syrmia.com>,
	Aurelien Jarno <aurelien@aurel32.net>,
	Jason Wang <jasowang@redhat.com>,
	Jia Liu <proljc@gmail.com>,
	Stafford Horne <shorne@gmail.com>,
	Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>,
	Nicholas Piggin <npiggin@gmail.com>,
	Daniel Henrique Barboza <danielhb413@gmail.com>,
	David Gibson <david@gibson.dropbear.id.au>,
	Harsh Prateek Bora <harshpb@linux.ibm.com>,
	Bin Meng <bin.meng@windriver.com>,
	Palmer Dabbelt <palmer@dabbelt.com>,
	Weiwei Li <liweiwei@iscas.ac.cn>,
	Liu Zhiwei <zhiwei_liu@linux.alibaba.com>,
	David Hildenbrand <david@redhat.com>,
	Ilya Leoshkevich <iii@linux.ibm.com>,
	Halil Pasic <pasic@linux.ibm.com>,
	Christian Borntraeger <borntraeger@linux.ibm.com>,
	Eric Farman <farman@linux.ibm.com>,
	Yoshinori Sato <ysato@users.sourceforge.jp>,
	Magnus Damm <magnus.damm@gmail.com>,
	Artyom Tarasenko <atar4qemu@gmail.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	Max Filippov <jcmvbkbc@gmail.com>,
	qemu-arm@nongnu.org,
	qemu-ppc@nongnu.org,
	qemu-riscv@nongnu.org,
	qemu-s390x@nongnu.org,
	xen-devel@lists.xenproject.org
Subject: [PATCH 07/45] hw/alpha/dp264: use pci_init_nic_devices()
Date: Sun, 22 Oct 2023 16:51:22 +0100
Message-Id: <20231022155200.436340-8-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231022155200.436340-1-dwmw2@infradead.org>
References: <20231022155200.436340-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by desiato.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 hw/alpha/dp264.c | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

diff --git a/hw/alpha/dp264.c b/hw/alpha/dp264.c
index 03495e1e60..52a1fa310b 100644
--- a/hw/alpha/dp264.c
+++ b/hw/alpha/dp264.c
@@ -124,9 +124,7 @@ static void clipper_init(MachineState *machine)
     pci_vga_init(pci_bus);
 
     /* Network setup.  e1000 is good enough, failing Tulip support.  */
-    for (i = 0; i < nb_nics; i++) {
-        pci_nic_init_nofail(&nd_table[i], pci_bus, mc->default_nic, NULL);
-    }
+    pci_init_nic_devices(pci_bus, mc->default_nic);
 
     /* Super I/O */
     isa_create_simple(isa_bus, TYPE_SMC37C669_SUPERIO);
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Sun Oct 22 16:07:28 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 22 Oct 2023 16:07:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.620728.966520 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quazA-0007MB-1q; Sun, 22 Oct 2023 16:07:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 620728.966520; Sun, 22 Oct 2023 16:07: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 1quaz9-0007LZ-Rd; Sun, 22 Oct 2023 16:07:27 +0000
Received: by outflank-mailman (input) for mailman id 620728;
 Sun, 22 Oct 2023 16:07: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=RY1I=GE=desiato.srs.infradead.org=BATV+fd6248c3715d1825373b+7364+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1quamY-0006wY-Ng
 for xen-devel@lists.xenproject.org; Sun, 22 Oct 2023 15:54:26 +0000
Received: from desiato.infradead.org (desiato.infradead.org
 [2001:8b0:10b:1:d65d:64ff:fe57:4e05])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 441d5d1b-70f3-11ee-98d5-6d05b1d4d9a1;
 Sun, 22 Oct 2023 17:54:21 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by desiato.infradead.org with esmtpsa (Exim 4.96 #2 (Red Hat Linux))
 id 1quakK-00DCmy-2r; Sun, 22 Oct 2023 15:52:29 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1quakJ-001qaH-2G; Sun, 22 Oct 2023 16:52:07 +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
X-Inumbo-ID: 441d5d1b-70f3-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=desiato.20200630; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=0ar592CabQBE9uNiMdmzBj6h/kSGQkviz1FigKMDtwg=; b=kVKPw+jICk7YPwK6TZoAG7Y0b9
	fZg4c6Pg/9xsmcSYxqamPGcrXCCBZjVODKk6E/OUReU/STTiTXD3bs/x8W2XSq9Td68KErPEkpZmq
	HVKenh0/nCyqc5OlBduddWN9KoJv+fUQJMlgkRtinFZ+CRJLxFR06nKT/2aYVA9hmh+EtZ+BoyBYO
	gcYTc6+5mQy2pW0y12AuG0jSp8qlE7h2TBqPMlVQ+IbqLpHTLnQPz+lRVgN9Vh4AxONRyTCYwap5v
	a3RFVepdZuH6yjNanNrcz/Sq8reGfhnqQfUkBuEqgXgLLcyFdPt6lAxLZLnaGWHOI1idsQswwwypV
	wSowBCbA==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Richard Henderson <richard.henderson@linaro.org>,
	Beniamino Galvani <b.galvani@gmail.com>,
	Peter Maydell <peter.maydell@linaro.org>,
	Strahinja Jankovic <strahinja.p.jankovic@gmail.com>,
	Niek Linnenbank <nieklinnenbank@gmail.com>,
	=?UTF-8?q?C=C3=A9dric=20Le=20Goater?= <clg@kaod.org>,
	Andrew Jeffery <andrew@aj.id.au>,
	Joel Stanley <joel@jms.id.au>,
	Igor Mitsyanko <i.mitsyanko@gmail.com>,
	Jean-Christophe Dubois <jcd@tribudubois.net>,
	Andrey Smirnov <andrew.smirnov@gmail.com>,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
	Rob Herring <robh@kernel.org>,
	Subbaraya Sundeep <sundeep.lkml@gmail.com>,
	Jan Kiszka <jan.kiszka@web.de>,
	Tyrone Ting <kfting@nuvoton.com>,
	Hao Wu <wuhaotsh@google.com>,
	Radoslaw Biernacki <rad@semihalf.com>,
	Leif Lindholm <quic_llindhol@quicinc.com>,
	Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>,
	"Edgar E. Iglesias" <edgar.iglesias@gmail.com>,
	Alistair Francis <alistair@alistair23.me>,
	Helge Deller <deller@gmx.de>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Eduardo Habkost <eduardo@habkost.net>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Song Gao <gaosong@loongson.cn>,
	Thomas Huth <huth@tuxfamily.org>,
	Laurent Vivier <laurent@vivier.eu>,
	Huacai Chen <chenhuacai@kernel.org>,
	Jiaxun Yang <jiaxun.yang@flygoat.com>,
	=?UTF-8?q?Herv=C3=A9=20Poussineau?= <hpoussin@reactos.org>,
	Aleksandar Rikalo <aleksandar.rikalo@syrmia.com>,
	Aurelien Jarno <aurelien@aurel32.net>,
	Jason Wang <jasowang@redhat.com>,
	Jia Liu <proljc@gmail.com>,
	Stafford Horne <shorne@gmail.com>,
	Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>,
	Nicholas Piggin <npiggin@gmail.com>,
	Daniel Henrique Barboza <danielhb413@gmail.com>,
	David Gibson <david@gibson.dropbear.id.au>,
	Harsh Prateek Bora <harshpb@linux.ibm.com>,
	Bin Meng <bin.meng@windriver.com>,
	Palmer Dabbelt <palmer@dabbelt.com>,
	Weiwei Li <liweiwei@iscas.ac.cn>,
	Liu Zhiwei <zhiwei_liu@linux.alibaba.com>,
	David Hildenbrand <david@redhat.com>,
	Ilya Leoshkevich <iii@linux.ibm.com>,
	Halil Pasic <pasic@linux.ibm.com>,
	Christian Borntraeger <borntraeger@linux.ibm.com>,
	Eric Farman <farman@linux.ibm.com>,
	Yoshinori Sato <ysato@users.sourceforge.jp>,
	Magnus Damm <magnus.damm@gmail.com>,
	Artyom Tarasenko <atar4qemu@gmail.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	Max Filippov <jcmvbkbc@gmail.com>,
	qemu-arm@nongnu.org,
	qemu-ppc@nongnu.org,
	qemu-riscv@nongnu.org,
	qemu-s390x@nongnu.org,
	xen-devel@lists.xenproject.org
Subject: [PATCH 30/45] hw/arm: use qemu_configure_nic_device()
Date: Sun, 22 Oct 2023 16:51:45 +0100
Message-Id: <20231022155200.436340-31-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231022155200.436340-1-dwmw2@infradead.org>
References: <20231022155200.436340-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by desiato.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 hw/arm/mps2-tz.c     |  8 ++------
 hw/arm/msf2-soc.c    |  6 +-----
 hw/arm/musicpal.c    |  3 +--
 hw/arm/xilinx_zynq.c | 11 ++++-------
 hw/arm/xlnx-versal.c |  7 +------
 hw/arm/xlnx-zynqmp.c |  8 +-------
 6 files changed, 10 insertions(+), 33 deletions(-)

diff --git a/hw/arm/mps2-tz.c b/hw/arm/mps2-tz.c
index eae3639da2..6808143a07 100644
--- a/hw/arm/mps2-tz.c
+++ b/hw/arm/mps2-tz.c
@@ -499,14 +499,12 @@ static MemoryRegion *make_eth_dev(MPS2TZMachineState *mms, void *opaque,
                                   const PPCExtraData *extradata)
 {
     SysBusDevice *s;
-    NICInfo *nd = &nd_table[0];
 
     /* In hardware this is a LAN9220; the LAN9118 is software compatible
      * except that it doesn't support the checksum-offload feature.
      */
-    qemu_check_nic_model(nd, "lan9118");
     mms->lan9118 = qdev_new(TYPE_LAN9118);
-    qdev_set_nic_properties(mms->lan9118, nd);
+    qemu_configure_nic_device(mms->lan9118, true, NULL);
 
     s = SYS_BUS_DEVICE(mms->lan9118);
     sysbus_realize_and_unref(s, &error_fatal);
@@ -524,7 +522,6 @@ static MemoryRegion *make_eth_usb(MPS2TZMachineState *mms, void *opaque,
      * irqs[] is the ethernet IRQ.
      */
     SysBusDevice *s;
-    NICInfo *nd = &nd_table[0];
 
     memory_region_init(&mms->eth_usb_container, OBJECT(mms),
                        "mps2-tz-eth-usb-container", 0x200000);
@@ -533,9 +530,8 @@ static MemoryRegion *make_eth_usb(MPS2TZMachineState *mms, void *opaque,
      * In hardware this is a LAN9220; the LAN9118 is software compatible
      * except that it doesn't support the checksum-offload feature.
      */
-    qemu_check_nic_model(nd, "lan9118");
     mms->lan9118 = qdev_new(TYPE_LAN9118);
-    qdev_set_nic_properties(mms->lan9118, nd);
+    qemu_configure_nic_device(mms->lan9118, true, NULL);
 
     s = SYS_BUS_DEVICE(mms->lan9118);
     sysbus_realize_and_unref(s, &error_fatal);
diff --git a/hw/arm/msf2-soc.c b/hw/arm/msf2-soc.c
index b5fe9f364d..35bf1d64e1 100644
--- a/hw/arm/msf2-soc.c
+++ b/hw/arm/msf2-soc.c
@@ -197,12 +197,8 @@ static void m2sxxx_soc_realize(DeviceState *dev_soc, Error **errp)
         g_free(bus_name);
     }
 
-    /* FIXME use qdev NIC properties instead of nd_table[] */
-    if (nd_table[0].used) {
-        qemu_check_nic_model(&nd_table[0], TYPE_MSS_EMAC);
-        qdev_set_nic_properties(DEVICE(&s->emac), &nd_table[0]);
-    }
     dev = DEVICE(&s->emac);
+    qemu_configure_nic_device(dev, true, NULL);
     object_property_set_link(OBJECT(&s->emac), "ahb-bus",
                              OBJECT(get_system_memory()), &error_abort);
     if (!sysbus_realize(SYS_BUS_DEVICE(&s->emac), errp)) {
diff --git a/hw/arm/musicpal.c b/hw/arm/musicpal.c
index 9703bfb97f..a60139ce53 100644
--- a/hw/arm/musicpal.c
+++ b/hw/arm/musicpal.c
@@ -1286,9 +1286,8 @@ static void musicpal_init(MachineState *machine)
     }
     sysbus_create_simple(TYPE_MV88W8618_FLASHCFG, MP_FLASHCFG_BASE, NULL);
 
-    qemu_check_nic_model(&nd_table[0], "mv88w8618");
     dev = qdev_new(TYPE_MV88W8618_ETH);
-    qdev_set_nic_properties(dev, &nd_table[0]);
+    qemu_configure_nic_device(dev, true, "mv88w8618");
     object_property_set_link(OBJECT(dev), "dma-memory",
                              OBJECT(get_system_memory()), &error_fatal);
     sysbus_realize_and_unref(SYS_BUS_DEVICE(dev), &error_fatal);
diff --git a/hw/arm/xilinx_zynq.c b/hw/arm/xilinx_zynq.c
index 8dc2ea83a9..bc093b6f77 100644
--- a/hw/arm/xilinx_zynq.c
+++ b/hw/arm/xilinx_zynq.c
@@ -108,16 +108,13 @@ static void zynq_write_board_setup(ARMCPU *cpu,
 
 static struct arm_boot_info zynq_binfo = {};
 
-static void gem_init(NICInfo *nd, uint32_t base, qemu_irq irq)
+static void gem_init(uint32_t base, qemu_irq irq)
 {
     DeviceState *dev;
     SysBusDevice *s;
 
     dev = qdev_new(TYPE_CADENCE_GEM);
-    if (nd->used) {
-        qemu_check_nic_model(nd, TYPE_CADENCE_GEM);
-        qdev_set_nic_properties(dev, nd);
-    }
+    qemu_configure_nic_device(dev, true, NULL);
     object_property_set_int(OBJECT(dev), "phy-addr", 7, &error_abort);
     s = SYS_BUS_DEVICE(dev);
     sysbus_realize_and_unref(s, &error_fatal);
@@ -279,8 +276,8 @@ static void zynq_init(MachineState *machine)
     sysbus_create_varargs("cadence_ttc", 0xF8002000,
             pic[69-IRQ_OFFSET], pic[70-IRQ_OFFSET], pic[71-IRQ_OFFSET], NULL);
 
-    gem_init(&nd_table[0], 0xE000B000, pic[54-IRQ_OFFSET]);
-    gem_init(&nd_table[1], 0xE000C000, pic[77-IRQ_OFFSET]);
+    gem_init(0xE000B000, pic[54-IRQ_OFFSET]);
+    gem_init(0xE000C000, pic[77-IRQ_OFFSET]);
 
     for (n = 0; n < 2; n++) {
         int hci_irq = n ? 79 : 56;
diff --git a/hw/arm/xlnx-versal.c b/hw/arm/xlnx-versal.c
index fa556d8764..08106f172c 100644
--- a/hw/arm/xlnx-versal.c
+++ b/hw/arm/xlnx-versal.c
@@ -249,18 +249,13 @@ static void versal_create_gems(Versal *s, qemu_irq *pic)
         static const int irqs[] = { VERSAL_GEM0_IRQ_0, VERSAL_GEM1_IRQ_0};
         static const uint64_t addrs[] = { MM_GEM0, MM_GEM1 };
         char *name = g_strdup_printf("gem%d", i);
-        NICInfo *nd = &nd_table[i];
         DeviceState *dev;
         MemoryRegion *mr;
 
         object_initialize_child(OBJECT(s), name, &s->lpd.iou.gem[i],
                                 TYPE_CADENCE_GEM);
         dev = DEVICE(&s->lpd.iou.gem[i]);
-        /* FIXME use qdev NIC properties instead of nd_table[] */
-        if (nd->used) {
-            qemu_check_nic_model(nd, "cadence_gem");
-            qdev_set_nic_properties(dev, nd);
-        }
+        qemu_configure_nic_device(dev, true, NULL);
         object_property_set_int(OBJECT(dev), "phy-addr", 23, &error_abort);
         object_property_set_int(OBJECT(dev), "num-priority-queues", 2,
                                 &error_abort);
diff --git a/hw/arm/xlnx-zynqmp.c b/hw/arm/xlnx-zynqmp.c
index 5905a33015..4f1714e4a1 100644
--- a/hw/arm/xlnx-zynqmp.c
+++ b/hw/arm/xlnx-zynqmp.c
@@ -616,13 +616,7 @@ static void xlnx_zynqmp_realize(DeviceState *dev, Error **errp)
     }
 
     for (i = 0; i < XLNX_ZYNQMP_NUM_GEMS; i++) {
-        NICInfo *nd = &nd_table[i];
-
-        /* FIXME use qdev NIC properties instead of nd_table[] */
-        if (nd->used) {
-            qemu_check_nic_model(nd, TYPE_CADENCE_GEM);
-            qdev_set_nic_properties(DEVICE(&s->gem[i]), nd);
-        }
+        qemu_configure_nic_device(DEVICE(&s->gem[i]), true, NULL);
         object_property_set_int(OBJECT(&s->gem[i]), "revision", GEM_REVISION,
                                 &error_abort);
         object_property_set_int(OBJECT(&s->gem[i]), "phy-addr", 23,
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Sun Oct 22 16:07:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 22 Oct 2023 16:07:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.620737.966533 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quazc-0000Ue-8m; Sun, 22 Oct 2023 16:07:56 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 620737.966533; Sun, 22 Oct 2023 16:07: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 1quazc-0000UX-64; Sun, 22 Oct 2023 16:07:56 +0000
Received: by outflank-mailman (input) for mailman id 620737;
 Sun, 22 Oct 2023 16:07: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=zZR7=GE=casper.srs.infradead.org=BATV+88d8721f4af1339c2fab+7364+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1quam2-0006wY-U6
 for xen-devel@lists.xenproject.org; Sun, 22 Oct 2023 15:53:54 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 33947c9c-70f3-11ee-98d5-6d05b1d4d9a1;
 Sun, 22 Oct 2023 17:53:54 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1quakJ-008TGS-5c; Sun, 22 Oct 2023 15:52:07 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1quakI-001qZX-2D; Sun, 22 Oct 2023 16:52:06 +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
X-Inumbo-ID: 33947c9c-70f3-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=dSwI1h0y4SH0kpqtgw6L1Gm8G2MktnLyUJxVywGZwBA=; b=mY5ncA8vKDZJwpYEQFDiCDsbub
	fHgnJI7txngbGu+bLv8Ww/hB84od8jtF86VqAGHFXCEvxaPZjDoRZoJeV6PiYNAkyO11Ko9aiMDV8
	9KOpskxJPGs79JNvLAnHcNsQDluDR3ydBcND6AeKpT04tMbMSLRzAb499Ik/l0Jzv+Rlky+cl/05Y
	CvaapmmWi50n0joewZBp0ylKt15DFZD5L35vW/jpErE4JKXm+Imjs69CAi1rij50OrXcl/l0suHiy
	C9RUAuw6ABEpKOd+M0s9n5GHYQt92fduphuK88Zn1vTrUw5hPVSZmKN9QT2utnbMSOWtyBgrQJ/9L
	b8T4xEHQ==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Richard Henderson <richard.henderson@linaro.org>,
	Beniamino Galvani <b.galvani@gmail.com>,
	Peter Maydell <peter.maydell@linaro.org>,
	Strahinja Jankovic <strahinja.p.jankovic@gmail.com>,
	Niek Linnenbank <nieklinnenbank@gmail.com>,
	=?UTF-8?q?C=C3=A9dric=20Le=20Goater?= <clg@kaod.org>,
	Andrew Jeffery <andrew@aj.id.au>,
	Joel Stanley <joel@jms.id.au>,
	Igor Mitsyanko <i.mitsyanko@gmail.com>,
	Jean-Christophe Dubois <jcd@tribudubois.net>,
	Andrey Smirnov <andrew.smirnov@gmail.com>,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
	Rob Herring <robh@kernel.org>,
	Subbaraya Sundeep <sundeep.lkml@gmail.com>,
	Jan Kiszka <jan.kiszka@web.de>,
	Tyrone Ting <kfting@nuvoton.com>,
	Hao Wu <wuhaotsh@google.com>,
	Radoslaw Biernacki <rad@semihalf.com>,
	Leif Lindholm <quic_llindhol@quicinc.com>,
	Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>,
	"Edgar E. Iglesias" <edgar.iglesias@gmail.com>,
	Alistair Francis <alistair@alistair23.me>,
	Helge Deller <deller@gmx.de>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Eduardo Habkost <eduardo@habkost.net>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Song Gao <gaosong@loongson.cn>,
	Thomas Huth <huth@tuxfamily.org>,
	Laurent Vivier <laurent@vivier.eu>,
	Huacai Chen <chenhuacai@kernel.org>,
	Jiaxun Yang <jiaxun.yang@flygoat.com>,
	=?UTF-8?q?Herv=C3=A9=20Poussineau?= <hpoussin@reactos.org>,
	Aleksandar Rikalo <aleksandar.rikalo@syrmia.com>,
	Aurelien Jarno <aurelien@aurel32.net>,
	Jason Wang <jasowang@redhat.com>,
	Jia Liu <proljc@gmail.com>,
	Stafford Horne <shorne@gmail.com>,
	Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>,
	Nicholas Piggin <npiggin@gmail.com>,
	Daniel Henrique Barboza <danielhb413@gmail.com>,
	David Gibson <david@gibson.dropbear.id.au>,
	Harsh Prateek Bora <harshpb@linux.ibm.com>,
	Bin Meng <bin.meng@windriver.com>,
	Palmer Dabbelt <palmer@dabbelt.com>,
	Weiwei Li <liweiwei@iscas.ac.cn>,
	Liu Zhiwei <zhiwei_liu@linux.alibaba.com>,
	David Hildenbrand <david@redhat.com>,
	Ilya Leoshkevich <iii@linux.ibm.com>,
	Halil Pasic <pasic@linux.ibm.com>,
	Christian Borntraeger <borntraeger@linux.ibm.com>,
	Eric Farman <farman@linux.ibm.com>,
	Yoshinori Sato <ysato@users.sourceforge.jp>,
	Magnus Damm <magnus.damm@gmail.com>,
	Artyom Tarasenko <atar4qemu@gmail.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	Max Filippov <jcmvbkbc@gmail.com>,
	qemu-arm@nongnu.org,
	qemu-ppc@nongnu.org,
	qemu-riscv@nongnu.org,
	qemu-s390x@nongnu.org,
	xen-devel@lists.xenproject.org
Subject: [PATCH 19/45] hw/sparc64/sun4u: use pci_init_nic_devices()
Date: Sun, 22 Oct 2023 16:51:34 +0100
Message-Id: <20231022155200.436340-20-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231022155200.436340-1-dwmw2@infradead.org>
References: <20231022155200.436340-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

The first sunhme NIC gets placed a function 1 on slot 1 of PCI bus A,
and the rest are dynamically assigned on PCI bus B.

Previously, any PCI NIC would get the special treatment purely by
virtue of being first in the list.

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 hw/sparc64/sun4u.c | 27 ++++++++-------------------
 1 file changed, 8 insertions(+), 19 deletions(-)

diff --git a/hw/sparc64/sun4u.c b/hw/sparc64/sun4u.c
index d908a38f73..13e4380f30 100644
--- a/hw/sparc64/sun4u.c
+++ b/hw/sparc64/sun4u.c
@@ -642,29 +642,18 @@ static void sun4uv_init(MemoryRegion *address_space_mem,
 
     memset(&macaddr, 0, sizeof(MACAddr));
     onboard_nic = false;
-    for (i = 0; i < nb_nics; i++) {
-        PCIBus *bus;
-        nd = &nd_table[i];
-
-        if (!nd->model || strcmp(nd->model, mc->default_nic) == 0) {
-            if (!onboard_nic) {
-                pci_dev = pci_new_multifunction(PCI_DEVFN(1, 1), mc->default_nic);
-                bus = pci_busA;
-                memcpy(&macaddr, &nd->macaddr.a, sizeof(MACAddr));
-                onboard_nic = true;
-            } else {
-                pci_dev = pci_new(-1, mc->default_nic);
-                bus = pci_busB;
-            }
-        } else {
-            pci_dev = pci_new(-1, nd->model);
-            bus = pci_busB;
-        }
 
+    nd = qemu_find_nic_info(mc->default_nic, true, NULL);
+    if (nd) {
+        pci_dev = pci_new_multifunction(PCI_DEVFN(1, 1), mc->default_nic);
         dev = &pci_dev->qdev;
         qdev_set_nic_properties(dev, nd);
-        pci_realize_and_unref(pci_dev, bus, &error_fatal);
+        pci_realize_and_unref(pci_dev, pci_busA, &error_fatal);
+
+        memcpy(&macaddr, &nd->macaddr.a, sizeof(MACAddr));
+        onboard_nic = true;
     }
+    pci_init_nic_devices(pci_busB, mc->default_nic);
 
     /* If we don't have an onboard NIC, grab a default MAC address so that
      * we have a valid machine id */
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Sun Oct 22 16:07:58 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 22 Oct 2023 16:07:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.620739.966544 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quaze-0000qM-GQ; Sun, 22 Oct 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 620739.966544; Sun, 22 Oct 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 1quaze-0000qD-Di; Sun, 22 Oct 2023 16:07:58 +0000
Received: by outflank-mailman (input) for mailman id 620739;
 Sun, 22 Oct 2023 16:07: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=RY1I=GE=desiato.srs.infradead.org=BATV+fd6248c3715d1825373b+7364+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1quan9-0007Cq-6H
 for xen-devel@lists.xenproject.org; Sun, 22 Oct 2023 15:55:03 +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 5b0b3ed8-70f3-11ee-9b0e-b553b5be7939;
 Sun, 22 Oct 2023 17:55:00 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by desiato.infradead.org with esmtpsa (Exim 4.96 #2 (Red Hat Linux))
 id 1quakJ-00DCmq-21; Sun, 22 Oct 2023 15:53:37 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1quakI-001qZD-0e; Sun, 22 Oct 2023 16:52:06 +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
X-Inumbo-ID: 5b0b3ed8-70f3-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=desiato.20200630; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=zpmWGfDJ4p47YbRsENJiPMvNNVfWBSj9DDCQL7if7Xs=; b=rJQSdHp7neRWdzDMIbjE2Zjypv
	NjPr8rhGdb3D/xMBkHChvhKzva/Hb0vatOBd4vj+sHprPyL3A2lG26OzZQAMzDGQUYKBqozMOkUW1
	Jd3tMTeIPV3NuYNI5VfrMGpi2wFnruhQLJLr8kQ5SUsQBiu3pvZNlPPL+vqwzvizOyNk/bFiB3H0g
	NhH05Um2d33Epcqk2+d8nle+kwoHD8TyASBLJUnxRuc/BILJiNAmL4PNDYzGbflS2jzPO2LTduqKy
	Yay1jg5/nZ5UdWTxshF6kqD22VbrTA+7eQRI8EY5V0fiRJT7MLBsYAxxCZowr3goq/qL/5+9SpQAA
	FLB1oMjQ==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Richard Henderson <richard.henderson@linaro.org>,
	Beniamino Galvani <b.galvani@gmail.com>,
	Peter Maydell <peter.maydell@linaro.org>,
	Strahinja Jankovic <strahinja.p.jankovic@gmail.com>,
	Niek Linnenbank <nieklinnenbank@gmail.com>,
	=?UTF-8?q?C=C3=A9dric=20Le=20Goater?= <clg@kaod.org>,
	Andrew Jeffery <andrew@aj.id.au>,
	Joel Stanley <joel@jms.id.au>,
	Igor Mitsyanko <i.mitsyanko@gmail.com>,
	Jean-Christophe Dubois <jcd@tribudubois.net>,
	Andrey Smirnov <andrew.smirnov@gmail.com>,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
	Rob Herring <robh@kernel.org>,
	Subbaraya Sundeep <sundeep.lkml@gmail.com>,
	Jan Kiszka <jan.kiszka@web.de>,
	Tyrone Ting <kfting@nuvoton.com>,
	Hao Wu <wuhaotsh@google.com>,
	Radoslaw Biernacki <rad@semihalf.com>,
	Leif Lindholm <quic_llindhol@quicinc.com>,
	Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>,
	"Edgar E. Iglesias" <edgar.iglesias@gmail.com>,
	Alistair Francis <alistair@alistair23.me>,
	Helge Deller <deller@gmx.de>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Eduardo Habkost <eduardo@habkost.net>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Song Gao <gaosong@loongson.cn>,
	Thomas Huth <huth@tuxfamily.org>,
	Laurent Vivier <laurent@vivier.eu>,
	Huacai Chen <chenhuacai@kernel.org>,
	Jiaxun Yang <jiaxun.yang@flygoat.com>,
	=?UTF-8?q?Herv=C3=A9=20Poussineau?= <hpoussin@reactos.org>,
	Aleksandar Rikalo <aleksandar.rikalo@syrmia.com>,
	Aurelien Jarno <aurelien@aurel32.net>,
	Jason Wang <jasowang@redhat.com>,
	Jia Liu <proljc@gmail.com>,
	Stafford Horne <shorne@gmail.com>,
	Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>,
	Nicholas Piggin <npiggin@gmail.com>,
	Daniel Henrique Barboza <danielhb413@gmail.com>,
	David Gibson <david@gibson.dropbear.id.au>,
	Harsh Prateek Bora <harshpb@linux.ibm.com>,
	Bin Meng <bin.meng@windriver.com>,
	Palmer Dabbelt <palmer@dabbelt.com>,
	Weiwei Li <liweiwei@iscas.ac.cn>,
	Liu Zhiwei <zhiwei_liu@linux.alibaba.com>,
	David Hildenbrand <david@redhat.com>,
	Ilya Leoshkevich <iii@linux.ibm.com>,
	Halil Pasic <pasic@linux.ibm.com>,
	Christian Borntraeger <borntraeger@linux.ibm.com>,
	Eric Farman <farman@linux.ibm.com>,
	Yoshinori Sato <ysato@users.sourceforge.jp>,
	Magnus Damm <magnus.damm@gmail.com>,
	Artyom Tarasenko <atar4qemu@gmail.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	Max Filippov <jcmvbkbc@gmail.com>,
	qemu-arm@nongnu.org,
	qemu-ppc@nongnu.org,
	qemu-riscv@nongnu.org,
	qemu-s390x@nongnu.org,
	xen-devel@lists.xenproject.org
Subject: [PATCH 15/45] hw/ppc/prep: use pci_init_nic_devices()
Date: Sun, 22 Oct 2023 16:51:30 +0100
Message-Id: <20231022155200.436340-16-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231022155200.436340-1-dwmw2@infradead.org>
References: <20231022155200.436340-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by desiato.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

Previously, the first PCI NIC would be placed in PCI slot 3 and the rest
would be dynamically assigned. Even if the user overrode the default NIC
type and made it something other than PCNet.

Now, the first PCNet NIC (that is, anything not explicitly specified
to be anything different) will go to slot 3 even if it isn't the first
NIC specified on the commnd line. And anything else will be dynamically
assigned.

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 hw/ppc/prep.c | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

diff --git a/hw/ppc/prep.c b/hw/ppc/prep.c
index 137276bcb9..1a08e74945 100644
--- a/hw/ppc/prep.c
+++ b/hw/ppc/prep.c
@@ -336,10 +336,9 @@ static void ibm_40p_init(MachineState *machine)
         /* XXX: s3-trio at PCI_DEVFN(2, 0) */
         pci_vga_init(pci_bus);
 
-        for (i = 0; i < nb_nics; i++) {
-            pci_nic_init_nofail(&nd_table[i], pci_bus, mc->default_nic,
-                                i == 0 ? "3" : NULL);
-        }
+        /* First PCNET device at PCI_DEVFN(3, 0) */
+        pci_init_nic_in_slot(pci_bus, mc->default_nic, NULL, "3");
+        pci_init_nic_devices(pci_bus, mc->default_nic);
     }
 
     /* Prepare firmware configuration for OpenBIOS */
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Sun Oct 22 16:08:06 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 22 Oct 2023 16:08:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.620741.966554 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quazl-0001Kn-T0; Sun, 22 Oct 2023 16:08:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 620741.966554; Sun, 22 Oct 2023 16:08: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 1quazl-0001Kc-PP; Sun, 22 Oct 2023 16:08:05 +0000
Received: by outflank-mailman (input) for mailman id 620741;
 Sun, 22 Oct 2023 16:08: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=zZR7=GE=casper.srs.infradead.org=BATV+88d8721f4af1339c2fab+7364+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1quamH-0007Cq-37
 for xen-devel@lists.xenproject.org; Sun, 22 Oct 2023 15:54:09 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 3a6c9341-70f3-11ee-9b0e-b553b5be7939;
 Sun, 22 Oct 2023 17:54:05 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1quakI-008TGK-9x; Sun, 22 Oct 2023 15:52:06 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1quakH-001qZ1-2e; Sun, 22 Oct 2023 16:52:05 +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
X-Inumbo-ID: 3a6c9341-70f3-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=3e0heQHQqCALykMf3sp88ju+ujwmQ4ejY+B/1xn+t6Y=; b=ubV3eJBHgZMNlY67dyFRpUqgO6
	CeUOWA5i2PhoLnOs6b32Uuwx38maKk5aRfdx6VCww+t36WdlK62Ic/CJzX6h8M0j2h3ty1QzbhBA4
	vWdnxi5dnasTwl9XznwavqJg8AejBWlA9Ggshj4IYvmLgEmK2E+HqWDuBBXuEiwP8rJVW/GR/hpLS
	mFEvK7fi30AV4PGcRFzxPtu6FD5UG8V5J4iyv/CXNxVDijyjcx9vDbemTQcvUsu76UCrvggRomLS/
	BHOSSMmnrHwnCwZiCU40Ug0Bmtak8AaqO6ERjbYi3+nz+ONRMmiiS8eDzMRZmh5ssO7pcMIjyjZ6d
	faHZXyYA==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Richard Henderson <richard.henderson@linaro.org>,
	Beniamino Galvani <b.galvani@gmail.com>,
	Peter Maydell <peter.maydell@linaro.org>,
	Strahinja Jankovic <strahinja.p.jankovic@gmail.com>,
	Niek Linnenbank <nieklinnenbank@gmail.com>,
	=?UTF-8?q?C=C3=A9dric=20Le=20Goater?= <clg@kaod.org>,
	Andrew Jeffery <andrew@aj.id.au>,
	Joel Stanley <joel@jms.id.au>,
	Igor Mitsyanko <i.mitsyanko@gmail.com>,
	Jean-Christophe Dubois <jcd@tribudubois.net>,
	Andrey Smirnov <andrew.smirnov@gmail.com>,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
	Rob Herring <robh@kernel.org>,
	Subbaraya Sundeep <sundeep.lkml@gmail.com>,
	Jan Kiszka <jan.kiszka@web.de>,
	Tyrone Ting <kfting@nuvoton.com>,
	Hao Wu <wuhaotsh@google.com>,
	Radoslaw Biernacki <rad@semihalf.com>,
	Leif Lindholm <quic_llindhol@quicinc.com>,
	Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>,
	"Edgar E. Iglesias" <edgar.iglesias@gmail.com>,
	Alistair Francis <alistair@alistair23.me>,
	Helge Deller <deller@gmx.de>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Eduardo Habkost <eduardo@habkost.net>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Song Gao <gaosong@loongson.cn>,
	Thomas Huth <huth@tuxfamily.org>,
	Laurent Vivier <laurent@vivier.eu>,
	Huacai Chen <chenhuacai@kernel.org>,
	Jiaxun Yang <jiaxun.yang@flygoat.com>,
	=?UTF-8?q?Herv=C3=A9=20Poussineau?= <hpoussin@reactos.org>,
	Aleksandar Rikalo <aleksandar.rikalo@syrmia.com>,
	Aurelien Jarno <aurelien@aurel32.net>,
	Jason Wang <jasowang@redhat.com>,
	Jia Liu <proljc@gmail.com>,
	Stafford Horne <shorne@gmail.com>,
	Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>,
	Nicholas Piggin <npiggin@gmail.com>,
	Daniel Henrique Barboza <danielhb413@gmail.com>,
	David Gibson <david@gibson.dropbear.id.au>,
	Harsh Prateek Bora <harshpb@linux.ibm.com>,
	Bin Meng <bin.meng@windriver.com>,
	Palmer Dabbelt <palmer@dabbelt.com>,
	Weiwei Li <liweiwei@iscas.ac.cn>,
	Liu Zhiwei <zhiwei_liu@linux.alibaba.com>,
	David Hildenbrand <david@redhat.com>,
	Ilya Leoshkevich <iii@linux.ibm.com>,
	Halil Pasic <pasic@linux.ibm.com>,
	Christian Borntraeger <borntraeger@linux.ibm.com>,
	Eric Farman <farman@linux.ibm.com>,
	Yoshinori Sato <ysato@users.sourceforge.jp>,
	Magnus Damm <magnus.damm@gmail.com>,
	Artyom Tarasenko <atar4qemu@gmail.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	Max Filippov <jcmvbkbc@gmail.com>,
	qemu-arm@nongnu.org,
	qemu-ppc@nongnu.org,
	qemu-riscv@nongnu.org,
	qemu-s390x@nongnu.org,
	xen-devel@lists.xenproject.org
Subject: [PATCH 12/45] hw/mips/fuloong2e: use pci_init_nic_devices()
Date: Sun, 22 Oct 2023 16:51:27 +0100
Message-Id: <20231022155200.436340-13-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231022155200.436340-1-dwmw2@infradead.org>
References: <20231022155200.436340-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

The previous behaviour was: *if* the first NIC specified on the command
line was an RTL8139 (or unspecified model) then it gets assigned to PCI
slot 7, which is where the Fuloong board had an RTL8139. All other
devices (including the first, if it was specified a anything other then
an rtl8319) get dynamically assigned on the bus.

The new behaviour is subtly different: If the first NIC was given a
specific model *other* than rtl8139, and a subsequent NIC was not,
then the rtl8139 (or unspecified) NIC will go to slot 7 and the rest
will be dynamically assigned.

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 hw/mips/fuloong2e.c | 16 +++-------------
 1 file changed, 3 insertions(+), 13 deletions(-)

diff --git a/hw/mips/fuloong2e.c b/hw/mips/fuloong2e.c
index c6109633fe..32a9d9d603 100644
--- a/hw/mips/fuloong2e.c
+++ b/hw/mips/fuloong2e.c
@@ -202,19 +202,9 @@ static void main_cpu_reset(void *opaque)
 /* Network support */
 static void network_init(PCIBus *pci_bus)
 {
-    int i;
-
-    for (i = 0; i < nb_nics; i++) {
-        NICInfo *nd = &nd_table[i];
-        const char *default_devaddr = NULL;
-
-        if (i == 0 && (!nd->model || strcmp(nd->model, "rtl8139") == 0)) {
-            /* The Fuloong board has a RTL8139 card using PCI SLOT 7 */
-            default_devaddr = "07";
-        }
-
-        pci_nic_init_nofail(nd, pci_bus, "rtl8139", default_devaddr);
-    }
+    /* The Fuloong board has a RTL8139 card using PCI SLOT 7 */
+    pci_init_nic_in_slot(pci_bus, "rtl8139", NULL, "07");
+    pci_init_nic_devices(pci_bus, "rtl8139");
 }
 
 static void mips_fuloong2e_init(MachineState *machine)
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Sun Oct 22 16:08:08 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 22 Oct 2023 16:08:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.620742.966564 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quazo-0001et-4o; Sun, 22 Oct 2023 16:08:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 620742.966564; Sun, 22 Oct 2023 16:08: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 1quazo-0001ei-0g; Sun, 22 Oct 2023 16:08:08 +0000
Received: by outflank-mailman (input) for mailman id 620742;
 Sun, 22 Oct 2023 16:08: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=RY1I=GE=desiato.srs.infradead.org=BATV+fd6248c3715d1825373b+7364+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1quamS-0006wY-MM
 for xen-devel@lists.xenproject.org; Sun, 22 Oct 2023 15:54:21 +0000
Received: from desiato.infradead.org (desiato.infradead.org
 [2001:8b0:10b:1:d65d:64ff:fe57:4e05])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 4117b88e-70f3-11ee-98d5-6d05b1d4d9a1;
 Sun, 22 Oct 2023 17:54:18 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by desiato.infradead.org with esmtpsa (Exim 4.96 #2 (Red Hat Linux))
 id 1quakJ-00DCmr-22; Sun, 22 Oct 2023 15:52:22 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1quakI-001qZH-12; Sun, 22 Oct 2023 16:52:06 +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
X-Inumbo-ID: 4117b88e-70f3-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=desiato.20200630; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=oOd4742xrV3Y0XOyAJZySn8cRLGpoNriHOlI9x39KS0=; b=YbTCMRd7hoqOTnIQMmaut6SKcP
	hqjRUOF9WHCogZj8TTzREvSMciRu/pS4D+ZFAsDqpL2Tn6+e4+eSO4y/iE57Roq06Hzm9KU4YXvQ6
	LPQ/D2iTkR5F+NfJfnJYfdMsDcBvvbJE4JYbLyCO7Bdr+BfUoYG8GiVOe/we0qZtLgZLmJkTbWxDk
	IqF/aZ92jUpOzOX03KVXmNpCy4SHjP/7lFm/mxv8uLPE9IxNSJJyZ3AcB7Dt9XY+kNXlLFrpNuttr
	v2ObvLfImy1Dru3PDM3/7/Fs8jitvY4M8YMzFmUh5pRxRNuII47bf4cB8Ac02Uhe0Kj7zQy7u8fLr
	C5+/kwrA==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Richard Henderson <richard.henderson@linaro.org>,
	Beniamino Galvani <b.galvani@gmail.com>,
	Peter Maydell <peter.maydell@linaro.org>,
	Strahinja Jankovic <strahinja.p.jankovic@gmail.com>,
	Niek Linnenbank <nieklinnenbank@gmail.com>,
	=?UTF-8?q?C=C3=A9dric=20Le=20Goater?= <clg@kaod.org>,
	Andrew Jeffery <andrew@aj.id.au>,
	Joel Stanley <joel@jms.id.au>,
	Igor Mitsyanko <i.mitsyanko@gmail.com>,
	Jean-Christophe Dubois <jcd@tribudubois.net>,
	Andrey Smirnov <andrew.smirnov@gmail.com>,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
	Rob Herring <robh@kernel.org>,
	Subbaraya Sundeep <sundeep.lkml@gmail.com>,
	Jan Kiszka <jan.kiszka@web.de>,
	Tyrone Ting <kfting@nuvoton.com>,
	Hao Wu <wuhaotsh@google.com>,
	Radoslaw Biernacki <rad@semihalf.com>,
	Leif Lindholm <quic_llindhol@quicinc.com>,
	Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>,
	"Edgar E. Iglesias" <edgar.iglesias@gmail.com>,
	Alistair Francis <alistair@alistair23.me>,
	Helge Deller <deller@gmx.de>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Eduardo Habkost <eduardo@habkost.net>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Song Gao <gaosong@loongson.cn>,
	Thomas Huth <huth@tuxfamily.org>,
	Laurent Vivier <laurent@vivier.eu>,
	Huacai Chen <chenhuacai@kernel.org>,
	Jiaxun Yang <jiaxun.yang@flygoat.com>,
	=?UTF-8?q?Herv=C3=A9=20Poussineau?= <hpoussin@reactos.org>,
	Aleksandar Rikalo <aleksandar.rikalo@syrmia.com>,
	Aurelien Jarno <aurelien@aurel32.net>,
	Jason Wang <jasowang@redhat.com>,
	Jia Liu <proljc@gmail.com>,
	Stafford Horne <shorne@gmail.com>,
	Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>,
	Nicholas Piggin <npiggin@gmail.com>,
	Daniel Henrique Barboza <danielhb413@gmail.com>,
	David Gibson <david@gibson.dropbear.id.au>,
	Harsh Prateek Bora <harshpb@linux.ibm.com>,
	Bin Meng <bin.meng@windriver.com>,
	Palmer Dabbelt <palmer@dabbelt.com>,
	Weiwei Li <liweiwei@iscas.ac.cn>,
	Liu Zhiwei <zhiwei_liu@linux.alibaba.com>,
	David Hildenbrand <david@redhat.com>,
	Ilya Leoshkevich <iii@linux.ibm.com>,
	Halil Pasic <pasic@linux.ibm.com>,
	Christian Borntraeger <borntraeger@linux.ibm.com>,
	Eric Farman <farman@linux.ibm.com>,
	Yoshinori Sato <ysato@users.sourceforge.jp>,
	Magnus Damm <magnus.damm@gmail.com>,
	Artyom Tarasenko <atar4qemu@gmail.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	Max Filippov <jcmvbkbc@gmail.com>,
	qemu-arm@nongnu.org,
	qemu-ppc@nongnu.org,
	qemu-riscv@nongnu.org,
	qemu-s390x@nongnu.org,
	xen-devel@lists.xenproject.org
Subject: [PATCH 16/45] hw/ppc/spapr: use qemu_get_nic_info() and pci_init_nic_devices()
Date: Sun, 22 Oct 2023 16:51:31 +0100
Message-Id: <20231022155200.436340-17-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231022155200.436340-1-dwmw2@infradead.org>
References: <20231022155200.436340-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by desiato.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

Avoid directly referencing nd_table[] by first instantiating any
spapr-vlan devices using a qemu_get_nic_info() loop, then calling
pci_init_nic_devices() to do the rest.

No functional change intended.

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 hw/ppc/spapr.c | 18 +++++-------------
 1 file changed, 5 insertions(+), 13 deletions(-)

diff --git a/hw/ppc/spapr.c b/hw/ppc/spapr.c
index cb840676d3..7db6c6641a 100644
--- a/hw/ppc/spapr.c
+++ b/hw/ppc/spapr.c
@@ -2775,6 +2775,7 @@ static void spapr_machine_init(MachineState *machine)
     MemoryRegion *sysmem = get_system_memory();
     long load_limit, fw_size;
     Error *resize_hpt_err = NULL;
+    NICInfo *nd;
 
     if (!filename) {
         error_report("Could not find LPAR firmware '%s'", bios_name);
@@ -2982,21 +2983,12 @@ static void spapr_machine_init(MachineState *machine)
 
     phb = spapr_create_default_phb();
 
-    for (i = 0; i < nb_nics; i++) {
-        NICInfo *nd = &nd_table[i];
-
-        if (!nd->model) {
-            nd->model = g_strdup("spapr-vlan");
-        }
-
-        if (g_str_equal(nd->model, "spapr-vlan") ||
-            g_str_equal(nd->model, "ibmveth")) {
-            spapr_vlan_create(spapr->vio_bus, nd);
-        } else {
-            pci_nic_init_nofail(&nd_table[i], phb->bus, nd->model, NULL);
-        }
+    while ((nd = qemu_get_nic_info("spapr-vlan", true, "ibmveth"))) {
+        spapr_vlan_create(spapr->vio_bus, nd);
     }
 
+    pci_init_nic_devices(phb->bus, NULL);
+
     for (i = 0; i <= drive_get_max_bus(IF_SCSI); i++) {
         spapr_vscsi_create(spapr->vio_bus);
     }
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Sun Oct 22 16:08:08 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 22 Oct 2023 16:08:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.620743.966570 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quazo-0001iu-ID; Sun, 22 Oct 2023 16:08:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 620743.966570; Sun, 22 Oct 2023 16:08: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 1quazo-0001hv-AW; Sun, 22 Oct 2023 16:08:08 +0000
Received: by outflank-mailman (input) for mailman id 620743;
 Sun, 22 Oct 2023 16:08: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=RY1I=GE=desiato.srs.infradead.org=BATV+fd6248c3715d1825373b+7364+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1quama-0006wY-Nc
 for xen-devel@lists.xenproject.org; Sun, 22 Oct 2023 15:54:28 +0000
Received: from desiato.infradead.org (desiato.infradead.org
 [2001:8b0:10b:1:d65d:64ff:fe57:4e05])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 441ce548-70f3-11ee-98d5-6d05b1d4d9a1;
 Sun, 22 Oct 2023 17:54:22 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by desiato.infradead.org with esmtpsa (Exim 4.96 #2 (Red Hat Linux))
 id 1quakK-00DCmx-2q; Sun, 22 Oct 2023 15:52:30 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1quakJ-001qa9-1a; Sun, 22 Oct 2023 16:52:07 +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
X-Inumbo-ID: 441ce548-70f3-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=desiato.20200630; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=c0xx8TE45H7mqNibBdaKqXZz525uhIFbtBrVwQI6/yE=; b=mzt9/M2tO54FWw2MlPjMC+HeN0
	WfmOcNbA9opj8a0JF8uKEDYRY42oUrs9TeoSwMM3kTCW9sh6+/z0peT3bxYnMKENHh6yCfGCdmz4n
	NR/UwvI2zHAMNeAefZxbihdGHZz7tef6l0wfM7JBuQk2AzbXmyObz25qh3c2EYL4DLREs5TWxRqWk
	8pJKExjCH50+duuqU6AxmcWmYkpO8/OUVm0YyQrH73mzL8UqZpCo05m5vv+ejjvUw7YS/X8jsvyMf
	W7jW/BKVYlmPlTRpS8UVZqnVnTaUzZuGSH6/HzcsEIMNN5mchYLrJv1isqsny3dsOdGUD4zqj3UIo
	iXnaUfjg==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Richard Henderson <richard.henderson@linaro.org>,
	Beniamino Galvani <b.galvani@gmail.com>,
	Peter Maydell <peter.maydell@linaro.org>,
	Strahinja Jankovic <strahinja.p.jankovic@gmail.com>,
	Niek Linnenbank <nieklinnenbank@gmail.com>,
	=?UTF-8?q?C=C3=A9dric=20Le=20Goater?= <clg@kaod.org>,
	Andrew Jeffery <andrew@aj.id.au>,
	Joel Stanley <joel@jms.id.au>,
	Igor Mitsyanko <i.mitsyanko@gmail.com>,
	Jean-Christophe Dubois <jcd@tribudubois.net>,
	Andrey Smirnov <andrew.smirnov@gmail.com>,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
	Rob Herring <robh@kernel.org>,
	Subbaraya Sundeep <sundeep.lkml@gmail.com>,
	Jan Kiszka <jan.kiszka@web.de>,
	Tyrone Ting <kfting@nuvoton.com>,
	Hao Wu <wuhaotsh@google.com>,
	Radoslaw Biernacki <rad@semihalf.com>,
	Leif Lindholm <quic_llindhol@quicinc.com>,
	Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>,
	"Edgar E. Iglesias" <edgar.iglesias@gmail.com>,
	Alistair Francis <alistair@alistair23.me>,
	Helge Deller <deller@gmx.de>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Eduardo Habkost <eduardo@habkost.net>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Song Gao <gaosong@loongson.cn>,
	Thomas Huth <huth@tuxfamily.org>,
	Laurent Vivier <laurent@vivier.eu>,
	Huacai Chen <chenhuacai@kernel.org>,
	Jiaxun Yang <jiaxun.yang@flygoat.com>,
	=?UTF-8?q?Herv=C3=A9=20Poussineau?= <hpoussin@reactos.org>,
	Aleksandar Rikalo <aleksandar.rikalo@syrmia.com>,
	Aurelien Jarno <aurelien@aurel32.net>,
	Jason Wang <jasowang@redhat.com>,
	Jia Liu <proljc@gmail.com>,
	Stafford Horne <shorne@gmail.com>,
	Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>,
	Nicholas Piggin <npiggin@gmail.com>,
	Daniel Henrique Barboza <danielhb413@gmail.com>,
	David Gibson <david@gibson.dropbear.id.au>,
	Harsh Prateek Bora <harshpb@linux.ibm.com>,
	Bin Meng <bin.meng@windriver.com>,
	Palmer Dabbelt <palmer@dabbelt.com>,
	Weiwei Li <liweiwei@iscas.ac.cn>,
	Liu Zhiwei <zhiwei_liu@linux.alibaba.com>,
	David Hildenbrand <david@redhat.com>,
	Ilya Leoshkevich <iii@linux.ibm.com>,
	Halil Pasic <pasic@linux.ibm.com>,
	Christian Borntraeger <borntraeger@linux.ibm.com>,
	Eric Farman <farman@linux.ibm.com>,
	Yoshinori Sato <ysato@users.sourceforge.jp>,
	Magnus Damm <magnus.damm@gmail.com>,
	Artyom Tarasenko <atar4qemu@gmail.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	Max Filippov <jcmvbkbc@gmail.com>,
	qemu-arm@nongnu.org,
	qemu-ppc@nongnu.org,
	qemu-riscv@nongnu.org,
	qemu-s390x@nongnu.org,
	xen-devel@lists.xenproject.org
Subject: [PATCH 28/45] hw/arm/npcm7xx: use qemu_configure_nic_device, allow emc0/emc1 as aliases
Date: Sun, 22 Oct 2023 16:51:43 +0100
Message-Id: <20231022155200.436340-29-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231022155200.436340-1-dwmw2@infradead.org>
References: <20231022155200.436340-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by desiato.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

Also update the test to specify which device to attach the test socket
to, and remove the comment lamenting the fact that we can't do so.

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 hw/arm/npcm7xx.c               | 16 +++++++++-------
 tests/qtest/npcm7xx_emc-test.c | 18 ++++--------------
 2 files changed, 13 insertions(+), 21 deletions(-)

diff --git a/hw/arm/npcm7xx.c b/hw/arm/npcm7xx.c
index 15ff21d047..7124547b50 100644
--- a/hw/arm/npcm7xx.c
+++ b/hw/arm/npcm7xx.c
@@ -655,8 +655,9 @@ static void npcm7xx_realize(DeviceState *dev, Error **errp)
 
     /*
      * EMC Modules. Cannot fail.
-     * The mapping of the device to its netdev backend works as follows:
-     * emc[i] = nd_table[i]
+     * Use the available NIC configurations in order, allowing 'emc0' and
+     * 'emc1' to by used as aliases for the model= parameter to override.
+     *
      * This works around the inability to specify the netdev property for the
      * emc device: it's not pluggable and thus the -device option can't be
      * used.
@@ -664,12 +665,13 @@ static void npcm7xx_realize(DeviceState *dev, Error **errp)
     QEMU_BUILD_BUG_ON(ARRAY_SIZE(npcm7xx_emc_addr) != ARRAY_SIZE(s->emc));
     QEMU_BUILD_BUG_ON(ARRAY_SIZE(s->emc) != 2);
     for (i = 0; i < ARRAY_SIZE(s->emc); i++) {
-        s->emc[i].emc_num = i;
         SysBusDevice *sbd = SYS_BUS_DEVICE(&s->emc[i]);
-        if (nd_table[i].used) {
-            qemu_check_nic_model(&nd_table[i], TYPE_NPCM7XX_EMC);
-            qdev_set_nic_properties(DEVICE(sbd), &nd_table[i]);
-        }
+        char alias[6];
+
+        s->emc[i].emc_num = i;
+        snprintf(alias, sizeof(alias), "%u", i);
+        qemu_configure_nic_device(DEVICE(sbd), true, alias);
+
         /*
          * The device exists regardless of whether it's connected to a QEMU
          * netdev backend. So always instantiate it even if there is no
diff --git a/tests/qtest/npcm7xx_emc-test.c b/tests/qtest/npcm7xx_emc-test.c
index b046f1d76a..506f6980d4 100644
--- a/tests/qtest/npcm7xx_emc-test.c
+++ b/tests/qtest/npcm7xx_emc-test.c
@@ -225,21 +225,11 @@ static int *packet_test_init(int module_num, GString *cmd_line)
     g_assert_cmpint(ret, != , -1);
 
     /*
-     * KISS and use -nic. We specify two nics (both emc{0,1}) because there's
-     * currently no way to specify only emc1: The driver implicitly relies on
-     * emc[i] == nd_table[i].
+     * KISS and use -nic. The driver accepts 'emc0' and 'emc1' as aliases
+     * in the 'model' field to specify the device to match.
      */
-    if (module_num == 0) {
-        g_string_append_printf(cmd_line,
-                               " -nic socket,fd=%d,model=" TYPE_NPCM7XX_EMC " "
-                               " -nic user,model=" TYPE_NPCM7XX_EMC " ",
-                               test_sockets[1]);
-    } else {
-        g_string_append_printf(cmd_line,
-                               " -nic user,model=" TYPE_NPCM7XX_EMC " "
-                               " -nic socket,fd=%d,model=" TYPE_NPCM7XX_EMC " ",
-                               test_sockets[1]);
-    }
+    g_string_append_printf(cmd_line, " -nic socket,fd=%d,model=emc%d "
+                           test_sockets[1], module_num);
 
     g_test_queue_destroy(packet_test_clear, test_sockets);
     return test_sockets;
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Sun Oct 22 16:08:09 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 22 Oct 2023 16:08:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.620745.966583 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quazp-0002AE-Q9; Sun, 22 Oct 2023 16:08:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 620745.966583; Sun, 22 Oct 2023 16:08: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 1quazp-00028H-KO; Sun, 22 Oct 2023 16:08:09 +0000
Received: by outflank-mailman (input) for mailman id 620745;
 Sun, 22 Oct 2023 16:08: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=RY1I=GE=desiato.srs.infradead.org=BATV+fd6248c3715d1825373b+7364+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1quaml-0007Cq-Rx
 for xen-devel@lists.xenproject.org; Sun, 22 Oct 2023 15:54:39 +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 4c990420-70f3-11ee-9b0e-b553b5be7939;
 Sun, 22 Oct 2023 17:54:36 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by desiato.infradead.org with esmtpsa (Exim 4.96 #2 (Red Hat Linux))
 id 1quakJ-00DCmv-23; Sun, 22 Oct 2023 15:53:21 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1quakJ-001qZn-0G; Sun, 22 Oct 2023 16:52:07 +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
X-Inumbo-ID: 4c990420-70f3-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=desiato.20200630; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=CbpypJM+7758idssLucgHt3d8KaEsPzws7dfN1MFAeI=; b=M688D+yehinlotRUrOat5KbGKy
	829STlbnnKEdhJPqlWBv6O7k1rVZ6XbZ0SV6ItGgSuuyDDCNBoxxb90RS8KfDTw+U8H55dYB5CWa/
	gDsXJhKbrkwfZ4qgGvP7+cXJy0mouWaWRhCAeA7uEWDPTFK9NSijkMiQzVuhAiXPmcKBMS6Npii6p
	DvMqXidNsPhCXAmAsU0WjR5V5HvmERdy9W5lO3kpqniMx6wtF8JX2cNYTa1DKXX8b/5KmeoZSfgSF
	sfWE1FTZXFYXCWvNPnZnkCqUFWeD3+BJ7YiQ1OvWCCtsAk1DTAMWzFffrJr/rwO2KXL8AMJPIxWRN
	Mi9NQvTQ==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Richard Henderson <richard.henderson@linaro.org>,
	Beniamino Galvani <b.galvani@gmail.com>,
	Peter Maydell <peter.maydell@linaro.org>,
	Strahinja Jankovic <strahinja.p.jankovic@gmail.com>,
	Niek Linnenbank <nieklinnenbank@gmail.com>,
	=?UTF-8?q?C=C3=A9dric=20Le=20Goater?= <clg@kaod.org>,
	Andrew Jeffery <andrew@aj.id.au>,
	Joel Stanley <joel@jms.id.au>,
	Igor Mitsyanko <i.mitsyanko@gmail.com>,
	Jean-Christophe Dubois <jcd@tribudubois.net>,
	Andrey Smirnov <andrew.smirnov@gmail.com>,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
	Rob Herring <robh@kernel.org>,
	Subbaraya Sundeep <sundeep.lkml@gmail.com>,
	Jan Kiszka <jan.kiszka@web.de>,
	Tyrone Ting <kfting@nuvoton.com>,
	Hao Wu <wuhaotsh@google.com>,
	Radoslaw Biernacki <rad@semihalf.com>,
	Leif Lindholm <quic_llindhol@quicinc.com>,
	Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>,
	"Edgar E. Iglesias" <edgar.iglesias@gmail.com>,
	Alistair Francis <alistair@alistair23.me>,
	Helge Deller <deller@gmx.de>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Eduardo Habkost <eduardo@habkost.net>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Song Gao <gaosong@loongson.cn>,
	Thomas Huth <huth@tuxfamily.org>,
	Laurent Vivier <laurent@vivier.eu>,
	Huacai Chen <chenhuacai@kernel.org>,
	Jiaxun Yang <jiaxun.yang@flygoat.com>,
	=?UTF-8?q?Herv=C3=A9=20Poussineau?= <hpoussin@reactos.org>,
	Aleksandar Rikalo <aleksandar.rikalo@syrmia.com>,
	Aurelien Jarno <aurelien@aurel32.net>,
	Jason Wang <jasowang@redhat.com>,
	Jia Liu <proljc@gmail.com>,
	Stafford Horne <shorne@gmail.com>,
	Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>,
	Nicholas Piggin <npiggin@gmail.com>,
	Daniel Henrique Barboza <danielhb413@gmail.com>,
	David Gibson <david@gibson.dropbear.id.au>,
	Harsh Prateek Bora <harshpb@linux.ibm.com>,
	Bin Meng <bin.meng@windriver.com>,
	Palmer Dabbelt <palmer@dabbelt.com>,
	Weiwei Li <liweiwei@iscas.ac.cn>,
	Liu Zhiwei <zhiwei_liu@linux.alibaba.com>,
	David Hildenbrand <david@redhat.com>,
	Ilya Leoshkevich <iii@linux.ibm.com>,
	Halil Pasic <pasic@linux.ibm.com>,
	Christian Borntraeger <borntraeger@linux.ibm.com>,
	Eric Farman <farman@linux.ibm.com>,
	Yoshinori Sato <ysato@users.sourceforge.jp>,
	Magnus Damm <magnus.damm@gmail.com>,
	Artyom Tarasenko <atar4qemu@gmail.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	Max Filippov <jcmvbkbc@gmail.com>,
	qemu-arm@nongnu.org,
	qemu-ppc@nongnu.org,
	qemu-riscv@nongnu.org,
	qemu-s390x@nongnu.org,
	xen-devel@lists.xenproject.org
Subject: [PATCH 23/45] hw/arm/exynos4: use qemu_create_nic_device()
Date: Sun, 22 Oct 2023 16:51:38 +0100
Message-Id: <20231022155200.436340-24-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231022155200.436340-1-dwmw2@infradead.org>
References: <20231022155200.436340-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by desiato.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 hw/arm/exynos4_boards.c | 6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

diff --git a/hw/arm/exynos4_boards.c b/hw/arm/exynos4_boards.c
index ef5bcbc212..b804357e2a 100644
--- a/hw/arm/exynos4_boards.c
+++ b/hw/arm/exynos4_boards.c
@@ -76,10 +76,8 @@ static void lan9215_init(uint32_t base, qemu_irq irq)
     SysBusDevice *s;
 
     /* This should be a 9215 but the 9118 is close enough */
-    if (nd_table[0].used) {
-        qemu_check_nic_model(&nd_table[0], "lan9118");
-        dev = qdev_new(TYPE_LAN9118);
-        qdev_set_nic_properties(dev, &nd_table[0]);
+    dev = qemu_create_nic_device(TYPE_LAN9118, true, NULL);
+    if (dev) {
         qdev_prop_set_uint32(dev, "mode_16bit", 1);
         s = SYS_BUS_DEVICE(dev);
         sysbus_realize_and_unref(s, &error_fatal);
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Sun Oct 22 16:08:21 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 22 Oct 2023 16:08:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.620752.966594 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qub01-0003Hf-3X; Sun, 22 Oct 2023 16:08:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 620752.966594; Sun, 22 Oct 2023 16:08: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 1qub00-0003HN-W9; Sun, 22 Oct 2023 16:08:21 +0000
Received: by outflank-mailman (input) for mailman id 620752;
 Sun, 22 Oct 2023 16:08: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=RY1I=GE=desiato.srs.infradead.org=BATV+fd6248c3715d1825373b+7364+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1quamr-0007Cq-9h
 for xen-devel@lists.xenproject.org; Sun, 22 Oct 2023 15:54:45 +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 50632c94-70f3-11ee-9b0e-b553b5be7939;
 Sun, 22 Oct 2023 17:54:42 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by desiato.infradead.org with esmtpsa (Exim 4.96 #2 (Red Hat Linux))
 id 1quakI-00DCmm-0U; Sun, 22 Oct 2023 15:53:23 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1quakH-001qYt-1s; Sun, 22 Oct 2023 16:52:05 +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
X-Inumbo-ID: 50632c94-70f3-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=desiato.20200630; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=GvZd+mCmu6NeCRzPCg8aufDD7tl83G6RcEOJSEC8eMQ=; b=C9RQBDaLCN/hUGMgMuuERfefi6
	Wnmx6kPEVaAqcY/910QB2Iuqp/dlofXdmNWxnJhRfWKVg5AeIW1pFajvtYPRs0cGkVTFYxL48B6qf
	oI6Db4U8ZZhHAaOMI4ZLqaN7bAPPEH6rZUFjVyGp+sBTdppM42m4vlqdQQ/f7+4/Nr85PsIAghKtb
	YcfPpOvfKU9J7dboi9h3a8EA7ldlMem44fYg2U5Pjw2sMMQ9xVkGKP761OB2X4XCrOmrDSRG387xP
	dbIgMUHhwu15mLmK919753XxuZzf3fpGSUAv3vLGcx7HGD4FzF6XjTTP6ZE03iyhWCOKYQkmNBoKS
	TbxcbEpQ==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Richard Henderson <richard.henderson@linaro.org>,
	Beniamino Galvani <b.galvani@gmail.com>,
	Peter Maydell <peter.maydell@linaro.org>,
	Strahinja Jankovic <strahinja.p.jankovic@gmail.com>,
	Niek Linnenbank <nieklinnenbank@gmail.com>,
	=?UTF-8?q?C=C3=A9dric=20Le=20Goater?= <clg@kaod.org>,
	Andrew Jeffery <andrew@aj.id.au>,
	Joel Stanley <joel@jms.id.au>,
	Igor Mitsyanko <i.mitsyanko@gmail.com>,
	Jean-Christophe Dubois <jcd@tribudubois.net>,
	Andrey Smirnov <andrew.smirnov@gmail.com>,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
	Rob Herring <robh@kernel.org>,
	Subbaraya Sundeep <sundeep.lkml@gmail.com>,
	Jan Kiszka <jan.kiszka@web.de>,
	Tyrone Ting <kfting@nuvoton.com>,
	Hao Wu <wuhaotsh@google.com>,
	Radoslaw Biernacki <rad@semihalf.com>,
	Leif Lindholm <quic_llindhol@quicinc.com>,
	Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>,
	"Edgar E. Iglesias" <edgar.iglesias@gmail.com>,
	Alistair Francis <alistair@alistair23.me>,
	Helge Deller <deller@gmx.de>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Eduardo Habkost <eduardo@habkost.net>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Song Gao <gaosong@loongson.cn>,
	Thomas Huth <huth@tuxfamily.org>,
	Laurent Vivier <laurent@vivier.eu>,
	Huacai Chen <chenhuacai@kernel.org>,
	Jiaxun Yang <jiaxun.yang@flygoat.com>,
	=?UTF-8?q?Herv=C3=A9=20Poussineau?= <hpoussin@reactos.org>,
	Aleksandar Rikalo <aleksandar.rikalo@syrmia.com>,
	Aurelien Jarno <aurelien@aurel32.net>,
	Jason Wang <jasowang@redhat.com>,
	Jia Liu <proljc@gmail.com>,
	Stafford Horne <shorne@gmail.com>,
	Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>,
	Nicholas Piggin <npiggin@gmail.com>,
	Daniel Henrique Barboza <danielhb413@gmail.com>,
	David Gibson <david@gibson.dropbear.id.au>,
	Harsh Prateek Bora <harshpb@linux.ibm.com>,
	Bin Meng <bin.meng@windriver.com>,
	Palmer Dabbelt <palmer@dabbelt.com>,
	Weiwei Li <liweiwei@iscas.ac.cn>,
	Liu Zhiwei <zhiwei_liu@linux.alibaba.com>,
	David Hildenbrand <david@redhat.com>,
	Ilya Leoshkevich <iii@linux.ibm.com>,
	Halil Pasic <pasic@linux.ibm.com>,
	Christian Borntraeger <borntraeger@linux.ibm.com>,
	Eric Farman <farman@linux.ibm.com>,
	Yoshinori Sato <ysato@users.sourceforge.jp>,
	Magnus Damm <magnus.damm@gmail.com>,
	Artyom Tarasenko <atar4qemu@gmail.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	Max Filippov <jcmvbkbc@gmail.com>,
	qemu-arm@nongnu.org,
	qemu-ppc@nongnu.org,
	qemu-riscv@nongnu.org,
	qemu-s390x@nongnu.org,
	xen-devel@lists.xenproject.org
Subject: [PATCH 10/45] hw/hppa: use pci_init_nic_devices()
Date: Sun, 22 Oct 2023 16:51:25 +0100
Message-Id: <20231022155200.436340-11-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231022155200.436340-1-dwmw2@infradead.org>
References: <20231022155200.436340-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by desiato.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 hw/hppa/machine.c | 6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

diff --git a/hw/hppa/machine.c b/hw/hppa/machine.c
index cf28cb9586..97d9b44c4f 100644
--- a/hw/hppa/machine.c
+++ b/hw/hppa/machine.c
@@ -272,10 +272,8 @@ static void machine_hppa_init(MachineState *machine)
                         qdev_get_gpio_in(lasi_dev, LASI_IRQ_LAN_HPA));
     }
 
-    for (i = 0; i < nb_nics; i++) {
-        if (!enable_lasi_lan()) {
-            pci_nic_init_nofail(&nd_table[i], pci_bus, mc->default_nic, NULL);
-        }
+    if (!enable_lasi_lan()) {
+        pci_init_nic_devices(pci_bus, mc->default_nic);
     }
 
     /* PS/2 Keyboard/Mouse */
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Sun Oct 22 16:08:38 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 22 Oct 2023 16:08:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.620758.966604 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qub0E-0004RJ-Nq; Sun, 22 Oct 2023 16:08:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 620758.966604; Sun, 22 Oct 2023 16:08: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 1qub0E-0004R8-Je; Sun, 22 Oct 2023 16:08:34 +0000
Received: by outflank-mailman (input) for mailman id 620758;
 Sun, 22 Oct 2023 16:08: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=RY1I=GE=desiato.srs.infradead.org=BATV+fd6248c3715d1825373b+7364+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1quamk-0007Cq-Rp
 for xen-devel@lists.xenproject.org; Sun, 22 Oct 2023 15:54:38 +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 4c7c9cde-70f3-11ee-9b0e-b553b5be7939;
 Sun, 22 Oct 2023 17:54:36 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by desiato.infradead.org with esmtpsa (Exim 4.96 #2 (Red Hat Linux))
 id 1quakI-00DCmh-0V; Sun, 22 Oct 2023 15:52:51 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1quakG-001qYN-2W; Sun, 22 Oct 2023 16:52:04 +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
X-Inumbo-ID: 4c7c9cde-70f3-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=desiato.20200630; h=Sender:Content-Transfer-Encoding:
	Content-Type:MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:
	To:From:Reply-To:Content-ID:Content-Description;
	bh=gAqi4IHvyxyTJg+N0Ik5PY/rM2q46ZCGuyPvahYwG5k=; b=cRbRpczYlxtrJ0EMdutYGeIBIl
	3V4CpMaDhfBqINOapf2F/gKHf+PgU3iwVQeTm5lVX9xNdGoH8TYMteH/nQcGNcNI3BcKh+CWUiWpL
	LbtNiAJsgwEHdMVmuNmfyuyVAP7f0W7JkbsxhMiWqH4q+bbsarvrWtE9jVRGnI/EHRbx/G70Etxbw
	CZ30nG0gPXyVMUtzmvYFCv0b3+Z/+jCGDk7YmUkeRkcus/I/rRzABdQ4ucyfQQTqz6/rNkXeSHqbM
	Nlndu5rdkCTQv6mErcA0WRVLKeTqjLVQkMDovzpLxKNVo2R0CpNPRyZH7ke5ogJ7cesaOLN3L/iWq
	6Ar0Y1oA==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Richard Henderson <richard.henderson@linaro.org>,
	Beniamino Galvani <b.galvani@gmail.com>,
	Peter Maydell <peter.maydell@linaro.org>,
	Strahinja Jankovic <strahinja.p.jankovic@gmail.com>,
	Niek Linnenbank <nieklinnenbank@gmail.com>,
	=?UTF-8?q?C=C3=A9dric=20Le=20Goater?= <clg@kaod.org>,
	Andrew Jeffery <andrew@aj.id.au>,
	Joel Stanley <joel@jms.id.au>,
	Igor Mitsyanko <i.mitsyanko@gmail.com>,
	Jean-Christophe Dubois <jcd@tribudubois.net>,
	Andrey Smirnov <andrew.smirnov@gmail.com>,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
	Rob Herring <robh@kernel.org>,
	Subbaraya Sundeep <sundeep.lkml@gmail.com>,
	Jan Kiszka <jan.kiszka@web.de>,
	Tyrone Ting <kfting@nuvoton.com>,
	Hao Wu <wuhaotsh@google.com>,
	Radoslaw Biernacki <rad@semihalf.com>,
	Leif Lindholm <quic_llindhol@quicinc.com>,
	Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>,
	"Edgar E. Iglesias" <edgar.iglesias@gmail.com>,
	Alistair Francis <alistair@alistair23.me>,
	Helge Deller <deller@gmx.de>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Eduardo Habkost <eduardo@habkost.net>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Song Gao <gaosong@loongson.cn>,
	Thomas Huth <huth@tuxfamily.org>,
	Laurent Vivier <laurent@vivier.eu>,
	Huacai Chen <chenhuacai@kernel.org>,
	Jiaxun Yang <jiaxun.yang@flygoat.com>,
	=?UTF-8?q?Herv=C3=A9=20Poussineau?= <hpoussin@reactos.org>,
	Aleksandar Rikalo <aleksandar.rikalo@syrmia.com>,
	Aurelien Jarno <aurelien@aurel32.net>,
	Jason Wang <jasowang@redhat.com>,
	Jia Liu <proljc@gmail.com>,
	Stafford Horne <shorne@gmail.com>,
	Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>,
	Nicholas Piggin <npiggin@gmail.com>,
	Daniel Henrique Barboza <danielhb413@gmail.com>,
	David Gibson <david@gibson.dropbear.id.au>,
	Harsh Prateek Bora <harshpb@linux.ibm.com>,
	Bin Meng <bin.meng@windriver.com>,
	Palmer Dabbelt <palmer@dabbelt.com>,
	Weiwei Li <liweiwei@iscas.ac.cn>,
	Liu Zhiwei <zhiwei_liu@linux.alibaba.com>,
	David Hildenbrand <david@redhat.com>,
	Ilya Leoshkevich <iii@linux.ibm.com>,
	Halil Pasic <pasic@linux.ibm.com>,
	Christian Borntraeger <borntraeger@linux.ibm.com>,
	Eric Farman <farman@linux.ibm.com>,
	Yoshinori Sato <ysato@users.sourceforge.jp>,
	Magnus Damm <magnus.damm@gmail.com>,
	Artyom Tarasenko <atar4qemu@gmail.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	Max Filippov <jcmvbkbc@gmail.com>,
	qemu-arm@nongnu.org,
	qemu-ppc@nongnu.org,
	qemu-riscv@nongnu.org,
	qemu-s390x@nongnu.org,
	xen-devel@lists.xenproject.org
Subject: [PATCH 03/45] net: add qemu_create_nic_bus_devices()
Date: Sun, 22 Oct 2023 16:51:18 +0100
Message-Id: <20231022155200.436340-4-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231022155200.436340-1-dwmw2@infradead.org>
References: <20231022155200.436340-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by desiato.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

This will instantiate any NICs which live on a given bus type. Each bus
is allowed *one* substitution (for PCI it's virtio → virtio-net-pci, for
Xen it's xen → xen-net-device; no point in overengineering it unless we
actually want more).

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 include/net/net.h |  3 +++
 net/net.c         | 53 +++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 56 insertions(+)

diff --git a/include/net/net.h b/include/net/net.h
index 56be694c75..ce830a47d0 100644
--- a/include/net/net.h
+++ b/include/net/net.h
@@ -211,6 +211,9 @@ bool qemu_configure_nic_device(DeviceState *dev, bool match_default,
                                const char *alias);
 DeviceState *qemu_create_nic_device(const char *typename, bool match_default,
                                     const char *alias);
+void qemu_create_nic_bus_devices(BusState *bus, const char *parent_type,
+                                 const char *default_model,
+                                 const char *alias, const char *alias_target);
 void print_net_client(Monitor *mon, NetClientState *nc);
 void net_socket_rs_init(SocketReadState *rs,
                         SocketReadStateFinalize *finalize,
diff --git a/net/net.c b/net/net.c
index 6e20f9d2e9..23fd716b98 100644
--- a/net/net.c
+++ b/net/net.c
@@ -1207,6 +1207,59 @@ DeviceState *qemu_create_nic_device(const char *typename, bool match_default,
     return dev;
 }
 
+void qemu_create_nic_bus_devices(BusState *bus, const char *parent_type,
+                                 const char *default_model,
+                                 const char *alias, const char *alias_target)
+{
+    GPtrArray *nic_models = qemu_get_nic_models(parent_type);
+    const char *model;
+    DeviceState *dev;
+    NICInfo *nd;
+    int i;
+
+    if (nic_model_help) {
+        if (alias_target) {
+            add_nic_model_help(alias_target, alias);
+        }
+        for (i = 0; i < nic_models->len - 1; i++) {
+            add_nic_model_help(nic_models->pdata[i], NULL);
+        }
+    }
+
+    /* Drop the NULL terminator which would make g_str_equal() unhappy */
+    nic_models->len--;
+
+    for (i = 0; i < nb_nics; i++) {
+        nd = &nd_table[i];
+
+        if (!nd->used || nd->instantiated) {
+            continue;
+        }
+
+        model = nd->model ? nd->model : default_model;
+        if (!model) {
+            continue;
+        }
+
+        /* Each bus type is allowed *one* substitution */
+        if (g_str_equal(model, alias)) {
+            model = alias_target;
+        }
+
+        if (!g_ptr_array_find_with_equal_func(nic_models, model,
+                                              g_str_equal, NULL)) {
+            /* This NIC does not live on this bus. */
+            continue;
+        }
+
+        dev = qdev_new(model);
+        qdev_set_nic_properties(dev, nd);
+        qdev_realize_and_unref(dev, bus, &error_fatal);
+    }
+
+    g_ptr_array_free(nic_models, true);
+}
+
 static int (* const net_client_init_fun[NET_CLIENT_DRIVER__MAX])(
     const Netdev *netdev,
     const char *name,
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Sun Oct 22 16:08:43 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 22 Oct 2023 16:08:43 +0000
Received: from list by lists.xenproject.org with outflank-mailman.620760.966614 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qub0N-00050e-07; Sun, 22 Oct 2023 16:08:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 620760.966614; Sun, 22 Oct 2023 16:08: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 1qub0M-00050X-S2; Sun, 22 Oct 2023 16:08:42 +0000
Received: by outflank-mailman (input) for mailman id 620760;
 Sun, 22 Oct 2023 16:08: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=RY1I=GE=desiato.srs.infradead.org=BATV+fd6248c3715d1825373b+7364+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1quamf-0006wY-Oi
 for xen-devel@lists.xenproject.org; Sun, 22 Oct 2023 15:54:33 +0000
Received: from desiato.infradead.org (desiato.infradead.org
 [2001:8b0:10b:1:d65d:64ff:fe57:4e05])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 47ec7c89-70f3-11ee-98d5-6d05b1d4d9a1;
 Sun, 22 Oct 2023 17:54:28 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by desiato.infradead.org with esmtpsa (Exim 4.96 #2 (Red Hat Linux))
 id 1quakM-00DCn3-0R; Sun, 22 Oct 2023 15:52:34 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1quakK-001qb8-2W; Sun, 22 Oct 2023 16:52:08 +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
X-Inumbo-ID: 47ec7c89-70f3-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=desiato.20200630; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=aSG9ptzFZSzDP3PLBh4znK+L7SNawIVOSjaK/AVfxuM=; b=aHFO4AqkbJUOCpJgaMXo89wubf
	1RzpIUsLumuIgIJyV7SxT3fuvmHTKYBy5cEbCN5Aht/xc+qvQ8yliL3IjJSMn6aphQJ/o2/0M9wSU
	J0G/UyJ1U9resQCjKRosAIaBtIf72KFquG3Dd03PPPpAbNSNWAPKG2klfUBgSeCD+Xj0oH24U9niC
	4b6dyxZ60enQu0h3w6QhRMMaWVb11hWjixu+wWqrWxRTc+95KBjZNbMxpMSSlWhyATnTMN1aZkYdP
	jVXbVRLrFJfZlnDLqFVgercQAUWwxhsQUTyiV0UHjetAhrIKFsZVIBEhPXB19+rq+6Jy3X0ZnWxoh
	mDtqIJiw==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Richard Henderson <richard.henderson@linaro.org>,
	Beniamino Galvani <b.galvani@gmail.com>,
	Peter Maydell <peter.maydell@linaro.org>,
	Strahinja Jankovic <strahinja.p.jankovic@gmail.com>,
	Niek Linnenbank <nieklinnenbank@gmail.com>,
	=?UTF-8?q?C=C3=A9dric=20Le=20Goater?= <clg@kaod.org>,
	Andrew Jeffery <andrew@aj.id.au>,
	Joel Stanley <joel@jms.id.au>,
	Igor Mitsyanko <i.mitsyanko@gmail.com>,
	Jean-Christophe Dubois <jcd@tribudubois.net>,
	Andrey Smirnov <andrew.smirnov@gmail.com>,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
	Rob Herring <robh@kernel.org>,
	Subbaraya Sundeep <sundeep.lkml@gmail.com>,
	Jan Kiszka <jan.kiszka@web.de>,
	Tyrone Ting <kfting@nuvoton.com>,
	Hao Wu <wuhaotsh@google.com>,
	Radoslaw Biernacki <rad@semihalf.com>,
	Leif Lindholm <quic_llindhol@quicinc.com>,
	Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>,
	"Edgar E. Iglesias" <edgar.iglesias@gmail.com>,
	Alistair Francis <alistair@alistair23.me>,
	Helge Deller <deller@gmx.de>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Eduardo Habkost <eduardo@habkost.net>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Song Gao <gaosong@loongson.cn>,
	Thomas Huth <huth@tuxfamily.org>,
	Laurent Vivier <laurent@vivier.eu>,
	Huacai Chen <chenhuacai@kernel.org>,
	Jiaxun Yang <jiaxun.yang@flygoat.com>,
	=?UTF-8?q?Herv=C3=A9=20Poussineau?= <hpoussin@reactos.org>,
	Aleksandar Rikalo <aleksandar.rikalo@syrmia.com>,
	Aurelien Jarno <aurelien@aurel32.net>,
	Jason Wang <jasowang@redhat.com>,
	Jia Liu <proljc@gmail.com>,
	Stafford Horne <shorne@gmail.com>,
	Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>,
	Nicholas Piggin <npiggin@gmail.com>,
	Daniel Henrique Barboza <danielhb413@gmail.com>,
	David Gibson <david@gibson.dropbear.id.au>,
	Harsh Prateek Bora <harshpb@linux.ibm.com>,
	Bin Meng <bin.meng@windriver.com>,
	Palmer Dabbelt <palmer@dabbelt.com>,
	Weiwei Li <liweiwei@iscas.ac.cn>,
	Liu Zhiwei <zhiwei_liu@linux.alibaba.com>,
	David Hildenbrand <david@redhat.com>,
	Ilya Leoshkevich <iii@linux.ibm.com>,
	Halil Pasic <pasic@linux.ibm.com>,
	Christian Borntraeger <borntraeger@linux.ibm.com>,
	Eric Farman <farman@linux.ibm.com>,
	Yoshinori Sato <ysato@users.sourceforge.jp>,
	Magnus Damm <magnus.damm@gmail.com>,
	Artyom Tarasenko <atar4qemu@gmail.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	Max Filippov <jcmvbkbc@gmail.com>,
	qemu-arm@nongnu.org,
	qemu-ppc@nongnu.org,
	qemu-riscv@nongnu.org,
	qemu-s390x@nongnu.org,
	xen-devel@lists.xenproject.org
Subject: [PATCH 41/45] hw/xtensa/xtfpga: use qemu_create_nic_device()
Date: Sun, 22 Oct 2023 16:51:56 +0100
Message-Id: <20231022155200.436340-42-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231022155200.436340-1-dwmw2@infradead.org>
References: <20231022155200.436340-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by desiato.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 hw/xtensa/xtfpga.c | 11 +++++------
 1 file changed, 5 insertions(+), 6 deletions(-)

diff --git a/hw/xtensa/xtfpga.c b/hw/xtensa/xtfpga.c
index fbad1c83a3..519e461354 100644
--- a/hw/xtensa/xtfpga.c
+++ b/hw/xtensa/xtfpga.c
@@ -147,8 +147,10 @@ static void xtfpga_net_init(MemoryRegion *address_space,
     SysBusDevice *s;
     MemoryRegion *ram;
 
-    dev = qdev_new("open_eth");
-    qdev_set_nic_properties(dev, nd);
+    dev = qemu_create_nic_device("open_eth", true, NULL);
+    if (!dev) {
+        return;
+    }
 
     s = SYS_BUS_DEVICE(dev);
     sysbus_realize_and_unref(s, &error_fatal);
@@ -301,10 +303,7 @@ static void xtfpga_init(const XtfpgaBoardDesc *board, MachineState *machine)
         memory_region_add_subregion(system_memory, board->io[1], io);
     }
     xtfpga_fpga_init(system_io, 0x0d020000, freq);
-    if (nd_table[0].used) {
-        xtfpga_net_init(system_io, 0x0d030000, 0x0d030400, 0x0d800000,
-                        extints[1], nd_table);
-    }
+    xtfpga_net_init(system_io, 0x0d030000, 0x0d030400, 0x0d800000, extints[1]);
 
     serial_mm_init(system_io, 0x0d050020, 2, extints[0],
                    115200, serial_hd(0), DEVICE_NATIVE_ENDIAN);
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Sun Oct 22 16:08:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 22 Oct 2023 16:08:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.620762.966624 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qub0W-0005b1-8y; Sun, 22 Oct 2023 16:08:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 620762.966624; Sun, 22 Oct 2023 16:08: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 1qub0W-0005ao-5L; Sun, 22 Oct 2023 16:08:52 +0000
Received: by outflank-mailman (input) for mailman id 620762;
 Sun, 22 Oct 2023 16: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=RY1I=GE=desiato.srs.infradead.org=BATV+fd6248c3715d1825373b+7364+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1quamZ-0006wY-Nq
 for xen-devel@lists.xenproject.org; Sun, 22 Oct 2023 15:54:27 +0000
Received: from desiato.infradead.org (desiato.infradead.org
 [2001:8b0:10b:1:d65d:64ff:fe57:4e05])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 442bdb58-70f3-11ee-98d5-6d05b1d4d9a1;
 Sun, 22 Oct 2023 17:54:22 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by desiato.infradead.org with esmtpsa (Exim 4.96 #2 (Red Hat Linux))
 id 1quakM-00DCn4-0T; Sun, 22 Oct 2023 15:52:45 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1quakK-001qbC-2o; Sun, 22 Oct 2023 16:52:08 +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
X-Inumbo-ID: 442bdb58-70f3-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=desiato.20200630; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=/KV5xc8ak7d927pW3t3hEXy6twlojUhYJ0gN2lThj4E=; b=oyW5eAI003UeBkAr+yC7rq09K7
	7y1lq3JJAioHCDKQTcIYp0Ny5pfKA+SAsJ4fbs77gN794kSYsDTCEnRKq//zLly/7iGHJbLHRpJgl
	ooRofotv85kQedNJoBIa8sJnGoqd8PF5a2OoUTM3ZkOQulGrUAMmyX0O5z1hclEM0H3FtMCdZHcJV
	AX0npxWvaw06n9ALcITEe+Jm0XB4ETUvSziTHMe6lEcJIK3+29k4EyHYkUUSu07DcYG5z9i++lToD
	QoEH4xS7YXHQweg23iH42dbRUqyRzEJD9bUc0GouG/pk5yJpKm/hrQvbxxoh14vXn1jb0m0znXQFb
	WWG83MNQ==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Richard Henderson <richard.henderson@linaro.org>,
	Beniamino Galvani <b.galvani@gmail.com>,
	Peter Maydell <peter.maydell@linaro.org>,
	Strahinja Jankovic <strahinja.p.jankovic@gmail.com>,
	Niek Linnenbank <nieklinnenbank@gmail.com>,
	=?UTF-8?q?C=C3=A9dric=20Le=20Goater?= <clg@kaod.org>,
	Andrew Jeffery <andrew@aj.id.au>,
	Joel Stanley <joel@jms.id.au>,
	Igor Mitsyanko <i.mitsyanko@gmail.com>,
	Jean-Christophe Dubois <jcd@tribudubois.net>,
	Andrey Smirnov <andrew.smirnov@gmail.com>,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
	Rob Herring <robh@kernel.org>,
	Subbaraya Sundeep <sundeep.lkml@gmail.com>,
	Jan Kiszka <jan.kiszka@web.de>,
	Tyrone Ting <kfting@nuvoton.com>,
	Hao Wu <wuhaotsh@google.com>,
	Radoslaw Biernacki <rad@semihalf.com>,
	Leif Lindholm <quic_llindhol@quicinc.com>,
	Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>,
	"Edgar E. Iglesias" <edgar.iglesias@gmail.com>,
	Alistair Francis <alistair@alistair23.me>,
	Helge Deller <deller@gmx.de>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Eduardo Habkost <eduardo@habkost.net>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Song Gao <gaosong@loongson.cn>,
	Thomas Huth <huth@tuxfamily.org>,
	Laurent Vivier <laurent@vivier.eu>,
	Huacai Chen <chenhuacai@kernel.org>,
	Jiaxun Yang <jiaxun.yang@flygoat.com>,
	=?UTF-8?q?Herv=C3=A9=20Poussineau?= <hpoussin@reactos.org>,
	Aleksandar Rikalo <aleksandar.rikalo@syrmia.com>,
	Aurelien Jarno <aurelien@aurel32.net>,
	Jason Wang <jasowang@redhat.com>,
	Jia Liu <proljc@gmail.com>,
	Stafford Horne <shorne@gmail.com>,
	Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>,
	Nicholas Piggin <npiggin@gmail.com>,
	Daniel Henrique Barboza <danielhb413@gmail.com>,
	David Gibson <david@gibson.dropbear.id.au>,
	Harsh Prateek Bora <harshpb@linux.ibm.com>,
	Bin Meng <bin.meng@windriver.com>,
	Palmer Dabbelt <palmer@dabbelt.com>,
	Weiwei Li <liweiwei@iscas.ac.cn>,
	Liu Zhiwei <zhiwei_liu@linux.alibaba.com>,
	David Hildenbrand <david@redhat.com>,
	Ilya Leoshkevich <iii@linux.ibm.com>,
	Halil Pasic <pasic@linux.ibm.com>,
	Christian Borntraeger <borntraeger@linux.ibm.com>,
	Eric Farman <farman@linux.ibm.com>,
	Yoshinori Sato <ysato@users.sourceforge.jp>,
	Magnus Damm <magnus.damm@gmail.com>,
	Artyom Tarasenko <atar4qemu@gmail.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	Max Filippov <jcmvbkbc@gmail.com>,
	qemu-arm@nongnu.org,
	qemu-ppc@nongnu.org,
	qemu-riscv@nongnu.org,
	qemu-s390x@nongnu.org,
	xen-devel@lists.xenproject.org
Subject: [PATCH 42/45] net: remove qemu_check_nic_model()
Date: Sun, 22 Oct 2023 16:51:57 +0100
Message-Id: <20231022155200.436340-43-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231022155200.436340-1-dwmw2@infradead.org>
References: <20231022155200.436340-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by desiato.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 include/net/net.h |  1 -
 net/net.c         | 13 -------------
 2 files changed, 14 deletions(-)

diff --git a/include/net/net.h b/include/net/net.h
index ce830a47d0..1512650190 100644
--- a/include/net/net.h
+++ b/include/net/net.h
@@ -202,7 +202,6 @@ int qemu_set_vnet_le(NetClientState *nc, bool is_le);
 int qemu_set_vnet_be(NetClientState *nc, bool is_be);
 void qemu_macaddr_default_if_unset(MACAddr *macaddr);
 int qemu_show_nic_models(const char *arg, const char *const *models);
-void qemu_check_nic_model(NICInfo *nd, const char *model);
 int qemu_find_nic_model(NICInfo *nd, const char * const *models,
                         const char *default_model);
 NICInfo *qemu_find_nic_info(const char *typename, bool match_default,
diff --git a/net/net.c b/net/net.c
index 23fd716b98..bdb31dcb27 100644
--- a/net/net.c
+++ b/net/net.c
@@ -977,19 +977,6 @@ int qemu_show_nic_models(const char *arg, const char *const *models)
     return 1;
 }
 
-void qemu_check_nic_model(NICInfo *nd, const char *model)
-{
-    const char *models[2];
-
-    models[0] = model;
-    models[1] = NULL;
-
-    if (qemu_show_nic_models(nd->model, models))
-        exit(0);
-    if (qemu_find_nic_model(nd, models, model) < 0)
-        exit(1);
-}
-
 int qemu_find_nic_model(NICInfo *nd, const char * const *models,
                         const char *default_model)
 {
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Sun Oct 22 16:09:12 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 22 Oct 2023 16:09:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.620766.966633 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qub0q-0006eB-H9; Sun, 22 Oct 2023 16:09:12 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 620766.966633; Sun, 22 Oct 2023 16:09: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 1qub0q-0006e4-Ea; Sun, 22 Oct 2023 16:09:12 +0000
Received: by outflank-mailman (input) for mailman id 620766;
 Sun, 22 Oct 2023 16:09: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=RY1I=GE=desiato.srs.infradead.org=BATV+fd6248c3715d1825373b+7364+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1quamt-0007Cq-5E
 for xen-devel@lists.xenproject.org; Sun, 22 Oct 2023 15:54:47 +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 51950ecf-70f3-11ee-9b0e-b553b5be7939;
 Sun, 22 Oct 2023 17:54:44 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by desiato.infradead.org with esmtpsa (Exim 4.96 #2 (Red Hat Linux))
 id 1quakI-00DCmo-0W; Sun, 22 Oct 2023 15:53:37 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1quakH-001qYx-2E; Sun, 22 Oct 2023 16:52:05 +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
X-Inumbo-ID: 51950ecf-70f3-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=desiato.20200630; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=s5Drx3xmEDJsRgRm38xyzsjLMjErO3gIacS5Ec67mBM=; b=jLxyMvlZFjPUMy/yrbuF+IwxBG
	YtISwVrFJbUvbkSa3ufHdry3ipr9jZv57ple8ejXshc1TqK6KeBgk1tn33pf/iMonjdGNXRBMLLbW
	QsXQ+RpGB2rID7pvfOOAzJkzDneCM5MJnNRW8KAr3tukpCPzMeYItvpF+RHDPzVhsWc9d3cxtZr0S
	niBPLOdLkUz7EtozjFMkXQy6dMi8ZQNDCmCYYQr4QNyjzokbyxMrb7tTVBpBDpIGF/zaTF9rDrXOZ
	lzK2vahVAdLaUXOligmlBDb4Seqg6tQG60vyFAqHR8VCDeN2voi4H4qlN+o4/DdSHN2E0kCxF9smY
	J1evSALg==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Richard Henderson <richard.henderson@linaro.org>,
	Beniamino Galvani <b.galvani@gmail.com>,
	Peter Maydell <peter.maydell@linaro.org>,
	Strahinja Jankovic <strahinja.p.jankovic@gmail.com>,
	Niek Linnenbank <nieklinnenbank@gmail.com>,
	=?UTF-8?q?C=C3=A9dric=20Le=20Goater?= <clg@kaod.org>,
	Andrew Jeffery <andrew@aj.id.au>,
	Joel Stanley <joel@jms.id.au>,
	Igor Mitsyanko <i.mitsyanko@gmail.com>,
	Jean-Christophe Dubois <jcd@tribudubois.net>,
	Andrey Smirnov <andrew.smirnov@gmail.com>,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
	Rob Herring <robh@kernel.org>,
	Subbaraya Sundeep <sundeep.lkml@gmail.com>,
	Jan Kiszka <jan.kiszka@web.de>,
	Tyrone Ting <kfting@nuvoton.com>,
	Hao Wu <wuhaotsh@google.com>,
	Radoslaw Biernacki <rad@semihalf.com>,
	Leif Lindholm <quic_llindhol@quicinc.com>,
	Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>,
	"Edgar E. Iglesias" <edgar.iglesias@gmail.com>,
	Alistair Francis <alistair@alistair23.me>,
	Helge Deller <deller@gmx.de>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Eduardo Habkost <eduardo@habkost.net>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Song Gao <gaosong@loongson.cn>,
	Thomas Huth <huth@tuxfamily.org>,
	Laurent Vivier <laurent@vivier.eu>,
	Huacai Chen <chenhuacai@kernel.org>,
	Jiaxun Yang <jiaxun.yang@flygoat.com>,
	=?UTF-8?q?Herv=C3=A9=20Poussineau?= <hpoussin@reactos.org>,
	Aleksandar Rikalo <aleksandar.rikalo@syrmia.com>,
	Aurelien Jarno <aurelien@aurel32.net>,
	Jason Wang <jasowang@redhat.com>,
	Jia Liu <proljc@gmail.com>,
	Stafford Horne <shorne@gmail.com>,
	Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>,
	Nicholas Piggin <npiggin@gmail.com>,
	Daniel Henrique Barboza <danielhb413@gmail.com>,
	David Gibson <david@gibson.dropbear.id.au>,
	Harsh Prateek Bora <harshpb@linux.ibm.com>,
	Bin Meng <bin.meng@windriver.com>,
	Palmer Dabbelt <palmer@dabbelt.com>,
	Weiwei Li <liweiwei@iscas.ac.cn>,
	Liu Zhiwei <zhiwei_liu@linux.alibaba.com>,
	David Hildenbrand <david@redhat.com>,
	Ilya Leoshkevich <iii@linux.ibm.com>,
	Halil Pasic <pasic@linux.ibm.com>,
	Christian Borntraeger <borntraeger@linux.ibm.com>,
	Eric Farman <farman@linux.ibm.com>,
	Yoshinori Sato <ysato@users.sourceforge.jp>,
	Magnus Damm <magnus.damm@gmail.com>,
	Artyom Tarasenko <atar4qemu@gmail.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	Max Filippov <jcmvbkbc@gmail.com>,
	qemu-arm@nongnu.org,
	qemu-ppc@nongnu.org,
	qemu-riscv@nongnu.org,
	qemu-s390x@nongnu.org,
	xen-devel@lists.xenproject.org
Subject: [PATCH 11/45] hw/loongarch: use pci_init_nic_devices()
Date: Sun, 22 Oct 2023 16:51:26 +0100
Message-Id: <20231022155200.436340-12-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231022155200.436340-1-dwmw2@infradead.org>
References: <20231022155200.436340-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by desiato.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 hw/loongarch/virt.c | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

diff --git a/hw/loongarch/virt.c b/hw/loongarch/virt.c
index 2952fe452e..9905e525b1 100644
--- a/hw/loongarch/virt.c
+++ b/hw/loongarch/virt.c
@@ -504,9 +504,7 @@ static void loongarch_devices_init(DeviceState *pch_pic, LoongArchMachineState *
     fdt_add_uart_node(lams);
 
     /* Network init */
-    for (i = 0; i < nb_nics; i++) {
-        pci_nic_init_nofail(&nd_table[i], pci_bus, mc->default_nic, NULL);
-    }
+    pci_init_nic_devices(pci_bus, mc->default_nic);
 
     /*
      * There are some invalid guest memory access.
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Sun Oct 22 16:09:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 22 Oct 2023 16:09:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.620770.966644 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qub1Q-0007XV-Qt; Sun, 22 Oct 2023 16:09:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 620770.966644; Sun, 22 Oct 2023 16:09: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 1qub1Q-0007XO-Na; Sun, 22 Oct 2023 16:09:48 +0000
Received: by outflank-mailman (input) for mailman id 620770;
 Sun, 22 Oct 2023 16:09: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=RY1I=GE=desiato.srs.infradead.org=BATV+fd6248c3715d1825373b+7364+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1quamc-0006wY-Ny
 for xen-devel@lists.xenproject.org; Sun, 22 Oct 2023 15:54:30 +0000
Received: from desiato.infradead.org (desiato.infradead.org
 [2001:8b0:10b:1:d65d:64ff:fe57:4e05])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 449c59a1-70f3-11ee-98d5-6d05b1d4d9a1;
 Sun, 22 Oct 2023 17:54:22 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by desiato.infradead.org with esmtpsa (Exim 4.96 #2 (Red Hat Linux))
 id 1quakI-00DCmj-0W; Sun, 22 Oct 2023 15:52:12 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1quakH-001qYZ-0P; Sun, 22 Oct 2023 16:52:05 +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
X-Inumbo-ID: 449c59a1-70f3-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=desiato.20200630; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=yNOslSLwNSZBz1nMauOOhKrz2V+jkfbo6C3leUlOjxc=; b=qCMQkmcTP7rb3M8bOB3UFupqpN
	tRwB+ghhJpyaQEmzOaJeQ1dP79XOqNqfg0huvnM7ow26NKfUXmic5uKS+/YvO1tMolo5yzgObmLCe
	VSAxjdAx6YUb1w+luQhfAGo52Qa30yqlc/KjeDetNpVw7yDkMLkTnPPGGqA+dNakoE0/p0tl5guOj
	sEHBTY1HtLImAXCpdZes3hwZufPdxn/8j/L/aNB473sTCrZ8PsusFl6VzzPK18uP40liO0Vz/bLSM
	47MDpU1FqJMgoKghkaCkt79j62+opUuK6BHsyvJDBldhDjBzU6XdYrg3OvhQAsIERmrgeXFMw6oSx
	i+qkp3/Q==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Richard Henderson <richard.henderson@linaro.org>,
	Beniamino Galvani <b.galvani@gmail.com>,
	Peter Maydell <peter.maydell@linaro.org>,
	Strahinja Jankovic <strahinja.p.jankovic@gmail.com>,
	Niek Linnenbank <nieklinnenbank@gmail.com>,
	=?UTF-8?q?C=C3=A9dric=20Le=20Goater?= <clg@kaod.org>,
	Andrew Jeffery <andrew@aj.id.au>,
	Joel Stanley <joel@jms.id.au>,
	Igor Mitsyanko <i.mitsyanko@gmail.com>,
	Jean-Christophe Dubois <jcd@tribudubois.net>,
	Andrey Smirnov <andrew.smirnov@gmail.com>,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
	Rob Herring <robh@kernel.org>,
	Subbaraya Sundeep <sundeep.lkml@gmail.com>,
	Jan Kiszka <jan.kiszka@web.de>,
	Tyrone Ting <kfting@nuvoton.com>,
	Hao Wu <wuhaotsh@google.com>,
	Radoslaw Biernacki <rad@semihalf.com>,
	Leif Lindholm <quic_llindhol@quicinc.com>,
	Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>,
	"Edgar E. Iglesias" <edgar.iglesias@gmail.com>,
	Alistair Francis <alistair@alistair23.me>,
	Helge Deller <deller@gmx.de>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Eduardo Habkost <eduardo@habkost.net>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Song Gao <gaosong@loongson.cn>,
	Thomas Huth <huth@tuxfamily.org>,
	Laurent Vivier <laurent@vivier.eu>,
	Huacai Chen <chenhuacai@kernel.org>,
	Jiaxun Yang <jiaxun.yang@flygoat.com>,
	=?UTF-8?q?Herv=C3=A9=20Poussineau?= <hpoussin@reactos.org>,
	Aleksandar Rikalo <aleksandar.rikalo@syrmia.com>,
	Aurelien Jarno <aurelien@aurel32.net>,
	Jason Wang <jasowang@redhat.com>,
	Jia Liu <proljc@gmail.com>,
	Stafford Horne <shorne@gmail.com>,
	Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>,
	Nicholas Piggin <npiggin@gmail.com>,
	Daniel Henrique Barboza <danielhb413@gmail.com>,
	David Gibson <david@gibson.dropbear.id.au>,
	Harsh Prateek Bora <harshpb@linux.ibm.com>,
	Bin Meng <bin.meng@windriver.com>,
	Palmer Dabbelt <palmer@dabbelt.com>,
	Weiwei Li <liweiwei@iscas.ac.cn>,
	Liu Zhiwei <zhiwei_liu@linux.alibaba.com>,
	David Hildenbrand <david@redhat.com>,
	Ilya Leoshkevich <iii@linux.ibm.com>,
	Halil Pasic <pasic@linux.ibm.com>,
	Christian Borntraeger <borntraeger@linux.ibm.com>,
	Eric Farman <farman@linux.ibm.com>,
	Yoshinori Sato <ysato@users.sourceforge.jp>,
	Magnus Damm <magnus.damm@gmail.com>,
	Artyom Tarasenko <atar4qemu@gmail.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	Max Filippov <jcmvbkbc@gmail.com>,
	qemu-arm@nongnu.org,
	qemu-ppc@nongnu.org,
	qemu-riscv@nongnu.org,
	qemu-s390x@nongnu.org,
	xen-devel@lists.xenproject.org
Subject: [PATCH 06/45] hw/xen: use qemu_create_nic_bus_devices() to instantiate Xen NICs
Date: Sun, 22 Oct 2023 16:51:21 +0100
Message-Id: <20231022155200.436340-7-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231022155200.436340-1-dwmw2@infradead.org>
References: <20231022155200.436340-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by desiato.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

When instantiating XenBus itself, for each NIC which is configured with
either the model unspecified, or set to to "xen" or "xen-net-device",
create a corresponding xen-net-device for it.

Now we can launch emulated Xen guests with '-nic user', and this fixes
the setup for Xen PV guests, which was previously broken in various
ways and never actually managed to peer with the netdev.

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 hw/xen/xen-bus.c                    |  4 ++++
 hw/xen/xen_devconfig.c              | 25 -------------------------
 hw/xenpv/xen_machine_pv.c           |  9 ---------
 include/hw/xen/xen-legacy-backend.h |  1 -
 4 files changed, 4 insertions(+), 35 deletions(-)

diff --git a/hw/xen/xen-bus.c b/hw/xen/xen-bus.c
index 0da2aa219a..194c1b7311 100644
--- a/hw/xen/xen-bus.c
+++ b/hw/xen/xen-bus.c
@@ -19,6 +19,7 @@
 #include "qapi/error.h"
 #include "qapi/qmp/qdict.h"
 #include "sysemu/sysemu.h"
+#include "net/net.h"
 #include "trace.h"
 
 static char *xen_device_get_backend_path(XenDevice *xendev)
@@ -1134,4 +1135,7 @@ void xen_bus_init(void)
 
     sysbus_realize_and_unref(SYS_BUS_DEVICE(dev), &error_fatal);
     qbus_set_bus_hotplug_handler(bus);
+
+    qemu_create_nic_bus_devices(bus, TYPE_XEN_DEVICE, "xen-net-device",
+                                "xen", "xen-net-device");
 }
diff --git a/hw/xen/xen_devconfig.c b/hw/xen/xen_devconfig.c
index 3f77c675c6..2150869f60 100644
--- a/hw/xen/xen_devconfig.c
+++ b/hw/xen/xen_devconfig.c
@@ -46,31 +46,6 @@ static int xen_config_dev_all(char *fe, char *be)
 
 /* ------------------------------------------------------------- */
 
-int xen_config_dev_nic(NICInfo *nic)
-{
-    char fe[256], be[256];
-    char mac[20];
-    int vlan_id = -1;
-
-    net_hub_id_for_client(nic->netdev, &vlan_id);
-    snprintf(mac, sizeof(mac), "%02x:%02x:%02x:%02x:%02x:%02x",
-             nic->macaddr.a[0], nic->macaddr.a[1], nic->macaddr.a[2],
-             nic->macaddr.a[3], nic->macaddr.a[4], nic->macaddr.a[5]);
-    xen_pv_printf(NULL, 1, "config nic %d: mac=\"%s\"\n", vlan_id, mac);
-    xen_config_dev_dirs("vif", "qnic", vlan_id, fe, be, sizeof(fe));
-
-    /* frontend */
-    xenstore_write_int(fe, "handle",     vlan_id);
-    xenstore_write_str(fe, "mac",        mac);
-
-    /* backend */
-    xenstore_write_int(be, "handle",     vlan_id);
-    xenstore_write_str(be, "mac",        mac);
-
-    /* common stuff */
-    return xen_config_dev_all(fe, be);
-}
-
 int xen_config_dev_vfb(int vdev, const char *type)
 {
     char fe[256], be[256];
diff --git a/hw/xenpv/xen_machine_pv.c b/hw/xenpv/xen_machine_pv.c
index 9f9f137f99..1130d1a147 100644
--- a/hw/xenpv/xen_machine_pv.c
+++ b/hw/xenpv/xen_machine_pv.c
@@ -32,8 +32,6 @@
 
 static void xen_init_pv(MachineState *machine)
 {
-    int i;
-
     setup_xen_backend_ops();
 
     /* Initialize backend core & drivers */
@@ -62,13 +60,6 @@ static void xen_init_pv(MachineState *machine)
         vga_interface_created = true;
     }
 
-    /* configure nics */
-    for (i = 0; i < nb_nics; i++) {
-        if (!nd_table[i].model || 0 != strcmp(nd_table[i].model, "xen"))
-            continue;
-        xen_config_dev_nic(nd_table + i);
-    }
-
     xen_bus_init();
 
     /* config cleanup hook */
diff --git a/include/hw/xen/xen-legacy-backend.h b/include/hw/xen/xen-legacy-backend.h
index fc42146bc2..2cca174778 100644
--- a/include/hw/xen/xen-legacy-backend.h
+++ b/include/hw/xen/xen-legacy-backend.h
@@ -81,7 +81,6 @@ extern struct XenDevOps xen_usb_ops;          /* xen-usb.c         */
 
 /* configuration (aka xenbus setup) */
 void xen_config_cleanup(void);
-int xen_config_dev_nic(NICInfo *nic);
 int xen_config_dev_vfb(int vdev, const char *type);
 int xen_config_dev_vkbd(int vdev);
 int xen_config_dev_console(int vdev);
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Sun Oct 22 16:10:58 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 22 Oct 2023 16:10:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.620788.966654 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qub2W-0000ue-9z; Sun, 22 Oct 2023 16:10:56 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 620788.966654; Sun, 22 Oct 2023 16:10: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 1qub2W-0000uX-6B; Sun, 22 Oct 2023 16:10:56 +0000
Received: by outflank-mailman (input) for mailman id 620788;
 Sun, 22 Oct 2023 16:10: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=zZR7=GE=casper.srs.infradead.org=BATV+88d8721f4af1339c2fab+7364+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1quamD-0007Cq-VQ
 for xen-devel@lists.xenproject.org; Sun, 22 Oct 2023 15:54:05 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 38de8c29-70f3-11ee-9b0e-b553b5be7939;
 Sun, 22 Oct 2023 17:54:03 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1quakG-008TGC-UF; Sun, 22 Oct 2023 15:52:04 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1quakG-001qYC-1V; Sun, 22 Oct 2023 16:52:04 +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
X-Inumbo-ID: 38de8c29-70f3-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=Sender:Content-Transfer-Encoding:
	MIME-Version:Message-Id:Date:Subject:Cc:To:From:Reply-To:Content-Type:
	Content-ID:Content-Description:In-Reply-To:References;
	bh=2ozELbKHkKHeNb6bnWRyBsoC9+/E0sXiWudbUWInik4=; b=jcnzNmszPyaB124Gx0UWtLrs3X
	bYojddjEskTFHs6cEv0HtIX9voAJJ6SdYknNtP0aDxdF8+UHaj91KXy3vt+8IOqVlsh0vhdZ4ASc/
	0ugSvkjXXV9s3DKzJXKFPcjbb16VPRejRJ3J8DzSGRLuy0Z/0Q55uEj216c3eA/GHwiMco3MMz3so
	Uar3JBlJG6kopv8j5w+nAqs8vcwmhE+Ku9VDi3DIvl+uUbmTF5mR2/zpM7BgdkfK4OULstoLI4OrN
	By6lz6SgNEE+D5sAtezMpGcB7uqjwXPx7d7w0ofTnxHX9plbhDMMxdiddmE3JE1qQ3YorVYEa3scA
	z5OejpZw==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Richard Henderson <richard.henderson@linaro.org>,
	Beniamino Galvani <b.galvani@gmail.com>,
	Peter Maydell <peter.maydell@linaro.org>,
	Strahinja Jankovic <strahinja.p.jankovic@gmail.com>,
	Niek Linnenbank <nieklinnenbank@gmail.com>,
	=?UTF-8?q?C=C3=A9dric=20Le=20Goater?= <clg@kaod.org>,
	Andrew Jeffery <andrew@aj.id.au>,
	Joel Stanley <joel@jms.id.au>,
	Igor Mitsyanko <i.mitsyanko@gmail.com>,
	Jean-Christophe Dubois <jcd@tribudubois.net>,
	Andrey Smirnov <andrew.smirnov@gmail.com>,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
	Rob Herring <robh@kernel.org>,
	Subbaraya Sundeep <sundeep.lkml@gmail.com>,
	Jan Kiszka <jan.kiszka@web.de>,
	Tyrone Ting <kfting@nuvoton.com>,
	Hao Wu <wuhaotsh@google.com>,
	Radoslaw Biernacki <rad@semihalf.com>,
	Leif Lindholm <quic_llindhol@quicinc.com>,
	Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>,
	"Edgar E. Iglesias" <edgar.iglesias@gmail.com>,
	Alistair Francis <alistair@alistair23.me>,
	Helge Deller <deller@gmx.de>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Eduardo Habkost <eduardo@habkost.net>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Song Gao <gaosong@loongson.cn>,
	Thomas Huth <huth@tuxfamily.org>,
	Laurent Vivier <laurent@vivier.eu>,
	Huacai Chen <chenhuacai@kernel.org>,
	Jiaxun Yang <jiaxun.yang@flygoat.com>,
	=?UTF-8?q?Herv=C3=A9=20Poussineau?= <hpoussin@reactos.org>,
	Aleksandar Rikalo <aleksandar.rikalo@syrmia.com>,
	Aurelien Jarno <aurelien@aurel32.net>,
	Jason Wang <jasowang@redhat.com>,
	Jia Liu <proljc@gmail.com>,
	Stafford Horne <shorne@gmail.com>,
	Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>,
	Nicholas Piggin <npiggin@gmail.com>,
	Daniel Henrique Barboza <danielhb413@gmail.com>,
	David Gibson <david@gibson.dropbear.id.au>,
	Harsh Prateek Bora <harshpb@linux.ibm.com>,
	Bin Meng <bin.meng@windriver.com>,
	Palmer Dabbelt <palmer@dabbelt.com>,
	Weiwei Li <liweiwei@iscas.ac.cn>,
	Liu Zhiwei <zhiwei_liu@linux.alibaba.com>,
	David Hildenbrand <david@redhat.com>,
	Ilya Leoshkevich <iii@linux.ibm.com>,
	Halil Pasic <pasic@linux.ibm.com>,
	Christian Borntraeger <borntraeger@linux.ibm.com>,
	Eric Farman <farman@linux.ibm.com>,
	Yoshinori Sato <ysato@users.sourceforge.jp>,
	Magnus Damm <magnus.damm@gmail.com>,
	Artyom Tarasenko <atar4qemu@gmail.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	Max Filippov <jcmvbkbc@gmail.com>,
	qemu-arm@nongnu.org,
	qemu-ppc@nongnu.org,
	qemu-riscv@nongnu.org,
	qemu-s390x@nongnu.org,
	xen-devel@lists.xenproject.org
Subject: [PATCH 0/45] Rework matching of network devices to -nic options
Date: Sun, 22 Oct 2023 16:51:15 +0100
Message-Id: <20231022155200.436340-1-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html

In https://lore.kernel.org/qemu-devel/20231019154020.99080-20-dwmw2@infradead.org/
I lamented that the default NIC creation seemed fairly hackish but "that
isn't a yak I want to shave today."

Yet here we are...

Most platforms iterating directly over the nd_table[] are doing one of 
two things. Either they are creating the NIC for their platform and want
to find a matching -nic configuration for it, if such exists. Or they
are only going to create that platform NIC if a matching config *does*
exist.

All of those can be converted to the new qemu_configure_nic_device()
and qemu_create_nic_device() functions. The latter of which will call
qdev_new() to create the device (and apply the config) if a matching
NIC config does exist for it. The existing behaviour of each platform
has been preserved for now, despite it being apparently fairly random.

PCI and indeed XenBus can use a qemu_create_nic_bus_devices() which will 
create all NICs that live on a given bus type. That covers most 
platforms, but some PCI platforms do something special with the first 
NIC of a given type, placing it in the slot where it would have been on 
the real hardware. There were various inconsistencies in the way the 
platforms did so, and whether they cared what model the NIC was. Those 
subtle behavioural changes I *have* allowed to change, and now the 
pci_init_nic_slot() function will pick the first NIC that the user 
specified which isn't explicitly *not* the default type, and put that
in  the specified slot.

The tests for npcm7xx used to lament that they had to instantiate both
NICs even when they wanted to test only the second, because there was
no way to specify which hardware devices gets which configuration. I
made that untrue, by allowing 'emc0' and 'emc1' aliases, and fixed up
the test accordingly.

There are one or two special cases which want to do special things with
the MAC address of the primary NIC, to set up a system identification
(or force it to use an Apple OUI, in the case of m68k/q400). All those
work out relatively cleanly too.

And I can ditch the two ugly patches which fixed up the Xen network
device handling, and replace them with a simple call to the new
qemu_create_nic_bus_devices() function.

I suspect that we can remove the pci_init_nic_devices() from platform
code and just do it later, except for platforms which *care* which
PCI bus the dynamic devices go on (is that just sun4u which puts its
primary NIC onto a different bus?).

Finally, while we're at it, clean up -nic model=help to only print
the device models which are actually usable on the given platform
rather than just listing them *all*.

And now we can make nd_table[] and nb_nics static in net/net.c because
nothing else has any business poking at them directly.

David Woodhouse (45):
      net: add qemu_{configure,create}_nic_device(), qemu_find_nic_info()
      net: report list of available models according to platform
      net: add qemu_create_nic_bus_devices()
      hw/pci: add pci_init_nic_devices(), pci_init_nic_in_slot()
      hw/i386/pc: use qemu_get_nic_info() and pci_init_nic_devices()
      hw/xen: use qemu_create_nic_bus_devices() to instantiate Xen NICs
      hw/alpha/dp264: use pci_init_nic_devices()
      hw/arm/sbsa-ref: use pci_init_nic_devices()
      hw/arm/virt: use pci_init_nic_devices()
      hw/hppa: use pci_init_nic_devices()
      hw/loongarch: use pci_init_nic_devices()
      hw/mips/fuloong2e: use pci_init_nic_devices()
      hw/mips/malta: use pci_init_nic_devices()
      hw/mips/loongson3_virt: use pci_init_nic_devices()
      hw/ppc/prep: use pci_init_nic_devices()
      hw/ppc/spapr: use qemu_get_nic_info() and pci_init_nic_devices()
      hw/ppc: use pci_init_nic_devices()
      hw/sh4/r2d: use pci_init_nic_devices()
      hw/sparc64/sun4u: use pci_init_nic_devices()
      hw/xtensa/virt: use pci_init_nic_devices()
      hw/arm/allwinner: use qemu_configure_nic_device()
      hw/arm/aspeed: use qemu_configure_nic_device()
      hw/arm/exynos4: use qemu_create_nic_device()
      hw/arm/fsl: use qemu_configure_nic_device()
      hw/net/smc91c111: use qemu_configure_nic_device()
      hw/net/lan9118: use qemu_configure_nic_device()
      hw/arm/highbank: use qemu_create_nic_device()
      hw/arm/npcm7xx: use qemu_configure_nic_device, allow emc0/emc1 as aliases
      hw/arm/stellaris: use qemu_find_nic_info()
      hw/arm: use qemu_configure_nic_device()
      hw/net/etraxfs-eth: use qemu_configure_nic_device()
      hw/m68k/mcf5208: use qemu_create_nic_device()
      hw/m68k/q800: use qemu_configure_nic_device()
      hw/microblaze: use qemu_configure_nic_device()
      hw/mips: use qemu_create_nic_device()
      hw/net/lasi_i82596: use qemu_configure_nic_device()
      hw/openrisc/openrisc_sim: use qemu_create_nic_device()
      hw/riscv: use qemu_configure_nic_device()
      hw/s390x/s390-virtio-ccw: use qemu_create_nic_device()
      hw/sparc/sun4m: use qemu_configure_nic_device()
      hw/xtensa/xtfpga: use qemu_create_nic_device()
      net: remove qemu_check_nic_model()
      hw/pci: remove pci_nic_init_nofail()
      net: remove qemu_show_nic_models(), qemu_find_nic_model()
      net: make nb_nics and nd_table[] static in net/net.c

 hw/alpha/dp264.c                         |   4 +-
 hw/arm/allwinner-a10.c                   |   6 +-
 hw/arm/allwinner-h3.c                    |   6 +-
 hw/arm/allwinner-r40.c                   |  27 +---
 hw/arm/aspeed.c                          |   9 +-
 hw/arm/exynos4_boards.c                  |   6 +-
 hw/arm/fsl-imx25.c                       |   2 +-
 hw/arm/fsl-imx6.c                        |   2 +-
 hw/arm/fsl-imx6ul.c                      |   2 +-
 hw/arm/fsl-imx7.c                        |   2 +-
 hw/arm/gumstix.c                         |   6 +-
 hw/arm/highbank.c                        |  12 +-
 hw/arm/integratorcp.c                    |   5 +-
 hw/arm/kzm.c                             |   4 +-
 hw/arm/mainstone.c                       |   3 +-
 hw/arm/mps2-tz.c                         |   8 +-
 hw/arm/mps2.c                            |   2 +-
 hw/arm/msf2-soc.c                        |   6 +-
 hw/arm/musicpal.c                        |   3 +-
 hw/arm/npcm7xx.c                         |  16 +-
 hw/arm/realview.c                        |  25 ++-
 hw/arm/sbsa-ref.c                        |   4 +-
 hw/arm/stellaris.c                       |  30 +++-
 hw/arm/versatilepb.c                     |  15 +-
 hw/arm/vexpress.c                        |   4 +-
 hw/arm/virt.c                            |   4 +-
 hw/arm/xilinx_zynq.c                     |  11 +-
 hw/arm/xlnx-versal.c                     |   7 +-
 hw/arm/xlnx-zynqmp.c                     |   8 +-
 hw/cris/axis_dev88.c                     |   9 +-
 hw/hppa/machine.c                        |   6 +-
 hw/i386/pc.c                             |  20 +--
 hw/loongarch/virt.c                      |   4 +-
 hw/m68k/mcf5208.c                        |  20 +--
 hw/m68k/q800.c                           |  28 ++--
 hw/microblaze/petalogix_ml605_mmu.c      |   3 +-
 hw/microblaze/petalogix_s3adsp1800_mmu.c |   3 +-
 hw/mips/fuloong2e.c                      |  16 +-
 hw/mips/jazz.c                           |  16 +-
 hw/mips/loongson3_virt.c                 |   4 +-
 hw/mips/malta.c                          |  15 +-
 hw/mips/mipssim.c                        |  13 +-
 hw/net/etraxfs_eth.c                     |   5 +-
 hw/net/lan9118.c                         |   5 +-
 hw/net/lasi_i82596.c                     |   3 +-
 hw/net/smc91c111.c                       |   5 +-
 hw/openrisc/openrisc_sim.c               |  18 +--
 hw/pci/pci.c                             |  73 +++------
 hw/ppc/e500.c                            |   4 +-
 hw/ppc/mac_newworld.c                    |   4 +-
 hw/ppc/mac_oldworld.c                    |   4 +-
 hw/ppc/ppc440_bamboo.c                   |  13 +-
 hw/ppc/prep.c                            |   7 +-
 hw/ppc/spapr.c                           |  18 +--
 hw/riscv/microchip_pfsoc.c               |  13 +-
 hw/riscv/sifive_u.c                      |   7 +-
 hw/s390x/s390-virtio-ccw.c               |  11 +-
 hw/sh4/r2d.c                             |   6 +-
 hw/sparc/sun4m.c                         |   8 +-
 hw/sparc64/sun4u.c                       |  27 +---
 hw/xen/xen-bus.c                         |   4 +
 hw/xen/xen_devconfig.c                   |  25 ---
 hw/xenpv/xen_machine_pv.c                |   9 --
 hw/xtensa/virt.c                         |   4 +-
 hw/xtensa/xtfpga.c                       |  11 +-
 include/hw/cris/etraxfs.h                |   2 +-
 include/hw/net/lan9118.h                 |   2 +-
 include/hw/net/ne2000-isa.h              |   2 -
 include/hw/net/smc91c111.h               |   2 +-
 include/hw/pci/pci.h                     |   7 +-
 include/hw/xen/xen-legacy-backend.h      |   1 -
 include/net/net.h                        |  18 +--
 net/net.c                                | 252 +++++++++++++++++++++++++------
 system/globals.c                         |   2 -
 tests/qtest/npcm7xx_emc-test.c           |  18 +--
 75 files changed, 455 insertions(+), 531 deletions(-)




From xen-devel-bounces@lists.xenproject.org Sun Oct 22 16:11:06 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 22 Oct 2023 16:11:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.620789.966664 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qub2g-0001G1-HM; Sun, 22 Oct 2023 16:11:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 620789.966664; Sun, 22 Oct 2023 16:11: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 1qub2g-0001Fs-E3; Sun, 22 Oct 2023 16:11:06 +0000
Received: by outflank-mailman (input) for mailman id 620789;
 Sun, 22 Oct 2023 16:11: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=RY1I=GE=desiato.srs.infradead.org=BATV+fd6248c3715d1825373b+7364+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1quamY-0007Cq-TU
 for xen-devel@lists.xenproject.org; Sun, 22 Oct 2023 15:54:26 +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 44290cb1-70f3-11ee-9b0e-b553b5be7939;
 Sun, 22 Oct 2023 17:54:22 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by desiato.infradead.org with esmtpsa (Exim 4.96 #2 (Red Hat Linux))
 id 1quakK-00DCn1-2s; Sun, 22 Oct 2023 15:52:29 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1quakK-001qac-0C; Sun, 22 Oct 2023 16:52:08 +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
X-Inumbo-ID: 44290cb1-70f3-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=desiato.20200630; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=U+6sg4mLN1SbL87FQ6lU5ArebVuIAWz70s1SJZ0up+s=; b=C+1jCv8a2E5NH5EGDgCXnwY2uI
	L87za9N87Dj5WdkL1kX7mBtgJ2qk1muuGfDyjXed1LtX+BLrjSXo8jjwTjH+G1dczB07nFtr3CGVr
	tIiWv0q15BIPEcQmCuNR7PmVGaT18VcgoaEcngDVtZHbohpy7wHJETwaJ+fDn79uFhvDw63w/0t7j
	+IFLd7pimtNUSVrSi6B0p1vO3htbTiPzcjS2xUsruZuqwep/+DVqXHCMYKgTwUvA/f7NEaHA3Nap1
	n2Lqy1WS9hznvu9cKone/O0L3V/0SZJ6r2RIixHJCSCyS5Oiw2/NJAvafSQDg72WLAns//dFir7hV
	cAO5a46w==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Richard Henderson <richard.henderson@linaro.org>,
	Beniamino Galvani <b.galvani@gmail.com>,
	Peter Maydell <peter.maydell@linaro.org>,
	Strahinja Jankovic <strahinja.p.jankovic@gmail.com>,
	Niek Linnenbank <nieklinnenbank@gmail.com>,
	=?UTF-8?q?C=C3=A9dric=20Le=20Goater?= <clg@kaod.org>,
	Andrew Jeffery <andrew@aj.id.au>,
	Joel Stanley <joel@jms.id.au>,
	Igor Mitsyanko <i.mitsyanko@gmail.com>,
	Jean-Christophe Dubois <jcd@tribudubois.net>,
	Andrey Smirnov <andrew.smirnov@gmail.com>,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
	Rob Herring <robh@kernel.org>,
	Subbaraya Sundeep <sundeep.lkml@gmail.com>,
	Jan Kiszka <jan.kiszka@web.de>,
	Tyrone Ting <kfting@nuvoton.com>,
	Hao Wu <wuhaotsh@google.com>,
	Radoslaw Biernacki <rad@semihalf.com>,
	Leif Lindholm <quic_llindhol@quicinc.com>,
	Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>,
	"Edgar E. Iglesias" <edgar.iglesias@gmail.com>,
	Alistair Francis <alistair@alistair23.me>,
	Helge Deller <deller@gmx.de>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Eduardo Habkost <eduardo@habkost.net>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Song Gao <gaosong@loongson.cn>,
	Thomas Huth <huth@tuxfamily.org>,
	Laurent Vivier <laurent@vivier.eu>,
	Huacai Chen <chenhuacai@kernel.org>,
	Jiaxun Yang <jiaxun.yang@flygoat.com>,
	=?UTF-8?q?Herv=C3=A9=20Poussineau?= <hpoussin@reactos.org>,
	Aleksandar Rikalo <aleksandar.rikalo@syrmia.com>,
	Aurelien Jarno <aurelien@aurel32.net>,
	Jason Wang <jasowang@redhat.com>,
	Jia Liu <proljc@gmail.com>,
	Stafford Horne <shorne@gmail.com>,
	Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>,
	Nicholas Piggin <npiggin@gmail.com>,
	Daniel Henrique Barboza <danielhb413@gmail.com>,
	David Gibson <david@gibson.dropbear.id.au>,
	Harsh Prateek Bora <harshpb@linux.ibm.com>,
	Bin Meng <bin.meng@windriver.com>,
	Palmer Dabbelt <palmer@dabbelt.com>,
	Weiwei Li <liweiwei@iscas.ac.cn>,
	Liu Zhiwei <zhiwei_liu@linux.alibaba.com>,
	David Hildenbrand <david@redhat.com>,
	Ilya Leoshkevich <iii@linux.ibm.com>,
	Halil Pasic <pasic@linux.ibm.com>,
	Christian Borntraeger <borntraeger@linux.ibm.com>,
	Eric Farman <farman@linux.ibm.com>,
	Yoshinori Sato <ysato@users.sourceforge.jp>,
	Magnus Damm <magnus.damm@gmail.com>,
	Artyom Tarasenko <atar4qemu@gmail.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	Max Filippov <jcmvbkbc@gmail.com>,
	qemu-arm@nongnu.org,
	qemu-ppc@nongnu.org,
	qemu-riscv@nongnu.org,
	qemu-s390x@nongnu.org,
	xen-devel@lists.xenproject.org
Subject: [PATCH 34/45] hw/microblaze: use qemu_configure_nic_device()
Date: Sun, 22 Oct 2023 16:51:49 +0100
Message-Id: <20231022155200.436340-35-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231022155200.436340-1-dwmw2@infradead.org>
References: <20231022155200.436340-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by desiato.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 hw/microblaze/petalogix_ml605_mmu.c      | 3 +--
 hw/microblaze/petalogix_s3adsp1800_mmu.c | 3 +--
 2 files changed, 2 insertions(+), 4 deletions(-)

diff --git a/hw/microblaze/petalogix_ml605_mmu.c b/hw/microblaze/petalogix_ml605_mmu.c
index fb7889cf67..0f5fabc32e 100644
--- a/hw/microblaze/petalogix_ml605_mmu.c
+++ b/hw/microblaze/petalogix_ml605_mmu.c
@@ -133,7 +133,6 @@ petalogix_ml605_init(MachineState *machine)
     sysbus_connect_irq(SYS_BUS_DEVICE(dev), 0, irq[TIMER_IRQ]);
 
     /* axi ethernet and dma initialization. */
-    qemu_check_nic_model(&nd_table[0], "xlnx.axi-ethernet");
     eth0 = qdev_new("xlnx.axi-ethernet");
     dma = qdev_new("xlnx.axi-dma");
 
@@ -145,7 +144,7 @@ petalogix_ml605_init(MachineState *machine)
                                   "axistream-connected-target", NULL);
     cs = object_property_get_link(OBJECT(dma),
                                   "axistream-control-connected-target", NULL);
-    qdev_set_nic_properties(eth0, &nd_table[0]);
+    qemu_configure_nic_device(eth0, true, NULL);
     qdev_prop_set_uint32(eth0, "rxmem", 0x1000);
     qdev_prop_set_uint32(eth0, "txmem", 0x1000);
     object_property_set_link(OBJECT(eth0), "axistream-connected", ds,
diff --git a/hw/microblaze/petalogix_s3adsp1800_mmu.c b/hw/microblaze/petalogix_s3adsp1800_mmu.c
index 505639c298..dad46bd7f9 100644
--- a/hw/microblaze/petalogix_s3adsp1800_mmu.c
+++ b/hw/microblaze/petalogix_s3adsp1800_mmu.c
@@ -114,9 +114,8 @@ petalogix_s3adsp1800_init(MachineState *machine)
     sysbus_mmio_map(SYS_BUS_DEVICE(dev), 0, TIMER_BASEADDR);
     sysbus_connect_irq(SYS_BUS_DEVICE(dev), 0, irq[TIMER_IRQ]);
 
-    qemu_check_nic_model(&nd_table[0], "xlnx.xps-ethernetlite");
     dev = qdev_new("xlnx.xps-ethernetlite");
-    qdev_set_nic_properties(dev, &nd_table[0]);
+    qemu_configure_nic_device(dev, true, NULL);
     qdev_prop_set_uint32(dev, "tx-ping-pong", 0);
     qdev_prop_set_uint32(dev, "rx-ping-pong", 0);
     sysbus_realize_and_unref(SYS_BUS_DEVICE(dev), &error_fatal);
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Sun Oct 22 16:11:42 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 22 Oct 2023 16:11:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.620796.966674 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qub3F-00027q-Sk; Sun, 22 Oct 2023 16:11:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 620796.966674; Sun, 22 Oct 2023 16: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 1qub3F-00027j-OR; Sun, 22 Oct 2023 16:11:41 +0000
Received: by outflank-mailman (input) for mailman id 620796;
 Sun, 22 Oct 2023 16: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=RY1I=GE=desiato.srs.infradead.org=BATV+fd6248c3715d1825373b+7364+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1quamd-0007Cq-F8
 for xen-devel@lists.xenproject.org; Sun, 22 Oct 2023 15:54:31 +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 483e1329-70f3-11ee-9b0e-b553b5be7939;
 Sun, 22 Oct 2023 17:54:28 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by desiato.infradead.org with esmtpsa (Exim 4.96 #2 (Red Hat Linux))
 id 1quakM-00DCn6-0P; Sun, 22 Oct 2023 15:52:43 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1quakL-001qbT-0K; Sun, 22 Oct 2023 16:52:09 +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
X-Inumbo-ID: 483e1329-70f3-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=desiato.20200630; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=R0yNrkS6frW1oQZmkTvRWBHiXdaYx7yNfr+oe+nR9G0=; b=Yl+NqLLs1Fpsi7bTrer2mD8J7/
	0fK/W746uQD3qH+Al5qXrecLeGkQ6NFVzzPH0iYrDQ2QqiqZQGWEBSwT/k/Ukyhkw2ZW3A5KkzCfw
	kKXFJhRub4AyxX858qHi2hfSmAx4PnTZBqfyU51SpVV34XrZT/m/aFrtrCfPwk+ggYGiDvRnRUWWl
	G7Jht0AI/58jorLgrkrBQ0BVzX+lVDpc11a7+zGDGs/QRGQXQTLQwtAJU+Tp6nfIcoWrv9VytkfYv
	tXFsfbEIpYKgC/bArWMRQzALeF4wamM9OLEZY/jLDkZG/T/f90xV0gy6LqcjDpg/XTPNnx6BPJvvL
	RsAbWdPA==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Richard Henderson <richard.henderson@linaro.org>,
	Beniamino Galvani <b.galvani@gmail.com>,
	Peter Maydell <peter.maydell@linaro.org>,
	Strahinja Jankovic <strahinja.p.jankovic@gmail.com>,
	Niek Linnenbank <nieklinnenbank@gmail.com>,
	=?UTF-8?q?C=C3=A9dric=20Le=20Goater?= <clg@kaod.org>,
	Andrew Jeffery <andrew@aj.id.au>,
	Joel Stanley <joel@jms.id.au>,
	Igor Mitsyanko <i.mitsyanko@gmail.com>,
	Jean-Christophe Dubois <jcd@tribudubois.net>,
	Andrey Smirnov <andrew.smirnov@gmail.com>,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
	Rob Herring <robh@kernel.org>,
	Subbaraya Sundeep <sundeep.lkml@gmail.com>,
	Jan Kiszka <jan.kiszka@web.de>,
	Tyrone Ting <kfting@nuvoton.com>,
	Hao Wu <wuhaotsh@google.com>,
	Radoslaw Biernacki <rad@semihalf.com>,
	Leif Lindholm <quic_llindhol@quicinc.com>,
	Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>,
	"Edgar E. Iglesias" <edgar.iglesias@gmail.com>,
	Alistair Francis <alistair@alistair23.me>,
	Helge Deller <deller@gmx.de>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Eduardo Habkost <eduardo@habkost.net>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Song Gao <gaosong@loongson.cn>,
	Thomas Huth <huth@tuxfamily.org>,
	Laurent Vivier <laurent@vivier.eu>,
	Huacai Chen <chenhuacai@kernel.org>,
	Jiaxun Yang <jiaxun.yang@flygoat.com>,
	=?UTF-8?q?Herv=C3=A9=20Poussineau?= <hpoussin@reactos.org>,
	Aleksandar Rikalo <aleksandar.rikalo@syrmia.com>,
	Aurelien Jarno <aurelien@aurel32.net>,
	Jason Wang <jasowang@redhat.com>,
	Jia Liu <proljc@gmail.com>,
	Stafford Horne <shorne@gmail.com>,
	Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>,
	Nicholas Piggin <npiggin@gmail.com>,
	Daniel Henrique Barboza <danielhb413@gmail.com>,
	David Gibson <david@gibson.dropbear.id.au>,
	Harsh Prateek Bora <harshpb@linux.ibm.com>,
	Bin Meng <bin.meng@windriver.com>,
	Palmer Dabbelt <palmer@dabbelt.com>,
	Weiwei Li <liweiwei@iscas.ac.cn>,
	Liu Zhiwei <zhiwei_liu@linux.alibaba.com>,
	David Hildenbrand <david@redhat.com>,
	Ilya Leoshkevich <iii@linux.ibm.com>,
	Halil Pasic <pasic@linux.ibm.com>,
	Christian Borntraeger <borntraeger@linux.ibm.com>,
	Eric Farman <farman@linux.ibm.com>,
	Yoshinori Sato <ysato@users.sourceforge.jp>,
	Magnus Damm <magnus.damm@gmail.com>,
	Artyom Tarasenko <atar4qemu@gmail.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	Max Filippov <jcmvbkbc@gmail.com>,
	qemu-arm@nongnu.org,
	qemu-ppc@nongnu.org,
	qemu-riscv@nongnu.org,
	qemu-s390x@nongnu.org,
	xen-devel@lists.xenproject.org
Subject: [PATCH 45/45] net: make nb_nics and nd_table[] static in net/net.c
Date: Sun, 22 Oct 2023 16:52:00 +0100
Message-Id: <20231022155200.436340-46-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231022155200.436340-1-dwmw2@infradead.org>
References: <20231022155200.436340-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by desiato.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 include/net/net.h | 4 ----
 net/net.c         | 3 +++
 system/globals.c  | 2 --
 3 files changed, 3 insertions(+), 6 deletions(-)

diff --git a/include/net/net.h b/include/net/net.h
index 290e604f03..5a38766942 100644
--- a/include/net/net.h
+++ b/include/net/net.h
@@ -245,10 +245,6 @@ struct NICInfo {
     int nvectors;
 };
 
-extern int nb_nics;
-extern NICInfo nd_table[MAX_NICS];
-extern const char *host_net_devices[];
-
 /* from net.c */
 extern NetClientStateList net_clients;
 bool netdev_is_modern(const char *optstr);
diff --git a/net/net.c b/net/net.c
index ed0d638454..9043566abf 100644
--- a/net/net.c
+++ b/net/net.c
@@ -77,6 +77,9 @@ static NetdevQueue nd_queue = QSIMPLEQ_HEAD_INITIALIZER(nd_queue);
 
 static GHashTable *nic_model_help;
 
+static int nb_nics;
+static NICInfo nd_table[MAX_NICS];
+
 /***********************************************************/
 /* network device redirectors */
 
diff --git a/system/globals.c b/system/globals.c
index e83b5428d1..b6d4e72530 100644
--- a/system/globals.c
+++ b/system/globals.c
@@ -36,8 +36,6 @@ int display_opengl;
 const char* keyboard_layout;
 bool enable_mlock;
 bool enable_cpu_pm;
-int nb_nics;
-NICInfo nd_table[MAX_NICS];
 int autostart = 1;
 int vga_interface_type = VGA_NONE;
 bool vga_interface_created;
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Sun Oct 22 16:11:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 22 Oct 2023 16:11:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.620800.966684 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qub3Q-0002Tn-2r; Sun, 22 Oct 2023 16:11:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 620800.966684; Sun, 22 Oct 2023 16: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 1qub3P-0002Tc-WB; Sun, 22 Oct 2023 16:11:52 +0000
Received: by outflank-mailman (input) for mailman id 620800;
 Sun, 22 Oct 2023 16:11: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=zZR7=GE=casper.srs.infradead.org=BATV+88d8721f4af1339c2fab+7364+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1quam7-0006wY-2b
 for xen-devel@lists.xenproject.org; Sun, 22 Oct 2023 15:53:59 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 36209b85-70f3-11ee-98d5-6d05b1d4d9a1;
 Sun, 22 Oct 2023 17:53:58 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1quakJ-008TGZ-OI; Sun, 22 Oct 2023 15:52:07 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1quakJ-001qa0-16; Sun, 22 Oct 2023 16:52:07 +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
X-Inumbo-ID: 36209b85-70f3-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=rUpd9lT/62EWfZvMuWHRTq23AphmaFPcKQZSk/5bZnU=; b=vp/q7TUe6Zc6kDLwHXFkmkm/lQ
	7O62P5nNr0Z2egFDK/w3Rogh2x2lxfFIW54BCtvZGWnbDBqfc/g2VCUPW4sThB/iCMZc5d1FRgs91
	xYLmMAAxavSq96ILSh2FHPG2TwZ77iGYyo7CeCsRceNh2S3OMTM8ebRxuN38D0U4eLEgO2GYDlou2
	v9Hosc4I6XuumUkQTfDcsd3kxT5gZhI1ND/3STQUru/c36GVMaARdhyHvPtgVIsY6MIY6fndoc79v
	uyPQQVdQOQlPbikqi4UZWcqfYKrJ5qiTLAX/rtreT3DtJKxsvRNVdEUB9G3NGZ2I2DAgj8PNV2PWI
	QHDMz5Fw==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Richard Henderson <richard.henderson@linaro.org>,
	Beniamino Galvani <b.galvani@gmail.com>,
	Peter Maydell <peter.maydell@linaro.org>,
	Strahinja Jankovic <strahinja.p.jankovic@gmail.com>,
	Niek Linnenbank <nieklinnenbank@gmail.com>,
	=?UTF-8?q?C=C3=A9dric=20Le=20Goater?= <clg@kaod.org>,
	Andrew Jeffery <andrew@aj.id.au>,
	Joel Stanley <joel@jms.id.au>,
	Igor Mitsyanko <i.mitsyanko@gmail.com>,
	Jean-Christophe Dubois <jcd@tribudubois.net>,
	Andrey Smirnov <andrew.smirnov@gmail.com>,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
	Rob Herring <robh@kernel.org>,
	Subbaraya Sundeep <sundeep.lkml@gmail.com>,
	Jan Kiszka <jan.kiszka@web.de>,
	Tyrone Ting <kfting@nuvoton.com>,
	Hao Wu <wuhaotsh@google.com>,
	Radoslaw Biernacki <rad@semihalf.com>,
	Leif Lindholm <quic_llindhol@quicinc.com>,
	Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>,
	"Edgar E. Iglesias" <edgar.iglesias@gmail.com>,
	Alistair Francis <alistair@alistair23.me>,
	Helge Deller <deller@gmx.de>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Eduardo Habkost <eduardo@habkost.net>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Song Gao <gaosong@loongson.cn>,
	Thomas Huth <huth@tuxfamily.org>,
	Laurent Vivier <laurent@vivier.eu>,
	Huacai Chen <chenhuacai@kernel.org>,
	Jiaxun Yang <jiaxun.yang@flygoat.com>,
	=?UTF-8?q?Herv=C3=A9=20Poussineau?= <hpoussin@reactos.org>,
	Aleksandar Rikalo <aleksandar.rikalo@syrmia.com>,
	Aurelien Jarno <aurelien@aurel32.net>,
	Jason Wang <jasowang@redhat.com>,
	Jia Liu <proljc@gmail.com>,
	Stafford Horne <shorne@gmail.com>,
	Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>,
	Nicholas Piggin <npiggin@gmail.com>,
	Daniel Henrique Barboza <danielhb413@gmail.com>,
	David Gibson <david@gibson.dropbear.id.au>,
	Harsh Prateek Bora <harshpb@linux.ibm.com>,
	Bin Meng <bin.meng@windriver.com>,
	Palmer Dabbelt <palmer@dabbelt.com>,
	Weiwei Li <liweiwei@iscas.ac.cn>,
	Liu Zhiwei <zhiwei_liu@linux.alibaba.com>,
	David Hildenbrand <david@redhat.com>,
	Ilya Leoshkevich <iii@linux.ibm.com>,
	Halil Pasic <pasic@linux.ibm.com>,
	Christian Borntraeger <borntraeger@linux.ibm.com>,
	Eric Farman <farman@linux.ibm.com>,
	Yoshinori Sato <ysato@users.sourceforge.jp>,
	Magnus Damm <magnus.damm@gmail.com>,
	Artyom Tarasenko <atar4qemu@gmail.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	Max Filippov <jcmvbkbc@gmail.com>,
	qemu-arm@nongnu.org,
	qemu-ppc@nongnu.org,
	qemu-riscv@nongnu.org,
	qemu-s390x@nongnu.org,
	xen-devel@lists.xenproject.org
Subject: [PATCH 26/45] hw/net/lan9118: use qemu_configure_nic_device()
Date: Sun, 22 Oct 2023 16:51:41 +0100
Message-Id: <20231022155200.436340-27-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231022155200.436340-1-dwmw2@infradead.org>
References: <20231022155200.436340-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

Some callers instantiate the device unconditionally, others will do so only
if there is a NICInfo to go with it. This appears to be fairly random, but
preseve the existing behaviour for now.

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 hw/arm/kzm.c             | 4 ++--
 hw/arm/mps2.c            | 2 +-
 hw/arm/realview.c        | 6 ++----
 hw/arm/vexpress.c        | 4 ++--
 hw/net/lan9118.c         | 5 ++---
 include/hw/net/lan9118.h | 2 +-
 6 files changed, 10 insertions(+), 13 deletions(-)

diff --git a/hw/arm/kzm.c b/hw/arm/kzm.c
index b1b281c9ac..9f2d120f57 100644
--- a/hw/arm/kzm.c
+++ b/hw/arm/kzm.c
@@ -112,8 +112,8 @@ static void kzm_init(MachineState *machine)
         alias_offset += ram[i].size;
     }
 
-    if (nd_table[0].used) {
-        lan9118_init(&nd_table[0], KZM_LAN9118_ADDR,
+    if (qemu_find_nic_info("lan9118", true, NULL)) {
+        lan9118_init(KZM_LAN9118_ADDR,
                      qdev_get_gpio_in(DEVICE(&s->soc.avic), 52));
     }
 
diff --git a/hw/arm/mps2.c b/hw/arm/mps2.c
index d92fd60684..cb3da1ef5c 100644
--- a/hw/arm/mps2.c
+++ b/hw/arm/mps2.c
@@ -458,7 +458,7 @@ static void mps2_common_init(MachineState *machine)
     /* In hardware this is a LAN9220; the LAN9118 is software compatible
      * except that it doesn't support the checksum-offload feature.
      */
-    lan9118_init(&nd_table[0], mmc->ethernet_base,
+    lan9118_init(mmc->ethernet_base,
                  qdev_get_gpio_in(armv7m,
                                   mmc->fpga_type == FPGA_AN511 ? 47 : 13));
 
diff --git a/hw/arm/realview.c b/hw/arm/realview.c
index 591f50581e..68f8aefac3 100644
--- a/hw/arm/realview.c
+++ b/hw/arm/realview.c
@@ -84,7 +84,6 @@ static void realview_init(MachineState *machine,
     SysBusDevice *busdev;
     qemu_irq pic[64];
     PCIBus *pci_bus = NULL;
-    NICInfo *nd;
     DriveInfo *dinfo;
     I2CBus *i2c;
     int n;
@@ -295,10 +294,9 @@ static void realview_init(MachineState *machine,
         }
     }
 
-    nd = qemu_find_nic_info(is_pb ? "lan9118" : "smc91c111", true, NULL);
-    if (nd) {
+    if (qemu_find_nic_info(is_pb ? "lan9118" : "smc91c111", true, NULL)) {
         if (is_pb) {
-            lan9118_init(nd, 0x4e000000, pic[28]);
+            lan9118_init(0x4e000000, pic[28]);
         } else {
             smc91c111_init(0x4e000000, pic[28]);
         }
diff --git a/hw/arm/vexpress.c b/hw/arm/vexpress.c
index 8ff37f52ca..4a6cb3bdf5 100644
--- a/hw/arm/vexpress.c
+++ b/hw/arm/vexpress.c
@@ -686,8 +686,8 @@ static void vexpress_common_init(MachineState *machine)
     memory_region_add_subregion(sysmem, map[VE_VIDEORAM], &vms->vram);
 
     /* 0x4e000000 LAN9118 Ethernet */
-    if (nd_table[0].used) {
-        lan9118_init(&nd_table[0], map[VE_ETHERNET], pic[15]);
+    if (qemu_find_nic_info("lan9118", true, NULL)) {
+        lan9118_init(map[VE_ETHERNET], pic[15]);
     }
 
     /* VE_USB: not modelled */
diff --git a/hw/net/lan9118.c b/hw/net/lan9118.c
index e5c4af182d..42fe5efd8c 100644
--- a/hw/net/lan9118.c
+++ b/hw/net/lan9118.c
@@ -1407,14 +1407,13 @@ static void lan9118_register_types(void)
 
 /* Legacy helper function.  Should go away when machine config files are
    implemented.  */
-void lan9118_init(NICInfo *nd, uint32_t base, qemu_irq irq)
+void lan9118_init(uint32_t base, qemu_irq irq)
 {
     DeviceState *dev;
     SysBusDevice *s;
 
-    qemu_check_nic_model(nd, "lan9118");
     dev = qdev_new(TYPE_LAN9118);
-    qdev_set_nic_properties(dev, nd);
+    qemu_configure_nic_device(dev, true, NULL);
     s = SYS_BUS_DEVICE(dev);
     sysbus_realize_and_unref(s, &error_fatal);
     sysbus_mmio_map(s, 0, base);
diff --git a/include/hw/net/lan9118.h b/include/hw/net/lan9118.h
index 3d0c67f339..4bf9da7a63 100644
--- a/include/hw/net/lan9118.h
+++ b/include/hw/net/lan9118.h
@@ -15,6 +15,6 @@
 
 #define TYPE_LAN9118 "lan9118"
 
-void lan9118_init(NICInfo *, uint32_t, qemu_irq);
+void lan9118_init(uint32_t, qemu_irq);
 
 #endif
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Sun Oct 22 16:52:24 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 22 Oct 2023 16:52:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.620812.966694 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qubgR-0006Hk-8X; Sun, 22 Oct 2023 16:52:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 620812.966694; Sun, 22 Oct 2023 16:52: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 1qubgR-0006Ha-5b; Sun, 22 Oct 2023 16:52:11 +0000
Received: by outflank-mailman (input) for mailman id 620812;
 Sun, 22 Oct 2023 16:52: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 1qubgP-0006HU-IB
 for xen-devel@lists.xenproject.org; Sun, 22 Oct 2023 16:52: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 1qubgP-0003lP-8o; Sun, 22 Oct 2023 16:52:09 +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 1qubgO-0005IL-SM; Sun, 22 Oct 2023 16:52: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=4/8BzTvAHH1Kqb9LSb+VGvUpqifptTUQl4x8uOXx/yY=; b=yMImo9GRWGeqKSBlBM8qi99f0e
	TSNUoSiGui/lggt27k1ki/IURrLxvMe1m/t3jv77ciMDbydBiGNEHNDt3FmtFFmowWYlvMgH+D8jy
	YrPyIYg+96mgCM+CV67XdKOq/B/t+Hm0tZ0dfCFPj32AndhxcbXDA5WG5sd2d2slXSlI=;
Message-ID: <2f3180d3-883d-466e-a454-762aa16c9e7a@xen.org>
Date: Sun, 22 Oct 2023 17:52:04 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH for-4.19] xen/xmalloc: XMEM_POOL_POISON improvements
To: Andrew Cooper <andrew.cooper3@citrix.com>,
 Xen-devel <xen-devel@lists.xenproject.org>
Cc: George Dunlap <George.Dunlap@eu.citrix.com>,
 Jan Beulich <JBeulich@suse.com>, Stefano Stabellini
 <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>
References: <20231020202649.1802700-1-andrew.cooper3@citrix.com>
Content-Language: en-GB
From: Julien Grall <julien@xen.org>
In-Reply-To: <20231020202649.1802700-1-andrew.cooper3@citrix.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

Hi Andrew,

On 20/10/2023 21:26, Andrew Cooper wrote:
> When in use, the spew:
> 
>    (XEN) Assertion '!memchr_inv(b->ptr.buffer + MIN_BLOCK_SIZE, POISON_BYTE, (b->size & BLOCK_SIZE_MASK) - MIN_BLOCK_SIZE)' failed at common/xmalloc_tlsf.c:246
> 
> is unweidly and meaningless to non-Xen developers.  Therefore:
> 
>   * Switch to IS_ENABLED().  There's no need for full #ifdef-ary.
>   * Pull memchr_inv() out into the if(), and provide a better error message.
> 
> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
> ---
> CC: George Dunlap <George.Dunlap@eu.citrix.com>
> CC: Jan Beulich <JBeulich@suse.com>
> CC: Stefano Stabellini <sstabellini@kernel.org>
> CC: Wei Liu <wl@xen.org>
> CC: Julien Grall <julien@xen.org>
> CC: Roger Pau Monné <roger.pau@citrix.com>
> 
> Observations from the debugging of:
>    https://github.com/Dasharo/dasharo-issues/issues/488
> 
> There's a further bug.  XMEM_POOL_POISON can be enabled in release builds,
> where the ASSERT() gets dropped.
> 
> However, upping to a BUG() can't provide any helpful message out to the user.
> 
> I tried modifying BUG() to take an optional message, but xen/bug.h needs
> untangling substantially before that will work, and I don't have time right now.

Do we actually care about the registers values? If not, we can either use:

printk(...);
BUG();

Or

panic(...);

This would allow us to use XMEM_POOL_POISON in prod build before BUG() 
can accept string.

> ---
>   xen/common/xmalloc_tlsf.c | 15 +++++++--------
>   1 file changed, 7 insertions(+), 8 deletions(-)
> 
> diff --git a/xen/common/xmalloc_tlsf.c b/xen/common/xmalloc_tlsf.c
> index 349b31cb4cc1..13305cd87c2f 100644
> --- a/xen/common/xmalloc_tlsf.c
> +++ b/xen/common/xmalloc_tlsf.c
> @@ -249,11 +249,11 @@ static inline void EXTRACT_BLOCK(struct bhdr *b, struct xmem_pool *p, int fl,
>       }
>       b->ptr.free_ptr = (struct free_ptr) {NULL, NULL};
>   
> -#ifdef CONFIG_XMEM_POOL_POISON
> -    if ( (b->size & BLOCK_SIZE_MASK) > MIN_BLOCK_SIZE )
> -        ASSERT(!memchr_inv(b->ptr.buffer + MIN_BLOCK_SIZE, POISON_BYTE,
> -                           (b->size & BLOCK_SIZE_MASK) - MIN_BLOCK_SIZE));
> -#endif /* CONFIG_XMEM_POOL_POISON */
> +    if ( IS_ENABLED(CONFIG_XMEM_POOL_POISON) &&
> +         (b->size & BLOCK_SIZE_MASK) > MIN_BLOCK_SIZE &&
> +         memchr_inv(b->ptr.buffer + MIN_BLOCK_SIZE, POISON_BYTE,
> +                    (b->size & BLOCK_SIZE_MASK) - MIN_BLOCK_SIZE) )
> +        ASSERT(!"XMEM Pool corruption found");
>   }
>   
>   /**
> @@ -261,11 +261,10 @@ static inline void EXTRACT_BLOCK(struct bhdr *b, struct xmem_pool *p, int fl,
>    */
>   static inline void INSERT_BLOCK(struct bhdr *b, struct xmem_pool *p, int fl, int sl)
>   {
> -#ifdef CONFIG_XMEM_POOL_POISON
> -    if ( (b->size & BLOCK_SIZE_MASK) > MIN_BLOCK_SIZE )
> +    if ( IS_ENABLED(CONFIG_XMEM_POOL_POISON) &&
> +         (b->size & BLOCK_SIZE_MASK) > MIN_BLOCK_SIZE )
>           memset(b->ptr.buffer + MIN_BLOCK_SIZE, POISON_BYTE,
>                  (b->size & BLOCK_SIZE_MASK) - MIN_BLOCK_SIZE);
> -#endif /* CONFIG_XMEM_POOL_POISON */
>   
>       b->ptr.free_ptr = (struct free_ptr) {NULL, p->matrix[fl][sl]};
>       if ( p->matrix[fl][sl] )


Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Mon Oct 23 02:14:15 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 02:14:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.620921.966778 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qukSG-0001Uo-1v; Mon, 23 Oct 2023 02:14:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 620921.966778; Mon, 23 Oct 2023 02:14: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 1qukSF-0001Uh-VR; Mon, 23 Oct 2023 02:14:07 +0000
Received: by outflank-mailman (input) for mailman id 620921;
 Mon, 23 Oct 2023 02:14: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=JdWI=GF=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qukSE-0001F1-Qy
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 02:14:06 +0000
Received: from foss.arm.com (foss.arm.com [217.140.110.172])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTP
 id d777c8e2-7149-11ee-98d5-6d05b1d4d9a1;
 Mon, 23 Oct 2023 04:14: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 EE643FEC;
 Sun, 22 Oct 2023 19:14:45 -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 1D1363F738;
 Sun, 22 Oct 2023 19:14: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: d777c8e2-7149-11ee-98d5-6d05b1d4d9a1
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>,
	Bertrand Marquis <bertrand.marquis@arm.com>,
	Wei Chen <wei.chen@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Penny Zheng <penny.zheng@arm.com>,
	Julien Grall <jgrall@amazon.com>
Subject: [PATCH v8 2/8] xen/arm: Split MMU system SMP MM bringup code to mmu/smpboot.c
Date: Mon, 23 Oct 2023 10:13:39 +0800
Message-Id: <20231023021345.1731436-3-Henry.Wang@arm.com>
X-Mailer: git-send-email 2.25.1
In-Reply-To: <20231023021345.1731436-1-Henry.Wang@arm.com>
References: <20231023021345.1731436-1-Henry.Wang@arm.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

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

Since arm32 global variable cpu0_pgtable will be used by both
arch/arm/mm.c and arch/arm/mmu/smpboot.c, to avoid exporting this
variable, change the variable usage in arch/arm/mmu/smpboot.c to
per_cpu(xen_pgtable, 0).

To avoid exposing global variable phys_offset, use virt_to_maddr()
to calculate init_ttbr for arm64.

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>
Reviewed-by: Julien Grall <jgrall@amazon.com>
---
v8:
- Drop the unnecessary cast in virt_to_maddr((uintptr_t) xen_pgtable);
- Add Julien's Reviewed-by tag.
v7:
- Do not export cpu0_pgtable, replace the variable usage in
  arch/arm/mmu/smpboot.c to per_cpu(xen_pgtable, 0).
- Also move global variable init_ttbr to arch/arm/mmu/smpboot.c.
- Use virt_to_maddr() instead of phys_offset to calculate init_ttbr
  in arm64 implementation of init_secondary_pagetables().
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/mm.c          | 104 -------------------------------
 xen/arch/arm/mmu/Makefile  |   1 +
 xen/arch/arm/mmu/smpboot.c | 124 +++++++++++++++++++++++++++++++++++++
 3 files changed, 125 insertions(+), 104 deletions(-)
 create mode 100644 xen/arch/arm/mmu/smpboot.c

diff --git a/xen/arch/arm/mm.c b/xen/arch/arm/mm.c
index fd02493564..b7eb3a6e08 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 */
 
 /*
@@ -94,9 +61,6 @@ DEFINE_BOOT_PAGE_TABLE(xen_fixmap);
  */
 static DEFINE_PAGE_TABLES(xen_xenmap, XEN_NR_ENTRIES(2));
 
-/* Non-boot CPUs use this to find the correct pagetables. */
-uint64_t init_ttbr;
-
 static paddr_t phys_offset;
 
 /* Limits of the Xen heap */
@@ -284,13 +248,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)
@@ -369,67 +326,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..8b6a09f843
--- /dev/null
+++ b/xen/arch/arm/mmu/smpboot.c
@@ -0,0 +1,124 @@
+/* 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));
+
+/* Non-boot CPUs use this to find the correct pagetables. */
+uint64_t init_ttbr;
+
+/* 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 = virt_to_maddr(xen_pgtable);
+    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, per_cpu(xen_pgtable, 0), 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
+
+/*
+ * 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 Mon Oct 23 02:14:15 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 02:14:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.620920.966767 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qukS8-0001FE-RA; Mon, 23 Oct 2023 02:14:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 620920.966767; Mon, 23 Oct 2023 02: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 1qukS8-0001F7-OQ; Mon, 23 Oct 2023 02:14:00 +0000
Received: by outflank-mailman (input) for mailman id 620920;
 Mon, 23 Oct 2023 02:13: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=JdWI=GF=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qukS7-0001F1-PM
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 02:13:59 +0000
Received: from foss.arm.com (foss.arm.com [217.140.110.172])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTP
 id d20499e4-7149-11ee-98d5-6d05b1d4d9a1;
 Mon, 23 Oct 2023 04:13:57 +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 CD88F2F4;
 Sun, 22 Oct 2023 19:14:36 -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 3E43F3F738;
 Sun, 22 Oct 2023 19:13: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: d20499e4-7149-11ee-98d5-6d05b1d4d9a1
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>,
	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: [PATCH v8 0/8] xen/arm: Split MMU code as the prepration of MPU work
Date: Mon, 23 Oct 2023 10:13:37 +0800
Message-Id: <20231023021345.1731436-1-Henry.Wang@arm.com>
X-Mailer: git-send-email 2.25.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Based on the discussion in the Xen Summit [1], sending this series out after
addressing the comments in v7 [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:
bad1ac345b x86: support data operand independent timing mode

[1] https://lore.kernel.org/xen-devel/AS8PR08MB799122F8B0CB841DED64F4819226A@AS8PR08MB7991.eurprd08.prod.outlook.com/
[2] https://lore.kernel.org/xen-devel/20231009010313.3668423-1-Henry.Wang@arm.com/
[3] https://gitlab.com/xen-project/people/henryw/xen/-/pipelines/1045604579

Henry Wang (6):
  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}

 xen/arch/arm/Kconfig               |    2 +-
 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        |    1 -
 xen/arch/arm/arm64/mmu/Makefile    |    1 +
 xen/arch/arm/arm64/mmu/head.S      |   18 +-
 xen/arch/arm/arm64/{ => mmu}/mm.c  |   84 ++
 xen/arch/arm/domain.c              |   11 +-
 xen/arch/arm/include/asm/mm.h      |   32 +-
 xen/arch/arm/include/asm/mmu/mm.h  |   44 +
 xen/arch/arm/include/asm/mmu/p2m.h |   26 +
 xen/arch/arm/include/asm/p2m.h     |   32 +-
 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             | 1834 ++++++++++++++++++++++++++
 xen/arch/arm/mmu/pt.c              |  736 +++++++++++
 xen/arch/arm/mmu/setup.c           |  376 ++++++
 xen/arch/arm/mmu/smpboot.c         |  124 ++
 xen/arch/arm/p2m.c                 | 1909 +---------------------------
 xen/arch/arm/setup.c               |  324 +----
 xen/arch/arm/smpboot.c             |    4 +-
 27 files changed, 3655 insertions(+), 3493 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 (60%)
 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 Oct 23 02:14:15 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 02:14:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.620923.966797 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qukSK-00021s-Ku; Mon, 23 Oct 2023 02:14:12 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 620923.966797; Mon, 23 Oct 2023 02:14: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 1qukSK-00021j-Hd; Mon, 23 Oct 2023 02:14:12 +0000
Received: by outflank-mailman (input) for mailman id 620923;
 Mon, 23 Oct 2023 02:14: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=JdWI=GF=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qukSI-0001F1-PE
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 02:14:10 +0000
Received: from foss.arm.com (foss.arm.com [217.140.110.172])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTP
 id d9e3efe5-7149-11ee-98d5-6d05b1d4d9a1;
 Mon, 23 Oct 2023 04:14:10 +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 161E32F4;
 Sun, 22 Oct 2023 19:14:50 -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 393EC3F738;
 Sun, 22 Oct 2023 19:14: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: d9e3efe5-7149-11ee-98d5-6d05b1d4d9a1
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>,
	Bertrand Marquis <bertrand.marquis@arm.com>,
	Wei Chen <wei.chen@arm.com>,
	Penny Zheng <penny.zheng@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Julien Grall <jgrall@amazon.com>
Subject: [PATCH v8 3/8] xen/arm: Fold mmu_init_secondary_cpu() to head.S
Date: Mon, 23 Oct 2023 10:13:40 +0800
Message-Id: <20231023021345.1731436-4-Henry.Wang@arm.com>
X-Mailer: git-send-email 2.25.1
In-Reply-To: <20231023021345.1731436-1-Henry.Wang@arm.com>
References: <20231023021345.1731436-1-Henry.Wang@arm.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

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.

For arm32, introduce an assembly macro pt_enforce_wxn. The macro is
called before secondary CPUs jumping into the C world.

For arm64, set the SCTLR_Axx_ELx_WXN flag right when the MMU is
enabled. This would avoid the extra TLB flush and SCTLR dance.

Signed-off-by: Henry Wang <Henry.Wang@arm.com>
Co-authored-by: Julien Grall <jgrall@amazon.com>
Signed-off-by: Julien Grall <jgrall@amazon.com>
---
v8:
- Change the setting of SCTLR_Axx_ELx_WXN for arm64 to set the
  flag right when the MMU is enabled.
v7:
- No change.
v6:
- New patch.
---
 xen/arch/arm/arm32/head.S     | 20 ++++++++++++++++++++
 xen/arch/arm/arm64/mmu/head.S | 18 +++++++++++-------
 xen/arch/arm/include/asm/mm.h |  2 --
 xen/arch/arm/mm.c             |  6 ------
 xen/arch/arm/smpboot.c        |  2 --
 5 files changed, 31 insertions(+), 17 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 88075ef083..df06cefbbe 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,14 +323,15 @@ 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
 
         /*
@@ -337,7 +341,7 @@ ENTRY(enable_boot_cpu_mm)
         ldr   x0, =1f
         br    x0
 1:
-        mov   lr, x5
+        mov   lr, x6
         /*
          * 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
diff --git a/xen/arch/arm/include/asm/mm.h b/xen/arch/arm/include/asm/mm.h
index d25e59f828..163d22ecd3 100644
--- a/xen/arch/arm/include/asm/mm.h
+++ b/xen/arch/arm/include/asm/mm.h
@@ -214,8 +214,6 @@ 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);
-/* Switch secondary CPUS to its own pagetables and finalise MMU setup */
-extern void mmu_init_secondary_cpu(void);
 /*
  * 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.
diff --git a/xen/arch/arm/mm.c b/xen/arch/arm/mm.c
index b7eb3a6e08..923a90925c 100644
--- a/xen/arch/arm/mm.c
+++ b/xen/arch/arm/mm.c
@@ -326,12 +326,6 @@ void __init setup_pagetables(unsigned long boot_phys_offset)
 #endif
 }
 
-/* MMU setup for secondary CPUS (which already have paging enabled) */
-void mmu_init_secondary_cpu(void)
-{
-    xen_pt_enforce_wnx();
-}
-
 #ifdef CONFIG_ARM_32
 /*
  * Set up the direct-mapped xenheap:
diff --git a/xen/arch/arm/smpboot.c b/xen/arch/arm/smpboot.c
index ec76de3cac..beb137d06e 100644
--- a/xen/arch/arm/smpboot.c
+++ b/xen/arch/arm/smpboot.c
@@ -361,8 +361,6 @@ void start_secondary(void)
      */
     update_system_features(&current_cpu_data);
 
-    mmu_init_secondary_cpu();
-
     gic_init_secondary_cpu();
 
     set_current(idle_vcpu[cpuid]);
-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Mon Oct 23 02:14:15 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 02:14:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.620922.966788 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qukSH-0001kM-9K; Mon, 23 Oct 2023 02:14:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 620922.966788; Mon, 23 Oct 2023 02:14: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 1qukSH-0001kD-6D; Mon, 23 Oct 2023 02:14:09 +0000
Received: by outflank-mailman (input) for mailman id 620922;
 Mon, 23 Oct 2023 02:14: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=JdWI=GF=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qukSG-0001U7-1g
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 02:14:08 +0000
Received: from foss.arm.com (foss.arm.com [217.140.110.172])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTP
 id d4faa739-7149-11ee-9b0e-b553b5be7939;
 Mon, 23 Oct 2023 04:14:01 +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 CDD33C15;
 Sun, 22 Oct 2023 19:14:41 -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 681B03F738;
 Sun, 22 Oct 2023 19:13: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: d4faa739-7149-11ee-9b0e-b553b5be7939
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>,
	Bertrand Marquis <bertrand.marquis@arm.com>,
	Wei Chen <wei.chen@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Penny Zheng <penny.zheng@arm.com>,
	Julien Grall <jgrall@amazon.com>
Subject: [PATCH v8 1/8] xen/arm: Split page table related code to mmu/pt.c
Date: Mon, 23 Oct 2023 10:13:38 +0800
Message-Id: <20231023021345.1731436-2-Henry.Wang@arm.com>
X-Mailer: git-send-email 2.25.1
In-Reply-To: <20231023021345.1731436-1-Henry.Wang@arm.com>
References: <20231023021345.1731436-1-Henry.Wang@arm.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

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.

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>
Reviewed-by: Julien Grall <jgrall@amazon.com>
---
v8:
- Add Julien's Reviewed-by tag.
v7:
- Do not move pte_of_xenaddr() to mmu/pt.c.
- Do not expose global variable phys_offset.
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/mm.c         | 717 -------------------------------------
 xen/arch/arm/mmu/Makefile |   1 +
 xen/arch/arm/mmu/pt.c     | 736 ++++++++++++++++++++++++++++++++++++++
 4 files changed, 738 insertions(+), 717 deletions(-)
 create mode 100644 xen/arch/arm/mmu/Makefile
 create mode 100644 xen/arch/arm/mmu/pt.c

diff --git a/xen/arch/arm/Makefile b/xen/arch/arm/Makefile
index 7bf07e9920..c45b08b31e 100644
--- a/xen/arch/arm/Makefile
+++ b/xen/arch/arm/Makefile
@@ -1,5 +1,6 @@
 obj-$(CONFIG_ARM_32) += arm32/
 obj-$(CONFIG_ARM_64) += arm64/
+obj-$(CONFIG_MMU) += mmu/
 obj-$(CONFIG_ACPI) += acpi/
 obj-$(CONFIG_HAS_PCI) += pci/
 ifneq ($(CONFIG_NO_PLAT),y)
diff --git a/xen/arch/arm/mm.c b/xen/arch/arm/mm.c
index c34cc94c90..fd02493564 100644
--- a/xen/arch/arm/mm.c
+++ b/xen/arch/arm/mm.c
@@ -9,22 +9,14 @@
  */
 
 #include <xen/domain_page.h>
-#include <xen/errno.h>
 #include <xen/grant_table.h>
 #include <xen/guest_access.h>
-#include <xen/init.h>
 #include <xen/libfdt/libfdt.h>
 #include <xen/mm.h>
-#include <xen/pfn.h>
-#include <xen/pmap.h>
-#include <xen/sched.h>
 #include <xen/sizes.h>
-#include <xen/types.h>
-#include <xen/vmap.h>
 
 #include <xsm/xsm.h>
 
-#include <asm/fixmap.h>
 #include <asm/setup.h>
 
 #include <public/memory.h>
@@ -35,19 +27,6 @@
 #undef mfn_to_virt
 #define mfn_to_virt(mfn) __mfn_to_virt(mfn_x(mfn))
 
-#ifdef NDEBUG
-static inline void
-__attribute__ ((__format__ (__printf__, 1, 2)))
-mm_printk(const char *fmt, ...) {}
-#else
-#define mm_printk(fmt, args...)             \
-    do                                      \
-    {                                       \
-        dprintk(XENLOG_ERR, fmt, ## args);  \
-        WARN();                             \
-    } while (0)
-#endif
-
 /* 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.
@@ -92,12 +71,10 @@ DEFINE_BOOT_PAGE_TABLES(boot_third, XEN_NR_ENTRIES(2));
  */
 
 #ifdef CONFIG_ARM_64
-#define HYP_PT_ROOT_LEVEL 0
 DEFINE_PAGE_TABLE(xen_pgtable);
 static DEFINE_PAGE_TABLE(xen_first);
 #define THIS_CPU_PGTABLE xen_pgtable
 #else
-#define HYP_PT_ROOT_LEVEL 1
 /* 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);
@@ -200,179 +177,6 @@ static void __init __maybe_unused build_assertions(void)
 #undef CHECK_DIFFERENT_SLOT
 }
 
-static lpae_t *xen_map_table(mfn_t mfn)
-{
-    /*
-     * During early boot, map_domain_page() may be unusable. Use the
-     * PMAP to map temporarily a page-table.
-     */
-    if ( system_state == SYS_STATE_early_boot )
-        return pmap_map(mfn);
-
-    return map_domain_page(mfn);
-}
-
-static void xen_unmap_table(const lpae_t *table)
-{
-    /*
-     * During early boot, xen_map_table() will not use map_domain_page()
-     * but the PMAP.
-     */
-    if ( system_state == SYS_STATE_early_boot )
-        pmap_unmap(table);
-    else
-        unmap_domain_page(table);
-}
-
-void dump_pt_walk(paddr_t ttbr, paddr_t addr,
-                  unsigned int root_level,
-                  unsigned int nr_root_tables)
-{
-    static const char *level_strs[4] = { "0TH", "1ST", "2ND", "3RD" };
-    const mfn_t root_mfn = maddr_to_mfn(ttbr);
-    DECLARE_OFFSETS(offsets, addr);
-    lpae_t pte, *mapping;
-    unsigned int level, root_table;
-
-#ifdef CONFIG_ARM_32
-    BUG_ON(root_level < 1);
-#endif
-    BUG_ON(root_level > 3);
-
-    if ( nr_root_tables > 1 )
-    {
-        /*
-         * Concatenated root-level tables. The table number will be
-         * the offset at the previous level. It is not possible to
-         * concatenate a level-0 root.
-         */
-        BUG_ON(root_level == 0);
-        root_table = offsets[root_level - 1];
-        printk("Using concatenated root table %u\n", root_table);
-        if ( root_table >= nr_root_tables )
-        {
-            printk("Invalid root table offset\n");
-            return;
-        }
-    }
-    else
-        root_table = 0;
-
-    mapping = xen_map_table(mfn_add(root_mfn, root_table));
-
-    for ( level = root_level; ; level++ )
-    {
-        if ( offsets[level] > XEN_PT_LPAE_ENTRIES )
-            break;
-
-        pte = mapping[offsets[level]];
-
-        printk("%s[0x%03x] = 0x%"PRIx64"\n",
-               level_strs[level], offsets[level], pte.bits);
-
-        if ( level == 3 || !pte.walk.valid || !pte.walk.table )
-            break;
-
-        /* For next iteration */
-        xen_unmap_table(mapping);
-        mapping = xen_map_table(lpae_get_mfn(pte));
-    }
-
-    xen_unmap_table(mapping);
-}
-
-void dump_hyp_walk(vaddr_t addr)
-{
-    uint64_t ttbr = READ_SYSREG64(TTBR0_EL2);
-
-    printk("Walking Hypervisor VA 0x%"PRIvaddr" "
-           "on CPU%d via TTBR 0x%016"PRIx64"\n",
-           addr, smp_processor_id(), ttbr);
-
-    dump_pt_walk(ttbr, addr, HYP_PT_ROOT_LEVEL, 1);
-}
-
-lpae_t mfn_to_xen_entry(mfn_t mfn, unsigned int attr)
-{
-    lpae_t e = (lpae_t) {
-        .pt = {
-            .valid = 1,           /* Mappings are present */
-            .table = 0,           /* Set to 1 for links and 4k maps */
-            .ai = attr,
-            .ns = 1,              /* Hyp mode is in the non-secure world */
-            .up = 1,              /* See below */
-            .ro = 0,              /* Assume read-write */
-            .af = 1,              /* No need for access tracking */
-            .ng = 1,              /* Makes TLB flushes easier */
-            .contig = 0,          /* Assume non-contiguous */
-            .xn = 1,              /* No need to execute outside .text */
-            .avail = 0,           /* Reference count for domheap mapping */
-        }};
-    /*
-     * For EL2 stage-1 page table, up (aka AP[1]) is RES1 as the translation
-     * regime applies to only one exception level (see D4.4.4 and G4.6.1
-     * in ARM DDI 0487B.a). If this changes, remember to update the
-     * hard-coded values in head.S too.
-     */
-
-    switch ( attr )
-    {
-    case MT_NORMAL_NC:
-        /*
-         * ARM ARM: Overlaying the shareability attribute (DDI
-         * 0406C.b B3-1376 to 1377)
-         *
-         * A memory region with a resultant memory type attribute of Normal,
-         * and a resultant cacheability attribute of Inner Non-cacheable,
-         * Outer Non-cacheable, must have a resultant shareability attribute
-         * of Outer Shareable, otherwise shareability is UNPREDICTABLE.
-         *
-         * On ARMv8 sharability is ignored and explicitly treated as Outer
-         * Shareable for Normal Inner Non_cacheable, Outer Non-cacheable.
-         */
-        e.pt.sh = LPAE_SH_OUTER;
-        break;
-    case MT_DEVICE_nGnRnE:
-    case MT_DEVICE_nGnRE:
-        /*
-         * Shareability is ignored for non-Normal memory, Outer is as
-         * good as anything.
-         *
-         * On ARMv8 sharability is ignored and explicitly treated as Outer
-         * Shareable for any device memory type.
-         */
-        e.pt.sh = LPAE_SH_OUTER;
-        break;
-    default:
-        e.pt.sh = LPAE_SH_INNER;  /* Xen mappings are SMP coherent */
-        break;
-    }
-
-    ASSERT(!(mfn_to_maddr(mfn) & ~PADDR_MASK));
-
-    lpae_set_mfn(e, mfn);
-
-    return e;
-}
-
-/* Map a 4k page in a fixmap entry */
-void set_fixmap(unsigned int map, mfn_t mfn, unsigned int flags)
-{
-    int res;
-
-    res = map_pages_to_xen(FIXMAP_ADDR(map), mfn, 1, flags);
-    BUG_ON(res != 0);
-}
-
-/* Remove a mapping from a fixmap entry */
-void clear_fixmap(unsigned int map)
-{
-    int res;
-
-    res = destroy_xen_mappings(FIXMAP_ADDR(map), FIXMAP_ADDR(map) + PAGE_SIZE);
-    BUG_ON(res != 0);
-}
-
 void flush_page_to_ram(unsigned long mfn, bool sync_icache)
 {
     void *v = map_domain_page(_mfn(mfn));
@@ -733,527 +537,6 @@ void *__init arch_vmap_virt_end(void)
     return (void *)(VMAP_VIRT_START + VMAP_VIRT_SIZE);
 }
 
-/*
- * This function should only be used to remap device address ranges
- * TODO: add a check to verify this assumption
- */
-void *ioremap_attr(paddr_t start, size_t len, unsigned int attributes)
-{
-    mfn_t mfn = _mfn(PFN_DOWN(start));
-    unsigned int offs = start & (PAGE_SIZE - 1);
-    unsigned int nr = PFN_UP(offs + len);
-    void *ptr = __vmap(&mfn, nr, 1, 1, attributes, VMAP_DEFAULT);
-
-    if ( ptr == NULL )
-        return NULL;
-
-    return ptr + offs;
-}
-
-void *ioremap(paddr_t pa, size_t len)
-{
-    return ioremap_attr(pa, len, PAGE_HYPERVISOR_NOCACHE);
-}
-
-static int create_xen_table(lpae_t *entry)
-{
-    mfn_t mfn;
-    void *p;
-    lpae_t pte;
-
-    if ( system_state != SYS_STATE_early_boot )
-    {
-        struct page_info *pg = alloc_domheap_page(NULL, 0);
-
-        if ( pg == NULL )
-            return -ENOMEM;
-
-        mfn = page_to_mfn(pg);
-    }
-    else
-        mfn = alloc_boot_pages(1, 1);
-
-    p = xen_map_table(mfn);
-    clear_page(p);
-    xen_unmap_table(p);
-
-    pte = mfn_to_xen_entry(mfn, MT_NORMAL);
-    pte.pt.table = 1;
-    write_pte(entry, pte);
-    /*
-     * No ISB here. It is deferred to xen_pt_update() as the new table
-     * will not be used for hardware translation table access as part of
-     * the mapping update.
-     */
-
-    return 0;
-}
-
-#define XEN_TABLE_MAP_FAILED 0
-#define XEN_TABLE_SUPER_PAGE 1
-#define XEN_TABLE_NORMAL_PAGE 2
-
-/*
- * Take the currently mapped table, find the corresponding entry,
- * and map the next table, if available.
- *
- * The read_only parameters indicates whether intermediate tables should
- * be allocated when not present.
- *
- * Return values:
- *  XEN_TABLE_MAP_FAILED: Either read_only was set and the entry
- *  was empty, or allocating a new page failed.
- *  XEN_TABLE_NORMAL_PAGE: next level mapped normally
- *  XEN_TABLE_SUPER_PAGE: The next entry points to a superpage.
- */
-static int xen_pt_next_level(bool read_only, unsigned int level,
-                             lpae_t **table, unsigned int offset)
-{
-    lpae_t *entry;
-    int ret;
-    mfn_t mfn;
-
-    entry = *table + offset;
-
-    if ( !lpae_is_valid(*entry) )
-    {
-        if ( read_only )
-            return XEN_TABLE_MAP_FAILED;
-
-        ret = create_xen_table(entry);
-        if ( ret )
-            return XEN_TABLE_MAP_FAILED;
-    }
-
-    /* The function xen_pt_next_level is never called at the 3rd level */
-    if ( lpae_is_mapping(*entry, level) )
-        return XEN_TABLE_SUPER_PAGE;
-
-    mfn = lpae_get_mfn(*entry);
-
-    xen_unmap_table(*table);
-    *table = xen_map_table(mfn);
-
-    return XEN_TABLE_NORMAL_PAGE;
-}
-
-/* Sanity check of the entry */
-static bool xen_pt_check_entry(lpae_t entry, mfn_t mfn, unsigned int level,
-                               unsigned int flags)
-{
-    /* Sanity check when modifying an entry. */
-    if ( (flags & _PAGE_PRESENT) && mfn_eq(mfn, INVALID_MFN) )
-    {
-        /* We don't allow modifying an invalid entry. */
-        if ( !lpae_is_valid(entry) )
-        {
-            mm_printk("Modifying invalid entry is not allowed.\n");
-            return false;
-        }
-
-        /* We don't allow modifying a table entry */
-        if ( !lpae_is_mapping(entry, level) )
-        {
-            mm_printk("Modifying a table entry is not allowed.\n");
-            return false;
-        }
-
-        /* We don't allow changing memory attributes. */
-        if ( entry.pt.ai != PAGE_AI_MASK(flags) )
-        {
-            mm_printk("Modifying memory attributes is not allowed (0x%x -> 0x%x).\n",
-                      entry.pt.ai, PAGE_AI_MASK(flags));
-            return false;
-        }
-
-        /* We don't allow modifying entry with contiguous bit set. */
-        if ( entry.pt.contig )
-        {
-            mm_printk("Modifying entry with contiguous bit set is not allowed.\n");
-            return false;
-        }
-    }
-    /* Sanity check when inserting a mapping */
-    else if ( flags & _PAGE_PRESENT )
-    {
-        /* We should be here with a valid MFN. */
-        ASSERT(!mfn_eq(mfn, INVALID_MFN));
-
-        /*
-         * We don't allow replacing any valid entry.
-         *
-         * Note that the function xen_pt_update() relies on this
-         * assumption and will skip the TLB flush. The function will need
-         * to be updated if the check is relaxed.
-         */
-        if ( lpae_is_valid(entry) )
-        {
-            if ( lpae_is_mapping(entry, level) )
-                mm_printk("Changing MFN for a valid entry is not allowed (%#"PRI_mfn" -> %#"PRI_mfn").\n",
-                          mfn_x(lpae_get_mfn(entry)), mfn_x(mfn));
-            else
-                mm_printk("Trying to replace a table with a mapping.\n");
-            return false;
-        }
-    }
-    /* Sanity check when removing a mapping. */
-    else if ( (flags & (_PAGE_PRESENT|_PAGE_POPULATE)) == 0 )
-    {
-        /* We should be here with an invalid MFN. */
-        ASSERT(mfn_eq(mfn, INVALID_MFN));
-
-        /* We don't allow removing a table */
-        if ( lpae_is_table(entry, level) )
-        {
-            mm_printk("Removing a table is not allowed.\n");
-            return false;
-        }
-
-        /* We don't allow removing a mapping with contiguous bit set. */
-        if ( entry.pt.contig )
-        {
-            mm_printk("Removing entry with contiguous bit set is not allowed.\n");
-            return false;
-        }
-    }
-    /* Sanity check when populating the page-table. No check so far. */
-    else
-    {
-        ASSERT(flags & _PAGE_POPULATE);
-        /* We should be here with an invalid MFN */
-        ASSERT(mfn_eq(mfn, INVALID_MFN));
-    }
-
-    return true;
-}
-
-/* Update an entry at the level @target. */
-static int xen_pt_update_entry(mfn_t root, unsigned long virt,
-                               mfn_t mfn, unsigned int target,
-                               unsigned int flags)
-{
-    int rc;
-    unsigned int level;
-    lpae_t *table;
-    /*
-     * The intermediate page tables are read-only when the MFN is not valid
-     * and we are not populating page table.
-     * This means we either modify permissions or remove an entry.
-     */
-    bool read_only = mfn_eq(mfn, INVALID_MFN) && !(flags & _PAGE_POPULATE);
-    lpae_t pte, *entry;
-
-    /* convenience aliases */
-    DECLARE_OFFSETS(offsets, (paddr_t)virt);
-
-    /* _PAGE_POPULATE and _PAGE_PRESENT should never be set together. */
-    ASSERT((flags & (_PAGE_POPULATE|_PAGE_PRESENT)) != (_PAGE_POPULATE|_PAGE_PRESENT));
-
-    table = xen_map_table(root);
-    for ( level = HYP_PT_ROOT_LEVEL; level < target; level++ )
-    {
-        rc = xen_pt_next_level(read_only, level, &table, offsets[level]);
-        if ( rc == XEN_TABLE_MAP_FAILED )
-        {
-            /*
-             * We are here because xen_pt_next_level has failed to map
-             * the intermediate page table (e.g the table does not exist
-             * and the pt is read-only). It is a valid case when
-             * removing a mapping as it may not exist in the page table.
-             * In this case, just ignore it.
-             */
-            if ( flags & (_PAGE_PRESENT|_PAGE_POPULATE) )
-            {
-                mm_printk("%s: Unable to map level %u\n", __func__, level);
-                rc = -ENOENT;
-                goto out;
-            }
-            else
-            {
-                rc = 0;
-                goto out;
-            }
-        }
-        else if ( rc != XEN_TABLE_NORMAL_PAGE )
-            break;
-    }
-
-    if ( level != target )
-    {
-        mm_printk("%s: Shattering superpage is not supported\n", __func__);
-        rc = -EOPNOTSUPP;
-        goto out;
-    }
-
-    entry = table + offsets[level];
-
-    rc = -EINVAL;
-    if ( !xen_pt_check_entry(*entry, mfn, level, flags) )
-        goto out;
-
-    /* If we are only populating page-table, then we are done. */
-    rc = 0;
-    if ( flags & _PAGE_POPULATE )
-        goto out;
-
-    /* We are removing the page */
-    if ( !(flags & _PAGE_PRESENT) )
-        memset(&pte, 0x00, sizeof(pte));
-    else
-    {
-        /* We are inserting a mapping => Create new pte. */
-        if ( !mfn_eq(mfn, INVALID_MFN) )
-        {
-            pte = mfn_to_xen_entry(mfn, PAGE_AI_MASK(flags));
-
-            /*
-             * First and second level pages set pte.pt.table = 0, but
-             * third level entries set pte.pt.table = 1.
-             */
-            pte.pt.table = (level == 3);
-        }
-        else /* We are updating the permission => Copy the current pte. */
-            pte = *entry;
-
-        /* Set permission */
-        pte.pt.ro = PAGE_RO_MASK(flags);
-        pte.pt.xn = PAGE_XN_MASK(flags);
-        /* Set contiguous bit */
-        pte.pt.contig = !!(flags & _PAGE_CONTIG);
-    }
-
-    write_pte(entry, pte);
-    /*
-     * No ISB or TLB flush here. They are deferred to xen_pt_update()
-     * as the entry will not be used as part of the mapping update.
-     */
-
-    rc = 0;
-
-out:
-    xen_unmap_table(table);
-
-    return rc;
-}
-
-/* Return the level where mapping should be done */
-static int xen_pt_mapping_level(unsigned long vfn, mfn_t mfn, unsigned long nr,
-                                unsigned int flags)
-{
-    unsigned int level;
-    unsigned long mask;
-
-    /*
-      * Don't take into account the MFN when removing mapping (i.e
-      * MFN_INVALID) to calculate the correct target order.
-      *
-      * Per the Arm Arm, `vfn` and `mfn` must be both superpage aligned.
-      * They are or-ed together and then checked against the size of
-      * each level.
-      *
-      * `left` is not included and checked separately to allow
-      * superpage mapping even if it is not properly aligned (the
-      * user may have asked to map 2MB + 4k).
-      */
-     mask = !mfn_eq(mfn, INVALID_MFN) ? mfn_x(mfn) : 0;
-     mask |= vfn;
-
-     /*
-      * Always use level 3 mapping unless the caller request block
-      * mapping.
-      */
-     if ( likely(!(flags & _PAGE_BLOCK)) )
-         level = 3;
-     else if ( !(mask & (BIT(FIRST_ORDER, UL) - 1)) &&
-               (nr >= BIT(FIRST_ORDER, UL)) )
-         level = 1;
-     else if ( !(mask & (BIT(SECOND_ORDER, UL) - 1)) &&
-               (nr >= BIT(SECOND_ORDER, UL)) )
-         level = 2;
-     else
-         level = 3;
-
-     return level;
-}
-
-#define XEN_PT_4K_NR_CONTIG 16
-
-/*
- * Check whether the contiguous bit can be set. Return the number of
- * contiguous entry allowed. If not allowed, return 1.
- */
-static unsigned int xen_pt_check_contig(unsigned long vfn, mfn_t mfn,
-                                        unsigned int level, unsigned long left,
-                                        unsigned int flags)
-{
-    unsigned long nr_contig;
-
-    /*
-     * Allow the contiguous bit to set when the caller requests block
-     * mapping.
-     */
-    if ( !(flags & _PAGE_BLOCK) )
-        return 1;
-
-    /*
-     * We don't allow to remove mapping with the contiguous bit set.
-     * So shortcut the logic and directly return 1.
-     */
-    if ( mfn_eq(mfn, INVALID_MFN) )
-        return 1;
-
-    /*
-     * The number of contiguous entries varies depending on the page
-     * granularity used. The logic below assumes 4KB.
-     */
-    BUILD_BUG_ON(PAGE_SIZE != SZ_4K);
-
-    /*
-     * In order to enable the contiguous bit, we should have enough entries
-     * to map left and both the virtual and physical address should be
-     * aligned to the size of 16 translation tables entries.
-     */
-    nr_contig = BIT(XEN_PT_LEVEL_ORDER(level), UL) * XEN_PT_4K_NR_CONTIG;
-
-    if ( (left < nr_contig) || ((mfn_x(mfn) | vfn) & (nr_contig - 1)) )
-        return 1;
-
-    return XEN_PT_4K_NR_CONTIG;
-}
-
-static DEFINE_SPINLOCK(xen_pt_lock);
-
-static int xen_pt_update(unsigned long virt,
-                         mfn_t mfn,
-                         /* const on purpose as it is used for TLB flush */
-                         const unsigned long nr_mfns,
-                         unsigned int flags)
-{
-    int rc = 0;
-    unsigned long vfn = virt >> PAGE_SHIFT;
-    unsigned long left = nr_mfns;
-
-    /*
-     * For arm32, page-tables are different on each CPUs. Yet, they share
-     * some common mappings. It is assumed that only common mappings
-     * will be modified with this function.
-     *
-     * XXX: Add a check.
-     */
-    const mfn_t root = maddr_to_mfn(READ_SYSREG64(TTBR0_EL2));
-
-    /*
-     * The hardware was configured to forbid mapping both writeable and
-     * executable.
-     * When modifying/creating mapping (i.e _PAGE_PRESENT is set),
-     * prevent any update if this happen.
-     */
-    if ( (flags & _PAGE_PRESENT) && !PAGE_RO_MASK(flags) &&
-         !PAGE_XN_MASK(flags) )
-    {
-        mm_printk("Mappings should not be both Writeable and Executable.\n");
-        return -EINVAL;
-    }
-
-    if ( flags & _PAGE_CONTIG )
-    {
-        mm_printk("_PAGE_CONTIG is an internal only flag.\n");
-        return -EINVAL;
-    }
-
-    if ( !IS_ALIGNED(virt, PAGE_SIZE) )
-    {
-        mm_printk("The virtual address is not aligned to the page-size.\n");
-        return -EINVAL;
-    }
-
-    spin_lock(&xen_pt_lock);
-
-    while ( left )
-    {
-        unsigned int order, level, nr_contig, new_flags;
-
-        level = xen_pt_mapping_level(vfn, mfn, left, flags);
-        order = XEN_PT_LEVEL_ORDER(level);
-
-        ASSERT(left >= BIT(order, UL));
-
-        /*
-         * Check if we can set the contiguous mapping and update the
-         * flags accordingly.
-         */
-        nr_contig = xen_pt_check_contig(vfn, mfn, level, left, flags);
-        new_flags = flags | ((nr_contig > 1) ? _PAGE_CONTIG : 0);
-
-        for ( ; nr_contig > 0; nr_contig-- )
-        {
-            rc = xen_pt_update_entry(root, vfn << PAGE_SHIFT, mfn, level,
-                                     new_flags);
-            if ( rc )
-                break;
-
-            vfn += 1U << order;
-            if ( !mfn_eq(mfn, INVALID_MFN) )
-                mfn = mfn_add(mfn, 1U << order);
-
-            left -= (1U << order);
-        }
-
-        if ( rc )
-            break;
-    }
-
-    /*
-     * The TLBs flush can be safely skipped when a mapping is inserted
-     * as we don't allow mapping replacement (see xen_pt_check_entry()).
-     * Although we still need an ISB to ensure any DSB in
-     * write_pte() will complete because the mapping may be used soon
-     * after.
-     *
-     * For all the other cases, the TLBs will be flushed unconditionally
-     * even if the mapping has failed. This is because we may have
-     * partially modified the PT. This will prevent any unexpected
-     * behavior afterwards.
-     */
-    if ( !((flags & _PAGE_PRESENT) && !mfn_eq(mfn, INVALID_MFN)) )
-        flush_xen_tlb_range_va(virt, PAGE_SIZE * nr_mfns);
-    else
-        isb();
-
-    spin_unlock(&xen_pt_lock);
-
-    return rc;
-}
-
-int map_pages_to_xen(unsigned long virt,
-                     mfn_t mfn,
-                     unsigned long nr_mfns,
-                     unsigned int flags)
-{
-    return xen_pt_update(virt, mfn, nr_mfns, flags);
-}
-
-int __init populate_pt_range(unsigned long virt, unsigned long nr_mfns)
-{
-    return xen_pt_update(virt, INVALID_MFN, nr_mfns, _PAGE_POPULATE);
-}
-
-int destroy_xen_mappings(unsigned long s, unsigned long e)
-{
-    ASSERT(IS_ALIGNED(s, PAGE_SIZE));
-    ASSERT(IS_ALIGNED(e, PAGE_SIZE));
-    ASSERT(s <= e);
-    return xen_pt_update(s, INVALID_MFN, (e - s) >> PAGE_SHIFT, 0);
-}
-
-int modify_xen_mappings(unsigned long s, unsigned long e, unsigned int flags)
-{
-    ASSERT(IS_ALIGNED(s, PAGE_SIZE));
-    ASSERT(IS_ALIGNED(e, PAGE_SIZE));
-    ASSERT(s <= e);
-    return xen_pt_update(s, INVALID_MFN, (e - s) >> PAGE_SHIFT, flags);
-}
-
 /* Release all __init and __initdata ranges to be reused */
 void free_init_memory(void)
 {
diff --git a/xen/arch/arm/mmu/Makefile b/xen/arch/arm/mmu/Makefile
new file mode 100644
index 0000000000..bdfc2e077d
--- /dev/null
+++ b/xen/arch/arm/mmu/Makefile
@@ -0,0 +1 @@
+obj-y += pt.o
diff --git a/xen/arch/arm/mmu/pt.c b/xen/arch/arm/mmu/pt.c
new file mode 100644
index 0000000000..e6fc5ed45a
--- /dev/null
+++ b/xen/arch/arm/mmu/pt.c
@@ -0,0 +1,736 @@
+/* SPDX-License-Identifier: GPL-2.0-or-later */
+/*
+ * xen/arch/arm/mmu/pt.c
+ *
+ * MMU system page table related functions.
+ */
+
+#include <xen/domain_page.h>
+#include <xen/init.h>
+#include <xen/pfn.h>
+#include <xen/sizes.h>
+#include <xen/vmap.h>
+
+#include <asm/fixmap.h>
+
+#ifdef NDEBUG
+static inline void
+__attribute__ ((__format__ (__printf__, 1, 2)))
+mm_printk(const char *fmt, ...) {}
+#else
+#define mm_printk(fmt, args...)             \
+    do                                      \
+    {                                       \
+        dprintk(XENLOG_ERR, fmt, ## args);  \
+        WARN();                             \
+    } while (0)
+#endif
+
+#ifdef CONFIG_ARM_64
+#define HYP_PT_ROOT_LEVEL 0
+#else
+#define HYP_PT_ROOT_LEVEL 1
+#endif
+
+static lpae_t *xen_map_table(mfn_t mfn)
+{
+    /*
+     * During early boot, map_domain_page() may be unusable. Use the
+     * PMAP to map temporarily a page-table.
+     */
+    if ( system_state == SYS_STATE_early_boot )
+        return pmap_map(mfn);
+
+    return map_domain_page(mfn);
+}
+
+static void xen_unmap_table(const lpae_t *table)
+{
+    /*
+     * During early boot, xen_map_table() will not use map_domain_page()
+     * but the PMAP.
+     */
+    if ( system_state == SYS_STATE_early_boot )
+        pmap_unmap(table);
+    else
+        unmap_domain_page(table);
+}
+
+void dump_pt_walk(paddr_t ttbr, paddr_t addr,
+                  unsigned int root_level,
+                  unsigned int nr_root_tables)
+{
+    static const char *level_strs[4] = { "0TH", "1ST", "2ND", "3RD" };
+    const mfn_t root_mfn = maddr_to_mfn(ttbr);
+    DECLARE_OFFSETS(offsets, addr);
+    lpae_t pte, *mapping;
+    unsigned int level, root_table;
+
+#ifdef CONFIG_ARM_32
+    BUG_ON(root_level < 1);
+#endif
+    BUG_ON(root_level > 3);
+
+    if ( nr_root_tables > 1 )
+    {
+        /*
+         * Concatenated root-level tables. The table number will be
+         * the offset at the previous level. It is not possible to
+         * concatenate a level-0 root.
+         */
+        BUG_ON(root_level == 0);
+        root_table = offsets[root_level - 1];
+        printk("Using concatenated root table %u\n", root_table);
+        if ( root_table >= nr_root_tables )
+        {
+            printk("Invalid root table offset\n");
+            return;
+        }
+    }
+    else
+        root_table = 0;
+
+    mapping = xen_map_table(mfn_add(root_mfn, root_table));
+
+    for ( level = root_level; ; level++ )
+    {
+        if ( offsets[level] > XEN_PT_LPAE_ENTRIES )
+            break;
+
+        pte = mapping[offsets[level]];
+
+        printk("%s[0x%03x] = 0x%"PRIx64"\n",
+               level_strs[level], offsets[level], pte.bits);
+
+        if ( level == 3 || !pte.walk.valid || !pte.walk.table )
+            break;
+
+        /* For next iteration */
+        xen_unmap_table(mapping);
+        mapping = xen_map_table(lpae_get_mfn(pte));
+    }
+
+    xen_unmap_table(mapping);
+}
+
+void dump_hyp_walk(vaddr_t addr)
+{
+    uint64_t ttbr = READ_SYSREG64(TTBR0_EL2);
+
+    printk("Walking Hypervisor VA 0x%"PRIvaddr" "
+           "on CPU%d via TTBR 0x%016"PRIx64"\n",
+           addr, smp_processor_id(), ttbr);
+
+    dump_pt_walk(ttbr, addr, HYP_PT_ROOT_LEVEL, 1);
+}
+
+lpae_t mfn_to_xen_entry(mfn_t mfn, unsigned int attr)
+{
+    lpae_t e = (lpae_t) {
+        .pt = {
+            .valid = 1,           /* Mappings are present */
+            .table = 0,           /* Set to 1 for links and 4k maps */
+            .ai = attr,
+            .ns = 1,              /* Hyp mode is in the non-secure world */
+            .up = 1,              /* See below */
+            .ro = 0,              /* Assume read-write */
+            .af = 1,              /* No need for access tracking */
+            .ng = 1,              /* Makes TLB flushes easier */
+            .contig = 0,          /* Assume non-contiguous */
+            .xn = 1,              /* No need to execute outside .text */
+            .avail = 0,           /* Reference count for domheap mapping */
+        }};
+    /*
+     * For EL2 stage-1 page table, up (aka AP[1]) is RES1 as the translation
+     * regime applies to only one exception level (see D4.4.4 and G4.6.1
+     * in ARM DDI 0487B.a). If this changes, remember to update the
+     * hard-coded values in head.S too.
+     */
+
+    switch ( attr )
+    {
+    case MT_NORMAL_NC:
+        /*
+         * ARM ARM: Overlaying the shareability attribute (DDI
+         * 0406C.b B3-1376 to 1377)
+         *
+         * A memory region with a resultant memory type attribute of Normal,
+         * and a resultant cacheability attribute of Inner Non-cacheable,
+         * Outer Non-cacheable, must have a resultant shareability attribute
+         * of Outer Shareable, otherwise shareability is UNPREDICTABLE.
+         *
+         * On ARMv8 sharability is ignored and explicitly treated as Outer
+         * Shareable for Normal Inner Non_cacheable, Outer Non-cacheable.
+         */
+        e.pt.sh = LPAE_SH_OUTER;
+        break;
+    case MT_DEVICE_nGnRnE:
+    case MT_DEVICE_nGnRE:
+        /*
+         * Shareability is ignored for non-Normal memory, Outer is as
+         * good as anything.
+         *
+         * On ARMv8 sharability is ignored and explicitly treated as Outer
+         * Shareable for any device memory type.
+         */
+        e.pt.sh = LPAE_SH_OUTER;
+        break;
+    default:
+        e.pt.sh = LPAE_SH_INNER;  /* Xen mappings are SMP coherent */
+        break;
+    }
+
+    ASSERT(!(mfn_to_maddr(mfn) & ~PADDR_MASK));
+
+    lpae_set_mfn(e, mfn);
+
+    return e;
+}
+
+/* Map a 4k page in a fixmap entry */
+void set_fixmap(unsigned int map, mfn_t mfn, unsigned int flags)
+{
+    int res;
+
+    res = map_pages_to_xen(FIXMAP_ADDR(map), mfn, 1, flags);
+    BUG_ON(res != 0);
+}
+
+/* Remove a mapping from a fixmap entry */
+void clear_fixmap(unsigned int map)
+{
+    int res;
+
+    res = destroy_xen_mappings(FIXMAP_ADDR(map), FIXMAP_ADDR(map) + PAGE_SIZE);
+    BUG_ON(res != 0);
+}
+
+/*
+ * This function should only be used to remap device address ranges
+ * TODO: add a check to verify this assumption
+ */
+void *ioremap_attr(paddr_t start, size_t len, unsigned int attributes)
+{
+    mfn_t mfn = _mfn(PFN_DOWN(start));
+    unsigned int offs = start & (PAGE_SIZE - 1);
+    unsigned int nr = PFN_UP(offs + len);
+    void *ptr = __vmap(&mfn, nr, 1, 1, attributes, VMAP_DEFAULT);
+
+    if ( ptr == NULL )
+        return NULL;
+
+    return ptr + offs;
+}
+
+void *ioremap(paddr_t pa, size_t len)
+{
+    return ioremap_attr(pa, len, PAGE_HYPERVISOR_NOCACHE);
+}
+
+static int create_xen_table(lpae_t *entry)
+{
+    mfn_t mfn;
+    void *p;
+    lpae_t pte;
+
+    if ( system_state != SYS_STATE_early_boot )
+    {
+        struct page_info *pg = alloc_domheap_page(NULL, 0);
+
+        if ( pg == NULL )
+            return -ENOMEM;
+
+        mfn = page_to_mfn(pg);
+    }
+    else
+        mfn = alloc_boot_pages(1, 1);
+
+    p = xen_map_table(mfn);
+    clear_page(p);
+    xen_unmap_table(p);
+
+    pte = mfn_to_xen_entry(mfn, MT_NORMAL);
+    pte.pt.table = 1;
+    write_pte(entry, pte);
+    /*
+     * No ISB here. It is deferred to xen_pt_update() as the new table
+     * will not be used for hardware translation table access as part of
+     * the mapping update.
+     */
+
+    return 0;
+}
+
+#define XEN_TABLE_MAP_FAILED 0
+#define XEN_TABLE_SUPER_PAGE 1
+#define XEN_TABLE_NORMAL_PAGE 2
+
+/*
+ * Take the currently mapped table, find the corresponding entry,
+ * and map the next table, if available.
+ *
+ * The read_only parameters indicates whether intermediate tables should
+ * be allocated when not present.
+ *
+ * Return values:
+ *  XEN_TABLE_MAP_FAILED: Either read_only was set and the entry
+ *  was empty, or allocating a new page failed.
+ *  XEN_TABLE_NORMAL_PAGE: next level mapped normally
+ *  XEN_TABLE_SUPER_PAGE: The next entry points to a superpage.
+ */
+static int xen_pt_next_level(bool read_only, unsigned int level,
+                             lpae_t **table, unsigned int offset)
+{
+    lpae_t *entry;
+    int ret;
+    mfn_t mfn;
+
+    entry = *table + offset;
+
+    if ( !lpae_is_valid(*entry) )
+    {
+        if ( read_only )
+            return XEN_TABLE_MAP_FAILED;
+
+        ret = create_xen_table(entry);
+        if ( ret )
+            return XEN_TABLE_MAP_FAILED;
+    }
+
+    /* The function xen_pt_next_level is never called at the 3rd level */
+    if ( lpae_is_mapping(*entry, level) )
+        return XEN_TABLE_SUPER_PAGE;
+
+    mfn = lpae_get_mfn(*entry);
+
+    xen_unmap_table(*table);
+    *table = xen_map_table(mfn);
+
+    return XEN_TABLE_NORMAL_PAGE;
+}
+
+/* Sanity check of the entry */
+static bool xen_pt_check_entry(lpae_t entry, mfn_t mfn, unsigned int level,
+                               unsigned int flags)
+{
+    /* Sanity check when modifying an entry. */
+    if ( (flags & _PAGE_PRESENT) && mfn_eq(mfn, INVALID_MFN) )
+    {
+        /* We don't allow modifying an invalid entry. */
+        if ( !lpae_is_valid(entry) )
+        {
+            mm_printk("Modifying invalid entry is not allowed.\n");
+            return false;
+        }
+
+        /* We don't allow modifying a table entry */
+        if ( !lpae_is_mapping(entry, level) )
+        {
+            mm_printk("Modifying a table entry is not allowed.\n");
+            return false;
+        }
+
+        /* We don't allow changing memory attributes. */
+        if ( entry.pt.ai != PAGE_AI_MASK(flags) )
+        {
+            mm_printk("Modifying memory attributes is not allowed (0x%x -> 0x%x).\n",
+                      entry.pt.ai, PAGE_AI_MASK(flags));
+            return false;
+        }
+
+        /* We don't allow modifying entry with contiguous bit set. */
+        if ( entry.pt.contig )
+        {
+            mm_printk("Modifying entry with contiguous bit set is not allowed.\n");
+            return false;
+        }
+    }
+    /* Sanity check when inserting a mapping */
+    else if ( flags & _PAGE_PRESENT )
+    {
+        /* We should be here with a valid MFN. */
+        ASSERT(!mfn_eq(mfn, INVALID_MFN));
+
+        /*
+         * We don't allow replacing any valid entry.
+         *
+         * Note that the function xen_pt_update() relies on this
+         * assumption and will skip the TLB flush. The function will need
+         * to be updated if the check is relaxed.
+         */
+        if ( lpae_is_valid(entry) )
+        {
+            if ( lpae_is_mapping(entry, level) )
+                mm_printk("Changing MFN for a valid entry is not allowed (%#"PRI_mfn" -> %#"PRI_mfn").\n",
+                          mfn_x(lpae_get_mfn(entry)), mfn_x(mfn));
+            else
+                mm_printk("Trying to replace a table with a mapping.\n");
+            return false;
+        }
+    }
+    /* Sanity check when removing a mapping. */
+    else if ( (flags & (_PAGE_PRESENT|_PAGE_POPULATE)) == 0 )
+    {
+        /* We should be here with an invalid MFN. */
+        ASSERT(mfn_eq(mfn, INVALID_MFN));
+
+        /* We don't allow removing a table */
+        if ( lpae_is_table(entry, level) )
+        {
+            mm_printk("Removing a table is not allowed.\n");
+            return false;
+        }
+
+        /* We don't allow removing a mapping with contiguous bit set. */
+        if ( entry.pt.contig )
+        {
+            mm_printk("Removing entry with contiguous bit set is not allowed.\n");
+            return false;
+        }
+    }
+    /* Sanity check when populating the page-table. No check so far. */
+    else
+    {
+        ASSERT(flags & _PAGE_POPULATE);
+        /* We should be here with an invalid MFN */
+        ASSERT(mfn_eq(mfn, INVALID_MFN));
+    }
+
+    return true;
+}
+
+/* Update an entry at the level @target. */
+static int xen_pt_update_entry(mfn_t root, unsigned long virt,
+                               mfn_t mfn, unsigned int target,
+                               unsigned int flags)
+{
+    int rc;
+    unsigned int level;
+    lpae_t *table;
+    /*
+     * The intermediate page tables are read-only when the MFN is not valid
+     * and we are not populating page table.
+     * This means we either modify permissions or remove an entry.
+     */
+    bool read_only = mfn_eq(mfn, INVALID_MFN) && !(flags & _PAGE_POPULATE);
+    lpae_t pte, *entry;
+
+    /* convenience aliases */
+    DECLARE_OFFSETS(offsets, (paddr_t)virt);
+
+    /* _PAGE_POPULATE and _PAGE_PRESENT should never be set together. */
+    ASSERT((flags & (_PAGE_POPULATE|_PAGE_PRESENT)) != (_PAGE_POPULATE|_PAGE_PRESENT));
+
+    table = xen_map_table(root);
+    for ( level = HYP_PT_ROOT_LEVEL; level < target; level++ )
+    {
+        rc = xen_pt_next_level(read_only, level, &table, offsets[level]);
+        if ( rc == XEN_TABLE_MAP_FAILED )
+        {
+            /*
+             * We are here because xen_pt_next_level has failed to map
+             * the intermediate page table (e.g the table does not exist
+             * and the pt is read-only). It is a valid case when
+             * removing a mapping as it may not exist in the page table.
+             * In this case, just ignore it.
+             */
+            if ( flags & (_PAGE_PRESENT|_PAGE_POPULATE) )
+            {
+                mm_printk("%s: Unable to map level %u\n", __func__, level);
+                rc = -ENOENT;
+                goto out;
+            }
+            else
+            {
+                rc = 0;
+                goto out;
+            }
+        }
+        else if ( rc != XEN_TABLE_NORMAL_PAGE )
+            break;
+    }
+
+    if ( level != target )
+    {
+        mm_printk("%s: Shattering superpage is not supported\n", __func__);
+        rc = -EOPNOTSUPP;
+        goto out;
+    }
+
+    entry = table + offsets[level];
+
+    rc = -EINVAL;
+    if ( !xen_pt_check_entry(*entry, mfn, level, flags) )
+        goto out;
+
+    /* If we are only populating page-table, then we are done. */
+    rc = 0;
+    if ( flags & _PAGE_POPULATE )
+        goto out;
+
+    /* We are removing the page */
+    if ( !(flags & _PAGE_PRESENT) )
+        memset(&pte, 0x00, sizeof(pte));
+    else
+    {
+        /* We are inserting a mapping => Create new pte. */
+        if ( !mfn_eq(mfn, INVALID_MFN) )
+        {
+            pte = mfn_to_xen_entry(mfn, PAGE_AI_MASK(flags));
+
+            /*
+             * First and second level pages set pte.pt.table = 0, but
+             * third level entries set pte.pt.table = 1.
+             */
+            pte.pt.table = (level == 3);
+        }
+        else /* We are updating the permission => Copy the current pte. */
+            pte = *entry;
+
+        /* Set permission */
+        pte.pt.ro = PAGE_RO_MASK(flags);
+        pte.pt.xn = PAGE_XN_MASK(flags);
+        /* Set contiguous bit */
+        pte.pt.contig = !!(flags & _PAGE_CONTIG);
+    }
+
+    write_pte(entry, pte);
+    /*
+     * No ISB or TLB flush here. They are deferred to xen_pt_update()
+     * as the entry will not be used as part of the mapping update.
+     */
+
+    rc = 0;
+
+out:
+    xen_unmap_table(table);
+
+    return rc;
+}
+
+/* Return the level where mapping should be done */
+static int xen_pt_mapping_level(unsigned long vfn, mfn_t mfn, unsigned long nr,
+                                unsigned int flags)
+{
+    unsigned int level;
+    unsigned long mask;
+
+    /*
+      * Don't take into account the MFN when removing mapping (i.e
+      * MFN_INVALID) to calculate the correct target order.
+      *
+      * Per the Arm Arm, `vfn` and `mfn` must be both superpage aligned.
+      * They are or-ed together and then checked against the size of
+      * each level.
+      *
+      * `left` is not included and checked separately to allow
+      * superpage mapping even if it is not properly aligned (the
+      * user may have asked to map 2MB + 4k).
+      */
+     mask = !mfn_eq(mfn, INVALID_MFN) ? mfn_x(mfn) : 0;
+     mask |= vfn;
+
+     /*
+      * Always use level 3 mapping unless the caller request block
+      * mapping.
+      */
+     if ( likely(!(flags & _PAGE_BLOCK)) )
+         level = 3;
+     else if ( !(mask & (BIT(FIRST_ORDER, UL) - 1)) &&
+               (nr >= BIT(FIRST_ORDER, UL)) )
+         level = 1;
+     else if ( !(mask & (BIT(SECOND_ORDER, UL) - 1)) &&
+               (nr >= BIT(SECOND_ORDER, UL)) )
+         level = 2;
+     else
+         level = 3;
+
+     return level;
+}
+
+#define XEN_PT_4K_NR_CONTIG 16
+
+/*
+ * Check whether the contiguous bit can be set. Return the number of
+ * contiguous entry allowed. If not allowed, return 1.
+ */
+static unsigned int xen_pt_check_contig(unsigned long vfn, mfn_t mfn,
+                                        unsigned int level, unsigned long left,
+                                        unsigned int flags)
+{
+    unsigned long nr_contig;
+
+    /*
+     * Allow the contiguous bit to set when the caller requests block
+     * mapping.
+     */
+    if ( !(flags & _PAGE_BLOCK) )
+        return 1;
+
+    /*
+     * We don't allow to remove mapping with the contiguous bit set.
+     * So shortcut the logic and directly return 1.
+     */
+    if ( mfn_eq(mfn, INVALID_MFN) )
+        return 1;
+
+    /*
+     * The number of contiguous entries varies depending on the page
+     * granularity used. The logic below assumes 4KB.
+     */
+    BUILD_BUG_ON(PAGE_SIZE != SZ_4K);
+
+    /*
+     * In order to enable the contiguous bit, we should have enough entries
+     * to map left and both the virtual and physical address should be
+     * aligned to the size of 16 translation tables entries.
+     */
+    nr_contig = BIT(XEN_PT_LEVEL_ORDER(level), UL) * XEN_PT_4K_NR_CONTIG;
+
+    if ( (left < nr_contig) || ((mfn_x(mfn) | vfn) & (nr_contig - 1)) )
+        return 1;
+
+    return XEN_PT_4K_NR_CONTIG;
+}
+
+static DEFINE_SPINLOCK(xen_pt_lock);
+
+static int xen_pt_update(unsigned long virt,
+                         mfn_t mfn,
+                         /* const on purpose as it is used for TLB flush */
+                         const unsigned long nr_mfns,
+                         unsigned int flags)
+{
+    int rc = 0;
+    unsigned long vfn = virt >> PAGE_SHIFT;
+    unsigned long left = nr_mfns;
+
+    /*
+     * For arm32, page-tables are different on each CPUs. Yet, they share
+     * some common mappings. It is assumed that only common mappings
+     * will be modified with this function.
+     *
+     * XXX: Add a check.
+     */
+    const mfn_t root = maddr_to_mfn(READ_SYSREG64(TTBR0_EL2));
+
+    /*
+     * The hardware was configured to forbid mapping both writeable and
+     * executable.
+     * When modifying/creating mapping (i.e _PAGE_PRESENT is set),
+     * prevent any update if this happen.
+     */
+    if ( (flags & _PAGE_PRESENT) && !PAGE_RO_MASK(flags) &&
+         !PAGE_XN_MASK(flags) )
+    {
+        mm_printk("Mappings should not be both Writeable and Executable.\n");
+        return -EINVAL;
+    }
+
+    if ( flags & _PAGE_CONTIG )
+    {
+        mm_printk("_PAGE_CONTIG is an internal only flag.\n");
+        return -EINVAL;
+    }
+
+    if ( !IS_ALIGNED(virt, PAGE_SIZE) )
+    {
+        mm_printk("The virtual address is not aligned to the page-size.\n");
+        return -EINVAL;
+    }
+
+    spin_lock(&xen_pt_lock);
+
+    while ( left )
+    {
+        unsigned int order, level, nr_contig, new_flags;
+
+        level = xen_pt_mapping_level(vfn, mfn, left, flags);
+        order = XEN_PT_LEVEL_ORDER(level);
+
+        ASSERT(left >= BIT(order, UL));
+
+        /*
+         * Check if we can set the contiguous mapping and update the
+         * flags accordingly.
+         */
+        nr_contig = xen_pt_check_contig(vfn, mfn, level, left, flags);
+        new_flags = flags | ((nr_contig > 1) ? _PAGE_CONTIG : 0);
+
+        for ( ; nr_contig > 0; nr_contig-- )
+        {
+            rc = xen_pt_update_entry(root, vfn << PAGE_SHIFT, mfn, level,
+                                     new_flags);
+            if ( rc )
+                break;
+
+            vfn += 1U << order;
+            if ( !mfn_eq(mfn, INVALID_MFN) )
+                mfn = mfn_add(mfn, 1U << order);
+
+            left -= (1U << order);
+        }
+
+        if ( rc )
+            break;
+    }
+
+    /*
+     * The TLBs flush can be safely skipped when a mapping is inserted
+     * as we don't allow mapping replacement (see xen_pt_check_entry()).
+     * Although we still need an ISB to ensure any DSB in
+     * write_pte() will complete because the mapping may be used soon
+     * after.
+     *
+     * For all the other cases, the TLBs will be flushed unconditionally
+     * even if the mapping has failed. This is because we may have
+     * partially modified the PT. This will prevent any unexpected
+     * behavior afterwards.
+     */
+    if ( !((flags & _PAGE_PRESENT) && !mfn_eq(mfn, INVALID_MFN)) )
+        flush_xen_tlb_range_va(virt, PAGE_SIZE * nr_mfns);
+    else
+        isb();
+
+    spin_unlock(&xen_pt_lock);
+
+    return rc;
+}
+
+int map_pages_to_xen(unsigned long virt,
+                     mfn_t mfn,
+                     unsigned long nr_mfns,
+                     unsigned int flags)
+{
+    return xen_pt_update(virt, mfn, nr_mfns, flags);
+}
+
+int __init populate_pt_range(unsigned long virt, unsigned long nr_mfns)
+{
+    return xen_pt_update(virt, INVALID_MFN, nr_mfns, _PAGE_POPULATE);
+}
+
+int destroy_xen_mappings(unsigned long s, unsigned long e)
+{
+    ASSERT(IS_ALIGNED(s, PAGE_SIZE));
+    ASSERT(IS_ALIGNED(e, PAGE_SIZE));
+    ASSERT(s <= e);
+    return xen_pt_update(s, INVALID_MFN, (e - s) >> PAGE_SHIFT, 0);
+}
+
+int modify_xen_mappings(unsigned long s, unsigned long e, unsigned int flags)
+{
+    ASSERT(IS_ALIGNED(s, PAGE_SIZE));
+    ASSERT(IS_ALIGNED(e, PAGE_SIZE));
+    ASSERT(s <= e);
+    return xen_pt_update(s, INVALID_MFN, (e - s) >> PAGE_SHIFT, flags);
+}
+
+/*
+ * 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 Mon Oct 23 02:14:17 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 02:14:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.620925.966808 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qukSP-0002NT-Sy; Mon, 23 Oct 2023 02:14:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 620925.966808; Mon, 23 Oct 2023 02:14: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 1qukSP-0002NI-Pq; Mon, 23 Oct 2023 02:14:17 +0000
Received: by outflank-mailman (input) for mailman id 620925;
 Mon, 23 Oct 2023 02:14: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=JdWI=GF=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qukSO-0001F1-3V
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 02:14:16 +0000
Received: from foss.arm.com (foss.arm.com [217.140.110.172])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTP
 id dc370c77-7149-11ee-98d5-6d05b1d4d9a1;
 Mon, 23 Oct 2023 04:14:13 +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 1E4622F4;
 Sun, 22 Oct 2023 19:14:54 -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 3FE1A3F738;
 Sun, 22 Oct 2023 19:14: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: dc370c77-7149-11ee-98d5-6d05b1d4d9a1
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>,
	Bertrand Marquis <bertrand.marquis@arm.com>,
	Wei Chen <wei.chen@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Penny Zheng <penny.zheng@arm.com>,
	Julien Grall <jgrall@amazon.com>
Subject: [PATCH v8 4/8] xen/arm: Extract MMU-specific MM code
Date: Mon, 23 Oct 2023 10:13:41 +0800
Message-Id: <20231023021345.1731436-5-Henry.Wang@arm.com>
X-Mailer: git-send-email 2.25.1
In-Reply-To: <20231023021345.1731436-1-Henry.Wang@arm.com>
References: <20231023021345.1731436-1-Henry.Wang@arm.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

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.
While moving, mark pte_of_xenaddr() as __init to make clear that
this helper is only intended to be used during early boot.

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, declaration of global variable init_ttbr 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>
Acked-by: Julien Grall <jgrall@amazon.com>
---
v8:
- Add Julien's Acked-by tag.
v7:
- Move pte_of_xenaddr() to mmu/setup.c and mark it as __init.
- Also move the declaration of init_ttbr to asm/mmu/mm.h.
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     |  25 +-
 xen/arch/arm/include/asm/mmu/mm.h |  50 ++++
 xen/arch/arm/include/asm/page.h   |  15 --
 xen/arch/arm/mm.c                 | 385 ------------------------------
 xen/arch/arm/mmu/Makefile         |   1 +
 xen/arch/arm/mmu/setup.c          | 349 +++++++++++++++++++++++++++
 12 files changed, 477 insertions(+), 420 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 163d22ecd3..d23ebc7df6 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)
 
@@ -165,16 +171,6 @@ struct page_info
 #define _PGC_need_scrub   _PGC_allocated
 #define PGC_need_scrub    PGC_allocated
 
-/* Non-boot CPUs use this to find the correct pagetables. */
-extern uint64_t init_ttbr;
-
-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) ({                                 \
@@ -197,7 +193,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;
 
@@ -207,19 +202,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..439ae314fd
--- /dev/null
+++ b/xen/arch/arm/include/asm/mmu/mm.h
@@ -0,0 +1,50 @@
+/* SPDX-License-Identifier: GPL-2.0-or-later */
+#ifndef __ARM_MMU_MM_H__
+#define __ARM_MMU_MM_H__
+
+/* Non-boot CPUs use this to find the correct pagetables. */
+extern uint64_t init_ttbr;
+
+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
+
+#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 aa0080e8d7..ebaf5964f1 100644
--- a/xen/arch/arm/include/asm/page.h
+++ b/xen/arch/arm/include/asm/page.h
@@ -264,21 +264,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 923a90925c..eeb65ca6bb 100644
--- a/xen/arch/arm/mm.c
+++ b/xen/arch/arm/mm.c
@@ -11,136 +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 */
-static 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));
-
-static 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));
@@ -160,229 +43,6 @@ void flush_page_to_ram(unsigned long mfn, bool sync_icache)
         invalidate_icache();
 }
 
-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);
-}
-
-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)
 {
@@ -422,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..c2df976ab2
--- /dev/null
+++ b/xen/arch/arm/mmu/setup.c
@@ -0,0 +1,349 @@
+/* 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 */
+static 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));
+
+static 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
+}
+
+lpae_t __init pte_of_xenaddr(vaddr_t va)
+{
+    paddr_t ma = va + phys_offset;
+
+    return mfn_to_xen_entry(maddr_to_mfn(ma), MT_NORMAL);
+}
+
+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 Mon Oct 23 02:14:22 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 02:14:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.620928.966818 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qukSU-0002nV-B4; Mon, 23 Oct 2023 02:14:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 620928.966818; Mon, 23 Oct 2023 02:14: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 1qukSU-0002nI-6w; Mon, 23 Oct 2023 02:14:22 +0000
Received: by outflank-mailman (input) for mailman id 620928;
 Mon, 23 Oct 2023 02:14: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=JdWI=GF=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qukSS-0001U7-RL
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 02:14:20 +0000
Received: from foss.arm.com (foss.arm.com [217.140.110.172])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTP
 id decbb2c2-7149-11ee-9b0e-b553b5be7939;
 Mon, 23 Oct 2023 04:14:18 +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 403112F4;
 Sun, 22 Oct 2023 19:14:58 -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 62DF43F738;
 Sun, 22 Oct 2023 19:14: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: decbb2c2-7149-11ee-9b0e-b553b5be7939
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>,
	Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Penny Zheng <penny.zheng@arm.com>,
	Wei Chen <wei.chen@arm.com>,
	Julien Grall <jgrall@amazon.com>
Subject: [PATCH v8 5/8] xen/arm: Split MMU-specific setup_mm() and related code out
Date: Mon, 23 Oct 2023 10:13:42 +0800
Message-Id: <20231023021345.1731436-6-Henry.Wang@arm.com>
X-Mailer: git-send-email 2.25.1
In-Reply-To: <20231023021345.1731436-1-Henry.Wang@arm.com>
References: <20231023021345.1731436-1-Henry.Wang@arm.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

setup_mm() is used for Xen to setup memory management subsystem,
such as boot allocator, direct-mapping, xenheap initialization,
frametable and static memory pages, at boot time.

We could inherit some components seamlessly for MPU support, such
as the setup of boot allocator, whilst we need to implement some
components differently for MPU, such as xenheap, etc. Also, there
are some components that is specific to MMU only, for example the
direct-mapping.

Therefore in this commit, we split the MMU-specific setup_mm() and
related code out. Since arm32 and arm64 have completely different
setup_mm() implementation, take the opportunity to split the
arch-specific setup_mm() to arch-specific files, so that we can
avoid #ifdef. Also, make init_pdx(), init_staticmem_pages(), and
populate_boot_allocator() public as these functions are now called
from two different units, and make setup_mm() public for future MPU
implementation.

With above code movement, mark setup_directmap_mappings() as static
because the only caller of this function is now in the same file
with it. Drop the original setup_directmap_mappings() declaration
and move the in-code comment on top of the declaration on top of
the function implementation.

Signed-off-by: Henry Wang <Henry.Wang@arm.com>
Signed-off-by: Penny Zheng <penny.zheng@arm.com>
Signed-off-by: Wei Chen <wei.chen@arm.com>
Acked-by: Julien Grall <jgrall@amazon.com>
---
v8:
- Reword the commit message about making init_pdx() & co public.
- Add Julien's Acked-by tag.
v7:
- No change.
v6:
- Rework the original patch:
  [v5,10/13] xen/arm: mmu: move MMU-specific setup_mm to mmu/setup.c
---
 xen/arch/arm/arm32/mmu/mm.c       | 278 ++++++++++++++++++++++++-
 xen/arch/arm/arm64/mmu/mm.c       |  51 ++++-
 xen/arch/arm/include/asm/mmu/mm.h |   6 -
 xen/arch/arm/include/asm/setup.h  |   5 +
 xen/arch/arm/setup.c              | 324 +-----------------------------
 5 files changed, 331 insertions(+), 333 deletions(-)

diff --git a/xen/arch/arm/arm32/mmu/mm.c b/xen/arch/arm/arm32/mmu/mm.c
index 647baf4a81..94d6cab49c 100644
--- a/xen/arch/arm/arm32/mmu/mm.c
+++ b/xen/arch/arm/arm32/mmu/mm.c
@@ -1,14 +1,21 @@
 /* SPDX-License-Identifier: GPL-2.0 */
 
 #include <xen/init.h>
+#include <xen/lib.h>
+#include <xen/libfdt/libfdt-xen.h>
+#include <xen/param.h>
+#include <xen/pfn.h>
 #include <asm/fixmap.h>
 
+static unsigned long opt_xenheap_megabytes __initdata;
+integer_param("xenheap_megabytes", opt_xenheap_megabytes);
+
 /*
- * Set up the direct-mapped xenheap:
- * up to 1GB of contiguous, always-mapped memory.
+ * 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.
  */
-void __init setup_directmap_mappings(unsigned long base_mfn,
-                                     unsigned long nr_mfns)
+static void __init setup_directmap_mappings(unsigned long base_mfn,
+                                            unsigned long nr_mfns)
 {
     int rc;
 
@@ -21,6 +28,269 @@ void __init setup_directmap_mappings(unsigned long base_mfn,
     directmap_virt_end = XENHEAP_VIRT_START + nr_mfns * PAGE_SIZE;
 }
 
+/*
+ * Returns the end address of the highest region in the range s..e
+ * with required size and alignment that does not conflict with the
+ * modules from first_mod to nr_modules.
+ *
+ * For non-recursive callers first_mod should normally be 0 (all
+ * modules and Xen itself) or 1 (all modules but not Xen).
+ */
+static paddr_t __init consider_modules(paddr_t s, paddr_t e,
+                                       uint32_t size, paddr_t align,
+                                       int first_mod)
+{
+    const struct bootmodules *mi = &bootinfo.modules;
+    int i;
+    int nr;
+
+    s = (s+align-1) & ~(align-1);
+    e = e & ~(align-1);
+
+    if ( s > e ||  e - s < size )
+        return 0;
+
+    /* First check the boot modules */
+    for ( i = first_mod; i < mi->nr_mods; i++ )
+    {
+        paddr_t mod_s = mi->module[i].start;
+        paddr_t mod_e = mod_s + mi->module[i].size;
+
+        if ( s < mod_e && mod_s < e )
+        {
+            mod_e = consider_modules(mod_e, e, size, align, i+1);
+            if ( mod_e )
+                return mod_e;
+
+            return consider_modules(s, mod_s, size, align, i+1);
+        }
+    }
+
+    /* Now check any fdt reserved areas. */
+
+    nr = fdt_num_mem_rsv(device_tree_flattened);
+
+    for ( ; i < mi->nr_mods + nr; i++ )
+    {
+        paddr_t mod_s, mod_e;
+
+        if ( fdt_get_mem_rsv_paddr(device_tree_flattened,
+                                   i - mi->nr_mods,
+                                   &mod_s, &mod_e ) < 0 )
+            /* If we can't read it, pretend it doesn't exist... */
+            continue;
+
+        /* fdt_get_mem_rsv_paddr returns length */
+        mod_e += mod_s;
+
+        if ( s < mod_e && mod_s < e )
+        {
+            mod_e = consider_modules(mod_e, e, size, align, i+1);
+            if ( mod_e )
+                return mod_e;
+
+            return consider_modules(s, mod_s, size, align, i+1);
+        }
+    }
+
+    /*
+     * i is the current bootmodule we are evaluating, across all
+     * possible kinds of bootmodules.
+     *
+     * When retrieving the corresponding reserved-memory addresses, we
+     * need to index the bootinfo.reserved_mem bank starting from 0, and
+     * only counting the reserved-memory modules. Hence, we need to use
+     * i - nr.
+     */
+    nr += mi->nr_mods;
+    for ( ; i - nr < bootinfo.reserved_mem.nr_banks; i++ )
+    {
+        paddr_t r_s = bootinfo.reserved_mem.bank[i - nr].start;
+        paddr_t r_e = r_s + bootinfo.reserved_mem.bank[i - nr].size;
+
+        if ( s < r_e && r_s < e )
+        {
+            r_e = consider_modules(r_e, e, size, align, i + 1);
+            if ( r_e )
+                return r_e;
+
+            return consider_modules(s, r_s, size, align, i + 1);
+        }
+    }
+    return e;
+}
+
+/*
+ * Find a contiguous region that fits in the static heap region with
+ * required size and alignment, and return the end address of the region
+ * if found otherwise 0.
+ */
+static paddr_t __init fit_xenheap_in_static_heap(uint32_t size, paddr_t align)
+{
+    unsigned int i;
+    paddr_t end = 0, aligned_start, aligned_end;
+    paddr_t bank_start, bank_size, bank_end;
+
+    for ( i = 0 ; i < bootinfo.reserved_mem.nr_banks; i++ )
+    {
+        if ( bootinfo.reserved_mem.bank[i].type != MEMBANK_STATIC_HEAP )
+            continue;
+
+        bank_start = bootinfo.reserved_mem.bank[i].start;
+        bank_size = bootinfo.reserved_mem.bank[i].size;
+        bank_end = bank_start + bank_size;
+
+        if ( bank_size < size )
+            continue;
+
+        aligned_end = bank_end & ~(align - 1);
+        aligned_start = (aligned_end - size) & ~(align - 1);
+
+        if ( aligned_start > bank_start )
+            /*
+             * Allocate the xenheap as high as possible to keep low-memory
+             * available (assuming the admin supplied region below 4GB)
+             * for other use (e.g. domain memory allocation).
+             */
+            end = max(end, aligned_end);
+    }
+
+    return end;
+}
+
+void __init setup_mm(void)
+{
+    paddr_t ram_start, ram_end, ram_size, e, bank_start, bank_end, bank_size;
+    paddr_t static_heap_end = 0, static_heap_size = 0;
+    unsigned long heap_pages, xenheap_pages, domheap_pages;
+    unsigned int i;
+    const uint32_t ctr = READ_CP32(CTR);
+
+    if ( !bootinfo.mem.nr_banks )
+        panic("No memory bank\n");
+
+    /* We only supports instruction caches implementing the IVIPT extension. */
+    if ( ((ctr >> CTR_L1IP_SHIFT) & CTR_L1IP_MASK) == ICACHE_POLICY_AIVIVT )
+        panic("AIVIVT instruction cache not supported\n");
+
+    init_pdx();
+
+    ram_start = bootinfo.mem.bank[0].start;
+    ram_size  = bootinfo.mem.bank[0].size;
+    ram_end   = ram_start + ram_size;
+
+    for ( i = 1; i < bootinfo.mem.nr_banks; i++ )
+    {
+        bank_start = bootinfo.mem.bank[i].start;
+        bank_size = bootinfo.mem.bank[i].size;
+        bank_end = bank_start + bank_size;
+
+        ram_size  = ram_size + bank_size;
+        ram_start = min(ram_start,bank_start);
+        ram_end   = max(ram_end,bank_end);
+    }
+
+    total_pages = ram_size >> PAGE_SHIFT;
+
+    if ( bootinfo.static_heap )
+    {
+        for ( i = 0 ; i < bootinfo.reserved_mem.nr_banks; i++ )
+        {
+            if ( bootinfo.reserved_mem.bank[i].type != MEMBANK_STATIC_HEAP )
+                continue;
+
+            bank_start = bootinfo.reserved_mem.bank[i].start;
+            bank_size = bootinfo.reserved_mem.bank[i].size;
+            bank_end = bank_start + bank_size;
+
+            static_heap_size += bank_size;
+            static_heap_end = max(static_heap_end, bank_end);
+        }
+
+        heap_pages = static_heap_size >> PAGE_SHIFT;
+    }
+    else
+        heap_pages = total_pages;
+
+    /*
+     * If the user has not requested otherwise via the command line
+     * then locate the xenheap using these constraints:
+     *
+     *  - must be contiguous
+     *  - must be 32 MiB aligned
+     *  - must not include Xen itself or the boot modules
+     *  - must be at most 1GB or 1/32 the total RAM in the system (or static
+          heap if enabled) if less
+     *  - must be at least 32M
+     *
+     * We try to allocate the largest xenheap possible within these
+     * constraints.
+     */
+    if ( opt_xenheap_megabytes )
+        xenheap_pages = opt_xenheap_megabytes << (20-PAGE_SHIFT);
+    else
+    {
+        xenheap_pages = (heap_pages/32 + 0x1fffUL) & ~0x1fffUL;
+        xenheap_pages = max(xenheap_pages, 32UL<<(20-PAGE_SHIFT));
+        xenheap_pages = min(xenheap_pages, 1UL<<(30-PAGE_SHIFT));
+    }
+
+    do
+    {
+        e = bootinfo.static_heap ?
+            fit_xenheap_in_static_heap(pfn_to_paddr(xenheap_pages), MB(32)) :
+            consider_modules(ram_start, ram_end,
+                             pfn_to_paddr(xenheap_pages),
+                             32<<20, 0);
+        if ( e )
+            break;
+
+        xenheap_pages >>= 1;
+    } while ( !opt_xenheap_megabytes && xenheap_pages > 32<<(20-PAGE_SHIFT) );
+
+    if ( ! e )
+        panic("Not enough space for xenheap\n");
+
+    domheap_pages = heap_pages - xenheap_pages;
+
+    printk("Xen heap: %"PRIpaddr"-%"PRIpaddr" (%lu pages%s)\n",
+           e - (pfn_to_paddr(xenheap_pages)), e, xenheap_pages,
+           opt_xenheap_megabytes ? ", from command-line" : "");
+    printk("Dom heap: %lu pages\n", domheap_pages);
+
+    /*
+     * We need some memory to allocate the page-tables used for the
+     * directmap mappings. So populate the boot allocator first.
+     *
+     * This requires us to set directmap_mfn_{start, end} first so the
+     * direct-mapped Xenheap region can be avoided.
+     */
+    directmap_mfn_start = _mfn((e >> PAGE_SHIFT) - xenheap_pages);
+    directmap_mfn_end = mfn_add(directmap_mfn_start, xenheap_pages);
+
+    populate_boot_allocator();
+
+    setup_directmap_mappings(mfn_x(directmap_mfn_start), xenheap_pages);
+
+    /* Frame table covers all of RAM region, including holes */
+    setup_frametable_mappings(ram_start, ram_end);
+    max_page = PFN_DOWN(ram_end);
+
+    /*
+     * The allocators may need to use map_domain_page() (such as for
+     * scrubbing pages). So we need to prepare the domheap area first.
+     */
+    if ( !init_domheap_mappings(smp_processor_id()) )
+        panic("CPU%u: Unable to prepare the domheap page-tables\n",
+              smp_processor_id());
+
+    /* Add xenheap memory that was not already added to the boot allocator. */
+    init_xenheap_pages(mfn_to_maddr(directmap_mfn_start),
+                       mfn_to_maddr(directmap_mfn_end));
+
+    init_staticmem_pages();
+}
+
 /*
  * Local variables:
  * mode: C
diff --git a/xen/arch/arm/arm64/mmu/mm.c b/xen/arch/arm/arm64/mmu/mm.c
index 36073041ed..c0f166a437 100644
--- a/xen/arch/arm/arm64/mmu/mm.c
+++ b/xen/arch/arm/arm64/mmu/mm.c
@@ -2,6 +2,7 @@
 
 #include <xen/init.h>
 #include <xen/mm.h>
+#include <xen/pfn.h>
 
 #include <asm/setup.h>
 
@@ -152,8 +153,8 @@ void __init switch_ttbr(uint64_t ttbr)
 }
 
 /* Map the region in the directmap area. */
-void __init setup_directmap_mappings(unsigned long base_mfn,
-                                     unsigned long nr_mfns)
+static void __init setup_directmap_mappings(unsigned long base_mfn,
+                                            unsigned long nr_mfns)
 {
     int rc;
 
@@ -188,6 +189,52 @@ void __init setup_directmap_mappings(unsigned long base_mfn,
         panic("Unable to setup the directmap mappings.\n");
 }
 
+void __init setup_mm(void)
+{
+    const struct meminfo *banks = &bootinfo.mem;
+    paddr_t ram_start = INVALID_PADDR;
+    paddr_t ram_end = 0;
+    paddr_t ram_size = 0;
+    unsigned int i;
+
+    init_pdx();
+
+    /*
+     * We need some memory to allocate the page-tables used for the directmap
+     * mappings. But some regions may contain memory already allocated
+     * for other uses (e.g. modules, reserved-memory...).
+     *
+     * For simplicity, add all the free regions in the boot allocator.
+     */
+    populate_boot_allocator();
+
+    total_pages = 0;
+
+    for ( i = 0; i < banks->nr_banks; i++ )
+    {
+        const struct membank *bank = &banks->bank[i];
+        paddr_t bank_end = bank->start + bank->size;
+
+        ram_size = ram_size + bank->size;
+        ram_start = min(ram_start, bank->start);
+        ram_end = max(ram_end, bank_end);
+
+        setup_directmap_mappings(PFN_DOWN(bank->start),
+                                 PFN_DOWN(bank->size));
+    }
+
+    total_pages += ram_size >> PAGE_SHIFT;
+
+    directmap_virt_end = XENHEAP_VIRT_START + ram_end - ram_start;
+    directmap_mfn_start = maddr_to_mfn(ram_start);
+    directmap_mfn_end = maddr_to_mfn(ram_end);
+
+    setup_frametable_mappings(ram_start, ram_end);
+    max_page = PFN_DOWN(ram_end);
+
+    init_staticmem_pages();
+}
+
 /*
  * Local variables:
  * mode: C
diff --git a/xen/arch/arm/include/asm/mmu/mm.h b/xen/arch/arm/include/asm/mmu/mm.h
index 439ae314fd..c5e03a66bf 100644
--- a/xen/arch/arm/include/asm/mmu/mm.h
+++ b/xen/arch/arm/include/asm/mmu/mm.h
@@ -31,12 +31,6 @@ void dump_pt_walk(paddr_t ttbr, paddr_t addr,
 
 /* 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__ */
 
diff --git a/xen/arch/arm/include/asm/setup.h b/xen/arch/arm/include/asm/setup.h
index b8866c20f4..863e9b88cd 100644
--- a/xen/arch/arm/include/asm/setup.h
+++ b/xen/arch/arm/include/asm/setup.h
@@ -159,6 +159,11 @@ struct bootcmdline *boot_cmdline_find_by_kind(bootmodule_kind kind);
 struct bootcmdline * boot_cmdline_find_by_name(const char *name);
 const char *boot_module_kind_as_string(bootmodule_kind kind);
 
+void init_pdx(void);
+void init_staticmem_pages(void);
+void populate_boot_allocator(void);
+void setup_mm(void);
+
 extern uint32_t hyp_traps_vector[];
 void init_traps(void);
 
diff --git a/xen/arch/arm/setup.c b/xen/arch/arm/setup.c
index db748839d3..5983546e64 100644
--- a/xen/arch/arm/setup.c
+++ b/xen/arch/arm/setup.c
@@ -58,11 +58,6 @@ struct cpuinfo_arm __read_mostly system_cpuinfo;
 bool __read_mostly acpi_disabled;
 #endif
 
-#ifdef CONFIG_ARM_32
-static unsigned long opt_xenheap_megabytes __initdata;
-integer_param("xenheap_megabytes", opt_xenheap_megabytes);
-#endif
-
 domid_t __read_mostly max_init_domid;
 
 static __used void init_done(void)
@@ -547,138 +542,6 @@ static void * __init relocate_fdt(paddr_t dtb_paddr, size_t dtb_size)
     return fdt;
 }
 
-#ifdef CONFIG_ARM_32
-/*
- * Returns the end address of the highest region in the range s..e
- * with required size and alignment that does not conflict with the
- * modules from first_mod to nr_modules.
- *
- * For non-recursive callers first_mod should normally be 0 (all
- * modules and Xen itself) or 1 (all modules but not Xen).
- */
-static paddr_t __init consider_modules(paddr_t s, paddr_t e,
-                                       uint32_t size, paddr_t align,
-                                       int first_mod)
-{
-    const struct bootmodules *mi = &bootinfo.modules;
-    int i;
-    int nr;
-
-    s = (s+align-1) & ~(align-1);
-    e = e & ~(align-1);
-
-    if ( s > e ||  e - s < size )
-        return 0;
-
-    /* First check the boot modules */
-    for ( i = first_mod; i < mi->nr_mods; i++ )
-    {
-        paddr_t mod_s = mi->module[i].start;
-        paddr_t mod_e = mod_s + mi->module[i].size;
-
-        if ( s < mod_e && mod_s < e )
-        {
-            mod_e = consider_modules(mod_e, e, size, align, i+1);
-            if ( mod_e )
-                return mod_e;
-
-            return consider_modules(s, mod_s, size, align, i+1);
-        }
-    }
-
-    /* Now check any fdt reserved areas. */
-
-    nr = fdt_num_mem_rsv(device_tree_flattened);
-
-    for ( ; i < mi->nr_mods + nr; i++ )
-    {
-        paddr_t mod_s, mod_e;
-
-        if ( fdt_get_mem_rsv_paddr(device_tree_flattened,
-                                   i - mi->nr_mods,
-                                   &mod_s, &mod_e ) < 0 )
-            /* If we can't read it, pretend it doesn't exist... */
-            continue;
-
-        /* fdt_get_mem_rsv_paddr returns length */
-        mod_e += mod_s;
-
-        if ( s < mod_e && mod_s < e )
-        {
-            mod_e = consider_modules(mod_e, e, size, align, i+1);
-            if ( mod_e )
-                return mod_e;
-
-            return consider_modules(s, mod_s, size, align, i+1);
-        }
-    }
-
-    /*
-     * i is the current bootmodule we are evaluating, across all
-     * possible kinds of bootmodules.
-     *
-     * When retrieving the corresponding reserved-memory addresses, we
-     * need to index the bootinfo.reserved_mem bank starting from 0, and
-     * only counting the reserved-memory modules. Hence, we need to use
-     * i - nr.
-     */
-    nr += mi->nr_mods;
-    for ( ; i - nr < bootinfo.reserved_mem.nr_banks; i++ )
-    {
-        paddr_t r_s = bootinfo.reserved_mem.bank[i - nr].start;
-        paddr_t r_e = r_s + bootinfo.reserved_mem.bank[i - nr].size;
-
-        if ( s < r_e && r_s < e )
-        {
-            r_e = consider_modules(r_e, e, size, align, i + 1);
-            if ( r_e )
-                return r_e;
-
-            return consider_modules(s, r_s, size, align, i + 1);
-        }
-    }
-    return e;
-}
-
-/*
- * Find a contiguous region that fits in the static heap region with
- * required size and alignment, and return the end address of the region
- * if found otherwise 0.
- */
-static paddr_t __init fit_xenheap_in_static_heap(uint32_t size, paddr_t align)
-{
-    unsigned int i;
-    paddr_t end = 0, aligned_start, aligned_end;
-    paddr_t bank_start, bank_size, bank_end;
-
-    for ( i = 0 ; i < bootinfo.reserved_mem.nr_banks; i++ )
-    {
-        if ( bootinfo.reserved_mem.bank[i].type != MEMBANK_STATIC_HEAP )
-            continue;
-
-        bank_start = bootinfo.reserved_mem.bank[i].start;
-        bank_size = bootinfo.reserved_mem.bank[i].size;
-        bank_end = bank_start + bank_size;
-
-        if ( bank_size < size )
-            continue;
-
-        aligned_end = bank_end & ~(align - 1);
-        aligned_start = (aligned_end - size) & ~(align - 1);
-
-        if ( aligned_start > bank_start )
-            /*
-             * Allocate the xenheap as high as possible to keep low-memory
-             * available (assuming the admin supplied region below 4GB)
-             * for other use (e.g. domain memory allocation).
-             */
-            end = max(end, aligned_end);
-    }
-
-    return end;
-}
-#endif
-
 /*
  * Return the end of the non-module region starting at s. In other
  * words return s the start of the next modules after s.
@@ -713,7 +576,7 @@ static paddr_t __init next_module(paddr_t s, paddr_t *end)
     return lowest;
 }
 
-static void __init init_pdx(void)
+void __init init_pdx(void)
 {
     paddr_t bank_start, bank_size, bank_end;
 
@@ -758,7 +621,7 @@ static void __init init_pdx(void)
 }
 
 /* Static memory initialization */
-static void __init init_staticmem_pages(void)
+void __init init_staticmem_pages(void)
 {
 #ifdef CONFIG_STATIC_MEMORY
     unsigned int bank;
@@ -792,7 +655,7 @@ static void __init init_staticmem_pages(void)
  * allocator with the corresponding regions only, but with Xenheap excluded
  * on arm32.
  */
-static void __init populate_boot_allocator(void)
+void __init populate_boot_allocator(void)
 {
     unsigned int i;
     const struct meminfo *banks = &bootinfo.mem;
@@ -861,187 +724,6 @@ static void __init populate_boot_allocator(void)
     }
 }
 
-#ifdef CONFIG_ARM_32
-static void __init setup_mm(void)
-{
-    paddr_t ram_start, ram_end, ram_size, e, bank_start, bank_end, bank_size;
-    paddr_t static_heap_end = 0, static_heap_size = 0;
-    unsigned long heap_pages, xenheap_pages, domheap_pages;
-    unsigned int i;
-    const uint32_t ctr = READ_CP32(CTR);
-
-    if ( !bootinfo.mem.nr_banks )
-        panic("No memory bank\n");
-
-    /* We only supports instruction caches implementing the IVIPT extension. */
-    if ( ((ctr >> CTR_L1IP_SHIFT) & CTR_L1IP_MASK) == ICACHE_POLICY_AIVIVT )
-        panic("AIVIVT instruction cache not supported\n");
-
-    init_pdx();
-
-    ram_start = bootinfo.mem.bank[0].start;
-    ram_size  = bootinfo.mem.bank[0].size;
-    ram_end   = ram_start + ram_size;
-
-    for ( i = 1; i < bootinfo.mem.nr_banks; i++ )
-    {
-        bank_start = bootinfo.mem.bank[i].start;
-        bank_size = bootinfo.mem.bank[i].size;
-        bank_end = bank_start + bank_size;
-
-        ram_size  = ram_size + bank_size;
-        ram_start = min(ram_start,bank_start);
-        ram_end   = max(ram_end,bank_end);
-    }
-
-    total_pages = ram_size >> PAGE_SHIFT;
-
-    if ( bootinfo.static_heap )
-    {
-        for ( i = 0 ; i < bootinfo.reserved_mem.nr_banks; i++ )
-        {
-            if ( bootinfo.reserved_mem.bank[i].type != MEMBANK_STATIC_HEAP )
-                continue;
-
-            bank_start = bootinfo.reserved_mem.bank[i].start;
-            bank_size = bootinfo.reserved_mem.bank[i].size;
-            bank_end = bank_start + bank_size;
-
-            static_heap_size += bank_size;
-            static_heap_end = max(static_heap_end, bank_end);
-        }
-
-        heap_pages = static_heap_size >> PAGE_SHIFT;
-    }
-    else
-        heap_pages = total_pages;
-
-    /*
-     * If the user has not requested otherwise via the command line
-     * then locate the xenheap using these constraints:
-     *
-     *  - must be contiguous
-     *  - must be 32 MiB aligned
-     *  - must not include Xen itself or the boot modules
-     *  - must be at most 1GB or 1/32 the total RAM in the system (or static
-          heap if enabled) if less
-     *  - must be at least 32M
-     *
-     * We try to allocate the largest xenheap possible within these
-     * constraints.
-     */
-    if ( opt_xenheap_megabytes )
-        xenheap_pages = opt_xenheap_megabytes << (20-PAGE_SHIFT);
-    else
-    {
-        xenheap_pages = (heap_pages/32 + 0x1fffUL) & ~0x1fffUL;
-        xenheap_pages = max(xenheap_pages, 32UL<<(20-PAGE_SHIFT));
-        xenheap_pages = min(xenheap_pages, 1UL<<(30-PAGE_SHIFT));
-    }
-
-    do
-    {
-        e = bootinfo.static_heap ?
-            fit_xenheap_in_static_heap(pfn_to_paddr(xenheap_pages), MB(32)) :
-            consider_modules(ram_start, ram_end,
-                             pfn_to_paddr(xenheap_pages),
-                             32<<20, 0);
-        if ( e )
-            break;
-
-        xenheap_pages >>= 1;
-    } while ( !opt_xenheap_megabytes && xenheap_pages > 32<<(20-PAGE_SHIFT) );
-
-    if ( ! e )
-        panic("Not enough space for xenheap\n");
-
-    domheap_pages = heap_pages - xenheap_pages;
-
-    printk("Xen heap: %"PRIpaddr"-%"PRIpaddr" (%lu pages%s)\n",
-           e - (pfn_to_paddr(xenheap_pages)), e, xenheap_pages,
-           opt_xenheap_megabytes ? ", from command-line" : "");
-    printk("Dom heap: %lu pages\n", domheap_pages);
-
-    /*
-     * We need some memory to allocate the page-tables used for the
-     * directmap mappings. So populate the boot allocator first.
-     *
-     * This requires us to set directmap_mfn_{start, end} first so the
-     * direct-mapped Xenheap region can be avoided.
-     */
-    directmap_mfn_start = _mfn((e >> PAGE_SHIFT) - xenheap_pages);
-    directmap_mfn_end = mfn_add(directmap_mfn_start, xenheap_pages);
-
-    populate_boot_allocator();
-
-    setup_directmap_mappings(mfn_x(directmap_mfn_start), xenheap_pages);
-
-    /* Frame table covers all of RAM region, including holes */
-    setup_frametable_mappings(ram_start, ram_end);
-    max_page = PFN_DOWN(ram_end);
-
-    /*
-     * The allocators may need to use map_domain_page() (such as for
-     * scrubbing pages). So we need to prepare the domheap area first.
-     */
-    if ( !init_domheap_mappings(smp_processor_id()) )
-        panic("CPU%u: Unable to prepare the domheap page-tables\n",
-              smp_processor_id());
-
-    /* Add xenheap memory that was not already added to the boot allocator. */
-    init_xenheap_pages(mfn_to_maddr(directmap_mfn_start),
-                       mfn_to_maddr(directmap_mfn_end));
-
-    init_staticmem_pages();
-}
-#else /* CONFIG_ARM_64 */
-static void __init setup_mm(void)
-{
-    const struct meminfo *banks = &bootinfo.mem;
-    paddr_t ram_start = INVALID_PADDR;
-    paddr_t ram_end = 0;
-    paddr_t ram_size = 0;
-    unsigned int i;
-
-    init_pdx();
-
-    /*
-     * We need some memory to allocate the page-tables used for the directmap
-     * mappings. But some regions may contain memory already allocated
-     * for other uses (e.g. modules, reserved-memory...).
-     *
-     * For simplicity, add all the free regions in the boot allocator.
-     */
-    populate_boot_allocator();
-
-    total_pages = 0;
-
-    for ( i = 0; i < banks->nr_banks; i++ )
-    {
-        const struct membank *bank = &banks->bank[i];
-        paddr_t bank_end = bank->start + bank->size;
-
-        ram_size = ram_size + bank->size;
-        ram_start = min(ram_start, bank->start);
-        ram_end = max(ram_end, bank_end);
-
-        setup_directmap_mappings(PFN_DOWN(bank->start),
-                                 PFN_DOWN(bank->size));
-    }
-
-    total_pages += ram_size >> PAGE_SHIFT;
-
-    directmap_virt_end = XENHEAP_VIRT_START + ram_end - ram_start;
-    directmap_mfn_start = maddr_to_mfn(ram_start);
-    directmap_mfn_end = maddr_to_mfn(ram_end);
-
-    setup_frametable_mappings(ram_start, ram_end);
-    max_page = PFN_DOWN(ram_end);
-
-    init_staticmem_pages();
-}
-#endif
-
 static bool __init is_dom0less_mode(void)
 {
     struct bootmodules *mods = &bootinfo.modules;
-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Mon Oct 23 02:14:24 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 02:14:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.620930.966828 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qukSW-00039l-Km; Mon, 23 Oct 2023 02:14:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 620930.966828; Mon, 23 Oct 2023 02:14: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 1qukSW-00038U-Fh; Mon, 23 Oct 2023 02:14:24 +0000
Received: by outflank-mailman (input) for mailman id 620930;
 Mon, 23 Oct 2023 02: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=JdWI=GF=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qukSU-0001F1-Vu
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 02:14:22 +0000
Received: from foss.arm.com (foss.arm.com [217.140.110.172])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTP
 id e1289e33-7149-11ee-98d5-6d05b1d4d9a1;
 Mon, 23 Oct 2023 04:14:22 +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 4188C2F4;
 Sun, 22 Oct 2023 19:15:02 -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 64C103F738;
 Sun, 22 Oct 2023 19:14: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: e1289e33-7149-11ee-98d5-6d05b1d4d9a1
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>,
	Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Penny Zheng <penny.zheng@arm.com>,
	Wei Chen <wei.chen@arm.com>,
	Julien Grall <jgrall@amazon.com>
Subject: [PATCH v8 6/8] xen/arm: Fold pmap and fixmap into MMU system
Date: Mon, 23 Oct 2023 10:13:43 +0800
Message-Id: <20231023021345.1731436-7-Henry.Wang@arm.com>
X-Mailer: git-send-email 2.25.1
In-Reply-To: <20231023021345.1731436-1-Henry.Wang@arm.com>
References: <20231023021345.1731436-1-Henry.Wang@arm.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

fixmap and pmap are MMU-specific features, so fold them to the
MMU system. Do the folding for pmap by moving the HAS_PMAP Kconfig
selection under MMU. Since none of the definitions in asm/fixmap.h
actually makes sense for the MPU, so do the folding for fixmap by
limiting the inclusion of asm/fixmap.h for MPU code when necessary.
To guarantee that, moving the implementation of copy_from_paddr()
from kernel.c to mmu/setup.c, so that inclusion of asm/fixmap.h in
the kernel.c can be dropped.

Take the opportunity to add a missing space before and after '-' in
"s = paddr & (PAGE_SIZE-1);" of copy_from_paddr().

Signed-off-by: Henry Wang <Henry.Wang@arm.com>
Signed-off-by: Penny Zheng <penny.zheng@arm.com>
Signed-off-by: Wei Chen <wei.chen@arm.com>
Reviewed-by: Julien Grall <jgrall@amazon.com>
---
v8:
- Add a missing space before/after '-' in "s = paddr & (PAGE_SIZE-1);"
  of copy_from_paddr(), mention this change in commit message.
- Add Julien's Reviewed-by tag.
v7:
- No change.
v6:
- Rework original patch:
  [v5,08/13] xen/arm: Fold pmap and fixmap into MMU system
  and fold in the original patch:
  [v5,12/13] xen/arm: mmu: relocate copy_from_paddr() to setup.c
---
 xen/arch/arm/Kconfig     |  2 +-
 xen/arch/arm/kernel.c    | 28 ----------------------------
 xen/arch/arm/mmu/setup.c | 27 +++++++++++++++++++++++++++
 3 files changed, 28 insertions(+), 29 deletions(-)

diff --git a/xen/arch/arm/Kconfig b/xen/arch/arm/Kconfig
index 2939db429b..7b5b0c0c05 100644
--- a/xen/arch/arm/Kconfig
+++ b/xen/arch/arm/Kconfig
@@ -14,7 +14,6 @@ config ARM
 	select HAS_ALTERNATIVE
 	select HAS_DEVICE_TREE
 	select HAS_PASSTHROUGH
-	select HAS_PMAP
 	select HAS_UBSAN
 	select IOMMU_FORCE_PT_SHARE
 
@@ -60,6 +59,7 @@ config PADDR_BITS
 
 config MMU
 	def_bool y
+	select HAS_PMAP
 
 source "arch/Kconfig"
 
diff --git a/xen/arch/arm/kernel.c b/xen/arch/arm/kernel.c
index 508c54824d..bc3e5bd6f9 100644
--- a/xen/arch/arm/kernel.c
+++ b/xen/arch/arm/kernel.c
@@ -16,7 +16,6 @@
 #include <xen/vmap.h>
 
 #include <asm/byteorder.h>
-#include <asm/fixmap.h>
 #include <asm/kernel.h>
 #include <asm/setup.h>
 
@@ -41,33 +40,6 @@ struct minimal_dtb_header {
 
 #define DTB_MAGIC 0xd00dfeedU
 
-/**
- * copy_from_paddr - copy data from a physical address
- * @dst: destination virtual address
- * @paddr: source physical address
- * @len: length to copy
- */
-void __init copy_from_paddr(void *dst, paddr_t paddr, unsigned long len)
-{
-    void *src = (void *)FIXMAP_ADDR(FIXMAP_MISC);
-
-    while (len) {
-        unsigned long l, s;
-
-        s = paddr & (PAGE_SIZE-1);
-        l = min(PAGE_SIZE - s, len);
-
-        set_fixmap(FIXMAP_MISC, maddr_to_mfn(paddr), PAGE_HYPERVISOR_WC);
-        memcpy(dst, src + s, l);
-        clean_dcache_va_range(dst, l);
-        clear_fixmap(FIXMAP_MISC);
-
-        paddr += l;
-        dst += l;
-        len -= l;
-    }
-}
-
 static void __init place_modules(struct kernel_info *info,
                                  paddr_t kernbase, paddr_t kernend)
 {
diff --git a/xen/arch/arm/mmu/setup.c b/xen/arch/arm/mmu/setup.c
index c2df976ab2..a5a9b538ff 100644
--- a/xen/arch/arm/mmu/setup.c
+++ b/xen/arch/arm/mmu/setup.c
@@ -339,6 +339,33 @@ void free_init_memory(void)
     printk("Freed %ldkB init memory.\n", (long)(__init_end-__init_begin)>>10);
 }
 
+/**
+ * copy_from_paddr - copy data from a physical address
+ * @dst: destination virtual address
+ * @paddr: source physical address
+ * @len: length to copy
+ */
+void __init copy_from_paddr(void *dst, paddr_t paddr, unsigned long len)
+{
+    void *src = (void *)FIXMAP_ADDR(FIXMAP_MISC);
+
+    while (len) {
+        unsigned long l, s;
+
+        s = paddr & (PAGE_SIZE - 1);
+        l = min(PAGE_SIZE - s, len);
+
+        set_fixmap(FIXMAP_MISC, maddr_to_mfn(paddr), PAGE_HYPERVISOR_WC);
+        memcpy(dst, src + s, l);
+        clean_dcache_va_range(dst, l);
+        clear_fixmap(FIXMAP_MISC);
+
+        paddr += l;
+        dst += l;
+        len -= l;
+    }
+}
+
 /*
  * Local variables:
  * mode: C
-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Mon Oct 23 02:14:30 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 02:14:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.620933.966838 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qukSc-0003ln-0p; Mon, 23 Oct 2023 02:14:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 620933.966838; Mon, 23 Oct 2023 02:14: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 1qukSb-0003le-Sf; Mon, 23 Oct 2023 02:14:29 +0000
Received: by outflank-mailman (input) for mailman id 620933;
 Mon, 23 Oct 2023 02:14: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=JdWI=GF=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qukSZ-0001U7-W4
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 02:14:28 +0000
Received: from foss.arm.com (foss.arm.com [217.140.110.172])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTP
 id e381d4df-7149-11ee-9b0e-b553b5be7939;
 Mon, 23 Oct 2023 04:14:26 +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 4ADC92F4;
 Sun, 22 Oct 2023 19:15:06 -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 6DC3D3F738;
 Sun, 22 Oct 2023 19:14: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: e381d4df-7149-11ee-9b0e-b553b5be7939
From: Henry Wang <Henry.Wang@arm.com>
To: xen-devel@lists.xenproject.org
Cc: Penny Zheng <penny.zheng@arm.com>,
	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>,
	Henry Wang <Henry.Wang@arm.com>,
	Julien Grall <jgrall@amazon.com>
Subject: [PATCH v8 7/8] xen/arm: Rename init_secondary_pagetables() to prepare_secondary_mm()
Date: Mon, 23 Oct 2023 10:13:44 +0800
Message-Id: <20231023021345.1731436-8-Henry.Wang@arm.com>
X-Mailer: git-send-email 2.25.1
In-Reply-To: <20231023021345.1731436-1-Henry.Wang@arm.com>
References: <20231023021345.1731436-1-Henry.Wang@arm.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

From: Penny Zheng <penny.zheng@arm.com>

init_secondary_pagetables() is a function in the common code path
of both MMU and future MPU support. Since "page table" is a MMU
specific concept, rename init_secondary_pagetables() to a generic
name prepare_secondary_mm() as the preparation for MPU support.

Reword the in-code comment on top of prepare_secondary_mm() because
this function is now supposed to be MMU/MPU agnostic.

Take the opportunity to fix the incorrect coding style of the in-code
comments.

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>
---
v8:
- Change the in-code comment on top of prepare_secondary_mm() because
  this function is now supposed to be MMU/MPU agnostic, mention this
  in the commit message.
- Add Julien's Reviewed-by tag.
v7:
- No change.
v6:
- Only rename init_secondary_pagetables() to prepare_secondary_mm().
---
 xen/arch/arm/arm32/head.S     | 2 +-
 xen/arch/arm/include/asm/mm.h | 5 ++---
 xen/arch/arm/mmu/smpboot.c    | 4 ++--
 xen/arch/arm/smpboot.c        | 2 +-
 4 files changed, 6 insertions(+), 7 deletions(-)

diff --git a/xen/arch/arm/arm32/head.S b/xen/arch/arm/arm32/head.S
index 39218cf15f..c7b2efb8f0 100644
--- a/xen/arch/arm/arm32/head.S
+++ b/xen/arch/arm/arm32/head.S
@@ -257,7 +257,7 @@ GLOBAL(init_secondary)
 secondary_switched:
         /*
          * Non-boot CPUs need to move on to the proper pagetables, which were
-         * setup in init_secondary_pagetables.
+         * setup in prepare_secondary_mm.
          *
          * XXX: This is not compliant with the Arm Arm.
          */
diff --git a/xen/arch/arm/include/asm/mm.h b/xen/arch/arm/include/asm/mm.h
index d23ebc7df6..cbcf3bf147 100644
--- a/xen/arch/arm/include/asm/mm.h
+++ b/xen/arch/arm/include/asm/mm.h
@@ -204,9 +204,8 @@ extern void setup_pagetables(unsigned long boot_phys_offset);
 extern void *early_fdt_map(paddr_t fdt_paddr);
 /* 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);
+/* Prepare the memory subystem to bring-up the given secondary CPU */
+extern int prepare_secondary_mm(int cpu);
 /* 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/mmu/smpboot.c b/xen/arch/arm/mmu/smpboot.c
index 8b6a09f843..12f1a5d761 100644
--- a/xen/arch/arm/mmu/smpboot.c
+++ b/xen/arch/arm/mmu/smpboot.c
@@ -67,7 +67,7 @@ static void clear_boot_pagetables(void)
 }
 
 #ifdef CONFIG_ARM_64
-int init_secondary_pagetables(int cpu)
+int prepare_secondary_mm(int cpu)
 {
     clear_boot_pagetables();
 
@@ -80,7 +80,7 @@ int init_secondary_pagetables(int cpu)
     return 0;
 }
 #else
-int init_secondary_pagetables(int cpu)
+int prepare_secondary_mm(int cpu)
 {
     lpae_t *first;
 
diff --git a/xen/arch/arm/smpboot.c b/xen/arch/arm/smpboot.c
index beb137d06e..ac451e9b3e 100644
--- a/xen/arch/arm/smpboot.c
+++ b/xen/arch/arm/smpboot.c
@@ -448,7 +448,7 @@ int __cpu_up(unsigned int cpu)
 
     printk("Bringing up CPU%d\n", cpu);
 
-    rc = init_secondary_pagetables(cpu);
+    rc = prepare_secondary_mm(cpu);
     if ( rc < 0 )
         return rc;
 
-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Mon Oct 23 02:23:25 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 02:23:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.620950.966847 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qukbA-0006qc-Uv; Mon, 23 Oct 2023 02:23:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 620950.966847; Mon, 23 Oct 2023 02: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 1qukbA-0006qU-Qr; Mon, 23 Oct 2023 02:23:20 +0000
Received: by outflank-mailman (input) for mailman id 620950;
 Mon, 23 Oct 2023 02:23: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=JdWI=GF=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qukSg-0001U7-M0
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 02:14:35 +0000
Received: from foss.arm.com (foss.arm.com [217.140.110.172])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTP
 id e65529cd-7149-11ee-9b0e-b553b5be7939;
 Mon, 23 Oct 2023 04:14:30 +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 F35EF2F4;
 Sun, 22 Oct 2023 19:15:10 -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 8DFC93F738;
 Sun, 22 Oct 2023 19:14: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: e65529cd-7149-11ee-9b0e-b553b5be7939
From: Henry Wang <Henry.Wang@arm.com>
To: xen-devel@lists.xenproject.org
Cc: 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>,
	Wei Chen <wei.chen@arm.com>,
	Henry Wang <Henry.Wang@arm.com>
Subject: [PATCH v8 8/8] xen/arm: mmu: move MMU specific P2M code to mmu/p2m.{c,h}
Date: Mon, 23 Oct 2023 10:13:45 +0800
Message-Id: <20231023021345.1731436-9-Henry.Wang@arm.com>
X-Mailer: git-send-email 2.25.1
In-Reply-To: <20231023021345.1731436-1-Henry.Wang@arm.com>
References: <20231023021345.1731436-1-Henry.Wang@arm.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

From: Penny Zheng <penny.zheng@arm.com>

Current P2M implementation is designed for MMU system only.
We move the MMU-specific codes into mmu/p2m.c, and only keep generic
codes in p2m.c, like VMID allocator, etc. We also move MMU-specific
definitions and declarations to mmu/p2m.h, such as p2m_tlb_flush_sync().
Also expose previously static functions p2m_vmid_allocator_init(),
p2m_alloc_vmid() for further MPU usage. Since with the code movement
p2m_free_vmid() is now used in two files, also expose p2m_free_vmid().

With the code movement, global variable max_vmid is used in multiple
files instead of a single file (and will be used in MPU P2M
implementation), declare it in the header and remove the "static" of
this variable.

Also, since p2m_invalidate_root() should be MMU only and after the
code movement the only caller of p2m_invalidate_root() outside of
mmu/p2m.c is arch_domain_creation_finished(), creating a new function
named p2m_domain_creation_finished() in mmu/p2m.c for the original
code in arch_domain_creation_finished(), and marking
p2m_invalidate_root() as static.

Take the opportunity to fix the incorrect coding style when possible.
When there is bit shift in macros, take the opportunity to add the
missing 'U' as a compliance of MISRA.

Signed-off-by: Penny Zheng <penny.zheng@arm.com>
Signed-off-by: Wei Chen <wei.chen@arm.com>
Signed-off-by: Henry Wang <Henry.Wang@arm.com>
---
v8:
- Note: The renaming of p2m_flush_vm() is not done due to the
  unclarity of other maintainers' ideas.
- Also move P2M_ROOT_LEVEL, P2M_ROOT_ORDER and P2M_ROOT_PAGES to
  mmu/p2m.h. Move the two functions using p2m->root to mmu/p2m.c.
- Also move the declaration of p2m_clear_root_pages() to mmu/p2m.h.
- Expose p2m_free_vmid() as it is now used by two files.
- Take the opportunity to use 1U and add space before/after <<,
  update the commit message about this.
- Do not export setup_virt_paging_one(), instead, move
  cpu_virt_paging_callback() & co to mmu/p2m.c.
- Create a new function p2m_domain_creation_finished() in mmu/p2m.c
  for the original code in arch_domain_creation_finished(), and mark
  p2m_invalidate_root() as static.
v7:
- No change.
v6:
- Also move relinquish_p2m_mapping() to mmu/p2m.c, make
  __p2m_set_entry() static.
- Also move p2m_clear_root_pages() and p2m_flush_vm() to mmu/p2m.c.
- Don't add #ifdef CONFIG_MMU to the p2m_tlb_flush_sync() in
  p2m_write_unlock(), this need further discussion.
- Correct typo in commit message.
v5:
- No change
v4:
- Rework the patch to drop the unnecessary changes.
- Rework the commit msg a bit.
v3:
- remove MPU stubs
- adapt to the introduction of new directories: mmu/
v2:
- new commit
---
 xen/arch/arm/domain.c              |   11 +-
 xen/arch/arm/include/asm/mmu/p2m.h |   26 +
 xen/arch/arm/include/asm/p2m.h     |   32 +-
 xen/arch/arm/mmu/Makefile          |    1 +
 xen/arch/arm/mmu/p2m.c             | 1834 ++++++++++++++++++++++++++
 xen/arch/arm/p2m.c                 | 1909 +---------------------------
 6 files changed, 1933 insertions(+), 1880 deletions(-)
 create mode 100644 xen/arch/arm/include/asm/mmu/p2m.h
 create mode 100644 xen/arch/arm/mmu/p2m.c

diff --git a/xen/arch/arm/domain.c b/xen/arch/arm/domain.c
index 28e3aaa5e4..5e7a7f3e7e 100644
--- a/xen/arch/arm/domain.c
+++ b/xen/arch/arm/domain.c
@@ -870,16 +870,7 @@ int arch_domain_soft_reset(struct domain *d)
 
 void arch_domain_creation_finished(struct domain *d)
 {
-    /*
-     * To avoid flushing the whole guest RAM on the first Set/Way, we
-     * invalidate the P2M to track what has been accessed.
-     *
-     * This is only turned when IOMMU is not used or the page-table are
-     * not shared because bit[0] (e.g valid bit) unset will result
-     * IOMMU fault that could be not fixed-up.
-     */
-    if ( !iommu_use_hap_pt(d) )
-        p2m_invalidate_root(p2m_get_hostp2m(d));
+    p2m_domain_creation_finished(d);
 }
 
 static int is_guest_pv32_psr(uint32_t psr)
diff --git a/xen/arch/arm/include/asm/mmu/p2m.h b/xen/arch/arm/include/asm/mmu/p2m.h
new file mode 100644
index 0000000000..58496c0b09
--- /dev/null
+++ b/xen/arch/arm/include/asm/mmu/p2m.h
@@ -0,0 +1,26 @@
+/* SPDX-License-Identifier: GPL-2.0-or-later */
+#ifndef __ARM_MMU_P2M_H__
+#define __ARM_MMU_P2M_H__
+
+extern unsigned int p2m_root_order;
+extern unsigned int p2m_root_level;
+#define P2M_ROOT_ORDER p2m_root_order
+#define P2M_ROOT_LEVEL p2m_root_level
+#define P2M_ROOT_PAGES    (1U << P2M_ROOT_ORDER)
+
+struct p2m_domain;
+void p2m_force_tlb_flush_sync(struct p2m_domain *p2m);
+void p2m_tlb_flush_sync(struct p2m_domain *p2m);
+
+void p2m_clear_root_pages(struct p2m_domain *p2m);
+
+#endif /* __ARM_MMU_P2M_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/p2m.h b/xen/arch/arm/include/asm/p2m.h
index 940495d42b..e7428fb8db 100644
--- a/xen/arch/arm/include/asm/p2m.h
+++ b/xen/arch/arm/include/asm/p2m.h
@@ -14,10 +14,19 @@
 /* Holds the bit size of IPAs in p2m tables.  */
 extern unsigned int p2m_ipa_bits;
 
-extern unsigned int p2m_root_order;
-extern unsigned int p2m_root_level;
-#define P2M_ROOT_ORDER    p2m_root_order
-#define P2M_ROOT_LEVEL p2m_root_level
+#define MAX_VMID_8_BIT  (1UL << 8)
+#define MAX_VMID_16_BIT (1UL << 16)
+
+#define INVALID_VMID 0 /* VMID 0 is reserved */
+
+#ifdef CONFIG_ARM_64
+extern unsigned int max_vmid;
+/* VMID is by default 8 bit width on AArch64 */
+#define MAX_VMID       max_vmid
+#else
+/* VMID is always 8 bit width on AArch32 */
+#define MAX_VMID        MAX_VMID_8_BIT
+#endif
 
 struct domain;
 
@@ -156,6 +165,12 @@ typedef enum {
 #endif
 #include <xen/p2m-common.h>
 
+#if defined(CONFIG_MMU)
+# include <asm/mmu/p2m.h>
+#else
+# error "Unknown memory management layout"
+#endif
+
 static inline bool arch_acquire_resource_check(struct domain *d)
 {
     /*
@@ -180,6 +195,10 @@ void p2m_altp2m_check(struct vcpu *v, uint16_t idx)
  */
 void p2m_restrict_ipa_bits(unsigned int ipa_bits);
 
+void p2m_vmid_allocator_init(void);
+int p2m_alloc_vmid(struct domain *d);
+void p2m_free_vmid(struct domain *d);
+
 /* Second stage paging setup, to be called on all CPUs */
 void setup_virt_paging(void);
 
@@ -242,8 +261,6 @@ static inline int p2m_is_write_locked(struct p2m_domain *p2m)
     return rw_is_write_locked(&p2m->lock);
 }
 
-void p2m_tlb_flush_sync(struct p2m_domain *p2m);
-
 /* Look up the MFN corresponding to a domain's GFN. */
 mfn_t p2m_lookup(struct domain *d, gfn_t gfn, p2m_type_t *t);
 
@@ -271,8 +288,7 @@ int p2m_set_entry(struct p2m_domain *p2m,
 
 bool p2m_resolve_translation_fault(struct domain *d, gfn_t gfn);
 
-void p2m_clear_root_pages(struct p2m_domain *p2m);
-void p2m_invalidate_root(struct p2m_domain *p2m);
+void p2m_domain_creation_finished(struct domain *d);
 
 /*
  * Clean & invalidate caches corresponding to a region [start,end) of guest
diff --git a/xen/arch/arm/mmu/Makefile b/xen/arch/arm/mmu/Makefile
index 98aea965df..67475fcd80 100644
--- a/xen/arch/arm/mmu/Makefile
+++ b/xen/arch/arm/mmu/Makefile
@@ -1,3 +1,4 @@
+obj-y += p2m.o
 obj-y += pt.o
 obj-y += setup.o
 obj-y += smpboot.o
diff --git a/xen/arch/arm/mmu/p2m.c b/xen/arch/arm/mmu/p2m.c
new file mode 100644
index 0000000000..6a5a080307
--- /dev/null
+++ b/xen/arch/arm/mmu/p2m.c
@@ -0,0 +1,1834 @@
+/* SPDX-License-Identifier: GPL-2.0 */
+#include <xen/cpu.h>
+#include <xen/domain_page.h>
+#include <xen/ioreq.h>
+#include <xen/lib.h>
+#include <xen/sched.h>
+#include <xen/softirq.h>
+
+#include <asm/alternative.h>
+#include <asm/event.h>
+#include <asm/flushtlb.h>
+#include <asm/page.h>
+
+unsigned int __read_mostly p2m_root_order;
+unsigned int __read_mostly p2m_root_level;
+
+static mfn_t __read_mostly empty_root_mfn;
+
+static uint64_t generate_vttbr(uint16_t vmid, mfn_t root_mfn)
+{
+    return (mfn_to_maddr(root_mfn) | ((uint64_t)vmid << 48));
+}
+
+static struct page_info *p2m_alloc_page(struct domain *d)
+{
+    struct page_info *pg;
+
+    /*
+     * For hardware domain, there should be no limit in the number of pages that
+     * can be allocated, so that the kernel may take advantage of the extended
+     * regions. Hence, allocate p2m pages for hardware domains from heap.
+     */
+    if ( is_hardware_domain(d) )
+    {
+        pg = alloc_domheap_page(NULL, 0);
+        if ( pg == NULL )
+            printk(XENLOG_G_ERR "Failed to allocate P2M pages for hwdom.\n");
+    }
+    else
+    {
+        spin_lock(&d->arch.paging.lock);
+        pg = page_list_remove_head(&d->arch.paging.p2m_freelist);
+        spin_unlock(&d->arch.paging.lock);
+    }
+
+    return pg;
+}
+
+static void p2m_free_page(struct domain *d, struct page_info *pg)
+{
+    if ( is_hardware_domain(d) )
+        free_domheap_page(pg);
+    else
+    {
+        spin_lock(&d->arch.paging.lock);
+        page_list_add_tail(pg, &d->arch.paging.p2m_freelist);
+        spin_unlock(&d->arch.paging.lock);
+    }
+}
+
+/* Return the size of the pool, in bytes. */
+int arch_get_paging_mempool_size(struct domain *d, uint64_t *size)
+{
+    *size = (uint64_t)ACCESS_ONCE(d->arch.paging.p2m_total_pages) << PAGE_SHIFT;
+    return 0;
+}
+
+/*
+ * Set the pool of pages to the required number of pages.
+ * Returns 0 for success, non-zero for failure.
+ * Call with d->arch.paging.lock held.
+ */
+int p2m_set_allocation(struct domain *d, unsigned long pages, bool *preempted)
+{
+    struct page_info *pg;
+
+    ASSERT(spin_is_locked(&d->arch.paging.lock));
+
+    for ( ; ; )
+    {
+        if ( d->arch.paging.p2m_total_pages < pages )
+        {
+            /* Need to allocate more memory from domheap */
+            pg = alloc_domheap_page(NULL, 0);
+            if ( pg == NULL )
+            {
+                printk(XENLOG_ERR "Failed to allocate P2M pages.\n");
+                return -ENOMEM;
+            }
+            ACCESS_ONCE(d->arch.paging.p2m_total_pages) =
+                d->arch.paging.p2m_total_pages + 1;
+            page_list_add_tail(pg, &d->arch.paging.p2m_freelist);
+        }
+        else if ( d->arch.paging.p2m_total_pages > pages )
+        {
+            /* Need to return memory to domheap */
+            pg = page_list_remove_head(&d->arch.paging.p2m_freelist);
+            if( pg )
+            {
+                ACCESS_ONCE(d->arch.paging.p2m_total_pages) =
+                    d->arch.paging.p2m_total_pages - 1;
+                free_domheap_page(pg);
+            }
+            else
+            {
+                printk(XENLOG_ERR
+                       "Failed to free P2M pages, P2M freelist is empty.\n");
+                return -ENOMEM;
+            }
+        }
+        else
+            break;
+
+        /* Check to see if we need to yield and try again */
+        if ( preempted && general_preempt_check() )
+        {
+            *preempted = true;
+            return -ERESTART;
+        }
+    }
+
+    return 0;
+}
+
+int arch_set_paging_mempool_size(struct domain *d, uint64_t size)
+{
+    unsigned long pages = size >> PAGE_SHIFT;
+    bool preempted = false;
+    int rc;
+
+    if ( (size & ~PAGE_MASK) ||          /* Non page-sized request? */
+         pages != (size >> PAGE_SHIFT) ) /* 32-bit overflow? */
+        return -EINVAL;
+
+    spin_lock(&d->arch.paging.lock);
+    rc = p2m_set_allocation(d, pages, &preempted);
+    spin_unlock(&d->arch.paging.lock);
+
+    ASSERT(preempted == (rc == -ERESTART));
+
+    return rc;
+}
+
+int p2m_teardown_allocation(struct domain *d)
+{
+    int ret = 0;
+    bool preempted = false;
+
+    spin_lock(&d->arch.paging.lock);
+    if ( d->arch.paging.p2m_total_pages != 0 )
+    {
+        ret = p2m_set_allocation(d, 0, &preempted);
+        if ( preempted )
+        {
+            spin_unlock(&d->arch.paging.lock);
+            return -ERESTART;
+        }
+        ASSERT(d->arch.paging.p2m_total_pages == 0);
+    }
+    spin_unlock(&d->arch.paging.lock);
+
+    return ret;
+}
+
+void p2m_dump_info(struct domain *d)
+{
+    struct p2m_domain *p2m = p2m_get_hostp2m(d);
+
+    p2m_read_lock(p2m);
+    printk("p2m mappings for domain %d (vmid %d):\n",
+           d->domain_id, p2m->vmid);
+    BUG_ON(p2m->stats.mappings[0] || p2m->stats.shattered[0]);
+    printk("  1G mappings: %ld (shattered %ld)\n",
+           p2m->stats.mappings[1], p2m->stats.shattered[1]);
+    printk("  2M mappings: %ld (shattered %ld)\n",
+           p2m->stats.mappings[2], p2m->stats.shattered[2]);
+    printk("  4K mappings: %ld\n", p2m->stats.mappings[3]);
+    p2m_read_unlock(p2m);
+}
+
+void dump_p2m_lookup(struct domain *d, paddr_t addr)
+{
+    struct p2m_domain *p2m = p2m_get_hostp2m(d);
+
+    printk("dom%d IPA 0x%"PRIpaddr"\n", d->domain_id, addr);
+
+    printk("P2M @ %p mfn:%#"PRI_mfn"\n",
+           p2m->root, mfn_x(page_to_mfn(p2m->root)));
+
+    dump_pt_walk(page_to_maddr(p2m->root), addr,
+                 P2M_ROOT_LEVEL, P2M_ROOT_PAGES);
+}
+
+/*
+ * p2m_save_state and p2m_restore_state work in pair to workaround
+ * ARM64_WORKAROUND_AT_SPECULATE. p2m_save_state will set-up VTTBR to
+ * point to the empty page-tables to stop allocating TLB entries.
+ */
+void p2m_save_state(struct vcpu *p)
+{
+    p->arch.sctlr = READ_SYSREG(SCTLR_EL1);
+
+    if ( cpus_have_const_cap(ARM64_WORKAROUND_AT_SPECULATE) )
+    {
+        WRITE_SYSREG64(generate_vttbr(INVALID_VMID, empty_root_mfn), VTTBR_EL2);
+        /*
+         * Ensure VTTBR_EL2 is correctly synchronized so we can restore
+         * the next vCPU context without worrying about AT instruction
+         * speculation.
+         */
+        isb();
+    }
+}
+
+void p2m_restore_state(struct vcpu *n)
+{
+    struct p2m_domain *p2m = p2m_get_hostp2m(n->domain);
+    uint8_t *last_vcpu_ran;
+
+    if ( is_idle_vcpu(n) )
+        return;
+
+    WRITE_SYSREG(n->arch.sctlr, SCTLR_EL1);
+    WRITE_SYSREG(n->arch.hcr_el2, HCR_EL2);
+
+    /*
+     * ARM64_WORKAROUND_AT_SPECULATE: VTTBR_EL2 should be restored after all
+     * registers associated to EL1/EL0 translations regime have been
+     * synchronized.
+     */
+    asm volatile(ALTERNATIVE("nop", "isb", ARM64_WORKAROUND_AT_SPECULATE));
+    WRITE_SYSREG64(p2m->vttbr, VTTBR_EL2);
+
+    last_vcpu_ran = &p2m->last_vcpu_ran[smp_processor_id()];
+
+    /*
+     * While we are restoring an out-of-context translation regime
+     * we still need to ensure:
+     *  - VTTBR_EL2 is synchronized before flushing the TLBs
+     *  - All registers for EL1 are synchronized before executing an AT
+     *  instructions targeting S1/S2.
+     */
+    isb();
+
+    /*
+     * Flush local TLB for the domain to prevent wrong TLB translation
+     * when running multiple vCPU of the same domain on a single pCPU.
+     */
+    if ( *last_vcpu_ran != INVALID_VCPU_ID && *last_vcpu_ran != n->vcpu_id )
+        flush_guest_tlb_local();
+
+    *last_vcpu_ran = n->vcpu_id;
+}
+
+/*
+ * Force a synchronous P2M TLB flush.
+ *
+ * Must be called with the p2m lock held.
+ */
+void p2m_force_tlb_flush_sync(struct p2m_domain *p2m)
+{
+    unsigned long flags = 0;
+    uint64_t ovttbr;
+
+    ASSERT(p2m_is_write_locked(p2m));
+
+    /*
+     * ARM only provides an instruction to flush TLBs for the current
+     * VMID. So switch to the VTTBR of a given P2M if different.
+     */
+    ovttbr = READ_SYSREG64(VTTBR_EL2);
+    if ( ovttbr != p2m->vttbr )
+    {
+        uint64_t vttbr;
+
+        local_irq_save(flags);
+
+        /*
+         * ARM64_WORKAROUND_AT_SPECULATE: We need to stop AT to allocate
+         * TLBs entries because the context is partially modified. We
+         * only need the VMID for flushing the TLBs, so we can generate
+         * a new VTTBR with the VMID to flush and the empty root table.
+         */
+        if ( !cpus_have_const_cap(ARM64_WORKAROUND_AT_SPECULATE) )
+            vttbr = p2m->vttbr;
+        else
+            vttbr = generate_vttbr(p2m->vmid, empty_root_mfn);
+
+        WRITE_SYSREG64(vttbr, VTTBR_EL2);
+
+        /* Ensure VTTBR_EL2 is synchronized before flushing the TLBs */
+        isb();
+    }
+
+    flush_guest_tlb();
+
+    if ( ovttbr != READ_SYSREG64(VTTBR_EL2) )
+    {
+        WRITE_SYSREG64(ovttbr, VTTBR_EL2);
+        /* Ensure VTTBR_EL2 is back in place before continuing. */
+        isb();
+        local_irq_restore(flags);
+    }
+
+    p2m->need_flush = false;
+}
+
+void p2m_tlb_flush_sync(struct p2m_domain *p2m)
+{
+    if ( p2m->need_flush )
+        p2m_force_tlb_flush_sync(p2m);
+}
+
+/*
+ * Find and map the root page table. The caller is responsible for
+ * unmapping the table.
+ *
+ * The function will return NULL if the offset of the root table is
+ * invalid.
+ */
+static lpae_t *p2m_get_root_pointer(struct p2m_domain *p2m,
+                                    gfn_t gfn)
+{
+    unsigned long root_table;
+
+    /*
+     * While the root table index is the offset from the previous level,
+     * we can't use (P2M_ROOT_LEVEL - 1) because the root level might be
+     * 0. Yet we still want to check if all the unused bits are zeroed.
+     */
+    root_table = gfn_x(gfn) >> (XEN_PT_LEVEL_ORDER(P2M_ROOT_LEVEL) +
+                                XEN_PT_LPAE_SHIFT);
+    if ( root_table >= P2M_ROOT_PAGES )
+        return NULL;
+
+    return __map_domain_page(p2m->root + root_table);
+}
+
+/*
+ * Lookup the MFN corresponding to a domain's GFN.
+ * Lookup mem access in the ratrix tree.
+ * The entries associated to the GFN is considered valid.
+ */
+static p2m_access_t p2m_mem_access_radix_get(struct p2m_domain *p2m, gfn_t gfn)
+{
+    void *ptr;
+
+    if ( !p2m->mem_access_enabled )
+        return p2m->default_access;
+
+    ptr = radix_tree_lookup(&p2m->mem_access_settings, gfn_x(gfn));
+    if ( !ptr )
+        return p2m_access_rwx;
+    else
+        return radix_tree_ptr_to_int(ptr);
+}
+
+/*
+ * In the case of the P2M, the valid bit is used for other purpose. Use
+ * the type to check whether an entry is valid.
+ */
+static inline bool p2m_is_valid(lpae_t pte)
+{
+    return pte.p2m.type != p2m_invalid;
+}
+
+/*
+ * lpae_is_* helpers don't check whether the valid bit is set in the
+ * PTE. Provide our own overlay to check the valid bit.
+ */
+static inline bool p2m_is_mapping(lpae_t pte, unsigned int level)
+{
+    return p2m_is_valid(pte) && lpae_is_mapping(pte, level);
+}
+
+static inline bool p2m_is_superpage(lpae_t pte, unsigned int level)
+{
+    return p2m_is_valid(pte) && lpae_is_superpage(pte, level);
+}
+
+#define GUEST_TABLE_MAP_FAILED 0
+#define GUEST_TABLE_SUPER_PAGE 1
+#define GUEST_TABLE_NORMAL_PAGE 2
+
+static int p2m_create_table(struct p2m_domain *p2m, lpae_t *entry);
+
+/*
+ * Take the currently mapped table, find the corresponding GFN entry,
+ * and map the next table, if available. The previous table will be
+ * unmapped if the next level was mapped (e.g GUEST_TABLE_NORMAL_PAGE
+ * returned).
+ *
+ * The read_only parameters indicates whether intermediate tables should
+ * be allocated when not present.
+ *
+ * Return values:
+ *  GUEST_TABLE_MAP_FAILED: Either read_only was set and the entry
+ *  was empty, or allocating a new page failed.
+ *  GUEST_TABLE_NORMAL_PAGE: next level mapped normally
+ *  GUEST_TABLE_SUPER_PAGE: The next entry points to a superpage.
+ */
+static int p2m_next_level(struct p2m_domain *p2m, bool read_only,
+                          unsigned int level, lpae_t **table,
+                          unsigned int offset)
+{
+    lpae_t *entry;
+    int ret;
+    mfn_t mfn;
+
+    entry = *table + offset;
+
+    if ( !p2m_is_valid(*entry) )
+    {
+        if ( read_only )
+            return GUEST_TABLE_MAP_FAILED;
+
+        ret = p2m_create_table(p2m, entry);
+        if ( ret )
+            return GUEST_TABLE_MAP_FAILED;
+    }
+
+    /* The function p2m_next_level is never called at the 3rd level */
+    ASSERT(level < 3);
+    if ( p2m_is_mapping(*entry, level) )
+        return GUEST_TABLE_SUPER_PAGE;
+
+    mfn = lpae_get_mfn(*entry);
+
+    unmap_domain_page(*table);
+    *table = map_domain_page(mfn);
+
+    return GUEST_TABLE_NORMAL_PAGE;
+}
+
+/*
+ * Get the details of a given gfn.
+ *
+ * If the entry is present, the associated MFN will be returned and the
+ * access and type filled up. The page_order will correspond to the
+ * order of the mapping in the page table (i.e it could be a superpage).
+ *
+ * If the entry is not present, INVALID_MFN will be returned and the
+ * page_order will be set according to the order of the invalid range.
+ *
+ * valid will contain the value of bit[0] (e.g valid bit) of the
+ * entry.
+ */
+mfn_t p2m_get_entry(struct p2m_domain *p2m, gfn_t gfn,
+                    p2m_type_t *t, p2m_access_t *a,
+                    unsigned int *page_order,
+                    bool *valid)
+{
+    paddr_t addr = gfn_to_gaddr(gfn);
+    unsigned int level = 0;
+    lpae_t entry, *table;
+    int rc;
+    mfn_t mfn = INVALID_MFN;
+    p2m_type_t _t;
+    DECLARE_OFFSETS(offsets, addr);
+
+    ASSERT(p2m_is_locked(p2m));
+    BUILD_BUG_ON(THIRD_MASK != PAGE_MASK);
+
+    /* Allow t to be NULL */
+    t = t ?: &_t;
+
+    *t = p2m_invalid;
+
+    if ( valid )
+        *valid = false;
+
+    /* XXX: Check if the mapping is lower than the mapped gfn */
+
+    /* This gfn is higher than the highest the p2m map currently holds */
+    if ( gfn_x(gfn) > gfn_x(p2m->max_mapped_gfn) )
+    {
+        for ( level = P2M_ROOT_LEVEL; level < 3; level++ )
+            if ( (gfn_x(gfn) & (XEN_PT_LEVEL_MASK(level) >> PAGE_SHIFT)) >
+                 gfn_x(p2m->max_mapped_gfn) )
+                break;
+
+        goto out;
+    }
+
+    table = p2m_get_root_pointer(p2m, gfn);
+
+    /*
+     * the table should always be non-NULL because the gfn is below
+     * p2m->max_mapped_gfn and the root table pages are always present.
+     */
+    if ( !table )
+    {
+        ASSERT_UNREACHABLE();
+        level = P2M_ROOT_LEVEL;
+        goto out;
+    }
+
+    for ( level = P2M_ROOT_LEVEL; level < 3; level++ )
+    {
+        rc = p2m_next_level(p2m, true, level, &table, offsets[level]);
+        if ( rc == GUEST_TABLE_MAP_FAILED )
+            goto out_unmap;
+        else if ( rc != GUEST_TABLE_NORMAL_PAGE )
+            break;
+    }
+
+    entry = table[offsets[level]];
+
+    if ( p2m_is_valid(entry) )
+    {
+        *t = entry.p2m.type;
+
+        if ( a )
+            *a = p2m_mem_access_radix_get(p2m, gfn);
+
+        mfn = lpae_get_mfn(entry);
+        /*
+         * The entry may point to a superpage. Find the MFN associated
+         * to the GFN.
+         */
+        mfn = mfn_add(mfn,
+                      gfn_x(gfn) & ((1UL << XEN_PT_LEVEL_ORDER(level)) - 1));
+
+        if ( valid )
+            *valid = lpae_is_valid(entry);
+    }
+
+out_unmap:
+    unmap_domain_page(table);
+
+out:
+    if ( page_order )
+        *page_order = XEN_PT_LEVEL_ORDER(level);
+
+    return mfn;
+}
+
+static void p2m_set_permission(lpae_t *e, p2m_type_t t, p2m_access_t a)
+{
+    /* First apply type permissions */
+    switch ( t )
+    {
+    case p2m_ram_rw:
+        e->p2m.xn = 0;
+        e->p2m.write = 1;
+        break;
+
+    case p2m_ram_ro:
+        e->p2m.xn = 0;
+        e->p2m.write = 0;
+        break;
+
+    case p2m_iommu_map_rw:
+    case p2m_map_foreign_rw:
+    case p2m_grant_map_rw:
+    case p2m_mmio_direct_dev:
+    case p2m_mmio_direct_nc:
+    case p2m_mmio_direct_c:
+        e->p2m.xn = 1;
+        e->p2m.write = 1;
+        break;
+
+    case p2m_iommu_map_ro:
+    case p2m_map_foreign_ro:
+    case p2m_grant_map_ro:
+    case p2m_invalid:
+        e->p2m.xn = 1;
+        e->p2m.write = 0;
+        break;
+
+    case p2m_max_real_type:
+        BUG();
+        break;
+    }
+
+    /* Then restrict with access permissions */
+    switch ( a )
+    {
+    case p2m_access_rwx:
+        break;
+    case p2m_access_wx:
+        e->p2m.read = 0;
+        break;
+    case p2m_access_rw:
+        e->p2m.xn = 1;
+        break;
+    case p2m_access_w:
+        e->p2m.read = 0;
+        e->p2m.xn = 1;
+        break;
+    case p2m_access_rx:
+    case p2m_access_rx2rw:
+        e->p2m.write = 0;
+        break;
+    case p2m_access_x:
+        e->p2m.write = 0;
+        e->p2m.read = 0;
+        break;
+    case p2m_access_r:
+        e->p2m.write = 0;
+        e->p2m.xn = 1;
+        break;
+    case p2m_access_n:
+    case p2m_access_n2rwx:
+        e->p2m.read = e->p2m.write = 0;
+        e->p2m.xn = 1;
+        break;
+    }
+}
+
+static lpae_t mfn_to_p2m_entry(mfn_t mfn, p2m_type_t t, p2m_access_t a)
+{
+    /*
+     * sh, xn and write bit will be defined in the following switches
+     * based on mattr and t.
+     */
+    lpae_t e = (lpae_t) {
+        .p2m.af = 1,
+        .p2m.read = 1,
+        .p2m.table = 1,
+        .p2m.valid = 1,
+        .p2m.type = t,
+    };
+
+    BUILD_BUG_ON(p2m_max_real_type > (1 << 4));
+
+    switch ( t )
+    {
+    case p2m_mmio_direct_dev:
+        e.p2m.mattr = MATTR_DEV;
+        e.p2m.sh = LPAE_SH_OUTER;
+        break;
+
+    case p2m_mmio_direct_c:
+        e.p2m.mattr = MATTR_MEM;
+        e.p2m.sh = LPAE_SH_OUTER;
+        break;
+
+    /*
+     * ARM ARM: Overlaying the shareability attribute (DDI
+     * 0406C.b B3-1376 to 1377)
+     *
+     * A memory region with a resultant memory type attribute of Normal,
+     * and a resultant cacheability attribute of Inner Non-cacheable,
+     * Outer Non-cacheable, must have a resultant shareability attribute
+     * of Outer Shareable, otherwise shareability is UNPREDICTABLE.
+     *
+     * On ARMv8 shareability is ignored and explicitly treated as Outer
+     * Shareable for Normal Inner Non_cacheable, Outer Non-cacheable.
+     * See the note for table D4-40, in page 1788 of the ARM DDI 0487A.j.
+     */
+    case p2m_mmio_direct_nc:
+        e.p2m.mattr = MATTR_MEM_NC;
+        e.p2m.sh = LPAE_SH_OUTER;
+        break;
+
+    default:
+        e.p2m.mattr = MATTR_MEM;
+        e.p2m.sh = LPAE_SH_INNER;
+    }
+
+    p2m_set_permission(&e, t, a);
+
+    ASSERT(!(mfn_to_maddr(mfn) & ~PADDR_MASK));
+
+    lpae_set_mfn(e, mfn);
+
+    return e;
+}
+
+/* Generate table entry with correct attributes. */
+static lpae_t page_to_p2m_table(struct page_info *page)
+{
+    /*
+     * The access value does not matter because the hardware will ignore
+     * the permission fields for table entry.
+     *
+     * We use p2m_ram_rw so the entry has a valid type. This is important
+     * for p2m_is_valid() to return valid on table entries.
+     */
+    return mfn_to_p2m_entry(page_to_mfn(page), p2m_ram_rw, p2m_access_rwx);
+}
+
+static inline void p2m_write_pte(lpae_t *p, lpae_t pte, bool clean_pte)
+{
+    write_pte(p, pte);
+    if ( clean_pte )
+        clean_dcache(*p);
+}
+
+static inline void p2m_remove_pte(lpae_t *p, bool clean_pte)
+{
+    lpae_t pte;
+
+    memset(&pte, 0x00, sizeof(pte));
+    p2m_write_pte(p, pte, clean_pte);
+}
+
+/* Allocate a new page table page and hook it in via the given entry. */
+static int p2m_create_table(struct p2m_domain *p2m, lpae_t *entry)
+{
+    struct page_info *page;
+    lpae_t *p;
+
+    ASSERT(!p2m_is_valid(*entry));
+
+    page = p2m_alloc_page(p2m->domain);
+    if ( page == NULL )
+        return -ENOMEM;
+
+    page_list_add(page, &p2m->pages);
+
+    p = __map_domain_page(page);
+    clear_page(p);
+
+    if ( p2m->clean_pte )
+        clean_dcache_va_range(p, PAGE_SIZE);
+
+    unmap_domain_page(p);
+
+    p2m_write_pte(entry, page_to_p2m_table(page), p2m->clean_pte);
+
+    return 0;
+}
+
+static int p2m_mem_access_radix_set(struct p2m_domain *p2m, gfn_t gfn,
+                                    p2m_access_t a)
+{
+    int rc;
+
+    if ( !p2m->mem_access_enabled )
+        return 0;
+
+    if ( p2m_access_rwx == a )
+    {
+        radix_tree_delete(&p2m->mem_access_settings, gfn_x(gfn));
+        return 0;
+    }
+
+    rc = radix_tree_insert(&p2m->mem_access_settings, gfn_x(gfn),
+                           radix_tree_int_to_ptr(a));
+    if ( rc == -EEXIST )
+    {
+        /* If a setting already exists, change it to the new one */
+        radix_tree_replace_slot(
+            radix_tree_lookup_slot(
+                &p2m->mem_access_settings, gfn_x(gfn)),
+            radix_tree_int_to_ptr(a));
+        rc = 0;
+    }
+
+    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)
+{
+    mfn_t mfn = lpae_get_mfn(pte);
+
+    ASSERT(p2m_is_valid(pte));
+
+    /*
+     * TODO: Handle other p2m types
+     *
+     * It's safe to do the put_page here because page_alloc will
+     * flush the TLBs if the page is reallocated before the end of
+     * this loop.
+     */
+    if ( p2m_is_foreign(pte.p2m.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) )
+        page_set_xenheap_gfn(mfn_to_page(mfn), INVALID_GFN);
+}
+
+/* Free lpae sub-tree behind an entry */
+static void p2m_free_entry(struct p2m_domain *p2m,
+                           lpae_t entry, unsigned int level)
+{
+    unsigned int i;
+    lpae_t *table;
+    mfn_t mfn;
+    struct page_info *pg;
+
+    /* Nothing to do if the entry is invalid. */
+    if ( !p2m_is_valid(entry) )
+        return;
+
+    if ( p2m_is_superpage(entry, level) || (level == 3) )
+    {
+#ifdef CONFIG_IOREQ_SERVER
+        /*
+         * If this gets called then either the entry was replaced by an entry
+         * with a different base (valid case) or the shattering of a superpage
+         * has failed (error case).
+         * So, at worst, the spurious mapcache invalidation might be sent.
+         */
+        if ( p2m_is_ram(entry.p2m.type) &&
+             domain_has_ioreq_server(p2m->domain) )
+            ioreq_request_mapcache_invalidate(p2m->domain);
+#endif
+
+        p2m->stats.mappings[level]--;
+        /* Nothing to do if the entry is a super-page. */
+        if ( level == 3 )
+            p2m_put_l3_page(entry);
+        return;
+    }
+
+    table = map_domain_page(lpae_get_mfn(entry));
+    for ( i = 0; i < XEN_PT_LPAE_ENTRIES; i++ )
+        p2m_free_entry(p2m, *(table + i), level + 1);
+
+    unmap_domain_page(table);
+
+    /*
+     * Make sure all the references in the TLB have been removed before
+     * freing the intermediate page table.
+     * XXX: Should we defer the free of the page table to avoid the
+     * flush?
+     */
+    p2m_tlb_flush_sync(p2m);
+
+    mfn = lpae_get_mfn(entry);
+    ASSERT(mfn_valid(mfn));
+
+    pg = mfn_to_page(mfn);
+
+    page_list_del(pg, &p2m->pages);
+    p2m_free_page(p2m->domain, pg);
+}
+
+static bool p2m_split_superpage(struct p2m_domain *p2m, lpae_t *entry,
+                                unsigned int level, unsigned int target,
+                                const unsigned int *offsets)
+{
+    struct page_info *page;
+    unsigned int i;
+    lpae_t pte, *table;
+    bool rv = true;
+
+    /* Convenience aliases */
+    mfn_t mfn = lpae_get_mfn(*entry);
+    unsigned int next_level = level + 1;
+    unsigned int level_order = XEN_PT_LEVEL_ORDER(next_level);
+
+    /*
+     * This should only be called with target != level and the entry is
+     * a superpage.
+     */
+    ASSERT(level < target);
+    ASSERT(p2m_is_superpage(*entry, level));
+
+    page = p2m_alloc_page(p2m->domain);
+    if ( !page )
+        return false;
+
+    page_list_add(page, &p2m->pages);
+    table = __map_domain_page(page);
+
+    /*
+     * We are either splitting a first level 1G page into 512 second level
+     * 2M pages, or a second level 2M page into 512 third level 4K pages.
+     */
+    for ( i = 0; i < XEN_PT_LPAE_ENTRIES; i++ )
+    {
+        lpae_t *new_entry = table + i;
+
+        /*
+         * Use the content of the superpage entry and override
+         * the necessary fields. So the correct permission are kept.
+         */
+        pte = *entry;
+        lpae_set_mfn(pte, mfn_add(mfn, i << level_order));
+
+        /*
+         * First and second level pages set p2m.table = 0, but third
+         * level entries set p2m.table = 1.
+         */
+        pte.p2m.table = (next_level == 3);
+
+        write_pte(new_entry, pte);
+    }
+
+    /* Update stats */
+    p2m->stats.shattered[level]++;
+    p2m->stats.mappings[level]--;
+    p2m->stats.mappings[next_level] += XEN_PT_LPAE_ENTRIES;
+
+    /*
+     * Shatter superpage in the page to the level we want to make the
+     * changes.
+     * This is done outside the loop to avoid checking the offset to
+     * know whether the entry should be shattered for every entry.
+     */
+    if ( next_level != target )
+        rv = p2m_split_superpage(p2m, table + offsets[next_level],
+                                 level + 1, target, offsets);
+
+    if ( p2m->clean_pte )
+        clean_dcache_va_range(table, PAGE_SIZE);
+
+    unmap_domain_page(table);
+
+    /*
+     * Even if we failed, we should install the newly allocated LPAE
+     * entry. The caller will be in charge to free the sub-tree.
+     */
+    p2m_write_pte(entry, page_to_p2m_table(page), p2m->clean_pte);
+
+    return rv;
+}
+
+/*
+ * Insert an entry in the p2m. This should be called with a mapping
+ * equal to a page/superpage (4K, 2M, 1G).
+ */
+static int __p2m_set_entry(struct p2m_domain *p2m,
+                           gfn_t sgfn,
+                           unsigned int page_order,
+                           mfn_t smfn,
+                           p2m_type_t t,
+                           p2m_access_t a)
+{
+    unsigned int level = 0;
+    unsigned int target = 3 - (page_order / XEN_PT_LPAE_SHIFT);
+    lpae_t *entry, *table, orig_pte;
+    int rc;
+    /* A mapping is removed if the MFN is invalid. */
+    bool removing_mapping = mfn_eq(smfn, INVALID_MFN);
+    DECLARE_OFFSETS(offsets, gfn_to_gaddr(sgfn));
+
+    ASSERT(p2m_is_write_locked(p2m));
+
+    /*
+     * Check if the level target is valid: we only support
+     * 4K - 2M - 1G mapping.
+     */
+    ASSERT(target > 0 && target <= 3);
+
+    table = p2m_get_root_pointer(p2m, sgfn);
+    if ( !table )
+        return -EINVAL;
+
+    for ( level = P2M_ROOT_LEVEL; level < target; level++ )
+    {
+        /*
+         * Don't try to allocate intermediate page table if the mapping
+         * is about to be removed.
+         */
+        rc = p2m_next_level(p2m, removing_mapping,
+                            level, &table, offsets[level]);
+        if ( rc == GUEST_TABLE_MAP_FAILED )
+        {
+            /*
+             * We are here because p2m_next_level has failed to map
+             * the intermediate page table (e.g the table does not exist
+             * and they p2m tree is read-only). It is a valid case
+             * when removing a mapping as it may not exist in the
+             * page table. In this case, just ignore it.
+             */
+            rc = removing_mapping ?  0 : -ENOENT;
+            goto out;
+        }
+        else if ( rc != GUEST_TABLE_NORMAL_PAGE )
+            break;
+    }
+
+    entry = table + offsets[level];
+
+    /*
+     * If we are here with level < target, we must be at a leaf node,
+     * and we need to break up the superpage.
+     */
+    if ( level < target )
+    {
+        /* We need to split the original page. */
+        lpae_t split_pte = *entry;
+
+        ASSERT(p2m_is_superpage(*entry, level));
+
+        if ( !p2m_split_superpage(p2m, &split_pte, level, target, offsets) )
+        {
+            /*
+             * The current super-page is still in-place, so re-increment
+             * the stats.
+             */
+            p2m->stats.mappings[level]++;
+
+            /* Free the allocated sub-tree */
+            p2m_free_entry(p2m, split_pte, level);
+
+            rc = -ENOMEM;
+            goto out;
+        }
+
+        /*
+         * Follow the break-before-sequence to update the entry.
+         * For more details see (D4.7.1 in ARM DDI 0487A.j).
+         */
+        p2m_remove_pte(entry, p2m->clean_pte);
+        p2m_force_tlb_flush_sync(p2m);
+
+        p2m_write_pte(entry, split_pte, p2m->clean_pte);
+
+        /* then move to the level we want to make real changes */
+        for ( ; level < target; level++ )
+        {
+            rc = p2m_next_level(p2m, true, level, &table, offsets[level]);
+
+            /*
+             * The entry should be found and either be a table
+             * or a superpage if level 3 is not targeted
+             */
+            ASSERT(rc == GUEST_TABLE_NORMAL_PAGE ||
+                   (rc == GUEST_TABLE_SUPER_PAGE && target < 3));
+        }
+
+        entry = table + offsets[level];
+    }
+
+    /*
+     * We should always be there with the correct level because
+     * all the intermediate tables have been installed if necessary.
+     */
+    ASSERT(level == target);
+
+    orig_pte = *entry;
+
+    /*
+     * The radix-tree can only work on 4KB. This is only used when
+     * memaccess is enabled and during shutdown.
+     */
+    ASSERT(!p2m->mem_access_enabled || page_order == 0 ||
+           p2m->domain->is_dying);
+    /*
+     * The access type should always be p2m_access_rwx when the mapping
+     * is removed.
+     */
+    ASSERT(!mfn_eq(INVALID_MFN, smfn) || (a == p2m_access_rwx));
+    /*
+     * Update the mem access permission before update the P2M. So we
+     * don't have to revert the mapping if it has failed.
+     */
+    rc = p2m_mem_access_radix_set(p2m, sgfn, a);
+    if ( rc )
+        goto out;
+
+    /*
+     * Always remove the entry in order to follow the break-before-make
+     * sequence when updating the translation table (D4.7.1 in ARM DDI
+     * 0487A.j).
+     */
+    if ( lpae_is_valid(orig_pte) || removing_mapping )
+        p2m_remove_pte(entry, p2m->clean_pte);
+
+    if ( removing_mapping )
+        /* Flush can be deferred if the entry is removed */
+        p2m->need_flush |= !!lpae_is_valid(orig_pte);
+    else
+    {
+        lpae_t pte = mfn_to_p2m_entry(smfn, t, a);
+
+        if ( level < 3 )
+            pte.p2m.table = 0; /* Superpage entry */
+
+        /*
+         * It is necessary to flush the TLB before writing the new entry
+         * to keep coherency when the previous entry was valid.
+         *
+         * Although, it could be defered when only the permissions are
+         * changed (e.g in case of memaccess).
+         */
+        if ( lpae_is_valid(orig_pte) )
+        {
+            if ( likely(!p2m->mem_access_enabled) ||
+                 P2M_CLEAR_PERM(pte) != P2M_CLEAR_PERM(orig_pte) )
+                p2m_force_tlb_flush_sync(p2m);
+            else
+                p2m->need_flush = true;
+        }
+        else if ( !p2m_is_valid(orig_pte) ) /* new mapping */
+            p2m->stats.mappings[level]++;
+
+        p2m_write_pte(entry, pte, p2m->clean_pte);
+
+        p2m->max_mapped_gfn = gfn_max(p2m->max_mapped_gfn,
+                                      gfn_add(sgfn, (1UL << page_order) - 1));
+        p2m->lowest_mapped_gfn = gfn_min(p2m->lowest_mapped_gfn, sgfn);
+    }
+
+    if ( is_iommu_enabled(p2m->domain) &&
+         (lpae_is_valid(orig_pte) || lpae_is_valid(*entry)) )
+    {
+        unsigned int flush_flags = 0;
+
+        if ( lpae_is_valid(orig_pte) )
+            flush_flags |= IOMMU_FLUSHF_modified;
+        if ( lpae_is_valid(*entry) )
+            flush_flags |= IOMMU_FLUSHF_added;
+
+        rc = iommu_iotlb_flush(p2m->domain, _dfn(gfn_x(sgfn)),
+                               1UL << page_order, flush_flags);
+    }
+    else
+        rc = 0;
+
+    /*
+     * Free the entry only if the original pte was valid and the base
+     * is different (to avoid freeing when permission is changed).
+     */
+    if ( p2m_is_valid(orig_pte) &&
+         !mfn_eq(lpae_get_mfn(*entry), lpae_get_mfn(orig_pte)) )
+        p2m_free_entry(p2m, orig_pte, level);
+
+out:
+    unmap_domain_page(table);
+
+    return rc;
+}
+
+int p2m_set_entry(struct p2m_domain *p2m,
+                  gfn_t sgfn,
+                  unsigned long nr,
+                  mfn_t smfn,
+                  p2m_type_t t,
+                  p2m_access_t a)
+{
+    int rc = 0;
+
+    /*
+     * Any reference taken by the P2M mappings (e.g. foreign mapping) will
+     * be dropped in relinquish_p2m_mapping(). As the P2M will still
+     * be accessible after, we need to prevent mapping to be added when the
+     * domain is dying.
+     */
+    if ( unlikely(p2m->domain->is_dying) )
+        return -ENOMEM;
+
+    while ( nr )
+    {
+        unsigned long mask;
+        unsigned long order;
+
+        /*
+         * Don't take into account the MFN when removing mapping (i.e
+         * MFN_INVALID) to calculate the correct target order.
+         *
+         * XXX: Support superpage mappings if nr is not aligned to a
+         * superpage size.
+         */
+        mask = !mfn_eq(smfn, INVALID_MFN) ? mfn_x(smfn) : 0;
+        mask |= gfn_x(sgfn) | nr;
+
+        /* Always map 4k by 4k when memaccess is enabled */
+        if ( unlikely(p2m->mem_access_enabled) )
+            order = THIRD_ORDER;
+        else if ( !(mask & ((1UL << FIRST_ORDER) - 1)) )
+            order = FIRST_ORDER;
+        else if ( !(mask & ((1UL << SECOND_ORDER) - 1)) )
+            order = SECOND_ORDER;
+        else
+            order = THIRD_ORDER;
+
+        rc = __p2m_set_entry(p2m, sgfn, order, smfn, t, a);
+        if ( rc )
+            break;
+
+        sgfn = gfn_add(sgfn, (1 << order));
+        if ( !mfn_eq(smfn, INVALID_MFN) )
+           smfn = mfn_add(smfn, (1 << order));
+
+        nr -= (1 << order);
+    }
+
+    return rc;
+}
+
+/* Invalidate all entries in the table. The p2m should be write locked. */
+static void p2m_invalidate_table(struct p2m_domain *p2m, mfn_t mfn)
+{
+    lpae_t *table;
+    unsigned int i;
+
+    ASSERT(p2m_is_write_locked(p2m));
+
+    table = map_domain_page(mfn);
+
+    for ( i = 0; i < XEN_PT_LPAE_ENTRIES; i++ )
+    {
+        lpae_t pte = table[i];
+
+        /*
+         * Writing an entry can be expensive because it may involve
+         * cleaning the cache. So avoid updating the entry if the valid
+         * bit is already cleared.
+         */
+        if ( !pte.p2m.valid )
+            continue;
+
+        pte.p2m.valid = 0;
+
+        p2m_write_pte(&table[i], pte, p2m->clean_pte);
+    }
+
+    unmap_domain_page(table);
+
+    p2m->need_flush = true;
+}
+
+/*
+ * The domain will not be scheduled anymore, so in theory we should
+ * not need to flush the TLBs. Do it for safety purpose.
+ * Note that all the devices have already been de-assigned. So we don't
+ * need to flush the IOMMU TLB here.
+ */
+void p2m_clear_root_pages(struct p2m_domain *p2m)
+{
+    unsigned int i;
+
+    p2m_write_lock(p2m);
+
+    for ( i = 0; i < P2M_ROOT_PAGES; i++ )
+        clear_and_clean_page(p2m->root + i);
+
+    p2m_force_tlb_flush_sync(p2m);
+
+    p2m_write_unlock(p2m);
+}
+
+/*
+ * Invalidate all entries in the root page-tables. This is
+ * useful to get fault on entry and do an action.
+ *
+ * p2m_invalid_root() should not be called when the P2M is shared with
+ * the IOMMU because it will cause IOMMU fault.
+ */
+static void p2m_invalidate_root(struct p2m_domain *p2m)
+{
+    unsigned int i;
+
+    ASSERT(!iommu_use_hap_pt(p2m->domain));
+
+    p2m_write_lock(p2m);
+
+    for ( i = 0; i < P2M_ROOT_LEVEL; i++ )
+        p2m_invalidate_table(p2m, page_to_mfn(p2m->root + i));
+
+    p2m_write_unlock(p2m);
+}
+
+void p2m_domain_creation_finished(struct domain *d)
+{
+    /*
+     * To avoid flushing the whole guest RAM on the first Set/Way, we
+     * invalidate the P2M to track what has been accessed.
+     *
+     * This is only turned when IOMMU is not used or the page-table are
+     * not shared because bit[0] (e.g valid bit) unset will result
+     * IOMMU fault that could be not fixed-up.
+     */
+    if ( !iommu_use_hap_pt(d) )
+        p2m_invalidate_root(p2m_get_hostp2m(d));
+}
+
+/*
+ * Resolve any translation fault due to change in the p2m. This
+ * includes break-before-make and valid bit cleared.
+ */
+bool p2m_resolve_translation_fault(struct domain *d, gfn_t gfn)
+{
+    struct p2m_domain *p2m = p2m_get_hostp2m(d);
+    unsigned int level = 0;
+    bool resolved = false;
+    lpae_t entry, *table;
+
+    /* Convenience aliases */
+    DECLARE_OFFSETS(offsets, gfn_to_gaddr(gfn));
+
+    p2m_write_lock(p2m);
+
+    /* This gfn is higher than the highest the p2m map currently holds */
+    if ( gfn_x(gfn) > gfn_x(p2m->max_mapped_gfn) )
+        goto out;
+
+    table = p2m_get_root_pointer(p2m, gfn);
+    /*
+     * The table should always be non-NULL because the gfn is below
+     * p2m->max_mapped_gfn and the root table pages are always present.
+     */
+    if ( !table )
+    {
+        ASSERT_UNREACHABLE();
+        goto out;
+    }
+
+    /*
+     * Go down the page-tables until an entry has the valid bit unset or
+     * a block/page entry has been hit.
+     */
+    for ( level = P2M_ROOT_LEVEL; level <= 3; level++ )
+    {
+        int rc;
+
+        entry = table[offsets[level]];
+
+        if ( level == 3 )
+            break;
+
+        /* Stop as soon as we hit an entry with the valid bit unset. */
+        if ( !lpae_is_valid(entry) )
+            break;
+
+        rc = p2m_next_level(p2m, true, level, &table, offsets[level]);
+        if ( rc == GUEST_TABLE_MAP_FAILED )
+            goto out_unmap;
+        else if ( rc != GUEST_TABLE_NORMAL_PAGE )
+            break;
+    }
+
+    /*
+     * If the valid bit of the entry is set, it means someone was playing with
+     * the Stage-2 page table. Nothing to do and mark the fault as resolved.
+     */
+    if ( lpae_is_valid(entry) )
+    {
+        resolved = true;
+        goto out_unmap;
+    }
+
+    /*
+     * The valid bit is unset. If the entry is still not valid then the fault
+     * cannot be resolved, exit and report it.
+     */
+    if ( !p2m_is_valid(entry) )
+        goto out_unmap;
+
+    /*
+     * Now we have an entry with valid bit unset, but still valid from
+     * the P2M point of view.
+     *
+     * If an entry is pointing to a table, each entry of the table will
+     * have there valid bit cleared. This allows a function to clear the
+     * full p2m with just a couple of write. The valid bit will then be
+     * propagated on the fault.
+     * If an entry is pointing to a block/page, no work to do for now.
+     */
+    if ( lpae_is_table(entry, level) )
+        p2m_invalidate_table(p2m, lpae_get_mfn(entry));
+
+    /*
+     * Now that the work on the entry is done, set the valid bit to prevent
+     * another fault on that entry.
+     */
+    resolved = true;
+    entry.p2m.valid = 1;
+
+    p2m_write_pte(table + offsets[level], entry, p2m->clean_pte);
+
+    /*
+     * No need to flush the TLBs as the modified entry had the valid bit
+     * unset.
+     */
+
+out_unmap:
+    unmap_domain_page(table);
+
+out:
+    p2m_write_unlock(p2m);
+
+    return resolved;
+}
+
+static struct page_info *p2m_allocate_root(void)
+{
+    struct page_info *page;
+    unsigned int i;
+
+    page = alloc_domheap_pages(NULL, P2M_ROOT_ORDER, 0);
+    if ( page == NULL )
+        return NULL;
+
+    /* Clear both first level pages */
+    for ( i = 0; i < P2M_ROOT_PAGES; i++ )
+        clear_and_clean_page(page + i);
+
+    return page;
+}
+
+static int p2m_alloc_table(struct domain *d)
+{
+    struct p2m_domain *p2m = p2m_get_hostp2m(d);
+
+    p2m->root = p2m_allocate_root();
+    if ( !p2m->root )
+        return -ENOMEM;
+
+    p2m->vttbr = generate_vttbr(p2m->vmid, page_to_mfn(p2m->root));
+
+    /*
+     * Make sure that all TLBs corresponding to the new VMID are flushed
+     * before using it
+     */
+    p2m_write_lock(p2m);
+    p2m_force_tlb_flush_sync(p2m);
+    p2m_write_unlock(p2m);
+
+    return 0;
+}
+
+int p2m_teardown(struct domain *d)
+{
+    struct p2m_domain *p2m = p2m_get_hostp2m(d);
+    unsigned long count = 0;
+    struct page_info *pg;
+    int rc = 0;
+
+    p2m_write_lock(p2m);
+
+    while ( (pg = page_list_remove_head(&p2m->pages)) )
+    {
+        p2m_free_page(p2m->domain, pg);
+        count++;
+        /* Arbitrarily preempt every 512 iterations */
+        if ( !(count % 512) && hypercall_preempt_check() )
+        {
+            rc = -ERESTART;
+            break;
+        }
+    }
+
+    p2m_write_unlock(p2m);
+
+    return rc;
+}
+
+void p2m_final_teardown(struct domain *d)
+{
+    struct p2m_domain *p2m = p2m_get_hostp2m(d);
+
+    /* p2m not actually initialized */
+    if ( !p2m->domain )
+        return;
+
+    /*
+     * No need to call relinquish_p2m_mapping() here because
+     * p2m_final_teardown() is called either after domain_relinquish_resources()
+     * where relinquish_p2m_mapping() has been called.
+     */
+
+    ASSERT(page_list_empty(&p2m->pages));
+
+    while ( p2m_teardown_allocation(d) == -ERESTART )
+        continue; /* No preemption support here */
+    ASSERT(page_list_empty(&d->arch.paging.p2m_freelist));
+
+    if ( p2m->root )
+        free_domheap_pages(p2m->root, P2M_ROOT_ORDER);
+
+    p2m->root = NULL;
+
+    p2m_free_vmid(d);
+
+    radix_tree_destroy(&p2m->mem_access_settings, NULL);
+
+    p2m->domain = NULL;
+}
+
+int p2m_init(struct domain *d)
+{
+    struct p2m_domain *p2m = p2m_get_hostp2m(d);
+    int rc;
+    unsigned int cpu;
+
+    rwlock_init(&p2m->lock);
+    spin_lock_init(&d->arch.paging.lock);
+    INIT_PAGE_LIST_HEAD(&p2m->pages);
+    INIT_PAGE_LIST_HEAD(&d->arch.paging.p2m_freelist);
+
+    p2m->vmid = INVALID_VMID;
+    p2m->max_mapped_gfn = _gfn(0);
+    p2m->lowest_mapped_gfn = _gfn(ULONG_MAX);
+
+    p2m->default_access = p2m_access_rwx;
+    p2m->mem_access_enabled = false;
+    radix_tree_init(&p2m->mem_access_settings);
+
+    /*
+     * Some IOMMUs don't support coherent PT walk. When the p2m is
+     * shared with the CPU, Xen has to make sure that the PT changes have
+     * reached the memory
+     */
+    p2m->clean_pte = is_iommu_enabled(d) &&
+        !iommu_has_feature(d, IOMMU_FEAT_COHERENT_WALK);
+
+    /*
+     * Make sure that the type chosen to is able to store the an vCPU ID
+     * between 0 and the maximum of virtual CPUS supported as long as
+     * the INVALID_VCPU_ID.
+     */
+    BUILD_BUG_ON((1 << (sizeof(p2m->last_vcpu_ran[0]) * 8)) < MAX_VIRT_CPUS);
+    BUILD_BUG_ON((1 << (sizeof(p2m->last_vcpu_ran[0])* 8)) < INVALID_VCPU_ID);
+
+    for_each_possible_cpu(cpu)
+       p2m->last_vcpu_ran[cpu] = INVALID_VCPU_ID;
+
+    /*
+     * "Trivial" initialisation is now complete.  Set the backpointer so
+     * p2m_teardown() and friends know to do something.
+     */
+    p2m->domain = d;
+
+    rc = p2m_alloc_vmid(d);
+    if ( rc )
+        return rc;
+
+    rc = p2m_alloc_table(d);
+    if ( rc )
+        return rc;
+
+    return 0;
+}
+
+/*
+ * The function will go through the p2m and remove page reference when it
+ * is required. The mapping will be removed from the p2m.
+ *
+ * XXX: See whether the mapping can be left intact in the p2m.
+ */
+int relinquish_p2m_mapping(struct domain *d)
+{
+    struct p2m_domain *p2m = p2m_get_hostp2m(d);
+    unsigned long count = 0;
+    p2m_type_t t;
+    int rc = 0;
+    unsigned int order;
+    gfn_t start, end;
+
+    BUG_ON(!d->is_dying);
+    /* No mappings can be added in the P2M after the P2M lock is released. */
+    p2m_write_lock(p2m);
+
+    start = p2m->lowest_mapped_gfn;
+    end = gfn_add(p2m->max_mapped_gfn, 1);
+
+    for ( ; gfn_x(start) < gfn_x(end);
+          start = gfn_next_boundary(start, order) )
+    {
+        mfn_t mfn = p2m_get_entry(p2m, start, &t, NULL, &order, NULL);
+
+        count++;
+        /*
+         * Arbitrarily preempt every 512 iterations.
+         */
+        if ( !(count % 512) && hypercall_preempt_check() )
+        {
+            rc = -ERESTART;
+            break;
+        }
+
+        /*
+         * p2m_set_entry will take care of removing reference on page
+         * when it is necessary and removing the mapping in the p2m.
+         */
+        if ( !mfn_eq(mfn, INVALID_MFN) )
+        {
+            /*
+             * For valid mapping, the start will always be aligned as
+             * entry will be removed whilst relinquishing.
+             */
+            rc = __p2m_set_entry(p2m, start, order, INVALID_MFN,
+                                 p2m_invalid, p2m_access_rwx);
+            if ( unlikely(rc) )
+            {
+                printk(XENLOG_G_ERR "Unable to remove mapping gfn=%#"PRI_gfn" order=%u from the p2m of domain %d\n", gfn_x(start), order, d->domain_id);
+                break;
+            }
+        }
+    }
+
+    /*
+     * Update lowest_mapped_gfn so on the next call we still start where
+     * we stopped.
+     */
+    p2m->lowest_mapped_gfn = start;
+
+    p2m_write_unlock(p2m);
+
+    return rc;
+}
+
+/*
+ * Clean & invalidate RAM associated to the guest vCPU.
+ *
+ * The function can only work with the current vCPU and should be called
+ * with IRQ enabled as the vCPU could get preempted.
+ */
+void p2m_flush_vm(struct vcpu *v)
+{
+    struct p2m_domain *p2m = p2m_get_hostp2m(v->domain);
+    int rc;
+    gfn_t start = _gfn(0);
+
+    ASSERT(v == current);
+    ASSERT(local_irq_is_enabled());
+    ASSERT(v->arch.need_flush_to_ram);
+
+    do
+    {
+        rc = p2m_cache_flush_range(v->domain, &start, _gfn(ULONG_MAX));
+        if ( rc == -ERESTART )
+            do_softirq();
+    } while ( rc == -ERESTART );
+
+    if ( rc != 0 )
+        gprintk(XENLOG_WARNING,
+                "P2M has not been correctly cleaned (rc = %d)\n",
+                rc);
+
+    /*
+     * Invalidate the p2m to track which page was modified by the guest
+     * between call of p2m_flush_vm().
+     */
+    p2m_invalidate_root(p2m);
+
+    v->arch.need_flush_to_ram = false;
+}
+
+/* VTCR value to be configured by all CPUs. Set only once by the boot CPU */
+static register_t __read_mostly vtcr;
+
+static void setup_virt_paging_one(void *data)
+{
+    WRITE_SYSREG(vtcr, VTCR_EL2);
+
+    /*
+     * ARM64_WORKAROUND_AT_SPECULATE: We want to keep the TLBs free from
+     * entries related to EL1/EL0 translation regime until a guest vCPU
+     * is running. For that, we need to set-up VTTBR to point to an empty
+     * page-table and turn on stage-2 translation. The TLB entries
+     * associated with EL1/EL0 translation regime will also be flushed in case
+     * an AT instruction was speculated before hand.
+     */
+    if ( cpus_have_cap(ARM64_WORKAROUND_AT_SPECULATE) )
+    {
+        WRITE_SYSREG64(generate_vttbr(INVALID_VMID, empty_root_mfn), VTTBR_EL2);
+        WRITE_SYSREG(READ_SYSREG(HCR_EL2) | HCR_VM, HCR_EL2);
+        isb();
+
+        flush_all_guests_tlb_local();
+    }
+}
+
+void __init setup_virt_paging(void)
+{
+    /* Setup Stage 2 address translation */
+    register_t val = VTCR_RES1|VTCR_SH0_IS|VTCR_ORGN0_WBWA|VTCR_IRGN0_WBWA;
+
+    static const struct {
+        unsigned int pabits; /* Physical Address Size */
+        unsigned int t0sz;   /* Desired T0SZ, minimum in comment */
+        unsigned int root_order; /* Page order of the root of the p2m */
+        unsigned int sl0;    /* Desired SL0, maximum in comment */
+    } pa_range_info[] __initconst = {
+        /* T0SZ minimum and SL0 maximum from ARM DDI 0487H.a Table D5-6 */
+        /*      PA size, t0sz(min), root-order, sl0(max) */
+#ifdef CONFIG_ARM_64
+        [0] = { 32,      32/*32*/,  0,          1 },
+        [1] = { 36,      28/*28*/,  0,          1 },
+        [2] = { 40,      24/*24*/,  1,          1 },
+        [3] = { 42,      22/*22*/,  3,          1 },
+        [4] = { 44,      20/*20*/,  0,          2 },
+        [5] = { 48,      16/*16*/,  0,          2 },
+        [6] = { 52,      12/*12*/,  4,          2 },
+        [7] = { 0 }  /* Invalid */
+#else
+        { 32,      0/*0*/,    0,          1 },
+        { 40,      24/*24*/,  1,          1 }
+#endif
+    };
+
+    unsigned int i;
+    unsigned int pa_range = 0x10; /* Larger than any possible value */
+
+#ifdef CONFIG_ARM_32
+    /*
+     * Typecast pa_range_info[].t0sz into arm32 bit variant.
+     *
+     * VTCR.T0SZ is bits [3:0] and S(sign extension), bit[4] for arm322.
+     * Thus, pa_range_info[].t0sz is translated to its arm32 variant using
+     * struct bitfields.
+     */
+    struct
+    {
+        signed int val:5;
+    } t0sz_32;
+#else
+    /*
+     * Restrict "p2m_ipa_bits" if needed. As P2M table is always configured
+     * with IPA bits == PA bits, compare against "pabits".
+     */
+    if ( pa_range_info[system_cpuinfo.mm64.pa_range].pabits < p2m_ipa_bits )
+        p2m_ipa_bits = pa_range_info[system_cpuinfo.mm64.pa_range].pabits;
+
+    /*
+     * cpu info sanitization made sure we support 16bits VMID only if all
+     * cores are supporting it.
+     */
+    if ( system_cpuinfo.mm64.vmid_bits == MM64_VMID_16_BITS_SUPPORT )
+        max_vmid = MAX_VMID_16_BIT;
+#endif
+
+    /* Choose suitable "pa_range" according to the resulted "p2m_ipa_bits". */
+    for ( i = 0; i < ARRAY_SIZE(pa_range_info); i++ )
+    {
+        if ( p2m_ipa_bits == pa_range_info[i].pabits )
+        {
+            pa_range = i;
+            break;
+        }
+    }
+
+    /* Check if we found the associated entry in the array */
+    if ( pa_range >= ARRAY_SIZE(pa_range_info) || !pa_range_info[pa_range].pabits )
+        panic("%u-bit P2M is not supported\n", p2m_ipa_bits);
+
+#ifdef CONFIG_ARM_64
+    val |= VTCR_PS(pa_range);
+    val |= VTCR_TG0_4K;
+
+    /* Set the VS bit only if 16 bit VMID is supported. */
+    if ( MAX_VMID == MAX_VMID_16_BIT )
+        val |= VTCR_VS;
+#endif
+
+    val |= VTCR_SL0(pa_range_info[pa_range].sl0);
+    val |= VTCR_T0SZ(pa_range_info[pa_range].t0sz);
+
+    p2m_root_order = pa_range_info[pa_range].root_order;
+    p2m_root_level = 2 - pa_range_info[pa_range].sl0;
+
+#ifdef CONFIG_ARM_64
+    p2m_ipa_bits = 64 - pa_range_info[pa_range].t0sz;
+#else
+    t0sz_32.val = pa_range_info[pa_range].t0sz;
+    p2m_ipa_bits = 32 - t0sz_32.val;
+#endif
+
+    printk("P2M: %d-bit IPA with %d-bit PA and %d-bit VMID\n",
+           p2m_ipa_bits,
+           pa_range_info[pa_range].pabits,
+           ( MAX_VMID == MAX_VMID_16_BIT ) ? 16 : 8);
+
+    printk("P2M: %d levels with order-%d root, VTCR 0x%"PRIregister"\n",
+           4 - P2M_ROOT_LEVEL, P2M_ROOT_ORDER, val);
+
+    p2m_vmid_allocator_init();
+
+    /* It is not allowed to concatenate a level zero root */
+    BUG_ON( P2M_ROOT_LEVEL == 0 && P2M_ROOT_ORDER > 0 );
+    vtcr = val;
+
+    /*
+     * ARM64_WORKAROUND_AT_SPECULATE requires to allocate root table
+     * with all entries zeroed.
+     */
+    if ( cpus_have_cap(ARM64_WORKAROUND_AT_SPECULATE) )
+    {
+        struct page_info *root;
+
+        root = p2m_allocate_root();
+        if ( !root )
+            panic("Unable to allocate root table for ARM64_WORKAROUND_AT_SPECULATE\n");
+
+        empty_root_mfn = page_to_mfn(root);
+    }
+
+    setup_virt_paging_one(NULL);
+    smp_call_function(setup_virt_paging_one, NULL, 1);
+}
+
+static int cpu_virt_paging_callback(struct notifier_block *nfb,
+                                    unsigned long action,
+                                    void *hcpu)
+{
+    switch ( action )
+    {
+    case CPU_STARTING:
+        ASSERT(system_state != SYS_STATE_boot);
+        setup_virt_paging_one(NULL);
+        break;
+    default:
+        break;
+    }
+
+    return NOTIFY_DONE;
+}
+
+static struct notifier_block cpu_virt_paging_nfb = {
+    .notifier_call = cpu_virt_paging_callback,
+};
+
+static int __init cpu_virt_paging_init(void)
+{
+    register_cpu_notifier(&cpu_virt_paging_nfb);
+
+    return 0;
+}
+/*
+ * Initialization of the notifier has to be done at init rather than presmp_init
+ * phase because: the registered notifier is used to setup virtual paging for
+ * non-boot CPUs after the initial virtual paging for all CPUs is already setup,
+ * i.e. when a non-boot CPU is hotplugged after the system has booted. In other
+ * words, the notifier should be registered after the virtual paging is
+ * initially setup (setup_virt_paging() is called from start_xen()). This is
+ * required because vtcr config value has to be set before a notifier can fire.
+ */
+__initcall(cpu_virt_paging_init);
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: "BSD"
+ * c-basic-offset: 4
+ * indent-tabs-mode: nil
+ * End:
+ */
diff --git a/xen/arch/arm/p2m.c b/xen/arch/arm/p2m.c
index de32a2d638..b991b76ce4 100644
--- a/xen/arch/arm/p2m.c
+++ b/xen/arch/arm/p2m.c
@@ -1,191 +1,25 @@
 /* SPDX-License-Identifier: GPL-2.0 */
-#include <xen/cpu.h>
-#include <xen/domain_page.h>
 #include <xen/iocap.h>
-#include <xen/ioreq.h>
 #include <xen/lib.h>
 #include <xen/sched.h>
 #include <xen/softirq.h>
 
-#include <asm/alternative.h>
 #include <asm/event.h>
 #include <asm/flushtlb.h>
 #include <asm/guest_walk.h>
 #include <asm/page.h>
 #include <asm/traps.h>
 
-#define MAX_VMID_8_BIT  (1UL << 8)
-#define MAX_VMID_16_BIT (1UL << 16)
-
-#define INVALID_VMID 0 /* VMID 0 is reserved */
-
-unsigned int __read_mostly p2m_root_order;
-unsigned int __read_mostly p2m_root_level;
 #ifdef CONFIG_ARM_64
-static unsigned int __read_mostly max_vmid = MAX_VMID_8_BIT;
-/* VMID is by default 8 bit width on AArch64 */
-#define MAX_VMID       max_vmid
-#else
-/* VMID is always 8 bit width on AArch32 */
-#define MAX_VMID        MAX_VMID_8_BIT
+unsigned int __read_mostly max_vmid = MAX_VMID_8_BIT;
 #endif
 
-#define P2M_ROOT_PAGES    (1<<P2M_ROOT_ORDER)
-
 /*
  * Set to the maximum configured support for IPA bits, so the number of IPA bits can be
  * restricted by external entity (e.g. IOMMU).
  */
 unsigned int __read_mostly p2m_ipa_bits = PADDR_BITS;
 
-static mfn_t __read_mostly empty_root_mfn;
-
-static uint64_t generate_vttbr(uint16_t vmid, mfn_t root_mfn)
-{
-    return (mfn_to_maddr(root_mfn) | ((uint64_t)vmid << 48));
-}
-
-static struct page_info *p2m_alloc_page(struct domain *d)
-{
-    struct page_info *pg;
-
-    /*
-     * For hardware domain, there should be no limit in the number of pages that
-     * can be allocated, so that the kernel may take advantage of the extended
-     * regions. Hence, allocate p2m pages for hardware domains from heap.
-     */
-    if ( is_hardware_domain(d) )
-    {
-        pg = alloc_domheap_page(NULL, 0);
-        if ( pg == NULL )
-            printk(XENLOG_G_ERR "Failed to allocate P2M pages for hwdom.\n");
-    }
-    else
-    {
-        spin_lock(&d->arch.paging.lock);
-        pg = page_list_remove_head(&d->arch.paging.p2m_freelist);
-        spin_unlock(&d->arch.paging.lock);
-    }
-
-    return pg;
-}
-
-static void p2m_free_page(struct domain *d, struct page_info *pg)
-{
-    if ( is_hardware_domain(d) )
-        free_domheap_page(pg);
-    else
-    {
-        spin_lock(&d->arch.paging.lock);
-        page_list_add_tail(pg, &d->arch.paging.p2m_freelist);
-        spin_unlock(&d->arch.paging.lock);
-    }
-}
-
-/* Return the size of the pool, in bytes. */
-int arch_get_paging_mempool_size(struct domain *d, uint64_t *size)
-{
-    *size = (uint64_t)ACCESS_ONCE(d->arch.paging.p2m_total_pages) << PAGE_SHIFT;
-    return 0;
-}
-
-/*
- * Set the pool of pages to the required number of pages.
- * Returns 0 for success, non-zero for failure.
- * Call with d->arch.paging.lock held.
- */
-int p2m_set_allocation(struct domain *d, unsigned long pages, bool *preempted)
-{
-    struct page_info *pg;
-
-    ASSERT(spin_is_locked(&d->arch.paging.lock));
-
-    for ( ; ; )
-    {
-        if ( d->arch.paging.p2m_total_pages < pages )
-        {
-            /* Need to allocate more memory from domheap */
-            pg = alloc_domheap_page(NULL, 0);
-            if ( pg == NULL )
-            {
-                printk(XENLOG_ERR "Failed to allocate P2M pages.\n");
-                return -ENOMEM;
-            }
-            ACCESS_ONCE(d->arch.paging.p2m_total_pages) =
-                d->arch.paging.p2m_total_pages + 1;
-            page_list_add_tail(pg, &d->arch.paging.p2m_freelist);
-        }
-        else if ( d->arch.paging.p2m_total_pages > pages )
-        {
-            /* Need to return memory to domheap */
-            pg = page_list_remove_head(&d->arch.paging.p2m_freelist);
-            if( pg )
-            {
-                ACCESS_ONCE(d->arch.paging.p2m_total_pages) =
-                    d->arch.paging.p2m_total_pages - 1;
-                free_domheap_page(pg);
-            }
-            else
-            {
-                printk(XENLOG_ERR
-                       "Failed to free P2M pages, P2M freelist is empty.\n");
-                return -ENOMEM;
-            }
-        }
-        else
-            break;
-
-        /* Check to see if we need to yield and try again */
-        if ( preempted && general_preempt_check() )
-        {
-            *preempted = true;
-            return -ERESTART;
-        }
-    }
-
-    return 0;
-}
-
-int arch_set_paging_mempool_size(struct domain *d, uint64_t size)
-{
-    unsigned long pages = size >> PAGE_SHIFT;
-    bool preempted = false;
-    int rc;
-
-    if ( (size & ~PAGE_MASK) ||          /* Non page-sized request? */
-         pages != (size >> PAGE_SHIFT) ) /* 32-bit overflow? */
-        return -EINVAL;
-
-    spin_lock(&d->arch.paging.lock);
-    rc = p2m_set_allocation(d, pages, &preempted);
-    spin_unlock(&d->arch.paging.lock);
-
-    ASSERT(preempted == (rc == -ERESTART));
-
-    return rc;
-}
-
-int p2m_teardown_allocation(struct domain *d)
-{
-    int ret = 0;
-    bool preempted = false;
-
-    spin_lock(&d->arch.paging.lock);
-    if ( d->arch.paging.p2m_total_pages != 0 )
-    {
-        ret = p2m_set_allocation(d, 0, &preempted);
-        if ( preempted )
-        {
-            spin_unlock(&d->arch.paging.lock);
-            return -ERESTART;
-        }
-        ASSERT(d->arch.paging.p2m_total_pages == 0);
-    }
-    spin_unlock(&d->arch.paging.lock);
-
-    return ret;
-}
-
 /* Unlock the flush and do a P2M TLB flush if necessary */
 void p2m_write_unlock(struct p2m_domain *p2m)
 {
@@ -199,1268 +33,66 @@ void p2m_write_unlock(struct p2m_domain *p2m)
     write_unlock(&p2m->lock);
 }
 
-void p2m_dump_info(struct domain *d)
-{
-    struct p2m_domain *p2m = p2m_get_hostp2m(d);
-
-    p2m_read_lock(p2m);
-    printk("p2m mappings for domain %d (vmid %d):\n",
-           d->domain_id, p2m->vmid);
-    BUG_ON(p2m->stats.mappings[0] || p2m->stats.shattered[0]);
-    printk("  1G mappings: %ld (shattered %ld)\n",
-           p2m->stats.mappings[1], p2m->stats.shattered[1]);
-    printk("  2M mappings: %ld (shattered %ld)\n",
-           p2m->stats.mappings[2], p2m->stats.shattered[2]);
-    printk("  4K mappings: %ld\n", p2m->stats.mappings[3]);
-    p2m_read_unlock(p2m);
-}
-
 void memory_type_changed(struct domain *d)
 {
 }
 
-void dump_p2m_lookup(struct domain *d, paddr_t addr)
-{
-    struct p2m_domain *p2m = p2m_get_hostp2m(d);
-
-    printk("dom%d IPA 0x%"PRIpaddr"\n", d->domain_id, addr);
-
-    printk("P2M @ %p mfn:%#"PRI_mfn"\n",
-           p2m->root, mfn_x(page_to_mfn(p2m->root)));
-
-    dump_pt_walk(page_to_maddr(p2m->root), addr,
-                 P2M_ROOT_LEVEL, P2M_ROOT_PAGES);
-}
-
-/*
- * p2m_save_state and p2m_restore_state work in pair to workaround
- * ARM64_WORKAROUND_AT_SPECULATE. p2m_save_state will set-up VTTBR to
- * point to the empty page-tables to stop allocating TLB entries.
- */
-void p2m_save_state(struct vcpu *p)
-{
-    p->arch.sctlr = READ_SYSREG(SCTLR_EL1);
-
-    if ( cpus_have_const_cap(ARM64_WORKAROUND_AT_SPECULATE) )
-    {
-        WRITE_SYSREG64(generate_vttbr(INVALID_VMID, empty_root_mfn), VTTBR_EL2);
-        /*
-         * Ensure VTTBR_EL2 is correctly synchronized so we can restore
-         * the next vCPU context without worrying about AT instruction
-         * speculation.
-         */
-        isb();
-    }
-}
-
-void p2m_restore_state(struct vcpu *n)
-{
-    struct p2m_domain *p2m = p2m_get_hostp2m(n->domain);
-    uint8_t *last_vcpu_ran;
-
-    if ( is_idle_vcpu(n) )
-        return;
-
-    WRITE_SYSREG(n->arch.sctlr, SCTLR_EL1);
-    WRITE_SYSREG(n->arch.hcr_el2, HCR_EL2);
-
-    /*
-     * ARM64_WORKAROUND_AT_SPECULATE: VTTBR_EL2 should be restored after all
-     * registers associated to EL1/EL0 translations regime have been
-     * synchronized.
-     */
-    asm volatile(ALTERNATIVE("nop", "isb", ARM64_WORKAROUND_AT_SPECULATE));
-    WRITE_SYSREG64(p2m->vttbr, VTTBR_EL2);
-
-    last_vcpu_ran = &p2m->last_vcpu_ran[smp_processor_id()];
-
-    /*
-     * While we are restoring an out-of-context translation regime
-     * we still need to ensure:
-     *  - VTTBR_EL2 is synchronized before flushing the TLBs
-     *  - All registers for EL1 are synchronized before executing an AT
-     *  instructions targeting S1/S2.
-     */
-    isb();
-
-    /*
-     * Flush local TLB for the domain to prevent wrong TLB translation
-     * when running multiple vCPU of the same domain on a single pCPU.
-     */
-    if ( *last_vcpu_ran != INVALID_VCPU_ID && *last_vcpu_ran != n->vcpu_id )
-        flush_guest_tlb_local();
-
-    *last_vcpu_ran = n->vcpu_id;
-}
-
-/*
- * Force a synchronous P2M TLB flush.
- *
- * Must be called with the p2m lock held.
- */
-static void p2m_force_tlb_flush_sync(struct p2m_domain *p2m)
-{
-    unsigned long flags = 0;
-    uint64_t ovttbr;
-
-    ASSERT(p2m_is_write_locked(p2m));
-
-    /*
-     * ARM only provides an instruction to flush TLBs for the current
-     * VMID. So switch to the VTTBR of a given P2M if different.
-     */
-    ovttbr = READ_SYSREG64(VTTBR_EL2);
-    if ( ovttbr != p2m->vttbr )
-    {
-        uint64_t vttbr;
-
-        local_irq_save(flags);
-
-        /*
-         * ARM64_WORKAROUND_AT_SPECULATE: We need to stop AT to allocate
-         * TLBs entries because the context is partially modified. We
-         * only need the VMID for flushing the TLBs, so we can generate
-         * a new VTTBR with the VMID to flush and the empty root table.
-         */
-        if ( !cpus_have_const_cap(ARM64_WORKAROUND_AT_SPECULATE) )
-            vttbr = p2m->vttbr;
-        else
-            vttbr = generate_vttbr(p2m->vmid, empty_root_mfn);
-
-        WRITE_SYSREG64(vttbr, VTTBR_EL2);
-
-        /* Ensure VTTBR_EL2 is synchronized before flushing the TLBs */
-        isb();
-    }
-
-    flush_guest_tlb();
-
-    if ( ovttbr != READ_SYSREG64(VTTBR_EL2) )
-    {
-        WRITE_SYSREG64(ovttbr, VTTBR_EL2);
-        /* Ensure VTTBR_EL2 is back in place before continuing. */
-        isb();
-        local_irq_restore(flags);
-    }
-
-    p2m->need_flush = false;
-}
-
-void p2m_tlb_flush_sync(struct p2m_domain *p2m)
-{
-    if ( p2m->need_flush )
-        p2m_force_tlb_flush_sync(p2m);
-}
-
-/*
- * Find and map the root page table. The caller is responsible for
- * unmapping the table.
- *
- * The function will return NULL if the offset of the root table is
- * invalid.
- */
-static lpae_t *p2m_get_root_pointer(struct p2m_domain *p2m,
-                                    gfn_t gfn)
-{
-    unsigned long root_table;
-
-    /*
-     * While the root table index is the offset from the previous level,
-     * we can't use (P2M_ROOT_LEVEL - 1) because the root level might be
-     * 0. Yet we still want to check if all the unused bits are zeroed.
-     */
-    root_table = gfn_x(gfn) >> (XEN_PT_LEVEL_ORDER(P2M_ROOT_LEVEL) +
-                                XEN_PT_LPAE_SHIFT);
-    if ( root_table >= P2M_ROOT_PAGES )
-        return NULL;
-
-    return __map_domain_page(p2m->root + root_table);
-}
-
-/*
- * Lookup the MFN corresponding to a domain's GFN.
- * Lookup mem access in the ratrix tree.
- * The entries associated to the GFN is considered valid.
- */
-static p2m_access_t p2m_mem_access_radix_get(struct p2m_domain *p2m, gfn_t gfn)
-{
-    void *ptr;
-
-    if ( !p2m->mem_access_enabled )
-        return p2m->default_access;
-
-    ptr = radix_tree_lookup(&p2m->mem_access_settings, gfn_x(gfn));
-    if ( !ptr )
-        return p2m_access_rwx;
-    else
-        return radix_tree_ptr_to_int(ptr);
-}
-
-/*
- * In the case of the P2M, the valid bit is used for other purpose. Use
- * the type to check whether an entry is valid.
- */
-static inline bool p2m_is_valid(lpae_t pte)
-{
-    return pte.p2m.type != p2m_invalid;
-}
-
-/*
- * lpae_is_* helpers don't check whether the valid bit is set in the
- * PTE. Provide our own overlay to check the valid bit.
- */
-static inline bool p2m_is_mapping(lpae_t pte, unsigned int level)
-{
-    return p2m_is_valid(pte) && lpae_is_mapping(pte, level);
-}
-
-static inline bool p2m_is_superpage(lpae_t pte, unsigned int level)
-{
-    return p2m_is_valid(pte) && lpae_is_superpage(pte, level);
-}
-
-#define GUEST_TABLE_MAP_FAILED 0
-#define GUEST_TABLE_SUPER_PAGE 1
-#define GUEST_TABLE_NORMAL_PAGE 2
-
-static int p2m_create_table(struct p2m_domain *p2m, lpae_t *entry);
-
-/*
- * Take the currently mapped table, find the corresponding GFN entry,
- * and map the next table, if available. The previous table will be
- * unmapped if the next level was mapped (e.g GUEST_TABLE_NORMAL_PAGE
- * returned).
- *
- * The read_only parameters indicates whether intermediate tables should
- * be allocated when not present.
- *
- * Return values:
- *  GUEST_TABLE_MAP_FAILED: Either read_only was set and the entry
- *  was empty, or allocating a new page failed.
- *  GUEST_TABLE_NORMAL_PAGE: next level mapped normally
- *  GUEST_TABLE_SUPER_PAGE: The next entry points to a superpage.
- */
-static int p2m_next_level(struct p2m_domain *p2m, bool read_only,
-                          unsigned int level, lpae_t **table,
-                          unsigned int offset)
-{
-    lpae_t *entry;
-    int ret;
-    mfn_t mfn;
-
-    entry = *table + offset;
-
-    if ( !p2m_is_valid(*entry) )
-    {
-        if ( read_only )
-            return GUEST_TABLE_MAP_FAILED;
-
-        ret = p2m_create_table(p2m, entry);
-        if ( ret )
-            return GUEST_TABLE_MAP_FAILED;
-    }
-
-    /* The function p2m_next_level is never called at the 3rd level */
-    ASSERT(level < 3);
-    if ( p2m_is_mapping(*entry, level) )
-        return GUEST_TABLE_SUPER_PAGE;
-
-    mfn = lpae_get_mfn(*entry);
-
-    unmap_domain_page(*table);
-    *table = map_domain_page(mfn);
-
-    return GUEST_TABLE_NORMAL_PAGE;
-}
-
-/*
- * Get the details of a given gfn.
- *
- * If the entry is present, the associated MFN will be returned and the
- * access and type filled up. The page_order will correspond to the
- * order of the mapping in the page table (i.e it could be a superpage).
- *
- * If the entry is not present, INVALID_MFN will be returned and the
- * page_order will be set according to the order of the invalid range.
- *
- * valid will contain the value of bit[0] (e.g valid bit) of the
- * entry.
- */
-mfn_t p2m_get_entry(struct p2m_domain *p2m, gfn_t gfn,
-                    p2m_type_t *t, p2m_access_t *a,
-                    unsigned int *page_order,
-                    bool *valid)
-{
-    paddr_t addr = gfn_to_gaddr(gfn);
-    unsigned int level = 0;
-    lpae_t entry, *table;
-    int rc;
-    mfn_t mfn = INVALID_MFN;
-    p2m_type_t _t;
-    DECLARE_OFFSETS(offsets, addr);
-
-    ASSERT(p2m_is_locked(p2m));
-    BUILD_BUG_ON(THIRD_MASK != PAGE_MASK);
-
-    /* Allow t to be NULL */
-    t = t ?: &_t;
-
-    *t = p2m_invalid;
-
-    if ( valid )
-        *valid = false;
-
-    /* XXX: Check if the mapping is lower than the mapped gfn */
-
-    /* This gfn is higher than the highest the p2m map currently holds */
-    if ( gfn_x(gfn) > gfn_x(p2m->max_mapped_gfn) )
-    {
-        for ( level = P2M_ROOT_LEVEL; level < 3; level++ )
-            if ( (gfn_x(gfn) & (XEN_PT_LEVEL_MASK(level) >> PAGE_SHIFT)) >
-                 gfn_x(p2m->max_mapped_gfn) )
-                break;
-
-        goto out;
-    }
-
-    table = p2m_get_root_pointer(p2m, gfn);
-
-    /*
-     * the table should always be non-NULL because the gfn is below
-     * p2m->max_mapped_gfn and the root table pages are always present.
-     */
-    if ( !table )
-    {
-        ASSERT_UNREACHABLE();
-        level = P2M_ROOT_LEVEL;
-        goto out;
-    }
-
-    for ( level = P2M_ROOT_LEVEL; level < 3; level++ )
-    {
-        rc = p2m_next_level(p2m, true, level, &table, offsets[level]);
-        if ( rc == GUEST_TABLE_MAP_FAILED )
-            goto out_unmap;
-        else if ( rc != GUEST_TABLE_NORMAL_PAGE )
-            break;
-    }
-
-    entry = table[offsets[level]];
-
-    if ( p2m_is_valid(entry) )
-    {
-        *t = entry.p2m.type;
-
-        if ( a )
-            *a = p2m_mem_access_radix_get(p2m, gfn);
-
-        mfn = lpae_get_mfn(entry);
-        /*
-         * The entry may point to a superpage. Find the MFN associated
-         * to the GFN.
-         */
-        mfn = mfn_add(mfn,
-                      gfn_x(gfn) & ((1UL << XEN_PT_LEVEL_ORDER(level)) - 1));
-
-        if ( valid )
-            *valid = lpae_is_valid(entry);
-    }
-
-out_unmap:
-    unmap_domain_page(table);
-
-out:
-    if ( page_order )
-        *page_order = XEN_PT_LEVEL_ORDER(level);
-
-    return mfn;
-}
-
-mfn_t p2m_lookup(struct domain *d, gfn_t gfn, p2m_type_t *t)
-{
-    mfn_t mfn;
-    struct p2m_domain *p2m = p2m_get_hostp2m(d);
-
-    p2m_read_lock(p2m);
-    mfn = p2m_get_entry(p2m, gfn, t, NULL, NULL, NULL);
-    p2m_read_unlock(p2m);
-
-    return mfn;
-}
-
-struct page_info *p2m_get_page_from_gfn(struct domain *d, gfn_t gfn,
-                                        p2m_type_t *t)
-{
-    struct page_info *page;
-    p2m_type_t p2mt;
-    mfn_t mfn = p2m_lookup(d, gfn, &p2mt);
-
-    if ( t )
-        *t = p2mt;
-
-    if ( !p2m_is_any_ram(p2mt) )
-        return NULL;
-
-    if ( !mfn_valid(mfn) )
-        return NULL;
-
-    page = mfn_to_page(mfn);
-
-    /*
-     * get_page won't work on foreign mapping because the page doesn't
-     * belong to the current domain.
-     */
-    if ( p2m_is_foreign(p2mt) )
-    {
-        struct domain *fdom = page_get_owner_and_reference(page);
-        ASSERT(fdom != NULL);
-        ASSERT(fdom != d);
-        return page;
-    }
-
-    return get_page(page, d) ? page : NULL;
-}
-
-int guest_physmap_mark_populate_on_demand(struct domain *d,
-                                          unsigned long gfn,
-                                          unsigned int order)
-{
-    return -ENOSYS;
-}
-
-unsigned long p2m_pod_decrease_reservation(struct domain *d, gfn_t gfn,
-                                           unsigned int order)
-{
-    return 0;
-}
-
-static void p2m_set_permission(lpae_t *e, p2m_type_t t, p2m_access_t a)
-{
-    /* First apply type permissions */
-    switch ( t )
-    {
-    case p2m_ram_rw:
-        e->p2m.xn = 0;
-        e->p2m.write = 1;
-        break;
-
-    case p2m_ram_ro:
-        e->p2m.xn = 0;
-        e->p2m.write = 0;
-        break;
-
-    case p2m_iommu_map_rw:
-    case p2m_map_foreign_rw:
-    case p2m_grant_map_rw:
-    case p2m_mmio_direct_dev:
-    case p2m_mmio_direct_nc:
-    case p2m_mmio_direct_c:
-        e->p2m.xn = 1;
-        e->p2m.write = 1;
-        break;
-
-    case p2m_iommu_map_ro:
-    case p2m_map_foreign_ro:
-    case p2m_grant_map_ro:
-    case p2m_invalid:
-        e->p2m.xn = 1;
-        e->p2m.write = 0;
-        break;
-
-    case p2m_max_real_type:
-        BUG();
-        break;
-    }
-
-    /* Then restrict with access permissions */
-    switch ( a )
-    {
-    case p2m_access_rwx:
-        break;
-    case p2m_access_wx:
-        e->p2m.read = 0;
-        break;
-    case p2m_access_rw:
-        e->p2m.xn = 1;
-        break;
-    case p2m_access_w:
-        e->p2m.read = 0;
-        e->p2m.xn = 1;
-        break;
-    case p2m_access_rx:
-    case p2m_access_rx2rw:
-        e->p2m.write = 0;
-        break;
-    case p2m_access_x:
-        e->p2m.write = 0;
-        e->p2m.read = 0;
-        break;
-    case p2m_access_r:
-        e->p2m.write = 0;
-        e->p2m.xn = 1;
-        break;
-    case p2m_access_n:
-    case p2m_access_n2rwx:
-        e->p2m.read = e->p2m.write = 0;
-        e->p2m.xn = 1;
-        break;
-    }
-}
-
-static lpae_t mfn_to_p2m_entry(mfn_t mfn, p2m_type_t t, p2m_access_t a)
-{
-    /*
-     * sh, xn and write bit will be defined in the following switches
-     * based on mattr and t.
-     */
-    lpae_t e = (lpae_t) {
-        .p2m.af = 1,
-        .p2m.read = 1,
-        .p2m.table = 1,
-        .p2m.valid = 1,
-        .p2m.type = t,
-    };
-
-    BUILD_BUG_ON(p2m_max_real_type > (1 << 4));
-
-    switch ( t )
-    {
-    case p2m_mmio_direct_dev:
-        e.p2m.mattr = MATTR_DEV;
-        e.p2m.sh = LPAE_SH_OUTER;
-        break;
-
-    case p2m_mmio_direct_c:
-        e.p2m.mattr = MATTR_MEM;
-        e.p2m.sh = LPAE_SH_OUTER;
-        break;
-
-    /*
-     * ARM ARM: Overlaying the shareability attribute (DDI
-     * 0406C.b B3-1376 to 1377)
-     *
-     * A memory region with a resultant memory type attribute of Normal,
-     * and a resultant cacheability attribute of Inner Non-cacheable,
-     * Outer Non-cacheable, must have a resultant shareability attribute
-     * of Outer Shareable, otherwise shareability is UNPREDICTABLE.
-     *
-     * On ARMv8 shareability is ignored and explicitly treated as Outer
-     * Shareable for Normal Inner Non_cacheable, Outer Non-cacheable.
-     * See the note for table D4-40, in page 1788 of the ARM DDI 0487A.j.
-     */
-    case p2m_mmio_direct_nc:
-        e.p2m.mattr = MATTR_MEM_NC;
-        e.p2m.sh = LPAE_SH_OUTER;
-        break;
-
-    default:
-        e.p2m.mattr = MATTR_MEM;
-        e.p2m.sh = LPAE_SH_INNER;
-    }
-
-    p2m_set_permission(&e, t, a);
-
-    ASSERT(!(mfn_to_maddr(mfn) & ~PADDR_MASK));
-
-    lpae_set_mfn(e, mfn);
-
-    return e;
-}
-
-/* Generate table entry with correct attributes. */
-static lpae_t page_to_p2m_table(struct page_info *page)
-{
-    /*
-     * The access value does not matter because the hardware will ignore
-     * the permission fields for table entry.
-     *
-     * We use p2m_ram_rw so the entry has a valid type. This is important
-     * for p2m_is_valid() to return valid on table entries.
-     */
-    return mfn_to_p2m_entry(page_to_mfn(page), p2m_ram_rw, p2m_access_rwx);
-}
-
-static inline void p2m_write_pte(lpae_t *p, lpae_t pte, bool clean_pte)
-{
-    write_pte(p, pte);
-    if ( clean_pte )
-        clean_dcache(*p);
-}
-
-static inline void p2m_remove_pte(lpae_t *p, bool clean_pte)
-{
-    lpae_t pte;
-
-    memset(&pte, 0x00, sizeof(pte));
-    p2m_write_pte(p, pte, clean_pte);
-}
-
-/* Allocate a new page table page and hook it in via the given entry. */
-static int p2m_create_table(struct p2m_domain *p2m, lpae_t *entry)
-{
-    struct page_info *page;
-    lpae_t *p;
-
-    ASSERT(!p2m_is_valid(*entry));
-
-    page = p2m_alloc_page(p2m->domain);
-    if ( page == NULL )
-        return -ENOMEM;
-
-    page_list_add(page, &p2m->pages);
-
-    p = __map_domain_page(page);
-    clear_page(p);
-
-    if ( p2m->clean_pte )
-        clean_dcache_va_range(p, PAGE_SIZE);
-
-    unmap_domain_page(p);
-
-    p2m_write_pte(entry, page_to_p2m_table(page), p2m->clean_pte);
-
-    return 0;
-}
-
-static int p2m_mem_access_radix_set(struct p2m_domain *p2m, gfn_t gfn,
-                                    p2m_access_t a)
-{
-    int rc;
-
-    if ( !p2m->mem_access_enabled )
-        return 0;
-
-    if ( p2m_access_rwx == a )
-    {
-        radix_tree_delete(&p2m->mem_access_settings, gfn_x(gfn));
-        return 0;
-    }
-
-    rc = radix_tree_insert(&p2m->mem_access_settings, gfn_x(gfn),
-                           radix_tree_int_to_ptr(a));
-    if ( rc == -EEXIST )
-    {
-        /* If a setting already exists, change it to the new one */
-        radix_tree_replace_slot(
-            radix_tree_lookup_slot(
-                &p2m->mem_access_settings, gfn_x(gfn)),
-            radix_tree_int_to_ptr(a));
-        rc = 0;
-    }
-
-    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)
-{
-    mfn_t mfn = lpae_get_mfn(pte);
-
-    ASSERT(p2m_is_valid(pte));
-
-    /*
-     * TODO: Handle other p2m types
-     *
-     * It's safe to do the put_page here because page_alloc will
-     * flush the TLBs if the page is reallocated before the end of
-     * this loop.
-     */
-    if ( p2m_is_foreign(pte.p2m.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) )
-        page_set_xenheap_gfn(mfn_to_page(mfn), INVALID_GFN);
-}
-
-/* Free lpae sub-tree behind an entry */
-static void p2m_free_entry(struct p2m_domain *p2m,
-                           lpae_t entry, unsigned int level)
-{
-    unsigned int i;
-    lpae_t *table;
-    mfn_t mfn;
-    struct page_info *pg;
-
-    /* Nothing to do if the entry is invalid. */
-    if ( !p2m_is_valid(entry) )
-        return;
-
-    if ( p2m_is_superpage(entry, level) || (level == 3) )
-    {
-#ifdef CONFIG_IOREQ_SERVER
-        /*
-         * If this gets called then either the entry was replaced by an entry
-         * with a different base (valid case) or the shattering of a superpage
-         * has failed (error case).
-         * So, at worst, the spurious mapcache invalidation might be sent.
-         */
-        if ( p2m_is_ram(entry.p2m.type) &&
-             domain_has_ioreq_server(p2m->domain) )
-            ioreq_request_mapcache_invalidate(p2m->domain);
-#endif
-
-        p2m->stats.mappings[level]--;
-        /* Nothing to do if the entry is a super-page. */
-        if ( level == 3 )
-            p2m_put_l3_page(entry);
-        return;
-    }
-
-    table = map_domain_page(lpae_get_mfn(entry));
-    for ( i = 0; i < XEN_PT_LPAE_ENTRIES; i++ )
-        p2m_free_entry(p2m, *(table + i), level + 1);
-
-    unmap_domain_page(table);
-
-    /*
-     * Make sure all the references in the TLB have been removed before
-     * freing the intermediate page table.
-     * XXX: Should we defer the free of the page table to avoid the
-     * flush?
-     */
-    p2m_tlb_flush_sync(p2m);
-
-    mfn = lpae_get_mfn(entry);
-    ASSERT(mfn_valid(mfn));
-
-    pg = mfn_to_page(mfn);
-
-    page_list_del(pg, &p2m->pages);
-    p2m_free_page(p2m->domain, pg);
-}
-
-static bool p2m_split_superpage(struct p2m_domain *p2m, lpae_t *entry,
-                                unsigned int level, unsigned int target,
-                                const unsigned int *offsets)
-{
-    struct page_info *page;
-    unsigned int i;
-    lpae_t pte, *table;
-    bool rv = true;
-
-    /* Convenience aliases */
-    mfn_t mfn = lpae_get_mfn(*entry);
-    unsigned int next_level = level + 1;
-    unsigned int level_order = XEN_PT_LEVEL_ORDER(next_level);
-
-    /*
-     * This should only be called with target != level and the entry is
-     * a superpage.
-     */
-    ASSERT(level < target);
-    ASSERT(p2m_is_superpage(*entry, level));
-
-    page = p2m_alloc_page(p2m->domain);
-    if ( !page )
-        return false;
-
-    page_list_add(page, &p2m->pages);
-    table = __map_domain_page(page);
-
-    /*
-     * We are either splitting a first level 1G page into 512 second level
-     * 2M pages, or a second level 2M page into 512 third level 4K pages.
-     */
-    for ( i = 0; i < XEN_PT_LPAE_ENTRIES; i++ )
-    {
-        lpae_t *new_entry = table + i;
-
-        /*
-         * Use the content of the superpage entry and override
-         * the necessary fields. So the correct permission are kept.
-         */
-        pte = *entry;
-        lpae_set_mfn(pte, mfn_add(mfn, i << level_order));
-
-        /*
-         * First and second level pages set p2m.table = 0, but third
-         * level entries set p2m.table = 1.
-         */
-        pte.p2m.table = (next_level == 3);
-
-        write_pte(new_entry, pte);
-    }
-
-    /* Update stats */
-    p2m->stats.shattered[level]++;
-    p2m->stats.mappings[level]--;
-    p2m->stats.mappings[next_level] += XEN_PT_LPAE_ENTRIES;
-
-    /*
-     * Shatter superpage in the page to the level we want to make the
-     * changes.
-     * This is done outside the loop to avoid checking the offset to
-     * know whether the entry should be shattered for every entry.
-     */
-    if ( next_level != target )
-        rv = p2m_split_superpage(p2m, table + offsets[next_level],
-                                 level + 1, target, offsets);
-
-    if ( p2m->clean_pte )
-        clean_dcache_va_range(table, PAGE_SIZE);
-
-    unmap_domain_page(table);
-
-    /*
-     * Even if we failed, we should install the newly allocated LPAE
-     * entry. The caller will be in charge to free the sub-tree.
-     */
-    p2m_write_pte(entry, page_to_p2m_table(page), p2m->clean_pte);
-
-    return rv;
-}
-
-/*
- * Insert an entry in the p2m. This should be called with a mapping
- * equal to a page/superpage (4K, 2M, 1G).
- */
-static int __p2m_set_entry(struct p2m_domain *p2m,
-                           gfn_t sgfn,
-                           unsigned int page_order,
-                           mfn_t smfn,
-                           p2m_type_t t,
-                           p2m_access_t a)
-{
-    unsigned int level = 0;
-    unsigned int target = 3 - (page_order / XEN_PT_LPAE_SHIFT);
-    lpae_t *entry, *table, orig_pte;
-    int rc;
-    /* A mapping is removed if the MFN is invalid. */
-    bool removing_mapping = mfn_eq(smfn, INVALID_MFN);
-    DECLARE_OFFSETS(offsets, gfn_to_gaddr(sgfn));
-
-    ASSERT(p2m_is_write_locked(p2m));
-
-    /*
-     * Check if the level target is valid: we only support
-     * 4K - 2M - 1G mapping.
-     */
-    ASSERT(target > 0 && target <= 3);
-
-    table = p2m_get_root_pointer(p2m, sgfn);
-    if ( !table )
-        return -EINVAL;
-
-    for ( level = P2M_ROOT_LEVEL; level < target; level++ )
-    {
-        /*
-         * Don't try to allocate intermediate page table if the mapping
-         * is about to be removed.
-         */
-        rc = p2m_next_level(p2m, removing_mapping,
-                            level, &table, offsets[level]);
-        if ( rc == GUEST_TABLE_MAP_FAILED )
-        {
-            /*
-             * We are here because p2m_next_level has failed to map
-             * the intermediate page table (e.g the table does not exist
-             * and they p2m tree is read-only). It is a valid case
-             * when removing a mapping as it may not exist in the
-             * page table. In this case, just ignore it.
-             */
-            rc = removing_mapping ?  0 : -ENOENT;
-            goto out;
-        }
-        else if ( rc != GUEST_TABLE_NORMAL_PAGE )
-            break;
-    }
-
-    entry = table + offsets[level];
-
-    /*
-     * If we are here with level < target, we must be at a leaf node,
-     * and we need to break up the superpage.
-     */
-    if ( level < target )
-    {
-        /* We need to split the original page. */
-        lpae_t split_pte = *entry;
-
-        ASSERT(p2m_is_superpage(*entry, level));
-
-        if ( !p2m_split_superpage(p2m, &split_pte, level, target, offsets) )
-        {
-            /*
-             * The current super-page is still in-place, so re-increment
-             * the stats.
-             */
-            p2m->stats.mappings[level]++;
-
-            /* Free the allocated sub-tree */
-            p2m_free_entry(p2m, split_pte, level);
-
-            rc = -ENOMEM;
-            goto out;
-        }
-
-        /*
-         * Follow the break-before-sequence to update the entry.
-         * For more details see (D4.7.1 in ARM DDI 0487A.j).
-         */
-        p2m_remove_pte(entry, p2m->clean_pte);
-        p2m_force_tlb_flush_sync(p2m);
-
-        p2m_write_pte(entry, split_pte, p2m->clean_pte);
-
-        /* then move to the level we want to make real changes */
-        for ( ; level < target; level++ )
-        {
-            rc = p2m_next_level(p2m, true, level, &table, offsets[level]);
-
-            /*
-             * The entry should be found and either be a table
-             * or a superpage if level 3 is not targeted
-             */
-            ASSERT(rc == GUEST_TABLE_NORMAL_PAGE ||
-                   (rc == GUEST_TABLE_SUPER_PAGE && target < 3));
-        }
-
-        entry = table + offsets[level];
-    }
-
-    /*
-     * We should always be there with the correct level because
-     * all the intermediate tables have been installed if necessary.
-     */
-    ASSERT(level == target);
-
-    orig_pte = *entry;
-
-    /*
-     * The radix-tree can only work on 4KB. This is only used when
-     * memaccess is enabled and during shutdown.
-     */
-    ASSERT(!p2m->mem_access_enabled || page_order == 0 ||
-           p2m->domain->is_dying);
-    /*
-     * The access type should always be p2m_access_rwx when the mapping
-     * is removed.
-     */
-    ASSERT(!mfn_eq(INVALID_MFN, smfn) || (a == p2m_access_rwx));
-    /*
-     * Update the mem access permission before update the P2M. So we
-     * don't have to revert the mapping if it has failed.
-     */
-    rc = p2m_mem_access_radix_set(p2m, sgfn, a);
-    if ( rc )
-        goto out;
-
-    /*
-     * Always remove the entry in order to follow the break-before-make
-     * sequence when updating the translation table (D4.7.1 in ARM DDI
-     * 0487A.j).
-     */
-    if ( lpae_is_valid(orig_pte) || removing_mapping )
-        p2m_remove_pte(entry, p2m->clean_pte);
-
-    if ( removing_mapping )
-        /* Flush can be deferred if the entry is removed */
-        p2m->need_flush |= !!lpae_is_valid(orig_pte);
-    else
-    {
-        lpae_t pte = mfn_to_p2m_entry(smfn, t, a);
-
-        if ( level < 3 )
-            pte.p2m.table = 0; /* Superpage entry */
-
-        /*
-         * It is necessary to flush the TLB before writing the new entry
-         * to keep coherency when the previous entry was valid.
-         *
-         * Although, it could be defered when only the permissions are
-         * changed (e.g in case of memaccess).
-         */
-        if ( lpae_is_valid(orig_pte) )
-        {
-            if ( likely(!p2m->mem_access_enabled) ||
-                 P2M_CLEAR_PERM(pte) != P2M_CLEAR_PERM(orig_pte) )
-                p2m_force_tlb_flush_sync(p2m);
-            else
-                p2m->need_flush = true;
-        }
-        else if ( !p2m_is_valid(orig_pte) ) /* new mapping */
-            p2m->stats.mappings[level]++;
-
-        p2m_write_pte(entry, pte, p2m->clean_pte);
-
-        p2m->max_mapped_gfn = gfn_max(p2m->max_mapped_gfn,
-                                      gfn_add(sgfn, (1UL << page_order) - 1));
-        p2m->lowest_mapped_gfn = gfn_min(p2m->lowest_mapped_gfn, sgfn);
-    }
-
-    if ( is_iommu_enabled(p2m->domain) &&
-         (lpae_is_valid(orig_pte) || lpae_is_valid(*entry)) )
-    {
-        unsigned int flush_flags = 0;
-
-        if ( lpae_is_valid(orig_pte) )
-            flush_flags |= IOMMU_FLUSHF_modified;
-        if ( lpae_is_valid(*entry) )
-            flush_flags |= IOMMU_FLUSHF_added;
-
-        rc = iommu_iotlb_flush(p2m->domain, _dfn(gfn_x(sgfn)),
-                               1UL << page_order, flush_flags);
-    }
-    else
-        rc = 0;
-
-    /*
-     * Free the entry only if the original pte was valid and the base
-     * is different (to avoid freeing when permission is changed).
-     */
-    if ( p2m_is_valid(orig_pte) &&
-         !mfn_eq(lpae_get_mfn(*entry), lpae_get_mfn(orig_pte)) )
-        p2m_free_entry(p2m, orig_pte, level);
-
-out:
-    unmap_domain_page(table);
-
-    return rc;
-}
-
-int p2m_set_entry(struct p2m_domain *p2m,
-                  gfn_t sgfn,
-                  unsigned long nr,
-                  mfn_t smfn,
-                  p2m_type_t t,
-                  p2m_access_t a)
-{
-    int rc = 0;
-
-    /*
-     * Any reference taken by the P2M mappings (e.g. foreign mapping) will
-     * be dropped in relinquish_p2m_mapping(). As the P2M will still
-     * be accessible after, we need to prevent mapping to be added when the
-     * domain is dying.
-     */
-    if ( unlikely(p2m->domain->is_dying) )
-        return -ENOMEM;
-
-    while ( nr )
-    {
-        unsigned long mask;
-        unsigned long order;
-
-        /*
-         * Don't take into account the MFN when removing mapping (i.e
-         * MFN_INVALID) to calculate the correct target order.
-         *
-         * XXX: Support superpage mappings if nr is not aligned to a
-         * superpage size.
-         */
-        mask = !mfn_eq(smfn, INVALID_MFN) ? mfn_x(smfn) : 0;
-        mask |= gfn_x(sgfn) | nr;
-
-        /* Always map 4k by 4k when memaccess is enabled */
-        if ( unlikely(p2m->mem_access_enabled) )
-            order = THIRD_ORDER;
-        else if ( !(mask & ((1UL << FIRST_ORDER) - 1)) )
-            order = FIRST_ORDER;
-        else if ( !(mask & ((1UL << SECOND_ORDER) - 1)) )
-            order = SECOND_ORDER;
-        else
-            order = THIRD_ORDER;
-
-        rc = __p2m_set_entry(p2m, sgfn, order, smfn, t, a);
-        if ( rc )
-            break;
-
-        sgfn = gfn_add(sgfn, (1 << order));
-        if ( !mfn_eq(smfn, INVALID_MFN) )
-           smfn = mfn_add(smfn, (1 << order));
-
-        nr -= (1 << order);
-    }
-
-    return rc;
-}
-
-/* Invalidate all entries in the table. The p2m should be write locked. */
-static void p2m_invalidate_table(struct p2m_domain *p2m, mfn_t mfn)
-{
-    lpae_t *table;
-    unsigned int i;
-
-    ASSERT(p2m_is_write_locked(p2m));
-
-    table = map_domain_page(mfn);
-
-    for ( i = 0; i < XEN_PT_LPAE_ENTRIES; i++ )
-    {
-        lpae_t pte = table[i];
-
-        /*
-         * Writing an entry can be expensive because it may involve
-         * cleaning the cache. So avoid updating the entry if the valid
-         * bit is already cleared.
-         */
-        if ( !pte.p2m.valid )
-            continue;
-
-        pte.p2m.valid = 0;
-
-        p2m_write_pte(&table[i], pte, p2m->clean_pte);
-    }
-
-    unmap_domain_page(table);
-
-    p2m->need_flush = true;
-}
-
-/*
- * The domain will not be scheduled anymore, so in theory we should
- * not need to flush the TLBs. Do it for safety purpose.
- * Note that all the devices have already been de-assigned. So we don't
- * need to flush the IOMMU TLB here.
- */
-void p2m_clear_root_pages(struct p2m_domain *p2m)
-{
-    unsigned int i;
-
-    p2m_write_lock(p2m);
-
-    for ( i = 0; i < P2M_ROOT_PAGES; i++ )
-        clear_and_clean_page(p2m->root + i);
-
-    p2m_force_tlb_flush_sync(p2m);
-
-    p2m_write_unlock(p2m);
-}
-
-/*
- * Invalidate all entries in the root page-tables. This is
- * useful to get fault on entry and do an action.
- *
- * p2m_invalid_root() should not be called when the P2M is shared with
- * the IOMMU because it will cause IOMMU fault.
- */
-void p2m_invalidate_root(struct p2m_domain *p2m)
-{
-    unsigned int i;
-
-    ASSERT(!iommu_use_hap_pt(p2m->domain));
-
-    p2m_write_lock(p2m);
-
-    for ( i = 0; i < P2M_ROOT_LEVEL; i++ )
-        p2m_invalidate_table(p2m, page_to_mfn(p2m->root + i));
-
-    p2m_write_unlock(p2m);
-}
-
-/*
- * Resolve any translation fault due to change in the p2m. This
- * includes break-before-make and valid bit cleared.
- */
-bool p2m_resolve_translation_fault(struct domain *d, gfn_t gfn)
-{
-    struct p2m_domain *p2m = p2m_get_hostp2m(d);
-    unsigned int level = 0;
-    bool resolved = false;
-    lpae_t entry, *table;
-
-    /* Convenience aliases */
-    DECLARE_OFFSETS(offsets, gfn_to_gaddr(gfn));
-
-    p2m_write_lock(p2m);
-
-    /* This gfn is higher than the highest the p2m map currently holds */
-    if ( gfn_x(gfn) > gfn_x(p2m->max_mapped_gfn) )
-        goto out;
-
-    table = p2m_get_root_pointer(p2m, gfn);
-    /*
-     * The table should always be non-NULL because the gfn is below
-     * p2m->max_mapped_gfn and the root table pages are always present.
-     */
-    if ( !table )
-    {
-        ASSERT_UNREACHABLE();
-        goto out;
-    }
-
-    /*
-     * Go down the page-tables until an entry has the valid bit unset or
-     * a block/page entry has been hit.
-     */
-    for ( level = P2M_ROOT_LEVEL; level <= 3; level++ )
-    {
-        int rc;
-
-        entry = table[offsets[level]];
-
-        if ( level == 3 )
-            break;
+mfn_t p2m_lookup(struct domain *d, gfn_t gfn, p2m_type_t *t)
+{
+    mfn_t mfn;
+    struct p2m_domain *p2m = p2m_get_hostp2m(d);
 
-        /* Stop as soon as we hit an entry with the valid bit unset. */
-        if ( !lpae_is_valid(entry) )
-            break;
+    p2m_read_lock(p2m);
+    mfn = p2m_get_entry(p2m, gfn, t, NULL, NULL, NULL);
+    p2m_read_unlock(p2m);
 
-        rc = p2m_next_level(p2m, true, level, &table, offsets[level]);
-        if ( rc == GUEST_TABLE_MAP_FAILED )
-            goto out_unmap;
-        else if ( rc != GUEST_TABLE_NORMAL_PAGE )
-            break;
-    }
+    return mfn;
+}
 
-    /*
-     * If the valid bit of the entry is set, it means someone was playing with
-     * the Stage-2 page table. Nothing to do and mark the fault as resolved.
-     */
-    if ( lpae_is_valid(entry) )
-    {
-        resolved = true;
-        goto out_unmap;
-    }
+struct page_info *p2m_get_page_from_gfn(struct domain *d, gfn_t gfn,
+                                        p2m_type_t *t)
+{
+    struct page_info *page;
+    p2m_type_t p2mt;
+    mfn_t mfn = p2m_lookup(d, gfn, &p2mt);
 
-    /*
-     * The valid bit is unset. If the entry is still not valid then the fault
-     * cannot be resolved, exit and report it.
-     */
-    if ( !p2m_is_valid(entry) )
-        goto out_unmap;
+    if ( t )
+        *t = p2mt;
 
-    /*
-     * Now we have an entry with valid bit unset, but still valid from
-     * the P2M point of view.
-     *
-     * If an entry is pointing to a table, each entry of the table will
-     * have there valid bit cleared. This allows a function to clear the
-     * full p2m with just a couple of write. The valid bit will then be
-     * propagated on the fault.
-     * If an entry is pointing to a block/page, no work to do for now.
-     */
-    if ( lpae_is_table(entry, level) )
-        p2m_invalidate_table(p2m, lpae_get_mfn(entry));
+    if ( !p2m_is_any_ram(p2mt) )
+        return NULL;
 
-    /*
-     * Now that the work on the entry is done, set the valid bit to prevent
-     * another fault on that entry.
-     */
-    resolved = true;
-    entry.p2m.valid = 1;
+    if ( !mfn_valid(mfn) )
+        return NULL;
 
-    p2m_write_pte(table + offsets[level], entry, p2m->clean_pte);
+    page = mfn_to_page(mfn);
 
     /*
-     * No need to flush the TLBs as the modified entry had the valid bit
-     * unset.
+     * get_page won't work on foreign mapping because the page doesn't
+     * belong to the current domain.
      */
+    if ( p2m_is_foreign(p2mt) )
+    {
+        struct domain *fdom = page_get_owner_and_reference(page);
+        ASSERT(fdom != NULL);
+        ASSERT(fdom != d);
+        return page;
+    }
 
-out_unmap:
-    unmap_domain_page(table);
+    return get_page(page, d) ? page : NULL;
+}
 
-out:
-    p2m_write_unlock(p2m);
+int guest_physmap_mark_populate_on_demand(struct domain *d,
+                                          unsigned long gfn,
+                                          unsigned int order)
+{
+    return -ENOSYS;
+}
 
-    return resolved;
+unsigned long p2m_pod_decrease_reservation(struct domain *d, gfn_t gfn,
+                                           unsigned int order)
+{
+    return 0;
 }
 
 int p2m_insert_mapping(struct domain *d, gfn_t start_gfn, unsigned long nr,
@@ -1612,44 +244,6 @@ int set_foreign_p2m_entry(struct domain *d, const struct domain *fd,
     return rc;
 }
 
-static struct page_info *p2m_allocate_root(void)
-{
-    struct page_info *page;
-    unsigned int i;
-
-    page = alloc_domheap_pages(NULL, P2M_ROOT_ORDER, 0);
-    if ( page == NULL )
-        return NULL;
-
-    /* Clear both first level pages */
-    for ( i = 0; i < P2M_ROOT_PAGES; i++ )
-        clear_and_clean_page(page + i);
-
-    return page;
-}
-
-static int p2m_alloc_table(struct domain *d)
-{
-    struct p2m_domain *p2m = p2m_get_hostp2m(d);
-
-    p2m->root = p2m_allocate_root();
-    if ( !p2m->root )
-        return -ENOMEM;
-
-    p2m->vttbr = generate_vttbr(p2m->vmid, page_to_mfn(p2m->root));
-
-    /*
-     * Make sure that all TLBs corresponding to the new VMID are flushed
-     * before using it
-     */
-    p2m_write_lock(p2m);
-    p2m_force_tlb_flush_sync(p2m);
-    p2m_write_unlock(p2m);
-
-    return 0;
-}
-
-
 static spinlock_t vmid_alloc_lock = SPIN_LOCK_UNLOCKED;
 
 /*
@@ -1660,7 +254,7 @@ static spinlock_t vmid_alloc_lock = SPIN_LOCK_UNLOCKED;
  */
 static unsigned long *vmid_mask;
 
-static void p2m_vmid_allocator_init(void)
+void p2m_vmid_allocator_init(void)
 {
     /*
      * allocate space for vmid_mask based on MAX_VMID
@@ -1673,7 +267,7 @@ static void p2m_vmid_allocator_init(void)
     set_bit(INVALID_VMID, vmid_mask);
 }
 
-static int p2m_alloc_vmid(struct domain *d)
+int p2m_alloc_vmid(struct domain *d)
 {
     struct p2m_domain *p2m = p2m_get_hostp2m(d);
 
@@ -1703,7 +297,7 @@ out:
     return rc;
 }
 
-static void p2m_free_vmid(struct domain *d)
+void p2m_free_vmid(struct domain *d)
 {
     struct p2m_domain *p2m = p2m_get_hostp2m(d);
     spin_lock(&vmid_alloc_lock);
@@ -1713,187 +307,6 @@ static void p2m_free_vmid(struct domain *d)
     spin_unlock(&vmid_alloc_lock);
 }
 
-int p2m_teardown(struct domain *d)
-{
-    struct p2m_domain *p2m = p2m_get_hostp2m(d);
-    unsigned long count = 0;
-    struct page_info *pg;
-    int rc = 0;
-
-    p2m_write_lock(p2m);
-
-    while ( (pg = page_list_remove_head(&p2m->pages)) )
-    {
-        p2m_free_page(p2m->domain, pg);
-        count++;
-        /* Arbitrarily preempt every 512 iterations */
-        if ( !(count % 512) && hypercall_preempt_check() )
-        {
-            rc = -ERESTART;
-            break;
-        }
-    }
-
-    p2m_write_unlock(p2m);
-
-    return rc;
-}
-
-void p2m_final_teardown(struct domain *d)
-{
-    struct p2m_domain *p2m = p2m_get_hostp2m(d);
-
-    /* p2m not actually initialized */
-    if ( !p2m->domain )
-        return;
-
-    /*
-     * No need to call relinquish_p2m_mapping() here because
-     * p2m_final_teardown() is called either after domain_relinquish_resources()
-     * where relinquish_p2m_mapping() has been called.
-     */
-
-    ASSERT(page_list_empty(&p2m->pages));
-
-    while ( p2m_teardown_allocation(d) == -ERESTART )
-        continue; /* No preemption support here */
-    ASSERT(page_list_empty(&d->arch.paging.p2m_freelist));
-
-    if ( p2m->root )
-        free_domheap_pages(p2m->root, P2M_ROOT_ORDER);
-
-    p2m->root = NULL;
-
-    p2m_free_vmid(d);
-
-    radix_tree_destroy(&p2m->mem_access_settings, NULL);
-
-    p2m->domain = NULL;
-}
-
-int p2m_init(struct domain *d)
-{
-    struct p2m_domain *p2m = p2m_get_hostp2m(d);
-    int rc;
-    unsigned int cpu;
-
-    rwlock_init(&p2m->lock);
-    spin_lock_init(&d->arch.paging.lock);
-    INIT_PAGE_LIST_HEAD(&p2m->pages);
-    INIT_PAGE_LIST_HEAD(&d->arch.paging.p2m_freelist);
-
-    p2m->vmid = INVALID_VMID;
-    p2m->max_mapped_gfn = _gfn(0);
-    p2m->lowest_mapped_gfn = _gfn(ULONG_MAX);
-
-    p2m->default_access = p2m_access_rwx;
-    p2m->mem_access_enabled = false;
-    radix_tree_init(&p2m->mem_access_settings);
-
-    /*
-     * Some IOMMUs don't support coherent PT walk. When the p2m is
-     * shared with the CPU, Xen has to make sure that the PT changes have
-     * reached the memory
-     */
-    p2m->clean_pte = is_iommu_enabled(d) &&
-        !iommu_has_feature(d, IOMMU_FEAT_COHERENT_WALK);
-
-    /*
-     * Make sure that the type chosen to is able to store the an vCPU ID
-     * between 0 and the maximum of virtual CPUS supported as long as
-     * the INVALID_VCPU_ID.
-     */
-    BUILD_BUG_ON((1 << (sizeof(p2m->last_vcpu_ran[0]) * 8)) < MAX_VIRT_CPUS);
-    BUILD_BUG_ON((1 << (sizeof(p2m->last_vcpu_ran[0])* 8)) < INVALID_VCPU_ID);
-
-    for_each_possible_cpu(cpu)
-       p2m->last_vcpu_ran[cpu] = INVALID_VCPU_ID;
-
-    /*
-     * "Trivial" initialisation is now complete.  Set the backpointer so
-     * p2m_teardown() and friends know to do something.
-     */
-    p2m->domain = d;
-
-    rc = p2m_alloc_vmid(d);
-    if ( rc )
-        return rc;
-
-    rc = p2m_alloc_table(d);
-    if ( rc )
-        return rc;
-
-    return 0;
-}
-
-/*
- * The function will go through the p2m and remove page reference when it
- * is required. The mapping will be removed from the p2m.
- *
- * XXX: See whether the mapping can be left intact in the p2m.
- */
-int relinquish_p2m_mapping(struct domain *d)
-{
-    struct p2m_domain *p2m = p2m_get_hostp2m(d);
-    unsigned long count = 0;
-    p2m_type_t t;
-    int rc = 0;
-    unsigned int order;
-    gfn_t start, end;
-
-    BUG_ON(!d->is_dying);
-    /* No mappings can be added in the P2M after the P2M lock is released. */
-    p2m_write_lock(p2m);
-
-    start = p2m->lowest_mapped_gfn;
-    end = gfn_add(p2m->max_mapped_gfn, 1);
-
-    for ( ; gfn_x(start) < gfn_x(end);
-          start = gfn_next_boundary(start, order) )
-    {
-        mfn_t mfn = p2m_get_entry(p2m, start, &t, NULL, &order, NULL);
-
-        count++;
-        /*
-         * Arbitrarily preempt every 512 iterations.
-         */
-        if ( !(count % 512) && hypercall_preempt_check() )
-        {
-            rc = -ERESTART;
-            break;
-        }
-
-        /*
-         * p2m_set_entry will take care of removing reference on page
-         * when it is necessary and removing the mapping in the p2m.
-         */
-        if ( !mfn_eq(mfn, INVALID_MFN) )
-        {
-            /*
-             * For valid mapping, the start will always be aligned as
-             * entry will be removed whilst relinquishing.
-             */
-            rc = __p2m_set_entry(p2m, start, order, INVALID_MFN,
-                                 p2m_invalid, p2m_access_rwx);
-            if ( unlikely(rc) )
-            {
-                printk(XENLOG_G_ERR "Unable to remove mapping gfn=%#"PRI_gfn" order=%u from the p2m of domain %d\n", gfn_x(start), order, d->domain_id);
-                break;
-            }
-        }
-    }
-
-    /*
-     * Update lowest_mapped_gfn so on the next call we still start where
-     * we stopped.
-     */
-    p2m->lowest_mapped_gfn = start;
-
-    p2m_write_unlock(p2m);
-
-    return rc;
-}
-
 int p2m_cache_flush_range(struct domain *d, gfn_t *pstart, gfn_t end)
 {
     struct p2m_domain *p2m = p2m_get_hostp2m(d);
@@ -1987,43 +400,6 @@ int p2m_cache_flush_range(struct domain *d, gfn_t *pstart, gfn_t end)
     return rc;
 }
 
-/*
- * Clean & invalidate RAM associated to the guest vCPU.
- *
- * The function can only work with the current vCPU and should be called
- * with IRQ enabled as the vCPU could get preempted.
- */
-void p2m_flush_vm(struct vcpu *v)
-{
-    struct p2m_domain *p2m = p2m_get_hostp2m(v->domain);
-    int rc;
-    gfn_t start = _gfn(0);
-
-    ASSERT(v == current);
-    ASSERT(local_irq_is_enabled());
-    ASSERT(v->arch.need_flush_to_ram);
-
-    do
-    {
-        rc = p2m_cache_flush_range(v->domain, &start, _gfn(ULONG_MAX));
-        if ( rc == -ERESTART )
-            do_softirq();
-    } while ( rc == -ERESTART );
-
-    if ( rc != 0 )
-        gprintk(XENLOG_WARNING,
-                "P2M has not been correctly cleaned (rc = %d)\n",
-                rc);
-
-    /*
-     * Invalidate the p2m to track which page was modified by the guest
-     * between call of p2m_flush_vm().
-     */
-    p2m_invalidate_root(p2m);
-
-    v->arch.need_flush_to_ram = false;
-}
-
 /*
  * See note at ARMv7 ARM B1.14.4 (DDI 0406C.c) (TL;DR: S/W ops are not
  * easily virtualized).
@@ -2217,197 +593,6 @@ void __init p2m_restrict_ipa_bits(unsigned int ipa_bits)
         p2m_ipa_bits = ipa_bits;
 }
 
-/* VTCR value to be configured by all CPUs. Set only once by the boot CPU */
-static register_t __read_mostly vtcr;
-
-static void setup_virt_paging_one(void *data)
-{
-    WRITE_SYSREG(vtcr, VTCR_EL2);
-
-    /*
-     * ARM64_WORKAROUND_AT_SPECULATE: We want to keep the TLBs free from
-     * entries related to EL1/EL0 translation regime until a guest vCPU
-     * is running. For that, we need to set-up VTTBR to point to an empty
-     * page-table and turn on stage-2 translation. The TLB entries
-     * associated with EL1/EL0 translation regime will also be flushed in case
-     * an AT instruction was speculated before hand.
-     */
-    if ( cpus_have_cap(ARM64_WORKAROUND_AT_SPECULATE) )
-    {
-        WRITE_SYSREG64(generate_vttbr(INVALID_VMID, empty_root_mfn), VTTBR_EL2);
-        WRITE_SYSREG(READ_SYSREG(HCR_EL2) | HCR_VM, HCR_EL2);
-        isb();
-
-        flush_all_guests_tlb_local();
-    }
-}
-
-void __init setup_virt_paging(void)
-{
-    /* Setup Stage 2 address translation */
-    register_t val = VTCR_RES1|VTCR_SH0_IS|VTCR_ORGN0_WBWA|VTCR_IRGN0_WBWA;
-
-    static const struct {
-        unsigned int pabits; /* Physical Address Size */
-        unsigned int t0sz;   /* Desired T0SZ, minimum in comment */
-        unsigned int root_order; /* Page order of the root of the p2m */
-        unsigned int sl0;    /* Desired SL0, maximum in comment */
-    } pa_range_info[] __initconst = {
-        /* T0SZ minimum and SL0 maximum from ARM DDI 0487H.a Table D5-6 */
-        /*      PA size, t0sz(min), root-order, sl0(max) */
-#ifdef CONFIG_ARM_64
-        [0] = { 32,      32/*32*/,  0,          1 },
-        [1] = { 36,      28/*28*/,  0,          1 },
-        [2] = { 40,      24/*24*/,  1,          1 },
-        [3] = { 42,      22/*22*/,  3,          1 },
-        [4] = { 44,      20/*20*/,  0,          2 },
-        [5] = { 48,      16/*16*/,  0,          2 },
-        [6] = { 52,      12/*12*/,  4,          2 },
-        [7] = { 0 }  /* Invalid */
-#else
-        { 32,      0/*0*/,    0,          1 },
-        { 40,      24/*24*/,  1,          1 }
-#endif
-    };
-
-    unsigned int i;
-    unsigned int pa_range = 0x10; /* Larger than any possible value */
-
-#ifdef CONFIG_ARM_32
-    /*
-     * Typecast pa_range_info[].t0sz into arm32 bit variant.
-     *
-     * VTCR.T0SZ is bits [3:0] and S(sign extension), bit[4] for arm322.
-     * Thus, pa_range_info[].t0sz is translated to its arm32 variant using
-     * struct bitfields.
-     */
-    struct
-    {
-        signed int val:5;
-    } t0sz_32;
-#else
-    /*
-     * Restrict "p2m_ipa_bits" if needed. As P2M table is always configured
-     * with IPA bits == PA bits, compare against "pabits".
-     */
-    if ( pa_range_info[system_cpuinfo.mm64.pa_range].pabits < p2m_ipa_bits )
-        p2m_ipa_bits = pa_range_info[system_cpuinfo.mm64.pa_range].pabits;
-
-    /*
-     * cpu info sanitization made sure we support 16bits VMID only if all
-     * cores are supporting it.
-     */
-    if ( system_cpuinfo.mm64.vmid_bits == MM64_VMID_16_BITS_SUPPORT )
-        max_vmid = MAX_VMID_16_BIT;
-#endif
-
-    /* Choose suitable "pa_range" according to the resulted "p2m_ipa_bits". */
-    for ( i = 0; i < ARRAY_SIZE(pa_range_info); i++ )
-    {
-        if ( p2m_ipa_bits == pa_range_info[i].pabits )
-        {
-            pa_range = i;
-            break;
-        }
-    }
-
-    /* Check if we found the associated entry in the array */
-    if ( pa_range >= ARRAY_SIZE(pa_range_info) || !pa_range_info[pa_range].pabits )
-        panic("%u-bit P2M is not supported\n", p2m_ipa_bits);
-
-#ifdef CONFIG_ARM_64
-    val |= VTCR_PS(pa_range);
-    val |= VTCR_TG0_4K;
-
-    /* Set the VS bit only if 16 bit VMID is supported. */
-    if ( MAX_VMID == MAX_VMID_16_BIT )
-        val |= VTCR_VS;
-#endif
-
-    val |= VTCR_SL0(pa_range_info[pa_range].sl0);
-    val |= VTCR_T0SZ(pa_range_info[pa_range].t0sz);
-
-    p2m_root_order = pa_range_info[pa_range].root_order;
-    p2m_root_level = 2 - pa_range_info[pa_range].sl0;
-
-#ifdef CONFIG_ARM_64
-    p2m_ipa_bits = 64 - pa_range_info[pa_range].t0sz;
-#else
-    t0sz_32.val = pa_range_info[pa_range].t0sz;
-    p2m_ipa_bits = 32 - t0sz_32.val;
-#endif
-
-    printk("P2M: %d-bit IPA with %d-bit PA and %d-bit VMID\n",
-           p2m_ipa_bits,
-           pa_range_info[pa_range].pabits,
-           ( MAX_VMID == MAX_VMID_16_BIT ) ? 16 : 8);
-
-    printk("P2M: %d levels with order-%d root, VTCR 0x%"PRIregister"\n",
-           4 - P2M_ROOT_LEVEL, P2M_ROOT_ORDER, val);
-
-    p2m_vmid_allocator_init();
-
-    /* It is not allowed to concatenate a level zero root */
-    BUG_ON( P2M_ROOT_LEVEL == 0 && P2M_ROOT_ORDER > 0 );
-    vtcr = val;
-
-    /*
-     * ARM64_WORKAROUND_AT_SPECULATE requires to allocate root table
-     * with all entries zeroed.
-     */
-    if ( cpus_have_cap(ARM64_WORKAROUND_AT_SPECULATE) )
-    {
-        struct page_info *root;
-
-        root = p2m_allocate_root();
-        if ( !root )
-            panic("Unable to allocate root table for ARM64_WORKAROUND_AT_SPECULATE\n");
-
-        empty_root_mfn = page_to_mfn(root);
-    }
-
-    setup_virt_paging_one(NULL);
-    smp_call_function(setup_virt_paging_one, NULL, 1);
-}
-
-static int cpu_virt_paging_callback(struct notifier_block *nfb,
-                                    unsigned long action,
-                                    void *hcpu)
-{
-    switch ( action )
-    {
-    case CPU_STARTING:
-        ASSERT(system_state != SYS_STATE_boot);
-        setup_virt_paging_one(NULL);
-        break;
-    default:
-        break;
-    }
-
-    return NOTIFY_DONE;
-}
-
-static struct notifier_block cpu_virt_paging_nfb = {
-    .notifier_call = cpu_virt_paging_callback,
-};
-
-static int __init cpu_virt_paging_init(void)
-{
-    register_cpu_notifier(&cpu_virt_paging_nfb);
-
-    return 0;
-}
-/*
- * Initialization of the notifier has to be done at init rather than presmp_init
- * phase because: the registered notifier is used to setup virtual paging for
- * non-boot CPUs after the initial virtual paging for all CPUs is already setup,
- * i.e. when a non-boot CPU is hotplugged after the system has booted. In other
- * words, the notifier should be registered after the virtual paging is
- * initially setup (setup_virt_paging() is called from start_xen()). This is
- * required because vtcr config value has to be set before a notifier can fire.
- */
-__initcall(cpu_virt_paging_init);
-
 /*
  * Local variables:
  * mode: C
-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Mon Oct 23 02:27:29 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 02:27:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.620960.966858 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qukf9-0007ZY-Ia; Mon, 23 Oct 2023 02:27:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 620960.966858; Mon, 23 Oct 2023 02: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 1qukf9-0007ZR-Fz; Mon, 23 Oct 2023 02:27:27 +0000
Received: by outflank-mailman (input) for mailman id 620960;
 Mon, 23 Oct 2023 02:27: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 1qukf8-0007ZH-P1; Mon, 23 Oct 2023 02:27: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 1qukf8-0008C7-IZ; Mon, 23 Oct 2023 02:27: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 1qukf7-0000j1-V3; Mon, 23 Oct 2023 02:27:26 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qukf7-0003Ve-UU; Mon, 23 Oct 2023 02:27: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=i5GcgmCGr/nXGn2tAb1t4YGJrAwOQ6Y3QCbyI3+BmAk=; b=YlPq7a+CqwFodrWRLbUDea/paU
	NHouKPG0qFCakisKEzYDQ5Kk2NzwwVN4NREJqFtntoVwSh6e0p2kDXjqBCZF1T55z+W6ZMjWRvsn5
	xOHY9akpVCedYN0l8z6/oULa16xQzpwktSgxmeikEK4fOpUvqBt92KyASEnRVJCrfHJg=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183492-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 183492: 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-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-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-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-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-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu: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-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-raw:migrate-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-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd: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-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds: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-qcow2:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=fe3cfe869d5e0453754cf2b4c75110276b5e8527
X-Osstest-Versions-That:
    linux=1acfd2bd3f0d9dc34ea1871a445c554220945d9f
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 23 Oct 2023 02:27:25 +0000

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

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt   16 saverestore-support-check fail blocked in 183490
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183490
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183490
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183490
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183490
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183490
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183490
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183490
 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-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-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-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-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-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-amd64-amd64-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-amd64-amd64-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-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-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-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-qcow2 14 migrate-support-check        fail never pass

version targeted for testing:
 linux                fe3cfe869d5e0453754cf2b4c75110276b5e8527
baseline version:
 linux                1acfd2bd3f0d9dc34ea1871a445c554220945d9f

Last test of basis   183490  2023-10-22 03:30:53 Z    0 days
Testing same since   183492  2023-10-22 17:41:44 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Adrien Thierry <athierry@redhat.com>
  Ard Biesheuvel <ardb@kernel.org>
  Bo Liu <liubo03@inspur.com>
  Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
  Geert Uytterhoeven <geert+renesas@glider.be>
  Jinjie Ruan <ruanjinjie@huawei.com>
  Kirill A. Shutemov <kirill.shutemov@linux.intel.com>
  Konrad Dybcio <konrad.dybcio@linaro.org>
  Kuan-Wei Chiu <visitorckw@gmail.com>
  Linus Torvalds <torvalds@linux-foundation.org>
  Michael Roth <michael.roth@amd.com>
  Nikolay Borisov <nik.borisov@suse.com>
  Rob Herring <robh@kernel.org>
  Tony Lindgren <tony@atomide.com>
  Varadarajan Narayanan <quic_varada@quicinc.com>
  Vinod Koul <vkoul@kernel.org>
  Yang Yingliang <yangyingliang@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
   1acfd2bd3f0d..fe3cfe869d5e  fe3cfe869d5e0453754cf2b4c75110276b5e8527 -> tested/linux-linus


From xen-devel-bounces@lists.xenproject.org Mon Oct 23 06:19:03 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 06:19:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.620973.966868 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quoH2-0000MV-S6; Mon, 23 Oct 2023 06:18:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 620973.966868; Mon, 23 Oct 2023 06: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 1quoH2-0000MO-PB; Mon, 23 Oct 2023 06:18:48 +0000
Received: by outflank-mailman (input) for mailman id 620973;
 Mon, 23 Oct 2023 06:18: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=OVTz=GF=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1quoH0-0000MG-LF
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 06:18:46 +0000
Received: from EUR02-DB5-obe.outbound.protection.outlook.com
 (mail-db5eur02hn2238.outbound.protection.outlook.com [52.100.203.238])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 04877682-716c-11ee-9b0e-b553b5be7939;
 Mon, 23 Oct 2023 08:18:44 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS8PR04MB7989.eurprd04.prod.outlook.com (2603:10a6:20b:28b::10)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.14; Mon, 23 Oct
 2023 06:18:40 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6933.011; Mon, 23 Oct 2023
 06:18: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: 04877682-716c-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=d2YoQMi0ybY9PflSMuHqJQSlD2wHYMb5t/w7qHAc6vJ1dMaTnrAQmNY2sZANiFdbftTiNSaKyvS3JezQ2MsvdBM7/8ApJjXrJnoZ0To9aWViemnNouR341aiZcs71ls5kQqdhUD+baQDaFrmZ81ABGHidbc3ZLbJU/9s+y8Cp3RZI/rZNYPF7izOC8evC7rb5dgZwPSJEzwBVLXLf5tEeCHnOt0Ub4APoenlvT1fegTp1JJ6N4oVj5UUgHPHqpYwdZ1cl4zoWtONQgDFkcKf4CVKEfFNghI8V2UfsXxPIEXDIFfJBfwM2N+POvKqGdOzT2J+03OYx+JleNfgMEam4Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=2nDR7Gy1z7OxTvTZHoAtl3h6py764BiHy+ln2fuYRM0=;
 b=jJ4uzb4qZXfpGcNTIFUo8Wm/9kqfkHQsA9serssPpx9gtVJWp1NzPdE2O3e5jcz7zrN1PI7qYHlyVXZTB5+tOMEOXU+uBxCYc47e0zwhOsaimxZTY0TSVKnArhd+tA3ltXvaGtXjxLcIBTaPEjLdklkgNNaBKt+TUrcF69YWhYhsFJqy3GKFJAKcCeHf63785WVUTiN0DbMDGmmwZEJzv5lJIz4UCfHOBcvAVUUdTn1LNnzvcFwG2z6VJ4MwRyhZWcw7YvnjrhKQTUqrAItda8Oq1hvdsgqMDK2EQJv3q20o4sXRCG93L9wpqwr5H63bw0veRPQU5l2KnNpDDAxd0g==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=2nDR7Gy1z7OxTvTZHoAtl3h6py764BiHy+ln2fuYRM0=;
 b=ysQ9/8Qviz/p86hZIhUrLeFheXmnTMcPdzF0PxJdDbi5f/0fKf1/Uiup089K6WkMYqv/K2Kpt0m65p68buLCNlWrmCBFfXUd2B+4YMu1kii+Lf9+2y/guOGeoFH3asCDT+7Z9xdxKo4FUPp8tn25vvKmoCy/OyrPmO4ZHiyZpSkyhhrFic/rNkG2L1Cy3PND9iZB7DIuQHby+KaeFb+yAnJy1ZhNyEHcP+ABz9QWSZTVHmFITNGHv6twbqDSS5VRwiU8MyAR9FBlUGoBbSS6OqXDaP64HYY4nhK8D6H7qLbt93Afp861oIbj8JPOLSSRKCNmvnd1OED1WIZVzw1VXA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <c0e7320f-1317-fe31-88c0-16b580eee8c1@suse.com>
Date: Mon, 23 Oct 2023 08:18: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/3] CHANGELOG.md: Set 4.18 release date and tag
To: Henry Wang <Henry.Wang@arm.com>
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 Xen-devel <xen-devel@lists.xenproject.org>,
 Community Manager <community.manager@xenproject.org>,
 Julien Grall <julien@xen.org>, Bertrand Marquis <Bertrand.Marquis@arm.com>,
 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>,
 Wei Chen <Wei.Chen@arm.com>
References: <20231019052050.1032492-1-Henry.Wang@arm.com>
 <20231019052050.1032492-3-Henry.Wang@arm.com>
 <alpine.DEB.2.22.394.2310190913360.1945130@ubuntu-linux-20-04-desktop>
 <8327F8D2-72B7-42CE-A31A-9E845A38DAC0@arm.com>
 <42132ef5-ddf5-a7a4-70fc-ccb42419300f@suse.com>
 <4418D961-2A3B-4062-A888-55EBE6A4CFF6@arm.com>
Content-Language: en-US
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <4418D961-2A3B-4062-A888-55EBE6A4CFF6@arm.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR2P281CA0072.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:9a::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_|AS8PR04MB7989:EE_
X-MS-Office365-Filtering-Correlation-Id: 29dce805-a893-49a3-771a-08dbd38fe690
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	=?utf-8?B?RkN6UU1mMlRKR0tWY2d3dERrNVAxbHR1MzFnRTBTYU9zSnlmazBGSEorZDVj?=
 =?utf-8?B?YnRVZUlUTzFaREpBcGQ3TW5TbUFRaXlXQ2F0MlhWR0JhQWZnTGxIYzA2ZGxL?=
 =?utf-8?B?VlZ3QlBrZHZmOUFRenlSZmNZUFF2V1V0NGRuVHMzZ1hKbTRBTmwrZm9xaExI?=
 =?utf-8?B?MXZyNnU3QmQvNXVCNE14RHZrWEZmSDduZlk2YXk2a0ZNazVyTmVOUGJXUC9S?=
 =?utf-8?B?bHpnM1JyV2RPTDhXUU11eXJIaUxISnRFVkVmRkhmR2VhYWZhbWQ4a0Q0VVZi?=
 =?utf-8?B?N0UrWkxTSXRKVFVpRW9QbkdKSnVqOExnU3Z5R1RxdGR5dTBFTEh3empSRWJr?=
 =?utf-8?B?QjdrWHlidnl5TjJiTG5XZmxsSnl4ZlpydENkYmdwQU9KQVo0M3JiQll3dWNx?=
 =?utf-8?B?emxXTWREVmZaNTRqTTkwazA4NHVqYkFtV1B3a2dQOFNqZ25xZzV6aFNESVZl?=
 =?utf-8?B?eGZRQjB0cUovUlBEaXFrWnpLaHJ6ZFE0ejAxMk5ZYUdzcDgwUGdjSXdFb2RX?=
 =?utf-8?B?SVVnaG9qTlhBWGUwZnJVZWxYd3dlbXhzWUNpbU1RTVRaVmt4T0pZZHAyTitj?=
 =?utf-8?B?cFl2aHlveVZFOGNHa3c0bC9EbmdVSkRNUGNMbXQ0MzJLd243aTdBelc0VUN0?=
 =?utf-8?B?aHlhaTB5Tkx0Qy96TDhoQkpldlk4NmhEYTJPSmU4T3ZwY0RmaC8rL1VPQWNR?=
 =?utf-8?B?M2s5TitNMkw4T1lDSVpUczFLZTFrLy8rY2NyTzNmb1Awc0NwREc3Z3FDNlVj?=
 =?utf-8?B?czk0d0VoMGh4QWxBeCs2b1pDVmhaRGdma25TNWxKcFlhaW5TM2dreHhpRk9R?=
 =?utf-8?B?Y04yNU92RWlzdnlXQXhwY09RT0FnMTg5enU4OC9OSmJBa0kweHVDWW1JSm0w?=
 =?utf-8?B?M01kMzU4OEFNVTdkZkRlZUx5eHM0OTVFcndDL0VvVDdnVWFyTmt0cFhkZTVy?=
 =?utf-8?B?Wi9wdjJ0bHpURGhEREE3NU1EUGM0TjE2T1Qvc3pmNldmcTRreGV0eE1nM1lu?=
 =?utf-8?B?ZWFYVWdCNmp4MnB1ZlBxd1gvVkR1a0JpS291bWhkb0dxWVdmWjlLbnpYcG5a?=
 =?utf-8?B?SHJ2RlFUN2Z0aHhSYVRtVThySnRKd0M2d01QanZ5Q29jUFNiajhZTzZzak85?=
 =?utf-8?B?RjlTSmtkaUk1akFCaUQ0em5UOHJwTk5UTEd1NmRneUtuVUxwYUxFLytXUTFP?=
 =?utf-8?B?NWpjR29rVlRrb0s5ZWJOcW9jK1hNOFJaTk45SThBT01JenZvOEhOK01JNDFu?=
 =?utf-8?B?RjdTTloxUDZDcGxIL2sxWGsrVnZXQ0Y4MFlVazBPdGI5am42WHpZYUFwZzQ5?=
 =?utf-8?B?M3lveC9nYWVwcWptcVZMNG51VXNJS2c3Nll4RnNjVlBCcnJ0dWM1am5rWUFa?=
 =?utf-8?Q?U4zN/nA5IlkQWpYuxkv6NUH1HiXkUuZ4=3D?=
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:5;SRV:;IPV:NLI;SFV:SPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:OSPM;SFS:(13230031)(366004)(39860400002)(136003)(346002)(376002)(396003)(230922051799003)(186009)(64100799003)(451199024)(1800799009)(4326008)(8676002)(8936002)(41300700001)(4001150100001)(2906002)(7416002)(5660300002)(53546011)(36756003)(6512007)(6506007)(83380400001)(38100700002)(2616005)(26005)(86362001)(66946007)(31696002)(66556008)(31686004)(6486002)(54906003)(66476007)(6916009)(478600001)(316002)(71176010)(59356011)(207903002);DIR:OUT;SFP:1501;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?VHpxRFFSaXBFR2hGSjBBTzZ6VzRscm9qaGwvVzZOWlFoOW1uS3Y5WGJnampD?=
 =?utf-8?B?WVFpZ1VGR1pDL1M5WkFnbEF2Q2psM0lFUnB5cUQwQ1ExQytKL0Z3WnhGN0Q4?=
 =?utf-8?B?MTRMaG4wQk5TTm5TQmdIUndqS0hNNTZaN0s3OG5TRHY5VTNSdmo0eTlpdG05?=
 =?utf-8?B?RDFlWldjTmdFOFVLNGhVNWdqaG5WZmxlUFNOeVh0UGRLVGg2WmN6eFVjSk5z?=
 =?utf-8?B?WkdUWVZBaFBEdHJPM1MzVzFBWmptZndpelA2RXVQSnNGQTY1djQwQ0R1d3NK?=
 =?utf-8?B?OHFlTlR4WmQzcW1waWZBUlZXL2lzVldzeE9XNEdnR1gvSC9wY2l0bW5zZXFT?=
 =?utf-8?B?WXZQR3NaVEYvN1B6MjUvOStubXN2RlZuTVVSK00zRHZQbHk2em4za0VkYTlp?=
 =?utf-8?B?OVJ4NHlYRk1Od0RpUmVSWDhiZEJSclFZTFZ2eXptNExvK3FFNHdHV2x0L2FZ?=
 =?utf-8?B?ZWVwMlQwUkdlT1UyTjhNM1RSM0ZOOVJBbk40VmlQN3pURGRLa2hwdTd4bzNp?=
 =?utf-8?B?M3JIaVY3UDB4L29lVUk1dFRlWDdSM0lTRkZ0SEJtaFpOaEUrS1RnaVc4SkpZ?=
 =?utf-8?B?aUpYNG56b3VaR3I0Wmw1R0F2bDd1TXh0eU9zd1Y1YzVSQ25tNTVsK3ZxeG04?=
 =?utf-8?B?STRPZUVHL2laU0xtM0M2RXlEM1hBS0FSV1crejlkd2wvSXNOODZXajZ0RnUw?=
 =?utf-8?B?TnFrb3UxbGI4bW1XQUJPQnFaK2JkWU5yMUxFcm9pWkZ2V3FLak5aWll0VWIx?=
 =?utf-8?B?NDJYbW1kYlYyNW1zU3FTMDNManVkZitnQUg3bThTbXRjeldhMnZzb2M2STNI?=
 =?utf-8?B?d0hFMXN4U0V2UWdpQzVzNUZ3dHRzN3RKNDVPemtXOWU4RmVRZURjL3lSRE1K?=
 =?utf-8?B?OXhndTRRM0YyRk5kM0lzSjl2WGhvZWtxQnRXSXFscXU3enVIQjZlODJtcGF0?=
 =?utf-8?B?TWxacVVLVmIrQnU2KzBOR1BHby82Z2J1dHBPMzRGQTVqVEUwT2dBMVNiUEcz?=
 =?utf-8?B?MUZvdlhGZG9GakhldFphT2E4MjdmaWpVR2UxOFR0ZWM3b1Urb2ZsTzRjakdD?=
 =?utf-8?B?ZzErR2lIdzJGQktuS0lNRWFlWjZrelhQSUhJeitFbFhFUUYxU0I0WVc2Z2pC?=
 =?utf-8?B?VE51c2pBU0pncUMzeE1BZitSQ1h2a0R3b0hQVDMxQUhqeHZxOWh6ajVKUTYv?=
 =?utf-8?B?TVNyeVJwWnlYK2IwN1U4dU4rQjB2dVdPQnFuSThVdHlEZlhQblprbW5ZNVBt?=
 =?utf-8?B?WFZ6YU9KTU9kUkIySTRDVUtpbUpmYXBuK01PY2hvMjVZQ2pYdjlOMWloL0hr?=
 =?utf-8?B?NUdTa05TRlVPSTdENGRhdDlWT1RUVkJKd2gwaEJjWEM5cnNTNDZBTy82cFBu?=
 =?utf-8?B?VnlOMWtHTVZHY0pYTTZyY0RvaEM2NDMxTkRYM1p5MHVQcktZOW5XaTlIWERT?=
 =?utf-8?B?bUttRjhYV3NFTWFIaHJPRkxhUHpGSUxOSmlzb09IYnUycDlqaUlsd1ZVcmll?=
 =?utf-8?B?TWxDVUJTcVZSVU5FRkNIQ3hVWjFBcXZFMlhGK2Z6VGwyWk9BaVd6ZEU5QWZw?=
 =?utf-8?B?bEIrZnkxbkMycmRBaUhjSFg5RUNjMlFnNTBFNnh3ZUVuWmdxNkhGWmY2YkFM?=
 =?utf-8?B?WHNtRSt3VTJaZzRzdm5OSUZTSlZXUTdpa3VhckluQVhFbGR2TzN3U01QSk5i?=
 =?utf-8?B?Rys1TFNkUVozMTQySHpMT1BOd05LRjA2VitmN0plYURDNm4rZit3VTJHYTNr?=
 =?utf-8?B?OUUxTkRpc21ucFJjbnliYm5CVlUrY3NkaGkvMTBVZm1Ncm82alFJUDN6TWt0?=
 =?utf-8?B?WTdaZnlCNnVBaysvbXNDTFZKZTl4akFuTWNIWTlBN20rVTduVUV1WlpDZmZ3?=
 =?utf-8?B?eUtPTUFtbExzdEZURmRlQjhINW4yemN0MVZIY2dwVFMzQnl3VHBCRGZ3WENC?=
 =?utf-8?B?OGIxeW5iMmR0VWxaWkFrdEROYXBPRUcxN3FaZjV1d1NneWhUcngwNDVTR1dV?=
 =?utf-8?B?MmphcVhEN0VuV0c3eVUzZGRhS3pGNU1xVWdWWGc5UWk5cmdYakMxZEs3R0Nl?=
 =?utf-8?B?Mk15UmtRREpKNDBzdkVqSEFDa1F4RUxjd2NjS21JaXRINGxCbjdhMm85ZkJv?=
 =?utf-8?Q?9XoRpHohzYiZIvV+hGrTem9Th?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 29dce805-a893-49a3-771a-08dbd38fe690
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Oct 2023 06:18:40.6122
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: eS+ORSIyo0YiP4sXRPSegMQZZAS+87GArzfosEJHNk8tUtjF8UuLRzLZMPbD1JPEC1osmUqwWb0j9Skpi7MkSA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB7989

On 20.10.2023 17:06, Henry Wang wrote:
>> On Oct 20, 2023, at 13:59, Jan Beulich <jbeulich@suse.com> wrote:
>> On 20.10.2023 03:23, Henry Wang wrote:
>>>> On Oct 20, 2023, at 00:14, Stefano Stabellini <sstabellini@kernel.org> wrote:
>>>> On Thu, 19 Oct 2023, Henry Wang wrote:
>>>>> Signed-off-by: Henry Wang <Henry.Wang@arm.com>
>>>>> ---
>>>>> CHANGELOG.md | 2 +-
>>>>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>>>>
>>>>> diff --git a/CHANGELOG.md b/CHANGELOG.md
>>>>> index 47e98f036f..3c83878c9b 100644
>>>>> --- a/CHANGELOG.md
>>>>> +++ b/CHANGELOG.md
>>>>> @@ -4,7 +4,7 @@ Notable changes to Xen will be documented in this file.
>>>>>
>>>>> The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
>>>>>
>>>>> -## [unstable UNRELEASED](https://xenbits.xen.org/gitweb/?p=xen.git;a=shortlog;h=staging) - TBD
>>>>> +## [4.18.0](https://xenbits.xen.org/gitweb/?p=xen.git;a=shortlog;h=RELEASE-4.18.0) - 2023-10-30
>>>>
>>>> Should we use xenbits.xenproject.org instead? I think that's the
>>>> official name. In any case:
>>>
>>> Hmmm, good question, but after some deeper look somehow I am more confused now.
>>>
>>> So if I click the xen.git link in xenbits.xenproject.org <http://xenbits.xenproject.org/>, I will be directed to
>>> "http://xenbits.xen.org/gitweb/?p=xen.git;a=summary”, where the http and https git URL
>>> are both using "xenbits.xen.org”.
>>>
>>> However, "https://xenbits.xenproject.org/gitweb/?p=xen.git;a=summary” is also a valid
>>> link, but the https and http git URL are still both using “xenbits.xen.org”, also, all our previous
>>> releases seem to use "xenbits.xen.org".
>>>
>>> Could anyone in this community long enough provide a bit more details/clarifications on this?
>>
>> Well, "xenproject" appeared later as a name, with the intention of
>> becoming the "canonical" one. Still it was likely easiest at the time
>> to simply add respective redirects in the web server(s).
> 
> I take above comment as you also prefer the “xenbits.xenproject.org”? Could you please kindly
> confirm that?

Indeed I do.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Oct 23 06:31:37 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 06:31:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.620978.966878 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quoTM-0002z7-3E; Mon, 23 Oct 2023 06:31:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 620978.966878; Mon, 23 Oct 2023 06:31: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 1quoTM-0002z0-0Y; Mon, 23 Oct 2023 06:31:32 +0000
Received: by outflank-mailman (input) for mailman id 620978;
 Mon, 23 Oct 2023 06:31: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=t4BY=GF=suse.com=jgross@srs-se1.protection.inumbo.net>)
 id 1quoTK-0002yr-B0
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 06:31:30 +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 cb42b7e3-716d-11ee-9b0e-b553b5be7939;
 Mon, 23 Oct 2023 08:31:27 +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 8896B1FD74;
 Mon, 23 Oct 2023 06:31:26 +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 52534132FD;
 Mon, 23 Oct 2023 06:31:26 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap2.suse-dmz.suse.de with ESMTPSA id /1alEj4TNmVCWQAAMHmgww
 (envelope-from <jgross@suse.com>); Mon, 23 Oct 2023 06:31: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: cb42b7e3-716d-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1698042686; 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=hGQlb6VBtMx0KwTDMcec75OMPWM60E36Q4mWk4rFzcI=;
	b=pVBeIQ7zL3GKd5UehzgohsGBLUMRra53Cm9eM+SuK8IzG3h4GweSY9yTK7u6EL4vw2UrB0
	XJsMnE+EPpriYNaHGFgozPZh1lGbl8bJC6Xl7XsGVx2843A15di7maPJGdxq/caXkTwJMR
	hzAyLjXkRDWu10a+QdSoPbo8hVD6wHg=
Message-ID: <ed494df3-85da-4849-b6e3-f9d60862c8b7@suse.com>
Date: Mon, 23 Oct 2023 08:31:25 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH] xen/sched: fix sched_move_domain()
Content-Language: en-US
To: Andrew Cooper <andrew.cooper3@citrix.com>, xen-devel@lists.xenproject.org
Cc: George Dunlap <george.dunlap@citrix.com>,
 Dario Faggioli <dfaggioli@suse.com>, Henry Wang <Henry.Wang@arm.com>
References: <20231019112314.22665-1-jgross@suse.com>
 <d1284225-8cca-4f5a-911e-8ebdc0336356@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: <d1284225-8cca-4f5a-911e-8ebdc0336356@citrix.com>
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature";
 boundary="------------meCs2tUTK5YoQ0zLlDsmTXrO"
Authentication-Results: smtp-out2.suse.de;
	none
X-Spam-Level: 
X-Spam-Score: -8.99
X-Spamd-Result: default: False [-8.99 / 50.00];
	 ARC_NA(0.00)[];
	 RCVD_VIA_SMTP_AUTH(0.00)[];
	 XM_UA_NO_VERSION(0.01)[];
	 FROM_HAS_DN(0.00)[];
	 TO_DN_SOME(0.00)[];
	 TO_MATCH_ENVRCPT_ALL(0.00)[];
	 BAYES_HAM(-3.00)[100.00%];
	 MIME_GOOD(-0.20)[multipart/signed,multipart/mixed,text/plain];
	 HAS_ATTACHMENT(0.00)[];
	 NEURAL_HAM_LONG(-3.00)[-1.000];
	 RCPT_COUNT_FIVE(0.00)[5];
	 DKIM_SIGNED(0.00)[suse.com:s=susede1];
	 NEURAL_HAM_SHORT(-1.00)[-1.000];
	 MIME_BASE64_TEXT(0.10)[];
	 SIGNED_PGP(-2.00)[];
	 FROM_EQ_ENVFROM(0.00)[];
	 MIME_TRACE(0.00)[0:+,1:+,2:+,3:+,4:~,5:~];
	 RCVD_COUNT_TWO(0.00)[2];
	 RCVD_TLS_ALL(0.00)[];
	 MID_RHS_MATCH_FROM(0.00)[];
	 MIME_UNKNOWN(0.10)[application/pgp-keys]
X-Spam-Flag: NO

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--------------meCs2tUTK5YoQ0zLlDsmTXrO
Content-Type: multipart/mixed; boundary="------------pSCJR0n4y5TfNY7mG0tR3YCh";
 protected-headers="v1"
From: Juergen Gross <jgross@suse.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>, xen-devel@lists.xenproject.org
Cc: George Dunlap <george.dunlap@citrix.com>,
 Dario Faggioli <dfaggioli@suse.com>, Henry Wang <Henry.Wang@arm.com>
Message-ID: <ed494df3-85da-4849-b6e3-f9d60862c8b7@suse.com>
Subject: Re: [PATCH] xen/sched: fix sched_move_domain()
References: <20231019112314.22665-1-jgross@suse.com>
 <d1284225-8cca-4f5a-911e-8ebdc0336356@citrix.com>
In-Reply-To: <d1284225-8cca-4f5a-911e-8ebdc0336356@citrix.com>

--------------pSCJR0n4y5TfNY7mG0tR3YCh
Content-Type: multipart/mixed; boundary="------------XGp0bSL8egSA1qw0RVhD8Y84"

--------------XGp0bSL8egSA1qw0RVhD8Y84
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: base64

T24gMjAuMTAuMjMgMjA6MDMsIEFuZHJldyBDb29wZXIgd3JvdGU6DQo+IE9uIDE5LzEwLzIw
MjMgMTI6MjMgcG0sIEp1ZXJnZW4gR3Jvc3Mgd3JvdGU6DQo+PiBXaGVuIG1vdmluZyBhIGRv
bWFpbiBvdXQgb2YgYSBjcHVwb29sIHJ1bm5pbmcgd2l0aCB0aGUgY3JlZGl0Mg0KPj4gc2No
ZWR1bGVyIGFuZCBoYXZpbmcgbXVsdGlwbGUgcnVuLXF1ZXVlcywgdGhlIGZvbGxvd2luZyBB
U1NFUlQoKSBjYW4NCj4+IGJlIG9ic2VydmVkOg0KPj4NCj4+IChYRU4pIFhlbiBjYWxsIHRy
YWNlOg0KPj4gKFhFTikgICAgWzxmZmZmODJkMDQwMjNhNzAwPl0gUiBjcmVkaXQyLmMjY3Nj
aGVkMl91bml0X3JlbW92ZSsweGUzLzB4ZTcNCj4+IChYRU4pICAgIFs8ZmZmZjgyZDA0MDI0
NmFkYj5dIFMgc2NoZWRfbW92ZV9kb21haW4rMHgyZjMvMHg1YjENCj4+IChYRU4pICAgIFs8
ZmZmZjgyZDA0MDIzNGNmNz5dIFMgY3B1cG9vbC5jI2NwdXBvb2xfbW92ZV9kb21haW5fbG9j
a2VkKzB4MWQvMHgzYg0KPj4gKFhFTikgICAgWzxmZmZmODJkMDQwMjM2MDI1Pl0gUyBjcHVw
b29sX21vdmVfZG9tYWluKzB4MjQvMHgzNQ0KPj4gKFhFTikgICAgWzxmZmZmODJkMDQwMjA2
NTEzPl0gUyBkb21haW5fa2lsbCsweGE1LzB4MTE2DQo+PiAoWEVOKSAgICBbPGZmZmY4MmQw
NDAyMzJiMTI+XSBTIGRvX2RvbWN0bCsweGU1Zi8weDE5NTENCj4+IChYRU4pICAgIFs8ZmZm
ZjgyZDA0MDIyNzZiYT5dIFMgdGltZXIuYyN0aW1lcl9sb2NrKzB4NjkvMHgxNDMNCj4+IChY
RU4pICAgIFs8ZmZmZjgyZDA0MDJkYzcxYj5dIFMgcHZfaHlwZXJjYWxsKzB4NDRlLzB4NGE5
DQo+PiAoWEVOKSAgICBbPGZmZmY4MmQwNDAyMDEyYjc+XSBTIGxzdGFyX2VudGVyKzB4MTM3
LzB4MTQwDQo+PiAoWEVOKQ0KPj4gKFhFTikNCj4+IChYRU4pICoqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioNCj4+IChYRU4pIFBhbmljIG9uIENQVSAxOg0KPj4g
KFhFTikgQXNzZXJ0aW9uICdzdmMtPnJxZCA9PSBjMnJxZChzY2hlZF91bml0X21hc3Rlcih1
bml0KSknIGZhaWxlZCBhdCBjb21tb24vc2NoZWQvY3JlZGl0Mi5jOjExNTkNCj4+IChYRU4p
ICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioNCj4+DQo+PiBUaGlz
IGlzIGhhcHBlbmluZyBhcyBzY2hlZF9tb3ZlX2RvbWFpbigpIGlzIHNldHRpbmcgYSBkaWZm
ZXJlbnQgY3B1DQo+PiBmb3IgYSBzY2hlZHVsaW5nIHVuaXQgd2l0aG91dCB0ZWxsaW5nIHRo
ZSBzY2hlZHVsZXIuIFdoZW4gdGhpcyB1bml0IGlzDQo+PiByZW1vdmVkIGZyb20gdGhlIHNj
aGVkdWxlciwgdGhlIEFTU0VSVCgpIHdpbGwgdHJpZ2dlci4NCj4+DQo+PiBJbiBub24tZGVi
dWcgYnVpbGRzIHRoZSByZXN1bHQgaXMgdXN1YWxseSBhIGNsb2JiZXJlZCBwb2ludGVyLCBs
ZWFkaW5nDQo+PiB0byBhbm90aGVyIGNyYXNoIGEgc2hvcnQgdGltZSBsYXRlci4NCj4+DQo+
PiBGaXggdGhhdCBieSBzd2FwcGluZyB0aGUgdHdvIGludm9sdmVkIGFjdGlvbnMgKHNldHRp
bmcgYW5vdGhlciBjcHUgYW5kDQo+PiByZW1vdmluZyB0aGUgdW5pdCBmcm9tIHRoZSBzY2hl
ZHVsZXIpLg0KPj4NCj4+IENjOiBIZW5yeSBXYW5nIDxIZW5yeS5XYW5nQGFybS5jb20+DQo+
PiBGaXhlczogNzBmYWRjNDE2MzViICgieGVuL2NwdXBvb2w6IHN1cHBvcnQgbW92aW5nIGRv
bWFpbiBiZXR3ZWVuIGNwdXBvb2xzIHdpdGggZGlmZmVyZW50IGdyYW51bGFyaXR5IikNCj4g
DQo+IExpbms6IGh0dHBzOi8vZ2l0aHViLmNvbS9EYXNoYXJvL2Rhc2hhcm8taXNzdWVzL2lz
c3Vlcy80ODgNCj4gDQo+IEFuZCBhIFJlcG9ydGVkL1Rlc3RlZC1ieSBpZiB0aGUgZGlzY292
ZXJlciB3aXNoZXMuDQo+IA0KPj4gU2lnbmVkLW9mZi1ieTogSnVlcmdlbiBHcm9zcyA8amdy
b3NzQHN1c2UuY29tPg0KPj4gLS0tDQo+PiBUaGlzIGZpeGVzIGEgcmVncmVzc2lvbiBpbnRy
b2R1Y2VkIGluIFhlbiA0LjE1LiBUaGUgZml4IGlzIHZlcnkgc2ltcGxlDQo+PiBhbmQgaXQg
d2lsbCBhZmZlY3Qgb25seSBjb25maWd1cmF0aW9ucyB3aXRoIG11bHRpcGxlIGNwdXBvb2xz
LiBJIHRoaW5rDQo+PiB3aGV0aGVyIHRvIGluY2x1ZGUgaXQgaW4gNC4xOCBzaG91bGQgYmUg
ZGVjaWRlZCBieSB0aGUgcmVsZWFzZSBtYW5hZ2VyDQo+PiBiYXNlZCBvbiB0aGUgY3VycmVu
dCBzdGF0ZSBvZiB0aGUgcmVsZWFzZSAoSSB0aGluayBJIHdvdWxkbid0IGhhdmUNCj4+IGFk
ZGVkIGl0IHRoYXQgbGF0ZSBpbiB0aGUgcmVsZWFzZSB3aGlsZSBiZWluZyB0aGUgcmVsZWFz
ZSBtYW5hZ2VyKS4NCj4+IC0tLQ0KPj4gICB4ZW4vY29tbW9uL3NjaGVkL2NvcmUuYyB8IDcg
KysrKy0tLQ0KPj4gICAxIGZpbGUgY2hhbmdlZCwgNCBpbnNlcnRpb25zKCspLCAzIGRlbGV0
aW9ucygtKQ0KPj4NCj4+IGRpZmYgLS1naXQgYS94ZW4vY29tbW9uL3NjaGVkL2NvcmUuYyBi
L3hlbi9jb21tb24vc2NoZWQvY29yZS5jDQo+PiBpbmRleCAxMmRlZWZhNzQ1Li5lOWY3NDg2
MTk3IDEwMDY0NA0KPj4gLS0tIGEveGVuL2NvbW1vbi9zY2hlZC9jb3JlLmMNCj4+ICsrKyBi
L3hlbi9jb21tb24vc2NoZWQvY29yZS5jDQo+PiBAQCAtNzM4LDEyICs3MzgsMTMgQEAgaW50
IHNjaGVkX21vdmVfZG9tYWluKHN0cnVjdCBkb21haW4gKmQsIHN0cnVjdCBjcHVwb29sICpj
KQ0KPj4gICAgICAgbmV3X3AgPSBjcHVtYXNrX2ZpcnN0KGQtPmNwdXBvb2wtPmNwdV92YWxp
ZCk7DQo+PiAgICAgICBmb3JfZWFjaF9zY2hlZF91bml0ICggZCwgdW5pdCApDQo+PiAgICAg
ICB7DQo+PiAtICAgICAgICBzcGlubG9ja190ICpsb2NrID0gdW5pdF9zY2hlZHVsZV9sb2Nr
X2lycSh1bml0KTsNCj4+ICsgICAgICAgIHNwaW5sb2NrX3QgKmxvY2s7DQo+PiArDQo+PiAr
ICAgICAgICBzY2hlZF9yZW1vdmVfdW5pdChvbGRfb3BzLCB1bml0KTsNCj4+ICAgDQo+PiAr
ICAgICAgICBsb2NrID0gdW5pdF9zY2hlZHVsZV9sb2NrX2lycSh1bml0KTsNCj4+ICAgICAg
ICAgICBzY2hlZF9zZXRfcmVzKHVuaXQsIGdldF9zY2hlZF9yZXMobmV3X3ApKTsNCj4+ICAg
ICAgICAgICBzcGluX3VubG9ja19pcnEobG9jayk7DQo+PiAtDQo+PiAtICAgICAgICBzY2hl
ZF9yZW1vdmVfdW5pdChvbGRfb3BzLCB1bml0KTsNCj4gDQo+IEknbSBoYXBweSB0byBzZWUg
dGhlIFQtYnksIGFuZCB0aGF0IHlvdSBrbm93IHdoYXQncyBnb2luZyBvbiBoZXJlLCBidXQg
SQ0KPiBkb24ndCB1bmRlcnN0YW5kIHRoZSBleHBsYW5hdGlvbi4NCj4gDQo+IFRoZSBjaGFu
Z2UgaGVyZSBpcyB0aGUgb3JkZXJpbmcgb2Ygc2NoZWRfcmVtb3ZlX3VuaXQoKSB3aXRoIHJl
c3BlY3QgdG8NCj4gdGhlIGxvY2svZ2V0JnNldC91bmxvY2sgYmxvY2suDQoNClllcy4NCg0K
PiByZW1vdmUgdW5pdCBpcyBtb2RlcmF0ZWx5IGNvbXBsaWNhdGVkLCBidXQgdGhlIGdldCZz
ZXQgaXMganVzdCBhbiBSQ1UNCj4gcG9pbnRlciBhc3NpZ25tZW50LsKgIEJ1dCBhcyB0aGUg
YXNzZXJ0aW9uIGZpcmVzIGluIHRoZSBsYXR0ZXIgYWN0aW9uLCBpdA0KPiBtdXN0IGJlIHRo
ZSBnZXQmc2V0IGNhdXNpbmcgcHJvYmxlbXMuDQoNClllcy4gQXMgSSB3cm90ZSwgaXQgaXMg
YmVjYXVzZSB0aGUgY3B1IGFzc2lnbm1lbnQgb2YgdGhlIHVuaXQgaXMgYmVpbmcNCmNoYW5n
ZWQgd2l0aG91dCB0ZWxsaW5nIHRoZSBzcGVjaWZpYyBzY2hlZHVsZXIgKGNyZWRpdDIpIGFi
b3V0IGl0Lg0KDQo+IEFuZCB0aGF0J3MgYmVjYXVzZSBuZXdfcCBpcyBhY3R1YWxseSBhIGNw
dSBudW1iZXIsIHdoaWNoIGhhcyB0aGUNCj4gY29uc2VxdWVuY2Ugb2YgY2F1c2luZyBDcmVk
aXQyJ3MgYzJycWQoKSB0byBtYXRlcmlhbGlzZSB0aGUgd3JvbmcNCj4gY3NjaGVkMl9ydW5x
dWV1ZV9kYXRhIHBvaW50ZXIsIGFuZCB0aGVuIHdlJ3JlIG9wZXJhdGluZyBvbiBzb21lb25l
DQo+IGVsc2UncyBkYXRhIHdpdGhvdXQgYSBzdWl0YWJsZSBsb2NrIGhlbGQuDQoNCkkgaGF2
ZW4ndCBsb29rZWQgaW50byB0aGUgZXhhY3QgZGV0YWlscyB3aGF0IHdlbnQgd3JvbmcgZnVy
dGhlciBkb3duIHRoZQ0Kcm9hZCwgYnV0IEkgdGhpbmsgaXQgaXMgbm90IG9ubHkgdGhlIG1p
c3NpbmcgbG9jaywgYnV0IHByb2JhYmx5IHRoZQ0KZmFjdCB0aGF0IGRlcGVuZGluZyBvbiB0
aGUgdXNlIGNhc2UgZGlmZmVyZW50IHJ1biBxdWV1ZXMgd2lsbCBiZSBhZGRyZXNzZWQNCmZv
ciB0aGUgc2FtZSB1bml0LCBjYXVzaW5nIGluY29uc2lzdGVuY2llcy4NCg0KPiBBbmQgaXQn
cyBvbmx5IGJ5IGx1Y2sgdGhhdCBub25lIG9mIHRoZSBvdGhlciBzY2hlZHVsZXJzIHRpZSBz
b21ldGhpbmcgdG8NCj4gcGVyLWNwdSBkYXRhIGxpa2UgdGhpcz8NCg0KSSBkaWRuJ3QgbG9v
ayBpbnRvIHRoZSBvdGhlciBzY2hlZHVsZXJzLg0KDQo+IE90aGVyIG9ic2VydmF0aW9ucy4N
Cj4gDQo+IEkgdGhpbmsgc2NoZWRfbW92ZV9kb21haW4oKSB3b3VsZCBiZSBlYXNpZXIgdG8g
Zm9sbG93IHdpdGgNCj4gcy9uZXdfcC9uZXdfY3B1LyAoYW5kIHNpbWlsYXIgZm9yIHVuaXRf
cCkgYXMgInAiIGlzIG5vdCBvYnZpb3VzbHkNCj4gcHJvY2Vzc29yIHVubGVzcyB5b3Ugbm90
aWNlIHRoZSBjcHVtYXNrX2ZpcnN0KCkgY2FsbHMuDQoNCk1heWJlLiBJIGRvbid0IGhhdmUg
dGhhdCBwcm9ibGVtLCBPVE9IIEkndmUgd3JpdHRlbiB0aGF0IGNvZGUuIDotRA0KDQo+IFdo
eSBkbyB3ZSBtb3ZlIGEgZG9tYWluIGJhY2sgdG8gY3B1cG9vbDAgb24gZG9tYWluIGRlc3Ry
b3k/wqAgVGhlcmUncw0KPiBub3RoaW5nIG1hZ2ljIGFib3V0IGNwdXBvb2wwIHRoYXQgSSdt
IGF3YXJlIG9mIGhlcmUuwqAgSXQgc2VlbXMgbGlrZQ0KPiB1bm5lY2Vzc2FyeSBjb21wbGV4
aXR5Lg0KDQpTZWUgY29tbWl0IGJhYzYzMzRiNTFkOS4NCg0KDQpKdWVyZ2VuDQo=
--------------XGp0bSL8egSA1qw0RVhD8Y84
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-----

--------------XGp0bSL8egSA1qw0RVhD8Y84--

--------------pSCJR0n4y5TfNY7mG0tR3YCh--

--------------meCs2tUTK5YoQ0zLlDsmTXrO
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/Ey8FAmU2Ez0FAwAAAAAACgkQsN6d1ii/Ey+X
AAf5AXaCnGJNI3CxlfWX9MreUPkNF/kaZU2+jdxvj7MyRZ4pshyO3YfgQV4/J2O1Hq/8M7pLJm7M
JpcejQtCBrG3WkTQbgfBPXgsfF21jK8rFnXrJx5P8KtKJE9kZY4XiYlxJNnjJJ6wSMpT4AFoZ9+r
6oDj0UTKLuVYaqaf9gV6xQ47NkOmbmiPE0krdFEhCM9cSBLT6y/YyWDScKXqMgRhi481JgxfPsnb
7xvf7+KldbRYnjkC7UXl+60ErKsfDkg5WSBKd+cyFOQd0MHQyGGviGVlt93WYAMJ4+4JqDYf3IFK
v9yO9HiTNqKYx9VZYt2eURLksgYpcjVa3x7p/JKpPg==
=TTYu
-----END PGP SIGNATURE-----

--------------meCs2tUTK5YoQ0zLlDsmTXrO--


From xen-devel-bounces@lists.xenproject.org Mon Oct 23 06:32:23 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 06:32:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.620980.966888 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quoUB-0003Ud-DZ; Mon, 23 Oct 2023 06:32:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 620980.966888; Mon, 23 Oct 2023 06: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 1quoUB-0003UW-AS; Mon, 23 Oct 2023 06:32:23 +0000
Received: by outflank-mailman (input) for mailman id 620980;
 Mon, 23 Oct 2023 06:32: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=OVTz=GF=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1quoU9-0003UJ-R1
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 06:32:21 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur04on2058.outbound.protection.outlook.com [40.107.7.58])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id ea1d5062-716d-11ee-9b0e-b553b5be7939;
 Mon, 23 Oct 2023 08:32:19 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS8PR04MB8852.eurprd04.prod.outlook.com (2603:10a6:20b:42f::14)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.11; Mon, 23 Oct
 2023 06:31:49 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6933.011; Mon, 23 Oct 2023
 06:31: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: ea1d5062-716d-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Os15VfVs2iA1i7q9Xwh2d+rWv1r01/lpw54cnxJtT/rM4/DG0kqTbTQvA7VNpu2Q6qCqj0b+CrRkMy2nBfwBVC9ClY0K+2WvXU4CTazZ1IalW3hrkf0GeLK/SREmNgMfwPvydklQHm46U4dFy988VRV1s2B87FZY4ohmMMJPofKGTev38O7nTVbkJkyiPqdZsa65DN2nyYvQPkJrfjkXyFR0UM1tCFNc7BnX40k6hyv3E/SHib28TJLlQeCc345prnoeKBW/zOTS3PUohaG7OxGItd+ltiq+6U70QuXfkR16QFd1ydXeGvB8QvjSKgmMZkOwLwXA+e/4xqsij9HvcA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-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/ITUx92bYGTk2BROQ8KItH10vIzvSEokoXlX1fSj9A=;
 b=d1HWVE4UlqR8MTyJ3B4BJdsR5BoT+SM8GAcYmE4x6fqz46zoUIPWCb5NoUdfZLa9/0BE4I/dxS68SPGd2xdEdzmtl6k8ubbnp/I5npa4cMyiwieUksQVGvFUA5UmoYBXlpE7HsPeaAM7SHdKP8QZunon1lLSi81RbJyGRqAZ2Bz4kgniCbFjO34j/DAlMfitGbJahL2vx5tVEIs3kv6L+NmLkswoO4M9JgaDkCrcdQq70ojkDVidYltpqfPC84SXU3B77BzL2HLGuFFiYOj6jXUMaZhd47uiQQc6nGeylGT22e5WOmYYtCeCPOWw8HAGsStWPEsHUxhkvwALGJehUQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=0/ITUx92bYGTk2BROQ8KItH10vIzvSEokoXlX1fSj9A=;
 b=ZvlP3s9cl0pHWi5I5NlkzXwdEm73Ta6GnSQmG/w/LjX6ht9QesJ/B0zxx7FFA1hvZlBYwYNxd83eCDHIu3kei2ZZQbrDoF6JNd+5g1E7ynjLdPqr90NQWTTv7UebdreI43jswf2kqJaI0I3ta8/CPMe1X6G8M9cdz40nJQMJCngWR5KY4HekTFMYGOIiGE7Ica3k0SIwxR1QpbDgm7qRwsZby0OZTit47RLnoUvAxpj9UDgIo3dlNqQnBQ9cYA0gG6lmZND8V6qGanErMqqZDGYpIdaJWC248nkEQS3g/0G5v3J8M1cbqXSOz+mAQ2V57z4pRdWZXA8jylwNBJbWtA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <36e6dd08-918c-9791-0dab-ca75d4b98d7e@suse.com>
Date: Mon, 23 Oct 2023 08:31:47 +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: Stefano Stabellini <stefano.stabellini@amd.com>
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 Simone Ballarin <simone.ballarin@bugseng.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
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>
 <725f5193-c8d3-1bc8-cd62-2a2b1b5ecc01@suse.com>
 <alpine.DEB.2.22.394.2310171709310.965337@ubuntu-linux-20-04-desktop>
 <ead797ed-84cc-fb70-5259-7e11211d049e@suse.com>
 <alpine.DEB.2.22.394.2310181739270.965337@ubuntu-linux-20-04-desktop>
 <e642bc2a-cefa-4ee4-6394-3c10102e8164@suse.com>
 <alpine.DEB.2.22.394.2310190915590.1945130@ubuntu-linux-20-04-desktop>
 <6374f0f4-d58f-83ca-6eb3-d5a9fcbac525@suse.com>
 <alpine.DEB.2.22.394.2310201622160.2356865@ubuntu-linux-20-04-desktop>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <alpine.DEB.2.22.394.2310201622160.2356865@ubuntu-linux-20-04-desktop>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0119.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:9d::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_|AS8PR04MB8852:EE_
X-MS-Office365-Filtering-Correlation-Id: 95317770-790c-40cf-b05b-08dbd391bcba
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	Zttuhv6rzENjCctDUAtJQVYfPK4QCFYcpnSU41atnO5R8zwQmiHUulMQaU/UfL9pBwmuGyT2rrP4k7lE9HQLnPio8ihD1Y5wEcuvcc9nzuzNWZgjH1Po5dCo/g/CEWaFmqKaPGueRzJob+RTspCnIckz8XhoaSSs63jhyUQCmZJWYksj5Dj+1DOP5wd2v22FpUaWnfWXZrZ2U8TrHi99IIETtYjhd8Lh7nsYFJVD3G0JeUx+sbvnWhTYBf8JBVCvJDIx9YPciwN3fHqyVjY7DhrozmTGFeYsphbbOrJ9XtQAGlPTDdBLHxWBrkn9lInxFttf5WDBxH+2zLZmTjfactS/P7z86NLe0v9FGlr3xZapM4iRrfAptcc+B9syIP/WLuMD0jkONN/oWOvTvlBQyEyLcU0zkey4oTHBgoQEZY7ISjn85K3x9TY0gPgVbvrkywb/gXCuo4n6z6fIJ+rDXdpXqw6HkyKI7iaFebUZSiGn9xRSXtiqAqe2LbgLOc+hgU2ojIbBQk+vkQQyNpnDUoNQtHcIiFzHaaPvOyy9uj5WVWBhd0Dr+5ojAQN92oIAVdPQHZBqPODtxnFj2gLST5uaBIzA5tovZL+R+yaxyb3bGsqFkXwU2OBR3kkmjG/GOwSpChDK9zdfpU48qAwJDg==
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)(39860400002)(366004)(346002)(376002)(230922051799003)(1800799009)(186009)(451199024)(64100799003)(31686004)(36756003)(66899024)(6916009)(316002)(66946007)(54906003)(66556008)(66476007)(31696002)(86362001)(38100700002)(53546011)(83380400001)(26005)(2616005)(6512007)(6506007)(8936002)(2906002)(478600001)(6486002)(41300700001)(5660300002)(7416002)(8676002)(4326008)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?K29qWXV4RjA3QnBSazFMR0tsSWhvV0tUaHlQU3V3Q2c1RExQdGFMZnFJeU5m?=
 =?utf-8?B?Njk4bHNONEFrSlZWbE5XOERiUWc1VkdGL1BKOERFbWxCcEZhV1dDZkduQUtT?=
 =?utf-8?B?OTZHK0YrK1h6RGk2QTNxS0llanVEOFFsdWhNVTFjeHZFVWZVN1o0TE0zVy9N?=
 =?utf-8?B?UEZCdlRWOG1GRk90SStFR2d4L2Z3a0duZ2JBOGpoM2NiNnZSZXczV3ZIWStx?=
 =?utf-8?B?Rm9BaVh5L2I4WXVvamwwS2hYVTVtV0N1dTFETzNMSnhwUDNoN0Q5a2ZRV0lp?=
 =?utf-8?B?SkpISG44NXprNWRSMkFzRGUxMEhCYmdIMnEvT0JVblA4ellJUE9veEFkdzdr?=
 =?utf-8?B?ZTBPQWRiRlZWRi94T2Y0QzFpQWs5SnlUdUs3LzYyS0Z0aFRLK1cvWURLNDZ2?=
 =?utf-8?B?dUNZS0NLaWJySVlIUVRkS28rai9MSzBOaHp4R3BzNXFrdkV0MUttS040cmRO?=
 =?utf-8?B?b2s3K2JJRnRRRThZOUNiSWdQd3RQTlNYVEtsWFg2L2ZSMFhnRUg3SHp5Y0NP?=
 =?utf-8?B?Yk5vTWdxNy9LVjhqN0hBdm0zUXRjREtpanVuKzFISTM0cjFEdTZJdUU4ZzlO?=
 =?utf-8?B?OEFxcWE5SWQwdi94MWRTMXMwakxvNGJmb2xGVGxzRDQwSGRJY0l1WlN1MDdV?=
 =?utf-8?B?YXFTSlFzeTl1MkNRQVVJNGNBNDVSakFDWUMxUkVmeUJMRWpnaXJ6NFRXVFEr?=
 =?utf-8?B?aENQV3N2V201ZjBNYU5iemJuMjVvLzVFZTNtMVFMbUJObW8vMEUyWWhtbWNN?=
 =?utf-8?B?QkFtdVhMUzZHS3RUWUV4SG4zc1RjdnN4TUcwSUsvaFNOQ055eUFYUXdLczVU?=
 =?utf-8?B?cWtqZFovR0dkczk4MTlNSTd5dkdETWRzdVFlNmJFZTVJalNwRCtRZGdjcnYw?=
 =?utf-8?B?Ni8vcTRIVEdZZ0tzVVE3cFFPT1IzQ0JJaW5Zc2xNNVJNMnBxbE1ZcEZqMFVY?=
 =?utf-8?B?M2R4OWdCZUNuQ3FUK1dPeXg4aE92dnA3ZkRvVEdtZUUwVDBWcDY3Uy9LWEdl?=
 =?utf-8?B?elo1Q3JwNUtaYWcrcE1ETE1rMEJ5YjFjSmhHODdUVFFWM3dmQUpoemcra2Zs?=
 =?utf-8?B?L3ozczJPV0N5T2lGaXI5MndIZGhybGdUWW43RWNxQTQ3QVlMcHR0Y3V6WU1B?=
 =?utf-8?B?NWlWQ0JNUktDa2hIYzNpcGMzWFZnWCtTbHJxU2wrRUtXeTlwdEtUOU56S1dY?=
 =?utf-8?B?YjdDRGQvZ2lxbUxDaFhtOGJHQmxzWjZid2ZiRmZnNjMwNTdjdWwwcVpQMVkx?=
 =?utf-8?B?R2lmZ2tDcXgrU29sZmhSQkx3UlU3Y3NIdytIMVNuWVU3aEdzb2tuV3o3aHlr?=
 =?utf-8?B?UkloU1FjdWhVRDJSMHhNMExwU1VLRTN0Mmc0OWxKQ0VIV09xaUljNmd2NWNW?=
 =?utf-8?B?eVJyektBNng3RFNMWTNualVIblNzOEd6RHUzTXZxYS9oSC8vWVk3eGpteEVl?=
 =?utf-8?B?T1MyaENsYzlZcGNiUEY3YjdrbGJ1M1ZMaXYxS2ZIaFNBbjc3STk0MlJRNmhU?=
 =?utf-8?B?RnhMdXdKY2U4V3Q3YmZBSDFxUXJOVnc3TDNKNzZHdXNZeGNqcDZDS3FXVDY0?=
 =?utf-8?B?cDBBTEJUOFk3bVRvL2tkYkI0MDFJTDI0bGYyaXRlNW12MEI4aFZEV0l0NUVI?=
 =?utf-8?B?QThOc21ucWNyTHFkMWJiSkNDQ0ZvQUxVUHE1RzgyOGFFTUlmTnVLUjNLYW1S?=
 =?utf-8?B?UVlYNjJBZjg4eHlHMzJ0eXUyWjdFL0wvYThMTkVZS1RPWUdMOUMrNVpxOXc1?=
 =?utf-8?B?cTlvanlCK2NqSTYrbUpOUEs2azZaU1NzQkZ2QllENm1wREJPM3JDQVg3TUx5?=
 =?utf-8?B?b2F3TnN1eDJYbEU3empaRzhBSU1OZGcxYTFITXo0SDQwWG4yRTFHSVVHSFJO?=
 =?utf-8?B?bjNlRVFZUXh1SjFWN1pkR04wQlQzVzc0UU9ibTNPSFQ3VFlUVUZSYVVNcXpV?=
 =?utf-8?B?ZFVkcndUM01reHo2TFFyUjFnSldCVnFSUDRwc1k4Rk01Z3I4NkRtcGRGVU5F?=
 =?utf-8?B?MDF0UkFteHBmS21NZzQrUjhMajVJbWVqcUc1YjMyak52cmJCeVFpN2FsUE5y?=
 =?utf-8?B?a1hIWVllY0pHQTU2NEV2K2J1SDR5K25HVnY2VTdTWXhVcmpJWmdiSDZGM3Zq?=
 =?utf-8?Q?aUXiI3R36ACwplNj7ScJa3QrR?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 95317770-790c-40cf-b05b-08dbd391bcba
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Oct 2023 06:31:49.4380
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: IA6dt9DCwemhckvluMXPet/S2Y5ugIBT21RN9ifpjoj+ee7GLs/gH5Kael4b5eNNktVbwKyIzOjLy70maML57A==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB8852

On 21.10.2023 01:26, Stefano Stabellini wrote:
> On Fri, 20 Oct 2023, Jan Beulich wrote:
>> On 19.10.2023 18:19, Stefano Stabellini wrote:
>>> On Thu, 19 Oct 2023, Jan Beulich wrote:
>>>> On 19.10.2023 02:44, Stefano Stabellini wrote:
>>>>> On Wed, 18 Oct 2023, Jan Beulich wrote:
>>>>>> On 18.10.2023 02:48, Stefano Stabellini wrote:
>>>>>>> On Mon, 16 Oct 2023, Jan Beulich wrote:
>>>>>>>> On 29.09.2023 00:24, Stefano Stabellini wrote:
>>>>>>>>> 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:
>>>>>>>>
>>>>>>>> ... "least resistance" won't gain us much, as hardly any guards don't
>>>>>>>> start with an underscore.
>>>>>>>>
>>>>>>>>> - 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__ ?
>>>>>>>>
>>>>>>>> There are no headers in xen/include/. For (e.g.) xen/include/xen/ we
>>>>>>>> may go with XEN_BLAH_H; whether ASM prefixes are needed I'm not sure;
>>>>>>>> we could go with just ARM_BLAH_H and X86_BLAH_H?
>>>>>>>>
>>>>>>>> The primary question though is (imo) how to deal with private headers,
>>>>>>>> such that the risk of name collisions is as small as possible.
>>>>>>>
>>>>>>> Looking at concrete examples under xen/include/xen:
>>>>>>> xen/include/xen/mm.h __XEN_MM_H__
>>>>>>> xen/include/xen/dm.h __XEN_DM_H__
>>>>>>> xen/include/xen/hypfs.h __XEN_HYPFS_H__
>>>>>>>
>>>>>>> So I think we should do for consistency:
>>>>>>> xen/include/xen/blah.h __XEN_BLAH_H__
>>>>>>>
>>>>>>> Even if we know the leading underscore are undesirable, in this case I
>>>>>>> would prefer consistency.
>>>>>>
>>>>>> I'm kind of okay with that. FTAOD - here and below you mean to make this
>>>>>> one explicit first exception from the "no new leading underscores" goal,
>>>>>> for newly added headers?
>>>>>
>>>>> Yes. The reason is for consistency with the existing header files.
>>>>>
>>>>>
>>>>>>> On the other hand looking at ARM examples:
>>>>>>> xen/arch/arm/include/asm/traps.h __ASM_ARM_TRAPS__
>>>>>>> xen/arch/arm/include/asm/time.h __ARM_TIME_H__
>>>>>>> xen/arch/arm/include/asm/sysregs.h __ASM_ARM_SYSREGS_H
>>>>>>> xen/arch/arm/include/asm/io.h _ASM_IO_H
>>>>>>>
>>>>>>> And also looking at x86 examples:
>>>>>>> xen/arch/x86/include/asm/paging.h _XEN_PAGING_H
>>>>>>> xen/arch/x86/include/asm/p2m.h _XEN_ASM_X86_P2M_H
>>>>>>> xen/arch/x86/include/asm/io.h _ASM_IO_H
>>>>>>>
>>>>>>> Thet are very inconsistent.
>>>>>>>
>>>>>>>
>>>>>>> So for ARM and X86 headers I think we are free to pick anything we want,
>>>>>>> including your suggested ARM_BLAH_H and X86_BLAH_H. Those are fine by
>>>>>>> me.
>>>>>>
>>>>>> To be honest, I'd prefer a global underlying pattern, i.e. if common
>>>>>> headers are "fine" to use leading underscores for guards, arch header
>>>>>> should, too.
>>>>>
>>>>> I am OK with that too. We could go with:
>>>>> __ASM_ARM_BLAH_H__
>>>>> __ASM_X86_BLAH_H__
>>>>>
>>>>> I used "ASM" to make it easier to differentiate with the private headers
>>>>> below. Also the version without "ASM" would work but it would only
>>>>> differ with the private headers in terms of leading underscores. I
>>>>> thought that also having "ASM" would help readability and help avoid
>>>>> confusion.
>>>>>
>>>>>
>>>>>>> For private headers such as:
>>>>>>> xen/arch/arm/vuart.h __ARCH_ARM_VUART_H__
>>>>>>> xen/arch/arm/decode.h __ARCH_ARM_DECODE_H_
>>>>>>> xen/arch/x86/mm/p2m.h __ARCH_MM_P2M_H__
>>>>>>> xen/arch/x86/hvm/viridian/private.h X86_HVM_VIRIDIAN_PRIVATE_H
>>>>>>>
>>>>>>> More similar but still inconsistent. I would go with ARCH_ARM_BLAH_H and
>>>>>>> ARCH_X86_BLAH_H for new headers.
>>>>>>
>>>>>> I'm afraid I don't like this, as deeper paths would lead to unwieldy
>>>>>> guard names. If we continue to use double-underscore prefixed names
>>>>>> in common and arch headers, why don't we demand no leading underscores
>>>>>> and no path-derived prefixes in private headers? That'll avoid any
>>>>>> collisions between the two groups.
>>>>>
>>>>> OK, so for private headers:
>>>>>
>>>>> ARM_BLAH_H
>>>>> X86_BLAH_H
>>>>>
>>>>> What that work for you?
>>>>
>>>> What are the ARM_ and X86_ prefixes supposed to indicate here? Or to ask
>>>> differently, how would you see e.g. common/decompress.h's guard named?
>>>
>>> I meant that:
>>>
>>> xen/arch/arm/blah.h would use ARM_BLAH_H
>>> xen/arch/x86/blah.h would use X86_BLAH_H
>>>
>>> You have a good question on something like xen/common/decompress.h and
>>> xen/common/event_channel.h.  What do you think about:
>>>
>>> COMMON_BLAH_H, so specifically COMMON_DECOMPRESS_H
>>>
>>> otherwise:
>>>
>>> XEN_BLAH_H, so specifically XEN_DECOMPRESS_H
>>>
>>> I prefer COMMON_BLAH_H but I think both versions are OK.
>>
>> IOW you disagree with my earlier "... and no path-derived prefixes",
>> and you prefer e.g. DRIVERS_PASSTHROUGH_VTD_DMAR_H as a consequence?
>> FTAOD my earlier suggestion was simply based on the observation that
>> the deeper the location of a header in the tree, the more unwieldy
>> its guard name would end up being if path prefixes were to be used.
> 
> I don't have a strong opinion on "path-derived prefixes". I prefer
> consistency and easy-to-figure-out guidelines over shortness.
> 
> The advantage of a path-derived prefix is that it is trivial to figure
> out at first glance. If we can come up with another system that is also
> easy then fine. Do you have a suggestion? If so, sorry I missed it.

Well, I kind of implicitly suggested "no path derived prefixes for private
headers", albeit realizing that there's a chance then of guards colliding.
I can't think of a good scheme which would fit all goals (no collisions,
uniformity, and not unduly long).

Jan


From xen-devel-bounces@lists.xenproject.org Mon Oct 23 06:34:30 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 06:34:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.620983.966897 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quoW9-0004Xo-Rt; Mon, 23 Oct 2023 06:34:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 620983.966897; Mon, 23 Oct 2023 06:34: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 1quoW9-0004Xh-PB; Mon, 23 Oct 2023 06:34:25 +0000
Received: by outflank-mailman (input) for mailman id 620983;
 Mon, 23 Oct 2023 06:34: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=OVTz=GF=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1quoW7-0004XZ-SX
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 06:34:23 +0000
Received: from EUR02-DB5-obe.outbound.protection.outlook.com
 (mail-db5eur02on2060a.outbound.protection.outlook.com
 [2a01:111:f400:fe12::60a])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 32be13c5-716e-11ee-9b0e-b553b5be7939;
 Mon, 23 Oct 2023 08:34:21 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM8PR04MB7843.eurprd04.prod.outlook.com (2603:10a6:20b:235::19)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.11; Mon, 23 Oct
 2023 06:34:19 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6933.011; Mon, 23 Oct 2023
 06:34: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: 32be13c5-716e-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Za04EurTx+enGMledJZWjIhIVk423XQhU7kmIXc4/MQDYk/PoWGBflm4FY6fMGFr1Zm+bIlJKUtMHKYuNfRMtwtuYdtDihucREbL7f8UMnl1GPFuad1oBLnsYhf0G684WSrDLOzq8BvmwBUs77Hdl4a2e83AxhGuInkleK+gnGcPzZXL4WCBQv8f0zx7H9BNYFcCvEOuXYfNdYj9AdQK9N3tXDKfh24U522qchIQuniXVu856THv2Mu7HviDwnVrKiN5ExJwgDQW9H7skUASYR2p+vRKzOHhwCwnlwZAduoMFPgO3OZynU7hUYs5XQCA8cDFDR2LNaMkOiwrU6gOCw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=Q1tFomd5FlTyvWlPsc9890A4p9Pm8Be/F/j2GShjuUQ=;
 b=ZDDZx7y2IcHnrjx9PiS17f3kNyl4Jate+bOpSRUbUs4WbI4XJmYXMfbAPhF9day4dWSO7IpAK/O/mhKuISybO4BJoI4Q/mhAIZLTFCpafqMumin2A1OLroIr4P8u6GKcMMJkN+H80y7TVSBsczcYG0B51+skuNhK78crQXZnuI85BecMq/9eoqU89xflGGIzcvlrWTwJQV0Jj85jFrg4coelziRgobY88HD9A9GTfwHRQAxWvPbksWPf9IfJ+b3J/KMBNwg6h70LF8OCmG2JiO+OwvGL8cOhKJwjfh+8EUp1ua8Tg8Mh4/cF+bBviEwNPpzXR5WO5rGKfAhPOCKNBg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=Q1tFomd5FlTyvWlPsc9890A4p9Pm8Be/F/j2GShjuUQ=;
 b=LA0x9sK6u4ji21cJPRIngNSWSmqN1LINnAN6y4sCLXUy0RDR1Ot5kcxsrIT126rcLAXoz+a/GEDgXR2sWEFnl/ruvFiCTR9WaN3ShVrgIzn1RoBZ9+ci+JZRgW2F7I265ybhXByWQoMNhymIGe7esjtwj/tbnDYyQPdBhbf3f49JsE/uvLEmwTrVJq9lnmQ524VbAla+kkg/hdQjKN2WF5Nt0DDOasvr+ZI40RGm6jTeozS1Qhg1ASKzKqRmgc0akegeWs9lUHCnWn1yKqqzudTVgi9IIGOm5QsxIQrT0kRbfzw5E/edsNmPgdaVbC2dMf1bZp6p8Aus6DOEyUMgnQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <7d7ebafa-9751-bd0a-c47a-1894d9edadf5@suse.com>
Date: Mon, 23 Oct 2023 08:34: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][for-4.19 v2] xen: Add SAF deviations for MISRA C:2012
 Rule 7.1
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.cooper3@citrix.com, roger.pau@citrix.com,
 Simone Ballarin <simone.ballarin@bugseng.com>,
 Doug Goldstein <cardoe@cardoe.com>, George Dunlap
 <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Wei Liu <wl@xen.org>, xen-devel@lists.xenproject.org
References: <a9c52c943380f2c35f0a6ccab8215c03e87c99dc.1697712857.git.nicola.vetrini@bugseng.com>
 <de2b666e-ca48-58d2-73eb-5adc797f818e@suse.com>
 <d879b8e4689e51131f081edcb3b2abe6@bugseng.com>
 <dd58e1cb-8f17-986d-f4f9-f39e998e05a0@suse.com>
 <5b1cd4fba12664f2ef49bcc2eb198e31@bugseng.com>
 <d83c024b-05a9-5298-9e43-e693675c2da5@suse.com>
 <6a90edf81f410db8069526228de75d7e@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <6a90edf81f410db8069526228de75d7e@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0135.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:97::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_|AM8PR04MB7843:EE_
X-MS-Office365-Filtering-Correlation-Id: acd7b999-3139-467e-59a1-08dbd39215cc
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	OzRbw7v+iYRJH+nCwEmM+d+T/I9nWupsnAbgYUnzIa/KO/9QaZ/XrMJLL92TbR0UEZ/q6U778LeNbz93ipZSk0ZuZCqkp5/fLmSrZqALREHtRFlPBw9THHH3P1IJ4CzloEjK5THkVykKL9obFv2kWLU4VWbvnsZgTNIFyUGtATdAiSXP3+KQG/BODWxQ6VkYzeHb/DtcQS2Lx2JY8CZVbkqAX8nMRiEzJieiqzujAuK8L5KdHF1FYyPRm6hqmUAd16qOFr8LkgMbieJfr4DtNOw+IU+FE2XyY7uT1K4jch8paKOVVE4VgdJ8GL8Q049gw5rHs4Zny+uUohEBtPtOPBsJFotLL+iflqhm9hc+q/n6frhwug+NCJbVze73tuFoZLZX3DGOliHRBqq0vCT+CkR3g1aHxLqcM0sHlrakQXVbUnxBOdR1l2A2XKvSJI8nxyzARldIF4QIwlqYKZGqSYPZZ9H7dTqvCWaN8MVX+JD+D4nA+/gRtG0UDEPG3bYuIQZzy/2Ar9RDwjKEHWvQxQ+VKvWK55UYgGzAW1ZYrTtTZp23ETEz66n9fKen6gsWmsZlrA20YYLNtPe+Ggc4lyvNdfRomm/J9GrGgcE6FbcNxa+OWvm2+yWkLfDKfdsRPmFnqBSbwt9CdVn26je9pQ==
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)(230922051799003)(64100799003)(1800799009)(451199024)(186009)(2906002)(38100700002)(316002)(6916009)(66946007)(66556008)(54906003)(66476007)(2616005)(478600001)(6506007)(6512007)(53546011)(6486002)(83380400001)(41300700001)(5660300002)(7416002)(36756003)(31696002)(86362001)(4326008)(8936002)(8676002)(26005)(31686004)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?Z05yUUFIWkJoejl4aUViNmZkZG5mTzZuVlQyM3o1TlY2Qk1BZC8xMytnMnZU?=
 =?utf-8?B?ejRIdVJLNWNod0NwaDNEaFhXa2tzL21NNHFUaUR1TDNYS21tYkFNV3pybU5R?=
 =?utf-8?B?bm5VT1pFTG9SdGV0bWVKbFpsOGNJT0gvdEJvTFNrRzlZSWZydnEvMnJITUlm?=
 =?utf-8?B?aW5nNkNvb1pETUFTT3lKa2d4SUJuNXlIWlRqT1BoanZmM1ZEMlVDUGkvSFk0?=
 =?utf-8?B?NStjUU1YQ051dDJlMXA1Y1RmK1Z3NTVsZnhldExoRzROQ1RmMWcra1ZVdDBk?=
 =?utf-8?B?NE1lTUQ2UUUyOHdYQng4YVZzQmUxanVwSnY4eUt5bllNOGhaWGJxbkh0bS9F?=
 =?utf-8?B?a3lGQXVxT0pLZ3R6Y0k0c3dXQzN2bXZHR3cwK2VPdmhEcFpPQVJJQW1laE1z?=
 =?utf-8?B?SEJFazFQWXBsdTh5elVIYm9nRnlvTThhVWVTS2xlQ3JLRjlObmk1cFM3L1hG?=
 =?utf-8?B?Ym0zdWxvY3JCMEJ3RjYxQVRBNGsxRzBuSXB0c2FET29uYi8vcEhiZmNuUGdY?=
 =?utf-8?B?aWM5ZWQyb3NpWmdqcFVBQjVHMkxXSlRTVE85QWhwVFZsUitWMVRDL1did2xt?=
 =?utf-8?B?OW1ZTEJsSXloemliYlBpa0NNMFhENml2NGhzSUZ4WG9FWUpzQTl4ZlZPYzVU?=
 =?utf-8?B?NU16Wm4xT1JwcnRlWWhGL0FuU2NjYXZiOHZ6ZFAxUlZwUEZtRUg1dSt4SWth?=
 =?utf-8?B?NXF6QThrYmExMUw4am5zVUJxYUJZZmhGSTJzbzVYY25aTkRhekowN05xSUN2?=
 =?utf-8?B?bnZqTmZKR3NnaW5zd1RPcklxbDU5cEVqNTJSQWRFb0o4S05qNWJ3bjB6aTM1?=
 =?utf-8?B?WVZldE5hTEFTbWtNWHBCY25qSkxPNjkvV2xjbEtyN3RlVU5haEJoaGZSSEYw?=
 =?utf-8?B?UTAvby92RDlveDg3WlExR1lUa3dKUFdhemNKaElRaVFDcU4yeUVQK1JPSU1z?=
 =?utf-8?B?b0g3SzNUU09DK293TlRWdnQ0cytiOU40QXBUM29nTDF4V09CM0k2bDJ3dEZw?=
 =?utf-8?B?dU5DdXVlc1FmckZTcERRNExqOHZpTCttdzhpNk1nbTJ0a3BTN0tDNVNkRlFL?=
 =?utf-8?B?c0xBTHVmTysxT2lrTDFyT0xXbnFGdHFXNWZJY0FtU3M1Yy9ONHArSmVBbGdj?=
 =?utf-8?B?cnh6ejRnRVA3U0JWa2FEVjA1Tm1SbTBISmZ6Y2xoTitITE5LTlRrMm9HQWNx?=
 =?utf-8?B?eUM0RVNZVHlHNmFkQjBNSUdLVEZ4aWQvb0FXUE5OZFUvSTVCRHFNbUh4VmRJ?=
 =?utf-8?B?dCtLbjlidFVVQ1d4NlN4ajNNb0lvd1kyczY3bk9hdVJTemlpOTZrZXdoT2pm?=
 =?utf-8?B?NFVMd0xBa1BYOEk0MmlRL2JGT0tMUVlpUHRpNldONTZxVEV6aUZzamI1UFhL?=
 =?utf-8?B?OGhaTGxua2hVMDU0clJuMHF0Mk9BSzNRZTdESmVrMnFjSG1DbGJ1eWdINjkr?=
 =?utf-8?B?MTNnUDNQVEpQY1NlSVl1TEZieFdOU2s5a2tqUlJKY2ZGM2o2eld2N2wvUjFH?=
 =?utf-8?B?anFwQjZlRnRicHFDL2QySmxrMWpCNEZIUjRYcXZlUWlzSVlVekFCeTBZY0p6?=
 =?utf-8?B?Q1RlNTNlTFQyaWdyeVRaWll2anBGVG8xaXZZRExCWHlNODVhV0hlWlk1SkJP?=
 =?utf-8?B?VFJxbmx5b1ZrUWtLcDNtZHhza2c0Uklva2p4TU9QSzVmc29tdEh4SkJHTHR2?=
 =?utf-8?B?djZGeTNzbFh6Tlh6U2JUeXdvL0FFNzlVY2NpVi9hSzhUR2s3MDdMWlpIR1BZ?=
 =?utf-8?B?ZVp6VExqTG5FR0R5QmU5L2FScnRja052YktCWmRCRzFJRmpLZ2hDOGhRemxi?=
 =?utf-8?B?WHdRVU5Nb3dBWVdtL2N5YWM2MTRFY0dEZ3FCdWxxVkptTWk2SzczMmVCNWJo?=
 =?utf-8?B?WXNPdlRzSHJXZ25zVExZTG4yMnkwUGNDRm5OUjRqZ1l4bHRURGcxMkpCbW90?=
 =?utf-8?B?RGxLSmJENFg2NE4xMVpuN25ZMCt6Rk4wN29iUHpLTDNpb09WOTRFSE9PRXFY?=
 =?utf-8?B?OUxQaG9FcjlLdGdsSlVvWURXTlA4VDNMQWpsVFhxOUhBRlZqSll6MDFnNE51?=
 =?utf-8?B?RzlsLzh0b01CT2JqK1VNb1EzOEZUcjAyQUJsLzFYT1E1a1d6dmF2NmZWK3BC?=
 =?utf-8?Q?KUF0uoYywsNnDOGo4y5RIysl5?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: acd7b999-3139-467e-59a1-08dbd39215cc
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Oct 2023 06:34:18.8550
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: Tavc0OczaOdaENuFXaKEOSGq6QtDle+YVtPFeRM/UHGAHrUi93CxjDsKahBkq1OYAr4kz0dj75Gg2Lkp8zJpoQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8PR04MB7843

On 20.10.2023 16:58, Nicola Vetrini wrote:
> On 20/10/2023 15:24, Jan Beulich wrote:
>> On 20.10.2023 12:33, Nicola Vetrini wrote:
>>> On 20/10/2023 08:38, Jan Beulich wrote:
>>>> On 19.10.2023 18:34, Nicola Vetrini wrote:
>>>>> On 19/10/2023 17:57, Jan Beulich wrote:
>>>>>> On 19.10.2023 13:04, Nicola Vetrini wrote:
>>>>>>> --- a/automation/eclair_analysis/ECLAIR/deviations.ecl
>>>>>>> +++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
>>>>>>> @@ -85,10 +85,10 @@ conform to the directive."
>>>>>>>  # Series 7.
>>>>>>>  #
>>>>>>>
>>>>>>> --doc_begin="Usage of the following constants is safe, since they
>>>>>>> are
>>>>>>> given as-is
>>>>>>> -in the inflate algorithm specification and there is therefore no
>>>>>>> risk
>>>>>>> of them
>>>>>>> -being interpreted as decimal constants."
>>>>>>> --config=MC3R1.R7.1,literals={safe,
>>>>>>> "^0(007|37|070|213|236|300|321|330|331|332|333|334|335|337|371)$"}
>>>>>>> +-doc_begin="Octal constants used as arguments to macro INSTR_ENC 
>>>>>>> or
>>>>>>> MASK_EXTR
>>>>>>> +can be used, because they appear as is in specifications, 
>>>>>>> manuals,
>>>>>>> and
>>>>>>> +algorithm descriptions."
>>>>>>> +-config=MC3R1.R7.1,reports+={safe,
>>>>>>> "any_area(any_loc(any_exp(macro(^(INSTR_ENC|MASK_EXTR)$))))"}
>>>>>>
>>>>>> INSTR_ENC() is a local macro in x86'es AMD SVM code. A macro of the
>>>>>> same
>>>>>> name could imo be introduced without issues in, say, Arm code. The
>>>>>> above
>>>>>> would then needlessly suppress findings there, aiui.
>>>>>>
>>>>>> MASK_EXTR() otoh is a global macro which ise used for various
>>>>>> purposes.
>>>>>> Excluding checking there is imo going too far, too.
>>>>>
>>>>> I should have thought about it; I can simply enforce the deviation 
>>>>> to
>>>>> additionally match
>>>>> only a specific file for each of the macros.
>>>>
>>>> That'll work for INSTR_ENC(), but not for MASK_EXTR().
>>>>
>>>
>>> Why? What I'm deviating is reports due to octal constants used in
>>> expressions
>>> that contain MASK_EXTR in their expansion if and only if these are
>>> located in the
>>> file svm.h.
>>> No extra octal constant will match all these constraints.
>>
>> New MASK_EXTR() uses can appear at any time, without necessarily
>> matching the justification.
>>
>> Jan
> 
> Sorry, but I don't understand what's your concern exactly. With the 
> improvements I proposed
> (hence a new patch revision) I see the following possible future 
> scenarios:
> 
> 1. an use of MASK_EXTR() in a file other than x86/hvm/svm/emulate.c 
> appears, with no
>     use of octal constants in the expansion. This won't be deviated;
> 2. an use of MASK_EXTR() in x86/hvm/svm/emulate.c appears, with no use 
> of octal
>     constants in the expansion. This won't be deviated;
> 3. an use of MASK_EXTR() in x86/hvm/svm/emulate.c appears, with octal
>     constants in the expansion. This will be deviated;

This is what I'm concerned of: How do you know up front whether such new
uses want deviating?

Jan

> 4. an use of any other macro with an octal constant in its expansion 
> won't be deviated,
>     unless the configuration is suitably edited.
> 
> Does this address your concern?



From xen-devel-bounces@lists.xenproject.org Mon Oct 23 07:23:22 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 07:23:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.620992.966938 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qupHQ-00047L-8t; Mon, 23 Oct 2023 07:23:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 620992.966938; Mon, 23 Oct 2023 07:23: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 1qupHQ-00046Q-4B; Mon, 23 Oct 2023 07:23:16 +0000
Received: by outflank-mailman (input) for mailman id 620992;
 Mon, 23 Oct 2023 07: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=iWHG=GF=bugseng.com=federico.serafini@srs-se1.protection.inumbo.net>)
 id 1qupHO-0003Or-Ia
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 07:23:14 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 06712156-7175-11ee-9b0e-b553b5be7939;
 Mon, 23 Oct 2023 09:23:13 +0200 (CEST)
Received: from Dell.homenet.telecomitalia.it
 (host-95-247-204-25.retail.telecomitalia.it [95.247.204.25])
 by support.bugseng.com (Postfix) with ESMTPSA id 5B78B4EE0744;
 Mon, 23 Oct 2023 09:23: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: 06712156-7175-11ee-9b0e-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 4/8] x86/smp: address a violation of MISRA C:2012 Rule 8.2
Date: Mon, 23 Oct 2023 09:22:59 +0200
Message-Id: <e36afb831557c91d4a61967293799e189c83b2dd.1698045505.git.federico.serafini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1698045505.git.federico.serafini@bugseng.com>
References: <cover.1698045505.git.federico.serafini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Add missing parameter name. No functional change.

Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
---
 xen/arch/x86/include/asm/smp.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/xen/arch/x86/include/asm/smp.h b/xen/arch/x86/include/asm/smp.h
index 41a3b6a0da..5c2de4920f 100644
--- a/xen/arch/x86/include/asm/smp.h
+++ b/xen/arch/x86/include/asm/smp.h
@@ -32,7 +32,7 @@ extern bool park_offline_cpus;
 
 void smp_send_nmi_allbutself(void);
 
-void send_IPI_mask(const cpumask_t *, int vector);
+void send_IPI_mask(const cpumask_t *mask, int vector);
 void send_IPI_self(int vector);
 
 extern void (*mtrr_hook) (void);
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Mon Oct 23 07:23:22 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 07:23:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.620996.966967 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qupHS-0004gt-84; Mon, 23 Oct 2023 07:23:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 620996.966967; Mon, 23 Oct 2023 07: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 1qupHS-0004eG-0m; Mon, 23 Oct 2023 07:23:18 +0000
Received: by outflank-mailman (input) for mailman id 620996;
 Mon, 23 Oct 2023 07: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=iWHG=GF=bugseng.com=federico.serafini@srs-se1.protection.inumbo.net>)
 id 1qupHQ-0003Om-NM
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 07:23:16 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 07517b3a-7175-11ee-98d5-6d05b1d4d9a1;
 Mon, 23 Oct 2023 09:23:14 +0200 (CEST)
Received: from Dell.homenet.telecomitalia.it
 (host-95-247-204-25.retail.telecomitalia.it [95.247.204.25])
 by support.bugseng.com (Postfix) with ESMTPSA id D42504EE074B;
 Mon, 23 Oct 2023 09:23: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: 07517b3a-7175-11ee-98d5-6d05b1d4d9a1
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 7/8] x86/platform_hypercall: address violations of MISRA C:2012 Rule 8.2
Date: Mon, 23 Oct 2023 09:23:02 +0200
Message-Id: <40839b7484878109b3096347dfc113bf177f210a.1698045505.git.federico.serafini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1698045505.git.federico.serafini@bugseng.com>
References: <cover.1698045505.git.federico.serafini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Add missing parameter names. No functional change.

Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
---
 xen/arch/x86/platform_hypercall.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/xen/arch/x86/platform_hypercall.c b/xen/arch/x86/platform_hypercall.c
index 9469de9045..c1ab552c57 100644
--- a/xen/arch/x86/platform_hypercall.c
+++ b/xen/arch/x86/platform_hypercall.c
@@ -46,9 +46,9 @@ struct resource_access {
     xenpf_resource_entry_t *entries;
 };
 
-long cf_check cpu_frequency_change_helper(void *);
-void check_resource_access(struct resource_access *);
-void cf_check resource_access(void *);
+long cf_check cpu_frequency_change_helper(void *data);
+void check_resource_access(struct resource_access *ra);
+void cf_check resource_access(void *info);
 
 #ifndef COMPAT
 typedef long ret_t;
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Mon Oct 23 07:23:22 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 07:23:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.620990.966913 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qupHO-0003Rc-Pd; Mon, 23 Oct 2023 07:23:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 620990.966913; Mon, 23 Oct 2023 07: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 1qupHO-0003Qu-KG; Mon, 23 Oct 2023 07:23:14 +0000
Received: by outflank-mailman (input) for mailman id 620990;
 Mon, 23 Oct 2023 07:23: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=iWHG=GF=bugseng.com=federico.serafini@srs-se1.protection.inumbo.net>)
 id 1qupHN-0003Om-N7
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 07:23:13 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 055ad1be-7175-11ee-98d5-6d05b1d4d9a1;
 Mon, 23 Oct 2023 09:23:12 +0200 (CEST)
Received: from Dell.homenet.telecomitalia.it
 (host-95-247-204-25.retail.telecomitalia.it [95.247.204.25])
 by support.bugseng.com (Postfix) with ESMTPSA id 52DBC4EE0740;
 Mon, 23 Oct 2023 09:23: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: 055ad1be-7175-11ee-98d5-6d05b1d4d9a1
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>,
	Paul Durrant <paul@xen.org>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	Wei Liu <wl@xen.org>
Subject: [XEN PATCH 0/8] x86: address some violations of MISRA C:2012 Rule 8.2
Date: Mon, 23 Oct 2023 09:22:55 +0200
Message-Id: <cover.1698045505.git.federico.serafini@bugseng.com>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

This patch series addresses some of the violations of Rule 8.2 adding the
missing parameter names.

Federico Serafini (8):
  x86/hvm: address violations of MISRA C:2012 Rule 8.2
  x86/mmconfig: address violations of MISRA C:2012 Rule 8.2
  x86/vpmu: address a violation of MISRA C:2012 Rule 8.2
  x86/smp: address a violation of MISRA C:2012 Rule 8.2
  x86/pci: address a violation of MISRA C:2012 Rule 8.2
  x86/physdev: address violations of MISRA C:2012 Rule 8.2
  x86/platform_hypercall: address violations of MISRA C:2012 Rule 8.2
  x86/sysctl: address a violation of MISRA C:2012 Rule 8.2

 xen/arch/x86/include/asm/pci.h    | 2 +-
 xen/arch/x86/include/asm/smp.h    | 2 +-
 xen/arch/x86/include/asm/vpmu.h   | 2 +-
 xen/arch/x86/physdev.c            | 6 +++---
 xen/arch/x86/platform_hypercall.c | 6 +++---
 xen/arch/x86/sysctl.c             | 2 +-
 xen/arch/x86/x86_64/mmconfig.h    | 4 ++--
 xen/drivers/passthrough/x86/hvm.c | 4 ++--
 8 files changed, 14 insertions(+), 14 deletions(-)

-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Mon Oct 23 07:23:22 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 07:23:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.620995.966956 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qupHR-0004OY-GZ; Mon, 23 Oct 2023 07:23:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 620995.966956; Mon, 23 Oct 2023 07:23: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 1qupHR-0004NU-6K; Mon, 23 Oct 2023 07:23:17 +0000
Received: by outflank-mailman (input) for mailman id 620995;
 Mon, 23 Oct 2023 07:23: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=iWHG=GF=bugseng.com=federico.serafini@srs-se1.protection.inumbo.net>)
 id 1qupHP-0003Om-N6
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 07:23:15 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 0709b123-7175-11ee-98d5-6d05b1d4d9a1;
 Mon, 23 Oct 2023 09:23:14 +0200 (CEST)
Received: from Dell.homenet.telecomitalia.it
 (host-95-247-204-25.retail.telecomitalia.it [95.247.204.25])
 by support.bugseng.com (Postfix) with ESMTPSA id 5737A4EE0749;
 Mon, 23 Oct 2023 09:23: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: 0709b123-7175-11ee-98d5-6d05b1d4d9a1
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 6/8] x86/physdev: address violations of MISRA C:2012 Rule 8.2
Date: Mon, 23 Oct 2023 09:23:01 +0200
Message-Id: <dee7168f9ce2c52c8db0c4d5d48394550592756f.1698045505.git.federico.serafini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1698045505.git.federico.serafini@bugseng.com>
References: <cover.1698045505.git.federico.serafini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Add missing parameter names. No functional change.

Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
---
 xen/arch/x86/physdev.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/xen/arch/x86/physdev.c b/xen/arch/x86/physdev.c
index 2f1d955a96..47c4da0af7 100644
--- a/xen/arch/x86/physdev.c
+++ b/xen/arch/x86/physdev.c
@@ -18,9 +18,9 @@
 #include <xsm/xsm.h>
 #include <asm/p2m.h>
 
-int physdev_map_pirq(domid_t, int type, int *index, int *pirq_p,
-                     struct msi_info *);
-int physdev_unmap_pirq(domid_t, int pirq);
+int physdev_map_pirq(domid_t domid, int type, int *index, int *pirq_p,
+                     struct msi_info *msi);
+int physdev_unmap_pirq(domid_t domid, int pirq);
 
 #include "x86_64/mmconfig.h"
 
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Mon Oct 23 07:23:22 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 07:23:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.620989.966907 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qupHO-0003PA-Fq; Mon, 23 Oct 2023 07:23:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 620989.966907; Mon, 23 Oct 2023 07: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 1qupHO-0003P3-Co; Mon, 23 Oct 2023 07:23:14 +0000
Received: by outflank-mailman (input) for mailman id 620989;
 Mon, 23 Oct 2023 07:23: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=iWHG=GF=bugseng.com=federico.serafini@srs-se1.protection.inumbo.net>)
 id 1qupHN-0003Om-Fd
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 07:23:13 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 058a706d-7175-11ee-98d5-6d05b1d4d9a1;
 Mon, 23 Oct 2023 09:23:12 +0200 (CEST)
Received: from Dell.homenet.telecomitalia.it
 (host-95-247-204-25.retail.telecomitalia.it [95.247.204.25])
 by support.bugseng.com (Postfix) with ESMTPSA id D53D74EE0745;
 Mon, 23 Oct 2023 09:23: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: 058a706d-7175-11ee-98d5-6d05b1d4d9a1
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>,
	Paul Durrant <paul@xen.org>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>
Subject: [XEN PATCH 1/8] x86/hvm: address violations of MISRA C:2012 Rule 8.2
Date: Mon, 23 Oct 2023 09:22:56 +0200
Message-Id: <4cfdc887fa3e384dd0d160755350270208c3693a.1698045505.git.federico.serafini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1698045505.git.federico.serafini@bugseng.com>
References: <cover.1698045505.git.federico.serafini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Add missing parameter names. No functional change.

Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
---
 xen/drivers/passthrough/x86/hvm.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/xen/drivers/passthrough/x86/hvm.c b/xen/drivers/passthrough/x86/hvm.c
index 8175ba629a..d3627e4af7 100644
--- a/xen/drivers/passthrough/x86/hvm.c
+++ b/xen/drivers/passthrough/x86/hvm.c
@@ -724,8 +724,8 @@ bool pt_pirq_cleanup_check(struct hvm_pirq_dpci *dpci)
 }
 
 int pt_pirq_iterate(struct domain *d,
-                    int (*cb)(struct domain *,
-                              struct hvm_pirq_dpci *, void *),
+                    int (*cb)(struct domain *d,
+                              struct hvm_pirq_dpci *pirq_dpci, void *arg),
                     void *arg)
 {
     int rc = 0;
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Mon Oct 23 07:23:22 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 07:23:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.620994.966949 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qupHR-0004Fo-0h; Mon, 23 Oct 2023 07:23:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 620994.966949; Mon, 23 Oct 2023 07:23: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 1qupHQ-0004CC-Oi; Mon, 23 Oct 2023 07:23:16 +0000
Received: by outflank-mailman (input) for mailman id 620994;
 Mon, 23 Oct 2023 07:23: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=iWHG=GF=bugseng.com=federico.serafini@srs-se1.protection.inumbo.net>)
 id 1qupHP-0003Or-If
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 07:23:15 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 06b8f9dc-7175-11ee-9b0e-b553b5be7939;
 Mon, 23 Oct 2023 09:23:13 +0200 (CEST)
Received: from Dell.homenet.telecomitalia.it
 (host-95-247-204-25.retail.telecomitalia.it [95.247.204.25])
 by support.bugseng.com (Postfix) with ESMTPSA id D8AB14EE0748;
 Mon, 23 Oct 2023 09:23: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: 06b8f9dc-7175-11ee-9b0e-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 5/8] x86/pci: address a violation of MISRA C:2012 Rule 8.2
Date: Mon, 23 Oct 2023 09:23:00 +0200
Message-Id: <19fce0e146462d713e3f7dfd816f87b35a94636b.1698045505.git.federico.serafini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1698045505.git.federico.serafini@bugseng.com>
References: <cover.1698045505.git.federico.serafini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Add missing parameter name. No functional change.

Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
---
 xen/arch/x86/include/asm/pci.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/xen/arch/x86/include/asm/pci.h b/xen/arch/x86/include/asm/pci.h
index f4a58c8acf..542e284f14 100644
--- a/xen/arch/x86/include/asm/pci.h
+++ b/xen/arch/x86/include/asm/pci.h
@@ -37,7 +37,7 @@ struct arch_pci_dev {
 int pci_conf_write_intercept(unsigned int seg, unsigned int bdf,
                              unsigned int reg, unsigned int size,
                              uint32_t *data);
-int pci_msi_conf_write_intercept(struct pci_dev *, unsigned int reg,
+int pci_msi_conf_write_intercept(struct pci_dev *pdev, unsigned int reg,
                                  unsigned int size, uint32_t *data);
 bool_t pci_mmcfg_decode(unsigned long mfn, unsigned int *seg,
                         unsigned int *bdf);
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Mon Oct 23 07:23:22 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 07:23:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.620993.966941 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qupHQ-0004AT-HL; Mon, 23 Oct 2023 07:23:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 620993.966941; Mon, 23 Oct 2023 07:23: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 1qupHQ-00048U-B6; Mon, 23 Oct 2023 07:23:16 +0000
Received: by outflank-mailman (input) for mailman id 620993;
 Mon, 23 Oct 2023 07:23: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=iWHG=GF=bugseng.com=federico.serafini@srs-se1.protection.inumbo.net>)
 id 1qupHO-0003Om-Ml
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 07:23:14 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 0625e0d2-7175-11ee-98d5-6d05b1d4d9a1;
 Mon, 23 Oct 2023 09:23:12 +0200 (CEST)
Received: from Dell.homenet.telecomitalia.it
 (host-95-247-204-25.retail.telecomitalia.it [95.247.204.25])
 by support.bugseng.com (Postfix) with ESMTPSA id D21454EE0746;
 Mon, 23 Oct 2023 09:23: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: 0625e0d2-7175-11ee-98d5-6d05b1d4d9a1
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/8] x86/vpmu: address a violation of MISRA C:2012 Rule 8.2
Date: Mon, 23 Oct 2023 09:22:58 +0200
Message-Id: <064278aecf69859c664784ba18a7189d885112c0.1698045505.git.federico.serafini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1698045505.git.federico.serafini@bugseng.com>
References: <cover.1698045505.git.federico.serafini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Add missing parameter name. No functional change.

Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
---
 xen/arch/x86/include/asm/vpmu.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/xen/arch/x86/include/asm/vpmu.h b/xen/arch/x86/include/asm/vpmu.h
index b165acc6c2..7858aec6ca 100644
--- a/xen/arch/x86/include/asm/vpmu.h
+++ b/xen/arch/x86/include/asm/vpmu.h
@@ -35,7 +35,7 @@ struct arch_vpmu_ops {
     void (*arch_vpmu_destroy)(struct vcpu *v);
     int (*arch_vpmu_save)(struct vcpu *v, bool_t to_guest);
     int (*arch_vpmu_load)(struct vcpu *v, bool_t from_guest);
-    void (*arch_vpmu_dump)(const struct vcpu *);
+    void (*arch_vpmu_dump)(const struct vcpu *v);
 
 #ifdef CONFIG_MEM_SHARING
     int (*allocate_context)(struct vcpu *v);
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Mon Oct 23 07:23:22 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 07:23:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.620997.966974 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qupHS-0004pf-Mj; Mon, 23 Oct 2023 07:23:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 620997.966974; Mon, 23 Oct 2023 07: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 1qupHS-0004lA-Bg; Mon, 23 Oct 2023 07:23:18 +0000
Received: by outflank-mailman (input) for mailman id 620997;
 Mon, 23 Oct 2023 07:23: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=iWHG=GF=bugseng.com=federico.serafini@srs-se1.protection.inumbo.net>)
 id 1qupHQ-0003Or-Ij
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 07:23:16 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 079c699c-7175-11ee-9b0e-b553b5be7939;
 Mon, 23 Oct 2023 09:23:14 +0200 (CEST)
Received: from Dell.homenet.telecomitalia.it
 (host-95-247-204-25.retail.telecomitalia.it [95.247.204.25])
 by support.bugseng.com (Postfix) with ESMTPSA id 524474EE0745;
 Mon, 23 Oct 2023 09:23: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: 079c699c-7175-11ee-9b0e-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 8/8] x86/sysctl: address a violation of MISRA C:2012 Rule 8.2
Date: Mon, 23 Oct 2023 09:23:03 +0200
Message-Id: <06004789b921a35632bd7126bf022e20c15052ef.1698045505.git.federico.serafini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1698045505.git.federico.serafini@bugseng.com>
References: <cover.1698045505.git.federico.serafini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Add missing parameter name. No functional change.

Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
---
 xen/arch/x86/sysctl.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/xen/arch/x86/sysctl.c b/xen/arch/x86/sysctl.c
index c107f40c62..1d40d82c5a 100644
--- a/xen/arch/x86/sysctl.c
+++ b/xen/arch/x86/sysctl.c
@@ -118,7 +118,7 @@ long arch_do_sysctl(
         unsigned int cpu = sysctl->u.cpu_hotplug.cpu;
         unsigned int op  = sysctl->u.cpu_hotplug.op;
         bool plug;
-        long (*fn)(void *);
+        long (*fn)(void *data);
         void *hcpu;
 
         switch ( op )
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Mon Oct 23 07:23:22 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 07:23:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.620991.966917 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qupHP-0003Vv-0h; Mon, 23 Oct 2023 07:23:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 620991.966917; Mon, 23 Oct 2023 07: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 1qupHO-0003Ut-SU; Mon, 23 Oct 2023 07:23:14 +0000
Received: by outflank-mailman (input) for mailman id 620991;
 Mon, 23 Oct 2023 07:23: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=iWHG=GF=bugseng.com=federico.serafini@srs-se1.protection.inumbo.net>)
 id 1qupHN-0003Or-T5
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 07:23:13 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 05d467fd-7175-11ee-9b0e-b553b5be7939;
 Mon, 23 Oct 2023 09:23:11 +0200 (CEST)
Received: from Dell.homenet.telecomitalia.it
 (host-95-247-204-25.retail.telecomitalia.it [95.247.204.25])
 by support.bugseng.com (Postfix) with ESMTPSA id 548504EE0747;
 Mon, 23 Oct 2023 09:23: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: 05d467fd-7175-11ee-9b0e-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/8] x86/mmconfig: address violations of MISRA C:2012 Rule 8.2
Date: Mon, 23 Oct 2023 09:22:57 +0200
Message-Id: <1ced29b83c361b390ed32e30155a603a81baab0a.1698045505.git.federico.serafini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1698045505.git.federico.serafini@bugseng.com>
References: <cover.1698045505.git.federico.serafini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Add missing parameter names. No functional change.

Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
---
 xen/arch/x86/x86_64/mmconfig.h | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/xen/arch/x86/x86_64/mmconfig.h b/xen/arch/x86/x86_64/mmconfig.h
index 2d49fc79a0..3da4b21e9b 100644
--- a/xen/arch/x86/x86_64/mmconfig.h
+++ b/xen/arch/x86/x86_64/mmconfig.h
@@ -70,5 +70,5 @@ int pci_mmcfg_reserved(uint64_t address, unsigned int segment,
                        unsigned int start_bus, unsigned int end_bus,
                        unsigned int flags);
 int pci_mmcfg_arch_init(void);
-int pci_mmcfg_arch_enable(unsigned int);
-void pci_mmcfg_arch_disable(unsigned int);
+int pci_mmcfg_arch_enable(unsigned int idx);
+void pci_mmcfg_arch_disable(unsigned int idx);
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Mon Oct 23 07:31:14 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 07:31:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621021.966997 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qupP3-0001Kv-FL; Mon, 23 Oct 2023 07:31:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621021.966997; Mon, 23 Oct 2023 07:31: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 1qupP3-0001Ko-CP; Mon, 23 Oct 2023 07:31:09 +0000
Received: by outflank-mailman (input) for mailman id 621021;
 Mon, 23 Oct 2023 07:31: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=gXaf=GF=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qupP1-0001Ki-AC
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 07:31:07 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 20a91b03-7176-11ee-98d5-6d05b1d4d9a1;
 Mon, 23 Oct 2023 09:31:06 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id 000844EE0740;
 Mon, 23 Oct 2023 09:31: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: 20a91b03-7176-11ee-98d5-6d05b1d4d9a1
MIME-Version: 1.0
Date: Mon, 23 Oct 2023 09:31:05 +0200
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: Julien Grall <julien@xen.org>
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, Simone Ballarin <simone.ballarin@bugseng.com>, Doug
 Goldstein <cardoe@cardoe.com>, George Dunlap <george.dunlap@citrix.com>, Wei
 Liu <wl@xen.org>
Subject: Re: [XEN PATCH][for-4.19 v3 1/8] xen/include: add macro LOWEST_BIT
In-Reply-To: <75deb3bc-1115-42eb-a629-defb09991074@xen.org>
References: <cover.1697815135.git.nicola.vetrini@bugseng.com>
 <546cf30aa43d6d0687a9a6c6d23b11128e5783e8.1697815135.git.nicola.vetrini@bugseng.com>
 <75deb3bc-1115-42eb-a629-defb09991074@xen.org>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <d090c8bd9aaeda74938a8f47d3ddd1a1@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/10/2023 19:03, Julien Grall wrote:
> Hi Nicola,
> 
> On 20/10/2023 16:28, Nicola Vetrini wrote:
>> diff --git a/xen/include/xen/macros.h b/xen/include/xen/macros.h
>> index d0caae7db298..49f3ebf848e9 100644
>> --- a/xen/include/xen/macros.h
>> +++ b/xen/include/xen/macros.h
>> @@ -8,8 +8,11 @@
>>   #define DIV_ROUND(n, d) (((n) + (d) / 2) / (d))
>>   #define DIV_ROUND_UP(n, d) (((n) + (d) - 1) / (d))
>>   -#define MASK_EXTR(v, m) (((v) & (m)) / ((m) & -(m)))
>> -#define MASK_INSR(v, m) (((v) * ((m) & -(m))) & (m))
>> +/* Returns the 2^ffs(x) or 0, where ffs(x) is the index of the lowest 
>> set bit */
>> +#define LOWEST_BIT(x) ((x) & -(x))
>> +
>> +#define MASK_EXTR(v, m) (((v) & (m)) / LOWEST_BIT(m))
>> +#define MASK_INSR(v, m) (((v) * LOWEST_BIT(m)) & (m))
>>     #define count_args_(dot, a1, a2, a3, a4, a5, a6, a7, a8, x, ...) x
>>   #define count_args(args...) \
>> diff --git a/xen/include/xen/types.h b/xen/include/xen/types.h
>> index aea259db1ef2..23cad71c8a47 100644
>> --- a/xen/include/xen/types.h
>> +++ b/xen/include/xen/types.h
> 
> I don't understand how the changes in this file are related to the
> commit. Did you intend to create a separate commit?
> 
> The rest LGTM.
> 

Oh, I made a mistake. This hunk should have been part of patch 7 as a 
cleanup.
I can resubmit with this removed, or it could be ignored altogether.

>> @@ -31,9 +31,9 @@ typedef __PTRDIFF_TYPE__ ptrdiff_t;
>>   #define NULL ((void*)0)
>>   #endif
>>   -#define INT8_MIN        (-127-1)
>> -#define INT16_MIN       (-32767-1)
>> -#define INT32_MIN       (-2147483647-1)
>> +#define INT8_MIN        (-127 - 1)
>> +#define INT16_MIN       (-32767 - 1)
>> +#define INT32_MIN       (-2147483647 - 1)
>>     #define INT8_MAX        (127)
>>   #define INT16_MAX       (32767)
>> @@ -43,10 +43,10 @@ typedef __PTRDIFF_TYPE__ ptrdiff_t;
>>   #define UINT16_MAX      (65535)
>>   #define UINT32_MAX      (4294967295U)
>>   -#define INT_MAX         ((int)(~0U>>1))
>> +#define INT_MAX         ((int)(~0U >> 1))
>>   #define INT_MIN         (-INT_MAX - 1)
>>   #define UINT_MAX        (~0U)
>> -#define LONG_MAX        ((long)(~0UL>>1))
>> +#define LONG_MAX        ((long)(~0UL >> 1))
>>   #define LONG_MIN        (-LONG_MAX - 1)
>>   #define ULONG_MAX       (~0UL)
>> 
> 
> Cheers,

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


From xen-devel-bounces@lists.xenproject.org Mon Oct 23 07:33:59 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 07:33:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621032.967008 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qupRk-0002Jj-Sf; Mon, 23 Oct 2023 07:33:56 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621032.967008; Mon, 23 Oct 2023 07: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 1qupRk-0002Jc-PO; Mon, 23 Oct 2023 07:33:56 +0000
Received: by outflank-mailman (input) for mailman id 621032;
 Mon, 23 Oct 2023 07:33: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=F7kl=GF=casper.srs.infradead.org=BATV+91fa634947ba19782c4e+7365+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qupRi-0002JW-U1
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 07:33:55 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 81def9b2-7176-11ee-9b0e-b553b5be7939;
 Mon, 23 Oct 2023 09:33:50 +0200 (CEST)
Received: from [2001:8b0:10b:5:538b:aaf9:4fe2:8340]
 (helo=u3832b3a9db3152.ant.amazon.com)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qupRK-00CTJI-Up; Mon, 23 Oct 2023 07:33: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: 81def9b2-7176-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=MIME-Version:Content-Type:References:
	In-Reply-To:Date:Cc:To:From:Subject:Message-ID:Sender:Reply-To:
	Content-Transfer-Encoding:Content-ID:Content-Description;
	bh=HKQ5JVMatgd8OuCRkCWTeEvf0MBUDfN7TzBIzlhyezc=; b=uJE6bVxwDB0+A9LshW0+DPz/zc
	E7n9HVigYzD53/s27BbmELQuwhbblzkZzLqY50g5W3cL7PbDlsaihpFGtVG4r4rneiMRJBt9KsWoi
	0MIhMGFpfsy9HAkZGrWR1UJOZ+uRhmC+zVwum6Q573Vm++R7RnmG0/3P+QlCuqE30GbBDsnAr0Bqz
	HnZaiQlvVVU2+nd5PmfPz4/ki/t3u3FhM93GSx23TLvu8Y2l2EQgyJyHTPosHGMWEedGlEyZcFkb2
	6PswEDe+7cwOdzF6IHQi6+YD6tQCzqkoWru7wcC5wvwXOiSiyJWZY/7MipweygFrrXg8iLunJGnfY
	R3J1fepQ==;
Message-ID: <3367eb2979e8591e8fa5748c88a0536cd2afb84e.camel@infradead.org>
Subject: Re: [PATCH v2 22/24] tests/avocado: switch to using xen-net-device
 for Xen guest tests
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>, Hanna Reitz <hreitz@redhat.com>, Stefano
 Stabellini <sstabellini@kernel.org>, Anthony Perard
 <anthony.perard@citrix.com>, Paul Durrant <paul@xen.org>,
 =?ISO-8859-1?Q?Marc-Andr=E9?= Lureau <marcandre.lureau@redhat.com>, Paolo
 Bonzini <pbonzini@redhat.com>, Richard Henderson
 <richard.henderson@linaro.org>, Eduardo Habkost <eduardo@habkost.net>,
 "Michael S. Tsirkin" <mst@redhat.com>, Marcel Apfelbaum
 <marcel.apfelbaum@gmail.com>, Jason Wang <jasowang@redhat.com>, Marcelo
 Tosatti <mtosatti@redhat.com>, Cleber Rosa <crosa@redhat.com>, Philippe
 =?ISO-8859-1?Q?Mathieu-Daud=E9?= <philmd@linaro.org>, Wainer dos Santos
 Moschetta <wainersm@redhat.com>,  Beraldo Leal <bleal@redhat.com>,
 qemu-block@nongnu.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org,
  Bernhard Beschow <shentey@gmail.com>, Joel Upham <jupham125@gmail.com>
Date: Mon, 23 Oct 2023 08:33:30 +0100
In-Reply-To: <20231019154020.99080-23-dwmw2@infradead.org>
References: <20231019154020.99080-1-dwmw2@infradead.org>
	 <20231019154020.99080-23-dwmw2@infradead.org>
Content-Type: multipart/signed; micalg="sha-256"; protocol="application/pkcs7-signature";
	boundary="=-L0zOQYgOfKD0CsgOo4aB"
User-Agent: Evolution 3.44.4-0ubuntu2 
MIME-Version: 1.0
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html


--=-L0zOQYgOfKD0CsgOo4aB
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: base64

T24gVGh1LCAyMDIzLTEwLTE5IGF0IDE2OjQwICswMTAwLCBEYXZpZCBXb29kaG91c2Ugd3JvdGU6
Cj4gRnJvbTogRGF2aWQgV29vZGhvdXNlIDxkd213QGFtYXpvbi5jby51az4KPiAKPiBGaXggdGhl
IGZpbGVuYW1lIGluIHRoZSBNQUlOVEFJTkVSUyBmaWxlIHRvby4KPiAKPiBTaWduZWQtb2ZmLWJ5
OiBEYXZpZCBXb29kaG91c2UgPGR3bXdAYW1hem9uLmNvLnVrPgo+IC0tLQo+IMKgTUFJTlRBSU5F
UlPCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB8IDIgKy0KPiDCoHRlc3Rz
L2F2b2NhZG8va3ZtX3hlbl9ndWVzdC5weSB8IDIgKy0KPiDCoDIgZmlsZXMgY2hhbmdlZCwgMiBp
bnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQo+IAo+IGRpZmYgLS1naXQgYS9NQUlOVEFJTkVS
UyBiL01BSU5UQUlORVJTCj4gaW5kZXggOWJkNGZlMzc4ZC4uZDc0MDQzZDhhOSAxMDA2NDQKPiAt
LS0gYS9NQUlOVEFJTkVSUwo+ICsrKyBiL01BSU5UQUlORVJTCj4gQEAgLTQ3Niw3ICs0NzYsNyBA
QCBTOiBTdXBwb3J0ZWQKPiDCoEY6IGluY2x1ZGUvc3lzZW11L2t2bV94ZW4uaAo+IMKgRjogdGFy
Z2V0L2kzODYva3ZtL3hlbioKPiDCoEY6IGh3L2kzODYva3ZtL3hlbioKPiAtRjogdGVzdHMvYXZv
Y2Fkby94ZW5fZ3Vlc3QucHkKPiArRjogdGVzdHMvYXZvY2Fkby9rdm1feGVuX2d1ZXN0LnB5Cj4g
wqAKPiDCoEd1ZXN0IENQVSBDb3JlcyAob3RoZXIgYWNjZWxlcmF0b3JzKQo+IMKgLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCj4gZGlmZiAtLWdpdCBhL3Rlc3RzL2F2b2NhZG8v
a3ZtX3hlbl9ndWVzdC5weSBiL3Rlc3RzL2F2b2NhZG8va3ZtX3hlbl9ndWVzdC5weQo+IGluZGV4
IDUzOTEyODMxMTMuLmYwOTgwMjhlZWIgMTAwNjQ0Cj4gLS0tIGEvdGVzdHMvYXZvY2Fkby9rdm1f
eGVuX2d1ZXN0LnB5Cj4gKysrIGIvdGVzdHMvYXZvY2Fkby9rdm1feGVuX2d1ZXN0LnB5Cj4gQEAg
LTYxLDcgKzYxLDcgQEAgZGVmIHJ1bl9hbmRfY2hlY2soc2VsZik6Cj4gwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgJy1hcHBlbmQnLCBzZWxmLmtlcm5l
bF9wYXJhbXMsCj4gwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqAgJy1kcml2ZScswqAgZiJmaWxlPXtzZWxmLnJvb3Rmc30saWY9bm9uZSxmb3JtYXQ9cmF3
LGlkPWRydjAiLAo+IMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg
wqDCoMKgICctZGV2aWNlJywgJ3hlbi1kaXNrLGRyaXZlPWRydjAsdmRldj14dmRhJywKPiAtwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICctZGV2aWNlJywg
J3ZpcnRpby1uZXQtcGNpLG5ldGRldj11bmV0JywKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICctZGV2aWNlJywgJ3hlbi1uZXQtZGV2aWNlLG5ldGRl
dj11bmV0JywKPiDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg
wqDCoCAnLW5ldGRldicsICd1c2VyLGlkPXVuZXQsaG9zdGZ3ZD06MTI3LjAuMC4xOjAtOjIyJykK
PiDCoAo+IMKgwqDCoMKgwqDCoMKgwqAgdHJ5OgoKQWN0dWFsbHkgSSdtIGdvaW5nIHRvIGRyb3Ag
dGhpcyBvbmUuIFRlc3RpbmcgUENJIElOVHggYW5kIE1TSSBkZWxpdmVyeQp0aHJvdWdoIGk4MjU5
LCBJL08gQVBJQyBhbmQgWGVuIFBJUlFzIGlzIGFjdHVhbGx5ICptdWNoKiBtb3JlCmVudGVydGFp
bmluZyB0aGFuIHRlc3RpbmcgdGhlIFhlbiBQViBkcml2ZXIgc3R1ZmYgd2hpY2ggaXMgZXhlcmNp
c2VkIGJ5Cnhlbi1ibG9jayBpbiB0aGVzZSB0ZXN0cyBhbnl3YXkuCgo=


--=-L0zOQYgOfKD0CsgOo4aB
Content-Type: application/pkcs7-signature; name="smime.p7s"
Content-Disposition: attachment; filename="smime.p7s"
Content-Transfer-Encoding: base64

MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgEFADCABgkqhkiG9w0BBwEAAKCCEkQw
ggYQMIID+KADAgECAhBNlCwQ1DvglAnFgS06KwZPMA0GCSqGSIb3DQEBDAUAMIGIMQswCQYDVQQG
EwJVUzETMBEGA1UECBMKTmV3IEplcnNleTEUMBIGA1UEBxMLSmVyc2V5IENpdHkxHjAcBgNVBAoT
FVRoZSBVU0VSVFJVU1QgTmV0d29yazEuMCwGA1UEAxMlVVNFUlRydXN0IFJTQSBDZXJ0aWZpY2F0
aW9uIEF1dGhvcml0eTAeFw0xODExMDIwMDAwMDBaFw0zMDEyMzEyMzU5NTlaMIGWMQswCQYDVQQG
EwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYD
VQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50
aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC
AQEAyjztlApB/975Rrno1jvm2pK/KxBOqhq8gr2+JhwpKirSzZxQgT9tlC7zl6hn1fXjSo5MqXUf
ItMltrMaXqcESJuK8dtK56NCSrq4iDKaKq9NxOXFmqXX2zN8HHGjQ2b2Xv0v1L5Nk1MQPKA19xeW
QcpGEGFUUd0kN+oHox+L9aV1rjfNiCj3bJk6kJaOPabPi2503nn/ITX5e8WfPnGw4VuZ79Khj1YB
rf24k5Ee1sLTHsLtpiK9OjG4iQRBdq6Z/TlVx/hGAez5h36bBJMxqdHLpdwIUkTqT8se3ed0PewD
ch/8kHPo5fZl5u1B0ecpq/sDN/5sCG52Ds+QU5O5EwIDAQABo4IBZDCCAWAwHwYDVR0jBBgwFoAU
U3m/WqorSs9UgOHYm8Cd8rIDZsswHQYDVR0OBBYEFAnA8vwL2pTbX/4r36iZQs/J4K0AMA4GA1Ud
DwEB/wQEAwIBhjASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEF
BQcDBDARBgNVHSAECjAIMAYGBFUdIAAwUAYDVR0fBEkwRzBFoEOgQYY/aHR0cDovL2NybC51c2Vy
dHJ1c3QuY29tL1VTRVJUcnVzdFJTQUNlcnRpZmljYXRpb25BdXRob3JpdHkuY3JsMHYGCCsGAQUF
BwEBBGowaDA/BggrBgEFBQcwAoYzaHR0cDovL2NydC51c2VydHJ1c3QuY29tL1VTRVJUcnVzdFJT
QUFkZFRydXN0Q0EuY3J0MCUGCCsGAQUFBzABhhlodHRwOi8vb2NzcC51c2VydHJ1c3QuY29tMA0G
CSqGSIb3DQEBDAUAA4ICAQBBRHUAqznCFfXejpVtMnFojADdF9d6HBA4kMjjsb0XMZHztuOCtKF+
xswhh2GqkW5JQrM8zVlU+A2VP72Ky2nlRA1GwmIPgou74TZ/XTarHG8zdMSgaDrkVYzz1g3nIVO9
IHk96VwsacIvBF8JfqIs+8aWH2PfSUrNxP6Ys7U0sZYx4rXD6+cqFq/ZW5BUfClN/rhk2ddQXyn7
kkmka2RQb9d90nmNHdgKrwfQ49mQ2hWQNDkJJIXwKjYA6VUR/fZUFeCUisdDe/0ABLTI+jheXUV1
eoYV7lNwNBKpeHdNuO6Aacb533JlfeUHxvBz9OfYWUiXu09sMAviM11Q0DuMZ5760CdO2VnpsXP4
KxaYIhvqPqUMWqRdWyn7crItNkZeroXaecG03i3mM7dkiPaCkgocBg0EBYsbZDZ8bsG3a08LwEsL
1Ygz3SBsyECa0waq4hOf/Z85F2w2ZpXfP+w8q4ifwO90SGZZV+HR/Jh6rEaVPDRF/CEGVqR1hiuQ
OZ1YL5ezMTX0ZSLwrymUE0pwi/KDaiYB15uswgeIAcA6JzPFf9pLkAFFWs1QNyN++niFhsM47qod
x/PL+5jR87myx5uYdBEQkkDc+lKB1Wct6ucXqm2EmsaQ0M95QjTmy+rDWjkDYdw3Ms6mSWE3Bn7i
5ZgtwCLXgAIe5W8mybM2JzCCBhQwggT8oAMCAQICEQDGvhmWZ0DEAx0oURL6O6l+MA0GCSqGSIb3
DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYD
VQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28g
UlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMB4XDTIyMDEwNzAw
MDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJARYTZHdtdzJAaW5mcmFkZWFkLm9y
ZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3GpC2bomUqk+91wLYBzDMcCj5C9m6
oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZHh7htyAkWYVoFsFPrwHounto8xTsy
SSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT9YgcBqKCo65pTFmOnR/VVbjJk4K2
xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNjP+qDrh0db7PAjO1D4d5ftfrsf+kd
RR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy2U+eITZ5LLE5s45mX2oPFknWqxBo
bQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3BgBEmfsYWlBXO8rVXfvPgLs32VdV
NZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/7auNVRmPB3v5SWEsH8xi4Bez2V9U
KxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmdlFYhAflWKQ03Ufiu8t3iBE3VJbc2
5oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9aelIl6vtbhMA+l0nfrsORMa4kobqQ5
C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMBAAGjggHMMIIByDAfBgNVHSMEGDAW
gBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeDMcimo0oz8o1R1Nver3ZVpSkwDgYD
VR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYwFAYIKwYBBQUHAwQGCCsGAQUFBwMC
MEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYBBQUHAgEWF2h0dHBzOi8vc2VjdGln
by5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9jcmwuc2VjdGlnby5jb20vU2VjdGln
b1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1haWxDQS5jcmwwgYoGCCsGAQUFBwEB
BH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdvLmNvbS9TZWN0aWdvUlNBQ2xpZW50
QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAjBggrBgEFBQcwAYYXaHR0cDovL29j
c3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5mcmFkZWFkLm9yZzANBgkqhkiG9w0B
AQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQvQ/fzPXmtR9t54rpmI2TfyvcKgOXp
qa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvIlSPrzIB4Z2wyIGQpaPLlYflrrVFK
v9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9ChWFfgSXvrWDZspnU3Gjw/rMHrGnql
Htlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0whpBtXdyDjzBtQTaZJ7zTT/vlehc/
tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9IzCCBhQwggT8oAMCAQICEQDGvhmW
Z0DEAx0oURL6O6l+MA0GCSqGSIb3DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3Jl
YXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0
ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJl
IEVtYWlsIENBMB4XDTIyMDEwNzAwMDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJ
ARYTZHdtdzJAaW5mcmFkZWFkLm9yZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3
GpC2bomUqk+91wLYBzDMcCj5C9m6oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZH
h7htyAkWYVoFsFPrwHounto8xTsySSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT
9YgcBqKCo65pTFmOnR/VVbjJk4K2xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNj
P+qDrh0db7PAjO1D4d5ftfrsf+kdRR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy
2U+eITZ5LLE5s45mX2oPFknWqxBobQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3
BgBEmfsYWlBXO8rVXfvPgLs32VdVNZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/
7auNVRmPB3v5SWEsH8xi4Bez2V9UKxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmd
lFYhAflWKQ03Ufiu8t3iBE3VJbc25oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9ae
lIl6vtbhMA+l0nfrsORMa4kobqQ5C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMB
AAGjggHMMIIByDAfBgNVHSMEGDAWgBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeD
Mcimo0oz8o1R1Nver3ZVpSkwDgYDVR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYw
FAYIKwYBBQUHAwQGCCsGAQUFBwMCMEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYB
BQUHAgEWF2h0dHBzOi8vc2VjdGlnby5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9j
cmwuc2VjdGlnby5jb20vU2VjdGlnb1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1h
aWxDQS5jcmwwgYoGCCsGAQUFBwEBBH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdv
LmNvbS9TZWN0aWdvUlNBQ2xpZW50QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAj
BggrBgEFBQcwAYYXaHR0cDovL29jc3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5m
cmFkZWFkLm9yZzANBgkqhkiG9w0BAQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQv
Q/fzPXmtR9t54rpmI2TfyvcKgOXpqa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvI
lSPrzIB4Z2wyIGQpaPLlYflrrVFKv9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9Ch
WFfgSXvrWDZspnU3Gjw/rMHrGnqlHtlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0w
hpBtXdyDjzBtQTaZJ7zTT/vlehc/tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9
IzGCBMcwggTDAgEBMIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVz
dGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMT
NVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEA
xr4ZlmdAxAMdKFES+jupfjANBglghkgBZQMEAgEFAKCCAeswGAYJKoZIhvcNAQkDMQsGCSqGSIb3
DQEHATAcBgkqhkiG9w0BCQUxDxcNMjMxMDIzMDczMzMwWjAvBgkqhkiG9w0BCQQxIgQgHcKTMl/L
uHv2gGb8gH52AMOF7ZMi1g+dLJikGXj3rXgwgb0GCSsGAQQBgjcQBDGBrzCBrDCBljELMAkGA1UE
BhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEYMBYG
A1UEChMPU2VjdGlnbyBMaW1pdGVkMT4wPAYDVQQDEzVTZWN0aWdvIFJTQSBDbGllbnQgQXV0aGVu
dGljYXRpb24gYW5kIFNlY3VyZSBFbWFpbCBDQQIRAMa+GZZnQMQDHShREvo7qX4wgb8GCyqGSIb3
DQEJEAILMYGvoIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVy
MRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNl
Y3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEAxr4Z
lmdAxAMdKFES+jupfjANBgkqhkiG9w0BAQEFAASCAgAcHvPVMEIU0BbQX2ILXNZLUctz1YpB1nzz
8vI6Z2HqD/nh00b3jkxHXtIT0+y+RVId/xcBJf9soywRy03BdikPxAmpJnV1ioKVP7jWXtThvsEX
Q6xZMjhUoi4DuivIDZ8rY+jezKrkj1AjDkTiX8/feeWRgnVWBlfQrC6NNtPqB+Pkyl3nRd/4MlsR
UjfZPgMUxAXmCwPlt9AFKA4JJpk08N4TRcG4erU61s6C/C4kgS2RyghKATlVuhDPFfCwVozH/RmL
YHpSoAhf2IYEl/t0aJSAc0Ec5s84gGukPrwWSFWC7JyR15g2tEsjfXD16lIH2uWMvjFVOxvAaVaW
pZzxx8jyoufibCyUSs+EhkP0B4JXZx10UaMi1NrpoguRAq6Z988eNPpb89rCUnc0+k5edGxjOY9/
Y4CsvqWumaxKXtZssTqr3xc9ODUub1rrAS5T917fyCKwFKVnnkImHBqhnRR03AAuiTXh32/GJG0e
PwSAFwSY+HEqqGsdQzOK5n+ZJLesgF0OtE+QcipXK0Mqlo5qUsZzoOFxtysbB2sUSbJ2wIuSgTUY
s0rJut68MvXwNonKvI/bpPgMAeEbmkrdqXIg9fZJGz8Pdggfgs9tSYZJ8xGJ82nJL+LcKyvTa776
YUjK3IV463s17gZ6kARaFAFCuoACz+brOBBhTrmpAwAAAAAAAA==


--=-L0zOQYgOfKD0CsgOo4aB--


From xen-devel-bounces@lists.xenproject.org Mon Oct 23 07:49:10 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 07:49:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621036.967018 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qupgN-0004Da-6J; Mon, 23 Oct 2023 07:49:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621036.967018; Mon, 23 Oct 2023 07:49: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 1qupgN-0004DT-2H; Mon, 23 Oct 2023 07:49:03 +0000
Received: by outflank-mailman (input) for mailman id 621036;
 Mon, 23 Oct 2023 07:49: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=OVTz=GF=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qupgL-0004DN-VT
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 07:49:02 +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 9f2157eb-7178-11ee-9b0e-b553b5be7939;
 Mon, 23 Oct 2023 09:48:57 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DU0PR04MB9249.eurprd04.prod.outlook.com (2603:10a6:10:350::20)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.23; Mon, 23 Oct
 2023 07:48:55 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6933.011; Mon, 23 Oct 2023
 07: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: 9f2157eb-7178-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Rn7u9yFD0PBViPyine2ZyX8jPkJkZSyUYxZudlwKlfGKFC0RI+Lx9QFW3hfmYTn3qANa4rT11Ea3NXi8qXqDNyKOVWcdc/zBe3QeQEMBVahkifMqqgfb3Fp5qXry+t9hECodYHOUq07U3KzwE3oeZmDNlw622p0/o6R6qIFIOQQ7ASVGiFouqsnrZNU0yXwlLqlzonirVvUudgpDLgOw6Pt1b5K/aMIhjZ8wm3pbye+H0A9UPSPGsaRhnpFG3U2KZYwf1raXGH8q1ZOgBpsyKdH3ct5W0wFg22VeYsmQdeG3tlAwP6Pi74GU7Hzpu8QJeAa2sSHvH35rDVRhPekNfw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=5+zaxI8ygfM09GnjNGWGx8e/iL1POZBNLYJmwX2j5aA=;
 b=NPcYalWrRCvc0K8fGX0WLyCWoiC0JZsByTcV5Ntl/rmswP7B55icyixyPcFT/VMR8+qL+c5Er4HXhZKWrwRfb1DPcNl2Z9XcXVPR1GJsDgy9uQvdISKqd5BzyOdyPiGspqY4LDENE92wDY68pHYfS1IeSxBhWzXfPYjtCj2lXBGvYqcu2Ft/ol+drUgivhosG4ZGFE58PH/P203aLroMwMNIwJrIAJ1hhGsnG2fVyH0juA5oheCHaiNT8EUOj29FcrLSr8PUXUHYy214IOJEVwnyzntE6DlqHRq0nwe8hnIb5rFqezvlmO7jwmrTKMMA/zouDvEsaH9UmOPDnpLfPw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=5+zaxI8ygfM09GnjNGWGx8e/iL1POZBNLYJmwX2j5aA=;
 b=d0Qrr+sEOFSBpgx2lPmmO5MguQ1MblXrvKIzNfndSd2XfCt54tOOtv28BaiPdZ3ms2KmuWcgJO4gnN7j3IYqLt3MuDx5JgzurHXxXdqjYxtg3FrxRRcKh0Sd6CI3bMeGlaL6gpJh7pnvbg4oBiGvDafsnnxcO1qz64Hy4uHlUP9D3PWrSYD+FQYxQUY4rON6xtSxyxPmTNU4gKjcPWtd+L6QtSTmBa309lRXJ72pYhEPKD9QxrGIUrjuYcbPAAvlu387OKI3+oRrC4hnpMN4VBXgl2ksZfy6pjFP6qWNww3aMs4v6YhCHWAm1zhtkB8Ai1Xi8WbOuBL1yVbGxhKSLA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <f504772a-68b4-fbfa-e7d4-8d22992c7944@suse.com>
Date: Mon, 23 Oct 2023 09:48:53 +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][for-4.19 v3 1/8] xen/include: add macro LOWEST_BIT
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.cooper3@citrix.com, roger.pau@citrix.com,
 Simone Ballarin <simone.ballarin@bugseng.com>,
 Doug Goldstein <cardoe@cardoe.com>, George Dunlap
 <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Wei Liu <wl@xen.org>, xen-devel@lists.xenproject.org
References: <cover.1697815135.git.nicola.vetrini@bugseng.com>
 <546cf30aa43d6d0687a9a6c6d23b11128e5783e8.1697815135.git.nicola.vetrini@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <546cf30aa43d6d0687a9a6c6d23b11128e5783e8.1697815135.git.nicola.vetrini@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR3P281CA0162.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:a2::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_|DU0PR04MB9249:EE_
X-MS-Office365-Filtering-Correlation-Id: 00b67351-d931-4354-bba9-08dbd39c820a
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	ZLdcYliy/PwsQ78tJfpLxbWhE1f0MHWzvkYrH57CG7Um1F4z6GCLv23/8+VREnjWGtFdWmZtDxK1JX63u74LBGBeV6GbyZzWSeryvjYpNlAxEuqcLY7xPm5HfBBoSiWmmwtXlh1Ml4s6HdXmewyNj0x1u0XaS+cQvoJFMR/ze/ol7AUsmAY/32BbBXj5lw3mirkYM631GNMT+7czt20RE/oD/fb0WIUbPdkmMmpq7YoLF2ul/DqGfiC4CaAAZhJQGvlhHXj8UiGVhs6LGJG6RXf9HWdbj4GzU40sr081Z31MUdqNyoxsI73L9n07HZOArYCu0P966L7cMuRD3kVWytjY7GupQuZq83d0uQjqPQtv8VYLODXuNtQe5ABVdCgJhR50K0wj9duWbPXPmsZlqHEbZGMRwYnrqslFCo+DRGJWFP2X0MHa5E9TVKATb8IeVMBwgqceaoqzrMtuRYQXqHcbnMSRsnN4mQ4RTHrvbFiGbfomWGMPxAaI9Mgbh4au07QbDd/TaUe6+p/IYMIegDAad6jh6tfy6OrYC73EGASKFuUMcdJRaldRT0gDvP5I8iBKPweWiXI5lB2CSeHzWErkCOOxwyQHVVxhQpRllCEZK5uXhr4tWe4/mJ1vn8BQWcsBphvMrgbzfGEUY1ufiA==
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)(376002)(346002)(396003)(230922051799003)(64100799003)(186009)(1800799009)(451199024)(478600001)(6486002)(26005)(6506007)(53546011)(2616005)(6512007)(38100700002)(54906003)(66556008)(66476007)(66946007)(6916009)(41300700001)(316002)(31686004)(2906002)(7416002)(31696002)(5660300002)(8936002)(4326008)(36756003)(86362001)(8676002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?VnJWL3NEQWtac2JiSlF5WHlXb0dvWFhKSzBvN080b1Y0WHN4dVlOLzBVYmpk?=
 =?utf-8?B?YTF2UXRmRVhjQkhBeEVOUzBDTUFucTExc0VCeDZqOXRib2h6MjRIcGZBUDhw?=
 =?utf-8?B?Rkg4bU5wQzBHZFNLQzBwL1hwTzJIcjFUMTg1aWtVRkd6N09XQzdraGVVVlhY?=
 =?utf-8?B?cmhEQ1htSWdKZVhlVFpwSHhlblkrdFRmWk5NUFdKM2FacXM2QndQWWRseTZi?=
 =?utf-8?B?eEJicXE3VkcyU0VsdjdqbURiRWwyRHpsdFZaSWpkUG9pcG5IZFJtRjI4N3k1?=
 =?utf-8?B?OERBaWtQTUNaRHpJcUpmTmZ4d0lPN2VzenM5bHJsV1g2Y1RHNk9Za1N4cjBE?=
 =?utf-8?B?cDExd3RnTkkxOHkrSWR2TWpRdVZkNW0vSHdFTUl5T01yMTAvRkR6SEpYODh3?=
 =?utf-8?B?SXdQN2N4Zlk5dWxOOTVHcEttamVtUnlUZ29PayttNXlzYmZzWHo2Mm15RktQ?=
 =?utf-8?B?NWFRTnYxSlpKY2ZvTytscXA5dXdueWxiTGFaeUN5WXRQSlh3VDhncEhCNnBt?=
 =?utf-8?B?Yi93QlhOOEt5cFZtR2RVdXVVcllPZUpIV2dPKzNqNTRQS0REUzhDMHZNL2hV?=
 =?utf-8?B?aCtURXpESmxuSTVUT3Y2U0w2RGhUMHE2T1VrQzd3dnBBYVFNbXVvWTB2SFZr?=
 =?utf-8?B?TmZyV0tzZ2VpQ21HcG1lMTZndkpOVlRXNi9GNDdBYUN5Z1JCV1FhVUtTaDRQ?=
 =?utf-8?B?R0NuMUdDUEEvRmhiRkFzVGtvQi9hTStteXZPNnVBMWNpbExUTmFoWDMrQVVh?=
 =?utf-8?B?M2FUdHdKY0NvMmphRWVaNzdCTGVGRmJmRS9UeXUrN280TFBnU0FhSWJlZUVo?=
 =?utf-8?B?aGs3QWxTbkpJK2FoYk1LdVlFVXcwTC8yTjE1RmNaMlRJT0lXeTJxY3gwbjJu?=
 =?utf-8?B?YlREc0tMQ0QvUGJ3TGpUNTdKaS9CYVlTTmxLRnJoeHJGQ2F1V2M2eTR3aE1P?=
 =?utf-8?B?cnkxZVBhQWFseG5vNDZXR2VIWDJTY0JBVE0wclFLbzR6N3pKRlQwV1h5WFRl?=
 =?utf-8?B?Z0NIM3ZDelp2b2FzNlJ6ZTkrcFNad2JlSHEySlExY0lEeFYyWjU3MmR5c25G?=
 =?utf-8?B?V3pxaWtxNWNMbEV6bkp4bHhGc04rMkpPeGlYSkMzWEtNVDRmNCtlL29HanRV?=
 =?utf-8?B?dkhrclYvcUttR3QxMFo2V1VaR2c0a2F3TG0yT0dOOVF0eTRZbGVSRWRFUjZy?=
 =?utf-8?B?UFU1RWxOcmZaUjhiRFJqYkJweEQzUUYzaVp0ZVZnalg0WWJPYUFiN1pjQldK?=
 =?utf-8?B?YWl6WXNBemFlemlZMWJzN3dabFlZNnY0cllYRkY5M2JsVkxYOWIwQ0tXWlZx?=
 =?utf-8?B?Rkp3eU1OanF6T085bytKZ0VaL0FzRzhWQy91UE9vai8vTFFRQkhvOFo0NXpO?=
 =?utf-8?B?cnh1SWgvdy9BdEs1THE5aGZlcmt3NmhSWEF1cnZBanoweFRNaVNXbGxoRDV2?=
 =?utf-8?B?eFRnQjE3Z3JTMkpUdkxQOE1BTTlYTzM0dzA0ckE3K1djUktTT1Era0twdEFM?=
 =?utf-8?B?MStzODA1cEg4bjFWMVNidzNhOXE2TXkzN0t0L01jUWxqRU5hZFc3T1BtL09v?=
 =?utf-8?B?TTRFYzNFUFNCbG5vTkd6MjNjdjNQd2RlNFpvSXRWL3AxbnBqWnVFeW15bWdx?=
 =?utf-8?B?VXBVMXNjanZ5eGQwaFZ2VUVmNGJ4NHJRQkk4OVEzeENPQ0gxNHE4SHZqV2ZL?=
 =?utf-8?B?aDNUei9PdUVjYjJkcXJENFdKS0lwMVNVL1BEdENTL0cyZkxJQWlrZzNWYUxS?=
 =?utf-8?B?QXBZS09YclNiQ0FwWmx6bGZSUU9ua2djZmgzTDUrS2kvVFljdzJ4YVRTcHZ3?=
 =?utf-8?B?MWNrNXVvNWEvTzJsVFJEWkZxRUplS3BlZGpiWTJEV0NZNmxOWXY0ZDFDbTAz?=
 =?utf-8?B?K1BXWHRPLzFIZkwrRENyajFKR3VRMkZTTU9OdnJtc295a0VTbzRsMmNIMjIy?=
 =?utf-8?B?cjRtR0MzM1h2cVR0b0xQV3Fidjc2RktENzkzVDFzK0YxTGJpSlFqOEF4MzBp?=
 =?utf-8?B?VmorWXJ4a1FzMGxoQUxMKy81VU8wdHZ6NkQxR1VhYlRmQzFpb0VGRUZxS3lp?=
 =?utf-8?B?UjcvT0syRVhDenNQQUYvUXpoSCtoRFgrU0xLMHFKRFdwQU1yOXh0ZWtGeVJQ?=
 =?utf-8?Q?udmtvTkSgI6C4c0bDAL8UYecT?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 00b67351-d931-4354-bba9-08dbd39c820a
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Oct 2023 07:48:55.4403
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: yQuvggOogixX4KcFgGncXYZ4jnwDYgJM/hEoSPpCPW3Kg8PCPl6bG1r2jDMGhRpP/n42YBXFJqAUHqLF5u/qMw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR04MB9249

On 20.10.2023 17:28, Nicola Vetrini wrote:
> --- a/automation/eclair_analysis/ECLAIR/deviations.ecl
> +++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
> @@ -246,6 +246,12 @@ constant expressions are required.\""
>    "any()"}
>  -doc_end
>  
> +-doc_begin="The macro LOWEST_BIT encapsulates a well-known pattern to obtain the value
> +2^ffs(x) for unsigned integers on two's complement architectures
> +(all the architectures supported by Xen satisfy this requirement)."
> +-config=MC3R1.R10.1,reports+={safe, "any_area(any_loc(any_exp(macro(^LOWEST_BIT$))))"}
> +-doc_end

This being deviated this way (rather than by SAF-* comments) wants
justifying in the description. You did reply to my respective
comment on v2, but such then (imo) needs propagating into the actual
patch as well.

> --- a/docs/misra/deviations.rst
> +++ b/docs/misra/deviations.rst
> @@ -192,6 +192,13 @@ Deviations related to MISRA C:2012 Rules:
>         See automation/eclair_analysis/deviations.ecl for the full explanation.
>       - Tagged as `safe` for ECLAIR.
>  
> +   * - R10.1
> +     - The well-known pattern (x & -x) applied to unsigned integer values on 2's
> +       complement architectures (i.e., all architectures supported by Xen), used
> +       to obtain the value 2^ffs(x), where ffs(x) is the position of the first
> +       bit set. If no bits are set, zero is returned.
> +     - Tagged as `safe` for ECLAIR.

In such an explanation there shall not be any ambiguity. Here I see
an issue with ffs() returning 1-based bit position numbers, which
isn't in line with the use in 2^ffs(x). (Arguably use of ^ itself is
also problematic, as that's XOR in C, not POW. I'd suggest 2^^ffs(x)
or 2**ffs(x).)

> --- a/xen/include/xen/macros.h
> +++ b/xen/include/xen/macros.h
> @@ -8,8 +8,11 @@
>  #define DIV_ROUND(n, d) (((n) + (d) / 2) / (d))
>  #define DIV_ROUND_UP(n, d) (((n) + (d) - 1) / (d))
>  
> -#define MASK_EXTR(v, m) (((v) & (m)) / ((m) & -(m)))
> -#define MASK_INSR(v, m) (((v) * ((m) & -(m))) & (m))
> +/* Returns the 2^ffs(x) or 0, where ffs(x) is the index of the lowest set bit */
> +#define LOWEST_BIT(x) ((x) & -(x))

I'm afraid my concern regarding this new macro's name (voiced on v2) hasn't
been addressed (neither verbally nor by finding a more suitable name).

Jan


From xen-devel-bounces@lists.xenproject.org Mon Oct 23 07:52:41 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 07:52:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621040.967027 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qupjs-0005in-O6; Mon, 23 Oct 2023 07:52:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621040.967027; Mon, 23 Oct 2023 07:52: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 1qupjs-0005ig-LX; Mon, 23 Oct 2023 07:52:40 +0000
Received: by outflank-mailman (input) for mailman id 621040;
 Mon, 23 Oct 2023 07:52: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=rddO=GF=citrix.com=prvs=653ff57d6=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qupjr-0005iZ-Aq
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 07:52:39 +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 2000d13b-7179-11ee-9b0e-b553b5be7939;
 Mon, 23 Oct 2023 09:52:35 +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;
 23 Oct 2023 03:52:34 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by MW4PR03MB6507.namprd03.prod.outlook.com (2603:10b6:303:126::20)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.9; Mon, 23 Oct
 2023 07:52:31 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::acf0:ce2b:1634:5aee]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::acf0:ce2b:1634:5aee%6]) with mapi id 15.20.6933.011; Mon, 23 Oct 2023
 07: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: 2000d13b-7179-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1698047557;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=H/qeyx8LBQBCYkF5XuIHSZj2N/CvMz7KljmrG+4BDZU=;
  b=NxiGBmyv1gefQ2JswLxi+d996VzV1qHvLaOygph4kFbltl50Ib5xfY/p
   oq+UrviH3XrDs/E3Wxb83HNdH1PCkYdfd7WSMuYMzREwUWY0QIjFDXuag
   F6BKOawA+ZPh/i3BHQvIV9ft5jNRfNImTupQv6xKsHcWjrDpVXfA3ZFxL
   M=;
X-CSE-ConnectionGUID: ubi076DhQey/LsUBLrZu3w==
X-CSE-MsgGUID: CXB7leYkTlqIvNCUx0kddQ==
X-IronPort-RemoteIP: 104.47.58.168
X-IronPort-MID: 126784549
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:pTlt8aIyb+fnIr0zFE+R0JQlxSXFcZb7ZxGr2PjKsXjdYENS1DBRz
 TNMCm2DPvbcamH3f40jO4Tl9R8BvpPRmNViGwtlqX01Q3x08seUXt7xwmUcnc+xBpaaEB84t
 ZV2hv3odp1coqr0/0/1WlTZhSAhk/nOHvylULKs1hlZHWdMUD0mhQ9oh9k3i4tphcnRKw6Ws
 Jb5rta31GWNglaYCUpKrfrYwP9TlK6q4mhB5gZkPaojUGL2zBH5MrpOfcldEFOgKmVkNrbSb
 /rOyri/4lTY838FYj9yuu+mGqGiaue60Tmm0hK6aYD76vRxjnVaPpIAHOgdcS9qZwChxLid/
 jnvWauYEm/FNoWU8AgUvoIx/ytWZcWq85efSZSzXFD6I+QrvBIAzt03ZHzaM7H09c5qC2AWq
 qI0KAkAf1ennN+c5KiJV7Jz05FLwMnDZOvzu1lG5BSAVLMMZ8CGRK/Ho9hFwD03m8ZCW+7EY
 NYUYiZuaxKGZABTPlAQC9Q1m+LAanvXKmUE7g7K4/dnpTGNnGSd05C0WDbRUsaNSshP2F6Ru
 0rN/njjAwFcP9uaodaA2iv22LCfwX6nCer+EpWTxtQ1hFCixVAXETwIc3CGsaG6hkKHDoc3x
 0s8v3BGQbIJ3FymSJzxUgO1pFaAvwUAQJxAHusi8gaPx6HIpQGDCQA5oiVpbdUnsIo8Q2ws3
 1rQxtfxX2Ux4PuSVG6X8aqSoXWqIy8JIGQeZCgCCwwY/93kp4J1hRXKJjp+LJOIYhTOMWmY6
 1i3QOIW3t3/UeZjO32HwG36
IronPort-HdrOrdr: A9a23:8uJ30K0WFSUEDgmbVIZHPAqjBHYkLtp133Aq2lEZdPU0SKGlfq
 GV7ZEmPHrP4gr5N0tOpTntAse9qBDnhPxICOsqXYtKNTOO0AeVxelZhrcKqAeQeBEWmNQ96U
 9hGZIOcuEZDzJB/LvHCN/TKadd/DGFmprY+ts31x1WPGVXgzkL1XYANu6ceHcGIzVuNN4CO7
 e3wNFInDakcWR/VLXBOpFUN9KzweEijfjdEGc7OyI=
X-Talos-CUID: 9a23:aPoBYm9Z7J+bZl/geyOVv1MeG5h6LFHd9XrBZGujNExNUo+IEkDFrQ==
X-Talos-MUID: 9a23:iuH5dwTJbUUaqu1vRXTHtBs9MMpZ4JiqEWETt747q5GHOSBJbmI=
X-IronPort-AV: E=Sophos;i="6.03,244,1694750400"; 
   d="scan'208";a="126784549"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ilwvlfGMiTaKX9b5gOMIkXpUWLyD6OoOkJp6bf/KDWBA0Gco/Zo8J4gRBbYRkM8Y+dpplqU8JCPUGCo3xfEgy3s7ykip/YAfx0EFPM6+nt/MHQQhe36ODEcG714HLH64FcrBe/hlx2OhcSVMrm+GM0r3T99H8a/TbFfu1CanyQrJChKciF4+xynWI+HR4sUvxG6YKoH4FABFpLUDnLXTguPxJVfGH0Jtju1TaOjEvJvm69KxoWundZ8NjASWoj++lO2d9qgqWHBQIFgD1waHxYJWHDuMWb0gqkJ8IJSq2wuSDusBYVcbRut2t32MdSSHi7HNAOLoX+cjUU/kYlP3/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=EWuSkg4H/5wCyVt4WNJy2f/fCJA1bOdZB4QcT0QLqfo=;
 b=YixOc9tGhOOkjw14mUX+QxauwlqSuWJSgECRHMZzOefGF9NuAmyD1v7+NuCSnImfW9SQyxfKWF18UZAzQjTg0FDEityb+KqKWXHN5FI2M3DqIbYYGYujieJS6EDk7WaB8Gykgyq2QTw2LRLhWbPcv+R9+NmCDCWAc/Z3eGHmMFxdmvPwQLT7lIxRJ687z9qWTP2WH/qD/ark215buga+zYRMYnc69GGeaEN60oU6CKEiFF55jqL/uyIA3snET5scPT4y2XPtEIrJTGtkRtOCIoLJ6m8iA74dcCFZfozigVgBnNwL21snS5p/62k1A1F55d5jUzmRoIYVzAT5milSMQ==
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=EWuSkg4H/5wCyVt4WNJy2f/fCJA1bOdZB4QcT0QLqfo=;
 b=nJ/x/iBrtcwYBmeQExsXmZQvJWNaZ2BTiwB43nIdbThx95StuR3bUY3sE7E0sEa2LbsXLDHhebJc2/L/O/KS/88mfKH2qUXV+AI8kaFgNdTdwp/p6RT4staHocJkgqFKcG+TMkniJDFMxw1TncncRoVVgkmAv7HMGhRTOSbO1LY=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Mon, 23 Oct 2023 09:52:25 +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
Subject: Re: [PATCH] ns16550c: avoid crash in ns16550_endboot in PV shim mode
Message-ID: <ZTYmOTBdAgTBliHI@macbook>
References: <de07d56188f13e222ddaa1b963c20f8d7d61350e.camel@infradead.org>
 <14914ea1-2d2b-46e2-9933-2b7414acb7ba@citrix.com>
 <f1ea054608f4ae38293f89bcd84c6937538f245b.camel@infradead.org>
 <f5603457-8bee-40b9-9ea2-d604abe4ee53@citrix.com>
 <ZTKAqBILUBNelYCS@macbook>
 <7e1fb34868adfa51f1a48eb8d77f4b92643db85e.camel@infradead.org>
 <0c2f1fd0-22d2-419b-8fc3-4788563fe9f2@gmail.com>
 <ff1a67f7-8b33-4e7e-8e31-d5201f7212c1@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <ff1a67f7-8b33-4e7e-8e31-d5201f7212c1@citrix.com>
X-ClientProxiedBy: LO4P265CA0083.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:2bd::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_|MW4PR03MB6507:EE_
X-MS-Office365-Filtering-Correlation-Id: 8a3755d2-9499-44af-8daf-08dbd39d0237
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:
	mWJuTd0nzAK4mhISMlNesPupCmuRGbsyQ7dONjVhcTJPGfvCF+0b7oP9UAlc9odIkP4gIdfUZlUKpOSBLFt4qnJJEsmJnYy8VCHsk8J7tk3LnJr27QKIGhf9Q44E34uMdBvMM+Soe23GApBxQ4JrkDIZgBXw0yymM4iPQAUubjzjfaTzzdzC/NrAq6L+qpx5my40VE2jXw38kOt05kQSYV27/hn/gdFPdZSquWT+6BTITNABgtoX+4Otuu47MmKBO7WbYQ0D/7J6I7rjXgPy9TyQ1szuOmxxPXwlM/3Fdb7BYn/ePq/a68G8UHQtTvTq+xFM6zT+wXnxZ6im996HTlUDrUbQnnpIbmduBw9GuDHqsADedtxsn3aS4+Ob4+rehrezK7VPHgCZs855/nwFBQVSfU5MGwP4OaGwgIyPKJo91A/ypK5XGZM0wPZfYgS113Yn62TD/pHEPAKWSgQhRORVf8h0i/z5jqVCJxVEB6xqi4U52qk/OqYcZU3b8aBoQBpVvi6o873Fq/0LcTh+VmCqF9MUHeJ8PSMWHWkL7Y0=
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)(39860400002)(346002)(376002)(230922051799003)(64100799003)(186009)(451199024)(1800799009)(8936002)(5660300002)(6862004)(4326008)(8676002)(53546011)(33716001)(6512007)(85182001)(2906002)(83380400001)(26005)(38100700002)(82960400001)(86362001)(9686003)(6506007)(6666004)(478600001)(316002)(6636002)(66476007)(66556008)(66946007)(966005)(41300700001)(6486002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?YlR1T3hQL3B1WUNqaGQ4MHRYMXFjVVhNWVN1NjlYUU5EbzRTNUhHdDJFWlhO?=
 =?utf-8?B?NUlwNE43Vm91Q0pQakFmS0NHckNXdmZNUktGU2E2SXBGbzc1cTFKZmxHL0hn?=
 =?utf-8?B?RXYxWjJHZCt2YTh3Q1BQZm5jZ0cxY3pNaDFjZ01aYkNuOGEyUFJPZS8yWElH?=
 =?utf-8?B?ZWtRd0tpNG9qT2Z5RWlSeENQRWVHZHUyZ2V3c2hhL0JOMkhydUhjTUlZTnVO?=
 =?utf-8?B?Zm82cXdmUVhLdGdpSUpvaEo1KzRhRjNQdjNYQ3JFVFhNNnJyWGpVZThNZEUr?=
 =?utf-8?B?cWluWEU5NFJOS1JUbVlyQWh3a1hUeUdYMGY5WUQ3QkttSG16em5TTXVsNjEw?=
 =?utf-8?B?L1p4Qjc1WXF3WlprQzF0dG5WUHNEc2NTOUhDNzZRb3VNZDZ2dDBienhKWG0y?=
 =?utf-8?B?c0pkZm9CRDczQ3paaXpZTm5KT2RNcTgvNWowQjVUT0sxUlhnSUhPTFRoNWRt?=
 =?utf-8?B?dWVPOTJvUnQwQldZYTJHejU0aXlUbVNXTFdsVVVuRzR0bk05bG80ZkN2UkY1?=
 =?utf-8?B?cnlURVlFalZ6SUgrbVlQZm1WMzcvQStkTGFid09DYk5RU0xoSWhwUjVYdG1p?=
 =?utf-8?B?bjJYVW83aXkyY1JXTm1BRGxEa0dCT2dEMzJzZCtlZWFmN3dSSjM2N3ZLc3l4?=
 =?utf-8?B?VXh1ZmJIYjdFU05yVUlKNnhqbG9UM1Y0UGt3QXVIVDlnVXAyc01yK0lEMnBE?=
 =?utf-8?B?aEtHY1ZpUWVXZjFwejlCTXFSRFdZVFZhTys2R2xNS0lSbGhrQVcvNkxLU0sz?=
 =?utf-8?B?RHN1ZDFsdlp6WFF3VFFTQUZDV1VXNC8vUzVFTHFhN0NzV3VmOHk4M3F4Z3F1?=
 =?utf-8?B?M2JrSlhBTU1OMm1vUk1Oa2piN0UvTW80aWtpYmhKM3lYZnplYkpCMVdVaEVS?=
 =?utf-8?B?bmYyeUNkRENMVm8rcUdGaHZvN2lBMWIrSzJTOFMxWmpETmVkUGplaEdlbmVk?=
 =?utf-8?B?NW01d2MvMHE5WnRyNlN1d0MwTjR5b0Fya2haRzZsZXJ4Tm5OVjFicWZBTUFW?=
 =?utf-8?B?b1pFSHhoZEJVeXNLSVlXem1QN3QwUEVheG9lMjZhdWRwOVdkamNjNFdXSVla?=
 =?utf-8?B?d291dGFwQ2o4aitRV0xHbkVvSTB6Y3Z3bGNlSThSb2tJRk9LR3RNVTJNaTNr?=
 =?utf-8?B?MjFYWU90TlRBaFE3S2RJbG1keVpGK1RMSlFaeFdISHFnRjBzUEJvb0hsbW81?=
 =?utf-8?B?bW5qM1paYiszTGxVY2Q0SmxiT01YNjRzUE04czVHWmUyLytNUXpMWkR3TUZV?=
 =?utf-8?B?V0NNRCtqREpXNFJYaS82WHdLRDZwLzBuVGZ1L0kyMm14Z0tEb0YxeGxFNjE5?=
 =?utf-8?B?bHMyM1dSOCs2aXBGeDdscHZxRzcwaUh2SjZGc1p3cGgraU9NbTNqVG9pcEtj?=
 =?utf-8?B?b3hxaHZaWnJ2VmxqM1AxQ0pKVHlVdkg5aGx6enBYYnJ5WENuTHV6M1g4ejBn?=
 =?utf-8?B?cmt6aERzVGQrQ213aVh4Z2UvYlhqYVdOOXVpYmFCTzgwak9XM0dxcVBjbW0r?=
 =?utf-8?B?TUJQYnlnOE1raFcxemJZZkJuMVY5Q1drS29rMWNUaFI0SXpEeGJsUEE2ZFNI?=
 =?utf-8?B?WDVyZXA5L2JWTUJ6cGR5ZXd5RGkxUzJsNHo4dXo3TnJLcjNVMnFhQkd2Ukt5?=
 =?utf-8?B?VVpGOFhOMlQwMmhSN3E3cm84bk9yaFZWYlBOV1hxdG5LcE9ST3dGSE9XcXBQ?=
 =?utf-8?B?NXM0RzRrbzhZeFM2dDVrdFVZZzdMd0hMcDdoU2xDbnh3L1htT2d1Mmd6dnRp?=
 =?utf-8?B?VGlMVUVENUVmRkdCS2tMdVFDV01BbjFrWU5KVzh0VDIzNzk1WVkyY1NxeGxD?=
 =?utf-8?B?a09GOEpGTkh3VDc2cVFST3hmZUphVEk5NkhvZUVIMWtnZFZVTDdob0djbUI5?=
 =?utf-8?B?VDFtWWJzTWlsNUtiV0dSbkhVTjJQYTk5dFRETlBTVi9LN0F5a1JlMTV0SFZE?=
 =?utf-8?B?ejJ1UC8ySkpVbGcvN3JmVkFQL1dqSHZmTE1CWCtsZ3p3R3lZV3Y3K1MyaUM4?=
 =?utf-8?B?WFhHUTdmdUdha3ZXUnlnZld1ZDNzRFBEck1xclBBRG56Z2E1NzhHOURaOHZU?=
 =?utf-8?B?T2Zaakgrbk5LT1ZlWmc0NVExTWZyR0RYTUUzMkNkR2N0czRGU3BabXZ1OEY1?=
 =?utf-8?Q?OISjHIBMbjvuC+N0+6f0J8dmj?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	kGfRl5Gb1CdpkIm3yNT9a8Rc0RTiGe67gJRBQuuSwnSsWnJWnGQYt2dyV13Ozqu+5oUjHTSTaiB0LBEjciAMJBQLv3wvJFNxPkefQsO4iRsWWHl++dSEqjA5WCfX94PZa2Xqr8uYp5j69Qxqwtujcl2e+ovFa7dYq7Om5hT+K3aBEHnYQPzlSDLXtlqPmxhyF4KffZjPGC242uVPxyNl0ua9xBLHPAKRL9LIp6UCdhCf0uDF6zXUH6erVEOiUP09puJ5q0P77yXNewFfd2PPh8xklWmYXqvjJBE9z9GDL9fvBgswXFOCn+nrKQfO3cHFnCMYltfq1lrRPCYD0+FI1A1rvLLr+NYTH3wsiDUQiVHtnlzQBuAxgPdUgTW076IKIjJNyjddgQrzKZPf7ioSdDtGbprBq0+5RIUIIuCzO02uHfY/qZIi6Uq8rr7Swxlxg+27WLLTbJus2oJEL91qHZmjnY3ymvYlD3MTh+Rau4Pv2971egme8AS/VyfGsgFDteGGMq5AeUtfJKuyZrzksP1yNSpfc7lVbx+BfLmAMOCGvEeFFOAoYoUaX3vNwLtgLfIHYprsLGZwaUomNRMnPy7fsuCWcCj56I0m1PLmTqGwz3r5+V7pROhKw0Z+cF1bJmeP2zljTgDsrJx8BJXe9VIbKrgSMAiX9xlNksekbfA45NHk2QGoTsFkMZvcGmzTjJ+KkTNtFMw32UyJVMyj5FvZZZ+9XkFe7mekX6HWRHvG9rApOuu3g5W3NhE790LoEuGWTAt3a+eT1ImCV2LQyw==
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 8a3755d2-9499-44af-8daf-08dbd39d0237
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Oct 2023 07:52:30.7406
 (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: qh3GDzcYvBe3eIKs5yUsoqg1qQ4pM4pwL7/0h4hEI7I8mrwQ8ValE7WmEpRsSRwYQnbfUSCAAzdtT53DZE9Yzw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW4PR03MB6507

On Fri, Oct 20, 2023 at 04:16:16PM +0100, Andrew Cooper wrote:
> On 20/10/2023 3:50 pm, Durrant, Paul wrote:
> > On 20/10/2023 14:37, David Woodhouse wrote:
> > [snip]
> >>>
> >>> [0]
> >>> https://elixir.bootlin.com/linux/latest/source/drivers/tty/hvc/hvc_xen.c#L258
> >>
> >> I'm not convinced I believe what the comment says there about evtchn 0
> >> being theoretically valid. I don't believe zero is a valid evtchn#, is
> >> it?
> >
> > gfn 0 might be valid, but I'm also pretty sure evtchn 0 is not valid.
> 
> GFN 0 very much is valid.
> 
> evtchn 0 OTOH is explicitly not valid.  From evtchn_init():
> 
>     evtchn_from_port(d, 0)->state = ECS_RESERVED;
> 
> 
> However, the fields being 0 doesn't mean not available.  That's the
> signal to saying "not connected yet", because that's what dom0 gets
> before xenconsoled starts up.

Someone asked me the same a while back, and IIRC we don't state
anywhere in the public headers that event channel 0 is reserved,
however that has always? been part of the implementation.

If we intend this to be reliable, we should add a define to the public
headers in order to signal that 0 will always be reserved.

Roger.


From xen-devel-bounces@lists.xenproject.org Mon Oct 23 08:03:35 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 08:03:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621046.967037 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qupuM-0008Hs-49; Mon, 23 Oct 2023 08:03:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621046.967037; Mon, 23 Oct 2023 08:03: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 1qupuM-0008Hl-1B; Mon, 23 Oct 2023 08:03:30 +0000
Received: by outflank-mailman (input) for mailman id 621046;
 Mon, 23 Oct 2023 08:03: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=gXaf=GF=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qupuK-0008Hf-Qv
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 08:03:28 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id a52d4fee-717a-11ee-9b0e-b553b5be7939;
 Mon, 23 Oct 2023 10:03:26 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id 4550E4EE0740;
 Mon, 23 Oct 2023 10:03: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: a52d4fee-717a-11ee-9b0e-b553b5be7939
MIME-Version: 1.0
Date: Mon, 23 Oct 2023 10:03:26 +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.cooper3@citrix.com, roger.pau@citrix.com, Simone Ballarin
 <simone.ballarin@bugseng.com>, Doug Goldstein <cardoe@cardoe.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][for-4.19 v2] xen: Add SAF deviations for MISRA C:2012
 Rule 7.1
In-Reply-To: <7d7ebafa-9751-bd0a-c47a-1894d9edadf5@suse.com>
References: <a9c52c943380f2c35f0a6ccab8215c03e87c99dc.1697712857.git.nicola.vetrini@bugseng.com>
 <de2b666e-ca48-58d2-73eb-5adc797f818e@suse.com>
 <d879b8e4689e51131f081edcb3b2abe6@bugseng.com>
 <dd58e1cb-8f17-986d-f4f9-f39e998e05a0@suse.com>
 <5b1cd4fba12664f2ef49bcc2eb198e31@bugseng.com>
 <d83c024b-05a9-5298-9e43-e693675c2da5@suse.com>
 <6a90edf81f410db8069526228de75d7e@bugseng.com>
 <7d7ebafa-9751-bd0a-c47a-1894d9edadf5@suse.com>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <800b2c809829942210323804b6778c40@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 23/10/2023 08:34, Jan Beulich wrote:
> On 20.10.2023 16:58, Nicola Vetrini wrote:
>> On 20/10/2023 15:24, Jan Beulich wrote:
>>> On 20.10.2023 12:33, Nicola Vetrini wrote:
>>>> On 20/10/2023 08:38, Jan Beulich wrote:
>>>>> On 19.10.2023 18:34, Nicola Vetrini wrote:
>>>>>> On 19/10/2023 17:57, Jan Beulich wrote:
>>>>>>> On 19.10.2023 13:04, Nicola Vetrini wrote:
>>>>>>>> --- a/automation/eclair_analysis/ECLAIR/deviations.ecl
>>>>>>>> +++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
>>>>>>>> @@ -85,10 +85,10 @@ conform to the directive."
>>>>>>>>  # Series 7.
>>>>>>>>  #
>>>>>>>> 
>>>>>>>> --doc_begin="Usage of the following constants is safe, since 
>>>>>>>> they
>>>>>>>> are
>>>>>>>> given as-is
>>>>>>>> -in the inflate algorithm specification and there is therefore 
>>>>>>>> no
>>>>>>>> risk
>>>>>>>> of them
>>>>>>>> -being interpreted as decimal constants."
>>>>>>>> --config=MC3R1.R7.1,literals={safe,
>>>>>>>> "^0(007|37|070|213|236|300|321|330|331|332|333|334|335|337|371)$"}
>>>>>>>> +-doc_begin="Octal constants used as arguments to macro 
>>>>>>>> INSTR_ENC
>>>>>>>> or
>>>>>>>> MASK_EXTR
>>>>>>>> +can be used, because they appear as is in specifications,
>>>>>>>> manuals,
>>>>>>>> and
>>>>>>>> +algorithm descriptions."
>>>>>>>> +-config=MC3R1.R7.1,reports+={safe,
>>>>>>>> "any_area(any_loc(any_exp(macro(^(INSTR_ENC|MASK_EXTR)$))))"}
>>>>>>> 
>>>>>>> INSTR_ENC() is a local macro in x86'es AMD SVM code. A macro of 
>>>>>>> the
>>>>>>> same
>>>>>>> name could imo be introduced without issues in, say, Arm code. 
>>>>>>> The
>>>>>>> above
>>>>>>> would then needlessly suppress findings there, aiui.
>>>>>>> 
>>>>>>> MASK_EXTR() otoh is a global macro which ise used for various
>>>>>>> purposes.
>>>>>>> Excluding checking there is imo going too far, too.
>>>>>> 
>>>>>> I should have thought about it; I can simply enforce the deviation
>>>>>> to
>>>>>> additionally match
>>>>>> only a specific file for each of the macros.
>>>>> 
>>>>> That'll work for INSTR_ENC(), but not for MASK_EXTR().
>>>>> 
>>>> 
>>>> Why? What I'm deviating is reports due to octal constants used in
>>>> expressions
>>>> that contain MASK_EXTR in their expansion if and only if these are
>>>> located in the
>>>> file svm.h.
>>>> No extra octal constant will match all these constraints.
>>> 
>>> New MASK_EXTR() uses can appear at any time, without necessarily
>>> matching the justification.
>>> 
>>> Jan
>> 
>> Sorry, but I don't understand what's your concern exactly. With the
>> improvements I proposed
>> (hence a new patch revision) I see the following possible future
>> scenarios:
>> 
>> 1. an use of MASK_EXTR() in a file other than x86/hvm/svm/emulate.c
>> appears, with no
>>     use of octal constants in the expansion. This won't be deviated;
>> 2. an use of MASK_EXTR() in x86/hvm/svm/emulate.c appears, with no use
>> of octal
>>     constants in the expansion. This won't be deviated;
>> 3. an use of MASK_EXTR() in x86/hvm/svm/emulate.c appears, with octal
>>     constants in the expansion. This will be deviated;
> 
> This is what I'm concerned of: How do you know up front whether such 
> new
> uses want deviating?
> 
> Jan
> 

I understand you concern now. I can argue that all the macros in that 
table have indeed
an octal constant in their definition (0 is explicitly allowed by 
MISRA).
This is also specified in the comment above the INSTR_ENC macro 
definition, therefore any
new addition should have an octal the second argument to INSTR_ENC.

>> 4. an use of any other macro with an octal constant in its expansion
>> won't be deviated,
>>     unless the configuration is suitably edited.
>> 
>> Does this address your concern?

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


From xen-devel-bounces@lists.xenproject.org Mon Oct 23 08:04:32 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 08:04:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621049.967048 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qupvL-0000cu-Cv; Mon, 23 Oct 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 621049.967048; Mon, 23 Oct 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 1qupvL-0000cm-9f; Mon, 23 Oct 2023 08:04:31 +0000
Received: by outflank-mailman (input) for mailman id 621049;
 Mon, 23 Oct 2023 08:04: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=OVTz=GF=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qupvJ-0000a6-W4
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 08:04:29 +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 c9825a6b-717a-11ee-9b0e-b553b5be7939;
 Mon, 23 Oct 2023 10:04:27 +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.6933.11; Mon, 23 Oct
 2023 08:04:24 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6933.011; Mon, 23 Oct 2023
 08:04: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: c9825a6b-717a-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=SQVqD7MTXVBJdDcZtJkQaSe8uLINgs6p43m+CMRMfhtR0hdlnDdgvgo5fi8Dnmt/RMBsNo6J+AivP2UJTEduZf+yNxIaWuBeRy63NcpLn1G2hX9M4VAl9fZoHkW42EkJB6Io4nQWExeaHgflCEYjsihqzooUSpDqp8T4K8ZWv1rwjPCfay/4vGhFp+qjKXRjW/O6HI5IFepNe2pkrAHG72+5yr/Yyek1O/HFrl2EI+KsjugrBqErWxLz2MYencQpy1c56vInZ5jaVWtVcTb3YyKXPAVcN/nA0E/nFdslvXzIIIloibTC4idtoMkLm0i5fnmRqwoRO4yQzSjm7YimFw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=yxr1Y0Ek7NMXkZbUJ9ZbNY9A3+I9X2NdghD2Lsn9j/0=;
 b=AM1BgdgAnYxTo2c2qFfbcATcVfSOPtJKRLqyHMFoUHrC91JPJ1BsYmSJy3jNu1nuyPQcqWx0tpu3stnrzeL1gPHyO7Ps+hVAndnOoFHhz/yAi6dZ+IBnFWJzJnwCfuuAHK8lNUtWO8C/K7Vwh7g2izGMAgIA5TV0OpvOr5UIC9Z+22g/mGRYxc14TOODgxfT6Ud5zvFfJp8pYGuSfmAHrdhM8n1nXRt9VAmOeu45rOoh9S0CBYyulclWualMOKPGinNHjqyMw8iUz+yORo0TlVb0ydsRj3VBrFnzhpDsW5pAFjcQkfWQJ7y7ye+lti47kLC4jH3OnknVk4zm9gtDOw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=yxr1Y0Ek7NMXkZbUJ9ZbNY9A3+I9X2NdghD2Lsn9j/0=;
 b=HmD+sN0sSNkMNlj3jO+7+8AceulKFcSm0c1DlCNnqDrd7tKob4wP3W/sBjZtRHc8aqCnc1AZOPVIOLP2zN+VHagtmUloTpNqfBOBBJZM94LTtN1xYYnPcaWVae1uJAgHyoTcgcmE9NfJwBYwIlWj/l2RHICuqfq2ukrgPMmq5ZzCyrbEyWJhuQWmzh9d95SNeICoN/IWZxdBv1OPhGkdTsNUenEbYtpITzS550AwVDX4sOkfIWbSK8u5AX4WXkVDvbmxP5XDneBWzcWYib/avC+DIYfZm5KlL9C8EbWxs+B0cEw93Ol2M3n5tq54GTYYpKyAZASacI6APv3ZnDLKDQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <2902d6cc-169b-a70f-ce10-10925e837fb6@suse.com>
Date: Mon, 23 Oct 2023 10:04: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 for-4.19] xen/xmalloc: XMEM_POOL_POISON improvements
Content-Language: en-US
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: George Dunlap <George.Dunlap@eu.citrix.com>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 Julien Grall <julien@xen.org>, =?UTF-8?Q?Roger_Pau_Monn=c3=a9?=
 <roger.pau@citrix.com>, Xen-devel <xen-devel@lists.xenproject.org>
References: <20231020202649.1802700-1-andrew.cooper3@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20231020202649.1802700-1-andrew.cooper3@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR4P281CA0354.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:f4::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_|VE1PR04MB7312:EE_
X-MS-Office365-Filtering-Correlation-Id: da267507-9253-4a31-015a-08dbd39eab53
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	3RiLljxRztG/Tbjiu5Go/LwFcQ3FNeevmweR42MEPbk/bRO9cycfLtXmYVt14TX97STt6zEJWFrDvxaH5EPak4MAEK9vQRib1K9vgmsA6oxZms3amI/7Ls0FXZbMV2tgqDBAjDVsN20DlLt0tTMVYH/Bg/l9RxKTyGKkE8gbOoKl4lshs3m9/xpqF2sYheQ3KAcLtbjC2E4pLXnsfeBtZjTi33QTb+r+eqIaaPW6YBfu1e77bcWcb894Ep+ZvtaoL72u142TeISOSZrjhUcK33ATJ50AQCLwP+4VRfBRSv6sWFQv/ZSW6dXCD7Q5ZhwCfgsHmPsHq1q+zsadpUbevdR5fMQ4GzCu7LFLORvqgpD6M6eu2EnqBCq5Jt/OBbVZObH0mHN5YyAhPNh3uZ0L+rPgWJXEXA7Z5y8eVJb5waNG/CDM+KReMMvxcdxAg5Ckf4KnR8A1U7T/LBzOlzuFE0q4Sp+yC2jisKRB1jqDxueD9JG7iRrhUfHu/aBSU0fGuOhf/oF6kFmFB6g0zgTX0a+xV9HDer3RWdyKFsx+TnjvFxtmoUnEZo0EyY+bza8htye2I1WfcYxO9+FXFHfuQAce1vLlvIf6AxIbDqbOXWWVZ4fU7WuLgpVaVQ2JGPaVndWr7MZC4d6lk+yZLLbNlg==
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)(366004)(136003)(346002)(396003)(230922051799003)(1800799009)(451199024)(186009)(64100799003)(31686004)(4326008)(8936002)(8676002)(5660300002)(2906002)(41300700001)(26005)(83380400001)(53546011)(6506007)(38100700002)(6512007)(2616005)(86362001)(36756003)(31696002)(54906003)(66476007)(66556008)(478600001)(6486002)(966005)(66946007)(316002)(6916009)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?TGdlaWRKcWlWM0pQMGJidTY5T0oyTXV4UWN2TU8wcTN5Yk5MQk9sRTJnc0Ir?=
 =?utf-8?B?R2tKMS9KVStUb3BabFc2a2k5RlBZWGhMc01MZS9ZU3Y5Z05oYTdIQlIwM2xo?=
 =?utf-8?B?YkJiR3ZGcjZtdGE0bUdQWHdCWnk1MXg2WHNNVGtKWkV2QkNZUWVOV1cvQ25a?=
 =?utf-8?B?MS9MeTRVZ1BmK3dqM210eTZvam1JZ2pSVHNUMUQyOEZzWjF3VmNEd2Q0ZENk?=
 =?utf-8?B?ZDV2WFR4cThtRlZGK0hhdk5MbDBvNFcveFJEdU8yQ3NENzZMV3lxREZTd0tw?=
 =?utf-8?B?djR4S2lCeEFXQlZYaERJRjBsWUdGa3AzUmUrT1NlSzQ1cUNRTWoyaTc4MXZZ?=
 =?utf-8?B?WkxQcHZCVUNSVk9IMzdZa0JLNWxhVHRxWWs4RjhIOTlrVE15ejNwS2VET1BO?=
 =?utf-8?B?MnlkRmY3eEdQSlkweGMxREkwNjNxYU5jTVN4aUNaYXlnaDFPS1BzT2hXMUht?=
 =?utf-8?B?RkhyVFJNY1Z2b0N0MWtUQVl2U3VOaHVDMEs5bHlERCs0c3dVYzdHVkc1QXdm?=
 =?utf-8?B?OUFaOUwzclRhdEFISm1CT2k2ZnYyV1FuZVVSUVk3c3NFQkhubncxWGl2RVJJ?=
 =?utf-8?B?MWRyV2xPOFVLb0hjMjNyYXJSR2MvQnUxSWhhNkI1YVFnMDN3RG5JOEtlV2pJ?=
 =?utf-8?B?WEsydUxVUXd2bDNKeitlZDFpR3JJSTJwY0VPNUhsbzNLeDQxQ1RUSmJXdUIz?=
 =?utf-8?B?SGk1S25keFJqcEZaUi95MzlmR2ZyWGhSV2lPRVB3N25hSVRKeUpJWXJmdE5u?=
 =?utf-8?B?TXpUR3Y3WHNyQ0FsRjJyTWVWU1I4NlhBak1sbkMzd2E2SWNRcnpJSDZ1MDNT?=
 =?utf-8?B?NWdDM0FyNEsvaVJYL2x1RGZna0tUMWI4Q1RyM2NEbzVmRmg1eVdORW1nMVlX?=
 =?utf-8?B?UGJVS0JnUjBrVmtqN2ZEVk1SSFpxbUpUMkQySjUySnREZ3Z4cVBMY2NDSjk2?=
 =?utf-8?B?cWNEYzZ4QUx2TGJ0U2VLb3NaS3pNRFVieGdDUWxmQ2FtbS9weDVhYlJFTHJ1?=
 =?utf-8?B?UlplU3RKTkhnTUg1QVU0ekI4VnI5dTkxY3pRYzBTWmlZaGJtWXFtRGRiOFVP?=
 =?utf-8?B?V1RjcFFaTTB2MDhMNUFYMFQzUm5xSThvd3haSi9SdmRBRXEwcFRtWS9WSHdz?=
 =?utf-8?B?QXZwaWFYZHZDVmZoTm8zWXlEbk9PQVdDTlhYTTdQK3FEWnNBaGRFUVR2QUhM?=
 =?utf-8?B?aHNxR3ZEV0VLNmMvVnowbVBtYW9SM3BwQ0tTTHkyb29oSGQyNUhpdDBYckVF?=
 =?utf-8?B?T3E4ejZySzlLQ3BQckpXRzZ2UGc5WGU0dFR2MjlDSDYzV3Q4UWtPallSTFJQ?=
 =?utf-8?B?VmVFU2lONUhGY1VkT3k2ZXNjRU5heEs4aGlwRGhVOC9NVTJXYUFyaXdZc0Rs?=
 =?utf-8?B?UHd1R0dlVUZQMnJKMVBjZ1Rqai8yUWVZY0NrWW9IOVJiV1k0eEVVK1VPWGZY?=
 =?utf-8?B?czYrc3MvVjRtOFFLNk1uWGFLLzlYV25QZ2JWY2Roa3hxZERHck9FUHdmdEZt?=
 =?utf-8?B?VUcwT3AyWnpVV1YwQUYyL3pNME94ZlhyZDF0eGRmNTJ2TTRiUjZTUktQeFpz?=
 =?utf-8?B?VW9uN2pvZlNzdVFGSWtESktJV3F4RTFGRi9CNkpYQnpJb3pBOWtNajZ1Y2Fo?=
 =?utf-8?B?Y0k0Zkh4MVdCZTNFVTNRaFovdFNqUTNrVGlGYWRLQzZJdkVLaFlJaTYzU0F3?=
 =?utf-8?B?R3p2eThGdlliZVZPMS9ZcHRialpRWFlDUURnM1dMUmR5WlByVVJ6VTZidFl2?=
 =?utf-8?B?eHplQmVCT1dXa1RmeTZXRHVDZFN5T2ZRVlZwYkRrU0JWQ1QweExzTndaMUxv?=
 =?utf-8?B?WXkvd0FKVGo4ODFKdmdaQWZ5V1ZvMFBocitxVTArNWZtM0ZHaWp6YWJqNDNR?=
 =?utf-8?B?OFNzWXI0ZjV5S1QxdUVDRTRDU3lFWWI0NFVFd3ZFM2Z0bk0vMVNGQnBSTGxn?=
 =?utf-8?B?RU9lellHRVJlRkx5OWExYUVsaTY1M0d6WGVGU3Zra0MrMG93M2RIb2ZYRmNa?=
 =?utf-8?B?SE1PU2JGbmxWY2NKanhBaWllVFRFTVc0eElaUnRRSklrUXhLR0JyckFLc2lN?=
 =?utf-8?B?bzJNRkdXOHAvYzJrT2Zjb2NIUTFvL01mWHM2S3pSbFh3RXVOZFhXdkN1YWxI?=
 =?utf-8?Q?V/m5eU4me2d0usTZy2Y+W9tau?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: da267507-9253-4a31-015a-08dbd39eab53
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Oct 2023 08:04:23.7239
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 3pORMEhTI/+FpgW4EMHr1JtquNu0EYzNYZ1Cl7NbeXm73dW3Q7sfCzNTE0wg4r0luD3rlZNcI5mrEnbieXadcA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VE1PR04MB7312

On 20.10.2023 22:26, Andrew Cooper wrote:
> When in use, the spew:
> 
>   (XEN) Assertion '!memchr_inv(b->ptr.buffer + MIN_BLOCK_SIZE, POISON_BYTE, (b->size & BLOCK_SIZE_MASK) - MIN_BLOCK_SIZE)' failed at common/xmalloc_tlsf.c:246
> 
> is unweidly and meaningless to non-Xen developers.

Just to mention it (no objection to the changes done): While I agree with
unwieldy (and I'd add "of limited use"), an assertion message not necessarily
being meaningful to non-Xen developers is imo not really a criteria - that's
to be expected in various cases.

>  Therefore:
> 
>  * Switch to IS_ENABLED().  There's no need for full #ifdef-ary.
>  * Pull memchr_inv() out into the if(), and provide a better error message.

Thing is - this "better" error message now ends up being less specific, and
hence could mean also other kinds of corruption.

> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
> ---
> CC: George Dunlap <George.Dunlap@eu.citrix.com>
> CC: Jan Beulich <JBeulich@suse.com>
> CC: Stefano Stabellini <sstabellini@kernel.org>
> CC: Wei Liu <wl@xen.org>
> CC: Julien Grall <julien@xen.org>
> CC: Roger Pau Monné <roger.pau@citrix.com>
> 
> Observations from the debugging of:
>   https://github.com/Dasharo/dasharo-issues/issues/488
> 
> There's a further bug.  XMEM_POOL_POISON can be enabled in release builds,
> where the ASSERT() gets dropped.

Just to mention it - this limits usefulness, but doesn't make the option
entirely useless. The poisoning itself also allows certain cases of use-
after-free to be caught. The assertion really is "only" about write-after-
free. (Maybe the improved error message could indicate so?)

> However, upping to a BUG() can't provide any helpful message out to the user.
> 
> I tried modifying BUG() to take an optional message, but xen/bug.h needs
> untangling substantially before that will work, and I don't have time right now.

I agree with Julien's suggestion of using panic() in the meantime, as a
possible alternative. Question though is whether it's better to halt the
system right away, as opposed to e.g. permitting orderly shutdown to cover
the case where the corruption ends up not being "deadly".

Jan


From xen-devel-bounces@lists.xenproject.org Mon Oct 23 08:05:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 08:05:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621053.967058 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qupwg-0001KH-QM; Mon, 23 Oct 2023 08:05:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621053.967058; Mon, 23 Oct 2023 08:05: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 1qupwg-0001KA-NQ; Mon, 23 Oct 2023 08:05:54 +0000
Received: by outflank-mailman (input) for mailman id 621053;
 Mon, 23 Oct 2023 08:05: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=OVTz=GF=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qupwf-0001K4-Mo
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 08:05:53 +0000
Received: from EUR02-AM0-obe.outbound.protection.outlook.com
 (mail-am0eur02on2061c.outbound.protection.outlook.com
 [2a01:111:f400:fe13::61c])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id fb623fd5-717a-11ee-9b0e-b553b5be7939;
 Mon, 23 Oct 2023 10:05:51 +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.6933.11; Mon, 23 Oct
 2023 08:05:49 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6933.011; Mon, 23 Oct 2023
 08:05: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: fb623fd5-717a-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=g1iCZMuX+QQPmn3wIq7s9xNKHsWbCDdp7fdN+R6uba2VojLIiMwYKMVfBbc1nk/dQtJ/8pdXs3LVF9LcvR/k9WxDEF5yII9XMpH8Bv7bx5N1pKPAnV74o0NhTCL+hSu+ZWOIgW/q3kr1929wg7heaa3u/l1A94eWCACVx+oQMkAZxOLdXiWM1Chr++l6UYRfl+EGhOr7Vb5iK8gNNmrxarXOmVtIIn6tOWv/50X0aL0CjR1gEwzXFM6qsWcd8naGtuamOjIDe6o46OHOZRJvKSI6/rUEbHA9t766ISeOEBBXr0SOE12vzM1PwR/6b8ZNoWrXGEGJnyrTz2xDhe0DlA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=Cpf8La5f0uGPMBm7cP4UzqaSU5u5Bisl0Ahw1r97afU=;
 b=U5H0BkwdUpTTvID+zXtCIcsEYBrRrFV8cD9CqVfWJtTt/4viQ18/t/CqAj7YtbmMbf5VSshfCcPldmpVzqVXj1r1SIECTUBgWj24Q46Az6YE9QAR0+cixCN3wK/x4XEsBnWBFvo2k1+qGUgc48fzT3fCLQ2h0JHpWizrj+AY2rFt6Vgy1jpklQ5rFzNB/6yT0R78K3HkG1TrJ6NhDyncnH78MVr7T4vxF0Yf+v9n/wSJ0Z5soJfq+C8AtUX8p9FJ1aqMRuQxlKAtqwV/Cpp+JiF2LKPXEK/yg1ZJ2T1ouBUGa6xH6CXOp+5Qp8yrHzZ5y8H57VvTO1BamIAEjx2y8A==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=Cpf8La5f0uGPMBm7cP4UzqaSU5u5Bisl0Ahw1r97afU=;
 b=hnU/O4eReAjjwDNIuqpR14gsV3S91tP4jNAiOuZPs3E3guwfMqx8aQVi9e5q979+JJQ4KS4A24/FHNPl8iDz+oldHdcfIceA2sb5vjN8exdxyI2OMf6DqCIixIuofu4tBHXuJQ+g4+no2p1fYOcVj7iEf1wmd8MMiRO+9W2UhGV7JpJr+Bfm6X2mEEmEaZvCd+VwCjua07LZsvrRyW3432QvM2a/0eOe5S9hgZR36Bk/buQrvi2qTWc9AJ+iAn42NWPS8VpgsavJj8GxeEehKWWUX+s23RxI25mQa76EWZiQsO4Wjpu4x8zeF/z1BJAvjrDiv/Ms0hX7NyV7wiceOw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <d45ae14b-b6e4-478b-a94d-954b80375d9a@suse.com>
Date: Mon, 23 Oct 2023 10:05: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] ns16550c: avoid crash in ns16550_endboot in PV shim mode
Content-Language: en-US
To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
Cc: xen-devel@lists.xenproject.org, Andrew Cooper <andrew.cooper3@citrix.com>
References: <de07d56188f13e222ddaa1b963c20f8d7d61350e.camel@infradead.org>
 <14914ea1-2d2b-46e2-9933-2b7414acb7ba@citrix.com>
 <f1ea054608f4ae38293f89bcd84c6937538f245b.camel@infradead.org>
 <f5603457-8bee-40b9-9ea2-d604abe4ee53@citrix.com> <ZTKAqBILUBNelYCS@macbook>
 <7e1fb34868adfa51f1a48eb8d77f4b92643db85e.camel@infradead.org>
 <0c2f1fd0-22d2-419b-8fc3-4788563fe9f2@gmail.com>
 <ff1a67f7-8b33-4e7e-8e31-d5201f7212c1@citrix.com> <ZTYmOTBdAgTBliHI@macbook>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <ZTYmOTBdAgTBliHI@macbook>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR3P281CA0032.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:1c::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_|VE1PR04MB7312:EE_
X-MS-Office365-Filtering-Correlation-Id: 00377904-e8a3-4d5e-7ca1-08dbd39ede77
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	QpvXml0O+fNRvqSoDWGzg4c4ljZehjzSxJE4GsqcM77TLNx7+YmyE/W/vgAda7oM1jrYsjEwhyIigtxgug+++4vT1gKSbunSeD/lqQ1gwOgXNUvL5Wx+6Rf/XHI4rkRIsxcYD2xz/wzr1DhhLiBsYxpJkuD2IsEx96pZACD5jDZth3ub6Y/X2AZOtO8MpgXqmAVOg20BQ2MZBOD0YI+NqNwivs3mFvyT6g9NazmZyazIOpb48MbjEXemUZxCbNb5WT19ARLWlIRF1HgR1LyJ/7cAdgJJkq9Ph5lXFWovjZepKlKJ9ds4AtCrehKau6a+f6v1AUmTdHcZZdRrwD58qcfS2kcUMUAGmWXRBwtTms51AIWWB6mjhhPNkaNo/L4UWZdALMPaElQ3JvBXeRO82lMLND1v6BtK/DkPlza6mpf7M8DTE1iUITiq2d7xQxeGNxL0/bvX1+hc3CYbuDj75rRzynl0yAoj4G14JTKWfKN0L45r+zcecNGodg8vjXi7ugveckH46ABs8VjVl+SMcqJ6gsoYdaM/RoIVYEfiqZOQ77E4jrsxu+8EaMt1Qx+gUkCF0TndocEl4DJBLuD2kleuT/BcFYeYdGV6A7pZ/YoNSHime7P7/mYHaS5JUYUTIA2yduEnkw3mWXkGpAHnAQ==
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)(366004)(136003)(346002)(396003)(230922051799003)(1800799009)(451199024)(186009)(64100799003)(31686004)(4326008)(8936002)(8676002)(5660300002)(2906002)(41300700001)(26005)(83380400001)(53546011)(6506007)(38100700002)(6512007)(2616005)(86362001)(36756003)(31696002)(66476007)(66556008)(478600001)(6486002)(966005)(66946007)(316002)(6916009)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?NE10ZmRnSmN5Yy9xZk1uVGF6WVgxbUFZcGZVcjJIdUVjWEZoZmxoMjRqVEwz?=
 =?utf-8?B?MmVCQ0JUSVR0QTlhMzJaSGJpUlNldFc3eHBJZjJ6Uy9OUDBxZXY3ZTRYdXl4?=
 =?utf-8?B?ZGlwczQ0VVpLT1RzSUpxOEZmSFhjcXUxak5aTm1UWms3SDZmbllqTVZPYklk?=
 =?utf-8?B?ZXJ1M0wxV3Bxd25wTWR3SEFtUm45UUNKU3RjbGNkb3ZveGVMMmtOR0hkV05O?=
 =?utf-8?B?SUtOVGNVZG5scEQzU0JjWkRNYmFlejl5dE8xaVljQWtSdDVncUhQMzBia21w?=
 =?utf-8?B?azlQdWJxclY4bFdYOFc4NUkrV3U1MWcrYThNUHAxV05kNk9PdFhGMERDbVl1?=
 =?utf-8?B?ZFFUMkZud1UzQ0RwRU1WVVFtcGRrQndFd21PUnp2NEFsTlBNenV2WGJCZG5P?=
 =?utf-8?B?TE9RT2RxbHRudG1EeTIrYXhtTWJRZHNXdVkwRkhKM09NbFhQZC92MXdpSnFt?=
 =?utf-8?B?OEM4bytZZEVsQlNIL29sbWc3THFhOXgvQXRGREw5QTJIMGV2Ty9HWG5QYmFX?=
 =?utf-8?B?U0JIeG9LZU1qTTdLOVUyWGtiREpTeUpYTVlEN3ZWTWxwRkxNaVhPTElzazE5?=
 =?utf-8?B?UzhjLzZPcktrZlBUY2lJSXNNV1RyS29LVmFMNnFhajV0cmFrenQxNFpwZ3BE?=
 =?utf-8?B?QWk5dkFqS0NnYjFibHJHbXM0eWd3R3ZRZ1VMaTgrTHlFRHgwbCs4bWxjbG1w?=
 =?utf-8?B?eUNRMUdmNWFRb0VXYVQvL1d5Y2Z6Y1ZSUzB6OGNiMjg4NmxoK1o1a0JVQlc2?=
 =?utf-8?B?S3Zwb3N2TGM0TE1iTytjbkpYVzFDNWpZTURnMlJyQXFsMXdHR3U1K25pOUVC?=
 =?utf-8?B?SStOYUlPQWVsc2p1UXRWb3ZraWxOY0F1dW96L2E3Kzk3RDN5ci91emtqNjRH?=
 =?utf-8?B?ME5wNitsMUx6Z3pjNWdIeWlXenducXhiY0dwd3Q2MGJia2x3bDQzNWIzTFd2?=
 =?utf-8?B?ZWs5SUx4SktTWjhzcFVWbjhXajRFSHUrUmNKbmRYOFBiNXRrS2ROenJpSklx?=
 =?utf-8?B?a0QzT0JqbVYxRTZHdDhrSVhXYTBGSnd2T01IeFZRRWZUZnp1ZFkwQlNkSTJn?=
 =?utf-8?B?WjFLYkRlOUV3WENJejB5bkVJNjc1K3pBdmdEcjFVTUVyVWdnNEEyKzJERmxa?=
 =?utf-8?B?T245aHJ2Zzhhb0FBOTJrRHI5MmlQaGZBNFQ0b2xyRTFnN09lTUlWNnErZ3Ji?=
 =?utf-8?B?dE0xVHZSdUl1bWdZQVIwdHRrUXQ0S0FwRDRZTU9hSGdVN1VwaXFia0NjQjdZ?=
 =?utf-8?B?MXlFWTVzN3RDVTlnWHF6SHFpVzNhTm13Qk1wcklhSW1XODRTQjBMREJXbStX?=
 =?utf-8?B?dXpxTURyNVVIMit5NWd2NFVXbWZ6T3NOOFJVdThHNWlFMTBoNHlNdkhzZnVp?=
 =?utf-8?B?TUtMeGRub2tLWk4rczBtREM0cU5jUW9oZlErZDJlQVpTaFNnMWJyZExXRFFu?=
 =?utf-8?B?R1lvSUFkR1JIOFY4S3huWEg2NDBMSURIMDJPaGNWMmdxQjR3bDRLMVJGUzZI?=
 =?utf-8?B?SHdBMFpWbCs2L21ramZDZXRtbGtwSzRWY04rTWwySUxuMnVTL253dDFCM0Mz?=
 =?utf-8?B?ejlQL2VmUy84dis1YWJUUVErckJ0OWMyaXA3MGhJMi90QWJ1WnI1SCt6QkEv?=
 =?utf-8?B?a2cybEdKWVpVY3lhTTNCQmE5VkVxK0dCNFRobnJiaTFSZ25OcXpFREFHMlVv?=
 =?utf-8?B?WVJKOUw4ZmhhcnNmdDlSQTNvRTJBdXpuVmQ1VmJuZUp5eUVmWVA5K2xJMWdQ?=
 =?utf-8?B?eXczSHA3U3RZR0o1Ry95RFplREpmdkx3bFh4R3MvdmFaRGF0L1BETVdEcUVZ?=
 =?utf-8?B?ajZKWkcyVnVWUnVoTmR6MVphWlN1UW80dm1hNExwOUpmOEYrVkcrVjFQWGxm?=
 =?utf-8?B?Y25yNUUya3ZRZTA1cEViQ1JUSWFncmIxVml6MldLckNTeEdsbjVaT01nQ1J5?=
 =?utf-8?B?QlVHaytIYy9MV1lkQlB0YldGcEliclh6NFdvQUE4WlhEaURkL081NllDRG5X?=
 =?utf-8?B?UEt3K0taWUJGcEIzenF4UFJaeHZhMDhFQzdLdUxlelpXb0d1T1FwQ0M4N1px?=
 =?utf-8?B?MWVLVXRFc2c0ZUlOK2N0ejBYR0hGTG01V0JvNFEzZTNIVnFSZE5lOEZ0Uktz?=
 =?utf-8?Q?Ljrf1vsmjIQCLacaKEa4wlIkR?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 00377904-e8a3-4d5e-7ca1-08dbd39ede77
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Oct 2023 08:05:49.4660
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: ehfJoqlMC3ZdG/xMDchY/NLakAeMeSJ6VK20eGzwqzw/U0q0uK1+tjx4iBCkJYUlc4kpI7/G3DEU8Ewjv9cbkw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VE1PR04MB7312

On 23.10.2023 09:52, Roger Pau Monné wrote:
> On Fri, Oct 20, 2023 at 04:16:16PM +0100, Andrew Cooper wrote:
>> On 20/10/2023 3:50 pm, Durrant, Paul wrote:
>>> On 20/10/2023 14:37, David Woodhouse wrote:
>>> [snip]
>>>>>
>>>>> [0]
>>>>> https://elixir.bootlin.com/linux/latest/source/drivers/tty/hvc/hvc_xen.c#L258
>>>>
>>>> I'm not convinced I believe what the comment says there about evtchn 0
>>>> being theoretically valid. I don't believe zero is a valid evtchn#, is
>>>> it?
>>>
>>> gfn 0 might be valid, but I'm also pretty sure evtchn 0 is not valid.
>>
>> GFN 0 very much is valid.
>>
>> evtchn 0 OTOH is explicitly not valid.  From evtchn_init():
>>
>>     evtchn_from_port(d, 0)->state = ECS_RESERVED;
>>
>>
>> However, the fields being 0 doesn't mean not available.  That's the
>> signal to saying "not connected yet", because that's what dom0 gets
>> before xenconsoled starts up.
> 
> Someone asked me the same a while back, and IIRC we don't state
> anywhere in the public headers that event channel 0 is reserved,
> however that has always? been part of the implementation.
> 
> If we intend this to be reliable, we should add a define to the public
> headers in order to signal that 0 will always be reserved.

I agree a comment should have been there; it's not clear to me what
useful #define we could add.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Oct 23 08:14:44 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 08:14:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621058.967068 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quq57-0003GO-ML; Mon, 23 Oct 2023 08:14:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621058.967068; Mon, 23 Oct 2023 08: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 1quq57-0003GH-Ih; Mon, 23 Oct 2023 08:14:37 +0000
Received: by outflank-mailman (input) for mailman id 621058;
 Mon, 23 Oct 2023 08: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=t4BY=GF=suse.com=jgross@srs-se1.protection.inumbo.net>)
 id 1quq55-0003GB-VH
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 08:14:35 +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 32b90142-717c-11ee-9b0e-b553b5be7939;
 Mon, 23 Oct 2023 10:14:33 +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 E9B9921AB7;
 Mon, 23 Oct 2023 08:14:32 +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 9A098132FD;
 Mon, 23 Oct 2023 08:14:32 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap2.suse-dmz.suse.de with ESMTPSA id VCTkI2grNmWYEwAAMHmgww
 (envelope-from <jgross@suse.com>); Mon, 23 Oct 2023 08:14: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: 32b90142-717c-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1698048872; 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=4FfvOpwjlog36ywUzg84FfOXKK9Om8G3lpLP62Xjiyc=;
	b=RyYGDJJy3hr01gEeJ76elvdTSyYsQXk/KJ33PHoon8GXzge2OWXmuTvswUfsGxeQ7ik0LY
	JE+lnLTaQrdwRdiOfZqaq5a1YE6IrO5ekchYq4lC41jD6CuVuGzqqiguigATmoByJgwGO3
	VCa+lGygQdFnvlfnwzpYGfWFOMMy0CA=
Message-ID: <195567e6-a654-44f5-877c-0fc910f1f92b@suse.com>
Date: Mon, 23 Oct 2023 10:14:32 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v2 3/3] hvc/xen: fix console unplug
Content-Language: en-US
To: David Woodhouse <dwmw2@infradead.org>, xen-devel@lists.xenproject.org
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
 Jiri Slaby <jirislaby@kernel.org>, Roger Pau Monne <roger.pau@citrix.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Dawei Li <set_pte_at@outlook.com>, linuxppc-dev@lists.ozlabs.org,
 linux-kernel@vger.kernel.org, linux-serial@vger.kernel.org,
 Paul Durrant <paul@xen.org>
References: <20231020161529.355083-1-dwmw2@infradead.org>
 <20231020161529.355083-4-dwmw2@infradead.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: <20231020161529.355083-4-dwmw2@infradead.org>
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature";
 boundary="------------UjcAWEH3Pph75UgDRNONF4yc"
Authentication-Results: smtp-out1.suse.de;
	none
X-Spam-Level: 
X-Spam-Score: -7.79
X-Spamd-Result: default: False [-7.79 / 50.00];
	 ARC_NA(0.00)[];
	 RCVD_VIA_SMTP_AUTH(0.00)[];
	 FREEMAIL_CC(0.00)[linuxfoundation.org,kernel.org,citrix.com,outlook.com,lists.ozlabs.org,vger.kernel.org,xen.org];
	 XM_UA_NO_VERSION(0.01)[];
	 FROM_HAS_DN(0.00)[];
	 TO_DN_SOME(0.00)[];
	 TO_MATCH_ENVRCPT_ALL(0.00)[];
	 FREEMAIL_ENVRCPT(0.00)[outlook.com];
	 MIME_GOOD(-0.20)[multipart/signed,multipart/mixed,text/plain];
	 HAS_ATTACHMENT(0.00)[];
	 NEURAL_HAM_LONG(-3.00)[-1.000];
	 MIME_BASE64_TEXT_BOGUS(1.00)[];
	 BAYES_HAM(-2.80)[99.14%];
	 DKIM_SIGNED(0.00)[suse.com:s=susede1];
	 NEURAL_HAM_SHORT(-1.00)[-1.000];
	 MIME_BASE64_TEXT(0.10)[];
	 RCPT_COUNT_SEVEN(0.00)[11];
	 SIGNED_PGP(-2.00)[];
	 FROM_EQ_ENVFROM(0.00)[];
	 MIME_TRACE(0.00)[0:+,1:+,2:+,3:+,4:~,5:~];
	 RCVD_COUNT_TWO(0.00)[2];
	 RCVD_TLS_ALL(0.00)[];
	 MID_RHS_MATCH_FROM(0.00)[];
	 MIME_UNKNOWN(0.10)[application/pgp-keys]
X-Spam-Flag: NO

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--------------UjcAWEH3Pph75UgDRNONF4yc
Content-Type: multipart/mixed; boundary="------------78N371mFYmc0rYLCRFa1cYpX";
 protected-headers="v1"
From: Juergen Gross <jgross@suse.com>
To: David Woodhouse <dwmw2@infradead.org>, xen-devel@lists.xenproject.org
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
 Jiri Slaby <jirislaby@kernel.org>, Roger Pau Monne <roger.pau@citrix.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Dawei Li <set_pte_at@outlook.com>, linuxppc-dev@lists.ozlabs.org,
 linux-kernel@vger.kernel.org, linux-serial@vger.kernel.org,
 Paul Durrant <paul@xen.org>
Message-ID: <195567e6-a654-44f5-877c-0fc910f1f92b@suse.com>
Subject: Re: [PATCH v2 3/3] hvc/xen: fix console unplug
References: <20231020161529.355083-1-dwmw2@infradead.org>
 <20231020161529.355083-4-dwmw2@infradead.org>
In-Reply-To: <20231020161529.355083-4-dwmw2@infradead.org>

--------------78N371mFYmc0rYLCRFa1cYpX
Content-Type: multipart/mixed; boundary="------------qWh3Pz1ShynpoG0MdqbauXYH"

--------------qWh3Pz1ShynpoG0MdqbauXYH
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: base64

T24gMjAuMTAuMjMgMTg6MTUsIERhdmlkIFdvb2Rob3VzZSB3cm90ZToNCj4gRnJvbTogRGF2
aWQgV29vZGhvdXNlIDxkd213QGFtYXpvbi5jby51az4NCj4gDQo+IE9uIHVucGx1ZyBvZiBh
IFhlbiBjb25zb2xlLCB4ZW5jb25zX2Rpc2Nvbm5lY3RfYmFja2VuZCgpIHVuY29uZGl0aW9u
YWxseQ0KPiBjYWxscyBmcmVlX2lycSgpIHZpYSB1bmJpbmRfZnJvbV9pcnFoYW5kbGVyKCks
IGNhdXNpbmcgYSB3YXJuaW5nIG9mDQo+IGZyZWVpbmcgYW4gYWxyZWFkeS1mcmVlIElSUToN
Cj4gDQo+IChxZW11KSBkZXZpY2VfZGVsIGNvbjENCj4gWyAgIDMyLjA1MDkxOV0gLS0tLS0t
LS0tLS0tWyBjdXQgaGVyZSBdLS0tLS0tLS0tLS0tDQo+IFsgICAzMi4wNTA5NDJdIFRyeWlu
ZyB0byBmcmVlIGFscmVhZHktZnJlZSBJUlEgMzMNCj4gWyAgIDMyLjA1MDk5MF0gV0FSTklO
RzogQ1BVOiAwIFBJRDogNTEgYXQga2VybmVsL2lycS9tYW5hZ2UuYzoxODk1IF9fZnJlZV9p
cnErMHgxZDQvMHgzMzANCj4gDQo+IEl0IHNob3VsZCBiZSB1c2luZyBldnRjaG5fcHV0KCkg
dG8gdGVhciBkb3duIHRoZSBldmVudCBjaGFubmVsIGJpbmRpbmcsDQo+IGFuZCBsZXQgdGhl
IExpbnV4IElSUSBzaWRlIG9mIGl0IGJlIGhhbmRsZWQgYnkgbm90aWZpZXJfZGVsX2lycSgp
IHRocm91Z2gNCj4gdGhlIEhWQyBjb2RlLg0KPiANCj4gT24gd2hpY2ggdG9waWMuLi4geGVu
Y29uc19kaXNjb25uZWN0X2JhY2tlbmQoKSBzaG91bGQgY2FsbCBodmNfcmVtb3ZlKCkNCj4g
KmZpcnN0KiwgcmF0aGVyIHRoYW4gdGVhcmluZyBkb3duIHRoZSBldmVudCBjaGFubmVsIGFu
ZCBncmFudCBtYXBwaW5nDQo+IHdoaWxlIHRoZXkgYXJlIGluIHVzZS4gQW5kIHRoZW4gdGhl
IElSUSBpcyBndWFyYW50ZWVkIHRvIGJlIGZyZWVkIGJ5DQo+IHRoZSB0aW1lIGl0J3MgdG9y
biBkb3duIGJ5IGV2dGNobl9wdXQoKS4NCj4gDQo+IFNpbmNlIGV2dGNobl9wdXQoKSBhbHNv
IGNsb3NlcyB0aGUgYWN0dWFsIGV2ZW50IGNoYW5uZWwsIGF2b2lkIGNhbGxpbmcNCj4geGVu
YnVzX2ZyZWVfZXZ0Y2huKCkgZXhjZXB0IGluIHRoZSBmYWlsdXJlIHBhdGggd2hlcmUgdGhl
IElSUSB3YXMgbm90DQo+IHN1Y2Nlc3NmdWxseSBzZXQgdXAuDQo+IA0KPiBIb3dldmVyLCBj
YWxsaW5nIGh2Y19yZW1vdmUoKSBhdCB0aGUgc3RhcnQgb2YgeGVuY29uc19kaXNjb25uZWN0
X2JhY2tlbmQoKQ0KPiBzdGlsbCBpc24ndCBlYXJseSBlbm91Z2guIEFuIHVucGx1ZyByZXF1
ZXN0IGlzIGluZGljYXRlZCBieSB0aGUgYmFja2VuZA0KPiBzZXR0aW5nIGl0cyBzdGF0ZSB0
byBYZW5idXNTdGF0ZUNsb3NpbmcsIHdoaWNoIHRyaWdnZXJzIGEgbm90aWZpY2F0aW9uDQo+
IHRvIHhlbmNvbnNfYmFja2VuZF9jaGFuZ2VkKCksIHdoaWNoLi4uIGRvZXMgbm90aGluZyBl
eGNlcHQgc2V0IGl0cyBvd24NCj4gZnJvbnRlbmQgc3RhdGUgZGlyZWN0bHkgdG8gWGVuYnVz
U3RhdGVDbG9zZWQgd2l0aG91dCAqYWN0dWFsbHkqIHRlYXJpbmcNCj4gZG93biB0aGUgSFZD
IGRldmljZSBvciwgeW91IGtub3csIG1ha2luZyBzdXJlIGl0IGlzbid0IGFjdGl2ZWx5IGlu
IHVzZS4NCj4gDQo+IFNvIHRoZSBiYWNrZW5kIHNlZXMgdGhlIGd1ZXN0IGZyb250ZW5kIHNl
dCBpdHMgc3RhdGUgdG8gWGVuYnVzU3RhdGVDbG9zZWQNCj4gYW5kIHN0b3BzIHNlcnZpY2lu
ZyB0aGUgaW50ZXJydXB0Li4uIGFuZCB0aGUgZ3Vlc3Qgc3BpbnMgZm9yIGV2ZXIgaW4gdGhl
DQo+IGRvbVVfd3JpdGVfY29uc29sZSgpIGZ1bmN0aW9uIHdhaXRpbmcgZm9yIHRoZSByaW5n
IHRvIGRyYWluLg0KPiANCj4gRml4IHRoYXQgb25lIGJ5IGNhbGxpbmcgaHZjX3JlbW92ZSgp
IGZyb20geGVuY29uc19iYWNrZW5kX2NoYW5nZWQoKSBiZWZvcmUNCj4gc2lnbmFsbGluZyB0
byB0aGUgYmFja2VuZCB0aGF0IGl0J3MgT0sgdG8gcHJvY2VlZCB3aXRoIHRoZSByZW1vdmFs
Lg0KPiANCj4gVGVzdGVkIHdpdGggJ2RkIGlmPS9kZXYvemVybyBvZj0vZGV2L2h2YzEnIHdo
aWxlIHRlbGxpbmcgUWVtdSB0byByZW1vdmUNCj4gdGhlIGNvbnNvbGUgZGV2aWNlLg0KPiAN
Cj4gU2lnbmVkLW9mZi1ieTogRGF2aWQgV29vZGhvdXNlIDxkd213QGFtYXpvbi5jby51az4N
Cj4gQ2M6IHN0YWJsZUB2Z2VyLmtlcm5lbC5vcmcNCg0KUmV2aWV3ZWQtYnk6IEp1ZXJnZW4g
R3Jvc3MgPGpncm9zc0BzdXNlLmNvbT4NCg0KDQpKdWVyZ2VuDQoNCg==
--------------qWh3Pz1ShynpoG0MdqbauXYH
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-----

--------------qWh3Pz1ShynpoG0MdqbauXYH--

--------------78N371mFYmc0rYLCRFa1cYpX--

--------------UjcAWEH3Pph75UgDRNONF4yc
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/Ey8FAmU2K2gFAwAAAAAACgkQsN6d1ii/Ey/r
hwf/R5NPrDHGszvsupV8nUShAm59eGETFsI1EB/AvEh0WDprobcPhX/2f7r/f9XEEWRcuLWHKq73
6mTUYHKuOE7X2/qvSFgBsjSRo6y9oJObTjGVbMjVi8EapETjuUE3z5rvKctHTOjz3hJ/f+ZcDPVS
VmyRNR8VpYNp1KLeX+tUqbHyAuspCxARVXX5cMO5QCCrgzuvtCkQGWfdtXB4G2i31Q2Ky80+dvCN
i5uL+ihmFqTqlqBhXsxswTdfOylQgly/bYwVpoE54zJZpyRgquYhY6CRrqCddVGbdUj94GUpjgYb
OZdOitqBQ0qM2bcNUs2ej0NVV9tFl3sQ5bsTleiB9g==
=yJGa
-----END PGP SIGNATURE-----

--------------UjcAWEH3Pph75UgDRNONF4yc--


From xen-devel-bounces@lists.xenproject.org Mon Oct 23 08:17:15 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 08:17:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621060.967077 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quq7e-000421-3E; Mon, 23 Oct 2023 08:17:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621060.967077; Mon, 23 Oct 2023 08:17: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 1quq7e-00041u-0P; Mon, 23 Oct 2023 08:17:14 +0000
Received: by outflank-mailman (input) for mailman id 621060;
 Mon, 23 Oct 2023 08:17: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=OVTz=GF=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1quq7d-00041o-8j
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 08:17:13 +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 912cfb0b-717c-11ee-98d5-6d05b1d4d9a1;
 Mon, 23 Oct 2023 10:17:12 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PA4PR04MB9638.eurprd04.prod.outlook.com (2603:10a6:102:273::20)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.11; Mon, 23 Oct
 2023 08:17:09 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6933.011; Mon, 23 Oct 2023
 08: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>
X-Inumbo-ID: 912cfb0b-717c-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Xpfu3Q2Q34072HEOnP+sLAazZl8pJGK18qrLezJPJwZvOhQMBMmE25KI24Wgk0MU3EKjmGVaRvJoXvHjEG73SJqsXwnbYyACe9XBHuik1btT+Qk/vNQCdt7IyVl2wTmRWgOgWRV1mt2rAsOgPcA2lFHSYl4kv3zjEHdv4dDBWlcdeMiHHrZqTW/3MzdzhVR8Vlw608Vdm3JKKNaFd+/z83y/6OeBY6f8l2yTOT7zs9Yld8zjX7DgifiuxyRR2JMNp6svVneajqSSRZBPHBcFPKUdgpgx2oJLK5tkGQj7Fnrd/tA0Un0CiJuiB9DmLT0WkI0xIS4cYnnoSDki19+l1g==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=l42HPtITSB6Jhs/9RaNRTCiOQ9s5v32+L7ZkZtXXPbM=;
 b=dueIG0Fp/BC6U5hPIeBhCsHZdXbS78KD/EnZmk55wP+himkpXA5ItJ17TBqDaEF41Ue4EWb1GfJ620wgzXrGHTVTK+dw3uegz9wmT4Susd/EkBk77WmtXixoj18Ozo5duloKwfievEfcz3Qd/+HFRyQX5DNhWWMPwnXNhA5YZl4ffcf33QcHIaarT0QxxLvX412QWy59zcIVo/3SkT8GAS9aSwadIXVVxb833xyQAm+ZPEQ4kglzgH1rbsJr3iNbqhu9rk/pReILxmWgM7aB/TYhCw35wXUt6KsLed2hJRt+1R7mnJHSiP+peJEEvduPbh9OZ1yv1JBeivsiaZHA1w==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=l42HPtITSB6Jhs/9RaNRTCiOQ9s5v32+L7ZkZtXXPbM=;
 b=TT2QRpdBiuPwVarMJhY++EUlzzfrRfxnAVyDi/kppwNg3WjTOGRe4Krh1/uv83tG6cWqhRsnLmaVqRgCWKWNNL6Dep7wlnvOGaQ87cEp8P78k+h8ny5i/JRpxar382mnO3p0Icdyn/k0mNsD1f+/5qz9NplTDaJwSuDYyxj6/rhHpc549U0n3Kl505AdcbQlclBs1rY0c2FRHeP6vjqmyIwT1v5g/I9G7hN7H/vfPRcRR9OwVaFhxDJnsqDl7tc3WP1cEUIynlHVyQqo7w7439qR8q1tWdLZ14h/P6syxOECuKzmslntV++AVey99Cn5Rufs1FssuLwQ2cI1lWptKg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <23f2682f-acc4-20aa-21fc-644a3c1141b5@suse.com>
Date: Mon, 23 Oct 2023 10:17:07 +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][for-4.19 v2] xen: Add SAF deviations for MISRA C:2012
 Rule 7.1
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.cooper3@citrix.com, roger.pau@citrix.com,
 Simone Ballarin <simone.ballarin@bugseng.com>,
 Doug Goldstein <cardoe@cardoe.com>, George Dunlap
 <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Wei Liu <wl@xen.org>, xen-devel@lists.xenproject.org
References: <a9c52c943380f2c35f0a6ccab8215c03e87c99dc.1697712857.git.nicola.vetrini@bugseng.com>
 <de2b666e-ca48-58d2-73eb-5adc797f818e@suse.com>
 <d879b8e4689e51131f081edcb3b2abe6@bugseng.com>
 <dd58e1cb-8f17-986d-f4f9-f39e998e05a0@suse.com>
 <5b1cd4fba12664f2ef49bcc2eb198e31@bugseng.com>
 <d83c024b-05a9-5298-9e43-e693675c2da5@suse.com>
 <6a90edf81f410db8069526228de75d7e@bugseng.com>
 <7d7ebafa-9751-bd0a-c47a-1894d9edadf5@suse.com>
 <800b2c809829942210323804b6778c40@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <800b2c809829942210323804b6778c40@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR3P281CA0150.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:95::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_|PA4PR04MB9638:EE_
X-MS-Office365-Filtering-Correlation-Id: ed9aec4c-3f04-4cb0-47e2-08dbd3a073eb
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	RGyYpqzYHkyyB612DOn0PVCk3H3E1q9y5uwAIej5xRtzK4uan/4PBEtGdslymJIG33P+XpoqcQDoaJlUy7YCtO6jIca/vw/HJZiW+9J4zbDqOrEohj64e40a5n6qlLFguUoFhDuI/aIAZWD+hvNcgTQpQHqNaotLT/F/JwOLSVjF+L8a9W4RcGcg34ZytkHGmYecfvKOiDLazCabMlwP8N2L0Ezwc2aje5gc7yYbB7sqWB28I7HI6uFjJbzFE9edGt8KCUhD0VrpaezhC/saPw6zGktyWKCFzrsFtTuKaCKSPPFkUemWVzyEp78mIp2DARf2FhBNk5bc8fFnAcHge1U6yZunHmvglprh/nDr+G9cQCBw27XRi4jjMVoO3iiKTwMwUPjHPu1VKhuxzfALHNAd7AhleGaOgB7zMFWCg1cY6GMWONzFMEgv0TzBqYHVoRMlRcuIWmnUZorrJDMW5OpLtf+Lreh87pw+/wb1oJy7Nzomi/6xZEMuMkxMmtjSQmNYdkEDS+II6FqDiJwJ75BdlokpjpxbMSulhgc3bdcIFKmgOjoL5wi2H1adDJLG3WX1bxSKIucT5E7lCCZVLNjXwJKK33kMkBwehgiwYENo7n/7JpaEILREsGbCQBIshTsIu0jDOmNz597Ae7OnkA==
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)(39860400002)(346002)(366004)(136003)(230922051799003)(64100799003)(451199024)(1800799009)(186009)(31686004)(86362001)(2616005)(38100700002)(83380400001)(2906002)(5660300002)(36756003)(31696002)(7416002)(41300700001)(26005)(6512007)(53546011)(6506007)(478600001)(6486002)(4326008)(66476007)(66556008)(66946007)(8936002)(54906003)(8676002)(316002)(6916009)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?Z09JRlNQTGJ4U3FsUWNzWlNFLzFTeXFwWjc0NDVZb3ZyRXZiay9VQm5zUy9P?=
 =?utf-8?B?eGl0QXZIN0lTWkFMOHNUYzdRWlpFeUp2QTNzMnFDWWZsRlY2NmJ6SGRXL011?=
 =?utf-8?B?ejBlWEljWWJDZVFnL2N3S25EZ3Q0Zkp3ajJBdlZxTlZ6NkRvTFJLK2NjTklX?=
 =?utf-8?B?SWhUU2ZTbmdlYkFSMFE3ajh4ZWdSUUh0dzd5MXRibkViVjNON2pCbHd5Q1VY?=
 =?utf-8?B?RUFnV1kwMWNrbmN1R2R3NW5qZjlySmY5TWhhMGFxMW15aTBXUHVmNTdwZEhm?=
 =?utf-8?B?YzRCamtlQ2xIWnhtZmlhYU9JclRRTGZtWmd1Zy9rRUQ4MlduQlpITzFqWE02?=
 =?utf-8?B?a25wNzVUQ1IzWlAydHZYb1kyM1RtOUVyemxiUlpOb3hBSXUvMWh4aVhyU3Nj?=
 =?utf-8?B?YXpTb1drcHhibklHa2l4c0tWaWxpc05jOEgzdzVBN1pscnFMcG51VGI4TkZa?=
 =?utf-8?B?QUNwbEhmRWcyUGhVMzhHeHBONHNYNTcxbjVFakN6dU41VnliVHZ1OHpjOFVK?=
 =?utf-8?B?MnEyVnQ3NW1hUkpEQ0dMbWxwaXIwUHdzQStNcVRVRkNnVW1EMDU4OHNoUHdy?=
 =?utf-8?B?aytxalk0NjVRTnpzNHpRNVFIRXQyamFDZm9CY2Y5S0kvaXZCc1FObjJMWDd4?=
 =?utf-8?B?bjNHMDQ5TGVhV2t0M0ROT0xoTnNYKytTWjN4R3diWERhMmw0YmV4eFRFa0VS?=
 =?utf-8?B?N2ZteG41eDM2NjBiUHdwbjZmUXBvYXdyWnRQbzdTaXB6VXNkUzBJbXhidGsy?=
 =?utf-8?B?MWROZlE2UFFZdmdZdVoxQndRV0xzZ3lCcGVkNmVRcXgxL3lNemNEYnJyTWxO?=
 =?utf-8?B?UzBoTlJaTVRmQ1pNQlFZL20zYWZGeWkrM1Zrdnhwdm1mbGd6VW1IWTN0RGRW?=
 =?utf-8?B?YkFZUHFiRVc1THVrZXZielV1aWhtaXUvMlRYajVSSERoci9wOGw4azZDQlVI?=
 =?utf-8?B?U056M0d4cHdNZUtOak5ta3RsT0dlR2QyN2pnNFovTmYwajJiVTJuOUVDMWhX?=
 =?utf-8?B?VU9neHpTNVVWY2FvMXNDZ1M2S0lvM3p1MlZUQndlU282V0llUHZOKzFRVU44?=
 =?utf-8?B?OFpEdFd6eUV5RitBMVJ0dm1zYUtUaTJKUDJnL24zWHd2eW1uZDJDOEVWUU5F?=
 =?utf-8?B?aDVNaDJTb1lPLzJyYmpFanpkc1ZmdldHVStrTE9PQVVMd0ZFRFFYcUVPakc1?=
 =?utf-8?B?bVRaU3hTL3NnRXZNNlluK0RWMzg0aVdDaEp2ak5TNVFzRURvTU5rbEtqSkpH?=
 =?utf-8?B?UmhWNE5xa2hSTkxuanBWRHRiZUZ4QU5Eeklnci82S3BEZG9FY3ZTUUZTZGk1?=
 =?utf-8?B?VmUyVEFjejh6WHhUZ1QrOFVZN01VbGp1VTFDVmdWTDcwWXFDalhEUTJjRkpu?=
 =?utf-8?B?NmhlZ09pUGZMSndweGhUdS9CZ29DdjJBZE13ZGFkZkJ6N2ZuU3lJOTV5L1JM?=
 =?utf-8?B?YllUd1V3ak84MkkxV1BVYkVUVmlHYlB5Z0xJUVltZ3c3R1NIejVUSlF0d3Rz?=
 =?utf-8?B?aFZUNnVuYU1waitQblM4ZUR5dTZZQkZrWC9wbXh0WTZQbjdFa3V3aHlseTRV?=
 =?utf-8?B?aEtRUXRtM2IrYVlSbDViTWdIbU02Ky9YOUl1djFqN25xS244RE1FOUF3WFo2?=
 =?utf-8?B?UWoycExwdE1RM1l4TXJ3enMwMnlDNWtvTi9xMG1OR05WMjViUTl6dXlJVHJ5?=
 =?utf-8?B?d3hta1FTb0dzM0ttMFUvQ3hrQ2txTGptVHNxMHdMd2ZTWVNhenZpakkwZFYy?=
 =?utf-8?B?VnB0V3JheUU0YWM5MWdnWE1ET2c4VG00MDViajhQays4dWd3QndnVjVnczMr?=
 =?utf-8?B?ZFRiN1VTMkpWdG82Z2MvaDhiTjIvaHFPcm95amphVnVJVFdsam9NUzN1eGFS?=
 =?utf-8?B?UHFvbUcvbUpNQkEybytpV1JYdVpTYVJUVllKUnFmOHFTRnhFOEJUZnNUVlhK?=
 =?utf-8?B?ZnZQSmdQOGZLamxoc1kyMWNraW5rSG9VNUhkTnVUcHNObW9scmx3UGM3U1Av?=
 =?utf-8?B?L3BDZmYzR205eDFlODZWWEQrUWlmOVNkTFNlZnhlRjdEVlI3RFdUQWhiYktn?=
 =?utf-8?B?aURsSGRzL25NZGc3K0hCVDBPRFRTVm5VcWlGdzJaZHc1c1ZJWHVsb3FXK2lC?=
 =?utf-8?Q?Y9tnaf48ohHHQdVm6OrWdTgQq?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: ed9aec4c-3f04-4cb0-47e2-08dbd3a073eb
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Oct 2023 08:17:09.7116
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: eCzbUjRR6lb03Jti4Hhp0yyQsN+Etz+DUMV16C0wENcsTH/dJh+EGc0QcdUMSp6XqBmiJJa2L67+CELLV3U+nw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR04MB9638

On 23.10.2023 10:03, Nicola Vetrini wrote:
> On 23/10/2023 08:34, Jan Beulich wrote:
>> On 20.10.2023 16:58, Nicola Vetrini wrote:
>>> On 20/10/2023 15:24, Jan Beulich wrote:
>>>> On 20.10.2023 12:33, Nicola Vetrini wrote:
>>>>> On 20/10/2023 08:38, Jan Beulich wrote:
>>>>>> On 19.10.2023 18:34, Nicola Vetrini wrote:
>>>>>>> On 19/10/2023 17:57, Jan Beulich wrote:
>>>>>>>> On 19.10.2023 13:04, Nicola Vetrini wrote:
>>>>>>>>> --- a/automation/eclair_analysis/ECLAIR/deviations.ecl
>>>>>>>>> +++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
>>>>>>>>> @@ -85,10 +85,10 @@ conform to the directive."
>>>>>>>>>  # Series 7.
>>>>>>>>>  #
>>>>>>>>>
>>>>>>>>> --doc_begin="Usage of the following constants is safe, since 
>>>>>>>>> they
>>>>>>>>> are
>>>>>>>>> given as-is
>>>>>>>>> -in the inflate algorithm specification and there is therefore 
>>>>>>>>> no
>>>>>>>>> risk
>>>>>>>>> of them
>>>>>>>>> -being interpreted as decimal constants."
>>>>>>>>> --config=MC3R1.R7.1,literals={safe,
>>>>>>>>> "^0(007|37|070|213|236|300|321|330|331|332|333|334|335|337|371)$"}
>>>>>>>>> +-doc_begin="Octal constants used as arguments to macro 
>>>>>>>>> INSTR_ENC
>>>>>>>>> or
>>>>>>>>> MASK_EXTR
>>>>>>>>> +can be used, because they appear as is in specifications,
>>>>>>>>> manuals,
>>>>>>>>> and
>>>>>>>>> +algorithm descriptions."
>>>>>>>>> +-config=MC3R1.R7.1,reports+={safe,
>>>>>>>>> "any_area(any_loc(any_exp(macro(^(INSTR_ENC|MASK_EXTR)$))))"}
>>>>>>>>
>>>>>>>> INSTR_ENC() is a local macro in x86'es AMD SVM code. A macro of 
>>>>>>>> the
>>>>>>>> same
>>>>>>>> name could imo be introduced without issues in, say, Arm code. 
>>>>>>>> The
>>>>>>>> above
>>>>>>>> would then needlessly suppress findings there, aiui.
>>>>>>>>
>>>>>>>> MASK_EXTR() otoh is a global macro which ise used for various
>>>>>>>> purposes.
>>>>>>>> Excluding checking there is imo going too far, too.
>>>>>>>
>>>>>>> I should have thought about it; I can simply enforce the deviation
>>>>>>> to
>>>>>>> additionally match
>>>>>>> only a specific file for each of the macros.
>>>>>>
>>>>>> That'll work for INSTR_ENC(), but not for MASK_EXTR().
>>>>>>
>>>>>
>>>>> Why? What I'm deviating is reports due to octal constants used in
>>>>> expressions
>>>>> that contain MASK_EXTR in their expansion if and only if these are
>>>>> located in the
>>>>> file svm.h.
>>>>> No extra octal constant will match all these constraints.
>>>>
>>>> New MASK_EXTR() uses can appear at any time, without necessarily
>>>> matching the justification.
>>>>
>>>> Jan
>>>
>>> Sorry, but I don't understand what's your concern exactly. With the
>>> improvements I proposed
>>> (hence a new patch revision) I see the following possible future
>>> scenarios:
>>>
>>> 1. an use of MASK_EXTR() in a file other than x86/hvm/svm/emulate.c
>>> appears, with no
>>>     use of octal constants in the expansion. This won't be deviated;
>>> 2. an use of MASK_EXTR() in x86/hvm/svm/emulate.c appears, with no use
>>> of octal
>>>     constants in the expansion. This won't be deviated;
>>> 3. an use of MASK_EXTR() in x86/hvm/svm/emulate.c appears, with octal
>>>     constants in the expansion. This will be deviated;
>>
>> This is what I'm concerned of: How do you know up front whether such 
>> new
>> uses want deviating?
> 
> I understand you concern now. I can argue that all the macros in that 
> table have indeed
> an octal constant in their definition (0 is explicitly allowed by 
> MISRA).
> This is also specified in the comment above the INSTR_ENC macro 
> definition, therefore any
> new addition should have an octal the second argument to INSTR_ENC.

Right, and I previously indicated I agree as far as INSTR_ENC() goes.
What we appear to continue to disagree about is MASK_EXTR().

Jan


From xen-devel-bounces@lists.xenproject.org Mon Oct 23 08:17:29 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 08:17:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621061.967088 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quq7t-0004Ou-ED; Mon, 23 Oct 2023 08:17:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621061.967088; Mon, 23 Oct 2023 08: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 1quq7t-0004On-BI; Mon, 23 Oct 2023 08:17:29 +0000
Received: by outflank-mailman (input) for mailman id 621061;
 Mon, 23 Oct 2023 08: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=rddO=GF=citrix.com=prvs=653ff57d6=roger.pau@srs-se1.protection.inumbo.net>)
 id 1quq7r-0004O1-VN
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 08:17:27 +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 9858a9b4-717c-11ee-9b0e-b553b5be7939;
 Mon, 23 Oct 2023 10:17:25 +0200 (CEST)
Received: from mail-mw2nam10lp2100.outbound.protection.outlook.com (HELO
 NAM10-MW2-obe.outbound.protection.outlook.com) ([104.47.55.100])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 23 Oct 2023 04:17:24 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by PH0PR03MB6771.namprd03.prod.outlook.com (2603:10b6:510:122::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.7; Mon, 23 Oct
 2023 08:17:18 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::acf0:ce2b:1634:5aee]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::acf0:ce2b:1634:5aee%6]) with mapi id 15.20.6933.011; Mon, 23 Oct 2023
 08:17: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: 9858a9b4-717c-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1698049046;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=CUKC0vJc5Kd/C2PyfwY1cQGdZsCpP25irFZiWcM9ekY=;
  b=J1Z9y1VJNO7iyaZ4lVCptpQ8JZ0aKzowZPojklys6tEZDNZK732GiGGZ
   lI6HMBor2MBucaKCK9+NcrWi1GRXRkEespDT9qOL4qASBNyjX+IShaV4U
   kPrLFcmtkQYbCk+ffjgZ2OoxolcjAvXOpgHHC0P5mIDdy9uY4XVfQ+0bx
   A=;
X-CSE-ConnectionGUID: 9qzhRbcaQDeLKDkuqYSd0Q==
X-CSE-MsgGUID: r4HK1Zk2SkWBG/+jGsZm1w==
X-IronPort-RemoteIP: 104.47.55.100
X-IronPort-MID: 126787197
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:gi3e4KnoZ4gJVE5SYnhVcvXo5gyTJ0RdPkR7XQ2eYbSJt1+Wr1Gzt
 xJMXmyOafncZmP8KNkiO9/no0IC7ZKHxoRmSgI4+ClgQiMWpZLJC+rCIxarNUt+DCFhoGFPt
 JxCN4aafKjYaleG+39B55C49SEUOZmgH+e6UKicfHkpGWeIcQ954Tp7gek1n4V0ttawBgKJq
 LvartbWfVSowFaYCEpNg064gE0p5K+aVA8w5ARkPqkT5gSGzhH5MbpETU2PByqgKmVrNrbSq
 9brlNmR4m7f9hExPdKp+p6TnpoiG+O60aCm0xK6aoD66vRwjnVaPpUTbZLwXXx/mTSR9+2d/
 f0W3XCGpaXFCYWX8AgVe0Ew/yiTpsSq8pefSZS0mZT7I0Er7xIAahihZa07FdRwxwp5PY1B3
 a0BOjA3ZBuKvs675JGXSfR1t/8vdPC+aevzulk4pd3YJdAPZMmbBoD1v5pf1jp2gd1SF/HDY
 cZfcSBocBnLfxxIPBEQFY46m+CrwHL4dlW0qnrM/fZxvzeVkVE3ieC1WDbWUoXiqcF9hEGXq
 3iA523kKhobKMae2XyO9XfEaurnxHmlB9JNTeznnhJsqEfP5k9KOh5MbliEi9b+yUyRQOBac
 lNBr0LCqoB3riRHVOLVXRe1vXqFtR40QMdLHqsx7wTl4rrZ5UOVC3YJShZFacc6r4kmSDoyz
 FiLktj1Qzt1v9WopWm1876VqXa3JnITJGpbPSscF1Jdu5/kvZ05iQ/JQpB7Cqmpg9bpGDb2h
 TeXsCw5gLZVhskOv0mmwW36b/uXjsChZmYICs//BApJMisRiFaZWrGV
IronPort-HdrOrdr: A9a23:a1rOCK2a1dEuilU/WPjg5QqjBVZxeYIsimQD101hICG9Kvbo8P
 xHnJwgtCMc+wxhPk3I+OrwaJVoLkmskKKdjbN/AV7AZni0hILLFvAH0WKK+VSJcEeSmtK1vp
 0BT0EKMqyTMbEMt7eY3ODXKbgdKZK8gdmVbK/lvg9Qpf0BUdAs0++HYDzrWHGfumN9dNEE/d
 Onl7d6T0HJQwVaUu2rQnMFU+LAvNHAlIvnbRkaDR8q4guDgFqTmcTHOgnd0REEXzxVx7A+tW
 DDjgzi/62m9+q20xnGygbonuJrcXTau6h+7eG3+7woww/X+3GVTZUkX6fHsCE+oemp5lpvmN
 7Qow04N8A273/KZGm6rRbkxgGliV8Vmjff4E7dhWGmrd3yRTo8BcYEjYVFcgHB405luN1nyq
 pE02+QqpISBxLdmyb24cTOSnhR5wOJiGtnlfRWg21UUIMYZrMUpYsD/FlNGJNFBy7+4JBPKp
 gaMOjMoPJNNV+KZXHQuWdihNa2WG4oAxuASk8e/sSIzjlfhhlCvgQl7d1amm1F+IM2SpFC6e
 iBOL9vjqtSQsgfar84DPsdQNGwFnfGTXv3QSyvyR2OLtBFB5q6w6SHooncyoqRCdk1JNpbou
 WBbLsu3VRCO34HKaa1rdl2GjukehTAYd0s8LAt27Fp/rnnALb7OyyKT14j19Ggq+4SD8nSW/
 O5PoMTGPn+MGvoF45G0wriH4BIL3MTStcYt78AKiKzSrGiEPysigX2SoejGFO2K0daZorWOA
 p8YNDwTP8wqHyDSzvihgTNVzfjYUr6uZJqFq/C+fMPobJ9Z7Gl6GUu+A2EDuLnE0wbjkR3EX
 EOeo8O3M6A1DSLFSij1RQ2BvLuY3wlu4nIQjdWoQcRPwfufawevsj3QxEP4FKXYgJ6R9nbVB
 FSvE52/6XfFe3O+QkyT8+8dn+Ah3EQpHWFC5cQ85fznvvYRg==
X-Talos-CUID: 9a23:P91IR2N5GlSVu+5DCTB19HQeEckcXnD571vTPlaJMmoxcejA
X-Talos-MUID: =?us-ascii?q?9a23=3Akbi1DQ3ikgTY4EutljM4AqQwhDUj+fiOKxk/ks8?=
 =?us-ascii?q?9uPauGmszORiGvjHuXdpy?=
X-IronPort-AV: E=Sophos;i="6.03,244,1694750400"; 
   d="scan'208";a="126787197"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=aT9E2AynP/LMqaKltVy2lVEF168VCB0IaGtNxs1rzqDuz8buyk2Njzg6W8QvE+sh7n9elsmvPbtP6SZhM0Mp30x1NHksfYsN/TwNtWZf4tNfrsDvvGeYdO3aLDo+ZFroLi/uNFrFmmPGeRlvk7MhA4cUjkN1o7x8Yy97JA8GdxgBTJZaNdJ5lavc1ArJDygNj4l29/1uBw0mjMhhyEwyqkssI9Rls7V0wTAH0pOv76e3hRQMmazEb76bjcDDAYZtSzvbQxoIZyluWROFXAwL1+ZFzspeiFuBKz5SEmCqXnGlRdYdloZA7d5xkjUnpjKo/lRE5LQVPtF3v37wCQ/RxQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=5Fi9fYgWJaF3EWz08I2e1MYC4A0F8/UflcFe5VG6tA0=;
 b=KTmO9QxAk8j3RtOEIFEAKr0wnt8S03d40a5tlspNeb7zsz+Tvwws3zGhctmvbA6cz5GJG8jaDAj6w/9hDKlFDoIt4H0LkqtFWFkZYbIwOoVFtDFYsk1CITN1U/RAgDB9Otz6DRE+MzFZuM1X2rQnW8aogzq7KokToslgcTviE1hgmRhgAbD8u3cit54IzG1uWz1shBvS+XzKAwJzkR4K5ak4zPgAMJ8z/4PQZAmbMQ2H+4o7qgLbV0msP44LcO8ofHDsX5Mn5hdhfA2hFkR0Z9VbY0RcxlWDx7bEzkZiMqBsqYvmFPiLy8fxyK5HA2nQMpp4IiqAROH/Ime5BRBJRw==
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=5Fi9fYgWJaF3EWz08I2e1MYC4A0F8/UflcFe5VG6tA0=;
 b=vwBy0zWydj4XbEYnsOtbyGIJYD6o28VFbA1QQ6cqGG21DVc7AdVUffosP/w5xMJJ1cd7X+LgmK+OdSlH9/HKO7WHXJ+mJawPi/Px4G5Niox+7TEauCpet+iUwLa+ToofQIgV4l41kdzaIYofR0rbOEURcr4sCNyneuy2gVboq0o=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Mon, 23 Oct 2023 10:17: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,
	Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH] ns16550c: avoid crash in ns16550_endboot in PV shim mode
Message-ID: <ZTYsC8dVcuADOSH1@macbook>
References: <de07d56188f13e222ddaa1b963c20f8d7d61350e.camel@infradead.org>
 <14914ea1-2d2b-46e2-9933-2b7414acb7ba@citrix.com>
 <f1ea054608f4ae38293f89bcd84c6937538f245b.camel@infradead.org>
 <f5603457-8bee-40b9-9ea2-d604abe4ee53@citrix.com>
 <ZTKAqBILUBNelYCS@macbook>
 <7e1fb34868adfa51f1a48eb8d77f4b92643db85e.camel@infradead.org>
 <0c2f1fd0-22d2-419b-8fc3-4788563fe9f2@gmail.com>
 <ff1a67f7-8b33-4e7e-8e31-d5201f7212c1@citrix.com>
 <ZTYmOTBdAgTBliHI@macbook>
 <d45ae14b-b6e4-478b-a94d-954b80375d9a@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <d45ae14b-b6e4-478b-a94d-954b80375d9a@suse.com>
X-ClientProxiedBy: LO4P302CA0041.GBRP302.PROD.OUTLOOK.COM
 (2603:10a6:600:317::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_|PH0PR03MB6771:EE_
X-MS-Office365-Filtering-Correlation-Id: e51f5253-4caf-4ea6-3d4f-08dbd3a0794c
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:
	GVSy+7zBED6YIHm4RKEvBnP28/LmSa3RdsvAb/1WDHNPG6OMBquirUptkBCrH+l73vU7V70WmorbxebVZNpCtgC5RVV3Or1sIlBKUmWUYMjzUWMGZUYs3onF615pjVs583FGOFhv7HhXcdwC3OerWrzK4q3TN+Sn/J8JiIAq2gN8OYuoeSRvSSwGXPw9zlDCmAWF4sjVLlMPXVbstludU/9RNQT6pgy2EgOVYqbiAKQQQSR9K3rp4Q9cwh5vljuru55Pn6w74DXBBEVnRZkY+MkQU1FF27lIirmj0XjqiHaCTDLm0cyS96gPlEzO3kjq/0Z926F33Uc6N6+NWuQCb8ovuVuSW2WbW9dv/2WsAtqfecI4sX9uDSFv1tlpAB+TOpH8LY1jdoItMcDe3GJ23a+uivb+OG8zksUJneULj4D1N03Tt7YH5tAXlN50DwJvMqoR5npbs5RFCRfIDBuscXN53EkdE/qv3AdpmDiY9FBWV03YmgoMMDEPBmxJzc9lI3xmrWNy1GmjEv1YS1DJW2oU+W5WjM0amlg+7HhEYVw=
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)(39860400002)(366004)(396003)(136003)(346002)(230922051799003)(186009)(1800799009)(451199024)(64100799003)(83380400001)(4326008)(38100700002)(107886003)(6512007)(33716001)(9686003)(85182001)(2906002)(86362001)(66476007)(6916009)(66946007)(8676002)(66556008)(316002)(6666004)(5660300002)(8936002)(6506007)(53546011)(966005)(478600001)(41300700001)(6486002)(82960400001)(26005);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?c0lTLzhET0xkeUxwdDAwNitmUzZIM3AzUEozeTVqZGZDamNpcmpidUlwa0NV?=
 =?utf-8?B?MC9nL0hySWVpa2k4b3JsUCs2TTdYaFpxRzVQdFVsQVE1UExnby9uMVY2L09j?=
 =?utf-8?B?WFJ2U1hscUZqTkFMcDFUMXBJN01GZndaRWtSeHozVllseTVRajdubFJmbjZw?=
 =?utf-8?B?UTdPSWVrOVYrS2FuK1E2ODlrblMzd05leSt2aGt2QWpBMUhROWxkK29McDdU?=
 =?utf-8?B?bzRLYXNQeExmR2xCWTM0alFXcGhkc0RFT3BWTC81ZlNOYVAvdVJZQld6amRF?=
 =?utf-8?B?bzBReU1OM2tNV1lOSkI2VXBMNUs4ZWQvNk9hQ0xsV3B6Z3VQODExZUxsMjNE?=
 =?utf-8?B?SHg2UFYvV01ZTWg1eHFWUFcwTmlsS1YydkhaQTJzWTBNaVMzZ0E5b0ZUUllR?=
 =?utf-8?B?NnFGcEZJUGx6WUoycWtJbVFzb1FkbVZ2UGxkWXhMelBVa1ZXU1lhdHl3OFpp?=
 =?utf-8?B?OExQTEhvQmNmV3NiZ1gzcE1JSU9IS2MzQ3hTejMxbWJjS0FKQWRtbnRocGNr?=
 =?utf-8?B?S1p1aWRnUGZ1Q0tEbEpzZitJZkp3RzNLWGNudVNEYUZ1d3RWNWpJZ01hci80?=
 =?utf-8?B?SDE0MzYxZ1dBUkhqdm1NclplU0V1VGE4Mm1QRk1jV25vbDAwQ0E1OEUyM3NS?=
 =?utf-8?B?blJoMUJSVnBWd1Jyemw1OU1BbG9aN0NkaytsL2dnZHZGYmlraUI3dDdHVVdr?=
 =?utf-8?B?TlIweVdSc2hHMmN1dDViNUJZNzJ5REVDakFVc0haQ2g2UDJSSzVwSW02NVAy?=
 =?utf-8?B?RVVNNXUrbGFUUkRWM3BTaGxhSm1rc0lieHZ1S1RXdmphSlZQaEtjdGdoRjVV?=
 =?utf-8?B?NzROQ0FsT2p3UkZrY1JOMWNjOXFrZHJKaHZLU3lYVVFkbE9nVXM2blIwbGU5?=
 =?utf-8?B?OXc3b1RIQklDc2ZQb2dqNm5lRkdXb0ZBdjZzWWdySTh5d0pMdXQ5ZjRCZzl4?=
 =?utf-8?B?U1ROejNhSjBoZGY3b0JVbHVvQk5tcDBocS9zbnJQMzd6S09hNWg2K3lWajlB?=
 =?utf-8?B?L0YvVnFwV1NhcDAxWUpyNExOUmRDNDAvb1huK3Y3S1pVd3B0d0oyOFQyb21G?=
 =?utf-8?B?aGJRbktqWFEwRGlyd202NHV3bkJwZXgxajNyT29yNmdTSTlyb1dLemw0ZTlm?=
 =?utf-8?B?bzBrbGl2QkdOWUdQc0ovUkwxWk1ka3dpNDNMbVk2WnhkcTJkVDVpOG5IV0xP?=
 =?utf-8?B?U2FDQ1d5SDFyWUhaVW1sT2lRbmtLaWI0UGRQUkwvU21IYm5Qc3F4NmpxWThS?=
 =?utf-8?B?ZEZ3MHBQUFpnRlJiTEdKaTFQTTJqMExhSmZBRktBOTRBcVRGeGFwZS9xUmFK?=
 =?utf-8?B?OU1nSGhwMGhiSVVuYTV3azl3RnBiYjhDUlhSZElWcTdHbmJ5UVVvalQwRWRL?=
 =?utf-8?B?NnJKbkJwS3VTU0pSMEFUbHJtTWwvV0xrZE90ejhVekJINnRkR0RBVUJ3ZGNz?=
 =?utf-8?B?NHQ4RDBVUlYvRjVhejBHa013Q1Q5ZHVFZ2ZwaUZFRHNvWEo0VmhlM0pLc3Js?=
 =?utf-8?B?WTM5TFF6SlRJeko1L0VNN2N1SE5SZXpMZnhnejdSVGFlckxDdkhyeXJkRmFI?=
 =?utf-8?B?QnBWMFNVQzF1NHRWcG02czg0SFJhMUdwMzVSTDVLdldQL1ArbHFyOEZ2aWlF?=
 =?utf-8?B?M20vSEdvSjcxMnI4cjZJMUFNZTFnekNsUkhTU1JWTld5VUx3bjdyYXBtT0Uz?=
 =?utf-8?B?djgrZkdVVkt0RGVKYmc0L2Z1dllqY3F6djV3L245N2ZZNXg0RUVhSmxWM2Vv?=
 =?utf-8?B?V1RnYUp2NmhiZkR5SEk2OWE5cGJLcUNuWXhLVy9EK0FWOCtkZWkzUW9rbXRP?=
 =?utf-8?B?b3V6aTAwaTgvdmo1WmVYT3Rrem41dFp6TlRydDVSL0hsWkdBaktBc2UybDZH?=
 =?utf-8?B?Z0FQcGtiTm1Ga1haa21aYXVKOWtwTkhvZk9TWjNDamlnWU1KNWVTbDFQejB5?=
 =?utf-8?B?YTh2c1IzTHN1eFFFMHhveTAybHg0VGwreUF0bnI1OE9qMENkQThKV1JaZ0ZL?=
 =?utf-8?B?MmFBVDV3MWMycmJYYm1sRldCMTFlWDZKWnJuVGZMcHl0L05CRlhiMzB6SFNH?=
 =?utf-8?B?ZWhEYmk1V2xzVU92ZWdIYllEakVuSVZzMURGOGlHQ1B5azFESDU1ZThLMXVm?=
 =?utf-8?Q?fLoOHgk8XNng3F8uDYem+B/W+?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	LPWu6fPvtQ1zZHNkrdbczxdQkDjc5oLRqCoUGlLNMTePAx7T+5GDUNJZALMPyOUANKOQWFORO+8ah67mso2ukUbO4zaS4P5RkSzMEwA12z5RlmXz1e1Ari9xXJ7jtjw2FHbazOCFfXWtNI6oRqZ1uZvEvSIvttFZZjX2bIRLOBYwGaZHJlqG/dmDsfoCnriI454bBgBQtuE5MpVvLtAqC7Iiw0E33CmQcjiZtI8+UF5TCuP1okIjVHlCwmgIaG7ec3mYTxjmy3hlr0Ln+BZOfOApOcgRwz449T43EvJnRIXK5VfCxojJec3tWOztMsSdDWHcwin80buRzxi+GS5yd3XN+YJBd/ohZn4RRNgWVW+tj0eJhn8HJxiBek1rj09VOKY47+yq7ubJUFwoimOPD0mQBmf+ZZTm0uXT3vCzWcjVgT7vdh9X1TMhOC45Kl+kv/ej8cB33i1m76eGUAv9HL3zUrJfctiHAaOUh9ypzjvr9BnW0sSL5dRtXyxIDSEn7V4TzfV2gIpv1wsiO0ZJZL2y36Wbi89rdTl4bb9dXfzP6/3rVaYS6/Cgk3A3NG7FaHMCrpg/kg+/wuz24C9RZUsemlA+ibMEhDieVcG64DT6eFw1UuwexRbiDMdmgnhOFr0C26oDnpKfg+tgest1hJosqXKuaohh+ZBbDoVMowQIJvhq7NsMSIMoyPTuARQp81+wqqmvSnfX8h57Lsjmxif41IiCmyZvfghzUfuZOFqfGG7dxi+TDAcwN3eSyWve/z+yK2r9B5NRWxuxsJUJ0FMhHw5GFtRpcolfHQveicX/Ex5K9dACNPaJlB8mI8u/
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: e51f5253-4caf-4ea6-3d4f-08dbd3a0794c
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Oct 2023 08:17:18.8793
 (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: xSyjCIPLpfWTfwjCDsmkA5pFFske19Y/+jIWjIliZudo/Qg2Ds3fivOrtJYoe9GpjM8EmQOD2lIUcOlvPYQ/SA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR03MB6771

On Mon, Oct 23, 2023 at 10:05:48AM +0200, Jan Beulich wrote:
> On 23.10.2023 09:52, Roger Pau Monné wrote:
> > On Fri, Oct 20, 2023 at 04:16:16PM +0100, Andrew Cooper wrote:
> >> On 20/10/2023 3:50 pm, Durrant, Paul wrote:
> >>> On 20/10/2023 14:37, David Woodhouse wrote:
> >>> [snip]
> >>>>>
> >>>>> [0]
> >>>>> https://elixir.bootlin.com/linux/latest/source/drivers/tty/hvc/hvc_xen.c#L258
> >>>>
> >>>> I'm not convinced I believe what the comment says there about evtchn 0
> >>>> being theoretically valid. I don't believe zero is a valid evtchn#, is
> >>>> it?
> >>>
> >>> gfn 0 might be valid, but I'm also pretty sure evtchn 0 is not valid.
> >>
> >> GFN 0 very much is valid.
> >>
> >> evtchn 0 OTOH is explicitly not valid.  From evtchn_init():
> >>
> >>     evtchn_from_port(d, 0)->state = ECS_RESERVED;
> >>
> >>
> >> However, the fields being 0 doesn't mean not available.  That's the
> >> signal to saying "not connected yet", because that's what dom0 gets
> >> before xenconsoled starts up.
> > 
> > Someone asked me the same a while back, and IIRC we don't state
> > anywhere in the public headers that event channel 0 is reserved,
> > however that has always? been part of the implementation.
> > 
> > If we intend this to be reliable, we should add a define to the public
> > headers in order to signal that 0 will always be reserved.
> 
> I agree a comment should have been there; it's not clear to me what
> useful #define we could add.

`EVTCHN_PORT_INVALID 0` or some such, but a comment would also be
fine, the point is to be part of the public interface.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Mon Oct 23 08:28:44 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 08:28:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621069.967097 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quqIY-00076x-Di; Mon, 23 Oct 2023 08:28:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621069.967097; Mon, 23 Oct 2023 08: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 1quqIY-00076q-Aw; Mon, 23 Oct 2023 08:28:30 +0000
Received: by outflank-mailman (input) for mailman id 621069;
 Mon, 23 Oct 2023 08: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=rddO=GF=citrix.com=prvs=653ff57d6=roger.pau@srs-se1.protection.inumbo.net>)
 id 1quqIW-00076k-Uh
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 08:28:28 +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 20f5649a-717e-11ee-98d5-6d05b1d4d9a1;
 Mon, 23 Oct 2023 10:28:25 +0200 (CEST)
Received: from mail-dm3nam02lp2040.outbound.protection.outlook.com (HELO
 NAM02-DM3-obe.outbound.protection.outlook.com) ([104.47.56.40])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 23 Oct 2023 04:28:21 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by LV8PR03MB7423.namprd03.prod.outlook.com (2603:10b6:408:182::14)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.11; Mon, 23 Oct
 2023 08:28:17 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::acf0:ce2b:1634:5aee]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::acf0:ce2b:1634:5aee%6]) with mapi id 15.20.6933.011; Mon, 23 Oct 2023
 08:28: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: 20f5649a-717e-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1698049705;
  h=date:from:to:cc:subject:message-id:references:
   in-reply-to:mime-version;
  bh=5HCPVHzSmDOlAZEW8QnLUVwjssp1s3fA794eExm8gFA=;
  b=IoZohh/jCtecCnBDNpuBcJxTdg4ANTclbsVUd2ehbXGLwP0cs/bEB+gu
   2zlISHsa3Ts0opNJ6jh76WrVn1U+whD6abQfUM8VhfktNMUS8XrjgGTlY
   S0YmYjRW1gu8hEE2e+jZXC2OO7AxG6TbhQQqBh9YXELk8fnC56Vp4d1c2
   0=;
X-CSE-ConnectionGUID: M5x9tdVlT2e+YgebaTxLcw==
X-CSE-MsgGUID: YduPtrt+QOCmWewidwIFvw==
X-IronPort-RemoteIP: 104.47.56.40
X-IronPort-MID: 126343748
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:z8NbI6LEUZCObc6uFE+RHpQlxSXFcZb7ZxGr2PjKsXjdYENS12cCx
 mBKXGDSPvvZNGrxfNxzPIqxpk0CvJaHydNhSVBlqX01Q3x08seUXt7xwmUcnc+xBpaaEB84t
 ZV2hv3odp1coqr0/0/1WlTZhSAhk/nOHvylULKs1hlZHWdMUD0mhQ9oh9k3i4tphcnRKw6Ws
 Jb5rta31GWNglaYCUpKrfrYwP9TlK6q4mhB5gZlPakjUGL2zBH5MrpOfcldEFOgKmVkNrbSb
 /rOyri/4lTY838FYj9yuu+mGqGiaue60Tmm0hK6aYD76vRxjnVaPpIAHOgdcS9qZwChxLid/
 jnvWauYEm/FNoWU8AgUvoIx/ytWZcWq85efSZSzXFD6I+QrvBIAzt03ZHzaM7H09c5SXHEf6
 fAmLAxXY1OyiO+8yY6rbuJz05FLwMnDZOvzu1lG5BSBV7MKZMuGRK/Ho9hFwD03m8ZCW+7EY
 NYUYiZuaxKGZABTPlAQC9Q1m+LAanvXKmUE7g7K4/dppTSLpOBy+OGF3N79YNuFSN8Thk+Fj
 mnH4374ElcRM9n3JT+tqyjy3bOUwn+rMG4UPIy068Z2mkHQ/0s4DSIbSlq3vtiXlFHrDrqzL
 GRRoELCt5Ma9kamU938VB2Qu2Ofs1gXXN84O/Yh9AiHx67Q4gCYLmsJVDhMbJohrsBebSMu/
 k+EmZXuHzMHmL+ITXOQ8J+EoDX0PjIaRUcSaClBQQYb7t3LpIAokgmJXttlCLSyjND+BXf32
 T/ikcQlr7AajMpO26Dg+1nC22iovsKRElZz4RjLVGW46A8/fJSie4Gj9Vnc67BHMZqdSV6C+
 nMDnqBy8dwzMH1ErwTVKM1lIV1jz6/t3OH06bK3I6Qcyg==
IronPort-HdrOrdr: A9a23:ySbfl6oigGxNWTG2KrVz9cgaV5tKLNV00zEX/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=3A4FCEmWsQ9jmM588aFd72OXzN6IsAL22M0HvuJ3P?=
 =?us-ascii?q?iBCVYR7CfQGOA3Kh7xp8=3D?=
X-Talos-MUID: 9a23:WQLRmQkBovIdr0h8cLY/dnpTONpQ/76yS3kqupA5ttaFOTNRFSmC2WE=
X-IronPort-AV: E=Sophos;i="6.03,244,1694750400"; 
   d="scan'208";a="126343748"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=lGF83TwewikAKcYqkcIfZ0gb7PBrX9fQJ5cG/rAV98bRkbn3avkxPJ0aJnCNfS/l9qq3K0xGnDR6XDa12eoygmodV/HgwLA4cOnU8HXx5y9XN0FgQLQRkq5HTIOEY4v6ZJ2sXqk/Lq/m7qqhLy/fiYeXMAKW2aNgUeXVNJkopq0OOi2Pb/boORxN/qGRApqqiwGjCHhAZMZ3jl7ckg36ZEMk/dzJD43EP48YYA8JcG3oPbnTJsxF0XN9CwFjTl19Z7PZwOWKqcIYDnXh6p+EjTdlpjZumOWEDLZ2coMT+HhQX6ZJkGW6aVwGtTnDMoYMMpwK1VJZxdEzyNAtfcqNyA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=zTigZYMjAGRm34ngvs6c+HXDkWxj+sXVCwb79DeQjnc=;
 b=XD+LDLwR+iLKjM88GUzEVuMuTuFSLD0Fgn8LzxdyM7TYchpt2YIZMmpjVCBZL1Uq97QiZJ7nBcXEfFRcNB8ZyACHAbjFb9CkU1Q0NGpibZeSV7US765IWNB+cGnEPS79RRa0vPPB6Omc46oKEjORzM185w0qj3NTuS9eH0yyleXxEob5HCUpBuoJFmDYFTJoKpS0QEarMylBMMlvilqEfqwJU6gGZZ6BuY8Rk3SFNQHK990EkMicqCJ3ztT7FW06xV7I0EytcjPQ/wCpX3EwZAeLa4DSFLys8x3WgsD3J0WLMVQB/RuKkk9FYaAj6UweNFIV78Id+lZ3ULf3qjwZfQ==
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=zTigZYMjAGRm34ngvs6c+HXDkWxj+sXVCwb79DeQjnc=;
 b=sUdoaJfSWUBGpOJ0CV3Vktcy2rtkNdjdr6vijIXXWct+34neTkZc/8Afwa6RWZmiuOLl1S3upPAaBfPBSYjlmAiLzDcYFDr5ug97B7lkz25/72gXIlEWWqtE9X7BXKLMbJvo/AfJPHSv7NQ0LTsxILqRPYWE9q74Kd95aC5Sg2c=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Mon, 23 Oct 2023 10:28:13 +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@eu.citrix.com>,
	Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
	Julien Grall <julien@xen.org>,
	Xen-devel <xen-devel@lists.xenproject.org>
Subject: Re: [PATCH for-4.19] xen/xmalloc: XMEM_POOL_POISON improvements
Message-ID: <ZTYunVMy-d0cxEa6@macbook>
References: <20231020202649.1802700-1-andrew.cooper3@citrix.com>
 <2902d6cc-169b-a70f-ce10-10925e837fb6@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <2902d6cc-169b-a70f-ce10-10925e837fb6@suse.com>
X-ClientProxiedBy: LO6P265CA0018.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:2ff::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_|LV8PR03MB7423:EE_
X-MS-Office365-Filtering-Correlation-Id: 8f776a64-4fbb-4599-921e-08dbd3a201e2
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:
	20rnAjpIfOLwo2cbXTVoF8MmcvBBbUBvudbW+BvbVQxee/PloyHsAxf3YFTLGRa0pFRxquhTCC20PisFwhssXVSpL+zWTH8MV4AqAi/uWTdCUTmsze/ava+UXZRyGjUADNLyppD9uJqGb2ISYQNJnMzAjHWI1caImdI5kMAjjG90ASqWFKd7ogWxt2h3MezMPue0GBJW05aLYCznAyaftVQ3cG72HqSzZeBNvt1Pe7rcX7AZGK3vezKhxHPfL0LckAd704gyodfKE3kE89NKmBFXFdHQnnghJKsysJvyN1zSp5LnnvggX6jCWOYPvwzr1Rry2vRNRi0E09KW/PZikIcxah47slAgNP9uaCd/fc19Z1nWd8TSd2UA2mbjriMhxiVtR8fJlVXpB9/Ve/1stGB5LJK/ApXpeSQyRhHZvCtfE6+qn04yaxPXkrYtKPaAH31/AlFglwBpaSd/2UKqG+GK9NDvWCZDe8z6lekj0bWJIB5d++UJnvet4CfWiQMPW7M9pE+wBJ+moSDVbfT8aq+KL+yQ2QSuGlD0edOPx9G2eYKtD/y0eDDeNCknuujY
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)(376002)(39860400002)(366004)(346002)(230922051799003)(186009)(1800799009)(64100799003)(451199024)(6512007)(85182001)(6916009)(54906003)(66946007)(66556008)(316002)(66476007)(86362001)(38100700002)(82960400001)(53546011)(83380400001)(26005)(9686003)(6506007)(6666004)(8936002)(2906002)(4744005)(6486002)(478600001)(33716001)(41300700001)(5660300002)(8676002)(4326008);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?T3E1UENNaU81OFc0b3U2dW16UW1VRGN6djNGenp3OU1Nd3JuNlY2Zkp3c3No?=
 =?utf-8?B?V3RYSnUzZUpFUUZYcXhpd2U1UFBQdS83MXpBRTlhVG1LSTdkbGxFOVAzQWtD?=
 =?utf-8?B?ZzlDajV6TTFLdjZLQ21KTjc1dmdxa3JsME16L21zWXlmZHdDdVhJQkxEYWts?=
 =?utf-8?B?Z1lIT1RRaG5oZm5pOHFaQ1dtRjFhTEJub3dyZXNyM1RMbmc5UGJ5UWV5WmZy?=
 =?utf-8?B?WmhxZVNUNEFvZUZYQTJQeGRaREhIOFRNVFBUbWJVMmgyaWpMK2JITHJod2Ji?=
 =?utf-8?B?NWtzSGN1YkNMUWk4SUhXQnJWYnV6Y3N3cURrOVQybEIrc3NYYWNHczJjZm5o?=
 =?utf-8?B?S0E4UEtHUExtZWJtQ0hDRDRWakhNMjAxbjF2cjlmL1p6QVNqYXJuM2gxam9R?=
 =?utf-8?B?OHJCZVAwN3YrZUNGL085RnVMZnArNnFRMzFaMys2YWNYb2JhTzlpcC80dzBk?=
 =?utf-8?B?ZXBzMXJSNjdQd25Jbi9hWVJnSXZPSEVHbXFDODIzdnN4WVNuaG8wU0FsUzhT?=
 =?utf-8?B?R1M2U2NMVHNybXlFczFUeXRXZmNya0ZxNlBEUW4rMFB2QS9SQWJqUk1pSmNI?=
 =?utf-8?B?LzhVdWlBNkFtTnpiOVF3Tkc4MVkvR0J2cUNTTmVIMGM0azk4Vld3TTlna295?=
 =?utf-8?B?NFc4T2xNU3R4RnZKUk51SW5oalRDeStzcHFyK2Q2aFVkVnRvaktXVlRVUHRy?=
 =?utf-8?B?SmFBRm93Mm5GT2QxQ2VHWkcwUE1qRFFGaTA0SDcyTjd1VWdobjBXNmFyN2w2?=
 =?utf-8?B?VS9CMG01dFhjWFJWV2hpbmFQMW9LNVRBQ2l2QkdUcSs0V2xOK1NhU2Q3UzF2?=
 =?utf-8?B?YXFTYWNPNFU3dXNDSEM5Vk80OUt1TCtRU3pRV1NYWFVrOHRpZjVLTk42bTVF?=
 =?utf-8?B?dE9xU2cxUCs4US9XeUtkVlBBcE9WSi9XWk9iRnNiWERJLzZwTnpuYUhMRkRT?=
 =?utf-8?B?SHlNUy8rVGllckxwaEFaL2JydVczbG94NjBjRmFiQXlSWU5PaWpwTmJBQUUv?=
 =?utf-8?B?czRRT000L1JJS1FXWFdQMS9vbW1TR1kwcG1iOWxyYnlWazlqSGthb2MrUEFR?=
 =?utf-8?B?ckNOSE11djlUc0N3aGxYVkVEUkhrQlhwOUtOaFE3ckUxUDJpeDBEQk95MDhz?=
 =?utf-8?B?ZUx0VGFFdjVseXc2cjVGMlBoUWdUa3Q2ZWpMZHBOMnhyZTNkZGdMQmlVRUJK?=
 =?utf-8?B?dUNwd2UrSmlEN1RxN05hNmpuTVdYSXIxVGZCSVFxdzY5aWVXcVJ0OFAzRkFE?=
 =?utf-8?B?RFdFb0RIZXp5T1IreXlrSWhJdE9wRjd3TTZ0UzdwbmlTYkpNNm1DdXVoN3dP?=
 =?utf-8?B?cHo1Q2hsUDhwRmJBcG5rTCtZN01rOHlEdFo0bWJvdzdUcGl5SUxOMDl6ejJC?=
 =?utf-8?B?aWZ6Tmh0dDAyOUU1N1BzUytBeVdOeTRuRVlBT3o4aEhRZ25HOVJGWnFRNngr?=
 =?utf-8?B?VWw3OTduRlE3M2VYVWlRUDJJT0I2QUFxcWI4elFoNXQ4SG1GZ3ZnT3ZVZS9r?=
 =?utf-8?B?YTlNamV5eDYvY3dRWFlZbVZYb3BUeXpQYXRVVmR6Z0ZJbmo1K2RKam9aTVd6?=
 =?utf-8?B?TW5lUTBYODF1b2kxOHBTTW1SRnNUajlWS0Y4K0ZwaHVEYUhEeWQrWC8xeHBS?=
 =?utf-8?B?a3ZkR2FuU0phWSs2VXZsK0VkNGhkT2krNTdRd1puclhzYmovNzg5VTc1OWsv?=
 =?utf-8?B?Z0RmWjRTWElUNzBkUlE3QWhvaUJORXR5N2hDWXhrV0J2QzZDZEcxTjFJV2hq?=
 =?utf-8?B?ZFBnWHUzcWVYMHQ5TEwxZGljckZDTGtHakY2NTFIUkUwQ2szNlozVzR4NjZD?=
 =?utf-8?B?b3JFWWdLL2lZeWw5c3pkampDL1ZXdEZmSmhSRjBMQzBaMUJQRjQzU0kyN2t0?=
 =?utf-8?B?UUVPclJXSU1ldzh5OUJtWm1lc0t0SitUd1d5UkZoMzlQSXlleXRyd0hyTFph?=
 =?utf-8?B?ZWZNVXBzZlZoS2pKaDJYUXVCM0djL205NE4xc3d1ZlRjZUwvMmd0bkpreEl5?=
 =?utf-8?B?ZlA5ZGdVY1BZQlBjLy9aL2s3akh6ajN0WEt2d1grY3ZZWGY1WnZWcE83ZE5m?=
 =?utf-8?B?bEk0cmlRRENhbzNkanpOZDVFOHd1UlBkNVRFUGphVkVPdVRFMUlsMWtSeHNM?=
 =?utf-8?Q?CtCFmLRsj4eMJ1gXtfRB5EyiE?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	nha0wIZKpJNRCDvgKy3r0y2JYbR3XFQ088YgqSFYBv1qgbSlNqDZLEsP+YOpixNTB8nq2Zqgp6YlWEH7zMdlzruNxdOs/lu8bFjm9/xTLiyBGF8BpdOczfpXN/HkejDmbM0Rb4zODReg2V96ee3rMj1Yp4BCjz+oDNHSmoQmDxe4zyzc+Q7hrxnx2dDa5NHgaTqxEuVqQD0KKx4z/oa+yblBMhyftHD1Pe6OdbtJeYT30nK9ITlpvW6Ggj9bicUUpd0Fb0bhecyJpLreQhhyswLYAL9Ge2cyCzpnwxLNqcb3iIuhjLOA5Jfp5ZZOgA/44iM2PJ3uXckcxrZIw2gxjWD5U06+PXALrYqNoVvfaRMzXoP0Up+cWZCikyAfH/tez8WbGPCxtOzD/AP0KxYY1v/NlDD13PzhwsUMvT1VZ7HFmpsJwe9RMo/9TUJk18R8+XNmL6035qjdU+X+AgZhDOmDNKDJlBvm/EJpZudkQy0uFXAe6q7kHnieQ0F7D+f98yYeTie3e4WLEZGcZae4lgQcQe2INiG0tPobbekh6JrddiAWX/qmjib6RJrgtZeC/ZOyj8wzSX0AdgPFlmLocNdQdeWUlhFPSSMDMa07UqbpJzn5eK1Fxq/JZUuG1fHVLt7PD+kBvdEn0lSu+6qC76QNotkPDGmWe7/Bb3pSlI8sex7reeDgT9sKs+V7MvLu1h5GPhvo2YOCnyeVTPRSlyQGpnJhwXBHaHCOq2q4vJ6OOfFVQWRnerhS4yJ5YjzW1Dg99oNsnfopvykr5OT3/h9JZ6dTKqT6xp0OIuFJVwHF4EziFP9lu6dsVZzjUsU0Q8f5/G81BzRS3VR26v1ObQq9pXSHOzsccLLsor7J0h4=
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 8f776a64-4fbb-4599-921e-08dbd3a201e2
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Oct 2023 08:28:17.4212
 (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: Qkgfvye457Y58zWTLDPM0a9xSW0gJzSL81d84yDBnNvI7RK8lNrTdu2hGtRaBo/FzF1zePlwHQiYw0k8ObVsNA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: LV8PR03MB7423

On Mon, Oct 23, 2023 at 10:04:21AM +0200, Jan Beulich wrote:
> On 20.10.2023 22:26, Andrew Cooper wrote:
> > However, upping to a BUG() can't provide any helpful message out to the user.
> > 
> > I tried modifying BUG() to take an optional message, but xen/bug.h needs
> > untangling substantially before that will work, and I don't have time right now.
> 
> I agree with Julien's suggestion of using panic() in the meantime, as a
> possible alternative.

We might care about the stack trace, so would be helpful to print it,
maybe WARN + panic?

> Question though is whether it's better to halt the
> system right away, as opposed to e.g. permitting orderly shutdown to cover
> the case where the corruption ends up not being "deadly".

Hm, won't this be risky, as we could then possibly corrupt data on disk
for example?

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Mon Oct 23 08:37:11 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 08:37:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621074.967108 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quqQs-000167-9a; Mon, 23 Oct 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 621074.967108; Mon, 23 Oct 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 1quqQs-000160-5g; Mon, 23 Oct 2023 08:37:06 +0000
Received: by outflank-mailman (input) for mailman id 621074;
 Mon, 23 Oct 2023 08: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=7RLV=GF=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1quqQq-00015Q-7X
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 08:37:04 +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 57738c33-717f-11ee-98d5-6d05b1d4d9a1;
 Mon, 23 Oct 2023 10:37:03 +0200 (CEST)
Received: by mail-lj1-x229.google.com with SMTP id
 38308e7fff4ca-2c51682fddeso45707731fa.1
 for <xen-devel@lists.xenproject.org>; Mon, 23 Oct 2023 01:37:03 -0700 (PDT)
Received: from [192.168.201.133] ([94.75.70.14])
 by smtp.gmail.com with ESMTPSA id
 x23-20020a2e8397000000b002bfddd7f0b8sm1479086ljg.101.2023.10.23.01.37.01
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 23 Oct 2023 01:37: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: 57738c33-717f-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698050223; x=1698655023; 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=4D4+zgt9InQRXtbLsqRPASUY4oBFtCcmLlG6qQUF8ag=;
        b=QgxiCpfOqlQY751E4c0yIpQbzxqSlIoYxgRvBHQA4y0P2Je7JraKFUvTQIY5NzYZ3j
         VtgjiMHm1Hcow8rWs/TNMo3T0j+bokXXvqUrQU+CT/eb8dyCtgAVqV+Pswnh4i7Ufq+n
         Sv29i2J82K387G8s+LK/7XIU+5Z4AR5zpETxjHKKpzMZ5t2fMby7OqZnK52KrdXssBQl
         R28ln6YTx+WlimA+j/2HpV6yC2G3KLJmioguWCPskXfO8ebMtQgddL/EHfr5X2wBvt/f
         UvISsBsYpWdtfPdCUQZywmGSeYmdJT3hr47wncrNmsrRQpt71tOhJB18k0qOOwnRZfBW
         vQ/g==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698050223; x=1698655023;
        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=4D4+zgt9InQRXtbLsqRPASUY4oBFtCcmLlG6qQUF8ag=;
        b=iCqewPCTfkflBn3nf2FNeKG8sY0eiyNsRnQa70LlvceJrCT6LxaqwLlRSdnASlYX60
         ROlQTsyTW6g55+eS+d9v62W2uDvYERbrlyzts88WMc0klCILAIFwP7kLNR/GKyA6vwYi
         dqS8lGUpkJ+w3zvVFQru/3qIx8T31TXfSgTHqTHD8cxrpkHeZUwdtT+NJ+eksVAsp/y3
         80FyWpKJfNoKSdms052/YfOYcu5TqBpaOOaa7Vd2729cuUdPJysCqS2vJeIPItF/y2rF
         LbiIgDRQuOUSZTrdfktSJt+CEMUIs98bvSLVARdSUbhvb9gHyKaxgLTNRY3qroSJsXR2
         tOUQ==
X-Gm-Message-State: AOJu0Yw1T249myVU/oO2jK3crw6xUwydaPHrsmVD/402+PdO/xD5kDKI
	w5zbmcYWiWMAWXml7Q/7z38=
X-Google-Smtp-Source: AGHT+IGb7oJAj6MNb5MqTYDXx+pMulRGLpMEb3AkpnwAU506GF4SpfayXoiYZashxMDjDkbuTnSp7g==
X-Received: by 2002:a2e:9490:0:b0:2c5:985:2484 with SMTP id c16-20020a2e9490000000b002c509852484mr3899042ljh.4.1698050222870;
        Mon, 23 Oct 2023 01:37:02 -0700 (PDT)
Message-ID: <7391626b0d14ba34b1267310619d812f89da172a.camel@gmail.com>
Subject: Re: [PATCH v7 0/2] xen/riscv: introduce identity mapping
From: Oleksii <oleksii.kurochko@gmail.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>, Bob Eshleman
 <bobbyeshleman@gmail.com>, Alistair Francis <alistair.francis@wdc.com>, 
 Connor Davis <connojdavis@gmail.com>, xen-devel@lists.xenproject.org,
 JulienGrall <julien@xen.org>
Date: Mon, 23 Oct 2023 11:37:01 +0300
In-Reply-To: <8e9ab120-11a3-40fb-fe3b-165b3b2ef1b3@suse.com>
References: <cover.1691507564.git.oleksii.kurochko@gmail.com>
	 <059882ea-3e42-f74d-83e6-2f809d0993cb@suse.com>
	 <ae6b419eac6eaefd65aab36b69e8926032983110.camel@gmail.com>
	 <8e9ab120-11a3-40fb-fe3b-165b3b2ef1b3@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 Fri, 2023-10-20 at 15:53 +0200, Jan Beulich wrote:
> On 20.10.2023 15:52, Oleksii wrote:
> > On Thu, 2023-10-19 at 12:32 +0200, Jan Beulich wrote:
> > > On 08.08.2023 17:14, Oleksii Kurochko wrote:
> > > > Oleksii Kurochko (2):
> > > > =C2=A0 xen/riscv: introduce function for physical offset calculatio=
n
> > > > =C2=A0 xen/riscv: introduce identity mapping
> > >=20
> > > Acked-by: Jan Beulich <jbeulich@suse.com>
> > Thanks for Ack.
> >=20
> > Should be the patch series re-send with Ack after the end of code
> > freeze?
>=20
> If what was sent still applies, I don't think there's a need.
I pulled staging and rebased the identity mapping patch series. All is
still applied and worked.

~ Oleksii


From xen-devel-bounces@lists.xenproject.org Mon Oct 23 08:41:19 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 08:41:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621079.967118 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quqUu-0002aM-Td; Mon, 23 Oct 2023 08:41:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621079.967118; Mon, 23 Oct 2023 08:41: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 1quqUu-0002aF-Qg; Mon, 23 Oct 2023 08:41:16 +0000
Received: by outflank-mailman (input) for mailman id 621079;
 Mon, 23 Oct 2023 08:41: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=OVTz=GF=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1quqUt-0002a7-Q4
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 08:41:15 +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 ec4684ac-717f-11ee-9b0e-b553b5be7939;
 Mon, 23 Oct 2023 10:41:13 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS8PR04MB8038.eurprd04.prod.outlook.com (2603:10a6:20b:2aa::15)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.11; Mon, 23 Oct
 2023 08:41:12 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6933.011; Mon, 23 Oct 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: ec4684ac-717f-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Gtrz49B1HaDzFdkLqfHMjoApTTLnbSrlLB6Y7VxCzJ5124Or5hfS4Z5HQ+x5srEchttY5Trc4vvu91332jKSmXNGoas4iYZuPaCoC5pYygcApikcsXKzh17pjRln7A6n/mh6PPtMsTrzzbTWhTbmNkyEvkrJpm2xlC7pW2OLX5oAqHkRpEBUba651pL5MDvPkGhh1pF85EPyYB9ESKpWRlppDF6LSUvgGMBfpSbz6G7l9jK4GAIXPn+xJlQY35ddcGwf/ZlGrs1FmC32hC4EFANaFylfyffLSjEMOXTkh2TWyBfsvZcX4vs6+5m6Li1+KtS6Gv6FRrwwSK6me7PfXw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=MVd1Mm+Lqy+aVWN4TcF8Mh2zMJ7dKskwVphQLFL5jlI=;
 b=kUj222LYeQpH9aDyvsbKFGFQ4+r7wKd1Qx4SBqeGVoCHP0PBleOex+MJY38P9zzbwqT9tRYBIL5cidGPqpfvyXivRo7YNOSmiImZJcEOyRMoik/vlnBq2FBZzRRHM/7S81nVyLR6ZzZKoZ/beJXaSx37y6woZAbcxay7u4BVMOQo4JQjdGyRTFvax8Cj8XkZiKZ98ZGNT2TKw+G9r31VWW68cySFUehok7mqNj/KLWwwdcP81kocTRJgx1Vj4usp164IeEr4Yecj132uKIAlVNo1Jrxg5tSi9AopNifuYEVlhs2gxd5GPDVBLxqBNVBXNN0xui3MBraTtfX+CF/stA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=MVd1Mm+Lqy+aVWN4TcF8Mh2zMJ7dKskwVphQLFL5jlI=;
 b=NR74KEg0JqJQYxamBCRUa3xXEcPs6C6ScVLkHA1TXhnEKTSFKT9cd+RIIhzTbYwEoaUjuzh7oajXwEX5Iic9qYtX7KQvxlj0rRC8lIQrYVvYE7ZH7UAHRaw/5+Zp5uohkhL8X9XRInKtTG4nxFMDhlidqxrlGEbxigrJwUzmDj0jIavGcjEG2AUvjT8IGbKy6MYCHg8cTGCSHE+S8asPNKO/Q+6wTM2yS2HefacjnuLnqA+pVHTHC3FlVKdcyIS075cBpUCA+ndv3/K3rhwQNyvZ4o8Q9UWfsvt4h9oXcEzvCJrBbozL5nHosMM4N9BeZBAlZ3Osi7TMIl72mIwo5w==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <5909924e-965a-fe20-6b93-7599acd02d38@suse.com>
Date: Mon, 23 Oct 2023 10:41: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 for-4.19] xen/xmalloc: XMEM_POOL_POISON improvements
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@eu.citrix.com>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 Julien Grall <julien@xen.org>, Xen-devel <xen-devel@lists.xenproject.org>
References: <20231020202649.1802700-1-andrew.cooper3@citrix.com>
 <2902d6cc-169b-a70f-ce10-10925e837fb6@suse.com> <ZTYunVMy-d0cxEa6@macbook>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <ZTYunVMy-d0cxEa6@macbook>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR0P281CA0069.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:49::22) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AS8PR04MB8038:EE_
X-MS-Office365-Filtering-Correlation-Id: eb13f2ac-2b47-4943-abff-08dbd3a3cf7a
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	G8ncbmLWqA9PIf9aKndfM1YMHzsDVyjwJ/hmWcoaE9tmgXwBBRt4XCfTRSTqoRbgj3kio0/pN7TnCOuqo1onbX5bpoY/D8412nBEdB6UYlywLzWITNv6eFFQ+mGX0vwBj/vwUihriPTCe3EMy2vkeTsVEC/OMPkHABk9ChOSLPQDHDOgurTv3h/lVpxU5KJ84+FC7BEZOjj55FBp9PfPu1MrIjJv6M7G1YYzH45G5AXYntRf7saZCJJe55bT2et5iYgKpFvZReCSNBXe2pi5mVYLR+Eb/DL89L+c0C8S5zypJDoRctO7VttXODYK8/WpyuxTMVN9etdkseXcNiwTXoH7+hRHIJr4evxXojzJi4s6/QEqQxNpUW5ujG0M2wRpCqgF2WcVQQDzF9gk8i47gBODzDpdXWEHtX+8Wu1P9cKQQgfVvOzi2/ZGQQhnLrU3mtqWEGsNb1Nbm0YsrWgb5DQq/DZe7tAN+UAs4CEykJCnc5+BRvOz1n9inCL9ZeTX442wI9nPQUsKUlWkKuFbQUo8QtU32ekAMIkIssnv/FzX5pzwZYIbTRcBsfaCEDp4iDdxovlJvTSHTCYRvwTcDzw5sUWLnh+4jt/3+bPMFUJjIsjb9rmV201KCDQt3mQ111DYzG2XaejOvqGPho9Nwg==
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)(136003)(346002)(396003)(230922051799003)(1800799009)(451199024)(186009)(64100799003)(31686004)(4326008)(8936002)(8676002)(5660300002)(2906002)(4744005)(41300700001)(26005)(83380400001)(53546011)(6506007)(38100700002)(6512007)(2616005)(86362001)(36756003)(31696002)(54906003)(66476007)(66556008)(478600001)(6486002)(66946007)(316002)(6916009)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?ZFJhdEs3NWlBbDlhL1ZnRy9VUVZBNCt2SThtVGVVQmlVZFUzQ3Y5N0ZaRUhm?=
 =?utf-8?B?N2ozTlhjUHNpMTc2a1hxRjluN1F3amRLZGcrNXo3bXJ5WU9IbWNXdmp3Zjg3?=
 =?utf-8?B?djBVN21DelhLUXVWbnBzTElaZjVRODFNWmFEYlNtOVlnM2tXTjZjMjRPZTU4?=
 =?utf-8?B?TnViblh2VlZaV1VEaDZKSXUxS3lvSjZnbEtTZVk4dFI0d0lmLzFDLzBhRjUx?=
 =?utf-8?B?elNXcHpTNkxOb2RsRU8vb2tZVUN4YmFtUUdLUGsxcnozNUkyV2N2dkNTTzJF?=
 =?utf-8?B?Nm1idktTc2ExUTVZUWpmdDhqbEdPb3BDdm4vWkROSWVwRU1xK1FhWTdYWUR4?=
 =?utf-8?B?REZwMzFlOHJaS3B6NGdKVHJzRjcrRkgrTDZNNHB1Z2VPNnl3NjcvbmRjTk1w?=
 =?utf-8?B?VWhRU0JtNFJNN1JsTVVpakJlbGFKaDRZRC9lUW56aHd1WnJaWU9jWDZReVR2?=
 =?utf-8?B?a1A3NmdHZ3FvcXNDNVNpRXpUYnNhWUVkbGt1QzhrK3NzOHFKc25zdmJhNXdW?=
 =?utf-8?B?dU1MM3ltLzA0ZEdwNWpxb3pXL29GRmo3SGVkSno4bUdDRmhqa1ZnbFlUNEVR?=
 =?utf-8?B?cE8wc1F5eGdFeHhTRjZhcTZlcnI5a1A1Qk5OTUNOeTEveWt5eXhUZFpESmtS?=
 =?utf-8?B?cXFnTGY2cXpHODYrVW9XV3F1TGF5ZGFnc2FiYmdreTE2azYrZ3hsOCtQUEFj?=
 =?utf-8?B?MkdPNmEvTk1rbGcwUHpMWkQwL0JTWXN1QlRDZlRVd05ka29VdkNpQ1kvT3Nq?=
 =?utf-8?B?Z25UZ21tZlIybllLcDVlUkYraFFodzFiMm1hTU1PN0RnVy9jY1ZJN1hyQ3Qy?=
 =?utf-8?B?ZGtOT0xMNjFXM3p2TnpOblRQQ1dLZXIyN2dYaVR0eUl5bFBsR0VXbWdRZTRD?=
 =?utf-8?B?OXNsUHd1dWlTUFVla0g4SWZkOFYzdVRMSHkyMStENUZSL3RjczZ6TXcvUXY0?=
 =?utf-8?B?RFpzeHlqTWNZVmRMb24yaloyalRQdUFVWmdzNWltbkJTanBXemtVZnBYVklB?=
 =?utf-8?B?RmJsM1hoeEMrUTNiYkw1bnhGK2tES3JSZkM4aTR3UEVaZDFqaGdWN2F1UXRE?=
 =?utf-8?B?TUxKYW5BQ0xQNXpRdzNzdzNEZk11QjYzQnVYcmRPeXdyYnF4c3JxNloxMC9M?=
 =?utf-8?B?UWlWa0F5UkNNd3BtNnNXWElWc1JrS1F6Ui9aRkdLVHdvSTA5ai8vZ042UkNP?=
 =?utf-8?B?YWpXOTlDYlE1TXY5aE9LajFmckp3blhNTTBNaFMwSEk2clJWdWNUVUNjSUM5?=
 =?utf-8?B?aksvUkhBd3FjSzRzenN1Wlp4bGRITE94Wm45NnhzVlpWYjZHbkRHYU9WYlFD?=
 =?utf-8?B?Z3laakdjUnJublQwNW4zcCtJdDNFbjFnZTl6RGRRMmp4WUpTcHhvdk5GRU9p?=
 =?utf-8?B?UFl1ai9BZUs4S2dYMkZjc2lZa0l0NVd3Z1VueUNwRlkvdExXYk1LVDhVdUhQ?=
 =?utf-8?B?V3NWSitMdE9nMFJuM2FaTDc5dXQ4bmRQOTVNUHJRZVdzRU9pa2JVSTdzSTRO?=
 =?utf-8?B?QUlXdzVuRHF0akdTNmFVRVF0N0xMeGFNMm1NQVlqOHpKTENReXVhYjU1RGQx?=
 =?utf-8?B?M2pXYXJ4NVZzUFQ0cDJQYk5xVld6NjdXL1ZHbVJ0Y0RMY21aOEdjc1NPTXhL?=
 =?utf-8?B?TEdJQ3owemloZEJva1ZpckZUd0xIUjR2MGpXaklGWCt0S0UvejYzSnVOb3No?=
 =?utf-8?B?SGYzQ0hXTTBkazA4dG96UGNWNEQ3NStISGJZMzNoa1N1dlcxSDM2SGRVektC?=
 =?utf-8?B?SElOOWxKdSsxeXNMU1hLMjJYNDROeFpuVjNpUWFzdWhPVVFSMFJLMlFLTkNH?=
 =?utf-8?B?V3FUbXY4T0sxc0tQOXdtZFRVZi9udExUeHJtU2J3T3pzUkl6b0dHdEVLMXVO?=
 =?utf-8?B?L0ROYkVFN3VYRldaL0JmWUw3UGpsZWNxZ1A4b1p0TGpEWGo1b3dPc25OOS9q?=
 =?utf-8?B?WG9Kb1FJdGdwdS82Z2pWS0RVNnplYTgvQllVM1p4N0VyL3czaDFKYTB5U1Rj?=
 =?utf-8?B?dGMyaFozdU5Pdjd3TWhNcy96Q1ZGVUNnWlpkLzFaME55RWh4b1EzeUlXazdw?=
 =?utf-8?B?RnFmaksrRllsVm5seTZSa2FDRTY0T1NuYzM4Q3dCZnlvbnhJR3pvK3JRRmJ1?=
 =?utf-8?Q?eG4NP++qwka6/lOM+fXySGGpY?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: eb13f2ac-2b47-4943-abff-08dbd3a3cf7a
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Oct 2023 08:41:11.8166
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: Fi+sqsZQYwyQH4pKKteHYuT72CfypWsj7sTIdSWm+TPyK2q/2ilwhboLV31SrsgYX09smtVAtY0h4hQZbaZ1XQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB8038

On 23.10.2023 10:28, Roger Pau Monné wrote:
> On Mon, Oct 23, 2023 at 10:04:21AM +0200, Jan Beulich wrote:
>> On 20.10.2023 22:26, Andrew Cooper wrote:
>>> However, upping to a BUG() can't provide any helpful message out to the user.
>>>
>>> I tried modifying BUG() to take an optional message, but xen/bug.h needs
>>> untangling substantially before that will work, and I don't have time right now.
>>
>> I agree with Julien's suggestion of using panic() in the meantime, as a
>> possible alternative.
> 
> We might care about the stack trace, so would be helpful to print it,
> maybe WARN + panic?

Perhaps, yes.

>> Question though is whether it's better to halt the
>> system right away, as opposed to e.g. permitting orderly shutdown to cover
>> the case where the corruption ends up not being "deadly".
> 
> Hm, won't this be risky, as we could then possibly corrupt data on disk
> for example?

It is risky - you never really know which of the two options is better.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Oct 23 08:44:25 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 08:44:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621082.967127 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quqXr-0003Xo-BW; Mon, 23 Oct 2023 08:44:19 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621082.967127; Mon, 23 Oct 2023 08:44: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 1quqXr-0003Xh-8X; Mon, 23 Oct 2023 08:44:19 +0000
Received: by outflank-mailman (input) for mailman id 621082;
 Mon, 23 Oct 2023 08:44: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=gXaf=GF=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1quqXq-0003XZ-Dr
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 08:44:18 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 5986644c-7180-11ee-98d5-6d05b1d4d9a1;
 Mon, 23 Oct 2023 10:44:16 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id A890E4EE0740;
 Mon, 23 Oct 2023 10:44: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: 5986644c-7180-11ee-98d5-6d05b1d4d9a1
MIME-Version: 1.0
Date: Mon, 23 Oct 2023 10:44:16 +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.cooper3@citrix.com, roger.pau@citrix.com, Simone Ballarin
 <simone.ballarin@bugseng.com>, Doug Goldstein <cardoe@cardoe.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][for-4.19 v2] xen: Add SAF deviations for MISRA C:2012
 Rule 7.1
In-Reply-To: <23f2682f-acc4-20aa-21fc-644a3c1141b5@suse.com>
References: <a9c52c943380f2c35f0a6ccab8215c03e87c99dc.1697712857.git.nicola.vetrini@bugseng.com>
 <de2b666e-ca48-58d2-73eb-5adc797f818e@suse.com>
 <d879b8e4689e51131f081edcb3b2abe6@bugseng.com>
 <dd58e1cb-8f17-986d-f4f9-f39e998e05a0@suse.com>
 <5b1cd4fba12664f2ef49bcc2eb198e31@bugseng.com>
 <d83c024b-05a9-5298-9e43-e693675c2da5@suse.com>
 <6a90edf81f410db8069526228de75d7e@bugseng.com>
 <7d7ebafa-9751-bd0a-c47a-1894d9edadf5@suse.com>
 <800b2c809829942210323804b6778c40@bugseng.com>
 <23f2682f-acc4-20aa-21fc-644a3c1141b5@suse.com>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <564217259e2f65e34d3497697bd5f9e5@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


>>>> 3. an use of MASK_EXTR() in x86/hvm/svm/emulate.c appears, with 
>>>> octal
>>>>     constants in the expansion. This will be deviated;
>>> 
>>> This is what I'm concerned of: How do you know up front whether such
>>> new
>>> uses want deviating?
>> 
>> I understand you concern now. I can argue that all the macros in that
>> table have indeed
>> an octal constant in their definition (0 is explicitly allowed by
>> MISRA).
>> This is also specified in the comment above the INSTR_ENC macro
>> definition, therefore any
>> new addition should have an octal the second argument to INSTR_ENC.
> 
> Right, and I previously indicated I agree as far as INSTR_ENC() goes.
> What we appear to continue to disagree about is MASK_EXTR().
> 

Yeah, sorry. What about

if ( modrm_mod       == MASK_EXTR(instr_modrm, 0300) && /* octal-ok */
      (modrm_reg & 7) == MASK_EXTR(instr_modrm, 0070) && /* octal-ok */
      (modrm_rm  & 7) == MASK_EXTR(instr_modrm, 0007) )  /* octal-ok */
             return emul_len;

It does not really fit in the SAF framework, because the deviation is 
still done with a
configuration, but at least it gives some clear indication on how to 
introduce an octal
constant in this file.

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


From xen-devel-bounces@lists.xenproject.org Mon Oct 23 08:46:42 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 08:46:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621085.967137 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quqa9-0004lD-NB; Mon, 23 Oct 2023 08:46:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621085.967137; Mon, 23 Oct 2023 08:46: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 1quqa9-0004l6-Ka; Mon, 23 Oct 2023 08:46:41 +0000
Received: by outflank-mailman (input) for mailman id 621085;
 Mon, 23 Oct 2023 08:46: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=gXaf=GF=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1quqa8-0004kt-6Y
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 08:46:40 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id ae4b5c88-7180-11ee-98d5-6d05b1d4d9a1;
 Mon, 23 Oct 2023 10:46:39 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id 0B6BD4EE0740;
 Mon, 23 Oct 2023 10:46: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: ae4b5c88-7180-11ee-98d5-6d05b1d4d9a1
MIME-Version: 1.0
Date: Mon, 23 Oct 2023 10:46:39 +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.cooper3@citrix.com, roger.pau@citrix.com, Simone Ballarin
 <simone.ballarin@bugseng.com>, Doug Goldstein <cardoe@cardoe.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][for-4.19 v2] xen: Add SAF deviations for MISRA C:2012
 Rule 7.1
In-Reply-To: <564217259e2f65e34d3497697bd5f9e5@bugseng.com>
References: <a9c52c943380f2c35f0a6ccab8215c03e87c99dc.1697712857.git.nicola.vetrini@bugseng.com>
 <de2b666e-ca48-58d2-73eb-5adc797f818e@suse.com>
 <d879b8e4689e51131f081edcb3b2abe6@bugseng.com>
 <dd58e1cb-8f17-986d-f4f9-f39e998e05a0@suse.com>
 <5b1cd4fba12664f2ef49bcc2eb198e31@bugseng.com>
 <d83c024b-05a9-5298-9e43-e693675c2da5@suse.com>
 <6a90edf81f410db8069526228de75d7e@bugseng.com>
 <7d7ebafa-9751-bd0a-c47a-1894d9edadf5@suse.com>
 <800b2c809829942210323804b6778c40@bugseng.com>
 <23f2682f-acc4-20aa-21fc-644a3c1141b5@suse.com>
 <564217259e2f65e34d3497697bd5f9e5@bugseng.com>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <6ab1b041e65e2323c5ca97d44d5f8c59@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 23/10/2023 10:44, Nicola Vetrini wrote:
>>>>> 3. an use of MASK_EXTR() in x86/hvm/svm/emulate.c appears, with 
>>>>> octal
>>>>>     constants in the expansion. This will be deviated;
>>>> 
>>>> This is what I'm concerned of: How do you know up front whether such
>>>> new
>>>> uses want deviating?
>>> 
>>> I understand you concern now. I can argue that all the macros in that
>>> table have indeed
>>> an octal constant in their definition (0 is explicitly allowed by
>>> MISRA).
>>> This is also specified in the comment above the INSTR_ENC macro
>>> definition, therefore any
>>> new addition should have an octal the second argument to INSTR_ENC.
>> 
>> Right, and I previously indicated I agree as far as INSTR_ENC() goes.
>> What we appear to continue to disagree about is MASK_EXTR().
>> 
> 
> Yeah, sorry. What about
> 
> if ( modrm_mod       == MASK_EXTR(instr_modrm, 0300) && /* octal-ok */
>      (modrm_reg & 7) == MASK_EXTR(instr_modrm, 0070) && /* octal-ok */
>      (modrm_rm  & 7) == MASK_EXTR(instr_modrm, 0007) )  /* octal-ok */
>             return emul_len;
> 
> It does not really fit in the SAF framework, because the deviation is
> still done with a
> configuration, but at least it gives some clear indication on how to
> introduce an octal
> constant in this file.

What I mean is that matching /* octal-ok */ is an additional constraint 
for the
deviation to be applied in that file.

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


From xen-devel-bounces@lists.xenproject.org Mon Oct 23 08:47:15 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 08:47:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621089.967148 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quqag-0005OZ-VZ; Mon, 23 Oct 2023 08:47:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621089.967148; Mon, 23 Oct 2023 08:47: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 1quqag-0005OS-Sj; Mon, 23 Oct 2023 08:47:14 +0000
Received: by outflank-mailman (input) for mailman id 621089;
 Mon, 23 Oct 2023 08:47: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=OVTz=GF=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1quqaf-0005Dh-Pi
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 08:47:13 +0000
Received: from EUR03-AM7-obe.outbound.protection.outlook.com
 (mail-am7eur03on2062b.outbound.protection.outlook.com
 [2a01:111:f400:7eaf::62b])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id c1ec5e9d-7180-11ee-9b0e-b553b5be7939;
 Mon, 23 Oct 2023 10:47:12 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DU2PR04MB8501.eurprd04.prod.outlook.com (2603:10a6:10:2d0::12)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.9; Mon, 23 Oct
 2023 08:47:09 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6933.011; Mon, 23 Oct 2023
 08:47: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: c1ec5e9d-7180-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=QrrtTdSHFc9OzaDLzW+INhP5ISCk4/QEpEPlj8dF+aA4yRGUGwyZ3UYnffYgx/r5YNBozqgrI/27liRliYAL8ayGvEThDvRmvLIJE/Ot6G31KdCGHAnac3lOqKJmOAVH7gBImi45XdSva95OdZxreY8jDerpJg7S8Q02l9UkGQCJ8bN3eCJN6uNechGd1o0WfrYtT74sf+7uNGLsFGs2EByqr9RyuM0hrnNdqDkRCF5L1P7OoDVM+CYtZeiCQ504O3rsA77j4U0QwvL8Td3kBkCH0WdnjKtgzqKdR5v35Sp3FXWmySV4DArm1re+mh9Fmgx+TD3p8XV6QDHCAFVsDA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=HD+nQ5Zwp0XpZKuHKXpaw+I7Y+UiuAivr/EeVo2Khxg=;
 b=BG8REplpRPGT1afl6vWJ40+1qAyO7sxhWFYHCCzD0M2lehYYyqNQQeacMfEjbGZ9U0uOiiSeHjlACJBrIBTJb310IuPp6YnHKA5TNMBaEvsFjx9d7639bONr3cOv9tNZpTIuqUBJVAB4x2Z3eqgsAbpAXHW3yEGdoCvANiZxCJGpEurOCdrvhQ43igT0bfjpeiD2vTRI29BQTWXGPPwzbyInz9ifBPCjuT46q+veN0gTBDGfwhX/KDw2SArloLYG6UB6WscE9QQCfbZGPz3f5P6icSA7elHU+EZssqjep2z4nheDpK03SDr8wDXeIH3+VpRjsFR/Jaoq66H9zhQhAg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=HD+nQ5Zwp0XpZKuHKXpaw+I7Y+UiuAivr/EeVo2Khxg=;
 b=KAstmf/Qym1tdzVPQZdjjeT5QC+k9TiJrhq9hwD7LrJVt/huH2d9w2bztkuW27GPK/8ElkhhzWqGzZykEAeT+9dFi21o1cfbYPNKFF7zoRx4zojo3sIPs8diuzjYEAx5V5VpI4WzNUxXQo+JGxvG8Wq1F3Tl12rb/md4E3mhIS7qnfN7uazETw6rurqP4Kw7KD0gl/BeINh5BR3QTcBtye4+1itqfdsVEzO4p1u58yPzaKdYlygRvPCrqJaR6jcJAo5rpDmIn+2WEqMJbxhkmgEua6DTprhwqu9jy/pQlJlgsMud9iXVxckAa6KAvc0vpFmFp3FAPmst25deqkSITw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <c844b724-0d27-34eb-368c-d6537bd24017@suse.com>
Date: Mon, 23 Oct 2023 10:47:08 +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][for-4.19 v2] xen: Add SAF deviations for MISRA C:2012
 Rule 7.1
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.cooper3@citrix.com, roger.pau@citrix.com,
 Simone Ballarin <simone.ballarin@bugseng.com>,
 Doug Goldstein <cardoe@cardoe.com>, George Dunlap
 <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Wei Liu <wl@xen.org>, xen-devel@lists.xenproject.org
References: <a9c52c943380f2c35f0a6ccab8215c03e87c99dc.1697712857.git.nicola.vetrini@bugseng.com>
 <de2b666e-ca48-58d2-73eb-5adc797f818e@suse.com>
 <d879b8e4689e51131f081edcb3b2abe6@bugseng.com>
 <dd58e1cb-8f17-986d-f4f9-f39e998e05a0@suse.com>
 <5b1cd4fba12664f2ef49bcc2eb198e31@bugseng.com>
 <d83c024b-05a9-5298-9e43-e693675c2da5@suse.com>
 <6a90edf81f410db8069526228de75d7e@bugseng.com>
 <7d7ebafa-9751-bd0a-c47a-1894d9edadf5@suse.com>
 <800b2c809829942210323804b6778c40@bugseng.com>
 <23f2682f-acc4-20aa-21fc-644a3c1141b5@suse.com>
 <564217259e2f65e34d3497697bd5f9e5@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <564217259e2f65e34d3497697bd5f9e5@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0019.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:c9::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_|DU2PR04MB8501:EE_
X-MS-Office365-Filtering-Correlation-Id: 9b60f47f-ba8f-4462-91d9-08dbd3a4a4de
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	B+0MJOla9c+ThKShWPSLBEzN7BYWMMSyZkLWLNL7gJGdBtPRPkNN+Id0PONEk9Wu/A/5ufTYQukjnutA82PmLwKHR0ABITj4G/pRVujhXIUyGYcWcxV+g6wJHEQEyoDSQo0sZ4Cn+7lbBS3fLFHQ3/NC7ftvAzNOuhkMISbsWnHd7C1QRog3Bt3Np26PX3oldbsgZauZsonlHBBStohLvQCSpFx1c9RbBwZ5FAhkwxFy1qt7t27ig0P6ICDCLTn7xAKZeRsQbthczW4lRqUQ7nTrN3WfZBwdsrgF2vIgb2TV9XVoXaeWihvUaORQBZaaNSsYpndug/peWZlvgg+UUSi5pJOjevB/24P6rU2s1LzB5tmvEGQ5985HYAdwTbYbE9E0/NpGFEMMY3J5/FNpJuhmv0saiORP1hwbXTOmVfZrDol6feshMBH5PfyHkylZ873tnzbPta6AXBJK1VwI3J7TjBsI2yGAs0MLYhchdu3YuAof3QheiG1jKFCFsp/dbA/0BIZ3KWJNGNp6jGRZrZfPX3JCvMKPQ829u09O8DzpZI9C4tsb2pT5FzD4YFatD1kH1Vn/qVxVmkleY0z7ixH80gzIPo0XEpXOmBp9AyBCNLaWtLHHqRj3hW5EO2yc12Vmxb/k7AkUj2lUru+6eA==
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)(39850400004)(376002)(346002)(366004)(396003)(230922051799003)(1800799009)(64100799003)(451199024)(186009)(66946007)(66476007)(66556008)(54906003)(316002)(6916009)(478600001)(31686004)(41300700001)(6486002)(5660300002)(8936002)(8676002)(4326008)(53546011)(31696002)(86362001)(2906002)(7416002)(36756003)(6512007)(6506007)(38100700002)(2616005)(26005)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?NG1TcU9SVm41clFZLzBqeHZreTlMQ2RzOS9VYnN5aitsVmE1SUlaM2xQU3BR?=
 =?utf-8?B?aHBqdk1BaDBIU1JUeUIydEpMNHlkWmE0SnVFUUl5VXU3c0k0U21FaHlMdytJ?=
 =?utf-8?B?bFdZUXpRMlhvc0VpblFTWnROMnAxYjFGZXlNTmFnSjkySDNrc2kyaklKS2xw?=
 =?utf-8?B?dGozODN4c2FsYmE4a0tVcnB0U3dJdkdyRmhiaGEyZldsRzQySFpwek1XRFIx?=
 =?utf-8?B?TEFKbnl6MzVKZytmMEJ1K1VhMzFXcDVWbnZIZThjMjEzR056OTlYS1AzZHBQ?=
 =?utf-8?B?YjVMYUhaeDlFdWJwdlVWaEppRktRc3hMNGNFakJaMXl0aUNodlY5T05vdDFm?=
 =?utf-8?B?TEFmdUtWNnBtUmxyUkNTUVU2dFVhdGg0VkgxaUoyRGtFTWx2OVQ2bXplSUlP?=
 =?utf-8?B?S24ra0drL0tLN1NPK0RZdVFBMFJxWDNQZjJCZXV2dnZKdmZhOVBFRXhxOE95?=
 =?utf-8?B?ZHBZM3RFMTVtbWRmSDE1ZGpEZGd2czJBb0tuc0oveFRzcFh6U1hzS0NmNGhP?=
 =?utf-8?B?OVlHN2xwUEVVWnlpbVE2Wm9uaWN4UTN4bXlkTFYxTHBtN2ZXbHk3U29WZVZx?=
 =?utf-8?B?b2pTSDlDdjQxaGpxTXlpTzVwQTg5RXl4MlNvckdKb3lWczBhMWU0N3VMVmN6?=
 =?utf-8?B?Rzh1alVBQlErNWtXbFZZb2gwc1ZmdENGZDN4WlhROGZuT2M1L0xrVEJWNlRz?=
 =?utf-8?B?c3U5WjVqenhGanRjOHpBNVVEUWRkR0lRamRLREJjRFJPQW1uaVBGNjhjb1Nu?=
 =?utf-8?B?SzdvaTNoQWExa01qK1dEY2s5YjFoT3M1aDNDVDl0STRmNTQ3Z1NZakplcUxV?=
 =?utf-8?B?UVp3M0djd2xFNENEQ09yd0JuZzN0dThwOVFwR1E5Y3FMbzVwSmdCb3NTcUE0?=
 =?utf-8?B?a2lPVUoyQ3dndXA0NEZSM2Q3akl1aXhqTFd5WXovbWVWQ2RWazhjS3ZEdDBU?=
 =?utf-8?B?RjBJYmlkaUtsL2Fhd0sxeDR6RGg5REFadnYzbHM1cnBzeCttUmsrS1pvVlNw?=
 =?utf-8?B?UmVOcnJBQVhSMFpLMHFOck9MOWhqSmw4R2N4THQ0cmFFOWdCaXRUZ2EwaHU3?=
 =?utf-8?B?Ump5V0w1d1ltVmJXM1ozRzNxVlFIY3NuMUpnRXc2eDI0QjR6MUNqQ1VyZ2sz?=
 =?utf-8?B?Zy9LL3ZnRy9WeVgxZm1ZdmxkdXhyS3JpY2dDWTNyN28rMlB1T096WjZCMGl6?=
 =?utf-8?B?TXJTRkVwdmgwK2cycHBpVWZwSGZHT3VpVThTYW5tTHlsTnVzR250ZGh6S2xv?=
 =?utf-8?B?bmlHTDVaTlVDQit5K3FXR2l1S3JWMzYwamxHajB5MHFKMHdOWjB5amNzMU1j?=
 =?utf-8?B?eGJ4aUE5bjBVZks0d3piZGdtdzVWQzRlMERwaGtWLzNJMmUyYS9GcEJYU21w?=
 =?utf-8?B?MXJQT1VyZGttMEJvYys2ZXFRcFlySGc5YktNb2c2bWdyUFBtRUpnb0c0MTFZ?=
 =?utf-8?B?L00yMnc5bjBWZFFFV2UvN0dFa1BJeFRoTXdYNUpPd1RmMTQ3c0Q0cUpqcHF2?=
 =?utf-8?B?RmVMYlU2c3ZnVGlWZ05pb2lhMHYvS0t1dVlRTUZMNUJ4WTdWM3dEWHlYdlh5?=
 =?utf-8?B?bDN5WDN2aFAvQlNpQm1OZjQzeFV1OHMrVXF4MjBxWngzTGl0V0g4MlgyUTIr?=
 =?utf-8?B?UWJadndZY3hCR3E2dHZzdFVDcUxzRmRuZFo1QzBaMFZuL0pYRzJqNm04ZkRK?=
 =?utf-8?B?SGQyVlVhZmY5ZXB2THJlRU0wVE8vU1V3aFdyMnhtN0IreFgzNi9pT3kxUlk4?=
 =?utf-8?B?TWhlQnBMQmswdjJpQU1ueEFzaVlVdTRVNkNBNk9OUUtoWC9waVpqMmczSkpY?=
 =?utf-8?B?akRXMm9zSnpkdHBDMjRwbnUxOUlXREYzUFdMUE9qMUFXNkc4YlM3TU9pVEFN?=
 =?utf-8?B?ekd3NkE2ME5oVUV4S3djT0cyVHBvSVp4Y0JxL1dRNFF5bjZzUGFaNGpOcytq?=
 =?utf-8?B?VDRtR0drV3NSUW1HSDI1TTd5cFVRQXMwSHdBZDBwQVcvcVBhSXFZeW0yZDRQ?=
 =?utf-8?B?eEtHOTUwazJJS0F6MjE0NjlTZTFaR0NKNmN1Tm11QTdJaEk5MUl6RlRlVXBn?=
 =?utf-8?B?dCs1U3doZkJ6dkR5ME5yK2xxWVlkNVlOSWxTOFpXLzFkU3IrU2J5VWxncXNt?=
 =?utf-8?Q?wyt09vhXSKw0gdGKn7+rO2wLQ?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 9b60f47f-ba8f-4462-91d9-08dbd3a4a4de
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Oct 2023 08:47:09.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: GL29LHRABZtSSzG3m0TPZBk4wK/YouPMGSZ6pHifVzaNIMKDYAKUzWziE3mjWxup9lKmBiazIo4RWiaTWmX3xA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU2PR04MB8501

On 23.10.2023 10:44, Nicola Vetrini wrote:
> 
>>>>> 3. an use of MASK_EXTR() in x86/hvm/svm/emulate.c appears, with 
>>>>> octal
>>>>>     constants in the expansion. This will be deviated;
>>>>
>>>> This is what I'm concerned of: How do you know up front whether such
>>>> new
>>>> uses want deviating?
>>>
>>> I understand you concern now. I can argue that all the macros in that
>>> table have indeed
>>> an octal constant in their definition (0 is explicitly allowed by
>>> MISRA).
>>> This is also specified in the comment above the INSTR_ENC macro
>>> definition, therefore any
>>> new addition should have an octal the second argument to INSTR_ENC.
>>
>> Right, and I previously indicated I agree as far as INSTR_ENC() goes.
>> What we appear to continue to disagree about is MASK_EXTR().
>>
> 
> Yeah, sorry. What about
> 
> if ( modrm_mod       == MASK_EXTR(instr_modrm, 0300) && /* octal-ok */
>       (modrm_reg & 7) == MASK_EXTR(instr_modrm, 0070) && /* octal-ok */
>       (modrm_rm  & 7) == MASK_EXTR(instr_modrm, 0007) )  /* octal-ok */
>              return emul_len;
> 
> It does not really fit in the SAF framework, because the deviation is 
> still done with a
> configuration, but at least it gives some clear indication on how to 
> introduce an octal
> constant in this file.

Well, I don't mind the comment, but is the config change then going to
also match (part of) the comment, i.e. key off of not just MASK_EXTR()?

Jan


From xen-devel-bounces@lists.xenproject.org Mon Oct 23 08:58:05 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 08:58:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621093.967158 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quql2-0008JV-5X; Mon, 23 Oct 2023 08:57:56 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621093.967158; Mon, 23 Oct 2023 08:57: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 1quql2-0008JO-0b; Mon, 23 Oct 2023 08:57:56 +0000
Received: by outflank-mailman (input) for mailman id 621093;
 Mon, 23 Oct 2023 08:57: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 1quql1-0008JE-GW; Mon, 23 Oct 2023 08:57: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 1quql1-0001sP-9B; Mon, 23 Oct 2023 08:57: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 1quql0-0004HQ-Oa; Mon, 23 Oct 2023 08:57:54 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1quql0-0008IO-O8; Mon, 23 Oct 2023 08:57: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=C5IZxB2g4+gaeW4GvyiDHYPCyDUAoe/CdlHjI+zBpOs=; b=YXz4D9fDCo/y1ftr2rbXcKL5y/
	PgfJhvfhqK9PoVqjB65eyDlCjNYwHZpNmo/dKXrE5wC119pnpMRLiWr70BXUHfv4MoUWDkoOEWHUg
	wkg9XAPxFU+rZfYDXkgyk/tQnhwsQ+GA2nyg6G64jfA6tbuUvz4y+CQ8JidFLAFLTRqU=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183493-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 183493: tolerable FAIL
X-Osstest-Failures:
    xen-unstable:test-amd64-i386-libvirt-xsm:xen-install:fail:heisenbug
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:guest-start/debianhvm.repeat:fail: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:guest-localmigrate/x10:fail:heisenbug
    xen-unstable:test-armhf-armhf-libvirt-qcow2:xen-boot:fail:heisenbug
    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-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-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:guest-stop: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-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: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-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-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-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-arndale:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:saverestore-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-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt: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-amd64-i386-libvirt-raw: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-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:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=bad1ac345b1910b820b8a703ad1b9f66412ea844
X-Osstest-Versions-That:
    xen=bad1ac345b1910b820b8a703ad1b9f66412ea844
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 23 Oct 2023 08:57:54 +0000

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

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-amd64-i386-libvirt-xsm   7 xen-install      fail in 183489 pass in 183493
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 18 guest-start/debianhvm.repeat fail in 183489 pass in 183493
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 12 debian-hvm-install fail in 183489 pass in 183493
 test-amd64-i386-xl-qemuu-ovmf-amd64 18 guest-localmigrate/x10 fail pass in 183489
 test-armhf-armhf-libvirt-qcow2  8 xen-boot                 fail pass in 183489

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail in 183489 like 183453
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail in 183489 never pass
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183489
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183489
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 183489
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183489
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183489
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 183489
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183489
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 183489
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183489
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 183489
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183489
 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-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          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-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-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-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-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-amd64-amd64-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-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-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-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          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass

version targeted for testing:
 xen                  bad1ac345b1910b820b8a703ad1b9f66412ea844
baseline version:
 xen                  bad1ac345b1910b820b8a703ad1b9f66412ea844

Last test of basis   183493  2023-10-23 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                       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                                     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 Oct 23 09:00:33 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 09:00:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621099.967168 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quqnW-0001JK-Lj; Mon, 23 Oct 2023 09:00:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621099.967168; Mon, 23 Oct 2023 09:00: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 1quqnW-0001JD-Ij; Mon, 23 Oct 2023 09:00:30 +0000
Received: by outflank-mailman (input) for mailman id 621099;
 Mon, 23 Oct 2023 09:00: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=xDcF=GF=amd.com=Michal.Orzel@srs-se1.protection.inumbo.net>)
 id 1quqnV-0001Iq-VE
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 09:00:30 +0000
Received: from NAM10-MW2-obe.outbound.protection.outlook.com
 (mail-mw2nam10on20606.outbound.protection.outlook.com
 [2a01:111:f400:7e89::606])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 9bd2193b-7182-11ee-98d5-6d05b1d4d9a1;
 Mon, 23 Oct 2023 11:00:28 +0200 (CEST)
Received: from SA9PR13CA0064.namprd13.prod.outlook.com (2603:10b6:806:23::9)
 by DS0PR12MB8318.namprd12.prod.outlook.com (2603:10b6:8:f6::14) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.26; Mon, 23 Oct
 2023 09:00:24 +0000
Received: from SN1PEPF000252A1.namprd05.prod.outlook.com
 (2603:10b6:806:23:cafe::ab) by SA9PR13CA0064.outlook.office365.com
 (2603:10b6:806:23::9) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.15 via Frontend
 Transport; Mon, 23 Oct 2023 09:00:24 +0000
Received: from SATLEXMB03.amd.com (165.204.84.17) by
 SN1PEPF000252A1.mail.protection.outlook.com (10.167.242.8) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6933.15 via Frontend Transport; Mon, 23 Oct 2023 09:00:23 +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, 23 Oct
 2023 04:00:21 -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, 23 Oct
 2023 04:00: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; Mon, 23 Oct 2023 04:00: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: 9bd2193b-7182-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=kJJMWTnWnmwG4SzJqi/tcWf0c2UtWljQyYtPqIvgb44Q5FQvy2bYmak3Hx2SYOLCoubQ160KV4ZJKix8SJyrMaBLJz6ZS4xfX6ariaK0yOKEgc126Fw4VRv+ZhPC1HyVJBptPKKOAZ5/7hjJwUqmn8ZjL+7JOUxCzXLtfxr6Kc3aTIDgbGYtN+JuVgo7WvWm5eUt4I8OQfUC4wCRs1ZueY1cPDXqRKHvF2vrvd9SltzKxFiV56HcqZG4FkpP1Jj1yvkvXoB7lbMbGo/msOiSXGDBzXrcGcZpb6yyUw9fvO3o7ofWg/sWeNl3XQy2HOLcDx4WpewFFaHSTIWqZbe75A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=Vube39Ka9BVyhP1vz/u0gAMi5EPqVvIMArcc279spGU=;
 b=iZ6AmanI2oRTmbXsk40KR1qUUBqgGC3a5CrTQM2jgFkdazcuwA1KqpuO0cPE/2R9j9jE0EqcWwpbifVAi25sU5yFT9rSsOe5U8u7SqRlOt5bLdqZ6SL5JPVF+v4kVZEAUHyEQbMWZFzd+bC8QF25xRcUiKXj7lkk7SXohxZ5XhJZcumeQAU89Ia3DwRl/nmxfL7RYCdCu73lyukUuwYjEoRL+MLLIJYi9iSy3wr7qjHwvRAx1CSJ9oKKjA3Rik6SyY9srZE5xmiaVeSMvf1Yw+nTOT4sJDuTb52tNHmvMFE/FDbFb7JEExPnwcOY5qvsFvUy3mev+HHNO1TFhi29ng==
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=Vube39Ka9BVyhP1vz/u0gAMi5EPqVvIMArcc279spGU=;
 b=xSL15XF3ydUwBkOxxSi150wagpouNMPPubtvQm7B+aPFTps3m2yJnDhCCjdBd5/RSrVtUgeHkbh5mc8qmzqyAgKKtSVzswZJbaeIFLeXF+wiJaVUCG+5HRC1OGRbjZClC1Cq2TSOll8delIXJP4MjJtK2ZILJNtRN8yy9/yhd8s=
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: <755bb8c6-d386-405a-a825-34a0d5ba3816@amd.com>
Date: Mon, 23 Oct 2023 11:00:01 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v5 1/9] xen/arm: don't pass iommu properties to hwdom for
 iommu-map
Content-Language: en-US
To: Julien Grall <julien@xen.org>, Stewart Hildebrand
	<stewart.hildebrand@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: <20231004145604.1085358-1-stewart.hildebrand@amd.com>
 <20231004145604.1085358-2-stewart.hildebrand@amd.com>
 <31cdf500-959d-42cb-a1ce-bbee7cb5e251@xen.org>
From: Michal Orzel <michal.orzel@amd.com>
In-Reply-To: <31cdf500-959d-42cb-a1ce-bbee7cb5e251@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 7bit
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SN1PEPF000252A1:EE_|DS0PR12MB8318:EE_
X-MS-Office365-Filtering-Correlation-Id: b18a71d3-4bd0-4d01-3a91-08dbd3a67e24
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	e9WRo3HxNaisn9i9xPRasKCRZ3YO/5GfY7tZ076eaHmPCAoN7AHaaNotdxHB+bZkwCG8TlUhw4Rdsz+yGHxKfhIr2AtbrgZi7PJ0RiLQWKY76a9yNM5GMC8o6wgWbX6D2KQXDha0+RRmIHz1QKerArFyM0lV8OWiTGpYCNMlWxypLTLgVv71D5dChj3Y5vRkyVx2EyOGjD2cdtvfwJjGQ45FPSH4aM9QspEvjD1PgwoNnLtjAobiD4B+zL/ehMqMu9C+YPlRPfQ1QFTr+LCTiEfi33+OPzGOCbeBr1HUNAudtWFl94y8KEG6VUImGH+QlhpGb3IQgfzy37c+rcVAZHEmBCQHGJUbk+v3jYAhyuse6kQxB8qwD+F7iP3bxi0n74uPhODhfoX4BLdc7eRdmBh1N1UPejeSnKQbgV7MyE7kQpUUSp/kWgOTYyRPc78YrUujpYA9XkQLpilF/uNZ4J1B3JcNrMwVyOlSdLqqJRvPu3yuMeHOON0DHSduuZE0aP1+pfbPzEJ1J2mFsvahD0rZfipa8gros73s22QkHmRLe708BrRbCv7fxMDAAsWnPc5oK0qyWHlqM1HlIt0KfOo8oUDr5Ni0k8nTgughV1cSLP0YDD4GcuQAdEqWeyPvPlljyLrPm1Td2Ry8LsRIqRi6Vt6Dkzedu1fa+XPPxfLQK7dQIWToIUDmHf1qHV1buwHpAc5sfTX+FhBGOOszsktqV8HyKEC0AWlxvu4SZplYDsEbP4sPYo0HAKYQLwcRPi/ZVNRLQD9iKrbyju+VWDiMY9t25AB5ffZEyWl/wPw=
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)(230922051799003)(1800799009)(64100799003)(451199024)(186009)(82310400011)(36840700001)(40470700004)(46966006)(356005)(81166007)(40480700001)(82740400003)(5660300002)(316002)(54906003)(16576012)(53546011)(478600001)(336012)(426003)(41300700001)(2616005)(26005)(4326008)(44832011)(8676002)(8936002)(70206006)(70586007)(110136005)(966005)(36860700001)(2906002)(47076005)(31696002)(86362001)(36756003)(31686004)(40460700003)(36900700001)(43740500002);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Oct 2023 09:00:23.6767
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: b18a71d3-4bd0-4d01-3a91-08dbd3a67e24
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:
	SN1PEPF000252A1.namprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS0PR12MB8318

Hi,

On 20/10/2023 20:48, Julien Grall wrote:
> 
> 
> Hi,
> 
> On 04/10/2023 15:55, Stewart Hildebrand wrote:
>> A device tree node for a PCIe root controller may have an iommu-map property [1]
>> with a phandle reference to the SMMU node, but not necessarily an iommus
>> property. In this case, we want to treat it the same as we currently handle
>> devices with an iommus property: don't pass the iommu related properties to
>> hwdom.
>>
>> [1] https://www.kernel.org/doc/Documentation/devicetree/bindings/pci/pci-iommu.txt
>>
>> Reported-by: Michal Orzel <michal.orzel@amd.com>
>> Signed-off-by: Stewart Hildebrand <stewart.hildebrand@amd.com>
> 
> Acked-by: Julien Grall <jgrall@amazon.com>
> 
>> ---
>> v4->v5:
>> * new patch
>> ---
>>   xen/arch/arm/domain_build.c | 2 ++
>>   1 file changed, 2 insertions(+)
>>
>> diff --git a/xen/arch/arm/domain_build.c b/xen/arch/arm/domain_build.c
>> index 24c9019cc43c..7da254709d17 100644
>> --- a/xen/arch/arm/domain_build.c
>> +++ b/xen/arch/arm/domain_build.c
>> @@ -1135,6 +1135,8 @@ static int __init write_properties(struct domain *d, struct kernel_info *kinfo,
>>        * should be skipped.
>>        */
>>       iommu_node = dt_parse_phandle(node, "iommus", 0);
>> +    if ( !iommu_node )
>> +        iommu_node = dt_parse_phandle(node, "iommu-map", 1);
>>       if ( iommu_node && device_get_class(iommu_node) != DEVICE_IOMMU )
>>           iommu_node = NULL;
> 
> I was looking at the history to understand why we decided to not always
> hide the properties.
> 
> AFAICT, this was mainly to avoid removing the master properties but
> keeping the IOMMU nodes in the DT. However, in reality, I don't expect
> the IOMMU to function properly in dom0 (in particular when grants are
> used for DMA).
> 
> Looking at the bindings, it turns out that all the IOMMU using the
> generic bindigns would contain the property #iommu-cells. So we could
> remove any device with such property.
> 
> This would not work for IOMMU bindings not using the generic one. AFAIK,
> this is only legacy SMMUv{1,2} binding so we could filter them by
> compatible.
> 
> With that we would unconditionally remove the properties iommu-* and
> avoid increasing the complexity.
> 
> Any thoughts?
I think it is a good idea to skip all IOMMU nodes and properties and not only the ones
recognized by Xen. I realized that it may have an impact on Rahul's RFC vSMMU series
but I checked the patches and impact is negligible. As for supporting legacy bindings, I think
we would be good if we search for #iommu-cells || mmu-masters.

~Michal


From xen-devel-bounces@lists.xenproject.org Mon Oct 23 09:10:11 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 09:10:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621106.967188 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quqws-0004Gd-SH; Mon, 23 Oct 2023 09:10:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621106.967188; Mon, 23 Oct 2023 09: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 1quqws-0004GW-Pf; Mon, 23 Oct 2023 09:10:10 +0000
Received: by outflank-mailman (input) for mailman id 621106;
 Mon, 23 Oct 2023 09:10: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=gXaf=GF=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1quqwr-0004Fu-BF
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 09:10:09 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id f606a1d6-7183-11ee-98d5-6d05b1d4d9a1;
 Mon, 23 Oct 2023 11:10:07 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id C02B64EE0740;
 Mon, 23 Oct 2023 11:10: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: f606a1d6-7183-11ee-98d5-6d05b1d4d9a1
MIME-Version: 1.0
Date: Mon, 23 Oct 2023 11:10:07 +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.cooper3@citrix.com, roger.pau@citrix.com, Simone Ballarin
 <simone.ballarin@bugseng.com>, Doug Goldstein <cardoe@cardoe.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][for-4.19 v2] xen: Add SAF deviations for MISRA C:2012
 Rule 7.1
In-Reply-To: <c844b724-0d27-34eb-368c-d6537bd24017@suse.com>
References: <a9c52c943380f2c35f0a6ccab8215c03e87c99dc.1697712857.git.nicola.vetrini@bugseng.com>
 <de2b666e-ca48-58d2-73eb-5adc797f818e@suse.com>
 <d879b8e4689e51131f081edcb3b2abe6@bugseng.com>
 <dd58e1cb-8f17-986d-f4f9-f39e998e05a0@suse.com>
 <5b1cd4fba12664f2ef49bcc2eb198e31@bugseng.com>
 <d83c024b-05a9-5298-9e43-e693675c2da5@suse.com>
 <6a90edf81f410db8069526228de75d7e@bugseng.com>
 <7d7ebafa-9751-bd0a-c47a-1894d9edadf5@suse.com>
 <800b2c809829942210323804b6778c40@bugseng.com>
 <23f2682f-acc4-20aa-21fc-644a3c1141b5@suse.com>
 <564217259e2f65e34d3497697bd5f9e5@bugseng.com>
 <c844b724-0d27-34eb-368c-d6537bd24017@suse.com>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <c43f9f9744ee885db7babb3c818c9ef3@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 23/10/2023 10:47, Jan Beulich wrote:
> On 23.10.2023 10:44, Nicola Vetrini wrote:
>> 
>>>>>> 3. an use of MASK_EXTR() in x86/hvm/svm/emulate.c appears, with
>>>>>> octal
>>>>>>     constants in the expansion. This will be deviated;
>>>>> 
>>>>> This is what I'm concerned of: How do you know up front whether 
>>>>> such
>>>>> new
>>>>> uses want deviating?
>>>> 
>>>> I understand you concern now. I can argue that all the macros in 
>>>> that
>>>> table have indeed
>>>> an octal constant in their definition (0 is explicitly allowed by
>>>> MISRA).
>>>> This is also specified in the comment above the INSTR_ENC macro
>>>> definition, therefore any
>>>> new addition should have an octal the second argument to INSTR_ENC.
>>> 
>>> Right, and I previously indicated I agree as far as INSTR_ENC() goes.
>>> What we appear to continue to disagree about is MASK_EXTR().
>>> 
>> 
>> Yeah, sorry. What about
>> 
>> if ( modrm_mod       == MASK_EXTR(instr_modrm, 0300) && /* octal-ok */
>>       (modrm_reg & 7) == MASK_EXTR(instr_modrm, 0070) && /* octal-ok 
>> */
>>       (modrm_rm  & 7) == MASK_EXTR(instr_modrm, 0007) )  /* octal-ok 
>> */
>>              return emul_len;
>> 
>> It does not really fit in the SAF framework, because the deviation is
>> still done with a
>> configuration, but at least it gives some clear indication on how to
>> introduce an octal
>> constant in this file.
> 
> Well, I don't mind the comment, but is the config change then going to
> also match (part of) the comment, i.e. key off of not just MASK_EXTR()?
> 
> Jan

Yes, I added that to my reply.

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


From xen-devel-bounces@lists.xenproject.org Mon Oct 23 09:10:11 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 09:10:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621105.967178 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quqwn-0003sk-MP; Mon, 23 Oct 2023 09:10:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621105.967178; Mon, 23 Oct 2023 09:10: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 1quqwn-0003s2-Iy; Mon, 23 Oct 2023 09:10:05 +0000
Received: by outflank-mailman (input) for mailman id 621105;
 Mon, 23 Oct 2023 09: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=DOxK=GF=antgroup.com=houwenlong.hwl@srs-se1.protection.inumbo.net>)
 id 1quqwm-0003eK-GX
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 09:10:04 +0000
Received: from out0-196.mail.aliyun.com (out0-196.mail.aliyun.com
 [140.205.0.196]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id ef275a1a-7183-11ee-9b0e-b553b5be7939;
 Mon, 23 Oct 2023 11:09:58 +0200 (CEST)
Received: from localhost(mailfrom:houwenlong.hwl@antgroup.com
 fp:SMTPD_---.V5pF1jV_1698052193) by smtp.aliyun-inc.com;
 Mon, 23 Oct 2023 17:09:54 +0800
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: ef275a1a-7183-11ee-9b0e-b553b5be7939
X-Alimail-AntiSpam:AC=PASS;BC=-1|-1;BR=01201311R131e4;CH=green;DM=||false|;DS=||;FP=0|-1|-1|-1|0|-1|-1|-1;HT=ay29a033018047193;MF=houwenlong.hwl@antgroup.com;NM=1;PH=DS;RN=14;SR=0;TI=SMTPD_---.V5pF1jV_1698052193;
From: "Hou Wenlong" <houwenlong.hwl@antgroup.com>
To: linux-kernel@vger.kernel.org
Cc: "Hou Wenlong" <houwenlong.hwl@antgroup.com>,
  "Andy Shevchenko" <andy@infradead.org>,
  "Borislav Petkov" <bp@alien8.de>,
  "Boris Ostrovsky" <boris.ostrovsky@oracle.com>,
  "Darren Hart" <dvhart@infradead.org>,
  "Dave Hansen" <dave.hansen@linux.intel.com>,
  "H. Peter Anvin" <hpa@zytor.com>,
  "Ingo Molnar" <mingo@redhat.com>,
  "Juergen Gross" <jgross@suse.com>,
   <platform-driver-x86@vger.kernel.org>,
  "Thomas Gleixner" <tglx@linutronix.de>,
   <x86@kernel.org>,
   <xen-devel@lists.xenproject.org>
Subject: [PATCH 0/2] x86/xen/pvh: Clean up stack canary setup in PVH entry
Date: Mon, 23 Oct 2023 17:09:37 +0800
Message-Id: <cover.1698051454.git.houwenlong.hwl@antgroup.com>
X-Mailer: git-send-email 2.31.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Clean up the stack canary setup in the PVH entry. For a 64-bit kernel,
use fixed_percpu_data to set up GSBASE. For a 32-bit kernel, set up the
%fs register explicitly.

Hou Wenlong (2):
  x86/xen/pvh: Set up percpu for stack canary in 32-bit kernel entry
  x86/xen/pvh: Use fixed_percpu_data to set up GS base

 arch/x86/platform/pvh/head.S | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)


base-commit: 50dcc2e0d62e3c4a54f39673c4dc3dcde7c74d52
--
2.31.1



From xen-devel-bounces@lists.xenproject.org Mon Oct 23 09:10:14 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 09:10:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621107.967198 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quqww-0004Xp-4W; Mon, 23 Oct 2023 09:10:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621107.967198; Mon, 23 Oct 2023 09: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 1quqww-0004Xi-0P; Mon, 23 Oct 2023 09:10:14 +0000
Received: by outflank-mailman (input) for mailman id 621107;
 Mon, 23 Oct 2023 09:10: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=DOxK=GF=antgroup.com=houwenlong.hwl@srs-se1.protection.inumbo.net>)
 id 1quqwu-0003eK-Ns
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 09:10:12 +0000
Received: from out0-194.mail.aliyun.com (out0-194.mail.aliyun.com
 [140.205.0.194]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id f0d6f75c-7183-11ee-9b0e-b553b5be7939;
 Mon, 23 Oct 2023 11:10:10 +0200 (CEST)
Received: from localhost(mailfrom:houwenlong.hwl@antgroup.com
 fp:SMTPD_---.V5qfj36_1698052195) by smtp.aliyun-inc.com;
 Mon, 23 Oct 2023 17:09:56 +0800
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: f0d6f75c-7183-11ee-9b0e-b553b5be7939
X-Alimail-AntiSpam:AC=PASS;BC=-1|-1;BR=01201311R541e4;CH=green;DM=||false|;DS=||;FP=0|-1|-1|-1|0|-1|-1|-1;HT=ay29a033018047204;MF=houwenlong.hwl@antgroup.com;NM=1;PH=DS;RN=14;SR=0;TI=SMTPD_---.V5qfj36_1698052195;
From: "Hou Wenlong" <houwenlong.hwl@antgroup.com>
To: linux-kernel@vger.kernel.org
Cc: "Hou Wenlong" <houwenlong.hwl@antgroup.com>,
  "Juergen Gross" <jgross@suse.com>,
  "Boris Ostrovsky" <boris.ostrovsky@oracle.com>,
  "Darren Hart" <dvhart@infradead.org>,
  "Andy Shevchenko" <andy@infradead.org>,
  "Thomas Gleixner" <tglx@linutronix.de>,
  "Ingo Molnar" <mingo@redhat.com>,
  "Borislav Petkov" <bp@alien8.de>,
  "Dave Hansen" <dave.hansen@linux.intel.com>,
  "=?UTF-8?B?bWFpbnRhaW5lcjpYODYgQVJDSElURUNUVVJFIDMyLUJJVCBBTkQgNjQtQklU?=" <x86@kernel.org>,
  "H. Peter Anvin" <hpa@zytor.com>,
  "=?UTF-8?B?bW9kZXJhdGVkIGxpc3Q6WEVOIEhZUEVSVklTT1IgWDg2?=" <xen-devel@lists.xenproject.org>,
  "=?UTF-8?B?b3BlbiBsaXN0Olg4NiBQTEFURk9STSBEUklWRVJTIC0gQVJDSA==?=" <platform-driver-x86@vger.kernel.org>
Subject: [PATCH 1/2] x86/xen/pvh: Set up percpu for stack canary in 32-bit kernel entry
Date: Mon, 23 Oct 2023 17:09:38 +0800
Message-Id: <90df6cf5674241a85ac7dfe0a1558f1fd025cc17.1698051454.git.houwenlong.hwl@antgroup.com>
X-Mailer: git-send-email 2.31.1
In-Reply-To: <cover.1698051454.git.houwenlong.hwl@antgroup.com>
References: <cover.1698051454.git.houwenlong.hwl@antgroup.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

In a 32-bit SMP kernel, the stack canary is a percpu variable accessed
as %fs:__stack_chk_guard. However, the ABI for PVH entry does not
specify the %fs register state. It currently works because the initial
%fs register is 0x10 for QEMU, which is the same as $PVH_DS_SEL.
%However, for added safety, the percpu should be set up explicitly
%before calling xen_prepare_pvh(), which accesses the stack canary.

Signed-off-by: Hou Wenlong <houwenlong.hwl@antgroup.com>
---
 arch/x86/platform/pvh/head.S | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/arch/x86/platform/pvh/head.S b/arch/x86/platform/pvh/head.S
index c4365a05ab83..cee4dadf5344 100644
--- a/arch/x86/platform/pvh/head.S
+++ b/arch/x86/platform/pvh/head.S
@@ -121,6 +121,10 @@ SYM_CODE_START_LOCAL(pvh_start_xen)
 
 	ljmp $PVH_CS_SEL, $1f
 1:
+	/* Set percpu for stack canary. */
+	mov $PVH_DS_SEL,%eax
+	mov %eax, %fs
+
 	call xen_prepare_pvh
 	mov $_pa(pvh_bootparams), %esi
 
-- 
2.31.1



From xen-devel-bounces@lists.xenproject.org Mon Oct 23 09:10:16 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 09:10:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621108.967208 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quqwy-0004op-CF; Mon, 23 Oct 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 621108.967208; Mon, 23 Oct 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 1quqwy-0004og-92; Mon, 23 Oct 2023 09:10:16 +0000
Received: by outflank-mailman (input) for mailman id 621108;
 Mon, 23 Oct 2023 09: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=DOxK=GF=antgroup.com=houwenlong.hwl@srs-se1.protection.inumbo.net>)
 id 1quqww-0003eK-N7
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 09:10:14 +0000
Received: from out0-198.mail.aliyun.com (out0-198.mail.aliyun.com
 [140.205.0.198]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id f1fe0707-7183-11ee-9b0e-b553b5be7939;
 Mon, 23 Oct 2023 11:10:12 +0200 (CEST)
Received: from localhost(mailfrom:houwenlong.hwl@antgroup.com
 fp:SMTPD_---.V5qfj3u_1698052197) by smtp.aliyun-inc.com;
 Mon, 23 Oct 2023 17:09:58 +0800
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: f1fe0707-7183-11ee-9b0e-b553b5be7939
X-Alimail-AntiSpam:AC=PASS;BC=-1|-1;BR=01201311R621e4;CH=green;DM=||false|;DS=||;FP=0|-1|-1|-1|0|-1|-1|-1;HT=ay29a033018047194;MF=houwenlong.hwl@antgroup.com;NM=1;PH=DS;RN=14;SR=0;TI=SMTPD_---.V5qfj3u_1698052197;
From: "Hou Wenlong" <houwenlong.hwl@antgroup.com>
To: linux-kernel@vger.kernel.org
Cc: "Hou Wenlong" <houwenlong.hwl@antgroup.com>,
  "Juergen Gross" <jgross@suse.com>,
  "Boris Ostrovsky" <boris.ostrovsky@oracle.com>,
  "Darren Hart" <dvhart@infradead.org>,
  "Andy Shevchenko" <andy@infradead.org>,
  "Thomas Gleixner" <tglx@linutronix.de>,
  "Ingo Molnar" <mingo@redhat.com>,
  "Borislav Petkov" <bp@alien8.de>,
  "Dave Hansen" <dave.hansen@linux.intel.com>,
  "=?UTF-8?B?bWFpbnRhaW5lcjpYODYgQVJDSElURUNUVVJFIDMyLUJJVCBBTkQgNjQtQklU?=" <x86@kernel.org>,
  "H. Peter Anvin" <hpa@zytor.com>,
  "=?UTF-8?B?bW9kZXJhdGVkIGxpc3Q6WEVOIEhZUEVSVklTT1IgWDg2?=" <xen-devel@lists.xenproject.org>,
  "=?UTF-8?B?b3BlbiBsaXN0Olg4NiBQTEFURk9STSBEUklWRVJTIC0gQVJDSA==?=" <platform-driver-x86@vger.kernel.org>
Subject: [PATCH 2/2] x86/xen/pvh: Use fixed_percpu_data to set up GS base
Date: Mon, 23 Oct 2023 17:09:39 +0800
Message-Id: <f3943c3bbcdfea836064d3556a979ad6f015c835.1698051454.git.houwenlong.hwl@antgroup.com>
X-Mailer: git-send-email 2.31.1
In-Reply-To: <cover.1698051454.git.houwenlong.hwl@antgroup.com>
References: <cover.1698051454.git.houwenlong.hwl@antgroup.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

startup_64() and startup_xen() both use "fixed_percpu_data" to set up GS
base. So for consitency, use it too in PVH entry and remove the
temporary variable "canary".

Signed-off-by: Hou Wenlong <houwenlong.hwl@antgroup.com>
---
 arch/x86/platform/pvh/head.S | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

diff --git a/arch/x86/platform/pvh/head.S b/arch/x86/platform/pvh/head.S
index cee4dadf5344..591ba165215f 100644
--- a/arch/x86/platform/pvh/head.S
+++ b/arch/x86/platform/pvh/head.S
@@ -96,7 +96,7 @@ SYM_CODE_START_LOCAL(pvh_start_xen)
 1:
 	/* Set base address in stack canary descriptor. */
 	mov $MSR_GS_BASE,%ecx
-	mov $_pa(canary), %eax
+	mov $_pa(INIT_PER_CPU_VAR(fixed_percpu_data)), %eax
 	xor %edx, %edx
 	wrmsr
 
@@ -160,8 +160,6 @@ SYM_DATA_START_LOCAL(gdt_start)
 SYM_DATA_END_LABEL(gdt_start, SYM_L_LOCAL, gdt_end)
 
 	.balign 16
-SYM_DATA_LOCAL(canary, .fill 48, 1, 0)
-
 SYM_DATA_START_LOCAL(early_stack)
 	.fill BOOT_STACK_SIZE, 1, 0
 SYM_DATA_END_LABEL(early_stack, SYM_L_LOCAL, early_stack_end)
-- 
2.31.1



From xen-devel-bounces@lists.xenproject.org Mon Oct 23 09:20:07 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 09:20:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621121.967217 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qur6O-0007K2-8D; Mon, 23 Oct 2023 09:20:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621121.967217; Mon, 23 Oct 2023 09:20: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 1qur6O-0007Jv-5g; Mon, 23 Oct 2023 09:20:00 +0000
Received: by outflank-mailman (input) for mailman id 621121;
 Mon, 23 Oct 2023 09:19: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=gXaf=GF=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qur6N-0007Jp-Gd
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 09:19:59 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 556d3b58-7185-11ee-98d5-6d05b1d4d9a1;
 Mon, 23 Oct 2023 11:19:57 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id C68D14EE0740;
 Mon, 23 Oct 2023 11:19: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: 556d3b58-7185-11ee-98d5-6d05b1d4d9a1
MIME-Version: 1.0
Date: Mon, 23 Oct 2023 11:19:57 +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.cooper3@citrix.com, roger.pau@citrix.com, Simone Ballarin
 <simone.ballarin@bugseng.com>, Doug Goldstein <cardoe@cardoe.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][for-4.19 v3 1/8] xen/include: add macro LOWEST_BIT
In-Reply-To: <f504772a-68b4-fbfa-e7d4-8d22992c7944@suse.com>
References: <cover.1697815135.git.nicola.vetrini@bugseng.com>
 <546cf30aa43d6d0687a9a6c6d23b11128e5783e8.1697815135.git.nicola.vetrini@bugseng.com>
 <f504772a-68b4-fbfa-e7d4-8d22992c7944@suse.com>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <f23a1f95916bd61ddcd5002428d8876c@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 23/10/2023 09:48, Jan Beulich wrote:
> On 20.10.2023 17:28, Nicola Vetrini wrote:
>> --- a/automation/eclair_analysis/ECLAIR/deviations.ecl
>> +++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
>> @@ -246,6 +246,12 @@ constant expressions are required.\""
>>    "any()"}
>>  -doc_end
>> 
>> +-doc_begin="The macro LOWEST_BIT encapsulates a well-known pattern to 
>> obtain the value
>> +2^ffs(x) for unsigned integers on two's complement architectures
>> +(all the architectures supported by Xen satisfy this requirement)."
>> +-config=MC3R1.R10.1,reports+={safe, 
>> "any_area(any_loc(any_exp(macro(^LOWEST_BIT$))))"}
>> +-doc_end
> 
> This being deviated this way (rather than by SAF-* comments) wants
> justifying in the description. You did reply to my respective
> comment on v2, but such then (imo) needs propagating into the actual
> patch as well.
> 

Sure, will do.

>> --- a/docs/misra/deviations.rst
>> +++ b/docs/misra/deviations.rst
>> @@ -192,6 +192,13 @@ Deviations related to MISRA C:2012 Rules:
>>         See automation/eclair_analysis/deviations.ecl for the full 
>> explanation.
>>       - Tagged as `safe` for ECLAIR.
>> 
>> +   * - R10.1
>> +     - The well-known pattern (x & -x) applied to unsigned integer 
>> values on 2's
>> +       complement architectures (i.e., all architectures supported by 
>> Xen), used
>> +       to obtain the value 2^ffs(x), where ffs(x) is the position of 
>> the first
>> +       bit set. If no bits are set, zero is returned.
>> +     - Tagged as `safe` for ECLAIR.
> 
> In such an explanation there shall not be any ambiguity. Here I see
> an issue with ffs() returning 1-based bit position numbers, which
> isn't in line with the use in 2^ffs(x). (Arguably use of ^ itself is
> also problematic, as that's XOR in C, not POW. I'd suggest 2^^ffs(x)
> or 2**ffs(x).)
> 

Makes sense, I think I'll use an plain english explanation to avoid any 
confusion
about notation.

>> --- a/xen/include/xen/macros.h
>> +++ b/xen/include/xen/macros.h
>> @@ -8,8 +8,11 @@
>>  #define DIV_ROUND(n, d) (((n) + (d) / 2) / (d))
>>  #define DIV_ROUND_UP(n, d) (((n) + (d) - 1) / (d))
>> 
>> -#define MASK_EXTR(v, m) (((v) & (m)) / ((m) & -(m)))
>> -#define MASK_INSR(v, m) (((v) * ((m) & -(m))) & (m))
>> +/* Returns the 2^ffs(x) or 0, where ffs(x) is the index of the lowest 
>> set bit */
>> +#define LOWEST_BIT(x) ((x) & -(x))
> 
> I'm afraid my concern regarding this new macro's name (voiced on v2) 
> hasn't
> been addressed (neither verbally nor by finding a more suitable name).
> 
> Jan

I didn't come up with much better names, so I left it as is. Here's a 
few ideas:

- LOWEST_SET
- MASK_LOWEST_SET
- MASK_LOWEST_BIT
- MASK_FFS_0
- LOWEST_ONE

and also yours, included here for convenience, even though you felt it 
was too long:

- ISOLATE_LOW_BIT()

All maintainers from THE REST are CC-ed, so we can see if anyone has any 
suggestion.

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


From xen-devel-bounces@lists.xenproject.org Mon Oct 23 09:21:41 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 09:21:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621124.967227 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qur7y-0000Hg-J8; Mon, 23 Oct 2023 09:21:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621124.967227; Mon, 23 Oct 2023 09:21: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 1qur7y-0000HZ-GL; Mon, 23 Oct 2023 09:21:38 +0000
Received: by outflank-mailman (input) for mailman id 621124;
 Mon, 23 Oct 2023 09:21: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=JdWI=GF=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qur7x-0000HT-Ku
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 09:21:37 +0000
Received: from foss.arm.com (foss.arm.com [217.140.110.172])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTP
 id 8f7990c5-7185-11ee-9b0e-b553b5be7939;
 Mon, 23 Oct 2023 11:21: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 2F87F2F4;
 Mon, 23 Oct 2023 02:22:15 -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 3A49B3F64C;
 Mon, 23 Oct 2023 02:21: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: 8f7990c5-7185-11ee-9b0e-b553b5be7939
From: Henry Wang <Henry.Wang@arm.com>
To: xen-devel@lists.xenproject.org
Cc: Henry Wang <Henry.Wang@arm.com>,
	Community Manager <community.manager@xenproject.org>,
	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>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>,
	Wei Chen <wei.chen@arm.com>
Subject: [PATCH v3 0/4] Final CHANGELOG changes for 4.18
Date: Mon, 23 Oct 2023 17:21:19 +0800
Message-Id: <20231023092123.1756426-1-Henry.Wang@arm.com>
X-Mailer: git-send-email 2.25.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Hi all,

This series should be the final CHANGELOG changes for 4.18.

The first patch is mentioning the MISRA-C improvement during the
4.18 dev cycle, second patch is added as a clean-up patch during
the review of this series, so these should be committed before
we branch.

The third patch sets the release date and tag of 4.18 release
and should be included in both the staging and stable-4.18 once
we branch.

The fourth patch starts a new unstable section, so should be in
unstable master/staging only.

Thanks.

Henry Wang (4):
  CHANGELOG.md: Mention the MISRA-C improvement in 4.18 dev cycle
  CHANGELOG.md: Use "xenbits.xenproject.org" in links
  CHANGELOG.md: Set 4.18 release date and tag
  CHANGELOG.md: Start new "unstable" section

 CHANGELOG.md | 21 +++++++++++++++------
 1 file changed, 15 insertions(+), 6 deletions(-)

-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Mon Oct 23 09:21:43 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 09:21:43 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621125.967238 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qur83-0000YB-RJ; Mon, 23 Oct 2023 09:21:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621125.967238; Mon, 23 Oct 2023 09:21: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 1qur83-0000Y4-NO; Mon, 23 Oct 2023 09:21:43 +0000
Received: by outflank-mailman (input) for mailman id 621125;
 Mon, 23 Oct 2023 09:21: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=JdWI=GF=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qur82-0000HT-NW
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 09:21:42 +0000
Received: from foss.arm.com (foss.arm.com [217.140.110.172])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTP
 id 931f595a-7185-11ee-9b0e-b553b5be7939;
 Mon, 23 Oct 2023 11:21:41 +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 58C332F4;
 Mon, 23 Oct 2023 02:22:21 -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 7897B3F64C;
 Mon, 23 Oct 2023 02: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: 931f595a-7185-11ee-9b0e-b553b5be7939
From: Henry Wang <Henry.Wang@arm.com>
To: xen-devel@lists.xenproject.org
Cc: Henry Wang <Henry.Wang@arm.com>,
	Community Manager <community.manager@xenproject.org>,
	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>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>,
	Wei Chen <wei.chen@arm.com>
Subject: [PATCH v3 1/4] CHANGELOG.md: Mention the MISRA-C improvement in 4.18 dev cycle
Date: Mon, 23 Oct 2023 17:21:20 +0800
Message-Id: <20231023092123.1756426-2-Henry.Wang@arm.com>
X-Mailer: git-send-email 2.25.1
In-Reply-To: <20231023092123.1756426-1-Henry.Wang@arm.com>
References: <20231023092123.1756426-1-Henry.Wang@arm.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Signed-off-by: Henry Wang <Henry.Wang@arm.com>
Acked-by: Stefano Stabellini <sstabellini@kernel.org>
---
v3:
- No change.
v2:
- Rewording to be more specific, correct the number of rules.
- Add Stefano's Acked-by tag.
---
 CHANGELOG.md | 1 +
 1 file changed, 1 insertion(+)

diff --git a/CHANGELOG.md b/CHANGELOG.md
index 5f2694afbe..394a92400a 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -35,6 +35,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
    physical rather than linear/virtual addresses.
  - On x86, support for enforcing system-wide operation in Data Operand
    Independent Timing Mode.
+ - The project has now officially adopted 6 directives and 65 rules of MISRA-C.
 
 ### Removed
  - On x86, the "pku" command line option has been removed.  It has never
-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Mon Oct 23 09:21:49 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 09:21:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621126.967248 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qur89-0000rE-3W; Mon, 23 Oct 2023 09:21:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621126.967248; Mon, 23 Oct 2023 09:21: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 1qur89-0000r7-03; Mon, 23 Oct 2023 09:21:49 +0000
Received: by outflank-mailman (input) for mailman id 621126;
 Mon, 23 Oct 2023 09:21: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=JdWI=GF=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qur87-0000os-4q
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 09:21:47 +0000
Received: from foss.arm.com (foss.arm.com [217.140.110.172])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTP
 id 95861891-7185-11ee-98d5-6d05b1d4d9a1;
 Mon, 23 Oct 2023 11:21: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 5C6032F4;
 Mon, 23 Oct 2023 02:22:26 -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 85A3E3F64C;
 Mon, 23 Oct 2023 02:21: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: 95861891-7185-11ee-98d5-6d05b1d4d9a1
From: Henry Wang <Henry.Wang@arm.com>
To: xen-devel@lists.xenproject.org
Cc: Henry Wang <Henry.Wang@arm.com>,
	Community Manager <community.manager@xenproject.org>,
	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>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>,
	Wei Chen <wei.chen@arm.com>
Subject: [PATCH v3 2/4] CHANGELOG.md: Use "xenbits.xenproject.org" in links
Date: Mon, 23 Oct 2023 17:21:21 +0800
Message-Id: <20231023092123.1756426-3-Henry.Wang@arm.com>
X-Mailer: git-send-email 2.25.1
In-Reply-To: <20231023092123.1756426-1-Henry.Wang@arm.com>
References: <20231023092123.1756426-1-Henry.Wang@arm.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Compared to "xenbits.xen.org", "xenbits.xenproject.org" appeared
later as a name, with the intention of becoming the canonical one.
Therefore, this commit unifies all the links to use "xenproject"
in the links.

Signed-off-by: Henry Wang <Henry.Wang@arm.com>
---
v3:
- New patch.
---
 CHANGELOG.md | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/CHANGELOG.md b/CHANGELOG.md
index 394a92400a..25d29fe59d 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -4,7 +4,7 @@ Notable changes to Xen will be documented in this file.
 
 The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
 
-## [unstable UNRELEASED](https://xenbits.xen.org/gitweb/?p=xen.git;a=shortlog;h=staging) - TBD
+## [unstable UNRELEASED](https://xenbits.xenproject.org/gitweb/?p=xen.git;a=shortlog;h=staging) - TBD
 
 ### Changed
  - Repurpose command line gnttab_max_{maptrack_,}frames options so they don't
@@ -43,7 +43,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
    "cpuid=no-pku".  Visibility of PKU to guests should be via its vm.cfg file.
  - xenpvnetboot removed as unable to convert to Python 3.
 
-## [4.17.0](https://xenbits.xen.org/gitweb/?p=xen.git;a=shortlog;h=RELEASE-4.17.0) - 2022-12-12
+## [4.17.0](https://xenbits.xenproject.org/gitweb/?p=xen.git;a=shortlog;h=RELEASE-4.17.0) - 2022-12-12
 
 ### Changed
  - On x86 "vga=current" can now be used together with GrUB2's gfxpayload setting. Note that
@@ -89,7 +89,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
 ### Removed / support downgraded
  - dropped support for the (x86-only) "vesa-mtrr" and "vesa-remap" command line options
 
-## [4.16.0](https://xenbits.xen.org/gitweb/?p=xen.git;a=shortlog;h=RELEASE-4.16.0) - 2021-12-02
+## [4.16.0](https://xenbits.xenproject.org/gitweb/?p=xen.git;a=shortlog;h=RELEASE-4.16.0) - 2021-12-02
 
 ### Removed
  - XENSTORED_ROOTDIR environment variable from configuartion files and
@@ -132,7 +132,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
  - Support of generic DT IOMMU bindings for Arm SMMU v2.
  - Limit grant table version on a per-domain basis.
 
-## [4.15.0](https://xenbits.xen.org/gitweb/?p=xen.git;a=shortlog;h=RELEASE-4.15.0) - 2021-04-08
+## [4.15.0](https://xenbits.xenproject.org/gitweb/?p=xen.git;a=shortlog;h=RELEASE-4.15.0) - 2021-04-08
 
 ### Added / support upgraded
  - ARM IOREQ servers (device emulation etc.) (Tech Preview)
@@ -166,7 +166,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
    support, not recommended".  (Use as stub domain device model is still
    supported - see SUPPORT.md.)
 
-## [4.14.0](https://xenbits.xen.org/gitweb/?p=xen.git;a=shortlog;h=RELEASE-4.14.0) - 2020-07-23
+## [4.14.0](https://xenbits.xenproject.org/gitweb/?p=xen.git;a=shortlog;h=RELEASE-4.14.0) - 2020-07-23
 
 ### Added
  - This file and MAINTAINERS entry.
@@ -193,6 +193,6 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
    An administrator still needs to take care to ensure the features visible to
    the guest at boot are compatible with anywhere it might migrate.
 
-## [4.13.0](https://xenbits.xen.org/gitweb/?p=xen.git;a=shortlog;h=RELEASE-4.13.0) - 2019-12-17
+## [4.13.0](https://xenbits.xenproject.org/gitweb/?p=xen.git;a=shortlog;h=RELEASE-4.13.0) - 2019-12-17
 
 > Pointer to release from which CHANGELOG tracking starts
-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Mon Oct 23 09:21:53 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 09:21:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621128.967258 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qur8D-0001Da-Fm; Mon, 23 Oct 2023 09:21:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621128.967258; Mon, 23 Oct 2023 09:21: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 1qur8D-0001DR-CW; Mon, 23 Oct 2023 09:21:53 +0000
Received: by outflank-mailman (input) for mailman id 621128;
 Mon, 23 Oct 2023 09:21: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=JdWI=GF=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qur8C-0000HT-OE
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 09:21:52 +0000
Received: from foss.arm.com (foss.arm.com [217.140.110.172])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTP
 id 991458ef-7185-11ee-9b0e-b553b5be7939;
 Mon, 23 Oct 2023 11:21:51 +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 5B5A82F4;
 Mon, 23 Oct 2023 02:22:31 -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 7CAE43F64C;
 Mon, 23 Oct 2023 02:21: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: 991458ef-7185-11ee-9b0e-b553b5be7939
From: Henry Wang <Henry.Wang@arm.com>
To: xen-devel@lists.xenproject.org
Cc: Henry Wang <Henry.Wang@arm.com>,
	Community Manager <community.manager@xenproject.org>,
	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>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>,
	Wei Chen <wei.chen@arm.com>
Subject: [PATCH v3 3/4] CHANGELOG.md: Set 4.18 release date and tag
Date: Mon, 23 Oct 2023 17:21:22 +0800
Message-Id: <20231023092123.1756426-4-Henry.Wang@arm.com>
X-Mailer: git-send-email 2.25.1
In-Reply-To: <20231023092123.1756426-1-Henry.Wang@arm.com>
References: <20231023092123.1756426-1-Henry.Wang@arm.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Signed-off-by: Henry Wang <Henry.Wang@arm.com>
---
v3:
- Don't set the release date.
---
 CHANGELOG.md | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/CHANGELOG.md b/CHANGELOG.md
index 25d29fe59d..3ca7969699 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -4,7 +4,7 @@ Notable changes to Xen will be documented in this file.
 
 The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
 
-## [unstable UNRELEASED](https://xenbits.xenproject.org/gitweb/?p=xen.git;a=shortlog;h=staging) - TBD
+## [4.18.0](https://xenbits.xenproject.org/gitweb/?p=xen.git;a=shortlog;h=RELEASE-4.18.0) - 2023-XX-XX
 
 ### Changed
  - Repurpose command line gnttab_max_{maptrack_,}frames options so they don't
-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Mon Oct 23 09:21:57 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 09:21:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621130.967268 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qur8H-0001gL-Nf; Mon, 23 Oct 2023 09:21:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621130.967268; Mon, 23 Oct 2023 09: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 1qur8H-0001g9-Jn; Mon, 23 Oct 2023 09:21:57 +0000
Received: by outflank-mailman (input) for mailman id 621130;
 Mon, 23 Oct 2023 09: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=JdWI=GF=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qur8G-0000os-Jq
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 09:21:56 +0000
Received: from foss.arm.com (foss.arm.com [217.140.110.172])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTP
 id 9b88360a-7185-11ee-98d5-6d05b1d4d9a1;
 Mon, 23 Oct 2023 11:21:55 +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 5D4662F4;
 Mon, 23 Oct 2023 02:22:36 -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 7DD123F64C;
 Mon, 23 Oct 2023 02:21: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: 9b88360a-7185-11ee-98d5-6d05b1d4d9a1
From: Henry Wang <Henry.Wang@arm.com>
To: xen-devel@lists.xenproject.org
Cc: Henry Wang <Henry.Wang@arm.com>,
	Community Manager <community.manager@xenproject.org>,
	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>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>,
	Wei Chen <wei.chen@arm.com>
Subject: [PATCH v3 4/4] CHANGELOG.md: Start new "unstable" section
Date: Mon, 23 Oct 2023 17:21:23 +0800
Message-Id: <20231023092123.1756426-5-Henry.Wang@arm.com>
X-Mailer: git-send-email 2.25.1
In-Reply-To: <20231023092123.1756426-1-Henry.Wang@arm.com>
References: <20231023092123.1756426-1-Henry.Wang@arm.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Signed-off-by: Henry Wang <Henry.Wang@arm.com>
Acked-by: Stefano Stabellini <sstabellini@kernel.org>
---
v3:
- Also uses "xenproject.org".
v2:
- Add Stefano's Acked-by tag.
---
 CHANGELOG.md | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/CHANGELOG.md b/CHANGELOG.md
index 3ca7969699..721c067309 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -4,6 +4,14 @@ Notable changes to Xen will be documented in this file.
 
 The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
 
+## [unstable UNRELEASED](https://xenbits.xenproject.org/gitweb/?p=xen.git;a=shortlog;h=staging) - TBD
+
+### Changed
+
+### Added
+
+### Removed
+
 ## [4.18.0](https://xenbits.xenproject.org/gitweb/?p=xen.git;a=shortlog;h=RELEASE-4.18.0) - 2023-XX-XX
 
 ### Changed
-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Mon Oct 23 09:22:04 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 09:22:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621135.967278 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qur8O-0002Eh-1U; Mon, 23 Oct 2023 09:22:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621135.967278; Mon, 23 Oct 2023 09:22: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 1qur8N-0002EV-Sw; Mon, 23 Oct 2023 09:22:03 +0000
Received: by outflank-mailman (input) for mailman id 621135;
 Mon, 23 Oct 2023 09:22: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 1qur8M-0002CZ-Sh
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 09:22: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 1qur8M-0002Vz-Db; Mon, 23 Oct 2023 09:22:02 +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 1qur8M-0006Cg-6n; Mon, 23 Oct 2023 09:22: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=yOVusp4UZHcT+1yGns52uk1ZJbX8ivEMT5/yOQmxTm0=; b=6zBM6+whCh08R6Vs5mtN/5LIKa
	QJkhyGTcgFH2SABSQ3OwVRfPXp/p+07xTemK5FVO8Grg9nJoQyqN3DkzYebw3EMofKqk1dX7DZE2a
	Fu6nC4Zo9vwlsxv5fABSr+09tpNRmaCqYCoX18IJcwLQplHYmsKolzbuOAbiI8osFm34=;
Message-ID: <a54192e0-0871-4735-ac09-7972a3ab69ec@xen.org>
Date: Mon, 23 Oct 2023 10:21:59 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v5 1/9] xen/arm: don't pass iommu properties to hwdom for
 iommu-map
Content-Language: en-GB
To: Michal Orzel <michal.orzel@amd.com>,
 Stewart Hildebrand <stewart.hildebrand@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: <20231004145604.1085358-1-stewart.hildebrand@amd.com>
 <20231004145604.1085358-2-stewart.hildebrand@amd.com>
 <31cdf500-959d-42cb-a1ce-bbee7cb5e251@xen.org>
 <755bb8c6-d386-405a-a825-34a0d5ba3816@amd.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <755bb8c6-d386-405a-a825-34a0d5ba3816@amd.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi,

On 23/10/2023 10:00, Michal Orzel wrote:
> As for supporting legacy bindings, I think
> we would be good if we search for #iommu-cells || mmu-masters

For me, it is clear in the device-tree bindings documentation that 
#iommu-cells will belong to a IOMMU node. It is less clear for 
mmu-masters, therefore I would rather prefer if we use the compatible to 
detect legacy bindings.

I am not that concerned to properly remove any nodes using legacy 
bindings because new platforms should not use it. So we could also keep 
the existing behavior (i.e. exposing the IOMMU unless it is used by Xen).

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Mon Oct 23 09:25:04 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 09:25:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621149.967288 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qurBG-0004Re-EL; Mon, 23 Oct 2023 09:25:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621149.967288; Mon, 23 Oct 2023 09:25: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 1qurBG-0004RX-At; Mon, 23 Oct 2023 09:25:02 +0000
Received: by outflank-mailman (input) for mailman id 621149;
 Mon, 23 Oct 2023 09: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=7RLV=GF=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qurBE-0004Ph-Sd
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 09:25:00 +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 093e4f57-7186-11ee-98d5-6d05b1d4d9a1;
 Mon, 23 Oct 2023 11:24:59 +0200 (CEST)
Received: by mail-ej1-x62d.google.com with SMTP id
 a640c23a62f3a-9bdf5829000so451143666b.0
 for <xen-devel@lists.xenproject.org>; Mon, 23 Oct 2023 02:25:00 -0700 (PDT)
Received: from [192.168.201.133] ([94.75.70.14])
 by smtp.gmail.com with ESMTPSA id
 vl9-20020a170907b60900b00989828a42e8sm6283313ejc.154.2023.10.23.02.24.56
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 23 Oct 2023 02:24: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: 093e4f57-7186-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698053099; x=1698657899; 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=5cNmQveScnM3+/LyNqB5VGLK1XIS1epQSyeLaJQ+J/o=;
        b=CG2bTLzqAw0xc9/hIDwqucGWF7ikh4h92PLnmfqFGzM6OHEzg0bqZQVYYs4vnd/0tb
         D5US/Jh39BulylCphxspO7RaRxqcto27MHetYKrLhor5Iwpg4STxpt6ssAD3SPCScLyb
         JKd0NekjheKfP/hrIlr0+4opNHtqhWunCLsURQzC0Db8OkBsFaKY4y/KOhXFzl3uuk1E
         t7vFWvLzOzQn7TuB04AvQ2vV3ciIx/rJb5BYrCjfUxCNIlSXpYIz/EEtBGw1JgqJOIjX
         t0E6zK3qIdqHMwzSP5n3YmwUN7yHa1uOEtNixqdfd3b+vkFs4EHmcmvCBB0kERl3MBR4
         2I3w==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698053099; x=1698657899;
        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=5cNmQveScnM3+/LyNqB5VGLK1XIS1epQSyeLaJQ+J/o=;
        b=VA0Iw3Ul1UKAAjPDnp7fiNeOGSgmOwbWOlkvIiGyPoUNAMD/2HlErAcE/HeiD/rB/a
         mgaPeL7WexKlEtIjgPickJFWVu5bp6NoCh3j83OIbbJ/rD4g7h2Hme5sG0/XkmKd9pwE
         bIbnBR9wBgaGHof9MOdbNnb0VTRHV+lTqbw43eIpSQkLwRHtGRhTv+u30uD9+DHLU36v
         FV/oNdU8ilUzf8fT/ASSymHnlg7ifhm/EwF1AZaw1xRhPSPp5AmjeJlF9VcLDSvKWZiK
         DPbClHc6HAXR2algLm3RGy/HQt2N43l5L2gk5dN9eS7V2TEolq2iASTzNkwbg7214mCn
         oUOQ==
X-Gm-Message-State: AOJu0YwTtQNMeDABXuPdXrPKcZyLLceXLAsPem1h1vJT0Erd0KKBZNyX
	sAKzzzh4OaBXLuCxMfDQUS4=
X-Google-Smtp-Source: AGHT+IHrCTTNwkakWXjnoqyL+TJ/zJf3dEOOrwGacIq8ytSLKtl+KmmKoJyRncRx7RcVDzijJZ4fMQ==
X-Received: by 2002:a17:907:9815:b0:9bf:792:d696 with SMTP id ji21-20020a170907981500b009bf0792d696mr5365821ejc.46.1698053099136;
        Mon, 23 Oct 2023 02:24:59 -0700 (PDT)
Message-ID: <bfce8768c96580bab91101138f2ac325b9e91c6d.camel@gmail.com>
Subject: Re: [PATCH v1 00/57] Enable build of full Xen for RISC-V
From: Oleksii <oleksii.kurochko@gmail.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: Bob Eshleman <bobbyeshleman@gmail.com>, Alistair Francis
 <alistair.francis@wdc.com>, Connor Davis <connojdavis@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>, Paul Durrant
 <paul@xen.org>, Roger Pau =?ISO-8859-1?Q?Monn=E9?= <roger.pau@citrix.com>,
 Doug Goldstein <cardoe@cardoe.com>, Konrad Rzeszutek Wilk
 <konrad.wilk@oracle.com>, Ross Lagerwall <ross.lagerwall@citrix.com>,
 xen-devel@lists.xenproject.org
Date: Mon, 23 Oct 2023 12:24:55 +0300
In-Reply-To: <19065f09-e278-5471-eff7-1dd3b855a9aa@suse.com>
References: <cover.1692181079.git.oleksii.kurochko@gmail.com>
	 <19065f09-e278-5471-eff7-1dd3b855a9aa@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-10-19 at 13:53 +0200, Jan Beulich wrote:
> On 16.08.2023 12:19, Oleksii Kurochko wrote:
> > This patch series performs all of the additions necessary to drop
> > the
> > build overrides for RISCV 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.
> >=20
> > Also the patch series has open question described in the patch 57
> >=20
> > Patch 56 is only needed for test purposes and will be removed.
> >=20
> > Oleksii Kurochko (57):
> > =C2=A0 xen/riscv:introduce asm/byteorder.h
> > =C2=A0 xen/riscv: add public arch-riscv.h
> > =C2=A0 xen/riscv: introduce spinlock.h
> > =C2=A0 xen/riscv: introduce fence.h
> > =C2=A0 xen/riscv: introduce arch-riscv/hvm/save.h
> > =C2=A0 xen/riscv: introduce paging.h
> > =C2=A0 xen/riscv: introduce asm/cpufeature.h
> > =C2=A0 xen/riscv: introduce asm/device.h
> > =C2=A0 xen/riscv: introduce asm/event.h
> > =C2=A0 xen/riscv: introduce asm/grant_table.h
> > =C2=A0 xen/riscv: introduce asm/guest_atomics.h
> > =C2=A0 xen/riscv: introduce asm/hypercall.h
> > =C2=A0 xen/riscv: introduce asm/iocap.h
> > =C2=A0 xen/riscv: introduce asm/iommu.h
> > =C2=A0 xen/riscv: introduce asm/mem_access.h
> > =C2=A0 xen/riscv: introduce asm/nospec.h
> > =C2=A0 xen/riscv: introduce asm/pci.h
> > =C2=A0 xen/riscv: introduce asm/random.h
> > =C2=A0 xen/riscv: introduce asm/setup.h
> > =C2=A0 xen/riscv: introduce asm/system.h
> > =C2=A0 xen/riscv: introduce asm/xenoprof.h
> > =C2=A0 xen/riscv: introduce bitops.h
> > =C2=A0 xen/riscv: introduce flushtlb.h
> > =C2=A0 xen/riscv: introduce asm/percpu.h
> > =C2=A0 xen/riscv: introduce asm/smp.h
> > =C2=A0 xen/riscv: introduce asm/atomic.h
> > =C2=A0 xen/riscv: introduce cmpxchg.h
> > =C2=A0 xen/riscv: introduce asm/io.h
> > =C2=A0 xen/riscv: introduce asm/hardirq.h
> > =C2=A0 xen/riscv: introduce div64.h
> > =C2=A0 xen/riscv: define bug frame tables in xen.lds.S
> > =C2=A0 xen/riscv: introduce bit operations
> > =C2=A0 xen/riscv: introduce asm/altp2m.h
> > =C2=A0 xen/riscv: introduce asm/delay.h
> > =C2=A0 xen/riscv: introduce asm/domain.h
> > =C2=A0 xen/riscv: introduce asm/guest_access.h
> > =C2=A0 xen/riscv: introduce asm/irq.h
> > =C2=A0 xen/riscv: introduce asm/monitor.h
> > =C2=A0 xen/riscv: introduce asm/numa.h
> > =C2=A0 xen/riscv: introduce asm/p2m.h
> > =C2=A0 xen/riscv: introduce asm/regs.h
> > =C2=A0 xen/riscv: introduce asm/softirq.h
> > =C2=A0 xen/riscv: introduce asm/time.h
> > =C2=A0 xen/riscv: introduce asm/vm_event.h
> > =C2=A0 xen/riscv: add definition of __read_mostly
> > =C2=A0 xen/riscv: define an address of frame table
> > =C2=A0 xen/riscv: add required things to asm/current.h
> > =C2=A0 xen/riscv: add minimal stuff to asm/page.h to build full Xen
> > =C2=A0 xen/riscv: add minimal stuff to asm/processor.h to build full Xe=
n
> > =C2=A0 xen/riscv: add minimal stuff to asm/smp.h to build full Xen
> > =C2=A0 xen: add RISCV support for pmu.h
> > =C2=A0 xen: add necessary headers to common to build full Xen for RISC-=
V
> > =C2=A0 xen/riscv: add minimal stuff to asm/mm.h to build full Xen
> > =C2=A0 xen/rirscv: add minimal amount of stubs to build full Xen
> > =C2=A0 xen/riscv: enable full Xen build
> > =C2=A0 test only riscv
> > =C2=A0 xxxen/riscv: WIP ( need advise )
>=20
> Just to clarify: With the later 29-patch series superseding fair
> parts of this,
> is there still any need to look at this (version of this) series in
> any detail?
>=20
It depends on if headers mentioned in 29-patch series should be in asm-
generic folder or in arch specific folder.

I think we can start look at 29-patch series and after it will be
merged ( or finished in some way ) I'll resend this one patch series.

~ Oleksii


From xen-devel-bounces@lists.xenproject.org Mon Oct 23 09:30:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 09:30:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621152.967299 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qurGK-0006F0-19; Mon, 23 Oct 2023 09:30:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621152.967299; Mon, 23 Oct 2023 09:30: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 1qurGJ-0006Et-TF; Mon, 23 Oct 2023 09:30:15 +0000
Received: by outflank-mailman (input) for mailman id 621152;
 Mon, 23 Oct 2023 09:30: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=yq7o=GF=redhat.com=imammedo@srs-se1.protection.inumbo.net>)
 id 1qurGI-0006En-3D
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 09:30:14 +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 c2356b0f-7186-11ee-98d5-6d05b1d4d9a1;
 Mon, 23 Oct 2023 11:30:10 +0200 (CEST)
Received: from mail-qt1-f197.google.com (mail-qt1-f197.google.com
 [209.85.160.197]) by relay.mimecast.com with ESMTP with STARTTLS
 (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id
 us-mta-357-OWYvf_aIPHiF9PfXZGZ50Q-1; Mon, 23 Oct 2023 05:30:08 -0400
Received: by mail-qt1-f197.google.com with SMTP id
 d75a77b69052e-41cb7904d5aso44889291cf.0
 for <xen-devel@lists.xenproject.org>; Mon, 23 Oct 2023 02:30:08 -0700 (PDT)
Received: from imammedo.users.ipa.redhat.com (nat-pool-brq-t.redhat.com.
 [213.175.37.10]) by smtp.gmail.com with ESMTPSA id
 h11-20020ac8776b000000b004194c21ee85sm2617680qtu.79.2023.10.23.02.30.04
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 23 Oct 2023 02:30: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: c2356b0f-7186-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
	s=mimecast20190719; t=1698053410;
	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=BY/1jIiNPqSgcmKMDKFvLxbpat0MCdq78Cpr8NP41hU=;
	b=L0bAAPcBfRA7kd1Ffg0BdiW6LWDnFD9MPw5EcVOZ9FK+GzH2mIHz/g9+nU5wPmeROlyqP9
	bqmhv06nwXCJgJlSLUP0Ca4akmG0u8O1clDSrP4PVtM2JdfXVQGmHoeZtSKZFYYGtBWNC6
	7x1NsVyvVoh2bouBZ0avM8WP2ADo3wk=
X-MC-Unique: OWYvf_aIPHiF9PfXZGZ50Q-1
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698053408; x=1698658208;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:subject:cc:to:from:date:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=bWRH/UhKo/xZsmdbBLpR3mKt4IiEjfeUIaolB7vdgHA=;
        b=fjLRrFDhxcB8LVcrvOQ1Kf41t5ulenMTrcNxhMlRfhoBtjlgn0zEIPoj8EStAhA/qw
         RJtsqjTLSVmkDQqJaLNZK9FYwsoBDHBJ3w6Sq/xQNH/nTpn0FlVPWvi+bzLbovWPN9u3
         2vOuJTGTo3anQPzwKVuLK3TDUlcEGtA7UGWRwKz1Lo7AHYtZGDhWq7T15HudTJ1QMmXh
         ExWyvUnh+kS4Heq1Z066MbIPYazUrTYuYKqncuwhdycRTOuR++PpaiZqXNBu0pfJG7J5
         fltp2uBquxTzZkwF5yd1346MfU/KA9Yafv9FZgGIIEY2HPmq/osi8aZsmAhg8p+pGWW6
         KN5w==
X-Gm-Message-State: AOJu0YySEM2pLmF8xl7VclU47iwIXJRGE/P/TxSsBeraMcjgM0x/xtsK
	VH5gSbedONHPENtV8OG/kgwZx97WR1GlnMAf9oo5vcP2Td9pafEvFNkyB/B/jZ8ZvEFKNn5GsBo
	4Vk7cV45tscUla06kZp2YliMRVTo=
X-Received: by 2002:ac8:4e86:0:b0:41b:826b:1be8 with SMTP id 6-20020ac84e86000000b0041b826b1be8mr11973485qtp.17.1698053407906;
        Mon, 23 Oct 2023 02:30:07 -0700 (PDT)
X-Google-Smtp-Source: AGHT+IFk3I1W94WildIJnzyBvuTUwKjpxDbfTwVQeJ7fvAykTJzbav/T0qXVcTdryJEKL/kx9hWMBA==
X-Received: by 2002:ac8:4e86:0:b0:41b:826b:1be8 with SMTP id 6-20020ac84e86000000b0041b826b1be8mr11973463qtp.17.1698053407595;
        Mon, 23 Oct 2023 02:30:07 -0700 (PDT)
Date: Mon, 23 Oct 2023 11:30:02 +0200
From: Igor Mammedov <imammedo@redhat.com>
To: David Woodhouse <dwmw2@infradead.org>
Cc: qemu-devel@nongnu.org, Kevin Wolf <kwolf@redhat.com>, Hanna Reitz
 <hreitz@redhat.com>, Stefano Stabellini <sstabellini@kernel.org>, Anthony
 Perard <anthony.perard@citrix.com>, Paul Durrant <paul@xen.org>,
 =?UTF-8?B?TWFyYy1BbmRyw6k=?= Lureau         <marcandre.lureau@redhat.com>,
 Paolo Bonzini <pbonzini@redhat.com>, "Michael S. Tsirkin" <mst@redhat.com>,
 Marcel Apfelbaum <marcel.apfelbaum@gmail.com>, Richard Henderson
 <richard.henderson@linaro.org>, Eduardo Habkost <eduardo@habkost.net>,
 Marcelo Tosatti <mtosatti@redhat.com>, qemu-block@nongnu.org,
 xen-devel@lists.xenproject.org, kvm@vger.kernel.org, "Daniel P.
 =?UTF-8?B?QmVycmFuZ8Op?=" <berrange@redhat.com>
Subject: Re: [PATCH 11/12] hw/xen: automatically assign device index to
 block devices
Message-ID: <20231023113002.0e83c209@imammedo.users.ipa.redhat.com>
In-Reply-To: <3f3487af227dcdce7afb37e8406d5ce8dcdbf55f.camel@infradead.org>
References: <20231016151909.22133-1-dwmw2@infradead.org>
	<20231016151909.22133-12-dwmw2@infradead.org>
	<20231018093239.3d525fd8@imammedo.users.ipa.redhat.com>
	<3f3487af227dcdce7afb37e8406d5ce8dcdbf55f.camel@infradead.org>
X-Mailer: Claws Mail 4.1.1 (GTK 3.24.38; x86_64-redhat-linux-gnu)
MIME-Version: 1.0
X-Mimecast-Spam-Score: 0
X-Mimecast-Originator: redhat.com
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

On Wed, 18 Oct 2023 09:32:47 +0100
David Woodhouse <dwmw2@infradead.org> wrote:

> On Wed, 2023-10-18 at 09:32 +0200, Igor Mammedov wrote:
> > On Mon, 16 Oct 2023 16:19:08 +0100
> > David Woodhouse <dwmw2@infradead.org> wrote:
> >  =20
> > > From: David Woodhouse <dwmw@amazon.co.uk>
> > >  =20
> >=20
> > is this index a user (guest) visible? =20
>=20
> Yes. It defines what block device (e.g. /dev/xvda) the disk appears as
> in the guest. In the common case, it literally encodes the Linux
> major/minor numbers. So xvda (major 202) is 0xca00, xvdb is 0xca10 etc.

that makes 'index' an implicit ABI and a subject to versioning
when the way it's assigned changes (i.e. one has to use versioned
machine types to keep older versions working the they used to).

>From what I remember it's discouraged to make QEMU invent
various IDs that are part of ABI (guest or mgmt side).
Instead it's preferred for mgmt side/user to provide that explicitly.

Basically you are trading off manageability/simplicity at QEMU
level with CLI usability for human user.
I don't care much as long as it is hidden within xen code base,
but maybe libvirt does.

> Previously we had to explicitly set it for each disk in Qemu:
>=20
>   -drive file=3Ddisk1.img,id=3Ddrv1 -device xen-disk,drive=3Ddrv1,vdev=3D=
xvda
>   -drive file=3Ddisk2.img,id=3Ddrv2 -device xen-disk,drive=3Ddrv2,vdev=3D=
xvdb
>=20
> Now we can just do
>=20
>   -drive file=3Ddisk1.img,if=3Dxen -drive file-disk2.img,if=3Dxen
>
> (We could go further and make if=3Dxen the default for Xen guests too,
> but that doesn't work right now because xen-block will barf on the
> default provided CD-ROM when it's empty. It doesn't handle empty
> devices. And if I work around that, then `-hda disk1.img` would work on
> the command line... but would make it appear as /dev/xvda instead of
> /dev/hda, and I don't know how I feel about that.)
>
> [root@localhost ~]# xenstore-ls  -f device/vbd
> device/vbd =3D ""
> device/vbd/51712 =3D ""
> device/vbd/51712/backend =3D "/local/domain/0/backend/qdisk/1/51712"
> device/vbd/51712/backend-id =3D "0"
> device/vbd/51712/device-type =3D "disk"
> device/vbd/51712/event-channel =3D "8"
> device/vbd/51712/feature-persistent =3D "1"
> device/vbd/51712/protocol =3D "x86_64-abi"
> device/vbd/51712/ring-ref =3D "8"
> device/vbd/51712/state =3D "4"
> device/vbd/51712/virtual-device =3D "51712"
>=20
> >  =20
> > > There's no need to force the user to assign a vdev. We can automatica=
lly
> > > assign one, starting at xvda and searching until we find the first di=
sk
> > > name that's unused.
> > >=20
> > > This means we can now allow '-drive if=3Dxen,file=3Dxxx' to work with=
out an
> > > explicit separate -driver argument, just like if=3Dvirtio.
> > >=20
> > > Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
> > > ---
> > > =C2=A0blockdev.c=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0 | 15 ++++++++++++---
> > > =C2=A0hw/block/xen-block.c | 25 +++++++++++++++++++++++++
> > > =C2=A02 files changed, 37 insertions(+), 3 deletions(-)
> > >=20
> > > diff --git a/blockdev.c b/blockdev.c
> > > index 325b7a3bef..9dec4c9c74 100644
> > > --- a/blockdev.c
> > > +++ b/blockdev.c
> > > @@ -255,13 +255,13 @@ void drive_check_orphaned(void)
> > > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 * Ignore defau=
lt drives, because we create certain default
> > > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 * drives uncon=
ditionally, then leave them unclaimed.=C2=A0 Not the
> > > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 * users fault.
> > > -=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 * Ignore IF_VIRTIO,=
 because it gets desugared into -device,
> > > -=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 * so we can leave f=
ailing to -device.
> > > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 * Ignore IF_VIRTIO =
or IF_XEN, because it gets desugared into
> > > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 * -device, so we ca=
n leave failing to -device.
> > > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 * Ignore IF_NO=
NE, because leaving unclaimed IF_NONE remains
> > > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 * available fo=
r device_add is a feature.
> > > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 */
> > > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 if (dinfo->is_defaul=
t || dinfo->type =3D=3D IF_VIRTIO
> > > -=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 |=
| dinfo->type =3D=3D IF_NONE) {
> > > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 |=
| dinfo->type =3D=3D IF_XEN || dinfo->type =3D=3D IF_NONE) {
> > > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0 continue;
> > > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 }
> > > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 if (!blk_get_attache=
d_dev(blk)) {
> > > @@ -977,6 +977,15 @@ DriveInfo *drive_new(QemuOpts *all_opts, BlockIn=
terfaceType block_default_type,
> > > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 qemu_opt_set(devopts=
, "driver", "virtio-blk", &error_abort);
> > > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 qemu_opt_set(devopts=
, "drive", qdict_get_str(bs_opts, "id"),
> > > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 &error_abort);
> > > +=C2=A0=C2=A0=C2=A0 } else if (type =3D=3D IF_XEN) {
> > > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 QemuOpts *devopts;
> > > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 devopts =3D qemu_opts_cre=
ate(qemu_find_opts("device"), NULL, 0,
> > > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 &error_abor=
t);
> > > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 qemu_opt_set(devopts, "dr=
iver",
> > > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (media =3D=3D MEDIA_=
CDROM) ? "xen-cdrom" : "xen-disk",
> > > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 &error_abort);
> > > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 qemu_opt_set(devopts, "dr=
ive", qdict_get_str(bs_opts, "id"),
> > > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 &error_abort);
> > > =C2=A0=C2=A0=C2=A0=C2=A0 }
> > > =C2=A0
> > > =C2=A0=C2=A0=C2=A0=C2=A0 filename =3D qemu_opt_get(legacy_opts, "file=
");
> > > diff --git a/hw/block/xen-block.c b/hw/block/xen-block.c
> > > index 9262338535..20fa783cbe 100644
> > > --- a/hw/block/xen-block.c
> > > +++ b/hw/block/xen-block.c
> > > @@ -34,6 +34,31 @@ static char *xen_block_get_name(XenDevice *xendev,=
 Error **errp)
> > > =C2=A0=C2=A0=C2=A0=C2=A0 XenBlockDevice *blockdev =3D XEN_BLOCK_DEVIC=
E(xendev);
> > > =C2=A0=C2=A0=C2=A0=C2=A0 XenBlockVdev *vdev =3D &blockdev->props.vdev=
;
> > > =C2=A0
> > > +=C2=A0=C2=A0=C2=A0 if (blockdev->props.vdev.type =3D=3D XEN_BLOCK_VD=
EV_TYPE_INVALID) {
> > > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 char name[11];
> > > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 int disk =3D 0;
> > > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 unsigned long idx;
> > > +
> > > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 /* Find an unoccupied dev=
ice name */
> > > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 while (disk < (1 << 20)) =
{
> > > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 i=
f (disk < (1 << 4)) {
> > > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0 idx =3D (202 << 8) | (disk << 4);
> > > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 }=
 else {
> > > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0 idx =3D (1 << 28) | (disk << 8);
> > > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 }
> > > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 s=
nprintf(name, sizeof(name), "%lu", idx);
> > > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 i=
f (!xen_backend_exists("qdisk", name)) {
> > > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0 vdev->type =3D XEN_BLOCK_VDEV_TYPE_XVD;
> > > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0 vdev->partition =3D 0;
> > > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0 vdev->disk =3D disk;
> > > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0 vdev->number =3D idx;
> > > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0 return g_strdup(name);
> > > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 }
> > > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 d=
isk++;
> > > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 }
> > > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 error_setg(errp, "cannot =
find device vdev for block device");
> > > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 return NULL;
> > > +=C2=A0=C2=A0=C2=A0 }
> > > =C2=A0=C2=A0=C2=A0=C2=A0 return g_strdup_printf("%lu", vdev->number);
> > > =C2=A0}
> > > =C2=A0 =20
> >=20
> >  =20
>=20



From xen-devel-bounces@lists.xenproject.org Mon Oct 23 09:35:53 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 09:35:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621156.967308 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qurLe-0007m3-Oh; Mon, 23 Oct 2023 09:35:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621156.967308; Mon, 23 Oct 2023 09:35: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 1qurLe-0007lw-Kt; Mon, 23 Oct 2023 09:35:46 +0000
Received: by outflank-mailman (input) for mailman id 621156;
 Mon, 23 Oct 2023 09:35: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=7RLV=GF=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qurLe-0007lq-32
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 09:35:46 +0000
Received: from mail-ej1-x631.google.com (mail-ej1-x631.google.com
 [2a00:1450:4864:20::631])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 89c50a11-7187-11ee-98d5-6d05b1d4d9a1;
 Mon, 23 Oct 2023 11:35:44 +0200 (CEST)
Received: by mail-ej1-x631.google.com with SMTP id
 a640c23a62f3a-9c5b313b3ffso439140166b.0
 for <xen-devel@lists.xenproject.org>; Mon, 23 Oct 2023 02:35:45 -0700 (PDT)
Received: from [192.168.201.133] ([94.75.70.14])
 by smtp.gmail.com with ESMTPSA id
 j19-20020a170906105300b0099bcdfff7cbsm6268733ejj.160.2023.10.23.02.35.43
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 23 Oct 2023 02:35: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: 89c50a11-7187-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698053744; x=1698658544; 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=K0leErRB/gfP3qUzcOy+ZVFFE3N0kPU8PLOEaS/xGOA=;
        b=ZHcMF/XkSp5Za+o7iSvBmTOAGeyMUeOtjs851CXN9PFl0BRXlA6ADk6vvEYzsgvKYn
         J4E1FY707EVobqA25OMXS6L57G9ttlSqJsHPVALOofl1oGPPuP1OCSyC8A1bPZ6mDGzK
         gcvxBCtriDy/2N0/sVOrbcR60cZEJdNVwx+UC2ez6JEtfG0p4mp3OKivOrlsgJE68wiR
         a0KPidCTT+PK3tax1rsZxjXQj8ERrVwrMKDKpj7LV9ub48FbGDgYJDWpe4172Laz4LNY
         dBWJgQMKWV5d/gn1sw9gfMTCnoTjfTKiYj7YsxVXU50fXZXvfwnt9JmNxbG9LLucvacF
         HfxQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698053744; x=1698658544;
        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=K0leErRB/gfP3qUzcOy+ZVFFE3N0kPU8PLOEaS/xGOA=;
        b=R4ekDp2aBK9xVH+3fxh/OtQhCwdLksYMBvFYOnpsFcNvr7t28D6OTi+rxQoxBVdxB+
         rIGM5DI3BnjZVYV0iyTtLaJXl6oJOVVK0VEfqCMUwmdctx7jc0EGuYLaJ39rhKTabyeS
         f31PnEA5gALbO+WshBtaXcrYrGVaTfI8Yq/SSbnkC97HvpkSFV9lhLscNMDttzlk4wbQ
         rzZ7g+vgcubs/5Lj+5nLp6eEwZiDSxBtutX+DMKUEdc+gj/xnGxEtl6sjql7YqdsSYQX
         AtMKtJo3op5DscV2g7R8/SuAmOLEu8Mqljumn2Rblu0zOvKtVY4UfLIg3uwX89pt+ZGW
         FFtQ==
X-Gm-Message-State: AOJu0YxWHasxAinXkhs5z/9hR+DiEgmgD89Gyz6Eb6aApHtTxk1hBgCJ
	ORyBgl2sfnGjF82qIB3Vyc8=
X-Google-Smtp-Source: AGHT+IHgneSwf4m3xabLzLfpgpc3TOgcH747jHJSqghFAI9baHwuPKhVzhj6HuJtluZlvfuvxFqeaw==
X-Received: by 2002:a17:907:31c1:b0:9a1:891b:6eed with SMTP id xf1-20020a17090731c100b009a1891b6eedmr6554665ejb.76.1698053744481;
        Mon, 23 Oct 2023 02:35:44 -0700 (PDT)
Message-ID: <b37269c08749424e54611595e2ab1a0f4cbb3cc8.camel@gmail.com>
Subject: Re: [PATCH v1 02/29] xen/asm-generic: introduce stub header paging.h
From: Oleksii <oleksii.kurochko@gmail.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>, xen-devel@lists.xenproject.org
Date: Mon, 23 Oct 2023 12:35:43 +0300
In-Reply-To: <c474dde4-3175-426b-a10d-43e816f9fe27@xen.org>
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
	 <5def596788d602b9b34302630c91644952c7115d.1694702259.git.oleksii.kurochko@gmail.com>
	 <0911e74f-73e1-6053-ce1f-ecea98ea5f17@suse.com>
	 <c474dde4-3175-426b-a10d-43e816f9fe27@xen.org>
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,=20
On Thu, 2023-10-19 at 11:35 +0100, Julien Grall wrote:
> Hi,
>=20
> On 19/10/2023 10:05, 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>
> > > ---
> > > =C2=A0 xen/include/asm-generic/paging.h | 17 +++++++++++++++++
> > > =C2=A0 1 file changed, 17 insertions(+)
> > > =C2=A0 create mode 100644 xen/include/asm-generic/paging.h
> > >=20
> > > 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)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0(1)
> > > +#define paging_mode_external(d)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0(1)
> This is more a question for Jan, in the past I recall you asked the=20
> macor to evaluate the argument. Shouldn't we do the same here?
Could you please share a link?
I am not sure that I am in the context.

>=20
> Also, I think we want to take the opportunity to convert to true.=20
Sure, we can. I'll change definition to true.

> Lastly, this seems to be using hard tab rather than soft tab. In Xen
> we=20
> use the latter (unless this is a file imported from Linux).
Thanks. I'll update tab.

>=20
> > > +
> > > +#endif /* __ASM_GENERIC_PAGING_H__ */
> >=20
> > Looks okay, but wants accompanying by dropping (i.e. effectively
> > moving)
> > Arm's respective header.
>=20
> FWIW, I would be ok if the change is separate. I can help to write it
> also.
I would be glad if you could help.

>=20
> > The description than also wants adjusting (it
> > wasn't quite suitable anyway, as there's missing context).
>=20
>=20
~ Oleksii



From xen-devel-bounces@lists.xenproject.org Mon Oct 23 09:40:30 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 09:40:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621159.967317 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qurQC-00017b-8e; Mon, 23 Oct 2023 09:40:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621159.967317; Mon, 23 Oct 2023 09:40: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 1qurQC-00017U-5y; Mon, 23 Oct 2023 09:40:28 +0000
Received: by outflank-mailman (input) for mailman id 621159;
 Mon, 23 Oct 2023 09:40: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=7RLV=GF=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qurQB-00017O-9W
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 09:40:27 +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 316b2502-7188-11ee-98d5-6d05b1d4d9a1;
 Mon, 23 Oct 2023 11:40:25 +0200 (CEST)
Received: by mail-lf1-x12f.google.com with SMTP id
 2adb3069b0e04-507a62d4788so4811467e87.0
 for <xen-devel@lists.xenproject.org>; Mon, 23 Oct 2023 02:40:26 -0700 (PDT)
Received: from [192.168.201.133] ([94.75.70.14])
 by smtp.gmail.com with ESMTPSA id
 x10-20020a056512078a00b00507a0098424sm1608318lfr.109.2023.10.23.02.40.24
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 23 Oct 2023 02:40: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: 316b2502-7188-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698054026; x=1698658826; 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=vNcsuFsrnKIOO5YGPBrm4Q9F28dPL1sekgtRjihi25o=;
        b=hJC93MEfPcU7hfASm1G6P19fgwZvxKcZyULA5a2z5Ck/S6NsKlLVghvJ6uVYzm9DLH
         VcAGW5gacN5vvtq8gKeT8fR+JUIfhpkdffn1q49n3+4lZIubgtC05jXZysau5/CAbYRR
         pcIi9A6sKirntNro+b6iDP/0Rc9PRM+cBFYmmgQz29T3KA9Ji/aQxnMI2fiRIiEu9sR1
         cz7zdmF6KU+cYXWEZPknWvfNQftrlYB8zAMYU4rSsNVgXN5up/Q0AMh9COcltscz5Cwj
         XrAZ8onh1ZlOQiRMsRZOEcHfk1QQwONDvljtO/rtn5D6Qq9Uov9y2/aTHLWkSBGX42PO
         V5Jg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698054026; x=1698658826;
        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=vNcsuFsrnKIOO5YGPBrm4Q9F28dPL1sekgtRjihi25o=;
        b=a9vwA9IqnkMn/efToIyay/U2CWiMwVQTqBvnJrH2XQZMWg9Uev095ObZ3naBUcsDMj
         x+nG3b4bKJ9+MkOxpYRiRh+OSDfYq7CO4iWtlJMBcyoX2i1lQ7BKsmuYWT1rgwCUpfrf
         r8ujLcfXWn6hIVsbNliVxkHZ90cAOB7yZ22pVtfreGWPioG4kyLA6pUha3CDppuNl4w5
         W4LfMc/08irUehy1VmlZSXxlFlhWoBDhHS9Ruh57xDFS74ZsBlc9wg94s5r4sRiW9SrO
         Qo4DBwbfcn9U9m86l3wqr9KUyNyTqVuqiS3/XrU6mF+HQVU6iyC0dgPpsO0GMQWNjgqf
         J5uw==
X-Gm-Message-State: AOJu0YzHgyRwpqxIqI4Z+MKzsg0S1Sg0vB3mc+SiL/x9ExQddX5debKO
	BLGEnp8SaBLujKhbJr0arK4=
X-Google-Smtp-Source: AGHT+IHnJmaHS/zjB/EBhm6Wyjk9YSymIU4xfaFHe44fa+NzXzlHJ77jMy7xyVcMIcSOMNMXh2hEfQ==
X-Received: by 2002:ac2:46c6:0:b0:503:256a:80cc with SMTP id p6-20020ac246c6000000b00503256a80ccmr5550886lfo.42.1698054025522;
        Mon, 23 Oct 2023 02:40:25 -0700 (PDT)
Message-ID: <9b446557abc4579219c0ead28263ded8136fefbc.camel@gmail.com>
Subject: Re: [PATCH v1 02/29] xen/asm-generic: introduce stub header paging.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, 23 Oct 2023 12:40:24 +0300
In-Reply-To: <0911e74f-73e1-6053-ce1f-ecea98ea5f17@suse.com>
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
	 <5def596788d602b9b34302630c91644952c7115d.1694702259.git.oleksii.kurochko@gmail.com>
	 <0911e74f-73e1-6053-ce1f-ecea98ea5f17@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-10-19 at 11:05 +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>
> > ---
> > =C2=A0xen/include/asm-generic/paging.h | 17 +++++++++++++++++
> > =C2=A01 file changed, 17 insertions(+)
> > =C2=A0create mode 100644 xen/include/asm-generic/paging.h
> >=20
> > 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)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0(1)
> > +#define paging_mode_external(d)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0(1)
> > +
> > +#endif /* __ASM_GENERIC_PAGING_H__ */
>=20
> Looks okay, but wants accompanying by dropping (i.e. effectively
> moving)
> Arm's respective header. The description than also wants adjusting
> (it
> wasn't quite suitable anyway, as there's missing context).
If I understand you correctly, I'll re-use ARM's header, but I am not
sure I know how the description should be changed except that it can be
more specific regarding which one header is introduced.

~ Oleksii



From xen-devel-bounces@lists.xenproject.org Mon Oct 23 09:42:11 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 09:42:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621161.967327 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qurRn-0001fS-J9; Mon, 23 Oct 2023 09:42:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621161.967327; Mon, 23 Oct 2023 09:42: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 1qurRn-0001fL-GX; Mon, 23 Oct 2023 09:42:07 +0000
Received: by outflank-mailman (input) for mailman id 621161;
 Mon, 23 Oct 2023 09:42: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=7RLV=GF=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qurRl-0001fF-Ss
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 09:42:05 +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 6bf3e639-7188-11ee-9b0e-b553b5be7939;
 Mon, 23 Oct 2023 11:42:03 +0200 (CEST)
Received: by mail-lf1-x12f.google.com with SMTP id
 2adb3069b0e04-507962561adso4331295e87.0
 for <xen-devel@lists.xenproject.org>; Mon, 23 Oct 2023 02:42:03 -0700 (PDT)
Received: from [192.168.201.133] ([94.75.70.14])
 by smtp.gmail.com with ESMTPSA id
 be33-20020a056512252100b005079fa0b1c3sm1638124lfb.243.2023.10.23.02.42.01
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 23 Oct 2023 02:42: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: 6bf3e639-7188-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698054123; x=1698658923; 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=MhSLSdUs5thPEVL2bd2GtxQ7WFe6OUIMos7GDofniaM=;
        b=duGJc350SeXHXC9S0OLbsYL/DBcOn0rvyXJs7NaIdASza51gP8dsp7DSbXbr3+23kd
         i6bBWWxTa01SzKRZFyTYvw0M0WRgL9PcD7/CDOEwbwDkgZkvm07nHn1bB6euu7aUNzhx
         3s1ENkouBAfDAPSslrThtxGnpX6jCDbmACPX1oFQUgPPMqzccBR11Tjp+x1Cbtw3TZ81
         KjCurspNRLD5eiz9ddvkeuRou3LGLU2XD7GevLXL/WOItqyU504y+nCMK2bR0UOgbZNK
         UeBtShFJ6DQyDf5+EnEp8vAPuQJmlSsNag9YQUHN7T4TX4eTNRgk+rh8TqCMHyfpr5k/
         xgmQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698054123; x=1698658923;
        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=MhSLSdUs5thPEVL2bd2GtxQ7WFe6OUIMos7GDofniaM=;
        b=hO1Rr63s4h9Z8Sxye+HR/PjDZOL+BYv+s5TXriokQBNnGoM8OsPbLUo1p3dLk9KPxY
         wUZbZMv0tPP0jktKk6l0MI3bvTDEGewVAQeqc47cUU21NKb8BcAPU6YxSiSqOhUC0cRq
         A4aBbmCpNFmLC9oD8VLzaw7PzmVdazQDYUHmrU3CaoJtiASQSePV9NBVSCcx0Hr+xLo6
         Jx/O+qVOcP+k+XV9Zh1h2nWOrDrZA4abAD/urSPTePMduo/YahLQ0ilo9+4lyLN+YcIh
         JcOuO06czRvtE5LbgWEz/hmUHctCOa/mn2qt4MdZLidcDQi0bDqNwifNjJ/U0KA6U5t4
         CvIQ==
X-Gm-Message-State: AOJu0YwqUwEUcSq3qE+sqk0OeivAcKBrA+TyYg8UR7AHr71rcWc9OaMW
	Jyi0CqH80kgOKyggQumi/5s=
X-Google-Smtp-Source: AGHT+IGXBwPfc5j9v4a/zL2pV0OTIIYOWU1uNcXMopjQzPAUKGbI65m3IlyndeTzEDSNQF0glevtAQ==
X-Received: by 2002:a05:6512:6c4:b0:507:99d6:95fc with SMTP id u4-20020a05651206c400b0050799d695fcmr7977047lff.45.1698054122883;
        Mon, 23 Oct 2023 02:42:02 -0700 (PDT)
Message-ID: <13601cd1fc51ded17ec3363eea7382de43e7312a.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, 23 Oct 2023 12:42:01 +0300
In-Reply-To: <a05c39b64004398fbb42ec83a452fa7af6603f95.camel@gmail.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>
	 <a05c39b64004398fbb42ec83a452fa7af6603f95.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 Fri, 2023-09-22 at 09:00 +0300, Oleksii wrote:
> 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.sanast=
asio@raptorengineering.com/
> > > > > > > [2]
> > > > > > > https://lore.kernel.org/xen-devel/cover.1692181079.git.oleksi=
i.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.
Hmm... but my gitlab CI told me that there is an issue with riscv64
build I'll double-check.

~ Oleksii


From xen-devel-bounces@lists.xenproject.org Mon Oct 23 09:43:33 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 09:43:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621164.967338 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qurT9-0002IR-T8; Mon, 23 Oct 2023 09:43:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621164.967338; Mon, 23 Oct 2023 09:43: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 1qurT9-0002IK-QD; Mon, 23 Oct 2023 09:43:31 +0000
Received: by outflank-mailman (input) for mailman id 621164;
 Mon, 23 Oct 2023 09:43: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=F7kl=GF=casper.srs.infradead.org=BATV+91fa634947ba19782c4e+7365+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qurT7-0002IC-MD
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 09:43:30 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 9dc55653-7188-11ee-98d5-6d05b1d4d9a1;
 Mon, 23 Oct 2023 11:43:27 +0200 (CEST)
Received: from [31.94.4.150] (helo=[IPv6:::1])
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qurSo-00D2s3-IS; Mon, 23 Oct 2023 09:43: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: 9dc55653-7188-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=Content-Transfer-Encoding:Content-Type:
	MIME-Version:Message-ID:References:In-Reply-To:Subject:CC:To:From:Date:Sender
	:Reply-To:Content-ID:Content-Description;
	bh=QJnLNJLIKQ/1yQL84M0rKohbw6CIp8aEbajAdE1XPdk=; b=CUdLWyALBJqmFbDGesKzP61pFX
	yMyqMvl8eVP0caNQqIuXFssX8lBUzWgpK0Cz1fE8ycmQ7Zc364gqWYFOTEzYFjujFruaRGkPf/g16
	2GvuZQFH7+oO5B5p06BuB9jm6y2Zb0P3hOi7BsVk8I5q9ZzHdu8NlWI5fNR9PAEQX1FoAvUwcQygR
	BrsvhK9U4XPB2XlRKtxIRyatSt0Ur8ot4pBTYRH2JCADNdaRtv6ro02JzxVUyyL4XCxYYdUYirxQk
	sSvo6tPiHXwM1MjlSxzPFY4mccQVObrvA0FIliR8oJ5LExfja1ipELp+yx7XX+ndJ15ku4AvAk9s8
	aSwfOOyQ==;
Date: Mon, 23 Oct 2023 10:42:58 +0100
From: David Woodhouse <dwmw2@infradead.org>
To: Igor Mammedov <imammedo@redhat.com>
CC: qemu-devel@nongnu.org, Kevin Wolf <kwolf@redhat.com>,
 Hanna Reitz <hreitz@redhat.com>, Stefano Stabellini <sstabellini@kernel.org>,
 Anthony Perard <anthony.perard@citrix.com>, Paul Durrant <paul@xen.org>,
 =?ISO-8859-1?Q?Marc-Andr=E9_Lureau?= <marcandre.lureau@redhat.com>,
 Paolo Bonzini <pbonzini@redhat.com>, "Michael S. Tsirkin" <mst@redhat.com>,
 Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
 Richard Henderson <richard.henderson@linaro.org>,
 Eduardo Habkost <eduardo@habkost.net>, Marcelo Tosatti <mtosatti@redhat.com>,
 qemu-block@nongnu.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org,
 =?ISO-8859-1?Q?Daniel_P=2E_Berrang=E9?= <berrange@redhat.com>
Subject: =?US-ASCII?Q?Re=3A_=5BPATCH_11/12=5D_hw/xen=3A_automaticall?= =?US-ASCII?Q?y_assign_device_index_to_block_devices?=
User-Agent: K-9 Mail for Android
In-Reply-To: <20231023113002.0e83c209@imammedo.users.ipa.redhat.com>
References: <20231016151909.22133-1-dwmw2@infradead.org> <20231016151909.22133-12-dwmw2@infradead.org> <20231018093239.3d525fd8@imammedo.users.ipa.redhat.com> <3f3487af227dcdce7afb37e8406d5ce8dcdbf55f.camel@infradead.org> <20231023113002.0e83c209@imammedo.users.ipa.redhat.com>
Message-ID: <8CBFDABE-6BD7-4924-BB69-EF5EAA04A34D@infradead.org>
MIME-Version: 1.0
Content-Type: text/plain;
 charset=utf-8
Content-Transfer-Encoding: quoted-printable
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html



On 23 October 2023 10:30:02 BST, Igor Mammedov <imammedo@redhat=2Ecom> wro=
te:
>On Wed, 18 Oct 2023 09:32:47 +0100
>David Woodhouse <dwmw2@infradead=2Eorg> wrote:
>
>> On Wed, 2023-10-18 at 09:32 +0200, Igor Mammedov wrote:
>> > On Mon, 16 Oct 2023 16:19:08 +0100
>> > David Woodhouse <dwmw2@infradead=2Eorg> wrote:
>> >  =20
>> > > From: David Woodhouse <dwmw@amazon=2Eco=2Euk>
>> > >  =20
>> >=20
>> > is this index a user (guest) visible? =20
>>=20
>> Yes=2E It defines what block device (e=2Eg=2E /dev/xvda) the disk appea=
rs as
>> in the guest=2E In the common case, it literally encodes the Linux
>> major/minor numbers=2E So xvda (major 202) is 0xca00, xvdb is 0xca10 et=
c=2E
>
>that makes 'index' an implicit ABI and a subject to versioning
>when the way it's assigned changes (i=2Ee=2E one has to use versioned
>machine types to keep older versions working the they used to)=2E
>
>From what I remember it's discouraged to make QEMU invent
>various IDs that are part of ABI (guest or mgmt side)=2E
>Instead it's preferred for mgmt side/user to provide that explicitly=2E
>
>Basically you are trading off manageability/simplicity at QEMU
>level with CLI usability for human user=2E
>I don't care much as long as it is hidden within xen code base,
>but maybe libvirt does=2E

Well, it can still be set explicitly=2E So not so much a "trade-off" as ad=
ding the option for the user to choose the simple way=2E

Yes, in a way it's an ABI, just like the dynamic assignment of PCI devfn f=
or network devices added with "-nic"=2E And I think also for virtio block d=
evices too? And for the ISA ne2000=2E

But it seems unlikely that we'll ever really want to change "the first one=
 is xvda, the second is xvdb=2E=2E=2E=2E"


From xen-devel-bounces@lists.xenproject.org Mon Oct 23 09:50:06 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 09:50:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621170.967347 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qurZQ-0004HI-HS; Mon, 23 Oct 2023 09:50:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621170.967347; Mon, 23 Oct 2023 09:50: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 1qurZQ-0004HB-Eq; Mon, 23 Oct 2023 09:50:00 +0000
Received: by outflank-mailman (input) for mailman id 621170;
 Mon, 23 Oct 2023 09:49: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=7RLV=GF=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qurZO-0004H5-Mf
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 09:49:58 +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 869aa774-7189-11ee-98d5-6d05b1d4d9a1;
 Mon, 23 Oct 2023 11:49:57 +0200 (CEST)
Received: by mail-lj1-x236.google.com with SMTP id
 38308e7fff4ca-2c16757987fso44728831fa.3
 for <xen-devel@lists.xenproject.org>; Mon, 23 Oct 2023 02:49:57 -0700 (PDT)
Received: from [192.168.201.133] ([94.75.70.14])
 by smtp.gmail.com with ESMTPSA id
 h8-20020a2ea488000000b002c27cd20711sm1532745lji.3.2023.10.23.02.49.56
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 23 Oct 2023 02:49: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: 869aa774-7189-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698054597; x=1698659397; 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=ZUec5HQQ2PSukLyXg/hoAoXU+/9nN+IY2Wex/kqK/S8=;
        b=PEoYkluLHjSe6KgCh+5tPuatump5suqwhjPHZ8U2HRxosX5N6RWT+dLUde5XiQCFkq
         9a1fBu4o2Rri86wktRjLZITeyw45QvJAzd7uUU58IK0WTbdiuxkcEQfZ1gvE/cSLKrlZ
         9cB/7ZBdRNdOkIaR+nTMGBZZ3FEY32Y3C+wmCAVVxbEQTz3hCSa72P/wJ/+Djmy/CIMh
         rn65eQ/I902wzONPkTP4aE3gY8Q3lWWAGiaSOP7YwSS7Ix2deDOn/S85ERpcxgecKTBJ
         61SEGESU5DdwM9lEYHImqnxwEpW73hsq5RWtZpbCkq4C81M6FjoNKMUBlMuJiakLH7Qo
         D0Xg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698054597; x=1698659397;
        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=ZUec5HQQ2PSukLyXg/hoAoXU+/9nN+IY2Wex/kqK/S8=;
        b=asDBntkT67NwVQ/j96Ek2RrvzwUUaLWegRwiAqtjCtTKaWqRwRmkXG5NswlvRFnIkf
         5aHZGb/34SZYMCWFYBFfPxsrCVOLn7Xnozi0NqlVbzyOzg5JpLOUKbsrVG2Z7qPQHg+h
         ZsOrUgJYjuZWx1Co287hF4AJJUbCR90xINp7QHak1l5Et9MGFKaGf6j77qwY//JkYMD+
         FFHXni9Qzt9PCPhKelx27WhY1Bbl85uBDPBhw8wqoQbPbl1buR0zGQbDRmSRaNuJ3pm7
         sSF3V01LVPNfNw+NJM0AZmZ2KEC9WCeYpaFWoN7kYcd/ZA6fzzXVdDMu9JQQodJ9EZxB
         gupA==
X-Gm-Message-State: AOJu0YxDR+ZrpbP5OpWIcB3xB5lQ4CD0AmeD9OMDJowN40AAaeycbwSU
	x1tRnPhn2s32BZ3SiCRTU7g=
X-Google-Smtp-Source: AGHT+IGfrBIxdBtldO0DBN8K4McjKWv91BJBT05/D5AskVb7Pt0FbfJTpZ0z0aVQmjmMaykcNwTnsQ==
X-Received: by 2002:a2e:90d0:0:b0:2c5:ee7:b322 with SMTP id o16-20020a2e90d0000000b002c50ee7b322mr6207788ljg.18.1698054597113;
        Mon, 23 Oct 2023 02:49:57 -0700 (PDT)
Message-ID: <3889dd0e2b3bae28d6b74ab72038ad29ac97cab9.camel@gmail.com>
Subject: Re: [PATCH v1 03/29] xen/asm-generic: introduce stub header
 cpufeature.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, 23 Oct 2023 12:49:55 +0300
In-Reply-To: <dbc0e6fb-3f25-b4cb-83a2-d7c5f1a9e0a3@suse.com>
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
	 <c89b1a60ee40576a2841c222a2cefc5ae2a301d3.1694702259.git.oleksii.kurochko@gmail.com>
	 <dbc0e6fb-3f25-b4cb-83a2-d7c5f1a9e0a3@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-10-19 at 11:11 +0200, Jan Beulich wrote:
> I'm not convinced an arch can get away without such a header.
> Certainly
> RISC-V and PPC can't, with all their ISA extensions that already
> exist
> (part of which will want making use of, others may simply want
> exposing
> to guests).
Yes, it looks like you are right. I forgot about a considerable amount
of ISA.

By this patch series, I tried to move headers to asm-generic to build
minimal Xen without introducing the stub cpu_nr_siblings(unsigned int
cpu) for each new arch. But taking into account that likely this header
will be re-introduced for an arch, there is probably no sense to have
it in asm-generic.

~ Oleksii


From xen-devel-bounces@lists.xenproject.org Mon Oct 23 09:51:25 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 09:51:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621173.967357 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qurak-0005hx-UV; Mon, 23 Oct 2023 09:51:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621173.967357; Mon, 23 Oct 2023 09:51: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 1qurak-0005ho-Rs; Mon, 23 Oct 2023 09:51:22 +0000
Received: by outflank-mailman (input) for mailman id 621173;
 Mon, 23 Oct 2023 09:51: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=1u5b=GF=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1quraj-0005hd-FT
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 09:51:21 +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 b76cfc02-7189-11ee-98d5-6d05b1d4d9a1;
 Mon, 23 Oct 2023 11:51:20 +0200 (CEST)
Received: by mail-ej1-x634.google.com with SMTP id
 a640c23a62f3a-9c603e235d1so466000666b.3
 for <xen-devel@lists.xenproject.org>; Mon, 23 Oct 2023 02:51:20 -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
 gz11-20020a170906f2cb00b0099cd008c1a4sm6328829ejb.136.2023.10.23.02.51.18
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Mon, 23 Oct 2023 02:51: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: b76cfc02-7189-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1698054679; x=1698659479; darn=lists.xenproject.org;
        h=content-transfer-encoding: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=qS1/FTU1Qy6IAehaP98Z3pjjqQ2nFlGwN8pW+tF98is=;
        b=s5PXMRTYjqinFvu2C7Db5Z6ENHyYHtnxGkwJD+1MoNd7rKVJ8vU843ZjFf4aLUR2aN
         3uxsxMu7miQiEuPRcpR9L2H0cmx0fZ4aoAgAVVNsiQ/uGXe1mEpumLzlDfCcHibn0Rw/
         G0L6O/aHVbTgJC86+V0ELsVUUC1m44u9RxWiU=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698054679; x=1698659479;
        h=content-transfer-encoding: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=qS1/FTU1Qy6IAehaP98Z3pjjqQ2nFlGwN8pW+tF98is=;
        b=e1UlBbX2GVjoX8Lvovz+J0L7OZi9VFX3lMBm1dzuSzhKUMWHHpVfTaKZDW3aZnPqGy
         W1XLmyYG1Odd/tROerUs3Fi2ddYSi0bCJaehTAuvbvK37gkrFQdD5FtixHvrl61Eyq3d
         /eZWo9x9+Fa3t8FsJFtRpQWIIfu4YK1xD6wGUBzjPZfXXdURbWrTQ+QoM6egWIEEDhI9
         jruQoyWHQ6kvjKiroRyDH0ZKe6KGBhlpni/KCCeV3JBKZA1c6qofJj6UW03chZCncMQc
         qEeIbgzKJhgvI8fTAypCSab7ETdLXayp2LTSR0dOBCXbxGHjrc8evzapxkSwdl98He5p
         KXpA==
X-Gm-Message-State: AOJu0YymBK3EXP8hsBgWIwCltKq7wxVRZ9VlYEgg+9Twd5QU/gDN/SO0
	BWavi/jV5IofvaVYJxV3UTyAFmL/0YbVXMK3f5pkFQ==
X-Google-Smtp-Source: AGHT+IETijhLHL3jhzzb03XOrvGdJ8dg+NrbJaZSRvtQ+cm5Nrf35wTAyS0lrRyo8kTumKLiMz7m9Q==
X-Received: by 2002:a17:906:6a22:b0:9be:d15e:8ca2 with SMTP id qw34-20020a1709066a2200b009bed15e8ca2mr5046123ejc.39.1698054679313;
        Mon, 23 Oct 2023 02:51:19 -0700 (PDT)
Message-ID: <dde471bb-6e66-4dba-ab01-9fd6b031338c@citrix.com>
Date: Mon, 23 Oct 2023 10:51:18 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH for-4.19] xen/xmalloc: XMEM_POOL_POISON improvements
Content-Language: en-GB
To: Julien Grall <julien@xen.org>, Xen-devel <xen-devel@lists.xenproject.org>
Cc: George Dunlap <George.Dunlap@eu.citrix.com>,
 Jan Beulich <JBeulich@suse.com>, Stefano Stabellini
 <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>
References: <20231020202649.1802700-1-andrew.cooper3@citrix.com>
 <2f3180d3-883d-466e-a454-762aa16c9e7a@xen.org>
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: <2f3180d3-883d-466e-a454-762aa16c9e7a@xen.org>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 22/10/2023 5:52 pm, Julien Grall wrote:
> Hi Andrew,
>
> On 20/10/2023 21:26, Andrew Cooper wrote:
>> When in use, the spew:
>>
>>    (XEN) Assertion '!memchr_inv(b->ptr.buffer + MIN_BLOCK_SIZE,
>> POISON_BYTE, (b->size & BLOCK_SIZE_MASK) - MIN_BLOCK_SIZE)' failed at
>> common/xmalloc_tlsf.c:246
>>
>> is unweidly and meaningless to non-Xen developers.  Therefore:
>>
>>   * Switch to IS_ENABLED().  There's no need for full #ifdef-ary.
>>   * Pull memchr_inv() out into the if(), and provide a better error
>> message.
>>
>> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
>> ---
>> CC: George Dunlap <George.Dunlap@eu.citrix.com>
>> CC: Jan Beulich <JBeulich@suse.com>
>> CC: Stefano Stabellini <sstabellini@kernel.org>
>> CC: Wei Liu <wl@xen.org>
>> CC: Julien Grall <julien@xen.org>
>> CC: Roger Pau Monné <roger.pau@citrix.com>
>>
>> Observations from the debugging of:
>>    https://github.com/Dasharo/dasharo-issues/issues/488
>>
>> There's a further bug.  XMEM_POOL_POISON can be enabled in release
>> builds,
>> where the ASSERT() gets dropped.
>>
>> However, upping to a BUG() can't provide any helpful message out to
>> the user.
>>
>> I tried modifying BUG() to take an optional message, but xen/bug.h needs
>> untangling substantially before that will work, and I don't have time
>> right now.
>
> Do we actually care about the registers values? If not, we can either
> use:
>
> printk(...);
> BUG();
>
> Or
>
> panic(...);
>
> This would allow us to use XMEM_POOL_POISON in prod build before BUG()
> can accept string.

We care about the backtrace, so panic() on it's own isn't good enough.

But printk();BUG(); should be good enough so I'll swap to that.

~Andrew


From xen-devel-bounces@lists.xenproject.org Mon Oct 23 09:56:59 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 09:56:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621180.967392 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qurgA-0008KY-9g; Mon, 23 Oct 2023 09:56:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621180.967392; Mon, 23 Oct 2023 09:56: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 1qurgA-0008KK-67; Mon, 23 Oct 2023 09:56:58 +0000
Received: by outflank-mailman (input) for mailman id 621180;
 Mon, 23 Oct 2023 09:56: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=gXaf=GF=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qurg8-0007mv-0l
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 09:56:56 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 7ed1ce23-718a-11ee-98d5-6d05b1d4d9a1;
 Mon, 23 Oct 2023 11:56:54 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id 6F4CA4EE0746;
 Mon, 23 Oct 2023 11: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: 7ed1ce23-718a-11ee-98d5-6d05b1d4d9a1
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>,
	Jun Nakajima <jun.nakajima@intel.com>,
	Kevin Tian <kevin.tian@intel.com>
Subject: [XEN PATCH][for-4.19 v4 3/8] x86: add deviation comments for  asm-only functions
Date: Mon, 23 Oct 2023 11:56:40 +0200
Message-Id: <36d24b3a3e264f0e0b265b4f68d6432a143d64cd.1698053876.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1698053876.git.nicola.vetrini@bugseng.com>
References: <cover.1698053876.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

As stated in rules.rst, functions used only in asm code
are allowed to have no prior declaration visible when being
defined, hence these functions are deviated.
This also fixes violations of MISRA C:2012 Rule 8.4.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
---
Changes in v3:
- added SAF deviations for vmx counterparts to svm functions.
---
 xen/arch/x86/hvm/svm/intr.c      | 1 +
 xen/arch/x86/hvm/svm/nestedsvm.c | 1 +
 xen/arch/x86/hvm/svm/svm.c       | 2 ++
 xen/arch/x86/hvm/vmx/intr.c      | 1 +
 xen/arch/x86/hvm/vmx/vmx.c       | 2 ++
 xen/arch/x86/hvm/vmx/vvmx.c      | 1 +
 xen/arch/x86/traps.c             | 1 +
 xen/arch/x86/x86_64/traps.c      | 1 +
 8 files changed, 10 insertions(+)

diff --git a/xen/arch/x86/hvm/svm/intr.c b/xen/arch/x86/hvm/svm/intr.c
index 192e17ebbfbb..bd9dc560bbc6 100644
--- a/xen/arch/x86/hvm/svm/intr.c
+++ b/xen/arch/x86/hvm/svm/intr.c
@@ -123,6 +123,7 @@ static void svm_enable_intr_window(struct vcpu *v, struct hvm_intack intack)
         vmcb, general1_intercepts | GENERAL1_INTERCEPT_VINTR);
 }
 
+/* SAF-1-safe */
 void svm_intr_assist(void)
 {
     struct vcpu *v = current;
diff --git a/xen/arch/x86/hvm/svm/nestedsvm.c b/xen/arch/x86/hvm/svm/nestedsvm.c
index a09b6abaaeaf..c80d59e0728e 100644
--- a/xen/arch/x86/hvm/svm/nestedsvm.c
+++ b/xen/arch/x86/hvm/svm/nestedsvm.c
@@ -1441,6 +1441,7 @@ nestedsvm_vcpu_vmexit(struct vcpu *v, struct cpu_user_regs *regs,
 }
 
 /* VCPU switch */
+/* SAF-1-safe */
 void nsvm_vcpu_switch(void)
 {
     struct cpu_user_regs *regs = guest_cpu_user_regs();
diff --git a/xen/arch/x86/hvm/svm/svm.c b/xen/arch/x86/hvm/svm/svm.c
index 24c417ca7199..40ba69bcdfa1 100644
--- a/xen/arch/x86/hvm/svm/svm.c
+++ b/xen/arch/x86/hvm/svm/svm.c
@@ -1056,6 +1056,7 @@ static void noreturn cf_check svm_do_resume(void)
     reset_stack_and_jump(svm_asm_do_resume);
 }
 
+/* SAF-1-safe */
 void svm_vmenter_helper(void)
 {
     const struct cpu_user_regs *regs = guest_cpu_user_regs();
@@ -2586,6 +2587,7 @@ const struct hvm_function_table * __init start_svm(void)
     return &svm_function_table;
 }
 
+/* SAF-1-safe */
 void svm_vmexit_handler(void)
 {
     struct cpu_user_regs *regs = guest_cpu_user_regs();
diff --git a/xen/arch/x86/hvm/vmx/intr.c b/xen/arch/x86/hvm/vmx/intr.c
index fd719c4c01d2..1805aafb086d 100644
--- a/xen/arch/x86/hvm/vmx/intr.c
+++ b/xen/arch/x86/hvm/vmx/intr.c
@@ -224,6 +224,7 @@ void vmx_sync_exit_bitmap(struct vcpu *v)
     }
 }
 
+/* SAF-1-safe */
 void vmx_intr_assist(void)
 {
     struct hvm_intack intack;
diff --git a/xen/arch/x86/hvm/vmx/vmx.c b/xen/arch/x86/hvm/vmx/vmx.c
index 1edc7f1e919f..0936a263154e 100644
--- a/xen/arch/x86/hvm/vmx/vmx.c
+++ b/xen/arch/x86/hvm/vmx/vmx.c
@@ -4035,6 +4035,7 @@ static void undo_nmis_unblocked_by_iret(void)
               guest_info | VMX_INTR_SHADOW_NMI);
 }
 
+/* SAF-1-safe */
 void vmx_vmexit_handler(struct cpu_user_regs *regs)
 {
     unsigned long exit_qualification, exit_reason, idtv_info, intr_info = 0;
@@ -4787,6 +4788,7 @@ static void lbr_fixup(void)
 }
 
 /* Returns false if the vmentry has to be restarted */
+/* SAF-1-safe */
 bool vmx_vmenter_helper(const struct cpu_user_regs *regs)
 {
     struct vcpu *curr = current;
diff --git a/xen/arch/x86/hvm/vmx/vvmx.c b/xen/arch/x86/hvm/vmx/vvmx.c
index 16b0ef82b6c8..99d93b869307 100644
--- a/xen/arch/x86/hvm/vmx/vvmx.c
+++ b/xen/arch/x86/hvm/vmx/vvmx.c
@@ -1490,6 +1490,7 @@ static void nvmx_eptp_update(void)
     __vmwrite(EPT_POINTER, get_shadow_eptp(curr));
 }
 
+/* SAF-1-safe */
 void nvmx_switch_guest(void)
 {
     struct vcpu *v = current;
diff --git a/xen/arch/x86/traps.c b/xen/arch/x86/traps.c
index e1356f696aba..6af35a468199 100644
--- a/xen/arch/x86/traps.c
+++ b/xen/arch/x86/traps.c
@@ -2265,6 +2265,7 @@ void asm_domain_crash_synchronous(unsigned long addr)
 }
 
 #ifdef CONFIG_DEBUG
+/* SAF-1-safe */
 void check_ist_exit(const struct cpu_user_regs *regs, bool ist_exit)
 {
     const unsigned int ist_mask =
diff --git a/xen/arch/x86/x86_64/traps.c b/xen/arch/x86/x86_64/traps.c
index e03e80813e36..5963d26d7848 100644
--- a/xen/arch/x86/x86_64/traps.c
+++ b/xen/arch/x86/x86_64/traps.c
@@ -266,6 +266,7 @@ void show_page_walk(unsigned long addr)
            l1_table_offset(addr), l1e_get_intpte(l1e), pfn);
 }
 
+/* SAF-1-safe */
 void do_double_fault(struct cpu_user_regs *regs)
 {
     unsigned int cpu;
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Mon Oct 23 09:56:58 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 09:56:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621181.967398 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qurgA-0008QL-Kp; Mon, 23 Oct 2023 09:56:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621181.967398; Mon, 23 Oct 2023 09:56: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 1qurgA-0008Ma-En; Mon, 23 Oct 2023 09:56:58 +0000
Received: by outflank-mailman (input) for mailman id 621181;
 Mon, 23 Oct 2023 09: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=gXaf=GF=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qurg8-0007mu-JB
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 09:56:56 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 7f2cfa06-718a-11ee-9b0e-b553b5be7939;
 Mon, 23 Oct 2023 11:56:55 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id 3F6F44EE0747;
 Mon, 23 Oct 2023 11:56: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: 7f2cfa06-718a-11ee-9b0e-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>
Subject: [XEN PATCH][for-4.19 v4 4/8] x86/grant: switch included header to make declarations visible
Date: Mon, 23 Oct 2023 11:56:41 +0200
Message-Id: <65f0b6ff751f76590b81c7ad2ba4dbb98e8b6e0c.1698053876.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1698053876.git.nicola.vetrini@bugseng.com>
References: <cover.1698053876.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The declarations for {create,replace}_grant_p2m_mapping are
not visible when these functions are defined, therefore the right
header needs to be included to allow them to be visible.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
---
Changes in v3:
- asm/paging.h can be replaced with mm-frame.h, because just the
  definition of mfn_t is needed.
---
 xen/arch/x86/hvm/grant_table.c             | 3 +--
 xen/arch/x86/include/asm/hvm/grant_table.h | 2 ++
 2 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/xen/arch/x86/hvm/grant_table.c b/xen/arch/x86/hvm/grant_table.c
index 30d51d54a949..afe449d8882c 100644
--- a/xen/arch/x86/hvm/grant_table.c
+++ b/xen/arch/x86/hvm/grant_table.c
@@ -9,8 +9,7 @@
 
 #include <xen/types.h>
 
-#include <public/grant_table.h>
-
+#include <asm/hvm/grant_table.h>
 #include <asm/p2m.h>
 
 int create_grant_p2m_mapping(uint64_t addr, mfn_t frame,
diff --git a/xen/arch/x86/include/asm/hvm/grant_table.h b/xen/arch/x86/include/asm/hvm/grant_table.h
index 33c1da1a25f3..01e23f79b8cf 100644
--- a/xen/arch/x86/include/asm/hvm/grant_table.h
+++ b/xen/arch/x86/include/asm/hvm/grant_table.h
@@ -10,6 +10,8 @@
 #ifndef __X86_HVM_GRANT_TABLE_H__
 #define __X86_HVM_GRANT_TABLE_H__
 
+#include <xen/mm-frame.h>
+
 #ifdef CONFIG_HVM
 
 int create_grant_p2m_mapping(uint64_t addr, mfn_t frame,
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Mon Oct 23 09:56:58 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 09:56:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621179.967388 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qurgA-0008I0-1E; Mon, 23 Oct 2023 09:56:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621179.967388; Mon, 23 Oct 2023 09:56: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 1qurg9-0008Hp-UQ; Mon, 23 Oct 2023 09:56:57 +0000
Received: by outflank-mailman (input) for mailman id 621179;
 Mon, 23 Oct 2023 09: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=gXaf=GF=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qurg7-0007mu-Ug
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 09:56:55 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 7ce8f8b4-718a-11ee-9b0e-b553b5be7939;
 Mon, 23 Oct 2023 11:56:51 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id 4EA4C4EE0740;
 Mon, 23 Oct 2023 11:56: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: 7ce8f8b4-718a-11ee-9b0e-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>,
	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>,
	Jun Nakajima <jun.nakajima@intel.com>,
	Kevin Tian <kevin.tian@intel.com>,
	Tamas K Lengyel <tamas@tklengyel.com>,
	Alexandru Isaila <aisaila@bitdefender.com>,
	Petre Pircalabu <ppircalabu@bitdefender.com>
Subject: [XEN PATCH][for-4.19 v4 0/8] Fix or deviate various instances of missing declarations
Date: Mon, 23 Oct 2023 11:56:37 +0200
Message-Id: <cover.1698053876.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The patches in this series aim to fix or deviate various instances where a
function or variable do not have a declaration visible when such entity is
defined (in violation of MISRA C:2012 Rule 8.4).
An exception listed under docs/misra/rules.rst allows asm-only functions and
variables to be exempted, while the other instances are either changed
(e.g., making them static) or a missing header inclusion is added.

Nicola Vetrini (8):
  xen: modify or add declarations for variables where needed
  x86: add deviations for variables only used in asm code
  x86: add deviation comments for  asm-only functions
  x86/grant: switch included header to make declarations visible
  x86/vm_event: add missing include for hvm_vm_event_do_resume
  xen/console: remove stub definition in consoled.h
  x86/mem_access: make function static
  docs/misra: exclude three more files

 docs/misra/exclude-list.json               | 12 ++++++++++++
 xen/arch/arm/include/asm/setup.h           |  3 +++
 xen/arch/arm/include/asm/smp.h             |  3 +++
 xen/arch/arm/platform_hypercall.c          |  2 +-
 xen/arch/x86/cpu/mcheck/mce.c              |  7 ++++---
 xen/arch/x86/hvm/grant_table.c             |  3 +--
 xen/arch/x86/hvm/svm/intr.c                |  1 +
 xen/arch/x86/hvm/svm/nestedsvm.c           |  1 +
 xen/arch/x86/hvm/svm/svm.c                 |  2 ++
 xen/arch/x86/hvm/vm_event.c                |  1 +
 xen/arch/x86/hvm/vmx/intr.c                |  1 +
 xen/arch/x86/hvm/vmx/vmx.c                 |  2 ++
 xen/arch/x86/hvm/vmx/vvmx.c                |  1 +
 xen/arch/x86/include/asm/asm_defns.h       |  1 +
 xen/arch/x86/include/asm/hvm/grant_table.h |  2 ++
 xen/arch/x86/irq.c                         |  2 +-
 xen/arch/x86/mm/mem_access.c               |  6 +++---
 xen/arch/x86/setup.c                       |  4 +++-
 xen/arch/x86/traps.c                       |  1 +
 xen/arch/x86/x86_64/traps.c                |  1 +
 xen/include/xen/consoled.h                 |  7 -------
 xen/include/xen/symbols.h                  |  1 +
 22 files changed, 46 insertions(+), 18 deletions(-)

--
2.34.1


From xen-devel-bounces@lists.xenproject.org Mon Oct 23 09:56:58 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 09:56:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621178.967378 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qurg8-00082R-Py; Mon, 23 Oct 2023 09:56:56 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621178.967378; Mon, 23 Oct 2023 09: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 1qurg8-00082K-M8; Mon, 23 Oct 2023 09:56:56 +0000
Received: by outflank-mailman (input) for mailman id 621178;
 Mon, 23 Oct 2023 09:56: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=gXaf=GF=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qurg7-0007mv-0S
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 09:56:55 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 7e55b34a-718a-11ee-98d5-6d05b1d4d9a1;
 Mon, 23 Oct 2023 11:56:53 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id AE2E64EE0745;
 Mon, 23 Oct 2023 11:56: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: 7e55b34a-718a-11ee-98d5-6d05b1d4d9a1
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>
Subject: [XEN PATCH][for-4.19 v4 2/8] x86: add deviations for variables only used in asm code
Date: Mon, 23 Oct 2023 11:56:39 +0200
Message-Id: <67ec8b468d6048f7f91590b59430df275b2f5870.1698053876.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1698053876.git.nicola.vetrini@bugseng.com>
References: <cover.1698053876.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

To avoid a violation of MISRA C:2012 Rule 8.4, as permitted
by docs/misra/rules.rst.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
---
Changes in v3:
- Edited commit message
- Add two new variables
---
 xen/arch/x86/include/asm/asm_defns.h | 1 +
 xen/arch/x86/setup.c                 | 4 +++-
 2 files changed, 4 insertions(+), 1 deletion(-)

diff --git a/xen/arch/x86/include/asm/asm_defns.h b/xen/arch/x86/include/asm/asm_defns.h
index baaaccb26e17..a2516de7749b 100644
--- a/xen/arch/x86/include/asm/asm_defns.h
+++ b/xen/arch/x86/include/asm/asm_defns.h
@@ -31,6 +31,7 @@ asm ( "\t.equ CONFIG_INDIRECT_THUNK, "
  * gets set up by the containing function.
  */
 #ifdef CONFIG_FRAME_POINTER
+/* SAF-1-safe */
 register unsigned long current_stack_pointer asm("rsp");
 # define ASM_CALL_CONSTRAINT , "+r" (current_stack_pointer)
 #else
diff --git a/xen/arch/x86/setup.c b/xen/arch/x86/setup.c
index 08ba1f95d635..4480f08de718 100644
--- a/xen/arch/x86/setup.c
+++ b/xen/arch/x86/setup.c
@@ -75,6 +75,7 @@ static bool __initdata opt_invpcid = true;
 boolean_param("invpcid", opt_invpcid);
 bool __read_mostly use_invpcid;
 
+/* SAF-1-safe Only used in asm code and within this source file */
 unsigned long __read_mostly cr4_pv32_mask;
 
 /* **** Linux config option: propagated to domain0. */
@@ -147,12 +148,13 @@ cpumask_t __read_mostly cpu_present_map;
 unsigned long __read_mostly xen_phys_start;
 
 char __section(".init.bss.stack_aligned") __aligned(STACK_SIZE)
-    cpu0_stack[STACK_SIZE];
+    cpu0_stack[STACK_SIZE]; /* SAF-1-safe Only used in asm code and below */
 
 /* Used by the BSP/AP paths to find the higher half stack mapping to use. */
 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 };
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Mon Oct 23 09:56:59 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 09:56:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621177.967368 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qurg7-0007nW-IC; Mon, 23 Oct 2023 09:56:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621177.967368; Mon, 23 Oct 2023 09:56: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 1qurg7-0007nP-FJ; Mon, 23 Oct 2023 09:56:55 +0000
Received: by outflank-mailman (input) for mailman id 621177;
 Mon, 23 Oct 2023 09:56: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=gXaf=GF=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qurg6-0007mv-BX
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 09:56:54 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 7de61aca-718a-11ee-98d5-6d05b1d4d9a1;
 Mon, 23 Oct 2023 11:56:52 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id 006E64EE0744;
 Mon, 23 Oct 2023 11:56: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: 7de61aca-718a-11ee-98d5-6d05b1d4d9a1
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>,
	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>
Subject: [XEN PATCH][for-4.19 v4 1/8] xen: modify or add declarations for variables where needed
Date: Mon, 23 Oct 2023 11:56:38 +0200
Message-Id: <1da22c0b7c32f62f200383af8607caaf1a02ba0d.1698053876.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1698053876.git.nicola.vetrini@bugseng.com>
References: <cover.1698053876.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Some variables with external linkage used in C code do not have
a visible declaration where they are defined. Other variables
can become static, thereby eliminating the need for a declaration.
Doing so also resolves violations of MISRA C:2012 Rule 8.4.

Fix typo s/mcinfo_dumpped/mcinfo_dumped/ while making
the variable static.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
---
Changes in v2:
- make xenpf_lock static on ARM
Changes in v3:
- moved back code from symbols.h to symbols.c
- dropped two declarations, now deviated
Changes in v4:
- revise commit message
---
 xen/arch/arm/include/asm/setup.h  | 3 +++
 xen/arch/arm/include/asm/smp.h    | 3 +++
 xen/arch/arm/platform_hypercall.c | 2 +-
 xen/arch/x86/cpu/mcheck/mce.c     | 7 ++++---
 xen/arch/x86/irq.c                | 2 +-
 xen/include/xen/symbols.h         | 1 +
 6 files changed, 13 insertions(+), 5 deletions(-)

diff --git a/xen/arch/arm/include/asm/setup.h b/xen/arch/arm/include/asm/setup.h
index 98af6f55f5a0..2a2d6114f2eb 100644
--- a/xen/arch/arm/include/asm/setup.h
+++ b/xen/arch/arm/include/asm/setup.h
@@ -184,9 +184,12 @@ int map_range_to_domain(const struct dt_device_node *dev,
 extern lpae_t boot_pgtable[XEN_PT_LPAE_ENTRIES];

 #ifdef CONFIG_ARM_64
+extern lpae_t boot_first[XEN_PT_LPAE_ENTRIES];
 extern lpae_t boot_first_id[XEN_PT_LPAE_ENTRIES];
 #endif
+extern lpae_t boot_second[XEN_PT_LPAE_ENTRIES];
 extern lpae_t boot_second_id[XEN_PT_LPAE_ENTRIES];
+extern lpae_t boot_third[XEN_PT_LPAE_ENTRIES * XEN_NR_ENTRIES(2)];
 extern lpae_t boot_third_id[XEN_PT_LPAE_ENTRIES];

 /* Find where Xen will be residing at runtime and return a PT entry */
diff --git a/xen/arch/arm/include/asm/smp.h b/xen/arch/arm/include/asm/smp.h
index 4fabdf5310d8..28bf24a01d95 100644
--- a/xen/arch/arm/include/asm/smp.h
+++ b/xen/arch/arm/include/asm/smp.h
@@ -6,6 +6,9 @@
 #include <asm/current.h>
 #endif

+extern struct init_info init_data;
+extern unsigned long smp_up_cpu;
+
 DECLARE_PER_CPU(cpumask_var_t, cpu_sibling_mask);
 DECLARE_PER_CPU(cpumask_var_t, cpu_core_mask);

diff --git a/xen/arch/arm/platform_hypercall.c b/xen/arch/arm/platform_hypercall.c
index 743687a30390..fde4bc3e5809 100644
--- a/xen/arch/arm/platform_hypercall.c
+++ b/xen/arch/arm/platform_hypercall.c
@@ -17,7 +17,7 @@
 #include <asm/current.h>
 #include <asm/event.h>

-DEFINE_SPINLOCK(xenpf_lock);
+static DEFINE_SPINLOCK(xenpf_lock);

 long do_platform_op(XEN_GUEST_HANDLE_PARAM(xen_platform_op_t) u_xenpf_op)
 {
diff --git a/xen/arch/x86/cpu/mcheck/mce.c b/xen/arch/x86/cpu/mcheck/mce.c
index 6141b7eb9cf1..779a458cd88f 100644
--- a/xen/arch/x86/cpu/mcheck/mce.c
+++ b/xen/arch/x86/cpu/mcheck/mce.c
@@ -1682,13 +1682,14 @@ long do_mca(XEN_GUEST_HANDLE_PARAM(xen_mc_t) u_xen_mc)
     return ret;
 }

-int mcinfo_dumpped;
+static int mcinfo_dumped;
+
 static int cf_check x86_mcinfo_dump_panic(mctelem_cookie_t mctc)
 {
     struct mc_info *mcip = mctelem_dataptr(mctc);

     x86_mcinfo_dump(mcip);
-    mcinfo_dumpped++;
+    mcinfo_dumped++;

     return 0;
 }
@@ -1702,7 +1703,7 @@ static void mc_panic_dump(void)
     for_each_online_cpu(cpu)
         mctelem_process_deferred(cpu, x86_mcinfo_dump_panic,
                                  mctelem_has_deferred_lmce(cpu));
-    dprintk(XENLOG_ERR, "End dump mc_info, %x mcinfo dumped\n", mcinfo_dumpped);
+    dprintk(XENLOG_ERR, "End dump mc_info, %x mcinfo dumped\n", mcinfo_dumped);
 }

 void mc_panic(const char *s)
diff --git a/xen/arch/x86/irq.c b/xen/arch/x86/irq.c
index 6abfd8162120..604dba94b052 100644
--- a/xen/arch/x86/irq.c
+++ b/xen/arch/x86/irq.c
@@ -43,7 +43,7 @@ int __read_mostly opt_irq_vector_map = OPT_IRQ_VECTOR_MAP_DEFAULT;
 static unsigned char __read_mostly irq_max_guests;
 integer_param("irq-max-guests", irq_max_guests);

-vmask_t global_used_vector_map;
+static vmask_t global_used_vector_map;

 struct irq_desc __read_mostly *irq_desc = NULL;

diff --git a/xen/include/xen/symbols.h b/xen/include/xen/symbols.h
index 20bbb28ef226..1b2863663aa0 100644
--- a/xen/include/xen/symbols.h
+++ b/xen/include/xen/symbols.h
@@ -33,4 +33,5 @@ struct symbol_offset {
     uint32_t stream; /* .. in the compressed stream.*/
     uint32_t addr;   /* .. and in the fixed size address array. */
 };
+
 #endif /*_XEN_SYMBOLS_H*/
--
2.34.1


From xen-devel-bounces@lists.xenproject.org Mon Oct 23 09:56:59 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 09:56:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621182.967405 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qurgB-0008Vz-5H; Mon, 23 Oct 2023 09:56:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621182.967405; Mon, 23 Oct 2023 09:56: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 1qurgA-0008U7-Pn; Mon, 23 Oct 2023 09:56:58 +0000
Received: by outflank-mailman (input) for mailman id 621182;
 Mon, 23 Oct 2023 09:56: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=gXaf=GF=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qurg9-0007mu-JH
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 09:56:57 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 7fb5ce4f-718a-11ee-9b0e-b553b5be7939;
 Mon, 23 Oct 2023 11:56:55 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id E93B04EE0748;
 Mon, 23 Oct 2023 11:56: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: 7fb5ce4f-718a-11ee-9b0e-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>,
	Tamas K Lengyel <tamas@tklengyel.com>,
	Alexandru Isaila <aisaila@bitdefender.com>,
	Petre Pircalabu <ppircalabu@bitdefender.com>,
	Wei Liu <wl@xen.org>
Subject: [XEN PATCH][for-4.19 v4 5/8] x86/vm_event: add missing include for hvm_vm_event_do_resume
Date: Mon, 23 Oct 2023 11:56:42 +0200
Message-Id: <02ce024fc553e324a89971358c1bc54b85e7e9c5.1698053876.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1698053876.git.nicola.vetrini@bugseng.com>
References: <cover.1698053876.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The missing header makes the declaration visible when the function
is defined, thereby fixing a violation of MISRA C:2012 Rule 8.4.

Fixes: 1366a0e76db6 ("x86/vm_event: add hvm/vm_event.{h,c}")
Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
Acked-by: Tamas K Lengyel <tamas@tklengyel.com>
---
 xen/arch/x86/hvm/vm_event.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/xen/arch/x86/hvm/vm_event.c b/xen/arch/x86/hvm/vm_event.c
index 3b064bcfade5..c1af230e7aed 100644
--- a/xen/arch/x86/hvm/vm_event.c
+++ b/xen/arch/x86/hvm/vm_event.c
@@ -24,6 +24,7 @@
 #include <xen/vm_event.h>
 #include <asm/hvm/emulate.h>
 #include <asm/hvm/support.h>
+#include <asm/hvm/vm_event.h>
 #include <asm/vm_event.h>
 
 static void hvm_vm_event_set_registers(const struct vcpu *v)
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Mon Oct 23 09:57:00 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 09:57:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621183.967423 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qurgC-0000ik-Nh; Mon, 23 Oct 2023 09:57:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621183.967423; Mon, 23 Oct 2023 09: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 1qurgC-0000gy-HB; Mon, 23 Oct 2023 09:57:00 +0000
Received: by outflank-mailman (input) for mailman id 621183;
 Mon, 23 Oct 2023 09:56: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=gXaf=GF=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qurgA-0007mu-JM
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 09:56:58 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 8034f913-718a-11ee-9b0e-b553b5be7939;
 Mon, 23 Oct 2023 11:56:56 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id D065E4EE0749;
 Mon, 23 Oct 2023 11:56: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: 8034f913-718a-11ee-9b0e-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>
Subject: [XEN PATCH][for-4.19 v4 6/8] xen/console: remove stub definition in consoled.h
Date: Mon, 23 Oct 2023 11:56:43 +0200
Message-Id: <98443e951c5c51fc0dbedf1e530d1c27e564e19e.1698053876.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1698053876.git.nicola.vetrini@bugseng.com>
References: <cover.1698053876.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The stub  definition of 'consoled_guest_tx' can be removed, since its
its single caller uses the implementation built with PV_SHIM enabled.

Fixes: 5ef49f185c2d ("x86/pv-shim: shadow PV console's page for L2 DomU")
Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
---
 xen/include/xen/consoled.h | 7 -------
 1 file changed, 7 deletions(-)

diff --git a/xen/include/xen/consoled.h b/xen/include/xen/consoled.h
index fd5d220a8aca..2b30516b3a0a 100644
--- a/xen/include/xen/consoled.h
+++ b/xen/include/xen/consoled.h
@@ -3,18 +3,11 @@
 
 #include <public/io/console.h>
 
-#ifdef CONFIG_PV_SHIM
-
 void consoled_set_ring_addr(struct xencons_interface *ring);
 struct xencons_interface *consoled_get_ring_addr(void);
 size_t consoled_guest_rx(void);
 size_t consoled_guest_tx(char c);
 
-#else
-
-size_t consoled_guest_tx(char c) { return 0; }
-
-#endif /* !CONFIG_PV_SHIM */
 #endif /* __XEN_CONSOLED_H__ */
 /*
  * Local variables:
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Mon Oct 23 09:57:01 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 09:57:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621184.967433 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qurgD-0000uO-EN; Mon, 23 Oct 2023 09:57:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621184.967433; Mon, 23 Oct 2023 09:57: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 1qurgD-0000su-6T; Mon, 23 Oct 2023 09:57:01 +0000
Received: by outflank-mailman (input) for mailman id 621184;
 Mon, 23 Oct 2023 09:56: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=gXaf=GF=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qurgB-0007mv-52
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 09:56:59 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 8154b5fc-718a-11ee-98d5-6d05b1d4d9a1;
 Mon, 23 Oct 2023 11:56:58 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id A2AA54EE0744;
 Mon, 23 Oct 2023 11:56: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: 8154b5fc-718a-11ee-98d5-6d05b1d4d9a1
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>
Subject: [XEN PATCH][for-4.19 v4 8/8] docs/misra: exclude three more files
Date: Mon, 23 Oct 2023 11:56:45 +0200
Message-Id: <741b3eee4c25296bc114cfcc0f38d7e7c2bef667.1698053876.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1698053876.git.nicola.vetrini@bugseng.com>
References: <cover.1698053876.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

These files should not conform to MISRA guidelines at the moment,
therefore they are added to the exclusion list.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
---
These exclusions are automatically picked up by ECLAIR's automation
to hide reports originating from these files.

Changes in v4:
- Fixed typo
---
 docs/misra/exclude-list.json | 12 ++++++++++++
 1 file changed, 12 insertions(+)

diff --git a/docs/misra/exclude-list.json b/docs/misra/exclude-list.json
index 575ed22a7f67..b858a0baa106 100644
--- a/docs/misra/exclude-list.json
+++ b/docs/misra/exclude-list.json
@@ -145,6 +145,10 @@
             "rel_path": "common/zstd/*",
             "comment": "Imported from Linux, ignore for now"
         },
+        {
+            "rel_path": "common/symbols-dummy.c",
+            "comment": "The resulting code is not included in the final Xen binary, ignore for now"
+        },
         {
             "rel_path": "crypto/*",
             "comment": "Origin is external and documented in crypto/README.source"
@@ -189,6 +193,14 @@
             "rel_path": "include/acpi/acpixf.h",
             "comment": "Imported from Linux, ignore for now"
         },
+        {
+          "rel_path": "include/acpi/acexcep.h",
+          "comment": "Imported from Linux, ignore for now"
+        },
+        {
+          "rel_path": "include/acpi/acglobal.h",
+          "comment": "Imported from Linux, ignore for now"
+        },
         {
             "rel_path": "include/xen/acpi.h",
             "comment": "Imported from Linux, ignore for now"
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Mon Oct 23 09:57:01 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 09:57:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621185.967437 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qurgD-000131-Sx; Mon, 23 Oct 2023 09:57:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621185.967437; Mon, 23 Oct 2023 09:57: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 1qurgD-0000zJ-L8; Mon, 23 Oct 2023 09:57:01 +0000
Received: by outflank-mailman (input) for mailman id 621185;
 Mon, 23 Oct 2023 09: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=gXaf=GF=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qurgB-0007mu-JP
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 09:56:59 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 80c89818-718a-11ee-9b0e-b553b5be7939;
 Mon, 23 Oct 2023 11:56:57 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id AB3D84EE074B;
 Mon, 23 Oct 2023 11:56: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: 80c89818-718a-11ee-9b0e-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>,
	Tamas K Lengyel <tamas@tklengyel.com>,
	Alexandru Isaila <aisaila@bitdefender.com>,
	Petre Pircalabu <ppircalabu@bitdefender.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Wei Liu <wl@xen.org>
Subject: [XEN PATCH][for-4.19 v4 7/8] x86/mem_access: make function static
Date: Mon, 23 Oct 2023 11:56:44 +0200
Message-Id: <dedbd3bfc9338770f809da3b7d06275d89917be1.1698053876.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1698053876.git.nicola.vetrini@bugseng.com>
References: <cover.1698053876.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The function is used only within this file, and therefore can be static.

No functional change.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
Acked-by: Tamas K Lengyel <tamas@tklengyel.com>
---
Changes in v3:
- style fix
---
 xen/arch/x86/mm/mem_access.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/xen/arch/x86/mm/mem_access.c b/xen/arch/x86/mm/mem_access.c
index c472fa1ee58b..d3dd5ab5ef8b 100644
--- a/xen/arch/x86/mm/mem_access.c
+++ b/xen/arch/x86/mm/mem_access.c
@@ -249,9 +249,9 @@ bool p2m_mem_access_check(paddr_t gpa, unsigned long gla,
     return (p2ma != p2m_access_n2rwx);
 }
 
-int p2m_set_altp2m_mem_access(struct domain *d, struct p2m_domain *hp2m,
-                              struct p2m_domain *ap2m, p2m_access_t a,
-                              gfn_t gfn)
+static int p2m_set_altp2m_mem_access(struct domain *d, struct p2m_domain *hp2m,
+                                     struct p2m_domain *ap2m, p2m_access_t a,
+                                     gfn_t gfn)
 {
     mfn_t mfn;
     p2m_type_t t;
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Mon Oct 23 09:57:02 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 09:57:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621186.967446 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qurgE-0001F9-Jw; Mon, 23 Oct 2023 09:57:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621186.967446; Mon, 23 Oct 2023 09:57: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 1qurgE-0001An-5k; Mon, 23 Oct 2023 09:57:02 +0000
Received: by outflank-mailman (input) for mailman id 621186;
 Mon, 23 Oct 2023 09:57: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=LY3q=GF=cloud.com=anthony.perard@srs-se1.protection.inumbo.net>)
 id 1qurgC-0007mu-UF
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 09:57:00 +0000
Received: from mail-ej1-x634.google.com (mail-ej1-x634.google.com
 [2a00:1450:4864:20::634])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 81bb948d-718a-11ee-9b0e-b553b5be7939;
 Mon, 23 Oct 2023 11:56:59 +0200 (CEST)
Received: by mail-ej1-x634.google.com with SMTP id
 a640c23a62f3a-9bdf5829000so455995366b.0
 for <xen-devel@lists.xenproject.org>; Mon, 23 Oct 2023 02:56:59 -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
 n13-20020a17090673cd00b009b65a834dd6sm6423469ejl.215.2023.10.23.02.56.58
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 23 Oct 2023 02:56: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: 81bb948d-718a-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1698055019; x=1698659819; 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=D4gHySb9jPP+co9WEm3UiFfVCY+EKkhi2jRn1gUWXeE=;
        b=nsvC+ttCAEzNSSkhljQW0Lphd1/n1WVoR7GIyvGVqU0F5ltWs7TbY+3Pe8ML4KFZeD
         IVUPWq8hwIB8qoAtRZZH0sH3Gh5t3mju3BuB1j80TkkGTabhielPnFqBV3zf1y0kBtf9
         eKa1iEHemEJaWN/IkSIt0NhnYWEeB8dd7nKSU=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698055019; x=1698659819;
        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=D4gHySb9jPP+co9WEm3UiFfVCY+EKkhi2jRn1gUWXeE=;
        b=T9X7wok9KBvUS2nJB1+1qwuvDQHGmJqAovTGYhP6QZenY0/X1EAq+5DQXd6R173JqN
         ewlcalmdRkBV9EvmfKD+t4R8kulh/3ItMvIeIGAPBV2UgjMPAHXZWlP55f45bLZ8YOE2
         oR5rEm8POv4SnYoQjPN8sP/cgvNBUgBYS9fkV3Nt8sGaghU1ocR93Z5bLjWmvY7iOoff
         ZL2iqgeTU3TJ/n8EnflG3PdfC2z8Sh90nmxOXSJuUoA6Tr4KdaAkFDeTwkdzDckB+YBK
         CJPxXTQgn62MulUUrw31jkXXVDFb92DiKjcGHIyo+jPk2zJT6X2/opNzg9u/nPNe1WLY
         Zhnw==
X-Gm-Message-State: AOJu0YwJrO/meLN5/H6/6SBlgRqkLPLOy06IC4+q61HdHU38u0net9ZZ
	ybK/TcAE1wwBotwUoOCyFFXpJA==
X-Google-Smtp-Source: AGHT+IGnz74fhN9pLXuQ8aks3noDzq+0ViNTdTaK9nOmAQhU7Sk3+NlRU/qNsH9s0b5+24/r9eiZGQ==
X-Received: by 2002:a17:906:c141:b0:9c5:7f8b:bafc with SMTP id dp1-20020a170906c14100b009c57f8bbafcmr6467876ejc.22.1698055018859;
        Mon, 23 Oct 2023 02:56:58 -0700 (PDT)
Date: Mon, 23 Oct 2023 10:56:57 +0100
From: Anthony PERARD <anthony.perard@citrix.com>
To: Luca Fancellu <Luca.Fancellu@arm.com>
Cc: Xen-devel <xen-devel@lists.xenproject.org>,
	Peter Hoyes <Peter.Hoyes@arm.com>
Subject: Re: [PATCH] tools/xendomains: Only save/restore/migrate if supported
 by xenlight
Message-ID: <e0cd4d8a-8847-4778-b295-7b2901bdca12@perard>
References: <20230322135800.3869458-1-peter.hoyes@arm.com>
 <6F0D3115-C030-423E-ADBB-ADBB104E7BA3@arm.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <6F0D3115-C030-423E-ADBB-ADBB104E7BA3@arm.com>

On Thu, Oct 19, 2023 at 12:50:52PM +0000, Luca Fancellu wrote:
> 
> 
> > On 22 Mar 2023, at 13:58, Peter Hoyes <Peter.Hoyes@arm.com> wrote:
> > 
> > From: Peter Hoyes <Peter.Hoyes@arm.com>
> > 
> > Saving, restoring and migrating domains are not currently supported on
> > arm and arm64 platforms, so xendomains prints the warning:
> > 
> >  An error occurred while saving domain:
> >  command not implemented
> > 
> > when attempting to run `xendomains stop`. It otherwise continues to shut
> > down the domains cleanly, with the unsupported steps skipped.
> > 
> > Use `xl help` to detect whether save/restore/migrate is supported by the
> > platform. If not, do not attempt to run the corresponding command.
> > 
> > Signed-off-by: Peter Hoyes <Peter.Hoyes@arm.com>
> > ---
> 
> Hi Anthony,
> 
> Regarding this patch, is there any update?
> 
> I’m asking just because here https://patchwork.kernel.org/project/xen-devel/patch/20230322135800.3869458-1-peter.hoyes@arm.com/ it seems you were volunteering to fix that in another way.

I did, https://patchwork.kernel.org/project/xen-devel/patch/20230519162454.50337-1-anthony.perard@citrix.com/
But looks like I need to update the patch.

I think it's a bit late for 3.18, but I should be able to update the
patch for next release.

Cheers,

-- 
Anthony PERARD


From xen-devel-bounces@lists.xenproject.org Mon Oct 23 10:05:28 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 10:05:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621214.967474 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quroI-0006A6-OT; Mon, 23 Oct 2023 10:05:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621214.967474; Mon, 23 Oct 2023 10: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 1quroI-00069k-L1; Mon, 23 Oct 2023 10:05:22 +0000
Received: by outflank-mailman (input) for mailman id 621214;
 Mon, 23 Oct 2023 10: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=JdWI=GF=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1quroH-00064O-5x
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 10:05:21 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 (mail-am6eur05on20607.outbound.protection.outlook.com
 [2a01:111:f400:7e1b::607])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id a8b2ee42-718b-11ee-9b0e-b553b5be7939;
 Mon, 23 Oct 2023 12:05:14 +0200 (CEST)
Received: from DB9PR01CA0018.eurprd01.prod.exchangelabs.com
 (2603:10a6:10:1d8::23) 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.6907.33; Mon, 23 Oct
 2023 10:05:12 +0000
Received: from DU6PEPF0000B620.eurprd02.prod.outlook.com
 (2603:10a6:10:1d8:cafe::ec) by DB9PR01CA0018.outlook.office365.com
 (2603:10a6:10:1d8::23) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.33 via Frontend
 Transport; Mon, 23 Oct 2023 10:05:11 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DU6PEPF0000B620.mail.protection.outlook.com (10.167.8.136) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6933.15 via Frontend Transport; Mon, 23 Oct 2023 10:05:11 +0000
Received: ("Tessian outbound 470906b1fe6c:v215");
 Mon, 23 Oct 2023 10:05:11 +0000
Received: from e0491b2fa382.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 B3F681EE-1CD1-42B2-863E-4F1538CAEC43.1; 
 Mon, 23 Oct 2023 10:05:05 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id e0491b2fa382.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Mon, 23 Oct 2023 10:05:05 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by DB9PR08MB6668.eurprd08.prod.outlook.com (2603:10a6:10:2a9::10)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.33; Mon, 23 Oct
 2023 10:05:03 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::ae6e:f96c:f2f3:efc9]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::ae6e:f96c:f2f3:efc9%4]) with mapi id 15.20.6907.030; Mon, 23 Oct 2023
 10: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>
X-Inumbo-ID: a8b2ee42-718b-11ee-9b0e-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=HRJZGlmODslim3JkZ8F1GneHdrbVDxNJ3q9KxDTK+Wc=;
 b=cHhRve41HdF80J0azdbABTwK97EHEF466tW0V0ESw6qE/CbkLOA+9gaXhE2p2kT6U/cPAGEQZp9pXexql5Q7CkOengf0cWReWHGeTKDD8LL+3H0cESwIRxIpKcfo4iYw7tpgb3nshQLRsltUGhbiPiA6hueDk68+fF2nU9TYPOI=
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: d23b4b01d6c424f4
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Bj5F/pQshZHl49/Z2W0n5MsgVr5B1RHBx6m1e0YTkh4k+WPWCsIiPpuD+IGOPmPlLK9KzvHlpzTw+YfqKLBgDMACtJ3LsuXU88DRJqtVKm5Qtfmk5kMdo7wsDtz1PEl3IL+yfXZamhnGgiEcqFhpK/ChInEaZ/jNpeLApv7UTERKHHR6TF6O4DeP5Px/6yinCKoy+iY913f69puureXk1JziiYFYyHmieTd+2g6w8HiA5nk4JjMX8ePH3iSIySHJNeFPtuHkJ8jUnV9wMOjqTnjuR4dXzlxALqruxfwWZvnCaOmuzcNfI+fIYTugwgC0tpofTKX64ZdfqkPgAaLkhA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=HRJZGlmODslim3JkZ8F1GneHdrbVDxNJ3q9KxDTK+Wc=;
 b=Lr/ND22/n9XOP6gI0/RsAh7/pbOHHuuP2JVuMk7EFpD4aD+9kKs/JKmcxPw3mKhr6I8jLETzKxF2khNMGqQlUXDz+6MOhkIcMFPkZhOKygtrFXX0zpeXTcCrhBGdCnD0co0L21r3XyZdKa8Pv6ruMLjzB+APOCqjbX7dweaCd8Bdvs54kZre7SDkiHB6anvIjFUxgKM/kulHOKr9wl75IZ91Ha6PgXUSHI7cMcB/GrPsGmM4Q29oDixdHYxl/+2LEue1riMKO8+3r3QSz2QgLr1+kv7x3V+RGdYQQqEWOk5fl3WM6NWFO5M1HGaXOIaLc08bR8WODX2NugUb17SU+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=HRJZGlmODslim3JkZ8F1GneHdrbVDxNJ3q9KxDTK+Wc=;
 b=cHhRve41HdF80J0azdbABTwK97EHEF466tW0V0ESw6qE/CbkLOA+9gaXhE2p2kT6U/cPAGEQZp9pXexql5Q7CkOengf0cWReWHGeTKDD8LL+3H0cESwIRxIpKcfo4iYw7tpgb3nshQLRsltUGhbiPiA6hueDk68+fF2nU9TYPOI=
From: Henry Wang <Henry.Wang@arm.com>
To: Xen-devel <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 <community.manager@xenproject.org>
Subject: Xen 4.18 rc4
Thread-Topic: Xen 4.18 rc4
Thread-Index: AQHaBZhjhgOGkDUvoEaydBO0wndSqA==
Date: Mon, 23 Oct 2023 10:05:02 +0000
Message-ID: <1B64131E-599A-448F-B702-DFDF890F5837@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_|DB9PR08MB6668:EE_|DU6PEPF0000B620:EE_|PA4PR08MB5903:EE_
X-MS-Office365-Filtering-Correlation-Id: fb92c3e5-b229-4b3c-fd3f-08dbd3af8b92
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:
 KJHIUhDe9E8FTr8mW6Wh5bRpr55zKRhUrxirM458kN2CpBQ35NOJkd2R2fgTK8ybfXFVdH8eFpsTTtPUMJKcKmmQKalItPfU0kFv1YiDn5nU0e3B5NV4857pm0+5edozd9MwNoEHZp97SriVG8442uPrS4ImFpR6sbSkiPRVPoqcAUjwICQJMBNOQhYoqTOhRS94deEG/rGLYTQMmll1osomBO9JdLXEXctUW6eHfjcd0YGg2qu9bxYFeKBmUT/f7Ea/z6QLbyWB/7R+VIfrdn+lt+V/1ksoRNL+gWxK4JCRRbB8VI6UHOsz/9nfTrJwo9VQP+xhE4CrlIamiRGfKDub6M8WhJG0O+blRCRxacCodJZjw9tEbD7pCSoUPJEIrggxXY+A7A6AV31zYtemX+k68J5Pg3fYmDpALwRmn4oL4GvXc4DtU82DDp3/aXTkfgU78krPA7yGxhBIk0jFxEkA09qtDib9dj3pZRQ+1wdSozNSHrDQAhoIFiKtX1PrE/TEV0fVzZyFU+pYrHTts3Qu7MwLSiNpu064Rhiz943dKFQqAjazhDbBPMwLFP5fEN6XOHo1PrKqW8lPQLkRUesBHCIj+5yc3ziNKqtkCnq/b2sCySB7RKDQ5HWxCRu7
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)(346002)(136003)(230922051799003)(64100799003)(451199024)(186009)(1800799009)(4744005)(2906002)(38100700002)(91956017)(66446008)(76116006)(66556008)(316002)(66946007)(64756008)(66476007)(122000001)(110136005)(2616005)(6506007)(478600001)(71200400001)(6486002)(966005)(6512007)(83380400001)(7116003)(41300700001)(86362001)(36756003)(5660300002)(4326008)(33656002)(8936002)(8676002)(38070700009)(26005)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="us-ascii"
Content-ID: <F88DB66D808320469C3C59BD0DCDF5A3@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR08MB6668
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:
 DU6PEPF0000B620.eurprd02.prod.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	530384fa-98fa-4631-b054-08dbd3af864b
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	9e/BOJZmbIGadXuTBnYRypi10IwDBh0vqdE+AJDuB+OEiX2frAueTT9jipgRJ9K9WInGud2zMQzRiFzLQnzSu/W2lbmrcrl1h1tgstOx5Q1FLtMElj1mD39iK5sRtpPmzVw/H0v8jSJ8E1ISmdAhhNZg7rPipmUP9m1GVp+s7o/I0CwkHU5/8EaGyPkf/hRO3enTcsJzyT0DI8yQl/+fUm61nqbe77bCCd56wnquW4NWevexEUjYD8IeF4wYEO4L11gkb5hMdJ7tH9K6VjKCd9TmYGhyEY7L3b5T3ulq+zzL1d9wcQebRdyLX4WlOQEvFE/8Z69sPTOe3c6rdavCCPEL849+iTuodMXpO38NOkXg0gorVcsC+1WSdRcSGesGgDir+2CMQEM17YPdFyvZKR9gO0B/Ebmf47VxMfzIi9dmNVd2WcFja0oV7kcgphQTzTeU6pYge64MCmpKyF9JZmicqk4gRQfMNvO3wRlgL/KhNQUKc+EiGX8zzrY9tt+jiKqdSMjFoBMMhY9CzgO965mpKLv/9wbt6HizwWSufu+yZbcLnw1BDdnrSZDRFtpiKU3tzeDfLY1PNw3YrjLXwPtENOERNAUesH2OmBAek8xR6NtKCYOIfGiEW3K5ldMVH/6fpN/NdPyxDuAjVEhakunvRIMhLYIgzNcYHeUFTw3zM93kNqRSKYq1VRsLKdfP90zbiGjzV7Q51tnBY8qmEVgcYFmipOjD2cm8Yke92QA=
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)(346002)(396003)(230922051799003)(186009)(82310400011)(1800799009)(451199024)(64100799003)(46966006)(40470700004)(36840700001)(2906002)(4744005)(41300700001)(7116003)(40460700003)(450100002)(86362001)(5660300002)(36756003)(36860700001)(8676002)(8936002)(33656002)(4326008)(6506007)(478600001)(26005)(110136005)(316002)(82740400003)(81166007)(356005)(2616005)(70206006)(70586007)(83380400001)(966005)(40480700001)(6486002)(6512007)(336012)(47076005);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Oct 2023 10:05:11.6835
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: fb92c3e5-b229-4b3c-fd3f-08dbd3af8b92
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:
	DU6PEPF0000B620.eurprd02.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR08MB5903

Hi all,

Xen 4.18 rc4 is tagged. You can check that out from xen.git:

git://xenbits.xen.org/xen.git 4.18.0-rc4

For your convenience there is also a tarball at:
https://downloads.xenproject.org/release/xen/4.18.0-rc4/xen-4.18.0-rc4.tar.=
gz

And the signature is at:
https://downloads.xenproject.org/release/xen/4.18.0-rc4/xen-4.18.0-rc4.tar.=
gz.sig

Please send bug reports and test reports to xen-devel@lists.xenproject.org.
When sending bug reports, please CC relevant maintainers and me
(Henry.Wang@arm.com).

Kind regards,
Henry


From xen-devel-bounces@lists.xenproject.org Mon Oct 23 10:12:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 10:12:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621245.967493 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qurup-0001Qf-JN; Mon, 23 Oct 2023 10:12:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621245.967493; Mon, 23 Oct 2023 10:12: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 1qurup-0001QY-Gr; Mon, 23 Oct 2023 10:12:07 +0000
Received: by outflank-mailman (input) for mailman id 621245;
 Mon, 23 Oct 2023 10:12: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=7RLV=GF=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1quruo-0001QS-Eq
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 10:12:06 +0000
Received: from mail-ej1-x630.google.com (mail-ej1-x630.google.com
 [2a00:1450:4864:20::630])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 9d4a1957-718c-11ee-9b0e-b553b5be7939;
 Mon, 23 Oct 2023 12:12:04 +0200 (CEST)
Received: by mail-ej1-x630.google.com with SMTP id
 a640c23a62f3a-98377c5d53eso438453466b.0
 for <xen-devel@lists.xenproject.org>; Mon, 23 Oct 2023 03:12:04 -0700 (PDT)
Received: from [192.168.201.133] ([94.75.70.14])
 by smtp.gmail.com with ESMTPSA id
 u24-20020a170906409800b009bf94de8971sm6417974ejj.70.2023.10.23.03.12.03
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 23 Oct 2023 03:12: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: 9d4a1957-718c-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698055924; x=1698660724; 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=6xK8SDq7zaGOIGaJt/Q7MFDGfqFif+3uGMUqsQS0U7U=;
        b=GvhzNgaKK0yTwsPDfN1RFJj6bxfRJdqeu/UgXJX6Cb8hSk9CXNZE9Yn5nhkF4EVXYG
         fHcSff3ktBkw/VIC2OD0JM2jqzuUzlGHLjLeLVJl42gKnAHFRY2rgggXQOkvD96SIlPM
         JaGnC2xfbKCY0XPBVPNsOSyVVC3GJod5roIr/aZEb9lBTtnOJq5w9M9mrsV4esf/Xl8c
         jhvLA25XEcBVDhhJ7IVPaNmE6j2YRZpTlxXOoz8j0tE2XUIG0u9+7KBVD71LXDkz8pJ2
         3+vfdP3RMWYVQlwdAHPUb8sIrLiPtWAj/YgYWSuyzaafxVFNOvwgKEKOPnOrpLNBCCE3
         4m+A==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698055924; x=1698660724;
        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=6xK8SDq7zaGOIGaJt/Q7MFDGfqFif+3uGMUqsQS0U7U=;
        b=cAzqrN+Yn4GqDWqPbbE8CWWRO1mbC+tBB9Q4sKa+21EOjj+Ar7QsGIdKZq43MuYQvK
         T0ObDQ3O/gIe2Nel6SGY7qCcOA/4mvSWAb+omUcvEavOM9TqW/LsHG9RKWdisEUzPLhC
         KWMU6Apr6DYLYutAdhuWL5LoJag7K8e0rLtUqbkX1ZdufvgcWsqwi6Haz4svurfvfJQ/
         lSRdkHSvii61vvfeGkFepuNKIeAHvP6LQSez0hN7veqWXIkkXKAZmHwFHhvEZWDhbBp9
         YUQAfDjLyX7bjkg5azRn+smUxP9+x7ERAYwWcoxVazahhx8QOO0qysY/20nMyiAiqjOL
         fwQA==
X-Gm-Message-State: AOJu0YyQFOn436V6mXcUBQx53KwRdetBpVZl21k85Y/MAh1mzXz5Te1P
	oJqKbvdJPAaaGJrEnUoj6eRU/ekxNhk=
X-Google-Smtp-Source: AGHT+IFtKxUbxh2bx1PGn2I1CgNiRvmbuT7I60AeR8jPK8iavkQjMQkfbyBr04uqLgtLiTtmaGUv4g==
X-Received: by 2002:a17:907:60d4:b0:9a5:9f3c:9615 with SMTP id hv20-20020a17090760d400b009a59f3c9615mr7865072ejc.63.1698055923781;
        Mon, 23 Oct 2023 03:12:03 -0700 (PDT)
Message-ID: <17fbd1d2c9f1fb1fa5121f69c743b2cd766f7620.camel@gmail.com>
Subject: Re: [PATCH v1 04/29] xen/asm-generic: introduce stub header device.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, 23 Oct 2023 13:12:02 +0300
In-Reply-To: <a20f5783-7ee3-6ed1-d4cf-379c30c64a12@suse.com>
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
	 <3cc9ecc3abcd21c5ed7276b01bf5963e6a5fd5e0.1694702259.git.oleksii.kurochko@gmail.com>
	 <a20f5783-7ee3-6ed1-d4cf-379c30c64a12@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-10-19 at 11:14 +0200, Jan Beulich wrote:
> On 14.09.2023 16:56, Oleksii Kurochko wrote:
> > --- /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
> > +{
> > +=C2=A0=C2=A0=C2=A0 DEV_DT,
> > +=C2=A0=C2=A0=C2=A0 DEV_PCI,
> > +};
>=20
> Are both of these really generic?
>=20
> > +struct device {
> > +=C2=A0=C2=A0=C2=A0 enum device_type type;
> > +#ifdef CONFIG_HAS_DEVICE_TREE
> > +=C2=A0=C2=A0=C2=A0 struct dt_device_node *of_node; /* Used by drivers =
imported
> > from Linux */
> > +#endif
> > +};
> > +
> > +enum device_class
> > +{
> > +=C2=A0=C2=A0=C2=A0 DEVICE_SERIAL,
> > +=C2=A0=C2=A0=C2=A0 DEVICE_IOMMU,
> > +=C2=A0=C2=A0=C2=A0 DEVICE_GIC,
>=20
> This one certainly is Arm-specific.
Yes, but the definition of GIC sounds common, so I decided to leave it.
But it can be changed.

>=20
> > +=C2=A0=C2=A0=C2=A0 DEVICE_PCI_HOSTBRIDGE,
>=20
> And this one's PCI-specific.
>=20
> Overall same question as before: Are you expecting that RISC-V is
> going to
> get away without a customized header? I wouldn't think so.
At least right now, I am using the same header device.h as in ARM, and
there wasn't a need for a customized version of the header.

~ Oleksii



From xen-devel-bounces@lists.xenproject.org Mon Oct 23 10:15:39 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 10:15:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621248.967504 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quryC-0002lC-2R; Mon, 23 Oct 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 621248.967504; Mon, 23 Oct 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 1quryB-0002l5-V6; Mon, 23 Oct 2023 10:15:35 +0000
Received: by outflank-mailman (input) for mailman id 621248;
 Mon, 23 Oct 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=OVTz=GF=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1quryA-0002jc-G2
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 10:15:34 +0000
Received: from EUR01-VE1-obe.outbound.protection.outlook.com
 (mail-ve1eur01on061a.outbound.protection.outlook.com
 [2a01:111:f400:fe1f::61a])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 188636f0-718d-11ee-98d5-6d05b1d4d9a1;
 Mon, 23 Oct 2023 12:15:33 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS8PR04MB8104.eurprd04.prod.outlook.com (2603:10a6:20b:3b1::8)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.14; Mon, 23 Oct
 2023 10:15:29 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6933.011; Mon, 23 Oct 2023
 10:15: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: 188636f0-718d-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=CDZwFr0oziFv5tipW0tlHuOmS/nSf8bHcv54UEEQdflnTNfSJkqfEZmNTluexEeX9HhK9QCrh7qNdC946I+2pnLPWWak5WjhiyEBRoWzHRaGRE7BqrykvV0w6EeWLrXQnNinXm+0sP8CKbnopXUTefNXz+Qc9yrgELYJCr72Hrtkd7yv84DHwkX75d0aCbCTsuKruAfOuDGmbqt7AJsEPeYT+fxDFyyiYv2hezrsE7QLq72yDKjeYB2YQ/CVEZxfj2IDL3bcP22crMuq6zKl8nqXkCHHNAoFQcCdBGPqKVtCGcat194fLX7ERGoBRPcv3ZVMsFS8SYRnwnG7E0gm4Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=kMmEnqBJouoEbqHFYP/sBwuxGAbMQYANWOUYsV3GV5c=;
 b=VFj3H5gRD4CmPXNMWGIW4M6izgBSEb5+GM+382Z5YYilH7eV8BzGt1aQjQ3htFCawdbCBrjxevbqhxCBail0NkWJJ8os2hNBTlwI19XReDBnUVMd3yhlqX5LTYma2iA6854v7OXpxio50XMvNwkp+5TS770eM7ejxfzL+4xGv+j821D+Du3vh2Xj/e8nWgePndcJJUu/lpZd8knK60eNY0fGjqc0oV0RR39wcq8qb2k8lnJG20W8+OjJOjqK/6lIyUir7s5U+u/QgUypU9DKnMx35xY+QRqej7m7O7CwSiq0+BCxQbJiEatux3QavdYVH6NwL26dyZL9fBNH7iD3JQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=kMmEnqBJouoEbqHFYP/sBwuxGAbMQYANWOUYsV3GV5c=;
 b=4h4LMKb21mQZwyQvUvSw4uzP9ZWjzhf8z22YxLkMErs9lnC86iLqYhHl9q3EiXeM6HzvP2S8tqJ9KK1Bv/VHEHavz1kvkRHvMKkZVnzNyDQG1K59VgqgbC8kKwWWyuUTF0cUagrhOtb4t7p0N2t8tSeok7mpqRFbyAoUq2g48tfZW/6uzycKh5YZ6pExKntNqz9j4uD6undLDDM6M3Izwt6tAlI0Ndi4byPVHZ5hLMiN87XipdAQitFmKzMyNbIFN/z1XtUgd4VzauDSjlUMaQAJjv2cHScoE9HiRfewJlzFoswemF0nPFVOGJF7HIiMAdze/QjpfvVwAaxkhmngfQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <1fb48368-8993-dcda-fe22-db656489963d@suse.com>
Date: Mon, 23 Oct 2023 12:15: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 v1 02/29] xen/asm-generic: introduce stub header paging.h
Content-Language: en-US
To: 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>,
 xen-devel@lists.xenproject.org, Julien Grall <julien@xen.org>
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
 <5def596788d602b9b34302630c91644952c7115d.1694702259.git.oleksii.kurochko@gmail.com>
 <0911e74f-73e1-6053-ce1f-ecea98ea5f17@suse.com>
 <c474dde4-3175-426b-a10d-43e816f9fe27@xen.org>
 <b37269c08749424e54611595e2ab1a0f4cbb3cc8.camel@gmail.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <b37269c08749424e54611595e2ab1a0f4cbb3cc8.camel@gmail.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR4P281CA0295.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:e7::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_|AS8PR04MB8104:EE_
X-MS-Office365-Filtering-Correlation-Id: 8beec4e0-9e47-4584-02bc-08dbd3b0fb71
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	V68k1hBN+iKnc5KFnzK1NIQIK+MUbyJJqJs6FefFxVBi9MFsJKh7ch1gpXFveUqwaLd6OSnFZSAV5PxcKxrbGyKzhHRaImYPn5pWV0McA+r3GIkB9nTylAPcxpS/alOA4hkQNuriP6OROVe4CAf6385pnrwjrJ8at4ZruKALYjM07mlvKBMUq9ARrD3Lr7xfChGm94pwbbMm0xl+PnwYWi0Sa1Jiil4d8syj1j7u2VCe+UtRxu6SE7It/1Vcb+F8DuAPOxsDsdvTm06c3Q7HuquNX6X4FA/2STPhLnZEPBIoMrw+YqsHwCIM1SjhKzFA1YlnR6bAjFwTu3FAq8Qdtz+h+GQr3MTIUdufYgFHhEL9S9HOW8rl9TAA2djLCkZ3xrjaKyhGaHPSark1RApDBBshVVW/rtv1nEY6bREtXIYRrsv2SYsqC8RaskL2X2UXlC4y5oJD2O+zzQ+MoR5gSCumrE1WXzr5X7X9DyhI8JhvxC5D9Z9H5SJZnd0MuDdWaFIbBgpiL1qhkJEQVvcS7/5GIueRRF02rhCRWjzWYXBpBT8Qocyv3RV8R1T2fvtGtRggxtO61Q1znelvTmwGjya7bbvwbwau0txRPCHfCCQ4ZZkzLDIZMlUN1XaPEmE/gcRxs1GUfw9XGy5tMnBJf1eykvaMwe6DvpWNySLy0l0=
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)(230922051799003)(186009)(451199024)(64100799003)(1800799009)(26005)(31686004)(4001150100001)(38100700002)(2906002)(41300700001)(86362001)(31696002)(5660300002)(36756003)(8676002)(8936002)(4326008)(2616005)(6506007)(478600001)(54906003)(316002)(66476007)(66556008)(6916009)(66946007)(83380400001)(6486002)(6512007)(53546011)(41533002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?SXNLSHh2VWQ5TWlCYmw0T2I3cXVweG9EelVZcHNsSnVNUTAvQU9YRVRHNm9s?=
 =?utf-8?B?SUU0dEs0TE1HZ3VHb0RnTWRNTENwbVY0M3U5dUs2OHMwUk4vMVVCbXJyRWUz?=
 =?utf-8?B?M3BSMnlDQ2pOKy9EeUNROXg4QVZwWGMrL1JmQ3BoTkRNZk1hTTBwZG5OWURZ?=
 =?utf-8?B?Nzl2UkRqSkhJMXNXdzdDZzFWL3VlaUgyREJZL3lUYU1RL0hiSFZIamovcUhM?=
 =?utf-8?B?d3V3UHhwK1poZC9wN2cxTnNQUVFHUm1IZHFtZmErTVB1bU1RaC94RkNqaThh?=
 =?utf-8?B?amJSc2t0d2ZJc2xFaTVVTldwUXFUSVI4UU1KL2UwYUxuREttbXpBcDFaSVdn?=
 =?utf-8?B?YXlYQUlpekdsZVRVaStnZmlVS1d2SDlZV1V0OUdpcFFQeFlpY2paRElOQnFK?=
 =?utf-8?B?OHlxYkdNcWt4UWxZWTMzL2FDeGVoeVBza2h3RXBJOFExdHZVSEdQYjFCaXU1?=
 =?utf-8?B?YlRtaS81bDQ3NnF5SFBZZ2xmYmF1Uko1TWNWU21sbmVjSU5PWnlzSG8xTWpt?=
 =?utf-8?B?Z1dWYTdtc09PVkVGYjIyUFMwUlVuWnlEN0tVM0JOWlNOcTJIMk1kN1crNGRY?=
 =?utf-8?B?TllGWVdLU09SRlN2b0dVby90a1FVb0NaQVZGemk4ZFRQMVhwdkdEd2tpdjNB?=
 =?utf-8?B?SU1uREt1aDZncVNQdU5yTmJXTCt3RmdrdW9kbXJBbWxEWXVmMTdSRDU1TTFu?=
 =?utf-8?B?L3BFb3QrK1hhaFlXcW1BL05NWjJab3pUSlhIeU1WWU0zTFVPRmhzTEhoa2h5?=
 =?utf-8?B?NjN4ZWdOSGJFZHozbmVIekNCMXFXQWV1eTlReVdkSHdjSTlMakc2OTJ1L3hm?=
 =?utf-8?B?ZXNkdVU1QkpaT2VWeFAxU3dFNWsrSmhCZCtiQ0NGekUwY28xalNZckpQSWwy?=
 =?utf-8?B?SWt5TnlMdVVWN0ttWGxzV3Z2eGZ5bzhYc1NxbFYwb3dpWkRKT29QVEtLUnI3?=
 =?utf-8?B?M2xkeVVScURieDJreFRjeFJQeDA0WWZLZ0daSUVHRDk2NFd2ZkhpTS9NNXV4?=
 =?utf-8?B?cXBLN3Zld3JjOTJaUzFILzl6MGZEaWRlaVpkQkFMdUNBMnJGWDB0bjlUSTNZ?=
 =?utf-8?B?bEFYYXB2cCtLdk5qMWxUR1NHV0V3VlBhWVF1bGxLaWprMmxDUmZWR1ZRamRk?=
 =?utf-8?B?Vkc5bjY5T2s4RDdUZXNDR0hQWENPaDRzSEdjbjZlbUx5RzN3Nllod1VlNW45?=
 =?utf-8?B?OVNEb2VNL3pqTExmS0gwUVlMRmtOVnRTMTA1OThxM1poSEYyT2ZwVXJnRjRv?=
 =?utf-8?B?VGI4eHhDQ3lzNzBreHhvQ1hVYWNjcTk1emVXVFZkZ1BubGwwUHdsYjlRdTU0?=
 =?utf-8?B?Wlk0NUlBWnp0K3I0b3pnYkRUblhmL0V6ekhoVzRYYmZtU043M045eE84eUFL?=
 =?utf-8?B?ODZ2ZzJWRzB0WVhqRnpsV1plSmtBNWVHOHN4bVRJN3ppYW8xa051UlRKQVQy?=
 =?utf-8?B?QlEzKzlCekt6aGh2M05PbzRlVkU3VWxIY21WZm5taXJtbnV4RFhqRFdXZSsz?=
 =?utf-8?B?VW5lZHZxS24wMVlsWkpNZFQvK1dnb3ZiYi9kVlZnS3pPT3R2NmFZTmt2ZGV1?=
 =?utf-8?B?NkVPZElNTXZCby9IVW9DYjJxRVdHblpQbmlsUDFmNEVVZkVjZDJHc1lzRHc2?=
 =?utf-8?B?T01VTGwySTcvd1hMcDR6UDZSMGw5c3BOUHNOL2ZzYUI1b09LUHZYZC9meC9n?=
 =?utf-8?B?QnJ6b2lYOUNJOHdmQ1RNY3BBUVZlUmtOVkZoK2FJSlZkQy9iYmdJUE9tVEdR?=
 =?utf-8?B?akcwUzVvN2phN0FoVGx6YWlEbnVYbExFS3VlWDlHNllHYmJvMkhpdmRyZ05y?=
 =?utf-8?B?cDBBL1BvS0M2R2dxKzVkUTdmQnV4aG9RR2hodkwyOHJ3WkdTY3czVnFrSm9j?=
 =?utf-8?B?VWN3bGF1M1NVSms2VXBWUEhJQ0M2dTNGZGN3RXNuODZZbS93UUIyYm50aFdU?=
 =?utf-8?B?YVRQQVAyNDhBSHhGVTBSQzhqMkN3OHptQy9QVWY4blpXL3ZzQnN5THorLzZj?=
 =?utf-8?B?cW96a2cvNThVMDlaRVBaa3Z0RmJNZjNQZjBhQ0FIWWVzZk5KWjJYeHpkMndi?=
 =?utf-8?B?dFdIKzJDdHBGRktWQnNCbjhEY2tNOWxTU0NreVREMGtXUU9jREhSaGUvbXJv?=
 =?utf-8?Q?JdLe4QVWLlsVh65s4StLYVbM/?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 8beec4e0-9e47-4584-02bc-08dbd3b0fb71
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Oct 2023 10:15:29.0551
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: Amo087kzaMCclJpgn9BMwbeeP55NnXSu+0AZmu+7W9B4sF9juctk/ZX1jr1IUaTEWkoEpLwHPVaFBe0PVInTgA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB8104

On 23.10.2023 11:35, Oleksii wrote:
> On Thu, 2023-10-19 at 11:35 +0100, Julien Grall wrote:
>> On 19/10/2023 10:05, Jan Beulich wrote:
>>> 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>
>>>> ---
>>>>   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)
>> This is more a question for Jan, in the past I recall you asked the 
>> macor to evaluate the argument. Shouldn't we do the same here?
> Could you please share a link?
> I am not sure that I am in the context.

There's no particular link to be provided, I think. It is simply good
practice to make sure macros evaluate each of the parameters exactly
once. This is simply to avoid surprises at use sites, where function-
like macro invocations - as that terminology says - look like
function invocations, where every argument expression is also
evaluated exactly once (and in unspecified order).

Jan


From xen-devel-bounces@lists.xenproject.org Mon Oct 23 10:17:28 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 10:17:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621251.967513 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qurzu-0003zG-CK; Mon, 23 Oct 2023 10:17:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621251.967513; Mon, 23 Oct 2023 10:17: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 1qurzu-0003z9-9H; Mon, 23 Oct 2023 10:17:22 +0000
Received: by outflank-mailman (input) for mailman id 621251;
 Mon, 23 Oct 2023 10:17: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=7RLV=GF=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qurzt-0003xi-Kr
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 10:17:21 +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 592806f1-718d-11ee-9b0e-b553b5be7939;
 Mon, 23 Oct 2023 12:17:19 +0200 (CEST)
Received: by mail-lf1-x12c.google.com with SMTP id
 2adb3069b0e04-5079f3f3d7aso4847098e87.1
 for <xen-devel@lists.xenproject.org>; Mon, 23 Oct 2023 03:17:19 -0700 (PDT)
Received: from [192.168.201.133] ([94.75.70.14])
 by smtp.gmail.com with ESMTPSA id
 t22-20020a199116000000b004ff91a94156sm1661783lfd.121.2023.10.23.03.17.18
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 23 Oct 2023 03:17: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: 592806f1-718d-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698056239; x=1698661039; 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=3N+h0b2ma9kznVlCFW6Sd4rRJqY8OhwrMUGwKQZWwzQ=;
        b=E9FpKvONKacj973gbLEMiX1eXKwjDtJvu9Wch7FOxiRbwdBomw6qd9aOIyRqVI5T2S
         vD7+bhlisxMAe8TKA+e0PrG8X8VYqI05WfsbBQUrZzzq5H5ibB7n+6vTjnYWUJZHPllA
         5Yt68Rnu2NgtNWwzpuzANa0reAtY/vq6vzEzkB9a7mPmUjKkp1l5Cctn0vz0bWGr89Jk
         ED0U9V7ZFoswmcWpdZh+NSCc8gJ6JndfKo7Opjei9dDV6QVqNUpRaV6jP8XeEQtbG30H
         Xn0s9jIlqbqQFBiytK/GXh/N1jbgSjbpWa5wWyUiug5PWabIlP4XX9P2lW4Hy4d6tim/
         KEzQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698056239; x=1698661039;
        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=3N+h0b2ma9kznVlCFW6Sd4rRJqY8OhwrMUGwKQZWwzQ=;
        b=GeE1nLCrmTCabvLN22gmgePEqomwuZifAAU5J+msLRPgqBrRGJA7z3fNX23XZE5ECP
         l683SRKw+C+KGKfgWYjU5GNLnDfnp58zvqvF+PSJPFtS4EPpwkb1DimYcOhjx/LYptMH
         wW1QnmZdstRClFzBGcnjYUTjVIRJ/gNxU4LxaGCVwY5sDvLeKp93YbUidOr/Pnacta5E
         eULSBJP8+LrHpMZcB5HeRyg/V+g5HLKCkmcJJPR3t3pijPbotpl/0Arq7Dtd+AowdPoq
         oGIcFH6IV7nRETZvw+3o3jUJHR+9e/J2u2YOFVHS/YbkXPbFd9zTklmoETJxZ4Zr2PqU
         anyA==
X-Gm-Message-State: AOJu0Yy6ROlco08ZbSnKJHpk6Cud1lCCmAdplQSyWXC9jI5mm3niYC0p
	Lfp2NlspPBX4RkvSaQSZzmChVYevIuU=
X-Google-Smtp-Source: AGHT+IGQr72TOl1hqP536vpy8yg9fknSTpYvg1E87wwDGfYVKcOVJWHolxhIVofyo96Muztkzdz4pw==
X-Received: by 2002:ac2:597a:0:b0:507:9623:8ae8 with SMTP id h26-20020ac2597a000000b0050796238ae8mr6120539lfp.29.1698056239076;
        Mon, 23 Oct 2023 03:17:19 -0700 (PDT)
Message-ID: <d7e862261c5a45902ba95eaff31d813d97f3c62e.camel@gmail.com>
Subject: Re: [PATCH v1 04/29] xen/asm-generic: introduce stub header device.h
From: Oleksii <oleksii.kurochko@gmail.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>, xen-devel@lists.xenproject.org
Date: Mon, 23 Oct 2023 13:17:18 +0300
In-Reply-To: <97eaa9e6-bc4b-4128-9563-cf3647a794c7@xen.org>
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
	 <3cc9ecc3abcd21c5ed7276b01bf5963e6a5fd5e0.1694702259.git.oleksii.kurochko@gmail.com>
	 <a20f5783-7ee3-6ed1-d4cf-379c30c64a12@suse.com>
	 <9ee7b3c9-de71-4790-815c-8b2859a85465@xen.org>
	 <17d9102a-da9d-d41b-6362-1ccfe21b7976@suse.com>
	 <5059771d-3842-4a7c-814d-69388179b246@xen.org>
	 <61c20f5d-a324-9ece-2140-4d0c775e193c@suse.com>
	 <54ac0161-7302-4190-9c6e-273caa652058@xen.org>
	 <04fe316e-bc4f-0df8-7771-5be7ca878297@suse.com>
	 <3ce85a73-96ab-41c8-8b90-f3899e771845@xen.org>
	 <63392d67-f1af-a53b-59c2-ad4752159726@suse.com>
	 <97eaa9e6-bc4b-4128-9563-cf3647a794c7@xen.org>
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-10-19 at 13:12 +0100, Julien Grall wrote:
> Hi,
>=20
> On 19/10/2023 12:41, Jan Beulich wrote:
> > On 19.10.2023 13:27, Julien Grall wrote:
> > > that doesn't involve one arch to symlink headers from another
> > > arch.
> >=20
> > Whether to use symlinks or #include "../../arch/..." or yet
> > something else is
> > a matter of mechanics.
>=20
> #include "../../arch/../" is pretty much in the same category. This
> is=20
> simply hiding the fact they could be in asm-generic.
>=20
> Anyway, I have shared my view. Let see what the others thinks.
I have the same point: if something is shared at least between two
arch, it should go to ASM-generic.

And that is the reason why I pushed device.h header to asm-generic.
It is needed to rename some stuff (e.g... GIC ) in it or add some
ifdefs.

~ Oleksii


From xen-devel-bounces@lists.xenproject.org Mon Oct 23 10:22:00 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 10:22:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621255.967524 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qus4N-0005j8-TZ; Mon, 23 Oct 2023 10:21:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621255.967524; Mon, 23 Oct 2023 10:21: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 1qus4N-0005j1-Qa; Mon, 23 Oct 2023 10:21:59 +0000
Received: by outflank-mailman (input) for mailman id 621255;
 Mon, 23 Oct 2023 10:21: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=OVTz=GF=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qus4M-0005iv-Nc
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 10:21:58 +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 fe26bdf4-718d-11ee-9b0e-b553b5be7939;
 Mon, 23 Oct 2023 12:21:56 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS8PR04MB8296.eurprd04.prod.outlook.com (2603:10a6:20b:3f2::23)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.11; Mon, 23 Oct
 2023 10:21:54 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6933.011; Mon, 23 Oct 2023
 10:21: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: fe26bdf4-718d-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Yj6zD4WLCnkD5zMKz+yXTRqlHjcbb09RsDRpxFgiaoX1YE0KMUmqamFd0xwR1hBMMMwy/uzpoAMRVfssxYpTGUSWeI32Sh7dBWXdmZ5O9u1WTJ9KyDzoL+Wi30nBaiYZqVQmmsTplGcypY+ntwBrWUzV1/U0xF0NYldF5Q+ReAECEh4DNXR0J7xAGKUAg7xh8CpmT8TovkeMtFgRmYfbE3b9VLyDSt9eK0djjxgsr8DIWT3jadWv/aoHXV5A+vdoZW5yBwjBOxGUDdL4+nt+7VgxKZPjrzqScjbLzmjqD0gxDwrp4L3MLOmJqx2nz7qL07d5UNs8CKUTNHggMvBTLg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=7zKrMsetwLuXRUDlqzkwFWJDW+Hg2UiyAYy70dYVY5Y=;
 b=LKK2Y1Ay+BFaepP6D66DSHqfAswGgaSoGRjG3NbsyUI9EJ4FSjgJeNCdmnXygbIZorKRE+7u7iTexoXTsZFWjPXLq47ERlZf9JYt/k5qlLbbVJwYVT0BL6+uRIBFGcWCmByOu42UbEXn92DB51LIjx/lXsY0TJh4giYK1ZfH+DgbBxY6ktn5iq8kvdCqPrpDfRKpFMO5zyEiMnC/ZMLDVLm/Zls9fOip/yH+0B8zDCueDlUupPTPxaCee0xzFOyzmvRTdJpBb8pNsrb+Bd3hVaYi807iQBKbFXeu6KaPZNOzYBVnv+2jl20vk6+t/527jt9yPxl4KEgKO/uca1AUZA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=7zKrMsetwLuXRUDlqzkwFWJDW+Hg2UiyAYy70dYVY5Y=;
 b=4GXQRh1WSItzFvIp7f1DFl7hev2ztBXPfQu7sSFsTjMAhllj1Eht3RiZ4K6+r9B62jYKfZ8scyh5zw5mzyL0Y9cAOtVbTA/IwJfLvLblbO+NHKzIaN+OR5Ovkz+v6Po9jnUi/fvSxRvXaDyf662u98ZQRpu4GW8SmwxxXfKhiZaQT1/sNxm7JWH5FKlQbgQiMNtt9dZUTWh4OB0Fj9i1OeqzsGcZqDJ1ZspOPF8l+wJlYKVIz/69D7bwT+Fxbb1fmrvuZ1jltdU7dOzOVovCOFVa0xswiN6SIhUvoSn7TBqflPLszJjJ8FCTT8MICLTzQGhUHx8XEFbUWyDKQupalQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <4d229be8-6daf-c27e-c9c0-01af6e4862f3@suse.com>
Date: Mon, 23 Oct 2023 12:21:52 +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][for-4.19 v4 6/8] xen/console: remove stub definition
 in consoled.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,
 andrew.cooper3@citrix.com, roger.pau@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.1698053876.git.nicola.vetrini@bugseng.com>
 <98443e951c5c51fc0dbedf1e530d1c27e564e19e.1698053876.git.nicola.vetrini@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <98443e951c5c51fc0dbedf1e530d1c27e564e19e.1698053876.git.nicola.vetrini@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0189.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:ab::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_|AS8PR04MB8296:EE_
X-MS-Office365-Filtering-Correlation-Id: bc0b648b-27e7-4203-6fa7-08dbd3b1e121
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	1RwsmoC4c9gc0OSUqL7Ge6rg18XbDGyVhZglS2umlc8TxwCll//+/x3HjTrnut4gsl7WL0VJkWB/A6Gfh0mxM2CpqAxn/+ZqJ3eW6bW8I2ijwr3SrHhqrowwmuLuIMvu8nKTBR0uix6hcKrF81MMWQJbRaAOGfPueoVocy889HvMpMypH2MwRjuhJUdK4jJZfpNd2mV1iSLMvicShpGa9ggB08bkcSa6B3mbFAFU2gHNORjnNGuosvYGhkMLf0d9PGeQoIcHKhyISA1xI2Utu/6u0p3bbp25+73E6nt83olnXG9aVFyPZj8D4ffiHXVc7XQldO0gMUr5UO2jwZfrmu4cmYt5VjKDP9CGGXzCGXIMPanDBZhjREWbriPVwTYbsWWWRX3Gs+GlfMT4YFd6SBX4TcYmWMqEBhHCpCWlsI8itXljUhG7iT8AEOhnk8xSi0UAMZV8rVZzdmWbpRZ1grEjbKgHt3Id9g4QwhH+DOnaxobpHQUidgMJupKlgOBI3Vj3MRG3/c68rxGscSxyqDD+o7Pzs3WIgZJNFxJNn+k9olAZkd8dwvQwQSa/qFoW46PXYJsUsHNX9INKRJ/Vr+cVXqmspVvME+YTZsJQnrpjWnT+6Ybme1lkO/8ekdj8fOcunCQWb6hYwGx1HoRNjA==
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)(376002)(39860400002)(366004)(396003)(230922051799003)(186009)(451199024)(64100799003)(1800799009)(4326008)(8936002)(8676002)(41300700001)(2906002)(4744005)(7416002)(5660300002)(53546011)(2616005)(26005)(36756003)(38100700002)(6512007)(6506007)(31686004)(66946007)(66556008)(54906003)(6916009)(66476007)(86362001)(31696002)(316002)(6486002)(478600001)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?VGliNzVFQXFpSGZHVVRQdjYwM0NjcTMySFc5ZzFiUk00WkxtTW15Mm5tL3pr?=
 =?utf-8?B?dHpNdlIyQVo0aVBPeG8wL2dWUmlSellXWWVDY1h3cFhoQ0crdTN3NUxZa25n?=
 =?utf-8?B?L056K3NvZEZtWG9ZbWtSTXhsQnpvM3J0WFQzb0pKdENhUkxmWnVBdktXSkV4?=
 =?utf-8?B?N1V1YjcrdzAzeGZCazk0RmVmbkhVQTI1NmF2RW9YZjF4cTAydExjZUpGSXVj?=
 =?utf-8?B?dFgvWXFMQ1ZwK3JiQUhZZEVyM2R6Yit3dkFoVWlqaktXUjVMbVRsN0tzN2RT?=
 =?utf-8?B?UEpWU24yMTdkbFYyeVVLRTZnbStKbnRuUWpGLy80YzJ0Rmo3Z0dGeDhDVS9N?=
 =?utf-8?B?MFMycTc1a2JLUkRGUG9Cb1NXUWJ4bW9JY3V0T2p6Z0tRNVNVZ3dmWWJtQWJz?=
 =?utf-8?B?Qm85bVNZbTY0Mm5pSncvZnZkNWtzRlRHRktXYVpjOXUyVG5TdHZqZHZucUFp?=
 =?utf-8?B?OWZ5WDY3M3h1a0JadllVV2c3NjVqOFl5VXRoSUZacXpTWVBiS3R3NUt6S2pl?=
 =?utf-8?B?cjQzdGpGK2ZPTEhJSjJ2aG9QV3pTMkZzZ1lsSEY2cmlSZmhFTjhHQ1JQaWU4?=
 =?utf-8?B?WU9XcUw5Q0FxRjdmaDZNYS9LUzhQNFRTWnc4VW5DUkxPMFlPaGlodHE5SXFB?=
 =?utf-8?B?bEZFOGVYT3dvdUhueE9CcHQvaDNaMzdYdUVvaEtmRThmMlllZnd0OE1tbHpq?=
 =?utf-8?B?ZWpxcjJ6SnB4d0xOL3ZCMzUrQWcreFRaYjVmV0ZBSk9vMVRxdy9oRTUwWHlC?=
 =?utf-8?B?WmJUVmpKR1dRWHMrZklHRUhReGVHSzJmUGErZzdhWCtLOUx4YlpPUU11aGpn?=
 =?utf-8?B?dHlZTVFzY3BvLzljcVgvYkcyZ2ZaM1lOWXhpSWFhcytvMHBrUGNVclU4TVh3?=
 =?utf-8?B?V2dZL0pXNmM1V05XRzROcml4UUkzSEZqQy9SVXRPVmxCYlJBcGZrSThxQ2xW?=
 =?utf-8?B?MG1Bd04xZC9haW1HU2ZQRFNxQzZxOU1CNXZFUi9aRDFxVUZkZG1Sd0ZtU2pk?=
 =?utf-8?B?UEFLNnNoYm5ldGM1SjhMVFVCK01rcGQ4ZE9oZENaQUl1TFNSbEJxTXNieGJK?=
 =?utf-8?B?YTd0Rkw0c1pmVU12MzY0bW4vUWFWSTBjKzZFVlJ4TXp1M1RmZFdoSnFocThF?=
 =?utf-8?B?MGFTZ1k2WlJhbkd5MWlSOXlDK1h2clBIRHh0RUl4TXl2QWRuZXZsbzBZNkhu?=
 =?utf-8?B?Y3RmYnhwSU5oVjl6UXJEUUhaZGhMSFBaUUpzdDVrK0pxSTV2NTQ0NkNxRkwv?=
 =?utf-8?B?czJRcnAzZlFSL0RsL1VkN1Y3SGM5ZUVsUlYyN2JhaTNpM0c4S1k2TGZ4bWFK?=
 =?utf-8?B?ajh6RmEyVlRJNVd2Qld4VkJDaXpsTCtvMEIwU2pEQ2c1Y25nUkpObnlvajZM?=
 =?utf-8?B?V2lCeFV1L3RuSXFVazdvYnE4eGwvTTJZVWQ5dWs4eTJMRDlNWnVUZ3cxY1p3?=
 =?utf-8?B?d28rVGdRY2ZZYk9jeTB0c3lkNk41dGt6S0hwZ1Z1WUwwc3dVRE1ZVXMraUxy?=
 =?utf-8?B?eGNCT3NiaGxQOUlSOTZNS3cvVFArOU1FUmRaRnpCbWJIZ0xQcVpLQkFtYTd6?=
 =?utf-8?B?dThpOGUrSE51OW5paVFrbTgxd0JPWjZrbEZ3TjlRRndDZkpodUQ5NC9iVjgz?=
 =?utf-8?B?TS8vTTNITGxVRjQwZ2xTNVRUMXVkWXFvUVRmZlB4UW1JTW16SGRSdG5FZ1Iy?=
 =?utf-8?B?dTBzV3ZjUWt1L1g2aVlJUnBXb0M3TWlObVhaWlFXamc2N0UrUFU4ZDh0U01D?=
 =?utf-8?B?eERMNGRtTzcxRGdyZXNCYmI0R2lxTGt0R2R2MlRkWTVGUzNucWdvSnhyWnov?=
 =?utf-8?B?VS9UY01mNVlxYzdWY3RlckpHSXdsWDZMMmJBY3dqK0tqUUNpOTJ5eUFUZHNv?=
 =?utf-8?B?VHNHUWZ5VzFobzdMT3ZBZEFBL1BGbFFaQjFFbzdkbFlNaGVRaVNJc1U2U2Fl?=
 =?utf-8?B?OXZ2Q0MwRGhiMmJmZjVJTElwMHB6Q01DR1E1NEhmV1RzUnU2dDlhYmxZUTAz?=
 =?utf-8?B?eU90WCtFa0FMcDN5K0lOZjd5YkRPelpLRDFtUndwOHZhcjVhS0xjejFqeVlx?=
 =?utf-8?B?aHRETE9QM1FPeVdDeEduREZWMGRmb05oTy9sVy9KM29nd1ZNOHRmNFNQbGto?=
 =?utf-8?Q?XP0L7yy1+Ya1/nxYlj64akdTJ?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: bc0b648b-27e7-4203-6fa7-08dbd3b1e121
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Oct 2023 10:21:54.3684
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: RywWSnaXKAfdC8SJxxuFjJ/KM8FV+7Fpn6iHC0l+ILNyiiaF2SOHOouJ0DAGy34IsDZyMp5+lHdjUH3iAN06mg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB8296

On 23.10.2023 11:56, Nicola Vetrini wrote:
> The stub  definition of 'consoled_guest_tx' can be removed, since its
> its single caller uses the implementation built with PV_SHIM enabled.
> 
> Fixes: 5ef49f185c2d ("x86/pv-shim: shadow PV console's page for L2 DomU")
> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>

Where did Stefano's R-b go?

Jan



From xen-devel-bounces@lists.xenproject.org Mon Oct 23 10:23:21 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 10:23:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621258.967534 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qus5c-0006LN-At; Mon, 23 Oct 2023 10:23:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621258.967534; Mon, 23 Oct 2023 10:23: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 1qus5c-0006LG-7T; Mon, 23 Oct 2023 10:23:16 +0000
Received: by outflank-mailman (input) for mailman id 621258;
 Mon, 23 Oct 2023 10:23: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=OVTz=GF=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qus5b-0006L8-5c
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 10:23:15 +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 2bb3b4b4-718e-11ee-9b0e-b553b5be7939;
 Mon, 23 Oct 2023 12:23:13 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM0PR04MB6945.eurprd04.prod.outlook.com (2603:10a6:208:17f::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.11; Mon, 23 Oct
 2023 10:23:10 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6933.011; Mon, 23 Oct 2023
 10:23: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: 2bb3b4b4-718e-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=U5qCtbAk1rUWyktE9nfZIHp5aEEJpyWwG2Rq3NSrTIszXNUtP8rr0mny7ri5JT72tjdY7rxNHr5SntzVAJcLqSFc+kgqtGG4FiAW3vwQYTaPnUl09Da77/O6frvyvItzhSFEP9ubc1x7UN/6TCLl6AeWr6fcBVc/PYSW+hIuaH2d9qt/5xvqez2dkekPudLGp7L+DAJEly/3B8QXJNj+uXubLCnt8qRS3qefmD3VpkZvaMwyXODhRMgEwZlVCZuCuwU7Py8s1D2nuyQ6JvUWxqj/0rRDugHk+Duk8faXjR5E613ULZx8+d8k7wG/55yoYJ0B31Y7R5dBubrAp7GjTg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=vq0FD3NtD7VVYQ1Yh3ihrvzQJ6QxntSQviu57XyEZwA=;
 b=MgsWbdqRR+PwJn4+KM7yoMuBQwWbtU+eAvjnudqbFoOJARKOYw4An5jMQ6HGd8hxSwAanhlg3D37EC7yVqlSHo7RB8UGXI460Eyw+5O6JCeFNifu5h0uvba0zBWM/HZ1EveN4D+L6n7Io/I6XtAUxlee4efBEjZ31rG8yvR4sOmuUAmcg7GQX+JcCWQAr3i/MtDp6pdXKmbF3kg8NmmwD0Y3g24dERKMNTdkQbNW46Y1bn1uhbJFqxJ/vNZjosKowGRcEZdR4bkLufk3UjEiZEay5b2hDr+BKpBg5fZyx9zRI9JzKcv99LDDgD+DPgv0Rn2V1cNoLQqAZkBL9QUlfA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=vq0FD3NtD7VVYQ1Yh3ihrvzQJ6QxntSQviu57XyEZwA=;
 b=fWlZ6IRBi6kl8mrYxOlcvc1N+yOnfBS9YDEn9oNNPSBW+i4lv4+TM132sAGkt0NmmaJvzGfHQccwFsUXea0ykSGeS7fRD50BMYBZSAVbwhHGffJT9LC1WrihzLHQRbD4oquJ8m+THTHHio2QleFEPkuYgiHtpctBPPJ0RrFZ/i8MuH4KfNNEBLdVM2RvKTQcaT6476rg7dv7aanJo86OYR3EuD0KARCC5F79aPCowyRmRz7d6RFDCIf9LaJAImL4dxSPozbnW4wDVNn88xo7gdXbX3NiNwr2VM/GX2LH6/UOY44rl9yW1dCiJ3WOnWu7IulccEb2t0OHSw52FOXc5w==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <29ff2917-3828-710d-01b4-67941ec16ae3@suse.com>
Date: Mon, 23 Oct 2023 12:23: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][for-4.19 v4 8/8] docs/misra: exclude three more files
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.cooper3@citrix.com, roger.pau@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.1698053876.git.nicola.vetrini@bugseng.com>
 <741b3eee4c25296bc114cfcc0f38d7e7c2bef667.1698053876.git.nicola.vetrini@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <741b3eee4c25296bc114cfcc0f38d7e7c2bef667.1698053876.git.nicola.vetrini@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0143.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:96::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_|AM0PR04MB6945:EE_
X-MS-Office365-Filtering-Correlation-Id: 2a2ef827-ace8-4dd7-242e-08dbd3b20ea8
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	XKeYE+OJaI6mmrMaz/YcYMz+oH6H39L5sbtyAkqkHdRupqvMTnopKsvAOxze6RQYv9Lf93tm7owx0kpg9n/DAznBkH16RGy2uKmgSCAsXopK+1fcW69WvbwoRzEm4i/X0x6ezmlmURqwsbyY2eVkQGlMW9FeJ6mx52waMwdhC0oAGUeAr2xCGs5E6H75Csmvo1nf6pLUlxhEPBbYN03ZgsQOhwGbzn9fgv+I+ETlgZHZOEm76IUkFiM7/+e+z5iPwxNG6rdt2bfkREl0poLBCtg7tSNhaExTpiruAJvXDNaCIZmqxg34lhZ8YCbMrjihiODOVWaz1tjLff4Z+eapGM5JJihREUgNl+psR+4FAUhQPf50jA470eK6xmf/CJdB3vyWrmVBSx3vcKNM5HHquAM4sqx54wykplK8C24uAG3vPgUa8HOHuvoOOV8B+twz5L3bHNlvs6+dftasobHjxdtuu8E2vYMMJpaapEahAMraRdXOCondu1M52Em2fD1zngW0XqhTm1Yq6fnjgd/uKE8dz2QSTUI6FR0cUr7akiS6cTcMmY0kL0H/EIuEqmnsMeEPOccnc60ZK0NGxKDCDVr1MoAhcsgMOZeEC718TJuKx0NJrhfkt1VhPqWA+NH6lY6dpOgKdSSVq65VCvcZFA==
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)(186009)(64100799003)(451199024)(31686004)(2906002)(4744005)(6916009)(5660300002)(8676002)(4326008)(36756003)(8936002)(41300700001)(7416002)(66476007)(66946007)(6486002)(316002)(478600001)(6512007)(6506007)(2616005)(53546011)(66556008)(26005)(38100700002)(86362001)(31696002)(54906003)(83380400001)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?TnUzQU5PQ2xKUTlnMmdTY0twcTZRQ0hNTDU2OEZORllOM21QTlU3MnV1Nk9S?=
 =?utf-8?B?Ykt6YWlhM2NNSkJDLzZTL0FtSityU2FEaHFVQ1dZZVY5K3VWT2NjUUtlaTM1?=
 =?utf-8?B?eVRnMXcxYVdCeGZwaHNvL3VuTnlkTFRtVlE4RWUyT2NNMEtJM1BLOTM1Zllr?=
 =?utf-8?B?WVgzWlpPcUtkajFBU0RZYm5vbmNrbDNyeks2Zm9YZXpDeEdiVWpXLzVkVzJW?=
 =?utf-8?B?NER0RXFoeXpNQTM1TCsvblhCVXBmM2lzN2hUY1ZEcGhocytRNUJTekQxTm8z?=
 =?utf-8?B?U0QvSWtCOUwwU3NXNm52OG1GNldJNjhSWkdwaWV6dUVYelB6RWJ5L2R1ejdv?=
 =?utf-8?B?MUVXNmpHSy80QmtzTVRUNFhSVWhKY2UrTGFrU3JLZ0c5ZjBLaldWcDdWb2tC?=
 =?utf-8?B?ZytySE94UFdCR1RCUXNZQUxtSFJDdEkzNDZSNUdrbnhtZmZSMjNrN01TdWF1?=
 =?utf-8?B?d0lHNCs0TnNqVnFOaWlhdmdESnpPdHNSWlF5aGthemZuczZucnVRcU1vNHBE?=
 =?utf-8?B?a0M4TmIydTVoQnV3M1hDTmU5R1Ywb2ZFcmxzRmlLT1JLVnNpVWlHUTcxMHZJ?=
 =?utf-8?B?bVFZSDIwalFja2VUTGtSTHRncTJ3dFZRYVk1VXFMUXVJU1Y2MGpzVEoyamls?=
 =?utf-8?B?Uk1CRWpzUHRKSkVNUVcvNDlrcjlNSXpMWEFnazJLSDQweVNsZUdscXFaKzM3?=
 =?utf-8?B?dlg1RE1JUC9pa0RqbThzbE0yYStiRjFhSG1YWmkrM2tqaXM0eEpCVDBRYzR2?=
 =?utf-8?B?SWJvYmFvRGg3eEFXaXdYbjJ5U0Qzc05leTcwVjM1Y0dieTVMOTVIR2haUzUx?=
 =?utf-8?B?aXhSbTYxOTJ0SHJ1Y1AxalRkYmh3NHRudHBib1V1eGdlT1pnWVhuaFp0MjRi?=
 =?utf-8?B?cHZWWlI5TDR1QkdVc28wUjF1MWg2L1BzR0R4dGpuVm8wR2NkZ2RNeXQzSUtq?=
 =?utf-8?B?YzlsRHE2cWN0bVIrZ050T1NSSUFDUzNCZVJsZ01xam54UFd1cnFlUExHaWFM?=
 =?utf-8?B?NVo2RU9vbE9SM1dlbXMzUHRYdlB1U285Yk1XUk5McmxUdFVIVlNUd1hJVlpP?=
 =?utf-8?B?bG9RcUhCcnJJZVNlK01UcDZGa090Zkh5SEtjZGRJT2lna1FIc0xpOEVNbU94?=
 =?utf-8?B?dkRjN2FXWXhSZHR6Z1FTa1RlRmtJQmFHMDcyZ1UvR2ZjUnlJY3FuSjRmdjNq?=
 =?utf-8?B?Y0gxb3pQZjRDb2FaUWZIVkwwYmVoT1lXclUwcWN6QitKME1zSE92YzV2YXA1?=
 =?utf-8?B?emdRYWs5b0lYR2ZaTlFDT240NWttNDVqbEthOEJSY1d5SGo4Ymx5V290YnhN?=
 =?utf-8?B?QVRvODRRUUUyazRLYVFWeU1tN2VOcWJIR2kvNzJHdzVTQ2llQkpXdmprc2Y0?=
 =?utf-8?B?N2lOd21YNWQycXQvK2N4SDA2d0IvWnJDaVNkRFRwMnAvQ1VRL21ZSE5iTDlk?=
 =?utf-8?B?bG8rM0dXUjlZQytqekpBcWNHcnZaTnovZHdaQWlRT2QwdFVVY2swY3hvTXMx?=
 =?utf-8?B?S3YxUzErRU9VSHY1UTNnMTNVQ0pkeE1xWEJLRUIyUWkwK3FrZnBnd2dVK1c0?=
 =?utf-8?B?YXc4am9YZTZLRU4rSTRQTGl3QVpZajgvL3RxRGVnR25OT1VWL2UveERXN0sr?=
 =?utf-8?B?SVFMMkJkZWNZK0FjcWtadkJ2OVhoNVVFNW5zMGhYRkl3YXRBeXF1Nkt4MCtJ?=
 =?utf-8?B?a0h5Y2FCOTlPbHZJVlJMSlJnRU9aYnJXSzE1NXF0QW52WXdLQVI2WUxBWXZw?=
 =?utf-8?B?dkFtU3d1Z2Rtcmd2THN4NnVpanRGdkVkOW9SZjNwdU1uZWFzMytpdHVIYWJQ?=
 =?utf-8?B?eWRXVEIzUU5qWkcyTmNzYjdKVU81bEtiZjdEYTJZREkyUzZlcXpWa29VU2I5?=
 =?utf-8?B?UlM4WHl4ekhxdU8wa2JMU3NHOFpvcmU3TTJGUU5GY05VZDBDMHM5NEpOSW1V?=
 =?utf-8?B?N0NnMCtwUnBvMXdJVStWMUFOM0t0VnBaaDZhM0NFN0c3R0VIRmJVSU9uZ2tN?=
 =?utf-8?B?Qm1VYWNvTC9yZFU4RzFUbmlpWWptaE1PTEJNSlloa1dZRUk3ODUvMXRlcU9o?=
 =?utf-8?B?WXAwOG8xeDl4NFVSZWNLcHMzOWF2L0pKU2Q3Mjk1QlV4Wm4wZVJIdXRhYkh5?=
 =?utf-8?Q?gxrpEmBu0Lax5g6rZx6xewmcc?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 2a2ef827-ace8-4dd7-242e-08dbd3b20ea8
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Oct 2023 10:23:10.7558
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: bSWRCakTEHiPiarCcIexflQY1QA2p2dyWly8aVJxaUAaKf8R5KhaOODGiVqB7RgreUSbSwgDUt00/t/1tZLPZQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR04MB6945

On 23.10.2023 11:56, Nicola Vetrini wrote:
> These files should not conform to MISRA guidelines at the moment,
> therefore they are added to the exclusion list.
> 
> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
> ---
> These exclusions are automatically picked up by ECLAIR's automation
> to hide reports originating from these files.
> 
> Changes in v4:
> - Fixed typo

While there was an adjustment here, I don't think it invalidated
Stefano's R-b?

Jan


From xen-devel-bounces@lists.xenproject.org Mon Oct 23 10:23:37 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 10:23:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621260.967544 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qus5x-0006vs-IE; Mon, 23 Oct 2023 10:23:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621260.967544; Mon, 23 Oct 2023 10:23: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 1qus5x-0006vl-Ej; Mon, 23 Oct 2023 10:23:37 +0000
Received: by outflank-mailman (input) for mailman id 621260;
 Mon, 23 Oct 2023 10:23: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=7RLV=GF=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qus5w-0006L8-Bi
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 10:23:36 +0000
Received: from mail-ej1-x634.google.com (mail-ej1-x634.google.com
 [2a00:1450:4864:20::634])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 38a67e28-718e-11ee-9b0e-b553b5be7939;
 Mon, 23 Oct 2023 12:23:34 +0200 (CEST)
Received: by mail-ej1-x634.google.com with SMTP id
 a640c23a62f3a-99c1c66876aso460383766b.2
 for <xen-devel@lists.xenproject.org>; Mon, 23 Oct 2023 03:23:34 -0700 (PDT)
Received: from [192.168.201.133] ([94.75.70.14])
 by smtp.gmail.com with ESMTPSA id
 z8-20020a170906714800b00992b510089asm6344052ejj.84.2023.10.23.03.23.33
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 23 Oct 2023 03: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: 38a67e28-718e-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698056614; x=1698661414; 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=Zg/rNZfVDSxbOS8rUS2IxgQ9c4aUlP51FTpK7+GtscM=;
        b=fhlCM1dgKhbhe+AuJK5dFZicl5JwSkjp+7uMt0MKe3tbGiGn7pmym64KMw0HKmr3kw
         MDfwmi2voXDOYjHip7HDsk+OiFAFM2w2SONPrt/K+8Mz6C8b2FoHyX/DFgs4fFgs7+R+
         AR+PdmxteafyHxAvyyRokg8oGuvFt2swUXnwjAp77HgRJl3mWVa2ven40q9f9desbeyA
         Pe1XU2CL7qLGJY5Mzs/oef87UYxQYr7DNbZoRa8N3Qk+rhgsF9M4jK2pdV+wqDj3Fm2H
         KimlYdJ3H+d7n70Nn+Q/pZ0nvUZE61y4sZBiyoJj9xhOfidz00dxa0CK33k2HdCrYUQr
         4BPA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698056614; x=1698661414;
        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=Zg/rNZfVDSxbOS8rUS2IxgQ9c4aUlP51FTpK7+GtscM=;
        b=DFEEoSkiVYvyUaw9++OouBN4InWiXbeMjXBObD8GuWVHw9Sq66ZGMJWHMt6G3AA+pt
         LKTjhBQKF/fZRPx8jGm1EZVIJ5pGJG7/ka3qZqdlbbPOOg6/9Yf2sqRv3vKQ/as+iHLz
         iGDyCP1F/fy0SQQCN+US/cA3ehjqzaG9d8wn/kyIYKcG+IWzI5oEynrvvVXKfzSqeD+n
         BQGbHw6HEzS7qIz6rtVFw68gwF2rvMgOxCt0QSR6Hcv+dTcJa64nsNtJ9J6X22CnKuTh
         ddMWcVrompBZ6JrF1pWC+C7J8Uq66ISU60fvpJIxR0IrI5ev367XUta4NsFKiRigvULu
         HSnQ==
X-Gm-Message-State: AOJu0YxctjxpSCn0I2LfM7sR+ING7IXXeDvgXNoqM81VaAyua0FLqkzZ
	gRFMfGsBq5WYbDsQPy8BV1g=
X-Google-Smtp-Source: AGHT+IH+LLwzZtLV/DK5UiJZ0CjZbO1wfhBMFSi4iNdvaioBkMMEaN/mbpHcaex2Jur70NdL0OxCug==
X-Received: by 2002:a17:906:fe4c:b0:9c6:abf9:2a1e with SMTP id wz12-20020a170906fe4c00b009c6abf92a1emr6774648ejb.31.1698056614000;
        Mon, 23 Oct 2023 03:23:34 -0700 (PDT)
Message-ID: <1b7bec33c0931401d635586e5569279435e1ccb7.camel@gmail.com>
Subject: Re: [PATCH v1 05/29] xen/asm-generic: introduce stub header event.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, 23 Oct 2023 13:23:32 +0300
In-Reply-To: <a71eb141-6ef7-f1bf-d4fc-832d710f63e4@suse.com>
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
	 <69563e3f41cb6971f93630d9df59395f159bd3c4.1694702259.git.oleksii.kurochko@gmail.com>
	 <a71eb141-6ef7-f1bf-d4fc-832d710f63e4@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-10-19 at 11:18 +0200, Jan Beulich wrote:
> On 14.09.2023 16:56, Oleksii Kurochko wrote:
> > --- /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)
> > +{
> > +}
>=20
> While this will satisfy callers from a build perspective, no port
> will be functional with an implementation like this. Yet the
> generic headers need to provide the required functionality, not
> just build stubs.
It makes sense but then we will have the similar patches when new
architecture is introduced.

>=20
> Going further in the series, I won't repeat this kind of comment.
> Unless others disagree, my view is that headers put here should
> be of use beyond initial bring-up of a new port.
>=20
Then we have two options here:
1. leave only declaration of the function.
2. remove it from asm-generic.

~ Oleksii


From xen-devel-bounces@lists.xenproject.org Mon Oct 23 10:25:12 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 10:25:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621263.967554 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qus7S-00082f-Rp; Mon, 23 Oct 2023 10:25:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621263.967554; Mon, 23 Oct 2023 10: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 1qus7S-00082Y-Oi; Mon, 23 Oct 2023 10:25:10 +0000
Received: by outflank-mailman (input) for mailman id 621263;
 Mon, 23 Oct 2023 10: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=OVTz=GF=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qus7R-0007zu-0q
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 10:25:09 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur04on0622.outbound.protection.outlook.com
 [2a01:111:f400:fe0e::622])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 6fa498ba-718e-11ee-9b0e-b553b5be7939;
 Mon, 23 Oct 2023 12:25:07 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM0PR04MB6945.eurprd04.prod.outlook.com (2603:10a6:208:17f::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.11; Mon, 23 Oct
 2023 10:25:05 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6933.011; Mon, 23 Oct 2023
 10: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: 6fa498ba-718e-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=lnbnAX69CnoVJ2zW039P7LSlt85Tb0zxNhe0YUtsTRmqqE4K2Mcuy/o3CxPxCaK0sAQzSmSzdpJeqxjGsyLXFv2FLiTsBkQdjHZq5etrow+ha8Q5EZp92BrrWoVCAzu49D7dhyO3QWW/iGE1wesj7LRSlsV4mpXcR4OTYcFQFuaSURwD4bxNa5MJiOXVYVbXcCk2frKnIemUrXxtWVDf4geW0OhOKtNu+LRMzInyaBnSXGXpnswjMw+yMGOsJtLh9FK/kKrj9se/5vQWhpQ+F4Uw6Aze6twxDMwZ7Hy20wSe6TK6Bi67VyE13wNHH2LXick0r/hmKKibVqj2XBdIYA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=H4PRHKkat7M4ioykeJINTSkaphKNDoNSvsERK/Q6BAI=;
 b=Qt0wfQkqHhLyYT2I98GUVaCaWDTTi2OZDEZrQ5EOU1PfqgrpV6jwBOXhGYh5t5QiFzSyr+EA0AdoW3VWK0MdShjVUmuT/5dPDi2EM2ZU10geDiF6/UMzM3hWo3IhNJtcShrGj9VZThF6dJJzhFvd64u9HFStEGYdBWdGlP2Oh8rB6IwXBozxAkN4EMNanWWxqQ9CtTXAJ06JfIdhn8ZcBTs1wXx06Ml1y4RiVNqT6Rh89CmzgNoUzyZhBv8LaLZO6Ls1erzE2V/JOqEMcdS5A17p5oSJT9CPlvh8tRIANHhvbrKuMWKXEuIQ+vp8StWRZjtdtu2fHQoNQdZ3Y3nyyQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=H4PRHKkat7M4ioykeJINTSkaphKNDoNSvsERK/Q6BAI=;
 b=TCJo/8U/Mg92Z1mRgt1c5cOnthlpz9Cp6twKZkzzy/o+91LrXVqhTtb49x5Bma+/LFxe7ZyCUXt6F0kBsdtnGuzHF2wYsy19Wnh5UuImZjOOtzV/1qmHqTOYcCYDBOUtlOOaVVSTkk29zqttmXU249tixIRUvukVNNG4ff++kU2hqnxh/aDuXWtzMYMyjHQvVP1EFHe06vG4QM/XojoTOHI5IY/2Ms+RnaL3AKzLb6MFlzovcsfgVkLtN/uWjLG7G4mjKdSiczbJs8essNV1gWtuIgnrvpvCbUscvuVTtgvb1pel0y97hVtK/1gP4PKK5f8Z2lkwRIwe6Ynx9CgwvA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <b6f18c91-3dd1-15a6-6460-19a317f3744a@suse.com>
Date: Mon, 23 Oct 2023 12:25: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 2/4] CHANGELOG.md: Use "xenbits.xenproject.org" in
 links
Content-Language: en-US
To: Henry Wang <Henry.Wang@arm.com>
Cc: Community Manager <community.manager@xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Julien Grall <julien@xen.org>,
 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>,
 Wei Chen <wei.chen@arm.com>, Bertrand Marquis <bertrand.marquis@arm.com>,
 xen-devel@lists.xenproject.org
References: <20231023092123.1756426-1-Henry.Wang@arm.com>
 <20231023092123.1756426-3-Henry.Wang@arm.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20231023092123.1756426-3-Henry.Wang@arm.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
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_|AM0PR04MB6945:EE_
X-MS-Office365-Filtering-Correlation-Id: fd3cc2b4-80ca-49af-e64f-08dbd3b25302
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	/xFQ6Pq3RNrOLYcFC3fx9VJWRw42JkRoFckkC29tf09hIz0vDQswamPnmut348NMWRDDjYO9+UUDM7OHS0iNymOlRikaqPDZx8PLWtctzQ3vcQz+3Je/nswAAn8AMPpmrHtX/eEYkZGnhE7d7NlOUHGBiZpQPwrU6Ba/L4vCwRcladHwuTq4JubFBoGSkFk6R779b0avulTE3jBLYMt+2vLDASNAZBBwD6zYW7PdRZUgVVf8NzmOfrKUUkFJdVwOyAhgeXJrovtn30UahmkZqELI1RGExh1WjC8e/PXrIfqX9fVkVIyDBauHTXpWiWbbHPLOuF50QzzUqtf72rUYC+SvrWQ28v3Y/eiP2o6t+dg4WqpY69yCz7UWITrI7QFxFxZ54A95rrpyVjoPPAjJuUo5UiGaUiFhn2Gny6KNYuYdM2G+/zN4dPHHYtzKsFDKV2xvhvCWYkz+yi9Jb8kte92SP+HdUY/0f2PhLdbolo+Nf/gOiQeYV8yxJnPtpbEwGEMR/vRy8ln+jEUF+McfMxJ3ccvrUcSMv6jE3GrfmNAttF363LZugyq73GVzSfA7gzi95Ik/8BStHW40LUlE9OPFL18iYK491N1CubwcKIckCk8/+zT4fdzh+/563Z7nxbZn6zky31usMpfQJOOLyWJeSt6uZbPejhlnZMdDVtPshfQIj6kA44chfK1ExM586YiLd4k9lGO/tHuH0mlLMEi6ZnfnAwR3oTsgFuBLoP0=
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)(186009)(64100799003)(451199024)(31686004)(2906002)(4744005)(6916009)(5660300002)(8676002)(4326008)(36756003)(8936002)(41300700001)(7416002)(66476007)(66946007)(6486002)(316002)(478600001)(6512007)(6506007)(2616005)(53546011)(66556008)(26005)(38100700002)(86362001)(31696002)(54906003)(59356011)(219803003)(207903002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?cDhBaXhGME9ldXp5WXh3QXFmdEpienlPbHJLRlc3ZEtya2Q3anFXNTRuTmdF?=
 =?utf-8?B?NmZYZkhTVzkvYTlZeG5jekorZi82NklPOGhYNW9MR0VFT21ZOHVKUmE0YUFW?=
 =?utf-8?B?Mk5EZ1lVaFBvYXQ1bldSZEkyZndGWEUvMitHd3pmRkRVYmRueTB1ejJGei9t?=
 =?utf-8?B?U2lJQXlUWEVNQ3RBcGdITmd5cXJ3Rnk5Q2d0UExva3RTVldvT1QzSXNLVHpZ?=
 =?utf-8?B?WnBTbkxwNWtYRlZjYm52blZJYzRxNDhwc1k4MUVsK1dkRlVlRktZdzcwZHVx?=
 =?utf-8?B?cEZnNE1OSUlVaDkxVyt3eXZ1Q2NLckpIOHl4N1hkUi94emd0WEtkUXdIUVMz?=
 =?utf-8?B?TTBzN0JnL0V2YTdvSmtpRUw5TEJNbUNtSFZ3YlZ1SE82aWlRSVZXTVNvR2oz?=
 =?utf-8?B?VUtPUktWVk5pa2RlNnhjZ0hjTHhCSkVmcnlFNUpaa2tnS3RLbUJLMnpQd0hj?=
 =?utf-8?B?NkpIb1RpSlljdjdlMjZuNVlDRGF1NXE2MjBsSzI3YkRyS3lIamRpNXN1MzNK?=
 =?utf-8?B?TEQ0YjY2ZDRNTjRqaGZOd3N4Q3hsamRxWHM3UHBoKzZweEgvR0xCL3hLcWJ2?=
 =?utf-8?B?NkFKNkJ6VkU1TVVoN2FrQm10VU4wZVVBQlVRZmsvQU55Ni9ESEF5Z0tzdmV1?=
 =?utf-8?B?Y1JFVDUrYld6K3AxZWFvV004QzY0VjJpTmZuTlhhNmFJU2tIaWxVdTZFcExI?=
 =?utf-8?B?T2NoSDkxS1p6UVppZisydkZ0MTFFcUFHcDgwUmkvWktRZzIrMGRFbWxkNTUy?=
 =?utf-8?B?a3QyVHRFNklkcjZvcXNmZVRZay9BTXc3TkZVNC9jK24wczUyRkdxNE5aUkNi?=
 =?utf-8?B?S0dZdCtuN25MczhOLzVleXBEV1o4WXF4bmpVVkJnKzI4Y1VHWnZqSm9KSFJz?=
 =?utf-8?B?ZkdiQU4vN3NkbFpYVkozM3V5Z2lNYm52VHU2SHc5TVNVVExGaDQwUkhka0hL?=
 =?utf-8?B?NGlzdDRsMGd3Vk81bzRxVnY3dHA1cUU5YXI0L2MxSGhXNlM1WmpkbnNtdVM1?=
 =?utf-8?B?Q1Z5WFQxNkdFenZwUnlwbXhyKzY0OWZXYit6cUlqTDNRK1BETkVVRmRmb2ZY?=
 =?utf-8?B?eitCNzJkakVUVFBDMU4yRWljcjhVbjQ4Mmo1S2xFNHFSNnhhcCtvVDRXWHhz?=
 =?utf-8?B?bkhxU3V5L2NQZzI4NitJUlBKYVoySk02WWowWHFZUktxVFdVVFl2Z1c3Ri9v?=
 =?utf-8?B?dTRBem9EVlAxc05GWmRGZFpPNUNPa2txOE5FVGhZNUwwUHZBWFlhZ3VCU1pB?=
 =?utf-8?B?czVDVFZOaWFnZ05aa2Z3NS95QTYvWEk1eUhGcGpVRjk2ZFh6Q2JBUUorZGRW?=
 =?utf-8?B?TldLQTN4ekxnMmpDb25wUHFFeG9nQVhWKy81bGtKWGVkRStROFUwajV2d2FO?=
 =?utf-8?B?OGtLRC8xRGRPcDcxWlNDWm5NQ0YrcGZTWVAyQnBQbU5COUVpSmNCM2JCSmFV?=
 =?utf-8?B?TDBRLytZY2pjbVlCYkl6N3V2Ty82b0dHSkVhMjJiMzBHY0hmQzM4R2Z0eDFW?=
 =?utf-8?B?dnV2R0FUOHA4ZVFrQ25ZMXkwNUxGZW9Xb3hJWEpDekZZV2JCa01qZ3FIeXpD?=
 =?utf-8?B?N1dPOURxYlBMamRBUnFUQmV1aDUrdmJJV3ArUmJzMmJPTlFsY3Rjck83dXU2?=
 =?utf-8?B?T2JIbGVDa0lPMVFzTG84WDJSVUdlZ2hrbHZxYjB1aU5YMVU2cTZGbkQrRjVF?=
 =?utf-8?B?RkJFYXFMUWFwRXpKb2R2UWxuZUhuWTRaK1U0VTlXY1FqQ1ZWSHlwNzRvR1hq?=
 =?utf-8?B?K0RvMXdGd243VGhYdzZMdlhjK2hBU29OZXE0cEp4aEVadjFkenpWVC9nVjJ4?=
 =?utf-8?B?VTZ3ZG1GdHAvanZzN21iUkxlam92RnF3UUlKYjA3b3YxekZpRURLN2RoUnJw?=
 =?utf-8?B?M2Y0VlNrYWttRkZ2djRkdDdJR2dQRkU5Slp0QjJmZEFiTzVuUWl0WHBuUDR6?=
 =?utf-8?B?K29nSWtiUEpBNU5NK1o0UEJPbVpReW1iTWVETkMwYWNwcVZJWEpCVURoaXgx?=
 =?utf-8?B?Q2ZJbFlTR3h3T0IwenBDVVBhS0RvOW5HWTA3eURDN2VPNWxBY1JoMDlicUZK?=
 =?utf-8?B?NXladU5MUDZuaXRMVGhDcE1adW14MUpiVnNwTi9iL1NEVmM5TGxydlN1SVpl?=
 =?utf-8?Q?d1gwwnwD3oAtZ9J8f6fDMgDpV?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: fd3cc2b4-80ca-49af-e64f-08dbd3b25302
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Oct 2023 10:25:05.4867
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: rpZiIdOMpbpMHFMruKkmmn4VZF6cBR+9KegGYNzHaQYNjx7LEQySu5FMZvUCQJULJ7c/5sIl/kQI0rmn+GaVxQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR04MB6945

On 23.10.2023 11:21, Henry Wang wrote:
> Compared to "xenbits.xen.org", "xenbits.xenproject.org" appeared
> later as a name, with the intention of becoming the canonical one.
> Therefore, this commit unifies all the links to use "xenproject"
> in the links.
> 
> Signed-off-by: Henry Wang <Henry.Wang@arm.com>

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




From xen-devel-bounces@lists.xenproject.org Mon Oct 23 10:28:04 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 10:28:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621268.967564 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qusAD-0000yY-8Z; Mon, 23 Oct 2023 10:28:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621268.967564; Mon, 23 Oct 2023 10:28: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 1qusAD-0000yR-5v; Mon, 23 Oct 2023 10:28:01 +0000
Received: by outflank-mailman (input) for mailman id 621268;
 Mon, 23 Oct 2023 10:28: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=LY3q=GF=cloud.com=anthony.perard@srs-se1.protection.inumbo.net>)
 id 1qusAC-0000yL-9K
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 10:28:00 +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 d59a5ed7-718e-11ee-9b0e-b553b5be7939;
 Mon, 23 Oct 2023 12:27:58 +0200 (CEST)
Received: by mail-lj1-x22d.google.com with SMTP id
 38308e7fff4ca-2c16757987fso45201501fa.3
 for <xen-devel@lists.xenproject.org>; Mon, 23 Oct 2023 03:27:58 -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
 q12-20020a05600c2e4c00b0040648217f4fsm13756857wmf.39.2023.10.23.03.27.56
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 23 Oct 2023 03:27: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: d59a5ed7-718e-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1698056877; x=1698661677; 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=UZmbjVzzMKO72cSsR0W19LdbV+l1QtuSV4JiINRSlqk=;
        b=HZoV1ujxqWVgfVVOmubuUgrP4tl4JsluXH7/lXBe1zWcHEk/yej8AHBAI277sSGyNn
         Q/bJLlgK9trkAGhGibYHIzOYh2tJtZAp1IUec072fM5tvYx0p93bh3IN4Szj1Z6kIe2X
         UjeAR0FgEiCurCxim1AMHGjBlSN/AhhReXYa8=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698056877; x=1698661677;
        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=UZmbjVzzMKO72cSsR0W19LdbV+l1QtuSV4JiINRSlqk=;
        b=Qo9P5Bf8t87hu69vhH3sLeyVKFCwBtqWpFYNZNA/WpH1672Hkvv5qfDiGw/gIJMbHm
         HCBCS2AsHCVmQewKunEW9hLD+bxtFwnonOP74k3Ghkd1ATkXoGw9jbldRbYcNnv0lBX3
         WRuIi/iFHh9DvlPCtzr9tc9e6bWgcLlaopUAviIu4vnpa6CPCEcCe2A/lS2TpyFOezQf
         NJBqYlIHuiBHCBj16isIjWog18cwJ1GCdY0yYoaPs/urnzJjX19jkdMoI5GWfLavTp5Y
         QVQNVmBVw00Mdzql7yUWuJs1Nti6DiZqLDcDjF6ZRns/KT03nmrdopUTN4hoJzgVs+h5
         12ww==
X-Gm-Message-State: AOJu0YyrNVnSmDv98HodDJYqXWlEei8+eQTU2wpIT9rZWe7m8N83uArR
	C8ApA7toxpZHzQEb04FkvEDlZg==
X-Google-Smtp-Source: AGHT+IFQwhyeTY3I891TwKcSl+0zAhh5eCJXNVLFLmbLCcEI4G26orj0GvSFswHxu1iVRbUU88aJ/w==
X-Received: by 2002:a2e:9210:0:b0:2bf:f7ea:884a with SMTP id k16-20020a2e9210000000b002bff7ea884amr6211685ljg.30.1698056877438;
        Mon, 23 Oct 2023 03:27:57 -0700 (PDT)
Date: Mon, 23 Oct 2023 11:27:56 +0100
From: Anthony PERARD <anthony.perard@citrix.com>
To: Stewart Hildebrand <stewart.hildebrand@amd.com>
Cc: xen-devel@lists.xenproject.org, Wei Liu <wl@xen.org>,
	Juergen Gross <jgross@suse.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 v3 5/5] [FUTURE] xen/arm: enable vPCI for domUs
Message-ID: <3e1d47e7-4f69-4402-9136-1dee0511915f@perard>
References: <20231009195747.889326-1-stewart.hildebrand@amd.com>
 <20231009195747.889326-6-stewart.hildebrand@amd.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <20231009195747.889326-6-stewart.hildebrand@amd.com>

On Mon, Oct 09, 2023 at 03:57:44PM -0400, Stewart Hildebrand wrote:
> Select HAS_VPCI_GUEST_SUPPORT in Kconfig for enabling vPCI in domUs.
> 
> Set the pci flags in xen_arch_domainconfig to enable vPCI if a pci device has
> been specified in the xl domain config file.
> 
> Signed-off-by: Stewart Hildebrand <stewart.hildebrand@amd.com>
> ---
> As the tag implies, this patch is not intended to be merged (yet).
> 
> Note that CONFIG_HAS_VPCI_GUEST_SUPPORT is not currently used in the upstream
> code base. It will be used by the vPCI series [1]. This patch is intended to be
> merged as part of the vPCI series. I'll coordinate with Volodymyr to include
> this in the vPCI series or resend afterwards. Meanwhile, I'll include it here
> until the Kconfig and xen_arch_domainconfig prerequisites have been committed.
> 
> v2->v3:
> * set pci flags in toolstack
> 
> v1->v2:
> * new patch
> 
> [1] https://lists.xenproject.org/archives/html/xen-devel/2023-08/msg02361.html
> ---
>  tools/libs/light/libxl_arm.c | 3 +++
>  xen/arch/arm/Kconfig         | 1 +

Can we have two different patch? One for the hypervisor, one for the
tools. Or does the both depends on each other, somehow?

Is guest creation going to fails if we set XEN_DOMCTL_CONFIG_PCI_VPCI
without HAS_VPCI_GUEST_SUPPORT ?

Is the guest is going to fail to run, or fail at creation if the
hypervisor HAS_VPCI_GUEST_SUPPORT, but we didn't set
XEN_DOMCTL_CONFIG_PCI_VPCI?

Thanks,

-- 
Anthony PERARD


From xen-devel-bounces@lists.xenproject.org Mon Oct 23 10:29:37 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 10:29:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621271.967574 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qusBg-0001xq-Lq; Mon, 23 Oct 2023 10:29:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621271.967574; Mon, 23 Oct 2023 10: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 1qusBg-0001xj-Ix; Mon, 23 Oct 2023 10:29:32 +0000
Received: by outflank-mailman (input) for mailman id 621271;
 Mon, 23 Oct 2023 10:29: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=gXaf=GF=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qusBg-0001wQ-0W
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 10:29:32 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 0d1af58e-718f-11ee-98d5-6d05b1d4d9a1;
 Mon, 23 Oct 2023 12:29:31 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id B13594EE0740;
 Mon, 23 Oct 2023 12:29: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: 0d1af58e-718f-11ee-98d5-6d05b1d4d9a1
MIME-Version: 1.0
Date: Mon, 23 Oct 2023 12:29: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.cooper3@citrix.com, roger.pau@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][for-4.19 v4 6/8] xen/console: remove stub definition
 in consoled.h
In-Reply-To: <4d229be8-6daf-c27e-c9c0-01af6e4862f3@suse.com>
References: <cover.1698053876.git.nicola.vetrini@bugseng.com>
 <98443e951c5c51fc0dbedf1e530d1c27e564e19e.1698053876.git.nicola.vetrini@bugseng.com>
 <4d229be8-6daf-c27e-c9c0-01af6e4862f3@suse.com>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <81ad44447e3313711fddb5d6833b40de@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 23/10/2023 12:21, Jan Beulich wrote:
> On 23.10.2023 11:56, Nicola Vetrini wrote:
>> The stub  definition of 'consoled_guest_tx' can be removed, since its
>> its single caller uses the implementation built with PV_SHIM enabled.
>> 
>> Fixes: 5ef49f185c2d ("x86/pv-shim: shadow PV console's page for L2 
>> DomU")
>> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
> 
> Where did Stefano's R-b go?
> 
> Jan

I didn't notice it. Nothing has changed since, so it should be included

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


From xen-devel-bounces@lists.xenproject.org Mon Oct 23 10:29:47 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 10:29:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621272.967583 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qusBu-0002M2-T5; Mon, 23 Oct 2023 10:29:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621272.967583; Mon, 23 Oct 2023 10: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 1qusBu-0002Lv-QF; Mon, 23 Oct 2023 10:29:46 +0000
Received: by outflank-mailman (input) for mailman id 621272;
 Mon, 23 Oct 2023 10:29: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=OVTz=GF=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qusBt-0002LF-TQ
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 10:29:45 +0000
Received: from EUR02-AM0-obe.outbound.protection.outlook.com
 (mail-am0eur02on20625.outbound.protection.outlook.com
 [2a01:111:f400:fe13::625])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 14aee385-718f-11ee-9b0e-b553b5be7939;
 Mon, 23 Oct 2023 12:29:43 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS8PR04MB8296.eurprd04.prod.outlook.com (2603:10a6:20b:3f2::23)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.11; Mon, 23 Oct
 2023 10:29:42 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6933.011; Mon, 23 Oct 2023
 10:29: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: 14aee385-718f-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=hNtv8xKQtCh5glHrkOOiTLFp+LCoT2aRR0OT3i38OrltWA53G/k1bOUNq+4EBVcopXxvp/BUJhpeeXG1D5/VpSR2VwhpLiMoaPTe31d2eJ8R6KY5ZaQJStQveUhbZq6mG1f6t2B3nI5cfGeCegQQb4DKmwAqSvP1qhRV6PfJEkJ0iSc6afyeLURXVdcXq6yhb7PRHZlGSTAEc40Atdpw+qFkAk7AdqtHLyN/sfUuMPFM+0aTQ5xMI/GVaW4nXHTNYviM3cXWqrUv3QeWcXZUR/Vse1N75M4iLz79Aw0wFlQogEJIUD6C2YPXJv+2tqpfg/EcuTshn6iG2zOq0KZVAg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=oNpN2Do1LmSoDh8/dS0736JwErDVTtV0NvfNFjq4qOQ=;
 b=aclIt9NT7HshJ9fqfUMThSZRcUeEXoMpvXVarUvT8Mq3YABSS+D2oZ2yKdgDX0ql082oc+/99UU+s4yhibTxBbgiQpPbGxCc95yadmui0KRY/0VuVFLW1D7yS7IFIQUcF/XAiWyPStOjzx8HmRMy+J511hbOY7X4HOEr+3dCW1QzgjE8FIWIJjhZdIeeayoqfGdEtOlh0uz3RCLQVYem+PzJlInsXaG5pLSFbWCRGGzY324Y188Hm/D/6izOiSML2MRvlAWBTuhJw0RaDEJ5WgEAi08vdIVnhlamm+elN6AmuERrC4PXiYJEKAS4kpZ0pSb0hkaHl2s+JyrMhPpb4Q==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=oNpN2Do1LmSoDh8/dS0736JwErDVTtV0NvfNFjq4qOQ=;
 b=b+VRQE1vQxBAKBYTayYKbRJ+C3juXzujald71qYVWDXbLJuSAylLUhJHbMG0NRML10jYRopQX9OhcVu4RZROZAhvTHkZksXMBo1NvlBNpGC0o+hH3kaNbWkBcuPiUlVfUCT3c84QGI9Ev3EllN/QS3R+0e0KfXbTaFIW1ojCDT/l/zwOq1b/37PJKq7eKuPI/4DPfn6dGH41EplW5u3GXM4siyRMxBZ3fDZFb2oY4vksVQiVH3LVWhLaN5umDUyBEWNyWv85OtXcBvtXhNSzeH+75hv+JPs5SqqkP8Vc3tPGrpmXd9OQTHZnpArommJNi6YXajp4fv/Sim+OXvyLFQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <450c8a4a-bbfc-bcf3-5391-14417c113278@suse.com>
Date: Mon, 23 Oct 2023 12:29: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 v1 02/29] xen/asm-generic: introduce stub header paging.h
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>,
 xen-devel@lists.xenproject.org
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
 <5def596788d602b9b34302630c91644952c7115d.1694702259.git.oleksii.kurochko@gmail.com>
 <0911e74f-73e1-6053-ce1f-ecea98ea5f17@suse.com>
 <9b446557abc4579219c0ead28263ded8136fefbc.camel@gmail.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <9b446557abc4579219c0ead28263ded8136fefbc.camel@gmail.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR5P281CA0017.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:f1::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_|AS8PR04MB8296:EE_
X-MS-Office365-Filtering-Correlation-Id: 2c200b20-7731-4a75-43da-08dbd3b2f7f3
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	jhheaCRZ1MEOnbdZSBtIhCjcIpgDMG/o7Dt3lQpakhWO7t9g4hqOY0LCWjCdeFL/bH9YKSJl3V/njUEGk1HJmvb4Hwlrb2sj6pHnVDtgB2sTls5LM3g6UM8P7pxzfv0bf7OYeOvnbYxd9vOU+szyvNQVF/2AdRL2fuG0CtuvC7LXx0UHgwKjkXY5+LGWxqDe9/I4hwMvM90USRI79QmOSIDEWLmihJ2aq1ZK0vxq1J9t/UUEC+Nko/YtabwLM34pQ8QPBXG3oClEj4HzSlZIRzbFMs8KFQ0DhuO6jMeiyNy1NA7nyLC5C7QP2TWy4Hp5T9WVe5bZHw3DGe4suq2QzDV9Q42Xi97IFQnK1Y1m1HE+gLjxJzmw7SVKC5Y6Yn4IrbD7qccHZxQVkNsW+jB2+mJW8SDtGR1yx/ViC2Vqq+uyeysLGDj2kf1ozsjIpkFbaPyy0jx3gF2M4VaZHFbsqeKbOkrhVwFBS6ggf8xUhecoWeH/TMaZn0HmEXDQVsK58TfKttaPoVQlBWEHajwMJ8zTVCqcSv6xA5BFHF8yc+ZPggovr9hohQROojEpaJrroqJ3eBU3eeT0clWkjrJ7zXyTDmmH1IESmjGdCQPBPX3gntorcGSKKvjJzbMJSLUBPNjf0p+3OHM6MRmhe7Z3wY/luySIgvc0IAuyIHCiQUE=
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)(376002)(39860400002)(366004)(396003)(230922051799003)(186009)(451199024)(64100799003)(1800799009)(4326008)(8936002)(8676002)(41300700001)(4001150100001)(2906002)(5660300002)(53546011)(2616005)(26005)(36756003)(38100700002)(6512007)(6506007)(83380400001)(31686004)(66946007)(66556008)(54906003)(6916009)(66476007)(86362001)(31696002)(316002)(6486002)(478600001)(41533002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?V0hZV0Z0RlBLaDM4dkNFRUZ5Q2UxbHZzZ3EvL0I2NlhsY3JIcUJ5SytLM3Vm?=
 =?utf-8?B?OWkrQmgyaEFRRzlhdW9UaVdKZ2VnRE5OcExJeURIWHg0K0hxbWgrcW9TM2xi?=
 =?utf-8?B?eFZncVY4bTJDZ3paSGFIOGt5UjlvZ1ptd0xOeFVoVUo0ZzlwNmZTL1dtL2Zt?=
 =?utf-8?B?N2ZtbC9jNW5nTUVQbHFrc1g1R3grc1gzaUJUdXUvOVFBR3lvUk5MREcwNUxt?=
 =?utf-8?B?VFBCQU9PSTVnK1ByTnlqNlhsVDJ6cktXbWl2Z2FCNnJsaVNVUXVtbGdaL3RV?=
 =?utf-8?B?aFdSakxrbS9LMU9SSlZWd2lBMldNUG1sN2Y4WG9KQ0FnWWlMOCtVNXlnUlla?=
 =?utf-8?B?MTNvRnlsRmdZTzBsT2JGd3pZajIyVUk5YmFNanpvWFNVZXUrUEpib2U4R3RI?=
 =?utf-8?B?c0RyVk04d0J4eWRQTE0ycFdxeHk4c0x6TGVQREtYWWxONDBaZmFyM0M0LzNX?=
 =?utf-8?B?ZmJpT2dURVJuYjNZZVA4MTluOXNjTXJHbkVLRmo1NWJrN3VnV2tCRjUwbVBN?=
 =?utf-8?B?K0hUdmVuUlRPLzNYMERQN0xITTRzbmhNZHdNS0k3MDdMZGhMYko5MXdTSjAy?=
 =?utf-8?B?M3RpSDJhOWd0NSt2cWxwL0ZpR0I0UjBXWHFaOEJKbWZHanlMcHdVNHc1aytL?=
 =?utf-8?B?Q0h1R2xWaTZkbnM3N3c1YytvRk5yR0dVdHk3alNDZExKcTB5UFhUYWRWNmdE?=
 =?utf-8?B?M0Fvcll6alUrL0tWc3NvVlUzcTNOdTdpMGY1QWVQSUl6N2N4bDFFdnVYYmpF?=
 =?utf-8?B?RXFxYnA1N1ljNzlJWGFTRFJWVjNhLzk3d3JKUEtlU05yRGlaM0M0VXdUMk5C?=
 =?utf-8?B?Z3FYYzN3OVYwRkFzblNQbjdsUkNZL3FUSmMraHd6Q3lGMk4xWGkrd1N4N0Zx?=
 =?utf-8?B?N3J1a2did3MxM1lXemMxUHZFSUoyTnd2T05oUFVNdGREQ3JRYm1XQzdUR0dl?=
 =?utf-8?B?OWJxa3doYWY0WUlscjFjRlZsbkxKVkRZRTJIUDkwU051VEdrMStIR3NrRkRt?=
 =?utf-8?B?ZGNJMzRwL1Voa2ZvcGZWTlRDME5OR0ZWaUJHdGtTcTFsMFJpQkZhTVAvWDJl?=
 =?utf-8?B?aWo1ZStheC8veFVYY3R2VC9VdE4vYmYyVVd6OTNVazRCQzQzaUJuMHhaSDM2?=
 =?utf-8?B?NHpxdmhtVGE3enZEOEFuV2d6SGJTTDJEZC9kSnNsQXZwMGthaVBiWUVsVmZw?=
 =?utf-8?B?REhGUW5VZlF0eVdsaHp3OG1qK28vS1Z1My9ZYzk4VFBEeC9xaGF5cXFlRFRX?=
 =?utf-8?B?NFVCS1EwS1lsY25Pc3VOT3hzODFzeGZIbFFvRTc4dEVzMU5zRzZ5bFBBMHJ0?=
 =?utf-8?B?dXZiQ2dVTGxEWlZvYWVOZmdWRFhEWDJ3bGQ3a0ppTFE5anpXc1kvMXF5cnVz?=
 =?utf-8?B?dXp4YWxFbFdldXc4M0V5a2J3d0I2Tm9OY1BUMXhHeHE3dlF6aS9Sb2lxRksv?=
 =?utf-8?B?UlBlamFjK2pLSmVGTk9pNTl3aHZ2TXlpbG5MUnc4ZUlvQXJpM0dFblRNQ0h4?=
 =?utf-8?B?MVlMUmpWcmdBclVqMjhKdk55SzZUT1IvM1F4WXVqdEVKRlk0VlBJclBRYUlm?=
 =?utf-8?B?RzluZkNhUUptaVJQRWgycWhRbStNeWxvb1NRSlRmekpYUTdmTU15cEw0S3cz?=
 =?utf-8?B?UTJLa2tnNWczZW5ySmt0cWk3RjdiU0gyOExxa0Z3b3lCcDhRanFuM2ZwaXg5?=
 =?utf-8?B?VStOUThyV2xsU2pHd3RtRUZqelc1dXZrZ21td1RJYnV6T0E1bm04QVB0bnZm?=
 =?utf-8?B?a0UwaSs5UU5zV2plZ1Nuek44QjVpT05MM0k0VWVva1BFS2owekVNZXZTYmI1?=
 =?utf-8?B?allYTm5pZm5WeUhPQ3M4MnhJRDhZdFBaQnNDZmRveWRYdEcrRjlBdTIrUmZZ?=
 =?utf-8?B?TXhDZ2p4N1drSjZqTERwUEF3Tzhzbjd2V2lIVGRHNWVoOHRGbGdJZGhrQWdG?=
 =?utf-8?B?S2ZFa3RKV1ovMjlXQUFicVdqc2tWWUJUNVlUTTg5R2tLTTIvTC8xUjdNeGRa?=
 =?utf-8?B?dG9CTzkxTVVJbEQrSE5semtVRGNvZCtra0EzZVUxSDJIeWZOd0FlOEtJd3VH?=
 =?utf-8?B?dE1RZGIwazlIMWprVVNCZkYzcnZnMEMxNnl0bjZ2OG9Eb0RmLzdNYVRjdFFI?=
 =?utf-8?Q?uIHehRKZqV4pcr2eVwHftYPoh?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 2c200b20-7731-4a75-43da-08dbd3b2f7f3
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Oct 2023 10:29:42.1774
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 82umSbKxszL8TqU262o0/YbqVX8iAu9JOECYk+LZ6YgE7XFTCSr2DMQhZy1GMqaLUoXisuCl/r99mH8pGVouWg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB8296

On 23.10.2023 11:40, Oleksii wrote:
> On Thu, 2023-10-19 at 11:05 +0200, Jan Beulich wrote:
>> 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>
>>> ---
>>>  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__ */
>>
>> Looks okay, but wants accompanying by dropping (i.e. effectively
>> moving)
>> Arm's respective header. The description than also wants adjusting
>> (it
>> wasn't quite suitable anyway, as there's missing context).
> If I understand you correctly, I'll re-use ARM's header, but I am not
> sure I know how the description should be changed except that it can be
> more specific regarding which one header is introduced.

Well, first of all context is missing in "full Xen build" - PPC has recently
reached that point already, and both Arm and x86 have been fully building
for quite some time. And then, as said elsewhere, imo headers needed solely
for building (but being otherwise non-functional) shouldn't be introduced.
At which point it may make sense to give a pointer as to where the
definitions are needed, and clarify why what is introduced is sufficient /
appropriate as fallback for a certain "common" default case of operation.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Oct 23 10:31:07 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 10:31:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621277.967594 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qusD6-00047H-8A; Mon, 23 Oct 2023 10:31:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621277.967594; Mon, 23 Oct 2023 10: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 1qusD6-00047A-4h; Mon, 23 Oct 2023 10:31:00 +0000
Received: by outflank-mailman (input) for mailman id 621277;
 Mon, 23 Oct 2023 10:30: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=gXaf=GF=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qusD4-000472-Ns
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 10:30:58 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 4033a3fe-718f-11ee-9b0e-b553b5be7939;
 Mon, 23 Oct 2023 12:30:56 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id 992534EE0740;
 Mon, 23 Oct 2023 12:30: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: 4033a3fe-718f-11ee-9b0e-b553b5be7939
MIME-Version: 1.0
Date: Mon, 23 Oct 2023 12:30:56 +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.cooper3@citrix.com, roger.pau@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][for-4.19 v4 8/8] docs/misra: exclude three more files
In-Reply-To: <29ff2917-3828-710d-01b4-67941ec16ae3@suse.com>
References: <cover.1698053876.git.nicola.vetrini@bugseng.com>
 <741b3eee4c25296bc114cfcc0f38d7e7c2bef667.1698053876.git.nicola.vetrini@bugseng.com>
 <29ff2917-3828-710d-01b4-67941ec16ae3@suse.com>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <0b696abc3fb31e533c25b06fd63a07e3@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 23/10/2023 12:23, Jan Beulich wrote:
> On 23.10.2023 11:56, Nicola Vetrini wrote:
>> These files should not conform to MISRA guidelines at the moment,
>> therefore they are added to the exclusion list.
>> 
>> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
>> ---
>> These exclusions are automatically picked up by ECLAIR's automation
>> to hide reports originating from these files.
>> 
>> Changes in v4:
>> - Fixed typo
> 
> While there was an adjustment here, I don't think it invalidated
> Stefano's R-b?
> 
> Jan

Yes

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


From xen-devel-bounces@lists.xenproject.org Mon Oct 23 10:32:10 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 10:32:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621280.967603 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qusEC-0004fn-Hi; Mon, 23 Oct 2023 10:32:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621280.967603; Mon, 23 Oct 2023 10:32: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 1qusEC-0004fg-Ep; Mon, 23 Oct 2023 10:32:08 +0000
Received: by outflank-mailman (input) for mailman id 621280;
 Mon, 23 Oct 2023 10:32: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=7RLV=GF=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qusEA-0004fR-P2
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 10:32:06 +0000
Received: from mail-lf1-x12b.google.com (mail-lf1-x12b.google.com
 [2a00:1450:4864:20::12b])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 696cc5d6-718f-11ee-98d5-6d05b1d4d9a1;
 Mon, 23 Oct 2023 12:32:05 +0200 (CEST)
Received: by mail-lf1-x12b.google.com with SMTP id
 2adb3069b0e04-507cd62472dso4712131e87.0
 for <xen-devel@lists.xenproject.org>; Mon, 23 Oct 2023 03:32:05 -0700 (PDT)
Received: from [192.168.201.133] ([94.75.70.14])
 by smtp.gmail.com with ESMTPSA id
 c7-20020a196547000000b005056e9b734esm1657867lfj.151.2023.10.23.03.32.04
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 23 Oct 2023 03:32: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: 696cc5d6-718f-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698057125; x=1698661925; 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=oGMYTHGOkTBndFLxXXqmJoQHHn43f4g0HnjO+5XJWkc=;
        b=mt2PR3Sza+VqDL3aKybW9otANjBWLXK0QC1z2FF2IFAv5wfgRQL/jtFkMGJD2wO1j3
         RgdmMWtIdE8DSW16GSn1oG85fShCDPOZJ7oUq90XvP2OXkvX+DnekqEEe+WjSadx9M7Z
         N06lTQYJ0HhsKWtTGhI5UWWyx6Uuc7sQVmbNwLsLvtKKeByx3PIa3qW//fPB8wTw9pwM
         Wm2Vz6WA1kJUeQLIoA9CCNVtgzyhSeCpV/rG4Ypn1S1N0ok7dCvg/xrBlP9YUaRXeNId
         ZFj4dpAEw12hWlDPJ2UVzhIZM3GnUSAjG9tl2dCSkCgi+ftGxcqbaE7O3ihRMPcIHKZO
         Lxzg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698057125; x=1698661925;
        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=oGMYTHGOkTBndFLxXXqmJoQHHn43f4g0HnjO+5XJWkc=;
        b=JUjSgM10nYMkzJhWCoXE8Afj/wmfe4eFLXWdObQuL+sbNfxKk8g7Mzuej+2vbY0l8q
         HuFKjqXWDRE1yZE+Pkn7pu/mEbVmwZDQ1PfViNIZb/92bo74eEyO8pLAshZQlZEDAbcx
         uDdKipKM7riYXbgVdru7ZaU5lvBtzyfi4xKGoCcj4a5aCksuRWP9CSHTXZrBrX75CFnZ
         NtNwgIL473fx2RyBOo+pRIuCs3hsE2VfucBkzmq9wgx/SKVFTlaWNVuX93UET/q9o5uk
         qieJJXC6acskRki+h3ZBbACfuOaHPK/MTu3kUQwKo65+Jv5tBFvTg3iBqR0ObljgiwoF
         3jWw==
X-Gm-Message-State: AOJu0Yzfv6h/K9LpdMCKfxdENmS1wZRqsn/NUTaNZalkrECess/xog1k
	AK4xQW4aB24pSs3QCFlcuoo=
X-Google-Smtp-Source: AGHT+IEcVnyNHX5DKeH7qBKd21fDUIOPZSQYnb9ZD80w+12qu+3hRjMR3QKNxBcogXyk2a/d06Ualg==
X-Received: by 2002:a05:6512:238a:b0:500:943f:11c9 with SMTP id c10-20020a056512238a00b00500943f11c9mr3856829lfv.3.1698057125230;
        Mon, 23 Oct 2023 03:32:05 -0700 (PDT)
Message-ID: <9bb801f1c45cac24f3e3ed3abbbbf3f260a549c8.camel@gmail.com>
Subject: Re: [PATCH v1 06/29] xen/asm-generic: introduce stub header
 grant_table.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, 23 Oct 2023 13:32:04 +0300
In-Reply-To: <3e13d1ea-c242-46ac-c692-8f2237d2a23a@suse.com>
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
	 <f3efdfc93780b62be93fecec68860e12026fe66c.1694702259.git.oleksii.kurochko@gmail.com>
	 <3e13d1ea-c242-46ac-c692-8f2237d2a23a@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-10-19 at 11:19 +0200, Jan Beulich wrote:
> On 14.09.2023 16:56, Oleksii Kurochko wrote:
> > --- /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__ */
>=20
> This isn't going to work with CONFIG_GRANT_TABLE=3Dy, is it?
Yes, it won't work with CONFIG_GRANT_TABLE=3Dy. Missed that as
CONFIG_GRANT_TABLE is disabled for RISC-V.

It looks like it should be moved to arch specific folder but as I
mentioned before I don't see a lot of sense to introduce an empty
header for new arch each time when it will be needed to enable full Xen
build.

~ Oleksii


From xen-devel-bounces@lists.xenproject.org Mon Oct 23 10:33:12 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 10:33:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621284.967613 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qusFB-0005G9-Qq; Mon, 23 Oct 2023 10:33:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621284.967613; Mon, 23 Oct 2023 10:33: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 1qusFB-0005G2-Nv; Mon, 23 Oct 2023 10:33:09 +0000
Received: by outflank-mailman (input) for mailman id 621284;
 Mon, 23 Oct 2023 10:33: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=OVTz=GF=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qusFA-0005Fp-Lv
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 10:33:08 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 (mail-am6eur05on20615.outbound.protection.outlook.com
 [2a01:111:f400:7e1b::615])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 8e4de3ba-718f-11ee-98d5-6d05b1d4d9a1;
 Mon, 23 Oct 2023 12:33:07 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM0PR04MB6945.eurprd04.prod.outlook.com (2603:10a6:208:17f::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.11; Mon, 23 Oct
 2023 10:33:04 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6933.011; Mon, 23 Oct 2023
 10: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: 8e4de3ba-718f-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=HuAxcVuIIaJFLopb9sfVkKuvuKrrTAhCAGiKzuNK2lzanABd93HmcxKvm7lKGiCpsG2JCUJMtSuIDOYwmlQoshb4t/xpaPYxRsqlqKKmXcJFfJjR0+oAN3FGq+s+Y1OdnABQpmG4gln1NeoyjGE+/U295L5lJ9Q5ARUg/WGunxyDg8AP6CtR1n1EUXjhfgbb6zAwY3kDU3rwCOd5QnHdbws0xHPjXfnQXBZnz/PclY9izr53lIhDXP+e5fTp/2PSmhiCaRnXVWJKJgTBmap1/EOjCKvkDSb3+ndVqfj71vxmP9sNjMcqmyqDAXPRvKpSPzJgky7lruO+M5w3VGcVUw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=gSfOhmZxKkceqUVB+Sr8ey7FNq4+OOxig1hpDrdO9QA=;
 b=DTrPhb6vIY4q5v9Fend0WWGv0OHZyoUeZGLWhFZbY6yeXZPQYspxbEnjBsE3uASs1Dyib25IsmzQzgIUoASz3qJhoO4PQPNfEaS6rIW3uWMqqPEFJRug5dqRYDBmthLN47JjafLwDx+xo42kc29sdnca73v9T21PefTUokjlP7P/GyNSRkw0jRCnkhzCeDUIOlrSFUqS7Q/Wwolh5w1sNza8D6U0c/ZYmHzQE+0yD8fsUcXY0A4HkQEnR5uavDsE+fJdb6VGBPOVILYRgQzX81fd1z6Lvm+I5SwY7SgzILmJeHMqdsHKX/ZY4qkfDVf/1SS2KlGphhnjihPhXuYmGg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=gSfOhmZxKkceqUVB+Sr8ey7FNq4+OOxig1hpDrdO9QA=;
 b=hTBvYjfAT9x4xd7bustkiyskXV1keSvrCv1Gb4HXZ8hknqK/elXmYYYx2vPpEtCpJQEFMMVYiYXPNCR4Ybajc7LLHEYiAGgHAEb+jYB1maviLu9hXliBPvkg7E0lPdN8faAfprB9Z1LpQDuaWPkaC1BbVN0gbO1/DrmpDZ4yekSA2tG+GKyyrFFAvKd+wp5flYLZoUxw5vuZflfPkFvHPjii1v/KGn4YwBg5rt+fpUdCM6iJtla3KQFeCvNt8jDZViE4JR/Je4xBBGnTKrIru/hodkrq0YosI7WdiGUlVyyUgS4lEB16nbmLx4l9Q55zmzPKC0vR/51rKqdesipWgw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <48c3c78d-465f-8102-87a3-cef3a5d4838c@suse.com>
Date: Mon, 23 Oct 2023 12:33: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 v1 04/29] xen/asm-generic: introduce stub header device.h
Content-Language: en-US
To: 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>,
 xen-devel@lists.xenproject.org, Julien Grall <julien@xen.org>
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
 <3cc9ecc3abcd21c5ed7276b01bf5963e6a5fd5e0.1694702259.git.oleksii.kurochko@gmail.com>
 <a20f5783-7ee3-6ed1-d4cf-379c30c64a12@suse.com>
 <9ee7b3c9-de71-4790-815c-8b2859a85465@xen.org>
 <17d9102a-da9d-d41b-6362-1ccfe21b7976@suse.com>
 <5059771d-3842-4a7c-814d-69388179b246@xen.org>
 <61c20f5d-a324-9ece-2140-4d0c775e193c@suse.com>
 <54ac0161-7302-4190-9c6e-273caa652058@xen.org>
 <04fe316e-bc4f-0df8-7771-5be7ca878297@suse.com>
 <3ce85a73-96ab-41c8-8b90-f3899e771845@xen.org>
 <63392d67-f1af-a53b-59c2-ad4752159726@suse.com>
 <97eaa9e6-bc4b-4128-9563-cf3647a794c7@xen.org>
 <d7e862261c5a45902ba95eaff31d813d97f3c62e.camel@gmail.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <d7e862261c5a45902ba95eaff31d813d97f3c62e.camel@gmail.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_|AM0PR04MB6945:EE_
X-MS-Office365-Filtering-Correlation-Id: 8da81518-56cd-4e54-38dc-08dbd3b37065
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	/WNHkDMF+Qw09Knec1mFOegeGtATJN0z37vWSkifttsv22Kdr+Ud8fqA3JJG85ZsfwpqvhxVsxbZZlTq9TDWD8buR2aTf1bN2AJDJ+5nSc/M3T7Qqk2lRnxbqS+iybZ71pDXuA2nvmZvsHFugoO/g8KoweD4SvRzyoq5lIUKf7XAjSzjHcSRlt2vq4mD9v9KxofBrPlp9pvMJtqhxjznMp6KmcSvhqXI/DfwYx/+3WXdMNJ+9gpnIsu030GVa7GId2pPeUm1bbwDZp95grkOyE+KdbUElIRCbHJgKdLBKBnq80bcRUyAeG/srLIhwa4LwvDJynWBapb84ceb2hWpgRCN5IaCReC9nqmC9htMvBigoYElgnaevWYG6UgiMZdMdnIPQHHIelDqd0yGYpMmLSBCCy4TkqyXpCMGWk9odaypmesVMg1iuL+YP5cdlr54RRsCuOi9uURQum0bKoK6nr98Lf4Ih3+mVFHd7YWhT2PVvL0grF0oBJUpKRoZiDMsX9rto7miAbVLKD5/XEpytC1yqEEu6EFeKiQFbBS9Zf7yaXM6Dvmr0fYa46GcGPN6rZDRjjvPVDvL4ryDzZb7L9IGPuDI5RvnUWpiU+a2lQSavPwulC12z6SQYZ9mMqqDlcClB0gdoyQ4AZZblyNWY4jVQw/Zj6UYSTvdYot9xa0=
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)(186009)(64100799003)(451199024)(31686004)(2906002)(4001150100001)(6916009)(5660300002)(8676002)(4326008)(36756003)(8936002)(41300700001)(66476007)(66946007)(6486002)(316002)(478600001)(6512007)(6506007)(2616005)(53546011)(66556008)(26005)(38100700002)(86362001)(31696002)(54906003)(41533002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?a0dDVlJSbCtNbFNaZDF1ZDJUYTlDcGYrdGpYWHViSXlsT2VWR1l2dWs5S0dx?=
 =?utf-8?B?VUFrcFRaUkgzQW9nTDBRUUtXYk5BaHBzTDMxL0xqbFYvR2g1OTVzUHkweEh3?=
 =?utf-8?B?cXd3V3Z0YWFzSWhHUTd2N0p6eXl5ZkljenREd2xIU0JOcFZIRVNDVXFxOUJp?=
 =?utf-8?B?OFFHY2NsT0w4aTNZNXFxeGtzU0dpSlJsRHg4Um96d1MwWDFGNTlxV0R5eFhY?=
 =?utf-8?B?TjhVbWhlUmFCcGNocE5sdXZ0QlBqem5RSFJ0aksxckh4R0NFVWxHV1IyMjJX?=
 =?utf-8?B?WWVzWjVUV2RFQ2Rvbmw4S1gwRUd5VFhaZW1aZUE5Y2c4c1QrOHNSZFFPa2cx?=
 =?utf-8?B?OS8yekZZaFVxZjdaZ3hNaHpuWUx6bmh3MmJpdjBqaTd5WUx6WUNON2t4a0Yr?=
 =?utf-8?B?ZFJaN2d0Q3c1UTJYakJET2xFTkxYMzZpbzdteDRGOHBqcmYyM2w1NlkwMWsr?=
 =?utf-8?B?NDhxQzNaeVVzNDJZSURzRkJ5RjU0c29pUHVtcVFXdWk0SEcrNEF0M2tnOGl0?=
 =?utf-8?B?L0UyMGdoOE41S2xrWUtxN3ZzVU1uV2o3d2IwN2tpZngwQXFDRXpldnp2Yith?=
 =?utf-8?B?OUhEN3Z4bHF0aXZYOU9CMWhXUzY3SW95bGw0SkZXNzNDcDBvTnJzOEJWMXFs?=
 =?utf-8?B?dGd5OVZlZXh5aGxDa0dsRjlPSDRpaTZaNFdTZ29uYjRpYVlVcWEzVEc4am1L?=
 =?utf-8?B?NE9xdENOL0d5aUp1SUFjVTdNeCtHNmw5V1NVTEQzQXh4dDRRejFJVGI3NU5U?=
 =?utf-8?B?TXZXWk9xTFlmVlVabUFLaHNPNlBHcDMvTUprR0hON3RvWFlJU3MyTVRsOXV1?=
 =?utf-8?B?aXlZTU5FTXduaE84ajIzNzJqTFBFMytIT3pJMG9JbzNWby9aVHZWbUMrNmgr?=
 =?utf-8?B?WkRTRGRJYmRuSTJyYWVTeWlLNUdwQ0dZZ2pJWFhVR0NmN0NEMzFDazVud0JS?=
 =?utf-8?B?NWZZTG1OMzBlMjR5NzBwNVc4bk9qbEZxSGtGd2ovb2hiWUk0RHZOcHlqTkdh?=
 =?utf-8?B?czZwWTduWEV5VGNCdHdWZjAvNWh0TWN4Y2hTSGwyYTZZQjhaTTBTQ3FNeGc5?=
 =?utf-8?B?R1pnb096TERQMW5DV2xnNGMzaEF4YlU0SStGcThyY2d1T1dQL1BiY2hSUzZp?=
 =?utf-8?B?a2hQQ2NIMHlWWTllVWJmdjh3bnpqemtFcGVDb0hwaGY0ZmlaNCtuUFBCTmw2?=
 =?utf-8?B?M05NRGd6K3p3ZEYrcnRTMHlVMm5lSXdUVGhxV0lPZlNndmZMZ1FnT3NwZVVM?=
 =?utf-8?B?c1NORkI5ZmlrUDNOa2tXTUNkb2V5S2pFVnlwSGxOVXpOcW9zZnBlT3ZIRHhG?=
 =?utf-8?B?OVlRM3lvbkFFeWVKbTJsdXNPY2tOT1dJbHROYTl4YmRMR1VXYnJQeWFDZ2Rm?=
 =?utf-8?B?cE53WXVqc09kdklia0dEYll4T3ArNUpFeE5PR0pzUTI5SkJZb3pBNldLMVZK?=
 =?utf-8?B?TWI2NzV4ZUZadTE0Z3A1Q0Y0Z3NBNnZlbXJ4RXJCUWNRSS9wSzdacUs4NU5H?=
 =?utf-8?B?UTY1aTB6Z3lVSGZMbEtweTVyc3RhR1Uwb1o3WnVnbUkzWVI2Rk5rYUxlUkU3?=
 =?utf-8?B?cGFmR3Q3SjhKYW5lem9sZDhhUVdsSEtyZUc4MHpPQ3dSSzBZcTFHMkQ4Q2RS?=
 =?utf-8?B?YlEyRE1ocVFDQ2UwNGM2dG1YeHFHUSt1K3RGQStHWTZ4bFZkTDZsa1dobUdn?=
 =?utf-8?B?Q3Fib0V2bUxvWUJlM29XQ00ybUZiRjFkcm1LM2NnSTRrQXRZcjBtdmdibTBk?=
 =?utf-8?B?QXhLZER2SFBLdE85NlR3S09EdWo5K0FWc3hwaENsZHRGdTI4Ym1WN0RKSW13?=
 =?utf-8?B?OFJCeDFHSFVCaW9LL3hiK3lJRGNPc0tSRGx6by8zVGhaWExtOXNmKy9qdmdB?=
 =?utf-8?B?Vk5QOCswU1BWTGtOWm9uZWlzYjJXYmhNRzFNV3pUN3daMUxrYUtHclp6Smdp?=
 =?utf-8?B?emtERlIwNEd0M1FTbnhXQWdGZEpDclNoNzdGQVpHRzVRcTZiR2xYc3hyTUJW?=
 =?utf-8?B?ZitJbE1EaW5oUUpSalRINCt3cDJXMldGN1hGOXU0RWc1ck84R3pQNG9ZZHNu?=
 =?utf-8?B?U0FsTFNOelR4b2xJcW9qOEQ0ampQWkVLTWEvRGhEWDdNUXNxQzBWc1llVU1C?=
 =?utf-8?Q?LrJ8ixhaLi+dxIJ8VGryDKE87?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 8da81518-56cd-4e54-38dc-08dbd3b37065
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Oct 2023 10:33:04.2400
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: owEdI5d8Ri333KQg7Dt3i2FibV/or8AMKOxYWtw6oV5Mf7+1MArKX4/q6S2dOS1FI3aNLMPZAaVRKDn+XHNO4w==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR04MB6945

On 23.10.2023 12:17, Oleksii wrote:
> On Thu, 2023-10-19 at 13:12 +0100, Julien Grall wrote:
>> Hi,
>>
>> On 19/10/2023 12:41, Jan Beulich wrote:
>>> On 19.10.2023 13:27, Julien Grall wrote:
>>>> that doesn't involve one arch to symlink headers from another
>>>> arch.
>>>
>>> Whether to use symlinks or #include "../../arch/..." or yet
>>> something else is
>>> a matter of mechanics.
>>
>> #include "../../arch/../" is pretty much in the same category. This
>> is 
>> simply hiding the fact they could be in asm-generic.
>>
>> Anyway, I have shared my view. Let see what the others thinks.
> I have the same point: if something is shared at least between two
> arch, it should go to ASM-generic.

I continue to disagree: What if one pair of arch-es shares one set
of things, and another shares another set? You can't fit both pairs
then with a single fallback header (unless of course you make it a
big #if / #else / #endif, which I'm inclined to say isn't the goal
with headers put in asm-generic/).

Jan

> And that is the reason why I pushed device.h header to asm-generic.
> It is needed to rename some stuff (e.g... GIC ) in it or add some
> ifdefs.
> 
> ~ Oleksii



From xen-devel-bounces@lists.xenproject.org Mon Oct 23 10:34:28 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 10:34:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621288.967623 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qusGQ-0006C9-7M; Mon, 23 Oct 2023 10:34:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621288.967623; Mon, 23 Oct 2023 10:34: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 1qusGQ-0006C2-4p; Mon, 23 Oct 2023 10:34:26 +0000
Received: by outflank-mailman (input) for mailman id 621288;
 Mon, 23 Oct 2023 10:34: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=gXaf=GF=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qusGO-0006Bs-Pa
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 10:34:24 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id bbb282b3-718f-11ee-98d5-6d05b1d4d9a1;
 Mon, 23 Oct 2023 12:34:24 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id AA1F64EE0740;
 Mon, 23 Oct 2023 12:34: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: bbb282b3-718f-11ee-98d5-6d05b1d4d9a1
MIME-Version: 1.0
Date: Mon, 23 Oct 2023 12:34:23 +0200
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: Stefano Stabellini <sstabellini@kernel.org>
Cc: Julien Grall <julien@xen.org>, Jan Beulich <jbeulich@suse.com>, Andrew
 Cooper <andrew.cooper3@citrix.com>, Xen-devel
 <xen-devel@lists.xenproject.org>, consulting@bugseng.com, Bertrand Marquis
 <bertrand.marquis@arm.com>, roger.pau@citrix.com, George Dunlap
 <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>
Subject: Re: MISRA C:2012 D4.11 caution on staging
In-Reply-To: <alpine.DEB.2.22.394.2310181433140.965337@ubuntu-linux-20-04-desktop>
References: <7972c20f361126022fa97f6b51ca2d9c@bugseng.com>
 <61f04d4b-34d9-4fd1-a989-56b042b4f3d8@citrix.com>
 <baa73fa24385b39bc6e82c4ccb08bd13@bugseng.com>
 <26f09702-9340-41ae-afcc-808becb67876@citrix.com>
 <75a00257-c062-4d82-9b64-1707ce4566e6@xen.org>
 <594c09e1f8b2e1e8321c2cb862fcb378@bugseng.com>
 <5ddb6398-f2a3-4bcb-8808-bad653b6c3cd@xen.org>
 <c4f4f1fc-b20a-c08f-9782-9ce06f6dd868@suse.com>
 <3573c8c2-1a9c-444c-a542-539b16f689f2@xen.org>
 <8c25bfd7768d6b290362f56a8b8d44d9@bugseng.com>
 <c47528e7-e202-4b5b-85ae-3bb0d1d0b608@xen.org>
 <87b5936151ace813d9dc9592ee35f86e@bugseng.com>
 <1aaea648-b156-4297-b290-9c7b7a5010fd@xen.org>
 <alpine.DEB.2.22.394.2310181433140.965337@ubuntu-linux-20-04-desktop>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <7e4c60d92abd0d44e7cb3b2d195d0e01@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 18/10/2023 23:33, Stefano Stabellini wrote:
> On Wed, 18 Oct 2023, Julien Grall wrote:
>> On 18/10/2023 13:52, Nicola Vetrini wrote:
>> > On 18/10/2023 14:38, Julien Grall wrote:
>> > > Hi Nicola,
>> > >
>> > > On 18/10/2023 13:30, Nicola Vetrini wrote:
>> > > > On 17/10/2023 15:28, Julien Grall wrote:
>> > > > I tested this, and the report is prevented by the ASSERT. It's up to the
>> > > > maintainers to
>> > > > decide how do you want to proceed: my suggestion is deviating it,
>> > >
>> > > It is not clear to me what would you deviate. Can you clarify?
>> > >
>> > > Cheers,
>> >
>> > The memcpy call, as in:
>> >
>> > /* SAF-x-false-positive-eclair */
>> > memcpy(d->handle, config->handle, sizeof(d->handle));
>> 
>> I am not in favor of this deviation. It could be a false positive 
>> today, but
>> it may not be in the future.
>> 
>> I much prefer the ASSERT() version or the rework.
> 
> Just to be clear about the next steps, Nicola are you OK with sending a
> patch with the ASSERT or would you prefer Julien or someone else to do
> it?

Anyone can pick this up.

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


From xen-devel-bounces@lists.xenproject.org Mon Oct 23 10:34:28 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 10:34:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621289.967634 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qusGS-0006Rp-FL; Mon, 23 Oct 2023 10:34:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621289.967634; Mon, 23 Oct 2023 10: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 1qusGS-0006Rg-C7; Mon, 23 Oct 2023 10:34:28 +0000
Received: by outflank-mailman (input) for mailman id 621289;
 Mon, 23 Oct 2023 10: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=7RLV=GF=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qusGQ-0006Ko-VV
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 10:34:26 +0000
Received: from mail-lf1-x135.google.com (mail-lf1-x135.google.com
 [2a00:1450:4864:20::135])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id bc3d9ca4-718f-11ee-9b0e-b553b5be7939;
 Mon, 23 Oct 2023 12:34:24 +0200 (CEST)
Received: by mail-lf1-x135.google.com with SMTP id
 2adb3069b0e04-507b96095abso4582883e87.3
 for <xen-devel@lists.xenproject.org>; Mon, 23 Oct 2023 03:34:24 -0700 (PDT)
Received: from [192.168.201.133] ([94.75.70.14])
 by smtp.gmail.com with ESMTPSA id
 v25-20020ac25939000000b00507a89ef9bbsm1637783lfi.166.2023.10.23.03.34.23
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 23 Oct 2023 03:34: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: bc3d9ca4-718f-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698057264; x=1698662064; 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=TDb4ASx8/jcCu8conPyrxb2iF1ZWlz7syBLytdyVXP4=;
        b=eN/3kZk3820/9RuOnWgEP/OflLdT2JXys2lVgdkdWBCnQ+MHeiQ+IKPDq+hCMDbDFa
         z0Tr0ST9HUYMOAAFmv3S3V2goOBxNPpWy9RqfqPz1mHJ1E2ciEGn0swIMS+TA4eTaxCi
         Xl7VmUBnZabJSFwfTYBN/81bWgr+b0VcA3vId1zbDazW6sxuMzDmazSo/pg0mAG1Cz3a
         TgEGsGQzrzmCZfRwzUmmficpzDCV2IOXHI8WQGxNsYTThIIvBRLVEGlHJoxy50VMhfH4
         awDpscNeDtQSeKCRMpIy3tieNoVqgsDLU4hq2KJ0xWB7PWjzkAMIxUEo6iVewCY5Rvzl
         xRLA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698057264; x=1698662064;
        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=TDb4ASx8/jcCu8conPyrxb2iF1ZWlz7syBLytdyVXP4=;
        b=OHoiJ2ZsBC03v5uMeUeKI80S/gKJl8RRh2/0YrsZMHc9LLKpeSfcw4wM5vTAi1rBFY
         yEVL21kerPfOQ9c1K1hL/5wo8HSHAJZhony5+63ONPO5WO5TtuquMJzq+41Y8KZhyshr
         kQtfcIfwj330ov7CFeKy37ar8QWBKuZo8lg8LVmTiLWq8IaIqI+67bNw6dmHsUoYewAa
         TW/1wxwKE7X9AZc55oAQr0fX1Eqyedd87tBnLqm/WQ1Uqj7AGFDWz8Kbtn0GYUSW1NOh
         PduYncHZ6bl2dsla0Ev62rieLGrZNMIRJHYHeIDVnCdpfPobiTCY08EfACOa2oXzRPhI
         ilHg==
X-Gm-Message-State: AOJu0YzoaGYyX12kZ+J4rxnVE/qGH1S4rwwAvPa2Ex7UkVCsLA+0pPoe
	qeS07R5sWSBGE+1O1Z7WYJT+L7Ipchs=
X-Google-Smtp-Source: AGHT+IECeiz17WPHXF766H/+MKkPIS8uEeN5nPXhI/M+UWJhPy0Js6XqiCV8T+Pqrq12Jar/vUaXBw==
X-Received: by 2002:a05:6512:3b3:b0:507:ab5b:7b6c with SMTP id v19-20020a05651203b300b00507ab5b7b6cmr6066738lfp.36.1698057264267;
        Mon, 23 Oct 2023 03:34:24 -0700 (PDT)
Message-ID: <b6078a353be7c02865f2e75dc6149a932d5f9eed.camel@gmail.com>
Subject: Re: [PATCH v1 08/29] xen/asm-generic: introduce stub hypercall.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, 23 Oct 2023 13:34:23 +0300
In-Reply-To: <f7293722-c708-947f-19ab-6c3b753f6dda@suse.com>
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
	 <bd57ae1fd448b7d2f4188ff705bb5f537ac48521.1694702259.git.oleksii.kurochko@gmail.com>
	 <f7293722-c708-947f-19ab-6c3b753f6dda@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-10-19 at 11:24 +0200, Jan Beulich wrote:
> On 14.09.2023 16:56, Oleksii Kurochko wrote:
> > --- /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__ */
>=20
> This lacks the "should not be included directly" guard that x86 and
> Arm
> headers have.
Thanks. I'll add it.

~ Oleksii


From xen-devel-bounces@lists.xenproject.org Mon Oct 23 10:36:10 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 10:36:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621295.967657 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qusI0-0007wF-36; Mon, 23 Oct 2023 10:36:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621295.967657; Mon, 23 Oct 2023 10:36: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 1qusHz-0007w8-Vl; Mon, 23 Oct 2023 10:36:03 +0000
Received: by outflank-mailman (input) for mailman id 621295;
 Mon, 23 Oct 2023 10:36: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=OVTz=GF=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qusHz-0007vv-M3
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 10:36:03 +0000
Received: from EUR01-DB5-obe.outbound.protection.outlook.com
 (mail-db5eur01on0604.outbound.protection.outlook.com
 [2a01:111:f400:fe02::604])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id f584437b-718f-11ee-98d5-6d05b1d4d9a1;
 Mon, 23 Oct 2023 12:36:02 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS8PR04MB7669.eurprd04.prod.outlook.com (2603:10a6:20b:29b::22)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.11; Mon, 23 Oct
 2023 10:35:58 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6933.011; Mon, 23 Oct 2023
 10:35: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: f584437b-718f-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=LInR/SPbVBcSIcdtJMCEKaAAma4k3Lr3WvKVciPhB+JneZXvZ3a2AC3NLvN1GoVr0RjNZmPSeT5QslHfah46Gve/I/XedKfXI7Tai18G7YMn1223Qi9Rr4+lkP4x1x2dlS9ejDPK9Jmyimlax0o66orPITJzgQY227SWMEGT4JsCV0rwDkz8CJnAMLYYZytj3Y73lEyRXC3m+qx6vYLu+yMO2cvTbAfEkGiILVLN7cgIusEj1w4OAsho6VtTnGnMUWMw3uDGMMQeebWRBdEjpDEBNAADEHVEveQw3Kpw/C4yWyOi5MV0ebXTo5YMSxWF6nRbbUC2fDLOz5FPL0HOgA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=n/xjM4pQthFNuKbEnEZctnUokWT8FgHvVxnc84MARMQ=;
 b=Shu2T8fEMJifzlR5+mLVD+FNnUxQEO3PQ8E3q5p4joROJiqIPwWCRX5F1VbdKcuMTCOgXqG75ASVqYzkB/45ZtbQclTYu0v+W325A5EcQi+xyA8NSrg0J6vpZNSKZ0b06hpyOwke3opQXPrpLTse2UTAQTRf8mX90s7HfqcRlYDtgx399Iu0BzRxk+f60UCsDg6s0ZhaUQDj7yuqXHiplhCxRoS5NjpdfJfViKzWAueo3H8OIqpz3gxTexwTY1Aam8BsXdy4wF0KczCLjGBMvIBIOgFPDjDoCx4gzYID1sPGx0fkSmIirEuQ5xrSkTTUshAmJj9GDmBOd5OPsVfTgw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=n/xjM4pQthFNuKbEnEZctnUokWT8FgHvVxnc84MARMQ=;
 b=CDehxgTFOlf95CJj2tF2x/7N66iyv7oPye5lGdYDZLlwCgnlhwEY/uprAhW401I1mjtIkx/nI7dDfQNVs8N9gd+dlFYk2tWjP6AlrsoDUCw1ZqJ3ru/IEyWixcGGV3rdaoL0LVwwBE9LBJm8GyVwG+boXoBJUYn87+pNHHXzopMuEF1bhcGWXr58FDU11PtTDdrG0CtYAqWgaTcfoVQZxUGbBbGrkTxHliAkIWr4qSk29LVFRfvrl59RM0UmPUOr6UtQ+pU00xLk/nQ4BOjjbaTwenRbPJ1StBoRVgwnObTeHAOMvSNsTrYxjxs4jRGD7Y4RrND0JGK5OGBxaBN3SQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <2ad91fc0-43dc-632f-9c04-b5b95eb22c20@suse.com>
Date: Mon, 23 Oct 2023 12:35: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 v1 04/29] xen/asm-generic: introduce stub header device.h
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>,
 xen-devel@lists.xenproject.org
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
 <3cc9ecc3abcd21c5ed7276b01bf5963e6a5fd5e0.1694702259.git.oleksii.kurochko@gmail.com>
 <a20f5783-7ee3-6ed1-d4cf-379c30c64a12@suse.com>
 <17fbd1d2c9f1fb1fa5121f69c743b2cd766f7620.camel@gmail.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <17fbd1d2c9f1fb1fa5121f69c743b2cd766f7620.camel@gmail.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
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_|AS8PR04MB7669:EE_
X-MS-Office365-Filtering-Correlation-Id: cb95b887-7b3c-4503-277b-08dbd3b3d87a
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	yEIsc6hTOHsogcbDS3sMgMi84tcbCtNvW3vVLdS5pjNxOwZp5ezMPbmmnUPW8zLjxcLAsXAX5rl14Ytacz2nLbsYNmqr/t8fycdkhGCrgqi2l+CV2psEJCpZjqaHeVKi2+QN8D/E2RUum0ivB40waWDLL2W+cAna0bg+XRo0ggSATDj7q4Qr6YSlOU0yAIWpcD3JiF8PXJtcM73AruDCVuC1p8CEp/oNIvDof9X12AVcysXCcsmYKZMNteQ3U8htswxA96EhXW7yYbUvttGMdYXAwrBP81Ise8IIiJP//XmBVMXYAQlm7PfSde84vvIm/FRwlxOb/vwPTuL+56FRe89w90DCNXDQ1qg5fGX5QMZtD2TTwx93brSKW0aaEAW1HF76AGesvBJMuHCGlWyCYYaqFdovbAfseW6972OHu+Eucg7DkhrMXWWGcV5ppgyVed0yJP1fvuK8PJyu6R7S5xBRUleFRimDLTR6e4e7tKH/88I9Fd5si6VD1zHMWmipgmDSBl5btCePL+FbBAMSjhConIP/j9Qp76TtRTeftLit7XvO2VP9cVq+k/21dVWz5zllH5BIDqfJu9gEejtro7ZMa6cG6JUAvnr2/R1EYQ56RvtAgbvqoomMA/dznLIyG5AvO/pFbMonKoWwZ0WD6PKT+fInaarVX3PEHjgVk7E=
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)(230922051799003)(64100799003)(451199024)(186009)(1800799009)(2906002)(4001150100001)(8676002)(478600001)(6486002)(41300700001)(5660300002)(4326008)(8936002)(316002)(6916009)(54906003)(66476007)(66556008)(66946007)(31696002)(36756003)(31686004)(86362001)(38100700002)(26005)(6506007)(53546011)(6512007)(2616005)(41533002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?VFhrV2FBajJnR2kydlpGcEsxMmdmaTdtcm5mWUk1TDJFck4zQ2ozZEFyRmNY?=
 =?utf-8?B?eFBBSHRBRitjUEV6UmYvejI3SUtiTWdHRDBiQTZ6enorNlpVUURMeW1ZVElr?=
 =?utf-8?B?aW5KYXdYSE9ZVE96VTk5STczU1ZadzduNzJuYS91MmZoOHVTSmtIaHNObFlo?=
 =?utf-8?B?U2dtWktFOEYxTkxXRzRSam00b205Uklvb1E0SDNMZ3dMR2ZCQkNKY3VUQVFi?=
 =?utf-8?B?bW81b0lKczlsTFZQQTFPMWloOVJTTGJSVmsxaU45d3FYSHpxOHJKOWpESkZR?=
 =?utf-8?B?TFBLWlNUeS9TM0p0S21Tb2ZSMWhSRFQ0cVVtaHptOVphakJuOU8vRUxQd0Nx?=
 =?utf-8?B?cjlwdUhUNm5YVm1wNEN5T3FqaExkQzkvaHNkOUhCMTRMb0pmLzFtdnMveitM?=
 =?utf-8?B?dzh0YSs4VEphL0FlSlhFbERBUmpIam1XeUpnWUt1VmVEM2czSUM0dlZTN2lP?=
 =?utf-8?B?dEw1RjdaTEY5ZzU0dWhkcWhlT09YRE9wQlAyeVAzbXVwWEFmd21VekVGenZD?=
 =?utf-8?B?cENRQUdkSUdQUnUzcENydjNMVmNMUjhSdWZrM0REb2xQM1VqVENYVTVFSytq?=
 =?utf-8?B?WDNLWkJZTDNHMlA3YXNqSzMyQ0lZN2VyR2NRNTQyVXhnZ1pCYlZYQkNkbzdz?=
 =?utf-8?B?QWsyWlJvcGVQR01mY09BSW9kcU0rQWd5RWJVS3VSS0k3LzBHT3BqUlcxMWdj?=
 =?utf-8?B?b2dUcmNRWjZOeUxkdndhZXNPaGFqWkRSbXhnWWJ6SFc3dHNvR3RSSW9iY21Y?=
 =?utf-8?B?eUxOeWc0M2ZxS1o5dVh0SlEzQ21yUFpTWjBMRWFuWTJlc0cyRTM1TWVZVVR3?=
 =?utf-8?B?ZEdNRmY5M3c5KzJMc3JBQWNrY2t2TUJ3YW1mcWpNV2RiOXVjUzJuL2FHTm9V?=
 =?utf-8?B?Nlh5K0ZxamhmTFp4eXhrc1pDVUtHNjdwQUdUVlVhMGpYZXdOc3VqdXJJcnJ4?=
 =?utf-8?B?c0ZKRkd5amw0L0FrMURsQlp0MzJyV05MN21UQk1wVDNpb1ZoSUtKNXQwYjUy?=
 =?utf-8?B?YXMvNE0wVGk3SXFDS0J3UWlqV3FsckhUTFIrUUhVODhtSDViRFhaL1VRc2w1?=
 =?utf-8?B?UTEwekFSYWp4aXhYaXNjMnRtWUNYZHBFZGFjbmdjMThnY3g2YjRVUVdvei9o?=
 =?utf-8?B?VTNZU2lPTzBIOUtSVzAySHlLNlR5SzhmTzArT3dBcG5ONWlkTm1iUVdCSmlZ?=
 =?utf-8?B?d2NNUFlHWURJVi9OTWJ6ZjFOdlEzU1l2TnB4VHZTdTBCSFh3TUZjT3h3ZWV5?=
 =?utf-8?B?eTR4dW4rd2dwUWxIZ1JnZDA2QjNxcWVzODFDWm5jWjRacUVQN3ROb1hPQzl6?=
 =?utf-8?B?ODlDNVF0bE5uQzhiZXV6YTdVN2MyM0xNbjVqb05SQWNnVTF3ZmxIdjgrOGxZ?=
 =?utf-8?B?eUlqK2I5WkVrWm9rWG1LWnFLUTFxazNoSVdmSUh4MHV1S3FoZ2dHMlRPNFRh?=
 =?utf-8?B?aXljNy9xWjlRdGlJejBJMktaMmpXRkphQk03cGYvZEVuYXJUS2YwaG82d2FI?=
 =?utf-8?B?elp3U1ZxREwzWEVtZnFaWkVydDh5blBNMjdOMVVYUzlQY1IxUHQzK1ptSURu?=
 =?utf-8?B?clhOYzBkUHdRQktrdDhlREFPa0IvMFRYZ1htVE5HRGFqcVM5ZWJrdFN3SzJT?=
 =?utf-8?B?aW1yVlV6ZFpheldwZ0h0WEFXY014dHNpK1ZNUXNETzFpVU91eXF6YktsV0lL?=
 =?utf-8?B?Q1llNEh2YUZ6M1RxeWczdkhPeEhId29CbDg2ZTFSeUJyQ1RjWUNQc0tlQmlW?=
 =?utf-8?B?UGhRNHM3YlUydVF5ZDNaUCtNS2pFb01PeUxPWitoTEc2Y2VHVHRFWFBIRVZl?=
 =?utf-8?B?Y3FoVHlvUHlsY05Nam1GQ2hiVnM3cXRsak5nZVpsRzdjN01tbWlIVkg3OXg0?=
 =?utf-8?B?WjMwYkZlaER5S2tFOTVHYXNKMmRUK2tRcVNPUkxka09wRGwybFFsclMwdFp4?=
 =?utf-8?B?RGpVcG5yR0RFbUgxVmFtZWwxaWlPcnpOQmJNb3RBMDZJL242QUQ2em04WW1Q?=
 =?utf-8?B?aTVOdGFTcjF5UHZSQnlNSEVPbU5Ccy8yY084a0pRNEcyaGtoaHZZNTNsVlhN?=
 =?utf-8?B?dFQrT3hrcE0ybXFIeERnNG1OL0xUMWxydzRZenExWWVnZ3R0N2RlQmRpN0Fx?=
 =?utf-8?Q?B/DyFjMfkp90Xo9XIL9s0cPjZ?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: cb95b887-7b3c-4503-277b-08dbd3b3d87a
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Oct 2023 10:35:58.8511
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: laleGEVMqyFdlJPdil6LxgCdhZIn0XV1ujyXUPXZtVFTgJ0TFpzWkFYkhotF5vJLKhTyYDkQKz6gn9Qc564BMw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB7669

On 23.10.2023 12:12, Oleksii wrote:
> On Thu, 2023-10-19 at 11:14 +0200, Jan Beulich wrote:
>> On 14.09.2023 16:56, Oleksii Kurochko wrote:
>>> --- /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,
>>> +};
>>
>> Are both of these really generic?
>>
>>> +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,
>>
>> This one certainly is Arm-specific.
> Yes, but the definition of GIC sounds common, so I decided to leave it.
> But it can be changed.
> 
>>
>>> +    DEVICE_PCI_HOSTBRIDGE,
>>
>> And this one's PCI-specific.
>>
>> Overall same question as before: Are you expecting that RISC-V is
>> going to
>> get away without a customized header? I wouldn't think so.
> At least right now, I am using the same header device.h as in ARM,

Are you? I just double checked, and I can't see yours matching theirs.
First example of a difference is them having struct dev_archdata.

Jan

> and
> there wasn't a need for a customized version of the header.
> 
> ~ Oleksii
> 



From xen-devel-bounces@lists.xenproject.org Mon Oct 23 10:37:44 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 10:37:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621310.967667 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qusJb-0000Op-Du; Mon, 23 Oct 2023 10:37:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621310.967667; Mon, 23 Oct 2023 10: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 1qusJb-0000Oi-Au; Mon, 23 Oct 2023 10:37:43 +0000
Received: by outflank-mailman (input) for mailman id 621310;
 Mon, 23 Oct 2023 10:37: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=7RLV=GF=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qusJa-0000Oa-Pw
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 10:37:42 +0000
Received: from mail-ej1-x62f.google.com (mail-ej1-x62f.google.com
 [2a00:1450:4864:20::62f])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 30e58902-7190-11ee-9b0e-b553b5be7939;
 Mon, 23 Oct 2023 12:37:40 +0200 (CEST)
Received: by mail-ej1-x62f.google.com with SMTP id
 a640c23a62f3a-9c603e235d1so473296766b.3
 for <xen-devel@lists.xenproject.org>; Mon, 23 Oct 2023 03:37:40 -0700 (PDT)
Received: from [192.168.201.133] ([94.75.70.14])
 by smtp.gmail.com with ESMTPSA id
 a19-20020a1709065f9300b009c503bf61c9sm6345664eju.165.2023.10.23.03.37.39
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 23 Oct 2023 03:37: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: 30e58902-7190-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698057460; x=1698662260; 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=XqzS0furERQEIa0Udd5fVdkBJ8YItDGEsFBVKqlbSuA=;
        b=mXaCnaXYDzkuUNxsVivXNuo8ymfSEMsOWexxusI3/15cIoIhOzZ5764Ozv9Xbs/0gw
         +toDoKw2bfiAzu4szkrIzb9XWXv662cLTzNKdVI8FDLO5ahlPYR4ekGJwP+CUNjKtrXx
         V2SLsYy2yZnoJBGrqNY3BxwfYQE0f1XdNnxDiqIpMuys67hemsv0jGXWB74o20/AzVtI
         8pLjhPvF/prmA9+SHCFxq6G6Gre8/9hIqi3ZikIeUpImJW9DG4LSu+m3PUzowXy9Z1uQ
         Nj+nhd088ImOuyCqeZIX/K2CnR54RdAJ0qRNOJ+Ko+9lF4RdFsDx7c0hRohbvhI4NdF/
         gMvg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698057460; x=1698662260;
        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=XqzS0furERQEIa0Udd5fVdkBJ8YItDGEsFBVKqlbSuA=;
        b=hIZN23wia7sQN20QqRz6F5SdItmmChidDQEOOpJLa1I4hVSgCqFhP23LlWPTvzEwg7
         zZKu1vheiHqWkhAuJ50HDlYv5TDh07WFRzfqdPp7nXzlvllTwL7BI9w60G2NlPyLhkCa
         5dK/Uu99Ts+UdsBB97+lD99LTEfMhMfdkGPybFOJGVJWVOM/KMK070GNSXo4HBcTlvR8
         2fiIUdjy2DBYIA+i8ntdr5PJTOoOaGWMNo1kBgBaDOtOHwpukaz2l7e+KpJjAvK6+MsJ
         KpsN/Jl0Yx7FgkhNXdobCtNjbI1BzsZqC4CHjw9p1nlTfjxryFGsAONlWrwf9dFwlyRK
         jtXQ==
X-Gm-Message-State: AOJu0Yy4HGVP8plZUuie+yR0Z+mW5JCzc0gm25+aTnGuq2SbCJgukooS
	UXwXk7QTpC33cDFJFHSEXF0=
X-Google-Smtp-Source: AGHT+IF6Pnl6pTP5IXpWS7lav2e62P0d6ORNpjjnMc66u202lXV43lQCGETgsA/TkTbv/+eWAPA3Fg==
X-Received: by 2002:a17:907:804:b0:9ae:65a5:b6fa with SMTP id wv4-20020a170907080400b009ae65a5b6famr6647560ejb.32.1698057460114;
        Mon, 23 Oct 2023 03:37:40 -0700 (PDT)
Message-ID: <354bb8cbe4f6d88152a3b5a1c3f0acbadb97dbf2.camel@gmail.com>
Subject: Re: [PATCH v1 09/29] xen/asm-generic: introduce stub header iocap.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, 23 Oct 2023 13:37:38 +0300
In-Reply-To: <57e16e1b-e306-fc8b-37fb-c770d8ea5fed@suse.com>
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
	 <df3a94a5670b900ddc1a2b7e8142555a09571b52.1694702259.git.oleksii.kurochko@gmail.com>
	 <57e16e1b-e306-fc8b-37fb-c770d8ea5fed@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-10-19 at 11:25 +0200, Jan Beulich wrote:
> On 14.09.2023 16:56, Oleksii Kurochko wrote:
> > --- /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)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0 \
> > +=C2=A0=C2=A0=C2=A0 (!rangeset_is_empty((d)->iomem_caps))
> > +
> > +#endif /* __ASM_GENERIC_IOCAP_H__ */
>=20
> This again wants to eliminate Arm's header in exchange.
Basically yes.

The situation is the same as with device.h [1].

So let's get to the same page about [1] and then I'll apply
the solution for this header too.

[1]https://lore.kernel.org/xen-devel/48c3c78d-465f-8102-87a3-cef3a5d4838c@s=
use.com/

~ Oleksii


From xen-devel-bounces@lists.xenproject.org Mon Oct 23 10:41:11 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 10:41:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621331.967677 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qusMs-0003Cn-5R; Mon, 23 Oct 2023 10:41:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621331.967677; Mon, 23 Oct 2023 10:41: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 1qusMs-0003Cg-2Z; Mon, 23 Oct 2023 10:41:06 +0000
Received: by outflank-mailman (input) for mailman id 621331;
 Mon, 23 Oct 2023 10:41: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=OVTz=GF=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qusMq-0003BG-Vz
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 10:41:04 +0000
Received: from EUR03-DBA-obe.outbound.protection.outlook.com
 (mail-dbaeur03on20611.outbound.protection.outlook.com
 [2a01:111:f400:fe1a::611])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id aa07abee-7190-11ee-98d5-6d05b1d4d9a1;
 Mon, 23 Oct 2023 12:41:04 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DBBPR04MB7564.eurprd04.prod.outlook.com (2603:10a6:10:1f7::5) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.11; Mon, 23 Oct
 2023 10:41:02 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6933.011; Mon, 23 Oct 2023
 10: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>
X-Inumbo-ID: aa07abee-7190-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=PSEB1WY+iwRQQq0PyLjxdNbPIMbTkA6Za8J16wO5uzEJnvOGvWD0CLrYcXb69ZSrvBtEC8P3pFDR0YO+P19rokOIrTsMM1KF9q7iXq+OCOLEgorQ8n4hDHcpzhUjyNdk+iUvWc32Ee6I8nrpiaomFJHowqEkUg63o8lgUKJucEK2LJcRA+HnzzT7gW09icIq/Bjq6PjNut/TL7lk7optB0Uy+xmLlkCBZM3LyZe5E/x0oVYujSonySa07Ad2u+PemsJxUpQ9WvNCRNfMBCrEfpmSf//RU8+ucM8y2WJXYE1Id0bioDLTcSyIxh+4mDOLSg7jBPG3PyiV/+XQcZQ6TA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=KaXZ/EqFpYS8eZVeGMBdiUOk1MfQP0UUpm9Zqz+UNKM=;
 b=VuXNSJgesCH/2RXNGTPSrgbcpgc85y8bNlpjVVr/ktvD+posj73mGfyIm9aMYCjfB1XbuhUg9spjsyPSe5Bs7BrIXoP2Gz3pv2zDWQatQEM1pfVHi/GBPXSOOEsCNzcp/vo89TylpiGV24JyJwbx5o0W6PQFi8TN+72BxKWqgAttfk2HUDaDfg+xnW8UrSK1S/5g6YkdYzmssoTCXxJ673L4D97MWKttQU92TEirtzFVzzpROQMqMm+C7y+XB2fsmoL+wh607tI5CVjFrAraEIhTsBou1TY4XdtfBe9NsBR9EKltXq2eB9CRF8X9V142gfEPnMREIxYBa6YgzBUVaw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=KaXZ/EqFpYS8eZVeGMBdiUOk1MfQP0UUpm9Zqz+UNKM=;
 b=TeZSAvLn8QNmaChgMQMnmihpuIAW8t4dMKb9bYX09YCRGHsQz/DhCexdRQHbdv4yQa8jjFsvBcl+tONkr+bbx9Ae6oIIxIuMPnulvW4QAYBj9bH3AHnabOv6UiP11kmMBvh8vvqp/E6VoRsfGch4GZ0ctQKomaZ0zFA+LX5eamm1OEO+R1eA0bGr5sVVw7mAQvEs49idSNr0Z2XOfnK8ah/rQ/YV3D1dWkYcyr3pKpZkB87b4DcmSd8HmuBtQGbovMty3vyw0QuQuViEz5CHGME8rBDXa3WmuNlvLlP8ER4TEdrSGbX/wBahyH/H9jQHkbrQADx4hYZJuoecbu8zKQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <53fd5aa9-bb3c-cf64-28fa-c24f723511b5@suse.com>
Date: Mon, 23 Oct 2023 12:40: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 v1 05/29] xen/asm-generic: introduce stub header event.h
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>,
 xen-devel@lists.xenproject.org
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
 <69563e3f41cb6971f93630d9df59395f159bd3c4.1694702259.git.oleksii.kurochko@gmail.com>
 <a71eb141-6ef7-f1bf-d4fc-832d710f63e4@suse.com>
 <1b7bec33c0931401d635586e5569279435e1ccb7.camel@gmail.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <1b7bec33c0931401d635586e5569279435e1ccb7.camel@gmail.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR5P281CA0052.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:f0::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_|DBBPR04MB7564:EE_
X-MS-Office365-Filtering-Correlation-Id: ca394dfd-c4cb-40be-1e6f-08dbd3b48d1c
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	8cEtTPQIveou6LYLBjcGAo+I93gG8XTcxClv9yiZIcikVEflV9pfqjaSRdxhUKlcEqh3lUD7TSMv2odOgz6yBeuV+pz8Q+bhZVbwF+4UgKaVy4ouHZekPAe8gQMABKtQy7djcTWct20PVVXGUJPC9dkS72pbzF4kC2QFZYZhr1pDLl2RgjLv0ECo6tkFkIad8qcPuMFzLtArlxIxt343tqUNV5xsvxhCjWeQ1QaGlIhMCwEuq6m06hlzUsLUjG8OdBo/d9j8wh80BU/heSzdfMDhIFF6hly4JYLgNG7SoVPimQ4oaUGgFT5DDw+SA2Nj9IkDSyQrAbxwvVaDvCqvhb/dGyEkVg4/4Mmc+OBZtOYDWkWpQWzquoiQz8lTW8pNgwsJQgzP5JUcxCiKJOXtuqdsCwH/3ukuZDLqPgX0rt5ddq59sJpvDA8h890Rdh+8DF2ikr3SMTDVvnp+Q557+8wkOSneCu/bx3Qm+N27e8cb5iCfjz2pbqmyB/yrzA4AayFwKPtwpbkhO5Jm+OQieAzwrPvlmJkD9NdPgyZopvWH4n08svGILx4qkLrqID9qMDwVXPJzkc2hJIaqKoVzLP9mRjCAUg8MoQtUwTE6i+4UukM1gv3uUf2J03VKBe96Iw5tTCDY+4//5atPLy8QLOM/x8c6TcMfTefe5jsdVPEv5yNDVuXZIURjpcNEHrEuvZQjyq/S2JTpHmPJyXB9Gg==
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)(366004)(346002)(39860400002)(230922051799003)(186009)(64100799003)(1800799009)(451199024)(26005)(31686004)(4001150100001)(38100700002)(2906002)(41300700001)(86362001)(31696002)(5660300002)(36756003)(8676002)(8936002)(4326008)(2616005)(478600001)(6506007)(6666004)(54906003)(316002)(66476007)(66556008)(66946007)(6916009)(53546011)(6512007)(6486002)(41533002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?dkRGMzcxZm5tcVdTdjg3VFlhRmxGV2xnT1hwSjJHSW4wQVltdDZlS1EwQkJW?=
 =?utf-8?B?dWNzQUU2SW1DbEZ4bjV3cVBGZjJVOGRkZnpKYmd3U0dtdHJ6Y3kxRHNvSUdT?=
 =?utf-8?B?dllTVEpxS0doazlSWFVkMmR0Mmg4NUZVYmphWEoxTDVvZ1lFUTNHZ1Urdkc1?=
 =?utf-8?B?dWorUnRudHY2WG1oUzZqTnpnRFFpZ2hYY2crV1hqU0FBVTRGK2pDTGJDMHFT?=
 =?utf-8?B?ZCtOSUtNNms0dlZkRW94Kzk0OWl5eFpTRElKRDZ2dk9JRU9vSklrWnFGNzNw?=
 =?utf-8?B?bjhNRm5KL0Y1NS9pV0NtcUhpMHBXdDhpeHM2NjY5VytxYVl5YWFGQThRUWk2?=
 =?utf-8?B?VXM4NldNOXc5ekpLQ0hrakxTRVBKR2oyNXpQRkJ2cElrQnQ0SmxKR0hNeWw3?=
 =?utf-8?B?bG9QV2tUSHVvb3lxMDg1c2NUSCs1RjJuclFaV1dmcVFZajliWHFlWHNLb0NT?=
 =?utf-8?B?dU43TWJyMEQvb0tSamo5Yjk3alp2Z3ZFbFdwdElkdFZHZ1Z2aXl2Z21wY0FS?=
 =?utf-8?B?OEVDUW4yM1pyZDdha2ZtdlBqUFlKSTg4NlJuRWRqQjhBQm1GTWx4Q2paY05S?=
 =?utf-8?B?TkZuVDltUTIxY1RnR3J0eEhuM29kMTBqWVJjT3IrUmxhY3RTRjlaY1RWRFlV?=
 =?utf-8?B?ZDN3d3JGMVZKbTl1UFhtYnBoYnRsYTB4SUdEZFkwWVhlTDlWTGRiQzlqaWt0?=
 =?utf-8?B?d0dRK00vQjlaVVRNTE4yZUwrcnl2enRVT2FZeWw2ODN3S1JlOTZYNUN0UTZh?=
 =?utf-8?B?Y2I5ZTA5YzlhM2MwSlpnOTU0ZGl6UjdGTTc3YnFuRjV1NCs2UnVNT1dVNCs5?=
 =?utf-8?B?ZThsdXVRcWdVSzcxS055K0Z5TXpab1cwNUYvR2FPNktLblpiZ0xzSnFhYlpM?=
 =?utf-8?B?VFRBRmhLWU9JelhjU0RXb25ubitFRnN5bnVNTUZiVnpIU24xTFJpUUtMNVNK?=
 =?utf-8?B?R0JZRHZXY29oREVOOUc0Smg1UTVaR1puakgvVTkvWHhIOFFOU09KZ1c2Zk1S?=
 =?utf-8?B?cGp6clBGRmpNVEZraElOb0NlWDhnN3N1K0gzeE5tUXdETTY1aWZzWHR6L25k?=
 =?utf-8?B?UWlqYk82R0VaN2FSdE4zb0pKem1vakE3TGlmOWVYMDZZRGJyWUwrTm5xWWNh?=
 =?utf-8?B?MlhRTjZQdDVjSzdVQjlxbnFwUDZZQUNsRnh3aGlkNkN4N1NSKzJOTHFYcmpX?=
 =?utf-8?B?MFUxOEJWUThGK1F6dGNCeWl1b3VGZ1VPM1AyMUorL2RPOFk4REk4WWtuWUNj?=
 =?utf-8?B?RWxPWDVtdGlhQlF0NFAzVGN1UTE1OUt0K0VGQ2t4VlpvaERIWVptc2sxM09p?=
 =?utf-8?B?cU9MMmFIelpERlZEcXErTEhQZWxzTHljUzMwYUk0c1R1Ylc5RFV0UkNRTklV?=
 =?utf-8?B?SDM5bUVxUzArdElhVEhlM0Rxckc3OXltMzczNnNhbVcyd2MzMkpFTWxhRlcw?=
 =?utf-8?B?eldHRlFJSDBXM3Z5UWsraHZYWlV0VkFWYllkUWhHZSs0bkl0eFA5bDErNGJt?=
 =?utf-8?B?YTJsdXVvODA1aG5XbVdra0IzZ3Y1QlQ3c1BBQURmVWkvVzc1VGtTZXliT2p1?=
 =?utf-8?B?VW1PNm1VcWcxWm5XTW0xd0xDY25ESTlEcHFRMEJIeTRKdlJMN1BxdjZSV0FH?=
 =?utf-8?B?TW9uVGxQMzhrWTg4eVNHWnZYejlCWW1ob0VpbUhQU0xGdjdHUDIzSEkya0Ro?=
 =?utf-8?B?TTEzMUgrOVlsVXNZd0V3em1xQkNZUTRWN01XQlhIMm1lTzVWUHZLYjZrOHJ4?=
 =?utf-8?B?Ri9CbkloQ0pnQnlDYWdKR3ZTMmZWaENhQU9VcFY3ZFdnREJ1SWsvMXBNWjB5?=
 =?utf-8?B?aWp6OFJmYUkwa05zSUg3aTlPUzhYa2E5WW50Tmh6dURyR3llUlkvNkZENjRD?=
 =?utf-8?B?SGQ0aUJPZkhqUmRlekg2Q1pwa0hZbStrZGdGaWJkOThBZldoSStNckVldTB4?=
 =?utf-8?B?SjZsRWhnUXVVTS9iNld5Q1NHK3oxdldCRXNXVjlUdUxHSW1XeWkxbFRTR1Jr?=
 =?utf-8?B?ejRFb3ZqR1FzU2t6S2ZqTmdRWTczbXAxS0VlbjZyUzBVUDhuL1pZWGFwdlNo?=
 =?utf-8?B?OTFuL0p5eVhXYzlJN1BKR0w0OU44ejlNZDZiTzMyNURXdks2R211czZlVXp4?=
 =?utf-8?Q?qx7cJnrG/zWxu9FW7cX8Di7wY?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: ca394dfd-c4cb-40be-1e6f-08dbd3b48d1c
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Oct 2023 10:41:01.9631
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: /DOhKUjfZzpq/rYrJgtdTyVxjLRWkt+QpEoWevT8/4NWqWil2An8OijKiMeIgEqCX5FdH7GXt1Nd+6RtxYG7Ug==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBBPR04MB7564

On 23.10.2023 12:23, Oleksii wrote:
> On Thu, 2023-10-19 at 11:18 +0200, Jan Beulich wrote:
>> On 14.09.2023 16:56, Oleksii Kurochko wrote:
>>> --- /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)
>>> +{
>>> +}
>>
>> While this will satisfy callers from a build perspective, no port
>> will be functional with an implementation like this. Yet the
>> generic headers need to provide the required functionality, not
>> just build stubs.
> It makes sense but then we will have the similar patches when new
> architecture is introduced.
> 
>>
>> Going further in the series, I won't repeat this kind of comment.
>> Unless others disagree, my view is that headers put here should
>> be of use beyond initial bring-up of a new port.
>>
> Then we have two options here:
> 1. leave only declaration of the function.

Which would then require a stub to be introduced in the arch, or else
linking will fail (unless all calls can be compile-time eliminated,
which I doubt would be the case here).

As before a requirement (imo) is that headers introduced into
asm-generic/ are functional. An arch would introduce its own instance
if it wants to do certain things better, or if it has further needs.

Jan

> 2. remove it from asm-generic.
> 
> ~ Oleksii



From xen-devel-bounces@lists.xenproject.org Mon Oct 23 10:43:32 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 10:43:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621336.967687 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qusPA-0004XQ-Ky; Mon, 23 Oct 2023 10:43:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621336.967687; Mon, 23 Oct 2023 10: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 1qusPA-0004XJ-Hu; Mon, 23 Oct 2023 10:43:28 +0000
Received: by outflank-mailman (input) for mailman id 621336;
 Mon, 23 Oct 2023 10:43: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=7RLV=GF=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qusP8-0004Qk-Fq
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 10:43:26 +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 fd85624c-7190-11ee-9b0e-b553b5be7939;
 Mon, 23 Oct 2023 12:43:23 +0200 (CEST)
Received: by mail-lf1-x130.google.com with SMTP id
 2adb3069b0e04-507c50b7c36so4266077e87.3
 for <xen-devel@lists.xenproject.org>; Mon, 23 Oct 2023 03:43:23 -0700 (PDT)
Received: from [192.168.201.133] ([94.75.70.14])
 by smtp.gmail.com with ESMTPSA id
 k27-20020a508adb000000b0052ffc2e82f1sm6274689edk.4.2023.10.23.03.43.22
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 23 Oct 2023 03:43: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: fd85624c-7190-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698057803; x=1698662603; 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=kouX21kUd9TEIwjYLs2hVM+ZWT3UAEPPsQQiKW7eyuQ=;
        b=kwStfbLPOE//KxGhtrv+RsW3NTYYmQo7u4LVpJOOq3SBouJ68jstzUBoF+Buld2Irm
         U1XJgu2UuPCi5EyO0zZl7fmy5e4WTzARLD9R8lts/XWsjq/wtjPrJsJJzzL4FCHVMz1L
         UqiWcVs2GJ6TmxN+hHMMpflUlKaZY0JfGQC8BW0qIEnncV8eg3INQ8dBmQ+86LGOjVay
         o/zd6y50y4MFeh3rnfmRYBXSbI/8t0ESBxA7hb8ul9HpC9T59GQTJgQw4s8kccnw9Ap4
         bsf+v2P5Fr7+1WrdZ33JOzGYprc1FtjLC6A93sgO11i5DMSvLv27K4NkxlINT24izZsh
         dtYQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698057803; x=1698662603;
        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=kouX21kUd9TEIwjYLs2hVM+ZWT3UAEPPsQQiKW7eyuQ=;
        b=gboINe2hiSqD2u9T77oHqLmF9nLdtGR8lUaZIrF441F2wXB8HH1kX3DtjUgg9LKBst
         1m+yIFo6k0GgpEVq+mu4M5x1X5UFpZUgnDNfVXythxRzIPBa2h8rBL3nwNi9qbbeucgN
         lwktKJekeLL9mwGuBTLii+ijFW9+aUVpjpKxjPswCQTTcvk9UOmpOKNHe1Mi13HNpTMQ
         3dasgRxpucQvREZvbCwrITZ9EQSIBVOpEsb+T92kKvo6aDHprvywbhjUmp/Im1sGAAW5
         y7eRHA/gkFL9jhz2+ONoLk48m9vzEBcVqGjz+MpgRY9VLjY69ZKcAGn5KAt5JrOQvEbY
         my5w==
X-Gm-Message-State: AOJu0YxD4g2VbAjk1n8qWima0ujoHtriF0pBtHS4vvyMYxO3Z54izu43
	+ZTLqIw1ndm7K6PTMupyMwA=
X-Google-Smtp-Source: AGHT+IFeGzToe5Yh3vRrUyjN8BdMDVovGPaSuCBVv0PgyfnfHelYzia1hf68y+C2Ipgtov9dJjlrwA==
X-Received: by 2002:a05:6512:4885:b0:502:9a2c:f766 with SMTP id eq5-20020a056512488500b005029a2cf766mr6662533lfb.30.1698057803211;
        Mon, 23 Oct 2023 03:43:23 -0700 (PDT)
Message-ID: <e1e26fd0a31c7ab14e474d6d7fb16163e8163f2b.camel@gmail.com>
Subject: Re: [PATCH v1 10/29] xen/asm-generic: introduce stub header iommu.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, 23 Oct 2023 13:43:22 +0300
In-Reply-To: <65cdbeaa-6766-e5b7-65fb-191da6f59d81@suse.com>
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
	 <8990c5c77c12333bfa7aba42b66bf7fffee5a096.1694702259.git.oleksii.kurochko@gmail.com>
	 <65cdbeaa-6766-e5b7-65fb-191da6f59d81@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-10-19 at 11:44 +0200, Jan Beulich wrote:
> On 14.09.2023 16:56, Oleksii Kurochko wrote:
> > --- /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__ */
> This one's perhaps slightly more "interesting": Yes, we have a
> HAS_PASSTHROUGH Kconfig option, which both Arm and x86 select. But it
> is in principle possible to support guests without any kind of IOMMU
> (permitting solely emulated and PV devices). In which case what's
> (imo) needed here in addition is
>=20
> #ifdef CONFIG_HAS_PASSTHROUGH
> # error
> #endif
I am not 100% sure but not all platform has support of IOMMU.

And I thought that passthrough it is when a device is fully committed
to  a guest domain with all MMIO things. So it is a question of
properly mapping MMIO to guest domain. Am I right?

~ Oleksii





From xen-devel-bounces@lists.xenproject.org Mon Oct 23 10:45:12 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 10:45:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621339.967697 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qusQo-00060D-Vw; Mon, 23 Oct 2023 10:45:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621339.967697; Mon, 23 Oct 2023 10:45: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 1qusQo-000606-Sk; Mon, 23 Oct 2023 10:45:10 +0000
Received: by outflank-mailman (input) for mailman id 621339;
 Mon, 23 Oct 2023 10:45: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=OVTz=GF=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qusQn-000600-Lx
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 10:45:09 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com
 (mail-db3eur04on0624.outbound.protection.outlook.com
 [2a01:111:f400:fe0c::624])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 3be21f98-7191-11ee-98d5-6d05b1d4d9a1;
 Mon, 23 Oct 2023 12:45:08 +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.6933.11; Mon, 23 Oct
 2023 10:45:06 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6933.011; Mon, 23 Oct 2023
 10:45: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: 3be21f98-7191-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Gr5HjlkXimy2NxfhTyNIpU2PqQJIyghEeVOkDMeNWpPmoOTNXzR075fEaisvlBuZbgklvw53up4oKlIVUVhbQoOYowa/ttcOIyC8Yqo8VVxBxvhmqGlyuz4AJ2yDB1NRGM4gkj5edctO6zLYhcVtHGbsdXUiDnA0RyHaL5QhlaSAjNn7AZMXKb8Q9G4GYxrKbE4+yY4+hVPIJhN8Cdj3aehSfF+ZHCum1zpm49aRHk8ZzA3sLLE8QYdWm4Rn6CT5i1BxVVYcSzNxe06z1S0ZSVsX8zEt6vmOt4CBfRS7Znat90lpUfBMEVtrP3UnJiR8NNpFl7iA1/Qr6FcXaGtkPg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=1WrEJq6GHbceI60mOoVZ4AhSkq3MWIYPGNLx94MPG58=;
 b=IGVN8o5o7Zjy8j5gdzypSNezNEVEgeIx5GEMQDrqZxJVPGIv4ZaZSumgHXxJf7f4bp/q1FijQ6In+1P8E0mbQzGRwtpx8F0DR5iOY/DqRN5b0+J4Ut67PbGpaQwFo/OjEj3w8sQYC+TFjWexLDWRsxLLCd73inRS4bfc0RtjoRBtVoBLpg4wTUwT9pV00mrjQrDrD+V1riD7Fv2bmLO/2lAG/j36+LyHNRFgQ/nQPNNQtnzcT/lmPrFw1GqFvEiDbWkgj6MTtWCVwLDOLMfls8vgb9NTJQbgePWHR84d7r3IuGpVxUpRVeAXTCRrm02s6shJCL0HJ58m0qHbdAvpfA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=1WrEJq6GHbceI60mOoVZ4AhSkq3MWIYPGNLx94MPG58=;
 b=wE3RYWahjCFDW2IqgMhDC7FaZHRHgowx/ZRMkrokDuBhcL03FMMT+vjbz0AZXkpHUf8C2Q5B7VlxFxviA/wW3QnSiqmskh474odOQEC6BmCn+CMPshgiQQZiXXlwFdLYC02o/uvUxOqJdLJEBFR4HGXfL9zR03xWc7XfAkWWbSn4jOQJXvfdRz8XEp/ghVV6PAS4klQGnXyvBDjr+XmO/bvqkPTHcMbWQx2kfGeYtKznyMwc6lBqalIt7FjASRudxnWNV6lIgQXO7nTXfQt++ZzeyHf/AO7Jns3rwVzrqRekmQH7MTlGA0YySpeCOg3nbr9MNjVwoKY2ED8qisdoIw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <7a497285-13f4-963e-0c48-d33cf32ff458@suse.com>
Date: Mon, 23 Oct 2023 12:45: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 v1 06/29] xen/asm-generic: introduce stub header
 grant_table.h
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>,
 xen-devel@lists.xenproject.org
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
 <f3efdfc93780b62be93fecec68860e12026fe66c.1694702259.git.oleksii.kurochko@gmail.com>
 <3e13d1ea-c242-46ac-c692-8f2237d2a23a@suse.com>
 <9bb801f1c45cac24f3e3ed3abbbbf3f260a549c8.camel@gmail.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <9bb801f1c45cac24f3e3ed3abbbbf3f260a549c8.camel@gmail.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0346.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:f4::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_|AM8PR04MB8034:EE_
X-MS-Office365-Filtering-Correlation-Id: c69d6d7b-9708-48e6-53c3-08dbd3b51f05
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	JYVvytBe8jN7pNeqPrK8v3eli55qCevurFoA1JEqthNm71Em4vmF0DRJVCUfFs8p7RPrAd1trHyJ/CF/H5rG8TmoE17/Hb5X7tgvyLzbqmw2IZpSraHp2iKC1PHOd+tusVUqE5Z7swps3rCKElBkKS9v05kLlq1DGLf9uPSqfgCm28vwyUY4ewqIwfnNCl/BRRsxZz0H/MuK7cJZe54JMuls8LgvmVSLPkpjC9voKh6YSrtlv560t1XUH2ZvSraViQ+YdmDMUJibekczByyJIG8R5nrmIwAlOnzS/+PzKZ64C67R26zSNkyPGVZ0mqk2Ta3gRyX3yTxF7VOQEDR8lb9q+b+e3TQjK8nBq9S9kkJpA/06jWO42Mk6zm4SJLsOMOG72RgDl5WIRPcccEZzlLTWt5FpwpG/a40XH0wcJx5mtZ+XBERDPIl9vW+yehqlWh0vugdFhEj32I6KUsaQPS9ze0LCXO4NXcJzN2gvi8LU9TQd+CB/3+AAJRbHOo9cBbjCQ5tE3Q/Ni7iUYd+82yv6/CqFdYShonRf9WwHM/PwyH1GgEWfl4KZd1oP4BlbS9R04FsxJ4MQo+REJEdOBBz0DaZ/AlWkoESUtBtuai4n1f/HE0FZzHRJD4FmRPBca3Mkf31OkJvr5bxkpds46Lz64ag3J6M9W0p1AS0YELQ=
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)(39860400002)(376002)(230922051799003)(64100799003)(451199024)(186009)(1800799009)(478600001)(2616005)(26005)(6506007)(6512007)(53546011)(66946007)(316002)(6916009)(66476007)(6486002)(83380400001)(31686004)(66556008)(38100700002)(54906003)(36756003)(4001150100001)(4326008)(31696002)(2906002)(5660300002)(86362001)(41300700001)(8676002)(8936002)(41533002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?bDE1V2dGZGlOaXMrOVdGQXJWbFgvTlpscDhaUEtXOFVBQ1dmRE1rUnlCR2M4?=
 =?utf-8?B?Y1pYTGlmSnFXaVdoNzhnQUx3WXk0cEZvNXJzTUlLUWdNUnRxTkpOMDk0dVlI?=
 =?utf-8?B?dVNnU3p3QktMNXB3VTQyUUNPTnhqcU1NZ1BOU1lWRG84NGJlVmdPWU80WXVU?=
 =?utf-8?B?elB6bGFvSWFwNlBLS2xzNzhrS2RlanM2WEFMMlVjL3JET3hqQXIxZ054UW1I?=
 =?utf-8?B?SG92cVhBNmwrdkUySUh6NWZobXZLYWRGc3F5dGdIY05ZVEVoaFRoRC9TbjJN?=
 =?utf-8?B?b0h5ODh2cjNNVmR5bDcwaXEyaDdIeTg4ZWR6OG4rZCttM0ZKWGt1WC9KYjdJ?=
 =?utf-8?B?UXRmaUhYemJuekFWTUJUd1dtMWRHbGwzYk0yT1kyc2pTU1F6cDg0dXFOQnpv?=
 =?utf-8?B?eWhZYWczdjBDbHZmUVhFaEx2b2ZSZDZlbFk5NTNUUER5OFVjTFU2RVpyWnJm?=
 =?utf-8?B?WVN0SUFIeUpoNk5RMVNRM0FTdGFyclZiNnJuWjFPYUhrdlNyT0xxSm13NlNI?=
 =?utf-8?B?YXVaVVNVZlhTYVRQU1RSenVmaDlhR3A0SldSYXpEd2d6aityZE9BV2E2aW1p?=
 =?utf-8?B?bkdVMlA3QWtnY0E1NElmTlA4NHR6cWIxZ2JsRDJuZ3VEbExJamVROENrcFha?=
 =?utf-8?B?cHdqZE5DdVZpTlk4bitPODBTNmJtTVBDd2JoYWt1RlZwTElRVHRCVCtqSnAy?=
 =?utf-8?B?clkrVWY2alRUMEZRZGVidzJoQ01FSHMxYTkwaWR0cm91VXY1RnJhUlZKWWNB?=
 =?utf-8?B?TkVza3ExbHpSd3VhN293YW9MN2pOSkdJa1I1WVBSNHBFdVZ1bHJUdzJKTkJw?=
 =?utf-8?B?SHJWVEtKU2FWSlpUK0N2cWs2cTR4czVFVStHMFQrZ3FUWjZaYWlGQ2l3VlJE?=
 =?utf-8?B?dGdkcGlENG00TitlRjFQODA2YTdydTNCcVRLd1d3NkRCMXIyL2VyT2JnT2JN?=
 =?utf-8?B?UzN5WjRFNDJUaTJPTG81WkRQbFFUOEZ0bkJmcGlmVXlBd0NQQVN0eW1nNTNB?=
 =?utf-8?B?eWEwQ0VJdnhoWVJwRXczTDhYRlhZaGxhN3FpZUg1NDdubGJ3Zy8ybHlNMTR5?=
 =?utf-8?B?dlJHNC93Qk5EV2hsMmhnL3lCK3oxUm5aQUxWOWVjLzhvYkM5YjdjaFpXbXgr?=
 =?utf-8?B?UUNKQlJBL05LM0NxenJ2TFl1UlVZVVl3OG91TU44YkZUZU9HL0YrSVk2TTJV?=
 =?utf-8?B?c3NhZmZycWxHTGZmczl6Qk5sS0RzTXo0Zk5KRDVZTGNLT2lJZW5pbHY3YThH?=
 =?utf-8?B?N2Q4OG1Bak9RRldGTlJaSkFielZDZlN5Mm5qY3lXNGh1aS9MSll5WlgzZXAx?=
 =?utf-8?B?NkJlTkloMGJSL2hnbU1sN092eGNubXk3Q2Z0K1ZHVVI1VFc4a1R6QnpGdnN4?=
 =?utf-8?B?NVBaSnBYRG1kSE9DaDhORDMyVjY3dnpsQXRDenRyREdHVTY0VTQ1aFFtd3RL?=
 =?utf-8?B?NjBZRG42WkQzSTRtRXp2VHArdzdXTXd2bTVqelpNQXlwVXMxVzVXcThVTTgy?=
 =?utf-8?B?V1pxaXJFQjNpQXgzekliRVJza2N6ZEtXUFhXYWhOZU1ZUTNEclBLcy9Wckln?=
 =?utf-8?B?UmNST2NvNjFOQTk4STJEOEp2bm1ZeDhnV20xUVpRSTZZZ3U1Y0k2SFgyQ21u?=
 =?utf-8?B?QloycVRWRlFlR3Z0Mmg4OGtNWHpKd0tNZVhueGdUYUxvN1k3MkpHWVNKUFhz?=
 =?utf-8?B?NGRUVEZSRnhMVkdQaDRqclliSTZ6bUFCZ0hZeGZiVldiV0hnWmVmV1lXbDVo?=
 =?utf-8?B?cTREUEg5cGQwZ0puUDJaMXRLano4TmVrK1lFRFVHejRXVS9ERklTeFByZ0V5?=
 =?utf-8?B?RExhZ2lnMytBTm16Q3NLR3RWdHJtWHNPeGJpTWxwa1F3UHVhSDRvcnAxSnVV?=
 =?utf-8?B?Yng3S0ZlalRjNnVSS25tYXo2VSs2Y3RQcVVWNTlMNlpUWFBicWN2djRGbHYv?=
 =?utf-8?B?czRkU2pycXQ2TkRyMVpiNHhhcXNyTGF0UjFJaUVOQytwSmtEYW83VmNxTzFO?=
 =?utf-8?B?YmFvN3dRNzBEQWsxRmNrTWdqeEs5RThxWllxMHpCcHprenh3YU00SUpkbEFF?=
 =?utf-8?B?Z1dvOThMeW8yOVorM01ieE43azRHTjNhclB2c3pmc0J2QjhiTE1nZy9sMk0x?=
 =?utf-8?Q?oKU/TYM5KT9PKxCS1iApMThNz?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: c69d6d7b-9708-48e6-53c3-08dbd3b51f05
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Oct 2023 10:45:06.7096
 (UTC)
X-MS-Exchange-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/jgoP0i659tSVH0vSTsy/e2drzP718Mx/U5x9NvHpWlzsPNIIc7m2v1JbMwHpmPRll4QHmVZyO8nSn1cXDHRw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8PR04MB8034

On 23.10.2023 12:32, Oleksii wrote:
> On Thu, 2023-10-19 at 11:19 +0200, Jan Beulich wrote:
>> On 14.09.2023 16:56, Oleksii Kurochko wrote:
>>> --- /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__ */
>>
>> This isn't going to work with CONFIG_GRANT_TABLE=y, is it?
> Yes, it won't work with CONFIG_GRANT_TABLE=y. Missed that as
> CONFIG_GRANT_TABLE is disabled for RISC-V.
> 
> It looks like it should be moved to arch specific folder but as I
> mentioned before I don't see a lot of sense to introduce an empty
> header for new arch each time when it will be needed to enable full Xen
> build.

Here I'm okay with an almost empty header in asm-generic/, so long as
it properly rejects CONFIG_GRANT_TABLE=y (indicating in the diagnostic
that for this to build an arch needs to have its own header).

However, then the question again arises where it wouldn't be possible
to have xen/grant_table.h avoid including asm/grant_table.h when
!CONFIG_GRANT_TABLE, eliminating the question whether to have a fallback
header in asm-generic/. If that's not possible, the reason may be a good
thing to put in the description here.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Oct 23 10:45:29 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 10:45:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621340.967707 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qusR7-0006VF-5y; Mon, 23 Oct 2023 10:45:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621340.967707; Mon, 23 Oct 2023 10:45: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 1qusR7-0006V5-3O; Mon, 23 Oct 2023 10:45:29 +0000
Received: by outflank-mailman (input) for mailman id 621340;
 Mon, 23 Oct 2023 10:45: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=7RLV=GF=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qusR6-0006T3-9m
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 10:45:28 +0000
Received: from mail-ej1-x632.google.com (mail-ej1-x632.google.com
 [2a00:1450:4864:20::632])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 467cbf66-7191-11ee-9b0e-b553b5be7939;
 Mon, 23 Oct 2023 12:45:26 +0200 (CEST)
Received: by mail-ej1-x632.google.com with SMTP id
 a640c23a62f3a-98377c5d53eso442920066b.0
 for <xen-devel@lists.xenproject.org>; Mon, 23 Oct 2023 03:45:26 -0700 (PDT)
Received: from [192.168.201.133] ([94.75.70.14])
 by smtp.gmail.com with ESMTPSA id
 ga23-20020a170906b85700b009b65b2be80bsm6413081ejb.76.2023.10.23.03.45.25
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 23 Oct 2023 03:45: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: 467cbf66-7191-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698057926; x=1698662726; 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=zQddtfZqwnBmd7YG+YPi0IkOAC7O/v33wk03US+cy3Y=;
        b=KjACse9tmkSDZ+mL/E0I59KBpZMghXCKx1HPnLx1xuYHORr786mGTqxihrzqJP1L/F
         RW+FRmXVYIQ35oV51Ujw/nChxtmZhEeFEFKLaAB9wllun4etP1vR3ORfilDHJWuq7CYN
         n715E8x3gshjQEHn35vUE3UdEi0tlQtywatXsgbeMVAUmIG6zH5iFyzJADCnO+0ZLJ2a
         UUq88/L0RpiaTkvoVE1pPr7MMgRs7isCg85HE7sV81Uq8zLZL+vCOXJE8tIjkII8iw15
         hilzIoQWYVv4+nO+8cS4olPUc7uaf1XmVJnnaNujAV7+GAj4+HfD5RzhkjHLMacGqpJt
         54zw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698057926; x=1698662726;
        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=zQddtfZqwnBmd7YG+YPi0IkOAC7O/v33wk03US+cy3Y=;
        b=XIqNRuVebM+n3hFNSJ+23s4hJh9o7pkM44N2jfRKycftKhnoNWSlrK6ai6n0sAmfoY
         yM9lUU0avfdhb+ef3tnApkpXfofJjzg9m9LHtvifyq9sZ95/FvTrDqkPRpc73mDBDV7V
         I4VULbRrXsbjF1SHn744I3c4p1ScvqVydHk4k0INdMzxaQWy2ojJxTIXF1FQIP/kls3s
         9p6e22upESz7W8r1IYLg6XS0uphBhLNMRuZp2mlpJgiYuaGtDhZmI4laQu7kn1kepYxb
         F5sEp4ZECxt/XlenFaiSewAfimkG79aw6n+xMQoNHZROmc3omhOJROa40xA7vrEelz/p
         atLg==
X-Gm-Message-State: AOJu0YwPpPTJhqaLsPy5E8N3KEAXFT3et+fCdx9YbOrOpmcMqWIG5Deo
	GetriQm3BzwteT+CBSa0/ZE=
X-Google-Smtp-Source: AGHT+IFR75jW0k2WG8jy0BvbKJE22VNq1u8c9QoUd7eSUJnEOG3pdATo+ti/r3ivKdNLUj0qakoFNg==
X-Received: by 2002:a17:906:dc92:b0:9c7:59d1:b2ce with SMTP id cs18-20020a170906dc9200b009c759d1b2cemr6136410ejc.5.1698057925727;
        Mon, 23 Oct 2023 03:45:25 -0700 (PDT)
Message-ID: <e25e6a73d926cc7a3c1bd426c5f42c42af4e7f6a.camel@gmail.com>
Subject: Re: [PATCH v1 11/29] xen/asm-generic: introduce stub header
 mem_access.h
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>, 
	xen-devel@lists.xenproject.org
Date: Mon, 23 Oct 2023 13:45:24 +0300
In-Reply-To: <3cff4f87-0da3-1e46-4b86-c43c02dde064@suse.com>
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
	 <79ed96f65e7c7f4036cf62ba6b5b44a371c758ee.1694702259.git.oleksii.kurochko@gmail.com>
	 <3cff4f87-0da3-1e46-4b86-c43c02dde064@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-10-19 at 11:51 +0200, Jan Beulich wrote:
> On 14.09.2023 16:56, Oleksii Kurochko wrote:
> > --- /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
>=20
> Does xen/mem_access.h actually need to include asm/mem_access.h when
> !CONFIG_MEM_ACCESS? Without that, I don't think this header is
> needed.
Yes, it won't needed. I'll update xen/mem_access.h header and push a
separate patch.

Thanks.

~ Oleksii


From xen-devel-bounces@lists.xenproject.org Mon Oct 23 10:47:26 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 10:47:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621344.967717 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qusSu-0007vJ-Gp; Mon, 23 Oct 2023 10:47:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621344.967717; Mon, 23 Oct 2023 10:47: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 1qusSu-0007vC-DX; Mon, 23 Oct 2023 10:47:20 +0000
Received: by outflank-mailman (input) for mailman id 621344;
 Mon, 23 Oct 2023 10:47: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=OVTz=GF=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qusSt-0007tn-OY
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 10:47:19 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 (mail-am6eur05on20624.outbound.protection.outlook.com
 [2a01:111:f400:7e1b::624])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 8973f27e-7191-11ee-98d5-6d05b1d4d9a1;
 Mon, 23 Oct 2023 12:47:18 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PAXPR04MB8157.eurprd04.prod.outlook.com (2603:10a6:102:1cf::24)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.14; Mon, 23 Oct
 2023 10:47:16 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6933.011; Mon, 23 Oct 2023
 10:47: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: 8973f27e-7191-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=NbBqsMAIgJqMBBJ1X/u9leo/RmP0CfR4AARivQ0QiU1suxFrV/V0RXx2LSidP2u1Qf8M+31TiIyoG2MWjgbvjiMVJ3dd3bSbhDSw/h3TJ9xCXQUNxD6BnvLWEAgSOhJ5xBYqOWklw7wSMAupWr0EWJszZrZlA1PfLQK1LOCDZ1sQIvqH32rvuMxcX9SO4qDwJ9dFsYPYVmfjiuuDb+ooHKxPM5P/rmscVEhHhlEilNaDQK2E9unjECKNuVgRENLgG7o+Zc8Diz1ezKm1ttHEexoU99Y+htAZiqa+UL86fe4b9M0mfZrlYBOmt7J69eWKOeAJ702mh28TJGQWu89rNA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=EMVdrAofRWOmzzaTnPAS6V+OshazwYhvWUdWrgBldH0=;
 b=NQgPALbZ24EHBFN2bb38OU4xbMFT4p+LMwWmP0PSNFpcP7H+1gkeJ/8tqxq8IICS5MeMWNPkq5i6j/Oetk5taSFvq7FDar5GxQ7khJYy4VAs7tukuexVrzpNToOKuzxtFON6b2LZWvgufNbdh06kqFVg8A9RaT2BoEQe0pv0nbUwOORJ/g2L1eJbuLPMJ2kzQY1sdR/JBoYPbULGWYB/GaVfG4wmL7UHK4MSPP4MNSinB42WmA4Na4n3BgpxoCR0wuOSitsKfrLHBCdNSIBx3GdTfxWh/feuSNInTY0a/jtaOH21uf6q311R+EuiyDu5cpEiYgbX1pi21gc1u1s8YQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=EMVdrAofRWOmzzaTnPAS6V+OshazwYhvWUdWrgBldH0=;
 b=TG7fWWKWU6W30gpbT18ewlw6aHs8zjKhoGemuTWuz1qsQZDvJBa/k4pJUmbl24eMT04G5O0yFhhphRv854F5kNiUiZZvtH4U3B7GDVTHzVr0xsAaT8Ig4b5Fz4W+IHK9RSinflQEnt9WxNE7ZWFgSRYrKTOa+lS/lG5DEoLgYblVA95dR44hkMiWUUFaFIM7dNU9XgETvLcgjFiJNJjv+cc7VMBH5TRJcpcLXp8BF70h++kmVPYSk9zvIthb48XoAsf3wzTg5q2jZc2UAEhNKQjplRvdsT7fySeDJDMDHsFC8tML/TLb4EvtRKAS3nFCiRR7drOQxDP7VYBdVgmR5w==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <176d38b2-eafc-7a78-ee17-0d5e0369cb2a@suse.com>
Date: Mon, 23 Oct 2023 12:47:15 +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 10/29] xen/asm-generic: introduce stub header iommu.h
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>,
 xen-devel@lists.xenproject.org
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
 <8990c5c77c12333bfa7aba42b66bf7fffee5a096.1694702259.git.oleksii.kurochko@gmail.com>
 <65cdbeaa-6766-e5b7-65fb-191da6f59d81@suse.com>
 <e1e26fd0a31c7ab14e474d6d7fb16163e8163f2b.camel@gmail.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <e1e26fd0a31c7ab14e474d6d7fb16163e8163f2b.camel@gmail.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0187.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:ca::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_|PAXPR04MB8157:EE_
X-MS-Office365-Filtering-Correlation-Id: 916e46db-b954-4f59-43cd-08dbd3b56c8a
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	EQtHM4cJSZ0bfLIbt+jPPvUfYZicZkQ4gbkG913Tallq/eTu7nJCEG6BHsPnlEmp7QNmtjaCXV0UTpCYjX3FHMn6lGneKO3/KyDG1MDJiPITj1lwu1/scPndMMXk9cTMCSaOa6E+PSwIzVUF8BxoR4B16LlIKewu5NxgS1KzshlIlu1FZ96K7TVZSMaDnHFjKPk1Qhw5JLP4D/wdRMQ2K0SbsVkQ25GJsyno3c0df4ACSTTZbgtmo2kt9rwLJn/l6VFKGoujL0t/DaPGd2Agomk8u+FITurYgGoJTDQAubSNMQdAyGUUmEfbbDlwJvMsmBAknA1RXcN8qsRjVBjYAQH3flGh+Q1czy3VAqt1FhmIqL9cPj1/1NvmaQrpDQnGbFs8xlOIGPcMWS6OilcthdV+L4J2tDhAGFmvrUXBlP79ezLAMjVxR0zY4/vhvZeu12nHd4bC68g5y27TPX8/VBUpok40KrQ8Od7a8ldqmcI8lKd5VVoNq/Mp0eOXvWymnBVhFIajwSpRm8uq2MXiAOcjEgRjprrFXw9up7SZvL6BXsO+xPUvUUSMmMG0C4LRkpC+wRAq8j4dK++Ko33YfMUKVftrZkfYH9Zp+ohP7HwwOjyGqaI94vbnpd7x3j6j71IsXEzU5dKAejGdHGoRvJbgBhpJhaRun/uwuv7TnS4=
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)(230922051799003)(186009)(64100799003)(451199024)(1800799009)(8936002)(8676002)(4326008)(41300700001)(4001150100001)(2906002)(5660300002)(53546011)(36756003)(6512007)(6506007)(2616005)(38100700002)(86362001)(66946007)(26005)(31696002)(66556008)(31686004)(6486002)(66476007)(54906003)(6916009)(478600001)(316002)(41533002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?OHQ4bnRLZG9MVHRmbzBrOWtrbW9RaTNscWtCY1VXKzFYVFJlcFBNWElUb2lp?=
 =?utf-8?B?Y0VwQk15SjV0bnBKalBPOWg5dVFrTWFDVFdSa1k4eUo0T1E3dG54dXBnSmpi?=
 =?utf-8?B?clJlOGVSZzJqRjZBMi9wL1F3T2JKRnVFSExJZEd3ZXNHS3RWcjJJYlZUeGVR?=
 =?utf-8?B?QnEvZTRQOTk4bGoyT29FZjMzQWZlSFFwYlN1cXJKN2VLaE9IWTBjUXd5V01Y?=
 =?utf-8?B?UkVqZmdCcmtCT0xrMGlRMjlpdHpYcFdqMUluNWdSYWwrNjdJeG05N295Y2NC?=
 =?utf-8?B?SERGZWE4dlJBUG56SndaZ1pVOVJHSVNlZE42VzlEU1NXZzJCV2ZMeUNWYkJ2?=
 =?utf-8?B?ZzM5TmNxanpaOFF2N2lua2xJa1Q1NHFUS0tMaGJaUnJTQms2M01RaXZ3V2VD?=
 =?utf-8?B?RFhUNzNBK0YvcHdtQzgrMnB3M3VzK3JGUlRIK3E1Z0YraWhId2RuWnEreENI?=
 =?utf-8?B?VkxvOExpL0t2S0FVWTM5dmxTVVUrK09oY0Q1TWs2TEcrSXg4a0s4bXB1Ykta?=
 =?utf-8?B?eWdtMmtVSnN0K1NqUllNTHZNa1Q1Z3NGQTJ0ZFZkVW5nS2lXWnNsU09OSFBZ?=
 =?utf-8?B?T1ZJVlRqOWpNVzgrMngyZ1FydERBeC9hL2xwQVhOYlRNWlFvOWNqNWsyM3ZJ?=
 =?utf-8?B?dHcrWHRMRHhWNjB2NjhCRFRqM2pVTERmMEJSU0JTUW9DSmU5OWwzcE5UNW0v?=
 =?utf-8?B?SU92WVNmNEJMTGMrN2k1WEhOQW1vYUU2bVpJWVc1d3k0dDRLMDM4M1YyTlZ5?=
 =?utf-8?B?ZVhJK0RUVHV2T0xYbk1LVk8yQXVnL2dRa1ZNYW1CbDg2UURWeGhRYk9MNzdm?=
 =?utf-8?B?c0xyVlpkNXM3ZkVZNTdZOGRuaVlNZmlnTUhkQVN6NTZRYTY1QWtYNWgyZEdG?=
 =?utf-8?B?ODZvTUNPWkRHVkszVHZuSzk1RlBYOFpPWko3OWpJWFk5U2ppSDgyalVRcXBI?=
 =?utf-8?B?SjRNRXI1R3A0bW1TUmdDaFpFSm5QZ0NobGVnYTlkc0V1N2w2WHVYUHhHTjZk?=
 =?utf-8?B?dEI0cWhNRDg5d21sMG42bGNHRS9zb0FOc092dzVGelhnVDc0azhLTW9FbnA3?=
 =?utf-8?B?M2NLTlJwalY3VmtvZ29MdGFQOE5DbEdqTUgvMXdIbTl4bUphcS9yWW1KQW93?=
 =?utf-8?B?WXYvUmp0T2MzYmt4YUtrdGtJKzh5NS9RdDdWdy91bmh6VW8yZ0IvU0lySlB1?=
 =?utf-8?B?QXNaeUZ2eXhDdVRhejBHbml3cmNIL0xSellUOCtydFhpb0ZpZDZ1d084aGtp?=
 =?utf-8?B?WVVFK3RhRnVWcXh6S3BkOXlld1N4TTU2b2tZblNjamlpMStvWm1ZWjBJWW13?=
 =?utf-8?B?UmlRdTVSektWcXVxOWp3ZHRqeTd0UCszYzcvVURqSGZoSit2WEFCUkZMYk5p?=
 =?utf-8?B?ZlRBWXhqbUt3K0YwUkZsRXVqM0tiUy9XZXcrcU9tTEJzWVYzcjZaYmdEREsv?=
 =?utf-8?B?SGdGTklrOTdYSGZycm51cW1HRW9EbDN3citsTGZMc1BxL3lOVitSWFdHWTZL?=
 =?utf-8?B?TXdtVGZDVWFyN2U3bXhKSDRCOXlnOVp6R0dVNldQY1FLaFV1ejJ5UWJ2NjVL?=
 =?utf-8?B?OVVweTE1UnkveGNDdXp0TmZyaSs5c2dsdWQ2S296cTdSL2xra0QwNk1TVkto?=
 =?utf-8?B?SUlMeXFjQTRWOG9vUzZ4WlE0bmFiZWZsWVA1WThLd29UTW5vYnMxRkdPZVdq?=
 =?utf-8?B?eUpZdjNBSkM3VmVyK3drUmVqenRWbGhsenF1Y0JtcWF5Q3hzMlNpclpMN05Q?=
 =?utf-8?B?UkIzcTA4TytLVDZ1bGRMWm5ZTTFneEp2UWFNM1BrTm9Za3I0WDh6ZnFEN2dL?=
 =?utf-8?B?TE9nUDRyKy9tSytUNzZDaDZHUU04ZEt4c1JVVGp5RVQxUGtYbTJ0Ykl5TTE1?=
 =?utf-8?B?RVFVbDNBUnBpM3paWmlicE5UR0JrUWRWR1Aya0ZDZjlsalFGdnVtWERIaDdk?=
 =?utf-8?B?SWg2cEVyK054SzFYbThIUVlMVVNrWkU4TWczWHF2cDIrQk9wOGtsdk1ZSmht?=
 =?utf-8?B?Y1VLQ3JXYnZrV01rSlc0Zmd3NytleGt1VmpIbEVpT0xEZDlJdERxRXZoQUxB?=
 =?utf-8?B?ZUhmVy8vb1Bnd2QrUkJ0YkxZTzBHZHRIN1VjbTZJMWMybmxZVDMrTnk0OTJv?=
 =?utf-8?Q?nSweGd4rfwG6+iVf7CvUCPLao?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 916e46db-b954-4f59-43cd-08dbd3b56c8a
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Oct 2023 10:47:16.7932
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 8TMxggE8g4+y3YDLzxX3qd1GjyIZ3p6HrNgnkzUz32OEqIXdIzxZZPbyozRGAxizdKN4Gq/j3nqWj5vZ5kb2uQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB8157

On 23.10.2023 12:43, Oleksii wrote:
> On Thu, 2023-10-19 at 11:44 +0200, Jan Beulich wrote:
>> On 14.09.2023 16:56, Oleksii Kurochko wrote:
>>> --- /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__ */
>> This one's perhaps slightly more "interesting": Yes, we have a
>> HAS_PASSTHROUGH Kconfig option, which both Arm and x86 select. But it
>> is in principle possible to support guests without any kind of IOMMU
>> (permitting solely emulated and PV devices). In which case what's
>> (imo) needed here in addition is
>>
>> #ifdef CONFIG_HAS_PASSTHROUGH
>> # error
>> #endif
> I am not 100% sure but not all platform has support of IOMMU.
> 
> And I thought that passthrough it is when a device is fully committed
> to  a guest domain with all MMIO things. So it is a question of
> properly mapping MMIO to guest domain. Am I right?

Yes. And do you expect you will get away with such a stub implementation
when you actually start supporting pass-through on RISC-V?

Jan


From xen-devel-bounces@lists.xenproject.org Mon Oct 23 10:50:08 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 10:50:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621349.967728 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qusVb-0001sj-39; Mon, 23 Oct 2023 10:50:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621349.967728; Mon, 23 Oct 2023 10:50: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 1qusVa-0001sc-UO; Mon, 23 Oct 2023 10:50:06 +0000
Received: by outflank-mailman (input) for mailman id 621349;
 Mon, 23 Oct 2023 10: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=7RLV=GF=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qusVY-0001gt-WD
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 10:50:05 +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 ec22ad2a-7191-11ee-98d5-6d05b1d4d9a1;
 Mon, 23 Oct 2023 12:50:04 +0200 (CEST)
Received: by mail-ed1-x52e.google.com with SMTP id
 4fb4d7f45d1cf-5384975e34cso4875932a12.0
 for <xen-devel@lists.xenproject.org>; Mon, 23 Oct 2023 03:50:04 -0700 (PDT)
Received: from [192.168.201.133] ([94.75.70.14])
 by smtp.gmail.com with ESMTPSA id
 ck8-20020a0564021c0800b0053f11e3c019sm6032054edb.90.2023.10.23.03.50.02
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 23 Oct 2023 03:50: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: ec22ad2a-7191-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698058203; x=1698663003; 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=a0DPtkCA6HGp/d1A+5h4PRuHKBOIZzUueDb8OM8bcEM=;
        b=AzMARuJO6Wdur70Ji0EdzltOFeWFmxjNBuDM857A0vb5V+qRyw51e+JJIwc9/HmbII
         alZbTAoO3CYNwc9h/8nQBvauxH+NK9NIs6cANtqrUhKTsYx54Tso8lS6++yPg74Xthky
         1pB04xAscZ75vaqv6bIoR5HUnFp7rO4SEqEBmMCuo7yS0gjkcePE2mon/FnCESz6jZ9R
         8Ee7FHjJj4nKe3Dx6rT/i8cGPW6akYe2XAWtM120AROsTVQwbuxUT0C0jNZoetYl80uL
         /XA2/lXakhJodFlqP7R7HWDGBa4IUEoSDuhSOHJ6zI5SBm6T/bNOJ33tsQ+GyTgzOi6q
         u81g==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698058203; x=1698663003;
        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=a0DPtkCA6HGp/d1A+5h4PRuHKBOIZzUueDb8OM8bcEM=;
        b=fWfjtd6rVxJxsdxef1ydCD/yHIkhD4rM69/yNTYBbl9n8M3/ymAZ3MbybXEKOxgp5I
         llGEsrUghWymKwtoNXemMSd5Qyt/+xo1rmlXSscIsjqjMRfOQ773ekaKKGOGPRLy+qJE
         WoltxygP6QE69U5XHRp/RraeX+D9yDRFyamxMOtGdHlhmycOVSzzVFHvPdrPNTiKd1Sz
         wnxxKY81DH+Bd3fwUwRvwpLVvomogmo333tSPdvNVjOEIRi6pNJFyG4Gr/shgAecTlWn
         iHqx2Z1Mwz+0twRVD45dvgPEY0CwzZdqWmP5K+ecdCNQBxPv4jxllWGOFMSvyZU2jvtP
         ioyA==
X-Gm-Message-State: AOJu0YwkdY+osHabbyDjkx3AxoSf+QKt/dloiCcyKqUS6hpXnEtOzc9R
	YjVfwjtrScftbkJfw0SzONk=
X-Google-Smtp-Source: AGHT+IFi/azX5iMcbg9mOzRFJJhqrMjygIzE1l8Utbb5+YKGX8Gy6PUWKry3YNHxvy4Ov4xzopwdpg==
X-Received: by 2002:a05:6402:26d1:b0:53d:b59c:8f91 with SMTP id x17-20020a05640226d100b0053db59c8f91mr6514630edd.27.1698058203377;
        Mon, 23 Oct 2023 03:50:03 -0700 (PDT)
Message-ID: <0da7452e0c62dcdc5a0e1185b9f99cdb3d7393c9.camel@gmail.com>
Subject: Re: [PATCH v1 12/29] xen/asm-generic: introduce stub header pci.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, 23 Oct 2023 13:50:02 +0300
In-Reply-To: <d4dca6d7-ac54-beac-26fc-5eaf80783a73@suse.com>
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
	 <597a482c70fef196e245a5d898ea6314a0c479ca.1694702259.git.oleksii.kurochko@gmail.com>
	 <d4dca6d7-ac54-beac-26fc-5eaf80783a73@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-10-19 at 11:55 +0200, Jan Beulich wrote:
> While more involved, I still wonder whether xen/pci.h could also
> avoid
> including asm/pci.h when !HAS_PCI. Of course there's more than just
> the
> #include which then would need #ifdef-ing out.
It looks like we can get with #ifdef-ing. I'll push a separate patch
for xen/pci.h.

It will probably need to remove usage of <asm/pci.h> everywhere or
#ifdef-ing it too.
Which option will be better?

~ Oleksii



From xen-devel-bounces@lists.xenproject.org Mon Oct 23 11:02:46 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 11:02:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621364.967737 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qushj-0006QT-9I; Mon, 23 Oct 2023 11:02:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621364.967737; Mon, 23 Oct 2023 11: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 1qushj-0006QM-59; Mon, 23 Oct 2023 11:02:39 +0000
Received: by outflank-mailman (input) for mailman id 621364;
 Mon, 23 Oct 2023 11:02: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=rddO=GF=citrix.com=prvs=653ff57d6=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qushi-0006QG-1l
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 11:02:38 +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 aa917685-7193-11ee-9b0e-b553b5be7939;
 Mon, 23 Oct 2023 13:02:35 +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;
 23 Oct 2023 07:02:24 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by SN4PR03MB6750.namprd03.prod.outlook.com (2603:10b6:806:211::10)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.14; Mon, 23 Oct
 2023 11:02:21 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::acf0:ce2b:1634:5aee]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::acf0:ce2b:1634:5aee%6]) with mapi id 15.20.6933.011; Mon, 23 Oct 2023
 11:02: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: aa917685-7193-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1698058954;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=G+rfaFyo4+tel/pBmYimzF1NGtYmS+fcNN9W5vtTgH4=;
  b=QX4l0P6raeBpo77s62VLSxowkIgTJ2p9YC1y0xjk5T3ILiwXaQRA5yag
   i47Qfl4BZ2X1k6nNsU4vmxYyl+lrCz+yiHO2/3Wso7eEQEOaFwJ8Tu5ya
   iovZjUT+faCsicVe0cfQoD1XzANAUzPgERa1bL4JOVZCiqRt+hiD3oHFV
   A=;
X-CSE-ConnectionGUID: VETQoeRgRo+lE3N2V6jVDA==
X-CSE-MsgGUID: kIPumQQuT76/nL2xwdazLQ==
X-IronPort-RemoteIP: 104.47.58.100
X-IronPort-MID: 125602209
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:+BSwUKxe5f2WRscb9ax6t+cRxyrEfRIJ4+MujC+fZmUNrF6WrkVRy
 zYYX2GAb/jcNGD0fot1Pd+wph5Qv5HQzoNhQABs/iAxQypGp/SeCIXCJC8cHc8wwu7rFxs7s
 ppEOrEsCOhuExcwcz/0auCJQUFUjPzOHvykTrecZkidfCc8IA85kxVvhuUltYBhhNm9Emult
 Mj75sbSIzdJ4RYtWo4vw/zF8EgHUMja4mtC5QVmP6sT5TcyqlFOZH4hDfDpR5fHatE88t6SH
 47r0Ly/92XFyBYhYvvNfmHTKxBirhb6ZGBiu1IOM0SQqkEqSh8ai87XAME0e0ZP4whlqvgqo
 Dl7WT5cfi9yVkHEsLx1vxC1iEiSN4UekFPMCSDXXcB+UyQq2pYjqhljJBheAGEWxgp4KV9jy
 cUfJQoCVBfAg8/t5uiFFOtSqu12eaEHPKtH0p1h5RfwKK9+BLzmHeDN79Ie2yosjMdTG/qYf
 9AedTdkcBXHZVtIJ0sTD5U92uyvgxETcRUB8A7T+fVxvjiVlVQpuFTuGIO9ltiiX8Jak1zev
 mvb12/4HgsbJJqUzj/tHneE37WSw3uhAtpDfFG+3v1LuECW/1UONEJIEl2f++mmhkesf+sKf
 iT4/QJr98De7neDTNPwQhm5q36spQMHVpxbFOhSwB6J4rrZ5UCeHGdsZi5MbpkqudE7QRQu1
 0SVhJX5CDp3qrqXRHmBsLCOoluP1TM9KGYDYWoISFUD6ty6+IUr1EuXFpBkDbK/icDzFXfo2
 TeWoSMihrIVy8kWy6G8+lOBiDWpznTUcjMICszsdjrNxmtEiESNPuRENXCzAS58Ebuk
IronPort-HdrOrdr: A9a23:3rIQ2qvExgZRd3mPJ6ywir0P7skDS9V00zEX/kB9WHVpm6uj5q
 eTdZUgpHvJYVMqM03I9urvBEDtexLhHPxOkOos1MaZLWzbUQKTRekP0WKL+VLd8kbFh4xgPM
 lbE5SXdLfLfD5HZY6T2mOF+5xJ+rS6GO7Cv5am80tQ
X-Talos-CUID: 9a23:ddEi32AoSy09P7/6ExdKyHcTF/oqSHqeyFqLBRWGV2RXZJTAHA==
X-Talos-MUID: 9a23:/cTfmQTmaNb4vbjLRXTvpQl/Mf5R/pjxVgcLtc8WpMWNJwhJbmI=
X-IronPort-AV: E=Sophos;i="6.03,244,1694750400"; 
   d="scan'208";a="125602209"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=UBhRykrJjzQJ/LfHr9qT2cimUMcf8lcFtzYuNyp+rk+9NMEParPWhBhNptUTZhnnnn6q9xdKuiRQuR4oSVSXYvexHG0N+Ibua7neXEeGV+rs8dOX3yx/3Geg3sidXH4nqxqS1qW381uzMvyxLMGurtof/cbV+o0dLRbdG9CqA1coHAxQqEEFpbPpbInlfYKafGhYdwuLTq6BeRsbBCScakCEpKcxspMOsT3SWRPUKYiRWhVq/OOePGTnykugnDB3z+JHg3TKV/Obwcsojld/pzqudZXo0Hbe8DTgD/N1zv7ooXEVEuMmmHCTCEfa9JDlG6GsJ5B2W+3BsMN/nvHhNQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=l1TXcisM53Gw0IVgqi7OG7S4Z1pX9BFTfRW+VAwnCNI=;
 b=h/sQZL9s9dTRhm8e52qb753gNAS6T1seE+QQtyytKJcBJq2P10p75hPHeRXESAIp9l/GgwxKkJ821cOCqtw06bAnyve/U1oFSn8MvYbf29F2PqkowAf439F1G0L1Kr3X+mDoo6Tzr9ypAYTCtjSBPRy2N8RV7YYYQV6gQUWTH3U4XDkWoZ3sKHon3OBlzJgW4jbeRkQo0g7sHe66KQksKjV1x0FdxVCuzRdWuPRUn62Rw7HFWBFqoc8+010vYxp1kDibaxzqG0gwhrefEMyCby05U+pOYGYEsVqbg5VlTFR2HIDeLcG7/ozXpijzaQnbgM+uv5MuFnKls7z70hapig==
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=l1TXcisM53Gw0IVgqi7OG7S4Z1pX9BFTfRW+VAwnCNI=;
 b=KGTTTOuEpTJGGILQzmc+xecs+4TPfrtozpUnL1AjH5m80JXdMATgYuvOSv6o3DGZFRDtKNCk32gwqhCfoqjlTN3wiEZJoxslhC5XkZuezZDS+H8FoU8OuW0Ahvtad15xqKHma6Y4Bc1N/PQfIEIqOVd9+ZLaNEzOoL5hdiet2/s=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Mon, 23 Oct 2023 13:02:18 +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: <ZTZSulkgPFQAd8hM@macbook>
References: <20230915074347.94712-1-roger.pau@citrix.com>
 <b045e8fe-ccf7-bbcd-ece8-036a13858d36@suse.com>
 <ZRv8fRhYQrwU1H6q@MacBookPdeRoger>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <ZRv8fRhYQrwU1H6q@MacBookPdeRoger>
X-ClientProxiedBy: LO4P123CA0665.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:316::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_|SN4PR03MB6750:EE_
X-MS-Office365-Filtering-Correlation-Id: 6594e585-3119-44d6-be3a-08dbd3b787e7
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:
	528OOraLPYvrz2apoB4iBKPOZKBvHZ2uif1rNtecPf82mVvz4aRNq0gJtGelN1e9KHnbbqgpVxxCWD4B8EZW/WqQbgWQIJG6juRkw2rcBXyIBcKgxqlCMIaq9H63FR0+BbKvD2KgFq3/ObUuvzXEAKTi/wWmBMpXP52PL2fpFAI+U4Kwp8d/u4Dw8AS80FnutxVHOTTYyPNtaZfAc9B14uEHGOJtUIkl9QiYXzHuZdW1L8tx3wJl1Q1o7AT20T982RXxkQXSKjhQ4UYWfY07krcAk7ZCHLfL8wctHhAh68xnEZgd/BY1pihNz6LToAs/SkxiH1V8tpv/8Ofh39ttH0liaOzYkqwsbgudec2rZZrbjqXNGHHOSJZrfVepZhMLebf/i+JJP9QBTbqmd/4NjLISgVxrS00Ma9NI297hZFHlPfcFyCnU7PSTDuyvLLjOfKkrCpxYPsA9UQjLYo6Z1jtj6mNR0FMjZTrBV7BaeGmmC7WYVVwOJVVW96UBzMHRuQ0MFKcli/DqkRunbGoMyKe9Gl2cBeOU1XdrTYDpd/V/Yd6AbW3Ofqeotq5friDFeXFf0wWyM5nq1cyPzskFPQ==
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)(39860400002)(136003)(396003)(366004)(346002)(230922051799003)(451199024)(64100799003)(1800799009)(186009)(53546011)(85182001)(9686003)(6506007)(6512007)(6666004)(82960400001)(26005)(66556008)(6916009)(66476007)(54906003)(316002)(478600001)(966005)(6486002)(38100700002)(83380400001)(86362001)(66946007)(41300700001)(4326008)(8936002)(8676002)(2906002)(5660300002)(33716001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?ZTlSemQ2UWY3dnhPb0l6b2pOM2dNM1czb3RGSTh2TnBta3p3aVJFaHFobE9W?=
 =?utf-8?B?RFVEWWRsWTF4eWNRbUR5eDUydFdRVWczM1FiVnFaTDNMM3Q5WEhXWVB4WlZM?=
 =?utf-8?B?NFROUnJ3NGR2aGFBY1FuYit5MTN4SlVoajBFNi9pdmZkTERuMUhONVBoQncy?=
 =?utf-8?B?TGpoSmJTZGhtWm52ZzlRekcvbElRS1AxQk9wWEt0MnJqdi9jYzgyYnBKam5R?=
 =?utf-8?B?OHZaQ2Y0TEN3UlhpaGZKM3B5eWFOVzBkczRnQ0dvcVdnV0IxTjkxZXFUbDFv?=
 =?utf-8?B?L3lYZUpWM1g2NkpHODJJdEFqcDRoaUVNaTNzNFBtVmZOd1I5V3YxcnlDRTN2?=
 =?utf-8?B?MjdseElLVEJhREtnQ080Tk1Rc0JHdEszTXZwWSs0RWpZeFI2ZHdnSUY2NlRV?=
 =?utf-8?B?eXhNc3lTbVFiaXJvcG92ck9oaTdHV0VYMzhESU1LcEhWYXJUbUdENmQwSm5r?=
 =?utf-8?B?ZGhGS3RQbWdRMk1jVDJDamJ6VWtiWEVmajJiQWhEZVppSDM0NE1uUnlTbldR?=
 =?utf-8?B?NmkvWWJ1TkRYelcrQ3MrZEJIRmcxbHE0Qk5tNlcwcmQyTGNMVXNsUnVVeE04?=
 =?utf-8?B?aGdleXRTK0RiaEgwSWNuY3ZJdmluTDdRd3BxL1dQUE5SY2x6MHl4WFl3L3Zn?=
 =?utf-8?B?QUJCbkRZMXZZaTVHWG9VR1VEbVptM0kwREVsaWNJR2JsUiticnBtcjNTQVc1?=
 =?utf-8?B?WWxHcHFMdHR0VjFLbHcxTHowWGFQRHlpSGhid2pNRVdiTWlqTzZUbUJhSk5Z?=
 =?utf-8?B?NlZkaktkV09wY3FwdG9WVEs4OUd5T1V4aW9EYzlheElxTmE2Y1BUSzdwbGFU?=
 =?utf-8?B?MG12UjYwN1IxVXFDTGZOQWxhaXBKdmNVUGVWcU5Sck1acml1TUpONDI2dGZv?=
 =?utf-8?B?c0gxcmRHY0tzbDFDYlgwWGVsRlF5WDJwNFF6QzMybGs1bjFHelZKM0hOV09U?=
 =?utf-8?B?ZTlYd1l5cVFOUjUrT1AzakQ2bmZBSG03bTJ1eGRLUXRkOGZDTFRDbkZJU2o5?=
 =?utf-8?B?RDNabmNBMmwyZXc1ZFl3N096OFp1OFJuNVMwZEw5c3Jwbmd0bG9qMjZ0Wklv?=
 =?utf-8?B?SEVKU1QzNTJDcktSbkRUY2xKNUc5ZE1TRHJOS1VLcG52eFBtWkhmaXFWTXhw?=
 =?utf-8?B?V0pUUUROMlVDSEpGbXVlNTk5M0F2WmFXdGlleDZSU2pPckRHUkpjVGU3T0kv?=
 =?utf-8?B?WDFZNVpiSmduZXFQZ3RxZjFWenpGdGRVbFVObERnbm01UkZZbU4rVkVsbG1o?=
 =?utf-8?B?YWVoeWdwdHdFMG52TTA0eE1nU3J2Nm9hdW0rUmRldVNWMFdtUEdBaEg2cEk0?=
 =?utf-8?B?SEk0Vkg0V3l2VDhxYldIaklzWTFwY1ZkSGhqWnRmYmhPdHc4QmxJdnU4WEZi?=
 =?utf-8?B?c0lWSHcrWlRzTVkzR0dEMGhSM0NnMGdNdzNwb2x6WVJuYUU1UjhYSk5nQXMv?=
 =?utf-8?B?K3VienJGUzFad2dYbFdBRVo1TlpCeFVrRHpteWZnd0EvcmJwaGRoNjJ3eElx?=
 =?utf-8?B?SlFmS1A2TEFpa3VKMTgvajJtOXprWHFCVTJEZE1iK2ZtdzlGV0ttK0hpQndG?=
 =?utf-8?B?ek0zZ0ZzUE5saDZERlB6c2hpaTZmbzhMcU93R1YrSmxBNkFTcGd4RGVwSmZk?=
 =?utf-8?B?dDlvTWNwdi9Bb2F3V1BoWCtYSGdqVW82NlJ0OUIzdi9HSm1WaUM3SEQ0WDZZ?=
 =?utf-8?B?akQvK2tCVFFNTG8yU2JTUWlyeHkzeE8xUDY3b0c4ZmlxR2tVMXZrVUlDcWd3?=
 =?utf-8?B?L0NVSjhvRWlxbGljcjJ0MVhvV0oyK0VLckhybVpVT3VDNnpmbnQ3S1dURmhy?=
 =?utf-8?B?a1dMS2w0azBwbDJES0ZBb2R6RVVTRE5rMjhaSWhZbUYweHZiYUJxWEV1NDFS?=
 =?utf-8?B?aEJWbDBXWmgrL01WSGZFZHRuQ0UzbCtIYWdQYVh1YTlzOEh3MkJxaXZOQkZo?=
 =?utf-8?B?cnRySEJvdE8ydHdIYXNESmsrSTYwRkpzYmpFQUcrYndNNWpqL0JGQW5jeXdE?=
 =?utf-8?B?THBDU21vNWo1eTIzbnU1eVhsUHRTVVhLcXJINGxLUjM3TFd2ZlJ0KzEyRThm?=
 =?utf-8?B?ZU9ZYkI5L0Jza2xTVytCcWh4eWtNQjVwbnE3YTZJaFFjTzU2UUtpRGkrNmZT?=
 =?utf-8?Q?pWdBSnY5iQSQgIbpsGNQj1hih?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	oZsmTpvYqaFcQSg9ihJrI9qMPDskFzE8zZkh1W87jotgHglLMgqMvRT23ns51eHc1pUGTuiK+FLiJhBPuukBpcCViygaXiUDsH27L/E6DFvUJZLhm8hRFppUpKxQH+cyaigxNVZqy2MOKdaEPgP/8Ypq6qa0fhUGstu0fg72R8SHO2/AJcPJlMmAH8m/cIZDWo1MgcHnpiJlY+WCKJroEurMpwhybhdLei3EcuUojHXMZ/q6ukIjWa7zRjvPKcoRPrWFWT1k+5D/sa4KtJem/ThMMmZ4kN6gjBBzMPpaLf/MblsTJworX118wPHMvAaZbQWXggXbDyYHX1vIM+RfGl+ROjTa2hZBR1J9qnoXRGyQfOtSrQBUvmx5VDTq0hRabBLgjjGyfhiYY8VPURy3QUmCborlmnSVSsaZw5ohqgeKdwPlCTFm/X8zTLBNOsTDBNC7t0QssWPG01bW9IlxtcjVQKVG5lhAULbkGclOlZ3DhWLlJ1+qYR7xug6uGt7albS2NGsJPuGOmIamSvErmpmI8pWztb+Ip1XQ94EM9L2xS+RHYvziDtiGfvj1QD13X8thdTe2I8YcZ0G8fXTfBXq4m7aY2zniphBDJNuWqlJlV8BmwnBeQ38Zq8ra26ssIxQxVeUm3XvDnDg+vCO26PYs/AHfSXqiaHgd/to8pZPy6IHFcWQPKeu3MuikMhCTTQdZDDAfRIvnZ1U0h6r2rvGUxt3whCnbiIVQRE0PF/haCjTb2JMrhaTYF4ZznTWmsOe+AcwkM/TzRGhxDx05RR3mV6/Nu56kQU9HwEKiZ7FkI2+KpXq7w8ruafrDMLRFSrqbNKjPP/6fZ7X4wLWZ4g==
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 6594e585-3119-44d6-be3a-08dbd3b787e7
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Oct 2023 11:02:21.7983
 (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: y5NqIxf89QnRxE/Zzu6sjm5CU21R4v91dhSoUC7psoMP2oIDB2QhgVD7zz4edf7h8P9aizFnufafU/b3PVDeEA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN4PR03MB6750

On Tue, Oct 03, 2023 at 01:35:25PM +0200, Roger Pau Monné wrote:
> On Wed, Sep 27, 2023 at 10:21:44AM +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.
> > > 
> > > 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.)
> 
> This is unfortunate, but IMO not as worse as getting a #UD or any
> other fault while attempting a reboot.  We can always force this
> system to use UEFI reboot, if that does work better than ACPI.
> 
> > 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.)
> 
> I can try to gather some data, I can at least tell you that the Intel
> NUC11TNHi7 TGL does also hit a fault when attempting UEFI reboot.
> The above crash was from a Dell PowerEdge R6625.  I do recall seeing
> this with other boxes on the Citrix lab, but don't know the exact
> models.  I'm quite sure other downstreams can provide similar
> feedback.

As a further data point, Dasharo [0] a coreboot downstream was also
providing a firmware with a broken ResetSystem() method, and they
didn't notice until someone reported errors on Xen reboot:

https://github.com/Dasharo/edk2/pull/99/commits/dee75be10ac9387168bd3a8cad0f1ec6e372129a

It's quite clear no one is testing ResetSystem(), the UEFI spec
doesn't mandate using it, and we are just hurting ourselves by forcing
its usage.

Regards, Roger.

[0] https://github.com/Dasharo


From xen-devel-bounces@lists.xenproject.org Mon Oct 23 11:17:12 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 11:17:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621368.967746 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qusvj-0003Oe-Dp; Mon, 23 Oct 2023 11:17:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621368.967746; Mon, 23 Oct 2023 11:17: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 1qusvj-0003OX-BA; Mon, 23 Oct 2023 11:17:07 +0000
Received: by outflank-mailman (input) for mailman id 621368;
 Mon, 23 Oct 2023 11:17: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=7RLV=GF=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qusvi-0003OR-QO
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 11:17:06 +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 b2025594-7195-11ee-9b0e-b553b5be7939;
 Mon, 23 Oct 2023 13:17:04 +0200 (CEST)
Received: by mail-lf1-x133.google.com with SMTP id
 2adb3069b0e04-507e85ebf50so2878920e87.1
 for <xen-devel@lists.xenproject.org>; Mon, 23 Oct 2023 04:17:04 -0700 (PDT)
Received: from [192.168.201.133] ([94.75.70.14])
 by smtp.gmail.com with ESMTPSA id
 6-20020ac25f46000000b00502e2ab7118sm1670433lfz.50.2023.10.23.04.17.02
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 23 Oct 2023 04:17: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: b2025594-7195-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698059824; x=1698664624; 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=vw5h5w4fykrcnju+pG/ucqwn722KGqtpnI6e2mBVktA=;
        b=Gvn2o/S9LZ347wiFdfdAZd10uYY4PcghjMV7fLeIP02ezeuptWyZ+9mnDAuJTPHwY7
         rXn/SoFp3PSbcXe+1MBYVHDs3yM5Hp1jqBn6ErEly/MA42sdCrzIu/wPEp9CSH2g6chT
         sRHvbGQ2P1beJts+NIU1CCKMAyOKS5Ee+NChH0cfufy77vl9bMp5OozqW7zczbtoSe0n
         mzwEWyUXs3jMtLBGIL/DX+e1CQQ8wDt70uTy9W8TaQo7C5kAUi/wcBh7ABJExcsq848J
         cICSEFq/bu2z16Tq/+eag7/qh4FcFXclEqZLoO6A/kRLsUYzleFinoioIeD6bWMx8vku
         alTg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698059824; x=1698664624;
        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=vw5h5w4fykrcnju+pG/ucqwn722KGqtpnI6e2mBVktA=;
        b=sHtX/NV9MwOBWN+ggN7VmsLdvFczimSgOXYtnyvMWs8kSFLac7YVAm1gxrmiP0ndbY
         Bfs8S4gLSOd5VXkaIBDKBAMcaNA3l/nujayINHA7wiT1zUT4zM21YkXk1m8bM6YXUXuL
         UWnIaPby12KbiEDxXHp136KXfbak9O09cNdwMLax/SGgLx9wCvHRCNsJ4mL0WCPztsC+
         K8ixC3j0BvmVy72or1cXYECWXd7FFaKZaOuNuf4dyZcC9vlCRIRWJYJ23kr5mYSg7vfq
         pYoLDXucHELbBbYQ6qVTk7Eyr83gSaGwl8JhbrDJ5lqPh1cTAIx6WYmgWUmibk2UQBl4
         5Sqg==
X-Gm-Message-State: AOJu0Yxe0N7p424tLXG4vPoAzNYGsgdUHC7lgcOijDESzEcCa2FIyvgb
	f4VpSihBJsTzFeJyWgJJ2UE=
X-Google-Smtp-Source: AGHT+IHdkKMsEbkcIJHZ72Y3sBHP6yQn+g3i38oaVX5H5/bLFR/nRH0XscWo1H01z/kC5fAjuxs56w==
X-Received: by 2002:ac2:4e08:0:b0:4f8:714e:27a8 with SMTP id e8-20020ac24e08000000b004f8714e27a8mr7471574lfr.0.1698059823990;
        Mon, 23 Oct 2023 04:17:03 -0700 (PDT)
Message-ID: <a5d5598d4c0929a69cddbe75d4d17f9521def008.camel@gmail.com>
Subject: Re: [PATCH v1 15/29] xen/asm-generic: introduce stub header
 xenoprof.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, 23 Oct 2023 14:17:01 +0300
In-Reply-To: <0efa2ef6-8815-4b39-bb53-f1d5902e71c7@suse.com>
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
	 <0b7805d6bd5f16d06656093d964d5d90030958d7.1694702259.git.oleksii.kurochko@gmail.com>
	 <0efa2ef6-8815-4b39-bb53-f1d5902e71c7@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-10-19 at 12:09 +0200, Jan Beulich wrote:
> I've made a patch to move #include-s in xen/xenoprof.h, dropping
> Arm's
> header (and none going to be needed for RISC-V or PPC). I'll send
> that
> patch in due course.
Could you please share a link with me? I can't find for some reason...

~ Oleksii




From xen-devel-bounces@lists.xenproject.org Mon Oct 23 11:17:57 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 11:17:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621370.967757 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quswV-00054q-MW; Mon, 23 Oct 2023 11:17:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621370.967757; Mon, 23 Oct 2023 11: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 1quswV-00054j-Jn; Mon, 23 Oct 2023 11:17:55 +0000
Received: by outflank-mailman (input) for mailman id 621370;
 Mon, 23 Oct 2023 11:17: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=7RLV=GF=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1quswT-0003z8-Vm
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 11:17:53 +0000
Received: from mail-lf1-x12b.google.com (mail-lf1-x12b.google.com
 [2a00:1450:4864:20::12b])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id cf2bd933-7195-11ee-98d5-6d05b1d4d9a1;
 Mon, 23 Oct 2023 13:17:53 +0200 (CEST)
Received: by mail-lf1-x12b.google.com with SMTP id
 2adb3069b0e04-507bd64814fso4572425e87.1
 for <xen-devel@lists.xenproject.org>; Mon, 23 Oct 2023 04:17:53 -0700 (PDT)
Received: from [192.168.201.133] ([94.75.70.14])
 by smtp.gmail.com with ESMTPSA id
 p14-20020ac24ece000000b004fdde1db756sm1654253lfr.26.2023.10.23.04.17.51
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 23 Oct 2023 04:17: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: cf2bd933-7195-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698059873; x=1698664673; 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=9obuvYIWw7a+6/1TE6LC9070ElKQUu1VXjhmU4IhkoQ=;
        b=FX1Dbj8S+VQYWEs/J1qYI+U2Wh9ju8hTw6sppidt+r86UUIp8iyukz+5J3ggp78DID
         Qg1Ati2UvMMfQ72HuV7R7eeqaQ1dWdG3OGp4EVC8EUhJnu9REk5qjvFxYBff55dfSy/o
         In31NuT7ZiU22L8iqCALsXZoWPYPstit5EzMxzIqRcoR7jcX0/sit2cpNu6aUMH0HidC
         S4AC9S0qqUn7VOQHGwaiab6ld3Jm+omC3tqNmAFHYoXkVElXPvnoyZO4AzqIaE4mqHty
         5XuMy7nbth7AXMadnoYQM3/aqNTKDi1pFA6r0q3tivX8B4vCwefcSog+dRhw/KfZpWzU
         YNoQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698059873; x=1698664673;
        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=9obuvYIWw7a+6/1TE6LC9070ElKQUu1VXjhmU4IhkoQ=;
        b=FbpupKfqx4lRbP+xWK/LlJ5NC/LahLx4WNpu71KBtIInVxf1Ox6u//KxxbbJliP63R
         JAi46mW/QkSTfqMDQGDSWpBVoiDWYdnvpai7ZhOpdBLnCd2yEf72T+6atdkqQeZZFDPb
         vJ3So0cV/xcspqY+5Cn4n1BITgyS+hoDcLaEf46gtIr77N0OtmHfKa7wIU/w6sZq680r
         +524gJ8c3yCG4bVOx9JrF9a3c83eTI1WAnJGDEVLmgTad9Ue0yECUciV1fxtXwElpucK
         tWN4X+PbENMTJcZ1Gxo/bSFAJpzc1N34aaLANbfzneIa6m7qtNOUqYhRKTFr7E7XeI16
         1AXg==
X-Gm-Message-State: AOJu0Yz3mrB37zAno51LpVw0BS4L0bSAxRZdnzJTNzJbw+PrlfiOAzTt
	rgjXabyOVyXNfwvuZI0A5fU=
X-Google-Smtp-Source: AGHT+IEoEtFWzmWmzY7rcxtZ15YPNrBRjzmr68VeirA265zijDzcwiDGoqTz8YCdy0Jpqke4aP0O1w==
X-Received: by 2002:a19:8c43:0:b0:507:9778:5a0d with SMTP id i3-20020a198c43000000b0050797785a0dmr6188285lfj.30.1698059872816;
        Mon, 23 Oct 2023 04:17:52 -0700 (PDT)
Message-ID: <b244c869810d22ee1c9420b0d80ff48e7d8146ce.camel@gmail.com>
Subject: Re: [PATCH v1 17/29] xen/asm-generic: introduce stub header percpu.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, 23 Oct 2023 14:17:50 +0300
In-Reply-To: <9136bdd4-2ae1-4b7a-b4b8-a66181b2bfe4@suse.com>
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
	 <521647680aa5010629ded799010c8f9e5d22cde3.1694702259.git.oleksii.kurochko@gmail.com>
	 <9136bdd4-2ae1-4b7a-b4b8-a66181b2bfe4@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-10-19 at 12:39 +0200, Jan Beulich wrote:
> On 14.09.2023 16:56, Oleksii Kurochko wrote:
> > --- /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)=C2=A0 \
> > +=C2=A0=C2=A0=C2=A0 (*RELOC_HIDE(&per_cpu__##var, __per_cpu_offset[cpu]=
))
> > +
> > +#define this_cpu(var) \
> > +=C2=A0=C2=A0=C2=A0 (*RELOC_HIDE(&per_cpu__##var,
> > __per_cpu_offset[get_processor_id()]))
> > +
> > +#define per_cpu_ptr(var, cpu)=C2=A0 \
> > +=C2=A0=C2=A0=C2=A0 (*RELOC_HIDE(var, __per_cpu_offset[cpu]))
> > +#define this_cpu_ptr(var) \
> > +=C2=A0=C2=A0=C2=A0 (*RELOC_HIDE(var, get_processor_id()))
> > +
> > +#endif
> > +
> > +#endif /* __ASM_GENERIC_PERCPU_H__ */
>=20
> This looks okay, just one request: Please use smp_processor_id(). You
> may have seen on the Matrix channel that there's the intention to do
> away with the get_processor_id() alias that's used in only very few
> places.
Thanks. I'll update the patch.

~ Oleksii


From xen-devel-bounces@lists.xenproject.org Mon Oct 23 11:28:47 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 11:28:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621375.967767 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qut6v-0000UH-QG; Mon, 23 Oct 2023 11:28:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621375.967767; Mon, 23 Oct 2023 11:28: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 1qut6v-0000UA-MT; Mon, 23 Oct 2023 11:28:41 +0000
Received: by outflank-mailman (input) for mailman id 621375;
 Mon, 23 Oct 2023 11:28: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=7RLV=GF=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qut6u-0000Ty-8u
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 11:28:40 +0000
Received: from mail-ed1-x52a.google.com (mail-ed1-x52a.google.com
 [2a00:1450:4864:20::52a])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 4fd15afd-7197-11ee-98d5-6d05b1d4d9a1;
 Mon, 23 Oct 2023 13:28:38 +0200 (CEST)
Received: by mail-ed1-x52a.google.com with SMTP id
 4fb4d7f45d1cf-533d31a8523so4601320a12.1
 for <xen-devel@lists.xenproject.org>; Mon, 23 Oct 2023 04:28:38 -0700 (PDT)
Received: from [192.168.201.133] ([94.75.70.14])
 by smtp.gmail.com with ESMTPSA id
 t20-20020a50ab54000000b00533e915923asm6348447edc.49.2023.10.23.04.28.37
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 23 Oct 2023 04:28: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: 4fd15afd-7197-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698060518; x=1698665318; 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=FnckTWg3H9X04V9aRItMo0DaqT8Y8fONmSr41n9l0AQ=;
        b=SFxsLR2uBgdevlfkWELnQuoufFBZNm9kOxg5aYiVr5/NvCM1YZGBtYhdLgMzLlkkrU
         TVQV1Ea06Fx5kwbHJ6+Ple77bCBA4Qb9U/+YXswHO3vyJScO+RkTjuWlOLAmeh2121Ta
         peT4YrOt1/Yo5M56oanwBPQss0+e7rW8oKyz5syyBrGWN9lfYyd8PTEGw8zYVPAHqXjf
         E8mpsj+YDsNnk1wrN6ElzR2INOKn6R8yX9cgcdhVrZHaFHEEwodzNMmXIvxxG2D89DS0
         5NXW/lCnbnYl0nueEkxW+vRaUA6HhXpenAYmw8/EfMxSx3tGrWUlpSBY5ohjyIE6r5Zw
         Z0aQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698060518; x=1698665318;
        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=FnckTWg3H9X04V9aRItMo0DaqT8Y8fONmSr41n9l0AQ=;
        b=PhM8B8CHXoj4gAPWjtMBl64jCPNNG8kuU41YayKrdcjA7we6wb1B3Le3uYK/92Mhne
         Y4OGipO63vEVZ2MC4eEzlns+yTSNVDt2elVIbhUuDOKp0YpowlfPBBkyWe3yiAXLkjeR
         n/bO7RivXjJFR7Jpui+hdFiNuxZoOCWz7sKsNxSQ3xz/YUHUcv6SDoYqDWHPdbYuPxUD
         Is2ccaxOTyvD8c4j7Tx8ZoaNNN6VHuQvWpxBZsAasqKhHki/44xt5EGzdxjvlmawU0x8
         F8DLYYQ4WgJAGx2VpIZsIclaTZPTThEZ8n/eUrdagv6bfPe8fv00a/yO4AajUrBaR6c5
         cS6A==
X-Gm-Message-State: AOJu0YycyqduWhVzcYxu2alS4z0x7Uo3vPy15FTucg+8TIkdjlHRG8ER
	9dHkDYRHToWNM29YF8NC+RA=
X-Google-Smtp-Source: AGHT+IFpRiHPMEO4jEMZkyJkcR48EHz512+aEePcnbObqCXejuaWxBs7CeHTTbP9ia6gI2b8BPgRJQ==
X-Received: by 2002:a50:cd1d:0:b0:530:74ed:fc8a with SMTP id z29-20020a50cd1d000000b0053074edfc8amr6028748edi.41.1698060518308;
        Mon, 23 Oct 2023 04:28:38 -0700 (PDT)
Message-ID: <52e76651f69e9406183e4d38042848793503d47b.camel@gmail.com>
Subject: Re: [PATCH v1 18/29] xen/asm-generic: introduce stub header smp.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, 23 Oct 2023 14:28:37 +0300
In-Reply-To: <3b012ae1-423e-545d-70bb-7265ca6a8ab3@suse.com>
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
	 <e803ff406f9f597bd42242010a219148d387bba6.1694702259.git.oleksii.kurochko@gmail.com>
	 <3b012ae1-423e-545d-70bb-7265ca6a8ab3@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-10-19 at 12:58 +0200, Jan Beulich wrote:
> On 14.09.2023 16:56, Oleksii Kurochko wrote:
> > The patch introduces header stub necessry for full Xen build.
> >=20
> > Signed-off-by: Oleksii Kurochko <oleksii.kurochko@gmail.com>
>=20
> Assuming you expect RISC-V to get away without its own smp.h, just
> one remark:
Not really, I've introduced only things necessary for Xen's full build.

It looks like we have a situation as with device.h header ( in this
patch series) . Probably smp.h header should be only in an arch-
specific folder. I'll apply to smp.h the same solution as for device.h
when we get to the same page on it.

Except what I introduced in this patch other functions and macros will
be in smp.h. Such as:

raw_smp_processor_id
smp_processor_id
extern void smp_clear_cpu_maps (void);
extern void smp_init_cpus(void);
extern unsigned int smp_get_max_cpus(void);
void smp_setup_processor_id(unsigned long boot_cpu_id);

/*
 * Mapping between linux logical cpu index and hartid.
 */
extern unsigned long __cpuid_to_hartid_map[NR_CPUS];
#define cpuid_to_hartid_map(cpu) __cpuid_to_hartid_map[cpu]

#define cpu_physical_id(cpu) cpuid_to_hartid_map(cpu)

Mostly all of the header can be generic but again all the mentioned
above functions are used only for RISC-V and ARM. ( probably I missed
something ).

>=20
> > --- /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
>=20
> This #endif need moving ...
>=20
> > +DECLARE_PER_CPU(cpumask_var_t, cpu_sibling_mask);
> > +DECLARE_PER_CPU(cpumask_var_t, cpu_core_mask);
>=20
> ... at least down here, if #includ-ing by assembly files is really
> necessary to permit. Preferably the #ifndef would be dropped, though.
>=20
> Jan

~ Oleksii


From xen-devel-bounces@lists.xenproject.org Mon Oct 23 11:29:40 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 11:29:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621377.967777 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qut7s-0001JX-31; Mon, 23 Oct 2023 11:29:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621377.967777; Mon, 23 Oct 2023 11:29: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 1qut7s-0001JO-0E; Mon, 23 Oct 2023 11:29:40 +0000
Received: by outflank-mailman (input) for mailman id 621377;
 Mon, 23 Oct 2023 11:29: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=7RLV=GF=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qut7r-0001I1-BP
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 11:29:39 +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 72ace10f-7197-11ee-9b0e-b553b5be7939;
 Mon, 23 Oct 2023 13:29:37 +0200 (CEST)
Received: by mail-lf1-x129.google.com with SMTP id
 2adb3069b0e04-507c5249d55so4455952e87.3
 for <xen-devel@lists.xenproject.org>; Mon, 23 Oct 2023 04:29:37 -0700 (PDT)
Received: from [192.168.201.133] ([94.75.70.14])
 by smtp.gmail.com with ESMTPSA id
 if5-20020a0564025d8500b0053f10da1105sm6181962edb.87.2023.10.23.04.29.36
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 23 Oct 2023 04:29: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: 72ace10f-7197-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698060577; x=1698665377; 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=67K4wi1FHXcF9B8JHqCxBBVrHRJ66FWBI6218bHCz6Y=;
        b=LKy27+1+ktIXw9rDFtSNt0Oi3GFqKql2cm+Kn19XWxJ+6fIlLtcGtOx5OG7sU63tnO
         j9H8UkyiNpClFMHyNToBHrRroq88MHEKOW4GX+0E8VYsP3p8quZRPAN8P2tkwIJQ+xmR
         VSNaGUD3/WnUZYjfgORToEFBeqm+q2C+guOAXDugzzXLXIk89yONcyVmy1FqZsrss5LX
         tRxH8Mr0npyHposv42ywxxMlNw9iawi0Xrx7hg6CFrNvB7hLa2mjHXC4oKi6ig/XOS28
         uiQzgKImtvNjN2NoKCn03kbcWRsibG6d84TmZE8/+85zaD6/+hgGClixPhJFolmDFj7G
         BAeg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698060577; x=1698665377;
        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=67K4wi1FHXcF9B8JHqCxBBVrHRJ66FWBI6218bHCz6Y=;
        b=wpjLPzM/XV05lnE5vq+jYb22Yy3IE0XP9wParHSCLzaZ+ZmWDRlu3Y2qa7HwOwJf22
         hxasxNTSz9JsDRU3ogorXVbfBRzWmhOFV5zL3VWBbDn48YDF4/SKqTcS7HFBtRBOf59K
         OovGvI1eholFBJezgF5pQUB80m13AWzDt7xN4VA5JzVUzKdZcekNGPsGP2I+cASdL9Vg
         GvXMuxDPjNHhpTSEpwJ0IZkR0W6YGEoiBzMJsZBGHUuSKd+THNA26EnyrjkAauPA+Hw7
         k4x42JXd8MoGDoD80Le4ZQy705D7OJICpaxeSdIcf3WIqAThAzyNDggaSYwKMVSIt9z7
         Jrcg==
X-Gm-Message-State: AOJu0YyquJmkpC3bfum3rqilnNjYe5LIw/XXh9bS+b3+5irFye3laVIp
	8gpVNp2xS+zN+SG0GKjQkAA=
X-Google-Smtp-Source: AGHT+IE6E4URa7u1ou0aeF1+YenG0pzUzBwk4T0vVYi6kc1ZIuHJFv2E/uTIzCYz6xsZUfdcTGQMcA==
X-Received: by 2002:ac2:494f:0:b0:4fb:8f79:631 with SMTP id o15-20020ac2494f000000b004fb8f790631mr5897770lfi.46.1698060576718;
        Mon, 23 Oct 2023 04:29:36 -0700 (PDT)
Message-ID: <8a36af842ed91cb599bb62bd3a9382528710dd89.camel@gmail.com>
Subject: Re: [PATCH v1 19/29] xen/asm-generic: introduce stub header
 hardirq.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, 23 Oct 2023 14:29:35 +0300
In-Reply-To: <95b6cdcf-2ceb-6b38-3318-afbd3b985a68@suse.com>
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
	 <cb76190d2b0b056c6733c1f5cfc941d0201f6490.1694702259.git.oleksii.kurochko@gmail.com>
	 <95b6cdcf-2ceb-6b38-3318-afbd3b985a68@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-10-19 at 13:04 +0200, Jan Beulich wrote:
> On 14.09.2023 16:56, Oleksii Kurochko wrote:
> > The patch introduces header stub necessry for full Xen build.
> >=20
> > Signed-off-by: Oleksii Kurochko <oleksii.kurochko@gmail.com>
>=20
> I agree this one can be generalized from Arm's, but ...
>=20
> > --- /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 {
> > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 unsigned long __softirq_pen=
ding;
> > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 unsigned int __local_irq_co=
unt;
> > +} __cacheline_aligned irq_cpustat_t;
>=20
> ... where is __cacheline_aligned going to come from without inclusion
> of xen/cache.h (as Arm has it)?
xen/cache.h should be added. thanks.

~ Oleksii


From xen-devel-bounces@lists.xenproject.org Mon Oct 23 11:32:44 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 11:32:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621381.967787 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qutAh-0003TB-GM; Mon, 23 Oct 2023 11:32:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621381.967787; Mon, 23 Oct 2023 11: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 1qutAh-0003T4-Dh; Mon, 23 Oct 2023 11:32:35 +0000
Received: by outflank-mailman (input) for mailman id 621381;
 Mon, 23 Oct 2023 11:32: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=7RLV=GF=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qutAg-0003Sy-1U
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 11:32:34 +0000
Received: from mail-lf1-x12d.google.com (mail-lf1-x12d.google.com
 [2a00:1450:4864:20::12d])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id db46a571-7197-11ee-98d5-6d05b1d4d9a1;
 Mon, 23 Oct 2023 13:32:32 +0200 (CEST)
Received: by mail-lf1-x12d.google.com with SMTP id
 2adb3069b0e04-5079fa1bbf8so4613506e87.0
 for <xen-devel@lists.xenproject.org>; Mon, 23 Oct 2023 04:32:32 -0700 (PDT)
Received: from [192.168.201.133] ([94.75.70.14])
 by smtp.gmail.com with ESMTPSA id
 k27-20020ac2457b000000b0050794b05c8asm1642883lfm.42.2023.10.23.04.32.31
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 23 Oct 2023 04:32: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: db46a571-7197-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698060752; x=1698665552; 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=4SDCtlIcWoQh+/F5iDhmYwo0s0iC8aYTSmymX3sfzVA=;
        b=WlFdzF9EA0C2y2wiluRoyBAv5B3Xvsecn4tfy8LMZv/kTEylfqLDjcgYti7Xept3i/
         slqKIpTE9IySyC/MDB24AZDbPvSa5v33VRgFUwW1fq8XjFFs6+jk6aFMom337L6nRe1M
         9HD0+JkP4Ms1TruMYA0RGTX7WB8LMEhAg3rAhJktqfbMqTuyUJBtXIt20l4VMkdAadQJ
         p0/7M2ntarhuy9uIJ7qhRvkINmLLeZIBHhKKzCpih32xY27jRcZ3mjN0PkcMetwEhdrJ
         MrdXxgh4+aaQyWmh/voheScX50DXFEZqH9BjXj+oNssRH+hA48tlwIw+0GIf1sy6hutf
         GCdg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698060752; x=1698665552;
        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=4SDCtlIcWoQh+/F5iDhmYwo0s0iC8aYTSmymX3sfzVA=;
        b=rM1gqocImjVSUdwtWFapxfaTC4Kb/Ru/kR7pp+Yuu7UzTKo2LtWkY4RUCrlVGsCXHX
         K3ezCtJGg4ZOyu/oIElEnCxd0H7yzzrAix8dcyR0P69Lytf6NDRSFE0vV69bbIsa2Tig
         f8CRpCILnhWG9dsY0c1pf2KAz1G1HCT4TAzvm+DWnFoK6ukYTr8eRsHbFYBSZ6DxZPc0
         uTVAvtTTC7Rm2W9eBGOQREyM5KjthGla2jUkmcn9DaDfXl8ktIPR/s0YrvaJgp/5KysJ
         ZDjV/gFn5oNEOXPhP9kppg/FvP2i0gXGgph/l+NJbmv4WmGBl0yKoSrgabpjOZ/twGD7
         dSGw==
X-Gm-Message-State: AOJu0Yx5W7PRvNGBzM4i3uOutH4a7RNSYjsTGblrc70w480/D2BKFa3i
	uIyDYZhst16ro+IXqIanQUo=
X-Google-Smtp-Source: AGHT+IHmbY/gq7K+NTyCHWXuibZ0q9/K+TJ3Agd7SqAmalVGS0ugHBI5Wa+mGi1yrPYVTbKXDHGmKw==
X-Received: by 2002:a19:655d:0:b0:507:9d70:b297 with SMTP id c29-20020a19655d000000b005079d70b297mr5519418lfj.60.1698060752076;
        Mon, 23 Oct 2023 04:32:32 -0700 (PDT)
Message-ID: <89edae543f03881ca371ff5dbfabe7daa977df1b.camel@gmail.com>
Subject: Re: [PATCH v1 20/29] xen/asm-generic: introduce stub header div64.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, 23 Oct 2023 14:32:31 +0300
In-Reply-To: <337bcd1c-dfc5-cbe6-8e05-7fc640dde165@suse.com>
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
	 <0c006d03b917924c411e563dcdc8043498be48b3.1694702259.git.oleksii.kurochko@gmail.com>
	 <337bcd1c-dfc5-cbe6-8e05-7fc640dde165@suse.com>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: base64
User-Agent: Evolution 3.48.4 (3.48.4-1.fc38) 
MIME-Version: 1.0

T24gVGh1LCAyMDIzLTEwLTE5IGF0IDEzOjEyICswMjAwLCBKYW4gQmV1bGljaCB3cm90ZToKPiBP
biAxNC4wOS4yMDIzIDE2OjU2LCBPbGVrc2lpIEt1cm9jaGtvIHdyb3RlOgo+ID4gLS0tIC9kZXYv
bnVsbAo+ID4gKysrIGIveGVuL2luY2x1ZGUvYXNtLWdlbmVyaWMvZGl2NjQuaAo+ID4gQEAgLTAs
MCArMSwyNCBAQAo+ID4gKy8qIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBHUEwtMi4wLW9ubHkg
Ki8KPiA+ICsjaWZuZGVmIF9fQVNNX0dFTkVSSUNfRElWNjQKPiA+ICsjZGVmaW5lIF9fQVNNX0dF
TkVSSUNfRElWNjQKPiA+ICsKPiA+ICsjaW5jbHVkZSA8eGVuL3R5cGVzLmg+Cj4gPiArCj4gPiAr
IyBkZWZpbmUgZG9fZGl2KG4sYmFzZSkgKHvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBcCj4gPiArwqDCoMKg
wqDCoMKgwqAgdWludDMyX3QgX19iYXNlID0gKGJhc2UpO8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBcCj4gPiArwqDCoMKgwqDCoMKg
wqAgdWludDMyX3QgX19yZW07wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgXAo+ID4gK8KgwqDCoMKg
wqDCoMKgIF9fcmVtID0gKCh1aW50NjRfdCkobikpICUgX19iYXNlO8KgwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIFwKPiA+ICvCoMKgwqDCoMKgwqDCoCAobikgPSAo
KHVpbnQ2NF90KShuKSkgLyBfX2Jhc2U7wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgIFwKPiA+ICvCoMKgwqDCoMKgwqDCoCBfX3JlbTvCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBcCj4gPiArIH0pCj4gCj4gV2hpbGUgSSdtIGZp
bmUgd2l0aCBoYXZpbmcganVzdCB0aGUgQklUU19QRVJfTE9ORyA9PSA2NAo+IGltcGxlbWVudGF0
aW9uCj4gaGVyZSwgdGhpcyB0aGVuIHN0aWxsIG5lZWRzIHRvIGhhdmUgdGhlICNpZiByZXRhaW5l
ZCB0aGF0IEFybSBoYXMuCj4gT25seQo+IHdpdGggdGhhdCB3aWxsIGl0IHRoZW4gYmUgZmluZSB0
byBoYXZlIGEgYmxhbmsgYmV0d2VlbiAjIGFuZCBkZWZpbmUuCj4gCj4gVGhlcmUgYXJlIHN0eWxl
IGlzc3VlcyB0aG91Z2g6IEEgYmxhbmsgaXMgbWlzc2luZyBhZnRlciB0aGUgY29tbWEsCj4gYW5k
IGFjY29yZGluZyB0byByZWNlbnQgYWdyZWVtZW50IGxlYWRpbmcgdW5kZXJzY29yZXMgc2hvdWxk
IG5vdCBiZQo+IHVzZWQgZm9yIHN5bWJvbHMgbGlrZSB0aGUgb25lcyBoZXJlIGFueW1vcmUgKEkg
YWxzbyB3b25kZXIgd2hldGhlcgo+ICJiYXNlIiBpcyByZWFsbHkgYSBnb29kIG5hbWUgZm9yIHRo
ZSBzeW1ib2w7ICJkaXZpc29yIiBtYXkgYmUgbW9yZSB0bwo+IHRoZSBwb2ludCkuIFRoZXJlIGFy
ZSBhbHNvIGV4Y2VzcyBwYXJlbnRoZXNlcyBhcm91bmQgdGhlIHR3byBjYXN0Cj4gZXhwcmVzc2lv
bnMuClRoYW5rcy4gSSdsbCB0YWtlIG1lbnRpb25lZCBpbnRvIGFjY291bnQuCgp+IE9sZXNraWkK




From xen-devel-bounces@lists.xenproject.org Mon Oct 23 11:34:11 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 11:34:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621383.967796 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qutC9-0004DM-Pp; Mon, 23 Oct 2023 11:34:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621383.967796; Mon, 23 Oct 2023 11:34: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 1qutC9-0004DF-NL; Mon, 23 Oct 2023 11:34:05 +0000
Received: by outflank-mailman (input) for mailman id 621383;
 Mon, 23 Oct 2023 11:34: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=7RLV=GF=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qutC8-0004Bf-KW
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 11:34:04 +0000
Received: from mail-lj1-x22e.google.com (mail-lj1-x22e.google.com
 [2a00:1450:4864:20::22e])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 10c1c1c6-7198-11ee-9b0e-b553b5be7939;
 Mon, 23 Oct 2023 13:34:02 +0200 (CEST)
Received: by mail-lj1-x22e.google.com with SMTP id
 38308e7fff4ca-2c50ec238aeso45246431fa.0
 for <xen-devel@lists.xenproject.org>; Mon, 23 Oct 2023 04:34:02 -0700 (PDT)
Received: from [192.168.201.133] ([94.75.70.14])
 by smtp.gmail.com with ESMTPSA id
 c3-20020a2e9d83000000b002c5109e3d0asm1579250ljj.135.2023.10.23.04.34.01
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 23 Oct 2023 04:34: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: 10c1c1c6-7198-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698060842; x=1698665642; 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=+QRHc191hMKkB0/ALRub9V+zlPReTVB7mIswMTd3oDc=;
        b=Nnv1fOXDkT8Zb4N7tr7iRZceH4DxMRzGR2qvEUrloBmQrjHkQlTTRE/5eoyzJd8wel
         ZpjoFQItBQyZB9NKbyVpPLyAB+RO4kx4ZGsO81M4/S4uU2iE2s2OHCYvNlQB7uh9xWLJ
         6qHH8tKfwGL226wdhiJaoBC1WjG/ZZgUFYBGlm2sRZQMwOJqKKfKJMpIlQL2khFIY4Kr
         mQYyv8eobpXFmlD+GB/aG5wbhGQBdjkNXMkRFIhVYQtXpcpXGUEQfJ2l0tVPgy/Cby5N
         BxrnfStCu6qubFUUP051aMXVviH7OcbK7ycIdU5kJJVKk4/xerG8irRHy3Z6DTUsQdkR
         ulcw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698060842; x=1698665642;
        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=+QRHc191hMKkB0/ALRub9V+zlPReTVB7mIswMTd3oDc=;
        b=OiOCQoT+01tF0CRDXGhjxjMiSpPxo0uu+PnIGO+0fmRvBjGUwZHxlpnz6qrMLd7dWy
         YCjwSY5J77a67Po0Jr46+UJqsyohbuO4L1WdQ/kRDSCIla6yglKeiAQTvfgDlsI82xtd
         MbIvSg08DJgUzUpKFLQMg+0a3NBCTWRkRTEVMsvOIhIb3oiy0tAVpfRj+JeN9Vu3Jmjk
         IwBAUvTw58AB34FJG3Xlv7QWJign7X/i++YP3cZDEt4uQgFd8A7PsDKUzzgoPxkTWAb2
         xnlKmDfqtU9cfOoJQOkLTHcIwLP9Rq3e+0JxPyClGlwPD+kKBsNrJBBMNYaOn5fr0Shs
         tsmg==
X-Gm-Message-State: AOJu0YwHFsXzyBpd/NrkxFRhQDmVZH6TIIkRYdYXGOFA2BMqtW7oAJsH
	zog78if+X8bKvXiZNQxFzDQ=
X-Google-Smtp-Source: AGHT+IEHWTBHBvOzqc+5oAulJKB8J3O7eVDeHvAg+44EFVzpwY7UkiQP3t12eyUZBLF2kkNwQ+Nkiw==
X-Received: by 2002:a2e:7d17:0:b0:2c1:3d9f:1f4d with SMTP id y23-20020a2e7d17000000b002c13d9f1f4dmr6372711ljc.9.1698060841926;
        Mon, 23 Oct 2023 04:34:01 -0700 (PDT)
Message-ID: <25ba35fb33008c9e6484d4280179703dca6aa26c.camel@gmail.com>
Subject: Re: [PATCH v1 21/29] xen/asm-generic: introduce stub header altp2m.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, 23 Oct 2023 14:34:00 +0300
In-Reply-To: <32b0e0b0-aed4-4204-ef6b-8b93bfb557c6@suse.com>
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
	 <619b24fbd568f439baf1941a972c6943f423b4ad.1694702259.git.oleksii.kurochko@gmail.com>
	 <32b0e0b0-aed4-4204-ef6b-8b93bfb557c6@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-10-19 at 13:27 +0200, Jan Beulich wrote:
> On 14.09.2023 16:56, Oleksii Kurochko wrote:
> > The patch introduces header stub necessry for full Xen build.
> >=20
> > Signed-off-by: Oleksii Kurochko <oleksii.kurochko@gmail.com>
> > ---
> > =C2=A0xen/include/asm-generic/altp2m.h | 34
> > ++++++++++++++++++++++++++++++++
> > =C2=A01 file changed, 34 insertions(+)
> > =C2=A0create mode 100644 xen/include/asm-generic/altp2m.h
>=20
> While odd to be needed, this looks largely okay for the moment. Just
> one remark:
>=20
> > --- /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)
> > +{
> > +=C2=A0=C2=A0=C2=A0 /* Not implemented on GENERIC. */
> > +=C2=A0=C2=A0=C2=A0 return false;
> > +}
> > +
> > +/* Alternate p2m VCPU */
> > +static inline uint16_t altp2m_vcpu_idx(const struct vcpu *v)
>=20
> uint16_t is what x86 wants, but even on Arm it's suspicious. For a
> generic header I'd say make it unsigned int, thus also eliminating
> the question whether xen/types.h should be included here.

Thanks. I'll make sure to update the patch accordingly.

~ Oleksii


From xen-devel-bounces@lists.xenproject.org Mon Oct 23 11:34:34 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 11:34:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621385.967807 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qutCc-0004vG-3G; Mon, 23 Oct 2023 11:34:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621385.967807; Mon, 23 Oct 2023 11:34: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 1qutCb-0004v9-VQ; Mon, 23 Oct 2023 11:34:33 +0000
Received: by outflank-mailman (input) for mailman id 621385;
 Mon, 23 Oct 2023 11:34: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=F7kl=GF=casper.srs.infradead.org=BATV+91fa634947ba19782c4e+7365+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qutCZ-0004sU-HR
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 11:34:33 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 1f8847ed-7198-11ee-98d5-6d05b1d4d9a1;
 Mon, 23 Oct 2023 13:34:30 +0200 (CEST)
Received: from [2001:8b0:10b:5:538b:aaf9:4fe2:8340]
 (helo=u3832b3a9db3152.ant.amazon.com)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qutCT-00DWdg-El; Mon, 23 Oct 2023 11:34: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: 1f8847ed-7198-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=MIME-Version:Content-Type:Date:Cc:To:
	From:Subject:Message-ID:Sender:Reply-To:Content-Transfer-Encoding:Content-ID:
	Content-Description:In-Reply-To:References;
	bh=30ljgbvJhZwe4KxzAAyUufP2XelmqWFz17/dDiD12EI=; b=LmFJaU8VWv8mYBR+PPA6oTimSA
	RTXYG2ormN10SYrtF17xMFeyYKyAT0ISd3quyVj97Dpbxrw0tCBzjBUo6pjNqarQivmkUEz4kyIat
	OFKQBBYc3T+2Ru/ztThlmhbhEiAMzcQeJxh5053hN2I9ZaV2XVmfbW5I4uDA2MsjXTgT2aAcbQkf9
	fQLff0XgsfKalTfNjWtT2onrMbANrHmge1gBX/qNT+WYHbUbeTiv3EufIaRlmi3OLhI/TdMaSs9Ys
	E2szAmaWMg8JhYQb6WR5QShmthvTGoym3XFGpbd9iah3ef6ZY/TlOn6hoDL2Fl04upsFZ/c2QLEQJ
	WflilpVQ==;
Message-ID: <0f6a5b8d5b3164dc58db193fa5c1ae7cd0969872.camel@infradead.org>
Subject: [PATCH] x86/pv-shim: fix grant table operations for 32-bit guests
From: David Woodhouse <dwmw2@infradead.org>
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: Mon, 23 Oct 2023 12:34:24 +0100
Content-Type: multipart/signed; micalg="sha-256"; protocol="application/pkcs7-signature";
	boundary="=-QVKk3AJ9dC3LxfISvVZD"
User-Agent: Evolution 3.44.4-0ubuntu2 
MIME-Version: 1.0
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html


--=-QVKk3AJ9dC3LxfISvVZD
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

From: David Woodhouse <dwmw@amazon.co.uk>

When switching to call the shim functions from the normal handlers, the
compat_grant_table_op() function was omitted, leaving it calling the
real grant table operations. This leaves a 32-bit shim guest failing to
set up its real grant table with the parent hypervisor.

Fixes: e7db635f4428 ("x86/pv-shim: Don't modify the hypercall table")
Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 xen/common/compat/grant_table.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/xen/common/compat/grant_table.c b/xen/common/compat/grant_tabl=
e.c
index e00bc24a34..af98eade17 100644
--- a/xen/common/compat/grant_table.c
+++ b/xen/common/compat/grant_table.c
@@ -63,6 +63,11 @@ int compat_grant_table_op(
     unsigned int i, cmd_op;
     XEN_GUEST_HANDLE_PARAM(void) cnt_uop;
=20
+#ifdef CONFIG_PV_SHIM
+    if ( unlikely(pv_shim) )
+        return pv_shim_grant_table_op(cmd, uop, count);
+#endif
+
     set_xen_guest_handle(cnt_uop, NULL);
     cmd_op =3D cmd & GNTTABOP_CMD_MASK;
     if ( cmd_op !=3D GNTTABOP_cache_flush )
--=20
2.34.1



--=-QVKk3AJ9dC3LxfISvVZD
Content-Type: application/pkcs7-signature; name="smime.p7s"
Content-Disposition: attachment; filename="smime.p7s"
Content-Transfer-Encoding: base64

MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgEFADCABgkqhkiG9w0BBwEAAKCCEkQw
ggYQMIID+KADAgECAhBNlCwQ1DvglAnFgS06KwZPMA0GCSqGSIb3DQEBDAUAMIGIMQswCQYDVQQG
EwJVUzETMBEGA1UECBMKTmV3IEplcnNleTEUMBIGA1UEBxMLSmVyc2V5IENpdHkxHjAcBgNVBAoT
FVRoZSBVU0VSVFJVU1QgTmV0d29yazEuMCwGA1UEAxMlVVNFUlRydXN0IFJTQSBDZXJ0aWZpY2F0
aW9uIEF1dGhvcml0eTAeFw0xODExMDIwMDAwMDBaFw0zMDEyMzEyMzU5NTlaMIGWMQswCQYDVQQG
EwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYD
VQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50
aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC
AQEAyjztlApB/975Rrno1jvm2pK/KxBOqhq8gr2+JhwpKirSzZxQgT9tlC7zl6hn1fXjSo5MqXUf
ItMltrMaXqcESJuK8dtK56NCSrq4iDKaKq9NxOXFmqXX2zN8HHGjQ2b2Xv0v1L5Nk1MQPKA19xeW
QcpGEGFUUd0kN+oHox+L9aV1rjfNiCj3bJk6kJaOPabPi2503nn/ITX5e8WfPnGw4VuZ79Khj1YB
rf24k5Ee1sLTHsLtpiK9OjG4iQRBdq6Z/TlVx/hGAez5h36bBJMxqdHLpdwIUkTqT8se3ed0PewD
ch/8kHPo5fZl5u1B0ecpq/sDN/5sCG52Ds+QU5O5EwIDAQABo4IBZDCCAWAwHwYDVR0jBBgwFoAU
U3m/WqorSs9UgOHYm8Cd8rIDZsswHQYDVR0OBBYEFAnA8vwL2pTbX/4r36iZQs/J4K0AMA4GA1Ud
DwEB/wQEAwIBhjASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEF
BQcDBDARBgNVHSAECjAIMAYGBFUdIAAwUAYDVR0fBEkwRzBFoEOgQYY/aHR0cDovL2NybC51c2Vy
dHJ1c3QuY29tL1VTRVJUcnVzdFJTQUNlcnRpZmljYXRpb25BdXRob3JpdHkuY3JsMHYGCCsGAQUF
BwEBBGowaDA/BggrBgEFBQcwAoYzaHR0cDovL2NydC51c2VydHJ1c3QuY29tL1VTRVJUcnVzdFJT
QUFkZFRydXN0Q0EuY3J0MCUGCCsGAQUFBzABhhlodHRwOi8vb2NzcC51c2VydHJ1c3QuY29tMA0G
CSqGSIb3DQEBDAUAA4ICAQBBRHUAqznCFfXejpVtMnFojADdF9d6HBA4kMjjsb0XMZHztuOCtKF+
xswhh2GqkW5JQrM8zVlU+A2VP72Ky2nlRA1GwmIPgou74TZ/XTarHG8zdMSgaDrkVYzz1g3nIVO9
IHk96VwsacIvBF8JfqIs+8aWH2PfSUrNxP6Ys7U0sZYx4rXD6+cqFq/ZW5BUfClN/rhk2ddQXyn7
kkmka2RQb9d90nmNHdgKrwfQ49mQ2hWQNDkJJIXwKjYA6VUR/fZUFeCUisdDe/0ABLTI+jheXUV1
eoYV7lNwNBKpeHdNuO6Aacb533JlfeUHxvBz9OfYWUiXu09sMAviM11Q0DuMZ5760CdO2VnpsXP4
KxaYIhvqPqUMWqRdWyn7crItNkZeroXaecG03i3mM7dkiPaCkgocBg0EBYsbZDZ8bsG3a08LwEsL
1Ygz3SBsyECa0waq4hOf/Z85F2w2ZpXfP+w8q4ifwO90SGZZV+HR/Jh6rEaVPDRF/CEGVqR1hiuQ
OZ1YL5ezMTX0ZSLwrymUE0pwi/KDaiYB15uswgeIAcA6JzPFf9pLkAFFWs1QNyN++niFhsM47qod
x/PL+5jR87myx5uYdBEQkkDc+lKB1Wct6ucXqm2EmsaQ0M95QjTmy+rDWjkDYdw3Ms6mSWE3Bn7i
5ZgtwCLXgAIe5W8mybM2JzCCBhQwggT8oAMCAQICEQDGvhmWZ0DEAx0oURL6O6l+MA0GCSqGSIb3
DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYD
VQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28g
UlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMB4XDTIyMDEwNzAw
MDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJARYTZHdtdzJAaW5mcmFkZWFkLm9y
ZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3GpC2bomUqk+91wLYBzDMcCj5C9m6
oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZHh7htyAkWYVoFsFPrwHounto8xTsy
SSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT9YgcBqKCo65pTFmOnR/VVbjJk4K2
xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNjP+qDrh0db7PAjO1D4d5ftfrsf+kd
RR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy2U+eITZ5LLE5s45mX2oPFknWqxBo
bQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3BgBEmfsYWlBXO8rVXfvPgLs32VdV
NZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/7auNVRmPB3v5SWEsH8xi4Bez2V9U
KxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmdlFYhAflWKQ03Ufiu8t3iBE3VJbc2
5oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9aelIl6vtbhMA+l0nfrsORMa4kobqQ5
C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMBAAGjggHMMIIByDAfBgNVHSMEGDAW
gBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeDMcimo0oz8o1R1Nver3ZVpSkwDgYD
VR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYwFAYIKwYBBQUHAwQGCCsGAQUFBwMC
MEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYBBQUHAgEWF2h0dHBzOi8vc2VjdGln
by5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9jcmwuc2VjdGlnby5jb20vU2VjdGln
b1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1haWxDQS5jcmwwgYoGCCsGAQUFBwEB
BH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdvLmNvbS9TZWN0aWdvUlNBQ2xpZW50
QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAjBggrBgEFBQcwAYYXaHR0cDovL29j
c3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5mcmFkZWFkLm9yZzANBgkqhkiG9w0B
AQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQvQ/fzPXmtR9t54rpmI2TfyvcKgOXp
qa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvIlSPrzIB4Z2wyIGQpaPLlYflrrVFK
v9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9ChWFfgSXvrWDZspnU3Gjw/rMHrGnql
Htlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0whpBtXdyDjzBtQTaZJ7zTT/vlehc/
tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9IzCCBhQwggT8oAMCAQICEQDGvhmW
Z0DEAx0oURL6O6l+MA0GCSqGSIb3DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3Jl
YXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0
ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJl
IEVtYWlsIENBMB4XDTIyMDEwNzAwMDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJ
ARYTZHdtdzJAaW5mcmFkZWFkLm9yZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3
GpC2bomUqk+91wLYBzDMcCj5C9m6oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZH
h7htyAkWYVoFsFPrwHounto8xTsySSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT
9YgcBqKCo65pTFmOnR/VVbjJk4K2xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNj
P+qDrh0db7PAjO1D4d5ftfrsf+kdRR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy
2U+eITZ5LLE5s45mX2oPFknWqxBobQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3
BgBEmfsYWlBXO8rVXfvPgLs32VdVNZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/
7auNVRmPB3v5SWEsH8xi4Bez2V9UKxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmd
lFYhAflWKQ03Ufiu8t3iBE3VJbc25oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9ae
lIl6vtbhMA+l0nfrsORMa4kobqQ5C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMB
AAGjggHMMIIByDAfBgNVHSMEGDAWgBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeD
Mcimo0oz8o1R1Nver3ZVpSkwDgYDVR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYw
FAYIKwYBBQUHAwQGCCsGAQUFBwMCMEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYB
BQUHAgEWF2h0dHBzOi8vc2VjdGlnby5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9j
cmwuc2VjdGlnby5jb20vU2VjdGlnb1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1h
aWxDQS5jcmwwgYoGCCsGAQUFBwEBBH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdv
LmNvbS9TZWN0aWdvUlNBQ2xpZW50QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAj
BggrBgEFBQcwAYYXaHR0cDovL29jc3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5m
cmFkZWFkLm9yZzANBgkqhkiG9w0BAQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQv
Q/fzPXmtR9t54rpmI2TfyvcKgOXpqa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvI
lSPrzIB4Z2wyIGQpaPLlYflrrVFKv9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9Ch
WFfgSXvrWDZspnU3Gjw/rMHrGnqlHtlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0w
hpBtXdyDjzBtQTaZJ7zTT/vlehc/tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9
IzGCBMcwggTDAgEBMIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVz
dGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMT
NVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEA
xr4ZlmdAxAMdKFES+jupfjANBglghkgBZQMEAgEFAKCCAeswGAYJKoZIhvcNAQkDMQsGCSqGSIb3
DQEHATAcBgkqhkiG9w0BCQUxDxcNMjMxMDIzMTEzNDI0WjAvBgkqhkiG9w0BCQQxIgQgHmljlvk1
obTZyG70KO/yoXD/yM8zjipAN3VEZuET5HAwgb0GCSsGAQQBgjcQBDGBrzCBrDCBljELMAkGA1UE
BhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEYMBYG
A1UEChMPU2VjdGlnbyBMaW1pdGVkMT4wPAYDVQQDEzVTZWN0aWdvIFJTQSBDbGllbnQgQXV0aGVu
dGljYXRpb24gYW5kIFNlY3VyZSBFbWFpbCBDQQIRAMa+GZZnQMQDHShREvo7qX4wgb8GCyqGSIb3
DQEJEAILMYGvoIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVy
MRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNl
Y3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEAxr4Z
lmdAxAMdKFES+jupfjANBgkqhkiG9w0BAQEFAASCAgAVeZsR5+NEQY9Rh9LaQUCBTxMAnOIEeqXl
JDay+A629lzNX0l6HWxed4F8Yd1juQCmZANZkSOpKp6dJ+iH64RhpBTzj3N505movdZhKXCnASFH
ziulJLWs4o5lEWLdMgvVxRwfv3r8jLh/VJsvWVWkvASnkOTl8Qdv/cY0Q+6ukriY4g9BNQ4bJns7
O5U548gnXh68M9MNgylQWdtLEMAe30kIdYlLtFS1GIC2ILqx7NVsarN4FKI7lhZ2N/QS9KaW3etm
bVhOPDbGRlRtLJJjcGxREAT8rfqow111ygr5jUEcTuLuN1Byln+Gg3jgSGVcLeGtw5cwP/i1rg7I
7/EVwiQf41RAgHR5wwWh8YjZ770DHWIHbYHzR20FdCInP80UP+apU0gFHbRNoHsXJRfs0MNuMRd/
dHHcK66qr1tDW7LKVsZL5A8zNLY0IbssWgm6wAxGII03x3oiB9cQES14v8IF1KjhS8Ue3bGWAfId
aO/lLMaLONOhfqQBjuwSGBBsCcJ+dsQG8AOmDz8X/yvLU3sMqH3jjJPg4VYMViyIA767VxkybH26
ooyoo596GlOrai73h/rWnDd6vkp8Bdl2S+4/1d54OkZ9o5E3raenziCoNHR+66AMQn6oTlOClGlc
75rrUoTNHy8+in4jfGmiGde6BYus/yfmHHuwXwzZLgAAAAAAAA==


--=-QVKk3AJ9dC3LxfISvVZD--


From xen-devel-bounces@lists.xenproject.org Mon Oct 23 11:35:36 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 11:35:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621389.967817 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qutDb-00063n-FS; Mon, 23 Oct 2023 11:35:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621389.967817; Mon, 23 Oct 2023 11:35: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 1qutDb-00063g-Bi; Mon, 23 Oct 2023 11:35:35 +0000
Received: by outflank-mailman (input) for mailman id 621389;
 Mon, 23 Oct 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=7RLV=GF=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qutDa-00063L-9d
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 11:35:34 +0000
Received: from mail-ej1-x629.google.com (mail-ej1-x629.google.com
 [2a00:1450:4864:20::629])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 46ec93fb-7198-11ee-98d5-6d05b1d4d9a1;
 Mon, 23 Oct 2023 13:35:33 +0200 (CEST)
Received: by mail-ej1-x629.google.com with SMTP id
 a640c23a62f3a-9becde9ea7bso901252166b.0
 for <xen-devel@lists.xenproject.org>; Mon, 23 Oct 2023 04:35:33 -0700 (PDT)
Received: from [192.168.201.133] ([94.75.70.14])
 by smtp.gmail.com with ESMTPSA id
 s20-20020a170906355400b009bf7a4d591csm6667803eja.11.2023.10.23.04.35.32
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 23 Oct 2023 04:35: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: 46ec93fb-7198-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698060933; x=1698665733; 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=q9Y4qk5nyjIGLcF5n2zKBWyG3Q+CvSfe+TyiLxxvulg=;
        b=HPzYDXVSSOqSGhSRflOaefV4x2g+NdrnBLz/2FPdheHi5Gnf5q4qJkGBJmCAFRQdwN
         CP9V31pNAUtbh9z+hUSOcWH2+L8fswXeZg2CYuPQFAvtMs21MD/iEVqznwubVz8LBPWo
         ozVOT34YO4TK9EBNvuM8oLrR+K7Etamy/8NKkHdV5Pogvg408GKR3VD+oZirRE3EGQhg
         xmQwpU7ybkrzunj/EM2c9roSdblvWn8zG3+zi9NSP5pNOg71u5y4IzzlwazDLM0qA9pD
         E3jVLmEe4OosSTxk97TsgTabIm5bSMSqUyt+kyQDAcv0e9OPGq4lDv5Ab//iegxoCYE9
         YIfA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698060933; x=1698665733;
        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=q9Y4qk5nyjIGLcF5n2zKBWyG3Q+CvSfe+TyiLxxvulg=;
        b=Y3mE6qP3vYqT/hZoKSjvMYyM6zzFJl1YQ72IGKIHOwbe+xcjFbwmmV5xaemSWtEFNj
         Qz+GVkrAJDT1N9ChXZbbPRfFvr4A1sfYFUhvXFeD35wXSLNx+ByXnp7DQJCKR1rXwAzh
         /b06V1ETfCYkjHVjsgH7o2BjRmDEDjapaLZs8gL217IQ2gTFmgANZyPhl9X2+5EU4qQt
         qcoucUR7DXPFxZjLoTx2s1BQsqN+BvGFHx3Mll9e6ZzIdeeJvC7HJ/o5USvKno2utdqo
         skZxcJKk9/r/USXICJp64eAmEFdhRkCDY3ParucSLrpc3ru3K6X9ham1wHSUMkYYbZx5
         hAoA==
X-Gm-Message-State: AOJu0Yw0pE8BIUZkrRIGS8bZHlNNXxSua2syxaMCBdpiN5GSqelVLfXn
	mFDdKENZ9zmRLXgG2Y2cQY8=
X-Google-Smtp-Source: AGHT+IFG6yyuvAR7kq0R65JqIGY/a0wMqSLt3yzNV1kFkRM/uQ4CPp8pDi6zLH5q+ihfO0IbL//Uuw==
X-Received: by 2002:a17:907:9445:b0:9ae:5f52:a491 with SMTP id dl5-20020a170907944500b009ae5f52a491mr11511424ejc.8.1698060932935;
        Mon, 23 Oct 2023 04:35:32 -0700 (PDT)
Message-ID: <9bbc8cc422b8d4362f7e928c9113e74aa45cff82.camel@gmail.com>
Subject: Re: [PATCH v1 22/29] xen/asm-generic: introduce stub header delay.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, 23 Oct 2023 14:35:31 +0300
In-Reply-To: <73a8d43d-9626-fde3-9e81-a65bb9096712@suse.com>
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
	 <b16677ea84860ae7143339b8c856f0da7f8c2b6c.1694702259.git.oleksii.kurochko@gmail.com>
	 <73a8d43d-9626-fde3-9e81-a65bb9096712@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-10-19 at 13:30 +0200, Jan Beulich wrote:
> On 14.09.2023 16:56, Oleksii Kurochko wrote:
> > The patch introduces header stub necessry for full Xen build.
> >=20
> > Signed-off-by: Oleksii Kurochko <oleksii.kurochko@gmail.com>
> > ---
> > =C2=A0xen/include/asm-generic/delay.h | 21 +++++++++++++++++++++
> > =C2=A01 file changed, 21 insertions(+)
> > =C2=A0create mode 100644 xen/include/asm-generic/delay.h
>=20
> Besides the implementation below not being acceptable, imo we should
> do
> away with asm/delay.h altogether. x86 can rename __udelay() to
> udelay(),
> and then the declaration can move to xen/delay.h.
>=20
It makes sense. I'll do that.

~ Oleksii



From xen-devel-bounces@lists.xenproject.org Mon Oct 23 11:37:53 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 11:37:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621394.967826 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qutFo-0007cZ-QY; Mon, 23 Oct 2023 11:37:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621394.967826; Mon, 23 Oct 2023 11: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 1qutFo-0007cS-Ny; Mon, 23 Oct 2023 11:37:52 +0000
Received: by outflank-mailman (input) for mailman id 621394;
 Mon, 23 Oct 2023 11:37: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=7RLV=GF=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qutFn-0007b8-ND
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 11:37:51 +0000
Received: from mail-ed1-x533.google.com (mail-ed1-x533.google.com
 [2a00:1450:4864:20::533])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 9821e904-7198-11ee-9b0e-b553b5be7939;
 Mon, 23 Oct 2023 13:37:49 +0200 (CEST)
Received: by mail-ed1-x533.google.com with SMTP id
 4fb4d7f45d1cf-53f6ccea1eeso4803153a12.3
 for <xen-devel@lists.xenproject.org>; Mon, 23 Oct 2023 04:37:49 -0700 (PDT)
Received: from [192.168.201.133] ([94.75.70.14])
 by smtp.gmail.com with ESMTPSA id
 u17-20020a17090657d100b009c5c5c2c59csm6735754ejr.149.2023.10.23.04.37.48
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 23 Oct 2023 04:37: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: 9821e904-7198-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698061069; x=1698665869; 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=IxSLz6EGT+j3MtCXX+y5vLwvJV8Ki3KXMBlVKvh3zUQ=;
        b=StOPSyhwm7UA6zdPtpo+HinMYihpEYPfgyMsrqT8vN/ePkU9gk2nNyK9rpOizpDHe4
         2U3AtNbsragKC0hvJxgQSbhrjuvs68M2uX6SPn1w7IfQ8Ie2GHAUse+1HE87VlaeYdnF
         XmNYApiTpOC0or7ZLg7Z+Avqumim8UyHNcAY9DKqKN3j9YFahmOG4IcKQqzrcUFvX1tp
         a/LjFUarc4M/aMZFRr68vA0D3XmNzlbmhXf0fIMijJVI2CBGTrc+2Gvy51RZ2E9ZGjgK
         IPMSfYqej1aa4E9mDyR1uS+zq7MnGvdIiHWOVueY/21J42xSl/gneh4k5vfxvYn1OAKk
         3B/Q==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698061069; x=1698665869;
        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=IxSLz6EGT+j3MtCXX+y5vLwvJV8Ki3KXMBlVKvh3zUQ=;
        b=U31TC+sFVgpnrBsGU8gYgceRQVv431vWZt+X5wXMduCj3HM/fw/lPvscmx/m/11XIg
         HZB9+vMK0CS5aim1+3joXJmRas/MGC6FEmWeObRbe35vuP1VlyRezIBfLQA38z8MOpjE
         MSgs/GcERV3pfPzpt6Lndnckaf4PHqT3vU8SMJQuI2tSJL10ZthrUjBbdRy5gH572Yl+
         OB1z7D0stwBjbgumDMXRpmwjf93N5x6EjVlB6JnS26FHGbmeYUM7QxrOM7yiTb35I3NL
         Zr3cQjQV1d32JOHuyGaDao68NAv2GsBEy6o1X1GSuZ70JpJdAZgniZEBJhxy4RkVD9xH
         NBhw==
X-Gm-Message-State: AOJu0YztccY0Lw41uY4fLFEOvSgY/Gu7NCYRivpTrSWpWPaRmZJelynu
	8GI8ImgcMQjEPFyRpHG0Y798LjmfZjI=
X-Google-Smtp-Source: AGHT+IEx9maipNzOZzlFBzYS821LtaYJ3Pu8tifGKX5qGp+MnFzmxmFW9+SSUsST+FcwZdxJdOiFtQ==
X-Received: by 2002:a17:907:9492:b0:9ae:82b4:e306 with SMTP id dm18-20020a170907949200b009ae82b4e306mr7505218ejc.62.1698061069110;
        Mon, 23 Oct 2023 04:37:49 -0700 (PDT)
Message-ID: <58817b8b52d4cb810ca3f8aba78d03089894df86.camel@gmail.com>
Subject: Re: [PATCH v1 26/29] xen/asm-generic: introduce stub header
 monitor.h
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>, 
	xen-devel@lists.xenproject.org
Date: Mon, 23 Oct 2023 14:37:47 +0300
In-Reply-To: <99fcc71c-eefc-d004-d4d3-6e0d0e76339d@suse.com>
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
	 <a2663ba600f468bc4d6544bb64354a77c86a40b3.1694702259.git.oleksii.kurochko@gmail.com>
	 <99fcc71c-eefc-d004-d4d3-6e0d0e76339d@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-10-19 at 13:35 +0200, Jan Beulich wrote:
> On 14.09.2023 16:56, Oleksii Kurochko wrote:
> > --- /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 */
>=20
> ???
Oh, I'll drop SPDX-License-Identifier: GPL-2.0.
>=20
> > +/*
> > + * 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>
>=20
> No need for this, I don't think?
Yes, I'll drop that too.
>=20
> > +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)
> > +{
> > +=C2=A0=C2=A0=C2=A0 /* No arch-specific monitor ops on GENERIC. */
> > +=C2=A0=C2=A0=C2=A0 return -EOPNOTSUPP;
> > +}
> > +
> > +int arch_monitor_domctl_event(struct domain *d,
> > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=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 xen_domctl_monitor_op *mop);
> > +
> > +static inline
> > +int arch_monitor_init_domain(struct domain *d)
> > +{
> > +=C2=A0=C2=A0=C2=A0 /* No arch-specific domain initialization on GENERI=
C. */
> > +=C2=A0=C2=A0=C2=A0 return 0;
> > +}
> > +
> > +static inline
> > +void arch_monitor_cleanup_domain(struct domain *d)
> > +{
> > +=C2=A0=C2=A0=C2=A0 /* No arch-specific domain cleanup on GENERIC. */
> > +}
> > +
> > +static inline uint32_t arch_monitor_get_capabilities(struct domain
> > *d)
> > +{
> > +=C2=A0=C2=A0=C2=A0 uint32_t capabilities =3D 0;
> > +
> > +=C2=A0=C2=A0=C2=A0 return capabilities;
>=20
> Just "return 0"?
Thanks. I'll update that part.


~ Oleksii


From xen-devel-bounces@lists.xenproject.org Mon Oct 23 11:51:24 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 11:51:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621399.967836 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qutSl-0005Gf-VQ; Mon, 23 Oct 2023 11:51:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621399.967836; Mon, 23 Oct 2023 11:51: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 1qutSl-0005GY-Sg; Mon, 23 Oct 2023 11:51:15 +0000
Received: by outflank-mailman (input) for mailman id 621399;
 Mon, 23 Oct 2023 11:51: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=OVTz=GF=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qutSk-0005F7-Cp
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 11:51:14 +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 76ce674a-719a-11ee-98d5-6d05b1d4d9a1;
 Mon, 23 Oct 2023 13:51:12 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DU2PR04MB9130.eurprd04.prod.outlook.com (2603:10a6:10:2f5::5) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.11; Mon, 23 Oct
 2023 11:50:43 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6933.011; Mon, 23 Oct 2023
 11:50: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: 76ce674a-719a-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=L/lv359VsVyCg3aYpuzHqcCKZDJiDKY8CUBVfA5/++5hyQJTraEGxUPr86uazQ4JbMOWqAAtDoGtgk57fFwL7QrK86ejrk5IDY7clWnMVAfsqL4O4UMw6K7evKXcpNpfsvI+kS1EYtv1jQFqErVqut2pfKaIj07rP6ku8t5gkE+9qKXBBihH8vRb72XTKKVBCPXQKncbOi9xq/INl6rGbgqceQHSDQnT5YOymFcGWxMCXj+LghDKjLlfE5G2BZhx5TKTneQ8ZUS4/T0XpPADQDgarK2+qUbNqjLMXky0/4aDKUL0xw2PWOrWa67y2rNxDtmATeUajL+lUFcQSrOfWw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=pMu0DOIyqQGn7n1ISvh+0GShf823uiQHyp1kTEWEVww=;
 b=fN5t+u96rJC8/5Ezr5IrS7zr5p75ng7JnP5E2QV4JBPkfKVqpFtKJTsy3hmN1GVI0U8RQKXxoT/M7kyJwjKKGvX+ycZG5QHMSXDtje/sX1vv7UtCkLb+e/htBDQgnBK+p2SRoEUI6f+TMPvpVr9uAKvI9hhfu6UsooTJjnMS2B+rQYv01HmoYC6aMD5FpMm+GnACRfOM2dNJD+CemAr8zloLTHGSSCpPNPHmXwakSovi4gI5RNe1IcI00qpO49dJIJ0v9wl6Ou8V36XKwBMwdhJuky2Y9lOmECoO21um1OqjYcIrxW+BkRS6R9GXZmgpryKoeg8LWNHeealUW2exXg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=pMu0DOIyqQGn7n1ISvh+0GShf823uiQHyp1kTEWEVww=;
 b=RTuBdxtXgfNmoQYv+0jUDCYLBxos2JhteAc+257itCN3j5rbBOkS2qWfDdbHSZDPpEttcnO+nfn3VONHaNnj2HxgE1yXX3DRNuqEKHxqRdPf2NwKrY0JtH3a7vpjgkz75EjGI4qVMLHtbcAUgcpTRTto0PW73MIn40f7qhDfN718M4Qx8HqW+BOVHR7rkFXk0nDMXa7TOM0KFNMsqRi/7YEUd39xESuRgYici1HxM4t9QCh4RbrlG5cM/k2lsmgvLGByRLSbFocTGbPxyWt+dk2OMpEWc6frVRncQtsWrjKHut+WicJ2dNdL64xQrcbmQ20JL3r9QBBDhrYeDJwO2A==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <7b02b0dc-2649-37d7-f6d0-f3ad375480dd@suse.com>
Date: Mon, 23 Oct 2023 13:50: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] x86/pv-shim: fix grant table operations for 32-bit guests
Content-Language: en-US
To: David Woodhouse <dwmw2@infradead.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>,
 xen-devel@lists.xenproject.org
References: <0f6a5b8d5b3164dc58db193fa5c1ae7cd0969872.camel@infradead.org>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <0f6a5b8d5b3164dc58db193fa5c1ae7cd0969872.camel@infradead.org>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0010.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:15::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_|DU2PR04MB9130:EE_
X-MS-Office365-Filtering-Correlation-Id: bd7c2e7c-355d-4c86-1878-08dbd3be48df
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	pqOClXk9hzRvMSWcxtR3MGyHGLMW44wX6tEemfMkRA5UEVA6+OlgMWSpS4dZREiU2skGQZsMQfa/RhU2USPj1jF23LDBjQsaqPP6coWVMYfyrpE8IncMZRDgu1ZFnYtO0JRyCI6tc5uKxzYMHUASmrJYmP/RmGzNRlbPPhvlHqZI+eLG6qtK88g2H+SQXEErdMmVThXncpMjp4rR+eKSxQb8uqxucccaIaFPMsTsK6qMJuWx4jT81pmFAkp6m4pJ8+8hBuEUbpe7Q9n7AjSu6xFet8rMccXwpar7sSx2uEcTXsiX1Zi/PY+Hh1gf4k/dWg+db9n1+NVOXMTzorqkyHCbcVIdzR2G9i2JK5+sQ0S/iaXDWUT9dnha5nJAEkDr+aNPyy+1tPea+GiyPX8u32+QM2Udd8tSwDSwhpanKQt+/OTKblCGKDpY/mQX3UVbcbMDPtjssowIQTP2gHX6uIUNdDVmlTgluGEh+pQolD9ZxAV/LxNVGXD06k10StlsMT5rBTAMY9qvS1X61FbZaSmldwfma1SWcMJuBICVLYS7Pnt3RzPwWMl+ldIV9s3JhjzFxxZicQsAijjTspkj1KVEjHh6w1B9bGoAqDuQRg1II3qN9yNIykE7ggVgSEy4cQtdSQK7ppYZKQ0jKkAWitch2//yqNJ3Cu/az18gwvIoXkTFPxGMoyUMWeEwvi5S
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)(396003)(39850400004)(366004)(230922051799003)(64100799003)(1800799009)(186009)(451199024)(8936002)(8676002)(4744005)(2906002)(5660300002)(86362001)(4326008)(31686004)(31696002)(66946007)(66556008)(66476007)(6916009)(54906003)(316002)(41300700001)(36756003)(6486002)(38100700002)(478600001)(966005)(6512007)(2616005)(26005)(53546011)(6506007)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?anJNWStBTFJLbTdnTWtGcmdFWVJxQVRKRGdOdFNNTmxvQ0RZZEpGeWZ1Z1NF?=
 =?utf-8?B?ckFqT2s3MGFSV1Jmelk0RWNyWXVLdlhTcCt2MzhRY1FmTVdnZWVwbEZVQWVr?=
 =?utf-8?B?SmR5b2wwMEFmNGxQNTNYdlpQM0ptSit1M29PUWJ5aVZZd0dpUDlBTXZxM09K?=
 =?utf-8?B?UjUwOENDRWhjcmRWUEg5TmFzdktaTGZ1b1RVR2NYTjNoZEFWT1ZYWWkxMjNU?=
 =?utf-8?B?RWxYL0tQbzM5ZXZabXpXT3hZMlB0VlFmdnZLdDBTczJRRUhiVlpRcFQ2NUxu?=
 =?utf-8?B?VjNxZytBRGVVS05RRExaVS9tVG1sd3EvUEI1MDB2Zm5FY01CbUVFODA0ZS82?=
 =?utf-8?B?cHhqT0NrY2R6a3FJMUdzMFVPWHRkZ1NUV0libmtZVWF6d0ZpOGQwUHQrZnRa?=
 =?utf-8?B?L05nYVcvZG1jR0JPdFFGSFR6T0dIeHJTWUxKQklrV3p5bUZ0RXhGMlpGL3FE?=
 =?utf-8?B?aHhKSmxEQjg3U3FwZG5ucVo0dUtmOVQ1cHVGTU05ZHRvZ21iS01SVEdwSEF1?=
 =?utf-8?B?V2VPMjhTSnJFb1UrS1YxWnJaUEdhYm8yNnFBVDhBWFZYSTN2QVN2Q1gwT2t5?=
 =?utf-8?B?MmxOalI3OXdraTlrNk9hMDNwcVFRcGVER29OY1p1VFRFU1h4Q2Z4SUxUdlJj?=
 =?utf-8?B?SkVtWTE3ZGVJOU1Bc3JabnBXR1V1TWJUNWZ1bzhRMHdhZ01FclpZWUR6ZUsw?=
 =?utf-8?B?Z29nY0MyL1lTYWhnWndLUWJSTW5BeWRxd1hqU245NnBJVGIwZXE0a0k4MWhj?=
 =?utf-8?B?QnRhazBPU09jQWNFU2g0bDZZbklNblVSaENCbzVQNFpGWVB5MGNJSnVMcjFN?=
 =?utf-8?B?dU9XVmZ4T28vem41N3RKbDJGMGVDTkNjb1k2eHZJLy90V29jYjRuQW8zekJS?=
 =?utf-8?B?QTdJZmFqRVMvcUZWVnJJTmw2dUxDdUpaS3VXcjRzbkZkT1FPTzlBZ041S3VX?=
 =?utf-8?B?SkwzUnF4UWkwTlg1QVdXSW5tZnpSNERPVUJRUDlTRzQ2bzFyMW5UWG9WR1By?=
 =?utf-8?B?eWlMcUZzaDB2L2YzNDl3THJFUjUvODkyNHBkaG5YV2poYnp3b1hpaGhCcWdi?=
 =?utf-8?B?ZnhqZFJ5ck1WMWtqTWxhNkpxVUdzZ0lpamJzc013NnFXMEZpSmY5RDRRTEk5?=
 =?utf-8?B?bW11T1NkbjhabldmZWYvL1IrRGwvbU9tZWFlY2lpbkxMblNRNnI1c08yclc0?=
 =?utf-8?B?U1h6VFN2RU9od0xMNGNBSnZQc0V5aUdtNmtEVzhSQXlOMTRCK1dDdXdQREJ2?=
 =?utf-8?B?R3pWNy9sYWhRZFFPRW1jb0twajhzb0tiNW1seEpGeTFGQjNOR2d5eTFwS3Jw?=
 =?utf-8?B?Uy9mUmpYY0xpYmZGV3N1UjUwcldteThxaFFhdCtjRDZZR3I4ZGM5REE1LzNt?=
 =?utf-8?B?eFhraG5EYVFURFhxRUhQcUVBVFJxamZWcUhrSzJ6RDBwRnA4RGtPeEx2OXdp?=
 =?utf-8?B?RU5qY01MZDVzQUkwTEs5UGg3aVJrd3NhQklnQkFwQkcvNWhadjRSOG95ZmNm?=
 =?utf-8?B?VVVDK0J6dE93MGxUYnMrOTN4VHd0UGorNjBEZVRMaXVFMTVzS0tId01BaUJs?=
 =?utf-8?B?TVBxbTk1dDNpU0lEUVBrU01GZHJLS1NNL3BmVGM4TWZTWUk4cUpBazlvYnRl?=
 =?utf-8?B?WHpRL09NblVXS3QxdWdockMvdy8xTkZPYlRhazY5QTJFSFYranJaMzZwWXJG?=
 =?utf-8?B?OEsyZUx4T1ZRVkd3VmNhN2x6WDYyNFUrdHJ0RWs0UTVHZnN3ZWVUVjB0RkhS?=
 =?utf-8?B?Njg4Tk0wN2M2UDlMQjJOalVVZFNqbUNDZjkyNUlVYWNEcUxmOVJiTlpnNndH?=
 =?utf-8?B?THhwQzBFQkZxSUNtcEdTODl2a2l6NEtSSjUvZlFmeG9JMjJNcEJsSTNQc29I?=
 =?utf-8?B?RG9VaWVIcGVoZmFYb1l2TkcyQS81eEJhU1FKQXBzdnYwRjhEd05vZmRMWXEx?=
 =?utf-8?B?d3FsYzZJWWNjM2o0K1EwOHl0dlcxY1NZa3ZaNWpCZ1BxdFJ0WDlkQkZ5Zzkr?=
 =?utf-8?B?QXBEaTMvbmd1SFV6dHQxSkkrUnU2em9XYVVzMVUxakdhZDdNTDRobDJIM2tq?=
 =?utf-8?B?Zi9ReFBTSktjSytWNjBOSW5xZGtqc0JzZmg0T3kwT1RrY3ZyQzJJVkdpYTUz?=
 =?utf-8?Q?6lX62alPHQDSdmmtSEAIjUMHN?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: bd7c2e7c-355d-4c86-1878-08dbd3be48df
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Oct 2023 11:50:42.4434
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 5R/MgSNiuBthsoGvKgjRSnmkMYrnQ/7icKJ49slreb+ilwNxRXSrfJDrm3aW9+D0ivCqHctctE9QgGFnu6bz1Q==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU2PR04MB9130

On 23.10.2023 13:34, David Woodhouse wrote:
> From: David Woodhouse <dwmw@amazon.co.uk>
> 
> When switching to call the shim functions from the normal handlers, the
> compat_grant_table_op() function was omitted, leaving it calling the
> real grant table operations. This leaves a 32-bit shim guest failing to
> set up its real grant table with the parent hypervisor.
> 
> Fixes: e7db635f4428 ("x86/pv-shim: Don't modify the hypercall table")
> Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>

A patch with this same effect has been pending for a long time:
https://lists.xen.org/archives/html/xen-devel/2023-03/msg00041.html (v2;
I have a re-based v3 pending locally, awaiting whatever kind of feedback
on v2). The question of whether it was necessary to split out the actual
bug fix was raised yet earlier, in the context of v1 (albeit I'm not
sure whether that was in email or on irc).

Jan


From xen-devel-bounces@lists.xenproject.org Mon Oct 23 11:58:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 11:58:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621403.967846 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quta7-0000WF-O2; Mon, 23 Oct 2023 11:58:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621403.967846; Mon, 23 Oct 2023 11: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 1quta7-0000W8-LF; Mon, 23 Oct 2023 11:58:51 +0000
Received: by outflank-mailman (input) for mailman id 621403;
 Mon, 23 Oct 2023 11: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=OVTz=GF=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1quta6-0000Vw-1B
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 11:58: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-flk1.inumbo.com (Halon) with ESMTPS
 id 854b50ef-719b-11ee-9b0e-b553b5be7939;
 Mon, 23 Oct 2023 13:58:46 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PAXPR04MB8559.eurprd04.prod.outlook.com (2603:10a6:102:216::19)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.11; Mon, 23 Oct
 2023 11:58:44 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6933.011; Mon, 23 Oct 2023
 11:58: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: 854b50ef-719b-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=f96BzozM67E3urK2PKfD4Aq95YOv7YVnPkb9pDRk6BmJVL+ZOUAO1gU0LsOqTCZHK+uey3FQ23dwVxByttnzKH62F0I3DLvLKGG0nknEl5ehEffjQ2PLMAITRKS12e1d25lTXaTglKGJyCrMoKyXPZpZMSePXh0mLA/Eo2R6Hohx2CluSqNY5GcgIGsE8neBgcxFNJYPM1WiZXFZh1LrJ67ele/dbfXZL4RcR3LGt7IQRpxrsT25HwxiPhP49ZFBjFX4P25sD5CFCsZaX4/2zLBa7L5A6LOi85bxVZPKpp1UqbZtSqdDslomashu1IXKEgFzObwV5Y+4wpQOnanIBw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=jHgZDqPo3LJGsLBPb2uaLYDJIHn8b/ZjZ36ciO4TMy0=;
 b=N934jPQL91HeiKFbAHWCzkun/KwxG91vLOvLeju+B0NKtCqN1MQHqg1r9oG7IPdiCwOaihA+k59HnPJG5LC65tKV1ej34e42yHshCeAUInnv3HPzQJIC9+1rfNGtrqLxlDEOysqsGVfEQsJ2xlUFWzNtKBZYakT2phu/4HEeb6QNeqCS4OXWSTwntIT17/jJZesnSmiD71yV21aV5pwQ1N2wvI5jlNm90S+vVBuEj0gc2V+vSGE0vpPrcYRq0q+DI0rdiqtGttdjBIJhUEd/6OwUKCzO2qLY8qIfzI0kLhWa5/uPjBdjysLtSbWYOviPOzqeGCIkALL8PmG57tpK2A==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=jHgZDqPo3LJGsLBPb2uaLYDJIHn8b/ZjZ36ciO4TMy0=;
 b=1FVzkP/gAxmUuvRKbGJBRX830FD4LqrPky12GJ/m2rFFKgNkbxNU15K8jxqunUej+Ky8gwr2wFR7r8stJH8S3PNw/zx6mvvZv9P3UIVpuLcW5DZ1iJTLCEaodOKG3KXKKHc29Bj4o2OVGBA5y9dcoGT+TCT459O2pgQyoRC5YTwLL7OWSb04X/jVvu0lqgboL3Yy4ZRN+cdw18wykS5v/d6sCRb+QvlOssdX3KSQqN183qy0mLDnSkQNljiRb6Jo/n8Wde5DsmXTxrBJ/YEY9NmLoB22hrOa/NLjBN1bWPIilDVbJ36UMgxBD2ei/DDpgBakoqLiWZeXeHoAjGxGYg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <b2ed1c50-6e55-7d89-aaa4-e0f23d5b4da8@suse.com>
Date: Mon, 23 Oct 2023 13:58: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 v1 12/29] xen/asm-generic: introduce stub header pci.h
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>,
 xen-devel@lists.xenproject.org
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
 <597a482c70fef196e245a5d898ea6314a0c479ca.1694702259.git.oleksii.kurochko@gmail.com>
 <d4dca6d7-ac54-beac-26fc-5eaf80783a73@suse.com>
 <0da7452e0c62dcdc5a0e1185b9f99cdb3d7393c9.camel@gmail.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <0da7452e0c62dcdc5a0e1185b9f99cdb3d7393c9.camel@gmail.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR3P281CA0170.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:a0::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_|PAXPR04MB8559:EE_
X-MS-Office365-Filtering-Correlation-Id: c57a5714-e33b-40d4-3e86-08dbd3bf6832
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	jRNpprKBaBqmkualxIKgBBuqe1vdxDMW4XoICyYv99GFV3mWcNbnoPetx3UZ/qiZ7Z/woUc8btUvsSy5Cc88Mb6mi9gGa/S3Hjea2z+TYbbaGnwe8fRdC9yzJ8jXBSSTouLLJ7YwXcoMdVMZG1KkrZLpFDbyYxhlqRqjTQy1067n5SalvUOP9Xb6nvh2hpUHNZWZB34ntoxKIlw/mzLqLhXhxpXpxopdZ7a3cT8z7omgAMtN8J73prXeYVqQ5X/M/3WF2pBgCp1MJ/HugxC8mJCGQYQJkIE5WNnqJER0geuEAVs9hmGRqynKFoJNnil5gJoM/0EzkDCBMXiINvNp3U9yGx7TjJd3/jsO9oQ6ZW0kaPzHjU7xGQlbXQccC239EeMRr8spnVMe7be99dhKXPqTMJllJkM9vrAWSnCGiZu1yAmHKVSaM4pxRkC0hlVElhqtJ1ZBEKP4qfTnZOpDPCc4/2MmK8+zzT1znWFjI1c512Z0diJRFgXzUwCHfGynaF9qjKO6Juo3YN8kuvDLfzb6MbYRPZTBLqLjdDrrJkBThDaMqi4GMyisqnT6HLUUvyjptiqE8B7qj8K4V0IQpXtj4Ha6qyMzxEn1+/obxIf9pvMI0AyT77f6fBNBEavx41kM+9wTkYdHUz3IIYZUesPbs7A9e+wjs6nCAviPdPk=
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)(346002)(376002)(366004)(230922051799003)(186009)(451199024)(1800799009)(64100799003)(2906002)(4744005)(4001150100001)(316002)(6916009)(54906003)(31696002)(86362001)(66946007)(38100700002)(66476007)(66556008)(6506007)(53546011)(6512007)(478600001)(6486002)(26005)(2616005)(4326008)(41300700001)(5660300002)(36756003)(8676002)(8936002)(31686004)(41533002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?UHFOQy82MzJnbHF1VUMrUEh6ZGRpcVFQNFZ3RGxqK2ZmSnVHUlJmOXd3SXdX?=
 =?utf-8?B?UGttekpXeEpQMStkUlJodXgwQWwvNjd6K29MWE95QUpuQkM2M0tKYkFNTlVO?=
 =?utf-8?B?Q1pLSlAxQXF6RHFzakN4N1NoYzZ6aEdMS2E4YjN2cnlqT3I0Y0VCVVdudmJI?=
 =?utf-8?B?bWEyektnYThpTU1nKzc0aFVmMDFZODNVcDZtbGVpMnAyT3EycmtIUE5JMUQy?=
 =?utf-8?B?K3ZoUEtwMkhQV0ZlZTdSd2E1NTRBbmJGaXRWdm0rbGI3a3UxR0FEVTVGSTBE?=
 =?utf-8?B?UWJ2cWttYS8vb3Q2b2VTRzZVcC80YTlnSXprMFJVTEhpcHB5VWZkZzJEekdU?=
 =?utf-8?B?WVd4SENXalgxL280ZnNxRGVnSUJuekczV2gyVlZXbnRiOFlkZysvMGZwQklI?=
 =?utf-8?B?TlRyUVVuL1B2ZEFWN1ZkTHArZjU5K25zSGp6UzFZa2l4bE8vMmcxcnh2VGlX?=
 =?utf-8?B?N1FyNVc0NUVZZEhncmI5dy9vRkZGdFovcFhXeXNEQVprY2Y5RW0zUzByRVBU?=
 =?utf-8?B?R2liZXphYjVpd0pGK2oxOFlYdGxBamVEd1JtRW5CeHYrRm5RdDFPVmg3UC9m?=
 =?utf-8?B?M2daZ0lCTm5Wd1psa1JSYXJENnNUM3AwdTJvZUpZMEd5V21kSjNJK0NORGZF?=
 =?utf-8?B?cHY0Zmh1bUpUdHB0aDdrUzhFckw3czJTUnQ0d2NMbWtCdWYya1hWMUVVSmpr?=
 =?utf-8?B?d004Z3F0V0JaTFNhSlhuQW11TUpzTitucVMzNHl1TVFKLzYvVDNzT2ZEVFB5?=
 =?utf-8?B?R2dXT3pQV2V5TnJjQnhQRU1zRWpGeUJhMTROSWtIcENTNERQY25qdVAwQUpT?=
 =?utf-8?B?UXJFZHh5aGxmdVVMQ0ZtK3dseDVRblBPNnd5bGlhUVRuSktzeXZvQkYxRG9F?=
 =?utf-8?B?S0JmM1NMWkRYV1NlRTgzVDVtRWxodnFQS0hkR1FhSEtNK2hnOEgzdkxMK01a?=
 =?utf-8?B?d3dxR2V6NXVKRFNFRDhRRmNXejJkMGI3em1Rc0NTajl4MWROQUhWMVVieG54?=
 =?utf-8?B?azArTkx0S2lYUjlRRnRLSFZuM1h0RnY3Rm1JK2dackV1aGI0ZjIwOERQS0lJ?=
 =?utf-8?B?ZGJwaXhlYXl1dUZaM09nNDNEc1d6NVdCMGd3Szd1aEVrSzVRVHJZcmtvRVp3?=
 =?utf-8?B?T0R3SCtjckZjSVdlOUp4UVVGQ0J3YytYcVJkbmdIU3FWU3Y1NUczMERucCtD?=
 =?utf-8?B?cGpFYTBJTU1NaCtsK08wN3V2ZGd5ZnQ3bHpQQlB5bE5wSFM5dlQwWFk5S2Vo?=
 =?utf-8?B?OHJaM1YyaDg2UG50d3pHTW0reDh0aG5nd1VuOVpUZkJuMDJWL0dadWpVQnl3?=
 =?utf-8?B?R2xNTmNDY3E3ZVM0UXNBNFZSVlhnN1ZabmFoNjYxRytYaVRzd1dOeUF6ZGJB?=
 =?utf-8?B?dXVOUkRkMUhZQ0lTcGMzSEhYc0lDVm1CelFCQUNGT2d2N0hBVlk0UjM3c0FH?=
 =?utf-8?B?dzBoM2dQYTcyQ212UmRsVkpwZ0h0dXFlcll6NExkdmJTN1V6Si9GbXg1WnEv?=
 =?utf-8?B?ZElQbkR2NHhCUjNQZHUrdlltR1k5eXQyNFpYYU5EOWJabXZkUEdrUk5PY0tX?=
 =?utf-8?B?QUk0cVpwOVN0RXhTTGJHTC9jd3RXbjBEbk9ZeFRPU0Jnc2hIMzVlL1gxL2U4?=
 =?utf-8?B?dXBpMXRCenIyRWpPNmxsUUVZSUFNc2orK0l0NklwZXdienZNVXNOS0Nkekdz?=
 =?utf-8?B?eE40VDh6SFRvdkF4dEtBZGtKbzJYRENKWTJ2dXg3Y3VySHVEV0tTMW9yb0JP?=
 =?utf-8?B?N0hEbGx5R2RONlBZL0hsRVBsbDRrOGlYcnE0amhsa3hDZEpOaENjN3NpbUZm?=
 =?utf-8?B?OERyYTB6Q2JrZEtodUJwU1YyaWYrYTRFOXNsY0xFRXdjT0xkR0syeFg5TG1B?=
 =?utf-8?B?UkxycnRWRmg3UmZ2UXFjRndFUHVQSkNDSjFSSFVQa2NXOW1rT29YNlRkUGlq?=
 =?utf-8?B?MkNUOE5sY2tiMjZqc2IvS2tEQ1pkdGF3NWQ5RG9Oa0RlVFFKa2EzUmpuOU5j?=
 =?utf-8?B?K0dadXd6WnJUb09jaS9wdnRabHBNb1l2ajFSc1R0MitET1ZUc283eEZ5YkM3?=
 =?utf-8?B?SUJQbnpjK3RLRkVMWEFBemVwZUdHZm04dUdVMzc3NTNuazN4SGRMbDVyVyt3?=
 =?utf-8?Q?URxZ9+Onnm3unzvNB46+bk9D0?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: c57a5714-e33b-40d4-3e86-08dbd3bf6832
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Oct 2023 11:58:44.4537
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: xTbqBI4UKK2wyb3QihYsK5byJ7t3VtC/Yhm47ZAsrSKW1SZPaH4Hke+Syg7wPm9DT6IMbdLgLhDeVdlsN8bVOg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB8559

On 23.10.2023 12:50, Oleksii wrote:
> On Thu, 2023-10-19 at 11:55 +0200, Jan Beulich wrote:
>> While more involved, I still wonder whether xen/pci.h could also
>> avoid
>> including asm/pci.h when !HAS_PCI. Of course there's more than just
>> the
>> #include which then would need #ifdef-ing out.
> It looks like we can get with #ifdef-ing. I'll push a separate patch
> for xen/pci.h.
> 
> It will probably need to remove usage of <asm/pci.h> everywhere or
> #ifdef-ing it too.
> Which option will be better?

What's "everywhere" here? The only non-arch-dependent use I can spot
is in xen/pci.h.

Jan



From xen-devel-bounces@lists.xenproject.org Mon Oct 23 12:00:35 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 12:00:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621408.967857 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qutbm-0002d7-Dg; Mon, 23 Oct 2023 12:00:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621408.967857; Mon, 23 Oct 2023 12:00: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 1qutbm-0002d0-Ao; Mon, 23 Oct 2023 12:00:34 +0000
Received: by outflank-mailman (input) for mailman id 621408;
 Mon, 23 Oct 2023 12:00: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=OVTz=GF=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qutbk-0002co-De
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 12:00:32 +0000
Received: from EUR01-DB5-obe.outbound.protection.outlook.com
 (mail-db5eur01on0622.outbound.protection.outlook.com
 [2a01:111:f400:fe02::622])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id c3b6d98f-719b-11ee-98d5-6d05b1d4d9a1;
 Mon, 23 Oct 2023 14:00:31 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PAXPR04MB8559.eurprd04.prod.outlook.com (2603:10a6:102:216::19)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.11; Mon, 23 Oct
 2023 12:00:30 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6933.011; Mon, 23 Oct 2023
 12:00: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: c3b6d98f-719b-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=IHPh8sSW4xRortpLVDzYLxQ/2ksIypcgh6lVNNn8W0xXQGez3FH4aCDgfTOPn1FIKUPGc7tXFEuP7ytatK4I/v86aX6LNaAiYSpM5gliAxBKYm/udAMl2HBFjfWfNl7kPZIW5NQbGDCB9Gq0zm3BQ41Vn4qyz/UFJBuCoJ0T2RggN6GVopDK2zoQOuT6xPAYXjrjqEOryVDZfrfZr+lk+BltTEqdDiUZi/U+P5RKb5Yjp1Gzsb6QIpjDvcQzTFa7yI2BoqlOqOVrDgH58VCXnM3o4cNGIYvuxCHe7+y0r4cm8lfPvlfkLoo6qbVJAuSo71+OLh2XCu3vSfS21VuYUg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=SsGFu2TMHKqRPXWQDS9YTxRvf61IeZVXI4JkWDwm4yE=;
 b=grcHHXQM0c9Y34qtoYdeqqsA4vUD9us9R9+mPVEmSr0R4O/P9QyDFkk6JC/PzwjXIFTeQsSfCKcalijDklsKufXu8bk15bvnCbxHrs9KU5leorjYPfMlNC0wTjjG9Aazt0Vb1xvdsFWzjo6PPJePgSxNISQFmJoRW2mKAyYyITp1TLIh7d47VCXms3hDrPiaXLKsJYsys9xDa/m61rMHBzfPANZh9XRmhJTjt/X+lFUi8q3zCVXjgPWpshxGqeR2E04FkQqaBvkI0HSn8j0Z68405uGv2mpRC3fVgtHHZpg+3J1VHKW2FoAurn0lMx7Sd3h9aFM+HDklikE9FtE28g==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=SsGFu2TMHKqRPXWQDS9YTxRvf61IeZVXI4JkWDwm4yE=;
 b=iNaAV4t+LRhNksXPDjLs9ZCW2Dq8B7OBnDrKQzL8mPruXkj+hZCRXCrbZqJq0i/C+zNBGJft9K1pyU1ArNZVkU6DeVNEVRBvW1yu9i4Hxd09EjD5FeXH6QVOplTNCqU7c/8ubUDuidN8VO7w1AfuQ494wKlQPEnnXXyiNNakKIQdNrDKXZGlYbRIlcE9JoOiwgcR/7VwhRa8rRetIs0BB+0Fp0XCsCWJwoqynN5Qt8f1artYKn4+Sa+SqjiyQMDnFr5v9nN9Ub6CO82zvFaVs6Rcfqwwn/GFybgv01pCgHvb7Nr6yD5uinY6fSQ8J0cLMSV1ceyZhHBccOKTLu+7Dw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <bf683fb8-b903-d734-e3c6-da874798891a@suse.com>
Date: Mon, 23 Oct 2023 14:00: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 v1 15/29] xen/asm-generic: introduce stub header
 xenoprof.h
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>,
 xen-devel@lists.xenproject.org
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
 <0b7805d6bd5f16d06656093d964d5d90030958d7.1694702259.git.oleksii.kurochko@gmail.com>
 <0efa2ef6-8815-4b39-bb53-f1d5902e71c7@suse.com>
 <a5d5598d4c0929a69cddbe75d4d17f9521def008.camel@gmail.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <a5d5598d4c0929a69cddbe75d4d17f9521def008.camel@gmail.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0274.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:e6::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_|PAXPR04MB8559:EE_
X-MS-Office365-Filtering-Correlation-Id: 7f664db1-c63c-4ea0-32e4-08dbd3bfa71a
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	exMwr7yxDnoniEHvQd/UXzuaz9gFquwuW+1+WS+ysO+f7yRwK2kJP4UgHbAGxjt8yiaTTSXajQj7DyxZ+FSwHC3xGVmRQMgUM9vfyGm1WVC65RKIUlaOFbUBKitTm1Sz5ezAdY7ymy9m9vCXYqc1Y4QlhnP0GZjqVItOQatzJnfOVrfMoxKSWEt3QOO23zW0tOP9I0hF8jioKW2f4aTZxExRKuUBmls5/N0nlTOtjYXtmeXAZgjlu1vv+DndpoCP44t7O3z3wBvYMARhfEasNcC9wiuvhGGhN9kn5ERxEi+zT1MVSiIMSLlzz7k1NpcS8eyNs0WcJVXS70VJsbhq4MZIr41Ps4zg/D2oBq6HBekNE1cXqfE1sMG/GLffd6gvG5Hp+/u/WdmTECtTZDlM17xPLOYP5gpEcVHFX4VZpKJaa5hKzS7gv1//EP/L90/HeFgIdGcJ4gFhHk9kYITcLAtbd0wHxXTls7mjfvshkBu41xN/Vzredqjh9LCxoGgvQFC7VtBXoagJ0bI0uYU+ss2noWP+KByogEBctY3KTJZLGdqjHN3FJmfvK7SYlQ0MMd1TrAzyjNMlwYX4jaT3Mwf7dM+XSnmOGHMPWNuwqCeScQ8yTo3M6LacojunOZq8UzafZur7Vvu5Ib/JMev+wqDZNrlT+Jt/zGAdQ82I+Kc=
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)(346002)(376002)(366004)(230922051799003)(186009)(451199024)(1800799009)(64100799003)(2906002)(4744005)(4001150100001)(316002)(6916009)(54906003)(31696002)(86362001)(66946007)(38100700002)(66476007)(66556008)(6506007)(53546011)(6512007)(478600001)(6486002)(83380400001)(26005)(2616005)(4326008)(41300700001)(5660300002)(36756003)(8676002)(8936002)(31686004)(41533002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?WWZvV28xQzE5cEJ0dkdYd3duZlErbjlTVXFhN1N5RkExMktmNWFmVEx5R3RN?=
 =?utf-8?B?OFB6SzhqWHYyQnpHT0kyZlJMV2MxU0YycXlBK3hBUnI3c2luME0yMHF4bjJB?=
 =?utf-8?B?MWVVK3pSL1lmeXlldDduNUxPVnRRMGJVTzdkYkZoQy9lYWFVUXdkUDRNSlJX?=
 =?utf-8?B?TjZFRms1L0hTY1M5UjJoUVdlaG1QTlhtakFzY1g5MkUySC9RcU9INmJNaHRp?=
 =?utf-8?B?b0RBcHUwdkZXNDI4RXVscXkwWnZBcmk4ZjdwWWVFMFUyZU54UXd5YUY1c3Mx?=
 =?utf-8?B?Q1NtOUphOE1XVEpvdnJ2RGx1R3pyOFJsVGhzeXdPaDhQTi9hUFJmYzN5cUIz?=
 =?utf-8?B?WE8vVCs4NHEreTVmazA5SzZMY1pmTVM2RmhMaGNpUmswSERNZXNuZWFQRkx1?=
 =?utf-8?B?TnlCWnJERXZCK1NmWG9zUXNFVTVvbDJTUEFrenVzWDY1RVFYbURuaVB2Y01a?=
 =?utf-8?B?OEltT2VydTB6ZFRCV3M4a1ovYnFpQnVjZTk1ZFlRbWdBVll5UFNDYzdERmt3?=
 =?utf-8?B?OG5xSmVOTnBBRFg2TW12RXVBL0ZlSzU2TVhHSWJ6dktEaWRIUWJob3pvUmlH?=
 =?utf-8?B?R0R5Y0FEbjBwRXVSSmtBalEySTRRdk5yMWI2Q21xWkVvVjJZMUZIMEJ4TVJE?=
 =?utf-8?B?YzhublFjTm02dVM2N1ZyWmRYelZhMTcyeTN2My9sMThQSmVHdW50WHFaQTcv?=
 =?utf-8?B?M3RkNlJBZnFqak96UVNQME9sNDY0U2JBVk1qeWJsRHVWaEI4WUM2NEJvaktu?=
 =?utf-8?B?QlA3a290dGNuYTJYMVczYmcyWldpL3VrdGRiZ0I4bjYvNFZ1VVpsV3hobUVy?=
 =?utf-8?B?M0M4U2ZrTEFrb2NkelkrRW1wbG10TVlTbmJSL3F5VURLOXExbUtZaWl1aFpL?=
 =?utf-8?B?ZXZkWUpTbUdmd0d0N3ZQbEtjc3ZIN04vaWxnLzlhS0NjSnZFd3dTK3NkZjRS?=
 =?utf-8?B?bmcrSjdBS0htNFBkemdNa0Uxb0Vkck9lTTMvY2NMSnc4bVRxRi9LeitzbFNM?=
 =?utf-8?B?QzZIMWorVnUvblhmbGVERXcvQmtEU3MrSGxyRk5WN0dHZno0NWJCeWRNMHdz?=
 =?utf-8?B?SmxvVnFuM0htd25obU4zVUdkMVJHNGdDVGpKUlNtWTRTSXZKa2ExSEF5WWpi?=
 =?utf-8?B?aTI2OHJ6THFEYmNVQ21QVExrR3JQTE1oTnozMjFzZVAwVUJRV3VSUEVIMEFo?=
 =?utf-8?B?blRQV2VSOWNGalpwWnFUNXZLTEIzMXpPVU9IZU5odjVocDRpb3QzY0hPYnZt?=
 =?utf-8?B?c1cwRTVRSXd0ekdlMzlZays1UE5oOHJkQ1kvK3JIb05pdjBnNXlhM2tmWEc3?=
 =?utf-8?B?aDJIWVMyYStwU21SVnkrblZXR3dZcUtxMFQ5a2d6SEZPZDlEM0Q4UlU5U2JC?=
 =?utf-8?B?L29XZXNFRUo4dHlXdkdkN1dWbmM4SlNobUV0dW4zOFkvVTA5bk1OL250dHd1?=
 =?utf-8?B?Q0hqMFJwZXkvUTJ2UGR5ZkpUT3BZN3pNMmprNVp6eC9OUmtERTRNbW41emdS?=
 =?utf-8?B?S3FmckhidXFlVUhZUExYUkxVd2lMQjJMYS9wVHA1UW5FQnRwTXp1T05adWN0?=
 =?utf-8?B?RVRRbk5BcUIycWFQR1o2MVR6cFc3VE96RXdTYm9HSEhaVmdIUlN0TUtqVnQ3?=
 =?utf-8?B?RW0zMUJxbzBMQWs3RlVNN0YyalY5bnJmZmMxR0txcFNjVTlFREVNVjhramt4?=
 =?utf-8?B?bnJtbDZTSVAyMEhSRGx3TTcwaGhZOXBhSWpJQkxuUHBEU3NldmFZd3NpOWFM?=
 =?utf-8?B?T2d4blQvRmxKRGl0Mm5RR2NLNE9mcWpNczVCZGYrUzhrRjIvVTMrWkJBMGZJ?=
 =?utf-8?B?YzZTbHpoQ01haWRPNENLZVYvbXRuN1YvVC9ycVIwMmlwKytVbFF2QlQ5R0xF?=
 =?utf-8?B?WTA5M2ViR1RvSng3SCtWT2hWbXRmS0ovTWNHVHpXSGpYcVdqMXhKZm45dDFS?=
 =?utf-8?B?aDJFQkhvTDZvSWpmSi94WkhGRFhzYWdrRUVQT1o4UzNHNFpUMm0wRHpDOStQ?=
 =?utf-8?B?ZjBIUG0vSVhSREJVVVhLcnZkeGdtWFROa0V0aEdQTzMzc2xNa0dUUjFYOWxL?=
 =?utf-8?B?anMyRVhsVCs5UXoyR0ZaY2hMeGN5ZmI4TjJVZDdON1pNSTQvaGxRSkpBQmJX?=
 =?utf-8?Q?tqwK9CtnzQm1YtHDpFhaLqYLf?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 7f664db1-c63c-4ea0-32e4-08dbd3bfa71a
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Oct 2023 12:00:29.9853
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: P2zNnOrzfhE5K9ITI42Rus8KsHVd+F44xU8x+xg3eh6OzdogIUCudcb61WkHsudmNKB3ixeo3OSv74wRHzVGMQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB8559

On 23.10.2023 13:17, Oleksii wrote:
> On Thu, 2023-10-19 at 12:09 +0200, Jan Beulich wrote:
>> I've made a patch to move #include-s in xen/xenoprof.h, dropping
>> Arm's
>> header (and none going to be needed for RISC-V or PPC). I'll send
>> that
>> patch in due course.
> Could you please share a link with me? I can't find for some reason...

I said "I'll send"; I didn't do, yet. I don't really like sending minor
patches while the tree is closed anyway.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Oct 23 12:01:15 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 12:01:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621411.967866 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qutcQ-00037h-MP; Mon, 23 Oct 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 621411.967866; Mon, 23 Oct 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 1qutcQ-00037a-Jl; Mon, 23 Oct 2023 12:01:14 +0000
Received: by outflank-mailman (input) for mailman id 621411;
 Mon, 23 Oct 2023 12:01: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=1u5b=GF=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qutcP-00034X-1H
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 12:01:13 +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 db55bf5e-719b-11ee-9b0e-b553b5be7939;
 Mon, 23 Oct 2023 14:01:11 +0200 (CEST)
Received: by mail-ed1-x529.google.com with SMTP id
 4fb4d7f45d1cf-53db360294fso4966254a12.3
 for <xen-devel@lists.xenproject.org>; Mon, 23 Oct 2023 05:01: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
 eg3-20020a056402288300b0053fa2f11836sm6123443edb.93.2023.10.23.05.01.09
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Mon, 23 Oct 2023 05:01: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: db55bf5e-719b-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1698062470; x=1698667270; darn=lists.xenproject.org;
        h=content-transfer-encoding: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=UWlidHNXNv/zt/FNCIl3zP+mAPVrt/7RM5+7W8XT1ic=;
        b=OSUnkc+OUzUdhQ1HfNCU3xAZb4/czLUqDCVh731Tqk0+ubsDpWE1IF4TGV2rXnq1nQ
         PhazXCgPxfVCe2s4PZRx3iO2Qd3gXykCyX8vrRHVOyGm98d9jVwAcDZXzl0R6Tk2GnT0
         fAcdceO243q38Ay+xcfdTwrjTuljlIMpktHGA=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698062470; x=1698667270;
        h=content-transfer-encoding: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=UWlidHNXNv/zt/FNCIl3zP+mAPVrt/7RM5+7W8XT1ic=;
        b=Dvouc4SQe6ADqVLO+9MYeWmDqn4yq5mIyJdM2kFArA/uLB1SiBaNUBr41fa3OBAX0C
         HrD6Kyw9FFFoStTVzfOvExnVY9Wds6YrR4FEi7+FKdqC9D8A0A4WuutG+fFBgjmI/NCl
         OMoM1piexWQy36TE92JiUULc9TAQTKFxxonsnI/GaP2GPGSBcmD2ObdK0cOz0cJ2q4m4
         YRfuFUWUW5T9zfnFoaUpx1ae7l0iTyxUZAOUw8W89E2iKJkw+8tfenRRuF+d+inaM8pO
         e8ELUlqX0K+F4AU0w2BYIEAfaSTuecHstNEsuHqWggDh+frSeKD4EqgqiCCyRpQ5uNFr
         MMDA==
X-Gm-Message-State: AOJu0YwbDiIte66N8bbEmJyh8rbsrAKEqt0te0r+tkDAHQlk1wHU0E2n
	2vwbhszCOfG8t+kKW79FkW1+RQ==
X-Google-Smtp-Source: AGHT+IHTB+VkSaJHpY7BNWGyMKAnhohAFt6lNIhaqBoYsmu+eMmy96BqtDwwafYxqTCcQkQJuLyeqA==
X-Received: by 2002:a50:9f82:0:b0:53d:d799:641 with SMTP id c2-20020a509f82000000b0053dd7990641mr7253858edf.26.1698062470356;
        Mon, 23 Oct 2023 05:01:10 -0700 (PDT)
Message-ID: <36f18a67-47d8-45a1-9dd5-f06f00db5ae1@citrix.com>
Date: Mon, 23 Oct 2023 13:01:09 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH] x86/pv-shim: fix grant table operations for 32-bit guests
Content-Language: en-GB
To: David Woodhouse <dwmw2@infradead.org>, 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>, Wei Liu <wl@xen.org>
References: <0f6a5b8d5b3164dc58db193fa5c1ae7cd0969872.camel@infradead.org>
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: <0f6a5b8d5b3164dc58db193fa5c1ae7cd0969872.camel@infradead.org>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 23/10/2023 12:34 pm, David Woodhouse wrote:
> From: David Woodhouse <dwmw@amazon.co.uk>
>
> When switching to call the shim functions from the normal handlers, the
> compat_grant_table_op() function was omitted, leaving it calling the
> real grant table operations. This leaves a 32-bit shim guest failing to
> set up its real grant table with the parent hypervisor.
>
> Fixes: e7db635f4428 ("x86/pv-shim: Don't modify the hypercall table")
> Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>

It's a bit more nuanced than that.  It's only for shim built in
non-exclusive mode, which is probably why XenServer's testing never
found this.

Reviewed-by: Andrew Cooper <andrew.cooper3@citrix.com>


From xen-devel-bounces@lists.xenproject.org Mon Oct 23 12:02:48 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 12:02:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621421.967877 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qutdt-0003wt-1L; Mon, 23 Oct 2023 12:02:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621421.967877; Mon, 23 Oct 2023 12: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 1qutds-0003wm-Tu; Mon, 23 Oct 2023 12:02:44 +0000
Received: by outflank-mailman (input) for mailman id 621421;
 Mon, 23 Oct 2023 12:02: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=cIbe=GF=gmail.com=andy.shevchenko@srs-se1.protection.inumbo.net>)
 id 1qutdr-0003rw-Ge
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 12:02:43 +0000
Received: from mail-oa1-x2d.google.com (mail-oa1-x2d.google.com
 [2001:4860:4864:20::2d])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 112186fc-719c-11ee-9b0e-b553b5be7939;
 Mon, 23 Oct 2023 14:02:41 +0200 (CEST)
Received: by mail-oa1-x2d.google.com with SMTP id
 586e51a60fabf-1e19cb7829bso2441127fac.1
 for <xen-devel@lists.xenproject.org>; Mon, 23 Oct 2023 05:02: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: 112186fc-719c-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698062560; x=1698667360; 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=BiFbfs7BErHq09w7bwsMK4yHlj0qVMvyV1tXDfbJ0tE=;
        b=AwJG8vlX3VgVU/Me5T1s8j9UkxiY2vJqce4/TGNpspg0hVeEFysftpRURLOS7kpA2P
         O9TL5uIa0xwbZAR7eGmKDQWZUdRbD7TdTiZDHlr+c3aVogugKRAKm8xVbyvs1GpaEBKW
         BC2YnHmoYKO3C4lvo/roLdjGVLUCGyVNHBbmncrYx7+ytkkFFjgt0z9G7KlvYSXyb7IF
         EKX+rgDuMYkSczpQolKRUWQLAl0fuvzKeRrgivr262yanFr2zmdw0GFO/lUbf+D1QYc+
         J1ZDjNUyBoSuIXalrFiLVsncnNjbunFcISjzvF/gJm8s3gq/K90anFu0H6+P03+Mm1gj
         vmOg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698062560; x=1698667360;
        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=BiFbfs7BErHq09w7bwsMK4yHlj0qVMvyV1tXDfbJ0tE=;
        b=fiJbuWCpfhY8XANRv47IaRYsv7uFdtIApmpoy9Y2CBzQYoi2qq0LbejrrXWVkOyz15
         Rzp2kUtXI2QAbqwoZahgl/CG2sRCO7T0wnWOkmpQWpJ4qWT+XXp5IBCgsLfUJzARVssQ
         /GszDHg96RjdO6m1vi38hRURNmysIpoKIPydhznQNDJwBjmUd3RrN39eqNyeoK0gsw72
         XaXAvkK3mx/zHPrBMIMiRF5XsG/tt/n8dn0WSpmDPge6kCzBe3r1B+8GpCmqKfNO9yLc
         JPF4pIUO5ODviqVwx97WtfnvNHLtjExSFtMGAitf2MEK/Y/ZN/aS4+uZJYVrS2lpIqfH
         kqAg==
X-Gm-Message-State: AOJu0YyrXxOc4Y2SjnWNY9tg0fm7/MDtFt5G2fRylRH1t50VrQTZLm2G
	O+gEE3TO3xhziEzwrasE8puJ2y3hs+frBaGhMGo=
X-Google-Smtp-Source: AGHT+IFDOjlPFNxZH+TNCPyOYk/jnYswfxhuW97975JVJB/tFTnE1b6fAO88ZlsiSm8o9UQpuYj3Gyb4/cbuXv7G1A8=
X-Received: by 2002:a05:6870:3e09:b0:1e9:beae:947d with SMTP id
 lk9-20020a0568703e0900b001e9beae947dmr12410358oab.19.1698062558907; Mon, 23
 Oct 2023 05:02:38 -0700 (PDT)
MIME-Version: 1.0
References: <cover.1698051454.git.houwenlong.hwl@antgroup.com> <90df6cf5674241a85ac7dfe0a1558f1fd025cc17.1698051454.git.houwenlong.hwl@antgroup.com>
In-Reply-To: <90df6cf5674241a85ac7dfe0a1558f1fd025cc17.1698051454.git.houwenlong.hwl@antgroup.com>
From: Andy Shevchenko <andy.shevchenko@gmail.com>
Date: Mon, 23 Oct 2023 15:02:02 +0300
Message-ID: <CAHp75VeXiOprRDNakewo2iSe==EeLUxfxuPYS3R+ZsY2KDmQBQ@mail.gmail.com>
Subject: Re: [PATCH 1/2] x86/xen/pvh: Set up percpu for stack canary in 32-bit
 kernel entry
To: Hou Wenlong <houwenlong.hwl@antgroup.com>
Cc: linux-kernel@vger.kernel.org, Juergen Gross <jgross@suse.com>, 
	Boris Ostrovsky <boris.ostrovsky@oracle.com>, Darren Hart <dvhart@infradead.org>, 
	Andy Shevchenko <andy@infradead.org>, 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>, 
	"moderated list:XEN HYPERVISOR X86" <xen-devel@lists.xenproject.org>, 
	"open list:X86 PLATFORM DRIVERS - ARCH" <platform-driver-x86@vger.kernel.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Mon, Oct 23, 2023 at 12:10=E2=80=AFPM Hou Wenlong
<houwenlong.hwl@antgroup.com> wrote:
>
> In a 32-bit SMP kernel, the stack canary is a percpu variable accessed
> as %fs:__stack_chk_guard. However, the ABI for PVH entry does not
> specify the %fs register state. It currently works because the initial
> %fs register is 0x10 for QEMU, which is the same as $PVH_DS_SEL.

> %However, for added safety, the percpu should be set up explicitly
> %before calling xen_prepare_pvh(), which accesses the stack canary.

Stray leading % in two lines above.

--=20
With Best Regards,
Andy Shevchenko


From xen-devel-bounces@lists.xenproject.org Mon Oct 23 13:19:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 13:19:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621455.967898 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quuqV-0002As-95; Mon, 23 Oct 2023 13:19:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621455.967898; Mon, 23 Oct 2023 13:19: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 1quuqV-0002Al-4X; Mon, 23 Oct 2023 13:19:51 +0000
Received: by outflank-mailman (input) for mailman id 621455;
 Mon, 23 Oct 2023 13:19: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=OVTz=GF=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1quuqU-0001tP-25
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 13:19:50 +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 d714cdee-71a6-11ee-9b0e-b553b5be7939;
 Mon, 23 Oct 2023 15:19:48 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DB9PR04MB9577.eurprd04.prod.outlook.com (2603:10a6:10:304::22)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.11; Mon, 23 Oct
 2023 13:19:46 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6933.011; Mon, 23 Oct 2023
 13: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>
X-Inumbo-ID: d714cdee-71a6-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=LYW4t6vWKEdlnEk74RwiW0N73XjBDevNta1Xea8E8ZfIu3V4ehVyyLwrisez59gdfJ7sSJcb2E/ojavotijs4saMjzA25+O07zLVR2UYckUuCvgTTBUcqeMaHP7zZ2pDVGhYfoO/vUoUh5hHcur76cVWftupmWQ13bYkhLD6gCjvk8badIin3e7otSEM9wLMR5MH8IDsmJayw2O1k76/h7pAvsEL2WPl67MWXupP8zOAX3p6B682D2p6tjh5LqL+BHj0Pm0l3CMaoZo8Z/RtS80rTpkgHo0qm0nlwB5PvJN8dxZe5JqCpV5+IsPS9e4pkIjQs6LTVGCUnTSQ3U9ocg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=gLHp8BFw08orCv+V15Gwb4kAblQL5A3jgOOtAhSJ21c=;
 b=AS0AzRMBzQAnYYGoy2O/yhGL+4eA9E1QmaSAyCtblooI45QXVcVEDBFLosYoqZgcmOX+DlR49FySlKDImrX9WgLoeWBVgFlnbgi3GUg6eElfNodpwkyLks8Lhrw8Dh1uEPJgkKWHWa1hFQpO94Tv8hDS09xlpCaVVyDT9uS/RR4cqYQ6ZlYkpk8ptQdpBFXoEP5KO88PpGOqoM6LocbdjqGYMGXqIQXkUrc7FzGfE3nRBoEuwr+rMbgQ0X+H87tvU7HP9wrUCMoou1LfNBcLR/I7zZlfvUR5e6d4gg6w7pn7QdBkQv7MKUesUEF0XoQYA4WjWGw+L31pe3afMSY0RA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=gLHp8BFw08orCv+V15Gwb4kAblQL5A3jgOOtAhSJ21c=;
 b=KMs8cXixbDcYGqeNBZE3WQscVQauZ+hcFriE3Xz0BQi5D+PhGMOHaYy2cdWbIkPNz76Usics5T9kxOjBKBJ0art3jmP2VIb1sYFJd0hUySoDHNyPXzY26AedqkctpG5JkIr9MHScpwq14osHn6xhVjt+nj8VGY78a5vCmSNc9asdDlZWg9PyiiWTQWy6JO7f0EePXT7lRL4ttQAVoTvndOP1q+He+u/S0p5aVDWfGzZ1muaL7abwlrL49JUv5drjz20VtiiGzhTcedQGAacEXiKq47NJr9K/iYkwDsshwfh8f04h1sYYyyhCgL90LDr8kISE7uuiFH41tlOtoYASPQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <7a475b70-0110-c249-8faf-1ffb1b3f1f2d@suse.com>
Date: Mon, 23 Oct 2023 15:19:44 +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][for-4.19 v3 8/8] xen/compat: use BUILD_BUG_ON in
 CHECK_SIZE macros
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.cooper3@citrix.com, roger.pau@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.1697815135.git.nicola.vetrini@bugseng.com>
 <cabd7c61f32b06a577026a92f3231b89c504babb.1697815135.git.nicola.vetrini@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <cabd7c61f32b06a577026a92f3231b89c504babb.1697815135.git.nicola.vetrini@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0262.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:b5::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_|DB9PR04MB9577:EE_
X-MS-Office365-Filtering-Correlation-Id: c774af65-b37e-431f-6524-08dbd3cab9fb
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	uhZ6bRJZZfy6F1UAadD96yOvc04F2hq8BMk1vksOczHupYIzgHz496Kam2fvvQuIpeidfTIcmNzZJ1ChmWDUkc+n4ROplXiffpKg3uOJBI3aOD4m13OVRil31QI7ZjXmGzLFX+4ccDn89fcXvMC7U5hgSo2WzVwNkm98qZ7IuYPOm/TvXlu1V007hFoHTHrkYtqe+09MF/XBLosS3NkAMjkVp5SpyDVxndbzZf70oJla2U9lBorHnkRFPpFYV4ey90h40/pEp+dU771+hrq2eQVNtXfrWC1yJK1Mc8E0Xa9C7Rrjfr2u88Da7iywywYUzI7FpcqO1M/1pr9m8KQHQDm4df08MuC9RXN7ApfptIS8dv9J7PXUhopqbyakhAcaMtk8/RaB1/WGWnaoUEU8hM+1TNjmyXf+DFozzNH6h3Li7u50WFXRBBD3TXzJOAfVuVkkAMRl6YfYPlMiLftM/MnN1k6oX+w9lfA3ckyK0V5p2HWOS4dmsmADwMcebnTQmapPIsSEkxC9M4S95SE179o2+H/l9wNEY2r2eCI0iKsFJ9C1OWQyz+g1gsp1TjFEsQTMvqKksCT0MIfdFdaZbYjw+Q23xPDcMzUwHn0iG9B0wFHF8ZTUN5nqpSZF3EfmmK1fjeVRiN8rfEaCd4UWqw==
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)(136003)(396003)(39860400002)(230922051799003)(64100799003)(451199024)(1800799009)(186009)(2906002)(8936002)(5660300002)(41300700001)(4326008)(31686004)(8676002)(66946007)(2616005)(6512007)(53546011)(54906003)(316002)(66476007)(66556008)(6916009)(7416002)(6506007)(478600001)(26005)(6486002)(4744005)(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?QlhkbTMxM0Vpd3JybWJvSUJpbUsyVDBuYzdCVWZPK1dFS0xNRWlqYVd1WGN0?=
 =?utf-8?B?eC83dXh5S0g0eHhrazU4aG5pZTJyUHhMSkNKbk5Lais2Q2ZCSGFIekxubHhX?=
 =?utf-8?B?Z1dIQ0NVcTh2YXJ3dGt3Mld6aXN4SlFIeDRvTHhqQThIbTM5dFM4Nmg5dnNR?=
 =?utf-8?B?ZkNMVFNaYXJ5cVozdjZVKzlaQkJVR0N3VDVvcGdnUGdISE9kNjh4WEdObWtv?=
 =?utf-8?B?bWVZVXVGUmpRS3RYb0JKK3VvNzVETzI5RmlOY21oRi9lOTF5N2tRYnhTTXYy?=
 =?utf-8?B?bklzMDJDV1drZCtzdWt1WXpMVXVsaU00ZnNKcGltcnJtb3Z0dlNGbkZJNWtQ?=
 =?utf-8?B?dHhuWXZUZWdmV1FGK3gxcktOemNlR29qdkhPSk8yYVorWUMzTzMxbjlPOW00?=
 =?utf-8?B?dGVZRklHRWgyRU5YSytLTDdMd2M1ZVh4V0U4NEhjWGlzUWxBUGtTRTR5TG9C?=
 =?utf-8?B?RW1jUC9ib2NCVUMyamc2eDdrMHc2VndPNXpnSGYxZFhqYVc4eEFsUnNjTmlz?=
 =?utf-8?B?Mld4L0d6dlp1Q1RCTldjRkZOQUNMKzFtS21qZXZlNStldDZtaWRXZTVXR05I?=
 =?utf-8?B?cE9vSEF5NlhWZHFIdFQ1NjUwN2txNFRRNkNnMlNqRlYxVDZ0NDlsanhtczlw?=
 =?utf-8?B?Y3NJc3hOQ1dkanMyUm85K0l1RTE4R1RiNUw1aEg0elJvQ1hPRGdvUzh4VUxF?=
 =?utf-8?B?b0paVFVHeENtR3N4YlZKczJHcFBjSTQvSFIyMUJGVExPWkc5aHRTQnVsd0o5?=
 =?utf-8?B?dzZHVmc4WlR4NWZtNkg5V3FadkVzMXJqMS9NblFCT3ZEQWpDOVVTd3lhampt?=
 =?utf-8?B?NXR1Y2JxRTY2cHk2ZmNETzYrNGIyci9uMmtzaHg1STRjTVczVjVFMDliWnRT?=
 =?utf-8?B?RGRIaHZ2ZGJNdTJzNXVhb1hNYjRmWlN5Ri9IbWVXcW1jeTNnWTdrSG5HU3RQ?=
 =?utf-8?B?dndlNFJiek9Ea1B4eSs4UUJTRUVLU1NLSm1NeWcwY29jNVNzaEsraEZjOWVz?=
 =?utf-8?B?bDdRT2xHc21Lc3l0cWhtNG0wbWg3cCtNc2NkeUpsdmJ5RHU1NjhvdXFRam1J?=
 =?utf-8?B?eldHMW5YN1h5ZUk3U2cyQXYzV0VtRTMyRXY3c1JYUUtsMmlUb2xiZ2pvZzI3?=
 =?utf-8?B?OURXSGNLWlhuMXkvMXBGc2R2NkhDMklvdlFLVlVLbWpPOE9jUWlHSmJIMm1m?=
 =?utf-8?B?VFRHa3E0MitOejI1WHJSeUMxbHVMbDNXbDA2OG9mZE4xU2VoeGhxSm9nYnlw?=
 =?utf-8?B?TmZHMmJCRXV6ODhhQ3F6ZHk1YllacitPOUgzcHlSMjFGakFyanZIUndhK0JX?=
 =?utf-8?B?d0tjeXNhK3RpSENoS242RFB6SG13Njd2ZGhEZ0FMb3BGN2tvYXFCNDIvcU5D?=
 =?utf-8?B?M21GVWpTM2lueUJNMU52QzBtcFE3Nkpib1lyc1JrQ2JnbStJOUhndkdQdGNN?=
 =?utf-8?B?RXozbVRzN3JaUDYwSGF4bHhVTWJLYmVoV3dMYk1ORGJWNlc0WEVDUUwzRkIr?=
 =?utf-8?B?Syt6Mk1ycmtzYnR2TDFQRlJNNE41ZkVVYUZ3Wm1sTU5RTmZrU1gybjFucVJj?=
 =?utf-8?B?alpCQnVQMkNLQjBmOVdVWkZCd1JhZHdSZy93RFY0WS83dGxrM1F0bjBJQW9y?=
 =?utf-8?B?VFF5YlNld1hpdWxzTjdEYzBuSGFkZytnVkFleUVlU1NqVjZVVWloOGF5dEZT?=
 =?utf-8?B?SDlzUHpCMnBUU1d3bE5RVk1zeXZKUHE4M0c1NzVhWEQrU21pTU8veVJLQ2Qx?=
 =?utf-8?B?NHhVc2l4UnhmMVU0eWVxV2FQbkNGUnlSSnlyWmVMS05MVXpVVkQ0ekNmcmJi?=
 =?utf-8?B?T2hkZjdROERsRFZsdU11Y1Z2aU1oVzd2S0sxYTdYc3hiNGF2dmpCSGN6OFV4?=
 =?utf-8?B?LysyVnRHL28rNjZVNjhibW9FVmlkcXJ1OWRiV1hnL3VQRmtVZllMdmM3VXhS?=
 =?utf-8?B?WmtGQXBHUTJjRUdNeUVERnlsWWUzTXRmTVRSQWVyZ0c1TnZYc1ovL0xmQ0xR?=
 =?utf-8?B?cEFEaTk4U2ZRS3FOcFRqd2RENkw4OVE3RHJZVDg4Z0d5d1JLdDNmWFU0VzFW?=
 =?utf-8?B?Z0Zqem9KWmJTb2t1RTI1UDByUVVSNkFTclBMQ01PUUZNZ3d2bE1ydC9Jdzly?=
 =?utf-8?Q?mW3nEu2eGjNSoUWT7nhOXe4jV?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: c774af65-b37e-431f-6524-08dbd3cab9fb
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Oct 2023 13:19:46.1498
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: BBKUsuEcxlZ+g4eJbfD2vmS0fsRVDrJDRo37o7RDjm5R5rVDzSa+9kOqkNAEh/jT/gimSsVPfD+WcMvn0QF0oA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR04MB9577

On 20.10.2023 17:28, Nicola Vetrini wrote:
> BUILD_BUG_ON is the preferred way to induce a build error
> upon statically determined incorrect conditions.
> 
> This also fixes a MISRA C:2012 Rule 10.1 violation in the
> previous formulation.
> 
> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>

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




From xen-devel-bounces@lists.xenproject.org Mon Oct 23 13:19:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 13:19:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621454.967886 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quuqI-0001td-WE; Mon, 23 Oct 2023 13:19:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621454.967886; Mon, 23 Oct 2023 13:19: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 1quuqI-0001tW-TP; Mon, 23 Oct 2023 13:19:38 +0000
Received: by outflank-mailman (input) for mailman id 621454;
 Mon, 23 Oct 2023 13:19: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=gXaf=GF=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1quuqI-0001tP-9l
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 13:19:38 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id cfafb831-71a6-11ee-9b0e-b553b5be7939;
 Mon, 23 Oct 2023 15:19:36 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id 6D11F4EE0747;
 Mon, 23 Oct 2023 15:19: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: cfafb831-71a6-11ee-9b0e-b553b5be7939
MIME-Version: 1.0
Date: Mon, 23 Oct 2023 15:19:35 +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.cooper3@citrix.com, roger.pau@citrix.com, Simone Ballarin
 <simone.ballarin@bugseng.com>, Doug Goldstein <cardoe@cardoe.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][for-4.19 v3 1/8] xen/include: add macro LOWEST_BIT
In-Reply-To: <f23a1f95916bd61ddcd5002428d8876c@bugseng.com>
References: <cover.1697815135.git.nicola.vetrini@bugseng.com>
 <546cf30aa43d6d0687a9a6c6d23b11128e5783e8.1697815135.git.nicola.vetrini@bugseng.com>
 <f504772a-68b4-fbfa-e7d4-8d22992c7944@suse.com>
 <f23a1f95916bd61ddcd5002428d8876c@bugseng.com>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <6d113a237846c7a41aa083e806f172e7@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 23/10/2023 11:19, Nicola Vetrini wrote:
> On 23/10/2023 09:48, Jan Beulich wrote:
>> On 20.10.2023 17:28, Nicola Vetrini wrote:
>>> --- a/automation/eclair_analysis/ECLAIR/deviations.ecl
>>> +++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
>>> @@ -246,6 +246,12 @@ constant expressions are required.\""
>>>    "any()"}
>>>  -doc_end
>>> 
>>> +-doc_begin="The macro LOWEST_BIT encapsulates a well-known pattern 
>>> to obtain the value
>>> +2^ffs(x) for unsigned integers on two's complement architectures
>>> +(all the architectures supported by Xen satisfy this requirement)."
>>> +-config=MC3R1.R10.1,reports+={safe, 
>>> "any_area(any_loc(any_exp(macro(^LOWEST_BIT$))))"}
>>> +-doc_end
>> 
>> This being deviated this way (rather than by SAF-* comments) wants
>> justifying in the description. You did reply to my respective
>> comment on v2, but such then (imo) needs propagating into the actual
>> patch as well.
>> 
> 
> Sure, will do.
> 
>>> --- a/docs/misra/deviations.rst
>>> +++ b/docs/misra/deviations.rst
>>> @@ -192,6 +192,13 @@ Deviations related to MISRA C:2012 Rules:
>>>         See automation/eclair_analysis/deviations.ecl for the full 
>>> explanation.
>>>       - Tagged as `safe` for ECLAIR.
>>> 
>>> +   * - R10.1
>>> +     - The well-known pattern (x & -x) applied to unsigned integer 
>>> values on 2's
>>> +       complement architectures (i.e., all architectures supported 
>>> by Xen), used
>>> +       to obtain the value 2^ffs(x), where ffs(x) is the position of 
>>> the first
>>> +       bit set. If no bits are set, zero is returned.
>>> +     - Tagged as `safe` for ECLAIR.
>> 
>> In such an explanation there shall not be any ambiguity. Here I see
>> an issue with ffs() returning 1-based bit position numbers, which
>> isn't in line with the use in 2^ffs(x). (Arguably use of ^ itself is
>> also problematic, as that's XOR in C, not POW. I'd suggest 2^^ffs(x)
>> or 2**ffs(x).)
>> 
> 
> Makes sense, I think I'll use an plain english explanation to avoid
> any confusion
> about notation.
> 
>>> --- a/xen/include/xen/macros.h
>>> +++ b/xen/include/xen/macros.h
>>> @@ -8,8 +8,11 @@
>>>  #define DIV_ROUND(n, d) (((n) + (d) / 2) / (d))
>>>  #define DIV_ROUND_UP(n, d) (((n) + (d) - 1) / (d))
>>> 
>>> -#define MASK_EXTR(v, m) (((v) & (m)) / ((m) & -(m)))
>>> -#define MASK_INSR(v, m) (((v) * ((m) & -(m))) & (m))
>>> +/* Returns the 2^ffs(x) or 0, where ffs(x) is the index of the 
>>> lowest set bit */
>>> +#define LOWEST_BIT(x) ((x) & -(x))
>> 
>> I'm afraid my concern regarding this new macro's name (voiced on v2) 
>> hasn't
>> been addressed (neither verbally nor by finding a more suitable name).
>> 
>> Jan
> 
> I didn't come up with much better names, so I left it as is. Here's a 
> few ideas:
> 
> - LOWEST_SET
> - MASK_LOWEST_SET
> - MASK_LOWEST_BIT
> - MASK_FFS_0
> - LOWEST_ONE
> 
> and also yours, included here for convenience, even though you felt it
> was too long:
> 
> - ISOLATE_LOW_BIT()
> 
> All maintainers from THE REST are CC-ed, so we can see if anyone has
> any suggestion.

There's also LOWEST_BIT_MASK as another possible name.

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


From xen-devel-bounces@lists.xenproject.org Mon Oct 23 13:32:08 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 13:32:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621462.967907 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quv2J-0007Hl-CD; Mon, 23 Oct 2023 13:32:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621462.967907; Mon, 23 Oct 2023 13: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 1quv2J-0007He-9O; Mon, 23 Oct 2023 13:32:03 +0000
Received: by outflank-mailman (input) for mailman id 621462;
 Mon, 23 Oct 2023 13: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=rddO=GF=citrix.com=prvs=653ff57d6=roger.pau@srs-se1.protection.inumbo.net>)
 id 1quv2H-0007HY-9X
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 13:32:01 +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 89695bd5-71a8-11ee-98d5-6d05b1d4d9a1;
 Mon, 23 Oct 2023 15:31:59 +0200 (CEST)
Received: from mail-co1nam11lp2169.outbound.protection.outlook.com (HELO
 NAM11-CO1-obe.outbound.protection.outlook.com) ([104.47.56.169])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 23 Oct 2023 09:31:43 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by DM8PR03MB6248.namprd03.prod.outlook.com (2603:10b6:8:25::16) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.16; Mon, 23 Oct
 2023 13:31:40 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::acf0:ce2b:1634:5aee]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::acf0:ce2b:1634:5aee%6]) with mapi id 15.20.6933.011; Mon, 23 Oct 2023
 13:31: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: 89695bd5-71a8-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1698067919;
  h=from:to:cc:subject:date:message-id:
   content-transfer-encoding:mime-version;
  bh=a/HsEo6LR3iHkGEIna76xOPj1PvZEM/62oHAgdqWUHw=;
  b=FC+1ZaJbpDeKLQXJuR2bbAnb47AY3oxXDlhyrijRdc/JvW+4u9lSswDK
   cwm3QRmrnye/NEidNuzjEHQOEwSaabhgcLrneU9Eag4yC0eS6xToFosHD
   dJ66Zj+Lcv+1PzfmF0vYajTpqc3GMYge21y7tItNlGwF4p7Vaji7Ngwi0
   E=;
X-CSE-ConnectionGUID: Gz1Yup/nTQebIx1dQlf+Zg==
X-CSE-MsgGUID: iUd9Wbp5SLOR8m+zdKxOLw==
X-IronPort-RemoteIP: 104.47.56.169
X-IronPort-MID: 125616366
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:rNJiMq9jzAfhy7MZsmAEDrUDoX+TJUtcMsCJ2f8bNWPcYEJGY0x3y
 GEZCGCCbvmMNmP8f48gaIqz/UxTuMXSx9Y1GgdrpCo8E34SpcT7XtnIdU2Y0wF+jCHgZBk+s
 5hBMImowOQcFCK0SsKFa+C5xZVE/fjVAOK6UKidYnwZqTZMEE8JkQhkl/MynrlmiN24BxLlk
 d7pqojUNUTNNwRcawr40Ird7ks01BjOkGlA5AdnPaoQ5Aa2e0Q9V/rzG4ngdxMUfaEMdgKKb
 76r5K20+Grf4yAsBruN+losWhRXKlJ6FVHmZkt+A8BOsDAbzsAB+v9T2M4nQVVWk120c+VZk
 72hg3ASpTABZcUgkMxFO/VR/roX0aduoNcrKlDn2SCfItGvn9IBDJyCAWlvVbD09NqbDklh5
 6UpNShKaCy6iuiX0Ou3c+1ixfYseZyD0IM34hmMzBn/JNN/GNXoZPyP4tVVmjAtmspJAPDSI
 dIDbiZiZwjBZBsJPUoLDJU5n6GjgXyXnz9w8QrJ4/ZopTWNilUvgdABM/KMEjCObd9SkUuC4
 HrP4kzyAw0ANczZwj2Amp6prraVwH2iBtlMStVU8NZrvVHC+WYLVSYycmHrpLqrhm2ufPZAf
 hl8Fi0G6PJaGFaQZsnwWVi0rWCJujYYWsFMCKsq5QeV0K3W7g2FQG8eQVZpatYrqcs3TjwCz
 UKSkpXiAjkHmKKRYWKQ8PGTtzzaBMQOBWoLZCtBRgxc5dDm+dg3lkiWEIclF7OphNroHz222
 yqNsCU1m7QUi4gMyrm/+lfExTmro/AlUzII2+keZUr9hisRWWJvT9bygbQHxZ6s9Lqkc2Q=
IronPort-HdrOrdr: A9a23:eAhSmawRjhNhqxeCCOQzKrPxR+gkLtp133Aq2lEZdPULSKGlfp
 GV9sjziyWetN9wYh4dcB67Scu9qBTnhOZICOgqTM6ftWzd1FdAQ7sSibcKrweBJ8SczJ8h6U
 4DSdkYNDSYNzET46fHCWGDYqwdKbK8gcWVbInlvhRQpVYAUdAa0+41MHftLqUwLzM2dKYRJd
 653I5qtjCgcXMYYoCSAWQEZfHKo5nmhY/rehkPAj8g8U2rgSmz4LD3PhCE1lNGOgk/iosKwC
 zgqUjU96+ju/a0xlv10HLS1Y1fnJ/M28ZOH8uFj+kSM3HJhhyzbIpsdrWetHQeof2p6nwtjN
 7Qyi1Qd/hb2jf0RCWYsBHt0w7v3HIH7GLj80aRhT/GrdbiTDw3JsJdjcYBGyGponYIjZVZ6u
 ZmzmiZv51YAVfpmzn83cHBU1VPmlCvqXQvvOYPhzh0UJcYapVWsYsDlXklZqsoLWbf0sQKAe
 NuBMbT6LJ/dk6bVWnQui1VzNmlTh0Ib2W7a3lHnvbQ/yldnXh/wUdd7tcYhG08+JU0TIQBz/
 jYM4xz/Ys+AfM+XOZYPqMsUMG3AmvCTVbnK2SJO2nqE6kBJjbkt4P32rMo/+unEaZ4gKfaoK
 6xEW+wiFRCO34HUaa1rd52G1H2MSiAtA3Wu49jD8MTgMy/eFLpWRfzO2zG3fHQ5sn3OferJc
 pbCKgmf8MLElGeZrqhpzeOPaW6CUNuJfH96exLL26mk4bsFrDAkND9XbL6GIfNeAxUKl8XRE
 FzFgTOGA==
X-Talos-CUID: 9a23:OTUsc2C20wzFJSj6EwZ1rX8JAocjTkTQxlbAekOBDWgqerLAHA==
X-Talos-MUID: 9a23:hE0+rgVc74idoU7q/D7RiGBdPt812ICJMhAI0ocKmNmjETMlbg==
X-IronPort-AV: E=Sophos;i="6.03,244,1694750400"; 
   d="scan'208";a="125616366"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=S9N2IvJ4B/McY9XaiHM3p/MVpo6t6EikL+FruyRbYeCXOocNe2l5MmErYg3cInngWgVe0TzSiDQUsrixIH9XUUTW2MuDTOGhiW80Sg+aR7x+RFH+34C5tZk9lNIhsIIiyeBQB9NsgKkTcdY9PkxVvIsiApkyAEbzZir7CItZmQrJ+do5XOvRNov7kGSKp57zNSftKQKY0vUS5fWHGz/xcfk3IOn/xB5GAm70lQJSe3j5gp9BUFzQO31+KYfKBRKXzOoBSTtsbEFqid/0h6roNlqfu5gOyXuxIJHlRAMnUUt+ButhKCP2MxZliCaZp41omywada+Xq0GAE9Yf8Bf5VQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=QSXlqjPToKHgQULyC976CQxyVan704f+/BpCJVPz8xg=;
 b=jyVVZxU0tVR3cuI/gUtcqO0FFmG9PHE4rigFQ+bt5FTVxhRsXYfgGdTTztGRAwGlyeYYHESOncLTr8+LTrbsnNlEgcWcxqlCWlkmEDFZKYrkBRZlhTYuXeN6i3Y8zYhy/ix1aeuaebsngwRmXNAZygdRqb5sgFOSY7PKJeGe7I/pcVT+/hNBq4FCf4QIgeZT+H0CDvIhqFt8hcTxm8YyGM4DR+zV1oIiJDLWr0EjMtNEs9F/g86/gWnmMqwLpv0K7XOqoP3+OsDUM99auXSBuxKI04c0Hgl9jrrg3AP2dkgMbNV7Qk6kkHk5/tvujdx5VrtTzel3czTQyOKx4RP5Pw==
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=QSXlqjPToKHgQULyC976CQxyVan704f+/BpCJVPz8xg=;
 b=rccTDWb06JvCmhwIWSCnjkRbGsrJmN7E9DLSy8kVrC9nxeOLvhs9ireoSywCGqgA8zP0B59WfNzzhRlTYBrnFXM1yfNQ9o+raTm2O4nhp6RYBPpw9FTkkhz9WykmhncoHtv60ZtYl6Rg1Le48XCgGMfUV6lAXcOq1felMh7uDOc=
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/i8259: do not assume interrupts always target CPU0
Date: Mon, 23 Oct 2023 14:46:35 +0200
Message-ID: <20231023124635.44266-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: LO0P265CA0010.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:355::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_|DM8PR03MB6248:EE_
X-MS-Office365-Filtering-Correlation-Id: 5ba19280-761d-4eaa-95eb-08dbd3cc6385
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:
	oWR6w+XLTmNehRAshv2Txhud+gt398oNgZzvuhs4Q8zj8WW5drZQsNrxJbsgbNkyNGTMrsa5p9IzCf1n/iFa6biEcQUxadiyyGQTxS8RoXXtf7+XIWsyRINK+U18qFdEB3nkPeBpe2LH3SAobqVkKGar9SkXaHyHmor55tLS9x/14WNJqbaLgCANkjOdC5USH5HUjtce71gE12Gmh5xb7nuxUHUKeWS/JmboSG8vdjXTBLWGUQWzJmSEckNNDz3vWR4pMCiQqXBACp8Zch1FqKJYr4ZznJuzboN/OZiz6g+Rd/Csmnbps2xBEXohxE97+v1HD3IngE8u6PgUWpp0QNQ4sgQa7MvFZUDnRFaQ/6T/PMEOIeqwXB3JNLrknnl1bxOD2yQPLSVl7Z3HX3k8wYHK2mV8kfIU+SFY1DzgEhhaDphWEaijcQFhts+nyZnxyDBlR165uSVfXM7ymX+MbAEObIIB06cCM8ZKskPf74538yAlr5PNZZ7s0NrbsOo4FMdM2365TsviVKoiCW4y0ukZTANtzCuLIpMsH4dm5gVhEiAzpRFAOQQE0kLEZe2+
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)(39860400002)(136003)(346002)(376002)(366004)(396003)(230922051799003)(186009)(64100799003)(451199024)(1800799009)(36756003)(2906002)(316002)(41300700001)(86362001)(66946007)(66556008)(54906003)(6916009)(66476007)(5660300002)(4326008)(8936002)(8676002)(82960400001)(478600001)(6512007)(6506007)(38100700002)(6666004)(83380400001)(6486002)(26005)(2616005)(1076003);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?aUNheFJ1bzF6azRGRDh3VjR1VjUwOE5wR1Q2STNwOUw0dWxBb1BOMW9vUkU4?=
 =?utf-8?B?SFUzMW9ucEtGWjQ3VW8wVDFVcGhRS3JsOTNaQ3JYY2svYmZIeHhxWEMvNjBQ?=
 =?utf-8?B?akNKWjJZSk9ZV3pKVng4TEdVSytXS0hUWEMzRHRoY05uL0JzY1BWRUg5ZGI4?=
 =?utf-8?B?NEwxRGxMcS9lR25Ybk90VjU5dGs2NDlQK0txcFNORnBFR3YxMU52ajQrUzBE?=
 =?utf-8?B?MUhibXdZU1REMkkxQWJzYWNKR090bGhNYXVxTlBmc3lSQWo1WVZmalFpamta?=
 =?utf-8?B?VldpbVJTT2tLRWxtcDlKcHVFWlhvckk0TDdQNnB4T282ZHlDNjlHOWV0UVcz?=
 =?utf-8?B?N3g3K0dOam8zZXB5MHBzRnNpNGUxNmZCNHpFamtXNC9STzA2c2N3Q3crbDVm?=
 =?utf-8?B?Y0pnZndsK2NId09DK2JYZ1Q4cHhiQllyVUMyY2M4T29mQ2pTYS9WTWoyWnBT?=
 =?utf-8?B?enIyajB4SE9tN3BpUmtIL1l6Z2RjRVdzRFZ3RUdwTkp0eEZBVTJTWEpNcWJq?=
 =?utf-8?B?RDFpYU5hbkNpeTBVQ3VuZzdoMFM4Nm9VcklCZFExL3pub3o4MEpSa2wvYmtt?=
 =?utf-8?B?NGM4RUhiUHdtMHdaMGI3MUZqU2RVSUV1YjRyR0Fodytxam85a1BJOWJOaDZa?=
 =?utf-8?B?MDBBTU5Bdlhtc0VkZmZDcTZhbG5qUnp2Y0k1WmpCRUZacEw3MWtMZlBEZE9F?=
 =?utf-8?B?VkNFMC84L1F1M09PaFU4UVRtWk1IaXN5K04wTWRmdkpuc1Z1ZWZ2RGhadHZo?=
 =?utf-8?B?ckdMNWt6dkViZnJ5TVJaUFhobHJoTitBNVNFZkM5UnRkMmhYTGJOdklxQmFx?=
 =?utf-8?B?V2FBZVBVTEpzUE5pNFZieU5wU1dneEZZOUlQT2xiaCtGQTFpSE9TMFZHMDY5?=
 =?utf-8?B?blA3OTQ5eWU1MFBGNzRsWFNINFhTYnJFT0I2azl5SUhtWjRZQkZMNVhUTFNF?=
 =?utf-8?B?TXFNN21wY28rWEwwc25SazNGajFTRUVwVWM5STVIdEZ1NmI1bWpqYTZRVXZv?=
 =?utf-8?B?VWhKSjZycmRMelBHVk15a3FEa3UvYmJYekhWWlNQSzEvRFg5T3ZNMzN4R0RJ?=
 =?utf-8?B?dDNyK1RsRHBLelRPVmR4eHpYRG9kR1h6b1J5Y0ZibWNOdEY5cXU5V3pRUmlU?=
 =?utf-8?B?OTFuN0Y1dXA2YnZlQnVXYWZYS3RFTnNBVDlXQUJDNURNL0FpKzZTS2ExVmp4?=
 =?utf-8?B?RDdVV2w1Nm9HYmN5TlJ6bkYvMThaY28xZTJraFpyd29RVVFwSjdrdS8vN1Ro?=
 =?utf-8?B?OE1EcFJiWis3NGdBT3B4R3JBcVYyTzZmTVBQdGZhUzdQMzZzYnU5NngyTDFI?=
 =?utf-8?B?STdNV1JGUTNJSTVnY0lWYlY5UzFRbHI3L0U2Rms2YVBvOFVsdDgvY2x5QmdY?=
 =?utf-8?B?VEhOaUdsMGR4OXNsbnlJR1Z1a3FsdUl1Q29qclN0ZFVMZjJiOGwyenVIY2Nu?=
 =?utf-8?B?c2FwMzd2RkZuSytSMmhYbXJsQkYrdU9yRFc5bkx0ZjBXcU9ubkw1Vk5LWEE0?=
 =?utf-8?B?QlhPd0VrUE5LOGtpWU40RTV6a2l1SUFIM05HZzA4S0pvT01QdVYxNlJSZWc1?=
 =?utf-8?B?SzVnU2hPa0dibGJ5OTdKT2dWQkZXbDdpRGlUQTFMbW1MVWxJS2x2MWl1VCtL?=
 =?utf-8?B?VW1aNjBZZ0JFMW50cWpJSVdDVlFkRWhuN1NRUG5oTWdEb1RieFJYOWVMcmI5?=
 =?utf-8?B?U1hlU3B1TXJrY290TVdlMFVub0tMY24vNm5KbXlOU0ZmWnNWUTh1S0ZHUWFF?=
 =?utf-8?B?ZlozNDVCY0tLT3B2S29xKzhJeEVqTXgyNVkvNkpLbFB6MGNZdnJXTDhmSFBO?=
 =?utf-8?B?WmVramhZcjgzNXdLQmY5V2pVeEljZG9DczVzUVUveCsxTVhEVFdDN1IvY1Ew?=
 =?utf-8?B?UkdKMUN1VDVGSFpjQ3NQdWtVVnpyRFFNUzUweHdNYmoydFdvUUIwWDhhZWkz?=
 =?utf-8?B?NEYwT3FMR25nUk81Yi9CNkdFRzVNR0szdVJvL2kzd2lLMjUwNEYwOHpoNUxN?=
 =?utf-8?B?RzhXNVRVVHFsRGREcllMTXE5OVJncDZuOWdyWUdROTZxU2p5NzAwSTJpSlo5?=
 =?utf-8?B?M0puMWlYeHYvbFJEdmVIdzBJTmNCakQzSDU2dVhwZ1BTN3lPcnQzS3kxR0t1?=
 =?utf-8?Q?QQ5fWuBSPGoPGD9yk+LeSBJgP?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	8wK18cePZkxnD60SVMhCK4OMGZNG9TmtzV90q7TPnVEAJJtprcb9zDJAUcSXqraLTRxtgKmTs3HvChdhYl9dRwLPVS4dhFO2lEs89kWEcG2EEpVWyRc8WlNU35OBiWh9B7ptmDJx5SWctnFpp7BztE4qL3yWWfmW1MzF7xkgBddYiJm2FMt59fBXCpsyv4cWga1XciiWnHM2CuZWn4VBpfwkB2bqfANNYyllb/lsZIxa4N6cckF/xb0iljic4D2Os+Lt+5br7iBC867T7sJv9cegv+8gT4RgMYYF/cXneYJJtoWL7ocOK3G9tfsPhc1aGqifF73xxUZzwbGaqttiQ834XEr8v88Op08IVyHymLawDJSoO2VDzIeCxqcDkIMkG0Vyx7fSh+Wy/6MPlZugBMx00NQSy7RHLGpOKzsNNM46kfd2V5pA0I8bHx9JncN9dRpUzahmSCDO+UtSKwLcrFpfKzQNHCa7L+kAx9vkur0DRki4rn+9MLvc3tHSdYKTgvye8m/ozFH4/W1b4/Mb9OnYTS2MFQ8qjTWB1V280mJ53sf+32/2Ya4TBBOswJPF0PKF+XEA8JE66mUqde8ag3IShqvH7LAturwRT+i6p/se154y+CZguwso4HvELwMYzkqEPoj1buxVzkl61FwwRx7KlzHmHbzklQXa+2TRAvGEGNaodUlGU+h4VeQK3bpWVaQi3zNDTHkpZDuTwvdnLaWaSG9H4H/KLJ5SSmv0i9vB9rlSYKKEaG1AsLIOH3+CxYkrlAJ3qyaaGlWn76+1LiBN2vgs23s+Ie+oqmBJPhInlNLFwt488aNPjZLxCBmNCXIok7vdiOfLM11NXWfQuA==
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 5ba19280-761d-4eaa-95eb-08dbd3cc6385
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Oct 2023 13:31:40.2722
 (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: mh5f1wcckZRMfQKHFHEaVeoA8VBk+rElJRzo1KvBq9RnJbMYSlSB5XBIG+mXKvvvlvaaG9hGUYer0yYc6oCiSw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM8PR03MB6248

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
observed i8259 (active) vectors getting delivered to CPUs different than 0.

On AMD or Hygon platforms 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 would need to be handled on all CPUs.

Do not reserve the PIC spurious vectors on all CPUs, but do check for such
spurious interrupts on all CPUs if the vendor is AMD or Hygon.  Note that once
the vectors get used by devices detecting PIC spurious interrupts will no
longer be possible, however the device should be able to cope with spurious
interrupt.  Such PIC spurious interrupts occurring when the vector is in use by
a local APIC routed source will lead to an extra EOI, which might
unintentionally clear a different vector from ISR.  Note this is already the
current behavior, so assume it's infrequent enough to not cause real issues.

Finally, 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>
---
Changes since v1:
 - Do not reserved spurious PIC vectors on APs, but still check for spurious
   PIC interrupts.
 - Reword commit message.
---
Not sure if the Fixes tag is the most appropriate here, since AFAICT this is a
hardware glitch, but it makes it easier to see to which versions the fix should
be backported, because Xen previous behavior was to reserve all legacy vectors
on all CPUs.
---
 xen/arch/x86/i8259.c | 29 +++++++++++++++++++++++++++--
 xen/arch/x86/irq.c   |  1 -
 2 files changed, 27 insertions(+), 3 deletions(-)

diff --git a/xen/arch/x86/i8259.c b/xen/arch/x86/i8259.c
index ed9f55abe51e..0935cdf07b65 100644
--- a/xen/arch/x86/i8259.c
+++ b/xen/arch/x86/i8259.c
@@ -37,6 +37,15 @@ static bool _mask_and_ack_8259A_irq(unsigned int irq);
 
 bool bogus_8259A_irq(unsigned int irq)
 {
+    if ( smp_processor_id() &&
+         !(boot_cpu_data.x86_vendor & (X86_VENDOR_AMD | X86_VENDOR_HYGON)) )
+        /*
+         * For AMD/Hygon do spurious PIC interrupt detection on all CPUs, as it
+         * has been observed that during unknown circumstances spurious PIC
+         * interrupts have been delivered to CPUs different than the BSP.
+         */
+        return false;
+
     return !_mask_and_ack_8259A_irq(irq);
 }
 
@@ -222,7 +231,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 +359,22 @@ 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.
+         * Note this behavior has only been observed on AMD hardware. In order
+         * to cope install all active legacy vectors on all CPUs.
+         *
+         * IO-APIC will change the destination mask if/when taking ownership of
+         * the interrupt.
+         */
+        cpumask_copy(desc->arch.cpu_mask, boot_cpu_data.x86_vendor &
+                                          (X86_VENDOR_AMD | X86_VENDOR_HYGON) ?
+                                          &cpumask_all : cpumask_of(cpu));
         desc->arch.vector = LEGACY_VECTOR(irq);
     }
     
diff --git a/xen/arch/x86/irq.c b/xen/arch/x86/irq.c
index f42ad539dcd5..a2f9374f5deb 100644
--- a/xen/arch/x86/irq.c
+++ b/xen/arch/x86/irq.c
@@ -1920,7 +1920,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 Mon Oct 23 13:34:58 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 13:34:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621465.967917 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quv55-0008Cu-Qe; Mon, 23 Oct 2023 13:34:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621465.967917; Mon, 23 Oct 2023 13:34: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 1quv55-0008Cn-Mp; Mon, 23 Oct 2023 13:34:55 +0000
Received: by outflank-mailman (input) for mailman id 621465;
 Mon, 23 Oct 2023 13:34: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=OVTz=GF=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1quv54-0008Cf-8K
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 13:34:54 +0000
Received: from EUR01-VE1-obe.outbound.protection.outlook.com
 (mail-ve1eur01on0624.outbound.protection.outlook.com
 [2a01:111:f400:fe1f::624])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id f1c1b644-71a8-11ee-9b0e-b553b5be7939;
 Mon, 23 Oct 2023 15:34:52 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PAXPR04MB8542.eurprd04.prod.outlook.com (2603:10a6:102:215::18)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.11; Mon, 23 Oct
 2023 13:34:49 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6933.011; Mon, 23 Oct 2023
 13:34: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: f1c1b644-71a8-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=BetW6GXQaQI+hlNDorO/JYYyoM25eqogEG96FCn0lNkRw1QOvy9b7tOgSx1g9VeG6b5x+LG0sN0GSUnDd3FstY+zieucvNxB+p4LJfW1G1hEC5V/pQQzL97M1XUvPpXxC6cYUd/+FkwymjyIjYxCcI+ZjOBRwxk6/4cmuf0+MMgYLLP8p2IHFsX02tKWaNRw91t7ulyekKFtdfGM/zxd4sizbBxdnRK+v1JF8wsS59QRhUMKCfNvybnqALJ15UTxZ8lr1WtiAxtHyoukXfsv7839B2eUXhjWsSsgt7g+BuvzanSW0yGhG2zLWfNB9VO0afqqx/dr4IVwvqmPoo6y9A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=fMLjx89QHNR1E+jgaLS4qyOoGIaRXeLbh2j3ZcXFmDs=;
 b=HToIVGsZxgmGzubPPJTitr8vwA2sm1AqV8GnQlEd790VqVlSNy/t9CEGgcsVX3cJhC3HKQKTTInswyhVxLX10OKOvKCy8F3YkE6mEsaXyOO9infmOGEh1C/coHwDK0Sjj6TUVI7lFeD7lTDBo7cVgbTm28hqWLpOdy557SEaca8m/kCL707UkFdAKDuHz3Ooy/WWWrCNu7Xl4VCvxiuJULdoDojEzTYjU3Sl/NgH1fw+8FxSd31I96DPLvMyqhZtUof8ovfFO+mEKVcpfza9taeZuXE2dYvYed1jGQvAC6PdlCPICcDn8jCRUsK1J3n413pFcw2ZsxcZh2a7QZH/Bw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=fMLjx89QHNR1E+jgaLS4qyOoGIaRXeLbh2j3ZcXFmDs=;
 b=rAmCcK5AQNA+rvMsQlyFcvy2Raz9PQMVCvlAdd8oGo+ktCnRNt5Qdvqescf61V/sy2syldXTZkrBHVoj3FD2uoGvUWn42Q1Rkw1V44vzRiWqltZ0Kel2pIRlfdjXdUicE7PEVqe6N0g1kRNIVdmHIxOao14xLfyNNZDbthKcY/zT4YDZef9nqBOcDJ7mtNyvGkZLwzkHGiZyrmmbGeSrYC+ejOo3yK9kCODOzSU8IJNNa2t8jNt5ItzmAIRVKY6WkFxgYSE2kgyRWQNJJWNJz1fhI1nFYB/Bn+KKgxJnf/CxYN5t3TiNvXkac9YFyBlFdmSu8itGh15LA3yrnMlV2Q==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <89778285-5cba-8fb5-70bc-710b6dd30a10@suse.com>
Date: Mon, 23 Oct 2023 15:34:46 +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 3/4] xen/include: add pure and const attributes
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>, xen-devel@lists.xenproject.org
References: <cover.1697638210.git.simone.ballarin@bugseng.com>
 <fd5421162a00aa782e0776324ff6497193c1e3d3.1697638210.git.simone.ballarin@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <fd5421162a00aa782e0776324ff6497193c1e3d3.1697638210.git.simone.ballarin@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR3P281CA0122.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:94::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_|PAXPR04MB8542:EE_
X-MS-Office365-Filtering-Correlation-Id: af92e36a-8d4e-4b19-4aaa-08dbd3ccd3f6
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	vgko2TRiCG8I1zwnmSHsdiusQ+AxWMWE0N3ktADDniOiGErbDvCpXzbW+9dVRLP+T6Z90jn3hU7Ipi3r2q/LaZ7paymGNCdd1ENLryc1dU5OITQjEJFrBvI6yf4SiWGsXJzLYEpmQlz7CnNL4kFS6PRc5W2a3ogvUC+PGejUDye4g4a5lLmUEWFcd+ajeFr/yR4072bFiIQH0J0mSbD/nK/evPB7LOY9U71Gw++pSLay0y2S/zx4vJejPaerHjMDD0OIbZTdDVP8ZVEUYnhRrxwPpZG6kWgPd6HtfJ5ZfwkbTOEoVDq6HGq5PXPSntMvXpRnlT9qHLE+/NZvHGJ6DjuwYec4emXUs5TKwPznh1x1ELR1BYh8ivf0P/gDYtBo4buTChWoD0DJ4rcAK5VdobCXqOpx9sg1p57xC+kPJSQAg/dDdO4L8jfJTlnvNDkTzEX2nVSx0jEMJwpmyE571GntwSdzAV2XLyqkT2wuevJFpijODg7z/WxQtgMHVlq86H+yOYqahHQCEQYkoH6uqiQ0BajF/uxp3GLdhxAzwyWgD4WikGe67q+T/DulQgW6bwPCIIOQGkRYPjowVfmcVkIbKr5eLEvgcT/4wlrnGhXFB5yOUTukzizMom7lvtrjeanvrFJswNDcYtt/Q2UQgQ==
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)(366004)(376002)(136003)(230922051799003)(64100799003)(1800799009)(186009)(451199024)(36756003)(53546011)(2616005)(26005)(31696002)(38100700002)(6506007)(6512007)(6666004)(316002)(6916009)(86362001)(66476007)(66946007)(54906003)(66556008)(6486002)(478600001)(31686004)(41300700001)(4326008)(8676002)(8936002)(2906002)(5660300002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?VVVKZjAvTDVQVjdUNWtVUzlLSm9sMWN1ZStyWGJ4dlhoeXY0d3F1YndEa0h5?=
 =?utf-8?B?VlR2L0I5VjFjNi8zT2hvTTlobFpJbWt5eW1raVU4TmxtQTlOSE5sanJESHJa?=
 =?utf-8?B?MmJMUW9nTWc4TkVUQWlxMHMwU1BObnJlZ2M2eFNyWG45V3QvQmhEV21DS0xV?=
 =?utf-8?B?Qm8wckxTNWNKQ2p2WXN1QWtvZUZZdHUyM3hvWks5MEN1aUtlY1UvSHI5Ny81?=
 =?utf-8?B?dWhkTzhDcTlxcDlGUi8vRlBmMUNmNURXSFdSL2FtNmJtanA4QVlWUUl1aUdM?=
 =?utf-8?B?OGRqa1VuZTV5MjAxZkNYYzJISjBxalpscG12SmlZVFNUZXM0SjNMVXVub3J6?=
 =?utf-8?B?dVl2dkJIMzA5RnJDYURNQ2dya1AvbDN1V0NhY1RROUJNOHNvb3MrRmdqc2U1?=
 =?utf-8?B?c2IwNlVER09tZkMvanBibitsbkI3MVBlOEUrK3pjVTg5Q1BiQ0N3RWVIeDZG?=
 =?utf-8?B?RFl2d3BGWURWUGV6OFlHcEJiVElXZzZoUC9POVI3cmM1Nm8vMXpiUmlPRGNz?=
 =?utf-8?B?NEdCd0UzdWU5S2daR1RtRktvdnVFWFNEWVl4bjUvTVhxbkQrRUQ1TFdkcUV2?=
 =?utf-8?B?WXYvRUEvWDFFMjY5VTc4OXg1MkxHanJISlNLeWExQnB6ZFdidDJwN2hoTHh2?=
 =?utf-8?B?SXc0Yi9PQkdySnp6T0s0Sks1UnVkMVRQenBuOXpVUlFTTTBtQzZoY1BFRzlm?=
 =?utf-8?B?eDZVaFJ0djcveXFoWkhVdnM2Qm5FV2V3ZU1FTVVQbkRQdTVXNzBBVi8zWjJ2?=
 =?utf-8?B?eXFxaTlwZDZ5S0EvUEZWY0RRaEtYTHVMN0Z6cDRPM1RmV0l2N2wrejlMYWNU?=
 =?utf-8?B?MjdPLzVQazREZUhqQnczRzNiaC9ic3FYN29sYkFjeHE2OVlNY3Z4bUNTWHhi?=
 =?utf-8?B?TUFKMlNiY0M3T1crS1FRSE5IdjJON0NKczcvZjNueG1DaXB6ZDAyaU0wdGVp?=
 =?utf-8?B?SW14RHBXMXdVa3NtcTAza0ZPQWVPbFhQamtMS1lmVmFLdmZ0aW92cno5WjJL?=
 =?utf-8?B?UEtma01YcC81ZGNydnEzWlJobElGMlVGcE9JSC9SMXVlU2o5TFNQcU9PcDZX?=
 =?utf-8?B?N2JxUVBtaThZQkxVek9UREI5bTVBVmF2bSs2M1A2ckZmQ3ZpSTYvMUEwdXNn?=
 =?utf-8?B?aUh1M2ZpMmF3cDg4enhCUWhVVHB3MmZCaG9mNFM1dWJCekdzdTNBRkJnOEEv?=
 =?utf-8?B?clFOeE5TWHpGaFo2NWZKTHU0ZVUvU3dValo1NGZYSmRORExCUDVtTlNLQmRL?=
 =?utf-8?B?SzhjeWdYUjAzcjVyTFZMd2JuYkhGa2MyaDJLTzBFZVVMeDJnYWhQbnVuZGp5?=
 =?utf-8?B?YmIvdWZqR2JOY3BuOXRZQjlYa0E2ZUVGTldTTk4vNWJPeFRKM1N3dGlZcDhk?=
 =?utf-8?B?YmVOaUUrdkg2RkZiNnQ5b01OcEdhMzRhSkF6RUVpYmJ0Yk9iZ3JyT0Z6N0tV?=
 =?utf-8?B?dVFHTGIxTVhCVUxKbHRmY2ttZDArbm12QzJMZXd6VzJoWGE3ZmFzMEh6R0gv?=
 =?utf-8?B?VmY3MVdoa2RjZ0NlQnc2VlRhN0VoelUxUG52UTFYTUhvTTA0cXZNYkNhejVL?=
 =?utf-8?B?N0VyQzZBQ2NqZnBpTklYZ1N1Q21OdTVQZHZ6WWJ3akZnTjhLSHFYdUlLcmdG?=
 =?utf-8?B?UzZud2Z3SVZXSTBEazJvSm91ZXFaMnZ1bWptNkZwc20vc1NRV2JGRU5WOTB2?=
 =?utf-8?B?U3JEOFBRZUQ5a3NwT1hFN05oaTdwSFY3Rzg1bXJMenc5THBEZXFhOFBscEZQ?=
 =?utf-8?B?NGU4ek5ETGdPdXpmYURBeHovV3ZDYVU5cC82M2ZoQUFxamYwSnBjOVBReXZS?=
 =?utf-8?B?VmZCaDhlcHZ1Z21TMExueXlqVS85WHcrbUNaT3NFYWFQejNkV2k3KzRWME5w?=
 =?utf-8?B?Ulh2TGVONmtjaGxyazI3elFRUS8rQWlaMnRPQUhXbGhTWW80R0xYK0F3ZG92?=
 =?utf-8?B?N2dONFVRcXVCMjc2NG5MYkI0WUZtdXFXTUZNSUdEeFBPWUNxQ0FiZzdMa3NT?=
 =?utf-8?B?ekowRUlJR21XOVJDU0JHb0pSbjNNREhkU3N0SUN3WmxtemJNcGo1anM0bzJW?=
 =?utf-8?B?cXF5a00rVmVTTDl1bHh0U2g3MHh4WHVpczhYb24wM29xcmQ4QTdJeEhXamNo?=
 =?utf-8?Q?v+cih22ejEedqRR29jTUZN0dM?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: af92e36a-8d4e-4b19-4aaa-08dbd3ccd3f6
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Oct 2023 13:34:49.2978
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: VRzs0Ov+fMMbG05R2B7aERLbDEDmCGI8qt8T3Rz0S/h98T17e604j+M1u4wGQdELGvNkmszo3NCdSaaVH4ouzg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB8542

On 18.10.2023 16:18, Simone Ballarin wrote:
> Add const and pure attributes to address reports
> of MISRA C:2012 Rule 13.1: Initializer lists shall
> not contain persistent side effects
> 
> Add pure attribute to function pdx_to_pfn.
> Add const attribute to functions generated by TYPE_SAFE.
> 
> These functions are used in initializer lists: adding
> the attributes ensures that no effect will be performed
> by them.

Adding the attribute does, according to my understanding, ensure nothing.
The compiler may (but isn't required to) diagnose wrong uses of the
attributes, but it may also make use of the attributes (on the
declaration) without regard to the attribute potentially being wrongly
applied. Since further for inline functions the compiler commonly infers
attributes from the expanded code (discarding the attribute), the only
thing achieved here is a documentation aspect, I think.

> --- a/xen/include/xen/pdx.h
> +++ b/xen/include/xen/pdx.h
> @@ -164,7 +164,7 @@ static inline unsigned long pfn_to_pdx(unsigned long pfn)
>   * @param pdx Page index
>   * @return Obtained pfn after decompressing the pdx
>   */
> -static inline unsigned long pdx_to_pfn(unsigned long pdx)
> +static inline __attribute_pure__ unsigned long pdx_to_pfn(unsigned long pdx)
>  {
>      return (pdx & pfn_pdx_bottom_mask) |
>             ((pdx << pfn_pdx_hole_shift) & pfn_top_mask);

Taking this as an example for what I've said above: The compiler can't
know that the globals used by the functions won't change value. Even
within Xen it is only by convention that these variables are assigned
their values during boot, and then aren't changed anymore. Which makes
me wonder: Did you check carefully that around the time the variables
have their values established, no calls to the functions exist (which
might then be subject to folding)?

Additionally - what about the sibling function pfn_to_pdx()?

Jan


From xen-devel-bounces@lists.xenproject.org Mon Oct 23 13:46:10 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 13:46:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621469.967926 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quvFq-0003Qy-Oj; Mon, 23 Oct 2023 13:46:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621469.967926; Mon, 23 Oct 2023 13:46: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 1quvFq-0003Qr-M0; Mon, 23 Oct 2023 13:46:02 +0000
Received: by outflank-mailman (input) for mailman id 621469;
 Mon, 23 Oct 2023 13:46: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=zmhW=GF=redhat.com=kwolf@srs-se1.protection.inumbo.net>)
 id 1quvFp-0003PJ-Pb
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 13:46:02 +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 7f7d2f5f-71aa-11ee-98d5-6d05b1d4d9a1;
 Mon, 23 Oct 2023 15:46: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.3, cipher=TLS_AES_256_GCM_SHA384) id
 us-mta-263-mjSKRdUpPyGnGYhKh02Sbg-1; Mon, 23 Oct 2023 09:45:55 -0400
Received: from smtp.corp.redhat.com (int-mx07.intmail.prod.int.rdu2.redhat.com
 [10.11.54.7])
 (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 mimecast-mx02.redhat.com (Postfix) with ESMTPS id 1F555101AA75;
 Mon, 23 Oct 2023 13:45:55 +0000 (UTC)
Received: from redhat.com (unknown [10.39.194.144])
 by smtp.corp.redhat.com (Postfix) with ESMTPS id 6EBF01C060B6;
 Mon, 23 Oct 2023 13:45: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: 7f7d2f5f-71aa-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
	s=mimecast20190719; t=1698068759;
	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=PRwDvjlRKO8xrlwJvcJXG0QiFBX/VuVy6rRUymKs+DU=;
	b=LEzQPwiNkc1yz9w0HNvBEwxU6PndrGS8P0kRkjiXAKLO8fZuhOBcoNgPJcwXs6NNUfnImb
	ld6GgJFU6YvG8pR9GkcZjY1JUfiN930wvOGDi5SVJWU3w5m7sAcGOKl184oYYcgu2w8K3B
	msQFWkd/KRpNsvChNWrz/DM0oguawas=
X-MC-Unique: mjSKRdUpPyGnGYhKh02Sbg-1
Date: Mon, 23 Oct 2023 15:45:51 +0200
From: Kevin Wolf <kwolf@redhat.com>
To: Igor Mammedov <imammedo@redhat.com>
Cc: David Woodhouse <dwmw2@infradead.org>, qemu-devel@nongnu.org,
	Hanna Reitz <hreitz@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	=?iso-8859-1?Q?Marc-Andr=E9?= Lureau <marcandre.lureau@redhat.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Richard Henderson <richard.henderson@linaro.org>,
	Eduardo Habkost <eduardo@habkost.net>,
	Marcelo Tosatti <mtosatti@redhat.com>, qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org, kvm@vger.kernel.org,
	Daniel =?iso-8859-1?Q?P=2E_Berrang=E9?= <berrange@redhat.com>
Subject: Re: [PATCH 11/12] hw/xen: automatically assign device index to block
 devices
Message-ID: <ZTZ5D2wZXkDQanbQ@redhat.com>
References: <20231016151909.22133-1-dwmw2@infradead.org>
 <20231016151909.22133-12-dwmw2@infradead.org>
 <20231018093239.3d525fd8@imammedo.users.ipa.redhat.com>
 <3f3487af227dcdce7afb37e8406d5ce8dcdbf55f.camel@infradead.org>
 <20231023113002.0e83c209@imammedo.users.ipa.redhat.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <20231023113002.0e83c209@imammedo.users.ipa.redhat.com>
X-Scanned-By: MIMEDefang 3.4.1 on 10.11.54.7

Am 23.10.2023 um 11:30 hat Igor Mammedov geschrieben:
> On Wed, 18 Oct 2023 09:32:47 +0100
> David Woodhouse <dwmw2@infradead.org> wrote:
> 
> > On Wed, 2023-10-18 at 09:32 +0200, Igor Mammedov wrote:
> > > On Mon, 16 Oct 2023 16:19:08 +0100
> > > David Woodhouse <dwmw2@infradead.org> wrote:
> > >   
> > > > From: David Woodhouse <dwmw@amazon.co.uk>
> > > >   
> > > 
> > > is this index a user (guest) visible?  
> > 
> > Yes. It defines what block device (e.g. /dev/xvda) the disk appears as
> > in the guest. In the common case, it literally encodes the Linux
> > major/minor numbers. So xvda (major 202) is 0xca00, xvdb is 0xca10 etc.
> 
> that makes 'index' an implicit ABI and a subject to versioning
> when the way it's assigned changes (i.e. one has to use versioned
> machine types to keep older versions working the they used to).
> 
> From what I remember it's discouraged to make QEMU invent
> various IDs that are part of ABI (guest or mgmt side).
> Instead it's preferred for mgmt side/user to provide that explicitly.
> 
> Basically you are trading off manageability/simplicity at QEMU
> level with CLI usability for human user.
> I don't care much as long as it is hidden within xen code base,
> but maybe libvirt does.

-drive is mostly a convenience option for human users anyway. Management
tools should use a combination of -blockdev and -device.

Kevin



From xen-devel-bounces@lists.xenproject.org Mon Oct 23 13:46:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 13:46:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621470.967936 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quvG1-0003io-4K; Mon, 23 Oct 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 621470.967936; Mon, 23 Oct 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 1quvG1-0003ih-1i; Mon, 23 Oct 2023 13:46:13 +0000
Received: by outflank-mailman (input) for mailman id 621470;
 Mon, 23 Oct 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=OVTz=GF=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1quvFz-0003i5-OF
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 13:46:11 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur04on2054.outbound.protection.outlook.com [40.107.7.54])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 855ae708-71aa-11ee-9b0e-b553b5be7939;
 Mon, 23 Oct 2023 15:46:09 +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.6907.23; Mon, 23 Oct
 2023 13:45:39 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6933.011; Mon, 23 Oct 2023
 13: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: 855ae708-71aa-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=NYkrBoSFfueOnwjh2iPunIU7N3W8wtfyebugQXKXMuWvRsDkn5D1qPuDZzcNCNRAxBYHgvN2YapO9doQMMfB0JhfN8vOG2Jc1ug6+0s368hp8KrPVW/WMuueNDCFBJQ7SLHFggtCHVBtLCJgo0X4SOo8o09v1CWuvSLxHG2m8+hsryf6hnyYUly7N0kUj+SpDD3EqlWf5UkHgfalmRQhoWZYnund6BMkKveJ0uWliBNL8oFAXgRw5/ckRW/z7MJ75rE0bsRgKkBWtQOP9JUCd+8BnTGrY3BVksD5HgVCNHtFqLe4xvivPJu+xB6Xg+yFXriroA5HhL8b9VyaFCscOw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=5/fZ6cTki1nN1KKke/U79UvcKlK8ZkSvC2QysHg9nh0=;
 b=NsreOJFT7sWT4c7Iv3X62hqIkIlIt9qpNuW9jWE4XrIWd5P80wmK8k5akj1jnbl23Y6141190lBnpdhEP5eTlF+dgfrSWrdGLywmIdxNzHIK8MpTGAjkbtfEyhlapoRdC7YUXaWD6J9s+NUHiQ0FXQWVCWom3wOLiM6Q7Jqo0chtczmH4cAFQsaScOK0ZuiPC2K9ssDHIpeUUPvg+B8a1RQR11Axe+hcpkDzmFcjhtOeRyACnbkOwrJ2MTtu4oKLmdKg7RvgwWBRUVigNx/sqXMGUQSoxp1QwBynV52IxtJZ7oOgufz7E5aHfMO1HLk8VRnXZVD0lBUQri7z2w95pg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=5/fZ6cTki1nN1KKke/U79UvcKlK8ZkSvC2QysHg9nh0=;
 b=kN4xVnXuOW71uofyb8670mkvJuBegfUpSkVH6Yt4B4bjRIXVvwuBF12XfpEUhDHb1unH90LjmkhhdApYYzoZmDQaBQoGrEdGkRUaGsxjTzVDRAz48YYMJcLQlDjqCEuOZOJmwDJzjyXVQF4VQ6hRTzqyTJUvpZKOWDWTWhfY94vVUJcBbKg+943Abv0TfWdsyJx+oqwi7HyPltCyG1p1LeLnKAGv0WN4AACDxM3FnhMGTDZPGRaDbHy9h4AW+7sknalCa3zAp8RsGlbJd2VdtQqYJMcO/5RXpmZPpviIs9B8bKDTjdX6Hq65TCNwMmbavyV3S4sIxuuqfR4vXsNsjw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <5475d9e5-ec1c-7f71-ee77-59ec2e6ee01e@suse.com>
Date: Mon, 23 Oct 2023 15:45:37 +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][for-4.19 v3 1/8] xen/include: add macro LOWEST_BIT
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.cooper3@citrix.com, roger.pau@citrix.com,
 Simone Ballarin <simone.ballarin@bugseng.com>,
 Doug Goldstein <cardoe@cardoe.com>, George Dunlap
 <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Wei Liu <wl@xen.org>, xen-devel@lists.xenproject.org
References: <cover.1697815135.git.nicola.vetrini@bugseng.com>
 <546cf30aa43d6d0687a9a6c6d23b11128e5783e8.1697815135.git.nicola.vetrini@bugseng.com>
 <f504772a-68b4-fbfa-e7d4-8d22992c7944@suse.com>
 <f23a1f95916bd61ddcd5002428d8876c@bugseng.com>
 <6d113a237846c7a41aa083e806f172e7@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <6d113a237846c7a41aa083e806f172e7@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0381.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:f7::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_|DUZPR04MB9871:EE_
X-MS-Office365-Filtering-Correlation-Id: 114abed5-6d2c-40b9-ef5c-08dbd3ce57e9
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	Y70xbx53fCPA4NqTOVs1mrB+SexcHK6xvSbBfRL9NK91Pz78+qjU5UWUcaLS5HE2y35yLvlp1ATlF92ZKQhi0WsgUHbryFUmsMEvj+npokvUpxcQCvkehOur+DJPrgmsL1zKrzS2PX3ayYBPHdVTxoHKA1HInBZnwuri3fwExzm0E/aDr7JwPWWhSoFwYZH0S6TGicFZlehG6pYShutJUXhjZxTiov8vSmSdnR9fR+QGzU1yb5yinfYq0qtRUeedMZXa73aj+r28xGoI/hZZTrXfViUHmVVfJ1uS0PXZclGu3x6d6Spumpj1/VVJNDkHL18CjCNteZGOk7aDcNtelztEL+NtH9x134Gxq4XDQ4siUcolfo4DN4N9Vwun9sbLyIOt59AgRfSjJbiE1L9mIf2HfTSIfAO48S2tZKDfuO6IHD7saLNv7/U7kQQQIkfk8XUsnkcB7BuR0Ks77zzL5fws2BImSCDoTGCRNbYT4POhqLEMXDNr1AOo3C5ENc3An0AzkrQ3mr2YW223MR8rdH0oGwxkM9g8RdKrPrhYr8A4UHQbvnmuwB6Add0uSe2DU4uiLsS90jhrbRLlvhYdb/Rveg9HR+OeWDxEL07xdCvSmMqEu4f4SmiXyS7ut/OFfSBj40pA9yPbLhmQoaSIHA==
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)(396003)(39860400002)(230922051799003)(64100799003)(1800799009)(451199024)(186009)(66556008)(6916009)(66476007)(66946007)(54906003)(316002)(2906002)(31696002)(7416002)(86362001)(36756003)(478600001)(4326008)(5660300002)(8676002)(8936002)(41300700001)(53546011)(6486002)(26005)(2616005)(38100700002)(31686004)(6512007)(6506007)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?bmM0VlNtTVdCMU02VWkySEw1VEFldGtFZHVlZnB1OFRaUU9KYU0vL3YvcU5i?=
 =?utf-8?B?VmRLRDA1SzJsZEI0Y3NiL2VzdTcwcTBnQ0oxL0U2elpQKzQ0VXB6OVoyNlQ2?=
 =?utf-8?B?bjdJbHhVWW9mYTVITXF1YThhZUttaWNyZnhsL3daS3RTdkJKRzUvVzlqbFo3?=
 =?utf-8?B?MVRtUVc4ckNTWHVDbDg2dCtLSCsvcmZaQ09GUStJaitQRVRETi9nZmpMSUY5?=
 =?utf-8?B?MEFHTnlIM0dnaElhRUhLSkpzTzVsR3ZqN25xLzl3QmhzMmtMc1dGMlBnU2Y1?=
 =?utf-8?B?c0w1WmF3Y0c0QWRlaHdXelhkaDJYT1VRdXZNV2ZuUG04VEdOTWxCTzVKUEZq?=
 =?utf-8?B?RldkRk16elZsUnhHZDhXLzlSMURoMnFOMWY2d1p3UXZKM3V4em9Qd2U1T3gy?=
 =?utf-8?B?V29kWVBKUEd4dmRUemxaWnBJQzdvZTF4aDVCcnF3MUUyMUh5YSt0M0FTRXV3?=
 =?utf-8?B?VGJpS08vb1I3dUhhY3VEQk83SkwwWFFBaTl0MnlVTlRYWSthcnBib0MwS0gw?=
 =?utf-8?B?MjZqZ2lHeW5vZWd6M1dqYnQybXcwWEVSKzRhM3hRZ3VuaHZib0RYeXlvbEp1?=
 =?utf-8?B?cVFjRkFWWmtzY2FiWHlzYjJxUVgrcEVSdjEyOTZwRHMweDJFa3lPY3F4Smpn?=
 =?utf-8?B?Y2JRN3BLYVNtYkk2QmZwMThXNlBXc3dWa1k2dU9id1FxU1M2eitoSkc2a0RI?=
 =?utf-8?B?QnVkSXNDTjZobHEvc1BnUVI3SkJ6UkNpME9NK08xWDQ3aWcyVGFEaXFyNkgw?=
 =?utf-8?B?WUk5RTRKMTNOZ3pSWEdOM3A4UlhYRjBPM3pKSnFteDZsU1pmMXBmamwwTHJH?=
 =?utf-8?B?NnpJaU84UlRVVmsyNkZtRXhDcFVVV1JDUzd4Y1FMTE1PbXdwU1A2dkxYNFBk?=
 =?utf-8?B?cjV0ZjBxaFJQVWltbEZ4Zzdtb201amRWQXBaNEZNMmdPUTE2NkpwbDM2a0ls?=
 =?utf-8?B?aWEraGhmM1J4aTNJcXFPbGlHSjBsby9PRmZWY0YxZDYwY2svZHQ2d21sYUV4?=
 =?utf-8?B?Y29xNyttT1c4SmF3SlRaQkk5WG1xbTU0M1hadWVrcDFHWlAzdyt5SFhSZGdK?=
 =?utf-8?B?RUlPR090S2dlQlF2V29ra0h3Y2xmVlU0b1d0dG9RaENvd29XUjVCTUxMSzJs?=
 =?utf-8?B?WVdFRDlaRjB3Mnl3dklUcXluUXdjZHJZTVRtYVBaRnA3MlN4d0c1angwN29a?=
 =?utf-8?B?SGI5a1A3QXpyek1SMzVYNld2RWU2ZkVQNkFEQlltZzM0VGM3MldUMEZMWUpG?=
 =?utf-8?B?S3RHSFdCL1NjRHlaM1NTNlRHWmd1cEJsbXZBTDVlcDRwb3dleHhsZmdaeXEz?=
 =?utf-8?B?bkdRV0Z3a0c4TE1nRDZHa0JwdlpsVjZ3ci9BMGlWYUhJcUZESFJIOWpYSG45?=
 =?utf-8?B?enB4L2FnRm0yQXdQelNZL3NxOWZDenpZV05Xa3dYU0NrUHFnUmJWZVpxOWdU?=
 =?utf-8?B?N2VCajVyUEtVWVVSdFJoR3h0WFJ3b3ArSytLZE9YWUJQS0FhVUhpaXhNb0NW?=
 =?utf-8?B?ei91MlJqYXQ2Q1NIVStGbFNML1FUWHFwTitodzVQdi9JRDhrclA0dGMxVnVr?=
 =?utf-8?B?bkdNYi81Z05iTlN6aVU0L3lERVVndTVTUDFSS0ZmV0t2OEFQeHZHTVk1UUQ2?=
 =?utf-8?B?QTJ0dit0WUlsOEdvcW9BRThwMEpBMlZ5em1pajgzcXJadklGWEZMTDAvN25J?=
 =?utf-8?B?Z2EvUE05MWNUWnViMFBMMDlVYWVOcTc1RThaNlBBYWhBTzdubnQwS0RWdnpq?=
 =?utf-8?B?dkg3TTdib3dscnlMSnVxNVlMT05VWGVnNDcrZzBEVmlmNk1PbW8weTBwa3Zi?=
 =?utf-8?B?Vm16SmY0SWpMTEtMQkJrQm4xMUszbmFsUzU3Y0FKTDFKWHJkcFJrZUs1WXpj?=
 =?utf-8?B?b0NYanE4VEsvbm11SmJTR1M3RVl5TkdQKzh1dmZGRWMvUUZ6dnhTY2xLWnpl?=
 =?utf-8?B?MGx3R3lWcUNaSGFwV3g1WERvTFl5em1sZjNQWmlZRzRTMklYU2dXd0dVNmZv?=
 =?utf-8?B?c1AxaWZuU0JVbU12aTlrZVlGaUxtT2ZqWGJjNDZzQ3UzOW1FM25QU0xTNm10?=
 =?utf-8?B?ZXptVitCbjl5OXQ1Y2Zob05DVDhuNTNWZ1Ezd3dqV3o2TTFMMHFBNzgrUjJO?=
 =?utf-8?Q?QtFGNIlC1T8FW8e0sbqCJbL9A?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 114abed5-6d2c-40b9-ef5c-08dbd3ce57e9
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Oct 2023 13:45:39.5938
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: Qjz0VFPrWgzOemIOFsPrNjaMxkIsW3PeOuPtLPV3n7qyO5hiQfyO0JhsGFFHyiDNC8J3LuTgMRGHXpRl8M1ujQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DUZPR04MB9871

On 23.10.2023 15:19, Nicola Vetrini wrote:
> On 23/10/2023 11:19, Nicola Vetrini wrote:
>> On 23/10/2023 09:48, Jan Beulich wrote:
>>> On 20.10.2023 17:28, Nicola Vetrini wrote:
>>>> --- a/automation/eclair_analysis/ECLAIR/deviations.ecl
>>>> +++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
>>>> @@ -246,6 +246,12 @@ constant expressions are required.\""
>>>>    "any()"}
>>>>  -doc_end
>>>>
>>>> +-doc_begin="The macro LOWEST_BIT encapsulates a well-known pattern 
>>>> to obtain the value
>>>> +2^ffs(x) for unsigned integers on two's complement architectures
>>>> +(all the architectures supported by Xen satisfy this requirement)."
>>>> +-config=MC3R1.R10.1,reports+={safe, 
>>>> "any_area(any_loc(any_exp(macro(^LOWEST_BIT$))))"}
>>>> +-doc_end
>>>
>>> This being deviated this way (rather than by SAF-* comments) wants
>>> justifying in the description. You did reply to my respective
>>> comment on v2, but such then (imo) needs propagating into the actual
>>> patch as well.
>>>
>>
>> Sure, will do.
>>
>>>> --- a/docs/misra/deviations.rst
>>>> +++ b/docs/misra/deviations.rst
>>>> @@ -192,6 +192,13 @@ Deviations related to MISRA C:2012 Rules:
>>>>         See automation/eclair_analysis/deviations.ecl for the full 
>>>> explanation.
>>>>       - Tagged as `safe` for ECLAIR.
>>>>
>>>> +   * - R10.1
>>>> +     - The well-known pattern (x & -x) applied to unsigned integer 
>>>> values on 2's
>>>> +       complement architectures (i.e., all architectures supported 
>>>> by Xen), used
>>>> +       to obtain the value 2^ffs(x), where ffs(x) is the position of 
>>>> the first
>>>> +       bit set. If no bits are set, zero is returned.
>>>> +     - Tagged as `safe` for ECLAIR.
>>>
>>> In such an explanation there shall not be any ambiguity. Here I see
>>> an issue with ffs() returning 1-based bit position numbers, which
>>> isn't in line with the use in 2^ffs(x). (Arguably use of ^ itself is
>>> also problematic, as that's XOR in C, not POW. I'd suggest 2^^ffs(x)
>>> or 2**ffs(x).)
>>>
>>
>> Makes sense, I think I'll use an plain english explanation to avoid
>> any confusion
>> about notation.
>>
>>>> --- a/xen/include/xen/macros.h
>>>> +++ b/xen/include/xen/macros.h
>>>> @@ -8,8 +8,11 @@
>>>>  #define DIV_ROUND(n, d) (((n) + (d) / 2) / (d))
>>>>  #define DIV_ROUND_UP(n, d) (((n) + (d) - 1) / (d))
>>>>
>>>> -#define MASK_EXTR(v, m) (((v) & (m)) / ((m) & -(m)))
>>>> -#define MASK_INSR(v, m) (((v) * ((m) & -(m))) & (m))
>>>> +/* Returns the 2^ffs(x) or 0, where ffs(x) is the index of the 
>>>> lowest set bit */
>>>> +#define LOWEST_BIT(x) ((x) & -(x))
>>>
>>> I'm afraid my concern regarding this new macro's name (voiced on v2) 
>>> hasn't
>>> been addressed (neither verbally nor by finding a more suitable name).
>>>
>>> Jan
>>
>> I didn't come up with much better names, so I left it as is. Here's a 
>> few ideas:
>>
>> - LOWEST_SET
>> - MASK_LOWEST_SET
>> - MASK_LOWEST_BIT
>> - MASK_FFS_0
>> - LOWEST_ONE
>>
>> and also yours, included here for convenience, even though you felt it
>> was too long:
>>
>> - ISOLATE_LOW_BIT()
>>
>> All maintainers from THE REST are CC-ed, so we can see if anyone has
>> any suggestion.
> 
> There's also LOWEST_BIT_MASK as another possible name.

While naming-wise okay to me, it has the same "too long" issue as
ISOLATE_LOW_BIT(). Considering x86, in the BMI ISA extension, has an
insn doing exactly that (BLSI), taking inspiration from its mnemonic
may also be an option.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Oct 23 13:47:21 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 13:47:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621474.967946 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quvH6-0004f3-ES; Mon, 23 Oct 2023 13:47:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621474.967946; Mon, 23 Oct 2023 13:47: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 1quvH6-0004ew-By; Mon, 23 Oct 2023 13:47:20 +0000
Received: by outflank-mailman (input) for mailman id 621474;
 Mon, 23 Oct 2023 13:47: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=iWHG=GF=bugseng.com=federico.serafini@srs-se1.protection.inumbo.net>)
 id 1quvH5-0004eh-Ac
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 13:47:19 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id ae685d0f-71aa-11ee-98d5-6d05b1d4d9a1;
 Mon, 23 Oct 2023 15:47:18 +0200 (CEST)
Received: from Dell.homenet.telecomitalia.it
 (host-95-247-204-25.retail.telecomitalia.it [95.247.204.25])
 by support.bugseng.com (Postfix) with ESMTPSA id 7FFAE4EE0747;
 Mon, 23 Oct 2023 15:47: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: ae685d0f-71aa-11ee-98d5-6d05b1d4d9a1
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/p2m: address violations of MISRA C:2012 Rules 8.2 and 8.3
Date: Mon, 23 Oct 2023 15:47:11 +0200
Message-Id: <4566d4517cad99e15bfccc3b0c553a19d615fe3c.1698065062.git.federico.serafini@bugseng.com>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Add missing parameter name and make function declarations and
definitions consistent. No functional change.

Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
---
 xen/arch/x86/include/asm/p2m.h | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/xen/arch/x86/include/asm/p2m.h b/xen/arch/x86/include/asm/p2m.h
index 40545f5fa8..f2c7d58b59 100644
--- a/xen/arch/x86/include/asm/p2m.h
+++ b/xen/arch/x86/include/asm/p2m.h
@@ -632,7 +632,7 @@ void p2m_change_type_range(struct domain *d,
                            p2m_type_t ot, p2m_type_t nt);
 
 /* Compare-exchange the type of a single p2m entry */
-int p2m_change_type_one(struct domain *d, unsigned long gfn,
+int p2m_change_type_one(struct domain *d, unsigned long gfn_l,
                         p2m_type_t ot, p2m_type_t nt);
 
 /* Synchronously change the p2m type for a range of gfns */
@@ -649,7 +649,7 @@ static inline bool p2m_is_global_logdirty(const struct domain *d)
 #endif
 }
 
-int p2m_is_logdirty_range(struct p2m_domain *, unsigned long start,
+int p2m_is_logdirty_range(struct p2m_domain *p2m, unsigned long start,
                           unsigned long end);
 
 /* Set mmio addresses in the p2m table (for pass-through) */
@@ -661,9 +661,9 @@ int set_identity_p2m_entry(struct domain *d, unsigned long gfn,
                            p2m_access_t p2ma, unsigned int flag);
 int clear_identity_p2m_entry(struct domain *d, unsigned long gfn);
 /* HVM-only callers can use these directly: */
-int p2m_add_identity_entry(struct domain *d, unsigned long gfn,
+int p2m_add_identity_entry(struct domain *d, unsigned long gfn_l,
                            p2m_access_t p2ma, unsigned int flag);
-int p2m_remove_identity_entry(struct domain *d, unsigned long gfn);
+int p2m_remove_identity_entry(struct domain *d, unsigned long gfn_l);
 
 /* 
  * Populate-on-demand
@@ -924,7 +924,7 @@ int p2m_altp2m_propagate_change(struct domain *d, gfn_t gfn,
                                 p2m_type_t p2mt, p2m_access_t p2ma);
 
 /* Set a specific p2m view visibility */
-int p2m_set_altp2m_view_visibility(struct domain *d, unsigned int idx,
+int p2m_set_altp2m_view_visibility(struct domain *d, unsigned int altp2m_idx,
                                    uint8_t visible);
 #else /* !CONFIG_HVM */
 struct p2m_domain *p2m_get_altp2m(struct vcpu *v);
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Mon Oct 23 13:51:24 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 13:51:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621480.967957 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quvKw-0006UX-Vg; Mon, 23 Oct 2023 13:51:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621480.967957; Mon, 23 Oct 2023 13:51: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 1quvKw-0006UQ-SP; Mon, 23 Oct 2023 13:51:18 +0000
Received: by outflank-mailman (input) for mailman id 621480;
 Mon, 23 Oct 2023 13:51: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=1u5b=GF=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1quvKu-0006UK-Vd
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 13:51:17 +0000
Received: from mail-ed1-x52c.google.com (mail-ed1-x52c.google.com
 [2a00:1450:4864:20::52c])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 3c2e22b5-71ab-11ee-98d5-6d05b1d4d9a1;
 Mon, 23 Oct 2023 15:51:15 +0200 (CEST)
Received: by mail-ed1-x52c.google.com with SMTP id
 4fb4d7f45d1cf-53b32dca0bfso7006422a12.0
 for <xen-devel@lists.xenproject.org>; Mon, 23 Oct 2023 06:51:15 -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
 h1-20020a50ed81000000b00533dd4d2947sm6361209edr.74.2023.10.23.06.51.14
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Mon, 23 Oct 2023 06:51: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: 3c2e22b5-71ab-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1698069075; x=1698673875; 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=LfP3d7RwZQ+bDCZktxHUTUEmhCH4Zh18JO01+RFvZtc=;
        b=buZTnVWF8KpYVxyTRtDVccYoVWLEUhSsuEWybD7jjQ01hjyAoSoNYitnh36pZBJyj7
         0w2bNtboimGzjFKXyxo4ZxNQ1+NiV8swhKq4/B0ASc6GyHp/EBg3l4ehwsbey5pLrR/q
         snA0rRrQz+7+FyjW1eWCGG/XagnetXrhAMrXw=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698069075; x=1698673875;
        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=LfP3d7RwZQ+bDCZktxHUTUEmhCH4Zh18JO01+RFvZtc=;
        b=SwxkTqjzs/Ucqd9td87WjBUUgMShMoOO20B1Xav61bLM48qJkgRiVAganXGg+NEAfh
         WTmw8VYvMXoBMc/gJ+LUD6EHyckOKSiQYQc+LGVSKVTmBC7LS0Kj0jsVn0jdj4s1ikht
         hcFtJixhMChEM9cP+v39qMu6bV0Z1hau2QhQN9RDwIkT1iciZAPRnp6Ep0ko92unypwm
         CwW4HJlgfuVmmk1IB19sGErH25ijBx9Khl63zKFAUq5b6I85j06DnBB+paPlPttS4+MY
         hqq8kX7A5emkxLHUiB4yjUIzPULjK8CDnTayAUvoheSCVeFVay+rhf9NLdMjeMJVVt0y
         8bxg==
X-Gm-Message-State: AOJu0YxrSNt8X8zDS0rWw6zzBwsI+PPEcQcDkuHUx2oRaKzFgM0OhJSO
	+KLCdeACLppNYOKIc3BDFDA0Ug==
X-Google-Smtp-Source: AGHT+IGCcaqrboMt1DVOBveGdJGbyJskhjRiZpzXDcCttJjZvzETNwH8qjbDlsAQ3RsM6ekeAWjm4A==
X-Received: by 2002:a50:fc07:0:b0:53e:5c4d:ba15 with SMTP id i7-20020a50fc07000000b0053e5c4dba15mr11409730edr.8.1698069075375;
        Mon, 23 Oct 2023 06:51:15 -0700 (PDT)
Content-Type: multipart/alternative;
 boundary="------------L9g0q0jM2cXFw34X30eNjSra"
Message-ID: <7b28331d-b1d6-4c6b-b299-34de9ba65e0d@citrix.com>
Date: Mon, 23 Oct 2023 14:51:14 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [XEN PATCH 3/4] xen/include: add pure and const attributes
Content-Language: en-GB
To: Jan Beulich <jbeulich@suse.com>,
 Simone Ballarin <simone.ballarin@bugseng.com>
Cc: consulting@bugseng.com, 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.1697638210.git.simone.ballarin@bugseng.com>
 <fd5421162a00aa782e0776324ff6497193c1e3d3.1697638210.git.simone.ballarin@bugseng.com>
 <89778285-5cba-8fb5-70bc-710b6dd30a10@suse.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: <89778285-5cba-8fb5-70bc-710b6dd30a10@suse.com>

This is a multi-part message in MIME format.
--------------L9g0q0jM2cXFw34X30eNjSra
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 23/10/2023 2:34 pm, Jan Beulich wrote:
> On 18.10.2023 16:18, Simone Ballarin wrote:
>> --- a/xen/include/xen/pdx.h
>> +++ b/xen/include/xen/pdx.h
>> @@ -164,7 +164,7 @@ static inline unsigned long pfn_to_pdx(unsigned long pfn)
>>   * @param pdx Page index
>>   * @return Obtained pfn after decompressing the pdx
>>   */
>> -static inline unsigned long pdx_to_pfn(unsigned long pdx)
>> +static inline __attribute_pure__ unsigned long pdx_to_pfn(unsigned long pdx)
>>  {
>>      return (pdx & pfn_pdx_bottom_mask) |
>>             ((pdx << pfn_pdx_hole_shift) & pfn_top_mask);
> Taking this as an example for what I've said above: The compiler can't
> know that the globals used by the functions won't change value. Even
> within Xen it is only by convention that these variables are assigned
> their values during boot, and then aren't changed anymore. Which makes
> me wonder: Did you check carefully that around the time the variables
> have their values established, no calls to the functions exist (which
> might then be subject to folding)?

I was actually going to point this out, but hadn't found the words.

pdx_to_pfn() is not pure.  It violates the requirements for being
declared pure, in a way that the compiler can see.

Right now, this will cause GCC to ignore the attribute, but who's to say
that future GCCs don't start emitting a diagnostic (in which case we'd
have to delete them to make them compile), or start honouring them (at
which point this logic will start to malfunction around the boot time
modification to the masks).


It is undefined behaviour to intentionally lie to the compiler using
attributes.  This is intentionally introducing undefined behaviour to
placate Eclair.

So why are we bending over backwards to remove UB in other areas, but
deliberately introducing here?  How does that conform with the spirit of
MISRA?

~Andrew
--------------L9g0q0jM2cXFw34X30eNjSra
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: 8bit

<!DOCTYPE html>
<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body>
    <div class="moz-cite-prefix">On 23/10/2023 2:34 pm, Jan Beulich
      wrote:<br>
    </div>
    <blockquote type="cite"
      cite="mid:89778285-5cba-8fb5-70bc-710b6dd30a10@suse.com">
      <pre class="moz-quote-pre" wrap="">On 18.10.2023 16:18, Simone Ballarin wrote:<span
      style="white-space: pre-wrap">
</span></pre>
      <blockquote type="cite">
        <pre class="moz-quote-pre" wrap="">--- a/xen/include/xen/pdx.h
+++ b/xen/include/xen/pdx.h
@@ -164,7 +164,7 @@ static inline unsigned long pfn_to_pdx(unsigned long pfn)
  * @param pdx Page index
  * @return Obtained pfn after decompressing the pdx
  */
-static inline unsigned long pdx_to_pfn(unsigned long pdx)
+static inline __attribute_pure__ unsigned long pdx_to_pfn(unsigned long pdx)
 {
     return (pdx &amp; pfn_pdx_bottom_mask) |
            ((pdx &lt;&lt; pfn_pdx_hole_shift) &amp; pfn_top_mask);
</pre>
      </blockquote>
      <pre class="moz-quote-pre" wrap="">
Taking this as an example for what I've said above: The compiler can't
know that the globals used by the functions won't change value. Even
within Xen it is only by convention that these variables are assigned
their values during boot, and then aren't changed anymore. Which makes
me wonder: Did you check carefully that around the time the variables
have their values established, no calls to the functions exist (which
might then be subject to folding)?</pre>
    </blockquote>
    <br>
    I was actually going to point this out, but hadn't found the words.<br>
    <br>
    pdx_to_pfn() is not pure.  It violates the requirements for being
    declared pure, in a way that the compiler can see.<br>
    <br>
    Right now, this will cause GCC to ignore the attribute, but who's to
    say that future GCCs don't start emitting a diagnostic (in which
    case we'd have to delete them to make them compile), or start
    honouring them (at which point this logic will start to malfunction
    around the boot time modification to the masks).<br>
    <br>
    <br>
    It is undefined behaviour to intentionally lie to the compiler using
    attributes.  This is intentionally introducing undefined behaviour
    to placate Eclair.<br>
    <br>
    So why are we bending over backwards to remove UB in other areas,
    but deliberately introducing here?  How does that conform with the
    spirit of MISRA?<br>
    <br>
    ~Andrew<br>
  </body>
</html>

--------------L9g0q0jM2cXFw34X30eNjSra--


From xen-devel-bounces@lists.xenproject.org Mon Oct 23 14:00:24 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 14:00:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621484.967966 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quvTe-0001JT-Pc; Mon, 23 Oct 2023 14:00:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621484.967966; Mon, 23 Oct 2023 14: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 1quvTe-0001JM-Mr; Mon, 23 Oct 2023 14:00:18 +0000
Received: by outflank-mailman (input) for mailman id 621484;
 Mon, 23 Oct 2023 14:00: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=1u5b=GF=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1quvTe-0001JE-2L
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 14:00:18 +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 7dfcd2b0-71ac-11ee-9b0e-b553b5be7939;
 Mon, 23 Oct 2023 16:00:15 +0200 (CEST)
Received: by mail-lf1-x12f.google.com with SMTP id
 2adb3069b0e04-507be298d2aso4826926e87.1
 for <xen-devel@lists.xenproject.org>; Mon, 23 Oct 2023 07:00:15 -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
 cf15-20020a0564020b8f00b0053deb97e8e6sm6259867edb.28.2023.10.23.07.00.14
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Mon, 23 Oct 2023 07:00: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: 7dfcd2b0-71ac-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1698069615; x=1698674415; darn=lists.xenproject.org;
        h=content-transfer-encoding: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=FlyrrWjnQJjdWtYMlP8MfisOGBi8U+JkBt4Psobz64U=;
        b=mT7/oj+/VVSvg+3qIIrPnEnDfzmGwrGjxuADW9PmDaP/uQ0h51/Y9AqpNHtNuVKBvk
         CK1usXLloAmCenqjADtfhvhz5IGUeyod/LL9zWZiN3jTqFeoFfHDcoOArvav5y2jBpqe
         g3C9U6u0fYpbK12f1GK/N8/3YtK1SXEtu2ZaY=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698069615; x=1698674415;
        h=content-transfer-encoding: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=FlyrrWjnQJjdWtYMlP8MfisOGBi8U+JkBt4Psobz64U=;
        b=ZJ2xw3q647WkFCIO5vmP1EXYJPLkg0KmwtSBKgY8Vl//DuP7rySgtyS25J2E912a0f
         tl+9HxSr1L2WxtgXR63T9s8Jf1LhK0JJ/v9FOzfYaLf7ctyHplD8RSHAt//S+ebMjdVv
         yRuZiaXioj8dIhqdzh1HKd+wK0OaOeO5/nyL3x0N0K3GikJGjinWM9eeB4bLtNj7tuG0
         5x5WyeIt3QnhYzM5YQX4Z0b13LC4vfZpRtIxXaU8o/45lKWyBG9n6jH+S97M0qjQnj3j
         fNnHTQRydXD0nrz7dhH/mX9DpRZ6uEL1BtJFRuS0lfwjHJAeuLtTLSCLA70fUphE8/mS
         RGgA==
X-Gm-Message-State: AOJu0YwQkK+/POLP+J0u8ZTkztuJzKn8hkbZ3UdBjC22wY0dHyOjlgLb
	ApwtCa+YIntoYWV88L+T2LqRMg==
X-Google-Smtp-Source: AGHT+IH3YjahFUM2tc3b92GcWnly2mNsmMQHJfD4kvFBbKKBYW7FUiJm2k8gqTKosK3LAjN8LrmtfA==
X-Received: by 2002:a05:6512:3ae:b0:504:3c1f:cbd9 with SMTP id v14-20020a05651203ae00b005043c1fcbd9mr5337549lfp.16.1698069615220;
        Mon, 23 Oct 2023 07:00:15 -0700 (PDT)
Message-ID: <00f50e5e-4d3b-4423-8fdd-5bff53fe909c@citrix.com>
Date: Mon, 23 Oct 2023 15:00:14 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [XEN PATCH] x86/p2m: 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, Jan Beulich <jbeulich@suse.com>,
 =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>, Wei Liu <wl@xen.org>
References: <4566d4517cad99e15bfccc3b0c553a19d615fe3c.1698065062.git.federico.serafini@bugseng.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: <4566d4517cad99e15bfccc3b0c553a19d615fe3c.1698065062.git.federico.serafini@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit

On 23/10/2023 2:47 pm, Federico Serafini wrote:
> Add missing parameter name and make function declarations and
> definitions consistent. No functional change.
>
> Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>

Acked-by: Andrew Cooper <andrew.cooper3@citrix.com>

Queued in for-next.


From xen-devel-bounces@lists.xenproject.org Mon Oct 23 14:04:04 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 14:04:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621488.967977 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quvXG-00023O-D5; Mon, 23 Oct 2023 14:04:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621488.967977; Mon, 23 Oct 2023 14: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 1quvXG-00023H-9g; Mon, 23 Oct 2023 14:04:02 +0000
Received: by outflank-mailman (input) for mailman id 621488;
 Mon, 23 Oct 2023 14:04: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=OVTz=GF=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1quvXE-00023B-US
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 14:04:00 +0000
Received: from EUR01-VE1-obe.outbound.protection.outlook.com
 (mail-ve1eur01on061b.outbound.protection.outlook.com
 [2a01:111:f400:fe1f::61b])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 037ff65f-71ad-11ee-98d5-6d05b1d4d9a1;
 Mon, 23 Oct 2023 16:04:00 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM9PR04MB8196.eurprd04.prod.outlook.com (2603:10a6:20b:3e9::12)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.11; Mon, 23 Oct
 2023 14:03:57 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6933.011; Mon, 23 Oct 2023
 14: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>
X-Inumbo-ID: 037ff65f-71ad-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=b6lVTeQ1BEhSr+wFGhBfvV9NP97dEnLp1T1c29p5ibCDCPOyjZcHb7JAlvbmVZiyoPv2HfZuSYq0nhp2B9PIYs3Fr8eCbnZo9IJCh0aHM9EiOr8TCGdIScx5I9I83z4ydaV02oUpPiPlbCqNUvoCEdiXdQS1fsgofrYOZmhNgvnhOOVu7eFczQZ+EqwVtKke3h6ibykbwCydZQHYmsCn6kmqR45tY/ICGVNWCtsL6JIGD+rIUdo1eTDgvBPp1NQzokf1n0QN7eLPM2p+ehgfxtzLQ6Dxrqv+3mlkGY221xPCgbqdFm4LbQDeqmmxwOltDkyxw+uhDEjf2m+Jlklgeg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=fpIJiKb5ovzB3oo+KARX+SPr3ykDCz0v8w8szud63Rc=;
 b=IxwTBb7d18xEVEtK2zc0MgRpdMLeJim6GIk5TCaI2iEfkjhERd+AXtPo1vwpfRuWu7s2ea7/ute2lITpbdqBu7Ua/ZnzWK7bKnkhx9QB3bvsFR8Yuy76wIg0Fny1SS60tfY32RyAWF8YKRqUF0P+LUV+xAVlj+K4l8iIYmp1OHTIRUz+qz75daROjJXMJpm8CNfCyN5iAi0kegoeyd6P9tNCHM8x45MK/2xZgUeucryfALfPbORjP+0mIhLYr8Ox0bLis4zh8SEvOY66Lk0KeeiIv5C7c/wZU2lRfI6yXJrC4QVBnmQ3slU50WzFxUrWfNDZT98g3dPS4xIOJAi9jw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=fpIJiKb5ovzB3oo+KARX+SPr3ykDCz0v8w8szud63Rc=;
 b=zqhCzdcwadBGN+sSHlwikmSY9xJvVbu3nd3jAXJIavmk1uDY52Bzcl3nMtk5PSxh0YyD2bK8hY5dO6h361YAb/QEGmNor3vytV+iJjL5gDsX2vd5j6HiEi2mPHcx6uxKtMjtUV3yJKSCPxq7fC544qE9XKvZwmaTP0RPi4pdoLyN7OQoMVF96pN87dCk6dInnYmpH1LoC+/dvF3IUojP60lMdN7JMXQL+FEcjA3FwkQN9RKRNdLbHZmISy4GQj7SSIPR6ZfxJTWDBsDYQLII3XwUMufBIS4QzreeHoArJj2izYacTBSVY66JdmOUFVzz7QV25qw3YARNs07eGMBvEA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <a927b439-8fd9-8014-df76-e731358d9255@suse.com>
Date: Mon, 23 Oct 2023 16:03:55 +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 4/4] xen: address violations of MISRA C:2012 Rule 13.1
Content-Language: en-US
To: Simone Ballarin <simone.ballarin@bugseng.com>
Cc: consulting@bugseng.com, sstabellini@kernel.org,
 George Dunlap <george.dunlap@citrix.com>, Dario Faggioli
 <dfaggioli@suse.com>, Andrew Cooper <andrew.cooper3@citrix.com>,
 Julien Grall <julien@xen.org>, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <cover.1697638210.git.simone.ballarin@bugseng.com>
 <1e0f12095bcbc82ae3585c9fcf57bec7e324049c.1697638210.git.simone.ballarin@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <1e0f12095bcbc82ae3585c9fcf57bec7e324049c.1697638210.git.simone.ballarin@bugseng.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_|AM9PR04MB8196:EE_
X-MS-Office365-Filtering-Correlation-Id: 55528e86-3fd9-4740-9bec-08dbd3d0e609
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:
	tQZd0dxdCBs+KAkoBVi61Jv/7V3+ete+7ZRYTXfQQZO1KEgKIL9qmm1C5E+GIGbzlPDPerw/UNvV/B+AkQHCaOWj3u0Gvu5sSK6Wi7habQRuKio0L1E6DFtg1sqz0ZakYQ7Kq1IGah2+JcWybD4hszIVfOjHg+u+ALJreDMwyEk2bbe4DYGHuVq/nNugbASF6iIh9ButEMqoazNeXp8VVXQ9pScA8ir9bVgbcW3gdZ9j5iFkXR3110zoGnGkg9zPX9+nOXxZqdg5NBw3tyByzqWsUi0iLEBA169QPsG0/22cksi5O2cfKXbfXbbhkXHcL92OurHND03zrLAPGrwUrdnfdwbjJm/Z46Aw5qftTXjKIypg6XToye7aAP44ehwrfiH2ZdnZhzj512bqAzfMoQZ+Zf2QRdbBN53YW669QBfXaUlteFckifoYGF6GRqCm+3nDaonF6sAK0rdbd6U28PV+VXsDnToew92SyZonGYUR56ZaGTU2w18BOXat1tzBTywQ2uRWoOpPIdIP7XaiMLiY4dHrrXGCKPamL9aiub0jvOORRyi8jJIDCi3EpJbAnyvoCJFYnKA6sstWHBZcoDttXTbzoikhnutNgVm7nwDC2AKwQmtbf5RbRB5S1RGRzVYXf7pk+IYV6ef1HDXRGA==
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)(346002)(376002)(39860400002)(230922051799003)(186009)(64100799003)(451199024)(1800799009)(4326008)(8936002)(8676002)(41300700001)(2906002)(5660300002)(53546011)(36756003)(6512007)(6506007)(83380400001)(2616005)(38100700002)(86362001)(66946007)(26005)(31696002)(66556008)(31686004)(6486002)(66476007)(54906003)(6916009)(478600001)(316002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?WG50SEFyVUhRcFVrajhwQ3Z5Yk41Q3NNMUJzYWM0dDdGKzlDNWJzZ09VVUNH?=
 =?utf-8?B?Zk04Z2RVeXlsZTZxeUNNMWs2RlVkQzRjUHdnOTU2dHJTblJ3QWk2QUtadHdN?=
 =?utf-8?B?N0VuVjc4b1FyeExSNytCVW9saG01ZWNibXlERnNBcHc1ZVpOeUUwOXdpWG5Z?=
 =?utf-8?B?N3JkbUFxRndQTTRiNzFHT0RTL2VqT2lpM2JZZk9iUFpuRllUSHdxQ1FFOTJ4?=
 =?utf-8?B?dXh6WTd3N0dvakhnVm9DWWtQTjU1bHEwdW5WOWtMdmRjV2VpY0JUWThqaXE3?=
 =?utf-8?B?b3NzdGZxTDgvc0t5Tk84bGlCZFdKODdKdHV1Q2VuNGh5c21pUDZQVktUejd6?=
 =?utf-8?B?eUtkKzRESDl1TVRzcFJDQjRYQnZQUHdjWUdRU3NjTlFuWDRsZERLNHZyaHBM?=
 =?utf-8?B?ZDVnZWR5N2FYVEJOMXlNbXN1d0gvVkpqWmdwcUVPcTlxV2dFSVdFOG5nZ2c3?=
 =?utf-8?B?TXpzMlJuNXRXa01aK0IxbE80cG5TSEdLVHRHVHlPaE1DQVRWTEsrYnFTK0sw?=
 =?utf-8?B?M2R4K1F1ZDM0MmdSOEN6T25sQzVzYTVIVzhGRlhpZUkxa1VJTDEyYjRBS052?=
 =?utf-8?B?QTlSZ1cwNDNlRVlwMy92d1R1a284Z1VBOEc3MUFxeEdwc25oc1VTNlU1NnpS?=
 =?utf-8?B?NmFTeDJOc054cGxpdVdWSzc1ZGtCWldwNGM3K2hlSGtBNkhCRG9XS054VzM4?=
 =?utf-8?B?bW5TN3ZFWWt0aFNITjBSaWg4d3ltWGg0bjZJWGZnR1BuOW83RW02bloxTURU?=
 =?utf-8?B?ZXNWUTJoZEMvaVhvU3VUZnhLSFR0UW5zY0tCdTVCRjc2aWd6bkEwa2lxdTRG?=
 =?utf-8?B?ZnRhdGNQempqelNja000SmQwZm4wV0VGVnhoN1ozMENQK3drSVdwTnlyUSt4?=
 =?utf-8?B?ZnZjK1phcThDRy93dFhJK1k0SlE0Yk5weGc4MTR0SWFrenAzQ1VNd0hBQ0dM?=
 =?utf-8?B?UmNHMENXcE9WeG9lL01ZQXBqc1hVUFZGWTM5SmY2ODFMTWpsT1BSUklKOURL?=
 =?utf-8?B?c21VUEV4OHEyeitwT0lOd3V3UzRneUQ2WDNLbjBsL2pYUjRWUzJmU05vNURn?=
 =?utf-8?B?NFgyeGJLNWMwa3RRMUlaSDA0VXpYcUwzTjV0RTBGWVQ1cDBsVEFMZmZPQjl5?=
 =?utf-8?B?RW9RNTVYRW00elRJUjVEOHl0dXc3d2dIalJKM0hLcWRsd1ZBaWxFbmpXenlr?=
 =?utf-8?B?dTRCK1NrSlNmRU1PT0xsaUppZE9qVEVGb2NlNGJOVXF3NEVXUVM4RVp6alJo?=
 =?utf-8?B?USt0NjBpdXJYTmxSczNXTVpxRkxEVWNGS05iWlNlZlRYSFROZTh6VU96UlMx?=
 =?utf-8?B?dlZUVUZ3YXc3QkMyWk1ERkszTlg0U2xVdjFwZ3JKaEUwN0lJZkxqTGdCand2?=
 =?utf-8?B?alE3MVZZYS9xUk5vcm5VVC9uMWxmNDY3QXk5K3JWd1FlRC94TnpWZXV6SWx4?=
 =?utf-8?B?OW90bHltTnZjWEl4U0FZOWgycjBHR2NKeDB2V0Nzd1E2Wkdjc21OTk13Vy85?=
 =?utf-8?B?d1MxbjgvU1J5bFp3bDJVQlRDQ24ra1ZDR0NXZGRHcDFZamw0N3NJK0RtVERv?=
 =?utf-8?B?bllVNG1DZWhrdlluVmxOdU1Zd2h0cGY5WnpLSXJZRnZtUE5GR1FOZFdoOVRa?=
 =?utf-8?B?b3JaUzUwMkNneU5lQThubWswRHdsNEtKOE8yMVRBNDFDZnhEdXkrRmNpbTBE?=
 =?utf-8?B?MlEzcDBhVHdWZmtKVTIwZndzd3g2SURqUTRFbTZLdHV0YnlGVWpJWmN6UEpp?=
 =?utf-8?B?ZHRJdjFvampGdzV0Z2NOTWx0a2FIcTdra0UxSmZjU3U5eFpKclRCOGJvN3FX?=
 =?utf-8?B?THBTb3RRSlV5bThaTS9RWXZzWEt6aHNCYkxiRHRlWE5jaW5vaG9PM0g5eUJY?=
 =?utf-8?B?VFNwL1BCckQvdkd6UERhZmhZMEVMQWVyK3gxL3E2dEhpdVQvNWxrWkRZMXdv?=
 =?utf-8?B?RGt2dHk4Nm5JS0JVMkh0VGlPTnJ1NnhRdnowTjFGY3JadzVPVlNrWUk4QnVN?=
 =?utf-8?B?M1dKRHRvVHpad2RIV0dubWVOcnk0djZQamJIWDVOREZJNXRFRFNobFozaWVw?=
 =?utf-8?B?ZHpaUFhoSG1rVjM5bnZuY0xLUnovZzFYcVdpbE5tZ1JSRHNZYUdyOVRqOE5l?=
 =?utf-8?Q?gBsv9RR+s22TEKqPwqk6WWle3?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 55528e86-3fd9-4740-9bec-08dbd3d0e609
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Oct 2023 14:03:57.0144
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: vbQtadypqn7GQgMgbMK7etiXHgS9JlVXYGbgt5R9aekAapSucao3G2oDOxBXW0gbm5m+WzfAZXa6d4FWG3NVBg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR04MB8196

On 18.10.2023 16:18, Simone Ballarin wrote:
> --- a/xen/common/sched/core.c
> +++ b/xen/common/sched/core.c
> @@ -1504,6 +1504,8 @@ long vcpu_yield(void)
>  {
>      struct vcpu * v=current;
>      spinlock_t *lock;
> +    domid_t domain_id;
> +    int vcpu_id;

While I realize that the field this variable is initialized from is
plain "int", I still think that being wrong means the new variables
here and below want to be "unsigned int".

> @@ -1515,7 +1517,9 @@ long vcpu_yield(void)
>  
>      SCHED_STAT_CRANK(vcpu_yield);
>  
> -    TRACE_2D(TRC_SCHED_YIELD, current->domain->domain_id, current->vcpu_id);
> +    domain_id = current->domain->domain_id;
> +    vcpu_id = current->vcpu_id;
> +    TRACE_2D(TRC_SCHED_YIELD, domain_id, vcpu_id);

If you touch this, I think you ought to also switch to using "v" in
place of "current" (making the supposed side effect go away aiui).

Yet then (for the further changes to this file) - what persistent
side effect does reading "current" have? Clarification of that is
part of the justification for this change, and hence ought to be
spelled out in the description.

> --- a/xen/drivers/char/ns16550.c
> +++ b/xen/drivers/char/ns16550.c
> @@ -445,10 +445,12 @@ static void __init cf_check ns16550_init_postirq(struct serial_port *port)
>              struct msi_info msi = {
>                  .sbdf = PCI_SBDF(0, uart->ps_bdf[0], uart->ps_bdf[1],
>                                   uart->ps_bdf[2]),
> -                .irq = rc = uart->irq,
> +                .irq = uart->irq,
>                  .entry_nr = 1
>              };
>  
> +            rc = uart->irq;
> +
>              if ( rc > 0 )

If this needs transforming, I think we'd better switch it to

            rc = 0;

            if ( uart->irq > 0 )

thus matching what we have elsewhere in the function.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Oct 23 14:10:11 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 14:10:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621491.967987 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quvd8-0003ud-1X; Mon, 23 Oct 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 621491.967987; Mon, 23 Oct 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 1quvd7-0003uW-T6; Mon, 23 Oct 2023 14:10:05 +0000
Received: by outflank-mailman (input) for mailman id 621491;
 Mon, 23 Oct 2023 14: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=OVTz=GF=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1quvd6-0003dv-Ci
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 14:10:04 +0000
Received: from EUR03-DBA-obe.outbound.protection.outlook.com
 (mail-dbaeur03on20611.outbound.protection.outlook.com
 [2a01:111:f400:fe1a::611])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id dbfd1666-71ad-11ee-98d5-6d05b1d4d9a1;
 Mon, 23 Oct 2023 16:10:03 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DB8PR04MB7049.eurprd04.prod.outlook.com (2603:10a6:10:fc::23) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.11; Mon, 23 Oct
 2023 14:10:01 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6933.011; Mon, 23 Oct 2023
 14: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>
X-Inumbo-ID: dbfd1666-71ad-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=fHm1c3nk0JkQ5UdWJ0BiqhRbcaUTOUYideiDTjoJ8bUBflITEmSNOvMuSk4p2PUc5F3KiEVgDDSyCJeQvq9LZZ29m8hKgk2+gbHdo77ZmwGylq6Q9fk8hpYq/KC9QvA0+eRcR28ksT8hveoDYnYMPJSF9Hs9B9UinraDMUgV4iwlc/hU3YlmvvQ3GVHTpxZ6SIeAoiGajcbc4yYe1JFQEQZQKI1baN/Y/t1q+SLFiL9WixmMsuCePG56nelTTeGV1a386Y9mm0XthRz9AWl2NoAv0zFLgghIQjJ+0nddTq8sDtN05V60b20XbUMXI9vAj+QUXtwshKXGNUm0VIS68A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=X5LI3x2WEvbKEUrvYpwQ9OOcUIwm2RIVCjlxQutqqaI=;
 b=Nh/NwIofOrW2URv0uBYfdKXe+2QZ0t5pnzs3GKiSqxSt+r+GjgO94qicr7Jvo3qx0U2ZW3e1pzCzpmcvXOi4CXtjWPzEyFdCzaoarMKrMiKgv34TsCTww1ucrtLkCg3kDPGzmFTENNyGATIiObruGJzti/3NOLJdPvOfYKxVnexBe3SgN3nLXhrxUXyM4hFW8D1Mdf2+keewc21Ph0P7XYjf3CNhMeqj0hwGj2hZEyxuWGn1KWFkp3ImGUe86SP5Lds5zvoAybhbuVQqweRY+vf9vkgKwyj0wvdyklK5NrMe6Ew3qL8OTqV4Da4dsb1a+qDiXVABezx7XG6UFmv7Xw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=X5LI3x2WEvbKEUrvYpwQ9OOcUIwm2RIVCjlxQutqqaI=;
 b=FcAUjvQjTTN8WY+60j232Ys9yc6/T5RtIBcRRW+Y9x0NbOjdviAfv2sjU0Aw7pcOcCnOer5nX+PA8qWJNSKbPaMqr1/xhp5wwKDoXNGcOlM15y46H9Hk8sgt5bjtdcNooGZQuO77Y05KxvJUh9CN7kF9oyJP7nnNyBvUl14HjMVNoR5W1mOd2AKQMSCHsffeeVWkbCYGBcCui+puWzY3bKMTknkbqPz8HfDU1VTz3wrflPG3w5xkYNJ4ySZMj28PiOunAmQoa4UZKbzuqhyzC6JxtyZ1I9mNAdjQpEl3svzMgR4i80OcyHTgkf3zHDT4W0dlHdfnmYGrem53ohkQlg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <6b3f5e7c-ab84-5f45-ad7e-bafd70563b52@suse.com>
Date: Mon, 23 Oct 2023 16:09:59 +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 3/4] xen/include: add pure and const attributes
Content-Language: en-US
To: Andrew Cooper <andrew.cooper3@citrix.com>,
 Simone Ballarin <simone.ballarin@bugseng.com>
Cc: consulting@bugseng.com, 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.1697638210.git.simone.ballarin@bugseng.com>
 <fd5421162a00aa782e0776324ff6497193c1e3d3.1697638210.git.simone.ballarin@bugseng.com>
 <89778285-5cba-8fb5-70bc-710b6dd30a10@suse.com>
 <7b28331d-b1d6-4c6b-b299-34de9ba65e0d@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <7b28331d-b1d6-4c6b-b299-34de9ba65e0d@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR0P281CA0090.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:1e::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_|DB8PR04MB7049:EE_
X-MS-Office365-Filtering-Correlation-Id: 5cfa3a7b-ea7f-420c-c8a5-08dbd3d1bf4f
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	xXrMJvuhouptIBXOoRkzE+Yo1Iugwuge+tbIIQ2VwwWmVEW4fb1TOnW0kftY7Os7hApOI1XAhw7nRrR7Lhy8cEuBmgub2b33GzkLXASGpRrAaGe0qivgTv2xADxoTxPEjrhm5qV2B1yzDFPCkGmr9+69mpdbg8LsHKeGp4HC3TXIqvGT4eFPTvCpTzImAvtRSyHzrbU9kMB3p9n42RaVXD0Km9wwUKcBiF/lnxcsVyG3qKfGmsU6sHX+HGxxV+CeHE5AoWEqFVJPypd+bgcMPMOWHCBvyoqVEwKyCovhQEs9WPjx2hdXAQr8E99aCrmfiUsfObYjNf6KFtzV00x1UQxrhxUDu/84lqXQbwrWqIFD4cNmEM7Z5V61ntvyLxYEbiLiVOR1LvbOJRYL8AZAK7nBy/PZXfanWjdwiz6udJtGW3sIJz5La1VSrxXPN2LJeCE2iqz6PkoaUjmtubFftvXyiZoO1n4/VLLCmIZ6KIrpktTWJ5Rb6LbiicAqDgwnkP7/LNSJRl6WxQjGALZDV9XlkQihIoujn60rvU+3SJsUhwZeG7KjIMhgv8yYOn8y2ZzsqP2kQcHnAZ0yBk6E8Cbx87U6JZjC8m0wypopWghOypFRWX7sZ3wfn6+QB7d293cXDW9vma9WwwCIs1KYMQ==
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)(39860400002)(396003)(376002)(366004)(230922051799003)(64100799003)(1800799009)(186009)(451199024)(2906002)(38100700002)(41300700001)(54906003)(66946007)(316002)(66556008)(66476007)(6506007)(2616005)(110136005)(478600001)(6512007)(6486002)(53546011)(83380400001)(36756003)(31696002)(86362001)(5660300002)(4326008)(8936002)(8676002)(26005)(31686004)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?TnNibDhyQSs4S0c4RDNXVGl4Q3FVQTJidmE3NmFHZzZjSVVwUFk0TE5CeG1K?=
 =?utf-8?B?T2RWejRodG9wMFNHZEVSTzNsWnJTOVBKVk84VVRpVllxVWdsSUtjZVlYVHJp?=
 =?utf-8?B?SUlSQzZWQldJOGIxZnRxc3JqUXc1NlYvMzBFTHEyTDdiMk1iZzJ4NlhlYkxV?=
 =?utf-8?B?VmdGZDZDL2VXa2FaQTZqZnQ3RFltSEltMUhjeGE0RnpyTHY2M3U2REFpTjNC?=
 =?utf-8?B?U2NtQUxIdEF6ZWJ6aUFjQUdxbjVrZFNBK1Z1bEJzL3U3SWt6MlBzUXNaLzdo?=
 =?utf-8?B?TitsMkR6UWNnUG9IV2IwRFdBZTFDaE1laVJkNzAwUm12VXBpVDBkTkxpbW9i?=
 =?utf-8?B?ZnhYMnlEZkJKV2tmelR6cXRGTXVhdFV3Z2lzL2xaSUViVmNPMWdIUTRQaitT?=
 =?utf-8?B?Q3hxRVJiRXhqZU1uWnRIWVBFcEFjdkhVUEZ2c1dLYWpIYUZJOHFzSTZua0NG?=
 =?utf-8?B?UHlxNmcvSjJ6MnR2RkFhZjRhWmY3YXVIQXZqSDMxK2ZnaWR6R3ZyUFJWS3Z3?=
 =?utf-8?B?SzVSa2s2akZiWmJ5SGtnL1RCQnJIWnJ6c1FveGFGc01pQTc4ZU9ZbkJlcWRp?=
 =?utf-8?B?eFhzQWVhbzlETE1xdHRybGZxeGdVdlNHNmR6RFV6MHlhLzlmb2lremIwb0hR?=
 =?utf-8?B?bkhiMTdmdjBmTHpYNHFGU3V2dytKU1VjOGlPUFJNS092ZEN3bzFOVllUNk9H?=
 =?utf-8?B?YWlnelI4RDhGWXdNUCsrRG5uSmpET0VBL05zdGV2dlJCWVdreWtWR0ZKR0JS?=
 =?utf-8?B?cXZ5SXQwOGwrRzM2SWo1K0s4RzV6amhUcHArd3BzemZyc21BRGcxbVc0eHM4?=
 =?utf-8?B?VzhmbDFaZUs4SlJHUnpwRTlac0pJbC96THdQMXVpdTRxTk9yRU5zbTBuMHE0?=
 =?utf-8?B?UExuZHZYRkxEQ1FqT3loeHJvSWVqVWw0VXhYU2cvOW5hL1d2cjVQemtXWkVH?=
 =?utf-8?B?ck1YUE1JdldMTHlaa2VveFc0aGdGRGJsdUhkQ2xNS0luL3NWTWF4cDZLZkNE?=
 =?utf-8?B?VGZ0Rm42eDA3ektzNUUrZUxJWjZGU3l3bmFycXJBTUx3c2F6RzVqYXBSNEo5?=
 =?utf-8?B?QllhM3g4SHFUSnIvb0tZNUgvM1dHa0VCS3crbDV4cG9VdCtRNzM3K0pXU0p1?=
 =?utf-8?B?YjNLNlFDL1o4WEJhUkZNU0MrQ3BoUkR6ck0zK0l2Y2NiWHgvZ1ZxUVZJMjJI?=
 =?utf-8?B?Tml2Z2t2RFRGakhNYmdaYVpSb1QxTVFTUWZ0a0tacEJ2eWdEQ3NHWDkrM05w?=
 =?utf-8?B?ZkRmQU1zdGd0T3o3bmd4QldUSjljMGRodU9PNG16a2RTMXRRNXRlUFNnbjJx?=
 =?utf-8?B?NldEU2t2d3ZXc1JPVitVSGdvSURpZGFyN21hWjlTcFhxZVpuS3VQWEh6Qk1o?=
 =?utf-8?B?T1pwTlBjeVFIZGthUnBJMk5BU0ZhUU52MkNSK1M0dkw3ZkxMQTNRb2lOQkZK?=
 =?utf-8?B?RFBLRnNIeHptQkpWMmQvbTMweEtsREg5VFRaSHhGVng0VmhTclZBcjUrekxX?=
 =?utf-8?B?UUoyZkZ3ME01ZTJTM3hNNWtzdDJTaXlUT0d6Y0E3TUNCTVVFTktXTllKcjRT?=
 =?utf-8?B?dzh4YlRXQjVvQlZBNEZYVzdlTVJxbWYvMnp6VS9MbDFocFY1UkVJdFp0ekZq?=
 =?utf-8?B?Mnpkd0pwdWxwYUZNdzJDRUI1WXRoanB0Q1FaU09WQU1waDd0a2twU1RPR2tw?=
 =?utf-8?B?Q1NqMEFReUFHbVdBWU8xUS9QbXFOTnYrUTU5eWwxSm8wWHJMc1psamFONnB2?=
 =?utf-8?B?NmtVbWZXUFhUSk9sNjJUZDNQNXhEOWN1ckpOQmdvTDZjb2ppOVlrTENiaHE4?=
 =?utf-8?B?UTZpdVpqNk4wN0Uzd1FCYi9IOU9TeVlPV2pQNUtCM0VSaktLalZxYmt4QmQz?=
 =?utf-8?B?MVZGcHpCcCtNL0ZyeDlucUtpZUtNUWdKZXBoUVJPRmREdnhJd3YvRlNOSVNw?=
 =?utf-8?B?dFFLUkFaNzIxclV5QTBzODQyWVFEUHNLQjVGVCtUSnJRNjZPWEovRWZ2eExt?=
 =?utf-8?B?S1BUQlkyUFM3Z2YxZ2FZSEg4czBVL0tSb1ZUT1g1MElKZ1hoVDFQTnBZRVFP?=
 =?utf-8?B?NTZqQ3h4aWRxclBHaVlKNDZoU3hXSUZKMFZoOHBSM1ZyeGdBT3dwbjROTnIr?=
 =?utf-8?Q?LdMdyMVmDXFv9Fb/6niunrg4O?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 5cfa3a7b-ea7f-420c-c8a5-08dbd3d1bf4f
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Oct 2023 14:10:01.5338
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: B3drTUrreX2zYlg33tUCVVWrf1SUICOJEX4k80jLqCknu8FRjnLzIX/g379FvMExc/woDPackYYgQtkBXnNU4A==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB8PR04MB7049

On 23.10.2023 15:51, Andrew Cooper wrote:
> On 23/10/2023 2:34 pm, Jan Beulich wrote:
>> On 18.10.2023 16:18, Simone Ballarin wrote:
>>> --- a/xen/include/xen/pdx.h
>>> +++ b/xen/include/xen/pdx.h
>>> @@ -164,7 +164,7 @@ static inline unsigned long pfn_to_pdx(unsigned long pfn)
>>>   * @param pdx Page index
>>>   * @return Obtained pfn after decompressing the pdx
>>>   */
>>> -static inline unsigned long pdx_to_pfn(unsigned long pdx)
>>> +static inline __attribute_pure__ unsigned long pdx_to_pfn(unsigned long pdx)
>>>  {
>>>      return (pdx & pfn_pdx_bottom_mask) |
>>>             ((pdx << pfn_pdx_hole_shift) & pfn_top_mask);
>> Taking this as an example for what I've said above: The compiler can't
>> know that the globals used by the functions won't change value. Even
>> within Xen it is only by convention that these variables are assigned
>> their values during boot, and then aren't changed anymore. Which makes
>> me wonder: Did you check carefully that around the time the variables
>> have their values established, no calls to the functions exist (which
>> might then be subject to folding)?
> 
> I was actually going to point this out, but hadn't found the words.
> 
> pdx_to_pfn() is not pure.  It violates the requirements for being
> declared pure, in a way that the compiler can see.

Hmm, I think you're remembering old wording in the doc. Nowadays it says
"However, functions declared with the pure attribute can safely read any
 nonvolatile objects, and modify the value of objects in a way that does
 not affect their return value or the observable state of the program."

To me this reads as if reads of globals are okay, constrained by the
generally single-threaded view a compiler takes.

Irrespective I agree that without said further checking (and perhaps
even some way of making sure the requirements can't be violated by
future changes), ...

> Right now, this will cause GCC to ignore the attribute, but who's to say
> that future GCCs don't start emitting a diagnostic (in which case we'd
> have to delete them to make them compile), or start honouring them (at
> which point this logic will start to malfunction around the boot time
> modification to the masks).
> 
> 
> It is undefined behaviour to intentionally lie to the compiler using
> attributes.  This is intentionally introducing undefined behaviour to
> placate Eclair.

... we'd effectively be lying to the compiler, putting ourselves at risk.

Jan

> So why are we bending over backwards to remove UB in other areas, but
> deliberately introducing here?  How does that conform with the spirit of
> MISRA?
> 
> ~Andrew



From xen-devel-bounces@lists.xenproject.org Mon Oct 23 14:13:05 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 14:13:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621494.967996 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quvfz-0004oC-Cu; Mon, 23 Oct 2023 14:13:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621494.967996; Mon, 23 Oct 2023 14:13: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 1quvfz-0004o5-A8; Mon, 23 Oct 2023 14:13:03 +0000
Received: by outflank-mailman (input) for mailman id 621494;
 Mon, 23 Oct 2023 14:13: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=OVTz=GF=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1quvfx-0004mc-SY
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 14:13:01 +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 450866ba-71ae-11ee-9b0e-b553b5be7939;
 Mon, 23 Oct 2023 16:12:59 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PAXPR04MB8830.eurprd04.prod.outlook.com (2603:10a6:102:20d::6)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.14; Mon, 23 Oct
 2023 14:12:57 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6933.011; Mon, 23 Oct 2023
 14:12: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: 450866ba-71ae-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=SIl0KyPqk4VT9jZo+nAtHLSFilIhSXi7VMHPL2ezAU/UL6kb8IKnnBUPT/nkRP6+16ukEprD8wo7FU5duDHwiJCQLHAA1pM0AvO+AJbCbp/BwUfxskefkD6OkVjIoWG73IRM65r2Ok7+Q4tny7PNrPcA6AAcvTNCXi7rKdp+9PSyoJCLuIa/3ARQpAxr+dv1So8HL3TDgEHNHzwfENpH0DsKKEHZ2ej5ViBLqhffYbLdmHa0z5RyJB689Vu+6L9xs/aCQuYhylQFmyxv6PHIrsjvVQrvm3yr8W9gHongl+OgYf8HrxYk/eeyZ63K4oq3BIFGy+ccENl40XO0RpASZA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=UKkrasVKTla8K2noSDagJeQ4zBLt3sPyI9dO5Gg/sUI=;
 b=MmI1bFlLdGdh7udDyDr54ZHed5djgs/0Mi3RQdYBnLcZ/yfeTCI9AsQlEEpYdUx9JD22EM60M6C7ela8hKwvIzEZgnthFPIVE8Csud5QcoaDxqTdOJPPx//Et7vHThiqUJ5UBtyN5duFwK6UgThNIdVKvVE+Mek6pmswGiNYbAtQ9jTAsyY8M4+C7q3AKGUgnam+NadDjzTFv8H8AFCoKPVnPJNCY4YB+CZr16ucc2xENTpGoaBJdItSvlJjn12uluVn5bcf5t4oHPEzQLJcUWqi2n+wJm+eqdStHYOjbxGiDC4lW2lTa8unFMNuxR/odqN3rnosG8q2QmOS7zFc5A==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=UKkrasVKTla8K2noSDagJeQ4zBLt3sPyI9dO5Gg/sUI=;
 b=bVQxzDOxNnXJfuTn+tFC5533ImjXIs1exP7jM8RlTO0ATtOg74b6SqDfX/bjsVTv15Cdzi12qFhh5KqZwvrSOz66QUWeD9jF6DGe9YwfPvOjbtl+sU+nl2pQy4qVMYcWrvakTmqop/sEBZx+1t5jaA5FKh+Gv0OKQ2WRn8GcnA73rA19aQ+P6HmdJJ3h0X4g2MLOyf/+qWCR2NVNY5AVnusAbJi9cWEBW6Uzfu20JPHA7vPygeuvHTWUUMNf++s4xltStSXSRKLyUjYhMBahF1W/9wDaYWXN+1kuCW5cL6795GOjtgtLAK1YSPpOvwtY1KxewL8Vm1VpPOicqg+lsA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <a8cad110-1ad2-e64b-cb89-fbc53a8948fa@suse.com>
Date: Mon, 23 Oct 2023 16:12: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 PATCH 1/7] x86/mctelem: address violations of MISRA C:2012
 Rule 8.2
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.1697638486.git.federico.serafini@bugseng.com>
 <3e811e830f6f49af6cc5abf4fec3c8c74b72256c.1697638486.git.federico.serafini@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <3e811e830f6f49af6cc5abf4fec3c8c74b72256c.1697638486.git.federico.serafini@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0350.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:f4::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_|PAXPR04MB8830:EE_
X-MS-Office365-Filtering-Correlation-Id: 409bf574-512d-4219-c2b0-08dbd3d22842
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	WR7t04HM77bu39ZjbK7Rap3guSU/LoWW9qLaeVUOvcWV30LXSch88Z2LWL75T1YLN77FkfQj+ghqkZGV1XC/kZUqogEbF1GnT38QMG9BqOWmcv0DoZ6PYolz6hZgKOtt3eP5qcw32ywWfmZh48Ar3AdXE8vEaDHafszCDTJ5P+YXZsl8HTsyAIc7nPySjHWP3ONLVuirLhzSSBKk8U61Dl9vFo+BbQFh4sZw4lDqP3gUXhtuNoYuydgnH0RctxkP3U984Z/9DihiLJhXC+/0aHCrBM77D7LcSej8hib9Nk5bZr6k4l/YuwYRDDBKrJ822zcIsCO3Mekw6xYQR5vW5z763y1gDJRzolmyxZ3EUmWAppSRjrjMpPBX0ApUgIgx6BIcrxxgGcjIs1pvvy7pMNB0l+4Hn44ET4xyLX8wv5RX7zAtTn/oO0Y1vx8/ajJomp81cpyUcYT7Lx7zD9vY+iWgzOf+BrhZ4e3CRx8tocg+E8BGDCopGdnATpqye1m+iHSWLSFhgkLynhv5rODRWOgyO8C3MxM3BGPF0Z0gVVpM5b+6SuoUDsVSQOL2rM20c+2uF6KB6QKaK5fqUairCubtwCS8eRsdMZ1uP/IKNLUnIv720Ryrc51L7/KaFlAKjoLY7MJ2P0C6XjGWJYVLyw==
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)(346002)(376002)(396003)(230922051799003)(451199024)(64100799003)(1800799009)(186009)(4326008)(8676002)(8936002)(41300700001)(2906002)(5660300002)(53546011)(6512007)(6506007)(2616005)(558084003)(31686004)(86362001)(31696002)(36756003)(38100700002)(26005)(6486002)(478600001)(316002)(66476007)(66556008)(66946007)(54906003)(6916009)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?SHc0NjVBRXdacVFpSmNwYW12cSttdHQzVzRBb0hPZWpRRlhLenFWTlhXYVV3?=
 =?utf-8?B?VzhxNlkybno3aUNVLzdBTjNsVllWQUNqbWp3aStlaTNpK2NDV1JHRk5WeVF2?=
 =?utf-8?B?T3FERUtGMWJGeDIvam1TVFM4Vy9jUG5tSHhuU2RseWFqUE4vRFFnQlYveDls?=
 =?utf-8?B?S2ZybUo4VU5BY1dQSk1Way8vdFNheWlBSzE1aFpBZW81VFR5bWZ4ZHBOM3Rk?=
 =?utf-8?B?ejg3d05MdE82MGJ3eExScHdmRG9yWGxwb1hWaTZNZ290eDZ1WWtzaEx3WUMy?=
 =?utf-8?B?QnhzWk1kWjhpczNoK3cyZzIyM0RjR2ZXL3JLOWs4S1dLM0RIckVQSWlLbEU1?=
 =?utf-8?B?bWYzemdVYm4zMjFJOThvV1lCMFBPdDBJcG53emtiMTVGMjhkdm03NmQrd1px?=
 =?utf-8?B?M1cyMjBGOCtLY2p4cWcvajl3SkZmdUt3eTg3Y1plM2Rxa0NxT0s2c3JoS3Q5?=
 =?utf-8?B?T3h3UklWUStzb1JtZE5pNlJnWUsvTFNKdVQ0cjdjaGJrK1JTWEF2VnhVQit4?=
 =?utf-8?B?R0h1MC9Rb2FuL1lDKytKWDlNbVlDWTZ0OG41bUJJN0wzbXJHZXlxZ2lveHlW?=
 =?utf-8?B?TUUzdWVBZzJyZ1RJMWU1RERjTEJudHNKVzY0TnhZNFY5MVBoNE53SEc2T0M3?=
 =?utf-8?B?OWcydVVIWXFicWI4QmVIbHhVN041MGFjdkFhTi9OZUZZMlkyTDl1c0M2bE00?=
 =?utf-8?B?UlJqa2R6VGFIRmd0NDJjSHBFcFhCSFNXY2psZnhsaDkrdHRPOWdKRjB0ZnVC?=
 =?utf-8?B?RGJyQW0rR0FWRVpLODNKU3UyMDBJTXZvWEJEU1RsdEFEN1p5TEdnSG9CYU9t?=
 =?utf-8?B?TEFjVVNBdHR0S09teDBiN1BRaXFUZ01yVEZVLzZmNzFhSVU0eVowKzIxL1hM?=
 =?utf-8?B?MERPWUZwWlFSTGszSjI4UzIySEtuNVpCcEs2K2YwUS82NmlyRjR3NnlnTWxa?=
 =?utf-8?B?bnJaU1Irb1duQlBxaURPdnQ2YVlkNFlZeGdqMVFoZ0o2VkNhTWVNRGt2R3ZW?=
 =?utf-8?B?QnFhRmR1bmxUZExYRFlYQmNmVFJ1QWJadlZVS3lyKzFBQ2J3UGV1ajFPajJM?=
 =?utf-8?B?WHozd1hscGp6alJkWlhTREZjbFBQTG8rV2NPaklnaFI3bXBkbDlpVmgvbGFK?=
 =?utf-8?B?Vnhtbk5uRWZiSnkwOUpyWXlTbVRrL2pWRTAzUUFpcUZEOGpNWEpwYkc5aDBy?=
 =?utf-8?B?ZXAvalQ3THBNUDVhdkFQTlloZUliRGFaRFNhRjlJNFhKYXNTK3lvT0svRHBI?=
 =?utf-8?B?OGZpcnhyWHRPK1I3N3FCNDZSUGk1bUc5Vkd5U3o3K2UrQnpNWEhQb1o2RUNY?=
 =?utf-8?B?aVh0TnVud2Vva3o4NzdQUzdIbmhrOU9nMTZwTTJTWGs5WmVuZHExM29vN1FQ?=
 =?utf-8?B?U3ordzlQOTdsNGFnNHdkVVBwVldhd1BZZFhUVEVKRm1PZ2RnUUcyeWhRUEo1?=
 =?utf-8?B?SmwvOGFESUZ6eXV2QmJ2SjRlQ21NYmdETVB4bGdleFM2Mms3Zzg5MUpQT3p3?=
 =?utf-8?B?WHZTNkUrTkpCTUd6NzhGMVUwY1l1YWduVis0Zmp5bUNQd3NmQmRvUmNxZFEr?=
 =?utf-8?B?eHpET3lBQzZOK3g0REdjdC83d1JQU3dkdkFjTEEwTHVScUdtS011cm9sWnl4?=
 =?utf-8?B?clhML1ZDOEFOdlIySXRMVlVZOGJ4ZzRZK0tqWk50eFpmOHRjSTRuTm1HS0tl?=
 =?utf-8?B?bDFnSzFTREIwc0xyYitkSmFBZDVIU281dXpNcENxMTRHNHpBcHZrRVM4MC9z?=
 =?utf-8?B?MUJJRDFjWE1hUFFYZ3c2RThpSExlN3BtSTEvVkxQdWNLMXNQZXcvRTdQZW9p?=
 =?utf-8?B?M2M4czgwZUN6cVlFRlhaNlF6eVJ5M3pUZHlWNjZ2ckFiS3NqdHN4Z1V4a0Z6?=
 =?utf-8?B?b2dpbFI5OUI0WGtCVWwrZCsxdjY3Y1JHc3RmZXdudTBzSDVUTW5pTEdtL0tq?=
 =?utf-8?B?RENtelZSZ2U1R3d5ZVhobFVqS21VamRMTmsyQVNvRHdzaHJFZHVuSDVPc21D?=
 =?utf-8?B?dWlCN1laTVBCdGRERHN2eU1ha2JneUYvRy8xcGZJajdzL004MlNidWV5dHpG?=
 =?utf-8?B?ZzNWVE5wUHNGc0h3VkVaSUFOQVFuTmdJckNTcFROOXlJbHhrSFBSMmhBL1dW?=
 =?utf-8?Q?9293fcnXmQ7Dw6246CRgxOE4a?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 409bf574-512d-4219-c2b0-08dbd3d22842
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Oct 2023 14:12:57.6598
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: FK5X/FF5LDJ0aDxUTiJK+BDIVkUdwzX1bqGK9DSklelKhvUoyAWroOnEdWVhrgWums1wigWbj1pQsMwQwlTn7A==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB8830

On 18.10.2023 16:25, Federico Serafini wrote:
> Add missing parameter names. 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 Mon Oct 23 14:13:47 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 14:13:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621497.968007 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quvgg-0005Vf-PM; Mon, 23 Oct 2023 14:13:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621497.968007; Mon, 23 Oct 2023 14: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 1quvgg-0005VY-Lw; Mon, 23 Oct 2023 14:13:46 +0000
Received: by outflank-mailman (input) for mailman id 621497;
 Mon, 23 Oct 2023 14:13: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=OVTz=GF=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1quvgf-0005VN-BV
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 14:13:45 +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 5ff5b517-71ae-11ee-98d5-6d05b1d4d9a1;
 Mon, 23 Oct 2023 16:13:44 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PAXPR04MB8830.eurprd04.prod.outlook.com (2603:10a6:102:20d::6)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.14; Mon, 23 Oct
 2023 14:13:43 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6933.011; Mon, 23 Oct 2023
 14:13: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: 5ff5b517-71ae-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=YUFN/93/MQSpiBzctrhGy1i8yf/lp6am2RRf2N1MX+76nxk1R4hH/aan03boU1Gq7XG95zl9/Orz3djqJRAacTLNRl/dZMn+AzWaW4Vo12tk1Q2crJ+y5NYiNyyJdRRfGSgh8a2YeTVezvFUiaHKkkmYQBd/jsdCJ49tm7DAGVp+8HQIbU/sKOaxlasXU74xdW/1/FLkIMwBRkEf6WDIfZjN/oJvoe/AkwQBWBoYORejNVx2Bl90R49Gv8YsAlkc/Z2/DUFiz6XNBLROpwlOx5/VpVwEA54ahyce68zcRcwm5WQVTSxAYvGYqhHLvH72wjTtXQiep+eYBJsStevG+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=UKkrasVKTla8K2noSDagJeQ4zBLt3sPyI9dO5Gg/sUI=;
 b=mLfRphmd0hghvkm86tGDo+Pk0HhOXMW0JVTMlLPjPkVJ08T6HPAWe0CRwuvh69MJXSK7oV/sYPYnpoaAjYjVW1clwsOt/AXF3Xp/+J3DzUvbW9c/HhlD/UW8Lwtx48211yYNdpO147fuv6F97MUr/4N07qCN3kJ5Q4PE5hQVAeFz+JGidAvwc4j8Su4XiXyeQJQX6OrhY/s62/DGleCw5gLXCq/mLzsogqB78/whwjUS3NupuBdFua827y7xZGvRwmR85XKiivF9VLEGC/ZRKELE1wT/mdqBNAFnXK5pPkRDRvLArWZJCAV/ZKDBCpjWCJnspn7VTYmPIKn8+XCwdg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=UKkrasVKTla8K2noSDagJeQ4zBLt3sPyI9dO5Gg/sUI=;
 b=GGtcKS4qSz7xJvo83nEPxLM7Py3ACc91LHVLEAx6KHNycOK7Q5XCg8sEhcvmN1sFwkwHYlOe/XFTgUInd/tjpiwp9ox1Wdfyi0qRiZBL3XN2B7n4bxysEOxcM2/yCRLJGHuUxeeS28YnF+q+zkG/c5WLtyVSwc7nCESxXap4DeSUXgIULzJ/m2N7V+5g3Q2kOcpkKIt7rA653wbnN/yTrLnELp+RWSmXemvMEMw/XrqL/BKAdEcCmFpTFAoZbkVFoeO700EVIy5LP7/qQegt1LpLD4fPNB52YqVhgnSiMqPWxU58MS6b8PtjhTccO0P6Oe5Mjww7KI8OMvO1jVeilQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <16fabade-29b7-4882-12b7-1231330a6007@suse.com>
Date: Mon, 23 Oct 2023 16:13:41 +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 2/7] x86/mtrr: address violation of MISRA C:2012 Rule
 8.2
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.1697638486.git.federico.serafini@bugseng.com>
 <d1fbcb647c82032660ffa547a0da073c3e625b7c.1697638486.git.federico.serafini@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <d1fbcb647c82032660ffa547a0da073c3e625b7c.1697638486.git.federico.serafini@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0357.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:f4::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_|PAXPR04MB8830:EE_
X-MS-Office365-Filtering-Correlation-Id: df9e6431-5094-44ce-a2dd-08dbd3d2435f
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	BpwhucEnHaYioRKGGiyh2ZIIkg0DMxD5eHLky3HkEpJuIeYJzD9btynBtXh5yJfIJxxYhiL0Zmdz7tqn6mFJYm9pBdtosQYqC6A+xS33d4l8X+nBbHt53Bsl3vPwrgOiLE+61s4L3Y6zItxE/oKjnFd91Pk4eMrkHfu5c2q798kfpjGwp90J4YZ6B/S/NLv8pPod6CnJ+m3v52eNJY4MQdjGi5M/iEwcxVGgmNpMcuE+njQAZHsX3qDsQwlglyeVTZTaBwFyQXlXX8jG2OswuL0fyUzLXbGWFiY8VLr7Ck/SweLxQzXmB0zyWGoHAJ7Tybc+zWPXsxENBDASiC9Ez1/HlbKeriRWos0a5FbZEdi8MNjb+xO8qJFYH6i8rzMjVIte4JnH7MWwYoMUJK2vRZHH9UaQy+EsfXcBxR/o6gEpdn/IlJH7OHGpplPBDiEDFciR5LspcVxqe5SegsGQaOKekTboEHmT7p9w53PFv7YkCLbslQVHFjKx6RAFoFOV6p4Sp9BZUyXqLbnn1ysWqpD3y6Jrp1+Iz5+5Li9EVdqI43fOL0LFuIVkrUUabVgiLBc+ZQ3d8tvFwVEJ9noJ9QMHmurqCIXQdYnEs9Z9Qt/pLVT+mq2HAqKnMKmPcQ28vm9DYhXZ6/sydtrvQ3BwIg==
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)(346002)(376002)(396003)(230922051799003)(451199024)(64100799003)(1800799009)(186009)(4326008)(8676002)(8936002)(41300700001)(2906002)(5660300002)(53546011)(6512007)(6506007)(2616005)(558084003)(31686004)(86362001)(31696002)(36756003)(38100700002)(26005)(6486002)(478600001)(316002)(66476007)(66556008)(66946007)(54906003)(6916009)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?WjRXL09MeXpOYUo0MUZGRU5tZUtJVkZKNFhEdkdNck1WUVFGWlRiUkdDS3V5?=
 =?utf-8?B?bDZuMkVTQy9Pdk5QNkt6NWI1RTd3RXB4M0h2TkNmUXRuNFBsWWg0TDRMZ2hw?=
 =?utf-8?B?NkdWaUVyaElpMFBXSXNldzNITHF2UkptY3NWSmdrQUpFVFpWaU1mV0sydlNp?=
 =?utf-8?B?TTBvakhVT2FncnN6Nlp1Mm5XcjdYbFlxU0hrNWRYU2RSalZ1Qkl0aGZyU1RD?=
 =?utf-8?B?bGJkRGYzMFg3ZGFQem9ud3VmVENwU3ZraGFzc1JWdDZWWFJYWGthT05LTWtm?=
 =?utf-8?B?Zkcralp0QmQrK21yTk91TzE5Mi9Oc0pWN3hzeUFhNk0rOGxnZEpSTklFcWNM?=
 =?utf-8?B?aGdxSkxDZitFUFV1OFZoQ0xaL24rSGExdWxLTFY1M1FlKzdmZUMrN1Vua2JE?=
 =?utf-8?B?RVQ2VTFoMUpKb1VudFk1eURVcUlldVZtbUUwRHI4UGJ1KzZSL29XcXZNTTVG?=
 =?utf-8?B?c2JUL0plVHZmMUxSUEx6SnNSM3d5R2xBY0FoQUJ1ZUhzZVMrNDh4dG5JbGlS?=
 =?utf-8?B?ZERyMTkweGRpYytvd05VcUU4S0gzLzhSbU9JVWhqL0ZrZ2RVRU5ycnZabTRS?=
 =?utf-8?B?ZVdNcy8wT1B0NEVBNE9zRGFuTkVYdUQ5VldSdXlIK1pBV3RVcTRmZzZJajVJ?=
 =?utf-8?B?cnpEV2xKU1M3QkNZbnhubmZ2eDRGeUVZR2hRNkZrY29odlpxVldQTllBYzhr?=
 =?utf-8?B?RXBJVnZSRnZBc2dNMjdJYTZkcmhXUFFsSVRnZUNja2cxRk9nZksvcmc5MTRt?=
 =?utf-8?B?MXpZdk1SZ0RWanhWU1pEd1FkaUluelpreEJwNGlzOU1zQk1HNFBFZXN1bVox?=
 =?utf-8?B?N1p0ZU9NcERtYmYxUXBydmFWckdjc3RITGNNOFBLQ2drNFdJWEtKQ1ZmcW0r?=
 =?utf-8?B?VjByZkQyWUJxSitIalVQWnJhNnlHZy81RkgxYnZtbTFaTVJzbEthMUZGZzgx?=
 =?utf-8?B?L1htd29qb3VlNnIrZXUyWnh0L2tNek1yc0tUL0xuVVpaNnduZVVWZkttSzI5?=
 =?utf-8?B?QWlFeGpydW1MUHMwblpFMTE1bngzM3ZyTjlLODMxNEovWUIrMDM3Wm5ja0lO?=
 =?utf-8?B?UDRBQkp3VExQZVNqR1hOYVdaYm5EbHlyUnltVFZNckRWU0kwc01KV3h0ZDdv?=
 =?utf-8?B?Sk4wdU5qYVgwN0h5U3RjMHRpdFJRd0REbDJJZ2VvM1VhOUd2NWVRTDRDR2VC?=
 =?utf-8?B?WFIvTUtvTVh6L1ZONHR1RDZLRDNBQ1BoS0xlbFQwem83eWh4ZkNSQXptd1kx?=
 =?utf-8?B?S2o1R2NnaXFodmpZQjhRaSt1QklEc2p5TTMxTVpsejlzS08vVXdoRGo3MHFz?=
 =?utf-8?B?RStwSjMrYXdLV1kvUDFkMnVUR3JvaWl0RElNU2s2U3h4MFpydmRIWHZMWndS?=
 =?utf-8?B?bWNLK204TERTdktYS2xxS3gvUzllcTF2Y2pZZ3FrdmpwYjlzZWdUUHJBcnFq?=
 =?utf-8?B?dTJ3b0RkYXZKc3dBMXVSaHRrK2s5cGt0bGRLQjg5Wm1VOXFMSFVTTExzczBO?=
 =?utf-8?B?ZzBWUEdoY3JzRmhDc0xaOFhRU0pwVlV6bFFSeXlsRVJma29Fc2E5bE5WZmpj?=
 =?utf-8?B?c04wWFdsWGJNTVdUKzZtenl5bEVHdUxOYUdvbFFkQUJ3UGF0TlZyTDc2d0dL?=
 =?utf-8?B?cm43Q3lmTGZMN3lEYmNhbkg1Zmg1Z3IvK3lJU2puR2dsVVJPZnV1aldvdHcx?=
 =?utf-8?B?U0g2dnJNYXVOUlRGak5tTHVZbEE0c0FCU1g0L3lENkhqdEUxV0pTRFdtZWMr?=
 =?utf-8?B?TzhNMS9vdTF1VzFYcmppcmpEY0RoWVpBbi9SOWI3VEJBVElmZk5ub2t1SW8v?=
 =?utf-8?B?bVBBbGJJT3diWmVwaUVXaHlQNU1RdUMzNkF5Y2hjQTNiUkQrVjlPbnFEbCtS?=
 =?utf-8?B?WmdtT2x3NXRCOXpUOHJiR0pqd2RER040SHNPakcrVjIxcXBzbnU2RGtqbjRZ?=
 =?utf-8?B?bjhDRzMxdDBuSVoyekRKN0FYdm0vV0syS1UvUEdwamFSNGkxNEpGVDZRbytW?=
 =?utf-8?B?TlkwbTBwNWsrdXBKaWp6M2dIbFFFUCt4THJ2UEMzSjVxQUZWeTNScHlxUitS?=
 =?utf-8?B?M1NkdW5kK1RHcmtmQ2hML1RndjYyN2FDdXlpN0FuYzI4N1dON1UwU2RwcjBK?=
 =?utf-8?Q?t5cCanGl6BILpB2RLkm38i/Q2?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: df9e6431-5094-44ce-a2dd-08dbd3d2435f
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Oct 2023 14:13:43.1467
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: SKCXIdxZfheKkSUw4Ly3YvQsjcQdgW0ePVAmA44Cohrky3e3nHfKHJKCvIl1CjEgDxWxfV/xiVQdSWMTTtmVyQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB8830

On 18.10.2023 16:25, Federico Serafini wrote:
> Add missing parameter names. 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 Mon Oct 23 14:14:42 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 14:14:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621499.968017 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quvhY-0006WO-1k; Mon, 23 Oct 2023 14:14:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621499.968017; Mon, 23 Oct 2023 14:14: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 1quvhX-0006WH-Ut; Mon, 23 Oct 2023 14:14:39 +0000
Received: by outflank-mailman (input) for mailman id 621499;
 Mon, 23 Oct 2023 14:14: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=OVTz=GF=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1quvhX-0006W5-84
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 14:14:39 +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 7f6facb5-71ae-11ee-9b0e-b553b5be7939;
 Mon, 23 Oct 2023 16:14:37 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PAXPR04MB8830.eurprd04.prod.outlook.com (2603:10a6:102:20d::6)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.14; Mon, 23 Oct
 2023 14:14:35 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6933.011; Mon, 23 Oct 2023
 14: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: 7f6facb5-71ae-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=aVIhtCHb5YHlSAiFyMnqVb5ow6UHTxc324ECiQ0ROcUe9p7tvKhZfmNIhWl9eOxgYCPXLs04y7l5xtFnZ3rT7VwERQRz6M0FZldzy0JLinhg1mNnZy87yv92ClMFym5g/1KSq9uUDxX6zMQoJ5ls0yTkW7RBjYvcCtFEBIAG2jLanlf0VGZ5TH2881b0TUSUBDGuY1tk8FpDEDJBF8T86AWkgAderPxKsDhjeCJBBS9scuXFIuZ4ralZMAAdlUIl7NnllSUVQe9lNqI9tx6mRNUmdyOmlJ2NTbASRhx0sjkHSjKmmpvQIgOVYJ6heQhL8QMYOt5m9BNQW3NoyKsqZg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=UKkrasVKTla8K2noSDagJeQ4zBLt3sPyI9dO5Gg/sUI=;
 b=OMgj9r4+r3zN//6tD0E0HLCSDfaRAstpV4bwY2hJEI5Ib/YANm+vK7JAHuPQxuYQidLFj1M1FaRLWWOaUP3jdQ+5NpbtUOZT2puXTKLp21FRePuThDSER5e5Y1ggfaOu5tLMzPeYmxHTG5mg/vgqyhhXifuOmfQeTW4qNA3Ri+6YukZaaNQXz+0+xHcjJ4of75KIyWbZgv8Ux9m76Szk/SJz2UWObTRyjgBPKjbpxaP81EPrRL0NFeNRbTUEtYrUKdeVektNwqpNob4KB5XAFVZ69yww+Jq12jDg1jpwcoKSZmaYccK48rC0BVS9ydag/4iWJIKOE1+ozA2PhVadxA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=UKkrasVKTla8K2noSDagJeQ4zBLt3sPyI9dO5Gg/sUI=;
 b=QIcg+ngxgDkzoLFkDUH1VrsDaB6QJCjk8IDD0LJJXO41QdD6RVHgtunVDyC3e0Moe8NeTIKyuIrRbEowts0NWsmLP7NTYb4/pAQSpmZiMUmbLPGqkqmrSSAkDFXT3ZJTQMfe1E3kbTbLjXc+utGP7xsRgLG8PRoY1Yv4cLCuygRVMHYmzgL3V41qQ60QG9cklh4xkrXmeF/9Gvr8GnUujX1UlL7QltegTBpXO7r6zFMm9ayvrvb966KNkJbO91TgjlDx49b4NAASbu3TnI5ma6RIs5d5AGQnXpx81VeDeysUBe8znMdjGA/C5Ii0EdxeHENb4t+Tq6hDLoF3UU6u0w==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <2e618032-7330-27ac-5f84-a9dcf7210876@suse.com>
Date: Mon, 23 Oct 2023 16:14: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 3/7] x86/domain: address violations of MISRA C:2012
 Rule 8.2
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.1697638486.git.federico.serafini@bugseng.com>
 <95f9938db062ac2ef10e10790fd12a987eaa90b1.1697638486.git.federico.serafini@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <95f9938db062ac2ef10e10790fd12a987eaa90b1.1697638486.git.federico.serafini@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
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_|PAXPR04MB8830:EE_
X-MS-Office365-Filtering-Correlation-Id: 0b0cde24-36e1-4434-8bc7-08dbd3d262c0
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	626wHGm0BeBVOrx1MGMP8Sg6+DNhnxD/1kxTZPt60jcqvslm7SZF0gCj9/3yfsCAYamanaphBJMAffNgdmzPH2yIxFhJ1iGl5+RruKrItk8OZfb+Q4ZfXjtuJb3NDaWhruxbhEiAzIHKkALFpge06Sk2Q+WQljjDtJWJ2si5MATE5EcHC3s6gIQ5DKGRDpbAtJft6TXCy/2+YlOkA0akQUdg8VsM45Rj5X8hi49MjDI2Zo3q1Kul3gAFxeRrbElK3XxXkOGgl7nOEyZlUZQVQS3netLinrbyZ1d6gygG8MwQS5vIH1cKYmQSjq5NUDogA5tIUvN2XP1/1OTFPA3+iPUJ4lhVQ2lbIscOv6vugCU/3DJtJqbJkZKQQLgfd6ac1rEJwDVj5nFEz1C0fdrYnNYVs5C1QtihQYhQ864Qxj8lUddqx8MvUsr8jHy7LlXhF7OxABUzhT1/pyKjlxZdQiS2ap283quJp3NYx3LMBqvwVkOyVttW0EE3xzePA5XrqYIgft9fTsVtjjldldCrWTwVxAMh6V8VHb3Eq5kOigWb3nxxOAfIizcuV8LRBV74tKOWlHqxn7gKfujOvKLSVwdcE0qQMQ3U2XxS0sYDuyafUBwcrZbElBrUuTPXGHHQUaq4e6yAKasb6MRXdDuvqw==
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)(346002)(376002)(396003)(230922051799003)(451199024)(64100799003)(1800799009)(186009)(4326008)(8676002)(8936002)(41300700001)(2906002)(5660300002)(53546011)(6512007)(6506007)(2616005)(558084003)(31686004)(86362001)(31696002)(36756003)(38100700002)(26005)(6486002)(478600001)(316002)(66476007)(66556008)(66946007)(54906003)(6916009)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?ZEpGdkpyT0g0NDNDNmdac2V6TGYvYU9qRGRCZkxVSlhJNlV5Tkl2M0hMVktR?=
 =?utf-8?B?dUxBSitJSy80YXpGSU4rTW0xY3BUY0FyOFp4bmx3cThlZTFZOGJ5dTJFbXNT?=
 =?utf-8?B?cFJDRmtYYW56ZHpaR2pGa2VXTnRzK1ZsSy80LzNGY1VoZ1pyQ3VTVG1kRnJF?=
 =?utf-8?B?Y2szRjBpaWF6U1ZNN3ZDeGsrUlVud3F6Um5jUWJMbXhKRHc4eDdmb0l3Ny9V?=
 =?utf-8?B?VWlyMXBLN3BGSGNYMndYMFdxelc3RzE4TkhTYXZhNkZ0eHhkTW5oUWYyY3No?=
 =?utf-8?B?MjdtaEFNb0xaalJESDR5TVNUbHFIZ3kxa1g5Q2RRd2NSYi9MRGlKOUs5NjJs?=
 =?utf-8?B?S3JYZ0VRZ2EvNUxFTXMzNVE5MkRmSTVEUWVDRXlENGdkUHJZcCtRZnU1M1R1?=
 =?utf-8?B?cm85SlpXbmJqR3NJeE1IcEI4TG1VRWtSV3M2blVaNVh2NDV5RVN3WWFvS0N0?=
 =?utf-8?B?eFhWWGUrM0Z2QXlFZDZXdzNPTnRiN3UrNjZTNEd4RHFZWnVzMlIwQXhVUHFG?=
 =?utf-8?B?dmErMnFwMExjZHFlb0xDeTBxUWVTVHh4NTZTWUhFS0p5cHJEVDROc05PUldt?=
 =?utf-8?B?TmN2ZWl1WDBndVBkMk4rY1ErNmNmR0E0Q1RNaFVvUzFnZ1g4dWNsd1hPc3Vv?=
 =?utf-8?B?NE93NHZ1NDQ2MG5qK04rOFNuSUsxUjI3UnFDbWpVOHExT1NZNmlLQUNlSlQ3?=
 =?utf-8?B?bzlqdlc1clExa3lTc2RFMmp3eHg1a203VHpzOVhZRVd6djBiSDdYSnZlUlpI?=
 =?utf-8?B?T29oek5ZaVR2aFRRa1J1aTFVQm92c0o5VnZ2VHRVdUgyNWpFazVOSU52VjUr?=
 =?utf-8?B?MURURFZCL0tIUEM4TWV5cjBuM2dheG5DVWswR1hsUC93OSs2bUVNUllmekJl?=
 =?utf-8?B?QWx0MEJGeGdGOXlvTGZrdkdNOWwrQ0EvbzU0NktkTmt4b01VLzZSeW5OSU0x?=
 =?utf-8?B?a1o5TUF1elVVZmljbUVKT0ovOENWdVByNEl5eGFFLzhKNDdSSjA4M094cGY1?=
 =?utf-8?B?Nmxva2xpSXRZaVBGRktoWDE4S0haeXRDTGZBcGJPTmZ0M2lsWVg0eU1ieHRx?=
 =?utf-8?B?ZzI5UDl2YmVaclNoSUxvd2RFQ1dNenpVeTdORlVnbDV2Y0pKN1lTblJxSXJ1?=
 =?utf-8?B?Ti93bkFnVklPTWZydjQwNnl1aGdudnU5UUJYbHhxN1gzdjdITXBiYTd1STZB?=
 =?utf-8?B?MGlnWUltY3hnTmE5SGtrMW5wL2UzWFd4U2ZjemczYm1LNi9mNGRlaDlURzhG?=
 =?utf-8?B?Z3V3VjdhcFpQTldFM3N3K2dwelE2TjR2Y0gxVmFvSEhlL2FseVBGL09Wb0ZJ?=
 =?utf-8?B?bS8rNVRYd1FpM2xsTDhDZE9iTnJjYkd2R0VuR0ZBMHJNYWo2NkwrcENVeGhm?=
 =?utf-8?B?Kzh0YXJDT0VQMWh0NUVWZWlIVm5LVzdOcHVUYlJnZmQyOGNoVURHQnhZNTNu?=
 =?utf-8?B?Y3QyTkJkM0JNdW50T3lVQ3VMbWlmVnRUd1BEanl6WHBaOXduNmg3U2ovQ1h3?=
 =?utf-8?B?aTdPYVNFV3doN05IWFFBNTlKUk1MOVZtb0VnSno4cDdlVE5WYUlqZCszTi9t?=
 =?utf-8?B?VXI5aFU3S3JxbkNMZzJtSUVMYWxMM25Id29qdVFhUGdqZmdIeEdydGpXcnYv?=
 =?utf-8?B?L0JhM3BsaU9VVW82UmI3eGowYU5rTkRlOHExUXVWazZ6ejN3V2NxekhiVEdq?=
 =?utf-8?B?R202cmk0bU9iVThTVXhDVHVqLzVjbmkzOWYwanl0T0hadG9iMGJkV1JoWkor?=
 =?utf-8?B?dVNZMWFxRTJiK05lcG94TXp4WXJjK3FUbG1oclJnbUtaL1ZmLzFpaTJod29B?=
 =?utf-8?B?ZWZKbHFQN2h2WXdRTDNFWnloUG4rbFkwRHUzK2tNeG14dXBTZmxZWWkzRTM2?=
 =?utf-8?B?akhrUC9nZFlxckVaU1djUmcrS2tSSit0YnA5L083dVJsUUJQTjBtS0VhK0FO?=
 =?utf-8?B?N0N6V2Vuc0FMMkVFTU9aUFJBOHZETUJJRFdVaHZhK1dvS1loRmdmNmt1bDY3?=
 =?utf-8?B?WGk3bVpKaE9HV241Y0ZYZnpiK3Fac2xpYkk2ekNZUVJ4RW1OblZ5enAxY3Fr?=
 =?utf-8?B?d2MxbHNpQmdUTVUzS2tOV3pGUFFNcmsrTHA1VncxVURGWkVsaWdSYk5pM3dl?=
 =?utf-8?Q?MEltN9MyQCXH2+qzY0jNQLlY4?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 0b0cde24-36e1-4434-8bc7-08dbd3d262c0
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Oct 2023 14:14:35.8340
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: u8YFKfWe13vI6qOVc9GQrc9u/6efVqzh29fL99FVgAnDtUXgw9YX2Dv05Sjqohz/eCdQcFkHpSTdjNIhGGYQhQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB8830

On 18.10.2023 16:25, Federico Serafini wrote:
> Add missing parameter names. 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 Mon Oct 23 14:15:18 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 14:15:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621501.968027 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quvi7-00078T-9n; Mon, 23 Oct 2023 14:15:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621501.968027; Mon, 23 Oct 2023 14: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 1quvi7-00078M-6Q; Mon, 23 Oct 2023 14:15:15 +0000
Received: by outflank-mailman (input) for mailman id 621501;
 Mon, 23 Oct 2023 14:15: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=OVTz=GF=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1quvi6-0006wI-8j
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 14:15:14 +0000
Received: from EUR02-AM0-obe.outbound.protection.outlook.com
 (mail-am0eur02on20622.outbound.protection.outlook.com
 [2a01:111:f400:fe13::622])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 951fb7c2-71ae-11ee-98d5-6d05b1d4d9a1;
 Mon, 23 Oct 2023 16:15:13 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PAXPR04MB8830.eurprd04.prod.outlook.com (2603:10a6:102:20d::6)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.14; Mon, 23 Oct
 2023 14:15:12 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6933.011; Mon, 23 Oct 2023
 14:15: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: 951fb7c2-71ae-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=RPJNluHGt+Alvn/CkKHonS/DKNJ6DJprH+IuKMXCKu2koYCy7ThnVCw6goDFyF7CA+WjXhBHpEcff4PUA6WaBSUrdo7iHvEf1OGp3xIgCInztDJ+WPzmU8tXKIxEb2RBoej0tAXoQiIX3WM8njksHJRbiYzA0TOpRkZc7ekT/dQQf0NYp+28EWmaiKn1aIgj29T/L65xC1PUGboUCsMvHniAfSSvGvpFkNZkIl4giyWIhWYa/kXr6sq7zijU19ugCYUqJPmtbZdG0EOX9ySiC2nEc052S7OtlIb2DhNboZHDYunptSMpt5nsZ3b/k9dfUYy1T3Xe4sLdZUphdkTjYA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=UKkrasVKTla8K2noSDagJeQ4zBLt3sPyI9dO5Gg/sUI=;
 b=PeavTUKXPzx1ZXwWQNl1DOs8CTTz3KApoICTCkqMkyqCL7hfKwklZ1kI16HqyRSlIiWVJBXZYlNxz/IYpsqa+0bsCFWzHLJy7Qo5t7c6ep1halxsyOzdDPAwvOQhrpV9fKLS3UhNOE6D2YsP2MPVbWNfUxt+MFvFWQDgrTyHlJzhanC9b0+RlYOYDES84lL0M7iQjxY8fX01LUZZkobjvi/qNIQTyTW7MPYKM2PeXmBnNV/eq2ZqHhy6hL7gSV/7+tdt1J7SwGLt7YZvLbTjDSnuDC7kYu1EJ6byF1WpLSxC5f1Ay+iqRS5Cmd1KjymUFErxRnKps1rpFONAJ71MPA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=UKkrasVKTla8K2noSDagJeQ4zBLt3sPyI9dO5Gg/sUI=;
 b=qnqBEoCsEsv8+azb45vcuhWDlymh4uCFWSe268pVwg0591gOtimPJWGoYaUrIZNe/189tBE/Uxyb/wqgKejsMJyekI80JiVMaHegmxYbTTjGqumjiQ+X9EDGISk5ne9LaGyNPY/fX+Az7mW5BmgUN/D/G1CPimoL7ujWh8PXagXg2ewPFpKpg6/YPbTEwnY0PL7R9xTVNCNP9scxvn4ESywzqka9WEEqfH19Js+JEI0XJnGeASdU1YIrLaTg5JTzQMelkD1BfocKd/rnQrUvGAyBXY7KsYe7ze4CYs5xUlg9gzv/0qtdkua9kUOk3Uyh5rTUG3hVD4Pr5U9RiS+CIQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <7bafc6ab-3826-946b-e5f0-894930278309@suse.com>
Date: Mon, 23 Oct 2023 16:15:10 +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 4/7] x86/cpuidle: address violations of MISRA C:2012
 Rule 8.2
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.1697638486.git.federico.serafini@bugseng.com>
 <2ce963d3d7c8d14f2ddc80600454ea990599e0e6.1697638486.git.federico.serafini@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <2ce963d3d7c8d14f2ddc80600454ea990599e0e6.1697638486.git.federico.serafini@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR3P281CA0134.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:94::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_|PAXPR04MB8830:EE_
X-MS-Office365-Filtering-Correlation-Id: e0f9f5a5-ed03-4676-2e0c-08dbd3d27868
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	MHe+A+IbetvDdcv6slKffmSKdAwIp8rO2xOjW0pQbedEN89jofNC7PXn1nozDpNf45FV8b5obs/3lN5RAPEG+1CTMYBN9x2TKCF91WBYs4rbuU1xVp1/Ig8cXzOWEmXex88MQSTrudznyAbS9eIgII23Pyp/NnTyZctirHKpBTIvlOMQRwL+Dgfo90kg9mSDtu0F4H1Y+7+d7k0p9kXMMTShLITsgM4n3V0YyWuD25v9HqVg9t4yrX0F8wVTENIVnh2FY7GoxzzeEeL78H156Un44nUTsFNZ3V3JfZakAgK58AJK4V4oFZhIgTTLN+kU6CXJOkSPr1hN9+VkN0YC1WJ85x1kBBqhrI9G3TtYq+bg6QiSs25q+YRAu9eD4CPgApPVER0sY7/2Zqu+HtcRvuSTqS/QDaoklWsTdRW1l5D3riTEv7mDjR3e2LlnnoZ+ETmZXk3rzwu4oZdZTqsFetjwK3un9Prjfx7RyNWI71hdq2fdRQd8wIW/skxlun9LPoItMzD2hHdt/lYdNJdwanZ+V9gsYmjpqxKqU0jbYM08OsdPKwtstNoX/dY9paPgrX0gCKn/43iEq13EGTGvhoN2SvX9UTByL1gF7djV5F3KWTi1IIMKYa1ajabnzE0TScohYH+XjHs2tQ6KN4ZawA==
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)(346002)(376002)(396003)(230922051799003)(451199024)(64100799003)(1800799009)(186009)(4326008)(8676002)(8936002)(41300700001)(2906002)(5660300002)(53546011)(6512007)(6506007)(2616005)(558084003)(31686004)(86362001)(31696002)(36756003)(38100700002)(26005)(6486002)(478600001)(316002)(66476007)(66556008)(66946007)(54906003)(6916009)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?K283SEpxSWRKbmptVCtHeVc0b1BoOTF1YmoranV3NVliNFJVck96ODhYdFJi?=
 =?utf-8?B?Y1JlRGVUTERUbUJ6d1YrZ0RWWkhEUG9jaG51aGg2d0VLZDVxUElkMnhZNWZR?=
 =?utf-8?B?dFRRZTNrZGZEWEhEU2JQYmFwczV5clJYUWl3Sm1pTERSTlo2cWI4NStvSDhO?=
 =?utf-8?B?K3dZZ2gwdXBVUHFqSnQ3aEF1TlJFVFArbzZuTjExd3ZjS0hWd3YvQzhXWmpI?=
 =?utf-8?B?Q1VOa1RyS3V0cnk0WG51SDNvVzhWeVluZHNxSXVqakp0Zm9jK0tBSG0zVmkw?=
 =?utf-8?B?TmU2cGM1MDNwK3VlR05yVHpMZXpKb1RrWnVpRjl2ckxkaFh3TGxtUUo0WkJz?=
 =?utf-8?B?N0FpOFhMaS9aTURETCtFZWhWWDMwZDFJYmVhYTh6Z3RyaGdHTmlSTndHN2Ry?=
 =?utf-8?B?Uk1ZZlVoQm1URjlaQy80UmZCNUg3WHZTcVU0MVlGTUJOMjBUSCtCQS9sN3lQ?=
 =?utf-8?B?Tm9Gc2JLNndoYnIzMVY3Z3g3MWxCWkFvUy9TUTQrQVArOVg0eEhxUE83Yk9z?=
 =?utf-8?B?R1BEZ0tXMlFWQm1hRG0vT2c2SHpNZkoyZjZZRkduUDlOMEdUNGdhT1lpM1Jj?=
 =?utf-8?B?WEtkNXJVZng2Vm9iSG1JNTJXNGQzK1lhTzlBclR2am8yd01QTU85TnRwRjg2?=
 =?utf-8?B?UnAxOUd6bGJUbEhISFVxaS9aYzNJNDFJbDVSRm9MQytzS1hxMHl0N1QwKzVN?=
 =?utf-8?B?bkN5OWJDQUc5dGNqU2FFTUIzbFlFcHd5Wmhud05IOW43YUlRZ3VFRjhUak9t?=
 =?utf-8?B?MDRSQWpyYXZROGZlYTFvQmNxOFM5R3dXbDNRdmVlemkwMzlWd2JrS0l6akRM?=
 =?utf-8?B?a05DYXNidWNZbWwvRWNWeEZXTUtBaXlMdmVMZ2ZJYXBzRlM1TlVoWUFsd2FW?=
 =?utf-8?B?RFYwQjBJOE0yWmZNTmdRcnZxQmpRWXBRRHhwRHFlREYyR3E4Y2JLQ05vakMy?=
 =?utf-8?B?RjYwNjg5THdVRGNERzB1cXAzdXVnTWJpb3pVQU5UM2pJR3BmQm9WMm1lT3JZ?=
 =?utf-8?B?bk9OVzJvSGV0ZDltV3pkREFkLzVZbUl2bGNJZDRISUx6UVl3UGNER0h6dmlj?=
 =?utf-8?B?U3FTYTFYaGlNODFhVlRweFQxc0lHc0JZRUY4Rm9zRlBSV2Q5elMreFJKYnkr?=
 =?utf-8?B?MlZ3T1MyeUxPS1FBZ2hIeVhRMUFURVczbUNCMzRvdnM4MmtOWHZkb3h4SUdQ?=
 =?utf-8?B?ZE5seGpaRE40SWVwdXVVQVNNdEUvVGtzbGZuSU5GOVZKV3VaVTRraUhsSGhj?=
 =?utf-8?B?U1cvRS9zRjFOcWtoY2p3ZmNWTTY1K2Jid2R0ZVpES3laKzlQWjk2NktUR1Zz?=
 =?utf-8?B?cE9xSTVGTHJSV2VwUVhTb3lXN1ppTFBYTW85Z0lobS9HYUpiMUppY2o0SkY3?=
 =?utf-8?B?K3NnQW9NWStvNlhrL256S3hQM2dScExVcFF3aCtvc1RYZmxENkRZeEw3cytD?=
 =?utf-8?B?bWhhaHhMaXhPRXlDSHd5Q245cDZmeTVSbVozNVEvcm9NMjJZaXdqZ3c4RDJO?=
 =?utf-8?B?bDJzWlB3ajFQUGMrMVliMTRuUXhOcFNZOGxsbXdzdFM3M1krWlIvT2lnbHkw?=
 =?utf-8?B?eE5Cb3JvalR1eVROS2xDb2dTYXUxdm13dlE0QTVnay9tTEQydHVVRE9sWUlB?=
 =?utf-8?B?NnB5UDhTTmdtTTIyR09QdW5oYWttd0tNc29ZYzk4OXFJT21SMlJUM0tHUHJX?=
 =?utf-8?B?MHdVck9XOFZHTTk3dm9MU2NIM0k1WXBVOGxWSzRyRnU4SklaWkxJWmhPZWtR?=
 =?utf-8?B?UDlqclZEMkloVTJISzdLT0JyK0ZyUEk1TkVUQVZjNlgyS3pGU2FxZVlzci9l?=
 =?utf-8?B?QXc0QmVYZEZkOWt2MXQyUHFtR3hXWk9JY25GTVBnZUplMmVvRjVNTW1qQUJY?=
 =?utf-8?B?Sm81bUdBYUFPTkxadU5JS2wyVnVTZmNhT0pDTDMvSyt5bWVJWDUxU1gvbHFJ?=
 =?utf-8?B?dFc2MkEwUHA0N3Y2dVhLREZtRGJFVEVOOVA3UVh6M1RLNWxrVWdrbHZlTGNy?=
 =?utf-8?B?Si9pZjJUR25NbG8rTjZEUVNkanhaVzlTbUZ1NUJ5WVBLK1IwRE9ETlczdm9h?=
 =?utf-8?B?RGxEOERFKytxL1dHK0tNWm1pbGxtUmRLN09lcWZxb3IwZHFZTWljWlZ6VGxw?=
 =?utf-8?Q?Tbhnav5axF981/a8Nt5R97v+r?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: e0f9f5a5-ed03-4676-2e0c-08dbd3d27868
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Oct 2023 14:15:12.1091
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: fRaiUru3R1JY2+QXQDyfFQC7vFJp9ONi6fOTfQNZ7x0tOtSSTumVkCBgpoRLR4vrPjMa2md0q22HgoCNjVCZ/g==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB8830

On 18.10.2023 16:25, Federico Serafini wrote:
> Add missing parameter names. 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 Mon Oct 23 14:16:45 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 14:16:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621505.968037 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quvjX-0008Mq-KB; Mon, 23 Oct 2023 14:16:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621505.968037; Mon, 23 Oct 2023 14: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 1quvjX-0008Mj-Gn; Mon, 23 Oct 2023 14:16:43 +0000
Received: by outflank-mailman (input) for mailman id 621505;
 Mon, 23 Oct 2023 14:16: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=OVTz=GF=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1quvjW-0008MZ-4b
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 14:16:42 +0000
Received: from EUR03-DBA-obe.outbound.protection.outlook.com
 (mail-dbaeur03on20606.outbound.protection.outlook.com
 [2a01:111:f400:fe1a::606])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id c8b06691-71ae-11ee-9b0e-b553b5be7939;
 Mon, 23 Oct 2023 16:16:40 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DB8PR04MB7049.eurprd04.prod.outlook.com (2603:10a6:10:fc::23) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.11; Mon, 23 Oct
 2023 14:16:38 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6933.011; Mon, 23 Oct 2023
 14:16: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: c8b06691-71ae-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=PbIEQ8+O7YJf6F5klUbanl75kraXfM2oHe9Nl4kz7XvLGloZWO7H0l0PCj4SKasiZQhyDjru+YbEtdxi7J2Fwaz+3GTWrn/gCIHjOpzJO50XrZbTUwsEMKdk6NsZFKIx7JOUEz+v5XKKGGg5VJnD5GIezzICXDBnyLyroKWXqGdSSEZype5Gdkb+QWdD7YtTfCZQklpFSo3DtZ9/0Mi1ssLcvMOT7c3SnNJoOQfdJp0EMBVqxc/WrPHF4J7Rn1Ax0EAmJDSvOCbfkJBYpnGZJnyzl6uQOyfY+DAFVaFTyfyCYeJCG7MtDqo068XgvhjM946wu1ktPhTXXwIHcnXmcA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=7w+nHvHM7guzDttZ/Og/8NVY9jNe0OnmBbU6cf5UEw4=;
 b=Bkv2aQEbyyVa1iFiLPSP5quqInlyIcxzTfUUwIuGT0bSYXpS+nEPYyVc97vf2sixp7eQ9oke9UWPHG6E1O4WReFnHQao7EgC5Ie6kgMJZ72s9Kv7J4SLJmStKi41BZpiuoQcYoD7jaGHQ92y9fEHJX6cytyGUCtG9IpRb/TEwHG+DA6nON4u9cWLwiYJi4t5Xe3tLIn8y8z04R6ih921ZW+eIwsGA7aoxwZOSvkZjZFjo8pKQZBG4wjoilnfajL+IZyL/p882ZOTk1Qf0wyxK6zEGrv59H5v4R4fRdDd3skCKadkfo/jf73XZ8GlqndqKzHtFOUAl7rprtOYkcQ4jg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=7w+nHvHM7guzDttZ/Og/8NVY9jNe0OnmBbU6cf5UEw4=;
 b=e10jHUc2ktcs6jYAClr3eGcJvXnbJMdzfPov93GiA5lpTnTG70pR9Ji6QrlLUPoBKj+5drzhOQ25uPlOp5EF1J+wNpL7CC0v0o05G7NJsVg3GUCJJq4gO+MwcOgurb5aj1B9yFf4+XEFsPpUGQlujJfiHDUXKGSXSoKZgnwcIYuwwVY9ms7zXDH0tWbVlMJsiWsGT5GHjXuPKaV+1gz+DIYZAME45B2OK7elieOJ7y2iyFKYtChIMqFWDfkQZQKuAx52TsDLJ8hoa8vIPYlg/pB9yupqRtoCuyA3jggzqJ7kcRj2M5ZnQCKFN6lrUdy4/9nqgWeSOPXtt+KUwFA90w==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <d5340fe6-f824-9afb-21c4-2ae46250fe27@suse.com>
Date: Mon, 23 Oct 2023 16:16:37 +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 5/7] x86/mcaction: address a violation of MISRA C:2012
 Rule 8.2
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.1697638486.git.federico.serafini@bugseng.com>
 <80b8eee23c265708dab569b513da9fbfc81febb9.1697638486.git.federico.serafini@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <80b8eee23c265708dab569b513da9fbfc81febb9.1697638486.git.federico.serafini@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0267.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:e8::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_|DB8PR04MB7049:EE_
X-MS-Office365-Filtering-Correlation-Id: 7d8c0776-31eb-4494-af17-08dbd3d2abe9
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	TeVT14gkj7fMN8rJ2DEes6iTy/FifHMGFXHXNSsliyfSIPX860tG6Ns9O2FubdcEHWkYvxKKeKeLlDXAyjyHshm/URU5lDNLCZh5Cy/0E2tH1BtavaUNChJ5jjrUoxQczrKwizM3v6IYg0kKkBhUNFldZp9KMtmKhbhn1DeRF2OD2Rz4WMMLIIq4OHXB3kb00znz0YyS10lsULlrIuMXpjYi36tb95Eth+EcM8UN87ihuirma3Bswaprs/485waaXu5B6wC2EhdQx3gLyqN3uGE0AVqzVj7E+u5U5WTKnWRI9/6oN15w4d8k/YZHRzrXaz78ZGR67hcb9qvTVcrJg6zvZM+3Q9Sho0Yv/cR7I8I2npDXmuPenPG564fFJeAjZmKA/kbxY1k7hzfoKXg+7XnOTDeOxvChZZ3aZdmG4gtxyeb32gB830xFAGCYm92wte78UStEhd1itFuKBW3A9bSq/czgSoX6lkPIdCY43TF1gzhCK3hsXqTgA8wABEUikd0gCSPwcgZ+hT4KZspG+2O2+JZMRLL0gIM/wAeU+6VUcjcQxBgeZ+uBIHENvSbBi0BAndKGOZJAOU8r1GkwKgWHsjK3iq+q2Bx6/Pjgzsm1bgrHJdQw6oFPf+Qq0LQEwbPhARRaMiRj/qgzMJgqrA==
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)(230922051799003)(186009)(451199024)(64100799003)(1800799009)(26005)(31686004)(41300700001)(38100700002)(2906002)(4744005)(86362001)(31696002)(5660300002)(36756003)(8676002)(8936002)(4326008)(2616005)(6506007)(478600001)(54906003)(66476007)(66556008)(316002)(6916009)(66946007)(6486002)(6512007)(53546011)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?OVowdjVTbHo3azlXQ25BOFRWMmRkUVlsdTllcG9KK3pVQ0lmNFRCLzlQclVo?=
 =?utf-8?B?dStpKzJtdjBUaVk1RXVNVEVjWXhEWVE1ajN2ZGJHdGtrd2orV3l5YUZhdGJJ?=
 =?utf-8?B?Y2FDbWp1aWdDenY5L0thNUJiZElHbWR2RVJMV1cvcjQ0M2lsbVMwSVhWcHpy?=
 =?utf-8?B?ZWJlbkFRSFlENXhJRTdoNGRJZHRZREQ0eTZ1dy9HNDRFOWJJeHlqYlJtYzhD?=
 =?utf-8?B?Z2c4cTg3MXpVYUozbHQxcXg4UWJMbzhIUG5IeEU2L01PaGlGWEVUYkZYRzk2?=
 =?utf-8?B?TDhLZ2FQL2hmUEthc1ZIM3djOXU3OXVSRGtmdzY0NTN4cmdHcEY3aXl0WTJs?=
 =?utf-8?B?OXFaZitaUjFKREl5MElxaXhOdGhnM005ajBDNUlBS3ZGQVNZWXJQVVB5bGc0?=
 =?utf-8?B?a1BXc3ZtTkZDSTRpVjgySSthckxRcWxBVXRtU2pPTzltZDJ6Y1FPR0NWZ1JW?=
 =?utf-8?B?Y1pWaUI0OFNXbkNmeUtSQ1FaV1FvVi9LcjA0TE9xUmZLR2ovSjBOMFd5UGhO?=
 =?utf-8?B?Ni81dENMc1VhdW5nMFMwdk9pdkZDdlpEMWlPL2pxdXppcEI4MEgzSkpxTWo3?=
 =?utf-8?B?QXhieHBnSFcrNHpvM1FMSDRCTHJOTzB0RFF3bjRuVFo5V0JqQm5CTTIrU3p4?=
 =?utf-8?B?ZzJqQTRqYlV2eU05TUFLSmNoWTk3T0FBR3VqYUthOUtxQTRDMklVWkdyMnI4?=
 =?utf-8?B?SUhmMi95SFNHd2hIVzJKakJXeWUrZzZmb2o3Mjh5a0lXQnZtZDVEcVZlQUVI?=
 =?utf-8?B?em5lN3pwMEtyQnUvODJleW9MQzZOREg5WTJscDBqYU1IbTF6RnI5MDFGcVc4?=
 =?utf-8?B?TUxPTEZLUG5tYk1ZWmRGMWJGSGdBNnZCR252eXM3eHF5TnB4YzlYQS94OWR5?=
 =?utf-8?B?Vy9RdVc2d3FDazdIK0FCdncyUzNpeC91VzlldDI3R254Mm9oK3REV21Kblgw?=
 =?utf-8?B?NzFXOERVWW9yVmc0UmczcEx4YTRQc1BSTjBMSE9uMFdBYmYwTlNvZ1NzeUcx?=
 =?utf-8?B?QXFBOUhLVXZ3ejNyTUtMWGdDVXNheFdCNllvM3VzZnZPT3VkUnFoeGZIZEY5?=
 =?utf-8?B?bHhnOEpWWXBxMHI3aW5VbVlTd0I3T0ZxakFMTUpzcXZETTd6ZE5SNWZ5T2k4?=
 =?utf-8?B?TEhUTWxINkw1ZXRncDRvV2c3VTBmQnJjc2ZRZGY5UnpneENaWlFBbUZvc2U1?=
 =?utf-8?B?Ti9LQ2YwNVNhWkJGUDFjb2FLM1NLdTZWVzZ4aWxXTmc1d1VFRWVmQjJOZEFZ?=
 =?utf-8?B?Y3VQZkVxVmRINXNTSW9PN3VyU0dldFk0ZGkyZW9UR2hTNngzT0NKQ2ZqbjRS?=
 =?utf-8?B?R0MzRmVzSzg1SjJXaEJBMVovSy9ZTzltUVNPeElHenZUMDZuclAwSWdVTDdj?=
 =?utf-8?B?aEVGY2JIdmhlZEZZT0paZVFoYkVOMCtVV0k1ZDNtY0hwNHRMMm4xdFg5UkRM?=
 =?utf-8?B?WkF4MTVwbVJGZ2tDUWdrOE9HbGE4MWlIM1BOa2M3SW1Bd1ZERHAyV2I4cHZG?=
 =?utf-8?B?RHVGbmJEZjR5aTdxZVU4aVhmT0UrZnRqWTU1WGdTckttS0hKNmpmSnR1MG5N?=
 =?utf-8?B?UkgrNzhxSlk1bjVZMFdPNENlV1VQQWdyeXE4ekJlbHBmeENxTmJlT0JpMW5P?=
 =?utf-8?B?R1lhbUxha21FY1o0dkJMb1FuS0k3MW5mRTR0RkFORmlEak5lYmptZkZONmFY?=
 =?utf-8?B?Y2toeWIycU9FNWttOEdScjdUeGorVkJaNE1mckR3bXR6RE9YR3ZuYVhlWnd3?=
 =?utf-8?B?bStmQ2hLMmxKLzBxSnhicTZJTHlVMkZBTlZBS25wbjFEOHZjWTlvN00xbzYz?=
 =?utf-8?B?elREeXVsdjM4dGozU1k2NW9xRzZ2M0lNUWUrZFIvdUtlR3FnSDNiM2xCQWhP?=
 =?utf-8?B?VDZXZXU4Vk1pVnIyZzhZakI4NVVWMUlnaGRMRkhPVlpsK1FMckFKZmJIQlRW?=
 =?utf-8?B?elVaeEtHOFJHV0hXdmw4SWlnOGp0d0pVc0FvZEhTVUthYkxMUmlIQU5TSDlT?=
 =?utf-8?B?UWhhQXRzaWUyK3plY3RSdHhLQUxsSHZWWW9oTnNVYVRITWFYZk4yNEtwb0pt?=
 =?utf-8?B?djFuaTFTRCtLOWF5bHhTQ011NldSanVOVjV0ODhCN01PT0doOGV2VVVlaTlL?=
 =?utf-8?Q?+UKxSxvXsVNA+CvxvvbuIn5d9?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 7d8c0776-31eb-4494-af17-08dbd3d2abe9
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Oct 2023 14:16:38.5358
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: lEQHaRCIyQ6AME01lV6bPw7eJMjHq52+XWhyqYx3ttIBUvP/SJucz/BT6tlnpwuV6LHXuiSxKxBLXrukHJ4n3g==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB8PR04MB7049

On 18.10.2023 16:25, Federico Serafini wrote:
> Add missing parameter name. No functional change.
> 
> Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>

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

Albeit I think that this would best be folded with patch 1, using
"x86/mce: " as the component prefix.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Oct 23 14:17:22 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 14:17:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621508.968047 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quvk8-0000To-Vr; Mon, 23 Oct 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 621508.968047; Mon, 23 Oct 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 1quvk8-0000Tf-T5; Mon, 23 Oct 2023 14:17:20 +0000
Received: by outflank-mailman (input) for mailman id 621508;
 Mon, 23 Oct 2023 14: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=OVTz=GF=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1quvk7-0000Fl-8d
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 14:17:19 +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 df7e8015-71ae-11ee-98d5-6d05b1d4d9a1;
 Mon, 23 Oct 2023 16:17:18 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DB8PR04MB7049.eurprd04.prod.outlook.com (2603:10a6:10:fc::23) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.11; Mon, 23 Oct
 2023 14:17:17 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6933.011; Mon, 23 Oct 2023
 14:17: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: df7e8015-71ae-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=oTxmHWhLBj93Kczh5Ol9GKzYOYHPeFqdZx07qn3vgp2NfhRohAj0v1noZ9ozC0lHFyvs/AELGdtCOJJJ1HE+KfwvfcQ/xmz7B7r+wKeHxepHwYsr4DXyDqLXtp/CSMeVDmcTRPERpdXzb8mm5PnMPTFG5l2oXMht2ARIp+LK0nJODSZg+dKuAwiVVe1tXvJJ2ji7TYORPC0CWS9AMbiNAFUaNA64hatdBH/fZaf77J3oMf+eBEXzfo9nqjoc3QmYarMfTpU3rruVvz4C51cnSdGPNydZL9ycgF7KyerVIy26Mi6SS5RC3bSXUWzWSSUKC77ucbgeHK3rrbndyocpuA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=MGhLvk0DpygJ/lDfOboQZAttyRQS5ZEJF3+k/QjPUJQ=;
 b=A72QhIf26M7q5HBk9YroMs43fPttmqOmy0g+oZxZ4VQx8XQwCl4W3lu3PrTYgf0C92UH2qg4yxYFryg4QaGoBBObmbljf7eCAUpKH4F6MjBquR4XDaA6mKGYehPTdVz8JT2LaX/6gyaoSdtWRJNZIUdt93f4plQcavUPHpcG+awITMES0dAKKkDzWP7+TpuTC9+LTFio88PQjaiYXMjzdivweFJczRismVVEDTDVW3TwSE161EX32SqDuGYBieUaNfA3MOqdrhiq7lNLw5+GfPVA2xhYW5QDkZgpo6Hfs5CQWM9dq16f9SgD45MMfLxP8vVy7TMXZMUTlIXUjcPEWg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=MGhLvk0DpygJ/lDfOboQZAttyRQS5ZEJF3+k/QjPUJQ=;
 b=FdDzTMZeeoY5YzDkdyIylyg1Yq2ppXbrE5PGV/URe3QXRBZ1IoOcEKE8Nz2DwV8ALDnnXaVzQv3ZatTH/qm1VbbHT3UIe3RDNhpCiSw9JhOjGtN8PRbvUD/JMX70+w9OURHa5MWo0QhpHxLmirCVqqplTwtZD5LctvFCkfiLIFI8IqjgLJrZG7id675I+Tcun+xm0CTZv8QQ5mU3NViIqMz/7jWFhMzuyI6p9+p82Jsgkz4WimqmtaQw/ffbfPjf5BqEyD+0SkAXPXkYT1q3iEBZi91X7aVbruMZpbTdUgo0TjHA6Yk4CojV2cqcyhEm1gnirTSDUvC/j9fg0XN4Kg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <d042f0ce-3b29-18b0-457d-764f23069bed@suse.com>
Date: Mon, 23 Oct 2023 16:17:15 +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 6/7] x86/vmce: address violations of MISRA C:2012 Rule
 8.2
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.1697638486.git.federico.serafini@bugseng.com>
 <f6df2bcbbe4bc0050edc1d62837d5e9a6ff56064.1697638486.git.federico.serafini@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <f6df2bcbbe4bc0050edc1d62837d5e9a6ff56064.1697638486.git.federico.serafini@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0267.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:e8::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_|DB8PR04MB7049:EE_
X-MS-Office365-Filtering-Correlation-Id: abcd9d46-37cd-48fb-3077-08dbd3d2c2f2
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	UifMEnvOJQj5uAcIFuGB7wXxud9bz5/xuWLET15GzOLyNGmEbbMDH9X5cmekb1D1YOrh1zJDRYB0l+pWY1j9iFWbRMI7q1o+iZpy+CsZwRJB/n53uV3S1oxiGpXP5mZ4G4doTTLqGIcAEgx/nEU8hOcot7DUxqPXuSNAmkMQGU8wvFyi+2qUlLJdbT7AXdSoP+ef25neuGVhkyoQISwbqnc2lGmOGNHPY14KKmSjEKEESd6kyMjUyvowAy+eOQd7hbU5Qssr+bUu38FpjaqIG21Lc1J6P5//DX0YN8OL0+BlMMH7qtogUTUinFenjbZXHqR4zk9LbLXh2YeY3WcGnJCWblkBlFTlSeX4Zu7teDr+sfcMOYlkXIfMT809PvISxVx0a9NVx/nGTmOrQM/pipKtoi6GYKKPG5od0dFWRks0uy8x6LNAR4w7mokNvWy/ULFxFqXOpObjxvj4L5Rmg3/gIssprRqcPQBD8Vui8G6JsmvIxvskeoeniehG720kzF0EjyKIIUZaBrKZ5ey71kAWkvWwvb8SYwJb31UGoZ0PfMpa6gNyJuo3EtZoBPMUVtUWFO6TwsVsezgo05MFRRoEcT/z4r3hhky90XnLxEG+oF54r2JZrKxwzcbFPAPQfozGslB+hkxk5H3WLAZfcw==
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)(230922051799003)(186009)(451199024)(64100799003)(1800799009)(26005)(31686004)(41300700001)(38100700002)(2906002)(86362001)(31696002)(5660300002)(36756003)(558084003)(8676002)(8936002)(4326008)(2616005)(6506007)(478600001)(54906003)(66476007)(66556008)(316002)(6916009)(66946007)(6486002)(6512007)(53546011)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?bFV6OHNxaEdPSEFHNjBEUVl4bEw4WHI3MTVFL0owaHVQQTdWZkt1SnBFQys4?=
 =?utf-8?B?RVY4aHNtdlVGOUpuUG9iK1RZcEpvZXRnWFMwL3pLTGR4N2RIaTFHdjc5c2Zp?=
 =?utf-8?B?aVJQck9leDRvS3g3NWNQbmNCTEdvQVBHU0tCQkREMTNkVlZsTHZLR2JzS2hq?=
 =?utf-8?B?amRqcGZadDZCVHhvR1M5Z2tZVWlvazQyNVk3NW5rOVcwenVOQkFPOU1MbzY2?=
 =?utf-8?B?aE1aM2hrVVBsdldweU1wcCtQenNuS0ZxTklNTFhXNlFGT0xTWmUyeFA1a1o5?=
 =?utf-8?B?YUNFOXRxVlRGR2Y4RUtETGd1eEVydk1hZGgvbzgrSFVZbFVLY1JMZEJEQS96?=
 =?utf-8?B?dklTRE9yY1JHQkdLcTJPY1VOYVpoUGUyVjRiZ0JMOXg2TkhSMVU3Q29VN25B?=
 =?utf-8?B?WDBDdXhlM0hOOXZxVWR0aHlmM0FLQmRnNHVvd0hvZ1pSb2d4QWFnb1I2YUxs?=
 =?utf-8?B?YzkvcGRxTm5wNitWTmRtQXlZRWMxV2JDWEt5NEo4WmZJODF4dVVFMkpkT0Zk?=
 =?utf-8?B?U3ZPdVpVWGVQUlR1NVl3bm1ZVXExTmlZRVpiL2FSSzg5K3ltcmRzVU02YitQ?=
 =?utf-8?B?dlNGSEdyVytldGF4czA5Z2QzWm1JZWVlOTNBeWRvTEVBT3dvcm55NlREWmlD?=
 =?utf-8?B?Y1lDaHZKYVlscTRxOUlETnMrKy9PdU5BVHQ2S1liWHV0K0duODB0dHBOWjJo?=
 =?utf-8?B?Y28reXBVczl6Y0o5bUVjSkQ3L1pvZzM4c3RoUkVWdmpuMlR2UkRZQXF0dkJB?=
 =?utf-8?B?OUJkYmJzdWFMTTR2dmRJc0JUTDJsTVhaNkgvV2dJTzV0TVkvUDBSbVJaeDRq?=
 =?utf-8?B?SkNZSzZkQW9ZWHpsb3o2RzV3VW5rWlVwYzlYakFUclJDb1RJc1VabzN4SkFm?=
 =?utf-8?B?SmhnNm01UllnaWUwWjAyQ054azFpYnl0VFV5U3pJOFQ5OXJlVVFiclVWY0JL?=
 =?utf-8?B?cmxIZi9EeFYrOVFjYng2TFJtWkxQdlE3NDlKd1RubkJnTnhyc3ZMUHhLcTg0?=
 =?utf-8?B?SkR6R21LbWd4UlRSaHZRVkk0dFJJY040Y283SzVUNFRvWURZZEVpOG03ZmNN?=
 =?utf-8?B?TVNVNWlOQUwzRS84Q2lHaXVjWi9CdkVYUkZ3MkU4aGNWcW9QZmlkcjVrbnZj?=
 =?utf-8?B?RzBGcGZVM0pEVjMyV0ErQVVwR3RGQ25GMlduMThFRXFkMEFBMXFHTFQxOWdL?=
 =?utf-8?B?aWM2aHpuTGQ0YmZwMUZLaXpIVXVBUHBFUjV3Tm5VTkl6YVhhbjU0S3ZFVWdT?=
 =?utf-8?B?cGRYSVlyemR2V3VvRy91cHNpVU5zVEluK1Q2Yzg1K0VMekg2N2ZXMG5HZnQz?=
 =?utf-8?B?N0c2Z0dLeWhnMEVvK1F6QTRrYXpuYTVuVFgwcU1FNVgrNE1KSVZKb2NBMVZU?=
 =?utf-8?B?MWZvL1lmbFV6V2J3RzQxdUd5OS9IMlUxMHZaUHBreElBL2x2c2pjVXJMbkFy?=
 =?utf-8?B?bVhCUGpTN3c3S0FNTG05bllkbGpHeWlka1FCdGdjYjdtQklZb29DNVpGdmV4?=
 =?utf-8?B?NXJkcWJMMG1RV01ONGlQNGlHVEdOdmlEQXNmQWpwaXdqTnkyZlFDYWpYSHVi?=
 =?utf-8?B?NDJJSWpzZ3k4UlhQQXJ4L1BGZXArQmR0SmY2VTluWmpKWVVCbVJiZCtXbnJU?=
 =?utf-8?B?TmtNRWxWbUpGYUhtSSt6STBCWUpENW85elpWaUVGQ2pnd0RBQXFCT0xzdFlV?=
 =?utf-8?B?MVU2ZDYrQjluMkpzMDZ6R3dmcEhpYndxRTB0bHhPQjNXSkZJMkxudlNyNUVp?=
 =?utf-8?B?bytrOFQ1Vy9PQWVhZ0FWbGQ5aEh4RlVNaC9rK2dPY1pZQTdQdjhKdEFnREov?=
 =?utf-8?B?dHc5MEM4TkVRR0U2SlF0SzF2ZUtHN2RPQkE0N0locDVOelhHYkpQUHNrZTZI?=
 =?utf-8?B?R2xMdllIOTUxYm9uWkYrdzFNdktVeSsrSWMvRmJkRUw3UmtUaVlBZ2kvemxQ?=
 =?utf-8?B?L21IRG96R1ZsRWNoS3BaU1haRGNpT091S0trQTRsd2g0UlRBbmE5eTNiUk9u?=
 =?utf-8?B?cjVEcm03by9kelIwUkx2UGx3RGVLaDFEZkJOVmZuUm5UUGU0V2RyNERwOWJB?=
 =?utf-8?B?N1UwWG1hbFI3M0JjZ2YzTXliK21iOFpRaHl0NUFkZWhWVk1JYWU0d2FRUnU5?=
 =?utf-8?Q?EdWA3DrNl3s/ilk4SM8XHSu2B?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: abcd9d46-37cd-48fb-3077-08dbd3d2c2f2
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Oct 2023 14:17:17.1840
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: C8kRP0l7t2sNH8CsWcAq5M7yfCID5NQBN5IScrIUaXCzUcrqWQYem+W4120uPBGC8OoDOab1TgHYUycmOADAPA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB8PR04MB7049

On 18.10.2023 16:25, Federico Serafini wrote:
> Add missing parameter names. No functional change.
> 
> Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>

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

Same remark here wrt folding with patch 1.

Jan



From xen-devel-bounces@lists.xenproject.org Mon Oct 23 14:18:31 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 14:18:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621512.968057 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quvlG-0001iR-9U; Mon, 23 Oct 2023 14:18:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621512.968057; Mon, 23 Oct 2023 14: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 1quvlG-0001iK-6p; Mon, 23 Oct 2023 14:18:30 +0000
Received: by outflank-mailman (input) for mailman id 621512;
 Mon, 23 Oct 2023 14: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=OVTz=GF=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1quvlE-0001i5-KB
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 14:18:28 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur04on061c.outbound.protection.outlook.com
 [2a01:111:f400:fe0e::61c])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 07067b35-71af-11ee-9b0e-b553b5be7939;
 Mon, 23 Oct 2023 16:18:24 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM8PR04MB7268.eurprd04.prod.outlook.com (2603:10a6:20b:1de::24)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.11; Mon, 23 Oct
 2023 14:18:21 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6933.011; Mon, 23 Oct 2023
 14:18: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: 07067b35-71af-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=XQSSPYQvqjW9qSEL+0SVSIbROWXbum38NQ3IQ6hi1CufVooPcr/mI/c9lc6NeJ9Iopk7W0Tx0qGweRPtloVxVO5NsweWhpo0MNaDXlEQcRsHmYtMSk0CZB/nY0zJN27tILlLnDH2BzuuyfqnA2mnA9GHHhrwwX4AyIzcyGjaerD9hg65360j1AqZGLWlUCK9tW02rhgF1ip77poCav4RihxdXJFKJXAKlU3Wr3cVnMYsE4D1NiZb3DDnSgYbXUPMK8OCYqBktVevVptNOPKhtE1WrJmpJIRRuDgMdH9TVj5xhc57uh0EctmxhiuRoMu8jWmjVYILv0sW2qOigGATKw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=nw7JHfK/qcz8ichvv7Mp9PJIULjSkz9KyP/6NX6T0og=;
 b=k3oEVxMkrCjDWm1vr0gW9SAf6KFaN1mA9VSLC8L7O2iVY9jxv7w+bWogYv8/baIbQdbYaviIOLHIyTz0LEQYKVUCr1wEc4N6+lmJ2DKmF0vtLNgoWXGJ+u2I68/4yGjFJITBd0WcX+Ab53mNsJsxyyRNLRIkrXNx+rADnQcDOABk+jxkZ0DfkAUYh28b/eTwvQS2Z0mPp55wD4yAsylAtC4/bONGElIVz6PkVwHH2uU56xaFzxZOcbX0L4UC8zUb6mWfnNJkSLkMssiphy3rSM8NOvDuw4Plha7dTUHL7qTADoiQmKyzRWqWYo0bQRi5RgP+L7B3KkV6x5t6oyt7MA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=nw7JHfK/qcz8ichvv7Mp9PJIULjSkz9KyP/6NX6T0og=;
 b=42YXKJ/42GtA8/oo2kzWudsxvFx218m20lsLdu+tvwJSNz/0VNvDtpdb1IkFrzsq0O2kBgbidpabW0qQQ8FB+MyltjJH0j/pleyVnAoXa/yxcL0bgO2L4JxdXo+f2c06zKnTuWAmnbKdHuqYyIXDFCbWXFcV8vwp3tFDGSpi+VvMzPxzJwkhwL+mDgdCQhpDPBwKoA18kWo6WQOxzHIgcOAEaGSlum67iCGX1QV3VgheskMORvO0vUVfjwZRxsVSTWpLnOCnSK80xxjhsgO8EQTv+eASMHkFARBbOfloJSdgECeimdFVEI5/ckDu5xwQx9q5h0DYuP8yuZDI743mkA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <a1e309f1-cf95-e84c-f569-29f8dd9a411e@suse.com>
Date: Mon, 23 Oct 2023 16:18: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 PATCH 7/7] x86/hpet: address violations of MISRA C:2012 Rule
 8.2
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.1697638486.git.federico.serafini@bugseng.com>
 <4d3f6608e5c76152e4ad0bbb57e38ac80cf316f3.1697638486.git.federico.serafini@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <4d3f6608e5c76152e4ad0bbb57e38ac80cf316f3.1697638486.git.federico.serafini@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0284.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:e6::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_|AM8PR04MB7268:EE_
X-MS-Office365-Filtering-Correlation-Id: 2fa56d13-81e3-4520-b0fd-08dbd3d2e808
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	U6sDS2YAU85nB8Wdhd6udAI3by3roHNABmBarx2ApB+9GEMTc6sfndbcDxmksT6HGY9Q/Ob9518xl0FrAfKV/TXSRhvVRbLS2hgfmLeJc82QcyYZNlqEOGSwFvHaylZBbXjIhxg3PQEwnovb7ggaDbZbzWh5+aL6h5UrRX29tRfPoLst/iQGA9iK0vyxgsHqLe/7azYcLVgGJXzsKbpcOczsWtQMc7/uvjeuKCuBAAqGnftXTK3VnZlue6Jonl7ciHFwFRjVWKqvzfy3byGOAi/HGVkT9nhNpo/YMHDRVEIHKtqDY+7Tf7pH6jF9Q2lfYexEUA96gYScYQXZTxtLvDs87GGiMu3IwOqTux03/hCQr6hJB5FRyPNzJJtxqzlO6R1qfsMWkgL8lMrN7eRWMmlM2ubGZGk3lOWLNmR4I2QgH5bfGPFpp7sKnakEAzncXAbAyGj+3lhNFzlJcisC159PPaGy9CkvCzl5aFtL/xBtdE5w2YA3iL2dHljTVO0Y8Vxjr92RYPRujqF+PmmCedcSXY/wYadn8WcU10LJk9OaxcuSR5mvpdJshFEJ3VgBA1dFdPD+BGXRIiuf/GJaZVwQU9/P5cmCZEM3T9aEM+iP8gUwE4Uw77i3sOzZaaemVefA8hHBI8Vm6b5lhULEfQ==
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)(136003)(366004)(230922051799003)(64100799003)(186009)(451199024)(1800799009)(2906002)(66899024)(4744005)(38100700002)(86362001)(36756003)(31696002)(316002)(6512007)(5660300002)(53546011)(41300700001)(6506007)(4326008)(8936002)(8676002)(6916009)(31686004)(478600001)(54906003)(66556008)(66476007)(66946007)(6486002)(2616005)(26005)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?UFh6ejd2dW9JZVgrdUd1bzlNemhvd3JEbUMwVFNQRitPTVArNkhQV2VmMjJs?=
 =?utf-8?B?ZG94LzNZMmwxL3pmMnNybmMrT3p6YVBoakttMmJpZVRHK0ZHbUk1Nk5JV2tW?=
 =?utf-8?B?aWhZOHN4bXY2QVR1VXBONUtPUHRmK3VpRU9HaVo4NHlEVWI1SjRselZHYUJj?=
 =?utf-8?B?bkdVRFZSRGhjRzdGOWpFNE1OK3dtWXRPd0pjcDFySDg1VUwyZ0w2dzZmc2NR?=
 =?utf-8?B?ZVkzY0o4NThlQmZUMVB6SG5LVHRKdjA2eTUraUZ4R2RhMzI4d1h0YTIzOFcy?=
 =?utf-8?B?bjRGdXdTWVdEQ24wTHdsSHdkSDk3SG85ZXZScTNINUY0aGc3TFlkRWVYZ2V6?=
 =?utf-8?B?OERmYlJBNkFiRjZlYlgyQU5hMTVQdUJzSmo3Sm52aTczazZ5Zk9UWjZMU0tu?=
 =?utf-8?B?bU41My90bzN3clhheTgraFBUTVY2RVJxazdLQXBzWHN6WnpvalZCSkRZekVO?=
 =?utf-8?B?bmowMmhxWEVUc1RiZTJvbzhjbEtZWlhKYWx4OThTTU1DRzhFT3gwVkRGK0hV?=
 =?utf-8?B?WlhYOUcwNlUxbE5sejk5ZkhwQy9OVmRIUm51NWVWaDlxK1VlOXQvV1c0dG5W?=
 =?utf-8?B?cE01WG50N2FYemV3SmNDY1ltNXk3N0JNdk14YjlyNHl0QUNXYi9DdDhmUHlu?=
 =?utf-8?B?SjlhMTUrVnExZnBpY2szdlBGS1R6SWtIaHdsNWJReG5Kd1VRSitDNUZUVGRS?=
 =?utf-8?B?RE93Y2R2SzQyaUxldEY0UnJsclcwUTFxSTBiYW1iRDhFR2k4dUtvTTRqdHYx?=
 =?utf-8?B?US9zVERTRC9QWFhPZ0xQNW4ydzIvY1dhTEZTbEQ1bEIwL1AyMGNhNDIzTE9v?=
 =?utf-8?B?S0ZSQm1VUWlKSkY1aEVhY3JjaFZSWkhpWjFYUFlObHZQMXowK3lrQUJzRW1p?=
 =?utf-8?B?dStqdXA3dGhmRE52aVJFazdVTEJUOVNISDU0Y3VVT3pZellUZW1FNWdwazh3?=
 =?utf-8?B?VU5XZ0g1djZYOENqTzBpdE5IT25SUUl4SlM4M1o2OEs5K2t1dXlPYk5nM1NV?=
 =?utf-8?B?UDJuanBST2RUZGxjZ053dUcrYnBqWjVyeVBEbkdXZUd0RFUzTlVTYlFjOC9Y?=
 =?utf-8?B?WlNZam53eVdiS0laZVpVZGUwUmlPNGVIaTlXTHhKZmpjRkdQSTdsTC8xclM5?=
 =?utf-8?B?akQ1YjNNa0s0MUc0SFZkVTZxbkExdXkrS2cyT3RwZEZ5ZHhURk9MdGduM1F4?=
 =?utf-8?B?RW9zbnNsQWJKQ0tKWEc5TldneGpQMDNQdk1WYzRQUVVLU1Z2ampwR2h6VStZ?=
 =?utf-8?B?em5FbEdWY01HQ0RLWGNyT3hJWW1vZ1dhenc4ZUhicHlPbDNxTloxZHd0blJ3?=
 =?utf-8?B?bDVydlN3MW1yMXU0RSt4bzgzV0RrQmNrTFh1enZRMW41WXc2ZzFHWlpJaS9q?=
 =?utf-8?B?Um91YU91cVQ1elI1eC9jWjUwTDdrbEVkdzBSM09VeVJPNnloOEhLNnUvQzV1?=
 =?utf-8?B?Y0VHclZRTXZBSzlNcHI2MTBtamVWc25RVnYxNDZQRDlUemNZeW83Vlp1cTVt?=
 =?utf-8?B?UDRod2F0TVA4TDJQeTE2LytFVFpqRUM4SG5yeGZEUy9SVTRYNVo2VVFEOW5n?=
 =?utf-8?B?MmtiSGg1U2FsLzFXQjJ2bVRDR3NNVExLOEpyL2tiS3BLM2x4NEd6WWpiazhR?=
 =?utf-8?B?Nkp5cU5xdWVTSEdzTWkwc2FHTVhjYWh1ODM2dGNoZkIxM2VsNGFWTDdWNTlU?=
 =?utf-8?B?QndOYUdVems1S3FVTEdLQ2lDNkM0eGU2aTNwcGgrMEJxRThRYVh1Y3RlM3ly?=
 =?utf-8?B?bTMrWjZEVVZjZFNYY0lNSzZpaGt4OCtmV2pTcXRRZCtxeW95YzU5Vkxwcksw?=
 =?utf-8?B?KzJkSXhtcFllUHVxQkpSb05CVTZpajkxaGhCWnN1K0VIdzJGTFBQMUtWVGVh?=
 =?utf-8?B?TmRvWklrRC9QQzdrWEFFd3ZtU2o5bmRDN2RnU2Uwb2dlT0piK0cwcmhSSGdM?=
 =?utf-8?B?QithS0VNRU9tSW94RlhWQlg0SEIrbGZSRzY0RzV1R0RMeG9IdGMyUmc5K2lv?=
 =?utf-8?B?UmhXOGdXNnZhV3JFVlM2Mk1ObWQ4eUtmdEswb2tUS0JKSEFWMnh6Q0lNRjFK?=
 =?utf-8?B?ZS9peitrRmQxSUZwdEhXcllkM2ExckJjQVZRa1BaSWQ1ODN4NkZOSDgrNU55?=
 =?utf-8?Q?kPv0V2th/68wX79Fh4iib8YMM?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 2fa56d13-81e3-4520-b0fd-08dbd3d2e808
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Oct 2023 14:18:19.4084
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: AA3ThWXmEwEUngN+g/tmvPIobM7/43V0NSfSmtNSbsmCbR5JXajk6/uGSsOnb+JvH6n+fmpdUVQs+Eh4WrLuqg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8PR04MB7268

On 18.10.2023 16:26, Federico Serafini wrote:
> --- a/xen/arch/x86/include/asm/hpet.h
> +++ b/xen/arch/x86/include/asm/hpet.h
> @@ -60,7 +60,7 @@ extern int8_t opt_hpet_legacy_replacement;
>   * Return value is zero if HPET is unavailable.
>   */
>  u64 hpet_setup(void);
> -void hpet_resume(u32 *);
> +void hpet_resume(u32 *boot_cfg);

Ideally also switching to uint32_t while touching this:
Acked-by: Jan Beulich <jbeulich@suse.com>

Jan


From xen-devel-bounces@lists.xenproject.org Mon Oct 23 14:51:43 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 14:51:43 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621528.968066 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quwHC-0004VJ-QO; Mon, 23 Oct 2023 14:51:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621528.968066; Mon, 23 Oct 2023 14:51: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 1quwHC-0004VC-NL; Mon, 23 Oct 2023 14:51:30 +0000
Received: by outflank-mailman (input) for mailman id 621528;
 Mon, 23 Oct 2023 14:51: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=gXaf=GF=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1quwHB-0004SV-9O
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 14:51:29 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id a5234ab9-71b3-11ee-98d5-6d05b1d4d9a1;
 Mon, 23 Oct 2023 16:51:28 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id 8A6874EE0747;
 Mon, 23 Oct 2023 16:51: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: a5234ab9-71b3-11ee-98d5-6d05b1d4d9a1
MIME-Version: 1.0
Date: Mon, 23 Oct 2023 16:51:27 +0200
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: Xen-devel <xen-devel@lists.xenproject.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>,
 consulting@bugseng.com
Subject: Refactor arm64/domctl.c 'subarch_do_domctl' to avoid unreachable
 break.
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <6c118d318d68ea3613d9a0a79d75c0c9@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 taking care of some patches regarding MISRA C Rule 2.1 (code 
shouldn't be unreachable), I
came across this function:

long subarch_do_domctl(struct xen_domctl *domctl, struct domain *d,
                        XEN_GUEST_HANDLE_PARAM(xen_domctl_t) u_domctl)
{
     switch ( domctl->cmd )
     {
     case XEN_DOMCTL_set_address_size:
         switch ( domctl->u.address_size.size )
         {
         case 32:
             if ( !cpu_has_el1_32 )
                 return -EINVAL;
             /* SVE is not supported for 32 bit domain */
             if ( is_sve_domain(d) )
                 return -EINVAL;
             return switch_mode(d, DOMAIN_32BIT);
         case 64:
             return switch_mode(d, DOMAIN_64BIT);
         default:
             return -EINVAL;
         }
         break;

     default:
         return -ENOSYS;
     }
}

here the break after the innermost switch is clearly unreachable, but 
it's also guarding a possible fallthrough.
I can see a couple of solutions to this:

- mark the part after the switch unreachable;
- introduce a variable 'long rc' to store the return value, and 
consequently rework the control flow of all the switches
   (e.g. rc = -EINVAL and similar);
- remove the break, but I consider this a risky move, unless -ENOSYS 
would be an ok value to be returned if some case
   from the switch above does not have a return statement.

What would be the preferred way of addressing this violation?

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


From xen-devel-bounces@lists.xenproject.org Mon Oct 23 15:00:30 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 15:00:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621532.968077 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quwPo-00082O-Ku; Mon, 23 Oct 2023 15:00:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621532.968077; Mon, 23 Oct 2023 15: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 1quwPo-00082H-IC; Mon, 23 Oct 2023 15:00:24 +0000
Received: by outflank-mailman (input) for mailman id 621532;
 Mon, 23 Oct 2023 15:00: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 1quwPn-000829-DL
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 15:00: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 1quwPj-0002Pj-QY; Mon, 23 Oct 2023 15:00:19 +0000
Received: from [54.239.6.184] (helo=[192.168.24.55])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1quwPj-0005TR-KH; Mon, 23 Oct 2023 15:00: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=lhp2yYw8Fv9r4oPR6cVa5VI3XmWCvhzWzMbEZL2bc0k=; b=hOUBYAluRm6LOhyCewzFGitakO
	uI/orekVpnrXzlnala7i78UtWQ0Yc6qtxJqUaprVJTm4/Z4JRyb7AkGWfLRQFptNW3KuRRqrIR9fX
	wdXJ8pHTI6PJS/wtXnkHiSDxVwpO1wT5veBTRoUKli3o1iwDt+cr22Ws8GUHm1FjL7rQ=;
Message-ID: <a63ded4f-09b0-41c8-a9c9-832a12fc9133@xen.org>
Date: Mon, 23 Oct 2023 16:00:17 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: Refactor arm64/domctl.c 'subarch_do_domctl' to avoid unreachable
 break.
Content-Language: en-GB
To: Nicola Vetrini <nicola.vetrini@bugseng.com>,
 Xen-devel <xen-devel@lists.xenproject.org>
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, consulting@bugseng.com
References: <6c118d318d68ea3613d9a0a79d75c0c9@bugseng.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <6c118d318d68ea3613d9a0a79d75c0c9@bugseng.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit



On 23/10/2023 15:51, Nicola Vetrini wrote:
> Hi,

Hi Nicola,

> while taking care of some patches regarding MISRA C Rule 2.1 (code 
> shouldn't be unreachable), I
> came across this function:
> 
> long subarch_do_domctl(struct xen_domctl *domctl, struct domain *d,
>                         XEN_GUEST_HANDLE_PARAM(xen_domctl_t) u_domctl)
> {
>      switch ( domctl->cmd )
>      {
>      case XEN_DOMCTL_set_address_size:
>          switch ( domctl->u.address_size.size )
>          {
>          case 32:
>              if ( !cpu_has_el1_32 )
>                  return -EINVAL;
>              /* SVE is not supported for 32 bit domain */
>              if ( is_sve_domain(d) )
>                  return -EINVAL;
>              return switch_mode(d, DOMAIN_32BIT);
>          case 64:
>              return switch_mode(d, DOMAIN_64BIT);
>          default:
>              return -EINVAL;
>          }
>          break;
> 
>      default:
>          return -ENOSYS;
>      }
> }
> 
> here the break after the innermost switch is clearly unreachable, but 
> it's also guarding a possible fallthrough.
> I can see a couple of solutions to this:
> 
> - mark the part after the switch unreachable;
> - introduce a variable 'long rc' to store the return value, and 
> consequently rework the control flow of all the switches
>    (e.g. rc = -EINVAL and similar);
> - remove the break, but I consider this a risky move, unless -ENOSYS 
> would be an ok value to be returned if some case
>    from the switch above does not have a return statement.

- move the nested switch in a separate function, so the code in 
subarch_do_domctl() can be replaced with:

return set_address_size(...);

> 
> What would be the preferred way of addressing this violation?

I would actually prefer the 4th option I suggested.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Mon Oct 23 15:10:51 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 15:10:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621535.968087 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quwZo-0001T8-Ir; Mon, 23 Oct 2023 15:10:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621535.968087; Mon, 23 Oct 2023 15:10: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 1quwZo-0001T1-Fv; Mon, 23 Oct 2023 15:10:44 +0000
Received: by outflank-mailman (input) for mailman id 621535;
 Mon, 23 Oct 2023 15:10: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=4wXt=GF=bugseng.com=simone.ballarin@srs-se1.protection.inumbo.net>)
 id 1quwZn-0001Sv-Fo
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 15:10:43 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 5478fb0d-71b6-11ee-9b0e-b553b5be7939;
 Mon, 23 Oct 2023 17:10:41 +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 76E364EE0747;
 Mon, 23 Oct 2023 17:10: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: 5478fb0d-71b6-11ee-9b0e-b553b5be7939
Message-ID: <177e5404-bb86-466e-a23a-60098a477c5b@bugseng.com>
Date: Mon, 23 Oct 2023 17:10:39 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN PATCH 1/4] xen/arm: address violations of MISRA C:2012 Rule
 13.1
Content-Language: en-US
To: Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>
Cc: xen-devel@lists.xenproject.org, consulting@bugseng.com,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
References: <cover.1697638210.git.simone.ballarin@bugseng.com>
 <31a926a09dfcef43d13a402fd3b235aeba48009d.1697638210.git.simone.ballarin@bugseng.com>
 <41d82896-5471-4eaa-8bdd-a192e28d5546@xen.org>
 <3de5e340-30bb-44aa-affd-89f343ed1fa1@bugseng.com>
 <7066a646-711c-4dce-f3c0-effb6ae91a39@xen.org>
 <67782815-7803-4ef5-80f4-db6181f7a6e2@bugseng.com>
 <15923aaf-c005-45fb-8bb4-50d2e0995f18@xen.org>
 <8734535a-0c00-44b4-8257-64155807b052@bugseng.com>
 <edc5d2b1-a3bd-44c4-83ea-6ff436fe7346@xen.org>
 <d6af702c-9945-4eea-a102-96910be334dc@bugseng.com>
 <alpine.DEB.2.22.394.2310191128560.2099202@ubuntu-linux-20-04-desktop>
 <fe61e283-93f7-4718-bc8d-d1df160f753c@xen.org>
From: Simone Ballarin <simone.ballarin@bugseng.com>
Organization: BUGSENG
In-Reply-To: <fe61e283-93f7-4718-bc8d-d1df160f753c@xen.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 20/10/23 10:28, Julien Grall wrote:
> Hi Stefano,
> 
> On 19/10/2023 19:30, Stefano Stabellini wrote:
>>>> We usually use this trick when 'current' is used multiple time to save
>>>> process (using 'current' is not cost free). But in this case, this is
>>>> renaming without any apparent benefits.
>>>>
>>>> If we wanted to go down this route, then this would likely want a 
>>>> comment.
>>>> At which point we should just deviate.
>>>>
>>>> I will have a think if there are something else we can do. Could we 
>>>> consider
>>>> to not address it for now?
>>>>
>>>
>>> I totally agree.
>>
>> I am wondering if we could deviate "current" because even with the
>> implementation using volatile we know it doesn't have "side effects" in
>> the sense of changing things for other code outside the function.
> 
> I will let Simone to confirm whether it is possible to do it from a 
> technical point of view.

Yes, it is possible.
> 
> Leaving the technical part aside, is the only violations are the one in 
> this patch? If so, I don't think it makes sense to deviate 'current' 
> globally. It would be better to have local deviations.
> 
> Cheers,
> 
For this specific case I agree in using a local deviation.
In the next version of the patch, I will use a SAF comment.

-- 
Simone Ballarin, M.Sc.

Field Application Engineer, BUGSENG (https://bugseng.com)



From xen-devel-bounces@lists.xenproject.org Mon Oct 23 15:15:16 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 15:15:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621540.968096 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quweB-0003Jq-68; Mon, 23 Oct 2023 15:15:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621540.968096; Mon, 23 Oct 2023 15: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 1quweB-0003Jj-3Q; Mon, 23 Oct 2023 15:15:15 +0000
Received: by outflank-mailman (input) for mailman id 621540;
 Mon, 23 Oct 2023 15:15: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=OVTz=GF=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1quwe8-0003Jd-VA
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 15:15:13 +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 f5c7fbf5-71b6-11ee-98d5-6d05b1d4d9a1;
 Mon, 23 Oct 2023 17:15:12 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM0PR04MB7186.eurprd04.prod.outlook.com (2603:10a6:208:193::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.11; Mon, 23 Oct
 2023 15:15:07 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6933.011; Mon, 23 Oct 2023
 15: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>
X-Inumbo-ID: f5c7fbf5-71b6-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=laEQG/hnAr1L6cX0YNRysKfNwSibbAdnEzuKIg7GAvwAtiSmNwsyXpSz5C2507E6Sve8hzqhm+J/UPdPKjAc9e8a+4h2wtdGxHmhjI6e8X3tLs4oLE1FU5SM0bAgRJP7b5+M8OoTpmEqldOU9qj0J/SgnI6ea4OoUemo20Dzt18SsvqhDpTV+IoQ0sDdzGpZ8xQWsKfZzROVQ+njg2dcSm8ssGGovx/WrvsopfcQ2PsFvamkkKgNRHoxjfVeOCxCf6N3dJsO9qafYCMo0SzpZBKKVbJ1ZX6/FHKSHvVth9m1X8DrhdNustLqvpT86oT+Ij8wqN9rHZlW0ei5+i6EJg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=+kuldSlnsq415uKZxPnLAmQCMTTneUav96+JxPDVRgo=;
 b=iesaaqoGMCIU1fdz7gxYMLwDOb7LeDAkkYEpRgMVT4buM457ZH5/iHpywOa5dP6oLwDExyyXSVeNFPZ6TjssFJAWb5aUwT8gQpbuY8YBvhfZN39nQbDFLAlOF8Yi+xwNe2JAuu+qxEpirPF1hC4I65G0uVmSGKN7xabwsk4S0ZtLckdecUlyJUN1h8/+OyXXLr71avAo5RCR8lhc728ILI4DukR2peJ9f4QND6kLXVZTQIqHfvNAVYi3OSYlleFcGkTc3YdZt0/6v1u1BqGBU0ma8sLudi2TV4k2C9I32Jgkn/qb3kMDZ/HBulHRY7da7u8ci+SFP9dU4R0JnhBHkw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=+kuldSlnsq415uKZxPnLAmQCMTTneUav96+JxPDVRgo=;
 b=EMBdSz7z7l7vP2i311TDtWTJS6UJ8O8j76j5rKNEmq7MZc3ieOhq4rqPWAI5/3MyQnklOrJS+a5TGqqd96+MJHG50FUVnC1TCHBvzJGh4nvrLNyeD4GG/gXMU8lEYng+w5t5vpysek+hlEXQ53L+tC4w6V4GFMLr0++1stq7sUJA6qu4MqonLFYRLs/cvcP9rgk2+jtTSUaACeUspHH0yQBKp6HkvfSmnG9ZKGdsa3VYcHzrRZtsbQtBQd/bUXGCas7DwkmK+rUemH0xpFVNZ/3d+S3CkKy5KQ5DxtGdWbxRVunSEZylm8IzsjSzNEMj+LzFhq+SPSzFT7ZaXIYBZw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <7e72632b-43dd-d2c5-f46a-d0c6de6bc81b@suse.com>
Date: Mon, 23 Oct 2023 17:15:05 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: Refactor arm64/domctl.c 'subarch_do_domctl' to avoid unreachable
 break.
Content-Language: en-US
To: Julien Grall <julien@xen.org>, Nicola Vetrini <nicola.vetrini@bugseng.com>
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, consulting@bugseng.com,
 Xen-devel <xen-devel@lists.xenproject.org>
References: <6c118d318d68ea3613d9a0a79d75c0c9@bugseng.com>
 <a63ded4f-09b0-41c8-a9c9-832a12fc9133@xen.org>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <a63ded4f-09b0-41c8-a9c9-832a12fc9133@xen.org>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR4P281CA0314.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:f6::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_|AM0PR04MB7186:EE_
X-MS-Office365-Filtering-Correlation-Id: 26d3f413-5601-4715-7a2f-08dbd3dad721
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	80DVrqSvNdMZu0mfIA8vATjlNsA8uaM6SWK7IKbKg+NM1vunZrMB2MO4cdIbDccQTeO+5TTVs81ePBsD7wO7qyKvzfDKzLjWpf7hI6J0ChbFnL4J4J8S9lDUPlXR5Rk9Q0dJvFx29Pecmke771TvuJeysl7kxTtzWH4pBzMXRX7fQ5Qh944wT49RxRI0HbtNERnwki/pgfC2ufBnFYNzxZ2182A7Jpk9jCtHwvnuhbOZi8joSNrCqw/sSH6qNNY37lbqj6k7Ln/pjpnZBUykfukdzk3vy/exkK/L7Wf30xLHybxoe0FENa1PyRYwzUQqPVT1km6xPUJFw1X0r+sECqN28H9+mPptA+HdT/381itmKsEnrw2u8b094sCwUqhlm9HX74uHgYkGac++IwvC40Dh66rtxxMJZYX2m10IBJqFpl/+M+RaitRjo6u5vCoPahM+6+a3Nain4YuFoI69jmFo/WT2CDKz6O1EQC44pruJLGDhuEaNwp9YUDgGZM3qtSFTe9OyTpPvwJ3Gvp1x56C1rmR1Px1XBBrTQxD68jZ0/+6PmnSAsV2WrWMPszO9CavW6Xz/TcxOaLb45sFzZem5Jg9zZuqHOMrS/nmc+qcnluKQLj8SHBB7Sy1AGJWWQ6k2kNh821jfx2TwD4nbvQ==
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)(230922051799003)(64100799003)(1800799009)(186009)(451199024)(83380400001)(31686004)(8936002)(2906002)(4326008)(36756003)(8676002)(53546011)(26005)(2616005)(38100700002)(86362001)(6506007)(316002)(31696002)(478600001)(6512007)(6486002)(5660300002)(110136005)(41300700001)(66946007)(54906003)(66556008)(66476007)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?aWtiWE9YaFF2bmdMOUNtUjl6UXFtakRwNVBGS09NL2hwaWtpaEJ2eWdrYXZN?=
 =?utf-8?B?eTlaMytWMDhxNHVwMXB5K1k1ZzZxTDR1QlpITSt3eTlRQldHWEQyUUw2VWk0?=
 =?utf-8?B?Zjlnd094ZWZjc1ZQY2RCOXZpZDRnUTVtejdCNHZxeElRZ3k1SVZ1cVFqQUZC?=
 =?utf-8?B?bnZBOFhSYk0vbFZTcnhIeUx3aDE0Z2lnM0lzdExjOTlvNTFNODgvMW5UbDZH?=
 =?utf-8?B?ZVgxckUxQjJpTzA1WWJUeWk0NlVtczdDb09ZYkkwd1Y5VUxub3ZGczg4YzBR?=
 =?utf-8?B?ZDFHajZLU3RRZ3JnWllqUVNhSTdjQUJTV2FmUGhoRTF5RCs1N2VucjRIaXN4?=
 =?utf-8?B?Rk9zWVl1ek1MN21YdG9PRmZUKzFWc2VVNW1XWXhzOUZXNlZDdmhxTjE3L2lo?=
 =?utf-8?B?Z203dFJ3bHp3Q1c5U1duT2NBRy9zbUlGSHBPUjhWc1RBRk9Gem81T2o5S2Fv?=
 =?utf-8?B?Zi9Mek12Y3ZGdDdXVloxM0RUNDMyMi9VN3BrcnUrZEloUElsQ0N0eGt3SVlx?=
 =?utf-8?B?R2NYNFlMM0tTcUhTTDhLaWh1L2xvU21mSEpXaEtmRFl6Q3BLZ1pCeFBjSzRr?=
 =?utf-8?B?TU9kbUpybzJNZDd6cFdNak9zZStyUWVLZDZTZE5hUm1NcERzUXhBVFlFaW1O?=
 =?utf-8?B?bzd4WnZUbitDUkgrQXBVT2Z2TXNoVUhJVUxWQWRoR2ZrS0ljdFhodU5lZ1lP?=
 =?utf-8?B?RUdQVmRtWmp2WllXQ1BzdFpiVGRMdmNvWlE4NUlNQjZGS1dSR2g3bmo1aXVx?=
 =?utf-8?B?Z3M2Y2NTclorU3lKNWRvT2d1cmxOME81TlByMmtZYmFRZzRSY1B3cHZLbXFt?=
 =?utf-8?B?SXdjNkNpTldqeUgzRE9zNE9hdVJ3THJqZ2NaS0N6S09jUkt5bUJXOVNmNmJs?=
 =?utf-8?B?ak1RL3FMNngxRkd4YytDMkoyMEd0ZnVmTm93TE1HRnNDcisramtxVi90Z0lH?=
 =?utf-8?B?Mlh1MWJnb1JNckNNbjdXeTRVNDEwM2tOMHJtdFcwUStLQU5STU1BNk5XMjZv?=
 =?utf-8?B?NUpXMU00R1lqd0FTZUZMNkkzdFNESWF3a1hEcFhnUWJ0TWNPN002QkpWaUhC?=
 =?utf-8?B?QnJ5MWVGZ3lLZStHbHhFbUQ5THJwelV3Q1QwblRJclBvenhEdzNTMVdZc3g3?=
 =?utf-8?B?bnpHU2FPb0xYdTIzQS9ja0dnTUU2dVBENE5XSmFIdTQ1Y2ZubHFvL1c5NUQz?=
 =?utf-8?B?cmtnck1NWmswNjdaL3dpeFRVZEFrUkg3Y1dtS3hOT0x5cWlsOEQrS3Q4QWt0?=
 =?utf-8?B?N2lFc0xJdVFZakhIczczWnJlVElZWnZNQ2lQdDIwVnpNNHlsbW9kTVJkRm5R?=
 =?utf-8?B?a0lMSHk5Mm14b3N0ajJTMGVSUVIyUGU5L3JKbXhxWUFZUWZvRmxNMkFVeXZn?=
 =?utf-8?B?RkE2b1RBWXlkaVI2WXZCSmtSTHZzNHlZSDBJL1dobzJ0YlRYbWJETnJ4aXR4?=
 =?utf-8?B?T0NWclYwYVFwQ2dZRkloUldFaEdJd0R4M3FvZmNFd2lxaTcrWngxTG0vVTN3?=
 =?utf-8?B?WE55dzZ2bzhDSDBHek1LVkt0OG1qSlFZMkVMM3UxT3dzTUwrSkhKMjNvbkQr?=
 =?utf-8?B?SVhYV0lYK0ZFWXBEcWpjcnhiMGw4Q2p2OS90aC9VcDgrWkN4RTJmSFBOS2Iz?=
 =?utf-8?B?Nml4eWVZMm1MRVVrMmpBdGM3UzUzTVdYVWVodlkzZUxEM2NqYytTbEsweFMv?=
 =?utf-8?B?R0NXV1F5UVZhZVBhU0NIcmhWR2JTMUZ3V0xDVmhuTzhtVGZKeUljQS84RXJi?=
 =?utf-8?B?ZGs4ZFJMMmpoaUdlcGZOeDZwNVN2bE5idzdGRFpQR09UTi9VQk9ENzVqK1J0?=
 =?utf-8?B?bXU2MUE1eEJ1VE5JZW1vdklGT2p1blg1NVQzak9oUWhuYmt2QlhTUXJwM3Ir?=
 =?utf-8?B?Z2ZTRUtVY29pMkpxQ3FKRE9wSElQTUdOVnlBWTdBNEQ0L05IS3pIWnppRnJv?=
 =?utf-8?B?anVjNnBjeExNdzVPRjUwYklrMXZHTnZQczUzNDhXcGQzbzBjMFZ3Vy9pQ2VR?=
 =?utf-8?B?Mm9zbU5NR2FlZTh1LzQ2WEcxZlA3U2dwQzFyN1I4YjJkNHFHNllPZzc1Ykd3?=
 =?utf-8?B?Y3RVLzFpdzVCWVRETU5sZWxwZ2dOeGpHdjZwSWhCYWNwekR1ald5bDN3ajlx?=
 =?utf-8?Q?storvi+7UXuk9eKOrnXOMwlvE?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 26d3f413-5601-4715-7a2f-08dbd3dad721
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Oct 2023 15:15:07.0321
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: j0bOnrpKngkj/Dyz2mTGLvwn+PG6SdwxfCqb2gbwvZsGiwon44olTRfVqr4WtvHqgCW/wr8v18qfyvcAtxKXdA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR04MB7186

On 23.10.2023 17:00, Julien Grall wrote:
> 
> 
> On 23/10/2023 15:51, Nicola Vetrini wrote:
>> Hi,
> 
> Hi Nicola,
> 
>> while taking care of some patches regarding MISRA C Rule 2.1 (code 
>> shouldn't be unreachable), I
>> came across this function:
>>
>> long subarch_do_domctl(struct xen_domctl *domctl, struct domain *d,
>>                         XEN_GUEST_HANDLE_PARAM(xen_domctl_t) u_domctl)
>> {
>>      switch ( domctl->cmd )
>>      {
>>      case XEN_DOMCTL_set_address_size:
>>          switch ( domctl->u.address_size.size )
>>          {
>>          case 32:
>>              if ( !cpu_has_el1_32 )
>>                  return -EINVAL;
>>              /* SVE is not supported for 32 bit domain */
>>              if ( is_sve_domain(d) )
>>                  return -EINVAL;
>>              return switch_mode(d, DOMAIN_32BIT);
>>          case 64:
>>              return switch_mode(d, DOMAIN_64BIT);
>>          default:
>>              return -EINVAL;
>>          }
>>          break;
>>
>>      default:
>>          return -ENOSYS;
>>      }
>> }
>>
>> here the break after the innermost switch is clearly unreachable, but 
>> it's also guarding a possible fallthrough.
>> I can see a couple of solutions to this:
>>
>> - mark the part after the switch unreachable;
>> - introduce a variable 'long rc' to store the return value, and 
>> consequently rework the control flow of all the switches
>>    (e.g. rc = -EINVAL and similar);
>> - remove the break, but I consider this a risky move, unless -ENOSYS 
>> would be an ok value to be returned if some case
>>    from the switch above does not have a return statement.
> 
> - move the nested switch in a separate function, so the code in 
> subarch_do_domctl() can be replaced with:
> 
> return set_address_size(...);

But that would help only if inside the new function you still re-
layout the switch() (or replace it by, say, if/else-if/else),
wouldn't it?

Jan


From xen-devel-bounces@lists.xenproject.org Mon Oct 23 15:16:59 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 15:16:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621542.968106 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quwfl-00045K-GO; Mon, 23 Oct 2023 15:16:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621542.968106; Mon, 23 Oct 2023 15: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 1quwfl-00045D-DU; Mon, 23 Oct 2023 15:16:53 +0000
Received: by outflank-mailman (input) for mailman id 621542;
 Mon, 23 Oct 2023 15: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=gXaf=GF=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1quwfk-000455-67
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 15:16:52 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 30c51cb5-71b7-11ee-98d5-6d05b1d4d9a1;
 Mon, 23 Oct 2023 17:16:50 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id 58B5C4EE0747;
 Mon, 23 Oct 2023 17:16: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: 30c51cb5-71b7-11ee-98d5-6d05b1d4d9a1
MIME-Version: 1.0
Date: Mon, 23 Oct 2023 17:16:50 +0200
From: Nicola Vetrini <nicola.vetrini@bugseng.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>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, consulting@bugseng.com
Subject: Re: Refactor arm64/domctl.c 'subarch_do_domctl' to avoid unreachable
 break.
In-Reply-To: <a63ded4f-09b0-41c8-a9c9-832a12fc9133@xen.org>
References: <6c118d318d68ea3613d9a0a79d75c0c9@bugseng.com>
 <a63ded4f-09b0-41c8-a9c9-832a12fc9133@xen.org>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <902a34031e0173e1219f084560522d0d@bugseng.com>
X-Sender: nicola.vetrini@bugseng.com
Organization: BUGSENG s.r.l.
Content-Type: text/plain; charset=UTF-8;
 format=flowed
Content-Transfer-Encoding: 8bit

On 23/10/2023 17:00, Julien Grall wrote:
> On 23/10/2023 15:51, Nicola Vetrini wrote:
>> Hi,
> 
> Hi Nicola,
> 
>> while taking care of some patches regarding MISRA C Rule 2.1 (code 
>> shouldn't be unreachable), I
>> came across this function:
>> 
>> long subarch_do_domctl(struct xen_domctl *domctl, struct domain *d,
>>                         XEN_GUEST_HANDLE_PARAM(xen_domctl_t) u_domctl)
>> {
>>      switch ( domctl->cmd )
>>      {
>>      case XEN_DOMCTL_set_address_size:
>>          switch ( domctl->u.address_size.size )
>>          {
>>          case 32:
>>              if ( !cpu_has_el1_32 )
>>                  return -EINVAL;
>>              /* SVE is not supported for 32 bit domain */
>>              if ( is_sve_domain(d) )
>>                  return -EINVAL;
>>              return switch_mode(d, DOMAIN_32BIT);
>>          case 64:
>>              return switch_mode(d, DOMAIN_64BIT);
>>          default:
>>              return -EINVAL;
>>          }
>>          break;
>> 
>>      default:
>>          return -ENOSYS;
>>      }
>> }
>> 
>> here the break after the innermost switch is clearly unreachable, but 
>> it's also guarding a possible fallthrough.
>> I can see a couple of solutions to this:
>> 
>> - mark the part after the switch unreachable;
>> - introduce a variable 'long rc' to store the return value, and 
>> consequently rework the control flow of all the switches
>>    (e.g. rc = -EINVAL and similar);
>> - remove the break, but I consider this a risky move, unless -ENOSYS 
>> would be an ok value to be returned if some case
>>    from the switch above does not have a return statement.
> 
> - move the nested switch in a separate function, so the code in
> subarch_do_domctl() can be replaced with:
> 
> return set_address_size(...);
> 
>> 
>> What would be the preferred way of addressing this violation?
> 
> I would actually prefer the 4th option I suggested.
> 
> Cheers,

Would you mind sending the patch yourself?

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


From xen-devel-bounces@lists.xenproject.org Mon Oct 23 15:23:58 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 15:23:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621547.968118 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quwmV-0007MU-6u; Mon, 23 Oct 2023 15:23:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621547.968118; Mon, 23 Oct 2023 15:23: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 1quwmV-0007MN-2Q; Mon, 23 Oct 2023 15:23:51 +0000
Received: by outflank-mailman (input) for mailman id 621547;
 Mon, 23 Oct 2023 15:23: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=4wXt=GF=bugseng.com=simone.ballarin@srs-se1.protection.inumbo.net>)
 id 1quwmU-0007MD-Cg
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 15:23:50 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 28d5b1d3-71b8-11ee-9b0e-b553b5be7939;
 Mon, 23 Oct 2023 17:23:47 +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 3825F4EE0747;
 Mon, 23 Oct 2023 17:23: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: 28d5b1d3-71b8-11ee-9b0e-b553b5be7939
Message-ID: <0032186f-80c7-4dba-b46e-10d4a8e2a8cb@bugseng.com>
Date: Mon, 23 Oct 2023 17:23:45 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN PATCH 3/4] xen/include: add pure and const attributes
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>, xen-devel@lists.xenproject.org
References: <cover.1697638210.git.simone.ballarin@bugseng.com>
 <fd5421162a00aa782e0776324ff6497193c1e3d3.1697638210.git.simone.ballarin@bugseng.com>
 <89778285-5cba-8fb5-70bc-710b6dd30a10@suse.com>
From: Simone Ballarin <simone.ballarin@bugseng.com>
Organization: BUGSENG
In-Reply-To: <89778285-5cba-8fb5-70bc-710b6dd30a10@suse.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 23/10/23 15:34, Jan Beulich wrote:
> On 18.10.2023 16:18, Simone Ballarin wrote:
>> Add const and pure attributes to address reports
>> of MISRA C:2012 Rule 13.1: Initializer lists shall
>> not contain persistent side effects
>>
>> Add pure attribute to function pdx_to_pfn.
>> Add const attribute to functions generated by TYPE_SAFE.
>>
>> These functions are used in initializer lists: adding
>> the attributes ensures that no effect will be performed
>> by them.
> 
> Adding the attribute does, according to my understanding, ensure nothing
> The compiler may (but isn't required to) diagnose wrong uses of the
> attributes, but it may also make use of the attributes (on the
> declaration) without regard to the attribute potentially being wrongly
> applied. Since further for inline functions the compiler commonly infers
> attributes from the expanded code (discarding the attribute), the only
> thing achieved here is a documentation aspect, I think.

Yes, you're right. I will rephrase the commit message.


> 
>> --- a/xen/include/xen/pdx.h
>> +++ b/xen/include/xen/pdx.h
>> @@ -164,7 +164,7 @@ static inline unsigned long pfn_to_pdx(unsigned long pfn)
>>    * @param pdx Page index
>>    * @return Obtained pfn after decompressing the pdx
>>    */
>> -static inline unsigned long pdx_to_pfn(unsigned long pdx)
>> +static inline __attribute_pure__ unsigned long pdx_to_pfn(unsigned long pdx)
>>   {
>>       return (pdx & pfn_pdx_bottom_mask) |
>>              ((pdx << pfn_pdx_hole_shift) & pfn_top_mask);
> 
> Taking this as an example for what I've said above: The compiler can't
> know that the globals used by the functions won't change value. Even
> within Xen it is only by convention that these variables are assigned
> their values during boot, and then aren't changed anymore. Which makes
> me wonder: Did you check carefully that around the time the variables
> have their values established, no calls to the functions exist (which
> might then be subject to folding)?

There is no need to check that, the GCC documentation explicitly says:

However, functions declared with the pure attribute *can safely read any 
non-volatile objects*, and modify the value of objects in a way that 
does not affect their return value or the observable state of the program.

https://gcc.gnu.org/onlinedocs/gcc/Common-Function-Attributes.html

> Additionally - what about the sibling function pfn_to_pdx()?
> 
> Jan

I will add the attribute also to the sibling.

-- 
Simone Ballarin, M.Sc.

Field Application Engineer, BUGSENG (https://bugseng.com)



From xen-devel-bounces@lists.xenproject.org Mon Oct 23 15:33:48 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 15:33:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621551.968127 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quww4-000254-1P; Mon, 23 Oct 2023 15:33:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621551.968127; Mon, 23 Oct 2023 15: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 1quww3-00024x-Uw; Mon, 23 Oct 2023 15:33:43 +0000
Received: by outflank-mailman (input) for mailman id 621551;
 Mon, 23 Oct 2023 15: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=OVTz=GF=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1quww2-00021i-Hn
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 15:33:42 +0000
Received: from EUR01-DB5-obe.outbound.protection.outlook.com
 (mail-db5eur01on0612.outbound.protection.outlook.com
 [2a01:111:f400:fe02::612])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 8ab5004d-71b9-11ee-98d5-6d05b1d4d9a1;
 Mon, 23 Oct 2023 17:33:40 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DU2PR04MB8725.eurprd04.prod.outlook.com (2603:10a6:10:2dc::18)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.11; Mon, 23 Oct
 2023 15:33:39 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6933.011; Mon, 23 Oct 2023
 15:33: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: 8ab5004d-71b9-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=H5h3tR1O3G0NwyMPOurKNImK4gA+cxISZ0Gs0O8x6G1xguzGKR6Je2RXKjLtKlQiyltqS+oVkxK6TkZgPcy4vlGwQPol+BoyFJxJqkxswAmu27FGUjszizriKtu3xUJh3gQfcAHId5G2pjtjfudcUE5ATrBRBLejtftAThhyF3dozX6UOXiO7CziSK88chxzJ7mfBbdjy5D7kDpzEZeyByN/xX8zPe8kyhBRl9KzmZmjTIiEWYDeHxPkfEstOVFOCXF9LX7W/A26eZUqlePUR/PVRTS7Jt+/I/Sd+Ta6C3KPCNGtbbNKy3CtLMN/Wt3rrDfeZQhiErqT1uiLhTJ/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=Eu8I1csfJJwZm1xoT0r+iPBept1d5pITUiALTTVQBgs=;
 b=DiRBo9C7XteX/A7S1s+y+t6AuyViAnzZClLkNXLKZM6VoKYTHiCvVWdsRmw7kNMbd3Jz8mbdgNkaCG0DTUv899f1Om865d3hCpJKgf34ps5wgLD3cv4t4kOihw8pY92Khn7tyMikQhKS7FWvmd45Qp9a4RK9R/auui1yNqAf9kV6BcqBD6UNv+orPEKgcGj3IzXy4vZ8CAu06pI7YrGxi+nN5BQikluyaYItlGGmn4rAQ2mTTHM+1hRA1j/hOUAcF0hCorJHGqpeeqJS9llw20QPPvF8MmVSNq0WHehSV3g3g7rQrIu0Xwt+J5mtoHBcKQy5ex5X4xVzbj8b+XIbHA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=Eu8I1csfJJwZm1xoT0r+iPBept1d5pITUiALTTVQBgs=;
 b=tif3ELLJhrRXR3et34aRxpl+vKKc6570cgyMH6VqjyHpImfYRtkbFGIY9FlK5URXokLIww1lNSVFYBYVX1Yg9Ajsu1TNslRVUtRhaV8YdNi3vgVqx04SRY68biyoK7Sz+SiNVDkFqMwSPW5WGqUFhAtY7VrOntW2eXRvpnA2v5hw4diiuyAc10FkTGxP5jOrtW1fzKOxa5YxczEPVODMML2HwQacNLDVfsGILXjIlmG9/icWp7Uyxtzq8DR51Al/bAVt9irK0mjk9yfDWdmoFUjL5Fngaf8aXG5w6FBoTjIVinfaUHdPFecXpaP9wmgPPVKYR34pAa1faNFe1EgN0Q==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <e8bf9817-fd54-9bf4-4302-dcee682f9172@suse.com>
Date: Mon, 23 Oct 2023 17:33:37 +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 3/4] xen/include: add pure and const attributes
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>, xen-devel@lists.xenproject.org
References: <cover.1697638210.git.simone.ballarin@bugseng.com>
 <fd5421162a00aa782e0776324ff6497193c1e3d3.1697638210.git.simone.ballarin@bugseng.com>
 <89778285-5cba-8fb5-70bc-710b6dd30a10@suse.com>
 <0032186f-80c7-4dba-b46e-10d4a8e2a8cb@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <0032186f-80c7-4dba-b46e-10d4a8e2a8cb@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0040.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:c7::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_|DU2PR04MB8725:EE_
X-MS-Office365-Filtering-Correlation-Id: c1daa3d9-1af6-4d7f-ac7d-08dbd3dd6df1
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	qS5Lg+AqOi2P+tNhw5CAmbkKoD2x6w3dA64QOmn19GrK1iNfatNjlZ1nyJlrZJnBvdrMGvxWMNOlsZl6iSL+0XzHOSmPjhFR3KqqlhmaZpzkaNzkqLnHv5Bgj369xzpbie1c48dIPFZiRLqM0ob1Uak0mR9+oYOKwt0D+iaGUT+T2z/OckvUQXXrgIPWz9W+3Ltvq2xZQ4BqUn9aFBsj742Yj6vc488ELbDPqHyrZP4jmI1Epg9M9zUTLtshCBbUs0ChundWq5sTi7PQ0uD9lMk7PsXQaCHPiPW5ckxpiPiucVwPVRFKmPWzGr91vT+e+OmAN9KnBMQ5Cu0vrxoW4SiFcavEUFqTfvJREAXQK/VUsIQFzBKBNH0aRuGoEGEnna8TJQeR8Z/hIf1JCz5P9EHgbHOQOzyCCri9pLKYIQJYa7gUQi+v3cdXz3BsUuu9xPzj0OapEPIJhRe1Lkcn1jKKZoE8+ry/jSNut8Ez4z61dxCARZDzcYsP2vbf/OMLmybPcDoxWnmyFayJyIX1L6CPszz4O22hWwHyQGosmIkxi5LI29s8+TbNDPZ5W5zihqdzz92Npu1f07ks+xvpa2iOAyNAazkGsy7G7aPzEO7tzhfESa0uB00hPAFEx56SeVS1e9QF51pOmbqcUs/Arw==
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)(39860400002)(396003)(376002)(230922051799003)(64100799003)(451199024)(186009)(1800799009)(2906002)(31696002)(5660300002)(38100700002)(41300700001)(31686004)(86362001)(8936002)(4326008)(8676002)(36756003)(2616005)(54906003)(66946007)(66556008)(6512007)(316002)(6916009)(66476007)(6486002)(6506007)(53546011)(478600001)(26005)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?bjdEUSt1L0sxWS80L29MYU4xVHVVVTErbEJkRjZpbGdwTWxwQjJ5K09JamVU?=
 =?utf-8?B?WDZtamFRVlErMUQ2U1ZCdm5aZUdPOVVIbUJwOS9udlk0N1lTRU1ZdVkySjJh?=
 =?utf-8?B?MDZqczVIakdmWFpVOUtQaldDTm5RQ212SlQ0WVN6SUJZTVBZVjJXMVcxYzNN?=
 =?utf-8?B?WWROc2tDQjdxRlFKQjN1dkVwek9PU1Q4MGN5RkhWbUxBNUJEVTZGRTZKSDR5?=
 =?utf-8?B?eFprbHR5TXBja2RDNmxhQmJPR0psSnYwVUVwNjNTNUczRkpCd013ZWovTkl6?=
 =?utf-8?B?YkRCTXZvR09SZUpBMVl6bzVqR216b3lraEljWHFGeWNOS0g0aFI5U2NpbTVx?=
 =?utf-8?B?U3ZxWEtmNU5uN1pSUExuNkxRYWZJOFF2UDFQeE5CRnB0YlNCaG9PRHdNZHhQ?=
 =?utf-8?B?ZllDQnVZY0RhNWRzYUJWVlpGVHdGc3FCWlFyZXhnelhJVCtoYU43b2l5aE15?=
 =?utf-8?B?VXJuTkN3U3ZuU1dtWmU1cnVDdFVubWp5UEJiWWg1RlFEaENZU2FrSGlEcjhm?=
 =?utf-8?B?ZVFOSU9pTzlpWU40TjRDa1l5M1NCdXBvbkRUQkJSTXhXMTBoZnl5Rnc0N3dB?=
 =?utf-8?B?Z3k1SW9pajA0MmhWSUJKbHl2RTRDbWdZTWo1MmtJUjU1d1BxSGYwREJvNmJr?=
 =?utf-8?B?V0VtOVFRT1Q5bzJ0SzNpZFZLZUVkSTVnUmtiSm5rcXJPbUVuenBIN0Jra0ZJ?=
 =?utf-8?B?NVZWdG9mV3VKam8vVUladFpYaC9oaVIwRTFTWmhLeEZZT3l6Wk1EbHU3ZlRw?=
 =?utf-8?B?NFNlVkdWRjRUZnU1eU0zaWEzOHBtZ1UxQXFqMys1OTFNcnhoM3QvejUxby91?=
 =?utf-8?B?eFVXUnBSQXE2cFFsSXRraEVkUFA0MFUzTTdQRGxNemRqVWMzYUMxWDJ2bHRh?=
 =?utf-8?B?YmFaSEluOHVHTjZHbTJ3MkJXRlp1MnN3L1dhOWE2RGM0OCs3KzhmdGNscGdo?=
 =?utf-8?B?R2RacWoySVBYdXdhL1ZLREtvWUZOMkIxMEY3MVhiTkgvamFVTVZrWW1VdWdG?=
 =?utf-8?B?dHIvUlhOb0syWVAvRzRiOEhRcEp1SXhkSW9ZcFlOdEs0V2RnendKdjJVdXF1?=
 =?utf-8?B?eEVock5YV2hXUGkwWldsaTZRRUhST2J0L01VQmI5WnpyVm9HSWovcEhUUUFZ?=
 =?utf-8?B?citCL3cwb1NuN0h0ZElHSE1ZVnFwVFZHZkZ6S3Z6Ulh5UEdlbUFBaHZ4Skhz?=
 =?utf-8?B?ZTExNXdud2ZDMjdkUC9tR3g5QTF5QnFEK3Jjc0V1QkRhTnJDVlE2TXZlRG82?=
 =?utf-8?B?OE9xUUU4VXNjVFhmemtBR0trd1NMcEpidStrZXV3eXNoR2hkL1NieDh4Q0Nx?=
 =?utf-8?B?cHh1ZmVFTG9JaU5iRVJiUkUzdnZkNlVKL2h2cTZrV0s1VWtLV3EzeFJyZVQz?=
 =?utf-8?B?cnE5aTgwc0VWN1dsMWxOT2hrWEtuKzlrRFJudDFpZG1PcVcrOGlZWlZzL1Rr?=
 =?utf-8?B?eDdoL3Y2MkRWZWVJdnJDNjJqMExUMjdKK3UyTERkM1hZOFB6QkkvR09mU2JQ?=
 =?utf-8?B?Um9KM01SRkcraVh5cXZJM1NybEYvLzc3K0VtZkllS0NtRTdZdjVNU04xVEI3?=
 =?utf-8?B?ZzdrUGRWYlVFMW1HcEd6dGcvcjFPQVRsUHZ6N0FKc0lyekkzdkZyS2FqT3ZN?=
 =?utf-8?B?bEVZREJGZWlXUjVVZWxkQjNXOGRQUVc5Ny8rS0tUNG9kWC9kMkUyZkFjMmxw?=
 =?utf-8?B?V1FWNkh4RzlZV0pReFRjeTZHTi9tdld6YzFhSjZXN3pndHlydDZpK0pWMVBH?=
 =?utf-8?B?anFHQkdOTDROZkFjZGFRY29kbndmR0NiRkkyVHhpTnc2V21iRG9oUzBrVzVZ?=
 =?utf-8?B?NCtrNVBrTXVVeHJmelkxY1JOdVB6SURTL3Nnc3hmeGFYOHkrWTEyR25wcCtP?=
 =?utf-8?B?VUk1NitSK2lMemxmdi85K1AzczhadDVsZWsxUDdDaEI3NDQ0YXdFdm5POG1S?=
 =?utf-8?B?ejFMbVY3SWI4aU9YRzA0aHl1VC9YUDZxQmFlZU1rR2lIdXNGS3pGTW9iSnB0?=
 =?utf-8?B?djN4VGRpQWQxZWNxYjVVa1VkSXdSK3ljSGhmL1VHQ0poTVp0NkZUSUNlOTls?=
 =?utf-8?B?c29VWUJ4WXZOcWE5bVQydzVEUjlNUzA1Q1djdkI0OWpjejlHbm0xeGttcDdR?=
 =?utf-8?Q?x+2YujkQMHTTN5vv/c/FgD3ty?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: c1daa3d9-1af6-4d7f-ac7d-08dbd3dd6df1
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Oct 2023 15:33:39.0029
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: vSAX/eiWbZ8VzPlngVR28fgAv5f6cRfl9JYXYD9lpQUCPc0+OqrtDPeEpGenshbtJkiLWJerjkrs8OrcXav4Qg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU2PR04MB8725

On 23.10.2023 17:23, Simone Ballarin wrote:
> On 23/10/23 15:34, Jan Beulich wrote:
>> On 18.10.2023 16:18, Simone Ballarin wrote:
>>> --- a/xen/include/xen/pdx.h
>>> +++ b/xen/include/xen/pdx.h
>>> @@ -164,7 +164,7 @@ static inline unsigned long pfn_to_pdx(unsigned long pfn)
>>>    * @param pdx Page index
>>>    * @return Obtained pfn after decompressing the pdx
>>>    */
>>> -static inline unsigned long pdx_to_pfn(unsigned long pdx)
>>> +static inline __attribute_pure__ unsigned long pdx_to_pfn(unsigned long pdx)
>>>   {
>>>       return (pdx & pfn_pdx_bottom_mask) |
>>>              ((pdx << pfn_pdx_hole_shift) & pfn_top_mask);
>>
>> Taking this as an example for what I've said above: The compiler can't
>> know that the globals used by the functions won't change value. Even
>> within Xen it is only by convention that these variables are assigned
>> their values during boot, and then aren't changed anymore. Which makes
>> me wonder: Did you check carefully that around the time the variables
>> have their values established, no calls to the functions exist (which
>> might then be subject to folding)?
> 
> There is no need to check that, the GCC documentation explicitly says:
> 
> However, functions declared with the pure attribute *can safely read any 
> non-volatile objects*, and modify the value of objects in a way that 
> does not affect their return value or the observable state of the program.

I did quote this same text in response to what Andrew has said, but I also
did note there that this needs to be taken with a grain of salt: The
compiler generally assumes a single-threaded environment, i.e. no changes
to globals behind the back of the code it is processing.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Oct 23 15:36:44 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 15:36:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621554.968136 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quwyt-0003hK-Ii; Mon, 23 Oct 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 621554.968136; Mon, 23 Oct 2023 15:36: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 1quwyt-0003hD-FV; Mon, 23 Oct 2023 15:36:39 +0000
Received: by outflank-mailman (input) for mailman id 621554;
 Mon, 23 Oct 2023 15:36: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 1quwys-0003h1-AG; Mon, 23 Oct 2023 15:36: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 1quwys-0003O8-5k; Mon, 23 Oct 2023 15:36: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 1quwyr-0007TP-Nr; Mon, 23 Oct 2023 15:36:37 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1quwyr-0005An-NK; Mon, 23 Oct 2023 15:36: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=JMVmzywP5vxadJq1LKIafjuIiE46+wxgbaAyJHdCe8c=; b=kWjk+ABID3FS3U3auaEddyH/Rb
	KdbM4Qy23BlzxrjM6z3YJaQU+3qopS9XAFgXjP9koHScC1MkMx35JUr7A00+IH3SFTo3ESjUz+7ub
	ShwDqWTD+VkAbtyFLSy+IhyC/gK3cmPe2Zxmj/jIWqDm7LEwLEDeiC6xYeGNMSNt4oiI=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183494-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 183494: tolerable FAIL - PUSHED
X-Osstest-Failures:
    linux-linus:test-armhf-armhf-xl-credit1:host-ping-check-xen:fail:heisenbug
    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-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-armhf-armhf-libvirt: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-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-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-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-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-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu: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-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-raw:migrate-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-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd: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-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds: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-qcow2:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=05d3ef8bba77c1b5f98d941d8b2d4aeab8118ef1
X-Osstest-Versions-That:
    linux=fe3cfe869d5e0453754cf2b4c75110276b5e8527
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 23 Oct 2023 15:36:37 +0000

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

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-armhf-armhf-xl-credit1  10 host-ping-check-xen fail pass in 183496-retest

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-xl-credit1 15 migrate-support-check fail in 183496 never pass
 test-armhf-armhf-xl-credit1 16 saverestore-support-check fail in 183496 never pass
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183492
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183492
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183492
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183492
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183492
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183492
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183492
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183492
 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-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-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-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-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-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-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-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-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-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-qcow2 14 migrate-support-check        fail never pass

version targeted for testing:
 linux                05d3ef8bba77c1b5f98d941d8b2d4aeab8118ef1
baseline version:
 linux                fe3cfe869d5e0453754cf2b4c75110276b5e8527

Last test of basis   183492  2023-10-22 17:41:44 Z    0 days
Testing same since   183494  2023-10-23 02:28:17 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Linus Torvalds <torvalds@linux-foundation.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-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                                  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-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
   fe3cfe869d5e..05d3ef8bba77  05d3ef8bba77c1b5f98d941d8b2d4aeab8118ef1 -> tested/linux-linus


From xen-devel-bounces@lists.xenproject.org Mon Oct 23 15:39:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 15:39:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621566.968146 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qux1y-0004Jj-1t; Mon, 23 Oct 2023 15:39:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621566.968146; Mon, 23 Oct 2023 15:39: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 1qux1x-0004Jc-VY; Mon, 23 Oct 2023 15:39:49 +0000
Received: by outflank-mailman (input) for mailman id 621566;
 Mon, 23 Oct 2023 15:39: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=OVTz=GF=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qux1w-0004JW-5E
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 15:39:48 +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 651cf1aa-71ba-11ee-98d5-6d05b1d4d9a1;
 Mon, 23 Oct 2023 17:39:47 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DBBPR04MB7993.eurprd04.prod.outlook.com (2603:10a6:10:1eb::6) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.11; Mon, 23 Oct
 2023 15:39:45 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6933.011; Mon, 23 Oct 2023
 15:39: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: 651cf1aa-71ba-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=LRLUgmAOUgLAaFvRcWQnRTrxz1LiyRobPq7UYfBs5zJDZ7SFfeaUqWpIvmnaWgF/+sbJOtdAPW6SAl4aHsbMKNojIYfV35PR7CMLHYf1Juij/trhV4BUWBlos0jUByTX8KWV81GsSBuw3/PRbP1TKF/NU3d9BVcJXZsyDjSE/CqVG03N6DZE/38ua30y/XbJcBkz8Z6Pq/DTvzsUrpzv81Uq2eqYqDUtcMpJ7jlS0sYXO7RqKHtCSrP9WpA7dtkWvTEHf+9Qn/VIFU/nDEOhakr879X0A94o0//ya+S7npBMQXzO1Oe86zk6hjBJ++6M3RKUimEutmt0cJ4ThSEb2g==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=FosA09L9UM+5g8MR0p36ZAicTilrh6jSWEM4PcFOHsc=;
 b=DirLZ31s2uneh4NXJm50WunUQnlnRTtoeWzk/Is7fc9qmfXWJrNqczdAOxjPi8jc7nf5nyHjhVrvHiLEuTiei/7fnvTIPpOqiiugEFYmh1mthR/3aXmp5eTrsqEUgyEt/XmWLHi3yogrFSW8JY0U/gaAPp76LVKw1IowjiAu+WL5xXVKiTXr9ZxVnoU2i5lOmdSK/Uzq2KrZPkw1xHDBJbHyocRqaopd2YzE8nGJVD6ofAdnokENsnZfRr0/gpeU07wwXSCBO9qnZQv0m44w5OVqfyIu+H60rhRpESZ219iBBm2QcibqzX7nT4yCCQsVEmo2JqbHNcWMvUF1FlHbpQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=FosA09L9UM+5g8MR0p36ZAicTilrh6jSWEM4PcFOHsc=;
 b=ayg/GaduxVewa1DxddllILd6v4cfPMsVBuLD8bm7IFvoh2DlQWh0AjGfm4R/3A03qNNCyN4K+raMGmPJFCnzDnIy+fWc2L64sOv8lERt25kkN6j6SqW7jD9Ox0My32ZpBgORc3f6ZXk3Ort2hW/FAmOl0ZP+FhPvbA6Q40BXmv/bn3KPTr0OGgcsjwQ4QYMMA6wS8aLS6w0kz2zTEtrWzmqNpOSv0I4wtCaM6bkn7J9xX89gr37RScBu2xT/Erxo1V1XiI5haCzNAe86amm5y1mc2jEobKvZht7lKIpKwWG5c87nAUj8k/DRiFxsJrxqL1pzrCZiVt4xQE7EoBbLzg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <3045d321-c72a-36dd-baae-bc0f685a9c46@suse.com>
Date: Mon, 23 Oct 2023 17:39:42 +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][for-4.19 v3 5/8] x86/io_apic: address violation of
 MISRA C:2012 Rule 10.1
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.cooper3@citrix.com, roger.pau@citrix.com, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <cover.1697815135.git.nicola.vetrini@bugseng.com>
 <4db1f326a6dec164e2d3536caaedd9038407a6e7.1697815135.git.nicola.vetrini@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <4db1f326a6dec164e2d3536caaedd9038407a6e7.1697815135.git.nicola.vetrini@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR5P281CA0058.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:f0::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_|DBBPR04MB7993:EE_
X-MS-Office365-Filtering-Correlation-Id: 66b4aec0-d82d-4c52-fe94-08dbd3de4823
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	QZGBFuqsWoI9J3D2xtUTGP0E+dGqFwh+V37eVapWkQjN9dPHR9UvhsDZYFJWmtvMy6WC6+X5rYV8H41pEcVGUeWhwA3MvtkOAeDM3h+fN60Xc0fIt3LDg+Exf1qx9BmfAVCwKwUW2smDYCdO2/zi5yzxT8VFq/dZoL3/gMqehkgeWuY7wiWT1t9M9QnOF8WqKfzJ52lnI3dz7wDWFcGb7hKMG1W+jRO6fXVOXRzNPIqhCZdwTrcVteLfPD59mXeWFm+lsB+A8vwfrDycAr7HaAxfhpv8oJ7R5B9XSO6FasU/FuZ/nV9jWaTeSmQ2RWiBi3a0/jKWyryivmtwscDucg3DgGzMD/dz9IuTD7Phxc33E7dWYS/SO/gpvzdrfFTXmHZW2EVHqdWnMpf7hQIUg0jfsiF6Ir4ZtzQ+5YZiQ71RvsMbdwtL4IhltZXHirp+MJj82Bpodb51vulR9JBn4IMJ+0jKavqsUT6Nkdtk81xKW5a6AEOEsP3I6KAW3Nlufzmi48CcGL2TVnL6nLpLqC0GJGiVV/Ub4E65ieJIYsjNcYiz7yfH8SDdApFGr6l6tdYK9a0dDJZtnrQgD2ZKiHa0T07l4rXr4pHbmEXPsP4zUsXIydgieB1INzgvC+NHJtdLkKp7qPMVBrQMehAbWA==
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)(230922051799003)(1800799009)(64100799003)(451199024)(186009)(86362001)(66946007)(66476007)(66556008)(41300700001)(5660300002)(6916009)(6506007)(31696002)(316002)(6512007)(6666004)(6486002)(478600001)(36756003)(8936002)(4326008)(8676002)(7416002)(4744005)(2906002)(38100700002)(2616005)(26005)(53546011)(31686004)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?Z1hkNlFBZExXcTdGL0pLeVdvRVBSVlZBMklHTGNYQ2pGTXZaemx4eHlkdnJO?=
 =?utf-8?B?ZDh2T3NaRzdvRmpJaGZDVVk4Vk1Ga2RjczFiRTM5RnBtaCtlb0Q5TDFzMVhL?=
 =?utf-8?B?S2ZaSWpqdGtCNThVRjFDTDBUVEcvSmVaQTZsMjhsWTlZOXRVSVovY2pXL0hq?=
 =?utf-8?B?aEZpN0RrSDBiOEwyc09iVXZlaWxvVWpBakNrQmNBamhoL3BhdmVxZ08xTlo5?=
 =?utf-8?B?bTRFSC9RRzk5WXBVVThpV1VnQVRsQ3h3bENxekNXaFZlditVczY4djlBNVYw?=
 =?utf-8?B?RGx3dU04cUVoaDQ3L0VEQkdLVzc0aXF1SG0vTEVFdjNySzE5SmxSN3U2TEZl?=
 =?utf-8?B?WGdRS0w0ekd0S2NsNWNGS29DVGxhTGFPdXowUlF2REFLbTVlNWpqTUxubjdT?=
 =?utf-8?B?ZkJtNElrR0RPMEN2ejNiaDRZQkRvQm5kdEFDdTNhZ1dnZVZQMjVMemEvMXNM?=
 =?utf-8?B?WjN2Y01ZaWJiWXNaelhTNzJIa2x3alR4YzN3dTVqTVZkdWNEUFMrR2liSm9x?=
 =?utf-8?B?empwVlFtR1NONU5ybEN3dWhDdmZ6eXZBaUtQd0JSUmQ0bkgvZ0lTWGdXbGVU?=
 =?utf-8?B?SkJEVUVHcGtDL3ZLUXNHSVFhdEp5OUFCTHQvd0dXTXl1QWdBSHVldmJHSUtU?=
 =?utf-8?B?dE9nVVVzUkVUalNIdnh6YUE4NXlKdzBaT3FkU1FYbXoxQmtmbTMrUFIzRStW?=
 =?utf-8?B?dStoL2NqbTJHOU9saTJ3NHl5cW52MWJ3V1VHYTRoZkFHY3NxUFEvZmE2OE5T?=
 =?utf-8?B?d2loZVhaMEV3cUc1RVJRdmpZQnFaR1ZwVzVKQkplbjZoSzUvUVBkanQ5TGNy?=
 =?utf-8?B?RTh0aitrd1FRTFVrYTJHcGsyOWJHYk54TVQ1bng3Z2ZDSmxteURKZjFqSk4x?=
 =?utf-8?B?ai9MTkNIWTMvdG1TcXBqU3N3Q3hUMXllK2hncWpuaGdpRHJOTGN0OXpOVjBS?=
 =?utf-8?B?UFpNTUtJU0JGL2I3Qnh2MDFVUWRqdkhyVTQyeDRvSmp2Vnc0U3laSkZ3SGJl?=
 =?utf-8?B?YzlHcUNLZ084Sk1zeUdtbVFqMndNQ29sNDRQWm9nQ2o4allKMmRjc3I3V3Qz?=
 =?utf-8?B?b0ZrM2FDeWR1YTd1UDc3RGlYVmpJTDFmMlk1OXN6UjRSbGxyc0pWUTR3YlFK?=
 =?utf-8?B?QldCcTFBYkZQUzlOZE9RYzlCQWJjYmd6TVJwb010R0hxdkRJN2ZqUHN6WG4r?=
 =?utf-8?B?bi9lVWFNdkkvUTkyZGJDYTVZaEltQ1RnVnZ6NDJUbFNFUndGaHA1c3h1NW9n?=
 =?utf-8?B?VE9seW0vNkhYUlVRc1owSzQ5czNFL2dsd2pTYWMzdEw5S1k2S2Nkb1lVbytx?=
 =?utf-8?B?Qzdkdzh0ZFN2enNXZ3Q2SXQ4SGNTbjlHTURRTFhVQ01GVlhXQXh6SzNWdXhr?=
 =?utf-8?B?MzhUdDhwY211S0NOVW81MUJXNk8rSnNyMWZmczlSOXRtbCt5TFpqVzVmL0lW?=
 =?utf-8?B?NkF4cyt1QTNPclpJYVBIeEY3MmlaRk5VV000T0tWaDhqZXF0eGNzeHBsb1Rq?=
 =?utf-8?B?cFBoQnU1T2xaT2Rkb01YclZ4ZDh4S1dZeEVBMzdPU3ZKUFNiWUJzeFhNYWUr?=
 =?utf-8?B?d1VNUk51ZTVCQndYTVB4R0Y3THVXM0RNQ3I1OVluUXRBdVkzZGNoVkF0TWR4?=
 =?utf-8?B?YjhJMlRNa1UvczR4SVZYS1oyMkFmb3AxK2JDVmVycmdEZHBIUWFwd0FRRDd5?=
 =?utf-8?B?c0NtOGM2K3ZodkEvQ3I5OVJyTGQ0WUtHWkNla0xNMU00SDNKZHhUdG9xVThu?=
 =?utf-8?B?dWRMNmJidktySzVCY3RvVkQ0VmdrUEhzQXNLSVBjcXhsQVVLUzNyckN2dDRG?=
 =?utf-8?B?MXNITEcxSlo2YjViQytzUnkrK2ZNZ3VUN0p2R1BpMGZlejBDZVpaZThXT0FE?=
 =?utf-8?B?dkVRSThZY1l3bVh5VDVSRnh5ZC80WGpHbTFuV2I1Y1lQeHR0YTd1elpYWVFO?=
 =?utf-8?B?Y1JlUEZ1ZGkwc3krZmhxZTdNNkd2ZGNpazZZZnpObVNJdmgrT0g0STJleFRy?=
 =?utf-8?B?UG5pMlI4Rnk4Ylp0RUJZYk9leW01TE1sS1ZNdXF4WHBJYnYrM3JpUXdsTjhH?=
 =?utf-8?B?c09MandRMmZUN3ZKQ0J1NjlMeXpHYjFuazF2WUxRY2RWcWxTclEvZnEvVGV2?=
 =?utf-8?Q?NNJydBA4midY/Hvc15bUE9XU/?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 66b4aec0-d82d-4c52-fe94-08dbd3de4823
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Oct 2023 15:39:45.1254
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 54nGHGcEYPco6jXFoHolEt+fCl7XUeV++98q4aSer/WqzA4YY3gVjKTzr2LZggX0XH24mV0L6z31t54r9NGuHw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBBPR04MB7993

On 20.10.2023 17:28, Nicola Vetrini wrote:
> The definition of IO_APIC_BASE contains a sum of an essentially enum
> value (FIX_IO_APIC_BASE_0) that is positive with an index that, in all
> instances, is unsigned, therefore the former is cast to unsigned, so that
> the operands are of the same essential type.
> 
> No functional change.
> 
> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>

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




From xen-devel-bounces@lists.xenproject.org Mon Oct 23 16:07:39 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 16:07:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621569.968157 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quxSY-0002ul-6b; Mon, 23 Oct 2023 16:07:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621569.968157; Mon, 23 Oct 2023 16: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 1quxSY-0002ue-3c; Mon, 23 Oct 2023 16:07:18 +0000
Received: by outflank-mailman (input) for mailman id 621569;
 Mon, 23 Oct 2023 16:07: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 1quxSX-0002uY-8w
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 16:07: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 1quxSS-0004ev-8C; Mon, 23 Oct 2023 16:07:12 +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 1quxSR-0008Ft-VR; Mon, 23 Oct 2023 16:07: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:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=ZBMtGJjetSQnQbXa7XOgXe+3++qwCiG5K0OCIR/DCSI=; b=pYWQvasLyiLFaOdd6TI+dJ+SLQ
	Hvj7i7mbLUyNIJx0hLQMsaue8G0JtyXv7WYIepgfk5yJ0eJG6c/7h3e8R0xhmwYmOPTVh4jBEAU6B
	W8NZSY9zR4aSGIt7Yx/HkE+qxiRZD2gEn7JziZrkqrNkIBmwTflusztIhkRUnet8RWB8=;
Message-ID: <0f176fee-4ce9-4197-95d6-11eadb67df9d@xen.org>
Date: Mon, 23 Oct 2023 17:07:09 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: Refactor arm64/domctl.c 'subarch_do_domctl' to avoid unreachable
 break.
Content-Language: en-GB
To: Jan Beulich <jbeulich@suse.com>,
 Nicola Vetrini <nicola.vetrini@bugseng.com>
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, consulting@bugseng.com,
 Xen-devel <xen-devel@lists.xenproject.org>
References: <6c118d318d68ea3613d9a0a79d75c0c9@bugseng.com>
 <a63ded4f-09b0-41c8-a9c9-832a12fc9133@xen.org>
 <7e72632b-43dd-d2c5-f46a-d0c6de6bc81b@suse.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <7e72632b-43dd-d2c5-f46a-d0c6de6bc81b@suse.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

Hi Jan,

On 23/10/2023 16:15, Jan Beulich wrote:
> On 23.10.2023 17:00, Julien Grall wrote:
>>
>>
>> On 23/10/2023 15:51, Nicola Vetrini wrote:
>>> Hi,
>>
>> Hi Nicola,
>>
>>> while taking care of some patches regarding MISRA C Rule 2.1 (code
>>> shouldn't be unreachable), I
>>> came across this function:
>>>
>>> long subarch_do_domctl(struct xen_domctl *domctl, struct domain *d,
>>>                          XEN_GUEST_HANDLE_PARAM(xen_domctl_t) u_domctl)
>>> {
>>>       switch ( domctl->cmd )
>>>       {
>>>       case XEN_DOMCTL_set_address_size:
>>>           switch ( domctl->u.address_size.size )
>>>           {
>>>           case 32:
>>>               if ( !cpu_has_el1_32 )
>>>                   return -EINVAL;
>>>               /* SVE is not supported for 32 bit domain */
>>>               if ( is_sve_domain(d) )
>>>                   return -EINVAL;
>>>               return switch_mode(d, DOMAIN_32BIT);
>>>           case 64:
>>>               return switch_mode(d, DOMAIN_64BIT);
>>>           default:
>>>               return -EINVAL;
>>>           }
>>>           break;
>>>
>>>       default:
>>>           return -ENOSYS;
>>>       }
>>> }
>>>
>>> here the break after the innermost switch is clearly unreachable, but
>>> it's also guarding a possible fallthrough.
>>> I can see a couple of solutions to this:
>>>
>>> - mark the part after the switch unreachable;
>>> - introduce a variable 'long rc' to store the return value, and
>>> consequently rework the control flow of all the switches
>>>     (e.g. rc = -EINVAL and similar);
>>> - remove the break, but I consider this a risky move, unless -ENOSYS
>>> would be an ok value to be returned if some case
>>>     from the switch above does not have a return statement.
>>
>> - move the nested switch in a separate function, so the code in
>> subarch_do_domctl() can be replaced with:
>>
>> return set_address_size(...);
> 
> But that would help only if inside the new function you still re-
> layout the switch() (or replace it by, say, if/else-if/else),
> wouldn't it?

I am not sure why I would need to re-layout the switch. This should work 
(untested):

diff --git a/xen/arch/arm/arm64/domctl.c b/xen/arch/arm/arm64/domctl.c
index 14fc622e9956..8720d126c97d 100644
--- a/xen/arch/arm/arm64/domctl.c
+++ b/xen/arch/arm/arm64/domctl.c
@@ -33,27 +33,31 @@ static long switch_mode(struct domain *d, enum 
domain_type type)
      return 0;
  }

+static long set_address_size(struct domain *d, uint32_t address_size)
+{
+    switch ( address_size )
+    {
+    case 32:
+        if ( !cpu_has_el1_32 )
+            return -EINVAL;
+        /* SVE is not supported for 32 bit domain */
+        if ( is_sve_domain(d) )
+            return -EINVAL;
+        return switch_mode(d, DOMAIN_32BIT);
+    case 64:
+        return switch_mode(d, DOMAIN_64BIT);
+    default:
+        return -EINVAL;
+    }
+}
+
  long subarch_do_domctl(struct xen_domctl *domctl, struct domain *d,
                         XEN_GUEST_HANDLE_PARAM(xen_domctl_t) u_domctl)
  {
      switch ( domctl->cmd )
      {
      case XEN_DOMCTL_set_address_size:
-        switch ( domctl->u.address_size.size )
-        {
-        case 32:
-            if ( !cpu_has_el1_32 )
-                return -EINVAL;
-            /* SVE is not supported for 32 bit domain */
-            if ( is_sve_domain(d) )
-                return -EINVAL;
-            return switch_mode(d, DOMAIN_32BIT);
-        case 64:
-            return switch_mode(d, DOMAIN_64BIT);
-        default:
-            return -EINVAL;
-        }
-        break;
+        return set_address_size(d, domctl->u.address_size.size);

      default:
          return -ENOSYS;

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Mon Oct 23 16:37:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 16:37:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621573.968167 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quxw4-0001ep-Ib; Mon, 23 Oct 2023 16:37:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621573.968167; Mon, 23 Oct 2023 16:37: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 1quxw4-0001ei-FL; Mon, 23 Oct 2023 16:37:48 +0000
Received: by outflank-mailman (input) for mailman id 621573;
 Mon, 23 Oct 2023 16:37: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=S5HM=GF=amd.com=Stewart.Hildebrand@srs-se1.protection.inumbo.net>)
 id 1quxw2-0001ec-Qr
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 16:37:47 +0000
Received: from NAM11-CO1-obe.outbound.protection.outlook.com
 (mail-co1nam11on20616.outbound.protection.outlook.com
 [2a01:111:f400:7eab::616])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 7b3ebb59-71c2-11ee-9b0e-b553b5be7939;
 Mon, 23 Oct 2023 18:37:41 +0200 (CEST)
Received: from SN6PR04CA0102.namprd04.prod.outlook.com (2603:10b6:805:f2::43)
 by SA1PR12MB5658.namprd12.prod.outlook.com (2603:10b6:806:235::5)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.26; Mon, 23 Oct
 2023 16:37:37 +0000
Received: from SN1PEPF000252A1.namprd05.prod.outlook.com
 (2603:10b6:805:f2:cafe::e9) by SN6PR04CA0102.outlook.office365.com
 (2603:10b6:805:f2::43) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.33 via Frontend
 Transport; Mon, 23 Oct 2023 16:37:37 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 SN1PEPF000252A1.mail.protection.outlook.com (10.167.242.8) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6933.15 via Frontend Transport; Mon, 23 Oct 2023 16:37:37 +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, 23 Oct
 2023 11:37:36 -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; Mon, 23 Oct 2023 11:37: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: 7b3ebb59-71c2-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=YWuP4mFwfuIBZXZxNypaDlLc/m7SevPJPbNmOTXhv0fKdyTHDBYnVKRtJ1NPA/sUE+GGYiIEYvomtfrfMwLgmy88bPKErEhQzO5WA3QknG+WSsowo1/CYqtcqZ1k6dNqt0Mtl7xoKQaWQLAYKplO+pmyy8aC/g0PjqokBrqzCE2rtYaV5P0Uf7owJpIGNkpPwZLl0AArZxMp1lKnHPq0vz3aUI/vH+qqIHYa7VEw2J2c9hf9QaWK4Gkd8JfgPz1uQU6PdFWVWusPGBDa2cP5tfSTDztgvdPAIyPBSAkh8p0dyu7NsGWssqu9/Va4QN/OswdTxtiYYT3imK5Pqx77fQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=Sts18KoG3P9R+TzF0gjg1K4Eu54lv/xR0a8FI2qbN2Y=;
 b=RLDAyWSWEgeSvEmd47t1vhQD9xHjG4ZXOBuiPj+FXldUVFDpUEKYAv/foNqrTCtxjxU5Hi8zmvtUaZguX+koLYk/OncH042bUiBQVC4/yTTo/lARdH3o0Np6q+mhcfWBqRYq+0gSfQ62P5Xl4GiRoEiss5zB2zmo43VFdf/zrb9aL6NJszAYZqD1FO5ujAx3ZjjGnS7UNhYhz+tDvsIIXijfqm8ZlNJ3AFK5zJPytUfqw0ARY1noQEYJHEaaQ390fmD70J+40JZPFamUEOu/0oGuRtadBruLqIHLkp4YGiz0zAJrJFUwKDrHBZLWEycSc7n20+RAmH/wSbYgxwNLuQ==
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=Sts18KoG3P9R+TzF0gjg1K4Eu54lv/xR0a8FI2qbN2Y=;
 b=gauucPrZ1EaBgXsChnTVK7QpWd9rE+DxDuh1lfltXsJ3qZCLkdpI6ypNxyNAswkkHAw2A9cXR/cydXeFJD3NnacarqISUd8fTpPrb2NUcMLPnSng6O2sXyTW8DEkNwXalpJ5H66y1DoNdpz6KkKVlfwpDTYk6H9hkbkP0BFVNJs=
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>
Subject: [PATCH] xen/vpci: allow BAR write if value is the same
Date: Mon, 23 Oct 2023 12:36:07 -0400
Message-ID: <20231023163615.693462-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: SN1PEPF000252A1:EE_|SA1PR12MB5658:EE_
X-MS-Office365-Filtering-Correlation-Id: 464d2257-d8bc-46c8-262a-08dbd3e65db4
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	MCN/V295YYrusZ9zbmlrJ9cPDuzS35iBEOaGFWCX9uoW0QvWRNtWkRepX6EU+1UIEWvo3APDa1PZHHYmYO1qjuzST8LaU58MkkBSudnuVhaLENHMc2SmEklVqCkXoqVeDGeV31jFjXGt1P2gyPrNs413H2D+7NyEJ22XzNu4kyE7bl6RhxHiZ5KGZ+WQMASAzie5j1rxd3ajQ8O2LYoBQDy1iwJaQEZ4e5MPdqyrcPUslMBCS1mquWi5pYK6BfF5zh8cbTEvOPIgkzNlPbjhXptYbUW45JisNg1kCgzadb5J7KNh2aYdJBO9EgGNQTGMDKuVMhxrz/Y+LzLa8Bvve/FwZwm53LPCHNICHAex0l4EUOGM8VpIL4WyQvwo1D7fte5MWva8s5xDkP74LI2Gy687ZX2qPZdMpfFWvaJwjqEEDDKzg3Rm7Igq9PgScZAWc72W0NPHBUu69xZgRFQaJEpzzwxR2DF1gNz+rjSMNjsNUoN9727I5MWSBvzSWNoWqoEySBgAJgPBfYk4RlYNbpphcaECJsPbv3/yqbcMZLc/VfLjkMsLcYojoXATrFa/vhVDHRRKh1t3YGvLvJMHx/7n9Z89PDm5kid1hdZ3sGrtHwjT+D702Y/kA3gyEb16nFPCL/FQpjzl6evhia8H3SpOZFsIOt6yJyQiXF0zxBlBrtjvaSvVP3uktBVvcFVq/4LAYsNLANrdC24oILnJJFdHpBt0KPCTOh7Ioao5Rpe0/DX4xC7cEYRf12/aGTDLvgcSK4FmbUdmnf5/ZSAXxw==
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)(136003)(346002)(230922051799003)(82310400011)(186009)(64100799003)(1800799009)(451199024)(36840700001)(46966006)(40470700004)(54906003)(83380400001)(36860700001)(2616005)(26005)(336012)(426003)(1076003)(6666004)(36756003)(86362001)(47076005)(356005)(82740400003)(81166007)(40460700003)(41300700001)(4326008)(44832011)(8936002)(8676002)(478600001)(5660300002)(40480700001)(2906002)(6916009)(70586007)(70206006)(316002)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Oct 2023 16:37:37.0614
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 464d2257-d8bc-46c8-262a-08dbd3e65db4
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:
	SN1PEPF000252A1.namprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA1PR12MB5658

During xl pci-assignable-add, pciback may reset the device while memory decoding
(PCI_COMMAND_MEMORY) is enabled. After device reset, memory decoding may be
disabled in hardware, and the BARs may be zeroed/reset in hardware. However, Xen
vPCI still thinks memory decoding is enabled, and BARs will remain mapped in
p2m. In other words, memory decoding may become disabled and BARs reset in
hardware, bypassing the respective vPCI command and BAR register handlers.
Subsequently, when pciback attempts to restore state to the device, including
BARs, it happens to write the BARs before writing the command register.
Restoring/writing the BARs silently fails because Xen vPCI mistakenly thinks
memory decoding is enabled.

Fix the BAR write by allowing it to succeed if the value written is the same as
the Xen vPCI stored value. pciback will subsequently restore the command
register and the state of the BARs and memory decoding bit will then be in sync
between hardware and vPCI again.

While here, remove a nearby stray newline.

Signed-off-by: Stewart Hildebrand <stewart.hildebrand@amd.com>
---
Do we need similar handling in rom_write()?

We may consider additionally checking during bar_write() if the memory decoding
state has become out of sync between hardware and vPCI. During bar_write(), we
would check the device's memory decoding bit, compare it to our vPCI state, and
invoke modify_bars() if needed. Please let me know your thoughts.

I considered additionally checking if the hardware and vPCI memory decoding
state are out of sync in new cmd_read()/bar_read() handlers, and calling
modify_bars() if needed. However, I decided not to do this because it would
impose an unnecessary implication on the in-progress vPCI series with the
rwlock: calling modify_bars() would require holding the lock in write/exclusive
mode, whereas in vPCI read handlers we would only hold the lock in read mode.

I have only observed the inconsistency after device reset when pciback (i.e.
dom0/hardware domain) is restoring the state to the device. Since pciback will
also restore the command register, the state will be back in sync after pciback
is finished restoring the state.
---
 xen/drivers/vpci/header.c | 14 ++++++--------
 1 file changed, 6 insertions(+), 8 deletions(-)

diff --git a/xen/drivers/vpci/header.c b/xen/drivers/vpci/header.c
index 767c1ba718d7..446ecf539e89 100644
--- a/xen/drivers/vpci/header.c
+++ b/xen/drivers/vpci/header.c
@@ -430,19 +430,17 @@ static void cf_check bar_write(
 
     /*
      * Xen only cares whether the BAR is mapped into the p2m, so allow BAR
-     * writes as long as the BAR is not mapped into the p2m.
+     * writes as long as the BAR is not mapped into the p2m. If the value
+     * written is the current one allow the write regardless to ensure
+     * consistent state between hardware and vPCI.
      */
-    if ( bar->enabled )
+    if ( bar->enabled && val != (uint32_t)(bar->addr >> (hi ? 32 : 0)) )
     {
-        /* If the value written is the current one avoid printing a warning. */
-        if ( val != (uint32_t)(bar->addr >> (hi ? 32 : 0)) )
-            gprintk(XENLOG_WARNING,
-                    "%pp: ignored BAR %zu write while mapped\n",
-                    &pdev->sbdf, bar - pdev->vpci->header.bars + hi);
+        gprintk(XENLOG_WARNING, "%pp: ignored BAR %zu write while mapped\n",
+                &pdev->sbdf, bar - pdev->vpci->header.bars + hi);
         return;
     }
 
-
     /*
      * Update the cached address, so that when memory decoding is enabled
      * Xen can map the BAR into the guest p2m.

base-commit: bad1ac345b1910b820b8a703ad1b9f66412ea844
-- 
2.42.0



From xen-devel-bounces@lists.xenproject.org Mon Oct 23 17:52:43 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 17:52:43 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621584.968177 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quz6L-0006tV-0F; Mon, 23 Oct 2023 17:52:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621584.968177; Mon, 23 Oct 2023 17: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 1quz6K-0006tO-Tg; Mon, 23 Oct 2023 17:52:28 +0000
Received: by outflank-mailman (input) for mailman id 621584;
 Mon, 23 Oct 2023 17:52: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 1quz6J-0006tG-1e
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 17:52: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 1quz6I-0006wE-AU; Mon, 23 Oct 2023 17:52:26 +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 1quz6H-0000bv-UW; Mon, 23 Oct 2023 17:52: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:MIME-Version:Message-Id:Date:
	Subject:Cc:To:From; bh=hRO2GGoX6+45YvBpjJ1eCaCt0ah4Ev/ONZWQD2f+3Nk=; b=aYjazX
	WK5VNiEvzJhRjX51JXRXzvhj6Um7VtrOln8LD8OTj6T/3y9OZz6Ibt/YhY991pAHIJcvgUncN0gqN
	oEdZCqfNttCjkpY0PZlfCE7cQxyj+Zv4utg8VCy/wHZ4r1srPbtWNTQUfHnuiwUp0zHsYSrcVKAvH
	D58ZJd+VdhY=;
From: Julien Grall <julien@xen.org>
To: xen-devel@lists.xenproject.org
Cc: julien@xen.org,
	Julien Grall <jgrall@amazon.com>,
	Nicola Vetrini <nicola.vetrini@bugseng.com>
Subject: [PATCH for-4.19] xen/arm64: domctl: Avoid unreachable code in subarch_do_domctl()
Date: Mon, 23 Oct 2023 18:52:20 +0100
Message-Id: <20231023175220.42781-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>

The 'break' the XEN_DOMCTL_set_address_size is unreachable and tools
like Eclair will report as a violation of Misra Rule 2.1.

Furthermore, the nested switch is not very easy to read. So move
out the nested switch in a separate function to improve the
readability and hopefully address the MISRA violation.

Reported-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
Signed-off-by: Julien Grall <jgrall@amazon.com>

---

Only compiled tested. Waiting for the CI to confirm there is no
regression.
---
 xen/arch/arm/arm64/domctl.c | 34 +++++++++++++++++++---------------
 1 file changed, 19 insertions(+), 15 deletions(-)

diff --git a/xen/arch/arm/arm64/domctl.c b/xen/arch/arm/arm64/domctl.c
index 14fc622e9956..8720d126c97d 100644
--- a/xen/arch/arm/arm64/domctl.c
+++ b/xen/arch/arm/arm64/domctl.c
@@ -33,27 +33,31 @@ static long switch_mode(struct domain *d, enum domain_type type)
     return 0;
 }
 
+static long set_address_size(struct domain *d, uint32_t address_size)
+{
+    switch ( address_size )
+    {
+    case 32:
+        if ( !cpu_has_el1_32 )
+            return -EINVAL;
+        /* SVE is not supported for 32 bit domain */
+        if ( is_sve_domain(d) )
+            return -EINVAL;
+        return switch_mode(d, DOMAIN_32BIT);
+    case 64:
+        return switch_mode(d, DOMAIN_64BIT);
+    default:
+        return -EINVAL;
+    }
+}
+
 long subarch_do_domctl(struct xen_domctl *domctl, struct domain *d,
                        XEN_GUEST_HANDLE_PARAM(xen_domctl_t) u_domctl)
 {
     switch ( domctl->cmd )
     {
     case XEN_DOMCTL_set_address_size:
-        switch ( domctl->u.address_size.size )
-        {
-        case 32:
-            if ( !cpu_has_el1_32 )
-                return -EINVAL;
-            /* SVE is not supported for 32 bit domain */
-            if ( is_sve_domain(d) )
-                return -EINVAL;
-            return switch_mode(d, DOMAIN_32BIT);
-        case 64:
-            return switch_mode(d, DOMAIN_64BIT);
-        default:
-            return -EINVAL;
-        }
-        break;
+        return set_address_size(d, domctl->u.address_size.size);
 
     default:
         return -ENOSYS;
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Mon Oct 23 17:53:09 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 17:53:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621586.968187 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1quz6z-0007Mu-7h; Mon, 23 Oct 2023 17:53:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621586.968187; Mon, 23 Oct 2023 17: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 1quz6z-0007Mn-4i; Mon, 23 Oct 2023 17:53:09 +0000
Received: by outflank-mailman (input) for mailman id 621586;
 Mon, 23 Oct 2023 17:53: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 1quz6x-0007MZ-Vx
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 17:53: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 1quz6x-0006xF-C3; Mon, 23 Oct 2023 17:53: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 1quz6x-0000cQ-5J; Mon, 23 Oct 2023 17: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=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=3DFzGntOMvu4mJwoRn/udJ4iKXRLQXDP3ZE/ruP5f20=; b=T6KL39EhFM1GRnw6VZcoudlQCY
	XNoprUxJfEwpLvUfEffWbHjdGJndg5hnuM9cmms8OUD+5Edm2ZiNRtsRsS6HXzYhJvKHiW6/YNj8Z
	tCwWbCWAqCbU1fd+GR2zVRD/VFVztCm9hzzngnSDfs8GjKZhfHMji7BxeELKN0pxC+rs=;
Message-ID: <b2b8b5cc-3336-47aa-bb46-e0742e7e1b8d@xen.org>
Date: Mon, 23 Oct 2023 18:53:05 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: Refactor arm64/domctl.c 'subarch_do_domctl' to avoid unreachable
 break.
Content-Language: en-GB
To: Nicola Vetrini <nicola.vetrini@bugseng.com>
Cc: Xen-devel <xen-devel@lists.xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, consulting@bugseng.com
References: <6c118d318d68ea3613d9a0a79d75c0c9@bugseng.com>
 <a63ded4f-09b0-41c8-a9c9-832a12fc9133@xen.org>
 <902a34031e0173e1219f084560522d0d@bugseng.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <902a34031e0173e1219f084560522d0d@bugseng.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

Hi Nicola.

On 23/10/2023 16:16, Nicola Vetrini wrote:
> On 23/10/2023 17:00, Julien Grall wrote:
>> On 23/10/2023 15:51, Nicola Vetrini wrote:
>>> Hi,
>>
>> Hi Nicola,
>>
>>> while taking care of some patches regarding MISRA C Rule 2.1 (code 
>>> shouldn't be unreachable), I
>>> came across this function:
>>>
>>> long subarch_do_domctl(struct xen_domctl *domctl, struct domain *d,
>>>                         XEN_GUEST_HANDLE_PARAM(xen_domctl_t) u_domctl)
>>> {
>>>      switch ( domctl->cmd )
>>>      {
>>>      case XEN_DOMCTL_set_address_size:
>>>          switch ( domctl->u.address_size.size )
>>>          {
>>>          case 32:
>>>              if ( !cpu_has_el1_32 )
>>>                  return -EINVAL;
>>>              /* SVE is not supported for 32 bit domain */
>>>              if ( is_sve_domain(d) )
>>>                  return -EINVAL;
>>>              return switch_mode(d, DOMAIN_32BIT);
>>>          case 64:
>>>              return switch_mode(d, DOMAIN_64BIT);
>>>          default:
>>>              return -EINVAL;
>>>          }
>>>          break;
>>>
>>>      default:
>>>          return -ENOSYS;
>>>      }
>>> }
>>>
>>> here the break after the innermost switch is clearly unreachable, but 
>>> it's also guarding a possible fallthrough.
>>> I can see a couple of solutions to this:
>>>
>>> - mark the part after the switch unreachable;
>>> - introduce a variable 'long rc' to store the return value, and 
>>> consequently rework the control flow of all the switches
>>>    (e.g. rc = -EINVAL and similar);
>>> - remove the break, but I consider this a risky move, unless -ENOSYS 
>>> would be an ok value to be returned if some case
>>>    from the switch above does not have a return statement.
>>
>> - move the nested switch in a separate function, so the code in
>> subarch_do_domctl() can be replaced with:
>>
>> return set_address_size(...);
>>
>>>
>>> What would be the preferred way of addressing this violation?
>>
>> I would actually prefer the 4th option I suggested.
>>
>> Cheers,
> 
> Would you mind sending the patch yourself?

No. It is sent: 
https://lore.kernel.org/20231023175220.42781-1-julien@xen.org

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Mon Oct 23 19:10:59 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 19:10:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621595.968198 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qv0K4-0003TY-Pt; Mon, 23 Oct 2023 19:10:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621595.968198; Mon, 23 Oct 2023 19:10: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 1qv0K4-0003TR-KL; Mon, 23 Oct 2023 19:10:44 +0000
Received: by outflank-mailman (input) for mailman id 621595;
 Mon, 23 Oct 2023 19:10: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 1qv0K3-0003TH-Ry; Mon, 23 Oct 2023 19:10: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 1qv0K3-0000VB-On; Mon, 23 Oct 2023 19:10: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 1qv0K3-0004W4-7J; Mon, 23 Oct 2023 19:10:43 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qv0K3-00070F-6j; Mon, 23 Oct 2023 19: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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=XZA2FMQBPF8fG7LGJTc+5Gtgeb2ife1DVnu3+I533iE=; b=fv2GBItlnG6q12bSJPGbLAPYmj
	84upAs1cHDPKQyBk61aWxTmXQVYA9kECHA2Uib4/tb/GZXfhV7wncVg795xIQRCDtNmCtvAwS/Ibt
	O9BXuFZvsFzI9DFY7M4f2aRKPoSsFB+QxHHPGh1xiQnfaKh/3Qa+qDmxgkZBKIx8Mqeo=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183498-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 183498: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=ec7f73436646a9232c6494d1ce23fb38000e10d3
X-Osstest-Versions-That:
    ovmf=c591395f4ab5359c14e783481473685cf432fe75
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 23 Oct 2023 19:10:43 +0000

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

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

Last test of basis   183445  2023-10-20 13:10:42 Z    3 days
Testing same since   183498  2023-10-23 17:10:46 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Jeshua Smith <jeshuas@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
   c591395f4a..ec7f734366  ec7f73436646a9232c6494d1ce23fb38000e10d3 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Mon Oct 23 20:45:07 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 20:45:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621600.968207 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qv1nA-0007gP-8B; Mon, 23 Oct 2023 20:44:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621600.968207; Mon, 23 Oct 2023 20:44: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 1qv1nA-0007gI-59; Mon, 23 Oct 2023 20:44:52 +0000
Received: by outflank-mailman (input) for mailman id 621600;
 Mon, 23 Oct 2023 20:44: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=D6cm=GF=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qv1n8-0007gB-2E
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 20:44:50 +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 0049a1de-71e5-11ee-98d5-6d05b1d4d9a1;
 Mon, 23 Oct 2023 22:44:47 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by sin.source.kernel.org (Postfix) with ESMTP id CE8E6CE0A3A;
 Mon, 23 Oct 2023 20:44:42 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 378DBC433C8;
 Mon, 23 Oct 2023 20:44: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: 0049a1de-71e5-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1698093882;
	bh=hAsItAsSdyw+E7ZcT2q2kGAtDwdPUvbXU2Yu8czJIDs=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=SVLClc9dyC1CXeVxYCIUFv8cFlqfrLGBqu2I55AId6nRzQRtz8GBhho/Ssrdm3z6W
	 sRpeGLKwEAn1KpbOqw2clApByY59jfxbJoDdJAKL127w8nKFwsdW43uE2febw6zVob
	 DqXbeynRLyS3GG5afCjqwCCavaNwH/ZdvrZJyNhrtY4uBBkV1ikqnY6l1H8xhsNEpP
	 CvjxeSjF3EdR5sE+ksFJA08+ja47vRuPsx4gznqo18eExDJD1qzZRo6zu9gTJN7Zec
	 gyhiC4eU57JVFVkXvBItk2v+bUG8i1A8PkWPZsZkzrHwht5EU3Y1N10LFldFBf813z
	 njuUmLf1MlSMg==
Date: Mon, 23 Oct 2023 13:44:34 -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.cooper3@citrix.com, roger.pau@citrix.com, 
    Simone Ballarin <simone.ballarin@bugseng.com>, 
    Doug Goldstein <cardoe@cardoe.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][for-4.19 v3 1/8] xen/include: add macro LOWEST_BIT
In-Reply-To: <5475d9e5-ec1c-7f71-ee77-59ec2e6ee01e@suse.com>
Message-ID: <alpine.DEB.2.22.394.2310231340320.3516@ubuntu-linux-20-04-desktop>
References: <cover.1697815135.git.nicola.vetrini@bugseng.com> <546cf30aa43d6d0687a9a6c6d23b11128e5783e8.1697815135.git.nicola.vetrini@bugseng.com> <f504772a-68b4-fbfa-e7d4-8d22992c7944@suse.com> <f23a1f95916bd61ddcd5002428d8876c@bugseng.com>
 <6d113a237846c7a41aa083e806f172e7@bugseng.com> <5475d9e5-ec1c-7f71-ee77-59ec2e6ee01e@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, 23 Oct 2023, Jan Beulich wrote:
> On 23.10.2023 15:19, Nicola Vetrini wrote:
> > On 23/10/2023 11:19, Nicola Vetrini wrote:
> >> On 23/10/2023 09:48, Jan Beulich wrote:
> >>> On 20.10.2023 17:28, Nicola Vetrini wrote:
> >>>> --- a/automation/eclair_analysis/ECLAIR/deviations.ecl
> >>>> +++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
> >>>> @@ -246,6 +246,12 @@ constant expressions are required.\""
> >>>>    "any()"}
> >>>>  -doc_end
> >>>>
> >>>> +-doc_begin="The macro LOWEST_BIT encapsulates a well-known pattern 
> >>>> to obtain the value
> >>>> +2^ffs(x) for unsigned integers on two's complement architectures
> >>>> +(all the architectures supported by Xen satisfy this requirement)."
> >>>> +-config=MC3R1.R10.1,reports+={safe, 
> >>>> "any_area(any_loc(any_exp(macro(^LOWEST_BIT$))))"}
> >>>> +-doc_end
> >>>
> >>> This being deviated this way (rather than by SAF-* comments) wants
> >>> justifying in the description. You did reply to my respective
> >>> comment on v2, but such then (imo) needs propagating into the actual
> >>> patch as well.
> >>>
> >>
> >> Sure, will do.
> >>
> >>>> --- a/docs/misra/deviations.rst
> >>>> +++ b/docs/misra/deviations.rst
> >>>> @@ -192,6 +192,13 @@ Deviations related to MISRA C:2012 Rules:
> >>>>         See automation/eclair_analysis/deviations.ecl for the full 
> >>>> explanation.
> >>>>       - Tagged as `safe` for ECLAIR.
> >>>>
> >>>> +   * - R10.1
> >>>> +     - The well-known pattern (x & -x) applied to unsigned integer 
> >>>> values on 2's
> >>>> +       complement architectures (i.e., all architectures supported 
> >>>> by Xen), used
> >>>> +       to obtain the value 2^ffs(x), where ffs(x) is the position of 
> >>>> the first
> >>>> +       bit set. If no bits are set, zero is returned.
> >>>> +     - Tagged as `safe` for ECLAIR.
> >>>
> >>> In such an explanation there shall not be any ambiguity. Here I see
> >>> an issue with ffs() returning 1-based bit position numbers, which
> >>> isn't in line with the use in 2^ffs(x). (Arguably use of ^ itself is
> >>> also problematic, as that's XOR in C, not POW. I'd suggest 2^^ffs(x)
> >>> or 2**ffs(x).)
> >>>
> >>
> >> Makes sense, I think I'll use an plain english explanation to avoid
> >> any confusion
> >> about notation.
> >>
> >>>> --- a/xen/include/xen/macros.h
> >>>> +++ b/xen/include/xen/macros.h
> >>>> @@ -8,8 +8,11 @@
> >>>>  #define DIV_ROUND(n, d) (((n) + (d) / 2) / (d))
> >>>>  #define DIV_ROUND_UP(n, d) (((n) + (d) - 1) / (d))
> >>>>
> >>>> -#define MASK_EXTR(v, m) (((v) & (m)) / ((m) & -(m)))
> >>>> -#define MASK_INSR(v, m) (((v) * ((m) & -(m))) & (m))
> >>>> +/* Returns the 2^ffs(x) or 0, where ffs(x) is the index of the 
> >>>> lowest set bit */
> >>>> +#define LOWEST_BIT(x) ((x) & -(x))
> >>>
> >>> I'm afraid my concern regarding this new macro's name (voiced on v2) 
> >>> hasn't
> >>> been addressed (neither verbally nor by finding a more suitable name).
> >>>
> >>> Jan
> >>
> >> I didn't come up with much better names, so I left it as is. Here's a 
> >> few ideas:
> >>
> >> - LOWEST_SET
> >> - MASK_LOWEST_SET
> >> - MASK_LOWEST_BIT
> >> - MASK_FFS_0
> >> - LOWEST_ONE
> >>
> >> and also yours, included here for convenience, even though you felt it
> >> was too long:
> >>
> >> - ISOLATE_LOW_BIT()
> >>
> >> All maintainers from THE REST are CC-ed, so we can see if anyone has
> >> any suggestion.
> > 
> > There's also LOWEST_BIT_MASK as another possible name.
> 
> While naming-wise okay to me, it has the same "too long" issue as
> ISOLATE_LOW_BIT(). Considering x86, in the BMI ISA extension, has an
> insn doing exactly that (BLSI), taking inspiration from its mnemonic
> may also be an option.

I don't mean to make things difficult but I prefer LOWEST_BIT or
MASK_LOWEST_BIT. It is clear at first glance. BLSI is not as clear,
unless you work on the specific ISA with BLSI.

In general, I do appreciate shorter names, but if one option is much
clearer than the other, I prefer clarity over shortness.

Maybe we need a third opinion here to make progress a bit faster.
Julien?


From xen-devel-bounces@lists.xenproject.org Mon Oct 23 20:47:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 20:47:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621603.968217 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qv1pP-0008Hp-Oh; Mon, 23 Oct 2023 20:47:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621603.968217; Mon, 23 Oct 2023 20:47: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 1qv1pP-0008Hi-LY; Mon, 23 Oct 2023 20:47:11 +0000
Received: by outflank-mailman (input) for mailman id 621603;
 Mon, 23 Oct 2023 20:47: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=D6cm=GF=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qv1pP-0008HZ-7T
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 20:47:11 +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 53dda1a9-71e5-11ee-9b0e-b553b5be7939;
 Mon, 23 Oct 2023 22:47:08 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by sin.source.kernel.org (Postfix) with ESMTP id B7AA4CE2920;
 Mon, 23 Oct 2023 20:47:05 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 30FDBC433C7;
 Mon, 23 Oct 2023 20:47: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: 53dda1a9-71e5-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1698094025;
	bh=cRIfhJcsDJAViDFOgj91MJrJNHMFi7Er78QeG3Gfqs4=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=tfw1j1AFhuCrB5R5GJm19DTge8iE+GLW06zpexVbur+2PelWTbuWvkVPhUPML0T9I
	 7Fukvv+gAt0wHIw5n0GR/t760/6BS5bmrfF1ei84Nosbav9/WY9jvykAoDac6A5X4d
	 8uV5TtmPcZZP9YFimcwsMsz+7MjQAXePTtRgAYlgJJ+Xr83mJLqL+5mYSW8DHuokMQ
	 uIQUCZsvb1uMGmF/syRcppGbqpYxDNfqlhU2T9Com/7i0rJNYhDhrDJmBC0uYD4LrP
	 kNN7Vue0bTzzKerEM0BIQ+ID8t6OURSrMk7tgKiNKzW/2NCaIDk67G6KSytV6j5JnG
	 +8Ic1XVpjOwVw==
Date: Mon, 23 Oct 2023 13:47:01 -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 <stefano.stabellini@amd.com>, 
    Stefano Stabellini <sstabellini@kernel.org>, 
    Simone Ballarin <simone.ballarin@bugseng.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
Subject: Re: [XEN PATCH v2 00/10] address violations of MISRA C:2012 Directive
 4.10
In-Reply-To: <36e6dd08-918c-9791-0dab-ca75d4b98d7e@suse.com>
Message-ID: <alpine.DEB.2.22.394.2310231346370.3516@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> <725f5193-c8d3-1bc8-cd62-2a2b1b5ecc01@suse.com> <alpine.DEB.2.22.394.2310171709310.965337@ubuntu-linux-20-04-desktop>
 <ead797ed-84cc-fb70-5259-7e11211d049e@suse.com> <alpine.DEB.2.22.394.2310181739270.965337@ubuntu-linux-20-04-desktop> <e642bc2a-cefa-4ee4-6394-3c10102e8164@suse.com> <alpine.DEB.2.22.394.2310190915590.1945130@ubuntu-linux-20-04-desktop>
 <6374f0f4-d58f-83ca-6eb3-d5a9fcbac525@suse.com> <alpine.DEB.2.22.394.2310201622160.2356865@ubuntu-linux-20-04-desktop> <36e6dd08-918c-9791-0dab-ca75d4b98d7e@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, 23 Oct 2023, Jan Beulich wrote:
> On 21.10.2023 01:26, Stefano Stabellini wrote:
> > On Fri, 20 Oct 2023, Jan Beulich wrote:
> >> On 19.10.2023 18:19, Stefano Stabellini wrote:
> >>> On Thu, 19 Oct 2023, Jan Beulich wrote:
> >>>> On 19.10.2023 02:44, Stefano Stabellini wrote:
> >>>>> On Wed, 18 Oct 2023, Jan Beulich wrote:
> >>>>>> On 18.10.2023 02:48, Stefano Stabellini wrote:
> >>>>>>> On Mon, 16 Oct 2023, Jan Beulich wrote:
> >>>>>>>> On 29.09.2023 00:24, Stefano Stabellini wrote:
> >>>>>>>>> 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:
> >>>>>>>>
> >>>>>>>> ... "least resistance" won't gain us much, as hardly any guards don't
> >>>>>>>> start with an underscore.
> >>>>>>>>
> >>>>>>>>> - 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__ ?
> >>>>>>>>
> >>>>>>>> There are no headers in xen/include/. For (e.g.) xen/include/xen/ we
> >>>>>>>> may go with XEN_BLAH_H; whether ASM prefixes are needed I'm not sure;
> >>>>>>>> we could go with just ARM_BLAH_H and X86_BLAH_H?
> >>>>>>>>
> >>>>>>>> The primary question though is (imo) how to deal with private headers,
> >>>>>>>> such that the risk of name collisions is as small as possible.
> >>>>>>>
> >>>>>>> Looking at concrete examples under xen/include/xen:
> >>>>>>> xen/include/xen/mm.h __XEN_MM_H__
> >>>>>>> xen/include/xen/dm.h __XEN_DM_H__
> >>>>>>> xen/include/xen/hypfs.h __XEN_HYPFS_H__
> >>>>>>>
> >>>>>>> So I think we should do for consistency:
> >>>>>>> xen/include/xen/blah.h __XEN_BLAH_H__
> >>>>>>>
> >>>>>>> Even if we know the leading underscore are undesirable, in this case I
> >>>>>>> would prefer consistency.
> >>>>>>
> >>>>>> I'm kind of okay with that. FTAOD - here and below you mean to make this
> >>>>>> one explicit first exception from the "no new leading underscores" goal,
> >>>>>> for newly added headers?
> >>>>>
> >>>>> Yes. The reason is for consistency with the existing header files.
> >>>>>
> >>>>>
> >>>>>>> On the other hand looking at ARM examples:
> >>>>>>> xen/arch/arm/include/asm/traps.h __ASM_ARM_TRAPS__
> >>>>>>> xen/arch/arm/include/asm/time.h __ARM_TIME_H__
> >>>>>>> xen/arch/arm/include/asm/sysregs.h __ASM_ARM_SYSREGS_H
> >>>>>>> xen/arch/arm/include/asm/io.h _ASM_IO_H
> >>>>>>>
> >>>>>>> And also looking at x86 examples:
> >>>>>>> xen/arch/x86/include/asm/paging.h _XEN_PAGING_H
> >>>>>>> xen/arch/x86/include/asm/p2m.h _XEN_ASM_X86_P2M_H
> >>>>>>> xen/arch/x86/include/asm/io.h _ASM_IO_H
> >>>>>>>
> >>>>>>> Thet are very inconsistent.
> >>>>>>>
> >>>>>>>
> >>>>>>> So for ARM and X86 headers I think we are free to pick anything we want,
> >>>>>>> including your suggested ARM_BLAH_H and X86_BLAH_H. Those are fine by
> >>>>>>> me.
> >>>>>>
> >>>>>> To be honest, I'd prefer a global underlying pattern, i.e. if common
> >>>>>> headers are "fine" to use leading underscores for guards, arch header
> >>>>>> should, too.
> >>>>>
> >>>>> I am OK with that too. We could go with:
> >>>>> __ASM_ARM_BLAH_H__
> >>>>> __ASM_X86_BLAH_H__
> >>>>>
> >>>>> I used "ASM" to make it easier to differentiate with the private headers
> >>>>> below. Also the version without "ASM" would work but it would only
> >>>>> differ with the private headers in terms of leading underscores. I
> >>>>> thought that also having "ASM" would help readability and help avoid
> >>>>> confusion.
> >>>>>
> >>>>>
> >>>>>>> For private headers such as:
> >>>>>>> xen/arch/arm/vuart.h __ARCH_ARM_VUART_H__
> >>>>>>> xen/arch/arm/decode.h __ARCH_ARM_DECODE_H_
> >>>>>>> xen/arch/x86/mm/p2m.h __ARCH_MM_P2M_H__
> >>>>>>> xen/arch/x86/hvm/viridian/private.h X86_HVM_VIRIDIAN_PRIVATE_H
> >>>>>>>
> >>>>>>> More similar but still inconsistent. I would go with ARCH_ARM_BLAH_H and
> >>>>>>> ARCH_X86_BLAH_H for new headers.
> >>>>>>
> >>>>>> I'm afraid I don't like this, as deeper paths would lead to unwieldy
> >>>>>> guard names. If we continue to use double-underscore prefixed names
> >>>>>> in common and arch headers, why don't we demand no leading underscores
> >>>>>> and no path-derived prefixes in private headers? That'll avoid any
> >>>>>> collisions between the two groups.
> >>>>>
> >>>>> OK, so for private headers:
> >>>>>
> >>>>> ARM_BLAH_H
> >>>>> X86_BLAH_H
> >>>>>
> >>>>> What that work for you?
> >>>>
> >>>> What are the ARM_ and X86_ prefixes supposed to indicate here? Or to ask
> >>>> differently, how would you see e.g. common/decompress.h's guard named?
> >>>
> >>> I meant that:
> >>>
> >>> xen/arch/arm/blah.h would use ARM_BLAH_H
> >>> xen/arch/x86/blah.h would use X86_BLAH_H
> >>>
> >>> You have a good question on something like xen/common/decompress.h and
> >>> xen/common/event_channel.h.  What do you think about:
> >>>
> >>> COMMON_BLAH_H, so specifically COMMON_DECOMPRESS_H
> >>>
> >>> otherwise:
> >>>
> >>> XEN_BLAH_H, so specifically XEN_DECOMPRESS_H
> >>>
> >>> I prefer COMMON_BLAH_H but I think both versions are OK.
> >>
> >> IOW you disagree with my earlier "... and no path-derived prefixes",
> >> and you prefer e.g. DRIVERS_PASSTHROUGH_VTD_DMAR_H as a consequence?
> >> FTAOD my earlier suggestion was simply based on the observation that
> >> the deeper the location of a header in the tree, the more unwieldy
> >> its guard name would end up being if path prefixes were to be used.
> > 
> > I don't have a strong opinion on "path-derived prefixes". I prefer
> > consistency and easy-to-figure-out guidelines over shortness.
> > 
> > The advantage of a path-derived prefix is that it is trivial to figure
> > out at first glance. If we can come up with another system that is also
> > easy then fine. Do you have a suggestion? If so, sorry I missed it.
> 
> Well, I kind of implicitly suggested "no path derived prefixes for private
> headers", albeit realizing that there's a chance then of guards colliding.
> I can't think of a good scheme which would fit all goals (no collisions,
> uniformity, and not unduly long).

Here I think we would benefit from a third opinion. Julien? Anyone?


From xen-devel-bounces@lists.xenproject.org Mon Oct 23 20:50:36 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 20:50:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621607.968228 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qv1se-0001JQ-8m; Mon, 23 Oct 2023 20:50:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621607.968228; Mon, 23 Oct 2023 20:50: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 1qv1se-0001JJ-3a; Mon, 23 Oct 2023 20:50:32 +0000
Received: by outflank-mailman (input) for mailman id 621607;
 Mon, 23 Oct 2023 20:50: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=F7kl=GF=casper.srs.infradead.org=BATV+91fa634947ba19782c4e+7365+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qv1sb-0001JD-J4
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 20:50:30 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id cb41a5bf-71e5-11ee-98d5-6d05b1d4d9a1;
 Mon, 23 Oct 2023 22:50:27 +0200 (CEST)
Received: from [2001:8b0:10b:5:545e:5208:5de0:9d33]
 (helo=u3832b3a9db3152.ant.amazon.com)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qv1sV-00Fw6k-0u; Mon, 23 Oct 2023 20: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>
X-Inumbo-ID: cb41a5bf-71e5-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=MIME-Version:Content-Type:Date:Cc:To:
	From:Subject:Message-ID:Sender:Reply-To:Content-Transfer-Encoding:Content-ID:
	Content-Description:In-Reply-To:References;
	bh=O80/DgkQXsRtr8Qsj2IUAKR7audyfvwsPYnnmQxMmQU=; b=Zxg8RCOSY8tU7rTJ+5oEvRL3F6
	qpVKvJJaTDCCI2GjW+QvZCZ2zOp/6Kpj3gaCgXIh5lKEaz7WfsYZZz7BLWUJHMV/w1/4dd7k34xUz
	FzgFBbmtWkpr6sCNipPa3A7ge3xZAB9NEAHTjqMuMajj/ZTZ0cGWBiTcC7e7wevOJ8KCeX2jnd9nK
	H0MkFVCtAS4dJpNxfSLuWuPic3SQr1mFCdPeiSsWyaV7L0kKcM3Ulo6Y4O9BaTAvlsYf+aSmxzbTt
	JvMAkQ65ma7qUYuj0/xLoAh+NWAMjnb9eGlFq7jZSBKuY4qQdNhlbD+qDhyXK2pBMrDXw0SFUc8Qr
	5N2bMrVQ==;
Message-ID: <b28fff67f7501e4713af9b8c777f853cc44d6c6f.camel@infradead.org>
Subject: Lockdep show 6.6-rc regression in Xen HVM CPU hotplug
From: David Woodhouse <dwmw2@infradead.org>
To: Juergen Gross <jgross@suse.com>, xen-devel
 <xen-devel@lists.xenproject.org>,  paulmck <paulmck@kernel.org>
Cc: Stefano Stabellini <sstabellini@kernel.org>, Oleksandr Tyshchenko
 <oleksandr_tyshchenko@epam.com>, Rahul Singh <rahul.singh@arm.com>, Boris
 Ostrovsky <boris.ostrovsky@oracle.com>, Thomas Gleixner <tglx@linutronix.de>
Date: Mon, 23 Oct 2023 21:50:22 +0100
Content-Type: multipart/signed; micalg="sha-256"; protocol="application/pkcs7-signature";
	boundary="=-SrElBF+d/If5CbumhQBe"
User-Agent: Evolution 3.44.4-0ubuntu2 
MIME-Version: 1.0
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html


--=-SrElBF+d/If5CbumhQBe
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

Since commit 87797fad6cce ("xen/events: replace evtchn_rwlock with
RCU"), I can no longer hotplug CPUs under Xen with lockdep enabled.

(This is real Xen 4.17.1; annoyingly I have different failure modes
with Xen guests under qemu/kvm and I'll deal with those next.)

Offlining complains thus:

[root@localhost cpu1]# echo 0 > online=20
[   52.936265]=20
[   52.936271] =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D
[   52.936274] WARNING: suspicious RCU usage
[   52.936277] 6.6.0-rc5+ #1357 Not tainted
[   52.936280] -----------------------------
[   52.936282] lib/maple_tree.c:856 suspicious rcu_dereference_check() usag=
e!
[   52.936287]=20
[   52.936287] other info that might help us debug this:
[   52.936287]=20
[   52.936289]=20
[   52.936289] RCU used illegally from offline CPU!
[   52.936289] rcu_scheduler_active =3D 2, debug_locks =3D 1
[   52.936293] 1 lock held by swapper/1/0:
[   52.936296]  #0: ffffffff89c03820 (rcu_read_lock){....}-{1:3}, at: mtree=
_load+0x90/0x590
[   52.936321]=20
[   52.936321] stack backtrace:
[   52.936324] CPU: 1 PID: 0 Comm: swapper/1 Not tainted 6.6.0-rc5+ #1357
[   52.936329] Hardware name: Xen HVM domU, BIOS 4.17.1 09/26/2023
[   52.936332] Call Trace:
[   52.936335]  <TASK>
[   52.936340]  dump_stack_lvl+0x5b/0x90
[   52.936350]  lockdep_rcu_suspicious+0x15a/0x1c0
[   52.936366]  mtree_load+0x49e/0x590
[   52.936385]  irq_get_irq_data+0xe/0x20
[   52.936394]  xen_send_IPI_one+0xa4/0x100
[   52.936404]  __xen_send_IPI_mask+0x1b/0x50
[   52.936414]  generic_exec_single+0x35/0x1c0
[   52.936423]  smp_call_function_single+0xc2/0x140
[   52.936436]  ? cpuhp_report_idle_dead+0x42/0x60
[   52.936444]  do_idle+0xda/0xe0
[   52.936451]  cpu_startup_entry+0x2a/0x30
[   52.936456]  start_secondary+0x123/0x140
[   52.936465]  secondary_startup_64_no_verify+0x178/0x17b
[   52.936490]  </TASK>
[   52.936492]=20
[   52.936494] =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D
[   52.936496] WARNING: suspicious RCU usage
[   52.936498] 6.6.0-rc5+ #1357 Not tainted
[   52.936500] -----------------------------
[   52.936502] lib/maple_tree.c:812 suspicious rcu_dereference_check() usag=
e!
[   52.936505]=20
[   52.936505] other info that might help us debug this:
[   52.936505]=20
[   52.936507]=20
[   52.936507] RCU used illegally from offline CPU!
[   52.936507] rcu_scheduler_active =3D 2, debug_locks =3D 1
[   52.936510] 1 lock held by swapper/1/0:
[   52.936513]  #0: ffffffff89c03820 (rcu_read_lock){....}-{1:3}, at: mtree=
_load+0x90/0x590
[   52.936530]=20
[   52.936530] stack backtrace:
[   52.936532] CPU: 1 PID: 0 Comm: swapper/1 Not tainted 6.6.0-rc5+ #1357
[   52.936536] Hardware name: Xen HVM domU, BIOS 4.17.1 09/26/2023
[   52.936538] Call Trace:
[   52.936540]  <TASK>
[   52.936543]  dump_stack_lvl+0x5b/0x90
[   52.936549]  lockdep_rcu_suspicious+0x15a/0x1c0
[   52.936562]  mtree_load+0x3b7/0x590
[   52.936580]  irq_get_irq_data+0xe/0x20
[   52.936586]  xen_send_IPI_one+0xa4/0x100
[   52.936594]  __xen_send_IPI_mask+0x1b/0x50
[   52.936601]  generic_exec_single+0x35/0x1c0
[   52.936609]  smp_call_function_single+0xc2/0x140
[   52.936621]  ? cpuhp_report_idle_dead+0x42/0x60
[   52.936626]  do_idle+0xda/0xe0
[   52.936632]  cpu_startup_entry+0x2a/0x30
[   52.936643]  start_secondary+0x123/0x140
[   52.936649]  secondary_startup_64_no_verify+0x178/0x17b
[   52.936672]  </TASK>
[   52.937164] smpboot: CPU 1 is now offline
[root@localhost cpu1]#=20

Onlining triple-faults:

[root@localhost cpu1]# echo 1 > online=20
[   58.049051] installing Xen timer for CPU 1
[   58.051533] smpboot: Booting Node 0 Processor 1 APIC 0x2

... and it dumps me back to the host prompt, where 'xl dmesg' says:

(XEN) *** Dumping Dom7 vcpu#1 state: ***
(XEN) ----[ Xen-4.17.1  x86_64  debug=3Dn  Not tainted ]----
(XEN) CPU:    6
(XEN) RIP:    0010:[<ffffffff88041879>]
(XEN) RFLAGS: 0000000000010002   CONTEXT: hvm guest (d7v1)
(XEN) rax: 0000000000000001   rbx: 0000000000000000   rcx: 0000000000000008
(XEN) rdx: fffffe0000001000   rsi: ffff8f364e10b048   rdi: 0000000000000001
(XEN) rbp: 0000000000000000   rsp: ffffa6f6400aff38   r8:  00000000fffffe5b
(XEN) r9:  0000000000000000   r10: ffff8f364e106078   r11: 0000000000000000
(XEN) r12: 0000000000000000   r13: 0000000000000000   r14: 0000000000000000
(XEN) r15: 0000000000000000   cr0: 0000000080050033   cr4: 00000000001300a0
(XEN) cr3: 000000002583c000   cr2: 0000000000000000
(XEN) fsb: 0000000000000000   gsb: ffff8f364e100000   gss: 0000000000000000
(XEN) ds: 0000   es: 0000   fs: 0000   gs: 0000   ss: 0000   cs: 0010

Not 100% sure where ffffffff88041879 is but there's a 'ud' at=20
0xffffffff81041879 in load_current_idt() for the
lockdep_assert_irqs_disabled().

And yes, if I comment that assertion out then onlining does succeed
without a triplefault but with a different warning:

[root@localhost cpu1]# echo 1 > online=20
[   35.843897] installing Xen timer for CPU 1
[   35.846134] smpboot: Booting Node 0 Processor 1 APIC 0x2
[   35.847297] ------------[ cut here ]------------
[   35.847307] WARNING: CPU: 1 PID: 0 at arch/x86/kernel/cpu/common.c:454 c=
r4_update_irqsoff+0x32/0x60
[   35.847323] Modules linked in:
[   35.847329] CPU: 1 PID: 0 Comm: swapper/1 Not tainted 6.6.0-rc5+ #1358
[   35.847335] Hardware name: Xen HVM domU, BIOS 4.17.1 09/26/2023
[   35.847338] RIP: 0010:cr4_update_irqsoff+0x32/0x60
[   35.847345] Code: 89 f7 65 48 8b 15 86 0a fd 68 8b 0d 60 1b dc 01 85 c9 =
74 18 65 8b 0d 1d f8 fb 68 85 c9 75 0d 65 8b 0d 0e f6 fb 68 85 c9 74 02 <0f=
> 0b 48 f7 d7 48 21 d7 48 09 c7 48 39 fa 75 05 c3 cc cc cc cc 65
[   35.847350] RSP: 0000:ffffad98400aff18 EFLAGS: 00010002
[   35.847356] RAX: 0000000000000000 RBX: 0000000000000000 RCX: 00000000000=
00001
[   35.847359] RDX: 00000000001300a0 RSI: 000000000000000f RDI: 00000000000=
0000f
[   35.847362] RBP: ffff9c7a81398000 R08: 00000000fffffe14 R09: 00000000000=
00000
[   35.847365] R10: ffff9c7ace106078 R11: 0000000000000000 R12: 00000000000=
00001
[   35.847368] R13: 0000000000000000 R14: 0000000000000000 R15: 00000000000=
00000
[   35.847372] FS:  0000000000000000(0000) GS:ffff9c7ace100000(0000) knlGS:=
0000000000000000
[   35.847376] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[   35.847379] CR2: 0000000000000000 CR3: 000000002883c000 CR4: 00000000001=
300a0
[   35.847385] Call Trace:
[   35.847389]  <TASK>
[   35.847392]  ? cr4_update_irqsoff+0x32/0x60
[   35.847398]  ? __warn+0x85/0x170
[   35.847410]  ? cr4_update_irqsoff+0x32/0x60
[   35.847419]  ? report_bug+0x171/0x1a0
[   35.847432]  ? handle_bug+0x3c/0x80
[   35.847438]  ? exc_invalid_op+0x17/0x70
[   35.847443]  ? asm_exc_invalid_op+0x1a/0x20
[   35.847464]  ? cr4_update_irqsoff+0x32/0x60
[   35.847473]  cpu_init+0x58/0x1a0
[   35.847482]  start_secondary+0x31/0x140
[   35.847490]  ? __pfx_start_secondary+0x10/0x10
[   35.847496]  secondary_startup_64_no_verify+0x178/0x17b
[   35.847519]  </TASK>
[   35.847522] irq event stamp: 111393
[   35.847524] hardirqs last  enabled at (111393): [<ffffffff9773008a>] acp=
i_idle_play_dead+0x4a/0x70
[   35.847533] hardirqs last disabled at (111392): [<ffffffff97126ca2>] do_=
idle+0x92/0xe0
[   35.847540] softirqs last  enabled at (111328): [<ffffffff97d084a6>] __d=
o_softirq+0x2e6/0x3a9
[   35.847549] softirqs last disabled at (111315): [<ffffffff970bbdbb>] __i=
rq_exit_rcu+0xab/0xd0
[   35.847555] ---[ end trace 0000000000000000 ]---
[   35.847585] ------------[ cut here ]------------
[   35.847588] WARNING: CPU: 1 PID: 0 at kernel/rcu/tree.c:4429 rcu_cpu_sta=
rting+0x16b/0x1d0
[   35.847602] Modules linked in:
[   35.847606] CPU: 1 PID: 0 Comm: swapper/1 Tainted: G        W          6=
.6.0-rc5+ #1358
[   35.847610] Hardware name: Xen HVM domU, BIOS 4.17.1 09/26/2023
[   35.847613] RIP: 0010:rcu_cpu_starting+0x16b/0x1d0
[   35.847620] Code: cc 65 8b 05 97 64 e9 68 85 c0 75 cd 65 8b 05 88 62 e9 =
68 85 c0 74 c2 0f 0b eb be 65 8b 05 79 62 e9 68 85 c0 0f 84 bf fe ff ff <0f=
> 0b e9 b8 fe ff ff 89 c6 4c 89 ef e8 04 06 b8 00 90 e9 eb fe ff
[   35.847624] RSP: 0000:ffffad98400aff10 EFLAGS: 00010002
[   35.847628] RAX: 0000000000000001 RBX: 0000000000000000 RCX: 00000000000=
00000
[   35.847631] RDX: 0000000000000001 RSI: 0000000000000000 RDI: 00000000000=
00001
[   35.847633] RBP: 0000000000000000 R08: 000000001883c000 R09: 00000000000=
00000
[   35.847636] R10: ffff9c7ace106078 R11: 0000000000000000 R12: 00000000000=
00000
[   35.847639] R13: 0000000000000000 R14: 0000000000000000 R15: 00000000000=
00000
[   35.847642] FS:  0000000000000000(0000) GS:ffff9c7ace100000(0000) knlGS:=
0000000000000000
[   35.847645] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[   35.847648] CR2: 0000000000000000 CR3: 000000002883c001 CR4: 00000000001=
706a0
[   35.847651] Call Trace:
[   35.847654]  <TASK>
[   35.847656]  ? rcu_cpu_starting+0x16b/0x1d0
[   35.847663]  ? __warn+0x85/0x170
[   35.847681]  ? rcu_cpu_starting+0x16b/0x1d0
[   35.847691]  ? report_bug+0x171/0x1a0
[   35.847701]  ? handle_bug+0x3c/0x80
[   35.847706]  ? exc_invalid_op+0x17/0x70
[   35.847711]  ? asm_exc_invalid_op+0x1a/0x20
[   35.847729]  ? rcu_cpu_starting+0x16b/0x1d0
[   35.847742]  start_secondary+0x42/0x140
[   35.847747]  ? __pfx_start_secondary+0x10/0x10
[   35.847753]  secondary_startup_64_no_verify+0x178/0x17b
[   35.847774]  </TASK>
[   35.847775] irq event stamp: 111393
[   35.847778] hardirqs last  enabled at (111393): [<ffffffff9773008a>] acp=
i_idle_play_dead+0x4a/0x70
[   35.847783] hardirqs last disabled at (111392): [<ffffffff97126ca2>] do_=
idle+0x92/0xe0
[   35.847788] softirqs last  enabled at (111328): [<ffffffff97d084a6>] __d=
o_softirq+0x2e6/0x3a9
[   35.847795] softirqs last disabled at (111315): [<ffffffff970bbdbb>] __i=
rq_exit_rcu+0xab/0xd0
[   35.847799] ---[ end trace 0000000000000000 ]---
[   35.847810] ------------[ cut here ]------------
[   35.847842] WARNING: CPU: 1 PID: 0 at kernel/rcu/tree.c:4462 rcu_cpu_sta=
rting+0x158/0x1d0
[   35.847851] Modules linked in:
[   35.847855] CPU: 1 PID: 0 Comm: swapper/1 Tainted: G        W          6=
.6.0-rc5+ #1358
[   35.847859] Hardware name: Xen HVM domU, BIOS 4.17.1 09/26/2023
[   35.847862] RIP: 0010:rcu_cpu_starting+0x158/0x1d0
[   35.847869] Code: 01 f0 83 44 24 fc 00 5b 5d 41 5c 41 5d 41 5e c3 cc cc =
cc cc 65 8b 05 97 64 e9 68 85 c0 75 cd 65 8b 05 88 62 e9 68 85 c0 74 c2 <0f=
> 0b eb be 65 8b 05 79 62 e9 68 85 c0 0f 84 bf fe ff ff 0f 0b e9
[   35.847872] RSP: 0000:ffffad98400aff10 EFLAGS: 00010002
[   35.847877] RAX: 0000000000000001 RBX: ffff9c7ace130280 RCX: 40000000000=
01492
[   35.847880] RDX: 3fffffffffffffff RSI: ffffffff98c03d18 RDI: ffff9c7a813=
98d48
[   35.847883] RBP: ffffffff98c03d00 R08: 0000000000000001 R09: 00000000000=
0003e
[   35.847886] R10: 0000000000000000 R11: ffff9c7a81398d48 R12: 00000000000=
00002
[   35.847889] R13: ffffffff98cb7280 R14: 0000000000000000 R15: 00000000000=
00000
[   35.847892] FS:  0000000000000000(0000) GS:ffff9c7ace100000(0000) knlGS:=
0000000000000000
[   35.847895] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[   35.847898] CR2: 0000000000000000 CR3: 000000002883c001 CR4: 00000000001=
706a0
[   35.847901] Call Trace:
[   35.847903]  <TASK>
[   35.847905]  ? rcu_cpu_starting+0x158/0x1d0
[   35.847912]  ? __warn+0x85/0x170
[   35.847919]  ? rcu_cpu_starting+0x158/0x1d0
[   35.847929]  ? report_bug+0x171/0x1a0
[   35.847940]  ? handle_bug+0x3c/0x80
[   35.847958]  ? exc_invalid_op+0x17/0x70
[   35.847960]  ? asm_exc_invalid_op+0x1a/0x20
[   35.847969]  ? rcu_cpu_starting+0x158/0x1d0
[   35.847976]  start_secondary+0x42/0x140
[   35.847978]  ? __pfx_start_secondary+0x10/0x10
[   35.847981]  secondary_startup_64_no_verify+0x178/0x17b
[   35.847991]  </TASK>
[   35.847992] irq event stamp: 111393
[   35.847993] hardirqs last  enabled at (111393): [<ffffffff9773008a>] acp=
i_idle_play_dead+0x4a/0x70
[   35.847996] hardirqs last disabled at (111392): [<ffffffff97126ca2>] do_=
idle+0x92/0xe0
[   35.847998] softirqs last  enabled at (111328): [<ffffffff97d084a6>] __d=
o_softirq+0x2e6/0x3a9
[   35.848001] softirqs last disabled at (111315): [<ffffffff970bbdbb>] __i=
rq_exit_rcu+0xab/0xd0
[   35.848003] ---[ end trace 0000000000000000 ]---
[   35.850720] cpu 1 spinlock event irq 57



--=-SrElBF+d/If5CbumhQBe
Content-Type: application/pkcs7-signature; name="smime.p7s"
Content-Disposition: attachment; filename="smime.p7s"
Content-Transfer-Encoding: base64

MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgEFADCABgkqhkiG9w0BBwEAAKCCEkQw
ggYQMIID+KADAgECAhBNlCwQ1DvglAnFgS06KwZPMA0GCSqGSIb3DQEBDAUAMIGIMQswCQYDVQQG
EwJVUzETMBEGA1UECBMKTmV3IEplcnNleTEUMBIGA1UEBxMLSmVyc2V5IENpdHkxHjAcBgNVBAoT
FVRoZSBVU0VSVFJVU1QgTmV0d29yazEuMCwGA1UEAxMlVVNFUlRydXN0IFJTQSBDZXJ0aWZpY2F0
aW9uIEF1dGhvcml0eTAeFw0xODExMDIwMDAwMDBaFw0zMDEyMzEyMzU5NTlaMIGWMQswCQYDVQQG
EwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYD
VQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50
aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC
AQEAyjztlApB/975Rrno1jvm2pK/KxBOqhq8gr2+JhwpKirSzZxQgT9tlC7zl6hn1fXjSo5MqXUf
ItMltrMaXqcESJuK8dtK56NCSrq4iDKaKq9NxOXFmqXX2zN8HHGjQ2b2Xv0v1L5Nk1MQPKA19xeW
QcpGEGFUUd0kN+oHox+L9aV1rjfNiCj3bJk6kJaOPabPi2503nn/ITX5e8WfPnGw4VuZ79Khj1YB
rf24k5Ee1sLTHsLtpiK9OjG4iQRBdq6Z/TlVx/hGAez5h36bBJMxqdHLpdwIUkTqT8se3ed0PewD
ch/8kHPo5fZl5u1B0ecpq/sDN/5sCG52Ds+QU5O5EwIDAQABo4IBZDCCAWAwHwYDVR0jBBgwFoAU
U3m/WqorSs9UgOHYm8Cd8rIDZsswHQYDVR0OBBYEFAnA8vwL2pTbX/4r36iZQs/J4K0AMA4GA1Ud
DwEB/wQEAwIBhjASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEF
BQcDBDARBgNVHSAECjAIMAYGBFUdIAAwUAYDVR0fBEkwRzBFoEOgQYY/aHR0cDovL2NybC51c2Vy
dHJ1c3QuY29tL1VTRVJUcnVzdFJTQUNlcnRpZmljYXRpb25BdXRob3JpdHkuY3JsMHYGCCsGAQUF
BwEBBGowaDA/BggrBgEFBQcwAoYzaHR0cDovL2NydC51c2VydHJ1c3QuY29tL1VTRVJUcnVzdFJT
QUFkZFRydXN0Q0EuY3J0MCUGCCsGAQUFBzABhhlodHRwOi8vb2NzcC51c2VydHJ1c3QuY29tMA0G
CSqGSIb3DQEBDAUAA4ICAQBBRHUAqznCFfXejpVtMnFojADdF9d6HBA4kMjjsb0XMZHztuOCtKF+
xswhh2GqkW5JQrM8zVlU+A2VP72Ky2nlRA1GwmIPgou74TZ/XTarHG8zdMSgaDrkVYzz1g3nIVO9
IHk96VwsacIvBF8JfqIs+8aWH2PfSUrNxP6Ys7U0sZYx4rXD6+cqFq/ZW5BUfClN/rhk2ddQXyn7
kkmka2RQb9d90nmNHdgKrwfQ49mQ2hWQNDkJJIXwKjYA6VUR/fZUFeCUisdDe/0ABLTI+jheXUV1
eoYV7lNwNBKpeHdNuO6Aacb533JlfeUHxvBz9OfYWUiXu09sMAviM11Q0DuMZ5760CdO2VnpsXP4
KxaYIhvqPqUMWqRdWyn7crItNkZeroXaecG03i3mM7dkiPaCkgocBg0EBYsbZDZ8bsG3a08LwEsL
1Ygz3SBsyECa0waq4hOf/Z85F2w2ZpXfP+w8q4ifwO90SGZZV+HR/Jh6rEaVPDRF/CEGVqR1hiuQ
OZ1YL5ezMTX0ZSLwrymUE0pwi/KDaiYB15uswgeIAcA6JzPFf9pLkAFFWs1QNyN++niFhsM47qod
x/PL+5jR87myx5uYdBEQkkDc+lKB1Wct6ucXqm2EmsaQ0M95QjTmy+rDWjkDYdw3Ms6mSWE3Bn7i
5ZgtwCLXgAIe5W8mybM2JzCCBhQwggT8oAMCAQICEQDGvhmWZ0DEAx0oURL6O6l+MA0GCSqGSIb3
DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYD
VQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28g
UlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMB4XDTIyMDEwNzAw
MDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJARYTZHdtdzJAaW5mcmFkZWFkLm9y
ZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3GpC2bomUqk+91wLYBzDMcCj5C9m6
oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZHh7htyAkWYVoFsFPrwHounto8xTsy
SSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT9YgcBqKCo65pTFmOnR/VVbjJk4K2
xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNjP+qDrh0db7PAjO1D4d5ftfrsf+kd
RR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy2U+eITZ5LLE5s45mX2oPFknWqxBo
bQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3BgBEmfsYWlBXO8rVXfvPgLs32VdV
NZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/7auNVRmPB3v5SWEsH8xi4Bez2V9U
KxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmdlFYhAflWKQ03Ufiu8t3iBE3VJbc2
5oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9aelIl6vtbhMA+l0nfrsORMa4kobqQ5
C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMBAAGjggHMMIIByDAfBgNVHSMEGDAW
gBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeDMcimo0oz8o1R1Nver3ZVpSkwDgYD
VR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYwFAYIKwYBBQUHAwQGCCsGAQUFBwMC
MEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYBBQUHAgEWF2h0dHBzOi8vc2VjdGln
by5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9jcmwuc2VjdGlnby5jb20vU2VjdGln
b1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1haWxDQS5jcmwwgYoGCCsGAQUFBwEB
BH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdvLmNvbS9TZWN0aWdvUlNBQ2xpZW50
QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAjBggrBgEFBQcwAYYXaHR0cDovL29j
c3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5mcmFkZWFkLm9yZzANBgkqhkiG9w0B
AQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQvQ/fzPXmtR9t54rpmI2TfyvcKgOXp
qa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvIlSPrzIB4Z2wyIGQpaPLlYflrrVFK
v9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9ChWFfgSXvrWDZspnU3Gjw/rMHrGnql
Htlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0whpBtXdyDjzBtQTaZJ7zTT/vlehc/
tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9IzCCBhQwggT8oAMCAQICEQDGvhmW
Z0DEAx0oURL6O6l+MA0GCSqGSIb3DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3Jl
YXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0
ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJl
IEVtYWlsIENBMB4XDTIyMDEwNzAwMDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJ
ARYTZHdtdzJAaW5mcmFkZWFkLm9yZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3
GpC2bomUqk+91wLYBzDMcCj5C9m6oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZH
h7htyAkWYVoFsFPrwHounto8xTsySSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT
9YgcBqKCo65pTFmOnR/VVbjJk4K2xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNj
P+qDrh0db7PAjO1D4d5ftfrsf+kdRR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy
2U+eITZ5LLE5s45mX2oPFknWqxBobQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3
BgBEmfsYWlBXO8rVXfvPgLs32VdVNZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/
7auNVRmPB3v5SWEsH8xi4Bez2V9UKxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmd
lFYhAflWKQ03Ufiu8t3iBE3VJbc25oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9ae
lIl6vtbhMA+l0nfrsORMa4kobqQ5C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMB
AAGjggHMMIIByDAfBgNVHSMEGDAWgBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeD
Mcimo0oz8o1R1Nver3ZVpSkwDgYDVR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYw
FAYIKwYBBQUHAwQGCCsGAQUFBwMCMEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYB
BQUHAgEWF2h0dHBzOi8vc2VjdGlnby5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9j
cmwuc2VjdGlnby5jb20vU2VjdGlnb1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1h
aWxDQS5jcmwwgYoGCCsGAQUFBwEBBH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdv
LmNvbS9TZWN0aWdvUlNBQ2xpZW50QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAj
BggrBgEFBQcwAYYXaHR0cDovL29jc3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5m
cmFkZWFkLm9yZzANBgkqhkiG9w0BAQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQv
Q/fzPXmtR9t54rpmI2TfyvcKgOXpqa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvI
lSPrzIB4Z2wyIGQpaPLlYflrrVFKv9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9Ch
WFfgSXvrWDZspnU3Gjw/rMHrGnqlHtlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0w
hpBtXdyDjzBtQTaZJ7zTT/vlehc/tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9
IzGCBMcwggTDAgEBMIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVz
dGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMT
NVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEA
xr4ZlmdAxAMdKFES+jupfjANBglghkgBZQMEAgEFAKCCAeswGAYJKoZIhvcNAQkDMQsGCSqGSIb3
DQEHATAcBgkqhkiG9w0BCQUxDxcNMjMxMDIzMjA1MDIyWjAvBgkqhkiG9w0BCQQxIgQgLlO6kGma
lad0tVNWD/okxRcQ2vdcVBubcE7VRwvDu9Awgb0GCSsGAQQBgjcQBDGBrzCBrDCBljELMAkGA1UE
BhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEYMBYG
A1UEChMPU2VjdGlnbyBMaW1pdGVkMT4wPAYDVQQDEzVTZWN0aWdvIFJTQSBDbGllbnQgQXV0aGVu
dGljYXRpb24gYW5kIFNlY3VyZSBFbWFpbCBDQQIRAMa+GZZnQMQDHShREvo7qX4wgb8GCyqGSIb3
DQEJEAILMYGvoIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVy
MRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNl
Y3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEAxr4Z
lmdAxAMdKFES+jupfjANBgkqhkiG9w0BAQEFAASCAgB0uRLSS6YZBs5h6/zeUAL44dIMB/4WwjwC
i4jmZ32V66OYczpkT0o5yxu60FV9sVn5P8g4Uiurtew01nQD68A0HPpwPpJVwOUpDzilFZx3cyBC
H/D8dl+FH4zAiemliRFgseeBmykOcR6CPzsAWSIRzcYexmDe9yQ7e52k6NMs1i5b9T1XWcZd+rhW
FHM0fnS5rlDNUt5UCFRB5P9gNZlJuZYBxx3wxostyyiwBNGnMQdRbYrCWACo6T0r1RLqEs3NwaGO
ZPOqEGY3yMbjrQAPm++u9RhgC9p4l46WPwtbCxJBIWkKa9f/DutHc1ZC1+XT+rjiZE1oRqvKDo4y
7f212aB0NVyYKVKRORDOQfR2mLLAVTC5WYZzwM3BEtwUzQCMnL7o1BaQBFtjLwJfYhSdkapDdRWX
hrLA4/GKTW3bVyR0TDHI0SLK7BuANgwv9/DidGhkgNfY5aQRQj4ek+YfxnwptGZAp2aOzENz7FHR
GGBZIoAbxUfdAOaBMFJcZqPdTh5d2wxDtJVQd7522LTSdnzT33U/TjURvEiH2wTXsxWdr7zyWuXc
q/o7wJM9IQdYdwb4eLG4zBYGJuUaUJs4sdJ7xi/5qp8nEuh5Pc7gD9koDuY46k2fKwQ2Hv+2Zw5x
TIEUOxg4UF/9N9ncA8sqYEHS2F0JYCGmr6bAZfAV8QAAAAAAAA==


--=-SrElBF+d/If5CbumhQBe--


From xen-devel-bounces@lists.xenproject.org Mon Oct 23 20:57:14 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 20:57:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621612.968237 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qv1z1-0002Rb-Vn; Mon, 23 Oct 2023 20:57:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621612.968237; Mon, 23 Oct 2023 20:57: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 1qv1z1-0002RU-SZ; Mon, 23 Oct 2023 20:57:07 +0000
Received: by outflank-mailman (input) for mailman id 621612;
 Mon, 23 Oct 2023 20:57: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=D6cm=GF=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qv1z0-0002RO-RW
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 20:57:06 +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 b7df1d6c-71e6-11ee-98d5-6d05b1d4d9a1;
 Mon, 23 Oct 2023 22:57:05 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by sin.source.kernel.org (Postfix) with ESMTP id 795ACCE2154;
 Mon, 23 Oct 2023 20:57:02 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 877C6C433C8;
 Mon, 23 Oct 2023 20:57: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: b7df1d6c-71e6-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1698094621;
	bh=mowxrgC91/O5/XxmHSI3XUwURyfMqm7Hdd6IIx27xpc=;
	h=Date:From:To:cc:Subject:From;
	b=QaWIUgfEWo1/6f9ZE1IiJaEuhZcgF/ECwoUKMSKBUuQmHqQoW21U5Ci2aljh46YdH
	 kX8qcyDwBw/CZqnQB/rp3F9bJsqMbzu8SXA5lLkahL3ZeIyhb0Icdw4bjQ/fXSG4m5
	 vDt1xp7nqe9stCtMOs4fgz0ndIb/TolkD1w4iF+eiF327Z6+RL93T4j9dRk2CdgU6F
	 7MwluT7zd+9OUqSH3jPEnJJ433DLNqeqd2N0fSWaSxAUoTGeIofkFBw3Kn5uIU5tvk
	 2k1lm3KxSJ/jNgzBKR3OBcd26x2Zsmx41b+utG9L+2Mb49YlobO/7CqOmJ8p7SayAd
	 tyO+6/HGDSx1w==
Date: Mon, 23 Oct 2023 13:56:59 -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, julien@xen.org, bertrand.marquis@arm.com, 
    michal.orzel@amd.com, Volodymyr_Babchuk@epam.com, Henry.Wang@arm.com
Subject: [PATCH] MAINTAINERS: make Michal Orzel ARM Maintainer
Message-ID: <alpine.DEB.2.22.394.2310231356210.3516@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

Signed-off-by: Stefano Stabellini <stefano.stabellini@amd.com>
---
 MAINTAINERS | 1 +
 1 file changed, 1 insertion(+)

diff --git a/MAINTAINERS b/MAINTAINERS
index f61b5a32a1..a5a5f2bffb 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -246,6 +246,7 @@ ARM (W/ VIRTUALISATION EXTENSIONS) ARCHITECTURE
 M:	Stefano Stabellini <sstabellini@kernel.org>
 M:	Julien Grall <julien@xen.org>
 M:	Bertrand Marquis <bertrand.marquis@arm.com>
+M:	Michal Orzel <michal.orzel@amd.com>
 R:	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
 S:	Supported
 L:	xen-devel@lists.xenproject.org
-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Mon Oct 23 22:04:47 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 22:04:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621616.968246 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qv32H-0004un-Qe; Mon, 23 Oct 2023 22:04:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621616.968246; Mon, 23 Oct 2023 22:04: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 1qv32H-0004ug-Nr; Mon, 23 Oct 2023 22:04:33 +0000
Received: by outflank-mailman (input) for mailman id 621616;
 Mon, 23 Oct 2023 22:04: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 1qv32F-0004uV-NB; Mon, 23 Oct 2023 22:04: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 1qv32F-0004Q5-HX; Mon, 23 Oct 2023 22:04: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 1qv32F-0003Su-1s; Mon, 23 Oct 2023 22:04:31 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qv32F-0000wo-1W; Mon, 23 Oct 2023 22: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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=2/M+95VMqN49nmVeuJ+6p6WQXYsTkG23202aqVWD988=; b=yGUtDCTk82APj68Pa5l3cmlFMB
	2Fb3S9jvce8S8QixJjbgWytMBlA14/sDSxGZ9irhHa8qco5AVuyeuCucOIXVfGTM/dK+khY+CxAFG
	2mXDc8uJSdmk7WhHzjrC8HVRD6Mf5YkgB59CXivNFGFCU/J98XG6IFd6bSc0V5pFFaMw=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183500-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 183500: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=309450db268c8721afa102c7c49adccd153b0e88
X-Osstest-Versions-That:
    ovmf=ec7f73436646a9232c6494d1ce23fb38000e10d3
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 23 Oct 2023 22:04:31 +0000

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

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 309450db268c8721afa102c7c49adccd153b0e88
baseline version:
 ovmf                 ec7f73436646a9232c6494d1ce23fb38000e10d3

Last test of basis   183498  2023-10-23 17:10:46 Z    0 days
Testing same since   183500  2023-10-23 19:40:49 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Jeshua Smith <jeshuas@nvidia.com>
  Leif Lindholm <quic_llindhol@quicinc.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
   ec7f734366..309450db26  309450db268c8721afa102c7c49adccd153b0e88 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Mon Oct 23 22:06:12 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 22:06:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621620.968256 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qv33r-0005aD-3h; Mon, 23 Oct 2023 22:06:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621620.968256; Mon, 23 Oct 2023 22:06: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 1qv33r-0005a6-0z; Mon, 23 Oct 2023 22:06:11 +0000
Received: by outflank-mailman (input) for mailman id 621620;
 Mon, 23 Oct 2023 22:06: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=D6cm=GF=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qv33q-0005Zy-1C
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 22:06:10 +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 5b37aaf4-71f0-11ee-9b0e-b553b5be7939;
 Tue, 24 Oct 2023 00:06: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 964DBB821F2;
 Mon, 23 Oct 2023 22:06:02 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id BDACDC433C8;
 Mon, 23 Oct 2023 22:06: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: 5b37aaf4-71f0-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1698098762;
	bh=2HwwTEEEFz5MSuyUw6o/R+XN3mqiSFdPe5DNcAujqQs=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=ZF+cnTHFJ081lMlSro0ioPLE1da3qJ18RiodHfCCia7CKjfLCHlttTjB/vk5loM61
	 +yfLwfYtNrIhVsyMXgxzjx72MRhB5bHjnjXsh8AwbrkA9dOaefiHCeU+/vKA6TIhlK
	 Xppdd08Cw21/qnpFNUwev3dqW7tuCOzuQtnvFW29AvOdeh7JayjU3mhEvnARzAIx1g
	 XKzhxOLylxngsNTHwTDZhDsOpwQ5sa+BPL8RRsaoCkhevPARyqEszMLT252cEmfYzF
	 Z6Po45o2Z6WNS3Jmu+T/grKM0SzkYBIfL/iypmo2cnH66LMbEmX7BrKYTQu0PrF/+3
	 Umu0N9ymwM8rw==
Date: Mon, 23 Oct 2023 15:05: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: 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>, xen-devel@lists.xenproject.org
Subject: Re: [XEN PATCH 3/4] xen/include: add pure and const attributes
In-Reply-To: <e8bf9817-fd54-9bf4-4302-dcee682f9172@suse.com>
Message-ID: <alpine.DEB.2.22.394.2310231417260.3516@ubuntu-linux-20-04-desktop>
References: <cover.1697638210.git.simone.ballarin@bugseng.com> <fd5421162a00aa782e0776324ff6497193c1e3d3.1697638210.git.simone.ballarin@bugseng.com> <89778285-5cba-8fb5-70bc-710b6dd30a10@suse.com> <0032186f-80c7-4dba-b46e-10d4a8e2a8cb@bugseng.com>
 <e8bf9817-fd54-9bf4-4302-dcee682f9172@suse.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: multipart/mixed; BOUNDARY="8323329-485062949-1698098242=:3516"
Content-ID: <alpine.DEB.2.22.394.2310231457350.3516@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-485062949-1698098242=:3516
Content-Type: text/plain; CHARSET=UTF-8
Content-Transfer-Encoding: 8BIT
Content-ID: <alpine.DEB.2.22.394.2310231457351.3516@ubuntu-linux-20-04-desktop>

On Mon, 23 Oct 2023, Jan Beulich wrote:
> On 23.10.2023 17:23, Simone Ballarin wrote:
> > On 23/10/23 15:34, Jan Beulich wrote:
> >> On 18.10.2023 16:18, Simone Ballarin wrote:
> >>> --- a/xen/include/xen/pdx.h
> >>> +++ b/xen/include/xen/pdx.h
> >>> @@ -164,7 +164,7 @@ static inline unsigned long pfn_to_pdx(unsigned long pfn)
> >>>    * @param pdx Page index
> >>>    * @return Obtained pfn after decompressing the pdx
> >>>    */
> >>> -static inline unsigned long pdx_to_pfn(unsigned long pdx)
> >>> +static inline __attribute_pure__ unsigned long pdx_to_pfn(unsigned long pdx)
> >>>   {
> >>>       return (pdx & pfn_pdx_bottom_mask) |
> >>>              ((pdx << pfn_pdx_hole_shift) & pfn_top_mask);
> >>
> >> Taking this as an example for what I've said above: The compiler can't
> >> know that the globals used by the functions won't change value. Even
> >> within Xen it is only by convention that these variables are assigned
> >> their values during boot, and then aren't changed anymore. Which makes
> >> me wonder: Did you check carefully that around the time the variables
> >> have their values established, no calls to the functions exist (which
> >> might then be subject to folding)?
> > 
> > There is no need to check that, the GCC documentation explicitly says:
> > 
> > However, functions declared with the pure attribute *can safely read any 
> > non-volatile objects*, and modify the value of objects in a way that 
> > does not affect their return value or the observable state of the program.
> 
> I did quote this same text in response to what Andrew has said, but I also
> did note there that this needs to be taken with a grain of salt: The
> compiler generally assumes a single-threaded environment, i.e. no changes
> to globals behind the back of the code it is processing.

Let's start from the beginning. The reason for Simone to add
__attribute_pure__ to pdx_to_pfn and other functions is for
documentation purposes. It is OK if it doesn't serve any purpose other
than documentation.

Andrew, for sure we do not want to lie to the compiler and introduce
undefined behavior. If we think there is a risk of it, we should not do
it.

So, what do we want to document? We want to document that the function
does not have side effects according to MISRA's definition of it, which
might subtly differ from GCC's definition.

Looking at GCC's definition of __attribute_pure__, with the
clarification statement copy/pasted above by both Simone and Jan, it
seems that __attribute_pure__ matches MISRA's definition of a function
without side effects. It also seems that pdx_to_pfn abides to that
definition.

Jan has a point that GCC might be making other assumptions
(single-thread execution) that might not hold true in our case. Given
the way the GCC statement is written I think this is low risk. But maybe
not all GCC versions we want to support in the project might have the
same definition of __attribute_pure__. So we could end up using
__attribute_pure__ correctly for the GCC version used for safety (GCC
12.1, see docs/misra/C-language-toolchain.rst) but it might actually
break an older GCC version.


So Option#1 is to use __attribute_pure__ taking the risk that a GCC or
Clang version might interpret __attribute_pure__ differently and
potentially misbehave.

Option#2 is to avoid this risk, by not using __attribute_pure__.
Instead, we can use SAF-xx-safe or deviations.rst to document that
pdx_to_pfn and other functions like it are without side effects
according to MISRA's definition.


Both options have pros and cons. To me the most important factor is how
many GCC versions come with the statement "pure attribute can safely
read any non-volatile objects, and modify the value of objects in a way
that does not affect their return value or the observable state of the
program".

I checked and these are the results:
- gcc 4.0.2: no statement
- gcc 5.1.0: no statement
- gcc 6.1.0: no statement
- gcc 7.1.0: no statement
- gcc 8.1.0: alternative statement "The pure attribute imposes similar
  but looser restrictions on a function’s definition than the const
  attribute: it allows the function to read global variables."
- gcc 9.1.0: yes statement


So based on the above, __attribute_pure__ comes with its current
definition only from gcc 9 onward. I don't know if as a Xen community we
clearly declare a range of supported compilers, but I would imagine we
would still want to support gcc versions older than 9? (Not to mention
clang, which I haven't checked.)

It doesn't seem to me that __attribute_pure__ could be correctly used on
pdx_to_pfn with GCC 7.1.0 for example.

So in conclusion, I think it is better to avoid __attribute_pure__ and
use SAF-xx-safe or an alternative approach instead.
--8323329-485062949-1698098242=:3516--


From xen-devel-bounces@lists.xenproject.org Mon Oct 23 22:12:28 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 22:12:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621624.968266 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qv39r-000740-NS; Mon, 23 Oct 2023 22:12:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621624.968266; Mon, 23 Oct 2023 22:12: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 1qv39r-00073t-Kt; Mon, 23 Oct 2023 22:12:23 +0000
Received: by outflank-mailman (input) for mailman id 621624;
 Mon, 23 Oct 2023 22:12: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=D6cm=GF=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qv39q-00073n-68
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 22:12:22 +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 3bdabff1-71f1-11ee-9b0e-b553b5be7939;
 Tue, 24 Oct 2023 00:12:20 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by ams.source.kernel.org (Postfix) with ESMTP id C593AB81BF1;
 Mon, 23 Oct 2023 22:12:19 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 11B1EC433C8;
 Mon, 23 Oct 2023 22:12: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: 3bdabff1-71f1-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1698099139;
	bh=D5mUR/LrusVCD2taPzxmjIaDkSDhxjucLkE7kYUNm/Q=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=qjS7O6FVE9uRRL9pHss32FGgOuSLJGETzpfTNZtRo2CV5OPbIxYJ4F717rX6AbQN/
	 GsH7UR9qVGnLcBrZE6F4Bm+IyvbfKWq6sZEcYZu9uLQmOFXOdK+uFh+KLViT9OaHIN
	 G/n50YJ5R02IPm3yjzF9i2YAFLXd67Wo0tZVP1BsT0EQjTdFrCEo1FqJIXTcPFb0ME
	 8dLQS+GVl5B8DSr2TszdX15X3A4+WTZ2abUIlaqpC0rPFE8strWgKF7DCM8zWPAd+o
	 TJiinp4LZZvGkcIRpYBo9nL28fQbkQkjGDrMyjUG88HoCHDCsTjlY22J+CSPde2IjU
	 p5OhZWIebuc7A==
Date: Mon, 23 Oct 2023 15:12:16 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Stefano Stabellini <sstabellini@kernel.org>
cc: Jan Beulich <jbeulich@suse.com>, 
    Simone Ballarin <simone.ballarin@bugseng.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 3/4] xen/include: add pure and const attributes
In-Reply-To: <alpine.DEB.2.22.394.2310231417260.3516@ubuntu-linux-20-04-desktop>
Message-ID: <alpine.DEB.2.22.394.2310231511200.3516@ubuntu-linux-20-04-desktop>
References: <cover.1697638210.git.simone.ballarin@bugseng.com> <fd5421162a00aa782e0776324ff6497193c1e3d3.1697638210.git.simone.ballarin@bugseng.com> <89778285-5cba-8fb5-70bc-710b6dd30a10@suse.com> <0032186f-80c7-4dba-b46e-10d4a8e2a8cb@bugseng.com>
 <e8bf9817-fd54-9bf4-4302-dcee682f9172@suse.com> <alpine.DEB.2.22.394.2310231417260.3516@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

> It doesn't seem to me that __attribute_pure__ could be correctly used on
> pdx_to_pfn with GCC 7.1.0 for example.
> 
> So in conclusion, I think it is better to avoid __attribute_pure__ and
> use SAF-xx-safe or an alternative approach instead.

I was thinking that another option would be to introduce a macro "pure"
that is defined as __attribute_pure__ for GCC 9 or later and defined to
nothing for GCC 8 or older.


From xen-devel-bounces@lists.xenproject.org Mon Oct 23 22:55:30 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 22:55:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621627.968277 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qv3pS-00062V-Qy; Mon, 23 Oct 2023 22:55:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621627.968277; Mon, 23 Oct 2023 22:55: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 1qv3pS-00062O-Ni; Mon, 23 Oct 2023 22:55:22 +0000
Received: by outflank-mailman (input) for mailman id 621627;
 Mon, 23 Oct 2023 22: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=D6cm=GF=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qv3pR-00062I-PR
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 22:55: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 3d1aa687-71f7-11ee-9b0e-b553b5be7939;
 Tue, 24 Oct 2023 00:55:19 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by ams.source.kernel.org (Postfix) with ESMTP id D5328B82169;
 Mon, 23 Oct 2023 22:55:18 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 88606C433C7;
 Mon, 23 Oct 2023 22:55: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: 3d1aa687-71f7-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1698101718;
	bh=VjOa7hH9JR8P+UsriR7nJXnJVprfcZbnpsS8l2za40k=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=Mox3um/KZBytzTtexyjuLMR91RjGT0zCkzzV09pGH9cYSTR5rZNzDKWqXgr63zeYH
	 RlOC7vs1HosSgKULs+TWbOqDpmaKSR+QMKICkYF2j+BMxXx3HXD910NV4Fn7Use5UY
	 mxMy+n0qQYtk3bXHWBHtAroMEz496+oKOuJdwrVbf69JLFhSO15TCvzZCYzNfK5ihr
	 l2fO0aYSye9PA/Eq+/0RXIOEM/1JD8+PnxjTTHA48XMVqpqtbpvo3T8qeUiqSmF+Vb
	 vrMIOrtpJdbDEAtO+nIb/CxnrD1PRa0QauaJUo7zSAVORupDwG6zXG6+lPAdiclk3x
	 csELAk16eSBZw==
Date: Mon, 23 Oct 2023 15:55:15 -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>, 
    Paul Durrant <paul@xen.org>
Subject: Re: [XEN PATCH][for-4.19 v3 7/8] xen/types: address Rule 10.1 for
 DECLARE_BITMAP use
In-Reply-To: <9fd2cc7aa1a8640630910f873f6ddb65ed7adb6e.1697815135.git.nicola.vetrini@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2310231555060.3516@ubuntu-linux-20-04-desktop>
References: <cover.1697815135.git.nicola.vetrini@bugseng.com> <9fd2cc7aa1a8640630910f873f6ddb65ed7adb6e.1697815135.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, 20 Oct 2023, 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
> in macro 'BITS_TO_LONGS'.
> 
> This construct is deviated with a deviation comment.
> 
> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>

Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>


From xen-devel-bounces@lists.xenproject.org Mon Oct 23 23:04:04 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 23:04:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621630.968286 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qv3xl-0007dS-LR; Mon, 23 Oct 2023 23:03:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621630.968286; Mon, 23 Oct 2023 23: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 1qv3xl-0007dL-Iv; Mon, 23 Oct 2023 23:03:57 +0000
Received: by outflank-mailman (input) for mailman id 621630;
 Mon, 23 Oct 2023 23:03: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=D6cm=GF=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qv3xk-0007dF-BE
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 23:03:56 +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 6f3bc46a-71f8-11ee-98d5-6d05b1d4d9a1;
 Tue, 24 Oct 2023 01:03: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 948E1CE29E4;
 Mon, 23 Oct 2023 23:03:51 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 118FCC433C7;
 Mon, 23 Oct 2023 23:03: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: 6f3bc46a-71f8-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1698102230;
	bh=roVglbnmYd54zwOj+gCJobTbqSooURhAExCPrbXcaJM=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=VrBXPpCTum0QNO6wCrZiNW9oXseyH9A573iFYTKbkZA8udj3rJ/Ph+8WZgIrD3pNw
	 5s1bEwOIyrDdtOcyVm4mCOhuECQhZMyQj6XmSlrT+al4+t7tKpElXvaPutOPVyhLwQ
	 ieqDbszYbVDFTXv52tyYN6LaWvR00wh1+eOI8oHXK9iYSGVSdgDvjaPKMZ6dDnO8rf
	 eyfvJzaQvtStbFiCosEHedujKl6u97Z5QRU23fKxtuJBsq/5lsfNyk7uy9UzF+jr56
	 N9kbGX72TTkuzSu9TaiCF90PCSUCAl4dm166yZw9yfAv/sLsCYD6uBf9lNSTuJjsRQ
	 jmbtuTMvUCy/A==
Date: Mon, 23 Oct 2023 16:03:47 -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, 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>
Subject: Re: [XEN PATCH][for-4.19 v4 1/8] xen: modify or add declarations
 for variables where needed
In-Reply-To: <1da22c0b7c32f62f200383af8607caaf1a02ba0d.1698053876.git.nicola.vetrini@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2310231603210.3516@ubuntu-linux-20-04-desktop>
References: <cover.1698053876.git.nicola.vetrini@bugseng.com> <1da22c0b7c32f62f200383af8607caaf1a02ba0d.1698053876.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, 23 Oct 2023, Nicola Vetrini wrote:
> Some variables with external linkage used in C code do not have
> a visible declaration where they are defined. Other variables
> can become static, thereby eliminating the need for a declaration.
> Doing so also resolves violations of MISRA C:2012 Rule 8.4.
> 
> Fix typo s/mcinfo_dumpped/mcinfo_dumped/ while making
> the variable static.
> 
> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>

Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>


From xen-devel-bounces@lists.xenproject.org Mon Oct 23 23:32:17 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 23:32:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621636.968297 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qv4Ou-0004LQ-RX; Mon, 23 Oct 2023 23:32:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621636.968297; Mon, 23 Oct 2023 23:32: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 1qv4Ou-0004LJ-OP; Mon, 23 Oct 2023 23:32:00 +0000
Received: by outflank-mailman (input) for mailman id 621636;
 Mon, 23 Oct 2023 23:31: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=D6cm=GF=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qv4Ot-0004LD-5x
 for xen-devel@lists.xenproject.org; Mon, 23 Oct 2023 23:31:59 +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 5b747218-71fc-11ee-98d5-6d05b1d4d9a1;
 Tue, 24 Oct 2023 01:31: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 01D1AB82233;
 Mon, 23 Oct 2023 23:31:57 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 4B579C433C8;
 Mon, 23 Oct 2023 23:31: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: 5b747218-71fc-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1698103916;
	bh=iXNzi5iroBNeb9pIMHBuep9UHo+puTOOWGi6z4zxu/s=;
	h=Date:From:To:cc:Subject:From;
	b=Ame/hgz/prttA/d1/QfYGMv0cpgbzyNm+NDKRTNb8NdRegeLm7+/KbdsYsnntwNkk
	 c1++LBhkZOhWpheXl7LHYSO/GqRz4gDI9PCqMJwAC3IoAZsTfQB+TxS9wcw6TdujUl
	 gSKgrPhWmHlfVEwf4mpcvRVWjBM78wkDcPaQz+aJYIQ/yaBqzFe4D2p0VCr3aekwpH
	 JXUnuD4FPWTTGNJm+GojZdbsbfWhlzaQ623cUFMLtTAtnTkWEqqE1lNflguSK6e/BU
	 BdcKhATVtWlhaIql2YFsUU11DCXpozQ4uf2Ke623eHsdJeWDs9cGhtAxIpeF0rUNmT
	 ClrjFMaBtY2zA==
Date: Mon, 23 Oct 2023 16:31:53 -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, julien@xen.org, bertrand.marquis@arm.com, 
    andrew.cooper3@citrix.com, jbeulich@suse.com, roger.pau@citrix.com, 
    george.dunlap@citrix.com
Subject: [PATCH] misra: add R14.4 R21.1 R21.2
Message-ID: <alpine.DEB.2.22.394.2310231628500.3516@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

Add 14.4, with the same note and exception already listed for 10.1.

Add 21.1 and 21.2, with a longer comment to explain how strategy with
leading underscores and why we think we are safe today.

Signed-off-by: Stefano Stabellini <stefano.stabellini@amd.com>

diff --git a/docs/misra/rules.rst b/docs/misra/rules.rst
index b423580b23..56eec8bafd 100644
--- a/docs/misra/rules.rst
+++ b/docs/misra/rules.rst
@@ -422,6 +422,13 @@ maintainers if you want to suggest a change.
 
        while(0) and while(1) and alike are allowed.
 
+   * - `Rule 14.4 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/R_14_04.c>`_
+     - Required
+     - The controlling expression of an if statement and the controlling
+       expression of an iteration-statement shall have essentially
+       Boolean type
+     - Implicit conversions to boolean 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
@@ -479,6 +486,24 @@ maintainers if you want to suggest a change.
        they are related
      -
 
+   * - `Rule 21.1 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/R_21_01.c>`_
+     - Required
+     - #define and #undef shall not be used on a reserved identifier or
+       reserved macro name
+     - No identifiers should start with _BUILTIN to avoid clashes with
+       GCC reserved identifiers. In general, all identifiers starting with
+       an underscore are reserved, and are best avoided. However, Xen
+       makes extensive usage of leading underscores in header guards,
+       bitwise manipulation functions, and a few other places. They are
+       considered safe as checks have been done against the list of
+       GCC's reserved identifiers. They don't need to be replaced.
+
+   * - `Rule 21.2 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/R_21_02.c>`_
+     - Required
+     - A reserved identifier or reserved macro name shall not be
+       declared
+     - See comment for Rule 21.1
+
    * - `Rule 21.13 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/R_21_13.c>`_
      - Mandatory
      - Any value passed to a function in <ctype.h> shall be representable as an


From xen-devel-bounces@lists.xenproject.org Mon Oct 23 23:34:19 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 23 Oct 2023 23:34:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621639.968306 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qv4R7-0005Y9-Bg; Mon, 23 Oct 2023 23:34:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621639.968306; Mon, 23 Oct 2023 23:34: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 1qv4R7-0005Y2-93; Mon, 23 Oct 2023 23:34:17 +0000
Received: by outflank-mailman (input) for mailman id 621639;
 Mon, 23 Oct 2023 23:34: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 1qv4R5-0005Xs-F1; Mon, 23 Oct 2023 23:34: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 1qv4R5-0006XG-6S; Mon, 23 Oct 2023 23:34: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 1qv4R4-0005ux-R9; Mon, 23 Oct 2023 23:34:14 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qv4R4-0003By-Qd; Mon, 23 Oct 2023 23:34: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=UpytlL4p2vWjJV0nPdleUgLG5969YZujbDxy1BvEuL8=; b=TvP5mSiCJgg5bDmyF2VQl5l+nF
	Gx69UFIvydB/1HXclF2HBE9fvKMmR5TzzMYiMU6vN2U4GI80BAe5bF17ffryGuzkzDSEKci7gbtbH
	qXnhAnGoVU+p96mpVWjBbLIpWedN+tYWx+tDmanHHXhWyyGFnOSNHBo/vjpjnGu4l6WE=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183501-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 183501: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=2ad52adb6606f89f0c475faa6552fee69c02d082
X-Osstest-Versions-That:
    ovmf=309450db268c8721afa102c7c49adccd153b0e88
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 23 Oct 2023 23:34:14 +0000

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

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 2ad52adb6606f89f0c475faa6552fee69c02d082
baseline version:
 ovmf                 309450db268c8721afa102c7c49adccd153b0e88

Last test of basis   183500  2023-10-23 19:40:49 Z    0 days
Testing same since   183501  2023-10-23 22:12:16 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Joey Vagedes <joey.vagedes@gmail.com>
  Joey Vagedes <joeyvagedes@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
   309450db26..2ad52adb66  2ad52adb6606f89f0c475faa6552fee69c02d082 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 00:09:09 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 00:09:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621647.968317 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qv4yh-00034C-Go; Tue, 24 Oct 2023 00:08:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621647.968317; Tue, 24 Oct 2023 00: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 1qv4yh-000345-DL; Tue, 24 Oct 2023 00:08:59 +0000
Received: by outflank-mailman (input) for mailman id 621647;
 Tue, 24 Oct 2023 00: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=vYl/=GG=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qv4yf-00033z-K2
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 00:08:57 +0000
Received: from EUR01-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur01on2040.outbound.protection.outlook.com [40.107.13.40])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 84839ffc-7201-11ee-98d5-6d05b1d4d9a1;
 Tue, 24 Oct 2023 02:08:54 +0200 (CEST)
Received: from AS9PR06CA0620.eurprd06.prod.outlook.com (2603:10a6:20b:46e::18)
 by AS4PR08MB8143.eurprd08.prod.outlook.com (2603:10a6:20b:58e::6)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.29; Tue, 24 Oct
 2023 00:08:23 +0000
Received: from AMS0EPF000001A2.eurprd05.prod.outlook.com
 (2603:10a6:20b:46e:cafe::e) by AS9PR06CA0620.outlook.office365.com
 (2603:10a6:20b:46e::18) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.34 via Frontend
 Transport; Tue, 24 Oct 2023 00:08:23 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AMS0EPF000001A2.mail.protection.outlook.com (10.167.16.235) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6933.15 via Frontend Transport; Tue, 24 Oct 2023 00:08:23 +0000
Received: ("Tessian outbound 028b72acc2da:v215");
 Tue, 24 Oct 2023 00:08:23 +0000
Received: from 3d3a02004033.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 2265D6E5-BA3A-4681-87B0-4EC741619B2B.1; 
 Tue, 24 Oct 2023 00:08:12 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 3d3a02004033.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Tue, 24 Oct 2023 00:08:12 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 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.6907.33; Tue, 24 Oct
 2023 00:08:07 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::ae6e:f96c:f2f3:efc9]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::ae6e:f96c:f2f3:efc9%4]) with mapi id 15.20.6907.030; Tue, 24 Oct 2023
 00:08: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: 84839ffc-7201-11ee-98d5-6d05b1d4d9a1
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=Qtt2Ym8yYpbLcf+MBHn9KIKgNN6/ijo6Sx1q9WHR1Xg=;
 b=XbnmNHZQ35HIf85kyIIadjqj0Nt/k4TDu4i43pdTrbzR/3/91+0XdEXoQVvN2xHAkekxxOJlcBWBtgC0vFptcs79JkZKCMcHPdvrOUusGT2VQKcNe7khCvkgHKagpKx00LpKNH5+CAk/f+Lm34L33HNtr0EkJ3Ox3/Pcw6f+DWk=
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: defb67429599c558
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=fsK+b+bVL8cJaoLFYc55HH4Uyk3P5Kp2K+PuGZXCkdV7Ilz6AFqS45e+00/6fUGCMhr4ZQKHi2zPndFqf5unzWy2LDyPjwG9CQhxMx0eGjB/KuBgRjskbfbG0kkD0q31pUi3FOZGAPZ0GjTVu7tHJRLTz/OMUv/051v0zNyzICqxQJF1RfICyEPdiZTzjdgfpC8X0tQbmKn+1nafGN4PDcktmX8okAFQRclawrfDLT2PQn0ahsx8/JDGxFnETT+2jYowVk3lK9t+YEt1fBrBk0jKEMa48kUay01jGjEhyi4DqVAXSwnSqWQayLO+yC95srjL6eETL0QV7pW9UmiZyw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=Qtt2Ym8yYpbLcf+MBHn9KIKgNN6/ijo6Sx1q9WHR1Xg=;
 b=SRbQrOg8ERmQovio0vbL6A9692VXH4fNqkWfol/sXA4Cyu/eS5EdO1xSnKf6j/WlzEhpL8uaYPTBuxzW1GkaAs1g/h7reRuD/t9DN3V5lB5GVOnzNGIuaKKwWpu1o3ksEPg5agz+pLqatRmdijgC68wWhwYO3z0PARyQJ++S80y1nOu7Y7KNXw9T3m27DRadlGlyNk/7uFVGKm1XSWbt3fd/HrAVMSG6CUUjh4dopeqHQf3/RjPWsaRqqzprRO2aGmyL/HuuZ8geOhHvMjm30EwxBih3al3SVag7qGjS7fHqssMesepo+ZngPZWvY+kVrH+HqkxyDpSuD7q+F3S0ag==
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=Qtt2Ym8yYpbLcf+MBHn9KIKgNN6/ijo6Sx1q9WHR1Xg=;
 b=XbnmNHZQ35HIf85kyIIadjqj0Nt/k4TDu4i43pdTrbzR/3/91+0XdEXoQVvN2xHAkekxxOJlcBWBtgC0vFptcs79JkZKCMcHPdvrOUusGT2VQKcNe7khCvkgHKagpKx00LpKNH5+CAk/f+Lm34L33HNtr0EkJ3Ox3/Pcw6f+DWk=
From: Henry Wang <Henry.Wang@arm.com>
To: Stefano Stabellini <sstabellini@kernel.org>
CC: Xen-devel <xen-devel@lists.xenproject.org>, Julien Grall <julien@xen.org>,
	Bertrand Marquis <Bertrand.Marquis@arm.com>, "michal.orzel@amd.com"
	<michal.orzel@amd.com>, "Volodymyr_Babchuk@epam.com"
	<Volodymyr_Babchuk@epam.com>
Subject: Re: [PATCH] MAINTAINERS: make Michal Orzel ARM Maintainer
Thread-Topic: [PATCH] MAINTAINERS: make Michal Orzel ARM Maintainer
Thread-Index: AQHaBfOEiTnKVfFBkkm1wAY7kpk1UrBYEF+A
Date: Tue, 24 Oct 2023 00:08:05 +0000
Message-ID: <DBF0F3A9-9B99-4C9C-806D-E463255A2640@arm.com>
References:
 <alpine.DEB.2.22.394.2310231356210.3516@ubuntu-linux-20-04-desktop>
In-Reply-To:
 <alpine.DEB.2.22.394.2310231356210.3516@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_|GV1PR08MB7899:EE_|AMS0EPF000001A2:EE_|AS4PR08MB8143:EE_
X-MS-Office365-Filtering-Correlation-Id: edc7512c-3fde-4ad0-7a50-08dbd425569c
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:
 eHsfh14fmSSCEi71ExoQaVwpS1GyB85yC+yT3L1Ob40a8yF/rWXYXHFC6QgiFFXvz7IuFlgtJgdofJC9B+pLmiLqiG/VQLDOOYqhWoJKPQhsHJ4qcgUcaDrfE1bFmzPga6EyNSW+7CsnWwo58Cu7DDfEicjdc1822H4893Bj/8s4zMwmmkf5J3FHfR5JkM9BQkYnI/hktGR36hLQ/YGXVBJBpGX3HMsrXl1F/kc3R3Qpwa7bneH3A/YQfsHeqvWPioqe/NqA8w7Z4esBNHlbq10b4hw7wvDjfelulxexV8Vup3be/BlrVr3H/LSigSwIX53v9Buj9m5+M5ROUmHpGIH+8wFUxmrnJjtrrQAe+ACAyPux9an9SRyxqgnrJtUzPhkHISe2b+g0ZZQqEVDjTc1lGK8ed5Y62EYH5sQ/zznkTbz1SwgPwXbi+0kG8CleYlhQ/snfzHg58AJ2JQcGBQayr9vUpvuj4BsfwDtSL4GLu1Aq7WEBx12QNTRhB7603U5+CtHjp7Gm+ZSKehfrOLaUicpFsIRHlnxtVh4681CDMq9yXqEP1Xpv/dqOWJn6+3WtGsoTlyQvohk1luSaV2tUTzx3xokmuDct7p2ufQlWOV9XM2EDH5w6hhuPu8651B+PGEmhqwhdQLwuXbhDCQ==
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)(396003)(366004)(346002)(39860400002)(230922051799003)(1800799009)(451199024)(186009)(64100799003)(38070700009)(26005)(38100700002)(41300700001)(2906002)(4744005)(86362001)(36756003)(5660300002)(8676002)(8936002)(4326008)(33656002)(6506007)(2616005)(478600001)(91956017)(71200400001)(66556008)(66946007)(122000001)(66476007)(54906003)(6916009)(76116006)(316002)(66446008)(64756008)(6486002)(6512007)(53546011)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="us-ascii"
Content-ID: <B4C7A7AA8EFC614FA863E428EA859BEA@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV1PR08MB7899
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:
 AMS0EPF000001A2.eurprd05.prod.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	2693afce-fd21-4710-0228-08dbd4254c18
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	SlwIqsyJIGdtY/kodJREm4J9XIuHZ4OFmuiYW/Z7cFv7mM4xkRcazQPLzmdVywUseVM5ojV3s/vnRADjQeMI7vtO4ym89138xT9h8dUaZO2ho0nCNl5nC9gj/BN7U8HEfsQGqZMNLr/mrp+swtePBvqDk3xWvWww9e3ezihD3+hTA2mb+gYgwH5YNBn2w5Ee04u6gFXMF8LilAfBMHa6Tgv2nWYqmhKG4V09m9ZIyRDcom4KiANznsqMNK45YnXihCH4bFbXGnsil/B5oko6eDRazbNI04QmTARK/IG8ok8ElK4eQRh0slIVlMMmkKTbxBcqOxAUktoV9OK421Xn7xRmi/v7LyxZSja3Vyu4U3SGvYbSj1DNphrcGaGLWjuFZCf+PiQZ3Y5kDleuJ4zpxgO5eFKG8vqDHBv1uKDRl99/JnflPMXcXryBJWfEGyEMfO6I7CbibxKi4i08hh35Dbawqs77m+97ONGdF56kEpreC/65M6G4pmUkysKSSzKfWKG78nzGbB8O9A9hFa+8dcsoZ/3gv+08s6heAcJDDiFLhArVQB4WFdyS0YaSb699pULCrFlC7ydN5FNL1oFitP+Q7hHJLRNIw9/L/+3mfcVhgAPpE393MnnNKmtBDr5uiz+5FrvbNrEZPM7m8xzX1iCMo9OZhYAOtV1Nr91X49J3LZNmn8CsZg1JzabTLiG0WavvXt9uqdypyBu3mAQxj+iB00tyZoPSbv2AirnqEeW8TOTxtakE/j/kINa1rMf7
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)(230922051799003)(64100799003)(186009)(451199024)(1800799009)(82310400011)(36840700001)(40470700004)(46966006)(4744005)(41300700001)(2906002)(54906003)(81166007)(70206006)(53546011)(82740400003)(316002)(107886003)(70586007)(478600001)(6506007)(336012)(40480700001)(6486002)(6512007)(47076005)(36860700001)(40460700003)(5660300002)(86362001)(6862004)(4326008)(33656002)(2616005)(36756003)(8936002)(8676002)(356005)(26005);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 24 Oct 2023 00:08:23.4562
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: edc7512c-3fde-4ad0-7a50-08dbd425569c
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:
	AMS0EPF000001A2.eurprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS4PR08MB8143

Hi Stefano,

> On Oct 24, 2023, at 04:56, Stefano Stabellini <sstabellini@kernel.org> wr=
ote:
>=20
> Signed-off-by: Stefano Stabellini <stefano.stabellini@amd.com>

I saw I was CCed so:

Release-acked-by: Henry Wang <Henry.Wang@arm.com>

Kind regards,
Henry

> ---
> MAINTAINERS | 1 +
> 1 file changed, 1 insertion(+)
>=20
> diff --git a/MAINTAINERS b/MAINTAINERS
> index f61b5a32a1..a5a5f2bffb 100644
> --- a/MAINTAINERS
> +++ b/MAINTAINERS
> @@ -246,6 +246,7 @@ ARM (W/ VIRTUALISATION EXTENSIONS) ARCHITECTURE
> M: Stefano Stabellini <sstabellini@kernel.org>
> M: Julien Grall <julien@xen.org>
> M: Bertrand Marquis <bertrand.marquis@arm.com>
> +M: Michal Orzel <michal.orzel@amd.com>
> R: Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
> S: Supported
> L: xen-devel@lists.xenproject.org
> --=20
> 2.25.1
>=20



From xen-devel-bounces@lists.xenproject.org Tue Oct 24 02:22:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 02:22:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621662.968328 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qv73I-0004b1-Kl; Tue, 24 Oct 2023 02:21:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621662.968328; Tue, 24 Oct 2023 02: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 1qv73I-0004au-F1; Tue, 24 Oct 2023 02:21:52 +0000
Received: by outflank-mailman (input) for mailman id 621662;
 Tue, 24 Oct 2023 02:21: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 1qv73H-0004ak-PW; Tue, 24 Oct 2023 02:21: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 1qv73H-00015I-Dq; Tue, 24 Oct 2023 02:21: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 1qv73G-0001Qx-Ry; Tue, 24 Oct 2023 02:21:50 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qv73G-0003so-RU; Tue, 24 Oct 2023 02:21: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=2z/9hY58LqcF5maQ+vLu2vd/m3FNOcpoDW72XFLxqbM=; b=IQlQBX9ocRY6CJ3+ul3kMFLD9x
	pkDTbvHq5QgN0P7eQQFkpfh/c19G4THtdM4lbvyAQlGGzQxPRBDZulcPtdvALb1BeKiVJ+0nR4k8Z
	FQfpGepnN8R2Hmcgn3uyMOwmk0nX44ReaZMrRGiukEKbNL7XnlqdtF4I4o1tiTupwllE=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183499-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 183499: tolerable FAIL - PUSHED
X-Osstest-Failures:
    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-armhf-armhf-libvirt: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-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-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-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-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-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu: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-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-raw:migrate-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-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd: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-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds: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-qcow2:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=e017769f4ce20dc0d3fa3220d4d359dcc4431274
X-Osstest-Versions-That:
    linux=05d3ef8bba77c1b5f98d941d8b2d4aeab8118ef1
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 24 Oct 2023 02:21:50 +0000

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

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 183494
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183494
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183494
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183494
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183494
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183494
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183494
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183494
 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-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-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-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-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-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-amd64-amd64-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-amd64-amd64-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-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-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-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-qcow2 14 migrate-support-check        fail never pass

version targeted for testing:
 linux                e017769f4ce20dc0d3fa3220d4d359dcc4431274
baseline version:
 linux                05d3ef8bba77c1b5f98d941d8b2d4aeab8118ef1

Last test of basis   183494  2023-10-23 02:28:17 Z    0 days
Testing same since   183499  2023-10-23 18:11:24 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Catalin Marinas <catalin.marinas@arm.com>
  David Sterba <dsterba@suse.com>
  Dragos Tatulea <dtatulea@nvidia.com>
  Eric Auger <eric.auger@redhat.com>
  Filipe Manana <fdmanana@suse.com>
  Gavin Shan <gshan@redhat.com>
  Jason Wang <jasowang@redhat.com>
  Liming Wu <liming.wu@jaguarmicro.com>
  Linus Torvalds <torvalds@linux-foundation.org>
  Maximilian Heyne <mheyne@amazon.de>
  Michael S. Tsirkin <mst@redhat.com>
  Shawn.Shao <shawn.shao@jaguarmicro.com>
  Xuan Zhuo <xuanzhuo@linux.alibaba.com>
  zhenwei pi <pizhenwei@bytedance.com>
  Zhenyu Zhang <zhenyzha@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-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
   05d3ef8bba77..e017769f4ce2  e017769f4ce20dc0d3fa3220d4d359dcc4431274 -> tested/linux-linus


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 02:33:45 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 02:33:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621668.968337 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qv7Eg-0006fs-PM; Tue, 24 Oct 2023 02:33:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621668.968337; Tue, 24 Oct 2023 02:33: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 1qv7Eg-0006fl-MP; Tue, 24 Oct 2023 02:33:38 +0000
Received: by outflank-mailman (input) for mailman id 621668;
 Tue, 24 Oct 2023 02:33: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=m8rW=GG=antgroup.com=houwenlong.hwl@srs-se1.protection.inumbo.net>)
 id 1qv7Ef-0006ff-EM
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 02:33:37 +0000
Received: from out0-213.mail.aliyun.com (out0-213.mail.aliyun.com
 [140.205.0.213]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id b8de0115-7215-11ee-98d5-6d05b1d4d9a1;
 Tue, 24 Oct 2023 04:33:34 +0200 (CEST)
Received: from localhost(mailfrom:houwenlong.hwl@antgroup.com
 fp:SMTPD_---.V6N0APV_1698114808) by smtp.aliyun-inc.com;
 Tue, 24 Oct 2023 10:33:29 +0800
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: b8de0115-7215-11ee-98d5-6d05b1d4d9a1
X-Alimail-AntiSpam:AC=PASS;BC=-1|-1;BR=01201311R241e4;CH=green;DM=||false|;DS=||;FP=0|-1|-1|-1|0|-1|-1|-1;HT=ay29a033018047202;MF=houwenlong.hwl@antgroup.com;NM=1;PH=DS;RN=14;SR=0;TI=SMTPD_---.V6N0APV_1698114808;
Date: Tue, 24 Oct 2023 10:33:28 +0800
From: "Hou Wenlong" <houwenlong.hwl@antgroup.com>
To: Andy Shevchenko <andy.shevchenko@gmail.com>
Cc: linux-kernel@vger.kernel.org, Juergen Gross <jgross@suse.com>,
	Boris Ostrovsky <boris.ostrovsky@oracle.com>,
	Darren Hart <dvhart@infradead.org>,
	Andy Shevchenko <andy@infradead.org>,
	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>,
	"moderated list:XEN HYPERVISOR X86" <xen-devel@lists.xenproject.org>,
	"open list:X86 PLATFORM DRIVERS - ARCH" <platform-driver-x86@vger.kernel.org>
Subject: Re: [PATCH 1/2] x86/xen/pvh: Set up percpu for stack canary in
 32-bit kernel entry
Message-ID: <20231024023328.GA29837@k08j02272.eu95sqa>
References: <cover.1698051454.git.houwenlong.hwl@antgroup.com>
 <90df6cf5674241a85ac7dfe0a1558f1fd025cc17.1698051454.git.houwenlong.hwl@antgroup.com>
 <CAHp75VeXiOprRDNakewo2iSe==EeLUxfxuPYS3R+ZsY2KDmQBQ@mail.gmail.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <CAHp75VeXiOprRDNakewo2iSe==EeLUxfxuPYS3R+ZsY2KDmQBQ@mail.gmail.com>
User-Agent: Mutt/1.5.21 (2010-09-15)

On Mon, Oct 23, 2023 at 08:02:02PM +0800, Andy Shevchenko wrote:
> On Mon, Oct 23, 2023 at 12:10 PM Hou Wenlong
> <houwenlong.hwl@antgroup.com> wrote:
> >
> > In a 32-bit SMP kernel, the stack canary is a percpu variable accessed
> > as %fs:__stack_chk_guard. However, the ABI for PVH entry does not
> > specify the %fs register state. It currently works because the initial
> > %fs register is 0x10 for QEMU, which is the same as $PVH_DS_SEL.
> 
> > %However, for added safety, the percpu should be set up explicitly
> > %before calling xen_prepare_pvh(), which accesses the stack canary.
> 
> Stray leading % in two lines above.
>
Oh, sorry for that. It was added by mistake by my editor, and I didn't
carefully review it before sending.
 
Thanks!

> -- 
> With Best Regards,
> Andy Shevchenko


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 04:14:10 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 04:14:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621671.968347 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qv8nk-00029f-MH; Tue, 24 Oct 2023 04:13:56 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621671.968347; Tue, 24 Oct 2023 04:13: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 1qv8nk-00029Y-JP; Tue, 24 Oct 2023 04:13:56 +0000
Received: by outflank-mailman (input) for mailman id 621671;
 Tue, 24 Oct 2023 04:13: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=vYl/=GG=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qv8nj-00029S-6G
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 04:13:55 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur05on2061c.outbound.protection.outlook.com
 [2a01:111:f400:7d00::61c])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id bbc44501-7223-11ee-9b0e-b553b5be7939;
 Tue, 24 Oct 2023 06:13:51 +0200 (CEST)
Received: from AS9PR05CA0333.eurprd05.prod.outlook.com (2603:10a6:20b:490::19)
 by DB9PR08MB7605.eurprd08.prod.outlook.com (2603:10a6:10:308::10)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.29; Tue, 24 Oct
 2023 04:13:37 +0000
Received: from AM1PEPF000252DE.eurprd07.prod.outlook.com
 (2603:10a6:20b:490:cafe::c3) by AS9PR05CA0333.outlook.office365.com
 (2603:10a6:20b:490::19) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.34 via Frontend
 Transport; Tue, 24 Oct 2023 04:13:37 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM1PEPF000252DE.mail.protection.outlook.com (10.167.16.56) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6933.15 via Frontend Transport; Tue, 24 Oct 2023 04:13:37 +0000
Received: ("Tessian outbound 470906b1fe6c:v215");
 Tue, 24 Oct 2023 04:13:36 +0000
Received: from ea3c1557fde3.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 602ACAB6-EDA5-4960-A50B-2633A2A4B9EA.1; 
 Tue, 24 Oct 2023 04:13:30 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id ea3c1557fde3.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Tue, 24 Oct 2023 04:13:30 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by PAXPR08MB6477.eurprd08.prod.outlook.com (2603:10a6:102:12d::18)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.33; Tue, 24 Oct
 2023 04:13:27 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::ae6e:f96c:f2f3:efc9]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::ae6e:f96c:f2f3:efc9%4]) with mapi id 15.20.6907.030; Tue, 24 Oct 2023
 04: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: bbc44501-7223-11ee-9b0e-b553b5be7939
ARC-Seal: i=2; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=pass;
 b=lH1iwLhurV9f4iyzaoU1I4sajuLbXoofm5TzcctH+d+d68R1dxWR9W6VX/6jw8p7JwDRrSGDjtbTlqb3gW2g8ZFv7RExqBDjbcN/F0ZAdZji4sYMPsYKdcU1RUqsIUW8m586ImzBBhILyGLnUlL3NnBci0PLJJHFRQOZ7GdE9FqBwY1vVR2129kkfAHiIDwRpfQSY10S7cu3BEuIHCDjgQ3zuQzK+isYh4F4yYPGXTqcWgtKEdCYfz5dFKP62/5WhoXMpVOYc3rsZETKk9FJqb6nNOSMxZ7vCC2JdgJBJob6T/sm/bVc/2XOMRhHJwN35zytLFRI7N4NSwXbtUhNYg==
ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=lMghLnZlIGl/tEdH/YcB6wwci4MU65sMfNA8M1HBAzA=;
 b=COO3YafJsiCGvyymimz16XWAmWYqEI++ONbrq+SU4dFZzjzuMW/U/LNQ0qbWOJ0g6t5ST7GYblXCFLHGZ7oeJZwr7FF4xZBMX7AIlTDq7loCmD9y2Zrc3GY2kWV3uQtl74ZEWQbDYSMWAETwIUWvZsRD9gfmvIHjOzEukiJHpzaMN0NMX/6ruCKIeJELfzk7xJpfcZACEGRmH3dZmKiaug8K2CFogN5EqO9QxZ2h9B2WjzFZpNk81M1ifBNVjFNa3jGaIO3pSPy6FkvIpTNjLQpUbAb7UQxHorUJzIzk9PhguFeLUmZeBj22NkZ+HPh2ol5wySyZDBEs1VnkOUxvGg==
ARC-Authentication-Results: i=2; mx.microsoft.com 1; spf=pass (sender ip is
 63.35.35.123) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=arm.com;
 dmarc=pass (p=none sp=none pct=100) action=none header.from=arm.com;
 dkim=pass (signature was verified) header.d=armh.onmicrosoft.com; arc=pass (0
 oda=1 ltdi=1 spf=[1,1,smtp.mailfrom=arm.com] dkim=[1,1,header.d=arm.com]
 dmarc=[1,1,header.from=arm.com])
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=lMghLnZlIGl/tEdH/YcB6wwci4MU65sMfNA8M1HBAzA=;
 b=1w/ZE+EODRtHxvDt3eWvNjRcquszPRUgRQ7sS889sUemUhYj/QWAAqSjvdDsYMShEZbnTjpS2591LDo9PDlQfFAQFm9Ju2gR7s5Z0enchUoCjjpP72FTe/rpMXHK1OYa/m7WbJViIXEbOD5fzi//pzXm0K9/apdmLH2okeLk8EE=
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: 23f2748fe55c1c85
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=I2KOWt8Tb+t5bouEwl4hi9v/hJB6RM5/6zF7doosfWq1naXMNb5+GCyoaFp4ZIXWpuOpwotnARPBAyN/jeT5XSrV/Ds4Xkn2muUqC0WcSPtipdPmPkQE0As+inMh5yvOYPdIO+ocfk3fZ10szMRyimeTiV12KOE51hBlPHgE8Eb2YbjqW0UqfKADkO8joIrVANdThe/q2acj+9kl6sEMQAKkE/+kR+OxnUI1DN1JfXPRUW9Z6FzwPrqI3WtHehMZD12MuMe8gYtPTaFpwg5ER0VcwrlGhNZu+oMvmzYGCOkaAj8588O49uH/rPW9wlvxoPjsBK2w9DJpTW8AoQA9PQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=lMghLnZlIGl/tEdH/YcB6wwci4MU65sMfNA8M1HBAzA=;
 b=YYcb7LoxlahkOfS62bqSrfQfPg5NivvFZo772HibfU7c4XGiBHAfZsACPb9kdUkdJu/lC2X57HpC+yBRHZMuVIHiN40EpjB39YvLjrg0HHMeVf5VbJ+zzhGAS5sMTWvGcYzrIrTYRngZnR6/rGIfQGV95S37hzX8rEKeUXvbzu+00Mat0PAXfnF3rJj6lqj8fz9AfMSeXgA/Z7ZyU6Wd+6n5O09cce+uzUGayWB+nJBEFpGoCwTKSxd0Ba2nFDIX+68MnCq1ieA7eBvgEP1vodpqfESWcJLmxUK8Tq3ZCNfChmdrVBZBInZBs7VVac0m+8n062ruy7GtwvFxAE8c0g==
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=lMghLnZlIGl/tEdH/YcB6wwci4MU65sMfNA8M1HBAzA=;
 b=1w/ZE+EODRtHxvDt3eWvNjRcquszPRUgRQ7sS889sUemUhYj/QWAAqSjvdDsYMShEZbnTjpS2591LDo9PDlQfFAQFm9Ju2gR7s5Z0enchUoCjjpP72FTe/rpMXHK1OYa/m7WbJViIXEbOD5fzi//pzXm0K9/apdmLH2okeLk8EE=
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>, Nicola Vetrini <nicola.vetrini@bugseng.com>, Stefano
 Stabellini <sstabellini@kernel.org>, Bertrand Marquis
	<Bertrand.Marquis@arm.com>
Subject: Re: [PATCH for-4.19] xen/arm64: domctl: Avoid unreachable code in
 subarch_do_domctl()
Thread-Topic: [PATCH for-4.19] xen/arm64: domctl: Avoid unreachable code in
 subarch_do_domctl()
Thread-Index: AQHaBdm+QtPk0OwtbkKhl3mh8vCsNrBYVR6A
Date: Tue, 24 Oct 2023 04:13:26 +0000
Message-ID: <BCDDA219-23D9-4F57-B9D1-6925F30B7AF3@arm.com>
References: <20231023175220.42781-1-julien@xen.org>
In-Reply-To: <20231023175220.42781-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_|PAXPR08MB6477:EE_|AM1PEPF000252DE:EE_|DB9PR08MB7605:EE_
X-MS-Office365-Filtering-Correlation-Id: 0e755781-b36e-433f-8c66-08dbd4479896
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:
 RJKoo4CCYsgzVuBqwUzpkrFUuEGTs8+dJBALuf1eu0oB6eaRCLbiUUScSnFAABpHm8FJUW5LtaIHoETrQ3K1fcxI7E/BGnw+A/ZpPIQvKinvHLf/L2hm/bfqJ+ykb26PbxuN6lPjGhMNsrL+QqI9X34jpHdsLNUo+Q1u0zal+qtC9ri0WMyD656O6h36B6mbMMEsMaN3SSspHm7f8H9XS1qmMM3Tukz5ND3CHSvNlKYqnNAuWDhgpWB2Hvn39MfdxSs1bIGwq3GKzw6LbZsNdp/y8aApavb0gWgWfA+bWLtY4Bx4d5BiZG/3Y+vTpp0iO9QKaDOUMNRP7Ga7oexEdAOI8FpuwONB1U962UpXWPYS7ZR+/Q9EsKgUoBdB/r3EKU07AtAgW+lffYwOaFEVOj4GGxMWzSKuCGkOeoIwSoqSDfJBFaY2doix1uvaQjGUCtADigWMWXtWe1d21nO1wBGdFwk20qW7QzTjAZqgG4+106Z4pr5tci8HNnN61CLuOemah1TtejRdWYilywiUuWoBnO5R1sCB23uHlCu9uvykUvRWtkhOkmGGcTevmVHv+Q7j3iUhtA2ZG+m2fxoSX9D/XoD6B37r4b5QOps7kqnPI+rUfhcogqHZr1ZDuxYON3O+n1lFWO82I0ZLNHtZIQ==
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)(346002)(39860400002)(376002)(366004)(230922051799003)(64100799003)(1800799009)(186009)(451199024)(6506007)(53546011)(6512007)(66556008)(64756008)(66946007)(54906003)(66476007)(316002)(66446008)(478600001)(76116006)(6916009)(91956017)(5660300002)(4326008)(71200400001)(8676002)(8936002)(6486002)(41300700001)(38070700009)(4744005)(2906002)(83380400001)(38100700002)(2616005)(26005)(86362001)(122000001)(36756003)(33656002)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <7F65BADFFD2699439AC24744B5AAF56C@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR08MB6477
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:
 AM1PEPF000252DE.eurprd07.prod.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	9a1190fc-dd68-44d7-7bc9-08dbd4479234
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	ItvqoOH6ZjLPfzelM8vcm2MxXIHFDTXxVPPKD3DEgE3RF/MCnQKKYbHK1AeBwTgq2CH0r4uhL7k60e80EcG68FkHWP/CZFXmbx4x/OUCaQCGEr2MMyy4NNftn/lOKeJSU0DX9/yv8Ft1YGsbf3F5o0h0OUp7OZwIGlkih8D6Ni3o/AtiTT618nCdTYRuN5JDjlKc4TzucmWcW0FcQYgA4BCyMTFD4k/2E2bya1okDPR0SFRKkSs6bbe1h5o8JZoC8ScuBJMOAYLe5XhgZlb6cuUyrlzvGXyKeEwCrX4bRS5AlNtOlsod7oTgPqeN6HwBsGc1Yh4tINP0mddhu0RJrcMlF6yHB4zTE/1Cs60zLIEoftkpW/ikW78nnEGhkJ+9YyT1vhIN2SVj0FwreKgzSmC8yL8p6MhksslvhKrbikJ3UwUFkS+gDvPAleixhFbq6bTAeEAUrl6lILAaMFNZJmCcVRHRd/rCIdTElpvj0NOW8POfZi7+lZwkVc7TLH6OHlvpKjAE9L2ZdoFtS7/XfTEibaQLJaodmWizK5M6w62POrBBM66BM8haG7pVNFbYGPdmAKgS7/eFhKehj0NQlpQE69l4OAMlFwiSu1eaEvRAxm//cZxKbZl7GwdTUniFBHm1kJPui/DneGX/DYeaAWw63Ny3lUSxYa26TrN1rhGML0bEDCq20CTm4JsiDAOq0ilQuRNkWKsCDRHBkoGc1D/A3pKCJv6npZwSWr17PhsiNVumCvj+Ck8wZKj6xIhu
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)(136003)(376002)(39860400002)(230922051799003)(64100799003)(1800799009)(82310400011)(451199024)(186009)(40470700004)(46966006)(36840700001)(4744005)(2906002)(41300700001)(356005)(2616005)(54906003)(70586007)(316002)(81166007)(82740400003)(6506007)(70206006)(478600001)(53546011)(6486002)(6512007)(40480700001)(47076005)(83380400001)(336012)(4326008)(40460700003)(5660300002)(86362001)(33656002)(6862004)(36756003)(8936002)(8676002)(36860700001)(26005);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 24 Oct 2023 04:13:37.0201
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 0e755781-b36e-433f-8c66-08dbd4479896
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:
	AM1PEPF000252DE.eurprd07.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR08MB7605

SGkgSnVsaWVuLA0KDQooK1N0ZWZhbm8gYW5kIEJlcnRyYW5kKQ0KDQo+IE9uIE9jdCAyNCwgMjAy
MywgYXQgMDE6NTIsIEp1bGllbiBHcmFsbCA8anVsaWVuQHhlbi5vcmc+IHdyb3RlOg0KPiANCj4g
RnJvbTogSnVsaWVuIEdyYWxsIDxqZ3JhbGxAYW1hem9uLmNvbT4NCj4gDQo+IFRoZSAnYnJlYWsn
IHRoZSBYRU5fRE9NQ1RMX3NldF9hZGRyZXNzX3NpemUgaXMgdW5yZWFjaGFibGUgYW5kIHRvb2xz
DQo+IGxpa2UgRWNsYWlyIHdpbGwgcmVwb3J0IGFzIGEgdmlvbGF0aW9uIG9mIE1pc3JhIFJ1bGUg
Mi4xLg0KPiANCj4gRnVydGhlcm1vcmUsIHRoZSBuZXN0ZWQgc3dpdGNoIGlzIG5vdCB2ZXJ5IGVh
c3kgdG8gcmVhZC4gU28gbW92ZQ0KPiBvdXQgdGhlIG5lc3RlZCBzd2l0Y2ggaW4gYSBzZXBhcmF0
ZSBmdW5jdGlvbiB0byBpbXByb3ZlIHRoZQ0KPiByZWFkYWJpbGl0eSBhbmQgaG9wZWZ1bGx5IGFk
ZHJlc3MgdGhlIE1JU1JBIHZpb2xhdGlvbi4NCj4gDQo+IFJlcG9ydGVkLWJ5OiBOaWNvbGEgVmV0
cmluaSA8bmljb2xhLnZldHJpbmlAYnVnc2VuZy5jb20+DQo+IFNpZ25lZC1vZmYtYnk6IEp1bGll
biBHcmFsbCA8amdyYWxsQGFtYXpvbi5jb20+DQoNClJldmlld2VkLWJ5OiBIZW5yeSBXYW5nIDxI
ZW5yeS5XYW5nQGFybS5jb20+DQoNCj4gLS0tDQo+IE9ubHkgY29tcGlsZWQgdGVzdGVkLiBXYWl0
aW5nIGZvciB0aGUgQ0kgdG8gY29uZmlybSB0aGVyZSBpcyBubw0KPiByZWdyZXNzaW9uLg0KDQpJ
IGFsc28gdGVzdGVkIHRoaXMgcGF0Y2ggb24gdG9wIG9mIHRvZGF54oCZcyBzdGFnaW5nIGluIEFy
beKAmXMgaW50ZXJuYWwgQ0ksIGFuZCB0aGlzDQpwYXRjaCBsb29rcyBnb29kLg0KDQpUZXN0ZWQt
Ynk6IEhlbnJ5IFdhbmcgPEhlbnJ5LldhbmdAYXJtLmNvbT4NCg0KS2luZCByZWdhcmRzLA0KSGVu
cnkNCg0KDQo=


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 05:57:33 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 05:57:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621675.968357 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvAPn-0007E3-1r; Tue, 24 Oct 2023 05:57:19 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621675.968357; Tue, 24 Oct 2023 05: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 1qvAPm-0007Dw-VK; Tue, 24 Oct 2023 05:57:18 +0000
Received: by outflank-mailman (input) for mailman id 621675;
 Tue, 24 Oct 2023 05:57: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=krZT=GG=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qvAPl-0007Dq-KG
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 05:57:17 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur05on2061f.outbound.protection.outlook.com
 [2a01:111:f400:7d00::61f])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 2dc3eb61-7232-11ee-9b0e-b553b5be7939;
 Tue, 24 Oct 2023 07:57:13 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by VI1PR04MB9907.eurprd04.prod.outlook.com (2603:10a6:800:1d4::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.8; Tue, 24 Oct
 2023 05:57:10 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6933.011; Tue, 24 Oct 2023
 05:57: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: 2dc3eb61-7232-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Y4hdG1udFDN1S1wsJCuGg0ckoHWjLU4jSubwKFIDBkLNk9PUAV5chMUx4hwScyO0lwGf9bCBKaAFaG+fephZ66Ghzp11HjWk0qSw4rjKayy7DfckOBOVkjUtbsBYXvTYhMDhuuYx7cKU53HmKTX+W4rTdfGqJ5DT8/pU18UjtogmR/ro7G4BxqR+R3IGQHps+t4u7iy88Hou7QurJSAcZiCr/VeZNI/YVuC8QZeruASlrYi8o6Rvtqqt9oSwOKvDKJfDcgtwiXYUsdS19jwCghrjFudbBgxycw7o/Mm4mHc4MKZrjZG/cglwYLBDORU40Ax3pMgVrT6uMXHDQuXFvw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=KKJta4hhz0jZnJh/RLsH7N+nISzocWcSGuVbzGVMbxg=;
 b=i4FdiKrnw/uY1SSLgz7CQecnHjGRaSb8IGqN9fRFmi1WvU5rdlbsfW74ZQqJu7mCrukssH0DCDTWnEIJR/x/ctBb7rKw3JjX0Pi4LUeNWpLHajYQxLFNN4/K+hdrAvFPoyBNEdbvgvtyc/Rt19lC3faUncD3eFQCz8xIhpRCkHJToqkg4C/MAb2dXa95jk7TGTngtCLoaqfdo0OKQzp28uWfVTZKkVScyh5B1TrwAvNbGy1ppls82z6U9KS00lwZlcb78CpsE/tGVfriis9pYWZnZSV5v96vBdA6ppVQWMf+eDFVcn6e+Ajx5u+iZDUjmvHB8Cdt6m6ZX0K89qZ/aQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=KKJta4hhz0jZnJh/RLsH7N+nISzocWcSGuVbzGVMbxg=;
 b=L8WXnp+sho+zlgo0pv9Nxh5vTANiirXS07I0zxkes1to7IyUUMs3Q7D3obYrV6R8G5/cFdLw9nEYIMtO9HwLsyMdlY9LQj5fieQwaCLQFCHPLoK3l+5LQnwoplLnnZizTZ+B0O6AoHVtqCP0zxAk3BlrdCBGQ0A4FTySwGaYqwXnRGHIEpFOxNPrgFNsb8D/cmJ1jk3aX8/Z0L+jqtfwUrFfy6jnkgdquhLDNO9xJbmQ1g0XTXeHUVXX7elKW0Q6FZETCchVbfiHQlrMVwoP4ygAFf/azu9Jbypj5pRye641Ej0HWnqDbZAd0T9KFYbV8Dw/Rf8x1YHUwFWl412LhQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <2c6cce29-7aa0-6d3e-e7bb-cb6955fcb50b@suse.com>
Date: Tue, 24 Oct 2023 07:57:08 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: Refactor arm64/domctl.c 'subarch_do_domctl' to avoid unreachable
 break.
Content-Language: en-US
To: Julien Grall <julien@xen.org>
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, consulting@bugseng.com,
 Xen-devel <xen-devel@lists.xenproject.org>,
 Nicola Vetrini <nicola.vetrini@bugseng.com>
References: <6c118d318d68ea3613d9a0a79d75c0c9@bugseng.com>
 <a63ded4f-09b0-41c8-a9c9-832a12fc9133@xen.org>
 <7e72632b-43dd-d2c5-f46a-d0c6de6bc81b@suse.com>
 <0f176fee-4ce9-4197-95d6-11eadb67df9d@xen.org>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <0f176fee-4ce9-4197-95d6-11eadb67df9d@xen.org>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR3P281CA0145.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:95::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_|VI1PR04MB9907:EE_
X-MS-Office365-Filtering-Correlation-Id: 4d1338c3-b710-4dc3-0fda-08dbd4561004
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	9hnPL1NUdl4yOkBdyowYfuxCZZptS01IS+b2D6LbbZtf/XDsY5bHDdrg2JARWXsUlyyZakZurfxb5h9TXu4g7h2wnksF2KUUkG2b50Q//6kCNu3QN6Oo+jKZf7oTvSxCsI/su2MUXTfjBmmog0V0VunkioJ656ew+Z9k7guS7Xrlax8i3JiWCDg1AdGhfr2nsyCsLBv4/47+DCQBKVuNBQuhLHDeFwhwrWWc3qzaLpW/NxfOoTfGmlctCf7YHyTL9uBEHRgdXQH5VqLkq+6cl7pZ+LaDCHgI7SfAsdLxTh6h+gp/UJJ9KviiGCMBat7iwBsA28uHv6R/aq3y8gRX5TlSiMzS3+oDwIEMbGfZC4HWY69F7P5IG3KIEmnT+md7dNZsNuOZlqrVXb3CyrnbhqiFv+uIAyb0eZPo6tTbWrZf1xh6oZra8GiwKVngEPXeMa8s3GRko54oMF+ZxoQBXL/3pF5fjhaYXPMAcZBOG48PLNlX3vII4OqwN7f8TMH6GnojIH2CWQk8ZWZ3uN6Pz6FYIKpWoNQa9VzaxjmjChXsaH7CooRCBITI5f+2dlOD9nilSDTRP5L5ZnuosOik2BLXCifjklCe4dgbw48T8yNubZMhyrQA2CDJIgiEIIubF8BaOOouyp4/oyZxO64eVA==
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)(396003)(346002)(366004)(230922051799003)(1800799009)(186009)(451199024)(64100799003)(31686004)(66556008)(38100700002)(83380400001)(53546011)(41300700001)(6486002)(5660300002)(66476007)(66946007)(6916009)(54906003)(31696002)(478600001)(86362001)(316002)(2906002)(2616005)(4326008)(8676002)(6512007)(6506007)(26005)(8936002)(36756003)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?OGMxUmc4Y25EVlJjWEtiL1BkUGZrU2pTQXZ4c2FXNVh5Q3E0WFhEUStuYWZS?=
 =?utf-8?B?THllSlJzMkJnZ1hnclBvdStKRkpDZG9lQ0EvVzVYV1ptNEdsMFdMNlp3Q3lU?=
 =?utf-8?B?MTF6cGZqWktQaEhqYk11TkhCWUtmTVlBOW9TNlB2dzRqaXdZV1o4MVlFWDVL?=
 =?utf-8?B?T2FTRW9QZXIvSTdEOU1pRm9OOEU3RUxvR0QzQTVwRVdsdlhuaDdDYzJOaWhq?=
 =?utf-8?B?MHRiQzdkejZHM3pML0RZK3BZY3RtUlFXSmZNVGxjbmZqZnRkT21kdnpCRzJZ?=
 =?utf-8?B?Z2htY2pOZW00TVBwWElTRjdYUVVYOXNaN0E3Nit2cTFkaVlMcGlUWml2dS9v?=
 =?utf-8?B?TlkyQXlFYWhxSnRsWjZ3VERGYktSSy9qTkhMYXFuaXhjSnFHRW4xNlhaK2M5?=
 =?utf-8?B?N2Nxb0xkU3pEVC9jM0txZWx3eFlqTkpRZGRqeksxZW0xdjN2Nm03YjdNNW5v?=
 =?utf-8?B?QU1yKzBzbTJ5eGlsNUdiMWlCc0lHQ0JBeDBZZG0vcDJDV2EvRUcyUVNjOXl4?=
 =?utf-8?B?cmZZUDgzK2J3dzRUYjlxaXYzb05SL2RaTG8yU1lDQVl2aUs3ZFNsbStOZjJP?=
 =?utf-8?B?Zm9ZQmlvQmJGa1ZsNS80WHVVbk1Gd3I1QW5yRjhiSHdwR29FZytpanczS2xK?=
 =?utf-8?B?Y2FPbXF6SnVvZkh6b0NlaHdrcmVzMmJwMTk3VTN6bnFXL0JGcGx0WVMyY2Vk?=
 =?utf-8?B?TWlVemVGVE9uRVpjNXYvbU9reTJka2ZXQjcxSy9xRkdwV04wTlZacFVtWkJq?=
 =?utf-8?B?MzMvMTBqV1FWbFhheDNBNmNVN09UOU85bFYwVVNSVXdiQ1NPdlR4WTFmd2Nj?=
 =?utf-8?B?S0E2cnk5Q3dma2ZiNWRzaTJSbkcwSGhPajJnQmYzMElFb0I1UEo5NCs2a0pt?=
 =?utf-8?B?THRLaDQwZ3MvVE83M0MwTkc4cGtsbVZYdkUrQzlHTkVMVmg5b1c1eW9sVTl1?=
 =?utf-8?B?dUtSZGVwQjdHbUZWK2RZWCtJUjVKclJHL1p6Ni9ZRTdRV2hoaWMvVmthNy91?=
 =?utf-8?B?OWk3OHA0NEh3RUJpbmpmV1Q2ZWVXc282aDNkUGpxOVRuZzZmOG9GSkpLWXU2?=
 =?utf-8?B?ZGFTeGNjYkhBNjFTcnNZU2FLanJsQ2dZc0t3TkR6Tm5QNHptdjRiMnRpc2Za?=
 =?utf-8?B?U2szMEw0dUh3N2tCbW5uZjdMY1dRbi90a2Rsd1docFQwTVNWdVAwVHlEVHRs?=
 =?utf-8?B?bjk2OVpoWXM5emNyV3JDNHIyUCtYcms1Wmh3SlowZWFwZU91SEFvWk1hN25B?=
 =?utf-8?B?Ny9HS3h0Q05FaXorSjJvTGhJdDNHOWFVRnJCZGNvN1JMdnpxVGFMNHNJTmNq?=
 =?utf-8?B?L0R2UGpBbldKV3BMTjBSM0JFbnVNM01SOTNwUnhqTGpKSlFNSXEvckZ3bTli?=
 =?utf-8?B?RlQrZWNBWFdOejlHclVVbjUvQXdjeWhXNE9MbDlpQlNFWDUwWTQ2QjJSaHlv?=
 =?utf-8?B?aHhHYXhUTTNVb3lHdEw1YzVMSWNKOXVOSHF1eExaTzQwcXRyZStjMTU0UmVz?=
 =?utf-8?B?c2VJYmYwYjJOdmdkaVk1MkwzUHFKcHlvd3h6L0xqU0txYXJDaXNCM2ZBNDAv?=
 =?utf-8?B?Z0lldVQ4TjNTRGQxMlBtOWtPbXczMnVsTzkzUFh1MGxrNmx6UStrQXBDN1Rn?=
 =?utf-8?B?Z2k2VUxrR1JRWjhDdmIyZEkzU1pZNThPcmR4RDlIOXBmNS9uQ1pxaFJvUnI2?=
 =?utf-8?B?Yy9XNXdydXQxSXdzTllvcnFGY1pTZ0hnZ1ZRTUhWSHBOUUNnbHpQeG5qMkZB?=
 =?utf-8?B?M0NmZlVma0g1cjYvcFdvM2wrZDdlMVhaZ0h3YTJIUmZlNlJiYmdxdjV3MlZj?=
 =?utf-8?B?ZW40eW9IUWdRdTkrVUFyS3dDYlBEOVlVWjMvSmFGMlFvUzJzd01WSk0vSTdQ?=
 =?utf-8?B?U0tFcDR6MDdLa0RnK1MxYVhSeklvek5tSk9uVmRudnU3aDZNcVhLRTRIdTBX?=
 =?utf-8?B?NzlkaWxTb1EzMVpycFNNQXdnNnkzdTFaOG56VzBhM29JY0ZLako1NmJJNkxQ?=
 =?utf-8?B?YTlxUFBSSXlrdkJEMjQ0TDlyV2pPUlRDdXNDMlJBQ0gxak11RGtzU29kKzE4?=
 =?utf-8?B?RzJKMkpMSFNjenpLY1J1SEtZYytNNGJrdkMrVDFRdlhObDhUbS9rcXIxQnc4?=
 =?utf-8?Q?jxwReqz7SdVax7HkhfWl2XPtQ?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 4d1338c3-b710-4dc3-0fda-08dbd4561004
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 24 Oct 2023 05:57:10.6778
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: IAx6krFgMhHE5vY8Lb6fC/Q99eWWnCsY4qz0ZZu0bjnGU4IdLG6t1J6IUAdeXBlTVrYt3WhOv2zRwmQRjAuINg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR04MB9907

On 23.10.2023 18:07, Julien Grall wrote:
> Hi Jan,
> 
> On 23/10/2023 16:15, Jan Beulich wrote:
>> On 23.10.2023 17:00, Julien Grall wrote:
>>>
>>>
>>> On 23/10/2023 15:51, Nicola Vetrini wrote:
>>>> Hi,
>>>
>>> Hi Nicola,
>>>
>>>> while taking care of some patches regarding MISRA C Rule 2.1 (code
>>>> shouldn't be unreachable), I
>>>> came across this function:
>>>>
>>>> long subarch_do_domctl(struct xen_domctl *domctl, struct domain *d,
>>>>                          XEN_GUEST_HANDLE_PARAM(xen_domctl_t) u_domctl)
>>>> {
>>>>       switch ( domctl->cmd )
>>>>       {
>>>>       case XEN_DOMCTL_set_address_size:
>>>>           switch ( domctl->u.address_size.size )
>>>>           {
>>>>           case 32:
>>>>               if ( !cpu_has_el1_32 )
>>>>                   return -EINVAL;
>>>>               /* SVE is not supported for 32 bit domain */
>>>>               if ( is_sve_domain(d) )
>>>>                   return -EINVAL;
>>>>               return switch_mode(d, DOMAIN_32BIT);
>>>>           case 64:
>>>>               return switch_mode(d, DOMAIN_64BIT);
>>>>           default:
>>>>               return -EINVAL;
>>>>           }
>>>>           break;
>>>>
>>>>       default:
>>>>           return -ENOSYS;
>>>>       }
>>>> }
>>>>
>>>> here the break after the innermost switch is clearly unreachable, but
>>>> it's also guarding a possible fallthrough.
>>>> I can see a couple of solutions to this:
>>>>
>>>> - mark the part after the switch unreachable;
>>>> - introduce a variable 'long rc' to store the return value, and
>>>> consequently rework the control flow of all the switches
>>>>     (e.g. rc = -EINVAL and similar);
>>>> - remove the break, but I consider this a risky move, unless -ENOSYS
>>>> would be an ok value to be returned if some case
>>>>     from the switch above does not have a return statement.
>>>
>>> - move the nested switch in a separate function, so the code in
>>> subarch_do_domctl() can be replaced with:
>>>
>>> return set_address_size(...);
>>
>> But that would help only if inside the new function you still re-
>> layout the switch() (or replace it by, say, if/else-if/else),
>> wouldn't it?
> 
> I am not sure why I would need to re-layout the switch. This should work 
> (untested):
> 
> diff --git a/xen/arch/arm/arm64/domctl.c b/xen/arch/arm/arm64/domctl.c
> index 14fc622e9956..8720d126c97d 100644
> --- a/xen/arch/arm/arm64/domctl.c
> +++ b/xen/arch/arm/arm64/domctl.c
> @@ -33,27 +33,31 @@ static long switch_mode(struct domain *d, enum 
> domain_type type)
>       return 0;
>   }
> 
> +static long set_address_size(struct domain *d, uint32_t address_size)
> +{
> +    switch ( address_size )
> +    {
> +    case 32:
> +        if ( !cpu_has_el1_32 )
> +            return -EINVAL;
> +        /* SVE is not supported for 32 bit domain */
> +        if ( is_sve_domain(d) )
> +            return -EINVAL;
> +        return switch_mode(d, DOMAIN_32BIT);
> +    case 64:
> +        return switch_mode(d, DOMAIN_64BIT);
> +    default:
> +        return -EINVAL;
> +    }
> +}

Well, yes, if you're happy to have a function returning a value without
a return statement at its end.

Jan


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 06:15:18 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 06:15:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621679.968367 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvAh3-00021c-Kh; Tue, 24 Oct 2023 06:15:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621679.968367; Tue, 24 Oct 2023 06: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 1qvAh3-00021V-I0; Tue, 24 Oct 2023 06:15:09 +0000
Received: by outflank-mailman (input) for mailman id 621679;
 Tue, 24 Oct 2023 06:15: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=krZT=GG=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qvAh1-000216-JW
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 06:15:07 +0000
Received: from EUR01-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur01on2058.outbound.protection.outlook.com [40.107.13.58])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id ac68b274-7234-11ee-9b0e-b553b5be7939;
 Tue, 24 Oct 2023 08:15:05 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS4PR04MB9575.eurprd04.prod.outlook.com (2603:10a6:20b:4fd::11)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.11; Tue, 24 Oct
 2023 06:14:35 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6933.011; Tue, 24 Oct 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: ac68b274-7234-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=O56b9hzFx3NbtpMMUXJdYBdECBsMnkC42KGy+Ek1mXgD+/P59PaspsJswV0XU4+fRykAAUojfuj/m+8TiS2QeOokRdErktWTtA9TJMympFahSlxALt0aR6Y5hJ1IValNy2rPOZtmA6NzJ7CQeoenNDJT8PI2wrvStRjwP6evgJy02x4N703mT0ju0d7OGTidRwgcfLWvaZivBGnBMD11Z2hUcRDxbmooqb4r4dc2FUwuy1EZ9wk36enO1tI2VREcQeHiy7IT44zi1ZAqzjgzxhLzmzbuxinDjc5VEeg6qZpY8JvCL5cWuIQiJpAokOCDgveqMuZwpmrQ+DQStwfRbg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=vqtUNM+2AYnlBvGcxbzF+bWVLLpWpIqj+6EYPKzDNSc=;
 b=gPCaGB4oUeIKPBIYq7c1ZuHS2DRAzTwMMJmjFvUsonCPb/Loac8JjyswexfZdvqcwtV8dgVH5lOMvlxWFNftO0SsABfk0rVmXPqq28WTnmjxlwCBeLGoVg9v4cAmj428OM1WqKn4neY7c0xBQt2Y3yGBHazu6qO7dsEklAUmqzZp1dAgZsCpR3e6PVpEvhFCZrRjniIZhCXQQsm4p4eYABx7HyVC3JKHCndBYyH5Kgp2XzhEDo92WVXN5Ody92nX6P64bv+UZOAM2lh50XE/lsy42LPELL4rJMXs91B8s0UaCcIunvzVkG4OS8J3WBwkTwfq/2eQ/WA43Y3a/5rqIQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=vqtUNM+2AYnlBvGcxbzF+bWVLLpWpIqj+6EYPKzDNSc=;
 b=TVLoi9aC7CgJcNj2obSmnljGUbkz2+k3h0TZ6MKxcBu5j71vjoUg0wLNFzL6/9KLwAGBuPJrhJ95R569GYuFPHXVIc0Qy38ui0W+JtuEA+1PkxWxeowhXPTDqR6qxKiQ5fXiqXakPqmAmYshet7SP/ezIfq2yarK7TiatF+gcj2oUk27jXM0dIMgee0hujS0cEyFKCP9TDxcJm3CdKts8EuKFsoJZbh6rN2Jdw/MVO6yJOsxAU1XTRhqVshfBJ+/sVm5pLmLMB2f4rrPKOKz33ogFnyyJPwDm32/3R/Adb9bwFTUDHA4WqIYJQpVqj7gwu9dPchFDYxHODuLaZFUyQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <dd33e92f-03aa-cf3c-23d7-dcf9cce23c8e@suse.com>
Date: Tue, 24 Oct 2023 08:14:33 +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][for-4.19 v3 1/8] xen/include: add macro LOWEST_BIT
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.cooper3@citrix.com, roger.pau@citrix.com,
 Simone Ballarin <simone.ballarin@bugseng.com>,
 Doug Goldstein <cardoe@cardoe.com>, George Dunlap
 <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Wei Liu <wl@xen.org>, xen-devel@lists.xenproject.org
References: <cover.1697815135.git.nicola.vetrini@bugseng.com>
 <546cf30aa43d6d0687a9a6c6d23b11128e5783e8.1697815135.git.nicola.vetrini@bugseng.com>
 <f504772a-68b4-fbfa-e7d4-8d22992c7944@suse.com>
 <f23a1f95916bd61ddcd5002428d8876c@bugseng.com>
 <6d113a237846c7a41aa083e806f172e7@bugseng.com>
 <5475d9e5-ec1c-7f71-ee77-59ec2e6ee01e@suse.com>
 <alpine.DEB.2.22.394.2310231340320.3516@ubuntu-linux-20-04-desktop>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <alpine.DEB.2.22.394.2310231340320.3516@ubuntu-linux-20-04-desktop>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0100.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:a9::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_|AS4PR04MB9575:EE_
X-MS-Office365-Filtering-Correlation-Id: 4c8d162c-aac3-4ab7-130e-08dbd4587e9f
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	ahKwEyMfs+45nVrw/EhR9STvuXX63MMXGHS1rYmMXMQlr9hFZK9rK6nq74Cpb8Nw7caUjui4TqU8em8bJwsU8gytKoG9UpcpXj0wob3oHzGDYoA5+dWo/CoMrNafyijFqlJyT2txp1rYAUmmna/hhdNPTzGS9TZY/QWPH4UJSue7CxDy+UgciNppiJhCH/eS8hNMApLnTWimW4/beZIvxlZ5ueLTvMRcvG/ol4+RI8m5i97TpCmryecq2pQlhKyjqmFf2zDtt9QD1h/x2CNHq8cPBXxCWUNr+rW+34vlwSvGpLcWhcqIKJjFEqlV4/lPJI73133Gh3XFwfMaiMDcrqRBW98twWsnlzRB/gXiMnJufshtF7yqW+BpjbCPeF6fqZlZTLsvhQdEXWHsr/0IA7sjXLcR41DiBb3Sts7xRRaKHXKekGJVuYrCGkrf0zVPcdWk2qa6zbxKwfITEewu7FptV2ok84DwFFTljh1V2bhtWg/RThDjcV3FkkL/jDfX9yUhek4W6o9HH1sxv+Z2vQHyGnnlBJWnBl6PeDwpcuRGFzkAvuQVJpgOga62z2tZV8wB/kROPXZMM0ODyPsNm5XC6mA3lNokSasLKIIqQPM+xx7iue0540bgZ9mHnUn2dwNwE/FwKZXqT7cXoZgzHQ==
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)(376002)(396003)(346002)(230922051799003)(64100799003)(1800799009)(186009)(451199024)(66946007)(2616005)(6512007)(6506007)(7416002)(41300700001)(8676002)(5660300002)(4326008)(53546011)(2906002)(8936002)(478600001)(6486002)(66476007)(54906003)(86362001)(316002)(6916009)(66556008)(31696002)(38100700002)(26005)(36756003)(31686004)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?VzVmbk92ZElyL0k1NVhnL2ZWc3V4aFp2ZjlleldOR3hIdEV5TUNNZmVaS283?=
 =?utf-8?B?UmQ3VWtwVjRoYmpNSml6SHdJR1Z3KzNlb3N4aTNhS05TeDNnV3VqSC9PWWF5?=
 =?utf-8?B?RXB6TWtzVVI1dWZWWmtYczBJY0ZSMnB2QUdtK2NiUTliZldSTFNLYTRhZExU?=
 =?utf-8?B?NjBpZWZUY0tqQk0yZ01nRUJOeVhlZUhFeTFqZkZ2ZVIxeXp2SWlGOFJQMktJ?=
 =?utf-8?B?NEpqYkpXZUVaTDhDT29FSmFUOTdRcmtsMWlhVG1IT3Z4blBNQ2pVcldGMkNO?=
 =?utf-8?B?dzU4b0JxMURXcHNpK1ZOcTY3bktXa205OWxwWHJvd2NiT3RjdFVlQlBCTGtn?=
 =?utf-8?B?UlcyZXZQUlcxRUNUS3h1bWdIcVpBeGVpbVcvVWJuK2xVVWZCR1JlT2t1WnJN?=
 =?utf-8?B?RDJ2SE9IQXBiV2pjaU94YTgrMzBnbWM2MjhMUitXSFJnVUpPMFZRTFJlTzRa?=
 =?utf-8?B?eUxzd1FGcFB2SGkvYWRHS1l6S0RPLzBRMkhXQzhxdDE1Q0ZpSGU3SFdCVkVT?=
 =?utf-8?B?NitVSHNyU2xtbHVnajJVUC9rS2JZWUxOWSswRmUvbCsvWjYrM1JUcWtwNkNq?=
 =?utf-8?B?ay8vWGljSWVSQkJKMDBIcE5aa2t4ZURSTStUaTg2ei8zN3pPRXgyeUpSS1o3?=
 =?utf-8?B?bkh2NXhaQzArdmxTT2d2Qzl5QlhUT3ZlWCs0QXI4azduMEhaQ2lRLzM0a3FP?=
 =?utf-8?B?NmtBK2pOQUxDelU2aVRoelNCMlUwdEgxTEFxbElNengrd1NBMk1IZWNrMG5l?=
 =?utf-8?B?RXhaZHVoWHFtdTdOSzUvdFZQd3pDM1ovbVZOUmJyQmo1ai9MRlI0OTZWa1pM?=
 =?utf-8?B?UW1LbFNlNVlxa3crKytsRnN4OEMzbGx4cGFuU1pCODkvTHNUcyt6UU9CZU8w?=
 =?utf-8?B?THZqdWIzNkt2U3NmNHNqcldwN1pJT1JhdndBc1haaVMrdXRRd3V4STVPbTFq?=
 =?utf-8?B?SUZmWFFoNXJsVXVwYy9pdTZjYm1TeWNWVXkrU05teVdkSXVxa2NqZ1E2NkxR?=
 =?utf-8?B?eGZTUmdmaWx2MXVGMjY2Q2cxZ05QYU1NLzBTeWFtUStVVXBHYzkrdVM1dVhw?=
 =?utf-8?B?aU85YnAzbWM0azczYmFTTDVGOWJROUhISk04ZEZSd3VOc09ZSDJtOE1tRks1?=
 =?utf-8?B?NDZlcnlHT3k4c1dxQXp4ZXh0OUdySzE3NklBN0tMdmtyaWRGbm5MTldCVnFY?=
 =?utf-8?B?ZkpXUktadXFlZXpIY05nK05nZEovTW9jc3R6cXd2aDdQaHdlOGpodHFqNUt0?=
 =?utf-8?B?VEFBVW1KNm1wRjROYTVwNS9SZWNBQ2dKZmJKenVrRkxuYTNjaE9hOGsxYTVo?=
 =?utf-8?B?VFJFZXh2WGw0a2F1anF3V1FiWDV5WHJVc2tSR25uSTg0eXAzSlNHajJFcTJN?=
 =?utf-8?B?RU9SOVpRdVZoSG9QRVFuaERSZFVvWG01aitCZW9jeGhFYVQyb3hDNFBERVMw?=
 =?utf-8?B?WnF6dDlYYlZldlJjNEpaTU5qbWVHL3pjcEllRWpPMXhrNTc5VGRLWG1lYTBR?=
 =?utf-8?B?UTZ1N2IzeTZnanNHM2tyeUxpV3VCY0I5Y1FEcGRlUzBncjhKajhNTFNIeXM4?=
 =?utf-8?B?U2oveEFVT0xuaDFlTjR5WXQ0aFlqcXZPYUt2cVJmeUQ0MDZuZEZpZ0hjZzdp?=
 =?utf-8?B?NXgvOXNMUTRnQUJoSHJraXQ2R2podjNoWCszYkFNc0h6SGwyTWVKeVNhRWFS?=
 =?utf-8?B?SldYSUJJMzR5UXFaZkJmRUZDSklpOWRCZ0s5b0VSN1VKeVI1YXJ3YUp2OHNT?=
 =?utf-8?B?endpT2Vsa0gzYWVXZEdMaEp6STd3VWU4TXFoYUhVVlhXOTkwSFRRUDhiS1U0?=
 =?utf-8?B?dTRDd0dNNTRVRExuOXpnL2JvdzMwVEtMN3lTWUNBU0xYOTFPbEFJdVNUVSt0?=
 =?utf-8?B?cE1HbnpldHhHRHJBNERXNVMxUFFaVENWYWtWeDVRcHkyeDlkQjg0VzM4c05z?=
 =?utf-8?B?cFZsNW5FSTdXRXF3TEordjVtSEYvMWdmVFBDNlM3U1Y5QnhxUUoyU3kxdGV5?=
 =?utf-8?B?YzNBcTJsc3BoZUhDTCs0MnZ6VFVLUHdEc2VyS25MczZZUEN1VEJLMWhEakc4?=
 =?utf-8?B?dVE3Z09UaHhJV0hWUUpOSktnWHU3b1JuQ3g3M3hXVEZEMGo1NUFOV281c0hV?=
 =?utf-8?Q?RbvkgKd8idn3l4Xdy13FA1t0h?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 4c8d162c-aac3-4ab7-130e-08dbd4587e9f
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 24 Oct 2023 06:14:35.1542
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 4bZVwK40as0KiBhdpU2vVnH/N1FLqvk1j7NMfI5fkpP3K6Kuh+zZzLw5GSRD687HWb1VCIJ/ItAxNxdNuflYcw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS4PR04MB9575

On 23.10.2023 22:44, Stefano Stabellini wrote:
> On Mon, 23 Oct 2023, Jan Beulich wrote:
>> On 23.10.2023 15:19, Nicola Vetrini wrote:
>>> On 23/10/2023 11:19, Nicola Vetrini wrote:
>>>> On 23/10/2023 09:48, Jan Beulich wrote:
>>>>> On 20.10.2023 17:28, Nicola Vetrini wrote:
>>>>>> --- a/automation/eclair_analysis/ECLAIR/deviations.ecl
>>>>>> +++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
>>>>>> @@ -246,6 +246,12 @@ constant expressions are required.\""
>>>>>>    "any()"}
>>>>>>  -doc_end
>>>>>>
>>>>>> +-doc_begin="The macro LOWEST_BIT encapsulates a well-known pattern 
>>>>>> to obtain the value
>>>>>> +2^ffs(x) for unsigned integers on two's complement architectures
>>>>>> +(all the architectures supported by Xen satisfy this requirement)."
>>>>>> +-config=MC3R1.R10.1,reports+={safe, 
>>>>>> "any_area(any_loc(any_exp(macro(^LOWEST_BIT$))))"}
>>>>>> +-doc_end
>>>>>
>>>>> This being deviated this way (rather than by SAF-* comments) wants
>>>>> justifying in the description. You did reply to my respective
>>>>> comment on v2, but such then (imo) needs propagating into the actual
>>>>> patch as well.
>>>>>
>>>>
>>>> Sure, will do.
>>>>
>>>>>> --- a/docs/misra/deviations.rst
>>>>>> +++ b/docs/misra/deviations.rst
>>>>>> @@ -192,6 +192,13 @@ Deviations related to MISRA C:2012 Rules:
>>>>>>         See automation/eclair_analysis/deviations.ecl for the full 
>>>>>> explanation.
>>>>>>       - Tagged as `safe` for ECLAIR.
>>>>>>
>>>>>> +   * - R10.1
>>>>>> +     - The well-known pattern (x & -x) applied to unsigned integer 
>>>>>> values on 2's
>>>>>> +       complement architectures (i.e., all architectures supported 
>>>>>> by Xen), used
>>>>>> +       to obtain the value 2^ffs(x), where ffs(x) is the position of 
>>>>>> the first
>>>>>> +       bit set. If no bits are set, zero is returned.
>>>>>> +     - Tagged as `safe` for ECLAIR.
>>>>>
>>>>> In such an explanation there shall not be any ambiguity. Here I see
>>>>> an issue with ffs() returning 1-based bit position numbers, which
>>>>> isn't in line with the use in 2^ffs(x). (Arguably use of ^ itself is
>>>>> also problematic, as that's XOR in C, not POW. I'd suggest 2^^ffs(x)
>>>>> or 2**ffs(x).)
>>>>>
>>>>
>>>> Makes sense, I think I'll use an plain english explanation to avoid
>>>> any confusion
>>>> about notation.
>>>>
>>>>>> --- a/xen/include/xen/macros.h
>>>>>> +++ b/xen/include/xen/macros.h
>>>>>> @@ -8,8 +8,11 @@
>>>>>>  #define DIV_ROUND(n, d) (((n) + (d) / 2) / (d))
>>>>>>  #define DIV_ROUND_UP(n, d) (((n) + (d) - 1) / (d))
>>>>>>
>>>>>> -#define MASK_EXTR(v, m) (((v) & (m)) / ((m) & -(m)))
>>>>>> -#define MASK_INSR(v, m) (((v) * ((m) & -(m))) & (m))
>>>>>> +/* Returns the 2^ffs(x) or 0, where ffs(x) is the index of the 
>>>>>> lowest set bit */
>>>>>> +#define LOWEST_BIT(x) ((x) & -(x))
>>>>>
>>>>> I'm afraid my concern regarding this new macro's name (voiced on v2) 
>>>>> hasn't
>>>>> been addressed (neither verbally nor by finding a more suitable name).
>>>>>
>>>>> Jan
>>>>
>>>> I didn't come up with much better names, so I left it as is. Here's a 
>>>> few ideas:
>>>>
>>>> - LOWEST_SET
>>>> - MASK_LOWEST_SET
>>>> - MASK_LOWEST_BIT
>>>> - MASK_FFS_0
>>>> - LOWEST_ONE
>>>>
>>>> and also yours, included here for convenience, even though you felt it
>>>> was too long:
>>>>
>>>> - ISOLATE_LOW_BIT()
>>>>
>>>> All maintainers from THE REST are CC-ed, so we can see if anyone has
>>>> any suggestion.
>>>
>>> There's also LOWEST_BIT_MASK as another possible name.
>>
>> While naming-wise okay to me, it has the same "too long" issue as
>> ISOLATE_LOW_BIT(). Considering x86, in the BMI ISA extension, has an
>> insn doing exactly that (BLSI), taking inspiration from its mnemonic
>> may also be an option.
> 
> I don't mean to make things difficult but I prefer LOWEST_BIT or
> MASK_LOWEST_BIT. It is clear at first glance. BLSI is not as clear,
> unless you work on the specific ISA with BLSI.
> 
> In general, I do appreciate shorter names, but if one option is much
> clearer than the other, I prefer clarity over shortness.

That's fine with me, but note that neither LOWEST_BIT nor MASK_LOWEST_BIT
really provide the aimed at clarity. The shortest that I could think of
that would be derived from that would be LOWEST_SET_BIT_MASK() (albeit
even that leaves a bit of ambiguity, thinking about it for a little
longer). The main point I'm trying to make that _if_ we need a wrapper
macro for this in the first place (note the other thread about macros
still requiring deviation comments at all use sites for Eclair), its name
needs to somehow express the precise operation it does (or, like would be
the case for BLSI, make people not recognizing the name go look rather
than guess).

Jan


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 06:18:12 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 06:18:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621681.968377 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvAjz-0002bU-0G; Tue, 24 Oct 2023 06:18:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621681.968377; Tue, 24 Oct 2023 06:18: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 1qvAjy-0002bN-Ts; Tue, 24 Oct 2023 06:18:10 +0000
Received: by outflank-mailman (input) for mailman id 621681;
 Tue, 24 Oct 2023 06:18: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=krZT=GG=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qvAjx-0002bH-Mk
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 06:18:09 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur04on0609.outbound.protection.outlook.com
 [2a01:111:f400:fe0e::609])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 18b7e74a-7235-11ee-9b0e-b553b5be7939;
 Tue, 24 Oct 2023 08:18:07 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DU2PR04MB8517.eurprd04.prod.outlook.com (2603:10a6:10:2d0::20)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.11; Tue, 24 Oct
 2023 06:18:04 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6933.011; Tue, 24 Oct 2023
 06:18: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: 18b7e74a-7235-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Bh44/ngxNTWc7Sm/ZvO7obM9x4ufMPNfaXCe5KyYEXmZ+wQvL5q1F4MYqxsQ2iTaiZjhWd72voIksIVjMcDeeRMjKhTM9LY19xkmiXYbHW7/mZfqIOHeDPScj5kBMCdaAhgfFqlposC4+y1Cd5rKC0CpQtRmzLNkr/mGIuMpD3JgcBkeaKOzDHcaESUrGx3k8fXvGZNnPnBCTCl2KDC087Qg3cUrd4YTPISWLf7JoWQbPJFxxcKtpfmdkm4HEDQSNY/3HH4JB4vyFtVUQUJMOBeuuePbwbrEAIdgon5B1fq7vjGIGwep/Dw+eA/8f2HNONPMmkAF2+E4yX4smskzGQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=meOhckSGz7sB6XMATvRUeZ3/xGpt4+/PdGAQpnQpXNM=;
 b=hgaziBP4iraP7ln7Ug8YovXzrod0XokDDhArnPe6QtiI66YW+/8aWx2+5PxQl1WshhPKEcL4Rmhtl6VbacVku/5FQAoSSMj8PHfy+839eA8QXDRzV0v6nWJ3Fb0xBncHKnITyl4qbJveb+gi7EcATi2yCZcIZCdtOWThz8pTNCPKnkjw0XL2K9e6pGiz0wmQxErsar4j/iRAIBBYc7ST5ct4kKCorZYUvimUcmGGEVunPUcufbUo7Fa2jrWJnBWMsV7iiRe8vFAltbSZCsz/f3in6HO70RXEQ9BrnrsgrFxy1mbh3WCZ4zHcZ/eeswyt3m8jomkcXKEOaQ0x9/cM3Q==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=meOhckSGz7sB6XMATvRUeZ3/xGpt4+/PdGAQpnQpXNM=;
 b=hpseLTGPmPI/UcEM6MMWQB7hclJhayOVlfGVIo/0Yl9EDUC0Tqy7XKWZIYxZPvVR1m7OuWpDyR05Eo0Agv4oOdRDCncQVa1405LAUq7Sxhy7I6n/bkCiMuA/6nAG12Lx3dwW0cOpOVEh+oz6Us0G5yKckGvam6MMXlFd2uyl5+r7drb5gnyuwTac5uC1jjxP9+wXWih1Lqe7OxJUf4IqzheROb8XOLofSWv4bhrzuiKRRuIVIjHxbKO0Hwtq875xi0ftQEOkO5ttAd1e/rcag7RD1kUqFoFtYyYZOFVI7PRe8B9WhrWKCnzGsjtwvpS722h5zD5REjqMpWyrVuL1EQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <55f94865-0b81-2e3c-2fe2-ece529cac361@suse.com>
Date: Tue, 24 Oct 2023 08:18:02 +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][for-4.19 v4 1/8] xen: modify or add declarations for
 variables where needed
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.cooper3@citrix.com, roger.pau@citrix.com,
 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>,
 Stefano Stabellini <sstabellini@kernel.org>
References: <cover.1698053876.git.nicola.vetrini@bugseng.com>
 <1da22c0b7c32f62f200383af8607caaf1a02ba0d.1698053876.git.nicola.vetrini@bugseng.com>
 <alpine.DEB.2.22.394.2310231603210.3516@ubuntu-linux-20-04-desktop>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <alpine.DEB.2.22.394.2310231603210.3516@ubuntu-linux-20-04-desktop>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0401.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:cf::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_|DU2PR04MB8517:EE_
X-MS-Office365-Filtering-Correlation-Id: 5fad7b93-b2fa-4907-1de8-08dbd458fb9d
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	YW/RhM9z4RowZQt4MZ1sqAzSMPIYQ8M2rie90ds8mr2nV/IXVrrK3VQ3VryG5tFIf5yc9cCLceQ0g1nlhrfjta/lt2YNG+MOg36eR9Ii4rNlWkBezIHPiZo5acvD0wwSqqhGgyaWmx4xmqmmGkJx4V77Adu8YwsUoAbRKvUGSlH45oLvEquqeOKmJ6e2issN4usEKcI5nugqv4AtMv97KUpSYGmDc/BBns8naw+rIJCGbY7BFU5SwyhYVupfSI5nPMemycNde4LBZy4S9T5U/2wPXbcPRsRm9yLtatSrSZcvmbWfm3/SGHhT+owq8n4MifHqlfbfm2YdICeSWfIGGUlB7n6JtHmQOtUNyb5ATUtkl28U/6wIM4X3B7jwAjL7dTWgKjCCjCDl0qnAuc9Imgj8w+9P3Dow9S0bT/N7ZJjR2JvUvQ+qXhA1D51/WOKxaDApSYc7tqkcSyGUD/fMjEeYLP1evxbMlI5aChD46xnkUMBZAC+yFei7vDmXmHwB1zzBqHS19/Pp7PCDTIM/2pgfs/hzT3F+jP6kDYDkiCBtw+YAfSm+m0lKfD0W3140wzc241uhZECXQ87ta+F8Dq7KX8nqa2GDB9lV7NaKsTr/raFEA/ZZrRaXzS/55g1WNg5pFHwKDasATH9d5yGJwQ==
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)(366004)(346002)(230922051799003)(451199024)(64100799003)(1800799009)(186009)(6916009)(31686004)(4744005)(2906002)(5660300002)(7416002)(8676002)(4326008)(8936002)(36756003)(66476007)(66556008)(41300700001)(66946007)(54906003)(6506007)(86362001)(6486002)(53546011)(38100700002)(31696002)(316002)(6512007)(2616005)(26005)(478600001)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?VmlaenkrNGZiODM2N0hPQkpsYlFzRy95L2E3WWIwZEIvMmRiSlVmR1N0TkVy?=
 =?utf-8?B?dktxWE5YSFlsbUI4dGI4eUFNSGM5dVpYczNybnlnRFdZK0w4WUNpTEM0bFpk?=
 =?utf-8?B?eS90RnNTcEthYlZvOTA0YVdOcUJORXpOWDNVWURzU1dmbXpnVzRLSG42SXZR?=
 =?utf-8?B?SjVoQjNobzVVL3hJMkhTMWhxTm1WV0VZMnhFZVZYdGdtaTJqWDR1elVhRmVH?=
 =?utf-8?B?dDdmamhCdGF6QTRlejBlTEpTeVhZa2V0U3FNV1ZuVXFUVWlBZnhEc1J2OVZa?=
 =?utf-8?B?MWJaekRJVGpKR25FeWl2andVSG9YTTJJSE1oaFRCRWF4eVY2bm9RRmRWQ1dx?=
 =?utf-8?B?WkhidE5uV0NPemczRlRpWENzYlpVZFBUY1FxZ2g0eXFoamMxOVY2SjBLbjBj?=
 =?utf-8?B?ZlRhd0ltZjFEVTlXQjMrRGZsT3hXNGlML3ZjZHlvUnhOVG9qZ2ZqUEdEZGpL?=
 =?utf-8?B?WnVVNmFiTm9maE04RFJyRng0dTJPbG1md1FrU2VuRHBGajNHS2lxK3B5Mk84?=
 =?utf-8?B?djBIU2JYUW8xeis2MjFsSElWaGFiRGJpT1BBQ3V4YStPSVRvK2R0aWx2T1FX?=
 =?utf-8?B?WThQQVNoWEl0L2pzMlA3THg0OFB0NkFkSEpvVlUvc3hrNGI3bVRMU29qU2Rv?=
 =?utf-8?B?Z3JlcitLZ20yV0hNM0I3ZWRLZHpCNUJpbkk5ZElqTE1idk83TW1rSnRua25o?=
 =?utf-8?B?TEFhSXY2VVF5QkNjelY3WW1ZemZWaHlZelQrdmpkek8wQnVNZzh3aEcrWE9T?=
 =?utf-8?B?VjhyVlNYdVNlSUtxNEZ1dDFYNHBZTWtTSFVBWEdrVmkzc0FscGYvdTNCaGxH?=
 =?utf-8?B?eW00UUlSazY2cW1NNXZxTDlnWGdJVm9ZekQ3UXdkL203TldzazNYbjdnWW5H?=
 =?utf-8?B?aXNmWHprdHhPSURFSWtCUktnck1iVFcyYjA0YkN2MzFGOTRCMGpyTE1nNUZy?=
 =?utf-8?B?SUZXbXZXOEZaNFpZMVQ5QnRJSWF6L0RtMW04di80c0VmOXo3Z0NUcGdEY0Vq?=
 =?utf-8?B?ekpGQUpvSEdtMGh2amkvTVNDTGxSTzZyMjlVODhEUHVIalNENXJvdVFNYnZ1?=
 =?utf-8?B?Wm1odW1tOTB6RzFmZTRRRERUQ2cyTGpzVmgrT0dRMXZVZGZUY2FDU0dzWWhp?=
 =?utf-8?B?RHhTVVlFTExHMjlCUlFCVFZLL0Y4NnVzQnlrcE9pblFhVDN4cVVtc01OVUZF?=
 =?utf-8?B?RGkwT3lKYXNUN3E4U3pkaFB5cUtqNDNGdWNUT0ZoQWs1ZVlvaWNwaGpEUTU1?=
 =?utf-8?B?eXArMlM1eXA1R0hFQlNQVjFNRVJEQmlKa1dGYjkvcjdMbGJNU2g4YUdFMXJm?=
 =?utf-8?B?N0h1YWtpYXJRaW5QY3R3WDNJbVhwVEVCZkFUSmhNTFJLejZCcHhHQlNoY05B?=
 =?utf-8?B?eDZqaVJRSVFnNUtsZlc1REdva2gzdEdJWS9YYnVDZjRnTVpzWHF2Z2lDYlQr?=
 =?utf-8?B?TGt2Q1pOY1dmcnQxdFZIbFo3WlJmVXZZSk5UN0tkSitQekZPSyt4Zlc3QUoy?=
 =?utf-8?B?V3lxNWhsQzRJVFVuM1BhdTdpbTFlbzdVVWIra2dWVlo4QjIwZmN4Ri9vQ3Z1?=
 =?utf-8?B?VGZtM2xYNHZ1aWNUeXl4TVlLYThWSmdYMmQ3WGZjODI1T0pGWXVXYkhVbzBa?=
 =?utf-8?B?cmM5SWdWMHFYc0JHcW5QUEJrRUVMbXZZZUNVNXRYbHlKelJTWEh4U0xLZktY?=
 =?utf-8?B?R0JienFaZmMvRlh6VTBHaVlUc2FwdDBVQXJGTGdOL0ZVbzdlZFd4UTVWTEQv?=
 =?utf-8?B?c083S2swT0JxNzJOUkRIT3J2dDljSkh5d1hFZnMyd05IU3VzbFI1cW9Zc1ZH?=
 =?utf-8?B?a2MrbWRnN3Z3VWc2dkRQQnZ2cWNBRmxmUkFPYUlIY3JHSkF6UHVLU1I3MkFJ?=
 =?utf-8?B?YUdrRERPSmI0Z3NhVm5Ycks5dEUvM1JBaFNvZEYzRUNHUVZUWiswU2pWNDhy?=
 =?utf-8?B?TkFOTnhkaTV4bWFOTGNyWTVTRjZTc0JlUlpUTGRxZDR5VEpobTZKWkw1QWhI?=
 =?utf-8?B?NGJrRmlVSXVSczZDVzB5dVFTc3B6Ylc5anVqSnZzR045NkZRRWd4aUowaWUx?=
 =?utf-8?B?ZlRjdW01SFlmT3FCZ21SdXh5Ykk2SFVCWEhnazZMTkx0Q3FUd3NMWmZJbi80?=
 =?utf-8?Q?0qAAk8AJpJ/sOeorHU3w41A9R?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 5fad7b93-b2fa-4907-1de8-08dbd458fb9d
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 24 Oct 2023 06:18:04.7673
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: ni4ezWojBjGCBB4C6qYFA2W7WAAIwRX7WzGtyDC/G8Ui3DBqfoQ9LUkBYtx12gpNNj/vMYrHPO8Kv1aEfpPdcg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU2PR04MB8517

On 24.10.2023 01:03, Stefano Stabellini wrote:
> On Mon, 23 Oct 2023, Nicola Vetrini wrote:
>> Some variables with external linkage used in C code do not have
>> a visible declaration where they are defined. Other variables
>> can become static, thereby eliminating the need for a declaration.
>> Doing so also resolves violations of MISRA C:2012 Rule 8.4.
>>
>> Fix typo s/mcinfo_dumpped/mcinfo_dumped/ while making
>> the variable static.
>>
>> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
> 
> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>

(for x86)
Acked-by: Jan Beulich <jbeulich@suse.com>



From xen-devel-bounces@lists.xenproject.org Tue Oct 24 06:24:18 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 06:24:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621684.968388 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvApo-0004b3-Mh; Tue, 24 Oct 2023 06:24:12 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621684.968388; Tue, 24 Oct 2023 06: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 1qvApo-0004aw-Hp; Tue, 24 Oct 2023 06:24:12 +0000
Received: by outflank-mailman (input) for mailman id 621684;
 Tue, 24 Oct 2023 06:24: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=krZT=GG=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qvApn-0004aq-8H
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 06:24:11 +0000
Received: from EUR03-AM7-obe.outbound.protection.outlook.com
 (mail-am7eur03on2061f.outbound.protection.outlook.com
 [2a01:111:f400:7eaf::61f])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id f055c1a0-7235-11ee-9b0e-b553b5be7939;
 Tue, 24 Oct 2023 08:24:08 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DB9PR04MB8204.eurprd04.prod.outlook.com (2603:10a6:10:240::6) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.8; Tue, 24 Oct
 2023 06:24:05 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6933.011; Tue, 24 Oct 2023
 06: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>
X-Inumbo-ID: f055c1a0-7235-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=dbcXEVcwlI9fxTSRva19OyJH+0xPprl81U+lsr0cXzbtadHAiU43lj8Iz6UpdeFOxv0YvP56Jri1a85HPHqx64Wn446zA41+rjH4ijKkApfviIV1XKQosjmCp/J93mj3LhKfAB1A150kzu493g9KEkQTgsMgn8Hd360EkTalneN0jn8aK6At0pyx4n9Q7082ko3Kiaw0Tck97v4s6tbwHi9pI3sLD2RplDNprtGnskrgOaTC9d49ZbrxptfyXRFwBLJJj5o2CNmMwpi5MWAtgAZm2H8Qqt+Zd+VCwhJCxGdAFCwAizsf4PmscJvbaG8RDkZGUF2w05LLaNXhpjizSg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=Gbi3bygsySLmMIR0bcT6nV7Uhwyr+6lW+HdNN7uD0gQ=;
 b=fuaVV8yIiILNol1XJ+rhLaS3dlPH8B+nD2FxxywrITYDCSB2nP7FdF2gDMXdNFWv7QdW5XsXdsk6S9o+3MnSR/yKIujQ9jvkxIPAiA/Ejsdunwr76UqyWgDngSGYlnOsOj+bHvEDFVWzoaBYdROWnSOtf9FXJl94UqAi8c8RK5/646jfePSz4/N2jvF+KhpqBhG1OlJOw85f5C+/hQl5CaLo5gs72xwpEV69k85e3zb3n6tdxSBZgPLinWhVYCmE9KqYVyCeeGH+TnOpy4DLPUQdc1kaEilbq6D54P9afRybtkcqrneODqyXbGTaIOClmZ/7YhkMvh/+bbCCGTR5JA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=Gbi3bygsySLmMIR0bcT6nV7Uhwyr+6lW+HdNN7uD0gQ=;
 b=bTuEKZyKf9wlkrc6iud+h4UDg3h+o7IdvkmwphMk7f/diAMFq9p700Cnmbb9ZZ3rHgpNzonmrScvNJ4NmbG0E8hcZTCgywGYOkUEACpw3FY5df5KPe4E4s0rzXAedBBwcBoUUGtiiP03/nx604s3rVJvbEEPtQWTisUsFJcF7rCQD/bLaGoRDyIrkbxPsIaI3ggj21xL8D+tWd9u8Wuoi6E6Ro0936K+JCMS+yNgPwsI5VAUZnkcs9zm32sfXHVSJIyffhWT62puYDmUMN38gKWUdesIxv2saE9NwkVPQDWBZBd4VBQ/ebZG+Cq7e7u80iOLjmodmyb6IFEvwjLPVA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <8f8141e2-c55c-2e58-a078-d5d8764a02df@suse.com>
Date: Tue, 24 Oct 2023 08:24:03 +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 3/4] xen/include: add pure and const attributes
Content-Language: en-US
To: Stefano Stabellini <sstabellini@kernel.org>
Cc: Simone Ballarin <simone.ballarin@bugseng.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.1697638210.git.simone.ballarin@bugseng.com>
 <fd5421162a00aa782e0776324ff6497193c1e3d3.1697638210.git.simone.ballarin@bugseng.com>
 <89778285-5cba-8fb5-70bc-710b6dd30a10@suse.com>
 <0032186f-80c7-4dba-b46e-10d4a8e2a8cb@bugseng.com>
 <e8bf9817-fd54-9bf4-4302-dcee682f9172@suse.com>
 <alpine.DEB.2.22.394.2310231417260.3516@ubuntu-linux-20-04-desktop>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <alpine.DEB.2.22.394.2310231417260.3516@ubuntu-linux-20-04-desktop>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR4P281CA0376.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:f7::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_|DB9PR04MB8204:EE_
X-MS-Office365-Filtering-Correlation-Id: 13e5d4ed-7240-44be-2da8-08dbd459d2ba
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	C0g6WD9lTJKNxIA7+oydOAdM7KwFh0Foy0Aax81h5DGkl0PEF9Jq4I62d7AXZOVrTFoUhSFNwLHqB4qm7vxjr1H+kNeyHNlMInRRt58lgedTVkEnA/VICtPxtPu8zpM8uHw+IKAVW+HBb/emMDZG1UbksAIv7zoOVJ1k6HjR9FnJN0tDq4TYUKxDk/fl9d/NjSE+o6uhW+aQLNwnvOVQYN3eU/hSW8sjs2MP+MO8EBF+nuvNV9bCv4nE0M5aNY7iW9jhpgGuOkQIf/47t/WO9s3wAZ+S1f3KJshAf0AG5idq3DPbkmzBNv1JahbhS/3gkhtMF8GwzNNSpVN2ae/27aU7pb13KM2YOXZFMM2fKgamQ3qBagHlAZG6BWvK7W5C+mB0v4BFsO0G8jNMdGdXHbm5/sgmgT1IPPPu7ezfkVcp+HXIcU2RZSsSj/bwjWPLM5eTx8c8ach/h2WV3GJ5wVhgAmRSp9vo+gzYA95/KZ3WhG45BgNmg4sRdF9ck4d/BYKNNccm8DVJYzUdOdJ/MWVn45AJmk7A+Y7Ku2gQlqbDEU15k2RHVqKCmPblGtnX544jkt4Pjr8oqjDEcmtrAq0Bvbc5NanKYAThuQRFAGt9hv9C+cDo7jUSwyH5YDXYJIU7y9xSEOND2om8SGvj1w==
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)(346002)(39860400002)(136003)(230922051799003)(186009)(451199024)(1800799009)(64100799003)(86362001)(31696002)(36756003)(38100700002)(5660300002)(66556008)(316002)(6916009)(66946007)(8676002)(66476007)(54906003)(8936002)(478600001)(6486002)(4326008)(2906002)(6512007)(53546011)(83380400001)(2616005)(6506007)(41300700001)(26005)(31686004)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?Ti9kS2ErN3NKakZnMFJKZDdnaHk0VittOGt4ZmRlY2JUM2JBVStDS3RRcTRR?=
 =?utf-8?B?elVWTDZaRlozdGdNTjJYMy9kbVFFeUt6WEZzM2N4bVBLOUtuQzFoQnl6SHhL?=
 =?utf-8?B?MFBBN3dzNTdEWHRaQjZZWCtSTTAzOHFjRXJxUkNvR3NYTG9ib0lQR1NlYnF0?=
 =?utf-8?B?Z0xZbjM5bkxreEpOWkVhTFpNcnRLTjFRejI5aGNNa2JneWh3ZW1oOHFIWHlY?=
 =?utf-8?B?M015d3hEaVQzTDBnanFZb0ZFSkpJZzJ0Mm9QTzI1aldERHphK1o4clF2ZVlL?=
 =?utf-8?B?NTRVNnJ2enZ5YnBUQTJIS2JEeDBaTG9QWmJIUkJSbUw3OFFOWDI5TmhERE5l?=
 =?utf-8?B?VzVWSTh6VWt0L0l4dHlXNzhOY0VQUWlIMnNnWG1aRDUxUmhkTDBLdVpUT00r?=
 =?utf-8?B?QXE2WU4yME1FNkNGL251ZDkvMTJhSklDWlBEUlZwNkpSak1nQVRQYm9Ra2dC?=
 =?utf-8?B?Y0tZVTNQVzk5dmhWeWF0NllUSk5ieWtIVDd5aEE3SUpRSExaQUdab1ZsWTg5?=
 =?utf-8?B?bEJvTWxWRTEvYkZYVENBS2dtRi9XcFRUazdWU0pJMFk4emlMcnlXeXlzNHd0?=
 =?utf-8?B?L0lneU0xdHo4c2E4YUZEbTJFekhCQVBOWStacE9zRXZkc0g2NytOZndsWXN2?=
 =?utf-8?B?cDdtV3JoWm5TUnVJMjR1UE9INzJnSURGTGV1RllSQ2dBZy9vL3B2R2UzdFZM?=
 =?utf-8?B?V1hUSW50YjBSelZVb0l4WlJmVVFMOGhEYTBXeXZ3MHo5RjZKYllsaC9RbCtH?=
 =?utf-8?B?b0JXZDBUdGlncUtiVG9VS3o1T0lLSG5idlVqbXlVa2pCKytSNTBIOCszdWNX?=
 =?utf-8?B?RTZFMk11REFlWTdKVUFUS2lVam5zRUNmdWJnaVQ4WUJkakd6b3VPMHdUays5?=
 =?utf-8?B?cmFKYndsOE1ZK2xPMDVkM2hlangydlQxblBhWTBkMjVoUlpIS3ZqLzIvb0Ns?=
 =?utf-8?B?WmFqUGxMN0g2RGdIbTBPQi8rL1NHSWRqVUs1a1hmamFPV1RHTGpEaVZuZGR1?=
 =?utf-8?B?K3l4dlViVVF1WUNpRG80anNSWmpvNjNydXJPY0s0YmljN3ZuanhxendXMEVS?=
 =?utf-8?B?cDVPd1c3R085SVZORXJOaFN4cUMyRkl6QUQzTk5IeXhxTGpXMFFqNkdMVkNY?=
 =?utf-8?B?QzNYRG5yVGY1akdFMUNaczQ3ZVI1LzhDcmhVMThRZGhwU2lOYlpmdmUvVnpr?=
 =?utf-8?B?ejVYdGxKZVhGVW85WnVWZ2dXWURMTFNtRkNQSk50YWw5ZThZWGJrQjVQdFIy?=
 =?utf-8?B?bkVKTlZ1SEVOZG8zKzIxVzdGTjByb1cxYnBML2ZvZ0hKa0R6SVNudnliTEF3?=
 =?utf-8?B?RHBUZjBVSzg3alhzREdEZHBlNGdtUklqeW5pN25nRGRuWlZ6YXNTVFdLYVd6?=
 =?utf-8?B?NGJIbEMzRTNJS2FjVlRJQkMyNlRlTWtxWDYwWGZPcTdoaEdOVXRPY3ozSmpO?=
 =?utf-8?B?RElVT0FZa1phR2YxQmxXbkkzOUdIdUkzQWdnUDJkTDE4M1RLZDlRM25UVUVl?=
 =?utf-8?B?YVlYbFU5RkQ1LzQvK0lIaWxoSFhQUWJ6dzYyNU5wZTI1NE5CYWR2N04yUkNj?=
 =?utf-8?B?UzFWTjdCRGRBemhZYmJrd3R4VlI1bnZBWkJXemwzMGFSY0M3QW9YWU9sbUVB?=
 =?utf-8?B?ZmpJTzhzTmNPKzJaR0xVWjdtbUw0OG9aandiTnNoZHFXK3I4cmY0ZlA0Z2JO?=
 =?utf-8?B?UytscWVENi9oSmd4bzZWRVhjTlkxSW1lYUtXVS9udGJqZmlDeGF5eXlDZWF2?=
 =?utf-8?B?Y1ptY0ZTMElFNDQ5MWFFVGtDUmxpODJJNHZyU21GMExtV3VlZk5mK2pKb08x?=
 =?utf-8?B?eE9hYk9CaWd5L0RDNUlGUzBqa0xpdEY2VUp3WXZPWXl2WnVQSzZDbDhxM2t4?=
 =?utf-8?B?TG5SdjBvZzBwNkJvbWp4QkJkMmZsMGd0RXgrSGVrdjBjTzh5Z3N0Q09RQmNL?=
 =?utf-8?B?YVV0Yk9oVmNuQkJxTGRjSU90UVNRYzN3dkh2WGk5OUFTQlp5cDEwcWduM1NC?=
 =?utf-8?B?SDdEQXB0WkJPbjdHRmJicmlveVRqZ05vYXhFZmgzMEUwNXZwZThNQ09qVmFu?=
 =?utf-8?B?TXdEY2dUR2ZhUmdselNDaW1jemtsallZck9QZmo5djFtUCs4OVZqS3J5NXp3?=
 =?utf-8?Q?KW8ixDbnErtg7xoy6dFPhdqq9?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 13e5d4ed-7240-44be-2da8-08dbd459d2ba
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 24 Oct 2023 06:24:05.6784
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: sFDaWR1/l8BF4FMkTvaKVeKsNW4GPrqpnmxwM2Iz9lyWjkOw/e4cVV0rgGNV14IN6b4oYJ0tHeoSFiuXjRkOkw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR04MB8204

On 24.10.2023 00:05, Stefano Stabellini wrote:
> On Mon, 23 Oct 2023, Jan Beulich wrote:
>> On 23.10.2023 17:23, Simone Ballarin wrote:
>>> On 23/10/23 15:34, Jan Beulich wrote:
>>>> On 18.10.2023 16:18, Simone Ballarin wrote:
>>>>> --- a/xen/include/xen/pdx.h
>>>>> +++ b/xen/include/xen/pdx.h
>>>>> @@ -164,7 +164,7 @@ static inline unsigned long pfn_to_pdx(unsigned long pfn)
>>>>>    * @param pdx Page index
>>>>>    * @return Obtained pfn after decompressing the pdx
>>>>>    */
>>>>> -static inline unsigned long pdx_to_pfn(unsigned long pdx)
>>>>> +static inline __attribute_pure__ unsigned long pdx_to_pfn(unsigned long pdx)
>>>>>   {
>>>>>       return (pdx & pfn_pdx_bottom_mask) |
>>>>>              ((pdx << pfn_pdx_hole_shift) & pfn_top_mask);
>>>>
>>>> Taking this as an example for what I've said above: The compiler can't
>>>> know that the globals used by the functions won't change value. Even
>>>> within Xen it is only by convention that these variables are assigned
>>>> their values during boot, and then aren't changed anymore. Which makes
>>>> me wonder: Did you check carefully that around the time the variables
>>>> have their values established, no calls to the functions exist (which
>>>> might then be subject to folding)?
>>>
>>> There is no need to check that, the GCC documentation explicitly says:
>>>
>>> However, functions declared with the pure attribute *can safely read any 
>>> non-volatile objects*, and modify the value of objects in a way that 
>>> does not affect their return value or the observable state of the program.
>>
>> I did quote this same text in response to what Andrew has said, but I also
>> did note there that this needs to be taken with a grain of salt: The
>> compiler generally assumes a single-threaded environment, i.e. no changes
>> to globals behind the back of the code it is processing.
> 
> Let's start from the beginning. The reason for Simone to add
> __attribute_pure__ to pdx_to_pfn and other functions is for
> documentation purposes. It is OK if it doesn't serve any purpose other
> than documentation.
> 
> Andrew, for sure we do not want to lie to the compiler and introduce
> undefined behavior. If we think there is a risk of it, we should not do
> it.
> 
> So, what do we want to document? We want to document that the function
> does not have side effects according to MISRA's definition of it, which
> might subtly differ from GCC's definition.
> 
> Looking at GCC's definition of __attribute_pure__, with the
> clarification statement copy/pasted above by both Simone and Jan, it
> seems that __attribute_pure__ matches MISRA's definition of a function
> without side effects. It also seems that pdx_to_pfn abides to that
> definition.
> 
> Jan has a point that GCC might be making other assumptions
> (single-thread execution) that might not hold true in our case. Given
> the way the GCC statement is written I think this is low risk. But maybe
> not all GCC versions we want to support in the project might have the
> same definition of __attribute_pure__. So we could end up using
> __attribute_pure__ correctly for the GCC version used for safety (GCC
> 12.1, see docs/misra/C-language-toolchain.rst) but it might actually
> break an older GCC version.
> 
> 
> So Option#1 is to use __attribute_pure__ taking the risk that a GCC or
> Clang version might interpret __attribute_pure__ differently and
> potentially misbehave.
> 
> Option#2 is to avoid this risk, by not using __attribute_pure__.
> Instead, we can use SAF-xx-safe or deviations.rst to document that
> pdx_to_pfn and other functions like it are without side effects
> according to MISRA's definition.
> 
> 
> Both options have pros and cons. To me the most important factor is how
> many GCC versions come with the statement "pure attribute can safely
> read any non-volatile objects, and modify the value of objects in a way
> that does not affect their return value or the observable state of the
> program".
> 
> I checked and these are the results:
> - gcc 4.0.2: no statement
> - gcc 5.1.0: no statement
> - gcc 6.1.0: no statement
> - gcc 7.1.0: no statement
> - gcc 8.1.0: alternative statement "The pure attribute imposes similar
>   but looser restrictions on a function’s definition than the const
>   attribute: it allows the function to read global variables."
> - gcc 9.1.0: yes statement
> 
> 
> So based on the above, __attribute_pure__ comes with its current
> definition only from gcc 9 onward. I don't know if as a Xen community we
> clearly declare a range of supported compilers, but I would imagine we
> would still want to support gcc versions older than 9? (Not to mention
> clang, which I haven't checked.)
> 
> It doesn't seem to me that __attribute_pure__ could be correctly used on
> pdx_to_pfn with GCC 7.1.0 for example.

The absence of documentation doesn't mean the attribute had different
(or even undefined) meaning in earlier versions. Instead it means one
would need to consult other places (source code?) to figure out whether
there was any behavioral difference (I don't think there was).

That said, ...

> So in conclusion, I think it is better to avoid __attribute_pure__ and
> use SAF-xx-safe or an alternative approach instead.

... I agree here. We just don't want to take chances.

Jan


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 06:37:51 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 06:37:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621689.968396 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvB2r-0006mi-Sa; Tue, 24 Oct 2023 06:37:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621689.968396; Tue, 24 Oct 2023 06:37: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 1qvB2r-0006mb-Pq; Tue, 24 Oct 2023 06:37:41 +0000
Received: by outflank-mailman (input) for mailman id 621689;
 Tue, 24 Oct 2023 06:37: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=BZZr=GG=amd.com=Michal.Orzel@srs-se1.protection.inumbo.net>)
 id 1qvB2q-0006mV-H5
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 06:37:40 +0000
Received: from NAM11-CO1-obe.outbound.protection.outlook.com
 (mail-co1nam11on20605.outbound.protection.outlook.com
 [2a01:111:f400:7eab::605])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id d2902a4d-7237-11ee-98d5-6d05b1d4d9a1;
 Tue, 24 Oct 2023 08:37:38 +0200 (CEST)
Received: from CY5PR15CA0039.namprd15.prod.outlook.com (2603:10b6:930:1b::11)
 by MW6PR12MB9020.namprd12.prod.outlook.com (2603:10b6:303:240::6)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.33; Tue, 24 Oct
 2023 06:37:33 +0000
Received: from CY4PEPF0000E9D2.namprd03.prod.outlook.com
 (2603:10b6:930:1b:cafe::43) by CY5PR15CA0039.outlook.office365.com
 (2603:10b6:930:1b::11) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.33 via Frontend
 Transport; Tue, 24 Oct 2023 06:37:33 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 CY4PEPF0000E9D2.mail.protection.outlook.com (10.167.241.145) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6933.15 via Frontend Transport; Tue, 24 Oct 2023 06:37: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; Tue, 24 Oct
 2023 01:37: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; Tue, 24 Oct 2023 01:37: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: d2902a4d-7237-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=W9Tf7LO4dX04zI5My0C4hBl18qHLlVqZp4NPsr+R/k2reW6RKXGbG6vscwK4Q6bVlBt6UkrhlCJ+TJUFNHV/U0cMeJ0WYdy30Yi1V1GzJAI1dL9cIkNEtyNQGTo1y0+Tv3RCz8YVpwJBre3Xu3HEfScpv/aPGh6iE0uTeJGIP1wpFhZOeRUcawkajWpU63McV6nREj6TU8IYG5fHtbU5UV5o7lwwuhgBK7idGPfQcWZxDzNbbhWpx0sPc6SQMA4aSX6NY0WX0Yoi3h2htO+55vHX1CgfjZHEBjuRwy0ytz9x0f2mrwk90mLkHaPESmYQIho1aI8TaaSTeCvexpNy/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=V0OyHLFAMVWvfTwflnrLPnMe6GjNqDlrMsEd8ckEbkQ=;
 b=MQeYsu1mEaj3GcctOqF7my2QHCiLeUf2CnxasKuc4aR9tO1yydVISqL2UYQ8f60uvpSrfh4swjbXeREctRO9n17RGWMucgdfGAXIywOp2Euzed7HDDAISp5LHEM/4qbZ8gM2UVQOcBMazmSxL9JQUCzYQBcZTSokBSbB1IJWyu1xvs/OrJVJow6B2/N3fErwZYJwgj+Dd+xow/R0+cLgkyACsGWPs3aewc9rEcHVkGqO73AuQFnzj8LOC75vLfFcqEqmjNf6QiAXNkymxDgi6Mb/A+LbvisqRHcYTcKhT8P/zzOxolwzMN2loE6d3wz7BdtmtUGt7oIUTFgNRtLYSQ==
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=V0OyHLFAMVWvfTwflnrLPnMe6GjNqDlrMsEd8ckEbkQ=;
 b=5a/Zmtf63konpnhfnr+iWsps/SHmNtUch7Ti0nbRVdQAJxa8Ir9ARe+lYE7COqeTVO8hcmSp4vGcgZKl7gnRxrkamyh29yEp6lf7m90nCEb9LXomFLaRnXjhtIcqUFhKnE3vHtirEUnWHksFXXrRXg5G5fQHmBFNY4uQvlQ2pSw=
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: <0fc7a46c-24d3-480f-9f53-c8c68fb56a0f@amd.com>
Date: Tue, 24 Oct 2023 08:37:21 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH] MAINTAINERS: make Michal Orzel ARM Maintainer
To: Stefano Stabellini <sstabellini@kernel.org>,
	<xen-devel@lists.xenproject.org>
CC: <julien@xen.org>, <bertrand.marquis@arm.com>,
	<Volodymyr_Babchuk@epam.com>, <Henry.Wang@arm.com>
References: <alpine.DEB.2.22.394.2310231356210.3516@ubuntu-linux-20-04-desktop>
Content-Language: en-US
From: Michal Orzel <michal.orzel@amd.com>
In-Reply-To: <alpine.DEB.2.22.394.2310231356210.3516@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: CY4PEPF0000E9D2:EE_|MW6PR12MB9020:EE_
X-MS-Office365-Filtering-Correlation-Id: ce30186d-ec76-4a5f-01bf-08dbd45bb40b
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	khBqSY4UCkOsZbXnZJzeliOOyUwUuFdz90TUWegg6atyaR2jfhZ8+3+5NnCT3MJ9YnTDsAHm3xMlvPepp604gyVIzwA0nZyzM8L4/BROKRpws8/Gah6FEYlPfczu+r1WEXgLl8tiVwl9/6D0lCd13sfp6QTFZnf34TsCjneCilUjENZg2l5f7h9TZM/Hb+6sQPr+7VL1ODk4YySL4ZEb8Zx0AWz+oaf724oAM/+SzHU8KjpmUt4kMwSntd3db02VOW9+c/LaT65bJn/iwcQhKBHXTbWCrxL3iZmQpz6T6eBYPfmEtM5w8c9AsFWgWK8OrEJieLMgT8azSsStKbDCgxZPJF0aHVL3izz2bhCa6FT4tUvvf4Xs6FwRi6Y9n9KtQZNzJ9Pa0bSSmkyAhdBm/1Y6yrZ3rA1lBDGyNQpyiUDxWylWAUVSdgxhgp0/1yy20sHBbdI0MaZm+Y+rUleIhBYCJc764QCBd5ruNKCx8H8WuAHwJhHckSx+l7RfaeRGAyauKi5gaHeaA9db8W880am/AEdvFJdNWxdiYWFRkXp+UehdBU6od8PejKWJczZpdRCEZHcC6HPQKRVZ/+FrWUz9C6SUqx+7+8+SxBk7W9jg701KJt/6T3GEggcq4eQH87u5eb+5TTzlo7C7jU84oPI3j1I0hYP8mNO6C3aObqqaELj8t35+sOoOVtmudMObWXxbef5bj3cCMYikOnZGdSRDakYVlTxnRGnjqgJ5fm+seEMQMkz015prjH5JjOf6uoAtKv8DmyBM2TlkDX2AJFBtF9a//04SSpTF5pSVJyN9cpjUagzPrqeVAnQ5oP12
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)(39860400002)(346002)(396003)(230922051799003)(186009)(451199024)(64100799003)(82310400011)(1800799009)(36840700001)(46966006)(40470700004)(44832011)(86362001)(4326008)(70586007)(8936002)(8676002)(54906003)(16576012)(316002)(31696002)(70206006)(110136005)(82740400003)(41300700001)(31686004)(5660300002)(478600001)(47076005)(40460700003)(40480700001)(2906002)(53546011)(6666004)(356005)(26005)(36756003)(426003)(336012)(2616005)(81166007)(36860700001)(558084003)(43740500002)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 24 Oct 2023 06:37:32.8914
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: ce30186d-ec76-4a5f-01bf-08dbd45bb40b
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:
	CY4PEPF0000E9D2.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW6PR12MB9020

Hi Stefano,

Thanks!

On 23/10/2023 22:56, Stefano Stabellini wrote:
> 
> 
> Signed-off-by: Stefano Stabellini <stefano.stabellini@amd.com>
Acked-by: Michal Orzel <michal.orzel@amd.com>

~Michal



From xen-devel-bounces@lists.xenproject.org Tue Oct 24 06:53:41 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 06:53:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621692.968406 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvBIB-0001aN-6I; Tue, 24 Oct 2023 06:53:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621692.968406; Tue, 24 Oct 2023 06: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 1qvBIB-0001aG-3Y; Tue, 24 Oct 2023 06:53:31 +0000
Received: by outflank-mailman (input) for mailman id 621692;
 Tue, 24 Oct 2023 06:53: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=CJyy=GG=suse.com=jgross@srs-se1.protection.inumbo.net>)
 id 1qvBI9-0001aA-7v
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 06:53:29 +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 083111ce-723a-11ee-9b0e-b553b5be7939;
 Tue, 24 Oct 2023 08:53: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-out1.suse.de (Postfix) with ESMTPS id D7EF021B7A;
 Tue, 24 Oct 2023 06:53: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 8823B1391C;
 Tue, 24 Oct 2023 06:53:25 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap2.suse-dmz.suse.de with ESMTPSA id WQxvH+VpN2UKMAAAMHmgww
 (envelope-from <jgross@suse.com>); Tue, 24 Oct 2023 06:53: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: 083111ce-723a-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1698130405; 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=4aw1OVLdeFc0pgyYBWBV08Sb9D5SfDWdwHWzf2lfCC8=;
	b=Uddk1vDYZ69rlxjqtq4W3pMAsUSn7HrLb3AOTcwO5fDo+WVTKCSmI4BvmdAAybakrUwYKN
	PloKm//noXJQgw6wEeMYchqyALOr7b0gotnJjZuLcU+xwEYwOA+ryo+r7ZU578L97WMVNP
	KD9muv9QmQtZRnubFpbhgnf+XD+dTlo=
Message-ID: <c75a3d53-fc36-46a6-b781-f16e1e5c6226@suse.com>
Date: Tue, 24 Oct 2023 08:53:24 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: Lockdep show 6.6-rc regression in Xen HVM CPU hotplug
To: David Woodhouse <dwmw2@infradead.org>,
 xen-devel <xen-devel@lists.xenproject.org>, paulmck <paulmck@kernel.org>
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>,
 Rahul Singh <rahul.singh@arm.com>,
 Boris Ostrovsky <boris.ostrovsky@oracle.com>,
 Thomas Gleixner <tglx@linutronix.de>
References: <b28fff67f7501e4713af9b8c777f853cc44d6c6f.camel@infradead.org>
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: <b28fff67f7501e4713af9b8c777f853cc44d6c6f.camel@infradead.org>
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature";
 boundary="------------eHYIw0CQB2nd1T1Vs5N9WkX6"
Authentication-Results: smtp-out1.suse.de;
	none
X-Spam-Level: 
X-Spam-Score: -7.97
X-Spamd-Result: default: False [-7.97 / 50.00];
	 ARC_NA(0.00)[];
	 RCVD_VIA_SMTP_AUTH(0.00)[];
	 XM_UA_NO_VERSION(0.01)[];
	 FROM_HAS_DN(0.00)[];
	 TO_MATCH_ENVRCPT_ALL(0.00)[];
	 BAYES_HAM(-2.98)[99.92%];
	 MIME_GOOD(-0.20)[multipart/signed,multipart/mixed,text/plain];
	 HAS_ATTACHMENT(0.00)[];
	 NEURAL_HAM_LONG(-3.00)[-1.000];
	 MIME_BASE64_TEXT_BOGUS(1.00)[];
	 DKIM_SIGNED(0.00)[suse.com:s=susede1];
	 TO_DN_ALL(0.00)[];
	 MIME_BASE64_TEXT(0.10)[];
	 RCPT_COUNT_SEVEN(0.00)[8];
	 NEURAL_HAM_SHORT(-1.00)[-1.000];
	 SIGNED_PGP(-2.00)[];
	 FROM_EQ_ENVFROM(0.00)[];
	 MIME_TRACE(0.00)[0:+,1:+,2:+,3:+,4:~,5:~];
	 RCVD_COUNT_TWO(0.00)[2];
	 RCVD_TLS_ALL(0.00)[];
	 MID_RHS_MATCH_FROM(0.00)[];
	 MIME_UNKNOWN(0.10)[application/pgp-keys]
X-Spam-Flag: NO

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--------------eHYIw0CQB2nd1T1Vs5N9WkX6
Content-Type: multipart/mixed; boundary="------------lKjFHR7NYXHM1rUa6ytStqo9";
 protected-headers="v1"
From: Juergen Gross <jgross@suse.com>
To: David Woodhouse <dwmw2@infradead.org>,
 xen-devel <xen-devel@lists.xenproject.org>, paulmck <paulmck@kernel.org>
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>,
 Rahul Singh <rahul.singh@arm.com>,
 Boris Ostrovsky <boris.ostrovsky@oracle.com>,
 Thomas Gleixner <tglx@linutronix.de>
Message-ID: <c75a3d53-fc36-46a6-b781-f16e1e5c6226@suse.com>
Subject: Re: Lockdep show 6.6-rc regression in Xen HVM CPU hotplug
References: <b28fff67f7501e4713af9b8c777f853cc44d6c6f.camel@infradead.org>
In-Reply-To: <b28fff67f7501e4713af9b8c777f853cc44d6c6f.camel@infradead.org>

--------------lKjFHR7NYXHM1rUa6ytStqo9
Content-Type: multipart/mixed; boundary="------------uUUbE0Bo5hmPLuaFbJubX9hr"

--------------uUUbE0Bo5hmPLuaFbJubX9hr
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: base64

T24gMjMuMTAuMjMgMjI6NTAsIERhdmlkIFdvb2Rob3VzZSB3cm90ZToNCj4gU2luY2UgY29t
bWl0IDg3Nzk3ZmFkNmNjZSAoInhlbi9ldmVudHM6IHJlcGxhY2UgZXZ0Y2huX3J3bG9jayB3
aXRoDQo+IFJDVSIpLCBJIGNhbiBubyBsb25nZXIgaG90cGx1ZyBDUFVzIHVuZGVyIFhlbiB3
aXRoIGxvY2tkZXAgZW5hYmxlZC4NCj4gDQo+IChUaGlzIGlzIHJlYWwgWGVuIDQuMTcuMTsg
YW5ub3lpbmdseSBJIGhhdmUgZGlmZmVyZW50IGZhaWx1cmUgbW9kZXMNCj4gd2l0aCBYZW4g
Z3Vlc3RzIHVuZGVyIHFlbXUva3ZtIGFuZCBJJ2xsIGRlYWwgd2l0aCB0aG9zZSBuZXh0LikN
Cj4gDQo+IE9mZmxpbmluZyBjb21wbGFpbnMgdGh1czoNCj4gDQo+IFtyb290QGxvY2FsaG9z
dCBjcHUxXSMgZWNobyAwID4gb25saW5lDQo+IFsgICA1Mi45MzYyNjVdDQo+IFsgICA1Mi45
MzYyNzFdID09PT09PT09PT09PT09PT09PT09PT09PT09PT09DQo+IFsgICA1Mi45MzYyNzRd
IFdBUk5JTkc6IHN1c3BpY2lvdXMgUkNVIHVzYWdlDQo+IFsgICA1Mi45MzYyNzddIDYuNi4w
LXJjNSsgIzEzNTcgTm90IHRhaW50ZWQNCj4gWyAgIDUyLjkzNjI4MF0gLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0NCj4gWyAgIDUyLjkzNjI4Ml0gbGliL21hcGxlX3RyZWUuYzo4
NTYgc3VzcGljaW91cyByY3VfZGVyZWZlcmVuY2VfY2hlY2soKSB1c2FnZSENCj4gWyAgIDUy
LjkzNjI4N10NCj4gWyAgIDUyLjkzNjI4N10gb3RoZXIgaW5mbyB0aGF0IG1pZ2h0IGhlbHAg
dXMgZGVidWcgdGhpczoNCj4gWyAgIDUyLjkzNjI4N10NCj4gWyAgIDUyLjkzNjI4OV0NCj4g
WyAgIDUyLjkzNjI4OV0gUkNVIHVzZWQgaWxsZWdhbGx5IGZyb20gb2ZmbGluZSBDUFUhDQo+
IFsgICA1Mi45MzYyODldIHJjdV9zY2hlZHVsZXJfYWN0aXZlID0gMiwgZGVidWdfbG9ja3Mg
PSAxDQo+IFsgICA1Mi45MzYyOTNdIDEgbG9jayBoZWxkIGJ5IHN3YXBwZXIvMS8wOg0KPiBb
ICAgNTIuOTM2Mjk2XSAgIzA6IGZmZmZmZmZmODljMDM4MjAgKHJjdV9yZWFkX2xvY2spey4u
Li59LXsxOjN9LCBhdDogbXRyZWVfbG9hZCsweDkwLzB4NTkwDQo+IFsgICA1Mi45MzYzMjFd
DQo+IFsgICA1Mi45MzYzMjFdIHN0YWNrIGJhY2t0cmFjZToNCj4gWyAgIDUyLjkzNjMyNF0g
Q1BVOiAxIFBJRDogMCBDb21tOiBzd2FwcGVyLzEgTm90IHRhaW50ZWQgNi42LjAtcmM1KyAj
MTM1Nw0KPiBbICAgNTIuOTM2MzI5XSBIYXJkd2FyZSBuYW1lOiBYZW4gSFZNIGRvbVUsIEJJ
T1MgNC4xNy4xIDA5LzI2LzIwMjMNCj4gWyAgIDUyLjkzNjMzMl0gQ2FsbCBUcmFjZToNCj4g
WyAgIDUyLjkzNjMzNV0gIDxUQVNLPg0KPiBbICAgNTIuOTM2MzQwXSAgZHVtcF9zdGFja19s
dmwrMHg1Yi8weDkwDQo+IFsgICA1Mi45MzYzNTBdICBsb2NrZGVwX3JjdV9zdXNwaWNpb3Vz
KzB4MTVhLzB4MWMwDQo+IFsgICA1Mi45MzYzNjZdICBtdHJlZV9sb2FkKzB4NDllLzB4NTkw
DQo+IFsgICA1Mi45MzYzODVdICBpcnFfZ2V0X2lycV9kYXRhKzB4ZS8weDIwDQo+IFsgICA1
Mi45MzYzOTRdICB4ZW5fc2VuZF9JUElfb25lKzB4YTQvMHgxMDANCj4gWyAgIDUyLjkzNjQw
NF0gIF9feGVuX3NlbmRfSVBJX21hc2srMHgxYi8weDUwDQo+IFsgICA1Mi45MzY0MTRdICBn
ZW5lcmljX2V4ZWNfc2luZ2xlKzB4MzUvMHgxYzANCj4gWyAgIDUyLjkzNjQyM10gIHNtcF9j
YWxsX2Z1bmN0aW9uX3NpbmdsZSsweGMyLzB4MTQwDQo+IFsgICA1Mi45MzY0MzZdICA/IGNw
dWhwX3JlcG9ydF9pZGxlX2RlYWQrMHg0Mi8weDYwDQo+IFsgICA1Mi45MzY0NDRdICBkb19p
ZGxlKzB4ZGEvMHhlMA0KPiBbICAgNTIuOTM2NDUxXSAgY3B1X3N0YXJ0dXBfZW50cnkrMHgy
YS8weDMwDQo+IFsgICA1Mi45MzY0NTZdICBzdGFydF9zZWNvbmRhcnkrMHgxMjMvMHgxNDAN
Cj4gWyAgIDUyLjkzNjQ2NV0gIHNlY29uZGFyeV9zdGFydHVwXzY0X25vX3ZlcmlmeSsweDE3
OC8weDE3Yg0KPiBbICAgNTIuOTM2NDkwXSAgPC9UQVNLPg0KDQpJJ20gcHV6emxlZC4gVGhp
cyBwYXRoIGRvZXNuJ3QgY29udGFpbiBhbnkgb2YgdGhlIFJDVSB1c2FnZSBJJ3ZlIGFkZGVk
IGluDQpjb21taXQgODc3OTdmYWQ2Y2NlLg0KDQpBcmUgeW91IHN1cmUgdGhhdCB3aXRoIGp1
c3QgcmV2ZXJ0aW5nIGNvbW1pdCA4Nzc5N2ZhZDZjY2UgdGhlIGlzc3VlIGRvZXNuJ3QNCm1h
bmlmZXN0IGFueW1vcmU/IEknZCByYXRoZXIgZXhwZWN0IGNvbW1pdCA3MjEyNTViOTgyNmIg
aGF2aW5nIGNhdXNlZCB0aGlzDQpiZWhhdmlvciwganVzdCB0ZWxsaW5nIGZyb20gdGhlIG1l
c3NhZ2VzIGFib3ZlLg0KDQoNCkp1ZXJnZW4NCg==
--------------uUUbE0Bo5hmPLuaFbJubX9hr
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-----

--------------uUUbE0Bo5hmPLuaFbJubX9hr--

--------------lKjFHR7NYXHM1rUa6ytStqo9--

--------------eHYIw0CQB2nd1T1Vs5N9WkX6
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/Ey8FAmU3aeUFAwAAAAAACgkQsN6d1ii/Ey9h
/AgAjjEeb1/372jHt11lm2l777ees42Tmb+GiTrmWTelSdjFvT25OAn9JOgWNUMHGD7TCI6vHTRs
yXKxOMBQhAg6MeCArZrJJjYAE0PxB1Hp/v4dlNvC+6P+Zu7+X1653IS1dxM+J+doC4vhVpUKgZ1d
klieE26x04VbVSikAa8tZiEFbwL5uaKXnH8eGwrSiWgRwQ6DZHLv3Ji1bFIrzcWKpSdRH62vPbNW
ZnkAZ7f++8fdTBVv917qi+mjg3EcrNfp3K5grVtwP7lq74EE4P7WQSLCuDtHwiZ8X0/4mjDP43u3
eiT/tpau2GHXteBr+2C5gYNAhMMdaM4MN4tzY3vz8A==
=Jd5+
-----END PGP SIGNATURE-----

--------------eHYIw0CQB2nd1T1Vs5N9WkX6--


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 06:59:47 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 06:59:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621695.968417 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvBO3-0002mg-Qv; Tue, 24 Oct 2023 06:59:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621695.968417; Tue, 24 Oct 2023 06:59: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 1qvBO3-0002mZ-OE; Tue, 24 Oct 2023 06:59:35 +0000
Received: by outflank-mailman (input) for mailman id 621695;
 Tue, 24 Oct 2023 06:59: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=krZT=GG=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qvBO1-0002mR-LN
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 06:59:33 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 (mail-db8eur05on2062f.outbound.protection.outlook.com
 [2a01:111:f400:7e1a::62f])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id e09398ce-723a-11ee-9b0e-b553b5be7939;
 Tue, 24 Oct 2023 08:59:30 +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.6933.16; Tue, 24 Oct
 2023 06:59:26 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6933.011; Tue, 24 Oct 2023
 06:59: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: e09398ce-723a-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Oz+8dc426cXdWwa5EPJ1x/CCElGKzjvjU1WnqpieutY9zQUQ0dD8WPR/sHaF+vQ7RtTjkeJ2rN8+Nv4YAkLWjf9+w/k2uK4PTgjwW+if1iD8kTovoohLTJKJrJn+pgLiqTT4rhhVp6VBgYpwp5qnLUlYtLR5P4N7bmXjg4vGjPDcCEa526FYL0JI5lORJ0+WsABr0JIZ+Q4s1PlMO1bLaCbxLwWuCO+PzquoRsNrgQGlhzIO9OnrzmqcT1B9zJCSWpLIHEeoa9fAuR8HBbQhs6UwTPDOKtDSiZqw+DN3fdlcq8uisINwmKd+dp5xf5ik+4DBufw0e5S6V28EVxInFQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=pk+4keCSxUbtJQdAhBY3qwtGSvXiFLvAA5eg13nKJcY=;
 b=NSGZqP2FiLSctJ+/p+M7Z1ykgb+TTSg0Mo9nnuccKeXdPuWht7GqUnCObuYiuWN3LI+5LmWXDVt1Gu+0NYMe9fnVmKgjXyVjPGhdrL4tBuSdy9sNOFMZKBFS6J7pGP4wy7Z1ZNxZBpRVOffwr2J+GtOzPz525d/MmyDDJfaGEp4hrHJmxSXOA5LbXWI9iS3Kb9Ajz9bLAG2gkz5dDQ9WLoiCLj4RYrazr9LQHr7b+4EeqfsZBvVZhmny7Qi9iIo+B6iThopadN6jDoVEZnywANh7FU4bcYbokhID8ndmCqLzbZxFSm/iSZcK1D1xpsVWC39L3cUvXmzevEwmKv0dyg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=pk+4keCSxUbtJQdAhBY3qwtGSvXiFLvAA5eg13nKJcY=;
 b=j64hwYFPaklFvpY5nDgS46s0qIeoykHWT5RWjRUS0mpl5JzW5Wh4CZjjVkkaiAd1lUiQV18Hsa5OA/JFL0wLXswuiXSNVFliyupK3crhszMNu//U4caFqVCmZOo9PPGQrZ6BkiFGc+m5BMwY7QCY4EvdtKb/OONrKkOdCQWcgavU3BZLBNegXigDuGp7dnHRowNa7QdYILqXIecDwFDhLwfYcNti1VwO4cw7x7VWBmhAE4GgMf9/O2SZWLPLvHcNeR1lWyQh/tcAv16wW5NUvUr0rmkjIirRxAKXDbOpxsRLCngwWgi2V3RpoRTStHT46M1Z2eG8YZFN6FSvaiNK7w==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <967caedc-3d10-dee4-6614-1b9dcc0c1c66@suse.com>
Date: Tue, 24 Oct 2023 08:59: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] misra: add R14.4 R21.1 R21.2
Content-Language: en-US
To: Stefano Stabellini <sstabellini@kernel.org>
Cc: julien@xen.org, bertrand.marquis@arm.com, andrew.cooper3@citrix.com,
 roger.pau@citrix.com, george.dunlap@citrix.com,
 xen-devel@lists.xenproject.org
References: <alpine.DEB.2.22.394.2310231628500.3516@ubuntu-linux-20-04-desktop>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <alpine.DEB.2.22.394.2310231628500.3516@ubuntu-linux-20-04-desktop>
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_|AS8PR04MB8596:EE_
X-MS-Office365-Filtering-Correlation-Id: d54c4f72-5fa1-4e65-274d-08dbd45ec25a
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	PGIu8k5Qz2dBS0aMXks67bV+zKueXvpKoDDd5U1XDAxKEBm49J6XoK9wqzCyccLRdPoRhkjEeqOlF5aq6OVJN6fF4UpFAyzHIeOQJhn2gZ4PWnHTHZr94LV7wvJI7I3XpCx4ZiO0vzeJSl7LYfLSJpzJwxmSoRVy2doZ4EkBVZELgdhvJVEH6JFFd1lu/nHMBUTp8dXluwp3/gMBAO8C9C6zJX5qDMOTV8mAJnjjEmDqVeBLA+qJuaaR4ZTGgbvsKT2s2nELI1Uxbam39U2XZ/6Kvw1R30e3ApqP6cPMHerTFyl8DusfGD5BDG5qiZPIa4QTirA0BQ1daTLWZMsK942Qh52p2yvQGOoxrgXbNUkmCgLq+w3/NI2TsAnOO3CQeIICY3aU7Fn9BNHWK3on4Vld6+2JG3Z9D/79DWeDN8rCUpPFxXk7gQdTrnva3TYydThJ04T1zzRDVnvvuvMJBWYiH9sRxg+w3oW9GQ+MlTq8R71leulzhVgE30gY/+qEOOKyte82+9RqR08g8jrGj23LHlqZHBvH8nqIk0QWZuXmUId7r8mf+dx/xJaUQgzWjUEdI4RzXNiQ+tmOzrvH952x4/1QKL9vquAZWeXvlMJuGebLxl9JLV5YFrPPWwIyk+swdDKtuqUs3nMwdkW31Q==
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)(230922051799003)(186009)(64100799003)(451199024)(1800799009)(478600001)(26005)(6512007)(86362001)(6506007)(6916009)(316002)(38100700002)(66946007)(66556008)(66476007)(36756003)(2616005)(6486002)(2906002)(8936002)(8676002)(4326008)(31686004)(5660300002)(41300700001)(31696002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?SGpMWUJQTU1oQjEzVDc1SHR5aUFOWTh2cmZ1MUZYaXNVOWNvZjFiMW4yTXZK?=
 =?utf-8?B?Y1hBNDZHUmVRc1dOTHg0OEExWEhnVXYxeDNlcDVNeDhyaGdVSXptSER1Tnhz?=
 =?utf-8?B?bTNFeFRnWEZaRWdmUklUcFN2dWFEQVpwek9QZjNKOVc0bTRzc0tLNUE0Q0R1?=
 =?utf-8?B?cjZzbDJDMDB0a3lHZXFtYjltUzhJNm9mbERqSDhkSVdDbDM2ZTY5aFJZQnp4?=
 =?utf-8?B?cXE2bzBCSlVnaEEwc25ndWg5dXhCbmJ6anJCRk8zNFBhVHl2Rkt5emVWcUxn?=
 =?utf-8?B?UlNNZnpGcGhKc0VHYTU1VGtPdmFuUnV2K2dqRDVVNitqRUFVSVRDcGdrMStN?=
 =?utf-8?B?ei80OENaR0RWNGFoS1Vmc2Q0UTRpZVBUZ2d3dk1rZnJnSzNUZ0tlaU9VYVlw?=
 =?utf-8?B?MU9Ua2ZZMHN2Vm9lM2VkeXNacjVvL3dwaW5kNUtyS2o5TU9RejlxZmRBWm9s?=
 =?utf-8?B?Wi90Lzg1QTl1am5iRlRlWGZCRmNRSFBxTVE2eHdRc29SOGZMUlhwVlRnSEp2?=
 =?utf-8?B?dG13Y1RibzRVRStyand2SFhHd2lta2VrZ3AzS3JEQnUwUHZvQ3BNaUpVRVJY?=
 =?utf-8?B?QWxwZnRPbGxweUNMb25BUno1VStqQ0phMjFzVHlpeVZYL3RMVTZuaGxSRGtp?=
 =?utf-8?B?YTdiejJWUU1ybmt5a01DNTNTbEtDMEFEV0tZSkxKbVVldks2VmRBTGJLZG1J?=
 =?utf-8?B?YUtTRGpVNUgzQUpRMG1seC9aQ3U5NFdGeVFuaHQvSDl5WTBSdGczVHB0TEdq?=
 =?utf-8?B?SGk4Vms2OEx0Y3liMnlVVk9wVWhVWTBBYllTbWZvMFdWc2VCekY0TURwQStD?=
 =?utf-8?B?OVBNMDFaME1EUTlRMnU2Y3o4Ujd4YUZUVnQxRW9tdEc0WlZPREQrTHB4b0hD?=
 =?utf-8?B?UTEyK0VXUFIrMG1FdzlqeHNXOU05UGZVTXllb1EwWUlaVEdlQUJjNGVkRWxr?=
 =?utf-8?B?WGs2YjBZcVZzSjdCZ2xVRWp1b1BSMm1KQjRoUEFqYStmQjNLVHJra0V6eVVn?=
 =?utf-8?B?VFoyVWJXL2xHTGZyTVVvR3BzNlBlRmwzQUVReWl2OE1LQXFCdTRvQ1ZQNTZ2?=
 =?utf-8?B?NkZwWXNodVhLVithOG01U29FOXU1aE44M09qNUR1bWVmOXo0OVJubE9wZkor?=
 =?utf-8?B?R3owRTZuYlI1cEtRTnZvd29WZnNCVGNXOUMzU0RGcTY3YXBOcWdRR1BrTDhr?=
 =?utf-8?B?UTZKZkhzK0E1NkpoUk1LWXc3enE0S2t4OTJPZ0p0a3JuaStyalFUVUU1OTdV?=
 =?utf-8?B?bkxXWkhybStMY3Q3RGxaTkwya2xpL0JiT2FRdklmWEQ4QXVaUTdVeXRkaWpo?=
 =?utf-8?B?RHl2aENrWnBnZktVQkxUNjU0ZVc3aURVM21xc2J2TGZaUW5uaWpRSjZRY2JG?=
 =?utf-8?B?Mi8rNUtGZHc5RDJPYXpXMnRRd2Z6ZTJUNGJLNWlXMEJTblpXS2FDRGJZM2hN?=
 =?utf-8?B?bi9LNGs4UkZEUUdZMFQramRVbk9zd0RIaEUrWitVSzRRU1NJNzQ3QnlzMFJJ?=
 =?utf-8?B?cGlNMDBsYnRXb3VCS2lzZytvQ1B5cWxTOUdOWWJic2lkLy80WTZRV0tBS21V?=
 =?utf-8?B?MW9HQ056MjduVnJoU09MaWx0NjlldTczOG9GUFpwTGRwNE41a3g0cDhaSkEy?=
 =?utf-8?B?L1crRFZvNDYyWW8zd3ZkcXo0b2hLMzd3bHQrZ3hMMHlmeC9Uc01ETENUYVFt?=
 =?utf-8?B?YTFBZFBCejR3cmRic1J0eGV2U05KOGpPcXJUU1B6bHkycTNKTnl6ZklCR0F5?=
 =?utf-8?B?VFdzV1pwNmx4OEpZSHU4V1YyMWVlWWVVdXo1akpPNFZPTHU3ekJMNjNkYmNy?=
 =?utf-8?B?Vk9hdUx1MjVYcURpclMxVXptVUd1VzA3ZHlKcGkxay90ejB4OFhsVS92dFc4?=
 =?utf-8?B?aysxQVBUMFBqZ1JCSlIxM0NHQTFZNUJCU3dTZ0QyRkd6eDIzV0JJMUhkbWsx?=
 =?utf-8?B?TG1IK2RPZ1o3M05tbGFITmpselI4Y1IvbDMycDNHWWxQRzhBc21tMGdOemU0?=
 =?utf-8?B?b1UyQkRVVnB4djcwTXZ6YmNibFQ0Uk1IcFNrTWc1alMrQ2NoSCtmSWpJUnpM?=
 =?utf-8?B?UEIrdEYyRDU3V1NBMGhsckZmVDNZY0dybGtZU0RKTTEzZmU4S0lsUHhNL1My?=
 =?utf-8?Q?1Kd1DqRc6lRsUu80X9ANj5fcS?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: d54c4f72-5fa1-4e65-274d-08dbd45ec25a
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 24 Oct 2023 06:59:25.7473
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: oaJuciFn2JbLNbZZ6ts5fsgTumT0lOpDDvtnEskL2TmxGIuzoNn+l+1adNgLTw8uOcRYE3imEGtn5iIrVAGOxA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB8596

On 24.10.2023 01:31, Stefano Stabellini wrote:> --- a/docs/misra/rules.rst
> +++ b/docs/misra/rules.rst
> @@ -422,6 +422,13 @@ maintainers if you want to suggest a change.
>  
>         while(0) and while(1) and alike are allowed.
>  
> +   * - `Rule 14.4 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/R_14_04.c>`_
> +     - Required
> +     - The controlling expression of an if statement and the controlling
> +       expression of an iteration-statement shall have essentially
> +       Boolean type
> +     - Implicit conversions to boolean are allowed

What, if anything, remains of this rule with this exception?

> @@ -479,6 +486,24 @@ maintainers if you want to suggest a change.
>         they are related
>       -
>  
> +   * - `Rule 21.1 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/R_21_01.c>`_
> +     - Required
> +     - #define and #undef shall not be used on a reserved identifier or
> +       reserved macro name
> +     - No identifiers should start with _BUILTIN to avoid clashes with

DYM "__builtin_"? Also gcc introduces far more than just __builtin_...()
into the name space.

> +       GCC reserved identifiers. In general, all identifiers starting with
> +       an underscore are reserved, and are best avoided.

This isn't precise enough. A leading underscore followed by a lower-case
letter or a number is okay to use for file-scope symbols. Imo we should
not aim at removing such uses, but rather encourage more use.

In this context, re-reading some of the C99 spec, I have to realize that
my commenting on underscore-prefixed macro parameters (but not underscore-
prefixed locals in macros) was based on ambiguous information in the spec.
I will try to remember to not comment on such anymore going forward.

> However, Xen
> +       makes extensive usage of leading underscores in header guards,
> +       bitwise manipulation functions, and a few other places. They are
> +       considered safe as checks have been done against the list of
> +       GCC's reserved identifiers. They don't need to be replaced.

This leaves quite vague what wants and what does not want replacing, nor
what might be okay to introduce subsequently despite violation this rule.

Jan


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 07:10:03 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 07:10:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621699.968427 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvBY1-0005GJ-S7; Tue, 24 Oct 2023 07:09:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621699.968427; Tue, 24 Oct 2023 07: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 1qvBY1-0005GC-Oi; Tue, 24 Oct 2023 07:09:53 +0000
Received: by outflank-mailman (input) for mailman id 621699;
 Tue, 24 Oct 2023 07: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=krZT=GG=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qvBY0-0005G6-TQ
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 07:09:52 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 (mail-am6eur05on20601.outbound.protection.outlook.com
 [2a01:111:f400:7e1b::601])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 53182828-723c-11ee-98d5-6d05b1d4d9a1;
 Tue, 24 Oct 2023 09:09:51 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by VI1PR04MB7088.eurprd04.prod.outlook.com (2603:10a6:800:11d::20)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.11; Tue, 24 Oct
 2023 07:09:47 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6933.011; Tue, 24 Oct 2023
 07:09: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: 53182828-723c-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=FEWn6qtRjXqZ5MruS5cOcPucnVUziCM8K5usxi9nTAbwTxJ5DkNEaXKxHe7Pkze5eW7SitJCE14pzE08ITZioUR9a2gitl816/RHcx2kZ4SXd2x/IhFq1CYwnPeocr0bKj6EOiPABhB/lIvlzS09weRRtUBIK2E1a6N6uVASsNvCpRc88AJiVzTram9aWkS30Ykokpsn1tL5U2AeqqvzY6gHn5aKXcD/VzuUwrio7ZpIf4hJd84J5xCuKGKvTx2aqorU6Eqnos66gITxSmfMfWh2VFMdo4kczxrXypmdOswdpLEwL9b6x+PvweVMv+r24FvNJw2CBUU50Y//GqoE9A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=2sVVJL9gM6QUiOtMPVuB4fvd0ae2WaUfjFTUzmfgq4E=;
 b=SdsnWvbAg+5c5ptNx98CEIbX2rkIguVjt7+7ZpkTSpjhetNMyNAKnbIEUHn9hYEYQxfP12PSyzgjgT4iskmPxxTCi5QnNTesievhMyKZMD4VxP424tzAMUNPphtJonwYIgEbYSx46/umkH1sLtjasQU2kZWE0dR7Do6/58UUxEGDA+j1sMAuQjRMllTn8g+2LHQ8IVaWKjmUcKaekdZtUhlvap90rLIImeN0/oIRrNWoohWoeN5O4IcJy/7peu6lYWOgieK34HcGkufU7IHRekZ3ALUqUFTk0iV8+jiHyXRm1ew3kKSkR/ba1s1ZSfp7+u3jseuLxJiXNggmN4B+Gw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=2sVVJL9gM6QUiOtMPVuB4fvd0ae2WaUfjFTUzmfgq4E=;
 b=AZmTTXMC+K/52MJTLPNPTfFhtSDMCDio9K94BLLLPkLgye0s4OXzzruoD8CZykIougqW5ErV43T5omUp+GWex5TOirj7N//Ie6bSdxUKz/nC8ihtmouiuWWOhh2UbvRzm19R61sNTSjXQCD3bwhDsCTSh9AAfdf7y+DIntLeFqC4CS7xyJCCK2UY7Pl4LFpv5zBSESGh5k/PRXr8mT+QLwVoWzAutxX3P8uEwQnzCcyc3CVKErF+hq19005Tp38adjiry1qG2pJCyPNNddTSWQBVfxgrsNOK6ezPMwAh0oqiAg9R5f4CSlWpJQoz64FxmWFJjSF/DSdDHEIQprMj6A==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <2ef80dad-5ae6-786d-e89f-d0c3af44b485@suse.com>
Date: Tue, 24 Oct 2023 09:09: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] xen/vpci: allow BAR write if value is the same
Content-Language: en-US
To: Stewart Hildebrand <stewart.hildebrand@amd.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 xen-devel@lists.xenproject.org
References: <20231023163615.693462-1-stewart.hildebrand@amd.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20231023163615.693462-1-stewart.hildebrand@amd.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0029.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:c9::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_|VI1PR04MB7088:EE_
X-MS-Office365-Filtering-Correlation-Id: 9f80003c-524c-41a4-791b-08dbd46034ba
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	SAiHUXlK5bSvYolT9Nj8KHLSqjF1kz+xuLM+gIRg32NUl5O+DRF8Z+scJCwDziRj9/1GWS4eMNXXt7ZeughAKt+VNH5Nl1zYRVeJtpv/IoCycHEEvu36m7f8tJ0iBAHsFR3fNq9Nqj0cYSgq+xw0+zu0KUmrILGIl+DgmMUYX+8yR+hXw2rhMAlkWSRbyJTY9Lso9/eNeYi81xQW1HQSDas8BTjdPgH06/b+Uqgruxzdaukl0wYNBX1gSUBZ6CqPKUBy3uSf1DxehuFLWUw4h31tTIB882x7gh6aMneTJjTP6YfWjRSXyoWVlCDJQjyGECGibnX/z4hbmgJCeIVszjhLVss1f3f8gQbHZSX4nXIcmPhHpk9Vv73h2plRdXNGxnFUmMbSrIocUzCu7JDLemWb/CQNLnidp8dS7N1ielovyk6rc8zC/DBhazRoN4xC4ccAG1IX/kQy2spDWjpZJpfSkeZXnXPS1cDpbuGL/SxO3NT7JaXPhoRt1EWYUybog8bDgy6HroXL/qi/Prmg/hR2uh3ANCc0FguV9GuDhR4rlGfyu36z8+/eIYyRMe+Yb1QZCYta9K87jgjzL9Y0uxJ70P+RarVrDob6ue+sdF82XtHtn7q9iYDXtFsdUA/8b2uRQuVO8GlagDrgv8EnCA==
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)(39860400002)(136003)(230922051799003)(451199024)(1800799009)(186009)(64100799003)(41300700001)(5660300002)(4326008)(8676002)(8936002)(31696002)(2906002)(36756003)(86362001)(6486002)(478600001)(31686004)(26005)(6512007)(53546011)(83380400001)(6506007)(2616005)(66476007)(66946007)(66556008)(316002)(6916009)(38100700002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?RmJHblhFYllUcnh6a0cvVEVtYk1wdXE2cUZlZG1NNjI5TnExUlVxUjBhZHZU?=
 =?utf-8?B?aXlzMys1b0JYVzlzZEo0M3ZpSmE1OGxoYjRsNDQ3WE5ubnZveU5mOFcyMmJh?=
 =?utf-8?B?MGJ5emZsMG9XUVorYXVUMzB5M0ZybnNwMnFlTHQrUk55d3RKMHlJOHgzaFli?=
 =?utf-8?B?ZjFZRzVHNVlZVkV2UWVJazVNWWtJMGh0ay96SlpuSm5COHp4VnkxUGtxL1gv?=
 =?utf-8?B?Sk03elpTU1FzNVAvSE9QK3ljM29vejVhRFpGWGJraU9uOEhEWkN6cmduWkxj?=
 =?utf-8?B?Q0NUSFF5ZGZmMDg1SjZpU0lVZnYvclhTbDlncXB5dE1nTjdaM3dFd05Bd2J6?=
 =?utf-8?B?Q3UzK3B3Yk1MbFE4bGZYU1pxQXh5d1lobmdHL0tMRUcrb3ZtWUR6OXJpNnJJ?=
 =?utf-8?B?dDR3YjlqNE15VHFKdWF1aGVTckNrdGpsQmt3MDVEQVVDYmQxTFBzclpCYjUw?=
 =?utf-8?B?cXB5ZjJ2cnV6RjQ2R243dWRrM3lyOFBMNXhxYmhlZ1NtVHp4SUJnMlpKNzlw?=
 =?utf-8?B?elpXb3M0NkpLbU9zRnVrOHVjWmQwMEw5MStvTGdpenhCOGFJSjB4ZkwyR1gr?=
 =?utf-8?B?MDZqclVTcFBRM3V3c2JVMDM1MTMyYnl6ZVJJenlDMHM2UUFYNHhOVXJxVXdJ?=
 =?utf-8?B?SHB4ajRhVFFIQjlJY2RMeFF0RC9YMHowdjB1N1F3MzV0QzN5bnhLL1FKeDIv?=
 =?utf-8?B?Smw4UUg2a3VvaUVvY3A3V2RxYXBPNlJvUGNSZEdPbUJEZTg0TFVhWi8xZHNP?=
 =?utf-8?B?WWpJcGxGVStpYTloRVVwMUhoWVk4SWpqVDFxd2t6eUNvQ1VhNWlNNWV2VEll?=
 =?utf-8?B?SFAzR3hnTW9pUzBXSi9BNVFZSFppTGRYNDNFODNhWVJBM0Z3djFoUHVyWnNY?=
 =?utf-8?B?K2JYekxXL2tsTXJkZTNqVVdxSk1ya291SGpZaDdEYTcwaHQySDJXOHlCS1hh?=
 =?utf-8?B?U3FJamswekQ0SDA4NzJzWWRkMS9qa2ttZ1plK2JYeXFPOE5GNGJ5NkUrd2tn?=
 =?utf-8?B?ajdjbXlqTWptQUtFdk1WYlZ6cmhBS2s4WWhXbmpTZFZhSGp3SHhkcFBCSkcy?=
 =?utf-8?B?eFJKN0lNVzZCY09jOG5SWkYzeXhERWtiK0xsSUVJWkRjc2k2ZVc1Q0t4TjNr?=
 =?utf-8?B?MC9pNzZrWWFsSWwweXozYkgrUHdJanpEczI3cDVwYnpFamxWZXNDOVA3SDhM?=
 =?utf-8?B?Y29YWHUvUEpUQnYvR1Nrc0QzbGJCUDlFNDhJTXJnNWN1MTdFZFRXWWpoU1kz?=
 =?utf-8?B?eEpmYnV3VGFWMGRSeFhhdmhPdk8xZzZWTE1meFFsMjdJQVhZL0pJVkRrTXp2?=
 =?utf-8?B?ZDIwVFJvRUs3bmFJRnpUU01KNG1Gdm4veitSV09rUlptaFoycTlsMXFaOWRZ?=
 =?utf-8?B?WTlmbkZOWHg1cGJOV2pEdnlZdWYwdGx5aE9UWTBDcTdybytKRXI5UFp1eXFE?=
 =?utf-8?B?RzhQVFQzWS9FQXVJU2xNVFNzNm1BZ0Nhb1N1VE85dVlURzh3RkhKZlZsclhz?=
 =?utf-8?B?akd5T0ZJcnBtOWNybVZxbGFwdkd2TXhRd21xM1dJN0c4YllXWkZwMjFYR1pj?=
 =?utf-8?B?RnFpU084TFhWdFlJdGNhSmVLZ1plVHBCZGFnN1ZGSmFSbjlzQklhUHo1aFYr?=
 =?utf-8?B?Ny9SVmFjUkM2Y2IxU1BqTzA1b3NmK1BTak5iWmRmMVE2dlJWYldSVGFsR0Va?=
 =?utf-8?B?bkFzaUdmbnZmTW9jWDlKYXhKQmxOV2tBNDBtMkl3ZExIZzc0SDhJa1RrNzEr?=
 =?utf-8?B?QUpNSzFOejJ2Ulpxcnp5aDFQTGNEcUROTENxOUNEd3JKMkp0b0Fnc3ZxVHhn?=
 =?utf-8?B?YlhPSG9UTllQNkYvMm91b29sMm5lZzBoazlRbi9Pd2RnTEY5Z1ZCTkRUbmZj?=
 =?utf-8?B?K0c2RGxRSW5BbjBmQkQ3alAwbnlObDFIRGxRQk1Qc3MwZTd2T0h1NVJ6SkR4?=
 =?utf-8?B?TmFIQ0JRNEYxQzJNNXpFU3FNMXpuU3lKLytmZDd0MFhqd3BqVWU3QjYvdlhv?=
 =?utf-8?B?Q0pleTcyYytTRng5MElpdDByR0kvS0NWVEVKZ3RxSk5aRVlQakljaDFOU3Zq?=
 =?utf-8?B?RmxiZDJnZTlUTk1HZmtzVytld1pvcXVxakU4YXI5a0lWS0o5UVNkOU5rTVZ2?=
 =?utf-8?Q?tvBhYyNuheYM9V/iT/k5Jdy9Q?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 9f80003c-524c-41a4-791b-08dbd46034ba
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 24 Oct 2023 07:09:47.0762
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: gPnAX0H7OriWSdfwfhRwA5JYamcJ854gHrJNfaQf8g/6igTdCXfYGpnY8VqL9mWCVfbzAjHYrGY1nYclpvAMog==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR04MB7088

On 23.10.2023 18:36, Stewart Hildebrand wrote:
> During xl pci-assignable-add, pciback may reset the device while memory decoding
> (PCI_COMMAND_MEMORY) is enabled. After device reset, memory decoding may be
> disabled in hardware, and the BARs may be zeroed/reset in hardware. However, Xen
> vPCI still thinks memory decoding is enabled, and BARs will remain mapped in
> p2m. In other words, memory decoding may become disabled and BARs reset in
> hardware, bypassing the respective vPCI command and BAR register handlers.
> Subsequently, when pciback attempts to restore state to the device, including
> BARs, it happens to write the BARs before writing the command register.
> Restoring/writing the BARs silently fails because Xen vPCI mistakenly thinks
> memory decoding is enabled.
> 
> Fix the BAR write by allowing it to succeed if the value written is the same as
> the Xen vPCI stored value. pciback will subsequently restore the command
> register and the state of the BARs and memory decoding bit will then be in sync
> between hardware and vPCI again.
> 
> While here, remove a nearby stray newline.
> 
> Signed-off-by: Stewart Hildebrand <stewart.hildebrand@amd.com>
> ---
> Do we need similar handling in rom_write()?

I think so, if we are to go this route. However, ...

> We may consider additionally checking during bar_write() if the memory decoding
> state has become out of sync between hardware and vPCI. During bar_write(), we
> would check the device's memory decoding bit, compare it to our vPCI state, and
> invoke modify_bars() if needed. Please let me know your thoughts.

... iirc we discussed earlier on that doing resets in Dom0 wants
communicating to Xen. Any way of resetting by a DomU would likely need
intercepting. This way the described situation can be avoided altogether.
We may go further and uniformly intercept resets, carrying them out on
behalf of Dom0 as well. The main issue is, as with any config-space-
based interaction with a device, that there may be device specific ways
of resetting.

Jan


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 07:33:29 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 07:33:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621707.968437 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvBuj-000245-Nz; Tue, 24 Oct 2023 07:33:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621707.968437; Tue, 24 Oct 2023 07:33: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 1qvBuj-00023y-K5; Tue, 24 Oct 2023 07:33:21 +0000
Received: by outflank-mailman (input) for mailman id 621707;
 Tue, 24 Oct 2023 07:33: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=krZT=GG=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qvBui-00023s-G4
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 07:33:20 +0000
Received: from EUR01-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur01on2070.outbound.protection.outlook.com [40.107.13.70])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 998f63c5-723f-11ee-9b0e-b553b5be7939;
 Tue, 24 Oct 2023 09:33:18 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM9PR04MB8745.eurprd04.prod.outlook.com (2603:10a6:20b:43e::24)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.11; Tue, 24 Oct
 2023 07:32:48 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6933.011; Tue, 24 Oct 2023
 07:32: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: 998f63c5-723f-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=i1jDnMNfRpsSkhITwz65E1nRrpHpbJOdJ8mr5OgySeTqpMDnNA0BthQ4GVREIC+kOTyDbB6mMFXpfmIX+r+dYA5Sa94n5aHujYtdhjDjRmRaX9ZlvukWgVpVH0DvXVQs3+5AlTq2LYmAmMaXAGzAD+XBK/LGe3bVAKMV7bK6EaMCQBekSvN35FlXd6bBg3ISiL/c3nNxNqlLwJMtWa7hmCgVXGe7TsBuxDi6EgGiwVj1Wm4rJ+0z/kB77OwvYRengD3mjcEPXUmg2WRAPRqAWu7YyxXUqgjYZqThIzGL+7uzyH9oTBtOBfbUV2xyg2qh/0QLqGkiAgls3m8PY2TSTA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=EoE+HlxyflzzrXrf020OIhd/O5HLKXz2JsuOu1NaoJk=;
 b=bpX1Dw46aJZI77C6tr6mJnKapjCspCWs0hLLD6UXsp2Vz2ZD8cMTu9B/w9K9zDcHjrk9LhfWcf2Y200rbUhlXHwWGMl5QgRppkl9ct0MOOUJxdmD7IdjxO3F8OZ+rNlujmm/EtedvxpQTjXk7xsc6cuGCKuUAbuPgtIWRFp11j368cf/KIXT7Sqv35lm4HdvHTxMpa4ax/80bIzd5EVJkQ5t3fmSS98HzVE6RH0zIwlHS15Dl0l4RnUmi4XqBsCOn1BkvST78WQ8U+2TNS8Mh2W5ks/jZzGzv+BP2ZzAnNGJNcankPtfAs0Z2zihHAxw+LhKv8rAa8ktUMuRZJVxtA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=EoE+HlxyflzzrXrf020OIhd/O5HLKXz2JsuOu1NaoJk=;
 b=C+DVOgsI5B1cg7OfElGGa0pE62eutUtLgs+scpgR8T9pE2/Dy/Y1NISmTgYx3C6+pJuYTMAFN+xUb4iEdRjs8tszEgBX+ZjM7otwxy2pJaxRgmfGNeL12VtEd68peMF/3VrXZsqfKFlpxpKityzUuGYL4nxFEhQZ2CL9L2wM62IS3I3QdIUgaOMQOSDaBD2Fq4PnnMq+pon5enXdA4dHpF8m2/eGRQVQc+YjqrMvT1TevicUb+vPynzl2+JSiz/aCNTxO9DAoEu/mqRFh7nD23IXUl9Xdf2QWjkMhUISdYEbjG7bvUY99Q5RfRxnwN5U+paDte5E8Lcier7yg6AF5g==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <2aaa0978-e28f-4151-f4ba-f2628f6d4677@suse.com>
Date: Tue, 24 Oct 2023 09:32:45 +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][for-4.19 v4 2/8] x86: add deviations for variables
 only used in asm code
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.cooper3@citrix.com, roger.pau@citrix.com, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <cover.1698053876.git.nicola.vetrini@bugseng.com>
 <67ec8b468d6048f7f91590b59430df275b2f5870.1698053876.git.nicola.vetrini@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <67ec8b468d6048f7f91590b59430df275b2f5870.1698053876.git.nicola.vetrini@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0002.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:15::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_|AM9PR04MB8745:EE_
X-MS-Office365-Filtering-Correlation-Id: 216263fb-239b-4472-1aa0-08dbd4636bdf
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	ptpG2VvEZxL9HiRpH63wZYM6UXPDhDyxtU/Qooe6/tKPxEw/IXllahXJm/52Y0bNEYsaEg3DTkpExGr3GCuUMAQ5DuXkvtOsIpVRH6uGp3EPGKwH5CLcMgwBparkn4DaOYs0xy/+fq4+O5/6IT7F1elgVFdQJEeLZSAo75GlVHIwmvRKPZpET5rqm1y6A7QXPkyT/l/TxoUMUmVuWTLWtHPN1yPNTMXfuSl0CnfK5mXB3F0bBJmVz1JR1v/AnLSvUjH57SZmI4iE/Krmtuq1zm0a03Rv0dkYcyrW3Toi/3cQoDxZhBqHdu74NQkwHpDqtOLzXgedz4R21QzVlv/rnFbKDJzPtAIAYElqVFhhsY+L60knS98bzHXZChPPQcQEHU5dgYK0v7T6hOQQFOlwAIps4GYwyrbJ8iuL3kX6GzlfQZGddzcCOQZUytAhGB7E76+ZkFnt97ohmmyHJXPfMZ8T12D04BgdR08lhXk1ixoFBrCrX+tl/oSfRxJsCtVTXMCPL2zBCNHGMHJh4BxyvUJ++l20csTbqTq6G8SwUgQXshhFOze9nHOdcFhk4Eb5NJaPFuON+uOQqauZVdqsqLrup9KpRD2sMnYoZP949sQ4+JFQPHu+wzdrG4mrXnzj7+AOfxF19NbTfntQ3LAgMA==
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)(376002)(39860400002)(396003)(346002)(230922051799003)(186009)(451199024)(1800799009)(64100799003)(31686004)(36756003)(66946007)(66556008)(316002)(66476007)(6916009)(38100700002)(31696002)(86362001)(53546011)(2616005)(6512007)(26005)(6506007)(6666004)(6486002)(2906002)(8936002)(478600001)(7416002)(5660300002)(41300700001)(4326008)(8676002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?WXBwQzc5Q3RaUXJUZFJ1dEpnTTJVQ0xuMG4vSVFBOGJ4YWI3RXpMTGlYMUxH?=
 =?utf-8?B?dWI0Qy9Eb3lmUDB1ejVQbE1sYWZad3ZINGUvSmplYkFaOVhLYUhqNk5HSE9H?=
 =?utf-8?B?WGFSZ0ROVklKd3BYYzYxNzllWndvVFAvNEZYemVWQ2hNd3F2ejV5T2pDc29w?=
 =?utf-8?B?blFCUFBvcEkyYk81VklUeXdrSnBWc1UzSzl6WVJ1VVdTSmVwYnBETExuZUxU?=
 =?utf-8?B?b000aWR4dUxnc1dJR04xUnBYOTFuUGtpbk9xTjJrdnNMV2VMc3hmQ2t5di9v?=
 =?utf-8?B?aG4yZDhZd1RmMUM2MnY1Qll0Mi91V1ppMWQ5cXZtaWlycEYvcmxTa3ZUM2RY?=
 =?utf-8?B?YjcxQi8wTHVVT3g5aXhqeEVURFZFcEE4eEdGVSsyNWxIT2M4dm95bWhtSE1h?=
 =?utf-8?B?TExRSjhkMlF6VVNBMVZXZnJXektWcllaQ3JBZVY1TVFYNmhnT1JjazNrTE5u?=
 =?utf-8?B?QllVQjhEaGllcXptVE1HWVpLVkpUWDlYN05Ed2JGb0d6dXpKOU9LYTliUHZz?=
 =?utf-8?B?S3I5MjhuSTFnY2FaRXExV2NobHlySU9rR05VR3VOcm9Ud0R1OStveEJXSlZX?=
 =?utf-8?B?R1dYTkppWGJqVHV1SW9XbFdldFVORGk0MERqN3RmR20wMUFVRlJ3Y05tRWpJ?=
 =?utf-8?B?Z3ljNFBucEo3T3hDQWJJa3ZKZXJDZUNmOVJGdjZDUVNST0d1azNDNWdpVC9N?=
 =?utf-8?B?U0ZlcjlWTnl0Z3E2Y0c1SmVwalVwNkR5SFZyeWg3Uk4reDMrOGVYd0E4a1No?=
 =?utf-8?B?RHY2QlV3czRPSC94VmhGdXNkaE92MjdNazVjQXIwWjQ1UVdhckNtdnBBTXI0?=
 =?utf-8?B?TGxVNy9HeUR2d3dORHgwOC81a2dXTVZKaXdhVkl0TlB5VkZXNWpNaEdEcnVx?=
 =?utf-8?B?aWYzYzFRNnlTN2t4OGFCVDl4K3I4aHA1ZFY1MTREWVRBY0IwaldhL2RvYzBP?=
 =?utf-8?B?czhQSEhrU3dMdVNJTUxTYnRGOWpnV0VFZ1ZQckZmQWxpUEI5d1pWODBXU1VJ?=
 =?utf-8?B?cmdEQUN1Ry9oYlU0SzJNMWFZdUUzNmZ4TjhNZWtQSDhUWmhyVmJHTDd0WS9L?=
 =?utf-8?B?RlhYL3dHWnJ4K0pGd3Z5ZWNkOVV5cTVYeGhMM1R4bVh5VWZwSWdHTXlCNWh0?=
 =?utf-8?B?djJ6SUgzTW9BSVRVQTlKZ1EwUzY5cGsxVzU3L3lEWFZFSm1aOExmb092OFhL?=
 =?utf-8?B?c245QTBrRm92MHVVU0lZZGlqcXJwdkxKZ0VqL2wyZlpNanlnam9DVGhOZXFm?=
 =?utf-8?B?anJqdDdkU2pqU0NoUTdQRm0xZlVuNVZQdW4rQldGSHg0K1BvRFpJejNPeWl6?=
 =?utf-8?B?VndaTW9KeGlOdGV2L3BXOUdZbXlXTEh0RG9tRmdSMDVTNVIxbXM2KzZ4bnhl?=
 =?utf-8?B?YmI3aFFzRGRxUUhjVEFyOUt2R1ByaXFBaUE2MU1pVGtkNTVpdVZsbWd3TG0v?=
 =?utf-8?B?ZmcxY05FRTFmMEdXa3ZNZFc5ZEt4alBVRzVFb1FkbTFqZXo4R3VITUpZbzZ3?=
 =?utf-8?B?OEdhdldmMURpR1ZxOC92S1lOZ3JOT0R2VnRPbWdWTnUwai9NaDlKcXRuUnpN?=
 =?utf-8?B?bUw4UWQ2VE55dzBzZjFQYTV3c2VQMEhEN3pKSlRUWUJMcnZDVlphMktNY3hU?=
 =?utf-8?B?STBQbm9zVFhJOGU3bDl0UmxkaUVNQXdFanVyMjI5dyszalIzUzM4bHFUQUZY?=
 =?utf-8?B?c0JGVnBGbXcxVGJtcDZ1eDV1UjZRWUtTM0VwT1JBbk9vNlZOZWtQd0xkTm1q?=
 =?utf-8?B?MUFWWFE4eU9KVUxvQUNrUmNmRHNtUlJSRy9iK0I1c2QrL3pLck1ETFNhOUdp?=
 =?utf-8?B?cG85djFNTVhBWFI4U25PSzBsSzVndVo3VnRkenk1b1ZOTkNjbzNLNjRQdmxG?=
 =?utf-8?B?UzRlZ1BjYXVwdnBTL05kL3FmbGVCRHYyV2FjNlZQdGIzVVNiejRnVFhPZi9L?=
 =?utf-8?B?SVNkYzlkZi93U1dEVnVYZVFNVG1BcXNmTlhod2pTR2R3WVJJUUVhKytSUFp6?=
 =?utf-8?B?VU5WYWhMUjljMEdjZU14MzdPcXNralVGdEtNZ2xkcnBLYW42ZXNLWWpEWjgx?=
 =?utf-8?B?RmxhOXNxcE91MW45Yy8vZmtLS0d3VGVBdEpLYzl2cWhRamxiL0phSE1aaDNv?=
 =?utf-8?Q?jz+w3CrK9Fia29kOdvAVv/GBw?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 216263fb-239b-4472-1aa0-08dbd4636bdf
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 24 Oct 2023 07:32:48.1401
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: XGWQsexc9LFrpXqKKkLbT8TYbkdGacNRfNOl9ltxNt1mdS6Cb6G1YbCgfxqJqLpCYZcteZd5xSXYF/YuPNKyCQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR04MB8745

On 23.10.2023 11:56, Nicola Vetrini wrote:
> --- a/xen/arch/x86/include/asm/asm_defns.h
> +++ b/xen/arch/x86/include/asm/asm_defns.h
> @@ -31,6 +31,7 @@ asm ( "\t.equ CONFIG_INDIRECT_THUNK, "
>   * gets set up by the containing function.
>   */
>  #ifdef CONFIG_FRAME_POINTER
> +/* SAF-1-safe */
>  register unsigned long current_stack_pointer asm("rsp");
>  # define ASM_CALL_CONSTRAINT , "+r" (current_stack_pointer)
>  #else

SAF-1-safe is about symbols "used only by asm modules". This doesn't apply
to the declaration here.

> --- a/xen/arch/x86/setup.c
> +++ b/xen/arch/x86/setup.c
> @@ -75,6 +75,7 @@ static bool __initdata opt_invpcid = true;
>  boolean_param("invpcid", opt_invpcid);
>  bool __read_mostly use_invpcid;
>  
> +/* SAF-1-safe Only used in asm code and within this source file */
>  unsigned long __read_mostly cr4_pv32_mask;
>  
>  /* **** Linux config option: propagated to domain0. */
> @@ -147,12 +148,13 @@ cpumask_t __read_mostly cpu_present_map;
>  unsigned long __read_mostly xen_phys_start;
>  
>  char __section(".init.bss.stack_aligned") __aligned(STACK_SIZE)
> -    cpu0_stack[STACK_SIZE];
> +    cpu0_stack[STACK_SIZE]; /* SAF-1-safe Only used in asm code and below */

Wasn't it that such comments need to live on the earlier line?

Jan


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 07:36:29 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 07:36:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621709.968447 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvBxi-0003Po-4u; Tue, 24 Oct 2023 07:36:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621709.968447; Tue, 24 Oct 2023 07:36: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 1qvBxi-0003Ph-0r; Tue, 24 Oct 2023 07:36:26 +0000
Received: by outflank-mailman (input) for mailman id 621709;
 Tue, 24 Oct 2023 07: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=krZT=GG=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qvBxg-0003Pb-Jh
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 07:36:24 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur04on2075.outbound.protection.outlook.com [40.107.7.75])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 06c751af-7240-11ee-98d5-6d05b1d4d9a1;
 Tue, 24 Oct 2023 09:36:23 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PA4PR04MB9663.eurprd04.prod.outlook.com (2603:10a6:102:261::12)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.8; Tue, 24 Oct
 2023 07:35:51 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6933.011; Tue, 24 Oct 2023
 07:35: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: 06c751af-7240-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=d6d1bokdbWw58oyeqotayRpz1jsidJ5cuNJ4VqywXLaahabsoubKRvq+byJSBUcE3rMPqdCe2GH4VTIPsk+/bUnHfRoVIIiBdovDhbCz+psu41tFkZ5gHwyMmOXncp6Pu0KwDJC9y4b6PrdgDDdMQuFl9mHbWLnGRbE8/7EKpepNiuDAIl/6E2aPL7RkXj+XYvKfcp30OHeEwCIoyUO0EMEvLdY2n5ezLi03LR0ESlNGC+NoWH4vQt3A1PpeeKiY3jB93FaCqyuZ3+8Vdaxh83oltETyWi+AHcdn7ga9QAhFOyrxrBiQwwNYhIobrW71r0BKzZkK8sFR1eLdUn5TyQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=ot4+hE+7o8ioemUiCX+7THAko9qApKKhlviUlcAuKUg=;
 b=TUfKKuEU/4v2XZQsCrtvehEO6TWvz3eqJDUmUVN09olvyRN72BUYyfmzVY7k0Ad8q7RqoRBIXyCGAezYfc74TDyzAIOkyO4a+xMMa4N1RQlUx6ns45iXG2uwpN7t1sKn2VoZ89oKsocfyG169ss0Fam/fDqBcWRSTsi0Nm8jlyhoME/TC88L4RKfs/7cFXyZl0h6hTIY9NeW0fe4lqEh0FvBHEXezxkq/+IcyetUE+iqPBvwquikBv4c9QUKGdPLqSeaov4JscekMItP95/5Yat95qOaITi5jH3aYo/4LjQDMR5aUKhBJodVBBWe89ayQuGDrmHuAZhtHuaOgn97dA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=ot4+hE+7o8ioemUiCX+7THAko9qApKKhlviUlcAuKUg=;
 b=NjlfTM4qUWlaWQcbWL+pvJVi1pt4doeuZlD4tmJ6UEiemx380Rnjc3zdIPk3w3AEY0AgLO+c4h7kIA6Gm2OltsrI8YU4iKMQmhyAHmvWuCoZOoLdvc6zQ5hHnUAIgQqub8fHF9PPo9UGrAyhviV6B7eLutIYylnkh0Uj+ngX1uWniV4p1NF0mqGaaitkoaYallNKDkhU1FsbgYXAMjptPsEwNUTeJmmj813tNoDJ+P0EmRSyhZThiy+si1nfhRPO6Cb+l6aIM9K5O+M+ILTIeqDJvPc5awYcgMqfT3Up7LUaB/HIcKSJ/l9kGvH+u6Id6TL5ZIxmDtrKxGwldCCx5w==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <a7cc92b4-64ff-8586-bf04-23ae8fdfb7aa@suse.com>
Date: Tue, 24 Oct 2023 09:35: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][for-4.19 v4 2/8] x86: add deviations for variables
 only used in asm code
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.cooper3@citrix.com, roger.pau@citrix.com, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <cover.1698053876.git.nicola.vetrini@bugseng.com>
 <67ec8b468d6048f7f91590b59430df275b2f5870.1698053876.git.nicola.vetrini@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <67ec8b468d6048f7f91590b59430df275b2f5870.1698053876.git.nicola.vetrini@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR3P281CA0050.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:4a::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_|PA4PR04MB9663:EE_
X-MS-Office365-Filtering-Correlation-Id: 39624234-a7a2-49a5-f415-08dbd463d8d0
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	d6qeKl702jdUIfY1MFkAXxvCn+fEqWmxY5el2QNLRNz9drtaB4TNwuG0S8szycQh2He/LPMilt31QDRdEeyZdBiQnBuEAzmQjPnbjJv6SPRv0eNpdGuzZnnEu4qvnCrBQt0i68fh9in1KXw5kMwN0mk2TujCeIZY+Tqyeu0npj0WY4pwMZC+BlcWUCt/a/ZgWbZNP6ayGNHhqHgZBGImCNRHhQ0ikG74Kh7+9au3D7+xsylyFMDXvxv3OMQh8GPNwSX/gqeHMDs40AwQ7l6pnOYrCA5Cicr/G20biOX8BIHqTflDlU21gWVEJBgmR8XbxXHysAOYYA0Hl4apRo5gfnQEUTI44s5RcjN2muNrVU0Ydl7d6m2pjYlw8lFMLOYeRsHN8rZN5AV1Lop76QN0wnFCVQ1uLajQDbVmuybNnjpNMRsHFRipl9KTCV6Gaa87gfSZQIkVjzX8I56hr6V1TNoAmKb/Kv3ST883a659dpEhrH+HUY3Ko2U9my1BGSMZP8oXcfjbcn80WAZSv04FprZgC0mHP2X8Sc1XZy51wSd1h837u7ccOCsO80IeEMdSEl7fWyOL0D6y2v9uU/fswVkrbQIFqNBP0bhJE7s37wQVdFajYUycFhEcECBIdvJd3r1TqVSu1+U13aemK7U6pw==
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)(186009)(64100799003)(1800799009)(451199024)(66899024)(7416002)(6512007)(2616005)(86362001)(478600001)(6486002)(36756003)(8676002)(41300700001)(31696002)(4326008)(8936002)(4744005)(6916009)(66556008)(316002)(66946007)(66476007)(2906002)(26005)(5660300002)(53546011)(31686004)(6506007)(38100700002)(83380400001)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?cUhteGhkN2dpbHBaL2FLVjhTY0ZhZjZrRnlwVFordmFhVjltWk41YVgrbEl1?=
 =?utf-8?B?RG5YbTg4dlFIcDRRWmczSTFxSVBCTTM2Tmtic2RHZWxRNWJDQ2s3YXAzKy9V?=
 =?utf-8?B?Q1Q2bWhYR2Z0RzRIaGkzL3h0dEs5dk1XNnFzWkNyOWZPcnQ4SWxXcXR2OFpR?=
 =?utf-8?B?NXg5WWljaEV2WXZ3VlRwYW9GRUw0V1E5V05iLzd1Q0U1aWZHdnNUVzZ5MUFz?=
 =?utf-8?B?NmVCNXFZRDE3N0Jrdzc0M2ZGUDNVM0t5VDhiekpkWnZyS0poVm1aTGhMOVc2?=
 =?utf-8?B?RE54c1ZGbnVWUG42TkxHQ3lhcXNSeWQyeXZ0Q0Q0VXh3eUloVW9RYXRnVlRt?=
 =?utf-8?B?T1B2MThrbGZzbktQY3lYQVk3ZUZFVzJCTGlkN0g0WnphZDlTNXUwT2ZmQUw4?=
 =?utf-8?B?SG9Fc1RRcUhVcVlJemZ1QWRCT2UrWEo4VGZkaHJncFN0V2VLOVAyQ1lpRFRl?=
 =?utf-8?B?VytFa3kvUEh4Q2VmMzZRN2N1Um9VclpZYytBUzdmZmZBa2NzTmpBSnR1OTd3?=
 =?utf-8?B?RlR6dzhLNWFqQlFZL0UyNHI3ZzQ3RS90Nm9HRDV5VGpMd1lrd24yd0hnRWRW?=
 =?utf-8?B?K2FBenhtYmxhQ1BOQmh2c2hqYStzQ1lad21IYmhiUGRibjNaMkdwWmsxeXo3?=
 =?utf-8?B?TGtBOXlvc0pHNExHVnpMajZOemE2bUI3MmZMRytKOEt3NTlZVmZXMUVkMFB4?=
 =?utf-8?B?Y2NjOUFWcEUycEpCL25Za0FzSkprM1Rndi9KYnRmTXZubHc4SmFBVTVISmZi?=
 =?utf-8?B?UjhLZGxJclRuRCtaUnc3SUp2UzJuaCswckNReHRKaUFLa3grVWV3ZzV0RitY?=
 =?utf-8?B?eWt6U1VRMHNESEM3ZllVS3Z3WVUxeDhYMXA0TWYrNEFaUUJwWWE0cEZBTWNR?=
 =?utf-8?B?U2p1aXhodjd0SUJZM09hbWJteU5ac1phUFhlTjJhKzdtcHl0YnR2cWpLaXNx?=
 =?utf-8?B?VFJwcVRzN0RKMDR3RVlMWUR3bENXQWtMNW5tOGlsc2trMFREcjMvUnZybnh2?=
 =?utf-8?B?ajdmYVNWU0JYbEx2M1llQUpNM0swRVlmSHhkMHplWHcwdnh5eTVSSzZJODBH?=
 =?utf-8?B?MVNBQVZmZHl3dkZHQVp5WTNFRFhScHZ3WnJzM2lSc1BkM3psenZLVzRhY0tY?=
 =?utf-8?B?RkpPdU1kVS9ZYitRRDVLVXNIa0licnJodnIxSzJKOWROcnZLM3dEN3pLd3hY?=
 =?utf-8?B?c3gvaExscUhtL2NqZmttRCtJdEQrVnBUV2xyeGRHQjV4TmlLc2k5aXA3aDhy?=
 =?utf-8?B?eFlLcWdKSjViZ3hWV3ZBZzd3ajQ3cGNjL1RFWUxDc3NFbndvQ002MFppMTZ5?=
 =?utf-8?B?YWdqSHBGMTRUdi91UHhTbHh2QkdEVGFqN0gyWWJqczNPdXplenoySkxDVGRJ?=
 =?utf-8?B?T3dwYkd6enBicnRuQXR0cTlkRldWOURISExBODJ2SEUxLy9LajdSZzRyQS81?=
 =?utf-8?B?UGw3SzRENG9aRGdZUlFwVlV2TjhiSVUzQjcyc1lDNTNwcXh5N1dROExKZDRO?=
 =?utf-8?B?NHNTUlNIUDM3YU9WdnA3eTRtdHNtU0wzdGZxaGtBYTljU1ZqSkJzNHk4cVN2?=
 =?utf-8?B?Snp5Zm9RNG9RZUtBbHBmK2NVeDM4eTU5ZlhCMVZsRXJSblVmRDFlMUt5eE1I?=
 =?utf-8?B?dmFEZldUdmVhUlhUSjF2VWNJVzZJQlc4TXluTUJiczlBU0tadUNHTGp3UTQ1?=
 =?utf-8?B?L2NhUDU4bkJPOGdKSmRKTVEwSU4xdzZFcnNqMlV0bTlzOGpLUDVOWjA5c2J1?=
 =?utf-8?B?cEk1M0F2aTBYbHpDRUZsMzFDZTVQSndOTDByck1KM3E2UVZpZGxqeERoMTBN?=
 =?utf-8?B?eFRwU3VUWG5RRXZxQndlR3JuaTlsejg3Z01DM2puWXhtbkk0SWxaL1ErQU0y?=
 =?utf-8?B?elZuN0VYQ3dBSm9aeitEOWZBYWw5Y1NTb09MemNSVng2RGxHakhzU3UvNysz?=
 =?utf-8?B?T095RXo3SGtiUzdLZXVQcllOdXJzYjU0a3Z0Q2dZMStTaXluL0ZOSlZjT3hZ?=
 =?utf-8?B?dEtjMkluZEh1QjRzNFFEWUVVeWNoZ0NQTFpSNFlkT2hNTFB4cC9xcE84RUlr?=
 =?utf-8?B?RGI5VFlOZEtxUDRaTjRUZk54RWRDK2RIS3YzYWhaVTVhU21KRlJ4NHVKS09P?=
 =?utf-8?Q?maLvN02dDZ0aXb3kGtPzilR79?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 39624234-a7a2-49a5-f415-08dbd463d8d0
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 24 Oct 2023 07:35:50.8804
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 0EYnfScFQdzk5MnXdpbZPL1F88ZnL6Qu/lzSOY0YPq8bP0Ji8C03pppDKygJc1fFyMzrlEog/Le0VOUhUfkSmw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR04MB9663

On 23.10.2023 11:56, Nicola Vetrini wrote:
> To avoid a violation of MISRA C:2012 Rule 8.4, as permitted
> by docs/misra/rules.rst.
> 
> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
> ---
> Changes in v3:
> - Edited commit message
> - Add two new variables

Oh, also: The R-b dates back to v1. Imo any addition invalidates prior
R-b, unless indicated otherwise by the person offering it (which isn't
the case here afaict).

Jan


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 07:39:47 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 07:39:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621714.968457 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvC0r-000453-NA; Tue, 24 Oct 2023 07:39:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621714.968457; Tue, 24 Oct 2023 07:39: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 1qvC0r-00044w-Jg; Tue, 24 Oct 2023 07:39:41 +0000
Received: by outflank-mailman (input) for mailman id 621714;
 Tue, 24 Oct 2023 07:39: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=JtWs=GG=citrix.com=prvs=654e64a5b=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qvC0p-00044q-Sw
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 07:39: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 7a8fc12c-7240-11ee-98d5-6d05b1d4d9a1;
 Tue, 24 Oct 2023 09:39:38 +0200 (CEST)
Received: from mail-mw2nam10lp2100.outbound.protection.outlook.com (HELO
 NAM10-MW2-obe.outbound.protection.outlook.com) ([104.47.55.100])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 24 Oct 2023 03:39:28 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by SA0PR03MB5466.namprd03.prod.outlook.com (2603:10b6:806:c0::10)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.14; Tue, 24 Oct
 2023 07:39:24 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::acf0:ce2b:1634:5aee]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::acf0:ce2b:1634:5aee%6]) with mapi id 15.20.6933.011; Tue, 24 Oct 2023
 07:39: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: 7a8fc12c-7240-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1698133177;
  h=date:from:to:cc:subject:message-id:references:
   in-reply-to:mime-version;
  bh=FvkJRgXt7xT10SE12iUYfQ2NYCFYi6HxzVygAWhA69I=;
  b=Ev2t/s25aTuXG+q9mQiR4jujwxyC9+z3VpPhpXji1hEO3td0z3d9779B
   dPibgIVJ/JUNYjnMc6oyvF3zAbohD8tgJ8CkkaoySZXSo6DBgO3W1YofS
   fehFEwqqsg0M8oYxBeU/g79tU514puGxaf5vL3+kgdnB7U2b6dk3Qsx97
   o=;
X-CSE-ConnectionGUID: l1j0eScfQRmxMByriFpv+w==
X-CSE-MsgGUID: YVPjP3MQTxKgjCxpT4oUcg==
X-IronPort-RemoteIP: 104.47.55.100
X-IronPort-MID: 125698828
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:9dhzIqLo39otjKMcFE+R55QlxSXFcZb7ZxGr2PjKsXjdYENS0zUAn
 2BMXWqCPa2DZmCjf4wiYN/i9kwFuZLWytVjG1RlqX01Q3x08seUXt7xwmUcnc+xBpaaEB84t
 ZV2hv3odp1coqr0/0/1WlTZhSAhk/nOHvylULKs1hlZHWdMUD0mhQ9oh9k3i4tphcnRKw6Ws
 Jb5rta31GWNglaYCUpKrfrYwP9TlK6q4mhB5gZiPakjUGL2zBH5MrpOfcldEFOgKmVkNrbSb
 /rOyri/4lTY838FYj9yuu+mGqGiaue60Tmm0hK6aYD76vRxjnVaPpIAHOgdcS9qZwChxLid/
 jnvWauYEm/FNoWU8AgUvoIx/ytWZcWq85efSZSzXFD6I+QrvBIAzt03ZHzaM7H09c5zWGMW+
 McTJgk3awCmrfOswZyjVKpz05FLwMnDZOvzu1lG5BSAVbMDfsqGRK/Ho9hFwD03m8ZCW+7EY
 NYUYiZuaxKGZABTPlAQC9Q1m+LAanvXKmUE7g7K4/dqpTGLlGSd05C0WDbRUsaNSshP2F6Ru
 0rN/njjAwFcP9uaodaA2iv227GezXOhCOr+EpWJyMZouAa2/1ADKxIUfkujnaW+t0WxDoc3x
 0s8v3BGQbIJ3E6hQ8T5Xha4iGWZpRNaUN1Ve8Uh9AySw7DIpQaYAmQJRCRIbtAOvco6Azct0
 zehj97vQDBirrCRYXac7auP6yO/PzAPKm0PbjNCShEKi+QPu6k2hxPLC9N8Sqi8i4StHSmqm
 mjS6i8jm78UkMgHkb2h+kzKiC6toZ6PSRMp4gLQXSSu6QYRiJOZWrFEIGPztZ5oRLt1hHHY1
 JTYs6ByNNwzMKw=
IronPort-HdrOrdr: A9a23:/0R4K67DzD+AI2ImhQPXwAzXdLJyesId70hD6qkQc3Fom62j5q
 WTdZEgvyMc5wx/ZJhNo7690cq7MBHhHPxOgbX5VI3KNGXbUQOTR72KhrGSoAEIdReeygZcv5
 0QCZSXCrfLfCVHZRCR2njFLz4iquP3j5xBnY3lvhNQpZkBUdAZ0+9+YDzrdXFedU19KrcSMo
 GT3cZDryrIQwVtUizqbkN1OdQqvrfw5evbXSI=
X-Talos-CUID: =?us-ascii?q?9a23=3AMSKuY2h5lhIvyip/5cF5rXSCQTJudiTflHrrKEG?=
 =?us-ascii?q?BM2N5bZeEU16+4L0njJ87?=
X-Talos-MUID: 9a23:zGM7LQbhX92VfuBThgHUhgk5Ef5U84ehCmsdialavPSPOnkl
X-IronPort-AV: E=Sophos;i="6.03,247,1694750400"; 
   d="scan'208";a="125698828"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=JW3Em4yeT2mLaCY0O1yxMVBiNQPZIzEVbnu5yGNwywGUMStdRtKXSWJBzzRKloo6srVifG6fPoJQPlbKJNVIRjxkGKx858wRYWxYmAnYr/JOPMCFq1uPlEqAk+LYFIiqsCNcvt0de7eW2qHudWy4KytOUH9ZJtEHcxaqv7HGZ9Yn/+xtsGc5OxqAk2+5nUVJGF9AZuaFGMlABqG/OmEIObQJdx/DbArZ+isf5ILxUZZ6zdGVmJgsYXFxBn7bo42Sb9eTVvgbm3i/6OXRvzhP8873x11Ae+6CFzV+EdL3TY6efcZuqDXmsmdMu7ojzY1LL4kJQdoTgw9dqEjQW6oeVQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=JxhTkv2FkQ0zeJkTVbbuMTBoosOE4Y/qbQFqek0JtUg=;
 b=mDzcZXDixiQ4Xui3hG+m7hGbhyyVHF0F3VlpluXyj+Rxyd+cEHE/vvMN1tSE4FDmRnzrl7HxnNmfrKNFoNTnN2Wh5xbV7Zrhcvm77EtGBBx4+MDyIeqy8YDGsQTJH8i8rS9SMjXb9yeM3j92nCfvrQ+gPkEGOpndNgf09uHmWJTMRIYbcEGRy79UREBdjItGPi8dQyJOry14wMVeMsV+8pMz9t8v7fGnA5HcYOkM322z8Td3C7+D1EnrrFMboipLfZu3RvkKGPWZoj+n177qf/zGVIffvfFt8BS/k1ceoEgI4IH2ml8xiiuXX+qB0jfix1ovR0zeTStuC7WPlN0LPw==
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=JxhTkv2FkQ0zeJkTVbbuMTBoosOE4Y/qbQFqek0JtUg=;
 b=g6Ilp657vKyJm2O1AdYMZjybh8f+WavMMub3ykzuYHw+vi0SnjfLU8u+seap/7jxdcNkg1e+PgEdPBHBnv1tXDInjTbv4pv2D8O4CtPkgINIE+yL+NhNtb6SehBYjqZBWxcOURB63W34O3RioKWtdk7rIBnJXJa66yxaEBiYVKU=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Tue, 24 Oct 2023 09:39:19 +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>,
	xen-devel@lists.xenproject.org
Subject: Re: [PATCH] xen/vpci: allow BAR write if value is the same
Message-ID: <ZTd0pxpwtEbsCny0@macbook>
References: <20231023163615.693462-1-stewart.hildebrand@amd.com>
 <2ef80dad-5ae6-786d-e89f-d0c3af44b485@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <2ef80dad-5ae6-786d-e89f-d0c3af44b485@suse.com>
X-ClientProxiedBy: LO4P123CA0150.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:188::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_|SA0PR03MB5466:EE_
X-MS-Office365-Filtering-Correlation-Id: a95c6afa-311d-408e-5c4a-08dbd46457f8
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	tMqh34XKkzXyPs3iPm9vr2/ssgh3oUUzk4PiRuFLvbRv+9wbCpVBWpA4PbJtpADxBWBG+uiQoPjdoLTycSAyth5KxeDLSgG0yIeQ/HD96i5L7TBqhWTfhhVC+JO3x3SS77n+ZpwHblHdO9/ouBOS/3lVSWyVmh5660GIgrGLxUC4uzRJNYcwgsLug8MoBSmkIGWCQ7dMXsdf9iGqFpwYdL+xgD4+T9/8eqi4lXyENSAog03JB4W4FWiXBUkvjQJ1ZK6YvzNzSJkWatOZgkSG6JpUHhHTEyKTZeG1xZqbM9jqWM94G+yKAFzqxg9Z1CvMvVxnqkx6MAnmXG6/C9s06Lhn4hkXgdEG1C8dHGyAg0VfK+gM1GZUIzgijMas5CrpfZptVX+RMjgrIJyaOGZA2uoQmjiZ3agJ5TQLU047XsDkHSsVPuUafVD/ovCHJ/nIF/3HMocZHttKcDJNEv8GeOAXZalI2ZnBqECsjF0NyM7h847ryxcPmRLsIGPxqJ8tkZzUwGCxpDZyao244idndAH5TdoVdUJHcbD7dWHk4wqF9ZvNbYIWF8sBZdSWpqKX
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)(396003)(366004)(346002)(230922051799003)(186009)(451199024)(1800799009)(64100799003)(33716001)(26005)(38100700002)(2906002)(41300700001)(5660300002)(86362001)(8936002)(85182001)(4326008)(8676002)(478600001)(6506007)(316002)(82960400001)(66476007)(66946007)(6916009)(66556008)(83380400001)(6486002)(53546011)(6512007)(9686003)(6666004);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?RkhpazZvWkVhV3hHSXZLZGNJK3VleUdwZFFQUm9aaHhET3RVbDNJazFLandx?=
 =?utf-8?B?djE4NHNtYk5COFNJNjVDVlkwSElpZE9wNDhzSmdmVWt6MVVPTVpPQjVyb2c2?=
 =?utf-8?B?RnYwaktpTSs5OTNSamdBbTZMMmtSTGZteTRrdXFCY3dPa3JHeW5wUG05OGxp?=
 =?utf-8?B?VXNZVm5DbDFPamg1T2lPSmVuOWdpMHJlV3VJYTMzMzRRYlJ2R1BRNzZqTDF3?=
 =?utf-8?B?T3NPbGRwNEd0RmpadEtTallJWXpCT3ZuZXlDTEpNUFJFdDMvcHd6UnNhcll4?=
 =?utf-8?B?ZGF3ZHdwdWlNaTlQa0tPS0E5Nmhla3pSazBDcS84RmxJL01HRXZSQXJSb2ox?=
 =?utf-8?B?ZlJUNFdEMk12OXJKNHdSL3gzU3dnRFYrRDYvY2llRGxSbzllQ25ibW1PTXhW?=
 =?utf-8?B?cXR0VlhRZlZYWGVjaWhBWjhLZTNpZGZiV3pBZFltR1U0eno3TVM1QWFzbnhO?=
 =?utf-8?B?SmJMVTRNcnR2YTdxUm5rLzZKNURLTnBLcm84M0Qrd2RERzk1WEVZcDhpUkp3?=
 =?utf-8?B?Mnh6WnhDQ09NbjJaMmQ0aEwvNFAwYjcxNXJFbE0xYitVaW5Cd3pHRlcxOGN4?=
 =?utf-8?B?OWZseDlHZGNHZnduV2tMS1NHOXB6SGtUUHM0cm45QkZiVmZiUGNoYUx3aDFv?=
 =?utf-8?B?VytFcVVaelRLSkpDZlpiMG0xNVBGdXhqZXBwWFMwa2JtWDlMN1RJd1ZGSm5Z?=
 =?utf-8?B?NFlaYi9PTW00amlhNkx5UmlwcTgwWm4zMVR1V2ZNWThTeGFDVVkycjdtRkNV?=
 =?utf-8?B?S2l1blRLNkF3UjQvN3F3UmJScGgxUGoyZHlpenJrM2tvT3dOQ1E3c0JqNkkw?=
 =?utf-8?B?NDFISTRyM2RMR29SUkVoKzNxbG8wRGpTVmhaeDVIbzhidTZKeHRqZWhjV2x4?=
 =?utf-8?B?eUhEMU93Nkx4d0FlYnNsUktYN3g4VWswOXFrcTkzbWg2ZSs0SXRjQThhdnlW?=
 =?utf-8?B?SW5reUlQdzF0M0QxQ0M4ZWROMlNlYnFSRy80WVF1RmcxS0dLZEhoMk9IOERQ?=
 =?utf-8?B?U1gvZTdoRFpYZm5ETzBNMDRFaFI4d1JVcmhPTzZFRWdWZFlVc0FwWmVmaVNj?=
 =?utf-8?B?OWQvVFFIWDNNRTRrUThodDdOK1l1b2RkK2haQjdHMG1JWGFOdEVlcENSK1Fi?=
 =?utf-8?B?M1RxY2dPb1R5NzdEeTRMTVRaMEVmL3RGeFVoZ2UzaUk3MkhSYWh1ZnZSZit4?=
 =?utf-8?B?emdOb0pWdlVaZTNHeDg2anhDcU1kLy83dkpkUkFwU0JmeWRNYnduRDkxQkVX?=
 =?utf-8?B?cDBmTnQ5YXY4LzNMcExDcUVDUUFDS0NTRm1oWlFKMUZTMEFlOUxsNVQ4SEgv?=
 =?utf-8?B?STk3VFdKVHRXSG9qMWpWS1BHNk1wQXNGN2xHQ3dlM2ZBSXUydWtpYWFUODJV?=
 =?utf-8?B?b0o1ODRneVY3YThHclR5SDQ3dlRnZjNGeDQ5WnhQcE1Jb3ZPWGNsK2RMQndE?=
 =?utf-8?B?SjVVWWw2ZXIrcWIyZElERHkycHNuTGpWd1NJSFduWEtTNVRBNTM1cEZWeC9u?=
 =?utf-8?B?N1F4TG5DaWNOL3BtZkZUT1k0bmdXZTJCbHU4Ymd0Q0l6b0wweU5LK2FZMWxJ?=
 =?utf-8?B?SllqRUY5Y2UxNXZJR1Y0SUZBNTZyTFVnNlNGMVBENHNCSVpMaUFvNm1iSXhW?=
 =?utf-8?B?RFJTQ0tFZHVHU0d5dHIzaTJ2ZncvMVZEQW5sVGIyeU0ycklST3F6dktsL25v?=
 =?utf-8?B?SS8xaG55VUpxYmdoSmR1UDM0cHF5VGpac2xzemIzaEViVDhMMUVuVW41b2lu?=
 =?utf-8?B?SE01QU4yLzJjUjBraGljdGd1UTMxMGZJdUlsdGM4R0dTSU01b1Y2dm5ESkQ4?=
 =?utf-8?B?YVpsZEZBbG4rdUVWa0U0Q08vM2RCKysvOFpaeUZFdkQ0QlZuTHdyWS9GdHpp?=
 =?utf-8?B?L3NGR3lxZ052dWNsd0FIbm4yK3RyQVNTYWhibFJ5YmhNaERtcFpGYTZCcEhB?=
 =?utf-8?B?V0FnZkZHVlBiSnRJUWxNUjBMR3pOWUk0Q1YvamVGS2lrM2trNVJvZ01sMUor?=
 =?utf-8?B?ZDFoMGhvSGNDUzRES04yTSthbHEwUnJ6VEFFRDNLemxzc1Q3UHBXaklEMDc0?=
 =?utf-8?B?Z21iUngxL3ZaU0txNVlqZ1NsOFA5S3R3OUlEQXpVVEJCUXBpOFBXV1IzNVF3?=
 =?utf-8?Q?huIvI9G1NpoH1Arh1Ea6i7azU?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	55nt011VxvkS3IWDx8o9b6t6EvNvfDeGf8iWP8VVbPG1DQ62pa/dDTUjUJtJdRhfojra91iSpRZ7OCSpZPz+1S5rB2Sec0N6uIJqFPyrZeTqIHxjvWqJVBawrsynwluBEbX8GDIT1uoxn3Youq1c5G4Oz9iv1z8t3U2r0y2vgZNDJJGoI0dLmys0Ufg9iCEe2bw2xEb5LflKNf7sauml2oDqLVfU7nUeDPTqaNy+0rCMipI0e713yG72Agv8EH2x7lN/KH8wTYiUGmT3s6swwPW8cTYLtM3HGkluO+Ac80veMA5Lo4YYansfMlE9ZkxGnNnWLyTKPjfl6/EU9xY5g86o4xYamO0yDYwVoit515X1CNid4xr7RMPNmV3nCGHqpcG4DI1b/rEoVPuNgggpVQAaPaogd6cvrHoCiJl1hgSh3rHDDrCwkdj+qq4rloqn3q6eOVUmVQDRuVBFx7S0MkTXwWXZROEIX6z5pNq95soYGnqtO7e1NRUupHNi+XsOJzrp8fIFceZwW6tZBF2uhgDzlzCN6yvpj4C4rUBZsRHW0C3DXDBYTUN5QZDGWaUkwMUgIig4yEJGvR7AWREq01Rflc+FjfG9rjhYcL3blobKivWizaYHhgMqsiSSE23f4RXoRrK9ksHp4AnJpR3SyoKXYwkYGtAO4F874B5H8scQ18vpi6NxWUZDmSRlQVDv8WVW1ljjqTyn6ph4CnA9lA3YGRapWNhFHKzFQm8WcZYFFpeQwbqVPcXYRCCvDP8Z6KFcCJCl13sbFZ8rJnqcvdz7RlVXCC0TMHxQ+VGJT52m5Kf9S8+yPI3Mqmkr7MRBdtZkKWvqGAIKfbS47YkLLw==
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: a95c6afa-311d-408e-5c4a-08dbd46457f8
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 24 Oct 2023 07:39:24.4249
 (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: UY24NPLhUXzo00vPlFun/95x+vu6tni8cE6BGPmKJyAUN3n+DWWD+Cg6pcIvd5qPDOFvoXFSqF9Q1W4K9/eq9w==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA0PR03MB5466

On Tue, Oct 24, 2023 at 09:09:45AM +0200, Jan Beulich wrote:
> On 23.10.2023 18:36, Stewart Hildebrand wrote:
> > During xl pci-assignable-add, pciback may reset the device while memory decoding
> > (PCI_COMMAND_MEMORY) is enabled. After device reset, memory decoding may be
> > disabled in hardware, and the BARs may be zeroed/reset in hardware. However, Xen
> > vPCI still thinks memory decoding is enabled, and BARs will remain mapped in
> > p2m. In other words, memory decoding may become disabled and BARs reset in
> > hardware, bypassing the respective vPCI command and BAR register handlers.
> > Subsequently, when pciback attempts to restore state to the device, including
> > BARs, it happens to write the BARs before writing the command register.
> > Restoring/writing the BARs silently fails because Xen vPCI mistakenly thinks
> > memory decoding is enabled.
> > 
> > Fix the BAR write by allowing it to succeed if the value written is the same as
> > the Xen vPCI stored value. pciback will subsequently restore the command
> > register and the state of the BARs and memory decoding bit will then be in sync
> > between hardware and vPCI again.
> > 
> > While here, remove a nearby stray newline.
> > 
> > Signed-off-by: Stewart Hildebrand <stewart.hildebrand@amd.com>
> > ---
> > Do we need similar handling in rom_write()?
> 
> I think so, if we are to go this route. However, ...
> 
> > We may consider additionally checking during bar_write() if the memory decoding
> > state has become out of sync between hardware and vPCI. During bar_write(), we
> > would check the device's memory decoding bit, compare it to our vPCI state, and
> > invoke modify_bars() if needed. Please let me know your thoughts.
> 
> ... iirc we discussed earlier on that doing resets in Dom0 wants
> communicating to Xen. Any way of resetting by a DomU would likely need
> intercepting. This way the described situation can be avoided altogether.
> We may go further and uniformly intercept resets, carrying them out on
> behalf of Dom0 as well. The main issue is, as with any config-space-
> based interaction with a device, that there may be device specific ways
> of resetting.

I agree with Jan, the plan as I recall was to introduce a new
hypercall to signal Xen of when a device has been reset, I can't
however find that conversation right now.  It would be nice to trap
device reset attempts, but there are some device specific reset
methods that would be too much special casing to accommodate sadly.

The fix here is just papering over the issue, as if the device has
been reset and Xen is not aware of it all the vPCI cached state is out
of date, so it's not only BARs addresses that are stale, but also
possibly MSI and MSI-X.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 07:43:37 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 07:43:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621718.968466 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvC4b-0005ll-6p; Tue, 24 Oct 2023 07:43:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621718.968466; Tue, 24 Oct 2023 07:43: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 1qvC4b-0005le-4C; Tue, 24 Oct 2023 07:43:33 +0000
Received: by outflank-mailman (input) for mailman id 621718;
 Tue, 24 Oct 2023 07:43: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=jXWl=GG=casper.srs.infradead.org=BATV+e2898748ca55db067849+7366+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qvC4Z-0005hr-1e
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 07:43:32 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 03f376cc-7241-11ee-9b0e-b553b5be7939;
 Tue, 24 Oct 2023 09:43:28 +0200 (CEST)
Received: from [2001:8b0:10b:5:545e:5208:5de0:9d33]
 (helo=u3832b3a9db3152.ant.amazon.com)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qvC4Q-001DbK-JN; Tue, 24 Oct 2023 07: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: 03f376cc-7241-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=MIME-Version:Content-Type:References:
	In-Reply-To:Date:Cc:To:From:Subject:Message-ID:Sender:Reply-To:
	Content-Transfer-Encoding:Content-ID:Content-Description;
	bh=rADGbKH/agUBw1bSe+A7AQHCPoullbpznN6Sp+8K54Q=; b=j4GB5lcU5w9XQs7Vu/UNYN0dSz
	naig9JapxQ8zolvuSOvXvOPwvpS7E0nVdHL9nANIMyl1mvxjFvv9/yZtFoFsGTYi3jVpMrahP7OyB
	ffhhOVI4IRdXmZ+yjxEk2Ug8/cT/91gWc9m4kVdDT51Bv3taRtuwU0FmjNGibYoZ7xWN2DPJXUj/m
	T7qgq4q7JGCeW7qWes4FFfmcZNSqmh5gD1QiSApE/hs/QzLt/FD9+1nkkhqUofEqobYxeF53cylVt
	D2Tb+k2xYj7KQPRvCxYo0lbp10il2YXFnhk0D2aMlGhCwBkzjhnyfAzkSFdWJBat58rpxuk+bcs2+
	3OxtHQfg==;
Message-ID: <662772ec0d43cce9233680d67d7114bc8b0ed48d.camel@infradead.org>
Subject: Re: Lockdep show 6.6-rc regression in Xen HVM CPU hotplug
From: David Woodhouse <dwmw2@infradead.org>
To: Juergen Gross <jgross@suse.com>, xen-devel
 <xen-devel@lists.xenproject.org>,  paulmck <paulmck@kernel.org>
Cc: Stefano Stabellini <sstabellini@kernel.org>, Oleksandr Tyshchenko
 <oleksandr_tyshchenko@epam.com>, Rahul Singh <rahul.singh@arm.com>, Boris
 Ostrovsky <boris.ostrovsky@oracle.com>, Thomas Gleixner <tglx@linutronix.de>
Date: Tue, 24 Oct 2023 08:43:21 +0100
In-Reply-To: <c75a3d53-fc36-46a6-b781-f16e1e5c6226@suse.com>
References: <b28fff67f7501e4713af9b8c777f853cc44d6c6f.camel@infradead.org>
	 <c75a3d53-fc36-46a6-b781-f16e1e5c6226@suse.com>
Content-Type: multipart/signed; micalg="sha-256"; protocol="application/pkcs7-signature";
	boundary="=-CWHGAPOLbxU2Zh5JwAWE"
User-Agent: Evolution 3.44.4-0ubuntu2 
MIME-Version: 1.0
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html


--=-CWHGAPOLbxU2Zh5JwAWE
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Tue, 2023-10-24 at 08:53 +0200, Juergen Gross wrote:
>=20
> I'm puzzled. This path doesn't contain any of the RCU usage I've added in
> commit 87797fad6cce.
>=20
> Are you sure that with just reverting commit 87797fad6cce the issue doesn=
't
> manifest anymore? I'd rather expect commit 721255b9826b having caused thi=
s
> behavior, just telling from the messages above.

Retesting in the cold light of day, yes. Using v6.6-rc5 which is the
parent commit of the offending 87797fad6cce.

I now see this warning at boot time again, which I believe was an
aspect of what you were trying to fix:

[    0.059014] xen:events: Using FIFO-based ABI
[    0.059029] xen:events: Xen HVM callback vector for event delivery is en=
abled
[    0.059227] rcu: srcu_init: Setting srcu_struct sizes based on contentio=
n.
[    0.059296]=20
[    0.059297] =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D
[    0.059298] [ BUG: Invalid wait context ]
[    0.059299] 6.6.0-rc5 #1374 Not tainted
[    0.059300] -----------------------------
[    0.059301] swapper/0/0 is trying to lock:
[    0.059303] ffffffff8ad595f8 (evtchn_rwlock){....}-{3:3}, at: xen_evtchn=
_do_upcall+0x59/0xd0
[    0.059312] other info that might help us debug this:
[    0.059312] context-{2:2}
[    0.059313] no locks held by swapper/0/0.
[    0.059314] stack backtrace:
[    0.059315] CPU: 0 PID: 0 Comm: swapper/0 Not tainted 6.6.0-rc5 #1374
[    0.059318] Hardware name: Xen HVM domU, BIOS 4.17.1 09/26/2023
[    0.059319] Call Trace:
[    0.059320]  <IRQ>
[    0.059323]  dump_stack_lvl+0x57/0x90
[    0.059327]  __lock_acquire+0x7bb/0xbb0
[    0.059334]  lock_acquire.part.0+0xad/0x240
[    0.059337]  ? xen_evtchn_do_upcall+0x59/0xd0
[    0.059340]  ? rcu_is_watching+0xd/0x40
[    0.059345]  ? lock_acquire+0xf2/0x110
[    0.059349]  _raw_read_lock+0x3b/0x70
[    0.059353]  ? xen_evtchn_do_upcall+0x59/0xd0
[    0.059355]  xen_evtchn_do_upcall+0x59/0xd0
[    0.059358]  __sysvec_xen_hvm_callback+0x47/0x80
[    0.059362]  sysvec_xen_hvm_callback+0x99/0xc0
[    0.059367]  </IRQ>
[    0.059368]  <TASK>
[    0.059369]  asm_sysvec_xen_hvm_callback+0x16/0x20
[    0.059372] RIP: 0010:__x86_return_thunk+0x0/0x30
[    0.059375] Code: 0b 66 0f 1f 84 00 00 00 00 00 90 90 90 90 90 90 90 90 =
90 90 90 90 90 90 90 90 e9 3a ff ff ff 66 66 2e 0f 1f 84 00 00 00 00 00 <c3=
> cc 66 66 2e 0f 1f 84 00 00 00 00 00 66 66 2e 0f 1f 84 00 00 00
[    0.059377] RSP: 0000:ffffffff8a803ef8 EFLAGS: 00000202
[    0.059379] RAX: 0000000000000001 RBX: 0000000000000000 RCX: 00000000000=
00020
[    0.059381] RDX: 0000000000000000 RSI: ffffffff8a537ca9 RDI: ffffffff8a4=
cb0f7
[    0.059382] RBP: 00000000000000a0 R08: 0000000000000001 R09: 00000000000=
00000
[    0.059383] R10: 0000000000002e00 R11: ffff8fea0f7cd540 R12: 00000000000=
00000
[    0.059385] R13: 0000000000000000 R14: 0000000000000000 R15: 00000000000=
14010
[    0.059390]  start_kernel+0x26c/0x630
[    0.059396]  x86_64_start_reservations+0x14/0x30
[    0.059400]  x86_64_start_kernel+0x88/0x90
[    0.059403]  secondary_startup_64_no_verify+0x178/0x17b
[    0.059409]  </TASK>
[    0.171308] Console: colour VGA+ 80x25
[    0.171342] printk: console [hvc0] enabled

But offlining/onlining works without a problem:

[root@localhost cpu1]# echo 0 > online=20
[  103.585558] smpboot: CPU 1 is now offline
[root@localhost cpu1]# echo 1 > online=20
[  105.675214] installing Xen timer for CPU 1
[  105.675537] smpboot: Booting Node 0 Processor 1 APIC 0x2
[  105.677744] cpu 1 spinlock event irq 57
[root@localhost cpu1]# while true; do echo 0 > online ; echo 1 > online ; d=
one

http://david.woodhou.se/config-hvm-hotplug-2023-10-24.txt


--=-CWHGAPOLbxU2Zh5JwAWE
Content-Type: application/pkcs7-signature; name="smime.p7s"
Content-Disposition: attachment; filename="smime.p7s"
Content-Transfer-Encoding: base64

MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgEFADCABgkqhkiG9w0BBwEAAKCCEkQw
ggYQMIID+KADAgECAhBNlCwQ1DvglAnFgS06KwZPMA0GCSqGSIb3DQEBDAUAMIGIMQswCQYDVQQG
EwJVUzETMBEGA1UECBMKTmV3IEplcnNleTEUMBIGA1UEBxMLSmVyc2V5IENpdHkxHjAcBgNVBAoT
FVRoZSBVU0VSVFJVU1QgTmV0d29yazEuMCwGA1UEAxMlVVNFUlRydXN0IFJTQSBDZXJ0aWZpY2F0
aW9uIEF1dGhvcml0eTAeFw0xODExMDIwMDAwMDBaFw0zMDEyMzEyMzU5NTlaMIGWMQswCQYDVQQG
EwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYD
VQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50
aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC
AQEAyjztlApB/975Rrno1jvm2pK/KxBOqhq8gr2+JhwpKirSzZxQgT9tlC7zl6hn1fXjSo5MqXUf
ItMltrMaXqcESJuK8dtK56NCSrq4iDKaKq9NxOXFmqXX2zN8HHGjQ2b2Xv0v1L5Nk1MQPKA19xeW
QcpGEGFUUd0kN+oHox+L9aV1rjfNiCj3bJk6kJaOPabPi2503nn/ITX5e8WfPnGw4VuZ79Khj1YB
rf24k5Ee1sLTHsLtpiK9OjG4iQRBdq6Z/TlVx/hGAez5h36bBJMxqdHLpdwIUkTqT8se3ed0PewD
ch/8kHPo5fZl5u1B0ecpq/sDN/5sCG52Ds+QU5O5EwIDAQABo4IBZDCCAWAwHwYDVR0jBBgwFoAU
U3m/WqorSs9UgOHYm8Cd8rIDZsswHQYDVR0OBBYEFAnA8vwL2pTbX/4r36iZQs/J4K0AMA4GA1Ud
DwEB/wQEAwIBhjASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEF
BQcDBDARBgNVHSAECjAIMAYGBFUdIAAwUAYDVR0fBEkwRzBFoEOgQYY/aHR0cDovL2NybC51c2Vy
dHJ1c3QuY29tL1VTRVJUcnVzdFJTQUNlcnRpZmljYXRpb25BdXRob3JpdHkuY3JsMHYGCCsGAQUF
BwEBBGowaDA/BggrBgEFBQcwAoYzaHR0cDovL2NydC51c2VydHJ1c3QuY29tL1VTRVJUcnVzdFJT
QUFkZFRydXN0Q0EuY3J0MCUGCCsGAQUFBzABhhlodHRwOi8vb2NzcC51c2VydHJ1c3QuY29tMA0G
CSqGSIb3DQEBDAUAA4ICAQBBRHUAqznCFfXejpVtMnFojADdF9d6HBA4kMjjsb0XMZHztuOCtKF+
xswhh2GqkW5JQrM8zVlU+A2VP72Ky2nlRA1GwmIPgou74TZ/XTarHG8zdMSgaDrkVYzz1g3nIVO9
IHk96VwsacIvBF8JfqIs+8aWH2PfSUrNxP6Ys7U0sZYx4rXD6+cqFq/ZW5BUfClN/rhk2ddQXyn7
kkmka2RQb9d90nmNHdgKrwfQ49mQ2hWQNDkJJIXwKjYA6VUR/fZUFeCUisdDe/0ABLTI+jheXUV1
eoYV7lNwNBKpeHdNuO6Aacb533JlfeUHxvBz9OfYWUiXu09sMAviM11Q0DuMZ5760CdO2VnpsXP4
KxaYIhvqPqUMWqRdWyn7crItNkZeroXaecG03i3mM7dkiPaCkgocBg0EBYsbZDZ8bsG3a08LwEsL
1Ygz3SBsyECa0waq4hOf/Z85F2w2ZpXfP+w8q4ifwO90SGZZV+HR/Jh6rEaVPDRF/CEGVqR1hiuQ
OZ1YL5ezMTX0ZSLwrymUE0pwi/KDaiYB15uswgeIAcA6JzPFf9pLkAFFWs1QNyN++niFhsM47qod
x/PL+5jR87myx5uYdBEQkkDc+lKB1Wct6ucXqm2EmsaQ0M95QjTmy+rDWjkDYdw3Ms6mSWE3Bn7i
5ZgtwCLXgAIe5W8mybM2JzCCBhQwggT8oAMCAQICEQDGvhmWZ0DEAx0oURL6O6l+MA0GCSqGSIb3
DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYD
VQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28g
UlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMB4XDTIyMDEwNzAw
MDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJARYTZHdtdzJAaW5mcmFkZWFkLm9y
ZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3GpC2bomUqk+91wLYBzDMcCj5C9m6
oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZHh7htyAkWYVoFsFPrwHounto8xTsy
SSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT9YgcBqKCo65pTFmOnR/VVbjJk4K2
xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNjP+qDrh0db7PAjO1D4d5ftfrsf+kd
RR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy2U+eITZ5LLE5s45mX2oPFknWqxBo
bQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3BgBEmfsYWlBXO8rVXfvPgLs32VdV
NZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/7auNVRmPB3v5SWEsH8xi4Bez2V9U
KxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmdlFYhAflWKQ03Ufiu8t3iBE3VJbc2
5oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9aelIl6vtbhMA+l0nfrsORMa4kobqQ5
C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMBAAGjggHMMIIByDAfBgNVHSMEGDAW
gBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeDMcimo0oz8o1R1Nver3ZVpSkwDgYD
VR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYwFAYIKwYBBQUHAwQGCCsGAQUFBwMC
MEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYBBQUHAgEWF2h0dHBzOi8vc2VjdGln
by5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9jcmwuc2VjdGlnby5jb20vU2VjdGln
b1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1haWxDQS5jcmwwgYoGCCsGAQUFBwEB
BH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdvLmNvbS9TZWN0aWdvUlNBQ2xpZW50
QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAjBggrBgEFBQcwAYYXaHR0cDovL29j
c3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5mcmFkZWFkLm9yZzANBgkqhkiG9w0B
AQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQvQ/fzPXmtR9t54rpmI2TfyvcKgOXp
qa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvIlSPrzIB4Z2wyIGQpaPLlYflrrVFK
v9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9ChWFfgSXvrWDZspnU3Gjw/rMHrGnql
Htlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0whpBtXdyDjzBtQTaZJ7zTT/vlehc/
tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9IzCCBhQwggT8oAMCAQICEQDGvhmW
Z0DEAx0oURL6O6l+MA0GCSqGSIb3DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3Jl
YXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0
ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJl
IEVtYWlsIENBMB4XDTIyMDEwNzAwMDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJ
ARYTZHdtdzJAaW5mcmFkZWFkLm9yZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3
GpC2bomUqk+91wLYBzDMcCj5C9m6oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZH
h7htyAkWYVoFsFPrwHounto8xTsySSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT
9YgcBqKCo65pTFmOnR/VVbjJk4K2xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNj
P+qDrh0db7PAjO1D4d5ftfrsf+kdRR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy
2U+eITZ5LLE5s45mX2oPFknWqxBobQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3
BgBEmfsYWlBXO8rVXfvPgLs32VdVNZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/
7auNVRmPB3v5SWEsH8xi4Bez2V9UKxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmd
lFYhAflWKQ03Ufiu8t3iBE3VJbc25oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9ae
lIl6vtbhMA+l0nfrsORMa4kobqQ5C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMB
AAGjggHMMIIByDAfBgNVHSMEGDAWgBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeD
Mcimo0oz8o1R1Nver3ZVpSkwDgYDVR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYw
FAYIKwYBBQUHAwQGCCsGAQUFBwMCMEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYB
BQUHAgEWF2h0dHBzOi8vc2VjdGlnby5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9j
cmwuc2VjdGlnby5jb20vU2VjdGlnb1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1h
aWxDQS5jcmwwgYoGCCsGAQUFBwEBBH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdv
LmNvbS9TZWN0aWdvUlNBQ2xpZW50QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAj
BggrBgEFBQcwAYYXaHR0cDovL29jc3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5m
cmFkZWFkLm9yZzANBgkqhkiG9w0BAQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQv
Q/fzPXmtR9t54rpmI2TfyvcKgOXpqa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvI
lSPrzIB4Z2wyIGQpaPLlYflrrVFKv9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9Ch
WFfgSXvrWDZspnU3Gjw/rMHrGnqlHtlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0w
hpBtXdyDjzBtQTaZJ7zTT/vlehc/tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9
IzGCBMcwggTDAgEBMIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVz
dGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMT
NVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEA
xr4ZlmdAxAMdKFES+jupfjANBglghkgBZQMEAgEFAKCCAeswGAYJKoZIhvcNAQkDMQsGCSqGSIb3
DQEHATAcBgkqhkiG9w0BCQUxDxcNMjMxMDI0MDc0MzIxWjAvBgkqhkiG9w0BCQQxIgQguIITGqH7
SQGBkUJTExEV0/WL8LSELKZ13OwnYDD4eXYwgb0GCSsGAQQBgjcQBDGBrzCBrDCBljELMAkGA1UE
BhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEYMBYG
A1UEChMPU2VjdGlnbyBMaW1pdGVkMT4wPAYDVQQDEzVTZWN0aWdvIFJTQSBDbGllbnQgQXV0aGVu
dGljYXRpb24gYW5kIFNlY3VyZSBFbWFpbCBDQQIRAMa+GZZnQMQDHShREvo7qX4wgb8GCyqGSIb3
DQEJEAILMYGvoIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVy
MRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNl
Y3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEAxr4Z
lmdAxAMdKFES+jupfjANBgkqhkiG9w0BAQEFAASCAgAE2qXvs+/C7cIhjD6lI+fPEdTArppujDTK
pVmIrHAVvLAntxbunZSn9KszDYGfs7MHxPH/j2vo8utw0tEyz/Qc7JcNVhCCJElA9rKeCedTOgHB
6VG+AaQ8ouctgaubjaZJDjLyVCtWFwyd22TqyEoT1czLFr+0axIzwaSOxV3hbf6HPss9cHt94yi0
K1Alii0YIVFZPTNrj1xomEd4Soxuva4kZUEkrIlChO3WZXiK+hMATnZ3dM3tQ4RjN6MZQwSpK0e8
LbWnuTmxMalkO9kHQ6+POhyVBBQshVaEuo8W5OPUYC51RMdUdwFYmDbltwBVS2g3xm+2ijZnzJq/
y/jWI3YFzFoiVQybTOxpx+duY1lVoGhfZLBYVmPM56YV9aqCcRONJ/NFnm2ZIfkijv+V+ftV4QZp
GC6hu8pYEvS9Pn+RIesH7G77qfEAWSlWj5wO53bfNHfLUVPTCVpcoMvqNv9wGXJGDPwIOQGp2ea7
VHER07UBcu95cXfGYHOF8yhRNuRl78NgxExWAEqek895GF3X3/kAfBFQF3+oMZboELQpEn+YDAhP
NX/Lc6WrToiElJsAvPuYElIvEVanZhNztjEY4hYIPfK3RQF3SuPkOg/tDQ0na5sEislnGNfIAQEm
7Q71qUUP060HXh3kre6ilXxDOw9bOsBWgAojZkV7dAAAAAAAAA==


--=-CWHGAPOLbxU2Zh5JwAWE--


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 07:51:24 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 07:51:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621724.968476 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvCC7-00084S-2b; Tue, 24 Oct 2023 07:51:19 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621724.968476; Tue, 24 Oct 2023 07:51: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 1qvCC7-00084L-01; Tue, 24 Oct 2023 07:51:19 +0000
Received: by outflank-mailman (input) for mailman id 621724;
 Tue, 24 Oct 2023 07:51: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=krZT=GG=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qvCC5-00084D-Nd
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 07:51:17 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur04on2050.outbound.protection.outlook.com [40.107.7.50])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 1bb43f57-7242-11ee-9b0e-b553b5be7939;
 Tue, 24 Oct 2023 09:51:15 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM9PR04MB7697.eurprd04.prod.outlook.com (2603:10a6:20b:2d6::8)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.11; Tue, 24 Oct
 2023 07:50:46 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6933.011; Tue, 24 Oct 2023
 07: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: 1bb43f57-7242-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=MoQAoniCeNWB6lfyqdD0eUQCtd+sEWj/SFACaV5jK70JqdmIeMSV+IItjxOP91OQ4sVP+pNzjATCI5zHl4djIOeEBUwFvVxDbz+pzwa1HtMDc8RWEspbTQlkzn8gXV/CM1CC+t0cnivupPE/V6WVl6utc51xB743Io/PQNFv5kXtd7EC08z9ClYMzdDrjWlEr/4LvN3qqLKWjFs+1INrc47p0yHQ8aVTDXRSLrZ13NCt9WcXSerVnV22mOteJXb0Dp7N7ViqkW2VPAASmEdtEF4Kkt/l64SYRT+pH87NBDUanJv4Rqbh//CLOUu9OFtc3I6lNbZfyYbISyyi95a7CQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-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/A/s2bLBiDx/C0FK5HfiXvTKl/xB4vyrkZUs1dTOIU=;
 b=jxq3wAsYiwudRZ8LG+h8mnr8M4Lh7snu9WK2rmU1zD5qT+A9TEv3Ndmo9uQdY1X46rsIFuhCQOuw/hCrDSeWaH7Cr+pwmlOHLWjisQxfJaSvAtZMOI/rn0jTCzq6Vv+3L4Yny0tKl6oTMz0/sW9j8AJDlxrGFVNZXoqS57J0eBs2l/MXbKRdRT+t+SNZkVMdObh8uzX1bl460ivJTwxJtY10+XM0Hdbv1gQRZn71gtH+S+POBOu3PWhzEhlC/EZjmQjHMIiZaWXUi+jWVfcyAQ8JuTO07IDxPrA/RNgvMDb1NsC1+kSXXUAUZ3UFJ67F03Qm8an56gpmZEbxoxmSmw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=t/A/s2bLBiDx/C0FK5HfiXvTKl/xB4vyrkZUs1dTOIU=;
 b=kVVJ3KcutwEn4cM1ZdLI1rcSbP8NKbCVeCi3GBMR9uNwrjuM9DtS1OesUewT9g/vz9/gMPctniaBztXCbNPPtYCPObWmIK4W9NAqXqhN3adruksMuwOABZ/c2QIuLdv+w4Jkl0gCWgTOK/14THa7+7RaY9c9r/cmcRpqotjEnwA1wpZ2SE96EC9RCV5tfdKEbcDimTqhJppbUAiN1p9jAXjfC2PD74buYuEqxuCRhKAf7DBGJu0x1RkrY2jtymWbpoTmfDvajUSuQdoJIWlh0UQA114JbL4oHzknvPx5+/9CnBQ5NRRpzEChkji99X+mJKRJV9hGyC59rp2PyT0O+g==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <a8370e98-1cb6-8fde-9458-e579047dd607@suse.com>
Date: Tue, 24 Oct 2023 09:50:44 +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][for-4.19 v4 3/8] x86: add deviation comments for
 asm-only functions
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.cooper3@citrix.com, roger.pau@citrix.com, Wei Liu <wl@xen.org>,
 Jun Nakajima <jun.nakajima@intel.com>, Kevin Tian <kevin.tian@intel.com>,
 xen-devel@lists.xenproject.org
References: <cover.1698053876.git.nicola.vetrini@bugseng.com>
 <36d24b3a3e264f0e0b265b4f68d6432a143d64cd.1698053876.git.nicola.vetrini@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <36d24b3a3e264f0e0b265b4f68d6432a143d64cd.1698053876.git.nicola.vetrini@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0230.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:e9::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_|AM9PR04MB7697:EE_
X-MS-Office365-Filtering-Correlation-Id: 0dc2f78e-356a-49fd-371e-08dbd465ee91
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	DzYTkach+8x7gegWkZn8b1xaIstTHpOaqpzwFeAt/sXIwNHQTHIBWBjVX+Gsr096AG3f1CCk/ZTnVyMgTayAw6ckI7A8Wke5OEORQZ75G77c9syAmiCyQqqcQvSc1jYpConzWe9q+098JaH3jdACiVCVU54we0/pneqdztOenF3s9eH4k06HK9RIm1zql5PrsWOsH8yiCQhAOPp4J5VFCllm0Z//aNoqIQjcb0/o/FIT4BCeOrljqkq1e24zIZwAHKa7e86u61YWeQ6tTnaporCXtkGgFx6VQX593e4KVKaAE+YNsK9gq3+TvcJRcpQUDIHipmzy50AlzFPS4f5sL+nEd/5YFcu7fbHbewSqnFXllJGe4eWjEUPC1Sd/GrGSzI4FyRxEzyEdgArPjhxvJS6Eg6jHjlKw2jHospHGD8fLZqn8m3Nv5fMIIFzyfJK3H9bvhS8htkWroxUlkzXKqLDhqQWrZWMbwLX9z0TmJUmeKdunJIHyxpndMZGd3MhdOAtXnNTrS4Cl0y2gfvERlcT1o+8U4EfBmgyyyMwadzk3m8CUdkcZZTxZ5OvHCm8+IzGJPMLKyaXg9Qr9Ytysi12TpL6gOKB8gyuNWFAy5dob/QJroqKWAmV2DyqgCf7sRQJGXQq3kIlY2E5ENwXfTg==
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)(230922051799003)(1800799009)(64100799003)(186009)(451199024)(6916009)(66556008)(66946007)(5660300002)(66476007)(6512007)(54906003)(316002)(6506007)(6486002)(478600001)(2616005)(4326008)(8936002)(2906002)(41300700001)(36756003)(26005)(7416002)(31696002)(86362001)(38100700002)(8676002)(53546011)(31686004)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?MzByZ3djUFdEMUdUMUNxbjhxbHVTMFgwSndTWEY0enQxT1lUK2lLYVA3ampu?=
 =?utf-8?B?VlF4TGIrMVNPZzNWU2NzYUNlUXdvQ25RRkNRK2JjdGJhdVNrTmJZZWx3U2w2?=
 =?utf-8?B?M3RIaGQzZ2x0VFpOazZMVm9OeTVqaXdMNXFCanVjb1ZpSWppeng5VUpLdFhQ?=
 =?utf-8?B?aE8zK1RUcWpUaU9tU0N0WEMrZUdIUjkwOTY5a1hjTHdCWWtWamdMUDQ1T2Np?=
 =?utf-8?B?ZVVoaVpRMm05Skd6OHJjcTdGTWt4YUtyV0MzQi9iL3hJVk5YZVRqakdsTzFt?=
 =?utf-8?B?bXJseWh2aVRhZVh5RG91aG9IQmdQVGkzeVd4eXpCSWNaR1dNZnVKdFpESnRY?=
 =?utf-8?B?QmFyUW44MnNvWlZGUFdKKzNocmtVZDJJZk9RSi9Zelo1VUZDeFFMQTMxRFNr?=
 =?utf-8?B?Y3ZlZ0pPcDRYTW5xM2RnWit4b05CSk0vbTFhczB3L1dEVVR5SWVpdVp5Y3o2?=
 =?utf-8?B?bHBOOEJDN3RINVdHVDhuSWhnemRHMXZBR1J1S2grclVYVi81V1BFMG1hRWh2?=
 =?utf-8?B?ZWF2dTlxamtleU5Hb3lhK2xVQVVWNlVUb09PNEVod21QOGF6LzJmREkzZ1dm?=
 =?utf-8?B?T3haODNkajVzY3grOU1SeEgyR2liRld0ZldxNFo3SW9MVkZjUjFZMHIzMTFM?=
 =?utf-8?B?OFl2djdvcitkVTU0UEpSNzJ1dy9zWlgxeTNrakRsNElKcytOOWdReFU4b1Vu?=
 =?utf-8?B?ZUhneDhVbGJSeFVUSEpWakxrNHRFYVlNZmppUmV4a0xKdDY0bldsV3BoYXVr?=
 =?utf-8?B?YkJBeEJ6L2tPVk1NMEpvSElVSVJVczg5K3pCR1NvYjlBcCtMZElLcTVGaFBQ?=
 =?utf-8?B?eDBpUjhtMzE2Vlg2SlM2NnRzNnRUK2lQS095T1lLTmlwY1pEVFg4NzB5cVdY?=
 =?utf-8?B?Ym55aTlibHdobGE1MGJnWDZtd01yZkgrakIwc25zTGdzVFE5QkQxcmNIUVdT?=
 =?utf-8?B?eEFSY3hwcDdtaVZrZVBqZjR6K010N3NFVzJndmw3QWlpRmNzVW1CVEI5eTUx?=
 =?utf-8?B?UGswT1Y3SVFnODdHNjEwOWRkYjRIVmRjRThJMVRLQ3NEc1lTQXFacUFmU1Fv?=
 =?utf-8?B?NHNxeWxTTFl2bjIrUTRRUUM1aGFEUnNydmlSdlcwaURaMDR4QWJmdXgzeTQv?=
 =?utf-8?B?VjQxd0ZHZ2htenBmSU1VcWV6eU5uNGVydGNRTEd5Mm5kU3dscmlvaU5hZUN5?=
 =?utf-8?B?QmVPbWNsc0I4d1lWQmF3NGZxMnkrNDNHc3d5N2d3Wjg4OUJ1QXJySVdDUUsv?=
 =?utf-8?B?T0NiZzY1Y1laQWk5Y2VSbmsrTllaRmVVZ1g0UkRoSVQ1MWdTQk1jTUUvUWh2?=
 =?utf-8?B?VXRCOUJnRDhCTFpLY1RFNW1pVldzb3RPaTJBOXBUa09MV0p0U1JEK1ZOdnpy?=
 =?utf-8?B?MEh4VE81MWFhRnBPeWk5N2NNYmFiMUhPT3ROR1A2QlRPTSs2NFRjTFg5SW9o?=
 =?utf-8?B?V2lxdVZFMlRaNjFseTd1Y3l4dDlxY3ZRMHFoQmRtTVRoUE1RM2ZoVlJLMWFV?=
 =?utf-8?B?YzBYK2w5NHNISzNMSURvc0F6MWlOTHNtQzk2Vzk5R2lybDRlN2dJblZsbVBN?=
 =?utf-8?B?Nmdld3lHeEJ4Zk5yWVFOZ0Jia3RhcU1VYmhnK0lpTWtYYjUxdXZULzVpUEpS?=
 =?utf-8?B?OStTTFJVMncrZmNSTlFJNHF6RytYVEN0dW5zRU5XMmxOMXltUXZTM1JYa0oz?=
 =?utf-8?B?QUtobmdwWndNYUc2SHlyZzJMRjdYdlhhTjdQV3Z6U28zMEtubzlBTGZjYlVi?=
 =?utf-8?B?V0ZvVy9EY1hJY0QxK1hHdWdmNFZTdE9nNzZmQjluYWRFZm5NQjZSSFZVRWF0?=
 =?utf-8?B?QWFRajJGaHAvSjdwc0k4Y3V4eDVDN1Z6elhBOUdYMVFRUVEvVHZvYndWWUhj?=
 =?utf-8?B?cW5iWlUrUVc4N3JkSmZxNXJOTDJoQVdqN2x3TnFqb2VHZ1NkR3kwSjhDd1Y5?=
 =?utf-8?B?a3lvc3pNYWVzeElJTnpmc0hZZCtDSGtvUVgwcnlZRG9wR3cyM1BaU0w1dWRr?=
 =?utf-8?B?ZUVVVzl2MktaNDNnaHpEUkpGT0Z0Qmt0S0FHNzZDdTY4TmNNMDlMbW94Z1dz?=
 =?utf-8?B?a0pUVEdKRllVcVpMQmcxMGVDaW5hUEVMN2QrZWVyNlp4SDdyNGg1RENiUnlm?=
 =?utf-8?Q?NF6BhUc2kvKzn9SRywMMZdXe2?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 0dc2f78e-356a-49fd-371e-08dbd465ee91
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 24 Oct 2023 07:50:46.3678
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 9mbBYtcGH5em3tLVD1dH1YOZ9ZuOuZgdvfC6EiE8vQkMum6/axpZIGx1n9o37R1ozvhU29/TNNUB3zLPq44dyw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR04MB7697

On 23.10.2023 11:56, Nicola Vetrini wrote:
> As stated in rules.rst, functions used only in asm code
> are allowed to have no prior declaration visible when being
> defined, hence these functions are deviated.
> This also fixes violations of MISRA C:2012 Rule 8.4.
> 
> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
> ---
> Changes in v3:
> - added SAF deviations for vmx counterparts to svm functions.

Same comment regarding the R-b here as for patch 2.

> --- a/xen/arch/x86/hvm/svm/intr.c
> +++ b/xen/arch/x86/hvm/svm/intr.c
> @@ -123,6 +123,7 @@ static void svm_enable_intr_window(struct vcpu *v, struct hvm_intack intack)
>          vmcb, general1_intercepts | GENERAL1_INTERCEPT_VINTR);
>  }
>  
> +/* SAF-1-safe */
>  void svm_intr_assist(void)
>  {
>      struct vcpu *v = current;

Linux has the concept of "asmlinkage" for functions interfacing C and
assembly. Was it considered to use that - even if expanding to nothing
for all present architectures - as a way to annotate affected definitions
in place of the SAF-*-safe comments?

Jan


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 07:54:25 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 07:54:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621730.968486 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvCF4-0000eh-G4; Tue, 24 Oct 2023 07:54:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621730.968486; Tue, 24 Oct 2023 07:54: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 1qvCF4-0000ea-DO; Tue, 24 Oct 2023 07:54:22 +0000
Received: by outflank-mailman (input) for mailman id 621730;
 Tue, 24 Oct 2023 07:54: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=krZT=GG=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qvCF2-0000eU-RT
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 07:54:20 +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 898c4052-7242-11ee-98d5-6d05b1d4d9a1;
 Tue, 24 Oct 2023 09:54:20 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DB8PR04MB7051.eurprd04.prod.outlook.com (2603:10a6:10:fd::20) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.11; Tue, 24 Oct
 2023 07:54:17 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6933.011; Tue, 24 Oct 2023
 07: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: 898c4052-7242-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=TD900+7PdXMR9S0J7YXcah+e8GHHwsv8Iero+YL10olHUVQQ7UVL6uK9nYqq/n7ccJ1wB1PV9ZYVPqUUZ92UrXK3bb2EdGb/p6fU7DuoCTpZdjFfq8fMMw36ipodNyA9+wwFEl/nxeX1E8D1LojLyvwEFdbzKksOeK0z89KbECWPq5Xv4psroVkQCeOTAOFBysEp8sQpIUlb6rtciN10ROvKcnxJQBr++MtwzGn0ZlDwpcWUxEyIBd1gsCLqgeLEJ3aLMfabZxXyxdGeTah9Ij5+QYhxL0fSdFIpyN+Zf/kWQhCb6UVCLtV37J78RrR5d6lJdhNI471WWoLajBYy3w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=T3mr1wKzBi484MR/l+vDyljgW1wMvMCsUxiIuPFQIGY=;
 b=H+DICoHAukpGfV5TeMU9kdadDdHFref829sew2jQMGG0JtNdsp3KP6Hn4T74Ha+dFShUKlkHiPw3pyuUKI/cOiqooDPqGRbZI5UpQwFLScox0aBJDpeOt1bu2whBF2OS7pYtvt4jx6t8+kAxdwenvf0+Iu8GpE1taeUOet7TzlDCqBNT4zPHk5wJDegHChznPvS9/XGJff7E3yP6Y3+cQzSGquFGqr3oiR55Wv2FOYpzcX1Xm+AX9rwqDqwJA/ctnIlQis8BloXVAHwprXdyO83zqFLVSqisbN7lzTzYHKAGFCgWUtCE23BV95N4Tzzwf6dQjtN0HDwoFL0hf9e5oA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=T3mr1wKzBi484MR/l+vDyljgW1wMvMCsUxiIuPFQIGY=;
 b=4+4K3/yLmZQpH/6nywKlnqW4VI14LCRrCQDnekambaVZ2BIXk0q6EynQ6aMc3z1iEQKUxy2iq7GSILj7kNMDjjuv8obry6l08b257JWHxORZ6uAdLsw7d3dnSeH6okz0PnaHZoeIV0Ls0HuvQfXNE4Ch3vx1esRC6WDcs2U+kGE8C11x/itJjyyXphvG42mDahoqElTEPBJTwGOF8DJpU+W7HzZlXF/surRm0qIeZkBl7ozDcTEs7EYow6YptGv8zIdb827SZPXxyuv2agRgai7CEwlAEuNZydmLZSxal341qujsa7Mk2K/zzLVKwEn6ftzY1I7KCXV5dJJvRzyWog==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <433d28c0-29e9-9ee5-fea5-8917d1805f6c@suse.com>
Date: Tue, 24 Oct 2023 09:54:15 +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][for-4.19 v4 4/8] x86/grant: switch included header to
 make declarations visible
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.cooper3@citrix.com, roger.pau@citrix.com, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <cover.1698053876.git.nicola.vetrini@bugseng.com>
 <65f0b6ff751f76590b81c7ad2ba4dbb98e8b6e0c.1698053876.git.nicola.vetrini@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <65f0b6ff751f76590b81c7ad2ba4dbb98e8b6e0c.1698053876.git.nicola.vetrini@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0179.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:9f::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_|DB8PR04MB7051:EE_
X-MS-Office365-Filtering-Correlation-Id: 471dca84-dfaf-43d3-0b83-08dbd4666c4e
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	ecxoEnUwe5N6yvhHROJumrwOUhqNFTwAsGyxNTMeG7B9KJXR2urUWDjKzjKwaBOoEktlN/UyHG7W98xKAdTFP4D7VHT+JYnewOwuJR6/O87ercN1HtM3aQZoAP2fQoawFuJgxCgGKMkBmkQRLubwsbVn+DoH7MDdkc0gR4QNFC6pllzUG2jp90yQEzl2YFLF4BUIDfFmIgyWJVm8L4bS15qpkyNnTZFmyN/FMXRy0QBKg6udg2E6MOyN1b+/m1iDJAgjwgra2pb1+24kkpqeEcurL8YjHSErmLNF9NI/8sCGOOZaitsnbpPiQHQwtnPBjpaI8Pre/WzaCbz4yyIxlvFq5bM1r5ksgCnyzs4TEVErLj9UdnWlH6NjfsQ7IdG7RNc30DorbRwKPWsjqslUHnGebHIxfg3cfAHV9Z4NU3cKkaxkgzbzPtn6WLNG3xyYRhznxSkHBHUuVvHqLbHZLepgiRT6wFMVMU5A06RtgtbvPBD4WU8uoE8J4TQLPZUUDnTsMN9jihEpK/ScC6aNPRXVGIfZSosJrjFgEhplyWRA2U+rp8+bWj0pvOhgu0cn+CvysY3gsR0RbM25pFpLEkZ4WjR24m66SOAEJgOZ6KhAoZTXZm1QjsN+7suQpapA0f/piCSe4kec4OeNMXNQmw==
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)(39860400002)(376002)(230922051799003)(186009)(1800799009)(64100799003)(451199024)(26005)(31686004)(38100700002)(2906002)(4744005)(41300700001)(86362001)(31696002)(5660300002)(36756003)(7416002)(8676002)(8936002)(4326008)(6506007)(2616005)(478600001)(6916009)(66556008)(66476007)(316002)(66946007)(6486002)(53546011)(6512007)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?aE9IKzVFZ0hWYVpLKzJTaWhHd3RsR2lwdTNBcE44aGFwRnppYkVsSGxybjFI?=
 =?utf-8?B?VnRURTRaZklVaTBXM0ZCbDBaR1VUWUg1bFEyNGt3c1d2bk5yUDdja0RmaFFl?=
 =?utf-8?B?ekw0WFFaMGIyMGc0WUFieXVvcmN2SmlzREtHMWMwNVhkS2RYelRZdWw0UHU5?=
 =?utf-8?B?Z05hd1BlRjBSQ0dCaTBIdHdnTUlSakNwNlZIa1J5bjcxWGl0eUpLYk9VZ2xs?=
 =?utf-8?B?b3RVczlRYTZNakVVL2pKMTZYdmJ4M3VlU3RhMjhMWGJpemlWbUNoWEZaYlpK?=
 =?utf-8?B?a1d4VkFTU3FsV2F6TlhzOWE3c1RkRUgzTFdLcVFxcDZuNVR1ZXJBZER4elFN?=
 =?utf-8?B?WERONkplYWFHamNLMnUyYlhxZEMyc2kzWUdFdnMvV0tLK2FhZVNWbEhMU2Zv?=
 =?utf-8?B?VVlIaFVqVmpjb01tQUVyVUFWZmNWL3JlQTZlSEF1Q2NKUFYxQlJQTVA0UTVh?=
 =?utf-8?B?VjMrdldRUDAxc3FycUF5VzlGUnBMRmtHYm5Hdk8rNmQ0cHpTb1RLc0J3aUV0?=
 =?utf-8?B?bE0rckliSmlFTytJc3FTdTVvdUVjOEFHU1QvTFJWcExpT3dGZWhPeTJjRXU1?=
 =?utf-8?B?VTZSUUd1dkVJUTdldG9rRi81RFk1SVRleTkrdkswUm5pWGhQakF3OElRWDV1?=
 =?utf-8?B?YWZ3aG5NaVBHUVZReEhCMVRWd29ENjJmcld6ZkVPRW9VdmlkUHUzS0Fha2ZI?=
 =?utf-8?B?aTJkS0Z6Ynl6aHhvUU5LbHI1c3BmWG5rVVlTYzZ3R1YxVHk1U1F6TDYyUHZX?=
 =?utf-8?B?NlY5MlcrK3kvV3VtdHFVekN0eUFzTldXWktSYkZ0S0JxSGppWHJudHJzOFdN?=
 =?utf-8?B?WXBPSVlzcUJxWGF0T2Joc1MxcVJzcXdoMW1OSU9mMEVkaEpOVDkrRXRsUEJK?=
 =?utf-8?B?WWs4R3JseDlzL292b3BVcWZBY1phRHk3UmEwRmdVUTd2cUxVblJlcHJFdkkz?=
 =?utf-8?B?NXkvOHhReEIzZEp3WEZLTXNaZitsK2VveTNjdC9RTmpqZTZFUjNXeVJOMGV1?=
 =?utf-8?B?UEpaTGZvRS9aZ2tsK2RISUVicGpOc3J5ZXBwZVA2c296S0pYYVh0eStJY0dV?=
 =?utf-8?B?Q01WUWxadzdzc2ErL0ZCVTdMajk3MzBPbVJNb2ZHSXV1cy9yenZlNEtienRZ?=
 =?utf-8?B?TzVTRE1yQ1dPV2M0RGlYMXBJaWJVZURtMGhyUE5VQlNoWHFnTHczYWpBU25I?=
 =?utf-8?B?bWcvYWpDRDVXcDJVM21RY3R0NkJDUzJaa2xPSFB3V1VqaVdwZU9sb3lNZ0o4?=
 =?utf-8?B?WFlTWFVhMlVybzFTWGFwQWQ2NTJtNXJNQXh5NTZyWG9GUUx5NDhrRmJWbG5s?=
 =?utf-8?B?QWxuY0dENGtjck1icXVyV2xFK1lLdUU0Y2sxU2JTSVlnS2R6ZFljOUVnRXVm?=
 =?utf-8?B?dVREWVc5UlpCL0FhQXltOFpuaGtIVTRHTHE4SmxqWTd0d2JqNjVzUEpvNld6?=
 =?utf-8?B?T2FQWXVLZkdWeEgwVXExNGgzNzJwNEloTjBHY2wvVzFXQkhRcjJ5b2JqcnZy?=
 =?utf-8?B?bFc4czl6REc4N2J1ZkZaTDlSL2ljKzRhZHRuN1poZURzUGRzdU9WeDk0R2hZ?=
 =?utf-8?B?UXI1VHBkZVN6TkZvNFdWYlY2M3V3ZW1HWjNaYlNWeWNTTlBPQ0g2UzBiQWdF?=
 =?utf-8?B?ZEp4RTBzbHVtUHYzeTl4RmlYRDZsTDJ5YlkvMGJyS2dwTUExMEE2cHNNYi9U?=
 =?utf-8?B?RDRrTCs3OXVianp1UTYyd2VmeHFEWjJtK3lHM1MyWis4UlBxbEtxM0NuUnpX?=
 =?utf-8?B?U1lFZms5Y29mT0IwUWNMWXF6NmM3RHpMRnRLdEVTTzVlK255K3ozeHlVd1Z0?=
 =?utf-8?B?cTFZZDZUWlhwbkt4QTdraWpFc1Jodnk0NVpsM2tYc2ovS1MyZFdlazR3U3lB?=
 =?utf-8?B?dm4xcUtWbUFCbEZJOUR0aE1oVnQycXc3bVcydTMzTFdGbHhvYUIvS3licEtv?=
 =?utf-8?B?a2J4U0xFMzFBekNGemhScGJQQkRLaWpSSWhQRTVnemQ1dHZJNlg4Zm5qWVZ1?=
 =?utf-8?B?N3FFWEpseVN4cFlhc3FMNlcrS1BxT1hqOWkzZlp6QVl1WVk2STZqaWFQUFEv?=
 =?utf-8?B?a0l2MFFSb3VRUkprZ2hXbDJaeXJ1TWJKc0ZhYzkyUlFjYTI0Y1FpNTJVUjVI?=
 =?utf-8?Q?O3jYe8mD0eo0/qcaDJeHg+tjJ?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 471dca84-dfaf-43d3-0b83-08dbd4666c4e
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 24 Oct 2023 07:54:17.3258
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: DAixp4Ul2gWmk4B0bEn3WzGNyFcgGW9p42TfRquexXaQSAHObIQ63+hGaQrgcBP/T7N2wdKBx1nRSyWuNXKObA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB8PR04MB7051

On 23.10.2023 11:56, Nicola Vetrini wrote:
> The declarations for {create,replace}_grant_p2m_mapping are
> not visible when these functions are defined, therefore the right
> header needs to be included to allow them to be visible.
> 
> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>

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




From xen-devel-bounces@lists.xenproject.org Tue Oct 24 07:58:41 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 07:58:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621738.968497 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvCJ9-0001ye-1W; Tue, 24 Oct 2023 07:58:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621738.968497; Tue, 24 Oct 2023 07:58: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 1qvCJ8-0001yX-TP; Tue, 24 Oct 2023 07:58:34 +0000
Received: by outflank-mailman (input) for mailman id 621738;
 Tue, 24 Oct 2023 07:58: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=9CvU=GG=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qvCJ7-0001yR-Tt
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 07:58:33 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 2051c9ac-7243-11ee-98d5-6d05b1d4d9a1;
 Tue, 24 Oct 2023 09:58:32 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id 357FA4EE0744;
 Tue, 24 Oct 2023 09:58: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: 2051c9ac-7243-11ee-98d5-6d05b1d4d9a1
MIME-Version: 1.0
Date: Tue, 24 Oct 2023 09:58:32 +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.cooper3@citrix.com, roger.pau@citrix.com, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
Subject: Re: [XEN PATCH][for-4.19 v4 2/8] x86: add deviations for variables
 only used in asm code
In-Reply-To: <2aaa0978-e28f-4151-f4ba-f2628f6d4677@suse.com>
References: <cover.1698053876.git.nicola.vetrini@bugseng.com>
 <67ec8b468d6048f7f91590b59430df275b2f5870.1698053876.git.nicola.vetrini@bugseng.com>
 <2aaa0978-e28f-4151-f4ba-f2628f6d4677@suse.com>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <ef7f5c65ad0b0129f6b6119b6ad7d506@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 24/10/2023 09:32, Jan Beulich wrote:
> On 23.10.2023 11:56, Nicola Vetrini wrote:
>> --- a/xen/arch/x86/include/asm/asm_defns.h
>> +++ b/xen/arch/x86/include/asm/asm_defns.h
>> @@ -31,6 +31,7 @@ asm ( "\t.equ CONFIG_INDIRECT_THUNK, "
>>   * gets set up by the containing function.
>>   */
>>  #ifdef CONFIG_FRAME_POINTER
>> +/* SAF-1-safe */
>>  register unsigned long current_stack_pointer asm("rsp");
>>  # define ASM_CALL_CONSTRAINT , "+r" (current_stack_pointer)
>>  #else
> 
> SAF-1-safe is about symbols "used only by asm modules". This doesn't 
> apply
> to the declaration here.
> 

The wording could change to "asm code" if that is deemed clearer.

>> --- a/xen/arch/x86/setup.c
>> +++ b/xen/arch/x86/setup.c
>> @@ -75,6 +75,7 @@ static bool __initdata opt_invpcid = true;
>>  boolean_param("invpcid", opt_invpcid);
>>  bool __read_mostly use_invpcid;
>> 
>> +/* SAF-1-safe Only used in asm code and within this source file */
>>  unsigned long __read_mostly cr4_pv32_mask;
>> 
>>  /* **** Linux config option: propagated to domain0. */
>> @@ -147,12 +148,13 @@ cpumask_t __read_mostly cpu_present_map;
>>  unsigned long __read_mostly xen_phys_start;
>> 
>>  char __section(".init.bss.stack_aligned") __aligned(STACK_SIZE)
>> -    cpu0_stack[STACK_SIZE];
>> +    cpu0_stack[STACK_SIZE]; /* SAF-1-safe Only used in asm code and 
>> below */
> 
> Wasn't it that such comments need to live on the earlier line?
> 
> Jan

On the same line is fine as well. I personally found it less clear 
putting that in the
line above.

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


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 08:02:04 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 08:02:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621745.968507 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvCMN-0003wc-Qb; Tue, 24 Oct 2023 08:01:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621745.968507; Tue, 24 Oct 2023 08:01: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 1qvCMN-0003wV-NW; Tue, 24 Oct 2023 08:01:55 +0000
Received: by outflank-mailman (input) for mailman id 621745;
 Tue, 24 Oct 2023 08:01: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=9CvU=GG=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qvCMM-0003wP-Pt
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 08:01:54 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 96890077-7243-11ee-9b0e-b553b5be7939;
 Tue, 24 Oct 2023 10:01:51 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id B24BB4EE0744;
 Tue, 24 Oct 2023 10:01: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: 96890077-7243-11ee-9b0e-b553b5be7939
MIME-Version: 1.0
Date: Tue, 24 Oct 2023 10:01:50 +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.cooper3@citrix.com, roger.pau@citrix.com, Wei Liu <wl@xen.org>, Jun
 Nakajima <jun.nakajima@intel.com>, Kevin Tian <kevin.tian@intel.com>,
 xen-devel@lists.xenproject.org
Subject: Re: [XEN PATCH][for-4.19 v4 3/8] x86: add deviation comments for
 asm-only functions
In-Reply-To: <a8370e98-1cb6-8fde-9458-e579047dd607@suse.com>
References: <cover.1698053876.git.nicola.vetrini@bugseng.com>
 <36d24b3a3e264f0e0b265b4f68d6432a143d64cd.1698053876.git.nicola.vetrini@bugseng.com>
 <a8370e98-1cb6-8fde-9458-e579047dd607@suse.com>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <2d92ef1f753165e2fa9cc7c04c219217@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 24/10/2023 09:50, Jan Beulich wrote:
> On 23.10.2023 11:56, Nicola Vetrini wrote:
>> As stated in rules.rst, functions used only in asm code
>> are allowed to have no prior declaration visible when being
>> defined, hence these functions are deviated.
>> This also fixes violations of MISRA C:2012 Rule 8.4.
>> 
>> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
>> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
>> ---
>> Changes in v3:
>> - added SAF deviations for vmx counterparts to svm functions.
> 
> Same comment regarding the R-b here as for patch 2.
> 
>> --- a/xen/arch/x86/hvm/svm/intr.c
>> +++ b/xen/arch/x86/hvm/svm/intr.c
>> @@ -123,6 +123,7 @@ static void svm_enable_intr_window(struct vcpu *v, 
>> struct hvm_intack intack)
>>          vmcb, general1_intercepts | GENERAL1_INTERCEPT_VINTR);
>>  }
>> 
>> +/* SAF-1-safe */
>>  void svm_intr_assist(void)
>>  {
>>      struct vcpu *v = current;
> 
> Linux has the concept of "asmlinkage" for functions interfacing C and
> assembly. Was it considered to use that - even if expanding to nothing
> for all present architectures - as a way to annotate affected 
> definitions
> in place of the SAF-*-safe comments?
> 
> Jan

It was proposed by Julien a while ago (I think it the thread on 
deviations.rst) to define
a macro asmcall that expands to nothing, to mark all such functions. 
Right now, it's not
strictly necessary (given that there are already some uses of SAF in 
Stefano's for-4.19 branch.

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


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 08:04:47 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 08:04:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621749.968517 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvCP1-0004fY-6K; Tue, 24 Oct 2023 08:04:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621749.968517; Tue, 24 Oct 2023 08:04: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 1qvCP1-0004fR-3i; Tue, 24 Oct 2023 08:04:39 +0000
Received: by outflank-mailman (input) for mailman id 621749;
 Tue, 24 Oct 2023 08:04: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 1qvCP0-0004fH-26; Tue, 24 Oct 2023 08:04: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 1qvCOz-0001jK-OP; Tue, 24 Oct 2023 08: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 1qvCOz-0003cv-9t; Tue, 24 Oct 2023 08:04:37 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qvCOz-0005ov-9H; Tue, 24 Oct 2023 08:04: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=UHSO5W9UyeJ15leiNZGzlIdVVnc5DRrRWHZB19LzCrc=; b=rPvtumM8iUegl4rFGa+q5ITMPF
	EeF3odnVqSBuIhFmu45jDtCjKwfAnJKv7R7tCNVD1B8OteZwRp1BGVFEVcLYjjgRro6oDodQc08rv
	gD2lyAFoxPN6/Avc77EZmnxROfcTScSrcB3tcmLgMoMkDIXBMAUyPe06SOw7qf/YNO28=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183504-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 183504: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=da73578bf7afee1fdd1abe97eaf733aa1e4bdefe
X-Osstest-Versions-That:
    ovmf=2ad52adb6606f89f0c475faa6552fee69c02d082
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 24 Oct 2023 08:04:37 +0000

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

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 da73578bf7afee1fdd1abe97eaf733aa1e4bdefe
baseline version:
 ovmf                 2ad52adb6606f89f0c475faa6552fee69c02d082

Last test of basis   183501  2023-10-23 22:12:16 Z    0 days
Testing same since   183504  2023-10-24 03:10:51 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
   2ad52adb66..da73578bf7  da73578bf7afee1fdd1abe97eaf733aa1e4bdefe -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 08:13:30 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 08:13:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621757.968528 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvCXU-0007H0-6W; Tue, 24 Oct 2023 08:13:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621757.968528; Tue, 24 Oct 2023 08: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 1qvCXU-0007Gt-1t; Tue, 24 Oct 2023 08:13:24 +0000
Received: by outflank-mailman (input) for mailman id 621757;
 Tue, 24 Oct 2023 08: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=krZT=GG=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qvCXS-0007Gn-Fa
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 08:13:22 +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 314f59d6-7245-11ee-9b0e-b553b5be7939;
 Tue, 24 Oct 2023 10:13:20 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by GVXPR04MB9926.eurprd04.prod.outlook.com (2603:10a6:150:11a::11)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.36; Tue, 24 Oct
 2023 08:12:48 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6933.011; Tue, 24 Oct 2023
 08:12: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: 314f59d6-7245-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=UDE45eCDDRiKcky1pfwr0LLqQUxdnsyB333nX7Ns0Nrvip4a9R92k8j6oCW/DqKlJ6fMAALBwQ09w8CQwvKoXxEP5cRY8GO1pEMOv6QCb0RrseEjl2f/u2v22AxdMHVOGLVQ7wdzD9+vB9njr7/Z7CY/6Yi5ZcFdWNjWL4vmI7VlywJYIC1ycKuF+ZTJiKvypzbtoBpZVic+mLMXdBXHWw16tJQLnmzxa2L1r9P66QWEg8BD9loDssYu1qSGSTX2Raj0hqq4bf16kevT7UmiVMUhnwhfbMDAAC20utalN8BDf5xknR1YeXHahaNZO7mmeYSudeKfYqOqmEHhiUQz0w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=FtvrN1KREC49KTa6w7bSQtvJLMkNUjMbqi/tcrw1KK4=;
 b=gV/psuRT+B2QdpjN5MdESR9MhtIFxZq+687yZd28mPxa/dRSFt702qNrFdDip0Sc9Yr3pPZ0zN94qgvr/4FoMmQK9LYfv95ENHzbJyhU5ZdGzwz8wTm/RFDBafNPtc1WUCYOkkFAjpn09F2MkKaqeoI/D+qeOiXDunW3eJzKiCobVbdbc7SNehwPrpY7HIjobZNZuZYIrefM5vMZXlA1MpfKkUYwWn9gyZloff3pu/ps2ULM9DyioRuVPVxMksV+BaSlME6y2rG+jBbcKvbPBwBnh62RaFg830dAuvn8zOkwj0etLCufVVX7Z1TTTqA08zZGHfs3gEiwdYPxHBR7wg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=FtvrN1KREC49KTa6w7bSQtvJLMkNUjMbqi/tcrw1KK4=;
 b=SMCuf4rvFaLazHIFvWKV3qAhFzWs7Q8fgbx7W08vyKoxHTDTxVm1DjpaJzFs9znKaIzVEsGvURScW/gnXfPZ5GFe3Bero+INXZoko8NP5kS+Q/3SukvHNi+vFoz8N9xazh80ivWUpL+b7DXe8K7DmT+Err1yjcADUYsd7cMB1YyudAPx1iT16hcu6bIcuT0/KVs7RUlC285YG6/yQa4PsadYxEgVvvaS6OaouMHfd5IA2XFV3HbwNsdse2N85uu3RRmoGVJ8eqH4jhW6QifDxn9aL+xvYDNucz+B04e8rXh84RJpjfetchEhleJbWQx4UcsQZZ9HmvmgZ1OSjExEBQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <2f3850a7-f2a3-350f-b9b6-be0bde0d1a28@suse.com>
Date: Tue, 24 Oct 2023 10:12:46 +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][for-4.19 v4 2/8] x86: add deviations for variables
 only used in asm code
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.cooper3@citrix.com, roger.pau@citrix.com, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <cover.1698053876.git.nicola.vetrini@bugseng.com>
 <67ec8b468d6048f7f91590b59430df275b2f5870.1698053876.git.nicola.vetrini@bugseng.com>
 <2aaa0978-e28f-4151-f4ba-f2628f6d4677@suse.com>
 <ef7f5c65ad0b0129f6b6119b6ad7d506@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <ef7f5c65ad0b0129f6b6119b6ad7d506@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0091.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:a9::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_|GVXPR04MB9926:EE_
X-MS-Office365-Filtering-Correlation-Id: 236d91f3-2e0a-4ad1-78a6-08dbd4690296
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	B4Lp2T5Nx9UcnztUfiSQn0ksfC0hg2ZNi/Qh72/SF/Y49Ik6ZshaKbhMUTCDCWRCboun72ONZpBmJgKFuIZTM07lUYT2xZGibAwFbXICX8qYoD51Kkw0zNkPs7hS7mn50m5yRhYurDtnNc0kQ6WudHXXc9iVsDFTuyErVk8q2HoffvVUePQzO2HmxEBGn2LsWN3uNlVksQjFjC1z/GFKxeH8LqjW8u4AiGGNCAdjuIXXEk+kmO5Dih3gUF43YGPTafruCqt4VxGgnth7o0RsHHDY1JAGeKf8yvIQIjMIj17O9siyRuclCxxIbGhPrd+9LL64Lvva4/lpScbUrvzIW2TnjArmvFJbLOqWYd0U0UVgtAISIbOL6kvqhJLhvnuM2TnSL5d9B/L1hjPLq7tAMvvJcW+xnB75L+Iu3Hq0v5+l06O+yHjKi+yNyLSHi+C8yZOj/TCIFbjdFNxkWZlA0KzJXG04Ujp4Weo6x5OF9+ruLmYR0gr2Q2knbBVVKU4QHGtS4+x2hLrnVBz6IWLteu+rzepI/8NxRd+a7eYFgLM4rzxSPcWmz1j6X8Wb5mIJ0RykJFjiM8Sspcxacu6DYsHCPSerj+4OBLrk/G+yDCXnHzHTckxEPRPVrWpF1peEQRgjGD2K4k+RnNBfiIIyzA==
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)(136003)(376002)(230922051799003)(1800799009)(186009)(451199024)(64100799003)(53546011)(86362001)(31696002)(36756003)(31686004)(6916009)(38100700002)(316002)(66946007)(26005)(478600001)(66556008)(6506007)(8676002)(5660300002)(6512007)(41300700001)(66476007)(2616005)(4326008)(2906002)(8936002)(6486002)(7416002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?NTVxV0pld3JZQUNTRzRjTU9tRW1XcnpyUXphZVZwWVZKc1dtL3dzd213N1Vy?=
 =?utf-8?B?NlQ5cVo0dENkeHJRdTh0K2F6YkFoRXE0TTIvOG9MeFc3czlMMmU5UVI0bWYz?=
 =?utf-8?B?NWVQUTQ4OHNoemtXZW50WS9MK0RNQzZrc2l2bCsvUnJWbVlJRTRzZi90c2RE?=
 =?utf-8?B?YzRhTnBNTUNFWi9ybEt1Q0lUM2FqTTVGR2RqY0RUT0lVNzBhR2FZWjRERzNB?=
 =?utf-8?B?L1ZuNWZPRCtOcURlRkNBa0hqMnZPNURRSi9YcXQ3Z0dsL0kyQkoydmpyOTVL?=
 =?utf-8?B?R2h4UXdZbmc2QngxQzNlSUJuazdMOHJYVmsxMndjYlZ2L2sxYU1QNmozVnRO?=
 =?utf-8?B?THlRUmszL3lFYjU5dUg2OHNkNWFmdzg3MzRwRUlaMzk3Q3duUlkyQW9zZFZk?=
 =?utf-8?B?emhKMVZnM3N3Tld2WTArdmJXcGdERTdndXlETWhFb1FEMFdEbnNGT3U0QUlU?=
 =?utf-8?B?NGJtZzJJaHFmZmozeWFpbWNNUk82SFVOUWIrSWxjak15NkJOR3lGbXVNNTRo?=
 =?utf-8?B?eUFUSDREeSt0d21KUVdhaDNwVHRSNGtWYUR3TVhYVUtCazJPVmhQakFKNmMz?=
 =?utf-8?B?NGo3Ym4wRUdreGk1MkJBNk5KRGhPMmJ3S2ZVZVFpOFpMeUZlbVZiZEppeHUy?=
 =?utf-8?B?QWNCWkxQcVNQaTBHSS9zS0FXUnU2RUFOeFM3Vjc0WU5tcmIrSGhjTkdGL0Nw?=
 =?utf-8?B?YkQvS2toVHFMMmc1NWNZUVlGVDcrQ3Rpc2dFZVhlZVFXMVBtU3Vmd0dzcjg3?=
 =?utf-8?B?U1FKTUxNdW9ucitTVlEvMHlNWFpLSFFmKzZSNXdSaEJEOEMrdVhTZTd4RjZr?=
 =?utf-8?B?MlRWekh2dC9uUWRpd0NoQVA4WUxmUDJwTVFIR3hyMzFEUDYycUZvSm4vY2tT?=
 =?utf-8?B?TkRSb1lwRElCVFAwWVJyQjdFbFovai9MVEZoYm9WUk5PcWRKRmNNbXdMYjEr?=
 =?utf-8?B?b1VSajVVOFNna3BKa0hsejl5N2dwVUZ0QktOV3JpRjFxZVF6azRWdTJWZ0p1?=
 =?utf-8?B?ZUhDVWRLL1RLMDhoS1hSNzBCcHRIL255TWJXN3FaZkRpOHdzVE1aZ04remZh?=
 =?utf-8?B?KzVDT2hwa1BjKzlOdVVCbGx1NmJsT1MwaHdqbFhqRm5hcUUrR2lEUHBaMHZD?=
 =?utf-8?B?dDJ5RytFQnFOUjg1RFVWcGNRT2wxbS9sUU1rbElKRzdISlJOVGszTHhWOENx?=
 =?utf-8?B?cE1YbjBuNzAwNnBGdDdxdVp2QnBJSm9EaStwUUhXMGlFK2c4VDFXdDA1Nzh3?=
 =?utf-8?B?a2g1UTJpY1B1aCtxZnNHTDVaR01iVjBTY3NXaGtlVGxnRU4wVWNSdU9uRVAr?=
 =?utf-8?B?ajV6NmRVU3ROUnF0L1BySU9kbFZEK0MzcDJyUU9sSVJIRG9wcHZsNkdqRXdD?=
 =?utf-8?B?Ykl4dUtxaksxNGpnb0t5VU9lYXV0Q3V1ckhzSDVRVlE2UEI0bFUrNzhXQjNM?=
 =?utf-8?B?RUI3M0xPNUpHWklpNTA3aTlVQnFNNk9VckFwUXJYZFE0VHdlSFp0NTFuUVJH?=
 =?utf-8?B?ajh0ajFQZlpRRmZuand5emwzd1hXcXpNb1FYOHdUcWNzZWpsS1BhbDRWOU9C?=
 =?utf-8?B?RFByZCtRdndYUXZBRG11VUpZb2d1eExCcWREaE8zMGp1WFZOOWMrSlk2MnF3?=
 =?utf-8?B?SUdtOHQ1OEJ2eWpudU1YMExjYVJqaVZOblIvb01iTldCZVpQUHpFaW9yTFF4?=
 =?utf-8?B?Q1FQVnNCZzhxTGxLeEtLZVdXZlA4YmNnT0hIeWJXSm40eXo4aEZ0S3FwWDlt?=
 =?utf-8?B?d3NkdkhoVGtXTEh5M1pSOHMvRXMrRHhRK3pnUHRicjlDWVZsZUJCOEJrTFIw?=
 =?utf-8?B?ais2VVU4MWRSUDJXYXpsenRSZnl6K1Q0Q0pRSldteGpQVStrZDM2Uy95Tzhq?=
 =?utf-8?B?K2g5aGt6eFZvb09ueFBLUDQzRUJSeVZxRmNtU3BpSUhSM2hiY2sxUlFhekFo?=
 =?utf-8?B?WDUxN2RVWERxbEJ3S2ZnMkdLNklabFovR0JyMVpVUytFNVRnOS94Nm04QmZ1?=
 =?utf-8?B?bjBDaXhJL04vM1NjajBGeHEySFVqYy9rd0JRaGEwell3NGpodmVzeDJXQ2Rw?=
 =?utf-8?B?K0M1aGFMOXVNUU1LRjFYMk51a2FQd0xyNkFWUlloeHY4OW1VdU5GMEFOcS9S?=
 =?utf-8?Q?LafSv26rqxaAnwBYm6ZjMRWhV?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 236d91f3-2e0a-4ad1-78a6-08dbd4690296
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 24 Oct 2023 08:12:48.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: 3zxD7OoZCXV49GQQrCJaf2nMszoBWYD8s/N5GctWK+wzFHmnpDeSgb9mdNMecflLHDkgaWcIQyDrdvP62QpZOw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: GVXPR04MB9926

On 24.10.2023 09:58, Nicola Vetrini wrote:
> On 24/10/2023 09:32, Jan Beulich wrote:
>> On 23.10.2023 11:56, Nicola Vetrini wrote:
>>> --- a/xen/arch/x86/include/asm/asm_defns.h
>>> +++ b/xen/arch/x86/include/asm/asm_defns.h
>>> @@ -31,6 +31,7 @@ asm ( "\t.equ CONFIG_INDIRECT_THUNK, "
>>>   * gets set up by the containing function.
>>>   */
>>>  #ifdef CONFIG_FRAME_POINTER
>>> +/* SAF-1-safe */
>>>  register unsigned long current_stack_pointer asm("rsp");
>>>  # define ASM_CALL_CONSTRAINT , "+r" (current_stack_pointer)
>>>  #else
>>
>> SAF-1-safe is about symbols "used only by asm modules". This doesn't 
>> apply
>> to the declaration here.
>>
> 
> The wording could change to "asm code" if that is deemed clearer.

Question is what would be meant by "asm code"; "asm modules" is quite
clear.

>>> --- a/xen/arch/x86/setup.c
>>> +++ b/xen/arch/x86/setup.c
>>> @@ -75,6 +75,7 @@ static bool __initdata opt_invpcid = true;
>>>  boolean_param("invpcid", opt_invpcid);
>>>  bool __read_mostly use_invpcid;
>>>
>>> +/* SAF-1-safe Only used in asm code and within this source file */
>>>  unsigned long __read_mostly cr4_pv32_mask;
>>>
>>>  /* **** Linux config option: propagated to domain0. */
>>> @@ -147,12 +148,13 @@ cpumask_t __read_mostly cpu_present_map;
>>>  unsigned long __read_mostly xen_phys_start;
>>>
>>>  char __section(".init.bss.stack_aligned") __aligned(STACK_SIZE)
>>> -    cpu0_stack[STACK_SIZE];
>>> +    cpu0_stack[STACK_SIZE]; /* SAF-1-safe Only used in asm code and 
>>> below */
>>
>> Wasn't it that such comments need to live on the earlier line?
> 
> On the same line is fine as well. I personally found it less clear 
> putting that in the
> line above.

But please recall that these comments are intended to cover other
scanners as well. Iirc only Eclair accepts comments on the same line.
Nevertheless I realize that putting the comment on the earlier line
is problematic (and maybe also scanner dependent) when that ends up
in the middle of a declaration / definition.

Jan


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 08:14:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 08:14:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621760.968537 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvCYu-0008KU-F6; Tue, 24 Oct 2023 08:14:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621760.968537; Tue, 24 Oct 2023 08: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 1qvCYu-0008KN-CI; Tue, 24 Oct 2023 08:14:52 +0000
Received: by outflank-mailman (input) for mailman id 621760;
 Tue, 24 Oct 2023 08:14: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=krZT=GG=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qvCYt-0008J0-EP
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 08:14:51 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 (mail-db8eur05on20605.outbound.protection.outlook.com
 [2a01:111:f400:7e1a::605])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 6663240c-7245-11ee-9b0e-b553b5be7939;
 Tue, 24 Oct 2023 10:14:49 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS1PR04MB9238.eurprd04.prod.outlook.com (2603:10a6:20b:4c6::8)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.11; Tue, 24 Oct
 2023 08:14:46 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6933.011; Tue, 24 Oct 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: 6663240c-7245-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=NpJNjQsQfsIiK2GSasugVnYC6g5t4kWv+2+/zVXpqK5CPhMwCLN/EVX1xGKWwqMnQMZUEO9ow8OsuCACvXlfd0k4Qe0jOuGVsV0vOIurJjEt8YYZhc2mNfRTFQwEMca+5ribn2+skvS1uW7io/rKDtKzAVrIF1Ewe7rjaHN0UuylW/Vz7DosGG3dml5cDl2X37vY0CR4SQBIFJdik1gTJqOrGuCWlF2WAGr2qSwJrP6HguJBV3asVfqUwB6Nu7a2eMbIBe+fzBdbn357CYy0tR4+tK0GJ47wlt3d0eoVCmORIQ119ifc1/IVRSbkdVdLjccZawrBxgq0/v3TpH8TVA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=lClNo14qIxOXDeccmGf18BEwqsElUsggSzrtG1z4XxY=;
 b=Nx+05zA5ZM2r0tB7gCd62BwD07XEsCvAcsvxRjBJSEiBxANWky15hoJRk4VMTPWdd7FPxaQfLdkiTOKl6/uIxK1hhEa1ZEVEI2Wy8J/CAebrsER1d/MTG5Yg5K5r3gXskHBSY7mEaBOH7ZQbFFwsjMHZIw6fXmimozA8EX4hM91Y3pTrAE3MyXejgAVK3baWlhsRpN2PqSBPwcIuPW3toe0YKkpItKxVFDPvzwgvfzyQxI6BuOPW5lu2Ac6nQICkeX/OpH6Nxv6FcScO1/UpCsKRWChaALnvAzukq5w0xOYl0HTM/1IgxYEL8SSrXtOfuAKNOubGT9dVzgZ1h7NIVA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=lClNo14qIxOXDeccmGf18BEwqsElUsggSzrtG1z4XxY=;
 b=39c5lLJxHOrra+qwAWKXBwo1Irc6hTpVL4LHniXMnAfxuV0NIshqK2eaADybOfdipZ2qPTDZcA4cuGd70O0M0AejCJfllpcyCBW2b5NkuK0SJxEwslmEMcwHwzn1O2kwpLZpq7JiSY3at5Ygi3Wmiq4zlHRBQxOc5Uj1fJ6iR9TyRGxqMea+3xsB6fHyQGUrVPh5+WZuTTo4/K7eJPp0hpV/gF7TdRiHx80fBVlmkTpoypOIt/1nkkyiYn2zh2ijnyp0Iu/Wn5ljlO6/k1pKOkfyOZZtWa84r8aSdUf+tLuhqV/nGIRIRo4jydgFaJ9RPA6NuhVwhQTXGbbI7W4O3w==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <52422128-156d-5d6c-46b2-261b1c7e85c0@suse.com>
Date: Tue, 24 Oct 2023 10:14:44 +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][for-4.19 v4 3/8] x86: add deviation comments for
 asm-only functions
Content-Language: en-US
To: Nicola Vetrini <nicola.vetrini@bugseng.com>, sstabellini@kernel.org
Cc: michal.orzel@amd.com, xenia.ragiadakou@amd.com,
 ayan.kumar.halder@amd.com, consulting@bugseng.com,
 andrew.cooper3@citrix.com, roger.pau@citrix.com, Wei Liu <wl@xen.org>,
 Jun Nakajima <jun.nakajima@intel.com>, Kevin Tian <kevin.tian@intel.com>,
 xen-devel@lists.xenproject.org
References: <cover.1698053876.git.nicola.vetrini@bugseng.com>
 <36d24b3a3e264f0e0b265b4f68d6432a143d64cd.1698053876.git.nicola.vetrini@bugseng.com>
 <a8370e98-1cb6-8fde-9458-e579047dd607@suse.com>
 <2d92ef1f753165e2fa9cc7c04c219217@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <2d92ef1f753165e2fa9cc7c04c219217@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0068.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:49::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_|AS1PR04MB9238:EE_
X-MS-Office365-Filtering-Correlation-Id: d3f99be3-ae1a-4dd2-d13b-08dbd46948fd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	OBdxwgCgXUfVQagv5CLaQf737A+CI3U+hLTSTNWxUxIS/yIK4MAHIADTF7L3snlyEeBASvaj846IlcsGviLKlVL/hr5cmFaZm3Z+bYp2TX+UqEzoRWLCaaPYh4W4phvcNDhhri2oUJ3pcQc7PiEzNAaob8bEttET8FqoFttnf1tekKAmjZeqql1WgnoSoCQBx7uaT2vxeTZqZTWr4JoSa+IajAr1zFMG6kTHeViiOf/Y7xhTclps1oAVHXDTeBN1nlXOuN+/wIIi5I9Lcw4cr+36d3RbqFQS+uXUREZtFFcJlEdqV0eApdWH+aSj4NLiTpxDD/kkOcDzChaSe1MyUtA6uVbSYCjYOnofRKPmjqD4gW63IFHd9Nl3GFNevclcSJ05sRvC+Bw7NXCcEizNrO/S+cG3Ys6cDLPCJkczCJ1Q4Vv/tnWX1h77APNaPhJPkdnrfqX30N0ba5iPyTx2lKGDIaQQYHWsKvAPmK5i94DAOg8rC29L46e57MORQZ5l29V/dXTamUvWVtrxPe0tMXSBd44vLJFKOmpnJpk+8QVWw1xqEM5MLd7xxn9bU6CTWw5b+IuhKPF58eneExF3awePoRz1lVVEyL+wT9KHaqVxrGjkoLd5+k/6TVi5vICbWfE+X2fWxVgIowQdqUzj9Q==
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)(230922051799003)(1800799009)(186009)(451199024)(64100799003)(316002)(2616005)(6506007)(53546011)(6512007)(8936002)(26005)(8676002)(5660300002)(7416002)(41300700001)(4326008)(2906002)(478600001)(6486002)(66476007)(66946007)(66556008)(54906003)(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?Mk42REtvWWxyY3hCdFpBTDBxa1FVMDZlc3EwZmNXRnlhL0NDRVo1bkw5dmdN?=
 =?utf-8?B?SDlvcHdvKzUxSE45NVpKSzRIdytkck1hai9RSHlvam9UWUREdmRZQXZiOWxq?=
 =?utf-8?B?K05lYysxN3h6SGpSUWRrRDFORkx0S0Rza1BWOFE3ODZNaXRkY29na1VFNDAv?=
 =?utf-8?B?M3B1MnpwV3lJeUVPMXdQYU1rVGN3OCtFQ1NBM2pwWlFkRDlMNzhYS1RQSG52?=
 =?utf-8?B?VHcwTWVYSGVjMGtyZ0VQUnQ3ekRTck1jT0RnY29xZ1hqK1hTenBVbjhJdlBR?=
 =?utf-8?B?d25Rc1lKYWE1QUZsTnFNeVF3UVlXRXpOUE5QOHV3aUd6SGEvaGZ2Tlh5QjNm?=
 =?utf-8?B?N2dFSWp2SkRrTU1CUlM0VHBIMFM2Snh2eXpnMUxoMjBGTHhKRGhqVG5YN0x1?=
 =?utf-8?B?TXA2enJrenM5VUJXQkZkQzhmUzJZb1I0ai8zWEw1RlhYcm9xWmtyVHVvY2dF?=
 =?utf-8?B?c1VVMHp5bXlFZWo4eGgzMzdsMUVnNXlOc2xVeExIaVg2akFCVndyWWdMSDda?=
 =?utf-8?B?ejBiTGpZbVIvaVFCa1FzanJmUXY0QlFaVno5Zy9hYjBMcEp2bmZPeXgybzNn?=
 =?utf-8?B?cFJMQXVFMVphZ2RYWDFwUENWVWFMcGttNWlNWjZoWUhjRFd1Y0Z6YjZIc2g1?=
 =?utf-8?B?NGN0b3Zia1dYRWRLdzZqeXBNVFVaejhxMHNySWo1TGJOdVo2TS9zbEx5dnZV?=
 =?utf-8?B?YlhFZFNESHFMd0R4b3E3NTREMWxrYjNtSG1teFN5SjlHTXA1SS9JUExTN1hG?=
 =?utf-8?B?VW1lNlNqZ2pzek45aE5WanVMYkdjZ2JST1lyT2JUZ1BVK3gvWHZGREFDT0tE?=
 =?utf-8?B?Y0dDSGg3U3hiVU8vWmlRZkU5dzFSSkVPZnY5b3pPMkk3QS94VlJJcVg5d1d2?=
 =?utf-8?B?Zk9OSm1uOXM3SEhHMG9RS0hmRGQ2RlZ4bENLL1J1YktmMnRxanpLYVZzOS9Q?=
 =?utf-8?B?aHZOKzlXemdpdys3UUcvbUxiRXQ3K3FDbWZlWVMwc05adHlTNHlsQmtXYTZw?=
 =?utf-8?B?WGRKQWJ6cjg1L3VmUUNXUjVGWlB5UU9McHp2US9UU1JjSmZYeUdXNzZQbEpx?=
 =?utf-8?B?aXlGUmx2OHN2QXordjliMlhuUktIT2JmY2F2NmljNnByNlhnN1p4V1k1UGNz?=
 =?utf-8?B?SU1IejFqWFRSek5tbkw0UmgrZ2JReU0zWStCcHJGZHcyWE9yT0xQTFBlUUtz?=
 =?utf-8?B?K1JzYk1VeTRzT0graU03YnY5SlNGWnNWak50ZHVpT0NGNGNPNkNzbVA0NHNQ?=
 =?utf-8?B?OUJhS2RCRzR3UDAzYXJsN3ZvaTJuY1lZNkZWeVl3VitzK3RXbzdKUm0rZjRC?=
 =?utf-8?B?SDFCTG1SbzBuZ1RYeHdwemJwWHE4VUpoTDVKMXNBK2grNk5YdnNWclBsendp?=
 =?utf-8?B?dEFyZS91THFOYVlYc252WWh2Umd4M2xtNHJlVFVzNVdNSi9GQ2ZlQ3hqTGR4?=
 =?utf-8?B?dnBKdEhhQ3NJQ3pQa0dFa1VXZHdEdW9udVptbXZIUXBEN092N0dBeVMrNHkx?=
 =?utf-8?B?LzRrbUplVXkrSlF2dkZSa1JxM0xYTkowSTBieXpSaTZjampBWVZJUWVTVXIv?=
 =?utf-8?B?bUhqWkk4QklwbExqZ1Bxb0tjNUJ2UjdjYzFpSzhFLzVJbkIydGw1VlhYWFpZ?=
 =?utf-8?B?d09FdUo2UnZWb29tcUEySy9ETGlvUDFiNkFnQ0VQaW9sYUI0dFJwOFA1T2V4?=
 =?utf-8?B?UEI0NjUyZzFqU2laWmpKS0M2V2sySTNSNXFMZFFMM1JTdE5vUWJpNkNUcmN4?=
 =?utf-8?B?OHMxU2ErTEZUYzB6SWMyd1psbEprNER2ajRiVVlidUg0UUlPR3JqZUlrbzMx?=
 =?utf-8?B?bjVSeVNzQ1FkVVFPaXk1UExMRGF2aUJ3Tk9oRk9NQ1U0MCs5Z28zekR0YW4z?=
 =?utf-8?B?cFIyc3N5OTJGQndMcTVBeXF3ZkVWWVFmWnM5dFpQZXBrSnh3aUpJaTlxK2Nl?=
 =?utf-8?B?Qnp6NU9pc1EvR3hKaVlKTmpNS0x3SzVNK1FYM0tVR1lFZGNkaUdjaEY3SFdq?=
 =?utf-8?B?N0hOS3FoTDhrNnNoc01wVVo1S3l3UkVjbjNYNUZ6YUVpa2RpY0FXZWJIZlFT?=
 =?utf-8?B?eU16SVAxczFnZ1QxaHBXK2lTaldTSGJmbGFQMmlxWlBiQmV0Zktnd1BjMENa?=
 =?utf-8?Q?z6tUKONlYKEjgmP8F3+G22Ku+?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: d3f99be3-ae1a-4dd2-d13b-08dbd46948fd
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 24 Oct 2023 08:14:46.5299
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: T9fd2lmB4yHeHOe96BM0mO7CZPChY5jn3/b6BSo2Le+K8+g4p89Myyc7q/2vJXSUG0nzlY+s24G03hDVjNsS1Q==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS1PR04MB9238

On 24.10.2023 10:01, Nicola Vetrini wrote:
> On 24/10/2023 09:50, Jan Beulich wrote:
>> On 23.10.2023 11:56, Nicola Vetrini wrote:
>>> As stated in rules.rst, functions used only in asm code
>>> are allowed to have no prior declaration visible when being
>>> defined, hence these functions are deviated.
>>> This also fixes violations of MISRA C:2012 Rule 8.4.
>>>
>>> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
>>> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
>>> ---
>>> Changes in v3:
>>> - added SAF deviations for vmx counterparts to svm functions.
>>
>> Same comment regarding the R-b here as for patch 2.
>>
>>> --- a/xen/arch/x86/hvm/svm/intr.c
>>> +++ b/xen/arch/x86/hvm/svm/intr.c
>>> @@ -123,6 +123,7 @@ static void svm_enable_intr_window(struct vcpu *v, 
>>> struct hvm_intack intack)
>>>          vmcb, general1_intercepts | GENERAL1_INTERCEPT_VINTR);
>>>  }
>>>
>>> +/* SAF-1-safe */
>>>  void svm_intr_assist(void)
>>>  {
>>>      struct vcpu *v = current;
>>
>> Linux has the concept of "asmlinkage" for functions interfacing C and
>> assembly. Was it considered to use that - even if expanding to nothing
>> for all present architectures - as a way to annotate affected 
>> definitions
>> in place of the SAF-*-safe comments?
> 
> It was proposed by Julien a while ago (I think it the thread on 
> deviations.rst) to define
> a macro asmcall that expands to nothing, to mark all such functions. 
> Right now, it's not
> strictly necessary (given that there are already some uses of SAF in 
> Stefano's for-4.19 branch.

Can this then be revisited please before any such reaches staging?

Jan


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 08:25:33 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 08:25:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621765.968547 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvCj9-0002h7-DV; Tue, 24 Oct 2023 08:25:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621765.968547; Tue, 24 Oct 2023 08:25: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 1qvCj9-0002h0-Ad; Tue, 24 Oct 2023 08:25:27 +0000
Received: by outflank-mailman (input) for mailman id 621765;
 Tue, 24 Oct 2023 08:25: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=jXWl=GG=casper.srs.infradead.org=BATV+e2898748ca55db067849+7366+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qvCj7-0002fe-VG
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 08:25:26 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id e0f4daac-7246-11ee-98d5-6d05b1d4d9a1;
 Tue, 24 Oct 2023 10:25:24 +0200 (CEST)
Received: from [2001:8b0:10b:5:545e:5208:5de0:9d33]
 (helo=u3832b3a9db3152.ant.amazon.com)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qvCj3-001OnM-LC; Tue, 24 Oct 2023 08: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: e0f4daac-7246-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=MIME-Version:Content-Type:References:
	In-Reply-To:Date:Cc:To:From:Subject:Message-ID:Sender:Reply-To:
	Content-Transfer-Encoding:Content-ID:Content-Description;
	bh=SAPwQSpRolepOMH8U92ZJQFf2vr59yurhTZStDpT/Ew=; b=pZjMR+N4beQ3V9DcHNkpWLgSot
	2bBwppoI9t2RLFXI3vy+OcR2fCKjL3ES2KUd4apf0qJqC7Kf/XdlJPSh5bf92tA3O5LSxUZxJ2zjA
	sVijmsXdbmpoidpXWfSz+aGXTj6h/DzM45oJZkv5m/DBXmikc9dRMahxSAL688HToJ/zIW2oA5yeZ
	9vM+HKKNzQEdFw0G70JVolFu/KwyeC7bRC3+4ZTeFj4zqE+r8xxMmvF2Jymm4P+uOzt0TJD/oUoFA
	2jWqjVEEPk/0pGe9pekosyG+Twf7Yir6B+SPGKSgR/feSzV5Gs0SaC5PyApLVfKLTmwYUWmj7P+z+
	53RLqBsg==;
Message-ID: <721fdf434d4f03ae44965e4b2b6da5e04e85358a.camel@infradead.org>
Subject: Re: Lockdep show 6.6-rc regression in Xen HVM CPU hotplug
From: David Woodhouse <dwmw2@infradead.org>
To: Juergen Gross <jgross@suse.com>, xen-devel
 <xen-devel@lists.xenproject.org>,  paulmck <paulmck@kernel.org>
Cc: Stefano Stabellini <sstabellini@kernel.org>, Oleksandr Tyshchenko
 <oleksandr_tyshchenko@epam.com>, Rahul Singh <rahul.singh@arm.com>, Boris
 Ostrovsky <boris.ostrovsky@oracle.com>, Thomas Gleixner <tglx@linutronix.de>
Date: Tue, 24 Oct 2023 09:25:21 +0100
In-Reply-To: <662772ec0d43cce9233680d67d7114bc8b0ed48d.camel@infradead.org>
References: <b28fff67f7501e4713af9b8c777f853cc44d6c6f.camel@infradead.org>
	 <c75a3d53-fc36-46a6-b781-f16e1e5c6226@suse.com>
	 <662772ec0d43cce9233680d67d7114bc8b0ed48d.camel@infradead.org>
Content-Type: multipart/signed; micalg="sha-256"; protocol="application/pkcs7-signature";
	boundary="=-lqk5afWkZIU/xhDN86Y/"
User-Agent: Evolution 3.44.4-0ubuntu2 
MIME-Version: 1.0
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html


--=-lqk5afWkZIU/xhDN86Y/
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Tue, 2023-10-24 at 08:43 +0100, David Woodhouse wrote:
> On Tue, 2023-10-24 at 08:53 +0200, Juergen Gross wrote:
> >=20
> > I'm puzzled. This path doesn't contain any of the RCU usage I've added =
in
> > commit 87797fad6cce.
> >=20
> > Are you sure that with just reverting commit 87797fad6cce the issue doe=
sn't
> > manifest anymore? I'd rather expect commit 721255b9826b having caused t=
his
> > behavior, just telling from the messages above.
>=20
> Retesting in the cold light of day, yes. Using v6.6-rc5 which is the
> parent commit of the offending 87797fad6cce.

I don't know if this is relevant or just noise, but this only happens
under true Xen (I've only tested 4.17.1, as noted).

Under Qemu I get the same warning on offlining, but it does come back.

However, the reason I was looking at this in the first place was
because when I enable XEN_HVM_CPUID_UPCALL_VECTOR under Qemu=C2=B9 to make
the guest use the per-vCPU local APIC upcall, I get a different failure
mode on onlining.

=C2=B9 https://lore.kernel.org/qemu-devel/20231019154020.99080-10-dwmw2@inf=
radead.org/

I don't know if it's related to interrupts being enabled too early,
which is what some of the other warnings at *online* time in my first
email seemed to be complaining about? This one seems to be a timer IRQ
storm (or just never finishing processing the event bitmap?).=20

Not sure if this is just because Qemu manages to deliver the first
event channel a bit sooner than Xen, perhaps because it should have
cleared something in the vCPU state when offlining?

Maybe it's an additional clue... maybe just noise and my fault in Qemu or K=
VM.

[root@localhost cpu1]# echo 1 > online=20
kvm_xen_set_vcpu_callback callback vcpu 1 vector 243
[   33.451969] installing Xen timer for CPU 1
[   33.453547] smpboot: Booting Node 0 Processor 1 APIC 0x1
[   60.000948] watchdog: BUG: soft lockup - CPU#0 stuck for 26s! [khugepage=
d:37]
[   60.000985]=20
[   60.000987] =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D
[   60.000988] [ BUG: Invalid wait context ]
[   60.000989] 6.6.0-rc5+ #1376 Not tainted
[   60.000991] -----------------------------
[   60.000992] khugepaged/37 is trying to lock:
[   60.000993] ffffffff9841abd8 (&port_lock_key){-.-.}-{3:3}, at: serial825=
0_console_write+0x460/0x4e0
[   60.001016] other info that might help us debug this:
[   60.001016] context-{2:2}
[   60.001017] 6 locks held by khugepaged/37:
[   60.001019]  #0: ffff88f301c93620 (&mm->mmap_lock){++++}-{4:4}, at: coll=
apse_huge_page+0x2d1/0x890
[   60.001038]  #1: ffff88f3075aa8e8 (&anon_vma->rwsem){+.+.}-{4:4}, at: co=
llapse_huge_page+0x40a/0x890
[   60.001048]  #2: ffffffff96c03820 (rcu_read_lock){....}-{1:3}, at: xen_e=
vtchn_do_upcall+0x61/0x1b0
[   60.001062]  #3: ffffffff96c007e0 (console_lock){+.+.}-{0:0}, at: vprint=
k_emit+0x12e/0x1c0
[   60.001068]  #4: ffffffff96c00830 (console_srcu){....}-{0:0}, at: consol=
e_flush_all+0x21/0x260
[   60.001072]  #5: ffffffff96880420 (console_owner){-.-.}-{0:0}, at: conso=
le_emit_next_record+0x113/0x330
[   60.001078] stack backtrace:
[   60.001079] CPU: 0 PID: 37 Comm: khugepaged Not tainted 6.6.0-rc5+ #1376
[   60.001082] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS =
rel-1.16.2-14-g1e1da7a96300-prebuilt.qemu.org 04/01/2014
[   60.001084] Call Trace:
[   60.001086]  <IRQ>
[   60.001093]  dump_stack_lvl+0x57/0x90
[   60.001098]  __lock_acquire+0x7bb/0xbb0
[   60.001105]  lock_acquire.part.0+0xad/0x240
[   60.001108]  ? serial8250_console_write+0x460/0x4e0
[   60.001114]  ? rcu_is_watching+0xd/0x40
[   60.001123]  ? lock_acquire+0xf2/0x110
[   60.001128]  __raw_spin_lock_irqsave+0x42/0x60
[   60.001131]  ? serial8250_console_write+0x460/0x4e0
[   60.001135]  serial8250_console_write+0x460/0x4e0
[   60.001140]  ? lock_acquire.part.0+0xbd/0x240
[   60.001145]  ? rcu_is_watching+0xd/0x40
[   60.001148]  ? lock_acquire+0xf2/0x110
[   60.001155]  ? console_emit_next_record+0x113/0x330
[   60.001157]  console_emit_next_record+0x13c/0x330
[   60.001159]  ? console_emit_next_record+0x113/0x330
[   60.001165]  console_flush_all+0xed/0x260
[   60.001167]  ? console_flush_all+0x21/0x260
[   60.001170]  console_unlock+0x52/0xf0
[   60.001178]  vprintk_emit+0x173/0x1c0
[   60.001182]  _printk+0x60/0x80
[   60.001191]  watchdog_timer_fn+0x216/0x2a0
[   60.001205]  ? __pfx_watchdog_timer_fn+0x10/0x10
[   60.001209]  __hrtimer_run_queues+0x1b2/0x380
[   60.001217]  hrtimer_interrupt+0xfe/0x240
[   60.001222]  xen_timer_interrupt+0x29/0x40
[   60.001233]  __handle_irq_event_percpu+0x87/0x240
[   60.001238]  handle_irq_event_percpu+0xf/0x40
[   60.001242]  handle_percpu_irq+0x4f/0x70
[   60.001247]  handle_irq_desc+0x3a/0x50
[   60.001250]  evtchn_2l_handle_events+0x254/0x2a0
[   60.001254]  ? rcu_is_watching+0xd/0x40
[   60.001257]  ? lock_acquire+0xf2/0x110
[   60.001262]  xen_evtchn_do_upcall+0xa1/0x1b0
[   60.001266]  __sysvec_xen_hvm_callback+0x47/0x80
[   60.001271]  sysvec_xen_hvm_callback+0x99/0xc0
[   60.001283]  </IRQ>
[   60.001284]  <TASK>
[   60.001288]  asm_sysvec_xen_hvm_callback+0x16/0x20
[   60.001308] RIP: 0010:smp_call_function_many_cond+0x119/0x660
[   60.001312] Code: 7e 08 48 63 d0 e8 17 90 44 00 3b 05 e1 bf c5 01 73 25 =
48 63 d0 49 8b 36 48 03 34 d5 60 dc 55 96 8b 56 08 83 e2 01 74 0a f3 90 <8b=
> 4e 08 83 e1 01 75 f6 83 c0 01 eb c1 48 83 c4 38 5b 5d 41 5c 41
[   60.001315] RSP: 0018:ffffae458014fc00 EFLAGS: 00000202
[   60.001317] RAX: 0000000000000001 RBX: 0000000000000000 RCX: 00000000000=
00001
[   60.001319] RDX: 0000000000000001 RSI: ffff88f33ecb3e00 RDI: ffff88f3011=
12790
[   60.001320] RBP: 0000000000000000 R08: ffffffff96015000 R09: fffffffffff=
ffffc
[   60.001322] R10: ffffffff95cacbac R11: ffff88f301bd0d48 R12: 00000000000=
00000
[   60.001323] R13: 0000000000000001 R14: ffff88f33ec2f8c0 R15: 00000000000=
00001
[   60.001326]  ? mtree_load+0x8c/0x590
[   60.001333]  ? __pfx_tlb_remove_table_smp_sync+0x10/0x10
[   60.001346]  ? __pfx_tlb_remove_table_smp_sync+0x10/0x10
[   60.001350]  smp_call_function+0x39/0x70
[   60.001354]  collapse_huge_page+0x509/0x890
[   60.001361]  hpage_collapse_scan_pmd+0x376/0x8b0
[   60.001369]  khugepaged_scan_mm_slot.constprop.0+0x28e/0x500
[   60.001377]  khugepaged+0xd5/0x240
[   60.001380]  ? _raw_spin_unlock_irqrestore+0x4c/0x60
[   60.001388]  ? lockdep_hardirqs_on+0x7d/0x100
[   60.001396]  ? __pfx_khugepaged+0x10/0x10
[   60.001400]  kthread+0xf6/0x130
[   60.001405]  ? __pfx_kthread+0x10/0x10
[   60.001408]  ret_from_fork+0x30/0x50
[   60.001417]  ? __pfx_kthread+0x10/0x10
[   60.001419]  ret_from_fork_asm+0x1b/0x30
[   60.001427]  </TASK>
[   60.062651] Modules linked in:
[   60.063126] irq event stamp: 58300
[   60.063680] hardirqs last  enabled at (58299): [<ffffffff95e01046>] asm_=
sysvec_xen_hvm_callback+0x16/0x20
[   60.065189] hardirqs last disabled at (58300): [<ffffffff95ccc1ea>] sysv=
ec_xen_hvm_callback+0xa/0xc0
[   60.066633] softirqs last  enabled at (58098): [<ffffffff95cec89c>] __do=
_softirq+0x31c/0x423
[   60.067787] softirqs last disabled at (58089): [<ffffffff950bab91>] __ir=
q_exit_rcu+0x91/0x100
[   60.068928] CPU: 0 PID: 37 Comm: khugepaged Not tainted 6.6.0-rc5+ #1376
[   60.069786] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS =
rel-1.16.2-14-g1e1da7a96300-prebuilt.qemu.org 04/01/2014
[   60.071340] RIP: 0010:smp_call_function_many_cond+0x119/0x660
[   60.072100] Code: 7e 08 48 63 d0 e8 17 90 44 00 3b 05 e1 bf c5 01 73 25 =
48 63 d0 49 8b 36 48 03 34 d5 60 dc 55 96 8b 56 08 83 e2 01 74 0a f3 90 <8b=
> 4e 08 83 e1 01 75 f6 83 c0 01 eb c1 48 83 c4 38 5b 5d 41 5c 41
[   60.074795] RSP: 0018:ffffae458014fc00 EFLAGS: 00000202
[   60.075557] RAX: 0000000000000001 RBX: 0000000000000000 RCX: 00000000000=
00001
[   60.076509] RDX: 0000000000000001 RSI: ffff88f33ecb3e00 RDI: ffff88f3011=
12790
[   60.077465] RBP: 0000000000000000 R08: ffffffff96015000 R09: fffffffffff=
ffffc
[   60.078476] R10: ffffffff95cacbac R11: ffff88f301bd0d48 R12: 00000000000=
00000
[   60.079434] R13: 0000000000000001 R14: ffff88f33ec2f8c0 R15: 00000000000=
00001
[   60.080589] FS:  0000000000000000(0000) GS:ffff88f33ec00000(0000) knlGS:=
0000000000000000
[   60.081626] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[   60.082459] CR2: 00007f4cceba6818 CR3: 00000000021ec000 CR4: 00000000000=
006f0
[   60.083672] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 00000000000=
00000
[   60.085047] DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 00000000000=
00400
[   60.085994] Call Trace:
[   60.086283]  <IRQ>
[   60.086530]  ? watchdog_timer_fn+0x230/0x2a0
[   60.087084]  ? __pfx_watchdog_timer_fn+0x10/0x10
[   60.087603]  ? __hrtimer_run_queues+0x1b2/0x380
[   60.088307]  ? hrtimer_interrupt+0xfe/0x240
[   60.088931]  ? xen_timer_interrupt+0x29/0x40
[   60.089578]  ? __handle_irq_event_percpu+0x87/0x240
[   60.090420]  ? handle_irq_event_percpu+0xf/0x40
[   60.091083]  ? handle_percpu_irq+0x4f/0x70
[   60.091646]  ? handle_irq_desc+0x3a/0x50
[   60.092166]  ? evtchn_2l_handle_events+0x254/0x2a0
[   60.092716]  ? rcu_is_watching+0xd/0x40
[   60.093248]  ? lock_acquire+0xf2/0x110
[   60.093814]  ? xen_evtchn_do_upcall+0xa1/0x1b0
[   60.094482]  ? __sysvec_xen_hvm_callback+0x47/0x80
[   60.095262]  ? sysvec_xen_hvm_callback+0x99/0xc0
[   60.095978]  </IRQ>
[   60.096295]  <TASK>
[   60.096610]  ? asm_sysvec_xen_hvm_callback+0x16/0x20
[   60.097323]  ? mtree_load+0x8c/0x590
[   60.097872]  ? smp_call_function_many_cond+0x119/0x660
[   60.098796]  ? __pfx_tlb_remove_table_smp_sync+0x10/0x10
[   60.099599]  ? __pfx_tlb_remove_table_smp_sync+0x10/0x10
[   60.100515]  smp_call_function+0x39/0x70
[   60.101119]  collapse_huge_page+0x509/0x890
[   60.101920]  hpage_collapse_scan_pmd+0x376/0x8b0
[   60.102642]  khugepaged_scan_mm_slot.constprop.0+0x28e/0x500
[   60.103378]  khugepaged+0xd5/0x240
[   60.103884]  ? _raw_spin_unlock_irqrestore+0x4c/0x60
[   60.104659]  ? lockdep_hardirqs_on+0x7d/0x100
[   60.105364]  ? __pfx_khugepaged+0x10/0x10
[   60.105945]  kthread+0xf6/0x130
[   60.106363]  ? __pfx_kthread+0x10/0x10
[   60.106808]  ret_from_fork+0x30/0x50
[   60.107239]  ? __pfx_kthread+0x10/0x10
[   60.107769]  ret_from_fork_asm+0x1b/0x30
[   60.108430]  </TASK>


--=-lqk5afWkZIU/xhDN86Y/
Content-Type: application/pkcs7-signature; name="smime.p7s"
Content-Disposition: attachment; filename="smime.p7s"
Content-Transfer-Encoding: base64

MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgEFADCABgkqhkiG9w0BBwEAAKCCEkQw
ggYQMIID+KADAgECAhBNlCwQ1DvglAnFgS06KwZPMA0GCSqGSIb3DQEBDAUAMIGIMQswCQYDVQQG
EwJVUzETMBEGA1UECBMKTmV3IEplcnNleTEUMBIGA1UEBxMLSmVyc2V5IENpdHkxHjAcBgNVBAoT
FVRoZSBVU0VSVFJVU1QgTmV0d29yazEuMCwGA1UEAxMlVVNFUlRydXN0IFJTQSBDZXJ0aWZpY2F0
aW9uIEF1dGhvcml0eTAeFw0xODExMDIwMDAwMDBaFw0zMDEyMzEyMzU5NTlaMIGWMQswCQYDVQQG
EwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYD
VQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50
aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC
AQEAyjztlApB/975Rrno1jvm2pK/KxBOqhq8gr2+JhwpKirSzZxQgT9tlC7zl6hn1fXjSo5MqXUf
ItMltrMaXqcESJuK8dtK56NCSrq4iDKaKq9NxOXFmqXX2zN8HHGjQ2b2Xv0v1L5Nk1MQPKA19xeW
QcpGEGFUUd0kN+oHox+L9aV1rjfNiCj3bJk6kJaOPabPi2503nn/ITX5e8WfPnGw4VuZ79Khj1YB
rf24k5Ee1sLTHsLtpiK9OjG4iQRBdq6Z/TlVx/hGAez5h36bBJMxqdHLpdwIUkTqT8se3ed0PewD
ch/8kHPo5fZl5u1B0ecpq/sDN/5sCG52Ds+QU5O5EwIDAQABo4IBZDCCAWAwHwYDVR0jBBgwFoAU
U3m/WqorSs9UgOHYm8Cd8rIDZsswHQYDVR0OBBYEFAnA8vwL2pTbX/4r36iZQs/J4K0AMA4GA1Ud
DwEB/wQEAwIBhjASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEF
BQcDBDARBgNVHSAECjAIMAYGBFUdIAAwUAYDVR0fBEkwRzBFoEOgQYY/aHR0cDovL2NybC51c2Vy
dHJ1c3QuY29tL1VTRVJUcnVzdFJTQUNlcnRpZmljYXRpb25BdXRob3JpdHkuY3JsMHYGCCsGAQUF
BwEBBGowaDA/BggrBgEFBQcwAoYzaHR0cDovL2NydC51c2VydHJ1c3QuY29tL1VTRVJUcnVzdFJT
QUFkZFRydXN0Q0EuY3J0MCUGCCsGAQUFBzABhhlodHRwOi8vb2NzcC51c2VydHJ1c3QuY29tMA0G
CSqGSIb3DQEBDAUAA4ICAQBBRHUAqznCFfXejpVtMnFojADdF9d6HBA4kMjjsb0XMZHztuOCtKF+
xswhh2GqkW5JQrM8zVlU+A2VP72Ky2nlRA1GwmIPgou74TZ/XTarHG8zdMSgaDrkVYzz1g3nIVO9
IHk96VwsacIvBF8JfqIs+8aWH2PfSUrNxP6Ys7U0sZYx4rXD6+cqFq/ZW5BUfClN/rhk2ddQXyn7
kkmka2RQb9d90nmNHdgKrwfQ49mQ2hWQNDkJJIXwKjYA6VUR/fZUFeCUisdDe/0ABLTI+jheXUV1
eoYV7lNwNBKpeHdNuO6Aacb533JlfeUHxvBz9OfYWUiXu09sMAviM11Q0DuMZ5760CdO2VnpsXP4
KxaYIhvqPqUMWqRdWyn7crItNkZeroXaecG03i3mM7dkiPaCkgocBg0EBYsbZDZ8bsG3a08LwEsL
1Ygz3SBsyECa0waq4hOf/Z85F2w2ZpXfP+w8q4ifwO90SGZZV+HR/Jh6rEaVPDRF/CEGVqR1hiuQ
OZ1YL5ezMTX0ZSLwrymUE0pwi/KDaiYB15uswgeIAcA6JzPFf9pLkAFFWs1QNyN++niFhsM47qod
x/PL+5jR87myx5uYdBEQkkDc+lKB1Wct6ucXqm2EmsaQ0M95QjTmy+rDWjkDYdw3Ms6mSWE3Bn7i
5ZgtwCLXgAIe5W8mybM2JzCCBhQwggT8oAMCAQICEQDGvhmWZ0DEAx0oURL6O6l+MA0GCSqGSIb3
DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYD
VQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28g
UlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMB4XDTIyMDEwNzAw
MDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJARYTZHdtdzJAaW5mcmFkZWFkLm9y
ZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3GpC2bomUqk+91wLYBzDMcCj5C9m6
oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZHh7htyAkWYVoFsFPrwHounto8xTsy
SSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT9YgcBqKCo65pTFmOnR/VVbjJk4K2
xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNjP+qDrh0db7PAjO1D4d5ftfrsf+kd
RR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy2U+eITZ5LLE5s45mX2oPFknWqxBo
bQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3BgBEmfsYWlBXO8rVXfvPgLs32VdV
NZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/7auNVRmPB3v5SWEsH8xi4Bez2V9U
KxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmdlFYhAflWKQ03Ufiu8t3iBE3VJbc2
5oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9aelIl6vtbhMA+l0nfrsORMa4kobqQ5
C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMBAAGjggHMMIIByDAfBgNVHSMEGDAW
gBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeDMcimo0oz8o1R1Nver3ZVpSkwDgYD
VR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYwFAYIKwYBBQUHAwQGCCsGAQUFBwMC
MEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYBBQUHAgEWF2h0dHBzOi8vc2VjdGln
by5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9jcmwuc2VjdGlnby5jb20vU2VjdGln
b1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1haWxDQS5jcmwwgYoGCCsGAQUFBwEB
BH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdvLmNvbS9TZWN0aWdvUlNBQ2xpZW50
QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAjBggrBgEFBQcwAYYXaHR0cDovL29j
c3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5mcmFkZWFkLm9yZzANBgkqhkiG9w0B
AQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQvQ/fzPXmtR9t54rpmI2TfyvcKgOXp
qa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvIlSPrzIB4Z2wyIGQpaPLlYflrrVFK
v9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9ChWFfgSXvrWDZspnU3Gjw/rMHrGnql
Htlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0whpBtXdyDjzBtQTaZJ7zTT/vlehc/
tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9IzCCBhQwggT8oAMCAQICEQDGvhmW
Z0DEAx0oURL6O6l+MA0GCSqGSIb3DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3Jl
YXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0
ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJl
IEVtYWlsIENBMB4XDTIyMDEwNzAwMDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJ
ARYTZHdtdzJAaW5mcmFkZWFkLm9yZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3
GpC2bomUqk+91wLYBzDMcCj5C9m6oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZH
h7htyAkWYVoFsFPrwHounto8xTsySSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT
9YgcBqKCo65pTFmOnR/VVbjJk4K2xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNj
P+qDrh0db7PAjO1D4d5ftfrsf+kdRR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy
2U+eITZ5LLE5s45mX2oPFknWqxBobQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3
BgBEmfsYWlBXO8rVXfvPgLs32VdVNZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/
7auNVRmPB3v5SWEsH8xi4Bez2V9UKxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmd
lFYhAflWKQ03Ufiu8t3iBE3VJbc25oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9ae
lIl6vtbhMA+l0nfrsORMa4kobqQ5C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMB
AAGjggHMMIIByDAfBgNVHSMEGDAWgBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeD
Mcimo0oz8o1R1Nver3ZVpSkwDgYDVR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYw
FAYIKwYBBQUHAwQGCCsGAQUFBwMCMEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYB
BQUHAgEWF2h0dHBzOi8vc2VjdGlnby5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9j
cmwuc2VjdGlnby5jb20vU2VjdGlnb1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1h
aWxDQS5jcmwwgYoGCCsGAQUFBwEBBH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdv
LmNvbS9TZWN0aWdvUlNBQ2xpZW50QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAj
BggrBgEFBQcwAYYXaHR0cDovL29jc3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5m
cmFkZWFkLm9yZzANBgkqhkiG9w0BAQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQv
Q/fzPXmtR9t54rpmI2TfyvcKgOXpqa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvI
lSPrzIB4Z2wyIGQpaPLlYflrrVFKv9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9Ch
WFfgSXvrWDZspnU3Gjw/rMHrGnqlHtlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0w
hpBtXdyDjzBtQTaZJ7zTT/vlehc/tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9
IzGCBMcwggTDAgEBMIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVz
dGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMT
NVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEA
xr4ZlmdAxAMdKFES+jupfjANBglghkgBZQMEAgEFAKCCAeswGAYJKoZIhvcNAQkDMQsGCSqGSIb3
DQEHATAcBgkqhkiG9w0BCQUxDxcNMjMxMDI0MDgyNTIxWjAvBgkqhkiG9w0BCQQxIgQgUieZcOP6
Wo1GwwWznniiJ6V+SAZJQ3QMgQCo3Gs462gwgb0GCSsGAQQBgjcQBDGBrzCBrDCBljELMAkGA1UE
BhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEYMBYG
A1UEChMPU2VjdGlnbyBMaW1pdGVkMT4wPAYDVQQDEzVTZWN0aWdvIFJTQSBDbGllbnQgQXV0aGVu
dGljYXRpb24gYW5kIFNlY3VyZSBFbWFpbCBDQQIRAMa+GZZnQMQDHShREvo7qX4wgb8GCyqGSIb3
DQEJEAILMYGvoIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVy
MRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNl
Y3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEAxr4Z
lmdAxAMdKFES+jupfjANBgkqhkiG9w0BAQEFAASCAgAlB3+373e0j9T6bvNiTKGlAFYbNUSQ2VsS
Bl+/BLnHUDyMzVlvRRe126FBYEnWJfc7sz6hgzzRpzYSUfrPNRURQ1xFN3Bn0FO61jEZEfUcNsaN
fyFuUkThPQyWGq/9G49qblPTZd2FmWqLpGsdmSKo68MeMaoPQfdAlHaqWueyPNzh3aOyJ9c8E6Ip
cHCZupEMeXDxl8MzysvfhuM4prIFumc4pmuVT+epvuwK8qDDLCYljf/cmnUmL1ddUftYsCOqXotP
RB+EEpp8eZw/ESACyGHBb+oVqhj2FETXSRoOvZ4XJxQuckYSFpPD55CjWpfHo+JLQJ6Yp+Fe2W29
mrniE4Kli0aPM0T0N4W1g84l+vTOMIeBeBYzdW1/ydqYtkwcGCUuqr++VDNa2ZW0oCIH7N6KiYR1
CM/MkkmENjo2lmAmouI+QawkBmza90HvkNwHBXTuahzeZTUQXzFs0pooZ1/SlVSiawqRxotct8NW
jdqAYonjKx4dlRCx+3BhQUK9VQ4dRXfYTKWnUeLS4s/7uekvWQY1qdTFE3KfMMACeaYpHmqAaRhs
3we14pQvT0yEVUQ3nCRz0ERNgnMiEeAUe4ktsk1/cmBP873gDJ7ezeaLptaStH0Zh/ZaLp0jA8YD
5k8oYdPxt1pjtkviXK4986nJhb5FMPV1RaAi/X8+kQAAAAAAAA==


--=-lqk5afWkZIU/xhDN86Y/--


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 09:17:02 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 09:17:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621774.968556 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvDWq-0004OL-1l; Tue, 24 Oct 2023 09:16:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621774.968556; Tue, 24 Oct 2023 09: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 1qvDWp-0004OE-V0; Tue, 24 Oct 2023 09:16:47 +0000
Received: by outflank-mailman (input) for mailman id 621774;
 Tue, 24 Oct 2023 09:16: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 1qvDWo-0004Mh-E9; Tue, 24 Oct 2023 09:16: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 1qvDWl-0003FG-M7; Tue, 24 Oct 2023 09:16: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 1qvDWl-0005y2-3r; Tue, 24 Oct 2023 09:16:43 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qvDWl-0006Po-3K; Tue, 24 Oct 2023 09: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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=MYs7b8PdbC7+ZLiapkXzMmGiNA94KD/NI9sEHIZ75wE=; b=w9VG8CbTtCCfVY64MZD8ClwCHI
	zsYuPDU19ZfOOJIO6YI4gSo2jhG0vUVXZuGknOsgXLB7lur8/ZdStn6qP8tSsHnh1yDhbjKBWpHzR
	rFE6rZWWaZaeeM8KnPG5BNteFBbLnGEArxRfEHy/rR6ojsd2qOljL2sSJlrlRVCzB7NY=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183502-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 183502: regressions - FAIL
X-Osstest-Failures:
    xen-unstable:build-arm64-pvops:kernel-build:fail:regression
    xen-unstable:test-amd64-i386-libvirt-xsm:xen-install:fail:heisenbug
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:guest-start/debianhvm.repeat:fail:heisenbug
    xen-unstable:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:debian-hvm-install:fail:heisenbug
    xen-unstable:test-armhf-armhf-libvirt-qcow2:guest-start: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-armhf-armhf-libvirt-qcow2: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-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-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-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: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-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-xl-qemuu-win7-amd64:guest-stop: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-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-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-arndale:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:saverestore-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-libvirt:migrate-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-amd64-i386-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-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:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=bad1ac345b1910b820b8a703ad1b9f66412ea844
X-Osstest-Versions-That:
    xen=bad1ac345b1910b820b8a703ad1b9f66412ea844
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 24 Oct 2023 09:16:43 +0000

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

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. 183493

Tests which are failing intermittently (not blocking):
 test-amd64-i386-libvirt-xsm   7 xen-install      fail in 183489 pass in 183502
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 18 guest-start/debianhvm.repeat fail in 183489 pass in 183502
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 12 debian-hvm-install fail in 183489 pass in 183502
 test-armhf-armhf-libvirt-qcow2 13 guest-start              fail pass in 183489

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-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail in 183489 like 183453
 test-arm64-arm64-xl-thunderx 15 migrate-support-check fail in 183489 never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail in 183489 never pass
 test-arm64-arm64-xl-credit1 15 migrate-support-check fail in 183489 never pass
 test-arm64-arm64-xl-credit1 16 saverestore-support-check fail in 183489 never pass
 test-arm64-arm64-xl         15 migrate-support-check fail in 183489 never pass
 test-arm64-arm64-xl-xsm     15 migrate-support-check fail in 183489 never pass
 test-arm64-arm64-xl     16 saverestore-support-check fail in 183489 never pass
 test-arm64-arm64-xl-xsm 16 saverestore-support-check fail in 183489 never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail in 183489 never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail in 183489 never pass
 test-arm64-arm64-xl-credit2 15 migrate-support-check fail in 183489 never pass
 test-arm64-arm64-xl-credit2 16 saverestore-support-check fail in 183489 never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check fail in 183489 never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail in 183489 never pass
 test-arm64-arm64-xl-vhd     14 migrate-support-check fail in 183489 never pass
 test-arm64-arm64-xl-vhd 15 saverestore-support-check fail in 183489 never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail in 183489 never pass
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183493
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183493
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 183493
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183493
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 183493
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183493
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 183493
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183493
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183493
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 183493
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183493
 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-amd64-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-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-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-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-amd64-amd64-libvirt     15 migrate-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-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-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          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 xen                  bad1ac345b1910b820b8a703ad1b9f66412ea844
baseline version:
 xen                  bad1ac345b1910b820b8a703ad1b9f66412ea844

Last test of basis   183502  2023-10-24 01:55:12 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                 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                                      blocked 
 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                                  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                                 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 Tue Oct 24 09:33:41 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 09:33:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621780.968570 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvDn3-0007zr-DE; Tue, 24 Oct 2023 09:33:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621780.968570; Tue, 24 Oct 2023 09:33: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 1qvDn3-0007zk-A4; Tue, 24 Oct 2023 09:33:33 +0000
Received: by outflank-mailman (input) for mailman id 621780;
 Tue, 24 Oct 2023 09:33: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=krZT=GG=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qvDn1-0007x0-MW
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 09:33:31 +0000
Received: from EUR02-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur02on20610.outbound.protection.outlook.com
 [2a01:111:f400:fe16::610])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 62596d51-7250-11ee-98d5-6d05b1d4d9a1;
 Tue, 24 Oct 2023 11:33:27 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PAXPR04MB8670.eurprd04.prod.outlook.com (2603:10a6:102:21d::15)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.11; Tue, 24 Oct
 2023 09:33:24 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6933.011; Tue, 24 Oct 2023
 09:33: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: 62596d51-7250-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=DluhwJQpubRDl4aafl1z8FDZwZptr6L2WMpiPnWWIDT4OuOqocw9gQ76FPZkx2H3kLnBHPBUwALqRgpPRA5X5hVJ/1RQSCzDWPGnuxhv9aAAbf+9oA8e54kpMmPPhz/mVG08MaB5Ypy8LRwD74f0xehbR8xtWo+BX4ZtWTSQ8NieZwt0kCR2cmGaECH4QYlWMpzYGt9tfEmDnse0+SFUq+CgmBoE5uoISVa08O2ef9PnpTmWtNL1XO45ndyf0/G1SHBq0dCUEx+nwFrfdImuu6zASSDKyyBBKkmUtZ5mKsqPq3p/vlM7AZ99zIGtv+VASX915FTvSe2U/bpILeb8iA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=ToeKBogxLrArv+qO9UF73wQkr91/0cvOLAU+bZEDLkk=;
 b=CdjL0GtGH1TJYv3l/92xk+NS5+nnUQM6bP4HINGYWA/eh/BqDVmZeT4Lxsm7zELQN65bFvNNzHiQ8zJaBsUIOqmPBE/ud5v/VhE+R7miGIzT4aVpt6onfHC0Uy+e17Iy8x+s87Shec7F40YOr59Pnif8kcnj0/bjQX7HFypqTsYf9GDJGLfh4huppZD8iwXPY1hvcWqp1w9AariLDiG4VXyekdAwZkd1kGSzkO2JTOcSErlvT7q91cUminINe6CJ6L8V/eGAmNTVhYdPDE+TnsUpmA0uwzEqQay7qKDwTtHa5GuscEW6G1YmrweKWwagR+/+vJTQwleVsEN/AHygUw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=ToeKBogxLrArv+qO9UF73wQkr91/0cvOLAU+bZEDLkk=;
 b=wt+KDXuD15hDniS/Q1ZRePW4m3BREx5bMwHvecq/uACJ+rGlPd4cxpL+WXc1HPyyWw+UkqNxzIs68Ki9O4Q55MpuRrQhVB58D1F0mb9WKp1Kc/S1IjKFcjtX21m2FeFA4la22NoNHqf7FUKb/Y+c8OaMusa2mEIFAsS+4PSsgvp/uG0Tb6nAH/Vv9HFt8wcGTD6sbWKUEWx8goj7wh/WvxW3CMZk8nh+J6jObMIdhoxsMtCf6OUc6UisaZX2b9B9KwLBeawdxJKKrWrKjjqIPaxSO+rfuYct6f2ZeoiQZD7OHXWFbQvjXTA4ly/3nLpuuEpGL236FBdR2Rk1u0mptQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <a525cc49-69e7-c509-61d4-a2456b3fdbcc@suse.com>
Date: Tue, 24 Oct 2023 11:33: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 v2] 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: <20231023124635.44266-1-roger.pau@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20231023124635.44266-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR0P281CA0188.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:ab::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_|PAXPR04MB8670:EE_
X-MS-Office365-Filtering-Correlation-Id: 2125cefc-7751-4536-91b1-08dbd47444b9
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	uLC0O50/WHiZGst8O2QNEWsMpY7iuG2U0OBROcPwFLYiY24wC1auyk8hGV+RXrHSHt++rjhzbvn0LWwk8lfne6jo2PSdq3tdf87LlSWKBOwhtZO4gCPtGVAyR/MeX+npLWALS1avpqO0/v/AQ9WTQoLBaxeipc+nQ2ct/LtQcqEAGgwf26540QsUakxxUBcyXbPbOaV6NRlnyhatpIxHBkwW44CCj6jakRdSaBk87Aw1rT8hzPQ5GYoj5J5SK3fWNZbA4ujdc7GROXEJ5tV8Y1b6in4bMOnvM7dW28QDZ6eeH70LUiXT13d4wWcju53QteWdpA1o1aPDEw2CiFtsPhxZ0P+RiVprayGs5Nn5KaoGbJ/qrw26wDMaN15/n2i8PfkIzC5j9Xdso4BpbbyIobIdEvhWPxG+MkniPLH72HQTkFweP31ZzSB09DJ5lSBUz0qt/B2gZpszquaNWPi13NBZQJHGdIi31roWRzSFpZayNBhQFvocKFGCWUFnCfzY8NL/1TTQb4P/kgNV4ur58eS5KklZS655QIEa9ePp8nUjcWgbIvpeZcyXjXhjrNIqc7mJUc3RB6r4P5Igiit5rhjA+4OdoorwQkA5AkksDnHSTJpUoPlfCqKZGBln/KmF54nGpdkImtxpB1IerDo17A==
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)(376002)(136003)(39860400002)(230922051799003)(1800799009)(186009)(451199024)(64100799003)(83380400001)(53546011)(6506007)(6512007)(38100700002)(26005)(6916009)(66556008)(54906003)(66476007)(66946007)(31686004)(6486002)(478600001)(2616005)(316002)(4326008)(5660300002)(8936002)(2906002)(31696002)(41300700001)(36756003)(8676002)(86362001)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?U3QyeVdwZ2YvalRPOG81c1oyVFlnNDlISERmYzVRNmxveHZlZ2o2STIzWFc2?=
 =?utf-8?B?a0FaQUFQU2hsRDQrSXh5S0NpaysxR3VZRmZ0V2ltNm9sSWF4TTJWM3hiTDhF?=
 =?utf-8?B?VGJFbVdTbllxekpmdkN6WmZjYnB1MTJJV0Q3SEJUZGV6ZzgvSnRoNnoySzAw?=
 =?utf-8?B?Wmt0WXR2NDNwcTdncXF1NmJnS3ZnSTBPRm9Fa1Zhb0tKaCtrSnJLSjQ0NC9P?=
 =?utf-8?B?TWdOOVB0dmxVNFFhdmQ5Q3FXeVVVbUtkTThicm04emE4cDNBZE1rbkpnRFE5?=
 =?utf-8?B?WWRMMVp5NTVONXdCYjAwZG1EUjdYZ3VXUVNnMG5yVEJNcTlmbWZ1Nk04UTJ1?=
 =?utf-8?B?Y2ZGbFJBaXJIRm9QL3hLa2xtV0YrK0JJS2hOUFROcWJ0WWUrOElIcGd4V1pC?=
 =?utf-8?B?NWRQYUtJV3hneFdMTjdabmptbnoweEpwU3c1ZXhRWlBrSDlZV3hjQWNMbVc1?=
 =?utf-8?B?eEEwekc1VldoSk9kNmY5bGE4QVVDSWJPcC85VzJVSXI5ZFpQU01UYzFUbVZk?=
 =?utf-8?B?aTlyK1BNYXlXM2hOSmo2c25VRVRKeHA5QmFPYnpscmhqYzFNcG5wOXlPbFFm?=
 =?utf-8?B?TmxnbUZjRUdlbWZzQ1luTTIyKzNTd1VCWTk5WGpyT3dKd2liTk90U3BPOE5M?=
 =?utf-8?B?YVFiNC9tR1lRNG94V3B3R1huWGJrQnBjRGE1cVRPMkhOdlBIdkRNcUs0NEl3?=
 =?utf-8?B?Z21WVENmMTd5dmtIZzFNZzBPeHlOU2NWMEUyVE40d1BKQ1FCOGE0Nk1DUEdp?=
 =?utf-8?B?N0lYS1hTWTJFY1NwYTNIVStyNDVqVGx1SHRaT2REYndpOG1iS3BlRTRtdjNK?=
 =?utf-8?B?SmcveUxBUzFXUVdBSHJlSFRsVWdOK0FkNVZCZ21xSkQ4d2JtOGFWUzRpWndt?=
 =?utf-8?B?Q2xhMFB4cUU2R3RMOW42VjZVWjBkVjlaa253RUZFS1NMa2lCYnk1TzJpZ05q?=
 =?utf-8?B?cGQ5dTZxWmx2Tm1jTVRnbFBPWTQxWmU0T0xydXJoV0doQnplRWtQT0RwQ3Zz?=
 =?utf-8?B?TmhKaEpuSWNZYXFIanhwOUdoUUtUWituelpRdWNlVyt5UzB6UzFYeit0L3Rz?=
 =?utf-8?B?ZkJUTUI2ekZ6akQ2eFpDMk4ybldiUVpGeG5aNkJuUkttdlI3OUVCR1hjNFV6?=
 =?utf-8?B?aU8rcWdQci81QWdINERtc1paMENRdlpZZUUwUElmbVl0czZSbHNIdW55bWN6?=
 =?utf-8?B?dVQ2L2M3QWdKbmdMMDl0WVpKcTk2K3JPcTdObFVyMHpTV0Fmak5NNkZpRTZM?=
 =?utf-8?B?emRyQ2xKMndsS211eVQvdWwyemg1dHhtMnN0b2pGNFI4VGwrOXpJNUUzcHV3?=
 =?utf-8?B?Ykk3TlFmSGRMYjRqWlEwc0JRaHp5MzN4THFsZ3VKN3V4amh4Q1VqaTJxL1o1?=
 =?utf-8?B?b0VMakF2VHNFQ2pabXhHcVlGbFhPajFxU3lrb0hheXpwbk8reThMZEh6OU5N?=
 =?utf-8?B?R05zc3RSc2s5UTNnMWEzTFpLZEk0cTRMS0NHMnVEOGlMNTJYSFVFcWJtcDZO?=
 =?utf-8?B?VlAwcU1iNDR2QnJwenJnU3NLa2VpaG80Mmp6NU1NOGxHam1NM1RlR1dKYUl6?=
 =?utf-8?B?bUh5WGIxQ3dyWHBsQzMvS0hHVTVOOXB0cWdRc05ITW50UEN6cWp2eTZIYlor?=
 =?utf-8?B?NlNrc0RTTWJWYVNIL0tHTWV0MWgxRFBYOUF2Z1B1OUYwaE9CdStYUEl6MWZ1?=
 =?utf-8?B?MjFsS0dKNW92cnd6ekpEVldQM043Zjd2cWg2aVlnMzJ6dVdscVZLRHdITDVW?=
 =?utf-8?B?ZDdpYzRaa3hSaHlEdnJ3QUhSSFNCK0h1UlBERTBmYlZnOENyQUJEbzUxcGND?=
 =?utf-8?B?di9WS2hFZVhXeEk0dXBDMVVsNGV6MkdnQnl5SU9TeDdwVUUvM2RrR01WVytU?=
 =?utf-8?B?akwxWjJRVE1BcDJjaFh0T0JSL3M3L1pidGtWeTJTK1YvMFkwMU9QS3EwQ285?=
 =?utf-8?B?dVFLQkFzWnMyVUpEZm1HcnBOSkgwMDVIa3Z1RWlob3RYU3FxbmJtVkdiN0hF?=
 =?utf-8?B?NnI5OUZRVytWV0NaKzAwUWlwc21DTU01VGE2OVZYbGY1OC9renRVdDRmY25V?=
 =?utf-8?B?Uys3eWVaaGRPb2RXUVRJWlNuUEJ2Mk1FVjNkNlBYSDkzUlJ4aHpSV0ttUHNO?=
 =?utf-8?Q?JqKQxlItPRRjUXdlmU3yLD7N0?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 2125cefc-7751-4536-91b1-08dbd47444b9
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 24 Oct 2023 09:33:23.8572
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: hi1Wh8+1elfhzMB2Ne9S5Y7UJlkSnW5T2OL1c4Kpdo0znqwVqKlf4G3Df2JfyJNl8pUwInFEf0Bxb102LvWk6g==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB8670

On 23.10.2023 14:46, 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
> observed i8259 (active) vectors getting delivered to CPUs different than 0.
> 
> On AMD or Hygon platforms 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 would need to be handled on all CPUs.
> 
> Do not reserve the PIC spurious vectors on all CPUs, but do check for such
> spurious interrupts on all CPUs if the vendor is AMD or Hygon.

The first half of this sentence reads as if it was describing a change,
but aiui there's no change to existing behavior in this regard anymore.
Maybe use something like "continue to reserve PIC vectors on CPU0 only"?

>  Note that once
> the vectors get used by devices detecting PIC spurious interrupts will no
> longer be possible, however the device should be able to cope with spurious
> interrupt.  Such PIC spurious interrupts occurring when the vector is in use by
> a local APIC routed source will lead to an extra EOI, which might
> unintentionally clear a different vector from ISR.  Note this is already the
> current behavior, so assume it's infrequent enough to not cause real issues.
> 
> Finally, 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>
> ---
> Changes since v1:
>  - Do not reserved spurious PIC vectors on APs, but still check for spurious
>    PIC interrupts.
>  - Reword commit message.
> ---
> Not sure if the Fixes tag is the most appropriate here, since AFAICT this is a
> hardware glitch, but it makes it easier to see to which versions the fix should
> be backported, because Xen previous behavior was to reserve all legacy vectors
> on all CPUs.

I'm inclined to suggest to (informally) invent an Amends: tag.

> --- a/xen/arch/x86/i8259.c
> +++ b/xen/arch/x86/i8259.c
> @@ -37,6 +37,15 @@ static bool _mask_and_ack_8259A_irq(unsigned int irq);
>  
>  bool bogus_8259A_irq(unsigned int irq)
>  {
> +    if ( smp_processor_id() &&
> +         !(boot_cpu_data.x86_vendor & (X86_VENDOR_AMD | X86_VENDOR_HYGON)) )
> +        /*
> +         * For AMD/Hygon do spurious PIC interrupt detection on all CPUs, as it
> +         * has been observed that during unknown circumstances spurious PIC
> +         * interrupts have been delivered to CPUs different than the BSP.
> +         */
> +        return false;
> +
>      return !_mask_and_ack_8259A_irq(irq);
>  }

I don't think this function should be changed; imo the adjustment belongs
at the call site.

> @@ -349,7 +359,22 @@ 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.
> +         * Note this behavior has only been observed on AMD hardware. In order
> +         * to cope install all active legacy vectors on all CPUs.
> +         *
> +         * IO-APIC will change the destination mask if/when taking ownership of
> +         * the interrupt.
> +         */
> +        cpumask_copy(desc->arch.cpu_mask, boot_cpu_data.x86_vendor &
> +                                          (X86_VENDOR_AMD | X86_VENDOR_HYGON) ?
> +                                          &cpumask_all : cpumask_of(cpu));

Nit: Imo this would better be wrapped as

        cpumask_copy(desc->arch.cpu_mask,
                     boot_cpu_data.x86_vendor &
                     (X86_VENDOR_AMD | X86_VENDOR_HYGON) ?
                     &cpumask_all : cpumask_of(cpu));

or (considering how we often prefer to wrap conditional operators)

        cpumask_copy(desc->arch.cpu_mask,
                     boot_cpu_data.x86_vendor &
                     (X86_VENDOR_AMD | X86_VENDOR_HYGON)
                     ? &cpumask_all : cpumask_of(cpu));

or

        cpumask_copy(desc->arch.cpu_mask,
                     boot_cpu_data.x86_vendor &
                     (X86_VENDOR_AMD | X86_VENDOR_HYGON) ? &cpumask_all
                                                         : cpumask_of(cpu));

, possibly with the argument spanning three lines additionally
parenthesized as a whole.

(Of course an amd_like() construct like we have in the emulator would
further help readability here, but the way that works it cannot be
easily generalized for use outside of the emulator.)

Jan


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 10:09:39 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 10:09:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621784.968580 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvELs-0005b7-5b; Tue, 24 Oct 2023 10:09:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621784.968580; Tue, 24 Oct 2023 10:09: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 1qvELs-0005b0-2P; Tue, 24 Oct 2023 10:09:32 +0000
Received: by outflank-mailman (input) for mailman id 621784;
 Tue, 24 Oct 2023 10:09: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 1qvELq-0005au-QI
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 10:09: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 1qvELq-0004g1-9g; Tue, 24 Oct 2023 10:09:30 +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 1qvELq-0005qh-0F; Tue, 24 Oct 2023 10:09: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=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:MIME-Version:Message-Id:Date:
	Subject:Cc:To:From; bh=/nOMeehIJeVAJWZX97QRpxOFWzxOFIMgOSDEHFUYH9g=; b=43QEbr
	mL8x68O4HnevGHQRqLDDuGmyopI6WA/WbGpWiZFZcn6wc31aF1gFSlaupD6S6UgLaUiv2QkAq2ko3
	vvrp+LMdSN3Nr1Ew8SOMPvEtBrX7NuCLLVHGSmixnSjOd85q9RSBlWoN9yMsH+qV6PZkAJ01sYty0
	vhr6cDkUwaU=;
From: Julien Grall <julien@xen.org>
To: xen-devel@lists.xenproject.org
Cc: Henry.Wang@arm.com,
	michal.orzel@amd.com,
	Julien Grall <jgrall@amazon.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 for-4.19] docs/arm: Document where Xen should be loaded in memory
Date: Tue, 24 Oct 2023 11:09:23 +0100
Message-Id: <20231024100923.12724-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>

In commit 9d267c049d92 ("xen/arm64: Rework the memory layout"),
we decided to require Xen to be loaded below 5 TiB to simplify
the logic to enable the MMU. The limit was decided based on
how known platform boot plus some slack.

We had a recent report that this is not sufficient on the AVA
platform with a old firmware [1]. But the restriction is not
going to change in Xen 4.18. So document the limit clearly
in docs/misc/arm/booting.txt

Signed-off-by: Julien Grall <jgrall@amazon.com>

----

I couldn't find a nice way to document it in SUPPORT.md. So I decided
to only document the restrict in docs/misc/arm/booting.txt for now.

I also couldn't find any way from GRUB/UEFI (I didn't look much) to
specify the loading address.
---
 docs/misc/arm/booting.txt | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/docs/misc/arm/booting.txt b/docs/misc/arm/booting.txt
index 02f7bb65ec6d..c6bdeafe5e5b 100644
--- a/docs/misc/arm/booting.txt
+++ b/docs/misc/arm/booting.txt
@@ -21,6 +21,10 @@ The exceptions to this on 32-bit ARM are as follows:
  zImage protocol should still be used and not the stricter "raw
  (non-zImage)" protocol described in arm/Booting.
 
+The exceptions to this on 64-bit ARM are as follows:
+
+ Xen binary should be loaded in memory below 2 TiB.
+
 There are no exception on 64-bit ARM.
 
 Booting Guests
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Tue Oct 24 10:12:29 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 10:12:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621794.968590 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvEOh-00070z-Jm; Tue, 24 Oct 2023 10:12:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621794.968590; Tue, 24 Oct 2023 10:12: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 1qvEOh-00070s-Ge; Tue, 24 Oct 2023 10:12:27 +0000
Received: by outflank-mailman (input) for mailman id 621794;
 Tue, 24 Oct 2023 10:12: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 1qvEOg-00070m-FL
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 10:12: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 1qvEOg-0004kt-4r; Tue, 24 Oct 2023 10:12:26 +0000
Received: from 54-240-197-227.amazon.com ([54.240.197.227]
 helo=[192.168.12.80]) by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qvEOf-00064N-V9; Tue, 24 Oct 2023 10:12: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=WW7KyOF0YYzYrFAS6L8+3C/I5C2dRsyUWj2AVPlfGDw=; b=tXg7vfVei/Mb1DeWphM7h0TZin
	+XfZfkrNfM66ZeK0FvrhC+GEL/cl1VJ7LFzpUJkXwoWgiDShfRIBhNkqshmIZx6xpDnExloAv4k16
	NxHvsMsOHo9O1rZh8bn0NEOLcp+pNoPxXlqynLYh4V6HGHsjKuTW34yKCLBxKtHHFvBQ=;
Message-ID: <70726f92-51d5-42c9-9eeb-422ca8eecd79@xen.org>
Date: Tue, 24 Oct 2023 11:12:24 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH for-4.19] docs/arm: Document where Xen should be loaded in
 memory
Content-Language: en-GB
To: xen-devel@lists.xenproject.org
Cc: Henry.Wang@arm.com, michal.orzel@amd.com, Julien Grall
 <jgrall@amazon.com>, Stefano Stabellini <sstabellini@kernel.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
References: <20231024100923.12724-1-julien@xen.org>
From: Julien Grall <julien@xen.org>
In-Reply-To: <20231024100923.12724-1-julien@xen.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit



On 24/10/2023 11:09, Julien Grall wrote:
> From: Julien Grall <jgrall@amazon.com>
> 
> In commit 9d267c049d92 ("xen/arm64: Rework the memory layout"),
> we decided to require Xen to be loaded below 5 TiB to simplify
> the logic to enable the MMU. The limit was decided based on
> how known platform boot plus some slack.
> 
> We had a recent report that this is not sufficient on the AVA
> platform with a old firmware [1]. But the restriction is not
> going to change in Xen 4.18. So document the limit clearly
> in docs/misc/arm/booting.txt

I forgot to add a link to

[1] 20231013122658.1270506-3-leo.yan@linaro.org

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 10:14:18 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 10:14:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621800.968599 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvEQT-00082n-Tv; Tue, 24 Oct 2023 10:14:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621800.968599; Tue, 24 Oct 2023 10:14: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 1qvEQT-00082g-RK; Tue, 24 Oct 2023 10:14:17 +0000
Received: by outflank-mailman (input) for mailman id 621800;
 Tue, 24 Oct 2023 10:14: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=JtWs=GG=citrix.com=prvs=654e64a5b=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qvEQS-00082a-E4
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 10:14:16 +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 13d634d1-7256-11ee-98d5-6d05b1d4d9a1;
 Tue, 24 Oct 2023 12:14:13 +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;
 24 Oct 2023 06:14:10 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by SJ0PR03MB6341.namprd03.prod.outlook.com (2603:10b6:a03:38c::22)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.11; Tue, 24 Oct
 2023 10:14:04 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::acf0:ce2b:1634:5aee]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::acf0:ce2b:1634:5aee%6]) with mapi id 15.20.6933.011; Tue, 24 Oct 2023
 10:14: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: 13d634d1-7256-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1698142453;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=1P4YEdcjuvpk6xC4NTMlXx8sMifyHknO/8IXYwqeVVQ=;
  b=L59ML0TLZvzEirCg3bMWLLNTos2o3p3ogA9Mm0ZyB4p90q2Rh2YrZ57L
   UFqNi0lx1PVm68bRTA8GnF5yf+pYS7+9Rba6EjjBEzsSb/UScBvJe6nyy
   JS2GGJreu4LpiZaXQiarncj4ZFcCFwKzD5FvwFfF/AI8KdzMq2ncFXStD
   E=;
X-CSE-ConnectionGUID: HOPolqqxSe+seLYXO6844g==
X-CSE-MsgGUID: 3kz92tzKQZq8YZ/obKD7lw==
X-IronPort-RemoteIP: 104.47.51.40
X-IronPort-MID: 126911180
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:b2/Oq6OEaiN45W/vrR2ClsFynXyQoLVcMsEvi/4bfWQNrUp01jQPx
 2JMWG/TPPbcY2Wjfo13YImyoEsBusPSnN41SAto+SlhQUwRpJueD7x1DKtS0wC6dZSfER09v
 63yTvGacajYm1eF/k/F3oDJ9CQ6jefQAOOkVIYoAwgpLSd8UiAtlBl/rOAwh49skLCRDhiE/
 Nj/uKUzAnf8s9JPGjxSs/nrRC9H5qyo42pA5ABmPJingXeF/5UrJMNHTU2OByOQrrl8RoaSW
 +vFxbelyWLVlz9F5gSNy+uTnuUiG9Y+DCDW4pZkc/HKbitq/0Te5p0TJvsEAXq7vh3S9zxHJ
 HehgrTrIeshFvWkdO3wyHC0GQkmVUFN0OevzXRSLaV/ZqAJGpfh66wGMa04AWEX0sZQOWZK7
 OUIEz1OdR2nttKRnuLnFuY506zPLOGzVG8ekldJ6GmDSNwAGNXESaiM4sJE1jAtgMwIBezZe
 8cSdTtoalLHfgFLPVAUTpk5mY9EhFGmK2Ee9A3T+PNxvzC7IA9ZidABNPLPfdOHX4NNl1uwr
 WPa5WXpRBodMbRzzBLcqCz937aWzXuTtIQ6T76qp6R2kn6q9HVDOS9RUlGYjaa9lRvrMz5YA
 wlOksY0loAw/kG2Stj2XzWjvWWJ+BUbXrJ4DOkS+AyLjK3O7G6xFmUCCzJMdtEinMs3XiAxk
 E+EmcvzAj5iu6HTTmiSnop4thu3MCkRaGUEPCkNSFNf58G5+N1ryBXSUtxkDai5yMXvHi39y
 CyLqy54gKgPickM1OOw+lWvby+Qm6UlhzUdvm3/Nl9JJCsgDGJ5T+REMWTm0Ms=
IronPort-HdrOrdr: A9a23:JLNmu6gapOQxlxiaCtWH7/9D4nBQXh4ji2hC6mlwRA09TyX5ra
 2TdZUgpHrJYVMqMk3I9uruBEDtex3hHP1OkOss1NWZPDUO0VHARO1fBOPZqAEIcBeOldK1u5
 0AT0B/YueAd2STj6zBkXSF+wBL+qj6zEiq792usEuEVWtRGsVdB58SMHfiLqVxLjM2YqYRJd
 6nyedsgSGvQngTZtTTPAh/YwCSz+e78q4PeHQ9dmca1DU=
X-Talos-CUID: 9a23:zOo7/m1fUPiwXqRZjaclWbxfOucddXnE1WfrLgyjBEJYeJrLGQPM9/Yx
X-Talos-MUID: =?us-ascii?q?9a23=3AeyP92Q9KS25huehwzEFDKiaQf5xr8fX0FFIuqKc?=
 =?us-ascii?q?f6/i2cit6GBvCiCviFw=3D=3D?=
X-IronPort-AV: E=Sophos;i="6.03,247,1694750400"; 
   d="scan'208";a="126911180"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=fYMkjT4lT6oZFQakKXtaPgEqy3PQeSbgI/jg9zKFHKGMoHP7FkvvIOUSWixImX0QlxGFcyxbRYie5lP5SgFaeNApYx54NPXVRw9PixBfpKQ+4931JswWNXqGTrn5IRD4kCqhi9ARWf8rUxzuf+TIqodR/tWrg1QQrJfuqRr6TigI7L88xQFSxVyoV1lZ35noVXbEB9iGwNbn5H+kDZ5WFXW0wwC0R6gxIVQdOSdwoSzNsMlxgqpEQ0h6+1u6rsmlHt1mYe+x3v4gIgT/8PSaxovsnP3/V0/3efMPwUmE/ZLWlz8iSDcWhr8xg3qVhOI1iFhdEgHFCbifjXPSoDA9Aw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=B4pDAbM2NuNwAOp5cZ4BqnSbLnPSw7QgU4Gks1MLb/o=;
 b=igsk1tySomFBjtD2KSUg6GnGA+vPZQF1lTgtOOXoS6vJP4hricbQNQfdTJ0CG4w1jbNeC9skOJlpumPqnu4aLzXO6nxMIXOeqQN+4t3fNE1AHRxlTuCVtV1hckPaZcXtb2b0k4g1o0+gqwZh/5dB8+dZpCEdDD8uz2XkgchihY/qZJmyzzI/9SEK1+/CeoXlf8AXaumBxCHPzG9j5dJabrsoq3vCiWDxmA/v8u4KFwFj/yDUy9bZtXSFbe6slYLLU95b1muBh9MwQ4rVBHXNez8+Z7YGKyWGJ08svBO1KVAqGRhBt2TtNRjQDe6xDx9VeGfTUElJiwZI2xc+Ft227w==
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=B4pDAbM2NuNwAOp5cZ4BqnSbLnPSw7QgU4Gks1MLb/o=;
 b=d2jyy5wxMdlcrIjRqCagvGHUbnISdZq5jx9iF4orG8ZYFTUPdu2X4M9UQnEEllYrYRfSPnkBE/Ta2S5Ej7KPkRDJa4QFGPH+AOBqRvgDTImy1DO3jrPDWyDHqZTlwyqUBKmzGxlNQ1orgzYpzR4k4rTE7qad2K+SUYnhQcy4v70=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Tue, 24 Oct 2023 12:14:00 +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/i8259: do not assume interrupts always target CPU0
Message-ID: <ZTeY6JNbNfTVCpib@macbook>
References: <20231023124635.44266-1-roger.pau@citrix.com>
 <a525cc49-69e7-c509-61d4-a2456b3fdbcc@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <a525cc49-69e7-c509-61d4-a2456b3fdbcc@suse.com>
X-ClientProxiedBy: LO4P302CA0037.GBRP302.PROD.OUTLOOK.COM
 (2603:10a6:600:317::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_|SJ0PR03MB6341:EE_
X-MS-Office365-Filtering-Correlation-Id: 63d23f7b-8545-4367-74c0-08dbd479f324
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:
	K7svcU7BaMG2AH4ijA/nkVnvbH/Q/QAfEPr6uXka8hCE165Hm/tnX4QTbrkwHeaFpUzQXyhpKsu4DFQjOhtxJ5HpfAQw3jdQZvxa/BXj0TvwzIfNCPj4JTiFzX4IOk3hXF80/sgCcVDUlQQQAkv0ZoFJAlJNyv0cEtO4p68rjo2qiaRgKOXMSRPqWewaQHiClHP+j8Akxjkb85yFeHTTiN3Rhy+f19wXDPWpHNA5I30AK2rhl5BkrYcC+PNezd3XSyx9XLtoJ3H28TyS6ssBoxv9Kisns9abifmhU8YfSL3Z5esXTQgOp9hEjanSW4F+J6H4iJo4MgDcmFyVINz27RR5qTO/FQKk4hProJeJyaVNAtEwcytxNZqBJhbkAyVtw9B7QoAi4i5qeoBBWrHIPzOL+q/mx+vXqwZlRaasJ2LA7Njt4vHhc5ctH2/hMuhtkF65m8f7ibS7I3az34FRXTiK/UAtBWf78XCS+6cgiPZegEdGbNuUVNkLME1kva000AaY54y5UzT0OzqH+fKzWC1/p3C5ekK3VcuifB7EDg8ekzHVV/APQt0QqgDkzO8x
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)(39860400002)(396003)(376002)(230922051799003)(186009)(1800799009)(64100799003)(451199024)(8936002)(4326008)(8676002)(41300700001)(2906002)(5660300002)(33716001)(53546011)(85182001)(6666004)(6512007)(82960400001)(6506007)(9686003)(83380400001)(38100700002)(86362001)(66946007)(26005)(66556008)(6486002)(66476007)(6916009)(478600001)(54906003)(316002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?QTFPOW8wWFlHRGsveE1iTE1KNnZmT2RBYUNMYWcySkxhUE9CVEVNWUVzb2ZH?=
 =?utf-8?B?bG1XdmE3eGd4d3AzOHJLNUVCK1RGbnpDYnNTU2dTdHRubFNrZFd1SWJQSzNo?=
 =?utf-8?B?TEp4SzFZVE5uYXdLMlRkaHB5Q0krNUFCUmRXUHFNdm9UQWIwZGZhR0xpRElE?=
 =?utf-8?B?MXg2bFZpKzNZOXh2UGtZR2lIMjQxVm5hZEZFQUdrSVNleGFEUXZrbk11TklU?=
 =?utf-8?B?VWdJUnlCbjRUTzBtRTBGS3JmVWd3ai9yeFpQRG90NWVJcGRnQzhWck9MTE9q?=
 =?utf-8?B?dlA5ajFTS0FCSy9OMlQ4clBNYTYvTVI1eWNrczZ5OWNlTzl1WDIxNkdZWUR1?=
 =?utf-8?B?ZitVQjZBL3ZxVWduaTVhYWlaQ0graC9DYnRhRHRjUVNKUGR0SXdUNGtjMkpQ?=
 =?utf-8?B?R0VybEdIWHpPZWtZUUMvVDlUOGZlakY4dHRvbUVxZFVmSmpaMFNaU3FhaTJ1?=
 =?utf-8?B?b3hVcDNhN0FlTEVqV3U1L2kwWG5ObXJxeG5SZlFEWEo1M2J1Z1doejdPSjFO?=
 =?utf-8?B?QWVQeVJwUi8wTTgxRmhudzZGUkRDaXErK3YvYjJlK3RMcEthTmFjOS96Snoy?=
 =?utf-8?B?cTNQVTRmUk42WkMxOXEwYTF1NVZQUStFRStwN3ZjS0U0c3psTjkvSjhTTTM2?=
 =?utf-8?B?QlVRZTlDVXZQU0lMcnhuRnNUUThXOUxvMlltWUo2K0gzK1VtSjJhcEFsWVJ4?=
 =?utf-8?B?a2VWL2JQTWczZ0x1d2dpOEhMTXVqTTFkNTlBUU9DWGxnMEI1TkpiK2QrU3Ny?=
 =?utf-8?B?V1FRZ0NseE9KT1JhOU1ZQjlBcngwRytzQ1ZrUDFXd2luaTA4U1RKTFZIYTU4?=
 =?utf-8?B?dHRIcVhHMFdMK0pMM016NHQ2VTFkRHJ4NWpxOXU4N1dHd2tOQStnMHJLNUFU?=
 =?utf-8?B?TGw4MjBhaitJUDgxOEhuRjg1NkRGbXJYNnM3U1lQTHVEQXVSWitTcW5vVWdn?=
 =?utf-8?B?YzlSdkkrY1FaWlhrT0I2M0ppWHRFOThlMmQyREFzNjlWU3VCMlRrelU0Ny9x?=
 =?utf-8?B?TjZUb00xVW1hRG13NlNUdUk3dHY5S1F6cmNOMXBFT085N25nZE5jazFTdXpv?=
 =?utf-8?B?azF5a204dDRiLzJETG9ERG1IYXhKd1VkZ1k2RXVCR1dGWkg2MytUVCtGaHNP?=
 =?utf-8?B?cktHOCtFcDF6dXMxNHJCMU9oTjBjS3NJRGdrYUwwMEVJOHh5MklrYzQ5Rjho?=
 =?utf-8?B?QVhqbmhHcHBIR09VOG1ycVQvaXgrRlYxbU5FS2w2T0FkdkZVK0g4S1BKNHhw?=
 =?utf-8?B?NHkzQmRKM1R3QTFNYkRPKy9kaktkTEs5UnlhQ0ZLdmkrdmFtaXV3bUNuL1hv?=
 =?utf-8?B?QzJUZVg5L1c4RWN5U3pqdVJKRFRqS1ptNGxzeHFhS1VMbXJqZExrUWlTZkRL?=
 =?utf-8?B?NkVOQkZXSGpUcmRSTzRWSzF5TWdtYUFTc2QzaWtyQm54T1FhemtuMG5ORWRr?=
 =?utf-8?B?eVJrQ0MzMEMxeGpDYXEzV2NncUJrb3MxS0wwK2RtcWZldXJYQ2V0Q1FBb3Fa?=
 =?utf-8?B?MUZzVUdrUG5VREdvOVBVZWJmVERZeGdaSW9HWDI0bGorNWw5Mm5QUW44bkh5?=
 =?utf-8?B?U0NKRVlsS2tKRU8yck9SdHRQaC85SnNiRk5hMzl3eFZ6NDdsK2NjTmMrTGdF?=
 =?utf-8?B?bURkQWFVaVFpVTZMdEpaa0tRRFU1SGJLUmtBdjFYSFpJaXQzYUpXQlJRTTFj?=
 =?utf-8?B?Vi84eHZFaTkxN25Ed0JzRlh2WVd2QmtQRjhKRFI2Q1FYdDhPUG9qR25LZWVI?=
 =?utf-8?B?WmNtVkpha0FzWlpIVWU3RWRzYkJxakZuYTVtdUluRTFFdmVDOVZubUVWUjQ2?=
 =?utf-8?B?Zkt6RVgyMkg2OHZabGpxUHE2R29HUFd3Q215aWs1dXZ1TWJvaGJUWFVHd3ht?=
 =?utf-8?B?MUgwNi8rYkEwb2cxeFFHT0JWb2dWT0d5WUNaS1JER3ZpNWszUW4xd1VtdUsy?=
 =?utf-8?B?M29PYkZmakFUSEt6aHVNUW14eUhGeEVub0NwVXJDMFg2RWFJQjllTHJ0N2JN?=
 =?utf-8?B?VXlNOTJOY2VEUHl1YithZ1YzNll2Z0JLY3ZJdW00SFBiS0c4REpCdDJRaUV4?=
 =?utf-8?B?ZU1GUXdVQWp1OGVRQ21FUmR1Yk1hVk05VHYwZEd6czlVazh1T2c5RWFwWWdF?=
 =?utf-8?Q?1W3vkx6wqcxJWDLvSQcNWUOp0?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	zxAReSDiyukwelk43iLI2pbG5Jw9/SX9o1Rv98twY6a/6NtrSeQOaD4jo2J9VrUZp6NNnyr4xCnAdbIi429HAAoM00+h4N3VqRtgXEP4zHO4Vcw9khKyBwwsydvIrq3LXUzjh8H5EEFGAAP+nkPFzi6r08NvzqjGMAZM68kuyq5eQdQfanblMOtvK24r/3gzLWyn+VmidReL/eA5kHmXAx//DW1EMwZ1ggjiH+3gyQUP7vlKOGq0QPTQBL7TDQn/uotWXOAE6cfr9NsEqfXa6WA7D3gtRYq0c2uDJwez1X7FMtvOULFUM5ChVOnctlxdGQv10HAEY5Q4VgNcDC2iqEzQZdlBJItL/7I/U6hxQrRQruzesI904FR1TMaLXslKFFpZyusR4vT3Ao7lVEFQpLy4XCqeYlqI02Vw2p6sR0AG6b40B4MeRqWoqLcIGdEMUv0U9gZo+tuRNx13fB5/Ei7p9++Sa/6SEbhhPwJlLMk1h68rdqbkkF+8JdNjIfrRlEw5hgCfNGxoQAD4b/TKjDCNMEL3cGFLB/G2nv1MNZQynDiLGw35lmgaWapRTGditAgfBEnB8Q4n/GW2IatSWF3/oTyY/zTrnhGS3onV2MltDQb8oL7DZtcSm+mij09FlOGUm0Nl9tQ7tVcIX24ckl+6KXMqy+lnFRaF8OMf20ozzbLUm5+tt369D6MMj1xFBjXBizw+Aq4odLIQKRlDUtkMOAsGsCqYsTSR46ohUvYOp8H4WOrCH+LisB8hcqBUAl8hPQJXE5nuEvC9VkVDMYfM7gqLYb1szP1E5Ftc8A6S/5uTgXOyp+oFNOwrPPFqXN8ot6NMwdKIf9Rtj3NnSw==
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 63d23f7b-8545-4367-74c0-08dbd479f324
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 24 Oct 2023 10:14:04.2510
 (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: 5hDoaBoDf9sc9XzUoPDukokd5oSUr6KrbjWB9024FWMd9traZoPOhlUv7dUiD+aGnBXuMtSIbkH6iu1E018Paw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR03MB6341

On Tue, Oct 24, 2023 at 11:33:21AM +0200, Jan Beulich wrote:
> On 23.10.2023 14:46, 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
> > observed i8259 (active) vectors getting delivered to CPUs different than 0.
> > 
> > On AMD or Hygon platforms 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 would need to be handled on all CPUs.
> > 
> > Do not reserve the PIC spurious vectors on all CPUs, but do check for such
> > spurious interrupts on all CPUs if the vendor is AMD or Hygon.
> 
> The first half of this sentence reads as if it was describing a change,
> but aiui there's no change to existing behavior in this regard anymore.
> Maybe use something like "continue to reserve PIC vectors on CPU0 only"?
> 
> >  Note that once
> > the vectors get used by devices detecting PIC spurious interrupts will no
> > longer be possible, however the device should be able to cope with spurious
> > interrupt.  Such PIC spurious interrupts occurring when the vector is in use by
> > a local APIC routed source will lead to an extra EOI, which might
> > unintentionally clear a different vector from ISR.  Note this is already the
> > current behavior, so assume it's infrequent enough to not cause real issues.
> > 
> > Finally, 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>
> > ---
> > Changes since v1:
> >  - Do not reserved spurious PIC vectors on APs, but still check for spurious
> >    PIC interrupts.
> >  - Reword commit message.
> > ---
> > Not sure if the Fixes tag is the most appropriate here, since AFAICT this is a
> > hardware glitch, but it makes it easier to see to which versions the fix should
> > be backported, because Xen previous behavior was to reserve all legacy vectors
> > on all CPUs.
> 
> I'm inclined to suggest to (informally) invent an Amends: tag.
> 
> > --- a/xen/arch/x86/i8259.c
> > +++ b/xen/arch/x86/i8259.c
> > @@ -37,6 +37,15 @@ static bool _mask_and_ack_8259A_irq(unsigned int irq);
> >  
> >  bool bogus_8259A_irq(unsigned int irq)
> >  {
> > +    if ( smp_processor_id() &&
> > +         !(boot_cpu_data.x86_vendor & (X86_VENDOR_AMD | X86_VENDOR_HYGON)) )
> > +        /*
> > +         * For AMD/Hygon do spurious PIC interrupt detection on all CPUs, as it
> > +         * has been observed that during unknown circumstances spurious PIC
> > +         * interrupts have been delivered to CPUs different than the BSP.
> > +         */
> > +        return false;
> > +
> >      return !_mask_and_ack_8259A_irq(irq);
> >  }
> 
> I don't think this function should be changed; imo the adjustment belongs
> at the call site.

It makes the call site much more complex to follow, in fact I was
considering pulling the PIC vector range checks into
bogus_8259A_irq().  Would that convince you into placing the check here
rather than in the caller context?

> > @@ -349,7 +359,22 @@ 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.
> > +         * Note this behavior has only been observed on AMD hardware. In order
> > +         * to cope install all active legacy vectors on all CPUs.
> > +         *
> > +         * IO-APIC will change the destination mask if/when taking ownership of
> > +         * the interrupt.
> > +         */
> > +        cpumask_copy(desc->arch.cpu_mask, boot_cpu_data.x86_vendor &
> > +                                          (X86_VENDOR_AMD | X86_VENDOR_HYGON) ?
> > +                                          &cpumask_all : cpumask_of(cpu));
> 
> Nit: Imo this would better be wrapped as
> 
>         cpumask_copy(desc->arch.cpu_mask,
>                      boot_cpu_data.x86_vendor &
>                      (X86_VENDOR_AMD | X86_VENDOR_HYGON) ?
>                      &cpumask_all : cpumask_of(cpu));
> 
> or (considering how we often prefer to wrap conditional operators)
> 
>         cpumask_copy(desc->arch.cpu_mask,
>                      boot_cpu_data.x86_vendor &
>                      (X86_VENDOR_AMD | X86_VENDOR_HYGON)
>                      ? &cpumask_all : cpumask_of(cpu));
> 
> or
> 
>         cpumask_copy(desc->arch.cpu_mask,
>                      boot_cpu_data.x86_vendor &
>                      (X86_VENDOR_AMD | X86_VENDOR_HYGON) ? &cpumask_all
>                                                          : cpumask_of(cpu));
> 
> , possibly with the argument spanning three lines additionally
> parenthesized as a whole.
> 
> (Of course an amd_like() construct like we have in the emulator would
> further help readability here, but the way that works it cannot be
> easily generalized for use outside of the emulator.)

I think the last one could be my preferred indentation, will adjust to
that.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 10:14:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 10:14:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621803.968610 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvER2-0008VM-5s; Tue, 24 Oct 2023 10:14:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621803.968610; Tue, 24 Oct 2023 10: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 1qvER2-0008VF-3E; Tue, 24 Oct 2023 10:14:52 +0000
Received: by outflank-mailman (input) for mailman id 621803;
 Tue, 24 Oct 2023 10:14:50 +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 1qvER0-0008Tt-Tz
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 10:14:50 +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 1qvER0-0004nF-3I; Tue, 24 Oct 2023 10:14:50 +0000
Received: from 54-240-197-227.amazon.com ([54.240.197.227]
 helo=[192.168.12.80]) by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qvEQz-00068f-To; Tue, 24 Oct 2023 10:14: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=Mn08rQzR8Ae69Dh/78nb9A/ArCoiEJYWrtsE8HpL6Xw=; b=JCqr0IG7LjM2l4QIyTDCE4BtO/
	nYrrTa3RxeVTFtgA2un+j4kc+sreG/Z9yPti03BkL63rrFYXzg52kAp3NWSo7dDaMCcVw1mbfpeqk
	loPh5ReHR3rzvx3dxYZ6RsysCpGjITPQHJzNX5pxiawhrySGBuHI9Cqb5ScSCI9obU3c=;
Message-ID: <16d4ffd6-340d-4166-96a2-7809ba461111@xen.org>
Date: Tue, 24 Oct 2023 11:14:48 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH for-4.19] xen/arm64: domctl: Avoid unreachable code in
 subarch_do_domctl()
Content-Language: en-GB
To: xen-devel@lists.xenproject.org
Cc: Julien Grall <jgrall@amazon.com>,
 Nicola Vetrini <nicola.vetrini@bugseng.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Michal Orzel <michal.orzel@amd.com>
References: <20231023175220.42781-1-julien@xen.org>
From: Julien Grall <julien@xen.org>
In-Reply-To: <20231023175220.42781-1-julien@xen.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi,

I forgot to CC the maintainers.

On 23/10/2023 18:52, Julien Grall wrote:
> From: Julien Grall <jgrall@amazon.com>
> 
> The 'break' the XEN_DOMCTL_set_address_size is unreachable and tools
> like Eclair will report as a violation of Misra Rule 2.1.
> 
> Furthermore, the nested switch is not very easy to read. So move
> out the nested switch in a separate function to improve the
> readability and hopefully address the MISRA violation.
> 
> Reported-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
> Signed-off-by: Julien Grall <jgrall@amazon.com>
> 
> ---
> 
> Only compiled tested. Waiting for the CI to confirm there is no
> regression.
> ---
>   xen/arch/arm/arm64/domctl.c | 34 +++++++++++++++++++---------------
>   1 file changed, 19 insertions(+), 15 deletions(-)
> 
> diff --git a/xen/arch/arm/arm64/domctl.c b/xen/arch/arm/arm64/domctl.c
> index 14fc622e9956..8720d126c97d 100644
> --- a/xen/arch/arm/arm64/domctl.c
> +++ b/xen/arch/arm/arm64/domctl.c
> @@ -33,27 +33,31 @@ static long switch_mode(struct domain *d, enum domain_type type)
>       return 0;
>   }
>   
> +static long set_address_size(struct domain *d, uint32_t address_size)
> +{
> +    switch ( address_size )
> +    {
> +    case 32:
> +        if ( !cpu_has_el1_32 )
> +            return -EINVAL;
> +        /* SVE is not supported for 32 bit domain */
> +        if ( is_sve_domain(d) )
> +            return -EINVAL;
> +        return switch_mode(d, DOMAIN_32BIT);
> +    case 64:
> +        return switch_mode(d, DOMAIN_64BIT);
> +    default:
> +        return -EINVAL;
> +    }
> +}
> +
>   long subarch_do_domctl(struct xen_domctl *domctl, struct domain *d,
>                          XEN_GUEST_HANDLE_PARAM(xen_domctl_t) u_domctl)
>   {
>       switch ( domctl->cmd )
>       {
>       case XEN_DOMCTL_set_address_size:
> -        switch ( domctl->u.address_size.size )
> -        {
> -        case 32:
> -            if ( !cpu_has_el1_32 )
> -                return -EINVAL;
> -            /* SVE is not supported for 32 bit domain */
> -            if ( is_sve_domain(d) )
> -                return -EINVAL;
> -            return switch_mode(d, DOMAIN_32BIT);
> -        case 64:
> -            return switch_mode(d, DOMAIN_64BIT);
> -        default:
> -            return -EINVAL;
> -        }
> -        break;
> +        return set_address_size(d, domctl->u.address_size.size);
>   
>       default:
>           return -ENOSYS;

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 10:24:19 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 10:24:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621812.968624 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvEa2-0002YR-65; Tue, 24 Oct 2023 10:24:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621812.968624; Tue, 24 Oct 2023 10:24: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 1qvEa2-0002YK-33; Tue, 24 Oct 2023 10:24:10 +0000
Received: by outflank-mailman (input) for mailman id 621812;
 Tue, 24 Oct 2023 10:24: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=BZZr=GG=amd.com=Michal.Orzel@srs-se1.protection.inumbo.net>)
 id 1qvEa0-0002VD-8Q
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 10:24:08 +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 758e01b4-7257-11ee-98d5-6d05b1d4d9a1;
 Tue, 24 Oct 2023 12:24:06 +0200 (CEST)
Received: from BL1P221CA0007.NAMP221.PROD.OUTLOOK.COM (2603:10b6:208:2c5::33)
 by CY8PR12MB8267.namprd12.prod.outlook.com (2603:10b6:930:7c::22)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.31; Tue, 24 Oct
 2023 10:24:01 +0000
Received: from BL02EPF0001A0FF.namprd03.prod.outlook.com
 (2603:10b6:208:2c5:cafe::8a) by BL1P221CA0007.outlook.office365.com
 (2603:10b6:208:2c5::33) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.33 via Frontend
 Transport; Tue, 24 Oct 2023 10:24:01 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 BL02EPF0001A0FF.mail.protection.outlook.com (10.167.242.106) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6933.15 via Frontend Transport; Tue, 24 Oct 2023 10:24: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; Tue, 24 Oct
 2023 05:24: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; Tue, 24 Oct
 2023 03:24: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; Tue, 24 Oct 2023 05:23: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: 758e01b4-7257-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=IGy+InvvzzfRZoG1e5hUEMTYlYpIm7KHghBvvAX+lseLwUKueEkTM5lkDrsPTWjHvuH0dyGq8PP1yW8bb8o0wTG5bBEFNKKajZOisv4z52EJuLahyus+pw+ZTJqbdUYBQLtPu1eb3tajLG1tS3Q7VbEsl9z7W6os70VWCHsmsFPem86lnZ/Q+oMbla0YU3AW/JQH31hPKt953OyzAYPac0OZ6QgOknvrbD9ZHkvprrSRci35JJo6U93E4NEHJaffYv7lY0nzqzYfK9/ae2GL5wJ6WOE9c+cQ3OoMIWmMr+jMLPG39aTFokBFr4oC7taqJkO5atLVcoKT135itPa8jA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=7Te4XdlPGmzqRV6rt14vg9a7TeWsgj/GXSstr7YqHew=;
 b=kAlJUvKO02rqKdfGlA3+lSd9HGslQ1xHtqRd6/ZzOLSB9GLnSepST1WOieFXR1by643DM59NtCDYNRqhZyAW/QvhnH5tQ2BB3+KRBuPY8Wb0/jkWPcxNXMK6ujyRixnYMWu11oKM8cw1f1EU3eDzEfm5SSjWDGO51619YusJbvjBUhG4BgStPJMSJ/9694Fpca16FPbZHyw2mS2iDb9Y/aBeFmzFwsoXKWHBGWsVbIbhx+tYTqytLQYLLsu1/JvuHUgX9r0sTFZDE04R6v9N9B02dLt9AA9l09YtywtEebTkgXrD0mlEJnHvfnEeKsQggc6ZyxcvjBJNE1IcoMMzSQ==
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=7Te4XdlPGmzqRV6rt14vg9a7TeWsgj/GXSstr7YqHew=;
 b=Aer2k7tuALtINZDW21VRlZ5YL13ZOOSgo6+FIAYTsx286AB/wRhSz4cUmwRkwXyThVv7tQyiRQjHwFzuQtlf0L1ww5usLu9UYOngO4BywvTHKbDumDQ4yd1v3Lf23moBkMDt8FESsQzclI2/jFA0gH9peMZuGKCYjS4UkTZcznc=
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: <a490579a-776a-47ec-a10f-014fdafef2dd@amd.com>
Date: Tue, 24 Oct 2023 12:23:58 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH for-4.19] docs/arm: Document where Xen should be loaded in
 memory
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>, Stefano Stabellini
	<sstabellini@kernel.org>, Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
References: <20231024100923.12724-1-julien@xen.org>
From: Michal Orzel <michal.orzel@amd.com>
In-Reply-To: <20231024100923.12724-1-julien@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 7bit
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: BL02EPF0001A0FF:EE_|CY8PR12MB8267:EE_
X-MS-Office365-Filtering-Correlation-Id: 827193a4-10c1-489b-8ac3-08dbd47b571e
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	xAiO67Oz/jzdj9H1BpGRgwNQtsagq+/alFdOs58YLsvSzKNK1aK4pmSncHanceKp7LmLS7kugarYZ/XLeQucIhZclsoqxES1PyVlfFrlJiwcwbzwpakDkLx3pN3stN+hnVb/oWw5vNhhFDAkwg3FFZsZzbD3Km2t92GN16q9lsfaRPkTnXbNj8LBDplLwZA5qAEqsr1jlyK5eF6QfdTlul83AwW3uSK2wfgyeFNS+7/HdFyANQogm13AtFdlvFG7Gtfh4QvlrBR/Z6ASTHhueHdvAB2c5yMke6nTVFl2zGDHANxu0iFlzRe5sTPHord3x9Zns8ETbWdh0YVfCBnfCPYIrV2FfoRu4tmfvB8L8LkP3y+EiRrY/j4wpCSTTajjy1Tx2K8w62XTZBhYToOfNsFbwkJYA3nHiM5Tp8Z7+FhTUBpXSnvDzkK3eTeMK0cPKljdUUMcHFEiyHetUThPnDLtgukTewJHAZqUVeLlgUAfmYkQ4sorHh4OJoSXx67Wio4BBxfeW4aBO3CQ8nnLFcfS7qmN15GuX4cZtX8pHdzMR9JjrnuUk3NBD19yJ2/9A/0lN5wt+fvcyuSywlq8KgvdPXGVWQxJwU42g0ExzQrWm10PV4fbP+B83Vw3zUj9JJ4rq1iZdv/UY7lW7/AMtTpsngiCPvAsVY6isRKZsTcIooSBC4QwnQVqkHIXATFdsPUtieqlEcK1VRrzOX360Dsq8PIOAOEYHTcOvOooBmRI2MhL3E0oG31GYiK6amBH7tMn8TMd0a/hbrnShit3mSRpfrd767I9loXtLJ7zPW1P2xlgqd9mZpYEgWM8/y+L
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)(39860400002)(376002)(230922051799003)(451199024)(64100799003)(1800799009)(186009)(82310400011)(40470700004)(46966006)(36840700001)(2906002)(41300700001)(40460700003)(26005)(2616005)(336012)(36860700001)(426003)(47076005)(31696002)(356005)(81166007)(86362001)(36756003)(82740400003)(40480700001)(83380400001)(5660300002)(44832011)(53546011)(16576012)(316002)(478600001)(54906003)(70206006)(70586007)(110136005)(31686004)(8676002)(4326008)(8936002)(43740500002)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 24 Oct 2023 10:24:01.0273
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 827193a4-10c1-489b-8ac3-08dbd47b571e
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:
	BL02EPF0001A0FF.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY8PR12MB8267

Hi Julien,

On 24/10/2023 12:09, Julien Grall wrote:
> 
> 
> From: Julien Grall <jgrall@amazon.com>
> 
> In commit 9d267c049d92 ("xen/arm64: Rework the memory layout"),
> we decided to require Xen to be loaded below 5 TiB to simplify
s/5/2

> the logic to enable the MMU. The limit was decided based on
> how known platform boot plus some slack.
> 
> We had a recent report that this is not sufficient on the AVA
> platform with a old firmware [1]. But the restriction is not
> going to change in Xen 4.18. So document the limit clearly
> in docs/misc/arm/booting.txt
> 
> Signed-off-by: Julien Grall <jgrall@amazon.com>
> 
> ----
one less '-'

> 
> I couldn't find a nice way to document it in SUPPORT.md. So I decided
> to only document the restrict in docs/misc/arm/booting.txt for now.
> 
> I also couldn't find any way from GRUB/UEFI (I didn't look much) to
> specify the loading address.
> ---
>  docs/misc/arm/booting.txt | 4 ++++
>  1 file changed, 4 insertions(+)
> 
> diff --git a/docs/misc/arm/booting.txt b/docs/misc/arm/booting.txt
> index 02f7bb65ec6d..c6bdeafe5e5b 100644
> --- a/docs/misc/arm/booting.txt
> +++ b/docs/misc/arm/booting.txt
> @@ -21,6 +21,10 @@ The exceptions to this on 32-bit ARM are as follows:
>   zImage protocol should still be used and not the stricter "raw
>   (non-zImage)" protocol described in arm/Booting.
> 
> +The exceptions to this on 64-bit ARM are as follows:
> +
> + Xen binary should be loaded in memory below 2 TiB.
> +
>  There are no exception on 64-bit ARM.
This sentence needs to be dropped then.

With that:
Reviewed-by: Michal Orzel <michal.orzel@amd.com>

~Michal


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 10:26:42 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 10:26:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621814.968634 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvEcR-0003NC-JZ; Tue, 24 Oct 2023 10:26:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621814.968634; Tue, 24 Oct 2023 10: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 1qvEcR-0003N5-FU; Tue, 24 Oct 2023 10:26:39 +0000
Received: by outflank-mailman (input) for mailman id 621814;
 Tue, 24 Oct 2023 10:26: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 1qvEcP-0003Mz-9z
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 10:26: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 1qvEcO-00050H-P0; Tue, 24 Oct 2023 10:26:36 +0000
Received: from 54-240-197-227.amazon.com ([54.240.197.227]
 helo=[192.168.12.80]) by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qvEcO-0006Zv-FN; Tue, 24 Oct 2023 10:26: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=sumO1k8WN2YcDfUy8DzX5NxVaO8M8xz39vDIs98lG3o=; b=CR/rSirAZdNq5xCQ0QUKj3mg8p
	CZVCziSOOwB7mjSuoen/nsPwr7YXUc/FblpjF+XPlu7HuKe4ZzOB/Fp88SV7zSBabGWh59JIJ2m1R
	8Qp7BkKGnjLcKSDd1cyWHXapOGW6omEeLtYvQoGKNWS+aEFAsf1vpEyeICTiFwV8ZtUw=;
Message-ID: <0d655443-3e2f-4ed5-ae31-42207aaf9a39@xen.org>
Date: Tue, 24 Oct 2023 11:26:34 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH for-4.19] docs/arm: Document where Xen should be loaded in
 memory
Content-Language: en-GB
To: Michal Orzel <michal.orzel@amd.com>, xen-devel@lists.xenproject.org
Cc: Henry.Wang@arm.com, Julien Grall <jgrall@amazon.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
References: <20231024100923.12724-1-julien@xen.org>
 <a490579a-776a-47ec-a10f-014fdafef2dd@amd.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <a490579a-776a-47ec-a10f-014fdafef2dd@amd.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit



On 24/10/2023 11:23, Michal Orzel wrote:
> Hi Julien,

Hi,

> On 24/10/2023 12:09, Julien Grall wrote:
>>
>>
>> From: Julien Grall <jgrall@amazon.com>
>>
>> In commit 9d267c049d92 ("xen/arm64: Rework the memory layout"),
>> we decided to require Xen to be loaded below 5 TiB to simplify
> s/5/2

Ah yes. I keep having 2 TiB.

>> the logic to enable the MMU. The limit was decided based on
>> how known platform boot plus some slack.
>>
>> We had a recent report that this is not sufficient on the AVA
>> platform with a old firmware [1]. But the restriction is not
>> going to change in Xen 4.18. So document the limit clearly
>> in docs/misc/arm/booting.txt
>>
>> Signed-off-by: Julien Grall <jgrall@amazon.com>
>>
>> ----
> one less '-'

Yes. I forgot to call 'sed -i 's/^----/---/' *.patch' before sending (I 
use ---- to prevent my pacthqueue management tool to strip anything 
after ---).

> 
>>
>> I couldn't find a nice way to document it in SUPPORT.md. So I decided
>> to only document the restrict in docs/misc/arm/booting.txt for now.
>>
>> I also couldn't find any way from GRUB/UEFI (I didn't look much) to
>> specify the loading address.
>> ---
>>   docs/misc/arm/booting.txt | 4 ++++
>>   1 file changed, 4 insertions(+)
>>
>> diff --git a/docs/misc/arm/booting.txt b/docs/misc/arm/booting.txt
>> index 02f7bb65ec6d..c6bdeafe5e5b 100644
>> --- a/docs/misc/arm/booting.txt
>> +++ b/docs/misc/arm/booting.txt
>> @@ -21,6 +21,10 @@ The exceptions to this on 32-bit ARM are as follows:
>>    zImage protocol should still be used and not the stricter "raw
>>    (non-zImage)" protocol described in arm/Booting.
>>
>> +The exceptions to this on 64-bit ARM are as follows:
>> +
>> + Xen binary should be loaded in memory below 2 TiB.
>> +
>>   There are no exception on 64-bit ARM.
> This sentence needs to be dropped then.

Whoops yes.

> 
> With that:
> Reviewed-by: Michal Orzel <michal.orzel@amd.com>

Thanks!

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 10:26:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 10:26:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621815.968644 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvEcf-0003gi-Pc; Tue, 24 Oct 2023 10:26:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621815.968644; Tue, 24 Oct 2023 10: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 1qvEcf-0003gZ-Mv; Tue, 24 Oct 2023 10:26:53 +0000
Received: by outflank-mailman (input) for mailman id 621815;
 Tue, 24 Oct 2023 10:26: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=JtWs=GG=citrix.com=prvs=654e64a5b=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qvEcf-0003g6-46
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 10:26:53 +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 d6859124-7257-11ee-9b0e-b553b5be7939;
 Tue, 24 Oct 2023 12:26:49 +0200 (CEST)
Received: from mail-sn1nam02lp2041.outbound.protection.outlook.com (HELO
 NAM02-SN1-obe.outbound.protection.outlook.com) ([104.47.57.41])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 24 Oct 2023 06:26:44 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by SA0PR03MB5468.namprd03.prod.outlook.com (2603:10b6:806:b1::14)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.18; Tue, 24 Oct
 2023 10:26:42 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::acf0:ce2b:1634:5aee]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::acf0:ce2b:1634:5aee%6]) with mapi id 15.20.6933.011; Tue, 24 Oct 2023
 10:26: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: d6859124-7257-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1698143209;
  h=from:to:cc:subject:date:message-id:
   content-transfer-encoding:mime-version;
  bh=PhXHBDCpwE+acywSfYOPcjdc2YO42okjcIDkUNGR2lU=;
  b=XfO2bTblOxen91ND9AbJpHJ8d7o3HOQ2SykM862YqCqDmRNBPwEMde6N
   fKyLeh3wrhwxO50XK+7Hf2551Q0YG4lW4SIxbXLbfUhw9adj27rQRFdQh
   zDonRVDUFKUyQaHWT3MHjiqD/5YtY/k5vQgj19rf2PkXEt6pnpp1mGS0C
   4=;
X-CSE-ConnectionGUID: LTL04e+8Qem7ylh1voh9eQ==
X-CSE-MsgGUID: Xbwupy+uTJGRuRZzYv527g==
X-IronPort-RemoteIP: 104.47.57.41
X-IronPort-MID: 125069397
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:7gIX2KzdnZvHDWFVmKd6t+cQxyrEfRIJ4+MujC+fZmUNrF6WrkUFx
 2AXXj3QMqyJNmfweNl+OYu+oEwGuJHTmNRrHQE/+SAxQypGp/SeCIXCJC8cHc8wwu7rFxs7s
 ppEOrEsCOhuExcwcz/0auCJQUFUjPzOHvykTrecZkidfCc8IA85kxVvhuUltYBhhNm9Emult
 Mj75sbSIzdJ4RYtWo4vw/zF8EgHUMja4mtC5QVmP6wT5TcyqlFOZH4hDfDpR5fHatE88t6SH
 47r0Ly/92XFyBYhYvvNfmHTKxBirhb6ZGBiu1IOM0SQqkEqSh8ai87XAME0e0ZP4whlqvgqo
 Dl7WT5cfi9yVkHEsLx1vxC1iEiSN4UekFPMCSDXXcB+UyQq2pYjqhljJBheAGEWxgp4KUVy0
 aREJXNdVx2G2POywOulTek9i/12eaEHPKtH0p1h5RfwKK58BKvlGuDN79Ie2yosjMdTG/qYf
 9AedTdkcBXHZVtIJ0sTD5U92uyvgxETcRUB8A7T+fVxvjeVkFUZPLvFabI5fvSQQspYhACAr
 3/u9GXlGBAKcteYzFJp91r13LKXw3KgCd16+LuQxvR1nUWChXEvKjIsSGGJs8in1xThVIcKQ
 6AT0m90xUQoz2S7Q9+4UxCmrXqsuh8HR8EWA+A88BuKyKff/0CeHGdsZjxLZcEitcQ2bSc3z
 VLPlNTsbRRwtJWFRHTb8a2bxQ5eIgAQJG4GIDQCFA0M5oG5pJlp1k6WCNF+DKSyk9v5Xynqx
 CyHpzQ/gLNVitMX06K8/hbMhDfESoX1czPZLz7/BgqNhj6Vrqb8D2B0wTA3Ncp9Ebs=
IronPort-HdrOrdr: A9a23:lwjUKq0ZIA6s3r5PUdraCAqjBTNyeYIsimQD101hICG9Lfb0qy
 n+pp4mPEHP4wr5AEtQ4uxpOMG7MBDhHO1OkPMs1NaZLULbUQ6TQL2KgrGSpAEIdxeeygcZ79
 YZT0EcMqy7MbEZt7ed3ODQKb9Jr7e6GeKT9J7jJhxWPGNXgtRbnmNE43GgYyhLrWd9ZaYRJd
 653I5qtjCgcXMYYoCQHX8eRdXOoNXNidbPfQMGLwRP0njDsRqYrJrBVzSI1BYXVD1ChZ0493
 LergD/7qK/99mm1x7n0XPJ5Zg+oqqv9jIDPr3DtiEmEESttu+aXvUjZ1REhkF2nAib0idqrD
 ALmWZkAy080QKUQoj/m2qR5+Cp6kdT15al8y7UvZKrm72GeNo3ZvAx+r5xY1/X7VEts8p717
 8O12WFt4BPBReFhyjl4cPUPisa4HZcjEBS5dL7tUYvJrc2eftUt8gS7UlVGJAPEGbz750mCv
 BnCIXZ6OxNeV2XYnjFti03qebcFkgbD1ODWAwPq8aV2z9ZkDRwyFYZ3tUWmjMF+IgmQ5dJ6u
 zYOuBjla1ITMURcaVhbd1xCPefGyjIW1bBIWiSKVPoGOUOPG/MsYf+5PEv6OSjaPUzve4PcV
 T6ISFlXEIJCjHT4Je1rex2Gzj2MRWAYQg=
X-Talos-CUID: =?us-ascii?q?9a23=3AW+MD/2uPZgFPuhPQFwRM+7Lj6IsBTlmFkHqTc3a?=
 =?us-ascii?q?1DDl4TL3MV1iQqa5dxp8=3D?=
X-Talos-MUID: 9a23:5RYEuAj4W42QlAWwP+cKt8MpBM13/ry/S10xs7o8pvO2Jx1uZm3Cg2Hi
X-IronPort-AV: E=Sophos;i="6.03,247,1694750400"; 
   d="scan'208";a="125069397"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=GbILVGEykJVEUvI8tQvUwYctXfdNzjwQaSMr/9Xad6lcnrTQmAmwuFC5aN8SSchEbNvhuPvPdivs0gUETT9xMPaHOXjKHue8DHtH5yOhjkLhOvTAW2zldcmFdEXdnsgzV/UGcrQtQan9QsSsz2PXLiYcU8BNb5rJuM38hN/l1aSx8TmponCaA2NN/x2E6NAmO9+k8SHYysQphSUeHmYVARp4SSS3VvkDsOslCz2QBk/xwO708lhal15q2qDKC51vjH6ggxKqF0/cc9SAZIGJPr5SlOF6jtYoLT9r7Fvbyc93dScT+Fh4XlrDF/NV6NdK7dNVkCnh90UiiX1z4ddVHA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=qBSxkr80y2D7Yl0jWPOGJABCEKQmi+24UWVd2iKXgGQ=;
 b=STHFdAuDW+ZFYM3GBVmRdHfKFm1JjrrqHyLmCcMxbTHVhiWwxEs/9YEVm+OlR9I6ns6YbJSeJDZzMqCHpmKNI7S00uToT721NNRLWkqwfQW8It6eJlIOaWwsJ+ssyEnw3Pl6Mvdke+SEvIUIo2wH8nvUvBLRvTo+vmPyaAPiFHRzRuIQtpWWJqrutfEUHaKRXVCviZx95MFetVq2s22QOt1pTX/t6K6W6ZJVNo4854hkZqKbOmWeLbVJqKyKSpKdN+59/yA6rzEDagiHC0po+VaZdhTihwgZuOEWrVNa5N7tUa7+1GQbSGc7A+lLJWF08ZOYDG4ztS8dfqobBcql0A==
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=qBSxkr80y2D7Yl0jWPOGJABCEKQmi+24UWVd2iKXgGQ=;
 b=iQ0YnFZOoMMhIGWuxp5TULPeT2tsfONDiRKJYUY/3zD/JF1yOS6wghbjTbHst8PrCDbf3hZ3URA1zKiQR34KmbmUWmgaH1aQMvr6f764K2MB1NX7V7VYmdeqO9OR4TR/DuaYQwgvOLyHBv+LygL/gpN45FQ2rZAER9A2OcfhNiU=
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/x2apic: remove usage of ACPI_FADT_APIC_CLUSTER
Date: Tue, 24 Oct 2023 12:26:30 +0200
Message-ID: <20231024102630.47691-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: LO6P265CA0004.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:339::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_|SA0PR03MB5468:EE_
X-MS-Office365-Filtering-Correlation-Id: fc9c9627-5a67-454d-6129-08dbd47bb721
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:
	tSmDcozvIKeHw0o8b/wTxv8a6n1oxhRPbM+OVD23majsJ2169EOP9hFrcCJo56d1VytxJjSuNwe4JdgiSOk6G3g3ww9kYblfafs0cGcMEUfr6F0HUimBH375MCZpNAqLOlyjIakG74wFV5wLS29Z8f4d9p2ozeqL2WD60FX5u0cpNVR6s+RLEqjuuMjISI9hlYCzpdjMzmxHDfCrfeLNB2ZXqiHXeb5Sfl75KqNRHmAxKZlDEkgKqEqr2/i+ovBUWPRRvwxfek62bPIYbn+6xZ/dSZAoYfLxKEbhpQnyl/2dr9YLFLKg2kkaAKsD2Pdh6K24RBG/1aqf8KKSOVFnmTNwsSIpnK1sjfkVkXIHLfwe94KbOp50Vor/W2QtEl75IcTx4ba4QP79OXb0OnRQtrddlheftDFRnmG2YNgQheNlhyR/aRv8Vtlv8wY4NnB5BnM5BcNICSKF9y05QcVlZSHS6jLDTlVpKYrWeZ2RycDRuTUe+f4xtElO8G+uElh+7y3hz5xSl4POaisSOoxAzH3CC8DFep9lQSh2hY+DAmP6qxvSUIamb3MHzxizvkbj
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)(346002)(136003)(39860400002)(396003)(230922051799003)(1800799009)(451199024)(186009)(64100799003)(41300700001)(5660300002)(86362001)(8936002)(8676002)(4326008)(82960400001)(66476007)(54906003)(66556008)(66946007)(6916009)(316002)(478600001)(6486002)(2906002)(36756003)(26005)(1076003)(2616005)(38100700002)(83380400001)(6512007)(6506007)(6666004);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?aTZBQVdqY091WitiQkQzNmxDS1dVWnNDQVNDdmh4bURWL254Zk5XcUhrZUw3?=
 =?utf-8?B?RGEwaGlRdXkxYmMwQW42RnpVeWhIb2c4MFU4cFRadEtZY1d0SGxzOHlNNWht?=
 =?utf-8?B?UUxzSnBLa0xtUElxVndPZHQvL2cxNDRpVnFxTHBaam9DMHVUbzRsOTdSOHN2?=
 =?utf-8?B?Q3VWa3UxNkh0d3FhdXJyNGZzaGdnTVVlMWJlTjY3dU1kMFN6T2V6Z0RUNTNU?=
 =?utf-8?B?MnR3SmVTMWxvWUxvK1Y2QmhFMU04TW5SKzRsbmt5YnlCVWFZbklXRzJCVGxT?=
 =?utf-8?B?NndPVlZmMWMxVFlsZjhoK1NKU2RSaHJnd1lIZ21hNFMzM3Z3ekFJeHRMdXZs?=
 =?utf-8?B?ZW1kcW1kTHlhNldMWkZRbkZZeXBYZ2w4WmtQOTBkWjhFcmZUdmJZMHFHeDNn?=
 =?utf-8?B?Z2dTK2NGR0J2NVNuc1dJcDBMQjM5UzdyRE1xQVhOTzh4Z0k0Si94Z0E3dnNl?=
 =?utf-8?B?R2pNTEtWZHlTMnlzSFBOcllId3kxOWp5M0l0VjJNcVkwOGhmbTRyQlNXbVkv?=
 =?utf-8?B?a0dDdERaYlpwNEh4M1JneWpNNnEzRFdpRTVJbEg1SnVPVUZqWXdDL1Rrc3pY?=
 =?utf-8?B?NGZRZWJxK1lOZytTaWdKazR3Y3d3WnRXTnE2ZHFYQlJJb2VxTmdxYlV0WktQ?=
 =?utf-8?B?MmJQMnZ4M2t3R2lvdElkRVpNRVU1MFJTYjBHMjM2MG1uU2c0bXF0Ujl3bGl1?=
 =?utf-8?B?bXJPcWg5VXdRcDVaazMvTmc1cVJwaVB0Nlo0ZWRoMjVZMDN2TkpxWExFb3Nm?=
 =?utf-8?B?SUVYUy9HUGFzWW5UUGh4Qk5WYzJPRVNWdGdmam1GZnVlVkVBcjN1K3hScm93?=
 =?utf-8?B?TzUyVXprSlBtR0ZPdGkwRTlaN0xoc3ArVkRhQ1BMdVZzclJQWmQzaUdlOGNv?=
 =?utf-8?B?KzIzYkx5M2NYT01hUDFpNHBTYkwzbVdId0VnK3RjVEhFMFdFeDVJZVJLSlds?=
 =?utf-8?B?eGhVT08yYlNra1BzZStUNFNtdUp2SHpmT0V4MmszNUxvYlVIYkNiK0tTSDho?=
 =?utf-8?B?VjB6RCtLNjlNTnlKU0lrNWpmVlpKMmFZRnZsbFJVTWJ5TDJzb1RoRk5oVDFF?=
 =?utf-8?B?ZXZVMmtvdHpvRHpVbG5PLy9kK0MveVJIWklqdGw5L0NOV3NSSzBtVzZlZDcr?=
 =?utf-8?B?cHJBSytLM1VxTXAwcktvZm5mNXJJNm80ODlzK3ZzT2ZqbGNZRXlpL1ZDMTl6?=
 =?utf-8?B?Nm15UG1TekRCcTc3MkJsVFRpVlE1ZmpTSmdzdkxxZ0VudVpOa0h1MzZlY2s2?=
 =?utf-8?B?VTZNMTBFL3plRVNEbEhITDFXQ0ZKL2ZiNjNaL2JON094SXRTclhtcUNLY2tO?=
 =?utf-8?B?aDFaVEJHc1ljUFgzVDNOTUl4cEhWSDBKMzB2MUlHYXN1NmtaRllxbjZrZ0NC?=
 =?utf-8?B?Zis1MmN0aVdMVW8wTGhwMlpkWUtZRngxT3pnR1A0RVo1UWFZazBHU0NpRG1N?=
 =?utf-8?B?T2U1TnBEdTBtVE8vRmp2SUZBTWZXbEFuSi80WTh6TUpmcWNJL1ZheHBoN3JO?=
 =?utf-8?B?dm9KeU4rMFNqOEp2elF6L0RieSszRGxkODQ3VzJ2aTFmdjZwanE5VjVLNTVJ?=
 =?utf-8?B?VnF6U291VUpHK1ZqNWxTamZJU1RJMjdNNjFCb0tCZnJ6L2tLVk50NEdCc0Y0?=
 =?utf-8?B?S3k4Q3A0bDJLdGpzSERoaiszWHhsSmhneXNLdEV6SWdUb09VTVg4LzJpTFZI?=
 =?utf-8?B?dzZ3ZmUxbE1HM0hQa2p0U2tCOXMrQVNRNDNKN3BFeDZQSWRMOTRYYzhCNTBV?=
 =?utf-8?B?djNvS1c1S3NiZUZodlV6YTMxWGZXNi83dUtnM2NrdnJvcVdxb09PWFVid0RU?=
 =?utf-8?B?aHFaV1B6bEROZ0pyc1BvTDA2SHRXTGJ0V3MwWjNNMitiRktNTFlsSnI0VkZN?=
 =?utf-8?B?RWdUV0lmZ0xyOTMyVzIzclR1dXNkempGMTJjODU3SXdCM3p4N29heVpaSzBY?=
 =?utf-8?B?d0YzWTE5TlppdE16TUhxRk40WmtHenA3NkJsTHVZMXIvRVg2dG1RSE5UZmxT?=
 =?utf-8?B?b0tjdS80ZFduWjZjazNkc2RLQ1RsaDJXY05na3dSZTZhTFRpdHVTRDg3bXJE?=
 =?utf-8?B?NEJ3bWRNdzZmRUwzOTJvMmpCdWdiMkJjaS9JUmY1bTdXRDhvV0lJMENnbmFF?=
 =?utf-8?Q?qFVsxzP/gPrgL0Bd1JJZnGLku?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	3Wv7pzTUX1Y0bNrXUuZzTxIn9iR5SfUDkjMEsm+0cDgqmXA16X+ZsiYzhlrJTZqhNUJFeQ2Kx4CZSM/d/CRzO71TKcnDLG4uye6arOJUxLzYh5L1nBocIa33R7p50Z0Phvze//clc09kMkuWPw9bL1XtNewWYmpKyP28Moc7bmk/xorayJNW0cdP6ayDYTAD4WP3EgdL2BBjsKNK2euy6st4myZVWsjXmNJrYTwo76jPY09MqIMx8bQdo2egwX5yxgRTEheCP+aI2LRFVvR9uaygCgoJ4EFQattcE3yqdrkOOdjBNNdFJQknsILfOKPD3aofnNMPFL4xfc3QLLs7ynf2S4/6gKiLWklF3/DL1fs2VJQHNLbnttTRsd4Mjc3nGERVHtC4Qd7chcOP1MaqYsv2dViDYp6vIa2UTMffZY5DchvRa/j5bBR/dUZi7Ejz144Lh0zK81DaVvkO4sd9Wq1hkjE4GgvP9LD6woItIhUpGSagrw4h0uSpAFbBSpAOXs1vRfUIDyU//GxWK2UlEhNqr/vaopJcWO8eowag1f0yKxL113iLhR4I0QjZMeKbWPdo8GZozxgh1rKe9Ua/RwiAYkn/grmXElxxk/Ps5TL8ATqEeVRfQFz8GiIHgyCM4uArD8uWFP7xm5mQuGGIhxRK0OMNkD2AsP03hjrlkpEMuueJlGLtO78Jw//luL6TPDcFMrkXiVksZqnuIB6k89wrO7XoRmOgWnhEqtxxFIBMshhhWvslqGiKDwnLPdqsNsJLPvbGFOMaDt0WarTAG1NxSS7xTWvurskixgKM6hE/CoMO43jtDVdXEqCNrtGqvmOz9zkUJV+MNdUP77NS0A==
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: fc9c9627-5a67-454d-6129-08dbd47bb721
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 24 Oct 2023 10:26:42.2672
 (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: 8YyFJHJJqs5ujQ8sxWD81zjYIQm6GV15ILq5rqKMnKEWxbEgjY0Ft3LCX04E3Mwo9k9w+Sq74wj963dymqvBMg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA0PR03MB5468

The ACPI FADT APIC_CLUSTER flag mandates that when the interrupt delivery is
Logical mode APIC must be configured for Cluster destination model.  However in
apic_x2apic_probe() such flag is incorrectly used to gate whether Physical mode
can be used.

Since Xen when in x2APIC mode only uses Logical mode together with Cluster
model completely remove checking for ACPI_FADT_APIC_CLUSTER, as Xen always
fulfills the requirement signaled by the flag.

Fixes: eb40ae41b658 ('x86/Kconfig: add option for default x2APIC destination mode')
Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
---
 xen/arch/x86/genapic/x2apic.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/xen/arch/x86/genapic/x2apic.c b/xen/arch/x86/genapic/x2apic.c
index ca1db27157e2..707deef98c27 100644
--- a/xen/arch/x86/genapic/x2apic.c
+++ b/xen/arch/x86/genapic/x2apic.c
@@ -231,8 +231,7 @@ const struct genapic *__init apic_x2apic_probe(void)
          */
         x2apic_phys = iommu_intremap != iommu_intremap_full ||
                       (acpi_gbl_FADT.flags & ACPI_FADT_APIC_PHYSICAL) ||
-                      (IS_ENABLED(CONFIG_X2APIC_PHYSICAL) &&
-                       !(acpi_gbl_FADT.flags & ACPI_FADT_APIC_CLUSTER));
+                      IS_ENABLED(CONFIG_X2APIC_PHYSICAL);
     }
     else if ( !x2apic_phys )
         switch ( iommu_intremap )
-- 
2.42.0



From xen-devel-bounces@lists.xenproject.org Tue Oct 24 10:29:05 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 10:29:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621818.968654 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvEel-0004eA-4a; Tue, 24 Oct 2023 10:29:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621818.968654; Tue, 24 Oct 2023 10:29: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 1qvEel-0004e3-1i; Tue, 24 Oct 2023 10:29:03 +0000
Received: by outflank-mailman (input) for mailman id 621818;
 Tue, 24 Oct 2023 10:29: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 1qvEej-0004dt-Qh
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 10:29: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 1qvEej-00053s-EE; Tue, 24 Oct 2023 10:29:01 +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 1qvEej-0006c7-5r; Tue, 24 Oct 2023 10:29: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:MIME-Version:Message-Id:Date:
	Subject:Cc:To:From; bh=gneOgzLq+s3UL/r3Mm1AyhyGZ7LO+aSw7p45nv4K6ro=; b=FsyIK4
	6bJIVE/Xv5ZHsPzGtvtWIGCgpMXaffoIDKU8Pu3jMuIN8nBsnL0/EKbbxrwOrsR2z3VQ5gq16/xP1
	UpL+heEMYDQuFCk1sYdqHCC4cXwz73a0gOino5pwKfiMbM790HfO1NTqDGRLqBZ2+yjO9hS9VogEs
	C9DPqjaf970=;
From: Julien Grall <julien@xen.org>
To: xen-devel@lists.xenproject.org
Cc: Henry.Wang@arm.com,
	michal.orzel@amd.com,
	Julien Grall <jgrall@amazon.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 for-4.19 v2] docs/arm: Document where Xen should be loaded in memory
Date: Tue, 24 Oct 2023 11:28:58 +0100
Message-Id: <20231024102858.29067-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>

In commit 9d267c049d92 ("xen/arm64: Rework the memory layout"),
we decided to require Xen to be loaded below 2 TiB to simplify
the logic to enable the MMU. The limit was decided based on
how known platform boot plus some slack.

We had a recent report that this is not sufficient on the AVA
platform with a old firmware [1]. But the restriction is not
going to change in Xen 4.18. So document the limit clearly
in docs/misc/arm/booting.txt.

[1] https://lore.kernel.org/20231013122658.1270506-3-leo.yan@linaro.org

Signed-off-by: Julien Grall <jgrall@amazon.com>
Reviewed-by: Michal Orzel <michal.orzel@amd.com>

---

    Changes in v2:
        - The limit is 2 TiB no 5
        - Remove unnecessary sentence in the docs
        - Add missing link
        - Add Michal's reviewed-by

I couldn't find a nice way to document it in SUPPORT.md. So I decided
to only document the restrict in docs/misc/arm/booting.txt for now.

I also couldn't find any way from GRUB/UEFI (I didn't look much) to
specify the loading address.
---
 docs/misc/arm/booting.txt | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/docs/misc/arm/booting.txt b/docs/misc/arm/booting.txt
index 02f7bb65ec6d..547f58a7d981 100644
--- a/docs/misc/arm/booting.txt
+++ b/docs/misc/arm/booting.txt
@@ -21,7 +21,9 @@ The exceptions to this on 32-bit ARM are as follows:
  zImage protocol should still be used and not the stricter "raw
  (non-zImage)" protocol described in arm/Booting.
 
-There are no exception on 64-bit ARM.
+The exceptions to this on 64-bit ARM are as follows:
+
+ Xen binary should be loaded in memory below 2 TiB.
 
 Booting Guests
 --------------
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Tue Oct 24 10:41:16 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 10:41:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621828.968668 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvEqU-0008WO-8v; Tue, 24 Oct 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 621828.968668; Tue, 24 Oct 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 1qvEqU-0008WH-6D; Tue, 24 Oct 2023 10:41:10 +0000
Received: by outflank-mailman (input) for mailman id 621828;
 Tue, 24 Oct 2023 10: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=CJyy=GG=suse.com=jgross@srs-se1.protection.inumbo.net>)
 id 1qvEqT-0008WB-18
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 10:41:09 +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 d6ab71fe-7259-11ee-98d5-6d05b1d4d9a1;
 Tue, 24 Oct 2023 12:41:07 +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 E57AD1FD8B;
 Tue, 24 Oct 2023 10:41:06 +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 9696B1391C;
 Tue, 24 Oct 2023 10:41:06 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap2.suse-dmz.suse.de with ESMTPSA id gtKPIkKfN2UNLQAAMHmgww
 (envelope-from <jgross@suse.com>); Tue, 24 Oct 2023 10:41: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: d6ab71fe-7259-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1698144066; 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=kfuLYJIPokUZDpyAw19CMxNTcf2Dk4HGZzTHwuBUMZ8=;
	b=CfmDtNxDHeg3yx+JXt43E9TM7x1Q47YPueFp73JCMpBjtK6Y30TARc5Y+vqyVFTU31y+Av
	LYBu2k/CDpxEHWu7Bcy8JW8FlYP3PxuXnuMdnM3cU2Iwztgk9kIExetgpSgwuEdQdPX5H3
	hZFTB/1rWTqpuf+vPtT9Mob6FL5nPtQ=
Message-ID: <8e6c144f-f808-4603-8de4-76decc3c2838@suse.com>
Date: Tue, 24 Oct 2023 12:41:05 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: Lockdep show 6.6-rc regression in Xen HVM CPU hotplug
Content-Language: en-US
To: David Woodhouse <dwmw2@infradead.org>,
 xen-devel <xen-devel@lists.xenproject.org>, paulmck <paulmck@kernel.org>
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>,
 Rahul Singh <rahul.singh@arm.com>,
 Boris Ostrovsky <boris.ostrovsky@oracle.com>,
 Thomas Gleixner <tglx@linutronix.de>
References: <b28fff67f7501e4713af9b8c777f853cc44d6c6f.camel@infradead.org>
 <c75a3d53-fc36-46a6-b781-f16e1e5c6226@suse.com>
 <662772ec0d43cce9233680d67d7114bc8b0ed48d.camel@infradead.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: <662772ec0d43cce9233680d67d7114bc8b0ed48d.camel@infradead.org>
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature";
 boundary="------------lbP3yDP4QJAMM1iBpEtEkiVV"
Authentication-Results: smtp-out2.suse.de;
	none
X-Spam-Level: 
X-Spam-Score: -5.95
X-Spamd-Result: default: False [-5.95 / 50.00];
	 ARC_NA(0.00)[];
	 RCVD_VIA_SMTP_AUTH(0.00)[];
	 XM_UA_NO_VERSION(0.01)[];
	 FROM_HAS_DN(0.00)[];
	 TO_MATCH_ENVRCPT_ALL(0.00)[];
	 BAYES_HAM(-0.96)[86.69%];
	 MIME_GOOD(-0.20)[multipart/signed,multipart/mixed,text/plain];
	 HAS_ATTACHMENT(0.00)[];
	 NEURAL_HAM_LONG(-3.00)[-1.000];
	 MIME_BASE64_TEXT_BOGUS(1.00)[];
	 DKIM_SIGNED(0.00)[suse.com:s=susede1];
	 TO_DN_ALL(0.00)[];
	 MIME_BASE64_TEXT(0.10)[];
	 RCPT_COUNT_SEVEN(0.00)[8];
	 NEURAL_HAM_SHORT(-1.00)[-1.000];
	 SIGNED_PGP(-2.00)[];
	 FROM_EQ_ENVFROM(0.00)[];
	 MIME_TRACE(0.00)[0:+,1:+,2:+,3:+,4:~,5:~];
	 RCVD_COUNT_TWO(0.00)[2];
	 RCVD_TLS_ALL(0.00)[];
	 MID_RHS_MATCH_FROM(0.00)[];
	 MIME_UNKNOWN(0.10)[application/pgp-keys]
X-Spam-Flag: NO

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--------------lbP3yDP4QJAMM1iBpEtEkiVV
Content-Type: multipart/mixed; boundary="------------yNSknw0v1xgl0xmKBU7Oe55e";
 protected-headers="v1"
From: Juergen Gross <jgross@suse.com>
To: David Woodhouse <dwmw2@infradead.org>,
 xen-devel <xen-devel@lists.xenproject.org>, paulmck <paulmck@kernel.org>
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>,
 Rahul Singh <rahul.singh@arm.com>,
 Boris Ostrovsky <boris.ostrovsky@oracle.com>,
 Thomas Gleixner <tglx@linutronix.de>
Message-ID: <8e6c144f-f808-4603-8de4-76decc3c2838@suse.com>
Subject: Re: Lockdep show 6.6-rc regression in Xen HVM CPU hotplug
References: <b28fff67f7501e4713af9b8c777f853cc44d6c6f.camel@infradead.org>
 <c75a3d53-fc36-46a6-b781-f16e1e5c6226@suse.com>
 <662772ec0d43cce9233680d67d7114bc8b0ed48d.camel@infradead.org>
In-Reply-To: <662772ec0d43cce9233680d67d7114bc8b0ed48d.camel@infradead.org>

--------------yNSknw0v1xgl0xmKBU7Oe55e
Content-Type: multipart/mixed; boundary="------------Xt4ja4uKiEsnwc4xBQJUpYjy"

--------------Xt4ja4uKiEsnwc4xBQJUpYjy
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: base64

T24gMjQuMTAuMjMgMDk6NDMsIERhdmlkIFdvb2Rob3VzZSB3cm90ZToNCj4gT24gVHVlLCAy
MDIzLTEwLTI0IGF0IDA4OjUzICswMjAwLCBKdWVyZ2VuIEdyb3NzIHdyb3RlOg0KPj4NCj4+
IEknbSBwdXp6bGVkLiBUaGlzIHBhdGggZG9lc24ndCBjb250YWluIGFueSBvZiB0aGUgUkNV
IHVzYWdlIEkndmUgYWRkZWQgaW4NCj4+IGNvbW1pdCA4Nzc5N2ZhZDZjY2UuDQo+Pg0KPj4g
QXJlIHlvdSBzdXJlIHRoYXQgd2l0aCBqdXN0IHJldmVydGluZyBjb21taXQgODc3OTdmYWQ2
Y2NlIHRoZSBpc3N1ZSBkb2Vzbid0DQo+PiBtYW5pZmVzdCBhbnltb3JlPyBJJ2QgcmF0aGVy
IGV4cGVjdCBjb21taXQgNzIxMjU1Yjk4MjZiIGhhdmluZyBjYXVzZWQgdGhpcw0KPj4gYmVo
YXZpb3IsIGp1c3QgdGVsbGluZyBmcm9tIHRoZSBtZXNzYWdlcyBhYm92ZS4NCj4gDQo+IFJl
dGVzdGluZyBpbiB0aGUgY29sZCBsaWdodCBvZiBkYXksIHllcy4gVXNpbmcgdjYuNi1yYzUg
d2hpY2ggaXMgdGhlDQo+IHBhcmVudCBjb21taXQgb2YgdGhlIG9mZmVuZGluZyA4Nzc5N2Zh
ZDZjY2UuDQo+IA0KPiBJIG5vdyBzZWUgdGhpcyB3YXJuaW5nIGF0IGJvb3QgdGltZSBhZ2Fp
biwgd2hpY2ggSSBiZWxpZXZlIHdhcyBhbg0KPiBhc3BlY3Qgb2Ygd2hhdCB5b3Ugd2VyZSB0
cnlpbmcgdG8gZml4Og0KPiANCj4gWyAgICAwLjA1OTAxNF0geGVuOmV2ZW50czogVXNpbmcg
RklGTy1iYXNlZCBBQkkNCj4gWyAgICAwLjA1OTAyOV0geGVuOmV2ZW50czogWGVuIEhWTSBj
YWxsYmFjayB2ZWN0b3IgZm9yIGV2ZW50IGRlbGl2ZXJ5IGlzIGVuYWJsZWQNCj4gWyAgICAw
LjA1OTIyN10gcmN1OiBzcmN1X2luaXQ6IFNldHRpbmcgc3JjdV9zdHJ1Y3Qgc2l6ZXMgYmFz
ZWQgb24gY29udGVudGlvbi4NCj4gWyAgICAwLjA1OTI5Nl0NCj4gWyAgICAwLjA1OTI5N10g
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0NCj4gWyAgICAwLjA1OTI5OF0gWyBCVUc6
IEludmFsaWQgd2FpdCBjb250ZXh0IF0NCj4gWyAgICAwLjA1OTI5OV0gNi42LjAtcmM1ICMx
Mzc0IE5vdCB0YWludGVkDQo+IFsgICAgMC4wNTkzMDBdIC0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tDQo+IFsgICAgMC4wNTkzMDFdIHN3YXBwZXIvMC8wIGlzIHRyeWluZyB0byBs
b2NrOg0KPiBbICAgIDAuMDU5MzAzXSBmZmZmZmZmZjhhZDU5NWY4IChldnRjaG5fcndsb2Nr
KXsuLi4ufS17MzozfSwgYXQ6IHhlbl9ldnRjaG5fZG9fdXBjYWxsKzB4NTkvMHhkMA0KDQpJ
bmRlZWQuDQoNCldoYXQgSSBzdGlsbCBub3QgZ2V0IGlzIHdoeSB0aGUgcmN1X2RlcmVmZXJl
bmNlX2NoZWNrKCkgc3BsYXQgaXNuJ3QNCmhhcHBlbmluZyB3aXRob3V0IG15IHBhdGNoLg0K
DQpJTUhPIGl0IHNob3VsZCBiZSByZWxhdGVkIHRvIHRoZSBmYWN0IHRoYXQgY3B1aHBfcmVw
b3J0X2lkbGVfZGVhZCgpDQppcyB0cnlpbmcgdG8gc2VuZCBhbiBJUEkgdmlhIHhlbl9zZW5k
X0lQSV9vbmUoKSwgd2hpY2ggaXMgdXNpbmcNCm5vdGlmeV9yZW1vdGVfdmlhX2lycSgpLCB3
aGljaCBpbiB0dXJuIG5lZWRzIHRvIGNhbGwgaXJxX2dldF9jaGlwX2RhdGEoKS4NClRoaXMg
aXMgdXNpbmcgdGhlIG1hcGxlLXRyZWUgc2luY2UgNzIxMjU1Yjk4MjZiLCB3aGljaCBpcyB1
c2luZw0KcmN1X3JlYWRfbG9jaygpLg0KDQpJIGNhbiBwcm9iYWJseSBjaGFuZ2UgeGVuX3Nl
bmRfSVBJX29uZSgpIHRvIG5vdCBuZWVkIGlycV9nZXRfY2hpcF9kYXRhKCkuDQpCdXQgSSdk
IGxpa2UgdG8gdW5kZXJzdGFuZCB3aHkgbXkgcGF0Y2ggY2F1c2VzIHRoZSBwcm9ibGVtIHRv
IHN1cmZhY2UNCm9ubHkgbm93LCBpbnN0ZWFkIG9mIGhhdmluZyBiZWVuIHByb21pbmVudCBz
aW5jZSBjb21taXQgNzIxMjU1Yjk4MjZiLg0KDQpQYXVsLCBkbyB5b3UgaGF2ZSBhbiBleHBs
YW5hdGlvbiBmb3IgdGhlIHNwbGF0IG9ubHkgY29taW5nIG91dCBub3c/DQoNCg0KSnVlcmdl
bg0K
--------------Xt4ja4uKiEsnwc4xBQJUpYjy
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-----

--------------Xt4ja4uKiEsnwc4xBQJUpYjy--

--------------yNSknw0v1xgl0xmKBU7Oe55e--

--------------lbP3yDP4QJAMM1iBpEtEkiVV
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/Ey8FAmU3n0IFAwAAAAAACgkQsN6d1ii/Ey8H
FQf/R8mncueOtQlKlKUMObQWbV2IIsskrsYBfgtbUEJ4dvpuklP86071VU4j3WCp1OxYB5XI2BeB
rox0Mk8G/bnIrWIjmco6p8Ltj7YPJgX3dCe2fGiNgPydKlnPpEfC4Ajin3TDXB8LhwZAZul0RKFB
BJotT8v81M/otPMsVqr97JHv8TvxHAawehgFo/HKsDLEqcgS5D5ye55Y1KLjbJzOvGXyHxZHBUOj
r6eimmHXONQR/79TNRmCBgUGUks1Wt8u7XzoGuAOGf/wyutYEseaX/l2o7tblqmPRWXmwS/EUSa1
2rBmvSB7ypUNdqDTczM7timMHC66cB9xoHy/JwSVqA==
=hnJy
-----END PGP SIGNATURE-----

--------------lbP3yDP4QJAMM1iBpEtEkiVV--


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 10:51:22 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 10:51:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621831.968678 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvF0G-0002sr-62; Tue, 24 Oct 2023 10:51:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621831.968678; Tue, 24 Oct 2023 10:51: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 1qvF0G-0002sk-3M; Tue, 24 Oct 2023 10:51:16 +0000
Received: by outflank-mailman (input) for mailman id 621831;
 Tue, 24 Oct 2023 10:51: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=krZT=GG=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qvF0E-0002se-LG
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 10:51:14 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 (mail-db8eur05on20616.outbound.protection.outlook.com
 [2a01:111:f400:7e1a::616])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 3f0d2118-725b-11ee-9b0e-b553b5be7939;
 Tue, 24 Oct 2023 12:51:12 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM9PR04MB8469.eurprd04.prod.outlook.com (2603:10a6:20b:414::15)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.14; Tue, 24 Oct
 2023 10:51:10 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6933.011; Tue, 24 Oct 2023
 10:51: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: 3f0d2118-725b-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=mtEov3nFtdRyBGaTeJdVm4JljhWwBSi90IxFPiV/+aWu6OobTc31cb73/i4nE6Nk1MRRizVH1Se0E7BJJsRiV5V3nySz33PblXUEOUH3u4btbPLasN2XL6HBDMbSkiXkzjRwTJwY8IVsCJnwLS9tzHubNo8VJr9hsc5VFy4eHWEWXpmf43z9KNjRlPKB85jOFG6MDvNQL49oEEkEuqsxyKKNiGZQfbOdduvNFUJ9sE5L2wA2oN5+PYZ364/SslHXi4XhchJEOeThl+lEFsl8qzmxG9VV3vvRyZTOWohyc/ziX7A6J4fStvZ6+Xm7K1sPZlNvYPoVG4cAWHdgqfVVNQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=eLor1xL0FOwsa7R/3yRFaJPcGfFx8Dd0voJKlrJtI+U=;
 b=RL4ujQnM1CUOx1w+1KFPFtML6j/8NX5dOrv369HZ2S/AEv/eDiqgsySL7gVNASyS60E5FWXYL+0f2eGQ3V/Nwf4A4oWkqzSSJCZn/FrOrQ3nfsG3ZQtEIT1Vd7QskZ+9IWOK8mDA98fBgVjwFHCaQJz+AuYJIFreiMzEobO2CPJhcEDfNMx7Vq1EbY60GY71oNFrAPlQh2BEpF7NzPL9y5OzBRuNA4uwXuIlCdgp5QDWZ9GogCqTd22RxeovJgxhL+lpajsAKFw7ojUSJmHkg8oZAhdHB0yj13DU3qQDsVfcG/3AuPgVD/ysPX1USp1FArqypVKsi/1Oo2c3npQQuw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=eLor1xL0FOwsa7R/3yRFaJPcGfFx8Dd0voJKlrJtI+U=;
 b=1qZBtyMFAQpdxFm0EVJ7naBTGczHuGYH55ijf5Xc7FQOl5I1xpqBxHGax2K99twcEjZYwcjrkaAsNmgtq7eAQ+zZyhcolaKABd4S4qUkwCtTZIkwr7NwM6wEOVnmTXSBGy33f65l6YQJs5XBo2eOTSvcJr8wtLEOo3fhuUiv8o7/NjgyB3TdrASx0i381NEH5XUB619cg6fmcx5DCzT7uKNbBslVdZO/+16pU1MWn00A459dqB+Q0T1xxb3xRLMO4n0j7kI0iGecZrf8DlJGOA8OPNXJfAXty+CRyaPrDW5rq7/30UpvMd2tV5I8ccL+IWx6UdiCrBAkvXjvRcNvoA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <2c5a5b6f-5c67-e46c-765c-81999ac1e11b@suse.com>
Date: Tue, 24 Oct 2023 12:51: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 v2] 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: <20231023124635.44266-1-roger.pau@citrix.com>
 <a525cc49-69e7-c509-61d4-a2456b3fdbcc@suse.com> <ZTeY6JNbNfTVCpib@macbook>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <ZTeY6JNbNfTVCpib@macbook>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR0P281CA0081.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:1e::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_|AM9PR04MB8469:EE_
X-MS-Office365-Filtering-Correlation-Id: e49d22ed-4602-4997-c08f-08dbd47f2234
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	oOtq2wqeNLkxakMscb4voPehMfBki4+CphZpkP8nlnonqcZm/JDWBCGBniQuTwquznWnT4kCcdgm7Fakgseu7ShdTZF2NBq1+UPc2XOQFTg4acp033SOpiaJlWkhp28l01xtngm7dCHfENJhdxdHR0+48q33+UIbGBBfOrhcUvwYKS4s+Pvg4e2UoKNxBqG5NG5Jxu3OWmQuia7eSn5CIMrJfwS3Nb2vF8uAI5xRr7zUw6zfuSOBB4criOjTD3LD1JWh/bcsX5b+7duP+TeixxEiMzlxW3EEg+yStiqPduL2nk0iAkhQOWxdCxIRSvCI6yeD9i+j9U6HmFSveFqnP8x9DbjSnBeBT/UwRfGkcJBjMSwpKCW5ajEZCblsqPy3hIWkRogjamIIWVgb/mHSnUW2c0M8+4l+0CNg5/kGq0WfxPtxca4HXHVIjPkc3JEdAvvyJ3nmFV5TtAFeRs0aufIlvT6fxLFTuJaDoG+f7Oz3IKk0sC2E2GuORRxdJ72SfWDsarCGc2mjuVeuWBn2lJCSYuxQEoRhFoygg77CNxmp7SiLafYz4XJ+nHFpReEx5zrNK87gDOUmRSRZ25Qq0zozNLikglmRUksTEy9kQ0J46S2URl96kHH9Xwrnsrka90sTa2Wlze0t3Gs2QQBd/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)(366004)(346002)(136003)(39860400002)(396003)(376002)(230922051799003)(186009)(1800799009)(64100799003)(451199024)(8936002)(4326008)(8676002)(41300700001)(2906002)(5660300002)(66899024)(53546011)(6512007)(6506007)(36756003)(83380400001)(2616005)(38100700002)(86362001)(66946007)(26005)(31696002)(66556008)(31686004)(6486002)(66476007)(6916009)(478600001)(54906003)(316002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?RlBJeFoxdnBqdW1KSjJCY1c4Y1BXelk0S0lFenY3blJKaVk0S1RxZ2hBdVVq?=
 =?utf-8?B?UDVNV1FVOUU5RTMvWjFxS1NQbmVSYXVkbVhwaFI4cFVMa09HS2RQUk5tKzBI?=
 =?utf-8?B?UnJtYTZMTzFwcFpVTGlwSUNIU1dPRjZBYVorS1FxSWpGa3c3Nml0WVZka0xr?=
 =?utf-8?B?N3JCWFAzU2t5L0wzR0dGbUNEWllBZDc5NlgvV2tQMFhDclMzdW1RQnd4aFFX?=
 =?utf-8?B?TklCQmJHWHIzWkVRNDJ4R2F3Y1dIekd5VWFhajc1Mi9uaG1Wc2RPLzRyVDE0?=
 =?utf-8?B?cEI2SnFJeU5XTXVrRncrVlBwM0ROMDlxYjNVNXpXYU9HVENabG8yMkd3bDl5?=
 =?utf-8?B?WEtydWw3b1IwZUFFWWM1dytWUzRtQ1pHcXhKU3hVVklUYW5NN0QzMGk2Y0o3?=
 =?utf-8?B?RmoyMlZoOU5HZ2dIUmdweGNiYlgwTjVJVjFlNUF0a0ZtNW80cDJwemxGdUtK?=
 =?utf-8?B?NDlKT0EzVjF5R3p0dEFkdGZnNGgwck1wc2dEQnhSYTlubUV6REh3WUVpY2Zm?=
 =?utf-8?B?cWdITS8rNHZ6WjAweis3U21oaEVPaktnZWo0WWNIOWh5UitkdDN6Sm5ISzY1?=
 =?utf-8?B?TXQzMkxoNzBaZzR3M3BjU0N5aDJkOTVTU1lhS2NBRUwva1hSdWl1REx3eVBP?=
 =?utf-8?B?VS9pcU9pb2dHQWZmT3V5MmFsRHRORjBxOWV6bk0xSUdpSEV1cDJxR1BqbGdJ?=
 =?utf-8?B?S20rMnplenpPT3BlajMvMHBKaU1kbUFoaVM0VmRKRExuUzJuejR3MnR4MmdQ?=
 =?utf-8?B?WDc2ZGdxb205WHBDci9VTE00WkpLeVc4d0RKcGZwOW1iM08rVHliZFNXUml6?=
 =?utf-8?B?MWVYRWJValhUU2hVb0Z5UnByd2JNT2N6ZFRLNW1nV3EyTXNQVjBCYURkWnVO?=
 =?utf-8?B?TGkyckdLTDVJMVdQaGRacEM5eXcyRVhNMVl2RUlrUlJvdFRjeGVQYWZBRGpQ?=
 =?utf-8?B?L0tKVkFSTFVXRzhMUXRjSlhwOVNjOVFwajBqa09vVlJ1eFNTWTBtSTZhYW5R?=
 =?utf-8?B?blJyRnc1WktsMmdBMHU4ZkQ4Si9kc3ZZSytVT3o4ZktCRXBmaHRhU2IwTmhw?=
 =?utf-8?B?WDhGRW54MExRYzNlQUZWSzBjLzV3Q1VYTUZjRnA4SVBBOEFXY3hWN0xJaE9M?=
 =?utf-8?B?SFFySWZmbjNZbklRZ3R3ZUg2M1FiN0t5ZXB1aksxS1M4UCtkaCt2UjRwZzN6?=
 =?utf-8?B?d292d0NSdXFPVkUxTXAxYXkrbzNVM0wrSTJhMTN2Y1JpUmVnQ2RoY21CdjNB?=
 =?utf-8?B?MXJWckN2TjUrQTJRbndpcTBXejVoaFF5dk05enMyQXd6VHFSSVVBSzkxQUhP?=
 =?utf-8?B?ejJ5V2FDckxjbHliQi9JajAwUDNXYjRUV3MyT2xxdnNFOWtCVEkxYlBaTzZJ?=
 =?utf-8?B?cExERS9wOVJuQWdqSUgvQlhEdWFNdndOcHY2TEpvTUR1bWg0Z2ZFeW4rWUdp?=
 =?utf-8?B?OGxLSzNBdFYzVFdxenN5VjU3Z3FYMmFrUXdONGo0bkJpNmxaSzJlNlZGbWti?=
 =?utf-8?B?VGQyRjVsNURaR0xWaUpxOXpCQkpLOGczd21yNU5rSzNnZnkvZTlKNHZhSm5B?=
 =?utf-8?B?NTQrWmJBaFBlVkNLVmxqaStyQVpOVzA0ZWNkd01yR0xFZ2ZHREtmNk4xSFow?=
 =?utf-8?B?UnBaZGF6aHFZbGpXZGd6UWNHSEgzbHc1cXp5Z2xUeXk1WU9hWmlrczdSS1Ra?=
 =?utf-8?B?RnVib1RsOHFjd0pMbnRiTG1PTUorZCtLU2tuV0wybWJFUU9wOWUyRWJhVTB0?=
 =?utf-8?B?QXNCTmVZSzkvem5Bam55TUlOakZaVE5pejJOU2hFaFM3Nk1vU3V2SjMyMDZw?=
 =?utf-8?B?eVFyc3dOYzgwUk1oNGRXeXFQcCtXVEhHVCtXcUNOaW5IYmlFWDc5N09BUFUz?=
 =?utf-8?B?dVREQlIyTVpuT0pqbFBUbWJIM1FYZ0paaldqWWpZNnNGc0VIWjJ2TGtRenJN?=
 =?utf-8?B?dlJiY2tmZ09LVGZldDhGalVNWHFCNUI0d0htUVVxY0orc3V6Q1VjMUluYTRa?=
 =?utf-8?B?VDZyZHh1bEhLS2RHRzNUMVRNZDRuRnBTQ1F1VDV2Nld2SmZPV1dBVldpcmlv?=
 =?utf-8?B?VGJVTEgvaE5xZ01sd012WjRVeTdyUmt0ek4yREZNMDEwRGFCYVFPeUREdTJr?=
 =?utf-8?Q?Z31HrkAxtS496mBpzp2+TPMRO?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: e49d22ed-4602-4997-c08f-08dbd47f2234
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 24 Oct 2023 10:51:10.4376
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 7BlkwtGpeqyFMHSLJ1mApNImWoUbaOLwXc3wH52ZnLEfJhn1GFJGlPPnN0xDkECNjokvSfb6/+/JDFftCL/uZQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR04MB8469

On 24.10.2023 12:14, Roger Pau Monné wrote:
> On Tue, Oct 24, 2023 at 11:33:21AM +0200, Jan Beulich wrote:
>> On 23.10.2023 14:46, Roger Pau Monne wrote:
>>> --- a/xen/arch/x86/i8259.c
>>> +++ b/xen/arch/x86/i8259.c
>>> @@ -37,6 +37,15 @@ static bool _mask_and_ack_8259A_irq(unsigned int irq);
>>>  
>>>  bool bogus_8259A_irq(unsigned int irq)
>>>  {
>>> +    if ( smp_processor_id() &&
>>> +         !(boot_cpu_data.x86_vendor & (X86_VENDOR_AMD | X86_VENDOR_HYGON)) )
>>> +        /*
>>> +         * For AMD/Hygon do spurious PIC interrupt detection on all CPUs, as it
>>> +         * has been observed that during unknown circumstances spurious PIC
>>> +         * interrupts have been delivered to CPUs different than the BSP.
>>> +         */
>>> +        return false;
>>> +
>>>      return !_mask_and_ack_8259A_irq(irq);
>>>  }
>>
>> I don't think this function should be changed; imo the adjustment belongs
>> at the call site.
> 
> It makes the call site much more complex to follow, in fact I was
> considering pulling the PIC vector range checks into
> bogus_8259A_irq().  Would that convince you into placing the check here
> rather than in the caller context?

Passing a vector and moving the range check into the function is something
that may make sense. But I'm afraid the same does not apply to the
smp_processor_id() check, unless the function was also renamed to
bogus_8259A_vector(). Which in turn doesn't make much sense, to me at
least, as the logic would better be in terms of IRQs (which is what the
chip deals with primarily), not vectors (which the chip deals with solely
during the INTA cycle with the CPU).

Jan


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 11:20:55 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 11:20:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621834.968687 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvFSo-0001b8-E5; Tue, 24 Oct 2023 11:20:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621834.968687; Tue, 24 Oct 2023 11: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 1qvFSo-0001b1-Af; Tue, 24 Oct 2023 11:20:46 +0000
Received: by outflank-mailman (input) for mailman id 621834;
 Tue, 24 Oct 2023 11:20: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 1qvFSm-0001ar-P6; Tue, 24 Oct 2023 11:20: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 1qvFSm-0006Od-KM; Tue, 24 Oct 2023 11:20: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 1qvFSm-0000mE-2M; Tue, 24 Oct 2023 11:20:44 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qvFSm-0007Ub-1p; Tue, 24 Oct 2023 11:20: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=HWukgyBU5y+eNz5AzeDcAclLfXqhFyta4Y6McYAZcq8=; b=CE0H1eWfnvAaDc5v6kGwtFDxuj
	RsY8NQN2c91ryllatpJC0mXJGlNXvlkntpkcwgfL5VynoXE3q59W9pFmW+aas6LVX1/Op8+xU58rB
	z905GMtas7b8NtKstf4mDfPNXuWAqjYOpR0EsNxTdVyzipwTYFc+ZSuh+InZvuihkD+0=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183503-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 183503: tolerable FAIL - PUSHED
X-Osstest-Failures:
    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-armhf-armhf-libvirt: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-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-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-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-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-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu: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-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-raw:migrate-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-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd: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-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds: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-qcow2:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=84186fcb834ecc55604efaf383e17e6b5e9baa50
X-Osstest-Versions-That:
    linux=e017769f4ce20dc0d3fa3220d4d359dcc4431274
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 24 Oct 2023 11:20:44 +0000

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

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 183499
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183499
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183499
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183499
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183499
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183499
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183499
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183499
 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-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-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-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-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-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-amd64-amd64-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-amd64-amd64-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-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-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-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-qcow2 14 migrate-support-check        fail never pass

version targeted for testing:
 linux                84186fcb834ecc55604efaf383e17e6b5e9baa50
baseline version:
 linux                e017769f4ce20dc0d3fa3220d4d359dcc4431274

Last test of basis   183499  2023-10-23 18:11:24 Z    0 days
Testing same since   183503  2023-10-24 02:26:34 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Ammar Faizi <ammarfaizi2@gnuweeb.org>
  Linus Torvalds <torvalds@linux-foundation.org>
  Thomas Weißschuh <linux@weissschuh.net>
  Willy Tarreau <w@1wt.eu>

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
   e017769f4ce2..84186fcb834e  84186fcb834ecc55604efaf383e17e6b5e9baa50 -> tested/linux-linus


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 11:36:39 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 11:36:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621858.968698 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvFi0-0004ua-T5; Tue, 24 Oct 2023 11:36:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621858.968698; Tue, 24 Oct 2023 11: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 1qvFi0-0004uT-Ph; Tue, 24 Oct 2023 11:36:28 +0000
Received: by outflank-mailman (input) for mailman id 621858;
 Tue, 24 Oct 2023 11:36: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=JtWs=GG=citrix.com=prvs=654e64a5b=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qvFhy-0004rV-NQ
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 11:36:27 +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 8d7de3e9-7261-11ee-9b0e-b553b5be7939;
 Tue, 24 Oct 2023 13:36:22 +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;
 24 Oct 2023 07:36:19 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by DM6PR03MB5244.namprd03.prod.outlook.com (2603:10b6:5:249::9) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.11; Tue, 24 Oct
 2023 11:36:17 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::acf0:ce2b:1634:5aee]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::acf0:ce2b:1634:5aee%6]) with mapi id 15.20.6933.011; Tue, 24 Oct 2023
 11:36: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: 8d7de3e9-7261-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1698147382;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=zdJeYo5zTzhjNkKy3hzoga+g9blqNT0YrHbEwn2YjEI=;
  b=hxvZ4PtsRT6NV009uGiFpvEgRAkvQDRQGb4V6J2gGd2ErQ6owH0Yqjng
   ePD8tjOj9LCiKcgRiVNLae80V0YiooENAuFD5cjVkfOKkDTv4phGpfrGa
   +k7meEChavzT5jkTma/qNB1FHgZZPU/EPVSlcaKf7QQVUjyCBNouge8wh
   M=;
X-CSE-ConnectionGUID: Cgdx83kcQ8aCpRo8utgKHg==
X-CSE-MsgGUID: NUG12zFwQuaC+YK4LvKkLQ==
X-IronPort-RemoteIP: 104.47.56.41
X-IronPort-MID: 126343993
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:LQWWQaKuNiNNu3ISFE+R9pQlxSXFcZb7ZxGr2PjKsXjdYENS0mFSz
 zEaCGnVM/uMMWr3LYxwa4219RtQuMDSzNE2GQZlqX01Q3x08seUXt7xwmUcnc+xBpaaEB84t
 ZV2hv3odp1coqr0/0/1WlTZhSAhk/nOHvylULKs1hlZHWdMUD0mhQ9oh9k3i4tphcnRKw6Ws
 Jb5rta31GWNglaYCUpKrfrYwP9TlK6q4mhB5gZiPakjUGL2zBH5MrpOfcldEFOgKmVkNrbSb
 /rOyri/4lTY838FYj9yuu+mGqGiaue60Tmm0hK6aYD76vRxjnVaPpIAHOgdcS9qZwChxLid/
 jnvWauYEm/FNoWU8AgUvoIx/ytWZcWq85efSZSzXFD6I+QrvBIAzt03ZHzaM7H09c5cDm1ep
 acbIwldZzubveXm3a60aclj05FLwMnDZOvzu1lG5BSBV7MKZMuGRK/Ho9hFwD03m8ZCW+7EY
 NYUYiZuaxKGZABTPlAQC9Q1m+LAanvXKmUE7g7K4/dppTSKpOBy+OGF3N79YNuFSN8Thk+Fj
 mnH4374ElcRM9n3JT+tqyjy3bOUzHKgMG4UPJuF2acwknOM/3EaI14ndgefv9q6rnfrDrqzL
 GRRoELCt5Ma9kamU938VB2Qu2Ofs1gXXN84O/I+wBGAzOzT+QnxLngJSHtNZcIrsOcyRCc2z
 RmZktXxHzttvbaJD3WH+d+pQSiaPCEUKSoOYHQCRA5dud37+tlv11TIU8ppF7OzgpvtAzbsz
 juWrS84wbIOkcoM0Kb99lfC696xmqX0oscOzl2/dgqYAslRPuZJu6TABYDn0Mt9
IronPort-HdrOrdr: A9a23:vGHPjq9dJjHrMfxnYu5uk+AuI+orL9Y04lQ7vn2ZKSY5TiVXra
 CTdZUgpHnJYVMqMk3I9uruBEDtex3hHNtOkOss1NSZLW7bUQmTXeJfBOLZqlWNJ8S9zJ856U
 4JScND4bbLfDxHZKjBgTVRE7wbsaa6GKLDv5ah85+6JzsaGp2J7G1Ce3am+lUdfng+OXKgfq
 Dsm/auoVCbCAwqR/X+PFYpdc7ZqebGkZr3CCR2eyLOuGG1/EiVAKeRKWnj4isj
X-Talos-CUID: =?us-ascii?q?9a23=3A4X26g2gqbe2BlFV7vRP/mOekAjJuWXLR3CeLIES?=
 =?us-ascii?q?BWW9CUIeSGUKM94BEnJ87?=
X-Talos-MUID: 9a23:iefX2gWGTjPyXPvq/BnRq2g4Jul32rmnIwM8sskipeqHERUlbg==
X-IronPort-AV: E=Sophos;i="6.03,247,1694750400"; 
   d="scan'208";a="126343993"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=gdhQRBT1nOmQ2eEdaPcLkcixGqqXzOtZbWjv2/RuEJLjFmE8NrVBKmB88IQ7DqQugmRKz9QYvSnjBVxDkDUAPba7DdRwIHCveLWQUV8jqaefh2Q1+PnfYlR3MMeeV3BEb13zE8NmyKJWd2Kn3CGYKFz2eMR2tK58KlRUXa3B0EQ5GUTxClpNTjePGPF3x75Vk45LCESlSvRJwDeEmAx557aoLyxkFII6wRg1Fuxz1wg5VnUyKAN+KU9/jZyDflWGfyE4ARjRzPdgJP5RgXuVYvGH282Q/aKDvSmncm3x5Mx254CIHiCc3GCWiYvF+ahMpdsxj7LIpgGG/1/xlWd7ww==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=4j9mYNdEBLobWKQtvM3lP0y2DWfbGLHDV4nSpwh1qEg=;
 b=JwQAEnDMNYsA3lEe1IQaw0OSB8FKwdY2ljfRhm9gy9zrHkTg43EvHHYqwc4x5UkkSO9sI2PFINIyRd+cnFgnnspLIkGNOlXsCIqL0LSo2dEIzA/meGaZwmYVosuU9BAyF81Q4DK1lS2U1UQstC4EGGMfVih5Lt6h6lOG//+Q4H9PTJ0MVDQsoYxA/V4dbQ7PzwL2lpUDS/msPrcVB9Dq6VahMQGbNA6EOU/X9+IXEjYvbvrwxtzC7NTKUqfrJhbX89W0IDC0UK8lmcclryQUozLoLkCbvF5fJ/sOgg25Tcf5ZqWWDR0TOBPWSZNCFcCSUjZz1TRShWDR4McS/3ABrA==
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=4j9mYNdEBLobWKQtvM3lP0y2DWfbGLHDV4nSpwh1qEg=;
 b=udIAqf3KPgWzjGZIbMfBtFBXsl2kPHa+14/Oa0IuMMyfNBoHDw6ljMfkUPiB6gzFhBtCqHcuRb1BLVKpGG+5YJ1gMjEGSRw6F/Pt26XzcL54PHAteaZyd1ks80spDfB3BIUtymT9LOqFNQxCKyOqEN/8bgmXbvFhmDcKyw3L+60=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Tue, 24 Oct 2023 13:36:13 +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/i8259: do not assume interrupts always target CPU0
Message-ID: <ZTesLTIulycE1s5d@macbook>
References: <20231023124635.44266-1-roger.pau@citrix.com>
 <a525cc49-69e7-c509-61d4-a2456b3fdbcc@suse.com>
 <ZTeY6JNbNfTVCpib@macbook>
 <2c5a5b6f-5c67-e46c-765c-81999ac1e11b@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <2c5a5b6f-5c67-e46c-765c-81999ac1e11b@suse.com>
X-ClientProxiedBy: LO4P265CA0120.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:2c6::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_|DM6PR03MB5244:EE_
X-MS-Office365-Filtering-Correlation-Id: 70fe5b8f-f7ed-4751-f271-08dbd4856f81
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:
	ebQV+0hdIxG20JjcsFW8eToaJ6yehHaE4na6zffXXLhBNnjUsMbw/gGFt0ajmYNv7LJt1cd5CC9LpfcH28du3MVoE1PqMzHA7ux06x53U9yF7Zd7p02bXUjmTlmAuWHxqKY37qlALoPTrHG8DWuaextCoDMKZOZOyI3Zu4zeMkCuaJI5p+JkvZy62vTyC8yuHVOiSin15P5Zvkjs2RjZZgQCoo5d5NP5Cv+FCEKUZSx477HPvITRSgfonRO+3r1UH7E8RtvW2m46UwOETKdwZULHha0ip6NRgMSImWG0OiDWv3WBES2sjHmNCdAP2tprIfBPLeNxajjm+dBK5Vfqo0GnZyyMhIy7IMBDYDWMHCL1zyf9Nau7e3cXLZdv7Is77TgVAvQ4HF7/2/TESC1BJ7mNkkrfDf1Quz1Jwm6oGz++T6tP6ZlGoo2vHIkphcY+acH5jJPe6bhq/eE9ORcc1E20+w7ht1zE8xQsTU9F+4Bh6F6KYgs+Xgb7uHd2B5/c+8A7pCHigKbOwz/ZhyIimZTnfxbqKSZXDRitNaiU74Kef4S5RWMhGTD6InbuF2Eg
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)(396003)(39860400002)(366004)(376002)(346002)(230922051799003)(1800799009)(64100799003)(186009)(451199024)(66899024)(83380400001)(66946007)(86362001)(66556008)(66476007)(41300700001)(54906003)(6916009)(316002)(6506007)(9686003)(5660300002)(6486002)(478600001)(6512007)(6666004)(4326008)(8936002)(8676002)(85182001)(2906002)(38100700002)(26005)(53546011)(82960400001)(33716001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?aHlISmNHTGdUQnE1cW5Wd2JKeFV4OTRGcFZGNlRJOWdMcmd1SHF1WU1uaUJR?=
 =?utf-8?B?T1o1VzhpWVF6bHJrdUFxSUdnenNQUnJiKy9DWjVBd1RUc1dRTG1vRjZpQ1dI?=
 =?utf-8?B?Zk9JV3RsVXBTOTRwSTZleUw2TW4vRjRQaEpIQTVnM1ZiSldTem4xbGNwM2hI?=
 =?utf-8?B?WnFJcnhjNS9PbURVeWgwVzBuZXZObzNvc0ZIRFJyRUptSy9oeFFGKzJlRXZr?=
 =?utf-8?B?L1ZYcVc0SnM4YVA3aklYTFoxZjEwbTBKY1dyLzFqUVVJdHBvS3oxOTR4TE5l?=
 =?utf-8?B?dWI5alM1UVh3aGJoOTdEN003Uk9xSnhxOUs1THRNWEoyTnFoRmVmQ2lRSUc1?=
 =?utf-8?B?UDhTWXdhRk1NYnNlaTBSeFpBZDZFbkJvR2pTdXprS3d5N1VpOXpNMjI0Vk54?=
 =?utf-8?B?UFozaURHOWlkaU9wUjYreDI3WURJSmQ0b3o5ZUNiNnRkZmFpaEdGbkNEbG5o?=
 =?utf-8?B?YmFkWmV6bjYyL2JXVVVwQllWeUVUK3lEd0NMZ1duejJwQVU2OFBHcG5QSks0?=
 =?utf-8?B?QjFMK0hsUHhac2hxVjRUY3d4L1Z6eW0wdUM2OHExQ2w1UVMyKzRpRHJtaG9W?=
 =?utf-8?B?VG1OS3BYTmxuZUJSemlkNVRwRE56OUxocXlNYnE3NU1PdStjR0pjZ1krV2Er?=
 =?utf-8?B?cVB5Z2FVMGh0QUpVQTVYWHhDWXk3T0hwcVBtUjFqYWRvQWFtbUQxbU15MmNP?=
 =?utf-8?B?cTJYSHlwVEZ3eVFYOFhvK0JzK0s5NjV6S0UzT05TenlOakg1Y2dMMWJpT01T?=
 =?utf-8?B?cVVzQitDSHJNYUpwSXRFTHpUbWgzQWZOU2RKbFFPdGRCRFlKZUJEU29FVTFs?=
 =?utf-8?B?VWVqQzVtV3poZmd4UGdCTUh6Mzc1azdreG5jSXRVRXFlcVpoTHlydXZlYzVx?=
 =?utf-8?B?TldmdWpmTnRHTDFYYVhyd3phUkxQV0J0ZTJhL0Z2ejQrNllTUDVtalpjb2VF?=
 =?utf-8?B?aCs2VG5GZllGY0JBdTBKV0IzeFltWWNBQ3Fub2RxUTVkNk5YbnI5REhJWWo3?=
 =?utf-8?B?M2gzZnMrNnpXTEpzd3BCV0NwalovZWpuamNFeUJtZVdPQkJsWlI4eklBK2tw?=
 =?utf-8?B?T2lmZWhxTHBveUdKZWpJakJGaytJaVNYQW83TDdyWDFxUFpybUFEa3R1VzlM?=
 =?utf-8?B?aWJWSnhlNlNWbGgrUmZWaGNqdVFWVGowOVRkVVFmTGloTytTZXU0WktyeTBD?=
 =?utf-8?B?NmZsTDU5VFVDMzRDamtFTFFCUDVSYXhFZkdsSTY0SWVGdmJmNDV6WkExeGdz?=
 =?utf-8?B?WkdiczE4bFV5NGliRFhjMkZQQ1Q1TllYbTZHeGRIZUU3QVliQ1NySG9qRFA3?=
 =?utf-8?B?YU1GSUR3T3FrOU9VVnJnVjBZTzFPOStDbm5SNTZvTHRCUFRrSDhpSlBScnUz?=
 =?utf-8?B?TmhnUHB3NWlCNVlTT1JFM3VndTk1ZWZRNExlcUE1S1VHU0xDM2tWbDloazNu?=
 =?utf-8?B?eEZaSWc1Y2toYURQUVVUNlNCaXUxcjg2ZEI1VGtPclplSVgxcVVxak0zeUtY?=
 =?utf-8?B?WmtWSTNFUFdPOXRILy92S3BVSC9uSVFCL1hGU3BKWEZFZ1VOc0FEc25NbkhL?=
 =?utf-8?B?eWgrc25HUDBKV0JBS2tIdjlIekpNK1dLd2FabVVtN3ZzcWFneVFRNTdKbXpP?=
 =?utf-8?B?cEZWT29uNk9rVHlTaDlLZHdhTVovdGI3eHE4TUQvOFk1NThxS3crdXV2cnBH?=
 =?utf-8?B?UC9GcDlJZ1hUZlZvbE1scmR5V0kvWDdheWRvVjkySUtvZUhtc0VmeXYxWitM?=
 =?utf-8?B?Y1FKd1FnZkhaNXZkb2VPa2lWNU4yTU1LYzFZNUt1aXhGUGRSS3pJK005a0s4?=
 =?utf-8?B?Z05QbXcrZTNEbGU1M2lhZjNiZGxtV3h2NXYxeExzSllpcW1FSzloblY5Tkgz?=
 =?utf-8?B?Wk42QmpIQmswUjNmU3hnZXF0WE1jV3NEdzNuV3hJcHVTQWxlbk5tMWtCU1dW?=
 =?utf-8?B?enczZmhUT1lwYVVBQlJrQy9HQjZjODNCdTdTU2paa0NIMXRTeHhWK0E2ajVt?=
 =?utf-8?B?R1NNY01aUmtHZW1lMFZ4SGkrZ2VFNE5YV0xySEdmMEEyZmRTZ1laemhRbVB1?=
 =?utf-8?B?QXRabWdYcC9OL3VObU9LYkFKanVMUndRU0ZwU2FVTlhvc25oUmJ6a2pKbk9n?=
 =?utf-8?Q?9B8VdkiBcMdoO7ZpXp0r00Ehn?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	+t6eNysqYWYQ/cFSRgGD4x2cgnpnK6yVYwgpzOR56DfvYTfXp1zWmHg/TXxRFfIRJVI3ArYTWx6gfWjbYiG0iMr0XtCMk/IJSy3JE5OozT22NK+lqPk+U2UJJmqqr9u5FzQ4XAqe6Cq0xerrRlhkXxI430ou/s9lM9D048rXjwcDv+RJrXPoIzTvfKND1tPpw9w5gpiGnX0dnFURmQE91IX5QnW54uTKp8DJNGP+hkp5dMMmd+jM+kyS3FJXbrGPQXl7QBjtCBvzyDA50Cm894mItfs0N3iSxx2eNnMJAKEIA9MTf8Z3FmSWS79QCczModpg7S22qXHR5UkTej+8xxmuM3fwZXPvo4foJMB3jniFjY/xDdY3fYUzF2Mvw1Ax76lfvqgZXt21NrnZ3qEWZ48bkauMn+WicfnXEWySv5PFbsVu28K4ukbh680v8+tNtGut6pYtyOnVPV/qnUoKs9p2ueqh7A28jedtDfbEZ6tbtNeEgKlipZlkzGCpHsZJ1t0S71RwAo7jVplg8812HhCOWuQs/2tg23fhdVzUKShzIqmemYrzP63ROk5uHb7Wtz4dsHhza/aq7unFukJeKCzcDJz2sc8Ito3y+kvRaSd3RFkYiU8kMp+jKI+Qx3kqTiXtXeMIl9rQQQ1SbaBdKpmGGS1v0o3BgdHh5MKaMab3yzGk3LKr2wnm9fCPxygRqOqW82cYaCaTGbr1sQeRBv+acFc3AO7Qy2gvMxXx5lTlsJ9MD5Ew4/aRS9KnidBocxp6PgpnjPeipBNEBpFhqQPh2dkRPcSl6MBYyaQmfTXkmAolSNzE9zZ7ZxHueZ1QUa3ovGDtt4rRYYewAXPOrg==
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 70fe5b8f-f7ed-4751-f271-08dbd4856f81
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 24 Oct 2023 11:36:17.1494
 (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: ZDOJzR4ZLdt6q9I1PgtV3SVLq63AYyEiR/X7EduEjfW0WcvJYfS/ixS8AIYCvRzx3GFk4si9eDx/B6vu4KHjZQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB5244

On Tue, Oct 24, 2023 at 12:51:08PM +0200, Jan Beulich wrote:
> On 24.10.2023 12:14, Roger Pau Monné wrote:
> > On Tue, Oct 24, 2023 at 11:33:21AM +0200, Jan Beulich wrote:
> >> On 23.10.2023 14:46, Roger Pau Monne wrote:
> >>> --- a/xen/arch/x86/i8259.c
> >>> +++ b/xen/arch/x86/i8259.c
> >>> @@ -37,6 +37,15 @@ static bool _mask_and_ack_8259A_irq(unsigned int irq);
> >>>  
> >>>  bool bogus_8259A_irq(unsigned int irq)
> >>>  {
> >>> +    if ( smp_processor_id() &&
> >>> +         !(boot_cpu_data.x86_vendor & (X86_VENDOR_AMD | X86_VENDOR_HYGON)) )
> >>> +        /*
> >>> +         * For AMD/Hygon do spurious PIC interrupt detection on all CPUs, as it
> >>> +         * has been observed that during unknown circumstances spurious PIC
> >>> +         * interrupts have been delivered to CPUs different than the BSP.
> >>> +         */
> >>> +        return false;
> >>> +
> >>>      return !_mask_and_ack_8259A_irq(irq);
> >>>  }
> >>
> >> I don't think this function should be changed; imo the adjustment belongs
> >> at the call site.
> > 
> > It makes the call site much more complex to follow, in fact I was
> > considering pulling the PIC vector range checks into
> > bogus_8259A_irq().  Would that convince you into placing the check here
> > rather than in the caller context?
> 
> Passing a vector and moving the range check into the function is something
> that may make sense. But I'm afraid the same does not apply to the
> smp_processor_id() check, unless the function was also renamed to
> bogus_8259A_vector(). Which in turn doesn't make much sense, to me at
> least, as the logic would better be in terms of IRQs (which is what the
> chip deals with primarily), not vectors (which the chip deals with solely
> during the INTA cycle with the CPU).

The alternative is to use:

            if ( !(vector >= FIRST_LEGACY_VECTOR &&
                   vector <= LAST_LEGACY_VECTOR &&
                   (!smp_processor_id() ||
                    /*
                     * For AMD/Hygon do spurious PIC interrupt
                     * detection on all CPUs, as it has been observed
                     * that during unknown circumstances spurious PIC
                     * interrupts have been delivered to CPUs
                     * different than the BSP.
                     */
                   (boot_cpu_data.x86_vendor & (X86_VENDOR_AMD |
                                                X86_VENDOR_HYGON))) &&
                   bogus_8259A_irq(vector - FIRST_LEGACY_VECTOR)) )
            {

Which I find too complex to read, and prone to mistakes by future
modifications.

What is your reasoning for wanting the smp_processor_id() check in
the caller rather than bogus_8259A_irq()?  It does seem fine to me to
do such check in bogus_8259A_irq(), as whether the IRQ is bogus also
depends on whether it fired on the BSP or any of the APs.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 11:36:39 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 11:36:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621856.968708 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvFi4-0005Al-4X; Tue, 24 Oct 2023 11:36:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621856.968708; Tue, 24 Oct 2023 11:36: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 1qvFi4-0005Ae-0w; Tue, 24 Oct 2023 11:36:32 +0000
Received: by outflank-mailman (input) for mailman id 621856;
 Tue, 24 Oct 2023 11:32: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=uDe1=GG=quicinc.com=quic_llindhol@srs-se1.protection.inumbo.net>)
 id 1qvFeH-0004Nm-Js
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 11:32:37 +0000
Received: from mx0b-0031df01.pphosted.com (mx0b-0031df01.pphosted.com
 [205.220.180.131]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 06e94ad9-7261-11ee-98d5-6d05b1d4d9a1;
 Tue, 24 Oct 2023 13:32:35 +0200 (CEST)
Received: from pps.filterd (m0279873.ppops.net [127.0.0.1])
 by mx0a-0031df01.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id
 39OBW2x9030510; Tue, 24 Oct 2023 11:32:26 GMT
Received: from nasanppmta05.qualcomm.com (i-global254.qualcomm.com
 [199.106.103.254])
 by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 3tx4tv0vqt-1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT);
 Tue, 24 Oct 2023 11:32:26 +0000
Received: from nasanex01c.na.qualcomm.com (nasanex01c.na.qualcomm.com
 [10.45.79.139])
 by NASANPPMTA05.qualcomm.com (8.17.1.5/8.17.1.5) with ESMTPS id 39OBWP59014241
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT);
 Tue, 24 Oct 2023 11:32:25 GMT
Received: from qc-i7.hemma.eciton.net (10.80.80.8) by
 nasanex01c.na.qualcomm.com (10.45.79.139) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.2.1118.39; Tue, 24 Oct 2023 04:32:11 -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: 06e94ad9-7261-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=quicinc.com; h=date : from : to :
 cc : subject : message-id : references : mime-version : content-type :
 in-reply-to; s=qcppdkim1; bh=SDdDuTaN4SoAWEpM2HKbvwWC/AnVWG6bKPnln/BNFPM=;
 b=Nbu7HyH4d39Kp0iB+z//t5OAGEFCvePvI+VCVMlCc+A7pp3g8W6L2lEyt7AwENfe6nHN
 BrYi2YgU5WbLlrm6dE8GwNVxLUxPgxkTC7gWf3vqjhSe210N6jeS+HZjP5aN9yKaMW+0
 gE7Els2Ns4ZmsjMkSSrnufM4WwKkLJlV1QSsCJuYhmoMNj4MbZNivxoc4gFAB9nVe/RY
 /mgRqddLohVGW71+h2kfx/u2OWkX3hK3IyGkqFd8guImMqyUoOGknoNDjFSKRrtaN84p
 j3u7VrYEz5a6kTH7TL3iJQlF8qKQqVWyxADB7qLLYF6pAU1a3icvvfco/5ptP25ft3eO Rg== 
Date: Tue, 24 Oct 2023 12:32:08 +0100
From: Leif Lindholm <quic_llindhol@quicinc.com>
To: David Woodhouse <dwmw2@infradead.org>
CC: <qemu-devel@nongnu.org>, Richard Henderson <richard.henderson@linaro.org>,
        Beniamino Galvani <b.galvani@gmail.com>,
        Peter Maydell
	<peter.maydell@linaro.org>,
        Strahinja Jankovic
	<strahinja.p.jankovic@gmail.com>,
        Niek Linnenbank <nieklinnenbank@gmail.com>,
        =?iso-8859-1?Q?C=E9dric?= Le Goater <clg@kaod.org>,
        Andrew Jeffery
	<andrew@aj.id.au>, Joel Stanley <joel@jms.id.au>,
        Igor Mitsyanko
	<i.mitsyanko@gmail.com>,
        Jean-Christophe Dubois <jcd@tribudubois.net>,
        Andrey
 Smirnov <andrew.smirnov@gmail.com>,
        Philippe =?iso-8859-1?Q?Mathieu-Daud=E9?=
	<philmd@linaro.org>,
        Rob Herring <robh@kernel.org>,
        Subbaraya Sundeep
	<sundeep.lkml@gmail.com>,
        Jan Kiszka <jan.kiszka@web.de>, Tyrone Ting
	<kfting@nuvoton.com>,
        Hao Wu <wuhaotsh@google.com>, Radoslaw Biernacki
	<rad@semihalf.com>,
        Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>,
        "Edgar E. Iglesias" <edgar.iglesias@gmail.com>,
        Alistair Francis
	<alistair@alistair23.me>,
        Helge Deller <deller@gmx.de>, Paolo Bonzini
	<pbonzini@redhat.com>,
        Eduardo Habkost <eduardo@habkost.net>,
        "Michael S.
 Tsirkin" <mst@redhat.com>,
        Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
        Song Gao <gaosong@loongson.cn>, Thomas Huth <huth@tuxfamily.org>,
        Laurent
 Vivier <laurent@vivier.eu>,
        Huacai Chen <chenhuacai@kernel.org>,
        Jiaxun Yang
	<jiaxun.yang@flygoat.com>,
        =?iso-8859-1?Q?Herv=E9?= Poussineau
	<hpoussin@reactos.org>,
        Aleksandar Rikalo <aleksandar.rikalo@syrmia.com>,
        Aurelien Jarno <aurelien@aurel32.net>,
        Jason Wang <jasowang@redhat.com>, Jia
 Liu <proljc@gmail.com>,
        Stafford Horne <shorne@gmail.com>,
        Mark Cave-Ayland
	<mark.cave-ayland@ilande.co.uk>,
        Nicholas Piggin <npiggin@gmail.com>,
        Daniel
 Henrique Barboza <danielhb413@gmail.com>,
        David Gibson
	<david@gibson.dropbear.id.au>,
        Harsh Prateek Bora <harshpb@linux.ibm.com>,
        Bin Meng <bin.meng@windriver.com>, Palmer Dabbelt <palmer@dabbelt.com>,
        Weiwei Li <liweiwei@iscas.ac.cn>,
        Liu Zhiwei <zhiwei_liu@linux.alibaba.com>,
        David Hildenbrand <david@redhat.com>,
        Ilya Leoshkevich <iii@linux.ibm.com>,
        Halil Pasic <pasic@linux.ibm.com>,
        Christian Borntraeger
	<borntraeger@linux.ibm.com>,
        Eric Farman <farman@linux.ibm.com>,
        Yoshinori
 Sato <ysato@users.sourceforge.jp>,
        Magnus Damm <magnus.damm@gmail.com>,
        Artyom Tarasenko <atar4qemu@gmail.com>,
        Stefano Stabellini
	<sstabellini@kernel.org>,
        Anthony Perard <anthony.perard@citrix.com>,
        Paul
 Durrant <paul@xen.org>, Max Filippov <jcmvbkbc@gmail.com>,
        <qemu-arm@nongnu.org>, <qemu-ppc@nongnu.org>, <qemu-riscv@nongnu.org>,
        <qemu-s390x@nongnu.org>, <xen-devel@lists.xenproject.org>
Subject: Re: [PATCH 08/45] hw/arm/sbsa-ref: use pci_init_nic_devices()
Message-ID: <ZTerOM9bc5B8v/cc@qc-i7.hemma.eciton.net>
References: <20231022155200.436340-1-dwmw2@infradead.org>
 <20231022155200.436340-9-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Disposition: inline
In-Reply-To: <20231022155200.436340-9-dwmw2@infradead.org>
X-Originating-IP: [10.80.80.8]
X-ClientProxiedBy: nasanex01b.na.qualcomm.com (10.46.141.250) To
 nasanex01c.na.qualcomm.com (10.45.79.139)
X-QCInternal: smtphost
X-Proofpoint-Virus-Version: vendor=nai engine=6200 definitions=5800 signatures=585085
X-Proofpoint-GUID: 6lyweH_CTZsJksaiA7mOerkNhl-G0ehZ
X-Proofpoint-ORIG-GUID: 6lyweH_CTZsJksaiA7mOerkNhl-G0ehZ
X-Proofpoint-Virus-Version: vendor=baseguard
 engine=ICAP:2.0.272,Aquarius:18.0.980,Hydra:6.0.619,FMLib:17.11.176.26
 definitions=2023-10-24_11,2023-10-24_01,2023-05-22_02
X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 phishscore=0
 lowpriorityscore=0 bulkscore=0 impostorscore=0 malwarescore=0
 clxscore=1011 spamscore=0 priorityscore=1501 mlxlogscore=713 adultscore=0
 mlxscore=0 suspectscore=0 classifier=spam adjust=0 reason=mlx scancount=1
 engine=8.12.0-2310170001 definitions=main-2310240097

On Sun, Oct 22, 2023 at 16:51:23 +0100, David Woodhouse wrote:
> From: David Woodhouse <dwmw@amazon.co.uk>
> 
> Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>

Reviewed-by: Leif Lindholm <quic_llindhol@quicinc.com>

> ---
>  hw/arm/sbsa-ref.c | 4 +---
>  1 file changed, 1 insertion(+), 3 deletions(-)
> 
> diff --git a/hw/arm/sbsa-ref.c b/hw/arm/sbsa-ref.c
> index 3c7dfcd6dc..582a28ce92 100644
> --- a/hw/arm/sbsa-ref.c
> +++ b/hw/arm/sbsa-ref.c
> @@ -691,9 +691,7 @@ static void create_pcie(SBSAMachineState *sms)
>  
>      pci = PCI_HOST_BRIDGE(dev);
>      if (pci->bus) {
> -        for (i = 0; i < nb_nics; i++) {
> -            pci_nic_init_nofail(&nd_table[i], pci->bus, mc->default_nic, NULL);
> -        }
> +        pci_init_nic_devices(pci->bus, mc->default_nic);
>      }
>  
>      pci_create_simple(pci->bus, -1, "bochs-display");
> -- 
> 2.40.1
> 


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 12:04:07 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 12:04:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621867.968717 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvG8d-00037R-DT; Tue, 24 Oct 2023 12:03:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621867.968717; Tue, 24 Oct 2023 12:03: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 1qvG8d-00037K-AX; Tue, 24 Oct 2023 12:03:59 +0000
Received: by outflank-mailman (input) for mailman id 621867;
 Tue, 24 Oct 2023 12:03: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 1qvG8c-00037A-Fi; Tue, 24 Oct 2023 12:03: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 1qvG8c-0007Qq-83; Tue, 24 Oct 2023 12:03: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 1qvG8b-0001qE-W1; Tue, 24 Oct 2023 12:03:58 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qvG8b-0004On-VS; Tue, 24 Oct 2023 12: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=/GxjEiy8GZNvUcKGyFOJ+W8GQR1OYijSOJ9gphqWHmg=; b=ORFDEQ6dhhpfZ1w7aoQigp1oiG
	A8pjThpWe7aAKdniQPZYoKZDzARQ3PL6eOkU5Ko/fitWnLlQZZRHkLho8p/mK8FPjfx1emzHRmS+x
	yxxSv0nmkKSVKnLp+pQY7lNMtsEjbobdVRMiHis3hOjkWDNiwHb73Y/Ot8+t1Ost5Vlg=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183506-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 183506: tolerable FAIL - PUSHED
X-Osstest-Failures:
    ovmf:test-amd64-i386-xl-qemuu-ovmf-amd64:xen-install:fail:heisenbug
X-Osstest-Versions-This:
    ovmf=fb044b7fe893a4545995bfe2701fd38e593355d9
X-Osstest-Versions-That:
    ovmf=da73578bf7afee1fdd1abe97eaf733aa1e4bdefe
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 24 Oct 2023 12:03:57 +0000

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

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-amd64-i386-xl-qemuu-ovmf-amd64  7 xen-install  fail pass in 183508-retest

version targeted for testing:
 ovmf                 fb044b7fe893a4545995bfe2701fd38e593355d9
baseline version:
 ovmf                 da73578bf7afee1fdd1abe97eaf733aa1e4bdefe

Last test of basis   183504  2023-10-24 03:10:51 Z    0 days
Testing same since   183506  2023-10-24 08:12:27 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                          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
   da73578bf7..fb044b7fe8  fb044b7fe893a4545995bfe2701fd38e593355d9 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 12:06:28 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 12:06:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621871.968728 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvGB0-0003lw-Qm; Tue, 24 Oct 2023 12:06:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621871.968728; Tue, 24 Oct 2023 12: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 1qvGB0-0003lp-Nf; Tue, 24 Oct 2023 12:06:26 +0000
Received: by outflank-mailman (input) for mailman id 621871;
 Tue, 24 Oct 2023 12:06: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=krZT=GG=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qvGAz-0003lj-0Y
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 12:06:25 +0000
Received: from EUR02-AM0-obe.outbound.protection.outlook.com
 (mail-am0eur02on2061f.outbound.protection.outlook.com
 [2a01:111:f400:fe13::61f])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id c033874d-7265-11ee-98d5-6d05b1d4d9a1;
 Tue, 24 Oct 2023 14:06:24 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DB9PR04MB8495.eurprd04.prod.outlook.com (2603:10a6:10:2c7::20)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.18; Tue, 24 Oct
 2023 12:06:21 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6933.011; Tue, 24 Oct 2023
 12:06: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: c033874d-7265-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=O/2GuLTv6U6N7u9yJpT0ZPnJ8Oy/ghSf5v4NDei8EDHMdtJy2lvYH5b3V2OX43HMTmJIUx3l0B6khrWoHioM6Mf8PxLZuwuSFRdAeBP3KwIb8ZFffpe6uM7taVahNgXSZC6u4vnl69BVJ+E3IwMyPnSruF2Mr03FXjSfjSCehk1/rLaMi0PWuAdT20Djs6HcxH15KUa2c8jxsMgZj+EAkOCGQM9RLXsqlg6tzRbRP7GG/kUxy3DPIR2qlM+uxgJcwFuK7RGLQcsGJp7QJCCwN6zsPsO/6/VQbWc1L/Cu0U8d23loGw9xKxOvCTNsfdMMd6SMbzEVF8djLO4LEZTOEw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=8DDXaMqjlUPXfonVbETQvei9LFFZosBxH82U2W04kuY=;
 b=j431KPMd+pcnIwTmJJs8FG1I3L+n9f5C9MnHgw0AnUpgpqSRabT14+Xn+WKWHFox7qZZvkzst3QHeiAhKmOLYmexUbMkO/RPKqU8ApX3Afj1/eYsX9Qnyu//SFJK0zdkIcYCmdBxzjGRL/qH49EZqvHIxrDVFKX690K/DxtSc3ujjHnu6kZn4lOzeZewzYn9Ga/ORmO/n2keM2D0uKRqKHq0irGNPGmcfQA9umkmnhDI+d3PoD2IZDJ4jBVBSQUkSDn+UHhQl2jLBKgb8AKxdRtQYBNNrGRohzT2MqciaEt9GYXnSXBHd6OoQtHqFH44vZIL66IKxW0d5/sra+C7sg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=8DDXaMqjlUPXfonVbETQvei9LFFZosBxH82U2W04kuY=;
 b=peNIx4Ix0NWwPyaqvQJY9oz6XI08O3GvVhhb/4llK7F6jttI8O3xSJL+JB8o5WBaXkDzPQgoFbOMCEZZSVZxD6FDjdsQn4Sv0cQt0ZS8UXkOOzLjd5AV5LipphBQam36Kvbj990YIiDUMBfnXN9V7roPDvICCHtB8RZqTK3aBlqC3Tlj3QU3HF4uxZ6Cj3s0hHFSFTCuS81ZnusXn7AC55t2rX78hXj7IlVwquc+OpM7rtqa0s9IEkbuMxMEzlbkAboGRjFh173eNPkKQk+9qjWTijnsPFuTy9/A9Ft6ae1JLbAdz9yCks2bEsozbJBkWDGfR0prZ6SIMqFMp7Bpyg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <c11b0ace-f2b7-8d59-0112-fed6a5de0d03@suse.com>
Date: Tue, 24 Oct 2023 14:06: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 v2] 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: <20231023124635.44266-1-roger.pau@citrix.com>
 <a525cc49-69e7-c509-61d4-a2456b3fdbcc@suse.com> <ZTeY6JNbNfTVCpib@macbook>
 <2c5a5b6f-5c67-e46c-765c-81999ac1e11b@suse.com> <ZTesLTIulycE1s5d@macbook>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <ZTesLTIulycE1s5d@macbook>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR2P281CA0089.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:9b::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_|DB9PR04MB8495:EE_
X-MS-Office365-Filtering-Correlation-Id: 8b4aaa8f-81db-4fa0-48bc-08dbd489a2db
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	9Mc4y7p76CaLRCXLHuS1H03VHnbYsDcuIR7c0k8kdhHH1Nc7xBPjJJsyG2CatdcrpPSpJHrRRjDGROr27BP3/uRHqoxUBD4Oay5FIUzG+1VU68RjOpig53ORkOXaeIcY5zNltc1z8tV+OjIkzqn10qT8zoeeRK5M3YyBHKslsi5z4A7LiZe8OjU406Gh0TI3Qn2WN6CvCPoYSwvB7S6Yq6YFDT3JU047S9I4g3HlQ68i3a+ARdgFELshgLduwF7GjsWz1/OJH36fBNyRx5AKcWcKLp32hO9inQYBw+4Y8G/9wJ/9B3B+5NSbk/5wl7KwRJtzA11K0X41YVue3p8CcGnMpzVjLhYRpeO8dov41VCM6ntd8Hm8V7x0FgY59FQn937tSccSijwJntTDSXqOkmGIfdgOc/rzh3UXytr+NzOXWpO0zm8PlCXIKW1mfn1YZAP+/wjDhR7Whp8gz0SrpsvadJu1CGGKqDAEnjs74fRVZfps+/4M9xgJie4wm2vZTfcVeTxiIIcB8doRjFhrjuaA+GuaYnvceM+WYelW1NRk5z4xTR9s/O8yXPh/lHx7HzQInHHGNCkG40FuO8s91+50mUuw5BO2Yz2e2625mwLoE5zMrRQAxlzRF/CJwoRykGfzsf0k2qMHcm6z5AKGcA==
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)(230922051799003)(64100799003)(1800799009)(451199024)(186009)(2906002)(8676002)(8936002)(4326008)(83380400001)(6486002)(53546011)(31696002)(31686004)(41300700001)(5660300002)(6512007)(6506007)(86362001)(6916009)(316002)(66899024)(26005)(478600001)(2616005)(36756003)(54906003)(38100700002)(66946007)(66476007)(66556008)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?NlJxMFhwSVcwakg3T0E0TDh4OTREdXU4NzhyeEIwMmVjTXNoWlY5YmxDNTJS?=
 =?utf-8?B?cndkWTRmRTVZL2MyZnAwZnlDQWJNZ3pKQm1MQVMzcUQwQlByK205dGZZd2RW?=
 =?utf-8?B?SGFNMldjdmE3NngyMzdjQ292SmZITGkvUFozOURIeUZ0Z3FUVlRDamhEbmpG?=
 =?utf-8?B?MVhuU2N0aXBmTlJJa0x3dzlJaXpxNmJtb3JjNlhVR2hiU1U2OG5XaXZ4TEx1?=
 =?utf-8?B?dzhPLzJBZlA4Sm5iNStpajBtcDNYajZja2xrZ3J0dHpBalFsNlB3TzhzY2F5?=
 =?utf-8?B?RjdnTzR0anQvSGNqUUROMVVnNUI0VGNYTk1SemRMK3cyUld0ZjMyRDNTTkcy?=
 =?utf-8?B?QjRNcVk5MjFjUGNYbGJqdTBYK1Q1RnhPKzhmQjh2ZVBLV2NwTTAweDc3a21N?=
 =?utf-8?B?ZmprTk5URFFnRG56eFNUYk8yaTdIVDY4eGR0cUEyNngzR25PVS9XU3FYUnlz?=
 =?utf-8?B?VFNKQS9YM0dyS21EemNpOTFuM2hpUGhXc0dCY29NYmsybTlSZHIzMzRrNng5?=
 =?utf-8?B?M3lkdlFsVkpud1pNazd1eEVjSmJyM0lHYmo0aTZuK1pROENqS1dmTm96aWd4?=
 =?utf-8?B?dG9qNDVzd3FWaDcrWXErMWd2STJ1MUgrU1htT1dZZ0tuZXIzRGhTZVhKR2g5?=
 =?utf-8?B?M01ueHBoZUdSdjR2eUpiQ29oL3ExdTIzYkpUM2ZvK0JiQVlCM2liaXlQZGNY?=
 =?utf-8?B?aFZ2bFBKSVE5cWF6Qi9Jbll1d2lNejdTdEE2aW9VMzA4bFpha1RQd2dwclBj?=
 =?utf-8?B?ZlhpSlJxZHRpRzZHZmprYWdSa1FyRjl6RXNJUnI3czZhdjJtaW5QNzlGZkgr?=
 =?utf-8?B?S2crRE5DUHo2eXNubzJMZmxEVDNpU1BqQStGOWNuYkJZTHZRLzJoUlgzQnk4?=
 =?utf-8?B?Y1N1L1hZRkMxeDJmL0NCUGhCTmUrUEU3dkJQSTFkemhFbERwVFI3U24vVmh4?=
 =?utf-8?B?cTdXRzZuTHFma2crZk42MytNUVcrWjU4cU9mTUowaXNNSnNmTVEwYU0zdGdo?=
 =?utf-8?B?OFowSFlrRk1tYnNkMCtHZTNDbFpOV203QWdUakVMRjljbWJ4WVFvV2NqSERX?=
 =?utf-8?B?VTlwWm5zN3NTcTVrWC9ETU5aU29jS3JpQjA2YVZ2bXBVV3BmYm9QZ0E1cFFG?=
 =?utf-8?B?bm1rRGU1NFNncFFRQ216emRKZGJGTG42TFlwWEd1cUF1UExpdFpZL1NhK1pr?=
 =?utf-8?B?eHdzMStBcHVWZ1VUZGw4NTVUWnRHOUxCZXlCZThFNS9lRzhhUG1iZS9ZaWhw?=
 =?utf-8?B?NFZwZUI4T3V6eTY3OTNEZExEaDZSekh1M3VpSVVhUjJDbGliODdhU0ppRHR0?=
 =?utf-8?B?TStQRHEzdXJyZVF2bXRVTlFjYlZBSzlZaGhGeHJXR0NXelJpYnl6alNVNnJ1?=
 =?utf-8?B?MmFHN1h0ZW9CZndMOVUwenUwZXZsTU5BTU8wS1IrQ3VSMGVHaTFMQUVzeUwy?=
 =?utf-8?B?SThSZzBtRDFDaGtRYU1OTjMvck90SUhJQmloUjc1aVp6SWxTb1Z5WG5Zd1Zs?=
 =?utf-8?B?aVFGYkRaMG1WSWpsTnpQZkZ5R1U3c3hsQ1QzTHN4T3hkbS9LamFIUHdtMVlH?=
 =?utf-8?B?OWVkaFM4Y3FBNG1UWC92cjFNdWQ3ejF1UGc2aTY3UlgvSVBPSUM5aE8xcDla?=
 =?utf-8?B?ZHhlV3lrZkpYNTV3VkNtU3lQVTYxK0ZpOTJFNzYyUmN0VXkvckhwUXpXbWs0?=
 =?utf-8?B?cEtYbzNzRFNnajNjOVNGTnFRRUJmZGltMTNSZ1orQjlOQnpWaU1vQzdiR3Bw?=
 =?utf-8?B?TDVBNnRvVE9wU0syRnFpamNiN25BRlR3UFdQQWZZRTNueDJmL1JXZXZURDkz?=
 =?utf-8?B?SFROdnVYTjA4K2tCWWU2ZWdVOHEyUnZycndFNkw3YW90NVVqTDFwN1Y2dk5Z?=
 =?utf-8?B?TnpjbXFtekVqYlFpOG5XN2JvcXBrUXM1T0VmSlFFbHk3cmN1L0VtZHlFaW9Y?=
 =?utf-8?B?bDN4azVhREJmWXFWbmZoYVpoYXJGZU1nR3ZSREV3NHcxZEFoMXVUWTF1Q3dw?=
 =?utf-8?B?M3dxQkM4R3ZMOVd6NkxnczZXTWM1dzlJYmQ2N0d4Q3BFUy9NdGhvTHltdDVt?=
 =?utf-8?B?T0IrbytiL0xITXYrZENKSllZdjdlc0tmWnpib2ZvdGlObjFwV2tOMGxjS2tk?=
 =?utf-8?Q?7kpKTqZ+QZxjAtqcWslmElbcy?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 8b4aaa8f-81db-4fa0-48bc-08dbd489a2db
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 24 Oct 2023 12:06:21.3014
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: w+hszW6rkgW0k7juwkMhon2Abak39XmJZLCdqb9Dd7KdFJQP37giRA19K2hpk6I17fah7i6Sjm1ypuOhPXLqbA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR04MB8495

On 24.10.2023 13:36, Roger Pau Monné wrote:
> On Tue, Oct 24, 2023 at 12:51:08PM +0200, Jan Beulich wrote:
>> On 24.10.2023 12:14, Roger Pau Monné wrote:
>>> On Tue, Oct 24, 2023 at 11:33:21AM +0200, Jan Beulich wrote:
>>>> On 23.10.2023 14:46, Roger Pau Monne wrote:
>>>>> --- a/xen/arch/x86/i8259.c
>>>>> +++ b/xen/arch/x86/i8259.c
>>>>> @@ -37,6 +37,15 @@ static bool _mask_and_ack_8259A_irq(unsigned int irq);
>>>>>  
>>>>>  bool bogus_8259A_irq(unsigned int irq)
>>>>>  {
>>>>> +    if ( smp_processor_id() &&
>>>>> +         !(boot_cpu_data.x86_vendor & (X86_VENDOR_AMD | X86_VENDOR_HYGON)) )
>>>>> +        /*
>>>>> +         * For AMD/Hygon do spurious PIC interrupt detection on all CPUs, as it
>>>>> +         * has been observed that during unknown circumstances spurious PIC
>>>>> +         * interrupts have been delivered to CPUs different than the BSP.
>>>>> +         */
>>>>> +        return false;
>>>>> +
>>>>>      return !_mask_and_ack_8259A_irq(irq);
>>>>>  }
>>>>
>>>> I don't think this function should be changed; imo the adjustment belongs
>>>> at the call site.
>>>
>>> It makes the call site much more complex to follow, in fact I was
>>> considering pulling the PIC vector range checks into
>>> bogus_8259A_irq().  Would that convince you into placing the check here
>>> rather than in the caller context?
>>
>> Passing a vector and moving the range check into the function is something
>> that may make sense. But I'm afraid the same does not apply to the
>> smp_processor_id() check, unless the function was also renamed to
>> bogus_8259A_vector(). Which in turn doesn't make much sense, to me at
>> least, as the logic would better be in terms of IRQs (which is what the
>> chip deals with primarily), not vectors (which the chip deals with solely
>> during the INTA cycle with the CPU).
> 
> The alternative is to use:
> 
>             if ( !(vector >= FIRST_LEGACY_VECTOR &&
>                    vector <= LAST_LEGACY_VECTOR &&
>                    (!smp_processor_id() ||
>                     /*
>                      * For AMD/Hygon do spurious PIC interrupt
>                      * detection on all CPUs, as it has been observed
>                      * that during unknown circumstances spurious PIC
>                      * interrupts have been delivered to CPUs
>                      * different than the BSP.
>                      */
>                    (boot_cpu_data.x86_vendor & (X86_VENDOR_AMD |
>                                                 X86_VENDOR_HYGON))) &&
>                    bogus_8259A_irq(vector - FIRST_LEGACY_VECTOR)) )
>             {
> 
> Which I find too complex to read, and prone to mistakes by future
> modifications.

>From my pov the main badness with this is pre-existing: The wrapping of
a complex expression in !(...). The replacement of the prior plain
smp_processor_id() isn't much of a problem imo.

> What is your reasoning for wanting the smp_processor_id() check in
> the caller rather than bogus_8259A_irq()?  It does seem fine to me to
> do such check in bogus_8259A_irq(), as whether the IRQ is bogus also
> depends on whether it fired on the BSP or any of the APs.

bogus_8259A_irq() shouldn't be concerned about the CPU it runs on; it
should solely deal with 8259A aspects.

Jan


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 12:08:28 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 12:08:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621874.968738 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvGCx-0004Uf-6H; Tue, 24 Oct 2023 12:08:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621874.968738; Tue, 24 Oct 2023 12: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 1qvGCx-0004UY-3a; Tue, 24 Oct 2023 12:08:27 +0000
Received: by outflank-mailman (input) for mailman id 621874;
 Tue, 24 Oct 2023 12: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=CJyy=GG=suse.com=jgross@srs-se1.protection.inumbo.net>)
 id 1qvGCv-0004US-D3
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 12:08:25 +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 055ed133-7266-11ee-98d5-6d05b1d4d9a1;
 Tue, 24 Oct 2023 14:08:19 +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 DA7481FE68;
 Tue, 24 Oct 2023 12:08:18 +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 81B6A134F5;
 Tue, 24 Oct 2023 12:08:18 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap2.suse-dmz.suse.de with ESMTPSA id alu+HbKzN2V2WwAAMHmgww
 (envelope-from <jgross@suse.com>); Tue, 24 Oct 2023 12:08: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: 055ed133-7266-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1698149298; 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=mywBBHv2y8WjBsk+dH4go69eBtkULHdwxKcLdRi3JPg=;
	b=fsheurC7AcK2I09/z5tKJahtyJavDKZvpGvLm4APv3I+XRUxCVUHf03Gf7mun7uNioKyOp
	J4CvvagbdOScUX1f2qEXoLcyEpq30dgbMVTtHzJh2JDUuOZPasAL2IdWu4oRLfAtKnZsWZ
	Vqdqc+9OaztoARfSMiO/ZQ4+txhk74E=
Message-ID: <0a2725ee-a1a8-43e4-b117-f474ffb392a8@suse.com>
Date: Tue, 24 Oct 2023 14:08:17 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: Lockdep show 6.6-rc regression in Xen HVM CPU hotplug
Content-Language: en-US
From: Juergen Gross <jgross@suse.com>
To: David Woodhouse <dwmw2@infradead.org>,
 xen-devel <xen-devel@lists.xenproject.org>, paulmck <paulmck@kernel.org>
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>,
 Rahul Singh <rahul.singh@arm.com>,
 Boris Ostrovsky <boris.ostrovsky@oracle.com>,
 Thomas Gleixner <tglx@linutronix.de>
References: <b28fff67f7501e4713af9b8c777f853cc44d6c6f.camel@infradead.org>
 <c75a3d53-fc36-46a6-b781-f16e1e5c6226@suse.com>
 <662772ec0d43cce9233680d67d7114bc8b0ed48d.camel@infradead.org>
 <8e6c144f-f808-4603-8de4-76decc3c2838@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: <8e6c144f-f808-4603-8de4-76decc3c2838@suse.com>
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature";
 boundary="------------5gCY434GYIiPdm8xUJiVwmC3"
Authentication-Results: smtp-out2.suse.de;
	none
X-Spam-Level: 
X-Spam-Score: -7.99
X-Spamd-Result: default: False [-7.99 / 50.00];
	 ARC_NA(0.00)[];
	 RCVD_VIA_SMTP_AUTH(0.00)[];
	 XM_UA_NO_VERSION(0.01)[];
	 FROM_HAS_DN(0.00)[];
	 TO_MATCH_ENVRCPT_ALL(0.00)[];
	 BAYES_HAM(-3.00)[100.00%];
	 MIME_GOOD(-0.20)[multipart/signed,multipart/mixed,text/plain,text/x-patch];
	 HAS_ATTACHMENT(0.00)[];
	 NEURAL_HAM_LONG(-3.00)[-1.000];
	 MIME_BASE64_TEXT_BOGUS(1.00)[];
	 DKIM_SIGNED(0.00)[suse.com:s=susede1];
	 TO_DN_ALL(0.00)[];
	 MIME_BASE64_TEXT(0.10)[];
	 RCPT_COUNT_SEVEN(0.00)[8];
	 NEURAL_HAM_SHORT(-1.00)[-1.000];
	 SIGNED_PGP(-2.00)[];
	 FROM_EQ_ENVFROM(0.00)[];
	 MIME_TRACE(0.00)[0:+,1:+,2:+,3:+,4:+,5:~,6:~];
	 RCVD_COUNT_TWO(0.00)[2];
	 RCVD_TLS_ALL(0.00)[];
	 MID_RHS_MATCH_FROM(0.00)[];
	 MIME_UNKNOWN(0.10)[application/pgp-keys]
X-Spam-Flag: NO

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--------------5gCY434GYIiPdm8xUJiVwmC3
Content-Type: multipart/mixed; boundary="------------QWsv01t6A6nc4g6x7zhes8ka";
 protected-headers="v1"
From: Juergen Gross <jgross@suse.com>
To: David Woodhouse <dwmw2@infradead.org>,
 xen-devel <xen-devel@lists.xenproject.org>, paulmck <paulmck@kernel.org>
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>,
 Rahul Singh <rahul.singh@arm.com>,
 Boris Ostrovsky <boris.ostrovsky@oracle.com>,
 Thomas Gleixner <tglx@linutronix.de>
Message-ID: <0a2725ee-a1a8-43e4-b117-f474ffb392a8@suse.com>
Subject: Re: Lockdep show 6.6-rc regression in Xen HVM CPU hotplug
References: <b28fff67f7501e4713af9b8c777f853cc44d6c6f.camel@infradead.org>
 <c75a3d53-fc36-46a6-b781-f16e1e5c6226@suse.com>
 <662772ec0d43cce9233680d67d7114bc8b0ed48d.camel@infradead.org>
 <8e6c144f-f808-4603-8de4-76decc3c2838@suse.com>
In-Reply-To: <8e6c144f-f808-4603-8de4-76decc3c2838@suse.com>

--------------QWsv01t6A6nc4g6x7zhes8ka
Content-Type: multipart/mixed; boundary="------------PhxH83cbsuQZ55H2a2TQ3J92"

--------------PhxH83cbsuQZ55H2a2TQ3J92
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: base64

T24gMjQuMTAuMjMgMTI6NDEsIEp1ZXJnZW4gR3Jvc3Mgd3JvdGU6DQo+IE9uIDI0LjEwLjIz
IDA5OjQzLCBEYXZpZCBXb29kaG91c2Ugd3JvdGU6DQo+PiBPbiBUdWUsIDIwMjMtMTAtMjQg
YXQgMDg6NTMgKzAyMDAsIEp1ZXJnZW4gR3Jvc3Mgd3JvdGU6DQo+Pj4NCj4+PiBJJ20gcHV6
emxlZC4gVGhpcyBwYXRoIGRvZXNuJ3QgY29udGFpbiBhbnkgb2YgdGhlIFJDVSB1c2FnZSBJ
J3ZlIGFkZGVkIGluDQo+Pj4gY29tbWl0IDg3Nzk3ZmFkNmNjZS4NCj4+Pg0KPj4+IEFyZSB5
b3Ugc3VyZSB0aGF0IHdpdGgganVzdCByZXZlcnRpbmcgY29tbWl0IDg3Nzk3ZmFkNmNjZSB0
aGUgaXNzdWUgZG9lc24ndA0KPj4+IG1hbmlmZXN0IGFueW1vcmU/IEknZCByYXRoZXIgZXhw
ZWN0IGNvbW1pdCA3MjEyNTViOTgyNmIgaGF2aW5nIGNhdXNlZCB0aGlzDQo+Pj4gYmVoYXZp
b3IsIGp1c3QgdGVsbGluZyBmcm9tIHRoZSBtZXNzYWdlcyBhYm92ZS4NCj4+DQo+PiBSZXRl
c3RpbmcgaW4gdGhlIGNvbGQgbGlnaHQgb2YgZGF5LCB5ZXMuIFVzaW5nIHY2LjYtcmM1IHdo
aWNoIGlzIHRoZQ0KPj4gcGFyZW50IGNvbW1pdCBvZiB0aGUgb2ZmZW5kaW5nIDg3Nzk3ZmFk
NmNjZS4NCj4+DQo+PiBJIG5vdyBzZWUgdGhpcyB3YXJuaW5nIGF0IGJvb3QgdGltZSBhZ2Fp
biwgd2hpY2ggSSBiZWxpZXZlIHdhcyBhbg0KPj4gYXNwZWN0IG9mIHdoYXQgeW91IHdlcmUg
dHJ5aW5nIHRvIGZpeDoNCj4+DQo+PiBbwqDCoMKgIDAuMDU5MDE0XSB4ZW46ZXZlbnRzOiBV
c2luZyBGSUZPLWJhc2VkIEFCSQ0KPj4gW8KgwqDCoCAwLjA1OTAyOV0geGVuOmV2ZW50czog
WGVuIEhWTSBjYWxsYmFjayB2ZWN0b3IgZm9yIGV2ZW50IGRlbGl2ZXJ5IGlzIGVuYWJsZWQN
Cj4+IFvCoMKgwqAgMC4wNTkyMjddIHJjdTogc3JjdV9pbml0OiBTZXR0aW5nIHNyY3Vfc3Ry
dWN0IHNpemVzIGJhc2VkIG9uIGNvbnRlbnRpb24uDQo+PiBbwqDCoMKgIDAuMDU5Mjk2XQ0K
Pj4gW8KgwqDCoCAwLjA1OTI5N10gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT0NCj4+
IFvCoMKgwqAgMC4wNTkyOThdIFsgQlVHOiBJbnZhbGlkIHdhaXQgY29udGV4dCBdDQo+PiBb
wqDCoMKgIDAuMDU5Mjk5XSA2LjYuMC1yYzUgIzEzNzQgTm90IHRhaW50ZWQNCj4+IFvCoMKg
wqAgMC4wNTkzMDBdIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQo+PiBbwqDCoMKg
IDAuMDU5MzAxXSBzd2FwcGVyLzAvMCBpcyB0cnlpbmcgdG8gbG9jazoNCj4+IFvCoMKgwqAg
MC4wNTkzMDNdIGZmZmZmZmZmOGFkNTk1ZjggKGV2dGNobl9yd2xvY2spey4uLi59LXszOjN9
LCBhdDogDQo+PiB4ZW5fZXZ0Y2huX2RvX3VwY2FsbCsweDU5LzB4ZDANCj4gDQo+IEluZGVl
ZC4NCj4gDQo+IFdoYXQgSSBzdGlsbCBub3QgZ2V0IGlzIHdoeSB0aGUgcmN1X2RlcmVmZXJl
bmNlX2NoZWNrKCkgc3BsYXQgaXNuJ3QNCj4gaGFwcGVuaW5nIHdpdGhvdXQgbXkgcGF0Y2gu
DQo+IA0KPiBJTUhPIGl0IHNob3VsZCBiZSByZWxhdGVkIHRvIHRoZSBmYWN0IHRoYXQgY3B1
aHBfcmVwb3J0X2lkbGVfZGVhZCgpDQo+IGlzIHRyeWluZyB0byBzZW5kIGFuIElQSSB2aWEg
eGVuX3NlbmRfSVBJX29uZSgpLCB3aGljaCBpcyB1c2luZw0KPiBub3RpZnlfcmVtb3RlX3Zp
YV9pcnEoKSwgd2hpY2ggaW4gdHVybiBuZWVkcyB0byBjYWxsIGlycV9nZXRfY2hpcF9kYXRh
KCkuDQo+IFRoaXMgaXMgdXNpbmcgdGhlIG1hcGxlLXRyZWUgc2luY2UgNzIxMjU1Yjk4MjZi
LCB3aGljaCBpcyB1c2luZw0KPiByY3VfcmVhZF9sb2NrKCkuDQo+IA0KPiBJIGNhbiBwcm9i
YWJseSBjaGFuZ2UgeGVuX3NlbmRfSVBJX29uZSgpIHRvIG5vdCBuZWVkIGlycV9nZXRfY2hp
cF9kYXRhKCkuDQoNCkRhdmlkLCBjb3VsZCB5b3UgdGVzdCB0aGUgYXR0YWNoZWQgcGF0Y2gs
IHBsZWFzZT8gQnVpbGQgdGVzdGVkIG9ubHkuDQoNCg0KSnVlcmdlbg0K
--------------PhxH83cbsuQZ55H2a2TQ3J92
Content-Type: text/x-patch; charset=UTF-8;
 name="0001-xen-events-avoid-using-info_for_irq-in-xen_send_IPI_.patch"
Content-Disposition: attachment;
 filename*0="0001-xen-events-avoid-using-info_for_irq-in-xen_send_IPI_.pa";
 filename*1="tch"
Content-Transfer-Encoding: base64

RnJvbSA5YmNiN2I4NjU3OGRiNGMxNGY0NjBjZTk1NGViMzViODIxZTExYWQ4IE1vbiBTZXAg
MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBKdWVyZ2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+
CkRhdGU6IFR1ZSwgMjQgT2N0IDIwMjMgMTM6NTE6MzYgKzAyMDAKU3ViamVjdDogW1BBVENI
XSB4ZW4vZXZlbnRzOiBhdm9pZCB1c2luZyBpbmZvX2Zvcl9pcnEoKSBpbiB4ZW5fc2VuZF9J
UElfb25lKCkKCnhlbl9zZW5kX0lQSV9vbmUoKSBpcyBiZWluZyB1c2VkIGJ5IGNwdWhwX3Jl
cG9ydF9pZGxlX2RlYWQoKSBhZnRlcgppdCBjYWxscyByY3VfcmVwb3J0X2RlYWQoKSwgbWVh
bmluZyB0aGF0IGFueSBSQ1UgdXNhZ2UgYnkKeGVuX3NlbmRfSVBJX29uZSgpIGlzIGEgYmFk
IGlkZWEuCgpVbmZvcnR1bmF0ZWx5IHhlbl9zZW5kX0lQSV9vbmUoKSBpcyB1c2luZyBub3Rp
ZnlfcmVtb3RlX3ZpYV9pcnEoKQp0b2RheSwgd2hpY2ggaXMgdXNpbmcgaXJxX2dldF9jaGlw
X2RhdGEoKSB2aWEgaW5mb19mb3JfaXJxKCkuIEFuZAppcnFfZ2V0X2NoaXBfZGF0YSgpIGlu
IHR1cm4gaXMgdXNpbmcgYSBtYXBsZS10cmVlIGxvb2t1cCByZXF1aXJpbmcKUkNVLgoKQXZv
aWQgdGhpcyBwcm9ibGVtIGJ5IGNhY2hpbmcgdGhlIGlwaSBldmVudCBjaGFubmVscyBpbiBh
bm90aGVyCnBlcmNwdSB2YXJpYWJsZSwgYWxsb3dpbmcgdGhlIHVzZSBub3RpZnlfcmVtb3Rl
X3ZpYV9ldnRjaG4oKSBpbgp4ZW5fc2VuZF9JUElfb25lKCkuCgpGaXhlczogNzIxMjU1Yjk4
MjZiICgiZ2VuaXJxOiBVc2UgYSBtYXBsZSB0cmVlIGZvciBpbnRlcnJ1cHQgZGVzY3JpcHRv
ciBtYW5hZ2VtZW50IikKUmVwb3J0ZWQtYnk6IERhdmlkIFdvb2Rob3VzZSA8ZHdtdzJAaW5m
cmFkZWFkLm9yZz4KU2lnbmVkLW9mZi1ieTogSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1c2Uu
Y29tPgotLS0KIGRyaXZlcnMveGVuL2V2ZW50cy9ldmVudHNfYmFzZS5jIHwgMTIgKysrKysr
KystLS0tCiAxIGZpbGUgY2hhbmdlZCwgOCBpbnNlcnRpb25zKCspLCA0IGRlbGV0aW9ucygt
KQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMveGVuL2V2ZW50cy9ldmVudHNfYmFzZS5jIGIvZHJp
dmVycy94ZW4vZXZlbnRzL2V2ZW50c19iYXNlLmMKaW5kZXggMWIyMTM2ZmUwZmE1Li4yY2Yw
YzJiNjkzODYgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMveGVuL2V2ZW50cy9ldmVudHNfYmFzZS5j
CisrKyBiL2RyaXZlcnMveGVuL2V2ZW50cy9ldmVudHNfYmFzZS5jCkBAIC0xNjQsNiArMTY0
LDggQEAgc3RhdGljIERFRklORV9QRVJfQ1BVKGludCBbTlJfVklSUVNdLCB2aXJxX3RvX2ly
cSkgPSB7WzAgLi4uIE5SX1ZJUlFTLTFdID0gLTF9OwogCiAvKiBJUlEgPC0+IElQSSBtYXBw
aW5nICovCiBzdGF0aWMgREVGSU5FX1BFUl9DUFUoaW50IFtYRU5fTlJfSVBJU10sIGlwaV90
b19pcnEpID0ge1swIC4uLiBYRU5fTlJfSVBJUy0xXSA9IC0xfTsKKy8qIENhY2hlIGZvciBJ
UEkgZXZlbnQgY2hhbm5lbHMgLSBuZWVkZWQgZm9yIGhvdCBjcHUgdW5wbHVnIChhdm9pZCBS
Q1UgdXNhZ2UpLiAqLworc3RhdGljIERFRklORV9QRVJfQ1BVKGV2dGNobl9wb3J0X3QgW1hF
Tl9OUl9JUElTXSwgaXBpX3RvX2V2dGNobikgPSB7WzAgLi4uIFhFTl9OUl9JUElTLTFdID0g
MH07CiAKIC8qIEV2ZW50IGNoYW5uZWwgZGlzdHJpYnV0aW9uIGRhdGEgKi8KIHN0YXRpYyBh
dG9taWNfdCBjaGFubmVsc19vbl9jcHVbTlJfQ1BVU107CkBAIC0zNjYsNiArMzY4LDcgQEAg
c3RhdGljIGludCB4ZW5faXJxX2luZm9faXBpX3NldHVwKHVuc2lnbmVkIGNwdSwKIAlpbmZv
LT51LmlwaSA9IGlwaTsKIAogCXBlcl9jcHUoaXBpX3RvX2lycSwgY3B1KVtpcGldID0gaXJx
OworCXBlcl9jcHUoaXBpX3RvX2V2dGNobiwgY3B1KVtpcGldID0gZXZ0Y2huOwogCiAJcmV0
dXJuIHhlbl9pcnFfaW5mb19jb21tb25fc2V0dXAoaW5mbywgaXJxLCBJUlFUX0lQSSwgZXZ0
Y2huLCAwKTsKIH0KQEAgLTk4MSw2ICs5ODQsNyBAQCBzdGF0aWMgdm9pZCBfX3VuYmluZF9m
cm9tX2lycSh1bnNpZ25lZCBpbnQgaXJxKQogCQkJYnJlYWs7CiAJCWNhc2UgSVJRVF9JUEk6
CiAJCQlwZXJfY3B1KGlwaV90b19pcnEsIGNwdSlbaXBpX2Zyb21faXJxKGlycSldID0gLTE7
CisJCQlwZXJfY3B1KGlwaV90b19ldnRjaG4sIGNwdSlbaXBpX2Zyb21faXJxKGlycSldID0g
MDsKIAkJCWJyZWFrOwogCQljYXNlIElSUVRfRVZUQ0hOOgogCQkJZGV2ID0gaW5mby0+dS5p
bnRlcmRvbWFpbjsKQEAgLTE2MzEsNyArMTYzNSw3IEBAIEVYUE9SVF9TWU1CT0xfR1BMKGV2
dGNobl9wdXQpOwogCiB2b2lkIHhlbl9zZW5kX0lQSV9vbmUodW5zaWduZWQgaW50IGNwdSwg
ZW51bSBpcGlfdmVjdG9yIHZlY3RvcikKIHsKLQlpbnQgaXJxOworCWV2dGNobl9wb3J0X3Qg
ZXZ0Y2huOwogCiAjaWZkZWYgQ09ORklHX1g4NgogCWlmICh1bmxpa2VseSh2ZWN0b3IgPT0g
WEVOX05NSV9WRUNUT1IpKSB7CkBAIC0xNjQyLDkgKzE2NDYsOSBAQCB2b2lkIHhlbl9zZW5k
X0lQSV9vbmUodW5zaWduZWQgaW50IGNwdSwgZW51bSBpcGlfdmVjdG9yIHZlY3RvcikKIAkJ
cmV0dXJuOwogCX0KICNlbmRpZgotCWlycSA9IHBlcl9jcHUoaXBpX3RvX2lycSwgY3B1KVt2
ZWN0b3JdOwotCUJVR19PTihpcnEgPCAwKTsKLQlub3RpZnlfcmVtb3RlX3ZpYV9pcnEoaXJx
KTsKKwlldnRjaG4gPSBwZXJfY3B1KGlwaV90b19ldnRjaG4sIGNwdSlbdmVjdG9yXTsKKwlC
VUdfT04oZXZ0Y2huID09IDApOworCW5vdGlmeV9yZW1vdGVfdmlhX2V2dGNobihldnRjaG4p
OwogfQogCiBzdHJ1Y3QgZXZ0Y2huX2xvb3BfY3RybCB7Ci0tIAoyLjM1LjMKCg==
--------------PhxH83cbsuQZ55H2a2TQ3J92
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-----

--------------PhxH83cbsuQZ55H2a2TQ3J92--

--------------QWsv01t6A6nc4g6x7zhes8ka--

--------------5gCY434GYIiPdm8xUJiVwmC3
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/Ey8FAmU3s7IFAwAAAAAACgkQsN6d1ii/Ey8Y
Uwf/V7rWZz7C6yXEnESPcaa3BrHIaij8RRmOVMEPpCrRYrunW6ionghV8pKGVKCN9FeUtTuv6Ncz
pYsf91H7SVcfog188zrXazuJ4ezBHnslg7Omx00EXVITRZfIfjwQ0RwnOwug+FMQfBf0hK9TAzVQ
X5wf815gCNuPnG2IyqX+0yaKDW+d9qb6lqlQGT4ZReKKddOU+a3stuCG+GH5rF1NVV7uXGSuuB+D
Lfg5bcEN4F/pf+DF5eAyoTFEcBXL2xZYD48f0ibkVXjbVuN6yoWWXokNdQfTRxrkkrURGCxRvQ8k
0aNE++JWvpsT+Hnm0Dw6OA4NkwnvENvkwXAiPFmJNw==
=XCno
-----END PGP SIGNATURE-----

--------------5gCY434GYIiPdm8xUJiVwmC3--


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 12:08:51 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 12:08:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621875.968748 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvGDK-0004u6-IQ; Tue, 24 Oct 2023 12:08:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621875.968748; Tue, 24 Oct 2023 12:08: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 1qvGDK-0004tz-F0; Tue, 24 Oct 2023 12:08:50 +0000
Received: by outflank-mailman (input) for mailman id 621875;
 Tue, 24 Oct 2023 12: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=krZT=GG=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qvGDI-0004sF-K1
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 12:08:48 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur05on20626.outbound.protection.outlook.com
 [2a01:111:f400:7d00::626])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 1517da70-7266-11ee-9b0e-b553b5be7939;
 Tue, 24 Oct 2023 14:08:46 +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.6933.14; Tue, 24 Oct
 2023 12:08:44 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6933.011; Tue, 24 Oct 2023
 12: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: 1517da70-7266-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Btf8EcXTGLrv2g06U/W+lNV714+G0oVsb7oX21k41NNsdVCVhd/BqPNWAOxWYMqaMLRVvgTDioY87sYI478EMFLeGdT/yQLJ3iHTW3KXjsUuywx9fY7yAjaU7hLO7e4sTav5EYIfyjTcCnrnenvqrC6MvOVs+F9bRf8lf92WKTVyin6uLCc1AQe1WRg6HNxkjrj4o7rJ9He3cMbfdfthZUmKdCpooj60KK1qSVPWz4xts886fvshwE7Oq8JqpsuOz65qqLiip8OpEKI5WSnWexa8DI36fmQEDXBVtiIUQ7nlk3AOEeJzBT4Gnuty/PjG9Tmty+xRuuc8mymJ0vF4/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=bfvGQFI1qnwP5ZqYU9NNsF2DQG1OqoIoiobGJYLGaI4=;
 b=VplEni5DwqQj2wsHojks/bS8SX3DhoRngFi0j63zynL/sN5errztq6hpPhPIIUxdaCODpGr/5Hw5y/cPq6CoYBvSmVi9BX38z7CaZ3CSTwNklN4gFzvMad5E7vPaU5L0S4SksKTfRpTe9dbUcYdlHbee46bJTBpDSTu1eGLGEU3dhbEvRfeWS1cq1Aynrlz+3vZeryxOYV8OCXirvmnb0/CBbWdaZ/Dbz8sUYeXx7kyfQhezY4uiUnD3b5t52oLHtfnwGyo/++rpjxXhiu9g5G+gFOWgLPMKtGNejced3GfGaOGlmAH9r/brC/8IpmGauFGaVG2ltUb0++eyF++SOQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=bfvGQFI1qnwP5ZqYU9NNsF2DQG1OqoIoiobGJYLGaI4=;
 b=sMT7422wW4KKYvy0UH6ILn8oSAxx0lWxJfItqJBsX5lS2BqMLEEUnLuBM02BpVVnSNranS9oO9HReUYwZuIpEMbsTIWInHcRiUENN/Lynnu071aeVI9m+iy0ha9OJ6b/rtGlkoAtOWY+7GxuxLldeHCkD/uEip5sSJl6mmxjOcBlYhRCu9CGCCUOsfC60cd7vw1b4h+XaRlj1QjjaDY3feaRObGLBSyMDtTYAGXg4akxWh3zZGpVl6KGtyuQhvB7m1oO54EzKnLf0KKu1+4DYvAjIcRKCj33B7X3ZxU3jKTYKkZK2X08RAmcOa7xh3yCQ20tZ3kYgoMzaUR2ryzetA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <36e76621-01ac-d5a1-9359-30544bb916ef@suse.com>
Date: Tue, 24 Oct 2023 14:08: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 v2] x86/i8259: do not assume interrupts always target CPU0
Content-Language: en-US
From: Jan Beulich <jbeulich@suse.com>
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: <20231023124635.44266-1-roger.pau@citrix.com>
 <a525cc49-69e7-c509-61d4-a2456b3fdbcc@suse.com> <ZTeY6JNbNfTVCpib@macbook>
 <2c5a5b6f-5c67-e46c-765c-81999ac1e11b@suse.com> <ZTesLTIulycE1s5d@macbook>
 <c11b0ace-f2b7-8d59-0112-fed6a5de0d03@suse.com>
In-Reply-To: <c11b0ace-f2b7-8d59-0112-fed6a5de0d03@suse.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR5P281CA0039.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:f3::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_|AS8PR04MB7512:EE_
X-MS-Office365-Filtering-Correlation-Id: a4c113d0-30ac-4860-92a7-08dbd489f835
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	b0EiMJ+xNvdbaRayQg/f8hNp7vGuBbONsiax44mgdfj+JiHRrwDlGrkxJfkwyEg3xd4QbNSle8Tri7DG+0e3plaYlZ/RZ4JfunPYnlvhRjX0tJbQRMoZoTBJR0T1y29SX+VWkV1nsryKeX+XK4TRhc3mKEXRZgXY3iDBDjfrky1PGeLw4Fi5+olUDZaozMoa93SNVVReDaXsytKmKl305+pBuBqUmd9eO+H8MvhkpBArW4WaFPnX5n3/JXC0K1sWgyOfLu0n06T5qfIFDbNFEcGQW8P2o8CRXoamWYXvTMv5lFj4TbjCgyti61BLl5xuGNXOwAbsKOGEPfA++jgXFRy7SorjOVApayiKGKXnlRhphZCBWJtxdB7q1MfqE6pt8KOgnsYZhFo3JVc5HRjywd9VxOM805zx+Gg/q4m6GPdoz6TtIx9zh+mseYLtNr2yx+M7TdxHyM044/mUHNI6kIdrrAR+UrgsuszMEtOBmuOhjfoxRuZe6RBdvK6ddC9mejrZzjfm5SA0ZycUydM59jm6qmNaoWc0YbBlhs2yo2xok4Okaz2OHyWm2RsfuDzxQMy1Lfl7pn6g0BiTjIHDjcQ338qRPyuIdYbOp0G1bs575brESt7nl/pcbKjvd0JSPROX68oUjOMB+7PBwXYKlw==
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)(396003)(366004)(39860400002)(230922051799003)(1800799009)(64100799003)(186009)(451199024)(26005)(31686004)(66899024)(38100700002)(41300700001)(2906002)(4744005)(86362001)(31696002)(36756003)(5660300002)(8936002)(8676002)(4326008)(2616005)(6506007)(478600001)(66946007)(66476007)(54906003)(6916009)(316002)(66556008)(6486002)(6512007)(53546011)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?U0R3bG4vVHhZRDRmVk5xV2UyQ2RBVU8xcUJIZURWRUgrMEdrallHY2hGeUti?=
 =?utf-8?B?TVJaTmFCdGlLUGd0ak5OZk03WGZUeXF5SlRmenFGeTU2MHhib3BTL2JxTnFZ?=
 =?utf-8?B?QjhCRlExVWpodC9Ed3ZsQUMyVXJmVEpzOHJjYzdtcXU5NmRxVDJIOEJJYTVu?=
 =?utf-8?B?aEVuNnpPUHpydTIrK05JYXpRVVpscVZiZFVWeThYcTlUREtrNHpuMGFEVVps?=
 =?utf-8?B?Q1lyUHIyM1Jpb1J4RlJVbkxOMytDT0ZqNjl5ZzdiTFAvOFRqMVh4R3hQN3dV?=
 =?utf-8?B?elZJSFNWSE5OWHl3eG5TSHlDb3pmSkxJSVZoQVpiQm5HbU4rbjFhL3JKUkVC?=
 =?utf-8?B?NVlvZjdXRUt0dmU0aTlQNEtBdXc2b3MzWVUwdDlXUUV3MVF2M09PYTVBSzE4?=
 =?utf-8?B?ZVZEbWhualkveFdGSHdVU1VtdHRzdE9BYkkwK1NHMU1ocWFpM0Jub2lOVXM1?=
 =?utf-8?B?dFlRVGhFWVhkeTU3ZkJidXRFY2RtZkRQMllYNTZ0dVIyVU5IU1VJS2d3eVZk?=
 =?utf-8?B?MXUxVkNWWVZjRFQ4UlNMRnpzV0RmakJkN1F6SDR1MFh4QTkxV2dDb2s0bE1l?=
 =?utf-8?B?bjdWNTJjcyt3dVV0NytaMFp5alVQclJFaHJiRE1FcEsvMjlKZjR3SzMzTmFu?=
 =?utf-8?B?clJWVW9CSnlJTWhXTFlFM0lkOVF0K0dCQ2JoYzJtNXpQTVNISVk3UE5oZHJo?=
 =?utf-8?B?NGhINVdxVFJGejcxaVVjdDdtTUszQXRkazhkekhPZTJRNE5sWGVOODgrRGRF?=
 =?utf-8?B?eHBmb3RjNmY0S3RabWo4andsUjQ2STZLY0lneTEzZGxydnFqMEIwUmNDTEFW?=
 =?utf-8?B?b2lSanl3WlRiZ25Lck1Ray9FQ004S3JaMmlPK3piUms3T0JJcHNMM2xlaSt3?=
 =?utf-8?B?YXJQektMMlJ3aDVJM2lReFRjQ1htTkZodDF5Y3Z3MXVQcktlcGg3YlZsV0dD?=
 =?utf-8?B?TlhTMmxqNnAwYWx4OGpvbnk5OHBvcXdTR0xBbmhyZFhhSk91bUJwbEJUeS9q?=
 =?utf-8?B?ZllmZzcrNVFzOHhsbkJROU1yUXExTVpNcUo4MFQ1MXRqSkdRWnJzTmM2OXgx?=
 =?utf-8?B?SWVPNi9haFc1aEFaL1cvU3NuTHVKV1RHZU9qTWpIVlNlL3IxbmlWeHFHVFdV?=
 =?utf-8?B?cE01ZUJ6cTg1WXYzcmlEWFNycGdCcUg4dlpZcWVhM1B3MFVaMGRlQUtiSEUy?=
 =?utf-8?B?V3ptcERDdnFpN0JKZHZIOUxzS0V3RTZNeFhQRVV5aG9WRmVkMTN4Qng1ek0w?=
 =?utf-8?B?MHpoLy9kbHhUWjFIdEMvVDdXbHpWamtweVpIWmcrZjk1QmpvNWRWa3pQbDRG?=
 =?utf-8?B?Tjl3d2RsejF1U29sbXdrMmRPSUlqVE5TY3BLWERpTmVwTkhNQjNib215TFFE?=
 =?utf-8?B?NGxBMzBuZHIyaGNzMTYvTjNmVEhHa1RTTlJxa3FUdytFdUIrbGFDTStNUnE3?=
 =?utf-8?B?VWRTOVhPUHA4clhRRW5ZM3VXd0hEaXd1MnQ4S1pNbzNyLytWeWxESFBJUXBq?=
 =?utf-8?B?SnRWTTVpS29ZckxBaFk2UTlZKy9HcnM3b0FFQlIwSXhaVkdGSHNjMGJDcGpa?=
 =?utf-8?B?YkhGS1hUNTlkUUpobzN5Y2NJQ0lXbFY4NmxmT3BlOHRpS1Z0ZjZpMDdHT2dh?=
 =?utf-8?B?aldGWXNPRFRaSWsxVndSemhaNkl5VlpiclF6UW5SUmt2K01zYndKREVWR3Fm?=
 =?utf-8?B?YzgyZmpNU1FaYkNiMnNKcGdrSDBzc2hKeUJnSitOZytCa3lJcHBYSTFPR0Ju?=
 =?utf-8?B?MFJiblNCK2NPaTdSd0RNRU1tMGwvOUVxZE1CZWVRemZYelFpRWgvaDIrN3Bh?=
 =?utf-8?B?WkNwaTFCWW5zbjV3V1E1Z3Y0M25KaWNQckUrN3AxNitFZG9yRUI2ekt1N01p?=
 =?utf-8?B?QWpKSlAzWmNxY2liYmJzWmg0NlpWZ2l2eHF5bmFUOCtBdzMwSkNNdWphdmZJ?=
 =?utf-8?B?TGRlUmp3YkoyVkc5dVdDbVlFTENmWkowWmlNN1JmZE40RjZpd3dqZWJTU3RI?=
 =?utf-8?B?dWNZY3AwRFIxRHh5bHpvZS9pNUJCeFNuRUtET0I1SDdEcjlaa1RTcndoaDZ0?=
 =?utf-8?B?Rk9uMEZGejZNZXJlM3FlaktrUkg5Z2FMVmVITGlzaEdndjRtWDhQS0h0ZUsr?=
 =?utf-8?Q?c7BEogd86/tP8+4A3Mmm9BDSl?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: a4c113d0-30ac-4860-92a7-08dbd489f835
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 24 Oct 2023 12:08:44.3979
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: dqiGlA/YlD9lywnAwfpCObzcMiBWfVJZ50X49fA919O7NOSCQJpEU0SUVrEFH+TZ8SUgrg57m2UYSKpWqjR+lA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB7512

On 24.10.2023 14:06, Jan Beulich wrote:
> On 24.10.2023 13:36, Roger Pau Monné wrote:
>> What is your reasoning for wanting the smp_processor_id() check in
>> the caller rather than bogus_8259A_irq()?  It does seem fine to me to
>> do such check in bogus_8259A_irq(), as whether the IRQ is bogus also
>> depends on whether it fired on the BSP or any of the APs.
> 
> bogus_8259A_irq() shouldn't be concerned about the CPU it runs on; it
> should solely deal with 8259A aspects.

Or to put it differently: The function is supposed to tell whether an
IRQ is bogus from the pov of the PIC. The caller decides under what
conditions to actually invoke this checking.

Jan



From xen-devel-bounces@lists.xenproject.org Tue Oct 24 12:16:28 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 12:16:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621882.968757 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvGKc-0008DM-9v; Tue, 24 Oct 2023 12:16:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621882.968757; Tue, 24 Oct 2023 12:16: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 1qvGKc-0008DF-7M; Tue, 24 Oct 2023 12:16:22 +0000
Received: by outflank-mailman (input) for mailman id 621882;
 Tue, 24 Oct 2023 12:16: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=+b+W=GG=gmail.com=xadimgnik@srs-se1.protection.inumbo.net>)
 id 1qvGKb-0008D9-Ii
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 12:16:21 +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 23cf3b8e-7267-11ee-98d5-6d05b1d4d9a1;
 Tue, 24 Oct 2023 14:16:20 +0200 (CEST)
Received: by mail-wr1-x436.google.com with SMTP id
 ffacd0b85a97d-31fa15f4cc6so3124455f8f.2
 for <xen-devel@lists.xenproject.org>; Tue, 24 Oct 2023 05:16:20 -0700 (PDT)
Received: from [192.168.6.66] (54-240-197-238.amazon.com. [54.240.197.238])
 by smtp.gmail.com with ESMTPSA id
 w5-20020adfee45000000b00317a04131c5sm9822690wro.57.2023.10.24.05.16.17
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 24 Oct 2023 05:16: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: 23cf3b8e-7267-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698149780; x=1698754580; 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=XqhLs0VKE4eYGQf3IxDeRGyPalLn8V/39qWJijHHo24=;
        b=NBCB72IoLbXH7IAQZcqnSsQZ5Koyq0948KaTOvNEIhaJnWKHIGn58WVVlbNNa9jdoL
         J7wnKEyBxuDzqpMmh6NH1qJF/Q/gpz+4Ktpx4LIAJqSWV0Y3Qr4ozFxKSZBOCK5CNq8T
         BO6AcwP8bxMuoZhznr1fkcTpvynrTbQcqqzyd6p0YP2wH28R0I9El5dbiTxDUqnicJkp
         l7uRUrEdfG+3DHrjbS5mw2thEF3LF69Cb/ZwNZ1s6P6Wn2K22mMp1eSENekUUGpTbfRt
         hCEgVsuNBp5t6dNp+wWUA6SMV/ODHHU58Ou8qhIK/mhdIlcK0SpAZ3nEkEcTG0UYc+BL
         QNig==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698149780; x=1698754580;
        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=XqhLs0VKE4eYGQf3IxDeRGyPalLn8V/39qWJijHHo24=;
        b=MH7QNYD+60hOzjt/ym3epkASUTNH61Pd3GWrPPbHYjCKJRo8HiKwXQQaJUIBOKD40f
         TEl5HYGkaOBzXXAg2L8q6LFYfHLuZao7+5+dqTW4T3ElslUOMVvORoacdXkP8tW8fXOm
         EwCi6TA4IUw8G+4VflF3gXEf7DW+dGoFOa6GB2Qnp5xKWRetUcHgc12oXlhcocD0UMt7
         wEjlyQ4i1Um/WmIiHb1U1E6cSlEedEcDc5jeQ/bm+EM3U8K8oo6HJxE6rZ/EF3eX+nEI
         APQhwNfeFS+cfTaH1ut5a0vkhow+cfLeKwjubyWxBIEaRL6VHNTimoczkkDsdxZnvV/e
         dnBg==
X-Gm-Message-State: AOJu0YzEObhj2Ms08AJ70a/11flyiiUwybDG1j7xnAxaDmWQEBf8cDcv
	qFuwgvp3TieDGc+Zg482AGw=
X-Google-Smtp-Source: AGHT+IE4Z5n2fmffxWcQ/sQr9yuXr/uNARW3iYvgNsmcZBaWl9xNE3uVkib5/sqcnF5f4lyc4e1dbQ==
X-Received: by 2002:adf:e650:0:b0:32d:92fd:9f73 with SMTP id b16-20020adfe650000000b0032d92fd9f73mr7885913wrn.10.1698149779261;
        Tue, 24 Oct 2023 05:16:19 -0700 (PDT)
From: Paul Durrant <xadimgnik@gmail.com>
X-Google-Original-From: Paul Durrant <paul@xen.org>
Message-ID: <456aae8e-ea07-4861-a91b-7c7e28d2a22b@xen.org>
Date: Tue, 24 Oct 2023 13:16:17 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Reply-To: paul@xen.org
Subject: Re: [PATCH 01/12] i386/xen: fix per-vCPU upcall vector for Xen
 emulation
Content-Language: en-US
To: David Woodhouse <dwmw2@infradead.org>, qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>, Hanna Reitz <hreitz@redhat.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Anthony Perard <anthony.perard@citrix.com>,
 =?UTF-8?Q?Marc-Andr=C3=A9_Lureau?= <marcandre.lureau@redhat.com>,
 Paolo Bonzini <pbonzini@redhat.com>, "Michael S. Tsirkin" <mst@redhat.com>,
 Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
 Richard Henderson <richard.henderson@linaro.org>,
 Eduardo Habkost <eduardo@habkost.net>, Marcelo Tosatti
 <mtosatti@redhat.com>, qemu-block@nongnu.org,
 xen-devel@lists.xenproject.org, kvm@vger.kernel.org
References: <20231016151909.22133-1-dwmw2@infradead.org>
 <20231016151909.22133-2-dwmw2@infradead.org>
Organization: Xen Project
In-Reply-To: <20231016151909.22133-2-dwmw2@infradead.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 16/10/2023 16:18, David Woodhouse wrote:
> From: David Woodhouse <dwmw@amazon.co.uk>
> 
> The per-vCPU upcall vector support had two problems. Firstly it was
> using the wrong hypercall argument and would always return -EFAULT.
> And secondly it was using the wrong ioctl() to pass the vector to
> the kernel and thus the *kernel* would always return -EINVAL.
> 
> Linux doesn't (yet) use this mode so it went without decent testing
> for a while.
> 
> Fixes: 105b47fdf2d0 ("i386/xen: implement HVMOP_set_evtchn_upcall_vector")
> Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
> ---
>   target/i386/kvm/xen-emu.c | 5 ++---
>   1 file changed, 2 insertions(+), 3 deletions(-)

Reviewed-by: Paul Durrant <paul@xen.org>



From xen-devel-bounces@lists.xenproject.org Tue Oct 24 12:29:59 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 12:29:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621885.968768 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvGXf-0002gz-Eo; Tue, 24 Oct 2023 12:29:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621885.968768; Tue, 24 Oct 2023 12: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 1qvGXf-0002gs-CD; Tue, 24 Oct 2023 12:29:51 +0000
Received: by outflank-mailman (input) for mailman id 621885;
 Tue, 24 Oct 2023 12: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=+b+W=GG=gmail.com=xadimgnik@srs-se1.protection.inumbo.net>)
 id 1qvGXe-0002gl-10
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 12:29:50 +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 055820f8-7269-11ee-98d5-6d05b1d4d9a1;
 Tue, 24 Oct 2023 14:29:48 +0200 (CEST)
Received: by mail-lj1-x22b.google.com with SMTP id
 38308e7fff4ca-2bfed7c4e6dso66005311fa.1
 for <xen-devel@lists.xenproject.org>; Tue, 24 Oct 2023 05:29:48 -0700 (PDT)
Received: from [192.168.6.66] (54-240-197-238.amazon.com. [54.240.197.238])
 by smtp.gmail.com with ESMTPSA id
 x22-20020a05600c189600b004083a105f27sm16404394wmp.26.2023.10.24.05.29.46
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 24 Oct 2023 05:29: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: 055820f8-7269-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698150588; x=1698755388; 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=6W+0Okxg9I00CjQFxVnV6ntSdHCpG+SP4y3vva54Y8E=;
        b=YyIoXv70xf/HYm5MSbrUVi/24zPyewtGMnQNl5Scn0txQ9ovBi1s1qge7cnFf6ze8s
         sohNJCT30g/zGOeGdU7c6s1KWvztX2GBS5IKNfQGxcuwN1XDnW/QKllee1ZznYA0qKEN
         eHR02O4XI1U5EWqCKLQuqNouGQtPF26RFgZVGwc1Sx0xjyLUxlvHOoJ1WOLR8zwmfBVB
         TvhTvopAMKWUsWvYS4I4IULqzFjRh56zZQMWRuxRrZ789TxxeJQBNV8msaCFS4Ab1poW
         c/RUEcOLuEDv1PL3SUcmCAO4eCZ6fTX7UQM09LOUwt4DhKUdolowcFiPSr8yHY+WsBT0
         ClDg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698150588; x=1698755388;
        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=6W+0Okxg9I00CjQFxVnV6ntSdHCpG+SP4y3vva54Y8E=;
        b=YdizYQ/BPhIOMF9vgV8uQi/VGbYNgqcIA8sALOa/eFtHY5UA76KvyI49Rt08m97e6U
         2mCSvt85zLWuNLHSwT7KZOnTPMvHCISi7cfk7Q9BAiC4apOfYJs2a1H15X4VNFmXAdzo
         3bKxM2HXPCofO0qcPsf3yJgKBbKmA+wigluxH0oqry5n5qF425RdDCGNmKLLRpFmTNFH
         pZpF+7h3cxm6VjIazIhi1uRCWKbd7xUIjvhGuFi7uWZvNIghl+Sbr32steNw8djwaysN
         rOD2bM484YUjyp696WCXzeui7Ba3VDRvPY/9t4Bw7BIXrZGQjRYdoJ5q/cAyWDv1mlhJ
         kEJg==
X-Gm-Message-State: AOJu0Yyfd/NJmbUQhpc+Fl+lReUJRz6bLl+wNwFZw5iPCTovH/+2X6PQ
	u78dgULh35FjFaGwIisB1s0=
X-Google-Smtp-Source: AGHT+IHQXaOLRvR4fMkOTyZrwynUH3dk9Z2h9mBZ5MJ5cJrzsBPSIpwKJU7nccdNSAx+0KKpMf83eA==
X-Received: by 2002:a2e:3c19:0:b0:2c5:1809:69ba with SMTP id j25-20020a2e3c19000000b002c5180969bamr8123521lja.40.1698150587872;
        Tue, 24 Oct 2023 05:29:47 -0700 (PDT)
From: Paul Durrant <xadimgnik@gmail.com>
X-Google-Original-From: Paul Durrant <paul@xen.org>
Message-ID: <9eeb2cac-2f22-4e42-9765-2fd5e5a960fa@xen.org>
Date: Tue, 24 Oct 2023 13:29:46 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Reply-To: paul@xen.org
Subject: Re: [PATCH 02/12] hw/xen: select kernel mode for per-vCPU event
 channel upcall vector
Content-Language: en-US
To: David Woodhouse <dwmw2@infradead.org>, qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>, Hanna Reitz <hreitz@redhat.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Anthony Perard <anthony.perard@citrix.com>,
 =?UTF-8?Q?Marc-Andr=C3=A9_Lureau?= <marcandre.lureau@redhat.com>,
 Paolo Bonzini <pbonzini@redhat.com>, "Michael S. Tsirkin" <mst@redhat.com>,
 Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
 Richard Henderson <richard.henderson@linaro.org>,
 Eduardo Habkost <eduardo@habkost.net>, Marcelo Tosatti
 <mtosatti@redhat.com>, qemu-block@nongnu.org,
 xen-devel@lists.xenproject.org, kvm@vger.kernel.org
References: <20231016151909.22133-1-dwmw2@infradead.org>
 <20231016151909.22133-3-dwmw2@infradead.org>
Organization: Xen Project
In-Reply-To: <20231016151909.22133-3-dwmw2@infradead.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 16/10/2023 16:18, David Woodhouse wrote:
> From: David Woodhouse <dwmw@amazon.co.uk>
> 
> A guest which has configured the per-vCPU upcall vector may set the
> HVM_PARAM_CALLBACK_IRQ param to fairly much anything other than zero.
> 
> For example, Linux v6.0+ after commit b1c3497e604 ("x86/xen: Add support
> for HVMOP_set_evtchn_upcall_vector") will just do this after setting the
> vector:
> 
>         /* Trick toolstack to think we are enlightened. */
>         if (!cpu)
>                 rc = xen_set_callback_via(1);
> 
> That's explicitly setting the delivery to GSI#, but it's supposed to be
> overridden by the per-vCPU vector setting. This mostly works in QEMU
> *except* for the logic to enable the in-kernel handling of event channels,
> which falsely determines that the kernel cannot accelerate GSI delivery
> in this case.
> 
> Add a kvm_xen_has_vcpu_callback_vector() to report whether vCPU#0 has
> the vector set, and use that in xen_evtchn_set_callback_param() to
> enable the kernel acceleration features even when the param *appears*
> to be set to target a GSI.
> 
> Preserve the Xen behaviour that when HVM_PARAM_CALLBACK_IRQ is set to
> *zero* the event channel delivery is disabled completely. (Which is
> what that bizarre guest behaviour is working round in the first place.)
> 
> Fixes: 91cce756179 ("hw/xen: Add xen_evtchn device for event channel emulation")
> Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
> ---
>   hw/i386/kvm/xen_evtchn.c  | 6 ++++++
>   include/sysemu/kvm_xen.h  | 1 +
>   target/i386/kvm/xen-emu.c | 7 +++++++
>   3 files changed, 14 insertions(+)
> 
> diff --git a/hw/i386/kvm/xen_evtchn.c b/hw/i386/kvm/xen_evtchn.c
> index 4df973022c..d72dca6591 100644
> --- a/hw/i386/kvm/xen_evtchn.c
> +++ b/hw/i386/kvm/xen_evtchn.c
> @@ -490,6 +490,12 @@ int xen_evtchn_set_callback_param(uint64_t param)
>           break;
>       }
>   
> +    /* If the guest has set a per-vCPU callback vector, prefer that. */
> +    if (gsi && kvm_xen_has_vcpu_callback_vector()) {
> +        in_kernel = kvm_xen_has_cap(EVTCHN_SEND);
> +        gsi = 0;
> +    }
> +

So this deals with setting the callback via after setting the upcall 
vector. What happens if the guest then disables the upcall vector (by 
setting it to zero)? Xen checks 'v->arch.hvm.evtchn_upcall_vector != 0' 
for every event delivery.

   Paul



From xen-devel-bounces@lists.xenproject.org Tue Oct 24 12:30:58 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 12:30:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621887.968779 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvGYj-000438-QS; Tue, 24 Oct 2023 12:30:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621887.968779; Tue, 24 Oct 2023 12: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 1qvGYj-000431-LS; Tue, 24 Oct 2023 12:30:57 +0000
Received: by outflank-mailman (input) for mailman id 621887;
 Tue, 24 Oct 2023 12:30: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=+b+W=GG=gmail.com=xadimgnik@srs-se1.protection.inumbo.net>)
 id 1qvGYi-00042t-Sl
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 12:30:56 +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 2d0f41ad-7269-11ee-9b0e-b553b5be7939;
 Tue, 24 Oct 2023 14:30:54 +0200 (CEST)
Received: by mail-lj1-x230.google.com with SMTP id
 38308e7fff4ca-2c50fbc218bso63252841fa.3
 for <xen-devel@lists.xenproject.org>; Tue, 24 Oct 2023 05:30:54 -0700 (PDT)
Received: from [192.168.6.66] (54-240-197-238.amazon.com. [54.240.197.238])
 by smtp.gmail.com with ESMTPSA id
 x22-20020a05600c189600b004083a105f27sm16404394wmp.26.2023.10.24.05.30.53
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 24 Oct 2023 05: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: 2d0f41ad-7269-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698150654; x=1698755454; 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=qkkKPtB+0MYb68gtsi8LcLr9VZV4vaP8LHEM7IjFw7M=;
        b=Fo6/WR0xfsTsid19hmlGsptXEWny9HvC4xeoiLmVqaJ9f36KB03ZLWlbEcH2jkYYrk
         fAryS0dAtmMVe1devqgWj+DXexAOwZCXd94WolkxXghgF/7oi8x9surBJx1DqtHR6/v1
         NnEAucyHPvptSc2CLmIBvsGZb/QL18zwkp2HUZ0zDZGsSHx+OL8pIVMFf+cZOvHBVyx4
         rwWlaWuFdS2a6qYkkuiJgIiZPGTv6wC4oHaB6X1PjHn2qRXfJys/MPY1DJmQsUmhNK5B
         aLPpLJLhUDCd5I/YuhcS7s6dcUdCSszQGhnOsjzUIFj8nX5sPnp1v4+19Flno/V9tFsL
         6N6g==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698150654; x=1698755454;
        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=qkkKPtB+0MYb68gtsi8LcLr9VZV4vaP8LHEM7IjFw7M=;
        b=e0aY1+L85Igv5mU6rD36/IH3ANrdiWwZLGnGLXpVSIz/cWAnabDQjk9W49i+rezc4T
         ydM0ACsDeKKLd57t1RjTaf1EZA6f9IEIhQEXqkGBkdyyj2A8CtNJxU7Hn89cRQ2HfAer
         IAVld+oLSfvHcLvyHAUnrSUgNXcHo5XmhL/T7mk6vVVHrI0/Uy7QcL4vjFKBknwWZCLD
         ByHavZuH/aqAQNrin6m6xkt8M28lyC6Mko9tsPIWBIyjqoRF7h/1kjWASnhvvgOk5/yy
         Kv24XvM72kCxNGpvgGAN2yikZujYAh9p1JAwrPNNqBbyRYWyj5ixZSh8e/zRqoz5F59X
         AzYA==
X-Gm-Message-State: AOJu0YzR4N3J1Ujen/5IVJY4CdbFS1P6hf1JpDAWaoFid6C3Ieh/dTfK
	QN29Btp74bP3UdrbzaRqOTM=
X-Google-Smtp-Source: AGHT+IE/mzlKG6p6MNuMkl5KdeR+gdKt/64A9xubv6BdiuV2Bc68YaEih+Wh7ICweIO/TGve36ruQA==
X-Received: by 2002:a2e:a7cc:0:b0:2c5:fb9:49b6 with SMTP id x12-20020a2ea7cc000000b002c50fb949b6mr11630710ljp.10.1698150654333;
        Tue, 24 Oct 2023 05:30:54 -0700 (PDT)
From: Paul Durrant <xadimgnik@gmail.com>
X-Google-Original-From: Paul Durrant <paul@xen.org>
Message-ID: <d6db2c5d-da65-4f93-a340-2ca4772e86db@xen.org>
Date: Tue, 24 Oct 2023 13:30:53 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Reply-To: paul@xen.org
Subject: Re: [PATCH 03/12] include: update Xen public headers to Xen 4.17.2
 release
Content-Language: en-US
To: David Woodhouse <dwmw2@infradead.org>, qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>, Hanna Reitz <hreitz@redhat.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Anthony Perard <anthony.perard@citrix.com>,
 =?UTF-8?Q?Marc-Andr=C3=A9_Lureau?= <marcandre.lureau@redhat.com>,
 Paolo Bonzini <pbonzini@redhat.com>, "Michael S. Tsirkin" <mst@redhat.com>,
 Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
 Richard Henderson <richard.henderson@linaro.org>,
 Eduardo Habkost <eduardo@habkost.net>, Marcelo Tosatti
 <mtosatti@redhat.com>, qemu-block@nongnu.org,
 xen-devel@lists.xenproject.org, kvm@vger.kernel.org
References: <20231016151909.22133-1-dwmw2@infradead.org>
 <20231016151909.22133-4-dwmw2@infradead.org>
Organization: Xen Project
In-Reply-To: <20231016151909.22133-4-dwmw2@infradead.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 16/10/2023 16:19, David Woodhouse wrote:
> From: David Woodhouse <dwmw@amazon.co.uk>
> 
> ... in order to advertise the XEN_HVM_CPUID_UPCALL_VECTOR feature,
> which will come in a subsequent commit.
> 
> Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
> ---
>   hw/i386/kvm/xen_xenstore.c                    |  2 +-
>   include/hw/xen/interface/arch-arm.h           | 37 +++++++-------
>   include/hw/xen/interface/arch-x86/cpuid.h     | 31 +++++-------
>   .../hw/xen/interface/arch-x86/xen-x86_32.h    | 19 +------
>   .../hw/xen/interface/arch-x86/xen-x86_64.h    | 19 +------
>   include/hw/xen/interface/arch-x86/xen.h       | 26 ++--------
>   include/hw/xen/interface/event_channel.h      | 19 +------
>   include/hw/xen/interface/features.h           | 19 +------
>   include/hw/xen/interface/grant_table.h        | 19 +------
>   include/hw/xen/interface/hvm/hvm_op.h         | 19 +------
>   include/hw/xen/interface/hvm/params.h         | 19 +------
>   include/hw/xen/interface/io/blkif.h           | 27 ++++------
>   include/hw/xen/interface/io/console.h         | 19 +------
>   include/hw/xen/interface/io/fbif.h            | 19 +------
>   include/hw/xen/interface/io/kbdif.h           | 19 +------
>   include/hw/xen/interface/io/netif.h           | 25 +++-------
>   include/hw/xen/interface/io/protocols.h       | 19 +------
>   include/hw/xen/interface/io/ring.h            | 49 ++++++++++---------
>   include/hw/xen/interface/io/usbif.h           | 19 +------
>   include/hw/xen/interface/io/xenbus.h          | 19 +------
>   include/hw/xen/interface/io/xs_wire.h         | 36 ++++++--------
>   include/hw/xen/interface/memory.h             | 30 +++++-------
>   include/hw/xen/interface/physdev.h            | 23 ++-------
>   include/hw/xen/interface/sched.h              | 19 +------
>   include/hw/xen/interface/trace.h              | 19 +------
>   include/hw/xen/interface/vcpu.h               | 19 +------
>   include/hw/xen/interface/version.h            | 19 +------
>   include/hw/xen/interface/xen-compat.h         | 19 +------
>   include/hw/xen/interface/xen.h                | 19 +------
>   29 files changed, 124 insertions(+), 523 deletions(-)
> 

Acked-by: Paul Durrant <paul@xen.org>



From xen-devel-bounces@lists.xenproject.org Tue Oct 24 12:32:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 12:32:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621902.968789 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvGad-0004iW-98; Tue, 24 Oct 2023 12:32:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621902.968789; Tue, 24 Oct 2023 12:32: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 1qvGad-0004iP-3z; Tue, 24 Oct 2023 12:32:55 +0000
Received: by outflank-mailman (input) for mailman id 621902;
 Tue, 24 Oct 2023 12:32: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=+b+W=GG=gmail.com=xadimgnik@srs-se1.protection.inumbo.net>)
 id 1qvGab-0004fM-7g
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 12:32:53 +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 7305cdb9-7269-11ee-98d5-6d05b1d4d9a1;
 Tue, 24 Oct 2023 14:32:52 +0200 (CEST)
Received: by mail-wm1-x32c.google.com with SMTP id
 5b1f17b1804b1-40806e4106dso25624485e9.1
 for <xen-devel@lists.xenproject.org>; Tue, 24 Oct 2023 05:32:52 -0700 (PDT)
Received: from [192.168.6.66] (54-240-197-238.amazon.com. [54.240.197.238])
 by smtp.gmail.com with ESMTPSA id
 k6-20020a05600c1c8600b003fe1c332810sm16779437wms.33.2023.10.24.05.32.50
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 24 Oct 2023 05:32: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: 7305cdb9-7269-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698150772; x=1698755572; 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=Z8xi1P/dcTtFP7ePzE6x4tmvxxQQYlCJaujecDuFetg=;
        b=a+pdmySDHmq3aciA8WrS6up6C2rO3ZNapV7FvazkC+OhKD7ndfuD4lZ6i3NRq9V33t
         U7vu9jCoNNE4ITtqoS0Asw+trAOE7Oq10gphepx6PAKkaj8Gy62bEfFOLanxdpeuEKk6
         6caMqoGHJb/w5tW963lbuXfR2WFzdGCk+pQ7N+IGfrtJDk9i2bSluPP0MwQN+punce42
         NDCFpo24ohxPNOknO5Yxn8/pkTY2+7rznE2QNFPo8vQJs0nVqqzlwUpTWpaU6E+jUAID
         fobDFGymEnAOamYvUtFW/VlIdGRmNyqFH1rurtm2C2hpMROrhBumpjyndYU8yd/Cz73y
         2PTA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698150772; x=1698755572;
        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=Z8xi1P/dcTtFP7ePzE6x4tmvxxQQYlCJaujecDuFetg=;
        b=mnB/TQkZtRHbKoXfXC3Idylap1/urLhsAYzzxpBD/S75QBa+lznrve0mAr0LLecEce
         gl/9q2wyEv+5tHhyC/4x2Yu8tvEFBGlzvqdS4X2WxzNhwKazlqmTZSqXY0eKv0V5WX4P
         +l7lRA8et4VpPF1p5+HFc0xgY77f2AXpSV4+dyTJmry1zeGhdzjDApLf7/AvIQhdWVfL
         gCZdgLkdQRQNsXbhmznhMmHVIgL/A26O4UX4sQP9Ra+ZgUedDWOfsPzfjKyvifrqcuib
         TyZ9ncILbYqj5S4lZCMTla4KYhXGwaQvVXotOwx7LCqhbY39byU+0WPMMDMmffgc+8Cf
         Uptg==
X-Gm-Message-State: AOJu0YzdtlogRL0TeP1ER7j+aiDnOTaoWx3O0wOdpRU+URRRj9JwC+W1
	r0RnYZvC+XD8D/lxWm+WZnQ=
X-Google-Smtp-Source: AGHT+IGLdFkCr04zokQorvoqlEejP4kWXqo5hK8lgihYOMmGeEBHFMEAE6OQhDXnhcyIoipg+gCexQ==
X-Received: by 2002:a7b:c8ce:0:b0:406:5a14:5c1e with SMTP id f14-20020a7bc8ce000000b004065a145c1emr14719463wml.1.1698150772070;
        Tue, 24 Oct 2023 05:32:52 -0700 (PDT)
From: Paul Durrant <xadimgnik@gmail.com>
X-Google-Original-From: Paul Durrant <paul@xen.org>
Message-ID: <2126ac82-3ec5-4535-b676-d4a745d6314e@xen.org>
Date: Tue, 24 Oct 2023 13:32:50 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Reply-To: paul@xen.org
Subject: Re: [PATCH 04/12] i386/xen: advertise XEN_HVM_CPUID_UPCALL_VECTOR in
 CPUID
Content-Language: en-US
To: David Woodhouse <dwmw2@infradead.org>, qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>, Hanna Reitz <hreitz@redhat.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Anthony Perard <anthony.perard@citrix.com>,
 =?UTF-8?Q?Marc-Andr=C3=A9_Lureau?= <marcandre.lureau@redhat.com>,
 Paolo Bonzini <pbonzini@redhat.com>, "Michael S. Tsirkin" <mst@redhat.com>,
 Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
 Richard Henderson <richard.henderson@linaro.org>,
 Eduardo Habkost <eduardo@habkost.net>, Marcelo Tosatti
 <mtosatti@redhat.com>, qemu-block@nongnu.org,
 xen-devel@lists.xenproject.org, kvm@vger.kernel.org
References: <20231016151909.22133-1-dwmw2@infradead.org>
 <20231016151909.22133-5-dwmw2@infradead.org>
Organization: Xen Project
In-Reply-To: <20231016151909.22133-5-dwmw2@infradead.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 16/10/2023 16:19, David Woodhouse wrote:
> From: David Woodhouse <dwmw@amazon.co.uk>
> 
> This will allow Linux guests (since v6.0) to use the per-vCPU upcall
> vector delivered as MSI through the local APIC.
> 
> Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
> ---
>   target/i386/kvm/kvm.c | 4 ++++
>   1 file changed, 4 insertions(+)
> 

Reviewed-by: Paul Durrant <paul@xen.org>



From xen-devel-bounces@lists.xenproject.org Tue Oct 24 12:35:48 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 12:35:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621907.968798 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvGdL-00061f-Ly; Tue, 24 Oct 2023 12:35:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621907.968798; Tue, 24 Oct 2023 12:35: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 1qvGdL-00061Y-HI; Tue, 24 Oct 2023 12:35:43 +0000
Received: by outflank-mailman (input) for mailman id 621907;
 Tue, 24 Oct 2023 12:35: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=+b+W=GG=gmail.com=xadimgnik@srs-se1.protection.inumbo.net>)
 id 1qvGdJ-00060A-PT
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 12:35:41 +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 d6db0273-7269-11ee-9b0e-b553b5be7939;
 Tue, 24 Oct 2023 14:35:39 +0200 (CEST)
Received: by mail-wm1-x336.google.com with SMTP id
 5b1f17b1804b1-408382da7f0so36561275e9.0
 for <xen-devel@lists.xenproject.org>; Tue, 24 Oct 2023 05:35:39 -0700 (PDT)
Received: from [192.168.6.66] (54-240-197-230.amazon.com. [54.240.197.230])
 by smtp.gmail.com with ESMTPSA id
 p15-20020a05600c1d8f00b00402d34ea099sm16729462wms.29.2023.10.24.05.35.37
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 24 Oct 2023 05:35: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: d6db0273-7269-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698150939; x=1698755739; 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=Jt2cxa6ddwVCH4+7Ko2rashlvH36j0rjOEJrfGyoF5I=;
        b=F2aBjGnK99INZi0E7V4kGwgCcKHjgaocRCrU58h62NCM8lPQf3kFoiHGfF4Vms3dRS
         lKLR/TGK8+C3p6heFC6ALEu8Dy0rnwybmclGE4U7bklQ1INxVevKNOmPMnR4o3xbIvbC
         DhxI6YEpYgMXTNKPnzokJUlqW/baBF64QgNOi8OqCUcpbyaR8GDBSoYwtiVE2soCCN8a
         Ot6cmFq7+yW4oDaDfPTuXcFERihAykMjCMY4a2IwnMeVdvI1p5PiSaANcr95a6dST7ti
         KbC1ll+jw6pwyZT79iIdbdCJizyy69UTvxWiWNoCQLjnZWLzOnTa7l5Hitu0R9Z4ZbSJ
         6cFg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698150939; x=1698755739;
        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=Jt2cxa6ddwVCH4+7Ko2rashlvH36j0rjOEJrfGyoF5I=;
        b=GyohpFwkQpmnys8bwia+Q2WWwp5ARLZfpATA9KmbSd2DT4jb1/LersHm4UaQ5VDKv5
         I3PVhw5yTx6MMnCSdhNrXujIrBPhTD8VGnOPkVeUYEa1ELY1fM/cT2tP5FaBQTAxHObH
         qZXqE5GClEDAOeIfl+I07QMXU9zCeXUvDIIpKp7M25UrOnJ3ZQHNjAVFkCotLadU9QvW
         kiuHyEcLJ2XMWcBor6fGaAWRioao89xJJ5mpSaNAmyee/2+3j0nYJ05ynkf06qNfZXcU
         wDiE/adnCY12Kv40sMqK9K68sKjE50COaBazpImIq0tFLK5T8nsx1QN9R/fDh84eIYAM
         fcvg==
X-Gm-Message-State: AOJu0YzwEqpO8jOCX1WRs5bylAGT+NtCRHZ98EdWvL/cpMDvNFBEHcCQ
	pNj6ZvbTvNrYewWkCfJTE0sqTO76A46lBQ==
X-Google-Smtp-Source: AGHT+IHcviZwp5sEUV8HujATdN4eCJmLKJnxtVpxw/CtGmvUMvR85yAd1lcelMOmu9e8/DWbEGFBkQ==
X-Received: by 2002:a05:600c:154e:b0:405:4a78:a890 with SMTP id f14-20020a05600c154e00b004054a78a890mr9583548wmg.8.1698150939091;
        Tue, 24 Oct 2023 05:35:39 -0700 (PDT)
From: Paul Durrant <xadimgnik@gmail.com>
X-Google-Original-From: Paul Durrant <paul@xen.org>
Message-ID: <84ac7780-e17a-4957-b49b-46a8307eb9da@xen.org>
Date: Tue, 24 Oct 2023 13:35:37 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Reply-To: paul@xen.org
Subject: Re: [PATCH 05/12] hw/xen: populate store frontend nodes with XenStore
 PFN/port
Content-Language: en-US
To: David Woodhouse <dwmw2@infradead.org>, qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>, Hanna Reitz <hreitz@redhat.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Anthony Perard <anthony.perard@citrix.com>,
 =?UTF-8?Q?Marc-Andr=C3=A9_Lureau?= <marcandre.lureau@redhat.com>,
 Paolo Bonzini <pbonzini@redhat.com>, "Michael S. Tsirkin" <mst@redhat.com>,
 Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
 Richard Henderson <richard.henderson@linaro.org>,
 Eduardo Habkost <eduardo@habkost.net>, Marcelo Tosatti
 <mtosatti@redhat.com>, qemu-block@nongnu.org,
 xen-devel@lists.xenproject.org, kvm@vger.kernel.org
References: <20231016151909.22133-1-dwmw2@infradead.org>
 <20231016151909.22133-6-dwmw2@infradead.org>
Organization: Xen Project
In-Reply-To: <20231016151909.22133-6-dwmw2@infradead.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 16/10/2023 16:19, David Woodhouse wrote:
> From: David Woodhouse <dwmw@amazon.co.uk>
> 
> This is kind of redundant since without being able to get these through
> ome other method (HVMOP_get_param) the guest wouldn't be able to access

^ typo

> XenStore in order to find them. But Xen populates them, and it does
> allow guests to *rebind* to the event channel port after a reset.
> 

... although this can also be done by querying the remote end of the 
port before reset.

> Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
> ---
>   hw/i386/kvm/xen_xenstore.c | 10 ++++++++++
>   1 file changed, 10 insertions(+)
> 

Reviewed-by: Paul Durrant <paul@xen.org>



From xen-devel-bounces@lists.xenproject.org Tue Oct 24 12:38:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 12:38:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621909.968808 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvGgM-0007KG-2H; Tue, 24 Oct 2023 12:38:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621909.968808; Tue, 24 Oct 2023 12:38: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 1qvGgL-0007K9-V9; Tue, 24 Oct 2023 12:38:49 +0000
Received: by outflank-mailman (input) for mailman id 621909;
 Tue, 24 Oct 2023 12:38: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=lhve=GG=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qvGgK-0007K3-PG
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 12:38:48 +0000
Received: from mail-lf1-x131.google.com (mail-lf1-x131.google.com
 [2a00:1450:4864:20::131])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 46c6e717-726a-11ee-98d5-6d05b1d4d9a1;
 Tue, 24 Oct 2023 14:38:47 +0200 (CEST)
Received: by mail-lf1-x131.google.com with SMTP id
 2adb3069b0e04-507a29c7eefso6603068e87.1
 for <xen-devel@lists.xenproject.org>; Tue, 24 Oct 2023 05:38:47 -0700 (PDT)
Received: from [192.168.201.133] ([94.75.70.14])
 by smtp.gmail.com with ESMTPSA id
 i20-20020a056512341400b00507b0b9145fsm2114206lfr.177.2023.10.24.05.38.46
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Tue, 24 Oct 2023 05:38: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: 46c6e717-726a-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698151127; x=1698755927; 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=LmMiDW7+6SN7TaMQM2K79q68rbUeHhcerC6jTnyQZcg=;
        b=mLY+z5wwc3EEjuOmjiWLgkzkcjc8KFcGrL2T/twtr4SavINPEjhbDcfo6MMdJOhb+Z
         cykPrcfQMrFNpRkNcriDZaagu9QktCq8nOEMFPHja7FflAFiICWMyOYllOpWpajc5XdD
         QvnqmDfwj31z4kzOag5AW3w34DnUeNTQmCbZO2MIRZhpr2kvEQdV1VMem0UDKcwbBiIc
         GyW+AsEhwBOi7pRrfJwMRKXJsOy+062AP0Nmqq7ObM8D1v0DLzmkk37pgB4SonQSGivX
         NACwQ92e3VyS+2BEoW7+kWmrAvU2ssOI4VBZC4y3ySoxn2JXxsktUu01cmgo48voJJj7
         kHmw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698151127; x=1698755927;
        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=LmMiDW7+6SN7TaMQM2K79q68rbUeHhcerC6jTnyQZcg=;
        b=MtGZs8rybRpFglWr96bvDJwODbwUNTwS8cO2+L8lTEjrjw0aT9UFYtpGFWZM+gRdlz
         +BaXN+5tunqHJ8cPeS2noAWrRbJsHn6IbQsAgBuMWSjjdKW1unnfeamh11UOpuJ9e02a
         gvi+tpfmQsB5S0UMENznJG7voeHlytOHoXvoK57W/62o87E0lrIeg/ZLQajxidr6d0ID
         FatVTwza/ObZc9+IV2RsvOPkBnuzbT3RrlLuohEYR2VzxPuFSAKh/g622m4MPIY/jpga
         7n1xxJ34IF1TO/MrGW6Gab/xY3v4F8urZ78npgEgcjENCeyd1yqPJpZySBtlSrH5bPdb
         JPyA==
X-Gm-Message-State: AOJu0YwCXwlsKlfRTUREntjEjSqaoGoS8cblQeQ6c7U9vfOXgp5wxJVq
	LIPt2HC/P+rDNo+klt7+JlY=
X-Google-Smtp-Source: AGHT+IGkyIa5m/EZXrE0erN3KoYm0FuSM9HHFEs7cYn8u09WEK9ZWNqMCnAQ2jfuxr8jI2mkJn1RqA==
X-Received: by 2002:a05:6512:2150:b0:507:a70e:c619 with SMTP id s16-20020a056512215000b00507a70ec619mr4424634lfr.67.1698151127119;
        Tue, 24 Oct 2023 05:38:47 -0700 (PDT)
Message-ID: <0345610b7daf219f286ecdd308a6556ee36eed7b.camel@gmail.com>
Subject: Re: [PATCH v1 12/29] xen/asm-generic: introduce stub header pci.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: Tue, 24 Oct 2023 15:38:46 +0300
In-Reply-To: <b2ed1c50-6e55-7d89-aaa4-e0f23d5b4da8@suse.com>
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
	 <597a482c70fef196e245a5d898ea6314a0c479ca.1694702259.git.oleksii.kurochko@gmail.com>
	 <d4dca6d7-ac54-beac-26fc-5eaf80783a73@suse.com>
	 <0da7452e0c62dcdc5a0e1185b9f99cdb3d7393c9.camel@gmail.com>
	 <b2ed1c50-6e55-7d89-aaa4-e0f23d5b4da8@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-10-23 at 13:58 +0200, Jan Beulich wrote:
> On 23.10.2023 12:50, Oleksii wrote:
> > On Thu, 2023-10-19 at 11:55 +0200, Jan Beulich wrote:
> > > While more involved, I still wonder whether xen/pci.h could also
> > > avoid
> > > including asm/pci.h when !HAS_PCI. Of course there's more than
> > > just
> > > the
> > > #include which then would need #ifdef-ing out.
> > It looks like we can get with #ifdef-ing. I'll push a separate
> > patch
> > for xen/pci.h.
> >=20
> > It will probably need to remove usage of <asm/pci.h> everywhere or
> > #ifdef-ing it too.
> > Which option will be better?
>=20
> What's "everywhere" here? The only non-arch-dependent use I can spot
> is in xen/pci.h.
It looks you are right.

I wrote everywhere because of "xen/drivers/passthrough/vtd/quirks.c"
but it is arch-dependent. So  , yes, only xen/pci.h should be updated.

~ Oleksii


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 12:42:29 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 12:42:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621912.968817 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvGjm-0000Hv-Ga; Tue, 24 Oct 2023 12:42:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621912.968817; Tue, 24 Oct 2023 12:42: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 1qvGjm-0000Ho-E2; Tue, 24 Oct 2023 12:42:22 +0000
Received: by outflank-mailman (input) for mailman id 621912;
 Tue, 24 Oct 2023 12:42: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=+b+W=GG=gmail.com=xadimgnik@srs-se1.protection.inumbo.net>)
 id 1qvGjk-0000Hi-T8
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 12:42:20 +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 c506ba92-726a-11ee-98d5-6d05b1d4d9a1;
 Tue, 24 Oct 2023 14:42:19 +0200 (CEST)
Received: by mail-lj1-x22a.google.com with SMTP id
 38308e7fff4ca-2c50906f941so67157371fa.2
 for <xen-devel@lists.xenproject.org>; Tue, 24 Oct 2023 05:42:19 -0700 (PDT)
Received: from [192.168.6.66] (54-240-197-230.amazon.com. [54.240.197.230])
 by smtp.gmail.com with ESMTPSA id
 r9-20020a05600c320900b0040644e699a0sm16610990wmp.45.2023.10.24.05.42.17
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 24 Oct 2023 05:42: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: c506ba92-726a-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698151339; x=1698756139; 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=nleuh30f60jeiNJDPgerM6LHIyJSmfHjZNXbgUudLV0=;
        b=J+KhTXtYUAONI9Z0DJyu2BI0aZUj74/sIDXsfFj5JwZjOdLrWQR+zYFDXlbQFlbFRY
         U5XGQaUcuxEP28d17kRst9kLIfg27LCJMgxM6zMaAEfKjiW1k/snl4zP7bRpQvepOt9y
         1teDJbHVc/GV/gljzNSCMx42+/gJe35FvpF6kCAEFW502z8qjcxe1rdA5jzpNl8BHIHW
         X4wTBaW6oUH8la920D98sK5N0Oi5oeDsdtqO4d9taM/Kz3TWvAMZcMldp7+n42zWcKhH
         gB4dOyRVUDzhfZZf53764GWa+S7P26R3xM61+e2mX5UZT6e16KI5prXRhHhHPqEzZHfm
         htnA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698151339; x=1698756139;
        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=nleuh30f60jeiNJDPgerM6LHIyJSmfHjZNXbgUudLV0=;
        b=VTAH7lGbxDJGEtyd/1a5zUk9EgoQSE8xnfWjmRyVDB66wSMZnoo4FVSBcjaIsmQWsC
         HjAqMhKF86HYUMNB9C+ZmYQ2ubE9LjeE4IUQK6NxcK8BF3SIXY5J+JDc2O4R5Q4jnL8H
         jOJe1RLCCK46b3H15KIsHAdGyqxp4c21GgiQhVJ6eDmUkIh4kKDtL9Mhbk8868+NSG6l
         J5rrzF0yZsRCm+kqOpjyEncrRG1JCvDpcZ+dbnEDPKPJEzq5tmhxu8/5xYUpQe9xZloH
         zq6l2qPl4c22n8jhqZAKqcp8l4VrUG5GaxMP4Dctj1WiX1NgIWsvPTsv0177W5ChI85l
         QHRw==
X-Gm-Message-State: AOJu0Yxe8hDEJZ3/VFCNjHaJ1GtGlUXFFaeejGCSsNiRnbrYmw2KwomD
	GcEmlqB2xcuOKedy549F/z4=
X-Google-Smtp-Source: AGHT+IG7xfJEIBpaao1AVHuot+7nF+K9gT+jAPeV2BLTz6q/or9dTrt+5Pf96dJ2k8c2f9XmlagJlQ==
X-Received: by 2002:a2e:aa28:0:b0:2be:54b4:ff90 with SMTP id bf40-20020a2eaa28000000b002be54b4ff90mr7826766ljb.53.1698151339104;
        Tue, 24 Oct 2023 05:42:19 -0700 (PDT)
From: Paul Durrant <xadimgnik@gmail.com>
X-Google-Original-From: Paul Durrant <paul@xen.org>
Message-ID: <5ef43a7c-e535-496d-8a14-bccbadab3bc0@xen.org>
Date: Tue, 24 Oct 2023 13:42:17 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Reply-To: paul@xen.org
Subject: Re: [PATCH 06/12] hw/xen: add get_frontend_path() method to
 XenDeviceClass
Content-Language: en-US
To: David Woodhouse <dwmw2@infradead.org>, qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>, Hanna Reitz <hreitz@redhat.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Anthony Perard <anthony.perard@citrix.com>,
 =?UTF-8?Q?Marc-Andr=C3=A9_Lureau?= <marcandre.lureau@redhat.com>,
 Paolo Bonzini <pbonzini@redhat.com>, "Michael S. Tsirkin" <mst@redhat.com>,
 Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
 Richard Henderson <richard.henderson@linaro.org>,
 Eduardo Habkost <eduardo@habkost.net>, Marcelo Tosatti
 <mtosatti@redhat.com>, qemu-block@nongnu.org,
 xen-devel@lists.xenproject.org, kvm@vger.kernel.org
References: <20231016151909.22133-1-dwmw2@infradead.org>
 <20231016151909.22133-7-dwmw2@infradead.org>
Organization: Xen Project
In-Reply-To: <20231016151909.22133-7-dwmw2@infradead.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

On 16/10/2023 16:19, David Woodhouse wrote:
> From: David Woodhouse <dwmw@amazon.co.uk>
> 
> The primary Xen console is special. The guest's side is set up for it by
> the toolstack automatically and not by the standard PV init sequence.
> 
> Accordingly, its *frontend* doesn't appear in …/device/console/0 either;
> instead it appears under …/console in the guest's XenStore node.
> 
> To allow the Xen console driver to override the frontend path for the
> primary console, add a method to the XenDeviceClass which can be used
> instead of the standard xen_device_get_frontend_path()
> 
> Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
> ---
>   hw/xen/xen-bus.c         | 10 +++++++++-
>   include/hw/xen/xen-bus.h |  2 ++
>   2 files changed, 11 insertions(+), 1 deletion(-)
> 
> diff --git a/hw/xen/xen-bus.c b/hw/xen/xen-bus.c
> index ece8ec40cd..cc524ed92c 100644
> --- a/hw/xen/xen-bus.c
> +++ b/hw/xen/xen-bus.c
> @@ -711,8 +711,16 @@ static void xen_device_frontend_create(XenDevice *xendev, Error **errp)
>   {
>       ERRP_GUARD();
>       XenBus *xenbus = XEN_BUS(qdev_get_parent_bus(DEVICE(xendev)));
> +    XenDeviceClass *xendev_class = XEN_DEVICE_GET_CLASS(xendev);
>   
> -    xendev->frontend_path = xen_device_get_frontend_path(xendev);
> +    if (xendev_class->get_frontend_path) {
> +        xendev->frontend_path = xendev_class->get_frontend_path(xendev, errp);
> +        if (!xendev->frontend_path) {
> +            return;

I think you need to update errp here to note that you are failing to 
create the frontend.

   Paul




From xen-devel-bounces@lists.xenproject.org Tue Oct 24 12:46:38 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 12:46:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621916.968827 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvGns-0002TL-1g; Tue, 24 Oct 2023 12:46:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621916.968827; Tue, 24 Oct 2023 12: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 1qvGnr-0002TE-VI; Tue, 24 Oct 2023 12:46:35 +0000
Received: by outflank-mailman (input) for mailman id 621916;
 Tue, 24 Oct 2023 12: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=lhve=GG=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qvGnq-0002T8-Rf
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 12:46:34 +0000
Received: from mail-lf1-x12b.google.com (mail-lf1-x12b.google.com
 [2a00:1450:4864:20::12b])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 5c902687-726b-11ee-98d5-6d05b1d4d9a1;
 Tue, 24 Oct 2023 14:46:33 +0200 (CEST)
Received: by mail-lf1-x12b.google.com with SMTP id
 2adb3069b0e04-507975d34e8so6547429e87.1
 for <xen-devel@lists.xenproject.org>; Tue, 24 Oct 2023 05:46:34 -0700 (PDT)
Received: from [192.168.201.133] ([94.75.70.14])
 by smtp.gmail.com with ESMTPSA id
 h9-20020a19ca49000000b00507987ff761sm2150621lfj.56.2023.10.24.05.46.32
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Tue, 24 Oct 2023 05:46: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: 5c902687-726b-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698151593; x=1698756393; 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=WNAw0v8mCj9zjTBy9wUVcNuBSK596G4Btplqlv/1d9o=;
        b=BjvAGi+xLKCuumT42WRUSBJE/qAM6cue7qbwDeq9A0MgTvb5QMhGkbCrZrGCTVr+WR
         HBiFkidsWszp/vAGYiNt6Dr8KSqJ21zZ8unm2s11Pzpev1iONhyzfKzdc8pqMBfJFEsG
         rgBV5pOFq3z0QGFAmgzH8MYCvqq0G2R6nw1enbMoqm5CmCPawVxcDehm1aKw1W1itVBU
         gY3tlLe+Bad+JzpXKpe2pPVgT2THBqvw0kk2p1QaB6X9cMf7sEtq9R8Tn8jjYBGsAxsg
         qz8OKWd3jHxnY4yzWnoTq1fAlO7/xGupUFFYiaodAFr1zx2f2jLa44nvBt3gv99Pzgsv
         xkwA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698151593; x=1698756393;
        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=WNAw0v8mCj9zjTBy9wUVcNuBSK596G4Btplqlv/1d9o=;
        b=szVEilnEKgzO2jguRlY4o/A48Dx483b6m9zxpJCnDgSMM84udm4HtE0DWmCVyVdvxo
         /UMtJfv7NdswT7BlpsHTyRz81YBE5QjsHVJcV0JPPCZJpDeHziERFTyDixYZTBC5N66J
         2R2h8Dm5tvaBuuna1l7ygtt9w4mEmLyMvBW73KAIpIIjG1k3vhLyQOgt+c3q19HodYdH
         ORZeVU5VwGbkvjJvyMVjkSybXXIgDcA9P4ZNpmmFjCEJ8nb84xkhXyfayQ5IuFF0sD8w
         QmeCQJ64hy09j1y66fR2HdE3WLpvQchpr3qN2P6vSmwlcshfsMSgC44FOvkx3xyMB/c/
         BVIQ==
X-Gm-Message-State: AOJu0Yy1u23DmENJAXA8Gz98W5OHv9SMe/2JzsFPi0pN8ip5j1VsSGFz
	L9t2SfzktsctokQzAjaVfoQ=
X-Google-Smtp-Source: AGHT+IFQH+Y8BdmW10j7kk0nDtFw57Uuh6t4ePr0tgtZMjDzIKPazXeKMaKlGGBdA136Vy2CobKB0g==
X-Received: by 2002:ac2:4adb:0:b0:4f9:54f0:b6db with SMTP id m27-20020ac24adb000000b004f954f0b6dbmr8001486lfp.13.1698151593375;
        Tue, 24 Oct 2023 05:46:33 -0700 (PDT)
Message-ID: <141935204e035701468cfaae9ff4310230f26983.camel@gmail.com>
Subject: Re: [PATCH v1 10/29] xen/asm-generic: introduce stub header iommu.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: Tue, 24 Oct 2023 15:46:31 +0300
In-Reply-To: <176d38b2-eafc-7a78-ee17-0d5e0369cb2a@suse.com>
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
	 <8990c5c77c12333bfa7aba42b66bf7fffee5a096.1694702259.git.oleksii.kurochko@gmail.com>
	 <65cdbeaa-6766-e5b7-65fb-191da6f59d81@suse.com>
	 <e1e26fd0a31c7ab14e474d6d7fb16163e8163f2b.camel@gmail.com>
	 <176d38b2-eafc-7a78-ee17-0d5e0369cb2a@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-10-23 at 12:47 +0200, Jan Beulich wrote:
> On 23.10.2023 12:43, Oleksii wrote:
> > On Thu, 2023-10-19 at 11:44 +0200, Jan Beulich wrote:
> > > On 14.09.2023 16:56, Oleksii Kurochko wrote:
> > > > --- /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__ */
> > > This one's perhaps slightly more "interesting": Yes, we have a
> > > HAS_PASSTHROUGH Kconfig option, which both Arm and x86 select.
> > > But it
> > > is in principle possible to support guests without any kind of
> > > IOMMU
> > > (permitting solely emulated and PV devices). In which case what's
> > > (imo) needed here in addition is
> > >=20
> > > #ifdef CONFIG_HAS_PASSTHROUGH
> > > # error
> > > #endif
> > I am not 100% sure but not all platform has support of IOMMU.
> >=20
> > And I thought that passthrough it is when a device is fully
> > committed
> > to=C2=A0 a guest domain with all MMIO things. So it is a question of
> > properly mapping MMIO to guest domain. Am I right?
>=20
> Yes. And do you expect you will get away with such a stub
> implementation
> when you actually start supporting pass-through on RISC-V?
No, it will be=C2=A0changed. It was added to asm-generic because of the
build purpose for the full Xen build ( the same header with the same
content is used for PPC ).

But yeah, taking into account about device.h header in this patch
series looks like this patch will be=C2=A0arch-specific.

~ Oleksii


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 12:53:51 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 12:53:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621919.968837 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvGum-00042q-Pu; Tue, 24 Oct 2023 12:53:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621919.968837; Tue, 24 Oct 2023 12: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 1qvGum-00042j-NL; Tue, 24 Oct 2023 12:53:44 +0000
Received: by outflank-mailman (input) for mailman id 621919;
 Tue, 24 Oct 2023 12:53: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=jXWl=GG=casper.srs.infradead.org=BATV+e2898748ca55db067849+7366+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qvGuj-00042b-LL
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 12:53:42 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 59b7f25a-726c-11ee-9b0e-b553b5be7939;
 Tue, 24 Oct 2023 14:53:38 +0200 (CEST)
Received: from [2001:8b0:10b:5:758e:a1c4:bc7:e7a7]
 (helo=u3832b3a9db3152.ant.amazon.com)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qvGuc-002Zca-5U; Tue, 24 Oct 2023 12:53: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: 59b7f25a-726c-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=MIME-Version:Content-Type:References:
	In-Reply-To:Date:Cc:To:From:Subject:Message-ID:Sender:Reply-To:
	Content-Transfer-Encoding:Content-ID:Content-Description;
	bh=tZORqiZM5Mg8CsBOodaxjXWIJsfRLfCeFzvnqFeufUE=; b=isgEbbZxTGK3/gacOH80tg/kp3
	1PRnFvrB5+RfQQioiahTo2Qi7mKCyMKa6jNvVcrEYMed3RvXYz32DWNmKyuxMpbQAUCdniVpOlwzV
	pqNzCgyK/yUR1Do0ppxvjKT8vrdMYfgSS6tRgd8qpl7zPPV1OGwqon3lXM7nai7Ca6/pN1ueYDjaV
	Z2ZULgKIH672xfIgyyqzIpUwvundzPX6ti6Y08nzmxj3yKa5RrNBc6YmtYBkYsfXbDLmf41kdNlm4
	P3BiKMJ6mD/+Hro5LsJknt9HCNBmrjNzx3HkoqIC70DIKiv3GVtRYZkxFLCA6fzc/dwmDbEjbpPnr
	qlMerV/Q==;
Message-ID: <c1b29e327d989b4c58916ab61a1896a0c5f5463a.camel@infradead.org>
Subject: Re: [PATCH 05/12] hw/xen: populate store frontend nodes with
 XenStore PFN/port
From: David Woodhouse <dwmw2@infradead.org>
To: paul@xen.org, qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>, Hanna Reitz <hreitz@redhat.com>, Stefano
 Stabellini <sstabellini@kernel.org>, Anthony Perard
 <anthony.perard@citrix.com>,  =?ISO-8859-1?Q?Marc-Andr=E9?= Lureau
 <marcandre.lureau@redhat.com>, Paolo Bonzini <pbonzini@redhat.com>,
 "Michael S. Tsirkin" <mst@redhat.com>, Marcel Apfelbaum
 <marcel.apfelbaum@gmail.com>, Richard Henderson
 <richard.henderson@linaro.org>, Eduardo Habkost <eduardo@habkost.net>, 
 Marcelo Tosatti <mtosatti@redhat.com>, qemu-block@nongnu.org,
 xen-devel@lists.xenproject.org, kvm@vger.kernel.org
Date: Tue, 24 Oct 2023 13:53:33 +0100
In-Reply-To: <84ac7780-e17a-4957-b49b-46a8307eb9da@xen.org>
References: <20231016151909.22133-1-dwmw2@infradead.org>
	 <20231016151909.22133-6-dwmw2@infradead.org>
	 <84ac7780-e17a-4957-b49b-46a8307eb9da@xen.org>
Content-Type: multipart/signed; micalg="sha-256"; protocol="application/pkcs7-signature";
	boundary="=-LuZ5CpWyylw6gO3a352G"
User-Agent: Evolution 3.44.4-0ubuntu2 
MIME-Version: 1.0
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html


--=-LuZ5CpWyylw6gO3a352G
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Tue, 2023-10-24 at 13:35 +0100, Paul Durrant wrote:
> On 16/10/2023 16:19, David Woodhouse wrote:
> > From: David Woodhouse <dwmw@amazon.co.uk>
> >=20
> > This is kind of redundant since without being able to get these
> > through
> > ome other method (HVMOP_get_param) the guest wouldn't be able to
> > access
>=20
> ^ typo
>=20
> > XenStore in order to find them. But Xen populates them, and it does
> > allow guests to *rebind* to the event channel port after a reset.
> >=20
>=20
> ... although this can also be done by querying the remote end of the=20
> port before reset.
>=20
I think you had to do that anyway; I don't think I was supposed to be
putting s->be_port in there anyway; it was supposed to be the
*frontend* port, and I've changed that in my tree.

I'll drop this whole sentence (and fix the typo).

> > Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
> > ---
> > =C2=A0 hw/i386/kvm/xen_xenstore.c | 10 ++++++++++
> > =C2=A0 1 file changed, 10 insertions(+)
> >=20
>=20
> Reviewed-by: Paul Durrant <paul@xen.org>
>=20


--=-LuZ5CpWyylw6gO3a352G
Content-Type: application/pkcs7-signature; name="smime.p7s"
Content-Disposition: attachment; filename="smime.p7s"
Content-Transfer-Encoding: base64

MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgEFADCABgkqhkiG9w0BBwEAAKCCEkQw
ggYQMIID+KADAgECAhBNlCwQ1DvglAnFgS06KwZPMA0GCSqGSIb3DQEBDAUAMIGIMQswCQYDVQQG
EwJVUzETMBEGA1UECBMKTmV3IEplcnNleTEUMBIGA1UEBxMLSmVyc2V5IENpdHkxHjAcBgNVBAoT
FVRoZSBVU0VSVFJVU1QgTmV0d29yazEuMCwGA1UEAxMlVVNFUlRydXN0IFJTQSBDZXJ0aWZpY2F0
aW9uIEF1dGhvcml0eTAeFw0xODExMDIwMDAwMDBaFw0zMDEyMzEyMzU5NTlaMIGWMQswCQYDVQQG
EwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYD
VQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50
aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC
AQEAyjztlApB/975Rrno1jvm2pK/KxBOqhq8gr2+JhwpKirSzZxQgT9tlC7zl6hn1fXjSo5MqXUf
ItMltrMaXqcESJuK8dtK56NCSrq4iDKaKq9NxOXFmqXX2zN8HHGjQ2b2Xv0v1L5Nk1MQPKA19xeW
QcpGEGFUUd0kN+oHox+L9aV1rjfNiCj3bJk6kJaOPabPi2503nn/ITX5e8WfPnGw4VuZ79Khj1YB
rf24k5Ee1sLTHsLtpiK9OjG4iQRBdq6Z/TlVx/hGAez5h36bBJMxqdHLpdwIUkTqT8se3ed0PewD
ch/8kHPo5fZl5u1B0ecpq/sDN/5sCG52Ds+QU5O5EwIDAQABo4IBZDCCAWAwHwYDVR0jBBgwFoAU
U3m/WqorSs9UgOHYm8Cd8rIDZsswHQYDVR0OBBYEFAnA8vwL2pTbX/4r36iZQs/J4K0AMA4GA1Ud
DwEB/wQEAwIBhjASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEF
BQcDBDARBgNVHSAECjAIMAYGBFUdIAAwUAYDVR0fBEkwRzBFoEOgQYY/aHR0cDovL2NybC51c2Vy
dHJ1c3QuY29tL1VTRVJUcnVzdFJTQUNlcnRpZmljYXRpb25BdXRob3JpdHkuY3JsMHYGCCsGAQUF
BwEBBGowaDA/BggrBgEFBQcwAoYzaHR0cDovL2NydC51c2VydHJ1c3QuY29tL1VTRVJUcnVzdFJT
QUFkZFRydXN0Q0EuY3J0MCUGCCsGAQUFBzABhhlodHRwOi8vb2NzcC51c2VydHJ1c3QuY29tMA0G
CSqGSIb3DQEBDAUAA4ICAQBBRHUAqznCFfXejpVtMnFojADdF9d6HBA4kMjjsb0XMZHztuOCtKF+
xswhh2GqkW5JQrM8zVlU+A2VP72Ky2nlRA1GwmIPgou74TZ/XTarHG8zdMSgaDrkVYzz1g3nIVO9
IHk96VwsacIvBF8JfqIs+8aWH2PfSUrNxP6Ys7U0sZYx4rXD6+cqFq/ZW5BUfClN/rhk2ddQXyn7
kkmka2RQb9d90nmNHdgKrwfQ49mQ2hWQNDkJJIXwKjYA6VUR/fZUFeCUisdDe/0ABLTI+jheXUV1
eoYV7lNwNBKpeHdNuO6Aacb533JlfeUHxvBz9OfYWUiXu09sMAviM11Q0DuMZ5760CdO2VnpsXP4
KxaYIhvqPqUMWqRdWyn7crItNkZeroXaecG03i3mM7dkiPaCkgocBg0EBYsbZDZ8bsG3a08LwEsL
1Ygz3SBsyECa0waq4hOf/Z85F2w2ZpXfP+w8q4ifwO90SGZZV+HR/Jh6rEaVPDRF/CEGVqR1hiuQ
OZ1YL5ezMTX0ZSLwrymUE0pwi/KDaiYB15uswgeIAcA6JzPFf9pLkAFFWs1QNyN++niFhsM47qod
x/PL+5jR87myx5uYdBEQkkDc+lKB1Wct6ucXqm2EmsaQ0M95QjTmy+rDWjkDYdw3Ms6mSWE3Bn7i
5ZgtwCLXgAIe5W8mybM2JzCCBhQwggT8oAMCAQICEQDGvhmWZ0DEAx0oURL6O6l+MA0GCSqGSIb3
DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYD
VQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28g
UlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMB4XDTIyMDEwNzAw
MDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJARYTZHdtdzJAaW5mcmFkZWFkLm9y
ZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3GpC2bomUqk+91wLYBzDMcCj5C9m6
oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZHh7htyAkWYVoFsFPrwHounto8xTsy
SSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT9YgcBqKCo65pTFmOnR/VVbjJk4K2
xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNjP+qDrh0db7PAjO1D4d5ftfrsf+kd
RR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy2U+eITZ5LLE5s45mX2oPFknWqxBo
bQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3BgBEmfsYWlBXO8rVXfvPgLs32VdV
NZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/7auNVRmPB3v5SWEsH8xi4Bez2V9U
KxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmdlFYhAflWKQ03Ufiu8t3iBE3VJbc2
5oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9aelIl6vtbhMA+l0nfrsORMa4kobqQ5
C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMBAAGjggHMMIIByDAfBgNVHSMEGDAW
gBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeDMcimo0oz8o1R1Nver3ZVpSkwDgYD
VR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYwFAYIKwYBBQUHAwQGCCsGAQUFBwMC
MEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYBBQUHAgEWF2h0dHBzOi8vc2VjdGln
by5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9jcmwuc2VjdGlnby5jb20vU2VjdGln
b1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1haWxDQS5jcmwwgYoGCCsGAQUFBwEB
BH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdvLmNvbS9TZWN0aWdvUlNBQ2xpZW50
QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAjBggrBgEFBQcwAYYXaHR0cDovL29j
c3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5mcmFkZWFkLm9yZzANBgkqhkiG9w0B
AQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQvQ/fzPXmtR9t54rpmI2TfyvcKgOXp
qa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvIlSPrzIB4Z2wyIGQpaPLlYflrrVFK
v9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9ChWFfgSXvrWDZspnU3Gjw/rMHrGnql
Htlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0whpBtXdyDjzBtQTaZJ7zTT/vlehc/
tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9IzCCBhQwggT8oAMCAQICEQDGvhmW
Z0DEAx0oURL6O6l+MA0GCSqGSIb3DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3Jl
YXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0
ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJl
IEVtYWlsIENBMB4XDTIyMDEwNzAwMDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJ
ARYTZHdtdzJAaW5mcmFkZWFkLm9yZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3
GpC2bomUqk+91wLYBzDMcCj5C9m6oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZH
h7htyAkWYVoFsFPrwHounto8xTsySSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT
9YgcBqKCo65pTFmOnR/VVbjJk4K2xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNj
P+qDrh0db7PAjO1D4d5ftfrsf+kdRR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy
2U+eITZ5LLE5s45mX2oPFknWqxBobQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3
BgBEmfsYWlBXO8rVXfvPgLs32VdVNZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/
7auNVRmPB3v5SWEsH8xi4Bez2V9UKxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmd
lFYhAflWKQ03Ufiu8t3iBE3VJbc25oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9ae
lIl6vtbhMA+l0nfrsORMa4kobqQ5C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMB
AAGjggHMMIIByDAfBgNVHSMEGDAWgBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeD
Mcimo0oz8o1R1Nver3ZVpSkwDgYDVR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYw
FAYIKwYBBQUHAwQGCCsGAQUFBwMCMEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYB
BQUHAgEWF2h0dHBzOi8vc2VjdGlnby5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9j
cmwuc2VjdGlnby5jb20vU2VjdGlnb1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1h
aWxDQS5jcmwwgYoGCCsGAQUFBwEBBH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdv
LmNvbS9TZWN0aWdvUlNBQ2xpZW50QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAj
BggrBgEFBQcwAYYXaHR0cDovL29jc3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5m
cmFkZWFkLm9yZzANBgkqhkiG9w0BAQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQv
Q/fzPXmtR9t54rpmI2TfyvcKgOXpqa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvI
lSPrzIB4Z2wyIGQpaPLlYflrrVFKv9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9Ch
WFfgSXvrWDZspnU3Gjw/rMHrGnqlHtlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0w
hpBtXdyDjzBtQTaZJ7zTT/vlehc/tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9
IzGCBMcwggTDAgEBMIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVz
dGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMT
NVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEA
xr4ZlmdAxAMdKFES+jupfjANBglghkgBZQMEAgEFAKCCAeswGAYJKoZIhvcNAQkDMQsGCSqGSIb3
DQEHATAcBgkqhkiG9w0BCQUxDxcNMjMxMDI0MTI1MzMzWjAvBgkqhkiG9w0BCQQxIgQg/3yWeyoz
Mn/Ks4ySvXyTYHWFkBlza/kSUSMAv+vNYxYwgb0GCSsGAQQBgjcQBDGBrzCBrDCBljELMAkGA1UE
BhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEYMBYG
A1UEChMPU2VjdGlnbyBMaW1pdGVkMT4wPAYDVQQDEzVTZWN0aWdvIFJTQSBDbGllbnQgQXV0aGVu
dGljYXRpb24gYW5kIFNlY3VyZSBFbWFpbCBDQQIRAMa+GZZnQMQDHShREvo7qX4wgb8GCyqGSIb3
DQEJEAILMYGvoIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVy
MRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNl
Y3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEAxr4Z
lmdAxAMdKFES+jupfjANBgkqhkiG9w0BAQEFAASCAgCVkku0U7ldxo6CNicYvlncK+WixwRm+tpD
ZsRTo9jKCOyp/Iq30GTzqFLtsiOiqLptqQkDT6QfuiHTr9yPome/sVMHJebSeZ9j9k2wyicir/fL
wNVSstTyA6CwVusOJJ6tJxaKB6lyTyfdf/cIWZyGzrE2ackGCP3BS04leSzQY3IYYVWAnY4M95m+
GrXkou+JfV/Im5i/SXDWNErhhrIwVKz6mq+k7laIwH2bk/+5eLzMUJBi1+R9CSvNbpbgFW0/FWUQ
GGSUixsXvgXt5KEpSX9/R2biVmqPMvAJK95nAOlLFYFhBBLl5sXYh7Wi2+lKO0T+XKWkH1e9w+1I
t9tdAK43CiIWzBiwofsFzhS1Vx7Iy5XX1V8PHosuv/E8VFGGZOmYJxms2y5UA5pMtTL0JHSV3BWv
leeNKZlnJ9C3trL2CFX1qgDwHb9QpEMEWeHVb6ETvn6IjAqgVl4i3HbWfn9eDpmHQ09M8PjDHaPX
rHdmvQr0MUw4Kf2VWPHkL0TFvYO4ZAS5WgKFeZ8KcofftA/GMaF0QSVeyUvqEpQq8glnEh85VH71
Gqho8DBSoXQQNI+XPteUiCXByyoJnHD583baX54h96WiwWgFJbb2/0jh3aWTpafV5ZiG51vLv6xY
uW8xmO4V+XRsx+UFyawppw7ftXLrjSizl7febpaGvQAAAAAAAA==


--=-LuZ5CpWyylw6gO3a352G--


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 12:56:21 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 12:56:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621921.968848 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvGxI-0004sW-AG; Tue, 24 Oct 2023 12:56:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621921.968848; Tue, 24 Oct 2023 12:56: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 1qvGxI-0004sP-7S; Tue, 24 Oct 2023 12:56:20 +0000
Received: by outflank-mailman (input) for mailman id 621921;
 Tue, 24 Oct 2023 12:56: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=jXWl=GG=casper.srs.infradead.org=BATV+e2898748ca55db067849+7366+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qvGxH-0004sJ-KH
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 12:56:19 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id b7c502e4-726c-11ee-9b0e-b553b5be7939;
 Tue, 24 Oct 2023 14:56:16 +0200 (CEST)
Received: from [2001:8b0:10b:5:758e:a1c4:bc7:e7a7]
 (helo=u3832b3a9db3152.ant.amazon.com)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qvGxD-002Zhe-4L; Tue, 24 Oct 2023 12:56: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: b7c502e4-726c-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=MIME-Version:Content-Type:References:
	In-Reply-To:Date:Cc:To:From:Subject:Message-ID:Sender:Reply-To:
	Content-Transfer-Encoding:Content-ID:Content-Description;
	bh=KIHpOafW3ieHRu7BMjAbXlB7WJxL6xUsJu+2+28+I9c=; b=nVsdDyUFe55lw7AH55Mvd7ePjU
	GkjtmmYMnUyZ8z4Tbm2JpHwF6vFig+xSYKCsVk8K5APGRgW5mWP05qYZJbUpDhNtIS8zK4UN3VYfZ
	VntK7WJNtL30Tbgdroy8cfLKB9mXvCaflSBfO8S6cjMZDrY7ge2wz3S40yLz7mgk9DOBy8cLcFpNP
	5CSdtkwY3/P8pBhDYNE+oGAG8+zRsN2oPPBM0MYffn0B7CPqiXaf2+CC5Gtd4Lzk6io4+25zEMcLO
	yPew6/GinpRahdetQH/r1OH5lPldxUpY0rg/04aT7bFleFEleeCx7NBkcI5mUnt42OYc5IeemCv+c
	I+G0qHoQ==;
Message-ID: <d43b900a6c7987c6832ceeede9b4c5ab65d5bacd.camel@infradead.org>
Subject: Re: [PATCH 06/12] hw/xen: add get_frontend_path() method to
 XenDeviceClass
From: David Woodhouse <dwmw2@infradead.org>
To: paul@xen.org, qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>, Hanna Reitz <hreitz@redhat.com>, Stefano
 Stabellini <sstabellini@kernel.org>, Anthony Perard
 <anthony.perard@citrix.com>,  =?ISO-8859-1?Q?Marc-Andr=E9?= Lureau
 <marcandre.lureau@redhat.com>, Paolo Bonzini <pbonzini@redhat.com>,
 "Michael S. Tsirkin" <mst@redhat.com>, Marcel Apfelbaum
 <marcel.apfelbaum@gmail.com>, Richard Henderson
 <richard.henderson@linaro.org>, Eduardo Habkost <eduardo@habkost.net>, 
 Marcelo Tosatti <mtosatti@redhat.com>, qemu-block@nongnu.org,
 xen-devel@lists.xenproject.org, kvm@vger.kernel.org
Date: Tue, 24 Oct 2023 13:56:14 +0100
In-Reply-To: <5ef43a7c-e535-496d-8a14-bccbadab3bc0@xen.org>
References: <20231016151909.22133-1-dwmw2@infradead.org>
	 <20231016151909.22133-7-dwmw2@infradead.org>
	 <5ef43a7c-e535-496d-8a14-bccbadab3bc0@xen.org>
Content-Type: multipart/signed; micalg="sha-256"; protocol="application/pkcs7-signature";
	boundary="=-Q1DBezpZ2dJcIULBrgeD"
User-Agent: Evolution 3.44.4-0ubuntu2 
MIME-Version: 1.0
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html


--=-Q1DBezpZ2dJcIULBrgeD
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Tue, 2023-10-24 at 13:42 +0100, Paul Durrant wrote:
>=20
> > --- a/hw/xen/xen-bus.c
> > +++ b/hw/xen/xen-bus.c
> > @@ -711,8 +711,16 @@ static void xen_device_frontend_create(XenDevice *=
xendev, Error **errp)
> > =C2=A0=C2=A0 {
> > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ERRP_GUARD();
> > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 XenBus *xenbus =3D XEN_BUS(qdev_ge=
t_parent_bus(DEVICE(xendev)));
> > +=C2=A0=C2=A0=C2=A0 XenDeviceClass *xendev_class =3D XEN_DEVICE_GET_CLA=
SS(xendev);
> > =C2=A0=C2=A0=20
> > -=C2=A0=C2=A0=C2=A0 xendev->frontend_path =3D xen_device_get_frontend_p=
ath(xendev);
> > +=C2=A0=C2=A0=C2=A0 if (xendev_class->get_frontend_path) {
> > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 xendev->frontend_path =3D x=
endev_class->get_frontend_path(xendev, errp);
> > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 if (!xendev->frontend_path)=
 {
> > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ret=
urn;
>=20
> I think you need to update errp here to note that you are failing to=20
> create the frontend.

If xendev_class->get_frontend_path returned NULL it will have filled in err=
p.

As a general rule (I'll be doing a bombing run on xen-bus once I get my
patch queue down into single digits) we should never check 'if (*errp)'
to check if a function had an error. It should *also* return a success
or failure indication, and we should cope with errp being NULL.



--=-Q1DBezpZ2dJcIULBrgeD
Content-Type: application/pkcs7-signature; name="smime.p7s"
Content-Disposition: attachment; filename="smime.p7s"
Content-Transfer-Encoding: base64

MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgEFADCABgkqhkiG9w0BBwEAAKCCEkQw
ggYQMIID+KADAgECAhBNlCwQ1DvglAnFgS06KwZPMA0GCSqGSIb3DQEBDAUAMIGIMQswCQYDVQQG
EwJVUzETMBEGA1UECBMKTmV3IEplcnNleTEUMBIGA1UEBxMLSmVyc2V5IENpdHkxHjAcBgNVBAoT
FVRoZSBVU0VSVFJVU1QgTmV0d29yazEuMCwGA1UEAxMlVVNFUlRydXN0IFJTQSBDZXJ0aWZpY2F0
aW9uIEF1dGhvcml0eTAeFw0xODExMDIwMDAwMDBaFw0zMDEyMzEyMzU5NTlaMIGWMQswCQYDVQQG
EwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYD
VQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50
aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC
AQEAyjztlApB/975Rrno1jvm2pK/KxBOqhq8gr2+JhwpKirSzZxQgT9tlC7zl6hn1fXjSo5MqXUf
ItMltrMaXqcESJuK8dtK56NCSrq4iDKaKq9NxOXFmqXX2zN8HHGjQ2b2Xv0v1L5Nk1MQPKA19xeW
QcpGEGFUUd0kN+oHox+L9aV1rjfNiCj3bJk6kJaOPabPi2503nn/ITX5e8WfPnGw4VuZ79Khj1YB
rf24k5Ee1sLTHsLtpiK9OjG4iQRBdq6Z/TlVx/hGAez5h36bBJMxqdHLpdwIUkTqT8se3ed0PewD
ch/8kHPo5fZl5u1B0ecpq/sDN/5sCG52Ds+QU5O5EwIDAQABo4IBZDCCAWAwHwYDVR0jBBgwFoAU
U3m/WqorSs9UgOHYm8Cd8rIDZsswHQYDVR0OBBYEFAnA8vwL2pTbX/4r36iZQs/J4K0AMA4GA1Ud
DwEB/wQEAwIBhjASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEF
BQcDBDARBgNVHSAECjAIMAYGBFUdIAAwUAYDVR0fBEkwRzBFoEOgQYY/aHR0cDovL2NybC51c2Vy
dHJ1c3QuY29tL1VTRVJUcnVzdFJTQUNlcnRpZmljYXRpb25BdXRob3JpdHkuY3JsMHYGCCsGAQUF
BwEBBGowaDA/BggrBgEFBQcwAoYzaHR0cDovL2NydC51c2VydHJ1c3QuY29tL1VTRVJUcnVzdFJT
QUFkZFRydXN0Q0EuY3J0MCUGCCsGAQUFBzABhhlodHRwOi8vb2NzcC51c2VydHJ1c3QuY29tMA0G
CSqGSIb3DQEBDAUAA4ICAQBBRHUAqznCFfXejpVtMnFojADdF9d6HBA4kMjjsb0XMZHztuOCtKF+
xswhh2GqkW5JQrM8zVlU+A2VP72Ky2nlRA1GwmIPgou74TZ/XTarHG8zdMSgaDrkVYzz1g3nIVO9
IHk96VwsacIvBF8JfqIs+8aWH2PfSUrNxP6Ys7U0sZYx4rXD6+cqFq/ZW5BUfClN/rhk2ddQXyn7
kkmka2RQb9d90nmNHdgKrwfQ49mQ2hWQNDkJJIXwKjYA6VUR/fZUFeCUisdDe/0ABLTI+jheXUV1
eoYV7lNwNBKpeHdNuO6Aacb533JlfeUHxvBz9OfYWUiXu09sMAviM11Q0DuMZ5760CdO2VnpsXP4
KxaYIhvqPqUMWqRdWyn7crItNkZeroXaecG03i3mM7dkiPaCkgocBg0EBYsbZDZ8bsG3a08LwEsL
1Ygz3SBsyECa0waq4hOf/Z85F2w2ZpXfP+w8q4ifwO90SGZZV+HR/Jh6rEaVPDRF/CEGVqR1hiuQ
OZ1YL5ezMTX0ZSLwrymUE0pwi/KDaiYB15uswgeIAcA6JzPFf9pLkAFFWs1QNyN++niFhsM47qod
x/PL+5jR87myx5uYdBEQkkDc+lKB1Wct6ucXqm2EmsaQ0M95QjTmy+rDWjkDYdw3Ms6mSWE3Bn7i
5ZgtwCLXgAIe5W8mybM2JzCCBhQwggT8oAMCAQICEQDGvhmWZ0DEAx0oURL6O6l+MA0GCSqGSIb3
DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYD
VQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28g
UlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMB4XDTIyMDEwNzAw
MDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJARYTZHdtdzJAaW5mcmFkZWFkLm9y
ZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3GpC2bomUqk+91wLYBzDMcCj5C9m6
oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZHh7htyAkWYVoFsFPrwHounto8xTsy
SSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT9YgcBqKCo65pTFmOnR/VVbjJk4K2
xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNjP+qDrh0db7PAjO1D4d5ftfrsf+kd
RR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy2U+eITZ5LLE5s45mX2oPFknWqxBo
bQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3BgBEmfsYWlBXO8rVXfvPgLs32VdV
NZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/7auNVRmPB3v5SWEsH8xi4Bez2V9U
KxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmdlFYhAflWKQ03Ufiu8t3iBE3VJbc2
5oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9aelIl6vtbhMA+l0nfrsORMa4kobqQ5
C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMBAAGjggHMMIIByDAfBgNVHSMEGDAW
gBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeDMcimo0oz8o1R1Nver3ZVpSkwDgYD
VR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYwFAYIKwYBBQUHAwQGCCsGAQUFBwMC
MEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYBBQUHAgEWF2h0dHBzOi8vc2VjdGln
by5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9jcmwuc2VjdGlnby5jb20vU2VjdGln
b1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1haWxDQS5jcmwwgYoGCCsGAQUFBwEB
BH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdvLmNvbS9TZWN0aWdvUlNBQ2xpZW50
QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAjBggrBgEFBQcwAYYXaHR0cDovL29j
c3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5mcmFkZWFkLm9yZzANBgkqhkiG9w0B
AQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQvQ/fzPXmtR9t54rpmI2TfyvcKgOXp
qa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvIlSPrzIB4Z2wyIGQpaPLlYflrrVFK
v9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9ChWFfgSXvrWDZspnU3Gjw/rMHrGnql
Htlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0whpBtXdyDjzBtQTaZJ7zTT/vlehc/
tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9IzCCBhQwggT8oAMCAQICEQDGvhmW
Z0DEAx0oURL6O6l+MA0GCSqGSIb3DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3Jl
YXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0
ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJl
IEVtYWlsIENBMB4XDTIyMDEwNzAwMDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJ
ARYTZHdtdzJAaW5mcmFkZWFkLm9yZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3
GpC2bomUqk+91wLYBzDMcCj5C9m6oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZH
h7htyAkWYVoFsFPrwHounto8xTsySSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT
9YgcBqKCo65pTFmOnR/VVbjJk4K2xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNj
P+qDrh0db7PAjO1D4d5ftfrsf+kdRR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy
2U+eITZ5LLE5s45mX2oPFknWqxBobQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3
BgBEmfsYWlBXO8rVXfvPgLs32VdVNZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/
7auNVRmPB3v5SWEsH8xi4Bez2V9UKxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmd
lFYhAflWKQ03Ufiu8t3iBE3VJbc25oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9ae
lIl6vtbhMA+l0nfrsORMa4kobqQ5C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMB
AAGjggHMMIIByDAfBgNVHSMEGDAWgBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeD
Mcimo0oz8o1R1Nver3ZVpSkwDgYDVR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYw
FAYIKwYBBQUHAwQGCCsGAQUFBwMCMEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYB
BQUHAgEWF2h0dHBzOi8vc2VjdGlnby5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9j
cmwuc2VjdGlnby5jb20vU2VjdGlnb1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1h
aWxDQS5jcmwwgYoGCCsGAQUFBwEBBH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdv
LmNvbS9TZWN0aWdvUlNBQ2xpZW50QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAj
BggrBgEFBQcwAYYXaHR0cDovL29jc3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5m
cmFkZWFkLm9yZzANBgkqhkiG9w0BAQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQv
Q/fzPXmtR9t54rpmI2TfyvcKgOXpqa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvI
lSPrzIB4Z2wyIGQpaPLlYflrrVFKv9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9Ch
WFfgSXvrWDZspnU3Gjw/rMHrGnqlHtlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0w
hpBtXdyDjzBtQTaZJ7zTT/vlehc/tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9
IzGCBMcwggTDAgEBMIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVz
dGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMT
NVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEA
xr4ZlmdAxAMdKFES+jupfjANBglghkgBZQMEAgEFAKCCAeswGAYJKoZIhvcNAQkDMQsGCSqGSIb3
DQEHATAcBgkqhkiG9w0BCQUxDxcNMjMxMDI0MTI1NjE0WjAvBgkqhkiG9w0BCQQxIgQgAORed/r7
yjaxaiKiEh0t0czu2+/5Zim+VBZ04/Jf4WAwgb0GCSsGAQQBgjcQBDGBrzCBrDCBljELMAkGA1UE
BhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEYMBYG
A1UEChMPU2VjdGlnbyBMaW1pdGVkMT4wPAYDVQQDEzVTZWN0aWdvIFJTQSBDbGllbnQgQXV0aGVu
dGljYXRpb24gYW5kIFNlY3VyZSBFbWFpbCBDQQIRAMa+GZZnQMQDHShREvo7qX4wgb8GCyqGSIb3
DQEJEAILMYGvoIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVy
MRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNl
Y3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEAxr4Z
lmdAxAMdKFES+jupfjANBgkqhkiG9w0BAQEFAASCAgB+y0wFouAllrieYiBNX0M1VvbX9fwz8Bws
7Ki3oasK+xmQUAxH4cIOF2jCfyTc0kbFRwpcbSJE7dMEzWtPfjw8tCG91NMoMeyLnVYHHLhDjddN
3yipFEmzBvhencdgWnEomo4Rms3qbCP6LRt81zap8jNTBfqetTjHTDxJ00VkS1D021xn4AfWHNI6
SQhBcSFRDmpw459qGnyOY7aRsMunShf7MzjN5DE69VWiH0yCDAW8vUoNXvj4Sesh8WmW2FhlT6bU
ij2QD4CsnpY7zxheLmumN2qfcd9YnQ6l3j7x9nsQE/HPH7wrKnKNMIsSdmb8ah2kIkyGc8iGRrI3
FGt07FJGqlN1ZXSryXOhl6Lv8nsSUnViP3HPJaSs/kOFANsVGQ+3d1SYSCNLhdDhTYLeyXbcT/KM
mBY1mMpMB/tXpQYTmunEuSH6Vq/xJzt19sd/b/OznKD7inKcqeZXUpKAC6DY604/fNCUsf4FLCZi
a4zipcZZ9VGSfL+TZClSWH4HGIYPM/Hp8sn0BY+iwLTgN1Prw9O76od5wrGzI5AtPElWsWRKHE+l
mm+gprL2NH5AawtpW+YG7rcBvE7iqwVEX8O1HQE9bCAjOh/po1rzobLjJYnynSyYCM9p7KRnwBM1
Ompq+pf6V6YH5Z9nGGcoV4yLfsv3eO4Yqy3+Lrj0VwAAAAAAAA==


--=-Q1DBezpZ2dJcIULBrgeD--


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 12:58:39 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 12:58:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621925.968858 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvGzV-0006JH-NW; Tue, 24 Oct 2023 12:58:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621925.968858; Tue, 24 Oct 2023 12:58: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 1qvGzV-0006JA-JG; Tue, 24 Oct 2023 12:58:37 +0000
Received: by outflank-mailman (input) for mailman id 621925;
 Tue, 24 Oct 2023 12:58: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=jXWl=GG=casper.srs.infradead.org=BATV+e2898748ca55db067849+7366+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qvGzU-0006J2-Ek
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 12:58:36 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 0abefdd1-726d-11ee-98d5-6d05b1d4d9a1;
 Tue, 24 Oct 2023 14:58:35 +0200 (CEST)
Received: from [2001:8b0:10b:5:758e:a1c4:bc7:e7a7]
 (helo=u3832b3a9db3152.ant.amazon.com)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qvGzS-002Zqg-1X; Tue, 24 Oct 2023 12:58: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: 0abefdd1-726d-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=MIME-Version:Content-Type:References:
	In-Reply-To:Date:Cc:To:From:Subject:Message-ID:Sender:Reply-To:
	Content-Transfer-Encoding:Content-ID:Content-Description;
	bh=HRHwTdORAI5uxR2ZSCdt54gI1AdlYa7OoYoyY8rZJLI=; b=ZfRTRqbBFNAFEO8aWPRsrwz1hL
	fUXzPnDredr9hP6pOK8gtWY5oMLqltqjti1bA3p85ffQZ7i9czHnoEzXs3oNwxZzQxakLsgStF8Kr
	31AIOytB2Gpb8+D5IeiLa+2qD1StcFvxNltrqXil67AoBqrlENIiKOSNYL/LIPPITnERixmpYPE7D
	ev9IwTJlIT4AogB/P9pw/d2R4Vvegq9udkowXINuBFYOBikyQDvkcW4GO3+OKxPK/AuCyY2cDlV9i
	oFqyAN7r6ytHBbG5RacpikPo/JukTltevn27Wdecz1NeZRWYq4LNefATtDEPrwlxbfun1/9FuzruY
	g6TjgGwQ==;
Message-ID: <1e1039c0303cba31143ff3d856c6b7c61e6398f2.camel@infradead.org>
Subject: Re: [PATCH 01/12] i386/xen: fix per-vCPU upcall vector for Xen
 emulation
From: David Woodhouse <dwmw2@infradead.org>
To: paul@xen.org, qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>, Hanna Reitz <hreitz@redhat.com>, Stefano
 Stabellini <sstabellini@kernel.org>, Anthony Perard
 <anthony.perard@citrix.com>,  =?ISO-8859-1?Q?Marc-Andr=E9?= Lureau
 <marcandre.lureau@redhat.com>, Paolo Bonzini <pbonzini@redhat.com>,
 "Michael S. Tsirkin" <mst@redhat.com>, Marcel Apfelbaum
 <marcel.apfelbaum@gmail.com>, Richard Henderson
 <richard.henderson@linaro.org>, Eduardo Habkost <eduardo@habkost.net>, 
 Marcelo Tosatti <mtosatti@redhat.com>, qemu-block@nongnu.org,
 xen-devel@lists.xenproject.org, kvm@vger.kernel.org
Date: Tue, 24 Oct 2023 13:58:32 +0100
In-Reply-To: <456aae8e-ea07-4861-a91b-7c7e28d2a22b@xen.org>
References: <20231016151909.22133-1-dwmw2@infradead.org>
	 <20231016151909.22133-2-dwmw2@infradead.org>
	 <456aae8e-ea07-4861-a91b-7c7e28d2a22b@xen.org>
Content-Type: multipart/signed; micalg="sha-256"; protocol="application/pkcs7-signature";
	boundary="=-IqHjjQRQ9f8NUYIPXNDV"
User-Agent: Evolution 3.44.4-0ubuntu2 
MIME-Version: 1.0
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html


--=-IqHjjQRQ9f8NUYIPXNDV
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Tue, 2023-10-24 at 13:16 +0100, Paul Durrant wrote:
> On 16/10/2023 16:18, David Woodhouse wrote:
> > From: David Woodhouse <dwmw@amazon.co.uk>
> >=20
> > The per-vCPU upcall vector support had two problems. Firstly it was
> > using the wrong hypercall argument and would always return -EFAULT.
> > And secondly it was using the wrong ioctl() to pass the vector to
> > the kernel and thus the *kernel* would always return -EINVAL.
> >=20
> > Linux doesn't (yet) use this mode so it went without decent testing
> > for a while.
> >=20
> > Fixes: 105b47fdf2d0 ("i386/xen: implement
> > HVMOP_set_evtchn_upcall_vector")
> > Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
> > ---
> > =C2=A0 target/i386/kvm/xen-emu.c | 5 ++---
> > =C2=A0 1 file changed, 2 insertions(+), 3 deletions(-)
>=20
> Reviewed-by: Paul Durrant <paul@xen.org>

FWIW this patch gained a third "brown paper bag" fix this morning, when
I finally worked it out:

@@ -440,7 +440,8 @@ void kvm_xen_inject_vcpu_callback_vector(uint32_t
vcpu_id, int type)
          * deliver it as an MSI.
          */
         MSIMessage msg =3D {
-            .address =3D APIC_DEFAULT_ADDRESS | X86_CPU(cs)->apic_id,
+            .address =3D APIC_DEFAULT_ADDRESS |
+                       (X86_CPU(cs)->apic_id << MSI_ADDR_DEST_ID_SHIFT),
             .data =3D vector | (1UL << MSI_DATA_LEVEL_SHIFT),
         };
         kvm_irqchip_send_msi(kvm_state, msg);


--=-IqHjjQRQ9f8NUYIPXNDV
Content-Type: application/pkcs7-signature; name="smime.p7s"
Content-Disposition: attachment; filename="smime.p7s"
Content-Transfer-Encoding: base64

MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgEFADCABgkqhkiG9w0BBwEAAKCCEkQw
ggYQMIID+KADAgECAhBNlCwQ1DvglAnFgS06KwZPMA0GCSqGSIb3DQEBDAUAMIGIMQswCQYDVQQG
EwJVUzETMBEGA1UECBMKTmV3IEplcnNleTEUMBIGA1UEBxMLSmVyc2V5IENpdHkxHjAcBgNVBAoT
FVRoZSBVU0VSVFJVU1QgTmV0d29yazEuMCwGA1UEAxMlVVNFUlRydXN0IFJTQSBDZXJ0aWZpY2F0
aW9uIEF1dGhvcml0eTAeFw0xODExMDIwMDAwMDBaFw0zMDEyMzEyMzU5NTlaMIGWMQswCQYDVQQG
EwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYD
VQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50
aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC
AQEAyjztlApB/975Rrno1jvm2pK/KxBOqhq8gr2+JhwpKirSzZxQgT9tlC7zl6hn1fXjSo5MqXUf
ItMltrMaXqcESJuK8dtK56NCSrq4iDKaKq9NxOXFmqXX2zN8HHGjQ2b2Xv0v1L5Nk1MQPKA19xeW
QcpGEGFUUd0kN+oHox+L9aV1rjfNiCj3bJk6kJaOPabPi2503nn/ITX5e8WfPnGw4VuZ79Khj1YB
rf24k5Ee1sLTHsLtpiK9OjG4iQRBdq6Z/TlVx/hGAez5h36bBJMxqdHLpdwIUkTqT8se3ed0PewD
ch/8kHPo5fZl5u1B0ecpq/sDN/5sCG52Ds+QU5O5EwIDAQABo4IBZDCCAWAwHwYDVR0jBBgwFoAU
U3m/WqorSs9UgOHYm8Cd8rIDZsswHQYDVR0OBBYEFAnA8vwL2pTbX/4r36iZQs/J4K0AMA4GA1Ud
DwEB/wQEAwIBhjASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEF
BQcDBDARBgNVHSAECjAIMAYGBFUdIAAwUAYDVR0fBEkwRzBFoEOgQYY/aHR0cDovL2NybC51c2Vy
dHJ1c3QuY29tL1VTRVJUcnVzdFJTQUNlcnRpZmljYXRpb25BdXRob3JpdHkuY3JsMHYGCCsGAQUF
BwEBBGowaDA/BggrBgEFBQcwAoYzaHR0cDovL2NydC51c2VydHJ1c3QuY29tL1VTRVJUcnVzdFJT
QUFkZFRydXN0Q0EuY3J0MCUGCCsGAQUFBzABhhlodHRwOi8vb2NzcC51c2VydHJ1c3QuY29tMA0G
CSqGSIb3DQEBDAUAA4ICAQBBRHUAqznCFfXejpVtMnFojADdF9d6HBA4kMjjsb0XMZHztuOCtKF+
xswhh2GqkW5JQrM8zVlU+A2VP72Ky2nlRA1GwmIPgou74TZ/XTarHG8zdMSgaDrkVYzz1g3nIVO9
IHk96VwsacIvBF8JfqIs+8aWH2PfSUrNxP6Ys7U0sZYx4rXD6+cqFq/ZW5BUfClN/rhk2ddQXyn7
kkmka2RQb9d90nmNHdgKrwfQ49mQ2hWQNDkJJIXwKjYA6VUR/fZUFeCUisdDe/0ABLTI+jheXUV1
eoYV7lNwNBKpeHdNuO6Aacb533JlfeUHxvBz9OfYWUiXu09sMAviM11Q0DuMZ5760CdO2VnpsXP4
KxaYIhvqPqUMWqRdWyn7crItNkZeroXaecG03i3mM7dkiPaCkgocBg0EBYsbZDZ8bsG3a08LwEsL
1Ygz3SBsyECa0waq4hOf/Z85F2w2ZpXfP+w8q4ifwO90SGZZV+HR/Jh6rEaVPDRF/CEGVqR1hiuQ
OZ1YL5ezMTX0ZSLwrymUE0pwi/KDaiYB15uswgeIAcA6JzPFf9pLkAFFWs1QNyN++niFhsM47qod
x/PL+5jR87myx5uYdBEQkkDc+lKB1Wct6ucXqm2EmsaQ0M95QjTmy+rDWjkDYdw3Ms6mSWE3Bn7i
5ZgtwCLXgAIe5W8mybM2JzCCBhQwggT8oAMCAQICEQDGvhmWZ0DEAx0oURL6O6l+MA0GCSqGSIb3
DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYD
VQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28g
UlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMB4XDTIyMDEwNzAw
MDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJARYTZHdtdzJAaW5mcmFkZWFkLm9y
ZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3GpC2bomUqk+91wLYBzDMcCj5C9m6
oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZHh7htyAkWYVoFsFPrwHounto8xTsy
SSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT9YgcBqKCo65pTFmOnR/VVbjJk4K2
xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNjP+qDrh0db7PAjO1D4d5ftfrsf+kd
RR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy2U+eITZ5LLE5s45mX2oPFknWqxBo
bQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3BgBEmfsYWlBXO8rVXfvPgLs32VdV
NZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/7auNVRmPB3v5SWEsH8xi4Bez2V9U
KxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmdlFYhAflWKQ03Ufiu8t3iBE3VJbc2
5oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9aelIl6vtbhMA+l0nfrsORMa4kobqQ5
C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMBAAGjggHMMIIByDAfBgNVHSMEGDAW
gBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeDMcimo0oz8o1R1Nver3ZVpSkwDgYD
VR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYwFAYIKwYBBQUHAwQGCCsGAQUFBwMC
MEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYBBQUHAgEWF2h0dHBzOi8vc2VjdGln
by5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9jcmwuc2VjdGlnby5jb20vU2VjdGln
b1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1haWxDQS5jcmwwgYoGCCsGAQUFBwEB
BH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdvLmNvbS9TZWN0aWdvUlNBQ2xpZW50
QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAjBggrBgEFBQcwAYYXaHR0cDovL29j
c3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5mcmFkZWFkLm9yZzANBgkqhkiG9w0B
AQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQvQ/fzPXmtR9t54rpmI2TfyvcKgOXp
qa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvIlSPrzIB4Z2wyIGQpaPLlYflrrVFK
v9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9ChWFfgSXvrWDZspnU3Gjw/rMHrGnql
Htlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0whpBtXdyDjzBtQTaZJ7zTT/vlehc/
tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9IzCCBhQwggT8oAMCAQICEQDGvhmW
Z0DEAx0oURL6O6l+MA0GCSqGSIb3DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3Jl
YXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0
ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJl
IEVtYWlsIENBMB4XDTIyMDEwNzAwMDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJ
ARYTZHdtdzJAaW5mcmFkZWFkLm9yZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3
GpC2bomUqk+91wLYBzDMcCj5C9m6oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZH
h7htyAkWYVoFsFPrwHounto8xTsySSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT
9YgcBqKCo65pTFmOnR/VVbjJk4K2xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNj
P+qDrh0db7PAjO1D4d5ftfrsf+kdRR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy
2U+eITZ5LLE5s45mX2oPFknWqxBobQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3
BgBEmfsYWlBXO8rVXfvPgLs32VdVNZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/
7auNVRmPB3v5SWEsH8xi4Bez2V9UKxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmd
lFYhAflWKQ03Ufiu8t3iBE3VJbc25oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9ae
lIl6vtbhMA+l0nfrsORMa4kobqQ5C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMB
AAGjggHMMIIByDAfBgNVHSMEGDAWgBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeD
Mcimo0oz8o1R1Nver3ZVpSkwDgYDVR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYw
FAYIKwYBBQUHAwQGCCsGAQUFBwMCMEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYB
BQUHAgEWF2h0dHBzOi8vc2VjdGlnby5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9j
cmwuc2VjdGlnby5jb20vU2VjdGlnb1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1h
aWxDQS5jcmwwgYoGCCsGAQUFBwEBBH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdv
LmNvbS9TZWN0aWdvUlNBQ2xpZW50QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAj
BggrBgEFBQcwAYYXaHR0cDovL29jc3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5m
cmFkZWFkLm9yZzANBgkqhkiG9w0BAQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQv
Q/fzPXmtR9t54rpmI2TfyvcKgOXpqa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvI
lSPrzIB4Z2wyIGQpaPLlYflrrVFKv9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9Ch
WFfgSXvrWDZspnU3Gjw/rMHrGnqlHtlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0w
hpBtXdyDjzBtQTaZJ7zTT/vlehc/tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9
IzGCBMcwggTDAgEBMIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVz
dGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMT
NVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEA
xr4ZlmdAxAMdKFES+jupfjANBglghkgBZQMEAgEFAKCCAeswGAYJKoZIhvcNAQkDMQsGCSqGSIb3
DQEHATAcBgkqhkiG9w0BCQUxDxcNMjMxMDI0MTI1ODMyWjAvBgkqhkiG9w0BCQQxIgQgxJzhPhd3
s5roVqPHpQuiWss118Vc0c9/z9cZAQHwd20wgb0GCSsGAQQBgjcQBDGBrzCBrDCBljELMAkGA1UE
BhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEYMBYG
A1UEChMPU2VjdGlnbyBMaW1pdGVkMT4wPAYDVQQDEzVTZWN0aWdvIFJTQSBDbGllbnQgQXV0aGVu
dGljYXRpb24gYW5kIFNlY3VyZSBFbWFpbCBDQQIRAMa+GZZnQMQDHShREvo7qX4wgb8GCyqGSIb3
DQEJEAILMYGvoIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVy
MRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNl
Y3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEAxr4Z
lmdAxAMdKFES+jupfjANBgkqhkiG9w0BAQEFAASCAgAVYfYR9Q8SSo+AixP6ceWkkU3vuFVJibdH
7wN8XsWPE9CMtbLtr/OGLPCSD7CiniXj1O3Gz3v9fMDqvWVF5/kL6hC/EmIsZR02cIYcRnXDamkj
FmRloV33lf2hr1ABH1czVofu8Qnpuqt5p3wLqZo5nDxQ4jnWumaBX35JdCqrkSIMsxUNqqvLnvp6
lfEI1eJEEuL/C+ZwAytm9toojdrZxLaIL182uw0zVlMdCPrO42XXGhHtvjouvTe78Q6zcvdLdue6
a+QFlAjH2QyTOjkF/EhhoS6WPX/VWdDRjYiU7AnYH4yFLUbwsy3+BhwXVnJZNwQDXF45IOD+RYlq
43hPG9veYDXzLjhiAM1mXZgCWSB0loKvrOzkcVPTebGTJmL+LN/iOnjdAhDdJ6k0RUbOtFKqMGZv
TIICprDidXiMATbwelF0n3Kf8X+Wr5Tnmv5gXGHc1KzlmNG81AAjWQZRtiVzo054gpbEulepWTuv
+5FwoZ99VDVp7Gra+ecT6kULfPKacIqOHzKkCwhMw6YQChGZfWa5jHuPtTwkVr2eviMts7ov/7nL
hsjxLUKbYCnnZiaPjCrc2O37Qr+Re4luRLFEuJVpMeWXkW3nEU9Kkj7hv2sMNjbrgkCbhxup61bK
lwFaQk54fUhlPyx7ufrAAU67bPb/2iGegEQFT6xfFgAAAAAAAA==


--=-IqHjjQRQ9f8NUYIPXNDV--


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 12:59:17 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 12:59:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621927.968868 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvH05-0006xJ-VE; Tue, 24 Oct 2023 12:59:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621927.968868; Tue, 24 Oct 2023 12:59: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 1qvH05-0006xC-Sb; Tue, 24 Oct 2023 12:59:13 +0000
Received: by outflank-mailman (input) for mailman id 621927;
 Tue, 24 Oct 2023 12:59: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=+b+W=GG=gmail.com=xadimgnik@srs-se1.protection.inumbo.net>)
 id 1qvH04-0006m9-J4
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 12:59:12 +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 1fe6edaf-726d-11ee-9b0e-b553b5be7939;
 Tue, 24 Oct 2023 14:59:10 +0200 (CEST)
Received: by mail-wm1-x332.google.com with SMTP id
 5b1f17b1804b1-40906fc54fdso12821085e9.0
 for <xen-devel@lists.xenproject.org>; Tue, 24 Oct 2023 05:59:10 -0700 (PDT)
Received: from [192.168.6.66] (54-240-197-230.amazon.com. [54.240.197.230])
 by smtp.gmail.com with ESMTPSA id
 az20-20020a05600c601400b004054dcbf92asm11888555wmb.20.2023.10.24.05.59.07
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 24 Oct 2023 05:59: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: 1fe6edaf-726d-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698152350; x=1698757150; 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=/Fv2AY0PfohaOR9XcU+8ZQ81rKPOWLOMFyddNbcLYLA=;
        b=A58cjce9fVpWaUY2H+czZk7Is12WgZcKBNmpnwdyveZPQJ3sMNPOrnH6rMCRsFWKbI
         D+HjacrsXvM8bb1icSXkmrdQP30roKvmPvks4ctPCTRxP8iOLqAdYke4aA1tVbLwdLvs
         tTU1/ke+6RXk7acXz6XsKNHsvcsmdKX2OUYKE4xs3ayiB0Ko3l7hPi8XZiGi5SYVIwhD
         HfXBaUsSnDuS0WOJGzHdMb6BLfdJ+U6As9G9TithHaLI2g0Ea8793yX/2d7Nk2gLJE9h
         BIH/ktcIe9UZfjDbjlfUYiQXBT0Rw5nftOY7dSGRjujRQwHWspA+64MiZXAL1NO2+YTu
         vEkA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698152350; x=1698757150;
        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=/Fv2AY0PfohaOR9XcU+8ZQ81rKPOWLOMFyddNbcLYLA=;
        b=iygf1rJqeH/Oxqlo19pIGf0dtKiOBd3GzwNNXjUbvZtM9bf0/f1XRjuIDFNj83vZHg
         GzEYmS+nDkN6y0X4z196KyuUNiF8Vdt8H2Ih/QPcjsjU6UCGfKrWHoqMJrKhDfLqEE+p
         aC3zjNManclizYHSGGvRor8yxC9txcTFagEIwaJ8c9pR9S7qZfkpn9ltNDSfmNWDwQ1B
         h5PsuvByUxpxaSbPk3mNghrKYG339raTFDMjR9x2f72CVLKX5RdIPDIBSey0N1rBcjYW
         uFz9SV+uJo0UTQ0YxJGpPm5Odo0WfIkV9q2/hwRsky/Ky9EPOq9BTHhZ4xEKibaz4iX5
         NdlA==
X-Gm-Message-State: AOJu0YwlJfyzy04ZzR9Owtlxe+ifK4lbIKmHnNSWSuKQzFGZ727Hgmv7
	gGk2loSuT5I8C1/syux1yHI=
X-Google-Smtp-Source: AGHT+IHO2khmsIcOqOzMGxdA5Ej9PMASd96m2EkszFQX+E0xL93HsityPlswigSIsmJsJG7LwrKmlw==
X-Received: by 2002:a05:600c:5252:b0:408:389d:c22e with SMTP id fc18-20020a05600c525200b00408389dc22emr9189363wmb.25.1698152350138;
        Tue, 24 Oct 2023 05:59:10 -0700 (PDT)
From: Paul Durrant <xadimgnik@gmail.com>
X-Google-Original-From: Paul Durrant <paul@xen.org>
Message-ID: <55bb6967-9499-45ef-b4c8-00fbfaccef0d@xen.org>
Date: Tue, 24 Oct 2023 13:59:07 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Reply-To: paul@xen.org
Subject: Re: [PATCH 06/12] hw/xen: add get_frontend_path() method to
 XenDeviceClass
Content-Language: en-US
To: David Woodhouse <dwmw2@infradead.org>, qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>, Hanna Reitz <hreitz@redhat.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Anthony Perard <anthony.perard@citrix.com>,
 =?UTF-8?Q?Marc-Andr=C3=A9_Lureau?= <marcandre.lureau@redhat.com>,
 Paolo Bonzini <pbonzini@redhat.com>, "Michael S. Tsirkin" <mst@redhat.com>,
 Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
 Richard Henderson <richard.henderson@linaro.org>,
 Eduardo Habkost <eduardo@habkost.net>, Marcelo Tosatti
 <mtosatti@redhat.com>, qemu-block@nongnu.org,
 xen-devel@lists.xenproject.org, kvm@vger.kernel.org
References: <20231016151909.22133-1-dwmw2@infradead.org>
 <20231016151909.22133-7-dwmw2@infradead.org>
 <5ef43a7c-e535-496d-8a14-bccbadab3bc0@xen.org>
 <d43b900a6c7987c6832ceeede9b4c5ab65d5bacd.camel@infradead.org>
Organization: Xen Project
In-Reply-To: <d43b900a6c7987c6832ceeede9b4c5ab65d5bacd.camel@infradead.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

On 24/10/2023 13:56, David Woodhouse wrote:
> On Tue, 2023-10-24 at 13:42 +0100, Paul Durrant wrote:
>>
>>> --- a/hw/xen/xen-bus.c
>>> +++ b/hw/xen/xen-bus.c
>>> @@ -711,8 +711,16 @@ static void xen_device_frontend_create(XenDevice *xendev, Error **errp)
>>>     {
>>>         ERRP_GUARD();
>>>         XenBus *xenbus = XEN_BUS(qdev_get_parent_bus(DEVICE(xendev)));
>>> +    XenDeviceClass *xendev_class = XEN_DEVICE_GET_CLASS(xendev);
>>>     
>>> -    xendev->frontend_path = xen_device_get_frontend_path(xendev);
>>> +    if (xendev_class->get_frontend_path) {
>>> +        xendev->frontend_path = xendev_class->get_frontend_path(xendev, errp);
>>> +        if (!xendev->frontend_path) {
>>> +            return;
>>
>> I think you need to update errp here to note that you are failing to
>> create the frontend.
> 
> If xendev_class->get_frontend_path returned NULL it will have filled in errp.
> 

Ok, but a prepend to say that a lack of path there means we skip 
frontend creation seems reasonable?

> As a general rule (I'll be doing a bombing run on xen-bus once I get my
> patch queue down into single digits) we should never check 'if (*errp)'
> to check if a function had an error. It should *also* return a success
> or failure indication, and we should cope with errp being NULL.
> 

I'm pretty sure someone told me the exact opposite a few years back.

   Paul


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 13:01:11 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 13:01:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621931.968878 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvH1w-0000MX-DO; Tue, 24 Oct 2023 13:01:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621931.968878; Tue, 24 Oct 2023 13: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 1qvH1w-0000MQ-AO; Tue, 24 Oct 2023 13:01:08 +0000
Received: by outflank-mailman (input) for mailman id 621931;
 Tue, 24 Oct 2023 13:01: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 1qvH1v-0000MK-9u
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 13:01: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 1qvH1s-0000Kd-JC; Tue, 24 Oct 2023 13:01:04 +0000
Received: from 54-240-197-227.amazon.com ([54.240.197.227]
 helo=[192.168.12.80]) by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qvH1s-0006YB-CV; Tue, 24 Oct 2023 13: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>
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=RovrDwx7qWh3LOExcgXhG6rFiIgSN9Jveu9q34bE9IQ=; b=Pc7pPuw7ZLEQBKYCEPNp1hNCKJ
	8S3uY+MTeRwV5hPHKKr8pAA1LOtJg5Ai4CWMUHeSvM0S0NhLPWqERW4oVdAR63jKSsnW5aLz9JF3a
	2fUY9vaAO3yyO0X1X87wY66sEjm7Ms2vjL5abWOmUJTx8yCduGBVstH+QOF/jQrWB0pE=;
Message-ID: <db09c1f9-3cf1-44a5-b349-1d9bdb7d0b15@xen.org>
Date: Tue, 24 Oct 2023 14:01:02 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v1 04/29] xen/asm-generic: introduce stub header device.h
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>,
 xen-devel@lists.xenproject.org
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
 <3cc9ecc3abcd21c5ed7276b01bf5963e6a5fd5e0.1694702259.git.oleksii.kurochko@gmail.com>
 <a20f5783-7ee3-6ed1-d4cf-379c30c64a12@suse.com>
 <9ee7b3c9-de71-4790-815c-8b2859a85465@xen.org>
 <17d9102a-da9d-d41b-6362-1ccfe21b7976@suse.com>
 <5059771d-3842-4a7c-814d-69388179b246@xen.org>
 <61c20f5d-a324-9ece-2140-4d0c775e193c@suse.com>
 <54ac0161-7302-4190-9c6e-273caa652058@xen.org>
 <04fe316e-bc4f-0df8-7771-5be7ca878297@suse.com>
 <3ce85a73-96ab-41c8-8b90-f3899e771845@xen.org>
 <63392d67-f1af-a53b-59c2-ad4752159726@suse.com>
 <97eaa9e6-bc4b-4128-9563-cf3647a794c7@xen.org>
 <d7e862261c5a45902ba95eaff31d813d97f3c62e.camel@gmail.com>
 <48c3c78d-465f-8102-87a3-cef3a5d4838c@suse.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <48c3c78d-465f-8102-87a3-cef3a5d4838c@suse.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi Jan,

On 23/10/2023 11:33, Jan Beulich wrote:
> On 23.10.2023 12:17, Oleksii wrote:
>> On Thu, 2023-10-19 at 13:12 +0100, Julien Grall wrote:
>>> Hi,
>>>
>>> On 19/10/2023 12:41, Jan Beulich wrote:
>>>> On 19.10.2023 13:27, Julien Grall wrote:
>>>>> that doesn't involve one arch to symlink headers from another
>>>>> arch.
>>>>
>>>> Whether to use symlinks or #include "../../arch/..." or yet
>>>> something else is
>>>> a matter of mechanics.
>>>
>>> #include "../../arch/../" is pretty much in the same category. This
>>> is
>>> simply hiding the fact they could be in asm-generic.
>>>
>>> Anyway, I have shared my view. Let see what the others thinks.
>> I have the same point: if something is shared at least between two
>> arch, it should go to ASM-generic.
> 
> I continue to disagree: What if one pair of arch-es shares one set
> of things, and another shares another set? You can't fit both pairs
> then with a single fallback header (unless of course you make it a
> big #if / #else / #endif, which I'm inclined to say isn't the goal
> with headers put in asm-generic/).

TBH, I would expect that if RISC-V and Arm are using the same headers, 
then PPC would likely use it as well. So this would qualify to be in 
asm-generic/.

Now, I don't think we have to resolve the case where we have have two 
arch using one set of headers and the other another sets. We can cross 
that line once we have an example.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 13:05:41 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 13:05:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621936.968888 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvH6D-0001AV-ST; Tue, 24 Oct 2023 13:05:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621936.968888; Tue, 24 Oct 2023 13:05: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 1qvH6D-0001AO-Q0; Tue, 24 Oct 2023 13:05:33 +0000
Received: by outflank-mailman (input) for mailman id 621936;
 Tue, 24 Oct 2023 13:05:32 +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 1qvH6B-0001AI-Uv
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 13:05:31 +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 1qvH6B-0000aC-Mt; Tue, 24 Oct 2023 13:05:31 +0000
Received: from 54-240-197-235.amazon.com ([54.240.197.235]
 helo=[192.168.12.80]) by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qvH6B-0006jc-HH; Tue, 24 Oct 2023 13:05: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=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=tNd7IOoVfY5F2UISZgKRXIU4EeiBV+8Tm5DHCBZYBVc=; b=mBneF2U8XBplZ6mKvERmStJJc+
	CcW8pHsJrwu49qlhPGYhcMLkv9k/RmHSFQXSCwg/AA8BN4BIU3/84azio/l8INnkOHh9Wz7CJ4g+o
	PC2RTSDoIuY1iQDBoJ0uPaxz2A3XHFyy8HMyYgIe1f+Dnt+ZA0AkHKD77ByJkyciDoWw=;
Message-ID: <e378a94e-5528-4509-bf80-bbf2fbf13e08@xen.org>
Date: Tue, 24 Oct 2023 14:05:29 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH] MAINTAINERS: make Michal Orzel ARM Maintainer
Content-Language: en-GB
To: Stefano Stabellini <sstabellini@kernel.org>,
 xen-devel@lists.xenproject.org
Cc: bertrand.marquis@arm.com, michal.orzel@amd.com,
 Volodymyr_Babchuk@epam.com, Henry.Wang@arm.com
References: <alpine.DEB.2.22.394.2310231356210.3516@ubuntu-linux-20-04-desktop>
From: Julien Grall <julien@xen.org>
In-Reply-To: <alpine.DEB.2.22.394.2310231356210.3516@ubuntu-linux-20-04-desktop>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi,

On 23/10/2023 21:56, Stefano Stabellini wrote:
> Signed-off-by: Stefano Stabellini <stefano.stabellini@amd.com>

Acked-by: Julien Grall <jgrall@amazon.com>

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 13:07:10 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 13:07:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621938.968897 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvH7l-0001n2-7I; Tue, 24 Oct 2023 13:07:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621938.968897; Tue, 24 Oct 2023 13: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 1qvH7l-0001mv-4W; Tue, 24 Oct 2023 13:07:09 +0000
Received: by outflank-mailman (input) for mailman id 621938;
 Tue, 24 Oct 2023 13: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=+b+W=GG=gmail.com=xadimgnik@srs-se1.protection.inumbo.net>)
 id 1qvH7j-0001mp-Sb
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 13:07:07 +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 3baab9ff-726e-11ee-98d5-6d05b1d4d9a1;
 Tue, 24 Oct 2023 15:07:06 +0200 (CEST)
Received: by mail-wm1-x32b.google.com with SMTP id
 5b1f17b1804b1-40859c46447so22441075e9.1
 for <xen-devel@lists.xenproject.org>; Tue, 24 Oct 2023 06:07:06 -0700 (PDT)
Received: from [192.168.6.66] (54-240-197-230.amazon.com. [54.240.197.230])
 by smtp.gmail.com with ESMTPSA id
 j14-20020a05600c130e00b0040772934b12sm16523555wmf.7.2023.10.24.06.07.04
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 24 Oct 2023 06:07: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: 3baab9ff-726e-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698152826; x=1698757626; 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=KDzDM0YxqKCgCCdkntEeHXUAF4bF07feeutdGTXuBxI=;
        b=PDp0ObOngoQXycc/5pmyU16RiexcOQIbiOsR93+2vBCMqLPbrjKDGv6427bgo9VJdq
         JstI3a1rWmyy4ik05j18knKwrfm4rBAF6zIGf6gWgQdpzmQR5qu+agWAds9JGiLSVHMA
         LJcOexU+fXSZets7vxFcBnWnWjnZfnemyGRbIDtlVIT/nxJ716MA+uym4m6Dliy+/BcD
         V2JHx4t9yvateRHPnh4LJpZVAnhNlKVrHzZicopMvuuBLhlGEdyeFeg1GOYy4DNbMrol
         v3jINuKC2/SOD9bEMDZEF/j+gZ5xRvr/VlLFd7JcDuw6ViLewCAtApC5j2knuKVestU0
         71pg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698152826; x=1698757626;
        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=KDzDM0YxqKCgCCdkntEeHXUAF4bF07feeutdGTXuBxI=;
        b=GLmLRo1I+oh3ToAB2+CFaIq7VoyB4g8aeKdX8NNVN1aUc90G9fLPlrxaOSxNcRfgoK
         7+c2UMmRMylz2pwowxu5ncWIm+cDOjOgOI9/3eiJWzKSoBVXT7L2drfgymgED80iH/+5
         TXheUAQ1BjfPHsocDKtH7tO8IlKLgCBh8CFMc9bbhFu7hswaeqg6RSX3KrgXKwlHlf7E
         lhGK8HATUvdkCi0dcfw4fOur2DsfOeZVmiqqXSJDH+U1M5WlAUnR3emoursdoioZTRv+
         cs0bV53faypCB7RXiHkMWRY/PGrI0i5DzgyTQFTSQ4zxC+TRghePXe+U6Z9cLRmH5+PP
         4fyg==
X-Gm-Message-State: AOJu0Yx+ayTdGX0xZ2vp/qIBj2s2Q2WxeeZ3xfuKndyo4Ek6owPpEsrb
	4nnsBA/I5O7OvZMJ8PYlLJA=
X-Google-Smtp-Source: AGHT+IHSYBXm7ww8kEijCPU+QQVGgouuAg8InLcq90b0Np1d6JZECDcRZPI7+BoWGWskCkmYHRoZMw==
X-Received: by 2002:a05:600c:3ba5:b0:406:44d2:8431 with SMTP id n37-20020a05600c3ba500b0040644d28431mr9234876wms.6.1698152826259;
        Tue, 24 Oct 2023 06:07:06 -0700 (PDT)
From: Paul Durrant <xadimgnik@gmail.com>
X-Google-Original-From: Paul Durrant <paul@xen.org>
Message-ID: <ef6b0d7c-6040-44ab-89a6-3c51831a663c@xen.org>
Date: Tue, 24 Oct 2023 14:07:04 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Reply-To: paul@xen.org
Subject: Re: [PATCH 07/12] hw/xen: update Xen console to XenDevice model
Content-Language: en-US
To: David Woodhouse <dwmw2@infradead.org>, qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>, Hanna Reitz <hreitz@redhat.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Anthony Perard <anthony.perard@citrix.com>,
 =?UTF-8?Q?Marc-Andr=C3=A9_Lureau?= <marcandre.lureau@redhat.com>,
 Paolo Bonzini <pbonzini@redhat.com>, "Michael S. Tsirkin" <mst@redhat.com>,
 Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
 Richard Henderson <richard.henderson@linaro.org>,
 Eduardo Habkost <eduardo@habkost.net>, Marcelo Tosatti
 <mtosatti@redhat.com>, qemu-block@nongnu.org,
 xen-devel@lists.xenproject.org, kvm@vger.kernel.org
References: <20231016151909.22133-1-dwmw2@infradead.org>
 <20231016151909.22133-8-dwmw2@infradead.org>
Organization: Xen Project
In-Reply-To: <20231016151909.22133-8-dwmw2@infradead.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 16/10/2023 16:19, David Woodhouse wrote:
> This allows (non-primary) console devices to be created on the command
> line.
> 
> Signed-off-by: David Woodhouse <dwmw2@infradead.org>
> ---
>   hw/char/trace-events        |   8 +
>   hw/char/xen_console.c       | 502 +++++++++++++++++++++++++++---------
>   hw/xen/xen-legacy-backend.c |   1 -
>   3 files changed, 381 insertions(+), 130 deletions(-)
> 
> diff --git a/hw/char/trace-events b/hw/char/trace-events
> index babf4d35ea..7a398c82a5 100644
> --- a/hw/char/trace-events
> +++ b/hw/char/trace-events
> @@ -105,3 +105,11 @@ cadence_uart_baudrate(unsigned baudrate) "baudrate %u"
>   # sh_serial.c
>   sh_serial_read(char *id, unsigned size, uint64_t offs, uint64_t val) " %s size %d offs 0x%02" PRIx64 " -> 0x%02" PRIx64
>   sh_serial_write(char *id, unsigned size, uint64_t offs, uint64_t val) "%s size %d offs 0x%02" PRIx64 " <- 0x%02" PRIx64
> +
> +# xen_console.c
> +xen_console_connect(unsigned int idx, unsigned int ring_ref, unsigned int port, unsigned int limit) "idx %u ring_ref %u port %u limit %u"
> +xen_console_disconnect(unsigned int idx) "idx %u"
> +xen_console_unrealize(unsigned int idx) "idx %u"
> +xen_console_realize(unsigned int idx, const char *chrdev) "idx %u chrdev %s"
> +xen_console_device_create(unsigned int idx) "idx %u"
> +xen_console_device_destroy(unsigned int idx) "idx %u"
> diff --git a/hw/char/xen_console.c b/hw/char/xen_console.c
> index 810dae3f44..bd20be116c 100644
> --- a/hw/char/xen_console.c
> +++ b/hw/char/xen_console.c
> @@ -20,15 +20,19 @@
>    */
>   
>   #include "qemu/osdep.h"
> +#include "qemu/cutils.h"
>   #include <sys/select.h>
>   #include <termios.h>
>   
>   #include "qapi/error.h"
>   #include "sysemu/sysemu.h"
>   #include "chardev/char-fe.h"
> -#include "hw/xen/xen-legacy-backend.h"
> -
> +#include "hw/xen/xen-backend.h"
> +#include "hw/xen/xen-bus-helper.h"
> +#include "hw/qdev-properties.h"
> +#include "hw/qdev-properties-system.h"
>   #include "hw/xen/interface/io/console.h"
> +#include "trace.h"
>   
>   struct buffer {
>       uint8_t *data;
> @@ -39,16 +43,22 @@ struct buffer {
>   };
>   
>   struct XenConsole {
> -    struct XenLegacyDevice  xendev;  /* must be first */
> +    struct XenDevice  xendev;  /* must be first */
> +    XenEventChannel   *event_channel;
> +    int               dev;
>       struct buffer     buffer;
> -    char              console[XEN_BUFSIZE];
> -    int               ring_ref;
> +    char              *fe_path;
> +    unsigned int      ring_ref;
>       void              *sring;
>       CharBackend       chr;
>       int               backlog;
>   };
> +typedef struct XenConsole XenConsole;
> +
> +#define TYPE_XEN_CONSOLE_DEVICE "xen-console"
> +OBJECT_DECLARE_SIMPLE_TYPE(XenConsole, XEN_CONSOLE_DEVICE)
>   
> -static void buffer_append(struct XenConsole *con)
> +static bool buffer_append(XenConsole *con)
>   {
>       struct buffer *buffer = &con->buffer;
>       XENCONS_RING_IDX cons, prod, size;
> @@ -60,7 +70,7 @@ static void buffer_append(struct XenConsole *con)
>   
>       size = prod - cons;
>       if ((size == 0) || (size > sizeof(intf->out)))
> -        return;
> +        return false;
>   
>       if ((buffer->capacity - buffer->size) < size) {
>           buffer->capacity += (size + 1024);
> @@ -73,7 +83,7 @@ static void buffer_append(struct XenConsole *con)
>   
>       xen_mb();
>       intf->out_cons = cons;
> -    xen_pv_send_notify(&con->xendev);
> +    xen_device_notify_event_channel(XEN_DEVICE(con), con->event_channel, NULL);
>   
>       if (buffer->max_capacity &&
>           buffer->size > buffer->max_capacity) {
> @@ -89,6 +99,7 @@ static void buffer_append(struct XenConsole *con)
>           if (buffer->consumed > buffer->max_capacity - over)
>               buffer->consumed = buffer->max_capacity - over;
>       }
> +    return true;
>   }
>   
>   static void buffer_advance(struct buffer *buffer, size_t len)
> @@ -100,7 +111,7 @@ static void buffer_advance(struct buffer *buffer, size_t len)
>       }
>   }
>   
> -static int ring_free_bytes(struct XenConsole *con)
> +static int ring_free_bytes(XenConsole *con)
>   {
>       struct xencons_interface *intf = con->sring;
>       XENCONS_RING_IDX cons, prod, space;
> @@ -118,13 +129,13 @@ static int ring_free_bytes(struct XenConsole *con)
>   
>   static int xencons_can_receive(void *opaque)
>   {
> -    struct XenConsole *con = opaque;
> +    XenConsole *con = opaque;
>       return ring_free_bytes(con);
>   }
>   
>   static void xencons_receive(void *opaque, const uint8_t *buf, int len)
>   {
> -    struct XenConsole *con = opaque;
> +    XenConsole *con = opaque;
>       struct xencons_interface *intf = con->sring;
>       XENCONS_RING_IDX prod;
>       int i, max;
> @@ -141,10 +152,10 @@ static void xencons_receive(void *opaque, const uint8_t *buf, int len)
>       }
>       xen_wmb();
>       intf->in_prod = prod;
> -    xen_pv_send_notify(&con->xendev);
> +    xen_device_notify_event_channel(XEN_DEVICE(con), con->event_channel, NULL);
>   }
>   
> -static void xencons_send(struct XenConsole *con)
> +static bool xencons_send(XenConsole *con)
>   {
>       ssize_t len, size;
>   
> @@ -159,174 +170,407 @@ static void xencons_send(struct XenConsole *con)
>       if (len < 1) {
>           if (!con->backlog) {
>               con->backlog = 1;
> -            xen_pv_printf(&con->xendev, 1,
> -                          "backlog piling up, nobody listening?\n");
>           }
>       } else {
>           buffer_advance(&con->buffer, len);
>           if (con->backlog && len == size) {
>               con->backlog = 0;
> -            xen_pv_printf(&con->xendev, 1, "backlog is gone\n");
>           }
>       }
> +    return len > 0;
>   }
>   
>   /* -------------------------------------------------------------------- */
>   
> -static int store_con_info(struct XenConsole *con)
> +static bool con_event(void *_xendev)
>   {
> -    Chardev *cs = qemu_chr_fe_get_driver(&con->chr);
> -    char *pts = NULL;
> -    char *dom_path;
> -    g_autoptr(GString) path = NULL;
> +    XenConsole *con = XEN_CONSOLE_DEVICE(_xendev);
> +    bool done_something;
>   
> -    /* Only continue if we're talking to a pty. */
> -    if (!CHARDEV_IS_PTY(cs)) {
> -        return 0;
> -    }
> -    pts = cs->filename + 4;
> +    done_something = buffer_append(con);
>   
> -    dom_path = qemu_xen_xs_get_domain_path(xenstore, xen_domid);
> -    if (!dom_path) {
> -        return 0;
> +    if (con->buffer.size - con->buffer.consumed) {
> +        done_something |= xencons_send(con);
>       }
> +    return done_something;
> +}
>   
> -    path = g_string_new(dom_path);
> -    free(dom_path);
> +/* -------------------------------------------------------------------- */
>   
> -    if (con->xendev.dev) {
> -        g_string_append_printf(path, "/device/console/%d", con->xendev.dev);
> -    } else {
> -        g_string_append(path, "/console");
> +static void xen_console_disconnect(XenDevice *xendev, Error **errp)
> +{
> +    XenConsole *con = XEN_CONSOLE_DEVICE(xendev);
> +
> +    qemu_chr_fe_set_handlers(&con->chr, NULL, NULL, NULL, NULL,
> +                             con, NULL, true);
> +

nit: extraneous blank line by the looks of it.

With that fixed...

Reviewed-by: Paul Durrant <paul@xen.org>



From xen-devel-bounces@lists.xenproject.org Tue Oct 24 13:12:25 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 13:12:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621943.968908 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvHCk-0003kF-PR; Tue, 24 Oct 2023 13:12:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621943.968908; Tue, 24 Oct 2023 13:12: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 1qvHCk-0003k8-MV; Tue, 24 Oct 2023 13:12:18 +0000
Received: by outflank-mailman (input) for mailman id 621943;
 Tue, 24 Oct 2023 13: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=JtWs=GG=citrix.com=prvs=654e64a5b=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qvHCj-0003ga-DV
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 13:12:17 +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 f192a6f9-726e-11ee-9b0e-b553b5be7939;
 Tue, 24 Oct 2023 15:12:14 +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;
 24 Oct 2023 09:12:06 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by PH0PR03MB6526.namprd03.prod.outlook.com (2603:10b6:510:b6::10)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.14; Tue, 24 Oct
 2023 13:12:02 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::acf0:ce2b:1634:5aee]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::acf0:ce2b:1634:5aee%6]) with mapi id 15.20.6933.011; Tue, 24 Oct 2023
 13:12: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: f192a6f9-726e-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1698153134;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=cyy9HceQ8ZD/gvFKkRpJ3J7rKRpQ7pOzO3S+231ADYY=;
  b=FHGQvSfpkgr5R3xvInMOL0G9QKUDC5o83YePjZ5R1W1NZZuB6kv6phFY
   dqdBDCwdE2wcvXH2hgWN1BXkzy3BrQXWEHIRGYLAz+4qquuYlMneijz57
   K39HAACHZdYKNyDOXmNd/14kSIGwE5jY9oQUO/JEGbwU5aA+rTegcvSLC
   M=;
X-CSE-ConnectionGUID: BOPujnbHQASbuTJ/i5t0xw==
X-CSE-MsgGUID: bD6iHXFlSFGkYguuZ4j4iQ==
X-IronPort-RemoteIP: 104.47.57.169
X-IronPort-MID: 129266431
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:mzxwV6u4JJsJcGd0VxCSeiGPCufnVHBfMUV32f8akzHdYApBsoF/q
 tZmKWqDM/feYDHxc9x3Odu/ox5UvZCEmt5mS1Bpryg9FyIb+JbJXdiXEBz9bniYRiHhoOCLz
 O1FM4Wdc5pkJpP4jk3wWlQ0hSAkjclkfpKlVaicfHg3HFc4IMsYoUoLs/YjhYJ1isSODQqIu
 Nfjy+XSI1bg0DNvWo4uw/vrRChH4rKq41v0gnRkPaoQ5QeEyyFMZH4iDfrZw0XQE9E88tGSH
 44v/JnhlkvF8hEkDM+Sk7qTWiXmlZaLYGBiIlIPM0STqkAqSh4ai87XB9JFAatjsB2bnsgZ9
 Tl4ncfYpTHFnEH7sL91vxFwS0mSNEDdkVPNCSDXXce7lyUqf5ZwqhnH4Y5f0YAwo45K7W9yG
 fMwAhc1cxKFjcKP6YmxV9VOwcV+MJH7I9ZK0p1g5Wmx4fcOZ7nmGvyPyfoGmTA6i4ZJAOrUY
 NcfZXx3dhPcbhZTO1ARTpUjgOOvgXq5eDpdwL6XjfNvvy6Pk0osj/60bou9lt+iHK25mm6Co
 W3L5SLhCwwyP92D0zuVtHmrg4cjmAuiAtNISuPkracCbFu7zEBNCT0me1+Aj9a6u0GjRuADK
 RAVw397xUQ13AnxJjXnZDW6qnOZuh8XW/JLDvY3rgqKz8L8/AKxFmUCCDlbZ7QOpMIwADAny
 FKNt9foHiB09q2YT2qH8bWZpi/0PjIaRVLufgcBRAoBptXm/oc6i0uWSs45SfDkyNroBTv33
 jaG6jAkgKkehtIK0KP9+k3bhzWrpd7CSQtdChjrY19JJzhRPOaND7FEI3CChRqcBO51lmW8g
 UU=
IronPort-HdrOrdr: A9a23:LpBY7aA7FSHq4enlHela55DYdb4zR+YMi2TDt3oddfWaSKylfq
 GV7ZImPHrP4gr5N0tOpTntAse9qDbnhPxICOoqTNCftWvdyQiVxehZhOOP/9SjIVyaygc078
 xdmsNFebnN5DZB7PoT4GODYqkdKNvsytHXuQ8JpU0dPD2DaMtbnndE4h7wKDwOeOHfb6BJaa
 Z14KB81kKdUEVSVOuXLF8fUdPOotXa/aiWHSLvV3YcmXKzZSrD0s+BLySl
X-Talos-CUID: 9a23:D1z61GzawPtsz/4fqVP9BgU+Pfg4cHvX7E75GEWlNUQuSeCJEU+PrfY=
X-Talos-MUID: 9a23:BYYUxwX1hPlrbM3q/DXA2jBCBOls2IqBC3ECjIg058vYNBUlbg==
X-IronPort-AV: E=Sophos;i="6.03,247,1694750400"; 
   d="scan'208";a="129266431"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=VjXXslDTGGofjR3mzdoclNkeyi5ADWV9AfzYPOmxp0o98metT2M0f81Fvxq+KqH2w/Olpg1K9bAXlbBpq8Lxi1sKq03VEVffw1LGZ8s7PNYJMYjt+lCPdANIr+OJ0jZLgVK4BfGBpogU7P1o6fJgFvcxnImxsThTz4pLIk2+QHmxNoFp151OOxal9NL5OauUznWyvPLDVB8ABNu5mQFwKrSQluERst6BE1oaasZq2Y/BGngtQuZqebxpvqabMu7ZeacPacK+ilV2RYb8aCLdVmUnBlP5Cu3u4D1zE3tNsgW/2C7X9SP6nVfJyduTLenzg+CsR/1QGz7bVjBAMUs/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=saZVC/6Vw8v4dE76WXhpe7fw/ov4sSCfoCLR6/1spmM=;
 b=WzCF/p0QZl4yUFg4oGQigCJ5zs71/mvnh5SafLIRdel6wIm14tWX6K7pCf1Z/dezyMJmZvIYOBpTC6gyUlexCRmNvBv5htI0zu9e/pmd8wGtJRk5ppPuSGDo6Tp6hD/1P4mm1BySwMLdpiMGcYM/sDpc+Lwom8xVg0oIxWSujtk6P4SOvLnaLwg93IH+r0oGaZdBNrdBVWpXlqi36GC82QJ/pu2GO+mXFjISoNcOGED1ynNPP07jYukUX/FsBb12hvqyFTsRjCaEODqPwbVXrvR6Bn4rXP45amkRAo/hXpWDqMifCW8tyRzJL7NBLIqn6mZEm5R4W729Xb1yB3/7xQ==
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=saZVC/6Vw8v4dE76WXhpe7fw/ov4sSCfoCLR6/1spmM=;
 b=WRG1UtvHTEPxVrPwm8dOm8uOH70Z/Pj1wRlo3ZbLdvF2sythuFL9osSuie9qxmCKSn0MSjY8lOSzHT4DZb/41zxN0t1YskaMWIB8cITI/i8CtUL05DjYJXFiogQWYEt5T59vorL8E0nhCYPEehk3soGpDfSvruiaI8NFrzd8jQ8=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Tue, 24 Oct 2023 15:11:57 +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/i8259: do not assume interrupts always target CPU0
Message-ID: <ZTfCnbkvyO39GXS5@macbook>
References: <20231023124635.44266-1-roger.pau@citrix.com>
 <a525cc49-69e7-c509-61d4-a2456b3fdbcc@suse.com>
 <ZTeY6JNbNfTVCpib@macbook>
 <2c5a5b6f-5c67-e46c-765c-81999ac1e11b@suse.com>
 <ZTesLTIulycE1s5d@macbook>
 <c11b0ace-f2b7-8d59-0112-fed6a5de0d03@suse.com>
 <36e76621-01ac-d5a1-9359-30544bb916ef@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <36e76621-01ac-d5a1-9359-30544bb916ef@suse.com>
X-ClientProxiedBy: LNXP265CA0044.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:5c::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_|PH0PR03MB6526:EE_
X-MS-Office365-Filtering-Correlation-Id: 97c544d5-e3e8-4245-8cf7-08dbd492cfaa
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:
	E1rEsjezREuS9RS+Wn8j+nyEDW+Cx9vANEjvhDI5VuxodYcj/3crI0ACOZexrYn4Ozy0ly/HU2LZy1KI0C7YP1BShiQwDqOhbmsK8xlOi6AuAqb3jM2YuZPF/Ez2WY3wuQvwybnh7zSLJoulgmtmIJqYcG4YqtgH+HOvLJ1Bd56pYDmEyVQQFAIyoZKS29/eabt+qUHqP/W5Q5wVVBVymCmIc2wdEbBG0YHldVCtkeg05YgomWjm3A2I2rxSY1ogBm19bJqre96Z95/okF1wWsGXvOeFNKYjF5httE8bmTEOBzc4sI4YYcGU6Sb9YgetVs8FXc0076CJqDjibvIRjz+Z85RPFcAIZBx1IoV53aovmK5T0+WIxe99RmDYvb8Pg62TfACLH4AFFl7d/TKHC8hgK9HLRsXmgBcsFsv7D9tbEUUgt2FPRIgA7nOinfG4PoIS4e8uCiCbIqgrslDmPLCVxV2WT2OImxaHUZV9OTFQVhdGAyQGHyYdtcAHvOsO/UGk12qgh+7CXPpLNFuZqX32JyN0IzKeO+t94LlHVQE93KbOvEMN9y9ttQ0NE3MW
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)(366004)(39860400002)(136003)(230922051799003)(451199024)(1800799009)(186009)(64100799003)(4326008)(8936002)(8676002)(41300700001)(2906002)(5660300002)(33716001)(66899024)(83380400001)(53546011)(6512007)(6666004)(9686003)(6506007)(86362001)(38100700002)(85182001)(82960400001)(26005)(6486002)(478600001)(66556008)(316002)(54906003)(66946007)(6916009)(66476007);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?bVZRNjFLbzg2YTBndnBYZmgyZVArNEpZYlJ4V2t6WFZ4eCtKRmRCQjZDVUJz?=
 =?utf-8?B?YnhWeVdpYWt1OHdDUTF5U3N0R3hhdndZS0VlZ2MvU0JjeExiUkFsL25wTERB?=
 =?utf-8?B?ODVWSWdjTUFMSG5zRFZlNHoxaEZ1M1c0NVJ6NFV4a04xQ1phM1NyNlR1ZklZ?=
 =?utf-8?B?NnhoUi9ZLzZXRTg2SWZ0bU9nOExodS95MW5VREhsK05ka2ZHL1VQTjdNNHJw?=
 =?utf-8?B?aFhiTE9zVmpoRW5QSzBLR3RLVUpzVUNtN2VrekZERGk5VVZoeHNXRkJrcG4z?=
 =?utf-8?B?YVhxcFJoUm5PZDVpVWQ4ZEFLalorWXRrUzJLSE1DVk81aHBHM1N4QkJUa1dv?=
 =?utf-8?B?UEM2eUtFQjJ6NFk0SlhkVXdFN204VEV1bjZqUUVtZGRtcU5WdTIyVVZteEl2?=
 =?utf-8?B?RlRUMVp0QmkxNGdvbVcxOFdaYlhMVG1FY2thMWdOL1FSSUIyVW1GbFVnNzlu?=
 =?utf-8?B?VzN0ZHNjTmVlSEhxMmNBa0lwZmltamxUN0lSSmp4NjllTTJZN0lwdDNPam9S?=
 =?utf-8?B?NC9HeEZtNCtXVU5ZV1lGSTl3R28ybGx2dCtzd2hWRzR5bEtLdlYvUHZOOGhm?=
 =?utf-8?B?MmRBREMwZXczWFgwVEg5MndFYmJiK2xkVXQvdUx5S21xZExZcDFqd3RWOHRE?=
 =?utf-8?B?bFVTZzdNWE1POFJOeFh4WjV2SFp0Z24rL1UrZzdPcmZnZStrL3lXTXRReThn?=
 =?utf-8?B?amxqMXgyZm1OSndpdm53SjFsbTVqSEVkK3BjT2g2bzdpenBkeXV6OHJIQVAy?=
 =?utf-8?B?OTUzWVN5TWRNNnJDbEhyT3ZWSU5hczJVY0lGWHRORkNLRjJQWFBUbk1JeFVK?=
 =?utf-8?B?RGIzUndrSUxEcFl6Y3ZwNk5BRWZaSWUyYUJOY24vRzBqcjFpdDlvMFA5M3Vn?=
 =?utf-8?B?eXRQeTFIaGhFeVpYemkwL1NVQlJQYnd2SXVGSXhXSVVhMDU0TjJBbHphNEdG?=
 =?utf-8?B?eG5wWmNBTDNrUHpvOCszaUFkWGY2c25pVy9RcHQraXVUZnpubisyWm4vc1NM?=
 =?utf-8?B?UVowdzdYS2llUm05S0JaQTVXWDkzaG9EVEJheEYvcE9HNzJ6dCtacVBVWTYw?=
 =?utf-8?B?WEtpRXo3YmJDa1dnNDE3NnRhalQ2YW94VUUwa0RzbHdLelZNSWlrdi8yTkNi?=
 =?utf-8?B?QmNUVFR1OGpQL2NMZkxjU2dYcEtyR1dna2RxeEFtMGlvdVJud3htUDZjV3Rl?=
 =?utf-8?B?TGFCeStyM3VTYVJ5SnhOYkh6dzlIc29UM1RoV0F3cmtLbE0vYXZrSHEwTlZH?=
 =?utf-8?B?alFqaTFqS2RsNlkvUjI2M0d3QzgvYnZkcWQvdHppbEtQV1hJTGZGWVJxOGFV?=
 =?utf-8?B?dXRJeGllcjBUREF5M2ZMYjd6emY3YXppWFBOamwwdmpXa1FwSTlPb2VFNHJl?=
 =?utf-8?B?Y3RBWmV5eU1NMjVvdmFDVG1hUG52M09DeEMwOWptTkxlZ2pIVCs3a2swcU5z?=
 =?utf-8?B?WEdhQ0hyeFpKbHFLUEdodUZpazZrWjM0L2dmUDNSME9Vakhic2RRdFpMb3Ba?=
 =?utf-8?B?dDBSaXk5dVBLMHJvWEM1MnJ3UHVrNW5SVFYxMzNYbmk1dWJaUlZWM3hOb1JY?=
 =?utf-8?B?dnQ0KzVPblBaZVR6VzFLYmtRMlAwSFA3MDdwTk91dXd1ZGQ0WnpucHVhcXNp?=
 =?utf-8?B?a3pyNXhIWFBtVWE3OEEycmtkS1BkZWVNWlgvYnhIY0JpOTh3SklCMXZIMTF4?=
 =?utf-8?B?RlNTU2x1RmhweThFTVFUUzBzY0tVUmhSTVJ1Uk5sbk5GQkN1enpvV05MTkgz?=
 =?utf-8?B?MGxMQmgwRGVvUzl1ZWxaN0ExR2hpekdSYXh2S3pHYXo1dTFpenAzUXUzdFNN?=
 =?utf-8?B?TGhZRE5MSUg1ampLbDNCQks1cHNkeFVROUtxM1dpQktnUGdEeTYwck0wMGhZ?=
 =?utf-8?B?c3dwcXJtRWN1OEo5aEZldkNBRkZnNWlEVitsaFJNRjRCdXowZ2loVVk4ampr?=
 =?utf-8?B?N0Y2UGhWTHVvZ2xiaW40V3ArbHNKVXRub0hJK3gybVZwZURFcVhXOE1yL3lG?=
 =?utf-8?B?OW51VW4vU0JOcEgra1FQcmRpOFFJdXBGamFya0pQN2M3UEtvNE9iMkZtSTZr?=
 =?utf-8?B?RG5hZ3FkbnUzR2VIeVBJVGZNTjkreU8xNkFEeG9uQmdjRjJScnB6VGlTZjd5?=
 =?utf-8?Q?KfKTrZd9JIJ9CewUWBauAwsBy?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	ur04v42DCZ4Rc+lG7hcuoS45cvW1jr+NWcb3sXfaGrH7YixadRsXEO3CYzvk0dpS3BezBPpSW7Vqxu4kw66eGSJ9eXBE77Xf3BATzvwaw7kUtzUzF1FmY+aMNQdeptTIzeo1bcB4m0keflYSxA5iTRGjoDscO0SGPKmQZ7LJwNDMk27usQTrs9Pn8D9Bhex5GXRuY1+HZCiXOPIkNTslHhV0RqsKW1rnQDvwwAF/wj1nPnAQTegK3F7CAWIy53taAdM/h6I3u82z1l4z9yLxF76WkzHMz+kz92R6walTA6uQvW77FOer4Fw3v4IqtNh5Qfz91Zis0qjp1UkEnjaVFuxqAte5h4gC28TGHAqlJPfc5NyUAnorYAzVSZqtdHlmmYwC4XSKTHv7Irb3zdKKd/LeEBJWoaU9A0tR0GgniJFit8t5WpSXniT91TYX1pmZwU1QM1kVSiaphZFfxR5n965nkEomUGX8D1SkouhD1W/WSqvhXbwCe1AuyoFP4hHpQnAu6fVhPkNw069XYERz1UL3WWStAwU8+opTuONonnSdJundZqce79ZwXC9iylbODGr94tAwBiEll9jesbVloevcuv1o4vfGom+rv54TQVtHhAi2+h9Jj8ZZQ6TRqTWy2kI3Ns+ZY3Fn6KAUmJvoD+VXTNSqLkSKEtQOkzGf0T7XO3E8PQjAzc7udA8P6cPTxg2oTjhkXz2p37AExtqAltpukWJnLBCF8Oc52xatneorRE71mLK2soPd3ChMAuPLF7UeDNH+tBE1BP3UejxwOl4hsXDktG0uyrA7pSBLwp4Pg1qQQXxnqUeGzbWU4vrRcXv/AciwmJIRO6hPVeme4g==
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 97c544d5-e3e8-4245-8cf7-08dbd492cfaa
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 24 Oct 2023 13:12:02.0801
 (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: cUWiJwl1IKK6C9PVwpiU0UvDb9lb9qMjgJ4OH0aCqOe263057JnEwD6Wh+Ztqc22W8TmZd7wejlSBhohiVAnEA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR03MB6526

On Tue, Oct 24, 2023 at 02:08:42PM +0200, Jan Beulich wrote:
> On 24.10.2023 14:06, Jan Beulich wrote:
> > On 24.10.2023 13:36, Roger Pau Monné wrote:
> >> What is your reasoning for wanting the smp_processor_id() check in
> >> the caller rather than bogus_8259A_irq()?  It does seem fine to me to
> >> do such check in bogus_8259A_irq(), as whether the IRQ is bogus also
> >> depends on whether it fired on the BSP or any of the APs.
> > 
> > bogus_8259A_irq() shouldn't be concerned about the CPU it runs on; it
> > should solely deal with 8259A aspects.
> 
> Or to put it differently: The function is supposed to tell whether an
> IRQ is bogus from the pov of the PIC. The caller decides under what
> conditions to actually invoke this checking.

I understand that the PIC itself is agnostic as to which the CPU the
irq (vector) has been injected, but the added CPU vendor checks are
there to deal with possibly a bogus PIC implementation, and hence
doesn't feel that off place IMO.

Anyway, will adjust as requested, albeit I think it hampers
readability and that's more valuable than whether the check is
contextually better fit in do_IRQ() or bogus_8259A_irq().

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 13:20:00 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 13:20:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621948.968917 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvHK4-0007BP-Ka; Tue, 24 Oct 2023 13:19:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621948.968917; Tue, 24 Oct 2023 13:19: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 1qvHK4-0007BI-Hv; Tue, 24 Oct 2023 13:19:52 +0000
Received: by outflank-mailman (input) for mailman id 621948;
 Tue, 24 Oct 2023 13:19: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=+b+W=GG=gmail.com=xadimgnik@srs-se1.protection.inumbo.net>)
 id 1qvHK3-0007BC-02
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 13:19:51 +0000
Received: from mail-ua1-x936.google.com (mail-ua1-x936.google.com
 [2607:f8b0:4864:20::936])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 0177b078-7270-11ee-9b0e-b553b5be7939;
 Tue, 24 Oct 2023 15:19:48 +0200 (CEST)
Received: by mail-ua1-x936.google.com with SMTP id
 a1e0cc1a2514c-7b67fef3fd4so1204461241.1
 for <xen-devel@lists.xenproject.org>; Tue, 24 Oct 2023 06:19:48 -0700 (PDT)
Received: from [192.168.6.66] (54-240-197-238.amazon.com. [54.240.197.238])
 by smtp.gmail.com with ESMTPSA id
 f7-20020ac5c9a7000000b0049d6e5e8610sm1109415vkm.19.2023.10.24.06.19.43
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 24 Oct 2023 06:19: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: 0177b078-7270-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698153587; x=1698758387; 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=8uz4/aKpiq6hPOqfpQF/xQFDhJm3XWJwzBC0Qx2lRx0=;
        b=RTL8gF18vWVfZ/p8NmDDGBt8J8DBrPxgbSAV3C6Kq5Mpe14+M0w88df3hQqDxdKyb5
         lmGWXpFBjy0sx4iAKVRoFheEUpBR1wiy2HArcS4fLPFYQ+TEflmipz3adgNDd0QiS6fA
         /bk6QlaOTDnOVHRu24XPo03ndeIAITcFl52/JMMtPaxA6kPCzqULSSm7J5ubOOF0rSMQ
         gcx3DpqRjBJkDxhUIgCZKRrhUmrZjvU86gxOz1S8VBaCBqIAWfyazJeLo8F7QWTFz1V3
         7UFumcYLD7RaOU5tHVpSRNW0QN4x/UESU0aM/pAot1FA4HnYNN/Mp4GfwIoYnaQCEfgF
         3N/g==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698153587; x=1698758387;
        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=8uz4/aKpiq6hPOqfpQF/xQFDhJm3XWJwzBC0Qx2lRx0=;
        b=DsZyE/syLShkMasdA727w2567ur0BSQuWrm8yVeIxcmX4MRLF8HNXKrkScNxWqGkZ2
         p7Py7oOmNKhwVDCMKfPMMhSLmJUqQctAOVGECWBDlCTT7z/PtTtihxy883WiFYOR/Sw9
         MXENGOOwy7irhZUR5UOmmTuusqICDURv5HYJ9bY5BZxmPihf5u7uCJYxpNPmQwMKDM0K
         xZJqWm7o2X0H+n3XtHMDnmb5JWasvKVYw4wtj3Eh6bk5TEox7I+TLkQgZF2x/L3mQ1Lv
         KWDm5STYcTf7bs8saUj/VZi1z1z303nXDLvAi9WfXhBpP8+w7vBhdGBRUj+i10tLLulP
         VVZQ==
X-Gm-Message-State: AOJu0YxOZFnKfL6YBIoTHdFtZmpld4P+9e4f2lzpyt79EQpFpeTrN8gg
	ubhuhQHyz0SksoGKnD5gq58=
X-Google-Smtp-Source: AGHT+IGnWoo4jNnLB6831fFx3CoKgHFT0A9Kla2MaDjWE9V1b5hkBs1aVIykQqV5tvtiP+hHD7VG/Q==
X-Received: by 2002:a05:6122:243:b0:4a0:8a35:6686 with SMTP id t3-20020a056122024300b004a08a356686mr7068725vko.11.1698153586115;
        Tue, 24 Oct 2023 06:19:46 -0700 (PDT)
From: Paul Durrant <xadimgnik@gmail.com>
X-Google-Original-From: Paul Durrant <paul@xen.org>
Message-ID: <8f51963a-1875-4f11-939e-e7b6c7429da5@xen.org>
Date: Tue, 24 Oct 2023 14:19:42 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Reply-To: paul@xen.org
Subject: Re: [PATCH 08/12] hw/xen: do not repeatedly try to create a failing
 backend device
Content-Language: en-US
To: David Woodhouse <dwmw2@infradead.org>, qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>, Hanna Reitz <hreitz@redhat.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Anthony Perard <anthony.perard@citrix.com>,
 =?UTF-8?Q?Marc-Andr=C3=A9_Lureau?= <marcandre.lureau@redhat.com>,
 Paolo Bonzini <pbonzini@redhat.com>, "Michael S. Tsirkin" <mst@redhat.com>,
 Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
 Richard Henderson <richard.henderson@linaro.org>,
 Eduardo Habkost <eduardo@habkost.net>, Marcelo Tosatti
 <mtosatti@redhat.com>, qemu-block@nongnu.org,
 xen-devel@lists.xenproject.org, kvm@vger.kernel.org
References: <20231016151909.22133-1-dwmw2@infradead.org>
 <20231016151909.22133-9-dwmw2@infradead.org>
Organization: Xen Project
In-Reply-To: <20231016151909.22133-9-dwmw2@infradead.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 16/10/2023 16:19, David Woodhouse wrote:
> From: David Woodhouse <dwmw@amazon.co.uk>
> 
> If xen_backend_device_create() fails to instantiate a device, the XenBus
> code will just keep trying over and over again each time the bus is
> re-enumerated, as long as the backend appears online and in
> XenbusStateInitialising.
> 
> The only thing which prevents the XenBus code from recreating duplicates
> of devices which already exist, is the fact that xen_device_realize()
> sets the backend state to XenbusStateInitWait. If the attempt to create
> the device doesn't get *that* far, that's when it will keep getting
> retried.
> 
> My first thought was to handle errors by setting the backend state to
> XenbusStateClosed, but that doesn't work for XenConsole which wants to
> *ignore* any device of type != "ioemu" completely.
> 
> So, make xen_backend_device_create() *keep* the XenBackendInstance for a
> failed device, and provide a new xen_backend_exists() function to allow
> xen_bus_type_enumerate() to check whether one already exists before
> creating a new one.
> 
> Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
> ---
>   hw/xen/xen-backend.c         | 27 +++++++++++++++++++++------
>   hw/xen/xen-bus.c             |  3 ++-
>   include/hw/xen/xen-backend.h |  1 +
>   3 files changed, 24 insertions(+), 7 deletions(-)
> 

Reviewed-by: Paul Durrant <paul@xen.org>



From xen-devel-bounces@lists.xenproject.org Tue Oct 24 13:20:53 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 13:20:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621950.968927 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvHL1-00004u-TY; Tue, 24 Oct 2023 13:20:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621950.968927; Tue, 24 Oct 2023 13:20: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 1qvHL1-0008WT-Qq; Tue, 24 Oct 2023 13:20:51 +0000
Received: by outflank-mailman (input) for mailman id 621950;
 Tue, 24 Oct 2023 13: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=jXWl=GG=casper.srs.infradead.org=BATV+e2898748ca55db067849+7366+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qvHL0-0008WH-6v
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 13:20:50 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 25d618b1-7270-11ee-98d5-6d05b1d4d9a1;
 Tue, 24 Oct 2023 15:20:49 +0200 (CEST)
Received: from [2001:8b0:10b:5:758e:a1c4:bc7:e7a7]
 (helo=u3832b3a9db3152.ant.amazon.com)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qvHKx-002hsD-Du; Tue, 24 Oct 2023 13: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>
X-Inumbo-ID: 25d618b1-7270-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=MIME-Version:Content-Type:References:
	In-Reply-To:Date:Cc:To:From:Subject:Message-ID:Sender:Reply-To:
	Content-Transfer-Encoding:Content-ID:Content-Description;
	bh=S8kl86YO4nEZb1ohOdtUKIb9g4qnLomj2wMLDqgPTPw=; b=kP0BHKlArDKnRbF9vbeuoQ5ZGZ
	ml6LPhr8yo7RuinwaaUefVtm2clBxCbsOrekm5FqdzMg/nlvBXndfe3N+hHnIrBUfO6H2gUIfCTvF
	NdWJjHVlShFJEsP79f76TyFpyUt6jnlBaUia+RokzrgfB8dI9ZDajci3Y+TcEOaieRDRgR2npAzPd
	E/RyXMf3kPGGNXr0mF/o2rlQVV6GwRSRTr22RPKxMD5MMcDcdXNy2uMKkp5W07H6eNBds4hZlUW2y
	rcZM5DobvPIbv9zizhkVKlFrVyo0Oos584u4Ofw+8ZVLVxUWCzToHOOzCJZs3YCbyi54J3/ffyf/X
	98GkTp+w==;
Message-ID: <8330e24fb708381d66b9486a3c16d02aff382867.camel@infradead.org>
Subject: Re: [PATCH 02/12] hw/xen: select kernel mode for per-vCPU event
 channel upcall vector
From: David Woodhouse <dwmw2@infradead.org>
To: paul@xen.org, qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>, Hanna Reitz <hreitz@redhat.com>, Stefano
 Stabellini <sstabellini@kernel.org>, Anthony Perard
 <anthony.perard@citrix.com>,  =?ISO-8859-1?Q?Marc-Andr=E9?= Lureau
 <marcandre.lureau@redhat.com>, Paolo Bonzini <pbonzini@redhat.com>,
 "Michael S. Tsirkin" <mst@redhat.com>, Marcel Apfelbaum
 <marcel.apfelbaum@gmail.com>, Richard Henderson
 <richard.henderson@linaro.org>, Eduardo Habkost <eduardo@habkost.net>, 
 Marcelo Tosatti <mtosatti@redhat.com>, qemu-block@nongnu.org,
 xen-devel@lists.xenproject.org, kvm@vger.kernel.org
Date: Tue, 24 Oct 2023 14:20:46 +0100
In-Reply-To: <9eeb2cac-2f22-4e42-9765-2fd5e5a960fa@xen.org>
References: <20231016151909.22133-1-dwmw2@infradead.org>
	 <20231016151909.22133-3-dwmw2@infradead.org>
	 <9eeb2cac-2f22-4e42-9765-2fd5e5a960fa@xen.org>
Content-Type: multipart/signed; micalg="sha-256"; protocol="application/pkcs7-signature";
	boundary="=-+mFwYZ1cqARasn+DRals"
User-Agent: Evolution 3.44.4-0ubuntu2 
MIME-Version: 1.0
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html


--=-+mFwYZ1cqARasn+DRals
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Tue, 2023-10-24 at 13:29 +0100, Paul Durrant wrote:
>=20
> > +=C2=A0=C2=A0=C2=A0 /* If the guest has set a per-vCPU callback vector,=
 prefer that. */
> > +=C2=A0=C2=A0=C2=A0 if (gsi && kvm_xen_has_vcpu_callback_vector()) {
> > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 in_kernel =3D kvm_xen_has_c=
ap(EVTCHN_SEND);
> > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 gsi =3D 0;
> > +=C2=A0=C2=A0=C2=A0 }
> > +
>=20
> So this deals with setting the callback via after setting the upcall=20
> vector. What happens if the guest then disables the upcall vector (by
> setting it to zero)? Xen checks 'v->arch.hvm.evtchn_upcall_vector !=3D 0'=
=20
> for every event delivery.

Qemu and KVM check before each delivery too. For a vCPU other than
vCPU0, if it isn't the per-vCPU lapic upcall vector, and it isn't the
system-wide vector, the interrupt isn't supposed to be delivered (the
GSI is tied to vCPU0).

However, we don't support dynamically disabling the kernel acceleration
(telling it to forget about the VIRQs, IPIs so that we can handle them
in userspace from now on). Not except for soft reset, when they're all
torn down anyway.

I don't really *want* to support that either. Better to make the kernel
mode unconditional, having it signal userspace via an eventfd when
vCPU0 has an upcall pending and it's GSI or INTx. But that's a *pair*
of eventfds, one for the resampler... and first I have to fix Qemu's
interrupt controller models to do the resampling properly on ack (qv).

Right now this works for all guests in practice and I have other yaks
to shave :)



--=-+mFwYZ1cqARasn+DRals
Content-Type: application/pkcs7-signature; name="smime.p7s"
Content-Disposition: attachment; filename="smime.p7s"
Content-Transfer-Encoding: base64

MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgEFADCABgkqhkiG9w0BBwEAAKCCEkQw
ggYQMIID+KADAgECAhBNlCwQ1DvglAnFgS06KwZPMA0GCSqGSIb3DQEBDAUAMIGIMQswCQYDVQQG
EwJVUzETMBEGA1UECBMKTmV3IEplcnNleTEUMBIGA1UEBxMLSmVyc2V5IENpdHkxHjAcBgNVBAoT
FVRoZSBVU0VSVFJVU1QgTmV0d29yazEuMCwGA1UEAxMlVVNFUlRydXN0IFJTQSBDZXJ0aWZpY2F0
aW9uIEF1dGhvcml0eTAeFw0xODExMDIwMDAwMDBaFw0zMDEyMzEyMzU5NTlaMIGWMQswCQYDVQQG
EwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYD
VQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50
aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC
AQEAyjztlApB/975Rrno1jvm2pK/KxBOqhq8gr2+JhwpKirSzZxQgT9tlC7zl6hn1fXjSo5MqXUf
ItMltrMaXqcESJuK8dtK56NCSrq4iDKaKq9NxOXFmqXX2zN8HHGjQ2b2Xv0v1L5Nk1MQPKA19xeW
QcpGEGFUUd0kN+oHox+L9aV1rjfNiCj3bJk6kJaOPabPi2503nn/ITX5e8WfPnGw4VuZ79Khj1YB
rf24k5Ee1sLTHsLtpiK9OjG4iQRBdq6Z/TlVx/hGAez5h36bBJMxqdHLpdwIUkTqT8se3ed0PewD
ch/8kHPo5fZl5u1B0ecpq/sDN/5sCG52Ds+QU5O5EwIDAQABo4IBZDCCAWAwHwYDVR0jBBgwFoAU
U3m/WqorSs9UgOHYm8Cd8rIDZsswHQYDVR0OBBYEFAnA8vwL2pTbX/4r36iZQs/J4K0AMA4GA1Ud
DwEB/wQEAwIBhjASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEF
BQcDBDARBgNVHSAECjAIMAYGBFUdIAAwUAYDVR0fBEkwRzBFoEOgQYY/aHR0cDovL2NybC51c2Vy
dHJ1c3QuY29tL1VTRVJUcnVzdFJTQUNlcnRpZmljYXRpb25BdXRob3JpdHkuY3JsMHYGCCsGAQUF
BwEBBGowaDA/BggrBgEFBQcwAoYzaHR0cDovL2NydC51c2VydHJ1c3QuY29tL1VTRVJUcnVzdFJT
QUFkZFRydXN0Q0EuY3J0MCUGCCsGAQUFBzABhhlodHRwOi8vb2NzcC51c2VydHJ1c3QuY29tMA0G
CSqGSIb3DQEBDAUAA4ICAQBBRHUAqznCFfXejpVtMnFojADdF9d6HBA4kMjjsb0XMZHztuOCtKF+
xswhh2GqkW5JQrM8zVlU+A2VP72Ky2nlRA1GwmIPgou74TZ/XTarHG8zdMSgaDrkVYzz1g3nIVO9
IHk96VwsacIvBF8JfqIs+8aWH2PfSUrNxP6Ys7U0sZYx4rXD6+cqFq/ZW5BUfClN/rhk2ddQXyn7
kkmka2RQb9d90nmNHdgKrwfQ49mQ2hWQNDkJJIXwKjYA6VUR/fZUFeCUisdDe/0ABLTI+jheXUV1
eoYV7lNwNBKpeHdNuO6Aacb533JlfeUHxvBz9OfYWUiXu09sMAviM11Q0DuMZ5760CdO2VnpsXP4
KxaYIhvqPqUMWqRdWyn7crItNkZeroXaecG03i3mM7dkiPaCkgocBg0EBYsbZDZ8bsG3a08LwEsL
1Ygz3SBsyECa0waq4hOf/Z85F2w2ZpXfP+w8q4ifwO90SGZZV+HR/Jh6rEaVPDRF/CEGVqR1hiuQ
OZ1YL5ezMTX0ZSLwrymUE0pwi/KDaiYB15uswgeIAcA6JzPFf9pLkAFFWs1QNyN++niFhsM47qod
x/PL+5jR87myx5uYdBEQkkDc+lKB1Wct6ucXqm2EmsaQ0M95QjTmy+rDWjkDYdw3Ms6mSWE3Bn7i
5ZgtwCLXgAIe5W8mybM2JzCCBhQwggT8oAMCAQICEQDGvhmWZ0DEAx0oURL6O6l+MA0GCSqGSIb3
DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYD
VQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28g
UlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMB4XDTIyMDEwNzAw
MDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJARYTZHdtdzJAaW5mcmFkZWFkLm9y
ZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3GpC2bomUqk+91wLYBzDMcCj5C9m6
oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZHh7htyAkWYVoFsFPrwHounto8xTsy
SSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT9YgcBqKCo65pTFmOnR/VVbjJk4K2
xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNjP+qDrh0db7PAjO1D4d5ftfrsf+kd
RR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy2U+eITZ5LLE5s45mX2oPFknWqxBo
bQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3BgBEmfsYWlBXO8rVXfvPgLs32VdV
NZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/7auNVRmPB3v5SWEsH8xi4Bez2V9U
KxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmdlFYhAflWKQ03Ufiu8t3iBE3VJbc2
5oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9aelIl6vtbhMA+l0nfrsORMa4kobqQ5
C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMBAAGjggHMMIIByDAfBgNVHSMEGDAW
gBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeDMcimo0oz8o1R1Nver3ZVpSkwDgYD
VR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYwFAYIKwYBBQUHAwQGCCsGAQUFBwMC
MEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYBBQUHAgEWF2h0dHBzOi8vc2VjdGln
by5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9jcmwuc2VjdGlnby5jb20vU2VjdGln
b1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1haWxDQS5jcmwwgYoGCCsGAQUFBwEB
BH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdvLmNvbS9TZWN0aWdvUlNBQ2xpZW50
QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAjBggrBgEFBQcwAYYXaHR0cDovL29j
c3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5mcmFkZWFkLm9yZzANBgkqhkiG9w0B
AQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQvQ/fzPXmtR9t54rpmI2TfyvcKgOXp
qa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvIlSPrzIB4Z2wyIGQpaPLlYflrrVFK
v9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9ChWFfgSXvrWDZspnU3Gjw/rMHrGnql
Htlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0whpBtXdyDjzBtQTaZJ7zTT/vlehc/
tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9IzCCBhQwggT8oAMCAQICEQDGvhmW
Z0DEAx0oURL6O6l+MA0GCSqGSIb3DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3Jl
YXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0
ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJl
IEVtYWlsIENBMB4XDTIyMDEwNzAwMDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJ
ARYTZHdtdzJAaW5mcmFkZWFkLm9yZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3
GpC2bomUqk+91wLYBzDMcCj5C9m6oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZH
h7htyAkWYVoFsFPrwHounto8xTsySSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT
9YgcBqKCo65pTFmOnR/VVbjJk4K2xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNj
P+qDrh0db7PAjO1D4d5ftfrsf+kdRR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy
2U+eITZ5LLE5s45mX2oPFknWqxBobQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3
BgBEmfsYWlBXO8rVXfvPgLs32VdVNZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/
7auNVRmPB3v5SWEsH8xi4Bez2V9UKxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmd
lFYhAflWKQ03Ufiu8t3iBE3VJbc25oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9ae
lIl6vtbhMA+l0nfrsORMa4kobqQ5C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMB
AAGjggHMMIIByDAfBgNVHSMEGDAWgBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeD
Mcimo0oz8o1R1Nver3ZVpSkwDgYDVR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYw
FAYIKwYBBQUHAwQGCCsGAQUFBwMCMEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYB
BQUHAgEWF2h0dHBzOi8vc2VjdGlnby5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9j
cmwuc2VjdGlnby5jb20vU2VjdGlnb1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1h
aWxDQS5jcmwwgYoGCCsGAQUFBwEBBH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdv
LmNvbS9TZWN0aWdvUlNBQ2xpZW50QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAj
BggrBgEFBQcwAYYXaHR0cDovL29jc3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5m
cmFkZWFkLm9yZzANBgkqhkiG9w0BAQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQv
Q/fzPXmtR9t54rpmI2TfyvcKgOXpqa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvI
lSPrzIB4Z2wyIGQpaPLlYflrrVFKv9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9Ch
WFfgSXvrWDZspnU3Gjw/rMHrGnqlHtlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0w
hpBtXdyDjzBtQTaZJ7zTT/vlehc/tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9
IzGCBMcwggTDAgEBMIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVz
dGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMT
NVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEA
xr4ZlmdAxAMdKFES+jupfjANBglghkgBZQMEAgEFAKCCAeswGAYJKoZIhvcNAQkDMQsGCSqGSIb3
DQEHATAcBgkqhkiG9w0BCQUxDxcNMjMxMDI0MTMyMDQ2WjAvBgkqhkiG9w0BCQQxIgQg1sl3Yz8x
wBCT7mPay7jb1ho1duYMV1t5ZDquECBk2lgwgb0GCSsGAQQBgjcQBDGBrzCBrDCBljELMAkGA1UE
BhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEYMBYG
A1UEChMPU2VjdGlnbyBMaW1pdGVkMT4wPAYDVQQDEzVTZWN0aWdvIFJTQSBDbGllbnQgQXV0aGVu
dGljYXRpb24gYW5kIFNlY3VyZSBFbWFpbCBDQQIRAMa+GZZnQMQDHShREvo7qX4wgb8GCyqGSIb3
DQEJEAILMYGvoIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVy
MRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNl
Y3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEAxr4Z
lmdAxAMdKFES+jupfjANBgkqhkiG9w0BAQEFAASCAgACbJeGGYgwmUkP/A4vT5b2sy/rFRNrGujc
02EnikV05gl6q1M0es1nnrGjTY8P/pBj7gIH8C+MUhQh9BiBnJwO7lJmIY9kd4F0Eh3BrjHAgb01
G0eWqOlzmxSaABJnqZAAoRi4cvn2k1XEMc7J+N4v0k6U9lfUiirI2viNFbQpDKlULEQd54iHTwJt
GqKUy9+CrbWgmEvGYMbINdM2URzMrsy65IHdu7YtCepy0C+IYdiG2YF0qmgnCEjlvNkl2h/NfKw2
WrYJcIANsRlP+6IqZmHsBMIhxR7hHuNz0PhAv8U8QAFjkkp3XnoikABr2PC0jUuO7m818wkSjxmV
3dtC1ADnjSWf7Et8uAWeemUJtoxj6vxhFZX8bE0p3ER6/Jzo7snfphJlGB31+gyMyMO5OoGRFCam
7ulx2toE+uuCzSa8y8EVSWg7dPpntc/KYC4fNnXbyA6bd34pCJNwVJPgtl0IFm7iceqOmABlC9sf
OsVIQSsuIhXJy7SXfjMOOlhrFMB9zL/4dCVKoOXlvPB3PTx6VIWWQ22QF0Fe03z12kMX3YZ95nBl
J4qNF1yFXv7o/+0+1I0/IIPiQEQS27nMzyGugp4LZ/iiPyttPourZrSkIF/uJz2i4hdftlRI5y6l
v6qHVT9gJ5W8zlLsbyIpwRceSELJ4vdZmq+swWRRtQAAAAAAAA==


--=-+mFwYZ1cqARasn+DRals--


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 13:23:10 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 13:23:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621953.968938 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvHNE-0000iP-AF; Tue, 24 Oct 2023 13:23:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621953.968938; Tue, 24 Oct 2023 13: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 1qvHNE-0000iI-6E; Tue, 24 Oct 2023 13:23:08 +0000
Received: by outflank-mailman (input) for mailman id 621953;
 Tue, 24 Oct 2023 13: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=urDo=GG=bugseng.com=federico.serafini@srs-se1.protection.inumbo.net>)
 id 1qvHNC-0000iB-Ck
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 13:23:06 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 76286e3a-7270-11ee-9b0e-b553b5be7939;
 Tue, 24 Oct 2023 15:23:04 +0200 (CEST)
Received: from Dell.homenet.telecomitalia.it
 (host-95-247-204-25.retail.telecomitalia.it [95.247.204.25])
 by support.bugseng.com (Postfix) with ESMTPSA id 358704EE0739;
 Tue, 24 Oct 2023 15:23: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: 76286e3a-7270-11ee-9b0e-b553b5be7939
From: Federico Serafini <federico.serafini@bugseng.com>
To: xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com,
	Federico Serafini <federico.serafini@bugseng.com>,
	Simone Ballarin <simone.ballarin@bugseng.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: [XEN RFC] xen/automation: add deviations for MISRA C:2012 Rule 8.3
Date: Tue, 24 Oct 2023 15:22:31 +0200
Message-Id: <565552f9e7cfff56fb1d1037cfa9662a1818c5d3.1698153310.git.federico.serafini@bugseng.com>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Update ECLAIR configuration to deviate Rule 8.3 ("All declarations of
an object or function shall use the same names and type qualifiers")
for the following functions:
- set_px_pminfo();
- guest_walk_tables_[0-9]+_levels().

Update file docs/misra/deviations.rst accordingly.
No functional change.

Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
---
I had a discussion with Jan about the reasons behind the choice of parameter
name 'walk' for the definitions of functions guest_walk_tables_[0-9]+_levels()
and the parameter name 'pfec' for the corresponding declarations.
Also for the function set_px_pminfo(), it seems that the parameter names are
different on purpose.
Can I submit a patch with these deviations? Do you have any comments?
---
 automation/eclair_analysis/ECLAIR/deviations.ecl | 4 ++++
 docs/misra/deviations.rst                        | 7 +++++++
 2 files changed, 11 insertions(+)

diff --git a/automation/eclair_analysis/ECLAIR/deviations.ecl b/automation/eclair_analysis/ECLAIR/deviations.ecl
index d8170106b4..9485d66928 100644
--- a/automation/eclair_analysis/ECLAIR/deviations.ecl
+++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
@@ -204,6 +204,10 @@ const-qualified."
 -config=MC3R1.R8.3,reports+={deliberate,"any_area(any_loc(file(adopted_mpparse_r8_3)))&&any_area(any_loc(file(^xen/arch/x86/include/asm/mpspec\\.h$)))"}
 -doc_end
 
+-doc_begin="For functions set_px_pminfo() and guest_walk_tables_[0-9]+_levels(), parameter names of definitions deliberately differ from the ones used in the corresponding declarations."
+-config=MC3R1.R8.3,declarations={deliberate,"^set_px_pminfo\\(uint32_t, struct xen_processor_performance\\*\\)|guest_walk_tables_[0-9]+_levels\\(const struct vcpu\\*, struct p2m_domain\\*, unsigned long, walk_t\\*, uint32_t, gfn_t, mfn_t, void\\*\\)$"}
+-doc_end
+
 -doc_begin="The following variables are compiled in multiple translation units
 belonging to different executables and therefore are safe."
 -config=MC3R1.R8.6,declarations+={safe, "name(current_stack_pointer||bsearch||sort)"}
diff --git a/docs/misra/deviations.rst b/docs/misra/deviations.rst
index 8511a18925..b5016412f6 100644
--- a/docs/misra/deviations.rst
+++ b/docs/misra/deviations.rst
@@ -121,6 +121,13 @@ Deviations related to MISRA C:2012 Rules:
          - xen/common/unxz.c
          - xen/common/unzstd.c
 
+   * - R8.3
+     - In some cases, parameter names used in the function definition
+       deliberately differ from the ones used in the corresponding declaration.
+     - Tagged as `deliberate` for ECLAIR. Such functions are:
+         - set_px_pminfo()
+         - guest_walk_tables_[0-9]+_levels()
+
    * - R8.4
      - The definitions present in the files 'asm-offsets.c' for any architecture
        are used to generate definitions for asm modules, and are not called by
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Tue Oct 24 13:29:14 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 13:29:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621958.968948 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvHT2-0003Fq-Tw; Tue, 24 Oct 2023 13:29:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621958.968948; Tue, 24 Oct 2023 13: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 1qvHT2-0003Fj-R5; Tue, 24 Oct 2023 13:29:08 +0000
Received: by outflank-mailman (input) for mailman id 621958;
 Tue, 24 Oct 2023 13: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=jXWl=GG=casper.srs.infradead.org=BATV+e2898748ca55db067849+7366+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qvHT2-0003Fd-1V
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 13:29:08 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 4e8b5c21-7271-11ee-98d5-6d05b1d4d9a1;
 Tue, 24 Oct 2023 15:29:07 +0200 (CEST)
Received: from [2001:8b0:10b:5:758e:a1c4:bc7:e7a7]
 (helo=u3832b3a9db3152.ant.amazon.com)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qvHSx-002iFr-GR; Tue, 24 Oct 2023 13:29: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: 4e8b5c21-7271-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=MIME-Version:Content-Type:References:
	In-Reply-To:Date:Cc:To:From:Subject:Message-ID:Sender:Reply-To:
	Content-Transfer-Encoding:Content-ID:Content-Description;
	bh=C+6ngxXiQEDkXVyuFYGYuszR6TVOiYUWavWAJVtm/AU=; b=qeYg9IC9nGbAPP4+9ZVW0DcneT
	dPLomUbBTFQcRiFyAeny3eDZwsgi5Sg03yiTI1kEmEd/8xEWRYr/CX+BOAcfs8rfRAz/sxDCbWO9v
	VU/mPtuyqDGq56WUUtmjGsXc+B2WUJWp4E56JH2vz9RVFVCT6oORuwVruvt9nW3Drj7Lu/1/9/+yz
	yKQPhQzgWj+IKWv/H0f1hWF9nt5gALuA/Ap80CDrDwkV0jbd6Xb4XbgRDtpK/XEbPIatKnU0h0zF/
	z7o3H7+Bkyom1b4QILTFxJAaEdg54FbO6ccxRf3pMQhi8vHYWYCBCBHNtAy0gt4wV3fWblw0g1xHt
	eM42HD6A==;
Message-ID: <4d059cb96a92004fe25fdb140a6c0b12e91b4d7e.camel@infradead.org>
Subject: Re: [PATCH 06/12] hw/xen: add get_frontend_path() method to
 XenDeviceClass
From: David Woodhouse <dwmw2@infradead.org>
To: paul@xen.org, qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>, Hanna Reitz <hreitz@redhat.com>, Stefano
 Stabellini <sstabellini@kernel.org>, Anthony Perard
 <anthony.perard@citrix.com>,  =?ISO-8859-1?Q?Marc-Andr=E9?= Lureau
 <marcandre.lureau@redhat.com>, Paolo Bonzini <pbonzini@redhat.com>,
 "Michael S. Tsirkin" <mst@redhat.com>, Marcel Apfelbaum
 <marcel.apfelbaum@gmail.com>, Richard Henderson
 <richard.henderson@linaro.org>, Eduardo Habkost <eduardo@habkost.net>, 
 Marcelo Tosatti <mtosatti@redhat.com>, qemu-block@nongnu.org,
 xen-devel@lists.xenproject.org, kvm@vger.kernel.org
Date: Tue, 24 Oct 2023 14:29:02 +0100
In-Reply-To: <55bb6967-9499-45ef-b4c8-00fbfaccef0d@xen.org>
References: <20231016151909.22133-1-dwmw2@infradead.org>
	 <20231016151909.22133-7-dwmw2@infradead.org>
	 <5ef43a7c-e535-496d-8a14-bccbadab3bc0@xen.org>
	 <d43b900a6c7987c6832ceeede9b4c5ab65d5bacd.camel@infradead.org>
	 <55bb6967-9499-45ef-b4c8-00fbfaccef0d@xen.org>
Content-Type: multipart/signed; micalg="sha-256"; protocol="application/pkcs7-signature";
	boundary="=-KP14IPV3DVhrYbYuEmat"
User-Agent: Evolution 3.44.4-0ubuntu2 
MIME-Version: 1.0
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html


--=-KP14IPV3DVhrYbYuEmat
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Tue, 2023-10-24 at 13:59 +0100, Paul Durrant wrote:
> On 24/10/2023 13:56, David Woodhouse wrote:
> > On Tue, 2023-10-24 at 13:42 +0100, Paul Durrant wrote:
> > >=20
> > > > --- a/hw/xen/xen-bus.c
> > > > +++ b/hw/xen/xen-bus.c
> > > > @@ -711,8 +711,16 @@ static void xen_device_frontend_create(XenDevi=
ce *xendev, Error **errp)
> > > > =C2=A0=C2=A0=C2=A0 {
> > > > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ERRP_GUARD();
> > > > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 XenBus *xenbus =3D XEN_B=
US(qdev_get_parent_bus(DEVICE(xendev)));
> > > > +=C2=A0=C2=A0=C2=A0 XenDeviceClass *xendev_class =3D XEN_DEVICE_GET=
_CLASS(xendev);
> > > > =C2=A0=C2=A0=C2=A0=20
> > > > -=C2=A0=C2=A0=C2=A0 xendev->frontend_path =3D xen_device_get_fronte=
nd_path(xendev);
> > > > +=C2=A0=C2=A0=C2=A0 if (xendev_class->get_frontend_path) {
> > > > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 xendev->frontend_path =
=3D xendev_class->get_frontend_path(xendev, errp);
> > > > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 if (!xendev->frontend_p=
ath) {
> > > > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
 return;
> > >=20
> > > I think you need to update errp here to note that you are failing to
> > > create the frontend.
> >=20
> > If xendev_class->get_frontend_path returned NULL it will have filled in=
 errp.
> >=20
>=20
> Ok, but a prepend to say that a lack of path there means we skip=20
> frontend creation seems reasonable?

No, it *is* returning an error. Perhaps I can make it

    if (!xendev->frontend_path) {
        /*
         * If the ->get_frontend_path() method returned NULL, it will
         * already have set *errp accordingly. Return the error.
         */
        return /* false */;
    }


> > As a general rule (I'll be doing a bombing run on xen-bus once I get my
> > patch queue down into single digits) we should never check 'if (*errp)'
> > to check if a function had an error. It should *also* return a success
> > or failure indication, and we should cope with errp being NULL.
> >=20
>=20
> I'm pretty sure someone told me the exact opposite a few years back.

Then they were wrong :)

--=-KP14IPV3DVhrYbYuEmat
Content-Type: application/pkcs7-signature; name="smime.p7s"
Content-Disposition: attachment; filename="smime.p7s"
Content-Transfer-Encoding: base64

MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgEFADCABgkqhkiG9w0BBwEAAKCCEkQw
ggYQMIID+KADAgECAhBNlCwQ1DvglAnFgS06KwZPMA0GCSqGSIb3DQEBDAUAMIGIMQswCQYDVQQG
EwJVUzETMBEGA1UECBMKTmV3IEplcnNleTEUMBIGA1UEBxMLSmVyc2V5IENpdHkxHjAcBgNVBAoT
FVRoZSBVU0VSVFJVU1QgTmV0d29yazEuMCwGA1UEAxMlVVNFUlRydXN0IFJTQSBDZXJ0aWZpY2F0
aW9uIEF1dGhvcml0eTAeFw0xODExMDIwMDAwMDBaFw0zMDEyMzEyMzU5NTlaMIGWMQswCQYDVQQG
EwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYD
VQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50
aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC
AQEAyjztlApB/975Rrno1jvm2pK/KxBOqhq8gr2+JhwpKirSzZxQgT9tlC7zl6hn1fXjSo5MqXUf
ItMltrMaXqcESJuK8dtK56NCSrq4iDKaKq9NxOXFmqXX2zN8HHGjQ2b2Xv0v1L5Nk1MQPKA19xeW
QcpGEGFUUd0kN+oHox+L9aV1rjfNiCj3bJk6kJaOPabPi2503nn/ITX5e8WfPnGw4VuZ79Khj1YB
rf24k5Ee1sLTHsLtpiK9OjG4iQRBdq6Z/TlVx/hGAez5h36bBJMxqdHLpdwIUkTqT8se3ed0PewD
ch/8kHPo5fZl5u1B0ecpq/sDN/5sCG52Ds+QU5O5EwIDAQABo4IBZDCCAWAwHwYDVR0jBBgwFoAU
U3m/WqorSs9UgOHYm8Cd8rIDZsswHQYDVR0OBBYEFAnA8vwL2pTbX/4r36iZQs/J4K0AMA4GA1Ud
DwEB/wQEAwIBhjASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEF
BQcDBDARBgNVHSAECjAIMAYGBFUdIAAwUAYDVR0fBEkwRzBFoEOgQYY/aHR0cDovL2NybC51c2Vy
dHJ1c3QuY29tL1VTRVJUcnVzdFJTQUNlcnRpZmljYXRpb25BdXRob3JpdHkuY3JsMHYGCCsGAQUF
BwEBBGowaDA/BggrBgEFBQcwAoYzaHR0cDovL2NydC51c2VydHJ1c3QuY29tL1VTRVJUcnVzdFJT
QUFkZFRydXN0Q0EuY3J0MCUGCCsGAQUFBzABhhlodHRwOi8vb2NzcC51c2VydHJ1c3QuY29tMA0G
CSqGSIb3DQEBDAUAA4ICAQBBRHUAqznCFfXejpVtMnFojADdF9d6HBA4kMjjsb0XMZHztuOCtKF+
xswhh2GqkW5JQrM8zVlU+A2VP72Ky2nlRA1GwmIPgou74TZ/XTarHG8zdMSgaDrkVYzz1g3nIVO9
IHk96VwsacIvBF8JfqIs+8aWH2PfSUrNxP6Ys7U0sZYx4rXD6+cqFq/ZW5BUfClN/rhk2ddQXyn7
kkmka2RQb9d90nmNHdgKrwfQ49mQ2hWQNDkJJIXwKjYA6VUR/fZUFeCUisdDe/0ABLTI+jheXUV1
eoYV7lNwNBKpeHdNuO6Aacb533JlfeUHxvBz9OfYWUiXu09sMAviM11Q0DuMZ5760CdO2VnpsXP4
KxaYIhvqPqUMWqRdWyn7crItNkZeroXaecG03i3mM7dkiPaCkgocBg0EBYsbZDZ8bsG3a08LwEsL
1Ygz3SBsyECa0waq4hOf/Z85F2w2ZpXfP+w8q4ifwO90SGZZV+HR/Jh6rEaVPDRF/CEGVqR1hiuQ
OZ1YL5ezMTX0ZSLwrymUE0pwi/KDaiYB15uswgeIAcA6JzPFf9pLkAFFWs1QNyN++niFhsM47qod
x/PL+5jR87myx5uYdBEQkkDc+lKB1Wct6ucXqm2EmsaQ0M95QjTmy+rDWjkDYdw3Ms6mSWE3Bn7i
5ZgtwCLXgAIe5W8mybM2JzCCBhQwggT8oAMCAQICEQDGvhmWZ0DEAx0oURL6O6l+MA0GCSqGSIb3
DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYD
VQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28g
UlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMB4XDTIyMDEwNzAw
MDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJARYTZHdtdzJAaW5mcmFkZWFkLm9y
ZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3GpC2bomUqk+91wLYBzDMcCj5C9m6
oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZHh7htyAkWYVoFsFPrwHounto8xTsy
SSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT9YgcBqKCo65pTFmOnR/VVbjJk4K2
xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNjP+qDrh0db7PAjO1D4d5ftfrsf+kd
RR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy2U+eITZ5LLE5s45mX2oPFknWqxBo
bQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3BgBEmfsYWlBXO8rVXfvPgLs32VdV
NZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/7auNVRmPB3v5SWEsH8xi4Bez2V9U
KxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmdlFYhAflWKQ03Ufiu8t3iBE3VJbc2
5oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9aelIl6vtbhMA+l0nfrsORMa4kobqQ5
C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMBAAGjggHMMIIByDAfBgNVHSMEGDAW
gBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeDMcimo0oz8o1R1Nver3ZVpSkwDgYD
VR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYwFAYIKwYBBQUHAwQGCCsGAQUFBwMC
MEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYBBQUHAgEWF2h0dHBzOi8vc2VjdGln
by5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9jcmwuc2VjdGlnby5jb20vU2VjdGln
b1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1haWxDQS5jcmwwgYoGCCsGAQUFBwEB
BH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdvLmNvbS9TZWN0aWdvUlNBQ2xpZW50
QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAjBggrBgEFBQcwAYYXaHR0cDovL29j
c3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5mcmFkZWFkLm9yZzANBgkqhkiG9w0B
AQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQvQ/fzPXmtR9t54rpmI2TfyvcKgOXp
qa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvIlSPrzIB4Z2wyIGQpaPLlYflrrVFK
v9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9ChWFfgSXvrWDZspnU3Gjw/rMHrGnql
Htlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0whpBtXdyDjzBtQTaZJ7zTT/vlehc/
tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9IzCCBhQwggT8oAMCAQICEQDGvhmW
Z0DEAx0oURL6O6l+MA0GCSqGSIb3DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3Jl
YXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0
ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJl
IEVtYWlsIENBMB4XDTIyMDEwNzAwMDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJ
ARYTZHdtdzJAaW5mcmFkZWFkLm9yZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3
GpC2bomUqk+91wLYBzDMcCj5C9m6oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZH
h7htyAkWYVoFsFPrwHounto8xTsySSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT
9YgcBqKCo65pTFmOnR/VVbjJk4K2xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNj
P+qDrh0db7PAjO1D4d5ftfrsf+kdRR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy
2U+eITZ5LLE5s45mX2oPFknWqxBobQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3
BgBEmfsYWlBXO8rVXfvPgLs32VdVNZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/
7auNVRmPB3v5SWEsH8xi4Bez2V9UKxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmd
lFYhAflWKQ03Ufiu8t3iBE3VJbc25oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9ae
lIl6vtbhMA+l0nfrsORMa4kobqQ5C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMB
AAGjggHMMIIByDAfBgNVHSMEGDAWgBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeD
Mcimo0oz8o1R1Nver3ZVpSkwDgYDVR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYw
FAYIKwYBBQUHAwQGCCsGAQUFBwMCMEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYB
BQUHAgEWF2h0dHBzOi8vc2VjdGlnby5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9j
cmwuc2VjdGlnby5jb20vU2VjdGlnb1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1h
aWxDQS5jcmwwgYoGCCsGAQUFBwEBBH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdv
LmNvbS9TZWN0aWdvUlNBQ2xpZW50QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAj
BggrBgEFBQcwAYYXaHR0cDovL29jc3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5m
cmFkZWFkLm9yZzANBgkqhkiG9w0BAQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQv
Q/fzPXmtR9t54rpmI2TfyvcKgOXpqa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvI
lSPrzIB4Z2wyIGQpaPLlYflrrVFKv9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9Ch
WFfgSXvrWDZspnU3Gjw/rMHrGnqlHtlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0w
hpBtXdyDjzBtQTaZJ7zTT/vlehc/tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9
IzGCBMcwggTDAgEBMIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVz
dGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMT
NVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEA
xr4ZlmdAxAMdKFES+jupfjANBglghkgBZQMEAgEFAKCCAeswGAYJKoZIhvcNAQkDMQsGCSqGSIb3
DQEHATAcBgkqhkiG9w0BCQUxDxcNMjMxMDI0MTMyOTAyWjAvBgkqhkiG9w0BCQQxIgQgbTnyZfp5
vmMBOSAB1BtDyuWXRW6o88vslEipjMzRMd4wgb0GCSsGAQQBgjcQBDGBrzCBrDCBljELMAkGA1UE
BhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEYMBYG
A1UEChMPU2VjdGlnbyBMaW1pdGVkMT4wPAYDVQQDEzVTZWN0aWdvIFJTQSBDbGllbnQgQXV0aGVu
dGljYXRpb24gYW5kIFNlY3VyZSBFbWFpbCBDQQIRAMa+GZZnQMQDHShREvo7qX4wgb8GCyqGSIb3
DQEJEAILMYGvoIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVy
MRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNl
Y3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEAxr4Z
lmdAxAMdKFES+jupfjANBgkqhkiG9w0BAQEFAASCAgAfpbAHanLwj0if3cEy7z5dzoTkWeMOl4TT
XIS9HGCy5WrBKJb1HExX+s8hbvCC+vBrPXHgR8tXSDBNK9wNKDSPqTR7sQHtMDPAK7QNBpKS8WTx
sQkpvpV+hy6nItX5J3cp1X4SS4n1Mzr0K5c4iYxGFS2yav1xacChxVdd+YXt/Cm4ugFsALgSpbre
DU8YAcjBRpu6VTKQot1E/PPcTnMxlQnuGNKZvav9Clj0s/iUJpxrYuVvnBpjEWoJyLMRZzCCKYwn
YmKZEYkYtVoodPFUMXjNxZnA6dDf/ngN6KzlcwVONMP8bEBDQeTaeXit7T+Nysz+LmxuByNo/bqV
IU2YlOeBitZZVuPgFWSTyyAHr+tYPJeasIbDc+phw6QqI3w8RcAgxLyanf6LBZ0BLydW8azqhIAJ
c4wXCTWpJOPP2gvYfOfZ5guPmwXBxZNpltWHPclVcuH0rMbIv3Duihnmof7hENMiexLfIjj+0cEl
s/r5jbm27uyakoHvaf70EmPSX5VdqUC32k7lpPkN21rzIb3SoUTNhALw4FXILU6qCpqMIOF/YK3w
ntYq/CJkTdWfgtEv9chUo+ovTrn/HbNAE4X3cmVVNZv+A4ngnAgQ+wjYhYNwpo4Bh+bThTminWRe
wpwDRX3CFCmcQgY4TWDISm17Eqwl3kuorSfmem2VUAAAAAAAAA==


--=-KP14IPV3DVhrYbYuEmat--


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 13:29:20 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 13:29:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621959.968958 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvHTE-0003ZQ-8c; Tue, 24 Oct 2023 13:29:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621959.968958; Tue, 24 Oct 2023 13: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 1qvHTE-0003ZJ-57; Tue, 24 Oct 2023 13:29:20 +0000
Received: by outflank-mailman (input) for mailman id 621959;
 Tue, 24 Oct 2023 13:29: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=Q5Q5=GG=arm.com=Bertrand.Marquis@srs-se1.protection.inumbo.net>)
 id 1qvHTC-0003Fc-T4
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 13:29:19 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 (mail-am6eur05on20625.outbound.protection.outlook.com
 [2a01:111:f400:7e1b::625])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 53fb207b-7271-11ee-9b0e-b553b5be7939;
 Tue, 24 Oct 2023 15:29:16 +0200 (CEST)
Received: from AS4P189CA0009.EURP189.PROD.OUTLOOK.COM (2603:10a6:20b:5d7::13)
 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.6907.33; Tue, 24 Oct
 2023 13:29:13 +0000
Received: from AMS0EPF000001A9.eurprd05.prod.outlook.com
 (2603:10a6:20b:5d7:cafe::e9) by AS4P189CA0009.outlook.office365.com
 (2603:10a6:20b:5d7::13) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.33 via Frontend
 Transport; Tue, 24 Oct 2023 13:29:13 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AMS0EPF000001A9.mail.protection.outlook.com (10.167.16.149) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6933.15 via Frontend Transport; Tue, 24 Oct 2023 13:29:13 +0000
Received: ("Tessian outbound d9a8e74be042:v215");
 Tue, 24 Oct 2023 13:29:13 +0000
Received: from c30ea2029b17.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 81359613-7EE7-499E-BDB0-CDE8ED87E598.1; 
 Tue, 24 Oct 2023 13:29:06 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id c30ea2029b17.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Tue, 24 Oct 2023 13:29:06 +0000
Received: from AM6PR08MB3784.eurprd08.prod.outlook.com (2603:10a6:20b:85::25)
 by DU0PR08MB8345.eurprd08.prod.outlook.com (2603:10a6:10:40b::21)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.26; Tue, 24 Oct
 2023 13:29:02 +0000
Received: from AM6PR08MB3784.eurprd08.prod.outlook.com
 ([fe80::1635:b3e9:e4e7:943d]) by AM6PR08MB3784.eurprd08.prod.outlook.com
 ([fe80::1635:b3e9:e4e7:943d%6]) with mapi id 15.20.6907.025; Tue, 24 Oct 2023
 13:29: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: 53fb207b-7271-11ee-9b0e-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=p10cVJ7BPWinbcn7KONl6JhZ0yaQr4n3DUu9Sc9DwA8=;
 b=2m8fQ9PVbPNuvmAn1JhZpXlAL7V8eKVT/h3GJn/hmNfiGx6DIC+mE6iyiP5icwgDGVhO0oyo16WxKUmD/HJZEN3cSK85ZuPEM5oIxIf8tW4FjD9SCGwetMbtfs72+aSqxIgc9AQ+iRMt0VxxeUPdhKJs6DOjcDQnNOZVyt3fn6w=
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: 1c94a2fc2fec4336
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=h3kSKww3Ce4gx1xXXTtHhzg+CoSlstTk8OiU4Z9DtUxMMrWEMAVe1XLk8OWucUeyNgrU9olLAMgh4O/qg6BNeUo+QeiTY3LQ+VEpVULEHhmg9qXnAQZWONCtB1imqzcHZjHO7M0tuQMkdRYkCEbpNCCB+OasFxvNU40/p1lwKqzdND1naO0XS8o70H9MmOsc/1b9Kyu1M5rAcn8GEF2LQBhEkth5fEgEyGQWBMoa0KWHIwM9Q6D1HVzmTa3zyHptIPnkWwyS3h2M59TsjX1L14Zqiz8ROJqwOJ5PBYB9NZdKi7upeEiDrSTtadD3q3268dlcyKESR4+XfEzdQA8ONw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=p10cVJ7BPWinbcn7KONl6JhZ0yaQr4n3DUu9Sc9DwA8=;
 b=OKmAow5+jMYouzVL0MPrCkhIAmZOvInDRhBT0i+8lXy/SK4LI7ulvNRZvIOT0icBl6LYlP/W656wgTnP9r1Tdf6qSwqKGWEtdWLDasZOLT6QqIjh/sBZfyyEHDAooLqW28u/xG9vmcrx4MfW/Y5DZNsh+cVcwjUE19eHarLgjEoyXCaL6PFsIYdBN6fNpCyJoCLm7lSDOZbvjEAPyiedLU2+z5dQParnZbkvhWNy1lrGuBezIa2tqooA4BuqgOpP+32yit+CFDDkfQkDcGfhjK2hWJKFrp2NDJ3PbfcQWb8f2OK62OyG5TOE36Oh/XLPdKTjgjcVThEZfNnV/HNBAQ==
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=p10cVJ7BPWinbcn7KONl6JhZ0yaQr4n3DUu9Sc9DwA8=;
 b=2m8fQ9PVbPNuvmAn1JhZpXlAL7V8eKVT/h3GJn/hmNfiGx6DIC+mE6iyiP5icwgDGVhO0oyo16WxKUmD/HJZEN3cSK85ZuPEM5oIxIf8tW4FjD9SCGwetMbtfs72+aSqxIgc9AQ+iRMt0VxxeUPdhKJs6DOjcDQnNOZVyt3fn6w=
From: Bertrand Marquis <Bertrand.Marquis@arm.com>
To: Stefano Stabellini <sstabellini@kernel.org>
CC: Xen-devel <xen-devel@lists.xenproject.org>, Julien Grall <julien@xen.org>,
	"michal.orzel@amd.com" <michal.orzel@amd.com>, "Volodymyr_Babchuk@epam.com"
	<Volodymyr_Babchuk@epam.com>, Henry Wang <Henry.Wang@arm.com>
Subject: Re: [PATCH] MAINTAINERS: make Michal Orzel ARM Maintainer
Thread-Topic: [PATCH] MAINTAINERS: make Michal Orzel ARM Maintainer
Thread-Index: AQHaBfOErYec89nqn0qDmTjIsZJqaLBY8CaA
Date: Tue, 24 Oct 2023 13:29:01 +0000
Message-ID: <9B50559C-A4BD-4A84-8396-5298B596D1EA@arm.com>
References:
 <alpine.DEB.2.22.394.2310231356210.3516@ubuntu-linux-20-04-desktop>
In-Reply-To:
 <alpine.DEB.2.22.394.2310231356210.3516@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_|DU0PR08MB8345:EE_|AMS0EPF000001A9:EE_|AS8PR08MB10026:EE_
X-MS-Office365-Filtering-Correlation-Id: b1ea87c3-2269-43ee-a947-08dbd49536ae
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:
 ealenn0xgqanqfOlk8HtL7oE0k5qtEjod5Wig9O0JcogYCrukRLcREkHQ+5yrBSZIHGRlrM57eRbyH5gVHb+VeP0zXIWyKAM5EeO0E5zvBRDLKu/KkJKC/qRmcWut8T44CSumLfU6TsyEJ3o+90KYdyX2ILtc2bINuYgBSCiKPp84OC6S+XOb8cQ4l2Aj1Apwrhu+SL/nYhPhYlcvmcOHaIZ5NNz46iHErOMPNSCrcDVMGL3opPoA8aDkTckvrmmtrovS66gESgCEGpB+28Qo9HFOXtM0dneeLJUeqUFcZgPNTbmA97eCK2aG2MiMvtpWv2FmXm79NfvYa1xnb0oI64dDsdggk0ZFybazVcL9XyLvy70kq+W//0LqaBPLrhA3d9KAA5j+fVxXdFlXUQtzwuLM5sAAUvZoaie7fJr73opJjTt9LWQwXz0guYaVzJ+0A4W7sBQMtSTUBQXfxk5f7JiaPW4sNakbuXf1ib6H4+BJGzEZxl90u0+Dh0zgVlILdbWXjzHsHytdI/D/UA1uks3wYAMoYJhuhtvpi8cG6m1IpoZVl62eYEvaRfLfcw7HAYKIiuEpjhxyuBOheEUkUGcZYL4pSn4nWl0JxovuSTER+BOTyIdp9vWmwjt+09iOEkqsaSxjlsiZwq3sI0kOw==
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)(366004)(346002)(136003)(376002)(230922051799003)(451199024)(1800799009)(64100799003)(186009)(6486002)(6506007)(38070700009)(316002)(54906003)(71200400001)(66946007)(6916009)(64756008)(66446008)(76116006)(66556008)(66476007)(86362001)(8936002)(33656002)(8676002)(91956017)(478600001)(36756003)(5660300002)(4326008)(4744005)(38100700002)(41300700001)(2616005)(53546011)(2906002)(122000001)(6512007)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="us-ascii"
Content-ID: <D9B1526F4E936446B6B0CE5422EE244C@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR08MB8345
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:
 AMS0EPF000001A9.eurprd05.prod.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	a178b825-9e86-4792-3a47-08dbd4952fb6
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	OGxERS+6SKhngnCg+RQ0Dywz/4d0E/zHeF2/ufT5Po+2hkdgR6pDHERj+9MgubFA4/jyh9FFfI1Qxrd00F1FoFZM6YtRYHE9zSlw+6V+8lZ3RAWoNpLQ39z/pHlNhOOMGNYhAFhXPNne7RWh0mEEA7hoxQB9q9/2eBrq7mTud+ZkqjtdwRiQQ+zwi9OZVoNJIV07z5xib+MlGgDantUCqCpGW8SZWtFddHJBSeGm9t8Xn+3y4jqqcYxeu+Rs0f/pp9lXIiNXD2aYX3qhbZQbVdW4aLfST7IXM6fCn1FN4f5BD7af6WF/N5aJhNy5/8ZKpuRXhcUjL5ePX7fAKdEH4xR0WH8pxijRsd7E0wv0U13kYExUl/JeuVSn+WeGnE/Ud0BXmJjhCIpzeNi3lCpGCaQeZ9eg+/8YGdwJa4A3iPZeTIkPwnpwxOcAc0oBLhaMDM1IEsK28dfWxcG0CINL2QF4dhEKAMBEU4cCeyxJWyMlPqESSya7DWgjH/JxYKxIqf41w3pgdSSFyDWHSvWREgsgvP3QxAfzAA6QZ7q9eBYv/hTcxhbSMMOsY4uVoox4nqDU9S6nTXtqFY2KE0Nb9aheIcxLVbFIbtz86Ob+wmF1ZErH3rxqtXUV7Vg1NEHkAF5CgLcgZ0eX4V5ZNcW0+qe/CwoI9PmukwaOdSiUu5oSjNcPYSERbRhEGZc2Zs9pEFyZ/zAVQvoZYdgb3Ut46ihgT5TZEEJjY8PSWKMNTZs=
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)(39860400002)(346002)(376002)(230922051799003)(64100799003)(82310400011)(186009)(1800799009)(451199024)(36840700001)(46966006)(40470700004)(40460700003)(2906002)(81166007)(4744005)(36860700001)(6862004)(8936002)(36756003)(4326008)(33656002)(8676002)(53546011)(82740400003)(47076005)(2616005)(356005)(26005)(336012)(40480700001)(5660300002)(6506007)(316002)(6486002)(478600001)(6512007)(54906003)(86362001)(41300700001)(70586007)(70206006);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 24 Oct 2023 13:29:13.4282
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: b1ea87c3-2269-43ee-a947-08dbd49536ae
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:
	AMS0EPF000001A9.eurprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB10026

Hi Stefano,

> On 23 Oct 2023, at 22:56, Stefano Stabellini <sstabellini@kernel.org> wro=
te:
>=20
> Signed-off-by: Stefano Stabellini <stefano.stabellini@amd.com>

Acked-by: Bertrand Marquis <bertrand.marquis@arm.com>

Cheers
Bertrand

> ---
> MAINTAINERS | 1 +
> 1 file changed, 1 insertion(+)
>=20
> diff --git a/MAINTAINERS b/MAINTAINERS
> index f61b5a32a1..a5a5f2bffb 100644
> --- a/MAINTAINERS
> +++ b/MAINTAINERS
> @@ -246,6 +246,7 @@ ARM (W/ VIRTUALISATION EXTENSIONS) ARCHITECTURE
> M: Stefano Stabellini <sstabellini@kernel.org>
> M: Julien Grall <julien@xen.org>
> M: Bertrand Marquis <bertrand.marquis@arm.com>
> +M: Michal Orzel <michal.orzel@amd.com>
> R: Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
> S: Supported
> L: xen-devel@lists.xenproject.org
> --=20
> 2.25.1
>=20



From xen-devel-bounces@lists.xenproject.org Tue Oct 24 13:31:05 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 13:31:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621964.968968 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvHUq-0005DF-JQ; Tue, 24 Oct 2023 13:31:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621964.968968; Tue, 24 Oct 2023 13: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 1qvHUq-0005D8-GU; Tue, 24 Oct 2023 13:31:00 +0000
Received: by outflank-mailman (input) for mailman id 621964;
 Tue, 24 Oct 2023 13: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=Q5Q5=GG=arm.com=Bertrand.Marquis@srs-se1.protection.inumbo.net>)
 id 1qvHUp-0005Cx-ED
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 13:30:59 +0000
Received: from EUR03-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur03on20610.outbound.protection.outlook.com
 [2a01:111:f400:fe1b::610])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 8f23df2c-7271-11ee-9b0e-b553b5be7939;
 Tue, 24 Oct 2023 15:30:55 +0200 (CEST)
Received: from DUZPR01CA0060.eurprd01.prod.exchangelabs.com
 (2603:10a6:10:469::18) by DU5PR08MB10414.eurprd08.prod.outlook.com
 (2603:10a6:10:51a::11) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.33; Tue, 24 Oct
 2023 13:30:47 +0000
Received: from DB1PEPF00039232.eurprd03.prod.outlook.com
 (2603:10a6:10:469:cafe::9c) by DUZPR01CA0060.outlook.office365.com
 (2603:10a6:10:469::18) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.19 via Frontend
 Transport; Tue, 24 Oct 2023 13:30:47 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DB1PEPF00039232.mail.protection.outlook.com (10.167.8.105) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6933.15 via Frontend Transport; Tue, 24 Oct 2023 13:30:47 +0000
Received: ("Tessian outbound 028b72acc2da:v215");
 Tue, 24 Oct 2023 13:30:47 +0000
Received: from 8df8404cd17e.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 122E7587-97F6-478D-91DD-187A18CB84FD.1; 
 Tue, 24 Oct 2023 13:30:40 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 8df8404cd17e.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Tue, 24 Oct 2023 13:30:40 +0000
Received: from AM6PR08MB3784.eurprd08.prod.outlook.com (2603:10a6:20b:85::25)
 by DU0PR08MB8345.eurprd08.prod.outlook.com (2603:10a6:10:40b::21)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.26; Tue, 24 Oct
 2023 13:30:37 +0000
Received: from AM6PR08MB3784.eurprd08.prod.outlook.com
 ([fe80::1635:b3e9:e4e7:943d]) by AM6PR08MB3784.eurprd08.prod.outlook.com
 ([fe80::1635:b3e9:e4e7:943d%6]) with mapi id 15.20.6907.025; Tue, 24 Oct 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: 8f23df2c-7271-11ee-9b0e-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=eDl914DL1e4CHa25jGefuH4veiQO40Qko4gLth/JneY=;
 b=4BM0WeuICZ5j0RK+zdDxhetc+bglw1SkUAHWWBIqD2BwBfY/CEfXHappqCpK2xLIYUXq26K/FOv/DwBFjEJDUTqlEXTgvCfg4Z/+tvxnTCkbR9o2er7gheztWNmZfxsl7lcgARSQpv67JxaUqCLiiY53VE8lk4w6X4jN8SKgdQ0=
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: 24a1ffe71db7bd1c
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=b9K0jkV0ScoocI9x5J9ApnygpzBNNg2JevdzXZUleeZxk4RgGTzyvqAp7r0yNLG11oA2wHYDwPLdK0PT8lhSuuLWyTN7KY00CGX+EFFeEQl6gQCxKOFPDMqeNx+e0CQkUGYsfLmK06OyzOJVUgEXUj7yO6ADiIxzQsH926AT1/JLRbQddDpaE0RBwzSsVhis4R/FN2SPGyxHx5FtUSnKubmYZtLzNAU30gNeWZ+kMBUqjOQz2DNUeIiAdN6oVrnStzr2SIHAIOcbh+TGmtnQYAq7cRtEMaRXiSwSaf4MCprcKiL2kbe8NTt7RXzHVGEs1ua8/+12krUew+/Nfj6Orw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=eDl914DL1e4CHa25jGefuH4veiQO40Qko4gLth/JneY=;
 b=UnYctvWEiRsCPzXNxPO/oGaoWuLWOnWqdNFbEUAg25Sp8csf9XSpVyUNRz46CVHCd/+XRC9xJ56Z3muT1dHZBA3fFrve6Qa6uBjyUbRPNOp9Nl+8bPBr3vWgTLfFZYxdGZKvDBmtJmEXJBqbTx7Fg/NQPxYpduOAA4z0JveBoU2Y7egXpVPy0d8X0LFA5UiPsq/DSYBSJ8s0BbvH8cUQ9O09L6J2eYspiaszdIhX4YHWeImqhKC1maGvDZv6QSaVds/ZBOB5/kCKyNfgIBVwKGmUMeFDPIBFjIJHkUempOkEZToE5s6q5VB2irGBDN7Z0Cx+UdGb3/jEc2BosSeRgQ==
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=eDl914DL1e4CHa25jGefuH4veiQO40Qko4gLth/JneY=;
 b=4BM0WeuICZ5j0RK+zdDxhetc+bglw1SkUAHWWBIqD2BwBfY/CEfXHappqCpK2xLIYUXq26K/FOv/DwBFjEJDUTqlEXTgvCfg4Z/+tvxnTCkbR9o2er7gheztWNmZfxsl7lcgARSQpv67JxaUqCLiiY53VE8lk4w6X4jN8SKgdQ0=
From: Bertrand Marquis <Bertrand.Marquis@arm.com>
To: Julien Grall <julien@xen.org>
CC: Xen-devel <xen-devel@lists.xenproject.org>, Henry Wang
	<Henry.Wang@arm.com>, "michal.orzel@amd.com" <michal.orzel@amd.com>, Julien
 Grall <jgrall@amazon.com>, Stefano Stabellini <sstabellini@kernel.org>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: Re: [PATCH for-4.19 v2] docs/arm: Document where Xen should be loaded
 in memory
Thread-Topic: [PATCH for-4.19 v2] docs/arm: Document where Xen should be
 loaded in memory
Thread-Index: AQHaBmTvGf2mFF5QhEixkbFwkxFRMrBY77QA
Date: Tue, 24 Oct 2023 13:30:37 +0000
Message-ID: <F5195B0D-C337-4221-9395-56F625497671@arm.com>
References: <20231024102858.29067-1-julien@xen.org>
In-Reply-To: <20231024102858.29067-1-julien@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.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_|DU0PR08MB8345:EE_|DB1PEPF00039232:EE_|DU5PR08MB10414:EE_
X-MS-Office365-Filtering-Correlation-Id: 136c43ca-e187-4a49-e819-08dbd4956e9b
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:
 5x2hLSnfRLEtFvOyhrrk7CWUVbeDBZov0CARaP5Gre41Fg3fClROuyYnzaQ/nFCBfESvVfWWCiIe6/7/kLjqyfIvVJEkF9u9m2ZdIjyEfJJ9Bq32F19PukeJYRHPlz61OZ7JmcJJrpJgO6C4FsMC9JSh+Nz0TrbKm5aPbVkqKcQMwz1LCmnRH3PVlVd7nHLgUxxElyfosR6gPWE7eKfp2LXczlZ/qBhVTTKH0QiUQss5Tc+if3i67zO5OdhNcUm/UyuWoAbmmA+rvCv/2J0RBxHre8Sg7NC4svczE9D1NIODYOt2kBz152nbujET5uVskj5ZVYSQc3CuKd9RmWeFnlRCHpN9bKIfmlRtXA8BcRQ+rqCzw6cWafj9NJC0O+atpoPWemK5VcP2KHV3tdCP1VUQ/LCQm6rQfiUvGCQIbgutJB8+lsnnFC4DMn06RO5TJ2yBUCtICyFgtVustilaY4kW0fIKKZry2JoDZsGZG0I0gHzZ1mdKXEC+beHVuwZqdjchP/svXruNL2ss4QG0n5uV9C+vKYHGqOX3bzkJvLARVIAD/SZ5S4smTM6px7HLkpmUbUud8QTj1mabrfa2K83aAwhlYN9FlXgqf641HjizAkpRP/FZD3hHx1oG4qSOAXxsZoGyOt0zegRBAuIEZg==
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)(366004)(346002)(136003)(376002)(230922051799003)(451199024)(1800799009)(64100799003)(186009)(6486002)(6506007)(38070700009)(966005)(316002)(54906003)(71200400001)(66946007)(6916009)(64756008)(66446008)(76116006)(66556008)(66476007)(86362001)(8936002)(33656002)(8676002)(91956017)(478600001)(36756003)(5660300002)(4326008)(38100700002)(41300700001)(2616005)(53546011)(2906002)(83380400001)(122000001)(6512007)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="us-ascii"
Content-ID: <78A84E3535A98E478C68BDF986AB7B16@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR08MB8345
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:
 DB1PEPF00039232.eurprd03.prod.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	6cf03327-cd72-4718-717c-08dbd4956875
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	Pp0xm9XeRYIvcnEQjmgYuSoGjlxS+RilToRKnpg4nIzwJR4JU9oeX9+qVLBf0aeBsEFgoqgPcv79UsIWCA6/75hpe1pr0v+eMI9BprqVMmv75aqB0bncK0JwFbjT9ejSsYQOXxMtnWRvlN8qRnwkn8bBquC9jeDxuBIqJjCrxDeA5J4Nzu+CTu+q3CSzsMd1N2BiBVns5344DtvVfVTfjyhq+Py36VvbQKnxwmlLd+svlvXExKurHSNh/fcSKY6VK4pA7eWOh18BYMr6c3c9PuJU1zU8p2bj4p/8JVzw1T5XTXk/4n1d+e8dt9ugRgRsu0k0627ukYbMLL8j0RST9hp9XWAV7xbM44LCkhzjLaYkrXiaXotPFAH2ho4/lLZkuCEMF5uChv/3x0Wg5WvuPylXF9CyCdSs+tEIR8c2dwOD6bqXdT7CNFe8kwa4pPIPHwu07d6GbwZNcghdKyps3EPNI8ZMO3H1CUi9uzhvp7OKL9fAb/DDfKALeZ8h1msBJzm18xx5zyJH2uFuhGxRxq8Jch+b420zFxwcqLHllN1ZjkvBhcJvXjOHlR/CQruOK9D2ucshrd2bI6vG5YnSNriqFXDvmLECtF9/LYtyBBGKwvy8y+2/S1tNMJOTomL1isrYKZoNiKcLOGOhshR6GhNFuvGi1nNqFkAJMk+tn++I1TBzrvy2M5Bxk7RzMvQVue6pce+IBCWzlu7mcWqkIjgtE3/LEy0aU6qipsk49xM=
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)(376002)(396003)(230922051799003)(1800799009)(186009)(64100799003)(82310400011)(451199024)(46966006)(40470700004)(36840700001)(26005)(2906002)(40460700003)(86362001)(36756003)(5660300002)(4326008)(8936002)(6862004)(8676002)(33656002)(478600001)(6506007)(2616005)(356005)(107886003)(81166007)(36860700001)(41300700001)(70206006)(54906003)(82740400003)(70586007)(316002)(83380400001)(6486002)(47076005)(966005)(6512007)(53546011)(40480700001)(336012);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 24 Oct 2023 13:30:47.3671
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 136c43ca-e187-4a49-e819-08dbd4956e9b
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:
	DB1PEPF00039232.eurprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU5PR08MB10414

Hi Julien,

> On 24 Oct 2023, at 12:28, Julien Grall <julien@xen.org> wrote:
>=20
> From: Julien Grall <jgrall@amazon.com>
>=20
> In commit 9d267c049d92 ("xen/arm64: Rework the memory layout"),
> we decided to require Xen to be loaded below 2 TiB to simplify
> the logic to enable the MMU. The limit was decided based on
> how known platform boot plus some slack.
>=20
> We had a recent report that this is not sufficient on the AVA
> platform with a old firmware [1]. But the restriction is not
> going to change in Xen 4.18. So document the limit clearly
> in docs/misc/arm/booting.txt.
>=20
> [1] https://lore.kernel.org/20231013122658.1270506-3-leo.yan@linaro.org
>=20
> Signed-off-by: Julien Grall <jgrall@amazon.com>
> Reviewed-by: Michal Orzel <michal.orzel@amd.com>

Reviewed-by: Bertrand Marquis <bertrand.marquis@arm.com>

Cheers
Bertrand

>=20
> ---
>=20
>    Changes in v2:
>        - The limit is 2 TiB no 5
>        - Remove unnecessary sentence in the docs
>        - Add missing link
>        - Add Michal's reviewed-by
>=20
> I couldn't find a nice way to document it in SUPPORT.md. So I decided
> to only document the restrict in docs/misc/arm/booting.txt for now.
>=20
> I also couldn't find any way from GRUB/UEFI (I didn't look much) to
> specify the loading address.
> ---
> docs/misc/arm/booting.txt | 4 +++-
> 1 file changed, 3 insertions(+), 1 deletion(-)
>=20
> diff --git a/docs/misc/arm/booting.txt b/docs/misc/arm/booting.txt
> index 02f7bb65ec6d..547f58a7d981 100644
> --- a/docs/misc/arm/booting.txt
> +++ b/docs/misc/arm/booting.txt
> @@ -21,7 +21,9 @@ The exceptions to this on 32-bit ARM are as follows:
>  zImage protocol should still be used and not the stricter "raw
>  (non-zImage)" protocol described in arm/Booting.
>=20
> -There are no exception on 64-bit ARM.
> +The exceptions to this on 64-bit ARM are as follows:
> +
> + Xen binary should be loaded in memory below 2 TiB.
>=20
> Booting Guests
> --------------
> --=20
> 2.40.1
>=20



From xen-devel-bounces@lists.xenproject.org Tue Oct 24 13:32:12 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 13:32:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621966.968977 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvHVy-0005kj-SX; Tue, 24 Oct 2023 13:32:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621966.968977; Tue, 24 Oct 2023 13:32: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 1qvHVy-0005kc-Pv; Tue, 24 Oct 2023 13:32:10 +0000
Received: by outflank-mailman (input) for mailman id 621966;
 Tue, 24 Oct 2023 13: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 1qvHVw-0005kI-Sp
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 13: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 1qvHVn-00013e-3W; Tue, 24 Oct 2023 13:31:59 +0000
Received: from 54-240-197-227.amazon.com ([54.240.197.227]
 helo=[192.168.12.80]) by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qvHVm-0007w3-Ni; Tue, 24 Oct 2023 13:31: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=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=YTo6wsg13uSm1fywF3tBpdXE6+8J7FNp7f7zBjM8rdE=; b=CvZFHK3gQsug2lDmshdDGZ7nSn
	3WkfDmdo9ZDZvas9+ONzknuTC4GdGtmSGPOYBhn9YcjpTQUu8JwZqX0ASCRcovshqTvft+aE/YHbh
	CgKUtjW0HS9b1E9bpnva0v20H+iQudcHBCTfoYT4/4jWyTc1u73ZXfG+87cmfbmAV0Do=;
Message-ID: <af4a86bc-40d3-4363-adc8-30981652cd2b@xen.org>
Date: Tue, 24 Oct 2023 14:31:56 +0100
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-GB
To: Stefano Stabellini <sstabellini@kernel.org>,
 Jan Beulich <jbeulich@suse.com>
Cc: Stefano Stabellini <stefano.stabellini@amd.com>,
 Simone Ballarin <simone.ballarin@bugseng.com>, consulting@bugseng.com,
 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>,
 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>
 <725f5193-c8d3-1bc8-cd62-2a2b1b5ecc01@suse.com>
 <alpine.DEB.2.22.394.2310171709310.965337@ubuntu-linux-20-04-desktop>
 <ead797ed-84cc-fb70-5259-7e11211d049e@suse.com>
 <alpine.DEB.2.22.394.2310181739270.965337@ubuntu-linux-20-04-desktop>
 <e642bc2a-cefa-4ee4-6394-3c10102e8164@suse.com>
 <alpine.DEB.2.22.394.2310190915590.1945130@ubuntu-linux-20-04-desktop>
 <6374f0f4-d58f-83ca-6eb3-d5a9fcbac525@suse.com>
 <alpine.DEB.2.22.394.2310201622160.2356865@ubuntu-linux-20-04-desktop>
 <36e6dd08-918c-9791-0dab-ca75d4b98d7e@suse.com>
 <alpine.DEB.2.22.394.2310231346370.3516@ubuntu-linux-20-04-desktop>
From: Julien Grall <julien@xen.org>
In-Reply-To: <alpine.DEB.2.22.394.2310231346370.3516@ubuntu-linux-20-04-desktop>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi Stefano,

On 23/10/2023 21:47, Stefano Stabellini wrote:
> On Mon, 23 Oct 2023, Jan Beulich wrote:
>> On 21.10.2023 01:26, Stefano Stabellini wrote:
>>> On Fri, 20 Oct 2023, Jan Beulich wrote:
>>>> On 19.10.2023 18:19, Stefano Stabellini wrote:
>>>>> On Thu, 19 Oct 2023, Jan Beulich wrote:
>>>>>> On 19.10.2023 02:44, Stefano Stabellini wrote:
>>>>>>> On Wed, 18 Oct 2023, Jan Beulich wrote:
>>>>>>>> On 18.10.2023 02:48, Stefano Stabellini wrote:
>>>>>>>>> On Mon, 16 Oct 2023, Jan Beulich wrote:
>>>>>>>>>> On 29.09.2023 00:24, Stefano Stabellini wrote:
>>>>>>>>>>> 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:
>>>>>>>>>>
>>>>>>>>>> ... "least resistance" won't gain us much, as hardly any guards don't
>>>>>>>>>> start with an underscore.
>>>>>>>>>>
>>>>>>>>>>> - 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__ ?
>>>>>>>>>>
>>>>>>>>>> There are no headers in xen/include/. For (e.g.) xen/include/xen/ we
>>>>>>>>>> may go with XEN_BLAH_H; whether ASM prefixes are needed I'm not sure;
>>>>>>>>>> we could go with just ARM_BLAH_H and X86_BLAH_H?
>>>>>>>>>>
>>>>>>>>>> The primary question though is (imo) how to deal with private headers,
>>>>>>>>>> such that the risk of name collisions is as small as possible.
>>>>>>>>>
>>>>>>>>> Looking at concrete examples under xen/include/xen:
>>>>>>>>> xen/include/xen/mm.h __XEN_MM_H__
>>>>>>>>> xen/include/xen/dm.h __XEN_DM_H__
>>>>>>>>> xen/include/xen/hypfs.h __XEN_HYPFS_H__
>>>>>>>>>
>>>>>>>>> So I think we should do for consistency:
>>>>>>>>> xen/include/xen/blah.h __XEN_BLAH_H__
>>>>>>>>>
>>>>>>>>> Even if we know the leading underscore are undesirable, in this case I
>>>>>>>>> would prefer consistency.
>>>>>>>>
>>>>>>>> I'm kind of okay with that. FTAOD - here and below you mean to make this
>>>>>>>> one explicit first exception from the "no new leading underscores" goal,
>>>>>>>> for newly added headers?
>>>>>>>
>>>>>>> Yes. The reason is for consistency with the existing header files.
>>>>>>>
>>>>>>>
>>>>>>>>> On the other hand looking at ARM examples:
>>>>>>>>> xen/arch/arm/include/asm/traps.h __ASM_ARM_TRAPS__
>>>>>>>>> xen/arch/arm/include/asm/time.h __ARM_TIME_H__
>>>>>>>>> xen/arch/arm/include/asm/sysregs.h __ASM_ARM_SYSREGS_H
>>>>>>>>> xen/arch/arm/include/asm/io.h _ASM_IO_H
>>>>>>>>>
>>>>>>>>> And also looking at x86 examples:
>>>>>>>>> xen/arch/x86/include/asm/paging.h _XEN_PAGING_H
>>>>>>>>> xen/arch/x86/include/asm/p2m.h _XEN_ASM_X86_P2M_H
>>>>>>>>> xen/arch/x86/include/asm/io.h _ASM_IO_H
>>>>>>>>>
>>>>>>>>> Thet are very inconsistent.
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> So for ARM and X86 headers I think we are free to pick anything we want,
>>>>>>>>> including your suggested ARM_BLAH_H and X86_BLAH_H. Those are fine by
>>>>>>>>> me.
>>>>>>>>
>>>>>>>> To be honest, I'd prefer a global underlying pattern, i.e. if common
>>>>>>>> headers are "fine" to use leading underscores for guards, arch header
>>>>>>>> should, too.
>>>>>>>
>>>>>>> I am OK with that too. We could go with:
>>>>>>> __ASM_ARM_BLAH_H__
>>>>>>> __ASM_X86_BLAH_H__
>>>>>>>
>>>>>>> I used "ASM" to make it easier to differentiate with the private headers
>>>>>>> below. Also the version without "ASM" would work but it would only
>>>>>>> differ with the private headers in terms of leading underscores. I
>>>>>>> thought that also having "ASM" would help readability and help avoid
>>>>>>> confusion.
>>>>>>>
>>>>>>>
>>>>>>>>> For private headers such as:
>>>>>>>>> xen/arch/arm/vuart.h __ARCH_ARM_VUART_H__
>>>>>>>>> xen/arch/arm/decode.h __ARCH_ARM_DECODE_H_
>>>>>>>>> xen/arch/x86/mm/p2m.h __ARCH_MM_P2M_H__
>>>>>>>>> xen/arch/x86/hvm/viridian/private.h X86_HVM_VIRIDIAN_PRIVATE_H
>>>>>>>>>
>>>>>>>>> More similar but still inconsistent. I would go with ARCH_ARM_BLAH_H and
>>>>>>>>> ARCH_X86_BLAH_H for new headers.
>>>>>>>>
>>>>>>>> I'm afraid I don't like this, as deeper paths would lead to unwieldy
>>>>>>>> guard names. If we continue to use double-underscore prefixed names
>>>>>>>> in common and arch headers, why don't we demand no leading underscores
>>>>>>>> and no path-derived prefixes in private headers? That'll avoid any
>>>>>>>> collisions between the two groups.
>>>>>>>
>>>>>>> OK, so for private headers:
>>>>>>>
>>>>>>> ARM_BLAH_H
>>>>>>> X86_BLAH_H
>>>>>>>
>>>>>>> What that work for you?
>>>>>>
>>>>>> What are the ARM_ and X86_ prefixes supposed to indicate here? Or to ask
>>>>>> differently, how would you see e.g. common/decompress.h's guard named?
>>>>>
>>>>> I meant that:
>>>>>
>>>>> xen/arch/arm/blah.h would use ARM_BLAH_H
>>>>> xen/arch/x86/blah.h would use X86_BLAH_H
>>>>>
>>>>> You have a good question on something like xen/common/decompress.h and
>>>>> xen/common/event_channel.h.  What do you think about:
>>>>>
>>>>> COMMON_BLAH_H, so specifically COMMON_DECOMPRESS_H
>>>>>
>>>>> otherwise:
>>>>>
>>>>> XEN_BLAH_H, so specifically XEN_DECOMPRESS_H
>>>>>
>>>>> I prefer COMMON_BLAH_H but I think both versions are OK.
>>>>
>>>> IOW you disagree with my earlier "... and no path-derived prefixes",
>>>> and you prefer e.g. DRIVERS_PASSTHROUGH_VTD_DMAR_H as a consequence?
>>>> FTAOD my earlier suggestion was simply based on the observation that
>>>> the deeper the location of a header in the tree, the more unwieldy
>>>> its guard name would end up being if path prefixes were to be used.
>>>
>>> I don't have a strong opinion on "path-derived prefixes". I prefer
>>> consistency and easy-to-figure-out guidelines over shortness.

We adopted the MISRA Rule 5.4 which imposed us a limit (40 for Xen) on 
the number of characters for macros. AFAIU, this would apply to guards.

In the example provided by Jan (DRIVERS_PASSTHROUGH_VTD_DMAR_H), this is 
already 31 characters. So this is quite close to the limit.

>>>
>>> The advantage of a path-derived prefix is that it is trivial to figure
>>> out at first glance. If we can come up with another system that is also
>>> easy then fine. Do you have a suggestion? If so, sorry I missed it.
>>
>> Well, I kind of implicitly suggested "no path derived prefixes for private
>> headers", albeit realizing that there's a chance then of guards colliding.
>> I can't think of a good scheme which would fit all goals (no collisions,
>> uniformity, and not unduly long).
> 
> Here I think we would benefit from a third opinion. Julien? Anyone?

Just to confirm, the opinion is only for private headers. You have an 
agreement for the rest, is it correct?

If so, then I think we need to have shorter names for guard to avoid 
hitting the 40 characters limit. I can't think of a way to have a common 
scheme between private and common headers. So I would consider to have a 
separate scheme.

I am not sure if you or Jan already proposed an alternative scheme.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 13:33:41 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 13:33:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621971.968988 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvHXQ-0006RQ-CO; Tue, 24 Oct 2023 13:33:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621971.968988; Tue, 24 Oct 2023 13: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 1qvHXQ-0006RJ-80; Tue, 24 Oct 2023 13:33:40 +0000
Received: by outflank-mailman (input) for mailman id 621971;
 Tue, 24 Oct 2023 13:33: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=Q5Q5=GG=arm.com=Bertrand.Marquis@srs-se1.protection.inumbo.net>)
 id 1qvHXP-0006RD-2H
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 13:33:39 +0000
Received: from EUR02-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur02on20601.outbound.protection.outlook.com
 [2a01:111:f400:fe16::601])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id ef2a8a2e-7271-11ee-9b0e-b553b5be7939;
 Tue, 24 Oct 2023 15:33:37 +0200 (CEST)
Received: from DU7PR01CA0023.eurprd01.prod.exchangelabs.com
 (2603:10a6:10:50f::20) by AS2PR08MB8336.eurprd08.prod.outlook.com
 (2603:10a6:20b:558::19) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.35; Tue, 24 Oct
 2023 13:33:29 +0000
Received: from DB5PEPF00014B9D.eurprd02.prod.outlook.com
 (2603:10a6:10:50f:cafe::5c) by DU7PR01CA0023.outlook.office365.com
 (2603:10a6:10:50f::20) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.19 via Frontend
 Transport; Tue, 24 Oct 2023 13:33:29 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DB5PEPF00014B9D.mail.protection.outlook.com (10.167.8.164) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6933.18 via Frontend Transport; Tue, 24 Oct 2023 13:33:29 +0000
Received: ("Tessian outbound d1b3e404ba03:v215");
 Tue, 24 Oct 2023 13:33:29 +0000
Received: from 60e0430aced0.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 A2554C6F-5796-4E64-BEF2-5167EA875212.1; 
 Tue, 24 Oct 2023 13:33:22 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 60e0430aced0.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Tue, 24 Oct 2023 13:33:22 +0000
Received: from AM6PR08MB3784.eurprd08.prod.outlook.com (2603:10a6:20b:85::25)
 by GVXPR08MB10407.eurprd08.prod.outlook.com (2603:10a6:150:159::7)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.33; Tue, 24 Oct
 2023 13:33:20 +0000
Received: from AM6PR08MB3784.eurprd08.prod.outlook.com
 ([fe80::1635:b3e9:e4e7:943d]) by AM6PR08MB3784.eurprd08.prod.outlook.com
 ([fe80::1635:b3e9:e4e7:943d%6]) with mapi id 15.20.6907.025; Tue, 24 Oct 2023
 13:33: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: ef2a8a2e-7271-11ee-9b0e-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=8ofgUXmJITgTD8V9BfccIS4sLkKCoGSkXsXvcQDcOxQ=;
 b=G0upr1zsaHbylSGhPntGmTSxamPt6vbptFtrAaHxGxUrSL2vC0442MipWzCK/CHn00+pzyjFBQ681txtA9Hnn+0TW/oltoOmeL1l5t+GdRsIMrEaiVLYXSeyw1FZAtqXWljHkWF8f/2mQVDBA0n2/3PBxIKhjQTeL0DbW65HbU4=
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: d5d787c55567681f
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=VBd7+z82uM+9ATzwJAb7sZ2Z6Fe++pQ19od6Hlh0692XKcKDXBXEi+LRn/1ogxxncMLdBie2y+F0LwFR0KNcleagupExf1FBl2nAfKhohH/kGMa4PC3+fzCfU3OGro1yQXxFLN47qm+4EVtk9Z4U0ZdwldSGoZwdea6uvTAsLeo+k/ZM5orZR/6r/uq5A+3rLSa+5xRGT+iyEZehjEa2cm8f9i3a4g945wGVdDgZwq5jsDiHDdesxZ1lBkOkF0Qk6MBjx1KPDh/Ea0BdYjdsNIhELBdR6uaSSJ+8ILNq4CNhcONCuwVXTnSqmod2H/AVg7cYVjDBfwahLo2DiZpulQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=8ofgUXmJITgTD8V9BfccIS4sLkKCoGSkXsXvcQDcOxQ=;
 b=PQbzMItavEW9OZsSfMA0AqOgXnPFrDyGGsJvo2JA+2pE8vhDrPWiNIvc/RvaJA/NwOXx2TMKT34q0LMA3/yQBOCguCCqDdosu0F4Se58HFytXFBHcF+D0Bpyx8IfRWacFTX39mbnQoYsYseRhagarg+rehPyKt9svQ8o5U08cU8r9l/eMTRKYNkJfJwI0rwqcrg7UeygpJo4CrIBSzKiDnA7U7IribUBqwYqaDE/8w9lYFHnxpQAkPx1MwSoENh1g8djqeeP2ZvZ4c5AAxdKBklvZyldUMsZBkkbDURdvup8pAre4ZYVS7kjWDILCiVM9Ndxyjz+Wz6Ddp0MlkGLSQ==
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=8ofgUXmJITgTD8V9BfccIS4sLkKCoGSkXsXvcQDcOxQ=;
 b=G0upr1zsaHbylSGhPntGmTSxamPt6vbptFtrAaHxGxUrSL2vC0442MipWzCK/CHn00+pzyjFBQ681txtA9Hnn+0TW/oltoOmeL1l5t+GdRsIMrEaiVLYXSeyw1FZAtqXWljHkWF8f/2mQVDBA0n2/3PBxIKhjQTeL0DbW65HbU4=
From: Bertrand Marquis <Bertrand.Marquis@arm.com>
To: Julien Grall <julien@xen.org>
CC: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>, Julien
 Grall <jgrall@amazon.com>, Nicola Vetrini <nicola.vetrini@bugseng.com>
Subject: Re: [PATCH for-4.19] xen/arm64: domctl: Avoid unreachable code in
 subarch_do_domctl()
Thread-Topic: [PATCH for-4.19] xen/arm64: domctl: Avoid unreachable code in
 subarch_do_domctl()
Thread-Index: AQHaBdnC4y/97Q3UX0qYJDw3uJ9yWrBY8Y4A
Date: Tue, 24 Oct 2023 13:33:20 +0000
Message-ID: <12FE5EA7-34F4-4FB4-A822-2AB5FCB0F2C7@arm.com>
References: <20231023175220.42781-1-julien@xen.org>
In-Reply-To: <20231023175220.42781-1-julien@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.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_|GVXPR08MB10407:EE_|DB5PEPF00014B9D:EE_|AS2PR08MB8336:EE_
X-MS-Office365-Filtering-Correlation-Id: 7899dfdb-7dd0-466d-d362-08dbd495cf20
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:
 oyvLrbBwSTHBicksFNJHVqF7nf33NKSWLjVUmoHuIQFNZcg9Plgj+XRnsOeQHeAhGAG3Q7sV25byh5/eFxjDBD/UqPzoGCu0qiqjEH6u/XrSy4fCp9h24JT7G5OExT95+ot5RMapVd5dq4ocx05ZFTt/ECjZB/56mzVmuiDPy2KCLjoS4PmSexE2J3d+uji5fhqVRtlNpewTiBEgtiqtLT6fZ7LEMBb/4ksEek7CbWKdcUpbAN0AItPz7FrVQd4PkC2sVpM7NTS7/jzhptDx49b8vSYNN3g4cuEhgJM7hDd2u3fyeEZ/c725XUPV0JdN0j7I8dRbLTS986k4s7Hrk0ApteJ4qUANs/GtcikL1EU+7/4E9nJaBM3CjKK/RpUj1hC+fcbfim4r2V6QaFdV/7XvB43fgV/TdH9UcUnGnV/6J8YyPwIjeNUbezkiUmUdJ968zsDzZY6BEigNsYcvSjUldGTWuti4jH/Mg8adqRxZqK7Ygtx9d6YB3vl/kuX5hsvRa9d/qp4kTiGXF8n3cuQ8SCd/yQAu/7fRN9bmPTY8CflNHIUzlq0MUTz2CirQJBISWdAVrpk01aML7xfbeYzTwUsEyPNS+HVPUvu5vIu49CW67BUfjO0K6m0qSweZx5usrXQUto74f1j0QcQHgQ==
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)(136003)(39860400002)(376002)(366004)(396003)(230922051799003)(1800799009)(186009)(64100799003)(451199024)(38070700009)(38100700002)(2906002)(86362001)(36756003)(5660300002)(4326008)(8936002)(8676002)(33656002)(478600001)(71200400001)(6506007)(2616005)(122000001)(66476007)(41300700001)(54906003)(91956017)(66446008)(6916009)(76116006)(66556008)(66946007)(316002)(83380400001)(64756008)(6486002)(6512007)(53546011)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="us-ascii"
Content-ID: <3A201012162F2A429C54AAAF9150C7B0@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: GVXPR08MB10407
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:
 DB5PEPF00014B9D.eurprd02.prod.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	9275af04-b163-4466-d914-08dbd495c9c8
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	lprAqLIjM0A4Txh/j5u3c7J5qDspT9yIRZTJt4Phl5WnsbsEzc5JCjTR5EYdNRL/MlUvqpAvfzjG1ssJQXf4iP9WpXUApoRLH7VgWPw418bxQy9RK9eu0YqCMpi+ZuE+3AUZs9TT4xipScIKIIe/ApfF96Kfcy/nYJ3B94h3ksV+OpmKo16dVCa53vLw1sB1VAuWIsk+TtQvAQWShQjLuzg8Te05qyqoAIF4nkzEXDdcgi+xgPuCstqPJ69EIf8wxWnWeVrIEQpmbeOYTIHBfdl4Dp+E+mTHnS8M/kgrcwFwHOuqX5dsUpvVgEuMcUIpocESt0ECmoWQRnH3d4XFNlNhcYDoc8SLnXPA8J7E1BvfgaRjNBXDUgruqVFFlKtTu7EgxGyaHZmwNhKrNPtbsWvHYwVIphLoydmnc8lC12fAxO0aS108AW/kxlZvGNYXzw6ueYWEb2sAxyogkXWpd0w7PwWhQRmTMPeUe3O4duh9hHOMit9wAVKA8xZ+wLjaw0il1LEjTURtj3FNOFxV6FJmW/RI7zqVRe4ALsO9sE5k0I3YimmubpcEv/lk5lGPCYORVP/SGCdqC/WGn1nTCPVHB1Y7GEupqsfJUd3zw3oceNdqtm3FWfVLpjCiDp0qmNytkgKXSrA4Mee10y/JQoUEH31W/JStjHL3WY8hgOG/j2KJqGtGE2SSgiQYlrvXXHGy0E9WAnyLWh0hmSaOoiJDNg4Zv9z9CK5VJxLYZl7kJUf9b44bsKLOWiUw6VdA
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)(396003)(136003)(230922051799003)(1800799009)(186009)(64100799003)(82310400011)(451199024)(40470700004)(46966006)(36840700001)(47076005)(8936002)(478600001)(6486002)(54906003)(316002)(6862004)(70586007)(4326008)(41300700001)(8676002)(70206006)(5660300002)(40480700001)(2906002)(53546011)(83380400001)(6506007)(107886003)(86362001)(6512007)(81166007)(82740400003)(36860700001)(26005)(36756003)(40460700003)(336012)(356005)(2616005)(33656002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 24 Oct 2023 13:33:29.3307
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 7899dfdb-7dd0-466d-d362-08dbd495cf20
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:
	DB5PEPF00014B9D.eurprd02.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS2PR08MB8336

Hi Julien,

> On 23 Oct 2023, at 19:52, Julien Grall <julien@xen.org> wrote:
>=20
> From: Julien Grall <jgrall@amazon.com>
>=20
> The 'break' the XEN_DOMCTL_set_address_size is unreachable and tools
> like Eclair will report as a violation of Misra Rule 2.1.
>=20
> Furthermore, the nested switch is not very easy to read. So move
> out the nested switch in a separate function to improve the
> readability and hopefully address the MISRA violation.
>=20
> Reported-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
> Signed-off-by: Julien Grall <jgrall@amazon.com>

Reviewed-by: Bertrand Marquis <bertrand.marquis@arm.com>

Cheers
Bertrand

>=20
> ---
>=20
> Only compiled tested. Waiting for the CI to confirm there is no
> regression.
> ---
> xen/arch/arm/arm64/domctl.c | 34 +++++++++++++++++++---------------
> 1 file changed, 19 insertions(+), 15 deletions(-)
>=20
> diff --git a/xen/arch/arm/arm64/domctl.c b/xen/arch/arm/arm64/domctl.c
> index 14fc622e9956..8720d126c97d 100644
> --- a/xen/arch/arm/arm64/domctl.c
> +++ b/xen/arch/arm/arm64/domctl.c
> @@ -33,27 +33,31 @@ static long switch_mode(struct domain *d, enum domain=
_type type)
>     return 0;
> }
>=20
> +static long set_address_size(struct domain *d, uint32_t address_size)
> +{
> +    switch ( address_size )
> +    {
> +    case 32:
> +        if ( !cpu_has_el1_32 )
> +            return -EINVAL;
> +        /* SVE is not supported for 32 bit domain */
> +        if ( is_sve_domain(d) )
> +            return -EINVAL;
> +        return switch_mode(d, DOMAIN_32BIT);
> +    case 64:
> +        return switch_mode(d, DOMAIN_64BIT);
> +    default:
> +        return -EINVAL;
> +    }
> +}
> +
> long subarch_do_domctl(struct xen_domctl *domctl, struct domain *d,
>                        XEN_GUEST_HANDLE_PARAM(xen_domctl_t) u_domctl)
> {
>     switch ( domctl->cmd )
>     {
>     case XEN_DOMCTL_set_address_size:
> -        switch ( domctl->u.address_size.size )
> -        {
> -        case 32:
> -            if ( !cpu_has_el1_32 )
> -                return -EINVAL;
> -            /* SVE is not supported for 32 bit domain */
> -            if ( is_sve_domain(d) )
> -                return -EINVAL;
> -            return switch_mode(d, DOMAIN_32BIT);
> -        case 64:
> -            return switch_mode(d, DOMAIN_64BIT);
> -        default:
> -            return -EINVAL;
> -        }
> -        break;
> +        return set_address_size(d, domctl->u.address_size.size);
>=20
>     default:
>         return -ENOSYS;
> --=20
> 2.40.1
>=20
>=20



From xen-devel-bounces@lists.xenproject.org Tue Oct 24 13:37:45 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 13:37:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621976.968999 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvHbG-0007y3-TW; Tue, 24 Oct 2023 13:37:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621976.968999; Tue, 24 Oct 2023 13:37: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 1qvHbG-0007xw-P3; Tue, 24 Oct 2023 13:37:38 +0000
Received: by outflank-mailman (input) for mailman id 621976;
 Tue, 24 Oct 2023 13:37: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=+b+W=GG=gmail.com=xadimgnik@srs-se1.protection.inumbo.net>)
 id 1qvHbF-0007w3-Ip
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 13:37:37 +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 7d7ded41-7272-11ee-9b0e-b553b5be7939;
 Tue, 24 Oct 2023 15:37:35 +0200 (CEST)
Received: by mail-wm1-x32a.google.com with SMTP id
 5b1f17b1804b1-40906fc54fdso13123655e9.0
 for <xen-devel@lists.xenproject.org>; Tue, 24 Oct 2023 06:37:35 -0700 (PDT)
Received: from [192.168.6.66] (54-240-197-238.amazon.com. [54.240.197.238])
 by smtp.gmail.com with ESMTPSA id
 1-20020a05600c028100b004077219aed5sm16673519wmk.6.2023.10.24.06.37.33
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 24 Oct 2023 06:37: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: 7d7ded41-7272-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698154655; x=1698759455; 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=j9rxO3yi9gLObbLJi9rghTRfPCV/QR8/fM1S9i4WEuI=;
        b=j0jdOx67UYttN4NyBkNFwGBPjuS2HcHy+enVx7IgCvCeCGVuUmSh9UKqPyNnE29Ej9
         4PDM00U36/XzfT/9RketC04PpiQCqvGNGfS5Ggkwm8Kd9KRbCASV+tCb1/N4bkK1paw2
         74wtG3YOMUWcb6x12qg3+gX1W20q2uL3916JRiRoSCR9rO7LZOd3vxkayWbYkdHgftqY
         wiDv/b+fbyoZNccvR9x1rSRqHgAtFbUMSL42qNsXkD31Pj3sHvBpgMAVeJi/rPsdpncD
         qij4Ms+eAgOTGnNecOyPsCzZDx1lqrsltOzciwlqUdgIoSGk1i+z5tAWVaawW83VvvKx
         HBhg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698154655; x=1698759455;
        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=j9rxO3yi9gLObbLJi9rghTRfPCV/QR8/fM1S9i4WEuI=;
        b=IsrDOC3Nbd0gM0x5v4PUvgv+vCgxrgSlaEH+nIygAzjfM9LVyl7QeMjFyy5pXvHE+r
         z2S/HtBhwtxnINiIaWwGUs3Y4/KUFo9PQ2q8cp2FaGlJjbTvj2iEzyWi/xUfqBY4KX4T
         psNhgPyotCDUfT0jq0QhRYc6TTj95HXOa/9TJ/ijFHDbtRcqYdgIHqclUFc4bcD8Em0F
         d7KGfwR3qLitqaKFAT2FknGBEfBLPwkH7W38Pufhi0vieAVC2YbkWXHjNvudJ2QXOF7+
         7WD+iVEeaa0CNIciAQo1pfrKe7Zpt+KYwQgT3r0+FSA0LhzYAsrr6TwZ9sU5ur2prkUT
         eX1A==
X-Gm-Message-State: AOJu0Yxtcw9VzfndXtsNXv3AneV48lLD8YldRg4zjt573nd12lTsRI+2
	Lmb42TgaryU2PGPO507A2/0=
X-Google-Smtp-Source: AGHT+IFCwR5Zipko4S5zjbV/abnJStyPGZ1/DwAYuPk2b3wwXjk/TEZ1ExZWj50RRXVedONgMthJkw==
X-Received: by 2002:a05:600c:4588:b0:409:7d0:d20b with SMTP id r8-20020a05600c458800b0040907d0d20bmr3231221wmo.24.1698154654600;
        Tue, 24 Oct 2023 06:37:34 -0700 (PDT)
From: Paul Durrant <xadimgnik@gmail.com>
X-Google-Original-From: Paul Durrant <paul@xen.org>
Message-ID: <ea38b980-14dd-4442-96d4-699ee39a0d27@xen.org>
Date: Tue, 24 Oct 2023 14:37:32 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Reply-To: paul@xen.org
Subject: Re: [PATCH 06/12] hw/xen: add get_frontend_path() method to
 XenDeviceClass
Content-Language: en-US
To: David Woodhouse <dwmw2@infradead.org>, qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>, Hanna Reitz <hreitz@redhat.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Anthony Perard <anthony.perard@citrix.com>,
 =?UTF-8?Q?Marc-Andr=C3=A9_Lureau?= <marcandre.lureau@redhat.com>,
 Paolo Bonzini <pbonzini@redhat.com>, "Michael S. Tsirkin" <mst@redhat.com>,
 Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
 Richard Henderson <richard.henderson@linaro.org>,
 Eduardo Habkost <eduardo@habkost.net>, Marcelo Tosatti
 <mtosatti@redhat.com>, qemu-block@nongnu.org,
 xen-devel@lists.xenproject.org, kvm@vger.kernel.org
References: <20231016151909.22133-1-dwmw2@infradead.org>
 <20231016151909.22133-7-dwmw2@infradead.org>
 <5ef43a7c-e535-496d-8a14-bccbadab3bc0@xen.org>
 <d43b900a6c7987c6832ceeede9b4c5ab65d5bacd.camel@infradead.org>
 <55bb6967-9499-45ef-b4c8-00fbfaccef0d@xen.org>
 <4d059cb96a92004fe25fdb140a6c0b12e91b4d7e.camel@infradead.org>
Organization: Xen Project
In-Reply-To: <4d059cb96a92004fe25fdb140a6c0b12e91b4d7e.camel@infradead.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

On 24/10/2023 14:29, David Woodhouse wrote:
> On Tue, 2023-10-24 at 13:59 +0100, Paul Durrant wrote:
>> On 24/10/2023 13:56, David Woodhouse wrote:
>>> On Tue, 2023-10-24 at 13:42 +0100, Paul Durrant wrote:
>>>>
>>>>> --- a/hw/xen/xen-bus.c
>>>>> +++ b/hw/xen/xen-bus.c
>>>>> @@ -711,8 +711,16 @@ static void xen_device_frontend_create(XenDevice *xendev, Error **errp)
>>>>>      {
>>>>>          ERRP_GUARD();
>>>>>          XenBus *xenbus = XEN_BUS(qdev_get_parent_bus(DEVICE(xendev)));
>>>>> +    XenDeviceClass *xendev_class = XEN_DEVICE_GET_CLASS(xendev);
>>>>>      
>>>>> -    xendev->frontend_path = xen_device_get_frontend_path(xendev);
>>>>> +    if (xendev_class->get_frontend_path) {
>>>>> +        xendev->frontend_path = xendev_class->get_frontend_path(xendev, errp);
>>>>> +        if (!xendev->frontend_path) {
>>>>> +            return;
>>>>
>>>> I think you need to update errp here to note that you are failing to
>>>> create the frontend.
>>>
>>> If xendev_class->get_frontend_path returned NULL it will have filled in errp.
>>>
>>
>> Ok, but a prepend to say that a lack of path there means we skip
>> frontend creation seems reasonable?
> 
> No, it *is* returning an error. Perhaps I can make it
> 

I understand it is returning an error. I thought the point of the 
cascading error handling was to prepend text at each (meaningful) layer 
such that the eventual message conveyed what failed and also what the 
consequences of that failure were.

   Paul

>      if (!xendev->frontend_path) {
>          /*
>           * If the ->get_frontend_path() method returned NULL, it will
>           * already have set *errp accordingly. Return the error.
>           */
>          return /* false */;
>      }
> 
> 
>>> As a general rule (I'll be doing a bombing run on xen-bus once I get my
>>> patch queue down into single digits) we should never check 'if (*errp)'
>>> to check if a function had an error. It should *also* return a success
>>> or failure indication, and we should cope with errp being NULL.
>>>
>>
>> I'm pretty sure someone told me the exact opposite a few years back.
> 
> Then they were wrong :)



From xen-devel-bounces@lists.xenproject.org Tue Oct 24 13:40:30 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 13:40:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621978.969008 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvHdu-0001II-8h; Tue, 24 Oct 2023 13:40:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621978.969008; Tue, 24 Oct 2023 13:40: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 1qvHdu-0001IB-5p; Tue, 24 Oct 2023 13:40:22 +0000
Received: by outflank-mailman (input) for mailman id 621978;
 Tue, 24 Oct 2023 13:40: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=9CvU=GG=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qvHds-0001I3-Rg
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 13:40:20 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id df5e3ff2-7272-11ee-98d5-6d05b1d4d9a1;
 Tue, 24 Oct 2023 15:40:19 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id 3C1D04EE0739;
 Tue, 24 Oct 2023 15:40: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: df5e3ff2-7272-11ee-98d5-6d05b1d4d9a1
MIME-Version: 1.0
Date: Tue, 24 Oct 2023 15:40:19 +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.cooper3@citrix.com, roger.pau@citrix.com, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
Subject: Re: [XEN PATCH][for-4.19 v4 2/8] x86: add deviations for variables
 only used in asm code
In-Reply-To: <2f3850a7-f2a3-350f-b9b6-be0bde0d1a28@suse.com>
References: <cover.1698053876.git.nicola.vetrini@bugseng.com>
 <67ec8b468d6048f7f91590b59430df275b2f5870.1698053876.git.nicola.vetrini@bugseng.com>
 <2aaa0978-e28f-4151-f4ba-f2628f6d4677@suse.com>
 <ef7f5c65ad0b0129f6b6119b6ad7d506@bugseng.com>
 <2f3850a7-f2a3-350f-b9b6-be0bde0d1a28@suse.com>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <53617132b87450fc385b2f5887bfe65f@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 24/10/2023 10:12, Jan Beulich wrote:
> On 24.10.2023 09:58, Nicola Vetrini wrote:
>> On 24/10/2023 09:32, Jan Beulich wrote:
>>> On 23.10.2023 11:56, Nicola Vetrini wrote:
>>>> --- a/xen/arch/x86/include/asm/asm_defns.h
>>>> +++ b/xen/arch/x86/include/asm/asm_defns.h
>>>> @@ -31,6 +31,7 @@ asm ( "\t.equ CONFIG_INDIRECT_THUNK, "
>>>>   * gets set up by the containing function.
>>>>   */
>>>>  #ifdef CONFIG_FRAME_POINTER
>>>> +/* SAF-1-safe */
>>>>  register unsigned long current_stack_pointer asm("rsp");
>>>>  # define ASM_CALL_CONSTRAINT , "+r" (current_stack_pointer)
>>>>  #else
>>> 
>>> SAF-1-safe is about symbols "used only by asm modules". This doesn't
>>> apply
>>> to the declaration here.
>>> 
>> 
>> The wording could change to "asm code" if that is deemed clearer.
> 
> Question is what would be meant by "asm code"; "asm modules" is quite
> clear.
> 

Well, I don't know. It's up to the community to decide that. It can be 
an ad-hoc
justification, but I don't see much value in doing so. What do you 
propose to get this patch
approved (at least on your account)?.

>>>> --- a/xen/arch/x86/setup.c
>>>> +++ b/xen/arch/x86/setup.c
>>>> @@ -75,6 +75,7 @@ static bool __initdata opt_invpcid = true;
>>>>  boolean_param("invpcid", opt_invpcid);
>>>>  bool __read_mostly use_invpcid;
>>>> 
>>>> +/* SAF-1-safe Only used in asm code and within this source file */
>>>>  unsigned long __read_mostly cr4_pv32_mask;
>>>> 
>>>>  /* **** Linux config option: propagated to domain0. */
>>>> @@ -147,12 +148,13 @@ cpumask_t __read_mostly cpu_present_map;
>>>>  unsigned long __read_mostly xen_phys_start;
>>>> 
>>>>  char __section(".init.bss.stack_aligned") __aligned(STACK_SIZE)
>>>> -    cpu0_stack[STACK_SIZE];
>>>> +    cpu0_stack[STACK_SIZE]; /* SAF-1-safe Only used in asm code and
>>>> below */
>>> 
>>> Wasn't it that such comments need to live on the earlier line?
>> 
>> On the same line is fine as well. I personally found it less clear
>> putting that in the
>> line above.
> 
> But please recall that these comments are intended to cover other
> scanners as well. Iirc only Eclair accepts comments on the same line.
> Nevertheless I realize that putting the comment on the earlier line
> is problematic (and maybe also scanner dependent) when that ends up
> in the middle of a declaration / definition.
> 
> Jan

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


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 13:42:10 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 13:42:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621982.969017 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvHfb-0002I5-IC; Tue, 24 Oct 2023 13:42:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621982.969017; Tue, 24 Oct 2023 13:42: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 1qvHfb-0002Hy-Fi; Tue, 24 Oct 2023 13:42:07 +0000
Received: by outflank-mailman (input) for mailman id 621982;
 Tue, 24 Oct 2023 13:42: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=9CvU=GG=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qvHfZ-0002GM-Ks
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 13:42:05 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 1ad681c9-7273-11ee-9b0e-b553b5be7939;
 Tue, 24 Oct 2023 15:41:59 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id 209CA4EE0739;
 Tue, 24 Oct 2023 15:41: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: 1ad681c9-7273-11ee-9b0e-b553b5be7939
MIME-Version: 1.0
Date: Tue, 24 Oct 2023 15:41:59 +0200
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: Jan Beulich <jbeulich@suse.com>, Stefano Stabellini
 <sstabellini@kernel.org>
Cc: sstabellini@kernel.org, michal.orzel@amd.com, xenia.ragiadakou@amd.com,
 ayan.kumar.halder@amd.com, consulting@bugseng.com,
 andrew.cooper3@citrix.com, roger.pau@citrix.com, Wei Liu <wl@xen.org>, Jun
 Nakajima <jun.nakajima@intel.com>, Kevin Tian <kevin.tian@intel.com>,
 xen-devel@lists.xenproject.org
Subject: Re: [XEN PATCH][for-4.19 v4 3/8] x86: add deviation comments for
 asm-only functions
In-Reply-To: <52422128-156d-5d6c-46b2-261b1c7e85c0@suse.com>
References: <cover.1698053876.git.nicola.vetrini@bugseng.com>
 <36d24b3a3e264f0e0b265b4f68d6432a143d64cd.1698053876.git.nicola.vetrini@bugseng.com>
 <a8370e98-1cb6-8fde-9458-e579047dd607@suse.com>
 <2d92ef1f753165e2fa9cc7c04c219217@bugseng.com>
 <52422128-156d-5d6c-46b2-261b1c7e85c0@suse.com>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <734cc13409b44f709649895d76d388e2@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 24/10/2023 10:14, Jan Beulich wrote:
> On 24.10.2023 10:01, Nicola Vetrini wrote:
>> On 24/10/2023 09:50, Jan Beulich wrote:
>>> On 23.10.2023 11:56, Nicola Vetrini wrote:
>>>> As stated in rules.rst, functions used only in asm code
>>>> are allowed to have no prior declaration visible when being
>>>> defined, hence these functions are deviated.
>>>> This also fixes violations of MISRA C:2012 Rule 8.4.
>>>> 
>>>> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
>>>> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
>>>> ---
>>>> Changes in v3:
>>>> - added SAF deviations for vmx counterparts to svm functions.
>>> 
>>> Same comment regarding the R-b here as for patch 2.
>>> 
>>>> --- a/xen/arch/x86/hvm/svm/intr.c
>>>> +++ b/xen/arch/x86/hvm/svm/intr.c
>>>> @@ -123,6 +123,7 @@ static void svm_enable_intr_window(struct vcpu 
>>>> *v,
>>>> struct hvm_intack intack)
>>>>          vmcb, general1_intercepts | GENERAL1_INTERCEPT_VINTR);
>>>>  }
>>>> 
>>>> +/* SAF-1-safe */
>>>>  void svm_intr_assist(void)
>>>>  {
>>>>      struct vcpu *v = current;
>>> 
>>> Linux has the concept of "asmlinkage" for functions interfacing C and
>>> assembly. Was it considered to use that - even if expanding to 
>>> nothing
>>> for all present architectures - as a way to annotate affected
>>> definitions
>>> in place of the SAF-*-safe comments?
>> 
>> It was proposed by Julien a while ago (I think it the thread on
>> deviations.rst) to define
>> a macro asmcall that expands to nothing, to mark all such functions.
>> Right now, it's not
>> strictly necessary (given that there are already some uses of SAF in
>> Stefano's for-4.19 branch.
> 
> Can this then be revisited please before any such reaches staging?
> 
> Jan

I'll let Stefano answer this one.

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


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 13:45:14 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 13:45:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.621998.969027 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvHiY-0004Gb-4l; Tue, 24 Oct 2023 13:45:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 621998.969027; Tue, 24 Oct 2023 13:45: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 1qvHiY-0004GU-2A; Tue, 24 Oct 2023 13:45:10 +0000
Received: by outflank-mailman (input) for mailman id 621998;
 Tue, 24 Oct 2023 13:45: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=jXWl=GG=casper.srs.infradead.org=BATV+e2898748ca55db067849+7366+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qvHiX-0004FA-Ci
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 13:45:09 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 8a9f5bee-7273-11ee-9b0e-b553b5be7939;
 Tue, 24 Oct 2023 15:45:07 +0200 (CEST)
Received: from [2001:8b0:10b:5:758e:a1c4:bc7:e7a7]
 (helo=u3832b3a9db3152.ant.amazon.com)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qvHiR-002nVf-Kk; Tue, 24 Oct 2023 13:45: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: 8a9f5bee-7273-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=MIME-Version:Content-Type:References:
	In-Reply-To:Date:Cc:To:From:Subject:Message-ID:Sender:Reply-To:
	Content-Transfer-Encoding:Content-ID:Content-Description;
	bh=K4D7odNBJQH65J7yw2XffuQZDPo9BXWlXSoRpsAebs8=; b=pUSraHcINhvc0nrpjghjhqkEYD
	CARYyvLOehik6Evgz0SPAnSm9ySTJuTdd7bdafaH0Ro+5KO7L2SbJUxf9+C6EnwdN9i9FKsRc9TLE
	rPHX0AVyDAnJdlxthLJwgOSUOlLWub9D7e6EScFuBY9lb1BoRQDYlf6xvHomfVW6Wk+fRlnVNu9qg
	y6aihXhJsQ18Byy9talQTHJddQac5fhePCYZpXQW3acTZYyQbHfu/SiTFYVBdEd9zWTN0h+2RHrWW
	XlnbBnBlCGoGFDxa6/42yrujzyrEDl2zvbUEFweiZS3nQMbsnmDJfsZyCHZ7Ppr2NZ57vp0Zwqnh1
	srl6488Q==;
Message-ID: <f527753bab9fd48e3a3fdc060c33bba9e2a14324.camel@infradead.org>
Subject: Re: Lockdep show 6.6-rc regression in Xen HVM CPU hotplug
From: David Woodhouse <dwmw2@infradead.org>
To: Juergen Gross <jgross@suse.com>, xen-devel
 <xen-devel@lists.xenproject.org>,  paulmck <paulmck@kernel.org>
Cc: Stefano Stabellini <sstabellini@kernel.org>, Oleksandr Tyshchenko
 <oleksandr_tyshchenko@epam.com>, Rahul Singh <rahul.singh@arm.com>, Boris
 Ostrovsky <boris.ostrovsky@oracle.com>, Thomas Gleixner <tglx@linutronix.de>
Date: Tue, 24 Oct 2023 14:45:03 +0100
In-Reply-To: <0a2725ee-a1a8-43e4-b117-f474ffb392a8@suse.com>
References: <b28fff67f7501e4713af9b8c777f853cc44d6c6f.camel@infradead.org>
	 <c75a3d53-fc36-46a6-b781-f16e1e5c6226@suse.com>
	 <662772ec0d43cce9233680d67d7114bc8b0ed48d.camel@infradead.org>
	 <8e6c144f-f808-4603-8de4-76decc3c2838@suse.com>
	 <0a2725ee-a1a8-43e4-b117-f474ffb392a8@suse.com>
Content-Type: multipart/signed; micalg="sha-256"; protocol="application/pkcs7-signature";
	boundary="=-1RTq8o4N2oPBk6gxcPmK"
User-Agent: Evolution 3.44.4-0ubuntu2 
MIME-Version: 1.0
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html


--=-1RTq8o4N2oPBk6gxcPmK
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Tue, 2023-10-24 at 14:08 +0200, Juergen Gross wrote:
>=20
> > I can probably change xen_send_IPI_one() to not need irq_get_chip_data(=
).
>=20
> David, could you test the attached patch, please? Build tested only.

No longer whines when offlining CPU1.

Still triple-faults when bringing it back online. Or if I remove the
lockdep_assert_irqs_disabled() from load_current_idt(), gives the same
warnings as before, all on the same theme about IRQs being enabled when
they shouldn't be.

[root@localhost cpu1]# echo 1 > online=20
[   26.435377] installing Xen timer for CPU 1
[   26.437493] smpboot: Booting Node 0 Processor 1 APIC 0x2
[   26.438830] ------------[ cut here ]------------
[   26.438842] WARNING: CPU: 1 PID: 0 at arch/x86/kernel/cpu/common.c:454 c=
r4_update_irqsoff+0x2e/0x60
[   26.438858] Modules linked in:
[   26.438864] CPU: 1 PID: 0 Comm: swapper/1 Not tainted 6.6.0-rc5+ #1382
[   26.438870] Hardware name: Xen HVM domU, BIOS 4.17.1 09/26/2023
[   26.438873] RIP: 0010:cr4_update_irqsoff+0x2e/0x60
[   26.438881] Code: 89 f7 65 48 8b 15 ba 07 fd 7d 8b 0d 54 28 dc 01 85 c9 =
74 18 65 8b 0d 51 f5 fb 7d 85 c9 75 0d 65 8b 0d 42 f3 fb 7d 85 c9 74 02 <0f=
> 0b 48 f7 d7 48 21 d7 48 09 c7 48 39 fa 75 05 c3 cc cc cc cc 65
[   26.438885] RSP: 0000:ffffb245000aff10 EFLAGS: 00010002
[   26.438891] RAX: 0000000000000000 RBX: 0000000000000000 RCX: 00000000000=
00001
[   26.438895] RDX: 00000000001300a0 RSI: 000000000000000f RDI: 00000000000=
0000f
[   26.438898] RBP: ffff9002c1398000 R08: 00000000fffffe51 R09: 00000000000=
00000
[   26.438902] R10: ffff90030e106078 R11: 0000000000000000 R12: 00000000000=
00001
[   26.438905] R13: 0000000000000000 R14: 0000000000000000 R15: 00000000000=
00000
[   26.438908] FS:  0000000000000000(0000) GS:ffff90030e100000(0000) knlGS:=
0000000000000000
[   26.438912] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[   26.438916] CR2: 0000000000000000 CR3: 000000004483c000 CR4: 00000000001=
300a0
[   26.438923] Call Trace:
[   26.438927]  <TASK>
[   26.438931]  ? cr4_update_irqsoff+0x2e/0x60
[   26.438937]  ? __warn+0x81/0x170
[   26.438951]  ? cr4_update_irqsoff+0x2e/0x60
[   26.438959]  ? report_bug+0x18d/0x1c0
[   26.438974]  ? handle_bug+0x3c/0x80
[   26.438983]  ? exc_invalid_op+0x13/0x60
[   26.438990]  ? asm_exc_invalid_op+0x16/0x20
[   26.439015]  ? cr4_update_irqsoff+0x2e/0x60
[   26.439024]  cpu_init+0x54/0x1a0
[   26.439034]  start_secondary+0x2e/0x140
[   26.439044]  secondary_startup_64_no_verify+0x178/0x17b
[   26.439071]  </TASK>
[   26.439074] irq event stamp: 109567
[   26.439077] hardirqs last  enabled at (109567): [<ffffffff82720a76>] acp=
i_idle_play_dead+0x46/0x70
[   26.439087] hardirqs last disabled at (109566): [<ffffffff82124e00>] do_=
idle+0x90/0xe0
[   26.439094] softirqs last  enabled at (109502): [<ffffffff82cec89c>] __d=
o_softirq+0x31c/0x423
[   26.439105] softirqs last disabled at (109489): [<ffffffff820bab91>] __i=
rq_exit_rcu+0x91/0x100
[   26.439111] ---[ end trace 0000000000000000 ]---
[   26.439141] ------------[ cut here ]------------
[   26.439145] WARNING: CPU: 1 PID: 0 at kernel/rcu/tree.c:4429 rcu_cpu_sta=
rting+0x192/0x1f0
[   26.439159] Modules linked in:
[   26.439164] CPU: 1 PID: 0 Comm: swapper/1 Tainted: G        W          6=
.6.0-rc5+ #1382
[   26.439168] Hardware name: Xen HVM domU, BIOS 4.17.1 09/26/2023
[   26.439171] RIP: 0010:rcu_cpu_starting+0x192/0x1f0
[   26.439179] Code: ff 65 8b 05 80 7c e9 7d 85 c0 75 af 65 8b 05 71 7a e9 =
7d 85 c0 74 a4 0f 0b eb a0 65 8b 05 62 7a e9 7d 85 c0 0f 84 94 fe ff ff <0f=
> 0b e9 8d fe ff ff 89 c6 4c 89 f7 e8 9d 71 b6 00 90 e9 c0 fe ff
[   26.439182] RSP: 0000:ffffb245000aff08 EFLAGS: 00010002
[   26.439188] RAX: 0000000000000001 RBX: 0000000000000000 RCX: 00000000000=
00000
[   26.439191] RDX: 0000000000000001 RSI: 0000000000000000 RDI: 00000000000=
00001
[   26.439194] RBP: 0000000000000000 R08: 000000000383c000 R09: 00000000000=
00000
[   26.439197] R10: ffff90030e106078 R11: 0000000000000000 R12: 00000000000=
00000
[   26.439200] R13: 0000000000000000 R14: 0000000000000000 R15: 00000000000=
00000
[   26.439203] FS:  0000000000000000(0000) GS:ffff90030e100000(0000) knlGS:=
0000000000000000
[   26.439206] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[   26.439209] CR2: 0000000000000000 CR3: 000000004483c001 CR4: 00000000001=
706a0
[   26.439213] Call Trace:
[   26.439215]  <TASK>
[   26.439218]  ? rcu_cpu_starting+0x192/0x1f0
[   26.439225]  ? __warn+0x81/0x170
[   26.439234]  ? rcu_cpu_starting+0x192/0x1f0
[   26.439244]  ? report_bug+0x18d/0x1c0
[   26.439256]  ? handle_bug+0x3c/0x80
[   26.439262]  ? exc_invalid_op+0x13/0x60
[   26.439269]  ? asm_exc_invalid_op+0x16/0x20
[   26.439290]  ? rcu_cpu_starting+0x192/0x1f0
[   26.439306]  start_secondary+0x3f/0x140
[   26.439314]  secondary_startup_64_no_verify+0x178/0x17b
[   26.439338]  </TASK>
[   26.439340] irq event stamp: 109567
[   26.439343] hardirqs last  enabled at (109567): [<ffffffff82720a76>] acp=
i_idle_play_dead+0x46/0x70
[   26.439349] hardirqs last disabled at (109566): [<ffffffff82124e00>] do_=
idle+0x90/0xe0
[   26.439354] softirqs last  enabled at (109502): [<ffffffff82cec89c>] __d=
o_softirq+0x31c/0x423
[   26.439362] softirqs last disabled at (109489): [<ffffffff820bab91>] __i=
rq_exit_rcu+0x91/0x100
[   26.439367] ---[ end trace 0000000000000000 ]---
[   26.439377] ------------[ cut here ]------------
[   26.439418] WARNING: CPU: 1 PID: 0 at kernel/rcu/tree.c:4462 rcu_cpu_sta=
rting+0x17f/0x1f0
[   26.439427] Modules linked in:
[   26.439432] CPU: 1 PID: 0 Comm: swapper/1 Tainted: G        W          6=
.6.0-rc5+ #1382
[   26.439436] Hardware name: Xen HVM domU, BIOS 4.17.1 09/26/2023
[   26.439438] RIP: 0010:rcu_cpu_starting+0x17f/0x1f0
[   26.439446] Code: c5 60 dc 55 83 b8 04 00 00 00 f0 0f c1 45 00 e9 23 ff =
ff ff 65 8b 05 80 7c e9 7d 85 c0 75 af 65 8b 05 71 7a e9 7d 85 c0 74 a4 <0f=
> 0b eb a0 65 8b 05 62 7a e9 7d 85 c0 0f 84 94 fe ff ff 0f 0b e9
[   26.439449] RSP: 0000:ffffb245000aff08 EFLAGS: 00010002
[   26.439454] RAX: 0000000000000001 RBX: ffff90030e12f280 RCX: 40000000000=
0177a
[   26.439458] RDX: 3fffffffffffffff RSI: ffffffff8344ef66 RDI: ffffffff834=
cb177
[   26.439461] RBP: 0000000000029328 R08: 000000000000003e R09: 00000000000=
0003e
[   26.439465] R10: 0000000000000000 R11: ffff9002c1398d48 R12: ffffffff83c=
03d00
[   26.439468] R13: 0000000000000002 R14: ffffffff83cb7280 R15: 00000000000=
00000
[   26.439471] FS:  0000000000000000(0000) GS:ffff90030e100000(0000) knlGS:=
0000000000000000
[   26.439475] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[   26.439478] CR2: 0000000000000000 CR3: 000000004483c001 CR4: 00000000001=
706a0
[   26.439481] Call Trace:
[   26.439483]  <TASK>
[   26.439485]  ? rcu_cpu_starting+0x17f/0x1f0
[   26.439492]  ? __warn+0x81/0x170
[   26.439502]  ? rcu_cpu_starting+0x17f/0x1f0
[   26.439512]  ? report_bug+0x18d/0x1c0
[   26.439525]  ? handle_bug+0x3c/0x80
[   26.439530]  ? exc_invalid_op+0x13/0x60
[   26.439537]  ? asm_exc_invalid_op+0x16/0x20
[   26.439559]  ? rcu_cpu_starting+0x17f/0x1f0
[   26.439570]  ? rcu_cpu_starting+0xef/0x1f0
[   26.439582]  start_secondary+0x3f/0x140
[   26.439590]  secondary_startup_64_no_verify+0x178/0x17b
[   26.439616]  </TASK>
[   26.439618] irq event stamp: 109567
[   26.439620] hardirqs last  enabled at (109567): [<ffffffff82720a76>] acp=
i_idle_play_dead+0x46/0x70
[   26.439626] hardirqs last disabled at (109566): [<ffffffff82124e00>] do_=
idle+0x90/0xe0
[   26.439631] softirqs last  enabled at (109502): [<ffffffff82cec89c>] __d=
o_softirq+0x31c/0x423
[   26.439639] softirqs last disabled at (109489): [<ffffffff820bab91>] __i=
rq_exit_rcu+0x91/0x100
[   26.439644] ---[ end trace 0000000000000000 ]---
[   26.443877] cpu 1 spinlock event irq 57


--=-1RTq8o4N2oPBk6gxcPmK
Content-Type: application/pkcs7-signature; name="smime.p7s"
Content-Disposition: attachment; filename="smime.p7s"
Content-Transfer-Encoding: base64

MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgEFADCABgkqhkiG9w0BBwEAAKCCEkQw
ggYQMIID+KADAgECAhBNlCwQ1DvglAnFgS06KwZPMA0GCSqGSIb3DQEBDAUAMIGIMQswCQYDVQQG
EwJVUzETMBEGA1UECBMKTmV3IEplcnNleTEUMBIGA1UEBxMLSmVyc2V5IENpdHkxHjAcBgNVBAoT
FVRoZSBVU0VSVFJVU1QgTmV0d29yazEuMCwGA1UEAxMlVVNFUlRydXN0IFJTQSBDZXJ0aWZpY2F0
aW9uIEF1dGhvcml0eTAeFw0xODExMDIwMDAwMDBaFw0zMDEyMzEyMzU5NTlaMIGWMQswCQYDVQQG
EwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYD
VQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50
aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC
AQEAyjztlApB/975Rrno1jvm2pK/KxBOqhq8gr2+JhwpKirSzZxQgT9tlC7zl6hn1fXjSo5MqXUf
ItMltrMaXqcESJuK8dtK56NCSrq4iDKaKq9NxOXFmqXX2zN8HHGjQ2b2Xv0v1L5Nk1MQPKA19xeW
QcpGEGFUUd0kN+oHox+L9aV1rjfNiCj3bJk6kJaOPabPi2503nn/ITX5e8WfPnGw4VuZ79Khj1YB
rf24k5Ee1sLTHsLtpiK9OjG4iQRBdq6Z/TlVx/hGAez5h36bBJMxqdHLpdwIUkTqT8se3ed0PewD
ch/8kHPo5fZl5u1B0ecpq/sDN/5sCG52Ds+QU5O5EwIDAQABo4IBZDCCAWAwHwYDVR0jBBgwFoAU
U3m/WqorSs9UgOHYm8Cd8rIDZsswHQYDVR0OBBYEFAnA8vwL2pTbX/4r36iZQs/J4K0AMA4GA1Ud
DwEB/wQEAwIBhjASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEF
BQcDBDARBgNVHSAECjAIMAYGBFUdIAAwUAYDVR0fBEkwRzBFoEOgQYY/aHR0cDovL2NybC51c2Vy
dHJ1c3QuY29tL1VTRVJUcnVzdFJTQUNlcnRpZmljYXRpb25BdXRob3JpdHkuY3JsMHYGCCsGAQUF
BwEBBGowaDA/BggrBgEFBQcwAoYzaHR0cDovL2NydC51c2VydHJ1c3QuY29tL1VTRVJUcnVzdFJT
QUFkZFRydXN0Q0EuY3J0MCUGCCsGAQUFBzABhhlodHRwOi8vb2NzcC51c2VydHJ1c3QuY29tMA0G
CSqGSIb3DQEBDAUAA4ICAQBBRHUAqznCFfXejpVtMnFojADdF9d6HBA4kMjjsb0XMZHztuOCtKF+
xswhh2GqkW5JQrM8zVlU+A2VP72Ky2nlRA1GwmIPgou74TZ/XTarHG8zdMSgaDrkVYzz1g3nIVO9
IHk96VwsacIvBF8JfqIs+8aWH2PfSUrNxP6Ys7U0sZYx4rXD6+cqFq/ZW5BUfClN/rhk2ddQXyn7
kkmka2RQb9d90nmNHdgKrwfQ49mQ2hWQNDkJJIXwKjYA6VUR/fZUFeCUisdDe/0ABLTI+jheXUV1
eoYV7lNwNBKpeHdNuO6Aacb533JlfeUHxvBz9OfYWUiXu09sMAviM11Q0DuMZ5760CdO2VnpsXP4
KxaYIhvqPqUMWqRdWyn7crItNkZeroXaecG03i3mM7dkiPaCkgocBg0EBYsbZDZ8bsG3a08LwEsL
1Ygz3SBsyECa0waq4hOf/Z85F2w2ZpXfP+w8q4ifwO90SGZZV+HR/Jh6rEaVPDRF/CEGVqR1hiuQ
OZ1YL5ezMTX0ZSLwrymUE0pwi/KDaiYB15uswgeIAcA6JzPFf9pLkAFFWs1QNyN++niFhsM47qod
x/PL+5jR87myx5uYdBEQkkDc+lKB1Wct6ucXqm2EmsaQ0M95QjTmy+rDWjkDYdw3Ms6mSWE3Bn7i
5ZgtwCLXgAIe5W8mybM2JzCCBhQwggT8oAMCAQICEQDGvhmWZ0DEAx0oURL6O6l+MA0GCSqGSIb3
DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYD
VQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28g
UlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMB4XDTIyMDEwNzAw
MDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJARYTZHdtdzJAaW5mcmFkZWFkLm9y
ZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3GpC2bomUqk+91wLYBzDMcCj5C9m6
oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZHh7htyAkWYVoFsFPrwHounto8xTsy
SSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT9YgcBqKCo65pTFmOnR/VVbjJk4K2
xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNjP+qDrh0db7PAjO1D4d5ftfrsf+kd
RR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy2U+eITZ5LLE5s45mX2oPFknWqxBo
bQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3BgBEmfsYWlBXO8rVXfvPgLs32VdV
NZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/7auNVRmPB3v5SWEsH8xi4Bez2V9U
KxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmdlFYhAflWKQ03Ufiu8t3iBE3VJbc2
5oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9aelIl6vtbhMA+l0nfrsORMa4kobqQ5
C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMBAAGjggHMMIIByDAfBgNVHSMEGDAW
gBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeDMcimo0oz8o1R1Nver3ZVpSkwDgYD
VR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYwFAYIKwYBBQUHAwQGCCsGAQUFBwMC
MEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYBBQUHAgEWF2h0dHBzOi8vc2VjdGln
by5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9jcmwuc2VjdGlnby5jb20vU2VjdGln
b1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1haWxDQS5jcmwwgYoGCCsGAQUFBwEB
BH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdvLmNvbS9TZWN0aWdvUlNBQ2xpZW50
QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAjBggrBgEFBQcwAYYXaHR0cDovL29j
c3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5mcmFkZWFkLm9yZzANBgkqhkiG9w0B
AQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQvQ/fzPXmtR9t54rpmI2TfyvcKgOXp
qa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvIlSPrzIB4Z2wyIGQpaPLlYflrrVFK
v9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9ChWFfgSXvrWDZspnU3Gjw/rMHrGnql
Htlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0whpBtXdyDjzBtQTaZJ7zTT/vlehc/
tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9IzCCBhQwggT8oAMCAQICEQDGvhmW
Z0DEAx0oURL6O6l+MA0GCSqGSIb3DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3Jl
YXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0
ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJl
IEVtYWlsIENBMB4XDTIyMDEwNzAwMDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJ
ARYTZHdtdzJAaW5mcmFkZWFkLm9yZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3
GpC2bomUqk+91wLYBzDMcCj5C9m6oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZH
h7htyAkWYVoFsFPrwHounto8xTsySSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT
9YgcBqKCo65pTFmOnR/VVbjJk4K2xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNj
P+qDrh0db7PAjO1D4d5ftfrsf+kdRR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy
2U+eITZ5LLE5s45mX2oPFknWqxBobQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3
BgBEmfsYWlBXO8rVXfvPgLs32VdVNZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/
7auNVRmPB3v5SWEsH8xi4Bez2V9UKxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmd
lFYhAflWKQ03Ufiu8t3iBE3VJbc25oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9ae
lIl6vtbhMA+l0nfrsORMa4kobqQ5C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMB
AAGjggHMMIIByDAfBgNVHSMEGDAWgBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeD
Mcimo0oz8o1R1Nver3ZVpSkwDgYDVR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYw
FAYIKwYBBQUHAwQGCCsGAQUFBwMCMEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYB
BQUHAgEWF2h0dHBzOi8vc2VjdGlnby5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9j
cmwuc2VjdGlnby5jb20vU2VjdGlnb1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1h
aWxDQS5jcmwwgYoGCCsGAQUFBwEBBH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdv
LmNvbS9TZWN0aWdvUlNBQ2xpZW50QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAj
BggrBgEFBQcwAYYXaHR0cDovL29jc3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5m
cmFkZWFkLm9yZzANBgkqhkiG9w0BAQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQv
Q/fzPXmtR9t54rpmI2TfyvcKgOXpqa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvI
lSPrzIB4Z2wyIGQpaPLlYflrrVFKv9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9Ch
WFfgSXvrWDZspnU3Gjw/rMHrGnqlHtlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0w
hpBtXdyDjzBtQTaZJ7zTT/vlehc/tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9
IzGCBMcwggTDAgEBMIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVz
dGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMT
NVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEA
xr4ZlmdAxAMdKFES+jupfjANBglghkgBZQMEAgEFAKCCAeswGAYJKoZIhvcNAQkDMQsGCSqGSIb3
DQEHATAcBgkqhkiG9w0BCQUxDxcNMjMxMDI0MTM0NTAzWjAvBgkqhkiG9w0BCQQxIgQgwAAWWaq7
YSN4YhI3jQOxk2WLZ09/ZVW+xvGo6afQHwEwgb0GCSsGAQQBgjcQBDGBrzCBrDCBljELMAkGA1UE
BhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEYMBYG
A1UEChMPU2VjdGlnbyBMaW1pdGVkMT4wPAYDVQQDEzVTZWN0aWdvIFJTQSBDbGllbnQgQXV0aGVu
dGljYXRpb24gYW5kIFNlY3VyZSBFbWFpbCBDQQIRAMa+GZZnQMQDHShREvo7qX4wgb8GCyqGSIb3
DQEJEAILMYGvoIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVy
MRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNl
Y3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEAxr4Z
lmdAxAMdKFES+jupfjANBgkqhkiG9w0BAQEFAASCAgBD6Y0iL9uUL1f90N5iovGB4+ept5TnYsiP
fjP7fHEke8P/S9aIg5CLCbyuW9h3AQsLXL52qzkOPpu3XdLEQ1/7TP8B8u7jydnrS39f+xHZvbbM
yCsIWzz34whJzG0H/9iLmAhJTN6qaTw3FMT+UpDcR9VQJq9wkBw5LsBM/UMKWKlxocTy1WIpeTg1
czmKPf5iLsAUTHVi5VD/jiFwQHZzzrBavSCuiB97Hy+cHD25NrLsisA9RwMjCddEXfa/csJuRVgq
VhbJz6trCWaEIKP/w9pCOuhbaXxTU/yJt4BKjjMrtQkA5oWvJNYf0Pmm5IpLYVZuTMWH3V8RrOUe
V7VIiz0Xp8HUvUOog3jETgsfrO2nDWT6jjknz76AR7gzauS84Rj/dEP3cyb+m3DFMI96iKJyHsoI
zwN8Q0vCNV/dv5qvDGz5rOuIzekav1LJOdqHNUpuNER2jc6WWxrXCEBIDRRdzdaIYBuyJpTg9ghG
zcpotiie3yHB2JSJgniSdUg/41CH/w1AA3IRtKdhun6hZRFkPwPmaYpWfiYsyogbDB3Qx43P/FB1
Kwi9J7fTA6yZAas/p53NcEqrQdv2WFE4aB+hxwba4uN7bRal9jATQMLgpvHfD+zSx2wd/z/WqF3a
Ida8nJI32xMIbU99+ucnfO2TtSd+iW2Sj6yV0sIK1wAAAAAAAA==


--=-1RTq8o4N2oPBk6gxcPmK--


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 13:47:33 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 13:47:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622001.969038 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvHkp-0005dx-HK; Tue, 24 Oct 2023 13:47:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622001.969038; Tue, 24 Oct 2023 13: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 1qvHkp-0005dq-EZ; Tue, 24 Oct 2023 13:47:31 +0000
Received: by outflank-mailman (input) for mailman id 622001;
 Tue, 24 Oct 2023 13:47: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=9CvU=GG=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qvHko-0005dk-NP
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 13:47:30 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id dfce70c6-7273-11ee-98d5-6d05b1d4d9a1;
 Tue, 24 Oct 2023 15:47:29 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id C7B9B4EE0739;
 Tue, 24 Oct 2023 15:47: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: dfce70c6-7273-11ee-98d5-6d05b1d4d9a1
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>,
	George Dunlap <george.dunlap@citrix.com>,
	Julien Grall <julien@xen.org>,
	Wei Liu <wl@xen.org>
Subject: [XEN PATCH][for-4.19 v3] xen: Add deviations for MISRA C:2012 Rule 7.1
Date: Tue, 24 Oct 2023 15:47:24 +0200
Message-Id: <5e0f1bcd7b4325141e64a3c2d581034956b42293.1698136547.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

As specified in rules.rst, these constants can be used
in the code.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
---
Changes in v2:
- replace some SAF deviations with configurations
Changes in v3:
- refine configurations and justifications
---
 automation/eclair_analysis/ECLAIR/deviations.ecl | 10 ++++++----
 docs/misra/deviations.rst                        |  5 +++++
 docs/misra/safe.json                             |  8 ++++++++
 xen/arch/x86/hvm/svm/emulate.c                   |  6 +++---
 xen/common/inflate.c                             |  4 ++--
 5 files changed, 24 insertions(+), 9 deletions(-)

diff --git a/automation/eclair_analysis/ECLAIR/deviations.ecl b/automation/eclair_analysis/ECLAIR/deviations.ecl
index fa56e5c00a27..ea5e0eb1813f 100644
--- a/automation/eclair_analysis/ECLAIR/deviations.ecl
+++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
@@ -85,10 +85,12 @@ conform to the directive."
 # Series 7.
 #
 
--doc_begin="Usage of the following constants is safe, since they are given as-is
-in the inflate algorithm specification and there is therefore no risk of them
-being interpreted as decimal constants."
--config=MC3R1.R7.1,literals={safe, "^0(007|37|070|213|236|300|321|330|331|332|333|334|335|337|371)$"}
+-doc_begin="It is safe to use certain octal constants the way they are defined in
+specifications, manuals, and algorithm descriptions."
+-file_tag+={x86_svm_h, "^xen/arch/x86/hvm/svm/svm\\.h$"}
+-file_tag+={x86_emulate_c, "^xen/arch/x86/hvm/svm/emulate\\.c$"}
+-config=MC3R1.R7.1,reports+={safe, "any_area(any_loc(any_exp(file(x86_svm_h)&&macro(^INSTR_ENC$))))"}
+-config=MC3R1.R7.1,reports+={safe, "any_area(text(^.*octal-ok.*$)&&any_loc(any_exp(file(x86_emulate_c)&&macro(^MASK_EXTR$))))"}
 -doc_end
 
 -doc_begin="Violations in files that maintainers have asked to not modify in the
diff --git a/docs/misra/deviations.rst b/docs/misra/deviations.rst
index 8511a189253b..26c6dbbc9ffe 100644
--- a/docs/misra/deviations.rst
+++ b/docs/misra/deviations.rst
@@ -90,6 +90,11 @@ Deviations related to MISRA C:2012 Rules:
          - __emulate_2op and __emulate_2op_nobyte
          - read_debugreg and write_debugreg
 
+   * - R7.1
+     - It is safe to use certain octal constants the way they are defined in
+       specifications, manuals, and algorithm descriptions.
+     - Tagged as `safe` for ECLAIR.
+
    * - R7.2
      - Violations caused by __HYPERVISOR_VIRT_START are related to the
        particular use of it done in xen_mk_ulong.
diff --git a/docs/misra/safe.json b/docs/misra/safe.json
index 39c5c056c7d4..7ea47344ffcc 100644
--- a/docs/misra/safe.json
+++ b/docs/misra/safe.json
@@ -20,6 +20,14 @@
         },
         {
             "id": "SAF-2-safe",
+            "analyser": {
+                "eclair": "MC3R1.R7.1"
+            },
+            "name": "Rule 7.1: constants defined in specifications, manuals, and algorithm descriptions",
+            "text": "It is safe to use certain octal constants the way they are defined in specifications, manuals, and algorithm descriptions."
+        },
+        {
+            "id": "SAF-3-safe",
             "analyser": {},
             "name": "Sentinel",
             "text": "Next ID to be used"
diff --git a/xen/arch/x86/hvm/svm/emulate.c b/xen/arch/x86/hvm/svm/emulate.c
index aa2c61c433b3..93ac1d3435f9 100644
--- a/xen/arch/x86/hvm/svm/emulate.c
+++ b/xen/arch/x86/hvm/svm/emulate.c
@@ -90,9 +90,9 @@ unsigned int svm_get_insn_len(struct vcpu *v, unsigned int instr_enc)
         if ( !instr_modrm )
             return emul_len;
 
-        if ( modrm_mod       == MASK_EXTR(instr_modrm, 0300) &&
-             (modrm_reg & 7) == MASK_EXTR(instr_modrm, 0070) &&
-             (modrm_rm  & 7) == MASK_EXTR(instr_modrm, 0007) )
+        if ( modrm_mod       == MASK_EXTR(instr_modrm, 0300) && /* octal-ok */
+             (modrm_reg & 7) == MASK_EXTR(instr_modrm, 0070) && /* octal-ok */
+             (modrm_rm  & 7) == MASK_EXTR(instr_modrm, 0007) )  /* octal-ok */
             return emul_len;
     }
 
diff --git a/xen/common/inflate.c b/xen/common/inflate.c
index 8fa4b96d12a3..be6a9115187e 100644
--- a/xen/common/inflate.c
+++ b/xen/common/inflate.c
@@ -1201,8 +1201,8 @@ static int __init gunzip(void)
     magic[1] = NEXTBYTE();
     method   = NEXTBYTE();
 
-    if (magic[0] != 037 ||
-        ((magic[1] != 0213) && (magic[1] != 0236))) {
+    /* SAF-2-safe */
+    if (magic[0] != 037 || ((magic[1] != 0213) && (magic[1] != 0236))) {
         error("bad gzip magic numbers");
         return -1;
     }
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Tue Oct 24 13:55:31 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 13:55:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622006.969048 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvHsR-0008EW-9x; Tue, 24 Oct 2023 13:55:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622006.969048; Tue, 24 Oct 2023 13: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 1qvHsR-0008EP-6f; Tue, 24 Oct 2023 13:55:23 +0000
Received: by outflank-mailman (input) for mailman id 622006;
 Tue, 24 Oct 2023 13:55: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=JtWs=GG=citrix.com=prvs=654e64a5b=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qvHsP-0008EJ-IB
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 13:55:21 +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 f63d67c3-7274-11ee-98d5-6d05b1d4d9a1;
 Tue, 24 Oct 2023 15:55:19 +0200 (CEST)
Received: from mail-co1nam11lp2169.outbound.protection.outlook.com (HELO
 NAM11-CO1-obe.outbound.protection.outlook.com) ([104.47.56.169])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 24 Oct 2023 09:55:15 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by BY5PR03MB4983.namprd03.prod.outlook.com (2603:10b6:a03:1e3::19)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.23; Tue, 24 Oct
 2023 13:55:12 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::acf0:ce2b:1634:5aee]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::acf0:ce2b:1634:5aee%6]) with mapi id 15.20.6933.011; Tue, 24 Oct 2023
 13:55: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: f63d67c3-7274-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1698155719;
  h=from:to:cc:subject:date:message-id:
   content-transfer-encoding:mime-version;
  bh=502XBgEwxn9TErS7zbWrM4f0tWE7agvNq20pg7imh/0=;
  b=W6HZ7ds77CKIFYIa8BP0NjC3CGWI4bsjvhzjsC5Xpvl0goUqoiE3tVzo
   y3w7httLshYiOxdo/LimX48TGO0/1w2ETEgKuqCeJVWtPkhgYjFMF+xif
   aDeaTcQE9XC/z4fvuNKU9ZXHSSCYkZELCPV1fZ2nQ3gPasVHKnKiKRv+p
   o=;
X-CSE-ConnectionGUID: 1aF1dPr/Q6iy5lDrZiG82w==
X-CSE-MsgGUID: Qop0uy/sSZCvFfZ9KeL4dg==
X-IronPort-RemoteIP: 104.47.56.169
X-IronPort-MID: 126927750
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:i+m58K/qLnSKPoVYPHcDDrUDTn+TJUtcMsCJ2f8bNWPcYEJGY0x3n
 zcZCjzVOfmMamv2KtF+btjg9UhSvJfTndQxSwZuqyw8E34SpcT7XtnIdU2Y0wF+jCHgZBk+s
 5hBMImowOQcFCK0SsKFa+C5xZVE/fjVAOK6UKidYnwZqTZMEE8JkQhkl/MynrlmiN24BxLlk
 d7pqojUNUTNNwRcawr40Ird7ks01BjOkGlA5AdnPaoX5Aa2e0Q9V/rzG4ngdxMUfaEMdgKKb
 76r5K20+Grf4yAsBruN+losWhRXKlJ6FVHmZkt+A8BOsDAbzsAB+v9T2M4nQVVWk120c+VZk
 72hg3ASpTABZcUgkMxFO/VR/roX0aduoNcrKlDn2SCfItGvn9IBDJyCAWlvVbD09NqbDkkX/
 NJBJAgXKSndhvPrxJ6heOhD1p48eZyD0IM34hmMzBn/JNN/GNXoZPyP4tVVmjAtmspJAPDSI
 dIDbiZiZwjBZBsJPUoLDJU5n6GjgXyXnz9w8QrJ4/ZopTWNilUvgdABM/KMEjCObd9SkUuC4
 HrP4kzyAw0ANczZwj2Amp6prraVw3KhB91PTNVU8NZTh0XL231UEyYkfkWVr8voqUOaB95Qf
 hl8Fi0G6PJaGFaQZsnwWVi0rWCJujYYWsFMCKsq5QeV0K3W7g2FQG8eQVZpatYrqcs3TjwCz
 UKSkpXiAjkHmL+ITXOQ8J+EoDX0PjIaRUcZfjMNRwYB59jloakwgwjJQ9IlF7S65vXqHRngz
 jbMqzIx74j/luYO3qS/uFvA2jSlo8GQShZvv1uGGGW48gl+eYipIZSy7kTW5upBK4DfSUSdu
 H8DmI6V6+Vm4YyxqRFhid4lRNmBj8tp+hWG6bKzN/HNLwiQxkM=
IronPort-HdrOrdr: A9a23:TwCYD67r6fd9bl0DUQPXwPLXdLJyesId70hD6qkRc203TiX8ra
 uTdZsguSMc5Ax/ZJhCo7C90cu7L080nKQdieN9AV7IZmjbUQWTXeZfxLqn7zr8GzDvss5xvJ
 0QFZSW0eeAaGSSW/yKhDVQuOxQouW6zA==
X-Talos-CUID: 9a23:L9nLp2Oo5AWzBO5DASBJrUIsAIccLHzMkXP8OX25JjYzV+jA
X-Talos-MUID: 9a23:+7CAAQm6hnAE5RNNQhb8dnpbM98w/rXpE3s/uosotfvVFiFUZzuS2WE=
X-IronPort-AV: E=Sophos;i="6.03,247,1694750400"; 
   d="scan'208";a="126927750"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=FNxMNOir04CEOVKCM1Mo7jo0y2N+qJuPZIiDuZf45Y03fp/UJVonRix+Oi/WBsP2aeAwB3ioxfJ3FRSuCvi9T1fFdlCGQhTx9cQF7zljYbEZw/WPKtd8W1h+wRsSEgDujw+h8RzpXIb6jIYlczMdpxTWWIT9PJkZb9t47wOmHotltXbbRCESLH1P+XxpWpBwzbsMSbWmbBqlQKE47VwWCF1582ANXbTSvfDQKjGp5R1WFLR2JSwWh+2bzcQHgwCiMEiUFlXBiaB5KpJi6j9jruqFOLbgIdoPzCFg8U5Gz6Iipbw9v1250Jkm4sWzKSpe3a9FBUuWajSWg1qN7+Zadg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=LNkMhdC+rCaRlp+Tt4F04Pgskhxq/sWocxlpcspEf1I=;
 b=WqEDc8VyjqKZwpbgAw0CvZbMGCMh4JV0EA7xZWvmjsBP7ebM8jHCDho4QlOBYdV9ICuGnjkIuj61RDokTdfCE3duyrKq55L43L82GbHsh7gviroXllP8/L6GFuVcB0x8JDhZ8sZWvZ+ihXBiAJYD/Z6XT0zDMAwPA7K+E2dMIFp4nVe5fjGpNGEWK4JgJh6qqceo119mSlspRh5B67oiLp1saKKmIReZJQrOuvD2uyki4cgYI1VShsyLb+RuKgAQyyWa9ECru4/rTpSf+FLuzEwjgikfMr8c4pLS7gxMrwUS9VemBm0L9JwQI0+B4YDZRaXJaBwJcH7q1FSIr6C7KA==
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=LNkMhdC+rCaRlp+Tt4F04Pgskhxq/sWocxlpcspEf1I=;
 b=NANA+rlvdo647uidbGHMPAuammBIs7od4v4OIfunNic0o8cim+pQ+WXxqEo4JRAGuX55EwUWjYF6O97dROgxyWkJpzGg8JDst9ZFmK8O5UNlyNpGQegnaePC6cG7BSKGSrhKIqyQizIj4YAs6kkNQfy93rcTeIKusU9lD+V9seg=
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] x86/x2apic: introduce a mixed physical/cluster mode
Date: Tue, 24 Oct 2023 15:51:50 +0200
Message-ID: <20231024135150.49232-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: LO4P123CA0382.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:18f::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_|BY5PR03MB4983:EE_
X-MS-Office365-Filtering-Correlation-Id: c61ccb99-dc60-4ac0-fa42-08dbd498d729
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:
	VEffyVUemcElPj0aUo4VReqVMM3YTmFmJGT1IO6kdZmEcjkdjjAUuEWj/6OWc+H6FYxRbdBU109SnKSASWnjAW+yFW19UE3QUYdraTUdKbz+pbgdiWIwoPeJ6DyIRN/Hd/iDiE8daoKHVqIWNBvXYv0LoyO6rG/cfXHqHfsShMhg+d0i5xTdn4Yozg9uRRWV3Wq+g9d3kQ7uCTCOgsPWAjgNbADZW8aHlzXnDYscQSxCIw40Me1dSwWNy+uLE3KBtyhoi/AsTv8qSPHu/X3WL721LJOcdQcDUpjLSOU+TJsnzh0aRcNsiN+6OMGw4gNDb8cp1TjjtZvF5YZjA75AtpuRrB31o2UvkW33/L1WH1vcuHDTyuz+h/07qIBV02511z5xPwyCsp+GkTK144w94OTgY+I/nakVqZ7Wu+J+FYbqGIaXBWZb/HMh2CIKzJwkdBsw0cSTU/vy3vwHaLgqCOHNMZ42lzR9H5yjWz48yzFxc5b1oLV0OO2RCZWXooo6W6854+kxb3SvnCl1Nl9t+uCNO9Tuhfkq6OTu/1eCgi6PeiHepn1CwH9HvA9WR7yz
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)(366004)(39860400002)(346002)(230922051799003)(186009)(1800799009)(64100799003)(451199024)(83380400001)(6506007)(6666004)(2616005)(6486002)(8676002)(41300700001)(38100700002)(66556008)(4326008)(54906003)(8936002)(66946007)(316002)(6916009)(66476007)(26005)(478600001)(82960400001)(1076003)(6512007)(5660300002)(36756003)(86362001)(2906002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?ZUFQbGVmeUhBZC85eXpJV1Jsbm81OG4wejRxaEJDbWhGNWFpYlZJMU9DUTY4?=
 =?utf-8?B?UVh2UmVKcit5VXNQcUpwV3J5dVVkbVlzaWtkQXNXaEU3ZzNlK1hFdTZLZkxM?=
 =?utf-8?B?dVhjbS9rekVLODhucXptbnFQaVNzYjBwc0pLWERkYU5BZnlPRXhoNVkySGtu?=
 =?utf-8?B?QXUwc3luR044NFhxSGFuNmM1VE9sdWlMWHJtSkI0OUg1WVZpTnJkTDVWUmpz?=
 =?utf-8?B?ZVZTYUtjUURKN1NmZ3ltbEdwWWllVm1XQWtXTkI1OCtUa0Q1bXB6aXdVLzNE?=
 =?utf-8?B?WDR6WEx5akg2ZnJYc2E3NEFROUd5cVkxRXBmYkp4R3RlWVo1SFJ6M1FRcEZI?=
 =?utf-8?B?TG9YWjV1cHV1RkU4bFhyTkZBSjJrOGRDZmMvMUZibU9sOWhkL1huVktnU2Fx?=
 =?utf-8?B?b0MxWnFNNnByN2x2QVcxNkhwaUdGKy9EVEd5YkkrSzJ0VDVCTmVNVVdheFRV?=
 =?utf-8?B?dHRLZzdyYWZjSGs0YUxkMXZyamt5ZHpXZjJ4cVNFNXNHVUZLQnFaRWFJUy9J?=
 =?utf-8?B?L3FYVXJPMjJURDhaZ2dMWjNFdml0NHdmWG5GSVkrR1YrTE1OMkdxeHQ1bnhj?=
 =?utf-8?B?YlFielBzL1BydCtoU1ViSWxIZE5YWFc1Wmd0SEFwZWlUZ3BUa0N3TVJkR1Jh?=
 =?utf-8?B?L0xLcG9ZenNZOXlOZTVaWExaajNtL0VCeGlCV2FLYktibGVWdUVvWXluRDh0?=
 =?utf-8?B?UlN6MkR3eXRPKzR6dmJXZnJYTkNwSlZTM3dyNjRnbmZVZFRWU2NuWjJ2TDlC?=
 =?utf-8?B?L0RzemZyblc4K0lKR0N6cmNRblhENFJ2OXBTeFNNZkQ2YUV4UGZmcU5ReS81?=
 =?utf-8?B?N2dKV0xWUnE3Zkl3azQ2ekZvRDBJOWtYRVQxTXVQelE5WHUzb1MvZmtnTmky?=
 =?utf-8?B?VlYvcytqUzhjTzRGYVdKTk1UckNIQmxYRjIxNTg0cG1MemtzN3pWQXB0SXRu?=
 =?utf-8?B?NldvdktyNEdWdC9XSDFKZFlIUmRQQzFDNnMyNk1zc25oRTlMSTFxczZ3Vk53?=
 =?utf-8?B?anZVUDQyczdxSzRrbE42VWI0dE4zWCsxeEo0M3dTWDZPVk9MNFZuRWc3eUps?=
 =?utf-8?B?TWRhOFR2SXNtUVBXVUtYMnRoUGRrQVpQS1FXMXNvTmlPNU5UY2dVWHB6U0Rq?=
 =?utf-8?B?Yi81ZjNtQ2lqK0JlVDVwNTVnLyttUlVObEtkRFNkeUtQeFE2NWdxcWpzQk8r?=
 =?utf-8?B?R29RdHQyTlI1VUhIYTdIZlNwamRPMmhJc1V0cEdqQTNwQ3Iyc2ZNRXdGdHp6?=
 =?utf-8?B?ampGamVqNHBXSTYrUUtDZ1BidlA2M0h2bVkwRjRRWGdMTUJkTERzQzFHSXlT?=
 =?utf-8?B?UVkrbzZqREk3T3RRYkpGTmJwdmwyM1orb0l3UHU0ck9rZy9wblZOZUt4a3R4?=
 =?utf-8?B?a0FFbTY0amd6WmpKTDkrYTYrWTdFNHZudTdGdzFSQ2t1cXVkUGFqYjNkSEJL?=
 =?utf-8?B?bUs0bThpZW9CeTVwaHFneGk3cEFzNzYvQXV3L1pqNmpZWENqQVZvVnhvNnNp?=
 =?utf-8?B?RGxaS3ltcXRKQTZsZ1hXSXh2L0tVVkF6aGJ5OXBJNnZGd2hvdnM3MFJqbFJD?=
 =?utf-8?B?czhRYnN6b203R2hvOHNoSko3R3NpUWhlV3hiN2M3YnE4Zmd3WHJqUmZjcHVV?=
 =?utf-8?B?eWhwZnpXS0Y2S3RHaHFmcDF4OExGdk5JSHRRT2lJZjRzYmdhTU5ydTJnV0Fo?=
 =?utf-8?B?Q3FNdXBLVlkxYnJ6NzFlNmFndXhmSm15RHQvbUM2R3RBcjdNdnZSN01zVjdr?=
 =?utf-8?B?UFh5QmxFV29CK2NuNmR0ZlZvUDdhcytpcTdFMGo4eThwZzBBakJpVThDNUxk?=
 =?utf-8?B?cVNwRU5KQis1UnZZbVVvWG9SSDZvcTZvaFVGc2QreDY1UzQ0YmNlNXRmMUh0?=
 =?utf-8?B?c3pqWXJuNEdnRHlMbzRNUVl4SllialUzdG5kYnBCdWJkNlRjUzFoVUdHN3Rq?=
 =?utf-8?B?NHNlVjI3MjRXK1M0dVhTTW5IS3VBWDF1ZjRtSTFkeC9YZkx0V25SWXQzQnph?=
 =?utf-8?B?UnBKMUt2UG9zTlYzb0xTc2JQRjhWQklLeEgzMFpSMkhoSk0ydlQ2QitlUXdF?=
 =?utf-8?B?OW1UR0Nvc3psVlcvSlgyRWx4bGo3WTRZSXJFU0R3QVpDVkIvWllJS3NyWkRt?=
 =?utf-8?Q?BTF5XjxMctidUfULjXKaBXgIR?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	TJ4J7K8c5RjaFHa4hrc3dt7kDTyyTRsrLlte49mh+DVuvQr7PTDJIKeb7nXcdwOAsablPScQtNb+QmzfT3K3RItG1nFOO42Cms+AxEtSCCglsAQ42ALi1zCYqFXIcYbG2rVByQCjHvpjZRFMJr16LncHcnR4m4l2rtO2IN8bQQ3fXNSqekwSL8TvEXqQ+E3LWyuv4BQTfdZy4m0GiJ8Bb8MGoKCitv8gnhgMCrG9lPYvBVKdU2Kui8P8U+DSpAfKpe8Oz4zHtNATCtnTGNZo/Tegve/U4Qps1fUYTI6Kth8gwNs+Liuc6kYgbJymnSgrUzSUPUmKzwsOuoKzwke59DUhfkIjSnVo3Bhr//sziZT9xSyl+VbeWXHgd8zCRh8Rl+A70dBi/4GNZFr15Jw3JBhQe6s5DclXyNxIfHRA4tExeTOoEnRbHhApaz7+J/dkLcJYjooyUmc6XJiLcWyJHxwD4yNJlx6ri0oTP3MSPn/xFSQ9N/IogiJb5O27L9En+IG5rfYGii6arCxTS5KUmZS4r7AND8N3gDz8Nn2ykF6342EQRSldEhMWwmMopeNKPo/TxmCXVC3hwGV9T1it5PYW+JZh1vsEvHd2dio/HIsS30RK5WdBdI83/FG3ZiIosOJndGzbIgaA84D8pmMyDBH/QXVMJXUFS7MKQ1sDtgGWup4GTQsJQ+P1X7pabu5mHqFaBmlK9w3E3R5AlkjGVfKgThdvF1VpTcjpmRb/mePGgPoxOXoPQCDM+gTJ/xK+UtLNOGImH9JGIYyPQT11SZAt+E5JkTbFuwr8g/q+DHhXSLOqQA2hfZ2mKD802GHMQlnKshdv99zvIJ0kwyOK+ola7IaJ1jYI2mQEnjirJrQ=
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: c61ccb99-dc60-4ac0-fa42-08dbd498d729
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 24 Oct 2023 13:55:11.9897
 (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: BufEUXMxK+Bp9lB92GnNovJCfzE2e20RtaiOpFTDExy/pN25PkXHZpyTqPiC2q5bdu2aAfK9WfaZHp85mEipOQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY5PR03MB4983

The current implementation of x2APIC requires to either use Cluster Logical or
Physical mode for all interrupts.  However the selection of Physical vs Logical
is not done at APIC setup, an APIC can be addressed both in Physical or Logical
destination modes concurrently.

Introduce a new x2APIC mode called mixed, which uses Logical Cluster mode for
IPIs, and Physical mode for external interrupts, thus attempting to use the
best method for each interrupt type.

Using Physical mode for external interrupts allows more vectors to be used, and
interrupt balancing to be more accurate.

Using Logical Cluster mode for IPIs allows less accesses to the ICR register
when sending those, as multiple CPUs can be targeted with a single ICR register
write.

A simple test calling flush_tlb_all() 10000 times in a tight loop on a 96 CPU
box gives the following average figures:

Physical mode: 26617931ns
Mixed mode:    23865337ns

So ~10% improvement versus plain Physical mode.  Note that Xen uses Cluster
mode by default, and hence is already using the fastest way for IPI delivery at
the cost of reducing the amount of vectors available system-wide.

Make the newly introduced mode the default one.

Suggested-by: Andrew Cooper <andrew.cooper3@citrix.com>
Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
---
Do we want to keep a full Logical Cluster mode available?  I don't see a reason
to target external interrupts in Logical Cluster mode, but maybe there's
something I'm missing.

It's not clear to me whether the ACPI FADT flags are meant to apply only to
external interrupt delivery mode, or also to IPI delivery.  If
ACPI_FADT_APIC_PHYSICAL is only meant to apply to external interrupts and not
IPIs then we could possibly get rid of physical mode IPI delivery.

Still need to put this under XenServer extensive testing, but wanted to get
some feedback before in case approach greatly changes.

Based on top of 'x86/x2apic: remove usage of ACPI_FADT_APIC_CLUSTER'
---
 docs/misc/xen-command-line.pandoc | 11 ++++
 xen/arch/x86/Kconfig              | 37 ++++++++++---
 xen/arch/x86/genapic/x2apic.c     | 87 ++++++++++++++++++++++---------
 3 files changed, 104 insertions(+), 31 deletions(-)

diff --git a/docs/misc/xen-command-line.pandoc b/docs/misc/xen-command-line.pandoc
index 6b07d0f3a17f..09c6f17b4b02 100644
--- a/docs/misc/xen-command-line.pandoc
+++ b/docs/misc/xen-command-line.pandoc
@@ -2802,6 +2802,14 @@ the watchdog.
 
 Permit use of x2apic setup for SMP environments.
 
+### x2apic-mode (x86)
+> `= physical | cluster | mixed`
+
+> Default: `physical` if **FADT** mandates physical mode, `mixed` otherwise.
+
+In the case that x2apic is in use, this option switches between modes to
+address APICs in the system as interrupt destinations.
+
 ### x2apic_phys (x86)
 > `= <boolean>`
 
@@ -2812,6 +2820,9 @@ In the case that x2apic is in use, this option switches between physical and
 clustered mode.  The default, given no hint from the **FADT**, is cluster
 mode.
 
+**WARNING: `x2apic_phys` is deprecated and superseded by `x2apic-mode`.
+The later takes precedence if both are set.**
+
 ### xenheap_megabytes (arm32)
 > `= <size>`
 
diff --git a/xen/arch/x86/Kconfig b/xen/arch/x86/Kconfig
index eac77573bd75..a44d63b5c8dc 100644
--- a/xen/arch/x86/Kconfig
+++ b/xen/arch/x86/Kconfig
@@ -228,11 +228,18 @@ config XEN_ALIGN_2M
 
 endchoice
 
-config X2APIC_PHYSICAL
-	bool "x2APIC Physical Destination mode"
-	help
-	  Use x2APIC Physical Destination mode by default when available.
+choice
+	prompt "x2APIC Destination mode"
+	default X2APIC_MIXED
+	---help---
+	  Select APIC addressing when x2APIC is enabled.
 
+	  The default mode is mixed which should provide the best aspects
+	  of both physical and cluster modes.
+
+config X2APIC_PHYSICAL
+       tristate "Physical Destination mode"
+	---help---
 	  When using this mode APICs are addressed using the Physical
 	  Destination mode, which allows using all dynamic vectors on each
 	  CPU independently.
@@ -242,9 +249,27 @@ config X2APIC_PHYSICAL
 	  destination inter processor interrupts (IPIs) slightly slower than
 	  Logical Destination mode.
 
-	  The mode when this option is not selected is Logical Destination.
+config X2APIC_CLUSTER
+	tristate "Cluster Destination mode"
+	---help---
+	  When using this mode APICs are addressed using the Cluster Logical
+	  Destination mode.
 
-	  If unsure, say N.
+	  Cluster Destination has the benefit of sending IPIs faster since
+	  multiple APICs can be targeted as destinations of a single IPI.
+	  However the vector space is shared between all CPUs on the cluster,
+	  and hence using this mode reduces the number of available vectors
+	  when compared to Physical mode.
+
+config X2APIC_MIXED
+	tristate "Mixed Destination mode"
+	---help---
+	  When using this mode APICs are addressed using the Cluster Logical
+	  Destination mode for IPIs and Physical mode for external interrupts.
+
+	  Should provide the best of both modes.
+
+endchoice
 
 config GUEST
 	bool
diff --git a/xen/arch/x86/genapic/x2apic.c b/xen/arch/x86/genapic/x2apic.c
index 707deef98c27..15632cc7332e 100644
--- a/xen/arch/x86/genapic/x2apic.c
+++ b/xen/arch/x86/genapic/x2apic.c
@@ -180,6 +180,25 @@ static const struct genapic __initconstrel apic_x2apic_cluster = {
     .send_IPI_self = send_IPI_self_x2apic
 };
 
+/*
+ * Mixed x2APIC mode: use physical for external (device) interrupts, and
+ * cluster for inter processor interrupt.  Such mode has the benefits of not
+ * sharing the vector space with all CPUs on the cluster, while still allows
+ * IPIs to be more efficiently delivered by not having to perform an ICR
+ * write for each target CPU.
+ */
+static const struct genapic __initconstrel apic_x2apic_mixed = {
+    APIC_INIT("x2apic_mixed", NULL),
+    /* NB: int_{delivery,dest}_mode are only used by non-IPI callers. */
+    .int_delivery_mode = dest_Fixed,
+    .int_dest_mode = 0 /* physical delivery */,
+    .init_apic_ldr = init_apic_ldr_x2apic_cluster,
+    .vector_allocation_cpumask = vector_allocation_cpumask_phys,
+    .cpu_mask_to_apicid = cpu_mask_to_apicid_phys,
+    .send_IPI_mask = send_IPI_mask_x2apic_cluster,
+    .send_IPI_self = send_IPI_self_x2apic
+};
+
 static int cf_check update_clusterinfo(
     struct notifier_block *nfb, unsigned long action, void *hcpu)
 {
@@ -220,38 +239,56 @@ static struct notifier_block x2apic_cpu_nfb = {
 static int8_t __initdata x2apic_phys = -1;
 boolean_param("x2apic_phys", x2apic_phys);
 
+enum {
+   unset, physical, cluster, mixed
+} static __initdata x2apic_mode = unset;
+
+static int __init parse_x2apic_mode(const char *s)
+{
+    if ( !cmdline_strcmp(s, "physical") )
+        x2apic_mode = physical;
+    else if ( !cmdline_strcmp(s, "cluster") )
+        x2apic_mode = cluster;
+    else if ( !cmdline_strcmp(s, "mixed") )
+        x2apic_mode = mixed;
+    else
+        return EINVAL;
+
+    return 0;
+}
+custom_param("x2apic-mode", parse_x2apic_mode);
+
 const struct genapic *__init apic_x2apic_probe(void)
 {
-    if ( x2apic_phys < 0 )
+    /* x2apic-mode option has preference over x2apic_phys. */
+    if ( x2apic_phys >= 0 && x2apic_mode == unset )
+        x2apic_mode = x2apic_phys ? physical : cluster;
+
+    if ( x2apic_mode == unset )
     {
-        /*
-         * Force physical mode if there's no (full) interrupt remapping support:
-         * The ID in clustered mode requires a 32 bit destination field due to
-         * the usage of the high 16 bits to hold the cluster ID.
-         */
-        x2apic_phys = iommu_intremap != iommu_intremap_full ||
-                      (acpi_gbl_FADT.flags & ACPI_FADT_APIC_PHYSICAL) ||
-                      IS_ENABLED(CONFIG_X2APIC_PHYSICAL);
-    }
-    else if ( !x2apic_phys )
-        switch ( iommu_intremap )
+        if ( acpi_gbl_FADT.flags & ACPI_FADT_APIC_PHYSICAL )
         {
-        case iommu_intremap_off:
-        case iommu_intremap_restricted:
-            printk("WARNING: x2APIC cluster mode is not supported %s interrupt remapping -"
-                   " forcing phys mode\n",
-                   iommu_intremap == iommu_intremap_off ? "without"
-                                                        : "with restricted");
-            x2apic_phys = true;
-            break;
-
-        case iommu_intremap_full:
-            break;
+            printk(XENLOG_INFO "ACPI FADT forcing x2APIC physical mode\n");
+            x2apic_mode = physical;
         }
+        else
+            x2apic_mode = IS_ENABLED(CONFIG_X2APIC_MIXED) ? mixed
+                          : (IS_ENABLED(CONFIG_X2APIC_PHYSICAL) ? physical
+                                                                : cluster);
+    }
 
-    if ( x2apic_phys )
+    if ( x2apic_mode == physical )
         return &apic_x2apic_phys;
 
+    if ( x2apic_mode == cluster && iommu_intremap != iommu_intremap_full )
+    {
+        printk("WARNING: x2APIC cluster mode is not supported %s interrupt remapping -"
+               " forcing mixed mode\n",
+               iommu_intremap == iommu_intremap_off ? "without"
+                                                    : "with restricted");
+        x2apic_mode = mixed;
+    }
+
     if ( !this_cpu(cluster_cpus) )
     {
         update_clusterinfo(NULL, CPU_UP_PREPARE,
@@ -260,7 +297,7 @@ const struct genapic *__init apic_x2apic_probe(void)
         register_cpu_notifier(&x2apic_cpu_nfb);
     }
 
-    return &apic_x2apic_cluster;
+    return x2apic_mode == cluster ? &apic_x2apic_cluster : &apic_x2apic_mixed;
 }
 
 void __init check_x2apic_preenabled(void)
-- 
2.42.0



From xen-devel-bounces@lists.xenproject.org Tue Oct 24 14:02:05 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 14:02:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622011.969058 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvHyq-0002cN-4p; Tue, 24 Oct 2023 14:02:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622011.969058; Tue, 24 Oct 2023 14:02: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 1qvHyq-0002cG-13; Tue, 24 Oct 2023 14:02:00 +0000
Received: by outflank-mailman (input) for mailman id 622011;
 Tue, 24 Oct 2023 14:01: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=urDo=GG=bugseng.com=federico.serafini@srs-se1.protection.inumbo.net>)
 id 1qvHyo-0002cA-Rm
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 14:01:58 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id e4a4efba-7275-11ee-9b0e-b553b5be7939;
 Tue, 24 Oct 2023 16:01:56 +0200 (CEST)
Received: from Dell.homenet.telecomitalia.it
 (host-95-247-204-25.retail.telecomitalia.it [95.247.204.25])
 by support.bugseng.com (Postfix) with ESMTPSA id 27A1A4EE0739;
 Tue, 24 Oct 2023 16:01: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: e4a4efba-7275-11ee-9b0e-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_init: address a violation of MISRA C:2012 Rule 8.3
Date: Tue, 24 Oct 2023 16:01:35 +0200
Message-Id: <cfd803a27efaa529b4e972acc1fa6a8f0e20c9c0.1698155675.git.federico.serafini@bugseng.com>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Change parameter name and emphasize that it is deliberately not used through a
comment followed by the statement '(void) data;'.
This also addresses a violation of MISRA C:2012 Rule 2.7 ("A function should
not contain unused parameters").

No functional change.

Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
---
 xen/drivers/passthrough/amd/iommu_init.c | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/xen/drivers/passthrough/amd/iommu_init.c b/xen/drivers/passthrough/amd/iommu_init.c
index 9c01a49435..5bfaa6cdd4 100644
--- a/xen/drivers/passthrough/amd/iommu_init.c
+++ b/xen/drivers/passthrough/amd/iommu_init.c
@@ -692,7 +692,7 @@ static void iommu_check_ppr_log(struct amd_iommu *iommu)
     spin_unlock_irqrestore(&iommu->lock, flags);
 }
 
-static void cf_check do_amd_iommu_irq(void *unused)
+static void cf_check do_amd_iommu_irq(void *data)
 {
     struct amd_iommu *iommu;
 
@@ -702,6 +702,11 @@ static void cf_check do_amd_iommu_irq(void *unused)
         return;
     }
 
+    /*
+     * Formal parameter is deliberately unused.
+     */
+    (void) data;
+
     /*
      * No matter from where the interrupt came from, check all the
      * IOMMUs present in the system. This allows for having just one
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Tue Oct 24 14:11:02 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 14:11:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622015.969068 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvI7R-0004Mo-Vm; Tue, 24 Oct 2023 14:10:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622015.969068; Tue, 24 Oct 2023 14:10: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 1qvI7R-0004Mh-Sg; Tue, 24 Oct 2023 14:10:53 +0000
Received: by outflank-mailman (input) for mailman id 622015;
 Tue, 24 Oct 2023 14:10: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=+b+W=GG=gmail.com=xadimgnik@srs-se1.protection.inumbo.net>)
 id 1qvI7P-0004Mb-NY
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 14:10:51 +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 2203dc1f-7277-11ee-9b0e-b553b5be7939;
 Tue, 24 Oct 2023 16:10:49 +0200 (CEST)
Received: by mail-lf1-x134.google.com with SMTP id
 2adb3069b0e04-507ac66a969so6088501e87.3
 for <xen-devel@lists.xenproject.org>; Tue, 24 Oct 2023 07:10:49 -0700 (PDT)
Received: from [192.168.6.66] (54-240-197-238.amazon.com. [54.240.197.238])
 by smtp.gmail.com with ESMTPSA id
 n15-20020a7bcbcf000000b004060f0a0fdbsm16824685wmi.41.2023.10.24.07.10.46
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 24 Oct 2023 07:10: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: 2203dc1f-7277-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698156649; x=1698761449; 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=O4Y3NJJxZnet/u/+ClOIVYQTH9XNjb8AeBmOgUc+Wdk=;
        b=hqC2LzxkDFfR0UwDy/POlaqDLzyiLofc+A/xZo2cKg/O+sKZWmRe2tQhhr+J+owYZF
         Bw08A4Lgf2VmsOa1ZoPegnPTC017CAcPudwVXBFIj5iY60vD7X909BqtDMwphGqV1W5V
         7bx5JQ961AyZxRGbL6ovvE+jPPyUiONKKto/KwGFo48JhlMM3fkZRuuwv66pYlGso2uR
         BgNTMaMYlKwsbjtTGoRnJ4zRCUrJHCjWl9U9Ctz7Pxim8oV6Jk8y1p2G+vw3opTdFpdi
         Vz1admoaNW5My4e2vniHKRedJ1stReEcp20EbBlz1OgGul+oTNsHP3Uk0HaY2tpjp9vd
         jY5g==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698156649; x=1698761449;
        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=O4Y3NJJxZnet/u/+ClOIVYQTH9XNjb8AeBmOgUc+Wdk=;
        b=pSaQWcgPW4zNT9LBARZPpboytoBMDLNUAw2dgH6Vc1A+G7cOtPtrYv2FAbQUN56IPw
         V0dKAIzU3Dwk2hxtDO4JS9Zy4qRbTMUGBjm0alVTor8xlp73637cbhMP9id+40+57tbm
         0W6gEsxJpb9OLafWtYv46cK2z8xzHgmNqL8+yoVirHySHkuBzvfHwefgbchQhFsJ9R41
         fj8B7Jxxj15SPECRNZrROgLjD8t0v/fBr5M+fjINNC0v8RWQ943TRsJ3MAGP2Nqlxg+G
         gD4SCUyVz/yfdeJMZHrL6KuLFSJlLYszGJUdwocPl6AFG6bqf88TzX9QIlzsMrMCI8TR
         bDTw==
X-Gm-Message-State: AOJu0YxX3yhw+uAgVL8+4fOJMFAitvv/2xQubs1va3UuvWkwWH66Bx2Z
	XEHhzxBKuSQZyOZIUHRJV3o=
X-Google-Smtp-Source: AGHT+IHszHDLVtShMAkzRbGqalZC2ZdGiWC/tPXrcM+mvjAw5eIWwjZ5DaBiH9KKgD4DF1MNxjUmSQ==
X-Received: by 2002:ac2:5398:0:b0:506:8d2a:5653 with SMTP id g24-20020ac25398000000b005068d2a5653mr8824946lfh.47.1698156648053;
        Tue, 24 Oct 2023 07:10:48 -0700 (PDT)
From: Paul Durrant <xadimgnik@gmail.com>
X-Google-Original-From: Paul Durrant <paul@xen.org>
Message-ID: <0e169b58-f481-4b77-8385-6a1a58b57df1@xen.org>
Date: Tue, 24 Oct 2023 15:10:46 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Reply-To: paul@xen.org
Subject: Re: [PATCH 09/12] hw/xen: prevent duplicate device registrations
Content-Language: en-US
To: David Woodhouse <dwmw2@infradead.org>, qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>, Hanna Reitz <hreitz@redhat.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Anthony Perard <anthony.perard@citrix.com>,
 =?UTF-8?Q?Marc-Andr=C3=A9_Lureau?= <marcandre.lureau@redhat.com>,
 Paolo Bonzini <pbonzini@redhat.com>, "Michael S. Tsirkin" <mst@redhat.com>,
 Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
 Richard Henderson <richard.henderson@linaro.org>,
 Eduardo Habkost <eduardo@habkost.net>, Marcelo Tosatti
 <mtosatti@redhat.com>, qemu-block@nongnu.org,
 xen-devel@lists.xenproject.org, kvm@vger.kernel.org
References: <20231016151909.22133-1-dwmw2@infradead.org>
 <20231016151909.22133-10-dwmw2@infradead.org>
Organization: Xen Project
In-Reply-To: <20231016151909.22133-10-dwmw2@infradead.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 16/10/2023 16:19, David Woodhouse wrote:
> From: David Woodhouse <dwmw@amazon.co.uk>
> 
> Ensure that we have a XenBackendInstance for every device regardless
> of whether it was "discovered" in XenStore or created directly in QEMU.
> 
> This allows the backend_list to be a source of truth about whether a
> given backend exists, and allows us to reject duplicates.
> 
> This also cleans up the fact that backend drivers were calling
> xen_backend_set_device() with a XenDevice immediately after calling
> qdev_realize_and_unref() on it, when it wasn't theirs to play with any
> more.
> 
> Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
> ---
>   hw/block/xen-block.c         |  1 -
>   hw/char/xen_console.c        |  2 +-
>   hw/xen/xen-backend.c         | 78 ++++++++++++++++++++++++++----------
>   hw/xen/xen-bus.c             |  8 ++++
>   include/hw/xen/xen-backend.h |  3 ++
>   5 files changed, 69 insertions(+), 23 deletions(-)
> 
> diff --git a/hw/block/xen-block.c b/hw/block/xen-block.c
> index a07cd7eb5d..9262338535 100644
> --- a/hw/block/xen-block.c
> +++ b/hw/block/xen-block.c
> @@ -975,7 +975,6 @@ static void xen_block_device_create(XenBackendInstance *backend,
>           goto fail;
>       }
>   
> -    xen_backend_set_device(backend, xendev);
>       return;
>   
>   fail:
> diff --git a/hw/char/xen_console.c b/hw/char/xen_console.c
> index bd20be116c..2825b8c511 100644
> --- a/hw/char/xen_console.c
> +++ b/hw/char/xen_console.c
> @@ -468,7 +468,7 @@ static void xen_console_device_create(XenBackendInstance *backend,
>       Chardev *cd = NULL;
>       struct qemu_xs_handle *xsh = xenbus->xsh;
>   
> -    if (qemu_strtoul(name, NULL, 10, &number)) {
> +    if (qemu_strtoul(name, NULL, 10, &number) || number >= INT_MAX) {
>           error_setg(errp, "failed to parse name '%s'", name);
>           goto fail;
>       }
I don't think this hunk belongs here, does it? Seems like it should be 
in patch 7.

> diff --git a/hw/xen/xen-backend.c b/hw/xen/xen-backend.c
> index b9bf70a9f5..dcb4329258 100644
> --- a/hw/xen/xen-backend.c
> +++ b/hw/xen/xen-backend.c
> @@ -101,22 +101,28 @@ static XenBackendInstance *xen_backend_list_find(XenDevice *xendev)
>       return NULL;
>   }
>   
> -bool xen_backend_exists(const char *type, const char *name)
> +static XenBackendInstance *xen_backend_lookup(const XenBackendImpl *impl, const char *name)

This name is a little close to xen_backend_table_lookup()... perhaps 
that one should be renamed xen_backend_impl_lookup() for clarity.

>   {
> -    const XenBackendImpl *impl = xen_backend_table_lookup(type);
>       XenBackendInstance *backend;
>   
> -    if (!impl) {
> -        return false;
> -    }
> -
>       QLIST_FOREACH(backend, &backend_list, entry) {
>           if (backend->impl == impl && !strcmp(backend->name, name)) {
> -            return true;
> +            return backend;
>           }
>       }
>   
> -    return false;
> +    return NULL;
> +}
> +
> +bool xen_backend_exists(const char *type, const char *name)
> +{
> +    const XenBackendImpl *impl = xen_backend_table_lookup(type);
> +
> +    if (!impl) {
> +        return false;
> +    }
> +
> +    return !!xen_backend_lookup(impl, name);
>   }
>   
>   static void xen_backend_list_remove(XenBackendInstance *backend)
> @@ -138,11 +144,10 @@ void xen_backend_device_create(XenBus *xenbus, const char *type,
>       backend = g_new0(XenBackendInstance, 1);
>       backend->xenbus = xenbus;
>       backend->name = g_strdup(name);
> -
> -    impl->create(backend, opts, errp);
> -
>       backend->impl = impl;
>       xen_backend_list_add(backend);
> +
> +    impl->create(backend, opts, errp);
>   }
>   
>   XenBus *xen_backend_get_bus(XenBackendInstance *backend)
> @@ -155,13 +160,6 @@ const char *xen_backend_get_name(XenBackendInstance *backend)
>       return backend->name;
>   }
>   
> -void xen_backend_set_device(XenBackendInstance *backend,
> -                            XenDevice *xendev)
> -{
> -    g_assert(!backend->xendev);
> -    backend->xendev = xendev;
> -}
> -

The declaration also needs removing from xen-backend.h presumably.

>   XenDevice *xen_backend_get_device(XenBackendInstance *backend)
>   {
>       return backend->xendev;
> @@ -178,9 +176,7 @@ bool xen_backend_try_device_destroy(XenDevice *xendev, Error **errp)
>       }
>   
>       impl = backend->impl;
> -    if (backend->xendev) {
> -        impl->destroy(backend, errp);
> -    }
> +    impl->destroy(backend, errp);
>   
>       xen_backend_list_remove(backend);
>       g_free(backend->name);
> @@ -188,3 +184,43 @@ bool xen_backend_try_device_destroy(XenDevice *xendev, Error **errp)
>   
>       return true;
>   }
> +
> +bool xen_backend_device_realized(XenDevice *xendev, Error **errp)
> +{
> +    XenDeviceClass *xendev_class = XEN_DEVICE_GET_CLASS(xendev);
> +    const char *type = xendev_class->backend ? : object_get_typename(OBJECT(xendev));
> +    const XenBackendImpl *impl = xen_backend_table_lookup(type);
> +    XenBackendInstance *backend;
> +
> +    if (!impl) {
> +        return false;
> +    }
> +
> +    backend = xen_backend_lookup(impl, xendev->name);
> +    if (backend) {
> +        if (backend->xendev && backend->xendev != xendev) {
> +            error_setg(errp, "device %s/%s already exists", type, xendev->name);
> +            return false;
> +        }
> +        backend->xendev = xendev;
> +        return true;
> +    }
> +
> +    backend = g_new0(XenBackendInstance, 1);
> +    backend->xenbus = XEN_BUS(qdev_get_parent_bus(DEVICE(xendev)));
> +    backend->xendev = xendev;
> +    backend->name = g_strdup(xendev->name);
> +    backend->impl = impl;
> +
> +    xen_backend_list_add(backend);
> +    return true;
> +}

Not sure I'm getting my head around this. How does this play with the 
legacy backend code? The point about having the impl list was so that 
the newer xenbus code didn't conflict with the legacy backend code, 
which thinks it has carte blanche ownership of a class.

   Paul

> +
> +void xen_backend_device_unrealized(XenDevice *xendev)
> +{
> +    XenBackendInstance *backend = xen_backend_list_find(xendev);
> +
> +    if (backend) {
> +        backend->xendev = NULL;
> +    }
> +}
> diff --git a/hw/xen/xen-bus.c b/hw/xen/xen-bus.c
> index 0da2aa219a..0b232d1f94 100644
> --- a/hw/xen/xen-bus.c
> +++ b/hw/xen/xen-bus.c
> @@ -359,6 +359,8 @@ static void xen_bus_realize(BusState *bus, Error **errp)
>   
>       g_free(type);
>       g_free(key);
> +
> +    xen_bus_enumerate(xenbus);
>       return;
>   
>   fail:
> @@ -958,6 +960,8 @@ static void xen_device_unrealize(DeviceState *dev)
>   
>       trace_xen_device_unrealize(type, xendev->name);
>   
> +    xen_backend_device_unrealized(xendev);
> +
>       if (xendev->exit.notify) {
>           qemu_remove_exit_notifier(&xendev->exit);
>           xendev->exit.notify = NULL;
> @@ -1024,6 +1028,10 @@ static void xen_device_realize(DeviceState *dev, Error **errp)
>           goto unrealize;
>       }
>   
> +    if (!xen_backend_device_realized(xendev, errp)) {
> +        goto unrealize;
> +    }
> +
>       trace_xen_device_realize(type, xendev->name);
>   
>       xendev->xsh = qemu_xen_xs_open();
> diff --git a/include/hw/xen/xen-backend.h b/include/hw/xen/xen-backend.h
> index 0f01631ae7..3f1e764c51 100644
> --- a/include/hw/xen/xen-backend.h
> +++ b/include/hw/xen/xen-backend.h
> @@ -38,4 +38,7 @@ void xen_backend_device_create(XenBus *xenbus, const char *type,
>                                  const char *name, QDict *opts, Error **errp);
>   bool xen_backend_try_device_destroy(XenDevice *xendev, Error **errp);
>   
> +bool xen_backend_device_realized(XenDevice *xendev, Error **errp);
> +void xen_backend_device_unrealized(XenDevice *xendev);
> +
>   #endif /* HW_XEN_BACKEND_H */



From xen-devel-bounces@lists.xenproject.org Tue Oct 24 14:15:19 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 14:15:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622018.969078 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvIBh-0005lx-It; Tue, 24 Oct 2023 14:15:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622018.969078; Tue, 24 Oct 2023 14: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 1qvIBh-0005lq-EM; Tue, 24 Oct 2023 14:15:17 +0000
Received: by outflank-mailman (input) for mailman id 622018;
 Tue, 24 Oct 2023 14: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 1qvIBg-0005lg-M6; Tue, 24 Oct 2023 14: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 1qvIBg-0002EO-Co; Tue, 24 Oct 2023 14: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 1qvIBg-0007yf-3t; Tue, 24 Oct 2023 14:15:16 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qvIBg-0003vS-3Y; Tue, 24 Oct 2023 14:15: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=awFMYAxO+60ccEZAP5tXrdgUNg4d25Ps+/sN13hLdD0=; b=RwwM6XXoKlmCppl52/Fr1T16KD
	r93HfjvRfXiNWhvMpglMqKk4ZA0eycXfhGcit23UxOcJPE58M3fMOYfS80fI3PSqkOy2uYUZV61Pe
	pm1p5dn25XmXQx3CvYi3YuuVQJhmn2RIuyq59iwUAs698PjuRIrbQg3rWE4li6NnPPr4=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183505-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [libvirt test] 183505: tolerable FAIL - PUSHED
X-Osstest-Failures:
    libvirt:test-armhf-armhf-libvirt-raw:guest-start:fail:heisenbug
    libvirt:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt: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-amd64-amd64-libvirt-vhd: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-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    libvirt=1622012cc42b983300015a6661b1ca67d40376ad
X-Osstest-Versions-That:
    libvirt=6be0d1a0d3f812cdf0b310e5e36bf3533a9b4ae4
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 24 Oct 2023 14:15:16 +0000

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

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-armhf-armhf-libvirt-raw 13 guest-start         fail pass in 183512-retest

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail in 183512 like 183451
 test-armhf-armhf-libvirt-raw 14 migrate-support-check fail in 183512 never pass
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183451
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183451
 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-amd64-amd64-libvirt-vhd 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-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-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass

version targeted for testing:
 libvirt              1622012cc42b983300015a6661b1ca67d40376ad
baseline version:
 libvirt              6be0d1a0d3f812cdf0b310e5e36bf3533a9b4ae4

Last test of basis   183451  2023-10-21 04:18:54 Z    3 days
Testing same since   183505  2023-10-24 04:20:34 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Laine Stump <laine@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                                 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
   6be0d1a0d3..1622012cc4  1622012cc42b983300015a6661b1ca67d40376ad -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 14:20:23 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 14:20:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622023.969088 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvIGX-0001Ap-4F; Tue, 24 Oct 2023 14:20:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622023.969088; Tue, 24 Oct 2023 14:20: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 1qvIGX-0001Ai-14; Tue, 24 Oct 2023 14:20:17 +0000
Received: by outflank-mailman (input) for mailman id 622023;
 Tue, 24 Oct 2023 14:20: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=+b+W=GG=gmail.com=xadimgnik@srs-se1.protection.inumbo.net>)
 id 1qvIGW-0001Ac-4Y
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 14:20:16 +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 7344d08c-7278-11ee-98d5-6d05b1d4d9a1;
 Tue, 24 Oct 2023 16:20:15 +0200 (CEST)
Received: by mail-wm1-x32e.google.com with SMTP id
 5b1f17b1804b1-40836ea8cbaso33694515e9.0
 for <xen-devel@lists.xenproject.org>; Tue, 24 Oct 2023 07:20:15 -0700 (PDT)
Received: from [192.168.6.66] (54-240-197-238.amazon.com. [54.240.197.238])
 by smtp.gmail.com with ESMTPSA id
 p12-20020a05600c358c00b00401b242e2e6sm17039468wmq.47.2023.10.24.07.20.12
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 24 Oct 2023 07:20: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: 7344d08c-7278-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698157214; x=1698762014; 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=N/RTcnvN+s3qfbGL8IxZ3YpZboBFi25HRb3Ev7DIpus=;
        b=evl0seWU5DQFDBEwOB+grsPcjrpcRwgSYth4JtHHKApnkHwAmE5cxv6YL140ELukgI
         TAIdzOm/OqATCt9ZhTi/dATUqZE5+d+NiF/3yvzinB2gUPv9OpAonGPmE8bbgXC73Mz3
         exeZU3SHJVcXQFkYXyt4sff2KYLZ2mPYKinWtmTmwiqRaOQ8M8VQDQdbllq8fC5vxqmE
         dZMeM0xp0X11rwvkERAYdvrrGv1c23gATaRDu3yjIYHsc+ge9qgbfjsI4cuzEKgyeYtF
         AM6G9pFXbkYW3S2G1MqsB2M7yj/fYP6E/jqMdkRj1BAvfUDvECepQB4r1rM0t2z3bCrx
         sp6Q==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698157214; x=1698762014;
        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=N/RTcnvN+s3qfbGL8IxZ3YpZboBFi25HRb3Ev7DIpus=;
        b=lXKrcWHH7wHNrfHu61PeZx67qi2qvvqkOejoARthEKQPHHBRwIq86G5OwJBJypEbEw
         edptlE/s9jzWOortO8dvWk7rzjcpyq/4YACeexbsAbXVHvp7CO4EOnWN8EdCKXI9IJc+
         SFLbKlzd3HEx9ow8gNo/hOY9KCUG9e3zkoHJtO/3Wd3eHPd5FHF0dfU1UJYQZg6aeJu1
         xGlVm3XTLwNKfTVwyPI8UHKT5p1WQZHfw024Pe+8iegB3s44w53X98Xlq5pXPOSNVwK/
         EmY3lBcJCOmNEwRdXmBgjzI3FHmd30VsZtYZ478eRTRpbQw5O6mkKNHsftA+bU7b7B4p
         hv/A==
X-Gm-Message-State: AOJu0YzE4tj2PeL9gcBZqDD2n5/pLByBSKG95qPippmxOyZgJEx6Hbb7
	ViE1yjFpsr5X/M2aZOOSMnc=
X-Google-Smtp-Source: AGHT+IEyITPkgMCMhYLgEPjPPOpjFI74iF5+LpLQdanMOxh59eFvYc4PmD1+hbF9zetlTx+c01olxg==
X-Received: by 2002:a05:600c:5254:b0:405:2d23:16d9 with SMTP id fc20-20020a05600c525400b004052d2316d9mr9323630wmb.21.1698157214277;
        Tue, 24 Oct 2023 07:20:14 -0700 (PDT)
From: Paul Durrant <xadimgnik@gmail.com>
X-Google-Original-From: Paul Durrant <paul@xen.org>
Message-ID: <c18439ca-c9ae-4567-bbcf-dffe6f7b72e3@xen.org>
Date: Tue, 24 Oct 2023 15:20:12 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Reply-To: paul@xen.org
Subject: Re: [PATCH 12/12] hw/xen: add support for Xen primary console in
 emulated mode
Content-Language: en-US
To: David Woodhouse <dwmw2@infradead.org>, qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>, Hanna Reitz <hreitz@redhat.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Anthony Perard <anthony.perard@citrix.com>,
 =?UTF-8?Q?Marc-Andr=C3=A9_Lureau?= <marcandre.lureau@redhat.com>,
 Paolo Bonzini <pbonzini@redhat.com>, "Michael S. Tsirkin" <mst@redhat.com>,
 Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
 Richard Henderson <richard.henderson@linaro.org>,
 Eduardo Habkost <eduardo@habkost.net>, Marcelo Tosatti
 <mtosatti@redhat.com>, qemu-block@nongnu.org,
 xen-devel@lists.xenproject.org, kvm@vger.kernel.org
References: <20231016151909.22133-1-dwmw2@infradead.org>
 <20231016151909.22133-13-dwmw2@infradead.org>
Organization: Xen Project
In-Reply-To: <20231016151909.22133-13-dwmw2@infradead.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 16/10/2023 16:19, David Woodhouse wrote:
> From: David Woodhouse <dwmw@amazon.co.uk>
> 
> The primary console is special because the toolstack maps a page at a
> fixed GFN and also allocates the guest-side event channel. Add support
> for that in emulated mode, so that we can have a primary console.
> 
> Add a *very* rudimentary stub of foriegnmem ops for emulated mode, which
> supports literally nothing except a single-page mapping of the console
> page. This might as well have been a hack in the xen_console driver, but
> this way at least the special-casing is kept within the Xen emulation
> code, and it gives us a hook for a more complete implementation if/when
> we ever do need one.
> 
Why can't you map the console page via the grant table like the xenstore 
page?

   Paul



From xen-devel-bounces@lists.xenproject.org Tue Oct 24 14:25:44 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 14:25:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622027.969098 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvILh-0003lO-Rb; Tue, 24 Oct 2023 14:25:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622027.969098; Tue, 24 Oct 2023 14:25: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 1qvILh-0003lH-Nv; Tue, 24 Oct 2023 14:25:37 +0000
Received: by outflank-mailman (input) for mailman id 622027;
 Tue, 24 Oct 2023 14:25: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=krZT=GG=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qvILg-0003lB-21
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 14:25:36 +0000
Received: from EUR01-DB5-obe.outbound.protection.outlook.com
 (mail-db5eur01on0615.outbound.protection.outlook.com
 [2a01:111:f400:fe02::615])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 30cb55b5-7279-11ee-9b0e-b553b5be7939;
 Tue, 24 Oct 2023 16:25:33 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS5PR04MB9894.eurprd04.prod.outlook.com (2603:10a6:20b:655::15)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.8; Tue, 24 Oct
 2023 14:25:30 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6933.011; Tue, 24 Oct 2023
 14:25: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: 30cb55b5-7279-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=J+FkTU8H5sQR8nA5ZHvW8C8z+RZhe4fGpopK0ydVQ3HAbbOP+utTRTohi9TYLT8RYXiznAMNHdvEdtI9lvYvEY14BIwFUDl5nNyEuSxuMWYK8CxdOYC5ocKQqWwupnvW94wfT/GLv5jAUzHX8XUy3zkxfIhCz3cTAcarq959zyFEvwG0ixusLHbu8nsTtF23ZDkjSbnhheljCBvTA8sQcSo/tTBpWw+HwZZRlflnYV1mgyUTdnAo4PMzW9S3Y5hjOphbivc74WgH0ENuW9CZ4UNQoQ/gevvR2V0z0OLis+1slO1ntWSnSm+u8bhTAIOwVbolNAFX9oIPuUcMjaBQpA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=qq57+vM2516dkts2mV9mBKjzUppZftqK/7jZddFf+gI=;
 b=mpYVyBUm5n1MwiMS1i/V4KBQyZqxCq/Bw11DSDS0oYgsUWqA26LcQWW+E+BNMUCrG5EqMTeheR51o9e7VDVtRi5+g0Vs/OaHgoqH0263TkgNazP04tE/GEgDNaFfXz0nS4txl5H8Fwr07EMojpmN/AiMnhyiTkm9B6p/xTnp2yAGSkXgldSUoFMJ0f+IJxb5Q83T5Mdw5urdwzd8Zybd0fPJCrKNl8eyHFNccvP4FgbQlNmob2UiXLDIKTr9dhdNYrdG9XewBEFUi0o8gbIlDxqM/OOcibfU6zFshyAmjG1xfEW6DvNVvFqDLORVXceK7N/MWKNQV5QmsuxuAYtmyQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=qq57+vM2516dkts2mV9mBKjzUppZftqK/7jZddFf+gI=;
 b=H97jeQ55Ln/iEm6k1Q3NmqwWt6dBRueITwTiOBP8wClvSi12hNHxmX2LKeyuKIOKLaZwf4BGxmbEFudiH2v6D5m1wBOOExfnyLVaa1J3z8+iza1x4D5ScWE26SqlSoFReLgkkNuOWKQEJI3LLMZzXZjZZP91fCSIm1u/w2zv2+RmxVYmIdrxI0CR6Tuc9EZ8kAi38zHV6Oy+9GY7BL6grPYg7KZB4JycbuNEqDElN0Ysr10PsMAOeNv1gpSqLFMT4wwJwfAqLjUAVJN4sA7htyidXdFNFVYbAXT7jB1rZzlL2/4NHol9/TIyoIixRprPrl7xU5IR/qDGuwZ6DyZaDA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <c1fa350f-6f49-e2b1-0cda-dec99df415ae@suse.com>
Date: Tue, 24 Oct 2023 16:25:28 +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: Julien Grall <julien@xen.org>
Cc: Stefano Stabellini <stefano.stabellini@amd.com>,
 Simone Ballarin <simone.ballarin@bugseng.com>, consulting@bugseng.com,
 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>,
 Doug Goldstein <cardoe@cardoe.com>,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 xen-devel@lists.xenproject.org, Stefano Stabellini <sstabellini@kernel.org>
References: <cover.1694510856.git.simone.ballarin@bugseng.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>
 <725f5193-c8d3-1bc8-cd62-2a2b1b5ecc01@suse.com>
 <alpine.DEB.2.22.394.2310171709310.965337@ubuntu-linux-20-04-desktop>
 <ead797ed-84cc-fb70-5259-7e11211d049e@suse.com>
 <alpine.DEB.2.22.394.2310181739270.965337@ubuntu-linux-20-04-desktop>
 <e642bc2a-cefa-4ee4-6394-3c10102e8164@suse.com>
 <alpine.DEB.2.22.394.2310190915590.1945130@ubuntu-linux-20-04-desktop>
 <6374f0f4-d58f-83ca-6eb3-d5a9fcbac525@suse.com>
 <alpine.DEB.2.22.394.2310201622160.2356865@ubuntu-linux-20-04-desktop>
 <36e6dd08-918c-9791-0dab-ca75d4b98d7e@suse.com>
 <alpine.DEB.2.22.394.2310231346370.3516@ubuntu-linux-20-04-desktop>
 <af4a86bc-40d3-4363-adc8-30981652cd2b@xen.org>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <af4a86bc-40d3-4363-adc8-30981652cd2b@xen.org>
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_|AS5PR04MB9894:EE_
X-MS-Office365-Filtering-Correlation-Id: 6a648bc4-7094-4b9b-421c-08dbd49d133b
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	hC5eNon6UFrIMcmUt4Eno0M5DxdFJ7uOht+HOQtV9KEHAg261d2aNDcyayQuxxMFEJZ/Y1L+5ECVs08GznCNINhTtnx2NcXOcpZhWyS2xBdT3AiEvGZGrVM5Ts0kLzTd5CgQqO7OcwX9RtFRbH4NoLQ2gUslWPRH7bh6eddXxa3hHFuF9/iAJMtr1YfZAi6bWRiHoxysKmhaoi6Kk1aLYaXOYMfkq7OIU1jm35ApjeeduJVydoe/0HpFm1KujJZm5LrGB2FywQTQdgZoOg9p48sZrpY6HR9cN9XIsVi1rowkGvGEuK40bOAvbcTkVRNd1DNcEnYQMcPeXxHp8nIm8mihwwJVqqwwOKdZ6Gl1K892fKC8KVgfMcqG3R120fXVBj+yYUj18kXXpel07DERFd+3hOdJeHZvoAEj5r0874fA4R5aV2eflUsOv0HLkQdd5Ohqo2a1yLBHpLrpzLYhVj2frm4MuIhVjjl+O0ZGjrvc3t82KvpvrY6bT5j2ee/4izH/7tV6pUjSec3jmgTZFYJS79Ug8vyzUp6IAaVchrulUf7xG9+v1tSvZK2QP7dcRW+uSXk4QfAS7VpjSNx4ZeAymNqts53FTkDWoucvE+z+/fN6lHywIGp2dlwle1eKHW1FfUyGNNfITZ7sgc2Ahw==
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)(1800799009)(451199024)(64100799003)(186009)(2616005)(6506007)(6512007)(38100700002)(26005)(53546011)(36756003)(66476007)(478600001)(66556008)(66946007)(6486002)(54906003)(31696002)(31686004)(86362001)(83380400001)(316002)(6916009)(8936002)(8676002)(4326008)(41300700001)(5660300002)(66899024)(7416002)(2906002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?T2RseVVSbk5mY1pTNXh1bmxBWkNvUlByS2g1NzhJZUE4bnFhaHlhc3FvcUZq?=
 =?utf-8?B?Mit1RDFaMGsxdUhsNUU5bVJLSzJ2OTRLd0MwV0t5cUgxTURvVTRUMzFiSnFX?=
 =?utf-8?B?cFFGS2ZDQ0xPTmRjdUlPem5YTXFpb3JVTy9KbWpkZGZwZTdEZzB0MDFMNkVC?=
 =?utf-8?B?NUtDYVdzSjVEdUZCcm1DSWl1QWcrWFhTK2o0NkJuaHZvNURYQm56UE1BZEZo?=
 =?utf-8?B?VW5Ick51QzQrMUd4akVRZ0hFTGFxOUk2NlRiR0Nyc0pEanFHT3JockdndEJi?=
 =?utf-8?B?dTAwc3hhczIwc09DamdyRW82SzRMRWtwbkxSSHlyK3ZUcWxMSTMwVkFqRUp3?=
 =?utf-8?B?WllSMklaczBzMHlHTXM5UFVnVEhTN3dBYXNacHQzRU9JdzgrNnpSeGFNZXZp?=
 =?utf-8?B?cExPU0Zoc3Q2Vk5GcGhQQmhsdURqcXVrY3MyeW01YjJRWUJ6SGx1REx6cVJQ?=
 =?utf-8?B?QXFocGMyeDJtbStQSmFLai9Jc1Ayb0lldVR5a1VGMDZWTzJyU0w4THlSelk1?=
 =?utf-8?B?R3BKeFhmTjRmdExIZENzcUVHdmZla2ZxSUUvaDhPK3l5Tldyd1BMT3g5M2J3?=
 =?utf-8?B?b0Q0TGNZVTF6aEJaa09qODVVYk5nS1RidGJKVnVOdkJhOU9xSXVQL09MNEg2?=
 =?utf-8?B?S3ZaK1E5VzgrSFFkK2w0VVRNS1dzV0Njd0dqVU9GbTNyaXd6aHRzbVBvbm1X?=
 =?utf-8?B?Uml0aHp1UXdsMzloditmN1ZUS3prS0FLbWxROXFlQUJoZit3RWNRTXNZbkVq?=
 =?utf-8?B?bDFXQjBDZkd3YlY4dHgvU1QxbFp3ZTRBNldST1N5cEVabGlya1lmbDByb05Z?=
 =?utf-8?B?d2g4cnczZjVCc2ZBYlFVclZmS2dQbU8wRExjRDE1Rzh5SnIzcDZRQmFFeHdX?=
 =?utf-8?B?dlZ5UURNNDdoOTE2TS81Mkh3K0FPRjZmTHBpazdZOVVYemt1cUc1N01CM0ZB?=
 =?utf-8?B?UmdSb3MxdWRvQXFIT0lvK2JTdGZqVzd4QVRRWnp0KzhPNmx2bWhPWTRRYTBu?=
 =?utf-8?B?NDhLWGlVenNNeU54RFFObHQ2S2dZclZpTDErWmtUQ1AzMWRaK214WnQza1Fi?=
 =?utf-8?B?dC9vK1JjRU1LZkhmM1MwUTlXVjRjMkY3dWNyUmVJUWFleXZxZXlNL3FVa29k?=
 =?utf-8?B?YW9RMUpId2dNbmtHNTErNXBmTlU3OHlldElzYkhNck9Cdm02YmNZU2hGZUQy?=
 =?utf-8?B?NGJLN0JxRjJSYjR2VEIrR1lrTzlMUTdTbjExM1kxaU9DTU0rMVgyajFnazdy?=
 =?utf-8?B?RVZLQXpQamlObUZyaTR1S3VKeTBFVVRXdEU2TEVWZnBrNTJlZG5jSDMwb1RU?=
 =?utf-8?B?dHpuMEEvVUlEM3NOU0pJdjlWaGtHZXh3dWxwQnBleS9GeEFnNjM3bmJKN0k5?=
 =?utf-8?B?ME9wc1lvQkIrYVNaQXdwMSsveGNURVVacHI4QUhXUVNYUG10dnNYem81c1Vt?=
 =?utf-8?B?RS81aENVU0h0RTVEMjU4NWFqVlZSeG84Z2Vxd1p6UHFEWFZwQVJiMXV5cVVM?=
 =?utf-8?B?UXI4UGhWMmpzRTVLc1dEOUo0Z0Y5R1pROTlGTysrODNpV2dYZ1p2azJpMXor?=
 =?utf-8?B?Y2EzMEloY1pCdkF4bUxsN055SUlhYzk3RzUzUXd3SHJFVCtkZkZSWUw3WVhQ?=
 =?utf-8?B?QlQvbTdLaUM4TElJbmtzNlV1Ynd4Tjg5NnJ0Z0luR2dJWVVJSEpLN0ZLaUNs?=
 =?utf-8?B?TWMyTFVDUk5KbGVGbGZVYnY3bUJoUnpUWFdzbW1remIwYy82UFgxYUJ2Tnpu?=
 =?utf-8?B?bXpSWXlGZ29JUEpRemw4L21DbnpPYWIzMGNmVHBFd0xib3h6a1lQcGd5eVA5?=
 =?utf-8?B?WHV0YVZ0b3d5czJOK21VZkxJS1lma3IxZ05FNVdYdDQ0L1JUM3NjSFNnOU9N?=
 =?utf-8?B?cmMxdVg2dm4yVmtxaDBNVWhBNHJpVDk2OEczNU5FRk9RK2FtMkU3c2lVNHVR?=
 =?utf-8?B?VDhXZWN3VU1MalE2NmdUZ3AyMm1KRlB5eStuQkJ3bUdoNjNPbTJXd1l2bWZP?=
 =?utf-8?B?U2lOUVlmRDY5SU91ckQ1cmU1NytTTXNlakJyN1FlZVR1ZlhXMjQ0NGV0Ukxl?=
 =?utf-8?B?V0pWUytjdzF2aFFnK2g1dXZaQm1YVWtjUkh0aUdaMDVWdHN0OTAxQStiQm1C?=
 =?utf-8?Q?3VyaLI5mdxfoe9lfwKh3B0ybl?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 6a648bc4-7094-4b9b-421c-08dbd49d133b
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 24 Oct 2023 14:25:30.2106
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: /CWNOBzAHs9w3hnH6xjqdzK+DoFR4g880cK/8bPbgvaAFJtX1h+MwyKeAwuuCDONRiMyaI7CuERwOIqmuRMHog==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS5PR04MB9894

On 24.10.2023 15:31, Julien Grall wrote:
> Hi Stefano,
> 
> On 23/10/2023 21:47, Stefano Stabellini wrote:
>> On Mon, 23 Oct 2023, Jan Beulich wrote:
>>> On 21.10.2023 01:26, Stefano Stabellini wrote:
>>>> On Fri, 20 Oct 2023, Jan Beulich wrote:
>>>>> On 19.10.2023 18:19, Stefano Stabellini wrote:
>>>>>> On Thu, 19 Oct 2023, Jan Beulich wrote:
>>>>>>> On 19.10.2023 02:44, Stefano Stabellini wrote:
>>>>>>>> On Wed, 18 Oct 2023, Jan Beulich wrote:
>>>>>>>>> On 18.10.2023 02:48, Stefano Stabellini wrote:
>>>>>>>>>> On Mon, 16 Oct 2023, Jan Beulich wrote:
>>>>>>>>>>> On 29.09.2023 00:24, Stefano Stabellini wrote:
>>>>>>>>>>>> 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:
>>>>>>>>>>>
>>>>>>>>>>> ... "least resistance" won't gain us much, as hardly any guards don't
>>>>>>>>>>> start with an underscore.
>>>>>>>>>>>
>>>>>>>>>>>> - 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__ ?
>>>>>>>>>>>
>>>>>>>>>>> There are no headers in xen/include/. For (e.g.) xen/include/xen/ we
>>>>>>>>>>> may go with XEN_BLAH_H; whether ASM prefixes are needed I'm not sure;
>>>>>>>>>>> we could go with just ARM_BLAH_H and X86_BLAH_H?
>>>>>>>>>>>
>>>>>>>>>>> The primary question though is (imo) how to deal with private headers,
>>>>>>>>>>> such that the risk of name collisions is as small as possible.
>>>>>>>>>>
>>>>>>>>>> Looking at concrete examples under xen/include/xen:
>>>>>>>>>> xen/include/xen/mm.h __XEN_MM_H__
>>>>>>>>>> xen/include/xen/dm.h __XEN_DM_H__
>>>>>>>>>> xen/include/xen/hypfs.h __XEN_HYPFS_H__
>>>>>>>>>>
>>>>>>>>>> So I think we should do for consistency:
>>>>>>>>>> xen/include/xen/blah.h __XEN_BLAH_H__
>>>>>>>>>>
>>>>>>>>>> Even if we know the leading underscore are undesirable, in this case I
>>>>>>>>>> would prefer consistency.
>>>>>>>>>
>>>>>>>>> I'm kind of okay with that. FTAOD - here and below you mean to make this
>>>>>>>>> one explicit first exception from the "no new leading underscores" goal,
>>>>>>>>> for newly added headers?
>>>>>>>>
>>>>>>>> Yes. The reason is for consistency with the existing header files.
>>>>>>>>
>>>>>>>>
>>>>>>>>>> On the other hand looking at ARM examples:
>>>>>>>>>> xen/arch/arm/include/asm/traps.h __ASM_ARM_TRAPS__
>>>>>>>>>> xen/arch/arm/include/asm/time.h __ARM_TIME_H__
>>>>>>>>>> xen/arch/arm/include/asm/sysregs.h __ASM_ARM_SYSREGS_H
>>>>>>>>>> xen/arch/arm/include/asm/io.h _ASM_IO_H
>>>>>>>>>>
>>>>>>>>>> And also looking at x86 examples:
>>>>>>>>>> xen/arch/x86/include/asm/paging.h _XEN_PAGING_H
>>>>>>>>>> xen/arch/x86/include/asm/p2m.h _XEN_ASM_X86_P2M_H
>>>>>>>>>> xen/arch/x86/include/asm/io.h _ASM_IO_H
>>>>>>>>>>
>>>>>>>>>> Thet are very inconsistent.
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> So for ARM and X86 headers I think we are free to pick anything we want,
>>>>>>>>>> including your suggested ARM_BLAH_H and X86_BLAH_H. Those are fine by
>>>>>>>>>> me.
>>>>>>>>>
>>>>>>>>> To be honest, I'd prefer a global underlying pattern, i.e. if common
>>>>>>>>> headers are "fine" to use leading underscores for guards, arch header
>>>>>>>>> should, too.
>>>>>>>>
>>>>>>>> I am OK with that too. We could go with:
>>>>>>>> __ASM_ARM_BLAH_H__
>>>>>>>> __ASM_X86_BLAH_H__
>>>>>>>>
>>>>>>>> I used "ASM" to make it easier to differentiate with the private headers
>>>>>>>> below. Also the version without "ASM" would work but it would only
>>>>>>>> differ with the private headers in terms of leading underscores. I
>>>>>>>> thought that also having "ASM" would help readability and help avoid
>>>>>>>> confusion.
>>>>>>>>
>>>>>>>>
>>>>>>>>>> For private headers such as:
>>>>>>>>>> xen/arch/arm/vuart.h __ARCH_ARM_VUART_H__
>>>>>>>>>> xen/arch/arm/decode.h __ARCH_ARM_DECODE_H_
>>>>>>>>>> xen/arch/x86/mm/p2m.h __ARCH_MM_P2M_H__
>>>>>>>>>> xen/arch/x86/hvm/viridian/private.h X86_HVM_VIRIDIAN_PRIVATE_H
>>>>>>>>>>
>>>>>>>>>> More similar but still inconsistent. I would go with ARCH_ARM_BLAH_H and
>>>>>>>>>> ARCH_X86_BLAH_H for new headers.
>>>>>>>>>
>>>>>>>>> I'm afraid I don't like this, as deeper paths would lead to unwieldy
>>>>>>>>> guard names. If we continue to use double-underscore prefixed names
>>>>>>>>> in common and arch headers, why don't we demand no leading underscores
>>>>>>>>> and no path-derived prefixes in private headers? That'll avoid any
>>>>>>>>> collisions between the two groups.
>>>>>>>>
>>>>>>>> OK, so for private headers:
>>>>>>>>
>>>>>>>> ARM_BLAH_H
>>>>>>>> X86_BLAH_H
>>>>>>>>
>>>>>>>> What that work for you?
>>>>>>>
>>>>>>> What are the ARM_ and X86_ prefixes supposed to indicate here? Or to ask
>>>>>>> differently, how would you see e.g. common/decompress.h's guard named?
>>>>>>
>>>>>> I meant that:
>>>>>>
>>>>>> xen/arch/arm/blah.h would use ARM_BLAH_H
>>>>>> xen/arch/x86/blah.h would use X86_BLAH_H
>>>>>>
>>>>>> You have a good question on something like xen/common/decompress.h and
>>>>>> xen/common/event_channel.h.  What do you think about:
>>>>>>
>>>>>> COMMON_BLAH_H, so specifically COMMON_DECOMPRESS_H
>>>>>>
>>>>>> otherwise:
>>>>>>
>>>>>> XEN_BLAH_H, so specifically XEN_DECOMPRESS_H
>>>>>>
>>>>>> I prefer COMMON_BLAH_H but I think both versions are OK.
>>>>>
>>>>> IOW you disagree with my earlier "... and no path-derived prefixes",
>>>>> and you prefer e.g. DRIVERS_PASSTHROUGH_VTD_DMAR_H as a consequence?
>>>>> FTAOD my earlier suggestion was simply based on the observation that
>>>>> the deeper the location of a header in the tree, the more unwieldy
>>>>> its guard name would end up being if path prefixes were to be used.
>>>>
>>>> I don't have a strong opinion on "path-derived prefixes". I prefer
>>>> consistency and easy-to-figure-out guidelines over shortness.
> 
> We adopted the MISRA Rule 5.4 which imposed us a limit (40 for Xen) on 
> the number of characters for macros. AFAIU, this would apply to guards.
> 
> In the example provided by Jan (DRIVERS_PASSTHROUGH_VTD_DMAR_H), this is 
> already 31 characters. So this is quite close to the limit.
> 
>>>>
>>>> The advantage of a path-derived prefix is that it is trivial to figure
>>>> out at first glance. If we can come up with another system that is also
>>>> easy then fine. Do you have a suggestion? If so, sorry I missed it.
>>>
>>> Well, I kind of implicitly suggested "no path derived prefixes for private
>>> headers", albeit realizing that there's a chance then of guards colliding.
>>> I can't think of a good scheme which would fit all goals (no collisions,
>>> uniformity, and not unduly long).
>>
>> Here I think we would benefit from a third opinion. Julien? Anyone?
> 
> Just to confirm, the opinion is only for private headers. You have an 
> agreement for the rest, is it correct?
> 
> If so, then I think we need to have shorter names for guard to avoid 
> hitting the 40 characters limit. I can't think of a way to have a common 
> scheme between private and common headers. So I would consider to have a 
> separate scheme.
> 
> I am not sure if you or Jan already proposed an alternative scheme.

Well, my suggestion was to derive from just the file name (no path
components) for them. But I pointed out that this may lead to collisions
when two or more private headers of the same name exist, and a CU ends
up wanting to include any two of them. Adding in the leaf-most path
component only might get us far enough to avoid collisions in practice,
while at the same time not resulting in overly long guard names.

Jan


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 14:27:23 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 14:27:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622029.969108 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvINN-0004In-5s; Tue, 24 Oct 2023 14:27:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622029.969108; Tue, 24 Oct 2023 14:27: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 1qvINN-0004Ig-2i; Tue, 24 Oct 2023 14:27:21 +0000
Received: by outflank-mailman (input) for mailman id 622029;
 Tue, 24 Oct 2023 14:27: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=krZT=GG=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qvINL-0004IY-Gk
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 14:27:19 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com
 (mail-db3eur04on0609.outbound.protection.outlook.com
 [2a01:111:f400:fe0c::609])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 6f8486d1-7279-11ee-98d5-6d05b1d4d9a1;
 Tue, 24 Oct 2023 16:27:18 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PAXPR04MB9254.eurprd04.prod.outlook.com (2603:10a6:102:2bc::9)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.11; Tue, 24 Oct
 2023 14:27:15 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6933.011; Tue, 24 Oct 2023
 14: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>
X-Inumbo-ID: 6f8486d1-7279-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=aLX1XJWMvI0DI2CrGV11l9vJB37P55ZZbGBlTt9ltLYKSS+3oNdrMPW8Sl/EbQhVsfOscnsQC7NWm/7Zt/LlpQL1NWqYReFGDyE/CBWWFzODdGt2DEOVYRBpXrG3cg9M+3VbdybvPfVNDklaTRGA4PfpW1BJtcfXnGrJbFzQ79YoJds+F0Scc1dMWI6vAVHeoUiC9zBtCcWTIEk2a8ecK5+bnVSS1cGa8X8Ww6lbMQG9KuRV9bbfJE+9pfUMuO4yzPo6vUtoqqd4vkvrgrMmHLPbO6DXJHhb/Bi2D3FtIknQ71YQilGCe/QkUvwo1NXa1tFDe9WocDa0eNHjgxPEMQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=ASSYmQwZBIx1bB8RhQuEVfQxm2TNmLZyuCT0rbjrlSg=;
 b=EFbNwOILCNkHjK0229MuWdsJPbsAd5H/2fhYpD0H9VaWJJuUo12LrYMt6kVexhoIzFFORsBhs7y0akcMYAeE5leJodVSKPXQBufwrk5FVTAaYCGh2JB7SqBVqGUMcDCK8+uqy/pKmEDuoXXc2G9J8PiWuppuETjM0f47VDg8tVpgarkbR56hLVhyYhyBS0TTKx4L+kJjypZKWswDD8JPLZnonHGBMfsXocSt77xLfrjD6BllXcHOjGqzgwX/k+Ms5OYy1+CggGxZPZ23/L+6sW91pW4BcxWrt9hnTLfPGiuR2wZS5cIj6MWoe1NLOf5XW4iZswzNVNWNWU7srmCXXQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=ASSYmQwZBIx1bB8RhQuEVfQxm2TNmLZyuCT0rbjrlSg=;
 b=qEY6ZSNJABU4tUOps7twt3lBjg+UoSk+BkBDJowHJXOCxVGfqDHazIGBxVsY9sqYWyLdzY89uOjG/g4trDGn96WuU8HAdxKz05dg28zt4v30MLEXKs7PTUta+RvOaGSI5dL89Xc++t+ARNGgVPQTpel7439zPaMEbee6qragcaHKc0qV8/p1FgIJjcIfi+7dwPKFZMd6V4W4nmY4srUVRet6wJaO4R8JJedcs8AscFFDrQ09cPBuzvOWPd/Y2oU34/oZVxbBeya343PGdRyuSZ6P9uSsgiC0VvGX1HUWQ2pCF9MOnQForAihMl4aw8ZJs+W8kPcEF4TjZPMSW+enmg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <8a6f6793-d0f6-640c-2f3d-11a3b7ce620e@suse.com>
Date: Tue, 24 Oct 2023 16:27:13 +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][for-4.19 v4 2/8] x86: add deviations for variables
 only used in asm code
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.cooper3@citrix.com, roger.pau@citrix.com, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <cover.1698053876.git.nicola.vetrini@bugseng.com>
 <67ec8b468d6048f7f91590b59430df275b2f5870.1698053876.git.nicola.vetrini@bugseng.com>
 <2aaa0978-e28f-4151-f4ba-f2628f6d4677@suse.com>
 <ef7f5c65ad0b0129f6b6119b6ad7d506@bugseng.com>
 <2f3850a7-f2a3-350f-b9b6-be0bde0d1a28@suse.com>
 <53617132b87450fc385b2f5887bfe65f@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <53617132b87450fc385b2f5887bfe65f@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0168.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:b4::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_|PAXPR04MB9254:EE_
X-MS-Office365-Filtering-Correlation-Id: 9ac86065-5805-4c7c-bdd3-08dbd49d520d
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	qV2+eGrVgNJpbP/jdyC1i8bvghODP1kNB7ywdr4Ab5MRD2DgzKK5Pt4G8V31PF/m/RcgW5WRs7qgyoiYZPhsIeDIxAF5F29eD9SUnKbuLWR3xHacz21SqW3Te0tPW8FhmZvdLfrvI/+ztBWBcdweAz+WQj+wEDaeeMNsdrNi/lZDeHpMSn878t/geiuRSrQ8lZTZ0aa/VWxI8HexmGeWkNEcCV1ckZE9DWLmbbeFYrfFQaxEm2zRflWCjh1kginC3vPvi7TedW5OfKcoI1RtfSwgUXlEaWzBs49NHPfnwYuGO9f4AofTf+M4ard9KGt1BZJA+ioRnEbIKcGFxVMQs5JrBaLgQBmcWKJXzs3TQgNZ+Z0qfiQQdzX9wQ+NySB09st8xSESz7HPG+rFvIXsFbMtsqRmjSfGqfkLNhChqpMXvJjlkdId+kWQlmibDuEVXfxhHjo+x5utDcGE2jb4HT75dShfvRExOlDIuokVBwoiSieMJidDc2/OzGyhVtCcJ/uNmxekPGPs5xKzX6dbfD4J0JQb2q8Lf03o3jBuQZ2WtUm2t+wNY/zRBv9Vj8A122wYaMzdKrRyuIQhNYM27LWWDH5XEmcBL6/Zw3bgWf8bAjIj5V6HH+DErcBcHr4DzYmTnr+vV2nPBHcQAYINLg==
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)(366004)(39860400002)(136003)(396003)(230922051799003)(186009)(1800799009)(64100799003)(451199024)(6512007)(26005)(2616005)(6506007)(53546011)(83380400001)(41300700001)(7416002)(5660300002)(8676002)(4326008)(8936002)(2906002)(6486002)(478600001)(66556008)(316002)(66476007)(66946007)(6916009)(86362001)(38100700002)(31696002)(36756003)(31686004)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?VEtZOENOMFFpTitGTmp6RVQ1TTRNRGpwSG1rcnRDTURDS1oveDliek03WUcx?=
 =?utf-8?B?SjhZUVlrN1hFbHRvQVVJakxkYitDc3JQMnlaa08xTnVYZkxaOWJ6cytzMWVx?=
 =?utf-8?B?MWpSdEVPamFMTmFreVd0Ti95dGU3WXJya2JHZjRVSlFaSTNDdkZ5TlRaaGRL?=
 =?utf-8?B?ZTVFY045aGhsWUV2QmhRRGFhTWRJeEs3TjFaTEpVOE9sK2lWZVhLNG5tZE5s?=
 =?utf-8?B?Ny9aY2JKdWs0djN5K0k0UTVQb255Zy81SkdwcFVGTkVqa1haSnhrRVF5ZlB1?=
 =?utf-8?B?Z1FKZEhiS0N6T1YrcFhUZTRhYVltbCtHTFg3cS83enhDTjNZdnRNeUVoVWJE?=
 =?utf-8?B?c0lZSmo0SnFGRVZqMytBeGVBT1RJTDVMbjhLUFlVdFFVNXF4Tlhwbm5BdVVV?=
 =?utf-8?B?YkVNREhGKzl3UDJpdllXR3ZaSVVVakhHbkMrUHhGSDQxanpib25MOHhtSEFJ?=
 =?utf-8?B?Zmx2bkI0ZDlmZXE2cVIwQ244U3duc04wdWRCSWxHVWhXSFlzTmtxYjJkRjBr?=
 =?utf-8?B?eVdZdm5JOHdOZ3JrVnlKd21MMTF5S01LblUzSWdGd2FFMU5BbW40dVdqRFQ2?=
 =?utf-8?B?TWE0VHE4VktJM2Zsc3diQkw1bDY3RkNsM1pYaHlodUNxSmJMaytWakJ6bE1R?=
 =?utf-8?B?YzlrT3huVFFHVmF1aWRBa1VPUG5PYlJpbVhrc0VyQVZsb1BFSkovTFFaUDNF?=
 =?utf-8?B?RU1SeVd4NmxPT2RMbXVFSHBKSDJzMEw3bVlIR2p6aW5hOUdRWWdieHN3a3ZF?=
 =?utf-8?B?cW1tM1YyWm16M3IwNWF4dnpQc0o1dnNka05YYTZqQ1FiNFFVNWZpeEJpc2pk?=
 =?utf-8?B?OGdMTFV4OWpkSGw0cm5rM0o4bWZuNTV6NzN1KzNWVy9Zd3p5MzVSVnpUdmI3?=
 =?utf-8?B?QkJNK0JQMFI4RFA0M2pnY1g2RGx5Wi9EbXk3QkxRemVpR1BSeTAwU1h5TG1N?=
 =?utf-8?B?VWxuQXdMVVkxVW1pL1BZUVB6SG8vQ3hvczJtcURTT0V4RXJFendTak1MWU5B?=
 =?utf-8?B?QjgvaytSVzVsRzh4czduT3FyNUwwOEhEbDB6TWVBdEEvMXJ2amYxWitQb1hi?=
 =?utf-8?B?MWNRbjZaSHAvK3NiQk9FV0lWQkxRVUJIVUJ4RmdUcml4MUhVSHV6L2ZFOWJ0?=
 =?utf-8?B?MmNpbVo0UklOYXdoOGMza1ZkNlhlUXh3aW1MbjNMb1YydTRMSFhWZWxSRlRj?=
 =?utf-8?B?eWpiVW5HWG1CSGg3b2tqa2VuV2ZCb1djaE4reFFiV01oUWNuSDUrZ1NzTnRM?=
 =?utf-8?B?QWtVbU91eVI5WmtXSXFBNVF1bWNGN2wyUFFFWkhydnZuL1gyaVIzbTV2bmhJ?=
 =?utf-8?B?MGRnL2ptc3dibEJVanA4R2RFbFUxbWdxWFp2UlRITnA0T0RWbG1ObEViRTVI?=
 =?utf-8?B?bStqdkdSSTlGUXRHYUVIelAzZ2NUdU1MOG5BYVpsMS85ZGhEZ2tBWGozYXNw?=
 =?utf-8?B?blVUT29yaWxrY3pvSVJQNFJSWnVVZDJYZExJY2cvTWxwREdIajVKVzVsdThV?=
 =?utf-8?B?NklnbkNnT2VidVFBVVF2cXY2TTU4K3kyRVY1bmxlWnFLS1AzTC9kTWtJaHFl?=
 =?utf-8?B?eHhheFJDVGhwb3JIMWd1M0RHWkNyNkpFVHV1ZU1aNE5CMEtOdDMvcUE0OFpz?=
 =?utf-8?B?M1ZRVHloV1Y4QVdmbHh1MG81KzVHbCtxTCtmMWJxdnlpWkdrdHIzemE4TDhX?=
 =?utf-8?B?dERqTHc0SE1hT1U2SHRvSDRZUnZjL09KY1lRTW11aDhzbk1LRkFLcytJV2Rp?=
 =?utf-8?B?a1p4MWt5WGlYQkcyazlxNGtrYmRwWVUyVVZWQVk3WHZsTkdjL0kxakljeGhy?=
 =?utf-8?B?Ump0WlZFNUVPeHBRQnFiclJCbFBFSFBtRXJWNkljQUxFQnNiT2VrZE1aNFlw?=
 =?utf-8?B?TzVXWkg4a3cxMVhtcW1kcjdQUTZpZjVSbFJuQU9iclh1emxGUVF1L3E1d3N0?=
 =?utf-8?B?MXllcVc5TmxablllcnhLbGN3ZGxBMEZBOHZPZ1lhRzIzRzFuZG9xa21Ib0h4?=
 =?utf-8?B?Z3RFZFoycUFWV3pmWklsRkxhaFpyZ002T3dWeUhsY2QzanY3WmlLc0l1WTRM?=
 =?utf-8?B?L3ZGZ1FRbjY1c3k0YndVYWNESG9zd2JuQnk3YTIvYXJ3OUs1Y3FlMlBORkVZ?=
 =?utf-8?Q?OBah1pZZM/go888kLZNELBUMz?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 9ac86065-5805-4c7c-bdd3-08dbd49d520d
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 24 Oct 2023 14:27:15.5777
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: opPwASQLBgJmoyWVmJ+yhZCGC1PmXwG9UwDVz8V11ys8s9yMXn3yxaGrXfkQsh4qp/WUGT0Sze+2JFgia5D3sg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB9254

On 24.10.2023 15:40, Nicola Vetrini wrote:
> On 24/10/2023 10:12, Jan Beulich wrote:
>> On 24.10.2023 09:58, Nicola Vetrini wrote:
>>> On 24/10/2023 09:32, Jan Beulich wrote:
>>>> On 23.10.2023 11:56, Nicola Vetrini wrote:
>>>>> --- a/xen/arch/x86/include/asm/asm_defns.h
>>>>> +++ b/xen/arch/x86/include/asm/asm_defns.h
>>>>> @@ -31,6 +31,7 @@ asm ( "\t.equ CONFIG_INDIRECT_THUNK, "
>>>>>   * gets set up by the containing function.
>>>>>   */
>>>>>  #ifdef CONFIG_FRAME_POINTER
>>>>> +/* SAF-1-safe */
>>>>>  register unsigned long current_stack_pointer asm("rsp");
>>>>>  # define ASM_CALL_CONSTRAINT , "+r" (current_stack_pointer)
>>>>>  #else
>>>>
>>>> SAF-1-safe is about symbols "used only by asm modules". This doesn't
>>>> apply
>>>> to the declaration here.
>>>>
>>>
>>> The wording could change to "asm code" if that is deemed clearer.
>>
>> Question is what would be meant by "asm code"; "asm modules" is quite
>> clear.
>>
> 
> Well, I don't know. It's up to the community to decide that. It can be 
> an ad-hoc
> justification, but I don't see much value in doing so. What do you 
> propose to get this patch
> approved (at least on your account)?.

Drop this change and have Eclair recognize that what we're talking
about here is just a declaration, not a definition.

Jan


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 14:31:49 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 14:31:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622035.969137 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvIRg-0006Fh-9F; Tue, 24 Oct 2023 14:31:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622035.969137; Tue, 24 Oct 2023 14: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 1qvIRg-0006Fa-6S; Tue, 24 Oct 2023 14:31:48 +0000
Received: by outflank-mailman (input) for mailman id 622035;
 Tue, 24 Oct 2023 14:31: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=9CvU=GG=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qvIRe-0005kh-QZ
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 14:31:46 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 0eebeb4a-727a-11ee-98d5-6d05b1d4d9a1;
 Tue, 24 Oct 2023 16:31:45 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id 6D9DF4EE0748;
 Tue, 24 Oct 2023 16: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: 0eebeb4a-727a-11ee-98d5-6d05b1d4d9a1
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>
Subject: [RFC 2/4] x86/shutdown: address MISRA C:2012 Rule 9.3
Date: Tue, 24 Oct 2023 16:31:36 +0200
Message-Id: <b4781f1a558a32747f1aca53b6da50a2d4b61f1e.1698155925.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1698155925.git.nicola.vetrini@bugseng.com>
References: <cover.1698155925.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Partially explicitly initalized .matches arrays result in violations
of Rule 9.3; this is resolved by using designated initializers,
which is permitted by the Rule.

Mechanical changes.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
---
 xen/arch/x86/shutdown.c | 152 ++++++++++++++++++++--------------------
 1 file changed, 76 insertions(+), 76 deletions(-)

diff --git a/xen/arch/x86/shutdown.c b/xen/arch/x86/shutdown.c
index 7619544d14da..382c948f81a4 100644
--- a/xen/arch/x86/shutdown.c
+++ b/xen/arch/x86/shutdown.c
@@ -188,8 +188,8 @@ static const struct dmi_system_id __initconstrel reboot_dmi_table[] = {
         .driver_data = (void *)(long)BOOT_KBD,
         .ident = "Dell E520",
         .matches = {
-            DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
-            DMI_MATCH(DMI_PRODUCT_NAME, "Dell DM061"),
+            [0] = DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
+            [1] = DMI_MATCH(DMI_PRODUCT_NAME, "Dell DM061")
         },
     },
     {    /* Handle problems with rebooting on Dell 1300's */
@@ -197,8 +197,8 @@ static const struct dmi_system_id __initconstrel reboot_dmi_table[] = {
         .driver_data = (void *)(long)BOOT_KBD,
         .ident = "Dell PowerEdge 1300",
         .matches = {
-            DMI_MATCH(DMI_SYS_VENDOR, "Dell Computer Corporation"),
-            DMI_MATCH(DMI_PRODUCT_NAME, "PowerEdge 1300/"),
+            [0] = DMI_MATCH(DMI_SYS_VENDOR, "Dell Computer Corporation"),
+            [1] = DMI_MATCH(DMI_PRODUCT_NAME, "PowerEdge 1300/")
         },
     },
     {    /* Handle problems with rebooting on Dell 300's */
@@ -206,8 +206,8 @@ static const struct dmi_system_id __initconstrel reboot_dmi_table[] = {
         .driver_data = (void *)(long)BOOT_KBD,
         .ident = "Dell PowerEdge 300",
         .matches = {
-            DMI_MATCH(DMI_SYS_VENDOR, "Dell Computer Corporation"),
-            DMI_MATCH(DMI_PRODUCT_NAME, "PowerEdge 300/"),
+            [0] = DMI_MATCH(DMI_SYS_VENDOR, "Dell Computer Corporation"),
+            [1] = DMI_MATCH(DMI_PRODUCT_NAME, "PowerEdge 300/")
         },
     },
     {    /* Handle problems with rebooting on Dell Optiplex 745's SFF */
@@ -215,8 +215,8 @@ static const struct dmi_system_id __initconstrel reboot_dmi_table[] = {
         .driver_data = (void *)(long)BOOT_KBD,
         .ident = "Dell OptiPlex 745",
         .matches = {
-            DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
-            DMI_MATCH(DMI_PRODUCT_NAME, "OptiPlex 745"),
+            [0] = DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
+            [1] = DMI_MATCH(DMI_PRODUCT_NAME, "OptiPlex 745")
         },
     },
     {    /* Handle problems with rebooting on Dell Optiplex 745's DFF */
@@ -225,8 +225,8 @@ static const struct dmi_system_id __initconstrel reboot_dmi_table[] = {
         .ident = "Dell OptiPlex 745",
         .matches = {
             DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
-            DMI_MATCH(DMI_PRODUCT_NAME, "OptiPlex 745"),
-            DMI_MATCH(DMI_BOARD_NAME, "0MM599"),
+            [0] = DMI_MATCH(DMI_PRODUCT_NAME, "OptiPlex 745"),
+            [1] = DMI_MATCH(DMI_BOARD_NAME, "0MM599")
         },
     },
     {    /* Handle problems with rebooting on Dell Optiplex 745 with 0KW626 */
@@ -235,8 +235,8 @@ static const struct dmi_system_id __initconstrel reboot_dmi_table[] = {
         .ident = "Dell OptiPlex 745",
         .matches = {
             DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
-            DMI_MATCH(DMI_PRODUCT_NAME, "OptiPlex 745"),
-            DMI_MATCH(DMI_BOARD_NAME, "0KW626"),
+            [0] = DMI_MATCH(DMI_PRODUCT_NAME, "OptiPlex 745"),
+            [1] = DMI_MATCH(DMI_BOARD_NAME, "0KW626")
         },
     },
     {    /* Handle problems with rebooting on Dell Optiplex 330 with 0KP561 */
@@ -245,8 +245,8 @@ static const struct dmi_system_id __initconstrel reboot_dmi_table[] = {
         .ident = "Dell OptiPlex 330",
         .matches = {
             DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
-            DMI_MATCH(DMI_PRODUCT_NAME, "OptiPlex 330"),
-            DMI_MATCH(DMI_BOARD_NAME, "0KP561"),
+            [0] = DMI_MATCH(DMI_PRODUCT_NAME, "OptiPlex 330"),
+            [1] = DMI_MATCH(DMI_BOARD_NAME, "0KP561")
         },
     },
     {    /* Handle problems with rebooting on Dell Optiplex 360 with 0T656F */
@@ -255,8 +255,8 @@ static const struct dmi_system_id __initconstrel reboot_dmi_table[] = {
         .ident = "Dell OptiPlex 360",
         .matches = {
             DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
-            DMI_MATCH(DMI_PRODUCT_NAME, "OptiPlex 360"),
-            DMI_MATCH(DMI_BOARD_NAME, "0T656F"),
+            [0] = DMI_MATCH(DMI_PRODUCT_NAME, "OptiPlex 360"),
+            [1] = DMI_MATCH(DMI_BOARD_NAME, "0T656F")
         },
     },
     {    /* Handle problems with rebooting on Dell OptiPlex 760 with 0G919G */
@@ -265,8 +265,8 @@ static const struct dmi_system_id __initconstrel reboot_dmi_table[] = {
         .ident = "Dell OptiPlex 760",
         .matches = {
             DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
-            DMI_MATCH(DMI_PRODUCT_NAME, "OptiPlex 760"),
-            DMI_MATCH(DMI_BOARD_NAME, "0G919G"),
+            [0] = DMI_MATCH(DMI_PRODUCT_NAME, "OptiPlex 760"),
+            [1] = DMI_MATCH(DMI_BOARD_NAME, "0G919G")
         },
     },
     {    /* Handle problems with rebooting on Dell 2400's */
@@ -274,8 +274,8 @@ static const struct dmi_system_id __initconstrel reboot_dmi_table[] = {
         .driver_data = (void *)(long)BOOT_KBD,
         .ident = "Dell PowerEdge 2400",
         .matches = {
-            DMI_MATCH(DMI_SYS_VENDOR, "Dell Computer Corporation"),
-            DMI_MATCH(DMI_PRODUCT_NAME, "PowerEdge 2400"),
+            [0] = DMI_MATCH(DMI_SYS_VENDOR, "Dell Computer Corporation"),
+            [1] = DMI_MATCH(DMI_PRODUCT_NAME, "PowerEdge 2400")
         },
     },
     {    /* Handle problems with rebooting on Dell T5400's */
@@ -283,8 +283,8 @@ static const struct dmi_system_id __initconstrel reboot_dmi_table[] = {
         .driver_data = (void *)(long)BOOT_KBD,
         .ident = "Dell Precision T5400",
         .matches = {
-            DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
-            DMI_MATCH(DMI_PRODUCT_NAME, "Precision WorkStation T5400"),
+            [0] = DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
+            [1] = DMI_MATCH(DMI_PRODUCT_NAME, "Precision WorkStation T5400")
         },
     },
     {    /* Handle problems with rebooting on Dell T7400's */
@@ -292,8 +292,8 @@ static const struct dmi_system_id __initconstrel reboot_dmi_table[] = {
         .driver_data = (void *)(long)BOOT_KBD,
         .ident = "Dell Precision T7400",
         .matches = {
-            DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
-            DMI_MATCH(DMI_PRODUCT_NAME, "Precision WorkStation T7400"),
+            [0] = DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
+            [1] = DMI_MATCH(DMI_PRODUCT_NAME, "Precision WorkStation T7400")
         },
     },
     {    /* Handle problems with rebooting on HP laptops */
@@ -301,8 +301,8 @@ static const struct dmi_system_id __initconstrel reboot_dmi_table[] = {
         .driver_data = (void *)(long)BOOT_KBD,
         .ident = "HP Compaq Laptop",
         .matches = {
-            DMI_MATCH(DMI_SYS_VENDOR, "Hewlett-Packard"),
-            DMI_MATCH(DMI_PRODUCT_NAME, "HP Compaq"),
+            [0] = DMI_MATCH(DMI_SYS_VENDOR, "Hewlett-Packard"),
+            [1] = DMI_MATCH(DMI_PRODUCT_NAME, "HP Compaq")
         },
     },
     {    /* Handle problems with rebooting on Dell XPS710 */
@@ -310,8 +310,8 @@ static const struct dmi_system_id __initconstrel reboot_dmi_table[] = {
         .driver_data = (void *)(long)BOOT_KBD,
         .ident = "Dell XPS710",
         .matches = {
-            DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
-            DMI_MATCH(DMI_PRODUCT_NAME, "Dell XPS710"),
+            [0] = DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
+            [1] = DMI_MATCH(DMI_PRODUCT_NAME, "Dell XPS710")
         },
     },
     {    /* Handle problems with rebooting on Dell DXP061 */
@@ -319,8 +319,8 @@ static const struct dmi_system_id __initconstrel reboot_dmi_table[] = {
         .driver_data = (void *)(long)BOOT_KBD,
         .ident = "Dell DXP061",
         .matches = {
-            DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
-            DMI_MATCH(DMI_PRODUCT_NAME, "Dell DXP061"),
+            [0] = DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
+            [1] = DMI_MATCH(DMI_PRODUCT_NAME, "Dell DXP061")
         },
     },
     {    /* Handle problems with rebooting on Sony VGN-Z540N */
@@ -328,8 +328,8 @@ static const struct dmi_system_id __initconstrel reboot_dmi_table[] = {
         .driver_data = (void *)(long)BOOT_KBD,
         .ident = "Sony VGN-Z540N",
         .matches = {
-            DMI_MATCH(DMI_SYS_VENDOR, "Sony Corporation"),
-            DMI_MATCH(DMI_PRODUCT_NAME, "VGN-Z540N"),
+            [0] = DMI_MATCH(DMI_SYS_VENDOR, "Sony Corporation"),
+            [1] = DMI_MATCH(DMI_PRODUCT_NAME, "VGN-Z540N")
         },
     },
     {    /* Handle problems with rebooting on ASUS P4S800 */
@@ -337,8 +337,8 @@ static const struct dmi_system_id __initconstrel reboot_dmi_table[] = {
         .driver_data = (void *)(long)BOOT_KBD,
         .ident = "ASUS P4S800",
         .matches = {
-            DMI_MATCH(DMI_BOARD_VENDOR, "ASUSTeK Computer INC."),
-            DMI_MATCH(DMI_BOARD_NAME, "P4S800"),
+            [0] = DMI_MATCH(DMI_BOARD_VENDOR, "ASUSTeK Computer INC."),
+            [1] = DMI_MATCH(DMI_BOARD_NAME, "P4S800")
         },
     },
     {    /* Handle reboot issue on Acer Aspire one */
@@ -346,8 +346,8 @@ static const struct dmi_system_id __initconstrel reboot_dmi_table[] = {
         .driver_data = (void *)(long)BOOT_KBD,
         .ident = "Acer Aspire One A110",
         .matches = {
-            DMI_MATCH(DMI_SYS_VENDOR, "Acer"),
-            DMI_MATCH(DMI_PRODUCT_NAME, "AOA110"),
+            [0] = DMI_MATCH(DMI_SYS_VENDOR, "Acer"),
+            [1] = DMI_MATCH(DMI_PRODUCT_NAME, "AOA110")
         },
     },
     {    /* Handle problems with rebooting on Apple MacBook5 */
@@ -355,8 +355,8 @@ static const struct dmi_system_id __initconstrel reboot_dmi_table[] = {
         .driver_data = (void *)(long)BOOT_CF9,
         .ident = "Apple MacBook5",
         .matches = {
-            DMI_MATCH(DMI_SYS_VENDOR, "Apple Inc."),
-            DMI_MATCH(DMI_PRODUCT_NAME, "MacBook5"),
+            [0] = DMI_MATCH(DMI_SYS_VENDOR, "Apple Inc."),
+            [1] = DMI_MATCH(DMI_PRODUCT_NAME, "MacBook5")
         },
     },
     {    /* Handle problems with rebooting on Apple MacBookPro5 */
@@ -364,8 +364,8 @@ static const struct dmi_system_id __initconstrel reboot_dmi_table[] = {
         .driver_data = (void *)(long)BOOT_CF9,
         .ident = "Apple MacBookPro5",
         .matches = {
-            DMI_MATCH(DMI_SYS_VENDOR, "Apple Inc."),
-            DMI_MATCH(DMI_PRODUCT_NAME, "MacBookPro5"),
+            [0] = DMI_MATCH(DMI_SYS_VENDOR, "Apple Inc."),
+            [1] = DMI_MATCH(DMI_PRODUCT_NAME, "MacBookPro5")
         },
     },
     {    /* Handle problems with rebooting on Apple Macmini3,1 */
@@ -373,8 +373,8 @@ static const struct dmi_system_id __initconstrel reboot_dmi_table[] = {
         .driver_data = (void *)(long)BOOT_CF9,
         .ident = "Apple Macmini3,1",
         .matches = {
-            DMI_MATCH(DMI_SYS_VENDOR, "Apple Inc."),
-            DMI_MATCH(DMI_PRODUCT_NAME, "Macmini3,1"),
+            [0] = DMI_MATCH(DMI_SYS_VENDOR, "Apple Inc."),
+            [1] = DMI_MATCH(DMI_PRODUCT_NAME, "Macmini3,1")
         },
     },
     {    /* Handle problems with rebooting on the iMac9,1. */
@@ -382,8 +382,8 @@ static const struct dmi_system_id __initconstrel reboot_dmi_table[] = {
         .driver_data = (void *)(long)BOOT_CF9,
         .ident = "Apple iMac9,1",
         .matches = {
-            DMI_MATCH(DMI_SYS_VENDOR, "Apple Inc."),
-            DMI_MATCH(DMI_PRODUCT_NAME, "iMac9,1"),
+            [0] = DMI_MATCH(DMI_SYS_VENDOR, "Apple Inc."),
+            [1] = DMI_MATCH(DMI_PRODUCT_NAME, "iMac9,1")
         },
     },
     {    /* Handle problems with rebooting on the Latitude E6320. */
@@ -391,8 +391,8 @@ static const struct dmi_system_id __initconstrel reboot_dmi_table[] = {
         .driver_data = (void *)(long)BOOT_CF9,
         .ident = "Dell Latitude E6320",
         .matches = {
-            DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
-            DMI_MATCH(DMI_PRODUCT_NAME, "Latitude E6320"),
+            [0] = DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
+            [1] = DMI_MATCH(DMI_PRODUCT_NAME, "Latitude E6320")
         },
     },
     {    /* Handle problems with rebooting on the Latitude E5420. */
@@ -400,8 +400,8 @@ static const struct dmi_system_id __initconstrel reboot_dmi_table[] = {
         .driver_data = (void *)(long)BOOT_CF9,
         .ident = "Dell Latitude E5420",
         .matches = {
-            DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
-            DMI_MATCH(DMI_PRODUCT_NAME, "Latitude E5420"),
+            [0] = DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
+            [1] = DMI_MATCH(DMI_PRODUCT_NAME, "Latitude E5420")
         },
     },
     {       /* Handle problems with rebooting on the Latitude E6220. */
@@ -409,8 +409,8 @@ static const struct dmi_system_id __initconstrel reboot_dmi_table[] = {
         .driver_data = (void *)(long)BOOT_CF9,
         .ident = "Dell Latitude E6220",
         .matches = {
-            DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
-            DMI_MATCH(DMI_PRODUCT_NAME, "Latitude E6220"),
+            [0] = DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
+            [1] = DMI_MATCH(DMI_PRODUCT_NAME, "Latitude E6220")
         },
     },
     {    /* Handle problems with rebooting on the Latitude E6420. */
@@ -418,8 +418,8 @@ static const struct dmi_system_id __initconstrel reboot_dmi_table[] = {
         .driver_data = (void *)(long)BOOT_CF9,
         .ident = "Dell Latitude E6420",
         .matches = {
-            DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
-            DMI_MATCH(DMI_PRODUCT_NAME, "Latitude E6420"),
+            [0] = DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
+            [1] = DMI_MATCH(DMI_PRODUCT_NAME, "Latitude E6420")
         },
     },
     {    /* Handle problems with rebooting on the OptiPlex 990. */
@@ -427,8 +427,8 @@ static const struct dmi_system_id __initconstrel reboot_dmi_table[] = {
         .driver_data = (void *)(long)BOOT_CF9,
         .ident = "Dell OptiPlex 990",
         .matches = {
-            DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
-            DMI_MATCH(DMI_PRODUCT_NAME, "OptiPlex 990"),
+            [0] = DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
+            [1] = DMI_MATCH(DMI_PRODUCT_NAME, "OptiPlex 990")
         },
     },
     {    /* Handle problems with rebooting on the Precision M6600. */
@@ -436,8 +436,8 @@ static const struct dmi_system_id __initconstrel reboot_dmi_table[] = {
         .driver_data = (void *)(long)BOOT_CF9,
         .ident = "Dell OptiPlex 990",
         .matches = {
-            DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
-            DMI_MATCH(DMI_PRODUCT_NAME, "Precision M6600"),
+            [0] = DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
+            [1] = DMI_MATCH(DMI_PRODUCT_NAME, "Precision M6600")
         },
     },
     {    /* Handle problems with rebooting on the Latitude E6520. */
@@ -445,8 +445,8 @@ static const struct dmi_system_id __initconstrel reboot_dmi_table[] = {
         .driver_data = (void *)(long)BOOT_CF9,
         .ident = "Dell Latitude E6520",
         .matches = {
-            DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
-            DMI_MATCH(DMI_PRODUCT_NAME, "Latitude E6520"),
+            [0] = DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
+            [1] = DMI_MATCH(DMI_PRODUCT_NAME, "Latitude E6520")
         },
     },
     {       /* Handle problems with rebooting on the OptiPlex 790. */
@@ -454,8 +454,8 @@ static const struct dmi_system_id __initconstrel reboot_dmi_table[] = {
         .driver_data = (void *)(long)BOOT_CF9,
         .ident = "Dell OptiPlex 790",
         .matches = {
-            DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
-            DMI_MATCH(DMI_PRODUCT_NAME, "OptiPlex 790"),
+            [0] = DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
+            [1] = DMI_MATCH(DMI_PRODUCT_NAME, "OptiPlex 790")
         },
     },
     {    /* Handle problems with rebooting on the OptiPlex 990. */
@@ -463,8 +463,8 @@ static const struct dmi_system_id __initconstrel reboot_dmi_table[] = {
         .driver_data = (void *)(long)BOOT_CF9,
         .ident = "Dell OptiPlex 990",
         .matches = {
-            DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
-            DMI_MATCH(DMI_PRODUCT_NAME, "OptiPlex 990"),
+            [0] = DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
+            [1] = DMI_MATCH(DMI_PRODUCT_NAME, "OptiPlex 990")
         },
     },
     {    /* Handle problems with rebooting on the OptiPlex 390. */
@@ -472,8 +472,8 @@ static const struct dmi_system_id __initconstrel reboot_dmi_table[] = {
         .driver_data = (void *)(long)BOOT_CF9,
         .ident = "Dell OptiPlex 390",
         .matches = {
-            DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
-            DMI_MATCH(DMI_PRODUCT_NAME, "OptiPlex 390"),
+            [0] = DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
+            [1] = DMI_MATCH(DMI_PRODUCT_NAME, "OptiPlex 390")
         },
     },
     {    /* Handle problems with rebooting on Dell OptiPlex 9020. */
@@ -481,8 +481,8 @@ static const struct dmi_system_id __initconstrel reboot_dmi_table[] = {
         .driver_data = (void *)(long)BOOT_ACPI,
         .ident = "Dell OptiPlex 9020",
         .matches = {
-            DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
-            DMI_MATCH(DMI_PRODUCT_NAME, "OptiPlex 9020"),
+            [0] = DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
+            [1] = DMI_MATCH(DMI_PRODUCT_NAME, "OptiPlex 9020")
         },
     },
     {    /* Handle problems with rebooting on the Latitude E6320. */
@@ -490,8 +490,8 @@ static const struct dmi_system_id __initconstrel reboot_dmi_table[] = {
         .driver_data = (void *)(long)BOOT_CF9,
         .ident = "Dell Latitude E6320",
         .matches = {
-            DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
-            DMI_MATCH(DMI_PRODUCT_NAME, "Latitude E6320"),
+            [0] = DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
+            [1] = DMI_MATCH(DMI_PRODUCT_NAME, "Latitude E6320")
         },
     },
     {    /* Handle problems with rebooting on the Latitude E6420. */
@@ -499,8 +499,8 @@ static const struct dmi_system_id __initconstrel reboot_dmi_table[] = {
         .driver_data = (void *)(long)BOOT_CF9,
         .ident = "Dell Latitude E6420",
         .matches = {
-            DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
-            DMI_MATCH(DMI_PRODUCT_NAME, "Latitude E6420"),
+            [0] = DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
+            [1] = DMI_MATCH(DMI_PRODUCT_NAME, "Latitude E6420")
         },
     },
     {    /* Handle problems with rebooting on the Latitude E6520. */
@@ -508,8 +508,8 @@ static const struct dmi_system_id __initconstrel reboot_dmi_table[] = {
         .driver_data = (void *)(long)BOOT_CF9,
         .ident = "Dell Latitude E6520",
         .matches = {
-            DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
-            DMI_MATCH(DMI_PRODUCT_NAME, "Latitude E6520"),
+            [0] = DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
+            [1] = DMI_MATCH(DMI_PRODUCT_NAME, "Latitude E6520")
         },
     },
     {    /* Handle problems with rebooting on Dell PowerEdge R540. */
@@ -517,8 +517,8 @@ static const struct dmi_system_id __initconstrel reboot_dmi_table[] = {
         .driver_data = (void *)(long)BOOT_ACPI,
         .ident = "Dell PowerEdge R540",
         .matches = {
-            DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
-            DMI_MATCH(DMI_PRODUCT_NAME, "PowerEdge R540"),
+            [0] = DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
+            [1] = DMI_MATCH(DMI_PRODUCT_NAME, "PowerEdge R540")
         },
     },
     {    /* Handle problems with rebooting on Dell PowerEdge R740. */
@@ -526,8 +526,8 @@ static const struct dmi_system_id __initconstrel reboot_dmi_table[] = {
         .driver_data = (void *)(long)BOOT_ACPI,
         .ident = "Dell PowerEdge R740",
         .matches = {
-            DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
-            DMI_MATCH(DMI_PRODUCT_NAME, "PowerEdge R740"),
+            [0] = DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
+            [1] = DMI_MATCH(DMI_PRODUCT_NAME, "PowerEdge R740")
         },
     },
     { }
--
2.34.1


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 14:31:49 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 14:31:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622034.969123 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvIRe-0005ra-2T; Tue, 24 Oct 2023 14:31:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622034.969123; Tue, 24 Oct 2023 14:31: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 1qvIRd-0005qG-U3; Tue, 24 Oct 2023 14:31:45 +0000
Received: by outflank-mailman (input) for mailman id 622034;
 Tue, 24 Oct 2023 14:31: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=9CvU=GG=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qvIRd-0005kh-1l
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 14:31:45 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 0e27b213-727a-11ee-98d5-6d05b1d4d9a1;
 Tue, 24 Oct 2023 16:31:44 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id 296784EE0746;
 Tue, 24 Oct 2023 16:31: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: 0e27b213-727a-11ee-98d5-6d05b1d4d9a1
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>
Subject: [RFC 1/4] x86/ioemul: address MISRA C:2012 Rule 9.3
Date: Tue, 24 Oct 2023 16:31:35 +0200
Message-Id: <76c9f78179a8bb5b4f99b34f163933394f79066c.1698155925.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1698155925.git.nicola.vetrini@bugseng.com>
References: <cover.1698155925.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Partially explicitly initalized .matches arrays result in violations
of Rule 9.3; this is resolved by using designated initializers,
which is permitted by the Rule.

Mechanical changes.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
---
 xen/arch/x86/ioport_emulate.c | 32 ++++++++++++++++----------------
 1 file changed, 16 insertions(+), 16 deletions(-)

diff --git a/xen/arch/x86/ioport_emulate.c b/xen/arch/x86/ioport_emulate.c
index 6caeb3d470ce..4f8d5136746d 100644
--- a/xen/arch/x86/ioport_emulate.c
+++ b/xen/arch/x86/ioport_emulate.c
@@ -44,57 +44,57 @@ static const struct dmi_system_id __initconstrel ioport_quirks_tbl[] = {
     {
         .ident = "HP ProLiant DL3xx",
         .matches = {
-            DMI_MATCH(DMI_BIOS_VENDOR, "HP"),
-            DMI_MATCH(DMI_PRODUCT_NAME, "ProLiant DL3"),
+            [0] = DMI_MATCH(DMI_BIOS_VENDOR, "HP"),
+            [1] = DMI_MATCH(DMI_PRODUCT_NAME, "ProLiant DL3"),
         },
     },
     {
         .ident = "HP ProLiant DL5xx",
         .matches = {
-            DMI_MATCH(DMI_BIOS_VENDOR, "HP"),
-            DMI_MATCH(DMI_PRODUCT_NAME, "ProLiant DL5"),
+            [0] = DMI_MATCH(DMI_BIOS_VENDOR, "HP"),
+            [1] = DMI_MATCH(DMI_PRODUCT_NAME, "ProLiant DL5"),
         },
     },
     {
         .ident = "HP ProLiant DL7xx",
         .matches = {
-            DMI_MATCH(DMI_BIOS_VENDOR, "HP"),
-            DMI_MATCH(DMI_PRODUCT_NAME, "ProLiant DL7"),
+            [0] = DMI_MATCH(DMI_BIOS_VENDOR, "HP"),
+            [1] = DMI_MATCH(DMI_PRODUCT_NAME, "ProLiant DL7"),
         },
     },
     {
         .ident = "HP ProLiant ML3xx",
         .matches = {
-            DMI_MATCH(DMI_BIOS_VENDOR, "HP"),
-            DMI_MATCH(DMI_PRODUCT_NAME, "ProLiant ML3"),
+            [0] = DMI_MATCH(DMI_BIOS_VENDOR, "HP"),
+            [1] = DMI_MATCH(DMI_PRODUCT_NAME, "ProLiant ML3"),
         },
     },
     {
         .ident = "HP ProLiant ML5xx",
         .matches = {
-            DMI_MATCH(DMI_BIOS_VENDOR, "HP"),
-            DMI_MATCH(DMI_PRODUCT_NAME, "ProLiant ML5"),
+            [0] = DMI_MATCH(DMI_BIOS_VENDOR, "HP"),
+            [1] = DMI_MATCH(DMI_PRODUCT_NAME, "ProLiant ML5"),
         },
     },
     {
         .ident = "HP ProLiant BL2xx",
         .matches = {
-            DMI_MATCH(DMI_BIOS_VENDOR, "HP"),
-            DMI_MATCH(DMI_PRODUCT_NAME, "ProLiant BL2"),
+            [0] = DMI_MATCH(DMI_BIOS_VENDOR, "HP"),
+            [1] = DMI_MATCH(DMI_PRODUCT_NAME, "ProLiant BL2"),
         },
     },
     {
         .ident = "HP ProLiant BL4xx",
         .matches = {
-            DMI_MATCH(DMI_BIOS_VENDOR, "HP"),
-            DMI_MATCH(DMI_PRODUCT_NAME, "ProLiant BL4"),
+            [0] = DMI_MATCH(DMI_BIOS_VENDOR, "HP"),
+            [1] = DMI_MATCH(DMI_PRODUCT_NAME, "ProLiant BL4"),
         },
     },
     {
         .ident = "HP ProLiant BL6xx",
         .matches = {
-            DMI_MATCH(DMI_BIOS_VENDOR, "HP"),
-            DMI_MATCH(DMI_PRODUCT_NAME, "ProLiant BL6"),
+            [0] = DMI_MATCH(DMI_BIOS_VENDOR, "HP"),
+            [1] = DMI_MATCH(DMI_PRODUCT_NAME, "ProLiant BL6"),
         },
     },
     { }
--
2.34.1


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 14:31:49 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 14:31:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622033.969117 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvIRd-0005kz-Lf; Tue, 24 Oct 2023 14:31:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622033.969117; Tue, 24 Oct 2023 14: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 1qvIRd-0005ks-Iu; Tue, 24 Oct 2023 14:31:45 +0000
Received: by outflank-mailman (input) for mailman id 622033;
 Tue, 24 Oct 2023 14:31: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=9CvU=GG=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qvIRc-0005kh-D9
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 14:31:44 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 0d584cb5-727a-11ee-98d5-6d05b1d4d9a1;
 Tue, 24 Oct 2023 16:31:43 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id 9E3B54EE0739;
 Tue, 24 Oct 2023 16:31: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: 0d584cb5-727a-11ee-98d5-6d05b1d4d9a1
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>
Subject: [RFC 0/4] address violations of MISRA C Rule 9.3
Date: Tue, 24 Oct 2023 16:31:34 +0200
Message-Id: <cover.1698155925.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

This series addresses some of the violations of Rule 9.3, which is about
partially initialized arrays. The resolution strategy proposed in these patches
uses designated initializers, except in patch 4, allowed by MISRA for
sparse initialization. The reason why I chose this method is that, given that
most of the violations are about the 'matches' field of struct
'struct dmi_system_id', which is a sized array of structs:

struct dmi_strmatch matches[4];

Since the initialization is already partially implicit, using designated
initalizers is convenient because, if the lenght of the matches array changes,
no adjustment is needed

Another, stricter, resolution strategy is the following:

             .matches  = {
                 DMI_MATCH(DMI_BOARD_VENDOR, "Quanta"),
-                DMI_MATCH(DMI_BOARD_NAME,   "30B7"),
+                DMI_MATCH(DMI_BOARD_NAME,   "30B7"),
+                {}, {}
             }

Note that Rule 9.3 is not about array elements that may be uninitialized, but
the fact of having some explicitly initialized elements and some implicitly
initialized elements.

Nicola Vetrini (4):
  x86/ioemul: address MISRA C:2012 Rule 9.3
  x86/shutdown: address MISRA C:2012 Rule 9.3
  x86/hvm: quirks: address MISRA C:2012 Rule 9.3
  amd/iommu: fully initialize array in 'flush_command_buffer'

 xen/arch/x86/hvm/quirks.c               |  20 ++--
 xen/arch/x86/ioport_emulate.c           |  32 ++---
 xen/arch/x86/shutdown.c                 | 152 ++++++++++++------------
 xen/drivers/passthrough/amd/iommu_cmd.c |   3 +-
 4 files changed, 104 insertions(+), 103 deletions(-)

--
2.34.1


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 14:31:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 14:31:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622036.969148 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvIRk-0006ZG-Jp; Tue, 24 Oct 2023 14:31:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622036.969148; Tue, 24 Oct 2023 14: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 1qvIRk-0006Z3-Fz; Tue, 24 Oct 2023 14:31:52 +0000
Received: by outflank-mailman (input) for mailman id 622036;
 Tue, 24 Oct 2023 14:31: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=9CvU=GG=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qvIRj-0006O8-90
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 14:31:51 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 0f8711dd-727a-11ee-9b0e-b553b5be7939;
 Tue, 24 Oct 2023 16:31:46 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id CA8294EE0749;
 Tue, 24 Oct 2023 16:31: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: 0f8711dd-727a-11ee-9b0e-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>
Subject: [RFC 3/4] x86/hvm: quirks: address MISRA C:2012 Rule 9.3
Date: Tue, 24 Oct 2023 16:31:37 +0200
Message-Id: <2ba4ba50b7460ff03f7c4e38aca17c9c24bcad39.1698155925.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1698155925.git.nicola.vetrini@bugseng.com>
References: <cover.1698155925.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Partially explicitly initalized .matches arrays result in violations
of Rule 9.3; this is resolved by using designated initializers,
which is permitted by the Rule.

Mechanical changes.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
---
 xen/arch/x86/hvm/quirks.c | 20 ++++++++++----------
 1 file changed, 10 insertions(+), 10 deletions(-)

diff --git a/xen/arch/x86/hvm/quirks.c b/xen/arch/x86/hvm/quirks.c
index bd30b0f881cb..75c3fdc87749 100644
--- a/xen/arch/x86/hvm/quirks.c
+++ b/xen/arch/x86/hvm/quirks.c
@@ -37,40 +37,40 @@ static int __init cf_check check_port80(void)
             .callback = dmi_hvm_deny_port80,
             .ident    = "Compaq Presario V6000",
             .matches  = {
-                DMI_MATCH(DMI_BOARD_VENDOR, "Quanta"),
-                DMI_MATCH(DMI_BOARD_NAME,   "30B7")
+                [0] = DMI_MATCH(DMI_BOARD_VENDOR, "Quanta"),
+                [1] = DMI_MATCH(DMI_BOARD_NAME,   "30B7")
             }
         },
         {
             .callback = dmi_hvm_deny_port80,
             .ident    = "HP Pavilion dv9000z",
             .matches  = {
-                DMI_MATCH(DMI_BOARD_VENDOR, "Quanta"),
-                DMI_MATCH(DMI_BOARD_NAME,   "30B9")
+                [0] = DMI_MATCH(DMI_BOARD_VENDOR, "Quanta"),
+                [1] = DMI_MATCH(DMI_BOARD_NAME,   "30B9")
             }
         },
         {
             .callback = dmi_hvm_deny_port80,
             .ident    = "HP Pavilion dv6000",
             .matches  = {
-                DMI_MATCH(DMI_BOARD_VENDOR, "Quanta"),
-                DMI_MATCH(DMI_BOARD_NAME,   "30B8")
+                [0] = DMI_MATCH(DMI_BOARD_VENDOR, "Quanta"),
+                [1] = DMI_MATCH(DMI_BOARD_NAME,   "30B8")
             }
         },
         {
             .callback = dmi_hvm_deny_port80,
             .ident    = "HP Pavilion tx1000",
             .matches  = {
-                DMI_MATCH(DMI_BOARD_VENDOR, "Quanta"),
-                DMI_MATCH(DMI_BOARD_NAME,   "30BF")
+                [0] = DMI_MATCH(DMI_BOARD_VENDOR, "Quanta"),
+                [1] = DMI_MATCH(DMI_BOARD_NAME,   "30BF")
             }
         },
         {
             .callback = dmi_hvm_deny_port80,
             .ident    = "Presario F700",
             .matches  = {
-                DMI_MATCH(DMI_BOARD_VENDOR, "Quanta"),
-                DMI_MATCH(DMI_BOARD_NAME,   "30D3")
+                [0] = DMI_MATCH(DMI_BOARD_VENDOR, "Quanta"),
+                [1] = DMI_MATCH(DMI_BOARD_NAME,   "30D3")
             }
         },
         { }
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Tue Oct 24 14:31:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 14:31:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622037.969158 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvIRm-0006qO-0z; Tue, 24 Oct 2023 14:31:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622037.969158; Tue, 24 Oct 2023 14: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 1qvIRl-0006q9-TH; Tue, 24 Oct 2023 14:31:53 +0000
Received: by outflank-mailman (input) for mailman id 622037;
 Tue, 24 Oct 2023 14:31: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=9CvU=GG=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qvIRj-0006O8-Fy
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 14:31:51 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 0ff47a84-727a-11ee-9b0e-b553b5be7939;
 Tue, 24 Oct 2023 16:31:47 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id BE6584EE074A;
 Tue, 24 Oct 2023 16:31: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: 0ff47a84-727a-11ee-9b0e-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>
Subject: [RFC 4/4] amd/iommu: fully initialize array in 'flush_command_buffer'
Date: Tue, 24 Oct 2023 16:31:38 +0200
Message-Id: <b772842fccacc4fb108ff515bdcad6f2877b6b12.1698155925.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1698155925.git.nicola.vetrini@bugseng.com>
References: <cover.1698155925.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Fully explicit initialization of the cmd array resolves a violation of
MISRA C:2012 Rule 9.3.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
---
 xen/drivers/passthrough/amd/iommu_cmd.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/xen/drivers/passthrough/amd/iommu_cmd.c b/xen/drivers/passthrough/amd/iommu_cmd.c
index cb28b36abc38..49b9fcac9410 100644
--- a/xen/drivers/passthrough/amd/iommu_cmd.c
+++ b/xen/drivers/passthrough/amd/iommu_cmd.c
@@ -66,7 +66,8 @@ static void flush_command_buffer(struct amd_iommu *iommu,
                          IOMMU_COMP_WAIT_S_FLAG_MASK),
         (addr >> 32) | MASK_INSR(IOMMU_CMD_COMPLETION_WAIT,
                                  IOMMU_CMD_OPCODE_MASK),
-        CMD_COMPLETION_DONE
+        CMD_COMPLETION_DONE,
+        0
     };
     s_time_t start, timeout;
     static unsigned int __read_mostly threshold = 1;
--
2.34.1


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 14:31:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 14:31:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622038.969163 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvIRm-0006uj-Bf; Tue, 24 Oct 2023 14:31:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622038.969163; Tue, 24 Oct 2023 14:31: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 1qvIRm-0006uN-7k; Tue, 24 Oct 2023 14:31:54 +0000
Received: by outflank-mailman (input) for mailman id 622038;
 Tue, 24 Oct 2023 14:31: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=FS8+=GG=amd.com=Stewart.Hildebrand@srs-se1.protection.inumbo.net>)
 id 1qvIRj-0006O8-Mv
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 14:31:51 +0000
Received: from NAM10-DM6-obe.outbound.protection.outlook.com
 (mail-dm6nam10on20610.outbound.protection.outlook.com
 [2a01:111:f400:7e88::610])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 0e099e2c-727a-11ee-9b0e-b553b5be7939;
 Tue, 24 Oct 2023 16:31:46 +0200 (CEST)
Received: from BYAPR07CA0099.namprd07.prod.outlook.com (2603:10b6:a03:12b::40)
 by SJ2PR12MB8737.namprd12.prod.outlook.com (2603:10b6:a03:545::21)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.26; Tue, 24 Oct
 2023 14:31:41 +0000
Received: from CO1PEPF000042AE.namprd03.prod.outlook.com
 (2603:10b6:a03:12b:cafe::cb) by BYAPR07CA0099.outlook.office365.com
 (2603:10b6:a03:12b::40) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.33 via Frontend
 Transport; Tue, 24 Oct 2023 14:31:41 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 CO1PEPF000042AE.mail.protection.outlook.com (10.167.243.43) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6933.15 via Frontend Transport; Tue, 24 Oct 2023 14:31:40 +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, 24 Oct
 2023 09:31:36 -0500
Received: from [172.30.200.120] (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, 24 Oct 2023 09:31: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: 0e099e2c-727a-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=WSkh2FgZ4roClWii+QnmXVnu5lg0vqQjUt6r9yIQLjethlSZSvf7Ibmj3FD8xQicuhJxdW/H/hJQAj9+tA4RyRxz0ROk008md8YukyU626ig5pztbs5hPi9Ervfve1X5BTJLIoyxZJTXpkhqGR5oMRwJjgh5/+uDn4oqL7WVcqqQjwF+lmQYuSjgSsKFurk5872Rii0njJ30csm2WhMbTfSPmZfM7cU/shlFPyPZyIKSr9B9zXY/pN0UUaz3HakwJPR1p55sBQPTc9CKVkQQUOLAJ7UvqHGfIgb9hdkQ/ondjSt9LkUdW0E3SujNltYhPbW8DkMLj7lLxq5w34OBWA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=vJPd5laNVv99QzkQjeZ6PrmY5/XDvyolhYs9NPQN+LA=;
 b=mwMclXrL2kkDuUiEFk58OUnUBAwJ/p+lHHMZxvT9MkEHlnBRqZcktz+KgUjNZhRyntHcqtGB3IJ8FgdEi/l3lsI998fxEgGpyeoFm5r8u9JqyFrbLo0GwnuTVOqXFIeiVOeznghb9KgRuNYWaUdguM607Xk0Zsz2X3bd9WS0LkRlTXr7pXEg3+9tceK7/KUFKdyGHM3RC5sDdbscKzA2ZgRyLnP1Dqfk7oACbG/48aGUfVmkVDOPS5X42JsLGxIAR8b6lGz/UKtqPkddIESCufiFQOnnqIxAdRUf9FpBee3vELWiCKRAqwMhUyQ6U+6eyxKK989tJrxJG94hX5jc/A==
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=vJPd5laNVv99QzkQjeZ6PrmY5/XDvyolhYs9NPQN+LA=;
 b=Fi4sALCatm4xCU0cUFDiuDH6PJSboXA728IVO7/ZajOzk1RyOzz1I4f9ss0UECo1onVbO0vntWnkIekYT6YaQbVmBUd/YOKwckXddAxbTu12iKbD0Wo46JNKR37D1F6PQXpSYtR7ySk0hTct8z+tonw4OX28zr56rGP6Zqp/Mig=
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: <3fd1b2a7-16f2-4836-a2a9-0edfabed3ea3@amd.com>
Date: Tue, 24 Oct 2023 10:31:35 -0400
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH] xen/vpci: allow BAR write if value is the same
Content-Language: en-US
To: =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>, Jan Beulich
	<jbeulich@suse.com>
CC: <xen-devel@lists.xenproject.org>
References: <20231023163615.693462-1-stewart.hildebrand@amd.com>
 <2ef80dad-5ae6-786d-e89f-d0c3af44b485@suse.com> <ZTd0pxpwtEbsCny0@macbook>
From: Stewart Hildebrand <stewart.hildebrand@amd.com>
In-Reply-To: <ZTd0pxpwtEbsCny0@macbook>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: CO1PEPF000042AE:EE_|SJ2PR12MB8737:EE_
X-MS-Office365-Filtering-Correlation-Id: e4e7e9fe-ff26-4436-3b8c-08dbd49df064
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	L8i27Xecj8A/Op0KbmkidbVeHfe3y2F4gpwSeBQF820S9uYdJ7EvCTQANQNc1mfwKEEXnCOCAfmDsi/18NvhJHU9PrVEw4+daLhS7Kj2kQSdzUNj8AL5knF3tWQjUvwU9x5rkNhTc48A1DZB8r8gz45ee2rSFoDiaeW51zgPU6qmZgZT6VhUXL/6wW5RmyFmfaF1+C6fplHz1IWlP6kASH7787Ur/bxqr0o2t5rcDx2PbZ9iC1/A/Kc0yKJH6WxN/gdjdZ5cNjdTtNGU1+wE2eaYhNJLRuqPfSpBqU6j72nY0g24ZOrqbkvCjeo9YMHf9k3HOr8+8pwv+EZ9h/sOPhuM+2aES9OrGFDJL5z/eKMQ3YG/m/4Uda0ffXQfB4WJyryLizo4wAS6wliqsbuvYzU34j34nP1h8PKsiKnjJwaE1PljF5pwsV53Lx7fKXmbhiAzKqaWwGkZQaqGjKimRtnGtNb4wTO17/iiHFxi2t5W/kQPm1PHWR2dwWNMSrOVt6IY7jU4kmlQvnO3Na67fTvOg3XBjjD8gpIcYNatCXoFfzkXShH8zHPc8N2Oz2aS9A806+T4hDZoMcOeYvPCQDrvJBKTVYBMOwZoiBfPy0681sYZhKLQlRog8Os9N2/fjUKIROWz7/XHn60/Vw6eI26u6bDkGeWbFd+mylGmO/GTCsLVA23lxTSCQLPsFxR9UB6/+DfJBSbuTEzEyPRaclBQOFOC1Cv0GxCth+tFlCrj5PRMQ99IuQ+mEb+vats6+aa3LO65GfLbQCXiOU62W+7RyJFmNoMBsA5sf5UjxrQ=
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)(230922051799003)(1800799009)(186009)(451199024)(64100799003)(82310400011)(46966006)(40470700004)(36840700001)(81166007)(426003)(2616005)(478600001)(47076005)(336012)(82740400003)(36860700001)(26005)(31686004)(356005)(110136005)(966005)(70206006)(316002)(53546011)(16576012)(70586007)(83380400001)(86362001)(40460700003)(4326008)(31696002)(8936002)(8676002)(44832011)(2906002)(41300700001)(40480700001)(5660300002)(36756003)(43740500002)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 24 Oct 2023 14:31:40.9549
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: e4e7e9fe-ff26-4436-3b8c-08dbd49df064
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:
	CO1PEPF000042AE.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ2PR12MB8737

On 10/24/23 03:39, Roger Pau Monné wrote:
> On Tue, Oct 24, 2023 at 09:09:45AM +0200, Jan Beulich wrote:
>> On 23.10.2023 18:36, Stewart Hildebrand wrote:
>>> During xl pci-assignable-add, pciback may reset the device while memory decoding
>>> (PCI_COMMAND_MEMORY) is enabled. After device reset, memory decoding may be
>>> disabled in hardware, and the BARs may be zeroed/reset in hardware. However, Xen
>>> vPCI still thinks memory decoding is enabled, and BARs will remain mapped in
>>> p2m. In other words, memory decoding may become disabled and BARs reset in
>>> hardware, bypassing the respective vPCI command and BAR register handlers.
>>> Subsequently, when pciback attempts to restore state to the device, including
>>> BARs, it happens to write the BARs before writing the command register.
>>> Restoring/writing the BARs silently fails because Xen vPCI mistakenly thinks
>>> memory decoding is enabled.
>>>
>>> Fix the BAR write by allowing it to succeed if the value written is the same as
>>> the Xen vPCI stored value. pciback will subsequently restore the command
>>> register and the state of the BARs and memory decoding bit will then be in sync
>>> between hardware and vPCI again.
>>>
>>> While here, remove a nearby stray newline.
>>>
>>> Signed-off-by: Stewart Hildebrand <stewart.hildebrand@amd.com>
>>> ---
>>> Do we need similar handling in rom_write()?
>>
>> I think so, if we are to go this route. However, ...
>>
>>> We may consider additionally checking during bar_write() if the memory decoding
>>> state has become out of sync between hardware and vPCI. During bar_write(), we
>>> would check the device's memory decoding bit, compare it to our vPCI state, and
>>> invoke modify_bars() if needed. Please let me know your thoughts.
>>
>> ... iirc we discussed earlier on that doing resets in Dom0 wants
>> communicating to Xen. Any way of resetting by a DomU would likely need
>> intercepting. This way the described situation can be avoided altogether.
>> We may go further and uniformly intercept resets, carrying them out on
>> behalf of Dom0 as well. The main issue is, as with any config-space-
>> based interaction with a device, that there may be device specific ways
>> of resetting.
> 
> I agree with Jan, the plan as I recall was to introduce a new
> hypercall to signal Xen of when a device has been reset, I can't
> however find that conversation right now.  It would be nice to trap
> device reset attempts, but there are some device specific reset
> methods that would be too much special casing to accommodate sadly.
> 
> The fix here is just papering over the issue, as if the device has
> been reset and Xen is not aware of it all the vPCI cached state is out
> of date, so it's not only BARs addresses that are stale, but also
> possibly MSI and MSI-X.
> 
> Thanks, Roger.

Ah, right, this makes sense. Sorry I missed that. I agree vPCI needs to know when the device has been reset and handle the state accordingly.

Found the thread: https://lists.xenproject.org/archives/html/xen-devel/2023-03/msg01687.html


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 14:32:25 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 14:32:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622051.969178 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvISG-0000HA-PY; Tue, 24 Oct 2023 14:32:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622051.969178; Tue, 24 Oct 2023 14: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 1qvISG-0000H3-MH; Tue, 24 Oct 2023 14:32:24 +0000
Received: by outflank-mailman (input) for mailman id 622051;
 Tue, 24 Oct 2023 14:32: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=+b+W=GG=gmail.com=xadimgnik@srs-se1.protection.inumbo.net>)
 id 1qvISE-0006O8-MO
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 14:32:22 +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 23dc358e-727a-11ee-9b0e-b553b5be7939;
 Tue, 24 Oct 2023 16:32:21 +0200 (CEST)
Received: by mail-wm1-x32c.google.com with SMTP id
 5b1f17b1804b1-40806e4106dso26527565e9.1
 for <xen-devel@lists.xenproject.org>; Tue, 24 Oct 2023 07:32:21 -0700 (PDT)
Received: from [192.168.6.66] (54-240-197-230.amazon.com. [54.240.197.230])
 by smtp.gmail.com with ESMTPSA id
 h12-20020a05600c314c00b004068def185asm2868465wmo.28.2023.10.24.07.32.19
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 24 Oct 2023 07:32: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: 23dc358e-727a-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698157940; x=1698762740; 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=8ASkYfBT83DzI2Y3E+QUpM/rSYztNN2Dn3OWclTYnN8=;
        b=SUhb0pa/IcwbR8w8MXgxtZtRqx0MarqgbK2211T6c/8o8NjFkgNowl7TVWwCmFSrVq
         MvtRlayhub5JdqS9UpJWzFM7/kEUQ1ZpYdRaM9a6805jUC4jFLSK40vYfU3iGgmwcxhb
         mzJxji4NrXEujgmS+nTFL43QiU1IPypH7IpmzwdRxyXupMpX0HTRTyTXdcNhCW0DJLze
         BQ/rpqMCcGPD0rQZXqmivr1XWKF1KfbgycfiFYUED6HURvjMHAyxp8/VFctMKh3QM2J8
         DovcOi5t03nd5pIEJ74VLuASRIadjn/KETzp2pqt8c7JoAnXoySOQNmTVGRKLMiaZ/Lh
         gZlA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698157940; x=1698762740;
        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=8ASkYfBT83DzI2Y3E+QUpM/rSYztNN2Dn3OWclTYnN8=;
        b=adCqAg1OMz7shazZFpMgHhkdDBAGAo54Ziokt3vH8jXnwmMLOkC4n+Ka0RnKTy8Uvn
         p8yC8PWVmjXnme6FpMw5wGeU/ynYDmqcGiX8r8I+Moj/jA9feL987T99QiA68CDRfeAL
         DaFIT0r0Euzv+DHBtqiabFgUC4bOZloQQpLRobpd8ySS4TPYn0XL8GwOr/Ii/9tJTxw+
         FDaTsjYma1AKxJfQmZ3LCmVPKMTm+Dajuh/vaZzvbhmNmZvneM3OmWP6assjTozLk4+G
         QDNSljlKY+UZ9x8w1eGeDKnn3X+x1EqZrLJXiu5iuIPbMJcI5953jbv8/u28JpxF3NPs
         A2Uw==
X-Gm-Message-State: AOJu0Ywp46KrWb3crEP5op4SKkkPJFFf364hOC00rm1BfJ70d0O/rtId
	Ly7dFV8KYnai7uBOjvogvKfZpww4CB0Oxw==
X-Google-Smtp-Source: AGHT+IH3S3oghRgfgbsQqo86KSVXvTtoeL3gUJvVrDNxZr+FihJ6lz9hqg6acdcxsulSLEku5uUYmA==
X-Received: by 2002:a05:600c:154c:b0:408:3634:b81e with SMTP id f12-20020a05600c154c00b004083634b81emr11099647wmg.13.1698157940248;
        Tue, 24 Oct 2023 07:32:20 -0700 (PDT)
From: Paul Durrant <xadimgnik@gmail.com>
X-Google-Original-From: Paul Durrant <paul@xen.org>
Message-ID: <1408fb32-3d91-4eb2-b0e7-4eba0f449906@xen.org>
Date: Tue, 24 Oct 2023 15:32:18 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Reply-To: paul@xen.org
Subject: Re: [PATCH 1/4] hw/xen: only remove peers of PCI NICs on unplug
Content-Language: en-US
To: David Woodhouse <dwmw2@infradead.org>, qemu-devel@nongnu.org
Cc: "Michael S. Tsirkin" <mst@redhat.com>,
 Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
 Paolo Bonzini <pbonzini@redhat.com>,
 Richard Henderson <richard.henderson@linaro.org>,
 Eduardo Habkost <eduardo@habkost.net>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Anthony Perard <anthony.perard@citrix.com>, Jason Wang
 <jasowang@redhat.com>, xen-devel@lists.xenproject.org
References: <20231017182545.97973-1-dwmw2@infradead.org>
 <20231017182545.97973-2-dwmw2@infradead.org>
Organization: Xen Project
In-Reply-To: <20231017182545.97973-2-dwmw2@infradead.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 17/10/2023 19:25, David Woodhouse wrote:
> From: David Woodhouse <dwmw@amazon.co.uk>
> 
> When the Xen guest asks to unplug *emulated* NICs, it's kind of unhelpful
> also to unplug the peer of the *Xen* PV NIC.
> 
> Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
> ---
>   hw/i386/xen/xen_platform.c | 9 +++++++--
>   1 file changed, 7 insertions(+), 2 deletions(-)
> 
> diff --git a/hw/i386/xen/xen_platform.c b/hw/i386/xen/xen_platform.c
> index 17457ff3de..e2dd1b536a 100644
> --- a/hw/i386/xen/xen_platform.c
> +++ b/hw/i386/xen/xen_platform.c
> @@ -140,9 +140,14 @@ static void unplug_nic(PCIBus *b, PCIDevice *d, void *o)
>   /* Remove the peer of the NIC device. Normally, this would be a tap device. */
>   static void del_nic_peer(NICState *nic, void *opaque)
>   {
> -    NetClientState *nc;
> +    NetClientState *nc = qemu_get_queue(nic);
> +    ObjectClass *klass = module_object_class_by_name(nc->model);
> +
> +    /* Only delete peers of PCI NICs that we're about to delete */
> +    if (!klass || !object_class_dynamic_cast(klass, TYPE_PCI_DEVICE)) {

Would it not be better to test for object_class_dynamic_cast(klass, 
TYPE_XEN_DEVICE)?

   Paul

> +        return;
> +    }
>   
> -    nc = qemu_get_queue(nic);
>       if (nc->peer)
>           qemu_del_net_client(nc->peer);
>   }



From xen-devel-bounces@lists.xenproject.org Tue Oct 24 14:32:37 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 14:32:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622052.969188 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvIST-0000n9-0w; Tue, 24 Oct 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 622052.969188; Tue, 24 Oct 2023 14:32: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 1qvISS-0000n2-Tr; Tue, 24 Oct 2023 14:32:36 +0000
Received: by outflank-mailman (input) for mailman id 622052;
 Tue, 24 Oct 2023 14:32: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=krZT=GG=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qvISR-0006O8-JF
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 14:32:35 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 (mail-am6eur05on20617.outbound.protection.outlook.com
 [2a01:111:f400:7e1b::617])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 2b7c157f-727a-11ee-9b0e-b553b5be7939;
 Tue, 24 Oct 2023 16:32:34 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DUZPR04MB9917.eurprd04.prod.outlook.com (2603:10a6:10:4d8::11)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.35; Tue, 24 Oct
 2023 14:32:32 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6933.011; Tue, 24 Oct 2023
 14:32: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: 2b7c157f-727a-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=WDmLBvha/0zPSt3FiAYYEzTH3Vshnjkc01Y6LG9FVg29neYf2lqgYC2EyNqYBFN2OkI22vytJl9o3g5rOFxPjteoyPhOZY5rR4gYkMlmsKtbmIyV31eiRMIewVnj+9pgjMEJwdRA805vzmjH8N3iMyZNHLxCv9KhaZFea2/ZjMO0erSy7ELNxOeLJD+Vr+i0k5vpi/NsS0XbzMAwSJYyEImybis8MkbefCTKP8Z7dt1J7/UOwIJ7gwKFpQvK+6OUAJicLgRnLH68qX7NoTo8U4/+NSKkd0HgklR5RDEShP725LS0+ZvX7bxIqdLZXFcGuDQZf8MOmjFkr2LeCq5VSg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=a4xgN67JX1LpSLOq1u/CDoxkvGoPVuHYeQs/ulLj/8I=;
 b=Xl4f0tCA/oDIGYCdEgu0GuX/Hw68vRhXiwHWHzYBTXVOAYtojofZbieO/qR+8v/y+YvvLsYajnE/QBPtZwFwqG8edo8ruXJtcGGtJVwzG+6W1JoeZojozSjeRiLIBKi+pvsRMDiEP11pqbKmhmWE/tWHw1+D84uUYDWXqebcM/U2Aq4NGR8vlsAqAodB11z8Emr1DUQYP96Nog5leImkY1kXpxmBl3oFUfO6EtWDs/VFme3R2TStfpEBTsj8sUCcfTvoXtUHDgZ63wAVhXjND5I16w5d77RV5jkEe6jc9M3WrGdbde2AnhKyGfTGTWTrssNVP4slj47ZC+NS3txUTQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=a4xgN67JX1LpSLOq1u/CDoxkvGoPVuHYeQs/ulLj/8I=;
 b=MsR+aYfeFHYBhsbb3Rr4Xi/SwnKtj3XhuigEeqJYAoPUqCnPYVP9qB5vIbD/AQJAnxVJpPJVfx3+COR4dWV8i1QwVqS9Pmmyb4lwPyIKDi90QeiEIM5Qdx72AxROVwppEonQAe2l81EZ/V/RkTn04dmsXApSrm1sdAThX79DUoJ9opecDrIXpT1ZNdoj8JKP1zf2VhakLmh1V3i1uy73xs5qWANLr8dXLgtAJ0PV29pcEj3NlARY3kwh/bHmicn9vGK0HZicyM9ctjtbutRoyXIloMRljdtN4f5B7SVrbqZwgGZn9A25akkG1LcXIXiInBEOUWfqXz16S7MKZxOC6A==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <4019825c-3307-8e0d-63f2-22d651a7ca32@suse.com>
Date: Tue, 24 Oct 2023 16:32:29 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [XEN RFC] xen/automation: add deviations for MISRA C:2012 Rule
 8.3
Content-Language: en-US
To: Federico Serafini <federico.serafini@bugseng.com>
Cc: consulting@bugseng.com, Simone Ballarin <simone.ballarin@bugseng.com>,
 Doug Goldstein <cardoe@cardoe.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: <565552f9e7cfff56fb1d1037cfa9662a1818c5d3.1698153310.git.federico.serafini@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <565552f9e7cfff56fb1d1037cfa9662a1818c5d3.1698153310.git.federico.serafini@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0185.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:ca::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_|DUZPR04MB9917:EE_
X-MS-Office365-Filtering-Correlation-Id: dc3fe725-a2d8-4402-79ba-08dbd49e0eb2
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	YyirfkJkZU5uj1dfFbztJ3jKVd3jr2YiSwh0HtH4ERgO2Di+qaNDMUD+KPni9BVfUBEwgVmZ+LvHcY8ux9k0lp09+3AakCc2bVFUcTypSlsVHwTDQItNndRiXBrQo0SaIwBWCvzNh26e854bc/tYLKVr0CPHn/00OkIh7J3Qxd609+auh92X9TFoVLV8m7mfWPy/4zcMq0x3bDYeUkvMVP/ecDOx/89o/dnY38Ghf7mdZ4LvjG+vAJNzrNRsPN1YHgk6BDzvRngBWKuhezeNsHr9xnj91fVqR+VcT1ud/cEPidctHtNjJyemCJ5NoBMdZGB7mn2IyuuuyZ5KGlcHQBDvTYrnq9AJLrsE1315JO9hw00d5bGFN7xKQ94fs4qD6Ya4ti3JCo+okhnrQ3svodRTVhNeBUndvmjtPYNQBVRwpq/mnvhxmOAs0CqgdSU70U7A8h5p8o1xaeXQLFEibn5PTGhNv73ILqDLH5FVWt6a6JoewLxobRkKlKOfnXttO5Vrdeq9IOk7czq15ItpMsTZltX7vgq3VTSwQhbL3pMcR2FhVjZDgnNndrHTvov91LpMYCe5qkK4aMfVNSQ/m1ryL04yBpXjxlnziz3uzyZqYvgERH2avobi9iaofBFne+TH1FaOOe3D4gWslwuASA==
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)(376002)(346002)(366004)(136003)(230922051799003)(186009)(1800799009)(64100799003)(451199024)(316002)(6486002)(66946007)(8676002)(6916009)(66556008)(41300700001)(66476007)(54906003)(478600001)(7416002)(8936002)(31686004)(5660300002)(4326008)(2906002)(53546011)(83380400001)(6506007)(86362001)(31696002)(38100700002)(6512007)(26005)(36756003)(6666004)(2616005)(4744005)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?VlFldkkycEg3dXZCblpnOUp0aGZnSmlwMlYwOXptd2lMTS9Xc041V0tUWldm?=
 =?utf-8?B?dXFFUW5LTDlkMXNQZmo1eGlkWnY2NXdYbzZMempSaGZZRXcwWWVhZjFFS0dO?=
 =?utf-8?B?NG9KWVdyNTM4ZU1HaVhzUjJjOE9hcFoyL2d3NjJxYVU3UnpXdmNLMlQ0NW5a?=
 =?utf-8?B?MDZOcDIyU3J2czhIN1VqbGJ0citwYWswZittRzZxaDNPYTBwK1ptcHlhWTdE?=
 =?utf-8?B?NmU4TkpWcU5XK3ZuNnA1MXJtQlFwMWtoVHZ0VG9mRm5yT0p1L3R3NXQyMDlh?=
 =?utf-8?B?VHZ4Nmp2SUZTd3ZKM0R6b1JvSDFrbUtRZ3hUbEdnS1NNR0NvUE8reVphbjdu?=
 =?utf-8?B?QVpyNisrQU9qOE5PZmNrZHdtcXFxejJ3QjdGWGpDWU1keHdtbmhOb2xUR2VY?=
 =?utf-8?B?WXlZZnFQWUJKWGtCUHhxU3dNSGYxNzdRc0FlQTVDMkVGcUQrNFRlSHlLOFBh?=
 =?utf-8?B?c1BEOEVCNHBLR3ZnUWZOM3hEQmJnOFNNeGdBTENibzM0L0FYYll5R2U1eDR0?=
 =?utf-8?B?bjJKSkt1QTcyVnBqYm0xVDFLbkFtM3JMdlc5WE1NbkJmblNXb1RIaTdWR2Nk?=
 =?utf-8?B?SDRtVVJoUzdxWDZQVFJkWXVEM1N0U29yL01OMk41Nnh1M1BDM2xjdS9RZmZH?=
 =?utf-8?B?Y1ZtZU1lMHZMczRTUVIwRjl0TlJBL0JkTzI5TUUrVXFGOTAxSlNQZ0tmaDZm?=
 =?utf-8?B?NXZ0MnF1MURLeVludi80bTE2L29CWWRtR3VnNXV4Y3J5NVQrbnZPWnMwbldL?=
 =?utf-8?B?MG9QeGoxSVZLbHJKUU5BbGNsbFhXc0F5cytUMXB1RVZFUkQ2R0lQZVFmUGFq?=
 =?utf-8?B?dFZ2NVlYVVhrNjBwaEtYeGljcmgyclpDRnowMm0vMDRpVUg4QzBDYTdwVXhN?=
 =?utf-8?B?REVUU2twbUw0b3g4bFB2TFB1eHlaclJtMkJpKzU1ZG5uSFBmdFcxOU9oK1VT?=
 =?utf-8?B?L3FNcDFJUnJIMG5qaGhKRE5aOHZiNFhGUzNDeUxlZnF6WklERHNTUU1oSVI2?=
 =?utf-8?B?V3FoT3JBSFV1d0w0c0x3elJpQkFDa2J5a1E5YWNVSytocVhMamU3YS90V0Vr?=
 =?utf-8?B?aHo0aGgyNkcxQUhKbU1BcHVUdjdKRkMvWW1KeWZyajVkWTc1elZ6dUNWR3da?=
 =?utf-8?B?dUZ5QnpVOXFjQzhPbTRwaC9naENET016SmJSeTRoYUNQcWpQelVMMGRKZHJu?=
 =?utf-8?B?L0VFcTZ0Vm5ZRG9VZmhKbUN1ZHh6M054QkdRK1o3MmR3aDlSWkxKdmpLdDls?=
 =?utf-8?B?NzFLMG5ucVZ4aXZ6eW9WbWQ1elVUTnpFdE5uMFRnMW1BMTh1cU11WkVBbURR?=
 =?utf-8?B?SXRmd2hTM1NvMkFhR1c0aWtlSjVHTU5mM3VFdXlmUDlncmpMRHA5QnU4Ti9Q?=
 =?utf-8?B?Z2xmd0drNW9jaHVVYzNjOHlLUUJQKzdIeWlPL1dHT3ZJbmdGUEg5dDNSMHFW?=
 =?utf-8?B?WVhHYWthTUVxL1A1Vm0zSGxURU1PK215eGJDU1JEMnFla2ViVVR3azR2UEhH?=
 =?utf-8?B?UEgzc3U5dVFOT3BnNHM1akF3cmsrVGtxV0YzV2Z1K01JbUdCQVM4NFhZbjNV?=
 =?utf-8?B?SDFkOUFmMERQcFMvZnJYYll1VVBMWEtLZkwvSWN2eTBYdkQxV0cyNDlTcjlh?=
 =?utf-8?B?ZXIvOUxhSjdoQmtzaU9LOWh6MDlLL0pEYkR0cmR0Q0FBQ3FHcGNyc29IY2xW?=
 =?utf-8?B?RENjTDhIb3JCYnd6S3pjT0lqbXZBVXVEcXVyZ0w3dW1MMjQzTTV6c2hvc2RJ?=
 =?utf-8?B?NjVtS05ScVhUYWdzZzdhcUZxZERGbHlLa0JHemhxdzBvbHZKRTF3cTF4SG1v?=
 =?utf-8?B?QzNzNUdZNXIzRko0UmMzb0xpa0JzV2xia1JOMjZ6UE5abnpQWjRNZ0NHTWRm?=
 =?utf-8?B?c2dBRm5hKzBVZE01cWlHUzE2NkNRWEpmV1Z5TWFYYlR6c2tFQkd6WldwVVkv?=
 =?utf-8?B?STZtSDgyOUdnQWF1V3MwQWhxSDJ2S3c4VDlyS2ZmcVRLODluQktTQ0RySjh1?=
 =?utf-8?B?NzRVTkdQVG0xTndNazM2eDEyblRmMDNpZFQzd3llYWFWenhmZkl2eUdjMXRS?=
 =?utf-8?B?NTZYL1diS2w2OU0xdXNjYjBiYWkxV1JXOXI4L2kwWVJJaHRUNERLR1FZVWYx?=
 =?utf-8?Q?aos3BUiWpdCBiS1cloZeHqU9x?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: dc3fe725-a2d8-4402-79ba-08dbd49e0eb2
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 24 Oct 2023 14:32:32.0597
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: GpuUYSfhm51n3Z9dYstFUz3iPWf+oGhzdiaKBD2OCfLBxMAb7G0bgaNXaYDgykG4qlQHfGWyYPllGpJeOhvxUw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DUZPR04MB9917

On 24.10.2023 15:22, Federico Serafini wrote:
> Update ECLAIR configuration to deviate Rule 8.3 ("All declarations of
> an object or function shall use the same names and type qualifiers")
> for the following functions:
> - set_px_pminfo();
> - guest_walk_tables_[0-9]+_levels().
> 
> Update file docs/misra/deviations.rst accordingly.
> No functional change.
> 
> Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
> ---
> I had a discussion with Jan about the reasons behind the choice of parameter
> name 'walk' for the definitions of functions guest_walk_tables_[0-9]+_levels()
> and the parameter name 'pfec' for the corresponding declarations.
> Also for the function set_px_pminfo(), it seems that the parameter names are
> different on purpose.

In this latter case I wonder why you think so. Did I end up making a
misleading comment anywhere? It looks to me as if naming the parameter
in question "perf" uniformly would be quite okay.

Jan


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 14:38:29 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 14:38:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622060.969198 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvIY0-0002wn-P7; Tue, 24 Oct 2023 14:38:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622060.969198; Tue, 24 Oct 2023 14:38: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 1qvIY0-0002wg-MA; Tue, 24 Oct 2023 14:38:20 +0000
Received: by outflank-mailman (input) for mailman id 622060;
 Tue, 24 Oct 2023 14:38: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=jXWl=GG=casper.srs.infradead.org=BATV+e2898748ca55db067849+7366+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qvIXz-0002wa-4R
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 14:38:19 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id f7603bf8-727a-11ee-9b0e-b553b5be7939;
 Tue, 24 Oct 2023 16:38:16 +0200 (CEST)
Received: from [2001:8b0:10b:5:758e:a1c4:bc7:e7a7]
 (helo=u3832b3a9db3152.ant.amazon.com)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qvIXr-003159-7K; Tue, 24 Oct 2023 14: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>
X-Inumbo-ID: f7603bf8-727a-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=MIME-Version:Content-Type:References:
	In-Reply-To:Date:Cc:To:From:Subject:Message-ID:Sender:Reply-To:
	Content-Transfer-Encoding:Content-ID:Content-Description;
	bh=6M9R+LjROoF7Fmy6VJr3tlj/IonikjJRnEwksO4nATQ=; b=ARBkHLq33HNCkUvsrvs5N189aY
	EHvBN9kCPfGuj6vqdtgJH4M65YB9kEGQ9ALML5xeoVKl4aJZNRGFOCnFYrMhnSG8d52+ezbRZHQo9
	iXp84GRLTpzLlXaJ45IVPhoTwkUvMaFpvhu3w1VGtNfPrX++dM4TSSAOPIGNCRkBI8ck1FlZARj2Y
	+G48ftk2GiBY0X99jRi4+2VHe28kY9HJF4iV0tff3WNK4QCnU4Q9tDvQW35fboPx0wDzUHBMuI2M6
	QIiUv/wEPx8w4Unj9Q9+MxZBuwGvWvMl4p3FTmxW1YnWTl3ECegH5APyde5IcC8lqoy3LcZgGDjK4
	Dt6RB3aA==;
Message-ID: <9ecc99133cbd74c3816eaa9a18f9c929996747ad.camel@infradead.org>
Subject: Re: [PATCH 09/12] hw/xen: prevent duplicate device registrations
From: David Woodhouse <dwmw2@infradead.org>
To: paul@xen.org, qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>, Hanna Reitz <hreitz@redhat.com>, Stefano
 Stabellini <sstabellini@kernel.org>, Anthony Perard
 <anthony.perard@citrix.com>,  =?ISO-8859-1?Q?Marc-Andr=E9?= Lureau
 <marcandre.lureau@redhat.com>, Paolo Bonzini <pbonzini@redhat.com>,
 "Michael S. Tsirkin" <mst@redhat.com>, Marcel Apfelbaum
 <marcel.apfelbaum@gmail.com>, Richard Henderson
 <richard.henderson@linaro.org>, Eduardo Habkost <eduardo@habkost.net>, 
 Marcelo Tosatti <mtosatti@redhat.com>, qemu-block@nongnu.org,
 xen-devel@lists.xenproject.org, kvm@vger.kernel.org
Date: Tue, 24 Oct 2023 15:38:09 +0100
In-Reply-To: <0e169b58-f481-4b77-8385-6a1a58b57df1@xen.org>
References: <20231016151909.22133-1-dwmw2@infradead.org>
	 <20231016151909.22133-10-dwmw2@infradead.org>
	 <0e169b58-f481-4b77-8385-6a1a58b57df1@xen.org>
Content-Type: multipart/signed; micalg="sha-256"; protocol="application/pkcs7-signature";
	boundary="=-PSVGolPEYIQWNoDHxT37"
User-Agent: Evolution 3.44.4-0ubuntu2 
MIME-Version: 1.0
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html


--=-PSVGolPEYIQWNoDHxT37
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Tue, 2023-10-24 at 15:10 +0100, Paul Durrant wrote:
> On 16/10/2023 16:19, David Woodhouse wrote:
> > --- a/hw/char/xen_console.c
> > +++ b/hw/char/xen_console.c
> > @@ -468,7 +468,7 @@ static void xen_console_device_create(XenBackendIns=
tance *backend,
> > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 Chardev *cd =3D NULL;
> > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 struct qemu_xs_handle *xsh =3D xenbus->x=
sh;
> > =C2=A0=20
> > -=C2=A0=C2=A0=C2=A0 if (qemu_strtoul(name, NULL, 10, &number)) {
> > +=C2=A0=C2=A0=C2=A0 if (qemu_strtoul(name, NULL, 10, &number) || number=
 >=3D INT_MAX) {
> > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 error_setg(errp,=
 "failed to parse name '%s'", name);
> > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 goto fail;
> > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 }
> I don't think this hunk belongs here, does it? Seems like it should be=
=20
> in patch 7.

Well, console#4294967295 *did* actually work before this patch started
using -1 to mean something different. But yes, I've already moved that
into the previous patch.

In fact I've just completely dropped this patch now, as the
dedeuplication needs to happen on the *frontend* nodes, since a given
frontend can be powered by a backend of different types, or in
different driver domains.


--=-PSVGolPEYIQWNoDHxT37
Content-Type: application/pkcs7-signature; name="smime.p7s"
Content-Disposition: attachment; filename="smime.p7s"
Content-Transfer-Encoding: base64

MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgEFADCABgkqhkiG9w0BBwEAAKCCEkQw
ggYQMIID+KADAgECAhBNlCwQ1DvglAnFgS06KwZPMA0GCSqGSIb3DQEBDAUAMIGIMQswCQYDVQQG
EwJVUzETMBEGA1UECBMKTmV3IEplcnNleTEUMBIGA1UEBxMLSmVyc2V5IENpdHkxHjAcBgNVBAoT
FVRoZSBVU0VSVFJVU1QgTmV0d29yazEuMCwGA1UEAxMlVVNFUlRydXN0IFJTQSBDZXJ0aWZpY2F0
aW9uIEF1dGhvcml0eTAeFw0xODExMDIwMDAwMDBaFw0zMDEyMzEyMzU5NTlaMIGWMQswCQYDVQQG
EwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYD
VQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50
aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC
AQEAyjztlApB/975Rrno1jvm2pK/KxBOqhq8gr2+JhwpKirSzZxQgT9tlC7zl6hn1fXjSo5MqXUf
ItMltrMaXqcESJuK8dtK56NCSrq4iDKaKq9NxOXFmqXX2zN8HHGjQ2b2Xv0v1L5Nk1MQPKA19xeW
QcpGEGFUUd0kN+oHox+L9aV1rjfNiCj3bJk6kJaOPabPi2503nn/ITX5e8WfPnGw4VuZ79Khj1YB
rf24k5Ee1sLTHsLtpiK9OjG4iQRBdq6Z/TlVx/hGAez5h36bBJMxqdHLpdwIUkTqT8se3ed0PewD
ch/8kHPo5fZl5u1B0ecpq/sDN/5sCG52Ds+QU5O5EwIDAQABo4IBZDCCAWAwHwYDVR0jBBgwFoAU
U3m/WqorSs9UgOHYm8Cd8rIDZsswHQYDVR0OBBYEFAnA8vwL2pTbX/4r36iZQs/J4K0AMA4GA1Ud
DwEB/wQEAwIBhjASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEF
BQcDBDARBgNVHSAECjAIMAYGBFUdIAAwUAYDVR0fBEkwRzBFoEOgQYY/aHR0cDovL2NybC51c2Vy
dHJ1c3QuY29tL1VTRVJUcnVzdFJTQUNlcnRpZmljYXRpb25BdXRob3JpdHkuY3JsMHYGCCsGAQUF
BwEBBGowaDA/BggrBgEFBQcwAoYzaHR0cDovL2NydC51c2VydHJ1c3QuY29tL1VTRVJUcnVzdFJT
QUFkZFRydXN0Q0EuY3J0MCUGCCsGAQUFBzABhhlodHRwOi8vb2NzcC51c2VydHJ1c3QuY29tMA0G
CSqGSIb3DQEBDAUAA4ICAQBBRHUAqznCFfXejpVtMnFojADdF9d6HBA4kMjjsb0XMZHztuOCtKF+
xswhh2GqkW5JQrM8zVlU+A2VP72Ky2nlRA1GwmIPgou74TZ/XTarHG8zdMSgaDrkVYzz1g3nIVO9
IHk96VwsacIvBF8JfqIs+8aWH2PfSUrNxP6Ys7U0sZYx4rXD6+cqFq/ZW5BUfClN/rhk2ddQXyn7
kkmka2RQb9d90nmNHdgKrwfQ49mQ2hWQNDkJJIXwKjYA6VUR/fZUFeCUisdDe/0ABLTI+jheXUV1
eoYV7lNwNBKpeHdNuO6Aacb533JlfeUHxvBz9OfYWUiXu09sMAviM11Q0DuMZ5760CdO2VnpsXP4
KxaYIhvqPqUMWqRdWyn7crItNkZeroXaecG03i3mM7dkiPaCkgocBg0EBYsbZDZ8bsG3a08LwEsL
1Ygz3SBsyECa0waq4hOf/Z85F2w2ZpXfP+w8q4ifwO90SGZZV+HR/Jh6rEaVPDRF/CEGVqR1hiuQ
OZ1YL5ezMTX0ZSLwrymUE0pwi/KDaiYB15uswgeIAcA6JzPFf9pLkAFFWs1QNyN++niFhsM47qod
x/PL+5jR87myx5uYdBEQkkDc+lKB1Wct6ucXqm2EmsaQ0M95QjTmy+rDWjkDYdw3Ms6mSWE3Bn7i
5ZgtwCLXgAIe5W8mybM2JzCCBhQwggT8oAMCAQICEQDGvhmWZ0DEAx0oURL6O6l+MA0GCSqGSIb3
DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYD
VQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28g
UlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMB4XDTIyMDEwNzAw
MDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJARYTZHdtdzJAaW5mcmFkZWFkLm9y
ZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3GpC2bomUqk+91wLYBzDMcCj5C9m6
oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZHh7htyAkWYVoFsFPrwHounto8xTsy
SSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT9YgcBqKCo65pTFmOnR/VVbjJk4K2
xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNjP+qDrh0db7PAjO1D4d5ftfrsf+kd
RR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy2U+eITZ5LLE5s45mX2oPFknWqxBo
bQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3BgBEmfsYWlBXO8rVXfvPgLs32VdV
NZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/7auNVRmPB3v5SWEsH8xi4Bez2V9U
KxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmdlFYhAflWKQ03Ufiu8t3iBE3VJbc2
5oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9aelIl6vtbhMA+l0nfrsORMa4kobqQ5
C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMBAAGjggHMMIIByDAfBgNVHSMEGDAW
gBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeDMcimo0oz8o1R1Nver3ZVpSkwDgYD
VR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYwFAYIKwYBBQUHAwQGCCsGAQUFBwMC
MEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYBBQUHAgEWF2h0dHBzOi8vc2VjdGln
by5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9jcmwuc2VjdGlnby5jb20vU2VjdGln
b1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1haWxDQS5jcmwwgYoGCCsGAQUFBwEB
BH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdvLmNvbS9TZWN0aWdvUlNBQ2xpZW50
QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAjBggrBgEFBQcwAYYXaHR0cDovL29j
c3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5mcmFkZWFkLm9yZzANBgkqhkiG9w0B
AQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQvQ/fzPXmtR9t54rpmI2TfyvcKgOXp
qa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvIlSPrzIB4Z2wyIGQpaPLlYflrrVFK
v9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9ChWFfgSXvrWDZspnU3Gjw/rMHrGnql
Htlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0whpBtXdyDjzBtQTaZJ7zTT/vlehc/
tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9IzCCBhQwggT8oAMCAQICEQDGvhmW
Z0DEAx0oURL6O6l+MA0GCSqGSIb3DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3Jl
YXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0
ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJl
IEVtYWlsIENBMB4XDTIyMDEwNzAwMDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJ
ARYTZHdtdzJAaW5mcmFkZWFkLm9yZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3
GpC2bomUqk+91wLYBzDMcCj5C9m6oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZH
h7htyAkWYVoFsFPrwHounto8xTsySSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT
9YgcBqKCo65pTFmOnR/VVbjJk4K2xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNj
P+qDrh0db7PAjO1D4d5ftfrsf+kdRR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy
2U+eITZ5LLE5s45mX2oPFknWqxBobQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3
BgBEmfsYWlBXO8rVXfvPgLs32VdVNZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/
7auNVRmPB3v5SWEsH8xi4Bez2V9UKxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmd
lFYhAflWKQ03Ufiu8t3iBE3VJbc25oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9ae
lIl6vtbhMA+l0nfrsORMa4kobqQ5C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMB
AAGjggHMMIIByDAfBgNVHSMEGDAWgBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeD
Mcimo0oz8o1R1Nver3ZVpSkwDgYDVR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYw
FAYIKwYBBQUHAwQGCCsGAQUFBwMCMEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYB
BQUHAgEWF2h0dHBzOi8vc2VjdGlnby5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9j
cmwuc2VjdGlnby5jb20vU2VjdGlnb1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1h
aWxDQS5jcmwwgYoGCCsGAQUFBwEBBH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdv
LmNvbS9TZWN0aWdvUlNBQ2xpZW50QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAj
BggrBgEFBQcwAYYXaHR0cDovL29jc3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5m
cmFkZWFkLm9yZzANBgkqhkiG9w0BAQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQv
Q/fzPXmtR9t54rpmI2TfyvcKgOXpqa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvI
lSPrzIB4Z2wyIGQpaPLlYflrrVFKv9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9Ch
WFfgSXvrWDZspnU3Gjw/rMHrGnqlHtlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0w
hpBtXdyDjzBtQTaZJ7zTT/vlehc/tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9
IzGCBMcwggTDAgEBMIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVz
dGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMT
NVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEA
xr4ZlmdAxAMdKFES+jupfjANBglghkgBZQMEAgEFAKCCAeswGAYJKoZIhvcNAQkDMQsGCSqGSIb3
DQEHATAcBgkqhkiG9w0BCQUxDxcNMjMxMDI0MTQzODEwWjAvBgkqhkiG9w0BCQQxIgQgxP53wSUY
aRDJl0/6v5fG3nPvU8DkXjVIyZTdihGBfdowgb0GCSsGAQQBgjcQBDGBrzCBrDCBljELMAkGA1UE
BhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEYMBYG
A1UEChMPU2VjdGlnbyBMaW1pdGVkMT4wPAYDVQQDEzVTZWN0aWdvIFJTQSBDbGllbnQgQXV0aGVu
dGljYXRpb24gYW5kIFNlY3VyZSBFbWFpbCBDQQIRAMa+GZZnQMQDHShREvo7qX4wgb8GCyqGSIb3
DQEJEAILMYGvoIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVy
MRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNl
Y3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEAxr4Z
lmdAxAMdKFES+jupfjANBgkqhkiG9w0BAQEFAASCAgBi+u6UEDdJAZ0cXxB4s5R/SCNwvR234BHN
wRaVcnf0t1+ULzO0mMJSu3NSTJoCGFC/P+5PU8VC1C1xM8aPlSDN5UndhqIRM3aYx1GOem870YEi
MfQquAFM3HQxHdd82KdnMGZX0wuD0IQPeCoLMPIlvjz5/0a6pyIiPe3Aqt9qN9IKYfPL6DQedTsO
Re+HNg+pF9D4u8fgpXoN+KTMly449u4RhapckLpbWv6rY1wDV4upU+A7OksaELd+V3zBnQ84XyHl
Prl+F8/VaLDPDD38d/oxlrkzvLYUalM/C9T9i2IzDhSZoketD+LQd3HD8MRHJO5FZ8Is53qGLFnd
0DOh8AoMbQOEWHQnwD5ZolaxL/tvDlFu8nvzgBOZqvTwaEl7sMokI4FfGy9XpzIvnS0dzFefLEjG
f0n5hHrNMDNnUIE7lYSTzMp76+cs9kJvUXyiarZ/RgWFnM34/WxSFaKThMS0qMKylZ+E+LDxiCFf
MVt6DisLAGe4E7HxBRluI2soSeaJ3ZEun0rFGSI15PC8NJb6tMnkb2K9Csjr8XlHw2UUW1hh9tqi
puCzYI3JMOxUjNyF0cUFQdlVo2CnHYA0DjtlirqwKwa3qDKgVKpIwbhb9x7AnUgkD2oo0SkJs9sP
Q9A/opwYW3pkQQ5+YYkBPyhIYDZIfDUEb+7HzcQbQwAAAAAAAA==


--=-PSVGolPEYIQWNoDHxT37--


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 14:44:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 14:44:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622069.969208 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvIe9-00069F-D1; Tue, 24 Oct 2023 14:44:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622069.969208; Tue, 24 Oct 2023 14:44: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 1qvIe9-000698-9p; Tue, 24 Oct 2023 14:44:41 +0000
Received: by outflank-mailman (input) for mailman id 622069;
 Tue, 24 Oct 2023 14:44: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=krZT=GG=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qvIe8-000692-Aq
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 14:44:40 +0000
Received: from EUR03-DBA-obe.outbound.protection.outlook.com
 (mail-dbaeur03on20603.outbound.protection.outlook.com
 [2a01:111:f400:fe1a::603])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id dbe18bca-727b-11ee-98d5-6d05b1d4d9a1;
 Tue, 24 Oct 2023 16:44:39 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DBBPR04MB7594.eurprd04.prod.outlook.com (2603:10a6:10:203::21)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.16; Tue, 24 Oct
 2023 14:44:37 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6933.011; Tue, 24 Oct 2023
 14:44: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: dbe18bca-727b-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=H3WVIYPsUhligDOou2TOgrueHEkDNzS0sBMzRMfrbt9oootWQzpzhWEX9wgmNSHUGyy1tRnKosAbQxG3NFc3Z1PG4jeJyaeKs8j4ocOxNLDXmnC9dW+9hYfkyPaDQwS5M/GkZz3s8jvliLuNDuStAkp5waMEYaiaKLjmf6IXAESoH4gA/Ga/a2vBGlWAUJzeZKEtVp9KT5YFbLDXTkIiwIgoZtzxO5eV44BXzDEguZH+lEwzMZ/49jQVd3HlQi+2pVg3Bo43pZWI2yXuP7W+/UjUvGyamhJX1YQwtK/zvJFSA5cHIf4W74/aBqQFD9/jZgwMM5HCH/djzsvmDQJUXg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=+hJXjalN24Q7+66gwZSmLp+kTa06SRjUpzk4wy4bVfs=;
 b=UTTOK61Mvrna8+RncM6X2PkpJjlGmt6Inx0+PFinC22tVViPHmLQudYU4fppfPTEQxk5zybu8FDoce5sRkgdRGvZ2S/jYYB4HfSvtJy1N0LwWKhOcuY7nL67qiMFbtp6/91INpcKdnHFKg4VYdSgUDLRHWyslJ/fBTUJESRUVOzNA+wENWYxmdaij5Id+emvwK9xh4bAZ/sGYempZBfBTJRvsX3yboZZgTQVb3ENw7XVhR7MqmmqXO/7wnc9RMHwbuNR9SKUTUG7EzBqH+0/wQZIg5Mwzs7uoublgjG7+apL/dSjP3Q0pbdAhtzk8A767SegeA8mJR0epEBhedYu7g==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=+hJXjalN24Q7+66gwZSmLp+kTa06SRjUpzk4wy4bVfs=;
 b=zy11CWzJwxAVFvLO2/FEJ/t5aYwAWNmbQxDuEMu0JhkzQDSuSviOu9DbqBHAzEiZxV/A3WLkD579P33G4hUvn/p8UssVYpR7zDM2Ko0XTcuolkkCmZFK09H//L7TO3DGpd2ARweHEETtvHX0v0EXHP4cMH7C/xLXpqZb+wLDm8i/gVHKfCCcFcDzJlDH6pIV+eDzEBaKYh76UgviqioaYJRLLSBh0ERHT8u7PA4C14LPWbkXh5YdfUI66nMKQgcApdzyex+VNcQdsqtMc8m9ucXTAWbsc+LdqylLluNhk7GjyjAmHXQuN2vozb+OvxsSsq/xoYPtqeJSk84BoJmTbw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <511b93eb-acee-21cf-9377-5150c2e610dd@suse.com>
Date: Tue, 24 Oct 2023 16:44:35 +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/iommu_init: 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>,
 xen-devel@lists.xenproject.org
References: <cfd803a27efaa529b4e972acc1fa6a8f0e20c9c0.1698155675.git.federico.serafini@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <cfd803a27efaa529b4e972acc1fa6a8f0e20c9c0.1698155675.git.federico.serafini@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR3P281CA0093.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:a1::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_|DBBPR04MB7594:EE_
X-MS-Office365-Filtering-Correlation-Id: c0f41f37-ccb5-4f2d-c577-08dbd49fbf34
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	HWzbsQH5ENJjrkiBfjkYP8tWQthzmzJuiCca+cfZRtiQ39ebSMKeljWTJu3iLueIGuko9mTEvpftk0WF9A14/v++okidNIiQq6rjkaZBvJCeokcxyjAChK6LUQHwpJpi7IgE22eQxp5o2EPvcZz6EyPTAzK5suI5LwQKDtDLLTvh2+xtyadpaDSY8NHxcu1FkAk2Kno1TnQ5URZ8HbJ7M8oyyj8tDBnYT92Vr6ndqet7zsKTds8EXtN/bf/CdS6N7g+vJQhaYYtu3pCxGkqr7tBWl7jalzMnUcWyxnztp6KD1pkEDahPCxQ2QskyZDaSr0cmAZP9HcDunHwSej142vJ1fFZBamtjXz0JPeyGvvxEnbj938ZmIVZIccb13fxDHm6DUw4Hje9Z4LPX5VxO5cx8cjkpswRUJzssgoVFFH0H7LKf5wNXu2LDRg5vYmW0k8qVR8cI0oE3UqzTMGwNkykiBlNvuHH6tsI9V2nM5RHQGqmSuErTXbCuM5KvrQOyDE76EPLCgSKhtlVXrDm7UuNrnxGaL4AeLfUUqP0pp0e5JLtZqy8jdqDga7vV/ypYJ4HlcXPrhSNJ9ahJ4sxl20gu3kh6yMKN5KVDI3Lhd+dYXuX0Uh15Ga52JQSU3No4r7h9j0w4NpANl/J9obJ/Ig==
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)(376002)(366004)(136003)(346002)(230922051799003)(186009)(1800799009)(64100799003)(451199024)(31686004)(6512007)(6506007)(2616005)(53546011)(478600001)(38100700002)(86362001)(31696002)(36756003)(41300700001)(26005)(4744005)(2906002)(6486002)(83380400001)(8936002)(4326008)(8676002)(5660300002)(66476007)(66556008)(6916009)(66946007)(316002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?TytnOEY2ZlhmZ3VnQ0p4N0J5emwrYXoyUGorWmp5NERWdnJtR3RuT2NvQkVC?=
 =?utf-8?B?RURIcTJybmZKeHZqYWpaemxDcFlXaFQzemZPMWR5QUt3Zm5kUVlaUjhhNmw2?=
 =?utf-8?B?Mkp2LzBHVjYyRnlOK3ZMZVpPNWFvbmwraVB1SEJuTVhZT1MzQll3VHl6clJ2?=
 =?utf-8?B?Rk9FcWg2Szk1UHRxKzVhcWx5VjEveUd5bXB6T01vNVFRZXZ3eHRYbnBnUmtv?=
 =?utf-8?B?VlA3K0h5aDQvMXVmTGpDcnRZeS9pem5PbVN1YXJBNGxIWC9tRDRUcWQrd0dY?=
 =?utf-8?B?QjhkaktFZEc3c2Z2RzJyT3RzMjI2TjkwbkZ3Tnp4MWswNUw0eU41WTFTYzIy?=
 =?utf-8?B?TzgyemRCWW1yZXc4T1o2WmJPdGgxdjZwcGlOR1k4R0tPcW1pdDFySlp4S0lJ?=
 =?utf-8?B?MGd5cHE3Rnh6Ry9IMGJSMzY4aHZGSnd1YVhLMXU0dUZGd0JTSkphK3BHTkdK?=
 =?utf-8?B?bUxQRGRFWDcyTjNaNGdpM0kvelRaaUwzVDNlNkJoWGpVZGRCSFBCUFBxZ1dQ?=
 =?utf-8?B?MGRIS1dLd3ZUdlhyeW5ySzI4ZHFSOEtLZStnaUs4bDR0OTR3d0VBL1g3dnBP?=
 =?utf-8?B?QVpwS1YyUmN3WXBzQkQ0Wm96aEJ6a2Z5UC9VYnRYbDlJTUVVWUlvU3ZVT2lu?=
 =?utf-8?B?elNYeHhUMXJYQzJlc2tLellMVW9veWJrSjBkMGhLQW5oa1Z0bklkY2pYMzFS?=
 =?utf-8?B?cmpwUUQ1RUg3d3RQdmRIbmZzRzNhclI3bjd0YThDMkljeEpsVmx3NS9DSGZQ?=
 =?utf-8?B?NmNpcUFxR2ZyUHNCQzFsZFBDQjFEMnVWTkx4by9hRlBLeUZDT3JYYUJUMVVs?=
 =?utf-8?B?RXRsZkM1d1g2SDVJMWV2Z1IwTXJaVStEdWNhbHZ5NnY0TFlQRDBWSGV2SFZs?=
 =?utf-8?B?dkFsc3VzcEtiaHBFYURMUWx3c1dQUFVtNXZFZVVOVWRyL1NBTlRoN3Q1bUg2?=
 =?utf-8?B?MnJHTGNJTTFnQzZzbzMxK1JHbG8yS2lMWkE3WWpQYzRPNGVxZ3Z2T1V0RWJh?=
 =?utf-8?B?dWZpclBkbUJUaTdkVFlJWmtoY1AvUFVPSVpqQjRPMzdLL3ozRHExZjQxakhw?=
 =?utf-8?B?VzVNRkhFNHBNQlFYM3YwNHBPTFpzV1owSk55NEw3OUFndzFtRTFLek1Gdngz?=
 =?utf-8?B?U0c0TVplQU52VGN6aEdhcVZjdTdrczQ5MUVKbVl4enVPRkVzYzNGdkFtbDd4?=
 =?utf-8?B?dEZ2djdNRVRNRHhGV3p6Nk1KbnA5ZExWbHpuellXLzRLUDFzb3kycmVWamxI?=
 =?utf-8?B?UE42a3FJWk5mOVdqc2tmcnFSd0xTZk9YSU1yTUhZNlIyNytDT3V3ZEtEUmtD?=
 =?utf-8?B?ak1OYTc5ZEdlMFNIVE4vd29WdWllMUtTTVZCNmZzTFNXTXc2MTllcGZWMlpE?=
 =?utf-8?B?cndqNHNGOFVISDlFYXFwblJLZ054N3NtbmUwZ3VDak9DcUhRdncwcmlZMDF3?=
 =?utf-8?B?UWhva3hvblQ0bXBXcys0SW9PTGlEVWpjNzI0OEZ2aW1QS1ozZ0ZEU3hZNUpm?=
 =?utf-8?B?TjQ2eXVoaTFuUjdBUUFvWE1pVlQremxXekZQU3BFc0w4bzhSczllQ0QxNUMv?=
 =?utf-8?B?YkRHWVF2WDFUWGljYTlES2JjenFJVUhvMVVOenM3Z1dKcFF6N1hGSjE5N01R?=
 =?utf-8?B?Rm8vYitGcjNoRG9HTXNxUWMxSVhlbTA2aVdEbGtJa00zc2k4ZmdpMkpsa1Nx?=
 =?utf-8?B?WHVaQjlYcFhGcStBbFdXNnpHMFJaNDl0VHZncEtYMHBVOVBwYWNoVGYrRTgy?=
 =?utf-8?B?aWlLWmlSd2dHc1BLcFBJdFE3MlJrQnVvdlo2emUwY2dGeFE5c1Q2ZkdYRVZx?=
 =?utf-8?B?YWQ3aXpwZkZid0NYOUlFc016N0FuMlJKdGpnaTJGMjlhdSt0QkE3NUUwTGk0?=
 =?utf-8?B?cFhYT1NRRnBVd3VWV2VIVnJ3azNua1J4eEJMaUtvUis0S25SWlhUN2l5bXhV?=
 =?utf-8?B?YWZld2dHV0Z4VHRQRnpqeGdQZ291bFloa1k4Nm5rbkgxRHFjVVZ0UjBlWUdi?=
 =?utf-8?B?QXlubVZyZVZDMmFETG1ZRGdmNkNoNk1IU0lDQWlxdVJSbXB0alNKZTQ2aXla?=
 =?utf-8?B?UXBYZ3d0T25RMDNKTHA3MGhHOURrQmIxZlQ0ZW9rL1YwMVdNT0xPOEw0Z0JN?=
 =?utf-8?Q?dLPOorTTkg9IC1EaFU89PVj8Y?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: c0f41f37-ccb5-4f2d-c577-08dbd49fbf34
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 24 Oct 2023 14:44:37.6914
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: fop0vhqyZRvz2COxCKSWyaEybOcT4xeAQc+KB8SjWPHYU3yBs7fIGXs4E8I1p6LdcYBEuVCcn9WE6x/VvzP+YQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBBPR04MB7594

On 24.10.2023 16:01, Federico Serafini wrote:
> --- a/xen/drivers/passthrough/amd/iommu_init.c
> +++ b/xen/drivers/passthrough/amd/iommu_init.c
> @@ -692,7 +692,7 @@ static void iommu_check_ppr_log(struct amd_iommu *iommu)
>      spin_unlock_irqrestore(&iommu->lock, flags);
>  }
>  
> -static void cf_check do_amd_iommu_irq(void *unused)
> +static void cf_check do_amd_iommu_irq(void *data)
>  {
>      struct amd_iommu *iommu;
>  
> @@ -702,6 +702,11 @@ static void cf_check do_amd_iommu_irq(void *unused)
>          return;
>      }
>  
> +    /*
> +     * Formal parameter is deliberately unused.
> +     */
> +    (void) data;

Besides me thinking that the original way of expressing things was more
clear (and still even machine-recognizable), there are (nit) also style
issues here: The comment is malformed and there shouldn't be a blank
between the cast operator and the expression it applies to.

Jan


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 14:47:58 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 14:47:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622071.969218 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvIhG-0007rq-QD; Tue, 24 Oct 2023 14:47:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622071.969218; Tue, 24 Oct 2023 14:47: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 1qvIhG-0007rj-My; Tue, 24 Oct 2023 14:47:54 +0000
Received: by outflank-mailman (input) for mailman id 622071;
 Tue, 24 Oct 2023 14:47: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=+b+W=GG=gmail.com=xadimgnik@srs-se1.protection.inumbo.net>)
 id 1qvIhF-0007rZ-IE
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 14:47:53 +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 4dfbe145-727c-11ee-9b0e-b553b5be7939;
 Tue, 24 Oct 2023 16:47:50 +0200 (CEST)
Received: by mail-wr1-x433.google.com with SMTP id
 ffacd0b85a97d-32003aae100so3308515f8f.0
 for <xen-devel@lists.xenproject.org>; Tue, 24 Oct 2023 07:47:50 -0700 (PDT)
Received: from [192.168.6.66] (54-240-197-238.amazon.com. [54.240.197.238])
 by smtp.gmail.com with ESMTPSA id
 o6-20020a5d62c6000000b0032196c508e3sm10007458wrv.53.2023.10.24.07.47.48
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 24 Oct 2023 07:47: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: 4dfbe145-727c-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698158870; x=1698763670; 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=8nIDkXcK1L2pA5qIavXRP+zGfeQrahvnDQA7z6M+ogc=;
        b=bqrCiANFCC62DP38r5s8fMMowhpH5AKOtuj9RPlZ2xRMsX1z0yTfX/yuHuNJJfMF+G
         YAzxDSj+2vmB4lc1gpNkkMjQjkUYsw5OD0J4jUDhOTk/2Nrkccq6qYoxEaAmoKIRbdXM
         izm0Febz0W4NAQXo8HvYotw3NpilhLRV1PJpyc2/a67TOnCyUYq2TwnGMNdTdIet9ytH
         v2W2XsI4l2gRpoLhzPVUQIhDAtFz06v3PdMwSDGdskHiMDXa6I7LAN9N1p2GyqJ3g0U6
         nSsrHF4teRuACCh2G1XgdpZScHQh2ApqaAw3EQHLk/9MreaeRjfNFvhG0shsqSXUG2j8
         Asdg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698158870; x=1698763670;
        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=8nIDkXcK1L2pA5qIavXRP+zGfeQrahvnDQA7z6M+ogc=;
        b=REskEdeFhP3fyNbSalh54eW6KU9otqKCCexqO/K/gPCJIq+ClYTqHOtdfn34aX5fr4
         fcnD52eVLfk8snCD4R+L7rdfo9IjHqEgIn3xDx0uDavKTFJp3cRhMolKNpdQVn0MZh/t
         hEIFg6I45DZ13ZXHHd85T+dfP5eJXsjdRxynEXt17Edia0Pt7hVJHPFyHmXkwUw6CyPx
         /x2fWcPorMIMgI3fmQJ693EHkHV5efhFVn5O7mVLZmV366w/6/DqBRD/CoJDf3s+Mj1Q
         XeMmVxIlVnwko1CetQZyH3uueJsx+sUOnp36di/BsqYOIfJogbkogcyzF7fDdxplNTqB
         5M+g==
X-Gm-Message-State: AOJu0YxRJdzSULbV55qUydaFCFC4oYkHAJ18+g8UqS+9KgKvoRoSTOSM
	SEKsQEWHyFVobv2bEuXTBDQ=
X-Google-Smtp-Source: AGHT+IHokB7bxOsKiiCbpn6zP3VDajwGmSFhddjNbyDlX+FWui44aH6ltyKiqVw/F9MOHwgDod1ZZw==
X-Received: by 2002:adf:a499:0:b0:32d:a3f7:f0dd with SMTP id g25-20020adfa499000000b0032da3f7f0ddmr14062432wrb.25.1698158869738;
        Tue, 24 Oct 2023 07:47:49 -0700 (PDT)
From: Paul Durrant <xadimgnik@gmail.com>
X-Google-Original-From: Paul Durrant <paul@xen.org>
Message-ID: <53e3e3e3-7bdc-4102-b833-bcacd496a31f@xen.org>
Date: Tue, 24 Oct 2023 15:47:47 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Reply-To: paul@xen.org
Subject: Re: [PATCH 2/4] hw/xen: update Xen PV NIC to XenDevice model
Content-Language: en-US
To: David Woodhouse <dwmw2@infradead.org>, qemu-devel@nongnu.org
Cc: "Michael S. Tsirkin" <mst@redhat.com>,
 Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
 Paolo Bonzini <pbonzini@redhat.com>,
 Richard Henderson <richard.henderson@linaro.org>,
 Eduardo Habkost <eduardo@habkost.net>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Anthony Perard <anthony.perard@citrix.com>, Jason Wang
 <jasowang@redhat.com>, xen-devel@lists.xenproject.org
References: <20231017182545.97973-1-dwmw2@infradead.org>
 <20231017182545.97973-3-dwmw2@infradead.org>
Organization: Xen Project
In-Reply-To: <20231017182545.97973-3-dwmw2@infradead.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 17/10/2023 19:25, David Woodhouse wrote:
> From: David Woodhouse <dwmw@amazon.co.uk>
> 
> Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
> ---
>   hw/net/meson.build        |   2 +-
>   hw/net/trace-events       |   9 +
>   hw/net/xen_nic.c          | 426 +++++++++++++++++++++++++++++---------
>   hw/xenpv/xen_machine_pv.c |   1 -
>   4 files changed, 342 insertions(+), 96 deletions(-)
> 
> diff --git a/hw/net/meson.build b/hw/net/meson.build
> index 2632634df3..f64651c467 100644
> --- a/hw/net/meson.build
> +++ b/hw/net/meson.build
> @@ -1,5 +1,5 @@
>   system_ss.add(when: 'CONFIG_DP8393X', if_true: files('dp8393x.c'))
> -system_ss.add(when: 'CONFIG_XEN', if_true: files('xen_nic.c'))
> +system_ss.add(when: 'CONFIG_XEN_BUS', if_true: files('xen_nic.c'))
>   system_ss.add(when: 'CONFIG_NE2000_COMMON', if_true: files('ne2000.c'))
>   
>   # PCI network cards
> diff --git a/hw/net/trace-events b/hw/net/trace-events
> index 3abfd65e5b..ee56acfbce 100644
> --- a/hw/net/trace-events
> +++ b/hw/net/trace-events
> @@ -482,3 +482,12 @@ dp8393x_receive_oversize(int size) "oversize packet, pkt_size is %d"
>   dp8393x_receive_not_netcard(void) "packet not for netcard"
>   dp8393x_receive_packet(int crba) "Receive packet at 0x%"PRIx32
>   dp8393x_receive_write_status(int crba) "Write status at 0x%"PRIx32
> +
> +# xen_nic.c
> +xen_netdev_realize(int idx, const char *info) "idx %u info '%s'"
> +xen_netdev_unrealize(int idx) "idx %u"
> +xen_netdev_create(int idx) "idx %u"
> +xen_netdev_destroy(int idx) "idx %u"
> +xen_netdev_disconnect(int idx) "idx %u"
> +xen_netdev_connect(int idx, unsigned int tx, unsigned int rx, int port) "idx %u tx %u rx %u port %u"
> +xen_netdev_frontend_changed(const char *idx, int state) "idx %s state %d"
> diff --git a/hw/net/xen_nic.c b/hw/net/xen_nic.c
> index 9bbf6599fc..84914c329c 100644
> --- a/hw/net/xen_nic.c
> +++ b/hw/net/xen_nic.c
> @@ -20,6 +20,11 @@
>    */
>   
>   #include "qemu/osdep.h"
> +#include "qemu/cutils.h"
> +#include "qemu/qemu-print.h"
> +#include "qapi/qmp/qdict.h"
> +#include "qapi/error.h"
> +
>   #include <sys/socket.h>
>   #include <sys/ioctl.h>
>   #include <sys/wait.h>
> @@ -27,18 +32,26 @@
>   #include "net/net.h"
>   #include "net/checksum.h"
>   #include "net/util.h"
> -#include "hw/xen/xen-legacy-backend.h"
> +
> +#include "hw/xen/xen-backend.h"
> +#include "hw/xen/xen-bus-helper.h"
> +#include "hw/qdev-properties.h"
> +#include "hw/qdev-properties-system.h"
>   
>   #include "hw/xen/interface/io/netif.h"
> +#include "hw/xen/interface/io/xs_wire.h"
> +
> +#include "trace.h"
>   
>   /* ------------------------------------------------------------- */
>   
>   struct XenNetDev {
> -    struct XenLegacyDevice      xendev;  /* must be first */
> -    char                  *mac;
> +    struct XenDevice      xendev;  /* must be first */
> +    XenEventChannel       *event_channel;
> +    int                   dev;
>       int                   tx_work;
> -    int                   tx_ring_ref;
> -    int                   rx_ring_ref;
> +    unsigned int          tx_ring_ref;
> +    unsigned int          rx_ring_ref;
>       struct netif_tx_sring *txs;
>       struct netif_rx_sring *rxs;
>       netif_tx_back_ring_t  tx_ring;
> @@ -47,6 +60,13 @@ struct XenNetDev {
>       NICState              *nic;
>   };
>   
> +typedef struct XenNetDev XenNetDev;
> +
> +#define TYPE_XEN_NET_DEVICE "xen-net-device"
> +OBJECT_DECLARE_SIMPLE_TYPE(XenNetDev, XEN_NET_DEVICE)
> +
> +#define xen_pv_printf(a, n, ...) qemu_printf(__VA_ARGS__)

Why define this...

> +
>   /* ------------------------------------------------------------- */
>   
>   static void net_tx_response(struct XenNetDev *netdev, netif_tx_request_t *txp, int8_t st)
> @@ -68,7 +88,8 @@ static void net_tx_response(struct XenNetDev *netdev, netif_tx_request_t *txp, i
>       netdev->tx_ring.rsp_prod_pvt = ++i;
>       RING_PUSH_RESPONSES_AND_CHECK_NOTIFY(&netdev->tx_ring, notify);
>       if (notify) {
> -        xen_pv_send_notify(&netdev->xendev);
> +        xen_device_notify_event_channel(XEN_DEVICE(netdev),
> +                                        netdev->event_channel, NULL);
>       }
>   
>       if (i == netdev->tx_ring.req_cons) {
> @@ -104,8 +125,9 @@ static void net_tx_error(struct XenNetDev *netdev, netif_tx_request_t *txp, RING
>   #endif
>   }
>   
> -static void net_tx_packets(struct XenNetDev *netdev)
> +static bool net_tx_packets(struct XenNetDev *netdev)
>   {
> +    bool done_something = false;
>       netif_tx_request_t txreq;
>       RING_IDX rc, rp;
>       void *page;
> @@ -122,6 +144,7 @@ static void net_tx_packets(struct XenNetDev *netdev)
>               }
>               memcpy(&txreq, RING_GET_REQUEST(&netdev->tx_ring, rc), sizeof(txreq));
>               netdev->tx_ring.req_cons = ++rc;
> +            done_something = true;
>   
>   #if 1
>               /* should not happen in theory, we don't announce the *
> @@ -151,7 +174,7 @@ static void net_tx_packets(struct XenNetDev *netdev)
>                   continue;
>               }
>   
> -            xen_pv_printf(&netdev->xendev, 3,
> +            if (0) qemu_printf(//&netdev->xendev, 3,

... and then not use it here? Perhaps the 'if (0)' ugliness can go in 
the macro too.

>                             "tx packet ref %d, off %d, len %d, flags 0x%x%s%s%s%s\n",
>                             txreq.gref, txreq.offset, txreq.size, txreq.flags,
>                             (txreq.flags & NETTXF_csum_blank)     ? " csum_blank"     : "",
> @@ -159,8 +182,8 @@ static void net_tx_packets(struct XenNetDev *netdev)
>                             (txreq.flags & NETTXF_more_data)      ? " more_data"      : "",
>                             (txreq.flags & NETTXF_extra_info)     ? " extra_info"     : "");
>   
> -            page = xen_be_map_grant_ref(&netdev->xendev, txreq.gref,
> -                                        PROT_READ);
> +            page = xen_device_map_grant_refs(&netdev->xendev, &txreq.gref, 1,
> +                                             PROT_READ, NULL);
>               if (page == NULL) {
>                   xen_pv_printf(&netdev->xendev, 0,
>                                 "error: tx gref dereference failed (%d)\n",
> @@ -181,7 +204,8 @@ static void net_tx_packets(struct XenNetDev *netdev)
>                   qemu_send_packet(qemu_get_queue(netdev->nic),
>                                    page + txreq.offset, txreq.size);
>               }
> -            xen_be_unmap_grant_ref(&netdev->xendev, page, txreq.gref);
> +            xen_device_unmap_grant_refs(&netdev->xendev, page, &txreq.gref, 1,
> +                                        NULL);
>               net_tx_response(netdev, &txreq, NETIF_RSP_OKAY);
>           }
>           if (!netdev->tx_work) {
> @@ -190,6 +214,7 @@ static void net_tx_packets(struct XenNetDev *netdev)
>           netdev->tx_work = 0;
>       }
>       g_free(tmpbuf);
> +    return done_something;
>   }
>   
>   /* ------------------------------------------------------------- */
> @@ -212,14 +237,15 @@ static void net_rx_response(struct XenNetDev *netdev,
>           resp->status = (int16_t)st;
>       }
>   
> -    xen_pv_printf(&netdev->xendev, 3,
> +    if (0) qemu_printf(//&netdev->xendev, 3,

Same here.

>                     "rx response: idx %d, status %d, flags 0x%x\n",
>                     i, resp->status, resp->flags);
>   
>       netdev->rx_ring.rsp_prod_pvt = ++i;
>       RING_PUSH_RESPONSES_AND_CHECK_NOTIFY(&netdev->rx_ring, notify);
>       if (notify) {
> -        xen_pv_send_notify(&netdev->xendev);
> +        xen_device_notify_event_channel(XEN_DEVICE(netdev),
> +                                        netdev->event_channel, NULL);
>       }
>   }
>   
> @@ -232,7 +258,7 @@ static ssize_t net_rx_packet(NetClientState *nc, const uint8_t *buf, size_t size
>       RING_IDX rc, rp;
>       void *page;
>   
> -    if (netdev->xendev.be_state != XenbusStateConnected) {
> +    if (netdev->rx_ring.sring == NULL) {

Why not a straight swap for xen_device_backend_get_state()? Hard to see 
whether there any hidden side effects of this change otherwise.

>           return -1;
>       }
>   
> @@ -252,7 +278,8 @@ static ssize_t net_rx_packet(NetClientState *nc, const uint8_t *buf, size_t size
>       memcpy(&rxreq, RING_GET_REQUEST(&netdev->rx_ring, rc), sizeof(rxreq));
>       netdev->rx_ring.req_cons = ++rc;
>   
> -    page = xen_be_map_grant_ref(&netdev->xendev, rxreq.gref, PROT_WRITE);
> +    page = xen_device_map_grant_refs(&netdev->xendev, &rxreq.gref, 1,
> +                                     PROT_WRITE, NULL);
>       if (page == NULL) {
>           xen_pv_printf(&netdev->xendev, 0,
>                         "error: rx gref dereference failed (%d)\n",
> @@ -261,7 +288,7 @@ static ssize_t net_rx_packet(NetClientState *nc, const uint8_t *buf, size_t size
>           return -1;
>       }
>       memcpy(page + NET_IP_ALIGN, buf, size);
> -    xen_be_unmap_grant_ref(&netdev->xendev, page, rxreq.gref);
> +    xen_device_unmap_grant_refs(&netdev->xendev, page, &rxreq.gref, 1, NULL);
>       net_rx_response(netdev, &rxreq, NETIF_RSP_OKAY, NET_IP_ALIGN, size, 0);
>   
>       return size;
> @@ -275,139 +302,350 @@ static NetClientInfo net_xen_info = {
>       .receive = net_rx_packet,
>   };
>   
> -static int net_init(struct XenLegacyDevice *xendev)
> +static void xen_netdev_realize(XenDevice *xendev, Error **errp)
>   {
> -    struct XenNetDev *netdev = container_of(xendev, struct XenNetDev, xendev);
> +    ERRP_GUARD();
> +    XenNetDev *netdev = XEN_NET_DEVICE(xendev);
>   
> -    /* read xenstore entries */
> -    if (netdev->mac == NULL) {
> -        netdev->mac = xenstore_read_be_str(&netdev->xendev, "mac");
> -    }
> +    qemu_macaddr_default_if_unset(&netdev->conf.macaddr);
>   
> -    /* do we have all we need? */
> -    if (netdev->mac == NULL) {
> -        return -1;
> -    }
> -
> -    if (net_parse_macaddr(netdev->conf.macaddr.a, netdev->mac) < 0) {
> -        return -1;
> -    }
> +    xen_device_frontend_printf(xendev, "mac", "%02x:%02x:%02x:%02x:%02x:%02x",
> +                               netdev->conf.macaddr.a[0],
> +                               netdev->conf.macaddr.a[1],
> +                               netdev->conf.macaddr.a[2],
> +                               netdev->conf.macaddr.a[3],
> +                               netdev->conf.macaddr.a[4],
> +                               netdev->conf.macaddr.a[5]);
>   
>       netdev->nic = qemu_new_nic(&net_xen_info, &netdev->conf,
> -                               "xen", NULL, netdev);
> +                               object_get_typename(OBJECT(xendev)),
> +                               DEVICE(xendev)->id, netdev);
>   
> -    qemu_set_info_str(qemu_get_queue(netdev->nic),
> -                      "nic: xenbus vif macaddr=%s", netdev->mac);
> +    qemu_format_nic_info_str(qemu_get_queue(netdev->nic), netdev->conf.macaddr.a);
>   
>       /* fill info */
> -    xenstore_write_be_int(&netdev->xendev, "feature-rx-copy", 1);
> -    xenstore_write_be_int(&netdev->xendev, "feature-rx-flip", 0);
> +    xen_device_backend_printf(xendev, "feature-rx-copy", "%u", 1);
> +    xen_device_backend_printf(xendev, "feature-rx-flip", "%u", 0);
>   
> -    return 0;
> +    trace_xen_netdev_realize(netdev->dev, qemu_get_queue(netdev->nic)->info_str);
>   }
>   
> -static int net_connect(struct XenLegacyDevice *xendev)
> +static bool net_event(void *_xendev)
>   {
> -    struct XenNetDev *netdev = container_of(xendev, struct XenNetDev, xendev);
> -    int rx_copy;
> +    XenNetDev *netdev = XEN_NET_DEVICE(_xendev);
> +    bool done_something;
>   
> -    if (xenstore_read_fe_int(&netdev->xendev, "tx-ring-ref",
> -                             &netdev->tx_ring_ref) == -1) {
> -        return -1;
> +    done_something = net_tx_packets(netdev);
> +    qemu_flush_queued_packets(qemu_get_queue(netdev->nic));
> +    return done_something;
> +}
> +
> +static bool xen_netdev_connect(XenDevice *xendev, Error **errp)
> +{
> +    XenNetDev *netdev = XEN_NET_DEVICE(xendev);
> +    unsigned int port, rx_copy;
> +
> +    if (xen_device_frontend_scanf(xendev, "tx-ring-ref", "%u",
> +                                  &netdev->tx_ring_ref) != 1) {
> +        error_setg(errp, "failed to read tx-ring-ref");
> +        return false;
>       }
> -    if (xenstore_read_fe_int(&netdev->xendev, "rx-ring-ref",
> -                             &netdev->rx_ring_ref) == -1) {
> -        return 1;
> +
> +    if (xen_device_frontend_scanf(xendev, "rx-ring-ref", "%u",
> +                                  &netdev->rx_ring_ref) != 1) {
> +        error_setg(errp, "failed to read rx-ring-ref");
> +        return false;
>       }
> -    if (xenstore_read_fe_int(&netdev->xendev, "event-channel",
> -                             &netdev->xendev.remote_port) == -1) {
> -        return -1;
> +
> +    if (xen_device_frontend_scanf(xendev, "event-channel", "%u",
> +                                  &port) != 1) {
> +        error_setg(errp, "failed to read event-channel");
> +        return false;
>       }
>   
> -    if (xenstore_read_fe_int(&netdev->xendev, "request-rx-copy", &rx_copy) == -1) {
> +    if (xen_device_frontend_scanf(xendev, "request-rx-copy", "%u",
> +                                  &rx_copy) != 1) {
>           rx_copy = 0;
>       }
>       if (rx_copy == 0) {
> -        xen_pv_printf(&netdev->xendev, 0,
> -                      "frontend doesn't support rx-copy.\n");
> -        return -1;
> +        error_setg(errp, "frontend doesn't support rx-copy");
> +        return false;
>       }
>   
> -    netdev->txs = xen_be_map_grant_ref(&netdev->xendev,
> -                                       netdev->tx_ring_ref,
> -                                       PROT_READ | PROT_WRITE);
> +    netdev->txs = xen_device_map_grant_refs(xendev,
> +                                            &netdev->tx_ring_ref, 1,
> +                                            PROT_READ | PROT_WRITE,
> +                                            errp);
>       if (!netdev->txs) {
> -        return -1;
> +        error_prepend(errp, "failed to map tx grant ref: ");
> +        return false;
>       }
> -    netdev->rxs = xen_be_map_grant_ref(&netdev->xendev,
> -                                       netdev->rx_ring_ref,
> -                                       PROT_READ | PROT_WRITE);
> +
> +    netdev->rxs = xen_device_map_grant_refs(xendev,
> +                                            &netdev->rx_ring_ref, 1,
> +                                            PROT_READ | PROT_WRITE,
> +                                            errp);
>       if (!netdev->rxs) {
> -        xen_be_unmap_grant_ref(&netdev->xendev, netdev->txs,
> -                               netdev->tx_ring_ref);
> -        netdev->txs = NULL;
> -        return -1;
> +        error_prepend(errp, "failed to map rx grant ref: ");
> +        return false;
>       }
> +
>       BACK_RING_INIT(&netdev->tx_ring, netdev->txs, XEN_PAGE_SIZE);
>       BACK_RING_INIT(&netdev->rx_ring, netdev->rxs, XEN_PAGE_SIZE);
>   
> -    xen_be_bind_evtchn(&netdev->xendev);
> +    netdev->event_channel = xen_device_bind_event_channel(xendev, port,
> +                                                          net_event,
> +                                                          netdev,
> +                                                          errp);
> +    if (!netdev->event_channel) {
> +        return false;
> +    }
>   
> -    xen_pv_printf(&netdev->xendev, 1, "ok: tx-ring-ref %d, rx-ring-ref %d, "
> -                  "remote port %d, local port %d\n",
> -                  netdev->tx_ring_ref, netdev->rx_ring_ref,
> -                  netdev->xendev.remote_port, netdev->xendev.local_port);
> +    trace_xen_netdev_connect(netdev->dev, netdev->tx_ring_ref,
> +                             netdev->rx_ring_ref, port);
>   
>       net_tx_packets(netdev);
> -    return 0;
> +    return true;
>   }
>   
> -static void net_disconnect(struct XenLegacyDevice *xendev)
> +static void xen_netdev_disconnect(XenDevice *xendev, Error **errp)
>   {
> -    struct XenNetDev *netdev = container_of(xendev, struct XenNetDev, xendev);
> +    XenNetDev *netdev = XEN_NET_DEVICE(xendev);
> +
> +    trace_xen_netdev_disconnect(netdev->dev);
>   
> -    xen_pv_unbind_evtchn(&netdev->xendev);
> +    netdev->tx_ring.sring = NULL;
> +    netdev->rx_ring.sring = NULL;
>   
> +    if (netdev->event_channel) {
> +        xen_device_unbind_event_channel(xendev, netdev->event_channel,
> +                                        errp);
> +        netdev->event_channel = NULL;
> +    }
>       if (netdev->txs) {
> -        xen_be_unmap_grant_ref(&netdev->xendev, netdev->txs,
> -                               netdev->tx_ring_ref);
> +        xen_device_unmap_grant_refs(xendev, netdev->txs,
> +                                    &netdev->tx_ring_ref, 1, errp);
>           netdev->txs = NULL;
>       }
>       if (netdev->rxs) {
> -        xen_be_unmap_grant_ref(&netdev->xendev, netdev->rxs,
> -                               netdev->rx_ring_ref);
> +        xen_device_unmap_grant_refs(xendev, netdev->rxs,
> +                                    &netdev->rx_ring_ref, 1, errp);
>           netdev->rxs = NULL;
>       }
>   }
>   
> -static void net_event(struct XenLegacyDevice *xendev)
> +/* -------------------------------------------------------------------- */
> +
> +
> +static void xen_netdev_frontend_changed(XenDevice *xendev,
> +                                       enum xenbus_state frontend_state,
> +                                       Error **errp)
>   {
> -    struct XenNetDev *netdev = container_of(xendev, struct XenNetDev, xendev);
> -    net_tx_packets(netdev);
> -    qemu_flush_queued_packets(qemu_get_queue(netdev->nic));
> +    ERRP_GUARD();
> +    enum xenbus_state backend_state = xen_device_backend_get_state(xendev);
> +
> +    trace_xen_netdev_frontend_changed(xendev->name, frontend_state);
> +
> +    switch (frontend_state) {
> +    case XenbusStateInitialised:

I don't think that's really a valid state for a network frontend. Linux 
netback just ignores it.

   Paul

> +    case XenbusStateConnected:
> +        if (backend_state == XenbusStateConnected) {
> +            break;
> +        }
> +
> +        xen_netdev_disconnect(xendev, errp);
> +        if (*errp) {
> +            break;
> +        }
> +
> +        if (!xen_netdev_connect(xendev, errp)) {
> +            xen_netdev_disconnect(xendev, NULL);
> +            xen_device_backend_set_state(xendev, XenbusStateClosing);
> +            break;
> +        }
> +
> +        xen_device_backend_set_state(xendev, XenbusStateConnected);
> +        break;
> +
> +    case XenbusStateClosing:
> +        xen_device_backend_set_state(xendev, XenbusStateClosing);
> +        break;
> +
> +    case XenbusStateClosed:
> +    case XenbusStateUnknown:
> +        xen_netdev_disconnect(xendev, errp);
> +        if (*errp) {
> +            break;
> +        }
> +
> +        xen_device_backend_set_state(xendev, XenbusStateClosed);
> +        break;
> +
> +    default:
> +        break;
> +    }
>   }
>   
> -static int net_free(struct XenLegacyDevice *xendev)
> +static char *xen_netdev_get_name(XenDevice *xendev, Error **errp)
>   {
> -    struct XenNetDev *netdev = container_of(xendev, struct XenNetDev, xendev);
> +    XenNetDev *netdev = XEN_NET_DEVICE(xendev);
> +
> +    if (netdev->dev == -1) {
> +        XenBus *xenbus = XEN_BUS(qdev_get_parent_bus(DEVICE(xendev)));
> +        char fe_path[XENSTORE_ABS_PATH_MAX + 1];
> +        int idx = (xen_mode == XEN_EMULATE) ? 0 : 1;
> +        char *value;
> +
> +        /* Theoretically we could go up to INT_MAX here but that's overkill */
> +        while (idx < 100) {
> +            snprintf(fe_path, sizeof(fe_path),
> +                     "/local/domain/%u/device/vif/%u",
> +                     xendev->frontend_id, idx);
> +            value = qemu_xen_xs_read(xenbus->xsh, XBT_NULL, fe_path, NULL);
> +            if (!value) {
> +                if (errno == ENOENT) {
> +                    netdev->dev = idx;
> +                    goto found;
> +                }
> +                error_setg(errp, "cannot read %s: %s", fe_path,
> +                           strerror(errno));
> +                return NULL;
> +            }
> +            free(value);
> +            idx++;
> +        }
> +        error_setg(errp, "cannot find device index for netdev device");
> +        return NULL;
> +    }
> + found:
> +    return g_strdup_printf("%u", netdev->dev);
> +}
> +
> +static void xen_netdev_unrealize(XenDevice *xendev)
> +{
> +    XenNetDev *netdev = XEN_NET_DEVICE(xendev);
> +
> +    trace_xen_netdev_unrealize(netdev->dev);
> +
> +    /* Disconnect from the frontend in case this has not already happened */
> +    xen_netdev_disconnect(xendev, NULL);
>   
>       if (netdev->nic) {
>           qemu_del_nic(netdev->nic);
> -        netdev->nic = NULL;
>       }
> -    g_free(netdev->mac);
> -    netdev->mac = NULL;
> -    return 0;
>   }
>   
>   /* ------------------------------------------------------------- */
>   
> -struct XenDevOps xen_netdev_ops = {
> -    .size       = sizeof(struct XenNetDev),
> -    .flags      = DEVOPS_FLAG_NEED_GNTDEV,
> -    .init       = net_init,
> -    .initialise    = net_connect,
> -    .event      = net_event,
> -    .disconnect = net_disconnect,
> -    .free       = net_free,
> +static Property xen_netdev_properties[] = {
> +    DEFINE_NIC_PROPERTIES(XenNetDev, conf),
> +    DEFINE_PROP_INT32("idx", XenNetDev, dev, -1),
> +    DEFINE_PROP_END_OF_LIST(),
>   };
> +
> +static void xen_netdev_class_init(ObjectClass *class, void *data)
> +{
> +    DeviceClass *dev_class = DEVICE_CLASS(class);
> +    XenDeviceClass *xendev_class = XEN_DEVICE_CLASS(class);
> +
> +    xendev_class->backend = "qnet";
> +    xendev_class->device = "vif";
> +    xendev_class->get_name = xen_netdev_get_name;
> +    xendev_class->realize = xen_netdev_realize;
> +    xendev_class->frontend_changed = xen_netdev_frontend_changed;
> +    xendev_class->unrealize = xen_netdev_unrealize;
> +    set_bit(DEVICE_CATEGORY_NETWORK, dev_class->categories);
> +    dev_class->user_creatable = true;
> +
> +    device_class_set_props(dev_class, xen_netdev_properties);
> +}
> +
> +static const TypeInfo xen_net_type_info = {
> +    .name = TYPE_XEN_NET_DEVICE,
> +    .parent = TYPE_XEN_DEVICE,
> +    .instance_size = sizeof(XenNetDev),
> +    .class_init = xen_netdev_class_init,
> +};
> +
> +static void xen_net_register_types(void)
> +{
> +    type_register_static(&xen_net_type_info);
> +}
> +
> +type_init(xen_net_register_types)
> +
> +/* Called to instantiate a XenNetDev when the backend is detected. */
> +static void xen_net_device_create(XenBackendInstance *backend,
> +                                  QDict *opts, Error **errp)
> +{
> +    ERRP_GUARD();
> +    XenBus *xenbus = xen_backend_get_bus(backend);
> +    const char *name = xen_backend_get_name(backend);
> +    XenDevice *xendev = NULL;
> +    unsigned long number;
> +    const char *macstr;
> +    XenNetDev *net;
> +    MACAddr mac;
> +
> +    if (qemu_strtoul(name, NULL, 10, &number) || number >= INT_MAX) {
> +        error_setg(errp, "failed to parse name '%s'", name);
> +        goto fail;
> +    }
> +
> +    trace_xen_netdev_create(number);
> +
> +    macstr = qdict_get_try_str(opts, "mac");
> +    if (macstr == NULL) {
> +        error_setg(errp, "no MAC address found");
> +        goto fail;
> +    }
> +
> +    if (net_parse_macaddr(mac.a, macstr) < 0) {
> +        error_setg(errp, "failed to parse MAC address");
> +        goto fail;
> +    }
> +
> +    xendev = XEN_DEVICE(qdev_new(TYPE_XEN_NET_DEVICE));
> +    net = XEN_NET_DEVICE(xendev);
> +
> +    net->dev = number;
> +    memcpy(&net->conf.macaddr, &mac, sizeof(mac));
> +
> +    if (qdev_realize_and_unref(DEVICE(xendev), BUS(xenbus), errp)) {
> +        xen_backend_set_device(backend, xendev);
> +        return;
> +    }
> +
> +    error_prepend(errp, "realization of net device %lu failed: ",
> +                  number);
> +
> + fail:
> +    if (xendev) {
> +        object_unparent(OBJECT(xendev));
> +    }
> +}
> +
> +static void xen_net_device_destroy(XenBackendInstance *backend,
> +                                       Error **errp)
> +{
> +    ERRP_GUARD();
> +    XenDevice *xendev = xen_backend_get_device(backend);
> +    XenNetDev *netdev = XEN_NET_DEVICE(xendev);
> +
> +    trace_xen_netdev_destroy(netdev->dev);
> +
> +    object_unparent(OBJECT(xendev));
> +}
> +
> +static const XenBackendInfo xen_net_backend_info  = {
> +    .type = "qnet",
> +    .create = xen_net_device_create,
> +    .destroy = xen_net_device_destroy,
> +};
> +
> +static void xen_net_register_backend(void)
> +{
> +    xen_backend_register(&xen_net_backend_info);
> +}
> +
> +xen_backend_init(xen_net_register_backend);
> diff --git a/hw/xenpv/xen_machine_pv.c b/hw/xenpv/xen_machine_pv.c
> index 17cda5ec13..764ca5c4fa 100644
> --- a/hw/xenpv/xen_machine_pv.c
> +++ b/hw/xenpv/xen_machine_pv.c
> @@ -55,7 +55,6 @@ static void xen_init_pv(MachineState *machine)
>       }
>   
>       xen_be_register("vfb", &xen_framebuffer_ops);
> -    xen_be_register("qnic", &xen_netdev_ops);
>   
>       /* configure framebuffer */
>       if (vga_interface_type == VGA_XENFB) {



From xen-devel-bounces@lists.xenproject.org Tue Oct 24 14:48:51 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 14:48:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622075.969228 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvIiA-0000N4-7T; Tue, 24 Oct 2023 14:48:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622075.969228; Tue, 24 Oct 2023 14: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 1qvIiA-0000Mx-4l; Tue, 24 Oct 2023 14:48:50 +0000
Received: by outflank-mailman (input) for mailman id 622075;
 Tue, 24 Oct 2023 14:48: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=krZT=GG=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qvIi8-0000Mp-UL
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 14:48: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-flk1.inumbo.com (Halon) with ESMTPS
 id 6f630715-727c-11ee-9b0e-b553b5be7939;
 Tue, 24 Oct 2023 16:48:46 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PA4PR04MB7951.eurprd04.prod.outlook.com (2603:10a6:102:ca::18)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.9; Tue, 24 Oct
 2023 14:48:44 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6933.011; Tue, 24 Oct 2023
 14:48: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: 6f630715-727c-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=A5ucksy5SFTiegWqvatL5o3cwXL0Azg+FJOEY4tNG2/MNMR/ozTXOXDv2oiXROb2J/Pw8EYGs4ihdkUdwSK3gvjoZGQpG0H5NmS4iyNQmpRh8f9cfTTFs6PntaB+w+/ARsMuG8kB5c9njPcfAL/ak0qR/PAx/66dhfUPwq2bI6lJxgxdl0iBaC+C5GYCz9VHRDShj8wq7KD9dxz1/pTmZm/JAcz1DVzr3uWUNUnzP/vFOp3jqKf64uSkz9sFHic+WlF3W+cHgg66PYSoUbVZ2BvOOojpxeH7HodeWNZDMBdTGthltxn0gGI+szo0yXZfFwqQKSKBrXA0v8pOnWqb5Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=7ImfW75Ej0CJDLxayEutRsb0cgLLbHpD24FhnXr/aTA=;
 b=lSHtdDtDP8ldyOvCuCl3yMQnt4QWPb5vpYGsiBzKRXDgnGO80RmvI8heh2jA9crKp73ek/GHql5vDZ0G+VtyFKyNTUsO2Exum5jhAMtlYuVUc5YbG66xoaHu/dOIkfWfmg7gHj8k9ZfyoJQqfyllltCWYvobA0BkI+PFTa03mydqQHgePijIJJIKGnLakop2XfLzCBI6HxfT2LUYJvdJX9wUxgGaXwRrJskKT8qEkZsvatdsXnghk10ZOCIM0RNqDUInEH7gXWDmd3NtR73zQaXjY8SL2bkTIZbFa2Toq7TMdR4Ih/ZHbHZaQ38CzkV2GysHU80CyVJAMuCVm2ThKA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=7ImfW75Ej0CJDLxayEutRsb0cgLLbHpD24FhnXr/aTA=;
 b=peQy8eaNZZC3FNa94PyRwWpvVbExj5cNhyByE8Q9uGowuK7orUAjUwxdkMhsKqlfhcBQkhKJVcAjE029IJqiIrdi1SZ5vSYzqLYpit2/FA/4cf9/ruumx+eBy6ryoNtAx/lRL+C5kqNed/ySK7zpf3/Y18P9tBM6ODCzPUPpULrPpBSbgOZ9o+VPDnMHHgMAtQid2Q5rHNnvwtjV8OL137xUMAENBat6hwjfhZPyZDl6Q9MAVeysr6OTHnVxQjlzKk6UIfAiGzGUi1WPee8bIm51NV7gOZrW1iFmVYfsBBQ0lqXUA6fuqp6txCEelaWMF8WV5voHNka3TA5KfrjaUg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <60e26ad6-7366-2604-e9b2-ed401cee6e73@suse.com>
Date: Tue, 24 Oct 2023 16:48:42 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [RFC 1/4] x86/ioemul: address MISRA C:2012 Rule 9.3
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.cooper3@citrix.com, roger.pau@citrix.com, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <cover.1698155925.git.nicola.vetrini@bugseng.com>
 <76c9f78179a8bb5b4f99b34f163933394f79066c.1698155925.git.nicola.vetrini@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <76c9f78179a8bb5b4f99b34f163933394f79066c.1698155925.git.nicola.vetrini@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_|PA4PR04MB7951:EE_
X-MS-Office365-Filtering-Correlation-Id: d1e4adb8-71a9-422c-bec2-08dbd4a05207
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	OeCf8rwEznwwlMSI5v17MBb2CGF+RUIzXtxQC2b2w+YgpNInx9bii7fDXKc4BtTb8dG4LDw4bZhttnETQ7iiHEmUQYR5rtHMzWuESLuhFBtEWltuhUDiu3dEhpA22MZeP1Es9J7wyJvqTrWOUwnm5uudyT2ktHDNoMAMOcxxY0UIIDUrcRScNoJ7Fzf5cR9+2MmRIa9ZK0i4bw5D0xYlaX90SZ+I1fPAuXEpzlvcKpDV1cU2ylregWMBttR7jk3fEj3+nt2YwtZpEQYdU+eGnTXZhAxBSG9SDSha4XFkUpGpCCcRBytMdCO9HLZmRalQiqQQnNZl/YTjLHugNuQ/FLPv5K45PVKXGfr0v2G72/HDyvQmJcWDDbyYnd24I1MmdQ3v1FqTsDk2lhOGIGLwafuFq/Pn5Dq+lOf7dEtUbsIWeSX1xdBkJ04k4ewUYMHRWKR+ij7pjVTGIvIbN/faVeeX7+sx1mvczwQCP2iUZL3F/K6fOe/YCrWN4EoSzA1LDWNtalvit70/vxBJahDeIWcY/XBTgjPTHlF3bvZje8beh1+JiIwsjD5SKgxRHegXuTzKl4smMNaSw6DvHUoIix9brsxfsY6e2j6Uemx5Uo+fhBhlxw3BTad6a8IjQWnbyiHTKsJo2HY8BoqqISs9uA==
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)(136003)(366004)(230922051799003)(186009)(64100799003)(451199024)(1800799009)(31686004)(7416002)(2906002)(41300700001)(38100700002)(6506007)(36756003)(2616005)(4326008)(31696002)(6512007)(53546011)(86362001)(26005)(8936002)(478600001)(6486002)(8676002)(5660300002)(66946007)(316002)(66476007)(66556008)(6916009)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?OWZmUXZ4Sm15RjRrQTcvY3N1RzkxZFNzbXJ4T3JPMzJnVU41VS9wTkdmdjll?=
 =?utf-8?B?RlQ4NTRJOUhZK2JGcmJpTUYvampHMWVuaHRWbDA3ajNaVXZkS1IzM3hWTk9M?=
 =?utf-8?B?QmxPdWJKZXJhL2RncFcrcGxRalhPZS9NeFdQMmRWcmZRQU83MDZyZ1RkZ3NT?=
 =?utf-8?B?Q0FiSmtjMlc5YmF5Y3dNN2ZkSkVpb203M3htNnZtaGdHN0ROZXBCelFVbllZ?=
 =?utf-8?B?bVFSVkliT3A2dzlCdUpucUxrMTVpeVpQTnZiQlFjaEpDQlZ6U3VhTzFnNndU?=
 =?utf-8?B?aXVOQUpIS2kwa21GbUFuMWNjdkJubG82OXBKSkNhdHZuVFI4dkQyRm9KUk1T?=
 =?utf-8?B?eTFGQWVCMG42V0Yzd1NKZHF0dngvSXNrUVp3cy9QbTB4ZTByaTNGdm1EeTdP?=
 =?utf-8?B?UUcwc2VJNXFLK0N0Nms2K1FEajJQTVN4WlFqRWF2dXQ4dGd5YUFNVGduZEs1?=
 =?utf-8?B?M01MVndzV003OFJFM2QvdkJmRU9WbGNWcGN5eG1sNkN2eWp1NUhzdkZOeEJv?=
 =?utf-8?B?b21YWVZaMmVEZFBWL0VUN3B3Tm83SG5vMVNMRklYVUhEZVY0V2FZMUhlTndF?=
 =?utf-8?B?cm5Rbi8xTXI5aGFZZS9XczNydnNocHY5aU9sME5BdXBITEpkbFNReG9UUzE2?=
 =?utf-8?B?OXdDU25CK010WE5VczhmeUxDekNsVG5HbExmUXlxSGVLdmpBT1lZRVM0VnEz?=
 =?utf-8?B?aER0ZisrenJabEwrcXpSalY4bWRJQ2JQNmd3bHA1dWNkODNSVVkyYUkxZmlx?=
 =?utf-8?B?VE9SRXdZc292SnFrb3V3SnU4K0RZbit0QXd1TnZVMm1Ldm1rbnd5aEp4eWlt?=
 =?utf-8?B?ZE9uUEdEZnVIb0xGMTJtbHBDOXp2c3UrNFJKVGVRcDY2NUx0Q25QT2xSMWZG?=
 =?utf-8?B?dnVZVjhpdGNlYXlmUGhORXpEZzRwdWJ6MVJHdXd1NE9sWWEvS0lOY2ZJWk9W?=
 =?utf-8?B?QjlNanQvN3AxS1ZkZkFrMUhJbnMvNFNmVEl5L21vN0phcUg1WWJVWDNuazV6?=
 =?utf-8?B?UjdWU2U5TUJwYWczOC9kcG9kZkJERVFGK3JiTmhnM0w2bVlrNGVlK2pXYjVM?=
 =?utf-8?B?eDNKbGlUSGNITmRkYzY3TGgycm8vRVpEcHVKaUx6M3JWc3FRNDFsU3lGOExs?=
 =?utf-8?B?Rm1lMkFRQjJFTUllT1U0WWJNZVVPWlFGKzR0NUozc2tTRkZuUHgrVVQ5YjNw?=
 =?utf-8?B?aGs3cW5ITU5TbE9SOGp3ekFSOFVxZCsvbFl4bm41aTVPTG5IeS9pbkdUdHI1?=
 =?utf-8?B?QzNCOFg1aEN4SjMxbk5NTEFYRlNubGFXanppcjRiWWd0QzF4YitZeWQ3V0l1?=
 =?utf-8?B?U29XNW13YzE3TXFoUkJrMGRUa2ZFcEh5alJ2WTcxN2ZwOWRLUGNGVzRpaGFV?=
 =?utf-8?B?RS83cU1IaHlOMlZqbDNrbW9kUWJOanYvdi9jYnBqU3IvVkc1WlJPRnlRTWEr?=
 =?utf-8?B?Z1NWcGt1NXJHQXVZdVB6Z2Q3MisreFZabEpqTGFnNittZlZVVzEvd3JvckQz?=
 =?utf-8?B?bitYL3REZ3d4d2xpbjhvYWpKdExadFdYY0RpM0Z3MEwvZ2hMajVnQXRNcUpY?=
 =?utf-8?B?cEVxRmdTZVdMS3dybTJWLzZCUmNQWUcvbHhPc25RVHFvKzFrMUMwZ2t0M094?=
 =?utf-8?B?THZQbStFUTBJTDFkeGMzb00zeFdPWm1JSTF5aU8xZXZjQXQ2RTkvOGJkYnZj?=
 =?utf-8?B?YnhkSnV0T1lpTEFaUjFsbGFVeFFuVk40blFRTFVjSE1wSitTdXlYOE9CSE41?=
 =?utf-8?B?dmNlMi8rVWptelpmWFVIUnFtYlpsMEpmYVc4V3J6cVR6eDRyMlR5L3Z0TFpF?=
 =?utf-8?B?a3hMeHVNVUlURElsWk9nd0ttdzlwUlJSUjArNjIyZXhLd2h1M1ZTU3RRdVB2?=
 =?utf-8?B?R29hU0YxbWpnK0ZGS080cWI1MHgyMitKWTNmRWtpNmpRQ0RpU3NNS2Y0bHZX?=
 =?utf-8?B?Yk9TZ0dzV09qU3ZTSzN3VDhRbnhjYWs1ZWNMSlI2ejhTTzc2VFFlMWdIRk5J?=
 =?utf-8?B?ZE8rWUVCNTFnaXgyd3lmK0x0Nmk5eVA5WUs5SzhIVDJZTVJvQ2EvRUl4UnB0?=
 =?utf-8?B?c3c2eWxwNk8rU1pTNmo3R2s4eDFPaWw0UHh6c05NUTRoRUZXOCtiaTdSbjA2?=
 =?utf-8?Q?1+7we+AzHZ+QKSAPMcxhCOucT?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: d1e4adb8-71a9-422c-bec2-08dbd4a05207
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 24 Oct 2023 14:48:44.0145
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: jdY+UiMDkAjSf5BI3mhTo0dC+YwmTPt2XcAiLRejROSo4JeUh2ehU7kRtAUcrxEby57/t/eaOmDP+5FZEKId6g==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR04MB7951

On 24.10.2023 16:31, Nicola Vetrini wrote:
> Partially explicitly initalized .matches arrays result in violations
> of Rule 9.3; this is resolved by using designated initializers,
> which is permitted by the Rule.
> 
> Mechanical changes.
> 
> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>

While not overly bad, I'm still not really seeing the improvement.
Yet aiui changes induced by Misra are supposed to improve things in
some direction?

Jan

> --- a/xen/arch/x86/ioport_emulate.c
> +++ b/xen/arch/x86/ioport_emulate.c
> @@ -44,57 +44,57 @@ static const struct dmi_system_id __initconstrel ioport_quirks_tbl[] = {
>      {
>          .ident = "HP ProLiant DL3xx",
>          .matches = {
> -            DMI_MATCH(DMI_BIOS_VENDOR, "HP"),
> -            DMI_MATCH(DMI_PRODUCT_NAME, "ProLiant DL3"),
> +            [0] = DMI_MATCH(DMI_BIOS_VENDOR, "HP"),
> +            [1] = DMI_MATCH(DMI_PRODUCT_NAME, "ProLiant DL3"),
>          },
>      },
>      {
>          .ident = "HP ProLiant DL5xx",
>          .matches = {
> -            DMI_MATCH(DMI_BIOS_VENDOR, "HP"),
> -            DMI_MATCH(DMI_PRODUCT_NAME, "ProLiant DL5"),
> +            [0] = DMI_MATCH(DMI_BIOS_VENDOR, "HP"),
> +            [1] = DMI_MATCH(DMI_PRODUCT_NAME, "ProLiant DL5"),
>          },
>      },
>      {
>          .ident = "HP ProLiant DL7xx",
>          .matches = {
> -            DMI_MATCH(DMI_BIOS_VENDOR, "HP"),
> -            DMI_MATCH(DMI_PRODUCT_NAME, "ProLiant DL7"),
> +            [0] = DMI_MATCH(DMI_BIOS_VENDOR, "HP"),
> +            [1] = DMI_MATCH(DMI_PRODUCT_NAME, "ProLiant DL7"),
>          },
>      },
>      {
>          .ident = "HP ProLiant ML3xx",
>          .matches = {
> -            DMI_MATCH(DMI_BIOS_VENDOR, "HP"),
> -            DMI_MATCH(DMI_PRODUCT_NAME, "ProLiant ML3"),
> +            [0] = DMI_MATCH(DMI_BIOS_VENDOR, "HP"),
> +            [1] = DMI_MATCH(DMI_PRODUCT_NAME, "ProLiant ML3"),
>          },
>      },
>      {
>          .ident = "HP ProLiant ML5xx",
>          .matches = {
> -            DMI_MATCH(DMI_BIOS_VENDOR, "HP"),
> -            DMI_MATCH(DMI_PRODUCT_NAME, "ProLiant ML5"),
> +            [0] = DMI_MATCH(DMI_BIOS_VENDOR, "HP"),
> +            [1] = DMI_MATCH(DMI_PRODUCT_NAME, "ProLiant ML5"),
>          },
>      },
>      {
>          .ident = "HP ProLiant BL2xx",
>          .matches = {
> -            DMI_MATCH(DMI_BIOS_VENDOR, "HP"),
> -            DMI_MATCH(DMI_PRODUCT_NAME, "ProLiant BL2"),
> +            [0] = DMI_MATCH(DMI_BIOS_VENDOR, "HP"),
> +            [1] = DMI_MATCH(DMI_PRODUCT_NAME, "ProLiant BL2"),
>          },
>      },
>      {
>          .ident = "HP ProLiant BL4xx",
>          .matches = {
> -            DMI_MATCH(DMI_BIOS_VENDOR, "HP"),
> -            DMI_MATCH(DMI_PRODUCT_NAME, "ProLiant BL4"),
> +            [0] = DMI_MATCH(DMI_BIOS_VENDOR, "HP"),
> +            [1] = DMI_MATCH(DMI_PRODUCT_NAME, "ProLiant BL4"),
>          },
>      },
>      {
>          .ident = "HP ProLiant BL6xx",
>          .matches = {
> -            DMI_MATCH(DMI_BIOS_VENDOR, "HP"),
> -            DMI_MATCH(DMI_PRODUCT_NAME, "ProLiant BL6"),
> +            [0] = DMI_MATCH(DMI_BIOS_VENDOR, "HP"),
> +            [1] = DMI_MATCH(DMI_PRODUCT_NAME, "ProLiant BL6"),
>          },
>      },
>      { }
> --
> 2.34.1



From xen-devel-bounces@lists.xenproject.org Tue Oct 24 14:51:24 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 14:51:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622078.969238 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvIkY-0001um-KQ; Tue, 24 Oct 2023 14:51:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622078.969238; Tue, 24 Oct 2023 14:51: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 1qvIkY-0001uf-HW; Tue, 24 Oct 2023 14:51:18 +0000
Received: by outflank-mailman (input) for mailman id 622078;
 Tue, 24 Oct 2023 14:51: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=krZT=GG=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qvIkX-0001uX-BF
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 14:51:17 +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 c88df102-727c-11ee-98d5-6d05b1d4d9a1;
 Tue, 24 Oct 2023 16:51:16 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PAXPR04MB8336.eurprd04.prod.outlook.com (2603:10a6:102:1c5::7)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.10; Tue, 24 Oct
 2023 14:51:13 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6933.011; Tue, 24 Oct 2023
 14:51: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: c88df102-727c-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Tc48KJZzm6zJeoaZEz8QpYVgtdzlXGoWSTUG91TeaO14Doks5Naw22zA8M0atHihoMxVhniYlox8RM0wKZxrfaaiTL63We5U5/P9yBJzF7Llzjd3tccTrkcBdb4JceV/ilvXoouBv5QAw36k/GR7n2Pu3bdrF5nuwL+E0DGHBRxOhQEEGROhCdYsmLKKyZZLvi+TihAy6V9blE2xh1Y5wDm0dzHaZW0JuMoM3OqsFHzSM26UJ2mFEq4kPTUkAqYKCfSyyL3N0YbCpW36ipH1CfrvK0b5ilRjs1+9hdKAFnWLKOWEy6XvdVw5YX+LxpkNtogAWXB+0PuP+A1CvT9dow==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=OaqokqBs1sqkVVHGOQEuQyUqzcWXAss3qc+lgbuhxdo=;
 b=MEN01i3+MQM3T1fDyd4xPrM86v4k11afVz6U0ypkw7BwNg/mCJuvIQsA9ixSoO5hspO4Ma6dELoCx9jxCxSCcVkSIl6zT0g4anQDeKzz+cMfOCdx/RgACER1lAO8Qx25JbZfEm2DaajXr2LwhRT+IR2K/sJOfoXpBtoxCVByI2Nu0qbvMfzH/t9iqpEMzbtJM7w9lujOnNff7sEKTqY7U17xG6ms/NlCSRw5IfE7DQAm/2+jryIPtAr4Oq1yhAEh2gJ16Q/KV4NavdU2AmCCp2pztpfa7ZJZDIxLPeyoSlzINd3WbU4WkKf0JSXlhh2b7oTefxlItgPNp1mofsS/og==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=OaqokqBs1sqkVVHGOQEuQyUqzcWXAss3qc+lgbuhxdo=;
 b=fI1tY1LljznlR6PvlFmEto96OTMQyyNxDWwRpGNsW/NZcqJltZTf+xViDq97sOCLqdfogk1zSbhGGUVM80hgO2jzGbHxTtqVwfgwZnA3KmkYwxvkZ7adQF6C5oWN2GPgtb3Fbd3LKUyg36+/MaTVDUFVc204F7dKDbuK8bhXDRymPB2jp/EtXgRWLqsF/gkv1tpbWHmieVqmQGTXyzEMQF0J+2eU4zcOOAn+D+PF5cu4TiwhAO2TRnXxYrP3sIVP6bYD7u3y/pDFESbAq4IoX44QOVGpB5LnNdlauxUEjB/xd3mOzLG6f7Aj+rA3mbBCeoLTz118u6WiZKCYHE3kBg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <ce4472a1-c3bc-563f-876f-87fbc4a02a53@suse.com>
Date: Tue, 24 Oct 2023 16:51:11 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [RFC 4/4] amd/iommu: fully initialize array in
 'flush_command_buffer'
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.cooper3@citrix.com, roger.pau@citrix.com,
 xen-devel@lists.xenproject.org
References: <cover.1698155925.git.nicola.vetrini@bugseng.com>
 <b772842fccacc4fb108ff515bdcad6f2877b6b12.1698155925.git.nicola.vetrini@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <b772842fccacc4fb108ff515bdcad6f2877b6b12.1698155925.git.nicola.vetrini@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0039.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:92::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_|PAXPR04MB8336:EE_
X-MS-Office365-Filtering-Correlation-Id: 8fe82c53-2a06-44df-f323-08dbd4a0ab54
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	kzvM+lBP5MtQro9iLcCerlRTlIS88NTS69hfUtweDvAxLWzbKMgOs6Fa9KtE/NcXxBVwUl0WnQFjbVMX7F7j54IzfPWAvUBhkFI23n6hSDfKgbIGLeUDOInsdJQlquLerO1lajhbj6meETIzN0WU3pSMhAS3iyIyi0apGZ86zyeKpCYRGEVswiaJeEjPzShhySQz9diqoVyeSONkgC8uJVuf0OnR5ULjldim+k+owGr+IMQ9IY6uSz8o+1lGrl60h2AZPf18Pi4uFT/1bEVdX/4oqm0o0qMXPCttn0zAwGMHHrXIZ/YVeP8E4DCQ8gsqzU790f9pSF0PyvFJw7aO/Ex8RsnzMmyJqDnYaLOOULpC3gLpMWeGn6v+Kv+cJVRrvg8QQU7PDM5p5M6pY0oZzwJrJiEV58VhjiD30vYdYYQ8g+Ya/EIYEXibo0+lQv9qA9SIuHwG+J+FQPVkf1zoQ5ifnWop7YFHcEKfB61ogCo9NOx7Dk2nLtgR33vLvz8Xt7ctqj8Tf1KvJi2cR8c26KGNAbbxfdZERrFdgSUvcQ37/X309Wn5TsamBaUalHZKpdAN6aROHNJnLSdPpb6+naMoMeTopqC+EXe8gfXZaW9CH7PRcblh+TTXDX/qrPeW5qaauMtaxhnsnyjm8hZ2nQ==
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)(396003)(39860400002)(230922051799003)(186009)(451199024)(1800799009)(64100799003)(2906002)(31696002)(5660300002)(6486002)(478600001)(8936002)(4326008)(8676002)(41300700001)(316002)(66946007)(66476007)(6916009)(66556008)(6506007)(38100700002)(36756003)(558084003)(31686004)(26005)(2616005)(6512007)(53546011)(86362001)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?UzI2SzFwZFQwUHlHWmFTV1ZSSkJOamJFeUxvK2draTJWL08xUUYxNWlSdEMv?=
 =?utf-8?B?UDZMUURjb0xFU0hJZ2dTMXVvejBmMnJ2UkxrVkFHQWxmYUhWcTFZMXQ5YWxq?=
 =?utf-8?B?QWFoTk9UbkdzZ0Z5MmZvTXZITk1hMDkxSTRDdmozUURMYXUxbW1XMStGNmE5?=
 =?utf-8?B?N2k3SHpwY1lMVXNZalNyUUFzRk5GVkFZNEg4MGt4bmU5WksxQ1YrbFhZcGlF?=
 =?utf-8?B?RlAwTXFaQTh6VTI4azY4RnlvL0hVRlhTVzg4Y0hjdHpsYUxPMEdQNFNKak9B?=
 =?utf-8?B?N2RQTDFRRUZFUlNtLzlEaE1TUm1XQXFDYlh4WmU5OU9iTzFoc1M4Rkc1U2lh?=
 =?utf-8?B?amRBNWdud2k2MGYyWnBsK3ZDR0hZcldicW5MQ09iL3lSYU92Z3N3SDhjNHhp?=
 =?utf-8?B?cHpWK1U0S2E2ZFh0UDREQWFpcHNsTU1jUGE5djQrWTlueHpkY0VGREt4a2Fo?=
 =?utf-8?B?bjkxSk5SV3Q0ZUxFaTVMNHBoM29USUdvY0tlenV0Q2dMcnpUNmFMT2kxWkhP?=
 =?utf-8?B?T2F0a0ZCUG9VQ2NQWWJxNktlN3YrK2dWVXA1SUJHTENNUW5pcG9GS3BsVDRL?=
 =?utf-8?B?ZWNISEtiNms0T2wxKythbjVtclJmbEJJY2JPdkZhOWdWb3ZSWGx1bnlNS0V0?=
 =?utf-8?B?ajZOYXNDMHFEZGpGMGtIRDJOdlY0d0ZCdmRKMTNqNFhXMDl1aWNlbjFaSjZ0?=
 =?utf-8?B?bm9XM2NnUHk0UlRRaGxLdXBMZWQ0eUdyRTBLUy9xblIvTm9CUEtQSWpjVk5L?=
 =?utf-8?B?bWZDZzdZb1FkbGpXZGIvQU9yN01WSFEvV2MvQnFxVVV2TnNBaXcrUHBBUFZa?=
 =?utf-8?B?NjV4Z0cxeU1vQ1RiRTJwQk10V1czRTNrM0U2VDBrS3V0WXJHOUhWTW16ZlFW?=
 =?utf-8?B?SzRBNnlWSnAzNGppa2FsU0I0OHpndlBWak5aTnJ3VlNibmVXL3lkU3d3YTJX?=
 =?utf-8?B?NzhHbjlhNDhEQzB0c2QvM1VMd1BOSk9oNlk0U0xEQThrcnRVcTVUN1Q5VlA3?=
 =?utf-8?B?cnZOajY3V2JZT0IwZG9BSDY0L1U1THRqWnM0U1o1UUJYWW5RN0c3M1prRlpN?=
 =?utf-8?B?eDZLT1pzSTF1cEdLaWNObDRHalRxL1Y0K0lXd0JDbmlOMURCNVRQOXRQY1Ez?=
 =?utf-8?B?azFiTHRqNGlnZ3pDdEFDMG5vbitIbVpzR0hTNWNSYk9kWGJ0bWxwTFpQQjZG?=
 =?utf-8?B?M1FqM0Y2NmNJcnhya1c5cFZwTWptUm5BWGlNSUExSUF4dWUxVENZbTZWVzB2?=
 =?utf-8?B?SzBQcmRwWVREVXF4Y0FmVGVHVDVKeTdlSkg4YW9Ca2VYYVJiZGFERXBDYkZK?=
 =?utf-8?B?RjZsNXdNdUFaZlVjR3pjY0RlSmtCYU9CMm5ibWpuT3hqOEYxREtYMEFFTXdP?=
 =?utf-8?B?UisxSTVnSmEySUpuOG1lZlA4YkJmRU1TbzF1ZGc0STVDdUU2bk1tQVM1VjNE?=
 =?utf-8?B?NkdHVytLVTVSMmhzODBlT1ZibFRPcUNsYmFsdklwQXZtd1l6QmpjMmFvWTdu?=
 =?utf-8?B?cmVXMHRPbWdKR1JiWE1pa2pWTHBkY08yQU1aSnVxSVJCMVRycmd3QXMrcWJj?=
 =?utf-8?B?NElicGI4a2l0S3dCaUowZUVPY0dPdTkwbVNSbWFJZFprSlowL0VHaXZSNi9W?=
 =?utf-8?B?VnRYVmxWQzFYdmYxSkptenlJUEZLRG84dmwzVUUvWG9PVGU0Ri91NlFWWWJs?=
 =?utf-8?B?Y0IvSW9ES2Q5Z3doMjNjQkYzbVBreU1XRExhYkVpWGpkZzZJM2N2aVJiU0NC?=
 =?utf-8?B?VG9pVk1JWlRzbEtyNExGQjQyd0psNWJUNlNPc3M5R3JMOHM2QVRmTXNyV3or?=
 =?utf-8?B?bU1QWUc4SFdJMTVWVFRpOVhwdWF2WWxaaktla0NJZEpFMXdJaU1TWnlkbWtF?=
 =?utf-8?B?b3VRUkozUVRWQ0x3ZGtzSWFkOEk3eHdOa2dxTXB1end5YnBhNE16Kyt6by9p?=
 =?utf-8?B?UUlIWFF3c05rcFpCcnpwdUVkSVhYOWpzR2pkSlZneDdvNFFiaTlzNkdVc2VH?=
 =?utf-8?B?RmVCRnFCaS93RVc1NHlzaS9GemdvS1dvdk4rQk9PUUJVckdodEFMUDdzWjEy?=
 =?utf-8?B?cGp0c21hR2ErWjlia2M4aDJranh1YXo2bjBjS2pnMmVHSjd1WC9RQnhiczV3?=
 =?utf-8?Q?zS0kz4KbcGeA+Ae7VYTJEAH9l?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 8fe82c53-2a06-44df-f323-08dbd4a0ab54
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 24 Oct 2023 14:51:13.8695
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: DMBqRaEAGLMP7sixRzWd4PVvNfleV9oqfj/ic+CsThcvzmaEmmoNrjDs/h2znbx3gb3XLzbRQ0giAJsVoJpUcg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB8336

On 24.10.2023 16:31, Nicola Vetrini wrote:
> Fully explicit initialization of the cmd array resolves a violation of
> MISRA C:2012 Rule 9.3.
> 
> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>

While I'm not overly happy, we accepted the rule, so
Acked-by: Jan Beulich <jbeulich@suse.com>



From xen-devel-bounces@lists.xenproject.org Tue Oct 24 14:54:03 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 14:54:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622084.969248 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvInB-0002fh-3I; Tue, 24 Oct 2023 14:54:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622084.969248; Tue, 24 Oct 2023 14:54: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 1qvInA-0002fa-VK; Tue, 24 Oct 2023 14:54:00 +0000
Received: by outflank-mailman (input) for mailman id 622084;
 Tue, 24 Oct 2023 14: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=JtWs=GG=citrix.com=prvs=654e64a5b=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qvIn8-0002fO-Tl
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 14:53: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 271a1db0-727d-11ee-98d5-6d05b1d4d9a1;
 Tue, 24 Oct 2023 16:53:56 +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;
 24 Oct 2023 10:53:53 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by BLAPR03MB5554.namprd03.prod.outlook.com (2603:10b6:208:290::16)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.33; Tue, 24 Oct
 2023 14:53:51 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::acf0:ce2b:1634:5aee]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::acf0:ce2b:1634:5aee%6]) with mapi id 15.20.6933.011; Tue, 24 Oct 2023
 14:53: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: 271a1db0-727d-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1698159236;
  h=from:to:cc:subject:date:message-id:
   content-transfer-encoding:mime-version;
  bh=ydfUgI7OL2QhFNk+VZp7KnOdMneSICIy2rXDdd+Pz4U=;
  b=Bz5k+/N63Qub/SPTz55CSOjcb3mns2obA0PZFjzKh4AzC56Pu79iwMxd
   OS/etb7W+tw+Ti5MJ/hdDcCkfIS77hR6LVOqX8dpLuSMHWY6d3VSIaWQp
   FftaV7PkrowgK0gweFzGWsusgj8j1V36ezzFJZ7Hsk0ixiYilOLadNXNt
   U=;
X-CSE-ConnectionGUID: 0UYFrCghSXKYj0Y2MMYeQg==
X-CSE-MsgGUID: AXtfemz+RGORZBdyY9J6KA==
X-IronPort-RemoteIP: 104.47.59.169
X-IronPort-MID: 126493008
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:fo/9WakRB8zU/iY3kiW62BPo5gynJ0RdPkR7XQ2eYbSJt1+Wr1Gzt
 xIYWGvTa6zfamb9f9B0b4618EtQucfRndNlSwU6pHxnQyMWpZLJC+rCIxarNUt+DCFhoGFPt
 JxCN4aafKjYaleG+39B55C49SEUOZmgH+e6UKicfHkpGWeIcQ954Tp7gek1n4V0ttawBgKJq
 LvartbWfVSowFaYCEpNg064gE0p5K+aVA8w5ARkPqkT5gOGzRH5MbpETU2PByqgKmVrNrbSq
 9brlNmR4m7f9hExPdKp+p6TnpoiG+O60aCm0xK6aoD66vRwjnVaPpUTbZLwXXx/mTSR9+2d/
 f0W3XCGpaXFCYWX8AgVe0Ew/yiTpsSq8pefSZS0mZT7I0Er7xIAahihZa07FdRwxwp5PY1B3
 aQlGR4XRR+DvNKV8bDje7NJo/UuFca+aevzulk4pd3YJdAPZMmZBonvu5pf1jp2gd1SF/HDY
 cZfcSBocBnLfxxIPBEQFY46m+CrwHL4dlW0qnrM/fZxvzeVkV03iea8WDbWUoXiqcF9hEGXq
 3iA523kKhobKMae2XyO9XfEaurnxHmlBNNJTOXonhJsqHSj2mIeDQ9Vb3Scm8uThl+PCvABC
 GVBr0LCqoB3riRHVOLVTxC+5XKJoBMYc95RCPEhrhGAzLLO5ASUDXRCSSROAPQkvsIrQT0h1
 neSgsjkQzdotdW9Vna15rqS6zSoNkAowXQqYCYFSU4J5oflqYRq1BbXFI89Qeiyk8H/Hiz2z
 3aSti8iir4PjMkNkaKm4VTAhDHqrZ/MJuIo2jjqsquexlsRTOaYi0aAsDA3Md4owF6lc2S8
IronPort-HdrOrdr: A9a23:uN7rCqm+EMaMklbT9GXXe99kxDfpDfIV3DAbv31ZSRFFG/Fw9v
 re5cjzsCWftN9/YgBEpTntAtjjfZqYz+8X3WBzB9aftWvdyQ+VxehZhOOI/9SjIU3DH4VmpM
 BdmsZFebvN5JtB4foSIjPULz/t+ra6GWmT69vj8w==
X-Talos-CUID: =?us-ascii?q?9a23=3AK14pMmtemAJvtjNhWozh9bpw6It9T0zz1lzfI3S?=
 =?us-ascii?q?IKldrEIzPbHqh9Zprxp8=3D?=
X-Talos-MUID: 9a23:iuSy3QjHlmCVRMJ8RgM+YMMpHfd07amrGgM3vrI8ieOIJB0hGWm+pWHi
X-IronPort-AV: E=Sophos;i="6.03,248,1694750400"; 
   d="scan'208";a="126493008"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=dfNVPry+U0fiJJJTQyuu0UoIiU9QvOXtKjlaSmtd4JsX30wPobH+jrvy37dpnKyhFfL5Bxt/guwoc/w7Ikn8E4qvGstG1t5gnvXUz8cBP6FcBJrRVyexvKwIDTRw9lapH4OEMrXbAmC8Bb//BNeOUkmc+eKyLKC+JGmvFYX75XNC22sjpXOxccFsyR+ldJlp7+1YIU5C5NeJu38t4s9UffRrOGsoc7ChpQBTsHOqYcnNFz7cvtTTxtMuCyuijBEOHr+O2ZEEz2XyVwzNmNIYAzcypP+QAlHN3KXdKsu5ikaxIlK8EEAleoaJwE7bikbKwhXYvxkG1kySHI4BC7hbbQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=2HSyzWlTE/SNTqD/am7gdAgKLTJRO0Or0pCFadzKOp4=;
 b=Ypc1rfNGqyI/FvpNuBsxstU82QNyv1TW/1Vz96ow/+ME9UQI5vV/GPQQkyGNfFZUUARrkpWcwjzoSnw2/3gz96PHsZqZqKZkqxKitNymykQ1FzD9RC6qLGPDqIlEE7KTOcpzJLFrF1lFe3c/y7RqndlZnjpJ57+WDTrqfVRkE4CowehBwGlB+lOP9IKl3NWgG0ziaLRMwZ6eybba258Fmvo9sYutcNsrzkKVW8VN/7j8AXLAqxAfR6gAmKBMkvVp18tavUxBrzQYSQFbaCw0aEd5VHkoalkLVJL305K2+s+VD/qlWKy7/9c+YuKgUqZeNZnsqJRaHD64xxHG843/hA==
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=2HSyzWlTE/SNTqD/am7gdAgKLTJRO0Or0pCFadzKOp4=;
 b=Vj+llzf+eSxBi/bPPbhgeYkMGfiq0Za3ZlYVI/Y+h2/iFXBAm58rNJd1zczD3ZvI2QmrN2HAbr0HaCus/Z6JmBvHKszxGPmYVbX3eRCnk+bO4b5DhLxpybDdOIUGGVeaHnIDYg2Z20keQq+AtR1AgHF6Yqy/dBSd/GK5abCb6ug=
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 v3] x86/i8259: do not assume interrupts always target CPU0
Date: Tue, 24 Oct 2023 16:53:40 +0200
Message-ID: <20231024145340.49829-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: LO2P265CA0512.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:13b::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_|BLAPR03MB5554:EE_
X-MS-Office365-Filtering-Correlation-Id: f14e526a-8521-4765-c1ee-08dbd4a108da
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:
	Na2X4/XCue8CHVac4ml/BWdzu6oilBDjSxLrvIxBWNa49ElEfstxgl7dywZsTx0SeLW0S3n4ZHRYsP+ezBsMf3SSJKl1MDlxnxsAOxhre3LYDmJ5vedPlPz5NKBpA4XFCUl2yrEPyLUCTHCVG1SauR2N8caohDacBxZbDtpMSTDnb1WWDXXxw9nZ9/X5UM4L4vXgKH2bPH8L1OAdtQ0JpXz2pSF7eI1+KwXleg5gloI2+mKiGk4vIP3DHqX1OOI93IS4A6woXnHHkJu1SzdyK0ks/Y3lPE14Z+YPIxkryO41DeoymDQe6KLRWw6OetPWymNUjfF844IBh5vG3TTFmDDYcObYVzj/Zki2vP7LcqxWsOeauLSf9JWLHV+X87cpVN5Y5XrYkRwpRZbiZ1MF4GdhzbpDOC+smm+xz70u9jn4tt/1j8Wc2wZb9Kcm/XUb6LwmpsRdZzW8MGd02Pxx5oW6RtSMsqoQE2HNKSR9fsLzx42TkGhWkZJDPcgfusLPxnSMF1tfMcOJYW3cJU10ICC1qehEEgfd0FazVPjoSMrc26BpefG1kswiHvsAgeWX
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)(39860400002)(136003)(346002)(376002)(366004)(396003)(230922051799003)(1800799009)(186009)(64100799003)(451199024)(38100700002)(6512007)(316002)(54906003)(66476007)(66946007)(6916009)(66556008)(2906002)(478600001)(36756003)(86362001)(6486002)(6666004)(82960400001)(6506007)(1076003)(83380400001)(4326008)(8936002)(5660300002)(26005)(41300700001)(2616005)(8676002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?aHgxSkQrN0VQVHJHSjNrR0ducC9OQVZOWkdWL1F3UThsM0tCVW4vRHc3Z2Yy?=
 =?utf-8?B?L1E3NktWdWpJMDRPRGdFeEhEdEZGTkIxT2QveG1TQ2F1RDBSM3RPU0V5V1g0?=
 =?utf-8?B?UlRlSFg3bjNCU0Q3L2plRmpMelpnSkg2by85bkxsa3B5bHR3Q0dQeEJ2eVdU?=
 =?utf-8?B?TjcvdkpLZlEvaEwyVHdwWVUrb3I3YnpGV0xONFh1enRVRE8vRS9YTjNJaWtu?=
 =?utf-8?B?L0tqNmRMSGpxTWw1dUtOa2p5NWhJYUZOT2dXaExSbUtWQUNPUXM3dnFiUUdm?=
 =?utf-8?B?U0s4VzdhcTduaTFpcDVMMTJmNXBtZ3lvZ0FVNUYwMnh4a2ZKcERsS2RTU244?=
 =?utf-8?B?bnJVMnhxeTFhVTk1Wm9NcUxsQlJpc05hdXd5cDJ4b0Rjd3I4ZFpGSldvdXpU?=
 =?utf-8?B?L0xJZ1c2c2RuejBoa0diZ1ZNbXM1aWRuS3dabTV0WktnT1B5d2pjQ1lxM2ZG?=
 =?utf-8?B?Nyt4aERta3RTcDVDUjM5cnZKeDJuUkhTYXhxVkdzOXZZa0t3di9JeHJkQ01N?=
 =?utf-8?B?SUpibjM1c0lyUHpaYUJ2dVU4ZlJ1eEg4dVNXRUdQRFVYMTdRcmVJVzVNb3Iy?=
 =?utf-8?B?cjNqc1hGS0xmdWI0clVDNmZ4RmVKSVRLd3BOVGxta2RmU0lnenRkQmZvMGQ1?=
 =?utf-8?B?QzV0UG5PdkEyM0RGWDVoWDNneEdHT1N3eXhqMHk3a3BKZTRjdFlTbmp6cmNW?=
 =?utf-8?B?YjNPd1E3QkJuTURscnVaWjhDWUQ4cG9DeHVweElGQmJjM1NDVW8xblhOclc0?=
 =?utf-8?B?dHFxQWVDVGNSMDNMSTJsY0FpZVBOcTVmc3ZnckFocklrK0JwUVZkbFlrNS9O?=
 =?utf-8?B?S2h0SE04RVhrS2krdHF3cFpzUndKV0dYYTdqVlFtZWs5RXJ0YVVnVU52L3V3?=
 =?utf-8?B?WE1lNEUrWFVPUXFUMVlIRExMY0R4Yzk2STRBdnVXWEYvYnFDOXJJTVZMd3RB?=
 =?utf-8?B?SnpVbEpOUjhCY05PY3FmeUhpWlJEdFZyc3hMWkxGczhwK0Z1NmwrUVR6UnJG?=
 =?utf-8?B?dmNVSVBLSUovUklRUlM1dXprNmI4MmE1ZjdOdFlLUU5IR1BWT3JoN3Vpc0Zr?=
 =?utf-8?B?UGluTGpzQnlvOVJMYVRLNzJodUg4bWplWW1TNjBiZzV1cFE0K0Q2Z09MZklO?=
 =?utf-8?B?OE13WW9ST3ExdDVOYUR2eE16Z1hmSHNSUmdBcDEybGxkT2xjZFhjNm11TjZD?=
 =?utf-8?B?b2QrT3FqL1U3UCtjSXRuMWp6Nm04ZWZLVW85OE9Qb2FyUmFSRUhZYVFMYlQy?=
 =?utf-8?B?OGRjejBRTnE0aHRWNTJuTXdFK2lRTkoxRk9YY3FPVldCdENmT29TbStuNWU1?=
 =?utf-8?B?R2lUTTlxTHk0TS82RTErM1RwQ1ZjYjZ1V3R6ekRZVU5DMjhJdTVTZVE2Z2xm?=
 =?utf-8?B?Z2ZOc1M5bjRJVjBVSkgyc0lLZDRJYmF1UldvaStEQUNLclROSzNkTEJmeUJQ?=
 =?utf-8?B?YkNrNklybVRGR3l6MmcyS1JLS3FMVWFQdFN5N2N2bVZYTmcvelpObkQwWWJm?=
 =?utf-8?B?UkRTWHg4blh4NWh5V0hVM01WZ2ZKbnhYOWMwVi8vMFdTV0FXK3dCU21MMDR3?=
 =?utf-8?B?dVhUMlZDTXpGWW5VSER6VFJtWHZFSVUrTHVidXFtYm9lV2tNYWtFbHpEbEIr?=
 =?utf-8?B?Ui9aaW4rM3V3RXlrV1lCNTNhSUtnUWJuNEs0K1NWSVFBelFLOFlOWk5HU1V5?=
 =?utf-8?B?UWpMd05mWTh0MDRmVnZhQ29DeVZhMy8rZkN1YS9mdG5hbUgrTDF2TlZ6eTVK?=
 =?utf-8?B?akpNb3plZmZXQU45aS9VWDJ6dm53cExpRGZxejBRWmQ2bVRvUWFKN1doWlVz?=
 =?utf-8?B?bkFwT2Vzd3VncURsTkRmeUsxclVVRGt1TmFDWExia0REWGVNV2UwbkhwSGZY?=
 =?utf-8?B?c0Z0UVBjOVh1dDRpZVRLR3NWVzBoeERsTFFCb0NiL2w2eEd2dnA4TG0xanBO?=
 =?utf-8?B?bERSdjBlY2ZIbk9wYUdNR0VqaGZYbkIxZndvV0Y1UVlFWEpxbFJreHYycFl4?=
 =?utf-8?B?Ti9meGlsYjd2MFhhRFROUnVxOGsvVC9YWVlpM1ZXMFl3QVlXbUhsZ1NzQXkx?=
 =?utf-8?B?UHBveDNNNE5zSmdaVEw3Z2lmb2xFOTVYOVZWUGdFUkRGM0VUdzg0dmNHb05p?=
 =?utf-8?B?Z1I0NE5yQjVaa0lwcVBvL0pzdUJ4WTdTaGpKVDdUSGdlUG01ZGNPTHQxY0xX?=
 =?utf-8?B?aXc9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	6iwRBriVZtrHfvEeKHIxjZ5jNu/2AGFMvK9NNYz1OkGQC6YsqZll0Sz0fWGTScHIibynKwXPPC/cmGStMsi37XAdRaTBis0w/hRmh6R2R3Gcj0AeRXHLShSluq1x2C2Pgg1N5YLP5d02dZTO2qclSpl99jlRcRvILpm7H1Cve8CK73E77OAMM0icX2bCz8JNtcySSpu9SGDRNS4pKEsEJaanoYfG7ROyiDnlITG401Av6aGWJaNZMPEHphKWZB+s3PhI9rSV/oAgV39/MeojresrxcZdqOIlmZC6NhBQPypkMtFa9Ba1+rX46wGdTedbj3N4pK/smo+1UdwH9EeQsqsZA30zoVwOmSdh1Ft44PMOetIkmmbKf3sRfZ0rPxJc+PAIoT+mANf0debqIPj8iuYwaz9ON94N97UXT49Ec0OhnQUyaYhYAVg4QJmoDls0GJfGCsOYk4SpwzLoaHMPPCxm8AjvjvVYGKR5T+Id1ndt8iukaxoHMRg48zVuP5fwu/MVuMVogWNP+fFfvrUVqDLDzTlNW0e4+J1ogEJfNhQW6CrdFNnVQ0gdexFL/CDUNier4+JZ0fqZQd5uU6+FECU8jgfCWNF0U4U0UtKCGkbHXyg1S46ofBx8b5PboDBvD33iMbiWIlAxBFaOdRHrWVYvY9DD1tva9NYPS0CrZWwNnHmbUjYoMwB8mtcPv3fGbhk68jRFbwEeW4OzPrU4gzu64eAA2wsUOH9bQkM8oxhago698kOa+vZDpAPpwE2pp7R8qAUWs0P/KnYiBY2WicmeWc57Q0kXXOnWem3QJ+tVZN+WPEXQ6qvhQXzzy+/KCnnMUtDFb0qKFbtUyo8OVA==
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: f14e526a-8521-4765-c1ee-08dbd4a108da
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 24 Oct 2023 14:53:51.0311
 (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: gPj6pOJtb5wFTsZR1LolaYklbAi0EOB4Z718ypD24QG5hTva9QSZyCQmEph+pAFbElyiro2f8CZpFC1j43W1Yw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BLAPR03MB5554

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
observed i8259 (active) vectors getting delivered to CPUs different than 0.

On AMD or Hygon platforms 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 would need to be handled on all CPUs.

Continue to reserve PIC vectors on CPU0 only, but do check for such spurious
interrupts on all CPUs if the vendor is AMD or Hygon.  Note that once the
vectors get used by devices detecting PIC spurious interrupts will no longer be
possible, however the device driver should be able to cope with spurious
interrupts.  Such PIC spurious interrupts occurring when the vector is in use
by a local APIC routed source will lead to an extra EOI, which might
unintentionally clear a different vector from ISR.  Note this is already the
current behavior, so assume it's infrequent enough to not cause real issues.

Finally, 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

Amends: 3fba06ba9f8b ('x86/IRQ: re-use legacy vector ranges on APs')
Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
---
Changes since v2:
 - Put the AMD vendor checks in do_IRQ() instead of bogus_8259A_irq().
 - Re-indent cpumask_copy() call in init_IRQ().
 - Reword one sentence in the commit message.

Changes since v1:
 - Do not reserved spurious PIC vectors on APs, but still check for spurious
   PIC interrupts.
 - Reword commit message.
---
 xen/arch/x86/i8259.c | 21 +++++++++++++++++++--
 xen/arch/x86/irq.c   | 11 ++++++++++-
 2 files changed, 29 insertions(+), 3 deletions(-)

diff --git a/xen/arch/x86/i8259.c b/xen/arch/x86/i8259.c
index ed9f55abe51e..e0fa1f96b4f2 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,23 @@ 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.
+         * Note this behavior has only been observed on AMD hardware. In order
+         * to cope install all active legacy vectors on all CPUs.
+         *
+         * IO-APIC will change the destination mask if/when taking ownership of
+         * the interrupt.
+         */
+        cpumask_copy(desc->arch.cpu_mask,
+                     (boot_cpu_data.x86_vendor &
+                      (X86_VENDOR_AMD | X86_VENDOR_HYGON) ? &cpumask_all
+                                                          : cpumask_of(cpu)));
         desc->arch.vector = LEGACY_VECTOR(irq);
     }
     
diff --git a/xen/arch/x86/irq.c b/xen/arch/x86/irq.c
index f42ad539dcd5..c31e9b42a567 100644
--- a/xen/arch/x86/irq.c
+++ b/xen/arch/x86/irq.c
@@ -1920,7 +1920,16 @@ void do_IRQ(struct cpu_user_regs *regs)
                 kind = "";
             if ( !(vector >= FIRST_LEGACY_VECTOR &&
                    vector <= LAST_LEGACY_VECTOR &&
-                   !smp_processor_id() &&
+                   (!smp_processor_id() ||
+                    /*
+                     * For AMD/Hygon do spurious PIC interrupt
+                     * detection on all CPUs, as it has been observed
+                     * that during unknown circumstances spurious PIC
+                     * interrupts have been delivered to CPUs
+                     * different than the BSP.
+                     */
+                   (boot_cpu_data.x86_vendor & (X86_VENDOR_AMD |
+                                                X86_VENDOR_HYGON))) &&
                    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 Oct 24 14:56:59 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 14:56:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622089.969258 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvIpw-0005GZ-If; Tue, 24 Oct 2023 14:56:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622089.969258; Tue, 24 Oct 2023 14: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 1qvIpw-0005GS-G4; Tue, 24 Oct 2023 14:56:52 +0000
Received: by outflank-mailman (input) for mailman id 622089;
 Tue, 24 Oct 2023 14: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=krZT=GG=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qvIpv-0005Eq-7R
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 14:56:51 +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 8dfa96fe-727d-11ee-98d5-6d05b1d4d9a1;
 Tue, 24 Oct 2023 16:56:50 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM7PR04MB6775.eurprd04.prod.outlook.com (2603:10a6:20b:102::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.11; Tue, 24 Oct
 2023 14:56:17 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6933.011; Tue, 24 Oct 2023
 14:56: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: 8dfa96fe-727d-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=inNbj1/TYFSXZQdDnHCDUqAPChuzM8Cn+pdhotSNFZeQIb05LSsg2nNs7rpWW+6BP675Wxiu/FPiFtEftgyU77USh3u53n9tC1Ed3ni6tuIFabQgve7az2Xe9qWLofiWoKpJlNoB5TucCqOg7eumLiYyVvil/ho0alAU6rBLc7hEtUKvmcnDMp+cp93yr0GyDkb3g5FEnzPJZGv9pk5SVpkLjhZahA97LQzx5+oE0q8GOspetsdZR2OmgxznlAOy16pwMPpC//WPrDrtO+VTrSTx7Z7zMu02P2dR0M0t5ySM/H4+HSM0HTNdzdvtDRjjtneLpkODONEo7/HznpqTMQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=rbGcT1DsOGDZZbzoM4yu+8Gw+XJ2neSKl2FpYfLoSEs=;
 b=cgJ9V9gHR44dyHghzx0OHRmtu2ca23Sj7Hd1RGBU8iahG+Xb591zDDT8jGYOL+eeS4IEHpQnWrMLo5M6OyapvuLr3Gcp3fuvEjWnp41zfZ4I8BWD5SN0phEqwfOTEN7znBHZ2AZ/LSXHkIYA0bq56kyU7olC1iIF58lKI45Bp1baYWu/BoCaOGj5c9nGz6cbGrIhMbxI+rYB7rltDTZlzDOYVjFNN6PgHgx4BeIq1f+FqGWGtW+mq2nmhdXYlPk/wfvi3Rws7YwjvyO3Cg6zbc2fdr1Uwl7nBzY3AJplqWHXhjNkLuMO4CaMwPC1YvlUOl1vrLgdZDS5p2ns07mk7g==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=rbGcT1DsOGDZZbzoM4yu+8Gw+XJ2neSKl2FpYfLoSEs=;
 b=ER4lkj6IacJhHBucDoXcjNw4XTcCk6xETuQNO80/fNHWUjfSo4ke9hdU8jI7Al9dYY0s+VjR93TyBHqWRjeBvSBnZFSZJwCkUfb/bpmA0SzPYzeeEFKJSCsNSulgiiMOSV0lwNtkUHm26gU2nbCtrFdk1Zrz8/0/79l/9qIRyU0K7G2FHWPxMf+b7q4Hqxv7F8SKc2hjk2qkDQhiRiogpU98TSvVwiJLdixE3yEBKGaIQthPDBRhSbgeORrGC+Q9TOcBBPPocuhLe/tX3af6C5iR+dUAloMe11EeHZOhrlgMutPSdC6eJ5fghU44hyTnZDScM+KuLA5xMURfsdqv1Q==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <71bcda90-0351-9487-5b68-89718146bb9a@suse.com>
Date: Tue, 24 Oct 2023 16:56:14 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [RFC 2/4] x86/shutdown: address MISRA C:2012 Rule 9.3
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.cooper3@citrix.com, roger.pau@citrix.com, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <cover.1698155925.git.nicola.vetrini@bugseng.com>
 <b4781f1a558a32747f1aca53b6da50a2d4b61f1e.1698155925.git.nicola.vetrini@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <b4781f1a558a32747f1aca53b6da50a2d4b61f1e.1698155925.git.nicola.vetrini@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0182.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:ca::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_|AM7PR04MB6775:EE_
X-MS-Office365-Filtering-Correlation-Id: c4b10b9f-baea-4286-6e28-08dbd4a16005
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	Lj7HJJirc/YDnllXQSzz67OqUFsZOn/170v3YzLHnzd9sIjAI6NrO3+p4B3fLa+a9uDBG7h1v42OC9nRDaPglLKwZ/YupyUnFYt2cKiWudPWnpaKD8KSmnmI19xrHSUbTHeVgaI67L/cgsibKwMRqG5teS4SQRcmmryOu9vrPap1O+U7dBIzmOghzoj/Vl3HMQ7Fy77b1t+krwiP+5Ly2ibMBIWtbuTrFlF2sg/O5r/HDJbospvcr1gMA/IX/KrPugZ/lV7PnkudaSOghpZM72Cw26712rMniY9xRdQ0jrutS6/Keb8QYVL7VjTTXydvJTddhtbERHZA8+/7ErRxexgTGOriGD+eN4uTmRGL98dURk9QdnXcBIBTJ78mKoaUfGg4AqkByBlaUFOekDqB27Td5j2LVZT1Br3S7EtNA23hQev3rhlKLP2L8r33RpwpGOV57E1x6lM25tguVRrILV2wIEHLdzR7JIfJdm5d764tmewmX0FgluthTW7H2o+8MSZ7V9W2WWE9aO1+N/HSW05w9DgL9ppOA71E3bc2631najFmoHd2NfNnv5HWcS04iSPr71+RLKlWh8dK/eHP2qb6QXJo7Cmx9z6EkKN3LfQUA9Q6rk6BV+NGiBmX1sexWTY29YSJOCo81dwzK2BNYw==
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)(366004)(396003)(346002)(376002)(230922051799003)(186009)(1800799009)(451199024)(64100799003)(31686004)(36756003)(6916009)(66946007)(316002)(86362001)(31696002)(66556008)(38100700002)(66476007)(53546011)(83380400001)(26005)(6506007)(2616005)(6512007)(6666004)(6486002)(2906002)(8936002)(7416002)(478600001)(4326008)(5660300002)(8676002)(41300700001)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?MUZ2UVBGWjV1NG80cjJDNVEvRklSZkt6WmYwQ2M3ejkvbGdJOC91RDNKMU11?=
 =?utf-8?B?elVNZnlWVlJBRE1TMWEzZTVKQzh6KytSY3BtVVJtc1FLb2Q2QzJnSWwyc1NC?=
 =?utf-8?B?NzlZK0ZJU0h1WlNIRkNnR1ZLYllrdGJPYitGQ0liRm9RcjA1QkxiVGdPd2Js?=
 =?utf-8?B?MG8xeXFSK0JsREZlTUUrR1NrU25JVzg2OXAzZkVMVTFKVHBlUWx5WWQ4TTBE?=
 =?utf-8?B?dmlqUVJ5clBTamtBcjl6VkU3bkhOc2ppY0I0MXFaOThHc0k4Z0JybzVtL3ln?=
 =?utf-8?B?NmJjcTRWMDRIVVZaa0l2YWt4dERYaE10MUw3V0dUdTZnbXNWekRMNE9LY2Zj?=
 =?utf-8?B?VnBLNmFkeW9NZFU1U1Z2OHJqT1hFN1M3SEZwOUV1Y0NFZHJmY2FVMU1tckhP?=
 =?utf-8?B?WVVLdWR2M2V0ZHdKODlLR3JibkUzbmFpMHFWMFF5cHJvNld1WENuN3RiTnRK?=
 =?utf-8?B?NnBReVR4clZlV2JhbVBVVVZWbFdNbUFpTkJ5NXoyeWkwV3JCMkJ1dkhqYmFl?=
 =?utf-8?B?TjZhb1F4SHNqdWROdkhudkc5RGgzTGhteU52SGliV3F5a21oeUxocWlsZGEr?=
 =?utf-8?B?SnRzZHRGZVBSZGpPcUtYemY5UFYwVWgzMmFZdVBJSDd3VDRhSmpaKzJBMnFL?=
 =?utf-8?B?ZUVtUHc2Z2FRc2FnTm85d2o5b3NmR0IzL2xDYU11VWhsanp3ak5neWpkb3Fi?=
 =?utf-8?B?K3hOdys1VENMaUIzckpMVmh4UjdYd3hhNHFHdnVtUnYwbDRhejRoeTBLSFhw?=
 =?utf-8?B?dEJiVkZIeHE4cnYzamFaMExkSkJrcFR3YVJjRlNNTFA5UE0xbXdaZ25mUFF2?=
 =?utf-8?B?eFZvKzFYSFhnOEdoR01rNW1reVptWnlzYW4zaFhjY054c2g2Y1J3V0ZJRUND?=
 =?utf-8?B?ZW9YRFhVVUM0KzZ1OHZCblhJU2swcm5zUFI0aXJuazNuZTNueTZDQXF1YldG?=
 =?utf-8?B?S1J4RysxdFh0bUdGbWNJOTMxMFFOUm94TkVKOHk2emlsVzI1NWxKTkFpaFph?=
 =?utf-8?B?OU0vUGRzaGlUWTFQZHowQ0xVcElXanVZc2hScFhaeDFsSGhRU1lMd1YwZmVl?=
 =?utf-8?B?bDNTei9OTDZ0QjVRMVducXJhYzJmVGtjcjdVTGVHYXVPZGg1d3hzZWQzMHZa?=
 =?utf-8?B?S2M2b0lZRWdaNTJYTy9sNFZ6RkJMNE4xUFd2WWk2RGZmMXlxc3NVcmcrRkZV?=
 =?utf-8?B?MVJQREo2VHBrZWdmV1NxcXpCMXkxWXZ0cDZxZktFL0t3b2ZVa2htNTc1K2o2?=
 =?utf-8?B?U1BZcmg5WnYzVjR4dy9NTkUrejFRd1RhUDNnbmY1T2k3L3lrMytxMGFjekEw?=
 =?utf-8?B?UUY2ajRBc1doSHZFR1k1U0RTeGxiSWIzTDdDMmlsRHdTTGJXODhWa3duZ2pO?=
 =?utf-8?B?THNrOEZtSzRwK21SamdxRlJ0cGdJcldiTlVybnZTaVJZNVl3d1JVaXZHVWxW?=
 =?utf-8?B?R0Y1YUJNSjJDVVJIVFNoOTFyeVhhelR3bVVGQ0QwKzdqSUErTUxZUTBBVTRN?=
 =?utf-8?B?Y0VYb3o0dnRDeHFMWGJHK0RSSy81QUE1d3E2ckl4VGZiMkJ0SUFUdXZqYW5p?=
 =?utf-8?B?N2VlcWhWVFV1NDJzM3g4VmZDVGNEOEEwUXFGR0FUODVyaE02M3JROWk4QWJF?=
 =?utf-8?B?VUFGYUdpb3ZqS2owWlZ3Vk1oODFweXdqREVPMmVVR0ludzdqSTM2anhCZmJn?=
 =?utf-8?B?aVdCZ0d4UERXR25VNEwxWXd5NW9GQ0FYc1NWRHY2R3Y3aldhaHJLNEs0T1k1?=
 =?utf-8?B?d09VMWhiUVkzVG5ySGtVbDM1b3EwRkxseXRDMnR6UFU4dnJ4bmxyRW9QeDZw?=
 =?utf-8?B?ZWYzYWFIUGZNc2ZZT3BsRjlzS1NyNFZib0Z1SDJiYmpxaUNvTVl6V1kyRU5N?=
 =?utf-8?B?dXp5SDlXM3prVDEzZ204RlU5SklxN2EyalVxZmpEMGhxQ2Z6RldOV0gzczRQ?=
 =?utf-8?B?dHM0WHVrWEhzZ2IzQ2lmbklmWTlUWVhzMWhBM2U5VUhXazBsVE5NeTJlMHJs?=
 =?utf-8?B?STFPTUd3aUNLNDlQVXRDQkxURGtaNkc3VG51K1pYdGwyYlMxeDRLWTBCRUFB?=
 =?utf-8?B?cjZoR1dWSi9nb0c0ZGRqeVNRSEY4Tnp6M3hYSkFEUFVmdzA0V1k1VW5nN2RB?=
 =?utf-8?Q?TyedYBdm0ZsscBTS7ItGQLrzl?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: c4b10b9f-baea-4286-6e28-08dbd4a16005
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 24 Oct 2023 14:56:16.9911
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: Z578IIpNvxcGpByMEIv1Z9Y1c7kINeyVVXPIaZek5iPMVyF3RG/ekzzLwRw3zi8A4RIcRQIdXudUpfBvsf8K4A==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM7PR04MB6775

On 24.10.2023 16:31, Nicola Vetrini wrote:
> @@ -225,8 +225,8 @@ static const struct dmi_system_id __initconstrel reboot_dmi_table[] = {
>          .ident = "Dell OptiPlex 745",
>          .matches = {
>              DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
> -            DMI_MATCH(DMI_PRODUCT_NAME, "OptiPlex 745"),
> -            DMI_MATCH(DMI_BOARD_NAME, "0MM599"),
> +            [0] = DMI_MATCH(DMI_PRODUCT_NAME, "OptiPlex 745"),
> +            [1] = DMI_MATCH(DMI_BOARD_NAME, "0MM599")
>          },
>      },
>      {    /* Handle problems with rebooting on Dell Optiplex 745 with 0KW626 */
> @@ -235,8 +235,8 @@ static const struct dmi_system_id __initconstrel reboot_dmi_table[] = {
>          .ident = "Dell OptiPlex 745",
>          .matches = {
>              DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
> -            DMI_MATCH(DMI_PRODUCT_NAME, "OptiPlex 745"),
> -            DMI_MATCH(DMI_BOARD_NAME, "0KW626"),
> +            [0] = DMI_MATCH(DMI_PRODUCT_NAME, "OptiPlex 745"),
> +            [1] = DMI_MATCH(DMI_BOARD_NAME, "0KW626")
>          },
>      },
>      {    /* Handle problems with rebooting on Dell Optiplex 330 with 0KP561 */
> @@ -245,8 +245,8 @@ static const struct dmi_system_id __initconstrel reboot_dmi_table[] = {
>          .ident = "Dell OptiPlex 330",
>          .matches = {
>              DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
> -            DMI_MATCH(DMI_PRODUCT_NAME, "OptiPlex 330"),
> -            DMI_MATCH(DMI_BOARD_NAME, "0KP561"),
> +            [0] = DMI_MATCH(DMI_PRODUCT_NAME, "OptiPlex 330"),
> +            [1] = DMI_MATCH(DMI_BOARD_NAME, "0KP561")
>          },
>      },
>      {    /* Handle problems with rebooting on Dell Optiplex 360 with 0T656F */
> @@ -255,8 +255,8 @@ static const struct dmi_system_id __initconstrel reboot_dmi_table[] = {
>          .ident = "Dell OptiPlex 360",
>          .matches = {
>              DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
> -            DMI_MATCH(DMI_PRODUCT_NAME, "OptiPlex 360"),
> -            DMI_MATCH(DMI_BOARD_NAME, "0T656F"),
> +            [0] = DMI_MATCH(DMI_PRODUCT_NAME, "OptiPlex 360"),
> +            [1] = DMI_MATCH(DMI_BOARD_NAME, "0T656F")
>          },
>      },
>      {    /* Handle problems with rebooting on Dell OptiPlex 760 with 0G919G */
> @@ -265,8 +265,8 @@ static const struct dmi_system_id __initconstrel reboot_dmi_table[] = {
>          .ident = "Dell OptiPlex 760",
>          .matches = {
>              DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
> -            DMI_MATCH(DMI_PRODUCT_NAME, "OptiPlex 760"),
> -            DMI_MATCH(DMI_BOARD_NAME, "0G919G"),
> +            [0] = DMI_MATCH(DMI_PRODUCT_NAME, "OptiPlex 760"),
> +            [1] = DMI_MATCH(DMI_BOARD_NAME, "0G919G")
>          },
>      },
>      {    /* Handle problems with rebooting on Dell 2400's */

Well, no, this is what absolutely should not happen: You're breaking
the code here, but initializing slot 0 twice in multiple instances.
>From looking just at the patch I probably wouldn't have noticed, but
the "always elements 0 and 1 only" pattern made me "grep -lr", where
the issue became apparent. Otherwise I was about to suggest we shrink
array size to just 2 elements.

Jan


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 15:03:04 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 15:03:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622093.969267 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvIvn-0006w6-72; Tue, 24 Oct 2023 15:02:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622093.969267; Tue, 24 Oct 2023 15: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 1qvIvn-0006vz-4P; Tue, 24 Oct 2023 15:02:55 +0000
Received: by outflank-mailman (input) for mailman id 622093;
 Tue, 24 Oct 2023 15:02: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=+b+W=GG=gmail.com=xadimgnik@srs-se1.protection.inumbo.net>)
 id 1qvIvm-0006vt-Lv
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 15:02:54 +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 6844bce7-727e-11ee-98d5-6d05b1d4d9a1;
 Tue, 24 Oct 2023 17:02:53 +0200 (CEST)
Received: by mail-lf1-x12e.google.com with SMTP id
 2adb3069b0e04-507a0907896so6819577e87.2
 for <xen-devel@lists.xenproject.org>; Tue, 24 Oct 2023 08:02:53 -0700 (PDT)
Received: from [192.168.6.66] (54-240-197-238.amazon.com. [54.240.197.238])
 by smtp.gmail.com with ESMTPSA id
 f5-20020a056000128500b0031c6581d55esm10091262wrx.91.2023.10.24.08.02.50
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 24 Oct 2023 08:02: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: 6844bce7-727e-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698159773; x=1698764573; 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=CgHp0CJaaQlW610O/NVGeBqWOSNojjcDIIfF8qOnyh8=;
        b=OHbcs4UinNYdkRloBoka+V4wp6p744makUOwZr6sXNTFh3jIxjTJw5fmB5JQlav5mK
         2V5N1vGJPxSWm4qZcRBFjMMax3zoVA3VtI85VdiEjGg1djsy+f/ahETdXcFiTPIdnVf1
         ZQKxMzHQSBHt/bMo8f1lU5PyJ8gWkrmWFY/4gxuE1j0ZGU1i+TmD+1bVtRr1o008FMB7
         1x2VXNZjOIt8cGSVcBUHSNRlhcbcsONVOLz1I6c0yAHpdovUrSX42utL7+gRzZ6Y6rQH
         Gk3L3gFxp8enmDbRk6J2Hfn+v0jboK/6R9cVA5GcxrGKJ1TFlLgsOOu/6kC7nJWq9spP
         vjUA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698159773; x=1698764573;
        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=CgHp0CJaaQlW610O/NVGeBqWOSNojjcDIIfF8qOnyh8=;
        b=bUnS7csRfQoFgoE9+zH+7IeOINu+4/Ysq8NjYDzV+azBfrS6MYhhvBk+d9ydnt4ZEh
         utImwzydB6Gth3NFlsWNQsh8202EzVtcCZoMxBPnjYHVmBBB215NCDoZUx98OdBr+Hpd
         3wYwCEj5lqIdG4wPOzrRmuIFewtDJiMW8G60dXIr4iZOixYNjF8gQryUgkvjuphMnD+Q
         aixqUQlOEGz/NoUtYNV/8rrJuf/7qUoe/ELf/8RO6eyEsP4VgYsz84gALvsz2RQEOXZx
         RhOV2uGmx2IZFEIbQ/Y9obZIuF0hkdxLQik8NYrbZk9iZTec5aW/dCRqmchW2BjuxN/m
         c81g==
X-Gm-Message-State: AOJu0Yx2Aire8KlUmwV18RDyP54TMiwuo8ITG9LThCgQlPQFpBerCsiO
	mWaTeAgCqSvn+M/kXg/kwpU=
X-Google-Smtp-Source: AGHT+IH9T45ADuXoRcFMFSb5Oytx69M3MV46mrRNCIVJ622Q0DyMPbV1Z877betPlfNUrQXWzUmZCw==
X-Received: by 2002:a05:6512:3b8e:b0:502:ffdf:b098 with SMTP id g14-20020a0565123b8e00b00502ffdfb098mr11070376lfv.6.1698159772803;
        Tue, 24 Oct 2023 08:02:52 -0700 (PDT)
From: Paul Durrant <xadimgnik@gmail.com>
X-Google-Original-From: Paul Durrant <paul@xen.org>
Message-ID: <bd55f12a-1a01-40fb-a61a-dd5ddbd58557@xen.org>
Date: Tue, 24 Oct 2023 16:02:49 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Reply-To: paul@xen.org
Subject: Re: [PATCH v2 03/24] hw/xen: select kernel mode for per-vCPU event
 channel upcall vector
Content-Language: en-US
To: David Woodhouse <dwmw2@infradead.org>, qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>, Hanna Reitz <hreitz@redhat.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Anthony Perard <anthony.perard@citrix.com>,
 =?UTF-8?Q?Marc-Andr=C3=A9_Lureau?= <marcandre.lureau@redhat.com>,
 Paolo Bonzini <pbonzini@redhat.com>,
 Richard Henderson <richard.henderson@linaro.org>,
 Eduardo Habkost <eduardo@habkost.net>, "Michael S. Tsirkin"
 <mst@redhat.com>, Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
 Jason Wang <jasowang@redhat.com>, Marcelo Tosatti <mtosatti@redhat.com>,
 Cleber Rosa <crosa@redhat.com>, =?UTF-8?Q?Philippe_Mathieu-Daud=C3=A9?=
 <philmd@linaro.org>, Wainer dos Santos Moschetta <wainersm@redhat.com>,
 Beraldo Leal <bleal@redhat.com>, qemu-block@nongnu.org,
 xen-devel@lists.xenproject.org, kvm@vger.kernel.org,
 Bernhard Beschow <shentey@gmail.com>, Joel Upham <jupham125@gmail.com>
References: <20231019154020.99080-1-dwmw2@infradead.org>
 <20231019154020.99080-4-dwmw2@infradead.org>
Organization: Xen Project
In-Reply-To: <20231019154020.99080-4-dwmw2@infradead.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 19/10/2023 16:39, David Woodhouse wrote:
> From: David Woodhouse <dwmw@amazon.co.uk>
> 
> A guest which has configured the per-vCPU upcall vector may set the
> HVM_PARAM_CALLBACK_IRQ param to fairly much anything other than zero.
> 
> For example, Linux v6.0+ after commit b1c3497e604 ("x86/xen: Add support
> for HVMOP_set_evtchn_upcall_vector") will just do this after setting the
> vector:
> 
>         /* Trick toolstack to think we are enlightened. */
>         if (!cpu)
>                 rc = xen_set_callback_via(1);
> 
> That's explicitly setting the delivery to GSI#1, but it's supposed to be
> overridden by the per-vCPU vector setting. This mostly works in Qemu
> *except* for the logic to enable the in-kernel handling of event channels,
> which falsely determines that the kernel cannot accelerate GSI delivery
> in this case.
> 
> Add a kvm_xen_has_vcpu_callback_vector() to report whether vCPU#0 has
> the vector set, and use that in xen_evtchn_set_callback_param() to
> enable the kernel acceleration features even when the param *appears*
> to be set to target a GSI.
> 
> Preserve the Xen behaviour that when HVM_PARAM_CALLBACK_IRQ is set to
> *zero* the event channel delivery is disabled completely. (Which is
> what that bizarre guest behaviour is working round in the first place.)
> 
> Fixes: 91cce756179 ("hw/xen: Add xen_evtchn device for event channel emulation")
> Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
> ---
>   hw/i386/kvm/xen_evtchn.c  | 6 ++++++
>   include/sysemu/kvm_xen.h  | 1 +
>   target/i386/kvm/xen-emu.c | 7 +++++++
>   3 files changed, 14 insertions(+)
> 

Reviewed-by: Paul Durrant <paul@xen.org>



From xen-devel-bounces@lists.xenproject.org Tue Oct 24 15:04:05 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 15:04:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622095.969278 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvIwu-0007P9-Go; Tue, 24 Oct 2023 15:04:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622095.969278; Tue, 24 Oct 2023 15: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 1qvIwu-0007P2-Dc; Tue, 24 Oct 2023 15:04:04 +0000
Received: by outflank-mailman (input) for mailman id 622095;
 Tue, 24 Oct 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=+b+W=GG=gmail.com=xadimgnik@srs-se1.protection.inumbo.net>)
 id 1qvIwt-0007Ow-Ct
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 15:04:03 +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 90fb4774-727e-11ee-98d5-6d05b1d4d9a1;
 Tue, 24 Oct 2023 17:04:02 +0200 (CEST)
Received: by mail-wm1-x331.google.com with SMTP id
 5b1f17b1804b1-40907b82ab9so10379975e9.1
 for <xen-devel@lists.xenproject.org>; Tue, 24 Oct 2023 08:04:02 -0700 (PDT)
Received: from [192.168.6.66] (54-240-197-238.amazon.com. [54.240.197.238])
 by smtp.gmail.com with ESMTPSA id
 f5-20020a056000128500b0031c6581d55esm10091262wrx.91.2023.10.24.08.03.58
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 24 Oct 2023 08:04: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: 90fb4774-727e-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698159841; x=1698764641; 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=C1Qt2wllMLDF+l8+9ma3m0C77TgrERD8kIo4WEkyC+k=;
        b=HTDsf0HZGB1W34XjCXbeLL/El/YdAJg/fyddeA/xthNcyzDq4rGxcllIVLn5Wwtt1r
         SWQQXbS2SuNrWMTodNfvcCDg8EPAes5zF9UwgQ/wMjBTC2D3RPnlVba3MWz1t1cUXUo/
         RTTcpFd75OHD0b+dyQnmJsFEOV5wL9BbD0NsPxGgBYlhPftETcSogEqvWAFONeNVWwH/
         ob+rSkn6h3JU8BSCtv4AXp8OQKoPeIrkkYlaPp4irAuPDyPk3rg1ijAL97lTr+Y7ToJy
         WFlFQHeFoFGvqk8TOIRawyuiqcfA+2IMsFJ6poy9ePjucYoQ/25kjprjQwQhZoEUJOOF
         vwQw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698159841; x=1698764641;
        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=C1Qt2wllMLDF+l8+9ma3m0C77TgrERD8kIo4WEkyC+k=;
        b=QfncTkJn4vDoV7Q4wz/FaKbkl+3UKemiugUQrYthoUqKfTteA+esswZDks2hYHa5fk
         rqoU2ecV9jFQmhvGHEVNhDAmDEZJrGw9nyDD0p9qMB6AszT6OQ6V1XP6U321EXfXK3lI
         hFiol2n0uzq8oZFI+UHelBVH45gGwGwoTksJm7nnTzgT5+nxuq1wHduFV9wAnOvSRxjg
         Nfn6i8tkharKllUlhtaZu+stJZVuEZVKABiidj0icPwp5tcomflpWHR1h8TkT5aG+sym
         c7gDzJAeOHTkjulnPm8YYlmI7hUAtfc3wg+uFuQBLws5pEjdNXcgGnhrC5OQL4VA7ebl
         KyeQ==
X-Gm-Message-State: AOJu0YynsGEaX4WEqEAS4JpjdYoGiA1RuEYcy+cLw6xLNaOOMqH/OwKC
	+vUnqWS2+mh8w3ArWj7Hv9I=
X-Google-Smtp-Source: AGHT+IGm54ISKlvZ6ARRotUsrpXMLiaRdkUDxht2f3+ks747mTY2+cIYmiFMPEYmjUe2mjy+rnM4zA==
X-Received: by 2002:a05:600c:450d:b0:405:409e:1fcb with SMTP id t13-20020a05600c450d00b00405409e1fcbmr12972927wmo.5.1698159841241;
        Tue, 24 Oct 2023 08:04:01 -0700 (PDT)
From: Paul Durrant <xadimgnik@gmail.com>
X-Google-Original-From: Paul Durrant <paul@xen.org>
Message-ID: <c13a1ff5-0853-41f7-883d-abae08f9ad09@xen.org>
Date: Tue, 24 Oct 2023 16:03:58 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Reply-To: paul@xen.org
Subject: Re: [PATCH v2 04/24] hw/xen: don't clear map_track[] in
 xen_gnttab_reset()
Content-Language: en-US
To: David Woodhouse <dwmw2@infradead.org>, qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>, Hanna Reitz <hreitz@redhat.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Anthony Perard <anthony.perard@citrix.com>,
 =?UTF-8?Q?Marc-Andr=C3=A9_Lureau?= <marcandre.lureau@redhat.com>,
 Paolo Bonzini <pbonzini@redhat.com>,
 Richard Henderson <richard.henderson@linaro.org>,
 Eduardo Habkost <eduardo@habkost.net>, "Michael S. Tsirkin"
 <mst@redhat.com>, Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
 Jason Wang <jasowang@redhat.com>, Marcelo Tosatti <mtosatti@redhat.com>,
 Cleber Rosa <crosa@redhat.com>, =?UTF-8?Q?Philippe_Mathieu-Daud=C3=A9?=
 <philmd@linaro.org>, Wainer dos Santos Moschetta <wainersm@redhat.com>,
 Beraldo Leal <bleal@redhat.com>, qemu-block@nongnu.org,
 xen-devel@lists.xenproject.org, kvm@vger.kernel.org,
 Bernhard Beschow <shentey@gmail.com>, Joel Upham <jupham125@gmail.com>
References: <20231019154020.99080-1-dwmw2@infradead.org>
 <20231019154020.99080-5-dwmw2@infradead.org>
Organization: Xen Project
In-Reply-To: <20231019154020.99080-5-dwmw2@infradead.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 19/10/2023 16:40, David Woodhouse wrote:
> From: David Woodhouse <dwmw@amazon.co.uk>
> 
> The refcounts actually correspond to 'active_ref' structures stored in a
> GHashTable per "user" on the backend side (mostly, per XenDevice).
> 
> If we zero map_track[] on reset, then when the backend drivers get torn
> down and release their mapping we hit the assert(s->map_track[ref] != 0)
> in gnt_unref().
> 
> So leave them in place. Each backend driver will disconnect and reconnect
> as the guest comes back up again and reconnects, and it all works out OK
> in the end as the old refs get dropped.
> 
> Fixes: de26b2619789 ("hw/xen: Implement soft reset for emulated gnttab")
> Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
> ---
>   hw/i386/kvm/xen_gnttab.c | 2 --
>   1 file changed, 2 deletions(-)
> 

Reviewed-by: Paul Durrant <paul@xen.org>



From xen-devel-bounces@lists.xenproject.org Tue Oct 24 15:05:26 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 15:05:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622097.969287 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvIyA-00084J-Pk; Tue, 24 Oct 2023 15:05:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622097.969287; Tue, 24 Oct 2023 15: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 1qvIyA-00084C-Ms; Tue, 24 Oct 2023 15:05:22 +0000
Received: by outflank-mailman (input) for mailman id 622097;
 Tue, 24 Oct 2023 15:05: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=9CvU=GG=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qvIy9-00082w-Vd
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 15:05:21 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id bff30229-727e-11ee-98d5-6d05b1d4d9a1;
 Tue, 24 Oct 2023 17:05:20 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id 823A14EE0742;
 Tue, 24 Oct 2023 17:05: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: bff30229-727e-11ee-98d5-6d05b1d4d9a1
MIME-Version: 1.0
Date: Tue, 24 Oct 2023 17:05:20 +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.cooper3@citrix.com, roger.pau@citrix.com, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
Subject: Re: [RFC 2/4] x86/shutdown: address MISRA C:2012 Rule 9.3
In-Reply-To: <71bcda90-0351-9487-5b68-89718146bb9a@suse.com>
References: <cover.1698155925.git.nicola.vetrini@bugseng.com>
 <b4781f1a558a32747f1aca53b6da50a2d4b61f1e.1698155925.git.nicola.vetrini@bugseng.com>
 <71bcda90-0351-9487-5b68-89718146bb9a@suse.com>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <9b7c945c11b7c4adde0a4c8aabf6112f@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 24/10/2023 16:56, Jan Beulich wrote:
> On 24.10.2023 16:31, Nicola Vetrini wrote:
>> @@ -225,8 +225,8 @@ static const struct dmi_system_id __initconstrel 
>> reboot_dmi_table[] = {
>>          .ident = "Dell OptiPlex 745",
>>          .matches = {
>>              DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
>> -            DMI_MATCH(DMI_PRODUCT_NAME, "OptiPlex 745"),
>> -            DMI_MATCH(DMI_BOARD_NAME, "0MM599"),
>> +            [0] = DMI_MATCH(DMI_PRODUCT_NAME, "OptiPlex 745"),
>> +            [1] = DMI_MATCH(DMI_BOARD_NAME, "0MM599")
>>          },
>>      },
>>      {    /* Handle problems with rebooting on Dell Optiplex 745 with 
>> 0KW626 */
>> @@ -235,8 +235,8 @@ static const struct dmi_system_id __initconstrel 
>> reboot_dmi_table[] = {
>>          .ident = "Dell OptiPlex 745",
>>          .matches = {
>>              DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
>> -            DMI_MATCH(DMI_PRODUCT_NAME, "OptiPlex 745"),
>> -            DMI_MATCH(DMI_BOARD_NAME, "0KW626"),
>> +            [0] = DMI_MATCH(DMI_PRODUCT_NAME, "OptiPlex 745"),
>> +            [1] = DMI_MATCH(DMI_BOARD_NAME, "0KW626")
>>          },
>>      },
>>      {    /* Handle problems with rebooting on Dell Optiplex 330 with 
>> 0KP561 */
>> @@ -245,8 +245,8 @@ static const struct dmi_system_id __initconstrel 
>> reboot_dmi_table[] = {
>>          .ident = "Dell OptiPlex 330",
>>          .matches = {
>>              DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
>> -            DMI_MATCH(DMI_PRODUCT_NAME, "OptiPlex 330"),
>> -            DMI_MATCH(DMI_BOARD_NAME, "0KP561"),
>> +            [0] = DMI_MATCH(DMI_PRODUCT_NAME, "OptiPlex 330"),
>> +            [1] = DMI_MATCH(DMI_BOARD_NAME, "0KP561")
>>          },
>>      },
>>      {    /* Handle problems with rebooting on Dell Optiplex 360 with 
>> 0T656F */
>> @@ -255,8 +255,8 @@ static const struct dmi_system_id __initconstrel 
>> reboot_dmi_table[] = {
>>          .ident = "Dell OptiPlex 360",
>>          .matches = {
>>              DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
>> -            DMI_MATCH(DMI_PRODUCT_NAME, "OptiPlex 360"),
>> -            DMI_MATCH(DMI_BOARD_NAME, "0T656F"),
>> +            [0] = DMI_MATCH(DMI_PRODUCT_NAME, "OptiPlex 360"),
>> +            [1] = DMI_MATCH(DMI_BOARD_NAME, "0T656F")
>>          },
>>      },
>>      {    /* Handle problems with rebooting on Dell OptiPlex 760 with 
>> 0G919G */
>> @@ -265,8 +265,8 @@ static const struct dmi_system_id __initconstrel 
>> reboot_dmi_table[] = {
>>          .ident = "Dell OptiPlex 760",
>>          .matches = {
>>              DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
>> -            DMI_MATCH(DMI_PRODUCT_NAME, "OptiPlex 760"),
>> -            DMI_MATCH(DMI_BOARD_NAME, "0G919G"),
>> +            [0] = DMI_MATCH(DMI_PRODUCT_NAME, "OptiPlex 760"),
>> +            [1] = DMI_MATCH(DMI_BOARD_NAME, "0G919G")
>>          },
>>      },
>>      {    /* Handle problems with rebooting on Dell 2400's */
> 
> Well, no, this is what absolutely should not happen: You're breaking
> the code here, but initializing slot 0 twice in multiple instances.
> From looking just at the patch I probably wouldn't have noticed, but
> the "always elements 0 and 1 only" pattern made me "grep -lr", where
> the issue became apparent. Otherwise I was about to suggest we shrink
> array size to just 2 elements.
> 
> Jan

Right, that was a shortcoming of my regex.

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


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 15:18:07 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 15:18:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622104.969298 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvJAN-00050O-2I; Tue, 24 Oct 2023 15:17:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622104.969298; Tue, 24 Oct 2023 15:17: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 1qvJAM-00050H-V5; Tue, 24 Oct 2023 15:17:58 +0000
Received: by outflank-mailman (input) for mailman id 622104;
 Tue, 24 Oct 2023 15:17: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=jXWl=GG=casper.srs.infradead.org=BATV+e2898748ca55db067849+7366+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qvJAL-0004vw-Em
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 15:17:57 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 80eb6132-7280-11ee-9b0e-b553b5be7939;
 Tue, 24 Oct 2023 17:17:54 +0200 (CEST)
Received: from [2001:8b0:10b:5:758e:a1c4:bc7:e7a7]
 (helo=u3832b3a9db3152.ant.amazon.com)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qvJAD-003BtW-Vg; Tue, 24 Oct 2023 15: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: 80eb6132-7280-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=MIME-Version:Content-Type:References:
	In-Reply-To:Date:Cc:To:From:Subject:Message-ID:Sender:Reply-To:
	Content-Transfer-Encoding:Content-ID:Content-Description;
	bh=vljkhOi5P4K1o7XVh50RT5GgDqYFQNgzgO+23b5JlEU=; b=u1VBFfz0Cxebf839YlpkxcVbKg
	x4RkMTu6H1GpAFlu/OuVi7DmI5svFlDb3chMpcVvdpu38scgfBnq/aa1TjJ2ziFD1DuSGwqf2X8cw
	rQtE64M+NdtN2wpFWntNJAO8+Gal5R1nUlERIDdYxJlYS62Rj429UK2bjbLk1R8bMSzP3u0YycfoL
	A7l9qoIKlI11pCe22dLLMcSTkQPwqOm9gfJBZQCJTHbYAcRKiy9WA+OpVNQWAPxdfsF+C12thBTQb
	I0y1rnxW0iBP7aR5agaFpHKtfDiNlNPJDAWaNu8ETASzl03xacE9EVJGzWyDCfXflzPXFzJGELYnD
	1iI3BtBA==;
Message-ID: <72ea536333fc9942f3c39acee571fc8f5ad98ba6.camel@infradead.org>
Subject: Re: [PATCH 2/4] hw/xen: update Xen PV NIC to XenDevice model
From: David Woodhouse <dwmw2@infradead.org>
To: paul@xen.org, qemu-devel@nongnu.org
Cc: "Michael S. Tsirkin" <mst@redhat.com>, Marcel Apfelbaum
 <marcel.apfelbaum@gmail.com>, Paolo Bonzini <pbonzini@redhat.com>, Richard
 Henderson <richard.henderson@linaro.org>, Eduardo Habkost
 <eduardo@habkost.net>, Stefano Stabellini <sstabellini@kernel.org>, Anthony
 Perard <anthony.perard@citrix.com>, Jason Wang <jasowang@redhat.com>,
 xen-devel@lists.xenproject.org
Date: Tue, 24 Oct 2023 16:17:49 +0100
In-Reply-To: <53e3e3e3-7bdc-4102-b833-bcacd496a31f@xen.org>
References: <20231017182545.97973-1-dwmw2@infradead.org>
	 <20231017182545.97973-3-dwmw2@infradead.org>
	 <53e3e3e3-7bdc-4102-b833-bcacd496a31f@xen.org>
Content-Type: multipart/signed; micalg="sha-256"; protocol="application/pkcs7-signature";
	boundary="=-muEmYn7tGoFJPFeGcN56"
User-Agent: Evolution 3.44.4-0ubuntu2 
MIME-Version: 1.0
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html


--=-muEmYn7tGoFJPFeGcN56
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Tue, 2023-10-24 at 15:47 +0100, Paul Durrant wrote:
> On 17/10/2023 19:25, David Woodhouse wrote:
> > +
> > +#define xen_pv_printf(a, n, ...) qemu_printf(__VA_ARGS__)
>=20
> Why define this...

In the first place, just to make it build in the short term. Then I
forgot to clean it up before posting. In my tree this is all tracing
now.

>=20
> > @@ -232,7 +258,7 @@ static ssize_t net_rx_packet(NetClientState *nc, co=
nst uint8_t *buf, size_t size
> > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 RING_IDX rc, rp;
> > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 void *page;
> > =C2=A0=20
> > -=C2=A0=C2=A0=C2=A0 if (netdev->xendev.be_state !=3D XenbusStateConnect=
ed) {
> > +=C2=A0=C2=A0=C2=A0 if (netdev->rx_ring.sring =3D=3D NULL) {
>=20
> Why not a straight swap for xen_device_backend_get_state()? Hard to see=
=20
> whether there any hidden side effects of this change otherwise.

Could do, but what I *actually* cared about when looking at that check,
was whether the ring pointer was NULL. So I checked that explicitly.

It should be identical.

> > +static void xen_netdev_frontend_changed(XenDevice *xendev,
> > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0 enum xenbus_state frontend_state,
> > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0 Error **errp)
> > =C2=A0 {
> > -=C2=A0=C2=A0=C2=A0 struct XenNetDev *netdev =3D container_of(xendev, s=
truct XenNetDev, xendev);
> > -=C2=A0=C2=A0=C2=A0 net_tx_packets(netdev);
> > -=C2=A0=C2=A0=C2=A0 qemu_flush_queued_packets(qemu_get_queue(netdev->ni=
c));
> > +=C2=A0=C2=A0=C2=A0 ERRP_GUARD();
> > +=C2=A0=C2=A0=C2=A0 enum xenbus_state backend_state =3D xen_device_back=
end_get_state(xendev);
> > +
> > +=C2=A0=C2=A0=C2=A0 trace_xen_netdev_frontend_changed(xendev->name, fro=
ntend_state);
> > +
> > +=C2=A0=C2=A0=C2=A0 switch (frontend_state) {
> > +=C2=A0=C2=A0=C2=A0 case XenbusStateInitialised:
>=20
> I don't think that's really a valid state for a network frontend. Linux=
=20
> netback just ignores it.

Must we? I was thinking of making the ->frontend_changed() methods
optional and allowing backends to just provide ->connect() and
->disconnect() methods instead if they wanted to. Because we have three
identical ->frontend_changed() methods now...



--=-muEmYn7tGoFJPFeGcN56
Content-Type: application/pkcs7-signature; name="smime.p7s"
Content-Disposition: attachment; filename="smime.p7s"
Content-Transfer-Encoding: base64

MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgEFADCABgkqhkiG9w0BBwEAAKCCEkQw
ggYQMIID+KADAgECAhBNlCwQ1DvglAnFgS06KwZPMA0GCSqGSIb3DQEBDAUAMIGIMQswCQYDVQQG
EwJVUzETMBEGA1UECBMKTmV3IEplcnNleTEUMBIGA1UEBxMLSmVyc2V5IENpdHkxHjAcBgNVBAoT
FVRoZSBVU0VSVFJVU1QgTmV0d29yazEuMCwGA1UEAxMlVVNFUlRydXN0IFJTQSBDZXJ0aWZpY2F0
aW9uIEF1dGhvcml0eTAeFw0xODExMDIwMDAwMDBaFw0zMDEyMzEyMzU5NTlaMIGWMQswCQYDVQQG
EwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYD
VQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50
aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC
AQEAyjztlApB/975Rrno1jvm2pK/KxBOqhq8gr2+JhwpKirSzZxQgT9tlC7zl6hn1fXjSo5MqXUf
ItMltrMaXqcESJuK8dtK56NCSrq4iDKaKq9NxOXFmqXX2zN8HHGjQ2b2Xv0v1L5Nk1MQPKA19xeW
QcpGEGFUUd0kN+oHox+L9aV1rjfNiCj3bJk6kJaOPabPi2503nn/ITX5e8WfPnGw4VuZ79Khj1YB
rf24k5Ee1sLTHsLtpiK9OjG4iQRBdq6Z/TlVx/hGAez5h36bBJMxqdHLpdwIUkTqT8se3ed0PewD
ch/8kHPo5fZl5u1B0ecpq/sDN/5sCG52Ds+QU5O5EwIDAQABo4IBZDCCAWAwHwYDVR0jBBgwFoAU
U3m/WqorSs9UgOHYm8Cd8rIDZsswHQYDVR0OBBYEFAnA8vwL2pTbX/4r36iZQs/J4K0AMA4GA1Ud
DwEB/wQEAwIBhjASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEF
BQcDBDARBgNVHSAECjAIMAYGBFUdIAAwUAYDVR0fBEkwRzBFoEOgQYY/aHR0cDovL2NybC51c2Vy
dHJ1c3QuY29tL1VTRVJUcnVzdFJTQUNlcnRpZmljYXRpb25BdXRob3JpdHkuY3JsMHYGCCsGAQUF
BwEBBGowaDA/BggrBgEFBQcwAoYzaHR0cDovL2NydC51c2VydHJ1c3QuY29tL1VTRVJUcnVzdFJT
QUFkZFRydXN0Q0EuY3J0MCUGCCsGAQUFBzABhhlodHRwOi8vb2NzcC51c2VydHJ1c3QuY29tMA0G
CSqGSIb3DQEBDAUAA4ICAQBBRHUAqznCFfXejpVtMnFojADdF9d6HBA4kMjjsb0XMZHztuOCtKF+
xswhh2GqkW5JQrM8zVlU+A2VP72Ky2nlRA1GwmIPgou74TZ/XTarHG8zdMSgaDrkVYzz1g3nIVO9
IHk96VwsacIvBF8JfqIs+8aWH2PfSUrNxP6Ys7U0sZYx4rXD6+cqFq/ZW5BUfClN/rhk2ddQXyn7
kkmka2RQb9d90nmNHdgKrwfQ49mQ2hWQNDkJJIXwKjYA6VUR/fZUFeCUisdDe/0ABLTI+jheXUV1
eoYV7lNwNBKpeHdNuO6Aacb533JlfeUHxvBz9OfYWUiXu09sMAviM11Q0DuMZ5760CdO2VnpsXP4
KxaYIhvqPqUMWqRdWyn7crItNkZeroXaecG03i3mM7dkiPaCkgocBg0EBYsbZDZ8bsG3a08LwEsL
1Ygz3SBsyECa0waq4hOf/Z85F2w2ZpXfP+w8q4ifwO90SGZZV+HR/Jh6rEaVPDRF/CEGVqR1hiuQ
OZ1YL5ezMTX0ZSLwrymUE0pwi/KDaiYB15uswgeIAcA6JzPFf9pLkAFFWs1QNyN++niFhsM47qod
x/PL+5jR87myx5uYdBEQkkDc+lKB1Wct6ucXqm2EmsaQ0M95QjTmy+rDWjkDYdw3Ms6mSWE3Bn7i
5ZgtwCLXgAIe5W8mybM2JzCCBhQwggT8oAMCAQICEQDGvhmWZ0DEAx0oURL6O6l+MA0GCSqGSIb3
DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYD
VQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28g
UlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMB4XDTIyMDEwNzAw
MDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJARYTZHdtdzJAaW5mcmFkZWFkLm9y
ZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3GpC2bomUqk+91wLYBzDMcCj5C9m6
oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZHh7htyAkWYVoFsFPrwHounto8xTsy
SSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT9YgcBqKCo65pTFmOnR/VVbjJk4K2
xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNjP+qDrh0db7PAjO1D4d5ftfrsf+kd
RR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy2U+eITZ5LLE5s45mX2oPFknWqxBo
bQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3BgBEmfsYWlBXO8rVXfvPgLs32VdV
NZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/7auNVRmPB3v5SWEsH8xi4Bez2V9U
KxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmdlFYhAflWKQ03Ufiu8t3iBE3VJbc2
5oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9aelIl6vtbhMA+l0nfrsORMa4kobqQ5
C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMBAAGjggHMMIIByDAfBgNVHSMEGDAW
gBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeDMcimo0oz8o1R1Nver3ZVpSkwDgYD
VR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYwFAYIKwYBBQUHAwQGCCsGAQUFBwMC
MEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYBBQUHAgEWF2h0dHBzOi8vc2VjdGln
by5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9jcmwuc2VjdGlnby5jb20vU2VjdGln
b1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1haWxDQS5jcmwwgYoGCCsGAQUFBwEB
BH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdvLmNvbS9TZWN0aWdvUlNBQ2xpZW50
QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAjBggrBgEFBQcwAYYXaHR0cDovL29j
c3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5mcmFkZWFkLm9yZzANBgkqhkiG9w0B
AQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQvQ/fzPXmtR9t54rpmI2TfyvcKgOXp
qa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvIlSPrzIB4Z2wyIGQpaPLlYflrrVFK
v9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9ChWFfgSXvrWDZspnU3Gjw/rMHrGnql
Htlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0whpBtXdyDjzBtQTaZJ7zTT/vlehc/
tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9IzCCBhQwggT8oAMCAQICEQDGvhmW
Z0DEAx0oURL6O6l+MA0GCSqGSIb3DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3Jl
YXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0
ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJl
IEVtYWlsIENBMB4XDTIyMDEwNzAwMDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJ
ARYTZHdtdzJAaW5mcmFkZWFkLm9yZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3
GpC2bomUqk+91wLYBzDMcCj5C9m6oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZH
h7htyAkWYVoFsFPrwHounto8xTsySSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT
9YgcBqKCo65pTFmOnR/VVbjJk4K2xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNj
P+qDrh0db7PAjO1D4d5ftfrsf+kdRR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy
2U+eITZ5LLE5s45mX2oPFknWqxBobQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3
BgBEmfsYWlBXO8rVXfvPgLs32VdVNZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/
7auNVRmPB3v5SWEsH8xi4Bez2V9UKxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmd
lFYhAflWKQ03Ufiu8t3iBE3VJbc25oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9ae
lIl6vtbhMA+l0nfrsORMa4kobqQ5C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMB
AAGjggHMMIIByDAfBgNVHSMEGDAWgBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeD
Mcimo0oz8o1R1Nver3ZVpSkwDgYDVR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYw
FAYIKwYBBQUHAwQGCCsGAQUFBwMCMEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYB
BQUHAgEWF2h0dHBzOi8vc2VjdGlnby5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9j
cmwuc2VjdGlnby5jb20vU2VjdGlnb1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1h
aWxDQS5jcmwwgYoGCCsGAQUFBwEBBH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdv
LmNvbS9TZWN0aWdvUlNBQ2xpZW50QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAj
BggrBgEFBQcwAYYXaHR0cDovL29jc3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5m
cmFkZWFkLm9yZzANBgkqhkiG9w0BAQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQv
Q/fzPXmtR9t54rpmI2TfyvcKgOXpqa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvI
lSPrzIB4Z2wyIGQpaPLlYflrrVFKv9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9Ch
WFfgSXvrWDZspnU3Gjw/rMHrGnqlHtlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0w
hpBtXdyDjzBtQTaZJ7zTT/vlehc/tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9
IzGCBMcwggTDAgEBMIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVz
dGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMT
NVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEA
xr4ZlmdAxAMdKFES+jupfjANBglghkgBZQMEAgEFAKCCAeswGAYJKoZIhvcNAQkDMQsGCSqGSIb3
DQEHATAcBgkqhkiG9w0BCQUxDxcNMjMxMDI0MTUxNzQ5WjAvBgkqhkiG9w0BCQQxIgQg9fMDVsqe
Ll8SEFMdg53uf8+qe2GqrzgUmWIWrc34k34wgb0GCSsGAQQBgjcQBDGBrzCBrDCBljELMAkGA1UE
BhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEYMBYG
A1UEChMPU2VjdGlnbyBMaW1pdGVkMT4wPAYDVQQDEzVTZWN0aWdvIFJTQSBDbGllbnQgQXV0aGVu
dGljYXRpb24gYW5kIFNlY3VyZSBFbWFpbCBDQQIRAMa+GZZnQMQDHShREvo7qX4wgb8GCyqGSIb3
DQEJEAILMYGvoIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVy
MRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNl
Y3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEAxr4Z
lmdAxAMdKFES+jupfjANBgkqhkiG9w0BAQEFAASCAgA3QiM0z5WQhoXxEMmNjaAy6orYuC6+DXf7
P89rmTWuRDsg+EzsznwWhTe6PFdbymkr27OCviqEha37R3TAmy5rEef6LULiqt/suJHJQcpOe+VF
T66icOTbhh+TB10PeNHkmISzyjrgtLtHni7Ky/0wUDpekw58JsA3rfLMCURK1s3V70cpgXV3vMqp
TJt47ZRwvxTs0mWU1MVKiNUTgcAyGkl96pDBopnxwGp16UAjOsJzH7OPhyF+XyRiUzMWqsxY79rw
S8pj1aOvFm72sbGwdD2o/itSJL5IJ+cMV5TFNn2orACbNmkv2896IZUO5YuY9Lyn3F2vvB5HcvAi
v8g82iVFWgD+WbFrWBOXbiitrnm2I2WsaPuWTSFkTNMPLj61YNzB3RTjg2wXzWLc3c/1OoXcZhv/
5GQJIQ5QWXQIvGI3WgXEK7C1RQzWqud1gAAIGieSCeZv1PWXt9qzCacTfKOwnlB3QDZbXSGMe4wR
h9W9jcx+GQARQ1zs5Katy6KWhrTsH6yrvxLMMtD5sMBW/bWlTkIWkFpB+Ck9ZQgRaeSCOoDRkDh8
xAHLctKqz2emj47J/q35LUtxfaK3vroFXe5LByZVmu/daEORvrKCtX2194IZFTWSLXnT+SH3kC13
7c25yX2fdtN96/iXDTFYQGqPlWnGRtpcnTHpJY9uegAAAAAAAA==


--=-muEmYn7tGoFJPFeGcN56--


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 15:19:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 15:19:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622106.969308 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvJBm-00065I-C6; Tue, 24 Oct 2023 15:19:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622106.969308; Tue, 24 Oct 2023 15: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 1qvJBm-00065B-91; Tue, 24 Oct 2023 15:19:26 +0000
Received: by outflank-mailman (input) for mailman id 622106;
 Tue, 24 Oct 2023 15:19: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=+b+W=GG=gmail.com=xadimgnik@srs-se1.protection.inumbo.net>)
 id 1qvJBk-000651-Rk
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 15:19:24 +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 b5d9273e-7280-11ee-9b0e-b553b5be7939;
 Tue, 24 Oct 2023 17:19:22 +0200 (CEST)
Received: by mail-wr1-x432.google.com with SMTP id
 ffacd0b85a97d-307d58b3efbso3120903f8f.0
 for <xen-devel@lists.xenproject.org>; Tue, 24 Oct 2023 08:19:22 -0700 (PDT)
Received: from [192.168.6.66] (54-240-197-230.amazon.com. [54.240.197.230])
 by smtp.gmail.com with ESMTPSA id
 n1-20020a5d4001000000b0032dc1fc84f2sm10223557wrp.46.2023.10.24.08.19.20
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 24 Oct 2023 08:19: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: b5d9273e-7280-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698160762; x=1698765562; 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=VEfz8HGhwcX+gjgFcsp72jn1Jb62YijVFIO7IeDxV9U=;
        b=gzX4MnlMYRTGSdSFTiRZAUBwP5YXiAo/fwgxs1OfSeIdTCv3gIcJ3LOPJDaYAItyEJ
         qiMLLhUm3TE02b4cghGG8wsNVbR6uD82BjGeNOo8zcXKBkdQlIx0Q8bTfo2AlWyZrvWh
         cQs7IQznLxr3Ki5S7KKbHplBLZ8f1TFqO2ZHKWCU47Boz+1J4v1jF536lpN0LA/WcMwY
         RwGN8c77QSjEyXgyzuypnIUPrn4Wy21ARHMdLVi9EsVWAmIpmwbyb/6vcKw8AzjtfPpY
         myisplTaocMnZzdpLbd+QbsXcwk/9mKX67o0NOvBr79o57YY8Vr4x3IR0JUHSRyvzjQr
         uzfQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698160762; x=1698765562;
        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=VEfz8HGhwcX+gjgFcsp72jn1Jb62YijVFIO7IeDxV9U=;
        b=R2TYZm8wX8K84uCkvopAvJ30jVm3WzPZUiqf3vovck8/wShvrRQVJLsN/Jo5+h5vG5
         99KJ4zDqAFbqH9yZ/u42PPvxnH1LQlWmmZ6+H2eMixDtbAl0keZtffsLRVOdCE5b0U3y
         8Mca2bw4AdTqZoSrJDbBY4G5uKeY57ftdFkHqYD87x0WQlxQouFlamQTL29hyCfrcAJN
         6/9MD3X3wpe81BXsu6FAPaUChPvCMRThBbAyw+D/TBVgt7K5M2APa3WxzOrDhtjQGX37
         E0akHdbi1U5B9yofDjJ34v7jb3cSuH5rtMdi0kE1K9Qfd2Xk9wEju5oGW/tbi/ep3KF6
         ABwQ==
X-Gm-Message-State: AOJu0Yxm5ryP3ouUMra6+tp1GScMqptPZVehS372FHEUlkNmOerGgqw0
	ZGqh+0RFqMgrat+R5qCpC/o=
X-Google-Smtp-Source: AGHT+IFftEtEWBlIWSE4+gB3PiSf+ybDx5RYYWCq9oIN1LDrIU9iRO6mz1Q4jl+RB/Bs7pJY5A6gBQ==
X-Received: by 2002:adf:ef42:0:b0:32d:aa14:875d with SMTP id c2-20020adfef42000000b0032daa14875dmr9015766wrp.29.1698160762122;
        Tue, 24 Oct 2023 08:19:22 -0700 (PDT)
From: Paul Durrant <xadimgnik@gmail.com>
X-Google-Original-From: Paul Durrant <paul@xen.org>
Message-ID: <88ce2b55-c933-4c72-933f-c8cd10470c7f@xen.org>
Date: Tue, 24 Oct 2023 16:19:19 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Reply-To: paul@xen.org
Subject: Re: [PATCH v2 05/24] hw/xen: fix XenStore watch delivery to guest
Content-Language: en-US
To: David Woodhouse <dwmw2@infradead.org>, qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>, Hanna Reitz <hreitz@redhat.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Anthony Perard <anthony.perard@citrix.com>,
 =?UTF-8?Q?Marc-Andr=C3=A9_Lureau?= <marcandre.lureau@redhat.com>,
 Paolo Bonzini <pbonzini@redhat.com>,
 Richard Henderson <richard.henderson@linaro.org>,
 Eduardo Habkost <eduardo@habkost.net>, "Michael S. Tsirkin"
 <mst@redhat.com>, Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
 Jason Wang <jasowang@redhat.com>, Marcelo Tosatti <mtosatti@redhat.com>,
 Cleber Rosa <crosa@redhat.com>, =?UTF-8?Q?Philippe_Mathieu-Daud=C3=A9?=
 <philmd@linaro.org>, Wainer dos Santos Moschetta <wainersm@redhat.com>,
 Beraldo Leal <bleal@redhat.com>, qemu-block@nongnu.org,
 xen-devel@lists.xenproject.org, kvm@vger.kernel.org,
 Bernhard Beschow <shentey@gmail.com>, Joel Upham <jupham125@gmail.com>
References: <20231019154020.99080-1-dwmw2@infradead.org>
 <20231019154020.99080-6-dwmw2@infradead.org>
Organization: Xen Project
In-Reply-To: <20231019154020.99080-6-dwmw2@infradead.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

On 19/10/2023 16:40, David Woodhouse wrote:
> From: David Woodhouse <dwmw@amazon.co.uk>
> 
> When fire_watch_cb() found the response buffer empty, it would call
> deliver_watch() to generate the XS_WATCH_EVENT message in the response
> buffer and send an event channel notification to the guest… without
> actually *copying* the response buffer into the ring. So there was
> nothing for the guest to see. The pending response didn't actually get
> processed into the ring until the guest next triggered some activity
> from its side.
> 
> Add the missing call to put_rsp().
> 
> It might have been slightly nicer to call xen_xenstore_event() here,
> which would *almost* have worked. Except for the fact that it calls
> xen_be_evtchn_pending() to check that it really does have an event
> pending (and clear the eventfd for next time). And under Xen it's
> defined that setting that fd to O_NONBLOCK isn't guaranteed to work,
> so the emu implementation follows suit.
> 
> This fixes Xen device hot-unplug.
> 
> Fixes: 0254c4d19df ("hw/xen: Add xenstore wire implementation and implementation stubs")
> Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
> ---
>   hw/i386/kvm/xen_xenstore.c | 8 +++++---
>   1 file changed, 5 insertions(+), 3 deletions(-)
> 
> diff --git a/hw/i386/kvm/xen_xenstore.c b/hw/i386/kvm/xen_xenstore.c
> index 660d0b72f9..82a215058a 100644
> --- a/hw/i386/kvm/xen_xenstore.c
> +++ b/hw/i386/kvm/xen_xenstore.c
> @@ -1357,10 +1357,12 @@ static void fire_watch_cb(void *opaque, const char *path, const char *token)
>       } else {
>           deliver_watch(s, path, token);
>           /*
> -         * If the message was queued because there was already ring activity,
> -         * no need to wake the guest. But if not, we need to send the evtchn.
> +         * Attempt to queue the message into the actual ring, and send
> +         * the event channel notification if any bytes are copied.
>            */
> -        xen_be_evtchn_notify(s->eh, s->be_port);
> +        if (put_rsp(s) > 0) {
> +            xen_be_evtchn_notify(s->eh, s->be_port);
> +        }

There's actually the potential for an assertion failure there; if the 
guest has specified an oversize token then deliver_watch() will not set 
rsp_pending... then put_rsp() will fail its assertion that the flag is true.

   Paul

>       }
>   }
>   



From xen-devel-bounces@lists.xenproject.org Tue Oct 24 15:22:09 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 15:22:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622109.969318 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvJEM-0007mC-PV; Tue, 24 Oct 2023 15:22:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622109.969318; Tue, 24 Oct 2023 15:22: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 1qvJEM-0007m5-MJ; Tue, 24 Oct 2023 15:22:06 +0000
Received: by outflank-mailman (input) for mailman id 622109;
 Tue, 24 Oct 2023 15:22: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=urDo=GG=bugseng.com=federico.serafini@srs-se1.protection.inumbo.net>)
 id 1qvJEL-0007lz-SQ
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 15:22:05 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 15da5a4d-7281-11ee-9b0e-b553b5be7939;
 Tue, 24 Oct 2023 17:22:03 +0200 (CEST)
Received: from [192.168.1.15] (host-95-247-204-25.retail.telecomitalia.it
 [95.247.204.25])
 by support.bugseng.com (Postfix) with ESMTPSA id 1CE7F4EE0742;
 Tue, 24 Oct 2023 17:22: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: 15da5a4d-7281-11ee-9b0e-b553b5be7939
Message-ID: <91821158-66ff-4c4e-b117-9b7f0f17eb10@bugseng.com>
Date: Tue, 24 Oct 2023 17:22:02 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN RFC] xen/automation: add deviations for MISRA C:2012 Rule
 8.3
Content-Language: en-US, it
To: Jan Beulich <jbeulich@suse.com>
Cc: consulting@bugseng.com, Simone Ballarin <simone.ballarin@bugseng.com>,
 Doug Goldstein <cardoe@cardoe.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: <565552f9e7cfff56fb1d1037cfa9662a1818c5d3.1698153310.git.federico.serafini@bugseng.com>
 <4019825c-3307-8e0d-63f2-22d651a7ca32@suse.com>
From: Federico Serafini <federico.serafini@bugseng.com>
Organization: BUGSENG srl
In-Reply-To: <4019825c-3307-8e0d-63f2-22d651a7ca32@suse.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 24/10/23 16:32, Jan Beulich wrote:
> On 24.10.2023 15:22, Federico Serafini wrote:
>> Update ECLAIR configuration to deviate Rule 8.3 ("All declarations of
>> an object or function shall use the same names and type qualifiers")
>> for the following functions:
>> - set_px_pminfo();
>> - guest_walk_tables_[0-9]+_levels().
>>
>> Update file docs/misra/deviations.rst accordingly.
>> No functional change.
>>
>> Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
>> ---
>> I had a discussion with Jan about the reasons behind the choice of parameter
>> name 'walk' for the definitions of functions guest_walk_tables_[0-9]+_levels()
>> and the parameter name 'pfec' for the corresponding declarations.
>> Also for the function set_px_pminfo(), it seems that the parameter names are
>> different on purpose.
> 
> In this latter case I wonder why you think so. Did I end up making a
> misleading comment anywhere? It looks to me as if naming the parameter
> in question "perf" uniformly would be quite okay.
> 
> Jan

No, it was just my impression.
What about the mismatch on the first parameter "acpi_id" vs "cpu"?

-- 
Federico Serafini, M.Sc.

Software Engineer, BUGSENG (http://bugseng.com)


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 15:22:36 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 15:22:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622113.969327 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvJEq-0008I4-0d; Tue, 24 Oct 2023 15:22:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622113.969327; Tue, 24 Oct 2023 15:22: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 1qvJEp-0008Hx-UC; Tue, 24 Oct 2023 15:22:35 +0000
Received: by outflank-mailman (input) for mailman id 622113;
 Tue, 24 Oct 2023 15:22: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=jXWl=GG=casper.srs.infradead.org=BATV+e2898748ca55db067849+7366+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qvJEp-0007lz-0d
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 15:22:35 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 26c36a9a-7281-11ee-9b0e-b553b5be7939;
 Tue, 24 Oct 2023 17:22:32 +0200 (CEST)
Received: from [2001:8b0:10b:5:758e:a1c4:bc7:e7a7]
 (helo=u3832b3a9db3152.ant.amazon.com)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qvJEl-003ERB-MI; Tue, 24 Oct 2023 15:22: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: 26c36a9a-7281-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=MIME-Version:Content-Type:References:
	In-Reply-To:Date:Cc:To:From:Subject:Message-ID:Sender:Reply-To:
	Content-Transfer-Encoding:Content-ID:Content-Description;
	bh=JlWO6RgVPGd8M61ZGob0FmKUMzP8OvgxEpu1tN6QSyY=; b=hP/8A+nbVK64Ypy4/i0/KnUdkd
	AeYPMQxRl/oWxCcSujRqYqqqeNjqoi7Ib3lFXLFK+8bOv9lFyGap4cLMJ9voAlaNtSFJWmMcXs/db
	jztBXH7gc0IjbbPbb3Rv7rERq3EfbezJ1yJWPnzLfLq6oYdyVzRsaH0lgzbJVBdYGwFILEziB3nzZ
	/oRNOx41L7s2+jAZKC7yO2kbe8INnpbhW8dDmh3u/qTe+x0kvDjn3A5iLAZtDjgvpcg3DIYxMIv2F
	yGI92KLJo8UTi1McQ2mfQ8dyeiedr0oRlJgjIyHgDM/zzuIbVmq2hUQauEDavLBAV4cl+IfPWYFzN
	B/P4CWtA==;
Message-ID: <7231ce3df7a3872b87e092bd3ed79bc5aa0f1484.camel@infradead.org>
Subject: Re: [PATCH 1/4] hw/xen: only remove peers of PCI NICs on unplug
From: David Woodhouse <dwmw2@infradead.org>
To: paul@xen.org, qemu-devel@nongnu.org
Cc: "Michael S. Tsirkin" <mst@redhat.com>, Marcel Apfelbaum
 <marcel.apfelbaum@gmail.com>, Paolo Bonzini <pbonzini@redhat.com>, Richard
 Henderson <richard.henderson@linaro.org>, Eduardo Habkost
 <eduardo@habkost.net>, Stefano Stabellini <sstabellini@kernel.org>, Anthony
 Perard <anthony.perard@citrix.com>, Jason Wang <jasowang@redhat.com>,
 xen-devel@lists.xenproject.org
Date: Tue, 24 Oct 2023 16:22:31 +0100
In-Reply-To: <1408fb32-3d91-4eb2-b0e7-4eba0f449906@xen.org>
References: <20231017182545.97973-1-dwmw2@infradead.org>
	 <20231017182545.97973-2-dwmw2@infradead.org>
	 <1408fb32-3d91-4eb2-b0e7-4eba0f449906@xen.org>
Content-Type: multipart/signed; micalg="sha-256"; protocol="application/pkcs7-signature";
	boundary="=-8AqSwZNUIqYzq2jVXXzA"
User-Agent: Evolution 3.44.4-0ubuntu2 
MIME-Version: 1.0
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html


--=-8AqSwZNUIqYzq2jVXXzA
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Tue, 2023-10-24 at 15:32 +0100, Paul Durrant wrote:
> On 17/10/2023 19:25, David Woodhouse wrote:
> > From: David Woodhouse <dwmw@amazon.co.uk>
> >=20
> > When the Xen guest asks to unplug *emulated* NICs, it's kind of unhelpf=
ul
> > also to unplug the peer of the *Xen* PV NIC.
> >=20
> > Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
> > ---
> > =C2=A0=C2=A0 hw/i386/xen/xen_platform.c | 9 +++++++--
> > =C2=A0=C2=A0 1 file changed, 7 insertions(+), 2 deletions(-)
> >=20
> > diff --git a/hw/i386/xen/xen_platform.c b/hw/i386/xen/xen_platform.c
> > index 17457ff3de..e2dd1b536a 100644
> > --- a/hw/i386/xen/xen_platform.c
> > +++ b/hw/i386/xen/xen_platform.c
> > @@ -140,9 +140,14 @@ static void unplug_nic(PCIBus *b, PCIDevice *d, vo=
id *o)
> > =C2=A0=C2=A0 /* Remove the peer of the NIC device. Normally, this would=
 be a tap device. */
> > =C2=A0=C2=A0 static void del_nic_peer(NICState *nic, void *opaque)
> > =C2=A0=C2=A0 {
> > -=C2=A0=C2=A0=C2=A0 NetClientState *nc;
> > +=C2=A0=C2=A0=C2=A0 NetClientState *nc =3D qemu_get_queue(nic);
> > +=C2=A0=C2=A0=C2=A0 ObjectClass *klass =3D module_object_class_by_name(=
nc->model);
> > +
> > +=C2=A0=C2=A0=C2=A0 /* Only delete peers of PCI NICs that we're about t=
o delete */
> > +=C2=A0=C2=A0=C2=A0 if (!klass || !object_class_dynamic_cast(klass, TYP=
E_PCI_DEVICE)) {
>=20
> Would it not be better to test for object_class_dynamic_cast(klass,=20
> TYPE_XEN_DEVICE)?

Only if we also change the actual unplug to destroy non-PCI devices too.

The only non-PCI device you could have here is an ISA NE2000, I think.

--=-8AqSwZNUIqYzq2jVXXzA
Content-Type: application/pkcs7-signature; name="smime.p7s"
Content-Disposition: attachment; filename="smime.p7s"
Content-Transfer-Encoding: base64

MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgEFADCABgkqhkiG9w0BBwEAAKCCEkQw
ggYQMIID+KADAgECAhBNlCwQ1DvglAnFgS06KwZPMA0GCSqGSIb3DQEBDAUAMIGIMQswCQYDVQQG
EwJVUzETMBEGA1UECBMKTmV3IEplcnNleTEUMBIGA1UEBxMLSmVyc2V5IENpdHkxHjAcBgNVBAoT
FVRoZSBVU0VSVFJVU1QgTmV0d29yazEuMCwGA1UEAxMlVVNFUlRydXN0IFJTQSBDZXJ0aWZpY2F0
aW9uIEF1dGhvcml0eTAeFw0xODExMDIwMDAwMDBaFw0zMDEyMzEyMzU5NTlaMIGWMQswCQYDVQQG
EwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYD
VQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50
aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC
AQEAyjztlApB/975Rrno1jvm2pK/KxBOqhq8gr2+JhwpKirSzZxQgT9tlC7zl6hn1fXjSo5MqXUf
ItMltrMaXqcESJuK8dtK56NCSrq4iDKaKq9NxOXFmqXX2zN8HHGjQ2b2Xv0v1L5Nk1MQPKA19xeW
QcpGEGFUUd0kN+oHox+L9aV1rjfNiCj3bJk6kJaOPabPi2503nn/ITX5e8WfPnGw4VuZ79Khj1YB
rf24k5Ee1sLTHsLtpiK9OjG4iQRBdq6Z/TlVx/hGAez5h36bBJMxqdHLpdwIUkTqT8se3ed0PewD
ch/8kHPo5fZl5u1B0ecpq/sDN/5sCG52Ds+QU5O5EwIDAQABo4IBZDCCAWAwHwYDVR0jBBgwFoAU
U3m/WqorSs9UgOHYm8Cd8rIDZsswHQYDVR0OBBYEFAnA8vwL2pTbX/4r36iZQs/J4K0AMA4GA1Ud
DwEB/wQEAwIBhjASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEF
BQcDBDARBgNVHSAECjAIMAYGBFUdIAAwUAYDVR0fBEkwRzBFoEOgQYY/aHR0cDovL2NybC51c2Vy
dHJ1c3QuY29tL1VTRVJUcnVzdFJTQUNlcnRpZmljYXRpb25BdXRob3JpdHkuY3JsMHYGCCsGAQUF
BwEBBGowaDA/BggrBgEFBQcwAoYzaHR0cDovL2NydC51c2VydHJ1c3QuY29tL1VTRVJUcnVzdFJT
QUFkZFRydXN0Q0EuY3J0MCUGCCsGAQUFBzABhhlodHRwOi8vb2NzcC51c2VydHJ1c3QuY29tMA0G
CSqGSIb3DQEBDAUAA4ICAQBBRHUAqznCFfXejpVtMnFojADdF9d6HBA4kMjjsb0XMZHztuOCtKF+
xswhh2GqkW5JQrM8zVlU+A2VP72Ky2nlRA1GwmIPgou74TZ/XTarHG8zdMSgaDrkVYzz1g3nIVO9
IHk96VwsacIvBF8JfqIs+8aWH2PfSUrNxP6Ys7U0sZYx4rXD6+cqFq/ZW5BUfClN/rhk2ddQXyn7
kkmka2RQb9d90nmNHdgKrwfQ49mQ2hWQNDkJJIXwKjYA6VUR/fZUFeCUisdDe/0ABLTI+jheXUV1
eoYV7lNwNBKpeHdNuO6Aacb533JlfeUHxvBz9OfYWUiXu09sMAviM11Q0DuMZ5760CdO2VnpsXP4
KxaYIhvqPqUMWqRdWyn7crItNkZeroXaecG03i3mM7dkiPaCkgocBg0EBYsbZDZ8bsG3a08LwEsL
1Ygz3SBsyECa0waq4hOf/Z85F2w2ZpXfP+w8q4ifwO90SGZZV+HR/Jh6rEaVPDRF/CEGVqR1hiuQ
OZ1YL5ezMTX0ZSLwrymUE0pwi/KDaiYB15uswgeIAcA6JzPFf9pLkAFFWs1QNyN++niFhsM47qod
x/PL+5jR87myx5uYdBEQkkDc+lKB1Wct6ucXqm2EmsaQ0M95QjTmy+rDWjkDYdw3Ms6mSWE3Bn7i
5ZgtwCLXgAIe5W8mybM2JzCCBhQwggT8oAMCAQICEQDGvhmWZ0DEAx0oURL6O6l+MA0GCSqGSIb3
DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYD
VQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28g
UlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMB4XDTIyMDEwNzAw
MDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJARYTZHdtdzJAaW5mcmFkZWFkLm9y
ZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3GpC2bomUqk+91wLYBzDMcCj5C9m6
oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZHh7htyAkWYVoFsFPrwHounto8xTsy
SSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT9YgcBqKCo65pTFmOnR/VVbjJk4K2
xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNjP+qDrh0db7PAjO1D4d5ftfrsf+kd
RR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy2U+eITZ5LLE5s45mX2oPFknWqxBo
bQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3BgBEmfsYWlBXO8rVXfvPgLs32VdV
NZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/7auNVRmPB3v5SWEsH8xi4Bez2V9U
KxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmdlFYhAflWKQ03Ufiu8t3iBE3VJbc2
5oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9aelIl6vtbhMA+l0nfrsORMa4kobqQ5
C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMBAAGjggHMMIIByDAfBgNVHSMEGDAW
gBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeDMcimo0oz8o1R1Nver3ZVpSkwDgYD
VR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYwFAYIKwYBBQUHAwQGCCsGAQUFBwMC
MEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYBBQUHAgEWF2h0dHBzOi8vc2VjdGln
by5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9jcmwuc2VjdGlnby5jb20vU2VjdGln
b1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1haWxDQS5jcmwwgYoGCCsGAQUFBwEB
BH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdvLmNvbS9TZWN0aWdvUlNBQ2xpZW50
QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAjBggrBgEFBQcwAYYXaHR0cDovL29j
c3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5mcmFkZWFkLm9yZzANBgkqhkiG9w0B
AQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQvQ/fzPXmtR9t54rpmI2TfyvcKgOXp
qa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvIlSPrzIB4Z2wyIGQpaPLlYflrrVFK
v9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9ChWFfgSXvrWDZspnU3Gjw/rMHrGnql
Htlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0whpBtXdyDjzBtQTaZJ7zTT/vlehc/
tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9IzCCBhQwggT8oAMCAQICEQDGvhmW
Z0DEAx0oURL6O6l+MA0GCSqGSIb3DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3Jl
YXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0
ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJl
IEVtYWlsIENBMB4XDTIyMDEwNzAwMDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJ
ARYTZHdtdzJAaW5mcmFkZWFkLm9yZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3
GpC2bomUqk+91wLYBzDMcCj5C9m6oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZH
h7htyAkWYVoFsFPrwHounto8xTsySSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT
9YgcBqKCo65pTFmOnR/VVbjJk4K2xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNj
P+qDrh0db7PAjO1D4d5ftfrsf+kdRR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy
2U+eITZ5LLE5s45mX2oPFknWqxBobQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3
BgBEmfsYWlBXO8rVXfvPgLs32VdVNZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/
7auNVRmPB3v5SWEsH8xi4Bez2V9UKxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmd
lFYhAflWKQ03Ufiu8t3iBE3VJbc25oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9ae
lIl6vtbhMA+l0nfrsORMa4kobqQ5C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMB
AAGjggHMMIIByDAfBgNVHSMEGDAWgBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeD
Mcimo0oz8o1R1Nver3ZVpSkwDgYDVR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYw
FAYIKwYBBQUHAwQGCCsGAQUFBwMCMEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYB
BQUHAgEWF2h0dHBzOi8vc2VjdGlnby5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9j
cmwuc2VjdGlnby5jb20vU2VjdGlnb1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1h
aWxDQS5jcmwwgYoGCCsGAQUFBwEBBH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdv
LmNvbS9TZWN0aWdvUlNBQ2xpZW50QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAj
BggrBgEFBQcwAYYXaHR0cDovL29jc3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5m
cmFkZWFkLm9yZzANBgkqhkiG9w0BAQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQv
Q/fzPXmtR9t54rpmI2TfyvcKgOXpqa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvI
lSPrzIB4Z2wyIGQpaPLlYflrrVFKv9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9Ch
WFfgSXvrWDZspnU3Gjw/rMHrGnqlHtlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0w
hpBtXdyDjzBtQTaZJ7zTT/vlehc/tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9
IzGCBMcwggTDAgEBMIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVz
dGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMT
NVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEA
xr4ZlmdAxAMdKFES+jupfjANBglghkgBZQMEAgEFAKCCAeswGAYJKoZIhvcNAQkDMQsGCSqGSIb3
DQEHATAcBgkqhkiG9w0BCQUxDxcNMjMxMDI0MTUyMjMxWjAvBgkqhkiG9w0BCQQxIgQgwt6djrXv
wJCpoK+au8BOIJfs9h91P8ZiT76vXzYrVo4wgb0GCSsGAQQBgjcQBDGBrzCBrDCBljELMAkGA1UE
BhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEYMBYG
A1UEChMPU2VjdGlnbyBMaW1pdGVkMT4wPAYDVQQDEzVTZWN0aWdvIFJTQSBDbGllbnQgQXV0aGVu
dGljYXRpb24gYW5kIFNlY3VyZSBFbWFpbCBDQQIRAMa+GZZnQMQDHShREvo7qX4wgb8GCyqGSIb3
DQEJEAILMYGvoIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVy
MRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNl
Y3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEAxr4Z
lmdAxAMdKFES+jupfjANBgkqhkiG9w0BAQEFAASCAgAeaiStWe3Sm1mTFINlX7di9PVJ016mvhq4
uKTn5gyg6RFb6/+IIA/tpRRK+8VhIK7s/1V6rWxkrblQbg4uIIHMD+OG01AmQ9SFcgBW9QKXB1P7
56/2xAUEZaJ9sgU3d+ldOWvnDKs2rg9MRIYbUsyNBeBKvfbo1Cj3H318vGKF2PEQnHDcEtujpc9t
6rs7vtwWlDMY//siT2kwGu/o8RurHGWnmh4pvWeLrTq6c019Fh9+tmYOrDuUYaibJh6bYLSkTuH8
orlMxHi4etIgJkyzxowAFj68TNWw9cQJZ7G5E/rfe25mHDkz8kZI6U7dIJHhEDBIlqvIfuBkUQTx
mWyjkZ6Qm8WA/q/WBowPD4XdAI5l87yyxKq9FA2PJ0fAyXvmaSazfgrai4/EtkuOYifAHm63DCPd
D+367pA7WAMPj6VzURxHdeZVPqbaxVCUhJW/w5psRkOJtdCIK73XCOrYmtjM8alvEwVLSXT/zx7l
u/y6xz3DEXPDGQ14Ul9LdbBfCy4rueoalptMxQOWSgeGS2tDAJdrNALtBSQ4yjQ3UUy7mdxAYYUh
LiH58BhVdJyEQQeM1MGLXM2iVHvVGqUoFgqOpnzPM/H1rD1YiNzo3Wn1wDlxhrbiq6QfkHHMDSH/
LiV5tSUPxqPaUWwpAKiId7++f5+kw/vZBS1cGB5z5gAAAAAAAA==


--=-8AqSwZNUIqYzq2jVXXzA--


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 15:27:26 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 15:27:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622118.969338 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvJJR-0002Bp-MK; Tue, 24 Oct 2023 15:27:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622118.969338; Tue, 24 Oct 2023 15:27: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 1qvJJR-0002Bi-JB; Tue, 24 Oct 2023 15:27:21 +0000
Received: by outflank-mailman (input) for mailman id 622118;
 Tue, 24 Oct 2023 15:27: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=jXWl=GG=casper.srs.infradead.org=BATV+e2898748ca55db067849+7366+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qvJJQ-0002Bc-Cf
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 15:27:20 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id d096f00e-7281-11ee-9b0e-b553b5be7939;
 Tue, 24 Oct 2023 17:27:17 +0200 (CEST)
Received: from [2001:8b0:10b:5:758e:a1c4:bc7:e7a7]
 (helo=u3832b3a9db3152.ant.amazon.com)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qvJJL-003Ed2-K7; Tue, 24 Oct 2023 15: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>
X-Inumbo-ID: d096f00e-7281-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=MIME-Version:Content-Type:References:
	In-Reply-To:Date:Cc:To:From:Subject:Message-ID:Sender:Reply-To:
	Content-Transfer-Encoding:Content-ID:Content-Description;
	bh=KLE/Xc5LkxDP7tqp8Scuf6XzC5qoEmLxTvjv6+a4mmM=; b=frdrKy/FIloDFfcMDlIkcSYLTj
	sAod02Nos1o8MtuwIEMIbX19xYhncuyVsp0AOIsnYYj89tnYZVXyrrNbrgF6MkOWxZx9tFbnmjQo6
	Po6dTxMxlfjWlr/mvtxx4rG1N2suGqkNUWEmtF8cRmzyQrNPJ082/g8ySdAZJTEyqi0Y/vYfmJ2jP
	pcZ6zdt1p14oP/Ky8iZNs+r/HOMrfgcPnkrD6DXwxCJCxCgwgh9Ah6v2UvwIv5c0BST7P3R9OPF+N
	ydNf2aT5hNqKtbong1mhM8MNRK1NhRIZNsqU1N0PojhCVAgdQv6DeMIh2Y4At4WyuhgEwa6WAKJW1
	C1mQRl7Q==;
Message-ID: <66d977d982978aff20aade4d3150957fcfa418b7.camel@infradead.org>
Subject: Re: [PATCH v2 05/24] hw/xen: fix XenStore watch delivery to guest
From: David Woodhouse <dwmw2@infradead.org>
To: paul@xen.org, qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>, Hanna Reitz <hreitz@redhat.com>, Stefano
 Stabellini <sstabellini@kernel.org>, Anthony Perard
 <anthony.perard@citrix.com>,  =?ISO-8859-1?Q?Marc-Andr=E9?= Lureau
 <marcandre.lureau@redhat.com>, Paolo Bonzini <pbonzini@redhat.com>, Richard
 Henderson <richard.henderson@linaro.org>, Eduardo Habkost
 <eduardo@habkost.net>, "Michael S. Tsirkin" <mst@redhat.com>, Marcel
 Apfelbaum <marcel.apfelbaum@gmail.com>, Jason Wang <jasowang@redhat.com>,
 Marcelo Tosatti <mtosatti@redhat.com>, Cleber Rosa <crosa@redhat.com>,
 Philippe =?ISO-8859-1?Q?Mathieu-Daud=E9?= <philmd@linaro.org>, Wainer dos
 Santos Moschetta <wainersm@redhat.com>,  Beraldo Leal <bleal@redhat.com>,
 qemu-block@nongnu.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org,
  Bernhard Beschow <shentey@gmail.com>, Joel Upham <jupham125@gmail.com>
Date: Tue, 24 Oct 2023 16:27:14 +0100
In-Reply-To: <88ce2b55-c933-4c72-933f-c8cd10470c7f@xen.org>
References: <20231019154020.99080-1-dwmw2@infradead.org>
	 <20231019154020.99080-6-dwmw2@infradead.org>
	 <88ce2b55-c933-4c72-933f-c8cd10470c7f@xen.org>
Content-Type: multipart/signed; micalg="sha-256"; protocol="application/pkcs7-signature";
	boundary="=-iuqxs7xR0Hz5L923fliC"
User-Agent: Evolution 3.44.4-0ubuntu2 
MIME-Version: 1.0
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html


--=-iuqxs7xR0Hz5L923fliC
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Tue, 2023-10-24 at 16:19 +0100, Paul Durrant wrote:
> On 19/10/2023 16:40, David Woodhouse wrote:
> > From: David Woodhouse <dwmw@amazon.co.uk>
> >=20
> > When fire_watch_cb() found the response buffer empty, it would call
> > deliver_watch() to generate the XS_WATCH_EVENT message in the response
> > buffer and send an event channel notification to the guest=E2=80=A6 wit=
hout
> > actually *copying* the response buffer into the ring. So there was
> > nothing for the guest to see. The pending response didn't actually get
> > processed into the ring until the guest next triggered some activity
> > from its side.
> >=20
> > Add the missing call to put_rsp().
> >=20
> > It might have been slightly nicer to call xen_xenstore_event() here,
> > which would *almost* have worked. Except for the fact that it calls
> > xen_be_evtchn_pending() to check that it really does have an event
> > pending (and clear the eventfd for next time). And under Xen it's
> > defined that setting that fd to O_NONBLOCK isn't guaranteed to work,
> > so the emu implementation follows suit.
> >=20
> > This fixes Xen device hot-unplug.
> >=20
> > Fixes: 0254c4d19df ("hw/xen: Add xenstore wire implementation and imple=
mentation stubs")
> > Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
> > ---
> > =C2=A0 hw/i386/kvm/xen_xenstore.c | 8 +++++---
> > =C2=A0 1 file changed, 5 insertions(+), 3 deletions(-)
> >=20
> > diff --git a/hw/i386/kvm/xen_xenstore.c b/hw/i386/kvm/xen_xenstore.c
> > index 660d0b72f9..82a215058a 100644
> > --- a/hw/i386/kvm/xen_xenstore.c
> > +++ b/hw/i386/kvm/xen_xenstore.c
> > @@ -1357,10 +1357,12 @@ static void fire_watch_cb(void *opaque, const c=
har *path, const char *token)
> > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 } else {
> > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 deliver_watch(s,=
 path, token);
> > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 /*
> > -=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 * If the message was =
queued because there was already ring activity,
> > -=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 * no need to wake the=
 guest. But if not, we need to send the evtchn.
> > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 * Attempt to queue th=
e message into the actual ring, and send
> > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 * the event channel n=
otification if any bytes are copied.
> > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 */
> > -=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 xen_be_evtchn_notify(s->eh,=
 s->be_port);
> > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 if (put_rsp(s) > 0) {
> > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 xen=
_be_evtchn_notify(s->eh, s->be_port);
> > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 }
>=20
> There's actually the potential for an assertion failure there; if the
> guest has specified an oversize token then deliver_watch() will not set=
=20
> rsp_pending... then put_rsp() will fail its assertion that the flag is tr=
ue.
>=20


Meh, I *already* had a whole paragraph in the commit message about how
it would have been nicer to just call xen_xenstore_event() :)

Thanks for spotting that; will fix it to check s->rsp_pending.



--=-iuqxs7xR0Hz5L923fliC
Content-Type: application/pkcs7-signature; name="smime.p7s"
Content-Disposition: attachment; filename="smime.p7s"
Content-Transfer-Encoding: base64

MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgEFADCABgkqhkiG9w0BBwEAAKCCEkQw
ggYQMIID+KADAgECAhBNlCwQ1DvglAnFgS06KwZPMA0GCSqGSIb3DQEBDAUAMIGIMQswCQYDVQQG
EwJVUzETMBEGA1UECBMKTmV3IEplcnNleTEUMBIGA1UEBxMLSmVyc2V5IENpdHkxHjAcBgNVBAoT
FVRoZSBVU0VSVFJVU1QgTmV0d29yazEuMCwGA1UEAxMlVVNFUlRydXN0IFJTQSBDZXJ0aWZpY2F0
aW9uIEF1dGhvcml0eTAeFw0xODExMDIwMDAwMDBaFw0zMDEyMzEyMzU5NTlaMIGWMQswCQYDVQQG
EwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYD
VQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50
aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC
AQEAyjztlApB/975Rrno1jvm2pK/KxBOqhq8gr2+JhwpKirSzZxQgT9tlC7zl6hn1fXjSo5MqXUf
ItMltrMaXqcESJuK8dtK56NCSrq4iDKaKq9NxOXFmqXX2zN8HHGjQ2b2Xv0v1L5Nk1MQPKA19xeW
QcpGEGFUUd0kN+oHox+L9aV1rjfNiCj3bJk6kJaOPabPi2503nn/ITX5e8WfPnGw4VuZ79Khj1YB
rf24k5Ee1sLTHsLtpiK9OjG4iQRBdq6Z/TlVx/hGAez5h36bBJMxqdHLpdwIUkTqT8se3ed0PewD
ch/8kHPo5fZl5u1B0ecpq/sDN/5sCG52Ds+QU5O5EwIDAQABo4IBZDCCAWAwHwYDVR0jBBgwFoAU
U3m/WqorSs9UgOHYm8Cd8rIDZsswHQYDVR0OBBYEFAnA8vwL2pTbX/4r36iZQs/J4K0AMA4GA1Ud
DwEB/wQEAwIBhjASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEF
BQcDBDARBgNVHSAECjAIMAYGBFUdIAAwUAYDVR0fBEkwRzBFoEOgQYY/aHR0cDovL2NybC51c2Vy
dHJ1c3QuY29tL1VTRVJUcnVzdFJTQUNlcnRpZmljYXRpb25BdXRob3JpdHkuY3JsMHYGCCsGAQUF
BwEBBGowaDA/BggrBgEFBQcwAoYzaHR0cDovL2NydC51c2VydHJ1c3QuY29tL1VTRVJUcnVzdFJT
QUFkZFRydXN0Q0EuY3J0MCUGCCsGAQUFBzABhhlodHRwOi8vb2NzcC51c2VydHJ1c3QuY29tMA0G
CSqGSIb3DQEBDAUAA4ICAQBBRHUAqznCFfXejpVtMnFojADdF9d6HBA4kMjjsb0XMZHztuOCtKF+
xswhh2GqkW5JQrM8zVlU+A2VP72Ky2nlRA1GwmIPgou74TZ/XTarHG8zdMSgaDrkVYzz1g3nIVO9
IHk96VwsacIvBF8JfqIs+8aWH2PfSUrNxP6Ys7U0sZYx4rXD6+cqFq/ZW5BUfClN/rhk2ddQXyn7
kkmka2RQb9d90nmNHdgKrwfQ49mQ2hWQNDkJJIXwKjYA6VUR/fZUFeCUisdDe/0ABLTI+jheXUV1
eoYV7lNwNBKpeHdNuO6Aacb533JlfeUHxvBz9OfYWUiXu09sMAviM11Q0DuMZ5760CdO2VnpsXP4
KxaYIhvqPqUMWqRdWyn7crItNkZeroXaecG03i3mM7dkiPaCkgocBg0EBYsbZDZ8bsG3a08LwEsL
1Ygz3SBsyECa0waq4hOf/Z85F2w2ZpXfP+w8q4ifwO90SGZZV+HR/Jh6rEaVPDRF/CEGVqR1hiuQ
OZ1YL5ezMTX0ZSLwrymUE0pwi/KDaiYB15uswgeIAcA6JzPFf9pLkAFFWs1QNyN++niFhsM47qod
x/PL+5jR87myx5uYdBEQkkDc+lKB1Wct6ucXqm2EmsaQ0M95QjTmy+rDWjkDYdw3Ms6mSWE3Bn7i
5ZgtwCLXgAIe5W8mybM2JzCCBhQwggT8oAMCAQICEQDGvhmWZ0DEAx0oURL6O6l+MA0GCSqGSIb3
DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYD
VQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28g
UlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMB4XDTIyMDEwNzAw
MDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJARYTZHdtdzJAaW5mcmFkZWFkLm9y
ZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3GpC2bomUqk+91wLYBzDMcCj5C9m6
oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZHh7htyAkWYVoFsFPrwHounto8xTsy
SSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT9YgcBqKCo65pTFmOnR/VVbjJk4K2
xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNjP+qDrh0db7PAjO1D4d5ftfrsf+kd
RR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy2U+eITZ5LLE5s45mX2oPFknWqxBo
bQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3BgBEmfsYWlBXO8rVXfvPgLs32VdV
NZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/7auNVRmPB3v5SWEsH8xi4Bez2V9U
KxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmdlFYhAflWKQ03Ufiu8t3iBE3VJbc2
5oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9aelIl6vtbhMA+l0nfrsORMa4kobqQ5
C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMBAAGjggHMMIIByDAfBgNVHSMEGDAW
gBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeDMcimo0oz8o1R1Nver3ZVpSkwDgYD
VR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYwFAYIKwYBBQUHAwQGCCsGAQUFBwMC
MEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYBBQUHAgEWF2h0dHBzOi8vc2VjdGln
by5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9jcmwuc2VjdGlnby5jb20vU2VjdGln
b1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1haWxDQS5jcmwwgYoGCCsGAQUFBwEB
BH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdvLmNvbS9TZWN0aWdvUlNBQ2xpZW50
QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAjBggrBgEFBQcwAYYXaHR0cDovL29j
c3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5mcmFkZWFkLm9yZzANBgkqhkiG9w0B
AQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQvQ/fzPXmtR9t54rpmI2TfyvcKgOXp
qa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvIlSPrzIB4Z2wyIGQpaPLlYflrrVFK
v9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9ChWFfgSXvrWDZspnU3Gjw/rMHrGnql
Htlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0whpBtXdyDjzBtQTaZJ7zTT/vlehc/
tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9IzCCBhQwggT8oAMCAQICEQDGvhmW
Z0DEAx0oURL6O6l+MA0GCSqGSIb3DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3Jl
YXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0
ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJl
IEVtYWlsIENBMB4XDTIyMDEwNzAwMDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJ
ARYTZHdtdzJAaW5mcmFkZWFkLm9yZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3
GpC2bomUqk+91wLYBzDMcCj5C9m6oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZH
h7htyAkWYVoFsFPrwHounto8xTsySSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT
9YgcBqKCo65pTFmOnR/VVbjJk4K2xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNj
P+qDrh0db7PAjO1D4d5ftfrsf+kdRR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy
2U+eITZ5LLE5s45mX2oPFknWqxBobQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3
BgBEmfsYWlBXO8rVXfvPgLs32VdVNZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/
7auNVRmPB3v5SWEsH8xi4Bez2V9UKxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmd
lFYhAflWKQ03Ufiu8t3iBE3VJbc25oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9ae
lIl6vtbhMA+l0nfrsORMa4kobqQ5C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMB
AAGjggHMMIIByDAfBgNVHSMEGDAWgBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeD
Mcimo0oz8o1R1Nver3ZVpSkwDgYDVR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYw
FAYIKwYBBQUHAwQGCCsGAQUFBwMCMEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYB
BQUHAgEWF2h0dHBzOi8vc2VjdGlnby5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9j
cmwuc2VjdGlnby5jb20vU2VjdGlnb1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1h
aWxDQS5jcmwwgYoGCCsGAQUFBwEBBH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdv
LmNvbS9TZWN0aWdvUlNBQ2xpZW50QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAj
BggrBgEFBQcwAYYXaHR0cDovL29jc3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5m
cmFkZWFkLm9yZzANBgkqhkiG9w0BAQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQv
Q/fzPXmtR9t54rpmI2TfyvcKgOXpqa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvI
lSPrzIB4Z2wyIGQpaPLlYflrrVFKv9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9Ch
WFfgSXvrWDZspnU3Gjw/rMHrGnqlHtlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0w
hpBtXdyDjzBtQTaZJ7zTT/vlehc/tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9
IzGCBMcwggTDAgEBMIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVz
dGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMT
NVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEA
xr4ZlmdAxAMdKFES+jupfjANBglghkgBZQMEAgEFAKCCAeswGAYJKoZIhvcNAQkDMQsGCSqGSIb3
DQEHATAcBgkqhkiG9w0BCQUxDxcNMjMxMDI0MTUyNzE0WjAvBgkqhkiG9w0BCQQxIgQgHi4tIAUd
Med7ap5G1Qhj8jFYStO/ArLY+Bn0RcGpyfEwgb0GCSsGAQQBgjcQBDGBrzCBrDCBljELMAkGA1UE
BhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEYMBYG
A1UEChMPU2VjdGlnbyBMaW1pdGVkMT4wPAYDVQQDEzVTZWN0aWdvIFJTQSBDbGllbnQgQXV0aGVu
dGljYXRpb24gYW5kIFNlY3VyZSBFbWFpbCBDQQIRAMa+GZZnQMQDHShREvo7qX4wgb8GCyqGSIb3
DQEJEAILMYGvoIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVy
MRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNl
Y3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEAxr4Z
lmdAxAMdKFES+jupfjANBgkqhkiG9w0BAQEFAASCAgAg1+sfbdvPlLXZJbjLOypwb/iKCK16TxEg
inLwZVmuygfHibd8ko2RnKcNUq7MnM5zHa6KVQzheEAWFx1oqd+4L78fSHxezjf2ZhciP1wTrRo5
nsXLkXH+qMVooo3At+x/EOza9DeqMX39z7AdT2zwP+ggD7K1+ZdLIbYP1tl2wdsCpld0GNdwUN9D
BPpTnQgwG3QcB0rSUh/mJE8G8ZCltLNXpE7V5qJT4xA+vOpYYj1twUSwWr+GMRVoK89C2FEkdElA
5B43QhDNNMegHo1QRYd2TptJ0RKFJUdZ2huDMuNgxXwhbyQmCIPG3xKvsMxT+fqzkaD0Ayy8mSiq
OX1tsi264cqd9iKDNo90NwMxj0/xxBnJNJAk/xjHu50PaE5HxV9eHUk65pMB27Xhr46wYE4mDXRo
LrAbInSrbzyWw/aUxQV9oMtwmNYOqCjVHGYJ/uWv7eWbpFfrZwbFndSf3oNPmWx+fFEbhhSsNct+
GVnQTT9YyyinDvSo8OQkgZrWByTxrD6XbWvKynDOJFOI8ZEs2wHRvyq5bxchT5COOZ4dD3H3oxyC
SWAr9c24nAbXZj+06JIWQAwfxkVVSsKHMg9t37hhiLrnXVHjrNZb9NT3FXFYCBniRJKVobh/CF8I
Ri2aIBZz2U8R+aWclbg2L/Ud0TwNPW4MLY6qyQhDrgAAAAAAAA==


--=-iuqxs7xR0Hz5L923fliC--


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 15:33:49 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 15:33:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622121.969347 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvJPa-0004Y5-AJ; Tue, 24 Oct 2023 15:33:42 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622121.969347; Tue, 24 Oct 2023 15: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 1qvJPa-0004Xy-7o; Tue, 24 Oct 2023 15:33:42 +0000
Received: by outflank-mailman (input) for mailman id 622121;
 Tue, 24 Oct 2023 15:33: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=oRW6=GG=linaro.org=alex.bennee@srs-se1.protection.inumbo.net>)
 id 1qvJPY-0004Xm-60
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 15:33:40 +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 b2ea32ab-7282-11ee-9b0e-b553b5be7939;
 Tue, 24 Oct 2023 17:33:36 +0200 (CEST)
Received: by mail-lf1-x134.google.com with SMTP id
 2adb3069b0e04-507a98517f3so6453450e87.0
 for <xen-devel@lists.xenproject.org>; Tue, 24 Oct 2023 08:33:36 -0700 (PDT)
Received: from zen.linaroharston ([85.9.250.243])
 by smtp.gmail.com with ESMTPSA id
 s3-20020adfea83000000b0031980783d78sm10119502wrm.54.2023.10.24.08.33.35
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Tue, 24 Oct 2023 08:33:35 -0700 (PDT)
Received: from zen (localhost [127.0.0.1])
 by zen.linaroharston (Postfix) with ESMTP id 5E4B91FFBB;
 Tue, 24 Oct 2023 16:33:35 +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: b2ea32ab-7282-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=linaro.org; s=google; t=1698161616; x=1698766416; 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=pgn7DZOjqiLKpDeJIAWXRIPQaKWXfmUlyU40rW5Vul0=;
        b=lZTAuIRGi2zwNvQ2gPVdbAwAJXKjf9lnSpyfysRVnLqU/GipPZWCGsUL1iTyTU5Qgj
         wVuzoHmgL3j06vxoVrOLsP6C9+XPAuh8U2zNdjHO3anrQ9YrLtehS8WVN2g0ncvqU8Ro
         OKAawuOue5uvSrsgZik37yLrkq6vHOo6JNr9SLlrFu/kU4y4gKCr1p0kQ1JNTCiCghjV
         OmBeOo56r2sL8IISeT9mMI3Tssj96JjG6/jqvUdn6Ug2R1wNJ5NV2K7WN+6Dnw7W8ob3
         kvJLrKAMNV6T+54S2yiPc2HNwjtrwOY4j34pD3SgBHSXtUisyPROuS2mokJxcHJutb3B
         Vk8Q==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698161616; x=1698766416;
        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=pgn7DZOjqiLKpDeJIAWXRIPQaKWXfmUlyU40rW5Vul0=;
        b=V1P34hwdg1Zl8Klo3tL8WnpB6VclRceQ/AJJd9Cl6xPqAa7U26XGKWU1iOP5nG8Kju
         Q1ossX3AK3ODXloyavaBsJuwI/CPHgmGi41p4n2euby7YL2qBa1t5dSshe6pJ5QJ7p2h
         Eg2/QBGm0uFANzfFK8yDXO5jpijP9Vd+4IEJeI7uO3UEKhRpksD63iOC8TQ2CpZjWOgt
         20JLCwpC7L1FkabzJJY+dnpLvPQCGUpiulpXODadmlGhkqXMAkloG2M5SqYp6OWzkW5u
         gBgSgMEZw5djMcI70UqESlIQtlyE3JNG1Px+BlW7abDt2x2X07mXWLWglFnbhRPtBRNN
         ocaA==
X-Gm-Message-State: AOJu0YyLHCQ37sgykU1XTu7820g4RN1rCRxZngfJODOYt5SKg7pnpYY/
	nNQvDcY5Mj4eyaQ0wMTa7R2sGg==
X-Google-Smtp-Source: AGHT+IERaAXJZu/NEaGGq5i9CuYFrG2wQ65+x8yTDScZaEY7DCl2PsKOOkex2LHV25CK2hUsLxDFYA==
X-Received: by 2002:a05:6512:3156:b0:507:a3ae:3252 with SMTP id s22-20020a056512315600b00507a3ae3252mr8565102lfi.27.1698161616310;
        Tue, 24 Oct 2023 08:33:36 -0700 (PDT)
References: <20231016151909.22133-1-dwmw2@infradead.org>
User-agent: mu4e 1.11.22; emacs 29.1.90
From: Alex =?utf-8?Q?Benn=C3=A9e?= <alex.bennee@linaro.org>
To: David Woodhouse <dwmw2@infradead.org>
Cc: qemu-devel@nongnu.org, Kevin Wolf <kwolf@redhat.com>, Hanna Reitz
 <hreitz@redhat.com>, Stefano Stabellini <sstabellini@kernel.org>, Anthony
 Perard <anthony.perard@citrix.com>, Paul Durrant <paul@xen.org>,
 =?utf-8?Q?Marc-Andr=C3=A9?= Lureau <marcandre.lureau@redhat.com>, Paolo
 Bonzini
 <pbonzini@redhat.com>, "Michael S. Tsirkin" <mst@redhat.com>, Marcel
 Apfelbaum <marcel.apfelbaum@gmail.com>, Richard Henderson
 <richard.henderson@linaro.org>, Eduardo Habkost <eduardo@habkost.net>,
 Marcelo Tosatti <mtosatti@redhat.com>, qemu-block@nongnu.org,
 xen-devel@lists.xenproject.org, kvm@vger.kernel.org
Subject: Re: [PATCH 0/12] Get Xen PV shim running in qemu
Date: Tue, 24 Oct 2023 16:24:48 +0100
In-reply-to: <20231016151909.22133-1-dwmw2@infradead.org>
Message-ID: <877cnc2fxs.fsf@linaro.org>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable


David Woodhouse <dwmw2@infradead.org> writes:

> I hadn't got round to getting the PV shim running yet; I thought it would
> need work on the multiboot loader. Turns out it doesn't. I *did* need to
> fix a couple of brown-paper-bag bugs in the per-vCPU upcall vector suppor=
t,
> and implement Xen console support though. Now I can test PV guests:
>
>  $ qemu-system-x86_64 --accel kvm,xen-version=3D0x40011,kernel-irqchip=3D=
split \
>    -chardev stdio,mux=3Don,id=3Dchar0 -device xen-console,chardev=3Dchar0=
 \
>    -drive file=3D${GUEST_IMAGE},if=3Dxen -display none -m 1G \
>    -kernel ~/git/xen/xen/xen -initrd ~/git/linux/arch/x86/boot/bzImage
>  \

So this is a KVM guest running the Xen hypervisor (via -kernel) and a
Dom0 Linux guest (via -initrd)?

Should this work for any Xen architecture or is this x86 specific? Does
the -M machine model matter?

Would it be possible to have some sort of overview document in our
manual for how Xen guests are supported under KVM?

>    -append "loglvl=3Dall -- console=3Dhvc0 root=3D/dev/xvda1"
>
<snip>

--=20
Alex Benn=C3=A9e
Virtualisation Tech Lead @ Linaro


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 15:37:04 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 15:37:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622123.969358 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvJSo-0005m8-PL; Tue, 24 Oct 2023 15:37:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622123.969358; Tue, 24 Oct 2023 15:37: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 1qvJSo-0005m1-MS; Tue, 24 Oct 2023 15:37:02 +0000
Received: by outflank-mailman (input) for mailman id 622123;
 Tue, 24 Oct 2023 15: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=+b+W=GG=gmail.com=xadimgnik@srs-se1.protection.inumbo.net>)
 id 1qvJSn-0005lv-A4
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 15:37:01 +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 2bdd2cbb-7283-11ee-98d5-6d05b1d4d9a1;
 Tue, 24 Oct 2023 17:37:00 +0200 (CEST)
Received: by mail-wm1-x32c.google.com with SMTP id
 5b1f17b1804b1-4084f682d31so34104955e9.2
 for <xen-devel@lists.xenproject.org>; Tue, 24 Oct 2023 08:36:59 -0700 (PDT)
Received: from [192.168.6.66] (54-240-197-238.amazon.com. [54.240.197.238])
 by smtp.gmail.com with ESMTPSA id
 x24-20020a05600c179800b0040523bef620sm785126wmo.0.2023.10.24.08.36.57
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 24 Oct 2023 08:36: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: 2bdd2cbb-7283-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698161819; x=1698766619; 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=A8ZSzBnis7KNXr8T2w9cXrHfqOor5r4c/mfSgp7VlQs=;
        b=duo9hkwr4MZqsOR9kzWZSv9E66z7eVfnA/Pymi0qwVQkVTf3N7EkYAyrdA5GCpqbRH
         SsJITyeLvG6SK0BQXgtQdSMt7WFK2271TiuSZdXDEnGOGbFFCnyKjG7DoSIzAolKy7RM
         95Sb8p/pNs0XR3D507DiMSnE7QewFCagQSiIAHFkT3+l+QYDKPK69FGblm/jF3kh8sPb
         9uQgqgiLb8E69xIT8JUFfoDnpP5IVozHjjS8LHGnwzTjuiu6ccoJRyuPOY/G/Mrj7caw
         mRdxAM+yBDAfFZh533WO7vSWig6lvEp6UhvAWo2y3zfFBjnFE/pLP1xWM0ARU7JsvKHa
         Oi4g==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698161819; x=1698766619;
        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=A8ZSzBnis7KNXr8T2w9cXrHfqOor5r4c/mfSgp7VlQs=;
        b=KJT4YkXxbNeM3maVK+1O/+8NN3zjgFGtThBWo6Z/k4K+tmRXXj7vdQK/f2vgwdDvZ+
         4TCR6lH+hscdqzkERdtiaWbNve3tGfZS0NdUe/ZUOkaRrbDPMszTlIjxpMaqNVV1yVyp
         3XQyO/xumjfQZzCxzyK1uLiVH9SJ5Zoxg2MQZo+IuOnMmjokEp6FTQAmCCZT6mFZy5lD
         M4jB0lvbuTdY+Ru2TErziXGOoCd0xXjGOI93pKCyvYcFJ8IHj4/cmZYmqs/k2YP+kbQb
         rIrxKbdTj51LKpwOdJy5yReBtaov/EFnJD2A9a+MGaFx5Z+WGPQvXqtcsHEMbiJ4P3iQ
         cNGw==
X-Gm-Message-State: AOJu0YyjnYWOVd5rMR7JJQuC/YkzC9mCx5XocU1rfBaAT5hkEEUdccfo
	V+A6Z3C2EJNqWB1g1oy3+qg=
X-Google-Smtp-Source: AGHT+IF1dcmYSOIBAYhyDN+rJjDUtbiR7bpGX9yxUQ7nJ0qnc13saq8mF6pQ7QGMUfeqrZmcr7qgJw==
X-Received: by 2002:a05:600c:1d19:b0:401:b2c7:349b with SMTP id l25-20020a05600c1d1900b00401b2c7349bmr9736055wms.7.1698161819005;
        Tue, 24 Oct 2023 08:36:59 -0700 (PDT)
From: Paul Durrant <xadimgnik@gmail.com>
X-Google-Original-From: Paul Durrant <paul@xen.org>
Message-ID: <979ce4f2-195c-4488-869e-72c9abed1339@xen.org>
Date: Tue, 24 Oct 2023 16:36:56 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Reply-To: paul@xen.org
Subject: Re: [PATCH v2 10/24] hw/xen: populate store frontend nodes with
 XenStore PFN/port
Content-Language: en-US
To: David Woodhouse <dwmw2@infradead.org>, qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>, Hanna Reitz <hreitz@redhat.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Anthony Perard <anthony.perard@citrix.com>,
 =?UTF-8?Q?Marc-Andr=C3=A9_Lureau?= <marcandre.lureau@redhat.com>,
 Paolo Bonzini <pbonzini@redhat.com>,
 Richard Henderson <richard.henderson@linaro.org>,
 Eduardo Habkost <eduardo@habkost.net>, "Michael S. Tsirkin"
 <mst@redhat.com>, Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
 Jason Wang <jasowang@redhat.com>, Marcelo Tosatti <mtosatti@redhat.com>,
 Cleber Rosa <crosa@redhat.com>, =?UTF-8?Q?Philippe_Mathieu-Daud=C3=A9?=
 <philmd@linaro.org>, Wainer dos Santos Moschetta <wainersm@redhat.com>,
 Beraldo Leal <bleal@redhat.com>, qemu-block@nongnu.org,
 xen-devel@lists.xenproject.org, kvm@vger.kernel.org,
 Bernhard Beschow <shentey@gmail.com>, Joel Upham <jupham125@gmail.com>
References: <20231019154020.99080-1-dwmw2@infradead.org>
 <20231019154020.99080-11-dwmw2@infradead.org>
Organization: Xen Project
In-Reply-To: <20231019154020.99080-11-dwmw2@infradead.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 19/10/2023 16:40, David Woodhouse wrote:
> From: David Woodhouse <dwmw@amazon.co.uk>
> 
> This is kind of redundant since without being able to get these through
> some other method (HVMOP_get_param) the guest wouldn't be able to access
> XenStore in order to find them. But Xen populates them, and it does
> allow guests to *rebind* to the event channel port after a reset.
> 
> Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
> ---
>   hw/i386/kvm/xen_xenstore.c | 11 +++++++++++
>   1 file changed, 11 insertions(+)
> 

Reviewed-by: Paul Durrant <paul@xen.org>



From xen-devel-bounces@lists.xenproject.org Tue Oct 24 15:37:23 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 15:37:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622125.969368 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvJT9-0006Au-2F; Tue, 24 Oct 2023 15:37:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622125.969368; Tue, 24 Oct 2023 15:37: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 1qvJT8-0006An-UU; Tue, 24 Oct 2023 15:37:22 +0000
Received: by outflank-mailman (input) for mailman id 622125;
 Tue, 24 Oct 2023 15:37: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=jXWl=GG=casper.srs.infradead.org=BATV+e2898748ca55db067849+7366+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qvJT7-0005lv-MP
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 15:37:22 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 37389320-7283-11ee-98d5-6d05b1d4d9a1;
 Tue, 24 Oct 2023 17:37:20 +0200 (CEST)
Received: from [2001:8b0:10b:5:758e:a1c4:bc7:e7a7]
 (helo=u3832b3a9db3152.ant.amazon.com)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qvJT2-003HT2-Gt; Tue, 24 Oct 2023 15:37: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: 37389320-7283-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=MIME-Version:Content-Type:References:
	In-Reply-To:Date:Cc:To:From:Subject:Message-ID:Sender:Reply-To:
	Content-Transfer-Encoding:Content-ID:Content-Description;
	bh=GcliOrNuP8wnU0iWo4lGXxayrjpRxQQu2qojBZJdqmg=; b=OrvNgW3Rw8+ikfyo8r9Mj/uZ3Y
	UoIke1B4HKLPLUisZcs4alXBwtJx7++dvi1ryN/ZW4UXqMq7kyeEypyJX/OvyHqlUaMWN5wwrh0kb
	ZKVxbIcQiOD+2OpGEnVnCzT2T0NaZ2bKqqpWmQyas5M0Stmp0M1JlIK6N8l1Kw2TBrScVJsJo1qk+
	BVcCKufDWvfXBll5dP9hrKwh5D27eKLQsgga07wbsx7NA7AMuvWNGvqYj2dfM3GxTOhyu+qAKFswP
	dlBKZTLFTt2mJrqGAlEnEM6xCv0g+f6VoOeP5gnrLK30aAJUfYeNd1qw//EtF9bbE7/yxbyUpbKY7
	vqzWB/jA==;
Message-ID: <3acd078bba2d824f836b20a270c780dc2d031c43.camel@infradead.org>
Subject: Re: [PATCH 12/12] hw/xen: add support for Xen primary console in
 emulated mode
From: David Woodhouse <dwmw2@infradead.org>
To: paul@xen.org, qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>, Hanna Reitz <hreitz@redhat.com>, Stefano
 Stabellini <sstabellini@kernel.org>, Anthony Perard
 <anthony.perard@citrix.com>,  =?ISO-8859-1?Q?Marc-Andr=E9?= Lureau
 <marcandre.lureau@redhat.com>, Paolo Bonzini <pbonzini@redhat.com>,
 "Michael S. Tsirkin" <mst@redhat.com>, Marcel Apfelbaum
 <marcel.apfelbaum@gmail.com>, Richard Henderson
 <richard.henderson@linaro.org>, Eduardo Habkost <eduardo@habkost.net>, 
 Marcelo Tosatti <mtosatti@redhat.com>, qemu-block@nongnu.org,
 xen-devel@lists.xenproject.org, kvm@vger.kernel.org
Date: Tue, 24 Oct 2023 16:37:15 +0100
In-Reply-To: <c18439ca-c9ae-4567-bbcf-dffe6f7b72e3@xen.org>
References: <20231016151909.22133-1-dwmw2@infradead.org>
	 <20231016151909.22133-13-dwmw2@infradead.org>
	 <c18439ca-c9ae-4567-bbcf-dffe6f7b72e3@xen.org>
Content-Type: multipart/signed; micalg="sha-256"; protocol="application/pkcs7-signature";
	boundary="=-SuOARZGUYKo6zLbZlrwE"
User-Agent: Evolution 3.44.4-0ubuntu2 
MIME-Version: 1.0
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html


--=-SuOARZGUYKo6zLbZlrwE
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Tue, 2023-10-24 at 15:20 +0100, Paul Durrant wrote:
> On 16/10/2023 16:19, David Woodhouse wrote:
> > From: David Woodhouse <dwmw@amazon.co.uk>
> >=20
> > The primary console is special because the toolstack maps a page at a
> > fixed GFN and also allocates the guest-side event channel. Add support
> > for that in emulated mode, so that we can have a primary console.
> >=20
> > Add a *very* rudimentary stub of foriegnmem ops for emulated mode, whic=
h
> > supports literally nothing except a single-page mapping of the console
> > page. This might as well have been a hack in the xen_console driver, bu=
t
> > this way at least the special-casing is kept within the Xen emulation
> > code, and it gives us a hook for a more complete implementation if/when
> > we ever do need one.
> >=20
> Why can't you map the console page via the grant table like the xenstore=
=20
> page?

I suppose we could, but I didn't really want the generic xen-console
device code having any more of a special case for 'Xen emulation' than
it does already by having to call xen_primary_console_create().



--=-SuOARZGUYKo6zLbZlrwE
Content-Type: application/pkcs7-signature; name="smime.p7s"
Content-Disposition: attachment; filename="smime.p7s"
Content-Transfer-Encoding: base64

MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgEFADCABgkqhkiG9w0BBwEAAKCCEkQw
ggYQMIID+KADAgECAhBNlCwQ1DvglAnFgS06KwZPMA0GCSqGSIb3DQEBDAUAMIGIMQswCQYDVQQG
EwJVUzETMBEGA1UECBMKTmV3IEplcnNleTEUMBIGA1UEBxMLSmVyc2V5IENpdHkxHjAcBgNVBAoT
FVRoZSBVU0VSVFJVU1QgTmV0d29yazEuMCwGA1UEAxMlVVNFUlRydXN0IFJTQSBDZXJ0aWZpY2F0
aW9uIEF1dGhvcml0eTAeFw0xODExMDIwMDAwMDBaFw0zMDEyMzEyMzU5NTlaMIGWMQswCQYDVQQG
EwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYD
VQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50
aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC
AQEAyjztlApB/975Rrno1jvm2pK/KxBOqhq8gr2+JhwpKirSzZxQgT9tlC7zl6hn1fXjSo5MqXUf
ItMltrMaXqcESJuK8dtK56NCSrq4iDKaKq9NxOXFmqXX2zN8HHGjQ2b2Xv0v1L5Nk1MQPKA19xeW
QcpGEGFUUd0kN+oHox+L9aV1rjfNiCj3bJk6kJaOPabPi2503nn/ITX5e8WfPnGw4VuZ79Khj1YB
rf24k5Ee1sLTHsLtpiK9OjG4iQRBdq6Z/TlVx/hGAez5h36bBJMxqdHLpdwIUkTqT8se3ed0PewD
ch/8kHPo5fZl5u1B0ecpq/sDN/5sCG52Ds+QU5O5EwIDAQABo4IBZDCCAWAwHwYDVR0jBBgwFoAU
U3m/WqorSs9UgOHYm8Cd8rIDZsswHQYDVR0OBBYEFAnA8vwL2pTbX/4r36iZQs/J4K0AMA4GA1Ud
DwEB/wQEAwIBhjASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEF
BQcDBDARBgNVHSAECjAIMAYGBFUdIAAwUAYDVR0fBEkwRzBFoEOgQYY/aHR0cDovL2NybC51c2Vy
dHJ1c3QuY29tL1VTRVJUcnVzdFJTQUNlcnRpZmljYXRpb25BdXRob3JpdHkuY3JsMHYGCCsGAQUF
BwEBBGowaDA/BggrBgEFBQcwAoYzaHR0cDovL2NydC51c2VydHJ1c3QuY29tL1VTRVJUcnVzdFJT
QUFkZFRydXN0Q0EuY3J0MCUGCCsGAQUFBzABhhlodHRwOi8vb2NzcC51c2VydHJ1c3QuY29tMA0G
CSqGSIb3DQEBDAUAA4ICAQBBRHUAqznCFfXejpVtMnFojADdF9d6HBA4kMjjsb0XMZHztuOCtKF+
xswhh2GqkW5JQrM8zVlU+A2VP72Ky2nlRA1GwmIPgou74TZ/XTarHG8zdMSgaDrkVYzz1g3nIVO9
IHk96VwsacIvBF8JfqIs+8aWH2PfSUrNxP6Ys7U0sZYx4rXD6+cqFq/ZW5BUfClN/rhk2ddQXyn7
kkmka2RQb9d90nmNHdgKrwfQ49mQ2hWQNDkJJIXwKjYA6VUR/fZUFeCUisdDe/0ABLTI+jheXUV1
eoYV7lNwNBKpeHdNuO6Aacb533JlfeUHxvBz9OfYWUiXu09sMAviM11Q0DuMZ5760CdO2VnpsXP4
KxaYIhvqPqUMWqRdWyn7crItNkZeroXaecG03i3mM7dkiPaCkgocBg0EBYsbZDZ8bsG3a08LwEsL
1Ygz3SBsyECa0waq4hOf/Z85F2w2ZpXfP+w8q4ifwO90SGZZV+HR/Jh6rEaVPDRF/CEGVqR1hiuQ
OZ1YL5ezMTX0ZSLwrymUE0pwi/KDaiYB15uswgeIAcA6JzPFf9pLkAFFWs1QNyN++niFhsM47qod
x/PL+5jR87myx5uYdBEQkkDc+lKB1Wct6ucXqm2EmsaQ0M95QjTmy+rDWjkDYdw3Ms6mSWE3Bn7i
5ZgtwCLXgAIe5W8mybM2JzCCBhQwggT8oAMCAQICEQDGvhmWZ0DEAx0oURL6O6l+MA0GCSqGSIb3
DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYD
VQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28g
UlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMB4XDTIyMDEwNzAw
MDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJARYTZHdtdzJAaW5mcmFkZWFkLm9y
ZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3GpC2bomUqk+91wLYBzDMcCj5C9m6
oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZHh7htyAkWYVoFsFPrwHounto8xTsy
SSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT9YgcBqKCo65pTFmOnR/VVbjJk4K2
xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNjP+qDrh0db7PAjO1D4d5ftfrsf+kd
RR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy2U+eITZ5LLE5s45mX2oPFknWqxBo
bQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3BgBEmfsYWlBXO8rVXfvPgLs32VdV
NZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/7auNVRmPB3v5SWEsH8xi4Bez2V9U
KxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmdlFYhAflWKQ03Ufiu8t3iBE3VJbc2
5oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9aelIl6vtbhMA+l0nfrsORMa4kobqQ5
C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMBAAGjggHMMIIByDAfBgNVHSMEGDAW
gBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeDMcimo0oz8o1R1Nver3ZVpSkwDgYD
VR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYwFAYIKwYBBQUHAwQGCCsGAQUFBwMC
MEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYBBQUHAgEWF2h0dHBzOi8vc2VjdGln
by5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9jcmwuc2VjdGlnby5jb20vU2VjdGln
b1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1haWxDQS5jcmwwgYoGCCsGAQUFBwEB
BH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdvLmNvbS9TZWN0aWdvUlNBQ2xpZW50
QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAjBggrBgEFBQcwAYYXaHR0cDovL29j
c3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5mcmFkZWFkLm9yZzANBgkqhkiG9w0B
AQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQvQ/fzPXmtR9t54rpmI2TfyvcKgOXp
qa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvIlSPrzIB4Z2wyIGQpaPLlYflrrVFK
v9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9ChWFfgSXvrWDZspnU3Gjw/rMHrGnql
Htlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0whpBtXdyDjzBtQTaZJ7zTT/vlehc/
tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9IzCCBhQwggT8oAMCAQICEQDGvhmW
Z0DEAx0oURL6O6l+MA0GCSqGSIb3DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3Jl
YXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0
ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJl
IEVtYWlsIENBMB4XDTIyMDEwNzAwMDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJ
ARYTZHdtdzJAaW5mcmFkZWFkLm9yZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3
GpC2bomUqk+91wLYBzDMcCj5C9m6oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZH
h7htyAkWYVoFsFPrwHounto8xTsySSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT
9YgcBqKCo65pTFmOnR/VVbjJk4K2xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNj
P+qDrh0db7PAjO1D4d5ftfrsf+kdRR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy
2U+eITZ5LLE5s45mX2oPFknWqxBobQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3
BgBEmfsYWlBXO8rVXfvPgLs32VdVNZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/
7auNVRmPB3v5SWEsH8xi4Bez2V9UKxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmd
lFYhAflWKQ03Ufiu8t3iBE3VJbc25oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9ae
lIl6vtbhMA+l0nfrsORMa4kobqQ5C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMB
AAGjggHMMIIByDAfBgNVHSMEGDAWgBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeD
Mcimo0oz8o1R1Nver3ZVpSkwDgYDVR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYw
FAYIKwYBBQUHAwQGCCsGAQUFBwMCMEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYB
BQUHAgEWF2h0dHBzOi8vc2VjdGlnby5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9j
cmwuc2VjdGlnby5jb20vU2VjdGlnb1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1h
aWxDQS5jcmwwgYoGCCsGAQUFBwEBBH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdv
LmNvbS9TZWN0aWdvUlNBQ2xpZW50QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAj
BggrBgEFBQcwAYYXaHR0cDovL29jc3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5m
cmFkZWFkLm9yZzANBgkqhkiG9w0BAQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQv
Q/fzPXmtR9t54rpmI2TfyvcKgOXpqa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvI
lSPrzIB4Z2wyIGQpaPLlYflrrVFKv9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9Ch
WFfgSXvrWDZspnU3Gjw/rMHrGnqlHtlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0w
hpBtXdyDjzBtQTaZJ7zTT/vlehc/tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9
IzGCBMcwggTDAgEBMIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVz
dGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMT
NVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEA
xr4ZlmdAxAMdKFES+jupfjANBglghkgBZQMEAgEFAKCCAeswGAYJKoZIhvcNAQkDMQsGCSqGSIb3
DQEHATAcBgkqhkiG9w0BCQUxDxcNMjMxMDI0MTUzNzE1WjAvBgkqhkiG9w0BCQQxIgQgaKl1eLJf
T2sVWfuSXnQFFwEXgv2b+VpLqUJbgh1oby8wgb0GCSsGAQQBgjcQBDGBrzCBrDCBljELMAkGA1UE
BhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEYMBYG
A1UEChMPU2VjdGlnbyBMaW1pdGVkMT4wPAYDVQQDEzVTZWN0aWdvIFJTQSBDbGllbnQgQXV0aGVu
dGljYXRpb24gYW5kIFNlY3VyZSBFbWFpbCBDQQIRAMa+GZZnQMQDHShREvo7qX4wgb8GCyqGSIb3
DQEJEAILMYGvoIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVy
MRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNl
Y3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEAxr4Z
lmdAxAMdKFES+jupfjANBgkqhkiG9w0BAQEFAASCAgAN4wSypFfzTxOH7WSki3FEBXFQEIK9h2Kp
uP2RkKkjxjq2b22TgHa4QLTpuvh9jopdH1ErbJXLoOAOaYzc4I0IBPy4uDW+2YdvJwOn+cnmDXrV
4Q4WyJHQxsOAGO1wcy7nQbddj101FDTXlEnaxmDV5R9+B+ZypPCIQ80tHS9Qp6zup57ENf/tCCbV
+36F9n45XjGSvLdDdxog6wwHMPYqdL/LUj3zCWmbhUwSG8IiID8KwWjyW3hx0Lk/Xa/K11PZ405z
Jpib7ChqbJEeP1njL/KxCxauYFvofAvKjYvurJkFSrIrLwUqJKr3t9egi90QL/Icbvj9mrkifrBs
PoprVHxfZtDkdcECSBo9SfAzauGfocQ3hVBJ8IUDkSCSsjWh/skvzQTSL7FGOrtzjGtT71FUL2AJ
rzlCZUUvhYi/CwA/iEBQ6Y5kna4SPx1uhhbGcgg+5VSUh4HdQNqIk8CwHoEct8erKYVK+46CmmSR
1aHhe+7oNBG2nQDCzXxygXDYSRF+y2s1Vc7Xf3ToeoOIJlVVXRgqMPylfHWDkH91wtsY55jFexTh
DfL0s+S5EDmtuWkMRSb8HN6rElBBPEuA6r3sUV0bxcwEcgwmuxsrXnoIi3UpUgUUGf2jGwPedVeo
IMlYTMrytF4T++uzNSaU2KJIcC5+w4XieelJpaWnywAAAAAAAA==


--=-SuOARZGUYKo6zLbZlrwE--


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 15:39:25 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 15:39:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622130.969377 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvJV2-0007XK-GU; Tue, 24 Oct 2023 15:39:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622130.969377; Tue, 24 Oct 2023 15:39: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 1qvJV2-0007XD-E1; Tue, 24 Oct 2023 15:39:20 +0000
Received: by outflank-mailman (input) for mailman id 622130;
 Tue, 24 Oct 2023 15:39: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=+b+W=GG=gmail.com=xadimgnik@srs-se1.protection.inumbo.net>)
 id 1qvJV0-0007X7-Ur
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 15:39:18 +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 7e44d0c5-7283-11ee-98d5-6d05b1d4d9a1;
 Tue, 24 Oct 2023 17:39:18 +0200 (CEST)
Received: by mail-lj1-x235.google.com with SMTP id
 38308e7fff4ca-2c4fe37f166so66445811fa.1
 for <xen-devel@lists.xenproject.org>; Tue, 24 Oct 2023 08:39:18 -0700 (PDT)
Received: from [192.168.6.66] (54-240-197-238.amazon.com. [54.240.197.238])
 by smtp.gmail.com with ESMTPSA id
 d17-20020a5d6451000000b0032da022855fsm10102024wrw.111.2023.10.24.08.39.16
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 24 Oct 2023 08: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: 7e44d0c5-7283-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698161957; x=1698766757; 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=tlEmeIXZ50wWPACQtQWY4ubCrlx8dw20cymk7ZBn6mM=;
        b=crBi2w5yqIeU5JP5HBn4dUFnhCd+0i3Occ4hxKy0IFFSDRlxz2aMmf63TwTiJ0gFWE
         GA3Y9HtVpLlhBOIsESO1NNjilt/LyYJf+8pAiEJvE1ac37Mp5vuTYRd83maWhqhn306s
         mIZ6GE3Qjjntup2jrj52Bj0jwxHeRTmnWdopSDZuI5lNYUFBb7iolIwmET+0xT8Q4wxE
         VBiKfE/C5rlR0Ivy8U2kDpQNYHiheU3zC/OPD6DzJS6s7cqYq6JZYDE4GpfbQPDaXPyI
         63JzhuS6/94NSkyNcz9mDdTG3OgzLex/EWx6e7qwO2L5RjX2rX6M3kVDaHgpQLfxPvOb
         qocA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698161957; x=1698766757;
        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=tlEmeIXZ50wWPACQtQWY4ubCrlx8dw20cymk7ZBn6mM=;
        b=l7hXZaNoKK34NDANz4hev1Pkaaz/JJnEFbiqHxulx8BdQrFShd9XGAYXiRLURo1sdc
         KlaLLoSsL7cfp9NFQi7qwAjVlETRcoZcy0K8IgvE++jrVGU2jdEABZAl9lO5Mzg/Vzez
         FnLyFdf0JOmd8dnubi5YQEdF7ECZK2UzP+OyqZKugQYgUTxXDJvGTx9/FoUyY0qtLBOA
         9ULpQ1xulaWo4Rv3YsyLYBw6RXWvjS4KPMxT+oMEiCow4B0gpYspodIlg72iKX/1cSEN
         ORR3hc7ppek1r0Em/Zwksla8+VoZpzE932GCFVN6KKK2Gwh4DQoTGDc36L9wfll3IKJW
         5OCQ==
X-Gm-Message-State: AOJu0Yzr1mvkSKFM8ZA5wU83dq8cxN/yUtpxsJR6zaErJqaNx04zxCAC
	HBlZ6x+G1/DD/zlCR8j8oxc=
X-Google-Smtp-Source: AGHT+IF0q/RHR9QB8PZoYcnAqa6LCHwv1hACOYhfgQS8+0Un8TgpeFTwgjZUGx/iI4BFscPRP+CgPA==
X-Received: by 2002:a2e:ba9e:0:b0:2c5:1ad0:e306 with SMTP id a30-20020a2eba9e000000b002c51ad0e306mr7448511ljf.8.1698161957367;
        Tue, 24 Oct 2023 08:39:17 -0700 (PDT)
From: Paul Durrant <xadimgnik@gmail.com>
X-Google-Original-From: Paul Durrant <paul@xen.org>
Message-ID: <3f22903b-30f0-40f2-8624-b681d9c7e05d@xen.org>
Date: Tue, 24 Oct 2023 16:39:15 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Reply-To: paul@xen.org
Subject: Re: [PATCH 12/12] hw/xen: add support for Xen primary console in
 emulated mode
Content-Language: en-US
To: David Woodhouse <dwmw2@infradead.org>, qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>, Hanna Reitz <hreitz@redhat.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Anthony Perard <anthony.perard@citrix.com>,
 =?UTF-8?Q?Marc-Andr=C3=A9_Lureau?= <marcandre.lureau@redhat.com>,
 Paolo Bonzini <pbonzini@redhat.com>, "Michael S. Tsirkin" <mst@redhat.com>,
 Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
 Richard Henderson <richard.henderson@linaro.org>,
 Eduardo Habkost <eduardo@habkost.net>, Marcelo Tosatti
 <mtosatti@redhat.com>, qemu-block@nongnu.org,
 xen-devel@lists.xenproject.org, kvm@vger.kernel.org
References: <20231016151909.22133-1-dwmw2@infradead.org>
 <20231016151909.22133-13-dwmw2@infradead.org>
 <c18439ca-c9ae-4567-bbcf-dffe6f7b72e3@xen.org>
 <3acd078bba2d824f836b20a270c780dc2d031c43.camel@infradead.org>
Organization: Xen Project
In-Reply-To: <3acd078bba2d824f836b20a270c780dc2d031c43.camel@infradead.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 24/10/2023 16:37, David Woodhouse wrote:
> On Tue, 2023-10-24 at 15:20 +0100, Paul Durrant wrote:
>> On 16/10/2023 16:19, David Woodhouse wrote:
>>> From: David Woodhouse <dwmw@amazon.co.uk>
>>>
>>> The primary console is special because the toolstack maps a page at a
>>> fixed GFN and also allocates the guest-side event channel. Add support
>>> for that in emulated mode, so that we can have a primary console.
>>>
>>> Add a *very* rudimentary stub of foriegnmem ops for emulated mode, which
>>> supports literally nothing except a single-page mapping of the console
>>> page. This might as well have been a hack in the xen_console driver, but
>>> this way at least the special-casing is kept within the Xen emulation
>>> code, and it gives us a hook for a more complete implementation if/when
>>> we ever do need one.
>>>
>> Why can't you map the console page via the grant table like the xenstore
>> page?
> 
> I suppose we could, but I didn't really want the generic xen-console
> device code having any more of a special case for 'Xen emulation' than
> it does already by having to call xen_primary_console_create().
> 

But doesn't is save you the whole foreignmem thing? You can use the 
grant table for primary and secondary consoles.

   Paul



From xen-devel-bounces@lists.xenproject.org Tue Oct 24 15:44:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 15:44:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622135.969388 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvJZj-00024q-2Q; Tue, 24 Oct 2023 15:44:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622135.969388; Tue, 24 Oct 2023 15: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 1qvJZi-00024F-W0; Tue, 24 Oct 2023 15:44:10 +0000
Received: by outflank-mailman (input) for mailman id 622135;
 Tue, 24 Oct 2023 15: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=+b+W=GG=gmail.com=xadimgnik@srs-se1.protection.inumbo.net>)
 id 1qvJZh-00023O-QM
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 15:44:09 +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 2b68c6d8-7284-11ee-98d5-6d05b1d4d9a1;
 Tue, 24 Oct 2023 17:44:08 +0200 (CEST)
Received: by mail-wr1-x42c.google.com with SMTP id
 ffacd0b85a97d-32da9ef390fso3135504f8f.2
 for <xen-devel@lists.xenproject.org>; Tue, 24 Oct 2023 08:44:08 -0700 (PDT)
Received: from [192.168.6.66] (54-240-197-238.amazon.com. [54.240.197.238])
 by smtp.gmail.com with ESMTPSA id
 b14-20020a5d550e000000b0032d9caeab0fsm10133987wrv.77.2023.10.24.08.44.06
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 24 Oct 2023 08: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: 2b68c6d8-7284-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698162248; x=1698767048; 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=yS5KTEoFqSeFaD9KDbOtnwK71r/T1IzAy2dMzIuLI5s=;
        b=UCBhpEMymx4rBEjQ6e3X6tqH7hVNUU/WkdXqP4ZXEQgTSpPppWXS/adC20Y3t0IR+x
         TabSI3z81DHa2EFWU86Oqi4/+cF7uYHIdxlByrzJMVj6OR9YlzAe9VZTm0Zl8BtxVG4E
         jPmFf3IyFwyCZmaQp+AmSQo3NnGaoOZfR4J0v6dC2/Pse9ypuEAC66CQq+vVQn5DTSvs
         9WWaJIbiVDPVzda8LurRgfGrZ+dKSPLyK9QXfeYFX3gCbm2v8bbZkX+saPYYzRjmjK4V
         Zz4ugEVB+1cQ1pmBexCZASTSizSJ6YSKkBmXdHLGUtTHcCDujjzQ9fVNq8WGY8EfloMZ
         mjTA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698162248; x=1698767048;
        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=yS5KTEoFqSeFaD9KDbOtnwK71r/T1IzAy2dMzIuLI5s=;
        b=sCxdX/9B1apbCk0h9xoKVr9JYQ9sac4bFaMV6BJSv0r1f+QNquF9/5Pj+gV3gciwGz
         u4JHvZzXnimV7xHpBNKv1lHpubu6SkoyOf1cyqBUx/FZK6hSwdXrIh4vpJOct13LER6t
         bWtRVc0rRwwnOdUTSsh6HSlIf51rrJMmKpepGvx/9IS1FxJNAVCYXCxOMPyFGeHFEQxR
         KvMECoaywDlhcafUnr5fq0y9VDU70kIdyV0FkS3iNOsC3JtWBymPNNBGLx9fb6g+CIkI
         upLV7pcl2bn6ehfU7rwuHGYjpvMp9E+YjLRiP71ZHcF8Htz9sgvMBAe+Wkxps4Oufy7O
         s11w==
X-Gm-Message-State: AOJu0YxfNUa0pI8pNAcYsNBJismSqlQJtpvgev6iTU/N9uFAPSPLW2nk
	IgdiqtQjjp3He0BCW8sGXEE=
X-Google-Smtp-Source: AGHT+IGOdFp+c3H/OzmD6auBGTwD1zTQ8nmXRdo9qvd7R6YRSUetpKZX659Ae1VnlHjErrywnw2Ypg==
X-Received: by 2002:a5d:560d:0:b0:32d:d756:2cd3 with SMTP id l13-20020a5d560d000000b0032dd7562cd3mr8359004wrv.22.1698162247852;
        Tue, 24 Oct 2023 08:44:07 -0700 (PDT)
From: Paul Durrant <xadimgnik@gmail.com>
X-Google-Original-From: Paul Durrant <paul@xen.org>
Message-ID: <8ba01df3-6189-4e1e-a70f-37a2d4dd21ed@xen.org>
Date: Tue, 24 Oct 2023 16:44:05 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Reply-To: paul@xen.org
Subject: Re: [PATCH v2 16/24] hw/xen: handle soft reset for primary console
Content-Language: en-US
To: David Woodhouse <dwmw2@infradead.org>, qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>, Hanna Reitz <hreitz@redhat.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Anthony Perard <anthony.perard@citrix.com>,
 =?UTF-8?Q?Marc-Andr=C3=A9_Lureau?= <marcandre.lureau@redhat.com>,
 Paolo Bonzini <pbonzini@redhat.com>,
 Richard Henderson <richard.henderson@linaro.org>,
 Eduardo Habkost <eduardo@habkost.net>, "Michael S. Tsirkin"
 <mst@redhat.com>, Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
 Jason Wang <jasowang@redhat.com>, Marcelo Tosatti <mtosatti@redhat.com>,
 Cleber Rosa <crosa@redhat.com>, =?UTF-8?Q?Philippe_Mathieu-Daud=C3=A9?=
 <philmd@linaro.org>, Wainer dos Santos Moschetta <wainersm@redhat.com>,
 Beraldo Leal <bleal@redhat.com>, qemu-block@nongnu.org,
 xen-devel@lists.xenproject.org, kvm@vger.kernel.org,
 Bernhard Beschow <shentey@gmail.com>, Joel Upham <jupham125@gmail.com>
References: <20231019154020.99080-1-dwmw2@infradead.org>
 <20231019154020.99080-17-dwmw2@infradead.org>
Organization: Xen Project
In-Reply-To: <20231019154020.99080-17-dwmw2@infradead.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 19/10/2023 16:40, David Woodhouse wrote:
> From: David Woodhouse <dwmw@amazon.co.uk>
> 
> On soft reset, the prinary console event channel needs to be rebound to
> the backend port (in the xen-console driver). We could put that into the
> xen-console driver itself, but it's slightly less ugly to keep it within
> the KVM/Xen code, by stashing the backend port# on event channel reset
> and then rebinding in the primary console reset when it has to recreate
> the guest port anyway.

Does Xen re-bind the primary console on EVTCHNOP_reset? That's news to 
me. I go check.

   Paul

> 
> Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
> ---
>   hw/i386/kvm/xen_evtchn.c          |  9 +++++++++
>   hw/i386/kvm/xen_primary_console.c | 29 ++++++++++++++++++++++++++++-
>   hw/i386/kvm/xen_primary_console.h |  1 +
>   3 files changed, 38 insertions(+), 1 deletion(-)
> 
> diff --git a/hw/i386/kvm/xen_evtchn.c b/hw/i386/kvm/xen_evtchn.c
> index d72dca6591..ce4da6d37a 100644
> --- a/hw/i386/kvm/xen_evtchn.c
> +++ b/hw/i386/kvm/xen_evtchn.c
> @@ -40,6 +40,7 @@
>   #include "xen_evtchn.h"
>   #include "xen_overlay.h"
>   #include "xen_xenstore.h"
> +#include "xen_primary_console.h"
>   
>   #include "sysemu/kvm.h"
>   #include "sysemu/kvm_xen.h"
> @@ -1098,6 +1099,7 @@ int xen_evtchn_soft_reset(void)
>   {
>       XenEvtchnState *s = xen_evtchn_singleton;
>       bool flush_kvm_routes;
> +    uint16_t con_port = xen_primary_console_get_port();
>       int i;
>   
>       if (!s) {
> @@ -1108,6 +1110,13 @@ int xen_evtchn_soft_reset(void)
>   
>       qemu_mutex_lock(&s->port_lock);
>   
> +    if (con_port) {
> +        XenEvtchnPort *p = &s->port_table[con_port];
> +        if (p->type == EVTCHNSTAT_interdomain) {
> +            xen_primary_console_set_be_port(p->u.interdomain.port);
> +        }
> +    }
> +
>       for (i = 0; i < s->nr_ports; i++) {
>           close_port(s, i, &flush_kvm_routes);
>       }
> diff --git a/hw/i386/kvm/xen_primary_console.c b/hw/i386/kvm/xen_primary_console.c
> index 0aa1c16ad6..5e6e085ac7 100644
> --- a/hw/i386/kvm/xen_primary_console.c
> +++ b/hw/i386/kvm/xen_primary_console.c
> @@ -112,6 +112,15 @@ uint16_t xen_primary_console_get_port(void)
>       return s->guest_port;
>   }
>   
> +void xen_primary_console_set_be_port(uint16_t port)
> +{
> +    XenPrimaryConsoleState *s = xen_primary_console_singleton;
> +    if (s) {
> +        printf("be port set to %d\n", port);
> +        s->be_port = port;
> +    }
> +}
> +
>   uint64_t xen_primary_console_get_pfn(void)
>   {
>       XenPrimaryConsoleState *s = xen_primary_console_singleton;
> @@ -142,6 +151,20 @@ static void alloc_guest_port(XenPrimaryConsoleState *s)
>       }
>   }
>   
> +static void rebind_guest_port(XenPrimaryConsoleState *s)
> +{
> +    struct evtchn_bind_interdomain inter = {
> +        .remote_dom = DOMID_QEMU,
> +        .remote_port = s->be_port,
> +    };
> +
> +    if (!xen_evtchn_bind_interdomain_op(&inter)) {
> +        s->guest_port = inter.local_port;
> +    }
> +
> +    s->be_port = 0;
> +}
> +
>   int xen_primary_console_reset(void)
>   {
>       XenPrimaryConsoleState *s = xen_primary_console_singleton;
> @@ -154,7 +177,11 @@ int xen_primary_console_reset(void)
>           xen_overlay_do_map_page(&s->console_page, gpa);
>       }
>   
> -    alloc_guest_port(s);
> +    if (s->be_port) {
> +        rebind_guest_port(s);
> +    } else {
> +        alloc_guest_port(s);
> +    }
>   
>       trace_xen_primary_console_reset(s->guest_port);
>   
> diff --git a/hw/i386/kvm/xen_primary_console.h b/hw/i386/kvm/xen_primary_console.h
> index dd4922f3f4..7e2989ea0d 100644
> --- a/hw/i386/kvm/xen_primary_console.h
> +++ b/hw/i386/kvm/xen_primary_console.h
> @@ -16,6 +16,7 @@ void xen_primary_console_create(void);
>   int xen_primary_console_reset(void);
>   
>   uint16_t xen_primary_console_get_port(void);
> +void xen_primary_console_set_be_port(uint16_t port);
>   uint64_t xen_primary_console_get_pfn(void);
>   void *xen_primary_console_get_map(void);
>   



From xen-devel-bounces@lists.xenproject.org Tue Oct 24 15:48:25 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 15:48:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622138.969398 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvJdd-0003uS-Ij; Tue, 24 Oct 2023 15:48:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622138.969398; Tue, 24 Oct 2023 15:48: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 1qvJdd-0003uL-Fu; Tue, 24 Oct 2023 15:48:13 +0000
Received: by outflank-mailman (input) for mailman id 622138;
 Tue, 24 Oct 2023 15:48: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=jXWl=GG=casper.srs.infradead.org=BATV+e2898748ca55db067849+7366+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qvJdc-0003uF-Tv
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 15:48:12 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id bc67a5da-7284-11ee-98d5-6d05b1d4d9a1;
 Tue, 24 Oct 2023 17:48:11 +0200 (CEST)
Received: from [2001:8b0:10b:5:758e:a1c4:bc7:e7a7]
 (helo=u3832b3a9db3152.ant.amazon.com)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qvJdY-003K8n-C5; Tue, 24 Oct 2023 15:48: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: bc67a5da-7284-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=MIME-Version:Content-Type:References:
	In-Reply-To:Date:Cc:To:From:Subject:Message-ID:Sender:Reply-To:
	Content-Transfer-Encoding:Content-ID:Content-Description;
	bh=hF0c4p5hvtJlVcO6yuxFeCdSSDFo/uFKjooeMtLNdI4=; b=JQce6fTrmbWnEfxPe2EXV1oWgt
	BRMc1RpriWtp0QAqtzd1NZV21vten4/oUFLt1OKkgLhSC5A/2vUI5C31ZGoSvufpJdsKP9TEd12+5
	jtP5BOFLAwcEd+lbJfrhVRwxUuOUwrFcmTb0+IWVJk6K4rcfmGpWfnuX8LNTidHDWvH2dcFtKIe7o
	vniECPVRvDemVexd4nCsOOEWf3GaYxR7hdgb75ZJDrqsz9Fajq7FaCspx1x2lYyGRxs6nlvItQySU
	qAvIdjsUgCWQp1je2mQy9L3pXMisbwcAdnEs8o0pAi+J7tnMPf2WuJSlYLGB4Npf4VKs+6Rxh2n4F
	fVeHt6HA==;
Message-ID: <3124d1d6e9af139a3c7b6dbe2b73a82914d3f559.camel@infradead.org>
Subject: Re: [PATCH v2 16/24] hw/xen: handle soft reset for primary console
From: David Woodhouse <dwmw2@infradead.org>
To: paul@xen.org, qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>, Hanna Reitz <hreitz@redhat.com>, Stefano
 Stabellini <sstabellini@kernel.org>, Anthony Perard
 <anthony.perard@citrix.com>,  =?ISO-8859-1?Q?Marc-Andr=E9?= Lureau
 <marcandre.lureau@redhat.com>, Paolo Bonzini <pbonzini@redhat.com>, Richard
 Henderson <richard.henderson@linaro.org>, Eduardo Habkost
 <eduardo@habkost.net>, "Michael S. Tsirkin" <mst@redhat.com>, Marcel
 Apfelbaum <marcel.apfelbaum@gmail.com>, Jason Wang <jasowang@redhat.com>,
 Marcelo Tosatti <mtosatti@redhat.com>, Cleber Rosa <crosa@redhat.com>,
 Philippe =?ISO-8859-1?Q?Mathieu-Daud=E9?= <philmd@linaro.org>, Wainer dos
 Santos Moschetta <wainersm@redhat.com>,  Beraldo Leal <bleal@redhat.com>,
 qemu-block@nongnu.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org,
  Bernhard Beschow <shentey@gmail.com>, Joel Upham <jupham125@gmail.com>
Date: Tue, 24 Oct 2023 16:48:07 +0100
In-Reply-To: <8ba01df3-6189-4e1e-a70f-37a2d4dd21ed@xen.org>
References: <20231019154020.99080-1-dwmw2@infradead.org>
	 <20231019154020.99080-17-dwmw2@infradead.org>
	 <8ba01df3-6189-4e1e-a70f-37a2d4dd21ed@xen.org>
Content-Type: multipart/signed; micalg="sha-256"; protocol="application/pkcs7-signature";
	boundary="=-ld/GGYAo48gNtiZhsk15"
User-Agent: Evolution 3.44.4-0ubuntu2 
MIME-Version: 1.0
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html


--=-ld/GGYAo48gNtiZhsk15
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Tue, 2023-10-24 at 16:44 +0100, Paul Durrant wrote:
> On 19/10/2023 16:40, David Woodhouse wrote:
> > From: David Woodhouse <dwmw@amazon.co.uk>
> >=20
> > On soft reset, the prinary console event channel needs to be rebound to
> > the backend port (in the xen-console driver). We could put that into th=
e
> > xen-console driver itself, but it's slightly less ugly to keep it withi=
n
> > the KVM/Xen code, by stashing the backend port# on event channel reset
> > and then rebinding in the primary console reset when it has to recreate
> > the guest port anyway.
>=20
> Does Xen re-bind the primary console on EVTCHNOP_reset? That's news to=
=20
> me. I go check.

I spent an unhapp hour trying to work out how Xen actually does any of
this :)

In the short term I'm more interested in having soft reset work, than
an explicit EVTCHNOP_reset. And I can't work out *how*, but we do seem
to have console again after a kexec in real Xen.

--=-ld/GGYAo48gNtiZhsk15
Content-Type: application/pkcs7-signature; name="smime.p7s"
Content-Disposition: attachment; filename="smime.p7s"
Content-Transfer-Encoding: base64

MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgEFADCABgkqhkiG9w0BBwEAAKCCEkQw
ggYQMIID+KADAgECAhBNlCwQ1DvglAnFgS06KwZPMA0GCSqGSIb3DQEBDAUAMIGIMQswCQYDVQQG
EwJVUzETMBEGA1UECBMKTmV3IEplcnNleTEUMBIGA1UEBxMLSmVyc2V5IENpdHkxHjAcBgNVBAoT
FVRoZSBVU0VSVFJVU1QgTmV0d29yazEuMCwGA1UEAxMlVVNFUlRydXN0IFJTQSBDZXJ0aWZpY2F0
aW9uIEF1dGhvcml0eTAeFw0xODExMDIwMDAwMDBaFw0zMDEyMzEyMzU5NTlaMIGWMQswCQYDVQQG
EwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYD
VQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50
aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC
AQEAyjztlApB/975Rrno1jvm2pK/KxBOqhq8gr2+JhwpKirSzZxQgT9tlC7zl6hn1fXjSo5MqXUf
ItMltrMaXqcESJuK8dtK56NCSrq4iDKaKq9NxOXFmqXX2zN8HHGjQ2b2Xv0v1L5Nk1MQPKA19xeW
QcpGEGFUUd0kN+oHox+L9aV1rjfNiCj3bJk6kJaOPabPi2503nn/ITX5e8WfPnGw4VuZ79Khj1YB
rf24k5Ee1sLTHsLtpiK9OjG4iQRBdq6Z/TlVx/hGAez5h36bBJMxqdHLpdwIUkTqT8se3ed0PewD
ch/8kHPo5fZl5u1B0ecpq/sDN/5sCG52Ds+QU5O5EwIDAQABo4IBZDCCAWAwHwYDVR0jBBgwFoAU
U3m/WqorSs9UgOHYm8Cd8rIDZsswHQYDVR0OBBYEFAnA8vwL2pTbX/4r36iZQs/J4K0AMA4GA1Ud
DwEB/wQEAwIBhjASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEF
BQcDBDARBgNVHSAECjAIMAYGBFUdIAAwUAYDVR0fBEkwRzBFoEOgQYY/aHR0cDovL2NybC51c2Vy
dHJ1c3QuY29tL1VTRVJUcnVzdFJTQUNlcnRpZmljYXRpb25BdXRob3JpdHkuY3JsMHYGCCsGAQUF
BwEBBGowaDA/BggrBgEFBQcwAoYzaHR0cDovL2NydC51c2VydHJ1c3QuY29tL1VTRVJUcnVzdFJT
QUFkZFRydXN0Q0EuY3J0MCUGCCsGAQUFBzABhhlodHRwOi8vb2NzcC51c2VydHJ1c3QuY29tMA0G
CSqGSIb3DQEBDAUAA4ICAQBBRHUAqznCFfXejpVtMnFojADdF9d6HBA4kMjjsb0XMZHztuOCtKF+
xswhh2GqkW5JQrM8zVlU+A2VP72Ky2nlRA1GwmIPgou74TZ/XTarHG8zdMSgaDrkVYzz1g3nIVO9
IHk96VwsacIvBF8JfqIs+8aWH2PfSUrNxP6Ys7U0sZYx4rXD6+cqFq/ZW5BUfClN/rhk2ddQXyn7
kkmka2RQb9d90nmNHdgKrwfQ49mQ2hWQNDkJJIXwKjYA6VUR/fZUFeCUisdDe/0ABLTI+jheXUV1
eoYV7lNwNBKpeHdNuO6Aacb533JlfeUHxvBz9OfYWUiXu09sMAviM11Q0DuMZ5760CdO2VnpsXP4
KxaYIhvqPqUMWqRdWyn7crItNkZeroXaecG03i3mM7dkiPaCkgocBg0EBYsbZDZ8bsG3a08LwEsL
1Ygz3SBsyECa0waq4hOf/Z85F2w2ZpXfP+w8q4ifwO90SGZZV+HR/Jh6rEaVPDRF/CEGVqR1hiuQ
OZ1YL5ezMTX0ZSLwrymUE0pwi/KDaiYB15uswgeIAcA6JzPFf9pLkAFFWs1QNyN++niFhsM47qod
x/PL+5jR87myx5uYdBEQkkDc+lKB1Wct6ucXqm2EmsaQ0M95QjTmy+rDWjkDYdw3Ms6mSWE3Bn7i
5ZgtwCLXgAIe5W8mybM2JzCCBhQwggT8oAMCAQICEQDGvhmWZ0DEAx0oURL6O6l+MA0GCSqGSIb3
DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYD
VQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28g
UlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMB4XDTIyMDEwNzAw
MDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJARYTZHdtdzJAaW5mcmFkZWFkLm9y
ZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3GpC2bomUqk+91wLYBzDMcCj5C9m6
oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZHh7htyAkWYVoFsFPrwHounto8xTsy
SSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT9YgcBqKCo65pTFmOnR/VVbjJk4K2
xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNjP+qDrh0db7PAjO1D4d5ftfrsf+kd
RR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy2U+eITZ5LLE5s45mX2oPFknWqxBo
bQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3BgBEmfsYWlBXO8rVXfvPgLs32VdV
NZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/7auNVRmPB3v5SWEsH8xi4Bez2V9U
KxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmdlFYhAflWKQ03Ufiu8t3iBE3VJbc2
5oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9aelIl6vtbhMA+l0nfrsORMa4kobqQ5
C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMBAAGjggHMMIIByDAfBgNVHSMEGDAW
gBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeDMcimo0oz8o1R1Nver3ZVpSkwDgYD
VR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYwFAYIKwYBBQUHAwQGCCsGAQUFBwMC
MEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYBBQUHAgEWF2h0dHBzOi8vc2VjdGln
by5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9jcmwuc2VjdGlnby5jb20vU2VjdGln
b1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1haWxDQS5jcmwwgYoGCCsGAQUFBwEB
BH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdvLmNvbS9TZWN0aWdvUlNBQ2xpZW50
QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAjBggrBgEFBQcwAYYXaHR0cDovL29j
c3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5mcmFkZWFkLm9yZzANBgkqhkiG9w0B
AQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQvQ/fzPXmtR9t54rpmI2TfyvcKgOXp
qa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvIlSPrzIB4Z2wyIGQpaPLlYflrrVFK
v9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9ChWFfgSXvrWDZspnU3Gjw/rMHrGnql
Htlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0whpBtXdyDjzBtQTaZJ7zTT/vlehc/
tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9IzCCBhQwggT8oAMCAQICEQDGvhmW
Z0DEAx0oURL6O6l+MA0GCSqGSIb3DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3Jl
YXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0
ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJl
IEVtYWlsIENBMB4XDTIyMDEwNzAwMDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJ
ARYTZHdtdzJAaW5mcmFkZWFkLm9yZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3
GpC2bomUqk+91wLYBzDMcCj5C9m6oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZH
h7htyAkWYVoFsFPrwHounto8xTsySSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT
9YgcBqKCo65pTFmOnR/VVbjJk4K2xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNj
P+qDrh0db7PAjO1D4d5ftfrsf+kdRR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy
2U+eITZ5LLE5s45mX2oPFknWqxBobQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3
BgBEmfsYWlBXO8rVXfvPgLs32VdVNZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/
7auNVRmPB3v5SWEsH8xi4Bez2V9UKxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmd
lFYhAflWKQ03Ufiu8t3iBE3VJbc25oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9ae
lIl6vtbhMA+l0nfrsORMa4kobqQ5C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMB
AAGjggHMMIIByDAfBgNVHSMEGDAWgBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeD
Mcimo0oz8o1R1Nver3ZVpSkwDgYDVR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYw
FAYIKwYBBQUHAwQGCCsGAQUFBwMCMEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYB
BQUHAgEWF2h0dHBzOi8vc2VjdGlnby5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9j
cmwuc2VjdGlnby5jb20vU2VjdGlnb1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1h
aWxDQS5jcmwwgYoGCCsGAQUFBwEBBH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdv
LmNvbS9TZWN0aWdvUlNBQ2xpZW50QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAj
BggrBgEFBQcwAYYXaHR0cDovL29jc3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5m
cmFkZWFkLm9yZzANBgkqhkiG9w0BAQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQv
Q/fzPXmtR9t54rpmI2TfyvcKgOXpqa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvI
lSPrzIB4Z2wyIGQpaPLlYflrrVFKv9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9Ch
WFfgSXvrWDZspnU3Gjw/rMHrGnqlHtlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0w
hpBtXdyDjzBtQTaZJ7zTT/vlehc/tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9
IzGCBMcwggTDAgEBMIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVz
dGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMT
NVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEA
xr4ZlmdAxAMdKFES+jupfjANBglghkgBZQMEAgEFAKCCAeswGAYJKoZIhvcNAQkDMQsGCSqGSIb3
DQEHATAcBgkqhkiG9w0BCQUxDxcNMjMxMDI0MTU0ODA3WjAvBgkqhkiG9w0BCQQxIgQgU7PO96JK
evhmxo8tvJH4bbd/vecvpAYa/SJEJt3vhGYwgb0GCSsGAQQBgjcQBDGBrzCBrDCBljELMAkGA1UE
BhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEYMBYG
A1UEChMPU2VjdGlnbyBMaW1pdGVkMT4wPAYDVQQDEzVTZWN0aWdvIFJTQSBDbGllbnQgQXV0aGVu
dGljYXRpb24gYW5kIFNlY3VyZSBFbWFpbCBDQQIRAMa+GZZnQMQDHShREvo7qX4wgb8GCyqGSIb3
DQEJEAILMYGvoIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVy
MRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNl
Y3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEAxr4Z
lmdAxAMdKFES+jupfjANBgkqhkiG9w0BAQEFAASCAgAHApJd92x/O0dYPBjgfgYzUW5ahKZvFlQF
l4ujw7njxlAaJRXfiR/SPN9te4PkA7LBppLrtJt3qYZN5vqf5rdKDgn27eSpsT5debuWA8JZrtp0
SZTEbOZtKzK3DZ6Bfo9EFieRCPk+hzHOPofSnlwIQFbTZBoSZNkD2HJ+/UctAzJqfyqCeagXSRTn
It7SW3lxcgPauTh/7onaT1BzCbtKHfCXCeq2wvRNvu4HUgZamA3UkHJMLgkxOfMSKer1xF3pfn2V
75Dxh54xiqnCsgIt6ZN3EZ+fb2zca395nNuwEf1M4Nf1KvmqxUA/UIdmHz+oZBO2LrqzgLHoW+o3
TlByDWH3Et+5qoWvwDibnjiQeaJLm6pGbHPx5lAX2VN3O0O6FwEBn/7jTLCs+1yfT2vUHHR7vSjK
PX4C8C3tvK4MjJPQeoUJ0wTqals4USElJo03zWbYZHGRv66JiBfEaFdgajAB+elNVgkuJS9AQqOy
1+FgIQif3M+mbD5pAuNXNqDT4LAHwYx1DAKgkjiKwAGGsSAD0685jY9QijpiKAM32JbCThfLi6WR
gBpdVj+BpO7mptobWP4nSdgv6ltEqhl2CEs0cSmgfe9ulZEJEkX0sLa/FHWYZ0zWHxmasWnz9wW9
TpMVjzjoQS0xWG03CFj3Lfrq1Ib5z1W+HtoxxgnJagAAAAAAAA==


--=-ld/GGYAo48gNtiZhsk15--


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 15:50:05 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 15:50:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622140.969408 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvJfO-0005Ha-Ub; Tue, 24 Oct 2023 15:50:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622140.969408; Tue, 24 Oct 2023 15: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 1qvJfO-0005H3-Rq; Tue, 24 Oct 2023 15:50:02 +0000
Received: by outflank-mailman (input) for mailman id 622140;
 Tue, 24 Oct 2023 15:50: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=jXWl=GG=casper.srs.infradead.org=BATV+e2898748ca55db067849+7366+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qvJfN-00050Q-Ru
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 15:50:01 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id fbf95de3-7284-11ee-9b0e-b553b5be7939;
 Tue, 24 Oct 2023 17:49:58 +0200 (CEST)
Received: from [2001:8b0:10b:5:758e:a1c4:bc7:e7a7]
 (helo=u3832b3a9db3152.ant.amazon.com)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qvJfJ-003KD4-Sz; Tue, 24 Oct 2023 15:49: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: fbf95de3-7284-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=MIME-Version:Content-Type:References:
	In-Reply-To:Date:Cc:To:From:Subject:Message-ID:Sender:Reply-To:
	Content-Transfer-Encoding:Content-ID:Content-Description;
	bh=48HTOyKjFmW8GGRG6PGs7R76tDJEe6RT7uNcGmrEIFg=; b=M9KSFFQNAm68p1LK1pH5s8fVfi
	tv/88nXAw/Q/gr58ufi4sa1v3kHsytT1iYU8pMvvdy8v9BYp4OO+7VvHgv3gR/o/LFO4hrMcytMpv
	3tJ8+FqhzXhHLTqo/1aLRxjzxNjnw6tFAaD7CvjUCNk5OBfvl0IhLlKO01KPgxbLgQfV9KU9HtmJX
	6oszP7V4m1dIbkyP5BVQbuVsAIlXQ7rrs0dtVtA39W3qGYQP8rdNcxhbbboVMYYFnBg7cIFfw+meb
	Blb+PfzZ/0lon5hu6HxUjV+hz8D8ZVB+mCRMgejq612e1syI668GMXpmuOUlYRXLmU0YViI20qr66
	ttEkoKNQ==;
Message-ID: <42b005d7c03d5b0d47a16c4e025d8c3ec7289e0f.camel@infradead.org>
Subject: Re: [PATCH 12/12] hw/xen: add support for Xen primary console in
 emulated mode
From: David Woodhouse <dwmw2@infradead.org>
To: paul@xen.org, qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>, Hanna Reitz <hreitz@redhat.com>, Stefano
 Stabellini <sstabellini@kernel.org>, Anthony Perard
 <anthony.perard@citrix.com>,  =?ISO-8859-1?Q?Marc-Andr=E9?= Lureau
 <marcandre.lureau@redhat.com>, Paolo Bonzini <pbonzini@redhat.com>,
 "Michael S. Tsirkin" <mst@redhat.com>, Marcel Apfelbaum
 <marcel.apfelbaum@gmail.com>, Richard Henderson
 <richard.henderson@linaro.org>, Eduardo Habkost <eduardo@habkost.net>, 
 Marcelo Tosatti <mtosatti@redhat.com>, qemu-block@nongnu.org,
 xen-devel@lists.xenproject.org, kvm@vger.kernel.org
Date: Tue, 24 Oct 2023 16:49:57 +0100
In-Reply-To: <3f22903b-30f0-40f2-8624-b681d9c7e05d@xen.org>
References: <20231016151909.22133-1-dwmw2@infradead.org>
	 <20231016151909.22133-13-dwmw2@infradead.org>
	 <c18439ca-c9ae-4567-bbcf-dffe6f7b72e3@xen.org>
	 <3acd078bba2d824f836b20a270c780dc2d031c43.camel@infradead.org>
	 <3f22903b-30f0-40f2-8624-b681d9c7e05d@xen.org>
Content-Type: multipart/signed; micalg="sha-256"; protocol="application/pkcs7-signature";
	boundary="=-ekZgHvjk85CbxFuqU77j"
User-Agent: Evolution 3.44.4-0ubuntu2 
MIME-Version: 1.0
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html


--=-ekZgHvjk85CbxFuqU77j
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Tue, 2023-10-24 at 16:39 +0100, Paul Durrant wrote:
> On 24/10/2023 16:37, David Woodhouse wrote:
> > On Tue, 2023-10-24 at 15:20 +0100, Paul Durrant wrote:
> > > On 16/10/2023 16:19, David Woodhouse wrote:
> > > > From: David Woodhouse <dwmw@amazon.co.uk>
> > > >=20
> > > > The primary console is special because the toolstack maps a page at=
 a
> > > > fixed GFN and also allocates the guest-side event channel. Add supp=
ort
> > > > for that in emulated mode, so that we can have a primary console.
> > > >=20
> > > > Add a *very* rudimentary stub of foriegnmem ops for emulated mode, =
which
> > > > supports literally nothing except a single-page mapping of the cons=
ole
> > > > page. This might as well have been a hack in the xen_console driver=
, but
> > > > this way at least the special-casing is kept within the Xen emulati=
on
> > > > code, and it gives us a hook for a more complete implementation if/=
when
> > > > we ever do need one.
> > > >=20
> > > Why can't you map the console page via the grant table like the xenst=
ore
> > > page?
> >=20
> > I suppose we could, but I didn't really want the generic xen-console
> > device code having any more of a special case for 'Xen emulation' than
> > it does already by having to call xen_primary_console_create().
> >=20
>=20
> But doesn't is save you the whole foreignmem thing? You can use the=20
> grant table for primary and secondary consoles.

Yes. And I could leave the existing foreignmem thing just for the case
of primary console under true Xen. It's probably not that awful a
special case, in the end.

Then again, I was surprised I didn't *already* have a foreignmem ops
for the emulated case, and we're probably going to want to continue
fleshing it out later, so I don't really mind adding it.


--=-ekZgHvjk85CbxFuqU77j
Content-Type: application/pkcs7-signature; name="smime.p7s"
Content-Disposition: attachment; filename="smime.p7s"
Content-Transfer-Encoding: base64

MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgEFADCABgkqhkiG9w0BBwEAAKCCEkQw
ggYQMIID+KADAgECAhBNlCwQ1DvglAnFgS06KwZPMA0GCSqGSIb3DQEBDAUAMIGIMQswCQYDVQQG
EwJVUzETMBEGA1UECBMKTmV3IEplcnNleTEUMBIGA1UEBxMLSmVyc2V5IENpdHkxHjAcBgNVBAoT
FVRoZSBVU0VSVFJVU1QgTmV0d29yazEuMCwGA1UEAxMlVVNFUlRydXN0IFJTQSBDZXJ0aWZpY2F0
aW9uIEF1dGhvcml0eTAeFw0xODExMDIwMDAwMDBaFw0zMDEyMzEyMzU5NTlaMIGWMQswCQYDVQQG
EwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYD
VQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50
aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC
AQEAyjztlApB/975Rrno1jvm2pK/KxBOqhq8gr2+JhwpKirSzZxQgT9tlC7zl6hn1fXjSo5MqXUf
ItMltrMaXqcESJuK8dtK56NCSrq4iDKaKq9NxOXFmqXX2zN8HHGjQ2b2Xv0v1L5Nk1MQPKA19xeW
QcpGEGFUUd0kN+oHox+L9aV1rjfNiCj3bJk6kJaOPabPi2503nn/ITX5e8WfPnGw4VuZ79Khj1YB
rf24k5Ee1sLTHsLtpiK9OjG4iQRBdq6Z/TlVx/hGAez5h36bBJMxqdHLpdwIUkTqT8se3ed0PewD
ch/8kHPo5fZl5u1B0ecpq/sDN/5sCG52Ds+QU5O5EwIDAQABo4IBZDCCAWAwHwYDVR0jBBgwFoAU
U3m/WqorSs9UgOHYm8Cd8rIDZsswHQYDVR0OBBYEFAnA8vwL2pTbX/4r36iZQs/J4K0AMA4GA1Ud
DwEB/wQEAwIBhjASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEF
BQcDBDARBgNVHSAECjAIMAYGBFUdIAAwUAYDVR0fBEkwRzBFoEOgQYY/aHR0cDovL2NybC51c2Vy
dHJ1c3QuY29tL1VTRVJUcnVzdFJTQUNlcnRpZmljYXRpb25BdXRob3JpdHkuY3JsMHYGCCsGAQUF
BwEBBGowaDA/BggrBgEFBQcwAoYzaHR0cDovL2NydC51c2VydHJ1c3QuY29tL1VTRVJUcnVzdFJT
QUFkZFRydXN0Q0EuY3J0MCUGCCsGAQUFBzABhhlodHRwOi8vb2NzcC51c2VydHJ1c3QuY29tMA0G
CSqGSIb3DQEBDAUAA4ICAQBBRHUAqznCFfXejpVtMnFojADdF9d6HBA4kMjjsb0XMZHztuOCtKF+
xswhh2GqkW5JQrM8zVlU+A2VP72Ky2nlRA1GwmIPgou74TZ/XTarHG8zdMSgaDrkVYzz1g3nIVO9
IHk96VwsacIvBF8JfqIs+8aWH2PfSUrNxP6Ys7U0sZYx4rXD6+cqFq/ZW5BUfClN/rhk2ddQXyn7
kkmka2RQb9d90nmNHdgKrwfQ49mQ2hWQNDkJJIXwKjYA6VUR/fZUFeCUisdDe/0ABLTI+jheXUV1
eoYV7lNwNBKpeHdNuO6Aacb533JlfeUHxvBz9OfYWUiXu09sMAviM11Q0DuMZ5760CdO2VnpsXP4
KxaYIhvqPqUMWqRdWyn7crItNkZeroXaecG03i3mM7dkiPaCkgocBg0EBYsbZDZ8bsG3a08LwEsL
1Ygz3SBsyECa0waq4hOf/Z85F2w2ZpXfP+w8q4ifwO90SGZZV+HR/Jh6rEaVPDRF/CEGVqR1hiuQ
OZ1YL5ezMTX0ZSLwrymUE0pwi/KDaiYB15uswgeIAcA6JzPFf9pLkAFFWs1QNyN++niFhsM47qod
x/PL+5jR87myx5uYdBEQkkDc+lKB1Wct6ucXqm2EmsaQ0M95QjTmy+rDWjkDYdw3Ms6mSWE3Bn7i
5ZgtwCLXgAIe5W8mybM2JzCCBhQwggT8oAMCAQICEQDGvhmWZ0DEAx0oURL6O6l+MA0GCSqGSIb3
DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYD
VQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28g
UlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMB4XDTIyMDEwNzAw
MDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJARYTZHdtdzJAaW5mcmFkZWFkLm9y
ZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3GpC2bomUqk+91wLYBzDMcCj5C9m6
oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZHh7htyAkWYVoFsFPrwHounto8xTsy
SSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT9YgcBqKCo65pTFmOnR/VVbjJk4K2
xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNjP+qDrh0db7PAjO1D4d5ftfrsf+kd
RR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy2U+eITZ5LLE5s45mX2oPFknWqxBo
bQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3BgBEmfsYWlBXO8rVXfvPgLs32VdV
NZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/7auNVRmPB3v5SWEsH8xi4Bez2V9U
KxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmdlFYhAflWKQ03Ufiu8t3iBE3VJbc2
5oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9aelIl6vtbhMA+l0nfrsORMa4kobqQ5
C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMBAAGjggHMMIIByDAfBgNVHSMEGDAW
gBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeDMcimo0oz8o1R1Nver3ZVpSkwDgYD
VR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYwFAYIKwYBBQUHAwQGCCsGAQUFBwMC
MEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYBBQUHAgEWF2h0dHBzOi8vc2VjdGln
by5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9jcmwuc2VjdGlnby5jb20vU2VjdGln
b1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1haWxDQS5jcmwwgYoGCCsGAQUFBwEB
BH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdvLmNvbS9TZWN0aWdvUlNBQ2xpZW50
QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAjBggrBgEFBQcwAYYXaHR0cDovL29j
c3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5mcmFkZWFkLm9yZzANBgkqhkiG9w0B
AQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQvQ/fzPXmtR9t54rpmI2TfyvcKgOXp
qa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvIlSPrzIB4Z2wyIGQpaPLlYflrrVFK
v9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9ChWFfgSXvrWDZspnU3Gjw/rMHrGnql
Htlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0whpBtXdyDjzBtQTaZJ7zTT/vlehc/
tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9IzCCBhQwggT8oAMCAQICEQDGvhmW
Z0DEAx0oURL6O6l+MA0GCSqGSIb3DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3Jl
YXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0
ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJl
IEVtYWlsIENBMB4XDTIyMDEwNzAwMDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJ
ARYTZHdtdzJAaW5mcmFkZWFkLm9yZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3
GpC2bomUqk+91wLYBzDMcCj5C9m6oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZH
h7htyAkWYVoFsFPrwHounto8xTsySSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT
9YgcBqKCo65pTFmOnR/VVbjJk4K2xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNj
P+qDrh0db7PAjO1D4d5ftfrsf+kdRR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy
2U+eITZ5LLE5s45mX2oPFknWqxBobQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3
BgBEmfsYWlBXO8rVXfvPgLs32VdVNZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/
7auNVRmPB3v5SWEsH8xi4Bez2V9UKxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmd
lFYhAflWKQ03Ufiu8t3iBE3VJbc25oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9ae
lIl6vtbhMA+l0nfrsORMa4kobqQ5C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMB
AAGjggHMMIIByDAfBgNVHSMEGDAWgBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeD
Mcimo0oz8o1R1Nver3ZVpSkwDgYDVR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYw
FAYIKwYBBQUHAwQGCCsGAQUFBwMCMEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYB
BQUHAgEWF2h0dHBzOi8vc2VjdGlnby5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9j
cmwuc2VjdGlnby5jb20vU2VjdGlnb1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1h
aWxDQS5jcmwwgYoGCCsGAQUFBwEBBH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdv
LmNvbS9TZWN0aWdvUlNBQ2xpZW50QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAj
BggrBgEFBQcwAYYXaHR0cDovL29jc3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5m
cmFkZWFkLm9yZzANBgkqhkiG9w0BAQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQv
Q/fzPXmtR9t54rpmI2TfyvcKgOXpqa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvI
lSPrzIB4Z2wyIGQpaPLlYflrrVFKv9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9Ch
WFfgSXvrWDZspnU3Gjw/rMHrGnqlHtlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0w
hpBtXdyDjzBtQTaZJ7zTT/vlehc/tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9
IzGCBMcwggTDAgEBMIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVz
dGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMT
NVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEA
xr4ZlmdAxAMdKFES+jupfjANBglghkgBZQMEAgEFAKCCAeswGAYJKoZIhvcNAQkDMQsGCSqGSIb3
DQEHATAcBgkqhkiG9w0BCQUxDxcNMjMxMDI0MTU0OTU3WjAvBgkqhkiG9w0BCQQxIgQgK39bCZWh
VJZee5enIVMmlWFW9gg42ndHUkYCkMRlRH8wgb0GCSsGAQQBgjcQBDGBrzCBrDCBljELMAkGA1UE
BhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEYMBYG
A1UEChMPU2VjdGlnbyBMaW1pdGVkMT4wPAYDVQQDEzVTZWN0aWdvIFJTQSBDbGllbnQgQXV0aGVu
dGljYXRpb24gYW5kIFNlY3VyZSBFbWFpbCBDQQIRAMa+GZZnQMQDHShREvo7qX4wgb8GCyqGSIb3
DQEJEAILMYGvoIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVy
MRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNl
Y3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEAxr4Z
lmdAxAMdKFES+jupfjANBgkqhkiG9w0BAQEFAASCAgCPts9hD9ACFDOTAK4HEeY3W6yBy/a5Nw+n
VAvNs+mfUiIjlAjjLdvqYp3TgvLThvCMNVqGGz/7m++lIMePL3YVN6N0NQljvC56I5B5k7Y7vfwW
0/1DWXq+LE0EA+V524bVF9StWv6mk+VTmDKmhrqslwIGgo2yiyrK8KGFbLPUgpN1jOn7OXCuXjex
nKHpj2t/xpYW2sx6a5LJM0EjFEyVvO+tedc3Wh96/+N2O6hHGCcnLIur6Lod7yZHefmpg+ukXbYg
hNRYsUclIKXMlhwKtk7Rr4QItlVwvCv1Lg8jU46TFbvG2Ywm/mm0/1XH42a5Nccq2whK66KCmp0X
3z+KRJnnZkR+xj7+PpTDLVrdujVnnHjdOVXK3yZe3xPhUa9OmM+8nt35kDeIAAiv6yaO7ioQNtIF
F57sBReS2FX5Qv82uFXRBDsCq4FdTs527yYOE/K0Bfmlxxo4TSU152C//oJakMgDljTNwCNaLuFJ
V0gp6m2kPaT4wMoJw0Fv2slT2pkybP7g6cEWMwtaPKarbJ/8VSrwc1rH+Yj/UDvnvCmUogU4VJ+D
xXF28pcvba+wvV219ha/KDN0E1nSx47e+JbV30bHkDjiUJAl4YUVhr56CN7cSK5pxCq1TnBSp+8+
eXLH10GkKqXAEWCnbEaPOEPTZjwkX2/nw1uIDcssfwAAAAAAAA==


--=-ekZgHvjk85CbxFuqU77j--


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 16:06:09 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 16:06:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622158.969418 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvJur-0002QI-DI; Tue, 24 Oct 2023 16:06:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622158.969418; Tue, 24 Oct 2023 16:06: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 1qvJur-0002QA-AC; Tue, 24 Oct 2023 16:06:01 +0000
Received: by outflank-mailman (input) for mailman id 622158;
 Tue, 24 Oct 2023 16:06: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=krZT=GG=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qvJup-0002Q4-T9
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 16:06:00 +0000
Received: from EUR01-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur01on2059.outbound.protection.outlook.com [40.107.13.59])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 386193fd-7287-11ee-98d5-6d05b1d4d9a1;
 Tue, 24 Oct 2023 18:05:58 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM9PR04MB8922.eurprd04.prod.outlook.com (2603:10a6:20b:409::19)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.11; Tue, 24 Oct
 2023 16:05:29 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6933.011; Tue, 24 Oct 2023
 16: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>
X-Inumbo-ID: 386193fd-7287-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=GL+ow2ZkEHnD2KD9GzSTJk5zQ1PnlbkdbJ8TdHY6LlXXucEKhC8cYLZWKhzRvw2WaFLjTekEyuYu9UbDEzxdXYgVtHrViXIYuNgajgPCVsnJb7+fR3U/ZVkiYNWZY3JgK9BY95VIcpyvBZIwkKAmg+I81B/rPP2fZCSs2hNawzFp2+uNMTucGIzA1uGrk4llXf4rOqYf7Rcjzy33u4LOjPbde1m5wZTHQzp5Npq5gaoBVpVMpoKpN9QLjXd01w317dmnhWfvKKOtap77B7yfv1n660MpekPlyPqHtKwRk29OpayCsRvFLknAwlFVzydrBeXh8OjO48kQ9gYEEfyjQA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=+GoKLKJWy4GhDflO04Brfcph0A3Adg6c6OHB2iNZnu0=;
 b=dHXMyQ52dGZTuUoNzGh4AACvqoYvBKs+GC4Jtj/K+qRLDw9vV5AZdSqTfCTj1lbytUeBl4NB0dMGqYOO+02/0ZNH/ILXGSsWeoiRzfa6BcgySRLemeaJQqNn/+o6n3vDUobRrsOnG/T+QAKrfeL7d9B449wdfM18VuPFT95ArsOfylw3ADuDjn4gCQN+/JAJ3MC1T0QDwuei8Fm/z0hSTC04S8XfvZoryZtH+b+yL8b5kImWq7+nc/iqx6yTZZTriPoINiPXrQ34/QFMHj7hnI/BTcVYMgcf/u1z4MUveJpumQwSQWF+m2d2TuMHKwrjSiKbLPWRIHmr0ADBS3B10A==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=+GoKLKJWy4GhDflO04Brfcph0A3Adg6c6OHB2iNZnu0=;
 b=HdMew6q6N4ohRzXNq1zcOI2FN4GXjdZ0NntoCDJ1NF0uz/5Q+MIYM9+hUrlJxqQMY/oWzkoICAQEebmnxVx80L3TLjpZ2n+FgByYhRJrzSVoC4+Bn8G6XbQh8xWhp9UGhaPF63msKoNYH4KHfo5hSuhiZDJ3LHwjHvzxgLzrTuEmR0OZwgbIT6lYThnw2rrGKV6LRMXZtyjFUN5ara0hO6XwDef7TjIkD39a3LSsbRWmF1dmGjDDDFosLFysmFuNQgNfGLXlM9rgEUZnGrXabpHpwBqNIaa6Djk+DdfqOCws1BGwkElG9Pk4UCgTxnlZttCRuMTGs8Qcpub6xOEXjQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <ed88161d-a2e9-8005-729b-b81eec9b0a04@suse.com>
Date: Tue, 24 Oct 2023 18:05:27 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [XEN RFC] xen/automation: add deviations for MISRA C:2012 Rule
 8.3
Content-Language: en-US
To: Federico Serafini <federico.serafini@bugseng.com>
Cc: consulting@bugseng.com, Simone Ballarin <simone.ballarin@bugseng.com>,
 Doug Goldstein <cardoe@cardoe.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: <565552f9e7cfff56fb1d1037cfa9662a1818c5d3.1698153310.git.federico.serafini@bugseng.com>
 <4019825c-3307-8e0d-63f2-22d651a7ca32@suse.com>
 <91821158-66ff-4c4e-b117-9b7f0f17eb10@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <91821158-66ff-4c4e-b117-9b7f0f17eb10@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0124.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:b9::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_|AM9PR04MB8922:EE_
X-MS-Office365-Filtering-Correlation-Id: c6c3184b-7e00-4fb8-537e-08dbd4ab0b07
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	lq31KSmgeLMcY1L7GcVzb+/6tqE/ntuAaNAPPHGU8RioEgXWlVBZKGVraLFIC2fnJo+Iyy1FAgyLns5QerBrH2E00dlMCxHhyc41j5t0QYvOaW3KFlwmFou5xE5LgYWOtOoktQn73vCZiqlOawuh6LnWjYmmmy3GVIOM+7QO4aIgxWk9sjGcaO5Iql5ONl1rO4mPFLBOdoim9+Cb1AXCbARZeFrDHpSVd1cK4bu3CJod7RKeBl6fE2aol0W4/c2jBppD6m1Vb0zm29cbXxY9r5nUZgBy9/aDe+5LOUa0RILQsgQs4Dc1xt4wWzEcoCVSDB2QSOW6ytA3ma1wLCbUm3ERiFJ44aam7i8zuCYjtzwdfaXnWl5qhcAVO6nSw2wXBOOQF9Et1+ys5Tx8UnvzPEvtPdXeiXBt6a42EWB/DX0rh3ZewrP0gq7io6a26iRhUMHYxfmVAaqSEpVFMXyfLGScYjVF7z7IEe59ECucfAKGt5K9xJNYbkMQuYV5xbiVIklV1u+BFTOcczhwjMdGyfJdPc3+RqafJA9+6VH/8gOWH+4hHCymBTlRO52lo7MKXpIjkfO0u/DgmeTTlO1wYMI9CxCqLYoSZ1K1PxgXW+HenXFw2Efg63xGLZlLUdWoXlaSup1+VLY/oVIM9HOS1A==
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)(346002)(376002)(230922051799003)(64100799003)(1800799009)(186009)(451199024)(36756003)(2616005)(53546011)(26005)(6486002)(6512007)(6506007)(38100700002)(316002)(66476007)(66556008)(86362001)(31696002)(6916009)(66946007)(54906003)(478600001)(83380400001)(31686004)(41300700001)(4326008)(8936002)(8676002)(7416002)(2906002)(5660300002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?cXhCNkJIWFlsSHdjR2kzeTVvS2d3NHZQREZPV1psSE96SFpDdXh3OThCR1dI?=
 =?utf-8?B?MXZ6aUNFb2NKejlpRFpoNUJyR0xrcFExSWVYZ2lKdEY3UDd2NUVQWmdoaGRR?=
 =?utf-8?B?MkdIN3BkSlp4SjdsK0pGZ1Buc1Bna3Y4NjY1aUdYYnZ6RWxKTDNSeGZRaHZi?=
 =?utf-8?B?UVd2WFR1aDllZVdKVTkwNHcrSTg3U1RNU0s1eWdFUXkvdjh5d05JRFZteFox?=
 =?utf-8?B?RkF6Z29KNDNXdUFWYlhXa3dqYzd0MndmV09kUlBmNXFBODNTSHdxNkZTbmI5?=
 =?utf-8?B?U3JmbDl3YWJhZEpIWFEwRVFZbGJGdU9rbFNUN1IyT3B2UEJxRmpiNFhyQm9s?=
 =?utf-8?B?RWpJdlhCdWhWMXhmUzZtT1Z3WjdGeTVFc2k0NDNtUmNwWUNNSi8yODZRSGti?=
 =?utf-8?B?WlBuTEhTdHlCYkNHQlFLaU9TZlJHdGwybmlnZDg2VHNqKytSNG9vTGtNS3Nu?=
 =?utf-8?B?SUZFZytOOC9IVEtBUE5jTkpTMkVRU3gwYyt3ZjRRWjdhOGZKME12WGJQcys4?=
 =?utf-8?B?UlIzYUdwVE1oZ1ZhZmp3cGo4aFplMXFUekdWU0c1Qm0rZll2NkhudVNMdm1U?=
 =?utf-8?B?SXNkVGVXZ0dnaFlMTG13NjU2QU5vd2tlbEtvM1lUeFJSL1hlSzlIMWFHNHcr?=
 =?utf-8?B?MHlRZE9VeWFmS3NndHNHYjBoTzlwY1dCWFd6bndSdHlGTTVzek80Y3VYL0dp?=
 =?utf-8?B?aDU1SksvczRETExUb1hXN1B6ZUcyTmIvazY2MTlnMmQ5UUZka29SSkQrVzZz?=
 =?utf-8?B?anhvVVJxWjdSMVdCNGdEMkNSUFFlTnVQQUF5TG5ZV21ReTVDWE5UQ1BKYXlm?=
 =?utf-8?B?QUFxOVlnQTVuZ3VsWWJWV2VGWkNrRVFXS3Y2Z3NXSWtDTG8vQ2NtWGxycVJj?=
 =?utf-8?B?Z3JIYzFlSzFtYUthejg5aTVrYlhTYlEzT0RVdTVyckJxTE9FTVlmQmdmeVVZ?=
 =?utf-8?B?TGpxa2hYYktQM3BLaEQreTU3bXkxdkIzMElDVUFBbWpzSUtnZzhxMk93Z0F6?=
 =?utf-8?B?MG9pcURMSE8wcFR1NlY3S21FeFUvdlIvTzNRV2t5YVcwc3QzN2RuMitZN1Fs?=
 =?utf-8?B?MVgxeGtPbmZBZGw1SDZ4QzRxbVhMSy9QVjlEY3AvY3JHTWYzeE1abUVpTnN4?=
 =?utf-8?B?Wk5CVUlYc1lhTHRKVW82SEVrNHd2WS8zQU9CUWpJaGcxYjF1L2pMdVNWYnlQ?=
 =?utf-8?B?ZmdjcHF4YTVBUHY1amJJR2gvajFRZTBwSldFV2F1ZXhUR1l6MHRJK2FuRXlN?=
 =?utf-8?B?ZDRkVHlRdmtYNkk3VGRrMjNWMHYvQS9VRVVpUXVFcGV2d3Y5VFJOcmxuUzhM?=
 =?utf-8?B?bk1SNDhlVWRHSXE2L1ZKQXlxZkZmUS9uWVVRZWg2MEtrdHluMElpbGlpUDBM?=
 =?utf-8?B?VndqZWgySVRoNzNETjlhRGlwNnhuQVFOMGk3azl0SlNZd3dxTGg1cDlLczVN?=
 =?utf-8?B?TGp1a0g2QjJXNytFQkpMQWhEWUMranZ6UEZQWTR6RUprL3ZaUWVPaFpZSW1I?=
 =?utf-8?B?VHBrREIweEZYZThrcC91VUZ0WWpIODFnYm9xbmVIWThyczJIZGIyaHhrSzJH?=
 =?utf-8?B?bjEwdWR4SzVkMExCejBybkI3SkJHRDBGNVFTSmxwaVJjMFVhQ1BtcE5rSzFF?=
 =?utf-8?B?RHFFQXVnand5M0ZmODBZam9HUGVBc3VHOElBcVl4cTczOHdRYWZvRExaVmM3?=
 =?utf-8?B?eTlKS0JRTHpIUTFTS2orZ1E4U1lIL3U2Z2dCTE5DY1EyQmRESTcrMTlEMmsx?=
 =?utf-8?B?OFlDbzJGczVzZC9nS1hOOFNoeit2ZzA2VjZNQi9hQ1FoeVNhTFVwRG5KZlps?=
 =?utf-8?B?ZUwwRE40bE5IUjBLaWRsQmNPcGw3aExCU1I5ODNaMGRCUERTaEl6T2I4VWt1?=
 =?utf-8?B?eXpEYnd0SmVzMlJXR0dDWTFpc1lPVklqSS9rNVgvS2ZvY0RvcHVGOU52aS9x?=
 =?utf-8?B?ajlSQzhhTmJ5OG84QlNBSVc3em9VaHdKQUY4aVVBamdCTkdTVXJlSkI0WE9P?=
 =?utf-8?B?eFNDbmRHcmNQQzFVRmVVOUttTkJZWWlaN3hIWTg1ZjQ2a29tbENsZUo0aS8z?=
 =?utf-8?B?cEZxRnJ5U3pTZU9DTWRIeS8yVzh1eituYjdGRGErNGlzMzBQdXVac2xFNEl2?=
 =?utf-8?Q?hhLAsl8lTPNo7hlk0Vq7eFTxq?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: c6c3184b-7e00-4fb8-537e-08dbd4ab0b07
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 24 Oct 2023 16:05:29.3776
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: fEhUgscubzXMGXe7a4i27hibowSRXgXb7r+WtTSLPmOYm8uroADhhuRhsmpCHhyPKIKAikCOCFLJJp9IIVJ4Xg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR04MB8922

On 24.10.2023 17:22, Federico Serafini wrote:
> On 24/10/23 16:32, Jan Beulich wrote:
>> On 24.10.2023 15:22, Federico Serafini wrote:
>>> Update ECLAIR configuration to deviate Rule 8.3 ("All declarations of
>>> an object or function shall use the same names and type qualifiers")
>>> for the following functions:
>>> - set_px_pminfo();
>>> - guest_walk_tables_[0-9]+_levels().
>>>
>>> Update file docs/misra/deviations.rst accordingly.
>>> No functional change.
>>>
>>> Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
>>> ---
>>> I had a discussion with Jan about the reasons behind the choice of parameter
>>> name 'walk' for the definitions of functions guest_walk_tables_[0-9]+_levels()
>>> and the parameter name 'pfec' for the corresponding declarations.
>>> Also for the function set_px_pminfo(), it seems that the parameter names are
>>> different on purpose.
>>
>> In this latter case I wonder why you think so. Did I end up making a
>> misleading comment anywhere? It looks to me as if naming the parameter
>> in question "perf" uniformly would be quite okay.
> 
> No, it was just my impression.
> What about the mismatch on the first parameter "acpi_id" vs "cpu"?

The two can't possibly be used interchangeably, so whichever entity it
is that is being passed should determine the uniformly used name.

Jan


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 16:11:37 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 16:11:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622161.969427 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvK06-0004Kh-W3; Tue, 24 Oct 2023 16:11:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622161.969427; Tue, 24 Oct 2023 16:11: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 1qvK06-0004Ka-T8; Tue, 24 Oct 2023 16:11:26 +0000
Received: by outflank-mailman (input) for mailman id 622161;
 Tue, 24 Oct 2023 16:11: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=jXWl=GG=casper.srs.infradead.org=BATV+e2898748ca55db067849+7366+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qvK03-0004KU-Sc
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 16:11:25 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id f95bf88e-7287-11ee-98d5-6d05b1d4d9a1;
 Tue, 24 Oct 2023 18:11:22 +0200 (CEST)
Received: from [2001:8b0:10b:5:758e:a1c4:bc7:e7a7]
 (helo=u3832b3a9db3152.ant.amazon.com)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qvJzn-003Rvn-Vz; Tue, 24 Oct 2023 16:11: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: f95bf88e-7287-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=MIME-Version:Content-Type:References:
	In-Reply-To:Date:Cc:To:From:Subject:Message-ID:Sender:Reply-To:
	Content-Transfer-Encoding:Content-ID:Content-Description;
	bh=S8eG8DOYG4FW8UmHvuqS7MrY9L0t0tq6fnfvkj5dUUc=; b=HtT/3IMQHB5Kxd9vyQJTLHtpIy
	INVuQOnPoSpqg7YlCihvrP0UWsnOvZ8DXmGCpmlIkmtuo1MK5uSmSIM+5io3I+ioFGH4La/juggqN
	fxmALH+Piuj5opny+5wAO/n8huZ0gSeqW9qlN2vYRiYBTafxav6RAv6rF8cCpXwFbS95+/jG8RGGi
	vCLNnUeWz41JP+j/TzijVVdOGFxKW1mu401gzmbC4+3/ghX+2pnh58BURRG3kWtsW6LQIFBCPJHew
	Ym7EuwJ3l7+rrZtls6cR1q44LQ6zpoWnr1m03Qx9FALftXIoO2hUx8lB/HsPRDLsQwJlBPcyQkFwZ
	SN84fEOg==;
Message-ID: <bc275683bf33f3246ca255ae1cb66796b10a405a.camel@infradead.org>
Subject: Re: [PATCH 0/12] Get Xen PV shim running in qemu
From: David Woodhouse <dwmw2@infradead.org>
To: Alex =?ISO-8859-1?Q?Benn=E9e?= <alex.bennee@linaro.org>
Cc: qemu-devel@nongnu.org, Kevin Wolf <kwolf@redhat.com>, Hanna Reitz
 <hreitz@redhat.com>, Stefano Stabellini <sstabellini@kernel.org>, Anthony
 Perard <anthony.perard@citrix.com>, Paul Durrant <paul@xen.org>, 
 =?ISO-8859-1?Q?Marc-Andr=E9?= Lureau <marcandre.lureau@redhat.com>, Paolo
 Bonzini <pbonzini@redhat.com>, "Michael S. Tsirkin" <mst@redhat.com>,
 Marcel Apfelbaum <marcel.apfelbaum@gmail.com>, Richard Henderson
 <richard.henderson@linaro.org>, Eduardo Habkost <eduardo@habkost.net>, 
 Marcelo Tosatti <mtosatti@redhat.com>, qemu-block@nongnu.org,
 xen-devel@lists.xenproject.org, kvm@vger.kernel.org
Date: Tue, 24 Oct 2023 17:11:04 +0100
In-Reply-To: <877cnc2fxs.fsf@linaro.org>
References: <20231016151909.22133-1-dwmw2@infradead.org>
	 <877cnc2fxs.fsf@linaro.org>
Content-Type: multipart/signed; micalg="sha-256"; protocol="application/pkcs7-signature";
	boundary="=-4Sk+s3sogPBNbhi6YfJd"
User-Agent: Evolution 3.44.4-0ubuntu2 
MIME-Version: 1.0
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html


--=-4Sk+s3sogPBNbhi6YfJd
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Tue, 2023-10-24 at 16:24 +0100, Alex Benn=C3=A9e wrote:
>=20
> David Woodhouse <dwmw2@infradead.org> writes:
>=20
> > I hadn't got round to getting the PV shim running yet; I thought it wou=
ld
> > need work on the multiboot loader. Turns out it doesn't. I *did* need t=
o
> > fix a couple of brown-paper-bag bugs in the per-vCPU upcall vector supp=
ort,
> > and implement Xen console support though. Now I can test PV guests:
> >=20
> > =C2=A0$ qemu-system-x86_64 --accel kvm,xen-version=3D0x40011,kernel-irq=
chip=3Dsplit \
> > =C2=A0=C2=A0 -chardev stdio,mux=3Don,id=3Dchar0 -device xen-console,cha=
rdev=3Dchar0 \
> > =C2=A0=C2=A0 -drive file=3D${GUEST_IMAGE},if=3Dxen -display none -m 1G =
\
> > =C2=A0=C2=A0 -kernel ~/git/xen/xen/xen -initrd ~/git/linux/arch/x86/boo=
t/bzImage
> > =C2=A0\
>=20

(Reordering your questions so the answers flow better)

> Would it be possible to have some sort of overview document in our
> manual for how Xen guests are supported under KVM?

https://qemu-project.gitlab.io/qemu/system/i386/xen.html covers running
Xen HVM guests under Qemu/KVM.

What I'm adding here is the facility to support Xen PV guests. There is
a corresponding update to the documentation in my working tree at=20
https://git.infradead.org/users/dwmw2/qemu.git/shortlog/refs/heads/xenfv

https://git.infradead.org/users/dwmw2/qemu.git/commitdiff/af693bf51141

PV mode is the old mode which predates proper virtualization support in
the CPUs, where a guest kernel *knows* it doesn't have access to real
(or indeed virtualized) hardware. It runs in ring 1 (or ring 3 on
x86_64) and makes hypercalls to Xen to ask it to do all the MMU
management.

When Spectre/Meltdown happened, running actual PV guests directly under
Xen became kind of insane, so we hacked a version of Xen to work as a
"shim", running inside a proper HVM guest, and just providing those MMU
management services to its guest. Its *only* guest. This shim doesn't
even do any of the PV disk/block stuff; that's passed through directly
to the real hypervisor.

So you have a real Xen hypervisor, then a "PV shim" Xen running inside
that hardware virtual machine, and a guest kernel hosted by that PV
shim.

Now, since Qemu/KVM can now pretend to be Xen and host guests that
think they're running as Xen HVM guests... Qemu/KVM can host that PV
shim too. As noted, I just had to realise that we could use '-initrd'
to trick Qemu's multiboot loader into doing it... and fix a few brown
paper bag bugs.

> So this is a KVM guest running the Xen hypervisor (via -kernel) and a
> Dom0 Linux guest (via -initrd)?

Fairly much. It's a KVM guest running that "shim" version of the Xen
hypervisor via -kernel, and a Linux guest via -initrd.

Although I wouldn't call that a "Dom0 Linux guest" because we tend to
use "Dom0" to mean the control domain, which can launch other (DomU)
guests... and that isn't what's happening here. It's more of a "Dom1".
The one and only unprivileged guest.

In particular, there's no nested virtualization here. Because in that
sense, what "Xen" does to host a PV guest isn't really virtualization.

> Should this work for any Xen architecture or is this x86 specific? Does
> the -M machine model matter?

It's currently x86-specific and KVM-specific. You can use the pc or q35
models as you see fit, although see the doc linked above for discussion
of the IDE 'unplug' mechanism. And recent patches on the list to fix it
for q35.

It would be interesting to make it work on other platforms, and even
with TCG. I've tried to keep it as portable as possible up to a point,
but without too much gratuitous overengineering to chase that goal.

Making it work with TCG would require dealing with all the struct
layouts where alignment/padding differs on different host
architectures, so we probably wouldn't be able to use the Xen public
header files directly. And we would need to implement some of the basic
event channel delivery and shared info page handling that we rely on
KVM to do for us. The latter probably isn't that hard; the former is
what stopped me even bothering.

Making it work for e.g. Arm would require porting some of the KVM
support to Arm in the kernel (it's currently x86-specific). And/or
making it work for TCG.... but the parts that *are* accelerated in the
kernel (timers, IPIs, etc) are there for a reason though. If we do make
it work for TCG by implementing those in userspace, I wouldn't
necessarily want a *KVM* guest to have to rely on those in userspace.

--=-4Sk+s3sogPBNbhi6YfJd
Content-Type: application/pkcs7-signature; name="smime.p7s"
Content-Disposition: attachment; filename="smime.p7s"
Content-Transfer-Encoding: base64

MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgEFADCABgkqhkiG9w0BBwEAAKCCEkQw
ggYQMIID+KADAgECAhBNlCwQ1DvglAnFgS06KwZPMA0GCSqGSIb3DQEBDAUAMIGIMQswCQYDVQQG
EwJVUzETMBEGA1UECBMKTmV3IEplcnNleTEUMBIGA1UEBxMLSmVyc2V5IENpdHkxHjAcBgNVBAoT
FVRoZSBVU0VSVFJVU1QgTmV0d29yazEuMCwGA1UEAxMlVVNFUlRydXN0IFJTQSBDZXJ0aWZpY2F0
aW9uIEF1dGhvcml0eTAeFw0xODExMDIwMDAwMDBaFw0zMDEyMzEyMzU5NTlaMIGWMQswCQYDVQQG
EwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYD
VQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50
aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC
AQEAyjztlApB/975Rrno1jvm2pK/KxBOqhq8gr2+JhwpKirSzZxQgT9tlC7zl6hn1fXjSo5MqXUf
ItMltrMaXqcESJuK8dtK56NCSrq4iDKaKq9NxOXFmqXX2zN8HHGjQ2b2Xv0v1L5Nk1MQPKA19xeW
QcpGEGFUUd0kN+oHox+L9aV1rjfNiCj3bJk6kJaOPabPi2503nn/ITX5e8WfPnGw4VuZ79Khj1YB
rf24k5Ee1sLTHsLtpiK9OjG4iQRBdq6Z/TlVx/hGAez5h36bBJMxqdHLpdwIUkTqT8se3ed0PewD
ch/8kHPo5fZl5u1B0ecpq/sDN/5sCG52Ds+QU5O5EwIDAQABo4IBZDCCAWAwHwYDVR0jBBgwFoAU
U3m/WqorSs9UgOHYm8Cd8rIDZsswHQYDVR0OBBYEFAnA8vwL2pTbX/4r36iZQs/J4K0AMA4GA1Ud
DwEB/wQEAwIBhjASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEF
BQcDBDARBgNVHSAECjAIMAYGBFUdIAAwUAYDVR0fBEkwRzBFoEOgQYY/aHR0cDovL2NybC51c2Vy
dHJ1c3QuY29tL1VTRVJUcnVzdFJTQUNlcnRpZmljYXRpb25BdXRob3JpdHkuY3JsMHYGCCsGAQUF
BwEBBGowaDA/BggrBgEFBQcwAoYzaHR0cDovL2NydC51c2VydHJ1c3QuY29tL1VTRVJUcnVzdFJT
QUFkZFRydXN0Q0EuY3J0MCUGCCsGAQUFBzABhhlodHRwOi8vb2NzcC51c2VydHJ1c3QuY29tMA0G
CSqGSIb3DQEBDAUAA4ICAQBBRHUAqznCFfXejpVtMnFojADdF9d6HBA4kMjjsb0XMZHztuOCtKF+
xswhh2GqkW5JQrM8zVlU+A2VP72Ky2nlRA1GwmIPgou74TZ/XTarHG8zdMSgaDrkVYzz1g3nIVO9
IHk96VwsacIvBF8JfqIs+8aWH2PfSUrNxP6Ys7U0sZYx4rXD6+cqFq/ZW5BUfClN/rhk2ddQXyn7
kkmka2RQb9d90nmNHdgKrwfQ49mQ2hWQNDkJJIXwKjYA6VUR/fZUFeCUisdDe/0ABLTI+jheXUV1
eoYV7lNwNBKpeHdNuO6Aacb533JlfeUHxvBz9OfYWUiXu09sMAviM11Q0DuMZ5760CdO2VnpsXP4
KxaYIhvqPqUMWqRdWyn7crItNkZeroXaecG03i3mM7dkiPaCkgocBg0EBYsbZDZ8bsG3a08LwEsL
1Ygz3SBsyECa0waq4hOf/Z85F2w2ZpXfP+w8q4ifwO90SGZZV+HR/Jh6rEaVPDRF/CEGVqR1hiuQ
OZ1YL5ezMTX0ZSLwrymUE0pwi/KDaiYB15uswgeIAcA6JzPFf9pLkAFFWs1QNyN++niFhsM47qod
x/PL+5jR87myx5uYdBEQkkDc+lKB1Wct6ucXqm2EmsaQ0M95QjTmy+rDWjkDYdw3Ms6mSWE3Bn7i
5ZgtwCLXgAIe5W8mybM2JzCCBhQwggT8oAMCAQICEQDGvhmWZ0DEAx0oURL6O6l+MA0GCSqGSIb3
DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYD
VQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28g
UlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMB4XDTIyMDEwNzAw
MDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJARYTZHdtdzJAaW5mcmFkZWFkLm9y
ZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3GpC2bomUqk+91wLYBzDMcCj5C9m6
oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZHh7htyAkWYVoFsFPrwHounto8xTsy
SSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT9YgcBqKCo65pTFmOnR/VVbjJk4K2
xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNjP+qDrh0db7PAjO1D4d5ftfrsf+kd
RR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy2U+eITZ5LLE5s45mX2oPFknWqxBo
bQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3BgBEmfsYWlBXO8rVXfvPgLs32VdV
NZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/7auNVRmPB3v5SWEsH8xi4Bez2V9U
KxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmdlFYhAflWKQ03Ufiu8t3iBE3VJbc2
5oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9aelIl6vtbhMA+l0nfrsORMa4kobqQ5
C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMBAAGjggHMMIIByDAfBgNVHSMEGDAW
gBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeDMcimo0oz8o1R1Nver3ZVpSkwDgYD
VR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYwFAYIKwYBBQUHAwQGCCsGAQUFBwMC
MEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYBBQUHAgEWF2h0dHBzOi8vc2VjdGln
by5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9jcmwuc2VjdGlnby5jb20vU2VjdGln
b1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1haWxDQS5jcmwwgYoGCCsGAQUFBwEB
BH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdvLmNvbS9TZWN0aWdvUlNBQ2xpZW50
QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAjBggrBgEFBQcwAYYXaHR0cDovL29j
c3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5mcmFkZWFkLm9yZzANBgkqhkiG9w0B
AQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQvQ/fzPXmtR9t54rpmI2TfyvcKgOXp
qa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvIlSPrzIB4Z2wyIGQpaPLlYflrrVFK
v9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9ChWFfgSXvrWDZspnU3Gjw/rMHrGnql
Htlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0whpBtXdyDjzBtQTaZJ7zTT/vlehc/
tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9IzCCBhQwggT8oAMCAQICEQDGvhmW
Z0DEAx0oURL6O6l+MA0GCSqGSIb3DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3Jl
YXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0
ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJl
IEVtYWlsIENBMB4XDTIyMDEwNzAwMDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJ
ARYTZHdtdzJAaW5mcmFkZWFkLm9yZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3
GpC2bomUqk+91wLYBzDMcCj5C9m6oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZH
h7htyAkWYVoFsFPrwHounto8xTsySSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT
9YgcBqKCo65pTFmOnR/VVbjJk4K2xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNj
P+qDrh0db7PAjO1D4d5ftfrsf+kdRR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy
2U+eITZ5LLE5s45mX2oPFknWqxBobQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3
BgBEmfsYWlBXO8rVXfvPgLs32VdVNZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/
7auNVRmPB3v5SWEsH8xi4Bez2V9UKxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmd
lFYhAflWKQ03Ufiu8t3iBE3VJbc25oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9ae
lIl6vtbhMA+l0nfrsORMa4kobqQ5C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMB
AAGjggHMMIIByDAfBgNVHSMEGDAWgBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeD
Mcimo0oz8o1R1Nver3ZVpSkwDgYDVR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYw
FAYIKwYBBQUHAwQGCCsGAQUFBwMCMEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYB
BQUHAgEWF2h0dHBzOi8vc2VjdGlnby5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9j
cmwuc2VjdGlnby5jb20vU2VjdGlnb1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1h
aWxDQS5jcmwwgYoGCCsGAQUFBwEBBH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdv
LmNvbS9TZWN0aWdvUlNBQ2xpZW50QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAj
BggrBgEFBQcwAYYXaHR0cDovL29jc3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5m
cmFkZWFkLm9yZzANBgkqhkiG9w0BAQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQv
Q/fzPXmtR9t54rpmI2TfyvcKgOXpqa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvI
lSPrzIB4Z2wyIGQpaPLlYflrrVFKv9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9Ch
WFfgSXvrWDZspnU3Gjw/rMHrGnqlHtlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0w
hpBtXdyDjzBtQTaZJ7zTT/vlehc/tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9
IzGCBMcwggTDAgEBMIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVz
dGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMT
NVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEA
xr4ZlmdAxAMdKFES+jupfjANBglghkgBZQMEAgEFAKCCAeswGAYJKoZIhvcNAQkDMQsGCSqGSIb3
DQEHATAcBgkqhkiG9w0BCQUxDxcNMjMxMDI0MTYxMTA0WjAvBgkqhkiG9w0BCQQxIgQguAewgaTc
Srrqk0vnNZ7U1LIFYjWkgXzrhBnSW86r0I8wgb0GCSsGAQQBgjcQBDGBrzCBrDCBljELMAkGA1UE
BhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEYMBYG
A1UEChMPU2VjdGlnbyBMaW1pdGVkMT4wPAYDVQQDEzVTZWN0aWdvIFJTQSBDbGllbnQgQXV0aGVu
dGljYXRpb24gYW5kIFNlY3VyZSBFbWFpbCBDQQIRAMa+GZZnQMQDHShREvo7qX4wgb8GCyqGSIb3
DQEJEAILMYGvoIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVy
MRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNl
Y3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEAxr4Z
lmdAxAMdKFES+jupfjANBgkqhkiG9w0BAQEFAASCAgCGksgicHDbYHy9s8iOCHtBA7CwCaB+Jcta
HmB/zM38MzpUoJxU6EUBaWQ6zUXw+QaurF3HulNZPOCB0LTWr/49EHslmutmsoXsM8VDUh9Kwx3o
B4xCjD0lZY+3+dT+61piMQToN035vcFLQqL8nbAaFsGoXTxkbZxAb6fgEROKQAQBseVXZQlI5vsB
VDLCYXAZYcu1TlvnZbmrnXfssUo0Lgr0B2gX07dE+C8ojZ/PGhylUtjmEX4wr1iLu7/Bo1MnDCHU
AA2add/c8BXZrd0Gr98DEfM7HsvOJO5UMufAfNdfUOWUU1WnTNccYVd36iRyi3b9qcAWc8PgAwOk
CgLySD5EKlsVVxUsgFbqy7rg/aC8Y6qbqZ9FcRm+8Y8sS/JRDXuztSkx2vjkDw12AK5ud8TT5UTA
9hQCQPwFJfwjFeI/Wk3Lcf/pVAy0Fyrc8bH3rDpi/7+BBtG2SoN2qzMoiVM/GE7LXk3aireMC+E7
UPeE1VSyHbSkWwERxKchJzoVAuM2DYOsGtYyek8WiuTuAqBZrZemvkU1nUDe10lCmOI8oYsOxK8C
SxO+AbTTnMAIPqCVL0AfP/1jJjTf04aJJcTE95f1U23AvdXIjU15YOdEp8fIzYpJxU0e61tr0pao
/yzyAbQj0+ihFWCRhRsZfqXfwQrVD9chbo5eyGgRQgAAAAAAAA==


--=-4Sk+s3sogPBNbhi6YfJd--


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 16:16:59 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 16:16:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622166.969437 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvK5M-0005bn-JG; Tue, 24 Oct 2023 16:16:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622166.969437; Tue, 24 Oct 2023 16:16: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 1qvK5M-0005bg-GS; Tue, 24 Oct 2023 16:16:52 +0000
Received: by outflank-mailman (input) for mailman id 622166;
 Tue, 24 Oct 2023 16: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=+b+W=GG=gmail.com=xadimgnik@srs-se1.protection.inumbo.net>)
 id 1qvK5K-0005ba-Mo
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 16:16:50 +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 bbba0ed1-7288-11ee-9b0e-b553b5be7939;
 Tue, 24 Oct 2023 18:16:48 +0200 (CEST)
Received: by mail-wr1-x430.google.com with SMTP id
 ffacd0b85a97d-32dbbf3c782so3362879f8f.1
 for <xen-devel@lists.xenproject.org>; Tue, 24 Oct 2023 09:16:48 -0700 (PDT)
Received: from [192.168.6.66] (54-240-197-238.amazon.com. [54.240.197.238])
 by smtp.gmail.com with ESMTPSA id
 e16-20020adfe7d0000000b0032db8f7f378sm10249114wrn.71.2023.10.24.09.16.46
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 24 Oct 2023 09:16: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: bbba0ed1-7288-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698164208; x=1698769008; 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=QcongjLqzWg/eaT6MU2YnNd1mAYK2XTOvuPPmT1yxec=;
        b=Qcga8RIkP3GuB84D1jDf/CE8XW6ejr+P655pgEpGv1ZRRhCmEwPJqRPZSP5s3B/ani
         dRkm/SVqBjGIzSCcdwD6NzM6EAAvlhKz7m4MM/DvDJzNs9py7OattuFXn+qJv2Iw+zDV
         UGtCJKYmCcHZBeU7KPHULFdEIbqwX8lyLJKrFUu6X8i/z1fADcnvp1gw1bY3PGRcZrtH
         yTZoVxROAL10VmcY2RCwXtyk1LtdgbH2SIGa4vKFlnjXLWSeUyuF38lNNfNtSscFKBLB
         IEh2TxKe1MwfyWBbzBEU4FF9qUrEkRKEWStw67XfNwGTtQihmCd5A/5TCWqJMPtYQo4a
         FSLg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698164208; x=1698769008;
        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=QcongjLqzWg/eaT6MU2YnNd1mAYK2XTOvuPPmT1yxec=;
        b=H/LSp+Xg2uz7Y2W/I2xMiBSM304FTzLq641NNdifaYTlqZAvW4Qkmxv5kTHluvoEoF
         1ZB1fQXcZqRQdPIDQm0rd/2ELE0uS10jDkIHsRTCjLrILlByv3V18OV70Snm8ZI/XNni
         1LHaLmOE8NBVleE114sqM4wZNQoyOKtWdPRF2VuxV6KF8zpT5nQyIA0lpma66Gz3mCIu
         re6FIqrvUOIII8IonkTaXz7rJLq3wV8AkVQzKsMQNl7jVE6wP8U5SEqiF/bCpx/dLLq/
         ZAJ6Ajdnys7onchP2KVEkMof0z81NLWa/QvISHscvgGOukPOtp+0UeLegEJwgtSX3prY
         MsBw==
X-Gm-Message-State: AOJu0Yxup1fNUQofUwbI8K9TrmFuffyodIrYi/wvjdDNX4fZJroTHcas
	scbJGwXENbY7+VXmQkHCtjg=
X-Google-Smtp-Source: AGHT+IFyYoxCffK4vqNocIJcq/bwK4C7n6go0YOsNpyudOwqbZGUABlQoetDH9qYu8zxPmI97nOj5g==
X-Received: by 2002:adf:8b97:0:b0:32d:a3cb:4059 with SMTP id o23-20020adf8b97000000b0032da3cb4059mr14684996wra.24.1698164207951;
        Tue, 24 Oct 2023 09:16:47 -0700 (PDT)
From: Paul Durrant <xadimgnik@gmail.com>
X-Google-Original-From: Paul Durrant <paul@xen.org>
Message-ID: <2e174934-afca-440b-9edc-a5225d2510ea@xen.org>
Date: Tue, 24 Oct 2023 17:16:46 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Reply-To: paul@xen.org
Subject: Re: [PATCH 2/4] hw/xen: update Xen PV NIC to XenDevice model
Content-Language: en-US
To: David Woodhouse <dwmw2@infradead.org>, qemu-devel@nongnu.org
Cc: "Michael S. Tsirkin" <mst@redhat.com>,
 Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
 Paolo Bonzini <pbonzini@redhat.com>,
 Richard Henderson <richard.henderson@linaro.org>,
 Eduardo Habkost <eduardo@habkost.net>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Anthony Perard <anthony.perard@citrix.com>, Jason Wang
 <jasowang@redhat.com>, xen-devel@lists.xenproject.org
References: <20231017182545.97973-1-dwmw2@infradead.org>
 <20231017182545.97973-3-dwmw2@infradead.org>
 <53e3e3e3-7bdc-4102-b833-bcacd496a31f@xen.org>
 <72ea536333fc9942f3c39acee571fc8f5ad98ba6.camel@infradead.org>
Organization: Xen Project
In-Reply-To: <72ea536333fc9942f3c39acee571fc8f5ad98ba6.camel@infradead.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 24/10/2023 16:17, David Woodhouse wrote:
[snip]
>>
>> I don't think that's really a valid state for a network frontend. Linux
>> netback just ignores it.
> 
> Must we? I was thinking of making the ->frontend_changed() methods
> optional and allowing backends to just provide ->connect() and
> ->disconnect() methods instead if they wanted to. Because we have three
> identical ->frontend_changed() methods now...
> 

Now maybe... Not sure things will look so common when other backends are 
converted. I'd prefer to maintain fidelity with Linux xen-netback as it 
is generally considered to be the canonical implementation.

   Paul



From xen-devel-bounces@lists.xenproject.org Tue Oct 24 16:22:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 16:22:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622390.969447 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvKB5-0000el-9I; Tue, 24 Oct 2023 16:22:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622390.969447; Tue, 24 Oct 2023 16: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 1qvKB5-0000ee-6h; Tue, 24 Oct 2023 16:22:47 +0000
Received: by outflank-mailman (input) for mailman id 622390;
 Tue, 24 Oct 2023 16:22: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=+b+W=GG=gmail.com=xadimgnik@srs-se1.protection.inumbo.net>)
 id 1qvKB3-0000eY-PX
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 16:22:45 +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 90042a23-7289-11ee-98d5-6d05b1d4d9a1;
 Tue, 24 Oct 2023 18:22:44 +0200 (CEST)
Received: by mail-wr1-x436.google.com with SMTP id
 ffacd0b85a97d-32003aae100so3375727f8f.0
 for <xen-devel@lists.xenproject.org>; Tue, 24 Oct 2023 09:22:44 -0700 (PDT)
Received: from [192.168.6.66] (54-240-197-230.amazon.com. [54.240.197.230])
 by smtp.gmail.com with ESMTPSA id
 h12-20020adff18c000000b0032d402f816csm10104046wro.98.2023.10.24.09.22.42
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 24 Oct 2023 09:22: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: 90042a23-7289-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698164564; x=1698769364; 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=e3Lw885OKwVMAKJ+lcANwbqiLUJvnaLF4rMzyVhxCiE=;
        b=UqLWlsHZAJ8d+CBmGRbOcLAF8ZNVGvGcRWuXhyjXfjssyIVLlR5I9XqtUqcT8TMs8n
         UK+TsXfctNOBo/WQSKXatQN7U+HRGOkaPv3matGYsDSLXVs10EPVSRb+KUUCoJ6pyTLC
         4wfT9sSvKMdkz9TRh+9ykaoRE0CVSazAWEyQVnvfKmrdvPFy1RWc3KgZXLYRBOp8XUrm
         rh1Z90KG/XjCytZpae8gFWIzcxALGEi2g8qtMX21s0hppocfRi+96MAURD2CloR5cujn
         /1cTET7xzf3lG0BnRRp/J0cZ1JIvPyg6+0madqGX5Nq2kYtMcndjLeQmYIUogXVdVt8g
         jx0Q==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698164564; x=1698769364;
        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=e3Lw885OKwVMAKJ+lcANwbqiLUJvnaLF4rMzyVhxCiE=;
        b=g0sFEJm+F0MrLU1XVQTEouBkWetD14G9S0lTSTDV1oHaEs/R2skLDMCnperBAkcLYW
         TSNxcHUIVFcs/mQt6xsCfbUvzFbXHkcN5sSq0MN1LMXreRXVmjmZZRBA8tdc+XamllEU
         tRBxY0YZohAUnnpcYtNk/yHShZnIG9wZxQY1oc812aZNKBTrxNS9vS0BRqDd9RM9WP1m
         80485uyDonid7vcRm0UBsv6Mz1k+9X2riMNYHR7ZSdzvS1/WL2CR51o/2/Eo9GZLf0h6
         HtjZGbg35bARUvsipCiTGhhkQBA5uvChtH6CUORMVBpi8BP2YD5dghGeVS6HTTEpwPIl
         owwg==
X-Gm-Message-State: AOJu0Yw6xAmUgZnIVUPoGd/PUb4smFGmxLit7s71RPVIue0gdp7MPVg2
	Tqw6k1lDmsjT82/bKNYcipk=
X-Google-Smtp-Source: AGHT+IGE5clc2rOnE6leeciZfVRiFGqwOxcrDHe1tg4zz2ecPacv7kXaqp1axxGRcGZHMciB9vvCKw==
X-Received: by 2002:adf:b1d1:0:b0:32d:c755:d73d with SMTP id r17-20020adfb1d1000000b0032dc755d73dmr14284793wra.18.1698164564123;
        Tue, 24 Oct 2023 09:22:44 -0700 (PDT)
From: Paul Durrant <xadimgnik@gmail.com>
X-Google-Original-From: Paul Durrant <paul@xen.org>
Message-ID: <ab2aabe5-b3c3-43f5-812e-bce98d2e59ae@xen.org>
Date: Tue, 24 Oct 2023 17:22:41 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Reply-To: paul@xen.org
Subject: Re: [PATCH v2 16/24] hw/xen: handle soft reset for primary console
Content-Language: en-US
To: David Woodhouse <dwmw2@infradead.org>, qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>, Hanna Reitz <hreitz@redhat.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Anthony Perard <anthony.perard@citrix.com>,
 =?UTF-8?Q?Marc-Andr=C3=A9_Lureau?= <marcandre.lureau@redhat.com>,
 Paolo Bonzini <pbonzini@redhat.com>,
 Richard Henderson <richard.henderson@linaro.org>,
 Eduardo Habkost <eduardo@habkost.net>, "Michael S. Tsirkin"
 <mst@redhat.com>, Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
 Jason Wang <jasowang@redhat.com>, Marcelo Tosatti <mtosatti@redhat.com>,
 Cleber Rosa <crosa@redhat.com>, =?UTF-8?Q?Philippe_Mathieu-Daud=C3=A9?=
 <philmd@linaro.org>, Wainer dos Santos Moschetta <wainersm@redhat.com>,
 Beraldo Leal <bleal@redhat.com>, qemu-block@nongnu.org,
 xen-devel@lists.xenproject.org, kvm@vger.kernel.org,
 Bernhard Beschow <shentey@gmail.com>, Joel Upham <jupham125@gmail.com>
References: <20231019154020.99080-1-dwmw2@infradead.org>
 <20231019154020.99080-17-dwmw2@infradead.org>
 <8ba01df3-6189-4e1e-a70f-37a2d4dd21ed@xen.org>
 <3124d1d6e9af139a3c7b6dbe2b73a82914d3f559.camel@infradead.org>
Organization: Xen Project
In-Reply-To: <3124d1d6e9af139a3c7b6dbe2b73a82914d3f559.camel@infradead.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 24/10/2023 16:48, David Woodhouse wrote:
> On Tue, 2023-10-24 at 16:44 +0100, Paul Durrant wrote:
>> On 19/10/2023 16:40, David Woodhouse wrote:
>>> From: David Woodhouse <dwmw@amazon.co.uk>
>>>
>>> On soft reset, the prinary console event channel needs to be rebound to
>>> the backend port (in the xen-console driver). We could put that into the
>>> xen-console driver itself, but it's slightly less ugly to keep it within
>>> the KVM/Xen code, by stashing the backend port# on event channel reset
>>> and then rebinding in the primary console reset when it has to recreate
>>> the guest port anyway.
>>
>> Does Xen re-bind the primary console on EVTCHNOP_reset? That's news to
>> me. I go check.
> 
> I spent an unhapp hour trying to work out how Xen actually does any of
> this :)
> 
> In the short term I'm more interested in having soft reset work, than
> an explicit EVTCHNOP_reset. And I can't work out *how*, but we do seem
> to have console again after a kexec in real Xen.

*Soft* reset may do it, but not the EVTCHNOP_reset hypercall itself, 
because there's a bunch of impenetrable toolstack magic involved the 
former. Perhaps you could just push the re-bind code up a layer into
kvm_xen_soft_reset().

   Paul


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 16:25:25 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 16:25:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622484.969458 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvKDb-0002cw-Mo; Tue, 24 Oct 2023 16:25:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622484.969458; Tue, 24 Oct 2023 16: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 1qvKDb-0002cp-JR; Tue, 24 Oct 2023 16:25:23 +0000
Received: by outflank-mailman (input) for mailman id 622484;
 Tue, 24 Oct 2023 16: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=+b+W=GG=gmail.com=xadimgnik@srs-se1.protection.inumbo.net>)
 id 1qvKDa-0002ch-Re
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 16:25:22 +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 edacf137-7289-11ee-98d5-6d05b1d4d9a1;
 Tue, 24 Oct 2023 18:25:22 +0200 (CEST)
Received: by mail-wm1-x32f.google.com with SMTP id
 5b1f17b1804b1-40859c466efso26142045e9.3
 for <xen-devel@lists.xenproject.org>; Tue, 24 Oct 2023 09:25:22 -0700 (PDT)
Received: from [192.168.6.66] (54-240-197-238.amazon.com. [54.240.197.238])
 by smtp.gmail.com with ESMTPSA id
 p12-20020a05600c418c00b0040773c69fc0sm16842887wmh.11.2023.10.24.09.25.19
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 24 Oct 2023 09:25: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: edacf137-7289-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698164721; x=1698769521; 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=UQsq2LWk3bVW9FNqtR4uLNXJWBJH5YdmWftR29dvZwY=;
        b=RFHLHuEqoWNp7pvwGGRMokes8Zkh28rJrwfZy5iNQi+y2TORmbVZUqy/GkkHr+yrcx
         zOswDRci+i/DYJw0PfbYRy5rMUhUh4mf3PFnnACwKoAJN66QGmQLkqxMXGhkj7pvSkwH
         j7ai3mJfP9OyrBbUzDfJHjGKpuWh9MFXJL3CFZwt6iSaLyYnZvUllz4LgiRcQ6IH2fKJ
         5APAMiBrBqf5SRfWrZqlHCp4C+uaatwQ9/XrdCdTBtEMdjP57Ko3X706nOvtsWMGWni9
         /HXB4PRRz5725BNm+L8vqoztvqago/UWm4qWLZU/pjdgOmYnVmkEJG2uLC0ZLBdNaC4R
         A4bQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698164721; x=1698769521;
        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=UQsq2LWk3bVW9FNqtR4uLNXJWBJH5YdmWftR29dvZwY=;
        b=TgKJWnHEot2gDS0nq+py6JXm3zN+x19mzF3N9c1kmlNYMXbxO6Qx6SEblmUK9+4oxq
         /90mzXqKwpTYBjEZvkuQZpsxnIP4ZriOaOypyRiKpBKzJsFW//UhDQ5nQl4JuUY/p3wG
         uFJZMZkNfZQZ4kHGcJqQKUP1q/mzmeQauIvuikUAFCd6D80vfGHLn0CagVHvZ5kuFIfv
         Ll3liInVp1SvN7lg6Ng6RljBOMfE/SphWrzcGOWnCn0wvOFAxnfwklX3RrLHKLMph/77
         E8wJucSTmiGxCAd6oD9HT7tQLL9toX2P3YfV0AzjMU+ZB0kOJiaDCfQ4l0y4VVxkA6J9
         z8Mw==
X-Gm-Message-State: AOJu0YwoZIbFi53bpV8I6m+DfQkuCt5LLhRPgEJcKaHphCfccziz8WTI
	bHmvwUP2AFva2eGOY2Stt/k=
X-Google-Smtp-Source: AGHT+IEyWeztiwQ8cM58Q3Udtb/rgzHp2VAypkAcc4XZaR7o8nmAoBYxpyNYOMgRGMHbHOA9ZtR7WQ==
X-Received: by 2002:a1c:790a:0:b0:406:5308:cfeb with SMTP id l10-20020a1c790a000000b004065308cfebmr9764626wme.11.1698164721279;
        Tue, 24 Oct 2023 09:25:21 -0700 (PDT)
From: Paul Durrant <xadimgnik@gmail.com>
X-Google-Original-From: Paul Durrant <paul@xen.org>
Message-ID: <19fc2701-4cd8-4a14-9d45-bfaea37ed2d6@xen.org>
Date: Tue, 24 Oct 2023 17:25:19 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Reply-To: paul@xen.org
Subject: Re: [PATCH 12/12] hw/xen: add support for Xen primary console in
 emulated mode
Content-Language: en-US
To: David Woodhouse <dwmw2@infradead.org>, qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>, Hanna Reitz <hreitz@redhat.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Anthony Perard <anthony.perard@citrix.com>,
 =?UTF-8?Q?Marc-Andr=C3=A9_Lureau?= <marcandre.lureau@redhat.com>,
 Paolo Bonzini <pbonzini@redhat.com>, "Michael S. Tsirkin" <mst@redhat.com>,
 Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
 Richard Henderson <richard.henderson@linaro.org>,
 Eduardo Habkost <eduardo@habkost.net>, Marcelo Tosatti
 <mtosatti@redhat.com>, qemu-block@nongnu.org,
 xen-devel@lists.xenproject.org, kvm@vger.kernel.org
References: <20231016151909.22133-1-dwmw2@infradead.org>
 <20231016151909.22133-13-dwmw2@infradead.org>
 <c18439ca-c9ae-4567-bbcf-dffe6f7b72e3@xen.org>
 <3acd078bba2d824f836b20a270c780dc2d031c43.camel@infradead.org>
 <3f22903b-30f0-40f2-8624-b681d9c7e05d@xen.org>
 <42b005d7c03d5b0d47a16c4e025d8c3ec7289e0f.camel@infradead.org>
Organization: Xen Project
In-Reply-To: <42b005d7c03d5b0d47a16c4e025d8c3ec7289e0f.camel@infradead.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 24/10/2023 16:49, David Woodhouse wrote:
> On Tue, 2023-10-24 at 16:39 +0100, Paul Durrant wrote:
>> On 24/10/2023 16:37, David Woodhouse wrote:
>>> On Tue, 2023-10-24 at 15:20 +0100, Paul Durrant wrote:
>>>> On 16/10/2023 16:19, David Woodhouse wrote:
>>>>> From: David Woodhouse <dwmw@amazon.co.uk>
>>>>>
>>>>> The primary console is special because the toolstack maps a page at a
>>>>> fixed GFN and also allocates the guest-side event channel. Add support
>>>>> for that in emulated mode, so that we can have a primary console.
>>>>>
>>>>> Add a *very* rudimentary stub of foriegnmem ops for emulated mode, which
>>>>> supports literally nothing except a single-page mapping of the console
>>>>> page. This might as well have been a hack in the xen_console driver, but
>>>>> this way at least the special-casing is kept within the Xen emulation
>>>>> code, and it gives us a hook for a more complete implementation if/when
>>>>> we ever do need one.
>>>>>
>>>> Why can't you map the console page via the grant table like the xenstore
>>>> page?
>>>
>>> I suppose we could, but I didn't really want the generic xen-console
>>> device code having any more of a special case for 'Xen emulation' than
>>> it does already by having to call xen_primary_console_create().
>>>
>>
>> But doesn't is save you the whole foreignmem thing? You can use the
>> grant table for primary and secondary consoles.
> 
> Yes. And I could leave the existing foreignmem thing just for the case
> of primary console under true Xen. It's probably not that awful a
> special case, in the end.
> 
> Then again, I was surprised I didn't *already* have a foreignmem ops
> for the emulated case, and we're probably going to want to continue
> fleshing it out later, so I don't really mind adding it.
> 

True. We'll need it for some of the other more fun protocols like vkbd 
or fb. Still, I think it'd be nicer to align the xenstore and primary 
console code to look similar and punt the work until then :-)

   Paul


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 16:35:12 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 16:35:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622529.969468 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvKN0-0005sS-Gw; Tue, 24 Oct 2023 16:35:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622529.969468; Tue, 24 Oct 2023 16:35: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 1qvKN0-0005sL-EC; Tue, 24 Oct 2023 16:35:06 +0000
Received: by outflank-mailman (input) for mailman id 622529;
 Tue, 24 Oct 2023 16:35: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=jXWl=GG=casper.srs.infradead.org=BATV+e2898748ca55db067849+7366+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qvKMy-0005sF-9R
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 16:35:04 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 480fe574-728b-11ee-98d5-6d05b1d4d9a1;
 Tue, 24 Oct 2023 18:35:03 +0200 (CEST)
Received: from [2001:8b0:10b:5:758e:a1c4:bc7:e7a7]
 (helo=u3832b3a9db3152.ant.amazon.com)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qvKMu-003Xj7-1T; Tue, 24 Oct 2023 16: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: 480fe574-728b-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=MIME-Version:Content-Type:References:
	In-Reply-To:Date:Cc:To:From:Subject:Message-ID:Sender:Reply-To:
	Content-Transfer-Encoding:Content-ID:Content-Description;
	bh=a60RMTnb4djx5eflnMuycThd8FavegnLDZss3+MFUJc=; b=i6MjXydazWpkGTJffIYffzbLWv
	qcEv09Lqge6693zPyF/jTxoSRINN5FFNhC7ANynKPza358yYf8wClj2yqeL6tklJrf6grke5LZYmz
	mtnSz8B/wT4r5VLsgVFR6O1WK4N12txBBEwr7XSwF+EFAc6BDMoSoz0KZ/m5hH3HkBeio5TBAw7X4
	2wS9Pm/TR+j9o0a4WoeNEI3S2mdV3EV1ktsqXY4ZraZi/UJdi7KyJL499HWiIWJn86VUvWcQDIxIX
	mYCFMqyTJDMX7UDn3fsY6yORl6I/Nkk/Wtt7+88mVsKEPw2uYzJ3x65SMsEGIDN7HK8s3yovQmXg/
	f/Ss9BHQ==;
Message-ID: <efdefcc11e2bd8c0f7e6e914dc9c54ffd65fe733.camel@infradead.org>
Subject: Re: [PATCH 12/12] hw/xen: add support for Xen primary console in
 emulated mode
From: David Woodhouse <dwmw2@infradead.org>
To: paul@xen.org, qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>, Hanna Reitz <hreitz@redhat.com>, Stefano
 Stabellini <sstabellini@kernel.org>, Anthony Perard
 <anthony.perard@citrix.com>,  =?ISO-8859-1?Q?Marc-Andr=E9?= Lureau
 <marcandre.lureau@redhat.com>, Paolo Bonzini <pbonzini@redhat.com>,
 "Michael S. Tsirkin" <mst@redhat.com>, Marcel Apfelbaum
 <marcel.apfelbaum@gmail.com>, Richard Henderson
 <richard.henderson@linaro.org>, Eduardo Habkost <eduardo@habkost.net>, 
 Marcelo Tosatti <mtosatti@redhat.com>, qemu-block@nongnu.org,
 xen-devel@lists.xenproject.org, kvm@vger.kernel.org
Date: Tue, 24 Oct 2023 17:34:59 +0100
In-Reply-To: <19fc2701-4cd8-4a14-9d45-bfaea37ed2d6@xen.org>
References: <20231016151909.22133-1-dwmw2@infradead.org>
	 <20231016151909.22133-13-dwmw2@infradead.org>
	 <c18439ca-c9ae-4567-bbcf-dffe6f7b72e3@xen.org>
	 <3acd078bba2d824f836b20a270c780dc2d031c43.camel@infradead.org>
	 <3f22903b-30f0-40f2-8624-b681d9c7e05d@xen.org>
	 <42b005d7c03d5b0d47a16c4e025d8c3ec7289e0f.camel@infradead.org>
	 <19fc2701-4cd8-4a14-9d45-bfaea37ed2d6@xen.org>
Content-Type: multipart/signed; micalg="sha-256"; protocol="application/pkcs7-signature";
	boundary="=-0bFV5S8jH3FK9aht74Ff"
User-Agent: Evolution 3.44.4-0ubuntu2 
MIME-Version: 1.0
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html


--=-0bFV5S8jH3FK9aht74Ff
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Tue, 2023-10-24 at 17:25 +0100, Paul Durrant wrote:
> On 24/10/2023 16:49, David Woodhouse wrote:
> > On Tue, 2023-10-24 at 16:39 +0100, Paul Durrant wrote:
> > > On 24/10/2023 16:37, David Woodhouse wrote:
> > > > On Tue, 2023-10-24 at 15:20 +0100, Paul Durrant wrote:
> > > > > On 16/10/2023 16:19, David Woodhouse wrote:
> > > > > > From: David Woodhouse <dwmw@amazon.co.uk>
> > > > > >=20
> > > > > > The primary console is special because the toolstack maps a pag=
e at a
> > > > > > fixed GFN and also allocates the guest-side event channel. Add =
support
> > > > > > for that in emulated mode, so that we can have a primary consol=
e.
> > > > > >=20
> > > > > > Add a *very* rudimentary stub of foriegnmem ops for emulated mo=
de, which
> > > > > > supports literally nothing except a single-page mapping of the =
console
> > > > > > page. This might as well have been a hack in the xen_console dr=
iver, but
> > > > > > this way at least the special-casing is kept within the Xen emu=
lation
> > > > > > code, and it gives us a hook for a more complete implementation=
 if/when
> > > > > > we ever do need one.
> > > > > >=20
> > > > > Why can't you map the console page via the grant table like the x=
enstore
> > > > > page?
> > > >=20
> > > > I suppose we could, but I didn't really want the generic xen-consol=
e
> > > > device code having any more of a special case for 'Xen emulation' t=
han
> > > > it does already by having to call xen_primary_console_create().
> > > >=20
> > >=20
> > > But doesn't is save you the whole foreignmem thing? You can use the
> > > grant table for primary and secondary consoles.
> >=20
> > Yes. And I could leave the existing foreignmem thing just for the case
> > of primary console under true Xen. It's probably not that awful a
> > special case, in the end.
> >=20
> > Then again, I was surprised I didn't *already* have a foreignmem ops
> > for the emulated case, and we're probably going to want to continue
> > fleshing it out later, so I don't really mind adding it.
> >=20
>=20
> True. We'll need it for some of the other more fun protocols like vkbd=
=20
> or fb. Still, I think it'd be nicer to align the xenstore and primary
> console code to look similar and punt the work until then :-)

I don't think it ends up looking like xenstore either way, does it?
Xenstore is special because it gets to use the original pointer to its
own page.

I don't think I want to hack the xen_console code to explicitly call a
xen_console_give_me_your_page() function. If not foreignmem, I think
you were suggesting that we actually call the grant mapping code to get
a pointer to the underlying page, right?=20

I could kind of live with that... except that Xen has this ugly
convention that the "ring-ref" frontend node for the primary console
actually has the *MFN* not a grant ref. Which I don't understand since
the toolstack *does* populate the grant table for it (just as it does
for the xenstore page).=C2=A0But we'd have to add a special case exception
to that special case, so that in the emu case it's an actual grant ref
again. I think I prefer just having a stub of foreignmem, TBH.

(I didn't yet manage to get Xen to actually create a primary console of
type iomem, FWIW)



--=-0bFV5S8jH3FK9aht74Ff
Content-Type: application/pkcs7-signature; name="smime.p7s"
Content-Disposition: attachment; filename="smime.p7s"
Content-Transfer-Encoding: base64

MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgEFADCABgkqhkiG9w0BBwEAAKCCEkQw
ggYQMIID+KADAgECAhBNlCwQ1DvglAnFgS06KwZPMA0GCSqGSIb3DQEBDAUAMIGIMQswCQYDVQQG
EwJVUzETMBEGA1UECBMKTmV3IEplcnNleTEUMBIGA1UEBxMLSmVyc2V5IENpdHkxHjAcBgNVBAoT
FVRoZSBVU0VSVFJVU1QgTmV0d29yazEuMCwGA1UEAxMlVVNFUlRydXN0IFJTQSBDZXJ0aWZpY2F0
aW9uIEF1dGhvcml0eTAeFw0xODExMDIwMDAwMDBaFw0zMDEyMzEyMzU5NTlaMIGWMQswCQYDVQQG
EwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYD
VQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50
aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC
AQEAyjztlApB/975Rrno1jvm2pK/KxBOqhq8gr2+JhwpKirSzZxQgT9tlC7zl6hn1fXjSo5MqXUf
ItMltrMaXqcESJuK8dtK56NCSrq4iDKaKq9NxOXFmqXX2zN8HHGjQ2b2Xv0v1L5Nk1MQPKA19xeW
QcpGEGFUUd0kN+oHox+L9aV1rjfNiCj3bJk6kJaOPabPi2503nn/ITX5e8WfPnGw4VuZ79Khj1YB
rf24k5Ee1sLTHsLtpiK9OjG4iQRBdq6Z/TlVx/hGAez5h36bBJMxqdHLpdwIUkTqT8se3ed0PewD
ch/8kHPo5fZl5u1B0ecpq/sDN/5sCG52Ds+QU5O5EwIDAQABo4IBZDCCAWAwHwYDVR0jBBgwFoAU
U3m/WqorSs9UgOHYm8Cd8rIDZsswHQYDVR0OBBYEFAnA8vwL2pTbX/4r36iZQs/J4K0AMA4GA1Ud
DwEB/wQEAwIBhjASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEF
BQcDBDARBgNVHSAECjAIMAYGBFUdIAAwUAYDVR0fBEkwRzBFoEOgQYY/aHR0cDovL2NybC51c2Vy
dHJ1c3QuY29tL1VTRVJUcnVzdFJTQUNlcnRpZmljYXRpb25BdXRob3JpdHkuY3JsMHYGCCsGAQUF
BwEBBGowaDA/BggrBgEFBQcwAoYzaHR0cDovL2NydC51c2VydHJ1c3QuY29tL1VTRVJUcnVzdFJT
QUFkZFRydXN0Q0EuY3J0MCUGCCsGAQUFBzABhhlodHRwOi8vb2NzcC51c2VydHJ1c3QuY29tMA0G
CSqGSIb3DQEBDAUAA4ICAQBBRHUAqznCFfXejpVtMnFojADdF9d6HBA4kMjjsb0XMZHztuOCtKF+
xswhh2GqkW5JQrM8zVlU+A2VP72Ky2nlRA1GwmIPgou74TZ/XTarHG8zdMSgaDrkVYzz1g3nIVO9
IHk96VwsacIvBF8JfqIs+8aWH2PfSUrNxP6Ys7U0sZYx4rXD6+cqFq/ZW5BUfClN/rhk2ddQXyn7
kkmka2RQb9d90nmNHdgKrwfQ49mQ2hWQNDkJJIXwKjYA6VUR/fZUFeCUisdDe/0ABLTI+jheXUV1
eoYV7lNwNBKpeHdNuO6Aacb533JlfeUHxvBz9OfYWUiXu09sMAviM11Q0DuMZ5760CdO2VnpsXP4
KxaYIhvqPqUMWqRdWyn7crItNkZeroXaecG03i3mM7dkiPaCkgocBg0EBYsbZDZ8bsG3a08LwEsL
1Ygz3SBsyECa0waq4hOf/Z85F2w2ZpXfP+w8q4ifwO90SGZZV+HR/Jh6rEaVPDRF/CEGVqR1hiuQ
OZ1YL5ezMTX0ZSLwrymUE0pwi/KDaiYB15uswgeIAcA6JzPFf9pLkAFFWs1QNyN++niFhsM47qod
x/PL+5jR87myx5uYdBEQkkDc+lKB1Wct6ucXqm2EmsaQ0M95QjTmy+rDWjkDYdw3Ms6mSWE3Bn7i
5ZgtwCLXgAIe5W8mybM2JzCCBhQwggT8oAMCAQICEQDGvhmWZ0DEAx0oURL6O6l+MA0GCSqGSIb3
DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYD
VQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28g
UlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMB4XDTIyMDEwNzAw
MDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJARYTZHdtdzJAaW5mcmFkZWFkLm9y
ZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3GpC2bomUqk+91wLYBzDMcCj5C9m6
oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZHh7htyAkWYVoFsFPrwHounto8xTsy
SSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT9YgcBqKCo65pTFmOnR/VVbjJk4K2
xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNjP+qDrh0db7PAjO1D4d5ftfrsf+kd
RR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy2U+eITZ5LLE5s45mX2oPFknWqxBo
bQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3BgBEmfsYWlBXO8rVXfvPgLs32VdV
NZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/7auNVRmPB3v5SWEsH8xi4Bez2V9U
KxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmdlFYhAflWKQ03Ufiu8t3iBE3VJbc2
5oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9aelIl6vtbhMA+l0nfrsORMa4kobqQ5
C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMBAAGjggHMMIIByDAfBgNVHSMEGDAW
gBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeDMcimo0oz8o1R1Nver3ZVpSkwDgYD
VR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYwFAYIKwYBBQUHAwQGCCsGAQUFBwMC
MEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYBBQUHAgEWF2h0dHBzOi8vc2VjdGln
by5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9jcmwuc2VjdGlnby5jb20vU2VjdGln
b1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1haWxDQS5jcmwwgYoGCCsGAQUFBwEB
BH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdvLmNvbS9TZWN0aWdvUlNBQ2xpZW50
QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAjBggrBgEFBQcwAYYXaHR0cDovL29j
c3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5mcmFkZWFkLm9yZzANBgkqhkiG9w0B
AQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQvQ/fzPXmtR9t54rpmI2TfyvcKgOXp
qa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvIlSPrzIB4Z2wyIGQpaPLlYflrrVFK
v9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9ChWFfgSXvrWDZspnU3Gjw/rMHrGnql
Htlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0whpBtXdyDjzBtQTaZJ7zTT/vlehc/
tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9IzCCBhQwggT8oAMCAQICEQDGvhmW
Z0DEAx0oURL6O6l+MA0GCSqGSIb3DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3Jl
YXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0
ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJl
IEVtYWlsIENBMB4XDTIyMDEwNzAwMDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJ
ARYTZHdtdzJAaW5mcmFkZWFkLm9yZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3
GpC2bomUqk+91wLYBzDMcCj5C9m6oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZH
h7htyAkWYVoFsFPrwHounto8xTsySSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT
9YgcBqKCo65pTFmOnR/VVbjJk4K2xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNj
P+qDrh0db7PAjO1D4d5ftfrsf+kdRR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy
2U+eITZ5LLE5s45mX2oPFknWqxBobQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3
BgBEmfsYWlBXO8rVXfvPgLs32VdVNZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/
7auNVRmPB3v5SWEsH8xi4Bez2V9UKxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmd
lFYhAflWKQ03Ufiu8t3iBE3VJbc25oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9ae
lIl6vtbhMA+l0nfrsORMa4kobqQ5C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMB
AAGjggHMMIIByDAfBgNVHSMEGDAWgBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeD
Mcimo0oz8o1R1Nver3ZVpSkwDgYDVR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYw
FAYIKwYBBQUHAwQGCCsGAQUFBwMCMEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYB
BQUHAgEWF2h0dHBzOi8vc2VjdGlnby5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9j
cmwuc2VjdGlnby5jb20vU2VjdGlnb1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1h
aWxDQS5jcmwwgYoGCCsGAQUFBwEBBH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdv
LmNvbS9TZWN0aWdvUlNBQ2xpZW50QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAj
BggrBgEFBQcwAYYXaHR0cDovL29jc3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5m
cmFkZWFkLm9yZzANBgkqhkiG9w0BAQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQv
Q/fzPXmtR9t54rpmI2TfyvcKgOXpqa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvI
lSPrzIB4Z2wyIGQpaPLlYflrrVFKv9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9Ch
WFfgSXvrWDZspnU3Gjw/rMHrGnqlHtlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0w
hpBtXdyDjzBtQTaZJ7zTT/vlehc/tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9
IzGCBMcwggTDAgEBMIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVz
dGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMT
NVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEA
xr4ZlmdAxAMdKFES+jupfjANBglghkgBZQMEAgEFAKCCAeswGAYJKoZIhvcNAQkDMQsGCSqGSIb3
DQEHATAcBgkqhkiG9w0BCQUxDxcNMjMxMDI0MTYzNDU5WjAvBgkqhkiG9w0BCQQxIgQg5qe3oomJ
2HdSVRXn7BAnH0gV/bYKYhg2MIsHgzlIGn8wgb0GCSsGAQQBgjcQBDGBrzCBrDCBljELMAkGA1UE
BhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEYMBYG
A1UEChMPU2VjdGlnbyBMaW1pdGVkMT4wPAYDVQQDEzVTZWN0aWdvIFJTQSBDbGllbnQgQXV0aGVu
dGljYXRpb24gYW5kIFNlY3VyZSBFbWFpbCBDQQIRAMa+GZZnQMQDHShREvo7qX4wgb8GCyqGSIb3
DQEJEAILMYGvoIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVy
MRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNl
Y3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEAxr4Z
lmdAxAMdKFES+jupfjANBgkqhkiG9w0BAQEFAASCAgCe81ADilBkye9DFQ7Wjqw1m1ejO6ZbKzvk
zxiktyoZomzIasTLuNwal8OX9kvLGsKQSB+RNW30iNI5T0UUL90Hbf3aqEhY1vHAmDkAQ4MkKZvd
TcVryxlDyHiJ0RoFbGXCOZVfCjQBYbLB1MsAGnoDZL4j2Rh5BhDrrtr5DD+7AmYrTqF1TCNo9LHt
BkZxsQieLwkjAUpqRNeCJsNHRE5y0CX1sYyAPGSGo6IkyvIyXViiv8bGHRjnroaAtTB9Uiy4mQGT
8E+UhR1db5uByqSyf6X3FyKEcKK+j1MWLbV9UcV+qdpmwfc/RKQvvllnoGzJJd/lhgVG9We7mIiE
3cigzIyYdlit49lVz1bf1RfLoKZ/b+bDjT86fVuADm+vn5ydg77yMzfhuQ37DUA15Rw0eyaoc4f5
GrQ62UefcOwuUbmfOp+zGQ1tKJap6M01HYjW73YqJCO4SwkvrEQVA4PUGAi4KVNoUhhoKkVceTEz
woBzPl4OVcnttNVWC/wKhbPSez6dFngYIFohGqyuTcetbI/R0vlMrapA/kzu8HdAT+qbP2MQo9Je
N+1tvP7h/CtCui19uneLWT7Lq9oyYaWNN2ATLZFCtJBHXToQj6FZ2vcutURKRK2x7NDjr+xNUepa
UWbhUB+3vEsN/duBzo5vxYfryjfE0V+Ajhj6TAib+QAAAAAAAA==


--=-0bFV5S8jH3FK9aht74Ff--


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 17:09:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 17:09:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622534.969477 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvKuT-00068J-4G; Tue, 24 Oct 2023 17:09:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622534.969477; Tue, 24 Oct 2023 17:09: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 1qvKuT-00068C-1H; Tue, 24 Oct 2023 17:09:41 +0000
Received: by outflank-mailman (input) for mailman id 622534;
 Tue, 24 Oct 2023 17:09: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 1qvKuR-00066p-UN; Tue, 24 Oct 2023 17:09: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 1qvKuR-0006pA-FG; Tue, 24 Oct 2023 17:09: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 1qvKuQ-0004MS-Vt; Tue, 24 Oct 2023 17:09:39 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qvKuQ-0004Dg-VP; Tue, 24 Oct 2023 17:09: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=X87W3Zqk2VtzNp8E1kMb0SobvxEuGCLBud3b/xntBcE=; b=OcS14XnpFWfnqy49sTGp+ZMfSJ
	cx0vObmYBcbUmlCsM4XeNNb7hXWL9o6SI/UovyUaiuO2xKOmbfI5b6pRPzwJfXvGrNalVXqEIx1Hv
	T8Es5oUab/9eEJ3A2bECsCQzSgnwilNpQnU0IwqyjClgD3He4IaLi86G0+ssJixgLC8I=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183511-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 183511: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=e17e58e81b356a347102ee6d780bf699544e9b81
X-Osstest-Versions-That:
    ovmf=fb044b7fe893a4545995bfe2701fd38e593355d9
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 24 Oct 2023 17:09:38 +0000

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

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

Last test of basis   183506  2023-10-24 08:12:27 Z    0 days
Testing same since   183511  2023-10-24 12:10:45 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Jose Marinho <jose.marinho@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
   fb044b7fe8..e17e58e81b  e17e58e81b356a347102ee6d780bf699544e9b81 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 18:19:47 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 18:19:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622547.969488 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvM05-0003if-8x; Tue, 24 Oct 2023 18:19:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622547.969488; Tue, 24 Oct 2023 18:19: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 1qvM05-0003iY-5l; Tue, 24 Oct 2023 18:19:33 +0000
Received: by outflank-mailman (input) for mailman id 622547;
 Tue, 24 Oct 2023 18:19:31 +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 1qvM03-0003iS-U3
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 18:19:31 +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 1qvM00-0008T2-BG; Tue, 24 Oct 2023 18:19: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 1qvM00-00006Z-41; Tue, 24 Oct 2023 18: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>
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=B/kp2Oez8y/WqJ85FZFaAHtPZ1uYy30EDf7lCL+6ue8=; b=FvhA11Qwhcc0kG6iHdVkUoKyMx
	DTSHQyI8cLApSjJlHmhfdKY3TenpJqkNqjGsDqXt34fJzFUQNHCs3ZLUlMbE9AJ7Ch0qPfHYq/qdh
	+j5WY0bOVUJ1ipAWsUBk1SEYQxAM2FwFqh5HhvdO406rWl59kJ88dGqgSE7OKJZYNg0M=;
Message-ID: <2ccea28c-df6b-46ca-9158-ff47d13bfd82@xen.org>
Date: Tue, 24 Oct 2023 19:19:25 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v3 3/4] CHANGELOG.md: Set 4.18 release date and tag
Content-Language: en-GB
To: Henry Wang <Henry.Wang@arm.com>, xen-devel@lists.xenproject.org
Cc: Community Manager <community.manager@xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.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>, =?UTF-8?Q?Roger_Pau_Monn=C3=A9?=
 <roger.pau@citrix.com>, Wei Chen <wei.chen@arm.com>
References: <20231023092123.1756426-1-Henry.Wang@arm.com>
 <20231023092123.1756426-4-Henry.Wang@arm.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <20231023092123.1756426-4-Henry.Wang@arm.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi Henry,

On 23/10/2023 10:21, Henry Wang wrote:
> Signed-off-by: Henry Wang <Henry.Wang@arm.com>
Acked-by: Julien Grall <jgrall@amazon.com>
																								> ---
> v3:
> - Don't set the release date.
> ---
>   CHANGELOG.md | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/CHANGELOG.md b/CHANGELOG.md
> index 25d29fe59d..3ca7969699 100644
> --- a/CHANGELOG.md
> +++ b/CHANGELOG.md
> @@ -4,7 +4,7 @@ Notable changes to Xen will be documented in this file.
>   
>   The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
>   
> -## [unstable UNRELEASED](https://xenbits.xenproject.org/gitweb/?p=xen.git;a=shortlog;h=staging) - TBD
> +## [4.18.0](https://xenbits.xenproject.org/gitweb/?p=xen.git;a=shortlog;h=RELEASE-4.18.0) - 2023-XX-XX

I can update the date just before I tag the release.

Cheers,

>   
>   ### Changed
>    - Repurpose command line gnttab_max_{maptrack_,}frames options so they don't

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 18:22:41 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 18:22:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622551.969498 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvM34-00058I-N0; Tue, 24 Oct 2023 18:22:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622551.969498; Tue, 24 Oct 2023 18: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 1qvM34-00058B-K2; Tue, 24 Oct 2023 18:22:38 +0000
Received: by outflank-mailman (input) for mailman id 622551;
 Tue, 24 Oct 2023 18:22: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 1qvM34-000585-0Z
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 18:22: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 1qvM31-000062-PC; Tue, 24 Oct 2023 18:22:35 +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 1qvM31-0000Lf-KE; Tue, 24 Oct 2023 18:22: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=56UB4ie/ev5q1HFaTDDDDcK65HCOFuXN/Qu6JkVdBWw=; b=C9RNjIdk/K1K17ydrkBXQTMMq9
	M5KmA01ES3J24GF8uvudjVD513EZW51TIBlUVC5uwE/EDevWBoQ/To/8ubZ7SiEGa9H9qhyW8Iz1W
	woa5sKMK2u7XhdvCF/lNH8EMB8wFnsobKSCfHtG4lf+iDCl7/y6e/JneeiAAa6nutow0=;
Message-ID: <0c77041a-3d73-4986-8b4f-9ba0577a4467@xen.org>
Date: Tue, 24 Oct 2023 19:22:33 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v3 0/4] Final CHANGELOG changes for 4.18
Content-Language: en-GB
To: Henry Wang <Henry.Wang@arm.com>, xen-devel@lists.xenproject.org
Cc: Community Manager <community.manager@xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.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>, =?UTF-8?Q?Roger_Pau_Monn=C3=A9?=
 <roger.pau@citrix.com>, Wei Chen <wei.chen@arm.com>
References: <20231023092123.1756426-1-Henry.Wang@arm.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <20231023092123.1756426-1-Henry.Wang@arm.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit



On 23/10/2023 10:21, Henry Wang wrote:
> Hi all,

Hi Henry,

> 
> This series should be the final CHANGELOG changes for 4.18.
> 
> The first patch is mentioning the MISRA-C improvement during the
> 4.18 dev cycle, second patch is added as a clean-up patch during
> the review of this series, so these should be committed before
> we branch.
> 
> The third patch sets the release date and tag of 4.18 release
> and should be included in both the staging and stable-4.18 once
> we branch.
> 
> The fourth patch starts a new unstable section, so should be in
> unstable master/staging only.
> 
> Thanks.
> 
> Henry Wang (4):
>    CHANGELOG.md: Mention the MISRA-C improvement in 4.18 dev cycle
>    CHANGELOG.md: Use "xenbits.xenproject.org" in links
>    CHANGELOG.md: Set 4.18 release date and tag

I have committed the first 3 patches. I will commit ...

>    CHANGELOG.md: Start new "unstable" section

... the last one after we branched for 4.18.

Cheers,


-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 18:38:33 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 18:38:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622556.969508 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvMIM-000866-1V; Tue, 24 Oct 2023 18:38:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622556.969508; Tue, 24 Oct 2023 18: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 1qvMIL-00085z-Tu; Tue, 24 Oct 2023 18:38:25 +0000
Received: by outflank-mailman (input) for mailman id 622556;
 Tue, 24 Oct 2023 18:38: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=jXWl=GG=casper.srs.infradead.org=BATV+e2898748ca55db067849+7366+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qvMIK-00085t-0I
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 18:38:24 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 8133e33f-729c-11ee-9b0e-b553b5be7939;
 Tue, 24 Oct 2023 20:38:20 +0200 (CEST)
Received: from [2001:8b0:10b:5:758e:a1c4:bc7:e7a7]
 (helo=u3832b3a9db3152.ant.amazon.com)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qvMID-0044Tg-4l; Tue, 24 Oct 2023 18:38: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: 8133e33f-729c-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=MIME-Version:Content-Type:References:
	In-Reply-To:Date:Cc:To:From:Subject:Message-ID:Sender:Reply-To:
	Content-Transfer-Encoding:Content-ID:Content-Description;
	bh=159/mVIxyn39tdvjHsk97+GJhmdO7Y1c2g4WzI3Uvpc=; b=PH8UWNjAyVWaHxLUWGeO8zqKR4
	BHiZgT3FfRJQHMXUo5bUCxGQfX8+8gfyVlS34/vFsr/GbETc+cRNl8JdHZ02LTmx4oH28PIohdN83
	uR9QqoLkJcm/+pARjSngVy3Z+aMQwoje9LyCho1n8/F6oeWpcI/ALXH51RTW7IFlR8rPjwlyaXgAk
	d11z+x9/aWjH1yTsMoEpnZ80BgTqFKMOTztaCx8jl88zWqiuTUSKm1WQjPQu5rC6QSLidAu/cM595
	mzKyoSrK/ZOR3kX+2RxhPmHl8M32zG4rPsxoxrgTEhJJjzRKCnn1CWSOKeTIkWA8GIK4ng8Da2+BV
	YAV4o8jw==;
Message-ID: <c194f9f99ca9690e95f7257b9b7b9e735ba2962b.camel@infradead.org>
Subject: Re: [PATCH v2 16/24] hw/xen: handle soft reset for primary console
From: David Woodhouse <dwmw2@infradead.org>
To: paul@xen.org, qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>, Hanna Reitz <hreitz@redhat.com>, Stefano
 Stabellini <sstabellini@kernel.org>, Anthony Perard
 <anthony.perard@citrix.com>,  =?ISO-8859-1?Q?Marc-Andr=E9?= Lureau
 <marcandre.lureau@redhat.com>, Paolo Bonzini <pbonzini@redhat.com>, Richard
 Henderson <richard.henderson@linaro.org>, Eduardo Habkost
 <eduardo@habkost.net>, "Michael S. Tsirkin" <mst@redhat.com>, Marcel
 Apfelbaum <marcel.apfelbaum@gmail.com>, Jason Wang <jasowang@redhat.com>,
 Marcelo Tosatti <mtosatti@redhat.com>, Cleber Rosa <crosa@redhat.com>,
 Philippe =?ISO-8859-1?Q?Mathieu-Daud=E9?= <philmd@linaro.org>, Wainer dos
 Santos Moschetta <wainersm@redhat.com>,  Beraldo Leal <bleal@redhat.com>,
 qemu-block@nongnu.org, xen-devel@lists.xenproject.org, kvm@vger.kernel.org,
  Bernhard Beschow <shentey@gmail.com>, Joel Upham <jupham125@gmail.com>
Date: Tue, 24 Oct 2023 19:38:16 +0100
In-Reply-To: <ab2aabe5-b3c3-43f5-812e-bce98d2e59ae@xen.org>
References: <20231019154020.99080-1-dwmw2@infradead.org>
	 <20231019154020.99080-17-dwmw2@infradead.org>
	 <8ba01df3-6189-4e1e-a70f-37a2d4dd21ed@xen.org>
	 <3124d1d6e9af139a3c7b6dbe2b73a82914d3f559.camel@infradead.org>
	 <ab2aabe5-b3c3-43f5-812e-bce98d2e59ae@xen.org>
Content-Type: multipart/signed; micalg="sha-256"; protocol="application/pkcs7-signature";
	boundary="=-ATrVxf7+7Q+BNbNlR5fs"
User-Agent: Evolution 3.44.4-0ubuntu2 
MIME-Version: 1.0
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html


--=-ATrVxf7+7Q+BNbNlR5fs
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Tue, 2023-10-24 at 17:22 +0100, Paul Durrant wrote:
> On 24/10/2023 16:48, David Woodhouse wrote:
> > On Tue, 2023-10-24 at 16:44 +0100, Paul Durrant wrote:
> > > On 19/10/2023 16:40, David Woodhouse wrote:
> > > > From: David Woodhouse <dwmw@amazon.co.uk>
> > > >=20
> > > > On soft reset, the prinary console event channel needs to be reboun=
d to
> > > > the backend port (in the xen-console driver). We could put that int=
o the
> > > > xen-console driver itself, but it's slightly less ugly to keep it w=
ithin
> > > > the KVM/Xen code, by stashing the backend port# on event channel re=
set
> > > > and then rebinding in the primary console reset when it has to recr=
eate
> > > > the guest port anyway.
> > >=20
> > > Does Xen re-bind the primary console on EVTCHNOP_reset? That's news t=
o
> > > me. I go check.
> >=20
> > I spent an unhapp hour trying to work out how Xen actually does any of
> > this :)
> >=20
> > In the short term I'm more interested in having soft reset work, than
> > an explicit EVTCHNOP_reset. And I can't work out *how*, but we do seem
> > to have console again after a kexec in real Xen.
>=20
> *Soft* reset may do it, but not the EVTCHNOP_reset hypercall itself,=20
> because there's a bunch of impenetrable toolstack magic involved the=20
> former. Perhaps you could just push the re-bind code up a layer into
> kvm_xen_soft_reset().

Actually, all we're doing here is *storing* the be_port so that the
*console* reset code can later connect to it. So the actual reconnect=20
is already called separately from a layer up in kvm_xen_soft_reset().

If the guest just calls EVTCHNOP_reset then it'll just get the event
channels reset and the console *won't* reconnect.

Actually.. if the guest just calls EVTCHNOP_reset I think they'll just
hit the assert(qemu_mutex_iothread_locked()) at line 1109. We need a =20
QEMU_IOTHREAD_LOCK_GUARD() in the penultimate line of
xen_evtchn_reset_op(). I'll fix that separately.

--=-ATrVxf7+7Q+BNbNlR5fs
Content-Type: application/pkcs7-signature; name="smime.p7s"
Content-Disposition: attachment; filename="smime.p7s"
Content-Transfer-Encoding: base64

MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgEFADCABgkqhkiG9w0BBwEAAKCCEkQw
ggYQMIID+KADAgECAhBNlCwQ1DvglAnFgS06KwZPMA0GCSqGSIb3DQEBDAUAMIGIMQswCQYDVQQG
EwJVUzETMBEGA1UECBMKTmV3IEplcnNleTEUMBIGA1UEBxMLSmVyc2V5IENpdHkxHjAcBgNVBAoT
FVRoZSBVU0VSVFJVU1QgTmV0d29yazEuMCwGA1UEAxMlVVNFUlRydXN0IFJTQSBDZXJ0aWZpY2F0
aW9uIEF1dGhvcml0eTAeFw0xODExMDIwMDAwMDBaFw0zMDEyMzEyMzU5NTlaMIGWMQswCQYDVQQG
EwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYD
VQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50
aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC
AQEAyjztlApB/975Rrno1jvm2pK/KxBOqhq8gr2+JhwpKirSzZxQgT9tlC7zl6hn1fXjSo5MqXUf
ItMltrMaXqcESJuK8dtK56NCSrq4iDKaKq9NxOXFmqXX2zN8HHGjQ2b2Xv0v1L5Nk1MQPKA19xeW
QcpGEGFUUd0kN+oHox+L9aV1rjfNiCj3bJk6kJaOPabPi2503nn/ITX5e8WfPnGw4VuZ79Khj1YB
rf24k5Ee1sLTHsLtpiK9OjG4iQRBdq6Z/TlVx/hGAez5h36bBJMxqdHLpdwIUkTqT8se3ed0PewD
ch/8kHPo5fZl5u1B0ecpq/sDN/5sCG52Ds+QU5O5EwIDAQABo4IBZDCCAWAwHwYDVR0jBBgwFoAU
U3m/WqorSs9UgOHYm8Cd8rIDZsswHQYDVR0OBBYEFAnA8vwL2pTbX/4r36iZQs/J4K0AMA4GA1Ud
DwEB/wQEAwIBhjASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEF
BQcDBDARBgNVHSAECjAIMAYGBFUdIAAwUAYDVR0fBEkwRzBFoEOgQYY/aHR0cDovL2NybC51c2Vy
dHJ1c3QuY29tL1VTRVJUcnVzdFJTQUNlcnRpZmljYXRpb25BdXRob3JpdHkuY3JsMHYGCCsGAQUF
BwEBBGowaDA/BggrBgEFBQcwAoYzaHR0cDovL2NydC51c2VydHJ1c3QuY29tL1VTRVJUcnVzdFJT
QUFkZFRydXN0Q0EuY3J0MCUGCCsGAQUFBzABhhlodHRwOi8vb2NzcC51c2VydHJ1c3QuY29tMA0G
CSqGSIb3DQEBDAUAA4ICAQBBRHUAqznCFfXejpVtMnFojADdF9d6HBA4kMjjsb0XMZHztuOCtKF+
xswhh2GqkW5JQrM8zVlU+A2VP72Ky2nlRA1GwmIPgou74TZ/XTarHG8zdMSgaDrkVYzz1g3nIVO9
IHk96VwsacIvBF8JfqIs+8aWH2PfSUrNxP6Ys7U0sZYx4rXD6+cqFq/ZW5BUfClN/rhk2ddQXyn7
kkmka2RQb9d90nmNHdgKrwfQ49mQ2hWQNDkJJIXwKjYA6VUR/fZUFeCUisdDe/0ABLTI+jheXUV1
eoYV7lNwNBKpeHdNuO6Aacb533JlfeUHxvBz9OfYWUiXu09sMAviM11Q0DuMZ5760CdO2VnpsXP4
KxaYIhvqPqUMWqRdWyn7crItNkZeroXaecG03i3mM7dkiPaCkgocBg0EBYsbZDZ8bsG3a08LwEsL
1Ygz3SBsyECa0waq4hOf/Z85F2w2ZpXfP+w8q4ifwO90SGZZV+HR/Jh6rEaVPDRF/CEGVqR1hiuQ
OZ1YL5ezMTX0ZSLwrymUE0pwi/KDaiYB15uswgeIAcA6JzPFf9pLkAFFWs1QNyN++niFhsM47qod
x/PL+5jR87myx5uYdBEQkkDc+lKB1Wct6ucXqm2EmsaQ0M95QjTmy+rDWjkDYdw3Ms6mSWE3Bn7i
5ZgtwCLXgAIe5W8mybM2JzCCBhQwggT8oAMCAQICEQDGvhmWZ0DEAx0oURL6O6l+MA0GCSqGSIb3
DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYD
VQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28g
UlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMB4XDTIyMDEwNzAw
MDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJARYTZHdtdzJAaW5mcmFkZWFkLm9y
ZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3GpC2bomUqk+91wLYBzDMcCj5C9m6
oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZHh7htyAkWYVoFsFPrwHounto8xTsy
SSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT9YgcBqKCo65pTFmOnR/VVbjJk4K2
xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNjP+qDrh0db7PAjO1D4d5ftfrsf+kd
RR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy2U+eITZ5LLE5s45mX2oPFknWqxBo
bQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3BgBEmfsYWlBXO8rVXfvPgLs32VdV
NZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/7auNVRmPB3v5SWEsH8xi4Bez2V9U
KxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmdlFYhAflWKQ03Ufiu8t3iBE3VJbc2
5oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9aelIl6vtbhMA+l0nfrsORMa4kobqQ5
C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMBAAGjggHMMIIByDAfBgNVHSMEGDAW
gBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeDMcimo0oz8o1R1Nver3ZVpSkwDgYD
VR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYwFAYIKwYBBQUHAwQGCCsGAQUFBwMC
MEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYBBQUHAgEWF2h0dHBzOi8vc2VjdGln
by5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9jcmwuc2VjdGlnby5jb20vU2VjdGln
b1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1haWxDQS5jcmwwgYoGCCsGAQUFBwEB
BH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdvLmNvbS9TZWN0aWdvUlNBQ2xpZW50
QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAjBggrBgEFBQcwAYYXaHR0cDovL29j
c3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5mcmFkZWFkLm9yZzANBgkqhkiG9w0B
AQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQvQ/fzPXmtR9t54rpmI2TfyvcKgOXp
qa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvIlSPrzIB4Z2wyIGQpaPLlYflrrVFK
v9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9ChWFfgSXvrWDZspnU3Gjw/rMHrGnql
Htlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0whpBtXdyDjzBtQTaZJ7zTT/vlehc/
tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9IzCCBhQwggT8oAMCAQICEQDGvhmW
Z0DEAx0oURL6O6l+MA0GCSqGSIb3DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3Jl
YXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0
ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJl
IEVtYWlsIENBMB4XDTIyMDEwNzAwMDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJ
ARYTZHdtdzJAaW5mcmFkZWFkLm9yZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3
GpC2bomUqk+91wLYBzDMcCj5C9m6oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZH
h7htyAkWYVoFsFPrwHounto8xTsySSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT
9YgcBqKCo65pTFmOnR/VVbjJk4K2xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNj
P+qDrh0db7PAjO1D4d5ftfrsf+kdRR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy
2U+eITZ5LLE5s45mX2oPFknWqxBobQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3
BgBEmfsYWlBXO8rVXfvPgLs32VdVNZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/
7auNVRmPB3v5SWEsH8xi4Bez2V9UKxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmd
lFYhAflWKQ03Ufiu8t3iBE3VJbc25oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9ae
lIl6vtbhMA+l0nfrsORMa4kobqQ5C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMB
AAGjggHMMIIByDAfBgNVHSMEGDAWgBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeD
Mcimo0oz8o1R1Nver3ZVpSkwDgYDVR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYw
FAYIKwYBBQUHAwQGCCsGAQUFBwMCMEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYB
BQUHAgEWF2h0dHBzOi8vc2VjdGlnby5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9j
cmwuc2VjdGlnby5jb20vU2VjdGlnb1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1h
aWxDQS5jcmwwgYoGCCsGAQUFBwEBBH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdv
LmNvbS9TZWN0aWdvUlNBQ2xpZW50QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAj
BggrBgEFBQcwAYYXaHR0cDovL29jc3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5m
cmFkZWFkLm9yZzANBgkqhkiG9w0BAQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQv
Q/fzPXmtR9t54rpmI2TfyvcKgOXpqa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvI
lSPrzIB4Z2wyIGQpaPLlYflrrVFKv9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9Ch
WFfgSXvrWDZspnU3Gjw/rMHrGnqlHtlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0w
hpBtXdyDjzBtQTaZJ7zTT/vlehc/tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9
IzGCBMcwggTDAgEBMIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVz
dGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMT
NVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEA
xr4ZlmdAxAMdKFES+jupfjANBglghkgBZQMEAgEFAKCCAeswGAYJKoZIhvcNAQkDMQsGCSqGSIb3
DQEHATAcBgkqhkiG9w0BCQUxDxcNMjMxMDI0MTgzODE2WjAvBgkqhkiG9w0BCQQxIgQg+Hut10vF
xM2A/ErMWkP1w3atpag7JysQEt1QJCw9vl0wgb0GCSsGAQQBgjcQBDGBrzCBrDCBljELMAkGA1UE
BhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEYMBYG
A1UEChMPU2VjdGlnbyBMaW1pdGVkMT4wPAYDVQQDEzVTZWN0aWdvIFJTQSBDbGllbnQgQXV0aGVu
dGljYXRpb24gYW5kIFNlY3VyZSBFbWFpbCBDQQIRAMa+GZZnQMQDHShREvo7qX4wgb8GCyqGSIb3
DQEJEAILMYGvoIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVy
MRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNl
Y3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEAxr4Z
lmdAxAMdKFES+jupfjANBgkqhkiG9w0BAQEFAASCAgBKeYjLI+3sGGav28qndC+f00EWwEraJz3M
G6DX6iQK3eo4elyRHFr1A4k1qiVq/jH8JMaM49ay23cZ708X+694nPnV+o6PLgVidCXk76bjxKk2
i2lp1qE7dTR2pyibWW/DXGrJ14DG8gssTumtX+HiQyghqx1/o2N96QK4cwLSuykGq5yXl+tEQh8b
aU5lN2KDOcj5G1PqjzFMPg+yf3cGS0Nnyc1b7eGLyFNbssi4XBffdKe7vnRJByJ01HdvEc7Xwtsw
EvzTlhxY+TozGpz3KYI1Z0JC7FN1/03HFW0MfqQW1C9YUINH+Z05q+rcXXd61WhCXSOP8B1m7I2Z
cPy/kCZ+j+utIs+rsAWEO0yUWTvrDzTuyYi/UVs8L3SpvvneVZ0pRfn1qsADN9a0Fpmii/lOevOn
mIeiaPbfNio1LL068REJ+rYeiaqhSvbh9B7s5l1pGcBmthCHAk/JfJpcfun9xd+7cEMFzk9ZSzSM
7WAVkbjZVl2mR87h7sZ2K1gJu1wh3iy3SCOqYSFGmOZA5CVJQHATvDb77wPYuAdmLc1sXK+vln2B
PzHExMc6sy5JbuslHQIB/UhtjA+KOgWFx7Kz/Fkn0XdbsUEbAXLgZcpljt5QEoXqAI0OZpUfxU0X
ss/eA9bF+QrTu3jU9m/Y1x5kaC0/MTdAH3y2Zmpm8wAAAAAAAA==


--=-ATrVxf7+7Q+BNbNlR5fs--


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 18:39:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 18:39:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622559.969518 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvMJn-0000Bq-CN; Tue, 24 Oct 2023 18:39:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622559.969518; Tue, 24 Oct 2023 18:39: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 1qvMJn-0000Bj-8N; Tue, 24 Oct 2023 18:39:55 +0000
Received: by outflank-mailman (input) for mailman id 622559;
 Tue, 24 Oct 2023 18:39: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 1qvMJl-0000Bb-Rz
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 18:39: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 1qvMJk-0000ZJ-Sx; Tue, 24 Oct 2023 18:39: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 1qvMJk-00010M-Mb; Tue, 24 Oct 2023 18:39: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=bVdwjw2QooWUK0Hmv0HxnXWrBanbRx3nRmwEHQ26Y7w=; b=s+zkwGnT9lgbrst3kRlgUfaIM4
	DyvwD2c9IP3Jc1txq2wQxposmLG5Fh8iRexLWlC/SkVRdVU2pviGVrfT14aqueUehKZh4UKkR1kfJ
	vFBL9gH589yZ3IhJ0iqIz28GnnzaKaU/tIBCqkBI7EL5ukpj5U+FAJD/kFIkk4tR1p5c=;
Message-ID: <31be8fc3-f156-4fd1-9700-2cadbcbec392@xen.org>
Date: Tue, 24 Oct 2023 19:39:50 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v5 2/9] iommu/arm: Add iommu_dt_xlate()
Content-Language: en-GB
To: Stewart Hildebrand <stewart.hildebrand@amd.com>,
 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>, Jan Beulich
 <jbeulich@suse.com>, Paul Durrant <paul@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>
References: <20231004145604.1085358-1-stewart.hildebrand@amd.com>
 <20231004145604.1085358-3-stewart.hildebrand@amd.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <20231004145604.1085358-3-stewart.hildebrand@amd.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi Stewart,

On 04/10/2023 15:55, 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>
> ---
> v4->v5:
> * rebase on top of "dynamic node programming using overlay dtbo" series
> * move #define NO_IOMMU 1 to header
> * s/these/this/ inside comment
> 
> 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 | 48 +++++++++++++++++----------
>   xen/include/xen/iommu.h               |  2 ++
>   2 files changed, 32 insertions(+), 18 deletions(-)
> 
> diff --git a/xen/drivers/passthrough/device_tree.c b/xen/drivers/passthrough/device_tree.c
> index 075fb25a3706..159ace9856c9 100644
> --- a/xen/drivers/passthrough/device_tree.c
> +++ b/xen/drivers/passthrough/device_tree.c
> @@ -137,6 +137,30 @@ int iommu_release_dt_devices(struct domain *d)
>       return 0;
>   }
>   
> +static int iommu_dt_xlate(struct device *dev,
> +                          const struct dt_phandle_args *iommu_spec)
> +{
> +    const struct iommu_ops *ops = iommu_get_ops();

NIT: Rather than calling iommu_get_ops(), how about passing the ops as a 
parameter of iommu_dt_xlate()?

Reviewed-by: Julien Grall <jgrall@amazon.com>

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 18:41:24 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 18:41:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622562.969527 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvMLC-0001aN-MT; Tue, 24 Oct 2023 18:41:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622562.969527; Tue, 24 Oct 2023 18:41: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 1qvMLC-0001aG-JI; Tue, 24 Oct 2023 18:41:22 +0000
Received: by outflank-mailman (input) for mailman id 622562;
 Tue, 24 Oct 2023 18:41:21 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qvMLB-0001a6-0y; Tue, 24 Oct 2023 18:41:21 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qvMLA-0000b5-Vf; Tue, 24 Oct 2023 18:41: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 1qvMLA-0006Yr-Ja; Tue, 24 Oct 2023 18:41:20 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qvMLA-0004kV-J8; Tue, 24 Oct 2023 18: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=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=eItHZSFArtmfZrvPW2CeDTrMX0DayY4GHlVt8E7934s=; b=htBiphXJQSUa57G6MM8LhdG8UC
	b32aPQFuByaBA4aDBlm4iz8jk0MCodkhZSn/u/X8LED5nROSDFEDZx2jhfhZ8RhewsCW3jPCdNebp
	uIoTDNRGS0yObB94rBMmqoMOLi7xC4B2SGGP+OkTvNGxlLXQ+aK+chumThg1wJlSdur8=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183510-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 183510: tolerable trouble: fail/pass/starved - PUSHED
X-Osstest-Failures:
    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-armhf-armhf-libvirt: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-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-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-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-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-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu: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-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-raw:migrate-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-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-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds: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-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-amd64-amd64-dom0pvh-xl-amd:hosts-allocate:starved:nonblocking
X-Osstest-Versions-This:
    linux=d88520ad73b79e71e3ddf08de335b8520ae41c5c
X-Osstest-Versions-That:
    linux=84186fcb834ecc55604efaf383e17e6b5e9baa50
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 24 Oct 2023 18:41:20 +0000

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

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 183503
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183503
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183503
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183503
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183503
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183503
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183503
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183503
 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-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-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-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-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-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-amd64-amd64-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-amd64-amd64-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-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-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-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-dom0pvh-xl-amd  3 hosts-allocate               starved  n/a

version targeted for testing:
 linux                d88520ad73b79e71e3ddf08de335b8520ae41c5c
baseline version:
 linux                84186fcb834ecc55604efaf383e17e6b5e9baa50

Last test of basis   183503  2023-10-24 02:26:34 Z    0 days
Testing same since   183510  2023-10-24 11:41:38 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Al Viro <viro@zeniv.linux.org.uk>
  Chuck Lever <chuck.lever@oracle.com>
  Jeff Layton <jlayton@kernel.org>
  Linus Torvalds <torvalds@linux-foundation.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-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                              starved 
 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
   84186fcb834e..d88520ad73b7  d88520ad73b79e71e3ddf08de335b8520ae41c5c -> tested/linux-linus


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 19:23:42 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 19:23:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622571.969538 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvMzq-0008VY-Vy; Tue, 24 Oct 2023 19:23:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622571.969538; Tue, 24 Oct 2023 19: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 1qvMzq-0008VR-T1; Tue, 24 Oct 2023 19:23:22 +0000
Received: by outflank-mailman (input) for mailman id 622571;
 Tue, 24 Oct 2023 19:23:21 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qvMzp-0008UF-1f; Tue, 24 Oct 2023 19:23:21 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qvMzo-0001VE-OE; Tue, 24 Oct 2023 19:23: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 1qvMzo-0007dg-Cx; Tue, 24 Oct 2023 19:23:20 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qvMzo-00079P-CX; Tue, 24 Oct 2023 19: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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=Pdtk0nr9Kzrz/J2pObNl0KWrRMzas5ZY3FvNRQzbfq4=; b=BK0VUsY6bAKpDGQg0dxiGwCmI+
	zLrYhpn0ipMpN3eqfIu4SyqLeLuDleKZDOmls8IJKQHA5XasoMXcbpwFGVXshpYdHtHdmp068o1BX
	WmMKbq/muzdqq4a409rNK7RMKaE9c9u6BpIzk6vS9Q3xZiYjNJpT+0oUPjPXPxZTitAk=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183516-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 183516: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=d85bf54b7f462eb0297351b5f8dfde09adf617fb
X-Osstest-Versions-That:
    ovmf=e17e58e81b356a347102ee6d780bf699544e9b81
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 24 Oct 2023 19:23:20 +0000

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

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

Last test of basis   183511  2023-10-24 12:10:45 Z    0 days
Testing same since   183516  2023-10-24 17:13:56 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Aaron Young <aaron.young@oracle.com>
  Ard Biesheuvel <ardb@kernel.org>
  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
   e17e58e81b..d85bf54b7f  d85bf54b7f462eb0297351b5f8dfde09adf617fb -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 19:37:57 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 19:37:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622581.969548 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvNDo-0002aN-8R; Tue, 24 Oct 2023 19:37:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622581.969548; Tue, 24 Oct 2023 19:37: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 1qvNDo-0002aG-57; Tue, 24 Oct 2023 19:37:48 +0000
Received: by outflank-mailman (input) for mailman id 622581;
 Tue, 24 Oct 2023 19:37: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=gl3Y=GG=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qvNDm-0002aA-L6
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 19:37:46 +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 cc8a670a-72a4-11ee-9b0e-b553b5be7939;
 Tue, 24 Oct 2023 21:37:44 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by sin.source.kernel.org (Postfix) with ESMTP id 59752CE3217;
 Tue, 24 Oct 2023 19:37:38 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id DE587C433C7;
 Tue, 24 Oct 2023 19:37: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: cc8a670a-72a4-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1698176257;
	bh=e/eSZEg9BV9LnmEvjGQqc6ZSj8gRfnuncwrlp+xGSKA=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=mgnGYZe/AywodPxzMEolPQnr4rWHgDtpH6KCOJGkHzV9F5gzIMJf3bQB4PdIy3XLX
	 O5i6D/Laqv1hkZdE6TxyoVEWalNwLhCg480of6RLWWblqKvCjv/sV0KqXfpizGUz5q
	 HOEzJ39/Fw/4HF/HsadnVULe7IKRXOTciHo5G9nERVBwBVZPhmHzqkkI0D0D74Ldia
	 9s13MttMR06d4IvFoE2+KTxQKJkNvzf8aZ8NnE6fNQZcg7+o3nDVvlpr1nszsxNiW2
	 osqdElTixuJU+UAhfAESROASAP9y7HgeZzEDVtt1v2RLpqN6LWxkWT228WNrPPxxKz
	 GeQ6RkP4/SB0g==
Date: Tue, 24 Oct 2023 12:37:16 -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: Julien Grall <julien@xen.org>, 
    "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>, 
    Julien Grall <jgrall@amazon.com>, 
    Nicola Vetrini <nicola.vetrini@bugseng.com>
Subject: Re: [PATCH for-4.19] xen/arm64: domctl: Avoid unreachable code in
 subarch_do_domctl()
In-Reply-To: <12FE5EA7-34F4-4FB4-A822-2AB5FCB0F2C7@arm.com>
Message-ID: <alpine.DEB.2.22.394.2310241236580.271731@ubuntu-linux-20-04-desktop>
References: <20231023175220.42781-1-julien@xen.org> <12FE5EA7-34F4-4FB4-A822-2AB5FCB0F2C7@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, 24 Oct 2023, Bertrand Marquis wrote:
> Hi Julien,
> 
> > On 23 Oct 2023, at 19:52, Julien Grall <julien@xen.org> wrote:
> > 
> > From: Julien Grall <jgrall@amazon.com>
> > 
> > The 'break' the XEN_DOMCTL_set_address_size is unreachable and tools
> > like Eclair will report as a violation of Misra Rule 2.1.
> > 
> > Furthermore, the nested switch is not very easy to read. So move
> > out the nested switch in a separate function to improve the
> > readability and hopefully address the MISRA violation.
> > 
> > Reported-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
> > Signed-off-by: Julien Grall <jgrall@amazon.com>
> 
> Reviewed-by: Bertrand Marquis <bertrand.marquis@arm.com>

I added the patch to my for-4.19 branch


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 19:40:21 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 19:40:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622584.969558 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvNGE-0003yy-Ke; Tue, 24 Oct 2023 19:40:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622584.969558; Tue, 24 Oct 2023 19: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 1qvNGE-0003yr-H3; Tue, 24 Oct 2023 19:40:18 +0000
Received: by outflank-mailman (input) for mailman id 622584;
 Tue, 24 Oct 2023 19: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=gl3Y=GG=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qvNGC-0003yV-Ja
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 19:40:16 +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 26795d12-72a5-11ee-9b0e-b553b5be7939;
 Tue, 24 Oct 2023 21:40:14 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by dfw.source.kernel.org (Postfix) with ESMTP id EF95662C87;
 Tue, 24 Oct 2023 19:40:12 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 6B8FBC433C9;
 Tue, 24 Oct 2023 19:40: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: 26795d12-72a5-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1698176412;
	bh=rn56f+j5vN1IxsRGUtp1R0VwYkgjLK+zqQIA3+S9HRc=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=e4MbCZLJCjkwywkPXT3dq11R1mww9k149CsyeL1Z8Md/guoJrCX2cGjcX49OslJj9
	 /fSopUEYsPN07mfXcQZ6Ai6JA/AX3dReRcFUEBO4//BgkMhAVl+4mXx+chSbhWiPMK
	 O0gJtLzZrBJ7QKGTdKPgP14LTWDUjxZP8qUkoYhiQ/j1thWWC8z3TV2VfqSsUVW//T
	 r+8ztIeaF6QVPVdZe4DJWsjdcvtMULtUEvPjmrQfF/DOaam1QmYSU3ZglFFZ1gDoNH
	 +Lgzp0IqAmuDPA/35IvCgiuyR8GSClZEsnrJQTPUX9g6xToF6QfiUQWWNJj2dRxrUj
	 boTlJqW5LH94w==
Date: Tue, 24 Oct 2023 12:40:10 -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: Stefano Stabellini <sstabellini@kernel.org>, 
    Xen-devel <xen-devel@lists.xenproject.org>, Julien Grall <julien@xen.org>, 
    Bertrand Marquis <Bertrand.Marquis@arm.com>, 
    "michal.orzel@amd.com" <michal.orzel@amd.com>, 
    "Volodymyr_Babchuk@epam.com" <Volodymyr_Babchuk@epam.com>
Subject: Re: [PATCH] MAINTAINERS: make Michal Orzel ARM Maintainer
In-Reply-To: <DBF0F3A9-9B99-4C9C-806D-E463255A2640@arm.com>
Message-ID: <alpine.DEB.2.22.394.2310241239020.271731@ubuntu-linux-20-04-desktop>
References: <alpine.DEB.2.22.394.2310231356210.3516@ubuntu-linux-20-04-desktop> <DBF0F3A9-9B99-4C9C-806D-E463255A2640@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, 24 Oct 2023, Henry Wang wrote:
> Hi Stefano,
> 
> > On Oct 24, 2023, at 04:56, Stefano Stabellini <sstabellini@kernel.org> wrote:
> > 
> > Signed-off-by: Stefano Stabellini <stefano.stabellini@amd.com>
> 
> I saw I was CCed so:
> 
> Release-acked-by: Henry Wang <Henry.Wang@arm.com>

Thanks everyone for the acks. For simplicity I'll add it to my for-4.19
branch instead of staging.


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 19:44:46 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 19:44:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622589.969568 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvNKT-0004h4-3M; Tue, 24 Oct 2023 19:44:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622589.969568; Tue, 24 Oct 2023 19:44: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 1qvNKT-0004gx-0c; Tue, 24 Oct 2023 19:44:41 +0000
Received: by outflank-mailman (input) for mailman id 622589;
 Tue, 24 Oct 2023 19:44: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=FS8+=GG=amd.com=Stewart.Hildebrand@srs-se1.protection.inumbo.net>)
 id 1qvNKR-0004gr-5m
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 19:44:39 +0000
Received: from NAM11-DM6-obe.outbound.protection.outlook.com
 (mail-dm6nam11on20600.outbound.protection.outlook.com
 [2a01:111:f400:7eaa::600])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id c32e09b2-72a5-11ee-98d5-6d05b1d4d9a1;
 Tue, 24 Oct 2023 21:44:37 +0200 (CEST)
Received: from CY5PR15CA0136.namprd15.prod.outlook.com (2603:10b6:930:68::24)
 by DM4PR12MB5889.namprd12.prod.outlook.com (2603:10b6:8:65::18) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.33; Tue, 24 Oct
 2023 19:44:34 +0000
Received: from CY4PEPF0000E9D7.namprd05.prod.outlook.com
 (2603:10b6:930:68:cafe::dc) by CY5PR15CA0136.outlook.office365.com
 (2603:10b6:930:68::24) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.34 via Frontend
 Transport; Tue, 24 Oct 2023 19:44:34 +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.6933.15 via Frontend Transport; Tue, 24 Oct 2023 19:44:34 +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, 24 Oct
 2023 14:44:33 -0500
Received: from [172.30.200.120] (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, 24 Oct 2023 14:44: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: c32e09b2-72a5-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=bsqPCxP5UZXvLV0aN+Tues5wqGR65hEcco90RxANJImF8p/W84KW6uINfkCMxXh0fMx1ppYnDIsC5x44pE7WUoHsCqCfGno0ZBxlS5CWLZ8+75eBEy02BPlzpVYd5XTlctLbAyOT257ryUzj+qjcXV7izh7lzwm5zPM22H6nOBpjv515HCLFbGxXYmyFWzMPKmxBFMzHL5OyGjsuIsYU+ec+NdnsUah/GgIAmcJ4DHAgufbH01rodE/4tv90a4XJFK8hppoeJjC8OEL7Sxlw5j+tE6xGZGFW46SLshRc9q52dzX+B98XOoJZnAOA1QDsrWT1Gijay9/xLoQb43KYOQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=nkPEFbLCCb2u6fSIy2cDaLpf2HhiawQtoWBdFTj1h+Y=;
 b=h9zfOVn4RvQptK8DArZ+utZscg9kfb1nZ6oFR4ZXijHztKUrlG22pSPs7Uko+mFgAnGBNWOTKn8XsT4GtWC88qMtgmItKUB1jBDtz7Bw3EcDYg+CD5gygqVEy3DxsVg487AQQC0gktKLVl2UpmUW7M7ABca1CxNHFhNSa4+pS+v/iFC7Hh+F3dPNBdbPYyCwv6tScQReXtJ1hBjJs9dnR9uxJ2ovmGuWIOco14oYUFfvMOCQiXZBh8B+BEtPfy1SEYY8hsxKg9PNHDy0w5/QYnuFobdHl6t9DsMopvjwhB54fFglQIUdEFlsZKiemSWaMiEr46MHuJ/boooI5gHVQQ==
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=nkPEFbLCCb2u6fSIy2cDaLpf2HhiawQtoWBdFTj1h+Y=;
 b=SsJUsOT02oSK/AjH8DHAdYK2+CDzJtfDm2yxnUBS5WzhPH0GQuscm+O6htOMwpNoqRHnOnu0A9FrQcOu7ceeSDa35AgmX1ndaFyDZk5PYG24bbryqblHqV7jGXxtcZOh7r3o5gE4+JUj0JHGfbPmac0dxJM4zrd4ioApqzTHYLY=
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: <d0ca7ff1-497a-4d54-a3c3-1eddad573717@amd.com>
Date: Tue, 24 Oct 2023 15:44:26 -0400
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v10 16/17] xen/arm: vpci: permit access to guest vpci
 space
To: Jan Beulich <jbeulich@suse.com>, Volodymyr Babchuk
	<Volodymyr_Babchuk@epam.com>
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>, Wei
 Liu <wl@xen.org>, "xen-devel@lists.xenproject.org"
	<xen-devel@lists.xenproject.org>
References: <20231012220854.2736994-1-volodymyr_babchuk@epam.com>
 <20231012220854.2736994-17-volodymyr_babchuk@epam.com>
 <137af760-91be-21de-6033-8db1b8b7ef6e@suse.com>
Content-Language: en-US
From: Stewart Hildebrand <stewart.hildebrand@amd.com>
In-Reply-To: <137af760-91be-21de-6033-8db1b8b7ef6e@suse.com>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 7bit
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: CY4PEPF0000E9D7:EE_|DM4PR12MB5889:EE_
X-MS-Office365-Filtering-Correlation-Id: 8061be66-7734-4250-0cdb-08dbd4c9a5fd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	j3tJYE8e4KH2AjJ6OVTiZNE4OmX7ozkXqLJpAPHznUBn2L51TwRXIGcxADDHJ4BxN6rIJrdKyl/HOq0Kd0DBKsfVaesJKYteBfswou0MxxJTH6moRYQNNSg5eEsVpM5+D4Ck46+xiuTGpXH+4wP5CxpfobdiV7Hee4W+gHMEUU9/b6xA0X6sDkSh09fe3cS4RIASzbgBmPHny8rgS9NakiMme1X5Ec0yn1bmSpDsi0rWFBIq/8T62mNf5bINWB/8KAVZQoj5T4YVojJBy+ui+8VoRQ+b8JR6BEzQ85HsKmc03wT67i0pi5xwcS0G2owPTFGpt8agJWNWmoTVVyVdpURAqWqV05JBLAlTDDWSUpeDa9cab3S/2LLKEPK5o2HGr9R4e/QVNn2GIHZEjPb+OTirfqsTWpsXQmRSk0TRyENPefEaNYBIWpCjerKxqnPONrIFWQ96OyXCjA1sbwv1WH1cur0NTJgO7HP6iKHwt17kgwufXOB+NQQaGZAbVfbVMwF+NDFCXKZnwl5czPqEagkT6K0WsOmu7/lq+I1Cm3YHlTuPQ4/4Cz4EUZ3SFRRmxq06QAWpkI7Q9JON90MCM+AVA7CwaUW9iQgXD1L5MwDpEs5C2pdKp7BfBI3sVQNISe011P3kUtznl82BMf1JesGTVIOpIM1bpPmwiWhqTDD028+GKbcBbbVcISMbutJkLrl/VY1mTbI4C6Rr9uRbm73JB3F00j7bc6XejFbapT1d77JEjVTmMO6Rr4filgN9zfieQdGbg/2skHaqe5Giz2l1Yaeb+I3yJAe8pW4oFCWS7d6r/byYk9Kns/zVQXk8
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)(376002)(346002)(39860400002)(230922051799003)(82310400011)(186009)(1800799009)(64100799003)(451199024)(46966006)(36840700001)(40470700004)(8936002)(4326008)(8676002)(44832011)(41300700001)(2906002)(40480700001)(40460700003)(5660300002)(110136005)(53546011)(82740400003)(356005)(6666004)(36756003)(81166007)(36860700001)(83380400001)(70206006)(47076005)(2616005)(426003)(336012)(70586007)(86362001)(31696002)(31686004)(54906003)(26005)(478600001)(316002)(16576012)(43740500002)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 24 Oct 2023 19:44:34.0302
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 8061be66-7734-4250-0cdb-08dbd4c9a5fd
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: DM4PR12MB5889

On 10/16/23 07:00, Jan Beulich wrote:
> On 13.10.2023 00:09, Volodymyr Babchuk wrote:
>> --- 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;
> 
> It's not really logical to move one, not both. Plus you didn't move the
> error check, so if the earlier initialization is really needed, you set
> things up for a NULL deref.
> 
> Jan

Good catch, I'll move both along with the error check (and I'll coordinate the update with Volodymyr). Thanks.


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 19:50:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 19:50:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622593.969578 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvNPt-0006Y3-Ma; Tue, 24 Oct 2023 19:50:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622593.969578; Tue, 24 Oct 2023 19:50: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 1qvNPt-0006Xw-JU; Tue, 24 Oct 2023 19:50:17 +0000
Received: by outflank-mailman (input) for mailman id 622593;
 Tue, 24 Oct 2023 19:50: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=gl3Y=GG=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qvNPs-0006Xa-Hs
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 19:50:16 +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 8c83b2cb-72a6-11ee-98d5-6d05b1d4d9a1;
 Tue, 24 Oct 2023 21:50:15 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by dfw.source.kernel.org (Postfix) with ESMTP id D445162C68;
 Tue, 24 Oct 2023 19:50:13 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id D6920C433C9;
 Tue, 24 Oct 2023 19:50: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: 8c83b2cb-72a6-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1698177013;
	bh=sD+wKaYV9cr8YiGTJkjAXbmIbEiqrRiC/KHzUWzo/RI=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=jEzE0Ie4Lbz1znfAZvk+sg/dLwiRc4TG0KONDSoq63OhVu4JqrDrXoffU19Zv1FRl
	 evbaXOawKAWG1flboB0BCpFqi5RCmxTrI0TkBzSk+qfyy+6QMoD2Wg/oQ56zXamhyl
	 cZoQ7lAV3RQ8b9HdgcXki5UHWaoGTCFe0ViLvgBrCo+M2zJ+DGDFPVtwFsptCBvQKO
	 RX/JvlDMHUgetQCnLvb+YYULW8xXtHlB7KdLm87+gKHYKo7/GS8wRWjvMOeQqP0um7
	 AzfM+3KaBcIMKjGMNXu8QpES1V1c94QqmvYINgCXFyWsWZsd8CB966Usn/rnKFi8mI
	 dknnJ4pyY0lmw==
Date: Tue, 24 Oct 2023 12:50:10 -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>, 
    Stefano Stabellini <sstabellini@kernel.org>, michal.orzel@amd.com, 
    xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, 
    consulting@bugseng.com, andrew.cooper3@citrix.com, roger.pau@citrix.com, 
    Wei Liu <wl@xen.org>, Jun Nakajima <jun.nakajima@intel.com>, 
    Kevin Tian <kevin.tian@intel.com>, xen-devel@lists.xenproject.org
Subject: Re: [XEN PATCH][for-4.19 v4 3/8] x86: add deviation comments for
 asm-only functions
In-Reply-To: <734cc13409b44f709649895d76d388e2@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2310241249080.271731@ubuntu-linux-20-04-desktop>
References: <cover.1698053876.git.nicola.vetrini@bugseng.com> <36d24b3a3e264f0e0b265b4f68d6432a143d64cd.1698053876.git.nicola.vetrini@bugseng.com> <a8370e98-1cb6-8fde-9458-e579047dd607@suse.com> <2d92ef1f753165e2fa9cc7c04c219217@bugseng.com>
 <52422128-156d-5d6c-46b2-261b1c7e85c0@suse.com> <734cc13409b44f709649895d76d388e2@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, 24 Oct 2023, Nicola Vetrini wrote:
> On 24/10/2023 10:14, Jan Beulich wrote:
> > On 24.10.2023 10:01, Nicola Vetrini wrote:
> > > On 24/10/2023 09:50, Jan Beulich wrote:
> > > > On 23.10.2023 11:56, Nicola Vetrini wrote:
> > > > > As stated in rules.rst, functions used only in asm code
> > > > > are allowed to have no prior declaration visible when being
> > > > > defined, hence these functions are deviated.
> > > > > This also fixes violations of MISRA C:2012 Rule 8.4.
> > > > > 
> > > > > Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
> > > > > Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
> > > > > ---
> > > > > Changes in v3:
> > > > > - added SAF deviations for vmx counterparts to svm functions.
> > > > 
> > > > Same comment regarding the R-b here as for patch 2.
> > > > 
> > > > > --- a/xen/arch/x86/hvm/svm/intr.c
> > > > > +++ b/xen/arch/x86/hvm/svm/intr.c
> > > > > @@ -123,6 +123,7 @@ static void svm_enable_intr_window(struct vcpu *v,
> > > > > struct hvm_intack intack)
> > > > >          vmcb, general1_intercepts | GENERAL1_INTERCEPT_VINTR);
> > > > >  }
> > > > > 
> > > > > +/* SAF-1-safe */
> > > > >  void svm_intr_assist(void)
> > > > >  {
> > > > >      struct vcpu *v = current;
> > > > 
> > > > Linux has the concept of "asmlinkage" for functions interfacing C and
> > > > assembly. Was it considered to use that - even if expanding to nothing
> > > > for all present architectures - as a way to annotate affected
> > > > definitions
> > > > in place of the SAF-*-safe comments?
> > > 
> > > It was proposed by Julien a while ago (I think it the thread on
> > > deviations.rst) to define
> > > a macro asmcall that expands to nothing, to mark all such functions.
> > > Right now, it's not
> > > strictly necessary (given that there are already some uses of SAF in
> > > Stefano's for-4.19 branch.
> > 
> > Can this then be revisited please before any such reaches staging?
> > 
> > Jan
> 
> I'll let Stefano answer this one.

Yes it can. If Nicola sends new patches I'll make sure to remove the
corresponding ones from for-4.19.

Nicola, you might want to send me privately the list of commits to take
out from for-4.19.


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 19:52:35 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 19:52:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622596.969588 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvNS5-00077X-2h; Tue, 24 Oct 2023 19:52:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622596.969588; Tue, 24 Oct 2023 19: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 1qvNS4-00077Q-Vp; Tue, 24 Oct 2023 19:52:32 +0000
Received: by outflank-mailman (input) for mailman id 622596;
 Tue, 24 Oct 2023 19:52: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=gl3Y=GG=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qvNS3-00077I-QA
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 19:52:31 +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 dcf6a3b0-72a6-11ee-98d5-6d05b1d4d9a1;
 Tue, 24 Oct 2023 21:52:30 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by sin.source.kernel.org (Postfix) with ESMTP id C47C6CE2302;
 Tue, 24 Oct 2023 19:52:26 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id F362AC433C7;
 Tue, 24 Oct 2023 19:52: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: dcf6a3b0-72a6-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1698177146;
	bh=AF/a56YM2zgu7bVas5scozwm6y7H3Nt0k7wj1+Tfu/0=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=DBXIlolrHUt/YOWQpT5HfsoqoaBhyprlwj8T99AnEy+qrLgCraaDe8+hgs+pdqsLb
	 dYWpWuOZksKwHJ6fR2PT8KZvgoeCEbDQ0TkUFU11897E5qattdi9zmPoAi/Ri6vo1z
	 6Cq4yt49WaWNlIzTGonJMkAPB3lNaYdob9HnlVh3+mZB1WanzVme8HjlPvNswzbwoF
	 pxgGYXSFJqcF2mVaGLlsubPhGqy1KzlCBJQ8sLqp6Yje19BnUlYla886QhZty+jbZq
	 UpRyU5sNsDbLxJCCeODuDlNidhUPYm0KUQw5DS5BbgfbqOwdVK73zSJAv8QJiDZY+o
	 n/ftge0fz256w==
Date: Tue, 24 Oct 2023 12:52:23 -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: Julien Grall <julien@xen.org>, Xen-devel <xen-devel@lists.xenproject.org>, 
    Henry Wang <Henry.Wang@arm.com>, 
    "michal.orzel@amd.com" <michal.orzel@amd.com>, 
    Julien Grall <jgrall@amazon.com>, 
    Stefano Stabellini <sstabellini@kernel.org>, 
    Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: Re: [PATCH for-4.19 v2] docs/arm: Document where Xen should be loaded
 in memory
In-Reply-To: <F5195B0D-C337-4221-9395-56F625497671@arm.com>
Message-ID: <alpine.DEB.2.22.394.2310241252140.271731@ubuntu-linux-20-04-desktop>
References: <20231024102858.29067-1-julien@xen.org> <F5195B0D-C337-4221-9395-56F625497671@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, 24 Oct 2023, Bertrand Marquis wrote:
> Hi Julien,
> 
> > On 24 Oct 2023, at 12:28, Julien Grall <julien@xen.org> wrote:
> > 
> > From: Julien Grall <jgrall@amazon.com>
> > 
> > In commit 9d267c049d92 ("xen/arm64: Rework the memory layout"),
> > we decided to require Xen to be loaded below 2 TiB to simplify
> > the logic to enable the MMU. The limit was decided based on
> > how known platform boot plus some slack.
> > 
> > We had a recent report that this is not sufficient on the AVA
> > platform with a old firmware [1]. But the restriction is not
> > going to change in Xen 4.18. So document the limit clearly
> > in docs/misc/arm/booting.txt.
> > 
> > [1] https://lore.kernel.org/20231013122658.1270506-3-leo.yan@linaro.org
> > 
> > Signed-off-by: Julien Grall <jgrall@amazon.com>
> > Reviewed-by: Michal Orzel <michal.orzel@amd.com>
> 
> Reviewed-by: Bertrand Marquis <bertrand.marquis@arm.com>

Added for for-4.19


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 20:00:06 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 20:00:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622602.969598 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvNZI-000079-SJ; Tue, 24 Oct 2023 20:00:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622602.969598; Tue, 24 Oct 2023 20:00: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 1qvNZI-000072-PO; Tue, 24 Oct 2023 20:00:00 +0000
Received: by outflank-mailman (input) for mailman id 622602;
 Tue, 24 Oct 2023 19: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=gl3Y=GG=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qvNZH-00006w-Af
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 19:59:59 +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 e72107e1-72a7-11ee-98d5-6d05b1d4d9a1;
 Tue, 24 Oct 2023 21:59:57 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by sin.source.kernel.org (Postfix) with ESMTP id 2747FCE2685;
 Tue, 24 Oct 2023 19:59:53 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 7093CC433C8;
 Tue, 24 Oct 2023 19:59: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: e72107e1-72a7-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1698177592;
	bh=LRP1JKuUgxjXv+KrVj7J0/ZO+NAYK0OJNi3nMcbgOEw=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=bbJhXxyS5UMBxt/wXUQThnsHZW2RDm6oNThD0LKHAN5sfnW5W/sOo85HUNvk6sT6X
	 c1iExPuJKL8a2EumLDm0Toa1SIIaesu7pmhRH7q9afzsZoNhx0z3FXfOJKKo7fIZGH
	 zAQU76K1vjC39pdmtqPoy1RWVP/E/v+Ii9VXQPHPuTVu/7QKiGWdoIkpkXNCY9imup
	 9lvYzso776aQE3Rme/nk7wQWPsy82xhOwiUrpgiFn5HflvMJ+nRR+b6FUeedPpFZQ4
	 KyuOOc6mrilPQwbqlhwxHJr+aTrp4ye5YTNUdZtdDkLSfKVkDSSBIeJIDnW/4bEIA1
	 UruyjYMFeDveA==
Date: Tue, 24 Oct 2023 12:59:49 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Jan Beulich <jbeulich@suse.com>
cc: Julien Grall <julien@xen.org>, 
    Stefano Stabellini <stefano.stabellini@amd.com>, 
    Simone Ballarin <simone.ballarin@bugseng.com>, consulting@bugseng.com, 
    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>, 
    Doug Goldstein <cardoe@cardoe.com>, 
    Bertrand Marquis <bertrand.marquis@arm.com>, 
    Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, 
    xen-devel@lists.xenproject.org, 
    Stefano Stabellini <sstabellini@kernel.org>
Subject: Re: [XEN PATCH v2 00/10] address violations of MISRA C:2012 Directive
 4.10
In-Reply-To: <c1fa350f-6f49-e2b1-0cda-dec99df415ae@suse.com>
Message-ID: <alpine.DEB.2.22.394.2310241254480.271731@ubuntu-linux-20-04-desktop>
References: <cover.1694510856.git.simone.ballarin@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>
 <725f5193-c8d3-1bc8-cd62-2a2b1b5ecc01@suse.com> <alpine.DEB.2.22.394.2310171709310.965337@ubuntu-linux-20-04-desktop> <ead797ed-84cc-fb70-5259-7e11211d049e@suse.com> <alpine.DEB.2.22.394.2310181739270.965337@ubuntu-linux-20-04-desktop>
 <e642bc2a-cefa-4ee4-6394-3c10102e8164@suse.com> <alpine.DEB.2.22.394.2310190915590.1945130@ubuntu-linux-20-04-desktop> <6374f0f4-d58f-83ca-6eb3-d5a9fcbac525@suse.com> <alpine.DEB.2.22.394.2310201622160.2356865@ubuntu-linux-20-04-desktop>
 <36e6dd08-918c-9791-0dab-ca75d4b98d7e@suse.com> <alpine.DEB.2.22.394.2310231346370.3516@ubuntu-linux-20-04-desktop> <af4a86bc-40d3-4363-adc8-30981652cd2b@xen.org> <c1fa350f-6f49-e2b1-0cda-dec99df415ae@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, 24 Oct 2023, Jan Beulich wrote:
> On 24.10.2023 15:31, Julien Grall wrote:
> > Hi Stefano,
> > 
> > On 23/10/2023 21:47, Stefano Stabellini wrote:
> >> On Mon, 23 Oct 2023, Jan Beulich wrote:
> >>> On 21.10.2023 01:26, Stefano Stabellini wrote:
> >>>> On Fri, 20 Oct 2023, Jan Beulich wrote:
> >>>>> On 19.10.2023 18:19, Stefano Stabellini wrote:
> >>>>>> On Thu, 19 Oct 2023, Jan Beulich wrote:
> >>>>>>> On 19.10.2023 02:44, Stefano Stabellini wrote:
> >>>>>>>> On Wed, 18 Oct 2023, Jan Beulich wrote:
> >>>>>>>>> On 18.10.2023 02:48, Stefano Stabellini wrote:
> >>>>>>>>>> On Mon, 16 Oct 2023, Jan Beulich wrote:
> >>>>>>>>>>> On 29.09.2023 00:24, Stefano Stabellini wrote:
> >>>>>>>>>>>> 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:
> >>>>>>>>>>>
> >>>>>>>>>>> ... "least resistance" won't gain us much, as hardly any guards don't
> >>>>>>>>>>> start with an underscore.
> >>>>>>>>>>>
> >>>>>>>>>>>> - 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__ ?
> >>>>>>>>>>>
> >>>>>>>>>>> There are no headers in xen/include/. For (e.g.) xen/include/xen/ we
> >>>>>>>>>>> may go with XEN_BLAH_H; whether ASM prefixes are needed I'm not sure;
> >>>>>>>>>>> we could go with just ARM_BLAH_H and X86_BLAH_H?
> >>>>>>>>>>>
> >>>>>>>>>>> The primary question though is (imo) how to deal with private headers,
> >>>>>>>>>>> such that the risk of name collisions is as small as possible.
> >>>>>>>>>>
> >>>>>>>>>> Looking at concrete examples under xen/include/xen:
> >>>>>>>>>> xen/include/xen/mm.h __XEN_MM_H__
> >>>>>>>>>> xen/include/xen/dm.h __XEN_DM_H__
> >>>>>>>>>> xen/include/xen/hypfs.h __XEN_HYPFS_H__
> >>>>>>>>>>
> >>>>>>>>>> So I think we should do for consistency:
> >>>>>>>>>> xen/include/xen/blah.h __XEN_BLAH_H__
> >>>>>>>>>>
> >>>>>>>>>> Even if we know the leading underscore are undesirable, in this case I
> >>>>>>>>>> would prefer consistency.
> >>>>>>>>>
> >>>>>>>>> I'm kind of okay with that. FTAOD - here and below you mean to make this
> >>>>>>>>> one explicit first exception from the "no new leading underscores" goal,
> >>>>>>>>> for newly added headers?
> >>>>>>>>
> >>>>>>>> Yes. The reason is for consistency with the existing header files.
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>> On the other hand looking at ARM examples:
> >>>>>>>>>> xen/arch/arm/include/asm/traps.h __ASM_ARM_TRAPS__
> >>>>>>>>>> xen/arch/arm/include/asm/time.h __ARM_TIME_H__
> >>>>>>>>>> xen/arch/arm/include/asm/sysregs.h __ASM_ARM_SYSREGS_H
> >>>>>>>>>> xen/arch/arm/include/asm/io.h _ASM_IO_H
> >>>>>>>>>>
> >>>>>>>>>> And also looking at x86 examples:
> >>>>>>>>>> xen/arch/x86/include/asm/paging.h _XEN_PAGING_H
> >>>>>>>>>> xen/arch/x86/include/asm/p2m.h _XEN_ASM_X86_P2M_H
> >>>>>>>>>> xen/arch/x86/include/asm/io.h _ASM_IO_H
> >>>>>>>>>>
> >>>>>>>>>> Thet are very inconsistent.
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>> So for ARM and X86 headers I think we are free to pick anything we want,
> >>>>>>>>>> including your suggested ARM_BLAH_H and X86_BLAH_H. Those are fine by
> >>>>>>>>>> me.
> >>>>>>>>>
> >>>>>>>>> To be honest, I'd prefer a global underlying pattern, i.e. if common
> >>>>>>>>> headers are "fine" to use leading underscores for guards, arch header
> >>>>>>>>> should, too.
> >>>>>>>>
> >>>>>>>> I am OK with that too. We could go with:
> >>>>>>>> __ASM_ARM_BLAH_H__
> >>>>>>>> __ASM_X86_BLAH_H__
> >>>>>>>>
> >>>>>>>> I used "ASM" to make it easier to differentiate with the private headers
> >>>>>>>> below. Also the version without "ASM" would work but it would only
> >>>>>>>> differ with the private headers in terms of leading underscores. I
> >>>>>>>> thought that also having "ASM" would help readability and help avoid
> >>>>>>>> confusion.
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>> For private headers such as:
> >>>>>>>>>> xen/arch/arm/vuart.h __ARCH_ARM_VUART_H__
> >>>>>>>>>> xen/arch/arm/decode.h __ARCH_ARM_DECODE_H_
> >>>>>>>>>> xen/arch/x86/mm/p2m.h __ARCH_MM_P2M_H__
> >>>>>>>>>> xen/arch/x86/hvm/viridian/private.h X86_HVM_VIRIDIAN_PRIVATE_H
> >>>>>>>>>>
> >>>>>>>>>> More similar but still inconsistent. I would go with ARCH_ARM_BLAH_H and
> >>>>>>>>>> ARCH_X86_BLAH_H for new headers.
> >>>>>>>>>
> >>>>>>>>> I'm afraid I don't like this, as deeper paths would lead to unwieldy
> >>>>>>>>> guard names. If we continue to use double-underscore prefixed names
> >>>>>>>>> in common and arch headers, why don't we demand no leading underscores
> >>>>>>>>> and no path-derived prefixes in private headers? That'll avoid any
> >>>>>>>>> collisions between the two groups.
> >>>>>>>>
> >>>>>>>> OK, so for private headers:
> >>>>>>>>
> >>>>>>>> ARM_BLAH_H
> >>>>>>>> X86_BLAH_H
> >>>>>>>>
> >>>>>>>> What that work for you?
> >>>>>>>
> >>>>>>> What are the ARM_ and X86_ prefixes supposed to indicate here? Or to ask
> >>>>>>> differently, how would you see e.g. common/decompress.h's guard named?
> >>>>>>
> >>>>>> I meant that:
> >>>>>>
> >>>>>> xen/arch/arm/blah.h would use ARM_BLAH_H
> >>>>>> xen/arch/x86/blah.h would use X86_BLAH_H
> >>>>>>
> >>>>>> You have a good question on something like xen/common/decompress.h and
> >>>>>> xen/common/event_channel.h.  What do you think about:
> >>>>>>
> >>>>>> COMMON_BLAH_H, so specifically COMMON_DECOMPRESS_H
> >>>>>>
> >>>>>> otherwise:
> >>>>>>
> >>>>>> XEN_BLAH_H, so specifically XEN_DECOMPRESS_H
> >>>>>>
> >>>>>> I prefer COMMON_BLAH_H but I think both versions are OK.
> >>>>>
> >>>>> IOW you disagree with my earlier "... and no path-derived prefixes",
> >>>>> and you prefer e.g. DRIVERS_PASSTHROUGH_VTD_DMAR_H as a consequence?
> >>>>> FTAOD my earlier suggestion was simply based on the observation that
> >>>>> the deeper the location of a header in the tree, the more unwieldy
> >>>>> its guard name would end up being if path prefixes were to be used.
> >>>>
> >>>> I don't have a strong opinion on "path-derived prefixes". I prefer
> >>>> consistency and easy-to-figure-out guidelines over shortness.
> > 
> > We adopted the MISRA Rule 5.4 which imposed us a limit (40 for Xen) on 
> > the number of characters for macros. AFAIU, this would apply to guards.
> > 
> > In the example provided by Jan (DRIVERS_PASSTHROUGH_VTD_DMAR_H), this is 
> > already 31 characters. So this is quite close to the limit.
> > 
> >>>>
> >>>> The advantage of a path-derived prefix is that it is trivial to figure
> >>>> out at first glance. If we can come up with another system that is also
> >>>> easy then fine. Do you have a suggestion? If so, sorry I missed it.
> >>>
> >>> Well, I kind of implicitly suggested "no path derived prefixes for private
> >>> headers", albeit realizing that there's a chance then of guards colliding.
> >>> I can't think of a good scheme which would fit all goals (no collisions,
> >>> uniformity, and not unduly long).
> >>
> >> Here I think we would benefit from a third opinion. Julien? Anyone?
> > 
> > Just to confirm, the opinion is only for private headers. You have an 
> > agreement for the rest, is it correct?

Yes


> > If so, then I think we need to have shorter names for guard to avoid 
> > hitting the 40 characters limit. I can't think of a way to have a common 
> > scheme between private and common headers. So I would consider to have a 
> > separate scheme.
> > 
> > I am not sure if you or Jan already proposed an alternative scheme.
> 
> Well, my suggestion was to derive from just the file name (no path
> components) for them. But I pointed out that this may lead to collisions
> when two or more private headers of the same name exist, and a CU ends
> up wanting to include any two of them. Adding in the leaf-most path
> component only might get us far enough to avoid collisions in practice,
> while at the same time not resulting in overly long guard names.

If I understood correctly I am fine with that. To make sure we are all
on the same page, can you provide a couple of samples?


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 20:27:59 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 20:27:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622608.969608 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvO06-0005um-US; Tue, 24 Oct 2023 20:27:42 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622608.969608; Tue, 24 Oct 2023 20:27: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 1qvO06-0005uf-QW; Tue, 24 Oct 2023 20:27:42 +0000
Received: by outflank-mailman (input) for mailman id 622608;
 Tue, 24 Oct 2023 20:27: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=gl3Y=GG=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qvO05-0005uY-8p
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 20:27:41 +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 c49a6bed-72ab-11ee-9b0e-b553b5be7939;
 Tue, 24 Oct 2023 22:27:36 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by dfw.source.kernel.org (Postfix) with ESMTP id 828EC62CB1;
 Tue, 24 Oct 2023 20:27:35 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id C033BC433C7;
 Tue, 24 Oct 2023 20:27: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: c49a6bed-72ab-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1698179255;
	bh=cHKTnmUeR2VrjWc/OSPd2rnr8CJlC0jZrj5hRpfZyeQ=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=RSMnw0I/FJzGrsPfkbqaPDqIGourQE6p2UKn3GCnFnkCYAanPtD1dQE1T3ECFnQYU
	 /daOUh3NL9tppTMrLBiImj5PRIyQ/hPvcpDp7mppnWsrmAiACJ/f9TtUHztOLuogLN
	 rtPwr4huHo+K96smE8Bhj2cv8TnH0zxaO9kaVfL+ShP0rRsQK423BmXfkxUufPwONa
	 WyUGIc22PBWet9RrHHHxnJZfmsGujmJCk4bhWwIoJa6BeRtOPnzGkbtvnWsaUX6XAI
	 cEWTYzEQd3xzi7SvAP2IWGuzMSgWjCWc5ZN4490/sfQRPZq+9CbX2oP5hT56Mhs+Un
	 TdCVWvc5OqqMw==
Date: Tue, 24 Oct 2023 13:27:32 -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.cooper3@citrix.com, roger.pau@citrix.com, 
    Wei Liu <wl@xen.org>, xen-devel@lists.xenproject.org
Subject: Re: [RFC 1/4] x86/ioemul: address MISRA C:2012 Rule 9.3
In-Reply-To: <60e26ad6-7366-2604-e9b2-ed401cee6e73@suse.com>
Message-ID: <alpine.DEB.2.22.394.2310241317030.271731@ubuntu-linux-20-04-desktop>
References: <cover.1698155925.git.nicola.vetrini@bugseng.com> <76c9f78179a8bb5b4f99b34f163933394f79066c.1698155925.git.nicola.vetrini@bugseng.com> <60e26ad6-7366-2604-e9b2-ed401cee6e73@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, 24 Oct 2023, Jan Beulich wrote:
> On 24.10.2023 16:31, Nicola Vetrini wrote:
> > Partially explicitly initalized .matches arrays result in violations
> > of Rule 9.3; this is resolved by using designated initializers,
> > which is permitted by the Rule.
> > 
> > Mechanical changes.
> > 
> > Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
> 
> While not overly bad, I'm still not really seeing the improvement.
> Yet aiui changes induced by Misra are supposed to improve things in
> some direction?
 
I think the improvement is clarity, in the sense that the designated
initializers make it clearer that the array may be sparsely initialized
and that the remaining elements should be initialized to zero
automatically.
 

> > --- a/xen/arch/x86/ioport_emulate.c
> > +++ b/xen/arch/x86/ioport_emulate.c
> > @@ -44,57 +44,57 @@ static const struct dmi_system_id __initconstrel ioport_quirks_tbl[] = {
> >      {
> >          .ident = "HP ProLiant DL3xx",
> >          .matches = {
> > -            DMI_MATCH(DMI_BIOS_VENDOR, "HP"),
> > -            DMI_MATCH(DMI_PRODUCT_NAME, "ProLiant DL3"),
> > +            [0] = DMI_MATCH(DMI_BIOS_VENDOR, "HP"),
> > +            [1] = DMI_MATCH(DMI_PRODUCT_NAME, "ProLiant DL3"),
> >          },
> >      },
> >      {
> >          .ident = "HP ProLiant DL5xx",
> >          .matches = {
> > -            DMI_MATCH(DMI_BIOS_VENDOR, "HP"),
> > -            DMI_MATCH(DMI_PRODUCT_NAME, "ProLiant DL5"),
> > +            [0] = DMI_MATCH(DMI_BIOS_VENDOR, "HP"),
> > +            [1] = DMI_MATCH(DMI_PRODUCT_NAME, "ProLiant DL5"),
> >          },
> >      },
> >      {
> >          .ident = "HP ProLiant DL7xx",
> >          .matches = {
> > -            DMI_MATCH(DMI_BIOS_VENDOR, "HP"),
> > -            DMI_MATCH(DMI_PRODUCT_NAME, "ProLiant DL7"),
> > +            [0] = DMI_MATCH(DMI_BIOS_VENDOR, "HP"),
> > +            [1] = DMI_MATCH(DMI_PRODUCT_NAME, "ProLiant DL7"),
> >          },
> >      },
> >      {
> >          .ident = "HP ProLiant ML3xx",
> >          .matches = {
> > -            DMI_MATCH(DMI_BIOS_VENDOR, "HP"),
> > -            DMI_MATCH(DMI_PRODUCT_NAME, "ProLiant ML3"),
> > +            [0] = DMI_MATCH(DMI_BIOS_VENDOR, "HP"),
> > +            [1] = DMI_MATCH(DMI_PRODUCT_NAME, "ProLiant ML3"),
> >          },
> >      },
> >      {
> >          .ident = "HP ProLiant ML5xx",
> >          .matches = {
> > -            DMI_MATCH(DMI_BIOS_VENDOR, "HP"),
> > -            DMI_MATCH(DMI_PRODUCT_NAME, "ProLiant ML5"),
> > +            [0] = DMI_MATCH(DMI_BIOS_VENDOR, "HP"),
> > +            [1] = DMI_MATCH(DMI_PRODUCT_NAME, "ProLiant ML5"),
> >          },
> >      },
> >      {
> >          .ident = "HP ProLiant BL2xx",
> >          .matches = {
> > -            DMI_MATCH(DMI_BIOS_VENDOR, "HP"),
> > -            DMI_MATCH(DMI_PRODUCT_NAME, "ProLiant BL2"),
> > +            [0] = DMI_MATCH(DMI_BIOS_VENDOR, "HP"),
> > +            [1] = DMI_MATCH(DMI_PRODUCT_NAME, "ProLiant BL2"),
> >          },
> >      },
> >      {
> >          .ident = "HP ProLiant BL4xx",
> >          .matches = {
> > -            DMI_MATCH(DMI_BIOS_VENDOR, "HP"),
> > -            DMI_MATCH(DMI_PRODUCT_NAME, "ProLiant BL4"),
> > +            [0] = DMI_MATCH(DMI_BIOS_VENDOR, "HP"),
> > +            [1] = DMI_MATCH(DMI_PRODUCT_NAME, "ProLiant BL4"),
> >          },
> >      },
> >      {
> >          .ident = "HP ProLiant BL6xx",
> >          .matches = {
> > -            DMI_MATCH(DMI_BIOS_VENDOR, "HP"),
> > -            DMI_MATCH(DMI_PRODUCT_NAME, "ProLiant BL6"),
> > +            [0] = DMI_MATCH(DMI_BIOS_VENDOR, "HP"),
> > +            [1] = DMI_MATCH(DMI_PRODUCT_NAME, "ProLiant BL6"),
> >          },
> >      },
> >      { }
> > --
> > 2.34.1
> 


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 20:31:03 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 20:31:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622611.969618 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvO3H-0007Iw-C6; Tue, 24 Oct 2023 20:30:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622611.969618; Tue, 24 Oct 2023 20:30: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 1qvO3H-0007Ip-7w; Tue, 24 Oct 2023 20:30:59 +0000
Received: by outflank-mailman (input) for mailman id 622611;
 Tue, 24 Oct 2023 20: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=gl3Y=GG=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qvO3F-0007Ih-UO
 for xen-devel@lists.xenproject.org; Tue, 24 Oct 2023 20:30:57 +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 3ae65c73-72ac-11ee-98d5-6d05b1d4d9a1;
 Tue, 24 Oct 2023 22:30:56 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by sin.source.kernel.org (Postfix) with ESMTP id EEB5ACE2FCB;
 Tue, 24 Oct 2023 20:30:50 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 4E4E9C433C8;
 Tue, 24 Oct 2023 20:30: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: 3ae65c73-72ac-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1698179450;
	bh=R9U1HkyL9AM9BebEvSfj8VjHrOYUWaXJd8O0/8aEF1o=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=bPe4qCI3Lj9VfkYpHuNgYbzweoSen7n8twk5LeFs7uIEdTeWnZVSScrjZk6qoPy/g
	 ANQ3i3U3z9KROi2AlWJHX99T2Oe/tCH8Pxy9bhrTTbQle22lw04D1CVmDYSWemZAhf
	 0Zoky9awcFokrm1SWn0/aKmghkGdoWKvSPLTQluTytu44amypYwJoov5VBdUommS1K
	 dAn6W9Oqb31mV/ua/FF93ZQV+VLi4rr886nkwJiUN6Yxalqq4xdisEWyWx0okRq900
	 GL1JLiq3c/naejHhQUHa5If1wstzIGLwc2/cIS8lkV9ehhcrl/u5O86i0lCkVTN1pW
	 YGOJcv/CZht/A==
Date: Tue, 24 Oct 2023 13:30:47 -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, Simone Ballarin <simone.ballarin@bugseng.com>, 
    Doug Goldstein <cardoe@cardoe.com>, 
    George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>, 
    Wei Liu <wl@xen.org>
Subject: Re: [XEN PATCH][for-4.19 v3] xen: Add deviations for MISRA C:2012
 Rule 7.1
In-Reply-To: <5e0f1bcd7b4325141e64a3c2d581034956b42293.1698136547.git.nicola.vetrini@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2310241329390.271731@ubuntu-linux-20-04-desktop>
References: <5e0f1bcd7b4325141e64a3c2d581034956b42293.1698136547.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 Tue, 24 Oct 2023, Nicola Vetrini wrote:
> As specified in rules.rst, these constants can be used
> in the code.
> 
> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
> ---
> Changes in v2:
> - replace some SAF deviations with configurations
> Changes in v3:
> - refine configurations and justifications
> ---
>  automation/eclair_analysis/ECLAIR/deviations.ecl | 10 ++++++----
>  docs/misra/deviations.rst                        |  5 +++++
>  docs/misra/safe.json                             |  8 ++++++++
>  xen/arch/x86/hvm/svm/emulate.c                   |  6 +++---
>  xen/common/inflate.c                             |  4 ++--
>  5 files changed, 24 insertions(+), 9 deletions(-)
> 
> diff --git a/automation/eclair_analysis/ECLAIR/deviations.ecl b/automation/eclair_analysis/ECLAIR/deviations.ecl
> index fa56e5c00a27..ea5e0eb1813f 100644
> --- a/automation/eclair_analysis/ECLAIR/deviations.ecl
> +++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
> @@ -85,10 +85,12 @@ conform to the directive."
>  # Series 7.
>  #
>  
> --doc_begin="Usage of the following constants is safe, since they are given as-is
> -in the inflate algorithm specification and there is therefore no risk of them
> -being interpreted as decimal constants."
> --config=MC3R1.R7.1,literals={safe, "^0(007|37|070|213|236|300|321|330|331|332|333|334|335|337|371)$"}
> +-doc_begin="It is safe to use certain octal constants the way they are defined in
> +specifications, manuals, and algorithm descriptions."
> +-file_tag+={x86_svm_h, "^xen/arch/x86/hvm/svm/svm\\.h$"}
> +-file_tag+={x86_emulate_c, "^xen/arch/x86/hvm/svm/emulate\\.c$"}
> +-config=MC3R1.R7.1,reports+={safe, "any_area(any_loc(any_exp(file(x86_svm_h)&&macro(^INSTR_ENC$))))"}
> +-config=MC3R1.R7.1,reports+={safe, "any_area(text(^.*octal-ok.*$)&&any_loc(any_exp(file(x86_emulate_c)&&macro(^MASK_EXTR$))))"}
>  -doc_end
>  
>  -doc_begin="Violations in files that maintainers have asked to not modify in the
> diff --git a/docs/misra/deviations.rst b/docs/misra/deviations.rst
> index 8511a189253b..26c6dbbc9ffe 100644
> --- a/docs/misra/deviations.rst
> +++ b/docs/misra/deviations.rst
> @@ -90,6 +90,11 @@ Deviations related to MISRA C:2012 Rules:
>           - __emulate_2op and __emulate_2op_nobyte
>           - read_debugreg and write_debugreg
>  
> +   * - R7.1
> +     - It is safe to use certain octal constants the way they are defined in
> +       specifications, manuals, and algorithm descriptions.

I think we should add that these cases have "octal-ok" as a in-code
comment. Everything else looks OK so this small change could be done on
commit.

Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>


> +     - Tagged as `safe` for ECLAIR.
> +
>     * - R7.2
>       - Violations caused by __HYPERVISOR_VIRT_START are related to the
>         particular use of it done in xen_mk_ulong.
> diff --git a/docs/misra/safe.json b/docs/misra/safe.json
> index 39c5c056c7d4..7ea47344ffcc 100644
> --- a/docs/misra/safe.json
> +++ b/docs/misra/safe.json
> @@ -20,6 +20,14 @@
>          },
>          {
>              "id": "SAF-2-safe",
> +            "analyser": {
> +                "eclair": "MC3R1.R7.1"
> +            },
> +            "name": "Rule 7.1: constants defined in specifications, manuals, and algorithm descriptions",
> +            "text": "It is safe to use certain octal constants the way they are defined in specifications, manuals, and algorithm descriptions."
> +        },
> +        {
> +            "id": "SAF-3-safe",
>              "analyser": {},
>              "name": "Sentinel",
>              "text": "Next ID to be used"
> diff --git a/xen/arch/x86/hvm/svm/emulate.c b/xen/arch/x86/hvm/svm/emulate.c
> index aa2c61c433b3..93ac1d3435f9 100644
> --- a/xen/arch/x86/hvm/svm/emulate.c
> +++ b/xen/arch/x86/hvm/svm/emulate.c
> @@ -90,9 +90,9 @@ unsigned int svm_get_insn_len(struct vcpu *v, unsigned int instr_enc)
>          if ( !instr_modrm )
>              return emul_len;
>  
> -        if ( modrm_mod       == MASK_EXTR(instr_modrm, 0300) &&
> -             (modrm_reg & 7) == MASK_EXTR(instr_modrm, 0070) &&
> -             (modrm_rm  & 7) == MASK_EXTR(instr_modrm, 0007) )
> +        if ( modrm_mod       == MASK_EXTR(instr_modrm, 0300) && /* octal-ok */
> +             (modrm_reg & 7) == MASK_EXTR(instr_modrm, 0070) && /* octal-ok */
> +             (modrm_rm  & 7) == MASK_EXTR(instr_modrm, 0007) )  /* octal-ok */
>              return emul_len;
>      }
>  
> diff --git a/xen/common/inflate.c b/xen/common/inflate.c
> index 8fa4b96d12a3..be6a9115187e 100644
> --- a/xen/common/inflate.c
> +++ b/xen/common/inflate.c
> @@ -1201,8 +1201,8 @@ static int __init gunzip(void)
>      magic[1] = NEXTBYTE();
>      method   = NEXTBYTE();
>  
> -    if (magic[0] != 037 ||
> -        ((magic[1] != 0213) && (magic[1] != 0236))) {
> +    /* SAF-2-safe */
> +    if (magic[0] != 037 || ((magic[1] != 0213) && (magic[1] != 0236))) {
>          error("bad gzip magic numbers");
>          return -1;
>      }
> -- 
> 2.34.1
> 


From xen-devel-bounces@lists.xenproject.org Tue Oct 24 22:17:04 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 24 Oct 2023 22:17:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622616.969628 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvPhg-0007I4-Mb; Tue, 24 Oct 2023 22:16:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622616.969628; Tue, 24 Oct 2023 22: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 1qvPhg-0007Hx-IF; Tue, 24 Oct 2023 22:16:48 +0000
Received: by outflank-mailman (input) for mailman id 622616;
 Tue, 24 Oct 2023 22:16: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 1qvPhg-0007Hn-1r; Tue, 24 Oct 2023 22:16: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 1qvPhf-0005cg-Nn; Tue, 24 Oct 2023 22:16: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 1qvPhf-0004jE-Ev; Tue, 24 Oct 2023 22:16:47 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qvPhf-0006ud-EO; Tue, 24 Oct 2023 22:16: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=XNTwBc3qj0LFI+TsSKPRbYrtN5Qqmxxhqs10vrVgTds=; b=pyxzeGfs21+fQo30158j98A/rX
	HBnQoKOElBfLuEyKN0bNtTLdTvESXXGRey9tMCs2rhc1h1kSVdcMfQOrXcVBazqBs9FrTj+lnteGQ
	jtklhTb+Tf9WIzephCizevGv7mWJzXCvpJKaHzDAJ8ScJATwCcRyrqTziqBhuXhyR5YM=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183517-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 183517: 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=d9f07b06cfc967e128371c11f56699cf5ee40b43
X-Osstest-Versions-That:
    xen=bad1ac345b1910b820b8a703ad1b9f66412ea844
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 24 Oct 2023 22:16:47 +0000

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

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                  d9f07b06cfc967e128371c11f56699cf5ee40b43
baseline version:
 xen                  bad1ac345b1910b820b8a703ad1b9f66412ea844

Last test of basis   183447  2023-10-20 15:00:26 Z    4 days
Testing same since   183517  2023-10-24 19:02:08 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Henry Wang <Henry.Wang@arm.com>
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.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
   bad1ac345b..d9f07b06cf  d9f07b06cfc967e128371c11f56699cf5ee40b43 -> smoke


From xen-devel-bounces@lists.xenproject.org Wed Oct 25 01:15:26 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 01:15:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622628.969638 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvSUI-0000Xx-Sc; Wed, 25 Oct 2023 01:15:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622628.969638; Wed, 25 Oct 2023 01: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 1qvSUI-0000Xq-PI; Wed, 25 Oct 2023 01:15:10 +0000
Received: by outflank-mailman (input) for mailman id 622628;
 Wed, 25 Oct 2023 01: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=/NE+=GH=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qvSUI-0000Xi-36
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 01:15:10 +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 ee4ee3ad-72d3-11ee-98d5-6d05b1d4d9a1;
 Wed, 25 Oct 2023 03:15:07 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by sin.source.kernel.org (Postfix) with ESMTP id D3F42CE34D2;
 Wed, 25 Oct 2023 01:15:02 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id F41BDC433C8;
 Wed, 25 Oct 2023 01:15: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: ee4ee3ad-72d3-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1698196502;
	bh=WLDxZTCWWsuPXyE6piV7qfhC7FOWlxFdzHGgbi1qn/I=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=BA35kB2X1uFxuMqbuLRmJHeB0VOY3DSsH35aF+uNTyFbwmiR3JORLC7hfsUMEWhci
	 FtLL0FOv6IFHET0bI/W/APBBGvDC8TIOjGg/29VGjNlSy+sptBHRtaNZ/+1X1CQPgG
	 9N4Nc+IiSeemsH52xSNn2VyNcMilvoGe+H8MLc+znL+SMbsGdT6vU/8HCNveBXu08S
	 8sYZHEbvB9PUHtzCnDeb4rQ9FM0htT1IHm6uGN9OsEyaHZyfv1RlMCvSSuZPkfZN6J
	 92bWam/ieT8rmrAbnA5XdRWe8VDveP65330S9EyFbOVq93eXDjpG2pZm9uluzxRyGV
	 FhsSGxcCk1RTQ==
Date: Tue, 24 Oct 2023 18:15:00 -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>, julien@xen.org, 
    bertrand.marquis@arm.com, andrew.cooper3@citrix.com, roger.pau@citrix.com, 
    george.dunlap@citrix.com, xen-devel@lists.xenproject.org
Subject: Re: [PATCH] misra: add R14.4 R21.1 R21.2
In-Reply-To: <967caedc-3d10-dee4-6614-1b9dcc0c1c66@suse.com>
Message-ID: <alpine.DEB.2.22.394.2310241753220.271731@ubuntu-linux-20-04-desktop>
References: <alpine.DEB.2.22.394.2310231628500.3516@ubuntu-linux-20-04-desktop> <967caedc-3d10-dee4-6614-1b9dcc0c1c66@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, 24 Oct 2023, Jan Beulich wrote:
> On 24.10.2023 01:31, Stefano Stabellini wrote:> --- a/docs/misra/rules.rst
> > +++ b/docs/misra/rules.rst
> > @@ -422,6 +422,13 @@ maintainers if you want to suggest a change.
> >  
> >         while(0) and while(1) and alike are allowed.
> >  
> > +   * - `Rule 14.4 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/R_14_04.c>`_
> > +     - Required
> > +     - The controlling expression of an if statement and the controlling
> > +       expression of an iteration-statement shall have essentially
> > +       Boolean type
> > +     - Implicit conversions to boolean are allowed
> 
> What, if anything, remains of this rule with this exception?

Not much, but there is a difference between following a rule with a
deviation (in this case we allow implicit conversions of integers and
pointers to bool because we claim all Xen developers know how they work)
and not follow the rule at all, at least for the assessors. Also,
anything that doesn't implicitly convert to a boolean is not allowed,
although I guess probably it wouldn't compile either.

We could also try to find a better wording to reduce the deviation only
to integer and pointers. Any suggestions?


> > @@ -479,6 +486,24 @@ maintainers if you want to suggest a change.
> >         they are related
> >       -
> >  
> > +   * - `Rule 21.1 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/R_21_01.c>`_
> > +     - Required
> > +     - #define and #undef shall not be used on a reserved identifier or
> > +       reserved macro name
> > +     - No identifiers should start with _BUILTIN to avoid clashes with
> 
> DYM "__builtin_"? Also gcc introduces far more than just __builtin_...()
> into the name space.

Yes agreed, but in my notes that is the only one I wrote down. I recall
that the complete list is a couple of pages long, I don't think we can
possibly add it here in full and if I recall it is not available in the
GCC documentation. More on this below.


> > +       GCC reserved identifiers. In general, all identifiers starting with
> > +       an underscore are reserved, and are best avoided.
> 
> This isn't precise enough. A leading underscore followed by a lower-case
> letter or a number is okay to use for file-scope symbols. Imo we should
> not aim at removing such uses, but rather encourage more use.

More on this below


> In this context, re-reading some of the C99 spec, I have to realize that
> my commenting on underscore-prefixed macro parameters (but not underscore-
> prefixed locals in macros) was based on ambiguous information in the spec.
> I will try to remember to not comment on such anymore going forward.
>
> > However, Xen
> > +       makes extensive usage of leading underscores in header guards,
> > +       bitwise manipulation functions, and a few other places. They are
> > +       considered safe as checks have been done against the list of
> > +       GCC's reserved identifiers. They don't need to be replaced.
> 
> This leaves quite vague what wants and what does not want replacing, nor
> what might be okay to introduce subsequently despite violation this rule.
 
My goals here were to convey the following:
1) avoid clashes with gcc reserved identifiers
2) in general try to reduce the usage of leading underscores except for
   known existing locations (header guards, bitwise manipulation
   functions)

However, for 1) the problem is that we don't have the full list and for
2) the problem is that it is too vague.

Instead I suggest we do the following:
- we get the full list of gcc reserved identifiers from Roberto and we
  commit it to xen.git as a seprate file under docs/misra
- we reference the list here saying one should avoid clashes with those
  identifiers as reserved by gcc


And if we can find a clear general comment about the usage of leading
underscores in Xen I am happy to add it too (e.g. header guards), but
from MISRA point of view the above is sufficient.


From xen-devel-bounces@lists.xenproject.org Wed Oct 25 04:33:34 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 04:33:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622637.969647 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvVZw-0005gg-KE; Wed, 25 Oct 2023 04:33:12 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622637.969647; Wed, 25 Oct 2023 04:33: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 1qvVZw-0005gZ-HB; Wed, 25 Oct 2023 04:33:12 +0000
Received: by outflank-mailman (input) for mailman id 622637;
 Wed, 25 Oct 2023 04:33: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 1qvVZu-0005gN-P0; Wed, 25 Oct 2023 04:33: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 1qvVZu-0004rS-IW; Wed, 25 Oct 2023 04:33: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 1qvVZu-0004r0-09; Wed, 25 Oct 2023 04:33:10 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qvVZt-0007G1-Uf; Wed, 25 Oct 2023 04: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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=EzGLwB69MP1xIQZW7am45oVGrjF9dp8G/KNUgCNS4/I=; b=vdYJc60u59S1doT83n/hmBzMoU
	oiwo/UgM5MbkKBH3uwQYmeaJvB6cvdkEDlJy/jkcVkTKYjml/R1NS9l33ZZBV02WIl2GpSAGgoCRo
	zbN+PYjATbGJsBmJdimYmlqAVNtJICnv6Bb13veUYlBRO4K6DzkBxDLJe/FWUxQQHoHY=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183518-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 183518: tolerable trouble: fail/pass/starved - PUSHED
X-Osstest-Failures:
    linux-linus:test-armhf-armhf-xl-credit1:host-ping-check-xen:fail:heisenbug
    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-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-armhf-armhf-libvirt: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-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl: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:saverestore-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-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-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-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-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-raw:migrate-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-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-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds: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-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-amd64-amd64-dom0pvh-xl-amd:hosts-allocate:starved:nonblocking
X-Osstest-Versions-This:
    linux=4f82870119a46b0d04d91ef4697ac4977a255a9d
X-Osstest-Versions-That:
    linux=d88520ad73b79e71e3ddf08de335b8520ae41c5c
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 25 Oct 2023 04:33:09 +0000

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

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-armhf-armhf-xl-credit1  10 host-ping-check-xen fail pass in 183520-retest

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-xl-credit1 15 migrate-support-check fail in 183520 never pass
 test-armhf-armhf-xl-credit1 16 saverestore-support-check fail in 183520 never pass
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183510
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183510
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183510
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183510
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183510
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183510
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183510
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183510
 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-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          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          16 saverestore-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-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-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-amd64-amd64-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-amd64-amd64-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-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-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-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-dom0pvh-xl-amd  3 hosts-allocate               starved  n/a

version targeted for testing:
 linux                4f82870119a46b0d04d91ef4697ac4977a255a9d
baseline version:
 linux                d88520ad73b79e71e3ddf08de335b8520ae41c5c

Last test of basis   183510  2023-10-24 11:41:38 Z    0 days
Testing same since   183518  2023-10-24 20:09:53 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Alexandre Ghiti <alexghiti@rivosinc.com>
  Andrew Morton <akpm@linux-foundation.org>
  Arnd Bergmann <arnd@arndb.de>
  Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
  Gregory Price <gourry.memverge@gmail.com>
  Gregory Price <gregory.price@memverge.com>
  Haibo Li <haibo.li@mediatek.com>
  Johannes Weiner <hannes@cmpxchg.org>
  Kees Cook <keescook@chromium.org>
  Kemeng Shi <shikemeng@huaweicloud.com>
  Liam R. Howlett <Liam.Howlett@oracle.com>
  Linus Torvalds <torvalds@linux-foundation.org>
  Mike Kravetz <mike.kravetz@oracle.com>
  Muhammad Usama Anjum <usama.anjum@collabora.com>
  Naoya Horiguchi <naoya.horiguchi@nec.com>
  Nhat Pham <nphamcs@gmail.com>
  Oleksij Rempel <o.rempel@pengutronix.de>
  Ondrej Jirman <megi@xff.cz>
  Palmer Dabbelt <palmer@rivosinc.com>
  Rik van Riel <riel@surriel.com>
  Samasth Norway Ananda <samasth.norway.ananda@oracle.com>
  Sebastian Ott <sebott@redhat.com>
  SeongJae Park <sj@kernel.org>
  Vlastimil Babka <vbabka@suse.cz>

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                              starved 
 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                                  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-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
   d88520ad73b7..4f82870119a4  4f82870119a46b0d04d91ef4697ac4977a255a9d -> tested/linux-linus


From xen-devel-bounces@lists.xenproject.org Wed Oct 25 07:19:33 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 07:19:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622649.969658 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvYAf-0006PJ-7p; Wed, 25 Oct 2023 07:19:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622649.969658; Wed, 25 Oct 2023 07:19: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 1qvYAf-0006PC-4K; Wed, 25 Oct 2023 07:19:17 +0000
Received: by outflank-mailman (input) for mailman id 622649;
 Wed, 25 Oct 2023 07:19: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=6q77=GH=suse.com=jgross@srs-se1.protection.inumbo.net>)
 id 1qvYAe-0006P4-CB
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 07:19:16 +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 cc370bf3-7306-11ee-9b0e-b553b5be7939;
 Wed, 25 Oct 2023 09:19:14 +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 2B4CD21D5D;
 Wed, 25 Oct 2023 07:19:12 +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 DFAF6138E9;
 Wed, 25 Oct 2023 07:19:11 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap2.suse-dmz.suse.de with ESMTPSA id 6OYKNW/BOGVcWQAAMHmgww
 (envelope-from <jgross@suse.com>); Wed, 25 Oct 2023 07:19: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: cc370bf3-7306-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1698218352; 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=g7yIqv6Fi6zMwH4E7aUGyGUBe4s20nrxgA2w1m80hLU=;
	b=Iw7kaWBD/BIxXrUSu9ELKLbIGRS28rlR3XaJZiChFZJ1nyklmRaqeUDTsx51Ay475VziZB
	jdTiRc+YM/8zYWRxQH+UAk9/uKU3vDg5P88ojtv76j19PBcNp//zvh3ZULVImLvIUSamX0
	pXtXxi1HhLxsfq1CUW6DlCGX5kinkx0=
Message-ID: <d4574364-4985-4ba1-8365-f4360860ad0d@suse.com>
Date: Wed, 25 Oct 2023 09:19:11 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: Lockdep show 6.6-rc regression in Xen HVM CPU hotplug
Content-Language: en-US
To: David Woodhouse <dwmw2@infradead.org>,
 xen-devel <xen-devel@lists.xenproject.org>, paulmck <paulmck@kernel.org>
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>,
 Rahul Singh <rahul.singh@arm.com>,
 Boris Ostrovsky <boris.ostrovsky@oracle.com>,
 Thomas Gleixner <tglx@linutronix.de>
References: <b28fff67f7501e4713af9b8c777f853cc44d6c6f.camel@infradead.org>
 <c75a3d53-fc36-46a6-b781-f16e1e5c6226@suse.com>
 <662772ec0d43cce9233680d67d7114bc8b0ed48d.camel@infradead.org>
 <8e6c144f-f808-4603-8de4-76decc3c2838@suse.com>
 <0a2725ee-a1a8-43e4-b117-f474ffb392a8@suse.com>
 <f527753bab9fd48e3a3fdc060c33bba9e2a14324.camel@infradead.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: <f527753bab9fd48e3a3fdc060c33bba9e2a14324.camel@infradead.org>
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature";
 boundary="------------DzD0aDmrAYLD3NJylYv98V5z"
Authentication-Results: smtp-out1.suse.de;
	none
X-Spam-Level: 
X-Spam-Score: -7.21
X-Spamd-Result: default: False [-7.21 / 50.00];
	 ARC_NA(0.00)[];
	 RCVD_VIA_SMTP_AUTH(0.00)[];
	 XM_UA_NO_VERSION(0.01)[];
	 FROM_HAS_DN(0.00)[];
	 TO_MATCH_ENVRCPT_ALL(0.00)[];
	 BAYES_HAM(-2.46)[97.56%];
	 MIME_GOOD(-0.20)[multipart/signed,multipart/mixed,text/plain];
	 HAS_ATTACHMENT(0.00)[];
	 NEURAL_HAM_LONG(-2.76)[-0.919];
	 MIME_BASE64_TEXT_BOGUS(1.00)[];
	 DKIM_SIGNED(0.00)[suse.com:s=susede1];
	 TO_DN_ALL(0.00)[];
	 MIME_BASE64_TEXT(0.10)[];
	 RCPT_COUNT_SEVEN(0.00)[8];
	 NEURAL_HAM_SHORT(-1.00)[-1.000];
	 SIGNED_PGP(-2.00)[];
	 FROM_EQ_ENVFROM(0.00)[];
	 MIME_TRACE(0.00)[0:+,1:+,2:+,3:+,4:~,5:~];
	 RCVD_COUNT_TWO(0.00)[2];
	 RCVD_TLS_ALL(0.00)[];
	 MID_RHS_MATCH_FROM(0.00)[];
	 MIME_UNKNOWN(0.10)[application/pgp-keys]
X-Spam-Flag: NO

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--------------DzD0aDmrAYLD3NJylYv98V5z
Content-Type: multipart/mixed; boundary="------------mkTCWTVB6SePHhGDG3iBMG0f";
 protected-headers="v1"
From: Juergen Gross <jgross@suse.com>
To: David Woodhouse <dwmw2@infradead.org>,
 xen-devel <xen-devel@lists.xenproject.org>, paulmck <paulmck@kernel.org>
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>,
 Rahul Singh <rahul.singh@arm.com>,
 Boris Ostrovsky <boris.ostrovsky@oracle.com>,
 Thomas Gleixner <tglx@linutronix.de>
Message-ID: <d4574364-4985-4ba1-8365-f4360860ad0d@suse.com>
Subject: Re: Lockdep show 6.6-rc regression in Xen HVM CPU hotplug
References: <b28fff67f7501e4713af9b8c777f853cc44d6c6f.camel@infradead.org>
 <c75a3d53-fc36-46a6-b781-f16e1e5c6226@suse.com>
 <662772ec0d43cce9233680d67d7114bc8b0ed48d.camel@infradead.org>
 <8e6c144f-f808-4603-8de4-76decc3c2838@suse.com>
 <0a2725ee-a1a8-43e4-b117-f474ffb392a8@suse.com>
 <f527753bab9fd48e3a3fdc060c33bba9e2a14324.camel@infradead.org>
In-Reply-To: <f527753bab9fd48e3a3fdc060c33bba9e2a14324.camel@infradead.org>

--------------mkTCWTVB6SePHhGDG3iBMG0f
Content-Type: multipart/mixed; boundary="------------YaJ0ymdhufkK0tiaCmu570KL"

--------------YaJ0ymdhufkK0tiaCmu570KL
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: base64

T24gMjQuMTAuMjMgMTU6NDUsIERhdmlkIFdvb2Rob3VzZSB3cm90ZToNCj4gT24gVHVlLCAy
MDIzLTEwLTI0IGF0IDE0OjA4ICswMjAwLCBKdWVyZ2VuIEdyb3NzIHdyb3RlOg0KPj4NCj4+
PiBJIGNhbiBwcm9iYWJseSBjaGFuZ2UgeGVuX3NlbmRfSVBJX29uZSgpIHRvIG5vdCBuZWVk
IGlycV9nZXRfY2hpcF9kYXRhKCkuDQo+Pg0KPj4gRGF2aWQsIGNvdWxkIHlvdSB0ZXN0IHRo
ZSBhdHRhY2hlZCBwYXRjaCwgcGxlYXNlPyBCdWlsZCB0ZXN0ZWQgb25seS4NCj4gDQo+IE5v
IGxvbmdlciB3aGluZXMgd2hlbiBvZmZsaW5pbmcgQ1BVMS4NCj4gDQo+IFN0aWxsIHRyaXBs
ZS1mYXVsdHMgd2hlbiBicmluZ2luZyBpdCBiYWNrIG9ubGluZS4gT3IgaWYgSSByZW1vdmUg
dGhlDQo+IGxvY2tkZXBfYXNzZXJ0X2lycXNfZGlzYWJsZWQoKSBmcm9tIGxvYWRfY3VycmVu
dF9pZHQoKSwgZ2l2ZXMgdGhlIHNhbWUNCj4gd2FybmluZ3MgYXMgYmVmb3JlLCBhbGwgb24g
dGhlIHNhbWUgdGhlbWUgYWJvdXQgSVJRcyBiZWluZyBlbmFibGVkIHdoZW4NCj4gdGhleSBz
aG91bGRuJ3QgYmUuDQoNCkkgdGhpbmsgdGhpcyBpcyBhIGZhbHNlIHBvc2l0aXZlLiBObyBp
ZGVhIChhZ2Fpbikgd2h5IGl0IHdvdWxkIHRyaWdnZXIgb25seQ0Kd2l0aCBteSBwYXRjaCBh
cHBsaWVkLg0KDQpUaGUgcHJvYmxlbSBzZWVtcyB0byBiZSB0aGF0IGxvY2tkZXBfYXNzZXJ0
X2lycXNfZGlzYWJsZWQoKSBkb2Vzbid0IGtub3cNCmFib3V0IHRoZSAiY2xpIiBhdCB0aGUg
dmVyeSBiZWdpbm5pbmcgb2YgdHJhbXBvbGluZV9zdGFydCgpLg0KDQoNCkp1ZXJnZW4NCg==

--------------YaJ0ymdhufkK0tiaCmu570KL
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-----

--------------YaJ0ymdhufkK0tiaCmu570KL--

--------------mkTCWTVB6SePHhGDG3iBMG0f--

--------------DzD0aDmrAYLD3NJylYv98V5z
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/Ey8FAmU4wW8FAwAAAAAACgkQsN6d1ii/Ey98
qAgAgt+zGv1FnzU1c7rsoDqOS6wBfKbeFBH+EeXB5cb4SGXuLiPiqzObmCV80q4oN7rNwa7KIrxi
HHygZTsi/Z3aecwcTevWiJLU0g34Vm27wN+T92wqy+cRS6PE3nZMypTPd63psGlGQdoLByEGieGX
GqVO7AsK8pfTgrmq+v4zcT8ZkosUCfp3qM/SWBvIxPbUK60C9on4hCK0UsoSiVVVFS2y80pTEruP
kRD8U9EPnc2H/yCb2MqkFE9WMYVh4olhvC+W9OXUiBiukIhEj1jxMfwcLdGYAzK7Ma00j/GHpcKy
cDNm0pshViLvMv947uTyrcK7LAdCqxf4Ls43OhixFw==
=psdz
-----END PGP SIGNATURE-----

--------------DzD0aDmrAYLD3NJylYv98V5z--


From xen-devel-bounces@lists.xenproject.org Wed Oct 25 07:48:12 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 07:48:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622655.969668 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvYcX-0001s3-4F; Wed, 25 Oct 2023 07:48:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622655.969668; Wed, 25 Oct 2023 07:48: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 1qvYcX-0001rw-1U; Wed, 25 Oct 2023 07:48:05 +0000
Received: by outflank-mailman (input) for mailman id 622655;
 Wed, 25 Oct 2023 07: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=p229=GH=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qvYcV-0001rq-3r
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 07:48:03 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 (mail-am6eur05on2060d.outbound.protection.outlook.com
 [2a01:111:f400:7e1b::60d])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id d0d263f0-730a-11ee-9b0e-b553b5be7939;
 Wed, 25 Oct 2023 09:47:58 +0200 (CEST)
Received: from DB3PR06CA0005.eurprd06.prod.outlook.com (2603:10a6:8:1::18) by
 DU2PR08MB10279.eurprd08.prod.outlook.com (2603:10a6:10:46e::17) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.26; Wed, 25 Oct
 2023 07:47:55 +0000
Received: from DB5PEPF00014B8B.eurprd02.prod.outlook.com
 (2603:10a6:8:1:cafe::7a) by DB3PR06CA0005.outlook.office365.com
 (2603:10a6:8:1::18) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.35 via Frontend
 Transport; Wed, 25 Oct 2023 07:47:55 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DB5PEPF00014B8B.mail.protection.outlook.com (10.167.8.199) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6933.18 via Frontend Transport; Wed, 25 Oct 2023 07:47:54 +0000
Received: ("Tessian outbound 028b72acc2da:v215");
 Wed, 25 Oct 2023 07:47:54 +0000
Received: from f2f64da1f1f2.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 7521FBF0-7395-4CEB-8BF7-28E05ECC28C5.1; 
 Wed, 25 Oct 2023 07:47:48 +0000
Received: from EUR03-AM7-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id f2f64da1f1f2.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Wed, 25 Oct 2023 07:47:48 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by GV2PR08MB9230.eurprd08.prod.outlook.com (2603:10a6:150:d9::20)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.33; Wed, 25 Oct
 2023 07:47:45 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::ae6e:f96c:f2f3:efc9]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::ae6e:f96c:f2f3:efc9%4]) with mapi id 15.20.6907.030; Wed, 25 Oct 2023
 07:47: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: d0d263f0-730a-11ee-9b0e-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=j+By4rxb37l8SsPxXXZDLUWv/XPZA5EZLNcX2oWFq2s=;
 b=mfF6sSp+Lxg5PjCMm3Av3mjAvlAYb/nDwgq+feBTdCRTq8j/h9JeROiP1bvhkQwx6Cl2/vYq/7qfaHjJcLYjX5KOApun4WTJmkJnW7gL+Qg9GXT4XrHSq7Obz4e6XQaEn/xIpIUsASQc43BgyGmeUAqVqsvlaVPmNbUuW8BKvTM=
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: b53feaeef37f3553
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=En7Bzgyn2qKeKyDHw7dQ0upHG/WayvKY79j5ZvZONdKHvdIoh8VHH6xgyUDurisuOU7FcvKh0VdA6flf6DIMJod0q99K0NRuT4UsBluw+GZ7o1xUouN7gqaZS/GK32/SKucHOsV9FomI9p7Cr2xfqqkLmOQDAiOQrTnJZDs2kcdenPlgAq7ZdD6XeaTlW+jz8j3DWczwQO0cCpt8u8lQSd3HzHylkOjMR6LvboCAnNVpo/3tTx2HEmKLLeUiktnML8A9ZZvOVbq0OPDu/cFC6C1merVSuKzLQE8ewEuaAwspLjWWEsVEiLIqZ6QKWX0nONowfuC2q2TddPMEZOFwbQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-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+By4rxb37l8SsPxXXZDLUWv/XPZA5EZLNcX2oWFq2s=;
 b=OytDYWm1IvpuvsKtSoxJudHR7KSZH/7Ixbim4iiTaXMKiOU8iwAmlolH0J6g+Es1gvJajHAHYyWoxDDTeZ/IVdofCsa/eqL59LbKGza0kHx6/J7tuZbpO1ztbgYzn/dTy3LER8l2iEZlkF5YSVIoWNDyJ6AG6nJZp72x6285fjjasyEWOirrpWjgsyFRsezoe54iOIyerVne0sQHj2ye2oSk40p6QvR3grHUh4rf7o9FEq+8KQ3Akro+vcSuHFYcKwaGgSTyQEYQnFk48GEWNpgyDr88ob2hvrr5zHiRz3PJz2TTE2aGOUhcDxzFhFXBe6T4m0YKbCUnXrmXoq07Fg==
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=j+By4rxb37l8SsPxXXZDLUWv/XPZA5EZLNcX2oWFq2s=;
 b=mfF6sSp+Lxg5PjCMm3Av3mjAvlAYb/nDwgq+feBTdCRTq8j/h9JeROiP1bvhkQwx6Cl2/vYq/7qfaHjJcLYjX5KOApun4WTJmkJnW7gL+Qg9GXT4XrHSq7Obz4e6XQaEn/xIpIUsASQc43BgyGmeUAqVqsvlaVPmNbUuW8BKvTM=
From: Henry Wang <Henry.Wang@arm.com>
To: Julien Grall <julien@xen.org>
CC: Xen-devel <xen-devel@lists.xenproject.org>, Michal Orzel
	<michal.orzel@amd.com>, Julien Grall <jgrall@amazon.com>, Stefano Stabellini
	<sstabellini@kernel.org>, Bertrand Marquis <Bertrand.Marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: Re: [PATCH for-4.19 v2] docs/arm: Document where Xen should be loaded
 in memory
Thread-Topic: [PATCH for-4.19 v2] docs/arm: Document where Xen should be
 loaded in memory
Thread-Index: AQHaBmTvYbIQchT5B0KT4u7zbVvjnbBaIjyA
Date: Wed, 25 Oct 2023 07:47:45 +0000
Message-ID: <6FB5D848-EFDF-44DA-96BA-4039E86434D0@arm.com>
References: <20231024102858.29067-1-julien@xen.org>
In-Reply-To: <20231024102858.29067-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_|GV2PR08MB9230:EE_|DB5PEPF00014B8B:EE_|DU2PR08MB10279:EE_
X-MS-Office365-Filtering-Correlation-Id: 992cf8e3-7684-4fc1-e948-08dbd52eb2cb
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:
 lEQUeQIMykOFdDun+bS4hh9XFn2459jsTau/eTbkq87r1V+pn+Lkri2bJtgvKz3YtiPKYuPe0zv03kxZcPjrrgVgGj0fURsGpxUAzKdXKz3Mv+WE8FTe75F5PsN+UlnaGD6a+e7UnC1xrobA428wzXM46Z4LHDjyWlXy/Q2DVRSI5fh+3hKJS0ahY4hz4ojj7TtUmFDb3K5kUxHcqGT59RD4iyQGx67Wt7ULnqHGrJdPQJwBWSEs4cqQPhk8Vu3EDPOdKNO5mZnbAyJ1RszdprvER0Mp/5mmancldbxZ4qPbCDEp1f4soxRgCyRkcH9677GLh780MKw9svu2uFQ47/ztEuT8E6/+UOdp0DKpIdLayUmAvbqV72SGoHHp2+zrGdyPfXkvsb7G3wyKI6XqKCUF0GUgjLT5fFGLzoUcvP8qLNm12rWrQdST4yN6AQ/TtmHt+4qqhgKRVQ5FoKGkYWmNZYgPdJBph/6JLt5YqPc9S6uWJ7PjbiEHP1XYB4rOswTBf8jnYcm4L27OqtG7UlVP+BvBJMCNC5hrghFx6MEVCC7qqEx6yQn8F93zU5jUh6LrFveTV/0i21u2mIVqjiUhF/Mo4cEr+8UMs15zrrsWhlU7XLBuDITmlLrQHDoRj+szi9sAkmcJivbFQISWnw==
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)(366004)(39860400002)(396003)(346002)(230922051799003)(186009)(451199024)(64100799003)(1800799009)(26005)(38070700009)(36756003)(38100700002)(2906002)(4744005)(41300700001)(5660300002)(86362001)(8936002)(8676002)(33656002)(4326008)(54906003)(71200400001)(66446008)(478600001)(6916009)(91956017)(6506007)(53546011)(122000001)(76116006)(64756008)(66556008)(66476007)(66946007)(316002)(6486002)(83380400001)(2616005)(966005)(6512007)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="us-ascii"
Content-ID: <7B56C15AE9764B43B76410695808ED3D@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV2PR08MB9230
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:
 DB5PEPF00014B8B.eurprd02.prod.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	ac1d4e2c-1c77-4e89-9c09-08dbd52ead39
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	veLq8jQwXES6JrGr/iwM9JFdrh6cqdxrEo/EKjcbyBsYuhHimRT1yKKzZq+sXhwx5pQniYOZurAzPS5oG1MsBxDK/kb3P975R/lYCJ1P01ecMy09VgmRCqGGUKMIQD+5NV0IvjXks+XrAk8I0YbFDIc3PbgvMyrOYE3Z7tMDz0tLfe1SS7HoATyoPniS9BEKURh2f7/bAHWPbsFcgrA3C9sHyxYxQ19P7o6ZgkdCnLEe2+T+StxuOZ+8F16QXF0tLuvxCK9/4nXkgaGMYOj/CkNOTLiN6vopvHORzA8WwzBbM8nVM/1wYxrMFqCMneTDC+Zj9Y2qMpqEqm2CsWL4UX83HJgHc3iMNYMCXP3FRIcle5zNoE7bwoti4F8dAPikmvoTmwfVNTjkCftyWj1EUd9BReFV9cvgLbhBubC56oD2Tv4X/bfPiG9u2gwUJYoGbLgLnxGeLlcnWdlmUM2FhzODTPM9/Be9t97tUOrq0PKuoPbawgIdpiGfy9GrPH2g9uKk+0d33w7IeYRCbp9MJWDD8P7ylJqL9jvYkDQB4IpCzEbf89AOkRNYbgnwi3ZbNRQxU66OvQYxjrfErX80HkqjtyIcU2xeiXjLNEg7wbnVtcH37YDFDobAW7RY7yoen1LR7J1cz2doJSqt2uKqbxpHiHiZvJECAb17tuZkbqCE2m0jWqn5/xITIXNKXfUq7wQhF8P8A2AWjKqc35A3t+dYR1opF/zWryoIyUxDjdg=
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)(396003)(346002)(376002)(230922051799003)(186009)(82310400011)(451199024)(64100799003)(1800799009)(46966006)(36840700001)(40470700004)(33656002)(40460700003)(6512007)(4744005)(47076005)(36860700001)(6506007)(83380400001)(336012)(107886003)(8676002)(5660300002)(6862004)(4326008)(41300700001)(8936002)(2906002)(966005)(478600001)(53546011)(6486002)(70586007)(54906003)(316002)(70206006)(356005)(82740400003)(81166007)(2616005)(86362001)(26005)(36756003)(40480700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Oct 2023 07:47:54.7977
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 992cf8e3-7684-4fc1-e948-08dbd52eb2cb
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:
	DB5PEPF00014B8B.eurprd02.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU2PR08MB10279

Hi Julien,

> On Oct 24, 2023, at 18:28, Julien Grall <julien@xen.org> wrote:
>=20
> From: Julien Grall <jgrall@amazon.com>
>=20
> In commit 9d267c049d92 ("xen/arm64: Rework the memory layout"),
> we decided to require Xen to be loaded below 2 TiB to simplify
> the logic to enable the MMU. The limit was decided based on
> how known platform boot plus some slack.
>=20
> We had a recent report that this is not sufficient on the AVA
> platform with a old firmware [1]. But the restriction is not
> going to change in Xen 4.18. So document the limit clearly
> in docs/misc/arm/booting.txt.
>=20
> [1] https://lore.kernel.org/20231013122658.1270506-3-leo.yan@linaro.org
>=20
> Signed-off-by: Julien Grall <jgrall@amazon.com>
> Reviewed-by: Michal Orzel <michal.orzel@amd.com>

Release-acked-by: Henry Wang <Henry.Wang@arm.com>

Kind regards,
Henry


From xen-devel-bounces@lists.xenproject.org Wed Oct 25 07:49:24 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 07:49:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622657.969678 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvYdm-0002OS-FH; Wed, 25 Oct 2023 07:49:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622657.969678; Wed, 25 Oct 2023 07:49: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 1qvYdm-0002OL-B7; Wed, 25 Oct 2023 07:49:22 +0000
Received: by outflank-mailman (input) for mailman id 622657;
 Wed, 25 Oct 2023 07:49: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=LJSz=GH=casper.srs.infradead.org=BATV+85b1c44ac99574f3713d+7367+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qvYdl-0002OB-84
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 07:49:21 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id fde8ad26-730a-11ee-9b0e-b553b5be7939;
 Wed, 25 Oct 2023 09:49:17 +0200 (CEST)
Received: from [2001:8b0:10b:5:758e:a1c4:bc7:e7a7]
 (helo=u3832b3a9db3152.ant.amazon.com)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qvYdZ-007UjW-SQ; Wed, 25 Oct 2023 07: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: fde8ad26-730a-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=MIME-Version:Content-Type:References:
	In-Reply-To:Date:Cc:To:From:Subject:Message-ID:Sender:Reply-To:
	Content-Transfer-Encoding:Content-ID:Content-Description;
	bh=JZNl9HLN3dQiXpVfLZXhyIi3YWkr3A1OefSvrV6QHtQ=; b=KkLXfDnHColpmkr9PKSutiK7Ph
	uuFeKT2ipFUEw0W+KWm1igwSLmLKpv7juC+mOzWK4eiXfYkQ5NNOlKNcyyeTs0vivNjmN+IElkxzz
	zhp9NRpzNy9NSJJNwzZUpVynFaFGwucbMTMukv5rF4yYiO+EEV+VaMPx+PTvTd3m0WO4SiBqftV0I
	bTl7W4AmYvAeYKeqDM2qPvxftGh6LUXibgBaUX9USRd0Gk6blw6SqpbHZVw7vbri7deC9sc8f1km5
	Z9knO0tqhBeefZfYDsaiOTBBbRNgQM3xbxH2zKTvMJ8q2EiBd++48eFrQxFS2BqBz/Tz8K+fJTDAl
	nmFIiTEA==;
Message-ID: <45314b800ac3a5b089420f7984e38f8adbfd8a3e.camel@infradead.org>
Subject: Re: [PATCH 2/4] hw/xen: update Xen PV NIC to XenDevice model
From: David Woodhouse <dwmw2@infradead.org>
To: paul@xen.org, qemu-devel@nongnu.org
Cc: "Michael S. Tsirkin" <mst@redhat.com>, Marcel Apfelbaum
 <marcel.apfelbaum@gmail.com>, Paolo Bonzini <pbonzini@redhat.com>, Richard
 Henderson <richard.henderson@linaro.org>, Eduardo Habkost
 <eduardo@habkost.net>, Stefano Stabellini <sstabellini@kernel.org>, Anthony
 Perard <anthony.perard@citrix.com>, Jason Wang <jasowang@redhat.com>,
 xen-devel@lists.xenproject.org
Date: Wed, 25 Oct 2023 08:49:08 +0100
In-Reply-To: <53e3e3e3-7bdc-4102-b833-bcacd496a31f@xen.org>
References: <20231017182545.97973-1-dwmw2@infradead.org>
	 <20231017182545.97973-3-dwmw2@infradead.org>
	 <53e3e3e3-7bdc-4102-b833-bcacd496a31f@xen.org>
Content-Type: multipart/signed; micalg="sha-256"; protocol="application/pkcs7-signature";
	boundary="=-nuI2+mGGbsHNT14hPH86"
User-Agent: Evolution 3.44.4-0ubuntu2 
MIME-Version: 1.0
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html


--=-nuI2+mGGbsHNT14hPH86
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Tue, 2023-10-24 at 15:47 +0100, Paul Durrant wrote:
>=20
> > =C2=A0=C2=A0=20
> > -=C2=A0=C2=A0=C2=A0 if (netdev->xendev.be_state !=3D XenbusStateConnect=
ed) {
> > +=C2=A0=C2=A0=C2=A0 if (netdev->rx_ring.sring =3D=3D NULL) {
>=20
> Why not a straight swap for xen_device_backend_get_state()? Hard to see=
=20
> whether there any hidden side effects of this change otherwise.

I suppose if I litter it with a few assertions that the iothread mutex
is locked, I can live with that. As long as it's atomic w.r.t.
disconnection, they *are* identical checks.

(And if it could be running simultaneously with disconnection, we'd be
hosed anyway).


--=-nuI2+mGGbsHNT14hPH86
Content-Type: application/pkcs7-signature; name="smime.p7s"
Content-Disposition: attachment; filename="smime.p7s"
Content-Transfer-Encoding: base64

MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgEFADCABgkqhkiG9w0BBwEAAKCCEkQw
ggYQMIID+KADAgECAhBNlCwQ1DvglAnFgS06KwZPMA0GCSqGSIb3DQEBDAUAMIGIMQswCQYDVQQG
EwJVUzETMBEGA1UECBMKTmV3IEplcnNleTEUMBIGA1UEBxMLSmVyc2V5IENpdHkxHjAcBgNVBAoT
FVRoZSBVU0VSVFJVU1QgTmV0d29yazEuMCwGA1UEAxMlVVNFUlRydXN0IFJTQSBDZXJ0aWZpY2F0
aW9uIEF1dGhvcml0eTAeFw0xODExMDIwMDAwMDBaFw0zMDEyMzEyMzU5NTlaMIGWMQswCQYDVQQG
EwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYD
VQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50
aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC
AQEAyjztlApB/975Rrno1jvm2pK/KxBOqhq8gr2+JhwpKirSzZxQgT9tlC7zl6hn1fXjSo5MqXUf
ItMltrMaXqcESJuK8dtK56NCSrq4iDKaKq9NxOXFmqXX2zN8HHGjQ2b2Xv0v1L5Nk1MQPKA19xeW
QcpGEGFUUd0kN+oHox+L9aV1rjfNiCj3bJk6kJaOPabPi2503nn/ITX5e8WfPnGw4VuZ79Khj1YB
rf24k5Ee1sLTHsLtpiK9OjG4iQRBdq6Z/TlVx/hGAez5h36bBJMxqdHLpdwIUkTqT8se3ed0PewD
ch/8kHPo5fZl5u1B0ecpq/sDN/5sCG52Ds+QU5O5EwIDAQABo4IBZDCCAWAwHwYDVR0jBBgwFoAU
U3m/WqorSs9UgOHYm8Cd8rIDZsswHQYDVR0OBBYEFAnA8vwL2pTbX/4r36iZQs/J4K0AMA4GA1Ud
DwEB/wQEAwIBhjASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEF
BQcDBDARBgNVHSAECjAIMAYGBFUdIAAwUAYDVR0fBEkwRzBFoEOgQYY/aHR0cDovL2NybC51c2Vy
dHJ1c3QuY29tL1VTRVJUcnVzdFJTQUNlcnRpZmljYXRpb25BdXRob3JpdHkuY3JsMHYGCCsGAQUF
BwEBBGowaDA/BggrBgEFBQcwAoYzaHR0cDovL2NydC51c2VydHJ1c3QuY29tL1VTRVJUcnVzdFJT
QUFkZFRydXN0Q0EuY3J0MCUGCCsGAQUFBzABhhlodHRwOi8vb2NzcC51c2VydHJ1c3QuY29tMA0G
CSqGSIb3DQEBDAUAA4ICAQBBRHUAqznCFfXejpVtMnFojADdF9d6HBA4kMjjsb0XMZHztuOCtKF+
xswhh2GqkW5JQrM8zVlU+A2VP72Ky2nlRA1GwmIPgou74TZ/XTarHG8zdMSgaDrkVYzz1g3nIVO9
IHk96VwsacIvBF8JfqIs+8aWH2PfSUrNxP6Ys7U0sZYx4rXD6+cqFq/ZW5BUfClN/rhk2ddQXyn7
kkmka2RQb9d90nmNHdgKrwfQ49mQ2hWQNDkJJIXwKjYA6VUR/fZUFeCUisdDe/0ABLTI+jheXUV1
eoYV7lNwNBKpeHdNuO6Aacb533JlfeUHxvBz9OfYWUiXu09sMAviM11Q0DuMZ5760CdO2VnpsXP4
KxaYIhvqPqUMWqRdWyn7crItNkZeroXaecG03i3mM7dkiPaCkgocBg0EBYsbZDZ8bsG3a08LwEsL
1Ygz3SBsyECa0waq4hOf/Z85F2w2ZpXfP+w8q4ifwO90SGZZV+HR/Jh6rEaVPDRF/CEGVqR1hiuQ
OZ1YL5ezMTX0ZSLwrymUE0pwi/KDaiYB15uswgeIAcA6JzPFf9pLkAFFWs1QNyN++niFhsM47qod
x/PL+5jR87myx5uYdBEQkkDc+lKB1Wct6ucXqm2EmsaQ0M95QjTmy+rDWjkDYdw3Ms6mSWE3Bn7i
5ZgtwCLXgAIe5W8mybM2JzCCBhQwggT8oAMCAQICEQDGvhmWZ0DEAx0oURL6O6l+MA0GCSqGSIb3
DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYD
VQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28g
UlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMB4XDTIyMDEwNzAw
MDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJARYTZHdtdzJAaW5mcmFkZWFkLm9y
ZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3GpC2bomUqk+91wLYBzDMcCj5C9m6
oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZHh7htyAkWYVoFsFPrwHounto8xTsy
SSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT9YgcBqKCo65pTFmOnR/VVbjJk4K2
xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNjP+qDrh0db7PAjO1D4d5ftfrsf+kd
RR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy2U+eITZ5LLE5s45mX2oPFknWqxBo
bQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3BgBEmfsYWlBXO8rVXfvPgLs32VdV
NZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/7auNVRmPB3v5SWEsH8xi4Bez2V9U
KxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmdlFYhAflWKQ03Ufiu8t3iBE3VJbc2
5oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9aelIl6vtbhMA+l0nfrsORMa4kobqQ5
C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMBAAGjggHMMIIByDAfBgNVHSMEGDAW
gBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeDMcimo0oz8o1R1Nver3ZVpSkwDgYD
VR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYwFAYIKwYBBQUHAwQGCCsGAQUFBwMC
MEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYBBQUHAgEWF2h0dHBzOi8vc2VjdGln
by5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9jcmwuc2VjdGlnby5jb20vU2VjdGln
b1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1haWxDQS5jcmwwgYoGCCsGAQUFBwEB
BH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdvLmNvbS9TZWN0aWdvUlNBQ2xpZW50
QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAjBggrBgEFBQcwAYYXaHR0cDovL29j
c3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5mcmFkZWFkLm9yZzANBgkqhkiG9w0B
AQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQvQ/fzPXmtR9t54rpmI2TfyvcKgOXp
qa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvIlSPrzIB4Z2wyIGQpaPLlYflrrVFK
v9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9ChWFfgSXvrWDZspnU3Gjw/rMHrGnql
Htlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0whpBtXdyDjzBtQTaZJ7zTT/vlehc/
tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9IzCCBhQwggT8oAMCAQICEQDGvhmW
Z0DEAx0oURL6O6l+MA0GCSqGSIb3DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3Jl
YXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0
ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJl
IEVtYWlsIENBMB4XDTIyMDEwNzAwMDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJ
ARYTZHdtdzJAaW5mcmFkZWFkLm9yZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3
GpC2bomUqk+91wLYBzDMcCj5C9m6oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZH
h7htyAkWYVoFsFPrwHounto8xTsySSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT
9YgcBqKCo65pTFmOnR/VVbjJk4K2xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNj
P+qDrh0db7PAjO1D4d5ftfrsf+kdRR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy
2U+eITZ5LLE5s45mX2oPFknWqxBobQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3
BgBEmfsYWlBXO8rVXfvPgLs32VdVNZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/
7auNVRmPB3v5SWEsH8xi4Bez2V9UKxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmd
lFYhAflWKQ03Ufiu8t3iBE3VJbc25oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9ae
lIl6vtbhMA+l0nfrsORMa4kobqQ5C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMB
AAGjggHMMIIByDAfBgNVHSMEGDAWgBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeD
Mcimo0oz8o1R1Nver3ZVpSkwDgYDVR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYw
FAYIKwYBBQUHAwQGCCsGAQUFBwMCMEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYB
BQUHAgEWF2h0dHBzOi8vc2VjdGlnby5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9j
cmwuc2VjdGlnby5jb20vU2VjdGlnb1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1h
aWxDQS5jcmwwgYoGCCsGAQUFBwEBBH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdv
LmNvbS9TZWN0aWdvUlNBQ2xpZW50QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAj
BggrBgEFBQcwAYYXaHR0cDovL29jc3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5m
cmFkZWFkLm9yZzANBgkqhkiG9w0BAQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQv
Q/fzPXmtR9t54rpmI2TfyvcKgOXpqa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvI
lSPrzIB4Z2wyIGQpaPLlYflrrVFKv9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9Ch
WFfgSXvrWDZspnU3Gjw/rMHrGnqlHtlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0w
hpBtXdyDjzBtQTaZJ7zTT/vlehc/tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9
IzGCBMcwggTDAgEBMIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVz
dGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMT
NVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEA
xr4ZlmdAxAMdKFES+jupfjANBglghkgBZQMEAgEFAKCCAeswGAYJKoZIhvcNAQkDMQsGCSqGSIb3
DQEHATAcBgkqhkiG9w0BCQUxDxcNMjMxMDI1MDc0OTA4WjAvBgkqhkiG9w0BCQQxIgQgqf6kmbpy
iCj9Gf74Yo9bWLQmRRmHUo1hOFr3dJIdIfUwgb0GCSsGAQQBgjcQBDGBrzCBrDCBljELMAkGA1UE
BhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEYMBYG
A1UEChMPU2VjdGlnbyBMaW1pdGVkMT4wPAYDVQQDEzVTZWN0aWdvIFJTQSBDbGllbnQgQXV0aGVu
dGljYXRpb24gYW5kIFNlY3VyZSBFbWFpbCBDQQIRAMa+GZZnQMQDHShREvo7qX4wgb8GCyqGSIb3
DQEJEAILMYGvoIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVy
MRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNl
Y3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEAxr4Z
lmdAxAMdKFES+jupfjANBgkqhkiG9w0BAQEFAASCAgA8UVaOzRGPId5SyGLYr7OGbytoiPUCDulJ
6fn8Z/lfKE1unDI9kUfzeaKP0a/S5MK0Takq88aKWAzGF7xQw4qZhjWyGA0AIMZ7B8bn03q7BKVD
Uf/BtxYXbnFoVz0hVsMScf80eL41CTbkNDmzugxx1vh7dU2P7Y7iB4QUkzqb2iQFZubVH9VVtAvr
lqM3TscrgKkyAjhiSY2FmBs1CAFeTb8Q4t/RKtTvFo3QXxDQLY/QB9lHs+pDz1sh5TmbUPbsK8hT
QSWjef/TaItsSj+r9hmzve9dcN4J29wKIL5c4LBf+9D6AIdtXVe+cIt0ubhWXeCD7ZO/ruynQtDR
YpPDtWz8I5VVjbfp6jSPWKPMbikmWSPg56AqqkHlfxty+PyglacwnEuIEDv9MGMtcs82FoQkPYOx
Qy75GK2U6nPiGW7+BHNFjG5fAjizudN5NOS6u8ltktdxgEt3Nto7QPkHx6MYa4bTWstkkeJLZ8ZU
rtgZPQHgGV+OfXBi7yoizHK5eH0b5G47oaHqMs/9b+7tERn4LZGuHrKjvjpG34KzjE00TkTKLNoJ
4MHRcm7lAb7FavoVjBO9ldYjX05thB8IOEVk4RhVdAdiBdlIyEOQRIfr3S4BHvOkNAprDZPd413z
6/H7wCf5wAgZg3QUokqj6obGBVctWFkmSsoZrLCevAAAAAAAAA==


--=-nuI2+mGGbsHNT14hPH86--


From xen-devel-bounces@lists.xenproject.org Wed Oct 25 07:57:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 07:57:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622664.969688 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvYlI-00045u-6s; Wed, 25 Oct 2023 07:57:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622664.969688; Wed, 25 Oct 2023 07: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 1qvYlI-00045n-3N; Wed, 25 Oct 2023 07:57:08 +0000
Received: by outflank-mailman (input) for mailman id 622664;
 Wed, 25 Oct 2023 07:57: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=e1rq=GH=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qvYlG-00045h-LL
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 07:57:06 +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 15abd77f-730c-11ee-98d5-6d05b1d4d9a1;
 Wed, 25 Oct 2023 09:57:05 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DB8PR04MB6954.eurprd04.prod.outlook.com (2603:10a6:10:11c::19)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.14; Wed, 25 Oct
 2023 07:57:00 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6933.011; Wed, 25 Oct 2023
 07:57: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: 15abd77f-730c-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Xs0a9UeWWK7UGs05jr9pJDxJbeD+0A85Ed2gTkpRE7lNKOog+xtFxSilxx445fdKnNcRQhU591Akbb3yQjwrJ3b9JRtMOXkVbVtRQHdNoPBJqX2GpnfrD/Tvk6o5Wjh+IxkgjuVORSO7YcKf7A3p6IJDsxxUayMZjL9nfT80c7i//64NbIwQ/+oi1fi7++r8jSolbo2FecqqqaMEK7R21ih1YV7JEi7a6ZWwvvx5gfs+pCvLOgMq7PNEoDLdYuWwpz75zRgs0upDGVpgErdY8aPEFjMYmWVpZfz5kGgpkMTKUGBXtXpY67N5SConwB99TBcXxqRlKXFDRFPqrAlycg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=vOZ01sg+PZU3KcQUkP1hOk4ZuRr6eFjI/iPRTcO+Rbw=;
 b=k+TwHTs7axWPUpHHPrr4oYU6X3gP9lBFalj7DS4c4Bn86VAM/t/B2UJOkkPQOu5MPxhLIKTG9iPlbQIQcWcBe+Gmw7lAeUMCyg7lONzGBeaUX1YvsWB0cTqS/Kw7bU9t8w+D3/OyxlWbVadgLpnHC3eAu8Kdqsi0BAQxgObAuDbkjcrLZy3k1bvs5Fv8NfRc+mqRUdPzI+c0WfRWsWTN5oZQ+XK+n02rIA9fCOrpaD5fRwhOCVlWBEaCkvJFERfuw+pm9A1syOoeZUqsP3eZ4HR+yd1ToNVIFZa+S+RbbMyn+KKjZxa1WxKs0zac2JCd1Cu2N6uHgTdegS/KqKMVFA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=vOZ01sg+PZU3KcQUkP1hOk4ZuRr6eFjI/iPRTcO+Rbw=;
 b=q2ObA6JEm0iFqz0D8mF3v/mZ5TG33tUTzf7reei/LRDv0sf4E/837qzERk8igxPYgWRMhi39sRu2f9zImOzrKqrNdZg0Dc/UPuiUNR6z2G8qA84ZtHvniiZhUjXX8i0V8n3XxbKZYWZdQzAy6zxFJ0YRcBBvwJKMO+a83TfYPq4XTxbZXm/WP2ApCz/2EtwERbV5NjgPCCiwE23c4WuRwYYGqgkYBYDfIctN/4aUzuiJdjCLqv+oH2UQMOEIWOpt6jtqJgyllerSEw/M6DqFIz+nCCq+vrd9vFbH+2rqx2QxZ9hTa0Stv3/PHip8JKKrQ8lzYfSlLRQqgY6EE17EBg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <41562c7a-6260-3104-b2d4-d6fd4df0cffc@suse.com>
Date: Wed, 25 Oct 2023 09:56:57 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [RFC 1/4] x86/ioemul: address MISRA C:2012 Rule 9.3
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.cooper3@citrix.com, roger.pau@citrix.com, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <cover.1698155925.git.nicola.vetrini@bugseng.com>
 <76c9f78179a8bb5b4f99b34f163933394f79066c.1698155925.git.nicola.vetrini@bugseng.com>
 <60e26ad6-7366-2604-e9b2-ed401cee6e73@suse.com>
 <alpine.DEB.2.22.394.2310241317030.271731@ubuntu-linux-20-04-desktop>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <alpine.DEB.2.22.394.2310241317030.271731@ubuntu-linux-20-04-desktop>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0264.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:e8::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_|DB8PR04MB6954:EE_
X-MS-Office365-Filtering-Correlation-Id: dc3d5f15-702d-415f-dcbf-08dbd52ff7cc
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	lnxMKm+1TlKSydYGYXoPtUZHmkwN1jssi4Hzj8yelqmenkeWF+AHtNASSriOTfuCkGgMdtI9Us33xac7rYDUnwGlWmeds57BsrrHpkQKa+zBCUwcXtAnenXzuhJwcgMOVfg6cCH61lpAsfAGJ1gziUtmk4Rwqww3bR38Xb623/OwIRukjVs+AAx0iXoQIaCKrU24oVYgXNmfGVuKABxKFVVdu887FW4zzLkUlAP7lxwauBiC8fkd4+xVvmDQku/JTEkGutPJXfikgc2maCjttdwPw1p7lhz9RNlafsxz01ADq2KbNcw80JelAoDEg2FNINd3OFEsAQ4BtGDuwVAK0JXx5hJgW9TSDVV4MIaLHvQ6ogr0jR4eRmhzeLKqdqcuKlbzxD7ZyMdi+vugt+ElWNzQpZdl4e5DJmwDMvhYHTo8gf/I4XLVJD/I809tzaXtne1PLMM+saxCV92p8bG2kElMjX3UAbU9F+uGXaYh5DjwWOosl/jlzeXAYmmvoaFYVMuYUMlZ7QNZSvROhfm2jK0moVv/jOaHl/mnJCz/+2i5O9OfqNDLsJmPDUkW5zWfZVsMK5L0Idhps1EqRndcPA/TNJI575tVfnsdk/1p7wCGd1S6YYoEtvMbJq1i0EfajtaFkA6kFdmvlpKyXxrfyA==
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)(230922051799003)(64100799003)(451199024)(1800799009)(186009)(4744005)(66476007)(316002)(31696002)(86362001)(2906002)(38100700002)(6666004)(66946007)(66556008)(6916009)(2616005)(478600001)(6506007)(53546011)(6486002)(54906003)(6512007)(4326008)(7416002)(5660300002)(41300700001)(36756003)(8676002)(8936002)(26005)(31686004)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?bUdNMXo0VUZXdWhTb1RiZHhHVWV4NU5KUWFJYzlhWnlkMWhNdDJ0a2Z0WktF?=
 =?utf-8?B?N2hDTlpwTjVLbnpWckhEdzJiY3JkKzJtTUdDZ1BCQ216bkg3Wm9CVUczUUVi?=
 =?utf-8?B?eVFtOE1GTXdXWlFRaFNnS2VqL3lwb3ByakFsMnVxTnVpTTV2YTJiT3ZYdk5G?=
 =?utf-8?B?ZkRqbDhoNXhYSkZ2OU0vNDh3ZkhvNGkvY0VOZm16NWs0TzM0S2lpcUNEN2sz?=
 =?utf-8?B?Vktmb3UwVnlsR2RzZjBvRzJTN0N6VHlFWjBNNlFSc1JJMnk4QmFOdXMzaDMz?=
 =?utf-8?B?UGlWT0RNcm5vNzg1NFpSQUNNTUx2OXR6U1hLMXZ3NlJ2Yzh5WTl2TmRCK1F3?=
 =?utf-8?B?NXgyUElIN3ExZnF4YzJNL1FQV3MwSE1uNmFrNy9LbEJkR0dXOGJlMUgwUVRh?=
 =?utf-8?B?aXpzWEZySmpaODVzUDNzUzF1T2dxcGZIZzdiZ3lxT0VXTzRHc3ZlUWFVRVoy?=
 =?utf-8?B?ZlRLd2RDNGtieWZBWjRzeVkyOTY1dDlGalNTVzhRUmJEVTV2R29tNUcrbkww?=
 =?utf-8?B?SGFpTVdIN1NLT0JGK09KcEZmaUtGd0dtSDNuZzJ1YlVaUDJlOUU1dlVJbFRo?=
 =?utf-8?B?SUI3M1JKNlY5cjh3N1hJNUtSS09SeHhDUnhZcFR6UllWOWVqSEpqdzk2bW9l?=
 =?utf-8?B?U1ZmZ0llOTdLbzVNTE1Ldmg3UFVRN2VwMkxocmxMR05TOGFQWitSanB1b1NW?=
 =?utf-8?B?ZVJpWUpCeU8vT2hEbExNMjNFR3F3bSszRGp1WkpKZUF0NkZnSUZ3bHF6Z1Ey?=
 =?utf-8?B?YWl0Mkh1Uk5wU05ZZkFjRTJuZVVyczFIQTI4aHNGZmlZVURRaGVRenFkV251?=
 =?utf-8?B?MXBiRUFaRU9vd2FUS3M4UXJNYUZkOHRQVFI2SjFPQjJtRzRET3N1RzN4a0NB?=
 =?utf-8?B?bkRkV0hhaWxLSnZOeG13UHFFcU1EY0hSakgvb3hnVGF3Q0NUaGZGVTY0UERi?=
 =?utf-8?B?NlJRK2UwcHczMnVBeHd3UW5DU01xNmRYcnM4UUl0NXNtMjdZVnNKaktLZmts?=
 =?utf-8?B?cHdqTklZTVRJWEdWSEVOc3B1QlRuREY2eWdWSDNnNTR0dStOd1J6R3NJVElN?=
 =?utf-8?B?Mm81WWF2ZWduU2FzWnlBZTFlQ0tlSjFmTmVmMUVsUURKQmUxS3NzOXVLOU01?=
 =?utf-8?B?aE5GK20wRng2Y1hYRDA0MTMydW5aNGJldENlNEF1dVFqSndzRFNzRlh6djgr?=
 =?utf-8?B?TDFENzNDbytvdEtjcDJaYVZoYmFNRzY1d3BXQlJHazJZVXpzMjltYTBkTisx?=
 =?utf-8?B?ZjNheml2UTNpUGhQK1hmMVYwYmkyakEraHRZa2xHOTBzOVJCVUI0aS9HNnNp?=
 =?utf-8?B?VXJwVk14dm5GZ2trUkNZZFFSemFCL0FvVHAzaTA5MldnT3RhSmxtdWR4Q3Ax?=
 =?utf-8?B?Z3I4bEtEWmZ2UmY3eWZ0dG5jc2kvUFh5Y2JRSzE4NGthRmNtYytrc0NMNXpH?=
 =?utf-8?B?d3puRGgybjVoclQwQXRlNGVtMkVpWU4yazQ2b2FmQkdFczF0Q0JhNTNkaXNJ?=
 =?utf-8?B?ZnlDaVhwNWFDVDV0eU9SbmRnTFBWalFPRkRreWZZT3Q3Mm1zR2RUcHowcVRp?=
 =?utf-8?B?SFM5YWNFOVBYT0FTMHN2dXNJZnFUT3lOamgyNXorWXhrMzFmN2lPU1hvNzJV?=
 =?utf-8?B?U0l4OFFhQldhMzdYT2tHMFZCUmtwaHhFamgydTBTS0ZRK2NmRFdVZGlVZHdG?=
 =?utf-8?B?bll2MTdLZjVEYkVXU2RpM0tqU2cvWWJUdjdCbXN2WmdNWW9YUmlSTEk0V1I3?=
 =?utf-8?B?RE40M0xrVVpSM2FxcHY0dnhtWVJDazFPTThpb3NXNXgyY1hPN1RwSGFpQk9N?=
 =?utf-8?B?UGtKcmhOMitsM1hsSC9OQXVpa3BJNWsrMlZJSEJ6QzZhVXRFTHAyQnYxMmxG?=
 =?utf-8?B?SHBSMFBiN2RaMXFXTys4dkhHSHlNcFZSMUVxUTAxUHN6Q3pPbWpYSnMzOG5h?=
 =?utf-8?B?K1Z2dDU0UHkvZEk1UEYxVGJwTko0M014YXRXQ2J2cUJYbGRtUGdqOXk0WXFa?=
 =?utf-8?B?ZnlycGFrU3R0WEhScDRGNXl4enpvZ1lIbkxTUittajRESUkrZkJWZnN3UytF?=
 =?utf-8?B?TzBJcVZjeE1ObWg3ejlCM1c3WHFyYVgyelQzTGxOTEQzU1FMUlkxSVUvcDVH?=
 =?utf-8?Q?l//XF8kZ5gXpKY/o7rQrhq6ow?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: dc3d5f15-702d-415f-dcbf-08dbd52ff7cc
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Oct 2023 07:57:00.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: gozcv4FQPwM6K+TYGFxl/FtUW1MwFkkQfRW2YJaGi2oN8QHgn0jaU4KkBZnoqekhdHjqCyf+pYA/W1x9IFTSiQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB8PR04MB6954

On 24.10.2023 22:27, Stefano Stabellini wrote:
> On Tue, 24 Oct 2023, Jan Beulich wrote:
>> On 24.10.2023 16:31, Nicola Vetrini wrote:
>>> Partially explicitly initalized .matches arrays result in violations
>>> of Rule 9.3; this is resolved by using designated initializers,
>>> which is permitted by the Rule.
>>>
>>> Mechanical changes.
>>>
>>> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
>>
>> While not overly bad, I'm still not really seeing the improvement.
>> Yet aiui changes induced by Misra are supposed to improve things in
>> some direction?
>  
> I think the improvement is clarity, in the sense that the designated
> initializers make it clearer that the array may be sparsely initialized
> and that the remaining elements should be initialized to zero
> automatically.

That's as clear from the original code, imo.

Jan


From xen-devel-bounces@lists.xenproject.org Wed Oct 25 08:07:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 08:07:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622673.969698 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvYvc-0006Xp-L2; Wed, 25 Oct 2023 08:07:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622673.969698; Wed, 25 Oct 2023 08:07: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 1qvYvc-0006Xi-HY; Wed, 25 Oct 2023 08:07:48 +0000
Received: by outflank-mailman (input) for mailman id 622673;
 Wed, 25 Oct 2023 08:07: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=e1rq=GH=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qvYvb-0006Xc-5v
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 08:07:47 +0000
Received: from EUR03-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur03on20615.outbound.protection.outlook.com
 [2a01:111:f400:fe1b::615])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 923894fb-730d-11ee-98d5-6d05b1d4d9a1;
 Wed, 25 Oct 2023 10:07:42 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DUZPR04MB9727.eurprd04.prod.outlook.com (2603:10a6:10:4b1::10)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.22; Wed, 25 Oct
 2023 08:07:39 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6933.011; Wed, 25 Oct 2023
 08:07: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: 923894fb-730d-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Qfl0tb1slb6cRNlYWgUqGpYZNjojbHtZ80Qf349v/saIeMZvgK9c+kIq71UsbbKL5u5biJ1QO8Yczw0QI8GPVIqXultUeJVLDLqMeb/gHFcnlfSTuCohJINzqhCe0CmJM4rdkie7+4pTi4BFFHOpQc98YgV4cTvZe2Ow/WJCeKSk/J0VcfOYqJR9FLzpiQG5xEjQCyzKlN3tOO2zXQgw2PMqqMeuSx8GUdlyPwkTwfHtOa9OOjQVYGikJvKv2ZiUICd78NdRAtaB+HmvqakKlnkbtnC+ObrHQVHwqYix1ADuR06o3M7p75jCaLAXVxMV08boEkn+s3AyCxg2YEIZVA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=mvVdPMyeTrWa4wtX8MkVNbHky8cgJSJqf4FOFEQZ+I8=;
 b=PA7/IPAJRFawVs1VfgSoldcj4iwh/rlGkCfP0bBD/YXNdJkRYqSkC5ppYojDFPk9/r0rqLunQnLXwA8WESBgh9M7fzi5jjkEOq0u7OAsjcmQikxKxxzG/3jokrX8UC7iRxboM+mglc9mYGWv3tRUsm59fw3ti0GjJb2yuyFdL6pMM341ZNAIihjn35gzOIlS3t7mxszz9g/dhWk77CJsExP1Iipd4cnM056zFwUaxST1nSbheEH0zaSnTSwrtJhNKYULYMscNSKXWXXB3Y8kLzuJ2oZHrVX2iBeugz9vWuA08msMZOYWfNAnyD6J92kVaYgJU1tZ0GfNumnWbbq+fA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=mvVdPMyeTrWa4wtX8MkVNbHky8cgJSJqf4FOFEQZ+I8=;
 b=QS7SdmRLuoCF/aLoTc93W1ShzWLdRscbwJpKjO2PbnByl1UTy13Y3djADCp9UkK8IFtdG0n6MSuKLR5J9pZ+N29h3HaDiPcZUsbZyUQHfGIP6wgi8vfkBhQmBPBRsRtXrtxh5Rr3Efu3pjcXN5tsgPWofZPQMBXiLPnX0hYk8qAo4LGV/64JWV0blOvWEIyKH9Hoyk/76PUnIBkhDxy+AuspD2eQg/miokmhqqEqLwcnyCmoXN1zY8QEbQ18AcqpSL/tOjZsF/v/jnZu074TqZiAmL5Eq8zdywruGujpH/8yjdfdWymyuBfhl1gtI4Vp/8yUnXTGGwP67f5R7cFyKg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <1e2991d7-b7b5-2fdd-38e0-ee1eff607f0e@suse.com>
Date: Wed, 25 Oct 2023 10:07:37 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH] misra: add R14.4 R21.1 R21.2
Content-Language: en-US
To: Stefano Stabellini <sstabellini@kernel.org>
Cc: julien@xen.org, bertrand.marquis@arm.com, andrew.cooper3@citrix.com,
 roger.pau@citrix.com, george.dunlap@citrix.com,
 xen-devel@lists.xenproject.org
References: <alpine.DEB.2.22.394.2310231628500.3516@ubuntu-linux-20-04-desktop>
 <967caedc-3d10-dee4-6614-1b9dcc0c1c66@suse.com>
 <alpine.DEB.2.22.394.2310241753220.271731@ubuntu-linux-20-04-desktop>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <alpine.DEB.2.22.394.2310241753220.271731@ubuntu-linux-20-04-desktop>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0410.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:d0::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_|DUZPR04MB9727:EE_
X-MS-Office365-Filtering-Correlation-Id: 85a8f8ce-3401-4e4f-6aca-08dbd53174de
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	OhlLvzIkLiYwGcEXCMFHKjc92GnUaNEiynmG28EK/bk3bOluPjr8cuFhwZ2yciDq4hsPDOkqH1jeDaOLqFzJT39qxiAjFC08B42YG8G2UA3U8TPpARb1hUWVLZ78w+WSwaV75JhBmd+Zmbx8HHUF8wnLsLSq9FetEWI83fqf7/EI5iAKSrXj+zF5TufGy3E7uWBwSfjyhW2qpNIJXMEzRL0EAn2e1sBPpQYg+eUx7Kgl1yQwwC9TpNOTO2Xa9wcA3np51uztjpoAZCrjh1GK+b7Pn7+6oz5Nb8TfVn4Mx1+/TNeRlPgSVelStwLWWZFDD90reqps8ohgnGZD8lo+QqBvuEoXCTQHC3GnC6KHkmtzEytSt7lUGqYjkeEMBc/uVGVj+Q/T5B31FV7933sTJ95x1k36MgsmJplSapBSRTMzgsXb36koEg7GEuYZ8mwuajQP/UhKa9BGSuzDpgqSVDi76P+Sz7pjM9WH/zXaFW8IaeOg/+TU6hphOFy4rXYatqhjJ99mIoC+jbbTjm5nNfSW4BuV1A8GwO6/xU0WSs4WM6WhO3EGWwHHLQnm91SNqsuxDBDmcdWVmUwJznDqxvc5EfFZKLhZyyDlXz/o6NUL0MkeCsXIr3sRYR1YT98RsElOWTC8vaO5micmqa+1eQ==
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)(230922051799003)(451199024)(1800799009)(186009)(64100799003)(31686004)(2906002)(2616005)(53546011)(26005)(8936002)(478600001)(6512007)(6506007)(41300700001)(316002)(4326008)(66946007)(8676002)(5660300002)(66556008)(66476007)(6916009)(86362001)(38100700002)(31696002)(36756003)(6486002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?c3dPSjNwWkxjc2QzaDdsSytCd2tNSTJsaStHWFNUL3IrbHBmbjFZTldGMkZX?=
 =?utf-8?B?L2diMmRucmRZOEh5NXRhR2JNVWF2RFlENFZKTjJiMVR4SUNhNkVmQm9WN0RS?=
 =?utf-8?B?NFI1Nk5iWUwxc2ppZGhzMjBXSnFEaU5DQVJPMm1BZ0RVRysxbzN5VGVYWnVW?=
 =?utf-8?B?eVluY2kvME5QL0dFcWQ3VjlwNTJ0SFJBMy9Iam1WK3hzNDFSM0d5R2hWUkxr?=
 =?utf-8?B?bjRlMVRIODNIbTRjdmhMWmpmVUF6Ym12RTZTaVNXMkFpb29tczlkV3ZVVVND?=
 =?utf-8?B?MDFMaFdCQU4vT2tJRUplUzFMb25yVlkxZUFFZmNEdjFyZ2NDWU53QVRlcHFs?=
 =?utf-8?B?QjB3UHEvMzVmK3NHZ1pBc1lNN0g0aVYyb2xzOUVoUlFaRXZIUWVoTEgya05h?=
 =?utf-8?B?M1lpLzNUN1lEQUZtMjZKV1JHSlhZVHF2TFBCKzJuclBhWnBCc0xUUWErYmhV?=
 =?utf-8?B?TTdWN0o2Rzg5TXFoOEI3NUxHcWhzam1Sd1VmSUFDRDBBSXFzenNDeWw2V1dF?=
 =?utf-8?B?clZlbzBUTms2dHJnNkZRZGhGcnp5TE1xZ0FZQURiTGZpRm5meWNGL2QyRU5u?=
 =?utf-8?B?TXNxNHhnYjBXTm9qTnJzLzN4WG1QeWhJc09hSG1ycW1VZVUyaDFHZERNVHF3?=
 =?utf-8?B?N2xZRmRQRjlUZWRnaHo1b3dFUlUxVkUrRU92eW9mcDdlUVBheGcwZUFyMW42?=
 =?utf-8?B?bE40ZDc5cU5MeGU5RmdNUldwRVFsZlZRTzZISU5Fd25hSmtPVkNmRDVyN1B4?=
 =?utf-8?B?TVZ3Yk0yNWtVMmg2NTNjWU1aWGx1WElVc2xqbFdCc0RaUTZtQ0htQ2daRnll?=
 =?utf-8?B?QUlXZ2lSajFGclZWbWhvV0xDME43VTN2Z1dLWlROOWtDb0tYVzZNZHkwd29p?=
 =?utf-8?B?QjVzLy9zNmxzbzhwTTg3dWZkK0EzQlYxZURBR0M2ME5RWEJXQldGYnNYMnBJ?=
 =?utf-8?B?M3FDdGVCald0WnBFOC92b2RFc3U4bHcyMFBNNHJLZ2lKVmRGVlJEbFZ4bU5h?=
 =?utf-8?B?Z3NvT0pxRmJMcnFEK3RBVWRuL3pPbkxzL0I0dE13MitlZ1ROUmJRdnVHNm5q?=
 =?utf-8?B?S1BDOG15VmZiT0V2TDBOSXpVNzI1bmZqS1dJODlabVhJZytGOWtNVlBUdWZN?=
 =?utf-8?B?Nnp0dEhmMDNuNEJPejlsSDg5a09MUkEwcjR4UmtNV0QzTENQZ2c0V1NBekdX?=
 =?utf-8?B?NDZyd0VrRTlmSGJnbUdvdXlmQlRjVlZ3TlJPMWxpVElCc3ovTWJsUU9GcEFY?=
 =?utf-8?B?cnJ1Zk1hZjNFbmkrZXZTN2hKVnRLRkdtSzV2M2Z4VUFEcDh0cDdLREh4emZm?=
 =?utf-8?B?VmY5d0oxM3Z1RldEKy9UUGJlT2swVlNYZkVMbFFWb2FsZlJQMkxUMzJ1TDBv?=
 =?utf-8?B?TXVjUHhQdmIwYU1FcEJINndFS0plWXE1Uk9zdTl3dExEY1RXclo5SjFPQ0RF?=
 =?utf-8?B?NGxWNURjTFFDRWNaSEVMWmxXMHh5VFU5QUtPZk4wU202dlVRMjFWQm5MTm1D?=
 =?utf-8?B?M1VxdVhpbzRBaGZoem9pa0NaYzFXUUZGZzh2L2h0Zk5EdkdtbDMxVCtseHhO?=
 =?utf-8?B?VzFXaXpUay9oYW9YVWJpaWlDWUZ0VUdnTFVmYnJ0REl4aEg5aVNBT042Z2Y5?=
 =?utf-8?B?NEx4TEFRcWpEaEJzbW5HcEwzQVlUQlB5MFVPL2dTUTVGWmkrRHdkSTd0Y1ZQ?=
 =?utf-8?B?bVdSZ21MSllnL2U5NVdDazJmbWd6VFNuVGZVZk5QaURVUURXQzRXNmdXVmEv?=
 =?utf-8?B?K3Q3REJ6N1lvZkVMRGx3a0NMb1NKeDhiLzRaMW1KZzVUYWU5SmFRWnBlUHZZ?=
 =?utf-8?B?aGF5MVAvdm9oSXErbGN2a05hL3lNZU1qTjU3UTZ6S2pVakJJU2pDSEFEL2pB?=
 =?utf-8?B?aC8yeGVKampxRTQ1MXhZNXFPMUE4WnRvOElHcW9iR2JVWERIaFdvK1ZhbzBP?=
 =?utf-8?B?RUcvczBSK1EwMFBRNTFra0xHUUVydzRFNWdlbU03VVJ2UDhoWkVSdTIzSjVz?=
 =?utf-8?B?bTZwOWNsSGJUVWE1V3B4NVZVVDFTcW1IYzVFYml3aHdGRytWYjk3TUxVUEU3?=
 =?utf-8?B?RWptNUV0c1ZTZ2hvc25OcU0vVVNGVzF2UnJqcWZJUTg4SzMvTjJTNnZKczNj?=
 =?utf-8?Q?TWnYpwwMC3p+Kh05e3GvyPUb0?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 85a8f8ce-3401-4e4f-6aca-08dbd53174de
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Oct 2023 08:07:39.5357
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 5xQ2JyydxZO6is8UnFse8Gi86+GhYfOBxzZosmIiMbPqtk3gOAvSDzgL/pqg9Tub+4EZCqLTyOci54et0eHOYQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DUZPR04MB9727

On 25.10.2023 03:15, Stefano Stabellini wrote:
> On Tue, 24 Oct 2023, Jan Beulich wrote:
>> On 24.10.2023 01:31, Stefano Stabellini wrote:> --- a/docs/misra/rules.rst
>>> +++ b/docs/misra/rules.rst
>>> @@ -422,6 +422,13 @@ maintainers if you want to suggest a change.
>>>  
>>>         while(0) and while(1) and alike are allowed.
>>>  
>>> +   * - `Rule 14.4 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/R_14_04.c>`_
>>> +     - Required
>>> +     - The controlling expression of an if statement and the controlling
>>> +       expression of an iteration-statement shall have essentially
>>> +       Boolean type
>>> +     - Implicit conversions to boolean are allowed
>>
>> What, if anything, remains of this rule with this exception?
> 
> Not much, but there is a difference between following a rule with a
> deviation (in this case we allow implicit conversions of integers and
> pointers to bool because we claim all Xen developers know how they work)
> and not follow the rule at all, at least for the assessors. Also,
> anything that doesn't implicitly convert to a boolean is not allowed,
> although I guess probably it wouldn't compile either.
> 
> We could also try to find a better wording to reduce the deviation only
> to integer and pointers. Any suggestions?

Since compound types can't be converted anyway, I think only floating
point types (and their relatives) remain, which we don't use anyway
(and if we did, excepting them as well would only be logical imo). I
therefore see little point in making "integers and pointers" explicit.

Instead I wonder if we shouldn't make ourselves honest and say we
deviate this rule as a whole.

>>> @@ -479,6 +486,24 @@ maintainers if you want to suggest a change.
>>>         they are related
>>>       -
>>>  
>>> +   * - `Rule 21.1 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/R_21_01.c>`_
>>> +     - Required
>>> +     - #define and #undef shall not be used on a reserved identifier or
>>> +       reserved macro name
>>> +     - No identifiers should start with _BUILTIN to avoid clashes with
>>
>> DYM "__builtin_"? Also gcc introduces far more than just __builtin_...()
>> into the name space.
> 
> Yes agreed, but in my notes that is the only one I wrote down. I recall
> that the complete list is a couple of pages long, I don't think we can
> possibly add it here in full and if I recall it is not available in the
> GCC documentation. More on this below.
> 
> 
>>> +       GCC reserved identifiers. In general, all identifiers starting with
>>> +       an underscore are reserved, and are best avoided.
>>
>> This isn't precise enough. A leading underscore followed by a lower-case
>> letter or a number is okay to use for file-scope symbols. Imo we should
>> not aim at removing such uses, but rather encourage more use.
> 
> More on this below
> 
> 
>> In this context, re-reading some of the C99 spec, I have to realize that
>> my commenting on underscore-prefixed macro parameters (but not underscore-
>> prefixed locals in macros) was based on ambiguous information in the spec.
>> I will try to remember to not comment on such anymore going forward.
>>
>>> However, Xen
>>> +       makes extensive usage of leading underscores in header guards,
>>> +       bitwise manipulation functions, and a few other places. They are
>>> +       considered safe as checks have been done against the list of
>>> +       GCC's reserved identifiers. They don't need to be replaced.
>>
>> This leaves quite vague what wants and what does not want replacing, nor
>> what might be okay to introduce subsequently despite violation this rule.
>  
> My goals here were to convey the following:
> 1) avoid clashes with gcc reserved identifiers
> 2) in general try to reduce the usage of leading underscores except for
>    known existing locations (header guards, bitwise manipulation
>    functions)
> 
> However, for 1) the problem is that we don't have the full list and for
> 2) the problem is that it is too vague.
> 
> Instead I suggest we do the following:
> - we get the full list of gcc reserved identifiers from Roberto and we
>   commit it to xen.git as a seprate file under docs/misra

Such a full list can only be compiled for any specific gcc version. Even
non-upstream backports by a distro may alter this list.

> - we reference the list here saying one should avoid clashes with those
>   identifiers as reserved by gcc

With the list constantly changing (mostly expanding), that's pretty
hopeless.

> And if we can find a clear general comment about the usage of leading
> underscores in Xen I am happy to add it too (e.g. header guards), but
> from MISRA point of view the above is sufficient.

But what we need isn't a description of the status quo, but one of
what state we want to (slowly) move to. The status quo anyway is
"no pattern, as in the past hardly anyone cared".

Jan


From xen-devel-bounces@lists.xenproject.org Wed Oct 25 08:18:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 08:18:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622677.969707 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvZ6G-0008Ra-Hz; Wed, 25 Oct 2023 08:18:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622677.969707; Wed, 25 Oct 2023 08: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 1qvZ6G-0008RT-FN; Wed, 25 Oct 2023 08:18:48 +0000
Received: by outflank-mailman (input) for mailman id 622677;
 Wed, 25 Oct 2023 08: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=e1rq=GH=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qvZ6F-0008RN-A9
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 08:18:47 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur04on2072.outbound.protection.outlook.com [40.107.7.72])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 1e04200e-730f-11ee-98d5-6d05b1d4d9a1;
 Wed, 25 Oct 2023 10:18:46 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PAXPR04MB8457.eurprd04.prod.outlook.com (2603:10a6:102:1d8::18)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.19; Wed, 25 Oct
 2023 08:18:16 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6933.011; Wed, 25 Oct 2023
 08:18: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: 1e04200e-730f-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=UmU5hm5eHhZjflXxOh/p3MZ2gVxIZyb+/pRQoHKT5WaxO15B88Hg25H/DL73RIOFxFIO5+1HY5zlU42T28QX6yxZtIWBnkfr8Jf1w5F1wV9kbrn+PE4hF4D2FqKaby5qKVfzj77cwiMIXOe0EsGUWgRNTCypLtQ1t1vfmyZbabd8fNLQdeIr3hML9uuQJRx8OpnitVo2vZtscUQAZnUxc7QhSylTGfA7zxrxrjCcmDypGWz+Aa0umhbrFMXdCQgMHvm1NSkD7jz+VqNohPexoKBygSKl4OfpDomi27X3oqeXfGeVoeSDYHFce5Qx0l410VTKZGX3Hfcqv78GxWO/Wg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=yfe9SUBkQjC3NVIKgSgfgo08Sk/dCBtM8YEv6cZMioA=;
 b=M7ysaQ1q6KHUNxLVvNfJwMsF+mb0/FvktGLgVBOAqG0AzzmPvVmzoRzfB9d4x6wScD2pBUotYpxrGGQbSB4QESdYuCoX1XThxS3YWkg08KGgxnDZw9/+uOwr5uV8zlLITlQl6y1z21lfCUdNTGKk+5Z7mohfEpnyZm8Z/IQvo3xaolbc2xujrP5juVFgP2kQ+T4aLfGNfIaad+OTCOi+POy+dHhl70cvfKUlyOS3Fv+wRlu7RvORHBhLo1DQK4f4c5BzC55GXgozKGNimoZuNcMnX4dzR5psNuKRbIEA8nuBFkGcbFkxKZm6Od9CSxjCp+AzmZ0smieRX7QIQuAbWQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=yfe9SUBkQjC3NVIKgSgfgo08Sk/dCBtM8YEv6cZMioA=;
 b=z7fcezFzR+VQ1sZaR42zhbbZQQjOCVrR7HJe9egqkrxj8j+HeOogYP1hBUE0oewpqFq34S4bcr2HH8b8WkHnDmQIxW8RepumCpVKj+U7Gr6uT3rKs+4tsbQPo9f8SbSMVDqGTzg7/RsjA8zDjGsFhzdEcpLykZYo6BDpBl8yEOTJt/eTAC8Zm7hT+ORC50CdGTvWa4ccUmhpmO+eftOVsle5ykJHmpD6NUOauF0DmBQjhiWMIbV2HiecyTGRdE6Qum9aoESy2O2aWQdTeL4NrRrpJCdOIdd1+eXTSwaoXAbuZqXGVtLR4xP5Un3hA21dRpcTaO/Qlh+tPMSbL4NqNw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <f546b8dc-baa8-c178-12be-70f7c1a8fec8@suse.com>
Date: Wed, 25 Oct 2023 10:18:14 +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: Stefano Stabellini <sstabellini@kernel.org>
Cc: Julien Grall <julien@xen.org>,
 Stefano Stabellini <stefano.stabellini@amd.com>,
 Simone Ballarin <simone.ballarin@bugseng.com>, consulting@bugseng.com,
 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>,
 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>
 <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>
 <725f5193-c8d3-1bc8-cd62-2a2b1b5ecc01@suse.com>
 <alpine.DEB.2.22.394.2310171709310.965337@ubuntu-linux-20-04-desktop>
 <ead797ed-84cc-fb70-5259-7e11211d049e@suse.com>
 <alpine.DEB.2.22.394.2310181739270.965337@ubuntu-linux-20-04-desktop>
 <e642bc2a-cefa-4ee4-6394-3c10102e8164@suse.com>
 <alpine.DEB.2.22.394.2310190915590.1945130@ubuntu-linux-20-04-desktop>
 <6374f0f4-d58f-83ca-6eb3-d5a9fcbac525@suse.com>
 <alpine.DEB.2.22.394.2310201622160.2356865@ubuntu-linux-20-04-desktop>
 <36e6dd08-918c-9791-0dab-ca75d4b98d7e@suse.com>
 <alpine.DEB.2.22.394.2310231346370.3516@ubuntu-linux-20-04-desktop>
 <af4a86bc-40d3-4363-adc8-30981652cd2b@xen.org>
 <c1fa350f-6f49-e2b1-0cda-dec99df415ae@suse.com>
 <alpine.DEB.2.22.394.2310241254480.271731@ubuntu-linux-20-04-desktop>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <alpine.DEB.2.22.394.2310241254480.271731@ubuntu-linux-20-04-desktop>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0332.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:ea::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_|PAXPR04MB8457:EE_
X-MS-Office365-Filtering-Correlation-Id: 887de8c3-9692-4e7f-c276-08dbd532f09f
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	URUNyZhYqRt3b/5J/fs2Khxjs/bpYrlVusAztpVH0rt+0jgXfZ4melFWyLOAjK7kqT7iUavB42vBnZil8Ar6G+7n/B5cm2a5rTFOjAWVlceSCzG7mVSL2wzasofiw96gie+1WaA0eap6OmyRHNHjSxuXiNqAmeYG7nZ2S5kDmdmKLRRQqhG7vbPmwdqFc7+lH4IWGygtJaRfLRditgPOcSS0QSgD8XOWWw3s/p0WX3As4T9x48Lj0igAAW6cEjaPwFaqr2Ze+S1hJHLjWe3BMKFrenzubaIJ/lpoN9WBKU7+TQf7MF166V+vLRlbmrovC3wgPsIoHfKpEsl/WVuIRipjp1Df4pPin/x2Yn1633Fr/QdYFaLuM+HNXQPxieTDHX94mXYihFLImxnFniYYUOytY2Ny6A0vmP9V8F67N2WfyPewfPwlK6FGTdaKUcoJkXGe11FJR3859Xmzc/seKNeR3MHekO+UdHUZthmQPvFAhsGgpmGEI31d34yPbzsIgdhmBhCTuL+n5lgs95Xmki/OdXjAwgBQsG/YTf8482ci4G9aj1mBqE/50LZvVHg7e+v2wQi2MECithSOnLow72+Cof695ztqVjO65yx5lh/zMOor2AIh0shKoSoFJhGIokMDTjUBkJqoJ3xzBemJQQ==
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)(376002)(346002)(136003)(230922051799003)(186009)(1800799009)(64100799003)(451199024)(41300700001)(6506007)(53546011)(478600001)(2616005)(6512007)(66556008)(66476007)(66946007)(54906003)(36756003)(6916009)(316002)(31696002)(6486002)(86362001)(26005)(38100700002)(8676002)(8936002)(4326008)(7416002)(5660300002)(31686004)(2906002)(4744005)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?bHh5eXo4TkZTVzVObHgvbmhJbjVaWU1vZDF3VkhuY0VycUR2a1pZbS90Q0NJ?=
 =?utf-8?B?RjErVFhDOWs2K29aYmZFb29US1NNSUdLb0YyTmkrOFlqMHFLUW1DSm1XRXFp?=
 =?utf-8?B?d1I3dUFzYUdJQTZudERkWGJBSTVJc0o5MXFVNUJWOWpoOHVqV1FPVGJoMHRR?=
 =?utf-8?B?bDh3MU9Ddkp3TWRNUG14TXplQzJtazBsSGVCcmdrbm1QSW92cUpXRmF2akVi?=
 =?utf-8?B?M25BUXk4K3U4bWpxZEdkc0hFUEZ6V3dsVjVuZUdRak04M0xCZnhPMFZsb1la?=
 =?utf-8?B?UVdNaWxob3pVOFo2ZzRva3ZOdy9sc2dWOEI2TWYvSVIwREkyVEtxRFYwQm1D?=
 =?utf-8?B?YmN2L1VNMFFIMDhUTkpEKzFXWEZsbStpMTJOMGFSZ2p3RzJKQ3ZheXFqMm11?=
 =?utf-8?B?ZjlSempFVzd3M1ljRWErNFM1MTBZU0NHNVNOK2phSDlUZEc0UkJwRmVSMWlF?=
 =?utf-8?B?RWpPU1plbVEzSWJ1V08zbE80NDJBc3VGZW9xYS81ekhrRlFSYW9lc3FQeGVj?=
 =?utf-8?B?d3RzTU1vbmd3M2l6N0pXZ3NBRytoSVBGaTgxdTJQT3g0ZE9JTEJQN1JZZENG?=
 =?utf-8?B?eEVpYTRjMXVMam83RTJEQ1lJU0xQejdYZUxna3B3NW4zcEM5Z0pqK2VwVTN6?=
 =?utf-8?B?blQ0c1RnNUZ3elRLd1JvdEcrN3h1TFFhcC9ka00wcnJNaE0reG9wdDVuU2Yz?=
 =?utf-8?B?UXlqc3RRNjBoUHJ5NEQ2cThRT0JIQTdkUDViK1MwZ3UzRlFocVVUb3pDQXd1?=
 =?utf-8?B?Y0VPNXdVeUovR2JJdndDVlZRc1QwZFNneUYvMW9qeElGaVZnQzVzSHdOdTJw?=
 =?utf-8?B?Y3FiUDR0QytEM1VtRnF4UUVtbzJXMU95cjJUeGorZURyYUdSNFl4bmZwWmZt?=
 =?utf-8?B?MWVXdDFseWRqRkZrVTZhUkxITEJ3aG5ScXp4T0xQUkFsUTBFaGthbFB2NXh2?=
 =?utf-8?B?a01LMVp4V3lmbUNVcXF4Q3F0Wjd5ajQ5bGlmOUNDOWMxL2pBTHZmaGppRWRo?=
 =?utf-8?B?eEwxRHZzSHVvVUhjamp5bEhtNlN1VlhwSWo3ZEJUZDJXbzY1SHRXcEZtempL?=
 =?utf-8?B?VjVxZFA4aW1RUXlndWpoWDB0Y0cvdlE3VzdycjR6VWpiaWF0blRiYWJTTi91?=
 =?utf-8?B?dEZHUEl1SUZvMlVaRjRDWGNKck5MRXZoVnBlaVdwOFFLSUx6S1BlNDBXaTNz?=
 =?utf-8?B?N3F0a3IzbDQxeEdYbGJRcS9rOG82dCtwS0hwWWppY0d3T25JNE9PblFGOGJR?=
 =?utf-8?B?V0ExdmNtMnFvQzBvVEhtOXN3cTRuRG5VZlpZU1FQcjhPd2RIMFJYWldwQ1dx?=
 =?utf-8?B?WmhCNDRVUGhPdnJnVjYyRk5OOWZPc0pDbk56SGpETWcvcmJWdFJtbjAxVUFZ?=
 =?utf-8?B?Mk5wWnJySURjcnpGTFFia29ZdUtOTFRrakxDb29MVEVkZmpuZUxmZkhUeWI3?=
 =?utf-8?B?SllYSENRZ05HZzlwNFplTHFRdjN3QkNjTkoyOVJFaW93Q05EYkJwTnMzRENP?=
 =?utf-8?B?cmJVbGk5Zk5NbU1veGZCbmJvcGtEY0R4L2swUGp5bndTK052dHBUMTUvN1ZK?=
 =?utf-8?B?czJjRkY1YkJoeUt4UW9xMWxEYVRtRmVqTU5wanlaRnJ3TXRCMmF0NHpoemJt?=
 =?utf-8?B?dzFXS1Q0RmgzTzBZVlVzQytKdURhV0Z4ajFDQ0c2R2FjQm9tYit6bTlHbE5w?=
 =?utf-8?B?VjhYblVnRERsTFFmTUozTUlVaTRoamlhRXRUOFZsU1Rkc0lObzFHaGRhckNV?=
 =?utf-8?B?M1hDV3RQY0lTS0hMVHExNUQ2Z2lMTlhrbEpnZVJjNTBEYjc4dHJaVjBQU1JV?=
 =?utf-8?B?RnV4Wktxd1BLWDRyTlJzQktlNnJEdWpxYUU4eWM4bkZVbm84QTZSa2JjakpG?=
 =?utf-8?B?ZDMyR1NwNXM0aG9YZXd6ZUhKWncrYTFqZ3h6d2VWeHpMeWJqckMwVk1CUTZs?=
 =?utf-8?B?Qmg2WDhEcm5LUWltczduVXFaZXd1QkUvR3RpVThuMVAyWW4zWERGWU1pUnR0?=
 =?utf-8?B?Z1R6Ym5xeWtrUjhrak1mNVNCdHNXQ21HS0pkNFRoYTRWdGxwbTRsTGFaQmdo?=
 =?utf-8?B?WVhqSmdYZHZWd3hVWE0zN1NDakJQSkZYRGpVN0EwYnA1bUE4ZGl0aFlSZ0Nm?=
 =?utf-8?Q?yZg3EiW2DPH7PU/i4hr8RGIXS?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 887de8c3-9692-4e7f-c276-08dbd532f09f
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Oct 2023 08:18:16.6460
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: ho9PlZfjRmoXvF4NtdnqRlMK0FWUFMJ+uP709wzMnrYGfTIHUJSj6prwVlJujzfSscF3bcH7IJWg8BoDQQRzOw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB8457

On 24.10.2023 21:59, Stefano Stabellini wrote:
> If I understood correctly I am fine with that. To make sure we are all
> on the same page, can you provide a couple of samples?

Taking the earlier example, instead of DRIVERS_PASSTHROUGH_VTD_DMAR_H it
would then be VTD_DMAR_H. arch/x86/pv/mm.h would use PV_MM_H, but then
you can already see that a hypothetical arch/x86/mm.h would use X86_MM_H,
thus colliding with what your proposal would also yield for
arch/x86/include/asm/mm.h. So maybe private header guards should come
with e.g. a trailing underscore? Or double underscores as component
separators, where .../include/... use only single underscores? Or
headers in arch/*/include/asm/ use ASM_<name>_H (i.e. not making the
architecture explicit in the guard name, on the grounds that headers
from multiple architectures shouldn't be included at the same time)?

Jan


From xen-devel-bounces@lists.xenproject.org Wed Oct 25 08:23:24 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 08:23:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622684.969730 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvZAb-0001ZH-83; Wed, 25 Oct 2023 08:23:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622684.969730; Wed, 25 Oct 2023 08:23: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 1qvZAb-0001ZA-46; Wed, 25 Oct 2023 08:23:17 +0000
Received: by outflank-mailman (input) for mailman id 622684;
 Wed, 25 Oct 2023 08:23: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=0TUm=GH=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qvZAZ-0001Z4-Ib
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 08:23:15 +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 be0a3c42-730f-11ee-98d5-6d05b1d4d9a1;
 Wed, 25 Oct 2023 10:23:14 +0200 (CEST)
Received: by mail-lf1-x133.google.com with SMTP id
 2adb3069b0e04-507cd62472dso707873e87.0
 for <xen-devel@lists.xenproject.org>; Wed, 25 Oct 2023 01:23:14 -0700 (PDT)
Received: from [192.168.201.133] ([94.75.70.14])
 by smtp.gmail.com with ESMTPSA id
 w4-20020a05651234c400b005057a5587f0sm2453059lfr.52.2023.10.25.01.23.13
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 25 Oct 2023 01:23: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: be0a3c42-730f-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698222194; x=1698826994; 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=sbl5lJk5JdsasWzGlixmMNMVGhhkcgMQJ2dAZOTeOe4=;
        b=eBHdki/DAuUkTlsmwmGv4m9iyqOPEJja18bDDiF1FO8E41mviQRmYpcMYsxuATEZeL
         Um0YaTW3CaIicg1Y7oOFne201o+TJkaBdJ+n6epG7CodOhe08NJkafdR/PM4KUaSt7+B
         0+zaiT/ENYXn16m9lAVT8gc2vJhsb1gnF0u2xCpin9IRSMJP35oA6JmKXNBOrJeXfGuJ
         tVyY+dildDYo69IHFspETegohyQzFgXUbb2+255EGhgfFnZv0v2M82VUf1KaTpRSZtOx
         kJwL7UGSu0DnhHcrO4c4BHVRDAFsXS8HxtuYXs5ftpfLjq8wZT9Ko8sVbNtMJgBa1nh8
         noew==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698222194; x=1698826994;
        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=sbl5lJk5JdsasWzGlixmMNMVGhhkcgMQJ2dAZOTeOe4=;
        b=RBGjJLBlQhg/hasEUEbcSbaPCnFKgNVsz3mBaRzOoDaXV0lz9hcZd+PQ8po4Q0Emtt
         Kap/N6+GwPG32vQDf/uHii1vMaHPtXgLs9R9OC+F91q5/D/QaM5TAIaw4yPzkKWdD9JH
         P29974plYDOksa5Ast+uZCDsFieBOxymRjRVSE2U/N5Tbu1+US+XuKuFJPkaV/pOYx+J
         SQCWIvNuWXM3SbpVRNLZ2Cm33zRI1XWrOuzYwA2E/CGGmEJl4ELOiTybE3/oZMH+rC7I
         R2J6HR7KpjZeqn6To82mVwPC1ousFDZdcyKhQ+yt+jRX1O3zRs5EJva7x3m2TxWzeae4
         AZug==
X-Gm-Message-State: AOJu0YwDQ9xVRpbqNjTDkb9lQ/j3RS5rUd1kGZqJwjdERPTjAHH2Mnp2
	liYwqhWYmSyyWEsKwcpFwJE=
X-Google-Smtp-Source: AGHT+IEVcE+pxrnCtUOtDlVtXIhRaZf88scb3ZM3ZnHZtSINgZ++7DiXlrgR/vKXeS+eZyWqwHPjOQ==
X-Received: by 2002:ac2:5389:0:b0:4ff:9a91:6b73 with SMTP id g9-20020ac25389000000b004ff9a916b73mr4766463lfh.17.1698222193736;
        Wed, 25 Oct 2023 01:23:13 -0700 (PDT)
Message-ID: <52a1cb00087aa1c588ae76313379cc45307bf3b5.camel@gmail.com>
Subject: Re: [PATCH v1 04/29] xen/asm-generic: introduce stub header device.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: Wed, 25 Oct 2023 11:23:12 +0300
In-Reply-To: <2ad91fc0-43dc-632f-9c04-b5b95eb22c20@suse.com>
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
	 <3cc9ecc3abcd21c5ed7276b01bf5963e6a5fd5e0.1694702259.git.oleksii.kurochko@gmail.com>
	 <a20f5783-7ee3-6ed1-d4cf-379c30c64a12@suse.com>
	 <17fbd1d2c9f1fb1fa5121f69c743b2cd766f7620.camel@gmail.com>
	 <2ad91fc0-43dc-632f-9c04-b5b95eb22c20@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-10-23 at 12:35 +0200, Jan Beulich wrote:
> On 23.10.2023 12:12, Oleksii wrote:
> > On Thu, 2023-10-19 at 11:14 +0200, Jan Beulich wrote:
> > > On 14.09.2023 16:56, Oleksii Kurochko wrote:
> > > > --- /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
> > > > +{
> > > > +=C2=A0=C2=A0=C2=A0 DEV_DT,
> > > > +=C2=A0=C2=A0=C2=A0 DEV_PCI,
> > > > +};
> > >=20
> > > Are both of these really generic?
> > >=20
> > > > +struct device {
> > > > +=C2=A0=C2=A0=C2=A0 enum device_type type;
> > > > +#ifdef CONFIG_HAS_DEVICE_TREE
> > > > +=C2=A0=C2=A0=C2=A0 struct dt_device_node *of_node; /* Used by driv=
ers
> > > > imported
> > > > from Linux */
> > > > +#endif
> > > > +};
> > > > +
> > > > +enum device_class
> > > > +{
> > > > +=C2=A0=C2=A0=C2=A0 DEVICE_SERIAL,
> > > > +=C2=A0=C2=A0=C2=A0 DEVICE_IOMMU,
> > > > +=C2=A0=C2=A0=C2=A0 DEVICE_GIC,
> > >=20
> > > This one certainly is Arm-specific.
> > Yes, but the definition of GIC sounds common, so I decided to leave
> > it.
> > But it can be changed.
> >=20
> > >=20
> > > > +=C2=A0=C2=A0=C2=A0 DEVICE_PCI_HOSTBRIDGE,
> > >=20
> > > And this one's PCI-specific.
> > >=20
> > > Overall same question as before: Are you expecting that RISC-V is
> > > going to
> > > get away without a customized header? I wouldn't think so.
> > At least right now, I am using the same header device.h as in ARM,
>=20
> Are you? I just double checked, and I can't see yours matching
> theirs.
> First example of a difference is them having struct dev_archdata.
I just tried to commit minimum for now.

It is how device.h is looked ( but still I have to align with ARM's
version, I used older version of it for some reason I don't remember )
now:
I just tried to commit to the minimum for now.

It is how device.h looks ( but still, I have to align it with ARM's
version. I used an older version of it for some reason I don't remember
) now:
https://gitlab.com/xen-project/people/olkur/xen/-/blob/latest/xen/arch/risc=
v/include/asm/device.h?ref_type=3Dheads

>=20

~ Oleksii


From xen-devel-bounces@lists.xenproject.org Wed Oct 25 08:24:08 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 08:24:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622687.969740 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvZBN-0002SA-JX; Wed, 25 Oct 2023 08:24:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622687.969740; Wed, 25 Oct 2023 08: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 1qvZBN-0002S3-GA; Wed, 25 Oct 2023 08:24:05 +0000
Received: by outflank-mailman (input) for mailman id 622687;
 Wed, 25 Oct 2023 08: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 1qvZBM-0002Rt-JE; Wed, 25 Oct 2023 08: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 1qvZBM-0002zB-Gv; Wed, 25 Oct 2023 08: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 1qvZBM-0004BK-2p; Wed, 25 Oct 2023 08:24:04 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qvZBM-0004dl-2H; Wed, 25 Oct 2023 08:24: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=92QC9Bh8oGFaHhunSAc7qHA79oJ8ccxBXtBeEXxreTc=; b=KyYN4KOl+/XCHTgQxMtV0zRupa
	HR/1HQs3GD/i2KHJOamug6xLJU5orIdrnYXfodT60X0i5lBV500zLlwMjn5Bh8eU4lRVREElh/Ag+
	Ml80Uuph9HEIH3JcQ8PyWPSJhTZ05mfH3m9isRJfvjRZm9naWM8c60carFBdK11ucvbs=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183519-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 183519: tolerable trouble: fail/pass/starved - PUSHED
X-Osstest-Failures:
    xen-unstable:test-armhf-armhf-libvirt-qcow2: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-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-i386-xl-qemuu-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-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2: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-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt:migrate-support-check: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-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: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-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-amd64-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-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-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-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-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-amd64-i386-libvirt-raw: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-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-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-dom0pvh-xl-amd:hosts-allocate:starved:nonblocking
X-Osstest-Versions-This:
    xen=d9f07b06cfc967e128371c11f56699cf5ee40b43
X-Osstest-Versions-That:
    xen=bad1ac345b1910b820b8a703ad1b9f66412ea844
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 25 Oct 2023 08:24:04 +0000

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

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183489
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183502
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183502
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183502
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 183502
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 183502
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 183502
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183502
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183502
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183502
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 183502
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183502
 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      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-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-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-xsm 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-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-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-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-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-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-amd64-i386-libvirt-raw  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-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-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-libvirt-raw 14 migrate-support-check        fail   never pass
 test-amd64-amd64-dom0pvh-xl-amd  3 hosts-allocate               starved  n/a

version targeted for testing:
 xen                  d9f07b06cfc967e128371c11f56699cf5ee40b43
baseline version:
 xen                  bad1ac345b1910b820b8a703ad1b9f66412ea844

Last test of basis   183502  2023-10-24 01:55:12 Z    1 days
Testing same since   183519  2023-10-24 22:37:14 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Henry Wang <Henry.Wang@arm.com>
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.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                              starved 
 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
   bad1ac345b..d9f07b06cf  d9f07b06cfc967e128371c11f56699cf5ee40b43 -> master


From xen-devel-bounces@lists.xenproject.org Wed Oct 25 08:24:15 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 08:24:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622690.969750 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvZBX-0002pD-S2; Wed, 25 Oct 2023 08:24:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622690.969750; Wed, 25 Oct 2023 08:24: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 1qvZBX-0002p4-P7; Wed, 25 Oct 2023 08:24:15 +0000
Received: by outflank-mailman (input) for mailman id 622690;
 Wed, 25 Oct 2023 08:24: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=e1rq=GH=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qvZBW-0002n5-Jp
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 08:24:14 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 (mail-am6eur05on20617.outbound.protection.outlook.com
 [2a01:111:f400:7e1b::617])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id e07d0143-730f-11ee-9b0e-b553b5be7939;
 Wed, 25 Oct 2023 10:24:12 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PAXPR04MB8288.eurprd04.prod.outlook.com (2603:10a6:102:1bc::15)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.11; Wed, 25 Oct
 2023 08:24:10 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6933.011; Wed, 25 Oct 2023
 08: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: e07d0143-730f-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=JmnYst3sPcwQaRG6T2TPTiMBir2bVZFPsMix+JV7zfLgTs/6ohI14THXqB3tEJEpVyeowbwkJn+4vP+cQOGl0nQBF1cr5VgMiUujmubr1a3LKZrppfXY6be7y/FlCKL05k3rMGsItuii//QXa+LFviGMdEUqMNjEKDlaz+QCNg0Ljl85wAPboGfFsVn5t5pPZUNTxPaPnhGF07pCR0nvD9ed2nlooeXffybxiQOQUslYSfxY3AbhvlvFLHNrltnvoDpeLL4ovgStE2Elm55yhP4mNyod7WRMpK6SoP5zcBD4+NQfxns9tEldAveQZYK89HPk1HdbnLrHsxBMJ6VTTw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=OH2YBTXjJvyR02M51SEUYn+nvjE5otLRzJjOliwPOZo=;
 b=hhPpL2jeICn2LjN5p/oRKtiVaVk9yzeTIpv2tNPxdfo998rdajpo+dj/RD+pu5MshcANLK1iEtciF7lkM6LMXFsbIW56EDxhNsg0KPqndunVx6SCT12B4zo1YfpvIPNopQrdLYHLAC3ow1k2z7baQT60cwkfnsm0u8sRIkKvepntygTaIhY6+lG5JI3of53JgW1mzsrpt6azBPNRHU8T4j+QydEM6gm+Q97EkB19CaGMFef+b39kUAbYubfMbjcAlnsJ3c0+iUCJcUT6hceGNCLJYszkSDKABgePBcI5ddF2DPUZ3w4P3F+QZ3DpOoqYfZBnsmTTd/N/uU/tuXNalQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=OH2YBTXjJvyR02M51SEUYn+nvjE5otLRzJjOliwPOZo=;
 b=18ZVH3Fq6jqRZXzZj1AFnO3S+sJBGE/fB0vo5lb3zYZW8A/rssn3Yv68mDGbRoxhtXAHDRAygImNQK5BIGO3nDs19llolU58ozbicc7xl3btA8fqDirKHujE177SIU3q2O2mZMrbxJhIAkye8MNQzZRyTsi8nYj/UwdIynw/GKBdQnNHhK+G8vnAdwIyzpEtsbKuajxk6lPjauTXnkqYDO7N1rOHg45iE+0ChbNw5xWaSURW6kryjtosNaqzAi+nQVb5BOqsDv4ajyrihbQ10IYMHPPNridmTr+ehG78hOXZx+7yTSzIVlSf80vSoDBoVB5NezLx1rtQ7/VykMzuaA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <78107fe9-de43-30b8-7423-240450bc0da8@suse.com>
Date: Wed, 25 Oct 2023 10:24:08 +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][for-4.19 v3] xen: Add deviations for MISRA C:2012
 Rule 7.1
Content-Language: en-US
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.cooper3@citrix.com, roger.pau@citrix.com,
 Simone Ballarin <simone.ballarin@bugseng.com>,
 Doug Goldstein <cardoe@cardoe.com>, George Dunlap
 <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Wei Liu <wl@xen.org>, Nicola Vetrini <nicola.vetrini@bugseng.com>
References: <5e0f1bcd7b4325141e64a3c2d581034956b42293.1698136547.git.nicola.vetrini@bugseng.com>
 <alpine.DEB.2.22.394.2310241329390.271731@ubuntu-linux-20-04-desktop>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <alpine.DEB.2.22.394.2310241329390.271731@ubuntu-linux-20-04-desktop>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0276.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:e6::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_|PAXPR04MB8288:EE_
X-MS-Office365-Filtering-Correlation-Id: 90ec5f64-6955-4446-86b2-08dbd533c389
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	xS0XNMO9UQprR5saE4OAbBGPOhyn2hRFbIdhRhss83ekjamB/3SGnbugInni1ddEkIEIktclDOpuHTv/GAM5G+ALyI+bQjtlmLWum6WNNnvzeG08T3yxFnyrvydGjD5aHk2pE43YbInUmC9aqbZQWqq2xe5e8KEEi/ztyI7JHN7wZQJ7ksQ7f+KvBbA180XOeoj7BghqMVy7u2m6JR5pW2ZPcDm3LjmjyPTeDwPLRD3GeViF5aQNayUPpFJ+yqmNTBRdhM5Q+u8JFIWXAJh3w0Po9PVM+uktWBeml6SgOViTvjI/kyVR7nfV75fkWvsf3jasRIOv+xVLUjVYzCG6FBL3tVmkTRUIAxkSQ7Hids7Xvj+6xOY81bsvIjMGsRoqYw1XnnkEookTDwNADlijXPSu6tORWg+x5Dxr610+0X4oZV/ykEh/9kNLByTCdwzajP0GNdHjrgRP3giUPRJcE3gXPRi3eIqszJHrCkNsVX4q66Yfkh+GCOeGPASRM9FCTY44ljHVBegDG5iblO6yCxDMB+DMr38DXzuoRYXvfniTkDrwkgHdZbxRmNdQs0rGDXk2RZxpTQaV+8NZQ2Nr/CEO/aCfldBl+8uc6JjDAGqYKnaCpDvT8WtpT8k9AQZAjVJgf/+b5VNGDtEYHoOFXA==
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)(136003)(346002)(230922051799003)(64100799003)(1800799009)(186009)(451199024)(2616005)(36756003)(26005)(53546011)(6506007)(38100700002)(6512007)(31696002)(316002)(6486002)(86362001)(66476007)(66946007)(6916009)(66556008)(478600001)(54906003)(83380400001)(31686004)(41300700001)(4326008)(8676002)(8936002)(7416002)(2906002)(5660300002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?dXA3VUo0Y0o4OUFrR0RMU2VsODdPaWpFTGtLVCs1bGsxdTZWSDhXdzhFcmdz?=
 =?utf-8?B?Ni9ZT2RTQ2ZnRUFsa0FmNzNHbFU1KzA1NVVyRXpLUEd0a3NReFlmUDZpYS9z?=
 =?utf-8?B?dDZrb3JVMWRXdVpEZ1FreGFyVEovK3VXM1pETTBSZDc5SFlycTN6TnFMa1Zm?=
 =?utf-8?B?a25iSUxJMzB1WVZzbmxhbzZtQTZFK3VQOER0RTcrU2VNZGJYR0gzcUs0MUE0?=
 =?utf-8?B?OHQyckpkZHZFeXF5OXdUbndraGpvS2szMU05UThMeTJCZ1E1SkR3K01Xa3ZM?=
 =?utf-8?B?bVZxcTdjaWtHdEVqaGdrS2R6eEhTckhaWld4WEdNUGsvSlZ3N0ZrZFNKdStw?=
 =?utf-8?B?WThLMHJ5YmNocUZJRTB0QUppbW1KMjRsejhlMlR0QzJhYlJZLzBOcWtMeTlQ?=
 =?utf-8?B?ZXliNE9JRFFVd0lwR3p4RHd6TkIvVlNJcXJHdmVlSms5MzhLVm13ZkNHU0Ux?=
 =?utf-8?B?MS8vczRCRUYvdFA5ckozZUdPS3pWVE9aQ24zQjdUNTlXRENKMFo3a2JnSDVE?=
 =?utf-8?B?WHkwT2IyR25zdHVWMzZCMFdCNUdwWEg5elJqSE51SGhTTnYvTnNaOTVCaXFy?=
 =?utf-8?B?b3NIU09yR0JDYU5pdE9ESmlKdEs2SFR5aXh1QlhFNU43Sm9CaXV6YzU4ZEpG?=
 =?utf-8?B?cjF5YmE4L2JDZXlYMy9JTWEyRnkzMHFXYUQrNzM0dW8rbU9ia0tRMzcwclAz?=
 =?utf-8?B?Rzd3NjFVMlRjaTZCK2ZXem1RYnhRUW1rbmh0bnJhWnVjdXdQZjJhWTZMU05j?=
 =?utf-8?B?YU44R1VJdVRNcTQzZU5zanV2eE42YmMvZU5BQm1KVTZFYlFKcGtsTGhUMDRD?=
 =?utf-8?B?MGdLTkpRMlI1dCtab0xZVkdJMDV4Y0huZUhXWnpreE1CTTd0cUlxcmY3Z3V2?=
 =?utf-8?B?TndQZFFoelZIS1MwMUlscUlQa1h3Rkc3VHl0c0N3N1EvcmtjOEtoN3RwWXl0?=
 =?utf-8?B?ZVAwV21EcGNSNmRSYjFaR2JCV04vOVpickRNWXJzYzFpdEo3QU9TNEFTd1o0?=
 =?utf-8?B?bHVmQ093SXE1dUxlemxORGFVSFdLeTNnWHZlNjlGNlFKNjNVa2lySXdPUmh0?=
 =?utf-8?B?NC8xK1l1Z2FabGRGSUZiWEU2bEx5bk4rVTQvWXNkanhaaWkyK0c1UVk0QjhO?=
 =?utf-8?B?M041bkhDWGRPN0F6WkxYQyt1QXByTlZsMklhRDlxRjZ3bFZOaTFKZDdKS3JK?=
 =?utf-8?B?YmZ6RExHYkVqazV1cnArNGFocjdvbWRtMEE3Y04vNFZLQVdVaExaaFBseC9L?=
 =?utf-8?B?OFNGTW05TTUwZWJpUzEvTXRhcVFHMHVkK2VWM1l3WjU1UlhsK1FJbzlpcjkx?=
 =?utf-8?B?U2w1ODZXWGZEeDNydmozc3FvRXZFakZ1VWxlZENPc3d5ZXVncGhFWmJZeDRa?=
 =?utf-8?B?eFZjTkpnR3JKdlloZ0VKR2E2RnNlTlM1NFZxRThqemtmWVhSL1R2NHZxZ20z?=
 =?utf-8?B?ZytyT0lBQkIvWWRHc1QwL0x2KzMxWE5aVitqc0cvU0FISGlOTE4rWEY2WXdR?=
 =?utf-8?B?Tk5RL0xwbEFZMXdLL3J1RGpTSDJmL0owLzZENVlRSTlsNnJaSEZXZXlBWjQy?=
 =?utf-8?B?M0RsVkgxRWFWamhLdnNMRXFjY1BXUU1SamNlRWZYS0dRWGg0QXlwNjhTcGZ6?=
 =?utf-8?B?VzBXRzJFQ0cyMjVLWEVBbzhjQmlzTXA0YWsxbnl4cTB1ckZxQ2Rodk05ZmZs?=
 =?utf-8?B?d2F5MUltUWlZcXk1OC9oK2s1bzl3YmgySGF6S3dDa0VjcWE2N00wUkhmVXlp?=
 =?utf-8?B?UEJnUU5GbkdhWE9vUXVqSi81Ylh5b2l0R0NNd0ZUQ2VMWjlwdUF0N3RsV0dv?=
 =?utf-8?B?bzR3RStuNTV1eHlKZFg1U0Q2bGF5dW9BNjgvcVA3QWU0c2h2OHRUanV4SnlB?=
 =?utf-8?B?cldmUGg1aWZ6OENtUnlLaCtVNWZobTZUSEd3QlNxTWQ3djNMdmpLR1lkQnJU?=
 =?utf-8?B?czlYT2pZSlZWRDlrQ2RsL1RKWFpKODZCbnVhMzRPWWhaZ3JsNU5KbGdDd3FL?=
 =?utf-8?B?M01GcFVnQloyQ3grYUFhK3ZJZUlibUFIa29yWWk5bTdncU5VOU5NVUNDc01S?=
 =?utf-8?B?YWJMZ2VObVBxcitQbjJ4SE95Z09QUEltcTdkbStka0ozTWFkYzQwaTROZktP?=
 =?utf-8?Q?qMsxiTuyOy8p/ub3RsOtfy9VH?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 90ec5f64-6955-4446-86b2-08dbd533c389
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Oct 2023 08:24:10.4790
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 0LhCqEbUAllqAQ5fqCBmb1OXvbH4IENEkhIk07BcjlyuJOxCpAbP/+fBRUhtV2kE97wFAy3a55qRqt4+lIO53w==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB8288

On 24.10.2023 22:30, Stefano Stabellini wrote:
> On Tue, 24 Oct 2023, Nicola Vetrini wrote:
>> As specified in rules.rst, these constants can be used
>> in the code.
>>
>> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
>> ---
>> Changes in v2:
>> - replace some SAF deviations with configurations
>> Changes in v3:
>> - refine configurations and justifications
>> ---
>>  automation/eclair_analysis/ECLAIR/deviations.ecl | 10 ++++++----
>>  docs/misra/deviations.rst                        |  5 +++++
>>  docs/misra/safe.json                             |  8 ++++++++
>>  xen/arch/x86/hvm/svm/emulate.c                   |  6 +++---
>>  xen/common/inflate.c                             |  4 ++--
>>  5 files changed, 24 insertions(+), 9 deletions(-)
>>
>> diff --git a/automation/eclair_analysis/ECLAIR/deviations.ecl b/automation/eclair_analysis/ECLAIR/deviations.ecl
>> index fa56e5c00a27..ea5e0eb1813f 100644
>> --- a/automation/eclair_analysis/ECLAIR/deviations.ecl
>> +++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
>> @@ -85,10 +85,12 @@ conform to the directive."
>>  # Series 7.
>>  #
>>  
>> --doc_begin="Usage of the following constants is safe, since they are given as-is
>> -in the inflate algorithm specification and there is therefore no risk of them
>> -being interpreted as decimal constants."
>> --config=MC3R1.R7.1,literals={safe, "^0(007|37|070|213|236|300|321|330|331|332|333|334|335|337|371)$"}
>> +-doc_begin="It is safe to use certain octal constants the way they are defined in
>> +specifications, manuals, and algorithm descriptions."
>> +-file_tag+={x86_svm_h, "^xen/arch/x86/hvm/svm/svm\\.h$"}
>> +-file_tag+={x86_emulate_c, "^xen/arch/x86/hvm/svm/emulate\\.c$"}
>> +-config=MC3R1.R7.1,reports+={safe, "any_area(any_loc(any_exp(file(x86_svm_h)&&macro(^INSTR_ENC$))))"}
>> +-config=MC3R1.R7.1,reports+={safe, "any_area(text(^.*octal-ok.*$)&&any_loc(any_exp(file(x86_emulate_c)&&macro(^MASK_EXTR$))))"}
>>  -doc_end
>>  
>>  -doc_begin="Violations in files that maintainers have asked to not modify in the
>> diff --git a/docs/misra/deviations.rst b/docs/misra/deviations.rst
>> index 8511a189253b..26c6dbbc9ffe 100644
>> --- a/docs/misra/deviations.rst
>> +++ b/docs/misra/deviations.rst
>> @@ -90,6 +90,11 @@ Deviations related to MISRA C:2012 Rules:
>>           - __emulate_2op and __emulate_2op_nobyte
>>           - read_debugreg and write_debugreg
>>  
>> +   * - R7.1
>> +     - It is safe to use certain octal constants the way they are defined in
>> +       specifications, manuals, and algorithm descriptions.
> 
> I think we should add that these cases have "octal-ok" as a in-code
> comment. Everything else looks OK so this small change could be done on
> commit.

But that needs wording carefully, as it doesn't hold across the board:
Right now relevant MASK_EXTR() uses gain such comments, but INSTR_ENC()
ones (deliberately) don't.

Jan


From xen-devel-bounces@lists.xenproject.org Wed Oct 25 08:29:07 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 08:29:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622700.969760 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvZGB-0003u7-JC; Wed, 25 Oct 2023 08:29:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622700.969760; Wed, 25 Oct 2023 08:29: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 1qvZGB-0003u0-FS; Wed, 25 Oct 2023 08:29:03 +0000
Received: by outflank-mailman (input) for mailman id 622700;
 Wed, 25 Oct 2023 08:29: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=XAhw=GH=amd.com=Michal.Orzel@srs-se1.protection.inumbo.net>)
 id 1qvZG9-0003tu-Ne
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 08:29:01 +0000
Received: from NAM10-BN7-obe.outbound.protection.outlook.com
 (mail-bn7nam10on20618.outbound.protection.outlook.com
 [2a01:111:f400:7e8a::618])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 89fab2e1-7310-11ee-9b0e-b553b5be7939;
 Wed, 25 Oct 2023 10:28:57 +0200 (CEST)
Received: from MN2PR15CA0064.namprd15.prod.outlook.com (2603:10b6:208:237::33)
 by LV2PR12MB5798.namprd12.prod.outlook.com (2603:10b6:408:17a::6)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.29; Wed, 25 Oct
 2023 08:28:53 +0000
Received: from BL6PEPF0001AB53.namprd02.prod.outlook.com
 (2603:10b6:208:237:cafe::d7) by MN2PR15CA0064.outlook.office365.com
 (2603:10b6:208:237::33) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.33 via Frontend
 Transport; Wed, 25 Oct 2023 08:28:53 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 BL6PEPF0001AB53.mail.protection.outlook.com (10.167.241.5) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6933.15 via Frontend Transport; Wed, 25 Oct 2023 08:28:52 +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, 25 Oct
 2023 03:28:51 -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, 25 Oct
 2023 03:28:51 -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, 25 Oct 2023 03:28: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: 89fab2e1-7310-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Io/UcMPegHpM/ql8BAEI6mKqKtkMGAEg/sV/my/BTv+WH/BvhfbODz1/KdxWW77Yzi3akTdXI6xB+kG4Hh2GvME2HNrnPiNalwNJFjyJZCmu5YbAjM6KmQVJ9RLkfnJaROppRijBIbD7CZkjyioVlEEH46IGrzwAvozJv8METOMyGk93xNlBo5YX82WzgRYSA0jpAbmUCaLcSRQVMTIXbM3/H4To2XTh9h6bG29+V+4Hlv9YfwSPJiqcUIVcyxR529rjgm3YWqPt6cceyif2ipkZUpXCf1h5B84VREbGFBVkmJIpmDjvfQBOFoeQOkq+uLpprOhVqIyeT0zDdCF0qA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=sAZHBNJKUQYFM4Jm7+3mJwKq70OpgNRzmyQQPMz3Fiw=;
 b=ahUAP9I3lgzs6NsTUsvx0VjzMEsWNaij65Ug2qo8eVTSxgz6ZlImDu+JAisay5IQZCErd3+EsrWynPFzuMXyKjD4YklEK4mJL17g8eNCuj6tpl1oFCmYSsKnH8O12WBSvxds7DBDJp4mKIt32SnvplpdtvHZZY4arau4Z//cSWjt30zgpmN2B4c/3BR2s5YmpZduliDuetaNPLDHO6cxr8Lx/9HYfa04oTwKsDi82iX0khlnQK9IEq99n4ps8j8JsT90g+SRIqe9QKBtNp0XE0L9v9mab5zJ517JK2kUS/dEvaUeVoDU4NezWwRRzLDdv09o33EIKpuZVe9AN1NUaQ==
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=sAZHBNJKUQYFM4Jm7+3mJwKq70OpgNRzmyQQPMz3Fiw=;
 b=M9bQQ0bxMtpbaiqmJRhhCA5G+X3MwloemRqHdX2O3emGgZCZXd8MzOrLUt3KLOOUjJ1MOn81ZxuIB7KzZWQPBw6sl5Fzqxnay0mORunFHCaugqlP9W6S7lzWhHkTJWoO5nvo/NLLrzkDfQeaULWPe+sDg0BdAjolbjWgHna0ns0=
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>
Subject: [for-4.19][PATCH] build: Allow setting KBUILD_DEFCONFIG in the environment
Date: Wed, 25 Oct 2023 10:28:34 +0200
Message-ID: <20231025082834.31680-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: BL6PEPF0001AB53:EE_|LV2PR12MB5798:EE_
X-MS-Office365-Filtering-Correlation-Id: 6d837ec8-2abe-4dc9-d762-08dbd5346bdd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	dnx3chwFcEe0UJluKXdN2cP3uH6eX2eT5EwRn5C7fXD+NB/Z19LeSs6g2EXqdWxn3A1oF1YIQ7KspUpXhXP2UFzwiemen8DH9aWxd+bfNBLq07xvoDGi+zRELyihKgIejgHN9AGhdi8yMbqIgz6lT7q5b44urxgM6f1nq9lDa84a3Rmv9Nyu/c/ZZF+G0ol7rhtXF9J7RGEpchWM/qYF1TR7VYtMFHixBk7nk4QwqRKla8FYEK0WfIHhvKweCAw+3PuAyBsQTMAVvWac1Rwb7PKFQ96W5oxx/DHqsrZpNmEy6kPN8WU7W11RvVK0JswrOGDIA7v1JE+q+eizh2KZz6/7MOF34sDSWLUFUnKmhc7I8Ik8bRRtfe2iYcGzA70H1oOeUGSQoBn97XKbix3FEKmqJ7Tz7ne7v6AlIj4UuWyrjU6DuksmR8UqmZn9AM1qtdk8GcIIvzHKHJ53VjEwDyTTzzA2J/S7QJIrPUudG0Qwp/+a8Tgo4FCmMdt1kerbidlNN3C1Xgb1BXlOP1cPa/XIZF7nmlD7AkMc+0BBgc1L/DXZV9JxzDiQzJpM+n+rwwkSwVNa29wBVCqb3cQxJWjE4PX5/vwVKvyLWaKRxlXLFDoy/eCc2sYDIlRIZpyTEpmcNkyZ/jYXHKOSzcOquUPInnjIzDCdqVoHz8iFH3luxCstStwEzynyipRMkbhaIjavUXTy4yba7Y3kxbD0r4+1PzgcuufEjje1uh9HIbP3731fn1exiHj3Amzd93Oh/f0KI4oREDmAyniT0AM3Bg==
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)(136003)(396003)(230922051799003)(186009)(451199024)(82310400011)(64100799003)(1800799009)(36840700001)(40470700004)(46966006)(81166007)(26005)(40460700003)(36860700001)(2906002)(41300700001)(44832011)(86362001)(5660300002)(36756003)(8936002)(8676002)(4326008)(6916009)(54906003)(478600001)(1076003)(82740400003)(70206006)(356005)(70586007)(316002)(40480700001)(2616005)(83380400001)(47076005)(426003)(336012)(6666004)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Oct 2023 08:28:52.7304
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 6d837ec8-2abe-4dc9-d762-08dbd5346bdd
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:
	BL6PEPF0001AB53.namprd02.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: LV2PR12MB5798

At the moment, in order to use a different defconfig target than default,
one needs to specify KBUILD_DEFCONFIG=<target> on the command line.
Switch to weak assignment, so that it can be also obtained from
environment similar to other KCONFIG/KBUILD variables.

This change will activate the use of KBUILD_DEFCONFIG variable in CI
build jobs that so far had no effect.

Note, that we will deviate from Linux in this regard.

Signed-off-by: Michal Orzel <michal.orzel@amd.com>
---
In case of reluctance to this approach, we can always do:
 make -C xen defconfig KBUILD_DEFCONFIG=${KBUILD_DEFCONFIG}
in automation/scripts/build.

Also, Linux defers setting the variable to arch specific Makefile, so it is not
sth mandated by the top level Makefile or documentation.
---
 xen/Makefile | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/xen/Makefile b/xen/Makefile
index fd0e63d29efb..40feefff4ab5 100644
--- a/xen/Makefile
+++ b/xen/Makefile
@@ -256,7 +256,8 @@ export YACC = $(if $(BISON),$(BISON),bison)
 export LEX = $(if $(FLEX),$(FLEX),flex)
 
 # Default file for 'make defconfig'.
-export KBUILD_DEFCONFIG := $(ARCH)_defconfig
+# May be overruled on the command line or set in the environment.
+export KBUILD_DEFCONFIG ?= $(ARCH)_defconfig
 
 # Copy CFLAGS generated by "Config.mk" so they can be reused later without
 # reparsing Config.mk by e.g. arch/x86/boot/.
-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Wed Oct 25 08:30:35 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 08:30:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622703.969770 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvZHa-0005Gg-TU; Wed, 25 Oct 2023 08:30:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622703.969770; Wed, 25 Oct 2023 08: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 1qvZHa-0005GZ-PE; Wed, 25 Oct 2023 08:30:30 +0000
Received: by outflank-mailman (input) for mailman id 622703;
 Wed, 25 Oct 2023 08:30: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=LJSz=GH=casper.srs.infradead.org=BATV+85b1c44ac99574f3713d+7367+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qvZHY-0005GP-L8
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 08:30:28 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id bee0bbde-7310-11ee-9b0e-b553b5be7939;
 Wed, 25 Oct 2023 10:30:25 +0200 (CEST)
Received: from [2001:8b0:10b:5:758e:a1c4:bc7:e7a7]
 (helo=u3832b3a9db3152.ant.amazon.com)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qvZHT-007fSv-Nj; Wed, 25 Oct 2023 08: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>
X-Inumbo-ID: bee0bbde-7310-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=MIME-Version:Content-Type:References:
	In-Reply-To:Date:Cc:To:From:Subject:Message-ID:Sender:Reply-To:
	Content-Transfer-Encoding:Content-ID:Content-Description;
	bh=P4XSy/YvVHFxjXEJLsAb+7LdawcWCHaLn+KdqlWEZSs=; b=Yx4KvI9Rx53tUJkbz3FWtgTrRx
	N4eQHVdDOj2sYZxMoczk3R3USHGcgEfK/yL79ZQz5j0wUIJbx5NVjdaHA9cQ4DCt1wR/G8ktTb3n7
	iWik3wndJlJR8DmQUi70+LwEvK/KfEi3U0IXgJJtkT+JOiC7ea5uVfY0dVle7jrn3iqyFa+LFetnV
	4LBbnUhXh8e15ICj5ROkX5RHDk9tMcyxLPJPg3K9JmLzz2YGI5IEuMHXsiri6lJeiUx9YqDXvZsjD
	DbBMJGQljpTc10XddbtyWYpKeswEPjr8PuX+VdWmZPWlwr+tEpCDa43/pEtLno6O7aQ4abqHA8TDd
	WH1a+bUg==;
Message-ID: <d32f2de7b913c6e4f4ff5f7ec8f3c63836f5a8c7.camel@infradead.org>
Subject: Re: [PATCH 06/12] hw/xen: add get_frontend_path() method to
 XenDeviceClass
From: David Woodhouse <dwmw2@infradead.org>
To: paul@xen.org, qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>, Hanna Reitz <hreitz@redhat.com>, Stefano
 Stabellini <sstabellini@kernel.org>, Anthony Perard
 <anthony.perard@citrix.com>,  =?ISO-8859-1?Q?Marc-Andr=E9?= Lureau
 <marcandre.lureau@redhat.com>, Paolo Bonzini <pbonzini@redhat.com>,
 "Michael S. Tsirkin" <mst@redhat.com>, Marcel Apfelbaum
 <marcel.apfelbaum@gmail.com>, Richard Henderson
 <richard.henderson@linaro.org>, Eduardo Habkost <eduardo@habkost.net>, 
 Marcelo Tosatti <mtosatti@redhat.com>, qemu-block@nongnu.org,
 xen-devel@lists.xenproject.org, kvm@vger.kernel.org
Date: Wed, 25 Oct 2023 09:30:23 +0100
In-Reply-To: <ea38b980-14dd-4442-96d4-699ee39a0d27@xen.org>
References: <20231016151909.22133-1-dwmw2@infradead.org>
	 <20231016151909.22133-7-dwmw2@infradead.org>
	 <5ef43a7c-e535-496d-8a14-bccbadab3bc0@xen.org>
	 <d43b900a6c7987c6832ceeede9b4c5ab65d5bacd.camel@infradead.org>
	 <55bb6967-9499-45ef-b4c8-00fbfaccef0d@xen.org>
	 <4d059cb96a92004fe25fdb140a6c0b12e91b4d7e.camel@infradead.org>
	 <ea38b980-14dd-4442-96d4-699ee39a0d27@xen.org>
Content-Type: multipart/signed; micalg="sha-256"; protocol="application/pkcs7-signature";
	boundary="=-BOki3fyIIs+vqC8AMBCA"
User-Agent: Evolution 3.44.4-0ubuntu2 
MIME-Version: 1.0
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html


--=-BOki3fyIIs+vqC8AMBCA
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Tue, 2023-10-24 at 14:37 +0100, Paul Durrant wrote:
>=20
> > > Ok, but a prepend to say that a lack of path there means we skip
> > > frontend creation seems reasonable?
> >=20
> > No, it *is* returning an error. Perhaps I can make it
> >=20
>=20
> I understand it is returning an error. I thought the point of the=20
> cascading error handling was to prepend text at each (meaningful) layer=
=20
> such that the eventual message conveyed what failed and also what the
> consequences of that failure were.

Oh, I see. Added; thanks.

--=-BOki3fyIIs+vqC8AMBCA
Content-Type: application/pkcs7-signature; name="smime.p7s"
Content-Disposition: attachment; filename="smime.p7s"
Content-Transfer-Encoding: base64

MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgEFADCABgkqhkiG9w0BBwEAAKCCEkQw
ggYQMIID+KADAgECAhBNlCwQ1DvglAnFgS06KwZPMA0GCSqGSIb3DQEBDAUAMIGIMQswCQYDVQQG
EwJVUzETMBEGA1UECBMKTmV3IEplcnNleTEUMBIGA1UEBxMLSmVyc2V5IENpdHkxHjAcBgNVBAoT
FVRoZSBVU0VSVFJVU1QgTmV0d29yazEuMCwGA1UEAxMlVVNFUlRydXN0IFJTQSBDZXJ0aWZpY2F0
aW9uIEF1dGhvcml0eTAeFw0xODExMDIwMDAwMDBaFw0zMDEyMzEyMzU5NTlaMIGWMQswCQYDVQQG
EwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYD
VQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50
aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC
AQEAyjztlApB/975Rrno1jvm2pK/KxBOqhq8gr2+JhwpKirSzZxQgT9tlC7zl6hn1fXjSo5MqXUf
ItMltrMaXqcESJuK8dtK56NCSrq4iDKaKq9NxOXFmqXX2zN8HHGjQ2b2Xv0v1L5Nk1MQPKA19xeW
QcpGEGFUUd0kN+oHox+L9aV1rjfNiCj3bJk6kJaOPabPi2503nn/ITX5e8WfPnGw4VuZ79Khj1YB
rf24k5Ee1sLTHsLtpiK9OjG4iQRBdq6Z/TlVx/hGAez5h36bBJMxqdHLpdwIUkTqT8se3ed0PewD
ch/8kHPo5fZl5u1B0ecpq/sDN/5sCG52Ds+QU5O5EwIDAQABo4IBZDCCAWAwHwYDVR0jBBgwFoAU
U3m/WqorSs9UgOHYm8Cd8rIDZsswHQYDVR0OBBYEFAnA8vwL2pTbX/4r36iZQs/J4K0AMA4GA1Ud
DwEB/wQEAwIBhjASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEF
BQcDBDARBgNVHSAECjAIMAYGBFUdIAAwUAYDVR0fBEkwRzBFoEOgQYY/aHR0cDovL2NybC51c2Vy
dHJ1c3QuY29tL1VTRVJUcnVzdFJTQUNlcnRpZmljYXRpb25BdXRob3JpdHkuY3JsMHYGCCsGAQUF
BwEBBGowaDA/BggrBgEFBQcwAoYzaHR0cDovL2NydC51c2VydHJ1c3QuY29tL1VTRVJUcnVzdFJT
QUFkZFRydXN0Q0EuY3J0MCUGCCsGAQUFBzABhhlodHRwOi8vb2NzcC51c2VydHJ1c3QuY29tMA0G
CSqGSIb3DQEBDAUAA4ICAQBBRHUAqznCFfXejpVtMnFojADdF9d6HBA4kMjjsb0XMZHztuOCtKF+
xswhh2GqkW5JQrM8zVlU+A2VP72Ky2nlRA1GwmIPgou74TZ/XTarHG8zdMSgaDrkVYzz1g3nIVO9
IHk96VwsacIvBF8JfqIs+8aWH2PfSUrNxP6Ys7U0sZYx4rXD6+cqFq/ZW5BUfClN/rhk2ddQXyn7
kkmka2RQb9d90nmNHdgKrwfQ49mQ2hWQNDkJJIXwKjYA6VUR/fZUFeCUisdDe/0ABLTI+jheXUV1
eoYV7lNwNBKpeHdNuO6Aacb533JlfeUHxvBz9OfYWUiXu09sMAviM11Q0DuMZ5760CdO2VnpsXP4
KxaYIhvqPqUMWqRdWyn7crItNkZeroXaecG03i3mM7dkiPaCkgocBg0EBYsbZDZ8bsG3a08LwEsL
1Ygz3SBsyECa0waq4hOf/Z85F2w2ZpXfP+w8q4ifwO90SGZZV+HR/Jh6rEaVPDRF/CEGVqR1hiuQ
OZ1YL5ezMTX0ZSLwrymUE0pwi/KDaiYB15uswgeIAcA6JzPFf9pLkAFFWs1QNyN++niFhsM47qod
x/PL+5jR87myx5uYdBEQkkDc+lKB1Wct6ucXqm2EmsaQ0M95QjTmy+rDWjkDYdw3Ms6mSWE3Bn7i
5ZgtwCLXgAIe5W8mybM2JzCCBhQwggT8oAMCAQICEQDGvhmWZ0DEAx0oURL6O6l+MA0GCSqGSIb3
DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYD
VQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28g
UlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMB4XDTIyMDEwNzAw
MDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJARYTZHdtdzJAaW5mcmFkZWFkLm9y
ZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3GpC2bomUqk+91wLYBzDMcCj5C9m6
oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZHh7htyAkWYVoFsFPrwHounto8xTsy
SSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT9YgcBqKCo65pTFmOnR/VVbjJk4K2
xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNjP+qDrh0db7PAjO1D4d5ftfrsf+kd
RR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy2U+eITZ5LLE5s45mX2oPFknWqxBo
bQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3BgBEmfsYWlBXO8rVXfvPgLs32VdV
NZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/7auNVRmPB3v5SWEsH8xi4Bez2V9U
KxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmdlFYhAflWKQ03Ufiu8t3iBE3VJbc2
5oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9aelIl6vtbhMA+l0nfrsORMa4kobqQ5
C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMBAAGjggHMMIIByDAfBgNVHSMEGDAW
gBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeDMcimo0oz8o1R1Nver3ZVpSkwDgYD
VR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYwFAYIKwYBBQUHAwQGCCsGAQUFBwMC
MEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYBBQUHAgEWF2h0dHBzOi8vc2VjdGln
by5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9jcmwuc2VjdGlnby5jb20vU2VjdGln
b1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1haWxDQS5jcmwwgYoGCCsGAQUFBwEB
BH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdvLmNvbS9TZWN0aWdvUlNBQ2xpZW50
QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAjBggrBgEFBQcwAYYXaHR0cDovL29j
c3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5mcmFkZWFkLm9yZzANBgkqhkiG9w0B
AQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQvQ/fzPXmtR9t54rpmI2TfyvcKgOXp
qa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvIlSPrzIB4Z2wyIGQpaPLlYflrrVFK
v9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9ChWFfgSXvrWDZspnU3Gjw/rMHrGnql
Htlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0whpBtXdyDjzBtQTaZJ7zTT/vlehc/
tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9IzCCBhQwggT8oAMCAQICEQDGvhmW
Z0DEAx0oURL6O6l+MA0GCSqGSIb3DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3Jl
YXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0
ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJl
IEVtYWlsIENBMB4XDTIyMDEwNzAwMDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJ
ARYTZHdtdzJAaW5mcmFkZWFkLm9yZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3
GpC2bomUqk+91wLYBzDMcCj5C9m6oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZH
h7htyAkWYVoFsFPrwHounto8xTsySSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT
9YgcBqKCo65pTFmOnR/VVbjJk4K2xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNj
P+qDrh0db7PAjO1D4d5ftfrsf+kdRR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy
2U+eITZ5LLE5s45mX2oPFknWqxBobQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3
BgBEmfsYWlBXO8rVXfvPgLs32VdVNZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/
7auNVRmPB3v5SWEsH8xi4Bez2V9UKxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmd
lFYhAflWKQ03Ufiu8t3iBE3VJbc25oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9ae
lIl6vtbhMA+l0nfrsORMa4kobqQ5C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMB
AAGjggHMMIIByDAfBgNVHSMEGDAWgBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeD
Mcimo0oz8o1R1Nver3ZVpSkwDgYDVR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYw
FAYIKwYBBQUHAwQGCCsGAQUFBwMCMEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYB
BQUHAgEWF2h0dHBzOi8vc2VjdGlnby5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9j
cmwuc2VjdGlnby5jb20vU2VjdGlnb1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1h
aWxDQS5jcmwwgYoGCCsGAQUFBwEBBH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdv
LmNvbS9TZWN0aWdvUlNBQ2xpZW50QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAj
BggrBgEFBQcwAYYXaHR0cDovL29jc3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5m
cmFkZWFkLm9yZzANBgkqhkiG9w0BAQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQv
Q/fzPXmtR9t54rpmI2TfyvcKgOXpqa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvI
lSPrzIB4Z2wyIGQpaPLlYflrrVFKv9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9Ch
WFfgSXvrWDZspnU3Gjw/rMHrGnqlHtlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0w
hpBtXdyDjzBtQTaZJ7zTT/vlehc/tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9
IzGCBMcwggTDAgEBMIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVz
dGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMT
NVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEA
xr4ZlmdAxAMdKFES+jupfjANBglghkgBZQMEAgEFAKCCAeswGAYJKoZIhvcNAQkDMQsGCSqGSIb3
DQEHATAcBgkqhkiG9w0BCQUxDxcNMjMxMDI1MDgzMDIzWjAvBgkqhkiG9w0BCQQxIgQgmoUthmex
JvHCfmv+d3S/XCUWcuOdBiicEplOt7FO3bEwgb0GCSsGAQQBgjcQBDGBrzCBrDCBljELMAkGA1UE
BhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEYMBYG
A1UEChMPU2VjdGlnbyBMaW1pdGVkMT4wPAYDVQQDEzVTZWN0aWdvIFJTQSBDbGllbnQgQXV0aGVu
dGljYXRpb24gYW5kIFNlY3VyZSBFbWFpbCBDQQIRAMa+GZZnQMQDHShREvo7qX4wgb8GCyqGSIb3
DQEJEAILMYGvoIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVy
MRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNl
Y3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEAxr4Z
lmdAxAMdKFES+jupfjANBgkqhkiG9w0BAQEFAASCAgAlrJtJ6eLb3lbkYeV6hUv/V3dC3bjG9sz8
BJLA4URhGPz+Tvwqi9NRWSscCQ5w7H7A61JF2UUS2YbnbAiK4MwWqc5XDes3DjyqX9NIP1MqKgy9
9bz8z35FuEYTvaTqq0Y2a7hS0oXYtUURGCcOymS6b9fwTC4X560gBv4Qg6c79DueZxTz4sfGYFHG
/Jfiox+ONc8j2hSAJe1un6ToZ5ACEj3ci/BA1/7BHVjr9Db9KkFbTo41KvYclm8v0TkZ4Q7Uebl6
FxVWRnhwo+Pa6xUHo3u+t4jSGzgl0dANmmBmvsUeaB/4M97ZcY6tNacqsQur8iRbVSAgdLodY+cD
d+lUbx71tB1QroBXVvtLQXB7pQmp9utogt1O5JgyHkbdN6JEJJh5dAuZ38bZ5cf8N6ucUCPPKwQu
hNvTfb28a5IIOThMqvggrb6LNu3jU9g7OTvbF1A7No0AoqDJdcbGUmbaFKnTUyO/inNdAzGxDBFn
HYfC38bcpDmXLmwgfmkVsPsfPHHrZFaMENE/K+7vh6xLkeXZk1LR/hNDYVQFkLiusF67O2h/KEZE
/3ZjcchUfC6LqvhozRVz3DGFOYTcgFUR62X3vv7TRfjulRTluNw9R5HXMpMkWFZQxBIS0Vx0ACZE
ItIUXhtuTICh/kOVeErCvL5TcNy1YWISsPeLcMBpCAAAAAAAAA==


--=-BOki3fyIIs+vqC8AMBCA--


From xen-devel-bounces@lists.xenproject.org Wed Oct 25 08:31:43 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 08:31:43 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622705.969780 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvZIk-0005oH-5U; Wed, 25 Oct 2023 08:31:42 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622705.969780; Wed, 25 Oct 2023 08:31: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 1qvZIk-0005oA-25; Wed, 25 Oct 2023 08:31:42 +0000
Received: by outflank-mailman (input) for mailman id 622705;
 Wed, 25 Oct 2023 08: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=AAMM=GH=gmail.com=xadimgnik@srs-se1.protection.inumbo.net>)
 id 1qvZIj-0005o4-Gw
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 08:31:41 +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 eb5cf930-7310-11ee-98d5-6d05b1d4d9a1;
 Wed, 25 Oct 2023 10:31:40 +0200 (CEST)
Received: by mail-wm1-x32b.google.com with SMTP id
 5b1f17b1804b1-40836ea8cbaso39776955e9.0
 for <xen-devel@lists.xenproject.org>; Wed, 25 Oct 2023 01:31:40 -0700 (PDT)
Received: from [192.168.16.6] (54-240-197-232.amazon.com. [54.240.197.232])
 by smtp.gmail.com with ESMTPSA id
 l21-20020a056000023500b003198a9d758dsm11674037wrz.78.2023.10.25.01.31.38
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 25 Oct 2023 01:31: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: eb5cf930-7310-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698222700; x=1698827500; 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=RHTZm3wQVOwUIgOFYUJgqhN1NlzjTWcU0CvB9E7/Q/Q=;
        b=FbTPQZcnVBNfjwhq5+4dPAPlROk40xlEol/cF+rrwUYY4n52IOg2pHPTFSxR/4ZsHk
         L1zz5X5/yrIlGdiQeIOo93Hh1QVYh6PjQ3Oi8ZihtrQQVP9bI+mQmMLsy+r837VgHKs8
         bKjzdsGfNiSvbejXNEEQA+wQrMUPCageGc5SdTv4q8nd7+dtLCzPs6fYKYxoQBmTtxlG
         gi4LZIflAP87k2Z9D9bhEzpOOlg7+8HkEr8LaBax/yWFGuz+6Sf2eERqmaUN1RuGCcsq
         G+pJw11/eoXGk72h6GJ3LIWanFZH1zNgSjwb9UbRJs+e0dv+p5C7ysQKRFDle+6FTIWV
         mbIg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698222700; x=1698827500;
        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=RHTZm3wQVOwUIgOFYUJgqhN1NlzjTWcU0CvB9E7/Q/Q=;
        b=j1xS+PpjnTuzD+3VKRFdfO/0iv+gFa//osGnR4QHSLUyK072OAZP6CQ8yed1j6sU1N
         8Wmwy79iTOX73M7KGKmn5w5B3wIK3NqH5OoryVolUKNfAU2AmDd0o29ejD0U6TQp2G/i
         L8qhpbrkONTAsEmXEDTr38fonG9TKZVNJ0ZDd+ZuGQhPJb6LOyH7yjD6nfBx6+X0p0wM
         89eWk2Aa1gH7wYHxXR1igNzIiv4k0d7+L20+crx0LPA8LtXydnKhNW9LcwRisdk7mPOK
         oFpCMD35QHayKLZC/SJ6WcFVmcq02fQ/7qo8dRTuayyYsLJ+jzWj8cPze7mu6hXwR+Fr
         2tCg==
X-Gm-Message-State: AOJu0Yx73BSl2lHMFQl7JCojCAWiYUXpMI4A/5apoGKZgBDR/upET/GB
	CLbgiA+xUSZ5Vmiz6ziE7mY=
X-Google-Smtp-Source: AGHT+IGAXvbeLVBCYEZe6F7VZMLsxtQMTPHkP81y9foV4MoWfIvrV+0OlYKHUvO1abu02c0w57sJTg==
X-Received: by 2002:a5d:456d:0:b0:32d:90f7:ce46 with SMTP id a13-20020a5d456d000000b0032d90f7ce46mr10513836wrc.16.1698222699603;
        Wed, 25 Oct 2023 01:31:39 -0700 (PDT)
From: Paul Durrant <xadimgnik@gmail.com>
X-Google-Original-From: Paul Durrant <paul@xen.org>
Message-ID: <684d378d-9c71-4a5f-8f0c-3ed6ffc20a70@xen.org>
Date: Wed, 25 Oct 2023 09:31:37 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Reply-To: paul@xen.org
Subject: Re: [PATCH 12/12] hw/xen: add support for Xen primary console in
 emulated mode
Content-Language: en-US
To: David Woodhouse <dwmw2@infradead.org>, qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>, Hanna Reitz <hreitz@redhat.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Anthony Perard <anthony.perard@citrix.com>,
 =?UTF-8?Q?Marc-Andr=C3=A9_Lureau?= <marcandre.lureau@redhat.com>,
 Paolo Bonzini <pbonzini@redhat.com>, "Michael S. Tsirkin" <mst@redhat.com>,
 Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
 Richard Henderson <richard.henderson@linaro.org>,
 Eduardo Habkost <eduardo@habkost.net>, Marcelo Tosatti
 <mtosatti@redhat.com>, qemu-block@nongnu.org,
 xen-devel@lists.xenproject.org, kvm@vger.kernel.org
References: <20231016151909.22133-1-dwmw2@infradead.org>
 <20231016151909.22133-13-dwmw2@infradead.org>
 <c18439ca-c9ae-4567-bbcf-dffe6f7b72e3@xen.org>
 <3acd078bba2d824f836b20a270c780dc2d031c43.camel@infradead.org>
 <3f22903b-30f0-40f2-8624-b681d9c7e05d@xen.org>
 <42b005d7c03d5b0d47a16c4e025d8c3ec7289e0f.camel@infradead.org>
 <19fc2701-4cd8-4a14-9d45-bfaea37ed2d6@xen.org>
 <efdefcc11e2bd8c0f7e6e914dc9c54ffd65fe733.camel@infradead.org>
Organization: Xen Project
In-Reply-To: <efdefcc11e2bd8c0f7e6e914dc9c54ffd65fe733.camel@infradead.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

On 24/10/2023 17:34, David Woodhouse wrote:
> On Tue, 2023-10-24 at 17:25 +0100, Paul Durrant wrote:
>> On 24/10/2023 16:49, David Woodhouse wrote:
>>> On Tue, 2023-10-24 at 16:39 +0100, Paul Durrant wrote:
>>>> On 24/10/2023 16:37, David Woodhouse wrote:
>>>>> On Tue, 2023-10-24 at 15:20 +0100, Paul Durrant wrote:
>>>>>> On 16/10/2023 16:19, David Woodhouse wrote:
>>>>>>> From: David Woodhouse <dwmw@amazon.co.uk>
>>>>>>>
>>>>>>> The primary console is special because the toolstack maps a page at a
>>>>>>> fixed GFN and also allocates the guest-side event channel. Add support
>>>>>>> for that in emulated mode, so that we can have a primary console.
>>>>>>>
>>>>>>> Add a *very* rudimentary stub of foriegnmem ops for emulated mode, which
>>>>>>> supports literally nothing except a single-page mapping of the console
>>>>>>> page. This might as well have been a hack in the xen_console driver, but
>>>>>>> this way at least the special-casing is kept within the Xen emulation
>>>>>>> code, and it gives us a hook for a more complete implementation if/when
>>>>>>> we ever do need one.
>>>>>>>
>>>>>> Why can't you map the console page via the grant table like the xenstore
>>>>>> page?
>>>>>
>>>>> I suppose we could, but I didn't really want the generic xen-console
>>>>> device code having any more of a special case for 'Xen emulation' than
>>>>> it does already by having to call xen_primary_console_create().
>>>>>
>>>>
>>>> But doesn't is save you the whole foreignmem thing? You can use the
>>>> grant table for primary and secondary consoles.
>>>
>>> Yes. And I could leave the existing foreignmem thing just for the case
>>> of primary console under true Xen. It's probably not that awful a
>>> special case, in the end.
>>>
>>> Then again, I was surprised I didn't *already* have a foreignmem ops
>>> for the emulated case, and we're probably going to want to continue
>>> fleshing it out later, so I don't really mind adding it.
>>>
>>
>> True. We'll need it for some of the other more fun protocols like vkbd
>> or fb. Still, I think it'd be nicer to align the xenstore and primary
>> console code to look similar and punt the work until then :-)
> 
> I don't think it ends up looking like xenstore either way, does it?
> Xenstore is special because it gets to use the original pointer to its
> own page.
> 

Not sure what you mean there? A guest can query the PFN for either 
xenstore or console using HVM params, or it can find them in its own 
grant table entries 0 or 1.

> I don't think I want to hack the xen_console code to explicitly call a
> xen_console_give_me_your_page() function. If not foreignmem, I think
> you were suggesting that we actually call the grant mapping code to get
> a pointer to the underlying page, right?

I'm suggesting that the page be mapped in the same way that the xenstore 
backend does:

1462    /* 

1463     * We don't actually access the guest's page through the grant, 
because
1464     * this isn't real Xen, and we can just use the page we gave it 
in the
1465     * first place. Map the grant anyway, mostly for cosmetic 
purposes so
1466     * it *looks* like it's in use in the guest-visible grant table. 

1467     */
1468    s->gt = qemu_xen_gnttab_open();
1469    uint32_t xs_gntref = GNTTAB_RESERVED_XENSTORE;
1470    s->granted_xs = qemu_xen_gnttab_map_refs(s->gt, 1, xen_domid, 
&xs_gntref,
1471                                             PROT_READ | PROT_WRITE);


> 
> I could kind of live with that... except that Xen has this ugly
> convention that the "ring-ref" frontend node for the primary console
> actually has the *MFN* not a grant ref. Which I don't understand since
> the toolstack *does* populate the grant table for it (just as it does
> for the xenstore page). But we'd have to add a special case exception
> to that special case, so that in the emu case it's an actual grant ref
> again. I think I prefer just having a stub of foreignmem, TBH.
> 

You're worried about the guest changing the page it uses for the primary 
console and putting a new one in xenstore? I'd be amazed if that even 
works on Xen unless the guest is careful to write it into 
GNTTAB_RESERVED_CONSOLE.

> (I didn't yet manage to get Xen to actually create a primary console of
> type iomem, FWIW)
> 

No, that doesn't entirely surprise me.

   Paul



From xen-devel-bounces@lists.xenproject.org Wed Oct 25 08:36:48 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 08:36:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622713.969790 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvZNc-0006r2-QJ; Wed, 25 Oct 2023 08:36:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622713.969790; Wed, 25 Oct 2023 08: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 1qvZNc-0006qv-NA; Wed, 25 Oct 2023 08:36:44 +0000
Received: by outflank-mailman (input) for mailman id 622713;
 Wed, 25 Oct 2023 08:36: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=0aTH=GH=arm.com=Luca.Fancellu@srs-se1.protection.inumbo.net>)
 id 1qvZNb-0006pY-1N
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 08:36:43 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur04on0620.outbound.protection.outlook.com
 [2a01:111:f400:fe0e::620])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 9e78211d-7311-11ee-9b0e-b553b5be7939;
 Wed, 25 Oct 2023 10:36:40 +0200 (CEST)
Received: from DU6P191CA0007.EURP191.PROD.OUTLOOK.COM (2603:10a6:10:540::22)
 by AM9PR08MB6723.eurprd08.prod.outlook.com (2603:10a6:20b:2ff::6) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.19; Wed, 25 Oct
 2023 08:36:31 +0000
Received: from DU6PEPF00009524.eurprd02.prod.outlook.com
 (2603:10a6:10:540:cafe::bb) by DU6P191CA0007.outlook.office365.com
 (2603:10a6:10:540::22) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.19 via Frontend
 Transport; Wed, 25 Oct 2023 08:36:31 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DU6PEPF00009524.mail.protection.outlook.com (10.167.8.5) with
 Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6933.15 via Frontend Transport; Wed, 25 Oct 2023 08:36:31 +0000
Received: ("Tessian outbound d1b3e404ba03:v215");
 Wed, 25 Oct 2023 08:36:31 +0000
Received: from c85d38555060.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 1DDFDDEF-F418-4A89-8A31-CA9332B41908.1; 
 Wed, 25 Oct 2023 08:35:18 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id c85d38555060.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Wed, 25 Oct 2023 08:35:18 +0000
Received: from AM6PR08MB3749.eurprd08.prod.outlook.com (2603:10a6:20b:8f::22)
 by GVXPR08MB10541.eurprd08.prod.outlook.com (2603:10a6:150:158::8)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.19; Wed, 25 Oct
 2023 08:35:16 +0000
Received: from AM6PR08MB3749.eurprd08.prod.outlook.com
 ([fe80::76e6:a7e1:1592:866]) by AM6PR08MB3749.eurprd08.prod.outlook.com
 ([fe80::76e6:a7e1:1592:866%3]) with mapi id 15.20.6907.032; Wed, 25 Oct 2023
 08:35: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: 9e78211d-7311-11ee-9b0e-b553b5be7939
ARC-Seal: i=2; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=pass;
 b=NNbhZlExo5wD1lvcfG6uLkjVlq38BBavj303vRnkMZHacsXi2s9Qzg89WjyaReZXdhJYeIU6i69QHAQBVolq8f7IS07GFVQ0yNpCq2mTbz97GoDPut7V7AZGI+trvNdaCyPnjkEKQrKrx7goLzYlUeo2uzvPCfQFbUtHZvq3aj0+/ZZbm8MU3wiSonHK9Aw3c3CujSb8U7WVfyMK2FMmDz66U/ZQPoUkex5mCO6RyuHI2jRBdf7k8lTG5n+7KKl1jinU86tS5VnHXhO2lsKxD62btg6UFhp0t2bjAvKn2cIsjQBtUbsifgyiu0hhf6i9as3RMDf2RXTAvQbTPpxEKQ==
ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=YW9fcY7oxHq4+hUiAEDDADW2sTtuzwxcCxWoAE6BAqw=;
 b=SEQmV31cXGZBqcij9okTv5u5eCziXlGOcZxijsr7XXL8MyyzMMFi8YeROzWw2jPKHNIuUMBWWae9xmPQq6R+rUC7Tbrrl61lGOqV0uhEq1gzUwJOdMkNO3HEpR783fTK687013KjsbZt5OAnP2cSn5LhNNUXaHU13A2QS6NpcsQSR4e7t6bBNP5Y7ToTG1V46WJpLi+f3FqbCZyDGJK57WPySnIjOAsNXu7SC1j9HAd5yj4IGdDRmapC11UaKYFs0ExoAsYBa/dc+MulSCIfXIgUXvd+Bad3C9q0Xi7OYzZFYIDz0bx3KNf+G5j9ONyRat456ETCSjWDRWHb2pVaXA==
ARC-Authentication-Results: i=2; mx.microsoft.com 1; spf=pass (sender ip is
 63.35.35.123) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=arm.com;
 dmarc=pass (p=none sp=none pct=100) action=none header.from=arm.com;
 dkim=pass (signature was verified) header.d=armh.onmicrosoft.com; arc=pass (0
 oda=1 ltdi=1 spf=[1,1,smtp.mailfrom=arm.com] dkim=[1,1,header.d=arm.com]
 dmarc=[1,1,header.from=arm.com])
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=YW9fcY7oxHq4+hUiAEDDADW2sTtuzwxcCxWoAE6BAqw=;
 b=slNaKdIPSHhTuBefFAqR7Xwr/9h7G2RVR2rRXP5f0dBn7tZFXHeDvbowq4YKQ+43r4XqhUMTpkjDNww4IO9he25abih/OYEFdLwqLJaP4HcyTCueFNIvWMycP6rwJeAmqQd07fJ82ZqBvNxi7qrjm/mH5xBnPkyMM0GIP7pTQD8=
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: a3fe5f83cf032484
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=TDy4Evu9TiDNyIVBwTjNlFSyN9d4IdEAqwYIReDztjHIwgNi73dkeewcnKbOV7e2oKr/ESKQdZ959e3U4qcvqjpqGuI70MSll9Hi8rLAGLFpWnN7bNZ3Ha6B9MnW8m4xrdu57z1m7gOc9jpTPVDSLOlW0huZAJaIA/2HBBnZSiJvxMP+g3q+8ruHM2xNZEQGbWXL+Eg6xGm7N6t24d/rONbhUl59yRYOxPc3aDwDaTyOg/eS0r/sfE4EMUbvo0/klg6cQwjDfjMV96B6eaJ6kX9Ofrfa/VP0sWYAcmbs6b3tFuTXIqf0SDxO8yAX9UyOTyo7yU48oC8vQkF8VvxShw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=YW9fcY7oxHq4+hUiAEDDADW2sTtuzwxcCxWoAE6BAqw=;
 b=kAYS/OQlp8tV7M1puhNXRnvgrduTaOW2l8qbdEgenM4H3ZAHfPo6CdYOXnufzcvFSm16mj8R5RjIFD8HddJLl5+XrdaFBw68cbzLOD8GO9P9jK85ynNkLVSsyn52hCLSNxWPWphrejqEsW3wDOPF07rKjfZK8dPwU5TsClmeUr9Sbo6HNsACHeXTK/t3SsVdTmIQvbl19XSb/4nvYLJALnAuHMpnfZwr7ske1Emjy6nOaQEQw41s3tLu7trOfpuhXeTca1R8N+HQ3rD5OukUH4xgcf/q6tcY2twuMmKFKuQspUi50RTNG8Osqr7nkp9aIpJIjd1BcLzK01QD/zDf8g==
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=YW9fcY7oxHq4+hUiAEDDADW2sTtuzwxcCxWoAE6BAqw=;
 b=slNaKdIPSHhTuBefFAqR7Xwr/9h7G2RVR2rRXP5f0dBn7tZFXHeDvbowq4YKQ+43r4XqhUMTpkjDNww4IO9he25abih/OYEFdLwqLJaP4HcyTCueFNIvWMycP6rwJeAmqQd07fJ82ZqBvNxi7qrjm/mH5xBnPkyMM0GIP7pTQD8=
From: Luca Fancellu <Luca.Fancellu@arm.com>
To: Xen-devel <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>, Bertrand Marquis <Bertrand.Marquis@arm.com>, Michal Orzel
	<Michal.Orzel@amd.com>
Subject: Generalise the usage of exclude-list.json
Thread-Topic: Generalise the usage of exclude-list.json
Thread-Index: AQHaBx4txv2/tLojDE2toOJeF6UsEQ==
Date: Wed, 25 Oct 2023 08:35:14 +0000
Message-ID: <5883E219-2C0C-4809-852B-704C6ED0E736@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.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_|GVXPR08MB10541:EE_|DU6PEPF00009524:EE_|AM9PR08MB6723:EE_
X-MS-Office365-Filtering-Correlation-Id: e44770b5-802c-4df1-e738-08dbd5357d2e
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:
 Tuu36BjwldymqR2zIlavYfFNsBXMGuy79d7cRqbtu3zabrYdfkuI6Z+UKfht5CC18ZKcRRVCYZr+lHqIRvpSNrOiNdVPTLuR+SKXZpfVb8yT0xpAkaXJG0LrVW8j0gyxcJkvBx/k+QriZSmJegunuwvJvk0BGhbdmAmzd0D4PPcYGfoofjF9tWHJZ78Yk8TCS1G2e1h0d5mZ6FdEs3SMzZUu3Ho0flQ57LsIREK85B0T4dJ77yrG5fdtGE1qEbJVn8Q0HGrA1Rv6Chvd5AlUAb4jKuHL0CeC6v1LhjyoGY02cd6y/abWsmhOASOHOFeEdQdsW5u/7bO+F46DdmzZQ9YH6VPahgZNpPdnOS17Xdlqmtf0z3l4EgrSJWQkhUcM3CG0kgjLbaDcKJjSVduQUne+FbwUM9w3RyxRpMeDVViHeIaGzgWi1gQHfDXqjwXuK89CazSe39pRXcXczAiV2Eds5YMrczvSCWf2QxzkgdRrg4dORZ5Qv5mCHVUFHZHak9QK5ST83ttBMl4ir3yjVz/LN7ezfru1sFCQjMk3XnGFTyXVtvqBFzjrGac/iHrk0ua7uGLSVQ34ULvuE5nHErWufZ8yGpTr6DM4ME1q7rdx/47WWozkLXEJCQbk7azZ1dfB/UVGT1aOTaz/K9gULg==
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)(39860400002)(230922051799003)(186009)(1800799009)(451199024)(64100799003)(64756008)(66946007)(66556008)(66476007)(66446008)(6916009)(316002)(54906003)(38100700002)(478600001)(6486002)(122000001)(91956017)(41300700001)(86362001)(76116006)(8676002)(8936002)(71200400001)(4326008)(6512007)(6506007)(33656002)(36756003)(5660300002)(38070700009)(2616005)(2906002)(83380400001)(26005)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <056CA85A3DFD9746A3CC4A5AF446665F@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: GVXPR08MB10541
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:
 DU6PEPF00009524.eurprd02.prod.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	55beebb8-6d63-4258-82c8-08dbd5354fb2
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	SLszQpc80O4cgUKsf7kX/kLKeKgLxX7Iu+uX2geurNV1S5E01c/6N5YACD91bYhHyir+UFlv8nJ6/4F9CMkbHxVxM1hs7AT2iuC1qfgBa+X7chM/MlGabQux+kxu+bviZABbqnbrDoY6LWpE2MABChuvNL13uszEr1/Va22aCcYqj9M4KjdAnUWpjyTnBBvRG1MzH+zgBnzBxlfuoy88Tj9LHdJj+2AMr+7iYlX4Q2oLY2lK9ePHpZ7jwMwQkGCkTinahgyjnhperV8n9kI05m/ylFTkAdzGG8fmTFve+cePIql3zNJyu9yMmk27eeBUZzjYwbnWD/eh9CndnF3qi39B8SP2WGUrPzegqPqsfxGn/AMJiisyeZfi2MGihfpinN9oGsFgu/xTas9VvF9rs9DtsnJc7vxQETTmrC9aoHCCE2fDTtJ7gaTXcl0N2iBjaQcMrmFzVC/qF7Yro/pGBZVrOUaRFQeRIe+jl5QwRVYNBG/2yA0LGb93V3NGPSnlWy1ImyJLOLyuhO1HUfDdKxlfjxkJNP3beAA2wXW5xpp65xJiu4eSfE5MCr0H//cWklTicYH5p/1Kyd3SPBdT5AaYiAXl2mPvLjI69Ec3Ixx4NzKvKBiGP5/Qf7nsOWjhWuh1rNfDmcUymBvLjbNAqlvV8lfsH8wDH1ZCf5sqfJILZdkri7HzTYsLp4XCALqXO17bj0T5CfPmQ+E4aB3YzO1e6cp+yzSPEQIV2AacgZpq6LbMATbs1aERF8mUbUCp
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)(136003)(39860400002)(346002)(230922051799003)(451199024)(64100799003)(186009)(82310400011)(1800799009)(36840700001)(40470700004)(46966006)(2616005)(336012)(36756003)(26005)(81166007)(40480700001)(40460700003)(6512007)(33656002)(6506007)(47076005)(83380400001)(82740400003)(356005)(8936002)(6486002)(8676002)(4326008)(478600001)(86362001)(2906002)(316002)(6916009)(5660300002)(41300700001)(36860700001)(70586007)(70206006)(54906003);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Oct 2023 08:36:31.3109
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: e44770b5-802c-4df1-e738-08dbd5357d2e
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:
	DU6PEPF00009524.eurprd02.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR08MB6723

SGkgYWxsLA0KDQpJ4oCZbSBzZW5kaW5nIHRoaXMgbWFpbCBsb29raW5nIGZvciBmZWVkYmFja3Mg
YWJvdXQgZ2VuZXJhbGlzaW5nIHRoZSBleGNsdWRlLWxpc3QuanNvbiwgYXMgc3VnZ2VzdGVkIChJ
SVJDKSBieSBKYW4NCnRoaXMgbGlzdCBjYW4gYmUgdXNlZCBieSBtdWx0aXBsZSB1c2VycyBhbmQg
bm90IG9ubHkgZm9yIE1JU1JBLCBieSBhZGRpbmcgYSBmaWVsZCB0byBldmVyeSBlbnRyeS4NCg0K
VGhlc2UgYXJlIHRoZSBtb2RpZmljYXRpb25zIEkgd291bGQgbGlrZSB0byBkbyB0byB0aGUgbGlz
dCwgSSB3aWxsIGltcGxlbWVudCB0aGVtIGlmIHdlIHJlYWNoIGFuIGFncmVlbWVudC4NCg0KZGlm
ZiAtLWdpdCBhL2RvY3MvbWlzcmEvZXhjbHVkZS1saXN0LnJzdCBiL2RvY3MvbWlzcmEvZXhjbHVk
ZS1saXN0LnJzdA0KaW5kZXggYzk3NDMxYTg2MTIwLi5lNjI0YmNmZWYwNTYgMTAwNjQ0DQotLS0g
YS9kb2NzL21pc3JhL2V4Y2x1ZGUtbGlzdC5yc3QNCisrKyBiL2RvY3MvbWlzcmEvZXhjbHVkZS1s
aXN0LnJzdA0KQEAgLTEsMTcgKzEsMTYgQEANCiAuLiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjog
Q0MtQlktNC4wDQogDQotRXhjbHVkZSBmaWxlIGxpc3QgZm9yIHhlbi1hbmFseXNpcyBzY3JpcHQN
Ci09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQ0KK0V4Y2x1ZGUgZmls
ZSBsaXN0IGZvciB4ZW4gc2NyaXB0cw0KKz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQ0KIA0KLVRoZSBjb2RlIGFuYWx5c2lzIGlzIHBlcmZvcm1lZCBvbiB0aGUgWGVuIGNvZGViYXNl
IGZvciBib3RoIE1JU1JBDQotY2hlY2tlcnMgYW5kIHN0YXRpYyBhbmFseXNpcyBjaGVja2Vycywg
dGhlcmUgYXJlIHNvbWUgZmlsZXMgaG93ZXZlciB0aGF0DQotbmVlZHMgdG8gYmUgcmVtb3ZlZCBm
cm9tIHRoZSBmaW5kaW5ncyByZXBvcnQgZm9yIHZhcmlvdXMgcmVhc29ucyAoZS5nLg0KLXRoZXkg
YXJlIGltcG9ydGVkIGZyb20gZXh0ZXJuYWwgc291cmNlcywgdGhleSBnZW5lcmF0ZSB0b28gbWFu
eSBmYWxzZQ0KLXBvc2l0aXZlIHJlc3VsdHMsIGV0Yy4pLg0KK0RpZmZlcmVudCBYZW4gc2NyaXB0
cyBjYW4gcGVyZm9ybSBvcGVyYXRpb25zIG9uIHRoZSBjb2RlYmFzZSB0byBjaGVjayBpdHMNCitj
b21wbGlhbmNlIGZvciBhIHNldCBvZiBydWxlcywgaG93ZXZlciBYZW4gY29udGFpbnMgc29tZSBm
aWxlcyB0aGF0IGFyZSB0YWtlbg0KK2Zyb20gb3RoZXIgcHJvamVjdHMgKGUuZy4gbGludXgpIGFu
ZCB0aGV5IGNhbid0IGJlIHVwZGF0ZWQgdG8gYWxsb3cgYmFja3BvcnRpbmcNCitmaXhlcyBmcm9t
IHRoZWlyIHNvdXJjZSwgZm9yIHRoaXMgcmVhc29uIHRoZSBmaWxlIGRvY3MvbWlzcmEvZXhjbHVk
ZS1saXN0Lmpzb24NCitpcyBrZXB0IGFzIGEgc291cmNlIG9mIGFsbCB0aGVzZSBmaWxlcyB0aGF0
IGFyZSBleHRlcm5hbCB0byB0aGUgWGVuIHByb2plY3QuDQogDQotRm9yIHRoaXMgcmVhc29uIHRo
ZSBmaWxlIGRvY3MvbWlzcmEvZXhjbHVkZS1saXN0Lmpzb24gaXMgdXNlZCB0byBleGNsdWRlIGV2
ZXJ5DQotZW50cnkgbGlzdGVkIGluIHRoYXQgZmlsZSBmcm9tIHRoZSBmaW5hbCByZXBvcnQuDQot
Q3VycmVudGx5IG9ubHkgdGhlIGNwcGNoZWNrIGFuYWx5c2lzIHdpbGwgdXNlIHRoaXMgZmlsZS4N
CitFdmVyeSBlbnRyeSBvZiB0aGUgZmlsZSBjYW4gYmUgbGlua2VkIHRvIGRpZmZlcmVudCBjaGVj
a2Vycywgc28gdGhhdCB0aGlzIGxpc3QNCitjYW4gYmUgdXNlZCBieSBtdWx0aXBsZSBzY3JpcHRz
IHNlbGVjdGluZyBvbmx5IHRoZSByZXF1aXJlZCBlbnRyaWVzLg0KIA0KIEhlcmUgaXMgYW4gZXhh
bXBsZSBvZiB0aGUgZXhjbHVkZS1saXN0Lmpzb24gZmlsZTo6DQogDQpAQCAtMjEsMTAgKzIwLDEy
IEBAIEhlcmUgaXMgYW4gZXhhbXBsZSBvZiB0aGUgZXhjbHVkZS1saXN0Lmpzb24gZmlsZTo6DQog
fCAgICAgICAgew0KIHwgICAgICAgICAgICAicmVsX3BhdGgiOiAicmVsYXRpdmUvcGF0aC9mcm9t
L3hlbi9maWxlIiwNCiB8ICAgICAgICAgICAgImNvbW1lbnQiOiAiVGhpcyBmaWxlIGlzIG9yaWdp
bmF0ZWQgZnJvbSAuLi4iDQorfCAgICAgICAgICAgICJjaGVja2VycyI6ICJ4ZW4tYW5hbHlzaXMi
DQogfCAgICAgICAgfSwNCiB8ICAgICAgICB7DQogfCAgICAgICAgICAgICJyZWxfcGF0aCI6ICJy
ZWxhdGl2ZS9wYXRoL2Zyb20veGVuL2ZvbGRlci8qIiwNCiB8ICAgICAgICAgICAgImNvbW1lbnQi
OiAiVGhpcyBmb2xkZXIgaXMgYSBsaWJyYXJ5Ig0KK3wgICAgICAgICAgICAiY2hlY2tlcnMiOiAi
eGVuLWFuYWx5c2lzIHNvbWUtY2hlY2tlciINCiB8ICAgICAgICB9LA0KIHwgICAgICAgIHsNCiB8
ICAgICAgICAgICAgInJlbF9wYXRoIjogInJlbGF0aXZlL3BhdGgvZnJvbS94ZW4vbWVtKi5jIiwN
CkBAIC0zOSw2ICs0MCwxMiBAQCBIZXJlIGlzIGFuIGV4cGxhbmF0aW9uIG9mIHRoZSBmaWVsZHMg
aW5zaWRlIGFuIG9iamVjdCBvZiB0aGUgImNvbnRlbnQiIGFycmF5Og0KICAgIG1hdGNoIG1vcmUg
dGhhbiBvbmUgZmlsZS9mb2xkZXIgYXQgdGhlIHRpbWUuIFRoaXMgZmllbGQgaXMgbWFuZGF0b3J5
Lg0KICAtIGNvbW1lbnQ6IGFuIG9wdGlvbmFsIGNvbW1lbnQgdG8gZXhwbGFpbiB3aHkgdGhlIGZp
bGUgaXMgcmVtb3ZlZCBmcm9tIHRoZQ0KICAgIGFuYWx5c2lzLg0KKyAtIGNoZWNrZXJzOiBhbiBv
cHRpb25hbCBsaXN0IG9mIGNoZWNrZXJzIHRoYXQgd2lsbCBleGNsdWRlIHRoaXMgZW50cmllcyBm
cm9tDQorICAgdGhlaXIgcmVzdWx0cy4gVGhpcyBmaWVsZCBpcyBvcHRpb25hbCBhbmQgd2hlbiBu
b3Qgc3BlY2lmaWVkLCBpdCBtZWFucyBldmVyeQ0KKyAgIGNoZWNrZXIgd2lsbCB1c2UgdGhhdCBl
bnRyeS4NCisgICBDdXJyZW50IGltcGxlbWVudGVkIHZhbHVlcyBmb3IgdGhpcyBmaWVsZCBhcmU6
DQorICAgIC0geGVuLWFuYWx5c2lzOiB0aGUgeGVuLWFuYWx5c2lzLnB5IHNjcmlwdCBleGNsdWRl
IHRoaXMgZW50cnkgZm9yIGJvdGggTUlTUkENCisgICAgICBhbmQgc3RhdGljIGFuYWx5c2lzIHNj
YW4uIChJbXBsZW1lbnRlZCBvbmx5IGZvciBDcHBjaGVjayB0b29sKQ0KIA0KIFRvIGVhc2UgdGhl
IHJldmlldyBhbmQgdGhlIG1vZGlmaWNhdGlvbnMgb2YgdGhlIGVudHJpZXMsIHRoZXkgc2hhbGwg
YmUgbGlzdGVkIGluDQogYWxwaGFiZXRpY2FsIG9yZGVyIHJlZmVycmluZyB0byB0aGUgcmVsX3Bh
dGggZmllbGQuDQoNCg0KLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCg0KSW4gdGhpcyB3YXkgSSBjb3Vs
ZCB1c2UgdGhpcyBsaXN0IGFsc28gZm9yIHRoZSBjbGFuZy1mb3JtYXQgdG9vbCwgZXhjbHVkaW5n
IGFsbCB0aGUgZmlsZSBmcm9tIGV4dGVybmFsIHNvdXJjZXMNCnBsdXMgdGhlIGZpbGUgd2UgZG9u
4oCZdCB3YW50IGNsYW5nLWZvcm1hdCB0byB0b3VjaC4NCg0KQ2hlZXJzLA0KTHVjYQ0KDQoNCg==


From xen-devel-bounces@lists.xenproject.org Wed Oct 25 08:56:49 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 08:56:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622724.969804 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvZgw-0003EC-Fv; Wed, 25 Oct 2023 08:56:42 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622724.969804; Wed, 25 Oct 2023 08:56: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 1qvZgw-0003E5-CR; Wed, 25 Oct 2023 08:56:42 +0000
Received: by outflank-mailman (input) for mailman id 622724;
 Wed, 25 Oct 2023 08:56: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=e1rq=GH=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qvZgv-0003Dv-67
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 08:56:41 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com
 (mail-db3eur04on0618.outbound.protection.outlook.com
 [2a01:111:f400:fe0c::618])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 67034475-7314-11ee-9b0e-b553b5be7939;
 Wed, 25 Oct 2023 10:56:36 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS8PR04MB7669.eurprd04.prod.outlook.com (2603:10a6:20b:29b::22)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.18; Wed, 25 Oct
 2023 08:56:33 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6933.011; Wed, 25 Oct 2023
 08: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>
X-Inumbo-ID: 67034475-7314-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Sk/wQMhFJeo4lrDX71u5FMO5ss0q0EGcj+A61AFBuzns6B2O19Cjtrrt8vvF1txkIoJI2rqdbxbY+bsRKf5PXYs+gn7diJp8oJH4aL5uXRS6reMYYKPGIhYSq8X+af1NC6ZvRAt7g1NaYvFw3FyYdY5A3Cm6ytoj6MPF6iZWQ3shAsikX7YkpUYelAdfDimWcQVsxjqm/38ifrEA5oSrnOVsVVvtxpIQohPj9tBQG2ICVkDAnDRNEX0q5osA0MqkpVMZOBrWz92oOqYrag/6HfT/nfCSp0fi4GWm8Jdu61LbQDC/013h7/tcdQECmEWCplgXofhQ8cSJB6+xtXowpA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=+fUTbTbQGJxxRRhrt66KxqM//FooPHHKk7wSHiTN4h4=;
 b=DpS+oEQAIx46oQK6cNfci3jID1aEIbYC25dKzZ05VTuro575glQCDbdmlKmN49DXymWTNP5AN2iHDGxcDhs7tSNMx7n/V91IRADoFVbSRvjGHeiGIdHbbVIlc+b9s4EiYeZRv7b7+ypSGEm2qTgUw5MllDlJb0Jxh5QC+naZDiSy81OfbNdWXCDLW/hM5u2s3Ibq9H+QWTlm+/+cFvU8VlLVIxrfRkKEaFPi1RSLR2093lK8cgzvQm7+WtDfPKcteuyaG5+W8h+Zm3Y9zG5hcy6qrpJiVCf1ASFC5NhiK4wc2BGUvMY7xDN2c+174zAVYZ3GKggTFQJfJNBIRphTiw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=+fUTbTbQGJxxRRhrt66KxqM//FooPHHKk7wSHiTN4h4=;
 b=YNPiZ3x/xnrCL8qjOTn3kXRF8twRVRj5ZE/0CdWrK8lzMeCMBp2MIqhNMmtiwwk0NGoSOdtqOxIUXUHxZyPFQoeN0Ap4ve/jX78MSLTOqN/Zn0JUCMIiG9BkXmxzrCKxYvVTsqNJMDd0ElQq64g+YGTnEdBSm/sThI3VF+KTpc4O4DlbAJCClrvYrUGoWwxMSrg9mWBpCKlxE7Zd16/JrMdY96zDX2fAkTLTwAEM7cR04N4Q8aGoHx4FLS9zHQsLWntEnppmQfAzsJGF5wy4m8CptPB0k3GPpNtXiNRzC6kqbdyubrOwz1+NPTHzZ32QAHmt7Tl04y90Lu4bhg89KQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <aa78ac18-b127-da92-bb04-6cbdaded3bef@suse.com>
Date: Wed, 25 Oct 2023 10: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: Generalise the usage of exclude-list.json
Content-Language: en-US
To: Luca Fancellu <Luca.Fancellu@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>, Wei Liu <wl@xen.org>,
 Bertrand Marquis <Bertrand.Marquis@arm.com>,
 Michal Orzel <Michal.Orzel@amd.com>,
 Xen-devel <xen-devel@lists.xenproject.org>
References: <5883E219-2C0C-4809-852B-704C6ED0E736@arm.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <5883E219-2C0C-4809-852B-704C6ED0E736@arm.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
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_|AS8PR04MB7669:EE_
X-MS-Office365-Filtering-Correlation-Id: a16b14f4-01fe-42a5-77da-08dbd53849de
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	+30udcST9VruHMmQI81dH/2e4jK3Q98k5lsVb8e7qiiRSW6pfOD0mUw8PmfApb9U1vEZo4jZ3rAtP27gKo8fp20sWcg3cl3nkBaV0Sx7Rg3/+eVGWCeOv3ah0fcyhstiQg3SX5uOkLSUBpGZ9PxPfBbtA/DcxcJWwiBLZ3/An6hr57nqwbUP7wGYfzBvMSclU4XHdyGxiVMLH16aYhTIY9DmLB95fYGv6FU8oaLhH6q9zHlQIkYn8+3jr+cFbwJgOKX8E8wL3Dp/HgtlsDEl4HKstQCAbPuiF4/uwzX5syAthnjH6Xl8ekBtL4HfjSAmTO3zEbbfwCa+J7RJ3OEYYgSRRV/IHS2Lm11ESoQg3foHTyLbws8oPCh0fGiK35ROLRGiE0mNHTtPeV1Dl1JWoX5r1EbZgw6t99aiNFTAmPTj2021FmFRMeD9MoA+LIFhk/eemFTzRAiyrRDVlpldjvrnVKsfPPPAZ8b/NN9qkngNUG9HzmXt+7TPhDUK56ipkkfE1xvlHxw67RmC4w8zuE4Bvv8eWFKbw5Z1O65GZZ48HGMwrc7E7Uhs7GhGQGTMLQTO3dyMlKUu2NtgYpizYI2xUcb8nk4pB7XSsoREzXUk9nRXpOP814rUWppQxPyYipf/OvqNlZDNgn1gYxkzDw==
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)(39860400002)(396003)(136003)(230922051799003)(1800799009)(451199024)(64100799003)(186009)(41300700001)(8936002)(31686004)(31696002)(5660300002)(86362001)(4326008)(8676002)(66946007)(54906003)(66476007)(66556008)(6916009)(478600001)(316002)(6486002)(36756003)(2906002)(26005)(2616005)(38100700002)(83380400001)(6506007)(6512007)(53546011)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?SVkxd3d6c0RoQ0xQMWpoNUFERFpyUzVHaHlDWkJiUzBudDNOMWZRNVBvMnhs?=
 =?utf-8?B?bUsveHI1eml5T1pVTXByMmZwQlc3dEtJRnJUQzZoaUhxUWpvN05xQ1NEVWxs?=
 =?utf-8?B?bTNrdisxckpFMW1jdkZPdVRDUzhEM2VwYnRaWTJIcEVrOUJHWEVlMVgzOVJB?=
 =?utf-8?B?ZFoyV254eGVBeUhERnNLdkZZMVJNVEw4djRaTW5YaDdDZkdWVHlYQkFYN3JQ?=
 =?utf-8?B?bDJmTTBNU1VNNFdlSE8rSTYwWjRadmIxVnNVTityODNJaUF1L2xDYkZ4MjJB?=
 =?utf-8?B?WXV0SVp4NWQvMGFhL0dkcGxHdXIwQVdOUVE0ZDh1NzZOajlHbFpVL3RXcmpR?=
 =?utf-8?B?NVZkczJTQmRCVkJRZGJlM0FnNStUdHhkUDgzTkovSnlXUys1Q1FrZUpzOWxH?=
 =?utf-8?B?ZytkemFMbE4xdXZnQWk0bnEwdk5mTzRMTXZNclNjaGJHODI4YzhpRUlPWWtG?=
 =?utf-8?B?aEJFSHhDNGtGaUY3TVhucUE1SmZ1ZlRpbUNkSDdueDkzNnY1bWVrWWhBUW51?=
 =?utf-8?B?dVdMRUM1Zys0ZXluejI4bXV6S09vQVJaY1E0U2FDTmdXK0FTdlRISS9tajRp?=
 =?utf-8?B?aWVpaVFWZHJya0tmSzFmY1ZjckhvVU56L3ZGR1RwblZaV1BxbU0vNHllcUly?=
 =?utf-8?B?OEdrQ2RtSFM0dGlnRDRsdkpNT2EvTDRXNTcrL1BZT003ZExLblFuT21KTm5H?=
 =?utf-8?B?dndYeTU5ZENwNkszdGs5TnJET2dzWUgrT21ZZU5YblZGaGZNODFLMzh1N3pC?=
 =?utf-8?B?b0h1YzJqYzhzem4rL2xpNlY1bTViRkx3akZHRjZrTUt4RWdIRlBqZlJodGpz?=
 =?utf-8?B?NnZlS2dCZ21PWDBKZDdjd0VPaHBBYWpoUDU1c2h4TDNvRnhqYkRWQ0R3NzJO?=
 =?utf-8?B?UWF5OHZKOHUwcG9nZENCd0YwaTlUbGRkRWRnT1lGQzQ1NkxkeHlMUXBFT2Qy?=
 =?utf-8?B?UFAwUWh0NS81VXFVQUQ1VDExVW1RTHl2aElvL1B3czNSZHhuRjh1NU9xaTJE?=
 =?utf-8?B?dVBqRVgyQTlmN3FveUVCTC8zZUw1OVRuNHhyWTRTc2d0NUgzWjFMdGxWVW5o?=
 =?utf-8?B?N2VjTCtkSnE4ZnVDeEpsN0FnWjRub3FTazBqdzBSN0Fwc2FlbUw1VzMyN3FY?=
 =?utf-8?B?TXgrOHpNU3pFNW80U3dHdG1Rc0J0dHhtendxWENMSmgyTk5CZTJpVGpPckI3?=
 =?utf-8?B?SkpNZThZOThHbWljUHJobERpZVZCZDVaTEdqMHRyVzFHWVdySi9jQVFEbkhz?=
 =?utf-8?B?Y1Bxd0ZkbGplMXZMMGlvalluVE1uOW5zbDdzOUxFZmFoeTdTUGFoaWFDTTlU?=
 =?utf-8?B?OHVjN3doUm9nSENNR0dsOEJ0SnMzM1FYdk9SMkdvbHl4aVBOMENTUXIySENx?=
 =?utf-8?B?TWVBYnlCekt4VGlLVEYwZGpqMVJhKzBRcGFrS29mVmg1TmhuZFA3bE5COG9R?=
 =?utf-8?B?Qm9ucUNTV0dVTkFobHhtRnE5ekJPMEFiWDVOcXNyZ1FWU29HZjA1cW9LdTB6?=
 =?utf-8?B?WEZLZzlhUzNKVnNmQVpvRkJmREJWRFI2SVdKc1ltTU5DS3h5cVNHUmdiNUV4?=
 =?utf-8?B?UHQyb3U4R3QxeGVyeFZoaHVHSlJvSFJEKzlBdjhYUmU1L0RaK0xCWjNjREtE?=
 =?utf-8?B?blVEanBIR29XZzRNVnlERnRIWFFyN2I2b0JNRExvOXZVMGhLUHRZUlRTUmNo?=
 =?utf-8?B?MTRVSTQ5Z25CelBFUzhHWnVDZ2hlQUFQVEVCY2N2M1l5UWd2TmJlcUdxdDdO?=
 =?utf-8?B?VlFXNGZQUk41WncxUVhEeEtnTG1IZEEvNStZWGgwNEZVckxPV29UVko4cmdB?=
 =?utf-8?B?UVAvTU5qc3gxTElhbFk1b1N4ZVZsYWxKY0c4TUtpRzJoUk1Rck1CSWZnTmk3?=
 =?utf-8?B?OGI3NDA0dHB6UVBqYWtWd2ZjRm9WbG9maFA5ZkhJMHJ2NXdhOGxvM09XQnhO?=
 =?utf-8?B?NlhxNlhKbFc3NzlIbnhEbXcwcGhVQ3l3a2s0N2g2K2JteUUxeGJycVhDY2hP?=
 =?utf-8?B?dUNsRnFrVnBNVDRId2t4NnVUUmdOdkRSMWdzUi9HN3MrZC8zNEhUTDVrOVN0?=
 =?utf-8?B?YlhLY2xtQ2tCVlJ4NGlBcTMzNS9kK1FGNUlrcGhmTStBOXlJK2YwdEZ0TVZ4?=
 =?utf-8?Q?VXcB6SFnPAXcpKiNz7CzJSy64?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: a16b14f4-01fe-42a5-77da-08dbd53849de
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Oct 2023 08:56:33.8442
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: r96hJfw65nQNNNMHjwhuCzwlyYnUNn73W9l3syb8lh5LPrys2nVighpKP9cbCj048Zxq3Gd2FowqJkkogn7YVg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB7669

On 25.10.2023 10:35, Luca Fancellu wrote:
> I’m sending this mail looking for feedbacks about generalising the exclude-list.json, as suggested (IIRC) by Jan
> this list can be used by multiple users and not only for MISRA, by adding a field to every entry.
> 
> These are the modifications I would like to do to the list, I will implement them if we reach an agreement.

Looks okay to me, thanks. Just one comment on wording:

> --- a/docs/misra/exclude-list.rst
> +++ b/docs/misra/exclude-list.rst
> @@ -1,17 +1,16 @@
>  .. SPDX-License-Identifier: CC-BY-4.0
>  
> -Exclude file list for xen-analysis script
> -=========================================
> +Exclude file list for xen scripts
> +=================================
>  
> -The code analysis is performed on the Xen codebase for both MISRA
> -checkers and static analysis checkers, there are some files however that
> -needs to be removed from the findings report for various reasons (e.g.
> -they are imported from external sources, they generate too many false
> -positive results, etc.).
> +Different Xen scripts can perform operations on the codebase to check its
> +compliance for a set of rules, however Xen contains some files that are taken
> +from other projects (e.g. linux) and they can't be updated to allow backporting
> +fixes from their source, for this reason the file docs/misra/exclude-list.json
> +is kept as a source of all these files that are external to the Xen project.

I'd suggest s/allow/ease/ - backports are always possible, but may end up
needing to be done entirely manually when original formatting was altered.

Jan

> -For this reason the file docs/misra/exclude-list.json is used to exclude every
> -entry listed in that file from the final report.
> -Currently only the cppcheck analysis will use this file.
> +Every entry of the file can be linked to different checkers, so that this list
> +can be used by multiple scripts selecting only the required entries.
>  
>  Here is an example of the exclude-list.json file::
>  
> @@ -21,10 +20,12 @@ Here is an example of the exclude-list.json file::
>  |        {
>  |            "rel_path": "relative/path/from/xen/file",
>  |            "comment": "This file is originated from ..."
> +|            "checkers": "xen-analysis"
>  |        },
>  |        {
>  |            "rel_path": "relative/path/from/xen/folder/*",
>  |            "comment": "This folder is a library"
> +|            "checkers": "xen-analysis some-checker"
>  |        },
>  |        {
>  |            "rel_path": "relative/path/from/xen/mem*.c",
> @@ -39,6 +40,12 @@ Here is an explanation of the fields inside an object of the "content" array:
>     match more than one file/folder at the time. This field is mandatory.
>   - comment: an optional comment to explain why the file is removed from the
>     analysis.
> + - checkers: an optional list of checkers that will exclude this entries from
> +   their results. This field is optional and when not specified, it means every
> +   checker will use that entry.
> +   Current implemented values for this field are:
> +    - xen-analysis: the xen-analysis.py script exclude this entry for both MISRA
> +      and static analysis scan. (Implemented only for Cppcheck tool)
>  
>  To ease the review and the modifications of the entries, they shall be listed in
>  alphabetical order referring to the rel_path field.
> 
> 
> --------------------------------------------------------------------------------------------------------------------------------------
> 
> In this way I could use this list also for the clang-format tool, excluding all the file from external sources
> plus the file we don’t want clang-format to touch.
> 
> Cheers,
> Luca
> 
> 



From xen-devel-bounces@lists.xenproject.org Wed Oct 25 09:00:29 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 09:00:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622728.969813 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvZkQ-0004kJ-2H; Wed, 25 Oct 2023 09:00:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622728.969813; Wed, 25 Oct 2023 09: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 1qvZkP-0004kC-Vx; Wed, 25 Oct 2023 09:00:17 +0000
Received: by outflank-mailman (input) for mailman id 622728;
 Wed, 25 Oct 2023 09:00: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=LJSz=GH=casper.srs.infradead.org=BATV+85b1c44ac99574f3713d+7367+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qvZkN-0004k0-4o
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 09:00:17 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id e6ef601b-7314-11ee-98d5-6d05b1d4d9a1;
 Wed, 25 Oct 2023 11:00:12 +0200 (CEST)
Received: from [2001:8b0:10b:5:758e:a1c4:bc7:e7a7]
 (helo=u3832b3a9db3152.ant.amazon.com)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qvZkG-007ndV-SB; Wed, 25 Oct 2023 09: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: e6ef601b-7314-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=MIME-Version:Content-Type:References:
	In-Reply-To:Date:Cc:To:From:Subject:Message-ID:Sender:Reply-To:
	Content-Transfer-Encoding:Content-ID:Content-Description;
	bh=iZi1uuJHpalMiH9ef9Cqm3wVDhjFV8Mn+j0MBqXsuRQ=; b=JCUq6U7qwwVrWm5cWzMCHuWkgY
	SKhbhBxPvA1sIxwcDgOwd8eg+IBdpJnPRXHTvRqYn96zYDgqnEnHfNlMeNSlBqVE2M2oQ5537dhdd
	qNIrntNVWQZ57yt/A0wLUVgisFoAPGgUPMsnQRnQWRz240MXbJ05/8U+o9l1r/eJLD584c9SCN7CB
	YeDnudR/Lgipkd5t/uOloQvxFvL030KakHu4k802jOzJhqxa74pYNYoNSqeII68LXzcSlL7z2mGqL
	AzQb/4ridsGNAHweMgZBl837ajslJemNikAki4tzVq/5xOYR1wtQmkdsuRmHoBkLjW2oQy8pmhj8X
	2R8g8o4g==;
Message-ID: <31b160a3f3ce2eda057dafec3cab273a38f1dc0f.camel@infradead.org>
Subject: Re: [PATCH 12/12] hw/xen: add support for Xen primary console in
 emulated mode
From: David Woodhouse <dwmw2@infradead.org>
To: paul@xen.org, qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>, Hanna Reitz <hreitz@redhat.com>, Stefano
 Stabellini <sstabellini@kernel.org>, Anthony Perard
 <anthony.perard@citrix.com>,  =?ISO-8859-1?Q?Marc-Andr=E9?= Lureau
 <marcandre.lureau@redhat.com>, Paolo Bonzini <pbonzini@redhat.com>,
 "Michael S. Tsirkin" <mst@redhat.com>, Marcel Apfelbaum
 <marcel.apfelbaum@gmail.com>, Richard Henderson
 <richard.henderson@linaro.org>, Eduardo Habkost <eduardo@habkost.net>, 
 Marcelo Tosatti <mtosatti@redhat.com>, qemu-block@nongnu.org,
 xen-devel@lists.xenproject.org, kvm@vger.kernel.org
Date: Wed, 25 Oct 2023 10:00:08 +0100
In-Reply-To: <684d378d-9c71-4a5f-8f0c-3ed6ffc20a70@xen.org>
References: <20231016151909.22133-1-dwmw2@infradead.org>
	 <20231016151909.22133-13-dwmw2@infradead.org>
	 <c18439ca-c9ae-4567-bbcf-dffe6f7b72e3@xen.org>
	 <3acd078bba2d824f836b20a270c780dc2d031c43.camel@infradead.org>
	 <3f22903b-30f0-40f2-8624-b681d9c7e05d@xen.org>
	 <42b005d7c03d5b0d47a16c4e025d8c3ec7289e0f.camel@infradead.org>
	 <19fc2701-4cd8-4a14-9d45-bfaea37ed2d6@xen.org>
	 <efdefcc11e2bd8c0f7e6e914dc9c54ffd65fe733.camel@infradead.org>
	 <684d378d-9c71-4a5f-8f0c-3ed6ffc20a70@xen.org>
Content-Type: multipart/signed; micalg="sha-256"; protocol="application/pkcs7-signature";
	boundary="=-Mq1/62YRka1szoenOvX5"
User-Agent: Evolution 3.44.4-0ubuntu2 
MIME-Version: 1.0
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html


--=-Mq1/62YRka1szoenOvX5
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Wed, 2023-10-25 at 09:31 +0100, Paul Durrant wrote:
> On 24/10/2023 17:34, David Woodhouse wrote:
> > On Tue, 2023-10-24 at 17:25 +0100, Paul Durrant wrote:
> > > On 24/10/2023 16:49, David Woodhouse wrote:
> > > > On Tue, 2023-10-24 at 16:39 +0100, Paul Durrant wrote:
> > > > > On 24/10/2023 16:37, David Woodhouse wrote:
> > > > > > On Tue, 2023-10-24 at 15:20 +0100, Paul Durrant wrote:
> > > > > > > On 16/10/2023 16:19, David Woodhouse wrote:
> > > > > > > > From: David Woodhouse <dwmw@amazon.co.uk>
> > > > > > > >=20
> > > > > > > > The primary console is special because the toolstack maps a=
 page at a
> > > > > > > > fixed GFN and also allocates the guest-side event channel. =
Add support
> > > > > > > > for that in emulated mode, so that we can have a primary co=
nsole.
> > > > > > > >=20
> > > > > > > > Add a *very* rudimentary stub of foriegnmem ops for emulate=
d mode, which
> > > > > > > > supports literally nothing except a single-page mapping of =
the console
> > > > > > > > page. This might as well have been a hack in the xen_consol=
e driver, but
> > > > > > > > this way at least the special-casing is kept within the Xen=
 emulation
> > > > > > > > code, and it gives us a hook for a more complete implementa=
tion if/when
> > > > > > > > we ever do need one.
> > > > > > > >=20
> > > > > > > Why can't you map the console page via the grant table like t=
he xenstore
> > > > > > > page?
> > > > > >=20
> > > > > > I suppose we could, but I didn't really want the generic xen-co=
nsole
> > > > > > device code having any more of a special case for 'Xen emulatio=
n' than
> > > > > > it does already by having to call xen_primary_console_create().
> > > > > >=20
> > > > >=20
> > > > > But doesn't is save you the whole foreignmem thing? You can use t=
he
> > > > > grant table for primary and secondary consoles.
> > > >=20
> > > > Yes. And I could leave the existing foreignmem thing just for the c=
ase
> > > > of primary console under true Xen. It's probably not that awful a
> > > > special case, in the end.
> > > >=20
> > > > Then again, I was surprised I didn't *already* have a foreignmem op=
s
> > > > for the emulated case, and we're probably going to want to continue
> > > > fleshing it out later, so I don't really mind adding it.
> > > >=20
> > >=20
> > > True. We'll need it for some of the other more fun protocols like vkb=
d
> > > or fb. Still, I think it'd be nicer to align the xenstore and primary
> > > console code to look similar and punt the work until then :-)
> >=20
> > I don't think it ends up looking like xenstore either way, does it?
> > Xenstore is special because it gets to use the original pointer to its
> > own page.
> >=20
>=20
> Not sure what you mean there? A guest can query the PFN for either=20
> xenstore or console using HVM params, or it can find them in its own=20
> grant table entries 0 or 1.

The code in our xen_xenstore.c uses its *own* pointer (s->xs) to the
MemoryRegion that it created (s->xenstore_page). It is its own backend,
as well as doing the "magic" to create the guest-side mapping and event
channel.

The difference for the console code is that we actually have a
*separation* between the standard backend code in xen_console.c, and
the magic frontend parts for the emulated mode.


>=20
> > I don't think I want to hack the xen_console code to explicitly call a
> > xen_console_give_me_your_page() function. If not foreignmem, I think
> > you were suggesting that we actually call the grant mapping code to get
> > a pointer to the underlying page, right?
>=20
> I'm suggesting that the page be mapped in the same way that the xenstore=
=20
> backend does:
>=20
> 1462=C2=A0=C2=A0=C2=A0 /*=20
>=20
> 1463=C2=A0=C2=A0=C2=A0=C2=A0 * We don't actually access the guest's page =
through the grant, because
> 1464=C2=A0=C2=A0=C2=A0=C2=A0 * this isn't real Xen, and we can just use t=
he page we gave it in the
> 1465=C2=A0=C2=A0=C2=A0=C2=A0 * first place. Map the grant anyway, mostly =
for cosmetic purposes so
> 1466=C2=A0=C2=A0=C2=A0=C2=A0 * it *looks* like it's in use in the guest-v=
isible grant table.=20
> 1467=C2=A0=C2=A0=C2=A0=C2=A0 */
> 1468=C2=A0=C2=A0=C2=A0 s->gt =3D qemu_xen_gnttab_open();
> 1469=C2=A0=C2=A0=C2=A0 uint32_t xs_gntref =3D GNTTAB_RESERVED_XENSTORE;
> 1470=C2=A0=C2=A0=C2=A0 s->granted_xs =3D qemu_xen_gnttab_map_refs(s->gt, =
1, xen_domid, &xs_gntref,
> 1471=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 PROT_READ | PROT_WRITE);

It already *is*. But as with xen_xenstore.c, nothing ever *uses* the
s->granted_xs pointer. It's just cosmetic to make the grant table look
right.

But that doesn't help the *backend* code. The backend doesn't even know
the grant ref#, because the convention we inherited from Xen is that
the `ring-ref` in XenStore for the primary console is actually the MFN,
to be mapped as foreignmem.

Of course, we *do* know the grant-ref for the primary console, as it's
always GNTTAB_RESERVED_CONSOLE. So I suppose we could put a hack into
the xen_console backend to map *that* in the case of primary console
under emu? In fact that would probably do the right thing even under
Xen if we could persuade Xen to make an ioemu primary console?





> >=20
> > I could kind of live with that... except that Xen has this ugly
> > convention that the "ring-ref" frontend node for the primary console
> > actually has the *MFN* not a grant ref. Which I don't understand since
> > the toolstack *does* populate the grant table for it (just as it does
> > for the xenstore page).=C2=A0But we'd have to add a special case except=
ion
> > to that special case, so that in the emu case it's an actual grant ref
> > again. I think I prefer just having a stub of foreignmem, TBH.
> >=20
>=20
> You're worried about the guest changing the page it uses for the primary=
=20
> console and putting a new one in xenstore? I'd be amazed if that even
> works on Xen unless the guest is careful to write it into=20
> GNTTAB_RESERVED_CONSOLE.

Not worried about the guest changing it. I was mostly just concerned
about the xen-console having to have another special case and magically
"know" it. But I suppose I can live with it being hard-coded to
GNTTAB_RESERVED_CONSOLE. I'll knock that up and see how it makes me
feel.

I'm reworking some of that connect/disconnect code anyway, to have the
backend tell the primary_console code directly what the backend port#
is, so I can remove the soft-reset hacks in xen_evtchn.c entirely.

--=-Mq1/62YRka1szoenOvX5
Content-Type: application/pkcs7-signature; name="smime.p7s"
Content-Disposition: attachment; filename="smime.p7s"
Content-Transfer-Encoding: base64

MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgEFADCABgkqhkiG9w0BBwEAAKCCEkQw
ggYQMIID+KADAgECAhBNlCwQ1DvglAnFgS06KwZPMA0GCSqGSIb3DQEBDAUAMIGIMQswCQYDVQQG
EwJVUzETMBEGA1UECBMKTmV3IEplcnNleTEUMBIGA1UEBxMLSmVyc2V5IENpdHkxHjAcBgNVBAoT
FVRoZSBVU0VSVFJVU1QgTmV0d29yazEuMCwGA1UEAxMlVVNFUlRydXN0IFJTQSBDZXJ0aWZpY2F0
aW9uIEF1dGhvcml0eTAeFw0xODExMDIwMDAwMDBaFw0zMDEyMzEyMzU5NTlaMIGWMQswCQYDVQQG
EwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYD
VQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50
aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC
AQEAyjztlApB/975Rrno1jvm2pK/KxBOqhq8gr2+JhwpKirSzZxQgT9tlC7zl6hn1fXjSo5MqXUf
ItMltrMaXqcESJuK8dtK56NCSrq4iDKaKq9NxOXFmqXX2zN8HHGjQ2b2Xv0v1L5Nk1MQPKA19xeW
QcpGEGFUUd0kN+oHox+L9aV1rjfNiCj3bJk6kJaOPabPi2503nn/ITX5e8WfPnGw4VuZ79Khj1YB
rf24k5Ee1sLTHsLtpiK9OjG4iQRBdq6Z/TlVx/hGAez5h36bBJMxqdHLpdwIUkTqT8se3ed0PewD
ch/8kHPo5fZl5u1B0ecpq/sDN/5sCG52Ds+QU5O5EwIDAQABo4IBZDCCAWAwHwYDVR0jBBgwFoAU
U3m/WqorSs9UgOHYm8Cd8rIDZsswHQYDVR0OBBYEFAnA8vwL2pTbX/4r36iZQs/J4K0AMA4GA1Ud
DwEB/wQEAwIBhjASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEF
BQcDBDARBgNVHSAECjAIMAYGBFUdIAAwUAYDVR0fBEkwRzBFoEOgQYY/aHR0cDovL2NybC51c2Vy
dHJ1c3QuY29tL1VTRVJUcnVzdFJTQUNlcnRpZmljYXRpb25BdXRob3JpdHkuY3JsMHYGCCsGAQUF
BwEBBGowaDA/BggrBgEFBQcwAoYzaHR0cDovL2NydC51c2VydHJ1c3QuY29tL1VTRVJUcnVzdFJT
QUFkZFRydXN0Q0EuY3J0MCUGCCsGAQUFBzABhhlodHRwOi8vb2NzcC51c2VydHJ1c3QuY29tMA0G
CSqGSIb3DQEBDAUAA4ICAQBBRHUAqznCFfXejpVtMnFojADdF9d6HBA4kMjjsb0XMZHztuOCtKF+
xswhh2GqkW5JQrM8zVlU+A2VP72Ky2nlRA1GwmIPgou74TZ/XTarHG8zdMSgaDrkVYzz1g3nIVO9
IHk96VwsacIvBF8JfqIs+8aWH2PfSUrNxP6Ys7U0sZYx4rXD6+cqFq/ZW5BUfClN/rhk2ddQXyn7
kkmka2RQb9d90nmNHdgKrwfQ49mQ2hWQNDkJJIXwKjYA6VUR/fZUFeCUisdDe/0ABLTI+jheXUV1
eoYV7lNwNBKpeHdNuO6Aacb533JlfeUHxvBz9OfYWUiXu09sMAviM11Q0DuMZ5760CdO2VnpsXP4
KxaYIhvqPqUMWqRdWyn7crItNkZeroXaecG03i3mM7dkiPaCkgocBg0EBYsbZDZ8bsG3a08LwEsL
1Ygz3SBsyECa0waq4hOf/Z85F2w2ZpXfP+w8q4ifwO90SGZZV+HR/Jh6rEaVPDRF/CEGVqR1hiuQ
OZ1YL5ezMTX0ZSLwrymUE0pwi/KDaiYB15uswgeIAcA6JzPFf9pLkAFFWs1QNyN++niFhsM47qod
x/PL+5jR87myx5uYdBEQkkDc+lKB1Wct6ucXqm2EmsaQ0M95QjTmy+rDWjkDYdw3Ms6mSWE3Bn7i
5ZgtwCLXgAIe5W8mybM2JzCCBhQwggT8oAMCAQICEQDGvhmWZ0DEAx0oURL6O6l+MA0GCSqGSIb3
DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYD
VQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28g
UlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMB4XDTIyMDEwNzAw
MDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJARYTZHdtdzJAaW5mcmFkZWFkLm9y
ZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3GpC2bomUqk+91wLYBzDMcCj5C9m6
oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZHh7htyAkWYVoFsFPrwHounto8xTsy
SSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT9YgcBqKCo65pTFmOnR/VVbjJk4K2
xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNjP+qDrh0db7PAjO1D4d5ftfrsf+kd
RR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy2U+eITZ5LLE5s45mX2oPFknWqxBo
bQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3BgBEmfsYWlBXO8rVXfvPgLs32VdV
NZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/7auNVRmPB3v5SWEsH8xi4Bez2V9U
KxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmdlFYhAflWKQ03Ufiu8t3iBE3VJbc2
5oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9aelIl6vtbhMA+l0nfrsORMa4kobqQ5
C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMBAAGjggHMMIIByDAfBgNVHSMEGDAW
gBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeDMcimo0oz8o1R1Nver3ZVpSkwDgYD
VR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYwFAYIKwYBBQUHAwQGCCsGAQUFBwMC
MEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYBBQUHAgEWF2h0dHBzOi8vc2VjdGln
by5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9jcmwuc2VjdGlnby5jb20vU2VjdGln
b1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1haWxDQS5jcmwwgYoGCCsGAQUFBwEB
BH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdvLmNvbS9TZWN0aWdvUlNBQ2xpZW50
QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAjBggrBgEFBQcwAYYXaHR0cDovL29j
c3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5mcmFkZWFkLm9yZzANBgkqhkiG9w0B
AQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQvQ/fzPXmtR9t54rpmI2TfyvcKgOXp
qa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvIlSPrzIB4Z2wyIGQpaPLlYflrrVFK
v9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9ChWFfgSXvrWDZspnU3Gjw/rMHrGnql
Htlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0whpBtXdyDjzBtQTaZJ7zTT/vlehc/
tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9IzCCBhQwggT8oAMCAQICEQDGvhmW
Z0DEAx0oURL6O6l+MA0GCSqGSIb3DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3Jl
YXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0
ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJl
IEVtYWlsIENBMB4XDTIyMDEwNzAwMDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJ
ARYTZHdtdzJAaW5mcmFkZWFkLm9yZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3
GpC2bomUqk+91wLYBzDMcCj5C9m6oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZH
h7htyAkWYVoFsFPrwHounto8xTsySSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT
9YgcBqKCo65pTFmOnR/VVbjJk4K2xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNj
P+qDrh0db7PAjO1D4d5ftfrsf+kdRR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy
2U+eITZ5LLE5s45mX2oPFknWqxBobQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3
BgBEmfsYWlBXO8rVXfvPgLs32VdVNZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/
7auNVRmPB3v5SWEsH8xi4Bez2V9UKxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmd
lFYhAflWKQ03Ufiu8t3iBE3VJbc25oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9ae
lIl6vtbhMA+l0nfrsORMa4kobqQ5C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMB
AAGjggHMMIIByDAfBgNVHSMEGDAWgBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeD
Mcimo0oz8o1R1Nver3ZVpSkwDgYDVR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYw
FAYIKwYBBQUHAwQGCCsGAQUFBwMCMEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYB
BQUHAgEWF2h0dHBzOi8vc2VjdGlnby5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9j
cmwuc2VjdGlnby5jb20vU2VjdGlnb1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1h
aWxDQS5jcmwwgYoGCCsGAQUFBwEBBH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdv
LmNvbS9TZWN0aWdvUlNBQ2xpZW50QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAj
BggrBgEFBQcwAYYXaHR0cDovL29jc3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5m
cmFkZWFkLm9yZzANBgkqhkiG9w0BAQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQv
Q/fzPXmtR9t54rpmI2TfyvcKgOXpqa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvI
lSPrzIB4Z2wyIGQpaPLlYflrrVFKv9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9Ch
WFfgSXvrWDZspnU3Gjw/rMHrGnqlHtlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0w
hpBtXdyDjzBtQTaZJ7zTT/vlehc/tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9
IzGCBMcwggTDAgEBMIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVz
dGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMT
NVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEA
xr4ZlmdAxAMdKFES+jupfjANBglghkgBZQMEAgEFAKCCAeswGAYJKoZIhvcNAQkDMQsGCSqGSIb3
DQEHATAcBgkqhkiG9w0BCQUxDxcNMjMxMDI1MDkwMDA4WjAvBgkqhkiG9w0BCQQxIgQgjb2Wctay
wayMeXa1kccBoKKQTImyQG/0HAtpbYX0UWIwgb0GCSsGAQQBgjcQBDGBrzCBrDCBljELMAkGA1UE
BhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEYMBYG
A1UEChMPU2VjdGlnbyBMaW1pdGVkMT4wPAYDVQQDEzVTZWN0aWdvIFJTQSBDbGllbnQgQXV0aGVu
dGljYXRpb24gYW5kIFNlY3VyZSBFbWFpbCBDQQIRAMa+GZZnQMQDHShREvo7qX4wgb8GCyqGSIb3
DQEJEAILMYGvoIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVy
MRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNl
Y3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEAxr4Z
lmdAxAMdKFES+jupfjANBgkqhkiG9w0BAQEFAASCAgCte8NfAvKEg7iwGPvEZ3HLEgn7+bEZQ64Z
qooyTNdasNh7BEI5BX1iaVRNj6DJiwvRPJiLDm/J3XnqJgZ5mq/ZRLtG79QWi/SmPdLPzwvOfNxJ
4a8cbdKDg1AolIbSBh/ZQ5LoRGRmiCXIkkfhTgjGURd9IcUg8PikeVPX6LY/SG7pRKyP2/qgOMeM
WoutzBxOQLYttRQ6S4riF5s5Le0ez2wgnS3Ja29KgauqQ6H0inlQgXG83lKkXSLUssvIIL5R+fB1
UOnjJl6UtxOVytNDpWrsBRzqse229WEzsip9w8/ySgpV97tHQOk7yTNtWqhH/ECMPDWlQaO3ZjrF
0uLxyXno5nl+qWoRf7o172i+XgcLinVb0/eCAoD+e4cJiprJSK/IWXKvO8jzNgJhg36cVvmulTYk
34e1uwDz3LhiaPI1hiBE1uRQv7a/s2DlQYp/eVgLAtQEASarRe755l/TsgDkSbdzAVrgi/Mm3yAh
PardWYl9/Bf/skqSFdLqFUCcqNfbi0gGUFt7AZP30uB8rPk3P8uCwsIlg/6afGxe5B9DPVdVqmCQ
eRplXCg352JMzLcbkoxJ1laOc/vh5LvPPcfkhjQBbfqmg63gDZ7IqMkpBUkze7dpiOaHdU8aoro2
Bcfhmv/dhDWxB8hgFBf14TnsCtJP0IKWfFSnAzscMQAAAAAAAA==


--=-Mq1/62YRka1szoenOvX5--


From xen-devel-bounces@lists.xenproject.org Wed Oct 25 09:10:51 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 09:10:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622734.969823 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvZuT-0006ZZ-0t; Wed, 25 Oct 2023 09:10:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622734.969823; Wed, 25 Oct 2023 09:10: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 1qvZuS-0006ZS-US; Wed, 25 Oct 2023 09:10:40 +0000
Received: by outflank-mailman (input) for mailman id 622734;
 Wed, 25 Oct 2023 09:10: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=e1rq=GH=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qvZuS-0006ZM-80
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 09:10:40 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 (mail-am6eur05on20628.outbound.protection.outlook.com
 [2a01:111:f400:7e1b::628])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 5cb3c5d6-7316-11ee-9b0e-b553b5be7939;
 Wed, 25 Oct 2023 11:10:37 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PR3PR04MB7402.eurprd04.prod.outlook.com (2603:10a6:102:89::16)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.18; Wed, 25 Oct
 2023 09:10:34 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6933.011; Wed, 25 Oct 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: 5cb3c5d6-7316-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=IAkwbw4tOEhdgYJU9WZ252S44BLhAmumEIyINYz7s4opHSC4GU2X6Pfn0UQ7R2L73CPIDQsOM2zPuUBXfwdY9E3B2m14Xoh7Tnf2RIzWdIA58c1EtMCAXjm0ynd+fu6FcHKFWxM8AtyMysC8yOybBwxs3L0KCItjIGa87DKyqYuUAQUe+DnOCq/1I9V6U5Xwlv2I/e2f+iHpA4OVd6fSJ2sHSqluiQ3l6zZAQN8nOFIL9c0padAfKAUnOrxlfiQmnGIJ50Ag+c5wE1ykwXT/YnPHlYW4kakokSfPw/iVw3isIZXAe5XaTVqi+I/CV+NGT5w1PgtWxbYw0l9B433/BQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=xLyhuqfG3K26sdi4WRteel/HdL17xlYkKTFEfqVH4I4=;
 b=octZMf68ifENgXh8BuOkAIQZqpRQiJeWCiYFsqD4jyT3sJoBrUAfUmkEx/MZ8IiRMCYzeTLMaB3iLI+HOVbSt6A+aKcnu/Bt5tEbeoaAx1c2+XI37rdLD/PVt7uLvBugplCOvngpH/KSRmq2dROCoVa5qy687esRMkiwWdU1U6qqHGdrgfZAocSrufgYyouY7Th00aNENr64ndF8qgdzadU26DA7TQ/lqP0/A8PH4jrkKKbnQU9hBfINxw+tHb7itEy+IVN7stG1FsitL0jZaSd69u4RR+kDmcOx0WB5xS5MO9nQcSnkKUUtDRDFiNtF0BTkZMqrJLCQlWmz8OnmrA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=xLyhuqfG3K26sdi4WRteel/HdL17xlYkKTFEfqVH4I4=;
 b=ZEUFD74yURwQcH/6tRUfroYgqZDY55b9DK3Yzpep+y3XUXFIri7oCmFQjgUEExzItt/NNX1Io2NlujLvcdil5tr/tdUg5bd69uwJtmbQ3ojcaJ5brerkDASF+KnYxcvrCWLFZHG23VzO9C3xEA/fMqaGWd7owiLaneEJ7LXSfCJh13n72yvcVN1zYb/M1EXKDPURkimW88h3QDba0kVPOo1jP21OiJ5gj/OvgfOOAY6IHens6ypikEwng2X/xXeVp7GaQ+DcgrfUyfZPk3Ta+mW3ArwHLlJNngXPIhF80BXiS70efPmEKnaDpeR57aqrcDHjDl5F4qXvPFUgRqBPzQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <9e646df5-a9de-545a-e827-951a161c935f@suse.com>
Date: Wed, 25 Oct 2023 11:10:32 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [for-4.19][PATCH] build: Allow setting KBUILD_DEFCONFIG in the
 environment
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: <20231025082834.31680-1-michal.orzel@amd.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20231025082834.31680-1-michal.orzel@amd.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR5P281CA0021.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:f1::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_|PR3PR04MB7402:EE_
X-MS-Office365-Filtering-Correlation-Id: 01764bb1-dd44-435d-1874-08dbd53a3f0f
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	DKASpPoTBNNlMuiSrBVTDM1pr6SLnfWrRgZc8aTABFN5NdD38MUYNQQFSTAGIPfeq6Joq2T44ZMkH+iUVP9hGJ4q9Kpxg8cFaj/gCUFpPLyo7XnoO3y6dmToToiPuPZWT1W6TcF9/LjawPsMT7ixQ44AF6a7pGAljjbrWDDtFaxvZN0yEQNd326Ro0+oevlAtiHjbWEGAJeqf6+oJZttWmgNVGuaq5TKc/NjqGnB9myAAfydlp/+wgiX8MVZW+VCYa4KoJFzYUCSpXNFDOwLtkk+LQ3o26dmDcR7SUTC+Mn2nF7Eh6Kn1v5m+kDvy5HLbkISJhRBl54JLBWl3eQeuzUafJbKMqJCepcUQWCrOrBxzQKxHm8KBgaoB/KDuan3tRH0AkPwXal42t8koivATLQmc+0bpUH33S9ngpp5nsgn/m+p0qQL/a/4rox5Ka41ncGLB2xjO4MKQhPBzKMLnDbxONkasRQzd4+HRJIDG6Xl+osSKXTrz7qug2qMnLh7YrgfTdop/h2ymT6P0drDpckV10RFI+Ag3g3M997oKttxOHVNLuyrtvh44RUvjDUrxnmcATfNxxwQquwHGDJNTOym7XJ7fnpMM7bFzCppyok8mdTkdH0lf4AbcMspMBmQMsDqCVInQ6m/ff0izd8poFvWCcE15jho1/HFBaEPizm2Vw0ptpNseAoJyzqQ2mcl2jKVu+EO0g22PbSl1PUyHQ==
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)(346002)(376002)(39860400002)(230922051799003)(186009)(451199024)(64100799003)(1800799009)(6486002)(66946007)(66556008)(54906003)(31686004)(66476007)(26005)(83380400001)(31696002)(86362001)(36756003)(38100700002)(478600001)(6512007)(53546011)(2616005)(2906002)(41300700001)(6506007)(6916009)(8936002)(316002)(8676002)(5660300002)(4326008)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?b0xZYTVWWDRrd0N5M1h4VXViUGFtNmlEa3RiY3FYN1lGWmlqcUx4MnhVcjlp?=
 =?utf-8?B?N1NRQ1BhTzcvL0FUdmtOOEh6N2t2eWFsb0pTb3BqTm80NlR5ZmkvSTJYMmwz?=
 =?utf-8?B?clk4MFdIb04yaUFGSGhxNjlyU1Jid1ExTlhxZlI5NGF3L2dzelE4L3BwMHI5?=
 =?utf-8?B?RzBLVDJnZ1JhTnQ1VGR3MzVVVzRkVzFqSk1NY05LNTN4Q0g3d2pTcFpOVXNV?=
 =?utf-8?B?VWorb1krZW4wcUJWOWJDdHZsVWNGYldkSFdZTlVBT29EVGh4Q2xZTldhdXg2?=
 =?utf-8?B?RzFpWVBMSWZMcnFxbTlONHc3cjkrMzFITVNGWUE4ZnJFN2tGQ2lrYmFGdURo?=
 =?utf-8?B?ck5tenB3SlZpN05IdFhyUm9MR2xrUU1JVHFlSWY4Znd3c3ZXTkY1QmRwU0pZ?=
 =?utf-8?B?dDNSc0FnRVRZU2EzV1hMMTE3b2RqWEFDNFlyN1ljYTVWbDlSeTRWU1JqTERK?=
 =?utf-8?B?UDBlR0lIUDhDbDcwcFVMQU5KS1hUbFRlSHdLaFphdS81clJVa0V2RnlwaEpP?=
 =?utf-8?B?WEFoZjhDaCtpZ0VMM3FzWEFwUkJ6eWNYQ2plVkxRWUJCNWJDQVNoaVdDKzMx?=
 =?utf-8?B?VEFsTXpBai9UWjFZMjRTelNGS3BkUUZJNlNWUXNFT2VpNEZYeFZFaFF2eits?=
 =?utf-8?B?Ry9hODdzVi9ZeVhqbWk4S2ZRUU9JcUhEdzJXRjZlcG56aENYeERscWVodDFV?=
 =?utf-8?B?VkQyRzFTU1grT3FGblA5WkRiVytqOTFFUlhzc09ZT2lmS3RVQzZXRUFLTndM?=
 =?utf-8?B?MWhuRGtRbnk1OU1Ia2VKdEg1OEVuQVgzWWhYMlhRaFNxSEZBbXRaa1o0cGgy?=
 =?utf-8?B?Z1Y5S1hJemJsbnVOa0YyZVYrVCsvZWlNbU9sU3dXbmYvcmt3eFNBbDRZazFo?=
 =?utf-8?B?T0JhK0h4Z3pwK05Eckd0QWZUbWkzUnprMkw0dGlkbEpRaHlNcEcxUXpzdDFI?=
 =?utf-8?B?SElVM2pMa1V1eW9DWUxOSWdtMmJZSHdxK2hWbGxuMDZpV05SaEFraG9ybnJm?=
 =?utf-8?B?M0Nnb3pHS003S2g1V0hPekxLOUk4aVpCRzRXMTlacS8zaTJlWTVTN3N6aXpG?=
 =?utf-8?B?aXU3eE1RTmFVSCtWNzlzQSszY2pLVXFOTHZGOUMxYXlWS0NueDQrV2NLOCtT?=
 =?utf-8?B?UVdWVmpEL3dERjk3bmpRdnA0S3Fpakh5d1hId1BDT3JnRUxwbXlKVkR0bWZD?=
 =?utf-8?B?L3gwYkVMM2FYaXE0TWxTakRCV1dZNmtFSGwyZ2tydVh0MHFSYTBsTzViSmFL?=
 =?utf-8?B?NWdUN2xVc2kxM1U1eFJGS2dLRkxIdTZ0NjBrOUlaZHVhbVNmdVJtc0VIelA1?=
 =?utf-8?B?REljOXVXRlRGK0h1cnc2R1dERE5aS1J0R090VlVGblBwa2QzM1ZKUlFoTTdo?=
 =?utf-8?B?c1FLYU1INzVKa3JtMnJHRmlHU1pzMjNNcXJ0VGdUWEpjRkhPU0g0SHNVS3V1?=
 =?utf-8?B?RDlhUlE1WXZ0NFFiSjFlQi9zcVZ2OUVnSENodWF1cS9mUXZFYzNneFZqQVV2?=
 =?utf-8?B?dnZlNUFkbFp0QnhuVllBOG9kMjYwelBzOUx6UnpYZVNBYXFFQm8xR21hL25x?=
 =?utf-8?B?VDVlNitQUHJJbWYwUzVLSDdTeEpoNUI5RW1TYVpwMHRwWnd3UGxmRVRiYTlm?=
 =?utf-8?B?QXpleFlSVlpnM0EzdXFBKzYvTWNYQXh3a0pjSjY5SG9lalFtalVFdG1qN0tH?=
 =?utf-8?B?NTZzUzZHdXkrU1RrTzQ4OEJBaDZzZlJ0OWRpcWNaMVRvVmljY1ZWb1F6RlFN?=
 =?utf-8?B?MzJ1VVJ5RklJak1JRUFhU1JaL0ZUanVXeGc3UjdnZlJza3hHcERYblFzNnNt?=
 =?utf-8?B?WGdFRVAwQzJRcGJRbG1ESHpXTVpNU1ArUEFsazRrWm0xYklPQnZRWWh4b3Vz?=
 =?utf-8?B?VHQzVnArWEY2VVd3Z0Q1bGVOQ1Jpa0E5Q3pEWmJzMC9RZFdmSUNaeEt0WGVG?=
 =?utf-8?B?UFczVW56SnA0aHZnUHdIRkI3UjV5QkxpYTB4UFE1NUd1b29WU20rU2pqRGNX?=
 =?utf-8?B?ejZWR1h0QUxrM01BS3NiME9NUzJSM0YyNCtpM1IvZTE5TStkTW5nZzNXSk5j?=
 =?utf-8?B?dGkrSHA5WDV1NDExZ1RWVUUyclA4L3hLdTlrTG1GUnE5NFlta1NhNXB6bkg5?=
 =?utf-8?Q?OK+wcxURge8VbWPa9Rta6KRnw?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 01764bb1-dd44-435d-1874-08dbd53a3f0f
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Oct 2023 09:10:34.7158
 (UTC)
X-MS-Exchange-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/vVmCDYb6S9gaoOIeEi99ngNWjVXgMwgnZq5vE9U5q88PyDfzS9RhzxHVW3+FWkzIhAfQZF8WCRw/Sh3FcGg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PR3PR04MB7402

On 25.10.2023 10:28, Michal Orzel wrote:
> At the moment, in order to use a different defconfig target than default,
> one needs to specify KBUILD_DEFCONFIG=<target> on the command line.
> Switch to weak assignment, so that it can be also obtained from
> environment similar to other KCONFIG/KBUILD variables.
> 
> This change will activate the use of KBUILD_DEFCONFIG variable in CI
> build jobs that so far had no effect.

I'm certainly okay with the change, but the above sentence looks misleading
to me: Yes, the envvar was ignored so far, but isn't it the case that the
envvar as specified in CI matches what Makefile set it to (taking into
account that for RISC-V riscv64_defconfig aliases tiny64_defconfig), and
hence the specifications in build.yaml could be dropped (until such time
where truly an override was intended)?

Jan

> Note, that we will deviate from Linux in this regard.
> 
> Signed-off-by: Michal Orzel <michal.orzel@amd.com>
> ---
> In case of reluctance to this approach, we can always do:
>  make -C xen defconfig KBUILD_DEFCONFIG=${KBUILD_DEFCONFIG}
> in automation/scripts/build.
> 
> Also, Linux defers setting the variable to arch specific Makefile, so it is not
> sth mandated by the top level Makefile or documentation.
> ---
>  xen/Makefile | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/xen/Makefile b/xen/Makefile
> index fd0e63d29efb..40feefff4ab5 100644
> --- a/xen/Makefile
> +++ b/xen/Makefile
> @@ -256,7 +256,8 @@ export YACC = $(if $(BISON),$(BISON),bison)
>  export LEX = $(if $(FLEX),$(FLEX),flex)
>  
>  # Default file for 'make defconfig'.
> -export KBUILD_DEFCONFIG := $(ARCH)_defconfig
> +# May be overruled on the command line or set in the environment.
> +export KBUILD_DEFCONFIG ?= $(ARCH)_defconfig
>  
>  # Copy CFLAGS generated by "Config.mk" so they can be reused later without
>  # reparsing Config.mk by e.g. arch/x86/boot/.



From xen-devel-bounces@lists.xenproject.org Wed Oct 25 09:12:14 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 09:12:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622738.969833 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvZvl-0007GM-Dn; Wed, 25 Oct 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 622738.969833; Wed, 25 Oct 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 1qvZvl-0007GF-BB; Wed, 25 Oct 2023 09:12:01 +0000
Received: by outflank-mailman (input) for mailman id 622738;
 Wed, 25 Oct 2023 09: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=bQ/a=GH=citrix.com=prvs=655ba0516=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qvZvj-0007G7-MX
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 09:11:59 +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 8ab7c1a6-7316-11ee-98d5-6d05b1d4d9a1;
 Wed, 25 Oct 2023 11:11: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;
 25 Oct 2023 05:11:46 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by SJ0PR03MB6731.namprd03.prod.outlook.com (2603:10b6:a03:406::15)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.11; Wed, 25 Oct
 2023 09:11:43 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::acf0:ce2b:1634:5aee]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::acf0:ce2b:1634:5aee%6]) with mapi id 15.20.6933.011; Wed, 25 Oct 2023
 09:11: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: 8ab7c1a6-7316-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1698225117;
  h=date:from:to:cc:subject:message-id:references:
   in-reply-to:mime-version;
  bh=TtO6HGN7JdXUcEtN50jbHRoMt0VX0vHRV4bLB+Lx3Ho=;
  b=KExyPrfFiHF4OXwySiZRh+pnMSa/mscwkeaQwalW9txwh44Ei5tCwcGa
   9FW9LNKf7C3CMYWaSjyQ9+/GUtWPJ3nUOsqT3pbYDDZn5OpnBwY+WWbxH
   V9fZxym3IhTLLbSUAkMDVYw0FQK8rCfMFEJuyriuGX8eetblesQK8Jkmu
   w=;
X-CSE-ConnectionGUID: S89lukk5TdKlQIsnE9xmbQ==
X-CSE-MsgGUID: s12R2LrgQFGJg5G2C/G7uw==
X-IronPort-RemoteIP: 104.47.58.168
X-IronPort-MID: 125820453
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:CKUbeqlW9uqhIb8ccj4NCmjo5gynJ0RdPkR7XQ2eYbSJt1+Wr1Gzt
 xIcWmzUMvyDMTP2e4hzaI6/oEIEvJTTx4NgSgRr+HtmQSMWpZLJC+rCIxarNUt+DCFhoGFPt
 JxCN4aafKjYaleG+39B55C49SEUOZmgH+e6UKicfHkpGWeIcQ954Tp7gek1n4V0ttawBgKJq
 LvartbWfVSowFaYCEpNg064gE0p5K+aVA8w5ARkPqkT5gKGzhH5MbpETU2PByqgKmVrNrbSq
 9brlNmR4m7f9hExPdKp+p6TnpoiG+O60aCm0xK6aoD66vRwjnVaPpUTbZLwXXx/mTSR9+2d/
 f0W3XCGpaXFCYWX8AgVe0Ew/yiTpsSq8pefSZS0mZT7I0Er7xIAahihZa07FdRwxwp5PY1B3
 cdIeTQQbRPeu+6VxIuaUe9B19QmJvC+aevzulk4pd3YJdAPZMmaBo/stZpf1jp2gd1SF/HDY
 cZfcSBocBnLfxxIPBEQFY46m+CrwHL4dlW0qnrM/fZxvzeVkVw3iea9WDbWUoXiqcF9hEGXq
 3iA523kKhobKMae2XyO9XfEaurnxHmmCNhKSODjnhJsqEbKnFZJLAcZbHWUg/bkpRSVHP0AN
 lNBr0LCqoB3riRHVOLVXRe1vXqFtR40QMdLHqsx7wTl4rrZ5UOVC3YJShZFacc6r4kmSDoyz
 FiLktj1Qzt1v9W9Vna15rqS6zSoNkAowXQqYCYFSU4P5YnlqYRq1xbXFI89QOiyk8H/Hiz2z
 3aSti8iir4PjMkNkaKm4VTAhDHqrZ/MJuIo2jjqsquexlsRTOaYi0aAsDA3Md4owF6lc2S8
IronPort-HdrOrdr: A9a23:vKxMrK4sdVIszHFmxAPXwUCCI+orL9Y04lQ7vn2ZFiYlFfBwxv
 re+MjziyWE7Qr5AEtQ6+xo/ZPwCE819fZOkPMs1MSZLXzbUQqTXcFfBO7ZshHd8kLFh5BgPM
 tbAtBD4ZjLfCtHZKXBkUqF+rQbsai6GcmT7I+0oxgCPGIaDdAY0+pgMGam+w9NNXl77PECZe
 ehD7981kWdkAMsH7iG7xc+LpP+TwGiruOFXTc2QzMq9QWFkDWyyJO/KgOf1BsFST9DqI1Su1
 QtpzaJo5lL/svLkSM1GAfontVrseqk7uEGKN2Hi8ATJDmpogG0ZL55U7nHkCEprPqp4FMKls
 CJhxs7Jcx8517YY2nw+HLWqlTd+Qdrz0Wn5U6TgHPlr8C8bDUmC/BZjYYcXgrF51EmtNRc1r
 sO+26CrZJYAT7JgSy4zdnVUBNBkFayvBMZ4LQupk0adbFbRK5arIQZ8k8QOJAcHBji4IRiK+
 VqBNG03ocbTbvPBUq5gkBfhPiXGlgjFBaPRUYP/uaP1SJNoXx/x0wEgOQCg3Yp7vsGOst5zt
 WBFp4tuKBFT8cQY644LvwGW9GLBmvERg+JGH6OIG7gCLoMNxv22s3KCY0OlbSXkaEzvcoPcd
 X6IQ1lXFcJCh3T4Bi1rc12GhOkehTxYd2i8LAdlsxEUnuVfsuuDcTJciFbryKamYRVPiUAM8
 zDfq6+M8WTalcGUbw5qDEWe6MicEX2A/dl4urSrTq104z2wnqDjJ2VTB+UHsuwLd5IMlmPVU
 crbXzPAIFp402qXTvRnAXRMkmdUHDXzNZMNOzz8uUSz8w1LYtArgIJo1K16qiwWBB/m51zQW
 87Db/jkry2vi2N/WjO53h0IRY1NDd/3JzQF05v4SsjE2axSpool/WhVU0X4VuiCnZEJf/+IU
 pjgxBS0YKTa6Ct5Q1KMb+a2qfztQo6mJpPJ61ss5FqIq/eC8UF5ppKYt0GKeziLW08pTpX
X-Talos-CUID: =?us-ascii?q?9a23=3AYgpbKGhlcydR1WPOHrbHwSRQmDJuSS2MyGrTIBK?=
 =?us-ascii?q?EBUVtcZyOT3LB6KZuqp87?=
X-Talos-MUID: 9a23:bslrqwvRAQ8/Kbl3+c2nn2g4Dp1M+auXJm8vnsgp4eLDGnNtJGLI
X-IronPort-AV: E=Sophos;i="6.03,250,1694750400"; 
   d="scan'208";a="125820453"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=acc3tksCMCiFt+uLBayGCdSTHWSG1rJllpQcp6flghuYMAOkUjTVrd4CYDixUSsj/GflmQ6EjwB09wLfz1A2sio2kKqTN7chGMFdiTYoGdyy9mRAkMHDlbFGZNNZjzKQGWwZH+ceTwacUn5vuH/BnkNpzKrbBuOqEedZysc7eTitakt1kgkmJ1wqXl0N2R0EhPNq2ElNL4pfr3yW8bmB8vMLA2s/1pLDtDqlspD5ARuRKDRwvGIY+zj6ZmQoj0FUz7AQ+Tp0cOgcOc0m4dM3M9zP2vqAKek9A40viTKbiGhUP/UJGjrNoM+XACRcrM+kKdTgMpaN+imSKpRyuQA4ug==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=GNCFQPV10RxB9LnKmmM1SlcJ3j9u9u2eVdfyiig0OkQ=;
 b=SPo41nnUl/v/MlAe/BhWzlhCIxwhqXYC2qK1SiygmDq0YWW2uCRFH3PoNDxyi20qx5nbGMmTorUZ96VRpdDsZiaNSoc2vXou7aLVjDl1WcJ2kZeh7VAznEDA7+LisJ1kk7n4CWlr1F3xg2dn750Zay3+v8sioSOr+bi7CfvZzOV5//+59YiHQJSBVH3tW5h6+y2Rj0hBWVN/hvO7s5Pe+4HQPGin8b+KVaQ49KHD6MN9fmxlrtFYu3kLOJGoXjKdhSchSyQsQVyy0YsInPCi+b0i7ePZPxN2FJgOjoxIW7W5aK91x9NoaucF4kCt+VlU3rr8PLBaffvc2mt1Sy0psA==
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=GNCFQPV10RxB9LnKmmM1SlcJ3j9u9u2eVdfyiig0OkQ=;
 b=EsWdKFCHffVsc2Q9K+L4dVY7Vyq/W/kng6bnRxDHVZEfcWYCWg7C/6HEER6BMOfN6evTtODDEQAwqxjOGC/d9hpTi7svoNcGLU1Keloyj/bHUf5vDeB4+UH08u8gfOHNMz7Uo+zbxQWQohimnmlvNorFWuJdWBUR3r0/S0N99Js=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Wed, 25 Oct 2023 11:11: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>, Wei Liu <wl@xen.org>
Subject: Re: [PATCH] x86/vPIT: check/bound values loaded from state save
 record
Message-ID: <ZTjbygYgCYTNtc-W@macbook>
References: <f83213df-2433-ec51-814c-436ce5ea4967@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <f83213df-2433-ec51-814c-436ce5ea4967@suse.com>
X-ClientProxiedBy: LO4P123CA0059.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:153::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_|SJ0PR03MB6731:EE_
X-MS-Office365-Filtering-Correlation-Id: 6d9acf0f-41a7-4876-cba6-08dbd53a6785
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:
	OYTGvysRg9apnKljTQOoEGpngZc7Jf7fagCFYPoSLMktWNpZCBjbQbcneUFHvpBbMybFLC7OndZK4Q8oxYz3nuELHMmUzP4VIaXhRHooHQL7KnnmO9mITHBUNR63gz9aqjpeWKV68QdabyPW8gxuEBRDLFumF+7QV6W0noKsTUAcqEYXAvvwqtQmKqJCUfVRnvT0CCuUKTcQUY1pRCgMFyAMDz05eS1u9y8X8dl9p0IqGQSCwxXS9TW22lNA33l+2A9kuL1k0C6uiLJYXhzuMUArux+e63h/Q7oHRuPQ5qVPoYqKX7UX81ob2lt3Dfp6APXevyJ0Hse4bg1aeU6JkHCvdRnFu1Hes8ab9ym/nx5cwLYUSUzGJ3VddWp41rfM5M5T/VPNQ2xIehOa28K44XFmCL/vqNtfPb/3N8sGPyfxRLDy2mw9IGPpu+K7ojbpw0hVMmYE6xvCD1+nJ46rSPc2VrBE4fv1+bDMtEE+BVafJjcKISsMj/8ctWa8ePX0N09MEYx0Po8EleCh2En62fRIrgiaKKiUhEEnNjEAvN9/EBcOrRkgIwbi41bpGXQt
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)(346002)(366004)(136003)(376002)(230922051799003)(186009)(451199024)(1800799009)(64100799003)(6916009)(2906002)(478600001)(5660300002)(85182001)(8936002)(8676002)(4326008)(41300700001)(66476007)(66556008)(66946007)(33716001)(6666004)(6486002)(86362001)(6512007)(9686003)(6506007)(26005)(82960400001)(316002)(38100700002)(83380400001)(54906003);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?QnZjaGVyT2kzbE1kaDBnSlFZRCthNDZvNXpyRGFtWVVpbDlYTmRFWlJQTjdm?=
 =?utf-8?B?bDZTYWFqdi9QSzltMzR2ZHliVHRUQ1J2Uk8zdEwrWnY1blpBM1pvK0hVWGdK?=
 =?utf-8?B?OHpEMy9BZEhZZm8wMXFVYXBoU1drZGVVSjc1N015V0lpSVdEOGdsS2ZScnhz?=
 =?utf-8?B?WnVoZHVNRnBPY05kQW9jZ0hkbXpJQlJFdHBJd1lKWC9YbHFBbTYwdTFYdEtx?=
 =?utf-8?B?ZHViTjMvR2JETzFHU0ZaUU9ReWFCN1kzaDhpalBuRWFKL3RIY0h5TjlMSVFn?=
 =?utf-8?B?L1FVYUIxMndxMFVBTmtnM2J6NUhNNjhxdVRmUTI5ZlNzQnRjSEh5ZERnSEZk?=
 =?utf-8?B?RHBIYzlheDdHcnhIbjI5UUFyRjJMbldPSjJCWlcxWXc3VWxBVDZZendGKzV2?=
 =?utf-8?B?N1NxQUNDYU9hN29Hb2R0VFRNZlNUSmF4YVpPb2V6SW5HRGxwL0tIMDRkZFpE?=
 =?utf-8?B?SWUzWjJCT1BWUzFtaEN1YUhXUmZ6OUhnWWl6RG5ON1ZSYWRQREhQeTFLT1p0?=
 =?utf-8?B?R29RY1VGdlpSdndDQXBIVHJyTzBuWmpPS2dJOFFlTm04Vnk1WE5PNjltU3B1?=
 =?utf-8?B?OGxsQTZ4cFZCeGZGeG5CYmZPb2xJUWlnSk05S2ZjNE1RREhmalQ0K3RDa0Zm?=
 =?utf-8?B?RTg2M0VWUWRFMFlUZ1NOeDRybERNbk1vV0NpeVc4ejV0aCtvV3RrUGtURFVx?=
 =?utf-8?B?TC9mVit2T1YreDFQYW5Hczh6TnBBY2JWdW5VdTl0Yk9UU1dTUDg1S1pHZHlB?=
 =?utf-8?B?TEpocHBLZXVOemRjd2pIcGN0ODM0TWo3MzlPbDA3YVdCcHA1emdxNnRXUW1C?=
 =?utf-8?B?KysrM09vNDdIcXpzWXBHTXR3aW1GM0NNTUxkTjh3N1VuY3hRWUlLS3BEWnox?=
 =?utf-8?B?VHZXdENGbHE3RzRUNklRWG1YMG9Eckd1YStSS3U0MGZhU3lLUkRLUnhrWGdj?=
 =?utf-8?B?ekgvVnpJb3JLOHJYU0JyS2xtSUg2WUpLUXozWDhTRmdIbmNkTVJGOFZWUXdp?=
 =?utf-8?B?djhzczhVNjFnNDdYU2RQeGFmMlpCR3BhNG55NUpqMHloais1eTVpSW1rbnpW?=
 =?utf-8?B?Y1VSSFRHSFk3VklZZDJ1d2ExTjNGMVdJekRlVVVBeDJHVjYzNWk1QVVhREM2?=
 =?utf-8?B?NktyNGdYQ2ttLzQ3WUsyaENmczdnUTliZFFsdEo2NmJMYnZjQmRkUElZV2FD?=
 =?utf-8?B?V0JPSWJHQTJzdDM4N3hTUEszMjhHbHQ3OGVlZy9iUUZxUEowNjVzQzJCbEox?=
 =?utf-8?B?VDlCVWMyYmtGTzF6YUIzb2RqVzdKSWJoQ1k1ZThNVmVwK0Z2ZjB1cHZjODE1?=
 =?utf-8?B?Sm1FWnpCV1hkZGxDM0hLRnZiVE8wQjVkeG5ObllhTHBQSStwanZHbmFuQmZP?=
 =?utf-8?B?QWhiYS82WEdUT1J5S1BONkc2MU5rN2N6ZmVxY1REUFJhMEt6WDUwcndVNkZU?=
 =?utf-8?B?VFdFaHR5VlhwTCtjZ0daK2tLYXlPZXZ0RGlOY3ZMNjUzdnVuVHVIdHJhd1dQ?=
 =?utf-8?B?aHVGSlZiT2c3OE5STkp4L01zV2Rrb2d5eG90blppUGhPakRaOUJtM0k1Mko0?=
 =?utf-8?B?cWk5Vk1JNWxUMlo0S1paSktmV0ttS2tCYzMwVnFhLzBTeDB6djFTSmt0bGRD?=
 =?utf-8?B?NEo1bGhwbk56TnFpeVJlOUJIeXQ2WGxKZkdRSkk4ZmlLNU1uRHpBV3FKVHJk?=
 =?utf-8?B?QXBwYWk1dTBTamIyWEdZL0N3ejhkK1drMktCWnluT2s3dExqTllwckwyRFF6?=
 =?utf-8?B?OTR0N0VQWWZUdUNKeUhkTi9aQ3dmWGY2WDNBdStVclNROHdJQ0VqMTNwZTVD?=
 =?utf-8?B?S1RFTFE0eGVIenBLTEI2Sm5hYkJ4M1NaN1VXQ0Nvb1djKy9hNjZPb3MxdHcx?=
 =?utf-8?B?cmVYOWcrR25lVG5CYlQ5cVorQXNHVXFVTDlqMEVxbEJIQXFIR0F0WFF3eTFh?=
 =?utf-8?B?VHlGSnllYTdVWGlLbC9MUGJjTG9xejNhZ1pZaTl5NWFiY29uMWdud1pWSnNx?=
 =?utf-8?B?S1dtRVQzTDZ5MEE5NUs0Tnc2eTk4Ykw4R0xJTW1VU0YzVDllaHJQdWptbUdY?=
 =?utf-8?B?NTFXTTYvZ1ZvY0tyMUxUdlVkUmFtTXlRV3NtSGFnbzN4WGpJalpuSmh0MlZ6?=
 =?utf-8?B?Wm5lamZFTVIzSnpnTktSYnpnZCtxaU4vZ3loWndyd3JGdmc2SDY4U1d2a2I4?=
 =?utf-8?B?MVE9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	tqsbfpo7HNRiJuFTzsqRU70bHFIjflWLAw/Jxx7n7L4ztyX2SPHxpo1cjbXyUZSp2hSbKmbECM/Qu/YQqrnEK35OwlOLD857Ayssw37mAOC2WdYGc06FTBnBmtxU16yXhA6fh3aXEFFUKLrOwHR4SdwO5PfLKTI1FqJiQn5AgPHckhNQ8a2VvKxkVEW7EoawBblFH1AkxiO6G/omdfS1o9jb4Uxxyr5hfBVXw9iJmxrivXKiGDytEGNLuiilZx9zMWnkriYxtyUQXjB3Q49wAlYRB4wIslCbHvOt9zYoJcWb8p+Cwruj2MxA0O0x0MI/Ez9dMgdALlrF9ajD7Lfs9adMhkBh11patbIdiqXyuvBQMb4rwt8Dhn+24h0i7TG97aFQB7ZXMY0G5toJWQ7d32rq9bGq/sP0ZFuZg7Vpl1ai79Uo/6/T8hujk8d2WyHNMsepIeVWaaKOFobmbvH0CoHsaXT6vSwWaGG1Jgs4j/2Mgh+U+sMtOyvlKEiKZ60uh3/zlu+VEr05FJdRNdGISZp3KO+LiLPCstH3qgBqyFRcOoiZdrAD7mSVzHluo/01gicEBRF434EfhWxUinC2S78fjwxQ70Wgu4lfF1Ktm4I+s7/D4V5Uhk80l1hhNpxsbhDeyWCL0C9amwGmjZb1jbjjnKE9sfODoxx6JaebCAUI/r356CVQiGoREAY57zKlafFFF3Cfm4ncRn3QVdiZaf5oJ1ta0ukBEZpSmJEDQS5s0sZhBcYYLNDA9EIHVOzMfx0IrCucAcum+SO6YbFq2R0j1DxJv0ijYmWHpj2AmHA5/I5PLM8DO0M6TT0/Q70D7RlALIinSyKIjO/4AnjuJA==
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 6d9acf0f-41a7-4876-cba6-08dbd53a6785
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Oct 2023 09:11:42.7568
 (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: LUek+tJD3XRTQtZByI/B+3F9OmyprMWAQak1rOyAsrzOUqk9we356Le9d7XjuXeKXaefM0bcEktx6uw/2iRbfg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR03MB6731

On Thu, May 11, 2023 at 01:50:05PM +0200, Jan Beulich wrote:
> In particular pit_latch_status() and speaker_ioport_read() perform
> calculations which assume in-bounds values. Several of the state save
> record fields can hold wider ranges, though.
> 
> Note that ->gate should only be possible to be zero for channel 2;
> enforce that as well.
> 
> Adjust pit_reset()'s writing of ->mode as well, to not unduly affect
> the value pit_latch_status() may calculate. The chosen mode of 7 is
> still one which cannot be established by writing the control word.
> 
> Signed-off-by: Jan Beulich <jbeulich@suse.com>
> ---
> Of course an alternative would be to simply reject state save records
> with out of bounds values.

I've been taking a look at how we load other records, and
lapic_load_hidden() for example will return error when invalid values
are found.

IMO that seems safer, I think there's a risk in the adjustments
done below to also lead to not safe combinations of fields.

So we either reject the state and return an error, or we silently
reject and leave the PIT in the reset state.

Unless there's a reason we need to handle such bogus state.

> --- a/xen/arch/x86/emul-i8254.c
> +++ b/xen/arch/x86/emul-i8254.c
> @@ -47,6 +47,7 @@
>  #define RW_STATE_MSB 2
>  #define RW_STATE_WORD0 3
>  #define RW_STATE_WORD1 4
> +#define RW_STATE_NUM 5
>  
>  static int cf_check handle_pit_io(
>      int dir, unsigned int port, unsigned int bytes, uint32_t *val);
> @@ -426,6 +427,33 @@ static int cf_check pit_load(struct doma
>      }
>      
>      /*
> +     * Convert loaded values to be within valid range, for them to represent
> +     * actually reachable state.  Uses of some of the values elsewhere assume
> +     * this is the case.
> +     */
> +    for ( i = 0; i < ARRAY_SIZE(pit->hw.channels); ++i )
> +    {
> +        struct hvm_hw_pit_channel *ch = &pit->hw.channels[i];
> +
> +        /* pit_load_count() will convert 0 suitably back to 0x10000. */
> +        ch->count &= 0xffff;

Might be helpful to have this in a define, as it's also used by
pit_get_count().

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Wed Oct 25 09:21:53 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 09:21:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622744.969844 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qva5B-000224-AN; Wed, 25 Oct 2023 09:21:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622744.969844; Wed, 25 Oct 2023 09:21: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 1qva5B-00021x-7O; Wed, 25 Oct 2023 09:21:45 +0000
Received: by outflank-mailman (input) for mailman id 622744;
 Wed, 25 Oct 2023 09:21: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=XAhw=GH=amd.com=Michal.Orzel@srs-se1.protection.inumbo.net>)
 id 1qva59-00021r-Fi
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 09:21:43 +0000
Received: from NAM02-BN1-obe.outbound.protection.outlook.com
 (mail-bn1nam02on20614.outbound.protection.outlook.com
 [2a01:111:f400:7eb2::614])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id e77c8b83-7317-11ee-9b0e-b553b5be7939;
 Wed, 25 Oct 2023 11:21:41 +0200 (CEST)
Received: from MW4PR03CA0028.namprd03.prod.outlook.com (2603:10b6:303:8f::33)
 by DM6PR12MB4138.namprd12.prod.outlook.com (2603:10b6:5:220::21) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.26; Wed, 25 Oct
 2023 09:21:37 +0000
Received: from CO1PEPF000044FB.namprd21.prod.outlook.com
 (2603:10b6:303:8f:cafe::85) by MW4PR03CA0028.outlook.office365.com
 (2603:10b6:303:8f::33) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.34 via Frontend
 Transport; Wed, 25 Oct 2023 09:21:37 +0000
Received: from SATLEXMB04.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.6954.0 via Frontend Transport; Wed, 25 Oct 2023 09:21: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; Wed, 25 Oct
 2023 04:21: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; Wed, 25 Oct
 2023 04:21:36 -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, 25 Oct 2023 04:21: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: e77c8b83-7317-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=CydTf7+zTKxFF4uaBEYSpkmxTRYA/cgph2sSr0jKz4ISc2iAwSdiYhb3HL5bUMcfP0q4km8u3SKHup2SKxqkGC40agjw07gmPdMejpGRk8+KBNk6L6A8RUsZiZcIG6hyTQM9bQG4VTKJWDgH13T4g14CAfFTSt+N6WnmFbx7cGd6wyJfKEqI0Vew2B5nRo2O1VdD1zWdWbpbjMr2roXCflr87dWhqpUVCWOucY8ic9ftbzUoNUdm0pmWJNgR/JjYjNdAaRtAfKbM7Fc6gFsHypCy0j27thdAbVeLOk5JRCLRwJbmsmcfnlNcGI2dcl2m8QIwa6CEvCvW2dG3e1diNw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=/UiioaXloc+8FEJy+zcjhibtF1PbYvv06pqt/tf7RQY=;
 b=brChlVtaY+5yxf89lSzQmfKn9WtbowMn9xoD0Fk402FT2WH29vka2IZfeDu3I4Tj0Vie9wUx5/ydRNSDCoP29ctz6FIOpGNbZbkCTH4lnm5nGC/5nMtUTwjKj2bsqOjeO5SI3XxX9BymFATI4C7JzniQTvx9M2O/X5vkA6HLwHBnOs29+RIXoaechzN8PfRrAllGbyVf4KjROKxGWq0LIfX/cUvD6ENFmTh2Ve2oYHSd2r7uUaQvDy+mmx+VE1B4a22MuwaSAJAJ3jPZUQX6pcXR/cVIDC2u9ytL39JIwZEx3bG3lTo8C/QgSJzbHO3DudcGby/hHeC7yLNlntDDxQ==
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=/UiioaXloc+8FEJy+zcjhibtF1PbYvv06pqt/tf7RQY=;
 b=Byy9WoN4AWb/z/AuBlD9zTOVLei2sWOLCYc8YuL8uuvIuly273QEL2KBn5XHO02C7PGLtXwhrbxvzebPuAqk4L5eBjvpC4+Qzyp3xOPDbisPI8gJtfufoClwd8MCVWah1S6bbBrDXm6Uq4NO3sRDgTU3rfgTtGUmpjg+dmdfFWs=
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: <14ab687e-2d2b-40a4-9f79-3f547bba286c@amd.com>
Date: Wed, 25 Oct 2023 11:21:29 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [for-4.19][PATCH] build: Allow setting KBUILD_DEFCONFIG in the
 environment
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: <20231025082834.31680-1-michal.orzel@amd.com>
 <9e646df5-a9de-545a-e827-951a161c935f@suse.com>
From: Michal Orzel <michal.orzel@amd.com>
In-Reply-To: <9e646df5-a9de-545a-e827-951a161c935f@suse.com>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 7bit
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: CO1PEPF000044FB:EE_|DM6PR12MB4138:EE_
X-MS-Office365-Filtering-Correlation-Id: bbcab853-5394-42b9-dad4-08dbd53bca0b
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	tRSlSvx63lqdvmBtjYugjaoC+uxMNmJPq4tw0jV9DhNIfrbxFcjoL3Z/bQwRHg0TGNgt/RezL0BF2KBQE7CsmPWnRThMTJ9g0qSqy6ZIhnp2qgxwKf9K6qagWMMLQevucICWg6FGDt2b8sL8cIiEwmQEJZXI/sm/vE4fkVOfS+RqssLPhXvv/3iFA3Ylyhe//zSu/NXnww+HNIiZq2Gz1ehhqlQgkMX/x16/xujLULG+8A61aVP9EmydFv0KeIJjXL14ytbmLkPBf0NHBBcLQ0hLPYeLx/yeQIPwA8I4g1bg3sUZWpAbz+Yp508ZT9LbQE1lzi38o7hRMlxVhBYTInzqrGz17uTKR0cqYLskgQ95Yc5s/MINZaCEYT2u6ABdQ+dLEmUOOoG8j2aXq8vMs6QZ3IcCg5+Ddnkc6gQeKxvya99cdDR87zyq738kY1XkDh53PwhHn7ac4LKK6Hju0wjk84+j0rMciVv3/rQtr+TMLmWwx+DspOiJPj5l1rTeJ26ePQrc6BAfyZVr07URzJBUbVprfwwJh1AeidCv+PYCBELqG2i0RIgo6AzF+j5coowiKZ17VzIEwoxSc+5poRTJEcFc8/ZWdyNX12lQjjiYQGsavUd0PCfmxdCoqzP4DFRKvsXe+uQtYR+tw1jJ+5VkfiugMMGCw4Ffbv+fJsSPcmaSJyvge1ysvwLItUL/eUZrU5fU182oDhvoISrKdFHL4y7M+dFPPvhORx9duJUTg2BgB8flra9M66RHuA52iLfo8pBSZdkiOGeQU89fEZqKcaxAhIbbvGoaZjLsZk0=
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)(230922051799003)(451199024)(1800799009)(82310400011)(186009)(64100799003)(46966006)(40470700004)(36840700001)(31686004)(6916009)(16576012)(2906002)(40460700003)(36756003)(5660300002)(6666004)(44832011)(8676002)(40480700001)(8936002)(4326008)(41300700001)(70206006)(82740400003)(54906003)(86362001)(478600001)(70586007)(356005)(53546011)(2616005)(426003)(31696002)(26005)(81166007)(336012)(316002)(36860700001)(47076005)(83380400001)(43740500002)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Oct 2023 09:21:37.0899
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: bbcab853-5394-42b9-dad4-08dbd53bca0b
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:
	CO1PEPF000044FB.namprd21.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR12MB4138

Hi,

On 25/10/2023 11:10, Jan Beulich wrote:
> 
> 
> On 25.10.2023 10:28, Michal Orzel wrote:
>> At the moment, in order to use a different defconfig target than default,
>> one needs to specify KBUILD_DEFCONFIG=<target> on the command line.
>> Switch to weak assignment, so that it can be also obtained from
>> environment similar to other KCONFIG/KBUILD variables.
>>
>> This change will activate the use of KBUILD_DEFCONFIG variable in CI
>> build jobs that so far had no effect.
> 
> I'm certainly okay with the change, but the above sentence looks misleading
> to me: Yes, the envvar was ignored so far, but isn't it the case that the
> envvar as specified in CI matches what Makefile set it to (taking into
> account that for RISC-V riscv64_defconfig aliases tiny64_defconfig), and
> hence the specifications in build.yaml could be dropped (until such time
> where truly an override was intended)?
Well, today riscv64_defconfig matches tiny64_defconfig but it can change. Otherwise, why
would we need to have 2 identical files? Looking at the latest full build series from Oleksi,
only the tiny64_defconfig file gets updated which would be the clear indication that what is
specified in the CI matches the author's expectation.

Also, I never mentioned that this change fixes something. I just wrote that it gives a meaning
to a variable that so far had no effect.

~Michal


From xen-devel-bounces@lists.xenproject.org Wed Oct 25 09:27:15 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 09:27:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622748.969853 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvaAI-0003iM-TS; Wed, 25 Oct 2023 09:27:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622748.969853; Wed, 25 Oct 2023 09:27: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 1qvaAI-0003iF-Qo; Wed, 25 Oct 2023 09:27:02 +0000
Received: by outflank-mailman (input) for mailman id 622748;
 Wed, 25 Oct 2023 09:27: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=e1rq=GH=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qvaAH-0003i7-T4
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 09:27:01 +0000
Received: from EUR02-AM0-obe.outbound.protection.outlook.com
 (mail-am0eur02on20629.outbound.protection.outlook.com
 [2a01:111:f400:fe13::629])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id a5ea7d7c-7318-11ee-9b0e-b553b5be7939;
 Wed, 25 Oct 2023 11:26:59 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DB9PR04MB8298.eurprd04.prod.outlook.com (2603:10a6:10:248::14)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.14; Wed, 25 Oct
 2023 09:26:57 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6933.011; Wed, 25 Oct 2023
 09:26: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: a5ea7d7c-7318-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=bWrqX8MsGN/6svO4Wh2Kx9vw5qjiKc0qlA7jtqfRUxIalAzzmqFOrGcCKPZyraFMbn7m1NovHqKgV+u0bXQgfR21V8A2W2PGV/n4mtjQ+xrfe98xfqDzVgJzr2e+nG5GHjkd46pilXE2w+qWe/mNnJxjY4RGyFygEmOkYY8IFJQ686UeRGydh8drqtfd3AW+aNQSINkGpuTmJJO0tfLsfgfBZ3fgWhWZNKfBd7kK3s27lL85G4UkRiAREcZ7wGDwvWmdafk9jJYl6ZzOOH5I0FgF1vjhFXJ2BxWAWXz4Yamq83Q2zken22MhPUYgs0cTM0KNmg8vgx5GGE9rqZTqeQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=p3MRZQFvSY8VxcVapiB7E3iRoHwBIWAmuF4KdhCGKNQ=;
 b=g04QNoAPw5anvxGTzwmKvvAkyaHGfGsXjfgeMEyfoq9cFKa0xumAIYWCZq3CX+/N/iA7CBO2ISJN9p4rnbcgcRoDHodV7Qn0x7Ty/HUY5WWLaSbS2OOS55pT2L234n/2tkvGv8116Dc5g7rDr0LGD2Y1ZxI1XMBaMp4DGSXhizh53XOYhXGfssxV+5b3OU5R4/f0izr58L3yU00Ze2w2+KhdDh2F+G9S+h+IP4wnnD0WT8xZYOGUzUqMBxP30y8dZgqk2aujZ5C7rWdZBiCzRR+f7VlEn7gO9bWS02hek4LBsHHlLduY7nG63Yt4ir7FvSb8O70R6KLkWZLnaS7D/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=p3MRZQFvSY8VxcVapiB7E3iRoHwBIWAmuF4KdhCGKNQ=;
 b=U8+bE2Z+76Wd5AYQnXEIx68tVBakV8PtZG/5r+s8fdHLtkHeWNddIbpsohe83CeYr/ZEo6cOxkZ+rDRJbQpVYekCzSUB/XRQV/b3xOxGFAJJgoa2VJ+mVCU3cAjTmVqJTH2EhlVDBQtZA0PGZLXHOfG9DRUFPVVoMT3H0NaSGGyJIkhUBBQcev/5bkqYapNWU9wAdev/Uz4wUVbf8SNOW7egfgBUE8CAT3bAspHcKCC8Sdmqj3Af/P7xueB/xsCUt6+cbpaEZUQAImzDw1R9QNtL+kM6lSpHJ8fUFHrJkx1x2H2E5LQ9oZIUrmwLYJyxHqSBbE7kFeMjEqVh9as7Eg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <4cb8a480-a587-22cc-2f11-fd9d6cc8c1d3@suse.com>
Date: Wed, 25 Oct 2023 11:26:55 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [for-4.19][PATCH] build: Allow setting KBUILD_DEFCONFIG in the
 environment
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: <20231025082834.31680-1-michal.orzel@amd.com>
 <9e646df5-a9de-545a-e827-951a161c935f@suse.com>
 <14ab687e-2d2b-40a4-9f79-3f547bba286c@amd.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <14ab687e-2d2b-40a4-9f79-3f547bba286c@amd.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0339.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:ea::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_|DB9PR04MB8298:EE_
X-MS-Office365-Filtering-Correlation-Id: b55a5ff7-e8a0-4c99-72c7-08dbd53c88d6
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	/h0yYH/EJCcIpSNExW3J3+ydkE4/Y6qmIksowHayS5mNji3gfmOJmB8wyZO+AwQbIZenupeufq4NZwlN+82hzqslMo+jYw38ZTwjW+2IFLrfmhGIPM5XaGj0882rQSTABLf667BYHPVvDo3/pbTzAlsRpxYFMELj+Orpt+X6RAR83ZENrEGw2I2H1w540WS36vXYaaf0Yx9w0+JLrogua+IUFbhbhMzuC+k/J9Yys3AYkTRluKo1mncM/5xdG9otzA8bx8ONROWGU8JW7cG+opvzEnr9RqBDHz6zIbbCM96Wb6P5ZLyFPX2mLWd9KeARxmWXVRVSwO0L/sj5Bbb0lq0pH8NgolNdiGd6jZoi35GUsHZ8BZpYlKhtTEKuJska/gtURxvJlA9Rvi9QW5j/1tYggJxBt/GEtMnby2vA3F307YMYKng3gyXiD7H873BorxJgsR+DgoLrqL06OgZgH2xRkNVPVBBpC9L7r5QEAr7xeDYMNdQwmIzSaBG7wc3Rc4rtJT80lD7muHJNz8teVwoESOqQevAayrPOMi9kz9zPoKcWNAQETSxRyiS84SXLG0D77ALrGmQY8NdWQ2811csbmdAcVIJe0QzMu0e5WYSdUfFdQps+PHwRQrYmuwJyrKCvopjctxIFxCDS9hS7EA==
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)(39860400002)(366004)(136003)(230922051799003)(451199024)(1800799009)(186009)(64100799003)(8936002)(41300700001)(4326008)(8676002)(2906002)(5660300002)(83380400001)(53546011)(6512007)(6506007)(36756003)(31696002)(38100700002)(86362001)(31686004)(2616005)(26005)(478600001)(316002)(6486002)(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?WVYvTTdQL1BIMWF1amdNdmZIRjlmdjVaWWh4VXl4dVhDMWwvcWYwT2JnMjVh?=
 =?utf-8?B?Y0tjY2dXS3hXdkh6TXd5VGFuVGI2QXBZSEcvZjUrWDl5eGxQNldEWXp2NnBK?=
 =?utf-8?B?QmZLQkhUclFOYUxUNkRlZldUQ0MyM2xPRE9yeDRWM3JBZ2c1WDRPbEJ6NmVC?=
 =?utf-8?B?c0hNUVV3QUh1Mjl0eXg5ZWJRY2pzQk5ZQnorY3hNYWV6UTdIaEtVREM0RGVr?=
 =?utf-8?B?eVlTNGdBUkxEQnlYVFVNVGQvajUzTGxGWWtYS3F1aFFlS0l6WmVzanpSUitk?=
 =?utf-8?B?ZHQzRjVMY2NvL1FIQXpRUjlrWG9PRm1nYVpRQXhKYnZmdEt4aXI5S1hERzlw?=
 =?utf-8?B?L0JQTWhHVk16Q3h0MUFuK21sZ3V3dXJHbmxIdDA3a2RlenlzMFlJZUM0OEF3?=
 =?utf-8?B?Y2hFZkd6WDV6ci8xa1FLYU5xcFVQYnFBSjlKTkVwZWIvSkNyU09vVi9EUlkx?=
 =?utf-8?B?cVhyOVpJL1YzUml3RTBsbWtINWNLUm9qT1VyTWxhNzFaK1FEWHgxbGdQWnBG?=
 =?utf-8?B?WjFlVWJ2Wmw2RkxzT1Q1akdHY1EreSsydlcxZ3hPeGFsZlVhMUh0bmNlaTFY?=
 =?utf-8?B?QzQrTTZFemdmYUcrQjBJWUZ5N2FzdjJkNkU1WE01SFdHWnlPUXk1QmhyNm9l?=
 =?utf-8?B?NVNNaUNVN0s3K3hPYzZNNHRmM240VDNuSHZIUGFQRFR3ejhsYVZyNHdSa3Vn?=
 =?utf-8?B?Q01uRFNybUp1bUR5amhLQU5DYytRWlVBVmptN21WUkZEYUQvK01MT0NsN2JH?=
 =?utf-8?B?UEFkc0pNSzVzNjNRRzVEQXduV2ZUb0FMc1VDOEEwMkZrZXpvdlBudVh5eEEw?=
 =?utf-8?B?NHo2a3NxQ3ExRmtVajVYT2tpWW54d2d5ZHlBM3J4LzE2YlBreTJvaTNYQmxu?=
 =?utf-8?B?dTV4c3E5L0RwK0ZsYjY0aU1WZGk1aGtHLzEwQ0hjZjJodnQvRjB0S3VyeW4x?=
 =?utf-8?B?QUljK2RhTlRBU2N5Z1Q3bEJITG5WMXBCTjNUY1JoeXEvYU1UWXlvc2tIc09k?=
 =?utf-8?B?YXNFR0R5VzdEUE9vNUIvQ0xqRVJLTkQ1N1ZldEhDWHlQZ1hDOHRxbzhOODVr?=
 =?utf-8?B?MzMrWjlxNEY3VkMrdG5HWk0zZklkSW5pY1ZLOGV6MEhFMnBVc1lwamtQSms2?=
 =?utf-8?B?QjVYSFRaemhMT2lSdzhnSlZoaGRWYU91TEMyWGVuYklueGFkSlJ2dnVqcmRz?=
 =?utf-8?B?UGl3UkdkQ1diaTg1OVBMODJWYXl4K1FRMDV6OEZCRHlRek5vQ0RoV2JGTitT?=
 =?utf-8?B?QnQrenR6NVZsbVFFdlFKdE1hZmFsQ1ZMN0w4R1laN2JlNmJML1RwcWRKWll5?=
 =?utf-8?B?TCtDdTViejJxakVtclpnS3dHMXJEYnlidkVIVDFXb1NEaWdJUm4vcU5LcVFM?=
 =?utf-8?B?dmptQUZUSGxSanp6ZUVqcnlwNHk4VGpaNlk3VmRrWHc1RHhIZ0VwaGZyeTBm?=
 =?utf-8?B?aGRNR3ExOFZZQm9IZU53SmIzeGhDeFovRVFlVm9WNHAyYjRwcXhuM2dqdW0v?=
 =?utf-8?B?dHhtQndTNE81b0gzeWdxTk9QRm1kNVI3ZzhHenV0NXdVVVpmTVRzWE40UFRP?=
 =?utf-8?B?bTVrU3c4VEJBejFKbHF0cEV1aVdWbnpHN2lhU1lGWkgwK2dSaEJtQUhIK2hI?=
 =?utf-8?B?U3Zrci9aeTdqdDNaZk40Y2kzR1BsQ29ic0YwWDJwSWdyMnAvU3pGQnRmS3dk?=
 =?utf-8?B?eE9xM25DSkpNZTFJTXFFZHF1TzE4bFpPTmh4cFhjZTVRUkNXdnhNNDc2d3d2?=
 =?utf-8?B?dFRkdVNhV2dyNjZ5TEp3bDQ0bzZIdFJkc1ZiK2NlRFNrTGdkRHBJRnFaWDZM?=
 =?utf-8?B?SHpIWGo4YTNacFc5NEFPRjRWc1lERWUzWHQxcWdUUytvd21FWnF2aEs3cHBT?=
 =?utf-8?B?aHEwUldNb1BoYkhBV2hkWVpMQ1FMZlFkbkRVSERHbE1keGhoQWNCRnl0aHdn?=
 =?utf-8?B?NUhhTDFtdUNsOWJ5SktaYnRlb1lJSFlteXRYd3VqSk91am1FdFkzcW1Tbk9L?=
 =?utf-8?B?RXFjb1Y5a0hJYkVtb25DbzdEZlk4WWlZbTdNMlQvb2s3dHoycDB1YjU2TU1L?=
 =?utf-8?B?K2x5cjNuRkFtUkRYOVp5aGVBcll5TDNaaHZDcUM3TTdlckxzYTVmYjN1WXZ5?=
 =?utf-8?Q?B7zOvx7xi19PJE9B91tDmfNzo?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: b55a5ff7-e8a0-4c99-72c7-08dbd53c88d6
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Oct 2023 09:26:57.4970
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 48D8C7EieZrgkJLW2OZg3ffIkuw3i9Q8w31quuIg+Z3hPSENg8hvdxDj0J+bgjAZemqJrSMjD3uk3mo2fRR8+w==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR04MB8298

On 25.10.2023 11:21, Michal Orzel wrote:
> On 25/10/2023 11:10, Jan Beulich wrote:
>> On 25.10.2023 10:28, Michal Orzel wrote:
>>> At the moment, in order to use a different defconfig target than default,
>>> one needs to specify KBUILD_DEFCONFIG=<target> on the command line.
>>> Switch to weak assignment, so that it can be also obtained from
>>> environment similar to other KCONFIG/KBUILD variables.
>>>
>>> This change will activate the use of KBUILD_DEFCONFIG variable in CI
>>> build jobs that so far had no effect.
>>
>> I'm certainly okay with the change, but the above sentence looks misleading
>> to me: Yes, the envvar was ignored so far, but isn't it the case that the
>> envvar as specified in CI matches what Makefile set it to (taking into
>> account that for RISC-V riscv64_defconfig aliases tiny64_defconfig), and
>> hence the specifications in build.yaml could be dropped (until such time
>> where truly an override was intended)?
> Well, today riscv64_defconfig matches tiny64_defconfig but it can change. Otherwise, why
> would we need to have 2 identical files? Looking at the latest full build series from Oleksi,
> only the tiny64_defconfig file gets updated which would be the clear indication that what is
> specified in the CI matches the author's expectation.
> 
> Also, I never mentioned that this change fixes something. I just wrote that it gives a meaning
> to a variable that so far had no effect.

Well, sure, but if you e.g. said "... that so far would have had no effect
if they didn't match the default anyway", things would have been unambiguous.

Jan


From xen-devel-bounces@lists.xenproject.org Wed Oct 25 09:36:22 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 09:36:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622759.969864 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvaJD-0006JW-SF; Wed, 25 Oct 2023 09:36:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622759.969864; Wed, 25 Oct 2023 09:36: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 1qvaJD-0006JP-OG; Wed, 25 Oct 2023 09:36:15 +0000
Received: by outflank-mailman (input) for mailman id 622759;
 Wed, 25 Oct 2023 09:36: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=XAhw=GH=amd.com=Michal.Orzel@srs-se1.protection.inumbo.net>)
 id 1qvaJC-0006JJ-AU
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 09:36:14 +0000
Received: from NAM12-DM6-obe.outbound.protection.outlook.com
 (mail-dm6nam12on20615.outbound.protection.outlook.com
 [2a01:111:f400:fe59::615])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id ef1d8490-7319-11ee-9b0e-b553b5be7939;
 Wed, 25 Oct 2023 11:36:12 +0200 (CEST)
Received: from DM6PR21CA0004.namprd21.prod.outlook.com (2603:10b6:5:174::14)
 by PH7PR12MB8016.namprd12.prod.outlook.com (2603:10b6:510:26b::19) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.33; Wed, 25 Oct
 2023 09:36:08 +0000
Received: from DS2PEPF0000343A.namprd02.prod.outlook.com
 (2603:10b6:5:174:cafe::60) by DM6PR21CA0004.outlook.office365.com
 (2603:10b6:5:174::14) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6954.6 via Frontend
 Transport; Wed, 25 Oct 2023 09:36:08 +0000
Received: from SATLEXMB03.amd.com (165.204.84.17) by
 DS2PEPF0000343A.mail.protection.outlook.com (10.167.18.37) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6933.18 via Frontend Transport; Wed, 25 Oct 2023 09:36:08 +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, 25 Oct
 2023 04:35:50 -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, 25 Oct 2023 04:35: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: ef1d8490-7319-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=mLzaKy+8MdTG8FbxPVV7vw5fwE/bKcNYhEEsP4Nu+5TO0ZbAqCeGiMJHA341HOTmRn4MTCvm6ywkV9OF9jgLgAmLFLGmeymnIABjBoI9WKjGiP0x3PuKy3fYaXpj7CsUITtRlpiYw0kBrWG9ap20b07m3YYCXL0ZgbAc+qlrq25a3DMWtVzqLu8mPBeZqHn/NID2Eoy2vTczgMBDrcronvQMRG9UxurvzglK+vocpk0lS3+GOrClOccIw0hOyiH85sXA6+R8h/xzGt3dWkWnPjYfMirIQntTmwGwKg+tu+M6HXFAsodaIQgAD47c9JgQVyCLG2iaMYkavaf2AR+nkA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=+1aPaP2xjV30DPdvW0t8Nsbv/u17umbQei6iGqDYhCI=;
 b=hWgutBfk8hJxR2/HCmtuWwBGlBHbyF6vzkYeTuAlaWmbWnLWmaTry0gQHW0yjCMNNA0MPj2JCD5ImdVHDZz6BpRQ0yP4yu/94DBCcdveKP6XyBj7PYZtLBLKWuIjbgwOtjp2bEpGOQLimUDAmgnkzg7xcCoTroJ9S5VCQipiXR5n0ogT4LM8FEM/N7etTClcHtYvDsBc0AMpSZbuRuFCYnARr/hMKYkk60iBzQ6GvRHpVPZkG2FWWnthM/AxIEomVnltPTV5QkdnMS1DdbGGN5AIKQ2YtYdNtFq4H70X7JIvX5BEI9JdJavl1sKSfbUhuvaZ4VTUHRlC6mv6lAr0ig==
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=+1aPaP2xjV30DPdvW0t8Nsbv/u17umbQei6iGqDYhCI=;
 b=U9Eabq4Nwkoppxc3ElbNMYMIM8F9cbNAbrTNK+bhDVdW+E4lK/j9r9XLQ6UhN+Vk6aHbobdis3WlXuV2XmfuXuKbrjl5q1WuXGfTnoOU4/0ZSmbxwX4fAhB6DXREzQ/pLpuVH6S4rzfbzPF4mhxpt8wXx81QDr57gNTijS6ylko=
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: <5bd44ff0-041d-4fc5-ad6f-c9e1158c474b@amd.com>
Date: Wed, 25 Oct 2023 11:35:43 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [for-4.19][PATCH] build: Allow setting KBUILD_DEFCONFIG in the
 environment
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: <20231025082834.31680-1-michal.orzel@amd.com>
 <9e646df5-a9de-545a-e827-951a161c935f@suse.com>
 <14ab687e-2d2b-40a4-9f79-3f547bba286c@amd.com>
 <4cb8a480-a587-22cc-2f11-fd9d6cc8c1d3@suse.com>
From: Michal Orzel <michal.orzel@amd.com>
In-Reply-To: <4cb8a480-a587-22cc-2f11-fd9d6cc8c1d3@suse.com>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 7bit
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DS2PEPF0000343A:EE_|PH7PR12MB8016:EE_
X-MS-Office365-Filtering-Correlation-Id: debf43f9-31b4-4d1c-96bf-08dbd53dd11d
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	xRLYgKW734WQlLfZaZkQa/pNMTbiJoHz0L4qfc1LNjxGjGQg1h4UwV0YG8QlrPavcmcTSxBT8mRmv+Je+60VMBJ4OUiqwqFyzKjle2FnJ5tL6+tQ5/zsITiuoYWttBMeRzOQDPpudLQlTpVa0jVsam6S1Brt0SgjDs7k4zYX90wdBFyn87/O1ZwV+KL2nNAXTO8H9Y6BjxlnhUdmspb34KOhoRn1DyjGivoEsDI8uOrQhj8y9NrYcEH+6iiUpSsvEl4d8oECXEAaShiAb6KY6rYX9ZUyEbvxI3ZAlgqiqacn4nmKYEOWUuFp2GaCe8YuPQUmRHz1BonMiZtzIWCCHyZ5+Qgayrx7k29qlruDr+Piq/xPXuBw/ze2nd7j17tOUTNoVFiwBp+eguJQ3CASAWv45KidyiyrZY9WxkVQt3JGxqiA8S5YYLaHlID6FyWjvrDag/YwclmcZ0fT6uyTL0YzRskEso24+Z9MDajra940WD5ehK9X4a/Awvvg6ZNe9okyb96TKL+SaGjWzV14JPtRxWV+F4zkS22fUZhLywbr7kabXOkwc54MCEgeSsFM0NVnHrk+fJ9IPqLqBm33FRTsRyvHsQ+Il6jxYowxb8248eT0ixmmGjsocaCCcsrtRtrduFtBCYIg9MH5mGFe7YDjgLRfYQahC26xwo6r7rtdsNfHW0orW/GXtH7mhoU6XfUMITr1obKfPaW73gCuvJdyeMqcXtVBxTsItL+Pt74wGETEmNlAzeOHDUlqT8OjJ3n3T1BnswXHfwOvYGLjoH9/PeAnbCCjhAaCxl/Jg0g=
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)(376002)(39860400002)(396003)(230922051799003)(82310400011)(1800799009)(451199024)(64100799003)(186009)(40470700004)(46966006)(36840700001)(26005)(31686004)(31696002)(44832011)(2906002)(40460700003)(86362001)(5660300002)(36756003)(4326008)(70206006)(8936002)(6666004)(8676002)(2616005)(356005)(16576012)(81166007)(41300700001)(54906003)(36860700001)(82740400003)(6916009)(70586007)(316002)(478600001)(83380400001)(53546011)(47076005)(426003)(336012)(40480700001)(36900700001)(43740500002);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Oct 2023 09:36:08.0218
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: debf43f9-31b4-4d1c-96bf-08dbd53dd11d
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:
	DS2PEPF0000343A.namprd02.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7PR12MB8016



On 25/10/2023 11:26, Jan Beulich wrote:
> 
> 
> On 25.10.2023 11:21, Michal Orzel wrote:
>> On 25/10/2023 11:10, Jan Beulich wrote:
>>> On 25.10.2023 10:28, Michal Orzel wrote:
>>>> At the moment, in order to use a different defconfig target than default,
>>>> one needs to specify KBUILD_DEFCONFIG=<target> on the command line.
>>>> Switch to weak assignment, so that it can be also obtained from
>>>> environment similar to other KCONFIG/KBUILD variables.
>>>>
>>>> This change will activate the use of KBUILD_DEFCONFIG variable in CI
>>>> build jobs that so far had no effect.
>>>
>>> I'm certainly okay with the change, but the above sentence looks misleading
>>> to me: Yes, the envvar was ignored so far, but isn't it the case that the
>>> envvar as specified in CI matches what Makefile set it to (taking into
>>> account that for RISC-V riscv64_defconfig aliases tiny64_defconfig), and
>>> hence the specifications in build.yaml could be dropped (until such time
>>> where truly an override was intended)?
>> Well, today riscv64_defconfig matches tiny64_defconfig but it can change. Otherwise, why
>> would we need to have 2 identical files? Looking at the latest full build series from Oleksi,
>> only the tiny64_defconfig file gets updated which would be the clear indication that what is
>> specified in the CI matches the author's expectation.
>>
>> Also, I never mentioned that this change fixes something. I just wrote that it gives a meaning
>> to a variable that so far had no effect.
> 
> Well, sure, but if you e.g. said "... that so far would have had no effect
> if they didn't match the default anyway", things would have been unambiguous.
Ok, I can see you did not provide any tag in which case I will wait for other's feedback.
Then, I can either respin the patch adding sentence you suggested or leave it to Stefano
to do when committing to his for-4.19 branch.

~Michal



From xen-devel-bounces@lists.xenproject.org Wed Oct 25 09:44:49 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 09:44:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622763.969874 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvaRP-0008A2-LT; Wed, 25 Oct 2023 09:44:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622763.969874; Wed, 25 Oct 2023 09:44: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 1qvaRP-00089v-HG; Wed, 25 Oct 2023 09:44:43 +0000
Received: by outflank-mailman (input) for mailman id 622763;
 Wed, 25 Oct 2023 09:44: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=e1rq=GH=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qvaRN-00089p-PA
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 09:44:41 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com
 (mail-db3eur04on0628.outbound.protection.outlook.com
 [2a01:111:f400:fe0c::628])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 1d69a5cd-731b-11ee-9b0e-b553b5be7939;
 Wed, 25 Oct 2023 11:44:39 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS8PR04MB8436.eurprd04.prod.outlook.com (2603:10a6:20b:347::23)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.18; Wed, 25 Oct
 2023 09:44:37 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6933.011; Wed, 25 Oct 2023
 09:44: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: 1d69a5cd-731b-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=WwOjBg3za6LEDPVkt5s4S1Ixnn9+obfK7hggsiO/jt681xMOAQPWwz332yd6Z7pNqAViiScHPxgJFiqXn5cP+IugkLxdOll9m5YauTpz+J6tttqbQf8Rg6pLqFLBPk0avooQEWNtLetonqvILzkDTc6hjVpuBJO95Xjc/fewoF6zUd2laCf7J+8gktkva75LXvLl2gBEeG5+LPeNfTSDFWuAC9PDl6MzJbmIwRKolAJvfmPwtOpCxeKKRDk7RUpRPB81Qle93GvEjHYDMwkzZ4iKRtJ8LcwWjAFc3tOWQmSi2nqFkelE/ZG1dUjm9rl9M5+82ZV7hFZPsTQ//IX7hQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=Z1KptLY6s8G1aC7NRTKk/+NRb+SR2CZLBeSf8DIC+hc=;
 b=ihv6m3UyxsaTaMWbvWLmVy5eKnOqStXrWRkV+CKnENlYcnqrtr6UeQDpNlWSEmo37vuFRz7LuXgZo+wGG8cR3NEj91xd8BmGdS8dscSkLmP0k9Wse1F7aN8nBDLjjjOSC8eB2IzexoCZyNUo8UXeQQFOT+TXvQmm2aVFLxOuZ9U4wC6/KhtCUItEXL4xWMX4Wa0EBK0dVq4VsgPD2rLlpxvCAPL738+MJfbzlayQtK2t+O5UFEluVZnb8Bi+4BwunHT7BdF45nmqhnrnNaC+l49WrwgRrHarej4gUNlMuaYruFwy6wouxj+70fm2okO6ZW5Mb6f7CCKGT+32QE2ePg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=Z1KptLY6s8G1aC7NRTKk/+NRb+SR2CZLBeSf8DIC+hc=;
 b=Tu+taRYfKOwLenQ/2ZNl7+f/vA3hJQZPt2mW3cSU4bQuzdF/TR8OwYCTOdldoDNc4VnNAb8QosfZl+335oxFpMr0b/58t513B3rQTz48HS+qyu5X5pMAGIQOJxO617EUiZS9NUYVPlJur9bDShoq6ktDufRmG2pQUjNmxTWVaoyXtpp0PfUMLByCtzMs+T1OpqHG2VQVb35UEJTc6jRiiogXXdSS7XPXSqwycbAnhWBdbYmTNLZvH3ITblbUmOfUWbKyR2nZ+DJLq3PBroaMi1LH5ZOJJ05UMW7awEWdiBHIbJAACGJHTibnHEDCrDkWS2HmQreyvouLqP91Pxn+YQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <25b10354-9361-d1b0-c6f1-f0bac67541b4@suse.com>
Date: Wed, 25 Oct 2023 11:44:35 +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/vPIT: check/bound values loaded from state save
 record
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>, Wei Liu <wl@xen.org>
References: <f83213df-2433-ec51-814c-436ce5ea4967@suse.com>
 <ZTjbygYgCYTNtc-W@macbook>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <ZTjbygYgCYTNtc-W@macbook>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR0P281CA0169.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:b4::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_|AS8PR04MB8436:EE_
X-MS-Office365-Filtering-Correlation-Id: eb7822f2-4dad-4ca4-3c50-08dbd53f0054
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	1mdO6bRLrEDicolbjRwB9EWSpcNTl9w7C6ulqyLw+6CL2d/sx2LU1/FYd7KPkeCP1DcH2dI+WhMQ3sz5u1oXprEkUbrxpNQNaCnTyuyxn9OHdsbix8MFxez+JRYdSH44Scd1tGyJrkiMOc8kTcfMLeq96OlHBzqqQx8ihOFGRyxUIECKpzEOWDVg1zWUrAsQ3UJi1OC+na+0ma8uO0VV+WaNyi1AoLOlWrG9fAuHeWFCFy97x6VAto5F0ici6JIB3gcUPN9tt8AOe59itzN/OO5PpK/6MkoJJlI9RnF1gAoRTzt9JaFXtvz8BqR5PIoMnaWll32k6xZB393RLkzDjmqsUyPi2nCWp13zshyLb16NyK3yi5+9JKp3diSNA90u8LCgnHy5B8FaSI9Nz4vFtyHCu1+qoy9WJIpW/jjSAsz+Ytp+kCWCIGxJMYW/35JtqRXCSpX93UNNEsMDkE3J95JMZ5qntJaRSkcHmXIQTFegZlAU2uPCwubW3lweeqU+SIDl8Mweta5H79kFgwUOXgURSFQylhdc2HgJPpzDahtB8TTvhfMnSN0fgSKCLdLh7JZnDhr1lHaOECAdaRGPHYwsiYVE+Q5+zfYKq2ZXXsfDZROxCH3FR6pu0h4dGXvU9jJDGUm2pbSReRNd37DUmA==
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)(376002)(136003)(39860400002)(230922051799003)(1800799009)(64100799003)(451199024)(186009)(83380400001)(2906002)(8676002)(4326008)(8936002)(6486002)(53546011)(31696002)(31686004)(41300700001)(5660300002)(86362001)(6512007)(6506007)(6916009)(316002)(66899024)(26005)(478600001)(2616005)(36756003)(38100700002)(66476007)(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?cE4rR2YxMjIrZTRCWXdOZUo1Y24xWnRRc05yN09LRXBjTUlIcU9JdkIrTmti?=
 =?utf-8?B?cE83ODA3c2NjNVBTdmlMK2dFb1hPVklvZUFwSk5BYnluNHgvZGg3WnhMY1Nv?=
 =?utf-8?B?MFJtMlFYSWJPeWtVUFB0MWlnUXVpZ2hNd3ovZFBkZXZCWXozelpRaEx5c2FC?=
 =?utf-8?B?L0tLcWx6OUE4eTVXRERkTkpWa0NLdlRVeEtIODJyL0kzM3NlNi9tTzVaUytJ?=
 =?utf-8?B?OWYxS2d1VGlMZlhvSHQzMTVIQlk5WGY0OUVFUG9MSXUzekg2Ykx2TVlKVXds?=
 =?utf-8?B?ZVIvM2VtNXdSYjc2L1ZCUkZGNUc1a0tUOEtVNFdsL2FqTjZoTGNFOSt5aGxU?=
 =?utf-8?B?TUNjdThyeWNhc1p5UFVaSTc1aUNVVUxyMmovNTl5U0dzOHE1MkxKUnVibmU5?=
 =?utf-8?B?UDIyUHM4S1VsQUpTNGcwc2NPY0JPK0Z6VEU1TkxmUGpYZWljYW9XTnlseGZR?=
 =?utf-8?B?NXY2d3gxem1UQlczM3lNTlhiN0xsanREZHVyRTNDcjU4d2JkWG1nc2w5SERz?=
 =?utf-8?B?QXBxM3M5UEFMeW5lUjBxeWxnc0ZjK2N0ZzBNK2RLVy9abXo2SGsyVXJyOEZS?=
 =?utf-8?B?NXE3SjdxaXBCWVF5NUZxb0hwWVM1bWRKN1ozeGRrai9YTXpBTi9HZkRNSmlT?=
 =?utf-8?B?eFNRQ3k4dDdWSHd4NlN1S3VIL2N4RHdvSzVhUFJnd0JNSlRBbjlwOVR3cC9n?=
 =?utf-8?B?M2pSV0RIUThabW9JVEsvWnhOeHozT0t5Z3NBYm85U2x4U25KckVVQ1A3WjRN?=
 =?utf-8?B?TDBHVEoyQjMvekVrT3hRWjMyUzlUZklQaUdQNDZ0Qmc4Q3RLU0xPd1RTTGFV?=
 =?utf-8?B?SVAxQXlGOHZRdkkwbnhTRGxBelNRelltb2NKSmJOOWZQSTJ2YStIZGZoaXBx?=
 =?utf-8?B?cDBTRmNlaWkrakRaemZwaUtVZ29JcjJYN3ZZYWIwS3JBSWFHaWluUVJqN0pP?=
 =?utf-8?B?TlhveHZ1M3U0UDkwN09ySThhTGZnZ3g5MmcyOVJoNStTbzBLSVJpUE5KemFo?=
 =?utf-8?B?L09YOVorclJKR056Q2tWZGVLVnQwUVdRNHErYWxOZWdTcEJBK3JkdDRRN1U4?=
 =?utf-8?B?UzM3WmtXUndWRUNvb3hOSEY3TUgwVkdrTHZ4aHFUTjArRjF6TlE1R0JBendp?=
 =?utf-8?B?SWZVa0JuekQxc3h1cHZmd0hVLzZUM1F3aHVNaGNqWlREazFNTC91aENVVkxz?=
 =?utf-8?B?aXJDUG5IQWxiQW52U2x6QUkyM3ljQ3VzeVNTZVdGY3hCeDg2cWErdGFzM2sy?=
 =?utf-8?B?VUh3R3ZTMUZCMlRIL0owQVl6UHZYeTBXbC84dy85ZmIyc1Bvc3B0SzdmQ0Fq?=
 =?utf-8?B?REpTejhpTlpTQ1N2NUF3K2liN1pkMFVtNEswSDAzRHNnRFlzeTFsWGxDZ2t0?=
 =?utf-8?B?elhNNnQ2NDBIZzJZTGNheGVvZTlTNEY1b1F6eUErQUwwUEk2eUpDNk9GaW1q?=
 =?utf-8?B?SHBSZi96anNmc2lvajJBUVZONTUvVVRrMkhVRjMraVpPSGFEL2tJK2ROL2Ew?=
 =?utf-8?B?QmxEdmtJZVZIU2h5K3UyQzkxN3VYM0Zyek9jRWpacG82RER1dkF4SUlFN2lW?=
 =?utf-8?B?OXVod3liSjdMcFlod2M5TVBRTGk2bHZFSHZWRmdQU0pvU2s1NXhhSjVvdXZP?=
 =?utf-8?B?L3pDZ1k1eS9BeFBaTDRzUkR0emdYV0pJS0I1Y25udEUyZkZRL1lEZmZjaW5a?=
 =?utf-8?B?TVNpWTlMdXg4MXhaV2l1bFdZMitaR0swTm9oRXBVRkpRYjdKVzE0VlNVVitx?=
 =?utf-8?B?cG05cGFQakFLa2psRG9jM2E1QUxJei9iZzFIT2FFODNNRnBGckJmOU5QL3lq?=
 =?utf-8?B?YTRmckUzL3AxaWhQQmVpdDdXYnBVakZkR3k5OW5wOWRCcVR2cDk2TlJPaWJG?=
 =?utf-8?B?bDhEMERwZlBqODZHTU9uUVBLN0FXY2psdnNDTE9hOXpOZnIzamcrbUtDeG5X?=
 =?utf-8?B?YnhSSkZyaEw4S3FPRTI1SHNUSis3NjFTT0o2WjU5LytXUk82ZWduYnBQdjkw?=
 =?utf-8?B?RUVaM045VzNjZnVqM0V1VnhKUzJRa2xjOStLVFpucVdtTUVVbHZycTdvb2xZ?=
 =?utf-8?B?VXhwd0tRNjM4Y1JhVTVlR1ZkcFE3S2ZCN0JrSUhwM1NLenM2MzBpMDcybUZX?=
 =?utf-8?Q?sUbVj95EEEhQSaniSbLhdzI14?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: eb7822f2-4dad-4ca4-3c50-08dbd53f0054
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Oct 2023 09:44:36.9284
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: sE9vUy0eFmJwzSd4derFEXxrNo7BVlJVXwJePw0TWmhskjYFhtKV5+GK30mia/DCrFfIH+QZpvrnVEH1H0Nesg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB8436

On 25.10.2023 11:11, Roger Pau Monné wrote:
> On Thu, May 11, 2023 at 01:50:05PM +0200, Jan Beulich wrote:
>> In particular pit_latch_status() and speaker_ioport_read() perform
>> calculations which assume in-bounds values. Several of the state save
>> record fields can hold wider ranges, though.
>>
>> Note that ->gate should only be possible to be zero for channel 2;
>> enforce that as well.
>>
>> Adjust pit_reset()'s writing of ->mode as well, to not unduly affect
>> the value pit_latch_status() may calculate. The chosen mode of 7 is
>> still one which cannot be established by writing the control word.
>>
>> Signed-off-by: Jan Beulich <jbeulich@suse.com>
>> ---
>> Of course an alternative would be to simply reject state save records
>> with out of bounds values.
> 
> I've been taking a look at how we load other records, and
> lapic_load_hidden() for example will return error when invalid values
> are found.
> 
> IMO that seems safer, I think there's a risk in the adjustments
> done below to also lead to not safe combinations of fields.
> 
> So we either reject the state and return an error, or we silently
> reject and leave the PIT in the reset state.
> 
> Unless there's a reason we need to handle such bogus state.

Well, I've tried to be conservative (similarly in the vPIC equivalent
change) as to affecting guests with potentially bogus incoming
migration streams. Such guests may have been migrated multiple times,
from pretty old Xen, and I don't consider it reasonable to check each
and every Xen version as to possibly permitting out-of-range values
to be reached and then saved when migrating the guest away. Imo if we
were to reject bad input, we'd need to have a way to override that.
Requiring people to "fix" the data in the migration stream seems to
me like demanding too much in such a situation.

What we could also consider is have the tool stack do the adjustment
(perhaps optionally, e.g. driven by a command line option), while
unconditionally refusing out of range input in the hypervisor. But
of course that's more involved, overall (and could still end in
perceived regressions, even if those are then easier to overcome).

>> @@ -426,6 +427,33 @@ static int cf_check pit_load(struct doma
>>      }
>>      
>>      /*
>> +     * Convert loaded values to be within valid range, for them to represent
>> +     * actually reachable state.  Uses of some of the values elsewhere assume
>> +     * this is the case.
>> +     */
>> +    for ( i = 0; i < ARRAY_SIZE(pit->hw.channels); ++i )
>> +    {
>> +        struct hvm_hw_pit_channel *ch = &pit->hw.channels[i];
>> +
>> +        /* pit_load_count() will convert 0 suitably back to 0x10000. */
>> +        ch->count &= 0xffff;
> 
> Might be helpful to have this in a define, as it's also used by
> pit_get_count().

Hmm, the two uses of 0xffff aren't exactly for the same purpose.
Here we're bounding the input range, whereas there we simply need to
deal with overflow that unavoidably can happen when the counter has
wrapped at least once. Really the comment is here to avoid putting
in place the more precise but also more involved

        if ( ch->count > 0x10000 )
            ch->count &= 0xffff;

If we used this, divergence from pit_get_count() would be yet larger.

Jan


From xen-devel-bounces@lists.xenproject.org Wed Oct 25 09:45:00 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 09:45:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622764.969884 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvaRf-00007v-Rn; Wed, 25 Oct 2023 09:44:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622764.969884; Wed, 25 Oct 2023 09: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 1qvaRf-00007o-P3; Wed, 25 Oct 2023 09:44:59 +0000
Received: by outflank-mailman (input) for mailman id 622764;
 Wed, 25 Oct 2023 09:44: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 1qvaRd-00005b-Rv; Wed, 25 Oct 2023 09:44: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 1qvaRd-0004tL-Ek; Wed, 25 Oct 2023 09:44: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 1qvaRc-0006bI-V0; Wed, 25 Oct 2023 09:44:57 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qvaRc-0007gV-UR; Wed, 25 Oct 2023 09:44: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=P7j8agZICm9IlrHbmtoALqWcx9i1y7rJL7HUxeW1W88=; b=U22Jk+eNsshAPeH9uHS0WJz6ma
	rEexUkM2uMfQfpqKgyG4Z2Eb5isUnFP6E5NWwjE3+vDmrw+jW9d4VK1giaECQdlanPhryhecMWXl1
	h7ihe/cKtXk0VB4uVU/3XTBE3lvhNwt0P7xONScpB4JSiHuMSEmu42w7/aani7r+pQjg=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183521-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [libvirt test] 183521: tolerable all pass - PUSHED
X-Osstest-Failures:
    libvirt:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt: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-amd64-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-i386-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-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
    libvirt:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    libvirt=0eca9ba3161b4f31640a1bbf059e2e338d13f1e9
X-Osstest-Versions-That:
    libvirt=1622012cc42b983300015a6661b1ca67d40376ad
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 25 Oct 2023 09:44:56 +0000

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

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail blocked in 183505
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183505
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183505
 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-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-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-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
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass

version targeted for testing:
 libvirt              0eca9ba3161b4f31640a1bbf059e2e338d13f1e9
baseline version:
 libvirt              1622012cc42b983300015a6661b1ca67d40376ad

Last test of basis   183505  2023-10-24 04:20:34 Z    1 days
Testing same since   183521  2023-10-25 04:20:21 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Marc Hartmayer <mhartmay@linux.ibm.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
   1622012cc4..0eca9ba316  0eca9ba3161b4f31640a1bbf059e2e338d13f1e9 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Wed Oct 25 09:50:02 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 09:50:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622775.969893 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvaWS-0001fO-Ii; Wed, 25 Oct 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 622775.969893; Wed, 25 Oct 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 1qvaWS-0001fH-Fz; Wed, 25 Oct 2023 09:49:56 +0000
Received: by outflank-mailman (input) for mailman id 622775;
 Wed, 25 Oct 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=e1rq=GH=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qvaWR-0001f9-76
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 09:49:55 +0000
Received: from EUR01-DB5-obe.outbound.protection.outlook.com
 (mail-db5eur01on0608.outbound.protection.outlook.com
 [2a01:111:f400:fe02::608])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id d91569de-731b-11ee-98d5-6d05b1d4d9a1;
 Wed, 25 Oct 2023 11:49:54 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by GV1PR04MB9183.eurprd04.prod.outlook.com (2603:10a6:150:27::9) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.11; Wed, 25 Oct
 2023 09:49:49 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6933.011; Wed, 25 Oct 2023
 09:49: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: d91569de-731b-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=DElr8AK9BwOwzOyJVFPRzeqtElqMSyVvxlkvlgJWEmgwW2TElFEdEqOzQ/hr2mS5yNggFUExG7iBvpwW4FMssksin8Bi64JUDJWvgDUz/cPcPiNvATEtKVsuKvsNWiN8YdbwJXJ4hifGjrXC51Xlgf/LuRbJAsbebJRdk/v1oFGuZ7vXEqu3BTnn31LxfwffRgg+2bvSPC9Ubb1y2klvXSpw8xF5qqOX7Pa1KN6MRXa4oO7CpRYdsjz6ZUm8aL73DiZUOe8Ygpavcmd3Y/cpIX82dPzrlem4N9RZxXgdfuhiKXUCjvfnKGuV7RDloJJmbox8Qds1eFnCX+Gp2UBZVw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=s87VEnnMAjffZPq4R7FWmH3QT0udyrhJHe9MvB7A9Hw=;
 b=JH1uxe6VC4hpswSNVMrKWyhSs9Ys4R/gh+6Zu7BpaUZeduZTSOA6GZu0VZpGttrlM3y1x34eav5E1AJ81PY5AA8FKkw5JhD4fMh7MlYgSH4fav7MAaX5kCRNbec4reyjqRTnXT6JSLk5Vn1qr4JyCleOPGt+EQy2+zftaQ37h3GlNa1Sf3T7jyjfWJ24X87d6KLsn+1EQyGUZSjml8skPFe13PY98343s67qbL+AyEf3bc1APzIx/suGuIZ/yn1BY6ND5A4r80+o4fSSTzMhutZxkS1BFrcV+J4zwXyd033mVOsZdwhDdNUdAyqIuCT4o8IuU0uwOFwmZN9qlrt3QQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=s87VEnnMAjffZPq4R7FWmH3QT0udyrhJHe9MvB7A9Hw=;
 b=XtWgATG1v5a6ulItVo3LvXNVZ+VeGtSDgp11KajtYwkHir3WM1FUKYNNIN3NElIt03WsEM/lpY8wcxEei7VgpMRDI0bGGRjiMp0OTi+5D30YSXovbmRg76GRwM6rRSgdjQArIrN1XHqEY48QgveP9yI5uOPvp8LfPB3bcojKg2lFzF9s+dCdWB4i/09qEWTthuhZ8Rzm2kIv588GRH/mvjlShw7UI/cR+1atfwL6SjBRAyzFCgTNRQO4G+T8McJOMVFQmen9bvS3s8qh5YlFNEFzjZT7I9qGY8yMyrlrd0HPtMzUHxsIAa7s9noOONWKIyhzTsNKADLFSVYJHA6eTA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <0807134b-3ad1-900c-64ce-b60475d91d45@suse.com>
Date: Wed, 25 Oct 2023 11:49:47 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [for-4.19][PATCH] build: Allow setting KBUILD_DEFCONFIG in the
 environment
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: <20231025082834.31680-1-michal.orzel@amd.com>
 <9e646df5-a9de-545a-e827-951a161c935f@suse.com>
 <14ab687e-2d2b-40a4-9f79-3f547bba286c@amd.com>
 <4cb8a480-a587-22cc-2f11-fd9d6cc8c1d3@suse.com>
 <5bd44ff0-041d-4fc5-ad6f-c9e1158c474b@amd.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <5bd44ff0-041d-4fc5-ad6f-c9e1158c474b@amd.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0304.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:f6::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_|GV1PR04MB9183:EE_
X-MS-Office365-Filtering-Correlation-Id: 5102c12a-13ca-4712-3824-08dbd53fba94
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	dfDNiH/ZyVDI/rPlEmCntQX7ctprvzIFT8XVC6pXHfAtgUNsIF9EvBtEeMG0EZYRVBJopj1H7qx9ofzYQbS8cvoH2pgfZCoFbR3RGPal3HoAB2mQ0jjZwZHkYDGdjEZBaRCkSr0zJ5ueYWBtdroVO1zN+4OLEEjU1+eG5JFPoLQGP8rcmXAyosWeqt0kUJwoD6CLKkS/FM/IyVl+uboUZfm5RwKevhdwO/UcXJV4YHD4WRrzRoT7YC034YiImKkXWE6S8s42xnm711GVL3j7egwYI1XT9VxZg5uAwTLUE9pcrO7LMzyNY73uo3USAia/llTEtnS4l1znNFlecg8AEEH12VTD+Au04NgF/j3rozsaPJLhWX2Zw3Jy0FdLO529aivWyskyn+InnIDMt+DFZra9RWk/10osy12mp0iTy64hgF9g17XA1zxBwyuAWrakgEBb9IQ0l3vWBhNsjQIn00wjrDHei7WJNZs3xt2K4IFgeDG6RkQIvAO58eoXiQ90NblSCcIJ/YYYVhm1aD8OryQ6EZtyX5ZDZjBWDtl34i6Et73bOJb3p6TsaTwUT/CSsuscbfmm4XdZNzlbf2gWJqeCsQhEPiXE+ZxqOtrgpCzLFsBVMQ+KZO/SSiNS56TmxdfWkPs178o2ciWRUsglkg==
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)(376002)(366004)(346002)(136003)(230922051799003)(64100799003)(451199024)(186009)(1800799009)(6916009)(31686004)(66899024)(2906002)(5660300002)(8676002)(8936002)(4326008)(36756003)(66476007)(66556008)(41300700001)(54906003)(86362001)(6506007)(66946007)(478600001)(6486002)(6512007)(31696002)(2616005)(26005)(316002)(53546011)(38100700002)(83380400001)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?NEJNV0RKYXlwRFVyUzhxMWlOTEJtazVTaUVwN2pkV1Y1QVZSNmNaUE5HYUcx?=
 =?utf-8?B?OEd2WVpsZFU5cm51M0JyOVREaGlMV2Y4ZDEyb2JoN2dWaGZyRmVkWEtuMngr?=
 =?utf-8?B?dnlpVGQrd1NvOWhjTmtGWG5qNnVKanZybTNLVkJjQWxYamxGTnRQOXlxNDVk?=
 =?utf-8?B?dUlZYno2OFdVeUtZUXNGZTAwOEpJN0ZVYUNIblRwVVlZU3BETVNVbVVIYWJv?=
 =?utf-8?B?ck9pQlBENlIyYWpWb2FWSnpWRGhVYlJQa0JiZVlIY2xTd2k4a1hrUXV0dk5k?=
 =?utf-8?B?aEVUR3RmTElQdDN2eGc1T1ZPMUtUOUsraEoxekVWUndVU3ErQnhjR1lwamZ5?=
 =?utf-8?B?R2k0NkhmVzExMC82OFBKb3RObkZWaWpXUjl5a0M3VVc5UWZoTXdhdnFZdFFq?=
 =?utf-8?B?L1RPSko0Mkw5MkZ5WVAxQXEwZFdibkRyU25nV3p5U1hFa3d1NHVyaHRWZ3hT?=
 =?utf-8?B?V0lMMEc2a2JhSGFPdkxtRHoyamJ4QUVoei9qdHY1ZUQ2aWlKTTJmb1BSeEJm?=
 =?utf-8?B?TC84UEVqMnQ0ZVB0ZGxmRnBHSGs1dDIrTkIxM0hJcjUxUzZ1ZmNkblh5ZUtF?=
 =?utf-8?B?bW1rVkM3RTM1bzArZkpDVllkRFhCOW14M0FCVlpxVXJ0MUQzUmN2Nnp0V1d5?=
 =?utf-8?B?cmxBOUZ1R1JuR3hNVDduSG9tTnNNS0xlRWZ2bmUrbENKanNOSWE2bHpOdjFF?=
 =?utf-8?B?VG1vcXlpc1hzMWVWU0drK20zb2lad2xXNDhvZ05BYmpMT2NWMzdBS2tISFhC?=
 =?utf-8?B?bFhQL0NEdDhzU21Ta1d1cHB3dkIyemxZaTY5b0hWVklBSXFHWlhpb0U4a1lL?=
 =?utf-8?B?UHZJNk12Q0FaMDU2M25UV2ZRQzVzcURRTm5sSS9aR1RKNU5nZWk3SGhwQjUr?=
 =?utf-8?B?a0M2MmFpd3NrbUw1TW1IcnE3MG1Id09RY2hCQm10dTJOTWNEc1ZZaGdRNXFW?=
 =?utf-8?B?OW8zeXI2WC9pZXdqQzhnK2llVm92bnZzL0VyK29INWVCQkZEekxOUkJNVlBJ?=
 =?utf-8?B?Zk9pZnYzemRhZXdGemt6bGRBSXJ0S3BHdyt3eGx6ZXp2amxsZmxMZTlMbW5G?=
 =?utf-8?B?R2d1ZG1Bbm8yVGt0MWhYNjR0Yjgva1h0bUhndzlhN1JFY2pNRkNRbEU2T2NQ?=
 =?utf-8?B?aXJCZXoyTy83Q2RVdGc3ZytRQnA1bDlrUlhEVXZXUUI3cndObGNzdXcwTEJS?=
 =?utf-8?B?cnI0TmVoQ1B2b1JXZFM3dHhmNVduSHdlQmJTbXUrTzNZYjRkOTZYam0rMUU3?=
 =?utf-8?B?ZVFrVEFhM3l2UXhvMTUwVmFIM2JGdkZxTkRJYlp1TTV3MWExOGFmYWpXMlNR?=
 =?utf-8?B?UmEzektwMmhLVmJvMTBRM2c5Z2U5UWJWSm5lZ1VTcGEzZmdSOHdHRkdEbjRJ?=
 =?utf-8?B?VE0vNTlsK3YrMVRkNFkwNG8wdmdtMWN6c1ZvSVFKL3hBRm85d0dUZXZ3aUlJ?=
 =?utf-8?B?a2lrWjI4SXZLQVkvekw5Ujk1Z2RJdm1ZaTBiWkY1ODg4L1ovelhDdkM0UEEr?=
 =?utf-8?B?TDZ2REN6QkppUFBzaVpmTmRjS1R5Z1grdWYvWVBrWUJhL2Q4ZndxVEt0Vm5G?=
 =?utf-8?B?aWZxZzZqbkpSV0xGV2RqQWdPWEtVa1JLNlIxMTVUcjF3MzlSQlpSbWJDZXZ6?=
 =?utf-8?B?VEF2aDNTeXpKNGQrOVRyU09QZ3dIeEljakZBMWczM1RTb1k1UWZLTEh0UExo?=
 =?utf-8?B?bUlnVlJYRWNQOTBBdWQ4b3ZQMm9VOXZpTFQ3OWpna1VhZWN6bXlJUFJqYVVm?=
 =?utf-8?B?dHZ2ZTFUSGZnK0EralpPL2VQZjV0NlY2cUlVS25YWWRmalpURENJamdGemU4?=
 =?utf-8?B?d3lDSWhYTHVmbFBiTXhKTTBGbnpjcTlvbHBxbUllYzNaTnJuU0tBSmlJN3Fk?=
 =?utf-8?B?dVVCR1FxYlBRYUxySjlZMjZudEd1U3V0cENDTzZVeVdFVXIxNFpNdGVFaGNH?=
 =?utf-8?B?Vm1Xa1VBZWFRakc0TXI2Skh2WG1nQTR3M09PSlVzVTJocEdpdzJxZm5Cc0Yr?=
 =?utf-8?B?ZTk4RkRZbjdKOG81SGltZjdvT2JPWFV4SFl1Q1pxWW5kU0Jlc3NVZFoveGZT?=
 =?utf-8?B?SGN6SG4rbXdKZE5RRWp3TTJSU1E3c0FiOGZoTTM0dXdRYkpYcURlNGFES1Y3?=
 =?utf-8?Q?LC7n3AFYP8gRvDT9MkehJlhHu?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 5102c12a-13ca-4712-3824-08dbd53fba94
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Oct 2023 09:49:49.4050
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: WlegvnKG2rkYvwkkAt9YBQ2PUJd8CeWNScTvL8YxPvB+CiSLleRRmQo83KERMeSdhn6WrUoLWKVtt32WubgPTA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV1PR04MB9183

On 25.10.2023 11:35, Michal Orzel wrote:
> 
> 
> On 25/10/2023 11:26, Jan Beulich wrote:
>>
>>
>> On 25.10.2023 11:21, Michal Orzel wrote:
>>> On 25/10/2023 11:10, Jan Beulich wrote:
>>>> On 25.10.2023 10:28, Michal Orzel wrote:
>>>>> At the moment, in order to use a different defconfig target than default,
>>>>> one needs to specify KBUILD_DEFCONFIG=<target> on the command line.
>>>>> Switch to weak assignment, so that it can be also obtained from
>>>>> environment similar to other KCONFIG/KBUILD variables.
>>>>>
>>>>> This change will activate the use of KBUILD_DEFCONFIG variable in CI
>>>>> build jobs that so far had no effect.
>>>>
>>>> I'm certainly okay with the change, but the above sentence looks misleading
>>>> to me: Yes, the envvar was ignored so far, but isn't it the case that the
>>>> envvar as specified in CI matches what Makefile set it to (taking into
>>>> account that for RISC-V riscv64_defconfig aliases tiny64_defconfig), and
>>>> hence the specifications in build.yaml could be dropped (until such time
>>>> where truly an override was intended)?
>>> Well, today riscv64_defconfig matches tiny64_defconfig but it can change. Otherwise, why
>>> would we need to have 2 identical files? Looking at the latest full build series from Oleksi,
>>> only the tiny64_defconfig file gets updated which would be the clear indication that what is
>>> specified in the CI matches the author's expectation.
>>>
>>> Also, I never mentioned that this change fixes something. I just wrote that it gives a meaning
>>> to a variable that so far had no effect.
>>
>> Well, sure, but if you e.g. said "... that so far would have had no effect
>> if they didn't match the default anyway", things would have been unambiguous.
> Ok, I can see you did not provide any tag in which case I will wait for other's feedback.
> Then, I can either respin the patch adding sentence you suggested or leave it to Stefano
> to do when committing to his for-4.19 branch.

The reason I didn't offer A-b (yet) is that with the given description plus
the claim on Matrix by someone that things don't work because of this
override not working, it wasn't really clear to me whether that claim was
wrong, or whether my view of the situation is. In the latter case I could
hardly ack the patch, as that would then mean I'd ack something I don't
understand. Provided there really has not been any breakage so far because
of this, feel free to add
Acked-by: Jan Beulich <jbeulich@suse.com>
preferably with the slightly adjusted description.

Jan


From xen-devel-bounces@lists.xenproject.org Wed Oct 25 10:03:42 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 10:03:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622779.969904 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvajd-0005I4-PF; Wed, 25 Oct 2023 10:03:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622779.969904; Wed, 25 Oct 2023 10: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 1qvajd-0005Hx-Ln; Wed, 25 Oct 2023 10:03:33 +0000
Received: by outflank-mailman (input) for mailman id 622779;
 Wed, 25 Oct 2023 10:03:31 +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 1qvajb-0005Hr-Lw
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 10:03:31 +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 1qvaja-0005KS-Vm; Wed, 25 Oct 2023 10:03:30 +0000
Received: from [15.248.3.4] (helo=[10.24.67.28])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qvaja-0005jZ-PX; Wed, 25 Oct 2023 10: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>
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=ALQekrt/1JRIBsl5JJkp3nXRyC/JeeG+lkRoV8Tz61k=; b=uP6ct12lg6mTlPOVY/idbJGtJ+
	ZiUC2mx5HrZ4J1OUXff8bBis+KV75xh6Y4MidI0eIZGvZQNqk5kEeCTLlxsNHgn0xfXo7dP4aZEm1
	fZ3RIVE/bR37JN0/a5KRsCDLip+qh6DW0+9c0d5LtVCfcBKAtXrg7VCuCqR3KMBtGme8=;
Message-ID: <08284b00-7b37-4f4b-b4c6-f465dae75b86@xen.org>
Date: Wed, 25 Oct 2023 11:03:28 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH for-4.19 v2] docs/arm: Document where Xen should be loaded
 in memory
Content-Language: en-GB
To: Stefano Stabellini <sstabellini@kernel.org>,
 Bertrand Marquis <Bertrand.Marquis@arm.com>
Cc: Xen-devel <xen-devel@lists.xenproject.org>,
 Henry Wang <Henry.Wang@arm.com>, "michal.orzel@amd.com"
 <michal.orzel@amd.com>, Julien Grall <jgrall@amazon.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
References: <20231024102858.29067-1-julien@xen.org>
 <F5195B0D-C337-4221-9395-56F625497671@arm.com>
 <alpine.DEB.2.22.394.2310241252140.271731@ubuntu-linux-20-04-desktop>
From: Julien Grall <julien@xen.org>
In-Reply-To: <alpine.DEB.2.22.394.2310241252140.271731@ubuntu-linux-20-04-desktop>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi Stefano,

On 24/10/2023 20:52, Stefano Stabellini wrote:
> On Tue, 24 Oct 2023, Bertrand Marquis wrote:
>> Hi Julien,
>>
>>> On 24 Oct 2023, at 12:28, Julien Grall <julien@xen.org> wrote:
>>>
>>> From: Julien Grall <jgrall@amazon.com>
>>>
>>> In commit 9d267c049d92 ("xen/arm64: Rework the memory layout"),
>>> we decided to require Xen to be loaded below 2 TiB to simplify
>>> the logic to enable the MMU. The limit was decided based on
>>> how known platform boot plus some slack.
>>>
>>> We had a recent report that this is not sufficient on the AVA
>>> platform with a old firmware [1]. But the restriction is not
>>> going to change in Xen 4.18. So document the limit clearly
>>> in docs/misc/arm/booting.txt.
>>>
>>> [1] https://lore.kernel.org/20231013122658.1270506-3-leo.yan@linaro.org
>>>
>>> Signed-off-by: Julien Grall <jgrall@amazon.com>
>>> Reviewed-by: Michal Orzel <michal.orzel@amd.com>
>>
>> Reviewed-by: Bertrand Marquis <bertrand.marquis@arm.com>
> 
> Added for for-4.19

It was actually meant for 4.18 as we didn't want to include the patch to 
increase the reserved area for the identity mapping [1]. But I failed to 
use the proper tag.

Henry provided a release-ack and the patch is now committed.

Cheers,

[1]  https://lore.kernel.org/20231013122658.1270506-3-leo.yan@linaro.org

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Wed Oct 25 10:05:55 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 10:05:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622782.969914 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvalu-0005vw-4F; Wed, 25 Oct 2023 10:05:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622782.969914; Wed, 25 Oct 2023 10:05: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 1qvalu-0005vp-1Y; Wed, 25 Oct 2023 10:05:54 +0000
Received: by outflank-mailman (input) for mailman id 622782;
 Wed, 25 Oct 2023 10:05: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=kNCc=GH=citrix.com=prvs=655f6113c=edvin.torok@srs-se1.protection.inumbo.net>)
 id 1qvalt-0005vh-LL
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 10:05:53 +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 11408635-731e-11ee-9b0e-b553b5be7939;
 Wed, 25 Oct 2023 12:05: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: 11408635-731e-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1698228348;
  h=from:to:cc:subject:date:message-id:mime-version:
   content-transfer-encoding;
  bh=nWlfqUZNWWkypZXn/me9OvdRKuV0M++1ZoJRq6eCasg=;
  b=CPhRR7lw1hK9rzWH1oqe0enzhsBOMaVo1GA4tGq8KzlDwd1oHnAoVD4u
   +Skrue7lQ/9ko+TjWgQlxczf85NGQgyNKETflQqRFUFqk359VmWJo0jwJ
   7cARIz2w23z2r5rCrXebuRDwS4xU2I9BEyF+Q896AWbEIU5XczS9tk1XM
   M=;
X-CSE-ConnectionGUID: 5K3il+SPQZaXVJX+o3bzqg==
X-CSE-MsgGUID: y22LdAO+S9mp1ebM27O0PA==
Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
X-SBRS: 4.0
X-MesageID: 126454579
X-Ironport-Server: esa2.hc3370-68.iphmx.com
X-Remote-IP: 162.221.159.70
X-Policy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:Eoovp6P4xHBu7hfvrR3Ll8FynXyQoLVcMsEvi/4bfWQNrUongjECn
 TFLUGiFbvuNM2D9fNt3aYWz/UIAvpeHzt9kTgto+SlhQUwRpJueD7x1DKtS0wC6dZSfER09v
 63yTvGacajYm1eF/k/F3oDJ9CQ6jefQAOOkVIYoAwgpLSd8UiAtlBl/rOAwh49skLCRDhiE/
 Nj/uKUzAnf8s9JPGjxSs/nrRC9H5qyo42pA5AFmPJingXeF/5UrJMNHTU2OByOQrrl8RoaSW
 +vFxbelyWLVlz9F5gSNy+uTnuUiG9Y+DCDW4pZkc/HKbitq/0Te5p0TJvsEAXq7vh3S9zxHJ
 HehgrTrIeshFvWkdO3wyHC0GQkmVUFN0OevzXRSLaV/ZqAJGpfh66wGMa04AWEX0rtUWmBKt
 scgEQIEXi6ht6Gxm7ipU+Y506zPLOGzVG8eknRpzDWfBvc6W5HTBa7N4Le03h9p2JoIR6yHI
 ZNEOHwwNHwsYDUWUrsTIJ8yguauwGX4aTpbgFmUubA28y7YywkZPL3FaYCLJoHWGJoE9qqej
 nOcpUD1KzZZD42a0WOI+Ff22ciXpQquDer+E5Xnr6U30TV/3Fc7GBAQEFe2v/S9okq/QM5Eb
 VwZ/DI0qqo//1DtScPyNzWnpFaUsxhaXMBfe9DW8ynUlPCSuVzAQDFZH3geMLTKqfPaWxR39
 QSIm5DSPQVduY2ra0Le8eyevyq9bH19wXA5WcMUcecUy4C98dFp1k6eH4gL/L2d1IOvRW+qq
 9yehG1u3+9N0JRjO7CTpwivvt66mnTeoufZDC38WXis6ktCfJSkYYOzgbQwxa0bdNnAJrVtU
 WJtpiR/0AztJcvU/MB1aL9RdIxFHt7cWNEmvXZhHoM66xOm8GO5cIZb7VlWfRk4Yp9bI2W0M
 RSD5Gu9AaO/2lPwM8ebhKroVqwXIVXIT4y5Bpg4kPIVCnSOSON31H43PhPBt4wcuEMtjbs+K
 f+mTCpYNl5DUf4P5GPvG48gPUoDmnhWKZX7GcqqkHxKENO2OBaodFvyGALQNLhivPvf+V69H
 hQ2H5Li9iizmdbWOkH/mbP/53hQRZTnLfgac/BqS9M=
IronPort-HdrOrdr: A9a23:qbtXQK2Wqqw4HmfYXaOvtgqjBLYkLtp133Aq2lEZdPUCSL39qy
 nOppQmPHDP4wr5NEtLpTniAsi9qBHnmqKdurNhWItKNTOO0FdASrsO0WKI+VPd8kPFmtK0es
 1bAs9D4HGbNykYsS5aijPIceod/A==
X-Talos-CUID: =?us-ascii?q?9a23=3AjqYQL2opnoam+eXZ6lTQxq/mUZ0GKXzZj0zoGn2?=
 =?us-ascii?q?xOVhLeP6SElWC4awxxg=3D=3D?=
X-Talos-MUID: 9a23:G989+gbfECtgg+BTpmW2oD1LE4RTsqG2UU0HtM9ZnJG8HHkl
X-IronPort-AV: E=Sophos;i="6.03,250,1694750400"; 
   d="scan'208";a="126454579"
From: =?UTF-8?q?Edwin=20T=C3=B6r=C3=B6k?= <edvin.torok@citrix.com>
To: <xen-devel@lists.xenproject.org>
CC: =?UTF-8?q?Edwin=20T=C3=B6r=C3=B6k?= <edwin.torok@cloud.com>, Wei Liu
	<wl@xen.org>, Anthony PERARD <anthony.perard@citrix.com>
Subject: [PATCH] xenstored: do not redirect stderr to /dev/null
Date: Wed, 25 Oct 2023 11:05:23 +0100
Message-ID: <87fbae122fd2d75852026d621358031c72c9a36d.1698227069.git.edwin.torok@cloud.com>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit

From: Edwin Török <edwin.torok@cloud.com>

By default stderr gets redirected to /dev/null because oxenstored daemonizes itself.
This must be a left-over from pre-systemd days.

In ee7815f49f ("tools/oxenstored: Set uncaught exception handler") a workaround was added to log exceptions
directly to syslog to cope with standard error being lost.

However it is better to not lose standard error (what if the connection to syslog itself fails, how'd we log that?),
and use the '--no-fork' flag to do that.
This flag is supported by both C and O versions of xenstored.

Both versions also call sd_notify so there is no need for forking.

Leave the default daemonize as is so that xenstored keeps working on non-Linux systems as before.

Signed-off-by: Edwin Török <edwin.torok@cloud.com>
---
 tools/hotplug/Linux/init.d/sysconfig.xencommons.in | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/tools/hotplug/Linux/init.d/sysconfig.xencommons.in b/tools/hotplug/Linux/init.d/sysconfig.xencommons.in
index 433e4849af..09a1230cee 100644
--- a/tools/hotplug/Linux/init.d/sysconfig.xencommons.in
+++ b/tools/hotplug/Linux/init.d/sysconfig.xencommons.in
@@ -52,7 +52,7 @@
 # like "--trace-file @XEN_LOG_DIR@/xenstored-trace.log"
 # See "@sbindir@/xenstored --help" for possible options.
 # Only evaluated if XENSTORETYPE is "daemon".
-XENSTORED_ARGS=
+XENSTORED_ARGS=--no-fork
 
 ## Type: string
 ## Default: Not defined, tracing off
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Wed Oct 25 10:13:21 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 10:13:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622790.969944 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvat6-0000Ux-JH; Wed, 25 Oct 2023 10:13:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622790.969944; Wed, 25 Oct 2023 10:13: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 1qvat6-0000Uq-Fy; Wed, 25 Oct 2023 10:13:20 +0000
Received: by outflank-mailman (input) for mailman id 622790;
 Wed, 25 Oct 2023 10:13: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=TDEh=GH=epam.com=prvs=46626b3b1e=mykyta_poturai@srs-se1.protection.inumbo.net>)
 id 1qvat4-0000Bw-Rw
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 10:13:18 +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 1d81c281-731f-11ee-98d5-6d05b1d4d9a1;
 Wed, 25 Oct 2023 12:13:17 +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
 39P93PdR023707; Wed, 25 Oct 2023 10:13:05 GMT
Received: from eur04-db3-obe.outbound.protection.outlook.com
 (mail-db3eur04lp2051.outbound.protection.outlook.com [104.47.12.51])
 by mx0b-0039f301.pphosted.com (PPS) with ESMTPS id 3ty025r8hk-1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT);
 Wed, 25 Oct 2023 10:13:05 +0000
Received: from VI1PR03MB3758.eurprd03.prod.outlook.com (2603:10a6:803:33::29)
 by AS2PR03MB10033.eurprd03.prod.outlook.com (2603:10a6:20b:640::19)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.33; Wed, 25 Oct
 2023 10:13:02 +0000
Received: from VI1PR03MB3758.eurprd03.prod.outlook.com
 ([fe80::eecf:7ef0:b4b5:fc42]) by VI1PR03MB3758.eurprd03.prod.outlook.com
 ([fe80::eecf:7ef0:b4b5:fc42%4]) with mapi id 15.20.6907.032; Wed, 25 Oct 2023
 10:13: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: 1d81c281-731f-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=lMSXKiwXNu9il6W6ekDRxhRX1phF09Rj7mvwK/OpIYZ8dYfBGvH1Fri27MaU5pBxiawrO0UXTKAFJg8qxAyvi43WJ/lerc7APZlUnuqDRhdyklVfDmVtiC75Y7f9s3pYCXuBvL23ofKIShORxDZXkvUVMg25nbMIVVeTyXFCW9idvji2gFrNz7s5GUQarYUukJYuc0t3iAZuwraqU9URRXGddXQPGw0Agui1VVD0jeucPF60kjzt7WHu/Mh6uaQ8cKRgg/7gINwAKd7caws43YxEWKE3L5OKiNzpfnmHPJJ73p3hBwpKuSp/Z0Y7vCC3Ohdk05qkTiP1RCTflWfnjA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=klqq5TT3F8kWDJHUj99G9uorTlJgbtdaOQ30vrVT10o=;
 b=FK9MRWRhcxqk6jFcvcLv6P9p5DwAQtXoUVUoHH+DMg1fZcajEE65ylT8adCakTz9iQmQPB9uhbV9OW1+IQE2Mmv33hVrTwgz2irjl33zRw4+Z+WJkWoTrySKyElEEjF4Odnwi4oikL2JUkiBDFFWRhJJL1Bih+CpITK1CSZYG/3RKQcxY/bIN+UBubWKo+L/DITj6jnrA7gblk6rh2V4Fmv73O5RNKa3fg7UItG9+7P1NUgBss79vyN1JE6PX2mnuewvWN+daZHOSRokd2azE5YSipMc111r0jZj4mXE9I6hHtUh4dJpdJbw1/zqrJayOED5GJWiH4XBT/kTSMWOyw==
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=klqq5TT3F8kWDJHUj99G9uorTlJgbtdaOQ30vrVT10o=;
 b=pckCX0BYhm1wuoXoNRV8GixUtNAA9yKXYNKDXRqMkRsMluGg+KIm6U/8Buuk46AGerug9/LcIQYEEk2pa3FDQcCl0+NNLNbM3e+y8PN6nvwFjltoGDc2LgjpK2IUXW1IGk+X9Z38YUzhnQoa1xVjQD9xPFqoXFzgVkTy38JpA8gNvOQXKzg3tXAel7Q65OknhmC3/TfUjwm0iS2KZj7upj1oXhSdMBlzVya6YYl6Ts1cT1KLaF0COiqspLowMayq4rZXUiwioKL6TdjxG6q7iwg2bKChNuX3SqoizMriicU14im5XWPK3lKREV6RiwFhgj0EFiu66+yy5ktX2ZLIeg==
From: Mykyta Poturai <Mykyta_Poturai@epam.com>
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
CC: Mykyta Poturai <Mykyta_Poturai@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: [XEN PATCH 1/4] arm/gicv3: Move guest dist base
Thread-Topic: [XEN PATCH 1/4] arm/gicv3: Move guest dist base
Thread-Index: AQHaByvWbvp1hC9fbkyY87NUJCakNw==
Date: Wed, 25 Oct 2023 10:13:02 +0000
Message-ID: 
 <becf4d912d32b6888e040edd0fda4eece6cab66b.1698225630.git.mykyta_poturai@epam.com>
References: <cover.1698225630.git.mykyta_poturai@epam.com>
In-Reply-To: <cover.1698225630.git.mykyta_poturai@epam.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
x-ms-publictraffictype: Email
x-ms-traffictypediagnostic: VI1PR03MB3758:EE_|AS2PR03MB10033:EE_
x-ms-office365-filtering-correlation-id: 78184df4-22a2-4e2b-ff16-08dbd542f923
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: 
 lJiFcG3hkRHuSz7fKgTHdfy3Bhyz5zok2I5sOgwD49OtHmkmEuduCdymqebM0YfNbeHxF7nC3uPxO7HDpIbLxfe8+zMYro9OOtYuLVqd8Au+803EObtu4pBvF7ZYsU7mKVt6PJmU6qnc1DC7KlGsYjjdstXyJ+vz+AkOFe9SP6RGodX2+SIpgBsSJPaDOTaI07hDYRBmyIy7hESAyUWtofZb4+Oiq80pKwShfv/K56qgnlk2pAe5vBIWISrxH8uz2o8XYIUxDq7BFcEdrsaD3IrIVZQdF8VuKDA5FB8kEwST16CaftskcOkGOEzZDTsjgD+Nk9AAQ4a0wOgW9VFAnxakZzS61AwkSPYc+ytbNsS8jGphDc96jOCRShseJry4yU8OyXSmrXE6ZA7smnaFerb0SQeO7QsYGhnZHloMHndHhXJ972MOQSh53cQLARDrvR8d7G8DIyD34crODxcBvNNmxw9INafnJyiWp4P3peqzl5uINlsvEqfBf58nIrZfAK6+DNcSpSEyDewzhc7BK+0NNeV7S0jt3zuRnxck6WaP8UE1GOs4y79h0OdtqIMkNQ018/m5QQm1QeU8AqOD07/pcof0EziXJGKoq4vWN6AtgWdbdgJdSxSoit27jeIW
x-forefront-antispam-report: 
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VI1PR03MB3758.eurprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366004)(396003)(39860400002)(376002)(136003)(346002)(230922051799003)(64100799003)(451199024)(186009)(1800799009)(4744005)(86362001)(2906002)(91956017)(38100700002)(54906003)(41300700001)(66446008)(66476007)(122000001)(316002)(76116006)(66946007)(66556008)(6916009)(71200400001)(6506007)(6486002)(2616005)(107886003)(478600001)(6512007)(83380400001)(64756008)(4326008)(36756003)(5660300002)(8676002)(8936002)(26005)(38070700009);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: 
 =?iso-8859-1?Q?4ACwAGbD0+SZUTcCsXYghZbqmxOFflvXoITDfID+WWKUuhPG7KgalgXm2a?=
 =?iso-8859-1?Q?qdwuNCRIb0UmU21g5ad73JDFkhZo2V91vB7KO1MNWV+YpNvb7NRiEhRuiM?=
 =?iso-8859-1?Q?bAirV6db3MTf/e3vF82TX0uDq5+onxH+Bk2alGlkMkb0RfVtwsatMjawjK?=
 =?iso-8859-1?Q?Tr+6LDnqLoAlPKACVvJ24eKQWfdArer3/NMcKg7XJv2Egb0kTqdlN65Acz?=
 =?iso-8859-1?Q?zVBZKHcNWxLPLGBepgLJQF4kwo2zTPvblLFHJ0W1C+ja0r565vPAhHLFTO?=
 =?iso-8859-1?Q?g8eL1eiK4mmt3o+gusJcki7XM09EJou8mfq90WnYzVB9U/+Goizl19+4qQ?=
 =?iso-8859-1?Q?nt54kM8cXX9sQPkKknS19X6kLroe0ZMUlysHYZyD/itATe7y4QALLxJSyw?=
 =?iso-8859-1?Q?oJpkQuTEC0RV0FtREjJysTTSGQu+SNlWRxOH16JCn9/dFjA77Od7XJJ4CN?=
 =?iso-8859-1?Q?qS4USfFIEdoLVxuKJSvRT4Q1LM8W0W7z+kQjgcM5qhi3cwiBIghazXoyb/?=
 =?iso-8859-1?Q?O6cMFuyGV1rqPbxX6r7CTyufFU4Bli3oL0VzbnW8Z0UyCeuazeoQJV81MH?=
 =?iso-8859-1?Q?R7SnsPJwPeds4oyjjkWwL81JIIzbpO0wUZ1ORwKew77wA4WbVRS9hw2DnZ?=
 =?iso-8859-1?Q?IZlIb9VnMosB9xiTvWyDrQq+reRv+eT7b3YHN6DECtlLkB8hlhhtjL5P+4?=
 =?iso-8859-1?Q?5zBc/ZECDm75PScrv+Hc0MeWEOUaxMF3IvqayXG/GTH3JbqXiNGd0/ZQLL?=
 =?iso-8859-1?Q?FBoAM/PrEuWcC5CCrylt6nztUgc/x7XN64UgE4Ak3Cd03jalxh1kmq3yB+?=
 =?iso-8859-1?Q?s2ysyYpEdesdLDBFyhC/MF13rmTuJtGUHEpT2zdd1W8heqwMr3UI8Mnz7/?=
 =?iso-8859-1?Q?tLbZnSh77m0BCNJi1OVooFiNVqBeJqfUuU2R5duitUDjB2jsrX0toUYOhB?=
 =?iso-8859-1?Q?zF5+3IhZhvO5bry5gwvBPtg8PF7yitgjBGsSg5nYPLEXH8t5Jn8mk0lPzH?=
 =?iso-8859-1?Q?rZrP+C1VNfP19YMwLLrWQdjXlY0VHu7PBjynXDF2Y1FFPwH3ZLBhDxdJz2?=
 =?iso-8859-1?Q?uCvhzAMyvHGsetJgY3Ad8A2ciMlJcxEYhoxMhQP/0T/gi82NOIj74AUre1?=
 =?iso-8859-1?Q?uXIjtJaV1OO+7rFOACkgq3r0NHsMHqXeAEZJsrwjUfbdaHalLkstiUQ6xq?=
 =?iso-8859-1?Q?Z0aYzPJ0CXCgPG6YCfvkVRknXxDA7osPqPEMR31nYCuqnyvqJNnaksEaID?=
 =?iso-8859-1?Q?K2rPMKA+euDi8GvF1RCG+pts/xevrej+lrDy6em06IIxdWsnhyrC7QW8+4?=
 =?iso-8859-1?Q?kouvgbF4ZFHNJWqKj10rZ8x9EN+4TcG+5EGSTVDQ99U0xM7ZvoPVl1Biec?=
 =?iso-8859-1?Q?2IngjUSkkjzI86DeX5SpIHcQnzdTe08iH5Q/El+0E3JxS6DtEUkY2d/YC4?=
 =?iso-8859-1?Q?NWTX3gebOmaRzSJ48PBLNZTkyhBaXeg8BG0rM667iziuyRj00O0iCJYeDt?=
 =?iso-8859-1?Q?1+I4ZjT8B8o/NYIfmv0kdxM6U4bRTQb12PllxMz9ZRtMt+Zm8v9mg+77br?=
 =?iso-8859-1?Q?R93P9sOB4wuN+LkxCpl71qHw0P2eCg2Tg4qE5DjWH0g2E4fXfHnCsCbYLw?=
 =?iso-8859-1?Q?AXxFLTXxYGE97al7PAdjEVID/Fcl5hFcwmbZyrs7sj8yLdlItqHHY99g?=
 =?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: VI1PR03MB3758.eurprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 78184df4-22a2-4e2b-ff16-08dbd542f923
X-MS-Exchange-CrossTenant-originalarrivaltime: 25 Oct 2023 10:13:02.6989
 (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: H+U/CN3Tv0sLddPyspa1tIWAoQ27zVROljy8BsgJUOFJ6o/e98LXOtgeTL10CZLHy6cNIBBsJCvc7KubsKbDgQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS2PR03MB10033
X-Proofpoint-ORIG-GUID: Z4CaGzVSHw5uvsxng05LFZieJ1dfYGHC
X-Proofpoint-GUID: Z4CaGzVSHw5uvsxng05LFZieJ1dfYGHC
X-Proofpoint-Virus-Version: vendor=baseguard
 engine=ICAP:2.0.272,Aquarius:18.0.980,Hydra:6.0.619,FMLib:17.11.176.26
 definitions=2023-10-25_01,2023-10-25_01,2023-05-22_02
X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 mlxscore=0 spamscore=0
 impostorscore=0 lowpriorityscore=0 priorityscore=1501 malwarescore=0
 bulkscore=0 suspectscore=0 mlxlogscore=910 phishscore=0 adultscore=0
 clxscore=1015 classifier=spam adjust=0 reason=mlx scancount=1
 engine=8.12.0-2310170001 definitions=main-2310250088

New vgic code relies on lower address bits to calculate intid from
the address offset. 0x03001000 as DIST_BASE overlaps with
VGIC_ADDR_IRQ_MASK when bits_per_irq >=3D 64, breaking the intid calculatio=
n.
Move DIST_BASE to a safer location to fix this.

Signed-off-by: Mykyta Poturai <mykyta_poturai@epam.com>
---
 xen/include/public/arch-arm.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/xen/include/public/arch-arm.h b/xen/include/public/arch-arm.h
index a25e87dbda..71fa25b1d4 100644
--- a/xen/include/public/arch-arm.h
+++ b/xen/include/public/arch-arm.h
@@ -438,7 +438,7 @@ typedef uint64_t xen_callback_t;
 #define GUEST_GICC_SIZE   xen_mk_ullong(0x00002000)
=20
 /* vGIC v3 mappings */
-#define GUEST_GICV3_GICD_BASE      xen_mk_ullong(0x03001000)
+#define GUEST_GICV3_GICD_BASE      xen_mk_ullong(0x03000000)
 #define GUEST_GICV3_GICD_SIZE      xen_mk_ullong(0x00010000)
=20
 #define GUEST_GICV3_RDIST_REGIONS  1
--=20
2.34.1


From xen-devel-bounces@lists.xenproject.org Wed Oct 25 10:13:21 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 10:13:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622788.969924 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvat3-0008QU-UF; Wed, 25 Oct 2023 10:13:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622788.969924; Wed, 25 Oct 2023 10:13: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 1qvat3-0008QN-QP; Wed, 25 Oct 2023 10:13:17 +0000
Received: by outflank-mailman (input) for mailman id 622788;
 Wed, 25 Oct 2023 10:13: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=TDEh=GH=epam.com=prvs=46626b3b1e=mykyta_poturai@srs-se1.protection.inumbo.net>)
 id 1qvat2-0008QC-B7
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 10:13: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 1ae304a9-731f-11ee-9b0e-b553b5be7939;
 Wed, 25 Oct 2023 12:13:13 +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
 39P93PdS023707; Wed, 25 Oct 2023 10:13:06 GMT
Received: from eur04-db3-obe.outbound.protection.outlook.com
 (mail-db3eur04lp2051.outbound.protection.outlook.com [104.47.12.51])
 by mx0b-0039f301.pphosted.com (PPS) with ESMTPS id 3ty025r8hk-2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT);
 Wed, 25 Oct 2023 10:13:05 +0000
Received: from VI1PR03MB3758.eurprd03.prod.outlook.com (2603:10a6:803:33::29)
 by AS2PR03MB10033.eurprd03.prod.outlook.com (2603:10a6:20b:640::19)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.33; Wed, 25 Oct
 2023 10:13:03 +0000
Received: from VI1PR03MB3758.eurprd03.prod.outlook.com
 ([fe80::eecf:7ef0:b4b5:fc42]) by VI1PR03MB3758.eurprd03.prod.outlook.com
 ([fe80::eecf:7ef0:b4b5:fc42%4]) with mapi id 15.20.6907.032; Wed, 25 Oct 2023
 10: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>
X-Inumbo-ID: 1ae304a9-731f-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=OI/yEBc9ICcHZtZSCDNE9NnFUV7+4ZUksXhqs1C/fzVcaOiVRzbqKlSx4MZF6moQZ/e0ehZF5n+Kr0XvOIw9OX9+oWQNnYYXRePmFdETWUvhRcKbebxVmIBVLtycogI9mjBLMhVCAppgnRnCznQavkubCPL/W4UJi2AxVyWKQoh13nBQ61dWXla8o7VLDkksY/XiKHVguOdyLb76NRMZd0ioAoS6xc9sroqxIKMEosTtZwSFMauXCe00umcFXlEUx2rv86VnBeblrT5aktFTzQVo0v6X5MZwWogk0Zdy0gk2wwgY/dufiMeaoIbQTMupp5+aR132EABpjPv2rguPEA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=v0hasQCTewak0M/WsWi1DBsXRVxcba50BJ6CoGzHE18=;
 b=TTLUTjaC6izjrBpKTT1qAgelF/bxkEKzMJ+E9RmBA2B43fZMeO6Dig2X7iMwyg9ZiwFHhvRlm6zNO1n6vR8LzpYBRONupkNAfMmRqzMo1fYuQD/M8Dk68GpXcX64vA2VwtE0LCdS2dXDns82tWKkoc0IYcPUMhVx3Baf3Je47QI23hF4Z8UMENz0Pkyb+srSNlT8AzhfWtXhvrs8p8FEuUu2Lw29ssZvl/p/dHAYD+MlrnDv/FTc0mCr0ygRmNVA4DEqN23LvXaJiUhbgl60oN5QLuGz9Kd/289Kgu4uLZiKOS3fQwRdqvmouj1t7Jely99oHAMxyOazkquwRYij+g==
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=v0hasQCTewak0M/WsWi1DBsXRVxcba50BJ6CoGzHE18=;
 b=dFSk0z0uJsssQtZIMdtATWrqql8SK/ydTVXHKh7vWI6vgUzTllRcd7KAugRU0xh6UFYIu+4/JrVNIhNc3xc3zh+9DwfKFixOZwVXVJHaHa7/ulQqPMCE0hslMmbLXmd2thdREqatlheCZgcCJDmL69IAAawgWWnf5PkmBD1N6maEjj5rkj3+nkTdWZqyCSz5mOjfkLsWF2ipulfYQFbgNPhc++tNeb1vQsK/SK8e1bmEW+HrgaYQeGJAhkdnAngXajYD4GzIxcAr0D7s9LIbPFEadJcwTvTnPY8aLyuyLZll5avczHmvECxs+uJy9Hg10uRuq8oGPefQ3O8m12Xfeg==
From: Mykyta Poturai <Mykyta_Poturai@epam.com>
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
CC: Mykyta Poturai <Mykyta_Poturai@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: [XEN PATCH 2/4] arm/vgic: Move get/put irq to a wider scope
Thread-Topic: [XEN PATCH 2/4] arm/vgic: Move get/put irq to a wider scope
Thread-Index: AQHaByvWBiq1Qvud1EWAf+t452eM0w==
Date: Wed, 25 Oct 2023 10:13:02 +0000
Message-ID: 
 <89ca664d00a3cdcf3f68d8ae0c4a6c7b76965120.1698225630.git.mykyta_poturai@epam.com>
References: <cover.1698225630.git.mykyta_poturai@epam.com>
In-Reply-To: <cover.1698225630.git.mykyta_poturai@epam.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
x-ms-publictraffictype: Email
x-ms-traffictypediagnostic: VI1PR03MB3758:EE_|AS2PR03MB10033:EE_
x-ms-office365-filtering-correlation-id: 1768e6df-5532-41d1-37a9-08dbd542f95d
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: 
 xkI/K//eG/Ws6WAmB+DVsNNatEmtD+QTDO2mML5hSVZlTHxmXEbmSEnonyybKLH9etescKh/W+0BLDaVJXUljptB0rr80IIhroq9n6sjbSBthNGRENj5CLCIy7pZZTpWrsz6baaLE3UKWebAxNqc4x+B1TMuraJnGfyHIRvtLvrNZBbte8cCLqyH7OQB3+llZjTFY4a7MwuYcXpa7WEIyq5Mh8bXIeUFojLTU22if6n0tKuW4bw+TxMd3qp1xViuHHCnZAlzcx1ZIo3o472nZ0cN2JzsfDCwKV8aucZbCjb5YueF/88/ASCA+bNfJzqoFRBHgYfs1/ZTGxPpL69MzQOyd9rVPl8wOYajh4JPTrV+um3BHb+wTpWwbKnlCSX04iYDjgdPw8aHCozKnb2pdldaNmfjhF4h8U6ptg+TRh4JgJ5ODyTbEcDqwJmB/GVUbEV9Thd+iQbuGtwA/i4HeV5RtiyAOdmX2zNp377G6MewrmT9aLanJqknAGgrQ1Bw93/epaZV33g91mCRGcfz0iw+1FL4ttBQldayT36240CFBdAhhHOLu/UVkQkQ/mFm8t8KfT+Ze6IELfBa69/cFVVMP0htRmxn3VCg6cYq0pcQLPAVwBqLoHorRZmy7cqU
x-forefront-antispam-report: 
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VI1PR03MB3758.eurprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366004)(396003)(39860400002)(376002)(136003)(346002)(230922051799003)(64100799003)(451199024)(186009)(1800799009)(86362001)(2906002)(91956017)(38100700002)(54906003)(41300700001)(66446008)(66476007)(122000001)(316002)(76116006)(66946007)(66556008)(6916009)(71200400001)(6506007)(6486002)(2616005)(107886003)(478600001)(6512007)(83380400001)(64756008)(4326008)(36756003)(5660300002)(8676002)(8936002)(26005)(38070700009);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: 
 =?iso-8859-1?Q?ns5+Q8kwzju1fo0QNqfGU1qNqpEa6FZGcj2UVaqDX2iAmjVSBgHHsA50/R?=
 =?iso-8859-1?Q?4HBOKKpLFs9CLUD081eTIuu/aEyLlBrg2t0dnDEzaJyrRXpDDm0gjphucL?=
 =?iso-8859-1?Q?6W50w3ji2ieY7wWxRHBOtDlaY0F+sNO/OLWIUrqfBJAXaEDmdA+uPBrmvq?=
 =?iso-8859-1?Q?c9X1Bb5kgMK+s7tRwqr5RzHgmFeTohwM2N2IAgO196oaCYfsGn7LNjyhB2?=
 =?iso-8859-1?Q?0077pJU7YuaqPwSLdiSX4gamPwF3RyCMqPIJHzrt9kiLoUz3r7cVuQNwLV?=
 =?iso-8859-1?Q?SWaYiOF7u+mjZrahYLBu5LpmCzIDf87wFER3On5nu6sEVJLCcdYi7UGkME?=
 =?iso-8859-1?Q?luN8VJT0FwMxByIH3rl4apMmTj+ZVMx6m9d3kTSyMAaroooYM/l11IIvsL?=
 =?iso-8859-1?Q?sqmnepKmTyH9ANVe9xRQU4/9JRYM5CO2ZchWk8V1EORMCVB51JFAnsm1js?=
 =?iso-8859-1?Q?HylTcGOorhBrcfL4aUmm0AzEO2V2zQ6FYCqyIMgg9VTNiYVDdkGDL8uChx?=
 =?iso-8859-1?Q?aetZW1iKZmUnPKqbv1i+klJnsYGHhYEFEznMn/uH9ei069jbp9vwcOo/7w?=
 =?iso-8859-1?Q?CED+dlw/KcK9VSKjhQZU1nqAM6q95ca3/slyDaMyYrai4ssOTJvUylwCqp?=
 =?iso-8859-1?Q?dPwOXEfuZ0xwxKFtRqk+xMyQFaI1qun9HVTm7jgbMD/CGhR7IP9r9Olbwl?=
 =?iso-8859-1?Q?4t9y06shYuDlJQwjOWupqcH8ACfM1nVXwdKizzfri62hTrIr/Dpn0nB9s4?=
 =?iso-8859-1?Q?kEln1Yl1pYOszkauDy4BxMA8BTIwobWIAqGGRGg2iAaD1snXhBkLlycWgv?=
 =?iso-8859-1?Q?89860GiX7H2efiHHa6W04bcqjDXlJkot18oWFQq8GZ3R8CxkfGJL4Z67oS?=
 =?iso-8859-1?Q?mHWpEptfTXEBw8C6YG5NZdKEhBXyCewoyGt5LAGbg7zINKGjuO75ic4lQL?=
 =?iso-8859-1?Q?dj45rVFxbjrd4vmdabFEJ2ynEfRks4P+gTvuzSva2sMZtVab8OUKXjwhPd?=
 =?iso-8859-1?Q?7sFb/qKzIvvl69HSV4+hJRgrHjCAvGIOMcTAD+M4DARqjmeUAc2krWrhRf?=
 =?iso-8859-1?Q?HLxQahyt8QYBJI5HhdQLpWLYK5/MxlKQjD9L+5XSj5cguoKMSgn6cQo91s?=
 =?iso-8859-1?Q?nze2gexXucAkXwYPUE/auwAzBxdfl7XMGYwmI+De+5gVrmHCerKXVqLXRl?=
 =?iso-8859-1?Q?4WiQi8YHnhQA2ibBccfjSol07MNU8n0DRTkbFa1fkA/P7x78ZYxymFrYoy?=
 =?iso-8859-1?Q?oY1iw/qUaIZEA/sjZqFMuVXExoaHvlT54V+9hQMPJKFinBdXUalcCUBnTg?=
 =?iso-8859-1?Q?FWoZpLJXzJWSR9cLR194UsuyAP4gO/NsCAhCtym4pyQPU7h7WtWDMSS1iN?=
 =?iso-8859-1?Q?2y0GmoaXK6I/F1WziDa6VCiC/gSqle0vnh69NXejc1tvs7LQxsIn+v9y1L?=
 =?iso-8859-1?Q?TWXotbEHRe6ADHtgOGvfWsdPKzfMjl1DoavnFicYg1w9hhmpooRsJD27WP?=
 =?iso-8859-1?Q?cMwAif7W825SotMUi+0pOf1RcaEB5ItlaNuDeqNeMheFNfp8/q6Y+yk7Ll?=
 =?iso-8859-1?Q?bP7Ht+uUfkEV83aGFdM8lhcEewG7kWgvfE7oMzsFt3uot5Bv8E9bWupWuY?=
 =?iso-8859-1?Q?ev43mkLXQdZbHoAFcBnH+yxrNkseerrZEcyCu40oyFcrjnTfeqEn9oQw?=
 =?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: VI1PR03MB3758.eurprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 1768e6df-5532-41d1-37a9-08dbd542f95d
X-MS-Exchange-CrossTenant-originalarrivaltime: 25 Oct 2023 10:13:02.9566
 (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: 6JAuyBJS03iusiJwsRIbRlwPfk9sKsMOQmbi24bAR2EMRKWxeEccLanpdo9bcO5a85toJr8nVcr/2woyE+Abpg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS2PR03MB10033
X-Proofpoint-ORIG-GUID: azudyZhk4km5IehQ_6g_Y1jADpHND25B
X-Proofpoint-GUID: azudyZhk4km5IehQ_6g_Y1jADpHND25B
X-Proofpoint-Virus-Version: vendor=baseguard
 engine=ICAP:2.0.272,Aquarius:18.0.980,Hydra:6.0.619,FMLib:17.11.176.26
 definitions=2023-10-25_01,2023-10-25_01,2023-05-22_02
X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 mlxscore=0 spamscore=0
 impostorscore=0 lowpriorityscore=0 priorityscore=1501 malwarescore=0
 bulkscore=0 suspectscore=0 mlxlogscore=768 phishscore=0 adultscore=0
 clxscore=1015 classifier=spam adjust=0 reason=mlx scancount=1
 engine=8.12.0-2310170001 definitions=main-2310250088

We will need GICv3 code to access get/put irq to inject LPIs for new
VGIC similar to how the old one uses irq_to_pending now. So move
get/put irq to the same header file.

Signed-off-by: Mykyta Poturai <mykyta_poturai@epam.com>
---
 xen/arch/arm/include/asm/vgic.h | 6 ++++++
 xen/arch/arm/vgic/vgic.h        | 3 ---
 2 files changed, 6 insertions(+), 3 deletions(-)

diff --git a/xen/arch/arm/include/asm/vgic.h b/xen/arch/arm/include/asm/vgi=
c.h
index 922779ce14..7216ce82b7 100644
--- a/xen/arch/arm/include/asm/vgic.h
+++ b/xen/arch/arm/include/asm/vgic.h
@@ -387,6 +387,12 @@ void vgic_sync_from_lrs(struct vcpu *v);
=20
 int vgic_vcpu_pending_irq(struct vcpu *v);
=20
+#ifdef CONFIG_NEW_VGIC
+struct vgic_irq *vgic_get_irq(struct domain *d, struct vcpu *vcpu,
+                              uint32_t intid);
+void vgic_put_irq(struct domain *d, struct vgic_irq *irq);
+#endif
+
 #endif /* __ASM_ARM_VGIC_H__ */
=20
 /*
diff --git a/xen/arch/arm/vgic/vgic.h b/xen/arch/arm/vgic/vgic.h
index 534b24bcd3..c6bc3509a5 100644
--- a/xen/arch/arm/vgic/vgic.h
+++ b/xen/arch/arm/vgic/vgic.h
@@ -45,9 +45,6 @@ static inline bool vgic_irq_is_mapped_level(struct vgic_i=
rq *irq)
     return irq->config =3D=3D VGIC_CONFIG_LEVEL && irq->hw;
 }
=20
-struct vgic_irq *vgic_get_irq(struct domain *d, struct vcpu *vcpu,
-                              uint32_t intid);
-void vgic_put_irq(struct domain *d, struct vgic_irq *irq);
 void vgic_queue_irq_unlock(struct domain *d, struct vgic_irq *irq,
                            unsigned long flags);
 void vgic_kick_vcpus(struct domain *d);
--=20
2.34.1


From xen-devel-bounces@lists.xenproject.org Wed Oct 25 10:13:21 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 10:13:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622789.969930 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvat4-0008Tt-8u; Wed, 25 Oct 2023 10:13:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622789.969930; Wed, 25 Oct 2023 10:13: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 1qvat4-0008Tj-2i; Wed, 25 Oct 2023 10:13:18 +0000
Received: by outflank-mailman (input) for mailman id 622789;
 Wed, 25 Oct 2023 10:13: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=TDEh=GH=epam.com=prvs=46626b3b1e=mykyta_poturai@srs-se1.protection.inumbo.net>)
 id 1qvat2-0008QC-V4
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 10:13: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 1bb9725e-731f-11ee-9b0e-b553b5be7939;
 Wed, 25 Oct 2023 12:13:14 +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 39P5WSp1021904;
 Wed, 25 Oct 2023 10:13:01 GMT
Received: from eur04-db3-obe.outbound.protection.outlook.com
 (mail-db3eur04lp2051.outbound.protection.outlook.com [104.47.12.51])
 by mx0b-0039f301.pphosted.com (PPS) with ESMTPS id 3txdmxk51v-1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT);
 Wed, 25 Oct 2023 10:13:01 +0000
Received: from VI1PR03MB3758.eurprd03.prod.outlook.com (2603:10a6:803:33::29)
 by AS2PR03MB10033.eurprd03.prod.outlook.com (2603:10a6:20b:640::19)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.33; Wed, 25 Oct
 2023 10:12:58 +0000
Received: from VI1PR03MB3758.eurprd03.prod.outlook.com
 ([fe80::eecf:7ef0:b4b5:fc42]) by VI1PR03MB3758.eurprd03.prod.outlook.com
 ([fe80::eecf:7ef0:b4b5:fc42%4]) with mapi id 15.20.6907.032; Wed, 25 Oct 2023
 10:12: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: 1bb9725e-731f-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=DrZ6p7qHNL4NiJKNJ5/HCCnxFYkBJ0MOMja801BxMy2sjejqRmk272xomF+4lJ/PyZUs+iGYRYVW7NzrnUTswWIBhJCNElR++DruqUswE2RuOq2ycvNEJse9YvDJWubDdUkn9HTw1BNJDJIPnCczEGGJ7Pc0ye0vdFVhzM3Km5W0dea1T1eAYCN1vCRjl1Tb048AyYmTn0LxQ/xIIAFK7IYoaEkihT+F1a/7MnC7aG+75n1LSNOwkOcVqbTRf8FeMYDjIsrTVjKn8lQ46gF6a/8qM7F/V+gmXc9JViTuFzxfgkEc14TYK6FfbKinY2TbF7w7CL+iDjvl6/TMUwYdFg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=Hr0rMAO4qbwLSU58X19M+biIMWvRcuWcrbTqZFk1N7A=;
 b=IaU2xDk2bx+KO9PQPingGPbSQRsNbmXft5JRwva7rj4fW9LTfWngmQUT6rphnZRWXChk1TYz2QN0yibIJVPbYzpWsLR23JPNpq4e6wXilR+wEqXWW7+glI4U5NccP9Vg/7TBUMiXhcZDL47jYnKXjRACgfW+bjv7q0MnoIxuo194hjDUe1EWkICswO5dH+7cgTbpfSeug3x/eoiJKXrMdNZjcM7qZQCTtbx6NCDe+zEdtuKBgIYmalMxjFeJsYlm0IDz9lFJBNrvPWrF8Ujb347px4Cg0AoEqGYkH38Dw16j7uye4Q5ZWrYO7ymBrEV/YOkgsE6wOOsQIgEByYvRXQ==
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=Hr0rMAO4qbwLSU58X19M+biIMWvRcuWcrbTqZFk1N7A=;
 b=HOCV4VKeFdpOur0WCtfkWNAubDH2i4+Iw+xWtP2OJzN+OhnDe8L1T7/gFfV9N/twZTXp4FuxAsIK2dF+Id7S/d/V6RZ9WM0DkUL5Xmfb19EjRCvUeRTxsQXpmyq0KF/N+TCb8ManQIQlcNW1npy2WpEN5CaPyjN5gaN2xmYXMWwj29btyAjStuBi0AO/yzgvawCJCc6S4qESSsFnCUoJ8Dd2+RkMGuuXKiE0VB06f+TZ/y5L1bKdeuI4Ktmns0WrQJRxMVHXk+9Hu4324AyNOS9RWMCrLGinrb26xdC8T/npJTk7J4W9RSfxmGnwdKSdtdhHyyaS94mWULXipC7Mgg==
From: Mykyta Poturai <Mykyta_Poturai@epam.com>
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
CC: Mykyta Poturai <Mykyta_Poturai@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: [XEN PATCH 0/4] arm: Add GICv3 support to the New VGIC
Thread-Topic: [XEN PATCH 0/4] arm: Add GICv3 support to the New VGIC
Thread-Index: AQHaByvTuljbytuX4USmsHR+sMhC6g==
Date: Wed, 25 Oct 2023 10:12:57 +0000
Message-ID: <cover.1698225630.git.mykyta_poturai@epam.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
x-ms-publictraffictype: Email
x-ms-traffictypediagnostic: VI1PR03MB3758:EE_|AS2PR03MB10033:EE_
x-ms-office365-filtering-correlation-id: dd5f1333-30f0-4bdf-0fd4-08dbd542f648
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: 
 YmwGoQYGjxOXkDB3aTy0BFm8RmcqOlkcN+RpYzW4iLpVUE2fE+KLGX+axQ7eVthuaBy+hY6NQyRPESLA9/JGVALc+kJU1PASiFSfX9jU2Ek/srMG/+reissOlNuWlWOMfR340x4rZSAtw8efk/PrMePHPfJyD+C3cCf7fDJbp+klYil48fC+zGwOEFMDxgk25A/cwSvBu5fUxtgKWVX/DwuOGLgmbv/8T/j7bsa+zWs6k8KTWn54mx1ktZoFYVZzhBD6UwP3PYkKHekYpDW6h77bFKT7RDmD26moLakVP27JzLEIyxwDVz20NZI1Zt0j0KPbUSNjOkKMtOE7tW2yeZMhIkSKjnDwhFcnkfJ7YX+/dhJxFz1faRFXnanwX5JqasDf94X3QGvkWFUC48UXMdlITplwelBCM54T6ulhfLyvQ+eFXIUpBP2D0FS5nZ11veTc99iGIUVRM8CHqlzEg1A1c3uGuc7Dm/J11GPqxvzW6ZziNVbt9pYt8kBhjJxWxu4Bl1cMrF4ffokqaIStgJ5CbgK3noOFK7xRjagwPfjRyi4bg0EYFtr3wJMeouT5kdRAm5LYDe7CnEnX81XpQzjb8vRjrg5Z3oMERYf92DIPozXqQi7ET2ucPn+XGv1p
x-forefront-antispam-report: 
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VI1PR03MB3758.eurprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366004)(396003)(39860400002)(376002)(136003)(346002)(230922051799003)(64100799003)(451199024)(186009)(1800799009)(86362001)(2906002)(91956017)(38100700002)(54906003)(41300700001)(66446008)(66476007)(122000001)(316002)(76116006)(66946007)(66556008)(6916009)(71200400001)(6506007)(6486002)(2616005)(107886003)(478600001)(6512007)(83380400001)(64756008)(4326008)(36756003)(5660300002)(8676002)(8936002)(26005)(38070700009);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: 
 =?iso-8859-1?Q?CoX8i8jd+8tdw8iY7IfMuoLXXnY6M0U93I/HnJSSEVB/4chxnfxnlvlE8m?=
 =?iso-8859-1?Q?EBZINlfquwV80Z1eK+j3DDd+SrsRwbo/CoZQoW8VlZfsDbPqaNeZokIOA3?=
 =?iso-8859-1?Q?oi305FUPvmCuVrVBV2A19hZoUjHzkceN/B9KlHaOJ399JaL3tkMHRb2e79?=
 =?iso-8859-1?Q?dIzoOYs1MnxH6Cc1TrqFvqJwdMtX794Fji6EZ6Zjrz//XvRvoWUQuMKFAZ?=
 =?iso-8859-1?Q?stzjkaNrk8S7T5czka2oLS4pzLEpbUSwl4i/MvsXIvdUAWIIZ/b8pHQZXv?=
 =?iso-8859-1?Q?iFH4FyhmHoJUl0hH3hSNU+UzKVzjqKBV5acJGNFdJAkq9Vly9Jyokmt4SB?=
 =?iso-8859-1?Q?5IgIT5E1P5ySvagufqbzw1FI7N3IEVBZcelaFjOFNhthiAVeK9x+MtFJzm?=
 =?iso-8859-1?Q?Im0mTnnJ7QtjtqcnjAR+9ic/hQcnso+Z6Fe9HePHXlTR0DDElZaxIQyGVQ?=
 =?iso-8859-1?Q?O17CTRvnFLHrK7QgcXPJR9uBsDkpvqEiria3jBSzrLXZE51z+HVISHLyA2?=
 =?iso-8859-1?Q?UGb3JNqmFjNBvo6Wayb0hVYTz9Stt6PzL4NVn0Aig5SSx34hW+oDwSArpo?=
 =?iso-8859-1?Q?ksPbUpqOBb1lQ3MxZ5gOFFO9nvbiGaLm4bQypBWQiuToacWCj6vmMFG6rL?=
 =?iso-8859-1?Q?bHwlbRKDmUm1yiqmszmWCzwGA3irCJxMzVss+ekEyvp0ntndA1rxWc5iyB?=
 =?iso-8859-1?Q?5yCV6Of6Z0a9c3S14/Rk74LH5mbdL8iQ14Ii95Yu7k7FtwlRLLYGlmIpFH?=
 =?iso-8859-1?Q?J8t5kahiJ+o2kxu3aAH9T4uu5Ea1S/gLlow5TYjebdu3PMcZavCMwT96Wz?=
 =?iso-8859-1?Q?9ydmaUvsO7ss0VUcjevxAFRg4DkBTyfB1gZkE7zQGolg/ombkatCWycZ8X?=
 =?iso-8859-1?Q?WK+T0N3V9DnA41yTIa6XhB/tnZx/ikuDSl827Zrjwptf8MpfcgTvPOc8nh?=
 =?iso-8859-1?Q?ImFlIjzMavUCaY7gUSoi4POCIu3+towcmc+l6T4pPmhxkQkH4zjb6qw6R5?=
 =?iso-8859-1?Q?G0Y0zB5yT2jasgbBryp3R0zy+1i2DpEzv+rzNWHvD5gyGbsSzZK3TO4g+j?=
 =?iso-8859-1?Q?YIvw7LjBLmMhDf+/v+F+Q9PqdOSJSwkgCate1aW5H4Bwlxo8Z/cqIPEZVb?=
 =?iso-8859-1?Q?1XM1twV72O1h9lgL+oz/xH92nqef7oGTi/2fAv7AgcQhY+YjzcxQNqMGZK?=
 =?iso-8859-1?Q?24MAj6yNWLmjhgUexY4dipD1VCRLv7pa7L27QNir7qu9ByV68U6dzV6x1P?=
 =?iso-8859-1?Q?MSAGugIRmH5glSVjgFfwOh2SDtClsaq7CcE7M8wg7tyKrWqRYa1qpJnHGV?=
 =?iso-8859-1?Q?X201OwAJivu6Yoy3Xz9KA+PYNl1DOl99mu0a14S6B16nX7//K4qj7m82Rb?=
 =?iso-8859-1?Q?8q/qKSlJO7vfIAex8mvNUyFIzXBqQJcJW8v5gY28SPEnmUYGLsndY+dWaw?=
 =?iso-8859-1?Q?h9ITXOD9nD5FBoR3mlClD2pEwbnvqPTYYbgACRjacGDB6LOuT0TUCk4lK0?=
 =?iso-8859-1?Q?nMBp5lwy9ZLh1oEBdQS7dGlOJUaLpLFFuMuNP26F+QOqis8M6NwpMZvfIQ?=
 =?iso-8859-1?Q?wYPkheg/25F7FMrsVwpppj3SR/cyl9UlvGI3y8pG7wMf6eWjOlfXdrpteG?=
 =?iso-8859-1?Q?szKP5z2ZY5bOAn8SJ+Ji8uBJW/NM81YFA62RS2RMBDY58hEtPOE40umQ?=
 =?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: VI1PR03MB3758.eurprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: dd5f1333-30f0-4bdf-0fd4-08dbd542f648
X-MS-Exchange-CrossTenant-originalarrivaltime: 25 Oct 2023 10:12:57.9385
 (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: hBBajdXTuDqYpPPx5tFSvesxYg1kKPKVi+T/SdxzhInLPfuGh3Lh55knNLSIhuPUXAiaPF/DGrgJPsOPEs4vlA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS2PR03MB10033
X-Proofpoint-ORIG-GUID: ol57qDdlYoAMWelcfDiJ-LRRhRCji0cC
X-Proofpoint-GUID: ol57qDdlYoAMWelcfDiJ-LRRhRCji0cC
X-Proofpoint-Virus-Version: vendor=baseguard
 engine=ICAP:2.0.272,Aquarius:18.0.980,Hydra:6.0.619,FMLib:17.11.176.26
 definitions=2023-10-25_01,2023-10-25_01,2023-05-22_02
X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 mlxlogscore=396 bulkscore=0
 clxscore=1011 mlxscore=0 impostorscore=0 malwarescore=0 suspectscore=0
 spamscore=0 priorityscore=1501 phishscore=0 lowpriorityscore=0
 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1
 engine=8.12.0-2310170001 definitions=main-2310250088

Hi All.

This patch aims to add GICv3 support to the New VGIC. It adds support for
the GICv3 distributor, redistributor, sysreg and ITS interfaces. This will
allow Xen to emulate level-triggered interrupts with GICVb3 and will make
the NEW_VGIC more complete and usable.

The bulk of the code is taken from the Linux Kernel v6.0 and adapted to the
existing Xen codebase.

For the NEW_VGIC config the !GIC_V3 dependency is removed.
For the HAS_ITS config the deprecated flag is removed and NEW_VGIC dependen=
cy
is added.

Original non-ported changes are:
- Moving the GICv3 distributor base to fix the new_vgic's intid calculation=
.
- Moving the get/put irq to a wider scope to properly integrate the ITS.

Mykyta Poturai (4):
  arm/gicv3: Move guest dist base
  arm/vgic: Move get/put irq to a wider scope
  arm/new vgic: Add GICv3 support for NEW VGIC
  arm/new vgic: Add ITS support to NEW_VGIC

 xen/arch/arm/Kconfig                   |    5 +-
 xen/arch/arm/domain_build.c            |   23 +-
 xen/arch/arm/gic-v3-its.c              |   28 +
 xen/arch/arm/gic-v3-lpi.c              |   11 +
 xen/arch/arm/gic-v3.c                  |    9 +
 xen/arch/arm/include/asm/gic_v3_defs.h |   13 +-
 xen/arch/arm/include/asm/gic_v3_its.h  |   82 +
 xen/arch/arm/include/asm/new_vgic.h    |   96 +-
 xen/arch/arm/include/asm/vgic.h        |    6 +
 xen/arch/arm/vgic/Makefile             |    3 +
 xen/arch/arm/vgic/vgic-init.c          |   19 +-
 xen/arch/arm/vgic/vgic-its.c           | 1945 ++++++++++++++++++++++++
 xen/arch/arm/vgic/vgic-mmio-v3.c       | 1027 +++++++++++++
 xen/arch/arm/vgic/vgic-mmio.c          |   24 +
 xen/arch/arm/vgic/vgic-mmio.h          |   21 +
 xen/arch/arm/vgic/vgic-v3.c            |  383 +++++
 xen/arch/arm/vgic/vgic.c               |   60 +-
 xen/arch/arm/vgic/vgic.h               |   51 +-
 xen/include/public/arch-arm.h          |    2 +-
 19 files changed, 3774 insertions(+), 34 deletions(-)
 create mode 100644 xen/arch/arm/vgic/vgic-its.c
 create mode 100644 xen/arch/arm/vgic/vgic-mmio-v3.c
 create mode 100644 xen/arch/arm/vgic/vgic-v3.c

--=20
2.34.1


From xen-devel-bounces@lists.xenproject.org Wed Oct 25 10:13:33 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 10:13:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622791.969954 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvatI-00017L-Vv; Wed, 25 Oct 2023 10:13:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622791.969954; Wed, 25 Oct 2023 10:13: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 1qvatI-000174-Q2; Wed, 25 Oct 2023 10:13:32 +0000
Received: by outflank-mailman (input) for mailman id 622791;
 Wed, 25 Oct 2023 10:13: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=TDEh=GH=epam.com=prvs=46626b3b1e=mykyta_poturai@srs-se1.protection.inumbo.net>)
 id 1qvatH-0008QC-4A
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 10:13:31 +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 22d2d317-731f-11ee-9b0e-b553b5be7939;
 Wed, 25 Oct 2023 12:13:27 +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
 39P6fZXo019492; Wed, 25 Oct 2023 10:13:11 GMT
Received: from eur04-db3-obe.outbound.protection.outlook.com
 (mail-db3eur04lp2050.outbound.protection.outlook.com [104.47.12.50])
 by mx0a-0039f301.pphosted.com (PPS) with ESMTPS id 3txjfcj00w-2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT);
 Wed, 25 Oct 2023 10:13:10 +0000
Received: from VI1PR03MB3758.eurprd03.prod.outlook.com (2603:10a6:803:33::29)
 by PAVPR03MB9229.eurprd03.prod.outlook.com (2603:10a6:102:32a::9)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.29; Wed, 25 Oct
 2023 10:13:04 +0000
Received: from VI1PR03MB3758.eurprd03.prod.outlook.com
 ([fe80::eecf:7ef0:b4b5:fc42]) by VI1PR03MB3758.eurprd03.prod.outlook.com
 ([fe80::eecf:7ef0:b4b5:fc42%4]) with mapi id 15.20.6907.032; Wed, 25 Oct 2023
 10:13: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: 22d2d317-731f-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=cJ/s+vwZEosIM9HcGBTK9ncyjsIgJuhyILTZOku4KohGD70Ii2ZAJ8YgxZjwFTVcC9+cq5yxRXjDGzHZ+27bNPzTpnTFaJYNN+SQTILp3vy0JAQVxyGU7pjO76HgWduI/wxRp8ly6sbcvK23jRZcBbuo7cKFaKRl3nbcFy/KxlbfB5Dojvn4We7moIcEzKkN+kGeaMPnQTdcotryia7kSC8Y8MmYQaKF7XHhHAMkbkEDdmcYCZvdy48+WurcMXA2yUXjTCkhXUO8bdAOIhzx6+ZuleEE/NzS67KHndN1EopxREvzMvXvhNO8ey4b4lPqtyRF90bAAKYeYXmQkiSt4g==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=idh2l0lCB+ZtXO+X71x2VXJKcfF7jtJl8qoNF4TpP6Y=;
 b=Crub1awhPIDemH0utATXrhZlD9qTVRvziH/xnzf/OU76FLAs8/0rlLBlNBMYXJmSHINZJ6zwEq6HUZte8xXvGogf2K/EkD8zlFIK0gJPvwkKsDByrKNvmNHaEfAqFXrWGBDYy3XTxrf0WiP9jWOLSMIGqtiXt9EL9biIvdTnoxvWHK619PEGdvCU5lrRayGkZ9b5TEyruoqoJzVnWYg9RmDqbrjBhWOcPUkQI7FqQtMfPp5jWQOy8TyZAWLWbunUBk/UnyBOZBTSwT2m3WtPiFLxEwGRfrIokmUKX7WeMxzBQwacPCRRKeORqcSvxYsb8kiWoXx3byEkdBqKtm3/yA==
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=idh2l0lCB+ZtXO+X71x2VXJKcfF7jtJl8qoNF4TpP6Y=;
 b=j4yG0CYeqpkF1KlJo00YadTqDLsjSRI6let5px7Xrtl6QTAYHLfp5eug8WMeC9kFpBpl0lGjMo+Xur9KcBbMnf/ONQhHkwoAafSfn5WtCSXMfbHfdVgkbdOHkL208rdGtSgj9ns6iIdvcOO1uLNpe3plymSxa4zmMu64lOwOsVb8EvX66oQ/BVzF7u3Nx7XJPVAPKwwsLbbpOb7Z80TUx3yJG5N2K9zM/NvxZjJLComRsqFD5ozXGzQrva1vT9f78JESaRBcDqf8Etw19KAdatcxsDL83vkRL5S5wRGavR+gJgdfLRqfVslX97nbVdcbxDdkcqYdf701iKVGGXebxA==
From: Mykyta Poturai <Mykyta_Poturai@epam.com>
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
CC: Mykyta Poturai <Mykyta_Poturai@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: [XEN PATCH 4/4] arm/new vgic: Add ITS support to NEW_VGIC
Thread-Topic: [XEN PATCH 4/4] arm/new vgic: Add ITS support to NEW_VGIC
Thread-Index: AQHaByvXavefleIylUux0UehXzD5Xg==
Date: Wed, 25 Oct 2023 10:13:03 +0000
Message-ID: 
 <b0b41f2065002e4cf7795ebfbf9f84624c2f150d.1698225630.git.mykyta_poturai@epam.com>
References: <cover.1698225630.git.mykyta_poturai@epam.com>
In-Reply-To: <cover.1698225630.git.mykyta_poturai@epam.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
x-ms-publictraffictype: Email
x-ms-traffictypediagnostic: VI1PR03MB3758:EE_|PAVPR03MB9229:EE_
x-ms-office365-filtering-correlation-id: 1de5ebee-d208-4147-1ba1-08dbd542fa04
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: 
 V9ewMx8Bmi6Gua1s91TiPumIC41YZ/1+qC2eab//2Jh9E2+c7tQ2gLrK33tlChSc0oGR/hsePa9z+E4xWzQPx56eNnQQuMOEYSjXzS7uokeVOz9cpNv3Tgrc49Fw9p1zz5t5GK/ZqiWAkwYme4kKddFQjkci3kpmLbuAWXL20xoBbJHAnwNJQaXi6B88pQUMwsNEfMEjhSxKQrF1xvSsSQQ9k0K1gWofDxY3tplI6auQ9S20n9dGXOnlE4hKXS75AW0eR1HmnlkVMr67wr7yEFwbe48RZuOMB6jTg75U81fJ6VxtGwYKClQ9nUT6SwGyItbBIM2VL91gTcUy2MvnDfM8K7Pru2ZHZ2ikAZCr0pHVw/7wyvcWulCkgHJ43CByMQqkrAOr7aWZ6p0JMhsc00iI5LRSybz7kD3gt1Jgw22jssnlWDq5jHGQmu1eQkwPNAaUhn98nJb8RDwR0O5S1nfT82UuMZLnSkvCbld3xWvLwXcCsHoDpq+MetSyzUbe6b7sHyrCihgd4ZeFN3QC7IKXP5VTN7fONDdaR5fir3+Nqhat5R3Mq8cE/r4iHRYZ/cxIMbhhnqHzZpjl4rL/blVcQFNjsVd77hu241YFzqBVBxfbckQGWwFTRgqBwfHzt2TIMadfRRheZ6OZp1+cWQ==
x-forefront-antispam-report: 
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VI1PR03MB3758.eurprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(136003)(396003)(39860400002)(366004)(376002)(230922051799003)(64100799003)(1800799009)(186009)(451199024)(38070700009)(26005)(66899024)(38100700002)(2906002)(30864003)(41300700001)(86362001)(5660300002)(122000001)(8676002)(8936002)(36756003)(4326008)(2616005)(478600001)(6916009)(66556008)(107886003)(71200400001)(6506007)(64756008)(54906003)(91956017)(316002)(66476007)(76116006)(66946007)(66446008)(83380400001)(966005)(6486002)(6512007)(2004002)(559001)(579004)(309714004);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: 
 =?iso-8859-1?Q?OWvUR6s74fJ82mYzLjRIZLo1eGI3ZxLoHtnldELvAm5DMjPE/MJwg891xn?=
 =?iso-8859-1?Q?gl1K3Y1/7wCTO/SrMDBWwUbELyAcJHUeqzCWLeWcO+5yILibKqSdaM/ibK?=
 =?iso-8859-1?Q?Ms2cvGVCZaC3aF6lWC8ztz4nEy131lv7LSTnej8eFzt5rl9EPuMg+9YtQa?=
 =?iso-8859-1?Q?Y58rM2O5J82sQIsER23XMdj0w+TI+NLZuxy3/Fp/Fv0KLDD4IdqA/0e0zJ?=
 =?iso-8859-1?Q?iHNfvd6hk+wQEF00y5DkEx9PdZNs8/UZf9GKA/I+1h4rRohySWcJml3jr9?=
 =?iso-8859-1?Q?tZjoX9Ka+Xtwj6Ekc7nLNJlqI7zKWsFUc5KlIErNyEs1uTFAEONbIu5hcU?=
 =?iso-8859-1?Q?azGO5KtouxRBlNLxzBsx4v3Iv9Pfddg+pxkLkNX1pZZ8U5iTfRlm2tWH0Y?=
 =?iso-8859-1?Q?uXma2Xw0nwsOrXt6R4scVVbkNiWqji9AUE0tsAm89TftdgsERhDQovz67B?=
 =?iso-8859-1?Q?zMn34VmwH6MOfd+nv0Dwnzj3sCpfeuXtayUJ6UFJ4HSbdvCCLMUm0/gRAm?=
 =?iso-8859-1?Q?BhXSRWSEz379dLzCEFSgB/nXuWkpg9N/DOss0XOXxtN/us4z45DlmKdLvJ?=
 =?iso-8859-1?Q?pgaZNuDfkqrVyRczhWXQL1mNZJdkhSsFjNHKyRSaLmMoiuS82BBoewMbqo?=
 =?iso-8859-1?Q?7FildrAomaZQtARIdUKwrA8NMVcHXEct2Tx2ZBIZqlg8MNEF+WzWbdHcyz?=
 =?iso-8859-1?Q?+FQhTu3TLkWCjrrZy9LJ25yzlyKYYXudfqXWd6oJTDV/68dsgpuhY+R0t4?=
 =?iso-8859-1?Q?6pu38s/0Tb+oAIEQEAde/7iM9SPc7fkI5IbtCK3qrG6Lvt/j94W4ppVny1?=
 =?iso-8859-1?Q?WOnwSr1XcZTsT9oniHHXg4IqvYeNHAUGZLaeK7zUuKKFJFHjeKyJNc+iS/?=
 =?iso-8859-1?Q?mwfTz5jEv6E0fqssYYpY9IvrNxUFYcVIxEzWWuruBJvnTnQRc140G/y/k1?=
 =?iso-8859-1?Q?WI6KO94BGKc6tCYL11HLGMccWZcHjXImb0BJx0S2UZ7cBP5Kre6Q5lFBH2?=
 =?iso-8859-1?Q?xNCB1c1HFr+aMnkPrTPUjA4zezJLV6Vw1hjmEqv9DvfeBVjX1GzViiU6rT?=
 =?iso-8859-1?Q?/ESwar1NHo7GEX0Lk5SrjNSHEOnpKEF8/6duSBM19JmVTpN/Oibiww0buW?=
 =?iso-8859-1?Q?h1Z3AV3oY+z3qDUKAGwQFNZ6ylhYASli+sylRFQAOwqL8WR+jqkH8LIqke?=
 =?iso-8859-1?Q?DShxfZ3+dmvUtP2g8RpRixeiMc4k/7hFeHSMFl4WLJ0i5lnqnvcbfzFGAf?=
 =?iso-8859-1?Q?LQLH4M8Dd9i3sRiygzPKoWgg5a8+C/lYkcN4mxB29UQW/vIojBywkURiJD?=
 =?iso-8859-1?Q?+OSk1cC6bAoEFzaDOBmDHWHbzz2k2U80WuOTosypczUARGguNXEZJfGKga?=
 =?iso-8859-1?Q?+kcYP5Heo3mYMLJ4zelkRUzQgS+749pYhhPV6IEHa1lrQB6MiToAhK8mPc?=
 =?iso-8859-1?Q?budBJJZARank9tnxIW2G/B25njcRolbjtGb7b73gAqxxSJrDfrl72v1XfE?=
 =?iso-8859-1?Q?JOdFaBATqI9lTkjQupPa2G4XLqGcJbozohGRq1CWDUkUfdZLt5D9THeB90?=
 =?iso-8859-1?Q?wKkTbIudGxuqZoInqNuT9TFB2E4zbJ+uJmDm0klJ4+OjAG/acfCHRyqzdr?=
 =?iso-8859-1?Q?A4S+FBhi0KPRLCgWqzgKqXT9Tn1xTtFA/J0+AVZqEQCxdbIRwjnzyYSA?=
 =?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: VI1PR03MB3758.eurprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 1de5ebee-d208-4147-1ba1-08dbd542fa04
X-MS-Exchange-CrossTenant-originalarrivaltime: 25 Oct 2023 10:13:03.5843
 (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: cT/yykq1j+lh4YUzi3FjuTXyOLvENEdtqetRTJ0fz3fx1VLEfIm6ti39vn9a5DsGrR1kLrWxg1Gb6BbCoJ3vgw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAVPR03MB9229
X-Proofpoint-GUID: HRZIsRywgudgJ4OoH3_ofhjPmdbq9aMG
X-Proofpoint-ORIG-GUID: HRZIsRywgudgJ4OoH3_ofhjPmdbq9aMG
X-Proofpoint-Virus-Version: vendor=baseguard
 engine=ICAP:2.0.272,Aquarius:18.0.980,Hydra:6.0.619,FMLib:17.11.176.26
 definitions=2023-10-25_01,2023-10-24_01,2023-05-22_02
X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 malwarescore=0 adultscore=0
 suspectscore=0 priorityscore=1501 impostorscore=0 mlxscore=0 spamscore=0
 mlxlogscore=999 clxscore=1015 bulkscore=0 phishscore=0 lowpriorityscore=0
 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2310170001
 definitions=main-2310250086

Add GICv3 ITS support for NEW VGIC. The code is ported from the Kernel
version 6.0. The code is adapted to Xen's coding style and hooked up
with Xen's interfaces. The code is adapted to Xen coding style and
conventions.
For this version ITS is supported only for hardware domains.

Remove unsupported flag from config HAS_ITS and add NEW_VGIC dependency.

Signed-off-by: Mykyta Poturai <mykyta_poturai@epam.com>
---
 xen/arch/arm/Kconfig                  |    4 +-
 xen/arch/arm/gic-v3-its.c             |   28 +
 xen/arch/arm/gic-v3-lpi.c             |   11 +
 xen/arch/arm/include/asm/gic_v3_its.h |   82 ++
 xen/arch/arm/include/asm/new_vgic.h   |   64 +
 xen/arch/arm/vgic/Makefile            |    1 +
 xen/arch/arm/vgic/vgic-init.c         |    7 +
 xen/arch/arm/vgic/vgic-its.c          | 1945 +++++++++++++++++++++++++
 xen/arch/arm/vgic/vgic-mmio-v3.c      |   93 +-
 xen/arch/arm/vgic/vgic-mmio.c         |    6 +
 xen/arch/arm/vgic/vgic-mmio.h         |   11 +
 11 files changed, 2247 insertions(+), 5 deletions(-)
 create mode 100644 xen/arch/arm/vgic/vgic-its.c

diff --git a/xen/arch/arm/Kconfig b/xen/arch/arm/Kconfig
index c91011bc15..ba60cdc513 100644
--- a/xen/arch/arm/Kconfig
+++ b/xen/arch/arm/Kconfig
@@ -90,8 +90,8 @@ config GICV3
 	  If unsure, use the default setting.
=20
 config HAS_ITS
-        bool "GICv3 ITS MSI controller support (UNSUPPORTED)" if UNSUPPORT=
ED
-        depends on GICV3 && !NEW_VGIC && !ARM_32
+        bool "GICv3 ITS MSI controller support"
+        depends on GICV3 && NEW_VGIC && !ARM_32
=20
 config OVERLAY_DTB
 	bool "DTB overlay support (UNSUPPORTED)" if UNSUPPORTED
diff --git a/xen/arch/arm/gic-v3-its.c b/xen/arch/arm/gic-v3-its.c
index 8afcd9783b..482e11e835 100644
--- a/xen/arch/arm/gic-v3-its.c
+++ b/xen/arch/arm/gic-v3-its.c
@@ -47,7 +47,9 @@ struct its_device {
     uint32_t guest_devid;
     uint32_t eventids;                  /* Number of event IDs (MSIs) */
     uint32_t *host_lpi_blocks;          /* Which LPIs are used on the host=
 */
+#ifndef CONFIG_NEW_VGIC
     struct pending_irq *pend_irqs;      /* One struct per event */
+#endif
 };
=20
 bool gicv3_its_host_has_its(void)
@@ -531,7 +533,9 @@ static int remove_mapped_guest_device(struct its_device=
 *dev)
                dev->host_devid);
=20
     xfree(dev->itt_addr);
+#ifndef CONFIG_NEW_VGIC
     xfree(dev->pend_irqs);
+#endif
     xfree(dev->host_lpi_blocks);
     xfree(dev);
=20
@@ -704,9 +708,11 @@ int gicv3_its_map_guest_device(struct domain *d,
      * See the mailing list discussion for some background:
      * https://lists.xen.org/archives/html/xen-devel/2017-03/msg03645.html
      */
+#ifndef CONFIG_NEW_VGIC
     dev->pend_irqs =3D xzalloc_array(struct pending_irq, nr_events);
     if ( !dev->pend_irqs )
         goto out_unlock;
+#endif
=20
     dev->host_lpi_blocks =3D xzalloc_array(uint32_t, nr_events);
     if ( !dev->host_lpi_blocks )
@@ -772,7 +778,9 @@ out_unlock:
 out:
     if ( dev )
     {
+#ifndef CONFIG_NEW_VGIC
         xfree(dev->pend_irqs);
+#endif
         xfree(dev->host_lpi_blocks);
     }
     xfree(itt_addr);
@@ -809,6 +817,7 @@ static struct its_device *get_its_device(struct domain =
*d, paddr_t vdoorbell,
     return NULL;
 }
=20
+#ifndef CONFIG_NEW_VGIC
 static struct pending_irq *get_event_pending_irq(struct domain *d,
                                                  paddr_t vdoorbell_address=
,
                                                  uint32_t vdevid,
@@ -831,7 +840,25 @@ static struct pending_irq *get_event_pending_irq(struc=
t domain *d,
=20
     return pirq;
 }
+#endif
+
+uint32_t gicv3_its_get_host_lpi(struct domain *d, paddr_t vdoorbell_addres=
s,
+                                     uint32_t vdevid, uint32_t eventid)
+{
+    struct its_device *dev;
+    uint32_t host_lpi =3D INVALID_LPI;
+
+    spin_lock(&d->arch.vgic.its_devices_lock);
+    dev =3D get_its_device(d, vdoorbell_address, vdevid);
+    if ( dev )
+        host_lpi =3D dev->host_lpi_blocks[eventid / LPI_BLOCK] +
+                   (eventid % LPI_BLOCK);
+
+    spin_unlock(&d->arch.vgic.its_devices_lock);
+    return host_lpi;
+}
=20
+#ifndef CONFIG_NEW_VGIC
 struct pending_irq *gicv3_its_get_event_pending_irq(struct domain *d,
                                                     paddr_t vdoorbell_addr=
ess,
                                                     uint32_t vdevid,
@@ -883,6 +910,7 @@ struct pending_irq *gicv3_assign_guest_event(struct dom=
ain *d,
=20
     return pirq;
 }
+#endif /* !CONFIG_NEW_VGIC */
=20
 int gicv3_its_deny_access(struct domain *d)
 {
diff --git a/xen/arch/arm/gic-v3-lpi.c b/xen/arch/arm/gic-v3-lpi.c
index eb0a5535e4..e973e37c0a 100644
--- a/xen/arch/arm/gic-v3-lpi.c
+++ b/xen/arch/arm/gic-v3-lpi.c
@@ -135,16 +135,27 @@ void vgic_vcpu_inject_lpi(struct domain *d, unsigned =
int virq)
      * the time. We cannot properly protect this with the current locking
      * scheme, but the future per-IRQ lock will solve this problem.
      */
+#ifdef CONFIG_NEW_VGIC
+    struct vgic_irq *p =3D vgic_get_irq(d, d->vcpu[0], virq);
+#else
     struct pending_irq *p =3D irq_to_pending(d->vcpu[0], virq);
+#endif
     unsigned int vcpu_id;
=20
     if ( !p )
         return;
=20
+#ifdef CONFIG_NEW_VGIC
+    vcpu_id =3D ACCESS_ONCE(p->target_vcpu->vcpu_id);
+#else
     vcpu_id =3D ACCESS_ONCE(p->lpi_vcpu_id);
+#endif
     if ( vcpu_id >=3D d->max_vcpus )
           return;
=20
+#ifdef CONFIG_NEW_VGIC
+    vgic_put_irq(d, p);
+#endif
     vgic_inject_irq(d, d->vcpu[vcpu_id], virq, true);
 }
=20
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..cbfd854af6 100644
--- a/xen/arch/arm/include/asm/gic_v3_its.h
+++ b/xen/arch/arm/include/asm/gic_v3_its.h
@@ -35,7 +35,17 @@
 #define GITS_BASER5                     0x128
 #define GITS_BASER6                     0x130
 #define GITS_BASER7                     0x138
+#define GITS_IDREGS_BASE                0xffd0
+#define GITS_PIDR0                      0xffe0
+#define GITS_PIDR1                      0xffe4
 #define GITS_PIDR2                      GICR_PIDR2
+#define GITS_PIDR4                      0xffd0
+#define GITS_CIDR0                      0xfff0
+#define GITS_CIDR1                      0xfff4
+#define GITS_CIDR2                      0xfff8
+#define GITS_CIDR3                      0xfffc
+
+#define GITS_TRANSLATER                 0x10040
=20
 /* Register bits */
 #define GITS_VALID_BIT                  BIT(63, UL)
@@ -49,6 +59,11 @@
 #define GITS_TYPER_DEVICE_ID_BITS(r)    ((((r) & GITS_TYPER_DEVIDS_MASK) >=
> \
                                                  GITS_TYPER_DEVIDS_SHIFT) =
+ 1)
=20
+#define GITS_IIDR_REV_SHIFT             12
+#define GITS_IIDR_REV_MASK              (0xf << GITS_IIDR_REV_SHIFT)
+#define GITS_IIDR_REV(r)                (((r) >> GITS_IIDR_REV_SHIFT) & 0x=
f)
+#define GITS_IIDR_PRODUCTID_SHIFT       24
+
 #define GITS_TYPER_IDBITS_SHIFT         8
 #define GITS_TYPER_IDBITS_MASK          (0x1fUL << GITS_TYPER_IDBITS_SHIFT=
)
 #define GITS_TYPER_EVENT_ID_BITS(r)     ((((r) & GITS_TYPER_IDBITS_MASK) >=
> \
@@ -60,10 +75,12 @@
                                                  GITS_TYPER_ITT_SIZE_SHIFT=
) + 1)
 #define GITS_TYPER_PHYSICAL             (1U << 0)
=20
+#define GITS_BASER_VALID                (1ULL << 63)
 #define GITS_BASER_INDIRECT             BIT(62, UL)
 #define GITS_BASER_INNER_CACHEABILITY_SHIFT        59
 #define GITS_BASER_TYPE_SHIFT           56
 #define GITS_BASER_TYPE_MASK            (7ULL << GITS_BASER_TYPE_SHIFT)
+#define GITS_BASER_TYPE(r)              (((r) >> GITS_BASER_TYPE_SHIFT) & =
7)
 #define GITS_BASER_OUTER_CACHEABILITY_SHIFT        53
 #define GITS_BASER_TYPE_NONE            0UL
 #define GITS_BASER_TYPE_DEVICE          1UL
@@ -76,6 +93,7 @@
 #define GITS_BASER_ENTRY_SIZE_SHIFT     48
 #define GITS_BASER_ENTRY_SIZE(reg)                                       \
                         ((((reg) >> GITS_BASER_ENTRY_SIZE_SHIFT) & 0x1f) +=
 1)
+#define GITS_BASER_ENTRY_SIZE_MASK      GENMASK_ULL(52, 48)
 #define GITS_BASER_SHAREABILITY_SHIFT   10
 #define GITS_BASER_PAGE_SIZE_SHIFT      8
 #define GITS_BASER_SIZE_MASK            0xff
@@ -83,7 +101,48 @@
 #define GITS_BASER_OUTER_CACHEABILITY_MASK   (0x7ULL << GITS_BASER_OUTER_C=
ACHEABILITY_SHIFT)
 #define GITS_BASER_INNER_CACHEABILITY_MASK   (0x7ULL << GITS_BASER_INNER_C=
ACHEABILITY_SHIFT)
=20
+#define GIC_PAGE_SIZE_4K                0ULL
+#define GIC_PAGE_SIZE_16K               1ULL
+#define GIC_PAGE_SIZE_64K               2ULL
+#define GIC_PAGE_SIZE_MASK              3ULL
+
+#define __GITS_BASER_PSZ(sz)            \
+    (GIC_PAGE_SIZE_ ## sz << GITS_BASER_PAGE_SIZE_SHIFT)
+#define GITS_BASER_PAGE_SIZE_4K         __GITS_BASER_PSZ(4K)
+#define GITS_BASER_PAGE_SIZE_16K        __GITS_BASER_PSZ(16K)
+#define GITS_BASER_PAGE_SIZE_64K        __GITS_BASER_PSZ(64K)
+#define GITS_BASER_PAGE_SIZE_MASK       __GITS_BASER_PSZ(MASK)
+
+#define GITS_BASER_NR_PAGES(r)         (((r) & 0xff) + 1)
+
+#define GITS_BASER_PHYS_52_to_48(phys)					\
+	(((phys) & GENMASK_ULL(47, 16)) | (((phys) >> 48) & 0xf) << 12)
+#define GITS_BASER_ADDR_48_to_52(baser)					\
+	(((baser) & GENMASK_ULL(47, 16)) | (((baser) >> 12) & 0xf) << 48)
+
+#define GIC_BASER_CACHEABILITY(reg, inner_outer, type)			\
+	(GIC_BASER_CACHE_##type << reg##_##inner_outer##_CACHEABILITY_SHIFT)
+
+#define GIC_BASER_SHAREABILITY(reg, type)				\
+	(GIC_BASER_##type << reg##_SHAREABILITY_SHIFT)
+
 #define GITS_CBASER_SIZE_MASK           0xff
+#define GITS_CBASER_VALID               (1ULL << 63)
+#define GITS_CBASER_SHAREABILITY_SHIFT  (10)
+#define GITS_CBASER_INNER_CACHEABILITY_SHIFT    (59)
+#define GITS_CBASER_OUTER_CACHEABILITY_SHIFT    (53)
+#define GITS_CBASER_SHAREABILITY_MASK					\
+	GIC_BASER_SHAREABILITY(GITS_CBASER, SHAREABILITY_MASK)
+#define GITS_CBASER_INNER_CACHEABILITY_MASK				\
+	GIC_BASER_CACHEABILITY(GITS_CBASER, INNER, MASK)
+#define GITS_CBASER_OUTER_CACHEABILITY_MASK				\
+	GIC_BASER_CACHEABILITY(GITS_CBASER, OUTER, MASK)
+#define GITS_CBASER_CACHEABILITY_MASK GITS_CBASER_INNER_CACHEABILITY_MASK
+
+#define GITS_CBASER_InnerShareable					\
+	GIC_BASER_SHAREABILITY(GITS_CBASER, InnerShareable)
+
+#define GITS_CBASER_ADDRESS(cbaser)	((cbaser) & GENMASK_ULL(51, 12))
=20
 /* ITS command definitions */
 #define ITS_CMD_SIZE                    32
@@ -101,8 +160,29 @@
 #define GITS_CMD_MOVALL                 0x0e
 #define GITS_CMD_DISCARD                0x0f
=20
+/*
+ * ITS error numbers
+ */
+#define E_ITS_MOVI_UNMAPPED_INTERRUPT       0x010107
+#define E_ITS_MOVI_UNMAPPED_COLLECTION      0x010109
+#define E_ITS_INT_UNMAPPED_INTERRUPT        0x010307
+#define E_ITS_CLEAR_UNMAPPED_INTERRUPT      0x010507
+#define E_ITS_MAPD_DEVICE_OOR               0x010801
+#define E_ITS_MAPD_ITTSIZE_OOR              0x010802
+#define E_ITS_MAPC_PROCNUM_OOR              0x010902
+#define E_ITS_MAPC_COLLECTION_OOR           0x010903
+#define E_ITS_MAPTI_UNMAPPED_DEVICE         0x010a04
+#define E_ITS_MAPTI_ID_OOR                  0x010a05
+#define E_ITS_MAPTI_PHYSICALID_OOR          0x010a06
+#define E_ITS_INV_UNMAPPED_INTERRUPT        0x010c07
+#define E_ITS_INVALL_UNMAPPED_COLLECTION    0x010d09
+#define E_ITS_MOVALL_PROCNUM_OOR            0x010e01
+#define E_ITS_DISCARD_UNMAPPED_INTERRUPT    0x010f07
+
 #define ITS_DOORBELL_OFFSET             0x10040
 #define GICV3_ITS_SIZE                  SZ_128K
+#define ITS_TRANSLATION_OFFSET          0x10000
+#define GIC_ENCODE_SZ(n, w) (((unsigned long)(n) - 1) & GENMASK_ULL(((w) -=
 1), 0))
=20
 #include <xen/device_tree.h>
 #include <xen/rbtree.h>
@@ -196,6 +276,8 @@ struct pending_irq *gicv3_assign_guest_event(struct dom=
ain *d,
                                              uint32_t virt_lpi);
 void gicv3_lpi_update_host_entry(uint32_t host_lpi, int domain_id,
                                  uint32_t virt_lpi);
+uint32_t gicv3_its_get_host_lpi(struct domain *d, paddr_t vdoorbell_addres=
s,
+                                     uint32_t vdevid, uint32_t eventid);
=20
 #else
=20
diff --git a/xen/arch/arm/include/asm/new_vgic.h b/xen/arch/arm/include/asm=
/new_vgic.h
index ed728652de..017ceac2db 100644
--- a/xen/arch/arm/include/asm/new_vgic.h
+++ b/xen/arch/arm/include/asm/new_vgic.h
@@ -21,6 +21,8 @@
 #include <xen/list.h>
 #include <xen/mm.h>
 #include <xen/spinlock.h>
+#include <xen/rbtree.h>
+
 #define INTERRUPT_ID_BITS_SPIS  10
 #define INTERRUPT_ID_BITS_ITS   16
 #define VGIC_PRI_BITS           5
@@ -36,6 +38,7 @@
 #define VGIC_MIN_LPI            8192
 #define VGIC_V3_DIST_SIZE       SZ_64K
 #define VGIC_V3_REDIST_SIZE     (2 * SZ_64K)
+#define VGIC_V3_ITS_SIZE        (2 * SZ_64K)
=20
 #define irq_is_ppi(irq) ((irq) >=3D VGIC_NR_SGIS && (irq) < VGIC_NR_PRIVAT=
E_IRQS)
 #define irq_is_spi(irq) ((irq) >=3D VGIC_NR_PRIVATE_IRQS && \
@@ -97,6 +100,7 @@ struct vgic_irq {
 enum iodev_type {
     IODEV_DIST,
     IODEV_REDIST,
+    IODEV_ITS,
 };
=20
 struct vgic_redist_region {
@@ -113,6 +117,35 @@ struct vgic_io_device {
     const struct vgic_register_region *regions;
     enum iodev_type iodev_type;
     unsigned int nr_regions;
+    struct vgic_its *its;
+};
+
+struct vgic_its {
+    /* The base address of the ITS control register frame */
+    paddr_t vgic_its_base;
+
+    bool enabled;
+    struct vgic_io_device iodev;
+    struct domain *domain;
+
+    /* These registers correspond to GITS_BASER{0,1} */
+    u64 baser_device_table;
+    u64 baser_coll_table;
+
+    /* Protects the command queue */
+    struct spinlock cmd_lock;
+    u64 cbaser;
+    u32 creadr;
+    u32 cwriter;
+
+    /* migration ABI revision in use */
+    u32 abi_rev;
+
+    /* Protects the device and collection lists */
+    struct spinlock its_lock;
+    struct list_head device_list;
+    struct list_head collection_list;
+    paddr_t doorbell_address;
 };
=20
 struct vgic_dist {
@@ -148,6 +181,7 @@ struct vgic_dist {
     struct vgic_io_device   dist_iodev;
=20
     bool                has_its;
+    struct vgic_its     *its;
=20
     /*
      * Contains the attributes and gpa of the LPI configuration table.
@@ -156,11 +190,16 @@ struct vgic_dist {
      * GICv3 spec: 6.1.2 "LPI Configuration tables"
      */
     uint64_t            propbaser;
+    struct rb_root      its_devices; /* Devices mapped to an ITS */
+    spinlock_t          its_devices_lock; /* Protects the its_devices tree=
 */
=20
     /* Protects the lpi_list and the count value below. */
     spinlock_t          lpi_list_lock;
     struct list_head    lpi_list_head;
     unsigned int        lpi_list_count;
+
+	/* LPI translation cache */
+	struct list_head	lpi_translation_cache;
 };
=20
 struct vgic_cpu {
@@ -220,6 +259,31 @@ unsigned int vgic_v3_max_rdist_count(const struct doma=
in *d);
 void vgic_flush_pending_lpis(struct vcpu *vcpu);
 #endif
=20
+#ifdef CONFIG_HAS_ITS
+void vgic_its_invalidate_cache(struct domain *d);
+void vgic_enable_lpis(struct vcpu *vcpu);
+int vgic_its_inv_lpi(struct domain *d, struct vgic_irq *irq);
+int vgic_its_invall(struct vcpu *vcpu);
+#else
+static inline void vgic_its_invalidate_cache(struct domain *d)
+{
+}
+
+static inline void vgic_enable_lpis(struct vcpu *vcpu)
+{
+}
+
+static inline int vgic_its_inv_lpi(struct domain *d, struct vgic_irq *irq)
+{
+    return 0;
+}
+
+static inline int vgic_its_invall(struct vcpu *vcpu)
+{
+    return 0;
+}
+#endif
+
 #endif /* __ASM_ARM_NEW_VGIC_H */
=20
 /*
diff --git a/xen/arch/arm/vgic/Makefile b/xen/arch/arm/vgic/Makefile
index 019bfe3d07..195d2019f9 100644
--- a/xen/arch/arm/vgic/Makefile
+++ b/xen/arch/arm/vgic/Makefile
@@ -5,3 +5,4 @@ obj-y +=3D vgic-mmio-v2.o
 obj-$(CONFIG_GICV3) +=3D vgic-v3.o
 obj-$(CONFIG_GICV3) +=3D vgic-mmio-v3.o
 obj-y +=3D vgic-init.o
+obj-$(CONFIG_HAS_ITS) +=3D vgic-its.o
diff --git a/xen/arch/arm/vgic/vgic-init.c b/xen/arch/arm/vgic/vgic-init.c
index be35cc33ec..2ebeadac1e 100644
--- a/xen/arch/arm/vgic/vgic-init.c
+++ b/xen/arch/arm/vgic/vgic-init.c
@@ -18,6 +18,7 @@
 #include <xen/lib.h>
 #include <xen/sched.h>
 #include <asm/new_vgic.h>
+#include <asm/gic_v3_its.h>
=20
 #include "vgic.h"
=20
@@ -173,8 +174,14 @@ int domain_vgic_init(struct domain *d, unsigned int nr=
_spis)
     }
=20
     INIT_LIST_HEAD(&dist->lpi_list_head);
+    INIT_LIST_HEAD(&dist->lpi_translation_cache);
+    dist->lpi_list_count=3D0;
     spin_lock_init(&dist->lpi_list_lock);
=20
+    ret =3D vgic_v3_its_init_domain(d);
+    if ( ret )
+        return ret;
+
     if ( dist->version =3D=3D GIC_V2 )
         ret =3D vgic_v2_map_resources(d);
     else
diff --git a/xen/arch/arm/vgic/vgic-its.c b/xen/arch/arm/vgic/vgic-its.c
new file mode 100644
index 0000000000..82c1e78ba2
--- /dev/null
+++ b/xen/arch/arm/vgic/vgic-its.c
@@ -0,0 +1,1945 @@
+/*
+ * Imported from Linux ("new" KVM VGIC) and heavily adapted to Xen.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2 as
+ * published by the Free Software Foundation.
+ *
+ * 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 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/>.
+ */
+
+#include <xen/sched.h>
+#include <xen/guest_access.h>
+#include <xen/sizes.h>
+#include <xen/err.h>
+#include <xen/list_sort.h>
+#include <asm/page.h>
+#include <asm/new_vgic.h>
+#include <asm/gic_v3_defs.h>
+#include <asm/gic_v3_its.h>
+
+#include "vgic.h"
+#include "vgic-mmio.h"
+
+static int update_lpi_config(struct domain *d, struct vgic_irq *irq,
+                             struct vcpu *filter_vcpu, bool needs_inv);
+
+/*
+ * Creates a new (reference to a) struct vgic_irq for a given LPI.
+ * If this LPI is already mapped on another ITS, we increase its refcount
+ * and return a pointer to the existing structure.
+ * If this is a "new" LPI, we allocate and initialize a new struct vgic_ir=
q.
+ * This function returns a pointer to the _unlocked_ structure.
+ */
+static struct vgic_irq *vgic_add_lpi(struct domain *d, struct vgic_its *it=
s,
+                                     u32 intid, u32 devid, u32 eventid,
+                                     struct vcpu *vcpu)
+{
+    struct vgic_dist *dist =3D &d->arch.vgic;
+    struct vgic_irq *irq   =3D vgic_get_irq(d, NULL, intid), *oldirq;
+    uint32_t host_lpi;
+    unsigned long flags;
+    int ret;
+
+    /* In this case there is no put, since we keep the reference. */
+    if ( irq )
+        return irq;
+
+    host_lpi =3D gicv3_its_get_host_lpi(its->domain,
+                                      its->vgic_its_base + ITS_DOORBELL_OF=
FSET,
+                                      devid, eventid);
+
+    if ( host_lpi =3D=3D INVALID_LPI )
+        return ERR_PTR(-EINVAL);
+
+    gicv3_lpi_update_host_entry(host_lpi, d->domain_id, intid);
+
+    irq =3D xzalloc(struct vgic_irq);
+
+    if ( !irq )
+        return ERR_PTR(-ENOMEM);
+
+    memset(irq, 0, sizeof(*irq));
+
+    INIT_LIST_HEAD(&irq->lpi_list);
+    INIT_LIST_HEAD(&irq->ap_list);
+    spin_lock_init(&irq->irq_lock);
+
+    irq->config =3D VGIC_CONFIG_EDGE;
+    atomic_set(&irq->refcount, 1);
+    irq->intid       =3D intid;
+    irq->target_vcpu =3D vcpu;
+
+    spin_lock_irqsave(&dist->lpi_list_lock, flags);
+
+    /*
+     * There could be a race with another vgic_add_lpi(), so we need to
+     * check that we don't add a second list entry with the same LPI.
+     */
+    list_for_each_entry(oldirq, &dist->lpi_list_head, lpi_list)
+    {
+        if ( oldirq->intid !=3D intid )
+            continue;
+
+        /* Someone was faster with adding this LPI, lets use that. */
+        gicv3_lpi_update_host_entry(host_lpi, d->domain_id, INVALID_LPI);
+        irq =3D oldirq;
+
+        /*
+         * This increases the refcount, the caller is expected to
+         * call vgic_put_irq() on the returned pointer once it's
+         * finished with the IRQ.
+         */
+        vgic_get_irq_kref(irq);
+
+        goto out_unlock;
+    }
+
+    list_add_tail(&irq->lpi_list, &dist->lpi_list_head);
+    dist->lpi_list_count++;
+
+out_unlock:
+    spin_unlock_irqrestore(&dist->lpi_list_lock, flags);
+
+    /*
+     * We "cache" the configuration table entries in our struct vgic_irq's=
.
+     * However we only have those structs for mapped IRQs, so we read in
+     * the respective config data from memory here upon mapping the LPI.
+     *
+     * Should any of these fail, behave as if we couldn't create the LPI
+     * by dropping the refcount and returning the error.
+     */
+    ret =3D update_lpi_config(d, irq, NULL, false);
+    if ( ret )
+    {
+        vgic_put_irq(d, irq);
+        gicv3_lpi_update_host_entry(host_lpi, d->domain_id, INVALID_LPI);
+        return ERR_PTR(ret);
+    }
+
+    ret =3D vgic_v3_lpi_sync_pending_status(d, irq);
+    if ( ret )
+    {
+        vgic_put_irq(d, irq);
+        gicv3_lpi_update_host_entry(host_lpi, d->domain_id, INVALID_LPI);
+        return ERR_PTR(ret);
+    }
+
+    return irq;
+}
+
+struct its_device {
+    struct list_head dev_list;
+
+    /* the head for the list of ITTEs */
+    struct list_head itt_head;
+    u32 num_eventid_bits;
+    paddr_t itt_addr;
+    u32 device_id;
+};
+
+#define COLLECTION_NOT_MAPPED ((u32)~0)
+
+struct its_collection {
+    struct list_head coll_list;
+
+    u32 collection_id;
+    u32 target_addr;
+};
+
+struct its_ite {
+    struct list_head ite_list;
+
+    struct vgic_irq *irq;
+    struct its_collection *collection;
+    u32 event_id;
+};
+
+struct vgic_translation_cache_entry {
+    struct list_head entry;
+    paddr_t db;
+    u32 devid;
+    u32 eventid;
+    struct vgic_irq *irq;
+};
+
+/**
+ * struct vgic_its_abi - ITS abi ops and settings
+ * @cte_esz: collection table entry size
+ * @dte_esz: device table entry size
+ * @ite_esz: interrupt translation table entry size
+ * @save tables: save the ITS tables into guest RAM
+ * @restore_tables: restore the ITS internal structs from tables
+ *  stored in guest RAM
+ * @commit: initialize the registers which expose the ABI settings,
+ *  especially the entry sizes
+ */
+struct vgic_its_abi {
+    int cte_esz;
+    int dte_esz;
+    int ite_esz;
+};
+
+#define ABI_0_ESZ 8
+#define ESZ_MAX   ABI_0_ESZ
+
+static const struct vgic_its_abi its_table_abi_versions[] =3D {
+    [0] =3D {
+     .cte_esz =3D ABI_0_ESZ,
+     .dte_esz =3D ABI_0_ESZ,
+     .ite_esz =3D ABI_0_ESZ,
+    },
+};
+
+#define NR_ITS_ABIS ARRAY_SIZE(its_table_abi_versions)
+
+static inline const struct vgic_its_abi *vgic_its_get_abi(struct vgic_its =
*its)
+{
+    return &its_table_abi_versions[its->abi_rev];
+}
+
+static int vgic_its_set_abi(struct vgic_its *its, u32 rev)
+{
+    its->abi_rev =3D rev;
+    return 0;
+}
+
+#define its_is_collection_mapped(coll)                                    =
     \
+    ((coll) && ((coll)->target_addr !=3D COLLECTION_NOT_MAPPED))
+
+#define KVM_MSI_VALID_DEVID (1U << 0)
+
+struct xen_msi {
+    u32 address_lo;
+    u32 address_hi;
+    u32 data;
+    u32 flags;
+    u32 devid;
+    u8 pad[12];
+};
+
+/*
+ * Find and returns a device in the device table for an ITS.
+ * Must be called with the its_lock mutex held.
+ */
+static struct its_device *find_its_device(struct vgic_its *its, u32 device=
_id)
+{
+    struct its_device *device;
+
+    list_for_each_entry(device, &its->device_list, dev_list)
+        if ( device_id =3D=3D device->device_id )
+            return device;
+
+    return NULL;
+}
+
+/*
+ * Find and returns an interrupt translation table entry (ITTE) for a give=
n
+ * Device ID/Event ID pair on an ITS.
+ * Must be called with the its_lock mutex held.
+ */
+static struct its_ite *find_ite(struct vgic_its *its, u32 device_id,
+                                u32 event_id)
+{
+    struct its_device *device;
+    struct its_ite *ite;
+
+    device =3D find_its_device(its, device_id);
+    if ( device =3D=3D NULL )
+        return NULL;
+
+    list_for_each_entry(ite, &device->itt_head, ite_list)
+        if ( ite->event_id =3D=3D event_id )
+            return ite;
+
+    return NULL;
+}
+
+/* To be used as an iterator this macro misses the enclosing parentheses *=
/
+#define for_each_lpi_its(dev, ite, its)                                   =
     \
+    list_for_each_entry(dev, &(its)->device_list, dev_list)               =
     \
+        list_for_each_entry(ite, &(dev)->itt_head, ite_list)
+
+#define GIC_LPI_OFFSET              8192
+
+#define VITS_TYPER_IDBITS           16
+#define VITS_TYPER_DEVBITS          16
+#define VITS_DTE_MAX_DEVID_OFFSET   (BIT(14, UL) - 1)
+#define VITS_ITE_MAX_EVENTID_OFFSET (BIT(16, UL) - 1)
+
+static struct its_collection *find_collection(struct vgic_its *its, int co=
ll_id)
+{
+    struct its_collection *collection;
+
+    list_for_each_entry(collection, &its->collection_list, coll_list)
+    {
+        if ( coll_id =3D=3D collection->collection_id )
+            return collection;
+    }
+
+    return NULL;
+}
+
+#define LPI_PROP_ENABLE_BIT(p) ((p)&LPI_PROP_ENABLED)
+#define LPI_PROP_PRIORITY(p)   ((p)&0xfc)
+
+/*
+ * Reads the configuration data for a given LPI from guest memory and
+ * updates the fields in struct vgic_irq.
+ * If filter_vcpu is not NULL, applies only if the IRQ is targeting this
+ * VCPU. Unconditionally applies if filter_vcpu is NULL.
+ */
+static int update_lpi_config(struct domain *d, struct vgic_irq *irq,
+                             struct vcpu *filter_vcpu, bool needs_inv)
+{
+    u64 propbase =3D GICR_PROPBASER_ADDRESS(d->arch.vgic.propbaser);
+    u8 prop;
+    int ret;
+    unsigned long flags;
+
+    ret =3D access_guest_memory_by_gpa(d, propbase + irq->intid - GIC_LPI_=
OFFSET,
+                                     &prop, 1, false);
+
+    if ( ret )
+        return ret;
+
+    spin_lock_irqsave(&irq->irq_lock, flags);
+
+    if ( !filter_vcpu || filter_vcpu =3D=3D irq->target_vcpu )
+    {
+        irq->priority =3D LPI_PROP_PRIORITY(prop);
+        irq->enabled  =3D LPI_PROP_ENABLE_BIT(prop);
+
+        if ( !irq->hw )
+        {
+            vgic_queue_irq_unlock(d, irq, flags);
+            return 0;
+        }
+    }
+
+    spin_unlock_irqrestore(&irq->irq_lock, flags);
+
+    /* GICv4 style VLPIS are not yet supported */
+    WARN_ON(irq->hw);
+
+    return 0;
+}
+
+/*
+ * Create a snapshot of the current LPIs targeting @vcpu, so that we can
+ * enumerate those LPIs without holding any lock.
+ * Returns their number and puts the kmalloc'ed array into intid_ptr.
+ */
+int vgic_copy_lpi_list(struct domain *d, struct vcpu *vcpu, u32 **intid_pt=
r)
+{
+    struct vgic_dist *dist =3D &d->arch.vgic;
+    struct vgic_irq *irq;
+    unsigned long flags;
+    u32 *intids;
+    int irq_count, i =3D 0;
+
+    /*
+     * There is an obvious race between allocating the array and LPIs
+     * being mapped/unmapped. If we ended up here as a result of a
+     * command, we're safe (locks are held, preventing another
+     * command). If coming from another path (such as enabling LPIs),
+     * we must be careful not to overrun the array.
+     */
+    irq_count =3D ACCESS_ONCE(dist->lpi_list_count);
+    intids    =3D xmalloc_array(u32, irq_count);
+    if ( !intids )
+        return -ENOMEM;
+
+    spin_lock_irqsave(&dist->lpi_list_lock, flags);
+    list_for_each_entry(irq, &dist->lpi_list_head, lpi_list)
+    {
+        if ( i =3D=3D irq_count )
+            break;
+        /* We don't need to "get" the IRQ, as we hold the list lock. */
+        if ( vcpu && irq->target_vcpu !=3D vcpu )
+            continue;
+        intids[i++] =3D irq->intid;
+    }
+    spin_unlock_irqrestore(&dist->lpi_list_lock, flags);
+
+    *intid_ptr =3D intids;
+    return i;
+}
+
+static int update_affinity(struct vgic_irq *irq, struct vcpu *vcpu)
+{
+    int ret =3D 0;
+    unsigned long flags;
+
+    spin_lock_irqsave(&irq->irq_lock, flags);
+    irq->target_vcpu =3D vcpu;
+    spin_unlock_irqrestore(&irq->irq_lock, flags);
+
+    /* GICv4 style VLPIS are not yet supported */
+    WARN_ON(irq->hw);
+
+    return ret;
+}
+
+/*
+ * Promotes the ITS view of affinity of an ITTE (which redistributor this =
LPI
+ * is targeting) to the VGIC's view, which deals with target VCPUs.
+ * Needs to be called whenever either the collection for a LPIs has
+ * changed or the collection itself got retargeted.
+ */
+static void update_affinity_ite(struct domain *d, struct its_ite *ite)
+{
+    struct vcpu *vcpu;
+
+    if ( !its_is_collection_mapped(ite->collection) )
+        return;
+
+    vcpu =3D d->vcpu[ite->collection->target_addr];
+    update_affinity(ite->irq, vcpu);
+}
+
+/*
+ * Updates the target VCPU for every LPI targeting this collection.
+ * Must be called with the its_lock mutex held.
+ */
+static void update_affinity_collection(struct domain *d, struct vgic_its *=
its,
+                                       struct its_collection *coll)
+{
+    struct its_device *device;
+    struct its_ite *ite;
+
+    for_each_lpi_its(device, ite, its)
+    {
+        if ( !ite->collection || coll !=3D ite->collection )
+            continue;
+
+        update_affinity_ite(d, ite);
+    }
+}
+
+void __vgic_put_lpi_locked(struct domain *d, struct vgic_irq *irq)
+{
+    struct vgic_dist *dist =3D &d->arch.vgic;
+
+    if ( !atomic_dec_and_test(&irq->refcount) )
+    {
+        return;
+    };
+
+    list_del(&irq->lpi_list);
+    dist->lpi_list_count--;
+
+    xfree(irq);
+}
+
+static u32 max_lpis_propbaser(u64 propbaser)
+{
+    int nr_idbits =3D (propbaser & 0x1f) + 1;
+
+    return 1U << min(nr_idbits, INTERRUPT_ID_BITS_ITS);
+}
+
+static struct vgic_irq *__vgic_its_check_cache(struct vgic_dist *dist,
+                                               paddr_t db, u32 devid,
+                                               u32 eventid)
+{
+    struct vgic_translation_cache_entry *cte, *fcte;
+
+    list_for_each_entry(cte, &dist->lpi_translation_cache, entry)
+    {
+        /*
+         * If we hit a NULL entry, there is nothing after this
+         * point.
+         */
+        if ( !cte->irq )
+            break;
+
+        if ( cte->db !=3D db || cte->devid !=3D devid || cte->eventid !=3D=
 eventid )
+            continue;
+
+        /*
+         * Move this entry to the head, as it is the most
+         * recently used.
+         */
+        fcte =3D list_first_entry(&dist->lpi_translation_cache,
+                                struct vgic_translation_cache_entry, entry=
);
+
+        if ( fcte->irq !=3D cte->irq )
+            list_move(&cte->entry, &dist->lpi_translation_cache);
+
+        return cte->irq;
+    }
+
+    return NULL;
+}
+
+static void vgic_its_cache_translation(struct domain *d, struct vgic_its *=
its,
+                                       u32 devid, u32 eventid,
+                                       struct vgic_irq *irq)
+{
+    struct vgic_dist *dist =3D &d->arch.vgic;
+    struct vgic_translation_cache_entry *cte;
+    unsigned long flags;
+    paddr_t db;
+
+    /* Do not cache a directly injected interrupt */
+    if ( irq->hw )
+        return;
+
+    spin_lock_irqsave(&dist->lpi_list_lock, flags);
+
+    if ( unlikely(list_empty(&dist->lpi_translation_cache)) )
+        goto out;
+
+    /*
+     * We could have raced with another CPU caching the same
+     * translation behind our back, so let's check it is not in
+     * already
+     */
+    db =3D its->vgic_its_base + GITS_TRANSLATER;
+    if ( __vgic_its_check_cache(dist, db, devid, eventid) )
+        goto out;
+
+    /* Always reuse the last entry (LRU policy) */
+    cte =3D list_last_entry(&dist->lpi_translation_cache, typeof(*cte), en=
try);
+
+    /*
+     * Caching the translation implies having an extra reference
+     * to the interrupt, so drop the potential reference on what
+     * was in the cache, and increment it on the new interrupt.
+     */
+    if ( cte->irq )
+        __vgic_put_lpi_locked(d, cte->irq);
+
+    vgic_get_irq_kref(irq);
+
+    cte->db      =3D db;
+    cte->devid   =3D devid;
+    cte->eventid =3D eventid;
+    cte->irq     =3D irq;
+
+    /* Move the new translation to the head of the list */
+    list_move(&cte->entry, &dist->lpi_translation_cache);
+
+out:
+    spin_unlock_irqrestore(&dist->lpi_list_lock, flags);
+}
+
+void vgic_its_invalidate_cache(struct domain *d)
+{
+    struct vgic_dist *dist =3D &d->arch.vgic;
+    struct vgic_translation_cache_entry *cte;
+    unsigned long flags;
+
+    spin_lock_irqsave(&dist->lpi_list_lock, flags);
+
+    list_for_each_entry(cte, &dist->lpi_translation_cache, entry)
+    {
+        /*
+         * If we hit a NULL entry, there is nothing after this
+         * point.
+         */
+        if ( !cte->irq )
+            break;
+
+        __vgic_put_lpi_locked(d, cte->irq);
+        cte->irq =3D NULL;
+    }
+
+    spin_unlock_irqrestore(&dist->lpi_list_lock, flags);
+}
+
+int vgic_its_resolve_lpi(struct domain *d, struct vgic_its *its, u32 devid=
,
+                         u32 eventid, struct vgic_irq **irq)
+{
+    struct vcpu *vcpu;
+    struct its_ite *ite;
+
+    if ( !its->enabled )
+        return -EBUSY;
+
+    ite =3D find_ite(its, devid, eventid);
+    if ( !ite || !its_is_collection_mapped(ite->collection) )
+        return E_ITS_INT_UNMAPPED_INTERRUPT;
+
+    vcpu =3D d->vcpu[ite->collection->target_addr];
+    if ( !vcpu )
+        return E_ITS_INT_UNMAPPED_INTERRUPT;
+
+    if ( !vgic_lpis_enabled(vcpu) )
+        return -EBUSY;
+
+    vgic_its_cache_translation(d, its, devid, eventid, ite->irq);
+
+    *irq =3D ite->irq;
+    return 0;
+}
+
+/*
+ * Find the target VCPU and the LPI number for a given devid/eventid pair
+ * and make this IRQ pending, possibly injecting it.
+ * Must be called with the its_lock mutex held.
+ * Returns 0 on success, a positive error value for any ITS mapping
+ * related errors and negative error values for generic errors.
+ */
+static int vgic_its_trigger_msi(struct domain *d, struct vgic_its *its,
+                                u32 devid, u32 eventid)
+{
+    struct vgic_irq *irq =3D NULL;
+    unsigned long flags;
+    int err;
+
+    err =3D vgic_its_resolve_lpi(d, its, devid, eventid, &irq);
+    if ( err )
+        return err;
+
+    /* GICv4 style VLPIS are not yet supported */
+    WARN_ON(irq->hw);
+
+    spin_lock_irqsave(&irq->irq_lock, flags);
+    irq->pending_latch =3D true;
+    vgic_queue_irq_unlock(d, irq, flags);
+
+    return 0;
+}
+
+static u64 its_cmd_mask_field(u64 *its_cmd, int word, int shift, int size)
+{
+    return (le64_to_cpu(its_cmd[word]) >> shift) & (BIT(size, ULL) - 1);
+}
+
+/* Requires the its_lock to be held. */
+static void its_free_ite(struct domain *d, struct its_ite *ite)
+{
+    list_del(&ite->ite_list);
+
+    /* This put matches the get in vgic_add_lpi. */
+    if ( ite->irq )
+    {
+        /* GICv4 style VLPIS are not yet supported */
+        WARN_ON(ite->irq->hw);
+
+        vgic_put_irq(d, ite->irq);
+    }
+
+    xfree(ite);
+}
+
+/* Must be called with its_lock mutex held */
+static struct its_ite *vgic_its_alloc_ite(struct its_device *device,
+                                          struct its_collection *collectio=
n,
+                                          u32 event_id)
+{
+    struct its_ite *ite;
+
+    ite =3D xzalloc(struct its_ite);
+    if ( !ite )
+        return ERR_PTR(-ENOMEM);
+
+    ite->event_id   =3D event_id;
+    ite->collection =3D collection;
+
+    list_add_tail(&ite->ite_list, &device->itt_head);
+    return ite;
+}
+
+#define its_cmd_get_command(cmd)     its_cmd_mask_field(cmd, 0, 0, 8)
+#define its_cmd_get_deviceid(cmd)    its_cmd_mask_field(cmd, 0, 32, 32)
+#define its_cmd_get_size(cmd)        (its_cmd_mask_field(cmd, 1, 0, 5) + 1=
)
+#define its_cmd_get_id(cmd)          its_cmd_mask_field(cmd, 1, 0, 32)
+#define its_cmd_get_physical_id(cmd) its_cmd_mask_field(cmd, 1, 32, 32)
+#define its_cmd_get_collection(cmd)  its_cmd_mask_field(cmd, 2, 0, 16)
+#define its_cmd_get_ittaddr(cmd)     (its_cmd_mask_field(cmd, 2, 8, 44) <<=
 8)
+#define its_cmd_get_target_addr(cmd) its_cmd_mask_field(cmd, 2, 16, 32)
+#define its_cmd_get_validbit(cmd)    its_cmd_mask_field(cmd, 2, 63, 1)
+
+/*
+ * Check whether a guest physical address is owned by it
+*/
+static bool __is_visible_gfn_locked(struct vgic_its *its, paddr_t gpa)
+{
+    gfn_t gfn =3D gaddr_to_gfn(gpa);
+    volatile struct domain *d;
+    struct page_info *page;
+
+    page =3D mfn_to_page(gfn_to_mfn(its->domain, gfn));
+    if ( !page )
+        return false;
+
+    d =3D page_get_owner(page);
+    if ( !d )
+        return false;
+
+    return d =3D=3D its->domain;
+}
+
+/*
+ * Check whether an event ID can be stored in the corresponding Interrupt
+ * Translation Table, which starts at device->itt_addr.
+ */
+static bool vgic_its_check_event_id(struct vgic_its *its,
+                                    struct its_device *device, u32 event_i=
d)
+{
+    const struct vgic_its_abi *abi =3D vgic_its_get_abi(its);
+    int ite_esz                    =3D abi->ite_esz;
+    paddr_t gpa;
+
+    /* max table size is: BIT_ULL(device->num_eventid_bits) * ite_esz */
+    if ( event_id >=3D BIT(device->num_eventid_bits, ULL) )
+        return false;
+
+    gpa =3D device->itt_addr + event_id * ite_esz;
+    return __is_visible_gfn_locked(its, gpa);
+}
+
+/*
+ * Check whether an ID can be stored into the corresponding guest table.
+ * For a direct table this is pretty easy, but gets a bit nasty for
+ * indirect tables. We check whether the resulting guest physical address
+ * is actually valid (covered by a memslot and guest accessible).
+ * For this we have to read the respective first level entry.
+ */
+static bool vgic_its_check_id(struct vgic_its *its, u64 baser, u32 id,
+                              paddr_t *eaddr)
+{
+    int l1_tbl_size =3D GITS_BASER_NR_PAGES(baser) * SZ_64K;
+    u64 indirect_ptr, type =3D GITS_BASER_TYPE(baser);
+    paddr_t base =3D GITS_BASER_ADDR_48_to_52(baser);
+    int esz      =3D GITS_BASER_ENTRY_SIZE(baser);
+    int index;
+
+    switch ( type )
+    {
+    case GITS_BASER_TYPE_DEVICE:
+        if ( id >=3D BIT(VITS_TYPER_DEVBITS, ULL) )
+            return false;
+        break;
+    case GITS_BASER_TYPE_COLLECTION:
+        /* as GITS_TYPER.CIL =3D=3D 0, ITS supports 16-bit collection ID *=
/
+        if ( id >=3D BIT(16, ULL) )
+            return false;
+        break;
+    default:
+        return false;
+    }
+
+    if ( !(baser & GITS_BASER_INDIRECT) )
+    {
+        paddr_t addr;
+
+        if ( id >=3D (l1_tbl_size / esz) )
+            return false;
+
+        addr =3D base + id * esz;
+
+        if ( eaddr )
+            *eaddr =3D addr;
+
+        return __is_visible_gfn_locked(its, addr);
+    }
+
+    /* calculate and check the index into the 1st level */
+    index =3D id / (SZ_64K / esz);
+    if ( index >=3D (l1_tbl_size / sizeof(u64)) )
+        return false;
+
+    /* Each 1st level entry is represented by a 64-bit value. */
+    if ( access_guest_memory_by_gpa(its->domain,
+                                    base + index * sizeof(indirect_ptr),
+                                    &indirect_ptr, sizeof(indirect_ptr), 0=
) )
+        return false;
+
+    indirect_ptr =3D le64_to_cpu(indirect_ptr);
+
+    /* check the valid bit of the first level entry */
+    if ( !(indirect_ptr & BIT(63, ULL)) )
+        return false;
+
+    /* Mask the guest physical address and calculate the frame number. */
+    indirect_ptr &=3D GENMASK_ULL(51, 16);
+
+    /* Find the address of the actual entry */
+    index =3D id % (SZ_64K / esz);
+    indirect_ptr +=3D index * esz;
+
+    if ( eaddr )
+        *eaddr =3D indirect_ptr;
+
+    return __is_visible_gfn_locked(its, indirect_ptr);
+}
+
+/*
+ * Add a new collection into the ITS collection table.
+ * Returns 0 on success, and a negative error value for generic errors.
+ */
+static int vgic_its_alloc_collection(struct vgic_its *its,
+                                     struct its_collection **colp, u32 col=
l_id)
+{
+    struct its_collection *collection;
+
+    collection =3D xzalloc(struct its_collection);
+    if ( !collection )
+        return -ENOMEM;
+
+    collection->collection_id =3D coll_id;
+    collection->target_addr   =3D COLLECTION_NOT_MAPPED;
+
+    list_add_tail(&collection->coll_list, &its->collection_list);
+    *colp =3D collection;
+
+    return 0;
+}
+
+static void vgic_its_free_collection(struct vgic_its *its, u32 coll_id)
+{
+    struct its_collection *collection;
+    struct its_device *device;
+    struct its_ite *ite;
+
+    /*
+     * Clearing the mapping for that collection ID removes the
+     * entry from the list. If there wasn't any before, we can
+     * go home early.
+     */
+    collection =3D find_collection(its, coll_id);
+    if ( !collection )
+        return;
+
+    for_each_lpi_its( device, ite, its)
+        if ( ite->collection && ite->collection->collection_id =3D=3D coll=
_id )
+        ite->collection =3D NULL;
+
+    list_del(&collection->coll_list);
+    xfree(collection);
+}
+
+/* Requires the its_lock to be held. */
+static void vgic_its_free_device(struct domain *d, struct its_device *devi=
ce)
+{
+    struct its_ite *ite, *temp;
+
+    /*
+     * The spec says that unmapping a device with still valid
+     * ITTEs associated is UNPREDICTABLE. We remove all ITTEs,
+     * since we cannot leave the memory unreferenced.
+     */
+    list_for_each_entry_safe(ite, temp, &device->itt_head, ite_list)
+        its_free_ite(d, ite);
+
+    vgic_its_invalidate_cache(d);
+
+    list_del(&device->dev_list);
+    xfree(device);
+}
+
+/* its lock must be held */
+static void vgic_its_free_device_list(struct domain *d, struct vgic_its *i=
ts)
+{
+    struct its_device *cur, *temp;
+
+    list_for_each_entry_safe(cur, temp, &its->device_list, dev_list)
+        vgic_its_free_device(d, cur);
+}
+
+/* its lock must be held */
+static void vgic_its_free_collection_list(struct domain *d,
+                                          struct vgic_its *its)
+{
+    struct its_collection *cur, *temp;
+
+    list_for_each_entry_safe(cur, temp, &its->collection_list, coll_list)
+        vgic_its_free_collection(its, cur->collection_id);
+}
+
+/* Must be called with its_lock mutex held */
+static struct its_device *vgic_its_alloc_device(struct vgic_its *its,
+                                                u32 device_id, paddr_t itt=
_addr,
+                                                u8 num_eventid_bits)
+{
+    struct its_device *device;
+
+    device =3D xzalloc(struct its_device);
+    if ( !device )
+        return ERR_PTR(-ENOMEM);
+
+    device->device_id        =3D device_id;
+    device->itt_addr         =3D itt_addr;
+    device->num_eventid_bits =3D num_eventid_bits;
+    INIT_LIST_HEAD(&device->itt_head);
+
+    list_add_tail(&device->dev_list, &its->device_list);
+    return device;
+}
+
+/*
+ * MAPD maps or unmaps a device ID to Interrupt Translation Tables (ITTs).
+ * Must be called with the its_lock mutex held.
+ */
+
+static int vgic_its_cmd_handle_mapd(struct domain *d, struct vgic_its *its=
,
+                                    u64 *its_cmd)
+{
+    uint32_t guest_devid =3D its_cmd_get_deviceid(its_cmd);
+    bool valid           =3D its_cmd_get_validbit(its_cmd);
+    u8 num_eventid_bits  =3D its_cmd_get_size(its_cmd);
+    paddr_t itt_addr     =3D its_cmd_get_ittaddr(its_cmd);
+    int ret =3D 0;
+    struct its_device *device;
+
+    if ( !vgic_its_check_id(its, its->baser_device_table, guest_devid, NUL=
L) )
+        return E_ITS_MAPD_DEVICE_OOR;
+
+    if ( valid && num_eventid_bits > VITS_TYPER_IDBITS )
+        return E_ITS_MAPD_ITTSIZE_OOR;
+
+    device =3D find_its_device(its, guest_devid);
+
+    /*
+     * The spec says that calling MAPD on an already mapped device
+     * invalidates all cached data for this device. We implement this
+     * by removing the mapping and re-establishing it.
+     */
+    if ( device )
+        vgic_its_free_device(d, device);
+    else
+        device =3D
+            vgic_its_alloc_device(its, guest_devid, itt_addr, num_eventid_=
bits);
+
+    /*
+     * There is no easy and clean way for Xen to know the ITS device ID of=
 a
+     * particular (PCI) device, so we have to rely on the guest telling
+     * us about it. For *now* we are just using the device ID *Dom0* uses,
+     * because the driver there has the actual knowledge.
+     * Eventually this will be replaced with a dedicated hypercall to
+     * announce pass-through of devices.
+     */
+    if ( is_hardware_domain(its->domain) )
+    {
+        ret =3D gicv3_its_map_guest_device(its->domain, its->doorbell_addr=
ess,
+                                        guest_devid,
+                                        its->vgic_its_base + ITS_DOORBELL_=
OFFSET,
+                                        guest_devid, BIT(num_eventid_bits,=
 UL),
+                                        valid);
+    }
+    if ( ret && valid )
+        return ret;
+
+    return IS_ERR(device) ? PTR_ERR(device) : 0;
+}
+
+/*
+ * The MAPC command maps collection IDs to redistributors.
+ * Must be called with the its_lock mutex held.
+ */
+static int vgic_its_cmd_handle_mapc(struct domain *d, struct vgic_its *its=
,
+                                    u64 *its_cmd)
+{
+    u16 coll_id;
+    u32 target_addr;
+    struct its_collection *collection;
+    bool valid;
+
+    valid       =3D its_cmd_get_validbit(its_cmd);
+    coll_id     =3D its_cmd_get_collection(its_cmd);
+    target_addr =3D its_cmd_get_target_addr(its_cmd);
+
+    if ( target_addr >=3D d->max_vcpus )
+        return E_ITS_MAPC_PROCNUM_OOR;
+
+    if ( !valid )
+    {
+        vgic_its_free_collection(its, coll_id);
+        vgic_its_invalidate_cache(d);
+    }
+    else
+    {
+        collection =3D find_collection(its, coll_id);
+
+        if ( !collection )
+        {
+            int ret;
+
+            if ( !vgic_its_check_id(its, its->baser_coll_table, coll_id, N=
ULL) )
+                return E_ITS_MAPC_COLLECTION_OOR;
+
+            ret =3D vgic_its_alloc_collection(its, &collection, coll_id);
+            if ( ret )
+                return ret;
+            collection->target_addr =3D target_addr;
+        }
+        else
+        {
+            collection->target_addr =3D target_addr;
+            update_affinity_collection(d, its, collection);
+        }
+    }
+
+    return 0;
+}
+
+/*
+ * The MAPTI and MAPI commands map LPIs to ITTEs.
+ * Must be called with its_lock mutex held.
+ */
+static int vgic_its_cmd_handle_mapi(struct domain *d, struct vgic_its *its=
,
+                                    u64 *its_cmd)
+{
+    u32 device_id =3D its_cmd_get_deviceid(its_cmd);
+    u32 event_id  =3D its_cmd_get_id(its_cmd);
+    u32 coll_id   =3D its_cmd_get_collection(its_cmd);
+    struct its_ite *ite;
+    struct vcpu *vcpu =3D NULL;
+    struct its_device *device;
+    struct its_collection *collection, *new_coll =3D NULL;
+    struct vgic_irq *irq;
+    int lpi_nr;
+
+    device =3D find_its_device(its, device_id);
+    if ( !device )
+        return E_ITS_MAPTI_UNMAPPED_DEVICE;
+
+    if ( !vgic_its_check_event_id(its, device, event_id) )
+        return E_ITS_MAPTI_ID_OOR;
+
+    if ( its_cmd_get_command(its_cmd) =3D=3D GITS_CMD_MAPTI )
+        lpi_nr =3D its_cmd_get_physical_id(its_cmd);
+    else
+        lpi_nr =3D event_id;
+    if ( lpi_nr < GIC_LPI_OFFSET ||
+         lpi_nr >=3D max_lpis_propbaser(d->arch.vgic.propbaser) )
+        return E_ITS_MAPTI_PHYSICALID_OOR;
+
+    /* If there is an existing mapping, behavior is UNPREDICTABLE. */
+    if ( find_ite(its, device_id, event_id) )
+        return 0;
+
+    collection =3D find_collection(its, coll_id);
+    if ( !collection )
+    {
+        int ret;
+
+        if ( !vgic_its_check_id(its, its->baser_coll_table, coll_id, NULL)=
 )
+            return E_ITS_MAPC_COLLECTION_OOR;
+
+        ret =3D vgic_its_alloc_collection(its, &collection, coll_id);
+        if ( ret )
+            return ret;
+        new_coll =3D collection;
+    }
+
+    ite =3D vgic_its_alloc_ite(device, collection, event_id);
+    if ( IS_ERR(ite) )
+    {
+        if ( new_coll )
+            vgic_its_free_collection(its, coll_id);
+        return PTR_ERR(ite);
+    }
+
+    if ( its_is_collection_mapped(collection) )
+        vcpu =3D d->vcpu[collection->target_addr];
+
+    irq =3D vgic_add_lpi(d, its, lpi_nr, device_id, event_id, vcpu);
+    if ( IS_ERR(irq) )
+    {
+        if ( new_coll )
+            vgic_its_free_collection(its, coll_id);
+        its_free_ite(d, ite);
+        return PTR_ERR(irq);
+    }
+    ite->irq =3D irq;
+
+    return 0;
+}
+
+/*
+ * The MOVI command moves an ITTE to a different collection.
+ * Must be called with the its_lock mutex held.
+ */
+static int vgic_its_cmd_handle_movi(struct domain *d, struct vgic_its *its=
,
+                                    u64 *its_cmd)
+{
+    u32 device_id =3D its_cmd_get_deviceid(its_cmd);
+    u32 event_id  =3D its_cmd_get_id(its_cmd);
+    u32 coll_id   =3D its_cmd_get_collection(its_cmd);
+    struct vcpu *vcpu;
+    struct its_ite *ite;
+    struct its_collection *collection;
+
+    ite =3D find_ite(its, device_id, event_id);
+    if ( !ite )
+        return E_ITS_MOVI_UNMAPPED_INTERRUPT;
+
+    if ( !its_is_collection_mapped(ite->collection) )
+        return E_ITS_MOVI_UNMAPPED_COLLECTION;
+
+    collection =3D find_collection(its, coll_id);
+    if ( !its_is_collection_mapped(collection) )
+        return E_ITS_MOVI_UNMAPPED_COLLECTION;
+
+    ite->collection =3D collection;
+    vcpu            =3D d->vcpu[collection->target_addr];
+
+    vgic_its_invalidate_cache(d);
+
+    return update_affinity(ite->irq, vcpu);
+}
+
+/*
+ * The DISCARD command frees an Interrupt Translation Table Entry (ITTE).
+ * Must be called with the its_lock mutex held.
+ */
+static int vgic_its_cmd_handle_discard(struct domain *d, struct vgic_its *=
its,
+                                       u64 *its_cmd)
+{
+    u32 device_id =3D its_cmd_get_deviceid(its_cmd);
+    u32 event_id  =3D its_cmd_get_id(its_cmd);
+    struct its_ite *ite;
+
+    ite =3D find_ite(its, device_id, event_id);
+    if ( ite && its_is_collection_mapped(ite->collection) )
+    {
+        /*
+         * Though the spec talks about removing the pending state, we
+         * don't bother here since we clear the ITTE anyway and the
+         * pending state is a property of the ITTE struct.
+         */
+        vgic_its_invalidate_cache(d);
+
+        its_free_ite(d, ite);
+        return 0;
+    }
+
+    return E_ITS_DISCARD_UNMAPPED_INTERRUPT;
+}
+
+/*
+ * The CLEAR command removes the pending state for a particular LPI.
+ * Must be called with the its_lock mutex held.
+ */
+static int vgic_its_cmd_handle_clear(struct domain *d, struct vgic_its *it=
s,
+                                     u64 *its_cmd)
+{
+    u32 device_id =3D its_cmd_get_deviceid(its_cmd);
+    u32 event_id  =3D its_cmd_get_id(its_cmd);
+    struct its_ite *ite;
+
+    ite =3D find_ite(its, device_id, event_id);
+    if ( !ite )
+        return E_ITS_CLEAR_UNMAPPED_INTERRUPT;
+
+    ite->irq->pending_latch =3D false;
+
+    /* GICv4 style VLPIS are not yet supported */
+    WARN_ON(ite->irq->hw);
+
+    return 0;
+}
+
+/*
+ * The MOVALL command moves the pending state of all IRQs targeting one
+ * redistributor to another. We don't hold the pending state in the VCPUs,
+ * but in the IRQs instead, so there is really not much to do for us here.
+ * However the spec says that no IRQ must target the old redistributor
+ * afterwards, so we make sure that no LPI is using the associated target_=
vcpu.
+ * This command affects all LPIs in the system that target that redistribu=
tor.
+ */
+static int vgic_its_cmd_handle_movall(struct domain *d, struct vgic_its *i=
ts,
+                                      u64 *its_cmd)
+{
+    u32 target1_addr =3D its_cmd_get_target_addr(its_cmd);
+    u32 target2_addr =3D its_cmd_mask_field(its_cmd, 3, 16, 32);
+    struct vcpu *vcpu1, *vcpu2;
+    struct vgic_irq *irq;
+    u32 *intids;
+    int irq_count, i;
+
+    if ( target1_addr >=3D d->max_vcpus || target2_addr >=3D d->max_vcpus =
)
+        return E_ITS_MOVALL_PROCNUM_OOR;
+
+    if ( target1_addr =3D=3D target2_addr )
+        return 0;
+
+    vcpu1     =3D d->vcpu[target1_addr];
+    vcpu2     =3D d->vcpu[target2_addr];
+
+    irq_count =3D vgic_copy_lpi_list(d, vcpu1, &intids);
+    if ( irq_count < 0 )
+        return irq_count;
+
+    for ( i =3D 0; i < irq_count; i++ )
+    {
+        irq =3D vgic_get_irq(d, NULL, intids[i]);
+
+        update_affinity(irq, vcpu2);
+
+        vgic_put_irq(d, irq);
+    }
+
+    vgic_its_invalidate_cache(d);
+
+    xfree(intids);
+    return 0;
+}
+
+/*
+ * The INT command injects the LPI associated with that DevID/EvID pair.
+ * Must be called with the its_lock mutex held.
+ */
+static int vgic_its_cmd_handle_int(struct domain *d, struct vgic_its *its,
+                                   u64 *its_cmd)
+{
+    u32 msi_data  =3D its_cmd_get_id(its_cmd);
+    u64 msi_devid =3D its_cmd_get_deviceid(its_cmd);
+
+    return vgic_its_trigger_msi(d, its, msi_devid, msi_data);
+}
+
+int vgic_its_inv_lpi(struct domain *d, struct vgic_irq *irq)
+{
+    return update_lpi_config(d, irq, NULL, true);
+}
+
+/*
+ * The INV command syncs the configuration bits from the memory table.
+ * Must be called with the its_lock mutex held.
+ */
+static int vgic_its_cmd_handle_inv(struct domain *d, struct vgic_its *its,
+                                   u64 *its_cmd)
+{
+    u32 device_id =3D its_cmd_get_deviceid(its_cmd);
+    u32 event_id  =3D its_cmd_get_id(its_cmd);
+    struct its_ite *ite;
+
+    ite =3D find_ite(its, device_id, event_id);
+    if ( !ite )
+        return E_ITS_INV_UNMAPPED_INTERRUPT;
+
+    return vgic_its_inv_lpi(d, ite->irq);
+}
+
+/**
+ * vgic_its_invall - invalidate all LPIs targetting a given vcpu
+ * @vcpu: the vcpu for which the RD is targetted by an invalidation
+ *
+ * Contrary to the INVALL command, this targets a RD instead of a
+ * collection, and we don't need to hold the its_lock, since no ITS is
+ * involved here.
+ */
+int vgic_its_invall(struct vcpu *vcpu)
+{
+    struct domain *d =3D vcpu->domain;
+    int irq_count, i =3D 0;
+    u32 *intids;
+
+    irq_count =3D vgic_copy_lpi_list(d, vcpu, &intids);
+    if ( irq_count < 0 )
+        return irq_count;
+
+    for ( i =3D 0; i < irq_count; i++ )
+    {
+        struct vgic_irq *irq =3D vgic_get_irq(d, NULL, intids[i]);
+        if ( !irq )
+            continue;
+        update_lpi_config(d, irq, vcpu, false);
+        vgic_put_irq(d, irq);
+    }
+
+    xfree(intids);
+    return 0;
+}
+
+/*
+ * The INVALL command requests flushing of all IRQ data in this collection=
.
+ * Find the VCPU mapped to that collection, then iterate over the VM's lis=
t
+ * of mapped LPIs and update the configuration for each IRQ which targets
+ * the specified vcpu. The configuration will be read from the in-memory
+ * configuration table.
+ * Must be called with the its_lock mutex held.
+ */
+static int vgic_its_cmd_handle_invall(struct domain *d, struct vgic_its *i=
ts,
+                                      u64 *its_cmd)
+{
+    u32 coll_id =3D its_cmd_get_collection(its_cmd);
+    struct its_collection *collection;
+    struct vcpu *vcpu;
+
+    collection =3D find_collection(its, coll_id);
+    if ( !its_is_collection_mapped(collection) )
+        return E_ITS_INVALL_UNMAPPED_COLLECTION;
+
+    vcpu =3D d->vcpu[collection->target_addr];
+    vgic_its_invall(vcpu);
+
+    return 0;
+}
+
+/*
+ * This function is called with the its_cmd lock held, but the ITS data
+ * structure lock dropped.
+ */
+static int vgic_its_handle_command(struct domain *d, struct vgic_its *its,
+                                   u64 *its_cmd)
+{
+    int ret =3D -ENODEV;
+
+    spin_lock(&its->its_lock);
+    switch ( its_cmd_get_command(its_cmd) )
+    {
+    case GITS_CMD_MAPD:
+        ret =3D vgic_its_cmd_handle_mapd(d, its, its_cmd);
+        break;
+    case GITS_CMD_MAPC:
+        ret =3D vgic_its_cmd_handle_mapc(d, its, its_cmd);
+        break;
+    case GITS_CMD_MAPI:
+        ret =3D vgic_its_cmd_handle_mapi(d, its, its_cmd);
+        break;
+    case GITS_CMD_MAPTI:
+        ret =3D vgic_its_cmd_handle_mapi(d, its, its_cmd);
+        break;
+    case GITS_CMD_MOVI:
+        ret =3D vgic_its_cmd_handle_movi(d, its, its_cmd);
+        break;
+    case GITS_CMD_DISCARD:
+        ret =3D vgic_its_cmd_handle_discard(d, its, its_cmd);
+        break;
+    case GITS_CMD_CLEAR:
+        ret =3D vgic_its_cmd_handle_clear(d, its, its_cmd);
+        break;
+    case GITS_CMD_MOVALL:
+        ret =3D vgic_its_cmd_handle_movall(d, its, its_cmd);
+        break;
+    case GITS_CMD_INT:
+        ret =3D vgic_its_cmd_handle_int(d, its, its_cmd);
+        break;
+    case GITS_CMD_INV:
+        ret =3D vgic_its_cmd_handle_inv(d, its, its_cmd);
+        break;
+    case GITS_CMD_INVALL:
+        ret =3D vgic_its_cmd_handle_invall(d, its, its_cmd);
+        break;
+    case GITS_CMD_SYNC:
+        /* we ignore this command: we are in sync all of the time */
+        ret =3D 0;
+        break;
+    default:
+        printk("Unknown GITS command\n");
+        ret =3D -EINVAL;
+        break;
+    }
+    spin_unlock(&its->its_lock);
+
+    return ret;
+}
+
+#define ITS_CMD_BUFFER_SIZE(baser) ((((baser)&0xff) + 1) << 12)
+#define ITS_CMD_SIZE               32
+#define ITS_CMD_OFFSET(reg)        ((reg)&GENMASK(19, 5))
+
+/* Must be called with the cmd_lock held. */
+static void vgic_its_process_commands(struct domain *d, struct vgic_its *i=
ts)
+{
+    paddr_t cbaser;
+    u64 cmd_buf[4];
+
+    /* Commands are only processed when the ITS is enabled. */
+    if ( !its->enabled )
+        return;
+
+    cbaser =3D GITS_CBASER_ADDRESS(its->cbaser);
+
+    while ( its->cwriter !=3D its->creadr )
+    {
+        int ret =3D access_guest_memory_by_gpa(d, cbaser + its->creadr, cm=
d_buf,
+                                             ITS_CMD_SIZE, false);
+        /*
+         * If kvm_read_guest() fails, this could be due to the guest
+         * programming a bogus value in CBASER or something else going
+         * wrong from which we cannot easily recover.
+         * According to section 6.3.2 in the GICv3 spec we can just
+         * ignore that command then.
+         */
+        if ( !ret )
+            vgic_its_handle_command(d, its, cmd_buf);
+
+        its->creadr +=3D ITS_CMD_SIZE;
+        if ( its->creadr =3D=3D ITS_CMD_BUFFER_SIZE(its->cbaser) )
+            its->creadr =3D 0;
+    }
+}
+
+static unsigned long vgic_mmio_read_its_ctlr(struct domain *d,
+                                             struct vgic_its *its, paddr_t=
 addr,
+                                             unsigned int len)
+{
+    u32 reg =3D 0;
+
+    spin_lock(&its->cmd_lock);
+    if ( its->creadr =3D=3D its->cwriter )
+        reg |=3D GITS_CTLR_QUIESCENT;
+    if ( its->enabled )
+        reg |=3D GITS_CTLR_ENABLE;
+    spin_unlock(&its->cmd_lock);
+
+    return reg;
+}
+
+static void vgic_mmio_write_its_ctlr(struct domain *d, struct vgic_its *it=
s,
+                                     paddr_t addr, unsigned int len,
+                                     unsigned long val)
+{
+    spin_lock(&its->cmd_lock);
+
+    /*
+     * It is UNPREDICTABLE to enable the ITS if any of the CBASER or
+     * device/collection BASER are invalid
+     */
+    if ( !its->enabled && (val & GITS_CTLR_ENABLE) &&
+         (!(its->baser_device_table & GITS_VALID_BIT) ||
+          !(its->baser_coll_table & GITS_VALID_BIT) ||
+          !(its->cbaser & GITS_VALID_BIT)) )
+        goto out;
+
+    its->enabled =3D !!(val & GITS_CTLR_ENABLE);
+    if ( !its->enabled )
+        vgic_its_invalidate_cache(d);
+
+    /*
+     * Try to process any pending commands. This function bails out early
+     * if the ITS is disabled or no commands have been queued.
+     */
+    vgic_its_process_commands(d, its);
+
+out:
+    spin_unlock(&its->cmd_lock);
+}
+
+static unsigned long vgic_mmio_read_its_iidr(struct domain *d,
+                                             struct vgic_its *its, paddr_t=
 addr,
+                                             unsigned int len)
+{
+    u32 val;
+
+    val =3D (its->abi_rev << GITS_IIDR_REV_SHIFT) & GITS_IIDR_REV_MASK;
+    val |=3D (PRODUCT_ID_KVM << GITS_IIDR_PRODUCTID_SHIFT) | IMPLEMENTER_A=
RM;
+    return val;
+}
+
+/*
+ * Sync the pending table pending bit of LPIs targeting @vcpu
+ * with our own data structures. This relies on the LPI being
+ * mapped before.
+ */
+static int its_sync_lpi_pending_table(struct vcpu *vcpu)
+{
+    paddr_t pendbase =3D GICR_PENDBASER_ADDRESS(vcpu->arch.vgic.pendbaser)=
;
+    struct vgic_irq *irq;
+    int last_byte_offset =3D -1;
+    int ret              =3D 0;
+    u32 *intids;
+    int nr_irqs, i;
+    unsigned long flags;
+    u8 pendmask;
+
+    nr_irqs =3D vgic_copy_lpi_list(vcpu->domain, vcpu, &intids);
+    if ( nr_irqs < 0 )
+        return nr_irqs;
+
+    for ( i =3D 0; i < nr_irqs; i++ )
+    {
+        int byte_offset, bit_nr;
+
+        byte_offset =3D intids[i] / BITS_PER_BYTE;
+        bit_nr      =3D intids[i] % BITS_PER_BYTE;
+
+        /*
+         * For contiguously allocated LPIs chances are we just read
+         * this very same byte in the last iteration. Reuse that.
+         */
+        if ( byte_offset !=3D last_byte_offset )
+        {
+            ret =3D access_guest_memory_by_gpa(vcpu->domain,
+                                             pendbase + byte_offset, &pend=
mask,
+                                             1, false);
+            if ( ret )
+            {
+                xfree(intids);
+                return ret;
+            }
+            last_byte_offset =3D byte_offset;
+        }
+
+        irq =3D vgic_get_irq(vcpu->domain, NULL, intids[i]);
+        spin_lock_irqsave(&irq->irq_lock, flags);
+        irq->pending_latch =3D pendmask & (1U << bit_nr);
+        vgic_queue_irq_unlock(vcpu->domain, irq, flags);
+        vgic_put_irq(vcpu->domain, irq);
+    }
+
+    xfree(intids);
+
+    return ret;
+}
+
+static unsigned long vgic_mmio_read_its_typer(struct domain *d,
+                                              struct vgic_its *its,
+                                              paddr_t addr, unsigned int l=
en)
+{
+    const struct vgic_its_abi *abi =3D vgic_its_get_abi(its);
+    u64 reg                        =3D GITS_TYPER_PHYSICAL;
+
+    /*
+     * We use linear CPU numbers for redistributor addressing,
+     * so GITS_TYPER.PTA is 0.
+     * Also we force all PROPBASER registers to be the same, so
+     * CommonLPIAff is 0 as well.
+     * To avoid memory waste in the guest, we keep the number of IDBits an=
d
+     * DevBits low - as least for the time being.
+     */
+    reg |=3D GIC_ENCODE_SZ(VITS_TYPER_DEVBITS, 5) << GITS_TYPER_DEVIDS_SHI=
FT;
+    reg |=3D GIC_ENCODE_SZ(VITS_TYPER_IDBITS, 5) << GITS_TYPER_IDBITS_SHIF=
T;
+    reg |=3D GIC_ENCODE_SZ(abi->ite_esz, 4) << GITS_TYPER_ITT_SIZE_SHIFT;
+
+    return extract_bytes(reg, addr & 7, len);
+}
+
+static u64 vgic_sanitise_its_baser(u64 reg)
+{
+    reg =3D vgic_sanitise_field(reg, GITS_BASER_SHAREABILITY_MASK,
+                              GITS_BASER_SHAREABILITY_SHIFT,
+                              vgic_sanitise_shareability);
+    reg =3D vgic_sanitise_field(reg, GITS_BASER_INNER_CACHEABILITY_MASK,
+                              GITS_BASER_INNER_CACHEABILITY_SHIFT,
+                              vgic_sanitise_inner_cacheability);
+    reg =3D vgic_sanitise_field(reg, GITS_BASER_OUTER_CACHEABILITY_MASK,
+                              GITS_BASER_OUTER_CACHEABILITY_SHIFT,
+                              vgic_sanitise_outer_cacheability);
+
+    /* We support only one (ITS) page size: 64K */
+    reg =3D (reg & ~GITS_BASER_PAGE_SIZE_MASK) | GITS_BASER_PAGE_SIZE_64K;
+
+    return reg;
+}
+
+static u64 vgic_sanitise_its_cbaser(u64 reg)
+{
+    reg =3D vgic_sanitise_field(reg, GITS_CBASER_SHAREABILITY_MASK,
+                              GITS_CBASER_SHAREABILITY_SHIFT,
+                              vgic_sanitise_shareability);
+    reg =3D vgic_sanitise_field(reg, GITS_CBASER_INNER_CACHEABILITY_MASK,
+                              GITS_CBASER_INNER_CACHEABILITY_SHIFT,
+                              vgic_sanitise_inner_cacheability);
+    reg =3D vgic_sanitise_field(reg, GITS_CBASER_OUTER_CACHEABILITY_MASK,
+                              GITS_CBASER_OUTER_CACHEABILITY_SHIFT,
+                              vgic_sanitise_outer_cacheability);
+
+    /* Sanitise the physical address to be 64k aligned. */
+    reg &=3D ~GENMASK_ULL(15, 12);
+
+    return reg;
+}
+
+static unsigned long vgic_mmio_read_its_cbaser(struct domain *d,
+                                               struct vgic_its *its,
+                                               paddr_t addr, unsigned int =
len)
+{
+    return extract_bytes(its->cbaser, addr & 7, len);
+}
+
+static void vgic_mmio_write_its_cbaser(struct domain *d, struct vgic_its *=
its,
+                                       paddr_t addr, unsigned int len,
+                                       unsigned long val)
+{
+    /* When GITS_CTLR.Enable is 1, this register is RO. */
+    if ( its->enabled )
+        return;
+
+    spin_lock(&its->cmd_lock);
+    its->cbaser =3D update_64bit_reg(its->cbaser, addr & 7, len, val);
+    its->cbaser =3D vgic_sanitise_its_cbaser(its->cbaser);
+    its->creadr =3D 0;
+    /*
+     * CWRITER is architecturally UNKNOWN on reset, but we need to reset
+     * it to CREADR to make sure we start with an empty command buffer.
+     */
+    its->cwriter =3D its->creadr;
+    spin_unlock(&its->cmd_lock);
+}
+
+static unsigned long vgic_mmio_read_its_cwriter(struct domain *d,
+                                                struct vgic_its *its,
+                                                paddr_t addr, unsigned int=
 len)
+{
+    return extract_bytes(its->cwriter, addr & 0x7, len);
+}
+
+/*
+ * By writing to CWRITER the guest announces new commands to be processed.
+ * To avoid any races in the first place, we take the its_cmd lock, which
+ * protects our ring buffer variables, so that there is only one user
+ * per ITS handling commands at a given time.
+ */
+static void vgic_mmio_write_its_cwriter(struct domain *d, struct vgic_its =
*its,
+                                        paddr_t addr, unsigned int len,
+                                        unsigned long val)
+{
+    u64 reg;
+
+    if ( !its )
+        return;
+
+    spin_lock(&its->cmd_lock);
+
+    reg =3D update_64bit_reg(its->cwriter, addr & 7, len, val);
+    reg =3D ITS_CMD_OFFSET(reg);
+    if ( reg >=3D ITS_CMD_BUFFER_SIZE(its->cbaser) )
+    {
+        spin_unlock(&its->cmd_lock);
+        return;
+    }
+    its->cwriter =3D reg;
+
+    vgic_its_process_commands(d, its);
+
+    spin_unlock(&its->cmd_lock);
+}
+
+static unsigned long vgic_mmio_read_its_creadr(struct domain *d,
+                                               struct vgic_its *its,
+                                               paddr_t addr, unsigned int =
len)
+{
+    return extract_bytes(its->creadr, addr & 0x7, len);
+}
+
+#define BASER_INDEX(addr) (((addr) / sizeof(u64)) & 0x7)
+
+static unsigned long vgic_mmio_read_its_baser(struct domain *d,
+                                              struct vgic_its *its,
+                                              paddr_t addr, unsigned int l=
en)
+{
+    uint64_t reg;
+
+    switch ( BASER_INDEX(addr) )
+    {
+    case 0:
+        reg =3D its->baser_device_table;
+        break;
+    case 1:
+        reg =3D its->baser_coll_table;
+        break;
+    default:
+        reg =3D 0;
+        break;
+    }
+
+    return extract_bytes(reg, addr & 7, len);
+}
+
+#define GITS_BASER_RO_MASK (GENMASK_ULL(52, 48) | GENMASK_ULL(58, 56))
+
+static void vgic_mmio_write_its_baser(struct domain *d, struct vgic_its *i=
ts,
+                                      paddr_t addr, unsigned int len,
+                                      unsigned long val)
+{
+    const struct vgic_its_abi *abi =3D vgic_its_get_abi(its);
+    u64 entry_size, table_type;
+    u64 reg, *regptr, clearbits =3D 0;
+
+    /* When GITS_CTLR.Enable is 1, we ignore write accesses. */
+    if ( its->enabled )
+        return;
+
+    switch ( BASER_INDEX(addr) )
+    {
+    case 0:
+        regptr     =3D &its->baser_device_table;
+        entry_size =3D abi->dte_esz;
+        table_type =3D GITS_BASER_TYPE_DEVICE;
+        break;
+    case 1:
+        regptr     =3D &its->baser_coll_table;
+        entry_size =3D abi->cte_esz;
+        table_type =3D GITS_BASER_TYPE_COLLECTION;
+        clearbits  =3D GITS_BASER_INDIRECT;
+        break;
+    default:
+        return;
+    }
+
+    reg =3D update_64bit_reg(*regptr, addr & 7, len, val);
+    reg &=3D ~GITS_BASER_RO_MASK;
+    reg &=3D ~clearbits;
+
+    reg |=3D (entry_size - 1) << GITS_BASER_ENTRY_SIZE_SHIFT;
+    reg |=3D table_type << GITS_BASER_TYPE_SHIFT;
+    reg     =3D vgic_sanitise_its_baser(reg);
+
+    *regptr =3D reg;
+
+    if ( !(reg & GITS_BASER_VALID) )
+    {
+        /* Take the its_lock to prevent a race with a save/restore */
+        spin_lock(&its->its_lock);
+        switch ( table_type )
+        {
+        case GITS_BASER_TYPE_DEVICE:
+            vgic_its_free_device_list(d, its);
+            break;
+        case GITS_BASER_TYPE_COLLECTION:
+            vgic_its_free_collection_list(d, its);
+            break;
+        }
+        spin_unlock(&its->its_lock);
+    }
+}
+
+static unsigned long vgic_mmio_read_its_idregs(struct domain *d,
+                                               struct vgic_its *its,
+                                               paddr_t addr, unsigned int =
len)
+{
+    switch ( addr & 0xffff )
+    {
+    case GITS_PIDR0:
+        return 0x92; /* part number, bits[7:0] */
+    case GITS_PIDR1:
+        return 0xb4; /* part number, bits[11:8] */
+    case GITS_PIDR2:
+        return GIC_PIDR2_ARCH_GICv3 | 0x0b;
+    case GITS_PIDR4:
+        return 0x40; /* This is a 64K software visible page */
+    /* The following are the ID registers for (any) GIC. */
+    case GITS_CIDR0:
+        return 0x0d;
+    case GITS_CIDR1:
+        return 0xf0;
+    case GITS_CIDR2:
+        return 0x05;
+    case GITS_CIDR3:
+        return 0xb1;
+    }
+
+    return 0;
+}
+
+static void its_mmio_write_wi(struct domain *d, struct vgic_its *its,
+                              paddr_t addr, unsigned int len, unsigned lon=
g val)
+{
+    /* Ignore */
+}
+
+#define REGISTER_ITS_DESC(off, rd, wr, length, acc)                       =
     \
+    {                                                                     =
     \
+        .reg_offset =3D off, .len =3D length, .access_flags =3D acc, .its_=
read =3D rd, \
+        .its_write =3D wr,                                                =
       \
+    }
+
+static struct vgic_register_region its_registers[] =3D {
+    REGISTER_ITS_DESC(GITS_CTLR, vgic_mmio_read_its_ctlr,
+                      vgic_mmio_write_its_ctlr, 4, VGIC_ACCESS_32bit),
+    REGISTER_ITS_DESC(GITS_IIDR, vgic_mmio_read_its_iidr, its_mmio_write_w=
i, 4,
+                      VGIC_ACCESS_32bit),
+    REGISTER_ITS_DESC(GITS_TYPER, vgic_mmio_read_its_typer, its_mmio_write=
_wi,
+                      8, VGIC_ACCESS_64bit | VGIC_ACCESS_32bit),
+    REGISTER_ITS_DESC(GITS_CBASER, vgic_mmio_read_its_cbaser,
+                      vgic_mmio_write_its_cbaser, 8,
+                      VGIC_ACCESS_64bit | VGIC_ACCESS_32bit),
+    REGISTER_ITS_DESC(GITS_CWRITER, vgic_mmio_read_its_cwriter,
+                      vgic_mmio_write_its_cwriter, 8,
+                      VGIC_ACCESS_64bit | VGIC_ACCESS_32bit),
+    REGISTER_ITS_DESC(GITS_CREADR, vgic_mmio_read_its_creadr, its_mmio_wri=
te_wi,
+                      8, VGIC_ACCESS_64bit | VGIC_ACCESS_32bit),
+    REGISTER_ITS_DESC(GITS_BASER0, vgic_mmio_read_its_baser,
+                      vgic_mmio_write_its_baser, 0x40,
+                      VGIC_ACCESS_64bit | VGIC_ACCESS_32bit),
+    REGISTER_ITS_DESC(GITS_IDREGS_BASE, vgic_mmio_read_its_idregs,
+                      its_mmio_write_wi, 0x30, VGIC_ACCESS_32bit),
+};
+
+/* This is called on setting the LPI enable bit in the redistributor. */
+void vgic_enable_lpis(struct vcpu *vcpu)
+{
+    if ( !(vcpu->arch.vgic.pendbaser & GICR_PENDBASER_PTZ) )
+        its_sync_lpi_pending_table(vcpu);
+}
+
+static int vgic_register_its_iodev(struct domain *d, struct vgic_its *its,
+                                   u64 addr)
+{
+    struct vgic_io_device *iodev =3D &its->iodev;
+    int ret                      =3D 0;
+
+    if ( !IS_VGIC_ADDR_UNDEF(its->vgic_its_base) )
+    {
+        ret =3D -EBUSY;
+        goto out;
+    }
+
+    its->vgic_its_base    =3D addr;
+    its->doorbell_address =3D addr + ITS_DOORBELL_OFFSET;
+    iodev->regions        =3D its_registers;
+    iodev->nr_regions     =3D ARRAY_SIZE(its_registers);
+
+    iodev->base_fn        =3D gaddr_to_gfn(its->vgic_its_base);
+    iodev->iodev_type     =3D IODEV_ITS;
+    iodev->its            =3D its;
+    register_mmio_handler(d, &vgic_io_ops, its->vgic_its_base, VGIC_V3_ITS=
_SIZE,
+                          iodev);
+out:
+    return ret;
+}
+
+/* Default is 16 cached LPIs per vcpu */
+#define LPI_DEFAULT_PCPU_CACHE_SIZE 16
+
+void vgic_lpi_translation_cache_init(struct domain *d)
+{
+    struct vgic_dist *dist =3D &d->arch.vgic;
+    unsigned int sz;
+    int i;
+
+    if ( !list_empty(&dist->lpi_translation_cache) )
+        return;
+
+    sz =3D d->max_vcpus * LPI_DEFAULT_PCPU_CACHE_SIZE;
+
+    for ( i =3D 0; i < sz; i++ )
+    {
+        struct vgic_translation_cache_entry *cte;
+
+        /* An allocation failure is not fatal */
+        cte =3D xzalloc(struct vgic_translation_cache_entry);
+        if ( WARN_ON(!cte) )
+            break;
+
+        INIT_LIST_HEAD(&cte->entry);
+        list_add(&cte->entry, &dist->lpi_translation_cache);
+    }
+}
+
+void vgic_lpi_translation_cache_destroy(struct domain *d)
+{
+    struct vgic_dist *dist =3D &d->arch.vgic;
+    struct vgic_translation_cache_entry *cte, *tmp;
+
+    vgic_its_invalidate_cache(d);
+
+    list_for_each_entry_safe(cte, tmp, &dist->lpi_translation_cache, entry=
)
+    {
+        list_del(&cte->entry);
+        xfree(cte);
+    }
+}
+
+#define INITIAL_BASER_VALUE                                               =
     \
+    (GIC_BASER_CACHEABILITY(GITS_BASER, INNER, RaWb) |                    =
     \
+     GIC_BASER_CACHEABILITY(GITS_BASER, OUTER, SameAsInner) |             =
     \
+     GIC_BASER_SHAREABILITY(GITS_BASER, InnerShareable) |                 =
     \
+     GITS_BASER_PAGE_SIZE_64K)
+
+#define INITIAL_PROPBASER_VALUE                                           =
     \
+    (GIC_BASER_CACHEABILITY(GICR_PROPBASER, INNER, RaWb) |                =
     \
+     GIC_BASER_CACHEABILITY(GICR_PROPBASER, OUTER, SameAsInner) |         =
     \
+     GIC_BASER_SHAREABILITY(GICR_PROPBASER, InnerShareable))
+
+static int vgic_its_create(struct domain *d, u64 addr)
+{
+    struct vgic_its *its;
+    const struct vgic_its_abi *abi;
+
+    its =3D xzalloc(struct vgic_its);
+    if ( !its )
+        return -ENOMEM;
+
+    d->arch.vgic.its =3D its;
+
+    vgic_lpi_translation_cache_init(d);
+
+    spin_lock_init(&its->its_lock);
+    spin_lock_init(&its->cmd_lock);
+
+    its->vgic_its_base =3D VGIC_ADDR_UNDEF;
+
+    INIT_LIST_HEAD(&its->device_list);
+    INIT_LIST_HEAD(&its->collection_list);
+    spin_lock_init(&d->arch.vgic.its_devices_lock);
+    d->arch.vgic.its_devices        =3D RB_ROOT;
+
+    d->arch.vgic.msis_require_devid =3D true;
+    d->arch.vgic.has_its            =3D true;
+    its->enabled                    =3D false;
+    its->domain                     =3D d;
+
+    its->baser_device_table =3D INITIAL_BASER_VALUE | ((u64)GITS_BASER_TYP=
E_DEVICE
+                                                     << GITS_BASER_TYPE_SH=
IFT);
+    its->baser_coll_table =3D
+        INITIAL_BASER_VALUE |
+        ((u64)GITS_BASER_TYPE_COLLECTION << GITS_BASER_TYPE_SHIFT);
+    d->arch.vgic.propbaser =3D INITIAL_PROPBASER_VALUE;
+
+    vgic_register_its_iodev(d, its, addr);
+
+    vgic_its_set_abi(its, NR_ITS_ABIS - 1);
+    abi =3D vgic_its_get_abi(its);
+    its->baser_coll_table &=3D ~GITS_BASER_ENTRY_SIZE_MASK;
+    its->baser_device_table &=3D ~GITS_BASER_ENTRY_SIZE_MASK;
+
+    its->baser_coll_table |=3D
+        (GIC_ENCODE_SZ(abi->cte_esz, 5) << GITS_BASER_ENTRY_SIZE_SHIFT);
+
+    its->baser_device_table |=3D
+        (GIC_ENCODE_SZ(abi->dte_esz, 5) << GITS_BASER_ENTRY_SIZE_SHIFT);
+
+    its->doorbell_address =3D addr + ITS_DOORBELL_OFFSET;
+
+    return 0;
+}
+
+/*
+ * For a hardware domain, this will iterate over the host ITSes
+ * and map one virtual ITS per host ITS at the same address.
+ */
+int vgic_v3_its_init_domain(struct domain *d)
+{
+    int ret;
+
+    if ( is_hardware_domain(d) )
+    {
+        struct host_its *hw_its;
+
+        list_for_each_entry(hw_its, &host_its_list, entry)
+        {
+            /*
+             * For each host ITS create a virtual ITS using the same
+             * base and thus doorbell address.
+             * Use the same number of device ID and event ID bits as the h=
ost.
+             */
+            ret =3D vgic_its_create(d, hw_its->addr);
+            if ( ret )
+                return ret;
+            else
+                d->arch.vgic.has_its =3D true;
+        }
+    }
+
+    return 0;
+}
+
+void vgic_v3_its_free_domain(struct domain *d)
+{
+    struct vgic_its *its =3D d->arch.vgic.its;
+
+    spin_lock(&its->its_lock);
+
+    vgic_its_free_device_list(d, its);
+    vgic_its_free_collection_list(d, its);
+
+    spin_unlock(&its->its_lock);
+    xfree(its);
+    d->arch.vgic.its =3D NULL;
+}
diff --git a/xen/arch/arm/vgic/vgic-mmio-v3.c b/xen/arch/arm/vgic/vgic-mmio=
-v3.c
index 4ec6d910af..ed81761572 100644
--- a/xen/arch/arm/vgic/vgic-mmio-v3.c
+++ b/xen/arch/arm/vgic/vgic-mmio-v3.c
@@ -417,6 +417,40 @@ static unsigned long vgic_mmio_read_v3r_ctlr(struct vc=
pu *vcpu, paddr_t addr,
     return val;
 }
=20
+static void vgic_mmio_write_v3r_ctlr(struct vcpu *vcpu, paddr_t addr,
+                                     unsigned int len, unsigned long val)
+{
+    struct vgic_cpu *vgic_cpu =3D &vcpu->arch.vgic;
+    uint32_t ctlr;
+
+    if ( !vgic_has_its(vcpu->domain) )
+        return;
+
+    if ( !(val & GICR_CTLR_ENABLE_LPIS) )
+    {
+        /*
+		 * Don't disable if RWP is set, as there already an
+		 * ongoing disable. Funky guest...
+		 */
+        ctlr =3D atomic_cmpxchg(&vgic_cpu->ctlr, GICR_CTLR_ENABLE_LPIS,
+                              GICR_CTLR_RWP);
+        if ( ctlr !=3D GICR_CTLR_ENABLE_LPIS )
+            return;
+
+        vgic_flush_pending_lpis(vcpu);
+        vgic_its_invalidate_cache(vcpu->domain);
+        atomic_set(&vgic_cpu->ctlr, 0);
+    }
+    else
+    {
+        ctlr =3D atomic_cmpxchg(&vgic_cpu->ctlr, 0, GICR_CTLR_ENABLE_LPIS)=
;
+        if ( ctlr !=3D 0 )
+            return;
+
+        vgic_enable_lpis(vcpu);
+    }
+}
+
 bool vgic_lpis_enabled(struct vcpu *vcpu)
 {
     struct vgic_cpu *vgic_cpu =3D &vcpu->arch.vgic;
@@ -575,6 +609,59 @@ static unsigned long vgic_mmio_read_sync(struct vcpu *=
vcpu, paddr_t addr,
     return !!atomic_read(&vcpu->arch.vgic.syncr_busy);
 }
=20
+static void vgic_set_rdist_busy(struct vcpu *vcpu, bool busy)
+{
+    if ( busy )
+    {
+        atomic_inc(&vcpu->arch.vgic.syncr_busy);
+        smp_mb__after_atomic();
+    }
+    else
+    {
+        smp_mb__before_atomic();
+        atomic_dec(&vcpu->arch.vgic.syncr_busy);
+    }
+}
+
+static void vgic_mmio_write_invlpi(struct vcpu *vcpu, paddr_t addr,
+                                   unsigned int len, unsigned long val)
+{
+    struct vgic_irq *irq;
+
+    /*
+	 * If the guest wrote only to the upper 32bit part of the
+	 * register, drop the write on the floor, as it is only for
+	 * vPEs (which we don't support for obvious reasons).
+	 *
+	 * Also discard the access if LPIs are not enabled.
+	 */
+    if ( (addr & 4) || !vgic_lpis_enabled(vcpu) )
+        return;
+
+    vgic_set_rdist_busy(vcpu, true);
+
+    irq =3D vgic_get_irq(vcpu->domain, NULL, val & 0xffffffff);
+    if ( irq )
+    {
+        vgic_its_inv_lpi(vcpu->domain, irq);
+        vgic_put_irq(vcpu->domain, irq);
+    }
+
+    vgic_set_rdist_busy(vcpu, false);
+}
+
+static void vgic_mmio_write_invall(struct vcpu *vcpu, paddr_t addr,
+                                   unsigned int len, unsigned long val)
+{
+    /* See vgic_mmio_write_invlpi() for the early return rationale */
+    if ( (addr & 4) || !vgic_lpis_enabled(vcpu) )
+        return;
+
+    vgic_set_rdist_busy(vcpu, true);
+    vgic_its_invall(vcpu);
+    vgic_set_rdist_busy(vcpu, false);
+}
+
 static const struct vgic_register_region vgic_v3_dist_registers[] =3D {
     REGISTER_DESC_WITH_LENGTH(GICD_CTLR,
         vgic_mmio_read_v3_misc, vgic_mmio_write_v3_misc,
@@ -626,7 +713,7 @@ static const struct vgic_register_region vgic_v3_dist_r=
egisters[] =3D {
 static const struct vgic_register_region vgic_v3_rd_registers[] =3D {
     /* RD_base registers */
     REGISTER_DESC_WITH_LENGTH(GICR_CTLR,
-        vgic_mmio_read_v3r_ctlr, vgic_mmio_write_wi, 4,
+        vgic_mmio_read_v3r_ctlr, vgic_mmio_write_v3r_ctlr, 4,
         VGIC_ACCESS_32bit),
     REGISTER_DESC_WITH_LENGTH(GICR_STATUSR,
         vgic_mmio_read_raz, vgic_mmio_write_wi, 4,
@@ -647,10 +734,10 @@ static const struct vgic_register_region vgic_v3_rd_r=
egisters[] =3D {
         vgic_mmio_read_pendbase, vgic_mmio_write_pendbase, 8,
         VGIC_ACCESS_64bit | VGIC_ACCESS_32bit),
     REGISTER_DESC_WITH_LENGTH(GICR_INVLPIR,
-        vgic_mmio_read_raz, vgic_mmio_write_wi, 8,
+        vgic_mmio_read_raz, vgic_mmio_write_invlpi, 8,
         VGIC_ACCESS_64bit | VGIC_ACCESS_32bit),
     REGISTER_DESC_WITH_LENGTH(GICR_INVALLR,
-        vgic_mmio_read_raz, vgic_mmio_write_wi, 8,
+        vgic_mmio_read_raz, vgic_mmio_write_invall, 8,
         VGIC_ACCESS_64bit | VGIC_ACCESS_32bit),
     REGISTER_DESC_WITH_LENGTH(GICR_SYNCR,
         vgic_mmio_read_sync, vgic_mmio_write_wi, 4,
diff --git a/xen/arch/arm/vgic/vgic-mmio.c b/xen/arch/arm/vgic/vgic-mmio.c
index a96a7f8d96..e89b579bee 100644
--- a/xen/arch/arm/vgic/vgic-mmio.c
+++ b/xen/arch/arm/vgic/vgic-mmio.c
@@ -585,6 +585,9 @@ static int dispatch_mmio_read(struct vcpu *vcpu, mmio_i=
nfo_t *info,
     case IODEV_REDIST:
         data =3D region->read(iodev->redist_vcpu, addr, len);
         break;
+    case IODEV_ITS:
+        data =3D region->its_read(vcpu->domain, iodev->its, addr, len);;
+        break;
     }
=20
     memcpy(r, &data, len);
@@ -613,6 +616,9 @@ static int dispatch_mmio_write(struct vcpu *vcpu, mmio_=
info_t *info,
     case IODEV_REDIST:
         region->write(iodev->redist_vcpu, addr, len, data);
         break;
+    case IODEV_ITS:
+        region->its_write(vcpu->domain, iodev->its, addr, len, data);;
+        break;
     }
=20
     return 1;
diff --git a/xen/arch/arm/vgic/vgic-mmio.h b/xen/arch/arm/vgic/vgic-mmio.h
index c38ef51e6b..421f7751d8 100644
--- a/xen/arch/arm/vgic/vgic-mmio.h
+++ b/xen/arch/arm/vgic/vgic-mmio.h
@@ -21,10 +21,21 @@ struct vgic_register_region {
     unsigned int len;
     unsigned int bits_per_irq;
     unsigned int access_flags;
+
+    union {
     unsigned long (*read)(struct vcpu *vcpu, paddr_t addr,
                           unsigned int len);
+    unsigned long (*its_read)(struct domain *d, struct vgic_its *its,
+                    paddr_t addr, unsigned int len);
+    };
+
+    union {
     void (*write)(struct vcpu *vcpu, paddr_t addr,
                   unsigned int len, unsigned long val);
+    void (*its_write)(struct domain *d, struct vgic_its *its,
+                paddr_t addr, unsigned int len,
+                unsigned long val);
+    };
 };
=20
 extern struct mmio_handler_ops vgic_io_ops;
--=20
2.34.1


From xen-devel-bounces@lists.xenproject.org Wed Oct 25 10:14:00 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 10:14:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622798.969964 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvath-0002PZ-B0; Wed, 25 Oct 2023 10:13:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622798.969964; Wed, 25 Oct 2023 10:13: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 1qvath-0002PS-8G; Wed, 25 Oct 2023 10:13:57 +0000
Received: by outflank-mailman (input) for mailman id 622798;
 Wed, 25 Oct 2023 10:13: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=bQ/a=GH=citrix.com=prvs=655ba0516=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qvatg-0008QC-8Q
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 10:13:56 +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 32ace38f-731f-11ee-9b0e-b553b5be7939;
 Wed, 25 Oct 2023 12:13:54 +0200 (CEST)
Received: from mail-co1nam11lp2168.outbound.protection.outlook.com (HELO
 NAM11-CO1-obe.outbound.protection.outlook.com) ([104.47.56.168])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 25 Oct 2023 06:13:51 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by PH7PR03MB7107.namprd03.prod.outlook.com (2603:10b6:510:2b3::9)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.36; Wed, 25 Oct
 2023 10:13:46 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::acf0:ce2b:1634:5aee]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::acf0:ce2b:1634:5aee%6]) with mapi id 15.20.6933.011; Wed, 25 Oct 2023
 10:13: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: 32ace38f-731f-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1698228834;
  h=date:from:to:cc:subject:message-id:references:
   in-reply-to:mime-version;
  bh=9DhhHKObvE2CqWAtiUneFfpTK24Jp1LOBj6h9Lo1NoA=;
  b=bpJlFQmyMyWnkI7xoBPnupfz4phzGAVFfEUYwONKzOr2MoLV84mG3nxg
   Xf6qgUBWjTW1lBknf4QkrSpdOlTH50nyAJ55dwoWjdT/oXMJtq1CTf48v
   jdTgfV7d1tdVAnajFML70LCM2PPrcXKl5tUiz4dJz3u0BL10kaXFadcYE
   Q=;
X-CSE-ConnectionGUID: fPOWoSl+QwGhvqrtTWAkAQ==
X-CSE-MsgGUID: qPN7souyRRubvvIW32cN9g==
X-IronPort-RemoteIP: 104.47.56.168
X-IronPort-MID: 126455225
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:iXTQzKOZveEKS0nvrR2DlsFynXyQoLVcMsEvi/4bfWQNrUp332BRn
 GRLUWmOb6yMYGOgf4h+O4+w9h5UuJfSn9VrSgto+SlhQUwRpJueD7x1DKtS0wC6dZSfER09v
 63yTvGacajYm1eF/k/F3oDJ9CQ6jefQAOOkVIYoAwgpLSd8UiAtlBl/rOAwh49skLCRDhiE/
 Nj/uKUzAnf8s9JPGjxSs/nrRC9H5qyo42pA5AFmPJingXeF/5UrJMNHTU2OByOQrrl8RoaSW
 +vFxbelyWLVlz9F5gSNy+uTnuUiG9Y+DCDW4pZkc/HKbitq/0Te5p0TJvsEAXq7vh3S9zxHJ
 HehgrTrIeshFvWkdO3wyHC0GQkmVUFN0OevzXRSLaV/ZqAJGpfh66wGMa04AWEX0uhPJl5Jz
 vhbES8ibg6anf6K/5u4Y9A506zPLOGzVG8ekldJ6GiASN0BGNXESaiM4sJE1jAtgMwIBezZe
 8cSdTtoalLHfgFLPVAUTpk5mY9EhFGmK2Ee9A3T+PRxujaDpOBy+OGF3N79YNuFSN8Thk+Fj
 mnH4374ElcRM9n3JT+tqyjy2rKSx3mmMG4UPKSA0KFxh0CC/FYOAgMIdGTg+/Kf20HrDrqzL
 GRRoELCt5Ma9kamU938VB2Qu2Ofs1gXXN84O/037kSBx7TZ5y6dB3MYVXhRZdo+rsg0SDc2k
 FiTkLvBGjhHoLCTD3WH+d+pQSiaPCEUKSoJYnYCRA5cut37+tht3lTIU8ppF7OzgpvtAzbsz
 juWrS84wbIOkcoM0Kb99lfC696xmqX0oscOzl2/dgqYAslRPuZJu6TABYDn0Mt9
IronPort-HdrOrdr: A9a23:gcBd5q7Hvd8L1GBceAPXwcGCI+orL9Y04lQ7vn2ZFiY5TiXIra
 qTdaogviMc7wxhLU3I+OrwSpVoJEm9yXcb2/hgAV7PZnibhILsFvAA0WKA+UySJ8SdzJ8h6U
 4IScEXZLKQMbE5t7eZ3ODfKade/DDuytHduQ609QYdcegeUdAE0+4WMHfkLqQ6fngLObMJUL
 6nouZXrTupfnoaKuy9G3k+RuDG4/nGjojvbxIqDwMurFDmt0Ln1JfKVzyjmjsOWTJGxrkvtU
 DDjgzC/62m99W20AXV2WP/54lf3PHh1txALsqRjdV9EESiti+YIKBaH5GStjE8p++irH4sjd
 n3uh8le/9+7nvAF1vF6icEj2PbvgoG2jvH8xu1kHHjqcv2SHYREMxan79UdRPf9g4JoMx8+L
 gj5RPci7NnSTf72Ajt7dnBUB9n0mCup2A5rOIVh3tDFaMDdb5qq5AF9k89KuZGIMvD0vFgLA
 BSNrCf2B8WSyLYU5nhhBgu/DV4ZAV3Iv+EKnJy8vB9nQImxUxR/g89/og+hXcbsLYwVpFo7/
 nNW54Y7o2mdfVmJJ6VNN1xN/dfNVa9Ni4kEFjia2gPR5t3dk4l7aSHoYkd1aWUQqZN4IQ/n4
 mEcFRZqG47ZkT0YPf+paFjw1Tzel/4cSvgzdwbx594p731WbzxdQWYQlAv+vHQ28k3M4nlYc
 z2FI1bBOKmEHDvF4hExGTFKuJvAEhbb/cu/volV1WS5v/aM4GCjJ29TN/jYIXWK3IfUGXnDh
 I4LVzODfQF0XqQHkXliwLaQHP1Z0z4+tZRPcHhjo4u9LQ=
X-Talos-CUID: 9a23:DehzDGGnbQj4svgyqmJpzGkrHfshMUTC43fOOlWkNVlAS5SsHAo=
X-Talos-MUID: =?us-ascii?q?9a23=3ACCpsaA4bAYXvXsG8aTAntr29xoxx24LxE0cQgK8?=
 =?us-ascii?q?8psOaKw1PYG2WqmW4F9o=3D?=
X-IronPort-AV: E=Sophos;i="6.03,250,1694750400"; 
   d="scan'208";a="126455225"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=hQXzDa+sAaWx+dikqhhrJcz0kPN08ysKBOp2ULP2ZXXtnJSMKlJO/nFFbEZX82x6JBvzyTxNuqK8VEK1Tn6nZycuf2+9V3Ea9fRwQSnF6jsnV1uEHoHfYdW6XYUiX9SkXqoS7FIyQTYEg+fvfbdNdfrAYhjr2QBciq8to+DVTQltfXiLAkuwtyxrMWuAsVq48XuFnl4tzEP9OVomeagty8GkerXQwFfrAOXJcF3CIxvrXMA3twzCx1hLENBKLKIw+CAwi2FxCSqeIRMKiskvjB8bNZPfW+S7pPyQc9lzA/aJPA7keSd6f5mdlt9lqz8T+0qZ+dR8FNCYaieNK+/0Iw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=TKpIPWAbwNNkHC6pCqCF07XWz1U58EjKJ5Jpd1HjDXE=;
 b=nZoUYqyJvgqtOzLIMcm9dNs7hWk6zyLlmdWsWRq1O4wMX4ubiaB0iVGberl0Z6gFs11vn+Vk6BEeIeO7kOhJ/IXZ1glTnkMd6eGDwi7b8z4NAP6VzB+LmpMmppLW/SYO2B41gDHH2JXmcHF5DE/9C6a4D97yDPo2CPuFoZ0sRiL2WmYL9f3yAa8Dp6JflapRvLhlu6w5DHPdGrbaZEarUl6TriJKJrQLpUHdDyapVlRFqATsf6vb5t/3xWYDDzMb9kk+dkbEINBzKFCRv/C1eFchH31JGNe2UIObkR7/aL0ce+yEEAU2KbQPQjKI4eHhBh5wjl1WYSP3o5WBjlh+Gw==
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=TKpIPWAbwNNkHC6pCqCF07XWz1U58EjKJ5Jpd1HjDXE=;
 b=XeohVFdCfvTeKDhgHmfwFK25jLU5rBt16xKvIhl1RlRWqt2OxOqnqqK19jzqj0Tz8Z6bJU6afjtzpRPuQfP/8U2E6h3iuFoLYzO4W+nDNe8QASiLMyFgKkoVPX7ivEWXvb4u91IC/QCS+kWlHL4JAqyDx7Z7rLWqAu2DqPDmI0U=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Wed, 25 Oct 2023 12:12:12 +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>, Wei Liu <wl@xen.org>
Subject: Re: [PATCH] x86/vPIC: check values loaded from state save record
Message-ID: <ZTjp_LYGwvKKumYg@macbook>
References: <060ae425-2daf-9ce4-d291-215d483d592d@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <060ae425-2daf-9ce4-d291-215d483d592d@suse.com>
X-ClientProxiedBy: LO4P123CA0408.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:189::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_|PH7PR03MB7107:EE_
X-MS-Office365-Filtering-Correlation-Id: 35bce7f6-75b3-4946-c14e-08dbd5431324
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:
	I8hJtwNpS7iD/PD826iPpEiaWoQOftTjHi/LS/zKMgXMcn6lAio47aukxQWrar7lXl0cacU3LT+5jFpNEm+18+z0jKkEvt6/4gp2I7DRpxFxupewAuXFXHb+CLZiM4pK/NytYRCT86WS8pqVvAD0llQCsc4BUU9tuOwyBqAyb8pgFdBQxb0BceuFysM/DDF6TX7ChZMO2JwwjAK2mziQ/eVasAS7R2nb97HxcaDFxAgzvrDYchIHZ61NkEr8fxQaAGxNyfwqzFgc56ckgvW03AKRN3cPi5wsXUdmB+pZ5oKiTasgsg+eCROrzk2Nv+CT7Nqu4dNyEu5FcE0sLTpYIxP5K/hUXpA3VCs6hzKF7EmNZ35Tw/mLY3Fq1BAiDUDW1RVTLNg+bDskqBrlJyRVBuBUqiqTd2Gw30TyJtgmoyTL7fx6axGJ6zaIdq46X8vjxOQr00Vcum1ly6VWaVlp8g8zkhaaUvEZUB8JxfnqQa/scHNL74rIOtal36Gykh9kDmZ2WXPzMh4anQ6ZRVxddE2Px+ZxHXIRjMt46OKAsxtEc43Ui1Bj1R1H2YqerWvr
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)(396003)(366004)(230922051799003)(64100799003)(186009)(1800799009)(451199024)(2906002)(6486002)(66556008)(478600001)(66476007)(6916009)(41300700001)(8936002)(4326008)(8676002)(66946007)(54906003)(316002)(5660300002)(33716001)(6506007)(82960400001)(86362001)(6512007)(38100700002)(6666004)(9686003)(26005)(85182001)(83380400001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?U0FhNFQyN2s4TytwZzNXZFZOWmRYQS9kbDZJRkthYTVmZmNLV2RZV0RiS1pk?=
 =?utf-8?B?MDE3U2hGNThncUtMOG1iOWhyemtSNk05K3RLcVlSZm05L2V1aG9ScnNyYlA5?=
 =?utf-8?B?RzFLenBsdFRsZDhVNWtnQUc3bFFpTGhzTEVyZW5mM1Y5UmhwejlJdTFJbktZ?=
 =?utf-8?B?RG9zVHN1Yzk1WkhnYTFJRk1IeE0yZENSWlhlSmtxZWR1NTYweHpvdjJRYnJt?=
 =?utf-8?B?ZTFNTVpubEcrUFhsM1loK3pHMHdabDBEKzZsSXBzcXh6T01MMUZrTmo5azc1?=
 =?utf-8?B?OVBqNkYyeXhKR0hPZlhjdGY1eENyQUpXZDA2MVhTbTgyRWVLUWtyMy9XV2lQ?=
 =?utf-8?B?MllRTkV5eVNkNzZPa1d4bjRjUWJvMStWVmllT0xuSlFFM1VLY0xYN29rV2Mv?=
 =?utf-8?B?QlpGc2w3bTR4dWF1V2tLVURZMSs1bWNkeVcrVFRiRmNDN25QWC9BOHEzcDhZ?=
 =?utf-8?B?VDhZa3FsekZIY1oyVXJSWHlLTUJzT1VhS1F0YkdCUWNmU1dDc05HdFNPZTFT?=
 =?utf-8?B?UXN0dEd2OVJEcXNLMkRFcVlDaTF0a2FEd0pncVdFRzd6aCtuS241RVkzaUJ2?=
 =?utf-8?B?TnUyeU45VFBmRzE0cS8xWm9zVVpwMVduTG9vUWpFSVJTZ3YwUVJuWHd3cmd3?=
 =?utf-8?B?bGd5UW1uSlI0ZGwwdnZ5TVdOSzMrQWMwQWowamxaZ2FrUXBjdzA4WE4xTWg4?=
 =?utf-8?B?NGNUNmFRd3lqRVljVEJVcnV4MkNmb3k5TUxocm0yTW56bkErdWNkdXEwUXlT?=
 =?utf-8?B?VGw5dkxpejg4cmJTSzRmQUdYMW80THBZbzFNc1RaV2hobjJWUlBkcGt5L0ow?=
 =?utf-8?B?dmthYk1OYmtRSDZjK3JsWnJLdVhqVkFDWUMyd3NCWDFiV2JQb3JwZjZGNWxn?=
 =?utf-8?B?TG9pTGFVV0ZsR1RrOHZXS0dLYXZFSjVQajNPdExBMTJWTExKNkgrMDVHcFZL?=
 =?utf-8?B?L1NPK0hnTVgraVFQSW9MQVVFUEtQWTI2bmgxUzBQOVZWYXdVTlVraUxxSCty?=
 =?utf-8?B?eFF3RUtNakJjYjBEUHlzazMvUzFpYWUwS3pwTmpSN3ZYeGpqT3ZNN1BLbEpV?=
 =?utf-8?B?b3BmTnc1YWR4MXI2eVR3bEMrbkY3d2lYTXNLNk5CU0VFK21taDREb09ZbnFi?=
 =?utf-8?B?cGFqOFJuMDA0MVlXemsxdmdna2hYd0VqSUF4TFhsYThDWFpMYTJTeDFxZDh2?=
 =?utf-8?B?M3hFdXdoSlBXeVJzMk9udzM5dnJnZGpLMTFnSjZOMUV1OGRMQisrZjBwSGZO?=
 =?utf-8?B?RHpXbGJBYy9JYWE2YTlBaHY4YzJESGpZcmlZeHNDNzZnWjRKcHBKZlcza3VJ?=
 =?utf-8?B?empwTTRpREpTWlkzQlN6VjFYNEx4MEtqWEIyU2JUUnZsTzlrS3hDcEM5cmNN?=
 =?utf-8?B?cWdld1NaYkoxVGlIcmNUWERaRVVGUmdkczVPdW9ZcUxwZXUwUGNpYWoweHNI?=
 =?utf-8?B?dVNlQnNsWWUyRnJtM05EY3UyNHBzUFlMY3RLZldnT1IxcnFYYVNvcWROQmZ6?=
 =?utf-8?B?ZmIwVkNqTXY3UE1rVkd4TWNRcTM2MEg1UklPa0tBb0pCMk5vV0g3dHFIcTJU?=
 =?utf-8?B?KzZJVTExek1ZWmVpbXVSQ3lEK0g4VWU4OUZjWUdDcmhmSWdjODlLb3RUOE9U?=
 =?utf-8?B?cWZMR2dMc0QxYzZjVzVaMEZON1BsNE9OaWRsWk1RaTAzVjhDM1VMOXNBWnoz?=
 =?utf-8?B?MG85ZFJFVkE4VWVYUFdDSFY0U3RGalJjM0ZBbFFBRUdkUjRNNWRTMFpuRnA0?=
 =?utf-8?B?S0pGRFJsZ05TZW5PejZ5eGNZaVd3NFJyNmdFVnN4MHJUZlNFaGFpUkMyTlFv?=
 =?utf-8?B?S3lhc3lVZnNLRDVyK0xtaDhzWEZTWE1SWWhqNWFycDBXa09kVnFzWDg2Z1Nx?=
 =?utf-8?B?TUJESVBqYmw2S2RiK2NZNVV0RjhkNFd2b0RDVmRzVnZoY3Uvb3ZGck84V2Jh?=
 =?utf-8?B?c0F5RkNGSkcwQmZBYzVoWnFZbmsxM3pTNyt0amkxemdlNkxxbnBVcVVnd2pW?=
 =?utf-8?B?MWwzQVpXQ09QZEhjS05PZ0lxSXlkcjdLSDZLQjJoWEZlcDA0T2hDNVpQaXFQ?=
 =?utf-8?B?M2YvN1FaQWx6cGFKdmNHM1ZNeEpuYjQreTVEU2llQVhYTXF5ZEJRa1hyK2dm?=
 =?utf-8?B?YjBXajQyVzhPaFcvWEdTMGxoamRpdWJlOUpEWXVVdG4wQ3BLbGNZSjEzYkxk?=
 =?utf-8?B?YkE9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	zR6he4ozTTUVriYoO2oTH60wBFjmMzLKNW8XdW8aZ8U9PINNygq0E52sPc7s3lUeE+VPPYnCml1qOKRAL/wyZt5MuPQ3oWh+3jtSQ6tUFwbsSLy2MGPRl22VSTX32V3q0oY2b9+uezxF4fjaX6P9kg5eoone8baY/JRBa6mWCMfyD85WxoJfhiDG4RqRCXBfIVwcskUar/O8zO9uP0/wQgbR21OccuzP5ZuefhkUTjOfwJd54HrSpkl5YeY3g09k2zNJU/2QKjgB6kCQ7KnIORUScgTuqCu9dvfsips+DHD5Fdd6AEgAOPW7jvUjpXpkax0CLulcitv1pdmrN7ROkslQmttuZ5dMQvs4L+sbh8AtxDfVsYHquQ5wCB5kgr/DlUyO6UWrJ5yaRIIDE8DcHyaNLV4Aw9ZQWl64Xtup51eEGLTZeFpsWpgKBOrAHtYKTocooguMm/vhAAEnAfmR0G0vJyA1oulHuUVFE69SpoofMIweleL4acBqZ4wWkoLt+7I0x4X1a/RMkU9i0vpju3wMgtaWQ2t49CC7asV3hYfv80w02DmzLPsO4vW0VOF2EIaeO8ATq7+tbUDdjgkP2jOr87/5c+wBS2ZnLcQLKb8CF2qabL7OVx9HwnX9dWnYZp9MRB325kH7H6nI55/d/u4HqLJd1N6HLTL2jIjOeAuL/BNoHsJDr70FSyQlCGSXQk0ZW5eHNY8RyaBNVbkmReipySlYle0Hj0aPijXIXBVhG4c+MGW+TZGFCkkSgfMUbL4tzdMRBp6t5onnbBGcRNlg/gE9qkpJYCjDNZgj5zBSdBJhcNELpipyk709sLMGvIWls05sJ+Lh0t+jL5N3nw==
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 35bce7f6-75b3-4946-c14e-08dbd5431324
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Oct 2023 10:13:46.5138
 (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: GfGVPmhhy0KbEKIwB/fcM70B8wFvNdDXrsjN7M9ywpZfH9iNwlQv+svpBXHDAbsPlqAF4kYfOd8LYFhH5HtZhg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7PR03MB7107

On Thu, May 11, 2023 at 01:50:33PM +0200, Jan Beulich wrote:
> Loading is_master from the state save record can lead to out-of-bounds
> accesses via at least the two container_of() uses by vpic_domain() and
> __vpic_lock(). Calculate the field from the supplied instance number
> instead. Adjust the public header comment accordingly.
> 
> For ELCR follow what vpic_intercept_elcr_io()'s write path and
> vpic_reset() do.
> 
> Convert ->int_output (which for whatever reason isn't a 1-bit bitfield)
> to boolean, also taking ->init_state into account.
> 
> While there also correct vpic_domain() itself, to use its parameter in
> both places.
> 
> Signed-off-by: Jan Beulich <jbeulich@suse.com>
> ---
> Of course an alternative would be to simply reject state save records
> with bogus values.

Likewise on the vPIC one, I feel it might be better to just reject
such bogus entries, instead of attempting to amend them.

This one however just unconditionally reset some values, but might be
simpler to just test if is_master == !inst and if it's master than bit
2 in s->elcr is set?

Also if we are serious about doing some sanity checks in the loaded
records, we could introduce a checker function for the load machinery.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Wed Oct 25 10:14:23 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 10:14:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622802.969973 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvau5-00036m-K7; Wed, 25 Oct 2023 10:14:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622802.969973; Wed, 25 Oct 2023 10:14: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 1qvau5-00036f-HL; Wed, 25 Oct 2023 10:14:21 +0000
Received: by outflank-mailman (input) for mailman id 622802;
 Wed, 25 Oct 2023 10:14: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=TDEh=GH=epam.com=prvs=46626b3b1e=mykyta_poturai@srs-se1.protection.inumbo.net>)
 id 1qvau4-00035s-0W
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 10:14:20 +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 40e5ab53-731f-11ee-98d5-6d05b1d4d9a1;
 Wed, 25 Oct 2023 12:14:17 +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
 39P6fZXm019492; Wed, 25 Oct 2023 10:13:09 GMT
Received: from eur04-db3-obe.outbound.protection.outlook.com
 (mail-db3eur04lp2050.outbound.protection.outlook.com [104.47.12.50])
 by mx0a-0039f301.pphosted.com (PPS) with ESMTPS id 3txjfcj00w-1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT);
 Wed, 25 Oct 2023 10:13:08 +0000
Received: from VI1PR03MB3758.eurprd03.prod.outlook.com (2603:10a6:803:33::29)
 by PAVPR03MB9229.eurprd03.prod.outlook.com (2603:10a6:102:32a::9)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.29; Wed, 25 Oct
 2023 10:13:03 +0000
Received: from VI1PR03MB3758.eurprd03.prod.outlook.com
 ([fe80::eecf:7ef0:b4b5:fc42]) by VI1PR03MB3758.eurprd03.prod.outlook.com
 ([fe80::eecf:7ef0:b4b5:fc42%4]) with mapi id 15.20.6907.032; Wed, 25 Oct 2023
 10: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>
X-Inumbo-ID: 40e5ab53-731f-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=DnDPM11Of16DeACkBDn+h0yunzvXfhcvMOQiRoOaJfH2Df9OJNYtRmdoE0uR2R7qgpkmp+QDn/nQ/rFsyuz6TwVuKAQij+ZP46xj1QbAXF49UVDiXkUd4Ah5p9ROmAL17CHYOOe80JAerqqNwRlVEAjGleJ0po2u9Z0wKZ0etH3oqZ2sYd9KTIlNayYfHgWcrQh+cB0tcp6VqWtDlQrKh11KrIfru1m5U94prBF+RkEvHL5GxI7acmYZQfhXc8AcTcW6S4VzNyZ9P6P+XcEBLP5OaP2xt64sGC2Qk0pl6aQsbmMV9aHox5TpNWB725l2AchegXqD/UwhyFKJnIRTxw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=xTYEkPoJAbuG/asQRALcXJvaTc2lqBFDVLfqmc8UUZw=;
 b=kNNnswN107PBg/tsBCcNmuDuDEPEsG6fUcULbb48ZEsL6O3pDdADPe7MJBEAN6VIZ1pXjVmBLNuOuzHRThFjlLxLqhbxPIOIv2SyYjQwJvBqEDUrgtOXNvG+1pnNBOBeErFVAsE8i6IuhIU492KxRUCLhik5B+6oEarbSc7/nHiqaE6rrxSlYl5EA97VguvL4FtEu7n43SBhj98lzy2sTZyZJ8PSvou7jGmrtDVDr6zOXi4SHwCp6hO6uk8DisuU7y8dipe3aURxnrMSAncH/F4qn5QDHGcl9AKQVD9XEElUrDUwaDUgF5UmQsk1BzruB6CZSE5+x7cCCgVWq9dNEQ==
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=xTYEkPoJAbuG/asQRALcXJvaTc2lqBFDVLfqmc8UUZw=;
 b=XS3dfR0IBYvEPA2ZVaTuR5oQcpXpdnuhYBGubNQEDCoxKAM766QL9+sOTqQjPD0HPcU8n5kXgOKNn/4aabHtXVUWXpr6i8BKGWpeKAfvVpQW2SSUlLw35omsBrCsRRlHx5GKexYPhLHOkNXFNBm4lgu2dpV3n0OieYHR+u3zr5ZiEv5flSC6sg1cQLhylFGwV0VfCbAu3Pl1L9MSZGYtWA6JKDweRzRsyEi/7IpLkZABUKI65+Fym/xjSRn6Usw8YpjYTs4NAdfartEiKXQ/6PdZ/PTs7kh8RlB2RaSbeqLJ08IzAkeX6CXAIBWFoZhxqyto3S4xlLnS/l4tgseWhA==
From: Mykyta Poturai <Mykyta_Poturai@epam.com>
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
CC: Mykyta Poturai <Mykyta_Poturai@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: [XEN PATCH 3/4] arm/new vgic: Add GICv3 support for NEW VGIC
Thread-Topic: [XEN PATCH 3/4] arm/new vgic: Add GICv3 support for NEW VGIC
Thread-Index: AQHaByvWJmV5C4KQO0yIb07J1Qv6yw==
Date: Wed, 25 Oct 2023 10:13:03 +0000
Message-ID: 
 <102d39655bec312490acd5abda966b66e6962da7.1698225630.git.mykyta_poturai@epam.com>
References: <cover.1698225630.git.mykyta_poturai@epam.com>
In-Reply-To: <cover.1698225630.git.mykyta_poturai@epam.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
x-ms-publictraffictype: Email
x-ms-traffictypediagnostic: VI1PR03MB3758:EE_|PAVPR03MB9229:EE_
x-ms-office365-filtering-correlation-id: d76c6731-f42e-41a0-3458-08dbd542f99b
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: 
 PvvXhPQXG9Vi1SkBJ3cQNccK3sdJI6RLkiM5Jb436UkL57VFMduYEn+oHCJKK+9X1oQ5EoSo9nicZytlc9oqlfVBY5iu6yNzl2tUUZYccX//gk+tnZBTcVPyJcTZjroKL3EFqyaxMobZObT2dkY6f0/HvI46RlFjWftRdO/p1TdZHB9PdU6M9jdd6LSqicxKmEjuxMBCZcCb8pcC9vKezCa7riZ3572BkI0cImJaOECWmP39x4J3grG7Hs/RIgrP3q6ZA9WhuAtNyzHGBuhf89oqUPOIltrnkeJcRl2i7GAU84/EJfjggyWw/RJ+wXRqOVvIfa7brZmMieZ+x3sMlwTfzLXZvqQmPAxg1+U9PEDXWt2hCGE62fb7zhRvE45oyE27RA7VceIbfa+psQHBHyEHOTOQSSUT182n3rsuwXQjrswhdBrjBpHbbFHLhM+dZjl/PLlGakR1UTp86w1D3Lm2HB3NHo96dO0fVuQZsBlcinmf1T+swC3OP1ab7/Jb1TWEfOsaT19vxfs0CKTJX7q+rEvsPbRbf+7JOwXBjTSgaWNAYVXa2Ac6X4dJH4TOmu+qkiftTq6omUdI9jhkcBLumzrAvRQrl7ijYeg42TbPYSJTQTWKCLtMwvVDJTwSCVO562qABtRyQzcDlQ9wDQ==
x-forefront-antispam-report: 
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VI1PR03MB3758.eurprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(136003)(396003)(39860400002)(366004)(376002)(230922051799003)(64100799003)(1800799009)(186009)(451199024)(38070700009)(26005)(66899024)(38100700002)(2906002)(30864003)(41300700001)(86362001)(5660300002)(122000001)(8676002)(8936002)(36756003)(4326008)(2616005)(478600001)(6916009)(66556008)(107886003)(71200400001)(6506007)(64756008)(54906003)(91956017)(316002)(66476007)(76116006)(66946007)(66446008)(83380400001)(6486002)(6512007)(2004002)(559001)(579004)(309714004);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: 
 =?iso-8859-1?Q?zmbMJ0ZRORs/WsnH81ub5/3aIRqiQlnB01H5TfJtuIBIpEq8Pl9eEcauIT?=
 =?iso-8859-1?Q?lfXAyepHlpqi95YiLOkuO916MG9XD98a3fH/FQhHSxZ0kI1fuk6Z6kDwrY?=
 =?iso-8859-1?Q?z9j9tI/BvxkTXyPXsUr7+2QQRb7EsU/A46KUBXSB3twB6J03eEswxtkE8h?=
 =?iso-8859-1?Q?KYnJ8UXI1msg2jVch2aibwdFPyRGn6lHOLZjwzDdyrz3zNLmkzxOjnt776?=
 =?iso-8859-1?Q?O+sG8qomgLD4tssO0WJ2KZLFuhQZWhTHxGVkQqZ7emFNL3HuOLMQnNuCLZ?=
 =?iso-8859-1?Q?EMrA3Gop5O2lQGOXj69uQlWjYCZIPfqLH8RbAffjHxaozntY55hAhig4Zl?=
 =?iso-8859-1?Q?Qzrq++PRUw9+1SH9R9g/9+PHomTE44x83cChif/IdDIUooe8FQN4QWrsWw?=
 =?iso-8859-1?Q?qI3qCKh9/Cn0GS9TVRDB1nTtUQr7lMxoAKf+jLLWKgYa2HFT2Q+2cGRZ2f?=
 =?iso-8859-1?Q?ZzsTsqC3kXP+NYySysbY41+rXO4wCsEzdkZqELNLVock5MAxtmO7jJfPLs?=
 =?iso-8859-1?Q?EcQZw2ik7HOwtD+fElO4Yxl7MFQ6ZpzFzrJSZGoBtDCCokC11g1Hpfzpd+?=
 =?iso-8859-1?Q?D9euneafEMn0BiKWNngcuQFj+pdjrZGyBrD11E2TEhf8MB+wMdDkW/LrS5?=
 =?iso-8859-1?Q?MxNoI2DXAJH4jNHl5AeCcxPCd++E3tfuwhAXgItpwFmvi/oPbNSbGogaD5?=
 =?iso-8859-1?Q?j/GtyXYBVB+nCeUPEgxfKXsYFTCW+zUf1JV0TBc7wiglaLjNIhznV9WIJ+?=
 =?iso-8859-1?Q?khSTqEguJCKUU6B1WJPv34bcd6u0QxRI8dHTdJwyIWhbwW/Q8PhwUQ7clk?=
 =?iso-8859-1?Q?i1PQLHXq1QTDEtjuwO2og5ol2fSHhYpQtaSF/CGHcr/i4an84JwxJgYy43?=
 =?iso-8859-1?Q?n4IhQKE5ViLinqfkyoJLG54T/3oD35fsUgseZLOw63dun9QffAz7cmuEb4?=
 =?iso-8859-1?Q?oOKiqghtNlVyoqGrNesVyg1bcRn8IpzPMMF/yJtHI1LvkZGgTamYXC6xK9?=
 =?iso-8859-1?Q?lMv4x0w8cvR1QVgb63CEYcD87N/if9QlUHICjksuksYX9Hfgv+HF0sToLZ?=
 =?iso-8859-1?Q?ZLme9D69lDdODGIpcA4x6wlBwKx0PMLXBbCvsQ0YkzryqByOckDkzorook?=
 =?iso-8859-1?Q?/Mz9TkT4O4M2ZM79RkSnB831CF6P1spI2vjf/It0Md8d7PqSvKhFQ7HiPx?=
 =?iso-8859-1?Q?EcPfZ4a08TaGwZsUovcENm0MZzMrjJ0Zz3ZHhuYxl4i6K+30NHLILT5rOX?=
 =?iso-8859-1?Q?pf6RqUIZZBWOpUnpEXH3gpP7nx2KAK4GQFMYjhSqkF5QE2l661bX57WdYM?=
 =?iso-8859-1?Q?yOUKMVDuzUGfakC1uPUY/C88eXIXtTKtYc/ZempLyShPOvHsQuCxXz7Vji?=
 =?iso-8859-1?Q?aR1O/4RuA0SY3dmhdT5nwCDcbWLtIHA/KoWhD8gsqduzd9DY2kJ8Wlo3sC?=
 =?iso-8859-1?Q?N0B/AYwVJoHPEx+K1YSF5MhLmW4AbGyfheprl4AJhC1XHveFmO5nHn/nlK?=
 =?iso-8859-1?Q?iLTx9qQovdRqr/IS8gOkWkZ0VvegeC5cf9OS1SBGpUXO1Soif4pqBR1E3M?=
 =?iso-8859-1?Q?EP1Qtl9A0guVF3qKFh+cQuIATv1brfpt2I0GoOZZhPsTxONSnhmGDlAlT5?=
 =?iso-8859-1?Q?BYfQBKvPJRASpteZdwm73PP8heYKUwRUH1duaWvPOAfFFQg4yuoYVENw?=
 =?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: VI1PR03MB3758.eurprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: d76c6731-f42e-41a0-3458-08dbd542f99b
X-MS-Exchange-CrossTenant-originalarrivaltime: 25 Oct 2023 10:13:03.2795
 (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: h9+wM9NfzOizcIZAWm95NhRO/GPUDdFcQHqU+5p48bGG8qv18tk3lzMO+PVoUCyjeCPoILOwEiIoyOKpASqwYQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAVPR03MB9229
X-Proofpoint-GUID: JBhHpW5f4GafiXVQFX2POkb4ofQQz0YR
X-Proofpoint-ORIG-GUID: JBhHpW5f4GafiXVQFX2POkb4ofQQz0YR
X-Proofpoint-Virus-Version: vendor=baseguard
 engine=ICAP:2.0.272,Aquarius:18.0.980,Hydra:6.0.619,FMLib:17.11.176.26
 definitions=2023-10-25_01,2023-10-24_01,2023-05-22_02
X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 malwarescore=0 adultscore=0
 suspectscore=0 priorityscore=1501 impostorscore=0 mlxscore=0 spamscore=0
 mlxlogscore=999 clxscore=1015 bulkscore=0 phishscore=0 lowpriorityscore=0
 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2310170001
 definitions=main-2310250086

Add support for basic GICv3 functionality to new vgic. The code is
ported from Kernel version 6.0. The distributor, redistributor and
CPU interface are ported and hooked up to the XEN interfaces.
The code is adapted to Xen coding style and conventions.

Remove !NEW_VGIC dependency from GIC_V3 config.

Signed-off-by: Mykyta Poturai <mykyta_poturai@epam.com>
---
 xen/arch/arm/Kconfig                   |   1 -
 xen/arch/arm/domain_build.c            |  23 +-
 xen/arch/arm/gic-v3.c                  |   9 +
 xen/arch/arm/include/asm/gic_v3_defs.h |  13 +-
 xen/arch/arm/include/asm/new_vgic.h    |  32 +-
 xen/arch/arm/vgic/Makefile             |   2 +
 xen/arch/arm/vgic/vgic-init.c          |  12 +-
 xen/arch/arm/vgic/vgic-mmio-v3.c       | 940 +++++++++++++++++++++++++
 xen/arch/arm/vgic/vgic-mmio.c          |  18 +
 xen/arch/arm/vgic/vgic-mmio.h          |  10 +
 xen/arch/arm/vgic/vgic-v3.c            | 383 ++++++++++
 xen/arch/arm/vgic/vgic.c               |  60 +-
 xen/arch/arm/vgic/vgic.h               |  48 +-
 13 files changed, 1523 insertions(+), 28 deletions(-)
 create mode 100644 xen/arch/arm/vgic/vgic-mmio-v3.c
 create mode 100644 xen/arch/arm/vgic/vgic-v3.c

diff --git a/xen/arch/arm/Kconfig b/xen/arch/arm/Kconfig
index 2939db429b..c91011bc15 100644
--- a/xen/arch/arm/Kconfig
+++ b/xen/arch/arm/Kconfig
@@ -82,7 +82,6 @@ config ARM_EFI
=20
 config GICV3
 	bool "GICv3 driver"
-	depends on !NEW_VGIC
 	default n if ARM_32
 	default y if ARM_64
 	---help---
diff --git a/xen/arch/arm/domain_build.c b/xen/arch/arm/domain_build.c
index 49792dd590..a4c97aa0bf 100644
--- a/xen/arch/arm/domain_build.c
+++ b/xen/arch/arm/domain_build.c
@@ -2549,7 +2549,12 @@ static int __init make_gicv3_domU_node(struct kernel=
_info *kinfo)
     int res =3D 0;
     __be32 *reg, *cells;
     const struct domain *d =3D kinfo->d;
-    unsigned int i, len =3D 0;
+    unsigned int len =3D 0;
+#ifdef CONFIG_NEW_VGIC
+    struct vgic_redist_region *rdreg;
+#else
+    unsigned int i;
+#endif
=20
     res =3D domain_fdt_begin_node(fdt, "interrupt-controller",
                                 vgic_dist_base(&d->arch.vgic));
@@ -2572,9 +2577,14 @@ static int __init make_gicv3_domU_node(struct kernel=
_info *kinfo)
     if ( res )
         return res;
=20
-    /* reg specifies all re-distributors and Distributor. */
+#ifdef CONFIG_NEW_VGIC
+    len +=3D (GUEST_ROOT_ADDRESS_CELLS + GUEST_ROOT_SIZE_CELLS) *
+            vgic_v3_max_rdist_count(d) * sizeof(__be32);
+#else
     len =3D (GUEST_ROOT_ADDRESS_CELLS + GUEST_ROOT_SIZE_CELLS) *
           (d->arch.vgic.nr_regions + 1) * sizeof(__be32);
+#endif
+    /* reg specifies all re-distributors and Distributor. */
     reg =3D xmalloc_bytes(len);
     if ( reg =3D=3D NULL )
         return -ENOMEM;
@@ -2583,12 +2593,19 @@ static int __init make_gicv3_domU_node(struct kerne=
l_info *kinfo)
     dt_child_set_range(&cells, GUEST_ROOT_ADDRESS_CELLS, GUEST_ROOT_SIZE_C=
ELLS,
                        vgic_dist_base(&d->arch.vgic), GUEST_GICV3_GICD_SIZ=
E);
=20
+#ifdef CONFIG_NEW_VGIC
+    list_for_each_entry(rdreg, &d->arch.vgic.rd_regions, list)
+        dt_child_set_range(&cells,
+                            GUEST_ROOT_ADDRESS_CELLS, GUEST_ROOT_SIZE_CELL=
S,
+                            rdreg->base,
+                            rdreg->count * VGIC_V3_REDIST_SIZE);
+#else
     for ( i =3D 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);
-
+#endif
     res =3D fdt_property(fdt, "reg", reg, len);
     xfree(reg);
     if (res)
diff --git a/xen/arch/arm/gic-v3.c b/xen/arch/arm/gic-v3.c
index 95e4f020fe..cab3f2d943 100644
--- a/xen/arch/arm/gic-v3.c
+++ b/xen/arch/arm/gic-v3.c
@@ -1280,8 +1280,13 @@ static int gicv3_make_hwdom_dt_node(const struct dom=
ain *d,
     if ( res )
         return res;
=20
+#ifdef CONFIG_NEW_VGIC
+    res =3D fdt_property_cell(fdt, "#redistributor-regions",
+                            vgic_v3_max_rdist_count(d));
+#else
     res =3D fdt_property_cell(fdt, "#redistributor-regions",
                             d->arch.vgic.nr_regions);
+#endif
     if ( res )
         return res;
=20
@@ -1293,7 +1298,11 @@ static int gicv3_make_hwdom_dt_node(const struct dom=
ain *d,
      * The hardware domain may not use all the regions. So only copy
      * what is necessary.
      */
+#ifdef CONFIG_NEW_VGIC
+    new_len =3D new_len * (vgic_v3_max_rdist_count(d) + 1);
+#else
     new_len =3D new_len * (d->arch.vgic.nr_regions + 1);
+#endif
=20
     hw_reg =3D dt_get_property(gic, "reg", &len);
     if ( !hw_reg )
diff --git a/xen/arch/arm/include/asm/gic_v3_defs.h b/xen/arch/arm/include/=
asm/gic_v3_defs.h
index 227533868f..e4e4696de3 100644
--- a/xen/arch/arm/include/asm/gic_v3_defs.h
+++ b/xen/arch/arm/include/asm/gic_v3_defs.h
@@ -25,6 +25,7 @@
  * Common GICD registers are defined in gic.h
  */
=20
+#define GICD_TYPER2                  (0x00C)
 #define GICD_STATUSR                 (0x010)
 #define GICD_SETSPI_NSR              (0x040)
 #define GICD_CLRSPI_NSR              (0x048)
@@ -35,6 +36,7 @@
 #define GICD_IROUTER                 (0x6000)
 #define GICD_IROUTER32               (0x6100)
 #define GICD_IROUTER1019             (0x7FD8)
+#define GICD_IDREGS                  (0xFFD0)
 #define GICD_PIDR2                   (0xFFE8)
=20
 /* Common between GICD_PIDR2 and GICR_PIDR2 */
@@ -56,6 +58,7 @@
 #define GICD_TYPE_LPIS               (1U << 17)
=20
 #define GICD_CTLR_RWP                (1UL << 31)
+#define GICD_CTLR_DS                 (1U << 6)
 #define GICD_CTLR_ARE_NS             (1U << 4)
 #define GICD_CTLR_ENABLE_G1A         (1U << 1)
 #define GICD_CTLR_ENABLE_G1          (1U << 0)
@@ -89,6 +92,7 @@
 #define GICR_INVLPIR                 (0x00A0)
 #define GICR_INVALLR                 (0x00B0)
 #define GICR_SYNCR                   (0x00C0)
+#define GICR_IDREGS                  GICD_IDREGS
 #define GICR_PIDR2                   GICD_PIDR2
=20
 /* GICR for SGI's & PPI's */
@@ -108,6 +112,9 @@
 #define GICR_NSACR                   (0x0E00)
=20
 #define GICR_CTLR_ENABLE_LPIS        (1U << 0)
+#define GICR_CTLR_CES                (1UL << 1)
+#define GICR_CTLR_IR                 (1UL << 2)
+#define GICR_CTLR_RWP                (1UL << 3)
=20
 #define GICR_TYPER_PLPIS             (1U << 0)
 #define GICR_TYPER_VLPIS             (1U << 1)
@@ -131,7 +138,11 @@
 #define GIC_BASER_NonShareable       0ULL
 #define GIC_BASER_InnerShareable     1ULL
 #define GIC_BASER_OuterShareable     2ULL
+#define GIC_BASER_SHAREABILITY_MASK  3ULL
=20
+#define GICR_PROPBASER_IDBITS_MASK   (0x1f)
+#define GICR_PROPBASER_ADDRESS(x)    ((x) & GENMASK_ULL(51, 12))
+#define GICR_PENDBASER_ADDRESS(x)    ((x) & GENMASK_ULL(51, 16))
 #define GICR_PROPBASER_OUTER_CACHEABILITY_SHIFT         56
 #define GICR_PROPBASER_OUTER_CACHEABILITY_MASK               \
         (7ULL << GICR_PROPBASER_OUTER_CACHEABILITY_SHIFT)
@@ -200,7 +211,7 @@
 #define ICH_SGI_IRQ_SHIFT            24
 #define ICH_SGI_IRQ_MASK             0xf
 #define ICH_SGI_TARGETLIST_MASK      0xffff
-#define ICH_SGI_AFFx_MASK            0xff
+#define ICH_SGI_AFFx_MASK            0xffULL
 #define ICH_SGI_AFFINITY_LEVEL(x)    (16 * (x))
=20
 struct rdist_region {
diff --git a/xen/arch/arm/include/asm/new_vgic.h b/xen/arch/arm/include/asm=
/new_vgic.h
index 1e76213893..ed728652de 100644
--- a/xen/arch/arm/include/asm/new_vgic.h
+++ b/xen/arch/arm/include/asm/new_vgic.h
@@ -21,6 +21,9 @@
 #include <xen/list.h>
 #include <xen/mm.h>
 #include <xen/spinlock.h>
+#define INTERRUPT_ID_BITS_SPIS  10
+#define INTERRUPT_ID_BITS_ITS   16
+#define VGIC_PRI_BITS           5
=20
 #define VGIC_V3_MAX_CPUS        255
 #define VGIC_V2_MAX_CPUS        8
@@ -31,6 +34,8 @@
 #define VGIC_MAX_SPI            1019
 #define VGIC_MAX_RESERVED       1023
 #define VGIC_MIN_LPI            8192
+#define VGIC_V3_DIST_SIZE       SZ_64K
+#define VGIC_V3_REDIST_SIZE     (2 * SZ_64K)
=20
 #define irq_is_ppi(irq) ((irq) >=3D VGIC_NR_SGIS && (irq) < VGIC_NR_PRIVAT=
E_IRQS)
 #define irq_is_spi(irq) ((irq) >=3D VGIC_NR_PRIVATE_IRQS && \
@@ -94,6 +99,14 @@ enum iodev_type {
     IODEV_REDIST,
 };
=20
+struct vgic_redist_region {
+    uint32_t index;
+    paddr_t base;
+    uint32_t count; /* number of redistributors or 0 if single region */
+    uint32_t free_index; /* index of the next free redistributor */
+    struct list_head list;
+};
+
 struct vgic_io_device {
     gfn_t base_fn;
     struct vcpu *redist_vcpu;
@@ -121,11 +134,7 @@ struct vgic_dist {
         /* either a GICv2 CPU interface */
         paddr_t         cbase;
         /* or a number of GICv3 redistributor regions */
-        struct
-        {
-            paddr_t     vgic_redist_base;
-            paddr_t     vgic_redist_free_offset;
-        };
+        struct list_head rd_regions;
     };
     paddr_t             csize; /* CPU interface size */
     paddr_t             vbase; /* virtual CPU interface base address */
@@ -174,6 +183,9 @@ struct vgic_cpu {
      * parts of the redistributor.
      */
     struct vgic_io_device   rd_iodev;
+    struct vgic_redist_region *rdreg;
+    uint32_t rdreg_index;
+    atomic_t syncr_busy;
     struct vgic_io_device   sgi_iodev;
=20
     /* Contains the attributes and gpa of the LPI pending tables. */
@@ -186,6 +198,9 @@ struct vgic_cpu {
=20
     /* Cache guest interrupt ID bits */
     uint32_t num_id_bits;
+
+    /* GICR_CTLR.{ENABLE_LPIS,RWP} */
+    atomic_t ctlr;
 };
=20
 static inline paddr_t vgic_cpu_base(const struct vgic_dist *vgic)
@@ -198,6 +213,13 @@ static inline paddr_t vgic_dist_base(const struct vgic=
_dist *vgic)
     return vgic->dbase;
 }
=20
+#ifdef CONFIG_GICV3
+struct vgic_redist_region *vgic_v3_rdist_free_slot(struct list_head *rd_re=
gions);
+int vgic_v3_set_redist_base(struct domain *d, u32 index, u64 addr, u32 cou=
nt);
+unsigned int vgic_v3_max_rdist_count(const struct domain *d);
+void vgic_flush_pending_lpis(struct vcpu *vcpu);
+#endif
+
 #endif /* __ASM_ARM_NEW_VGIC_H */
=20
 /*
diff --git a/xen/arch/arm/vgic/Makefile b/xen/arch/arm/vgic/Makefile
index 806826948e..019bfe3d07 100644
--- a/xen/arch/arm/vgic/Makefile
+++ b/xen/arch/arm/vgic/Makefile
@@ -2,4 +2,6 @@ obj-y +=3D vgic.o
 obj-y +=3D vgic-v2.o
 obj-y +=3D vgic-mmio.o
 obj-y +=3D vgic-mmio-v2.o
+obj-$(CONFIG_GICV3) +=3D vgic-v3.o
+obj-$(CONFIG_GICV3) +=3D vgic-mmio-v3.o
 obj-y +=3D vgic-init.o
diff --git a/xen/arch/arm/vgic/vgic-init.c b/xen/arch/arm/vgic/vgic-init.c
index f8d7d3a226..be35cc33ec 100644
--- a/xen/arch/arm/vgic/vgic-init.c
+++ b/xen/arch/arm/vgic/vgic-init.c
@@ -107,14 +107,18 @@ int domain_vgic_register(struct domain *d, unsigned i=
nt *mmio_count)
     {
     case GIC_V2:
         *mmio_count =3D 1;
+        d->arch.vgic.cbase =3D VGIC_ADDR_UNDEF;
         break;
+    case GIC_V3:
+        *mmio_count =3D 2;
+        INIT_LIST_HEAD(&d->arch.vgic.rd_regions);
+        break;
+
     default:
         BUG();
     }
=20
     d->arch.vgic.dbase =3D VGIC_ADDR_UNDEF;
-    d->arch.vgic.cbase =3D VGIC_ADDR_UNDEF;
-    d->arch.vgic.vgic_redist_base =3D VGIC_ADDR_UNDEF;
=20
     return 0;
 }
@@ -174,7 +178,7 @@ int domain_vgic_init(struct domain *d, unsigned int nr_=
spis)
     if ( dist->version =3D=3D GIC_V2 )
         ret =3D vgic_v2_map_resources(d);
     else
-        ret =3D -ENXIO;
+        ret =3D vgic_v3_map_resources(d);
=20
     if ( ret )
         return ret;
@@ -207,7 +211,7 @@ int vcpu_vgic_init(struct vcpu *v)
     if ( gic_hw_version() =3D=3D GIC_V2 )
         vgic_v2_enable(v);
     else
-        ret =3D -ENXIO;
+        vgic_v3_enable(v);
=20
     return ret;
 }
diff --git a/xen/arch/arm/vgic/vgic-mmio-v3.c b/xen/arch/arm/vgic/vgic-mmio=
-v3.c
new file mode 100644
index 0000000000..4ec6d910af
--- /dev/null
+++ b/xen/arch/arm/vgic/vgic-mmio-v3.c
@@ -0,0 +1,940 @@
+/*
+ * VGICv3 MMIO handling functions
+ * Imported from Linux ("new" KVM VGIC) and heavily adapted to Xen.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2 as
+ * published by the Free Software Foundation.
+ *
+ * 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 General Public License for more details.
+ */
+
+#include <xen/bitops.h>
+#include <xen/sched.h>
+#include <xen/sizes.h>
+#include <asm/new_vgic.h>
+#include <asm/gic_v3_defs.h>
+#include <asm/gic_v3_its.h>
+#include <asm/vreg.h>
+
+#include "asm/domain.h"
+#include "asm/types.h"
+#include "vgic.h"
+#include "vgic-mmio.h"
+
+bool vgic_has_its(struct domain *d)
+{
+    struct vgic_dist *dist =3D &d->arch.vgic;
+
+    if ( dist->version !=3D GIC_V3 )
+        return false;
+
+    return dist->has_its;
+}
+
+struct vcpu *mpidr_to_vcpu(struct domain *d, unsigned long mpidr)
+{
+    struct vcpu *vcpu;
+
+    mpidr &=3D MPIDR_HWID_MASK;
+    for_each_vcpu(d, vcpu)
+    {
+        if ( mpidr =3D=3D vcpuid_to_vaffinity(vcpu->vcpu_id) )
+            return vcpu;
+    }
+    return NULL;
+}
+
+/* extract @num bytes at @offset bytes offset in data */
+unsigned long extract_bytes(uint64_t data, unsigned int offset,
+                            unsigned int num)
+{
+    return (data >> (offset * 8)) & GENMASK_ULL(num * 8 - 1, 0);
+}
+
+uint64_t update_64bit_reg(u64 reg, unsigned int offset, unsigned int len,
+                          unsigned long val)
+{
+    int lower =3D (offset & 4) * 8;
+    int upper =3D lower + 8 * len - 1;
+
+    reg &=3D ~GENMASK_ULL(upper, lower);
+    val &=3D GENMASK_ULL(len * 8 - 1, 0);
+
+    return reg | ((u64)val << lower);
+}
+
+static int match_mpidr(u64 sgi_aff, u16 sgi_cpu_mask, struct vcpu *vcpu)
+{
+    unsigned long affinity;
+    int level0;
+
+    /*
+     * Split the current VCPU's MPIDR into affinity level 0 and the
+     * rest as this is what we have to compare against.
+     */
+    affinity =3D vcpuid_to_vaffinity(vcpu->vcpu_id);
+    level0   =3D MPIDR_AFFINITY_LEVEL(affinity, 0);
+    affinity &=3D ~MPIDR_LEVEL_MASK;
+
+    /* bail out if the upper three levels don't match */
+    if ( sgi_aff !=3D affinity )
+        return -1;
+
+    /* Is this VCPU's bit set in the mask ? */
+    if ( !(sgi_cpu_mask & BIT(level0, ULL)) )
+        return -1;
+
+    return level0;
+}
+
+#define SGI_AFFINITY_LEVEL(reg, level)                                    =
     \
+    ((((reg) & (ICH_SGI_AFFx_MASK << ICH_SGI_AFFINITY_LEVEL(level))) >>   =
     \
+      ICH_SGI_AFFINITY_LEVEL(level))                                      =
     \
+     << MPIDR_LEVEL_SHIFT(level))
+
+static bool vgic_v3_emulate_sgi1r(struct cpu_user_regs *regs, uint64_t *r,
+                                  bool read)
+{
+    struct domain *d  =3D current->domain;
+    struct vcpu *vcpu =3D current;
+    struct vcpu *c_vcpu;
+    u16 target_cpus;
+    u64 mpidr;
+    int sgi;
+    int vcpu_id =3D vcpu->vcpu_id;
+    bool broadcast;
+    unsigned long flags;
+
+    if ( read )
+    {
+        gdprintk(XENLOG_WARNING, "Reading SGI1R_EL1 - WO register\n");
+        return false;
+    }
+
+    sgi         =3D (*r >> ICH_SGI_IRQ_SHIFT) & ICH_SGI_IRQ_MASK;
+    broadcast   =3D *r & BIT(ICH_SGI_IRQMODE_SHIFT, ULL);
+    target_cpus =3D (*r & ICH_SGI_TARGETLIST_MASK);
+
+    mpidr       =3D SGI_AFFINITY_LEVEL(*r, 3);
+    mpidr |=3D SGI_AFFINITY_LEVEL(*r, 2);
+    mpidr |=3D SGI_AFFINITY_LEVEL(*r, 1);
+
+    /*
+     * We iterate over all VCPUs to find the MPIDRs matching the request.
+     * If we have handled one CPU, we clear its bit to detect early
+     * if we are already finished. This avoids iterating through all
+     * VCPUs when most of the times we just signal a single VCPU.
+     */
+    for_each_vcpu(d, c_vcpu)
+    {
+        struct vgic_irq *irq;
+
+        /* Exit early if we have dealt with all requested CPUs */
+        if ( !broadcast && target_cpus =3D=3D 0 )
+            break;
+
+        /* Don't signal the calling VCPU */
+        if ( broadcast && c_vcpu->vcpu_id =3D=3D vcpu_id )
+            continue;
+
+        if ( !broadcast )
+        {
+            int level0;
+
+            level0 =3D match_mpidr(mpidr, target_cpus, c_vcpu);
+            if ( level0 =3D=3D -1 )
+                continue;
+
+            /* remove this matching VCPU from the mask */
+            target_cpus &=3D ~BIT(level0, UL);
+        }
+
+        irq =3D vgic_get_irq(vcpu->domain, c_vcpu, sgi);
+
+        spin_lock_irqsave(&irq->irq_lock, flags);
+
+        if ( !irq->hw )
+        {
+            irq->pending_latch =3D true;
+            vgic_queue_irq_unlock(vcpu->domain, irq, flags);
+        }
+        else
+        {
+            printk(XENLOG_ERR "HW SGIs are not implemented\n");
+            BUG();
+            spin_unlock_irqrestore(&irq->irq_lock, flags);
+        }
+
+        vgic_put_irq(vcpu->domain, irq);
+    }
+
+    return true;
+}
+
+static bool vgic_v3_emulate_sysreg(struct cpu_user_regs *regs, union hsr h=
sr)
+{
+    struct hsr_sysreg sysreg =3D hsr.sysreg;
+
+    ASSERT(hsr.ec =3D=3D HSR_EC_SYSREG);
+
+    if ( sysreg.read )
+        perfc_incr(vgic_sysreg_reads);
+    else
+        perfc_incr(vgic_sysreg_writes);
+
+    switch ( hsr.bits & HSR_SYSREG_REGS_MASK )
+    {
+    case HSR_SYSREG_ICC_SGI1R_EL1:
+        return vreg_emulate_sysreg(regs, hsr, vgic_v3_emulate_sgi1r);
+
+    default:
+        return false;
+    }
+}
+
+bool vgic_v3_emulate_reg(struct cpu_user_regs *regs, union hsr hsr)
+{
+    switch ( hsr.ec )
+    {
+#ifdef CONFIG_ARM_64
+    case HSR_EC_SYSREG:
+        return vgic_v3_emulate_sysreg(regs, hsr);
+#endif
+    case HSR_EC_CP15_64:
+        printk(XENLOG_ERR
+               "vgic_v3_emulate_reg: HSR_EC_CP15_64 not implemented");
+        BUG();
+        break;
+    default:
+        return false;
+    }
+}
+
+/*
+ * The Revision field in the IIDR have the following meanings:
+ *
+ * Revision 2: Interrupt groups are guest-configurable and signaled using
+ *            their configured groups.
+ */
+
+static unsigned long vgic_mmio_read_v3_misc(struct vcpu *vcpu, paddr_t add=
r,
+                                            unsigned int len)
+{
+    struct vgic_dist *vgic =3D &vcpu->domain->arch.vgic;
+    uint32_t value         =3D 0;
+
+    switch ( addr & 0x0c )
+    {
+    case GICD_CTLR:
+        if ( vgic->enabled )
+            value |=3D GICD_CTLR_ENABLE_G1A;
+        value |=3D GICD_CTLR_ARE_NS | GICD_CTLR_DS;
+        break;
+    case GICD_TYPER:
+        value =3D vgic->nr_spis + VGIC_NR_PRIVATE_IRQS;
+        value =3D (value >> 5) - 1;
+        if ( vgic_has_its(vcpu->domain) )
+        {
+            value |=3D (INTERRUPT_ID_BITS_ITS - 1) << 19;
+            value |=3D GICD_TYPE_LPIS;
+        }
+        else
+        {
+            value |=3D (INTERRUPT_ID_BITS_SPIS - 1) << 19;
+        }
+        break;
+    case GICD_TYPER2:
+        break;
+    case GICD_IIDR:
+        value =3D (PRODUCT_ID_KVM << 24) | (VARIANT_ID_XEN << 16) |
+                (IMPLEMENTER_ARM << 0);
+        break;
+    default:
+        return 0;
+    }
+
+    return value;
+}
+
+static void vgic_mmio_write_v3_misc(struct vcpu *vcpu, paddr_t addr,
+                                    unsigned int len, unsigned long val)
+{
+    struct vgic_dist *dist =3D &vcpu->domain->arch.vgic;
+
+    switch ( addr & 0x0c )
+    {
+    case GICD_CTLR:
+    {
+        bool was_enabled;
+
+        domain_lock(vcpu->domain);
+
+        was_enabled   =3D dist->enabled;
+
+        dist->enabled =3D val & GICD_CTLR_ENABLE_G1A;
+
+        if ( dist->enabled )
+            vgic_kick_vcpus(vcpu->domain);
+
+        domain_unlock(vcpu->domain);
+        break;
+    }
+    case GICD_TYPER:
+    case GICD_TYPER2:
+    case GICD_IIDR:
+        /* This is at best for documentation purposes... */
+        return;
+    }
+}
+
+static unsigned long vgic_mmio_read_irouter(struct vcpu *vcpu, paddr_t add=
r,
+                                            unsigned int len)
+{
+    int intid            =3D VGIC_ADDR_TO_INTID(addr, 64);
+    struct vgic_irq *irq =3D vgic_get_irq(vcpu->domain, NULL, intid);
+    unsigned long ret    =3D 0;
+
+    if ( !irq )
+        return 0;
+
+    /* The upper word is RAZ for us. */
+    if ( !(addr & 4) )
+        ret =3D extract_bytes(irq->mpidr, addr & 7, len);
+
+    vgic_put_irq(vcpu->domain, irq);
+    return ret;
+}
+
+static void vgic_mmio_write_irouter(struct vcpu *vcpu, paddr_t addr,
+                                    unsigned int len, unsigned long val)
+{
+    int intid =3D VGIC_ADDR_TO_INTID(addr, 64);
+    struct vgic_irq *irq;
+    unsigned long flags;
+
+    /* The upper word is WI for us since we don't implement Aff3. */
+    if ( addr & 4 )
+        return;
+
+    irq =3D vgic_get_irq(vcpu->domain, NULL, intid);
+
+    if ( !irq )
+        return;
+
+    spin_lock_irqsave(&irq->irq_lock, flags);
+
+    /* We only care about and preserve Aff0, Aff1 and Aff2. */
+    irq->mpidr       =3D val & GENMASK(23, 0);
+    irq->target_vcpu =3D mpidr_to_vcpu(vcpu->domain, irq->mpidr);
+
+    spin_unlock_irqrestore(&irq->irq_lock, flags);
+    vgic_put_irq(vcpu->domain, irq);
+}
+
+static bool vgic_mmio_vcpu_rdist_is_last(struct vcpu *vcpu)
+{
+    struct vgic_dist *vgic    =3D &vcpu->domain->arch.vgic;
+    struct vgic_cpu *vgic_cpu =3D &vcpu->arch.vgic;
+    struct vgic_redist_region *iter, *rdreg =3D vgic_cpu->rdreg;
+
+    if ( !rdreg )
+        return false;
+
+    if ( vgic_cpu->rdreg_index < rdreg->free_index - 1 )
+    {
+        return false;
+    }
+    else if ( rdreg->count && vgic_cpu->rdreg_index =3D=3D (rdreg->count -=
 1) )
+    {
+        struct list_head *rd_regions =3D &vgic->rd_regions;
+        paddr_t end =3D rdreg->base + rdreg->count * VGIC_V3_REDIST_SIZE;
+
+        /*
+         * the rdist is the last one of the redist region,
+         * check whether there is no other contiguous rdist region
+         */
+        list_for_each_entry(iter, rd_regions, list)
+        {
+            if ( iter->base =3D=3D end && iter->free_index > 0 )
+                return false;
+        }
+    }
+    return true;
+}
+
+static unsigned long vgic_mmio_read_v3r_typer(struct vcpu *vcpu, paddr_t a=
ddr,
+                                              unsigned int len)
+{
+    unsigned long mpidr =3D vcpuid_to_vaffinity(vcpu->vcpu_id);
+    int target_vcpu_id  =3D vcpu->vcpu_id;
+    u64 value;
+
+    value =3D (u64)(mpidr & GENMASK(23, 0)) << 32;
+    value |=3D ((target_vcpu_id & 0xffff) << 8);
+
+    if ( vgic_has_its(vcpu->domain) )
+        value |=3D GICR_TYPER_PLPIS;
+
+    if ( vgic_mmio_vcpu_rdist_is_last(vcpu) )
+        value |=3D GICR_TYPER_LAST;
+
+    return extract_bytes(value, addr & 7, len);
+}
+
+static unsigned long vgic_mmio_read_v3r_iidr(struct vcpu *vcpu, paddr_t ad=
dr,
+                                             unsigned int len)
+{
+    return (PRODUCT_ID_KVM << 24) | (VARIANT_ID_XEN << 16) |
+           (IMPLEMENTER_ARM << 0);
+}
+
+static unsigned long vgic_mmio_read_v3_idregs(struct vcpu *vcpu, paddr_t a=
ddr,
+                                              unsigned int len)
+{
+    switch ( addr & 0xfff )
+    {
+    case GICD_ICPIDR2:
+        /* report a GICv3 compliant implementation */
+        return 0x3b;
+    }
+
+    return 0;
+}
+
+static unsigned long vgic_mmio_read_v3r_ctlr(struct vcpu *vcpu, paddr_t ad=
dr,
+                                             unsigned int len)
+{
+    struct vgic_cpu *vgic_cpu =3D &vcpu->arch.vgic;
+    unsigned long val;
+
+    val =3D atomic_read(&vgic_cpu->ctlr);
+    val |=3D GICR_CTLR_IR | GICR_CTLR_CES;
+
+    return val;
+}
+
+bool vgic_lpis_enabled(struct vcpu *vcpu)
+{
+    struct vgic_cpu *vgic_cpu =3D &vcpu->arch.vgic;
+
+    return atomic_read(&vgic_cpu->ctlr) =3D=3D GICR_CTLR_ENABLE_LPIS;
+}
+
+/* We want to avoid outer shareable. */
+u64 vgic_sanitise_shareability(u64 field)
+{
+    switch ( field )
+    {
+    case GIC_BASER_OuterShareable:
+        return GIC_BASER_InnerShareable;
+    default:
+        return field;
+    }
+}
+
+/* Avoid any inner non-cacheable mapping. */
+u64 vgic_sanitise_inner_cacheability(u64 field)
+{
+    switch ( field )
+    {
+    case GIC_BASER_CACHE_nCnB:
+    case GIC_BASER_CACHE_nC:
+        return GIC_BASER_CACHE_RaWb;
+    default:
+        return field;
+    }
+}
+
+/* Non-cacheable or same-as-inner are OK. */
+u64 vgic_sanitise_outer_cacheability(u64 field)
+{
+    switch ( field )
+    {
+    case GIC_BASER_CACHE_SameAsInner:
+    case GIC_BASER_CACHE_nC:
+        return field;
+    default:
+        return GIC_BASER_CACHE_SameAsInner;
+    }
+}
+
+u64 vgic_sanitise_field(u64 reg, u64 field_mask, int field_shift,
+                        u64 (*sanitise_fn)(u64))
+{
+    u64 field =3D (reg & field_mask) >> field_shift;
+
+    field     =3D sanitise_fn(field) << field_shift;
+    return (reg & ~field_mask) | field;
+}
+
+#define PROPBASER_RES0_MASK                                               =
     \
+    (GENMASK_ULL(63, 59) | GENMASK_ULL(55, 52) | GENMASK_ULL(6, 5))
+#define PENDBASER_RES0_MASK                                               =
     \
+    (BIT(63, ULL) | GENMASK_ULL(61, 59) | GENMASK_ULL(55, 52) |           =
     \
+     GENMASK_ULL(15, 12) | GENMASK_ULL(6, 0))
+
+static u64 vgic_sanitise_pendbaser(u64 reg)
+{
+    reg =3D vgic_sanitise_field(reg, GICR_PENDBASER_SHAREABILITY_MASK,
+                              GICR_PENDBASER_SHAREABILITY_SHIFT,
+                              vgic_sanitise_shareability);
+    reg =3D vgic_sanitise_field(reg, GICR_PENDBASER_INNER_CACHEABILITY_MAS=
K,
+                              GICR_PENDBASER_INNER_CACHEABILITY_SHIFT,
+                              vgic_sanitise_inner_cacheability);
+    reg =3D vgic_sanitise_field(reg, GICR_PENDBASER_OUTER_CACHEABILITY_MAS=
K,
+                              GICR_PENDBASER_OUTER_CACHEABILITY_SHIFT,
+                              vgic_sanitise_outer_cacheability);
+
+    reg &=3D ~PENDBASER_RES0_MASK;
+
+    return reg;
+}
+
+static u64 vgic_sanitise_propbaser(u64 reg)
+{
+    reg =3D vgic_sanitise_field(reg, GICR_PROPBASER_SHAREABILITY_MASK,
+                              GICR_PROPBASER_SHAREABILITY_SHIFT,
+                              vgic_sanitise_shareability);
+    reg =3D vgic_sanitise_field(reg, GICR_PROPBASER_INNER_CACHEABILITY_MAS=
K,
+                              GICR_PROPBASER_INNER_CACHEABILITY_SHIFT,
+                              vgic_sanitise_inner_cacheability);
+    reg =3D vgic_sanitise_field(reg, GICR_PROPBASER_OUTER_CACHEABILITY_MAS=
K,
+                              GICR_PROPBASER_OUTER_CACHEABILITY_SHIFT,
+                              vgic_sanitise_outer_cacheability);
+
+    reg &=3D ~PROPBASER_RES0_MASK;
+    return reg;
+}
+
+static unsigned long vgic_mmio_read_propbase(struct vcpu *vcpu, paddr_t ad=
dr,
+                                             unsigned int len)
+{
+    struct vgic_dist *dist =3D &vcpu->domain->arch.vgic;
+
+    return extract_bytes(dist->propbaser, addr & 7, len);
+}
+
+static void vgic_mmio_write_propbase(struct vcpu *vcpu, paddr_t addr,
+                                     unsigned int len, unsigned long val)
+{
+    struct vgic_dist *dist =3D &vcpu->domain->arch.vgic;
+    u64 old_propbaser, propbaser;
+
+    /* Storing a value with LPIs already enabled is undefined */
+    if ( vgic_lpis_enabled(vcpu) )
+        return;
+
+    do
+    {
+        old_propbaser =3D dist->propbaser;
+        propbaser     =3D old_propbaser;
+        propbaser     =3D update_64bit_reg(propbaser, addr & 4, len, val);
+        propbaser     =3D vgic_sanitise_propbaser(propbaser);
+    } while ( cmpxchg64(&dist->propbaser, old_propbaser, propbaser) !=3D
+              old_propbaser );
+}
+
+static unsigned long vgic_mmio_read_pendbase(struct vcpu *vcpu, paddr_t ad=
dr,
+                                             unsigned int len)
+{
+    struct vgic_cpu *vgic_cpu =3D &vcpu->arch.vgic;
+    u64 value                 =3D vgic_cpu->pendbaser;
+
+    value &=3D ~GICR_PENDBASER_PTZ;
+
+    return extract_bytes(value, addr & 7, len);
+}
+
+static void vgic_mmio_write_pendbase(struct vcpu *vcpu, paddr_t addr,
+                                     unsigned int len, unsigned long val)
+{
+    struct vgic_cpu *vgic_cpu =3D &vcpu->arch.vgic;
+    u64 old_pendbaser, pendbaser;
+
+    /* Storing a value with LPIs already enabled is undefined */
+    if ( vgic_lpis_enabled(vcpu) )
+        return;
+
+    do
+    {
+        old_pendbaser =3D vgic_cpu->pendbaser;
+        pendbaser     =3D old_pendbaser;
+        pendbaser     =3D update_64bit_reg(pendbaser, addr & 4, len, val);
+        pendbaser     =3D vgic_sanitise_pendbaser(pendbaser);
+    } while ( cmpxchg64(&vgic_cpu->pendbaser, old_pendbaser, pendbaser) !=
=3D
+              old_pendbaser );
+}
+
+static unsigned long vgic_mmio_read_sync(struct vcpu *vcpu, paddr_t addr,
+                                         unsigned int len)
+{
+    return !!atomic_read(&vcpu->arch.vgic.syncr_busy);
+}
+
+static const struct vgic_register_region vgic_v3_dist_registers[] =3D {
+    REGISTER_DESC_WITH_LENGTH(GICD_CTLR,
+        vgic_mmio_read_v3_misc, vgic_mmio_write_v3_misc,
+        16, VGIC_ACCESS_32bit),
+    REGISTER_DESC_WITH_LENGTH(GICD_STATUSR,
+        vgic_mmio_read_rao, vgic_mmio_write_wi, 4,
+        VGIC_ACCESS_32bit),
+    REGISTER_DESC_WITH_BITS_PER_IRQ(GICD_IGROUPR,
+        vgic_mmio_read_rao, vgic_mmio_write_wi, 1,
+        VGIC_ACCESS_32bit),
+    REGISTER_DESC_WITH_BITS_PER_IRQ(GICD_ISENABLER,
+        vgic_mmio_read_enable, vgic_mmio_write_senable, 1,
+        VGIC_ACCESS_32bit),
+    REGISTER_DESC_WITH_BITS_PER_IRQ(GICD_ICENABLER,
+        vgic_mmio_read_enable, vgic_mmio_write_cenable, 1,
+        VGIC_ACCESS_32bit),
+    REGISTER_DESC_WITH_BITS_PER_IRQ(GICD_ISPENDR,
+        vgic_mmio_read_pending, vgic_mmio_write_spending, 1,
+        VGIC_ACCESS_32bit),
+    REGISTER_DESC_WITH_BITS_PER_IRQ(GICD_ICPENDR,
+        vgic_mmio_read_pending, vgic_mmio_write_cpending, 1,
+        VGIC_ACCESS_32bit),
+    REGISTER_DESC_WITH_BITS_PER_IRQ(GICD_ISACTIVER,
+        vgic_mmio_read_active, vgic_mmio_write_sactive, 1,
+        VGIC_ACCESS_32bit),
+    REGISTER_DESC_WITH_BITS_PER_IRQ(GICD_ICACTIVER,
+        vgic_mmio_read_active, vgic_mmio_write_cactive,
+        1, VGIC_ACCESS_32bit),
+    REGISTER_DESC_WITH_BITS_PER_IRQ(GICD_IPRIORITYR,
+        vgic_mmio_read_priority, vgic_mmio_write_priority,
+        8, VGIC_ACCESS_32bit | VGIC_ACCESS_8bit),
+    REGISTER_DESC_WITH_BITS_PER_IRQ(GICD_ITARGETSR,
+        vgic_mmio_read_raz, vgic_mmio_write_wi, 8,
+        VGIC_ACCESS_32bit | VGIC_ACCESS_8bit),
+    REGISTER_DESC_WITH_BITS_PER_IRQ(GICD_ICFGR,
+        vgic_mmio_read_config, vgic_mmio_write_config, 2,
+        VGIC_ACCESS_32bit),
+    REGISTER_DESC_WITH_BITS_PER_IRQ(GICD_IGRPMODR,
+        vgic_mmio_read_raz, vgic_mmio_write_wi, 1,
+        VGIC_ACCESS_32bit),
+    REGISTER_DESC_WITH_BITS_PER_IRQ(GICD_IROUTER,
+        vgic_mmio_read_irouter, vgic_mmio_write_irouter, 64,
+        VGIC_ACCESS_64bit | VGIC_ACCESS_32bit),
+    REGISTER_DESC_WITH_LENGTH(GICD_IDREGS,
+        vgic_mmio_read_v3_idregs, vgic_mmio_write_wi, 48,
+        VGIC_ACCESS_32bit),
+};
+
+static const struct vgic_register_region vgic_v3_rd_registers[] =3D {
+    /* RD_base registers */
+    REGISTER_DESC_WITH_LENGTH(GICR_CTLR,
+        vgic_mmio_read_v3r_ctlr, vgic_mmio_write_wi, 4,
+        VGIC_ACCESS_32bit),
+    REGISTER_DESC_WITH_LENGTH(GICR_STATUSR,
+        vgic_mmio_read_raz, vgic_mmio_write_wi, 4,
+        VGIC_ACCESS_32bit),
+    REGISTER_DESC_WITH_LENGTH(GICR_IIDR,
+        vgic_mmio_read_v3r_iidr, vgic_mmio_write_wi, 4,
+        VGIC_ACCESS_32bit),
+    REGISTER_DESC_WITH_LENGTH(GICR_TYPER,
+        vgic_mmio_read_v3r_typer, vgic_mmio_write_wi, 8,
+        VGIC_ACCESS_64bit | VGIC_ACCESS_32bit),
+    REGISTER_DESC_WITH_LENGTH(GICR_WAKER,
+        vgic_mmio_read_raz, vgic_mmio_write_wi, 4,
+        VGIC_ACCESS_32bit),
+    REGISTER_DESC_WITH_LENGTH(GICR_PROPBASER,
+        vgic_mmio_read_propbase, vgic_mmio_write_propbase, 8,
+        VGIC_ACCESS_64bit | VGIC_ACCESS_32bit),
+    REGISTER_DESC_WITH_LENGTH(GICR_PENDBASER,
+        vgic_mmio_read_pendbase, vgic_mmio_write_pendbase, 8,
+        VGIC_ACCESS_64bit | VGIC_ACCESS_32bit),
+    REGISTER_DESC_WITH_LENGTH(GICR_INVLPIR,
+        vgic_mmio_read_raz, vgic_mmio_write_wi, 8,
+        VGIC_ACCESS_64bit | VGIC_ACCESS_32bit),
+    REGISTER_DESC_WITH_LENGTH(GICR_INVALLR,
+        vgic_mmio_read_raz, vgic_mmio_write_wi, 8,
+        VGIC_ACCESS_64bit | VGIC_ACCESS_32bit),
+    REGISTER_DESC_WITH_LENGTH(GICR_SYNCR,
+        vgic_mmio_read_sync, vgic_mmio_write_wi, 4,
+        VGIC_ACCESS_32bit),
+    REGISTER_DESC_WITH_LENGTH(GICR_IDREGS,
+        vgic_mmio_read_v3_idregs, vgic_mmio_write_wi, 48,
+        VGIC_ACCESS_32bit),
+    /* SGI_base registers */
+    REGISTER_DESC_WITH_LENGTH(SZ_64K + GICR_IGROUPR0,
+        vgic_mmio_read_rao, vgic_mmio_write_wi, 4,
+        VGIC_ACCESS_32bit),
+    REGISTER_DESC_WITH_LENGTH(SZ_64K + GICR_ISENABLER0,
+        vgic_mmio_read_enable, vgic_mmio_write_senable, 4,
+        VGIC_ACCESS_32bit),
+    REGISTER_DESC_WITH_LENGTH(SZ_64K + GICR_ICENABLER0,
+        vgic_mmio_read_enable, vgic_mmio_write_cenable, 4,
+        VGIC_ACCESS_32bit),
+    REGISTER_DESC_WITH_LENGTH(SZ_64K + GICR_ISPENDR0,
+        vgic_mmio_read_pending, vgic_mmio_write_spending, 4,
+        VGIC_ACCESS_32bit),
+    REGISTER_DESC_WITH_LENGTH(SZ_64K + GICR_ICPENDR0,
+        vgic_mmio_read_pending, vgic_mmio_write_cpending,4,
+        VGIC_ACCESS_32bit),
+    REGISTER_DESC_WITH_LENGTH(SZ_64K + GICR_ISACTIVER0,
+        vgic_mmio_read_active, vgic_mmio_write_sactive, 4,
+        VGIC_ACCESS_32bit),
+    REGISTER_DESC_WITH_LENGTH(SZ_64K + GICR_ICACTIVER0,
+        vgic_mmio_read_active, vgic_mmio_write_cactive, 4,
+        VGIC_ACCESS_32bit),
+    REGISTER_DESC_WITH_LENGTH(SZ_64K + GICR_IPRIORITYR0,
+        vgic_mmio_read_priority, vgic_mmio_write_priority, 32,
+        VGIC_ACCESS_32bit | VGIC_ACCESS_8bit),
+    REGISTER_DESC_WITH_LENGTH(SZ_64K + GICR_ICFGR0,
+        vgic_mmio_read_config, vgic_mmio_write_config, 8,
+        VGIC_ACCESS_32bit),
+    REGISTER_DESC_WITH_LENGTH(SZ_64K + GICR_IGRPMODR0,
+        vgic_mmio_read_raz, vgic_mmio_write_wi, 4,
+        VGIC_ACCESS_32bit),
+    REGISTER_DESC_WITH_LENGTH(SZ_64K + GICR_NSACR,
+        vgic_mmio_read_raz, vgic_mmio_write_wi, 4,
+        VGIC_ACCESS_32bit),
+};
+
+unsigned int vgic_v3_init_dist_iodev(struct vgic_io_device *dev)
+{
+    dev->regions    =3D vgic_v3_dist_registers;
+    dev->nr_regions =3D ARRAY_SIZE(vgic_v3_dist_registers);
+
+    return SZ_64K;
+}
+
+/**
+ * vgic_register_redist_iodev - register a single redist iodev
+ * @vcpu:    The VCPU to which the redistributor belongs
+ *
+ * Register a KVM iodev for this VCPU's redistributor using the address
+ * provided.
+ *
+ * Return 0 on success, -ERRNO otherwise.
+ */
+int vgic_register_redist_iodev(struct vcpu *vcpu)
+{
+    struct domain *d              =3D vcpu->domain;
+    struct vgic_dist *vgic        =3D &d->arch.vgic;
+    struct vgic_cpu *vgic_cpu     =3D &vcpu->arch.vgic;
+    struct vgic_io_device *rd_dev =3D &vcpu->arch.vgic.rd_iodev;
+    struct vgic_redist_region *rdreg;
+    paddr_t rd_base;
+
+    /*
+     * We may be creating VCPUs before having set the base address for the
+     * redistributor region, in which case we will come back to this
+     * function for all VCPUs when the base address is set.  Just return
+     * without doing any work for now.
+     */
+    rdreg =3D vgic_v3_rdist_free_slot(&vgic->rd_regions);
+    if ( !rdreg )
+        return 0;
+
+    vgic_cpu->rdreg       =3D rdreg;
+    vgic_cpu->rdreg_index =3D rdreg->free_index;
+
+    rd_base             =3D rdreg->base + rdreg->free_index * VGIC_V3_REDI=
ST_SIZE;
+
+    rd_dev->base_fn     =3D gaddr_to_gfn(rd_base);
+    rd_dev->iodev_type  =3D IODEV_REDIST;
+    rd_dev->regions     =3D vgic_v3_rd_registers;
+    rd_dev->nr_regions  =3D ARRAY_SIZE(vgic_v3_rd_registers);
+    rd_dev->redist_vcpu =3D vcpu;
+
+    register_mmio_handler(d, &vgic_io_ops, rd_base, VGIC_V3_REDIST_SIZE,
+                          rd_dev);
+
+    rdreg->free_index++;
+    return 0;
+}
+
+static int vgic_register_all_redist_iodevs(struct domain *d)
+{
+    struct vcpu *vcpu;
+    int ret =3D 0;
+
+    for_each_vcpu(d, vcpu)
+    {
+        ret =3D vgic_register_redist_iodev(vcpu);
+        if ( ret )
+            break;
+    }
+
+    if ( ret )
+    {
+        printk(XENLOG_ERR "Failed to register redistributor iodev\n");
+    }
+
+    return ret;
+}
+
+static inline size_t vgic_v3_rd_region_size(struct domain *d,
+                                            struct vgic_redist_region *rdr=
eg)
+{
+    if ( !rdreg->count )
+        return d->max_vcpus * VGIC_V3_REDIST_SIZE;
+    else
+        return rdreg->count * VGIC_V3_REDIST_SIZE;
+}
+
+/**
+ * vgic_v3_rdist_overlap - check if a region overlaps with any
+ * existing redistributor region
+ *
+ * @kvm: kvm handle
+ * @base: base of the region
+ * @size: size of region
+ *
+ * Return: true if there is an overlap
+ */
+bool vgic_v3_rdist_overlap(struct domain *domain, paddr_t base, size_t siz=
e)
+{
+    struct vgic_dist *d =3D &domain->arch.vgic;
+    struct vgic_redist_region *rdreg;
+
+    list_for_each_entry(rdreg, &d->rd_regions, list)
+    {
+        if ( (base + size > rdreg->base) &&
+             (base < rdreg->base + vgic_v3_rd_region_size(domain, rdreg)) =
)
+            return true;
+    }
+    return false;
+}
+
+static inline bool vgic_dist_overlap(struct domain *domain, paddr_t base,
+                                     size_t size)
+{
+    struct vgic_dist *d =3D &domain->arch.vgic;
+
+    return (base + size > d->dbase) && (base < d->dbase + VGIC_V3_DIST_SIZ=
E);
+}
+
+struct vgic_redist_region *vgic_v3_rdist_region_from_index(struct domain *=
d,
+                                                           u32 index)
+{
+    struct list_head *rd_regions =3D &d->arch.vgic.rd_regions;
+    struct vgic_redist_region *rdreg;
+
+    list_for_each_entry(rdreg, rd_regions, list)
+    {
+        if ( rdreg->index =3D=3D index )
+            return rdreg;
+    }
+    return NULL;
+}
+
+/**
+ * vgic_v3_alloc_redist_region - Allocate a new redistributor region
+ *
+ * Performs various checks before inserting the rdist region in the list.
+ * Those tests depend on whether the size of the rdist region is known
+ * (ie. count !=3D 0). The list is sorted by rdist region index.
+ *
+ * @kvm: kvm handle
+ * @index: redist region index
+ * @base: base of the new rdist region
+ * @count: number of redistributors the region is made of (0 in the old st=
yle
+ * single region, whose size is induced from the number of vcpus)
+ *
+ * Return 0 on success, < 0 otherwise
+ */
+static int vgic_v3_alloc_redist_region(struct domain *domain, uint32_t ind=
ex,
+                                       paddr_t base, uint32_t count)
+{
+    struct vgic_dist *d =3D &domain->arch.vgic;
+    struct vgic_redist_region *rdreg;
+    struct list_head *rd_regions =3D &d->rd_regions;
+    int nr_vcpus                 =3D domain->max_vcpus;
+    size_t size                  =3D count ? count * VGIC_V3_REDIST_SIZE
+                                         : nr_vcpus * VGIC_V3_REDIST_SIZE;
+    int ret;
+
+    /* cross the end of memory ? */
+    if ( base + size < base )
+        return -EINVAL;
+
+    if ( list_empty(rd_regions) )
+    {
+        if ( index !=3D 0 )
+            return -EINVAL;
+    }
+    else
+    {
+        rdreg =3D list_last_entry(rd_regions, struct vgic_redist_region, l=
ist);
+
+        /* Don't mix single region and discrete redist regions */
+        if ( !count && rdreg->count )
+            return -EINVAL;
+
+        if ( !count )
+            return -EEXIST;
+
+        if ( index !=3D rdreg->index + 1 )
+            return -EINVAL;
+    }
+
+    /*
+     * For legacy single-region redistributor regions (!count),
+     * check that the redistributor region does not overlap with the
+     * distributor's address space.
+     */
+    if ( !count && !IS_VGIC_ADDR_UNDEF(d->dbase) &&
+         vgic_dist_overlap(domain, base, size) )
+        return -EINVAL;
+
+    /* collision with any other rdist region? */
+    if ( vgic_v3_rdist_overlap(domain, base, size) )
+        return -EINVAL;
+
+    rdreg =3D xzalloc(struct vgic_redist_region);
+    if ( !rdreg )
+        return -ENOMEM;
+
+    rdreg->base =3D VGIC_ADDR_UNDEF;
+
+    ret         =3D vgic_check_iorange(rdreg->base, base, SZ_64K, size);
+    if ( ret )
+        goto free;
+
+    rdreg->base       =3D base;
+    rdreg->count      =3D count;
+    rdreg->free_index =3D 0;
+    rdreg->index      =3D index;
+
+    list_add_tail(&rdreg->list, rd_regions);
+    return 0;
+free:
+    xfree(rdreg);
+    return ret;
+}
+
+void vgic_v3_free_redist_region(struct vgic_redist_region *rdreg)
+{
+    list_del(&rdreg->list);
+    xfree(rdreg);
+}
+
+int vgic_v3_set_redist_base(struct domain *d, u32 index, u64 addr, u32 cou=
nt)
+{
+    int ret;
+
+    ret =3D vgic_v3_alloc_redist_region(d, index, addr, count);
+    if ( ret )
+        return ret;
+
+    /*
+     * Register iodevs for each existing VCPU.  Adding more VCPUs
+     * afterwards will register the iodevs when needed.
+     */
+    ret =3D vgic_register_all_redist_iodevs(d);
+    if ( ret )
+    {
+        struct vgic_redist_region *rdreg;
+
+        rdreg =3D vgic_v3_rdist_region_from_index(d, index);
+        vgic_v3_free_redist_region(rdreg);
+        return ret;
+    }
+
+    return 0;
+}
diff --git a/xen/arch/arm/vgic/vgic-mmio.c b/xen/arch/arm/vgic/vgic-mmio.c
index 5d935a7301..a96a7f8d96 100644
--- a/xen/arch/arm/vgic/vgic-mmio.c
+++ b/xen/arch/arm/vgic/vgic-mmio.c
@@ -477,6 +477,21 @@ void vgic_mmio_write_config(struct vcpu *vcpu,
     }
 }
=20
+int vgic_check_iorange(paddr_t ioaddr, paddr_t addr, paddr_t alignment,
+                       paddr_t size)
+{
+    if ( !IS_VGIC_ADDR_UNDEF(ioaddr) )
+        return -EEXIST;
+
+    if ( !IS_ALIGNED(addr, alignment) || !IS_ALIGNED(size, alignment) )
+        return -EINVAL;
+
+    if ( addr + size < addr )
+        return -EINVAL;
+
+    return 0;
+}
+
 static int match_region(const void *key, const void *elt)
 {
     const unsigned int offset =3D (unsigned long)key;
@@ -619,6 +634,9 @@ int vgic_register_dist_iodev(struct domain *d, gfn_t di=
st_base_fn,
     case VGIC_V2:
         len =3D vgic_v2_init_dist_iodev(io_device);
         break;
+    case VGIC_V3:
+        len =3D vgic_v3_init_dist_iodev(io_device);
+        break;
     default:
         BUG();
     }
diff --git a/xen/arch/arm/vgic/vgic-mmio.h b/xen/arch/arm/vgic/vgic-mmio.h
index 3566cf237c..c38ef51e6b 100644
--- a/xen/arch/arm/vgic/vgic-mmio.h
+++ b/xen/arch/arm/vgic/vgic-mmio.h
@@ -135,4 +135,14 @@ void vgic_mmio_write_config(struct vcpu *vcpu,
=20
 unsigned int vgic_v2_init_dist_iodev(struct vgic_io_device *dev);
=20
+/* extract @num bytes at @offset bytes offset in data */
+unsigned long extract_bytes(uint64_t data, unsigned int offset,
+			    unsigned int num);
+
+uint64_t update_64bit_reg(u64 reg, unsigned int offset, unsigned int len,
+		     unsigned long val);
+
+int vgic_check_iorange(paddr_t ioaddr, paddr_t addr, paddr_t alignment,
+		       paddr_t size);
+
 #endif
diff --git a/xen/arch/arm/vgic/vgic-v3.c b/xen/arch/arm/vgic/vgic-v3.c
new file mode 100644
index 0000000000..12963d877e
--- /dev/null
+++ b/xen/arch/arm/vgic/vgic-v3.c
@@ -0,0 +1,383 @@
+/*
+ * Imported from Linux ("new" KVM VGIC) and heavily adapted to Xen.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2 as
+ * published by the Free Software Foundation.
+ *
+ * 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 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/>.
+ */
+
+#include <asm/new_vgic.h>
+#include <xen/guest_access.h>
+#include <asm/gic_v3_defs.h>
+#include <asm/gic_v3_its.h>
+#include <asm/gic.h>
+#include <xen/sched.h>
+#include <xen/sizes.h>
+
+#include "vgic.h"
+
+static struct {
+    bool enabled;
+    /* Distributor interface address */
+    paddr_t dbase;
+    /* Re-distributor regions */
+    unsigned int nr_rdist_regions;
+    const struct rdist_region *regions;
+    unsigned int intid_bits; /* Number of interrupt ID bits */
+} vgic_v3_hw_data;
+
+void vgic_v3_setup_hw(paddr_t dbase, unsigned int nr_rdist_regions,
+                      const struct rdist_region *regions,
+                      unsigned int intid_bits)
+{
+    vgic_v3_hw_data.enabled          =3D true;
+    vgic_v3_hw_data.dbase            =3D dbase;
+    vgic_v3_hw_data.nr_rdist_regions =3D nr_rdist_regions;
+    vgic_v3_hw_data.regions          =3D regions;
+    vgic_v3_hw_data.intid_bits       =3D intid_bits;
+}
+
+/*
+ * transfer the content of the LRs back into the corresponding ap_list:
+ * - active bit is transferred as is
+ * - pending bit is
+ *   - transferred as is in case of edge sensitive IRQs
+ *   - set to the line-level (resample time) for level sensitive IRQs
+ */
+void vgic_v3_fold_lr_state(struct vcpu *vcpu)
+{
+    struct vgic_cpu *vgic_cpu =3D &vcpu->arch.vgic;
+    unsigned int used_lrs     =3D vcpu->arch.vgic.used_lrs;
+    unsigned long flags;
+    unsigned int lr;
+
+    if ( !used_lrs ) /* No LRs used, so nothing to sync back here. */
+        return;
+
+    gic_hw_ops->update_hcr_status(GICH_HCR_UIE, false);
+
+    for ( lr =3D 0; lr < used_lrs; lr++ )
+    {
+        struct gic_lr lr_val;
+        uint32_t intid;
+        struct vgic_irq *irq;
+        struct irq_desc *desc =3D NULL;
+
+        gic_hw_ops->read_lr(lr, &lr_val);
+
+        /*
+         * TODO: Possible optimization to avoid reading LRs:
+         * Read the ELRSR to find out which of our LRs have been cleared
+         * by the guest. We just need to know the IRQ number for those, wh=
ich
+         * we could save in an array when populating the LRs.
+         * This trades one MMIO access (ELRSR) for possibly more than one =
(LRs),
+         * but requires some more code to save the IRQ number and to handl=
e
+         * those finished IRQs according to the algorithm below.
+         * We need some numbers to justify this: chances are that we don't
+         * have many LRs in use most of the time, so we might not save muc=
h.
+         */
+        gic_hw_ops->clear_lr(lr);
+
+        intid =3D lr_val.virq;
+        irq   =3D vgic_get_irq(vcpu->domain, vcpu, intid);
+
+        local_irq_save(flags);
+
+        /*
+         * We check this here without taking the lock, because the locking
+         * order forces us to do so. irq->hw is a "write-once" member, so
+         * whenever we read true, the associated hardware IRQ will not go
+         * away anymore.
+         * TODO: rework this if possible, either by using the desc pointer
+         * directly in struct vgic_irq or by changing the locking order.
+         * Especially if we ever drop the assumption above.
+         */
+        if ( irq->hw )
+        {
+            desc =3D irq_to_desc(irq->hwintid);
+            spin_lock(&desc->lock);
+        }
+
+        spin_lock(&irq->irq_lock);
+
+        /*
+         * If a hardware mapped IRQ has been handled for good, we need to
+         * clear the _IRQ_INPROGRESS bit to allow handling of new IRQs.
+         *
+         * TODO: This is probably racy, but is so already in the existing
+         * VGIC. A fix does not seem to be trivial.
+         */
+        if ( irq->hw && !lr_val.active && !lr_val.pending )
+            clear_bit(_IRQ_INPROGRESS, &desc->status);
+
+        /* Always preserve the active bit */
+        irq->active =3D lr_val.active;
+
+        /* Edge is the only case where we preserve the pending bit */
+        if ( irq->config =3D=3D VGIC_CONFIG_EDGE && lr_val.pending )
+        {
+            irq->pending_latch =3D true;
+
+            if ( vgic_irq_is_sgi(intid) )
+                irq->source |=3D (1U << lr_val.virt.source);
+        }
+
+        /* Clear soft pending state when level irqs have been acked. */
+        if ( irq->config =3D=3D VGIC_CONFIG_LEVEL && !lr_val.pending )
+            irq->pending_latch =3D false;
+
+        /*
+         * Level-triggered mapped IRQs are special because we only
+         * observe rising edges as input to the VGIC.
+         *
+         * If the guest never acked the interrupt we have to sample
+         * the physical line and set the line level, because the
+         * device state could have changed or we simply need to
+         * process the still pending interrupt later.
+         *
+         * If this causes us to lower the level, we have to also clear
+         * the physical active state, since we will otherwise never be
+         * told when the interrupt becomes asserted again.
+         */
+        if ( vgic_irq_is_mapped_level(irq) && lr_val.pending )
+        {
+            ASSERT(irq->hwintid >=3D VGIC_NR_PRIVATE_IRQS);
+
+            irq->line_level =3D gic_read_pending_state(desc);
+
+            if ( !irq->line_level )
+                gic_set_active_state(desc, false);
+        }
+
+        spin_unlock(&irq->irq_lock);
+        if ( desc )
+            spin_unlock(&desc->lock);
+        local_irq_restore(flags);
+
+        vgic_put_irq(vcpu->domain, irq);
+    }
+
+    gic_hw_ops->update_hcr_status(GICH_HCR_EN, false);
+    vgic_cpu->used_lrs =3D 0;
+}
+
+/* Requires the irq to be locked already */
+void vgic_v3_populate_lr(struct vcpu *vcpu, struct vgic_irq *irq, int lr)
+{
+    struct gic_lr lr_val =3D { 0 };
+
+    lr_val.virq          =3D irq->intid;
+
+    if ( irq_is_pending(irq) )
+    {
+        lr_val.pending =3D true;
+
+        if ( irq->config =3D=3D VGIC_CONFIG_EDGE )
+            irq->pending_latch =3D false;
+
+        if ( vgic_irq_is_sgi(irq->intid) &&
+             vcpu->domain->arch.vgic.version =3D=3D VGIC_V2 )
+        {
+            uint32_t src =3D ffs(irq->source);
+
+            BUG_ON(!src);
+            lr_val.virt.source =3D (src - 1);
+            irq->source &=3D ~(1 << (src - 1));
+            if ( irq->source )
+                irq->pending_latch =3D true;
+        }
+    }
+
+    lr_val.active =3D irq->active;
+
+    if ( irq->hw )
+    {
+        lr_val.hw_status =3D true;
+        lr_val.hw.pirq   =3D irq->hwintid;
+        /*
+         * Never set pending+active on a HW interrupt, as the
+         * pending state is kept at the physical distributor
+         * level.
+         */
+        if ( irq->active && irq_is_pending(irq) )
+            lr_val.pending =3D false;
+    }
+    else
+    {
+        if ( irq->config =3D=3D VGIC_CONFIG_LEVEL )
+            lr_val.virt.eoi =3D true;
+    }
+
+    /*
+     * Level-triggered mapped IRQs are special because we only observe
+     * rising edges as input to the VGIC.  We therefore lower the line
+     * level here, so that we can take new virtual IRQs.  See
+     * vgic_v2_fold_lr_state for more info.
+     */
+    if ( vgic_irq_is_mapped_level(irq) && lr_val.pending )
+        irq->line_level =3D false;
+
+    /* The GICv2 LR only holds five bits of priority. */
+    lr_val.priority =3D irq->priority >> 3;
+
+    gic_hw_ops->write_lr(lr, &lr_val);
+}
+
+static bool vgic_v3_redist_region_full(struct vgic_redist_region *region)
+{
+    if ( !region->count )
+        return false;
+
+    return (region->free_index >=3D region->count);
+}
+
+/**
+ * vgic_v3_rdist_free_slot - Look up registered rdist regions and identify=
 one
+ * which has free space to put a new rdist region.
+ *
+ * @rd_regions: redistributor region list head
+ *
+ * A redistributor regions maps n redistributors, n =3D region size / (2 x=
 64kB).
+ * Stride between redistributors is 0 and regions are filled in the index =
order.
+ *
+ * Return: the redist region handle, if any, that has space to map a new r=
dist
+ * region.
+ */
+struct vgic_redist_region *vgic_v3_rdist_free_slot(struct list_head *rd_re=
gions)
+{
+    struct vgic_redist_region *rdreg;
+
+    list_for_each_entry(rdreg, rd_regions, list)
+    {
+        if ( !vgic_v3_redist_region_full(rdreg) )
+            return rdreg;
+    }
+    return NULL;
+}
+
+unsigned int vgic_v3_max_rdist_count(const struct domain *d)
+{
+    /*
+     * Normally there is only one GICv3 redistributor region.
+     * The GICv3 DT binding provisions for multiple regions, since there a=
re
+     * platforms out there which need those (multi-socket systems).
+     * For domain using the host memory layout, we have to live with the M=
MIO
+     * layout the hardware provides, so we have to copy the multiple regio=
ns
+     * - as the first region may not provide enough space to hold all
+     * redistributors we need.
+     * All the other domains will get a constructed memory map, so we can =
go
+     * with the architected single redistributor region.
+     */
+    return domain_use_host_layout(d) ? vgic_v3_hw_data.nr_rdist_regions
+                                     : GUEST_GICV3_RDIST_REGIONS;
+}
+
+int vgic_register_redist_iodev(struct vcpu *vcpu);
+
+void vgic_v3_enable(struct vcpu *vcpu)
+{
+    /* Get the show on the road... */
+    vgic_register_redist_iodev(vcpu);
+    gic_hw_ops->update_hcr_status(GICH_HCR_EN, true);
+}
+
+int vgic_v3_lpi_sync_pending_status(struct domain *d, struct vgic_irq *irq=
)
+{
+    struct vcpu *vcpu;
+    int byte_offset, bit_nr;
+    paddr_t pendbase, ptr;
+    bool status;
+    u8 val;
+    int ret;
+    unsigned long flags;
+
+retry:
+    vcpu =3D irq->target_vcpu;
+    if ( !vcpu )
+        return 0;
+
+    pendbase    =3D GICR_PENDBASER_ADDRESS(vcpu->arch.vgic.pendbaser);
+
+    byte_offset =3D irq->intid / BITS_PER_BYTE;
+    bit_nr      =3D irq->intid % BITS_PER_BYTE;
+    ptr         =3D pendbase + byte_offset;
+
+    ret         =3D access_guest_memory_by_gpa(d, ptr, &val, 1, false);
+    if ( ret )
+        return ret;
+
+    status =3D val & (1 << bit_nr);
+
+    spin_lock_irqsave(&irq->irq_lock, flags);
+    if ( irq->target_vcpu !=3D vcpu )
+    {
+        spin_unlock_irqrestore(&irq->irq_lock, flags);
+        goto retry;
+    }
+    irq->pending_latch =3D status;
+    vgic_queue_irq_unlock(vcpu->domain, irq, flags);
+
+    if ( status )
+    {
+        /* clear consumed data */
+        val &=3D ~(1 << bit_nr);
+        ret =3D access_guest_memory_by_gpa(d, ptr, &val, 1, true);
+        if ( ret )
+            return ret;
+    }
+    return 0;
+}
+
+int vgic_v3_map_resources(struct domain *d)
+{
+    int rdist_count, i, ret;
+
+    /* Allocate memory for Re-distributor regions */
+    rdist_count =3D vgic_v3_max_rdist_count(d);
+
+    /*
+     * For domain using the host memory layout, it gets the hardware
+     * address.
+     * Other domains get the virtual platform layout.
+     */
+    if ( domain_use_host_layout(d) )
+    {
+        d->arch.vgic.dbase =3D vgic_v3_hw_data.dbase;
+
+        for ( i =3D 0; i < vgic_v3_hw_data.nr_rdist_regions; i++ )
+        {
+            vgic_v3_set_redist_base(d, i, vgic_v3_hw_data.regions[i].base,
+                                    vgic_v3_hw_data.regions[i].size /
+                                        GICV3_GICR_SIZE);
+        }
+    }
+    else
+    {
+        d->arch.vgic.dbase =3D GUEST_GICV3_GICD_BASE;
+
+        /* A single Re-distributor region is mapped for the guest. */
+        BUILD_BUG_ON(GUEST_GICV3_RDIST_REGIONS !=3D 1);
+
+        /* The first redistributor should contain enough space for all CPU=
s */
+        BUILD_BUG_ON((GUEST_GICV3_GICR0_SIZE / GICV3_GICR_SIZE) <
+                     MAX_VIRT_CPUS);
+        vgic_v3_set_redist_base(d, 0, GUEST_GICV3_GICR0_BASE,
+                                GUEST_GICV3_GICR0_SIZE / GICV3_GICR_SIZE);
+    }
+
+    /* Register mmio handle for the Distributor */
+    ret =3D
+        vgic_register_dist_iodev(d, gaddr_to_gfn(d->arch.vgic.dbase), VGIC=
_V3);
+
+    d->arch.vgic.ready =3D true;
+
+    return 0;
+}
diff --git a/xen/arch/arm/vgic/vgic.c b/xen/arch/arm/vgic/vgic.c
index b9463a5f27..05e6af4384 100644
--- a/xen/arch/arm/vgic/vgic.c
+++ b/xen/arch/arm/vgic/vgic.c
@@ -151,6 +151,28 @@ void vgic_put_irq(struct domain *d, struct vgic_irq *i=
rq)
     xfree(irq);
 }
=20
+void vgic_flush_pending_lpis(struct vcpu *vcpu)
+{
+    struct vgic_cpu *vgic_cpu =3D &vcpu->arch.vgic;
+    struct vgic_irq *irq, *tmp;
+    unsigned long flags;
+
+    spin_lock_irqsave(&vgic_cpu->ap_list_lock, flags);
+
+    list_for_each_entry_safe(irq, tmp, &vgic_cpu->ap_list_head, ap_list)
+    {
+        if ( irq->intid >=3D VGIC_MIN_LPI )
+        {
+            spin_lock(&irq->irq_lock);
+            list_del(&irq->ap_list);
+            irq->vcpu =3D NULL;
+            spin_unlock(&irq->irq_lock);
+            vgic_put_irq(vcpu->domain, irq);
+        }
+    }
+
+    spin_unlock_irqrestore(&vgic_cpu->ap_list_lock, flags);
+}
 /**
  * vgic_target_oracle() - compute the target vcpu for an irq
  * @irq:    The irq to route. Must be already locked.
@@ -520,7 +542,14 @@ retry:
=20
 static void vgic_fold_lr_state(struct vcpu *vcpu)
 {
-    vgic_v2_fold_lr_state(vcpu);
+    if ( vcpu->domain->arch.vgic.version =3D=3D GIC_V2 )
+    {
+        vgic_v2_fold_lr_state(vcpu);
+    }
+    else
+    {
+        vgic_v3_fold_lr_state(vcpu);
+    }
 }
=20
 /* Requires the irq_lock to be held. */
@@ -529,7 +558,14 @@ static void vgic_populate_lr(struct vcpu *vcpu,
 {
     ASSERT(spin_is_locked(&irq->irq_lock));
=20
-    vgic_v2_populate_lr(vcpu, irq, lr);
+    if ( vcpu->domain->arch.vgic.version =3D=3D GIC_V2 )
+    {
+        vgic_v2_populate_lr(vcpu, irq, lr);
+    }
+    else
+    {
+        vgic_v3_populate_lr(vcpu, irq, lr);
+    }
 }
=20
 static void vgic_set_underflow(struct vcpu *vcpu)
@@ -851,9 +887,13 @@ struct irq_desc *vgic_get_hw_irq_desc(struct domain *d=
, struct vcpu *v,
=20
 bool vgic_emulate(struct cpu_user_regs *regs, union hsr hsr)
 {
-    ASSERT(current->domain->arch.vgic.version =3D=3D GIC_V3);
-
-    return false;
+    switch ( current->domain->arch.vgic.version )
+    {
+    case GIC_V3:
+        return vgic_v3_emulate_reg(regs, hsr);
+    default:
+        return false;
+    }
 }
=20
 /*
@@ -950,6 +990,8 @@ unsigned int vgic_max_vcpus(unsigned int domctl_vgic_ve=
rsion)
     {
     case XEN_DOMCTL_CONFIG_GIC_V2:
         return VGIC_V2_MAX_CPUS;
+    case XEN_DOMCTL_CONFIG_GIC_V3:
+        return VGIC_V3_MAX_CPUS;
=20
     default:
         return 0;
@@ -957,14 +999,6 @@ unsigned int vgic_max_vcpus(unsigned int domctl_vgic_v=
ersion)
 }
=20
 #ifdef CONFIG_GICV3
-/* Dummy implementation to allow building without actual vGICv3 support. *=
/
-void vgic_v3_setup_hw(paddr_t dbase,
-                      unsigned int nr_rdist_regions,
-                      const struct rdist_region *regions,
-                      unsigned int intid_bits)
-{
-    panic("New VGIC implementation does not yet support GICv3\n");
-}
 #endif
=20
 /*
diff --git a/xen/arch/arm/vgic/vgic.h b/xen/arch/arm/vgic/vgic.h
index c6bc3509a5..aca977a5c9 100644
--- a/xen/arch/arm/vgic/vgic.h
+++ b/xen/arch/arm/vgic/vgic.h
@@ -68,7 +68,53 @@ int vgic_v2_map_resources(struct domain *d);
 int vgic_register_dist_iodev(struct domain *d, gfn_t dist_base_fn,
                              enum vgic_type);
=20
-#endif
+#ifdef CONFIG_GICV3
+void vgic_v3_fold_lr_state(struct vcpu *vcpu);
+void vgic_v3_populate_lr(struct vcpu *vcpu, struct vgic_irq *irq, int lr);
+void vgic_v3_enable(struct vcpu *vcpu);
+int vgic_v3_map_resources(struct domain *d);
+bool vgic_v3_emulate_reg(struct cpu_user_regs *regs, union hsr hsr);
+int vgic_v3_lpi_sync_pending_status(struct domain *d, struct vgic_irq *irq=
);
+bool vgic_lpis_enabled(struct vcpu *vcpu);
+u64 vgic_sanitise_field(u64 reg, u64 field_mask, int field_shift,
+			u64 (*sanitise_fn)(u64));
+u64 vgic_sanitise_shareability(u64 field);
+u64 vgic_sanitise_inner_cacheability(u64 field);
+u64 vgic_sanitise_outer_cacheability(u64 field);
+unsigned int vgic_v3_init_dist_iodev(struct vgic_io_device *dev);
+#else
+static inline void vgic_v3_fold_lr_state(struct vcpu *vcpu)
+{
+}
+static inline void vgic_v3_populate_lr(struct vcpu *vcpu, struct vgic_irq =
*irq, int lr)
+{
+}
+static inline void vgic_v3_enable(struct vcpu *vcpu)
+{
+}
+static inline int vgic_v3_map_resources(struct domain *d)
+{
+    return 0;
+}
+static inline bool vgic_v3_emulate_reg(struct cpu_user_regs *regs, union h=
sr hsr)
+{
+    return false;
+}
+static inline int vgic_v3_lpi_sync_pending_status(struct domain *d, struct=
 vgic_irq *irq)
+{
+    return 0;
+}
+static inline bool vgic_lpis_enabled(struct vcpu *vcpu)
+{
+    return false;
+}
+static inline unsigned int vgic_v3_init_dist_iodev(struct vgic_io_device *=
dev)
+{
+    return 0;
+}
+#endif /* CONFIG_GICV3 */
+
+#endif /* __XEN_ARM_VGIC_VGIC_H__ */
=20
 /*
  * Local variables:
--=20
2.34.1


From xen-devel-bounces@lists.xenproject.org Wed Oct 25 10:22:36 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 10:22:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622814.969984 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvb1y-0005dV-IK; Wed, 25 Oct 2023 10:22:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622814.969984; Wed, 25 Oct 2023 10: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 1qvb1y-0005dO-FS; Wed, 25 Oct 2023 10:22:30 +0000
Received: by outflank-mailman (input) for mailman id 622814;
 Wed, 25 Oct 2023 10:22: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 1qvb1y-0005dI-2B
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 10:22: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 1qvb1x-0005qm-Jl; Wed, 25 Oct 2023 10:22:29 +0000
Received: from [15.248.3.4] (helo=[10.24.67.28])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qvb1x-0006g6-Aw; Wed, 25 Oct 2023 10:22: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=up6TETH/uoXk17LWcqq2alTrEYjLfRyWqmEkqEpxmWY=; b=Jz4FXdwVa/Vemp2ouqSNR6B05r
	WXpE3j2RSK7I1M2fCg1As5qEeTqbhCnmzV2EYTt1o+Ny7FwSiSfdTDUj8AcJ40mlrt0ytqunG2at2
	eUhw29NQEvDuokgrRsCH0p+QFXnP62/o/POy5I8fRA01izdxkzxqLtcNgBbAjwszlyzs=;
Message-ID: <163d3326-38f2-40b6-a654-60f0221daa6c@xen.org>
Date: Wed, 25 Oct 2023 11:22:27 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN PATCH 4/4] arm/new vgic: Add ITS support to NEW_VGIC
Content-Language: en-GB
To: Mykyta Poturai <Mykyta_Poturai@epam.com>,
 "xen-devel@lists.xenproject.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: <cover.1698225630.git.mykyta_poturai@epam.com>
 <b0b41f2065002e4cf7795ebfbf9f84624c2f150d.1698225630.git.mykyta_poturai@epam.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <b0b41f2065002e4cf7795ebfbf9f84624c2f150d.1698225630.git.mykyta_poturai@epam.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi Mykyta,

This patch is far too big to review. Can this be split in smaller 
logical change? The same goes for patch #3.

But some high level remarks.

On 25/10/2023 11:13, Mykyta Poturai wrote:
> Add GICv3 ITS support for NEW VGIC. The code is ported from the Kernel
> version 6.0. The code is adapted to Xen's coding style and hooked up
> with Xen's interfaces. The code is adapted to Xen coding style and
> conventions.
> For this version ITS is supported only for hardware domains.
> 
> Remove unsupported flag from config HAS_ITS and add NEW_VGIC dependency.
Even if the code is based on Linux, you are adding a branch new vGIC v3 
ITS implementation. So I don't think we should remove 'UNSUPPORTED' as 
it would imply it is production ready.

Also, AFAICT, the new version of 'depends on' means we will not be able 
to use GICv3 ITS with the current vGIC. Can you explain why?

> 
> Signed-off-by: Mykyta Poturai <mykyta_poturai@epam.com>
> ---
>   xen/arch/arm/Kconfig                  |    4 +-
>   xen/arch/arm/gic-v3-its.c             |   28 +
>   xen/arch/arm/gic-v3-lpi.c             |   11 +

Looking at the change, you mainly add #ifdef in the code. The goal of 
gic-v3-lpi.c was to be agnostic from the different vGIC. So please 
abstract it.

>   xen/arch/arm/include/asm/gic_v3_its.h |   82 ++
>   xen/arch/arm/include/asm/new_vgic.h   |   64 +
>   xen/arch/arm/vgic/Makefile            |    1 +
>   xen/arch/arm/vgic/vgic-init.c         |    7 +
>   xen/arch/arm/vgic/vgic-its.c          | 1945 +++++++++++++++++++++++++
>   xen/arch/arm/vgic/vgic-mmio-v3.c      |   93 +-
>   xen/arch/arm/vgic/vgic-mmio.c         |    6 +
>   xen/arch/arm/vgic/vgic-mmio.h         |   11 +

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Wed Oct 25 10:25:19 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 10:25:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622818.969994 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvb4d-0006LJ-1O; Wed, 25 Oct 2023 10:25:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622818.969994; Wed, 25 Oct 2023 10: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 1qvb4c-0006LC-TL; Wed, 25 Oct 2023 10:25:14 +0000
Received: by outflank-mailman (input) for mailman id 622818;
 Wed, 25 Oct 2023 10:25: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=p229=GH=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qvb4c-0006L4-3d
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 10:25:14 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com
 (mail-db3eur04on060f.outbound.protection.outlook.com
 [2a01:111:f400:fe0c::60f])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id c761f2e9-7320-11ee-9b0e-b553b5be7939;
 Wed, 25 Oct 2023 12:25:12 +0200 (CEST)
Received: from DB8PR03CA0028.eurprd03.prod.outlook.com (2603:10a6:10:be::41)
 by DU0PR08MB7883.eurprd08.prod.outlook.com (2603:10a6:10:3b1::6) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.33; Wed, 25 Oct
 2023 10:25:02 +0000
Received: from DU2PEPF0001E9C2.eurprd03.prod.outlook.com
 (2603:10a6:10:be:cafe::16) by DB8PR03CA0028.outlook.office365.com
 (2603:10a6:10:be::41) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.19 via Frontend
 Transport; Wed, 25 Oct 2023 10:25:02 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DU2PEPF0001E9C2.mail.protection.outlook.com (10.167.8.71) with
 Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6933.15 via Frontend Transport; Wed, 25 Oct 2023 10:25:01 +0000
Received: ("Tessian outbound 028b72acc2da:v215");
 Wed, 25 Oct 2023 10:25:01 +0000
Received: from c27a914830f9.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 4E456117-AEAD-48F7-AF5D-057D3F97218D.1; 
 Wed, 25 Oct 2023 10:24:55 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id c27a914830f9.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Wed, 25 Oct 2023 10:24:55 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by AS8PR08MB9573.eurprd08.prod.outlook.com (2603:10a6:20b:61b::15)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.19; Wed, 25 Oct
 2023 10:24:50 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::ae6e:f96c:f2f3:efc9]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::ae6e:f96c:f2f3:efc9%4]) with mapi id 15.20.6907.030; Wed, 25 Oct 2023
 10:24: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: c761f2e9-7320-11ee-9b0e-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=yo1SuZNdnuEQYif/3zhWxa19vW1Js6FBL2EXNYGw/rU=;
 b=GbwHHX+AOrNmKWhPM0BVV+5FWDHrqcoZvnp9XYu+COjzsdbmvjUqPAibH9L4Bo+kC9G+pNt8SzGIObChJCCSc0/WcKkj1lDn26l5zR/Gn+XVpXRzxA4qWpD7ENZ4Fozd9tuMFh4Loi//BlX4+8DD0mL9FomE1I6J/22k8+EGzq4=
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: 7cce9e837b2542a5
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=EULdrBAdJKyNklAYBRXkL37+2ssBQmcYpc+shW7zrH8c0aBtzz5sIXqhvTaQH19cFBbt7Vnu6E0e8xG+NnAmZmwqS9NxmEzeDcXNoNwjLdASlstzrTIs5U1dOEt8xo0T0OXyyTQTMb8RqkNV3GlELtcFZXVye+ScOfTTGrI7O7d7Y6C7H+CISi/r6q2Rb8TPPQdlorfBJZYBiJ/0ecxZFlNwpmOfgb7H2mkJpQm0F4S3933PiSXc/kNWCyKEQel/MKzEqhkb5MuQMjysdDTEK/SnFYGSqwqMveQPgXAIEqE7DNERe2AGpRGN6Q7OTKfmqMjNwIcbUV5OfrV19BMxfg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=yo1SuZNdnuEQYif/3zhWxa19vW1Js6FBL2EXNYGw/rU=;
 b=TQ+EN6GpI/xtzP248KZ+cgOD/8q8uw74v3L16op5wCBD0C0kUKqOUnP7UNVYaM7YtBAl7JQbOOB55TNeUKvdTOMuVvh99LnJD2Tz6+io1fSjJH1AwUd1AQKZeBkt7HNnCzlorpQlF01mQYX3A1f0U+Ia8FKHvNOj0gpM7lrMN1GVcvhwsQP55V5H7NOkzzJ7ArPpTHhevcWOmNUAgX1nmiHsiH4723BHK06h+bIERU6MS4VHFACTFMc37Y0oFYVoHp8pyUC8dPPX5X8gAsYqIcGjuzJrvDZqR1WnHFeAN0Vlxlp/eNQB7hinPw1hoqWnlXATcJ45nylCm5izFgR7jA==
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=yo1SuZNdnuEQYif/3zhWxa19vW1Js6FBL2EXNYGw/rU=;
 b=GbwHHX+AOrNmKWhPM0BVV+5FWDHrqcoZvnp9XYu+COjzsdbmvjUqPAibH9L4Bo+kC9G+pNt8SzGIObChJCCSc0/WcKkj1lDn26l5zR/Gn+XVpXRzxA4qWpD7ENZ4Fozd9tuMFh4Loi//BlX4+8DD0mL9FomE1I6J/22k8+EGzq4=
From: Henry Wang <Henry.Wang@arm.com>
To: "committers@xenproject.org" <committers@xenproject.org>, Xen-devel
	<xen-devel@lists.xenproject.org>
CC: Julien Grall <julien@xen.org>, Stefano Stabellini
	<sstabellini@kernel.org>, Jan Beulich <jbeulich@suse.com>, Andrew Cooper
	<andrew.cooper3@citrix.com>, George Dunlap <george.dunlap@citrix.com>,
	Community Manager <community.manager@xenproject.org>
Subject: Re: Commit moratorium for branching 4.18
Thread-Topic: Commit moratorium for branching 4.18
Thread-Index: AQHaByyrPO+3wCfL+UGXB2cQc11Ty7BaTJKA
Date: Wed, 25 Oct 2023 10:24:50 +0000
Message-ID: <CE001769-5AC1-4F9D-B1A6-BAD0215992F7@arm.com>
References: <E63E9C8C-471E-4524-A61B-EB5BA4618288@arm.com>
In-Reply-To: <E63E9C8C-471E-4524-A61B-EB5BA4618288@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_|AS8PR08MB9573:EE_|DU2PEPF0001E9C2:EE_|DU0PR08MB7883:EE_
X-MS-Office365-Filtering-Correlation-Id: f65644a3-2555-4f80-ba56-08dbd544a5cd
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:
 fRxuCwvVIjbCZ0SUri4P0++9LJMQIHs53O69XYWzSZFbequLDMPsnXKTQ2389pJe9YlZkQERxtlDh7HD3iT2Kj8BM93zNvkWSuHOeQySDhqYl5lPb+Wygqpm79/P3iJb4SnxU7jVT6xRR6tzWDSX75NpxB1MikjRvhQCVHayE/qj++ndPuHaodv4Np7YDdHVg5W8tBBnYy69K8rz6GCRhdBcEMCg/cAKwj/KByOJVFkrQI6LB42Z/d9NXGdAgmqZAmWJcyXEjGua/F4XjHJN5pgd3wz9/96aFLGIm9nKPFtMmI8At3jyevNOu1zWMNwUohzAKEWsKvvdPWwR9B+Cnn4t1ZhzI7ZsXrzpRUy5YSJ7isHFVfOwSKAynklwewOK+vsicILS+ko/dlfLyhOoCmICYd7waTBFP6lTvbANocn8HHWhBXX9hlxO7c2aqp8PIAhDZmaI2O+TV0A6g460u6tcn6ZEki1yKOpdxpppgNEy6ZI2yKVSbVKJaqi771VU4pjyj+XIHbCWYj1Kju3Zd8cXsHEWl4p3gpJuIXU5QH7n44amNyUY4gcTwhB6OrUY6M7nKRA6wIbxowoT6FhLZ4WcT0rwuoNAsM+XQ/qADQaaB5xrVlxd2d3XwzdpWz8IIMJqnAXb/T6pSRoDZ/VobQ==
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)(346002)(136003)(396003)(230922051799003)(186009)(1800799009)(64100799003)(451199024)(41300700001)(6506007)(53546011)(71200400001)(478600001)(2616005)(6512007)(76116006)(66556008)(66476007)(66446008)(66946007)(91956017)(110136005)(64756008)(54906003)(36756003)(316002)(122000001)(86362001)(6486002)(33656002)(558084003)(26005)(83380400001)(38100700002)(8676002)(8936002)(38070700009)(4326008)(5660300002)(2906002)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="us-ascii"
Content-ID: <F2F39CEE18CC5346BE2B454E4B85985C@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB9573
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:
 DU2PEPF0001E9C2.eurprd03.prod.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	6954b81a-3c1d-4f8b-0844-08dbd5449ef1
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	+3Re10ugRYlr74RIv3mTGbXbGbPv1h7KenwmG9hL5rgASubpF2Eu9xvsukNgu/2UOmbEXFT6LrMPZVhqaULqwAE7E+CTLEIW7/np9TG4JBwqRGiS0vKvT3weLSfVj93wMoYy1g/Oj/qGX3JWzPEIpITwfmNgvoVr9Y28N6Qxj1QcpK7Uwu988UoyhNSjgnXZTTeuqlYqGku6o3yguN50+YUp3TR7ZOnYcxflzFIcG94gtJGXIW/oyhMmeYiBKE0XClHdNJeKHdYmStmButjS/yMakqL8bKb2GO6wgTC02yuj4ay+DG8mTF9iQsPtb1Nz8I+8u+9fBZnUeSfZCgo+xet7ILrPP1ex/NqJGbYae0vfJTvUfGeR938QUAPmKt+iKzwdvYfv+x8mJrTvmp3QnsJwM7R13leNS+c07vKhAeMFc1MWvbsvjeD3PMIU/SmQD/YAqoke9KYRRuHhlTYADxSuyKAdjpMt2ix63e/GRHwonm6u5ArFEn2yn3b+SQTW31u7cMvUh+PR8Pl2oHXXkZb03ig9PVz4VxtkkT/r8RzNJJ3KA0+3vsjl/w/rBu/0ivz+Og7+TVYl9by2WUymPzVkyJKU/cR1VymvOk49bWKPZJWqlkfsEZ1aTMPl3drewAmKm4smt7gGwxjZVwXbDecVK9SJO1anRYZ3D7sW5OW9ZN/orYyUfIiYKVypVHLuJBKIrPzcyExSkGkPvzd+Z/9Carx3UM7FgTKQcacXH5GyMf6HOxOmemYPKGe/FO7T
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)(136003)(376002)(39860400002)(230922051799003)(186009)(64100799003)(1800799009)(451199024)(82310400011)(46966006)(40470700004)(36840700001)(2906002)(4744005)(5660300002)(82740400003)(54906003)(478600001)(356005)(316002)(81166007)(110136005)(70586007)(6506007)(70206006)(41300700001)(6486002)(6512007)(53546011)(47076005)(2616005)(83380400001)(40480700001)(86362001)(336012)(36860700001)(36756003)(4326008)(33656002)(40460700003)(8676002)(8936002)(26005);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Oct 2023 10:25:01.9116
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: f65644a3-2555-4f80-ba56-08dbd544a5cd
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:
	DU2PEPF0001E9C2.eurprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR08MB7883

(+xen-devel)

Sorry I forgot to send to the list...

> On Oct 25, 2023, at 18:18, Henry Wang <Henry.Wang@arm.com> wrote:
>=20
> Hi committers,
>=20
> We will be branching the tree for Xen 4.18 in the next few days. Please=20
> avoid committing any new patches to staging until further notice.
>=20
> Kind regards,
> Henry



From xen-devel-bounces@lists.xenproject.org Wed Oct 25 10:34:46 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 10:34:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622824.970003 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvbDd-0001LO-SM; Wed, 25 Oct 2023 10:34:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622824.970003; Wed, 25 Oct 2023 10:34: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 1qvbDd-0001LH-PN; Wed, 25 Oct 2023 10:34:33 +0000
Received: by outflank-mailman (input) for mailman id 622824;
 Wed, 25 Oct 2023 10:34: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=KNSz=GH=alien8.de=bp@srs-se1.protection.inumbo.net>)
 id 1qvbDc-0001Jx-1E
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 10:34:32 +0000
Received: from mail.alien8.de (mail.alien8.de [2a01:4f9:3051:3f93::2])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 146f5a1c-7322-11ee-98d5-6d05b1d4d9a1;
 Wed, 25 Oct 2023 12:34:30 +0200 (CEST)
Received: from localhost (localhost.localdomain [127.0.0.1])
 by mail.alien8.de (SuperMail on ZX Spectrum 128k) with ESMTP id BDDE140E01B1; 
 Wed, 25 Oct 2023 10:34:28 +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 QhHASVTCwIga; Wed, 25 Oct 2023 10:34:27 +0000 (UTC)
Received: from zn.tnic (pd95304da.dip0.t-ipconnect.de [217.83.4.218])
 (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 B3E1740E0196;
 Wed, 25 Oct 2023 10:34: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: 146f5a1c-7322-11ee-98d5-6d05b1d4d9a1
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=1698230067; bh=18/mcvH27y89kOfWgOoc8il6KtQKA9GxDmtXxRzFDWs=;
	h=Date:From:To:Cc:Subject:References:In-Reply-To:From;
	b=THlV6aVyPuO4ttcnuH/sGy+hWth3pFJ07cC8hdq9VyG+NrRs/JloOwG2eT09BBphI
	 RlM67phHuDDqlYPZj44DIIVVPEP0IbQLF6FlE7kTMwDkM9ucCXtShvRTn3PURoC7+S
	 71N3Cgs86GC7rspSy0IFg1kiTZX9AXS6TRlmhA8CchZBik8YxcJY2RHS8pQnaEgjcJ
	 +UDXQ/F6AJ/wmNnWh6fGhA3s0cN1TiXtb3/aP30DNq1EGWpoG5dCVw54fe9CcSnTMw
	 LkybLkvVkIJGj5Ax2VPWJsFlGPNwXoiUhtOo39O2PdqpH6rx6Z2f7d7lO3heV4q9Oj
	 jmRV9D25H83khSsp3ccugLurO/iUhzlRD8aGNl2b7PkflskJnrV486d+8EOoJFDWup
	 H36ii52EzVM/gC1PQheMUv9cNyPpZG3lsIY13i3B1b8uCCh8CwnK05i0M4kqjzyU8A
	 v7yevDQlwKxc43uw/0QlTAdTA7sQ4CFT3aRpbSthtG4/CGwXlVRbkDEMUGrcMAMNyV
	 SjhVKhf0madhWha83TWsjxX+DndfcCe06zn2F4TzrpxE0ccnwU5xNm0Ou4wP/w3BGq
	 l2qJa88fiy1hYv+ux2UZyZustv7joHhOV5ves/f5olzL7HgQaoeDOo9ZaJ3lMal37F
	 kiycBZsBh5nho7t4msMZd5IY=
Date: Wed, 25 Oct 2023 12:34:02 +0200
From: Borislav Petkov <bp@alien8.de>
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>,
	Dave Hansen <dave.hansen@linux.intel.com>,
	"H. Peter Anvin" <hpa@zytor.com>, Ajay Kaher <akaher@vmware.com>,
	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,
	Peter Zijlstra <peterz@infradead.org>
Subject: Re: [PATCH v3 1/5] x86/paravirt: move some functions and defines to
 alternative
Message-ID: <20231025103402.GBZTjvGse9c0utZGO0@fat_crate.local>
References: <20231019091520.14540-1-jgross@suse.com>
 <20231019091520.14540-2-jgross@suse.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <20231019091520.14540-2-jgross@suse.com>

On Thu, Oct 19, 2023 at 11:15:16AM +0200, Juergen Gross wrote:
> +/* Low-level backend functions usable from alternative code replacements. */
> +DEFINE_ASM_FUNC(x86_nop, "", .entry.text);
> +EXPORT_SYMBOL_GPL(x86_nop);

This is all x86 code so you don't really need the "x86_" prefix - "nop"
is perfectly fine.

> +noinstr void x86_BUG(void)
> +{
> +	BUG();
> +}
> +EXPORT_SYMBOL_GPL(x86_BUG);

That export is needed for?

Paravirt stuff in modules?

It builds here without it - I guess I need to do an allmodconfig.

-- 
Regards/Gruss,
    Boris.

https://people.kernel.org/tglx/notes-about-netiquette


From xen-devel-bounces@lists.xenproject.org Wed Oct 25 10:39:59 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 10:39:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622828.970014 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvbIl-0003Lq-Er; Wed, 25 Oct 2023 10:39:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622828.970014; Wed, 25 Oct 2023 10:39: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 1qvbIl-0003Lj-B2; Wed, 25 Oct 2023 10:39:51 +0000
Received: by outflank-mailman (input) for mailman id 622828;
 Wed, 25 Oct 2023 10:39: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 1qvbIj-0003Lc-IY
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 10:39: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 1qvbIi-0006If-TT; Wed, 25 Oct 2023 10:39:48 +0000
Received: from [15.248.3.4] (helo=[10.24.67.28])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qvbIi-0007Ne-Nw; Wed, 25 Oct 2023 10:39: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=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=W78P4MyRTFC7b6CXC2Kz8bwCP90zRgPvt+jZM1SoPWI=; b=xBoXcavZSvT7uMc4bC2KYMelGg
	W3Bqo1zHRhM+N8HpZ0mNeYgEvv7/Nc4faHOXUyMkRR2I5GMMUB2W2zHzSji9JZOTrt/aL8+zp+Rej
	q/9+fued0+HQzkfI5SiJxOvV+/p8VQhyZHtlqJN3LxQ51ObKVyQHa+AcafulXfekKGPY=;
Message-ID: <3be9d891-4285-4d01-b5fd-fb88e2599ace@xen.org>
Date: Wed, 25 Oct 2023 11:39:47 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN PATCH 1/4] arm/gicv3: Move guest dist base
Content-Language: en-GB
To: Mykyta Poturai <Mykyta_Poturai@epam.com>,
 "xen-devel@lists.xenproject.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: <cover.1698225630.git.mykyta_poturai@epam.com>
 <becf4d912d32b6888e040edd0fda4eece6cab66b.1698225630.git.mykyta_poturai@epam.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <becf4d912d32b6888e040edd0fda4eece6cab66b.1698225630.git.mykyta_poturai@epam.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi,

On 25/10/2023 11:13, Mykyta Poturai wrote:
> New vgic code relies on lower address bits to calculate intid from > the address offset. 0x03001000 as DIST_BASE overlaps with
> VGIC_ADDR_IRQ_MASK when bits_per_irq >= 64, breaking the intid calculation.
> Move DIST_BASE to a safer location to fix this.

I am a bit confused, you are referring to vGICv3 in the title but the 
commit message is generic enough and vGICv2 already seem to use the 
macro. In fact, the value for the distributor base is actualy the same 
as GICv3. So is this a bug for GICv2 as well? If not, can you provide 
more details why?

Lastly, we can control the address for a guest but not for dom0. So 
wouldn't it be a problem for dom0 as well? This would mean the code 
needs to be fixed rather than the guest GICv3 distributor base changed.

Cheers,

> 
> Signed-off-by: Mykyta Poturai <mykyta_poturai@epam.com>
> ---
>   xen/include/public/arch-arm.h | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/xen/include/public/arch-arm.h b/xen/include/public/arch-arm.h
> index a25e87dbda..71fa25b1d4 100644
> --- a/xen/include/public/arch-arm.h
> +++ b/xen/include/public/arch-arm.h
> @@ -438,7 +438,7 @@ typedef uint64_t xen_callback_t;
>   #define GUEST_GICC_SIZE   xen_mk_ullong(0x00002000)
>   
>   /* vGIC v3 mappings */
> -#define GUEST_GICV3_GICD_BASE      xen_mk_ullong(0x03001000)
> +#define GUEST_GICV3_GICD_BASE      xen_mk_ullong(0x03000000)
>   #define GUEST_GICV3_GICD_SIZE      xen_mk_ullong(0x00010000)
>   
>   #define GUEST_GICV3_RDIST_REGIONS  1

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Wed Oct 25 10:45:08 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 10:45:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622834.970024 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvbNn-0005aI-Vl; Wed, 25 Oct 2023 10:45:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622834.970024; Wed, 25 Oct 2023 10:45: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 1qvbNn-0005ZQ-Sf; Wed, 25 Oct 2023 10:45:03 +0000
Received: by outflank-mailman (input) for mailman id 622834;
 Wed, 25 Oct 2023 10:45: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=AAMM=GH=gmail.com=xadimgnik@srs-se1.protection.inumbo.net>)
 id 1qvbNl-0005Yt-Op
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 10:45:01 +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 8bf08f65-7323-11ee-98d5-6d05b1d4d9a1;
 Wed, 25 Oct 2023 12:45:00 +0200 (CEST)
Received: by mail-wm1-x32e.google.com with SMTP id
 5b1f17b1804b1-40859c466efso32740515e9.3
 for <xen-devel@lists.xenproject.org>; Wed, 25 Oct 2023 03:45:00 -0700 (PDT)
Received: from [192.168.16.6] (54-240-197-232.amazon.com. [54.240.197.232])
 by smtp.gmail.com with ESMTPSA id
 w11-20020a5d608b000000b0032008f99216sm11788843wrt.96.2023.10.25.03.44.58
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 25 Oct 2023 03:44: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: 8bf08f65-7323-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698230700; x=1698835500; 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=pAB8Za+YNx8eTSkt0VDDXW7F6lrTKw3K5FZe8J7txp4=;
        b=m3TBSuW9/FpvFqp7StlyKYQHIdDAevskQlg0712dc1//Z0QcV3E4N5yu7JzPzTD8ZA
         3hCidX7GOTufa9Gqt2nLsMGe2GVqtUtvP9cG87kWZJXP+KX2iJUfeXbZAu+K918nwKbH
         5MhZHZNQQSAUU4er66ABzhjD7RM8x0xzj4l9L+NworxFj/qn5JHRRjY0KJxXc9MCtaah
         Q9jIgCtnIe4ftmBQzeQbU/iBQ68+kgeW2eYay5oioSzfqySm2jO0I4JQeSORt+dFgnNw
         Ry6uo7bA5us+4Z46N09SQBpzrVV1dauslApqzTvNK+jF3hJbpGHxrKMZjHBCtx1wrJBn
         5VKA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698230700; x=1698835500;
        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=pAB8Za+YNx8eTSkt0VDDXW7F6lrTKw3K5FZe8J7txp4=;
        b=u7Ektf4wyg7XLtopTddDN0do8ET3daqh+3U7AW6vF6RFmd6NV1wpTijg34kQFEF7Rw
         F2HsRmJ9EOg8C0pENecX0/cTQ6TqVw7iEuXZtjBWslqZoRsVnUYAw3uuvP6riyXsRDZc
         0zKoQDFGvhk0PC7NA+wxTFpny60j2zR4nsgoqaG03a6knzVECjC1ty/4OhJPq5WQim+D
         jllQOdkSPjECAD/wlH7PR0HAJHNZnlZXry9sKbdrHFveoQCV5b8rhuN7ElVtljqNVr/j
         PXk6FT+0WLNLAuVyqN5dWsuAdBh65DW2udZpysjTlrZMgDcBPd6YfOK+rLwcB3+E56sw
         ZcZQ==
X-Gm-Message-State: AOJu0YxQLkzM2JvvCRTVF+jc5xGbFexSmFoPkRQ9SkgUxfoE9QOp2iCT
	WUJ4VgZMilQ9Z8ysd6Mu810=
X-Google-Smtp-Source: AGHT+IEgUt177RqiVBjvNSokftEbLh1Zc0sYAnRvYjW/rhP2mAkIVy2gI7R9jgx0ZPOjQniQLKJEdw==
X-Received: by 2002:a05:600c:45cb:b0:406:5359:769f with SMTP id s11-20020a05600c45cb00b004065359769fmr11217809wmo.0.1698230699486;
        Wed, 25 Oct 2023 03:44:59 -0700 (PDT)
From: Paul Durrant <xadimgnik@gmail.com>
X-Google-Original-From: Paul Durrant <paul@xen.org>
Message-ID: <bbed0311-c33f-4f84-a08e-0709c55ec151@xen.org>
Date: Wed, 25 Oct 2023 11:44:57 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Reply-To: paul@xen.org
Subject: Re: [PATCH 12/12] hw/xen: add support for Xen primary console in
 emulated mode
Content-Language: en-US
To: David Woodhouse <dwmw2@infradead.org>, qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>, Hanna Reitz <hreitz@redhat.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Anthony Perard <anthony.perard@citrix.com>,
 =?UTF-8?Q?Marc-Andr=C3=A9_Lureau?= <marcandre.lureau@redhat.com>,
 Paolo Bonzini <pbonzini@redhat.com>, "Michael S. Tsirkin" <mst@redhat.com>,
 Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
 Richard Henderson <richard.henderson@linaro.org>,
 Eduardo Habkost <eduardo@habkost.net>, Marcelo Tosatti
 <mtosatti@redhat.com>, qemu-block@nongnu.org,
 xen-devel@lists.xenproject.org, kvm@vger.kernel.org
References: <20231016151909.22133-1-dwmw2@infradead.org>
 <20231016151909.22133-13-dwmw2@infradead.org>
 <c18439ca-c9ae-4567-bbcf-dffe6f7b72e3@xen.org>
 <3acd078bba2d824f836b20a270c780dc2d031c43.camel@infradead.org>
 <3f22903b-30f0-40f2-8624-b681d9c7e05d@xen.org>
 <42b005d7c03d5b0d47a16c4e025d8c3ec7289e0f.camel@infradead.org>
 <19fc2701-4cd8-4a14-9d45-bfaea37ed2d6@xen.org>
 <efdefcc11e2bd8c0f7e6e914dc9c54ffd65fe733.camel@infradead.org>
 <684d378d-9c71-4a5f-8f0c-3ed6ffc20a70@xen.org>
 <31b160a3f3ce2eda057dafec3cab273a38f1dc0f.camel@infradead.org>
Organization: Xen Project
In-Reply-To: <31b160a3f3ce2eda057dafec3cab273a38f1dc0f.camel@infradead.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

On 25/10/2023 10:00, David Woodhouse wrote:
> On Wed, 2023-10-25 at 09:31 +0100, Paul Durrant wrote:
>> On 24/10/2023 17:34, David Woodhouse wrote:
>>> On Tue, 2023-10-24 at 17:25 +0100, Paul Durrant wrote:
>>>> On 24/10/2023 16:49, David Woodhouse wrote:
>>>>> On Tue, 2023-10-24 at 16:39 +0100, Paul Durrant wrote:
>>>>>> On 24/10/2023 16:37, David Woodhouse wrote:
>>>>>>> On Tue, 2023-10-24 at 15:20 +0100, Paul Durrant wrote:
>>>>>>>> On 16/10/2023 16:19, David Woodhouse wrote:
>>>>>>>>> From: David Woodhouse <dwmw@amazon.co.uk>
>>>>>>>>>
>>>>>>>>> The primary console is special because the toolstack maps a page at a
>>>>>>>>> fixed GFN and also allocates the guest-side event channel. Add support
>>>>>>>>> for that in emulated mode, so that we can have a primary console.
>>>>>>>>>
>>>>>>>>> Add a *very* rudimentary stub of foriegnmem ops for emulated mode, which
>>>>>>>>> supports literally nothing except a single-page mapping of the console
>>>>>>>>> page. This might as well have been a hack in the xen_console driver, but
>>>>>>>>> this way at least the special-casing is kept within the Xen emulation
>>>>>>>>> code, and it gives us a hook for a more complete implementation if/when
>>>>>>>>> we ever do need one.
>>>>>>>>>
>>>>>>>> Why can't you map the console page via the grant table like the xenstore
>>>>>>>> page?
>>>>>>>
>>>>>>> I suppose we could, but I didn't really want the generic xen-console
>>>>>>> device code having any more of a special case for 'Xen emulation' than
>>>>>>> it does already by having to call xen_primary_console_create().
>>>>>>>
>>>>>>
>>>>>> But doesn't is save you the whole foreignmem thing? You can use the
>>>>>> grant table for primary and secondary consoles.
>>>>>
>>>>> Yes. And I could leave the existing foreignmem thing just for the case
>>>>> of primary console under true Xen. It's probably not that awful a
>>>>> special case, in the end.
>>>>>
>>>>> Then again, I was surprised I didn't *already* have a foreignmem ops
>>>>> for the emulated case, and we're probably going to want to continue
>>>>> fleshing it out later, so I don't really mind adding it.
>>>>>
>>>>
>>>> True. We'll need it for some of the other more fun protocols like vkbd
>>>> or fb. Still, I think it'd be nicer to align the xenstore and primary
>>>> console code to look similar and punt the work until then :-)
>>>
>>> I don't think it ends up looking like xenstore either way, does it?
>>> Xenstore is special because it gets to use the original pointer to its
>>> own page.
>>>
>>
>> Not sure what you mean there? A guest can query the PFN for either
>> xenstore or console using HVM params, or it can find them in its own
>> grant table entries 0 or 1.
> 
> The code in our xen_xenstore.c uses its *own* pointer (s->xs) to the
> MemoryRegion that it created (s->xenstore_page). It is its own backend,
> as well as doing the "magic" to create the guest-side mapping and event
> channel.
> 
> The difference for the console code is that we actually have a
> *separation* between the standard backend code in xen_console.c, and
> the magic frontend parts for the emulated mode.
> 
> 
>>
>>> I don't think I want to hack the xen_console code to explicitly call a
>>> xen_console_give_me_your_page() function. If not foreignmem, I think
>>> you were suggesting that we actually call the grant mapping code to get
>>> a pointer to the underlying page, right?
>>
>> I'm suggesting that the page be mapped in the same way that the xenstore
>> backend does:
>>
>> 1462    /*
>>
>> 1463     * We don't actually access the guest's page through the grant, because
>> 1464     * this isn't real Xen, and we can just use the page we gave it in the
>> 1465     * first place. Map the grant anyway, mostly for cosmetic purposes so
>> 1466     * it *looks* like it's in use in the guest-visible grant table.
>> 1467     */
>> 1468    s->gt = qemu_xen_gnttab_open();
>> 1469    uint32_t xs_gntref = GNTTAB_RESERVED_XENSTORE;
>> 1470    s->granted_xs = qemu_xen_gnttab_map_refs(s->gt, 1, xen_domid, &xs_gntref,
>> 1471                                             PROT_READ | PROT_WRITE);
> 
> It already *is*. But as with xen_xenstore.c, nothing ever *uses* the
> s->granted_xs pointer. It's just cosmetic to make the grant table look
> right.
> 
> But that doesn't help the *backend* code. The backend doesn't even know
> the grant ref#, because the convention we inherited from Xen is that
> the `ring-ref` in XenStore for the primary console is actually the MFN,
> to be mapped as foreignmem.
> 
> Of course, we *do* know the grant-ref for the primary console, as it's
> always GNTTAB_RESERVED_CONSOLE. So I suppose we could put a hack into
> the xen_console backend to map *that* in the case of primary console
> under emu? In fact that would probably do the right thing even under
> Xen if we could persuade Xen to make an ioemu primary console?
> 

That's exactly what I am getting at :-) I don't think we need care about 
the ring-ref in xenstore for the primary console.

   Paul

> 
> 
> 
> 
>>>
>>> I could kind of live with that... except that Xen has this ugly
>>> convention that the "ring-ref" frontend node for the primary console
>>> actually has the *MFN* not a grant ref. Which I don't understand since
>>> the toolstack *does* populate the grant table for it (just as it does
>>> for the xenstore page). But we'd have to add a special case exception
>>> to that special case, so that in the emu case it's an actual grant ref
>>> again. I think I prefer just having a stub of foreignmem, TBH.
>>>
>>
>> You're worried about the guest changing the page it uses for the primary
>> console and putting a new one in xenstore? I'd be amazed if that even
>> works on Xen unless the guest is careful to write it into
>> GNTTAB_RESERVED_CONSOLE.
> 
> Not worried about the guest changing it. I was mostly just concerned
> about the xen-console having to have another special case and magically
> "know" it. But I suppose I can live with it being hard-coded to
> GNTTAB_RESERVED_CONSOLE. I'll knock that up and see how it makes me
> feel.
> 
> I'm reworking some of that connect/disconnect code anyway, to have the
> backend tell the primary_console code directly what the backend port#
> is, so I can remove the soft-reset hacks in xen_evtchn.c entirely.



From xen-devel-bounces@lists.xenproject.org Wed Oct 25 11:36:48 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 11:36:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622841.970033 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvcBa-00020c-Q8; Wed, 25 Oct 2023 11:36:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622841.970033; Wed, 25 Oct 2023 11:36: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 1qvcBa-00020V-NV; Wed, 25 Oct 2023 11:36:30 +0000
Received: by outflank-mailman (input) for mailman id 622841;
 Wed, 25 Oct 2023 11:36: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=bQ/a=GH=citrix.com=prvs=655ba0516=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qvcBY-00020M-VV
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 11:36:29 +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 b96e7521-732a-11ee-9b0e-b553b5be7939;
 Wed, 25 Oct 2023 13:36:24 +0200 (CEST)
Received: from mail-mw2nam10lp2100.outbound.protection.outlook.com (HELO
 NAM10-MW2-obe.outbound.protection.outlook.com) ([104.47.55.100])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 25 Oct 2023 07:36:14 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by DM6PR03MB5163.namprd03.prod.outlook.com (2603:10b6:5:22b::11) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.16; Wed, 25 Oct
 2023 11:36:10 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::acf0:ce2b:1634:5aee]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::acf0:ce2b:1634:5aee%6]) with mapi id 15.20.6933.011; Wed, 25 Oct 2023
 11: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>
X-Inumbo-ID: b96e7521-732a-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1698233784;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=3FkM2wKXjZKjn4m7U1hb3SBilx05HDd5OrFf2UQw+vw=;
  b=X0KXCywNSBJtTiJBh+U03c02l7ID4opIis7Et1YzFnQxqUkDr5Me4d2T
   W3gTjnSDzAI4xR4H4LGkCYtYMwhfgPZAb4Lw+CiltEXYS1TsdasbuMShK
   RZRDo0XTv0/Ndtk80MyplkX3CLb80I2ZIJ0OUZK1ggrtBWJVL0+/fBiOG
   I=;
X-CSE-ConnectionGUID: JXLpHJByQJyYyKjCxQktzg==
X-CSE-MsgGUID: qP4yXWF+RmSXvSQ+4YcCQQ==
X-IronPort-RemoteIP: 104.47.55.100
X-IronPort-MID: 129379133
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:jeS1m6LmZS8cjf+XFE+R95QlxSXFcZb7ZxGr2PjKsXjdYENS02QGm
 mNODDvQa/6IZmuge910aY2y8k8O7ZeHx9ZkTAdlqX01Q3x08seUXt7xwmUcnc+xBpaaEB84t
 ZV2hv3odp1coqr0/0/1WlTZhSAhk/nOHvylULKs1hlZHWdMUD0mhQ9oh9k3i4tphcnRKw6Ws
 Jb5rta31GWNglaYCUpKrfrYwP9TlK6q4mhB5gZjPakjUGL2zBH5MrpOfcldEFOgKmVkNrbSb
 /rOyri/4lTY838FYj9yuu+mGqGiaue60Tmm0hK6aYD76vRxjnVaPpIAHOgdcS9qZwChxLid/
 jnvWauYEm/FNoWU8AgUvoIx/ytWZcWq85efSZSzXFD6I+QrvBIAzt03ZHzaM7H09c5VMUVW1
 d4yOQkvfyGSpOCd0Iu4Vvtj05FLwMnDZOvzu1lG5BSAVbMDfsqGRK/Ho9hFwD03m8ZCW+7EY
 NYUYiZuaxKGZABTPlAQC9Q1m+LAanvXKmUE7g7K4/dqpTGLlGSd05C0WDbRUsaNSshP2F6Ru
 0rN/njjAwFcP9uaodaA2iv217SQzHqgA+r+EpWhzqJ7sGK9hVYWMy0IbmL4/ciyoXeHDoc3x
 0s8v3BGQbIJ3E6hQ8T5Xha4iGWZpRNaUN1Ve8Uq5QfIxqfK7gKxAmkfUiUHeNEgrNUxRzEhy
 hmOhdyBLSNrmK2YTzSa7Lj8kN+pES0cLGtHYDBeSwIAuoHnuNtq1kqJSct/GqmoiNGzASv33
 z2BsCk5gfMUkNIP0KK4u1vAhlpAu6T0c+L83S2PNkrN0++zTNTNi1CAgbQD0ct9EQ==
IronPort-HdrOrdr: A9a23:nUrXIqwEGc43V0ViKWf9KrPw5b1zdoMgy1knxilNoH1uA66lfq
 WV98jzuiWYtN98Yh0dcKm7Sde9qBDnhP1ICOsqXItKBzOW3VdARbsKheHfKlvbdBEWndQ86U
 4PScZD4dfLfD9HZeGT2njAYq5Qu6j8zImYwcT7x3dpQRoCUdAd0+4AMHfnLqWpLDM2Y6bQLP
 Knl7V6TpGbCAUqh4CAdx04Y9Q=
X-Talos-CUID: 9a23:UuTsdGy0xfyCNd7nTFsdBgU2KuQ9Ul/33U7yMn6pKmRCWISWVU2frfY=
X-Talos-MUID: =?us-ascii?q?9a23=3ArAgZAgxcv87Ml120ttlGLiIJ4TeaqL2WVFE9rrt?=
 =?us-ascii?q?Fgcy/BTJLAnTBvT+ce7Zyfw=3D=3D?=
X-IronPort-AV: E=Sophos;i="6.03,250,1694750400"; 
   d="scan'208";a="129379133"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=QQrigH9L2jJjStuXy7Zb9AI/fdkqqAgm3xq1ibSdotv9033q/PbvFSlYHzwo73G9PeSWwjVstSLMSGPJI/oci5VGrZsULFxKBgeCrz+0XCbijfiyBlx9KrNFjTLjL1mbXAiwwPVxPolG084FfEQFockp2S0znjnnyKqDFsV9CghyBe2PuiHJKh/nC+MgaXBq8rvuX+Q9tI66QM65OU23nnbAAFXNe1U87CmXs5kKcS25MlEOfaFKlSgE0O1bgbf5A2oK/J4kA6jjdQNPGD8JZZGcKgSJVMqiRy45gXUA2CJen2eofg7rtBLHPcEaKPsC7RRHAf8ibn4ZpnEK2rpOsg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=KD12ehCbqJFJVjDrOF7nv9dUFAjjtzDlwKCwPl9jfvM=;
 b=YCx9x8I2AUVMY2kZFQr4DR/JSfBUn79vSA5Lcvu2bNgWZal9PGHcxKyzF2B+PlO1EpqSZazXEafQMi6p9qnyHYnkSCpc7hO7sLmaA6je1J3AR8ygO2AlJq/H8qDQ4ZzYmZUjkx/peQmVBBsA/tfHHsUvRlL2bQEykjAIDBPu7uMqCvZmHh4rPvqTVb/JWsTU9Hhr1xL+DaNV6p6VJO9oI1JOUGTJx/opbwLhNKZ2GkVSIbgFFVG6Yxk22fIhVp15WgembzQNHR3lj8fCE2tQgvV+zAVJGdlf7vxTNRLDYtnSVVY15Ozoq5M9c+4oNIuqU4m4lju5XgGi3YtI7vfOYw==
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=KD12ehCbqJFJVjDrOF7nv9dUFAjjtzDlwKCwPl9jfvM=;
 b=p1/1L8SpUBH4HhDwnQVTb1YicYEvjnBZfjseUSwQILfG/1D86kaJytbPwYZX8L3hWKOl8f8u0pjx7tKE0mMYE0/f/SGGA1xGWTV+sFEAOIA9CTDTq/8r5ghU2COHKVhjaXO1vQ1rBT8V4gV0tnNhMpj85LiBkUp2meY2eCtAo7I=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Wed, 25 Oct 2023 13:36:05 +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>, Wei Liu <wl@xen.org>
Subject: Re: [PATCH] x86/vRTC: minor adjustment to reads from index port
Message-ID: <ZTj9pbcqezLLQvjd@macbook>
References: <39903e79-af15-9017-e470-65124bd60847@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <39903e79-af15-9017-e470-65124bd60847@suse.com>
X-ClientProxiedBy: MR1P264CA0203.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:501:57::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_|DM6PR03MB5163:EE_
X-MS-Office365-Filtering-Correlation-Id: fe845315-4d37-4256-1cad-08dbd54e95ef
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:
	0tKyNJMutbg0FaBxrxX8wzXOmTTkG2cRFN8AaCB1R599LWaHmLiWAb61yoClkRQvZtqejgJ2nZ/joJ7x4uNzFRSSBXlNEeG8YPujcLvRBuK3N06vwuLYXxVcCjYhLfhxrKc8gWEsqQ2TsDRZngbLaaWR536x5Skmp1F8rkh6p3HMvkKym8+vmvNWPYv03/jfdIGjNmp9qwNheDIoBC5jO4o6jSB7KwFWAfaVwiZdyOkN3VvwCwqP2IH1AQ0+YzIXtEqJHsIrjr8aTq3IXmyRsUoCq1GV4ERu8FgTD9TsmPYDOB48H/8Aopb+84qVtAnN4oLrvjlKV3/4sft8p2WoC9EiBILyF8HPJ5Sg32Ei1XF/T/P7DA6EQ5aNd1QrGw+ORt6mOIavBWUFMSeLafDVEYNq6+jT5NqL7ty6Ozb7c/4nkaOe3MiJ5IBPTW79v5+MIjZmWr6/B8YgLQ4mzO+NMSNBO2TIrE2psczBFfyzxcvOEmJxsVQU8ft6C9wKIoUwGYAA4fP4rXF6s7TKdKDCmD/k4g6sk2bKY2WWiuQRWr3S7kZ6E24dsqQfIwhHpKsr
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)(346002)(366004)(376002)(39860400002)(230922051799003)(186009)(64100799003)(451199024)(1800799009)(2906002)(33716001)(6486002)(85182001)(82960400001)(41300700001)(8936002)(4326008)(8676002)(83380400001)(26005)(4744005)(5660300002)(66556008)(38100700002)(66946007)(66476007)(6916009)(54906003)(316002)(6512007)(478600001)(6506007)(9686003)(6666004)(86362001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?ODUvQklPU3N0amw2Ym9CcngwT1ZGMkFndXFiWVBmV3QxV2VwZkJidkhVSU8x?=
 =?utf-8?B?Mi8rdUtDZnd2dlJNbEpKdGZ5cWI2WTBaWnRQRndYWkJtTk54NU84UUtHczJW?=
 =?utf-8?B?SkQvbS8vaWk2UGZmV3VzbVFEbmhKUFhOQ3lhV0Q4Q2Q5UW1adkV2MVc2UU12?=
 =?utf-8?B?Y3hYTTNDeWZDcmFUYzVMU2QwbWZaZTc2UlBuRFNSMlFpcEIxVHdqUEVKcGV1?=
 =?utf-8?B?TFRWVDEvdHNIaG9jSklRck5ZaUlSaFNNSE9ncmN1dG5ObU44dURSbHM1ZEtD?=
 =?utf-8?B?SHlVSTJIbnZkODM0V2d0ZGhva3h5bkUza09vazc3SzhqOXY0d2x2c2lGU0ZV?=
 =?utf-8?B?MWZGWWFlZjR2ZnY0Um1rL21WMHFRRjZmZW5EakRzcDFaeXM0UFBHNGxZeUJP?=
 =?utf-8?B?UTcyazF0UlZzaTExNjRGODh1aGlFc1FBNVkyRjdxeWs0U0p1d0FIZ0NZUTFL?=
 =?utf-8?B?aTFnRUxTVDFzWndJNFlySXdqQ3JtNEp0YjlnaVVHY3g5OVA4aDNsdTZ3ejFp?=
 =?utf-8?B?TkkwNkpleGsxRXVtLzloa0NWaUxxR2JkS1RJanBtcGV5dk43Y1lGak5Zcmhh?=
 =?utf-8?B?eGpzL2Jjc0NxV25LZWJKMzl4clgrdDdmQ1hvWjVJTEp0TEd0R2k5Z0luZjEx?=
 =?utf-8?B?emVoS0xrRXJFdC80eXUrUEUyL1FnRElGUTNHenJEY3ZBMXViTXFxN1EyaDNl?=
 =?utf-8?B?MWJ0ODZhRVkyKzhLemFXeThTSWVCM1ZNNjNPeVgyeHdrMUY5VDBEMEVnak9P?=
 =?utf-8?B?bDEwbmxEU2VPZFUwZ1U1SFdoa3FuQk1JUnBycWI2NkVhZk1tR0xEdCtBRVA2?=
 =?utf-8?B?K2R4cUU5N0J2N0oyMHlxcmJCaFlMc1FJc0E1QmVaVG01dmJHL093QnNtZ2gv?=
 =?utf-8?B?VmNuL3JMVFNYcjg0bUMvWHg5U2hVZnA4NldVcHF3VlgzdjZCZTAwWFAzSnpn?=
 =?utf-8?B?REVGMndsUmhWY2VjMkdGSjc2cUlKcE5Pa1VrWlphNnhibmxWcEVVOVZWODBp?=
 =?utf-8?B?elJhcFBjMkZ6S05oT2p5ci8xTnZzNjZHdjk5am9sQVZDZWZzdk8zNE1udHRl?=
 =?utf-8?B?YXdZN0d0dnpIbVR3SFc0ekFYbUV2Y1FkYWovb0pnTXErd1J1L2lja0FWNUM5?=
 =?utf-8?B?N2RtTUQwWjNra2ZjcXIwUkVpUTQyNlo5WHhKVUV0UmhKSHlUZjdxaytPUjB4?=
 =?utf-8?B?cUcxRk04b1RKbGxYZkdneGZKUVZ6aTFQRjQ2b1FkT3RlZVNQbTU5Q2tQY2Ra?=
 =?utf-8?B?NHVUTFo4bzF1K1p5L3k3VjB2YlpiSGZDNnd0WTcyTUpSdVNheHdIWmV2N3Jv?=
 =?utf-8?B?OGN1VHUvUGwydWsvVjRYaUJEZFlHaWgyZ04xWHk3L2lUV2lrWFZFVDhQVm9q?=
 =?utf-8?B?Uy9mL1VZZWRiVUJsUHFRdG8yeHJIdUtpTmlucDMzV2lJRHRjUVVqVC92a1Jv?=
 =?utf-8?B?V1FjcXVid2dsNitmb0hhZndXUlQyYnRVSVdrTjFPWkRONmxyQ3ZNZW1oT2hG?=
 =?utf-8?B?b29tR0tlMGRkdGh0SzF0YnRMcHA3L205L1VheEhXK2lJY0Y5S2ZDWUlReS9T?=
 =?utf-8?B?NzE0L2gxVEp4WmNXVEY0VFpJZlJ4dnNLTVhxY2NvTks2UzFiU0cxR0dzWnZj?=
 =?utf-8?B?d1M0dnJoTjZTcHQxYXpyTmIvaHZ4SlFZTFM5ZENkYWllNGdldy9RVXVzU3E1?=
 =?utf-8?B?YkdjT0RlcENaUzJxY1VPTmx3MkxJcjdaZGEyRWVmWjFZcU92NkdEQlZ2QUVn?=
 =?utf-8?B?N0RLWjJ4Rmc0cEFqcmRtVjFGWVhjdVcvbk5kMmhJYkQ3SmwzcmlGcE1DeThO?=
 =?utf-8?B?KytkbHBIYlZBdWVxZnN6eTA0Qnl4WlRNbjZ0N2Z2ZjJ2Z255bWdZNW13WEdD?=
 =?utf-8?B?N3ZoeS9LQzNtYmJGQy9Weis3OW5VNzJwb2IxRFVFTnYwekEwZVVEdUFsQUhN?=
 =?utf-8?B?K1BmMDI0YXA5OUdjYjlpYTAvdEpGb1VDY3lESGZ6eHFPZ3A0QmNvVTFqUTl5?=
 =?utf-8?B?eDhpaXhWNFRvWWZtb3JZY2Z2YlNIdm5kZWN1b2dJSXhSaWhibm8zWTFFUlNj?=
 =?utf-8?B?czdlV1NwUE5ZNGlMOVh5V0xiTURoVTFUMlEyU1FETllmRkY1ZlUwZ00zNGM1?=
 =?utf-8?B?cVJtMmpoOXo3YTFLYm5PSFl3bGJlSmRlWVhjSzVHd0hpU0NHRkJSZEE1Nklp?=
 =?utf-8?B?OGc9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	ETBaJqBZk8yhPT5jOafnQoyM4GE2jtEJjR+wH5qm+g18gQ5Tz0R0zOvxqqKFGgzUNdKe7CfGCVy59C3Vucnm7AviC/FGhLWNuJu1zdjZT7tbs6zo0BLUrQI8/YgH60htrqBQB8RKCAq5N4sESdl5jT/ZCpmuBxZYEKZJKRyVNka+McSFr+AZmYP3c9lH1HQ2NeOc1BSj0gpNP9dsQAUawfwQ21XkeEmwSAP1MbJp2EQyLbvN4vAPPgJl7RMssjInjRGGHDe4OGnOHQUeTRNYetci/bPwpn+ZVQUMFabUh8bGkft6rLHu7jEuxyeWNXyaf/0B9lXt/I94kXz1DD6AGhnH+OHgAY/Sd9q6jA1Hwy8GUKR5cbPT6j54lr6Te1fIIgptJObdXOa/prV7PnNbUlKkpdtRe0mXvVi9QP0+6+ZvXYo6tqn3J8WbG+wrFr3dGxnrRRKhcYr9Jc5ovrrHyR4hFYylGZCgAwYpd1EehZMHxUn0FWYoGpEo6OY49Hzl/xgPv6mwSFEhQyghpPQo/02BGi78jJ03xjfaSgc71I7Gtlt9KUuQ5KhjaqIay3fK3bK5eFvw8qaAAKYNg+qNc5QTv6Js/sV5dxE4Y2V0F795A80mOQPx+r2lSIEr1SH6/I2uBbWSVs6TpdV6+y/V6BpX+iuqohMujOpyP8r5IKrKANoaNNfbWwMTqDGts6TVY5PSnKT5lxJu0IXbYYJJdiCgd8O3hfkejkx7AMNvREwJGETfmjCy0XVQmunV6nix2bElm/6iSvDUocWpMhutEptTAL5Ry1sv68wheO8pc2OfX6u9SanMVlO7X5+ukjYzcZf2G9VarOn2WQYQIuew0g==
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: fe845315-4d37-4256-1cad-08dbd54e95ef
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Oct 2023 11:36:10.3991
 (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: tv2EDZ+9cRLymvvQTdKCFyeyjhpWLv+/XHk+8vM3DXhU1rWEV653HqTKQpKAhb+BLl5qnDfpKjFArK0PEEWO1w==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB5163

On Thu, May 11, 2023 at 01:51:06PM +0200, Jan Beulich wrote:
> Whether to handle this shouldn't depend on the present value of the
> index register. Since the handling is done outside of the lock anyway,
> pull it out into the sole caller and drop the no longer needed function
> parameter.
> 
> 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 Wed Oct 25 11:51:20 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 11:51:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622846.970044 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvcPr-0005Xj-28; Wed, 25 Oct 2023 11:51:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622846.970044; Wed, 25 Oct 2023 11:51: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 1qvcPq-0005Xc-Vs; Wed, 25 Oct 2023 11:51:14 +0000
Received: by outflank-mailman (input) for mailman id 622846;
 Wed, 25 Oct 2023 11:51: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=e1rq=GH=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qvcPq-0005XW-4O
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 11:51:14 +0000
Received: from EUR02-AM0-obe.outbound.protection.outlook.com
 (mail-am0eur02on20631.outbound.protection.outlook.com
 [2a01:111:f400:fe13::631])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id cb05ffa0-732c-11ee-9b0e-b553b5be7939;
 Wed, 25 Oct 2023 13:51:11 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM7PR04MB6888.eurprd04.prod.outlook.com (2603:10a6:20b:107::7)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.19; Wed, 25 Oct
 2023 11:51:07 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6933.011; Wed, 25 Oct 2023
 11: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>
X-Inumbo-ID: cb05ffa0-732c-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=CotFTkRmF92uCXQvhvMuK1lXuvNnnRnTKWgmVuvHZuu5/Cx1En84VkaC69VivJjd3nueYXRvfZB5GzdLhPT8Snrddh1davTTQdAhDElusfcSi36GVgnR1ZypBzy4jXtX+QVfyLXiLSnJXFTmNzwCOy45x6jGOFSeBE8n32yYD7J7N5HuB6h7tVv+CIxhrPrPj8eGbnkH2r6XsW8n2xv8vlb2yuXBSvVxr1jv272tM+FScSjzHdIFEH1LDK1D2D3UVagZUQapJaL4nme7JEjImVw+DKL+UjECKOJzxtl/0ZWj4PiEN6t+usXKNgKa3RsH/v1vYXwn0XSv/Ckt4f59ng==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=82Lhg9odyrMlZFTzxre2T8Uvu12G9p9xI52b9P7f340=;
 b=CzLQZkBCqizOlvAgWuCoqrC5DbkXhq/rLdEztKRTV7ArhwJwwKBjVx9sX3as1S87iiblGV3IXL2Jq5jjUc8m6UXujI4wkO/GARX+Co15K4G0Lgi29I2owBZEcFrgj9qvfVlBVSCQrUWY/ms5D6nSNPL9C4cvTOKXdSGd+x1iLDsTqcNRhAlzhhMtq9uZAvLp1iYZyM+bgyr2WizNsFme3ZBpSxk/N1NFWH12sLgV77Jpb+9cOfB3qvHJeeMaSjAa7oYvgqyxYmcnjTZJWKEsR3a/NACfn3ROtNjIcKZ8bo21jRFq5ekNjr68MBUKPSA9y/8UXBAOZVOHxuT85TegvA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=82Lhg9odyrMlZFTzxre2T8Uvu12G9p9xI52b9P7f340=;
 b=XzjSni2jeAXbLuC7Z5ltpIYi40HG2b5fTx533Umy5WTv4P92NvkAGhsQ6cFWJLeWha8XjnvbNYrwaRGivML6DpI+fC/UtRIs7fqhbHX/n1jK/5Y7ZFwjY4J9PatRR3rLFylHOxJUqd5J/RZzrXVACmKA38x2EnGA/Fqz4+e19b9/DgLG8F7q5kyTEEQA4HzGEPD/M0wlQntMknEFcJBaU7huVw/Hadt7d2xkW10AD2QEEJkB9eB/JvHZej7+BeTV35M2hzxZ6+CofMfcmF9ymCn/QXtGTSz/r5mkaCBzGRuoaSohFoVV6ohTTJ2k1Fq3rWDb/gMkYrPaShM4OY9zwA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <3de3481d-5884-02f8-6f32-faa53d16ab24@suse.com>
Date: Wed, 25 Oct 2023 13:51: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] x86/vPIC: check values loaded from state save record
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>, Wei Liu <wl@xen.org>
References: <060ae425-2daf-9ce4-d291-215d483d592d@suse.com>
 <ZTjp_LYGwvKKumYg@macbook>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <ZTjp_LYGwvKKumYg@macbook>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR3P281CA0105.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:a1::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_|AM7PR04MB6888:EE_
X-MS-Office365-Filtering-Correlation-Id: 56f601a0-fc55-489b-11dd-08dbd550ac54
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	0zJVnHxy6pVQ4O8yiyvsdi2QxYuEBZePrao0HTvl2WcJ1RQQJu/eIALQq9r4fbIMk8El1OnWVy8PQrQGdLZB4tEXjcNMDCVvEsKxK+B2LsHA0fkERjKXWwxqEk/dhAuBx8kOiUfjjkOcLiHJ/LDPAY53Qnkqf0gDO3xTm2TE9Rvv3jSaeAe30bHuX/IESqs8oVEXS5om4501AXUOiRGYkbQo8etLa48y8Ae0/2lBvvX7beaDhXtAvlhvIXMDKpAGKQUpWi/HpI29Sn+Wwj50aJzNzmJUAA6yuacF2C3RCkTEZy37W1nTgMP8Cx0v7/bSZEXzKDrwR7YwQNkLhmr8UGSXAoWTFGEEiDLyDrTo4blbntubi0hKmE4mFnSqQHlmEW56hrMeZb4U2cBcboylT5Xs52DJ6KJv12LaHK5Gp+lGZNmLce1MRqS2sYXDmHlmTQxT/kVezssHT648asIXwC1hbaFjBpwrvGV+RKUstTd8TXfXqHzAPQLgOvkc1NEdRfFYyVOhT7LkviaEmDAm7L1fC7/63WvKiLpFmgnVxOGiBZ/dK106C9GmxWqExW6asrbwum8ulnx0PotFg362pRYVhBRLvS/pD6gpT6SRLWw6lNHaxFq3mQhdpNWmUrGsjJDTdzr7BDLEPRlW3L+s0g==
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)(39860400002)(366004)(230922051799003)(1800799009)(451199024)(64100799003)(186009)(53546011)(6506007)(26005)(38100700002)(86362001)(31696002)(36756003)(83380400001)(6512007)(2616005)(4326008)(8676002)(5660300002)(66556008)(66946007)(66476007)(54906003)(6916009)(316002)(8936002)(41300700001)(6486002)(31686004)(478600001)(2906002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?OTB4VzFTN0tNbGtUWTdJRkZhZFdRbGc2NnpBaHVrNkJZdVlFcVFaZEFXSWRD?=
 =?utf-8?B?blVoeGN6YUQ1K0M5SFhlbTUvMi80ZmRUN1FXZ1ZxSU5INzlGcEZKUWg0VmxW?=
 =?utf-8?B?SUJ1ZlZxR0NjSXNSTUNTM0V3UFRrTVZmQXhwaVRLME5RUlJWVjFmNitZeDdS?=
 =?utf-8?B?YlYzWFhsbmtISWNyRUZrUm1JOGtRWjNrU2gvT1dUNEtWOWw4eXFqTzJzaUR0?=
 =?utf-8?B?ZXM4TVpGZlg4REIzOUhmOGpkcG1YV2crc0wzdGprS1FZdGJycm13L2ZjazBU?=
 =?utf-8?B?K05HQy9sVmIvc0JDSnkvdW4zUkdVcTJycW9Jci9ORmpHcUhZenMvWGxaTG1u?=
 =?utf-8?B?b0ZjNlg0R0tFZ0ZrbmFRWS8zUWhJMjNQb0dUdmFpOHQwNFZ1VjBNOUQ2SFJQ?=
 =?utf-8?B?RDBXa0FPRFdZVEt6WUUyOU5ITmEyMUxidS9iZ25UaWJ2dVAzWXdvcmo5YnlW?=
 =?utf-8?B?OGpKWXFpWHdDZjV5dEhIYkk3TkhqdndVc1A2NFd5MGNESG95NGg4amwzVlY4?=
 =?utf-8?B?UXdtWS9tN3ljZ2RSRnA5OStxWmdVMGFPNFV6bFNIYnd6REc0MXY4QTVaTXRw?=
 =?utf-8?B?WkpGeXFPTDB6QWxiVWMrT0FrR2NIMGYwd3FTcVExVmw1SjM1VFZ6eFJTbUtP?=
 =?utf-8?B?YmJGaGNWQ0hXeEpxek83OWFCeW41Uk5wSExKTDRyK3g5TlE3dnpTNDhqeW11?=
 =?utf-8?B?ZmhHV2JyemlSQ203ZEJlbzVnMnFFWmRXNG9kVk1mWVUzV0RybjlUaXErcUx2?=
 =?utf-8?B?aVU0Ujluc1lEbUVIK29tWkFPcGVFWEgyNTlCajJSdFVrbmxWWlJBOUZYT1hv?=
 =?utf-8?B?RTRnanpSbWtUV1BMSFo2Vkg2RkhXOG1BOVF1U253ZHVzQVkvZGJXem1wOFFa?=
 =?utf-8?B?TkdRUVc3Y3lwZWhwMmduajhibExPV1grMFI2bEE4M1cyVlJXMUcvc096dkY0?=
 =?utf-8?B?V09SaDR1U1R2ZzJ4ZzNBQ25GbFQ0dUtaRlZVb2FiSGowN0Y4ZWNMd1QrVmRi?=
 =?utf-8?B?UUFPR3FoK090cFZOMndXMXNhUzVIT2Z5MmxFQW04T3RmT1VVU05mOWxBcXFw?=
 =?utf-8?B?d3J3Z0RyWnljU21JRlpZNnBqVFZWRlBwNE5hSWltL01SOUtsRHlLRFgwMUVq?=
 =?utf-8?B?djRVa3d1RUZ1YS9waHFNQU8xNGVHREZwZ1FTZDlKRFJMR1hvUFA4WGlPczBR?=
 =?utf-8?B?V0hKL2t1dmJ5VmJKb0RPVFJLS0pOb3NMZjlZS1Z3UURuTE9nL1RGaDhtYU9V?=
 =?utf-8?B?R0kyVzF3WlhwSEl1dS9mc1U4WkxQaG1wZFRtR0Y1bmFzNUVFWURuQXJuVExk?=
 =?utf-8?B?VlFCeUpwQ1FpUXpaUEJEN0hKZDZCQlByZGkxbWdDT2gzb3Y2V1RobXpCOG5D?=
 =?utf-8?B?SFZJbVhXYmdFSUtDTWRlWVh3SENuR1RHVDhFbm5nbCs4eHBYQU5MdFVVYXpC?=
 =?utf-8?B?V2xlZDdDSlRoaVJTa0pjVTRuQitFWHdZd29EMVVnTWh6dHlJWkhRU2FtVlVR?=
 =?utf-8?B?ZTdmTW1DYXhRZ09SU2ZYZXJJVCtmN1p5MVlCNGR2RmhzNjVienBYRDJZM1Ro?=
 =?utf-8?B?MEZyVERNUDNIWWZRRmR1NjhuT0NrNzg2amt3ekEwaGVma00wRjZSYkYzTEx4?=
 =?utf-8?B?MTFFekVCdk1MZjdCWko4NzRrd0VXcG0vUVNHeFN2dGF1b21DQVgvTytVUnY3?=
 =?utf-8?B?UFV0aE1ncHJVK2FaQktwVHk5UERReFFUeUIxSVU4K0d4QVp6ZmlXa29VUVhM?=
 =?utf-8?B?eXBseTFLNmg0bDlIWFRZamc1aWZRZjFMZWtBVjlpa2RaTjJrY3RTQ2h3cGVE?=
 =?utf-8?B?VG92d1ArNTB3bTFCSTlKTnRtVDBVQmpITWl0SXhTZ2dDNUhhakJHSVZhdnhj?=
 =?utf-8?B?eXB1Zy96T0UrVkVBQnBsWnY0TnpsaHlJeFNiL2NOUDFlazRNMk1Ib0NIUk53?=
 =?utf-8?B?R2lDblRCdWNhYW9zM1I2amtwZjQ5M2VXMTNDOEJHZHEvM1Q3RC9DMlBtS1Zk?=
 =?utf-8?B?WnE2OXoxMnJ2WE9hWWJ6dXNqRCs3WDY2K0xWUk5KRUljbWVWTFNXdHdMLzZK?=
 =?utf-8?B?eVlaY3dDQ2RHRjRZQllqVS8yZzZQUHd1eUxRY2pVbm1BWGFWUUNjS2tSTlJM?=
 =?utf-8?Q?kNz9hKv/F7v1UWNEHYZU+GWkY?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 56f601a0-fc55-489b-11dd-08dbd550ac54
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Oct 2023 11:51:06.9789
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: urTU/F3nTJ/9FXNEfHNtcOy/QWqfMRDteL2Ss3t/bhm4mqbo9eljy9zfrQtvx9Bhc7HUcs1FBaJft8XlfH7W9w==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM7PR04MB6888

On 25.10.2023 12:12, Roger Pau Monné wrote:
> On Thu, May 11, 2023 at 01:50:33PM +0200, Jan Beulich wrote:
>> Loading is_master from the state save record can lead to out-of-bounds
>> accesses via at least the two container_of() uses by vpic_domain() and
>> __vpic_lock(). Calculate the field from the supplied instance number
>> instead. Adjust the public header comment accordingly.
>>
>> For ELCR follow what vpic_intercept_elcr_io()'s write path and
>> vpic_reset() do.
>>
>> Convert ->int_output (which for whatever reason isn't a 1-bit bitfield)
>> to boolean, also taking ->init_state into account.
>>
>> While there also correct vpic_domain() itself, to use its parameter in
>> both places.
>>
>> Signed-off-by: Jan Beulich <jbeulich@suse.com>
>> ---
>> Of course an alternative would be to simply reject state save records
>> with bogus values.
> 
> Likewise on the vPIC one, I feel it might be better to just reject
> such bogus entries, instead of attempting to amend them.

Perhaps we should discuss which route to take on the next x86 meeting?
Then also Andrew would have a chance to voice concerns; not sure if
he's following the thread.

> This one however just unconditionally reset some values, but might be
> simpler to just test if is_master == !inst and if it's master than bit
> 2 in s->elcr is set?

vpic_elcr_mask() also wants applying (or a respective check carrying
out). Plus int_output can't be left alone, I thunk.

> Also if we are serious about doing some sanity checks in the loaded
> records, we could introduce a checker function for the load machinery.

If we were to check rather than override, then yes, perhaps running
through all check functions first would be desirable.

Jan


From xen-devel-bounces@lists.xenproject.org Wed Oct 25 12:36:58 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 12:36:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622854.970054 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvd7m-0005AY-BR; Wed, 25 Oct 2023 12:36:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622854.970054; Wed, 25 Oct 2023 12: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 1qvd7m-0005AR-7K; Wed, 25 Oct 2023 12:36:38 +0000
Received: by outflank-mailman (input) for mailman id 622854;
 Wed, 25 Oct 2023 12: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=bQ/a=GH=citrix.com=prvs=655ba0516=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qvd7k-0005AL-J4
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 12:36:37 +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 20b29c31-7333-11ee-98d5-6d05b1d4d9a1;
 Wed, 25 Oct 2023 14:36:35 +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;
 25 Oct 2023 08:36:31 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by DM6PR03MB5035.namprd03.prod.outlook.com (2603:10b6:5:1e5::23) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.16; Wed, 25 Oct
 2023 12:36:29 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::acf0:ce2b:1634:5aee]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::acf0:ce2b:1634:5aee%6]) with mapi id 15.20.6933.011; Wed, 25 Oct 2023
 12:36: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: 20b29c31-7333-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1698237394;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=lGdwjiyPXWqSEE9v0to/sLTYknY9016zhOfVj03TKRk=;
  b=hSNQWLN9j0BtD13+eViGJt0xqmWM1uTM6SyPpDHT9L91o6eQNsZanthr
   t9wE0CX0CJLRiEjOIYOiWJEnxRzz3Z8/Jsb+gVgmuSJFnm8FHOv39k51+
   ycGH+61lceHThdjiLQc/eOx81nJtMMDABn3B1Nr/vlJiPZ995pKcJiGlh
   U=;
X-CSE-ConnectionGUID: Z998/qAkTiC49sq9sq4BkA==
X-CSE-MsgGUID: YRKZ7Y2bQWyFcwLL/8nv+g==
X-IronPort-RemoteIP: 104.47.58.100
X-IronPort-MID: 126467570
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:oroyi64Vr7lEif/m0Hzm7gxRtB7GchMFZxGqfqrLsTDasY5as4F+v
 mUeUDuEO66NMTf2ct5wb4S2oB4FsJ7QztZhHFZsqHoxHi5G8cbLO4+Ufxz6V8+wwm8vb2o8t
 plDNYOQRCwQZiWBzvt4GuG59RGQ7YnRG/ykTraCY3gtLeNdYH9JoQp5nOIkiZJfj9G8Agec0
 fv/uMSaM1K+s9JOGjt8B5mr9lU355wehBtC5gZlPKgR4QeH/5UoJMl3yZ+ZfiOQrrZ8RoZWd
 86bpJml82XQ+QsaC9/Nut4XpWVTH9Y+lSDX4pZnc/DKbipq/0Te4Y5iXBYoUm9Fii3hojxE4
 I4lWapc6+seFvakdOw1C3G0GszlVEFM0OevzXOX6aR/w6BaGpdFLjoH4EweZOUlFuhL7W5mx
 61JeHcURxO/hsnqkamiG/J12u4gBZy+VG8fkikIITDxK98DGMiGb4CUoNhS0XE3m9xEGuvYa
 4wBcz1zYR/cYhpJfFAKFJY5m+TujX76G9FagAvN+exrvC6OnEooiOCF3Nn9I7RmQe1PmUmVv
 CTe9nnRCRAGLt2PjzGC9xpAg8eWx32nBt1PS+XQGvhCsWew9DMiUhcvakqVquadrgnuXcwcJ
 BlBksYphe1onKCxdfH/VRClpH+PvjYHRsFdVeY97Wml2qfSpgqUGGUAZjpAc8A98t87QyQw0
 V2ElM+vAiZg2JWKTVqN+7HSqim9URX5NkcHbC4ACAcAvd/qpdhrigqVF447VqmoktfyBDf8h
 SiQqzQzjKkSishN0Lin+VfAgHSnoZ2hohMJ2zg7l1mNtmtRDLNJraTygbQHxZ6s9Lqkc2Q=
IronPort-HdrOrdr: A9a23:wtBocKPDQuvtkcBcT3T155DYdb4zR+YMi2TDiHoadfUFSKelfp
 6V9MjzjSWE7gr4WBkb+exoS5PwOE80lKQFqLX5WI3OYOCIghrNEGgP1+XfKl7bamXDH4xmpM
 BdmsFFYbGeMbEQt7eY3ODMKadE/DDxytHLuQ6x9RZQZDAvT5slwxZyCw6dHEEzbhJBH4AFGJ
 2V4dcCjya8eFwMB/7LTEUtbqzmnZnmhZjmaRkJC1oM8w+Vlw6l77b8DlyxwgoeaTVS2r0vmF
 K13jARp5/T/81T+CWsmVM73K4m2ecJ/+EzS/BkxPJlagkEwTzYHLiJE4fyxwzd5tvfo2rC2e
 O83isILoB97WjccXqypgao0w780Cw243un0lOAh2D/yPaJMA7SpPAx9L6xXyGpmXbIhusMpZ
 5jziacrd5aHBnAlCPy65zBUAxrjFO9pT4nnfQIh3JSXIMCYPsJxLZvin99AdMFBmb3+YonGO
 5hAIXV4+tXa0qTazTcsnN0yNKhU3wvFlONQ1QEuMaSzz9K9UoJuHcw1YgahDMN5Zg9Q55L66
 DNNblpjqhHSosMYad0FI46MLiKI32IRQiJPHOZIFzhGq1CMXrJp5n76K5w/u2weJATiJs0go
 nIV1lV8W4+EniedfFmHKc7giwlbF/NIwgFkPsunaSRkoeMO4bWDQ==
X-Talos-CUID: 9a23:VIa9o2wxbA5q1Wf7jNIcBgUmS5F1NWT0z0vRCBPpEn84U6TJY1y5rfY=
X-Talos-MUID: 9a23:LVKUowhDCdXWNn+YCu49UsMpBf1L0fufUko0roQosNagEWsgPSneg2Hi
X-IronPort-AV: E=Sophos;i="6.03,250,1694750400"; 
   d="scan'208";a="126467570"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=E85ikOTX4nDyPl56fTp9XHk4gCXJk3rolJMjJJgNUacKccrExRpxHX6jdTun/P+Lcb9BkrdCRaeJ0y0Kh5J2W/T7cS5Ap8jPL7qlwtjqMLEbXKjX4WuRwMlYmCGlFowVnw3rOUazQVgkmQpdgbiTzMJ/nfIjpjOYb1FBH2D6pIDfmTLDOJjn+xW0j7fQT4xsGmb2oW7ool2y775qf1vs3JyqL6icVVStmAGOT+bOBhx/OHTL/EH1TvPwWHlXo2ADJcvB+I0j9PwmJ4GIX+lSqYgPKtDWPmMFOEYfP9ns+TY1Zn5ozRN/gIyMaqC3v7O1k1AjQnUfS35KoBpfe0+J9w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=miIA3itVeu/9SOtcI+2d9tnxjdoJJBxINhKYhTtLQOA=;
 b=kg2ISQqJH3LFUmr50nzvzo2Ujsnopxm7fXlebQFinjSA9yzQZ7SlvSYow4Lj+jm9EXLMnGGkhc5QW3qcRdC0xolLtaY48VynQBU0qOCb6N6vDy2eei+ysFEBBJsPSucjtV78xEA2PrEgsMOFHwviM+tEd3OZHtaRLweU4IgMHItMBUZA5T8EH/OyEfg1NgiyyuVI+9hXmUkH/iNb0aslyxkfduCT/PjumYeCpz2hzvO9l5CjW4jv+NiAhyVHD4zy2D2xblpTUqFEJ2bDIQRQG/Cas1HsQeZ4CppIlbu0yQlNDY5meXW0lkgOyU7oGK+Zt1SE5zHLMA0c3FXkhpI2aA==
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=miIA3itVeu/9SOtcI+2d9tnxjdoJJBxINhKYhTtLQOA=;
 b=ua/BZ6ptx0a6Nj8dXRktAIyxpsVu6RA8VT52+BrhC9RZ6B6ZiiAzEgeMat2ols/iEJp2tywG5XclrccSCzFfJ5OBZ4KGNybzooScTjuD1A0rT9IxKSAa3ajgseshVX7aQWbxSj7VUm87iaHM4COoNrkJoO6slV1kYseVa0mANR4=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Wed, 25 Oct 2023 14:36:24 +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>, Wei Liu <wl@xen.org>
Subject: Re: [PATCH 1/7] x86: don't allow Dom0 access to port CF9
Message-ID: <ZTkLyGE5ulk1NSpf@macbook>
References: <95129c04-f37c-9e26-e65d-786a1db2f003@suse.com>
 <74c9e6a8-9094-4646-d06f-cfe0a427bb37@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <74c9e6a8-9094-4646-d06f-cfe0a427bb37@suse.com>
X-ClientProxiedBy: MR2P264CA0010.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:1::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_|DM6PR03MB5035:EE_
X-MS-Office365-Filtering-Correlation-Id: f2da869b-20b1-48e4-1faf-08dbd55702a2
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:
	ljHP6TyJx1lJEpLRBmqwpGHWcsX7b/RA+JJDZSqmDKhVUJ+5CYkMnauFv5DKvqY7/sYls3b2/njRdcX09LYPvf1Y6Pd1XbB8kPDAjUfg5wOtPQ0+6ML4tHE5Jak7aUkqohbwPoBnK7tVb2edNSc50+taj/8cFewj10qRaAurbyvaBbwowyzhfgGLtpEsDWAk07bYqETPZf3ldHNGIeTrS14aObmFgQdfmvZqD+aYdUEvCG2KzBzUIZrSYrLd7zyoFe8vtLAjKFrOPmrA4QBmyw8kqU82xcvX/RWknw80RRa+qOg0gKBMPHYnlxQZxKwzL+i0+oFj9iLWi0f+vF7Dx+fnDQEgkObBcBs3uFC2nPhJjpDWouObPO2i6Y05TrNfoIPilXNYQ32Q6lxF8uORvSB34/37j7pUA8VHfOha4/4Tfbs7utLP6pLNWw9M3vo7lIlMveezNE6P5je+MU9pTMcrAF/WKx3Q+B+J/tkny9xIaXWxbkj1+6YPBA8AEd+e01wVTcbJ2uG7A/UQTBstLWamgg6NfeN7pRG6NA3/GIx/qpIdL3bzbIDIgGs3c/v+
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)(346002)(136003)(39860400002)(376002)(230922051799003)(451199024)(1800799009)(186009)(64100799003)(26005)(4326008)(8676002)(2906002)(5660300002)(8936002)(66946007)(82960400001)(6916009)(316002)(41300700001)(66476007)(66556008)(38100700002)(6512007)(9686003)(33716001)(54906003)(6506007)(6666004)(86362001)(478600001)(85182001)(6486002)(4744005);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?ZmdiYzhSRHo0OXF4VVVEdEpuT2JWN0dKdDJuZ0MvdnRNQ0JQcXZweUIxeE1p?=
 =?utf-8?B?VCtsd0c3ejh1eXA1NTdOMjkwRkVDL0NiRmJIM0M2ZFFwd2RzejVYUTh6eW5L?=
 =?utf-8?B?OHIySVJXdkNYRVA3dXRxeFJWNlZTZzBPL3lpMjNDMk5tOGJYTGlEVjBqVGw0?=
 =?utf-8?B?TkhGKzcyZWhOeHltcTNXSnFsMU5DdGhnR2h2RWFRY3ZmNHl6aTk3ZTNwejNR?=
 =?utf-8?B?NEhrNEk0WWlKK216Vlp4ZDFrOFJsS0pPU2RyQzhVSUkwNGZVRDZpTW0yQXdH?=
 =?utf-8?B?UUVtbGY4ZERlbHN4TVZMUW5yV0NCVUEwUFQ3dDIrb0hXNHdveWllcTk5NmVC?=
 =?utf-8?B?cjk1bDh0NitJLzBocGMrOW83MmZlTUZHbTNERjEvYVFPL2luSFVyRXdYdjlD?=
 =?utf-8?B?M3hFWit3K3hvZDVTTUd1aWpzQVhZbnpoODduY0xrSUc2QWhrUjdpOHpQM1RU?=
 =?utf-8?B?czlLVER5Y05BeWRXSjA2ZUZXU3dzd3JGQlFzVmtUUFZXSktHZFVHejVlQXNv?=
 =?utf-8?B?VCtoS1hLTGlUcTNBdEppNmdydnZobEZOL2xMSW5Ka3lFSDM4MWU4b2wzN3U4?=
 =?utf-8?B?azFlTXlTYUp5QWNDZGp6d05HeGRJaW4yb2xRWW5qMDJlaXZwMlVaUzF2OSsz?=
 =?utf-8?B?azZWQVhiQmVQa3hjNmpnNVNSaUlJRHZ0UXFjdFhoZjBNbVRvYWllQm1IL0RH?=
 =?utf-8?B?RjRRVjRXSkYxVFRDSzl2TkIvL0Z0OTRWTDdaVmlGVm1tc0t6WWVFV1c1S29G?=
 =?utf-8?B?UEVMSGV6VGw5L00rWXl6VWxjWm1xelJ3ZzNJNnZPMUY1TUJNT3h1aGdOaG9F?=
 =?utf-8?B?WnNVYVZValRDMy9XQXBUd2FHazRpL2x1a0ZTYXFoYlNKM0RTaGFRU05jUzdv?=
 =?utf-8?B?TWcwWWZ4UEVtNzVXdlhWbGhZMThRRXpUUE9xbTI5bkhuNTNKSmtLYlg1REhF?=
 =?utf-8?B?dlFtYVhQSHAvNy9XaStwZmhZdGozSmFwNjVtczM2UWd0S2N5eGVpQ2UxNTUy?=
 =?utf-8?B?a2RQK3oySVUwbUhkVDYwVzh5NGNrWUR1cWNnTzRoRzZZMmVSeVllYWdxUmRa?=
 =?utf-8?B?Qm1EZnRIMWRRNUJQdHlyeEh6Ykt2NW5uRFFVa1luMFpBd256N1NsOE5IMFNS?=
 =?utf-8?B?QUpDenppRmkzeElia3BYTkVqV01jcnpici9Iay93WUxEdVQrWEw0RWZyYytF?=
 =?utf-8?B?bS9adWpVckF1SEN6Y0hVM0lkVUhFaGF6N0QxWmtVWWVudTkxUm9LdE5pT3JW?=
 =?utf-8?B?aHZCcU5KNG9FNU5ERkNFUFh2bEM2VklSWlp5eDc0TUNPNFcrYjhnb3Y4dlZ4?=
 =?utf-8?B?Y01HT0RWTTQxVU1QZXBzcUdlSnI1OC9ENlNtUVV0NXAzdXRUYkV5QUxjNmwy?=
 =?utf-8?B?bWJXSERhVWxmYm13cTZFdVRpcUlTdjBVbFhkcXFncC80UGFuYTBiRStKcEpw?=
 =?utf-8?B?cXNKeksvblZFcXF3ODJ1M2ZFc2svRy83a0tUQmg5TUZyZmR5WVRFK0ltRzhn?=
 =?utf-8?B?U1RHOCtkRVp2ZlJkODgyRGVnam1KeDcwTkFIRzQvU1dIcDdEMzY1Rk1nTjBR?=
 =?utf-8?B?M2RkNzVkd0E4cG81ZEJaUTNEcjhqUjBGeCt5TW9RV2VCRzJURWFBK1lkTlQ2?=
 =?utf-8?B?Rkl3SXMrQks3SVh1WktyVkR2SlMxUkhmWTRqMC9CQWJ0M0lwYStoWnBvR1Zo?=
 =?utf-8?B?Y1p0TVBob3M5YXp6c2hIc0M4Z0ZGUVpyc0hqNEpGa1BCN25WV0ZFOVN6dmZY?=
 =?utf-8?B?dWg2NW40MnUyWEE1UmRCQ0VUdjdCeDJaQStiOGZvalRySXhtTm1VVysyQXoz?=
 =?utf-8?B?cXBXYldFNGV5WHRoYTJWa1lhbC85NzJ2a2xwM0VFRXNHZUxQc0tmS0pWdCto?=
 =?utf-8?B?cis5a2ZSUGNqM2ZyK3hlWXdVdnh0Y3ErbjdiSWt1T2lKR0hjV09BVDZnc253?=
 =?utf-8?B?NHl3bkJMVVgrV2lNdTc5d25ocGZGQjNmS3h3aTYzNmlKMGd2SENmTGhPV0s3?=
 =?utf-8?B?ZXpncmE0cmNiRkJsc0FWaFdsOXVEV1lXM0RPRldaVnEyK2pHelJ1MWFSbDhL?=
 =?utf-8?B?bExXRnk0MEdLV1Vzcmw4SUh3SlVvbm5JbUNyS3pnbDBESFk2SW5VZTNJcUhH?=
 =?utf-8?B?RTV1RUIvd1BpZTJnbDRVQ0JhYThUOUFLN0pmY0xzQ3VaUDV4blk0ZGZ2T3Z3?=
 =?utf-8?B?Qnc9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	o/J0tQi+RpqOONpWZSRpxyDTjFHR852nXEQk1jOkmWR7SJqSW+FFRY3Oj+yo4wWSkjYg6aDsqjswFOCjr2xwhxTKdPPx3nAy5xLtL6P7jbzDKTy+Ww/Jde6dYdDNlTCz//10HHNg/YJLbExOafteIjXesPiQEscv/2vvpHKdrNqZ7hL/acF4N260gHXdgitURtXfXAcheAyYZZ3Jqr2a4OMDU0WIyZd/ONisnm+qekLsYBVp8fQQXk8Zw1sCLp647OB9rH7LeKxp3tvYvaivXkWDScC2Aly0YEDNURWlD1Byl2dtXm81h5a6wq8cE/Ox1x4wbg1SNV1u0qwg1IbNZ+a97KTE5ojWuX1TDtv6OfDsES7vSDuto5B1PVXqx/Pf2EjacJl5YQtc4Tcf9kwlaDpDOY4Nda0NED/fc2Rpen4z5r0RNmeoMTPraY+u6JVgMGHS320pzWPY8n7Grq7XZl+twPUH3H9KnS4EXsMwXr/U8RUtuoe0GvTNr3xecte/grYIbSWDCXPXFBblt35Lrm3ntL+M+StZ9AQf6mWSSCIDepoBxSqKZl1T6wKy69wK04aMpo9f1dvMU1RG9coI/atKw65vWjJai6VGybLPaXcSw6NjnuT4v7UaDTF5errQyfZVaI+/OXHLhCLWkZIUtB65o+B0DIE5my4WEl6vXWHFN/tN9T+BtNRjozngr64Ro1AeCsTpflKZX1gOVdqhNs+V4iZc7/NXx7Qj9K4l0/I+N4Ys76I505gkcsMvlG5jFnE1DkzF/CKR4fa2qkbSa9p3yUAKQYuQvkIi9wfr0ZIb+vvwYkUSRofUhax74VirSddgBRc5xJjcWxVj9SsDIQ==
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: f2da869b-20b1-48e4-1faf-08dbd55702a2
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Oct 2023 12:36:28.8037
 (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: O8Aelg1IV3y+Q+znGTIZCdQD960bHzRZOMbWoFLkWcpbGcT4KiVAF4bUkYujFa/V3QTG8EZkDvpC7cZifC1wcA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB5035

On Thu, May 11, 2023 at 02:05:11PM +0200, Jan Beulich wrote:
> This allows to initiate machine reset, which we don't want to permit
> Dom0 to invoke that way.
> 
> While there insert blank lines and convert the sibling PCI config space
> port numbers to upper case, matching style earlier in the function.
> 
> Signed-off-by: Jan Beulich <jbeulich@suse.com>

Acked-by: Roger Pau Monné <roger.pau@citrix.com>

Should we also do something about port 0x64?

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Wed Oct 25 12:50:06 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 12:50:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622859.970064 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvdKg-0007bq-Cq; Wed, 25 Oct 2023 12:49:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622859.970064; Wed, 25 Oct 2023 12:49: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 1qvdKg-0007bj-9u; Wed, 25 Oct 2023 12:49:58 +0000
Received: by outflank-mailman (input) for mailman id 622859;
 Wed, 25 Oct 2023 12:49: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=bQ/a=GH=citrix.com=prvs=655ba0516=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qvdKe-0007bZ-Hr
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 12:49:56 +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 fcf37129-7334-11ee-9b0e-b553b5be7939;
 Wed, 25 Oct 2023 14:49:52 +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;
 25 Oct 2023 08:49:49 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by MN2PR03MB4944.namprd03.prod.outlook.com (2603:10b6:208:1b2::16)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.14; Wed, 25 Oct
 2023 12:49:48 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::acf0:ce2b:1634:5aee]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::acf0:ce2b:1634:5aee%6]) with mapi id 15.20.6933.011; Wed, 25 Oct 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: fcf37129-7334-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1698238192;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=y5Abu/7SMZS61eoM4wvGG6suI6eDSaoUscTRau6O5+o=;
  b=F2/hdZNrXO18NFL3gfYN5Ok4ShLeR0dOBK3hCCvyagzeHw0cOO7tBQMV
   NWw/QlXl4UJxmZf+ZYwQRHIbGN/MBi7CZF+2kri3ne/LdtsWp+xTfa8Q2
   jAzGoPc3Jn85YIjVgzsnCHA9Q923Srr0Udf5Q/H9ssj0XJAYtNU8eAR8t
   4=;
X-CSE-ConnectionGUID: h5wQRG9QQYecYqbH9KLVMw==
X-CSE-MsgGUID: 5vnxr8v4TNOAutI4ikzrwg==
X-IronPort-RemoteIP: 104.47.59.169
X-IronPort-MID: 127042156
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:FESKwKi/tKlrZsuSgsY0lO2mX161RhEKZh0ujC45NGQN5FlHY01je
 htvWzvTPfqLZ2T8LowiOom18EpS7J/Ry9BrHAQ++Hs8Hi0b9cadCdqndUqhZCn6wu8v7q5Ex
 55HNoSfdpBcolv0/ErF3m3J9CEkvU2wbuOhTraCYmYoHVMMpB4J0XpLg/Q+jpNjne+3CgaMv
 cKai8DEMRqu1iUc3lg8sspvkzsx+qyp0N8klgZmP6sS5AWDzyB94K83fsldEVOpGuG4IcbiL
 wrz5OnR1n/U+R4rFuSknt7TGqHdauePVeQmoiM+t5mK2nCulARrukoIHKN0hXNsoyeIh7hMJ
 OBl7vRcf+uL0prkw4zxWzEAe8130DYvFLXveRBTuuTLp6HKnueFL1yDwyjaMKVBktubD12i+
 tQYdS80VD/SvtuHzbmKU+NM1+cHEuz0adZ3VnFIlVk1DN4AaLWaGeDmwIEd2z09wMdTAfzZe
 swVLyJ1awjNaAFOPVFRD48imOCvhT/0dDgwRFC9/PJrpTSMilEgluGzYbI5efTTLSlRtlyfq
 W/cuXzwHzkRNcCFyCrD+XWp7gPKtXqhB9pOTuTlqJaGhnXO2GoDEk0ICWedhtCklm/iWtFNM
 VMbr39GQa8asRbDosPGdx+yrWOAvxUcc8FNCOB84waIooLE7gDcCmUaQzppbN09qNRwVTEsz
 kWOnd7iGXpoqrL9YW2Z3qeZq3W1Iyd9EIMZTSoNTA9A79y9pog210jLVow6Tv/zicDpEzbtx
 TzMtDI5m7gYkc8M0eO84EzDhDWv4JPOS2bZ+znqY45s1SshDKbNWmBiwQGzASpoRGpBcmS8g
 Q==
IronPort-HdrOrdr: A9a23:yCidda2vdy9NLRrR8d0VFQqjBEgkLtp133Aq2lEZdPU0SKGlfg
 6V/MjztCWE7Ar5PUtLpTnuAsa9qB/nm6KdgrNhWItKPjOW21dARbsKheffKlXbcBEWndQtt5
 uIHZIeNDXxZ2IK8PoT4mODYqodKA/sytHWuQ/cpU0dMz2Dc8tbnmBE4p7wKDwMeOFBb6BJcq
 a01458iBeLX28YVci/DmltZZm4mzWa/KiWGCLvHnQcmXGzsQ8=
X-Talos-CUID: =?us-ascii?q?9a23=3A0cbCCGm+41Tk9k9rg9BQ0A1ZVCnXOX2A007qDB6?=
 =?us-ascii?q?BMFdkQ4yMQ3/B24dattU7zg=3D=3D?=
X-Talos-MUID: 9a23:mgT3/QlzAxBhsUUDtY8/dno/KsF4+fSwVHwrtrwbp+jYNC9iISiS2WE=
X-IronPort-AV: E=Sophos;i="6.03,250,1694750400"; 
   d="scan'208";a="127042156"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=nBxCxXaMX8gn9GjyKXsET+toLXIZqcSBRYc/P2BADBjaE5aJbZE954pcfYBRW/uvMzZU0J83EWVx5mGUp7Tf+p9EbKyGt1pfmVnJZyFh41G5DdQ4oMGJ7QjrPGVxPnjowfgD4WfXYXnYEZoUBQ1IhTIhW3w3ukUCFCuhmBmUDZ8iKjk/QDuMZRc/IoAMut1YH9D4FWkzsTtqCG8ATv/YJTRV5ToGlqi+WQCXgTseX/7oCnQJTEcvhD7q8o+suxHHTOQWPDBYFGb0Dp2A6SD9VNM79tYNZAPFHyFIEKZxWuYLxzmZF8C2UkGn1SwlqJWnqynt5DXPl0hjMtzPaUktzw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=Rx2xwEGyJsIQoToCUDP8k777pGJN135hsODubDyMVwU=;
 b=O2lLwVcA5guiNS2Vl4iL+XlSLx0RrcObrU2/zYS1ptyiRkODQKCpMiCXlJXXgx8J+TwmqSKNIT2C8/6n+ZyWqRxlW2Zbk3hyVidTUFIHdun5+TndWqdMcYOENrMHkwaFIXF7KuPISG+ft26Z12xSXqTwmsjGpk6eA+EWkTMXVlRiGMzUwFfDrNE3YBIsQmK8vaMIwMqIRI5y5fd/t9mYkptMF3MqIhPw1Bd3Lx4z9NaSOJX2t9/YUqfpS/zMjJP2o1GWEYsut1Rww9a/hr5yhDAOtw4K9OutRKlJuQBFgYLy18l84ORCLa7oWP36TWcRS+rpk5SdlPm4KMcZQ3y1Jg==
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=Rx2xwEGyJsIQoToCUDP8k777pGJN135hsODubDyMVwU=;
 b=Gtzh0h9B5dvEuXA9mGTJe9pyQN0ByBJwMxU338WyyMs4u+KGx4qPKC8buUgLtyM0BqMaSPkdY7uwdZ//Wm+FLHh8EfVLF4tUDNj9wlrPzqgd3g4Dm1Ar1VxuLVoHMYgsBtmRdfHYhuadIxBVTNp1kaXrCQDTn7qPG3+Qbs7aTdk=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Wed, 25 Oct 2023 14:49:44 +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>, Wei Liu <wl@xen.org>
Subject: Re: [PATCH 2/7] x86: don't allow Dom0 access to port 92
Message-ID: <ZTkO6FZBlUDDKJKU@macbook>
References: <95129c04-f37c-9e26-e65d-786a1db2f003@suse.com>
 <ba1de950-185e-8d8e-e313-aef54b18a097@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <ba1de950-185e-8d8e-e313-aef54b18a097@suse.com>
X-ClientProxiedBy: MR2P264CA0168.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:501:1::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_|MN2PR03MB4944:EE_
X-MS-Office365-Filtering-Correlation-Id: 44b108a7-d2c9-4259-db67-08dbd558deed
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:
	x8U8qMZQDP2nv9h0LzHJLHsnrcSu4fOsqCZWrUrZyOsYagwxDURO5sRs6XBpaINq1g13B7iaXyB5RlZyWvkkv0b4v9NpV0Gg5GtfEqfC7+PIB2s/6x+RqxG4SA/ZULcNfAo8NZfA6c8Q53fUZ5RMmHsNnoK8MsTSBTHllSJlpQhAzORxaSPrg7Ks9S/eklVa6uOw8LO7EGKtWAuAV1dswTcc1vR0rfOZ/Jw4ezDPPB5qBs3R8YfQoMw2wv1YVUOWJuTYktvY+1lcqHVWxeMOGSStH9kjqayGCnbpkKuZcGLVva+KnvPGDPJyBEeacIO1skcUgfHKW23B/EUJLlfSI+eHMwUvh9PH9vJuowwNiqN16bgk5YdR5zoLv1GG+q69k2GmDAxXkKrwyhcQmbaXYAdeu+xWOlXUovuIPY6q9ZxPhyMUr2KfIsTo2CMTfHUX/eu2HuTFqWk60O0eVHNniQ42D8gBKe9fVUYuGdKdHosq1EEvzoYZfTLoB06g6YNItRq03FhRsNolJnQtRk7totF8pgxtvOX8xyTG0efem90hghcqLYvO09nw/JjTW5uN0zZ9WORIG8ICmZgw3ZKSRutCMydDMPM4t/Vhw0PP9c8=
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)(376002)(396003)(346002)(136003)(366004)(230922051799003)(451199024)(186009)(64100799003)(1800799009)(26005)(33716001)(38100700002)(2906002)(41300700001)(86362001)(5660300002)(85182001)(8936002)(8676002)(4326008)(6916009)(54906003)(6506007)(478600001)(82960400001)(66946007)(66556008)(316002)(66476007)(6486002)(83380400001)(6512007)(9686003)(6666004);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?b0RIcW9UUHduRWQ4SE5sOFlxU0h6UVUxa1JvcU4yS08wamhUS0dzRmlwb3NV?=
 =?utf-8?B?N3hNR2MxOU9Qa0RFQXRldTl5a0J2d2RCNGlUMThoM3l2RGhqOHpoTW1PZzk4?=
 =?utf-8?B?QjcvR1NJNGQya0NVbW5PMGxhUndZQXBCMkFaRXV5ckdVbTZjWHFBZHBVTUVs?=
 =?utf-8?B?bGM3S1lpUThvRk9nTzVBVXFIUFQ2N0lXbW0xcXNVS245TENITERSRzkvKzlQ?=
 =?utf-8?B?K0txb2pvT01zTit1dHB0QzQzbTFRSEhLUS81dkx2RkVIU3YvSTJxc3huN1lX?=
 =?utf-8?B?RlM0aEs3cHFPZzRpMHBWUEhaUXE0VmxXa3Y3N040ZHpqTWd5TkxBd3BsQUZV?=
 =?utf-8?B?V0VXcWJ5eXVoSU4vMWNpcG5JemNMV1hjZVdWTWxhbWRrRzJVQ2ZLcXU3MmV0?=
 =?utf-8?B?OGZRY1BySjV3UVVjN2xPYUd5UjJYNVJBbVZTT1VBUDJheHo3NUluRmUxYlVv?=
 =?utf-8?B?RW40QW5MMTh4TWxPUElyY09aRWtjL09oZEYrN0JKQ0YybHErRzI0dVNpTzJC?=
 =?utf-8?B?U2o3c2dhYlFDbnpQcmtzNTVHZHZIcmthZlgyR3VyOTR1QnZzUVBFSGNUVWp6?=
 =?utf-8?B?eWVWTGFYb1hEMjk4VUdWdXo4M05kMXFGZnVyRU44eUJTc0sxeThIS0RhbFBE?=
 =?utf-8?B?cjczdWxXeDRna1VBbW1scjB6Q0QxNFFoVUREMlZiZEhwcitnYnRQMDFYVEVW?=
 =?utf-8?B?ZjU5MFVteE5ITHRHcXdDNFBCS3pScGoxNE5rZ0lyVUJsSmpnbGJwdTRNVWRB?=
 =?utf-8?B?cVUzdlY1eWdXdTh0N0YwdVRYMDhEWlVuUjQ5dklFK1Q2MHNFR0RLOHAvVUw5?=
 =?utf-8?B?NGtITFpKQnNsdm9pNU9SOTN4RjRPVnNxVmdQbWZCUFhCY3lJbW9STGdmQXV5?=
 =?utf-8?B?SnRtVVFsbGpCeFUvdnlMS3ZwSkQybWVqYjEwMDd4ZHE4ZUUzSDkvUWdjeXdi?=
 =?utf-8?B?ZVJFd3RwUnV3WjJSY3V0QzJGdnR0ZWVvWUNRdXNyQnpzVmpkSXAyZ2tTcFVM?=
 =?utf-8?B?a29XWkVCWUE4bSsvWlkvcVFNWmdFR1A1SmJETUdUL0dUMjNWSjk4WTZ0VXJT?=
 =?utf-8?B?eFRzNTAwMFdnaFNrODVud2dyK25kOGtxMU1jQTdOaEJWWnRuQ05vT2d0OE15?=
 =?utf-8?B?bU1zSm1VQkF5d3NaNWExalRweFJ6OFR5OHo2c1pEcHRXWnVDUjB1N1RvUW9Q?=
 =?utf-8?B?MFNGWi8waExjUEN1N1BDREtvZmhiWEZxTDJEb2pvekpORElrRjB5WlF5czBU?=
 =?utf-8?B?RTFxZEt5WWZES3VWUGs2eWZacFBtSVBTUWJhczc5SHpSMSs3azVVZmZ3NENL?=
 =?utf-8?B?TFVqZW5WUG1nSFhDQXdtVE14Uk44ekdVTWZjQkZFTmxhc0VKdjJtMDRaQS8w?=
 =?utf-8?B?MVdmd2M1Qk9OalVlTkIwMmo1MDZoeEJiK00rT2RHRkZiT040Tjl2UWo0cHho?=
 =?utf-8?B?Q1h2THpZb3h2WVNmcWFEWmZJZ3lXNHFzR0ZHSmw1U3J5RnZsQTRUbjRKWHI5?=
 =?utf-8?B?SjdacG5NNDhqNk1ueW9qdjdLdjI4ZlhVMXdoT0toSVlvaU93V2xMSVp5dG1W?=
 =?utf-8?B?RjVhM2w0ejJuT1ZyekE2V3RQQ0NyVlpFbklhQzQ3UjRUVGI3K1h0M2RZTk9O?=
 =?utf-8?B?Y0NQT21odTZGOUpJK0dPeG14M2NUMzUvL2xlTEszNnRLZG1tVjFvemFwMXZt?=
 =?utf-8?B?ZlFBKzhCcXBiQjJBaGs2TVkycjdCUS9aRkpXdWZ1YXNrSEJkTFl4NkNjVzdr?=
 =?utf-8?B?U0s1YS9QUmFZcWZrOEM4STNwcjdHQlczUVJXYTNWTnVJMTZLR3ZNcHZ2R3BC?=
 =?utf-8?B?UnZkeGFWRUlaQlZhYmlIV1pWQ2xhWkFTN1U2NGoxOTZhSGNwczYvQ2VuZVFr?=
 =?utf-8?B?UTZvVklUT1VHWWNBVjlIS2tYL0x5cTFqSHNxUSsxUndsU2NCd1VKUzN4UWI3?=
 =?utf-8?B?OWdmVlFOTGtFblZNajg1NkFPaEl0VHVRbzFsR294UjZaN05WaHd4RHNFdTho?=
 =?utf-8?B?VDNzQmtlUDlxKzRqN2YzNXYrTForMUNvRGlCNVhvTW51TENyallLYnBOTlZC?=
 =?utf-8?B?clRNbGN4R3l3dTRMMTNIZDlPbzhWQVhRQXNtYU10T1BCNHhYQ0Y0N2JTdE85?=
 =?utf-8?B?UFpQRFFpODlPd2s5TTVCM0Y0TWgyeHFCRS81UHBGcG9BanhXZXF0MkkrdVpv?=
 =?utf-8?B?V3c9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	rgnK9WbgKqctPbKY1FXQZhkjeGpnvyovojehF6rMxbSa8rTdOUPbkvdwPBb+FCNHoRedwEQcX0NWG7s8QFGGeBTTp3wvKcxvBeA37adTJb/p6ffNocROJ6X5jCdH7bMX+Nm1qYbQLao2+3iACw/Vfqy3RYVvrguGu9IoWhwLt6hKoRaLkVDMqHEhB++Yut9iZRXSJbuYG16txLSlNPb0bXFEmAWKji2DsUCTwRI9Qkyet3BJ6NOE4U5Z021vvcp7K17dCLviMuM9LU0cg+ts7HJcMfsOGtt+kcVvBiPbTnft1bvb2Rx3vIbEpsPmRBZQuRuDpn/SSow7FFA4sYlccHLtxmYpMxrGyGOzGp6LMLYqNKPKuWvhaWwJd/+cnBsvcP4eoOJR2nKhRlUStn4Xf3hXlLWZXK+B7k9qn2R0fEjEtAfEIe2KcjOlbnZlzAMxIEGlnGMv0m14S8Lb54xFCJk60vGcOQPJjfn7iABJVji14pmS26OY8ZGRvpBYcxTn1RgvqtDZTZRFiQxT4ayf4o3tzwBLPsmOe2n9qpRlbM9z6iRLQ419nFlIPcdhGB7MKkq56aKLCZT/d+cX2yajjjJbXtA3/eTbIYamt8Y6hh0KuctogGUXeAU6RJlhkGhnA8NMr33ashrQlD8lBXlUWFPdO3geCKiuj4ssZnxzBMrtC3+FqN7B+OiUaBGbITu88NNn3dxFGMFf6qqOLlZRU3uV4yw6Z2sNu38k58N+K/H/M80qTdsLKCiS2Gw2yYYuw9SfKkzKTiS90rnDOkpGnV7cE6wK9NJOKE7UAEVG+Qkh4IrPrzoT/SqFkSldc3fBZJmfO0Svn2FBEQu0tFQI2w==
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 44b108a7-d2c9-4259-db67-08dbd558deed
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Oct 2023 12:49:47.9049
 (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: HCiLOil1I6FlJeuRLkPGRUbjW/ZTayaQ5RRpyIT2SwuSVDq1ksa/+ZFxTM8eINBudUreAUTczyxwUC+/ubHsNg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN2PR03MB4944

On Thu, May 11, 2023 at 02:05:45PM +0200, Jan Beulich wrote:
> Somewhat like port CF9 this may have a bit controlling the CPU's INIT#
> signal, and it also may have a bit involved in the driving of A20M#.
> Neither of these - just like CF9 - we want to allow Dom0 to drive.
> 
> Signed-off-by: Jan Beulich <jbeulich@suse.com>

Acked-by: Roger Pau Monné <roger.pau@citrix.com>

I'm kind of concerned that such ports might be used for other stuff
not described in the specifications I'm looking at, I guess we will
find out.

> 
> --- a/xen/arch/x86/dom0_build.c
> +++ b/xen/arch/x86/dom0_build.c
> @@ -500,6 +500,10 @@ int __init dom0_setup_permissions(struct
>      rc |= ioports_deny_access(d, 0x40, 0x43);
>      /* PIT Channel 2 / PC Speaker Control. */
>      rc |= ioports_deny_access(d, 0x61, 0x61);
> +
> +    /* INIT# and alternative A20M# control. */
> +    rc |= ioports_deny_access(d, 0x92, 0x92);

I do wonder whether it would make sense to create an array of [start,
end] IO ports to deny access to, so that we could loop over them and
code a single call to ioports_deny_access().  Maybe that's over
engineering it.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Wed Oct 25 12:53:17 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 12:53:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622862.970074 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvdNr-0000bi-RQ; Wed, 25 Oct 2023 12:53:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622862.970074; Wed, 25 Oct 2023 12:53: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 1qvdNr-0000bb-Nz; Wed, 25 Oct 2023 12:53:15 +0000
Received: by outflank-mailman (input) for mailman id 622862;
 Wed, 25 Oct 2023 12:53: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=bQ/a=GH=citrix.com=prvs=655ba0516=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qvdNq-0000bR-N9
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 12:53:14 +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 74857c03-7335-11ee-98d5-6d05b1d4d9a1;
 Wed, 25 Oct 2023 14:53:13 +0200 (CEST)
Received: from mail-mw2nam12lp2041.outbound.protection.outlook.com (HELO
 NAM12-MW2-obe.outbound.protection.outlook.com) ([104.47.66.41])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 25 Oct 2023 08:53:10 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by MN2PR03MB4944.namprd03.prod.outlook.com (2603:10b6:208:1b2::16)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.14; Wed, 25 Oct
 2023 12:53:08 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::acf0:ce2b:1634:5aee]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::acf0:ce2b:1634:5aee%6]) with mapi id 15.20.6933.011; Wed, 25 Oct 2023
 12: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>
X-Inumbo-ID: 74857c03-7335-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1698238393;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=0lXswFmSxr4dIxXf+L2Nhcjf1W38tkfPrM943KUtfL8=;
  b=O0OZr3S4o2E/R1vjQdNjFED97JhfhMTuGHJ8aZomy+CB2zTWJ7euH557
   Bq7I2kmyR+lWnxuG+JMrUUrNbs5P1WIcSsqLZeeHZdkHq9ZLAAt2m0wt9
   FNs5jfV1gboW1doo8AfMIMarKB3g/RIueCE0oLwz6mbxKpFcHn5Sspj7y
   E=;
X-CSE-ConnectionGUID: omi6nT4cQy6n3d+IfSx6mg==
X-CSE-MsgGUID: 2iE6qDcIQvWdSaTUoD269w==
X-IronPort-RemoteIP: 104.47.66.41
X-IronPort-MID: 126469079
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:4i2QxahoJM7EgoUyiL6BxAXcX161RxEKZh0ujC45NGQN5FlHY01je
 htvW2iAMqmPYTemeo8iOtmyoEIP7ZCDz4BiGgdqpCwwQygb9cadCdqndUqhZCn6wu8v7q5Ex
 55HNoSfdpBcolv0/ErF3m3J9CEkvU2wbuOhTraCYmYoHVMMpB4J0XpLg/Q+jpNjne+3CgaMv
 cKai8DEMRqu1iUc3lg8sspvkzsx+qyp0N8klgZmP6sS5AWDzyB94K83fsldEVOpGuG4IcbiL
 wrz5OnR1n/U+R4rFuSknt7TGqHdauePVeQmoiM+t5mK2nCulARrukoIHKN0hXNsoyeIh7hMJ
 OBl7vRcf+uL0prkw4zxWzEAe8130DYvFLXveRBTuuTLp6HKnueFL1yDwyjaMKVBktubD12i+
 tQfLTFTaCzfjNunnrTgRqpNiP8zcszkadZ3VnFIlVk1DN4AaLWaGeDv2oUd2z09wMdTAfzZe
 swVLyJ1awjNaAFOPVFRD48imOCvhT/0dDgwRFC9/PJrpTSMilIvluS0WDbWUoXiqcF9hEGXq
 3iA523kKhobKMae2XyO9XfEaurnxHmlBNxDTOLpnhJsqAeS6zIKJBY3bEWErcKwtnO5d4gBe
 lNBr0LCqoB3riRHVOLVXRe1vXqFtR40QMdLHqsx7wTl4rrZ5UOVC3YJShZFacc6r4kmSDoyz
 FiLktj1Qzt1v9W9Vna15rqS6zSoNkAowXQqYCYFSU4A/IPlqYRq1BbXFI4/Seiyk8H/Hiz2z
 3aSti8iir4PjMkNkaKm4VTAhDHqrZ/MJuIo2jjqsquexlsRTOaYi0aAszA3Md4owF6lc2S8
IronPort-HdrOrdr: A9a23:dqb6V6G4/tGZbu+VpLqEzseALOsnbusQ8zAXPhZKOGZom+ij5r
 mTdZMgpHnJYVcqKRYdcLW7UpVoLkmslqKdjbNwAV7AZniDhILLFvAB0WK4+UyZJ8SWzIc0vp
 uIGJIObeEYY2Iase/KpCGlDtA6zMCD4MmT9JzjJrRWIT2CqZsM0+60MGmm+4RNKjV7OQ==
X-Talos-CUID: 9a23:EWe6r2ERotXDeQsQqmJg8U9KHPx5eUTMknGLLwyZB115FriaHAo=
X-Talos-MUID: 9a23:vhA03QmNH3cb294PBNyIdno4Neo2+oilKXkTrpk9svW5MgAqZWaC2WE=
X-IronPort-AV: E=Sophos;i="6.03,250,1694750400"; 
   d="scan'208";a="126469079"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=eAXOeIRC24LgV0fNK7/iA/8lclM8ZpbujWCNLY0L08zXWv90JOLo6keDtxY4vvIlESoo3dWL1qCPKbZJPdILJvyGqVTyEeO3VvuQeincxW/zvbpwATOjl+C0l+gQ84qKGulAgoHjoggleQh7MK46bASdmsIegrqILqWO/l6V4g1gSpaoqS/Nf8Ad+1Deq47dfrLcxZsauHAnRDc+elihmYvuoZOl5vM7ba1qGXiTYquLX2LMH5M8jddrKJkw74Po0Rfc91B/359awxLJGJHUWovHB/EHkspTORB0QyZcTn4fCedfXPeuvNyuyP1Z3+Z/5ssTgwJTugcQRjcCbC5hIg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=wnbtn8USSL7+GRlqiH2XcA4xrz0jqmq+/ZvYey1vv6c=;
 b=czbATwH7ELqDWrtKTOaB1HuE2f8tdR3WqlFpLYYTxi/EvkqeG8WqV42nI/Pp6NfV9ulqjMxo0Oot4cWb6VINdxjzyRZY5oq4ahYZ4pAZfdChfgNL9mIGkoBY6Czl6wsRSiPDVj+6lGzRUcKuUUNfebcD/U68m4cZIfdvzxXXNSz8Vn1DLacKgYdjZDySPOwmNUHN9VMK6Qvf5DaCsTPLIva5n2pm5IS7NecNa6OFzCzKTsgDeKSaEslhtYhBRjCUWVptjRtSpnw4m46/oKZAjsdvD1TqyjTqx+p/zYyH4yjb46ibvT+6XEh/Bx2Ton6PWmNPRa30OhEcgRytvpxt3g==
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=wnbtn8USSL7+GRlqiH2XcA4xrz0jqmq+/ZvYey1vv6c=;
 b=CGaNBHkwMc3jXib6FoHZ+bdtla4kBZQte+98oYdBwF9UGxgcn43Mlh5NFuNHJEL4NfjPDvtTgkbQu65Pvc1KEnyc99+xI/eqWvcSInKU2OqfuYlbN+psmbMHLtwG+xWJf3WxTQ8+FqFMmYVn37dN8NEtzlpZjbIaLQhSkpQtM8c=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Wed, 25 Oct 2023 14:53:03 +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>, Wei Liu <wl@xen.org>
Subject: Re: [PATCH] x86/vPIC: check values loaded from state save record
Message-ID: <ZTkPr3RHYXlRrl2f@macbook>
References: <060ae425-2daf-9ce4-d291-215d483d592d@suse.com>
 <ZTjp_LYGwvKKumYg@macbook>
 <3de3481d-5884-02f8-6f32-faa53d16ab24@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <3de3481d-5884-02f8-6f32-faa53d16ab24@suse.com>
X-ClientProxiedBy: MR1P264CA0076.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:501:3f::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_|MN2PR03MB4944:EE_
X-MS-Office365-Filtering-Correlation-Id: 8eb953d5-019f-4435-046d-08dbd5595618
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:
	no95YifLYKFFw7YHx32pGD9xvIpKwZr/RJlOUuIZjXbz06H22JTgwkSJ4n8ZJGxy9jeOqA8Ti1ScvaZhEkgFaeBM2aBdljAS+HzYBqNTcO+THrh3MtgcudXunu/Oav9XQUFyto8QHqKMjqBhf7MGXbGV3jtLET3E0Oz9GqNTXEwVekSZdgKLDwbppYGRoTNDB5u0snTncWgnieK4UTL/zEX9Ags6JA2ZyU2MKzPaStDyexvMXnYjqqeJ6e7N50coAsffEaTs13BPBXZQdrrYnE4Vz+Rm4DYE6EVgu59mj/lL2TCEFyyPwmx+/V7yHr0Qv9tlEJVFWgVquR+Y0AkJNXVrMX0Nkj0UvPGM5xslP5YplK1FOly72Qdkv7UljC0KyJGqd2Eb87fZwCIZg+D1oqrVlwbMVChmxfHGvl8AV6+YghOERvbCcwxq0M7/6fqnHH3sI7GoWOabTn4QRObP6NHPq0PAEBGRfv+06yT0wDSDbwDuK0ZlAREH5mk0oIFfvHWHJWIVcSwBLnufR33JUBCYLx010sCKypSib3U5Ya1p4ZticTjZ1us06CbprPHELab0LAdDWlyPGuwF6mKL25VDaP39QJ+fVESv3/OCqPU=
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)(376002)(396003)(346002)(136003)(366004)(230922051799003)(451199024)(186009)(64100799003)(1800799009)(26005)(33716001)(38100700002)(2906002)(41300700001)(86362001)(5660300002)(85182001)(8936002)(8676002)(4326008)(6916009)(54906003)(6506007)(478600001)(82960400001)(66946007)(66556008)(316002)(66476007)(6486002)(83380400001)(6512007)(53546011)(9686003)(6666004);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?ZmRyQy96WlZZMDljamlJeStNODhlUFo4cG9abDlJSzg4bksvd1JVSlpQaDRh?=
 =?utf-8?B?dGo2KzRtQVJUOXhqRGpRckQ3Yi93czVnQ0pFbDBLc0wyL2JjUWE1UDNyU0RV?=
 =?utf-8?B?WG5HYTRNRmkrQ0d0SU4rNjdqWTZYOXBhN1lBNWt1YVVSYWk1eTZSK04zdmts?=
 =?utf-8?B?S2xGaG04OWdsYWlObG9tV0ZPSlE4YVpnVXVRWGtOMWRuS0hjRXVudkgvWXRS?=
 =?utf-8?B?ZHUxQlJpcG5CREhVVXVhTUd2MnVEenV6VTVHRXZna3o0QzQra1AyTlRZczRp?=
 =?utf-8?B?TldiNC9wT2g5ZjdocDdneFF1MEE5R3VqdFVRSGdhUFZVWkh1T0xQVUxSQmcy?=
 =?utf-8?B?U1F4UDc1RFdzbTdSM2FNY3NrSEVTTG9CR1JjQ1JiTFF5MGNHWDRXdE9weUl1?=
 =?utf-8?B?c29wMkQ5WU9pTlRhWDdNZUtFMytDZWJudG1mNmNOQ2xVNURBejZTazQ3WXRW?=
 =?utf-8?B?Z1J4RUNEb3ZOY1duV3hOQ0NFVHJVNkZCdXBIaUNRQmJsOVdGK1F0akNPb0RL?=
 =?utf-8?B?dk53emRBaVRQdVMyWkdvbWJmVXpuOTEvckZXQkRCc01sdU42bEttWjNqQmJU?=
 =?utf-8?B?UkNnZkZzVktmVzVKZHdQV01FRmNLZGRiTnk5RGNaSzIrYzczVUdHaWF0UzVa?=
 =?utf-8?B?d3dubjg0S2pKWEoyV0tRNXpicjRRaHVZR3l3Ums2aGY1WWsvU0ZmTTRvdExK?=
 =?utf-8?B?TzdVVERmdEdCRDhrSldyZUN1WmNveWRYc05NdWYvVlpIZ0pOSjFKL29iWHNR?=
 =?utf-8?B?YWd0Mk5PRlIyQTJ6RXJ4RXFjN2xhYXBtRFgzcXN1Qk50Ylpwc1RjR2pDd2I0?=
 =?utf-8?B?SzlFYVVpSllqUW9LdnBmb3k0enlLYy80eEZ5ZThWU3YzekRzSEtwLzZhL01w?=
 =?utf-8?B?Vm84SlpldW5ST3QzMGdLQjNXbGtKMFhVWWxEb2JxSUNNd21HOXRsZ0NIS1FY?=
 =?utf-8?B?enlUL3FBQ1pVdDAxSS9aTnNva2JhSnhWbjFMNjNzSk1ubWdKdzJORUpOZDcy?=
 =?utf-8?B?bVIzTm54RjV4T3FWaHV6R3BjdE91RW5WYThTcUVrVWora0hrSGMxT0FXMFVE?=
 =?utf-8?B?TXlLY29BeUErMU0yL0hQMjZZb3hWZ0hFUWVSbXRRdmNPdk5naXA0Q2FZZUpZ?=
 =?utf-8?B?WVJOWE5hWTIzNjU5YnBWVWhyWUE4TUlHVTY5ZUorYStRdElCcURXM1VnQ2RB?=
 =?utf-8?B?TjhLWitncVdwZHBxZjZSbEtCWlZOcHpPeE9xZHA4U05JM1VGV0dFd0FnUVZD?=
 =?utf-8?B?YUNPakhIcElkVERPTzhMZkJGZnJVSEdXNmU5KzhVUGtjcGgxbnpnazBpY1Fl?=
 =?utf-8?B?aFdKV3lEeWwwQjNnQjFRMkhRL3kzczhOaEdrczU2Q1Frckl6MjUxUnlNamQr?=
 =?utf-8?B?WnpCeGFWQWdQUnZtbDBFWWZTS3JFVnNXd0gxTGpwWjFKWlArTmRjeEQzWXdm?=
 =?utf-8?B?Rkt3MDRYaXZlMFVycXRRb0Zibkd4U05GR0JrZ3RiUVFJMENBSUFkYzIrWEs3?=
 =?utf-8?B?TFEzU2lLUGxJd25MQlBFTzEvdjBPL2huczVBQjdQNG5vS2lJYkZTOHFLTWpQ?=
 =?utf-8?B?NFZ2S2Z5eFB6cTZzVWZtNFNKTkd5Zmh0S3BWeXduQlU5WWxyNE81MlE4VnZS?=
 =?utf-8?B?WGx5QXNzNzBEREczSCtWVzkwMkJlYWcrM1RRakFxajlQYUNzQm5rZnRaL29T?=
 =?utf-8?B?emNFVk5VU0VkVWVqUWVoNk9NYWlCdk9IWEdXZWVVbU13eXhYblRxOWxhdy80?=
 =?utf-8?B?Um12MmRSWXcxeUYrZ1BqRXJzWThqaCtmM3FTMEhpT250WkdBNWh2V0FoQWtz?=
 =?utf-8?B?VXFURXFBdng3amw0NGJ1b0s0c1Q5VmtjbW56MUtKYjVkNnZaV3dJN1NkZitH?=
 =?utf-8?B?ek5aZTJ3cDh2WXlORzJqUENiL3M0WXFNN2pIc1poMDZNV3IvR3UzeGg4azFa?=
 =?utf-8?B?c3UvOGhJTkZlT0lscHNvL3krME5yNnVsMVBFRCt5Z3BzTWJVZzU2OFhEY0xD?=
 =?utf-8?B?Vml1a1d0c1hUcUQ4NytsOTJrSkpYb3RHV2EzSEh4YlBqam40OE8zakR0eTB1?=
 =?utf-8?B?M0ZuOFdDSlNERy9oa1JaODAweUVaSFpjSGMyZ01yZ1BXT05hZ3pYMHZwZ1Ft?=
 =?utf-8?B?Vis4YXVzQ2RvZkgyTlNleitocjJ5MkswdUZzMndrT3I2NWJkK1RjRzE1UU1N?=
 =?utf-8?B?aVE9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	mmiMh53TqqZtg1X81/k45YAz+7NXpC8Ed93RzQkz8W6PiLmToDIImNCenzAf9onPmGYRBvoMGu07xhN+wf4nEKBGNyenWBb3HwNdZK1VjHSIkjpjgDpQlVupOX2c/NpQgbLbbGqDsVZkg4hd+CcJx8qr6u95tuxvgi4dhxSYYm1n5nBOHntnYj993EhUmGL4gWJs2Gi+uNik4LITkeIhK+DHVwwBl0gU2VdrKM1d4zCwhBn1DOweKB4nqW2VuWfTkZKs68obSNL26f+9z8L0dlB1lIw/BYZnKHYoTOeXb92n5km5VYVlE4Mw4/DjzS/+ig8BtpGd5zV4XPyRkwsBmpgOKn5mdkCfYak0QMWlo/IOgKrwF4/CTS+nON/RdaeaRcnwSsEgb5FMWNk7nUtv0a28Xl7HGtXu4sK223qFuU13Aqi+7hrhAMAK1q3+ucuy7Ph8atPc6I/NgFa50UhjMlpJAUrdFiyv6X58I71d6bkQ1iJPigUQHar3D1UusaIrdQiQZyr+OIsLg6IoSNvwYkdWM92mVBAycd3iPEnOVPZFDortP2EVXptJjBJ0/JFbZpaP3RzB+Nj8+NfylcyVedIj91etiDQufd1FXEzNz3Omo2AaqExMV3HPNkedTRjF3pEtJvDrh5XNIfOFl50CQ/rfjLu3UTQ+hWQtEkBPXg0IX7sGn68i5jplyrDufcpvpWZsY9ERW9cokuXav5iPRr28H6K1rOG1gj9JqdpULrEKoHJKr77RMOoV/oIGmSTJaP/Fhb0nPs40fSo+ebyZ9/y5f5cNe604oNOUY1BCqHTAdakKq2TTuXtgWXQsdddcsXAKmNuIVkd3N+UK6B4k0Q==
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 8eb953d5-019f-4435-046d-08dbd5595618
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Oct 2023 12:53:07.8933
 (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: TxWAbOms9Y4n8N/dHXKT8mi1Ym4ySAPBJUFM/BssVX5xpvo4PC3ifDzUqehBa1GkMnc3ztMlKg9Ls44lwPIm4w==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN2PR03MB4944

On Wed, Oct 25, 2023 at 01:51:05PM +0200, Jan Beulich wrote:
> On 25.10.2023 12:12, Roger Pau Monné wrote:
> > On Thu, May 11, 2023 at 01:50:33PM +0200, Jan Beulich wrote:
> >> Loading is_master from the state save record can lead to out-of-bounds
> >> accesses via at least the two container_of() uses by vpic_domain() and
> >> __vpic_lock(). Calculate the field from the supplied instance number
> >> instead. Adjust the public header comment accordingly.
> >>
> >> For ELCR follow what vpic_intercept_elcr_io()'s write path and
> >> vpic_reset() do.
> >>
> >> Convert ->int_output (which for whatever reason isn't a 1-bit bitfield)
> >> to boolean, also taking ->init_state into account.
> >>
> >> While there also correct vpic_domain() itself, to use its parameter in
> >> both places.
> >>
> >> Signed-off-by: Jan Beulich <jbeulich@suse.com>
> >> ---
> >> Of course an alternative would be to simply reject state save records
> >> with bogus values.
> > 
> > Likewise on the vPIC one, I feel it might be better to just reject
> > such bogus entries, instead of attempting to amend them.
> 
> Perhaps we should discuss which route to take on the next x86 meeting?
> Then also Andrew would have a chance to voice concerns; not sure if
> he's following the thread.

I don't have a strong opinion.  It seems more prone to errors to try
to adjust state that we know it's wrong.  The adjustments could have
bad interactions, or we might miss other fields that also need
adjusting.  Plus any such 'bogus' state is a sign of something going
wrong.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Wed Oct 25 13:01:40 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 13:01:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622870.970083 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvdVs-0002wG-Nz; Wed, 25 Oct 2023 13:01:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622870.970083; Wed, 25 Oct 2023 13:01: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 1qvdVs-0002w9-LP; Wed, 25 Oct 2023 13:01:32 +0000
Received: by outflank-mailman (input) for mailman id 622870;
 Wed, 25 Oct 2023 13:01: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=xfp5=GH=bugseng.com=federico.serafini@srs-se1.protection.inumbo.net>)
 id 1qvdVr-0002w3-IN
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 13:01:31 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 9cc92e05-7336-11ee-9b0e-b553b5be7939;
 Wed, 25 Oct 2023 15:01:29 +0200 (CEST)
Received: from Dell.home-life.hub (unknown [151.29.134.109])
 by support.bugseng.com (Postfix) with ESMTPSA id 755E74EE073A;
 Wed, 25 Oct 2023 15:01: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: 9cc92e05-7336-11ee-9b0e-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 v2] x86/iommu_init: address a violation of MISRA C:2012 Rule 8.3
Date: Wed, 25 Oct 2023 15:01:22 +0200
Message-Id: <ba5d1368fce181a6a3a6abc150651e1e5323e489.1698238686.git.federico.serafini@bugseng.com>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Make function definition and declaration consistent and emphasize that
the formal parameter is deliberately not used.
No functional change.

Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
---
Changes in v2:
- improved code format.
---
 xen/drivers/passthrough/amd/iommu_init.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/xen/drivers/passthrough/amd/iommu_init.c b/xen/drivers/passthrough/amd/iommu_init.c
index 9c01a49435..9f955743e1 100644
--- a/xen/drivers/passthrough/amd/iommu_init.c
+++ b/xen/drivers/passthrough/amd/iommu_init.c
@@ -692,7 +692,7 @@ static void iommu_check_ppr_log(struct amd_iommu *iommu)
     spin_unlock_irqrestore(&iommu->lock, flags);
 }
 
-static void cf_check do_amd_iommu_irq(void *unused)
+static void cf_check do_amd_iommu_irq(void *data)
 {
     struct amd_iommu *iommu;
 
@@ -702,6 +702,9 @@ static void cf_check do_amd_iommu_irq(void *unused)
         return;
     }
 
+    /* Formal parameter is deliberately unused. */
+    (void)data;
+
     /*
      * No matter from where the interrupt came from, check all the
      * IOMMUs present in the system. This allows for having just one
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Wed Oct 25 13:22:41 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 13:22:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622877.970104 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvdqK-0006z6-Mt; Wed, 25 Oct 2023 13:22:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622877.970104; Wed, 25 Oct 2023 13:22: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 1qvdqK-0006yx-Jw; Wed, 25 Oct 2023 13:22:40 +0000
Received: by outflank-mailman (input) for mailman id 622877;
 Wed, 25 Oct 2023 13:22: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=Kl7N=GH=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qvdqJ-0006iv-Di
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 13:22:39 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 90eed7f3-7339-11ee-9b0e-b553b5be7939;
 Wed, 25 Oct 2023 15:22:37 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id DA8CE4EE073A;
 Wed, 25 Oct 2023 15:22: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: 90eed7f3-7339-11ee-9b0e-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>,
	Paul Durrant <paul@xen.org>,
	George Dunlap <george.dunlap@citrix.com>
Subject: [RFC PATCH] x86/vlapic: address a violation of MISRA C:2012 Rule 16.2
Date: Wed, 25 Oct 2023 15:22:32 +0200
Message-Id: <99114c15a4256e6a0f39bd6de232ee4b8ad9b587.1698239734.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The clauses of a switch should be enclosed directly by a switch
statement to make the code more easily understandable and less
prone to errors.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
---
This patch is mainly indended to probe how the community, especially the
maintainers, would receive such modifications to the code, and whether there
would be consensus on the rule's adoption. Anyone is welcome to
give feedback on this, especially on the x86 side, where this pattern
is used more frequently.
---
 xen/arch/x86/hvm/vlapic.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/xen/arch/x86/hvm/vlapic.c b/xen/arch/x86/hvm/vlapic.c
index c7ce82d0649a..318dd48577e2 100644
--- a/xen/arch/x86/hvm/vlapic.c
+++ b/xen/arch/x86/hvm/vlapic.c
@@ -1034,10 +1034,10 @@ int guest_wrmsr_x2apic(struct vcpu *v, uint32_t msr, uint64_t val)
     case APIC_EOI:
     case APIC_ESR:
         if ( val )
-        {
-    default:
             return X86EMUL_EXCEPTION;
-        }
+        break;
+    default:
+        return X86EMUL_EXCEPTION;
     }
 
     vlapic_reg_write(v, array_index_nospec(offset, PAGE_SIZE), val);
-- 
2.34.1


From xen-devel-bounces@lists.xenproject.org Wed Oct 25 13:22:41 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 13:22:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622876.970094 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvdqD-0006j8-Ej; Wed, 25 Oct 2023 13:22:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622876.970094; Wed, 25 Oct 2023 13: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 1qvdqD-0006j1-C0; Wed, 25 Oct 2023 13:22:33 +0000
Received: by outflank-mailman (input) for mailman id 622876;
 Wed, 25 Oct 2023 13:22: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=bQ/a=GH=citrix.com=prvs=655ba0516=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qvdqC-0006iv-41
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 13:22:32 +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 8b1c4ef7-7339-11ee-9b0e-b553b5be7939;
 Wed, 25 Oct 2023 15:22:29 +0200 (CEST)
Received: from mail-co1nam11lp2169.outbound.protection.outlook.com (HELO
 NAM11-CO1-obe.outbound.protection.outlook.com) ([104.47.56.169])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 25 Oct 2023 09:22:18 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by BY1PR03MB7261.namprd03.prod.outlook.com (2603:10b6:a03:526::9)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.11; Wed, 25 Oct
 2023 13:22:14 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::acf0:ce2b:1634:5aee]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::acf0:ce2b:1634:5aee%6]) with mapi id 15.20.6933.011; Wed, 25 Oct 2023
 13:22: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: 8b1c4ef7-7339-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1698240149;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=jDUbkLbKFt7OLMkjnslttMSBEP8saK75K99jTJn/OlQ=;
  b=CHGFHo6iyWaX7cqtD0VFp+verGrhJYmwwQQUF09cuz2hItiyFrLsjJZU
   u9hAMGmWM4BiT1EyF/GDwE34ywr0EGrQEgqUjPy/5ctJP5y2IYLYKydST
   ZEa1CCOw5vnV7X3IOYE59qJapvtBN43w4pw7mUOxU0iArHBQ4gyS8hA5M
   w=;
X-CSE-ConnectionGUID: KJOUgo4gT5eaQ4Ayi0hDIQ==
X-CSE-MsgGUID: dQq7nw1DRE+HcZdQPD3Iqw==
X-IronPort-RemoteIP: 104.47.56.169
X-IronPort-MID: 127045909
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:AZcPq6qzeo2EoZ+sLMy1DGRHrapeBmI5ZBIvgKrLsJaIsI4StFCzt
 garIBnTPKuPMWPze91zaoS1/B5X6JXQyNY1TQM/+H03RSob8JuZCYyVIHmrMnLJJKUvbq7FA
 +Y2MYCccZ9uHhcwgj/3b9ANeFEljfngqoLUUbOCYmYpA1Y8FE/NsDo788YhmIlknNOlNA2Ev
 NL2sqX3NUSsnjV5KQr40YrawP9UlKq04GhwUmAWP6gR5waGzSRNVfrzGInqR5fGatgMdgKFb
 76rIIGRpgvx4xorA9W5pbf3GmVirmn6ZFXmZtJ+AsBOszAazsAA+v9T2Mk0MC+7vw6hjdFpo
 OihgLTrIesf0g8gr8xGO/VQO3kW0aSrY9YrK1Dn2SCY5xWun3cBX5yCpaz5VGEV0r8fPI1Ay
 RAXABMvSS2MgL65/O+2Q9Awr9UidMnHHbpK7xmMzRmBZRonabbqZvyToPR/hXI3jM0IGuvCb
 c0EbzYpdA7HfxBEJlYQDtQ5gfusgX78NTZfrTp5p4JuuzSVkFM3jearaYSEEjCJbZw9ckKwv
 GXJ8n6/GhgHHNee1SCE4jSngeqncSbTAdhNTOHlp6Y76LGV7mAqEUIQSgKXm9T6qkWMV+tnB
 xc14zV7+MDe82TuFLERRSaQonSJoxodUNp4CPAh5UeGza+8yxaUAC0IQyBMbPQitdQqXno62
 1mRhdTrCDdz9rqPRhq16bO8vT60fy8PIgc/iTQsSAIE55zop9g1hxeWF9J7Svfr35vyBC36x
 C2MoG4mnbIPgMUX1qK9u1fanzaroZuPRQkwjunKYl+YAspCTNbNT+SVBZLzt6kowFqxJrVZg
 EU5pg==
IronPort-HdrOrdr: A9a23:GvBLl6CDnGvO3s7lHejLsseALOsnbusQ8zAXPh9KJCC9I/bzqy
 nxpp8mPH/P5wr5lktQ/OxoHJPwOU80kqQFmrX5XI3SJTUO3VHFEGgM1+vfKlHbak7DH6tmpN
 1dmstFeaLN5DpB/KHHCWCDer5PoeVvsprY49s2p00dMT2CAJsQizuRZDzrcHGfE2J9dOcE/d
 enl4N6T33KQwVlUu2LQl0+G8TTrdzCk5zrJTYAGh4c8QGLyR+49bLgFBCc/xEGFxdC260r/2
 TpmxHwovzLiYD39jbsk0voq7hGktrozdVOQOSKl8guMz3pziq4eYh7XLWGnTYt5MWi8kwjnt
 Xgqwope+5z93TSVGeopgaF4Xir7B8er1vZjXOIi3rqpsL0ABo8Fsp6nIpcNj/U8VApst1Q2L
 9CmzvxjesdMTrw2ADGo/TYXRBjkUS55VIkjO4olnRaFa8TcqVYo4Az9F5cVL0AACX5woY6F/
 QGNrCV2N9mNXehK1zJtGhmx9KhGlw1Axe9W0AH/veY1jBH9UoJu3cw9Yg6pDMt5Zg9Q55L66
 DvKaJzjoxDSccQcOZUGPoBadHfMB2NfTv8dEapZXj3HqAOPHzA77Tt5q8u2e2scJsUiLMvhZ
 X6Vk9Cv2JaQTOhNSS35uwJzvnxehT+Ydy0ofsuoqSR+4eMC4YDCBfzCGzHyKCb0rEi6s6yYY
 fHBHsZOY6lEYLUI/c44+TPYegtFZAgarxlhj8aYSP4niuZEPydisXrNNDuGZHKLREIHkvCP1
 prZkmAGCwH1DHmZkPF
X-Talos-CUID: 9a23:ZYDc8WHMBK7mAS2EqmJE1mkpFcd5fUGAwX7pf2apCD5pZJysHAo=
X-Talos-MUID: =?us-ascii?q?9a23=3A6jCf4gwwfzHHYh2ZDj42V/7/l9KaqKiXER8Ljsw?=
 =?us-ascii?q?qgeTHFSdCNw6loG+WW5Byfw=3D=3D?=
X-IronPort-AV: E=Sophos;i="6.03,250,1694750400"; 
   d="scan'208";a="127045909"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=dOlLVIS7yHgBbbT3MIxxpyY92wTsmOvZ2H3GuSTre8qEBkaJhGFIaNg+Mt2yi4W/dH3ZvWfDuJb6AqUN9B030tZHoY8wD6ohAG0pEwkLqKeu/PUZGHBcCgJPZURQxgqlFLQ6wgB/UVDqcBMxTl9CtebIUJlh5cmctlt0DHrK75xEngv/Mq7nc2+/K9PogNFXAImJWTRcHMym4CvrYdtvJ+0eZdVHspGZulLE5tOCHXlKxg4dl22gvzvfNrgisAlsblsOUs76MfgDmvrW2J8TFrTUkQk23dRrRPjUDc3UffUxkBewFE5ybBtZRtJE2KGtyT+Taagipv3d/AotzoYf8w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=gT/ZLanBKKH3NG5ArGpysXypruNCCVuHf+jpYnEd68w=;
 b=Ae5em29QljA3eplDB9w6wc/Vfl5X2kgJzFAttHGNEE5jV3iLpZ+oA04Mc7ydpOaU4y4rDywp0RTQiQayJIiE2nFZn3hCzWRZxmKgluz0cchW+LumOvBGOIxFwurk0BTOnhZnqSrPCjEdWFzDziu3pCKmkAFZ4F3gyA4t03iAMtpkNblrp2F/l2gjw2ZxQCKVUq7KNNS2pamu4Z14O1L/1FLFKl4hk1nhEIxq/yUhjvTK0QZfRDNbOWRTzA3dxBrZ9yeegiUM44otc2gahTbQqL15iGnruKE7wNVslJSTrE//LoXDj0YVH6y4/b429QmHa54EjHvepQib1rCa1LPBkw==
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=gT/ZLanBKKH3NG5ArGpysXypruNCCVuHf+jpYnEd68w=;
 b=thy8krdZZif4lTfGJJ18Ni/WVlaSA87HwBJ01fZW71dBHRzL/Or9xzZu/zYSjjgJNWI77WG/niGOXikKuuTiFMZfe2jGcn7eOe62Cmack251WcdXP42dZH2HbTMRsB+2c1rhPrOTkUk0QVd7L0EWbAEvpVUVR96SjJU2f1FKl4s=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Wed, 25 Oct 2023 15:22:09 +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>, Wei Liu <wl@xen.org>
Subject: Re: [PATCH 3/7] x86/PVH: deny Dom0 access to the ISA DMA controller
Message-ID: <ZTkWgWkGANAnA8Tg@macbook>
References: <95129c04-f37c-9e26-e65d-786a1db2f003@suse.com>
 <f0c67b05-c4d8-c588-d2de-e98dc819491c@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <f0c67b05-c4d8-c588-d2de-e98dc819491c@suse.com>
X-ClientProxiedBy: MRXP264CA0043.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:14::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_|BY1PR03MB7261:EE_
X-MS-Office365-Filtering-Correlation-Id: 0b00d7f0-d06a-45da-c114-08dbd55d66bb
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:
	GYB1BKXNQU12R+3C44GyQ7h4d401nV5RIKtc5Kw8oH/9iiEIDgcUqdwXX6TmiZdYZGVG54B+JQKbjxCaQsDwoxvwILkzEOOhO+BBWcSCbL1TwCzS9NATmSvVSHF3CuDOXob4wdQdsDZlSDUkY8LXhJEhZNXVMDoWh9NFYdQDXNShNYWsGcFeqLclhrvC3Pq5t28hbkxX7VrodFdpVXX1rJLtDHOQdqHEwVUTqadrOT7FJNIXP+dEkvXoVuZ+qiKBVoNDus8Jq8ZgYlR5czS9bvlQJ/lFC3bxz/RWu7JZ4aNXRrUgO3IMNJm+vehlA/0qoRHKt3idZaX7pVvrVaMJ6m02Vi+X1iuGjnUbk53fSOmOhkuUBFcyLL0pIUe+6N6cXaAgqY8yoK2n4aJYjtAkBzVmS0ferlgYsSj352zd4s9fZb0NNP1nLZtHK6FC496EFetD465OtT6qg4A+cmPHLAGtohTOQGlRSd4pKqwVCiFIznzh3TbT7I+e9RYdmWmecnb9hUrViz4NnUWRRHpa+XVpXF2IgSv4EYtlw1epE+TyeT2J1/4H1IRL2nffNOov
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)(396003)(376002)(39860400002)(230922051799003)(186009)(64100799003)(451199024)(1800799009)(85182001)(6512007)(54906003)(66946007)(66476007)(66556008)(38100700002)(6916009)(316002)(86362001)(82960400001)(83380400001)(26005)(6506007)(6666004)(4744005)(41300700001)(9686003)(6486002)(8936002)(2906002)(5660300002)(478600001)(33716001)(8676002)(4326008);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?dVVyVWRzMzAzUnI3eE91NWlRckhiTGRZdXZTWWZlaTYrcmRJWDZLRmRQaG9k?=
 =?utf-8?B?aVg0Y1JhbHV2d20raWFkeitheWZWU2FGUzRvN3N2SHdINzdJMjdXL1BJOEx0?=
 =?utf-8?B?dHRCa0oyajI3RVlLZVR1NW10eXhLU2licnRjazdQdldKVng4REZvYzV0c1dj?=
 =?utf-8?B?Y29FTDFKMWZZeDVIcjRMN0djVWlMbFl1ejNIZEU5MFFTd0lSQWllTDFUbzlQ?=
 =?utf-8?B?d2FqakpPOTZqbzMvUWE1Y3dVaEpnU1FHV0x2amdreGJvZmNocWgvK1VhL2ZX?=
 =?utf-8?B?eFNaZWxPVFRvdFBMSnVOQmdXYzZOcit2TUtCREhrbHBzdXdtQThKK0dNbHNS?=
 =?utf-8?B?eVBZZUE1elhYMDI2YmVYUTlKck12enlYTEpIUzRscHRRMU90djUwcVgycWk1?=
 =?utf-8?B?L1J4MXlDUmtSSnlxWnlpTkswSG54M1h0Ukd5QU0yOFE2VEJJaUl3NC91QzBD?=
 =?utf-8?B?VldsaU4zZUhsSytZc21FcURJWEdaUUx0emJqVEE1WHdkMTVkdFB0Tm1jYXgv?=
 =?utf-8?B?a2QrVERnR3A2RzR6Q3lra2hIV3g0RmJGWVNwTlVHczl4TzRMSnVHTzZsNm5D?=
 =?utf-8?B?ZWdONjd6aGdNdE4yT0tKSFpHdW43Zitnd1VpMXVpZUJDOGtFV05RT21Fc2ZN?=
 =?utf-8?B?ZmUrSXlYeGxhZUEzY3dyZGhVbE9lNVd3NkJrVDVraHZpblpmVEZIWW9WS0Ex?=
 =?utf-8?B?TGlPUkxaOGVHK0ZWLzhyalVmWDQxY0F0L2RLSU4xTUROZzhWYkRIdWQxajNz?=
 =?utf-8?B?MWdoVWRWOWlGVlFldlhoMWNhZUxhYitTVGdhWWZFdFVORWg1cmhzMTdUUzZQ?=
 =?utf-8?B?RGlYN3VZVlZIR3dSWnF4ZFFNN0g0aG9QQ1hLL0Vlbzd0VXNSUW9lamRUdVdr?=
 =?utf-8?B?OUhJN2dqRGpTcWhyRmNPRWhod1RYOW5hUkxFbXM4WmJCeWplWWV4eVp2OWh4?=
 =?utf-8?B?ejdyb2trV3MzRk5RbWsrS3dURmFCdlp1ZnlyaGxMd3ZPOVMwSHg5bG5ZSk1T?=
 =?utf-8?B?anBFZjF4SjZJeTdjdkNCWVFKNFlPQ255Y2VBUkxPb0J1MWY3dHczVDZyR2U0?=
 =?utf-8?B?SXF1SWZFQTF1NTNVaVJWRXJraWVjZktoUHNUcFNUcDdSWTZ5T0lCRWtXaXpi?=
 =?utf-8?B?Ykc3cE9oUThaWVQrblJxVXBsUzRZUXNyTXdNK093cVBocHJhUlNyOFRYckgv?=
 =?utf-8?B?bXVyVDU0Z0RkRW9Lank4OUJwK2c0QUxzU0J3UUtnR2xVbHVpd1ZYMitGaGRq?=
 =?utf-8?B?N0hKTU8zMCtPb29VMFlXbWc3cTU2aVZGUDB0MEhSNk9aT2tvTFZXdmo3M2FZ?=
 =?utf-8?B?WitDRGFRVDJ2ZnEyRXhaUnFIVHB5blB4NEUvWHM2RHhFVzA1L0NBNzZEdGFs?=
 =?utf-8?B?SnJzTGpYQkhSenNQeVNua1JHeDR2eStNcVJGTmN3S0xIOWJ0S1VKLzVQZVFz?=
 =?utf-8?B?RnIwbmcwK2pVTE13L3dqWTJnNmM1cXBSR1Q3QUZJbW0xUUpzWC8rMk9nU29L?=
 =?utf-8?B?V2hYVkp0VnlHTEFEOUtPWnVoZzgvVWtWNGlacDQyZGxvS3Z3Y0wrRjM4K0lw?=
 =?utf-8?B?cHhHSHFwc1BzY1NNWSt5UWxGTjFHNHYrTDBleFZpVzk5dXlYY29qWFVsaGlP?=
 =?utf-8?B?a0VhN2wzTmJnUndaWjA1QXhOVkJlVCtrRGtwRUcxYU5KU3RaT1UrQkEyTHQy?=
 =?utf-8?B?UkRoV0swRXJTY0w0WnY2TmkwY1JvN0xQZnRPRisvUDljelNTT2dYUGxzMGFY?=
 =?utf-8?B?dEY2aUhjWG9PU2d1TjVvbW5Gb1UwUnhkSHFyWWZHTGV6TzN0d0VkVktkekhv?=
 =?utf-8?B?RStFL1hSZzRHMFBVUGx5WmpaK2ZaU1JxbGxTd3dNU0xjNTllTjhGWkpFRWZk?=
 =?utf-8?B?ZW01L0EyQ3kxVFJZR2JGbk5SRTkxQ09WNUwzSVZ6VmEweVVPWEVDMzNtZnlL?=
 =?utf-8?B?cWlaMkdDWkdIdlc2cXZUQ3FBQ1FaOGR4NFlpaWZtMUtFL044bWgvcVV1aktY?=
 =?utf-8?B?NzRWTk1rY3crc3p4REhqRmNENXUrUEFpSm4xcnJDY1NhSEs3Nk1EYjFKZGw1?=
 =?utf-8?B?bkJwblJTem51V1dPVFlicUIwMWYyYW1kN1BlYjRla1pJSnU4UFNXc3oyYW1o?=
 =?utf-8?B?UitycjdUUWY5YWJNQU9JYWR6NGdnaFhOdVNqYURqQnV6ZTlXdk1pQ0F0YXBv?=
 =?utf-8?B?eFE9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	iNfKxZrVZt61QlzIb2swTfyLP0KJKe8xKInAE4o1RMZ569tJzdfnKU+0+LCIMh8I+a803sMhtGZSsmgLflieeU3hDTLUPESymUkmkzKZMMo+uOMMY8kWTyW66TlKD6gpaM9J9QRmOfHhh7lFQ6fQN99+MqY/6C0oP5lJTlbZMicTBzjZ/bSfnnYsLSgn0fZ3WvHq7AUqtp0PuFTwekjU3abWYCeE+pVwcrP7wSUc9x5ADy5rHSOPjvtg5kPUzVr0H0Ta4AjD8Njf2gyH8uldXJuLNkFMhfXsjkEEsL3eL3eZKwrN1CsaTASOpSBOj/e8yYTUp+X0JoTuMbK70RsKeevrkUg7p249fi1CZSqmsp46pFocNWkhJkwuWCGA1lbXO+IrPX8kyimZ+visfcjqa7UMgpANVZm3EUBP+lhXdrkyFsXiqbbLBQOoWbFECysb2LfayYNWz3B7Hn3ELg3NPj64M3eWcBVO8eKwvC60TrW3WRePX1tkfmt8VI63carKNR2n0h362RW+kdpqS/15VWV/eu2bt96tuotwwkulIwgTMKWyH8vhbHpYYaKrs5AyMHcoH0EVq01XZYjU7xHaFttzaY7BneK7mb/Kg2cBuOMtIfSmyYk41MBDuzz/rjPxusy896DQ8KUk0LJ0Pd8uMcbSn3WS/PVuyFzqmOXjfGtS8JDRpB6iVyYtc1mnBwkP5gwvYamHlgHYrYl1mVI9Svf9XJdTfdE6D0NOxPY1HXlVZiJNq6IaBHqfsnX4oavAP4ADC7UYpAUMXSGArpqDkkdUcPp8yexJ1A2h3gFkp5ohIBMikrcJLD0vL4n3CiWTSxjnxRCMMw+GAIYUCfvv2w==
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 0b00d7f0-d06a-45da-c114-08dbd55d66bb
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Oct 2023 13:22:13.9245
 (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: QbZSDhlqSKAU392p0AMMj+A626ISQJx1Ae9TYBvhQL0DjMYg0xkHOjpwwreTEcmvMBWcfoL4MXditARXhOfOkA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY1PR03MB7261

On Thu, May 11, 2023 at 02:06:25PM +0200, Jan Beulich wrote:
> Unlike PV, a PVH Dom0 has no sensible way of driving the address and
> page registers correctly, as it would need to translate guest physical
> addresses to host ones. Rather than allowing data corruption to occur
> from e.g. the use of a legacy floppy drive, disallow access altogether.
> 
> 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 Wed Oct 25 13:31:16 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 13:31:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622886.970114 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvdya-0000uz-Go; Wed, 25 Oct 2023 13:31:12 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622886.970114; Wed, 25 Oct 2023 13:31: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 1qvdya-0000us-D6; Wed, 25 Oct 2023 13:31:12 +0000
Received: by outflank-mailman (input) for mailman id 622886;
 Wed, 25 Oct 2023 13:31: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=6q77=GH=suse.com=jgross@srs-se1.protection.inumbo.net>)
 id 1qvdyZ-0000uk-Dc
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 13:31:11 +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 c1cbb850-733a-11ee-9b0e-b553b5be7939;
 Wed, 25 Oct 2023 15:31:09 +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 B32BE1FF60;
 Wed, 25 Oct 2023 13:31:08 +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 35ABB13524;
 Wed, 25 Oct 2023 13:31:08 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap2.suse-dmz.suse.de with ESMTPSA id OUSQC5wYOWWtfQAAMHmgww
 (envelope-from <jgross@suse.com>); Wed, 25 Oct 2023 13: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>
X-Inumbo-ID: c1cbb850-733a-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1698240668; 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=CIp1MmRfnILX4Yf+/tPo8PCx9mdiGDw9VwirV8V2HRU=;
	b=hmRYh6hz54vwvKSQD1N3xdqMCe/WcNW/cqW2TDT24RYBFZhKa1cYnQ5LEQLyNeVEstCwq1
	ne0MIsJJIQnF2G2z3yWZdXxv63KUBGx9+yHZ8UaRJ11lfpy5aplNiYYwZgLSGaXm8n9IEw
	O63sUvqVyPZvbM1Qu6ye8lZYLHdj6Ss=
Message-ID: <fde7ffdd-4d12-4821-ac51-e67e65637111@suse.com>
Date: Wed, 25 Oct 2023 15:31:07 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v3 1/5] x86/paravirt: move some functions and defines to
 alternative
To: Borislav Petkov <bp@alien8.de>
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>,
 Dave Hansen <dave.hansen@linux.intel.com>, "H. Peter Anvin" <hpa@zytor.com>,
 Ajay Kaher <akaher@vmware.com>, 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, Peter Zijlstra <peterz@infradead.org>
References: <20231019091520.14540-1-jgross@suse.com>
 <20231019091520.14540-2-jgross@suse.com>
 <20231025103402.GBZTjvGse9c0utZGO0@fat_crate.local>
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: <20231025103402.GBZTjvGse9c0utZGO0@fat_crate.local>
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature";
 boundary="------------tj5QE79ujQ63w60kqxlnfAda"

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--------------tj5QE79ujQ63w60kqxlnfAda
Content-Type: multipart/mixed; boundary="------------Y4C59w7B0uYx0ocNDu0QItRX";
 protected-headers="v1"
From: Juergen Gross <jgross@suse.com>
To: Borislav Petkov <bp@alien8.de>
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>,
 Dave Hansen <dave.hansen@linux.intel.com>, "H. Peter Anvin" <hpa@zytor.com>,
 Ajay Kaher <akaher@vmware.com>, 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, Peter Zijlstra <peterz@infradead.org>
Message-ID: <fde7ffdd-4d12-4821-ac51-e67e65637111@suse.com>
Subject: Re: [PATCH v3 1/5] x86/paravirt: move some functions and defines to
 alternative
References: <20231019091520.14540-1-jgross@suse.com>
 <20231019091520.14540-2-jgross@suse.com>
 <20231025103402.GBZTjvGse9c0utZGO0@fat_crate.local>
In-Reply-To: <20231025103402.GBZTjvGse9c0utZGO0@fat_crate.local>

--------------Y4C59w7B0uYx0ocNDu0QItRX
Content-Type: multipart/mixed; boundary="------------RDhJM5AvKvHZQHCvrLZdkvG9"

--------------RDhJM5AvKvHZQHCvrLZdkvG9
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: base64

T24gMjUuMTAuMjMgMTI6MzQsIEJvcmlzbGF2IFBldGtvdiB3cm90ZToNCj4gT24gVGh1LCBP
Y3QgMTksIDIwMjMgYXQgMTE6MTU6MTZBTSArMDIwMCwgSnVlcmdlbiBHcm9zcyB3cm90ZToN
Cj4+ICsvKiBMb3ctbGV2ZWwgYmFja2VuZCBmdW5jdGlvbnMgdXNhYmxlIGZyb20gYWx0ZXJu
YXRpdmUgY29kZSByZXBsYWNlbWVudHMuICovDQo+PiArREVGSU5FX0FTTV9GVU5DKHg4Nl9u
b3AsICIiLCAuZW50cnkudGV4dCk7DQo+PiArRVhQT1JUX1NZTUJPTF9HUEwoeDg2X25vcCk7
DQo+IA0KPiBUaGlzIGlzIGFsbCB4ODYgY29kZSBzbyB5b3UgZG9uJ3QgcmVhbGx5IG5lZWQg
dGhlICJ4ODZfIiBwcmVmaXggLSAibm9wIg0KPiBpcyBwZXJmZWN0bHkgZmluZS4NCg0KVGhl
cmUgaXMNCg0KI2RlZmluZSBub3AoKSBhc20gdm9sYXRpbGUgKCJub3AiKQ0KDQppbiBhcmNo
L3g4Ni9pbmNsdWRlL2FzbS9zcGVjaWFsX2luc25zLmggYWxyZWFkeS4NCg0KPiANCj4+ICtu
b2luc3RyIHZvaWQgeDg2X0JVRyh2b2lkKQ0KPj4gK3sNCj4+ICsJQlVHKCk7DQo+PiArfQ0K
Pj4gK0VYUE9SVF9TWU1CT0xfR1BMKHg4Nl9CVUcpOw0KPiANCj4gVGhhdCBleHBvcnQgaXMg
bmVlZGVkIGZvcj8NCj4gDQo+IFBhcmF2aXJ0IHN0dWZmIGluIG1vZHVsZXM/DQo+IA0KPiBJ
dCBidWlsZHMgaGVyZSB3aXRob3V0IGl0IC0gSSBndWVzcyBJIG5lZWQgdG8gZG8gYW4gYWxs
bW9kY29uZmlnLg0KPiANCg0KSXQgbWlnaHQgbm90IGJlIG5lZWRlZCBub3csIGJ1dCBhcmUg
eW91IHN1cmUgd2Ugd29uJ3QgbmVlZCBpdCBpbiBmdXR1cmU/DQoNCg0KSnVlcmdlbg0K
--------------RDhJM5AvKvHZQHCvrLZdkvG9
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-----

--------------RDhJM5AvKvHZQHCvrLZdkvG9--

--------------Y4C59w7B0uYx0ocNDu0QItRX--

--------------tj5QE79ujQ63w60kqxlnfAda
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/Ey8FAmU5GJsFAwAAAAAACgkQsN6d1ii/Ey8W
5wgAgbckOQxRrqBgEkCJd/8/3z8u+REpyF2iEi4XI9Z3IQwLVYqSM6H169LwEmZVNvy57vbLS/y2
DZaq8zG9hVM5577Om5RoQnTjIhgwwLb+wpNCKInr9qmMsOr3xjolptDE2bWZEzHZt1XzSvUZ1Y/p
XzAdKi9yp6dT4Exi1gquxw8egMn0CUNUpJ7tB9NlK5UaIH4I8DCidZIWLbqUrrfS/3dvYK4qhb70
PE3JCtvnF6w59/FDaxNi6NZlAEWmssSQEA9JoNknfaVKhtVJLIauRxuadqgHX83GwWif1hsnwPe4
4vcGjrCPAhw0+qhc5HzUckvC4IKFe8ycGOQWwFSd2g==
=w//9
-----END PGP SIGNATURE-----

--------------tj5QE79ujQ63w60kqxlnfAda--


From xen-devel-bounces@lists.xenproject.org Wed Oct 25 13:45:07 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 13:45:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622892.970134 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qveBu-0003kO-2X; Wed, 25 Oct 2023 13:44:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622892.970134; Wed, 25 Oct 2023 13: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 1qveBt-0003kH-Ub; Wed, 25 Oct 2023 13:44:57 +0000
Received: by outflank-mailman (input) for mailman id 622892;
 Wed, 25 Oct 2023 13: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=e1rq=GH=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qveBr-0003T0-W3
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 13:44:56 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com
 (mail-db3eur04on0614.outbound.protection.outlook.com
 [2a01:111:f400:fe0c::614])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id adf36103-733c-11ee-98d5-6d05b1d4d9a1;
 Wed, 25 Oct 2023 15:44:55 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM9PR04MB8177.eurprd04.prod.outlook.com (2603:10a6:20b:3b7::23)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.11; Wed, 25 Oct
 2023 13:44:52 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6933.011; Wed, 25 Oct 2023
 13:44: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: adf36103-733c-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=lKb4IBSM1JgkurihWas2cwNY2hGa7j9F3AdIBDomV1m8KgDcMKT5idjT2d0rTtUyA36s80TGiMrKbRJ34E9QRdg9lCEPKpXRQvfU4+VKEKcnh+w8qT37NDNVoMNT/c4/1PE77BZAVfqmGn5Gjo/eeK6O8A2XYC8F6lPVH8VSAurlBL08k4Bf8TfeBh1dxeHYgf5WWH86+nsW9YY+FA9RFesoNVBScUe942O/8ZEFMOUSK72BEJuHyRl0AbTogAyAS2aJ6R7PzszkHqDZAnIY7FzphEVAGMJP/p6beb3z8b2xHLqYg6fmsKxIZwZQ8L0WmHyar5EcpNadyU3/S0yk9w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=DjILXGLgkVcQ6YUxi+f72Areck7H5HhId2ONxK1ilTI=;
 b=UUs99f4Qz7SKsT9ZZ3pjObM7osCzOCIVuuKjvnYKWNURc1wiwR+OTTGw0T8NEW4j8o63YrQqTqgh0N8h8QUuOe6diB5XD/N3fIDp6dMuMz+y9rtqp7HHkSmFMUgShPKuLusfu3yqfjL2E+inZTvsoaqKAVzlz0A/c5/4qXv5+SWaSeDze0xM6o7UE3wkpEe57zAf9pkBJxYjFbZtQHROPWWjAdE4M5NMhsOKqfnIj7kz4lPQMTXrwz/WQPbfeyx7crBobshQz/zW29M44OaYKfqNJztHpdx4VmaS+bU+gP5OeZ/FdTzbzZTpifUUebE+42TYzsMfwNUY975tmjagFw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=DjILXGLgkVcQ6YUxi+f72Areck7H5HhId2ONxK1ilTI=;
 b=oNMsuFRRvE5lovoJBawsurSUCLgToYtSdffeu96/eIq+ziqDK0eUiN1xZQPpCpsM+AnfaRBQi+AGQLUhE0gs2utCJ4Vs9UBiqpvrfD3TCkRBYqnHtpMWOGyiFzQ8XrA515P+3K2HnQqIWyP0ynesNTLFczef089o2OQDOijH4ZVyeG9I9lY55L4wsh+0+4DRWyhslwc/Ui4sV1Wx1o74rGCK2qHZrrjVL9u6nO7lDTSzvG8ErtlX1ga84Lbb179/SENP6pMCXhXc3HBArTh6G3MJnO2CYr9SCJkuZ6jPdkIVzRepGI8TuxUt3IrU79I/uNeVdpQEHAMr/iDh+9Jd5w==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <b07f9709-5f4c-a079-140e-c3da371929df@suse.com>
Date: Wed, 25 Oct 2023 15:44:49 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [RFC PATCH] x86/vlapic: address a violation of MISRA C:2012 Rule
 16.2
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.cooper3@citrix.com, roger.pau@citrix.com, Wei Liu <wl@xen.org>,
 Paul Durrant <paul@xen.org>, George Dunlap <george.dunlap@citrix.com>,
 xen-devel@lists.xenproject.org
References: <99114c15a4256e6a0f39bd6de232ee4b8ad9b587.1698239734.git.nicola.vetrini@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <99114c15a4256e6a0f39bd6de232ee4b8ad9b587.1698239734.git.nicola.vetrini@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0058.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:49::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_|AM9PR04MB8177:EE_
X-MS-Office365-Filtering-Correlation-Id: 0133ef58-3a5e-4689-a764-08dbd5609058
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	MiTAbo8FNvdY/RcHovVQq6rQF/1TWiIOR6zUKHBlXTn8QZTFdQ8OqZQN2QlZ280evgCPzg8WV3g0LkCTm6QemE1ACVAT98VH0LV32dbodSNOkufH/LEdxiISqa1tps3W482QXpbIM8/lruNbAvVK64MMWBDFbBC87hMZ06homtZEYS6sYUDf7lKIAUta/eMCfZiIDPygsY6uzbrAgUhZBixu70+r0JQdHcpB/PlUUR8t5WDiAxwbW/xwU/EWfCPkkWDEsPZ90nV6xsi9HuMY/kXLK049Q+K6qFUbLEt2nvFi1l8LXRSyLHRi8PITYrkZrEsoQQIp/qbfyYEF+vNrHjMi2++cBJNk8lQI5LEN7wJ0sxJOS+WkiFcO5vnMLWs9jR+eZQs17Fu58HHygRnpH1WgyxYdFchAswBMGFCcf/4egHNbYqzG8R7d4o/1CTyNyy/TFrZ2nL0wrz8ARn+qwHYnjw4/ER495XqcmiDTZqJQIApA0TFWZrehpcDYqSAG5Gf2udjMrQNBRrSDk3T7pOImJIfR1J3PP1E/dTwl6QQ2tmitrYZZYZh2MejCaA140EwmB6SFa3kmAy7MIH0qCODxu9B1kU83IqS9k0h41zquyjhy01zrAWQjWaw3lLK9sn/5dKL0saDYVqULbAVhnA==
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)(230922051799003)(64100799003)(186009)(451199024)(1800799009)(8676002)(2906002)(8936002)(4326008)(41300700001)(7416002)(5660300002)(66899024)(6666004)(36756003)(2616005)(26005)(53546011)(38100700002)(6506007)(6512007)(83380400001)(31686004)(66556008)(54906003)(6916009)(66946007)(66476007)(86362001)(31696002)(316002)(478600001)(6486002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?UXJoMVZLOVo3UU9Ncis4dm9uNjdJNmRLSjNUK1o2c09JUzNxcVZnakc1T3pS?=
 =?utf-8?B?azJnVm1YMmk2NWMyai9pdDNEdG5uT2tlT0lOWW1rMTlERmZ4RDNXelMzT21F?=
 =?utf-8?B?MFl4TkNpQXFUdCs3cG9SWWM5SXNtY1pURGpFU05MeUNpQkFxRHNHOE5Waloy?=
 =?utf-8?B?RmdiOTY5UGIrQmhpb0c5TmJWZ2o1Nmp6aE1LRXJTZ0tuSmZUM2ZVT1VidXlB?=
 =?utf-8?B?ZXl3MUdrMk0weWFweXg5MEU5d3Z0Tm43ejZMa05oRmZPYjEzT3hpa3BVcnJU?=
 =?utf-8?B?d2d3K2FVYlVLNGdwQWg3dDBGMklKL2RuMzBLNFYraHltUXJzcDJKcEJpSXVt?=
 =?utf-8?B?TkhWUlJ6YlZBdlFIa0VrWWs1Z0JVRndWa1lwUUcyQmYrNExjdG93RjdNU3hq?=
 =?utf-8?B?YUsvY0R6eGx3U0pvQVoybTIrWTFtaXNlYzFmMWJuajRFSlNWUU5iRDZ0dW9v?=
 =?utf-8?B?czA3M3RSQVJZZmlvZUp2YS9mZ1dPR0NZMnNvZEJ6RmtuTjg3TnFTN2lsaVhr?=
 =?utf-8?B?NDFIQ0tqeUdlcW1kQVM1bUNlU0NZcHlRaFdtM1dvTzlWVGQ1RkJwTkhTUzNH?=
 =?utf-8?B?Z0swaVZBQVdwSUEwMFRYdXRJNDA0MHc3VEdpMVcrWC9RUTduL0M2Y24yeit0?=
 =?utf-8?B?b3NVNkVMVTNKakFQZ25JRDVUWU5YOW5MbURHTi9uRDR6alM5cEx5QkRKcnFG?=
 =?utf-8?B?YUlESC9JejZMK0NtOHpEQlRUVy9Zd09YZS80V0d3QVAxZTMwUktLWTRIOVFY?=
 =?utf-8?B?N21Tb0RGTzRyRXNXYldoS3huQ0xqZytQYnBlVnZCa2R6YXVjVWYxdkVtazZQ?=
 =?utf-8?B?SEN4WmFueklRUW03VExMUlIyZHl4aVRJVXNISnRDVVBqeitRTE9FQUs4ek9w?=
 =?utf-8?B?ZnR6dlAzcnQ4WmpkQTRIN2QvMURZdFI5dlNjT2tkNmFZYXBNM1Z4ZlN5aVhz?=
 =?utf-8?B?R1p4K2RvK3AvZEg3NG5PaHhYeFUzeTl6TzBYbDdEc1RsT0lNR01rejJHaEhZ?=
 =?utf-8?B?cW9NUDZ1NXhrWFhZTGxVN1RPdytoV0lhZWJaQlhvZ2xpa2YxWThwdWVLWWhF?=
 =?utf-8?B?YUhyd2Vkd3ZBMm9qalNiU25MdkpXZ0lSOTMyNk5tQVVqeXpld1NOUlFrMTdt?=
 =?utf-8?B?Ny9wSXdIWVZMZDhLaWdtRXN6Z3RZWGUvWE0vZ2tiKzR1dmdjZW0yWEptYzZB?=
 =?utf-8?B?MHh2cnprUjAwRGZPalZEVUppWE0yYzJsT0J3VDFFUzBVL0Jxd2E2MVVSSDRC?=
 =?utf-8?B?UkhJWGxKcyt5S3paSzdZSEN1YjlJSEpUc3g4VmYzaGJwU3U1cTZKcC9yOU53?=
 =?utf-8?B?VGNZRzhQOXpzanFWUTJQSFk1YnVjQS9kbGJNUGN1WnlDMHB0WS9ObGlSVEdL?=
 =?utf-8?B?SnR0ZmwwYU1ES3ZQbWJVamhReE4yTE5sS2NDSkVmdHhwV2J2bW1BeHljSzhr?=
 =?utf-8?B?dDVId2lmQVBRcXU2SnQ1NU5DcURueXRTREU1allJSzhCM1JtUmpsTzl5dmky?=
 =?utf-8?B?aFVEc3FRa1RDSUk5YWR3eTZIdWFxVXFBTGVCRUowY3g1dFVxTGowb3JiN3B5?=
 =?utf-8?B?a0FRcWVCbVVWZGw4ZDdBWnBpYVQ0N1F0V2JDM3ZnaEg2dlJXSGFSaWFxYTdv?=
 =?utf-8?B?N2JJckV4L1hPR3cvU0ZySW4xblEwbzNuMDJpZy9NTjdNQ0plNHVGalVzMVRM?=
 =?utf-8?B?M2lrUkp6MXFaQkc3V0FDaDhvaXFlb0dlaWNTVm0zUDJFZlBlcnFHSDhtdDJX?=
 =?utf-8?B?VHpMK29Ib0dMZU1JTWUrV0t5d1g3SHRiN3c0QkZCaUJjVTlMU244MmFYRFBP?=
 =?utf-8?B?U1VidGFaWExlRDJPc2k3Y1ZTSmNsN1VXQUtWVmlDRDlsdytPQUpTNHJYNGo1?=
 =?utf-8?B?WkhZQURMRmFRYzg3SVZsSTRtajAwdUQzYzVBc29rQWtjcU5sR05HZGdVVStL?=
 =?utf-8?B?YnpPZUQ3OVdZdkUyUTRwWGNVM0luMFYyOElkYnhlTG1MRzhZeDE5R29uOGJx?=
 =?utf-8?B?bEFxOEx2M2RlYldSUWRKaDdCZDc4ZVMxWVZXWnVFSjlYckErSTRUZllQZmJ0?=
 =?utf-8?B?TTREVDlBVUZreVliejdVL0pjUUJZb1Q3Z054RzRjUHJEWkk0eGptS3R6dExE?=
 =?utf-8?Q?RBqhL0PAhk34hUkEkWqyFVCEA?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 0133ef58-3a5e-4689-a764-08dbd5609058
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Oct 2023 13:44:52.2101
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: PFy4Rs+nE4dIOzJAxpvMhV6XUOfQmrUCqrwcXqIgnkgtzlcUHKsW0uLUeSmccMBl7YZH0totFz80AEeXWkZ+AA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR04MB8177

On 25.10.2023 15:22, Nicola Vetrini wrote:
> The clauses of a switch should be enclosed directly by a switch
> statement to make the code more easily understandable and less
> prone to errors.
> 
> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
> ---
> This patch is mainly indended to probe how the community, especially the
> maintainers, would receive such modifications to the code, and whether there
> would be consensus on the rule's adoption. Anyone is welcome to
> give feedback on this, especially on the x86 side, where this pattern
> is used more frequently.

The chosen instance (below) is one where it is relatively easy to argue
that putting the default label in an inner scope isn't much of a
difference as far as overall code size / redundancy is concerned. But
there are (perhaps many) other cases where the gains of using what
Misra dislikes are much higher.

This is another one of the various more recently discussed rules where
I think Misra is just going too far, dictating various aspects of style
for - in my personal view - no real gain. Furthermore, if you could
pick some more involved example (arch/x86/x86_emulate/x86_emulate.c may
yield a few "good" examples), I'd like to learn how you propose to
change such code, with two up-front constraints:
- no added redundancy,
- no new goto.
Either of them in replacement code would go against what the description
above states as a goal.

Jan

> --- a/xen/arch/x86/hvm/vlapic.c
> +++ b/xen/arch/x86/hvm/vlapic.c
> @@ -1034,10 +1034,10 @@ int guest_wrmsr_x2apic(struct vcpu *v, uint32_t msr, uint64_t val)
>      case APIC_EOI:
>      case APIC_ESR:
>          if ( val )
> -        {
> -    default:
>              return X86EMUL_EXCEPTION;
> -        }
> +        break;
> +    default:
> +        return X86EMUL_EXCEPTION;
>      }
>  
>      vlapic_reg_write(v, array_index_nospec(offset, PAGE_SIZE), val);



From xen-devel-bounces@lists.xenproject.org Wed Oct 25 13:45:07 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 13:45:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622891.970123 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qveBr-0003UE-OO; Wed, 25 Oct 2023 13:44:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622891.970123; Wed, 25 Oct 2023 13: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 1qveBr-0003U7-Lu; Wed, 25 Oct 2023 13:44:55 +0000
Received: by outflank-mailman (input) for mailman id 622891;
 Wed, 25 Oct 2023 13: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=KNSz=GH=alien8.de=bp@srs-se1.protection.inumbo.net>)
 id 1qveBq-0003T0-Ee
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 13:44:54 +0000
Received: from mail.alien8.de (mail.alien8.de [65.109.113.108])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id ac25864e-733c-11ee-98d5-6d05b1d4d9a1;
 Wed, 25 Oct 2023 15:44:52 +0200 (CEST)
Received: from localhost (localhost.localdomain [127.0.0.1])
 by mail.alien8.de (SuperMail on ZX Spectrum 128k) with ESMTP id 8D95A40E00B3; 
 Wed, 25 Oct 2023 13:44:50 +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 Fc0bnT_9t_Uq; Wed, 25 Oct 2023 13:44:49 +0000 (UTC)
Received: from zn.tnic (pd95304da.dip0.t-ipconnect.de [217.83.4.218])
 (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 6C1F840E0187;
 Wed, 25 Oct 2023 13:44: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: ac25864e-733c-11ee-98d5-6d05b1d4d9a1
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=1698241488; bh=+ieImtZGj+VOp5ccDeztXRroa/BoBO+stfynN77x4s4=;
	h=Date:From:To:Cc:Subject:References:In-Reply-To:From;
	b=OMcAKbyUkyhuqj1UFc9ljgQxXx/4iDnowTXeq7KTMybgZzdM7S0yqlfMFwMNQogK+
	 o7cds6WEPJevCOXRK3/plplccqOSImH8RhAjRDu+ivVcaAoc4+flNZBJ7P9p8ExOz9
	 eE6xO9TRFbtCyPrNWN1aMmrvTXdra/rLEIhKFMcK+Z4FWklW+46Mr9NfRFTWdx442C
	 vQf0ziYnpiAejiwLDVDqN/3skD2n8Z8VmLa5GFnLcfvXxT/EIk4OpvgDUK4Kw/5CU+
	 2eZJh92QixzUyta0Vcn51qj3YFDBJbP1Qu2fLKY1Nqc3iTmCfvIZIa63Fmx8KRJAyb
	 aGPCeBmtg5fkgb82mRF6wA3bM6IXyjEVs4QQm2Pare6nAha+WmH3QeCz+RSlhdN7iH
	 cYkUWvfPzT8EspK1cwlTD6AHy7W2Zz0PYeC/aRQuiBN0ts4jvY6jpTRaJ+4Ak0MBBf
	 dMe+r6HUKUPf5a8xS9nhwlgsmk7RaIIsNG35ykeiNGOJd8Ktxewx9K0xkXwYuSHMjR
	 TGBdHsXswCUnMdLud8l56yK+te3+72BH2EL+90wue8aqWKUjRW+6AZDoIcsAvCPf0L
	 L/HnqzY/x2fUdh7331lw3NQ5alr6ljA/L+9+f8+l5oeP3Xb7gR68t6Z+R0JI3jOSZr
	 TgkiOe1BkQgz8i9OugTPbVGQ=
Date: Wed, 25 Oct 2023 15:44:25 +0200
From: Borislav Petkov <bp@alien8.de>
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>,
	Dave Hansen <dave.hansen@linux.intel.com>,
	"H. Peter Anvin" <hpa@zytor.com>, Ajay Kaher <akaher@vmware.com>,
	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,
	Peter Zijlstra <peterz@infradead.org>
Subject: Re: [PATCH v3 1/5] x86/paravirt: move some functions and defines to
 alternative
Message-ID: <20231025134425.GEZTkbua5w0bI2GQlP@fat_crate.local>
References: <20231019091520.14540-1-jgross@suse.com>
 <20231019091520.14540-2-jgross@suse.com>
 <20231025103402.GBZTjvGse9c0utZGO0@fat_crate.local>
 <fde7ffdd-4d12-4821-ac51-e67e65637111@suse.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <fde7ffdd-4d12-4821-ac51-e67e65637111@suse.com>

On Wed, Oct 25, 2023 at 03:31:07PM +0200, Juergen Gross wrote:
> There is
> 
> #define nop() asm volatile ("nop")
> 
> in arch/x86/include/asm/special_insns.h already.

Then call it "nop_func" or so.

> It might not be needed now, but are you sure we won't need it in future?

No, I'm not.

What I'm sure of is: stuff should be added to the kernel only when
really needed. Not in the expectation that it might potentially be
needed at some point.

Thx.

-- 
Regards/Gruss,
    Boris.

https://people.kernel.org/tglx/notes-about-netiquette


From xen-devel-bounces@lists.xenproject.org Wed Oct 25 13:51:39 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 13:51:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622899.970144 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qveIJ-0005qb-Oj; Wed, 25 Oct 2023 13:51:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622899.970144; Wed, 25 Oct 2023 13:51: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 1qveIJ-0005qU-Kn; Wed, 25 Oct 2023 13:51:35 +0000
Received: by outflank-mailman (input) for mailman id 622899;
 Wed, 25 Oct 2023 13:51: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=kNCc=GH=citrix.com=prvs=655f6113c=edvin.torok@srs-se1.protection.inumbo.net>)
 id 1qveIH-0005qO-K2
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 13:51:33 +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 98e16191-733d-11ee-98d5-6d05b1d4d9a1;
 Wed, 25 Oct 2023 15:51: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: 98e16191-733d-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1698241891;
  h=from:to:cc:subject:date:message-id:mime-version:
   content-transfer-encoding;
  bh=nWlfqUZNWWkypZXn/me9OvdRKuV0M++1ZoJRq6eCasg=;
  b=WeYoS4RQm8wnP2AS+cA762Xc4N8nCnvewUu1S+vcQR6C+rp1sKLZqO9T
   S3H2v4h8RQo7pi3bVP1oRYj0zNgmPCjR5rTMG5lpAzpchYgsX1YHpMJpK
   7bXl1uTxCkd38ph8xr0vbBfDik35h0es5iScCWNIqJRoH7tfS+T6xXEC8
   w=;
X-CSE-ConnectionGUID: 2Icqk/O5RjiY7a073aoa5A==
X-CSE-MsgGUID: qJ2EsNZNQ/2Uhsfy5qXu3A==
Authentication-Results: esa6.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
X-SBRS: 4.0
X-MesageID: 125845632
X-Ironport-Server: esa6.hc3370-68.iphmx.com
X-Remote-IP: 162.221.159.70
X-Policy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:rgh4va7H7uw4ixDPYCOQjAxRtFbHchMFZxGqfqrLsTDasY5as4F+v
 mocUW7VPvbZMWP3Ltt3aI6//EJSvZXTzYIwGQFuqyFmHi5G8cbLO4+Ufxz6V8+wwm8vb2o8t
 plDNYOQRCwQZiWBzvt4GuG59RGQ7YnRG/ykTraCY3gtLeNdYH9JoQp5nOIkiZJfj9G8Agec0
 fv/uMSaM1K+s9JOGjt8B5mr9lU355wehBtC5gZlPKgR4QeH/5UoJMl3yZ+ZfiOQrrZ8RoZWd
 86bpJml82XQ+QsaC9/Nut4XpWVTH9Y+lSDX4pZnc/DKbipq/0Te4Y5iXBYoUm9Fii3hojxE4
 I4lWapc6+seFvakdOw1C3G0GszlVEFM0OevzXOX6aR/w6BaGpdFLjoH4EweZOUlFuhL7W5mr
 90TMTNKSU25heOHn7vjFbJlgc1+BZy+VG8fkikIITDxCP8nRdbIQrnQ5M8e1zA17ixMNa+AP
 YxDM2MpNUmRJUIXUrsUIMtWcOOAi3XhcjsetFWPoqkf6GnP1g1hlrPqNbI5f/TTH5gFwhvG/
 TiuE2LRGzNAGce5+xy8tSiRhvTBjH7iaJ9JPejtnhJtqALKnTFCYPEMbnOrrP/8hkOgVtZ3L
 00P5jFovaU07FasTNT2Q1u/unHslgEYc8pdFas98g7l90bPy1/HXC5eFGcHMYF38pBuLdA36
 rOXt4nIDiVs95rIc3Ccx+id9WzpMC8ccEZXMEfoUjA5D8nfTJAb10yeHow7TP/k0LUZChmqn
 WrW8nJWa6E7yJ5Tjfvmpzgrlhr2/vD0ohgJChI7t45Pxih+foehL7ew81nd4u0owG2xFQLZ4
 yFsdyRz9okz4XCxeM+lGrxl8EmBvartDdElqQcH82Md3zqs4WW/Wotb/StzIkxkWu5dJ265O
 RCJ414Av88OVJdPUUORS9jvYyjN5fG9fekJq9iONoYeCnSPXFTvEN5Sib64gDm2zRlEfVAXM
 paHa8e8ZUsn5VBc5GPuHY81iOZ3rh3SMEuPHfgXOTz7i+vBDJNUIJ9ZWGazghcRtvzd/FmPr
 4oEaqNnCXx3CYXDX8UeyqZLRXhiEJTxLcyeRxB/HgJbHjdbJQ==
IronPort-HdrOrdr: A9a23:D4egK6ARMFboNYDlHei4sseALOsnbusQ8zAXPh9KJSC9I/b0qy
 nxpp4mPEfP+U4ssHFJo7C90dq7MAjhHP9OkMEs1NKZN2bbUQSTXeVfBOfZrQEIXheOj9K1tp
 0QOJSWaueAamSS5PySiDVQUexQpuVvmJrYwts2pE0dLj2CHpsQijuRfTzrcHGeKjMmObMJUL
 6nouZXrTupfnoaKuy9G3k+RuDG4/HbiZ78ZhYCJhg/rC2Dlymh5rLWGwWRmk52aUID/Z4StU
 z+1yDp7KSqtP+2jjfaym/o9pxT3Pfx19dZA8SIq84NbhHhkByhaohNU6CL+Bo1vOaswlA3l8
 SkmWZrA+1Dr1fqOk2lqxrk3AftlBw07WX59FOeiXz/5eTkWTMTEaN69M5kWyqcz3BlkMB30a
 pN0W7cnYFQFwn8kCP04MWNfw12l3CzvWEpnYco/jNiuMolGfFsRL4kjQNo+aQ7bWHHAUccYa
 tT5fTnlbdrmJWhHjXkVydUsZiRtz8Ib227qwA5y7GoOnFt7Q9EJ0d0/r1iol4QsJ06UJVK/O
 LCL+Bhk6xPVNYfaeZnCP4GWtbfMB27ffvgChPmHb3cLtByB1vd75rspLkl7uCjf5IFiJM0hZ
 TaSVtd8Wo/YVjnB8GC1IBCtkmlehT1YR39jsVFo5RpsLz1Q7TmdSWFVVA1isOl5/ESGNfSVf
 q/MI9fR/XjMWztE4BU2BCWYeglFVAOFMkO/torUVOHpczGboXsq+zAaf7WYKHgFD41M1mPcE
 frnAKDV/mownrbKkMQ2iKhJU8FUnaPjK5NLA==
X-Talos-CUID: 9a23:nYLp821f5ExvxWeDP4fP9LxfQOEua36a6yrqIU6JVm8xF+acTlbN0fYx
X-Talos-MUID: 9a23:6qsXFwRoGCyoWxqORXT1pmtPL+FaxZ3pUn0NipsX5tC0KHdZbmI=
X-IronPort-AV: E=Sophos;i="6.03,250,1694750400"; 
   d="scan'208";a="125845632"
From: =?UTF-8?q?Edwin=20T=C3=B6r=C3=B6k?= <edvin.torok@citrix.com>
To: <xen-devel@lists.xenproject.org>
CC: =?UTF-8?q?Edwin=20T=C3=B6r=C3=B6k?= <edwin.torok@cloud.com>, Wei Liu
	<wl@xen.org>, Anthony PERARD <anthony.perard@citrix.com>
Subject: [PATCH] xenstored: do not redirect stderr to /dev/null
Date: Wed, 25 Oct 2023 14:50:54 +0100
Message-ID: <87fbae122fd2d75852026d621358031c72c9a36d.1698227069.git.edwin.torok@cloud.com>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit

From: Edwin Török <edwin.torok@cloud.com>

By default stderr gets redirected to /dev/null because oxenstored daemonizes itself.
This must be a left-over from pre-systemd days.

In ee7815f49f ("tools/oxenstored: Set uncaught exception handler") a workaround was added to log exceptions
directly to syslog to cope with standard error being lost.

However it is better to not lose standard error (what if the connection to syslog itself fails, how'd we log that?),
and use the '--no-fork' flag to do that.
This flag is supported by both C and O versions of xenstored.

Both versions also call sd_notify so there is no need for forking.

Leave the default daemonize as is so that xenstored keeps working on non-Linux systems as before.

Signed-off-by: Edwin Török <edwin.torok@cloud.com>
---
 tools/hotplug/Linux/init.d/sysconfig.xencommons.in | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/tools/hotplug/Linux/init.d/sysconfig.xencommons.in b/tools/hotplug/Linux/init.d/sysconfig.xencommons.in
index 433e4849af..09a1230cee 100644
--- a/tools/hotplug/Linux/init.d/sysconfig.xencommons.in
+++ b/tools/hotplug/Linux/init.d/sysconfig.xencommons.in
@@ -52,7 +52,7 @@
 # like "--trace-file @XEN_LOG_DIR@/xenstored-trace.log"
 # See "@sbindir@/xenstored --help" for possible options.
 # Only evaluated if XENSTORETYPE is "daemon".
-XENSTORED_ARGS=
+XENSTORED_ARGS=--no-fork
 
 ## Type: string
 ## Default: Not defined, tracing off
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Wed Oct 25 13:53:17 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 13:53:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622903.970154 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qveJw-0006Pc-1f; Wed, 25 Oct 2023 13:53:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622903.970154; Wed, 25 Oct 2023 13:53: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 1qveJv-0006PV-V5; Wed, 25 Oct 2023 13:53:15 +0000
Received: by outflank-mailman (input) for mailman id 622903;
 Wed, 25 Oct 2023 13:53: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=kNCc=GH=citrix.com=prvs=655f6113c=edvin.torok@srs-se1.protection.inumbo.net>)
 id 1qveJt-0006PN-14
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 13:53:13 +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 d51db5e2-733d-11ee-98d5-6d05b1d4d9a1;
 Wed, 25 Oct 2023 15:53: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: d51db5e2-733d-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1698241991;
  h=from:to:cc:subject:date:message-id:mime-version:
   content-transfer-encoding;
  bh=1rTF1L7sceyYkO4xRn03+9nOQi2HxeA/98hX8pyoRUE=;
  b=S+288GXA/EL1vOiXlXuQF0CwrogwRsJcxQPeXUskICGciSTswDWWQtkM
   OfsW/k1mWAKkqlIJBKE0djBPVfhYcdQQtdl/xBQN4mHkKrufmhfky4bm5
   uyJEYT19cNglmgHFDlKSNYsIGqjATqBCTsm0cceS0BozYPq5sxEYjCHCh
   M=;
X-CSE-ConnectionGUID: 5ENMPXBDTLaMVxiih2iwPA==
X-CSE-MsgGUID: 099osSSCQquNCP3mP7cA0A==
Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
X-SBRS: 4.0
X-MesageID: 125204398
X-Ironport-Server: esa5.hc3370-68.iphmx.com
X-Remote-IP: 162.221.159.70
X-Policy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:vK5nsaD02AmzTxVW/1Djw5YqxClBgxIJ4kV8jS/XYbTApD0k0jJWy
 mAcXzzSP6qKN2f1fI0gbI61pksG6pWBydAxQQY4rX1jcSlH+JHPbTi7wuUcHAvJd5GeExg3h
 yk6QoOdRCzhZiaE/n9BCpC48D8kk/nOH+KgYAL9EngZbRd+Tys8gg5Ulec8g4p56fC0GArIs
 t7pyyHlEAbNNwVcbCRMsMpvlDs15K6p4WtC4wRnDRx2lAS2e0c9Xcp3yZ6ZdxMUcqEMdsamS
 uDKyq2O/2+x13/B3fv8z94X2mVTKlLjFVDmZkh+AsBOsTAbzsAG6Y4pNeJ0VKtio27hc+ada
 jl6ncfYpQ8BZsUgkQmGOvVSO3kW0aZuoNcrLZUj2CA6IoKvn3bEmp1T4E8K0YIwp8tRJFl+3
 9AkDDkoUACChuLswa2DY7w57igjBJGD0II3v3hhyXfSDOo8QICFSKLPjTNa9G5u3IYUR6+YP
 pdIL2U3BPjDS0Qn1lM/BZ4gneHumn7ldD5wo1OJv6snpWPUyWSd1ZC0aoePIoDRFJU9ckCw/
 jOX+H/COTojLcG54gLe90rzjcaXtHauMG4VPOLhraM76LGJ/UQDBRtTWValrP2Rjk+lR8kZO
 0ES4jApr6U56AqsVNaVdxGxvnOspBMXXNtUVeog52ml1a788wufQG8eQVZ8hMcO7ZFsA2Zwj
 xnQwoKvWmQHXKCppWy1q5qyiAuCEwQpCWYnWz8FTAtf4sbbidRm5v7QdeqPAJJZn/WsR2Cgm
 WjW/Xlg71kApZRVjfnlpzgrlxrp9sCTEFNvjunCdjj9hj6VcrJJcGBBBbLzxvFaJYLRdUGbv
 X4LgKByB8hVVsnSzURhrAgXdYxFBspp0xWG2DaD57F7q1yQF4eLJOi8Gg1WKkZzKdojcjT0e
 kLVsg45zMYNbSvzMvUtPtPqW5lCIU3c+TLNDK68gj1mO8UZSeN61Hs2OR74M57FyyDAbp3Ty
 b/EKJ3xXB72+IxszSasRvd17ILHMhsWnDuJLbiilkjP7FZrTCLNIVvzGAfUP79RAWLtiFm9z
 uuzwOPQlEwDDLeiPnKKmWPRRHhTRUUG6VnNg5Q/Xoa+zsBOQgnN19e5LWsdRrFY
IronPort-HdrOrdr: A9a23:r0IrP6OxT0tRPMBcTjejsMiBIKoaSvp037BK7S1MoNJuEvBw9v
 re+sjzsCWftN9/Yh4dcLy7VpVoBEmsl6KdgrNhWotKPjOW21dARbsKheffKn/bakjDH4Zmvp
 uIGJIObOEYY2IasS77ijPIbOrJwrO8gd6VbTG19QYdceloAZsQnzuQEmygYzRLrJEtP+tFKH
 KbjPA33waISDAsQemQIGIKZOTHr82jruObXfZXbyRXkzVnlFmTmcTHLyQ=
X-Talos-CUID: 9a23:vGj2y25KkqS3s1oiU9ssqWMyP/gVWFHh6H71HV+5CGYzSaKtYArF
X-Talos-MUID: 9a23:DUXQgAoxbubhTg0oNfsez2kzZcBz2J+FMVkQt74+4My8aidZYx7I2Q==
X-IronPort-AV: E=Sophos;i="6.03,250,1694750400"; 
   d="scan'208";a="125204398"
From: =?UTF-8?q?Edwin=20T=C3=B6r=C3=B6k?= <edvin.torok@citrix.com>
To: <xen-devel@lists.xenproject.org>
CC: =?UTF-8?q?Edwin=20T=C3=B6r=C3=B6k?= <edwin.torok@cloud.com>, "Christian
 Lindig" <christian.lindig@citrix.com>, David Scott <dave@recoil.org>, Wei Liu
	<wl@xen.org>, Anthony PERARD <anthony.perard@citrix.com>
Subject: [PATCH] tools/ocaml/Makefile.rules: use correct C flags when compiling OCaml C stubs
Date: Wed, 25 Oct 2023 14:52:42 +0100
Message-ID: <fd09742f7c2191be3cdfafbd4c7cccb10eb0e3a2.1698240589.git.edwin.torok@cloud.com>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit

From: Edwin Török <edwin.torok@cloud.com>

The code currently uses GCC to compile OCaml C stubs directly,
and although in most cases this works, it is not entirely correct.

This will fail if the OCaml runtime has been recompiled to use and link with ASAN for example
(or other situations where a flag needs to be used consistently in everything that is linked into the same binary).

Use the OCaml compiler instead, which knows how to invoke the correct C compiler with the correct flags,
and append the Xen specific CFLAGS to that instead.

Drop the explicit -fPIC and -I$(ocamlc -where): these will now be provided by the compiler as needed.

Use -verbose so we see the actuall full C compiler command line invocation done by the OCaml compiler.

Signed-off-by: Edwin Török <edwin.torok@cloud.com>
---
 tools/ocaml/Makefile.rules | 2 +-
 tools/ocaml/common.make    | 2 --
 2 files changed, 1 insertion(+), 3 deletions(-)

diff --git a/tools/ocaml/Makefile.rules b/tools/ocaml/Makefile.rules
index 0d3c6ac839..74856e2282 100644
--- a/tools/ocaml/Makefile.rules
+++ b/tools/ocaml/Makefile.rules
@@ -37,7 +37,7 @@ ALL_OCAML_OBJS ?= $(OBJS)
 	$(call quiet-command, $(OCAMLYACC) -q $<,MLYACC,$@)
 
 %.o: %.c
-	$(call quiet-command, $(CC) $(CFLAGS) -c -o $@ $<,CC,$@)
+	$(call quiet-command, $(OCAMLOPT) -verbose $(addprefix -ccopt ,$(CFLAGS)) -c -o $@ $<,CC,$@)
 
 META: META.in
 	sed 's/@VERSION@/$(VERSION)/g' < $< $o
diff --git a/tools/ocaml/common.make b/tools/ocaml/common.make
index 0c8a597d5b..629e4b3e66 100644
--- a/tools/ocaml/common.make
+++ b/tools/ocaml/common.make
@@ -9,8 +9,6 @@ OCAMLLEX ?= ocamllex
 OCAMLYACC ?= ocamlyacc
 OCAMLFIND ?= ocamlfind
 
-CFLAGS += -fPIC -I$(shell ocamlc -where)
-
 OCAMLOPTFLAG_G := $(shell $(OCAMLOPT) -h 2>&1 | sed -n 's/^  *\(-g\) .*/\1/p')
 OCAMLOPTFLAGS = $(OCAMLOPTFLAG_G) -ccopt "$(LDFLAGS)" -dtypes $(OCAMLINCLUDE) -cc $(CC) -w F -warn-error F
 OCAMLCFLAGS += -g $(OCAMLINCLUDE) -w F -warn-error F
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Wed Oct 25 13:57:48 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 13:57:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622909.970163 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qveOC-0007TT-Ie; Wed, 25 Oct 2023 13:57:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622909.970163; Wed, 25 Oct 2023 13:57: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 1qveOC-0007TM-Fw; Wed, 25 Oct 2023 13:57:40 +0000
Received: by outflank-mailman (input) for mailman id 622909;
 Wed, 25 Oct 2023 13: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=6q77=GH=suse.com=jgross@srs-se1.protection.inumbo.net>)
 id 1qveOB-0007S3-Ve
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 13:57:39 +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 749f3560-733e-11ee-9b0e-b553b5be7939;
 Wed, 25 Oct 2023 15:57:37 +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 3100121836;
 Wed, 25 Oct 2023 13:57: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 B130313524;
 Wed, 25 Oct 2023 13:57:36 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap2.suse-dmz.suse.de with ESMTPSA id IiGhKdAeOWWDDgAAMHmgww
 (envelope-from <jgross@suse.com>); Wed, 25 Oct 2023 13: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: 749f3560-733e-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1698242257; 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=op9yBxjmfTO2TmRrohBLDVW1AW/nnwOBB/11f8t5Pkw=;
	b=QbzIORKE1Mb7Np6unQIplDTAHSHR1BKVqzwrS1EcSdydxo390XalWOG001u6X/LtZBpsCX
	ftT1fadfov0sJq0IaFqGEHz1tuxT7dxhzkerVUwUtd8mLLJ+DaDnrqXilRnQ+TXLaVN5Wh
	3Bp8PA6N+vFLaS5BfRaHhgq8ycDa8xM=
Message-ID: <bc0b5357-1b0d-44ad-a0a2-a8b102328fff@suse.com>
Date: Wed, 25 Oct 2023 15:57:36 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v3 1/5] x86/paravirt: move some functions and defines to
 alternative
Content-Language: en-US
To: Borislav Petkov <bp@alien8.de>
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>,
 Dave Hansen <dave.hansen@linux.intel.com>, "H. Peter Anvin" <hpa@zytor.com>,
 Ajay Kaher <akaher@vmware.com>, 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, Peter Zijlstra <peterz@infradead.org>
References: <20231019091520.14540-1-jgross@suse.com>
 <20231019091520.14540-2-jgross@suse.com>
 <20231025103402.GBZTjvGse9c0utZGO0@fat_crate.local>
 <fde7ffdd-4d12-4821-ac51-e67e65637111@suse.com>
 <20231025134425.GEZTkbua5w0bI2GQlP@fat_crate.local>
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: <20231025134425.GEZTkbua5w0bI2GQlP@fat_crate.local>
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature";
 boundary="------------Ok0W2fM900Vcsm3VK2UlpIrY"
Authentication-Results: smtp-out1.suse.de;
	none
X-Spam-Level: 
X-Spam-Score: -11.98
X-Spamd-Result: default: False [-11.98 / 50.00];
	 ARC_NA(0.00)[];
	 RCVD_VIA_SMTP_AUTH(0.00)[];
	 XM_UA_NO_VERSION(0.01)[];
	 FROM_HAS_DN(0.00)[];
	 TO_DN_SOME(0.00)[];
	 TO_MATCH_ENVRCPT_ALL(0.00)[];
	 BAYES_HAM(-2.99)[99.97%];
	 MIME_GOOD(-0.20)[multipart/signed,multipart/mixed,text/plain];
	 HAS_ATTACHMENT(0.00)[];
	 REPLY(-4.00)[];
	 MIME_BASE64_TEXT_BOGUS(1.00)[];
	 NEURAL_HAM_LONG(-3.00)[-1.000];
	 DKIM_SIGNED(0.00)[suse.com:s=susede1];
	 NEURAL_HAM_SHORT(-1.00)[-1.000];
	 MIME_BASE64_TEXT(0.10)[];
	 RCPT_COUNT_TWELVE(0.00)[18];
	 SIGNED_PGP(-2.00)[];
	 FROM_EQ_ENVFROM(0.00)[];
	 MIME_TRACE(0.00)[0:+,1:+,2:+,3:+,4:~,5:~];
	 RCVD_COUNT_TWO(0.00)[2];
	 RCVD_TLS_ALL(0.00)[];
	 MID_RHS_MATCH_FROM(0.00)[];
	 MIME_UNKNOWN(0.10)[application/pgp-keys]
X-Spam-Flag: NO

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--------------Ok0W2fM900Vcsm3VK2UlpIrY
Content-Type: multipart/mixed; boundary="------------jeLaSrUNi1nbqAXS3yUBjjNu";
 protected-headers="v1"
From: Juergen Gross <jgross@suse.com>
To: Borislav Petkov <bp@alien8.de>
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>,
 Dave Hansen <dave.hansen@linux.intel.com>, "H. Peter Anvin" <hpa@zytor.com>,
 Ajay Kaher <akaher@vmware.com>, 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, Peter Zijlstra <peterz@infradead.org>
Message-ID: <bc0b5357-1b0d-44ad-a0a2-a8b102328fff@suse.com>
Subject: Re: [PATCH v3 1/5] x86/paravirt: move some functions and defines to
 alternative
References: <20231019091520.14540-1-jgross@suse.com>
 <20231019091520.14540-2-jgross@suse.com>
 <20231025103402.GBZTjvGse9c0utZGO0@fat_crate.local>
 <fde7ffdd-4d12-4821-ac51-e67e65637111@suse.com>
 <20231025134425.GEZTkbua5w0bI2GQlP@fat_crate.local>
In-Reply-To: <20231025134425.GEZTkbua5w0bI2GQlP@fat_crate.local>

--------------jeLaSrUNi1nbqAXS3yUBjjNu
Content-Type: multipart/mixed; boundary="------------1UT8fvV7X7WRPiLzbGiK08dL"

--------------1UT8fvV7X7WRPiLzbGiK08dL
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: base64

T24gMjUuMTAuMjMgMTU6NDQsIEJvcmlzbGF2IFBldGtvdiB3cm90ZToNCj4gT24gV2VkLCBP
Y3QgMjUsIDIwMjMgYXQgMDM6MzE6MDdQTSArMDIwMCwgSnVlcmdlbiBHcm9zcyB3cm90ZToN
Cj4+IFRoZXJlIGlzDQo+Pg0KPj4gI2RlZmluZSBub3AoKSBhc20gdm9sYXRpbGUgKCJub3Ai
KQ0KPj4NCj4+IGluIGFyY2gveDg2L2luY2x1ZGUvYXNtL3NwZWNpYWxfaW5zbnMuaCBhbHJl
YWR5Lg0KPiANCj4gVGhlbiBjYWxsIGl0ICJub3BfZnVuYyIgb3Igc28uDQoNCk9rYXkuDQoN
Cj4gDQo+PiBJdCBtaWdodCBub3QgYmUgbmVlZGVkIG5vdywgYnV0IGFyZSB5b3Ugc3VyZSB3
ZSB3b24ndCBuZWVkIGl0IGluIGZ1dHVyZT8NCj4gDQo+IE5vLCBJJ20gbm90Lg0KPiANCj4g
V2hhdCBJJ20gc3VyZSBvZiBpczogc3R1ZmYgc2hvdWxkIGJlIGFkZGVkIHRvIHRoZSBrZXJu
ZWwgb25seSB3aGVuDQo+IHJlYWxseSBuZWVkZWQuIE5vdCBpbiB0aGUgZXhwZWN0YXRpb24g
dGhhdCBpdCBtaWdodCBwb3RlbnRpYWxseSBiZQ0KPiBuZWVkZWQgYXQgc29tZSBwb2ludC4N
Cg0KV2lsbCBkb3VibGUgY2hlY2sgd2hldGhlciBpdCBpcyBuZWVkZWQgbm93Lg0KDQoNCkp1
ZXJnZW4NCg==
--------------1UT8fvV7X7WRPiLzbGiK08dL
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-----

--------------1UT8fvV7X7WRPiLzbGiK08dL--

--------------jeLaSrUNi1nbqAXS3yUBjjNu--

--------------Ok0W2fM900Vcsm3VK2UlpIrY
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/Ey8FAmU5HtAFAwAAAAAACgkQsN6d1ii/Ey+k
Swf/UyHA6lq4Z9I3oF6bCg3moJyEFEhp30dYnnIngCdj/QTFJDrnStojLtDF3VFEH+tGVs/WU9gt
Jd5wUdrPcCnq0LV/itE/eZpNPy5bnlhU60NK1e4noA+0X5FP8CnvlKonWN5sDAys+C5amvvUARFg
URcHSe2eF9FFJUzmJgHiNMbOib3WNPHuhHezYusZb4IXXF/24DD58xBNcwTu0tsU4sZajYLyVzVN
+ebBzUnfJF1+qas5l5ZVFOv7+qgNIPgkd6PRkUuBF7PNvgXzvfvSZz/1ocpq5ztnNUMalGhUqMkt
DU3A3OONRtrdFrowAFWuxs0M+3XRfDUh2RE0MJL+vw==
=Bh0A
-----END PGP SIGNATURE-----

--------------Ok0W2fM900Vcsm3VK2UlpIrY--


From xen-devel-bounces@lists.xenproject.org Wed Oct 25 13:58:35 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 13:58:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622912.970174 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qveP4-00087p-W2; Wed, 25 Oct 2023 13:58:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622912.970174; Wed, 25 Oct 2023 13:58: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 1qveP4-00087i-TH; Wed, 25 Oct 2023 13:58:34 +0000
Received: by outflank-mailman (input) for mailman id 622912;
 Wed, 25 Oct 2023 13:58: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=xaZJ=GH=cloud.com=edwin.torok@srs-se1.protection.inumbo.net>)
 id 1qveP3-000866-Qp
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 13:58:33 +0000
Received: from mail-ed1-x530.google.com (mail-ed1-x530.google.com
 [2a00:1450:4864:20::530])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 93f049c9-733e-11ee-9b0e-b553b5be7939;
 Wed, 25 Oct 2023 15:58:30 +0200 (CEST)
Received: by mail-ed1-x530.google.com with SMTP id
 4fb4d7f45d1cf-533d31a8523so8596939a12.1
 for <xen-devel@lists.xenproject.org>; Wed, 25 Oct 2023 06:58:30 -0700 (PDT)
Received: from edvint-x-u.eng.citrite.net ([185.25.67.249])
 by smtp.gmail.com with ESMTPSA id
 s14-20020a05640217ce00b0053e625da9absm9504855edy.41.2023.10.25.06.58.29
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 25 Oct 2023 06:58: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: 93f049c9-733e-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1698242310; x=1698847110; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:message-id:date:subject:to
         :from:from:to:cc:subject:date:message-id:reply-to;
        bh=ktWD0ULeIfObsCztjTRvmpMByXxg4wg0bG8MtDIla98=;
        b=ken0wcsLxDMDlByKyqVmPL143DPP4Rb29jLHQoT7TrZJYjBlPjKKyAFEDU054b5cAX
         UxBL2C2xzyvnIHhLIJF5y+vtiG/u7p2I+Arj+tJaq4jDA7W4PQLYKbJ1xymWIF/sc4Ok
         la61ag6943KIAfeUQvK8a+ERpOKeiiQtRnYk8=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698242310; x=1698847110;
        h=content-transfer-encoding:mime-version:message-id:date:subject:to
         :from:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
        bh=ktWD0ULeIfObsCztjTRvmpMByXxg4wg0bG8MtDIla98=;
        b=UW7Z6jZEtTs11ARDCGGZsKkpRseo6hiu17uEazUWzH6Ni38L6zW5b8T2141qzPwbQC
         ezqWrO6iDfTX8HSl5OGpCvEfD0zpJHswSsfGjgQ1K4/r7oVoOYRigl3U8UhbHionnTI/
         GuJqXrlYb6vPi6nRbPza23oAsu1muuaYAffz4TI6HwItYAsZtlqH2hKUGIwQDRGA4eW6
         PnRr6ayR89o5+FJy//tFkma1AtnjJAv8nIVIKxWdO4a9AcJq6MDtrbple6x94Y/ab/ry
         I4SS24r3A3IXfZhaVU7alLMlLmgYpJlWoZkxFfXgoQAxtI6LQtCI7r966i/0D7TtWflQ
         WiHw==
X-Gm-Message-State: AOJu0YzR/qg80VjkdEjzHMNiS7wSOHwehBUGc1tSCNBxbn11+SucLtR0
	l9YRqtj893QNQi3+nR/jGffGo2uiiQJ1YiWtZYS4MA==
X-Google-Smtp-Source: AGHT+IFXpXXDVT5c9mtN4o0TBbsxBF1R0REocRMLBpAZn768qkD/gUNToWgjMR2CKsB3qgvdZBfI2Q==
X-Received: by 2002:a05:6402:1d48:b0:540:cabb:de70 with SMTP id dz8-20020a0564021d4800b00540cabbde70mr1856323edb.38.1698242309808;
        Wed, 25 Oct 2023 06:58:29 -0700 (PDT)
From: =?UTF-8?q?Edwin=20T=C3=B6r=C3=B6k?= <edwin.torok@cloud.com>
To: edwin.torok@cloud.com,
	xen-devel@lists.xenproject.org
Subject: [PATCH] tools/ocaml/Makefile.rules: use correct C flags when compiling OCaml C stubs
Date: Wed, 25 Oct 2023 14:58:29 +0100
Message-Id: <fd09742f7c2191be3cdfafbd4c7cccb10eb0e3a2.1698240589.git.edwin.torok@cloud.com>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

The code currently uses GCC to compile OCaml C stubs directly,
and although in most cases this works, it is not entirely correct.

This will fail if the OCaml runtime has been recompiled to use and link with ASAN for example
(or other situations where a flag needs to be used consistently in everything that is linked into the same binary).

Use the OCaml compiler instead, which knows how to invoke the correct C compiler with the correct flags,
and append the Xen specific CFLAGS to that instead.

Drop the explicit -fPIC and -I$(ocamlc -where): these will now be provided by the compiler as needed.

Use -verbose so we see the actuall full C compiler command line invocation done by the OCaml compiler.

Signed-off-by: Edwin Török <edwin.torok@cloud.com>
---
 tools/ocaml/Makefile.rules | 2 +-
 tools/ocaml/common.make    | 2 --
 2 files changed, 1 insertion(+), 3 deletions(-)

diff --git a/tools/ocaml/Makefile.rules b/tools/ocaml/Makefile.rules
index 0d3c6ac839..74856e2282 100644
--- a/tools/ocaml/Makefile.rules
+++ b/tools/ocaml/Makefile.rules
@@ -37,7 +37,7 @@ ALL_OCAML_OBJS ?= $(OBJS)
 	$(call quiet-command, $(OCAMLYACC) -q $<,MLYACC,$@)
 
 %.o: %.c
-	$(call quiet-command, $(CC) $(CFLAGS) -c -o $@ $<,CC,$@)
+	$(call quiet-command, $(OCAMLOPT) -verbose $(addprefix -ccopt ,$(CFLAGS)) -c -o $@ $<,CC,$@)
 
 META: META.in
 	sed 's/@VERSION@/$(VERSION)/g' < $< $o
diff --git a/tools/ocaml/common.make b/tools/ocaml/common.make
index 0c8a597d5b..629e4b3e66 100644
--- a/tools/ocaml/common.make
+++ b/tools/ocaml/common.make
@@ -9,8 +9,6 @@ OCAMLLEX ?= ocamllex
 OCAMLYACC ?= ocamlyacc
 OCAMLFIND ?= ocamlfind
 
-CFLAGS += -fPIC -I$(shell ocamlc -where)
-
 OCAMLOPTFLAG_G := $(shell $(OCAMLOPT) -h 2>&1 | sed -n 's/^  *\(-g\) .*/\1/p')
 OCAMLOPTFLAGS = $(OCAMLOPTFLAG_G) -ccopt "$(LDFLAGS)" -dtypes $(OCAMLINCLUDE) -cc $(CC) -w F -warn-error F
 OCAMLCFLAGS += -g $(OCAMLINCLUDE) -w F -warn-error F
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Wed Oct 25 13:59:39 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 13:59:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622916.970184 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qveQ6-0000Pm-9a; Wed, 25 Oct 2023 13:59:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622916.970184; Wed, 25 Oct 2023 13:59: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 1qveQ6-0000Pf-6i; Wed, 25 Oct 2023 13:59:38 +0000
Received: by outflank-mailman (input) for mailman id 622916;
 Wed, 25 Oct 2023 13:59: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=e1rq=GH=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qveQ4-0000PX-S6
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 13:59:36 +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 bb06e5e0-733e-11ee-98d5-6d05b1d4d9a1;
 Wed, 25 Oct 2023 15:59:36 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS1PR04MB9631.eurprd04.prod.outlook.com (2603:10a6:20b:476::5)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.23; Wed, 25 Oct
 2023 13:59:33 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6933.011; Wed, 25 Oct 2023
 13:59: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: bb06e5e0-733e-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=RKHlhEiWtMR6V2jqvGgvWVnCYVpucDNDMNp0bS1i/qX7gE0ApMwYTOU4KkTdpm8X3NIhofizu/zTfRx+YjpJ0KrxRgrLWrCWYOy0fljrYr8qX2HwtwNITIiPkFnVUp72ubiK9HOy1wsznKdCRGEfdG3hjHyY9B0YMm3MTbkiZqu3vR7bESTv/KXXItvHFLsGZ/KLKlikt7RoziggdXB28aah7rGBL9DItL00CXxWGlJ4fkFuY/+QwhTRSjPCTJot9JjYYoY5A2iKqb84xPA+/2apuL6Az+7cmxjqc76trGQIwctPR3/vp0a4GmGx6a5x0NoAXp0LIRW5isLdYv0GqA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=aZJUxIbGiXB/O8MtGTmUAigWKMIU0D8qXzzMMFhtR1w=;
 b=HmJu1fVfolMt5IoV7ZmJRaUgcBIQpEdybnUc0ssct0qvLAwAaSMhx7V4cKpSG/zyoYbIFtfipFdLkDt6AoM/GG5zYsaBayxcohVo9mGHv6Uv+l0eChxzrN5gQnyHgaXGaODRqFknbhr+3ZXFvB+Mc6vFUlWCky8qHJ2WQm+7KJN3QgIeOpACAF/M92RpuIA/MYuiwfUu/QYLTKGajRngD6hscNIQDyIVNGbH62SR3n3UGc4lU5Kdhup3PEekk/qTjEMCgd49sLQSvJvx0izJE19Ba8UD3RmwxvKnSfmhJ4NGNwPe8BMTYYs9EpfzyIniiw+qeOAbyHvnowOVBJwmHA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=aZJUxIbGiXB/O8MtGTmUAigWKMIU0D8qXzzMMFhtR1w=;
 b=uuGO8IP0CtzD1DC7clPINcf0wm+ToDobRWCybkWsM4Hk3DTKi/qA8FKFWZVm2WZqD/dNCF/6x+DrUKaUmxoV9J9Y8Uv8bDwLQf39OlE6igRJRAgaO4TLUQ+rfFJ+u3XDKVarfg836VzSCRP9yoZO1J46BY+Hc+DttMjXCYTzlOCvAHTaub9McyJA2szkXalFNgzucXWyLU4DxT1lEqWcSi0sQEUEzWCx6yrnU2fI2kQTC/euT7BHmT+81kX1vCLrtwfCmOqDO4BvJNN2H5hVZ7N2XRbw1RCk91Q8ybxKeZiUehMV9F6F7eaIgqFoF/GE8NeVhdNGgtp3wY6NGaMdyg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <d36578da-aa45-32c9-d007-840352d1294c@suse.com>
Date: Wed, 25 Oct 2023 15:59: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/7] x86: don't allow Dom0 access to port CF9
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>, Wei Liu <wl@xen.org>
References: <95129c04-f37c-9e26-e65d-786a1db2f003@suse.com>
 <74c9e6a8-9094-4646-d06f-cfe0a427bb37@suse.com> <ZTkLyGE5ulk1NSpf@macbook>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <ZTkLyGE5ulk1NSpf@macbook>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR4P281CA0050.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:cc::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_|AS1PR04MB9631:EE_
X-MS-Office365-Filtering-Correlation-Id: 24a1517f-a27b-4c7c-ae5b-08dbd5629de6
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	kCDhU6wUgEyriN6lZRJdSymJ0PBAE8pTpatT6+fTQPyAmKWnV8Dg2iLQJF8vgctyRt8BwM8B1eaELHPnMa3e0hJzhNQoEsQRFvw+242+B2Q0IdKEVjDwufys5BAk9GP2IH9P/+E0k23vYOOtJqZpl7uVU4lpIE7ztsU/QmmCe9FW2eL0nYvYoKqmua3vnThoCTyrkZ8nt8m6oJuX0TDXe0oA8ZrP5rC/r96WG06mNDiVnRmwq+5/1OWEEaMRGpbhrKWP283tbYVjVCBJ99nyFEMmNck1a3khy5jbWHAPV5b9pU9AHaXlEV0kd7r4zd6/pZZVCL56UY9WJkt63icqqqzOWDI3EVLsoM9SHC4BhyJmOCG9PN7beAS5Fdb4aE79DYFz9TO/xMVf1WPLkrev7KdCpG+vcse6usYpszXuzpfiHJGTW2Bj0aQAB/yaDg5vP+AkLKq6kzrVz9APdgQ+kZrckQjMNRsG0Lze+jWn+Oh24fJQAsf1vQTIPGnsMiLaxkpbPqK1TZRheZN/MDwoaHCpyfsntq2ZScB2S7E3QJUdEzExNuCKIMVT06gXmkEc4OKGjSDYmV4RB8SNp1UNq0GpDRM7Pq0pThZpSV/NZCG8M6JRQzFfYuCinxNh8lhVjSE8rFMnan/M2ZpjQ+cK1Q==
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)(376002)(136003)(366004)(230922051799003)(186009)(64100799003)(1800799009)(451199024)(53546011)(83380400001)(6512007)(478600001)(6506007)(6486002)(86362001)(26005)(41300700001)(54906003)(316002)(66556008)(4744005)(6916009)(2906002)(8936002)(66946007)(8676002)(66476007)(4326008)(5660300002)(38100700002)(36756003)(31696002)(2616005)(31686004)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?VVVHUzArWjJuRDg4UGpJd0lrQTFRNkdtZGZrY204dmdWaE1hZTVIbmh3RTRX?=
 =?utf-8?B?RW0zNURrbjAya1ZoME9PQm5wQmNNZHFGbVd3a3dTSHl1ZmFlbGxOR3dPbXpp?=
 =?utf-8?B?WkVPenkyRkZIVnRUUndJdlpTWUxOTmllVmRjYmh3NndYUC92SkFYYjQ0SFhr?=
 =?utf-8?B?dUJFdmtHNHdaTDllNWJUR2xyS1FOeGl5a3orQWRoaCtMckN4QkdDNVpidkhV?=
 =?utf-8?B?UDZjakFwdDBOMm1JUlFJNUlpT2prTEFGMHJCcFRVYXd0VStucTRQc3NkNXdp?=
 =?utf-8?B?aVVlS1RqU0dKaHVZRnpaRUFXWndwaTBVMVljTXNDb2F0bldhSmRSbmdEcDhj?=
 =?utf-8?B?cTNYdDJINmxtajBoSnQ3OFljalJUNjFuUE02am1ybkZSM2c0MmVFR3ZsWkxx?=
 =?utf-8?B?bElDN0pMV3NqMm1nRjUydG1sanA2c2dHQk9zK0VQMTQrNHE5THRvSVlUc09k?=
 =?utf-8?B?V0twem5SSDdPTXFrczBERGQxNlJNMW4xRTVPQWZHS2VXeisySVloeUNQYXJo?=
 =?utf-8?B?UCszR0FXQlFmTXNDRlRJOE41Q2hOUmlBZ0hPeW8xWXIzVVFyWFM3b25iMnBH?=
 =?utf-8?B?aTdETkxKTkFPVkVNNkpGSU9NTTZhM3lGSGZmTVVKa3FlUy8rTFhuM3hpZnlo?=
 =?utf-8?B?bXR0WC9FSDBHNVRyNVZZZDRVSmtmb3pOT2pqVzA4dXVpblBCNGFCa2FXTnBs?=
 =?utf-8?B?SGhPNktUSFFxbEVHcnFBYXZzc2lCZnE1cSthWWVvWEQ0bXliWWNBbHF3clVy?=
 =?utf-8?B?eTljOVo4Z0VVWmxxbzdQb3lYLzJvTTJ6NmRMQm94eG9ub2xMa0R6WEdBNkpq?=
 =?utf-8?B?ekNCNHcyOFZ6Q1k4UVJ0Qkpna292a2RkTFZaRkRKUVVkcGozalk2c0tSdXRY?=
 =?utf-8?B?bitvdE9TdkxJeU9VNUhEV2U5UkRnbEtEM2RZckF6VzZNNy9vMnhjYk90SnlQ?=
 =?utf-8?B?WGdZUEppRElDWlBpdGVuck1WZDhrZEo5SVhyWjFFNlptU0JWeVF3OCtqblh3?=
 =?utf-8?B?UHpnVEpjalRiWjhNY1REbTRLSmVUcDJ2WGFRVENlRkFyTTdDUXF4RTQwQlI2?=
 =?utf-8?B?U2RjRzZ4b3Zic2FmSkROSUdMZmZjYUFibWwrQTF5eTlBQktkc1Z0N3NPOVNM?=
 =?utf-8?B?ZTZyTy9zWk1oaGFrWU8wSndFOFhNQkEzUnRNZ2RsVlpiMmwzRjhwSGZEWVRO?=
 =?utf-8?B?T2pLRXNSM2s1Q25lUDhIazN4WFErS1R6cHVLSW5sMis0RCtxOXNNeUxhMUNk?=
 =?utf-8?B?R0ptbm1teUs2UTRycitYZFpmR2ZtQzk3dVNiZFVReDBYZUZBRWxQV3JGbDlO?=
 =?utf-8?B?MkZzWXkyamQwMEZqVzBuMmZrdVY4YU11ZHJsYW5kbkNGUjA5TTFzaytxUlhx?=
 =?utf-8?B?aUEwVGhXYVdOaW9McjFCNFU1Mk43U1NxSEczSmtYNG1oK0tvdzZ2NEs1bGlr?=
 =?utf-8?B?K1VpUGEyRGdGR2VPM0trakJqZ01FTjYrUVpmTzJtWW5Rdkw1bUIyVmxJdWx2?=
 =?utf-8?B?bDRwaVlISnZSR0lVQURaaFBOZm5VT1VpOXBNR09xU1lyRVMxUVBEajVIMVVC?=
 =?utf-8?B?K0xIazJNa3YwUDJUNU5BNUZKYUVDdE9lVXg3TnB2ME9WbmVyb2oxSCtkRk5r?=
 =?utf-8?B?K1dJZ012VjVjT1ltWG11ZSt1Yk1aUktkMTRKNitwWk41ZUc4YithOENNSWhN?=
 =?utf-8?B?Z205cGsrNHBUS0tZWStBODZ4emlwRDJUa1lnZjFtN0JkT09mQjU4anA2OVk5?=
 =?utf-8?B?eENrUE0vTUMrZE8yRWhuaTNjZ2tjVTl4bjcxN04wSjB2T3c3SHREK0I1ay9x?=
 =?utf-8?B?UWlsOFQyajNSb3p5K2NScWZOU3pIRittYk96dVVvRjgwQys0WmpZQzAveTBp?=
 =?utf-8?B?MnpGcHl2QjErdUZWVjJ1SjV6eXNWaXBwTUV0ZnVmazVRclhsUXdSa1Qwdjln?=
 =?utf-8?B?enExVExJNmV2TWVmTGhXZ0pSOGpuM1JZMzV1amdwcmdFRTYxRnJJYldFV0Nw?=
 =?utf-8?B?QVYxdHphVG44ak0vUHZUbXBES05pYzlEcCs4TG1oN2xHbmZqZUg2cVVSZ2xn?=
 =?utf-8?B?N1diUzVEdG11NXZwdWpST2Q3SjhRWjNtQ2t5WkNFL2ZUTFZTZW5JbGtlVmgw?=
 =?utf-8?Q?HjurTV7wos30dPAUaYJlUQEEM?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 24a1517f-a27b-4c7c-ae5b-08dbd5629de6
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Oct 2023 13:59:33.7154
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: lJOKqvPT/5sI+/bnJrmlsfuPZkvgYU6yXdzxzxBAsI9Sv+vxl8R4syhvFBBfFsd+5Asvsm5PoabyVdNvOG/LSQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS1PR04MB9631

On 25.10.2023 14:36, Roger Pau Monné wrote:
> On Thu, May 11, 2023 at 02:05:11PM +0200, Jan Beulich wrote:
>> This allows to initiate machine reset, which we don't want to permit
>> Dom0 to invoke that way.
>>
>> While there insert blank lines and convert the sibling PCI config space
>> port numbers to upper case, matching style earlier in the function.
>>
>> Signed-off-by: Jan Beulich <jbeulich@suse.com>
> 
> Acked-by: Roger Pau Monné <roger.pau@citrix.com>

Thanks.

> Should we also do something about port 0x64?

That would be more involved, as its reset (and A20) functionality is
only a small subset of what it is used for. IOW we'd have to intercept
accesses and pass through the majority of the operations.

Jan


From xen-devel-bounces@lists.xenproject.org Wed Oct 25 14:00:58 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 14:00:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622919.970194 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qveRM-00025u-KK; Wed, 25 Oct 2023 14:00:56 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622919.970194; Wed, 25 Oct 2023 14:00: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 1qveRM-00025n-G2; Wed, 25 Oct 2023 14:00:56 +0000
Received: by outflank-mailman (input) for mailman id 622919;
 Wed, 25 Oct 2023 14:00: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=xaZJ=GH=cloud.com=edwin.torok@srs-se1.protection.inumbo.net>)
 id 1qveRL-00025c-Ca
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 14:00:55 +0000
Received: from mail-ej1-x629.google.com (mail-ej1-x629.google.com
 [2a00:1450:4864:20::629])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id e9e4e8ab-733e-11ee-98d5-6d05b1d4d9a1;
 Wed, 25 Oct 2023 16:00:54 +0200 (CEST)
Received: by mail-ej1-x629.google.com with SMTP id
 a640c23a62f3a-9ada2e6e75fso875979466b.2
 for <xen-devel@lists.xenproject.org>; Wed, 25 Oct 2023 07:00: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: e9e4e8ab-733e-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1698242454; x=1698847254; darn=lists.xenproject.org;
        h=content-transfer-encoding:to:subject:message-id:date:from
         :in-reply-to:references:mime-version:from:to:cc:subject:date
         :message-id:reply-to;
        bh=siQEOMfBX9/EZCjKNtYvmMYGAkJKnvvBHcr0Zdb85gQ=;
        b=AMd6cob63JN1TeL7+M1lm+LwZNNHMMKYmRjk7uQ1yGqWAwNZirlWk11NJiBmKkmkYG
         tyu4UgTy44yT7IUhvbHhd0aO179Ko32foQrJgx//I9POTQgBTtrEkRjzVxVC1lvWgoQ5
         C2i5tfvuOPrHcmUe9dW0IPxu29vLzFEPqRnlI=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698242454; x=1698847254;
        h=content-transfer-encoding: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=siQEOMfBX9/EZCjKNtYvmMYGAkJKnvvBHcr0Zdb85gQ=;
        b=US9BkV+nuGW6NpNsKcahzChGbN7cHjDy5106GoubRuGq/342dw+bS/8apVA+7cgPh7
         3Dg3G0Gx9mJQ7xaT1oWpHs1VnUr/V8FXL2PVDnjSry7sdjWWNNI9bn9K5IxQg5jq/xFz
         GPjhKw5T6Htyx8MT1JcJcCvv7lP9ff6OuxcJrYu7bEjg50peCpb/QzWb2cdqfWI7OLP8
         Sr19hOkHvNNqNyPttioYfP0VrEL+1KGOu9+DDN/vAbgquX8x/o7dF4Vj5+3+xoGI06lN
         tTOHY2rx/z9HYfAokwy05OGD4VV7XFMokgz1QeD46LDA486ZAaOFdRow5Kfy3Q+arSzp
         nYFQ==
X-Gm-Message-State: AOJu0YzLg3Zkw5WND8U6YiC30ucNGMHjn/o19TI+9C+mVYBVnDf/CQFH
	2ob7wzPHs2ji8x/eDMPyLr24XBILTfqxK78/g/y1RiFmB6GVNdxr1Ib3Dw==
X-Google-Smtp-Source: AGHT+IGL+9MHAS+VAhn9gCK/i4W+oFWw/N5k1tck1b5EJNpZd1TBhBq8EpkpsEPZCPOVYUgXUHYagvP+VRZHCrM8Xsw=
X-Received: by 2002:a17:907:703:b0:9b6:50cd:a222 with SMTP id
 xb3-20020a170907070300b009b650cda222mr12790866ejb.54.1698242453831; Wed, 25
 Oct 2023 07:00:53 -0700 (PDT)
MIME-Version: 1.0
References: <fd09742f7c2191be3cdfafbd4c7cccb10eb0e3a2.1698240589.git.edwin.torok@cloud.com>
In-Reply-To: <fd09742f7c2191be3cdfafbd4c7cccb10eb0e3a2.1698240589.git.edwin.torok@cloud.com>
From: Edwin Torok <edwin.torok@cloud.com>
Date: Wed, 25 Oct 2023 15:00:42 +0100
Message-ID: <CAEfZLv=wVZzD2jXAXZstjE6fjCNbf1CFE1cgfMBxafFJfzfGzA@mail.gmail.com>
Subject: Re: [PATCH] tools/ocaml/Makefile.rules: use correct C flags when
 compiling OCaml C stubs
To: Xen-devel <xen-devel@lists.xenproject.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Wed, Oct 25, 2023 at 2:58=E2=80=AFPM Edwin T=C3=B6r=C3=B6k <edwin.torok@=
cloud.com> wrote:
> [...]
> Signed-off-by: Edwin T=C3=B6r=C3=B6k <edwin.torok@cloud.com>

Sorry about the duplicate emails to the list, my 'git send-email'
isn't working quite right.


From xen-devel-bounces@lists.xenproject.org Wed Oct 25 14:02:42 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 14:02:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622923.970204 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qveT2-0002iX-Tv; Wed, 25 Oct 2023 14:02:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622923.970204; Wed, 25 Oct 2023 14:02: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 1qveT2-0002iQ-Qr; Wed, 25 Oct 2023 14:02:40 +0000
Received: by outflank-mailman (input) for mailman id 622923;
 Wed, 25 Oct 2023 14:02: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=/JND=GH=cloud.com=christian.lindig@srs-se1.protection.inumbo.net>)
 id 1qveT1-0002iJ-3J
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 14:02:39 +0000
Received: from mail-ed1-x534.google.com (mail-ed1-x534.google.com
 [2a00:1450:4864:20::534])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 26efb7ad-733f-11ee-9b0e-b553b5be7939;
 Wed, 25 Oct 2023 16:02:37 +0200 (CEST)
Received: by mail-ed1-x534.google.com with SMTP id
 4fb4d7f45d1cf-53de0d1dc46so9396588a12.3
 for <xen-devel@lists.xenproject.org>; Wed, 25 Oct 2023 07:02:37 -0700 (PDT)
Received: from smtpclient.apple (default-46-102-197-194.interdsl.co.uk.
 [46.102.197.194]) by smtp.gmail.com with ESMTPSA id
 r29-20020a50d69d000000b0053e408aec8bsm9780876edi.6.2023.10.25.07.02.35
 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128);
 Wed, 25 Oct 2023 07:02: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: 26efb7ad-733f-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1698242556; x=1698847356; darn=lists.xenproject.org;
        h=to:references:message-id:content-transfer-encoding:cc:date
         :in-reply-to:from:subject:mime-version:from:to:cc:subject:date
         :message-id:reply-to;
        bh=qfV08W1Cv+VacfTgS2fpzVIUmw5/narETvsqfYLa6+I=;
        b=iNCIzDY0yLvQc2REdFY1UX8G1tP5NGcynyW+LZz6Ly9VVTnDNAtGRyQwraChyjbWvG
         Zc2zliz+3TeCMVEFQqSLjsvc6ZkGMeqe6v+Rk1ZbVU43zVB9TSDh3CYfjuEFwI8oKIjs
         PVE96eU45cg/ka8wjWWBFCf0flTxr/dfXyVIk=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698242556; x=1698847356;
        h=to:references:message-id:content-transfer-encoding:cc:date
         :in-reply-to:from:subject:mime-version:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=qfV08W1Cv+VacfTgS2fpzVIUmw5/narETvsqfYLa6+I=;
        b=ebNQopqjFFje+tHtZHelY39zClwF73UQ4kB/pLWaJclm23fNjMemabEkvzEvfOOOig
         VqA0WJjPfxuDZwp71GqIie+xQMu+cQKNL9V5p4wURcDi6zCRBx+28Hl9oTLziTTEInet
         ZXXakFWbv8P5ReOXfUbnXjIYTSp2V4dZcCXu9M/awu2ZR4szaqWAkKV3Jh14UsenX/XO
         Tsi0pg2HG7GtckZgD/XUJ5DemByVrR2c53sFSAkqo5aDBPuGvKhcU8SWE+u5xM75a8N7
         4F20K/VkASQLiZc+I+H6WZIRmHECsduVKOesrxvROCV7KhGjBtl2p/RVGbleVHa6e07K
         kS3A==
X-Gm-Message-State: AOJu0Yx7r8+FNCN0vkx5PClGVNgsrhe+TFWzG4T3UF2Y3SW+gBAuFRWj
	wua2Dr1dqK8l1ReQENhAXsJlYA==
X-Google-Smtp-Source: AGHT+IFJ8SFs8t2UOGOxLX4kqP2R4zHAG+zQTxlj7ac1EQN13MqflpQWcNUxMiXqGigD9WmyQaA6kw==
X-Received: by 2002:a50:cd03:0:b0:53e:7d91:611f with SMTP id z3-20020a50cd03000000b0053e7d91611fmr11910723edi.11.1698242556467;
        Wed, 25 Oct 2023 07:02:36 -0700 (PDT)
Content-Type: text/plain;
	charset=utf-8
Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3696.120.41.1.3\))
Subject: Re: [PATCH] tools/ocaml/Makefile.rules: use correct C flags when
 compiling OCaml C stubs
From: Christian Lindig <christian.lindig@cloud.com>
In-Reply-To: <fd09742f7c2191be3cdfafbd4c7cccb10eb0e3a2.1698240589.git.edwin.torok@cloud.com>
Date: Wed, 25 Oct 2023 15:02:34 +0100
Cc: Xen-devel <xen-devel@lists.xenproject.org>,
 =?utf-8?B?RWR3aW4gVMO2csO2aw==?= <edwin.torok@cloud.com>,
 Christian Lindig <christian.lindig@citrix.com>,
 David Scott <dave@recoil.org>,
 Wei Liu <wl@xen.org>,
 Anthony PERARD <anthony.perard@citrix.com>
Content-Transfer-Encoding: quoted-printable
Message-Id: <531503CD-6082-43FE-92AF-FFB9B829B5C5@cloud.com>
References: <fd09742f7c2191be3cdfafbd4c7cccb10eb0e3a2.1698240589.git.edwin.torok@cloud.com>
To: =?utf-8?B?RWR3aW4gVMO2csO2aw==?= <edvin.torok@citrix.com>
X-Mailer: Apple Mail (2.3696.120.41.1.3)



> On 25 Oct 2023, at 14:52, Edwin T=C3=B6r=C3=B6k =
<edvin.torok@citrix.com> wrote:
>=20
> From: Edwin T=C3=B6r=C3=B6k <edwin.torok@cloud.com>
>=20
> The code currently uses GCC to compile OCaml C stubs directly,
> and although in most cases this works, it is not entirely correct.
>=20
> This will fail if the OCaml runtime has been recompiled to use and =
link with ASAN for example
> (or other situations where a flag needs to be used consistently in =
everything that is linked into the same binary).
>=20
> Use the OCaml compiler instead, which knows how to invoke the correct =
C compiler with the correct flags,
> and append the Xen specific CFLAGS to that instead.
>=20
> Drop the explicit -fPIC and -I$(ocamlc -where): these will now be =
provided by the compiler as needed.
>=20
> Use -verbose so we see the actuall full C compiler command line =
invocation done by the OCaml compiler.
>=20
> Signed-off-by: Edwin T=C3=B6r=C3=B6k <edwin.torok@cloud.com>

Acked-by: Christian Lindig <christian.lindig@cloud.com>

I like using the OCaml compiler to compile stubs as it knows how to =
handle C files and will invoke the C compiler with the correct flags. =
However, this is the kind of change that would be good to have tested on =
all supported platforms. I therefore invite comments from those who =
maintain the build process.

=E2=80=94 C




From xen-devel-bounces@lists.xenproject.org Wed Oct 25 14:04:19 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 14:04:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622928.970213 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qveUZ-0003Jy-9F; Wed, 25 Oct 2023 14:04:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622928.970213; Wed, 25 Oct 2023 14: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 1qveUZ-0003Jr-6d; Wed, 25 Oct 2023 14:04:15 +0000
Received: by outflank-mailman (input) for mailman id 622928;
 Wed, 25 Oct 2023 14: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=e1rq=GH=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qveUY-0003Jl-Kp
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 14:04:14 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 (mail-db8eur05on20607.outbound.protection.outlook.com
 [2a01:111:f400:7e1a::607])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 608aca0e-733f-11ee-98d5-6d05b1d4d9a1;
 Wed, 25 Oct 2023 16:04:13 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DU2PR04MB9177.eurprd04.prod.outlook.com (2603:10a6:10:2f4::21)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.14; Wed, 25 Oct
 2023 14:04:12 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6933.011; Wed, 25 Oct 2023
 14:04: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: 608aca0e-733f-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=IKVpOqlI5zO6cyGpJROaOVUWJE46W+7zy++0bHFm7rcdvcWSor3dJSmRET/0mlQLqhRdi30tcODHNl3FjDylJKyZaCAeIfy91ucnyQmeVCvMwmsvqZ6xNLg8hxPGGwbgsakm8+a7geVaXzIUxmMxHZ7NjRZs7IxBeUtnWwxkakQBFntVezQgjLLX189lwOyl3RP0YkBwj5w1PTpsKktWkc+aiDviXTLDYYmWl2K+60KH51VdDJqv89JlPg7pCoaSsrO6QVZMg3Z9hJA1g0BqIAHDYykNpJ5VwB2oq2k3u1uSAMQCyLc0P+mwWDV3oi2zphmhMUghjWBCpVOIRxexpw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=7GcS7NTqBQQL8SPqbl4FS5pMWN2TOUh2BHFgtwkottU=;
 b=dHBZDJpoMTW3Io0/bELH1GxpSsQFw2Q/HYKKNmYsxc+STucrNEDI6FCo/45RAJOpL7liES9K9wikpSbbGAH594T0pmfDsQnVL+FUWm43HCyUEeJMYJ4GOK6wI28UcJ8fi8+gyKd77trK20okQBq7x07fygR7xbgxi2xPVTqFbKNQmGmrSRJLz9g9sDRep7nqmanTHpJK/Z6vMVj9gRauw1MJYn3PqsVOtsqq3Sf0EWyRfMJ6Up6ZnxF+X4o8My8aI7ch42T7vluXeWx1B0XQsZkDJVv9k2Xv/4L/MT/OyMRUgK4dlQfGSkvbeUinXv2OpUolQcnoTA4vhn3Q85PL+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=7GcS7NTqBQQL8SPqbl4FS5pMWN2TOUh2BHFgtwkottU=;
 b=NCpXZ0WOv7By17xdsFOVzb1o02nC8P5I0Xf9UPlGsUbUsbsG970o9Nai+NxnGw9w5r1a3jH9XdRY024hV6yyFyyxfK9om9CftVsDEsdafwnbvDAOsqBj7cFrYn8ckLSNPH9N4u1evDtdL4aJ5/dl6jSCSk3B0K8x0Hof/GME/behW1ha7rYRhwBXt1YK9h9u6Jin9luoVwF3J79WXvhGyHmn+RLlLBr31TDphPDb0CH0dgWyEyabxJG4krKqT006EtKmRvTLVaX836wlgwZLpKDw6sCaUv6swm96VPH6dxcCYV7E0hNUcniKNgRa2b9IEZtEgkBUlzgHVF+4SQGo6A==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <a907d98a-2d0d-cbf0-ae9e-cfa2e3dd37e2@suse.com>
Date: Wed, 25 Oct 2023 16:04: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] tools/ocaml/Makefile.rules: use correct C flags when
 compiling OCaml C stubs
Content-Language: en-US
To: =?UTF-8?B?RWR3aW4gVMO2csO2aw==?= <edvin.torok@citrix.com>
Cc: =?UTF-8?B?RWR3aW4gVMO2csO2aw==?= <edwin.torok@cloud.com>,
 Christian Lindig <christian.lindig@citrix.com>, David Scott
 <dave@recoil.org>, Wei Liu <wl@xen.org>,
 Anthony PERARD <anthony.perard@citrix.com>, xen-devel@lists.xenproject.org
References: <fd09742f7c2191be3cdfafbd4c7cccb10eb0e3a2.1698240589.git.edwin.torok@cloud.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <fd09742f7c2191be3cdfafbd4c7cccb10eb0e3a2.1698240589.git.edwin.torok@cloud.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR4P281CA0428.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:d1::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_|DU2PR04MB9177:EE_
X-MS-Office365-Filtering-Correlation-Id: 00776cb7-b56d-41db-9871-08dbd56343d1
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	b7NV+R2LrP7hSeeT2LNamZAqUL4QTxPSAEeH/jzVPPXZKTv55Um9yiDRvsUELriHUR1K/zYH5uIO9dPV4ljkLIuktGoBLtg62BzVAztwppufB7Na81pbPOBqb7DhNzw7obV3cDpSprMkJzBLc+oHxibe1fM2IVmLi6r85+T7LD4m/y5NzFKDGx4ouK2QvQok+xDqDy8Y65WrU8PlY/Cql+O4mZAv07le5u+Wa3jCFzxM0yGvlwM37jg/fbH5vGccB36lNJLfHSivDBTCD3KjQ93QSHlw2oYBIPAjza/XEDjZu4uZNeb/RKd1WeNPAMONRRqWB1SL1+T8xXB12WuF1yLwyPLFstVnR7vTTEv+jipJJk8zoaA+OD6g0FOkcMkfHu3l0Ln8oHXZ99FGermKxP2xTVk4ACJrUoPgAerzRrvzvXXYl9wh4yDYeltPN+6YB0gvBGV7ZtuNr/LeJL0QIYVWSFMoRxXmG5IO8qIWqlrWtIH6bNefBu8La3C02PqauATAcB5LC1Xn1915IekQK9/Y03GeL67ymbt5/EbLVhqATM658dnjT+5SWOFBTvWy2nujjIQHUhQC8kOKliiuOI85mg5r6pIko3qzjSim77OdLrwXSVPLAiaSR8senFBdrJ3nERzonfGwFx84bLeZUA==
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)(396003)(366004)(39860400002)(230922051799003)(64100799003)(186009)(451199024)(1800799009)(26005)(31686004)(36756003)(38100700002)(2906002)(4744005)(41300700001)(31696002)(5660300002)(86362001)(316002)(8936002)(8676002)(4326008)(478600001)(6506007)(66476007)(66946007)(6916009)(66556008)(54906003)(2616005)(53546011)(6486002)(6512007)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?NzBIdkRERXk2ZkFSMmFNWWd3Tkljc3lWVVBaTHk2aVgrNFJzYXcwb0pPTkFl?=
 =?utf-8?B?YWVVOFh4OHBiNVAzelFic1JWbXBOTktDbU1vb2twRjcybTV3dUQ1bm1lanph?=
 =?utf-8?B?eUxENGZYbzNIamtRck9UZy9YVnlZYlh4bUpFbXlDcTdiSEVQK1RNZjYwdFdO?=
 =?utf-8?B?TkQrK3lTcWJmd1BLOGc2U2E4WVJwWW5kYStYYWhvWTBjdFN2b2FpS2djVkRu?=
 =?utf-8?B?NG9vVUxLb1NjTEp6RU90T2FaT3hscC80eFZOc0RhWkNoUTV6TkM1eC9kb0Rz?=
 =?utf-8?B?L3BYU3FHRTBoeXh2M1lQalgzODhtTSthZTNiN01Zb0t3c3grbFBRNU9KcllU?=
 =?utf-8?B?VWl2UWM2VnFVQytnWmhoMDhpeEpiVXBFRlBDYjFqY1F5V21iMkNOdHdQb21N?=
 =?utf-8?B?eU53VDlyTklCaisvZ2c4WFp4WWR2VzlvbUlzOFlCN0g3VERRV1hIRHRCdElH?=
 =?utf-8?B?SlRRNG1CUHRWUnJsWXZZbkwzWXBBSG9GUUdtRFFnbWw3K1VpeERPMHhHeWda?=
 =?utf-8?B?aVRiWEE3SVY0b1p6SjJTM0JMQmJpemltTGVrNWQyZEJOY091eVJObDM0Zmd0?=
 =?utf-8?B?N01KZmVKKzE2bzVMY2hQanl4Lzc1dld6NUpjYVhHbk5QbWpJUWNEUGhTaU8z?=
 =?utf-8?B?MWR5VTFCeVNRTlUwa2phaksvVzExQ2ZrVnkyR1k1WWQxV3RHNTdoeUVnOUt3?=
 =?utf-8?B?ckFmdGlUNkhuejQvYlMrZWE3SU5mbWtmTUJybFZMVFhKVVlQWWxkVHFPNy9Y?=
 =?utf-8?B?Wmo5MGtkb1paelMrcHNmdTdCN1BjUlc5R0ZsL3FuWE80SW9RWHNnYnAxSC92?=
 =?utf-8?B?WVA0SkFZUWlCNDBJU014ODVhM3FiTmJrSmU3cXRQMTJjL1JtdTI5T05TSWdi?=
 =?utf-8?B?YmsvbWR5ejdrUXpvaWFFRS9JemVGNEROaUNYTFVSWmNKb0VXTW9NdjFrYlZp?=
 =?utf-8?B?bFRxRWgyS3dlVXA0RHdpUi9VZTlJVXNEdE01STJGOThQdWNvNm84VHhVSXA3?=
 =?utf-8?B?TDE3SHhzQVVzbnpxMkd6K3VZL0J4eEtOblkxZmdtdUIxOWQ1S2FTczlwN1c1?=
 =?utf-8?B?RzZieVhBWHNUakxPZ2NkRHNhZ2swZFVneHZiVFRFNVBpWGlPeEp3NHNhZXgy?=
 =?utf-8?B?Y3VZWVFuSS9vekRzMDV0Z2orK0s4K1NnMW9uWnhjL1FWM296YWY3dUlZMUlN?=
 =?utf-8?B?WUhTVVB4d2MxNnZ2dDAvNHllSWdkOFZkNS8wQnRFYXFISFNRa2xjSCt4YlhU?=
 =?utf-8?B?L2dHVTBYNk13eEFpTDdrY091alFHRmc0TWNKYkhsWjUxeTRJMXRpbGp1RE9o?=
 =?utf-8?B?ZnVjeEJwUWlZbVFZcUNYRXdOM0JBY284NXRGLzMrT3RDdkVkNGRIUHVxSTM2?=
 =?utf-8?B?dXROTkJzc01wNGhxOU1FMzFBWUJyazhBSmpYUHJZT3ZEanN5Rm5nejl3M2Vp?=
 =?utf-8?B?MEhnaG52NklwSFdpRUxWckcxQktkRlp2ZTBqd2ZNY3dQcDBOUmxxT29wbXhi?=
 =?utf-8?B?ZkFKUFZxQUh1RTl2dkJ6SGdrQUR3M1owMmxqVHJvbXRqR2R1Vy9GbmduYUFG?=
 =?utf-8?B?Q0VHdlFxeEc2ekpZY1QrYkF5eWpRRVdzVXN4akFXYW5IY0grM0RWcHIwT0w0?=
 =?utf-8?B?VHdSeGRjTXhIVVlKa0VUVmNYa0dNcnM5VzFTZlV1VFR4NXMyc3VDLzh4VElN?=
 =?utf-8?B?VkV2cTRRdG1kWDd6VXptUWhhUkJTMUJEZFBnRXRuUDBuWWlGV3VKS0tRQXZO?=
 =?utf-8?B?alNnOXhMTmYvQitXcUkrbEphd2NPZnRzR29nN1B0RkFwcG5NNU54d2dsQkUv?=
 =?utf-8?B?NE9ib0JjR2pNWWxaU0JvdFQvb1pHNEFZUnA3Y2Y5ZnFoekw3L0loRnFqamVD?=
 =?utf-8?B?clJrQXNEVVJWSTJUb09UdzdpRE1vUllzUnU0N0MrZ2FLbzdrL0N2SkJDbzd3?=
 =?utf-8?B?eXhUL0RydGhIbDFYTVdGTXJJZWpyMVIvMk1BdC9JQURoRmsvbFgwVWdVVXNE?=
 =?utf-8?B?RGhFbnJ0WlMwa3p2NUNVblZ6RFgrQy9DQTBUc0U5bjhmdkFjWVJaMjNmanNN?=
 =?utf-8?B?N0JNQkJ6NE1qaVl5bjkyYVBuZDh4dTNZVW1aSzVGLzlEWVc2NFI5ODk5dUZ1?=
 =?utf-8?Q?ZN40v8ESCeU7WJloHfrU5WTnI?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 00776cb7-b56d-41db-9871-08dbd56343d1
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Oct 2023 14:04:12.0809
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: cHGLSARddS6aBI4qh0Dovw7fa9zU5puhtUEmQgi4VL4PtWFu30FEbtnbypI8PnWRa/8ZFvj8509XUClUJZyS7w==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU2PR04MB9177

On 25.10.2023 15:52, Edwin Török wrote:
> --- a/tools/ocaml/Makefile.rules
> +++ b/tools/ocaml/Makefile.rules
> @@ -37,7 +37,7 @@ ALL_OCAML_OBJS ?= $(OBJS)
>  	$(call quiet-command, $(OCAMLYACC) -q $<,MLYACC,$@)
>  
>  %.o: %.c
> -	$(call quiet-command, $(CC) $(CFLAGS) -c -o $@ $<,CC,$@)
> +	$(call quiet-command, $(OCAMLOPT) -verbose $(addprefix -ccopt ,$(CFLAGS)) -c -o $@ $<,CC,$@)

Wouldn't -verbose better be passed only if the build isn't a quiet one?

Jan



From xen-devel-bounces@lists.xenproject.org Wed Oct 25 14:04:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 14:04:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622930.970224 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qveV8-0003qk-LU; Wed, 25 Oct 2023 14:04:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622930.970224; Wed, 25 Oct 2023 14:04: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 1qveV8-0003qZ-I6; Wed, 25 Oct 2023 14:04:50 +0000
Received: by outflank-mailman (input) for mailman id 622930;
 Wed, 25 Oct 2023 14:04: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=Kl7N=GH=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qveV7-0003pC-Ai
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 14:04:49 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 75217559-733f-11ee-98d5-6d05b1d4d9a1;
 Wed, 25 Oct 2023 16:04:48 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id AE4324EE073A;
 Wed, 25 Oct 2023 16:04: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: 75217559-733f-11ee-98d5-6d05b1d4d9a1
MIME-Version: 1.0
Date: Wed, 25 Oct 2023 16:04:47 +0200
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: Stefano Stabellini <sstabellini@kernel.org>, Jan Beulich
 <jbeulich@suse.com>
Cc: Jan Beulich <jbeulich@suse.com>, michal.orzel@amd.com,
 xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, consulting@bugseng.com,
 andrew.cooper3@citrix.com, roger.pau@citrix.com, Wei Liu <wl@xen.org>, Jun
 Nakajima <jun.nakajima@intel.com>, Kevin Tian <kevin.tian@intel.com>,
 xen-devel@lists.xenproject.org
Subject: Re: [XEN PATCH][for-4.19 v4 3/8] x86: add deviation comments for
 asm-only functions
In-Reply-To: <alpine.DEB.2.22.394.2310241249080.271731@ubuntu-linux-20-04-desktop>
References: <cover.1698053876.git.nicola.vetrini@bugseng.com>
 <36d24b3a3e264f0e0b265b4f68d6432a143d64cd.1698053876.git.nicola.vetrini@bugseng.com>
 <a8370e98-1cb6-8fde-9458-e579047dd607@suse.com>
 <2d92ef1f753165e2fa9cc7c04c219217@bugseng.com>
 <52422128-156d-5d6c-46b2-261b1c7e85c0@suse.com>
 <734cc13409b44f709649895d76d388e2@bugseng.com>
 <alpine.DEB.2.22.394.2310241249080.271731@ubuntu-linux-20-04-desktop>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <d60e17379fbfdb1288288ee079113a17@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 24/10/2023 21:50, Stefano Stabellini wrote:
> On Tue, 24 Oct 2023, Nicola Vetrini wrote:
>> On 24/10/2023 10:14, Jan Beulich wrote:
>> > On 24.10.2023 10:01, Nicola Vetrini wrote:
>> > > On 24/10/2023 09:50, Jan Beulich wrote:
>> > > > On 23.10.2023 11:56, Nicola Vetrini wrote:
>> > > > > As stated in rules.rst, functions used only in asm code
>> > > > > are allowed to have no prior declaration visible when being
>> > > > > defined, hence these functions are deviated.
>> > > > > This also fixes violations of MISRA C:2012 Rule 8.4.
>> > > > >
>> > > > > Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
>> > > > > Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
>> > > > > ---
>> > > > > Changes in v3:
>> > > > > - added SAF deviations for vmx counterparts to svm functions.
>> > > >
>> > > > Same comment regarding the R-b here as for patch 2.
>> > > >
>> > > > > --- a/xen/arch/x86/hvm/svm/intr.c
>> > > > > +++ b/xen/arch/x86/hvm/svm/intr.c
>> > > > > @@ -123,6 +123,7 @@ static void svm_enable_intr_window(struct vcpu *v,
>> > > > > struct hvm_intack intack)
>> > > > >          vmcb, general1_intercepts | GENERAL1_INTERCEPT_VINTR);
>> > > > >  }
>> > > > >
>> > > > > +/* SAF-1-safe */
>> > > > >  void svm_intr_assist(void)
>> > > > >  {
>> > > > >      struct vcpu *v = current;
>> > > >
>> > > > Linux has the concept of "asmlinkage" for functions interfacing C and
>> > > > assembly. Was it considered to use that - even if expanding to nothing
>> > > > for all present architectures - as a way to annotate affected
>> > > > definitions
>> > > > in place of the SAF-*-safe comments?
>> > >
>> > > It was proposed by Julien a while ago (I think it the thread on
>> > > deviations.rst) to define
>> > > a macro asmcall that expands to nothing, to mark all such functions.
>> > > Right now, it's not
>> > > strictly necessary (given that there are already some uses of SAF in
>> > > Stefano's for-4.19 branch.
>> >
>> > Can this then be revisited please before any such reaches staging?
>> >
>> > Jan
>> 
>> I'll let Stefano answer this one.
> 
> Yes it can. If Nicola sends new patches I'll make sure to remove the
> corresponding ones from for-4.19.
> 
> Nicola, you might want to send me privately the list of commits to take
> out from for-4.19.

Actually I checked: the involved SAF comments are already in staging, 
specifically all
were part of commit 5a415ef2b24d578d29479e38abda3d5285b9afed

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


From xen-devel-bounces@lists.xenproject.org Wed Oct 25 14:05:38 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 14:05:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622934.970233 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qveVt-0004WR-U8; Wed, 25 Oct 2023 14:05:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622934.970233; Wed, 25 Oct 2023 14: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 1qveVt-0004WK-Rb; Wed, 25 Oct 2023 14:05:37 +0000
Received: by outflank-mailman (input) for mailman id 622934;
 Wed, 25 Oct 2023 14:05: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 1qveVs-0004Vw-ID; Wed, 25 Oct 2023 14:05: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 1qveVs-0002nK-Ah; Wed, 25 Oct 2023 14:05: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 1qveVr-0005MH-US; Wed, 25 Oct 2023 14:05:35 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qveVr-0005Fx-Tf; Wed, 25 Oct 2023 14:05: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=e2jUspQSdCMRX4UV/V1wgNCaCJKGwwSOy6ao8lYRvBA=; b=OnDry4POM3yoGyqbL058PTD7H0
	ZfTCwOomDOviEC7esD/1cw/THes7+LR64zjx1qyHLtejza64UYFXcSgXtZsBn0Ko9Qoi5ESJs/heU
	hDFhR3U8QBroUIw20y05T+6ModeZpF8x4ZJbZj0GTDGfGcyuREuJiXV4qpZE1p+uBGJI=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183524-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 183524: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=1f21e11168dd6a071a92e41ecdffc7cd6e5f3f02
X-Osstest-Versions-That:
    ovmf=d85bf54b7f462eb0297351b5f8dfde09adf617fb
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 25 Oct 2023 14:05:35 +0000

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

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 1f21e11168dd6a071a92e41ecdffc7cd6e5f3f02
baseline version:
 ovmf                 d85bf54b7f462eb0297351b5f8dfde09adf617fb

Last test of basis   183516  2023-10-24 17:13:56 Z    0 days
Testing same since   183524  2023-10-25 10:14:26 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Abdul Lateef Attar <AbdulLateef.Attar@amd.com>
  Abner Chang <abner.chang@amd.com>
  Ceping Sun <cepingx.sun@intel.com>
  Gerd Hoffmann <kraxel@redhat.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
   d85bf54b7f..1f21e11168  1f21e11168dd6a071a92e41ecdffc7cd6e5f3f02 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Wed Oct 25 14:11:29 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 14:11:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622944.970244 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvebR-0006ZE-KF; Wed, 25 Oct 2023 14:11:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622944.970244; Wed, 25 Oct 2023 14:11: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 1qvebR-0006Z7-Ge; Wed, 25 Oct 2023 14:11:21 +0000
Received: by outflank-mailman (input) for mailman id 622944;
 Wed, 25 Oct 2023 14:11: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=e1rq=GH=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qvebQ-0006Z1-Eb
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 14:11:20 +0000
Received: from EUR01-DB5-obe.outbound.protection.outlook.com
 (mail-db5eur01on0626.outbound.protection.outlook.com
 [2a01:111:f400:fe02::626])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 5dff57c6-7340-11ee-98d5-6d05b1d4d9a1;
 Wed, 25 Oct 2023 16:11:19 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PAXPR04MB9204.eurprd04.prod.outlook.com (2603:10a6:102:227::20)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.36; Wed, 25 Oct
 2023 14:11:16 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6933.011; Wed, 25 Oct 2023
 14:11: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: 5dff57c6-7340-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=XZidpGwcZjfANEUbQzp1065BsEvsbdJ3bJqRANlpyRYSR8iXQzBEyU8Pyl5UU0w74xAYuQHxgGCqBMA+996gYgGaRgYHO/URZzVtE7kChTbna+bCQs17HCHnTCWsoe65NYq+AeoYX5cSKcpq/p5tRtfCM/j+/hJevXWPZPo81BwAYI3aGczpvw96vq21ptxiVRQdGwRDnUrzCgoYixMXKAYyrqYvFydTShIflwpZ7aJsY9Lmd3kKxowuOT+nAxLpB5CBQx14XR68C+F22/9axSINauFI7rI//gs/S5HJZkZfrzNyF+lBbEG3RU1VR45WyQwxSwKK/EK34cqC+KbU8Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=Exbs2aNCUu1BzER//EojuRQlRMk2l9zw+4JRzgvNapg=;
 b=OO4B1QgwsnboYyRxxOhDP88I0o2hP++Bt7NQRImDRkKdKGlIihID10WtRO5w4ckVN/4oWLzPyQ52dHbpcq4vIKhy6mwfcIaZrf+wtOKHkNlOGqmak4BuwftYu0YPy9cRniDlucNGZQo9JJXtjpXMhh5Gz51KdgzaTUrL71dUJm0Cpih5FC+coyaDmfnFo1eA8kkX50zlvFL3IajZMFfCWvPAEVbK6rShN0yUF549E9QtgfdC86zWxYeQqygz71e5jbH7eMZVWyx3mRAn6n1OyaOOU3mVPVdzmAuy7/NtUBLPLtABasWn1gNmfzKRaE+0yef1fXjesgnXUj0QQ7/RZQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=Exbs2aNCUu1BzER//EojuRQlRMk2l9zw+4JRzgvNapg=;
 b=Wd96AJFyhv24XCM8m7wSs14jxoMJqEAVVOWInlvexqSVp7BuXV37nKIVzkTZ6/3chGIiHGL44jh/L1gEtsFwiQSiYmAwjsDO9145xBEn36JYbq3zdClNCkjH+QTMebgK1h2mmBNdOR6fkcB2FJiqNvWYO53Ufo+fF1Vf4WtWS1vtrakOPnLuAxPtRii1VVYMN+1jC9hCm5KGMRJFlUVRvyWN0QVmt0jGDOzMXhUe3O6UKwBApPpYrROj1t6YueweoBuM0/tsZ+/nTtJ/04skl+1TMu7cq/wzjMu2FYmVSOcs97SAJrbH//wbzB+1nE+jDBd9wUgDBVBzYMrM7LdZxg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <3787a618-e0db-b87e-384a-a3956f7a2fb6@suse.com>
Date: Wed, 25 Oct 2023 16:11: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 2/7] x86: don't allow Dom0 access to port 92
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>, Wei Liu <wl@xen.org>
References: <95129c04-f37c-9e26-e65d-786a1db2f003@suse.com>
 <ba1de950-185e-8d8e-e313-aef54b18a097@suse.com> <ZTkO6FZBlUDDKJKU@macbook>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <ZTkO6FZBlUDDKJKU@macbook>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR2P281CA0097.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:9c::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_|PAXPR04MB9204:EE_
X-MS-Office365-Filtering-Correlation-Id: 9d581cbb-55e5-4b68-6687-08dbd564407c
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	svy9Q4RwDsz8YGTEO0EDIB6Ob+VcjamzAtFY2bKYhJJb/QJaYnsPbXXxnDcec6WMIKAJaPF9Abv+YxSOzeM4AYUnmGUzveJ9Fc2sbRFcaKlXMgE/6GwJjGaDwVbp30YtcY3WGUCQN4zHB/SG+q0RBb+fI1afTTkfSlOyqzuK+oYb4oDj2zFbm2bPwetfu594I+VbRM/s1aiNLmRMtUPjgt3do3q3xaA8XE1DSpiJzZiHt9wGgOCqafgob0krPf5pCtJg7PSU5WYGGyKWNCNM0DO/21tq2VX98lBDX8zT7ssdJVCqpGM1U3lFGciIZ6X4Bu0Xxe0GHnkcbmwrYxWCbz3k179EGz2eXShMLwV+vfJPnfC9WouI6i8dlqPFvboZHhSDcBTa5HVGE1WNj91r7a0qKbkpGCszxtTlsEBrHoISIea0VVw6MPhHJLCh722ZvXf3BITE3ki+uLDJXsk38HISZCBbcUb6BYdI7ts+JUuNv38TJvPDcqnN+Ic63fD9+PYpoceg4RDfYpCuuT+E4s84ToQnXaQtdAhqilUW0Y2P1SLXDsUUTcMlkxCOrgm2kZdRqZ9TEtPUkH+TS0DbD9OT7r5++se5T6U7i8V/TdGIEu002+cGKjPQ5mEijSULI3IM3S1vlfWSeK8u2asPhA==
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)(396003)(39860400002)(366004)(376002)(230922051799003)(1800799009)(451199024)(186009)(64100799003)(8936002)(316002)(8676002)(4326008)(6916009)(2616005)(2906002)(83380400001)(6486002)(41300700001)(5660300002)(478600001)(86362001)(54906003)(26005)(6506007)(66556008)(53546011)(38100700002)(31696002)(66476007)(6666004)(66946007)(31686004)(36756003)(6512007)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?ZHlHays4NVJWdk1KU0I4dnR5dWxad0ppNmx1ZnUyakpjbzVidzkyRHc4ZlpQ?=
 =?utf-8?B?UHdrZTlVNmFwd1VVc2k1QjNjZlhZNFBYamp4TitPK1IxcmdZZkNkQmpuSkZH?=
 =?utf-8?B?NG5ndzFsUFRPcEFvcnFiVjNwWmc1MHZFM0hBL0hpdmpaamowdnVaT0xTTmp0?=
 =?utf-8?B?REJCdUpXbCtQSEl6b2t5MlJMZ00rYjgwQTUyUmFtazVpOVlKcEhhU3ZoNjY5?=
 =?utf-8?B?eE91dEhDOFJzT01EQkUzZGFiNUNneWl3VnpSenlxamtUUjRYMytkSWZjeFFG?=
 =?utf-8?B?ei9FZG8rZVVQK3p5d0UxdE93NFc4L0hkR0pNOVN1UDZuSUZRekdEZUx6V00r?=
 =?utf-8?B?U0dyaEd3dkpqTmRmdFR5V3RSeCt4Nnh1c2hOVW9wL3ViM3RNWnErTkpQRWlP?=
 =?utf-8?B?RDJmZXRhdUV4T2Q3NDRjMFhsMnBvelZvRjB6VmwwMGlvR1JjRXJXWXFCYkpK?=
 =?utf-8?B?UVN3cjZwcHZZSVhXWUlTQjdaM2pOWWRVOWgxeFFrbmgrSHd5M2prRm1PNHNW?=
 =?utf-8?B?cG1OczdTcW82dE5RT21zdHl0eGZPOG94UGFLNUhlMFV5Y1JYSzNjVWNyamNI?=
 =?utf-8?B?ZlloSTlPMnBTOGNTQlZrUk5RZUxPZXZxRGpvazZJQnZxWWRtRTdmUnY2Rnpn?=
 =?utf-8?B?R1lNTHRtekIxeXB5V1VsdjRIbi9DcStmUFlqK2FiU0RpN3FEVlFMVkNUWnVu?=
 =?utf-8?B?TjR1Y2NpZEU5S1ZmNlZnNzBpSHFVc2FsbnlWZEN1eUFlTUZiSUw0TWllekRr?=
 =?utf-8?B?NmpsaVoreC9mZXlVTTY0Vndra0d5a1MxL2ZzZUNaNis1aXlxL2s5RG9ra1ZG?=
 =?utf-8?B?eCs4ajE4cS9qaUovczFMOW5idUJBN0lNNzRSNzVOQ1MzNVg1TGorR0pTZTlM?=
 =?utf-8?B?MC8ycnBSQjJZUERtSVhHa25IZXJDWXpkSUxkT0x5cmxiSjRMUzRHUmdFUWNZ?=
 =?utf-8?B?Zk1ZSmFOVmZoMzd5eStJNzFIOCtTTTNjZFVJSkhQYkF2dnhRUXdIWHBCdE5L?=
 =?utf-8?B?MHZGWGxDRGl6NVNVQUxyc1NZV0VjYjVPb2l1WkFkUVJZbVNURXMzWTA1Tjht?=
 =?utf-8?B?ZTdRRElpS0cxZjVKTkJReEpteUQvblA3ZzlWNXlHdUFKWFVHaWpDdmlOdmN3?=
 =?utf-8?B?UVpOY2lmWHhsSEhFSFo5L1o3KzhBOVdFaDJKWERsbTdIRGFveWpsNW5TMWVs?=
 =?utf-8?B?cm5pYjZWOG1McStBN21BNVB0M0t6RnovNllJSDZjTFRkVGVoNzZyVzBkbHhC?=
 =?utf-8?B?cWVwNys2NDBscC9ZU0c0MEpXc1NkdTFkWktOZGltYUFVQWNkVDVIRDFhaEo2?=
 =?utf-8?B?UUY3TzhvbmZRbmZ5QkhLdVdSU0VDZ0s3UjQxaEgxQ1E0Ujc2bVU1MTd5UjZq?=
 =?utf-8?B?M0JWQnA1dkg1QitiUUlWYnVUc2U3cGIwK0xlbmhvQkpiQjEzL3dtcXdON01z?=
 =?utf-8?B?QndBd3NTeXZadFhYREltMkN2UERoVkVJd1VPcXJhU3dRaFFtZklQZFp4alRO?=
 =?utf-8?B?WlR0VElNRUtHQ3VBMC9JVlRCVWhWeDRMSkp5TjhMTDVQOHRhWVhjVlBPcmd2?=
 =?utf-8?B?b0FJbU5scFdGV3RjbFcrTVdqdFBvYWU5L01Va1N3TExqU1AyQ2M1KzRTWDBY?=
 =?utf-8?B?WE1MOGVoODkxanlYeXZsY1EyVEN1SFlUYXd0SEFTTkxKbnhQOE1ZU2NBSUVw?=
 =?utf-8?B?ZGF0Z0NPZVpiNVp1Zlo0Q2ZueUFDbEtreHJVeTJyL1A4UTRxNFowdzdzUWF6?=
 =?utf-8?B?eE9qcmptRUxPNjZzOTc0bk1EZzN0TVdVVG9oY0Z0Z1I0S0h1Z3JCZWZIVkxG?=
 =?utf-8?B?MDhwS2EwdHhjcnZlWmJJbCt0VG50M2ZUbmsxeHdOYXhPN0VQOGd3bm9INzE0?=
 =?utf-8?B?Vjc5VTkyb1pTbGV1a0orU2tjbC9jMGhsODNuQVJlN2hqQU1zMTFFTnJaMksw?=
 =?utf-8?B?R3NXdHhkTmtObm5YOVRwUEthbW5iUENhNThvaW1sYzZjb0VXVzZySm1lMmJn?=
 =?utf-8?B?dTc3SVNuU3YrMnRJaG5BQXFkTnBjUnlMeSt2bXF0ZHdzcGRjcnZqcmNyT3U3?=
 =?utf-8?B?Mk5RbUZJNi9Ec2ttdVRKc24zZ3hOYTIyOUpPMDhFaWhPR2lacWZiamZxUDky?=
 =?utf-8?Q?wnVW0J7+WGXb1R1wM4q/W4nYs?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 9d581cbb-55e5-4b68-6687-08dbd564407c
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Oct 2023 14:11:15.9644
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: CXQCrX0yk+1oDUQn8/1m4kX4aZcEftxgN6jHmklWziM8WFKQULpXq2ARAiP90cNSLopjQvPW2R7uzidg7JzNnQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB9204

On 25.10.2023 14:49, Roger Pau Monné wrote:
> On Thu, May 11, 2023 at 02:05:45PM +0200, Jan Beulich wrote:
>> Somewhat like port CF9 this may have a bit controlling the CPU's INIT#
>> signal, and it also may have a bit involved in the driving of A20M#.
>> Neither of these - just like CF9 - we want to allow Dom0 to drive.
>>
>> Signed-off-by: Jan Beulich <jbeulich@suse.com>
> 
> Acked-by: Roger Pau Monné <roger.pau@citrix.com>

Thanks.

> I'm kind of concerned that such ports might be used for other stuff
> not described in the specifications I'm looking at, I guess we will
> find out.

There's a small risk, but there's also a certain risk from not making
the port inaccessible.

>> --- a/xen/arch/x86/dom0_build.c
>> +++ b/xen/arch/x86/dom0_build.c
>> @@ -500,6 +500,10 @@ int __init dom0_setup_permissions(struct
>>      rc |= ioports_deny_access(d, 0x40, 0x43);
>>      /* PIT Channel 2 / PC Speaker Control. */
>>      rc |= ioports_deny_access(d, 0x61, 0x61);
>> +
>> +    /* INIT# and alternative A20M# control. */
>> +    rc |= ioports_deny_access(d, 0x92, 0x92);
> 
> I do wonder whether it would make sense to create an array of [start,
> end] IO ports to deny access to, so that we could loop over them and
> code a single call to ioports_deny_access().  Maybe that's over
> engineering it.

It would compact part of the invocations, but some aren't using build-
time constants, so wouldn't fit well with such a table approach. (I
would probably ack a patch doing such a partial consolidation, but
at least right now I don't think I would put time in making such a
patch.)

Jan


From xen-devel-bounces@lists.xenproject.org Wed Oct 25 14:30:29 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 14:30:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622953.970253 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvetn-00041m-35; Wed, 25 Oct 2023 14:30:19 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622953.970253; Wed, 25 Oct 2023 14:30: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 1qvetn-00041f-0Z; Wed, 25 Oct 2023 14:30:19 +0000
Received: by outflank-mailman (input) for mailman id 622953;
 Wed, 25 Oct 2023 14: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=Kl7N=GH=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qvetl-00041Z-JF
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 14:30:17 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 03e6c453-7343-11ee-98d5-6d05b1d4d9a1;
 Wed, 25 Oct 2023 16:30:16 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id BD2B14EE073A;
 Wed, 25 Oct 2023 16:30: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: 03e6c453-7343-11ee-98d5-6d05b1d4d9a1
MIME-Version: 1.0
Date: Wed, 25 Oct 2023 16:30: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,
 andrew.cooper3@citrix.com, roger.pau@citrix.com, Wei Liu <wl@xen.org>, Paul
 Durrant <paul@xen.org>, George Dunlap <george.dunlap@citrix.com>,
 xen-devel@lists.xenproject.org
Subject: Re: [RFC PATCH] x86/vlapic: address a violation of MISRA C:2012 Rule
 16.2
In-Reply-To: <b07f9709-5f4c-a079-140e-c3da371929df@suse.com>
References: <99114c15a4256e6a0f39bd6de232ee4b8ad9b587.1698239734.git.nicola.vetrini@bugseng.com>
 <b07f9709-5f4c-a079-140e-c3da371929df@suse.com>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <221fe25e118912453aa2e956c11656f4@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 25/10/2023 15:44, Jan Beulich wrote:
> On 25.10.2023 15:22, Nicola Vetrini wrote:
>> The clauses of a switch should be enclosed directly by a switch
>> statement to make the code more easily understandable and less
>> prone to errors.
>> 
>> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
>> ---
>> This patch is mainly indended to probe how the community, especially 
>> the
>> maintainers, would receive such modifications to the code, and whether 
>> there
>> would be consensus on the rule's adoption. Anyone is welcome to
>> give feedback on this, especially on the x86 side, where this pattern
>> is used more frequently.
> 
> The chosen instance (below) is one where it is relatively easy to argue
> that putting the default label in an inner scope isn't much of a
> difference as far as overall code size / redundancy is concerned. But
> there are (perhaps many) other cases where the gains of using what
> Misra dislikes are much higher.
> 
> This is another one of the various more recently discussed rules where
> I think Misra is just going too far, dictating various aspects of style
> for - in my personal view - no real gain. Furthermore, if you could
> pick some more involved example (arch/x86/x86_emulate/x86_emulate.c may
> yield a few "good" examples), I'd like to learn how you propose to
> change such code, with two up-front constraints:
> - no added redundancy,
> - no new goto.
> Either of them in replacement code would go against what the 
> description
> above states as a goal.
> 
> Jan
> 

Honestly, I think none of those is attainable in such cases as the ones 
in x86_emulate.c

Take, for instance,

index 94caec1d142c..2a70c5f0a197 100644
--- a/xen/arch/x86/x86_emulate/x86_emulate.c
+++ b/xen/arch/x86/x86_emulate/x86_emulate.c
@@ -1492,10 +1492,10 @@ x86_emulate(
          if ( ops->rmw && dst.type == OP_MEM )
              state->rmw = rmw_add;
          else
-        {
-    case 0x02 ... 0x05: /* add */
              emulate_2op_SrcV("add", src, dst, _regs.eflags);
-        }
+        break;
+    case 0x02 ... 0x05: /* add */
+        emulate_2op_SrcV("add", src, dst, _regs.eflags);
          break;

or

@@ -3504,13 +3504,16 @@ x86_emulate(
  #if !defined(X86EMUL_NO_MMX) && !defined(X86EMUL_NO_SIMD)

      case X86EMUL_OPC_66(0x0f, 0x2a):       /* cvtpi2pd mm/m64,xmm */
-        if ( ea.type == OP_REG )
-        {
+        if ( ea.type == OP_REG ) {
+            host_and_vcpu_must_have(mmx);
+            op_bytes = (b & 4) && (vex.pfx & VEX_PREFIX_DOUBLE_MASK) ? 
16 : 8;
+            goto simd_0f_fp;
+        }
+        break;
      case X86EMUL_OPC(0x0f, 0x2a):          /* cvtpi2ps mm/m64,xmm */
      CASE_SIMD_PACKED_FP(, 0x0f, 0x2c):     /* cvttp{s,d}2pi xmm/mem,mm 
*/
      CASE_SIMD_PACKED_FP(, 0x0f, 0x2d):     /* cvtp{s,d}2pi xmm/mem,mm 
*/
-            host_and_vcpu_must_have(mmx);
-        }
+        host_and_vcpu_must_have(mmx);
          op_bytes = (b & 4) && (vex.pfx & VEX_PREFIX_DOUBLE_MASK) ? 16 : 
8;
          goto simd_0f_fp;

here, I think some amount of duplication is unavoidable.
Global deviation is quite a viable option, and in fact the one I would 
favour the most.

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


From xen-devel-bounces@lists.xenproject.org Wed Oct 25 14:50:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 14:50:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622958.970264 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvfDR-00005w-Oo; Wed, 25 Oct 2023 14:50:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622958.970264; Wed, 25 Oct 2023 14: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 1qvfDR-00005p-Ku; Wed, 25 Oct 2023 14:50:37 +0000
Received: by outflank-mailman (input) for mailman id 622958;
 Wed, 25 Oct 2023 14:50: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=Kl7N=GH=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qvfDP-0008W8-Ta
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 14:50:35 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id d9e0b77b-7345-11ee-98d5-6d05b1d4d9a1;
 Wed, 25 Oct 2023 16:50:34 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id AB2134EE073A;
 Wed, 25 Oct 2023 16:50: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: d9e0b77b-7345-11ee-98d5-6d05b1d4d9a1
MIME-Version: 1.0
Date: Wed, 25 Oct 2023 16:50:33 +0200
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: Stefano Stabellini <sstabellini@kernel.org>, michal.orzel@amd.com,
 xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, consulting@bugseng.com,
 andrew.cooper3@citrix.com, roger.pau@citrix.com, Simone Ballarin
 <simone.ballarin@bugseng.com>, Doug Goldstein <cardoe@cardoe.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][for-4.19 v3 1/8] xen/include: add macro LOWEST_BIT
In-Reply-To: <dd33e92f-03aa-cf3c-23d7-dcf9cce23c8e@suse.com>
References: <cover.1697815135.git.nicola.vetrini@bugseng.com>
 <546cf30aa43d6d0687a9a6c6d23b11128e5783e8.1697815135.git.nicola.vetrini@bugseng.com>
 <f504772a-68b4-fbfa-e7d4-8d22992c7944@suse.com>
 <f23a1f95916bd61ddcd5002428d8876c@bugseng.com>
 <6d113a237846c7a41aa083e806f172e7@bugseng.com>
 <5475d9e5-ec1c-7f71-ee77-59ec2e6ee01e@suse.com>
 <alpine.DEB.2.22.394.2310231340320.3516@ubuntu-linux-20-04-desktop>
 <dd33e92f-03aa-cf3c-23d7-dcf9cce23c8e@suse.com>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <2f88afb2383b5fdecf83d311ebe69bb4@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 24/10/2023 08:14, Jan Beulich wrote:
> On 23.10.2023 22:44, Stefano Stabellini wrote:
>> On Mon, 23 Oct 2023, Jan Beulich wrote:
>>> On 23.10.2023 15:19, Nicola Vetrini wrote:
>>>> On 23/10/2023 11:19, Nicola Vetrini wrote:
>>>>> On 23/10/2023 09:48, Jan Beulich wrote:
>>>>>> On 20.10.2023 17:28, Nicola Vetrini wrote:
>>>>>>> --- a/automation/eclair_analysis/ECLAIR/deviations.ecl
>>>>>>> +++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
>>>>>>> @@ -246,6 +246,12 @@ constant expressions are required.\""
>>>>>>>    "any()"}
>>>>>>>  -doc_end
>>>>>>> 
>>>>>>> +-doc_begin="The macro LOWEST_BIT encapsulates a well-known 
>>>>>>> pattern
>>>>>>> to obtain the value
>>>>>>> +2^ffs(x) for unsigned integers on two's complement architectures
>>>>>>> +(all the architectures supported by Xen satisfy this 
>>>>>>> requirement)."
>>>>>>> +-config=MC3R1.R10.1,reports+={safe,
>>>>>>> "any_area(any_loc(any_exp(macro(^LOWEST_BIT$))))"}
>>>>>>> +-doc_end
>>>>>> 
>>>>>> This being deviated this way (rather than by SAF-* comments) wants
>>>>>> justifying in the description. You did reply to my respective
>>>>>> comment on v2, but such then (imo) needs propagating into the 
>>>>>> actual
>>>>>> patch as well.
>>>>>> 
>>>>> 
>>>>> Sure, will do.
>>>>> 
>>>>>>> --- a/docs/misra/deviations.rst
>>>>>>> +++ b/docs/misra/deviations.rst
>>>>>>> @@ -192,6 +192,13 @@ Deviations related to MISRA C:2012 Rules:
>>>>>>>         See automation/eclair_analysis/deviations.ecl for the 
>>>>>>> full
>>>>>>> explanation.
>>>>>>>       - Tagged as `safe` for ECLAIR.
>>>>>>> 
>>>>>>> +   * - R10.1
>>>>>>> +     - The well-known pattern (x & -x) applied to unsigned 
>>>>>>> integer
>>>>>>> values on 2's
>>>>>>> +       complement architectures (i.e., all architectures 
>>>>>>> supported
>>>>>>> by Xen), used
>>>>>>> +       to obtain the value 2^ffs(x), where ffs(x) is the 
>>>>>>> position of
>>>>>>> the first
>>>>>>> +       bit set. If no bits are set, zero is returned.
>>>>>>> +     - Tagged as `safe` for ECLAIR.
>>>>>> 
>>>>>> In such an explanation there shall not be any ambiguity. Here I 
>>>>>> see
>>>>>> an issue with ffs() returning 1-based bit position numbers, which
>>>>>> isn't in line with the use in 2^ffs(x). (Arguably use of ^ itself 
>>>>>> is
>>>>>> also problematic, as that's XOR in C, not POW. I'd suggest 
>>>>>> 2^^ffs(x)
>>>>>> or 2**ffs(x).)
>>>>>> 
>>>>> 
>>>>> Makes sense, I think I'll use an plain english explanation to avoid
>>>>> any confusion
>>>>> about notation.
>>>>> 
>>>>>>> --- a/xen/include/xen/macros.h
>>>>>>> +++ b/xen/include/xen/macros.h
>>>>>>> @@ -8,8 +8,11 @@
>>>>>>>  #define DIV_ROUND(n, d) (((n) + (d) / 2) / (d))
>>>>>>>  #define DIV_ROUND_UP(n, d) (((n) + (d) - 1) / (d))
>>>>>>> 
>>>>>>> -#define MASK_EXTR(v, m) (((v) & (m)) / ((m) & -(m)))
>>>>>>> -#define MASK_INSR(v, m) (((v) * ((m) & -(m))) & (m))
>>>>>>> +/* Returns the 2^ffs(x) or 0, where ffs(x) is the index of the
>>>>>>> lowest set bit */
>>>>>>> +#define LOWEST_BIT(x) ((x) & -(x))
>>>>>> 
>>>>>> I'm afraid my concern regarding this new macro's name (voiced on 
>>>>>> v2)
>>>>>> hasn't
>>>>>> been addressed (neither verbally nor by finding a more suitable 
>>>>>> name).
>>>>>> 
>>>>>> Jan
>>>>> 
>>>>> I didn't come up with much better names, so I left it as is. Here's 
>>>>> a
>>>>> few ideas:
>>>>> 
>>>>> - LOWEST_SET
>>>>> - MASK_LOWEST_SET
>>>>> - MASK_LOWEST_BIT
>>>>> - MASK_FFS_0
>>>>> - LOWEST_ONE
>>>>> 
>>>>> and also yours, included here for convenience, even though you felt 
>>>>> it
>>>>> was too long:
>>>>> 
>>>>> - ISOLATE_LOW_BIT()
>>>>> 
>>>>> All maintainers from THE REST are CC-ed, so we can see if anyone 
>>>>> has
>>>>> any suggestion.
>>>> 
>>>> There's also LOWEST_BIT_MASK as another possible name.
>>> 
>>> While naming-wise okay to me, it has the same "too long" issue as
>>> ISOLATE_LOW_BIT(). Considering x86, in the BMI ISA extension, has an
>>> insn doing exactly that (BLSI), taking inspiration from its mnemonic
>>> may also be an option.
>> 
>> I don't mean to make things difficult but I prefer LOWEST_BIT or
>> MASK_LOWEST_BIT. It is clear at first glance. BLSI is not as clear,
>> unless you work on the specific ISA with BLSI.
>> 
>> In general, I do appreciate shorter names, but if one option is much
>> clearer than the other, I prefer clarity over shortness.
> 
> That's fine with me, but note that neither LOWEST_BIT nor 
> MASK_LOWEST_BIT
> really provide the aimed at clarity. The shortest that I could think of
> that would be derived from that would be LOWEST_SET_BIT_MASK() (albeit
> even that leaves a bit of ambiguity, thinking about it for a little
> longer). The main point I'm trying to make that _if_ we need a wrapper
> macro for this in the first place (note the other thread about macros
> still requiring deviation comments at all use sites for Eclair), its 
> name
> needs to somehow express the precise operation it does (or, like would 
> be
> the case for BLSI, make people not recognizing the name go look rather
> than guess).
> 
> Jan

Ok, I'll send a revised version using MASK_LOWEST_BIT, taking into 
account also the
other comments about the explanation on the macro definition
(which some IDEs even show when hovering on its usage, which could 
partially address
the latter concern).

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


From xen-devel-bounces@lists.xenproject.org Wed Oct 25 14:51:04 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 14:51:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622961.970274 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvfDs-0000cA-3Q; Wed, 25 Oct 2023 14:51:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622961.970274; Wed, 25 Oct 2023 14:51: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 1qvfDs-0000c3-0q; Wed, 25 Oct 2023 14:51:04 +0000
Received: by outflank-mailman (input) for mailman id 622961;
 Wed, 25 Oct 2023 14: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=LJSz=GH=casper.srs.infradead.org=BATV+85b1c44ac99574f3713d+7367+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qvfDq-0000WU-NP
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 14:51:02 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id e91455e0-7345-11ee-9b0e-b553b5be7939;
 Wed, 25 Oct 2023 16:50:59 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qvfDY-009Nmf-Ta; Wed, 25 Oct 2023 14:50:44 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1qvfDY-002dEJ-0I; Wed, 25 Oct 2023 15:50:44 +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
X-Inumbo-ID: e91455e0-7345-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=cMQamAmGxVX8j1TYaTFUxDpxUmOm6N6treNgi5dENCI=; b=WtDuCSvr5Q0uexpCx5QwfNxVZy
	ROoD7PbXDpLBTHv10a4sb52qOcYxP7sVaVH/NJGwCgJ77PtptHAmxIq1lmRxaLvn1/sAI4mNcVa5y
	12MBgl4J0jy+1GLBWvXaSTgc4K1BCjA/Yzihw3gyve96vcuHO9XMDH9OrxcLxgRE8veib5GQ8ptb2
	hY7TYHtsyq18aAgKXiMYIlQ+358roX1Kia+c+gpKgmAlDKQ8yBhxawYBqJm5uBrelE/kfRoCjO185
	nYGVKukjvboJ/wX9kHgvqrqfE/NVMb6HDHzCd7q1HBeO/OLNaZ1qtk3OhrwOmFOTaGnRChQkaQuje
	9y7XfXuw==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>,
	Hanna Reitz <hreitz@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	=?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Richard Henderson <richard.henderson@linaro.org>,
	Eduardo Habkost <eduardo@habkost.net>,
	Jason Wang <jasowang@redhat.com>,
	Marcelo Tosatti <mtosatti@redhat.com>,
	qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org,
	kvm@vger.kernel.org,
	Bernhard Beschow <shentey@gmail.com>,
	Joel Upham <jupham125@gmail.com>
Subject: [PATCH v3 06/28] hw/xen: take iothread mutex in xen_evtchn_reset_op()
Date: Wed, 25 Oct 2023 15:50:20 +0100
Message-Id: <20231025145042.627381-7-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231025145042.627381-1-dwmw2@infradead.org>
References: <20231025145042.627381-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

The xen_evtchn_soft_reset() function requires the iothread mutex, but is
also called for the EVTCHNOP_reset hypercall. Ensure the mutex is taken
in that case.

Fixes: a15b10978fe6 ("hw/xen: Implement EVTCHNOP_reset")
Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 hw/i386/kvm/xen_evtchn.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/hw/i386/kvm/xen_evtchn.c b/hw/i386/kvm/xen_evtchn.c
index 3d6f4b4a0a..b2b4be9983 100644
--- a/hw/i386/kvm/xen_evtchn.c
+++ b/hw/i386/kvm/xen_evtchn.c
@@ -1135,6 +1135,7 @@ int xen_evtchn_reset_op(struct evtchn_reset *reset)
         return -ESRCH;
     }
 
+    QEMU_IOTHREAD_LOCK_GUARD();
     return xen_evtchn_soft_reset();
 }
 
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Wed Oct 25 14:51:04 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 14:51:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622962.970278 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvfDs-0000ej-Az; Wed, 25 Oct 2023 14:51:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622962.970278; Wed, 25 Oct 2023 14:51: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 1qvfDs-0000eN-7l; Wed, 25 Oct 2023 14:51:04 +0000
Received: by outflank-mailman (input) for mailman id 622962;
 Wed, 25 Oct 2023 14:51: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=LJSz=GH=casper.srs.infradead.org=BATV+85b1c44ac99574f3713d+7367+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qvfDo-0008W8-Oj
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 14:51:03 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id e9274ceb-7345-11ee-98d5-6d05b1d4d9a1;
 Wed, 25 Oct 2023 16:50:59 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qvfDY-009NmZ-68; Wed, 25 Oct 2023 14:50:44 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1qvfDX-002dDz-2J; Wed, 25 Oct 2023 15:50:43 +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
X-Inumbo-ID: e9274ceb-7345-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=QOmUYFl3LA5suJXP4FpVRY+eqhPYL8puoFjgeKxcxDM=; b=fW1SfEY/kvSu1hhyw5jhHozZpT
	BGCnYlGkAE2crCuUIrcAsTx0w2hlaPkPVBCLIW1ibbhQ1+XtaPnSzex7Pwu+dAF85JQh7gFQdRjAl
	zIgIUCJax3Hmo7ZWdVrPibJwFgj/48XN7bfTRy7/1VR7fcKk5P2QtSGQCha29pjfT9P6uWKjnwOFz
	CmE1gauXLgd3P/27RuSd02cs3boi2x8wg6syoT/b3j9EG0XA7N7a30s6t9nSsIPX+TLBfmQHyiKh/
	hY1QDNMjspLKxlgPapPDCCTdDer8uGg/doLugfSf7hGpYr7KPoHrgSRFm9u+mz9ajGjS4L8OFHHGA
	ZwVHPHgA==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>,
	Hanna Reitz <hreitz@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	=?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Richard Henderson <richard.henderson@linaro.org>,
	Eduardo Habkost <eduardo@habkost.net>,
	Jason Wang <jasowang@redhat.com>,
	Marcelo Tosatti <mtosatti@redhat.com>,
	qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org,
	kvm@vger.kernel.org,
	Bernhard Beschow <shentey@gmail.com>,
	Joel Upham <jupham125@gmail.com>
Subject: [PATCH v3 01/28] i386/xen: Don't advertise XENFEAT_supervisor_mode_kernel
Date: Wed, 25 Oct 2023 15:50:15 +0100
Message-Id: <20231025145042.627381-2-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231025145042.627381-1-dwmw2@infradead.org>
References: <20231025145042.627381-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

This confuses lscpu into thinking it's running in PVH mode.

Fixes: bedcc139248 ("i386/xen: implement HYPERVISOR_xen_version")
Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
Reviewed-by: Paul Durrant <paul@xen.org>
---
 target/i386/kvm/xen-emu.c | 1 -
 1 file changed, 1 deletion(-)

diff --git a/target/i386/kvm/xen-emu.c b/target/i386/kvm/xen-emu.c
index 76348f9d5d..0055441b2e 100644
--- a/target/i386/kvm/xen-emu.c
+++ b/target/i386/kvm/xen-emu.c
@@ -267,7 +267,6 @@ static bool kvm_xen_hcall_xen_version(struct kvm_xen_exit *exit, X86CPU *cpu,
             fi.submap |= 1 << XENFEAT_writable_page_tables |
                          1 << XENFEAT_writable_descriptor_tables |
                          1 << XENFEAT_auto_translated_physmap |
-                         1 << XENFEAT_supervisor_mode_kernel |
                          1 << XENFEAT_hvm_callback_vector |
                          1 << XENFEAT_hvm_safe_pvclock |
                          1 << XENFEAT_hvm_pirqs;
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Wed Oct 25 14:51:05 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 14:51:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622964.970294 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvfDt-00016A-K8; Wed, 25 Oct 2023 14:51:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622964.970294; Wed, 25 Oct 2023 14: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 1qvfDt-00014y-GO; Wed, 25 Oct 2023 14:51:05 +0000
Received: by outflank-mailman (input) for mailman id 622964;
 Wed, 25 Oct 2023 14:51: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=LJSz=GH=casper.srs.infradead.org=BATV+85b1c44ac99574f3713d+7367+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qvfDr-0000WU-Nb
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 14:51:03 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id e9124e69-7345-11ee-9b0e-b553b5be7939;
 Wed, 25 Oct 2023 16:50:59 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qvfDZ-009Nmh-5W; Wed, 25 Oct 2023 14:50:45 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1qvfDY-002dEt-2Q; Wed, 25 Oct 2023 15:50:44 +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
X-Inumbo-ID: e9124e69-7345-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=Sender:Content-Transfer-Encoding:
	Content-Type:MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:
	To:From:Reply-To:Content-ID:Content-Description;
	bh=nSyX13U7fFimGQ53pLarBeZoTcJ83YAj4kMDKmZCroo=; b=sU8+/FmzjvrZSwWTPPHaMd+E4T
	jDMl4D0TCrxob06SgGcF9MfamCPAfdobDvLhfXAHXXUJy1JIIsdGOJrwJ6KkWpcQebdQIvtIRk2ZW
	5evtP1+2Epvifd5plVPrEYcgUl+KNVqqnhYU6uDiAUpJTuO7KsfGFs6aqQNY1cdQM+xLFt+LIbQqo
	ItGqyZWn2VySri4f6dwJx5KlmfhaNHIUoJ1T/LcFvLwtN5Cj7xsOSVFG88YEt4I8ecxy2Tt1K+BKx
	ieaE8fBANaoPEcW7oXj/KXgHK/MgdrubPp0V6+Dtsmwuo2ZyVcJnxQWh/MQR/uUI9ghpGaiQGy+rZ
	FmQ4QrgQ==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>,
	Hanna Reitz <hreitz@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	=?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Richard Henderson <richard.henderson@linaro.org>,
	Eduardo Habkost <eduardo@habkost.net>,
	Jason Wang <jasowang@redhat.com>,
	Marcelo Tosatti <mtosatti@redhat.com>,
	qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org,
	kvm@vger.kernel.org,
	Bernhard Beschow <shentey@gmail.com>,
	Joel Upham <jupham125@gmail.com>
Subject: [PATCH v3 14/28] hw/xen: add get_frontend_path() method to XenDeviceClass
Date: Wed, 25 Oct 2023 15:50:28 +0100
Message-Id: <20231025145042.627381-15-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231025145042.627381-1-dwmw2@infradead.org>
References: <20231025145042.627381-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

The primary Xen console is special. The guest's side is set up for it by
the toolstack automatically and not by the standard PV init sequence.

Accordingly, its *frontend* doesn't appear in …/device/console/0 either;
instead it appears under …/console in the guest's XenStore node.

To allow the Xen console driver to override the frontend path for the
primary console, add a method to the XenDeviceClass which can be used
instead of the standard xen_device_get_frontend_path()

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 hw/xen/xen-bus.c         | 11 ++++++++++-
 include/hw/xen/xen-bus.h |  2 ++
 2 files changed, 12 insertions(+), 1 deletion(-)

diff --git a/hw/xen/xen-bus.c b/hw/xen/xen-bus.c
index ece8ec40cd..12ff782005 100644
--- a/hw/xen/xen-bus.c
+++ b/hw/xen/xen-bus.c
@@ -711,8 +711,17 @@ static void xen_device_frontend_create(XenDevice *xendev, Error **errp)
 {
     ERRP_GUARD();
     XenBus *xenbus = XEN_BUS(qdev_get_parent_bus(DEVICE(xendev)));
+    XenDeviceClass *xendev_class = XEN_DEVICE_GET_CLASS(xendev);
 
-    xendev->frontend_path = xen_device_get_frontend_path(xendev);
+    if (xendev_class->get_frontend_path) {
+        xendev->frontend_path = xendev_class->get_frontend_path(xendev, errp);
+        if (!xendev->frontend_path) {
+            error_prepend(errp, "failed to create frontend: ");
+            return;
+        }
+    } else {
+        xendev->frontend_path = xen_device_get_frontend_path(xendev);
+    }
 
     /*
      * The frontend area may have already been created by a legacy
diff --git a/include/hw/xen/xen-bus.h b/include/hw/xen/xen-bus.h
index f435898164..eb440880b5 100644
--- a/include/hw/xen/xen-bus.h
+++ b/include/hw/xen/xen-bus.h
@@ -33,6 +33,7 @@ struct XenDevice {
 };
 typedef struct XenDevice XenDevice;
 
+typedef char *(*XenDeviceGetFrontendPath)(XenDevice *xendev, Error **errp);
 typedef char *(*XenDeviceGetName)(XenDevice *xendev, Error **errp);
 typedef void (*XenDeviceRealize)(XenDevice *xendev, Error **errp);
 typedef void (*XenDeviceFrontendChanged)(XenDevice *xendev,
@@ -46,6 +47,7 @@ struct XenDeviceClass {
     /*< public >*/
     const char *backend;
     const char *device;
+    XenDeviceGetFrontendPath get_frontend_path;
     XenDeviceGetName get_name;
     XenDeviceRealize realize;
     XenDeviceFrontendChanged frontend_changed;
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Wed Oct 25 14:51:06 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 14:51:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622965.970303 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvfDu-0001NF-Sm; Wed, 25 Oct 2023 14:51:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622965.970303; Wed, 25 Oct 2023 14:51: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 1qvfDu-0001N4-Pa; Wed, 25 Oct 2023 14:51:06 +0000
Received: by outflank-mailman (input) for mailman id 622965;
 Wed, 25 Oct 2023 14:51: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=LJSz=GH=casper.srs.infradead.org=BATV+85b1c44ac99574f3713d+7367+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qvfDs-0000WU-No
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 14:51:04 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id e9144c93-7345-11ee-9b0e-b553b5be7939;
 Wed, 25 Oct 2023 16:50:59 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qvfDY-009Nma-Hc; Wed, 25 Oct 2023 14:50:44 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1qvfDY-002dEN-0Y; Wed, 25 Oct 2023 15:50:44 +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
X-Inumbo-ID: e9144c93-7345-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=I7wwUWDSmNrD50IckcuS/vpghKxFsMuU+uj7Ug/+mno=; b=RvDifJ46k3zOQxzO3K8gyXMav9
	h9wbWdHVLd9gbqWP/b4m/KQeTI2stcYxTPljdDzPt6hb7NbRhR2P0Z4xKNwxtgzxk3N2Igdu5kwqT
	AXV3Jx/OXlBhdliH0firkNh2O5qAZTR6XHzFMcLDeFRdKJoSGTYLHlhONm24s0uwaH0rDz1Fk/PGw
	3QtrkBftuCQR9gV2WZxNA4tVN+MG4Zja8lhsVua2l7qFzWDiSaHeANeDiYbCF+WoLyBNRQbkEgsY2
	OfZjG7o/oJkUjbPK3xppz5WL8MhBsZtqCyEEELWg6Dn7mGtZrcsYl+Wq2DQKqUo4lVF+bNWFOf8G7
	JSaqrwxg==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>,
	Hanna Reitz <hreitz@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	=?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Richard Henderson <richard.henderson@linaro.org>,
	Eduardo Habkost <eduardo@habkost.net>,
	Jason Wang <jasowang@redhat.com>,
	Marcelo Tosatti <mtosatti@redhat.com>,
	qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org,
	kvm@vger.kernel.org,
	Bernhard Beschow <shentey@gmail.com>,
	Joel Upham <jupham125@gmail.com>
Subject: [PATCH v3 07/28] hw/xen: use correct default protocol for xen-block on x86
Date: Wed, 25 Oct 2023 15:50:21 +0100
Message-Id: <20231025145042.627381-8-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231025145042.627381-1-dwmw2@infradead.org>
References: <20231025145042.627381-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

Even on x86_64 the default protocol is the x86-32 one if the guest doesn't
specifically ask for x86-64.

Fixes: b6af8926fb85 ("xen: add implementations of xen-block connect and disconnect functions...")
Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 hw/block/xen-block.c | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/hw/block/xen-block.c b/hw/block/xen-block.c
index a07cd7eb5d..64470fc579 100644
--- a/hw/block/xen-block.c
+++ b/hw/block/xen-block.c
@@ -117,7 +117,11 @@ static void xen_block_connect(XenDevice *xendev, Error **errp)
 
     if (xen_device_frontend_scanf(xendev, "protocol", "%ms",
                                   &str) != 1) {
-        protocol = BLKIF_PROTOCOL_NATIVE;
+        /* x86 defaults to the 32-bit protocol even for 64-bit guests. */
+        if (object_dynamic_cast(OBJECT(qdev_get_machine()), "x86-machine"))
+            protocol = BLKIF_PROTOCOL_X86_32;
+        else
+            protocol = BLKIF_PROTOCOL_NATIVE;
     } else {
         if (strcmp(str, XEN_IO_PROTO_ABI_X86_32) == 0) {
             protocol = BLKIF_PROTOCOL_X86_32;
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Wed Oct 25 14:51:07 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 14:51:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622966.970309 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvfDv-0001QB-A8; Wed, 25 Oct 2023 14:51:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622966.970309; Wed, 25 Oct 2023 14:51: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 1qvfDv-0001P6-3K; Wed, 25 Oct 2023 14:51:07 +0000
Received: by outflank-mailman (input) for mailman id 622966;
 Wed, 25 Oct 2023 14:51: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=LJSz=GH=casper.srs.infradead.org=BATV+85b1c44ac99574f3713d+7367+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qvfDt-0000WU-Nq
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 14:51:05 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id e964e8c7-7345-11ee-9b0e-b553b5be7939;
 Wed, 25 Oct 2023 16:51:00 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qvfDa-009Nmu-1W; Wed, 25 Oct 2023 14:50:46 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1qvfDZ-002dFl-2Q; Wed, 25 Oct 2023 15:50:45 +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
X-Inumbo-ID: e964e8c7-7345-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=W3zMp4SVis8Wv7C4rIvkdlKc8TVg4WhmG+yeqSWM84w=; b=wVLFRJGQmZRYbF38D2mJVDI4T1
	J2sT8KM4AN8l2FtLiNVMEXxXJ6L5Kc0mjz9IBlRZm7hC6RBF5LH04we+oKtfcBSC0ii2kD5aymOHI
	r1+vIfiElRK7jws52xiLwzEQ28bodju9NIvkGjA5n4KIu1mF7zVr/HbatbjmspO0ljpnoSrwX6qHb
	fo02p3GSOYLaJysuyXhDThtmYiVYkUMryRS1gCn1+iInl4NGo33AqT9sIrSXuMu+cAa3Z7DlvWJV1
	6MXQwPSJ9BURTPIDSyk3QuQUxMa5405mqSg3h5s9Cn5yCcCW2oQEWqqnBAzDUjfCts1QRNvEq0LjD
	gPBOVUtw==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>,
	Hanna Reitz <hreitz@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	=?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Richard Henderson <richard.henderson@linaro.org>,
	Eduardo Habkost <eduardo@habkost.net>,
	Jason Wang <jasowang@redhat.com>,
	Marcelo Tosatti <mtosatti@redhat.com>,
	qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org,
	kvm@vger.kernel.org,
	Bernhard Beschow <shentey@gmail.com>,
	Joel Upham <jupham125@gmail.com>
Subject: [PATCH v3 26/28] hw/i386/pc: use qemu_get_nic_info() and pci_init_nic_devices()
Date: Wed, 25 Oct 2023 15:50:40 +0100
Message-Id: <20231025145042.627381-27-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231025145042.627381-1-dwmw2@infradead.org>
References: <20231025145042.627381-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

Eliminate direct access to nd_table[] and nb_nics by processing the the
ISA NICs first and then calling pci_init_nic_devices() for the test.

It's important to do this *before* the subsequent patch which registers
the Xen PV network devices, because the code being remove here didn't
check whether nd->instantiated was already set before using each entry.

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 hw/i386/pc.c                | 21 +++++++++++----------
 include/hw/net/ne2000-isa.h |  2 --
 2 files changed, 11 insertions(+), 12 deletions(-)

diff --git a/hw/i386/pc.c b/hw/i386/pc.c
index 11fed78d17..7d2ae2b3d7 100644
--- a/hw/i386/pc.c
+++ b/hw/i386/pc.c
@@ -652,8 +652,11 @@ static void pc_init_ne2k_isa(ISABus *bus, NICInfo *nd)
 {
     static int nb_ne2k = 0;
 
-    if (nb_ne2k == NE2000_NB_MAX)
+    if (nb_ne2k == NE2000_NB_MAX) {
+        error_setg(&error_fatal,
+                   "maximum number of ISA NE2000 devices exceeded");
         return;
+    }
     isa_ne2000_init(bus, ne2000_io[nb_ne2k],
                     ne2000_irq[nb_ne2k], nd);
     nb_ne2k++;
@@ -1294,19 +1297,17 @@ void pc_basic_device_init(struct PCMachineState *pcms,
 void pc_nic_init(PCMachineClass *pcmc, ISABus *isa_bus, PCIBus *pci_bus)
 {
     MachineClass *mc = MACHINE_CLASS(pcmc);
-    int i;
+    bool default_is_ne2k = g_str_equal(mc->default_nic, TYPE_ISA_NE2000);
+    NICInfo *nd;
 
     rom_set_order_override(FW_CFG_ORDER_OVERRIDE_NIC);
-    for (i = 0; i < nb_nics; i++) {
-        NICInfo *nd = &nd_table[i];
-        const char *model = nd->model ? nd->model : mc->default_nic;
 
-        if (g_str_equal(model, "ne2k_isa")) {
-            pc_init_ne2k_isa(isa_bus, nd);
-        } else {
-            pci_nic_init_nofail(nd, pci_bus, model, NULL);
-        }
+    while ((nd = qemu_find_nic_info(TYPE_ISA_NE2000, default_is_ne2k, NULL))) {
+        pc_init_ne2k_isa(isa_bus, nd);
     }
+
+    pci_init_nic_devices(pci_bus, mc->default_nic);
+
     rom_reset_order_override();
 }
 
diff --git a/include/hw/net/ne2000-isa.h b/include/hw/net/ne2000-isa.h
index af59ee0b02..73bae10ad1 100644
--- a/include/hw/net/ne2000-isa.h
+++ b/include/hw/net/ne2000-isa.h
@@ -22,8 +22,6 @@ static inline ISADevice *isa_ne2000_init(ISABus *bus, int base, int irq,
 {
     ISADevice *d;
 
-    qemu_check_nic_model(nd, "ne2k_isa");
-
     d = isa_try_new(TYPE_ISA_NE2000);
     if (d) {
         DeviceState *dev = DEVICE(d);
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Wed Oct 25 14:51:07 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 14:51:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622967.970314 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvfDv-0001Ur-Kb; Wed, 25 Oct 2023 14:51:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622967.970314; Wed, 25 Oct 2023 14:51: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 1qvfDv-0001T4-CP; Wed, 25 Oct 2023 14:51:07 +0000
Received: by outflank-mailman (input) for mailman id 622967;
 Wed, 25 Oct 2023 14:51: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=LJSz=GH=casper.srs.infradead.org=BATV+85b1c44ac99574f3713d+7367+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qvfDu-0008W8-8V
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 14:51:06 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id eca87b99-7345-11ee-98d5-6d05b1d4d9a1;
 Wed, 25 Oct 2023 16:51:05 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qvfDZ-009Nmr-Th; Wed, 25 Oct 2023 14:50:45 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1qvfDZ-002dFY-1e; Wed, 25 Oct 2023 15:50:45 +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
X-Inumbo-ID: eca87b99-7345-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=uSYMnEZDiwsPKPtr72ZyrADmBs8CT77t/B1qZONpFnk=; b=WfqXIU2zPItQyXKjZHl4Uu9nXh
	B6aWg7LSpwUF0ueOAIEJSHiIEOHrRCeloIWpDcQLn00ZXlpH77lXvOJaiaJ+/nYln7eLJrszaiTL/
	50b3+nHmNgCiey+dLbJhOYuEqpXAmelyhhNY+Jf93M/8ffQ/AW/ZaXJ6BdpbzfhFn3y5SEKA7L7bb
	5cxCrkxQM2ovzfSMvfuakvCgcXTE2C+qrxmRHBI/8yrS82PDGltHwhHIWhkoUKeTZMBz6cei2ZY1a
	i1qLV5q9D7zkuExZVKvvuuvpb5o+fOdDWtGJVQhuKAYVc8Ub6vIRyjQL7K53bgfylOkeRywegpm+R
	8CpeF+jw==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>,
	Hanna Reitz <hreitz@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	=?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Richard Henderson <richard.henderson@linaro.org>,
	Eduardo Habkost <eduardo@habkost.net>,
	Jason Wang <jasowang@redhat.com>,
	Marcelo Tosatti <mtosatti@redhat.com>,
	qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org,
	kvm@vger.kernel.org,
	Bernhard Beschow <shentey@gmail.com>,
	Joel Upham <jupham125@gmail.com>
Subject: [PATCH v3 23/28] net: report list of available models according to platform
Date: Wed, 25 Oct 2023 15:50:37 +0100
Message-Id: <20231025145042.627381-24-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231025145042.627381-1-dwmw2@infradead.org>
References: <20231025145042.627381-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

By noting the models for which a configuration was requested, we can give
the user an accurate list of which NIC models were actually available on
the platform/configuration that was otherwise chosen.

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 net/net.c | 94 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 94 insertions(+)

diff --git a/net/net.c b/net/net.c
index f8b4973a1e..807220e630 100644
--- a/net/net.c
+++ b/net/net.c
@@ -75,6 +75,8 @@ typedef QSIMPLEQ_HEAD(, NetdevQueueEntry) NetdevQueue;
 
 static NetdevQueue nd_queue = QSIMPLEQ_HEAD_INITIALIZER(nd_queue);
 
+static GHashTable *nic_model_help;
+
 /***********************************************************/
 /* network device redirectors */
 
@@ -1072,12 +1074,94 @@ static int net_init_nic(const Netdev *netdev, const char *name,
     return idx;
 }
 
+static gboolean add_nic_result(gpointer key, gpointer value, gpointer user_data)
+{
+    GPtrArray *results = user_data;
+    GPtrArray *alias_list = value;
+    const char *model = key;
+    char *result;
+
+    if (!alias_list) {
+        result = g_strdup(model);
+    } else {
+        GString *result_str = g_string_new(model);
+        int i;
+
+        g_string_append(result_str, " (aka ");
+        for (i = 0; i < alias_list->len; i++) {
+            if (i) {
+                g_string_append(result_str, ", ");
+            }
+            g_string_append(result_str, alias_list->pdata[i]);
+        }
+        g_string_append(result_str, ")");
+        result = result_str->str;
+        g_string_free(result_str, false);
+        g_ptr_array_unref(alias_list);
+    }
+    g_ptr_array_add(results, result);
+    return true;
+}
+
+static int model_cmp(char **a, char **b)
+{
+    return strcmp(*a, *b);
+}
+
+static void show_nic_models(void)
+{
+    GPtrArray *results = g_ptr_array_new();
+    int i;
+
+    g_hash_table_foreach_remove(nic_model_help, add_nic_result, results);
+    g_ptr_array_sort(results, (GCompareFunc)model_cmp);
+
+    printf("Available NIC models for this configuration:\n");
+    for (i = 0 ; i < results->len; i++) {
+        printf("%s\n", (char *)results->pdata[i]);
+    }
+    g_hash_table_unref(nic_model_help);
+    nic_model_help = NULL;
+}
+
+static void add_nic_model_help(const char *model, const char *alias)
+{
+    GPtrArray *alias_list = NULL;
+
+    if (g_hash_table_lookup_extended(nic_model_help, model, NULL,
+                                     (gpointer *)&alias_list)) {
+        /* Already exists, no alias to add: return */
+        if (!alias) {
+            return;
+        }
+        if (alias_list) {
+            /* Check if this alias is already in the list. Add if not. */
+            if (!g_ptr_array_find_with_equal_func(alias_list, alias,
+                                                  g_str_equal, NULL)) {
+                g_ptr_array_add(alias_list, g_strdup(alias));
+            }
+            return;
+        }
+    }
+    /* Either this model wasn't in the list already, or a first alias added */
+    if (alias) {
+        alias_list = g_ptr_array_new();
+        g_ptr_array_set_free_func(alias_list, g_free);
+        g_ptr_array_add(alias_list, g_strdup(alias));
+    }
+    g_hash_table_replace(nic_model_help, g_strdup(model), alias_list);
+}
+
 NICInfo *qemu_find_nic_info(const char *typename, bool match_default,
                             const char *alias)
 {
     NICInfo *nd;
     int i;
 
+    if (nic_model_help) {
+        add_nic_model_help(typename, alias);
+    }
+
     for (i = 0; i < nb_nics; i++) {
         nd = &nd_table[i];
 
@@ -1591,6 +1675,10 @@ void net_check_clients(void)
     NetClientState *nc;
     int i;
 
+    if (nic_model_help) {
+        show_nic_models();
+        exit(0);
+    }
     net_hub_check_clients();
 
     QTAILQ_FOREACH(nc, &net_clients, next) {
@@ -1670,6 +1758,12 @@ static int net_param_nic(void *dummy, QemuOpts *opts, Error **errp)
     memset(ni, 0, sizeof(*ni));
     ni->model = qemu_opt_get_del(opts, "model");
 
+    if (!nic_model_help && !g_strcmp0(ni->model, "help")) {
+        nic_model_help = g_hash_table_new_full(g_str_hash, g_str_equal,
+                                               g_free, NULL);
+        return 0;
+    }
+
     /* Create an ID if the user did not specify one */
     nd_id = g_strdup(qemu_opts_id(opts));
     if (!nd_id) {
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Wed Oct 25 14:51:09 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 14:51:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622968.970333 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvfDx-00026t-C8; Wed, 25 Oct 2023 14:51:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622968.970333; Wed, 25 Oct 2023 14:51: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 1qvfDx-00024C-6n; Wed, 25 Oct 2023 14:51:09 +0000
Received: by outflank-mailman (input) for mailman id 622968;
 Wed, 25 Oct 2023 14:51: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=LJSz=GH=casper.srs.infradead.org=BATV+85b1c44ac99574f3713d+7367+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qvfDu-0000WU-O4
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 14:51:06 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id e91671fe-7345-11ee-9b0e-b553b5be7939;
 Wed, 25 Oct 2023 16:50:59 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qvfDZ-009Nmm-FK; Wed, 25 Oct 2023 14:50:45 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1qvfDY-002dF5-39; Wed, 25 Oct 2023 15:50:44 +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
X-Inumbo-ID: e91671fe-7345-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=Sender:Content-Transfer-Encoding:
	Content-Type:MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:
	To:From:Reply-To:Content-ID:Content-Description;
	bh=XhsYSfIQYSBmCatJUPtQ3cCtM2z0F6a5Ae6S/654rl8=; b=bebDdC3UkVjTaxQCkZRKhYfreU
	Pi4BJykRwkqs2h7q4xklzUF5qaigSUJXfV0Q0z6OPCrW9Om6Sw/kfpxb/HVz/f4tJt1duma6/0Oyk
	MdntSYjSMjWbHzix9vXpcAW5h+rsHAVjxO8L9mZmfp10stYQ7nLxhyZrJdyGBQgDEMGZiTxb1UMzm
	xSLiV52M6aauG6qMFnLHqIZeBlJYJYLEjl8q2Jf11w/fJzELUVvQXy8XXBolaxZOPs4d19+TYYMT3
	j7txOIhizMddoSuBqwI4MgqN3IcWDmMEEt9gMQ9PyoPW3aV5m3EL89n4kUjoEr/7Ov6WM4oYMahVA
	nITjymYg==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>,
	Hanna Reitz <hreitz@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	=?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Richard Henderson <richard.henderson@linaro.org>,
	Eduardo Habkost <eduardo@habkost.net>,
	Jason Wang <jasowang@redhat.com>,
	Marcelo Tosatti <mtosatti@redhat.com>,
	qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org,
	kvm@vger.kernel.org,
	Bernhard Beschow <shentey@gmail.com>,
	Joel Upham <jupham125@gmail.com>
Subject: [PATCH v3 17/28] hw/xen: add support for Xen primary console in emulated mode
Date: Wed, 25 Oct 2023 15:50:31 +0100
Message-Id: <20231025145042.627381-18-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231025145042.627381-1-dwmw2@infradead.org>
References: <20231025145042.627381-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

The primary console is special because the toolstack maps a page into
the guest for its ring, and also allocates the guest-side event channel.
The guest's grant table is even primed to export that page using a known
grant ref#. Add support for all that in emulated mode, so that we can
have a primary console.

For reasons unclear, the backends running under real Xen don't just use
a mapping of the well-known GNTTAB_RESERVED_CONSOLE grant ref (which
would also be in the ring-ref node in XenStore). Instead, the toolstack
sets the ring-ref node of the primary console to the GFN of the guest
page. The backend is expected to handle that special case and map it
with foreignmem operations instead.

We don't have an implementation of foreignmem ops for emulated Xen mode,
so just make it map GNTTAB_RESERVED_CONSOLE instead. This would probably
work for real Xen too, but we can't work out how to make real Xen create
a primary console of type "ioemu" to make QEMU drive it, so we can't
test that; might as well leave it as it is for now under Xen.

Now at last we can boot the Xen PV shim and run PV kernels in QEMU.

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 hw/char/xen_console.c             |  78 ++++++++----
 hw/i386/kvm/meson.build           |   1 +
 hw/i386/kvm/trace-events          |   2 +
 hw/i386/kvm/xen-stubs.c           |   8 ++
 hw/i386/kvm/xen_gnttab.c          |   7 +-
 hw/i386/kvm/xen_primary_console.c | 193 ++++++++++++++++++++++++++++++
 hw/i386/kvm/xen_primary_console.h |  23 ++++
 hw/i386/kvm/xen_xenstore.c        |  10 ++
 hw/xen/xen-bus.c                  |   5 +
 include/hw/xen/xen-bus.h          |   1 +
 target/i386/kvm/xen-emu.c         |  23 +++-
 11 files changed, 328 insertions(+), 23 deletions(-)
 create mode 100644 hw/i386/kvm/xen_primary_console.c
 create mode 100644 hw/i386/kvm/xen_primary_console.h

diff --git a/hw/char/xen_console.c b/hw/char/xen_console.c
index 4a419dc287..5cbee2f184 100644
--- a/hw/char/xen_console.c
+++ b/hw/char/xen_console.c
@@ -33,6 +33,8 @@
 #include "hw/qdev-properties-system.h"
 #include "hw/xen/interface/io/console.h"
 #include "hw/xen/interface/io/xs_wire.h"
+#include "hw/xen/interface/grant_table.h"
+#include "hw/i386/kvm/xen_primary_console.h"
 #include "trace.h"
 
 struct buffer {
@@ -230,24 +232,47 @@ static bool xen_console_connect(XenDevice *xendev, Error **errp)
         return false;
     }
 
-    if (!con->dev) {
-        xen_pfn_t mfn = (xen_pfn_t)con->ring_ref;
-        con->sring = qemu_xen_foreignmem_map(xendev->frontend_id, NULL,
-                                             PROT_READ | PROT_WRITE,
-                                             1, &mfn, NULL);
-        if (!con->sring) {
-            error_setg(errp, "failed to map console page");
-            return false;
+    switch (con->dev) {
+    case 0:
+        /*
+         * The primary console is special. For real Xen the ring-ref is
+         * actually a GFN which needs to be mapped as foreignmem.
+         */
+        if (xen_mode != XEN_EMULATE) {
+            xen_pfn_t mfn = (xen_pfn_t)con->ring_ref;
+            con->sring = qemu_xen_foreignmem_map(xendev->frontend_id, NULL,
+                                                 PROT_READ | PROT_WRITE,
+                                                 1, &mfn, NULL);
+            if (!con->sring) {
+                error_setg(errp, "failed to map console page");
+                return false;
+            }
+            break;
         }
-    } else {
+
+        /*
+         * For Xen emulation, we still follow the convention of ring-ref
+         * holding the GFN, but we map the fixed GNTTAB_RESERVED_CONSOLE
+         * grant ref because there is no implementation of foreignmem
+         * operations for emulated mode. The emulation code which handles
+         * the guest-side page and event channel also needs to be informed
+         * of the backend event channel port, in order to reconnect to it
+         * after a soft reset.
+         */
+        xen_primary_console_set_be_port(
+            xen_event_channel_get_local_port(con->event_channel));
+        con->ring_ref = GNTTAB_RESERVED_CONSOLE;
+        /* fallthrough */
+    default:
         con->sring = xen_device_map_grant_refs(xendev,
                                                &con->ring_ref, 1,
                                                PROT_READ | PROT_WRITE,
                                                errp);
         if (!con->sring) {
-            error_prepend(errp, "failed to map grant ref: ");
+            error_prepend(errp, "failed to map console grant ref: ");
             return false;
         }
+        break;
     }
 
     trace_xen_console_connect(con->dev, con->ring_ref, port,
@@ -272,10 +297,14 @@ static void xen_console_disconnect(XenDevice *xendev, Error **errp)
         xen_device_unbind_event_channel(xendev, con->event_channel,
                                         errp);
         con->event_channel = NULL;
+
+        if (xen_mode == XEN_EMULATE && !con->dev) {
+            xen_primary_console_set_be_port(0);
+        }
     }
 
     if (con->sring) {
-        if (!con->dev) {
+        if (!con->dev && xen_mode != XEN_EMULATE) {
             qemu_xen_foreignmem_unmap(con->sring, 1);
         } else {
             xen_device_unmap_grant_refs(xendev, con->sring,
@@ -338,14 +367,19 @@ static char *xen_console_get_name(XenDevice *xendev, Error **errp)
     if (con->dev == -1) {
         XenBus *xenbus = XEN_BUS(qdev_get_parent_bus(DEVICE(xendev)));
         char fe_path[XENSTORE_ABS_PATH_MAX + 1];
+        int idx = (xen_mode == XEN_EMULATE) ? 0 : 1;
         char *value;
-        int idx = 1;
 
         /* Theoretically we could go up to INT_MAX here but that's overkill */
         while (idx < 100) {
-            snprintf(fe_path, sizeof(fe_path),
-                     "/local/domain/%u/device/console/%u",
-                     xendev->frontend_id, idx);
+            if (!idx) {
+                snprintf(fe_path, sizeof(fe_path),
+                         "/local/domain/%u/console", xendev->frontend_id);
+            } else {
+                snprintf(fe_path, sizeof(fe_path),
+                         "/local/domain/%u/device/console/%u",
+                         xendev->frontend_id, idx);
+            }
             value = qemu_xen_xs_read(xenbus->xsh, XBT_NULL, fe_path, NULL);
             if (!value) {
                 if (errno == ENOENT) {
@@ -400,11 +434,15 @@ static void xen_console_realize(XenDevice *xendev, Error **errp)
      * be mapped directly as foreignmem (not a grant ref), and the guest port
      * was allocated *for* the guest by the toolstack. The guest gets these
      * through HVMOP_get_param and can use the console long before it's got
-     * XenStore up and running. We cannot create those for a Xen guest.
+     * XenStore up and running. We cannot create those for a true Xen guest,
+     * but we can for Xen emulation.
      */
     if (!con->dev) {
-        if (xen_device_frontend_scanf(xendev, "ring-ref", "%u", &u) != 1 ||
-            xen_device_frontend_scanf(xendev, "port", "%u", &u) != 1) {
+        if (xen_mode == XEN_EMULATE) {
+            xen_primary_console_create();
+        } else if (xen_device_frontend_scanf(xendev, "ring-ref", "%u", &u)
+                   != 1 ||
+                   xen_device_frontend_scanf(xendev, "port", "%u", &u) != 1) {
             error_setg(errp, "cannot create primary Xen console");
             return;
         }
@@ -417,8 +455,8 @@ static void xen_console_realize(XenDevice *xendev, Error **errp)
         xen_device_frontend_printf(xendev, "tty", "%s", cs->filename + 4);
     }
 
-    /* No normal PV driver initialization for the primary console */
-    if (!con->dev) {
+    /* No normal PV driver initialization for the primary console under Xen */
+    if (!con->dev && xen_mode != XEN_EMULATE) {
         xen_console_connect(xendev, errp);
     }
 }
diff --git a/hw/i386/kvm/meson.build b/hw/i386/kvm/meson.build
index ab143d6474..a4a2e23c06 100644
--- a/hw/i386/kvm/meson.build
+++ b/hw/i386/kvm/meson.build
@@ -9,6 +9,7 @@ i386_kvm_ss.add(when: 'CONFIG_XEN_EMU', if_true: files(
   'xen_evtchn.c',
   'xen_gnttab.c',
   'xen_xenstore.c',
+  'xen_primary_console.c',
   'xenstore_impl.c',
   ))
 
diff --git a/hw/i386/kvm/trace-events b/hw/i386/kvm/trace-events
index e4c82de6f3..67bf7f174e 100644
--- a/hw/i386/kvm/trace-events
+++ b/hw/i386/kvm/trace-events
@@ -18,3 +18,5 @@ xenstore_watch(const char *path, const char *token) "path %s token %s"
 xenstore_unwatch(const char *path, const char *token) "path %s token %s"
 xenstore_reset_watches(void) ""
 xenstore_watch_event(const char *path, const char *token) "path %s token %s"
+xen_primary_console_create(void) ""
+xen_primary_console_reset(int port) "port %u"
diff --git a/hw/i386/kvm/xen-stubs.c b/hw/i386/kvm/xen-stubs.c
index ae406e0b02..d03131e686 100644
--- a/hw/i386/kvm/xen-stubs.c
+++ b/hw/i386/kvm/xen-stubs.c
@@ -15,6 +15,7 @@
 #include "qapi/qapi-commands-misc-target.h"
 
 #include "xen_evtchn.h"
+#include "xen_primary_console.h"
 
 void xen_evtchn_snoop_msi(PCIDevice *dev, bool is_msix, unsigned int vector,
                           uint64_t addr, uint32_t data, bool is_masked)
@@ -30,6 +31,13 @@ bool xen_evtchn_deliver_pirq_msi(uint64_t address, uint32_t data)
     return false;
 }
 
+void xen_primary_console_create(void)
+{
+}
+
+void xen_primary_console_set_be_port(uint16_t port)
+{
+}
 #ifdef TARGET_I386
 EvtchnInfoList *qmp_xen_event_list(Error **errp)
 {
diff --git a/hw/i386/kvm/xen_gnttab.c b/hw/i386/kvm/xen_gnttab.c
index 839ec920a1..0a24f53f20 100644
--- a/hw/i386/kvm/xen_gnttab.c
+++ b/hw/i386/kvm/xen_gnttab.c
@@ -25,6 +25,7 @@
 #include "hw/xen/xen_backend_ops.h"
 #include "xen_overlay.h"
 #include "xen_gnttab.h"
+#include "xen_primary_console.h"
 
 #include "sysemu/kvm.h"
 #include "sysemu/kvm_xen.h"
@@ -537,9 +538,13 @@ int xen_gnttab_reset(void)
     s->nr_frames = 0;
 
     memset(s->entries.v1, 0, XEN_PAGE_SIZE * s->max_frames);
-
     s->entries.v1[GNTTAB_RESERVED_XENSTORE].flags = GTF_permit_access;
     s->entries.v1[GNTTAB_RESERVED_XENSTORE].frame = XEN_SPECIAL_PFN(XENSTORE);
 
+    if (xen_primary_console_get_pfn()) {
+        s->entries.v1[GNTTAB_RESERVED_CONSOLE].flags = GTF_permit_access;
+        s->entries.v1[GNTTAB_RESERVED_CONSOLE].frame = XEN_SPECIAL_PFN(CONSOLE);
+    }
+
     return 0;
 }
diff --git a/hw/i386/kvm/xen_primary_console.c b/hw/i386/kvm/xen_primary_console.c
new file mode 100644
index 0000000000..abe79f565b
--- /dev/null
+++ b/hw/i386/kvm/xen_primary_console.c
@@ -0,0 +1,193 @@
+/*
+ * QEMU Xen emulation: Primary console support
+ *
+ * Copyright © 2023 Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ *
+ * Authors: David Woodhouse <dwmw2@infradead.org>
+ *
+ * This work is licensed under the terms of the GNU GPL, version 2 or later.
+ * See the COPYING file in the top-level directory.
+ */
+
+#include "qemu/osdep.h"
+
+#include "qapi/error.h"
+
+#include "hw/sysbus.h"
+#include "hw/xen/xen.h"
+#include "hw/xen/xen_backend_ops.h"
+#include "xen_evtchn.h"
+#include "xen_overlay.h"
+#include "xen_primary_console.h"
+
+#include "sysemu/kvm.h"
+#include "sysemu/kvm_xen.h"
+
+#include "trace.h"
+
+#include "hw/xen/interface/event_channel.h"
+#include "hw/xen/interface/grant_table.h"
+
+#define TYPE_XEN_PRIMARY_CONSOLE "xen-primary-console"
+OBJECT_DECLARE_SIMPLE_TYPE(XenPrimaryConsoleState, XEN_PRIMARY_CONSOLE)
+
+struct XenPrimaryConsoleState {
+    /*< private >*/
+    SysBusDevice busdev;
+    /*< public >*/
+
+    MemoryRegion console_page;
+    void *cp;
+
+    evtchn_port_t guest_port;
+    evtchn_port_t be_port;
+
+    struct xengntdev_handle *gt;
+    void *granted_xs;
+};
+
+struct XenPrimaryConsoleState *xen_primary_console_singleton;
+
+static void xen_primary_console_realize(DeviceState *dev, Error **errp)
+{
+    XenPrimaryConsoleState *s = XEN_PRIMARY_CONSOLE(dev);
+
+    if (xen_mode != XEN_EMULATE) {
+        error_setg(errp, "Xen primary console support is for Xen emulation");
+        return;
+    }
+
+    memory_region_init_ram(&s->console_page, OBJECT(dev), "xen:console_page",
+                           XEN_PAGE_SIZE, &error_abort);
+    memory_region_set_enabled(&s->console_page, true);
+    s->cp = memory_region_get_ram_ptr(&s->console_page);
+    memset(s->cp, 0, XEN_PAGE_SIZE);
+
+    /* We can't map it this early as KVM isn't ready */
+    xen_primary_console_singleton = s;
+}
+
+static void xen_primary_console_class_init(ObjectClass *klass, void *data)
+{
+    DeviceClass *dc = DEVICE_CLASS(klass);
+
+    dc->realize = xen_primary_console_realize;
+}
+
+static const TypeInfo xen_primary_console_info = {
+    .name          = TYPE_XEN_PRIMARY_CONSOLE,
+    .parent        = TYPE_SYS_BUS_DEVICE,
+    .instance_size = sizeof(XenPrimaryConsoleState),
+    .class_init    = xen_primary_console_class_init,
+};
+
+
+void xen_primary_console_create(void)
+{
+    DeviceState *dev = sysbus_create_simple(TYPE_XEN_PRIMARY_CONSOLE, -1, NULL);
+
+    trace_xen_primary_console_create();
+
+    xen_primary_console_singleton = XEN_PRIMARY_CONSOLE(dev);
+
+    /*
+     * Defer the init (xen_primary_console_reset()) until KVM is set up and the
+     * overlay page can be mapped.
+     */
+}
+
+static void xen_primary_console_register_types(void)
+{
+    type_register_static(&xen_primary_console_info);
+}
+
+type_init(xen_primary_console_register_types)
+
+uint16_t xen_primary_console_get_port(void)
+{
+    XenPrimaryConsoleState *s = xen_primary_console_singleton;
+    if (!s) {
+        return 0;
+    }
+    return s->guest_port;
+}
+
+void xen_primary_console_set_be_port(uint16_t port)
+{
+    XenPrimaryConsoleState *s = xen_primary_console_singleton;
+    if (s) {
+        s->be_port = port;
+    }
+}
+
+uint64_t xen_primary_console_get_pfn(void)
+{
+    XenPrimaryConsoleState *s = xen_primary_console_singleton;
+    if (!s) {
+        return 0;
+    }
+    return XEN_SPECIAL_PFN(CONSOLE);
+}
+
+void *xen_primary_console_get_map(void)
+{
+    XenPrimaryConsoleState *s = xen_primary_console_singleton;
+    if (!s) {
+        return 0;
+    }
+    return s->cp;
+}
+
+static void alloc_guest_port(XenPrimaryConsoleState *s)
+{
+    struct evtchn_alloc_unbound alloc = {
+        .dom = DOMID_SELF,
+        .remote_dom = DOMID_QEMU,
+    };
+
+    if (!xen_evtchn_alloc_unbound_op(&alloc)) {
+        s->guest_port = alloc.port;
+    }
+}
+
+static void rebind_guest_port(XenPrimaryConsoleState *s)
+{
+    struct evtchn_bind_interdomain inter = {
+        .remote_dom = DOMID_QEMU,
+        .remote_port = s->be_port,
+    };
+
+    if (!xen_evtchn_bind_interdomain_op(&inter)) {
+        s->guest_port = inter.local_port;
+    }
+
+    s->be_port = 0;
+}
+
+int xen_primary_console_reset(void)
+{
+    XenPrimaryConsoleState *s = xen_primary_console_singleton;
+    if (!s) {
+        return 0;
+    }
+
+    if (!memory_region_is_mapped(&s->console_page)) {
+        uint64_t gpa = XEN_SPECIAL_PFN(CONSOLE) << TARGET_PAGE_BITS;
+        xen_overlay_do_map_page(&s->console_page, gpa);
+    }
+
+    if (s->be_port) {
+        rebind_guest_port(s);
+    } else {
+        alloc_guest_port(s);
+    }
+
+    trace_xen_primary_console_reset(s->guest_port);
+
+    s->gt = qemu_xen_gnttab_open();
+    uint32_t xs_gntref = GNTTAB_RESERVED_CONSOLE;
+    s->granted_xs = qemu_xen_gnttab_map_refs(s->gt, 1, xen_domid, &xs_gntref,
+                                             PROT_READ | PROT_WRITE);
+
+    return 0;
+}
diff --git a/hw/i386/kvm/xen_primary_console.h b/hw/i386/kvm/xen_primary_console.h
new file mode 100644
index 0000000000..7e2989ea0d
--- /dev/null
+++ b/hw/i386/kvm/xen_primary_console.h
@@ -0,0 +1,23 @@
+/*
+ * QEMU Xen emulation: Primary console support
+ *
+ * Copyright © 2023 Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ *
+ * Authors: David Woodhouse <dwmw2@infradead.org>
+ *
+ * This work is licensed under the terms of the GNU GPL, version 2 or later.
+ * See the COPYING file in the top-level directory.
+ */
+
+#ifndef QEMU_XEN_PRIMARY_CONSOLE_H
+#define QEMU_XEN_PRIMARY_CONSOLE_H
+
+void xen_primary_console_create(void);
+int xen_primary_console_reset(void);
+
+uint16_t xen_primary_console_get_port(void);
+void xen_primary_console_set_be_port(uint16_t port);
+uint64_t xen_primary_console_get_pfn(void);
+void *xen_primary_console_get_map(void);
+
+#endif /* QEMU_XEN_PRIMARY_CONSOLE_H */
diff --git a/hw/i386/kvm/xen_xenstore.c b/hw/i386/kvm/xen_xenstore.c
index b7c0407765..6e651960b3 100644
--- a/hw/i386/kvm/xen_xenstore.c
+++ b/hw/i386/kvm/xen_xenstore.c
@@ -25,6 +25,7 @@
 #include "hw/xen/xen_backend_ops.h"
 #include "xen_overlay.h"
 #include "xen_evtchn.h"
+#include "xen_primary_console.h"
 #include "xen_xenstore.h"
 
 #include "sysemu/kvm.h"
@@ -1434,6 +1435,7 @@ static void alloc_guest_port(XenXenstoreState *s)
 int xen_xenstore_reset(void)
 {
     XenXenstoreState *s = xen_xenstore_singleton;
+    int console_port;
     GList *perms;
     int err;
 
@@ -1470,6 +1472,14 @@ int xen_xenstore_reset(void)
     relpath_printf(s, perms, "store/ring-ref", "%lu",
                    XEN_SPECIAL_PFN(XENSTORE));
 
+    console_port = xen_primary_console_get_port();
+    if (console_port) {
+        relpath_printf(s, perms, "console/ring-ref", "%lu",
+                       XEN_SPECIAL_PFN(CONSOLE));
+        relpath_printf(s, perms, "console/port", "%u", console_port);
+        relpath_printf(s, perms, "console/state", "%u", XenbusStateInitialised);
+    }
+
     g_list_free_full(perms, g_free);
 
     /*
diff --git a/hw/xen/xen-bus.c b/hw/xen/xen-bus.c
index 3ffd1a5333..cc6f1b362f 100644
--- a/hw/xen/xen-bus.c
+++ b/hw/xen/xen-bus.c
@@ -922,6 +922,11 @@ void xen_device_notify_event_channel(XenDevice *xendev,
     }
 }
 
+unsigned int xen_event_channel_get_local_port(XenEventChannel *channel)
+{
+    return channel->local_port;
+}
+
 void xen_device_unbind_event_channel(XenDevice *xendev,
                                      XenEventChannel *channel,
                                      Error **errp)
diff --git a/include/hw/xen/xen-bus.h b/include/hw/xen/xen-bus.h
index eb440880b5..38d40afa37 100644
--- a/include/hw/xen/xen-bus.h
+++ b/include/hw/xen/xen-bus.h
@@ -131,5 +131,6 @@ void xen_device_notify_event_channel(XenDevice *xendev,
 void xen_device_unbind_event_channel(XenDevice *xendev,
                                      XenEventChannel *channel,
                                      Error **errp);
+unsigned int xen_event_channel_get_local_port(XenEventChannel *channel);
 
 #endif /* HW_XEN_BUS_H */
diff --git a/target/i386/kvm/xen-emu.c b/target/i386/kvm/xen-emu.c
index 1dc9ab0d91..c0631f9cf4 100644
--- a/target/i386/kvm/xen-emu.c
+++ b/target/i386/kvm/xen-emu.c
@@ -28,6 +28,7 @@
 #include "hw/i386/kvm/xen_overlay.h"
 #include "hw/i386/kvm/xen_evtchn.h"
 #include "hw/i386/kvm/xen_gnttab.h"
+#include "hw/i386/kvm/xen_primary_console.h"
 #include "hw/i386/kvm/xen_xenstore.h"
 
 #include "hw/xen/interface/version.h"
@@ -182,7 +183,8 @@ int kvm_xen_init(KVMState *s, uint32_t hypercall_msr)
         return ret;
     }
 
-    /* The page couldn't be overlaid until KVM was initialized */
+    /* The pages couldn't be overlaid until KVM was initialized */
+    xen_primary_console_reset();
     xen_xenstore_reset();
 
     return 0;
@@ -812,11 +814,23 @@ static bool handle_get_param(struct kvm_xen_exit *exit, X86CPU *cpu,
     case HVM_PARAM_STORE_EVTCHN:
         hp.value = xen_xenstore_get_port();
         break;
+    case HVM_PARAM_CONSOLE_PFN:
+        hp.value = xen_primary_console_get_pfn();
+        if (!hp.value) {
+            err = -EINVAL;
+        }
+        break;
+    case HVM_PARAM_CONSOLE_EVTCHN:
+        hp.value = xen_primary_console_get_port();
+        if (!hp.value) {
+            err = -EINVAL;
+        }
+        break;
     default:
         return false;
     }
 
-    if (kvm_copy_to_gva(cs, arg, &hp, sizeof(hp))) {
+    if (!err && kvm_copy_to_gva(cs, arg, &hp, sizeof(hp))) {
         err = -EFAULT;
     }
 out:
@@ -1427,6 +1441,11 @@ int kvm_xen_soft_reset(void)
         return err;
     }
 
+    err = xen_primary_console_reset();
+    if (err) {
+        return err;
+    }
+
     err = xen_xenstore_reset();
     if (err) {
         return err;
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Wed Oct 25 14:51:10 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 14:51:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622969.970341 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvfDy-0002Di-0H; Wed, 25 Oct 2023 14:51:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622969.970341; Wed, 25 Oct 2023 14:51: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 1qvfDx-0002D1-L6; Wed, 25 Oct 2023 14:51:09 +0000
Received: by outflank-mailman (input) for mailman id 622969;
 Wed, 25 Oct 2023 14:51: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=LJSz=GH=casper.srs.infradead.org=BATV+85b1c44ac99574f3713d+7367+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qvfDv-0000WU-O9
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 14:51:07 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id e9ffea17-7345-11ee-9b0e-b553b5be7939;
 Wed, 25 Oct 2023 16:51:01 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qvfDY-009Nmg-TY; Wed, 25 Oct 2023 14:50:44 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1qvfDY-002dEi-1t; Wed, 25 Oct 2023 15:50:44 +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
X-Inumbo-ID: e9ffea17-7345-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=xu550fyiR7pDFVRdWcAZ9rrT91tg3y6fvozQk3tPZhU=; b=mlDgNH9hrQ2uE5gT+pnk2qg3lB
	qeAUB1XoT8ifIgUe4nUkauPhzIfs5A/8pqA09jexOsMulJiWz9XN7NTmXUaR9/gw+nMrrUxGaEvVr
	nWJgwc3ezPFTIb1LX688b92xQo9Mpr7EuZaLB86JnW6S8QrDcc8NwM4hgFF3FDRmKFwAY6v2L4zwU
	LpkpNnHWNFm3CamvDfJd2lDno0Pftld+dLsqy7kvDtaZJDdUmVse2jRMi0cS7mcebsabEBeswREcE
	ECwqTqNsIX6MhHB97zfdvsPq3WQYEbPK8NKGlSxiFggsAZ1HCyKiLwm2UT5jZVxcfDIECKYndudBF
	K6XpcfzQ==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>,
	Hanna Reitz <hreitz@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	=?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Richard Henderson <richard.henderson@linaro.org>,
	Eduardo Habkost <eduardo@habkost.net>,
	Jason Wang <jasowang@redhat.com>,
	Marcelo Tosatti <mtosatti@redhat.com>,
	qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org,
	kvm@vger.kernel.org,
	Bernhard Beschow <shentey@gmail.com>,
	Joel Upham <jupham125@gmail.com>
Subject: [PATCH v3 12/28] hw/xen: populate store frontend nodes with XenStore PFN/port
Date: Wed, 25 Oct 2023 15:50:26 +0100
Message-Id: <20231025145042.627381-13-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231025145042.627381-1-dwmw2@infradead.org>
References: <20231025145042.627381-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

This is kind of redundant since without being able to get these through
some other method (HVMOP_get_param) the guest wouldn't be able to access
XenStore in order to find them.

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
Reviewed-by: Paul Durrant <paul@xen.org>
---
 hw/i386/kvm/xen_xenstore.c | 11 +++++++++++
 1 file changed, 11 insertions(+)

diff --git a/hw/i386/kvm/xen_xenstore.c b/hw/i386/kvm/xen_xenstore.c
index 831da535fc..b7c0407765 100644
--- a/hw/i386/kvm/xen_xenstore.c
+++ b/hw/i386/kvm/xen_xenstore.c
@@ -1434,6 +1434,7 @@ static void alloc_guest_port(XenXenstoreState *s)
 int xen_xenstore_reset(void)
 {
     XenXenstoreState *s = xen_xenstore_singleton;
+    GList *perms;
     int err;
 
     if (!s) {
@@ -1461,6 +1462,16 @@ int xen_xenstore_reset(void)
     }
     s->be_port = err;
 
+    /* Create frontend store nodes */
+    perms = g_list_append(NULL, xs_perm_as_string(XS_PERM_NONE, DOMID_QEMU));
+    perms = g_list_append(perms, xs_perm_as_string(XS_PERM_READ, xen_domid));
+
+    relpath_printf(s, perms, "store/port", "%u", s->guest_port);
+    relpath_printf(s, perms, "store/ring-ref", "%lu",
+                   XEN_SPECIAL_PFN(XENSTORE));
+
+    g_list_free_full(perms, g_free);
+
     /*
      * We don't actually access the guest's page through the grant, because
      * this isn't real Xen, and we can just use the page we gave it in the
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Wed Oct 25 14:51:10 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 14:51:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622970.970346 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvfDy-0002IP-DE; Wed, 25 Oct 2023 14:51:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622970.970346; Wed, 25 Oct 2023 14:51: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 1qvfDx-0002Gs-Vm; Wed, 25 Oct 2023 14:51:09 +0000
Received: by outflank-mailman (input) for mailman id 622970;
 Wed, 25 Oct 2023 14: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=LJSz=GH=casper.srs.infradead.org=BATV+85b1c44ac99574f3713d+7367+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qvfDw-0000WU-OJ
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 14:51:08 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id ea359a73-7345-11ee-9b0e-b553b5be7939;
 Wed, 25 Oct 2023 16:51:01 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qvfDb-009NnL-Gt; Wed, 25 Oct 2023 14:50:47 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1qvfDZ-002dFt-2r; Wed, 25 Oct 2023 15:50:45 +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
X-Inumbo-ID: ea359a73-7345-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=j1Dn7q6Qaq7MnCa855VhKvMLvN78EtjWJTTcd6S4txs=; b=rRulWpO/m0gfiN0feKRMJZSGn5
	hRb9Vhn0bdyIvk8sj9Nt8PrmsB+acuGZEgM7FOw8AsoyxXxHygnhWbexOYTZSNvolWwwRcUpY7hjN
	XU24Q1mO6Z+auWuq84CoUAajkyrw/NRboHyl27cTjafRF6CgAJ9ul4iipKrpoBn0P3JGvvga1AXmv
	QxxoqHWiJGigYp5z+gD7lgnCjxs+fGVFEcVdbQbvAv6KVjR1H8moKw2mVAHvZ2E9c75IQppZnUuAi
	VRF1jA9gaRSwI4R/1xFcs4XD/lxEjotJUrUjcOw2BevIt2NNd/X3xQnnKAs5Y7sw7WIP62A7xqAxL
	pPIINzNw==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>,
	Hanna Reitz <hreitz@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	=?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Richard Henderson <richard.henderson@linaro.org>,
	Eduardo Habkost <eduardo@habkost.net>,
	Jason Wang <jasowang@redhat.com>,
	Marcelo Tosatti <mtosatti@redhat.com>,
	qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org,
	kvm@vger.kernel.org,
	Bernhard Beschow <shentey@gmail.com>,
	Joel Upham <jupham125@gmail.com>
Subject: [PATCH v3 28/28] docs: update Xen-on-KVM documentation
Date: Wed, 25 Oct 2023 15:50:42 +0100
Message-Id: <20231025145042.627381-29-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231025145042.627381-1-dwmw2@infradead.org>
References: <20231025145042.627381-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

Add notes about console and network support, and how to launch PV guests.
Clean up the disk configuration examples now that that's simpler, and
remove the comment about IDE unplug on q35/AHCI now that it's fixed.

Also update stale avocado test filename in MAINTAINERS.

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 MAINTAINERS              |   2 +-
 docs/system/i386/xen.rst | 100 ++++++++++++++++++++++++++++-----------
 2 files changed, 73 insertions(+), 29 deletions(-)

diff --git a/MAINTAINERS b/MAINTAINERS
index d36aa44661..0fcc454ccd 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -490,7 +490,7 @@ S: Supported
 F: include/sysemu/kvm_xen.h
 F: target/i386/kvm/xen*
 F: hw/i386/kvm/xen*
-F: tests/avocado/xen_guest.py
+F: tests/avocado/kvm_xen_guest.py
 
 Guest CPU Cores (other accelerators)
 ------------------------------------
diff --git a/docs/system/i386/xen.rst b/docs/system/i386/xen.rst
index f06765e88c..6214c4571e 100644
--- a/docs/system/i386/xen.rst
+++ b/docs/system/i386/xen.rst
@@ -15,46 +15,24 @@ Setup
 -----
 
 Xen mode is enabled by setting the ``xen-version`` property of the KVM
-accelerator, for example for Xen 4.10:
+accelerator, for example for Xen 4.17:
 
 .. parsed-literal::
 
-  |qemu_system| --accel kvm,xen-version=0x4000a,kernel-irqchip=split
+  |qemu_system| --accel kvm,xen-version=0x40011,kernel-irqchip=split
 
 Additionally, virtual APIC support can be advertised to the guest through the
 ``xen-vapic`` CPU flag:
 
 .. parsed-literal::
 
-  |qemu_system| --accel kvm,xen-version=0x4000a,kernel-irqchip=split --cpu host,+xen_vapic
+  |qemu_system| --accel kvm,xen-version=0x40011,kernel-irqchip=split --cpu host,+xen-vapic
 
 When Xen support is enabled, QEMU changes hypervisor identification (CPUID
 0x40000000..0x4000000A) to Xen. The KVM identification and features are not
 advertised to a Xen guest. If Hyper-V is also enabled, the Xen identification
 moves to leaves 0x40000100..0x4000010A.
 
-The Xen platform device is enabled automatically for a Xen guest. This allows
-a guest to unplug all emulated devices, in order to use Xen PV block and network
-drivers instead. Under Xen, the boot disk is typically available both via IDE
-emulation, and as a PV block device. Guest bootloaders typically use IDE to load
-the guest kernel, which then unplugs the IDE and continues with the Xen PV block
-device.
-
-This configuration can be achieved as follows
-
-.. parsed-literal::
-
-  |qemu_system| -M pc --accel kvm,xen-version=0x4000a,kernel-irqchip=split \\
-       -drive file=${GUEST_IMAGE},if=none,id=disk,file.locking=off -device xen-disk,drive=disk,vdev=xvda \\
-       -drive file=${GUEST_IMAGE},index=2,media=disk,file.locking=off,if=ide
-
-It is necessary to use the pc machine type, as the q35 machine uses AHCI instead
-of legacy IDE, and AHCI disks are not unplugged through the Xen PV unplug
-mechanism.
-
-VirtIO devices can also be used; Linux guests may need to be dissuaded from
-umplugging them by adding 'xen_emul_unplug=never' on their command line.
-
 Properties
 ----------
 
@@ -63,7 +41,10 @@ The following properties exist on the KVM accelerator object:
 ``xen-version``
   This property contains the Xen version in ``XENVER_version`` form, with the
   major version in the top 16 bits and the minor version in the low 16 bits.
-  Setting this property enables the Xen guest support.
+  Setting this property enables the Xen guest support. If Xen version 4.5 or
+  greater is specified, the HVM leaf in Xen CPUID is populated. Xen version
+  4.6 enables the vCPU ID in CPUID, and version 4.17 advertises vCPU upcall
+  vector support to the guest.
 
 ``xen-evtchn-max-pirq``
   Xen PIRQs represent an emulated physical interrupt, either GSI or MSI, which
@@ -83,8 +64,71 @@ The following properties exist on the KVM accelerator object:
   through simultaneous grants. For guests with large numbers of PV devices and
   high throughput, it may be desirable to increase this value.
 
-OS requirements
----------------
+Xen paravirtual devices
+-----------------------
+
+The Xen PCI platform device is enabled automatically for a Xen guest. This
+allows a guest to unplug all emulated devices, in order to use paravirtual
+block and network drivers instead.
+
+Those paravirtual Xen block, network (and console) devices can be created
+through the command line, and/or hot-plugged.
+
+To provide a Xen console device, define a character device and then a device
+of type ``xen-console`` to connect to it. For the Xen console equivalent of
+the handy ``-serial mon:stdio`` option, for example:
+
+.. parsed-literal::
+   -chardev -chardev stdio,mux=on,id=char0,signal=off -mon char0 \\
+   -device xen-console,chardev=char0
+
+The Xen network device is ``xen-net-device``, which becomes the default NIC
+model for emulated Xen guests, meaning that just the default ``-nic user``
+should automatically work and present a Xen network device to the guest.
+
+Disks can be configured with '``-drive file=${GUEST_IMAGE},if=xen``' and will
+appear to the guest as ``xvda`` onwards.
+
+Under Xen, the boot disk is typically available both via IDE emulation, and
+as a PV block device. Guest bootloaders typically use IDE to load the guest
+kernel, which then unplugs the IDE and continues with the Xen PV block device.
+
+This configuration can be achieved as follows:
+
+.. parsed-literal::
+
+  |qemu_system| --accel kvm,xen-version=0x40011,kernel-irqchip=split \\
+       -drive file=${GUEST_IMAGE},if=xen \\
+       -drive file=${GUEST_IMAGE},file.locking=off,if=ide
+
+VirtIO devices can also be used; Linux guests may need to be dissuaded from
+umplugging them by adding '``xen_emul_unplug=never``' on their command line.
+
+Booting Xen PV guests
+---------------------
+
+Booting PV guest kernels is possible by using the Xen PV shim (a version of Xen
+itself, designed to run inside a Xen HVM guest and provide memory management
+services for one guest alone).
+
+The Xen binary is provided as the ``-kernel`` and the guest kernel itself (or
+PV Grub image) as the ``-initrd`` image, which actually just means the first
+multiboot "module". For example:
+
+.. parsed-literal::
+
+  |qemu_system| --accel kvm,xen-version=0x40011,kernel-irqchip=split \\
+       -chardev stdio,id=char0 -device xen-console,chardev=char0 \\
+       -display none  -m 1G  -kernel xen -initrd bzImage \\
+       -append "pv-shim console=xen,pv -- console=hvc0 root=/dev/xvda1" \\
+       -drive file=${GUEST_IMAGE},if=xen
+
+The Xen image must be built with the ``CONFIG_XEN_GUEST`` and ``CONFIG_PV_SHIM``
+options, and as of Xen 4.17, Xen's PV shim mode does not support using a serial
+port; it must have a Xen console or it will panic.
+
+Host OS requirements
+--------------------
 
 The minimal Xen support in the KVM accelerator requires the host to be running
 Linux v5.12 or newer. Later versions add optimisations: Linux v5.17 added
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Wed Oct 25 14:51:12 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 14:51:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622971.970361 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvfE0-0002sM-As; Wed, 25 Oct 2023 14:51:12 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622971.970361; Wed, 25 Oct 2023 14:51: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 1qvfDz-0002qu-VH; Wed, 25 Oct 2023 14:51:11 +0000
Received: by outflank-mailman (input) for mailman id 622971;
 Wed, 25 Oct 2023 14:51: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=LJSz=GH=casper.srs.infradead.org=BATV+85b1c44ac99574f3713d+7367+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qvfDx-0000WU-OK
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 14:51:10 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id eb7810b8-7345-11ee-9b0e-b553b5be7939;
 Wed, 25 Oct 2023 16:51:03 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qvfDY-009Nmd-Pe; Wed, 25 Oct 2023 14:50:44 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1qvfDY-002dEa-1N; Wed, 25 Oct 2023 15:50:44 +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
X-Inumbo-ID: eb7810b8-7345-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=XM4BCSzoEtJvXeS86uLw8msDFOfdY5zdHQ+73Ub6giM=; b=hy5kRVYxeMBvoX1ry9nKgHB4qD
	FMJnXSDgPaFEOyH+2lVADZwX/2X2Ykn59fOmM1bhPyDnRc7Te9qwl7tOmOP87m322MP/PEcTEb66m
	SaIGpJFN8pFfIrmkjWgKUcgM3LH0QcdsqfMIWAD9ul5TJInSO+oz2u3azdEi3iyZBjpwHBXWU6Rrf
	Wup7tldtWGX/nbXhRUpUWJRurYhU8CkeyfCeJ/DO0Kdcq5pP3yr9imPscrg+j3Z9J4iJNGyi51dP9
	MSGdUyLfwmFHjI9jRNf+hJi0pX4kszVgCBQVj6CEHzdDjnf12zueiTRFPyjdFrHRGbEZIB6jg+AfJ
	CQZTRwUw==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>,
	Hanna Reitz <hreitz@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	=?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Richard Henderson <richard.henderson@linaro.org>,
	Eduardo Habkost <eduardo@habkost.net>,
	Jason Wang <jasowang@redhat.com>,
	Marcelo Tosatti <mtosatti@redhat.com>,
	qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org,
	kvm@vger.kernel.org,
	Bernhard Beschow <shentey@gmail.com>,
	Joel Upham <jupham125@gmail.com>
Subject: [PATCH v3 10/28] include: update Xen public headers to Xen 4.17.2 release
Date: Wed, 25 Oct 2023 15:50:24 +0100
Message-Id: <20231025145042.627381-11-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231025145042.627381-1-dwmw2@infradead.org>
References: <20231025145042.627381-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

... in order to advertise the XEN_HVM_CPUID_UPCALL_VECTOR feature,
which will come in a subsequent commit.

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
Acked-by: Paul Durrant <paul@xen.org>
---
 hw/i386/kvm/xen_xenstore.c                    |  2 +-
 include/hw/xen/interface/arch-arm.h           | 37 +++++++-------
 include/hw/xen/interface/arch-x86/cpuid.h     | 31 +++++-------
 .../hw/xen/interface/arch-x86/xen-x86_32.h    | 19 +------
 .../hw/xen/interface/arch-x86/xen-x86_64.h    | 19 +------
 include/hw/xen/interface/arch-x86/xen.h       | 26 ++--------
 include/hw/xen/interface/event_channel.h      | 19 +------
 include/hw/xen/interface/features.h           | 19 +------
 include/hw/xen/interface/grant_table.h        | 19 +------
 include/hw/xen/interface/hvm/hvm_op.h         | 19 +------
 include/hw/xen/interface/hvm/params.h         | 19 +------
 include/hw/xen/interface/io/blkif.h           | 27 ++++------
 include/hw/xen/interface/io/console.h         | 19 +------
 include/hw/xen/interface/io/fbif.h            | 19 +------
 include/hw/xen/interface/io/kbdif.h           | 19 +------
 include/hw/xen/interface/io/netif.h           | 25 +++-------
 include/hw/xen/interface/io/protocols.h       | 19 +------
 include/hw/xen/interface/io/ring.h            | 49 ++++++++++---------
 include/hw/xen/interface/io/usbif.h           | 19 +------
 include/hw/xen/interface/io/xenbus.h          | 19 +------
 include/hw/xen/interface/io/xs_wire.h         | 36 ++++++--------
 include/hw/xen/interface/memory.h             | 30 +++++-------
 include/hw/xen/interface/physdev.h            | 23 ++-------
 include/hw/xen/interface/sched.h              | 19 +------
 include/hw/xen/interface/trace.h              | 19 +------
 include/hw/xen/interface/vcpu.h               | 19 +------
 include/hw/xen/interface/version.h            | 19 +------
 include/hw/xen/interface/xen-compat.h         | 19 +------
 include/hw/xen/interface/xen.h                | 19 +------
 29 files changed, 124 insertions(+), 523 deletions(-)

diff --git a/hw/i386/kvm/xen_xenstore.c b/hw/i386/kvm/xen_xenstore.c
index 8e716a7009..831da535fc 100644
--- a/hw/i386/kvm/xen_xenstore.c
+++ b/hw/i386/kvm/xen_xenstore.c
@@ -331,7 +331,7 @@ static void xs_error(XenXenstoreState *s, unsigned int id,
     const char *errstr = NULL;
 
     for (unsigned int i = 0; i < ARRAY_SIZE(xsd_errors); i++) {
-        struct xsd_errors *xsd_error = &xsd_errors[i];
+        const struct xsd_errors *xsd_error = &xsd_errors[i];
 
         if (xsd_error->errnum == errnum) {
             errstr = xsd_error->errstring;
diff --git a/include/hw/xen/interface/arch-arm.h b/include/hw/xen/interface/arch-arm.h
index 94b31511dd..1528ced509 100644
--- a/include/hw/xen/interface/arch-arm.h
+++ b/include/hw/xen/interface/arch-arm.h
@@ -1,26 +1,9 @@
+/* SPDX-License-Identifier: MIT */
 /******************************************************************************
  * arch-arm.h
  *
  * Guest OS interface to ARM Xen.
  *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- *
  * Copyright 2011 (C) Citrix Systems
  */
 
@@ -361,6 +344,7 @@ typedef uint64_t xen_callback_t;
 #define PSR_DBG_MASK    (1<<9)        /* arm64: Debug Exception mask */
 #define PSR_IT_MASK     (0x0600fc00)  /* Thumb If-Then Mask */
 #define PSR_JAZELLE     (1<<24)       /* Jazelle Mode */
+#define PSR_Z           (1<<30)       /* Zero condition flag */
 
 /* 32 bit modes */
 #define PSR_MODE_USR 0x10
@@ -383,7 +367,15 @@ typedef uint64_t xen_callback_t;
 #define PSR_MODE_EL1t 0x04
 #define PSR_MODE_EL0t 0x00
 
-#define PSR_GUEST32_INIT  (PSR_ABT_MASK|PSR_FIQ_MASK|PSR_IRQ_MASK|PSR_MODE_SVC)
+/*
+ * We set PSR_Z to be able to boot Linux kernel versions with an invalid
+ * encoding of the first 8 NOP instructions. See commit a92882a4d270 in
+ * Linux.
+ *
+ * Note that PSR_Z is also set by U-Boot and QEMU -kernel when loading
+ * zImage kernels on aarch32.
+ */
+#define PSR_GUEST32_INIT (PSR_Z|PSR_ABT_MASK|PSR_FIQ_MASK|PSR_IRQ_MASK|PSR_MODE_SVC)
 #define PSR_GUEST64_INIT (PSR_ABT_MASK|PSR_FIQ_MASK|PSR_IRQ_MASK|PSR_MODE_EL1h)
 
 #define SCTLR_GUEST_INIT    xen_mk_ullong(0x00c50078)
@@ -398,6 +390,10 @@ typedef uint64_t xen_callback_t;
 
 /* Physical Address Space */
 
+/* Virtio MMIO mappings */
+#define GUEST_VIRTIO_MMIO_BASE   xen_mk_ullong(0x02000000)
+#define GUEST_VIRTIO_MMIO_SIZE   xen_mk_ullong(0x00100000)
+
 /*
  * vGIC mappings: Only one set of mapping is used by the guest.
  * Therefore they can overlap.
@@ -484,6 +480,9 @@ typedef uint64_t xen_callback_t;
 
 #define GUEST_VPL011_SPI        32
 
+#define GUEST_VIRTIO_MMIO_SPI_FIRST   33
+#define GUEST_VIRTIO_MMIO_SPI_LAST    43
+
 /* PSCI functions */
 #define PSCI_cpu_suspend 0
 #define PSCI_cpu_off     1
diff --git a/include/hw/xen/interface/arch-x86/cpuid.h b/include/hw/xen/interface/arch-x86/cpuid.h
index ce46305bee..7ecd16ae05 100644
--- a/include/hw/xen/interface/arch-x86/cpuid.h
+++ b/include/hw/xen/interface/arch-x86/cpuid.h
@@ -1,26 +1,9 @@
+/* SPDX-License-Identifier: MIT */
 /******************************************************************************
  * arch-x86/cpuid.h
  *
  * CPUID interface to Xen.
  *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- *
  * Copyright (c) 2007 Citrix Systems, Inc.
  *
  * Authors:
@@ -102,6 +85,18 @@
 #define XEN_HVM_CPUID_IOMMU_MAPPINGS   (1u << 2)
 #define XEN_HVM_CPUID_VCPU_ID_PRESENT  (1u << 3) /* vcpu id is present in EBX */
 #define XEN_HVM_CPUID_DOMID_PRESENT    (1u << 4) /* domid is present in ECX */
+/*
+ * With interrupt format set to 0 (non-remappable) bits 55:49 from the
+ * IO-APIC RTE and bits 11:5 from the MSI address can be used to store
+ * high bits for the Destination ID. This expands the Destination ID
+ * field from 8 to 15 bits, allowing to target APIC IDs up 32768.
+ */
+#define XEN_HVM_CPUID_EXT_DEST_ID      (1u << 5)
+/*
+ * Per-vCPU event channel upcalls work correctly with physical IRQs
+ * bound to event channels.
+ */
+#define XEN_HVM_CPUID_UPCALL_VECTOR    (1u << 6)
 
 /*
  * Leaf 6 (0x40000x05)
diff --git a/include/hw/xen/interface/arch-x86/xen-x86_32.h b/include/hw/xen/interface/arch-x86/xen-x86_32.h
index 19d7388633..139438e835 100644
--- a/include/hw/xen/interface/arch-x86/xen-x86_32.h
+++ b/include/hw/xen/interface/arch-x86/xen-x86_32.h
@@ -1,26 +1,9 @@
+/* SPDX-License-Identifier: MIT */
 /******************************************************************************
  * xen-x86_32.h
  *
  * Guest OS interface to x86 32-bit Xen.
  *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- *
  * Copyright (c) 2004-2007, K A Fraser
  */
 
diff --git a/include/hw/xen/interface/arch-x86/xen-x86_64.h b/include/hw/xen/interface/arch-x86/xen-x86_64.h
index 40aed14366..5d9035ed22 100644
--- a/include/hw/xen/interface/arch-x86/xen-x86_64.h
+++ b/include/hw/xen/interface/arch-x86/xen-x86_64.h
@@ -1,26 +1,9 @@
+/* SPDX-License-Identifier: MIT */
 /******************************************************************************
  * xen-x86_64.h
  *
  * Guest OS interface to x86 64-bit Xen.
  *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- *
  * Copyright (c) 2004-2006, K A Fraser
  */
 
diff --git a/include/hw/xen/interface/arch-x86/xen.h b/include/hw/xen/interface/arch-x86/xen.h
index 7acd94c8eb..c0f4551247 100644
--- a/include/hw/xen/interface/arch-x86/xen.h
+++ b/include/hw/xen/interface/arch-x86/xen.h
@@ -1,26 +1,9 @@
+/* SPDX-License-Identifier: MIT */
 /******************************************************************************
  * arch-x86/xen.h
  *
  * Guest OS interface to x86 Xen.
  *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- *
  * Copyright (c) 2004-2006, K A Fraser
  */
 
@@ -320,12 +303,9 @@ struct xen_arch_domainconfig {
     uint32_t misc_flags;
 };
 
-/* Location of online VCPU bitmap. */
-#define XEN_ACPI_CPU_MAP             0xaf00
-#define XEN_ACPI_CPU_MAP_LEN         ((HVM_MAX_VCPUS + 7) / 8)
+/* Max  XEN_X86_* constant. Used for ABI checking. */
+#define XEN_X86_MISC_FLAGS_MAX XEN_X86_MSR_RELAXED
 
-/* GPE0 bit set during CPU hotplug */
-#define XEN_ACPI_GPE0_CPUHP_BIT      2
 #endif
 
 /*
diff --git a/include/hw/xen/interface/event_channel.h b/include/hw/xen/interface/event_channel.h
index 73c9f38ce1..0d91a1c4af 100644
--- a/include/hw/xen/interface/event_channel.h
+++ b/include/hw/xen/interface/event_channel.h
@@ -1,26 +1,9 @@
+/* SPDX-License-Identifier: MIT */
 /******************************************************************************
  * event_channel.h
  *
  * Event channels between domains.
  *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- *
  * Copyright (c) 2003-2004, K A Fraser.
  */
 
diff --git a/include/hw/xen/interface/features.h b/include/hw/xen/interface/features.h
index 9ee2f760ef..d2a9175aae 100644
--- a/include/hw/xen/interface/features.h
+++ b/include/hw/xen/interface/features.h
@@ -1,26 +1,9 @@
+/* SPDX-License-Identifier: MIT */
 /******************************************************************************
  * features.h
  *
  * Feature flags, reported by XENVER_get_features.
  *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- *
  * Copyright (c) 2006, Keir Fraser <keir@xensource.com>
  */
 
diff --git a/include/hw/xen/interface/grant_table.h b/include/hw/xen/interface/grant_table.h
index 7934d7b718..1dfa17a6d0 100644
--- a/include/hw/xen/interface/grant_table.h
+++ b/include/hw/xen/interface/grant_table.h
@@ -1,27 +1,10 @@
+/* SPDX-License-Identifier: MIT */
 /******************************************************************************
  * grant_table.h
  *
  * Interface for granting foreign access to page frames, and receiving
  * page-ownership transfers.
  *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- *
  * Copyright (c) 2004, K A Fraser
  */
 
diff --git a/include/hw/xen/interface/hvm/hvm_op.h b/include/hw/xen/interface/hvm/hvm_op.h
index 870ec52060..e22adf0319 100644
--- a/include/hw/xen/interface/hvm/hvm_op.h
+++ b/include/hw/xen/interface/hvm/hvm_op.h
@@ -1,22 +1,5 @@
+/* SPDX-License-Identifier: MIT */
 /*
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- *
  * Copyright (c) 2007, Keir Fraser
  */
 
diff --git a/include/hw/xen/interface/hvm/params.h b/include/hw/xen/interface/hvm/params.h
index c9d6e70d7b..a22b4ed45d 100644
--- a/include/hw/xen/interface/hvm/params.h
+++ b/include/hw/xen/interface/hvm/params.h
@@ -1,22 +1,5 @@
+/* SPDX-License-Identifier: MIT */
 /*
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- *
  * Copyright (c) 2007, Keir Fraser
  */
 
diff --git a/include/hw/xen/interface/io/blkif.h b/include/hw/xen/interface/io/blkif.h
index 4cdba79aba..22f1eef0c0 100644
--- a/include/hw/xen/interface/io/blkif.h
+++ b/include/hw/xen/interface/io/blkif.h
@@ -1,26 +1,9 @@
+/* SPDX-License-Identifier: MIT */
 /******************************************************************************
  * blkif.h
  *
  * Unified block-device I/O interface for Xen guest OSes.
  *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- *
  * Copyright (c) 2003-2004, Keir Fraser
  * Copyright (c) 2012, Spectra Logic Corporation
  */
@@ -363,6 +346,14 @@
  *      that the frontend requires that the logical block size is 512 as it
  *      is hardcoded (which is the case in some frontend implementations).
  *
+ * trusted
+ *      Values:         0/1 (boolean)
+ *      Default value:  1
+ *
+ *      A value of "0" indicates that the frontend should not trust the
+ *      backend, and should deploy whatever measures available to protect from
+ *      a malicious backend on the other end.
+ *
  *------------------------- Virtual Device Properties -------------------------
  *
  * device-type
diff --git a/include/hw/xen/interface/io/console.h b/include/hw/xen/interface/io/console.h
index 4811f47220..4509b4b689 100644
--- a/include/hw/xen/interface/io/console.h
+++ b/include/hw/xen/interface/io/console.h
@@ -1,26 +1,9 @@
+/* SPDX-License-Identifier: MIT */
 /******************************************************************************
  * console.h
  *
  * Console I/O interface for Xen guest OSes.
  *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- *
  * Copyright (c) 2005, Keir Fraser
  */
 
diff --git a/include/hw/xen/interface/io/fbif.h b/include/hw/xen/interface/io/fbif.h
index cc25aab32e..93c73195d8 100644
--- a/include/hw/xen/interface/io/fbif.h
+++ b/include/hw/xen/interface/io/fbif.h
@@ -1,24 +1,7 @@
+/* SPDX-License-Identifier: MIT */
 /*
  * fbif.h -- Xen virtual frame buffer device
  *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- *
  * Copyright (C) 2005 Anthony Liguori <aliguori@us.ibm.com>
  * Copyright (C) 2006 Red Hat, Inc., Markus Armbruster <armbru@redhat.com>
  */
diff --git a/include/hw/xen/interface/io/kbdif.h b/include/hw/xen/interface/io/kbdif.h
index a6b01c52c7..4bde6b3821 100644
--- a/include/hw/xen/interface/io/kbdif.h
+++ b/include/hw/xen/interface/io/kbdif.h
@@ -1,24 +1,7 @@
+/* SPDX-License-Identifier: MIT */
 /*
  * kbdif.h -- Xen virtual keyboard/mouse
  *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- *
  * Copyright (C) 2005 Anthony Liguori <aliguori@us.ibm.com>
  * Copyright (C) 2006 Red Hat, Inc., Markus Armbruster <armbru@redhat.com>
  */
diff --git a/include/hw/xen/interface/io/netif.h b/include/hw/xen/interface/io/netif.h
index 00dd258712..c13b85061d 100644
--- a/include/hw/xen/interface/io/netif.h
+++ b/include/hw/xen/interface/io/netif.h
@@ -1,26 +1,9 @@
+/* SPDX-License-Identifier: MIT */
 /******************************************************************************
  * netif.h
  *
  * Unified network-device I/O interface for Xen guest OSes.
  *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- *
  * Copyright (c) 2003-2004, Keir Fraser
  */
 
@@ -160,6 +143,12 @@
  * be applied if it is set.
  */
 
+/*
+ * The setting of "trusted" node to "0" in the frontend path signals that the
+ * frontend should not trust the backend, and should deploy whatever measures
+ * available to protect from a malicious backend on the other end.
+ */
+
 /*
  * Control ring
  * ============
diff --git a/include/hw/xen/interface/io/protocols.h b/include/hw/xen/interface/io/protocols.h
index 52b4de0f81..7815e1ff0f 100644
--- a/include/hw/xen/interface/io/protocols.h
+++ b/include/hw/xen/interface/io/protocols.h
@@ -1,24 +1,7 @@
+/* SPDX-License-Identifier: MIT */
 /******************************************************************************
  * protocols.h
  *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- *
  * Copyright (c) 2008, Keir Fraser
  */
 
diff --git a/include/hw/xen/interface/io/ring.h b/include/hw/xen/interface/io/ring.h
index c486c457e0..025939278b 100644
--- a/include/hw/xen/interface/io/ring.h
+++ b/include/hw/xen/interface/io/ring.h
@@ -1,26 +1,9 @@
+/* SPDX-License-Identifier: MIT */
 /******************************************************************************
  * ring.h
  *
  * Shared producer-consumer ring macros.
  *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- *
  * Tim Deegan and Andrew Warfield November 2004.
  */
 
@@ -95,9 +78,8 @@ typedef unsigned int RING_IDX;
  * of the shared memory area (PAGE_SIZE, for instance). To initialise
  * the front half:
  *
- *     mytag_front_ring_t front_ring;
- *     SHARED_RING_INIT((mytag_sring_t *)shared_page);
- *     FRONT_RING_INIT(&front_ring, (mytag_sring_t *)shared_page, PAGE_SIZE);
+ *     mytag_front_ring_t ring;
+ *     XEN_FRONT_RING_INIT(&ring, (mytag_sring_t *)shared_page, PAGE_SIZE);
  *
  * Initializing the back follows similarly (note that only the front
  * initializes the shared ring):
@@ -184,6 +166,11 @@ typedef struct __name##_back_ring __name##_back_ring_t
 
 #define FRONT_RING_INIT(_r, _s, __size) FRONT_RING_ATTACH(_r, _s, 0, __size)
 
+#define XEN_FRONT_RING_INIT(r, s, size) do {                            \
+    SHARED_RING_INIT(s);                                                \
+    FRONT_RING_INIT(r, s, size);                                        \
+} while (0)
+
 #define BACK_RING_ATTACH(_r, _s, _i, __size) do {                       \
     (_r)->rsp_prod_pvt = (_i);                                          \
     (_r)->req_cons = (_i);                                              \
@@ -208,11 +195,11 @@ typedef struct __name##_back_ring __name##_back_ring_t
     (RING_FREE_REQUESTS(_r) == 0)
 
 /* Test if there are outstanding messages to be processed on a ring. */
-#define RING_HAS_UNCONSUMED_RESPONSES(_r)                               \
+#define XEN_RING_NR_UNCONSUMED_RESPONSES(_r)                            \
     ((_r)->sring->rsp_prod - (_r)->rsp_cons)
 
 #ifdef __GNUC__
-#define RING_HAS_UNCONSUMED_REQUESTS(_r) ({                             \
+#define XEN_RING_NR_UNCONSUMED_REQUESTS(_r) ({                          \
     unsigned int req = (_r)->sring->req_prod - (_r)->req_cons;          \
     unsigned int rsp = RING_SIZE(_r) -                                  \
         ((_r)->req_cons - (_r)->rsp_prod_pvt);                          \
@@ -220,13 +207,27 @@ typedef struct __name##_back_ring __name##_back_ring_t
 })
 #else
 /* Same as above, but without the nice GCC ({ ... }) syntax. */
-#define RING_HAS_UNCONSUMED_REQUESTS(_r)                                \
+#define XEN_RING_NR_UNCONSUMED_REQUESTS(_r)                             \
     ((((_r)->sring->req_prod - (_r)->req_cons) <                        \
       (RING_SIZE(_r) - ((_r)->req_cons - (_r)->rsp_prod_pvt))) ?        \
      ((_r)->sring->req_prod - (_r)->req_cons) :                         \
      (RING_SIZE(_r) - ((_r)->req_cons - (_r)->rsp_prod_pvt)))
 #endif
 
+#ifdef XEN_RING_HAS_UNCONSUMED_IS_BOOL
+/*
+ * These variants should only be used in case no caller is abusing them for
+ * obtaining the number of unconsumed responses/requests.
+ */
+#define RING_HAS_UNCONSUMED_RESPONSES(_r) \
+    (!!XEN_RING_NR_UNCONSUMED_RESPONSES(_r))
+#define RING_HAS_UNCONSUMED_REQUESTS(_r)  \
+    (!!XEN_RING_NR_UNCONSUMED_REQUESTS(_r))
+#else
+#define RING_HAS_UNCONSUMED_RESPONSES(_r) XEN_RING_NR_UNCONSUMED_RESPONSES(_r)
+#define RING_HAS_UNCONSUMED_REQUESTS(_r)  XEN_RING_NR_UNCONSUMED_REQUESTS(_r)
+#endif
+
 /* Direct access to individual ring elements, by index. */
 #define RING_GET_REQUEST(_r, _idx)                                      \
     (&((_r)->sring->ring[((_idx) & (RING_SIZE(_r) - 1))].req))
diff --git a/include/hw/xen/interface/io/usbif.h b/include/hw/xen/interface/io/usbif.h
index c0a552e195..875af0dc7c 100644
--- a/include/hw/xen/interface/io/usbif.h
+++ b/include/hw/xen/interface/io/usbif.h
@@ -1,3 +1,4 @@
+/* SPDX-License-Identifier: MIT */
 /*
  * usbif.h
  *
@@ -5,24 +6,6 @@
  *
  * Copyright (C) 2009, FUJITSU LABORATORIES LTD.
  * Author: Noboru Iwamatsu <n_iwamatsu@jp.fujitsu.com>
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
  */
 
 #ifndef __XEN_PUBLIC_IO_USBIF_H__
diff --git a/include/hw/xen/interface/io/xenbus.h b/include/hw/xen/interface/io/xenbus.h
index 927f9db552..9cd0cd7c67 100644
--- a/include/hw/xen/interface/io/xenbus.h
+++ b/include/hw/xen/interface/io/xenbus.h
@@ -1,26 +1,9 @@
+/* SPDX-License-Identifier: MIT */
 /*****************************************************************************
  * xenbus.h
  *
  * Xenbus protocol details.
  *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- *
  * Copyright (C) 2005 XenSource Ltd.
  */
 
diff --git a/include/hw/xen/interface/io/xs_wire.h b/include/hw/xen/interface/io/xs_wire.h
index 4dd6632669..04e6849feb 100644
--- a/include/hw/xen/interface/io/xs_wire.h
+++ b/include/hw/xen/interface/io/xs_wire.h
@@ -1,25 +1,8 @@
+/* SPDX-License-Identifier: MIT */
 /*
  * Details of the "wire" protocol between Xen Store Daemon and client
  * library or guest kernel.
  *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- *
  * Copyright (C) 2005 Rusty Russell IBM Corporation
  */
 
@@ -71,11 +54,12 @@ struct xsd_errors
 #ifdef EINVAL
 #define XSD_ERROR(x) { x, #x }
 /* LINTED: static unused */
-static struct xsd_errors xsd_errors[]
+static const struct xsd_errors xsd_errors[]
 #if defined(__GNUC__)
 __attribute__((unused))
 #endif
     = {
+    /* /!\ New errors should be added at the end of the array. */
     XSD_ERROR(EINVAL),
     XSD_ERROR(EACCES),
     XSD_ERROR(EEXIST),
@@ -90,7 +74,8 @@ __attribute__((unused))
     XSD_ERROR(EBUSY),
     XSD_ERROR(EAGAIN),
     XSD_ERROR(EISCONN),
-    XSD_ERROR(E2BIG)
+    XSD_ERROR(E2BIG),
+    XSD_ERROR(EPERM),
 };
 #endif
 
@@ -124,6 +109,7 @@ struct xenstore_domain_interface {
     XENSTORE_RING_IDX rsp_cons, rsp_prod;
     uint32_t server_features; /* Bitmap of features supported by the server */
     uint32_t connection;
+    uint32_t error;
 };
 
 /* Violating this is very bad.  See docs/misc/xenstore.txt. */
@@ -135,10 +121,18 @@ struct xenstore_domain_interface {
 
 /* The ability to reconnect a ring */
 #define XENSTORE_SERVER_FEATURE_RECONNECTION 1
+/* The presence of the "error" field in the ring page */
+#define XENSTORE_SERVER_FEATURE_ERROR        2
 
 /* Valid values for the connection field */
 #define XENSTORE_CONNECTED 0 /* the steady-state */
-#define XENSTORE_RECONNECT 1 /* guest has initiated a reconnect */
+#define XENSTORE_RECONNECT 1 /* reconnect in progress */
+
+/* Valid values for the error field */
+#define XENSTORE_ERROR_NONE    0 /* No error */
+#define XENSTORE_ERROR_COMM    1 /* Communication problem */
+#define XENSTORE_ERROR_RINGIDX 2 /* Invalid ring index */
+#define XENSTORE_ERROR_PROTO   3 /* Protocol violation (payload too long) */
 
 #endif /* _XS_WIRE_H */
 
diff --git a/include/hw/xen/interface/memory.h b/include/hw/xen/interface/memory.h
index 383a9468c3..29cf5c8239 100644
--- a/include/hw/xen/interface/memory.h
+++ b/include/hw/xen/interface/memory.h
@@ -1,26 +1,9 @@
+/* SPDX-License-Identifier: MIT */
 /******************************************************************************
  * memory.h
  *
  * Memory reservation and information.
  *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- *
  * Copyright (c) 2005, Keir Fraser <keir@xensource.com>
  */
 
@@ -541,12 +524,14 @@ struct xen_mem_sharing_op {
                 uint32_t gref;     /* IN: gref to debug         */
             } u;
         } debug;
-        struct mem_sharing_op_fork {      /* OP_FORK */
+        struct mem_sharing_op_fork {      /* OP_FORK{,_RESET} */
             domid_t parent_domain;        /* IN: parent's domain id */
 /* Only makes sense for short-lived forks */
 #define XENMEM_FORK_WITH_IOMMU_ALLOWED (1u << 0)
 /* Only makes sense for short-lived forks */
 #define XENMEM_FORK_BLOCK_INTERRUPTS   (1u << 1)
+#define XENMEM_FORK_RESET_STATE        (1u << 2)
+#define XENMEM_FORK_RESET_MEMORY       (1u << 3)
             uint16_t flags;               /* IN: optional settings */
             uint32_t pad;                 /* Must be set to 0 */
         } fork;
@@ -662,6 +647,13 @@ struct xen_mem_acquire_resource {
      * two calls.
      */
     uint32_t nr_frames;
+    /*
+     * Padding field, must be zero on input.
+     * In a previous version this was an output field with the lowest bit
+     * named XENMEM_rsrc_acq_caller_owned. Future versions of this interface
+     * will not reuse this bit as an output with the field being zero on
+     * input.
+     */
     uint32_t pad;
     /*
      * IN - the index of the initial frame to be mapped. This parameter
diff --git a/include/hw/xen/interface/physdev.h b/include/hw/xen/interface/physdev.h
index d271766ad0..f0c0d4727c 100644
--- a/include/hw/xen/interface/physdev.h
+++ b/include/hw/xen/interface/physdev.h
@@ -1,22 +1,5 @@
+/* SPDX-License-Identifier: MIT */
 /*
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- *
  * Copyright (c) 2006, Keir Fraser
  */
 
@@ -211,8 +194,8 @@ struct physdev_manage_pci_ext {
     /* IN */
     uint8_t bus;
     uint8_t devfn;
-    unsigned is_extfn;
-    unsigned is_virtfn;
+    uint32_t is_extfn;
+    uint32_t is_virtfn;
     struct {
         uint8_t bus;
         uint8_t devfn;
diff --git a/include/hw/xen/interface/sched.h b/include/hw/xen/interface/sched.h
index 811bd87c82..b4362c6a1d 100644
--- a/include/hw/xen/interface/sched.h
+++ b/include/hw/xen/interface/sched.h
@@ -1,26 +1,9 @@
+/* SPDX-License-Identifier: MIT */
 /******************************************************************************
  * sched.h
  *
  * Scheduler state interactions
  *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- *
  * Copyright (c) 2005, Keir Fraser <keir@xensource.com>
  */
 
diff --git a/include/hw/xen/interface/trace.h b/include/hw/xen/interface/trace.h
index d5fa4aea8d..62a179971d 100644
--- a/include/hw/xen/interface/trace.h
+++ b/include/hw/xen/interface/trace.h
@@ -1,24 +1,7 @@
+/* SPDX-License-Identifier: MIT */
 /******************************************************************************
  * include/public/trace.h
  *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- *
  * Mark Williamson, (C) 2004 Intel Research Cambridge
  * Copyright (C) 2005 Bin Ren
  */
diff --git a/include/hw/xen/interface/vcpu.h b/include/hw/xen/interface/vcpu.h
index 3623af932f..81a3b3a743 100644
--- a/include/hw/xen/interface/vcpu.h
+++ b/include/hw/xen/interface/vcpu.h
@@ -1,26 +1,9 @@
+/* SPDX-License-Identifier: MIT */
 /******************************************************************************
  * vcpu.h
  *
  * VCPU initialisation, query, and hotplug.
  *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- *
  * Copyright (c) 2005, Keir Fraser <keir@xensource.com>
  */
 
diff --git a/include/hw/xen/interface/version.h b/include/hw/xen/interface/version.h
index 17a81e23cd..9c78b4f3b6 100644
--- a/include/hw/xen/interface/version.h
+++ b/include/hw/xen/interface/version.h
@@ -1,26 +1,9 @@
+/* SPDX-License-Identifier: MIT */
 /******************************************************************************
  * version.h
  *
  * Xen version, type, and compile information.
  *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- *
  * Copyright (c) 2005, Nguyen Anh Quynh <aquynh@gmail.com>
  * Copyright (c) 2005, Keir Fraser <keir@xensource.com>
  */
diff --git a/include/hw/xen/interface/xen-compat.h b/include/hw/xen/interface/xen-compat.h
index e1c027a95c..97fe698498 100644
--- a/include/hw/xen/interface/xen-compat.h
+++ b/include/hw/xen/interface/xen-compat.h
@@ -1,26 +1,9 @@
+/* SPDX-License-Identifier: MIT */
 /******************************************************************************
  * xen-compat.h
  *
  * Guest OS interface to Xen.  Compatibility layer.
  *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- *
  * Copyright (c) 2006, Christian Limpach
  */
 
diff --git a/include/hw/xen/interface/xen.h b/include/hw/xen/interface/xen.h
index e373592c33..920567e006 100644
--- a/include/hw/xen/interface/xen.h
+++ b/include/hw/xen/interface/xen.h
@@ -1,26 +1,9 @@
+/* SPDX-License-Identifier: MIT */
 /******************************************************************************
  * xen.h
  *
  * Guest OS interface to Xen.
  *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- *
  * Copyright (c) 2004, K A Fraser
  */
 
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Wed Oct 25 14:51:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 14:51:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622972.970367 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvfE1-00030B-65; Wed, 25 Oct 2023 14:51:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622972.970367; Wed, 25 Oct 2023 14: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 1qvfE0-0002xs-JU; Wed, 25 Oct 2023 14:51:12 +0000
Received: by outflank-mailman (input) for mailman id 622972;
 Wed, 25 Oct 2023 14:51: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=LJSz=GH=casper.srs.infradead.org=BATV+85b1c44ac99574f3713d+7367+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qvfDy-0000WU-OZ
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 14:51:10 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id ed910d57-7345-11ee-9b0e-b553b5be7939;
 Wed, 25 Oct 2023 16:51:07 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qvfDZ-009Nmp-OP; Wed, 25 Oct 2023 14:50:45 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1qvfDZ-002dFP-0x; Wed, 25 Oct 2023 15:50:45 +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
X-Inumbo-ID: ed910d57-7345-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=y4cEjsiuJ1bFNsoLeKKWM6n6686E9X1lvqONj/DtYQs=; b=lrSrOgOplofh9XNYvO/Y6Cc20E
	b2BRTomTqLlH4ivgwD4sBmyXjLP3I1Fai6wk4h8Si1HSDLa25iMcQJekBASDQUPnHVIhgwPDGuIPe
	/fiD7p1xKwU7WPhmYzbbiUGkYAMCw9eYzzmKLc7jSYCCrbc9Il3cn+XOaaQle1LLOunGnghcs49bw
	3xgOTsVL24eBNSqWchz1Vf7eCnWmMNu5ej9mU2LmU4o06Qtg1DKPiu8P5eSAmOZnGMDFsJIQQAZUI
	06foiSUf0y/lJX5p1rYRRqKVhWC+mTGRpDqqHpAJiAZgoYQGU7Q2itxuffQXtTSt1ckoY4gF2ShZl
	N4J97H8w==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>,
	Hanna Reitz <hreitz@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	=?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Richard Henderson <richard.henderson@linaro.org>,
	Eduardo Habkost <eduardo@habkost.net>,
	Jason Wang <jasowang@redhat.com>,
	Marcelo Tosatti <mtosatti@redhat.com>,
	qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org,
	kvm@vger.kernel.org,
	Bernhard Beschow <shentey@gmail.com>,
	Joel Upham <jupham125@gmail.com>
Subject: [PATCH v3 21/28] xen-platform: unplug AHCI disks
Date: Wed, 25 Oct 2023 15:50:35 +0100
Message-Id: <20231025145042.627381-22-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231025145042.627381-1-dwmw2@infradead.org>
References: <20231025145042.627381-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

To support Xen guests using the Q35 chipset, the unplug protocol needs
to also remove AHCI disks.

Make pci_xen_ide_unplug() more generic, iterating over the children
of the PCI device and destroying the "ide-hd" devices. That works the
same for both AHCI and IDE, as does the detection of the primary disk
as unit 0 on the bus named "ide.0".

Then pci_xen_ide_unplug() can be used for both AHCI and IDE devices.

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 hw/i386/xen/xen_platform.c | 68 +++++++++++++++++++++++++-------------
 1 file changed, 45 insertions(+), 23 deletions(-)

diff --git a/hw/i386/xen/xen_platform.c b/hw/i386/xen/xen_platform.c
index e2dd1b536a..ef7d3fc05f 100644
--- a/hw/i386/xen/xen_platform.c
+++ b/hw/i386/xen/xen_platform.c
@@ -169,39 +169,60 @@ static void pci_unplug_nics(PCIBus *bus)
  *
  * [1] https://xenbits.xen.org/gitweb/?p=xen.git;a=blob;f=docs/misc/hvm-emulated-unplug.pandoc
  */
-static void pci_xen_ide_unplug(PCIDevice *d, bool aux)
+struct ide_unplug_state {
+    bool aux;
+    int nr_unplugged;
+};
+
+static int ide_dev_unplug(DeviceState *dev, void *_st)
 {
-    DeviceState *dev = DEVICE(d);
-    PCIIDEState *pci_ide;
-    int i;
+    struct ide_unplug_state *st = _st;
     IDEDevice *idedev;
     IDEBus *idebus;
     BlockBackend *blk;
+    int unit;
+
+    idedev = IDE_DEVICE(object_dynamic_cast(OBJECT(dev), "ide-hd"));
+    if (!idedev) {
+        return 0;
+    }
 
-    pci_ide = PCI_IDE(dev);
+    idebus = IDE_BUS(qdev_get_parent_bus(dev));
 
-    for (i = aux ? 1 : 0; i < 4; i++) {
-        idebus = &pci_ide->bus[i / 2];
-        blk = idebus->ifs[i % 2].blk;
+    unit = (idedev == idebus->slave);
+    assert(unit || idedev == idebus->master);
 
-        if (blk && idebus->ifs[i % 2].drive_kind != IDE_CD) {
-            if (!(i % 2)) {
-                idedev = idebus->master;
-            } else {
-                idedev = idebus->slave;
-            }
+    if (st->aux && !unit && !strcmp(BUS(idebus)->name, "ide.0")) {
+        return 0;
+    }
 
-            blk_drain(blk);
-            blk_flush(blk);
+    blk = idebus->ifs[unit].blk;
+    if (blk) {
+        blk_drain(blk);
+        blk_flush(blk);
 
-            blk_detach_dev(blk, DEVICE(idedev));
-            idebus->ifs[i % 2].blk = NULL;
-            idedev->conf.blk = NULL;
-            monitor_remove_blk(blk);
-            blk_unref(blk);
-        }
+        blk_detach_dev(blk, DEVICE(idedev));
+        idebus->ifs[unit].blk = NULL;
+        idedev->conf.blk = NULL;
+        monitor_remove_blk(blk);
+        blk_unref(blk);
+    }
+
+    object_unparent(OBJECT(dev));
+    st->nr_unplugged++;
+
+    return 0;
+}
+
+static void pci_xen_ide_unplug(PCIDevice *d, bool aux)
+{
+    struct ide_unplug_state st = { aux, 0 };
+    DeviceState *dev = DEVICE(d);
+
+    qdev_walk_children(dev, NULL, NULL, ide_dev_unplug, NULL, &st);
+    if (st.nr_unplugged) {
+        pci_device_reset(d);
     }
-    pci_device_reset(d);
 }
 
 static void unplug_disks(PCIBus *b, PCIDevice *d, void *opaque)
@@ -216,6 +237,7 @@ static void unplug_disks(PCIBus *b, PCIDevice *d, void *opaque)
 
     switch (pci_get_word(d->config + PCI_CLASS_DEVICE)) {
     case PCI_CLASS_STORAGE_IDE:
+    case PCI_CLASS_STORAGE_SATA:
         pci_xen_ide_unplug(d, aux);
         break;
 
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Wed Oct 25 14:51:16 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 14:51:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622973.970384 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvfE3-0003jS-QL; Wed, 25 Oct 2023 14:51:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622973.970384; Wed, 25 Oct 2023 14:51: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 1qvfE3-0003ie-E7; Wed, 25 Oct 2023 14:51:15 +0000
Received: by outflank-mailman (input) for mailman id 622973;
 Wed, 25 Oct 2023 14:51: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=w7q9=GH=desiato.srs.infradead.org=BATV+fe87d11d956b9f6f1554+7367+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qvfE1-0008W8-2k
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 14:51:13 +0000
Received: from desiato.infradead.org (desiato.infradead.org
 [2001:8b0:10b:1:d65d:64ff:fe57:4e05])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id f0200bad-7345-11ee-98d5-6d05b1d4d9a1;
 Wed, 25 Oct 2023 16:51:12 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by desiato.infradead.org with esmtpsa (Exim 4.96 #2 (Red Hat Linux))
 id 1qvfDZ-00GPLw-00; Wed, 25 Oct 2023 14:50:51 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1qvfDX-002dEB-38; Wed, 25 Oct 2023 15:50:43 +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
X-Inumbo-ID: f0200bad-7345-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=desiato.20200630; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=Q/tyhQvSuMwg2Gh5kOIH6qsA0eNCoglo/BC/VrIl6Es=; b=KDYI3aY4tMOqlZWdfNfO3LfWji
	oD5wYOBY7+ELSt03QoqbH58su+Ih3wGW5y4L029rvsFpFws8RSdxkpx1kvzrlS+TR8NZrSvLHKS2E
	SjvLuuRm8b/GnqIqaDOe5rDZTyJ/8Guse6k/gguUsxYD44GH6Tn/1C0kqkUq3glxbg20jjPwKv8u9
	Utgyvf4duButgytsgIFvJi/gbUd0SSA1jqoxw3sxA0TP7WEocX4xU//yXPAlhMq2BmAgFO6SYdQxX
	O1MwfOqd73UkIrEQm5B9gRr0qBVYQsayxRgtHc1M0nfSNSW/4X7QtGGxiam1VQgi1BhfsTGnBKIs/
	5Klyv7rQ==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>,
	Hanna Reitz <hreitz@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	=?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Richard Henderson <richard.henderson@linaro.org>,
	Eduardo Habkost <eduardo@habkost.net>,
	Jason Wang <jasowang@redhat.com>,
	Marcelo Tosatti <mtosatti@redhat.com>,
	qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org,
	kvm@vger.kernel.org,
	Bernhard Beschow <shentey@gmail.com>,
	Joel Upham <jupham125@gmail.com>
Subject: [PATCH v3 04/28] hw/xen: don't clear map_track[] in xen_gnttab_reset()
Date: Wed, 25 Oct 2023 15:50:18 +0100
Message-Id: <20231025145042.627381-5-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231025145042.627381-1-dwmw2@infradead.org>
References: <20231025145042.627381-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by desiato.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

The refcounts actually correspond to 'active_ref' structures stored in a
GHashTable per "user" on the backend side (mostly, per XenDevice).

If we zero map_track[] on reset, then when the backend drivers get torn
down and release their mapping we hit the assert(s->map_track[ref] != 0)
in gnt_unref().

So leave them in place. Each backend driver will disconnect and reconnect
as the guest comes back up again and reconnects, and it all works out OK
in the end as the old refs get dropped.

Fixes: de26b2619789 ("hw/xen: Implement soft reset for emulated gnttab")
Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
Reviewed-by: Paul Durrant <paul@xen.org>
---
 hw/i386/kvm/xen_gnttab.c | 2 --
 1 file changed, 2 deletions(-)

diff --git a/hw/i386/kvm/xen_gnttab.c b/hw/i386/kvm/xen_gnttab.c
index 21c30e3659..839ec920a1 100644
--- a/hw/i386/kvm/xen_gnttab.c
+++ b/hw/i386/kvm/xen_gnttab.c
@@ -541,7 +541,5 @@ int xen_gnttab_reset(void)
     s->entries.v1[GNTTAB_RESERVED_XENSTORE].flags = GTF_permit_access;
     s->entries.v1[GNTTAB_RESERVED_XENSTORE].frame = XEN_SPECIAL_PFN(XENSTORE);
 
-    memset(s->map_track, 0, s->max_frames * ENTRIES_PER_FRAME_V1);
-
     return 0;
 }
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Wed Oct 25 14:51:17 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 14:51:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622974.970391 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvfE5-00042f-B4; Wed, 25 Oct 2023 14:51:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622974.970391; Wed, 25 Oct 2023 14:51: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 1qvfE5-00041N-21; Wed, 25 Oct 2023 14:51:17 +0000
Received: by outflank-mailman (input) for mailman id 622974;
 Wed, 25 Oct 2023 14:51: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=w7q9=GH=desiato.srs.infradead.org=BATV+fe87d11d956b9f6f1554+7367+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qvfE3-0008W8-IP
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 14:51:15 +0000
Received: from desiato.infradead.org (desiato.infradead.org
 [2001:8b0:10b:1:d65d:64ff:fe57:4e05])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id f1a0cfaa-7345-11ee-98d5-6d05b1d4d9a1;
 Wed, 25 Oct 2023 16:51:14 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by desiato.infradead.org with esmtpsa (Exim 4.96 #2 (Red Hat Linux))
 id 1qvfDY-00GPLt-3D; Wed, 25 Oct 2023 14:50:52 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1qvfDX-002dDw-25; Wed, 25 Oct 2023 15:50:43 +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
X-Inumbo-ID: f1a0cfaa-7345-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=desiato.20200630; h=Sender:Content-Transfer-Encoding:
	MIME-Version:Message-Id:Date:Subject:Cc:To:From:Reply-To:Content-Type:
	Content-ID:Content-Description:In-Reply-To:References;
	bh=zpSwg/227orDxCBsv3gMLUZ9m9I2XX8JSqBJlShG0v0=; b=QHoTG9te+i9gvcPBC7248eN5gD
	0d7ZKJRmbfrvDYMldeprNtzfUi2ghqZGT4BfamdP+34wFKnGahaZO2w0dWc5OnU43AlONPtYzvLfx
	/iOsdIQ8I1IK9vJjRGhq+Nz+aMTd8ltSGhu1CP/Lnt+o6SLAAlT3oWIDLnJVsYntsLm3L/woLyq8V
	qn61VkoZMSHIRIdHCx5obwbUDEA+hOQwNtoy9WXHIifjbi52x5NgN+q1okve5oyF2W5pfabMgfiQo
	Icfzr+Avd+gKQMQECAaiiWj+kFGkLwq3ULlysWbhp7+25e0ypoTukOxFob7kA0t+VWr7DLD85zFdG
	mLjTkNCQ==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>,
	Hanna Reitz <hreitz@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	=?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Richard Henderson <richard.henderson@linaro.org>,
	Eduardo Habkost <eduardo@habkost.net>,
	Jason Wang <jasowang@redhat.com>,
	Marcelo Tosatti <mtosatti@redhat.com>,
	qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org,
	kvm@vger.kernel.org,
	Bernhard Beschow <shentey@gmail.com>,
	Joel Upham <jupham125@gmail.com>
Subject: [PATCH v3 00/28] Get Xen PV shim running in QEMU, add net & console
Date: Wed, 25 Oct 2023 15:50:14 +0100
Message-Id: <20231025145042.627381-1-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by desiato.infradead.org. See http://www.infradead.org/rpr.html

Round up a handful of outstanding fixes, add console support and fix up
per-vCPU upcall vector support (which was previously untested), and that
allows us to boot PV guests using the Xen "PV shim".

Having fixed up the per-vCPU upcall vector support, pull in slightly 
newer Xen headers just for the definition of the CPUID bit that lets
us tell the Linux (6.0+) kernel to use it. That'll help with testing.

v2 of the series added network support for emulated Xen guests by 
converting the xen_nic driver to the "new" XenDevice model. That had 
been on the TODO list for a while, and having done the console it made
sense to do network too while I still remembered it all.

But then there was a bit more breakage to deal with. Even before the 
conversion to XenDevice, the xen_nic support was already hosed for 
actual Xen PV guests (-m xenfv) because it never actually managed to 
connect the Xen network device to a netdev. And net_cleanup() was 
freeing the NICs from underneath the device models which own them, which 
upsets the devices that actually do their own cleanup.

Simplify the user experience for "-device file=IMAGE,if=xen" because
that had been offending me for a while, and now I knew how to do that
too.

Update the documentation, and take the opportunity to fix up that bit 
about unplug not working on Q35, because I *also* worked out how to do 
that when heckling Joel's attempt to do so.

v3 of the series includes more cleanups to the -nic option handling,
allowing me to ditch some of the ugly special cases for registering
the Xen network device for xenfv vs. pc platforms, and replace it with
a simple "register all NICs on this bus" which PCI can use too. That
was seen in a 45-patch series all of its own, but now I've pulled in
just the basic part that's needed for Xen support, and the remaining
bombing run on all the platforms can wait; I won't spam the list with
the rest of that again just yet.

David Woodhouse (28):
      i386/xen: Don't advertise XENFEAT_supervisor_mode_kernel
      i386/xen: fix per-vCPU upcall vector for Xen emulation
      hw/xen: select kernel mode for per-vCPU event channel upcall vector
      hw/xen: don't clear map_track[] in xen_gnttab_reset()
      hw/xen: fix XenStore watch delivery to guest
      hw/xen: take iothread mutex in xen_evtchn_reset_op()
      hw/xen: use correct default protocol for xen-block on x86
      i386/xen: Ignore VCPU_SSHOTTMR_future flag in set_singleshot_timer()
      hw/xen: Clean up event channel 'type_val' handling to use union
      include: update Xen public headers to Xen 4.17.2 release
      i386/xen: advertise XEN_HVM_CPUID_UPCALL_VECTOR in CPUID
      hw/xen: populate store frontend nodes with XenStore PFN/port
      hw/xen: automatically assign device index to block devices
      hw/xen: add get_frontend_path() method to XenDeviceClass
      hw/xen: do not repeatedly try to create a failing backend device
      hw/xen: update Xen console to XenDevice model
      hw/xen: add support for Xen primary console in emulated mode
      hw/xen: only remove peers of PCI NICs on unplug
      hw/xen: update Xen PV NIC to XenDevice model
      net: do not delete nics in net_cleanup()
      xen-platform: unplug AHCI disks
      net: add qemu_{configure,create}_nic_device(), qemu_find_nic_info()
      net: report list of available models according to platform
      net: add qemu_create_nic_bus_devices()
      hw/pci: add pci_init_nic_devices(), pci_init_nic_in_slot()
      hw/i386/pc: use qemu_get_nic_info() and pci_init_nic_devices()
      hw/xen: use qemu_create_nic_bus_devices() to instantiate Xen NICs
      docs: update Xen-on-KVM documentation

 MAINTAINERS                                    |   2 +-
 blockdev.c                                     |  15 +-
 docs/system/i386/xen.rst                       | 100 +++--
 hw/block/xen-block.c                           |  44 +-
 hw/char/trace-events                           |   8 +
 hw/char/xen_console.c                          | 572 +++++++++++++++++++------
 hw/i386/kvm/meson.build                        |   1 +
 hw/i386/kvm/trace-events                       |   2 +
 hw/i386/kvm/xen-stubs.c                        |   8 +
 hw/i386/kvm/xen_evtchn.c                       | 158 ++++---
 hw/i386/kvm/xen_gnttab.c                       |   7 +-
 hw/i386/kvm/xen_primary_console.c              | 193 +++++++++
 hw/i386/kvm/xen_primary_console.h              |  23 +
 hw/i386/kvm/xen_xenstore.c                     |  31 +-
 hw/i386/pc.c                                   |  21 +-
 hw/i386/xen/xen_platform.c                     |  77 ++--
 hw/net/meson.build                             |   2 +-
 hw/net/trace-events                            |  11 +
 hw/net/xen_nic.c                               | 484 ++++++++++++++++-----
 hw/pci/pci.c                                   |  45 ++
 hw/xen/xen-backend.c                           |  27 +-
 hw/xen/xen-bus.c                               |  23 +-
 hw/xen/xen-legacy-backend.c                    |   1 -
 hw/xen/xen_devconfig.c                         |  53 ---
 hw/xenpv/xen_machine_pv.c                      |  19 -
 include/hw/net/ne2000-isa.h                    |   2 -
 include/hw/pci/pci.h                           |   4 +-
 include/hw/xen/interface/arch-arm.h            |  37 +-
 include/hw/xen/interface/arch-x86/cpuid.h      |  31 +-
 include/hw/xen/interface/arch-x86/xen-x86_32.h |  19 +-
 include/hw/xen/interface/arch-x86/xen-x86_64.h |  19 +-
 include/hw/xen/interface/arch-x86/xen.h        |  26 +-
 include/hw/xen/interface/event_channel.h       |  19 +-
 include/hw/xen/interface/features.h            |  19 +-
 include/hw/xen/interface/grant_table.h         |  19 +-
 include/hw/xen/interface/hvm/hvm_op.h          |  19 +-
 include/hw/xen/interface/hvm/params.h          |  19 +-
 include/hw/xen/interface/io/blkif.h            |  27 +-
 include/hw/xen/interface/io/console.h          |  19 +-
 include/hw/xen/interface/io/fbif.h             |  19 +-
 include/hw/xen/interface/io/kbdif.h            |  19 +-
 include/hw/xen/interface/io/netif.h            |  25 +-
 include/hw/xen/interface/io/protocols.h        |  19 +-
 include/hw/xen/interface/io/ring.h             |  49 +--
 include/hw/xen/interface/io/usbif.h            |  19 +-
 include/hw/xen/interface/io/xenbus.h           |  19 +-
 include/hw/xen/interface/io/xs_wire.h          |  36 +-
 include/hw/xen/interface/memory.h              |  30 +-
 include/hw/xen/interface/physdev.h             |  23 +-
 include/hw/xen/interface/sched.h               |  19 +-
 include/hw/xen/interface/trace.h               |  19 +-
 include/hw/xen/interface/vcpu.h                |  19 +-
 include/hw/xen/interface/version.h             |  19 +-
 include/hw/xen/interface/xen-compat.h          |  19 +-
 include/hw/xen/interface/xen.h                 |  19 +-
 include/hw/xen/xen-backend.h                   |   1 +
 include/hw/xen/xen-bus.h                       |   3 +
 include/hw/xen/xen-legacy-backend.h            |   2 -
 include/net/net.h                              |  10 +-
 include/sysemu/kvm_xen.h                       |   1 +
 net/net.c                                      | 226 +++++++++-
 target/i386/kvm/kvm.c                          |   4 +
 target/i386/kvm/xen-emu.c                      |  59 ++-
 63 files changed, 1851 insertions(+), 1033 deletions(-)




From xen-devel-bounces@lists.xenproject.org Wed Oct 25 14:51:22 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 14:51:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622976.970404 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvfE9-0004kk-Tz; Wed, 25 Oct 2023 14:51:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622976.970404; Wed, 25 Oct 2023 14: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 1qvfE9-0004kL-Pf; Wed, 25 Oct 2023 14:51:21 +0000
Received: by outflank-mailman (input) for mailman id 622976;
 Wed, 25 Oct 2023 14:51: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=w7q9=GH=desiato.srs.infradead.org=BATV+fe87d11d956b9f6f1554+7367+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qvfE8-0008W8-BO
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 14:51:20 +0000
Received: from desiato.infradead.org (desiato.infradead.org
 [2001:8b0:10b:1:d65d:64ff:fe57:4e05])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id f518d2eb-7345-11ee-98d5-6d05b1d4d9a1;
 Wed, 25 Oct 2023 16:51:19 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by desiato.infradead.org with esmtpsa (Exim 4.96 #2 (Red Hat Linux))
 id 1qvfDa-00GPM3-1E; Wed, 25 Oct 2023 14:50:59 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1qvfDZ-002dFB-0E; Wed, 25 Oct 2023 15:50:45 +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
X-Inumbo-ID: f518d2eb-7345-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=desiato.20200630; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=ASyx27ABg/WdxWXFMwdeXHtm2HUFOe8n8pbrbgV+R1U=; b=KSw3c28aYsIp9zBAi8cllWWDpi
	K8vfkVYz6/oGDNu+k4/VRrApYRSLjOfuKlvOwBUVg9jYOF+gWouYRyma5JLfDxUpY1onGCtNGKQpF
	zBsNj3EUDXg0QWtWYUPvY8uBRIl54dJgWQvWuC8EvuOKw6VRy1J5bsJjkNwyijb/fI6mRiUfwhjVr
	OvRtBYcurzH/qFdJ06Lnsu0ODcytGK3P/g3Yqk3V1hxBDbf4R/qHZHjO+ItsHl7JrxZ/wE1tPEl0Q
	SroVpabcjcZWsiltYy0DIQdggLoMb/3M7L35Jlh++igC9qdxOa4z4pbQiGOsgSw1X5wI0fL9zweFf
	32KoOv9A==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>,
	Hanna Reitz <hreitz@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	=?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Richard Henderson <richard.henderson@linaro.org>,
	Eduardo Habkost <eduardo@habkost.net>,
	Jason Wang <jasowang@redhat.com>,
	Marcelo Tosatti <mtosatti@redhat.com>,
	qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org,
	kvm@vger.kernel.org,
	Bernhard Beschow <shentey@gmail.com>,
	Joel Upham <jupham125@gmail.com>
Subject: [PATCH v3 18/28] hw/xen: only remove peers of PCI NICs on unplug
Date: Wed, 25 Oct 2023 15:50:32 +0100
Message-Id: <20231025145042.627381-19-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231025145042.627381-1-dwmw2@infradead.org>
References: <20231025145042.627381-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by desiato.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

When the Xen guest asks to unplug *emulated* NICs, it's kind of unhelpful
also to unplug the peer of the *Xen* PV NIC.

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 hw/i386/xen/xen_platform.c | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

diff --git a/hw/i386/xen/xen_platform.c b/hw/i386/xen/xen_platform.c
index 17457ff3de..e2dd1b536a 100644
--- a/hw/i386/xen/xen_platform.c
+++ b/hw/i386/xen/xen_platform.c
@@ -140,9 +140,14 @@ static void unplug_nic(PCIBus *b, PCIDevice *d, void *o)
 /* Remove the peer of the NIC device. Normally, this would be a tap device. */
 static void del_nic_peer(NICState *nic, void *opaque)
 {
-    NetClientState *nc;
+    NetClientState *nc = qemu_get_queue(nic);
+    ObjectClass *klass = module_object_class_by_name(nc->model);
+
+    /* Only delete peers of PCI NICs that we're about to delete */
+    if (!klass || !object_class_dynamic_cast(klass, TYPE_PCI_DEVICE)) {
+        return;
+    }
 
-    nc = qemu_get_queue(nic);
     if (nc->peer)
         qemu_del_net_client(nc->peer);
 }
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Wed Oct 25 14:53:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 14:53:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.622995.970414 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvfGd-0000yD-ET; Wed, 25 Oct 2023 14:53:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 622995.970414; Wed, 25 Oct 2023 14:53: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 1qvfGd-0000y6-By; Wed, 25 Oct 2023 14:53:55 +0000
Received: by outflank-mailman (input) for mailman id 622995;
 Wed, 25 Oct 2023 14:53: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=w7q9=GH=desiato.srs.infradead.org=BATV+fe87d11d956b9f6f1554+7367+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qvfEI-0000WU-Ec
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 14:51:30 +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 f877121b-7345-11ee-9b0e-b553b5be7939;
 Wed, 25 Oct 2023 16:51:25 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by desiato.infradead.org with esmtpsa (Exim 4.96 #2 (Red Hat Linux))
 id 1qvfDZ-00GPLu-00; Wed, 25 Oct 2023 14:51:04 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1qvfDX-002dE3-2b; Wed, 25 Oct 2023 15:50:43 +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
X-Inumbo-ID: f877121b-7345-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=desiato.20200630; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=c1KnGQGfi3x53zdFBlcTqfnMwSbqzHUr3v6mm/A0vwE=; b=MTOqGgH08Ha9n5op96rLk0cUN1
	wrSDL9Zs8TWudFgFJacVmoXeWHuZuMM25p9iLuSAJRwni4Pp8vZVd2wVwJG/jYJ5YXI+hMPkbPV23
	btkqGYMy6rjvy8XJJq2oIK6of/Lli+tTc9jNmWYGDBGuMYkFGWN71sFXw9nPnDhlGT6EoEFjh3jbX
	fl3uNsNgDdRUXagpX6nvaN6UtMjLhKSuVWo/ScfKujBJlhWsB3MGDFgDNuL5vNukoz5A8blcT8EyH
	6fweryHNiDOKzm24bkI5E9w/ZJAWQ4sPR3DB95dMIlz1DwCOUJDMp1Z7GV/zznFcI5Nu4ztjVEpwQ
	WphupaaQ==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>,
	Hanna Reitz <hreitz@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	=?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Richard Henderson <richard.henderson@linaro.org>,
	Eduardo Habkost <eduardo@habkost.net>,
	Jason Wang <jasowang@redhat.com>,
	Marcelo Tosatti <mtosatti@redhat.com>,
	qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org,
	kvm@vger.kernel.org,
	Bernhard Beschow <shentey@gmail.com>,
	Joel Upham <jupham125@gmail.com>
Subject: [PATCH v3 02/28] i386/xen: fix per-vCPU upcall vector for Xen emulation
Date: Wed, 25 Oct 2023 15:50:16 +0100
Message-Id: <20231025145042.627381-3-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231025145042.627381-1-dwmw2@infradead.org>
References: <20231025145042.627381-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by desiato.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

The per-vCPU upcall vector support had three problems. Firstly it was
using the wrong hypercall argument and would always return -EFAULT when
the guest tried to set it up. Secondly it was using the wrong ioctl() to
pass the vector to the kernel and thus the *kernel* would always return
-EINVAL. Finally, even when delivering the event directly from userspace
with an MSI, it put the destination CPU ID into the wrong bits of the
MSI address.

Linux doesn't (yet) use this mode so it went without decent testing
for a while.

Fixes: 105b47fdf2d0 ("i386/xen: implement HVMOP_set_evtchn_upcall_vector")
Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
Reviewed-by: Paul Durrant <paul@xen.org>
---
 target/i386/kvm/xen-emu.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/target/i386/kvm/xen-emu.c b/target/i386/kvm/xen-emu.c
index 0055441b2e..7c504d9fa4 100644
--- a/target/i386/kvm/xen-emu.c
+++ b/target/i386/kvm/xen-emu.c
@@ -306,7 +306,7 @@ static int kvm_xen_set_vcpu_callback_vector(CPUState *cs)
 
     trace_kvm_xen_set_vcpu_callback(cs->cpu_index, vector);
 
-    return kvm_vcpu_ioctl(cs, KVM_XEN_HVM_SET_ATTR, &xva);
+    return kvm_vcpu_ioctl(cs, KVM_XEN_VCPU_SET_ATTR, &xva);
 }
 
 static void do_set_vcpu_callback_vector(CPUState *cs, run_on_cpu_data data)
@@ -440,7 +440,8 @@ void kvm_xen_inject_vcpu_callback_vector(uint32_t vcpu_id, int type)
          * deliver it as an MSI.
          */
         MSIMessage msg = {
-            .address = APIC_DEFAULT_ADDRESS | X86_CPU(cs)->apic_id,
+            .address = APIC_DEFAULT_ADDRESS |
+                       (X86_CPU(cs)->apic_id << MSI_ADDR_DEST_ID_SHIFT),
             .data = vector | (1UL << MSI_DATA_LEVEL_SHIFT),
         };
         kvm_irqchip_send_msi(kvm_state, msg);
@@ -849,8 +850,7 @@ static bool kvm_xen_hcall_hvm_op(struct kvm_xen_exit *exit, X86CPU *cpu,
     int ret = -ENOSYS;
     switch (cmd) {
     case HVMOP_set_evtchn_upcall_vector:
-        ret = kvm_xen_hcall_evtchn_upcall_vector(exit, cpu,
-                                                 exit->u.hcall.params[0]);
+        ret = kvm_xen_hcall_evtchn_upcall_vector(exit, cpu, arg);
         break;
 
     case HVMOP_pagetable_dying:
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Wed Oct 25 14:54:41 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 14:54:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623016.970424 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvfHM-00020F-S7; Wed, 25 Oct 2023 14:54:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623016.970424; Wed, 25 Oct 2023 14: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 1qvfHM-000208-O0; Wed, 25 Oct 2023 14:54:40 +0000
Received: by outflank-mailman (input) for mailman id 623016;
 Wed, 25 Oct 2023 14:54: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=LJSz=GH=casper.srs.infradead.org=BATV+85b1c44ac99574f3713d+7367+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qvfE1-0000WU-VX
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 14:51:14 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id efaeffb1-7345-11ee-9b0e-b553b5be7939;
 Wed, 25 Oct 2023 16:51:10 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qvfDY-009Nmc-PU; Wed, 25 Oct 2023 14:50:44 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1qvfDY-002dEV-19; Wed, 25 Oct 2023 15:50:44 +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
X-Inumbo-ID: efaeffb1-7345-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=53WomBMSQD6O08ryGIJ2Z7YE0izoAIIrgQty4UEWxiA=; b=rQcsVgd+7mP32wjXgrSCr6EOdY
	OHW7FEMVWCbgL3UhQXk0g+wObsk1DmThItrfxumad8S2DKR/SAy6pUZ3p/BHGZwOEXCRo0z2rCNDT
	owvcq0YIN4uAfTLkk1JEM/kVA4TgOyRlxY0raLHu9hnCjGEyq5CIIh+nVVhcE9jU3X7x+j2pU+d0C
	NhngvdA+i75zJ4Wa5qI5Djnh+O50utL/3zI8TXAjkOs82l1fVUOmPi+penG1RRESMtr3h9N8I12lP
	Ebw/OxLzBh+9y67LdxJk5svKxZuXesBQCs5pxnpZ7gXtM5B6CoscEmNoqdIEppjCxg0nA8AC2jXiB
	qKskIlbw==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>,
	Hanna Reitz <hreitz@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	=?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Richard Henderson <richard.henderson@linaro.org>,
	Eduardo Habkost <eduardo@habkost.net>,
	Jason Wang <jasowang@redhat.com>,
	Marcelo Tosatti <mtosatti@redhat.com>,
	qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org,
	kvm@vger.kernel.org,
	Bernhard Beschow <shentey@gmail.com>,
	Joel Upham <jupham125@gmail.com>
Subject: [PATCH v3 09/28] hw/xen: Clean up event channel 'type_val' handling to use union
Date: Wed, 25 Oct 2023 15:50:23 +0100
Message-Id: <20231025145042.627381-10-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231025145042.627381-1-dwmw2@infradead.org>
References: <20231025145042.627381-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

A previous implementation of this stuff used a 64-bit field for all of
the port information (vcpu/type/type_val) and did atomic exchanges on
them. When I implemented that in Qemu I regretted my life choices and
just kept it simple with locking instead.

So there's no need for the XenEvtchnPort to be so simplistic. We can
use a union for the pirq/virq/interdomain information, which lets us
keep a separate bit for the 'remote domain' in interdomain ports. A
single bit is enough since the only possible targets are loopback or
qemu itself.

So now we can ditch PORT_INFO_TYPEVAL_REMOTE_QEMU and the horrid
manual masking, although the in-memory representation is identical
so there's no change in the saved state ABI.

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
Reviewed-by: Paul Durrant <paul@xen.org>
---
 hw/i386/kvm/xen_evtchn.c | 151 ++++++++++++++++++---------------------
 1 file changed, 70 insertions(+), 81 deletions(-)

diff --git a/hw/i386/kvm/xen_evtchn.c b/hw/i386/kvm/xen_evtchn.c
index b2b4be9983..02b8cbf8df 100644
--- a/hw/i386/kvm/xen_evtchn.c
+++ b/hw/i386/kvm/xen_evtchn.c
@@ -58,7 +58,15 @@ OBJECT_DECLARE_SIMPLE_TYPE(XenEvtchnState, XEN_EVTCHN)
 typedef struct XenEvtchnPort {
     uint32_t vcpu;      /* Xen/ACPI vcpu_id */
     uint16_t type;      /* EVTCHNSTAT_xxxx */
-    uint16_t type_val;  /* pirq# / virq# / remote port according to type */
+    union {
+        uint16_t val;  /* raw value for serialization etc. */
+        uint16_t pirq;
+        uint16_t virq;
+        struct {
+            uint16_t port:15;
+            uint16_t to_qemu:1; /* Only two targets; qemu or loopback */
+        } interdomain;
+    } u;
 } XenEvtchnPort;
 
 /* 32-bit compatibility definitions, also used natively in 32-bit build */
@@ -105,14 +113,6 @@ struct xenevtchn_handle {
     int fd;
 };
 
-/*
- * For unbound/interdomain ports there are only two possible remote
- * domains; self and QEMU. Use a single high bit in type_val for that,
- * and the low bits for the remote port number (or 0 for unbound).
- */
-#define PORT_INFO_TYPEVAL_REMOTE_QEMU           0x8000
-#define PORT_INFO_TYPEVAL_REMOTE_PORT_MASK      0x7FFF
-
 /*
  * These 'emuirq' values are used by Xen in the LM stream... and yes, I am
  * insane enough to think about guest-transparent live migration from actual
@@ -210,16 +210,16 @@ static int xen_evtchn_post_load(void *opaque, int version_id)
         XenEvtchnPort *p = &s->port_table[i];
 
         if (p->type == EVTCHNSTAT_pirq) {
-            assert(p->type_val);
-            assert(p->type_val < s->nr_pirqs);
+            assert(p->u.pirq);
+            assert(p->u.pirq < s->nr_pirqs);
 
             /*
              * Set the gsi to IRQ_UNBOUND; it may be changed to an actual
              * GSI# below, or to IRQ_MSI_EMU when the MSI table snooping
              * catches up with it.
              */
-            s->pirq[p->type_val].gsi = IRQ_UNBOUND;
-            s->pirq[p->type_val].port = i;
+            s->pirq[p->u.pirq].gsi = IRQ_UNBOUND;
+            s->pirq[p->u.pirq].port = i;
         }
     }
     /* Rebuild s->pirq[].gsi mapping */
@@ -243,7 +243,7 @@ static const VMStateDescription xen_evtchn_port_vmstate = {
     .fields = (VMStateField[]) {
         VMSTATE_UINT32(vcpu, XenEvtchnPort),
         VMSTATE_UINT16(type, XenEvtchnPort),
-        VMSTATE_UINT16(type_val, XenEvtchnPort),
+        VMSTATE_UINT16(u.val, XenEvtchnPort),
         VMSTATE_END_OF_LIST()
     }
 };
@@ -605,14 +605,13 @@ static void unbind_backend_ports(XenEvtchnState *s)
 
     for (i = 1; i < s->nr_ports; i++) {
         p = &s->port_table[i];
-        if (p->type == EVTCHNSTAT_interdomain &&
-            (p->type_val & PORT_INFO_TYPEVAL_REMOTE_QEMU)) {
-            evtchn_port_t be_port = p->type_val & PORT_INFO_TYPEVAL_REMOTE_PORT_MASK;
+        if (p->type == EVTCHNSTAT_interdomain && p->u.interdomain.to_qemu) {
+            evtchn_port_t be_port = p->u.interdomain.port;
 
             if (s->be_handles[be_port]) {
                 /* This part will be overwritten on the load anyway. */
                 p->type = EVTCHNSTAT_unbound;
-                p->type_val = PORT_INFO_TYPEVAL_REMOTE_QEMU;
+                p->u.interdomain.port = 0;
 
                 /* Leave the backend port open and unbound too. */
                 if (kvm_xen_has_cap(EVTCHN_SEND)) {
@@ -650,30 +649,22 @@ int xen_evtchn_status_op(struct evtchn_status *status)
 
     switch (p->type) {
     case EVTCHNSTAT_unbound:
-        if (p->type_val & PORT_INFO_TYPEVAL_REMOTE_QEMU) {
-            status->u.unbound.dom = DOMID_QEMU;
-        } else {
-            status->u.unbound.dom = xen_domid;
-        }
+        status->u.unbound.dom = p->u.interdomain.to_qemu ? DOMID_QEMU
+                                                         : xen_domid;
         break;
 
     case EVTCHNSTAT_interdomain:
-        if (p->type_val & PORT_INFO_TYPEVAL_REMOTE_QEMU) {
-            status->u.interdomain.dom = DOMID_QEMU;
-        } else {
-            status->u.interdomain.dom = xen_domid;
-        }
-
-        status->u.interdomain.port = p->type_val &
-            PORT_INFO_TYPEVAL_REMOTE_PORT_MASK;
+        status->u.interdomain.dom = p->u.interdomain.to_qemu ? DOMID_QEMU
+                                                             : xen_domid;
+        status->u.interdomain.port = p->u.interdomain.port;
         break;
 
     case EVTCHNSTAT_pirq:
-        status->u.pirq = p->type_val;
+        status->u.pirq = p->u.pirq;
         break;
 
     case EVTCHNSTAT_virq:
-        status->u.virq = p->type_val;
+        status->u.virq = p->u.virq;
         break;
     }
 
@@ -989,7 +980,7 @@ static int clear_port_pending(XenEvtchnState *s, evtchn_port_t port)
 static void free_port(XenEvtchnState *s, evtchn_port_t port)
 {
     s->port_table[port].type = EVTCHNSTAT_closed;
-    s->port_table[port].type_val = 0;
+    s->port_table[port].u.val = 0;
     s->port_table[port].vcpu = 0;
 
     if (s->nr_ports == port + 1) {
@@ -1012,7 +1003,7 @@ static int allocate_port(XenEvtchnState *s, uint32_t vcpu, uint16_t type,
         if (s->port_table[p].type == EVTCHNSTAT_closed) {
             s->port_table[p].vcpu = vcpu;
             s->port_table[p].type = type;
-            s->port_table[p].type_val = val;
+            s->port_table[p].u.val = val;
 
             *port = p;
 
@@ -1053,15 +1044,15 @@ static int close_port(XenEvtchnState *s, evtchn_port_t port,
         return -ENOENT;
 
     case EVTCHNSTAT_pirq:
-        s->pirq[p->type_val].port = 0;
-        if (s->pirq[p->type_val].is_translated) {
+        s->pirq[p->u.pirq].port = 0;
+        if (s->pirq[p->u.pirq].is_translated) {
             *flush_kvm_routes = true;
         }
         break;
 
     case EVTCHNSTAT_virq:
-        kvm_xen_set_vcpu_virq(virq_is_global(p->type_val) ? 0 : p->vcpu,
-                              p->type_val, 0);
+        kvm_xen_set_vcpu_virq(virq_is_global(p->u.virq) ? 0 : p->vcpu,
+                              p->u.virq, 0);
         break;
 
     case EVTCHNSTAT_ipi:
@@ -1071,8 +1062,8 @@ static int close_port(XenEvtchnState *s, evtchn_port_t port,
         break;
 
     case EVTCHNSTAT_interdomain:
-        if (p->type_val & PORT_INFO_TYPEVAL_REMOTE_QEMU) {
-            uint16_t be_port = p->type_val & ~PORT_INFO_TYPEVAL_REMOTE_QEMU;
+        if (p->u.interdomain.to_qemu) {
+            uint16_t be_port = p->u.interdomain.port;
             struct xenevtchn_handle *xc = s->be_handles[be_port];
             if (xc) {
                 if (kvm_xen_has_cap(EVTCHN_SEND)) {
@@ -1082,14 +1073,15 @@ static int close_port(XenEvtchnState *s, evtchn_port_t port,
             }
         } else {
             /* Loopback interdomain */
-            XenEvtchnPort *rp = &s->port_table[p->type_val];
-            if (!valid_port(p->type_val) || rp->type_val != port ||
+            XenEvtchnPort *rp = &s->port_table[p->u.interdomain.port];
+            if (!valid_port(p->u.interdomain.port) ||
+                rp->u.interdomain.port != port ||
                 rp->type != EVTCHNSTAT_interdomain) {
                 error_report("Inconsistent state for interdomain unbind");
             } else {
                 /* Set the other end back to unbound */
                 rp->type = EVTCHNSTAT_unbound;
-                rp->type_val = 0;
+                rp->u.interdomain.port = 0;
             }
         }
         break;
@@ -1214,7 +1206,7 @@ int xen_evtchn_bind_vcpu_op(struct evtchn_bind_vcpu *vcpu)
     if (p->type == EVTCHNSTAT_interdomain ||
         p->type == EVTCHNSTAT_unbound ||
         p->type == EVTCHNSTAT_pirq ||
-        (p->type == EVTCHNSTAT_virq && virq_is_global(p->type_val))) {
+        (p->type == EVTCHNSTAT_virq && virq_is_global(p->u.virq))) {
         /*
          * unmask_port() with do_unmask==false will just raise the event
          * on the new vCPU if the port was already pending.
@@ -1359,19 +1351,15 @@ int xen_evtchn_bind_ipi_op(struct evtchn_bind_ipi *ipi)
 int xen_evtchn_bind_interdomain_op(struct evtchn_bind_interdomain *interdomain)
 {
     XenEvtchnState *s = xen_evtchn_singleton;
-    uint16_t type_val;
     int ret;
 
     if (!s) {
         return -ENOTSUP;
     }
 
-    if (interdomain->remote_dom == DOMID_QEMU) {
-        type_val = PORT_INFO_TYPEVAL_REMOTE_QEMU;
-    } else if (interdomain->remote_dom == DOMID_SELF ||
-               interdomain->remote_dom == xen_domid) {
-        type_val = 0;
-    } else {
+    if (interdomain->remote_dom != DOMID_QEMU &&
+        interdomain->remote_dom != DOMID_SELF &&
+        interdomain->remote_dom != xen_domid) {
         return -ESRCH;
     }
 
@@ -1382,8 +1370,8 @@ int xen_evtchn_bind_interdomain_op(struct evtchn_bind_interdomain *interdomain)
     qemu_mutex_lock(&s->port_lock);
 
     /* The newly allocated port starts out as unbound */
-    ret = allocate_port(s, 0, EVTCHNSTAT_unbound, type_val,
-                        &interdomain->local_port);
+    ret = allocate_port(s, 0, EVTCHNSTAT_unbound, 0, &interdomain->local_port);
+
     if (ret) {
         goto out;
     }
@@ -1408,7 +1396,8 @@ int xen_evtchn_bind_interdomain_op(struct evtchn_bind_interdomain *interdomain)
             assign_kernel_eventfd(lp->type, xc->guest_port, xc->fd);
         }
         lp->type = EVTCHNSTAT_interdomain;
-        lp->type_val = PORT_INFO_TYPEVAL_REMOTE_QEMU | interdomain->remote_port;
+        lp->u.interdomain.to_qemu = 1;
+        lp->u.interdomain.port = interdomain->remote_port;
         ret = 0;
     } else {
         /* Loopback */
@@ -1416,19 +1405,18 @@ int xen_evtchn_bind_interdomain_op(struct evtchn_bind_interdomain *interdomain)
         XenEvtchnPort *lp = &s->port_table[interdomain->local_port];
 
         /*
-         * The 'remote' port for loopback must be an unbound port allocated for
-         * communication with the local domain (as indicated by rp->type_val
-         * being zero, not PORT_INFO_TYPEVAL_REMOTE_QEMU), and must *not* be
-         * the port that was just allocated for the local end.
+         * The 'remote' port for loopback must be an unbound port allocated
+         * for communication with the local domain, and must *not* be the
+         * port that was just allocated for the local end.
          */
         if (interdomain->local_port != interdomain->remote_port &&
-            rp->type == EVTCHNSTAT_unbound && rp->type_val == 0) {
+            rp->type == EVTCHNSTAT_unbound && !rp->u.interdomain.to_qemu) {
 
             rp->type = EVTCHNSTAT_interdomain;
-            rp->type_val = interdomain->local_port;
+            rp->u.interdomain.port = interdomain->local_port;
 
             lp->type = EVTCHNSTAT_interdomain;
-            lp->type_val = interdomain->remote_port;
+            lp->u.interdomain.port = interdomain->remote_port;
         } else {
             ret = -EINVAL;
         }
@@ -1447,7 +1435,6 @@ int xen_evtchn_bind_interdomain_op(struct evtchn_bind_interdomain *interdomain)
 int xen_evtchn_alloc_unbound_op(struct evtchn_alloc_unbound *alloc)
 {
     XenEvtchnState *s = xen_evtchn_singleton;
-    uint16_t type_val;
     int ret;
 
     if (!s) {
@@ -1458,18 +1445,20 @@ int xen_evtchn_alloc_unbound_op(struct evtchn_alloc_unbound *alloc)
         return -ESRCH;
     }
 
-    if (alloc->remote_dom == DOMID_QEMU) {
-        type_val = PORT_INFO_TYPEVAL_REMOTE_QEMU;
-    } else if (alloc->remote_dom == DOMID_SELF ||
-               alloc->remote_dom == xen_domid) {
-        type_val = 0;
-    } else {
+    if (alloc->remote_dom != DOMID_QEMU &&
+        alloc->remote_dom != DOMID_SELF &&
+        alloc->remote_dom != xen_domid) {
         return -EPERM;
     }
 
     qemu_mutex_lock(&s->port_lock);
 
-    ret = allocate_port(s, 0, EVTCHNSTAT_unbound, type_val, &alloc->port);
+    ret = allocate_port(s, 0, EVTCHNSTAT_unbound, 0, &alloc->port);
+
+    if (!ret && alloc->remote_dom == DOMID_QEMU) {
+        XenEvtchnPort *p = &s->port_table[alloc->port];
+        p->u.interdomain.to_qemu = 1;
+    }
 
     qemu_mutex_unlock(&s->port_lock);
 
@@ -1496,12 +1485,12 @@ int xen_evtchn_send_op(struct evtchn_send *send)
 
     switch (p->type) {
     case EVTCHNSTAT_interdomain:
-        if (p->type_val & PORT_INFO_TYPEVAL_REMOTE_QEMU) {
+        if (p->u.interdomain.to_qemu) {
             /*
              * This is an event from the guest to qemu itself, which is
              * serving as the driver domain.
              */
-            uint16_t be_port = p->type_val & ~PORT_INFO_TYPEVAL_REMOTE_QEMU;
+            uint16_t be_port = p->u.interdomain.port;
             struct xenevtchn_handle *xc = s->be_handles[be_port];
             if (xc) {
                 eventfd_write(xc->fd, 1);
@@ -1511,7 +1500,7 @@ int xen_evtchn_send_op(struct evtchn_send *send)
             }
         } else {
             /* Loopback interdomain ports; just a complex IPI */
-            set_port_pending(s, p->type_val);
+            set_port_pending(s, p->u.interdomain.port);
         }
         break;
 
@@ -1553,8 +1542,7 @@ int xen_evtchn_set_port(uint16_t port)
 
     /* QEMU has no business sending to anything but these */
     if (p->type == EVTCHNSTAT_virq ||
-        (p->type == EVTCHNSTAT_interdomain &&
-         (p->type_val & PORT_INFO_TYPEVAL_REMOTE_QEMU))) {
+        (p->type == EVTCHNSTAT_interdomain && p->u.interdomain.to_qemu)) {
         set_port_pending(s, port);
         ret = 0;
     }
@@ -2064,7 +2052,7 @@ int xen_be_evtchn_bind_interdomain(struct xenevtchn_handle *xc, uint32_t domid,
     switch (gp->type) {
     case EVTCHNSTAT_interdomain:
         /* Allow rebinding after migration, preserve port # if possible */
-        be_port = gp->type_val & ~PORT_INFO_TYPEVAL_REMOTE_QEMU;
+        be_port = gp->u.interdomain.port;
         assert(be_port != 0);
         if (!s->be_handles[be_port]) {
             s->be_handles[be_port] = xc;
@@ -2085,7 +2073,8 @@ int xen_be_evtchn_bind_interdomain(struct xenevtchn_handle *xc, uint32_t domid,
         }
 
         gp->type = EVTCHNSTAT_interdomain;
-        gp->type_val = be_port | PORT_INFO_TYPEVAL_REMOTE_QEMU;
+        gp->u.interdomain.to_qemu = 1;
+        gp->u.interdomain.port = be_port;
         xc->guest_port = guest_port;
         if (kvm_xen_has_cap(EVTCHN_SEND)) {
             assign_kernel_eventfd(gp->type, guest_port, xc->fd);
@@ -2130,7 +2119,7 @@ int xen_be_evtchn_unbind(struct xenevtchn_handle *xc, evtchn_port_t port)
         /* This should never *not* be true */
         if (gp->type == EVTCHNSTAT_interdomain) {
             gp->type = EVTCHNSTAT_unbound;
-            gp->type_val = PORT_INFO_TYPEVAL_REMOTE_QEMU;
+            gp->u.interdomain.port = 0;
         }
 
         if (kvm_xen_has_cap(EVTCHN_SEND)) {
@@ -2284,11 +2273,11 @@ EvtchnInfoList *qmp_xen_event_list(Error **errp)
 
         info->type = p->type;
         if (p->type == EVTCHNSTAT_interdomain) {
-            info->remote_domain = g_strdup((p->type_val & PORT_INFO_TYPEVAL_REMOTE_QEMU) ?
+            info->remote_domain = g_strdup(p->u.interdomain.to_qemu ?
                                            "qemu" : "loopback");
-            info->target = p->type_val & PORT_INFO_TYPEVAL_REMOTE_PORT_MASK;
+            info->target = p->u.interdomain.port;
         } else {
-            info->target = p->type_val;
+            info->target = p->u.val; /* pirq# or virq# */
         }
         info->vcpu = p->vcpu;
         info->pending = test_bit(i, pending);
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Wed Oct 25 14:55:08 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 14:55:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623020.970433 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvfHo-0002dY-35; Wed, 25 Oct 2023 14:55:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623020.970433; Wed, 25 Oct 2023 14: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 1qvfHo-0002dR-0V; Wed, 25 Oct 2023 14:55:08 +0000
Received: by outflank-mailman (input) for mailman id 623020;
 Wed, 25 Oct 2023 14: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=w7q9=GH=desiato.srs.infradead.org=BATV+fe87d11d956b9f6f1554+7367+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qvfEB-0008W8-C4
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 14:51:23 +0000
Received: from desiato.infradead.org (desiato.infradead.org
 [2001:8b0:10b:1:d65d:64ff:fe57:4e05])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id f55cd67e-7345-11ee-98d5-6d05b1d4d9a1;
 Wed, 25 Oct 2023 16:51:20 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by desiato.infradead.org with esmtpsa (Exim 4.96 #2 (Red Hat Linux))
 id 1qvfDa-00GPM2-1E; Wed, 25 Oct 2023 14:50:52 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1qvfDY-002dF1-2x; Wed, 25 Oct 2023 15:50:44 +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
X-Inumbo-ID: f55cd67e-7345-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=desiato.20200630; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=auoyj1xEgaC8bMi0O7YUpQ0rx3BFjT2lyRCJL3y5wnE=; b=f9MCdDvLs+qhwkY0BLNlfs14jT
	yrufAYA9JVI6q35igUctpZ6mzrMYX7I5p9/s6ghbctBLFRaMt/6qiW7JclxMDG8Q1UnjnvEaWzbAg
	YN4r3n/mx+izvC/7zFhlKoaYMdVN5utuEXqi09ru8grPMQrP1B5UsCNbiLaR/C6mBBGpd2rjMig2J
	H3xaLdbmoQUfqN4wMM9ZuzOJXVF358Nug7RCgfVzNBsGiH8aM9hCh3VKZ74Xbau3LKG4qSvXEdaFb
	L/Lu1nKwEOPY1Pt9RFQxjKQNPSCuly+xtT5J3Vq1Dyyr2b8emQVdjD2Lkx9zslYfVFoTFsX+hP+L7
	6bV63/wA==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>,
	Hanna Reitz <hreitz@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	=?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Richard Henderson <richard.henderson@linaro.org>,
	Eduardo Habkost <eduardo@habkost.net>,
	Jason Wang <jasowang@redhat.com>,
	Marcelo Tosatti <mtosatti@redhat.com>,
	qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org,
	kvm@vger.kernel.org,
	Bernhard Beschow <shentey@gmail.com>,
	Joel Upham <jupham125@gmail.com>
Subject: [PATCH v3 16/28] hw/xen: update Xen console to XenDevice model
Date: Wed, 25 Oct 2023 15:50:30 +0100
Message-Id: <20231025145042.627381-17-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231025145042.627381-1-dwmw2@infradead.org>
References: <20231025145042.627381-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by desiato.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

This allows (non-primary) console devices to be created on the command
line and hotplugged.

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
Reviewed-by: Paul Durrant <paul@xen.org>
---
 hw/char/trace-events        |   8 +
 hw/char/xen_console.c       | 532 +++++++++++++++++++++++++++---------
 hw/xen/xen-legacy-backend.c |   1 -
 3 files changed, 411 insertions(+), 130 deletions(-)

diff --git a/hw/char/trace-events b/hw/char/trace-events
index babf4d35ea..7a398c82a5 100644
--- a/hw/char/trace-events
+++ b/hw/char/trace-events
@@ -105,3 +105,11 @@ cadence_uart_baudrate(unsigned baudrate) "baudrate %u"
 # sh_serial.c
 sh_serial_read(char *id, unsigned size, uint64_t offs, uint64_t val) " %s size %d offs 0x%02" PRIx64 " -> 0x%02" PRIx64
 sh_serial_write(char *id, unsigned size, uint64_t offs, uint64_t val) "%s size %d offs 0x%02" PRIx64 " <- 0x%02" PRIx64
+
+# xen_console.c
+xen_console_connect(unsigned int idx, unsigned int ring_ref, unsigned int port, unsigned int limit) "idx %u ring_ref %u port %u limit %u"
+xen_console_disconnect(unsigned int idx) "idx %u"
+xen_console_unrealize(unsigned int idx) "idx %u"
+xen_console_realize(unsigned int idx, const char *chrdev) "idx %u chrdev %s"
+xen_console_device_create(unsigned int idx) "idx %u"
+xen_console_device_destroy(unsigned int idx) "idx %u"
diff --git a/hw/char/xen_console.c b/hw/char/xen_console.c
index 810dae3f44..4a419dc287 100644
--- a/hw/char/xen_console.c
+++ b/hw/char/xen_console.c
@@ -20,15 +20,20 @@
  */
 
 #include "qemu/osdep.h"
+#include "qemu/cutils.h"
 #include <sys/select.h>
 #include <termios.h>
 
 #include "qapi/error.h"
 #include "sysemu/sysemu.h"
 #include "chardev/char-fe.h"
-#include "hw/xen/xen-legacy-backend.h"
-
+#include "hw/xen/xen-backend.h"
+#include "hw/xen/xen-bus-helper.h"
+#include "hw/qdev-properties.h"
+#include "hw/qdev-properties-system.h"
 #include "hw/xen/interface/io/console.h"
+#include "hw/xen/interface/io/xs_wire.h"
+#include "trace.h"
 
 struct buffer {
     uint8_t *data;
@@ -39,16 +44,22 @@ struct buffer {
 };
 
 struct XenConsole {
-    struct XenLegacyDevice  xendev;  /* must be first */
+    struct XenDevice  xendev;  /* must be first */
+    XenEventChannel   *event_channel;
+    int               dev;
     struct buffer     buffer;
-    char              console[XEN_BUFSIZE];
-    int               ring_ref;
+    char              *fe_path;
+    unsigned int      ring_ref;
     void              *sring;
     CharBackend       chr;
     int               backlog;
 };
+typedef struct XenConsole XenConsole;
+
+#define TYPE_XEN_CONSOLE_DEVICE "xen-console"
+OBJECT_DECLARE_SIMPLE_TYPE(XenConsole, XEN_CONSOLE_DEVICE)
 
-static void buffer_append(struct XenConsole *con)
+static bool buffer_append(XenConsole *con)
 {
     struct buffer *buffer = &con->buffer;
     XENCONS_RING_IDX cons, prod, size;
@@ -60,7 +71,7 @@ static void buffer_append(struct XenConsole *con)
 
     size = prod - cons;
     if ((size == 0) || (size > sizeof(intf->out)))
-        return;
+        return false;
 
     if ((buffer->capacity - buffer->size) < size) {
         buffer->capacity += (size + 1024);
@@ -73,7 +84,7 @@ static void buffer_append(struct XenConsole *con)
 
     xen_mb();
     intf->out_cons = cons;
-    xen_pv_send_notify(&con->xendev);
+    xen_device_notify_event_channel(XEN_DEVICE(con), con->event_channel, NULL);
 
     if (buffer->max_capacity &&
         buffer->size > buffer->max_capacity) {
@@ -89,6 +100,7 @@ static void buffer_append(struct XenConsole *con)
         if (buffer->consumed > buffer->max_capacity - over)
             buffer->consumed = buffer->max_capacity - over;
     }
+    return true;
 }
 
 static void buffer_advance(struct buffer *buffer, size_t len)
@@ -100,7 +112,7 @@ static void buffer_advance(struct buffer *buffer, size_t len)
     }
 }
 
-static int ring_free_bytes(struct XenConsole *con)
+static int ring_free_bytes(XenConsole *con)
 {
     struct xencons_interface *intf = con->sring;
     XENCONS_RING_IDX cons, prod, space;
@@ -118,13 +130,13 @@ static int ring_free_bytes(struct XenConsole *con)
 
 static int xencons_can_receive(void *opaque)
 {
-    struct XenConsole *con = opaque;
+    XenConsole *con = opaque;
     return ring_free_bytes(con);
 }
 
 static void xencons_receive(void *opaque, const uint8_t *buf, int len)
 {
-    struct XenConsole *con = opaque;
+    XenConsole *con = opaque;
     struct xencons_interface *intf = con->sring;
     XENCONS_RING_IDX prod;
     int i, max;
@@ -141,10 +153,10 @@ static void xencons_receive(void *opaque, const uint8_t *buf, int len)
     }
     xen_wmb();
     intf->in_prod = prod;
-    xen_pv_send_notify(&con->xendev);
+    xen_device_notify_event_channel(XEN_DEVICE(con), con->event_channel, NULL);
 }
 
-static void xencons_send(struct XenConsole *con)
+static bool xencons_send(XenConsole *con)
 {
     ssize_t len, size;
 
@@ -159,174 +171,436 @@ static void xencons_send(struct XenConsole *con)
     if (len < 1) {
         if (!con->backlog) {
             con->backlog = 1;
-            xen_pv_printf(&con->xendev, 1,
-                          "backlog piling up, nobody listening?\n");
         }
     } else {
         buffer_advance(&con->buffer, len);
         if (con->backlog && len == size) {
             con->backlog = 0;
-            xen_pv_printf(&con->xendev, 1, "backlog is gone\n");
         }
     }
+    return len > 0;
 }
 
 /* -------------------------------------------------------------------- */
 
-static int store_con_info(struct XenConsole *con)
+static bool con_event(void *_xendev)
 {
-    Chardev *cs = qemu_chr_fe_get_driver(&con->chr);
-    char *pts = NULL;
-    char *dom_path;
-    g_autoptr(GString) path = NULL;
+    XenConsole *con = XEN_CONSOLE_DEVICE(_xendev);
+    bool done_something;
+
+    if (xen_device_backend_get_state(&con->xendev) != XenbusStateConnected) {
+        return false;
+    }
+
+    done_something = buffer_append(con);
+
+    if (con->buffer.size - con->buffer.consumed) {
+        done_something |= xencons_send(con);
+    }
+    return done_something;
+}
+
+/* -------------------------------------------------------------------- */
+
+static bool xen_console_connect(XenDevice *xendev, Error **errp)
+{
+    XenConsole *con = XEN_CONSOLE_DEVICE(xendev);
+    unsigned int port, limit;
+
+    if (xen_device_frontend_scanf(xendev, "ring-ref", "%u",
+                                  &con->ring_ref) != 1) {
+        error_setg(errp, "failed to read ring-ref");
+        return false;
+    }
 
-    /* Only continue if we're talking to a pty. */
-    if (!CHARDEV_IS_PTY(cs)) {
-        return 0;
+    if (xen_device_frontend_scanf(xendev, "port", "%u", &port) != 1) {
+        error_setg(errp, "failed to read remote port");
+        return false;
     }
-    pts = cs->filename + 4;
 
-    dom_path = qemu_xen_xs_get_domain_path(xenstore, xen_domid);
-    if (!dom_path) {
-        return 0;
+    if (xen_device_frontend_scanf(xendev, "limit", "%u", &limit) == 1) {
+        con->buffer.max_capacity = limit;
     }
 
-    path = g_string_new(dom_path);
-    free(dom_path);
+    con->event_channel = xen_device_bind_event_channel(xendev, port,
+                                                       con_event,
+                                                       con,
+                                                       errp);
+    if (!con->event_channel) {
+        return false;
+    }
 
-    if (con->xendev.dev) {
-        g_string_append_printf(path, "/device/console/%d", con->xendev.dev);
+    if (!con->dev) {
+        xen_pfn_t mfn = (xen_pfn_t)con->ring_ref;
+        con->sring = qemu_xen_foreignmem_map(xendev->frontend_id, NULL,
+                                             PROT_READ | PROT_WRITE,
+                                             1, &mfn, NULL);
+        if (!con->sring) {
+            error_setg(errp, "failed to map console page");
+            return false;
+        }
     } else {
-        g_string_append(path, "/console");
+        con->sring = xen_device_map_grant_refs(xendev,
+                                               &con->ring_ref, 1,
+                                               PROT_READ | PROT_WRITE,
+                                               errp);
+        if (!con->sring) {
+            error_prepend(errp, "failed to map grant ref: ");
+            return false;
+        }
     }
-    g_string_append(path, "/tty");
 
-    if (xenstore_write_str(con->console, path->str, pts)) {
-        fprintf(stderr, "xenstore_write_str for '%s' fail", path->str);
-        return -1;
+    trace_xen_console_connect(con->dev, con->ring_ref, port,
+                              con->buffer.max_capacity);
+
+    qemu_chr_fe_set_handlers(&con->chr, xencons_can_receive,
+                             xencons_receive, NULL, NULL, con, NULL,
+                             true);
+    return true;
+}
+
+static void xen_console_disconnect(XenDevice *xendev, Error **errp)
+{
+    XenConsole *con = XEN_CONSOLE_DEVICE(xendev);
+
+    trace_xen_console_disconnect(con->dev);
+
+    qemu_chr_fe_set_handlers(&con->chr, NULL, NULL, NULL, NULL,
+                             con, NULL, true);
+
+    if (con->event_channel) {
+        xen_device_unbind_event_channel(xendev, con->event_channel,
+                                        errp);
+        con->event_channel = NULL;
+    }
+
+    if (con->sring) {
+        if (!con->dev) {
+            qemu_xen_foreignmem_unmap(con->sring, 1);
+        } else {
+            xen_device_unmap_grant_refs(xendev, con->sring,
+                                        &con->ring_ref, 1, errp);
+        }
+        con->sring = NULL;
     }
-    return 0;
 }
 
-static int con_init(struct XenLegacyDevice *xendev)
+static void xen_console_frontend_changed(XenDevice *xendev,
+                                         enum xenbus_state frontend_state,
+                                         Error **errp)
 {
-    struct XenConsole *con = container_of(xendev, struct XenConsole, xendev);
-    char *type, *dom, label[32];
-    int ret = 0;
-    const char *output;
-
-    /* setup */
-    dom = qemu_xen_xs_get_domain_path(xenstore, con->xendev.dom);
-    if (!xendev->dev) {
-        snprintf(con->console, sizeof(con->console), "%s/console", dom);
-    } else {
-        snprintf(con->console, sizeof(con->console), "%s/device/console/%d", dom, xendev->dev);
+    ERRP_GUARD();
+    enum xenbus_state backend_state = xen_device_backend_get_state(xendev);
+
+    switch (frontend_state) {
+    case XenbusStateInitialised:
+    case XenbusStateConnected:
+        if (backend_state == XenbusStateConnected) {
+            break;
+        }
+
+        xen_console_disconnect(xendev, errp);
+        if (*errp) {
+            break;
+        }
+
+        if (!xen_console_connect(xendev, errp)) {
+            xen_device_backend_set_state(xendev, XenbusStateClosing);
+            break;
+        }
+
+        xen_device_backend_set_state(xendev, XenbusStateConnected);
+        break;
+
+    case XenbusStateClosing:
+        xen_device_backend_set_state(xendev, XenbusStateClosing);
+        break;
+
+    case XenbusStateClosed:
+    case XenbusStateUnknown:
+        xen_console_disconnect(xendev, errp);
+        if (*errp) {
+            break;
+        }
+
+        xen_device_backend_set_state(xendev, XenbusStateClosed);
+        break;
+
+    default:
+        break;
     }
-    free(dom);
+}
 
-    type = xenstore_read_str(con->console, "type");
-    if (!type || strcmp(type, "ioemu") != 0) {
-        xen_pv_printf(xendev, 1, "not for me (type=%s)\n", type);
-        ret = -1;
-        goto out;
+static char *xen_console_get_name(XenDevice *xendev, Error **errp)
+{
+    XenConsole *con = XEN_CONSOLE_DEVICE(xendev);
+
+    if (con->dev == -1) {
+        XenBus *xenbus = XEN_BUS(qdev_get_parent_bus(DEVICE(xendev)));
+        char fe_path[XENSTORE_ABS_PATH_MAX + 1];
+        char *value;
+        int idx = 1;
+
+        /* Theoretically we could go up to INT_MAX here but that's overkill */
+        while (idx < 100) {
+            snprintf(fe_path, sizeof(fe_path),
+                     "/local/domain/%u/device/console/%u",
+                     xendev->frontend_id, idx);
+            value = qemu_xen_xs_read(xenbus->xsh, XBT_NULL, fe_path, NULL);
+            if (!value) {
+                if (errno == ENOENT) {
+                    con->dev = idx;
+                    goto found;
+                }
+                error_setg(errp, "cannot read %s: %s", fe_path,
+                           strerror(errno));
+                return NULL;
+            }
+            free(value);
+            idx++;
+        }
+        error_setg(errp, "cannot find device index for console device");
+        return NULL;
     }
+ found:
+    return g_strdup_printf("%u", con->dev);
+}
+
+static void xen_console_unrealize(XenDevice *xendev)
+{
+    XenConsole *con = XEN_CONSOLE_DEVICE(xendev);
+
+    trace_xen_console_unrealize(con->dev);
 
-    output = xenstore_read_str(con->console, "output");
+    /* Disconnect from the frontend in case this has not already happened */
+    xen_console_disconnect(xendev, NULL);
 
-    /* no Xen override, use qemu output device */
-    if (output == NULL) {
-        if (con->xendev.dev) {
-            qemu_chr_fe_init(&con->chr, serial_hd(con->xendev.dev),
-                             &error_abort);
+    qemu_chr_fe_deinit(&con->chr, false);
+}
+
+static void xen_console_realize(XenDevice *xendev, Error **errp)
+{
+    ERRP_GUARD();
+    XenConsole *con = XEN_CONSOLE_DEVICE(xendev);
+    Chardev *cs = qemu_chr_fe_get_driver(&con->chr);
+    unsigned int u;
+
+    if (!cs) {
+        error_setg(errp, "no backing character device");
+        return;
+    }
+
+    if (con->dev == -1) {
+        error_setg(errp, "no device index provided");
+        return;
+    }
+
+    /*
+     * The Xen primary console is special. The ring-ref is actually a GFN to
+     * be mapped directly as foreignmem (not a grant ref), and the guest port
+     * was allocated *for* the guest by the toolstack. The guest gets these
+     * through HVMOP_get_param and can use the console long before it's got
+     * XenStore up and running. We cannot create those for a Xen guest.
+     */
+    if (!con->dev) {
+        if (xen_device_frontend_scanf(xendev, "ring-ref", "%u", &u) != 1 ||
+            xen_device_frontend_scanf(xendev, "port", "%u", &u) != 1) {
+            error_setg(errp, "cannot create primary Xen console");
+            return;
         }
+    }
+
+    trace_xen_console_realize(con->dev, object_get_typename(OBJECT(cs)));
+
+    if (CHARDEV_IS_PTY(cs)) {
+        /* Strip the leading 'pty:' */
+        xen_device_frontend_printf(xendev, "tty", "%s", cs->filename + 4);
+    }
+
+    /* No normal PV driver initialization for the primary console */
+    if (!con->dev) {
+        xen_console_connect(xendev, errp);
+    }
+}
+
+static char *console_frontend_path(struct qemu_xs_handle *xenstore,
+                                   unsigned int dom_id, unsigned int dev)
+{
+    if (!dev) {
+        return g_strdup_printf("/local/domain/%u/console", dom_id);
     } else {
-        snprintf(label, sizeof(label), "xencons%d", con->xendev.dev);
-        qemu_chr_fe_init(&con->chr,
-                         /*
-                          * FIXME: sure we want to support implicit
-                          * muxed monitors here?
-                          */
-                         qemu_chr_new_mux_mon(label, output, NULL),
-                         &error_abort);
+        return g_strdup_printf("/local/domain/%u/device/console/%u", dom_id,
+                               dev);
     }
+}
 
-    store_con_info(con);
+static char *xen_console_get_frontend_path(XenDevice *xendev, Error **errp)
+{
+    XenConsole *con = XEN_CONSOLE_DEVICE(xendev);
+    XenBus *xenbus = XEN_BUS(qdev_get_parent_bus(DEVICE(xendev)));
+    char *ret = console_frontend_path(xenbus->xsh, xendev->frontend_id,
+                                      con->dev);
 
-out:
-    g_free(type);
+    if (!ret) {
+        error_setg(errp, "failed to create frontend path");
+    }
     return ret;
 }
 
-static int con_initialise(struct XenLegacyDevice *xendev)
+
+static Property xen_console_properties[] = {
+    DEFINE_PROP_CHR("chardev", XenConsole, chr),
+    DEFINE_PROP_INT32("idx", XenConsole, dev, -1),
+    DEFINE_PROP_END_OF_LIST(),
+};
+
+static void xen_console_class_init(ObjectClass *class, void *data)
 {
-    struct XenConsole *con = container_of(xendev, struct XenConsole, xendev);
-    int limit;
-
-    if (xenstore_read_int(con->console, "ring-ref", &con->ring_ref) == -1)
-        return -1;
-    if (xenstore_read_int(con->console, "port", &con->xendev.remote_port) == -1)
-        return -1;
-    if (xenstore_read_int(con->console, "limit", &limit) == 0)
-        con->buffer.max_capacity = limit;
+    DeviceClass *dev_class = DEVICE_CLASS(class);
+    XenDeviceClass *xendev_class = XEN_DEVICE_CLASS(class);
+
+    xendev_class->backend = "console";
+    xendev_class->device = "console";
+    xendev_class->get_name = xen_console_get_name;
+    xendev_class->realize = xen_console_realize;
+    xendev_class->frontend_changed = xen_console_frontend_changed;
+    xendev_class->unrealize = xen_console_unrealize;
+    xendev_class->get_frontend_path = xen_console_get_frontend_path;
+
+    device_class_set_props(dev_class, xen_console_properties);
+}
 
-    if (!xendev->dev) {
-        xen_pfn_t mfn = con->ring_ref;
-        con->sring = qemu_xen_foreignmem_map(con->xendev.dom, NULL,
-                                             PROT_READ | PROT_WRITE,
-                                             1, &mfn, NULL);
-    } else {
-        con->sring = xen_be_map_grant_ref(xendev, con->ring_ref,
-                                          PROT_READ | PROT_WRITE);
-    }
-    if (!con->sring)
-        return -1;
+static const TypeInfo xen_console_type_info = {
+    .name = TYPE_XEN_CONSOLE_DEVICE,
+    .parent = TYPE_XEN_DEVICE,
+    .instance_size = sizeof(XenConsole),
+    .class_init = xen_console_class_init,
+};
 
-    xen_be_bind_evtchn(&con->xendev);
-    qemu_chr_fe_set_handlers(&con->chr, xencons_can_receive,
-                             xencons_receive, NULL, NULL, con, NULL, true);
-
-    xen_pv_printf(xendev, 1,
-                  "ring mfn %d, remote port %d, local port %d, limit %zd\n",
-                  con->ring_ref,
-                  con->xendev.remote_port,
-                  con->xendev.local_port,
-                  con->buffer.max_capacity);
-    return 0;
+static void xen_console_register_types(void)
+{
+    type_register_static(&xen_console_type_info);
 }
 
-static void con_disconnect(struct XenLegacyDevice *xendev)
+type_init(xen_console_register_types)
+
+/* Called to instantiate a XenConsole when the backend is detected. */
+static void xen_console_device_create(XenBackendInstance *backend,
+                                      QDict *opts, Error **errp)
 {
-    struct XenConsole *con = container_of(xendev, struct XenConsole, xendev);
+    ERRP_GUARD();
+    XenBus *xenbus = xen_backend_get_bus(backend);
+    const char *name = xen_backend_get_name(backend);
+    unsigned long number;
+    char *fe = NULL, *type = NULL, *output = NULL;
+    char label[32];
+    XenDevice *xendev = NULL;
+    XenConsole *con;
+    Chardev *cd = NULL;
+    struct qemu_xs_handle *xsh = xenbus->xsh;
+
+    if (qemu_strtoul(name, NULL, 10, &number) || number > INT_MAX) {
+        error_setg(errp, "failed to parse name '%s'", name);
+        goto fail;
+    }
 
-    qemu_chr_fe_deinit(&con->chr, false);
-    xen_pv_unbind_evtchn(&con->xendev);
+    trace_xen_console_device_create(number);
 
-    if (con->sring) {
-        if (!xendev->dev) {
-            qemu_xen_foreignmem_unmap(con->sring, 1);
-        } else {
-            xen_be_unmap_grant_ref(xendev, con->sring, con->ring_ref);
+    fe = console_frontend_path(xsh, xen_domid, number);
+    if (fe == NULL) {
+        error_setg(errp, "failed to generate frontend path");
+        goto fail;
+    }
+
+    if (xs_node_scanf(xsh, XBT_NULL, fe, "type", errp, "%ms", &type) != 1) {
+        error_prepend(errp, "failed to read console device type: ");
+        goto fail;
+    }
+
+    if (strcmp(type, "ioemu")) {
+        error_setg(errp, "declining to handle console type '%s'",
+                   type);
+        goto fail;
+    }
+
+    xendev = XEN_DEVICE(qdev_new(TYPE_XEN_CONSOLE_DEVICE));
+    con = XEN_CONSOLE_DEVICE(xendev);
+
+    con->dev = number;
+
+    snprintf(label, sizeof(label), "xencons%ld", number);
+
+    if (xs_node_scanf(xsh, XBT_NULL, fe, "output", NULL, "%ms", &output) == 1) {
+        /*
+         * FIXME: sure we want to support implicit
+         * muxed monitors here?
+         */
+        cd = qemu_chr_new_mux_mon(label, output, NULL);
+        if (!cd) {
+            error_setg(errp, "console: No valid chardev found at '%s': ",
+                       output);
+            goto fail;
         }
-        con->sring = NULL;
+    } else if (number) {
+        cd = serial_hd(number);
+        if (!cd) {
+            error_prepend(errp, "console: No serial device #%ld found: ",
+                          number);
+            goto fail;
+        }
+    } else {
+        /* No 'output' node on primary console: use null. */
+        cd = qemu_chr_new(label, "null", NULL);
+        if (!cd) {
+            error_setg(errp, "console: failed to create null device");
+            goto fail;
+        }
+    }
+
+    if (!qemu_chr_fe_init(&con->chr, cd, errp)) {
+        error_prepend(errp, "console: failed to initialize backing chardev: ");
+        goto fail;
+    }
+
+    if (qdev_realize_and_unref(DEVICE(xendev), BUS(xenbus), errp)) {
+        xen_backend_set_device(backend, xendev);
+        goto done;
+    }
+
+    error_prepend(errp, "realization of console device %lu failed: ",
+                  number);
+
+ fail:
+    if (xendev) {
+        object_unparent(OBJECT(xendev));
     }
+ done:
+    g_free(fe);
+    free(type);
+    free(output);
 }
 
-static void con_event(struct XenLegacyDevice *xendev)
+static void xen_console_device_destroy(XenBackendInstance *backend,
+                                       Error **errp)
 {
-    struct XenConsole *con = container_of(xendev, struct XenConsole, xendev);
+    ERRP_GUARD();
+    XenDevice *xendev = xen_backend_get_device(backend);
+    XenConsole *con = XEN_CONSOLE_DEVICE(xendev);
 
-    buffer_append(con);
-    if (con->buffer.size - con->buffer.consumed)
-        xencons_send(con);
-}
+    trace_xen_console_device_destroy(con->dev);
 
-/* -------------------------------------------------------------------- */
+    object_unparent(OBJECT(xendev));
+}
 
-struct XenDevOps xen_console_ops = {
-    .size       = sizeof(struct XenConsole),
-    .flags      = DEVOPS_FLAG_IGNORE_STATE|DEVOPS_FLAG_NEED_GNTDEV,
-    .init       = con_init,
-    .initialise = con_initialise,
-    .event      = con_event,
-    .disconnect = con_disconnect,
+static const XenBackendInfo xen_console_backend_info  = {
+    .type = "console",
+    .create = xen_console_device_create,
+    .destroy = xen_console_device_destroy,
 };
+
+static void xen_console_register_backend(void)
+{
+    xen_backend_register(&xen_console_backend_info);
+}
+
+xen_backend_init(xen_console_register_backend);
diff --git a/hw/xen/xen-legacy-backend.c b/hw/xen/xen-legacy-backend.c
index 4ded3cec23..124dd5f3d6 100644
--- a/hw/xen/xen-legacy-backend.c
+++ b/hw/xen/xen-legacy-backend.c
@@ -623,7 +623,6 @@ void xen_be_init(void)
 
     xen_set_dynamic_sysbus();
 
-    xen_be_register("console", &xen_console_ops);
     xen_be_register("vkbd", &xen_kbdmouse_ops);
 #ifdef CONFIG_VIRTFS
     xen_be_register("9pfs", &xen_9pfs_ops);
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Wed Oct 25 14:55:42 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 14:55:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623024.970443 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvfIL-0003Ky-FM; Wed, 25 Oct 2023 14:55:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623024.970443; Wed, 25 Oct 2023 14:55: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 1qvfIL-0003Kr-Cr; Wed, 25 Oct 2023 14:55:41 +0000
Received: by outflank-mailman (input) for mailman id 623024;
 Wed, 25 Oct 2023 14:55: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=w7q9=GH=desiato.srs.infradead.org=BATV+fe87d11d956b9f6f1554+7367+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qvfE3-0000WU-E4
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 14:51:15 +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 f043ff82-7345-11ee-9b0e-b553b5be7939;
 Wed, 25 Oct 2023 16:51:12 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by desiato.infradead.org with esmtpsa (Exim 4.96 #2 (Red Hat Linux))
 id 1qvfDa-00GPM5-1F; Wed, 25 Oct 2023 14:50:51 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1qvfDZ-002dFL-0k; Wed, 25 Oct 2023 15:50:45 +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
X-Inumbo-ID: f043ff82-7345-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=desiato.20200630; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=iaeDXSTaoWdCm87GDHXDzDikArDTOfszjp92r6YPQM0=; b=Fpo2lDHmkFJFrEzTxCnYSHMQc+
	H+POf4RpTDXrqfi7zmTI2kpkXiZEJ/4ikVugJbl/UXMyulJnl8bxTi7gdq+Xlhe/NOsdTz353nXNS
	skhnTvQvc19bBykXDJLHjeBVQ97kJvOEjCn3zBqYb/BH5rDtwk6NqQC0EyXGhRuEVDofWOrIuQUbH
	eDXBfUYpNVxLjOjbdUpmFPsWWBCjffiEX876q5ArcW6FdlTHX93HUMDbaBkhxtxYaZxt/fpHXCNkE
	Ko/NceL/1GypeXooX+xxhcNkWMbOUUaDd3BrGGwo4s3+7LbNRB/e9K7vIixU+dnx+7J2jpuR7mvKp
	dd1Vd6Hw==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>,
	Hanna Reitz <hreitz@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	=?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Richard Henderson <richard.henderson@linaro.org>,
	Eduardo Habkost <eduardo@habkost.net>,
	Jason Wang <jasowang@redhat.com>,
	Marcelo Tosatti <mtosatti@redhat.com>,
	qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org,
	kvm@vger.kernel.org,
	Bernhard Beschow <shentey@gmail.com>,
	Joel Upham <jupham125@gmail.com>
Subject: [PATCH v3 20/28] net: do not delete nics in net_cleanup()
Date: Wed, 25 Oct 2023 15:50:34 +0100
Message-Id: <20231025145042.627381-21-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231025145042.627381-1-dwmw2@infradead.org>
References: <20231025145042.627381-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by desiato.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

In net_cleanup() we only need to delete the netdevs, as those may have
state which outlives Qemu when it exits, and thus may actually need to
be cleaned up on exit.

The nics, on the other hand, are owned by the device which created them.
Most devices don't bother to clean up on exit because they don't have
any state which will outlive Qemu... but XenBus devices do need to clean
up their nodes in XenStore, and do have an exit handler to delete them.

When the XenBus exit handler destroys the xen-net-device, it attempts
to delete its nic after net_cleanup() had already done so. And crashes.

Fix this by only deleting netdevs as we walk the list. As the comment
notes, we can't use QTAILQ_FOREACH_SAFE() as each deletion may remove
*multiple* entries, including the "safely" saved 'next' pointer. But
we can store the *previous* entry, since nics are safe.

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 net/net.c | 28 ++++++++++++++++++++++------
 1 file changed, 22 insertions(+), 6 deletions(-)

diff --git a/net/net.c b/net/net.c
index c0c0cbe99e..bbe33da176 100644
--- a/net/net.c
+++ b/net/net.c
@@ -1499,18 +1499,34 @@ static void net_vm_change_state_handler(void *opaque, bool running,
 
 void net_cleanup(void)
 {
-    NetClientState *nc;
+    NetClientState *nc, **p = &QTAILQ_FIRST(&net_clients);
 
     /*cleanup colo compare module for COLO*/
     colo_compare_cleanup();
 
-    /* We may del multiple entries during qemu_del_net_client(),
-     * so QTAILQ_FOREACH_SAFE() is also not safe here.
+    /*
+     * Walk the net_clients list and remove the netdevs but *not* any
+     * NET_CLIENT_DRIVER_NIC entries. The latter are owned by the device
+     * model which created them, and in some cases (e.g. xen-net-device)
+     * the device itself may do cleanup at exit and will be upset if we
+     * just delete its NIC from underneath it.
+     *
+     * Since qemu_del_net_client() may delete multiple entries, using
+     * QTAILQ_FOREACH_SAFE() is not safe here. The only safe pointer
+     * to keep as a bookmark is a NET_CLIENT_DRIVER_NIC entry, so keep
+     * 'p' pointing to either the head of the list, or the 'next' field
+     * of the latest NET_CLIENT_DRIVER_NIC, and operate on *p as we walk
+     * the list.
+     *
+     * The 'nc' variable isn't part of the list traversal; it's purely
+     * for convenience as too much '(*p)->' has a tendency to make the
+     * readers' eyes bleed.
      */
-    while (!QTAILQ_EMPTY(&net_clients)) {
-        nc = QTAILQ_FIRST(&net_clients);
+    while (*p) {
+        nc = *p;
         if (nc->info->type == NET_CLIENT_DRIVER_NIC) {
-            qemu_del_nic(qemu_get_nic(nc));
+            /* Skip NET_CLIENT_DRIVER_NIC entries */
+            p = &QTAILQ_NEXT(nc, next);
         } else {
             qemu_del_net_client(nc);
         }
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Wed Oct 25 14:56:33 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 14:56:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623029.970454 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvfJ6-0004FF-O9; Wed, 25 Oct 2023 14:56:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623029.970454; Wed, 25 Oct 2023 14:56: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 1qvfJ6-0004F8-LU; Wed, 25 Oct 2023 14:56:28 +0000
Received: by outflank-mailman (input) for mailman id 623029;
 Wed, 25 Oct 2023 14:56: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=w7q9=GH=desiato.srs.infradead.org=BATV+fe87d11d956b9f6f1554+7367+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qvfE8-0000WU-Da
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 14:51:20 +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 f3d0b1d2-7345-11ee-9b0e-b553b5be7939;
 Wed, 25 Oct 2023 16:51:17 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by desiato.infradead.org with esmtpsa (Exim 4.96 #2 (Red Hat Linux))
 id 1qvfDa-00GPM6-1D; Wed, 25 Oct 2023 14:50:52 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1qvfDZ-002dFU-1H; Wed, 25 Oct 2023 15:50:45 +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
X-Inumbo-ID: f3d0b1d2-7345-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=desiato.20200630; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=SKjWRXIgiNg5ff3bqQvSLiVcvlPitO7cHPHfc8XhUXU=; b=i2fwrV8zZ2vjfC4alhYHqho5Kg
	69ItbcjuoufZl6Gv9FMYnIEB1jR+EI2qtRRyqdOFgFYEK1LzG6KxP647hv5/G6my2/D3e1Nf518Bs
	bpsvnspf+G1TgFmvc69VdUs+xMWSbH3w/d4GIgFwg5c42Bt8j3HQ0PB1C/Uw/bTNjij8N3BLhn+ME
	sAQG8vSqxTsmOj0rSVeluMyopsAtLcdgMvZEUnRoZLqQP3/BB165JjV78qWqWj2nFaH3b3IQwlvyc
	qdKCIT24XkYpjsTqPbsyzvjsef9hJe/F4fTkTDMQPAPKlnUOqPmS4ZrhiS0hKFMIO3E4buVrrQeEB
	WiLXn9OQ==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>,
	Hanna Reitz <hreitz@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	=?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Richard Henderson <richard.henderson@linaro.org>,
	Eduardo Habkost <eduardo@habkost.net>,
	Jason Wang <jasowang@redhat.com>,
	Marcelo Tosatti <mtosatti@redhat.com>,
	qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org,
	kvm@vger.kernel.org,
	Bernhard Beschow <shentey@gmail.com>,
	Joel Upham <jupham125@gmail.com>
Subject: [PATCH v3 22/28] net: add qemu_{configure,create}_nic_device(), qemu_find_nic_info()
Date: Wed, 25 Oct 2023 15:50:36 +0100
Message-Id: <20231025145042.627381-23-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231025145042.627381-1-dwmw2@infradead.org>
References: <20231025145042.627381-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by desiato.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

Most code which directly accesses nd_table[] and nb_nics uses them for
one of two things. Either "I have created a NIC device and I'd like a
configuration for it", or "I will create a NIC device *if* there is a
configuration for it".  With some variants on the theme around whether
they actually *check* if the model specified in the configuration is
the right one.

Provide functions which perform both of those, allowing platforms to
be a little more consistent and as a step towards making nd_table[]
and nb_nics private to the net code.

Also export the qemu_find_nic_info() helper, as some platforms have
special cases they need to handle.

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 include/net/net.h |  7 ++++++-
 net/net.c         | 51 +++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 57 insertions(+), 1 deletion(-)

diff --git a/include/net/net.h b/include/net/net.h
index 2fb1c9181c..56be694c75 100644
--- a/include/net/net.h
+++ b/include/net/net.h
@@ -205,7 +205,12 @@ int qemu_show_nic_models(const char *arg, const char *const *models);
 void qemu_check_nic_model(NICInfo *nd, const char *model);
 int qemu_find_nic_model(NICInfo *nd, const char * const *models,
                         const char *default_model);
-
+NICInfo *qemu_find_nic_info(const char *typename, bool match_default,
+                            const char *alias);
+bool qemu_configure_nic_device(DeviceState *dev, bool match_default,
+                               const char *alias);
+DeviceState *qemu_create_nic_device(const char *typename, bool match_default,
+                                    const char *alias);
 void print_net_client(Monitor *mon, NetClientState *nc);
 void net_socket_rs_init(SocketReadState *rs,
                         SocketReadStateFinalize *finalize,
diff --git a/net/net.c b/net/net.c
index bbe33da176..f8b4973a1e 100644
--- a/net/net.c
+++ b/net/net.c
@@ -1072,6 +1072,57 @@ static int net_init_nic(const Netdev *netdev, const char *name,
     return idx;
 }
 
+NICInfo *qemu_find_nic_info(const char *typename, bool match_default,
+                            const char *alias)
+{
+    NICInfo *nd;
+    int i;
+
+    for (i = 0; i < nb_nics; i++) {
+        nd = &nd_table[i];
+
+        if (!nd->used || nd->instantiated) {
+            continue;
+        }
+
+        if ((match_default && !nd->model) || !g_strcmp0(nd->model, typename)
+            || (alias && !g_strcmp0(nd->model, alias))) {
+            return nd;
+        }
+    }
+    return NULL;
+}
+
+
+/* "I have created a device. Please configure it if you can" */
+bool qemu_configure_nic_device(DeviceState *dev, bool match_default,
+                               const char *alias)
+{
+    NICInfo *nd = qemu_find_nic_info(object_get_typename(OBJECT(dev)),
+                                     match_default, alias);
+
+    if (nd) {
+        qdev_set_nic_properties(dev, nd);
+        return true;
+    }
+    return false;
+}
+
+/* "Please create a device, if you have a configuration for it" */
+DeviceState *qemu_create_nic_device(const char *typename, bool match_default,
+                                    const char *alias)
+{
+    NICInfo *nd = qemu_find_nic_info(typename, match_default, alias);
+    DeviceState *dev;
+
+    if (!nd) {
+        return NULL;
+    }
+
+    dev = qdev_new(typename);
+    qdev_set_nic_properties(dev, nd);
+    return dev;
+}
 
 static int (* const net_client_init_fun[NET_CLIENT_DRIVER__MAX])(
     const Netdev *netdev,
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Wed Oct 25 14:56:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 14:56:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623035.970463 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvfJT-0004vz-Vj; Wed, 25 Oct 2023 14:56:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623035.970463; Wed, 25 Oct 2023 14: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 1qvfJT-0004vq-TD; Wed, 25 Oct 2023 14:56:51 +0000
Received: by outflank-mailman (input) for mailman id 623035;
 Wed, 25 Oct 2023 14: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=w7q9=GH=desiato.srs.infradead.org=BATV+fe87d11d956b9f6f1554+7367+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qvfEF-0000WU-EF
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 14:51:27 +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 f5afbd6d-7345-11ee-9b0e-b553b5be7939;
 Wed, 25 Oct 2023 16:51:21 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by desiato.infradead.org with esmtpsa (Exim 4.96 #2 (Red Hat Linux))
 id 1qvfDZ-00GPLy-00; Wed, 25 Oct 2023 14:50:52 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1qvfDY-002dER-0t; Wed, 25 Oct 2023 15:50:44 +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
X-Inumbo-ID: f5afbd6d-7345-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=desiato.20200630; h=Sender:Content-Transfer-Encoding:
	Content-Type:MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:
	To:From:Reply-To:Content-ID:Content-Description;
	bh=whwrxQfu34eIg/PcGjcBAI/B4Oo/UALoBhuUlK3a190=; b=KDzGOyRparAnnjvPQuEd8zIi5K
	k7eb8lLOjHiB0WgXqvHuzQDwCGSF8SeNp3WXmidEbK2bWXOc8w6x3TD6K+UXDO4sPnW2qMxW/v5SM
	JkSb1Z2JTnWnr0HgbFIP0bx5OGzSEiK94Vb17zrb+YHVm0KZ7bymHP1u6UIhnhK+Bc6wUnU6y7Tcd
	QiEF0/VJRFk98yveKudVwc1RUon2pG3PxUld5/P+sDKlYT/AT53ZbUp+UowXdbZhIXvkNmCB2PEB1
	nhKcb/KtHS5HnBx5aIdzj2GaTnYdKhVRfmjK8CnHDLlElncrHUR+DaNttogg600wZhp3rq1/l+3G0
	urtNKg8g==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>,
	Hanna Reitz <hreitz@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	=?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Richard Henderson <richard.henderson@linaro.org>,
	Eduardo Habkost <eduardo@habkost.net>,
	Jason Wang <jasowang@redhat.com>,
	Marcelo Tosatti <mtosatti@redhat.com>,
	qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org,
	kvm@vger.kernel.org,
	Bernhard Beschow <shentey@gmail.com>,
	Joel Upham <jupham125@gmail.com>
Subject: [PATCH v3 08/28] i386/xen: Ignore VCPU_SSHOTTMR_future flag in set_singleshot_timer()
Date: Wed, 25 Oct 2023 15:50:22 +0100
Message-Id: <20231025145042.627381-9-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231025145042.627381-1-dwmw2@infradead.org>
References: <20231025145042.627381-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by desiato.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

Upstream Xen now ignores this flag¹, since the only guest kernel ever to
use it was buggy.

¹ https://xenbits.xen.org/gitweb/?p=xen.git;a=commitdiff;h=19c6cbd909

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
Reviewed-by: Paul Durrant <paul@xen.org>
---
 target/i386/kvm/xen-emu.c | 20 ++++++++++----------
 1 file changed, 10 insertions(+), 10 deletions(-)

diff --git a/target/i386/kvm/xen-emu.c b/target/i386/kvm/xen-emu.c
index 75b2c557b9..1dc9ab0d91 100644
--- a/target/i386/kvm/xen-emu.c
+++ b/target/i386/kvm/xen-emu.c
@@ -1077,17 +1077,13 @@ static int vcpuop_stop_periodic_timer(CPUState *target)
  * Must always be called with xen_timers_lock held.
  */
 static int do_set_singleshot_timer(CPUState *cs, uint64_t timeout_abs,
-                                   bool future, bool linux_wa)
+                                   bool linux_wa)
 {
     CPUX86State *env = &X86_CPU(cs)->env;
     int64_t now = kvm_get_current_ns();
     int64_t qemu_now = qemu_clock_get_ns(QEMU_CLOCK_VIRTUAL);
     int64_t delta = timeout_abs - now;
 
-    if (future && timeout_abs < now) {
-        return -ETIME;
-    }
-
     if (linux_wa && unlikely((int64_t)timeout_abs < 0 ||
                              (delta > 0 && (uint32_t)(delta >> 50) != 0))) {
         /*
@@ -1129,9 +1125,13 @@ static int vcpuop_set_singleshot_timer(CPUState *cs, uint64_t arg)
     }
 
     QEMU_LOCK_GUARD(&X86_CPU(cs)->env.xen_timers_lock);
-    return do_set_singleshot_timer(cs, sst.timeout_abs_ns,
-                                   !!(sst.flags & VCPU_SSHOTTMR_future),
-                                   false);
+
+    /*
+     * We ignore the VCPU_SSHOTTMR_future flag, just as Xen now does.
+     * The only guest that ever used it, got it wrong.
+     * https://xenbits.xen.org/gitweb/?p=xen.git;a=commitdiff;h=19c6cbd909
+     */
+    return do_set_singleshot_timer(cs, sst.timeout_abs_ns, false);
 }
 
 static int vcpuop_stop_singleshot_timer(CPUState *cs)
@@ -1156,7 +1156,7 @@ static bool kvm_xen_hcall_set_timer_op(struct kvm_xen_exit *exit, X86CPU *cpu,
         err = vcpuop_stop_singleshot_timer(CPU(cpu));
     } else {
         QEMU_LOCK_GUARD(&X86_CPU(cpu)->env.xen_timers_lock);
-        err = do_set_singleshot_timer(CPU(cpu), timeout, false, true);
+        err = do_set_singleshot_timer(CPU(cpu), timeout, true);
     }
     exit->u.hcall.result = err;
     return true;
@@ -1844,7 +1844,7 @@ int kvm_put_xen_state(CPUState *cs)
         QEMU_LOCK_GUARD(&env->xen_timers_lock);
         if (env->xen_singleshot_timer_ns) {
             ret = do_set_singleshot_timer(cs, env->xen_singleshot_timer_ns,
-                                    false, false);
+                                          false);
             if (ret < 0) {
                 return ret;
             }
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Wed Oct 25 14:56:59 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 14:56:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623036.970473 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvfJb-0005Kr-6f; Wed, 25 Oct 2023 14:56:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623036.970473; Wed, 25 Oct 2023 14:56: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 1qvfJb-0005Kk-3a; Wed, 25 Oct 2023 14:56:59 +0000
Received: by outflank-mailman (input) for mailman id 623036;
 Wed, 25 Oct 2023 14:56: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=w7q9=GH=desiato.srs.infradead.org=BATV+fe87d11d956b9f6f1554+7367+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qvfEE-0000WU-EE
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 14:51:26 +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 f5b2912d-7345-11ee-9b0e-b553b5be7939;
 Wed, 25 Oct 2023 16:51:21 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by desiato.infradead.org with esmtpsa (Exim 4.96 #2 (Red Hat Linux))
 id 1qvfDa-00GPM1-1E; Wed, 25 Oct 2023 14:50:49 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1qvfDY-002dEx-2l; Wed, 25 Oct 2023 15:50:44 +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
X-Inumbo-ID: f5b2912d-7345-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=desiato.20200630; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=2Wb+EUrVg9AtuUMx5pX7frHLqezL77YzFvoQWCoX1cE=; b=X5kyQg9nKJws90Yor1VZwSvdxT
	PFKAQkc7Kohzt5hJ093royAty0XQ7GtQR2eyArbjCEgH/lSpS7K3m/kQzdxBrLnLGILBrrwcuQbqN
	wpwJzKmz9Gm48KyniSGRnFBEcFjK05k4jWMCldJC46gE2kCmoq8NWnkW/bEOdm+IGfWfqX9vTIA1N
	vvbECXvGoVTYr5+OaEobyKoBtiR42MYWitTRJdnYT8lNbwJy6yS//+v19ieOueAfH0hhuo95b1Yug
	IMOq5/mX/O2qKy+6qZiR+xU6rYgQrIODR7PNwSP8LDnLbeI9FF1eHGctFN0rhxxrzYsZEgdkVORbu
	/wz/+CXw==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>,
	Hanna Reitz <hreitz@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	=?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Richard Henderson <richard.henderson@linaro.org>,
	Eduardo Habkost <eduardo@habkost.net>,
	Jason Wang <jasowang@redhat.com>,
	Marcelo Tosatti <mtosatti@redhat.com>,
	qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org,
	kvm@vger.kernel.org,
	Bernhard Beschow <shentey@gmail.com>,
	Joel Upham <jupham125@gmail.com>
Subject: [PATCH v3 15/28] hw/xen: do not repeatedly try to create a failing backend device
Date: Wed, 25 Oct 2023 15:50:29 +0100
Message-Id: <20231025145042.627381-16-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231025145042.627381-1-dwmw2@infradead.org>
References: <20231025145042.627381-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by desiato.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

If xen_backend_device_create() fails to instantiate a device, the XenBus
code will just keep trying over and over again each time the bus is
re-enumerated, as long as the backend appears online and in
XenbusStateInitialising.

The only thing which prevents the XenBus code from recreating duplicates
of devices which already exist, is the fact that xen_device_realize()
sets the backend state to XenbusStateInitWait. If the attempt to create
the device doesn't get *that* far, that's when it will keep getting
retried.

My first thought was to handle errors by setting the backend state to
XenbusStateClosed, but that doesn't work for XenConsole which wants to
*ignore* any device of type != "ioemu" completely.

So, make xen_backend_device_create() *keep* the XenBackendInstance for a
failed device, and provide a new xen_backend_exists() function to allow
xen_bus_type_enumerate() to check whether one already exists before
creating a new one.

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
Reviewed-by: Paul Durrant <paul@xen.org>
---
 hw/xen/xen-backend.c         | 27 +++++++++++++++++++++------
 hw/xen/xen-bus.c             |  3 ++-
 include/hw/xen/xen-backend.h |  1 +
 3 files changed, 24 insertions(+), 7 deletions(-)

diff --git a/hw/xen/xen-backend.c b/hw/xen/xen-backend.c
index 5b0fb76eae..b9bf70a9f5 100644
--- a/hw/xen/xen-backend.c
+++ b/hw/xen/xen-backend.c
@@ -101,6 +101,24 @@ static XenBackendInstance *xen_backend_list_find(XenDevice *xendev)
     return NULL;
 }
 
+bool xen_backend_exists(const char *type, const char *name)
+{
+    const XenBackendImpl *impl = xen_backend_table_lookup(type);
+    XenBackendInstance *backend;
+
+    if (!impl) {
+        return false;
+    }
+
+    QLIST_FOREACH(backend, &backend_list, entry) {
+        if (backend->impl == impl && !strcmp(backend->name, name)) {
+            return true;
+        }
+    }
+
+    return false;
+}
+
 static void xen_backend_list_remove(XenBackendInstance *backend)
 {
     QLIST_REMOVE(backend, entry);
@@ -122,11 +140,6 @@ void xen_backend_device_create(XenBus *xenbus, const char *type,
     backend->name = g_strdup(name);
 
     impl->create(backend, opts, errp);
-    if (*errp) {
-        g_free(backend->name);
-        g_free(backend);
-        return;
-    }
 
     backend->impl = impl;
     xen_backend_list_add(backend);
@@ -165,7 +178,9 @@ bool xen_backend_try_device_destroy(XenDevice *xendev, Error **errp)
     }
 
     impl = backend->impl;
-    impl->destroy(backend, errp);
+    if (backend->xendev) {
+        impl->destroy(backend, errp);
+    }
 
     xen_backend_list_remove(backend);
     g_free(backend->name);
diff --git a/hw/xen/xen-bus.c b/hw/xen/xen-bus.c
index 12ff782005..3ffd1a5333 100644
--- a/hw/xen/xen-bus.c
+++ b/hw/xen/xen-bus.c
@@ -209,7 +209,8 @@ static void xen_bus_type_enumerate(XenBus *xenbus, const char *type)
                           NULL, "%u", &online) != 1)
             online = 0;
 
-        if (online && state == XenbusStateInitialising) {
+        if (online && state == XenbusStateInitialising &&
+            !xen_backend_exists(type, backend[i])) {
             Error *local_err = NULL;
 
             xen_bus_backend_create(xenbus, type, backend[i], backend_path,
diff --git a/include/hw/xen/xen-backend.h b/include/hw/xen/xen-backend.h
index aac2fd454d..0f01631ae7 100644
--- a/include/hw/xen/xen-backend.h
+++ b/include/hw/xen/xen-backend.h
@@ -33,6 +33,7 @@ XenDevice *xen_backend_get_device(XenBackendInstance *backend);
 void xen_backend_register(const XenBackendInfo *info);
 const char **xen_backend_get_types(unsigned int *nr);
 
+bool xen_backend_exists(const char *type, const char *name);
 void xen_backend_device_create(XenBus *xenbus, const char *type,
                                const char *name, QDict *opts, Error **errp);
 bool xen_backend_try_device_destroy(XenDevice *xendev, Error **errp);
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Wed Oct 25 14:57:03 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 14:57:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623037.970484 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvfJf-0005g3-Es; Wed, 25 Oct 2023 14:57:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623037.970484; Wed, 25 Oct 2023 14:57: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 1qvfJf-0005fw-C8; Wed, 25 Oct 2023 14:57:03 +0000
Received: by outflank-mailman (input) for mailman id 623037;
 Wed, 25 Oct 2023 14:57: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=w7q9=GH=desiato.srs.infradead.org=BATV+fe87d11d956b9f6f1554+7367+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qvfEN-0000WU-Ex
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 14:51:35 +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 fb643efa-7345-11ee-9b0e-b553b5be7939;
 Wed, 25 Oct 2023 16:51:31 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by desiato.infradead.org with esmtpsa (Exim 4.96 #2 (Red Hat Linux))
 id 1qvfDa-00GPM4-1E; Wed, 25 Oct 2023 14:51:03 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1qvfDZ-002dFH-0X; Wed, 25 Oct 2023 15:50:45 +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
X-Inumbo-ID: fb643efa-7345-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=desiato.20200630; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=xvXxjykqZF+Agx7uTMlZcC/34TNa2PWC4UD2zd+uAJ8=; b=dKyMuFtfjDgAQMAjMUWXxC9cZy
	2Vf9f54OurIaXywZd2FdL5e/LAfxbA3cU7NIWh2VNQc/v84Kkp1otj+jTJJx6xQetIf+yHemTMZlp
	f/4zDWwPwMd9/71G0Ni1812r5DhrM/2MvjxrEd8uxsiC4k0rWg9fH27o6A5zQ2TVM0rpLAfDWp4Im
	1ZzpmIvysESQNfoFQ2V8ZtE3p7JXg3M1onfp1b7YdGc4AodgrUUpcupetvaSzT0iVHLjoIAl9+DGu
	hk8aU4zN6bkdSzII0iFWakeu0sQTzkWQwOEB+N0SHJWh5iHg9yxW1UUK7xrTHZmhojzjOgkZ7Xp0R
	lAp+3s2A==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>,
	Hanna Reitz <hreitz@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	=?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Richard Henderson <richard.henderson@linaro.org>,
	Eduardo Habkost <eduardo@habkost.net>,
	Jason Wang <jasowang@redhat.com>,
	Marcelo Tosatti <mtosatti@redhat.com>,
	qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org,
	kvm@vger.kernel.org,
	Bernhard Beschow <shentey@gmail.com>,
	Joel Upham <jupham125@gmail.com>
Subject: [PATCH v3 19/28] hw/xen: update Xen PV NIC to XenDevice model
Date: Wed, 25 Oct 2023 15:50:33 +0100
Message-Id: <20231025145042.627381-20-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231025145042.627381-1-dwmw2@infradead.org>
References: <20231025145042.627381-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by desiato.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

This allows us to use Xen PV networking with emulated Xen guests, and to
add them on the command line or hotplug.

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 hw/net/meson.build        |   2 +-
 hw/net/trace-events       |  11 +
 hw/net/xen_nic.c          | 484 +++++++++++++++++++++++++++++---------
 hw/xenpv/xen_machine_pv.c |   1 -
 4 files changed, 381 insertions(+), 117 deletions(-)

diff --git a/hw/net/meson.build b/hw/net/meson.build
index 2632634df3..f64651c467 100644
--- a/hw/net/meson.build
+++ b/hw/net/meson.build
@@ -1,5 +1,5 @@
 system_ss.add(when: 'CONFIG_DP8393X', if_true: files('dp8393x.c'))
-system_ss.add(when: 'CONFIG_XEN', if_true: files('xen_nic.c'))
+system_ss.add(when: 'CONFIG_XEN_BUS', if_true: files('xen_nic.c'))
 system_ss.add(when: 'CONFIG_NE2000_COMMON', if_true: files('ne2000.c'))
 
 # PCI network cards
diff --git a/hw/net/trace-events b/hw/net/trace-events
index 3abfd65e5b..3097742cc0 100644
--- a/hw/net/trace-events
+++ b/hw/net/trace-events
@@ -482,3 +482,14 @@ dp8393x_receive_oversize(int size) "oversize packet, pkt_size is %d"
 dp8393x_receive_not_netcard(void) "packet not for netcard"
 dp8393x_receive_packet(int crba) "Receive packet at 0x%"PRIx32
 dp8393x_receive_write_status(int crba) "Write status at 0x%"PRIx32
+
+# xen_nic.c
+xen_netdev_realize(int dev, const char *info, const char *peer) "vif%u info '%s' peer '%s'"
+xen_netdev_unrealize(int dev) "vif%u"
+xen_netdev_create(int dev) "vif%u"
+xen_netdev_destroy(int dev) "vif%u"
+xen_netdev_disconnect(int dev) "vif%u"
+xen_netdev_connect(int dev, unsigned int tx, unsigned int rx, int port) "vif%u tx %u rx %u port %u"
+xen_netdev_frontend_changed(const char *dev, int state) "vif%s state %d"
+xen_netdev_tx(int dev, int ref, int off, int len, unsigned int flags, const char *c, const char *d, const char *m, const char *e) "vif%u ref %u off %u len %u flags 0x%x%s%s%s%s"
+xen_netdev_rx(int dev, int idx, int status, int flags) "vif%u idx %d status %d flags 0x%x"
diff --git a/hw/net/xen_nic.c b/hw/net/xen_nic.c
index 9bbf6599fc..af4ba3f1e6 100644
--- a/hw/net/xen_nic.c
+++ b/hw/net/xen_nic.c
@@ -20,6 +20,13 @@
  */
 
 #include "qemu/osdep.h"
+#include "qemu/main-loop.h"
+#include "qemu/cutils.h"
+#include "qemu/log.h"
+#include "qemu/qemu-print.h"
+#include "qapi/qmp/qdict.h"
+#include "qapi/error.h"
+
 #include <sys/socket.h>
 #include <sys/ioctl.h>
 #include <sys/wait.h>
@@ -27,18 +34,26 @@
 #include "net/net.h"
 #include "net/checksum.h"
 #include "net/util.h"
-#include "hw/xen/xen-legacy-backend.h"
+
+#include "hw/xen/xen-backend.h"
+#include "hw/xen/xen-bus-helper.h"
+#include "hw/qdev-properties.h"
+#include "hw/qdev-properties-system.h"
 
 #include "hw/xen/interface/io/netif.h"
+#include "hw/xen/interface/io/xs_wire.h"
+
+#include "trace.h"
 
 /* ------------------------------------------------------------- */
 
 struct XenNetDev {
-    struct XenLegacyDevice      xendev;  /* must be first */
-    char                  *mac;
+    struct XenDevice      xendev;  /* must be first */
+    XenEventChannel       *event_channel;
+    int                   dev;
     int                   tx_work;
-    int                   tx_ring_ref;
-    int                   rx_ring_ref;
+    unsigned int          tx_ring_ref;
+    unsigned int          rx_ring_ref;
     struct netif_tx_sring *txs;
     struct netif_rx_sring *rxs;
     netif_tx_back_ring_t  tx_ring;
@@ -47,6 +62,11 @@ struct XenNetDev {
     NICState              *nic;
 };
 
+typedef struct XenNetDev XenNetDev;
+
+#define TYPE_XEN_NET_DEVICE "xen-net-device"
+OBJECT_DECLARE_SIMPLE_TYPE(XenNetDev, XEN_NET_DEVICE)
+
 /* ------------------------------------------------------------- */
 
 static void net_tx_response(struct XenNetDev *netdev, netif_tx_request_t *txp, int8_t st)
@@ -68,7 +88,8 @@ static void net_tx_response(struct XenNetDev *netdev, netif_tx_request_t *txp, i
     netdev->tx_ring.rsp_prod_pvt = ++i;
     RING_PUSH_RESPONSES_AND_CHECK_NOTIFY(&netdev->tx_ring, notify);
     if (notify) {
-        xen_pv_send_notify(&netdev->xendev);
+        xen_device_notify_event_channel(XEN_DEVICE(netdev),
+                                        netdev->event_channel, NULL);
     }
 
     if (i == netdev->tx_ring.req_cons) {
@@ -104,13 +125,16 @@ static void net_tx_error(struct XenNetDev *netdev, netif_tx_request_t *txp, RING
 #endif
 }
 
-static void net_tx_packets(struct XenNetDev *netdev)
+static bool net_tx_packets(struct XenNetDev *netdev)
 {
+    bool done_something = false;
     netif_tx_request_t txreq;
     RING_IDX rc, rp;
     void *page;
     void *tmpbuf = NULL;
 
+    assert(qemu_mutex_iothread_locked());
+
     for (;;) {
         rc = netdev->tx_ring.req_cons;
         rp = netdev->tx_ring.sring->req_prod;
@@ -122,49 +146,52 @@ static void net_tx_packets(struct XenNetDev *netdev)
             }
             memcpy(&txreq, RING_GET_REQUEST(&netdev->tx_ring, rc), sizeof(txreq));
             netdev->tx_ring.req_cons = ++rc;
+            done_something = true;
 
 #if 1
             /* should not happen in theory, we don't announce the *
              * feature-{sg,gso,whatelse} flags in xenstore (yet?) */
             if (txreq.flags & NETTXF_extra_info) {
-                xen_pv_printf(&netdev->xendev, 0, "FIXME: extra info flag\n");
+                qemu_log_mask(LOG_UNIMP, "vif%u: FIXME: extra info flag\n",
+                              netdev->dev);
                 net_tx_error(netdev, &txreq, rc);
                 continue;
             }
             if (txreq.flags & NETTXF_more_data) {
-                xen_pv_printf(&netdev->xendev, 0, "FIXME: more data flag\n");
+                qemu_log_mask(LOG_UNIMP, "vif%u: FIXME: more data flag\n",
+                              netdev->dev);
                 net_tx_error(netdev, &txreq, rc);
                 continue;
             }
 #endif
 
             if (txreq.size < 14) {
-                xen_pv_printf(&netdev->xendev, 0, "bad packet size: %d\n",
-                              txreq.size);
+                qemu_log_mask(LOG_GUEST_ERROR, "vif%u: bad packet size: %d\n",
+                              netdev->dev, txreq.size);
                 net_tx_error(netdev, &txreq, rc);
                 continue;
             }
 
             if ((txreq.offset + txreq.size) > XEN_PAGE_SIZE) {
-                xen_pv_printf(&netdev->xendev, 0, "error: page crossing\n");
+                qemu_log_mask(LOG_GUEST_ERROR, "vif%u: error: page crossing\n",
+                              netdev->dev);
                 net_tx_error(netdev, &txreq, rc);
                 continue;
             }
 
-            xen_pv_printf(&netdev->xendev, 3,
-                          "tx packet ref %d, off %d, len %d, flags 0x%x%s%s%s%s\n",
-                          txreq.gref, txreq.offset, txreq.size, txreq.flags,
-                          (txreq.flags & NETTXF_csum_blank)     ? " csum_blank"     : "",
-                          (txreq.flags & NETTXF_data_validated) ? " data_validated" : "",
-                          (txreq.flags & NETTXF_more_data)      ? " more_data"      : "",
-                          (txreq.flags & NETTXF_extra_info)     ? " extra_info"     : "");
+            trace_xen_netdev_tx(netdev->dev, txreq.gref, txreq.offset,
+                                txreq.size, txreq.flags,
+                                (txreq.flags & NETTXF_csum_blank)     ? " csum_blank"     : "",
+                                (txreq.flags & NETTXF_data_validated) ? " data_validated" : "",
+                                (txreq.flags & NETTXF_more_data)      ? " more_data"      : "",
+                                (txreq.flags & NETTXF_extra_info)     ? " extra_info"     : "");
 
-            page = xen_be_map_grant_ref(&netdev->xendev, txreq.gref,
-                                        PROT_READ);
+            page = xen_device_map_grant_refs(&netdev->xendev, &txreq.gref, 1,
+                                             PROT_READ, NULL);
             if (page == NULL) {
-                xen_pv_printf(&netdev->xendev, 0,
-                              "error: tx gref dereference failed (%d)\n",
-                             txreq.gref);
+                qemu_log_mask(LOG_GUEST_ERROR,
+                              "vif%u: tx gref dereference failed (%d)\n",
+                              netdev->dev, txreq.gref);
                 net_tx_error(netdev, &txreq, rc);
                 continue;
             }
@@ -181,7 +208,8 @@ static void net_tx_packets(struct XenNetDev *netdev)
                 qemu_send_packet(qemu_get_queue(netdev->nic),
                                  page + txreq.offset, txreq.size);
             }
-            xen_be_unmap_grant_ref(&netdev->xendev, page, txreq.gref);
+            xen_device_unmap_grant_refs(&netdev->xendev, page, &txreq.gref, 1,
+                                        NULL);
             net_tx_response(netdev, &txreq, NETIF_RSP_OKAY);
         }
         if (!netdev->tx_work) {
@@ -190,6 +218,7 @@ static void net_tx_packets(struct XenNetDev *netdev)
         netdev->tx_work = 0;
     }
     g_free(tmpbuf);
+    return done_something;
 }
 
 /* ------------------------------------------------------------- */
@@ -212,14 +241,13 @@ static void net_rx_response(struct XenNetDev *netdev,
         resp->status = (int16_t)st;
     }
 
-    xen_pv_printf(&netdev->xendev, 3,
-                  "rx response: idx %d, status %d, flags 0x%x\n",
-                  i, resp->status, resp->flags);
+    trace_xen_netdev_rx(netdev->dev, i, resp->status, resp->flags);
 
     netdev->rx_ring.rsp_prod_pvt = ++i;
     RING_PUSH_RESPONSES_AND_CHECK_NOTIFY(&netdev->rx_ring, notify);
     if (notify) {
-        xen_pv_send_notify(&netdev->xendev);
+        xen_device_notify_event_channel(XEN_DEVICE(netdev),
+                                        netdev->event_channel, NULL);
     }
 }
 
@@ -232,7 +260,9 @@ static ssize_t net_rx_packet(NetClientState *nc, const uint8_t *buf, size_t size
     RING_IDX rc, rp;
     void *page;
 
-    if (netdev->xendev.be_state != XenbusStateConnected) {
+    assert(qemu_mutex_iothread_locked());
+
+    if (xen_device_backend_get_state(&netdev->xendev) != XenbusStateConnected) {
         return -1;
     }
 
@@ -244,24 +274,26 @@ static ssize_t net_rx_packet(NetClientState *nc, const uint8_t *buf, size_t size
         return 0;
     }
     if (size > XEN_PAGE_SIZE - NET_IP_ALIGN) {
-        xen_pv_printf(&netdev->xendev, 0, "packet too big (%lu > %ld)",
-                      (unsigned long)size, XEN_PAGE_SIZE - NET_IP_ALIGN);
+        qemu_log_mask(LOG_GUEST_ERROR, "vif%u: packet too big (%lu > %ld)",
+                      netdev->dev, (unsigned long)size,
+                      XEN_PAGE_SIZE - NET_IP_ALIGN);
         return -1;
     }
 
     memcpy(&rxreq, RING_GET_REQUEST(&netdev->rx_ring, rc), sizeof(rxreq));
     netdev->rx_ring.req_cons = ++rc;
 
-    page = xen_be_map_grant_ref(&netdev->xendev, rxreq.gref, PROT_WRITE);
+    page = xen_device_map_grant_refs(&netdev->xendev, &rxreq.gref, 1,
+                                     PROT_WRITE, NULL);
     if (page == NULL) {
-        xen_pv_printf(&netdev->xendev, 0,
-                      "error: rx gref dereference failed (%d)\n",
-                      rxreq.gref);
+        qemu_log_mask(LOG_GUEST_ERROR,
+                      "vif%u: rx gref dereference failed (%d)\n",
+                      netdev->dev, rxreq.gref);
         net_rx_response(netdev, &rxreq, NETIF_RSP_ERROR, 0, 0, 0);
         return -1;
     }
     memcpy(page + NET_IP_ALIGN, buf, size);
-    xen_be_unmap_grant_ref(&netdev->xendev, page, rxreq.gref);
+    xen_device_unmap_grant_refs(&netdev->xendev, page, &rxreq.gref, 1, NULL);
     net_rx_response(netdev, &rxreq, NETIF_RSP_OKAY, NET_IP_ALIGN, size, 0);
 
     return size;
@@ -275,139 +307,361 @@ static NetClientInfo net_xen_info = {
     .receive = net_rx_packet,
 };
 
-static int net_init(struct XenLegacyDevice *xendev)
+static void xen_netdev_realize(XenDevice *xendev, Error **errp)
 {
-    struct XenNetDev *netdev = container_of(xendev, struct XenNetDev, xendev);
+    ERRP_GUARD();
+    XenNetDev *netdev = XEN_NET_DEVICE(xendev);
+    NetClientState *nc;
 
-    /* read xenstore entries */
-    if (netdev->mac == NULL) {
-        netdev->mac = xenstore_read_be_str(&netdev->xendev, "mac");
-    }
-
-    /* do we have all we need? */
-    if (netdev->mac == NULL) {
-        return -1;
-    }
+    qemu_macaddr_default_if_unset(&netdev->conf.macaddr);
 
-    if (net_parse_macaddr(netdev->conf.macaddr.a, netdev->mac) < 0) {
-        return -1;
-    }
+    xen_device_frontend_printf(xendev, "mac", "%02x:%02x:%02x:%02x:%02x:%02x",
+                               netdev->conf.macaddr.a[0],
+                               netdev->conf.macaddr.a[1],
+                               netdev->conf.macaddr.a[2],
+                               netdev->conf.macaddr.a[3],
+                               netdev->conf.macaddr.a[4],
+                               netdev->conf.macaddr.a[5]);
 
     netdev->nic = qemu_new_nic(&net_xen_info, &netdev->conf,
-                               "xen", NULL, netdev);
+                               object_get_typename(OBJECT(xendev)),
+                               DEVICE(xendev)->id, netdev);
 
-    qemu_set_info_str(qemu_get_queue(netdev->nic),
-                      "nic: xenbus vif macaddr=%s", netdev->mac);
+    nc = qemu_get_queue(netdev->nic);
+    qemu_format_nic_info_str(nc, netdev->conf.macaddr.a);
 
     /* fill info */
-    xenstore_write_be_int(&netdev->xendev, "feature-rx-copy", 1);
-    xenstore_write_be_int(&netdev->xendev, "feature-rx-flip", 0);
+    xen_device_backend_printf(xendev, "feature-rx-copy", "%u", 1);
+    xen_device_backend_printf(xendev, "feature-rx-flip", "%u", 0);
 
-    return 0;
+    trace_xen_netdev_realize(netdev->dev, nc->info_str, nc->peer ?
+                             nc->peer->name : "(none)");
 }
 
-static int net_connect(struct XenLegacyDevice *xendev)
+static bool net_event(void *_xendev)
 {
-    struct XenNetDev *netdev = container_of(xendev, struct XenNetDev, xendev);
-    int rx_copy;
+    XenNetDev *netdev = XEN_NET_DEVICE(_xendev);
+    bool done_something;
 
-    if (xenstore_read_fe_int(&netdev->xendev, "tx-ring-ref",
-                             &netdev->tx_ring_ref) == -1) {
-        return -1;
+    done_something = net_tx_packets(netdev);
+    qemu_flush_queued_packets(qemu_get_queue(netdev->nic));
+    return done_something;
+}
+
+static bool xen_netdev_connect(XenDevice *xendev, Error **errp)
+{
+    XenNetDev *netdev = XEN_NET_DEVICE(xendev);
+    unsigned int port, rx_copy;
+
+    assert(qemu_mutex_iothread_locked());
+
+    if (xen_device_frontend_scanf(xendev, "tx-ring-ref", "%u",
+                                  &netdev->tx_ring_ref) != 1) {
+        error_setg(errp, "failed to read tx-ring-ref");
+        return false;
     }
-    if (xenstore_read_fe_int(&netdev->xendev, "rx-ring-ref",
-                             &netdev->rx_ring_ref) == -1) {
-        return 1;
+
+    if (xen_device_frontend_scanf(xendev, "rx-ring-ref", "%u",
+                                  &netdev->rx_ring_ref) != 1) {
+        error_setg(errp, "failed to read rx-ring-ref");
+        return false;
     }
-    if (xenstore_read_fe_int(&netdev->xendev, "event-channel",
-                             &netdev->xendev.remote_port) == -1) {
-        return -1;
+
+    if (xen_device_frontend_scanf(xendev, "event-channel", "%u",
+                                  &port) != 1) {
+        error_setg(errp, "failed to read event-channel");
+        return false;
     }
 
-    if (xenstore_read_fe_int(&netdev->xendev, "request-rx-copy", &rx_copy) == -1) {
+    if (xen_device_frontend_scanf(xendev, "request-rx-copy", "%u",
+                                  &rx_copy) != 1) {
         rx_copy = 0;
     }
     if (rx_copy == 0) {
-        xen_pv_printf(&netdev->xendev, 0,
-                      "frontend doesn't support rx-copy.\n");
-        return -1;
+        error_setg(errp, "frontend doesn't support rx-copy");
+        return false;
     }
 
-    netdev->txs = xen_be_map_grant_ref(&netdev->xendev,
-                                       netdev->tx_ring_ref,
-                                       PROT_READ | PROT_WRITE);
+    netdev->txs = xen_device_map_grant_refs(xendev,
+                                            &netdev->tx_ring_ref, 1,
+                                            PROT_READ | PROT_WRITE,
+                                            errp);
     if (!netdev->txs) {
-        return -1;
+        error_prepend(errp, "failed to map tx grant ref: ");
+        return false;
     }
-    netdev->rxs = xen_be_map_grant_ref(&netdev->xendev,
-                                       netdev->rx_ring_ref,
-                                       PROT_READ | PROT_WRITE);
+
+    netdev->rxs = xen_device_map_grant_refs(xendev,
+                                            &netdev->rx_ring_ref, 1,
+                                            PROT_READ | PROT_WRITE,
+                                            errp);
     if (!netdev->rxs) {
-        xen_be_unmap_grant_ref(&netdev->xendev, netdev->txs,
-                               netdev->tx_ring_ref);
-        netdev->txs = NULL;
-        return -1;
+        error_prepend(errp, "failed to map rx grant ref: ");
+        return false;
     }
+
     BACK_RING_INIT(&netdev->tx_ring, netdev->txs, XEN_PAGE_SIZE);
     BACK_RING_INIT(&netdev->rx_ring, netdev->rxs, XEN_PAGE_SIZE);
 
-    xen_be_bind_evtchn(&netdev->xendev);
+    netdev->event_channel = xen_device_bind_event_channel(xendev, port,
+                                                          net_event,
+                                                          netdev,
+                                                          errp);
+    if (!netdev->event_channel) {
+        return false;
+    }
 
-    xen_pv_printf(&netdev->xendev, 1, "ok: tx-ring-ref %d, rx-ring-ref %d, "
-                  "remote port %d, local port %d\n",
-                  netdev->tx_ring_ref, netdev->rx_ring_ref,
-                  netdev->xendev.remote_port, netdev->xendev.local_port);
+    trace_xen_netdev_connect(netdev->dev, netdev->tx_ring_ref,
+                             netdev->rx_ring_ref, port);
 
     net_tx_packets(netdev);
-    return 0;
+    return true;
 }
 
-static void net_disconnect(struct XenLegacyDevice *xendev)
+static void xen_netdev_disconnect(XenDevice *xendev, Error **errp)
 {
-    struct XenNetDev *netdev = container_of(xendev, struct XenNetDev, xendev);
+    XenNetDev *netdev = XEN_NET_DEVICE(xendev);
+
+    trace_xen_netdev_disconnect(netdev->dev);
+
+    assert(qemu_mutex_iothread_locked());
 
-    xen_pv_unbind_evtchn(&netdev->xendev);
+    netdev->tx_ring.sring = NULL;
+    netdev->rx_ring.sring = NULL;
 
+    if (netdev->event_channel) {
+        xen_device_unbind_event_channel(xendev, netdev->event_channel,
+                                        errp);
+        netdev->event_channel = NULL;
+    }
     if (netdev->txs) {
-        xen_be_unmap_grant_ref(&netdev->xendev, netdev->txs,
-                               netdev->tx_ring_ref);
+        xen_device_unmap_grant_refs(xendev, netdev->txs,
+                                    &netdev->tx_ring_ref, 1, errp);
         netdev->txs = NULL;
     }
     if (netdev->rxs) {
-        xen_be_unmap_grant_ref(&netdev->xendev, netdev->rxs,
-                               netdev->rx_ring_ref);
+        xen_device_unmap_grant_refs(xendev, netdev->rxs,
+                                    &netdev->rx_ring_ref, 1, errp);
         netdev->rxs = NULL;
     }
 }
 
-static void net_event(struct XenLegacyDevice *xendev)
+/* -------------------------------------------------------------------- */
+
+
+static void xen_netdev_frontend_changed(XenDevice *xendev,
+                                       enum xenbus_state frontend_state,
+                                       Error **errp)
 {
-    struct XenNetDev *netdev = container_of(xendev, struct XenNetDev, xendev);
-    net_tx_packets(netdev);
-    qemu_flush_queued_packets(qemu_get_queue(netdev->nic));
+    ERRP_GUARD();
+    enum xenbus_state backend_state = xen_device_backend_get_state(xendev);
+
+    trace_xen_netdev_frontend_changed(xendev->name, frontend_state);
+
+    switch (frontend_state) {
+    case XenbusStateConnected:
+        if (backend_state == XenbusStateConnected) {
+            break;
+        }
+
+        xen_netdev_disconnect(xendev, errp);
+        if (*errp) {
+            break;
+        }
+
+        if (!xen_netdev_connect(xendev, errp)) {
+            xen_netdev_disconnect(xendev, NULL);
+            xen_device_backend_set_state(xendev, XenbusStateClosing);
+            break;
+        }
+
+        xen_device_backend_set_state(xendev, XenbusStateConnected);
+        break;
+
+    case XenbusStateClosing:
+        xen_device_backend_set_state(xendev, XenbusStateClosing);
+        break;
+
+    case XenbusStateClosed:
+    case XenbusStateUnknown:
+        xen_netdev_disconnect(xendev, errp);
+        if (*errp) {
+            break;
+        }
+
+        xen_device_backend_set_state(xendev, XenbusStateClosed);
+        break;
+
+    case XenbusStateInitialised:
+        /*
+         * Linux netback does nothing on the frontend going (back) to
+         * XenbusStateInitialised, so do the same here.
+         */
+    default:
+        break;
+    }
 }
 
-static int net_free(struct XenLegacyDevice *xendev)
+static char *xen_netdev_get_name(XenDevice *xendev, Error **errp)
 {
-    struct XenNetDev *netdev = container_of(xendev, struct XenNetDev, xendev);
+    XenNetDev *netdev = XEN_NET_DEVICE(xendev);
+
+    if (netdev->dev == -1) {
+        XenBus *xenbus = XEN_BUS(qdev_get_parent_bus(DEVICE(xendev)));
+        char fe_path[XENSTORE_ABS_PATH_MAX + 1];
+        int idx = (xen_mode == XEN_EMULATE) ? 0 : 1;
+        char *value;
+
+        /* Theoretically we could go up to INT_MAX here but that's overkill */
+        while (idx < 100) {
+            snprintf(fe_path, sizeof(fe_path),
+                     "/local/domain/%u/device/vif/%u",
+                     xendev->frontend_id, idx);
+            value = qemu_xen_xs_read(xenbus->xsh, XBT_NULL, fe_path, NULL);
+            if (!value) {
+                if (errno == ENOENT) {
+                    netdev->dev = idx;
+                    goto found;
+                }
+                error_setg(errp, "cannot read %s: %s", fe_path,
+                           strerror(errno));
+                return NULL;
+            }
+            free(value);
+            idx++;
+        }
+        error_setg(errp, "cannot find device index for netdev device");
+        return NULL;
+    }
+ found:
+    return g_strdup_printf("%u", netdev->dev);
+}
+
+static void xen_netdev_unrealize(XenDevice *xendev)
+{
+    XenNetDev *netdev = XEN_NET_DEVICE(xendev);
+
+    trace_xen_netdev_unrealize(netdev->dev);
+
+    /* Disconnect from the frontend in case this has not already happened */
+    xen_netdev_disconnect(xendev, NULL);
 
     if (netdev->nic) {
         qemu_del_nic(netdev->nic);
-        netdev->nic = NULL;
     }
-    g_free(netdev->mac);
-    netdev->mac = NULL;
-    return 0;
 }
 
 /* ------------------------------------------------------------- */
 
-struct XenDevOps xen_netdev_ops = {
-    .size       = sizeof(struct XenNetDev),
-    .flags      = DEVOPS_FLAG_NEED_GNTDEV,
-    .init       = net_init,
-    .initialise    = net_connect,
-    .event      = net_event,
-    .disconnect = net_disconnect,
-    .free       = net_free,
+static Property xen_netdev_properties[] = {
+    DEFINE_NIC_PROPERTIES(XenNetDev, conf),
+    DEFINE_PROP_INT32("idx", XenNetDev, dev, -1),
+    DEFINE_PROP_END_OF_LIST(),
+};
+
+static void xen_netdev_class_init(ObjectClass *class, void *data)
+{
+    DeviceClass *dev_class = DEVICE_CLASS(class);
+    XenDeviceClass *xendev_class = XEN_DEVICE_CLASS(class);
+
+    xendev_class->backend = "qnic";
+    xendev_class->device = "vif";
+    xendev_class->get_name = xen_netdev_get_name;
+    xendev_class->realize = xen_netdev_realize;
+    xendev_class->frontend_changed = xen_netdev_frontend_changed;
+    xendev_class->unrealize = xen_netdev_unrealize;
+    set_bit(DEVICE_CATEGORY_NETWORK, dev_class->categories);
+    dev_class->user_creatable = true;
+
+    device_class_set_props(dev_class, xen_netdev_properties);
+}
+
+static const TypeInfo xen_net_type_info = {
+    .name = TYPE_XEN_NET_DEVICE,
+    .parent = TYPE_XEN_DEVICE,
+    .instance_size = sizeof(XenNetDev),
+    .class_init = xen_netdev_class_init,
+};
+
+static void xen_net_register_types(void)
+{
+    type_register_static(&xen_net_type_info);
+}
+
+type_init(xen_net_register_types)
+
+/* Called to instantiate a XenNetDev when the backend is detected. */
+static void xen_net_device_create(XenBackendInstance *backend,
+                                  QDict *opts, Error **errp)
+{
+    ERRP_GUARD();
+    XenBus *xenbus = xen_backend_get_bus(backend);
+    const char *name = xen_backend_get_name(backend);
+    XenDevice *xendev = NULL;
+    unsigned long number;
+    const char *macstr;
+    XenNetDev *net;
+    MACAddr mac;
+
+    if (qemu_strtoul(name, NULL, 10, &number) || number >= INT_MAX) {
+        error_setg(errp, "failed to parse name '%s'", name);
+        goto fail;
+    }
+
+    trace_xen_netdev_create(number);
+
+    macstr = qdict_get_try_str(opts, "mac");
+    if (macstr == NULL) {
+        error_setg(errp, "no MAC address found");
+        goto fail;
+    }
+
+    if (net_parse_macaddr(mac.a, macstr) < 0) {
+        error_setg(errp, "failed to parse MAC address");
+        goto fail;
+    }
+
+    xendev = XEN_DEVICE(qdev_new(TYPE_XEN_NET_DEVICE));
+    net = XEN_NET_DEVICE(xendev);
+
+    net->dev = number;
+    memcpy(&net->conf.macaddr, &mac, sizeof(mac));
+
+    if (qdev_realize_and_unref(DEVICE(xendev), BUS(xenbus), errp)) {
+        xen_backend_set_device(backend, xendev);
+        return;
+    }
+
+    error_prepend(errp, "realization of net device %lu failed: ",
+                  number);
+
+ fail:
+    if (xendev) {
+        object_unparent(OBJECT(xendev));
+    }
+}
+
+static void xen_net_device_destroy(XenBackendInstance *backend,
+                                   Error **errp)
+{
+    ERRP_GUARD();
+    XenDevice *xendev = xen_backend_get_device(backend);
+    XenNetDev *netdev = XEN_NET_DEVICE(xendev);
+
+    trace_xen_netdev_destroy(netdev->dev);
+
+    object_unparent(OBJECT(xendev));
+}
+
+static const XenBackendInfo xen_net_backend_info  = {
+    .type = "qnic",
+    .create = xen_net_device_create,
+    .destroy = xen_net_device_destroy,
 };
+
+static void xen_net_register_backend(void)
+{
+    xen_backend_register(&xen_net_backend_info);
+}
+
+xen_backend_init(xen_net_register_backend);
diff --git a/hw/xenpv/xen_machine_pv.c b/hw/xenpv/xen_machine_pv.c
index 1533f5dfb4..9f9f137f99 100644
--- a/hw/xenpv/xen_machine_pv.c
+++ b/hw/xenpv/xen_machine_pv.c
@@ -54,7 +54,6 @@ static void xen_init_pv(MachineState *machine)
     }
 
     xen_be_register("vfb", &xen_framebuffer_ops);
-    xen_be_register("qnic", &xen_netdev_ops);
 
     /* configure framebuffer */
     if (vga_interface_type == VGA_XENFB) {
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Wed Oct 25 14:57:49 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 14:57:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623045.970494 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvfKN-0006vW-VN; Wed, 25 Oct 2023 14:57:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623045.970494; Wed, 25 Oct 2023 14:57: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 1qvfKN-0006vP-S8; Wed, 25 Oct 2023 14:57:47 +0000
Received: by outflank-mailman (input) for mailman id 623045;
 Wed, 25 Oct 2023 14:57: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=LJSz=GH=casper.srs.infradead.org=BATV+85b1c44ac99574f3713d+7367+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qvfDz-0000WU-W6
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 14:51:11 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id eecab8f1-7345-11ee-9b0e-b553b5be7939;
 Wed, 25 Oct 2023 16:51:09 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qvfDb-009Nmv-GY; Wed, 25 Oct 2023 14:50:47 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1qvfDZ-002dFp-2d; Wed, 25 Oct 2023 15:50:45 +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
X-Inumbo-ID: eecab8f1-7345-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=xzkyRUM7nQfBrePX87BOU/AjGHoWHaL/QraAYhiDuVA=; b=BL58INjOUPmq2JMYOeuvydyhAU
	tPTn/p80t5Eh08H3gRlleRlgP+tgQWGq7N5wXJH7X/mlOScXTpOEWnbOuRpXEPuP6qVNRYaSGOugd
	6tcXeJgK3mLtMIaVmwTi4STOuz6ondMNTsb2Dj73DZe37n6idaDQJsRGljufaBfSmbEuV49teBrTx
	m/FgIqkMEwtqCXoCcT8ymUrb/NGT1pJYZuYZbwQtSluK2yb0iTICekflP2IJA3Gpi9MMvtZg5uGSH
	wfGZq2vvHZM4qZ/snaUefgRQOvq1JM0TDWen5C41IvSrdS9pyW1ej5/6MqLtxrfa64loaDy8AXSPz
	05GH0pzA==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>,
	Hanna Reitz <hreitz@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	=?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Richard Henderson <richard.henderson@linaro.org>,
	Eduardo Habkost <eduardo@habkost.net>,
	Jason Wang <jasowang@redhat.com>,
	Marcelo Tosatti <mtosatti@redhat.com>,
	qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org,
	kvm@vger.kernel.org,
	Bernhard Beschow <shentey@gmail.com>,
	Joel Upham <jupham125@gmail.com>
Subject: [PATCH v3 27/28] hw/xen: use qemu_create_nic_bus_devices() to instantiate Xen NICs
Date: Wed, 25 Oct 2023 15:50:41 +0100
Message-Id: <20231025145042.627381-28-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231025145042.627381-1-dwmw2@infradead.org>
References: <20231025145042.627381-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

When instantiating XenBus itself, for each NIC which is configured with
either the model unspecified, or set to to "xen" or "xen-net-device",
create a corresponding xen-net-device for it.

Now we can launch emulated Xen guests with '-nic user', and this fixes
the setup for Xen PV guests, which was previously broken in various
ways and never actually managed to peer with the netdev.

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 hw/xen/xen-bus.c                    |  4 ++++
 hw/xen/xen_devconfig.c              | 25 -------------------------
 hw/xenpv/xen_machine_pv.c           |  9 ---------
 include/hw/xen/xen-legacy-backend.h |  1 -
 4 files changed, 4 insertions(+), 35 deletions(-)

diff --git a/hw/xen/xen-bus.c b/hw/xen/xen-bus.c
index cc6f1b362f..fb82cc33e4 100644
--- a/hw/xen/xen-bus.c
+++ b/hw/xen/xen-bus.c
@@ -19,6 +19,7 @@
 #include "qapi/error.h"
 #include "qapi/qmp/qdict.h"
 #include "sysemu/sysemu.h"
+#include "net/net.h"
 #include "trace.h"
 
 static char *xen_device_get_backend_path(XenDevice *xendev)
@@ -1140,4 +1141,7 @@ void xen_bus_init(void)
 
     sysbus_realize_and_unref(SYS_BUS_DEVICE(dev), &error_fatal);
     qbus_set_bus_hotplug_handler(bus);
+
+    qemu_create_nic_bus_devices(bus, TYPE_XEN_DEVICE, "xen-net-device",
+                                "xen", "xen-net-device");
 }
diff --git a/hw/xen/xen_devconfig.c b/hw/xen/xen_devconfig.c
index 3f77c675c6..2150869f60 100644
--- a/hw/xen/xen_devconfig.c
+++ b/hw/xen/xen_devconfig.c
@@ -46,31 +46,6 @@ static int xen_config_dev_all(char *fe, char *be)
 
 /* ------------------------------------------------------------- */
 
-int xen_config_dev_nic(NICInfo *nic)
-{
-    char fe[256], be[256];
-    char mac[20];
-    int vlan_id = -1;
-
-    net_hub_id_for_client(nic->netdev, &vlan_id);
-    snprintf(mac, sizeof(mac), "%02x:%02x:%02x:%02x:%02x:%02x",
-             nic->macaddr.a[0], nic->macaddr.a[1], nic->macaddr.a[2],
-             nic->macaddr.a[3], nic->macaddr.a[4], nic->macaddr.a[5]);
-    xen_pv_printf(NULL, 1, "config nic %d: mac=\"%s\"\n", vlan_id, mac);
-    xen_config_dev_dirs("vif", "qnic", vlan_id, fe, be, sizeof(fe));
-
-    /* frontend */
-    xenstore_write_int(fe, "handle",     vlan_id);
-    xenstore_write_str(fe, "mac",        mac);
-
-    /* backend */
-    xenstore_write_int(be, "handle",     vlan_id);
-    xenstore_write_str(be, "mac",        mac);
-
-    /* common stuff */
-    return xen_config_dev_all(fe, be);
-}
-
 int xen_config_dev_vfb(int vdev, const char *type)
 {
     char fe[256], be[256];
diff --git a/hw/xenpv/xen_machine_pv.c b/hw/xenpv/xen_machine_pv.c
index 9f9f137f99..1130d1a147 100644
--- a/hw/xenpv/xen_machine_pv.c
+++ b/hw/xenpv/xen_machine_pv.c
@@ -32,8 +32,6 @@
 
 static void xen_init_pv(MachineState *machine)
 {
-    int i;
-
     setup_xen_backend_ops();
 
     /* Initialize backend core & drivers */
@@ -62,13 +60,6 @@ static void xen_init_pv(MachineState *machine)
         vga_interface_created = true;
     }
 
-    /* configure nics */
-    for (i = 0; i < nb_nics; i++) {
-        if (!nd_table[i].model || 0 != strcmp(nd_table[i].model, "xen"))
-            continue;
-        xen_config_dev_nic(nd_table + i);
-    }
-
     xen_bus_init();
 
     /* config cleanup hook */
diff --git a/include/hw/xen/xen-legacy-backend.h b/include/hw/xen/xen-legacy-backend.h
index fc42146bc2..2cca174778 100644
--- a/include/hw/xen/xen-legacy-backend.h
+++ b/include/hw/xen/xen-legacy-backend.h
@@ -81,7 +81,6 @@ extern struct XenDevOps xen_usb_ops;          /* xen-usb.c         */
 
 /* configuration (aka xenbus setup) */
 void xen_config_cleanup(void);
-int xen_config_dev_nic(NICInfo *nic);
 int xen_config_dev_vfb(int vdev, const char *type);
 int xen_config_dev_vkbd(int vdev);
 int xen_config_dev_console(int vdev);
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Wed Oct 25 14:58:05 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 14:58:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623048.970504 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvfKf-0007Se-6n; Wed, 25 Oct 2023 14:58:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623048.970504; Wed, 25 Oct 2023 14:58: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 1qvfKf-0007SX-47; Wed, 25 Oct 2023 14:58:05 +0000
Received: by outflank-mailman (input) for mailman id 623048;
 Wed, 25 Oct 2023 14:58: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=LJSz=GH=casper.srs.infradead.org=BATV+85b1c44ac99574f3713d+7367+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qvfE1-0000WU-F8
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 14:51:13 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id efab6865-7345-11ee-9b0e-b553b5be7939;
 Wed, 25 Oct 2023 16:51:10 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qvfDa-009Nms-1e; Wed, 25 Oct 2023 14:50:46 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1qvfDZ-002dFg-23; Wed, 25 Oct 2023 15:50:45 +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
X-Inumbo-ID: efab6865-7345-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=yQfwtPbREGreJZVtftdMEfHE+iyAsm6cKl0Oh4POK+Q=; b=Mip1iYJSsW63MhtMiW7lLRRtcN
	ur5UxOh/K0bhJvgyuwL3anhrKnfHaqrYx5ZJMdFB5jGn+RMD+HS7wtiHcoklHoFvdv2I43TTgm4TN
	kbQMmZY/q2QwvkEfSnvyMGAeZsQKkHKyqXNtvLtoA1o6dpir3gCSx6zkRP/hgW+wVh0OdOIXsuUYe
	+74CUSSgTmHxS5NFl3qIuMTHyLzhGKDdzUo9JKEtFq0vxXU9zdIfzsD8r79TPKaOSKhqd+hJpJhsQ
	6ol8uqebpxD+CZwrgZBC26MmQdHCy/53gOLmG5HnyAqdEDJdxy72SrwmzynaKS5u9rW9ksT7Dyte/
	F/41VQRA==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>,
	Hanna Reitz <hreitz@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	=?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Richard Henderson <richard.henderson@linaro.org>,
	Eduardo Habkost <eduardo@habkost.net>,
	Jason Wang <jasowang@redhat.com>,
	Marcelo Tosatti <mtosatti@redhat.com>,
	qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org,
	kvm@vger.kernel.org,
	Bernhard Beschow <shentey@gmail.com>,
	Joel Upham <jupham125@gmail.com>
Subject: [PATCH v3 25/28] hw/pci: add pci_init_nic_devices(), pci_init_nic_in_slot()
Date: Wed, 25 Oct 2023 15:50:39 +0100
Message-Id: <20231025145042.627381-26-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231025145042.627381-1-dwmw2@infradead.org>
References: <20231025145042.627381-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

The loop over nd_table[] to add PCI NICs is repeated in quite a few
places. Add a helper function to do it.

Some platforms also try to instantiate a specific model in a specific
slot, to match the real hardware. Add pci_init_nic_in_slot() for that
purpose.

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 hw/pci/pci.c         | 45 ++++++++++++++++++++++++++++++++++++++++++++
 include/hw/pci/pci.h |  4 +++-
 2 files changed, 48 insertions(+), 1 deletion(-)

diff --git a/hw/pci/pci.c b/hw/pci/pci.c
index 7d09e1a39d..51b0be3972 100644
--- a/hw/pci/pci.c
+++ b/hw/pci/pci.c
@@ -1925,6 +1925,51 @@ PCIDevice *pci_nic_init_nofail(NICInfo *nd, PCIBus *rootbus,
     return pci_dev;
 }
 
+void pci_init_nic_devices(PCIBus *bus, const char *default_model)
+{
+    qemu_create_nic_bus_devices(&bus->qbus, TYPE_PCI_DEVICE, default_model,
+                                "virtio", "virtio-net-pci");
+}
+
+bool pci_init_nic_in_slot(PCIBus *rootbus, const char *model,
+                          const char *alias, const char *devaddr)
+{
+    NICInfo *nd = qemu_find_nic_info(model, true, alias);
+    int dom, busnr, devfn;
+    PCIDevice *pci_dev;
+    unsigned slot;
+    PCIBus *bus;
+
+    if (!nd) {
+        return false;
+    }
+
+    if (!devaddr || pci_parse_devaddr(devaddr, &dom, &busnr, &slot, NULL) < 0) {
+        error_report("Invalid PCI device address %s for device %s",
+                     devaddr, model);
+        exit(1);
+    }
+
+    if (dom != 0) {
+        error_report("No support for non-zero PCI domains");
+        exit(1);
+    }
+
+    devfn = PCI_DEVFN(slot, 0);
+
+    bus = pci_find_bus_nr(rootbus, busnr);
+    if (!bus) {
+        error_report("Invalid PCI device address %s for device %s",
+                     devaddr, model);
+        exit(1);
+    }
+
+    pci_dev = pci_new(devfn, model);
+    qdev_set_nic_properties(&pci_dev->qdev, nd);
+    pci_realize_and_unref(pci_dev, bus, &error_fatal);
+    return true;
+}
+
 PCIDevice *pci_vga_init(PCIBus *bus)
 {
     vga_interface_created = true;
diff --git a/include/hw/pci/pci.h b/include/hw/pci/pci.h
index ea5aff118b..684d49bdcd 100644
--- a/include/hw/pci/pci.h
+++ b/include/hw/pci/pci.h
@@ -317,7 +317,9 @@ void pci_device_reset(PCIDevice *dev);
 PCIDevice *pci_nic_init_nofail(NICInfo *nd, PCIBus *rootbus,
                                const char *default_model,
                                const char *default_devaddr);
-
+void pci_init_nic_devices(PCIBus *bus, const char *default_model);
+bool pci_init_nic_in_slot(PCIBus *rootbus, const char *default_model,
+                          const char *alias, const char *devaddr);
 PCIDevice *pci_vga_init(PCIBus *bus);
 
 static inline PCIBus *pci_get_bus(const PCIDevice *dev)
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Wed Oct 25 14:58:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 14:58:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623052.970514 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvfKn-0007uO-Ga; Wed, 25 Oct 2023 14:58:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623052.970514; Wed, 25 Oct 2023 14:58: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 1qvfKn-0007uH-DN; Wed, 25 Oct 2023 14:58:13 +0000
Received: by outflank-mailman (input) for mailman id 623052;
 Wed, 25 Oct 2023 14:58: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=w7q9=GH=desiato.srs.infradead.org=BATV+fe87d11d956b9f6f1554+7367+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qvfEB-0000WU-Dt
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 14:51:23 +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 f50f3a4c-7345-11ee-9b0e-b553b5be7939;
 Wed, 25 Oct 2023 16:51:19 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by desiato.infradead.org with esmtpsa (Exim 4.96 #2 (Red Hat Linux))
 id 1qvfDZ-00GPM0-01; Wed, 25 Oct 2023 14:50:51 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1qvfDY-002dEp-2E; Wed, 25 Oct 2023 15:50:44 +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
X-Inumbo-ID: f50f3a4c-7345-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=desiato.20200630; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=ga7fdRezSCKkw56oddJDf5PSF3aHuZeS/N2m1OsP10s=; b=SvFORSmuOPtT7hodiNrUuUpIdR
	BgL4DHHiwD4DSEr2bo1GfcbNMKWqCTbKDCxcB+fAJ2Nuahv3RPyr6ves2JjS3MFoVdr6cvCCifigm
	PUzvODEyKHKyOS88vKQvaQO+OvAjvM0MlsAgCZOqe9EM/Pi1/dHzCLDzTlBFHWBrOtKJFLUpYxWJ/
	UL5Xqm1O82SdYKbfkDB8y5pOivPKsD7pEaWFNDeXZrKGki1cvU81VF+jpoMcWFrXaaQnNb2FrVDBx
	SaoTEwgshgIfj3kgQxKhtK5yVJIPjbcCGhyQdU5iuSQCW3SxtH4Meuj25JG4TFSzwoOgPA36ID0xG
	evBsdDAQ==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>,
	Hanna Reitz <hreitz@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	=?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Richard Henderson <richard.henderson@linaro.org>,
	Eduardo Habkost <eduardo@habkost.net>,
	Jason Wang <jasowang@redhat.com>,
	Marcelo Tosatti <mtosatti@redhat.com>,
	qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org,
	kvm@vger.kernel.org,
	Bernhard Beschow <shentey@gmail.com>,
	Joel Upham <jupham125@gmail.com>
Subject: [PATCH v3 13/28] hw/xen: automatically assign device index to block devices
Date: Wed, 25 Oct 2023 15:50:27 +0100
Message-Id: <20231025145042.627381-14-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231025145042.627381-1-dwmw2@infradead.org>
References: <20231025145042.627381-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by desiato.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

There's no need to force the user to assign a vdev. We can automatically
assign one, starting at xvda and searching until we find the first disk
name that's unused.

This means we can now allow '-drive if=xen,file=xxx' to work without an
explicit separate -driver argument, just like if=virtio.

Rip out the legacy handling from the xenpv machine, which was scribbling
over any disks configured by the toolstack, and didn't work with anything
but raw images.

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
Acked-by: Kevin Wolf <kwolf@redhat.com>
---
 blockdev.c                          | 15 +++++++++---
 hw/block/xen-block.c                | 38 +++++++++++++++++++++++++++++
 hw/xen/xen_devconfig.c              | 28 ---------------------
 hw/xenpv/xen_machine_pv.c           |  9 -------
 include/hw/xen/xen-legacy-backend.h |  1 -
 5 files changed, 50 insertions(+), 41 deletions(-)

diff --git a/blockdev.c b/blockdev.c
index a01c62596b..5d9f2e5395 100644
--- a/blockdev.c
+++ b/blockdev.c
@@ -255,13 +255,13 @@ void drive_check_orphaned(void)
          * Ignore default drives, because we create certain default
          * drives unconditionally, then leave them unclaimed.  Not the
          * users fault.
-         * Ignore IF_VIRTIO, because it gets desugared into -device,
-         * so we can leave failing to -device.
+         * Ignore IF_VIRTIO or IF_XEN, because it gets desugared into
+         * -device, so we can leave failing to -device.
          * Ignore IF_NONE, because leaving unclaimed IF_NONE remains
          * available for device_add is a feature.
          */
         if (dinfo->is_default || dinfo->type == IF_VIRTIO
-            || dinfo->type == IF_NONE) {
+            || dinfo->type == IF_XEN || dinfo->type == IF_NONE) {
             continue;
         }
         if (!blk_get_attached_dev(blk)) {
@@ -977,6 +977,15 @@ DriveInfo *drive_new(QemuOpts *all_opts, BlockInterfaceType block_default_type,
         qemu_opt_set(devopts, "driver", "virtio-blk", &error_abort);
         qemu_opt_set(devopts, "drive", qdict_get_str(bs_opts, "id"),
                      &error_abort);
+    } else if (type == IF_XEN) {
+        QemuOpts *devopts;
+        devopts = qemu_opts_create(qemu_find_opts("device"), NULL, 0,
+                                   &error_abort);
+        qemu_opt_set(devopts, "driver",
+                     (media == MEDIA_CDROM) ? "xen-cdrom" : "xen-disk",
+                     &error_abort);
+        qemu_opt_set(devopts, "drive", qdict_get_str(bs_opts, "id"),
+                     &error_abort);
     }
 
     filename = qemu_opt_get(legacy_opts, "file");
diff --git a/hw/block/xen-block.c b/hw/block/xen-block.c
index 64470fc579..5011fe9430 100644
--- a/hw/block/xen-block.c
+++ b/hw/block/xen-block.c
@@ -27,6 +27,7 @@
 #include "sysemu/block-backend.h"
 #include "sysemu/iothread.h"
 #include "dataplane/xen-block.h"
+#include "hw/xen/interface/io/xs_wire.h"
 #include "trace.h"
 
 static char *xen_block_get_name(XenDevice *xendev, Error **errp)
@@ -34,6 +35,43 @@ static char *xen_block_get_name(XenDevice *xendev, Error **errp)
     XenBlockDevice *blockdev = XEN_BLOCK_DEVICE(xendev);
     XenBlockVdev *vdev = &blockdev->props.vdev;
 
+    if (blockdev->props.vdev.type == XEN_BLOCK_VDEV_TYPE_INVALID) {
+        XenBus *xenbus = XEN_BUS(qdev_get_parent_bus(DEVICE(xendev)));
+        char fe_path[XENSTORE_ABS_PATH_MAX + 1];
+        char *value;
+        int disk = 0;
+        unsigned long idx;
+
+        /* Find an unoccupied device name */
+        while (disk < (1 << 20)) {
+            if (disk < (1 << 4)) {
+                idx = (202 << 8) | (disk << 4);
+            } else {
+                idx = (1 << 28) | (disk << 8);
+            }
+            snprintf(fe_path, sizeof(fe_path),
+                     "/local/domain/%u/device/vbd/%lu",
+                     xendev->frontend_id, idx);
+            value = qemu_xen_xs_read(xenbus->xsh, XBT_NULL, fe_path, NULL);
+            if (!value) {
+                if (errno == ENOENT) {
+                    vdev->type = XEN_BLOCK_VDEV_TYPE_XVD;
+                    vdev->partition = 0;
+                    vdev->disk = disk;
+                    vdev->number = idx;
+                    goto found;
+                }
+                error_setg(errp, "cannot read %s: %s", fe_path,
+                           strerror(errno));
+                return NULL;
+            }
+            free(value);
+            disk++;
+        }
+        error_setg(errp, "cannot find device vdev for block device");
+        return NULL;
+    }
+ found:
     return g_strdup_printf("%lu", vdev->number);
 }
 
diff --git a/hw/xen/xen_devconfig.c b/hw/xen/xen_devconfig.c
index 9b7304e544..3f77c675c6 100644
--- a/hw/xen/xen_devconfig.c
+++ b/hw/xen/xen_devconfig.c
@@ -46,34 +46,6 @@ static int xen_config_dev_all(char *fe, char *be)
 
 /* ------------------------------------------------------------- */
 
-int xen_config_dev_blk(DriveInfo *disk)
-{
-    char fe[256], be[256], device_name[32];
-    int vdev = 202 * 256 + 16 * disk->unit;
-    int cdrom = disk->media_cd;
-    const char *devtype = cdrom ? "cdrom" : "disk";
-    const char *mode    = cdrom ? "r"     : "w";
-    const char *filename = qemu_opt_get(disk->opts, "file");
-
-    snprintf(device_name, sizeof(device_name), "xvd%c", 'a' + disk->unit);
-    xen_pv_printf(NULL, 1, "config disk %d [%s]: %s\n",
-                  disk->unit, device_name, filename);
-    xen_config_dev_dirs("vbd", "qdisk", vdev, fe, be, sizeof(fe));
-
-    /* frontend */
-    xenstore_write_int(fe, "virtual-device",  vdev);
-    xenstore_write_str(fe, "device-type",     devtype);
-
-    /* backend */
-    xenstore_write_str(be, "dev",             device_name);
-    xenstore_write_str(be, "type",            "file");
-    xenstore_write_str(be, "params",          filename);
-    xenstore_write_str(be, "mode",            mode);
-
-    /* common stuff */
-    return xen_config_dev_all(fe, be);
-}
-
 int xen_config_dev_nic(NICInfo *nic)
 {
     char fe[256], be[256];
diff --git a/hw/xenpv/xen_machine_pv.c b/hw/xenpv/xen_machine_pv.c
index 17cda5ec13..1533f5dfb4 100644
--- a/hw/xenpv/xen_machine_pv.c
+++ b/hw/xenpv/xen_machine_pv.c
@@ -32,7 +32,6 @@
 
 static void xen_init_pv(MachineState *machine)
 {
-    DriveInfo *dinfo;
     int i;
 
     setup_xen_backend_ops();
@@ -64,14 +63,6 @@ static void xen_init_pv(MachineState *machine)
         vga_interface_created = true;
     }
 
-    /* configure disks */
-    for (i = 0; i < 16; i++) {
-        dinfo = drive_get(IF_XEN, 0, i);
-        if (!dinfo)
-            continue;
-        xen_config_dev_blk(dinfo);
-    }
-
     /* configure nics */
     for (i = 0; i < nb_nics; i++) {
         if (!nd_table[i].model || 0 != strcmp(nd_table[i].model, "xen"))
diff --git a/include/hw/xen/xen-legacy-backend.h b/include/hw/xen/xen-legacy-backend.h
index 6c307c5f2c..fc42146bc2 100644
--- a/include/hw/xen/xen-legacy-backend.h
+++ b/include/hw/xen/xen-legacy-backend.h
@@ -81,7 +81,6 @@ extern struct XenDevOps xen_usb_ops;          /* xen-usb.c         */
 
 /* configuration (aka xenbus setup) */
 void xen_config_cleanup(void);
-int xen_config_dev_blk(DriveInfo *disk);
 int xen_config_dev_nic(NICInfo *nic);
 int xen_config_dev_vfb(int vdev, const char *type);
 int xen_config_dev_vkbd(int vdev);
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Wed Oct 25 14:58:16 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 14:58:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623054.970524 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvfKq-0008F7-Ph; Wed, 25 Oct 2023 14:58:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623054.970524; Wed, 25 Oct 2023 14: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 1qvfKq-0008F0-MI; Wed, 25 Oct 2023 14:58:16 +0000
Received: by outflank-mailman (input) for mailman id 623054;
 Wed, 25 Oct 2023 14:58: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=w7q9=GH=desiato.srs.infradead.org=BATV+fe87d11d956b9f6f1554+7367+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qvfEA-0000WU-Dv
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 14:51:22 +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 f4379d9b-7345-11ee-9b0e-b553b5be7939;
 Wed, 25 Oct 2023 16:51:18 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by desiato.infradead.org with esmtpsa (Exim 4.96 #2 (Red Hat Linux))
 id 1qvfDa-00GPM7-1F; Wed, 25 Oct 2023 14:50:52 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1qvfDZ-002dFc-1r; Wed, 25 Oct 2023 15:50:45 +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
X-Inumbo-ID: f4379d9b-7345-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=desiato.20200630; h=Sender:Content-Transfer-Encoding:
	Content-Type:MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:
	To:From:Reply-To:Content-ID:Content-Description;
	bh=e3RGCKPN6DnRwj3sLAh0PlZLNbe3bg+XVYAVQTfyq30=; b=crXqHB5cJnKDgUDkB2XyGw6pyF
	D1RJPAR3lehL0VnPW0BmjuI9b0+r5tpIJRCBhL6vOIhn5/oivqeQpf+Zje7YgnjTlzNpGjSUWfRY6
	nf7vPKCAnUY41Zfp87PvioNtmZRSNnd+zAW+/JaV6Zuz5NfoJTRWSnrzscIXMqfLoXRyCM6KrC6no
	Pw68Qm362C2IIl69Eb+K6zL6Jt9MBz+N6gilQ4H061Gb7wZgKnVKSClEPnFEWH0Ck3L7x80SxkW/v
	MrSi9S6xjy7WmvYaTA5/Dc9kDSvaziPKvmGMpscSup+p0UULqjihmPIwqr9eyZnT86t5km8ZXSbzO
	YZt9XSrQ==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>,
	Hanna Reitz <hreitz@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	=?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Richard Henderson <richard.henderson@linaro.org>,
	Eduardo Habkost <eduardo@habkost.net>,
	Jason Wang <jasowang@redhat.com>,
	Marcelo Tosatti <mtosatti@redhat.com>,
	qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org,
	kvm@vger.kernel.org,
	Bernhard Beschow <shentey@gmail.com>,
	Joel Upham <jupham125@gmail.com>
Subject: [PATCH v3 24/28] net: add qemu_create_nic_bus_devices()
Date: Wed, 25 Oct 2023 15:50:38 +0100
Message-Id: <20231025145042.627381-25-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231025145042.627381-1-dwmw2@infradead.org>
References: <20231025145042.627381-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by desiato.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

This will instantiate any NICs which live on a given bus type. Each bus
is allowed *one* substitution (for PCI it's virtio → virtio-net-pci, for
Xen it's xen → xen-net-device; no point in overengineering it unless we
actually want more).

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 include/net/net.h |  3 +++
 net/net.c         | 53 +++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 56 insertions(+)

diff --git a/include/net/net.h b/include/net/net.h
index 56be694c75..ce830a47d0 100644
--- a/include/net/net.h
+++ b/include/net/net.h
@@ -211,6 +211,9 @@ bool qemu_configure_nic_device(DeviceState *dev, bool match_default,
                                const char *alias);
 DeviceState *qemu_create_nic_device(const char *typename, bool match_default,
                                     const char *alias);
+void qemu_create_nic_bus_devices(BusState *bus, const char *parent_type,
+                                 const char *default_model,
+                                 const char *alias, const char *alias_target);
 void print_net_client(Monitor *mon, NetClientState *nc);
 void net_socket_rs_init(SocketReadState *rs,
                         SocketReadStateFinalize *finalize,
diff --git a/net/net.c b/net/net.c
index 807220e630..73621795cb 100644
--- a/net/net.c
+++ b/net/net.c
@@ -1208,6 +1208,59 @@ DeviceState *qemu_create_nic_device(const char *typename, bool match_default,
     return dev;
 }
 
+void qemu_create_nic_bus_devices(BusState *bus, const char *parent_type,
+                                 const char *default_model,
+                                 const char *alias, const char *alias_target)
+{
+    GPtrArray *nic_models = qemu_get_nic_models(parent_type);
+    const char *model;
+    DeviceState *dev;
+    NICInfo *nd;
+    int i;
+
+    if (nic_model_help) {
+        if (alias_target) {
+            add_nic_model_help(alias_target, alias);
+        }
+        for (i = 0; i < nic_models->len - 1; i++) {
+            add_nic_model_help(nic_models->pdata[i], NULL);
+        }
+    }
+
+    /* Drop the NULL terminator which would make g_str_equal() unhappy */
+    nic_models->len--;
+
+    for (i = 0; i < nb_nics; i++) {
+        nd = &nd_table[i];
+
+        if (!nd->used || nd->instantiated) {
+            continue;
+        }
+
+        model = nd->model ? nd->model : default_model;
+        if (!model) {
+            continue;
+        }
+
+        /* Each bus type is allowed *one* substitution */
+        if (g_str_equal(model, alias)) {
+            model = alias_target;
+        }
+
+        if (!g_ptr_array_find_with_equal_func(nic_models, model,
+                                              g_str_equal, NULL)) {
+            /* This NIC does not live on this bus. */
+            continue;
+        }
+
+        dev = qdev_new(model);
+        qdev_set_nic_properties(dev, nd);
+        qdev_realize_and_unref(dev, bus, &error_fatal);
+    }
+
+    g_ptr_array_free(nic_models, true);
+}
+
 static int (* const net_client_init_fun[NET_CLIENT_DRIVER__MAX])(
     const Netdev *netdev,
     const char *name,
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Wed Oct 25 14:58:47 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 14:58:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623063.970534 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvfLL-00018R-6o; Wed, 25 Oct 2023 14:58:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623063.970534; Wed, 25 Oct 2023 14:58: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 1qvfLL-00018K-3v; Wed, 25 Oct 2023 14:58:47 +0000
Received: by outflank-mailman (input) for mailman id 623063;
 Wed, 25 Oct 2023 14:58: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=w7q9=GH=desiato.srs.infradead.org=BATV+fe87d11d956b9f6f1554+7367+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qvfEJ-0000WU-Ei
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 14:51:31 +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 f96a9349-7345-11ee-9b0e-b553b5be7939;
 Wed, 25 Oct 2023 16:51:27 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by desiato.infradead.org with esmtpsa (Exim 4.96 #2 (Red Hat Linux))
 id 1qvfDZ-00GPLz-00; Wed, 25 Oct 2023 14:50:52 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1qvfDY-002dEe-1i; Wed, 25 Oct 2023 15:50:44 +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
X-Inumbo-ID: f96a9349-7345-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=desiato.20200630; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=3ol/nIDXbsJDFoVLEuQ1afcMOMk6Tbtz3hrJIXJZBzY=; b=NFNK6k1K2fwKP7Ocg+F7iiwScE
	G0hoCGS6u4vyAMHIPvezrI8DEw/b9DGG3KWI2GSeG63nYSvAU5oVobvdrxD+wwKz+9P6PaJC/SaQ5
	mYNdvDv+InJs82hkPJ+9clbUM9Ko2hDQb35OCg6149Mw9Ioar6ATzO6+CTanCbjudKYK+HHlwEkWv
	xfHpwHiIA9XDtWJ0deiMHNEUuu/CrzXdy1mN2k9BPitoNbt7OKPcvRhTo8Z0nj1vmvJKOa3nrKRfl
	r1CwhZVWJW77Cim7VL7UBUjXPm5P+XQVhgUAAWxEA3HOsImeW52PfGmuNr8sqrD9dtlAOcnf5zNjR
	S2yC23jw==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>,
	Hanna Reitz <hreitz@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	=?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Richard Henderson <richard.henderson@linaro.org>,
	Eduardo Habkost <eduardo@habkost.net>,
	Jason Wang <jasowang@redhat.com>,
	Marcelo Tosatti <mtosatti@redhat.com>,
	qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org,
	kvm@vger.kernel.org,
	Bernhard Beschow <shentey@gmail.com>,
	Joel Upham <jupham125@gmail.com>
Subject: [PATCH v3 11/28] i386/xen: advertise XEN_HVM_CPUID_UPCALL_VECTOR in CPUID
Date: Wed, 25 Oct 2023 15:50:25 +0100
Message-Id: <20231025145042.627381-12-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231025145042.627381-1-dwmw2@infradead.org>
References: <20231025145042.627381-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by desiato.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

This will allow Linux guests (since v6.0) to use the per-vCPU upcall
vector delivered as MSI through the local APIC.

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
Reviewed-by: Paul Durrant <paul@xen.org>
---
 target/i386/kvm/kvm.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/target/i386/kvm/kvm.c b/target/i386/kvm/kvm.c
index e7c054cc16..8f93a0b5fc 100644
--- a/target/i386/kvm/kvm.c
+++ b/target/i386/kvm/kvm.c
@@ -1889,6 +1889,10 @@ int kvm_arch_init_vcpu(CPUState *cs)
                 c->eax |= XEN_HVM_CPUID_VCPU_ID_PRESENT;
                 c->ebx = cs->cpu_index;
             }
+
+            if (cs->kvm_state->xen_version >= XEN_VERSION(4, 17)) {
+                c->eax |= XEN_HVM_CPUID_UPCALL_VECTOR;
+            }
         }
 
         r = kvm_xen_init_vcpu(cs);
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Wed Oct 25 14:59:00 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 14:59:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623065.970545 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvfLW-0001ZE-Fr; Wed, 25 Oct 2023 14:58:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623065.970545; Wed, 25 Oct 2023 14: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 1qvfLW-0001Z7-Am; Wed, 25 Oct 2023 14:58:58 +0000
Received: by outflank-mailman (input) for mailman id 623065;
 Wed, 25 Oct 2023 14:58: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=w7q9=GH=desiato.srs.infradead.org=BATV+fe87d11d956b9f6f1554+7367+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qvfE9-0000WU-Di
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 14:51:21 +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 f3d09816-7345-11ee-9b0e-b553b5be7939;
 Wed, 25 Oct 2023 16:51:17 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by desiato.infradead.org with esmtpsa (Exim 4.96 #2 (Red Hat Linux))
 id 1qvfDZ-00GPLx-01; Wed, 25 Oct 2023 14:50:52 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1qvfDY-002dEF-06; Wed, 25 Oct 2023 15:50:44 +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
X-Inumbo-ID: f3d09816-7345-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=desiato.20200630; h=Sender:Content-Transfer-Encoding:
	Content-Type:MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:
	To:From:Reply-To:Content-ID:Content-Description;
	bh=RxBAjsQ+mysvOozFK2bkVeJvxuxKEpOcW9P4vMvsaUw=; b=kWEwCVesu3RU1Gi+zD5e+MXOzL
	TI6NwMrSRoAQx1N/L//K4TlUXhKgj7PQrl+DuBhCNNSDgpxlC7tv6T7Eclwqo3JB/3jdzRkNzQ9qF
	quoMMtl9n21EtXIqLbI9iMJAqKE5Ob4RUIz7XAD1NO24I6Wwr+QeGorNW5GKyAU6AJbWDsEToPZSu
	XMKIpWSZ84bjXrvQIeIKE++0nq8nOdav05MHqaccNURQ/24YIQufkFSp5KZYBu8Or7scgLcu/6cHU
	UsvgICpmvIfuJWV3/+UaFP9GBwV1+sI8ZM3NKS1yiX/c3qj/QciOq9QyDey+tRL/JUEb9G4h67r4c
	sMq+tCFA==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>,
	Hanna Reitz <hreitz@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	=?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Richard Henderson <richard.henderson@linaro.org>,
	Eduardo Habkost <eduardo@habkost.net>,
	Jason Wang <jasowang@redhat.com>,
	Marcelo Tosatti <mtosatti@redhat.com>,
	qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org,
	kvm@vger.kernel.org,
	Bernhard Beschow <shentey@gmail.com>,
	Joel Upham <jupham125@gmail.com>
Subject: [PATCH v3 05/28] hw/xen: fix XenStore watch delivery to guest
Date: Wed, 25 Oct 2023 15:50:19 +0100
Message-Id: <20231025145042.627381-6-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231025145042.627381-1-dwmw2@infradead.org>
References: <20231025145042.627381-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by desiato.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

When fire_watch_cb() found the response buffer empty, it would call
deliver_watch() to generate the XS_WATCH_EVENT message in the response
buffer and send an event channel notification to the guest… without
actually *copying* the response buffer into the ring. So there was
nothing for the guest to see. The pending response didn't actually get
processed into the ring until the guest next triggered some activity
from its side.

Add the missing call to put_rsp().

It might have been slightly nicer to call xen_xenstore_event() here,
which would *almost* have worked. Except for the fact that it calls
xen_be_evtchn_pending() to check that it really does have an event
pending (and clear the eventfd for next time). And under Xen it's
defined that setting that fd to O_NONBLOCK isn't guaranteed to work,
so the emu implementation follows suit.

This fixes Xen device hot-unplug.

Fixes: 0254c4d19df ("hw/xen: Add xenstore wire implementation and implementation stubs")
Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 hw/i386/kvm/xen_xenstore.c | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/hw/i386/kvm/xen_xenstore.c b/hw/i386/kvm/xen_xenstore.c
index 660d0b72f9..8e716a7009 100644
--- a/hw/i386/kvm/xen_xenstore.c
+++ b/hw/i386/kvm/xen_xenstore.c
@@ -1357,10 +1357,12 @@ static void fire_watch_cb(void *opaque, const char *path, const char *token)
     } else {
         deliver_watch(s, path, token);
         /*
-         * If the message was queued because there was already ring activity,
-         * no need to wake the guest. But if not, we need to send the evtchn.
+         * Attempt to queue the message into the actual ring, and send
+         * the event channel notification if any bytes are copied.
          */
-        xen_be_evtchn_notify(s->eh, s->be_port);
+        if (s->rsp_pending && put_rsp(s) > 0) {
+            xen_be_evtchn_notify(s->eh, s->be_port);
+        }
     }
 }
 
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Wed Oct 25 14:59:10 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 14:59:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623071.970554 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvfLi-0002Bn-Lj; Wed, 25 Oct 2023 14:59:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623071.970554; Wed, 25 Oct 2023 14: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 1qvfLi-0002Bg-Ig; Wed, 25 Oct 2023 14:59:10 +0000
Received: by outflank-mailman (input) for mailman id 623071;
 Wed, 25 Oct 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=w7q9=GH=desiato.srs.infradead.org=BATV+fe87d11d956b9f6f1554+7367+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qvfEC-0000WU-Dv
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 14:51:24 +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 f52622c6-7345-11ee-9b0e-b553b5be7939;
 Wed, 25 Oct 2023 16:51:20 +0200 (CEST)
Received: from [2001:8b0:10b:1::ebe] (helo=i7.infradead.org)
 by desiato.infradead.org with esmtpsa (Exim 4.96 #2 (Red Hat Linux))
 id 1qvfDZ-00GPLv-00; Wed, 25 Oct 2023 14:51:03 +0000
Received: from dwoodhou by i7.infradead.org with local (Exim 4.96 #2 (Red Hat
 Linux)) id 1qvfDX-002dE7-2w; Wed, 25 Oct 2023 15:50:43 +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
X-Inumbo-ID: f52622c6-7345-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=desiato.20200630; h=Sender:Content-Transfer-Encoding:
	MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:
	Reply-To:Content-Type:Content-ID:Content-Description;
	bh=gpval2gkdnYSDfubhYXUo8Wmpo6ErNXXryv5FV8GJTI=; b=rSWy9LoA4wJ29Sdd8/z2hODjqk
	sU4jyfn/ca7c900gi56KR/yIHtgCkDipOf7DVpsfAhVoJhNpxot9LipzStyKPCVyqwKMKTxysIaEv
	0YuAXNyE5AgxkxRSeJYKqBpfppT7/6ao2CisXyqhqzmDL2K6l4kQ5tHHleiN4DqL55cnqp7z5l9xR
	4Z5wjBvcBtTYCR6i7K1gjbo4ajmj2LEStD5lXp3kLeHBxTzriCK9AQHne857Of2+1MRrkusbVQc15
	lq7LnDg8Bb95Xbt+0qbQHD7Wbc+gBgQCeF9EzMWlLPQhPDYWQbDEOxDlcNayuAnjgD06/VptlWhXZ
	2U2EZvtA==;
From: David Woodhouse <dwmw2@infradead.org>
To: qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>,
	Hanna Reitz <hreitz@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	=?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Richard Henderson <richard.henderson@linaro.org>,
	Eduardo Habkost <eduardo@habkost.net>,
	Jason Wang <jasowang@redhat.com>,
	Marcelo Tosatti <mtosatti@redhat.com>,
	qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org,
	kvm@vger.kernel.org,
	Bernhard Beschow <shentey@gmail.com>,
	Joel Upham <jupham125@gmail.com>
Subject: [PATCH v3 03/28] hw/xen: select kernel mode for per-vCPU event channel upcall vector
Date: Wed, 25 Oct 2023 15:50:17 +0100
Message-Id: <20231025145042.627381-4-dwmw2@infradead.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20231025145042.627381-1-dwmw2@infradead.org>
References: <20231025145042.627381-1-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Sender: David Woodhouse <dwmw2@infradead.org>
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by desiato.infradead.org. See http://www.infradead.org/rpr.html

From: David Woodhouse <dwmw@amazon.co.uk>

A guest which has configured the per-vCPU upcall vector may set the
HVM_PARAM_CALLBACK_IRQ param to fairly much anything other than zero.

For example, Linux v6.0+ after commit b1c3497e604 ("x86/xen: Add support
for HVMOP_set_evtchn_upcall_vector") will just do this after setting the
vector:

       /* Trick toolstack to think we are enlightened. */
       if (!cpu)
               rc = xen_set_callback_via(1);

That's explicitly setting the delivery to GSI#1, but it's supposed to be
overridden by the per-vCPU vector setting. This mostly works in Qemu
*except* for the logic to enable the in-kernel handling of event channels,
which falsely determines that the kernel cannot accelerate GSI delivery
in this case.

Add a kvm_xen_has_vcpu_callback_vector() to report whether vCPU#0 has
the vector set, and use that in xen_evtchn_set_callback_param() to
enable the kernel acceleration features even when the param *appears*
to be set to target a GSI.

Preserve the Xen behaviour that when HVM_PARAM_CALLBACK_IRQ is set to
*zero* the event channel delivery is disabled completely. (Which is
what that bizarre guest behaviour is working round in the first place.)

Fixes: 91cce756179 ("hw/xen: Add xen_evtchn device for event channel emulation")
Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
Reviewed-by: Paul Durrant <paul@xen.org>
---
 hw/i386/kvm/xen_evtchn.c  | 6 ++++++
 include/sysemu/kvm_xen.h  | 1 +
 target/i386/kvm/xen-emu.c | 7 +++++++
 3 files changed, 14 insertions(+)

diff --git a/hw/i386/kvm/xen_evtchn.c b/hw/i386/kvm/xen_evtchn.c
index a731738411..3d6f4b4a0a 100644
--- a/hw/i386/kvm/xen_evtchn.c
+++ b/hw/i386/kvm/xen_evtchn.c
@@ -490,6 +490,12 @@ int xen_evtchn_set_callback_param(uint64_t param)
         break;
     }
 
+    /* If the guest has set a per-vCPU callback vector, prefer that. */
+    if (gsi && kvm_xen_has_vcpu_callback_vector()) {
+        in_kernel = kvm_xen_has_cap(EVTCHN_SEND);
+        gsi = 0;
+    }
+
     if (!ret) {
         /* If vector delivery was turned *off* then tell the kernel */
         if ((s->callback_param >> CALLBACK_VIA_TYPE_SHIFT) ==
diff --git a/include/sysemu/kvm_xen.h b/include/sysemu/kvm_xen.h
index 595abfbe40..961c702c4e 100644
--- a/include/sysemu/kvm_xen.h
+++ b/include/sysemu/kvm_xen.h
@@ -22,6 +22,7 @@
 int kvm_xen_soft_reset(void);
 uint32_t kvm_xen_get_caps(void);
 void *kvm_xen_get_vcpu_info_hva(uint32_t vcpu_id);
+bool kvm_xen_has_vcpu_callback_vector(void);
 void kvm_xen_inject_vcpu_callback_vector(uint32_t vcpu_id, int type);
 void kvm_xen_set_callback_asserted(void);
 int kvm_xen_set_vcpu_virq(uint32_t vcpu_id, uint16_t virq, uint16_t port);
diff --git a/target/i386/kvm/xen-emu.c b/target/i386/kvm/xen-emu.c
index 7c504d9fa4..75b2c557b9 100644
--- a/target/i386/kvm/xen-emu.c
+++ b/target/i386/kvm/xen-emu.c
@@ -424,6 +424,13 @@ void kvm_xen_set_callback_asserted(void)
     }
 }
 
+bool kvm_xen_has_vcpu_callback_vector(void)
+{
+    CPUState *cs = qemu_get_cpu(0);
+
+    return cs && !!X86_CPU(cs)->env.xen_vcpu_callback_vector;
+}
+
 void kvm_xen_inject_vcpu_callback_vector(uint32_t vcpu_id, int type)
 {
     CPUState *cs = qemu_get_cpu(vcpu_id);
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Wed Oct 25 15:34:04 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 15:34:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623088.970564 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvftK-0002MZ-BM; Wed, 25 Oct 2023 15:33:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623088.970564; Wed, 25 Oct 2023 15: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 1qvftK-0002MS-7e; Wed, 25 Oct 2023 15:33:54 +0000
Received: by outflank-mailman (input) for mailman id 623088;
 Wed, 25 Oct 2023 15:33: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=e1rq=GH=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qvftI-0002MM-Mu
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 15:33:52 +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 e55dc25b-734b-11ee-9b0e-b553b5be7939;
 Wed, 25 Oct 2023 17:33:50 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM0PR04MB7153.eurprd04.prod.outlook.com (2603:10a6:208:1a0::12)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.11; Wed, 25 Oct
 2023 15:33:21 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6933.011; Wed, 25 Oct 2023
 15:33: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: e55dc25b-734b-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=MfWJzwOZZyvsH/1qLmYMx5CIlDM/rOcXfuWiN1xAUkJZIxOTZ+Hro1AsukCnzghFbO+tSpgqnj+NhGwJ0FZrzkvlv6w/liA8ytx9nNNcLzmmVKuL+sNBDep4le0En58IxTdvESHTehcD2FkmP+GyktkhYZR8UhOAeXxOH922CbAMZePBFfpssZfgI4i6fhDLrj5pzIX7t8jY5e9UAh9+tysK4sJ7tyb2sFxblQEY/4lfWy2yAkpImWUtO+hwqISaDgmYZyabb6SMUalCKwt5N32oGXAPoypKyYXaQYkw948vMMDvWV48lG3h/jehOERXN6yvqgHz6D4betDayziuOQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=7t/Thl0XEeLJ/joxaDu2iaUZWKqeolnRMT2FhZ6bDMU=;
 b=lZ8Lm+wo3mJozLjhAOyPicezMgzWu0KTYMITODvrRW8OO9l9oBGDekZX2Cop96AVkQ2j86V0LV5anu/ir8bb5E5Hbixs4Cv8eaEFqcPlKAIufXT0yWvWxaoKfhCmI8ojdD3T3lRrc5bjA6cNJOQscJcpMKpel1DhpuSKbXTcLK7zPzV7JdFK88I71DQDiUh6NmCcTgu7vUsKLXn8ZVYso9ks8Q+N+rLMsgZR73+t4heuGkB+1cVpPD/yBugql/rTWFBKLPnVBBoPnRg/xWwuuw/tgPzDsGOEw6d4tNvoyPwQNdY49VGSVjG0venW99HrYfA8BQI/3U5BuC0XiPPTsg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=7t/Thl0XEeLJ/joxaDu2iaUZWKqeolnRMT2FhZ6bDMU=;
 b=DeahZAiM3sjq9ngcPdgOK+YEwi1VO51U6valBSi0EoXoNVscV1to+SVY3x1YmwquERmfBKLG5aZfcG4r7i5QcY3/LVtrMGKvsfbocNwUKMTG36bcyfpY4KQS5ADLjVkDoKg/JvmNDzUoeH5x4VaPyTPM1MbhkY2OBnYcqJvFe90GYTK4YtFh21ORlUu+DSih17MXg4OyntGydbxyATibmmiC/Vl7lCj70LiEZWKbePRK8d4kV8U8U5r+nOJbMYftQRB9ZNcHLi4mmDeeiM+2G417ZamsjsI5nV8DqbfFSi0JbDie0/vSeMe+hsMQRhDZyLhm8pVzYKZxI8Gu5jPq5g==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <96dd7efb-c214-2155-c5d1-3b9a47c10d33@suse.com>
Date: Wed, 25 Oct 2023 17:33: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][for-4.19 v3 1/8] xen/include: add macro LOWEST_BIT
Content-Language: en-US
To: Nicola Vetrini <nicola.vetrini@bugseng.com>
Cc: Stefano Stabellini <sstabellini@kernel.org>, michal.orzel@amd.com,
 xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, consulting@bugseng.com,
 andrew.cooper3@citrix.com, roger.pau@citrix.com,
 Simone Ballarin <simone.ballarin@bugseng.com>,
 Doug Goldstein <cardoe@cardoe.com>, George Dunlap
 <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Wei Liu <wl@xen.org>, xen-devel@lists.xenproject.org
References: <cover.1697815135.git.nicola.vetrini@bugseng.com>
 <546cf30aa43d6d0687a9a6c6d23b11128e5783e8.1697815135.git.nicola.vetrini@bugseng.com>
 <f504772a-68b4-fbfa-e7d4-8d22992c7944@suse.com>
 <f23a1f95916bd61ddcd5002428d8876c@bugseng.com>
 <6d113a237846c7a41aa083e806f172e7@bugseng.com>
 <5475d9e5-ec1c-7f71-ee77-59ec2e6ee01e@suse.com>
 <alpine.DEB.2.22.394.2310231340320.3516@ubuntu-linux-20-04-desktop>
 <dd33e92f-03aa-cf3c-23d7-dcf9cce23c8e@suse.com>
 <2f88afb2383b5fdecf83d311ebe69bb4@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <2f88afb2383b5fdecf83d311ebe69bb4@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0016.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:c9::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_|AM0PR04MB7153:EE_
X-MS-Office365-Filtering-Correlation-Id: 1169e351-4e3c-4c25-0e52-08dbd56fb7ed
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	pc98YC2Wjgw5wTJp9Ru1MEeQYsTo4wSc2AXvszSOv7oxYKTeXOKLAwLpTogdcFVxEt40KCuAPe58LQ7PcEU7iDw/B151oRG0R6vyEy2oeS9Cnc84Pno0YkRb0o6m0GH1es6zHeMKKRMgFNEhqHzRN7b+/tnNTEIvFf7W59wRwkkOC83pQu/qC5xpVnaaLoxF8ayfQWcwTEXvK+x26hT6TMLRW0FC/pCxoiKsLLutkSSd1bg35lJX2TFKnYVGmtTdeVsOmshEh0ZMA1Y+F9bNWuVZ5z8KXecpXjUAjbdiNQ/P0HTb+S4yoxkofu/D1x1Z2YGrYYwCsVu4D4SWoUye4TZMB5IoB6XocpL5gqfOkVa+QJ1TyyhUWiSlYdjRlGYYZEyxX8Iflff38CYRhjsdeRu+4LUWQjyttRBJ22QOwJaJpxrwYRCmX3QVMyfbP2pSzKQO482meQ7yybnrZ3vvcjHKXbODXuogIMSBOTVFtOPNZuiJzkuzlRlWpW99al0hTBaGdMNA/9U+b8pn/48mYBBwENxmywf9PY6us1bNeJzNObgFba/1KK1h2QxJtnPM4MzCXpQFUMbYUOknjTE659eLPcOn/ad+ZETrapI30G3dWcd2X4mXA7WlR2vm6Ezj7QToCsikZn+TcDuOWkZyYA==
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)(376002)(136003)(396003)(346002)(230922051799003)(64100799003)(451199024)(186009)(1800799009)(4744005)(54906003)(41300700001)(2906002)(38100700002)(66476007)(66946007)(66556008)(478600001)(6916009)(2616005)(6506007)(316002)(53546011)(6512007)(6486002)(83380400001)(4326008)(86362001)(7416002)(31696002)(36756003)(5660300002)(8676002)(8936002)(26005)(31686004)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?c001TzYweW1BUFhXcWpvNHlPdis0NUx3MytscU14a3JUZGE5S0JFdHZ2ZUYw?=
 =?utf-8?B?bzdJblB5amJPQWhIQTAyQVFFd2lMZnhScUZRRWlmRDhlbXZxSC9wZ1ZGNC9I?=
 =?utf-8?B?ek5sdEk1UHRKdkdkUUJvTUNCZVQ4Tklwb2VCbTR6R2k5K2dOQnZKZ1VXL0Z0?=
 =?utf-8?B?enJZdUlIbkg1bDNCR0c2Ymd4NkJBN0RQNEJDUDJzV1J6dC9sdjUrekZ1WlNE?=
 =?utf-8?B?Ukl3aHJSVWlGd1hPNTl6WFVaOGlLZFdlZkw5M0lxVTFZMjJ4T2FSOGVDQi96?=
 =?utf-8?B?VGZrZXVQajkvK0lJQUcyL1EyUkRkM3FwL050Q0t3UkJOYWh4S0tXZURnek0v?=
 =?utf-8?B?T21wL0t1WmUzVlFGNzFORGh0b1pnZllacHlyV2E5cFZrUnZEQzd5QmdveU5U?=
 =?utf-8?B?Y21GZWtpRko1aVR1OE56T1M0cnMyVEhrazRFT0d6WjhlbUJoTHpOMDUzek82?=
 =?utf-8?B?OXc2RHhIWWg0eFM0bEtSZGJSdTVQb29NSHpsREFHUnhNWEVadENva005VFJ0?=
 =?utf-8?B?MGtjK1p4QkJoZUVjTVVYRU95ZGtsMDNLU3k4TVlVQlplQzZIaWxtSTVoTWlI?=
 =?utf-8?B?SWhkb3p2UkVBY0M3c0FWYTNCelpsUllLcytFN0ZiV3RGRVpsWThvUjF6c09N?=
 =?utf-8?B?Q0loblhtc1NsRnhTTlhqSGxlWXpZZENGc2E5L2Q2eE85TVJxN0s5RTQrQ0Vi?=
 =?utf-8?B?ZXhMZ1hsL0NxQmcvMGRGMHhBYVljaGpjRXl4MEFpcHlHcVhkVmRCaTJkS2xB?=
 =?utf-8?B?Tm12UjFDcTR6d3JrZGhvRmNsYlpRdUVDMTd0RGloR3VYaVBFZnRDcHJ5OVFz?=
 =?utf-8?B?RUMrL3JqMGVrbmd4WFZ6K2g2T29xMHEwTFZNOEZuY1JNajdEQ2pYdWY1bkd4?=
 =?utf-8?B?RzV6WUhSd3ZzNjZ3ZmtwNXBQN2hrUHpJaFlWZG1peTJ2RnlGTjVzSFdRdU1S?=
 =?utf-8?B?dGljcFcvRFVOMThsM0YvS05CYlFDNjNHYkZZSzFqMWpTcFZUb1JpOHFLUzVC?=
 =?utf-8?B?NlFOUHZtYU0yV0w2c25NMEdBOVh0SnNXZ1k2d1dSbVBhVko1eWpKcEFTblFB?=
 =?utf-8?B?RHNXZURNSTJvNmwrZ01JU2JFMERORzdJbXRpdkR6bHlkTFo0Vkk3Nm41UHJG?=
 =?utf-8?B?VGcwU2xpa0tzM2R3dFgyaGtTdFQwTWs0aG45NnVHZ2xoU0dSL0RBSU96T2dF?=
 =?utf-8?B?TXM2bm52Z2xpdE1mTnF3VTlLY2RCemFQdjV3ZDQ3SG5SSnhHOVJWbCtEa1Fo?=
 =?utf-8?B?RTBYSnV6NURFNjRydklIdHdpaGFySU9oQVFvTmJEaW1tWFR3Njd4S3pIVFpG?=
 =?utf-8?B?Mm9GWjJpNnVueVAzQXRScFlQdFo2cFBneVUzbWdIakYxcTlodmlNMDJ4YnZz?=
 =?utf-8?B?R3dyN21uNGpnN3NpMGVHakpiVVhUVFR0Z2w3OFRVMUwxMXB6R1dSVU1xeVRa?=
 =?utf-8?B?czRYbGVEM2FNZmxRK2QzV0xvNjYrOE9FZ3dCSzlwcFoveDhpd2UvQlcxNXFq?=
 =?utf-8?B?WTlzQzlWTkRNMEJTVmFQTUI2WXpWd0FlVDZ4QTdxUDZ0UFRaRDN3L1Fkbm9k?=
 =?utf-8?B?bGhFNWppZmNLYXl0alo3anlmaG1qS282a0lIaG0wQ3hCeVgxRzlHaFN6c0VE?=
 =?utf-8?B?U3Vhd0xBYno0Vk1Qb2x6anhIY3ZhaUpoQlhxZlJOOVBGRUJKbW1LVWRLdnhP?=
 =?utf-8?B?QzZac1liTjZvTjcrR01aLzFoVllaTVBTbk1rRFBGTk5KTXpFUnV5bTNOM0ZV?=
 =?utf-8?B?bm9LMHFuQWhRM2REWXduT2ZpMG5YNHNsUDRYUjIzSUpYRlM2ZWFJdEh4c3Zh?=
 =?utf-8?B?MVZ2dnpBdGUxdjllUEhmcEp5cmF6VEplb3B3ZW44WWlTNnFselFGQ0o3QXkz?=
 =?utf-8?B?Q3VoQWY0Q1k2NVQzT3QzMEh2S0IyUG52Ykp2MlRoaVBFYkVER0J1bmY4aHNk?=
 =?utf-8?B?a3VUWktKNlRHSVcvcjEzR3BHbmo3ckJqQTV2bC8wUUJ3MnVvVzZ6alhZMlcw?=
 =?utf-8?B?bzVsZC8xbzlkc3g4eWlCcGtoWjVsbmtmZ01DQVRuUzBOZElJY3I0WmoxU3NS?=
 =?utf-8?B?NlBKZXFyQTJQaDdIZXNHTUsyNkF1Sm44NXhrQ2YyVWlFeDJSNVA1aWU0aUZL?=
 =?utf-8?Q?WrerlSnS/YUZe8WwfAGyOFHpk?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 1169e351-4e3c-4c25-0e52-08dbd56fb7ed
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Oct 2023 15:33:20.8822
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: RaRfPDTTf/1Xj6S+qfaxgqjX9CwfuHGxgsHDYrzNIzor9Gmu1by8zxgnNdBqDfF0ahe/6rqqEHZ00+h7c0u8aw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR04MB7153

On 25.10.2023 16:50, Nicola Vetrini wrote:
> Ok, I'll send a revised version using MASK_LOWEST_BIT, taking into 
> account also the
> other comments about the explanation on the macro definition
> (which some IDEs even show when hovering on its usage, which could 
> partially address
> the latter concern).

You're of course free to do so, but since - as indicated before -
MASK_LOWEST_BIT() imo isn't a better name than LOWEST_BIT(), I'll
continue to object.

Jan


From xen-devel-bounces@lists.xenproject.org Wed Oct 25 15:45:28 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 15:45:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623095.970575 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvg4O-0002R3-Em; Wed, 25 Oct 2023 15:45:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623095.970575; Wed, 25 Oct 2023 15:45: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 1qvg4O-0002Qw-9Y; Wed, 25 Oct 2023 15:45:20 +0000
Received: by outflank-mailman (input) for mailman id 623095;
 Wed, 25 Oct 2023 15:45: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 1qvg4N-0002Qm-24; Wed, 25 Oct 2023 15:45: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 1qvg4M-00055s-Qt; Wed, 25 Oct 2023 15:45:18 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qvg4M-0002wx-Fc; Wed, 25 Oct 2023 15:45:18 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qvg4M-0000hR-F5; Wed, 25 Oct 2023 15:45: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=Tcj9EfCcMEN+wbBhkF9Ou5dBoOJ5oT0PHs+9DfjuUa0=; b=d3HTT0qL2+ju/rj+hpVitYwiga
	ZO1FtAEkVv/Xor53kwff0rd748/RPZbRNXL/vsS5e+yZJNc7hlELDCB1t82eZJ0181GtotQg200v4
	kNUpYGLWB0FffvX+bVUX48fMt6fiC0jnpES0mJOvzDj6Zym1KA3a5+uO74S43HUzjjF8=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183525-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 183525: 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=5415b2b2118bd78d8a04f276a8312f7f0cb1a466
X-Osstest-Versions-That:
    xen=d9f07b06cfc967e128371c11f56699cf5ee40b43
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 25 Oct 2023 15:45:18 +0000

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

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                  5415b2b2118bd78d8a04f276a8312f7f0cb1a466
baseline version:
 xen                  d9f07b06cfc967e128371c11f56699cf5ee40b43

Last test of basis   183517  2023-10-24 19:02:08 Z    0 days
Testing same since   183525  2023-10-25 11:00:28 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
   d9f07b06cf..5415b2b211  5415b2b2118bd78d8a04f276a8312f7f0cb1a466 -> smoke


From xen-devel-bounces@lists.xenproject.org Wed Oct 25 15:54:10 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 15:54:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623103.970594 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvgCt-0000yW-LW; Wed, 25 Oct 2023 15:54:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623103.970594; Wed, 25 Oct 2023 15: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 1qvgCt-0000yP-Hn; Wed, 25 Oct 2023 15:54:07 +0000
Received: by outflank-mailman (input) for mailman id 623103;
 Wed, 25 Oct 2023 15:54: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=LJSz=GH=casper.srs.infradead.org=BATV+85b1c44ac99574f3713d+7367+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qvgCs-0000wM-4r
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 15:54:06 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id b8bc7bd0-734e-11ee-98d5-6d05b1d4d9a1;
 Wed, 25 Oct 2023 17:54:04 +0200 (CEST)
Received: from [2001:8b0:10b:5:5bd0:63a6:23b2:1881]
 (helo=u3832b3a9db3152.ant.amazon.com)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qvgAl-009eJ1-2u; Wed, 25 Oct 2023 15:51: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: b8bc7bd0-734e-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=MIME-Version:Content-Type:References:
	In-Reply-To:Date:Cc:To:From:Subject:Message-ID:Sender:Reply-To:
	Content-Transfer-Encoding:Content-ID:Content-Description;
	bh=e1GVpXBJuTkgBptRNUKv8CKMWp3jUbJZIikUkzBuc5Y=; b=oAhhhESPF110ixGR0R84hzVGNv
	L/x9oJ61+dZj2lsrxwgOvEjKdZNPIroxhSpuK2ZEzx4EyzLDMQt5RGlXDL4CAT/6TiLLdEc1uHkrw
	GUCgWvwzeCiwb6IxHDZPI9GAQSI5Rrn/xLbxunKsSiRCZ9YhL3KctmeHDVtysrEriFGX7mB81P+fC
	Q3CodO0RsfZ1mvRZyc4x4G6J1Z588rSKOibOitiTUjwbMMEpLEbqI8Y+ymANIPiqyMG9DL8IuFCJM
	3I+uuDKfsdSXzrDHjVcOrUaBaWKJGi72ZP9LLBuJ60Ujdcv6uKULq2ega7fnVnoKRCCI7TQq8tq/t
	QEScR5tQ==;
Message-ID: <603320c6e105ca391835ec6fe2c29a3d506fff8b.camel@infradead.org>
Subject: Re: [PATCH 38/45] hw/riscv: use qemu_configure_nic_device()
From: David Woodhouse <dwmw2@infradead.org>
To: Daniel Henrique Barboza <dbarboza@ventanamicro.com>, 
	qemu-devel@nongnu.org
Cc: Richard Henderson <richard.henderson@linaro.org>, Beniamino Galvani
 <b.galvani@gmail.com>, Peter Maydell <peter.maydell@linaro.org>, Strahinja
 Jankovic <strahinja.p.jankovic@gmail.com>, Niek Linnenbank
 <nieklinnenbank@gmail.com>,  =?ISO-8859-1?Q?C=E9dric?= Le Goater
 <clg@kaod.org>, Andrew Jeffery <andrew@aj.id.au>, Joel Stanley
 <joel@jms.id.au>,  Igor Mitsyanko <i.mitsyanko@gmail.com>, Jean-Christophe
 Dubois <jcd@tribudubois.net>, Andrey Smirnov <andrew.smirnov@gmail.com>,
 Philippe =?ISO-8859-1?Q?Mathieu-Daud=E9?= <philmd@linaro.org>, Rob Herring
 <robh@kernel.org>, Subbaraya Sundeep <sundeep.lkml@gmail.com>, Jan Kiszka
 <jan.kiszka@web.de>, Tyrone Ting <kfting@nuvoton.com>, Hao Wu
 <wuhaotsh@google.com>, Radoslaw Biernacki <rad@semihalf.com>, Leif Lindholm
 <quic_llindhol@quicinc.com>, Marcin Juszkiewicz
 <marcin.juszkiewicz@linaro.org>, "Edgar E. Iglesias"
 <edgar.iglesias@gmail.com>, Alistair Francis <alistair@alistair23.me>,
 Helge Deller <deller@gmx.de>, Paolo Bonzini <pbonzini@redhat.com>,  Eduardo
 Habkost <eduardo@habkost.net>, "Michael S. Tsirkin" <mst@redhat.com>,
 Marcel Apfelbaum <marcel.apfelbaum@gmail.com>, Song Gao
 <gaosong@loongson.cn>, Thomas Huth <huth@tuxfamily.org>, Laurent Vivier
 <laurent@vivier.eu>, Huacai Chen <chenhuacai@kernel.org>, Jiaxun Yang
 <jiaxun.yang@flygoat.com>,  =?ISO-8859-1?Q?Herv=E9?= Poussineau
 <hpoussin@reactos.org>, Aleksandar Rikalo <aleksandar.rikalo@syrmia.com>, 
 Aurelien Jarno <aurelien@aurel32.net>, Jason Wang <jasowang@redhat.com>,
 Jia Liu <proljc@gmail.com>, Stafford Horne <shorne@gmail.com>, Mark
 Cave-Ayland <mark.cave-ayland@ilande.co.uk>, Nicholas Piggin
 <npiggin@gmail.com>, Daniel Henrique Barboza <danielhb413@gmail.com>, David
 Gibson <david@gibson.dropbear.id.au>, Harsh Prateek Bora
 <harshpb@linux.ibm.com>, Bin Meng <bin.meng@windriver.com>, Palmer Dabbelt
 <palmer@dabbelt.com>, Weiwei Li <liweiwei@iscas.ac.cn>, Liu Zhiwei
 <zhiwei_liu@linux.alibaba.com>, David Hildenbrand <david@redhat.com>, Ilya
 Leoshkevich <iii@linux.ibm.com>, Halil Pasic <pasic@linux.ibm.com>, 
 Christian Borntraeger <borntraeger@linux.ibm.com>, Eric Farman
 <farman@linux.ibm.com>, Yoshinori Sato <ysato@users.sourceforge.jp>, Magnus
 Damm <magnus.damm@gmail.com>, Artyom Tarasenko <atar4qemu@gmail.com>,
 Stefano Stabellini <sstabellini@kernel.org>, Anthony Perard
 <anthony.perard@citrix.com>, Paul Durrant <paul@xen.org>, Max Filippov
 <jcmvbkbc@gmail.com>, qemu-arm@nongnu.org, qemu-ppc@nongnu.org, 
 qemu-riscv@nongnu.org, qemu-s390x@nongnu.org, xen-devel@lists.xenproject.org
Date: Wed, 25 Oct 2023 16:51:53 +0100
In-Reply-To: <c18da34b-56ae-4c9c-86a8-379e7b0fc759@ventanamicro.com>
References: <20231022155200.436340-1-dwmw2@infradead.org>
	 <20231022155200.436340-39-dwmw2@infradead.org>
	 <c18da34b-56ae-4c9c-86a8-379e7b0fc759@ventanamicro.com>
Content-Type: multipart/signed; micalg="sha-256"; protocol="application/pkcs7-signature";
	boundary="=-QGFiCGZpMAb0X5x0Cy3J"
User-Agent: Evolution 3.44.4-0ubuntu2 
MIME-Version: 1.0
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html


--=-QGFiCGZpMAb0X5x0Cy3J
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Wed, 2023-10-25 at 12:42 -0300, Daniel Henrique Barboza wrote:
>=20
> I believe you forgot to remove the 'nd' variable. Building with this patc=
h (applying
> patches 1 to 4 first) fails with:
>=20
>=20
> ../hw/riscv/microchip_pfsoc.c: In function =E2=80=98microchip_pfsoc_soc_r=
ealize=E2=80=99:
> ../hw/riscv/microchip_pfsoc.c:205:14: error: unused variable =E2=80=98nd=
=E2=80=99 [-Werror=3Dunused-variable]
> =C2=A0=C2=A0 205 |=C2=A0=C2=A0=C2=A0=C2=A0 NICInfo *nd;
> =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 |=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ^~
> cc1: all warnings being treated as errors
>=20
>=20
> Patch looks good otherwise. Thanks,
>=20
> Daniel

Thanks.

Yes, I'd spotted that my build coverage was incomplete and fixed a few
of those. My tree at
https://git.infradead.org/users/dwmw2/qemu.git/shortlog/refs/heads/xenfv
does actually build now on all platforms, and the CI tests ran in
https://gitlab.com/dwmw2/qemu/-/pipelines/1049153457 with only a minor
whine from checkpatch about the imported Xen headers and some long
lines which were like that before I touched them.

I haven't yet re-spammed the list with the 40-odd patches touching all
the platforms though, as noted in
https://lore.kernel.org/qemu-devel/20231025145042.627381-1-dwmw2@infradead.=
org/T/


--=-QGFiCGZpMAb0X5x0Cy3J
Content-Type: application/pkcs7-signature; name="smime.p7s"
Content-Disposition: attachment; filename="smime.p7s"
Content-Transfer-Encoding: base64

MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgEFADCABgkqhkiG9w0BBwEAAKCCEkQw
ggYQMIID+KADAgECAhBNlCwQ1DvglAnFgS06KwZPMA0GCSqGSIb3DQEBDAUAMIGIMQswCQYDVQQG
EwJVUzETMBEGA1UECBMKTmV3IEplcnNleTEUMBIGA1UEBxMLSmVyc2V5IENpdHkxHjAcBgNVBAoT
FVRoZSBVU0VSVFJVU1QgTmV0d29yazEuMCwGA1UEAxMlVVNFUlRydXN0IFJTQSBDZXJ0aWZpY2F0
aW9uIEF1dGhvcml0eTAeFw0xODExMDIwMDAwMDBaFw0zMDEyMzEyMzU5NTlaMIGWMQswCQYDVQQG
EwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYD
VQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50
aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC
AQEAyjztlApB/975Rrno1jvm2pK/KxBOqhq8gr2+JhwpKirSzZxQgT9tlC7zl6hn1fXjSo5MqXUf
ItMltrMaXqcESJuK8dtK56NCSrq4iDKaKq9NxOXFmqXX2zN8HHGjQ2b2Xv0v1L5Nk1MQPKA19xeW
QcpGEGFUUd0kN+oHox+L9aV1rjfNiCj3bJk6kJaOPabPi2503nn/ITX5e8WfPnGw4VuZ79Khj1YB
rf24k5Ee1sLTHsLtpiK9OjG4iQRBdq6Z/TlVx/hGAez5h36bBJMxqdHLpdwIUkTqT8se3ed0PewD
ch/8kHPo5fZl5u1B0ecpq/sDN/5sCG52Ds+QU5O5EwIDAQABo4IBZDCCAWAwHwYDVR0jBBgwFoAU
U3m/WqorSs9UgOHYm8Cd8rIDZsswHQYDVR0OBBYEFAnA8vwL2pTbX/4r36iZQs/J4K0AMA4GA1Ud
DwEB/wQEAwIBhjASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEF
BQcDBDARBgNVHSAECjAIMAYGBFUdIAAwUAYDVR0fBEkwRzBFoEOgQYY/aHR0cDovL2NybC51c2Vy
dHJ1c3QuY29tL1VTRVJUcnVzdFJTQUNlcnRpZmljYXRpb25BdXRob3JpdHkuY3JsMHYGCCsGAQUF
BwEBBGowaDA/BggrBgEFBQcwAoYzaHR0cDovL2NydC51c2VydHJ1c3QuY29tL1VTRVJUcnVzdFJT
QUFkZFRydXN0Q0EuY3J0MCUGCCsGAQUFBzABhhlodHRwOi8vb2NzcC51c2VydHJ1c3QuY29tMA0G
CSqGSIb3DQEBDAUAA4ICAQBBRHUAqznCFfXejpVtMnFojADdF9d6HBA4kMjjsb0XMZHztuOCtKF+
xswhh2GqkW5JQrM8zVlU+A2VP72Ky2nlRA1GwmIPgou74TZ/XTarHG8zdMSgaDrkVYzz1g3nIVO9
IHk96VwsacIvBF8JfqIs+8aWH2PfSUrNxP6Ys7U0sZYx4rXD6+cqFq/ZW5BUfClN/rhk2ddQXyn7
kkmka2RQb9d90nmNHdgKrwfQ49mQ2hWQNDkJJIXwKjYA6VUR/fZUFeCUisdDe/0ABLTI+jheXUV1
eoYV7lNwNBKpeHdNuO6Aacb533JlfeUHxvBz9OfYWUiXu09sMAviM11Q0DuMZ5760CdO2VnpsXP4
KxaYIhvqPqUMWqRdWyn7crItNkZeroXaecG03i3mM7dkiPaCkgocBg0EBYsbZDZ8bsG3a08LwEsL
1Ygz3SBsyECa0waq4hOf/Z85F2w2ZpXfP+w8q4ifwO90SGZZV+HR/Jh6rEaVPDRF/CEGVqR1hiuQ
OZ1YL5ezMTX0ZSLwrymUE0pwi/KDaiYB15uswgeIAcA6JzPFf9pLkAFFWs1QNyN++niFhsM47qod
x/PL+5jR87myx5uYdBEQkkDc+lKB1Wct6ucXqm2EmsaQ0M95QjTmy+rDWjkDYdw3Ms6mSWE3Bn7i
5ZgtwCLXgAIe5W8mybM2JzCCBhQwggT8oAMCAQICEQDGvhmWZ0DEAx0oURL6O6l+MA0GCSqGSIb3
DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYD
VQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28g
UlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMB4XDTIyMDEwNzAw
MDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJARYTZHdtdzJAaW5mcmFkZWFkLm9y
ZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3GpC2bomUqk+91wLYBzDMcCj5C9m6
oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZHh7htyAkWYVoFsFPrwHounto8xTsy
SSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT9YgcBqKCo65pTFmOnR/VVbjJk4K2
xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNjP+qDrh0db7PAjO1D4d5ftfrsf+kd
RR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy2U+eITZ5LLE5s45mX2oPFknWqxBo
bQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3BgBEmfsYWlBXO8rVXfvPgLs32VdV
NZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/7auNVRmPB3v5SWEsH8xi4Bez2V9U
KxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmdlFYhAflWKQ03Ufiu8t3iBE3VJbc2
5oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9aelIl6vtbhMA+l0nfrsORMa4kobqQ5
C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMBAAGjggHMMIIByDAfBgNVHSMEGDAW
gBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeDMcimo0oz8o1R1Nver3ZVpSkwDgYD
VR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYwFAYIKwYBBQUHAwQGCCsGAQUFBwMC
MEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYBBQUHAgEWF2h0dHBzOi8vc2VjdGln
by5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9jcmwuc2VjdGlnby5jb20vU2VjdGln
b1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1haWxDQS5jcmwwgYoGCCsGAQUFBwEB
BH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdvLmNvbS9TZWN0aWdvUlNBQ2xpZW50
QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAjBggrBgEFBQcwAYYXaHR0cDovL29j
c3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5mcmFkZWFkLm9yZzANBgkqhkiG9w0B
AQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQvQ/fzPXmtR9t54rpmI2TfyvcKgOXp
qa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvIlSPrzIB4Z2wyIGQpaPLlYflrrVFK
v9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9ChWFfgSXvrWDZspnU3Gjw/rMHrGnql
Htlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0whpBtXdyDjzBtQTaZJ7zTT/vlehc/
tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9IzCCBhQwggT8oAMCAQICEQDGvhmW
Z0DEAx0oURL6O6l+MA0GCSqGSIb3DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3Jl
YXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0
ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJl
IEVtYWlsIENBMB4XDTIyMDEwNzAwMDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJ
ARYTZHdtdzJAaW5mcmFkZWFkLm9yZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3
GpC2bomUqk+91wLYBzDMcCj5C9m6oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZH
h7htyAkWYVoFsFPrwHounto8xTsySSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT
9YgcBqKCo65pTFmOnR/VVbjJk4K2xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNj
P+qDrh0db7PAjO1D4d5ftfrsf+kdRR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy
2U+eITZ5LLE5s45mX2oPFknWqxBobQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3
BgBEmfsYWlBXO8rVXfvPgLs32VdVNZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/
7auNVRmPB3v5SWEsH8xi4Bez2V9UKxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmd
lFYhAflWKQ03Ufiu8t3iBE3VJbc25oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9ae
lIl6vtbhMA+l0nfrsORMa4kobqQ5C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMB
AAGjggHMMIIByDAfBgNVHSMEGDAWgBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeD
Mcimo0oz8o1R1Nver3ZVpSkwDgYDVR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYw
FAYIKwYBBQUHAwQGCCsGAQUFBwMCMEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYB
BQUHAgEWF2h0dHBzOi8vc2VjdGlnby5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9j
cmwuc2VjdGlnby5jb20vU2VjdGlnb1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1h
aWxDQS5jcmwwgYoGCCsGAQUFBwEBBH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdv
LmNvbS9TZWN0aWdvUlNBQ2xpZW50QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAj
BggrBgEFBQcwAYYXaHR0cDovL29jc3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5m
cmFkZWFkLm9yZzANBgkqhkiG9w0BAQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQv
Q/fzPXmtR9t54rpmI2TfyvcKgOXpqa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvI
lSPrzIB4Z2wyIGQpaPLlYflrrVFKv9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9Ch
WFfgSXvrWDZspnU3Gjw/rMHrGnqlHtlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0w
hpBtXdyDjzBtQTaZJ7zTT/vlehc/tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9
IzGCBMcwggTDAgEBMIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVz
dGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMT
NVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEA
xr4ZlmdAxAMdKFES+jupfjANBglghkgBZQMEAgEFAKCCAeswGAYJKoZIhvcNAQkDMQsGCSqGSIb3
DQEHATAcBgkqhkiG9w0BCQUxDxcNMjMxMDI1MTU1MTUzWjAvBgkqhkiG9w0BCQQxIgQg5P08IC9r
tRGFhxuMIp6qG9PnnEhkGnFHXCBC6vqfosIwgb0GCSsGAQQBgjcQBDGBrzCBrDCBljELMAkGA1UE
BhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEYMBYG
A1UEChMPU2VjdGlnbyBMaW1pdGVkMT4wPAYDVQQDEzVTZWN0aWdvIFJTQSBDbGllbnQgQXV0aGVu
dGljYXRpb24gYW5kIFNlY3VyZSBFbWFpbCBDQQIRAMa+GZZnQMQDHShREvo7qX4wgb8GCyqGSIb3
DQEJEAILMYGvoIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVy
MRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNl
Y3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEAxr4Z
lmdAxAMdKFES+jupfjANBgkqhkiG9w0BAQEFAASCAgAX5iHwYQYw9xXTLGUYQ0OtO+El+lyJ4lFx
xS0Ff0OO4RBinqHYa5waepgZ68RRHbNh5U6IJUerXppajATpMno/ZouKrpf9w30XsKG1jyrfec+8
2mwB+DX1VKZWLMaQlRUZj/RS6d1e7CGxacWfvRp2JIHNJO516g1YcP90sPU/gzVVc5x0iq20dnXS
xOQ536ppI6t+59oHRag0mps8qDwNJajM/OmtZvS76tINr/Spj/TmqqgZ15KDFlLNVrmtj/gVu0vt
erO04S0Aafq9C+jyNA+KtQ2HkMCHcxuPcqpexzKqn9esOZ+6BuxpgdDPLCSbirnHe78s5fF50XMm
3aQ5B4jglNn1N+e0v5TGfQThWYTxe/4XREGb81yLuWEkypsYbMz7gv166pVvoficpGxU6GyeZSjp
ZHMElRQ0GIAW49Ag5prXPZdINOdV7aCu7d54sKDRQ+XW8SIYvlmddgUkKMH/6rsRmSb5o+XOvAVE
0c5TQcUDDp3JlElL3rTtXD+BtrQtYV+KVbd6WBCTt5X5qLt3vJF1QdnN6JES7W6oeoxV9E2rbdPz
PeSXrn8og+GWhMLezuGP3b4jehdLbl3mM+BI4lCAgkfWcGkv6+bKSKbhVnUxTOBDs4TLj8v67Rsf
wg4rIPkpaMADzQCUgcylqvD34Fv9QaKE2uAVmBoxSQAAAAAAAA==


--=-QGFiCGZpMAb0X5x0Cy3J--


From xen-devel-bounces@lists.xenproject.org Wed Oct 25 15:54:10 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 15:54:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623092.970584 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvgCl-0000dT-D2; Wed, 25 Oct 2023 15:53:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623092.970584; Wed, 25 Oct 2023 15: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 1qvgCl-0000dM-9w; Wed, 25 Oct 2023 15:53:59 +0000
Received: by outflank-mailman (input) for mailman id 623092;
 Wed, 25 Oct 2023 15: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=6lyY=GH=ventanamicro.com=dbarboza@srs-se1.protection.inumbo.net>)
 id 1qvg1h-0000Oo-RT
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 15:42:33 +0000
Received: from mail-pl1-x62a.google.com (mail-pl1-x62a.google.com
 [2607:f8b0:4864:20::62a])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 1c08b3a4-734d-11ee-98d5-6d05b1d4d9a1;
 Wed, 25 Oct 2023 17:42:32 +0200 (CEST)
Received: by mail-pl1-x62a.google.com with SMTP id
 d9443c01a7336-1ca215cc713so38981425ad.3
 for <xen-devel@lists.xenproject.org>; Wed, 25 Oct 2023 08:42:32 -0700 (PDT)
Received: from [192.168.68.107] ([191.255.2.33])
 by smtp.gmail.com with ESMTPSA id
 j6-20020a170902da8600b001bf6ea340a9sm9386306plx.159.2023.10.25.08.42.16
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 25 Oct 2023 08:42: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: 1c08b3a4-734d-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=ventanamicro.com; s=google; t=1698248551; x=1698853351; 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=pHBwe3N98CTxQYgA0OpqzFBkPW8+uhBzLc9xXUB5YP4=;
        b=iMeJRO6VqFhhyxK7HGkc4Gje95WKqB0P2Kcn5rBp/2DdacATjZZylIUkvVXNp9YzWE
         s/aNga2jjCEC3cgoyYFsNLaK0//5ea/dVgV/YOORmKeozsrP3KLhtgeIkBupkTenmRa8
         ESBL90+Nu+Lg2VXHvMA8rZSXUDZl+LbDLW61jDJCbbDQV4uWHt3QSkeISLao7xntLUA6
         t7JyQKrRy1rQvp4W+75Fm24Swe6r6/9dsjniY6YuVfZGcQqhEETE/RvKYNuUCr5S8zKk
         HViLP/C/aTjPkumwRvG7W/zLqwOvcKrU6BPsk/mULkCsQVg2DOoPIHvMHxNMQYWWYp4j
         ySmQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698248551; x=1698853351;
        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=pHBwe3N98CTxQYgA0OpqzFBkPW8+uhBzLc9xXUB5YP4=;
        b=oLPZXujpq0X2SbNifmlWrwCPt6KYcEbkPrbT/2oXjMx0Zzc1HpFUnhKRTYIx+TZZdx
         1ulzBEwrqqdplucpDmByNTEpGdEKHIOyrXqAOyAF1p5ObjHcKEwGCh7xDzsfbHkuxOEY
         GMqhbW5Pivyg3+7ExTpJlPvxcNTbZNsLnYY1Qju1OLatfRFS4floDCc9FMTkv81HDES+
         w2K+l4SNEqVh+GMvvq4xoV4hVvUtuuZPTjnMctlCnTo8SgdPnlqpET9A964QATJsGOpF
         J/aBAZfszW91re5HCcNpzrWCGJc2C0prBVY26pdYnDA6hGFGn9Dkwf4yCTqEHEmbu8YY
         TmsA==
X-Gm-Message-State: AOJu0Yyp266F5JeOTtzbPInGaVy42Ucpt8qHs2TVYa85sSBEL6iqaGyf
	nHveCr+xXqHF+wqxkEt58Z4pKA==
X-Google-Smtp-Source: AGHT+IHJv4yxw/7RDDq5T6r69uf5jnSvBXyabkpSOPUwReisWw3qMAHCPGLn0urLortt90MAwLpouA==
X-Received: by 2002:a17:902:d904:b0:1c9:e68a:1b58 with SMTP id c4-20020a170902d90400b001c9e68a1b58mr10283255plz.54.1698248550870;
        Wed, 25 Oct 2023 08:42:30 -0700 (PDT)
Message-ID: <c18da34b-56ae-4c9c-86a8-379e7b0fc759@ventanamicro.com>
Date: Wed, 25 Oct 2023 12:42:14 -0300
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH 38/45] hw/riscv: use qemu_configure_nic_device()
Content-Language: en-US
To: David Woodhouse <dwmw2@infradead.org>, qemu-devel@nongnu.org
Cc: Richard Henderson <richard.henderson@linaro.org>,
 Beniamino Galvani <b.galvani@gmail.com>,
 Peter Maydell <peter.maydell@linaro.org>,
 Strahinja Jankovic <strahinja.p.jankovic@gmail.com>,
 Niek Linnenbank <nieklinnenbank@gmail.com>, =?UTF-8?Q?C=C3=A9dric_Le_Goater?=
 <clg@kaod.org>, Andrew Jeffery <andrew@aj.id.au>,
 Joel Stanley <joel@jms.id.au>, Igor Mitsyanko <i.mitsyanko@gmail.com>,
 Jean-Christophe Dubois <jcd@tribudubois.net>,
 Andrey Smirnov <andrew.smirnov@gmail.com>,
 =?UTF-8?Q?Philippe_Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
 Rob Herring <robh@kernel.org>, Subbaraya Sundeep <sundeep.lkml@gmail.com>,
 Jan Kiszka <jan.kiszka@web.de>, Tyrone Ting <kfting@nuvoton.com>,
 Hao Wu <wuhaotsh@google.com>, Radoslaw Biernacki <rad@semihalf.com>,
 Leif Lindholm <quic_llindhol@quicinc.com>,
 Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>,
 "Edgar E. Iglesias" <edgar.iglesias@gmail.com>,
 Alistair Francis <alistair@alistair23.me>, Helge Deller <deller@gmx.de>,
 Paolo Bonzini <pbonzini@redhat.com>, Eduardo Habkost <eduardo@habkost.net>,
 "Michael S. Tsirkin" <mst@redhat.com>,
 Marcel Apfelbaum <marcel.apfelbaum@gmail.com>, Song Gao
 <gaosong@loongson.cn>, Thomas Huth <huth@tuxfamily.org>,
 Laurent Vivier <laurent@vivier.eu>, Huacai Chen <chenhuacai@kernel.org>,
 Jiaxun Yang <jiaxun.yang@flygoat.com>,
 =?UTF-8?Q?Herv=C3=A9_Poussineau?= <hpoussin@reactos.org>,
 Aleksandar Rikalo <aleksandar.rikalo@syrmia.com>,
 Aurelien Jarno <aurelien@aurel32.net>, Jason Wang <jasowang@redhat.com>,
 Jia Liu <proljc@gmail.com>, Stafford Horne <shorne@gmail.com>,
 Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>,
 Nicholas Piggin <npiggin@gmail.com>,
 Daniel Henrique Barboza <danielhb413@gmail.com>,
 David Gibson <david@gibson.dropbear.id.au>,
 Harsh Prateek Bora <harshpb@linux.ibm.com>, Bin Meng
 <bin.meng@windriver.com>, Palmer Dabbelt <palmer@dabbelt.com>,
 Weiwei Li <liweiwei@iscas.ac.cn>, Liu Zhiwei <zhiwei_liu@linux.alibaba.com>,
 David Hildenbrand <david@redhat.com>, Ilya Leoshkevich <iii@linux.ibm.com>,
 Halil Pasic <pasic@linux.ibm.com>,
 Christian Borntraeger <borntraeger@linux.ibm.com>,
 Eric Farman <farman@linux.ibm.com>,
 Yoshinori Sato <ysato@users.sourceforge.jp>,
 Magnus Damm <magnus.damm@gmail.com>, Artyom Tarasenko <atar4qemu@gmail.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Anthony Perard <anthony.perard@citrix.com>, Paul Durrant <paul@xen.org>,
 Max Filippov <jcmvbkbc@gmail.com>, qemu-arm@nongnu.org, qemu-ppc@nongnu.org,
 qemu-riscv@nongnu.org, qemu-s390x@nongnu.org, xen-devel@lists.xenproject.org
References: <20231022155200.436340-1-dwmw2@infradead.org>
 <20231022155200.436340-39-dwmw2@infradead.org>
From: Daniel Henrique Barboza <dbarboza@ventanamicro.com>
In-Reply-To: <20231022155200.436340-39-dwmw2@infradead.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit



On 10/22/23 12:51, David Woodhouse wrote:
> From: David Woodhouse <dwmw@amazon.co.uk>
> 
> Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
> ---
>   hw/riscv/microchip_pfsoc.c | 13 ++-----------
>   hw/riscv/sifive_u.c        |  7 +------
>   2 files changed, 3 insertions(+), 17 deletions(-)
> 
> diff --git a/hw/riscv/microchip_pfsoc.c b/hw/riscv/microchip_pfsoc.c
> index b775aa8946..8e0e3aa20c 100644
> --- a/hw/riscv/microchip_pfsoc.c
> +++ b/hw/riscv/microchip_pfsoc.c
> @@ -411,17 +411,8 @@ static void microchip_pfsoc_soc_realize(DeviceState *dev, Error **errp)
>           memmap[MICROCHIP_PFSOC_USB].size);
>   
>       /* GEMs */

I believe you forgot to remove the 'nd' variable. Building with this patch (applying
patches 1 to 4 first) fails with:


../hw/riscv/microchip_pfsoc.c: In function ‘microchip_pfsoc_soc_realize’:
../hw/riscv/microchip_pfsoc.c:205:14: error: unused variable ‘nd’ [-Werror=unused-variable]
   205 |     NICInfo *nd;
       |              ^~
cc1: all warnings being treated as errors


Patch looks good otherwise. Thanks,

Daniel

> -
> -    nd = &nd_table[0];
> -    if (nd->used) {
> -        qemu_check_nic_model(nd, TYPE_CADENCE_GEM);
> -        qdev_set_nic_properties(DEVICE(&s->gem0), nd);
> -    }
> -    nd = &nd_table[1];
> -    if (nd->used) {
> -        qemu_check_nic_model(nd, TYPE_CADENCE_GEM);
> -        qdev_set_nic_properties(DEVICE(&s->gem1), nd);
> -    }
> +    qemu_configure_nic_device(DEVICE(&s->gem0), true, NULL);
> +    qemu_configure_nic_device(DEVICE(&s->gem1), true, NULL);
>   
>       object_property_set_int(OBJECT(&s->gem0), "revision", GEM_REVISION, errp);
>       object_property_set_int(OBJECT(&s->gem0), "phy-addr", 8, errp);
> diff --git a/hw/riscv/sifive_u.c b/hw/riscv/sifive_u.c
> index ec76dce6c9..5207ec1fa5 100644
> --- a/hw/riscv/sifive_u.c
> +++ b/hw/riscv/sifive_u.c
> @@ -789,7 +789,6 @@ static void sifive_u_soc_realize(DeviceState *dev, Error **errp)
>       MemoryRegion *l2lim_mem = g_new(MemoryRegion, 1);
>       char *plic_hart_config;
>       int i, j;
> -    NICInfo *nd = &nd_table[0];
>   
>       qdev_prop_set_uint32(DEVICE(&s->u_cpus), "num-harts", ms->smp.cpus - 1);
>       qdev_prop_set_uint32(DEVICE(&s->u_cpus), "hartid-base", 1);
> @@ -893,11 +892,7 @@ static void sifive_u_soc_realize(DeviceState *dev, Error **errp)
>       }
>       sysbus_mmio_map(SYS_BUS_DEVICE(&s->otp), 0, memmap[SIFIVE_U_DEV_OTP].base);
>   
> -    /* FIXME use qdev NIC properties instead of nd_table[] */
> -    if (nd->used) {
> -        qemu_check_nic_model(nd, TYPE_CADENCE_GEM);
> -        qdev_set_nic_properties(DEVICE(&s->gem), nd);
> -    }
> +    qemu_configure_nic_device(DEVICE(&s->gem), true, NULL);
>       object_property_set_int(OBJECT(&s->gem), "revision", GEM_REVISION,
>                               &error_abort);
>       if (!sysbus_realize(SYS_BUS_DEVICE(&s->gem), errp)) {


From xen-devel-bounces@lists.xenproject.org Wed Oct 25 15:58:36 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 15:58:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623110.970604 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvgHB-0003sy-6i; Wed, 25 Oct 2023 15:58:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623110.970604; Wed, 25 Oct 2023 15: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 1qvgHB-0003sr-3R; Wed, 25 Oct 2023 15:58:33 +0000
Received: by outflank-mailman (input) for mailman id 623110;
 Wed, 25 Oct 2023 15:58:31 +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 1qvgH9-0003sl-Ef
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 15:58:31 +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 1qvgGv-0005Jy-Ud; Wed, 25 Oct 2023 15:58:17 +0000
Received: from [15.248.3.4] (helo=[10.24.67.28])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qvgGv-00059P-Jz; Wed, 25 Oct 2023 15: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>
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=RlPOZ+wnev9DbM/P8Ke1/jGgNtuLQSSx6yexMPyHR1o=; b=hRTkfmXcYyfURchc1n9Bo4hTRR
	fz0mek4WPyp8PDJ8q9YKp4hQGI7u4d7FJVagjKR1yCVGNaMgJGVx7YFU9rmhL5j91UC5xZS0WZTWH
	FBEn1GwNpNhr5F2O9PzqvgJSCPb7I90+J7nfWiscIvF1R4J8r2gmUET0GYrZX53QaAR8=;
Message-ID: <50b3a500-aa7d-4d3d-8bcf-220f8ee69b0e@xen.org>
Date: Wed, 25 Oct 2023 16:58:15 +0100
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-GB
To: Jan Beulich <jbeulich@suse.com>,
 Stefano Stabellini <sstabellini@kernel.org>
Cc: Stefano Stabellini <stefano.stabellini@amd.com>,
 Simone Ballarin <simone.ballarin@bugseng.com>, consulting@bugseng.com,
 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>,
 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>
 <f0cd8400-5e37-6704-75ce-d965540bc2b7@suse.com>
 <alpine.DEB.2.22.394.2309281515570.1996340@ubuntu-linux-20-04-desktop>
 <725f5193-c8d3-1bc8-cd62-2a2b1b5ecc01@suse.com>
 <alpine.DEB.2.22.394.2310171709310.965337@ubuntu-linux-20-04-desktop>
 <ead797ed-84cc-fb70-5259-7e11211d049e@suse.com>
 <alpine.DEB.2.22.394.2310181739270.965337@ubuntu-linux-20-04-desktop>
 <e642bc2a-cefa-4ee4-6394-3c10102e8164@suse.com>
 <alpine.DEB.2.22.394.2310190915590.1945130@ubuntu-linux-20-04-desktop>
 <6374f0f4-d58f-83ca-6eb3-d5a9fcbac525@suse.com>
 <alpine.DEB.2.22.394.2310201622160.2356865@ubuntu-linux-20-04-desktop>
 <36e6dd08-918c-9791-0dab-ca75d4b98d7e@suse.com>
 <alpine.DEB.2.22.394.2310231346370.3516@ubuntu-linux-20-04-desktop>
 <af4a86bc-40d3-4363-adc8-30981652cd2b@xen.org>
 <c1fa350f-6f49-e2b1-0cda-dec99df415ae@suse.com>
 <alpine.DEB.2.22.394.2310241254480.271731@ubuntu-linux-20-04-desktop>
 <f546b8dc-baa8-c178-12be-70f7c1a8fec8@suse.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <f546b8dc-baa8-c178-12be-70f7c1a8fec8@suse.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi,

On 25/10/2023 09:18, Jan Beulich wrote:
> On 24.10.2023 21:59, Stefano Stabellini wrote:
>> If I understood correctly I am fine with that. To make sure we are all
>> on the same page, can you provide a couple of samples?
> 
> Taking the earlier example, instead of DRIVERS_PASSTHROUGH_VTD_DMAR_H it
> would then be VTD_DMAR_H. arch/x86/pv/mm.h would use PV_MM_H, but then
> you can already see that a hypothetical arch/x86/mm.h would use X86_MM_H,
> thus colliding with what your proposal would also yield for
> arch/x86/include/asm/mm.h. So maybe private header guards should come
> with e.g. a trailing underscore? Or double underscores as component
> separators, where .../include/... use only single underscores? Or
> headers in arch/*/include/asm/ use ASM_<name>_H (i.e. not making the
> architecture explicit in the guard name, on the grounds that headers
> from multiple architectures shouldn't be included at the same time)?
Thanks for providing some details.  The proposal for private headers 
make sense. For arch/.../include/asm/ headers, I would strongly prefer 
if we use prefix them with ASM_*.

As a side note, I am guessing for asm-generic, we would want to use 
ASM_GENERIC_* for the guard prefix. Is that correct?

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Wed Oct 25 16:01:32 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 16:01:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623114.970614 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvgJz-0006RR-Jq; Wed, 25 Oct 2023 16:01:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623114.970614; Wed, 25 Oct 2023 16: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 1qvgJz-0006RK-GR; Wed, 25 Oct 2023 16:01:27 +0000
Received: by outflank-mailman (input) for mailman id 623114;
 Wed, 25 Oct 2023 16:01: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=e1rq=GH=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qvgJx-0006RE-RM
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 16:01:25 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur05on20617.outbound.protection.outlook.com
 [2a01:111:f400:7d00::617])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id bd3bd45f-734f-11ee-9b0e-b553b5be7939;
 Wed, 25 Oct 2023 18:01:23 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by GVXPR04MB9831.eurprd04.prod.outlook.com (2603:10a6:150:11c::8)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.21; Wed, 25 Oct
 2023 16:01:17 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6933.011; Wed, 25 Oct 2023
 16:01: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: bd3bd45f-734f-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=RAqpLIKk/r7DCWFlYQVeR3rZNHkkG38hEA8JA1R+MaKf5YHzY5aH5DqJm2e2oe0BLdH/ng2yqPUCuXJab73WsJBpPNEmli+KmHQIlOX+xCRoC+G9h35g0RWyxlsjxGGyyy602r438h231JOTHxDV0Nk4JzJFi3CmAc+TIqeEKR9WGEE/WsVPNtb0fVdvob1AeerLv56kzRgXtkO9WynGJfEUn7cTYKhp+AlRkZiPVirErsR0EvFbzmSZzZo2Y4dDNeUVMV1HaXq2AeqXxCiXBqDgYWJhm9Nmm5+Tauf9q9yLmmG1vLRA0QDq+nQjBwa67gda9gopEpUgoP6AUsZlbg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=CP3WSlakdVikstFUZAG7JpmFfzK2ajP45pzYhA/Ds2A=;
 b=LXXeMpYgEm481efv7FwtChXo0+tl0n5fSMTB3JWskAH4rnImvcnqTO9SYxPR0/hu9r97FaaZN8CsBikwPyHbIujOsodyA05ItEEEgiEi7reFqwBRFjSPfrCohF8ubxUbiQl0Gw10o0N62yZ9giqKQSdky+9OycLYaeIKp/SzV/Cuhyljb1FPHZC+58wa55FtXgtbnhCSozow7fPsSoPvvsUHQVjd43m7W4ckf9u2FNHVevucQKv6ko0vEK/iVeaKHuLepPkfA6T9zwybu0jvJjzinKxNrUwH8RmCLZWsBTKzqXQFCwKILHb4TynIEk1Fo9TnmjgDV8bmrJo0Xe+VEg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=CP3WSlakdVikstFUZAG7JpmFfzK2ajP45pzYhA/Ds2A=;
 b=kklkwHQxwjUogthi06/4/KXR9jeOIynaoB/zK8NjktGBlMp732irYgW1yPogAYALDlg501nlT+Q/k9O4jJQanM6LJpDpyTMZrjUfKaKiud7gEV5eoODXDdR9Q3UPtkVctmeMK3wWU7+M6ri6qAz4WT+ZsDEnPTL5sk3k+SzfLmWJT5tv/KglEVruFEz+9IwZBMK+yzzDIwyHL717PNFunQaMgor4YzG4xTFmYE+wBw5BY9XOM/kHFODZljkk+oTchOr3nLV8pZE11mgBAkGxLdRS1n7REdV+DIy1rlXdW9NQWB2Gb5o/oemp+t2aI9LA4/jaSKorMzSvi3B7IQ0Bow==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <f6b207c6-4bc2-e172-428c-a2e3294cc490@suse.com>
Date: Wed, 25 Oct 2023 18:01:15 +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: Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>
Cc: Stefano Stabellini <stefano.stabellini@amd.com>,
 Simone Ballarin <simone.ballarin@bugseng.com>, consulting@bugseng.com,
 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>,
 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>
 <alpine.DEB.2.22.394.2309281515570.1996340@ubuntu-linux-20-04-desktop>
 <725f5193-c8d3-1bc8-cd62-2a2b1b5ecc01@suse.com>
 <alpine.DEB.2.22.394.2310171709310.965337@ubuntu-linux-20-04-desktop>
 <ead797ed-84cc-fb70-5259-7e11211d049e@suse.com>
 <alpine.DEB.2.22.394.2310181739270.965337@ubuntu-linux-20-04-desktop>
 <e642bc2a-cefa-4ee4-6394-3c10102e8164@suse.com>
 <alpine.DEB.2.22.394.2310190915590.1945130@ubuntu-linux-20-04-desktop>
 <6374f0f4-d58f-83ca-6eb3-d5a9fcbac525@suse.com>
 <alpine.DEB.2.22.394.2310201622160.2356865@ubuntu-linux-20-04-desktop>
 <36e6dd08-918c-9791-0dab-ca75d4b98d7e@suse.com>
 <alpine.DEB.2.22.394.2310231346370.3516@ubuntu-linux-20-04-desktop>
 <af4a86bc-40d3-4363-adc8-30981652cd2b@xen.org>
 <c1fa350f-6f49-e2b1-0cda-dec99df415ae@suse.com>
 <alpine.DEB.2.22.394.2310241254480.271731@ubuntu-linux-20-04-desktop>
 <f546b8dc-baa8-c178-12be-70f7c1a8fec8@suse.com>
 <50b3a500-aa7d-4d3d-8bcf-220f8ee69b0e@xen.org>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <50b3a500-aa7d-4d3d-8bcf-220f8ee69b0e@xen.org>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0081.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:1e::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_|GVXPR04MB9831:EE_
X-MS-Office365-Filtering-Correlation-Id: b56cb8d6-8eb0-4f93-3d1c-08dbd5739f28
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	RuH281WmbinZmhf1OfOsiFpITXWvx3Q8Uo2UDl87MiHhZD3v2GDi/6fBFZVvFPuWERuCtF45cbCei/6p4/jUB4ybuWNbMgXcP6TWXwE8DxLE6jKOhMTzS942s+aEbL9vXLdmdZc1un80GV/ButA3hhtG+uC2lU915g1teRBz/hRcJaqnDiGoODFtUjr/47kZTgW5DYnO4YnyjFI0yy4zbrSb3MYQGurX5h3IoBCWbopGihhLIjKWGKt4U9xEdbd2cFuQ3m3WE2P+8EZKtliqkg7Slkufp07cAT5RVfvYr/JjQ2UMWJu/qkkkk0e60mcN1bjeie4AbpzEeEullnmlOiK1oRnorPsD+JnsPxnaB42Q4gZexg2UmUDIDU27hxgZo4I9TuHorjSMbNT+g+xV+sUkscPC8zHKbqI8iWJhhyL59EwFDxJeKaVVPZyfDHlUtvBnhkOXIIessC8J9ujPYh1zUnFWZJpdNxOX9Q3AOnrtl53XQPzhBkuUQv8t+f0mywbIyiaVidRBqlHS7ngoGTmVswKwVcYJ4HhuDaqroADQJLysnFuI2aaGbOFPsclJe3AUosKGTUeEfE+DK29WdxxWCTp/TJr+uur6exo12HmrMTu9Pbjc4ctxentao0viY+IIjridDbcYv0DZczavtQ==
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)(136003)(396003)(346002)(230922051799003)(64100799003)(451199024)(1800799009)(186009)(2616005)(53546011)(26005)(41300700001)(7416002)(4326008)(86362001)(31686004)(36756003)(8676002)(2906002)(31696002)(38100700002)(8936002)(66476007)(6512007)(110136005)(6486002)(6506007)(54906003)(66946007)(66556008)(5660300002)(316002)(478600001)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?L1pwVWkzdE1GTUNWK2h5SEdtTXJJTGRSU1Q0d3VqOCtKd0MyN3JKdHU0SlR5?=
 =?utf-8?B?aTJyWEJhMk1DQVJPazNTUGtZa2lBRWpwUHlSWVhwS0YzQnhiTnFwOUxjc0RE?=
 =?utf-8?B?aHN1ejNyaXI1RUtKUEczTk82Y2Zzelg3MEtSbUtiNEJzRHNvUGRVZmlEbVY3?=
 =?utf-8?B?RVVuRjR2TlBROVVIbEUxeGRoWGlxaWFVazBoRDNPTVFPbTBLSisxMFdQMndj?=
 =?utf-8?B?OGx5RFY4NzA5QUJkQjZLNmFEeWtOYW5ldmxDL3BiejEyeVRaWjNpYWdHdHJ5?=
 =?utf-8?B?dERtTDBxSFhMWHgwbTdGQlZxMXBTYlNrQXpWSGpQWENoNS8wYk1GbmgzOC9l?=
 =?utf-8?B?V1ZlYy9TWS9xaGRpbEVtdi8xeFRESllDSC9CRHhoT0Y5aGxpNVMzZG96YmRX?=
 =?utf-8?B?b09kak5IR3c1bzZsdmZmdVBTN3h2NUwvRXQ0M0pUaVpmR0k4cktFSGFmNHMz?=
 =?utf-8?B?a3BrZnN5R2MxUXBGU2xhK1FiVlRFTkZsbFd3ZEJNbkt3KzNiamx3UXY3dmVq?=
 =?utf-8?B?ajJuOXViTm4rS05DM0UyaDJSTDBueExOU0VXUWk5VDhHM2owV0ExZXMwc2ZB?=
 =?utf-8?B?aEFOMFJlK3pSY1pHOWhhS3VKeG1OeEFUU0NLdHJMY2RBSWxXUzdQY3FuMUl2?=
 =?utf-8?B?bEk4VW42Z0lxbFpGdDF3cWdSbzJZK3J4N0ozYkphQlhvM1kwcGZ1clNhOU9q?=
 =?utf-8?B?eTFXSDVEQ3U5NERRaWRIL0UwZEtCWTY3Ync3UUQySEU5Y01xMGxyT0RrUTU5?=
 =?utf-8?B?VEJCOGhYb2ZQUnU3cWIycnVMUHAxc05uZ1hxSXp3T2xxYlpFSjhONytHanFB?=
 =?utf-8?B?RThpdjFldEFnRGE1RzU5UEZJZDMzUDJEblcxVWNrOGxpU1l4Y2N5L2djSXgw?=
 =?utf-8?B?Q2k2WE5OZmcxMDZOSGFqbGJ4RkFzRStIWmxQMFlZMXJNbnpPbkcxS1hCeFhF?=
 =?utf-8?B?TThCeERyNmJUajNVT2lBaHhjRUlkSmhxRWIvUHZxVSs5YitJVzNtUXRZRk1N?=
 =?utf-8?B?bXZDUTNudVdNS3dYK28rSXR3M1kzQ1kwVGt3dkRGbEFhOW9aWExFNVNpcHRT?=
 =?utf-8?B?RFNiS1YwNVpEQXFkVmVpUUhvUnE0RENzTGZkK1hSN0daQThDSFJra21NQkdM?=
 =?utf-8?B?RlZmTVdFMmc1YURzcHpFcUs1RGwxMGRFNWxkbXVEN1hKREJaWnh5d3kzUUxQ?=
 =?utf-8?B?cFVpYzA2dER3cE9mUWhpRWt4Q0xzRWpTZUxRUXdKaG02QlhYZzQ5aHBkUFJC?=
 =?utf-8?B?NXdSUVd5NnFJcDU4MjhhNlM1dnVYLy8rOEFwYlBUNkVhYVl3dUdsd3krR3lB?=
 =?utf-8?B?RGdlOUhHTldjZll3akFvM0N0WHVKVklGVlhKcVJqQ0p0Nnd5eWlPV0s1T3ZM?=
 =?utf-8?B?QVFma2dnWENsY1NUNG1wRTFQK0Joa2xqbzJyd3BZNDF4RElGSUhURTc1WDZj?=
 =?utf-8?B?RW5OWHVYQml0aGl4dm8rWVpsd1J0ZHRvbVhuLytrb05HNWhvR1BPdXdpRVFk?=
 =?utf-8?B?Q3IwbUpLTXRLajZPclFlOWozeWdtR3lxK3M2MmRXRzlxWXAzUlNGWXNJRjNq?=
 =?utf-8?B?YzJXNTJPRERqUkI1YzJNaWk1bHJ4Ny9WcnhhaG1NMGJ4b2VZVWVCaW5kMmNB?=
 =?utf-8?B?Z2hsTTZQZEhCdzVwWVk2V2d6QlRSd245OUNTL3IzNkR1WW9UUEVUM0Q0cnFr?=
 =?utf-8?B?YlljclExM3Bha1VubVJpMzZKdGZUQzk5VHd3VHAvN2w1emd2ajdKaUl4Y1cv?=
 =?utf-8?B?QVhhcWFyMmdXZkUwNUwrU080RzFmM1IrRDFlSVlCV1gwUUNhaStLZnkvWldO?=
 =?utf-8?B?ZzNTR09BcGJsNzJET2xLdXVIaWhSa3U1S3VHVFBVdVJFOE5YWHZnM1EreC9l?=
 =?utf-8?B?cWRveFZQanJKcjl2WHVXSmpBV2I5aG01THlLUnh3RGlucnRiMmVQd3VEZmRG?=
 =?utf-8?B?WXBoYkVjczBRUnJnK2NqUDhDdU95TTlrc1R1WmJxZnM2TGJqYkY2Zm1QSG9j?=
 =?utf-8?B?eDBreVlkQlBhSHQzM2tISFEvaVVJMTRtcTR5akRoajQwdjZDczNOTDhrbGlM?=
 =?utf-8?B?Z29QVUxkNW9hZm9VQnRkT3JlSTRZN1ZMZVNxb0FreEN4Rkl4d21ZSVFENVVN?=
 =?utf-8?Q?O7hEsQs6I1TQPak46MqN3Eqly?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: b56cb8d6-8eb0-4f93-3d1c-08dbd5739f28
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Oct 2023 16:01:17.2304
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: tiVBLY/a75/HW11GNOU84zlvoxPgfh0cvayVcS5zXwy1QjIjGwFkrb7BKq8sEHO1wL7LvA0E9WDDGs1OeoJRAg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: GVXPR04MB9831

On 25.10.2023 17:58, Julien Grall wrote:
> On 25/10/2023 09:18, Jan Beulich wrote:
>> On 24.10.2023 21:59, Stefano Stabellini wrote:
>>> If I understood correctly I am fine with that. To make sure we are all
>>> on the same page, can you provide a couple of samples?
>>
>> Taking the earlier example, instead of DRIVERS_PASSTHROUGH_VTD_DMAR_H it
>> would then be VTD_DMAR_H. arch/x86/pv/mm.h would use PV_MM_H, but then
>> you can already see that a hypothetical arch/x86/mm.h would use X86_MM_H,
>> thus colliding with what your proposal would also yield for
>> arch/x86/include/asm/mm.h. So maybe private header guards should come
>> with e.g. a trailing underscore? Or double underscores as component
>> separators, where .../include/... use only single underscores? Or
>> headers in arch/*/include/asm/ use ASM_<name>_H (i.e. not making the
>> architecture explicit in the guard name, on the grounds that headers
>> from multiple architectures shouldn't be included at the same time)?
> Thanks for providing some details.  The proposal for private headers 
> make sense. For arch/.../include/asm/ headers, I would strongly prefer 
> if we use prefix them with ASM_*.
> 
> As a side note, I am guessing for asm-generic, we would want to use 
> ASM_GENERIC_* for the guard prefix. Is that correct?

That was an assumption I was working from, yes. Could also be just
GENERIC_ afaic.

Jan


From xen-devel-bounces@lists.xenproject.org Wed Oct 25 16:10:45 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 16:10:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623119.970624 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvgSr-0000RV-K9; Wed, 25 Oct 2023 16:10:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623119.970624; Wed, 25 Oct 2023 16:10: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 1qvgSr-0000RO-Gk; Wed, 25 Oct 2023 16:10:37 +0000
Received: by outflank-mailman (input) for mailman id 623119;
 Wed, 25 Oct 2023 16:10: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=LJSz=GH=casper.srs.infradead.org=BATV+85b1c44ac99574f3713d+7367+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qvgSq-0000RI-Cr
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 16:10:36 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 06ca275d-7351-11ee-9b0e-b553b5be7939;
 Wed, 25 Oct 2023 18:10:34 +0200 (CEST)
Received: from [2001:8b0:10b:5:5bd0:63a6:23b2:1881]
 (helo=u3832b3a9db3152.ant.amazon.com)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qvgSl-009i7a-75; Wed, 25 Oct 2023 16:10: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: 06ca275d-7351-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=MIME-Version:Content-Type:References:
	In-Reply-To:Date:Cc:To:From:Subject:Message-ID:Sender:Reply-To:
	Content-Transfer-Encoding:Content-ID:Content-Description;
	bh=pJlGdi9BOxz9bE9Vyvxr3KelvCBnCLNQujr4fpEqdqY=; b=O0Kw2MscW8t1aAk6d011iKaRR+
	mV07UBhs85grUaosOph63bc2E8Z5T4aqLtwcvBcg8qwKmfbFqyF0JhDHNAtkD5E4fDmzMbunr7ZJN
	cHj93w8wyg7tOeQiicT/q6dnq55u3Q2Rspwfhr120nSvTETPqj8SAfXEpz5R/cqmMahl41R3DtfVd
	ihKhR+przR/5D38FgVSv9lZ6NfB5uuOXhonws/teruTOnsYhCTwQaY/YM17hBiNbJplzlQChodQ5D
	wGzPuyyjKPVuNm03iMq27rdCSdYDa/ddW235jEbPqlUveJmfsJ7mSmkanTIwvCh1bJcsvHvJITu42
	O0V3eDPg==;
Message-ID: <22923f4cc0b0202a05390e827526214a336db1ca.camel@infradead.org>
Subject: Re: Lockdep show 6.6-rc regression in Xen HVM CPU hotplug
From: David Woodhouse <dwmw2@infradead.org>
To: Juergen Gross <jgross@suse.com>, xen-devel
 <xen-devel@lists.xenproject.org>,  paulmck <paulmck@kernel.org>
Cc: Stefano Stabellini <sstabellini@kernel.org>, Oleksandr Tyshchenko
 <oleksandr_tyshchenko@epam.com>, Rahul Singh <rahul.singh@arm.com>, Boris
 Ostrovsky <boris.ostrovsky@oracle.com>, Thomas Gleixner <tglx@linutronix.de>
Date: Wed, 25 Oct 2023 17:10:30 +0100
In-Reply-To: <d4574364-4985-4ba1-8365-f4360860ad0d@suse.com>
References: <b28fff67f7501e4713af9b8c777f853cc44d6c6f.camel@infradead.org>
	 <c75a3d53-fc36-46a6-b781-f16e1e5c6226@suse.com>
	 <662772ec0d43cce9233680d67d7114bc8b0ed48d.camel@infradead.org>
	 <8e6c144f-f808-4603-8de4-76decc3c2838@suse.com>
	 <0a2725ee-a1a8-43e4-b117-f474ffb392a8@suse.com>
	 <f527753bab9fd48e3a3fdc060c33bba9e2a14324.camel@infradead.org>
	 <d4574364-4985-4ba1-8365-f4360860ad0d@suse.com>
Content-Type: multipart/signed; micalg="sha-256"; protocol="application/pkcs7-signature";
	boundary="=-j6Nn0pJhHrpcRYW7CTpd"
User-Agent: Evolution 3.44.4-0ubuntu2 
MIME-Version: 1.0
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html


--=-j6Nn0pJhHrpcRYW7CTpd
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Wed, 2023-10-25 at 09:19 +0200, Juergen Gross wrote:
> On 24.10.23 15:45, David Woodhouse wrote:
> > On Tue, 2023-10-24 at 14:08 +0200, Juergen Gross wrote:
> > >=20
> > > > I can probably change xen_send_IPI_one() to not need irq_get_chip_d=
ata().
> > >=20
> > > David, could you test the attached patch, please? Build tested only.
> >=20
> > No longer whines when offlining CPU1.
> >=20
> > Still triple-faults when bringing it back online. Or if I remove the
> > lockdep_assert_irqs_disabled() from load_current_idt(), gives the same
> > warnings as before, all on the same theme about IRQs being enabled when
> > they shouldn't be.
>=20
> I think this is a false positive. No idea (again) why it would trigger on=
ly
> with my patch applied.
>=20
> The problem seems to be that lockdep_assert_irqs_disabled() doesn't know
> about the "cli" at the very beginning of trampoline_start().

Right. I have no idea why your patch would make any difference to that.
Or why it would appear only on Xen, for that matter? It doesn't even
happen in Xen emulation under Qemu/KVM, strangely.

(I *do* have a different failure mode under KVM, where CPU1 doesn't
seem to be receiving interrupts at all after bringing it back online,
but only in the per-vCPU local APIC upcall mode. Still poking at that,
which is the reason I was testing any of this in the first place)


--=-j6Nn0pJhHrpcRYW7CTpd
Content-Type: application/pkcs7-signature; name="smime.p7s"
Content-Disposition: attachment; filename="smime.p7s"
Content-Transfer-Encoding: base64

MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgEFADCABgkqhkiG9w0BBwEAAKCCEkQw
ggYQMIID+KADAgECAhBNlCwQ1DvglAnFgS06KwZPMA0GCSqGSIb3DQEBDAUAMIGIMQswCQYDVQQG
EwJVUzETMBEGA1UECBMKTmV3IEplcnNleTEUMBIGA1UEBxMLSmVyc2V5IENpdHkxHjAcBgNVBAoT
FVRoZSBVU0VSVFJVU1QgTmV0d29yazEuMCwGA1UEAxMlVVNFUlRydXN0IFJTQSBDZXJ0aWZpY2F0
aW9uIEF1dGhvcml0eTAeFw0xODExMDIwMDAwMDBaFw0zMDEyMzEyMzU5NTlaMIGWMQswCQYDVQQG
EwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYD
VQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50
aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC
AQEAyjztlApB/975Rrno1jvm2pK/KxBOqhq8gr2+JhwpKirSzZxQgT9tlC7zl6hn1fXjSo5MqXUf
ItMltrMaXqcESJuK8dtK56NCSrq4iDKaKq9NxOXFmqXX2zN8HHGjQ2b2Xv0v1L5Nk1MQPKA19xeW
QcpGEGFUUd0kN+oHox+L9aV1rjfNiCj3bJk6kJaOPabPi2503nn/ITX5e8WfPnGw4VuZ79Khj1YB
rf24k5Ee1sLTHsLtpiK9OjG4iQRBdq6Z/TlVx/hGAez5h36bBJMxqdHLpdwIUkTqT8se3ed0PewD
ch/8kHPo5fZl5u1B0ecpq/sDN/5sCG52Ds+QU5O5EwIDAQABo4IBZDCCAWAwHwYDVR0jBBgwFoAU
U3m/WqorSs9UgOHYm8Cd8rIDZsswHQYDVR0OBBYEFAnA8vwL2pTbX/4r36iZQs/J4K0AMA4GA1Ud
DwEB/wQEAwIBhjASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEF
BQcDBDARBgNVHSAECjAIMAYGBFUdIAAwUAYDVR0fBEkwRzBFoEOgQYY/aHR0cDovL2NybC51c2Vy
dHJ1c3QuY29tL1VTRVJUcnVzdFJTQUNlcnRpZmljYXRpb25BdXRob3JpdHkuY3JsMHYGCCsGAQUF
BwEBBGowaDA/BggrBgEFBQcwAoYzaHR0cDovL2NydC51c2VydHJ1c3QuY29tL1VTRVJUcnVzdFJT
QUFkZFRydXN0Q0EuY3J0MCUGCCsGAQUFBzABhhlodHRwOi8vb2NzcC51c2VydHJ1c3QuY29tMA0G
CSqGSIb3DQEBDAUAA4ICAQBBRHUAqznCFfXejpVtMnFojADdF9d6HBA4kMjjsb0XMZHztuOCtKF+
xswhh2GqkW5JQrM8zVlU+A2VP72Ky2nlRA1GwmIPgou74TZ/XTarHG8zdMSgaDrkVYzz1g3nIVO9
IHk96VwsacIvBF8JfqIs+8aWH2PfSUrNxP6Ys7U0sZYx4rXD6+cqFq/ZW5BUfClN/rhk2ddQXyn7
kkmka2RQb9d90nmNHdgKrwfQ49mQ2hWQNDkJJIXwKjYA6VUR/fZUFeCUisdDe/0ABLTI+jheXUV1
eoYV7lNwNBKpeHdNuO6Aacb533JlfeUHxvBz9OfYWUiXu09sMAviM11Q0DuMZ5760CdO2VnpsXP4
KxaYIhvqPqUMWqRdWyn7crItNkZeroXaecG03i3mM7dkiPaCkgocBg0EBYsbZDZ8bsG3a08LwEsL
1Ygz3SBsyECa0waq4hOf/Z85F2w2ZpXfP+w8q4ifwO90SGZZV+HR/Jh6rEaVPDRF/CEGVqR1hiuQ
OZ1YL5ezMTX0ZSLwrymUE0pwi/KDaiYB15uswgeIAcA6JzPFf9pLkAFFWs1QNyN++niFhsM47qod
x/PL+5jR87myx5uYdBEQkkDc+lKB1Wct6ucXqm2EmsaQ0M95QjTmy+rDWjkDYdw3Ms6mSWE3Bn7i
5ZgtwCLXgAIe5W8mybM2JzCCBhQwggT8oAMCAQICEQDGvhmWZ0DEAx0oURL6O6l+MA0GCSqGSIb3
DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYD
VQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28g
UlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMB4XDTIyMDEwNzAw
MDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJARYTZHdtdzJAaW5mcmFkZWFkLm9y
ZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3GpC2bomUqk+91wLYBzDMcCj5C9m6
oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZHh7htyAkWYVoFsFPrwHounto8xTsy
SSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT9YgcBqKCo65pTFmOnR/VVbjJk4K2
xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNjP+qDrh0db7PAjO1D4d5ftfrsf+kd
RR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy2U+eITZ5LLE5s45mX2oPFknWqxBo
bQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3BgBEmfsYWlBXO8rVXfvPgLs32VdV
NZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/7auNVRmPB3v5SWEsH8xi4Bez2V9U
KxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmdlFYhAflWKQ03Ufiu8t3iBE3VJbc2
5oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9aelIl6vtbhMA+l0nfrsORMa4kobqQ5
C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMBAAGjggHMMIIByDAfBgNVHSMEGDAW
gBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeDMcimo0oz8o1R1Nver3ZVpSkwDgYD
VR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYwFAYIKwYBBQUHAwQGCCsGAQUFBwMC
MEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYBBQUHAgEWF2h0dHBzOi8vc2VjdGln
by5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9jcmwuc2VjdGlnby5jb20vU2VjdGln
b1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1haWxDQS5jcmwwgYoGCCsGAQUFBwEB
BH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdvLmNvbS9TZWN0aWdvUlNBQ2xpZW50
QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAjBggrBgEFBQcwAYYXaHR0cDovL29j
c3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5mcmFkZWFkLm9yZzANBgkqhkiG9w0B
AQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQvQ/fzPXmtR9t54rpmI2TfyvcKgOXp
qa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvIlSPrzIB4Z2wyIGQpaPLlYflrrVFK
v9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9ChWFfgSXvrWDZspnU3Gjw/rMHrGnql
Htlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0whpBtXdyDjzBtQTaZJ7zTT/vlehc/
tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9IzCCBhQwggT8oAMCAQICEQDGvhmW
Z0DEAx0oURL6O6l+MA0GCSqGSIb3DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3Jl
YXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0
ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJl
IEVtYWlsIENBMB4XDTIyMDEwNzAwMDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJ
ARYTZHdtdzJAaW5mcmFkZWFkLm9yZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3
GpC2bomUqk+91wLYBzDMcCj5C9m6oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZH
h7htyAkWYVoFsFPrwHounto8xTsySSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT
9YgcBqKCo65pTFmOnR/VVbjJk4K2xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNj
P+qDrh0db7PAjO1D4d5ftfrsf+kdRR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy
2U+eITZ5LLE5s45mX2oPFknWqxBobQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3
BgBEmfsYWlBXO8rVXfvPgLs32VdVNZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/
7auNVRmPB3v5SWEsH8xi4Bez2V9UKxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmd
lFYhAflWKQ03Ufiu8t3iBE3VJbc25oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9ae
lIl6vtbhMA+l0nfrsORMa4kobqQ5C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMB
AAGjggHMMIIByDAfBgNVHSMEGDAWgBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeD
Mcimo0oz8o1R1Nver3ZVpSkwDgYDVR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYw
FAYIKwYBBQUHAwQGCCsGAQUFBwMCMEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYB
BQUHAgEWF2h0dHBzOi8vc2VjdGlnby5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9j
cmwuc2VjdGlnby5jb20vU2VjdGlnb1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1h
aWxDQS5jcmwwgYoGCCsGAQUFBwEBBH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdv
LmNvbS9TZWN0aWdvUlNBQ2xpZW50QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAj
BggrBgEFBQcwAYYXaHR0cDovL29jc3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5m
cmFkZWFkLm9yZzANBgkqhkiG9w0BAQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQv
Q/fzPXmtR9t54rpmI2TfyvcKgOXpqa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvI
lSPrzIB4Z2wyIGQpaPLlYflrrVFKv9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9Ch
WFfgSXvrWDZspnU3Gjw/rMHrGnqlHtlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0w
hpBtXdyDjzBtQTaZJ7zTT/vlehc/tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9
IzGCBMcwggTDAgEBMIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVz
dGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMT
NVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEA
xr4ZlmdAxAMdKFES+jupfjANBglghkgBZQMEAgEFAKCCAeswGAYJKoZIhvcNAQkDMQsGCSqGSIb3
DQEHATAcBgkqhkiG9w0BCQUxDxcNMjMxMDI1MTYxMDMwWjAvBgkqhkiG9w0BCQQxIgQgtRzlUxIq
LisyArybdg1kS8kQaDTr92V0/LcCktCLLbcwgb0GCSsGAQQBgjcQBDGBrzCBrDCBljELMAkGA1UE
BhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEYMBYG
A1UEChMPU2VjdGlnbyBMaW1pdGVkMT4wPAYDVQQDEzVTZWN0aWdvIFJTQSBDbGllbnQgQXV0aGVu
dGljYXRpb24gYW5kIFNlY3VyZSBFbWFpbCBDQQIRAMa+GZZnQMQDHShREvo7qX4wgb8GCyqGSIb3
DQEJEAILMYGvoIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVy
MRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNl
Y3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEAxr4Z
lmdAxAMdKFES+jupfjANBgkqhkiG9w0BAQEFAASCAgBvf/boIxyv79fW5HvEVL6hf8nc/If7dtOM
tnzv8kYsJ/hL+VzEEUbEw7FQpTFW+IZVPErHNC3HNwlgO8X2fMAUKwpqDT2lFbJSiSjSlnTH9p+Z
LOqCN2Rynbb3sKodb7NMRPdkVqZVC6znTp+a5PCFFR9UU+QvoZYORY0ZH8MypBj6eyKWP65zt2yQ
PqglCjRMfF4PPvRjbQrN/e+F9o/0zSSBdpnVTkaNBGZQH3OCCXZoSRUYB2rmwOde9/kZ77MSB2Ac
Spoc53eGwYoevyTWcY+sCVPsCrtfY6vYCsud92lnDxZsOvG5Pr9Yqjot62Vfw7uXpJ1jHeSXE62n
5xJRuqrnHP/70xd/JbgSLDbS35EbXfGfq7EtOVJJ4+L/3fH5vamWs6IiodmslPlTTzWnBkxuPxbR
fB+AYBkzZF7tGoJuH1YTx06tOrg44DMHNiHTfpB4wbnDoMjUkRQvw/JipQDBmdhRKy04hbtDJivd
k1boXYsevEegxXxlSYXeP0tyjs7SA13OcxKg9RQtKCtmEECN7NJU8a/rCuXStSoI2VACyZO7G620
z17M7Ba5nsq6qzOWESkKtgWInj2gpkYFyEjLX5mFqYUk/MsZcZudJ4QZW1Rah/3eBeumDMDOQMDQ
+PdoTuzyQzETLq4l5Zk61qz1Y+5U7B2hhK66EqPJPwAAAAAAAA==


--=-j6Nn0pJhHrpcRYW7CTpd--


From xen-devel-bounces@lists.xenproject.org Wed Oct 25 16:42:08 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 16:42:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623124.970634 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvgx6-0001F6-WF; Wed, 25 Oct 2023 16:41:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623124.970634; Wed, 25 Oct 2023 16: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 1qvgx6-0001Ez-Sy; Wed, 25 Oct 2023 16:41:52 +0000
Received: by outflank-mailman (input) for mailman id 623124;
 Wed, 25 Oct 2023 16:41: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 1qvgx5-0001Ep-UU; Wed, 25 Oct 2023 16:41: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 1qvgx5-0006uS-O2; Wed, 25 Oct 2023 16:41: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 1qvgx5-0004iw-5k; Wed, 25 Oct 2023 16:41:51 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qvgx5-0004K3-5E; Wed, 25 Oct 2023 16:41: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=+2LdiPnt/c/YVe5EsQM/5pYALOzwZpWL501lid3QbYI=; b=tHsCCbGwmY6/xvn3gGwSat/ZUB
	miFWDUTuPjesGVIQ/L/jECHk3R2YKKqZ0YFERaLD5HrDIxOVrfNI4ml8TDpW5XYSQ8ClMgKaEisR3
	ss6o0n9TcKFdjtuE9mupDrRldCwi4HXQ6PzB8sYuvYbcQRiktI22WyXL8IqBdey7XmWM=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183522-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 183522: tolerable trouble: fail/pass/starved
X-Osstest-Failures:
    xen-unstable:test-amd64-i386-qemuu-rhel6hvm-amd:xen-install:fail:heisenbug
    xen-unstable:test-armhf-armhf-libvirt-qcow2:guest-start:fail:heisenbug
    xen-unstable:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:debian-hvm-install:fail:heisenbug
    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-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-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-i386-xl-qemuu-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-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2: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-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt:migrate-support-check: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-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: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-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-amd64-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-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-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: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-amd64-i386-libvirt-raw: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-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-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-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-dom0pvh-xl-amd:hosts-allocate:starved:nonblocking
X-Osstest-Versions-This:
    xen=d9f07b06cfc967e128371c11f56699cf5ee40b43
X-Osstest-Versions-That:
    xen=d9f07b06cfc967e128371c11f56699cf5ee40b43
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 25 Oct 2023 16:41:51 +0000

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

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-amd64-i386-qemuu-rhel6hvm-amd  7 xen-install          fail pass in 183519
 test-armhf-armhf-libvirt-qcow2 13 guest-start              fail pass in 183519
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm 12 debian-hvm-install fail pass in 183519

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail in 183519 blocked in 183522
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail in 183519 never pass
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183519
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183519
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183519
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 183519
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 183519
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 183519
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183519
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183519
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183519
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 183519
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183519
 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      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-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-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-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-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-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     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-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-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-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-libvirt-raw 14 migrate-support-check        fail   never pass
 test-amd64-amd64-dom0pvh-xl-amd  3 hosts-allocate               starved  n/a

version targeted for testing:
 xen                  d9f07b06cfc967e128371c11f56699cf5ee40b43
baseline version:
 xen                  d9f07b06cfc967e128371c11f56699cf5ee40b43

Last test of basis   183522  2023-10-25 08:28:41 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                 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                              starved 
 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


Published tested tree is already up to date.



From xen-devel-bounces@lists.xenproject.org Wed Oct 25 16:47:29 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 16:47:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623131.970643 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvh2S-0005AF-Mc; Wed, 25 Oct 2023 16:47:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623131.970643; Wed, 25 Oct 2023 16:47: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 1qvh2S-0005A8-Jq; Wed, 25 Oct 2023 16:47:24 +0000
Received: by outflank-mailman (input) for mailman id 623131;
 Wed, 25 Oct 2023 16:47: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 1qvh2R-0005A2-31
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 16:47: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 1qvh2G-000721-Dd; Wed, 25 Oct 2023 16:47:12 +0000
Received: from [15.248.3.4] (helo=[10.24.67.28])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qvh2G-0007Ej-55; Wed, 25 Oct 2023 16:47: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:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=SN918/oJsOwp93k0P+LyUS58ytlpdwHOq7gBlDfATFE=; b=evaA97jB3NG2AM7LtWQTevqTVc
	nh5CwFwNGWVGr9hIXFZslFiy64GuYU9m0BCZ/npaYpxp+tB4kCwk38c9KjC3U1oVVHRpBXFQ/Xnem
	iFFK0W7jq5Iu1j/ZBpTkhf1nuLz4BSSZuCZXfg02xmMVHcrnuPsYo7cUIQsreTw7lBRA=;
Message-ID: <1fc2c191-79b7-43fc-9068-5605e741c243@xen.org>
Date: Wed, 25 Oct 2023 17:47:09 +0100
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-GB
To: Jan Beulich <jbeulich@suse.com>,
 Stefano Stabellini <sstabellini@kernel.org>
Cc: Stefano Stabellini <stefano.stabellini@amd.com>,
 Simone Ballarin <simone.ballarin@bugseng.com>, consulting@bugseng.com,
 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>,
 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>
 <725f5193-c8d3-1bc8-cd62-2a2b1b5ecc01@suse.com>
 <alpine.DEB.2.22.394.2310171709310.965337@ubuntu-linux-20-04-desktop>
 <ead797ed-84cc-fb70-5259-7e11211d049e@suse.com>
 <alpine.DEB.2.22.394.2310181739270.965337@ubuntu-linux-20-04-desktop>
 <e642bc2a-cefa-4ee4-6394-3c10102e8164@suse.com>
 <alpine.DEB.2.22.394.2310190915590.1945130@ubuntu-linux-20-04-desktop>
 <6374f0f4-d58f-83ca-6eb3-d5a9fcbac525@suse.com>
 <alpine.DEB.2.22.394.2310201622160.2356865@ubuntu-linux-20-04-desktop>
 <36e6dd08-918c-9791-0dab-ca75d4b98d7e@suse.com>
 <alpine.DEB.2.22.394.2310231346370.3516@ubuntu-linux-20-04-desktop>
 <af4a86bc-40d3-4363-adc8-30981652cd2b@xen.org>
 <c1fa350f-6f49-e2b1-0cda-dec99df415ae@suse.com>
 <alpine.DEB.2.22.394.2310241254480.271731@ubuntu-linux-20-04-desktop>
 <f546b8dc-baa8-c178-12be-70f7c1a8fec8@suse.com>
 <50b3a500-aa7d-4d3d-8bcf-220f8ee69b0e@xen.org>
 <f6b207c6-4bc2-e172-428c-a2e3294cc490@suse.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <f6b207c6-4bc2-e172-428c-a2e3294cc490@suse.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit



On 25/10/2023 17:01, Jan Beulich wrote:
> On 25.10.2023 17:58, Julien Grall wrote:
>> On 25/10/2023 09:18, Jan Beulich wrote:
>>> On 24.10.2023 21:59, Stefano Stabellini wrote:
>>>> If I understood correctly I am fine with that. To make sure we are all
>>>> on the same page, can you provide a couple of samples?
>>>
>>> Taking the earlier example, instead of DRIVERS_PASSTHROUGH_VTD_DMAR_H it
>>> would then be VTD_DMAR_H. arch/x86/pv/mm.h would use PV_MM_H, but then
>>> you can already see that a hypothetical arch/x86/mm.h would use X86_MM_H,
>>> thus colliding with what your proposal would also yield for
>>> arch/x86/include/asm/mm.h. So maybe private header guards should come
>>> with e.g. a trailing underscore? Or double underscores as component
>>> separators, where .../include/... use only single underscores? Or
>>> headers in arch/*/include/asm/ use ASM_<name>_H (i.e. not making the
>>> architecture explicit in the guard name, on the grounds that headers
>>> from multiple architectures shouldn't be included at the same time)?
>> Thanks for providing some details.  The proposal for private headers
>> make sense. For arch/.../include/asm/ headers, I would strongly prefer
>> if we use prefix them with ASM_*.
>>
>> As a side note, I am guessing for asm-generic, we would want to use
>> ASM_GENERIC_* for the guard prefix. Is that correct?
> 
> That was an assumption I was working from, yes. Could also be just
> GENERIC_ afaic.

Thanks for the confirmation. I am fine with either GENERIC_ or ASM_GENERIC_.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Wed Oct 25 17:03:45 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 17:03:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623135.970653 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvhI4-0008Rs-0o; Wed, 25 Oct 2023 17:03:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623135.970653; Wed, 25 Oct 2023 17: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 1qvhI3-0008Rl-UA; Wed, 25 Oct 2023 17:03:31 +0000
Received: by outflank-mailman (input) for mailman id 623135;
 Wed, 25 Oct 2023 17:03: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=VHkM=GH=amd.com=ayan.kumar.halder@srs-se1.protection.inumbo.net>)
 id 1qvhI2-0008QE-SK
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 17:03:31 +0000
Received: from NAM02-SN1-obe.outbound.protection.outlook.com
 (mail-sn1nam02on20625.outbound.protection.outlook.com
 [2a01:111:f400:7ea9::625])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 6a19ce03-7358-11ee-98d5-6d05b1d4d9a1;
 Wed, 25 Oct 2023 19:03:28 +0200 (CEST)
Received: from DM6PR17CA0002.namprd17.prod.outlook.com (2603:10b6:5:1b3::15)
 by SJ0PR12MB7082.namprd12.prod.outlook.com (2603:10b6:a03:4ae::12) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.26; Wed, 25 Oct
 2023 17:03:21 +0000
Received: from CY4PEPF0000EE3A.namprd03.prod.outlook.com
 (2603:10b6:5:1b3:cafe::ad) by DM6PR17CA0002.outlook.office365.com
 (2603:10b6:5:1b3::15) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.34 via Frontend
 Transport; Wed, 25 Oct 2023 17:03:20 +0000
Received: from SATLEXMB04.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.6933.15 via Frontend Transport; Wed, 25 Oct 2023 17:03:19 +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.32; Wed, 25 Oct
 2023 12:03:18 -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.32 via
 Frontend Transport; Wed, 25 Oct 2023 12:03: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: 6a19ce03-7358-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=M+T2xvm7MkZg1P7j2LocnafgPqfH/ykc+dBYbDklvyBVoxxEN2sCTcq92MFgXtMVg0a0ORCGB+FRMs1d1IDkpBqTENNO7iBh9cMKOlb4OF835+As+lDb9XCfvkTiSrzdO2xFnfxkudZf7D7oMYel9XZOEM9GF80rBW2+ixK7pccDyDFco3p+vGhzqruP5lYfN8oSCP2VSuZqvMrZQJhUIoPZE5GAo3y55ObRAZ9k+Fw0MdVfJBdLzWg1MVZgvIyjr56YmjuVwHA4ScaL6yXJU85RtgBz5TF+BM1HmYXOOwDPhn6TxbJVB4qXbCsJuX7t7k5WlRxpIHchz6YSxP1IYQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=eyHJM/XB9UyoPZnhX7laqyMoe+H9DU7nM/b3lw43Krw=;
 b=ZgAJ+j842jkDW7S+0tOSAIHkqG99ugLGRXIiTM9Ck9dvikdphVmMwExqPpweDlHeYmIQDzk/nYw9P8ZbQBG3QdxNhgDXb+PQQDsqnW0+ixnLrImYig/9ltwJdDUu93Q6LBAJt/eRKMXBBx0fbIFZ0xp5D20Fmddmg6xr/giaT2hQ4w1dkf0KNxxKbCwWHveudDZiy6WFSPzxzlgJwNfsaxE2LbZD28OcfZe3VJCvDUoYFZ38UWxotX+1kCyZDsAwk8PGGNmyNaDGTezFTpJeFAokv4gLUNkHqiD/4LBUcD9ACx3q3DWFi7l7JO0arbaEOEI51noF866BwYVXVa3T6w==
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=eyHJM/XB9UyoPZnhX7laqyMoe+H9DU7nM/b3lw43Krw=;
 b=47S0YALwxJV3TgNaBH+VI53yBTw+oq6/x6BK3osALYblgzuJrkZ+lddS+63SNmq2yKv+js8JolIwT0RKDXaDiZ1OYRrs8evEpeUy09QfWpaALULLgkcTI9hBZ2tAEYptFZamAjLLIJnLRCuyTmtE8njcBjNgcgJhbdLrho14bnc=
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>, <julien@xen.org>, <bertrand.marquis@arm.com>,
	<michal.orzel@amd.com>, Ayan Kumar Halder <ayan.kumar.halder@amd.com>
Subject: [XEN] xen/arm: arm32: Use adr_l instead of load_paddr for getting address of symbols
Date: Wed, 25 Oct 2023 18:03:04 +0100
Message-ID: <20231025170304.2331922-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: CY4PEPF0000EE3A:EE_|SJ0PR12MB7082:EE_
X-MS-Office365-Filtering-Correlation-Id: 4384aa27-6df3-4e4e-c323-08dbd57c4a2b
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	9rt82m8kHQe/UsDbPyyXFghDvsyrnpQPfBsNrg1u9rmJEBLsxlxRTbhsSszRp4rCoVJheJPKcOJI0vlEmI3wym8Vmql3XoiYnNDTyg+E4qkeSz1mfdL2ezARTNR6yFDFR1n1Bj/agaYcjxEJRvXUlt1rvGcL+f4WWEPsb4kz6LIJ6OI8vb1RHuW51XdAj//uyl43Tjwmki3JjnWE4F7JJ8q2feCX2v3xJYO1UhjAd4yyCG/U7gGaPBIlxodyAN5x86stVUofNJXxNqlZfFW/1ZzJZQw+4qX+yXYVHwOIusTG6nXbl20S5Z26GKL0jixN38Y2dj8xFoAtwsJM0PSDoQkp8xJL+tnc2Vi6T9V23ndqi1PAb51RFFh2UW+P/cUfL/6tXGM1HKKZLZRZLuzxToQKlrTNE9P1OUQ1S4E7bIq1paQf0Jf0voxPlpRIAVba4nhpCGjiPZ/JsktXAb9POe0JqH3aOocPYkZJj9joiOPiivZDRo470fBCsER46ummGiao2lvVts57ZtpbccmrGUoIDdFgkMOLGmDRxRMC2CDuV6rcXbWsnqf0q5z4QjaQq3kr2QJeDew5A6UQCUIo3prDVPvHBnrqsuvp8FgtAWGbECKrqadKM526QnRJK95jpw/iwi75uML3O0jiHni7ZWt9/p3AvrDH3ZZ54JkGq25HyC3Hw3w89/Qg9DCOT0gE2yt7zpJet4qd2wN2PzmHdoBRnA7TsqA45DsjJDGzNpZdj/ffSelTLbLse5bIoZ4qJbjY/kTjGPlv02LOEyz75A==
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)(186009)(64100799003)(1800799009)(82310400011)(451199024)(40470700004)(36840700001)(46966006)(40460700003)(2906002)(2616005)(426003)(316002)(1076003)(356005)(83380400001)(26005)(82740400003)(103116003)(86362001)(70206006)(6666004)(70586007)(478600001)(966005)(47076005)(336012)(81166007)(36860700001)(5660300002)(40480700001)(8676002)(41300700001)(54906003)(36756003)(8936002)(4326008)(6916009)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Oct 2023 17:03:19.9162
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 4384aa27-6df3-4e4e-c323-08dbd57c4a2b
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:
	CY4PEPF0000EE3A.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR12MB7082

Before the MMU is turned on, the address returned for any symbol will always be
physical address. Thus, one can use adr_l instead of load_paddr.

create_table_entry() now takes an extra argument to denote if it is called after
the mmu is turned on or not.  If it is called with mmu on, then it uses
load_paddr to get the physical address of the page table symbol.

Signed-off-by: Ayan Kumar Halder <ayan.kumar.halder@amd.com>
---
Refer https://lists.archive.carbon60.com/xen/devel/682900 for details.

 xen/arch/arm/arm32/head.S | 35 ++++++++++++++++++++---------------
 1 file changed, 20 insertions(+), 15 deletions(-)

diff --git a/xen/arch/arm/arm32/head.S b/xen/arch/arm/arm32/head.S
index 33b038e7e0..bf442b0434 100644
--- a/xen/arch/arm/arm32/head.S
+++ b/xen/arch/arm/arm32/head.S
@@ -171,7 +171,7 @@ past_zImage:
 
         /* Using the DTB in the .dtb section? */
 .ifnes CONFIG_DTB_FILE,""
-        load_paddr r8, _sdtb
+        adr_l r8, _sdtb
 .endif
 
         /* Initialize the UART if earlyprintk has been enabled. */
@@ -213,7 +213,7 @@ GLOBAL(init_secondary)
         mrc   CP32(r1, MPIDR)
         bic   r7, r1, #(~MPIDR_HWID_MASK) /* Mask out flags to get CPU ID */
 
-        load_paddr r0, smp_up_cpu
+        adr_l r0, smp_up_cpu
         dsb
 2:      ldr   r1, [r0]
         cmp   r1, r7
@@ -406,6 +406,7 @@ ENDPROC(cpu_init)
  * tbl:     table symbol to point to
  * virt:    virtual address
  * lvl:     page-table level
+ * mmu_on:  is mmu on
  *
  * Preserves \virt
  * Clobbers r1 - r4
@@ -414,10 +415,14 @@ ENDPROC(cpu_init)
  *
  * Note that \virt should be in a register other than r1 - r4
  */
-.macro create_table_entry, ptbl, tbl, virt, lvl
+.macro create_table_entry, ptbl, tbl, virt, lvl, mmu_on
+    .if \mmu_on == 1
         load_paddr r4, \tbl
-        create_table_entry_from_paddr \ptbl, r4, \virt, \lvl
- .endm
+    .else
+        adr_l r4, \tbl
+    .endif
+    create_table_entry_from_paddr \ptbl, r4, \virt, \lvl
+.endm
 
 /*
  * Macro to create a mapping entry in \tbl to \paddr. Only mapping in 3rd
@@ -479,7 +484,7 @@ create_page_tables:
          * create_table_entry_paddr() will clobber the register storing
          * the physical address of the table to point to.
          */
-        load_paddr r5, boot_third
+        adr_l r5, boot_third
         mov_w r4, XEN_VIRT_START
 .rept XEN_NR_ENTRIES(2)
         mov   r0, r5                        /* r0 := paddr(l3 table) */
@@ -522,8 +527,8 @@ create_page_tables:
          * 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_table_entry boot_pgtable, boot_second_id, r9, 1, 0
+        create_table_entry boot_second_id, boot_third_id, r9, 2, 0
         create_mapping_entry boot_third_id, r9, r9
 
         /*
@@ -537,7 +542,7 @@ create_page_tables:
         bne   use_temporary_mapping
 
         mov_w r0, XEN_VIRT_START
-        create_table_entry boot_pgtable, boot_second, r0, 1
+        create_table_entry boot_pgtable, boot_second, r0, 1, 0
         mov   r12, #0                /* r12 := temporary mapping not created */
         mov   pc, lr
 
@@ -551,7 +556,7 @@ use_temporary_mapping:
 
         /* 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
+        create_table_entry boot_pgtable, boot_second, r0, 1, 0
 
         mov   r12, #1                /* r12 := temporary mapping created */
         mov   pc, lr
@@ -578,7 +583,7 @@ enable_mmu:
         flush_xen_tlb_local r0
 
         /* Write Xen's PT's paddr into the HTTBR */
-        load_paddr r0, boot_pgtable
+        adr_l r0, boot_pgtable
         mov   r1, #0                 /* r0:r1 is paddr (boot_pagetable) */
         mcrr  CP64(r0, r1, HTTBR)
         isb
@@ -658,7 +663,7 @@ switch_to_runtime_mapping:
 
         /* Map boot_second into boot_pgtable */
         mov_w r0, XEN_VIRT_START
-        create_table_entry boot_pgtable, boot_second, r0, 1
+        create_table_entry boot_pgtable, boot_second, r0, 1, 1
 
         /* Ensure any page table updates are visible before continuing */
         dsb   nsh
@@ -739,7 +744,7 @@ setup_fixmap:
 #endif
         /* Map fixmap into boot_second */
         mov_w r0, FIXMAP_ADDR(0)
-        create_table_entry boot_second, xen_fixmap, r0, 2
+        create_table_entry boot_second, xen_fixmap, r0, 2, 0
         /* Ensure any page table updates made above have occurred. */
         dsb   nshst
         /*
@@ -897,8 +902,8 @@ ENTRY(lookup_processor_type)
  */
 __lookup_processor_type:
         mrc   CP32(r0, MIDR)                /* r0 := our cpu id */
-        load_paddr r1, __proc_info_start
-        load_paddr r2, __proc_info_end
+        adr_l r1, __proc_info_start
+        adr_l r2, __proc_info_end
 1:      ldr   r3, [r1, #PROCINFO_cpu_mask]
         and   r4, r0, r3                    /* r4 := our cpu id with mask */
         ldr   r3, [r1, #PROCINFO_cpu_val]   /* r3 := cpu val in current proc info */
-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Wed Oct 25 17:35:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 17:35:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623139.970664 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvhmq-0008Lh-DG; Wed, 25 Oct 2023 17:35:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623139.970664; Wed, 25 Oct 2023 17:35: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 1qvhmq-0008La-AN; Wed, 25 Oct 2023 17:35:20 +0000
Received: by outflank-mailman (input) for mailman id 623139;
 Wed, 25 Oct 2023 17:35: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 1qvhmo-0008LO-DO; Wed, 25 Oct 2023 17:35: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 1qvhmo-0008HS-6p; Wed, 25 Oct 2023 17:35:18 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qvhmn-0006Ei-Ow; Wed, 25 Oct 2023 17:35:17 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qvhmn-00065S-OV; Wed, 25 Oct 2023 17:35: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=ewQ9qYDuSJBzuMXwwHn94Nnvh+lOXzAz06K9jHaojFM=; b=sLj1xdhUdS8zM5KrZ2KZfQXjOo
	yJ5UECIvDc9aLdCJJc42UMOq2UO52kLK8bXB8qKcZH301Eqcg1wcWgV8GfabJKfBCK1YdIGW+e1ck
	6frtI7uRwWZLEgWkRcRW7nd/9mZurMRFC5dYpgK5y+/3Fqanz0CDe3rKzrzfzP6lIdn4=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183526-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 183526: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=884ef984541c3e346d39e423fea53cf25066ff5a
X-Osstest-Versions-That:
    ovmf=1f21e11168dd6a071a92e41ecdffc7cd6e5f3f02
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 25 Oct 2023 17:35:17 +0000

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

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 884ef984541c3e346d39e423fea53cf25066ff5a
baseline version:
 ovmf                 1f21e11168dd6a071a92e41ecdffc7cd6e5f3f02

Last test of basis   183524  2023-10-25 10:14:26 Z    0 days
Testing same since   183526  2023-10-25 14:14:10 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Abner Chang <abner.chang@amd.com>
  Konstantin Aladyshev <aladyshev22@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
   1f21e11168..884ef98454  884ef984541c3e346d39e423fea53cf25066ff5a -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Wed Oct 25 17:59:29 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 17:59:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623145.970674 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qviA4-0004bh-BA; Wed, 25 Oct 2023 17:59:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623145.970674; Wed, 25 Oct 2023 17: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 1qviA4-0004ba-6k; Wed, 25 Oct 2023 17:59:20 +0000
Received: by outflank-mailman (input) for mailman id 623145;
 Wed, 25 Oct 2023 17:59: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=XAhw=GH=amd.com=Michal.Orzel@srs-se1.protection.inumbo.net>)
 id 1qviA2-0004bU-QR
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 17:59:18 +0000
Received: from NAM02-DM3-obe.outbound.protection.outlook.com
 (mail-dm3nam02on20610.outbound.protection.outlook.com
 [2a01:111:f400:7e83::610])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 35a3d8be-7360-11ee-9b0e-b553b5be7939;
 Wed, 25 Oct 2023 19:59:16 +0200 (CEST)
Received: from CY5PR10CA0013.namprd10.prod.outlook.com (2603:10b6:930:1c::16)
 by PH7PR12MB9223.namprd12.prod.outlook.com (2603:10b6:510:2f2::18)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.47; Wed, 25 Oct
 2023 17:59:12 +0000
Received: from CY4PEPF0000EE3E.namprd03.prod.outlook.com
 (2603:10b6:930:1c:cafe::48) by CY5PR10CA0013.outlook.office365.com
 (2603:10b6:930:1c::16) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.34 via Frontend
 Transport; Wed, 25 Oct 2023 17:59:12 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 CY4PEPF0000EE3E.mail.protection.outlook.com (10.167.242.18) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6933.15 via Frontend Transport; Wed, 25 Oct 2023 17:59: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.32; Wed, 25 Oct
 2023 12:59:11 -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.32; Wed, 25 Oct
 2023 12:59:11 -0500
Received: from [10.71.193.58] (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.32 via Frontend
 Transport; Wed, 25 Oct 2023 12:59: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: 35a3d8be-7360-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=T0kBuw4X1K9vD4qC6RekqvSHAdUQZUrH9FFez1p+dNAbQPjZFLyqZ8kWzizUfajYLD7LSp3WjOPIoIfrzsHEKZIQrkub5kj0GcKfc3l1CdiCTjzSl1fiTZcJFej9PfIM+ogZT/y2rybCwG/Kw22yvBKWkBT2+PV8iGVGxT+fQ4J5dYveKd9yG+byPkGH4SSGpgBGC04jgV8Qi7IeouhSTXV03Gb4ET3UVvBXtiGtTWRT8gNmNwlTqy1R0by5lsG/hxOmn1u1mfzJxlkX2/Rm+yfx84AQY60bsyxGsiFrkDWmCTiRzKvAC5rsxdYaq/71m9cyrGM9YwCy6RP21Hsh9A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=CUJAaqaEQoITOwXoOnoWyu97lWfwQAB2uYghglTAPMo=;
 b=UXd72RJ5jBh+lK2umohEhpgQ2rtboOhRQkJniceRgKRoRRfRGRRFw0N6gLskVlxWPWUh0zH73S4aovu/svyR7Ronn28xZw4gcdwzVtSu1zzh7qcy3/O5X9xG5bbT554UbqFCkyE+cNfIuJIO1LU1FlHtiEc5K/nWPwAmPjanWTckwr/mDHl1/nIBIOVYeghOdYvac6kd39QzOL16VJIMiTIFbkMaqRLAcCRRpN1ZYHXYY/OgHGNWFmsIpJEpVOeKZlfWLmC8USXjjGYU99WOTti0WRZYI024KivH1wtUifLQPNQisN2kskYi8vXVuRVeX+AE+Tq+DDys4NeOMjMAqQ==
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=CUJAaqaEQoITOwXoOnoWyu97lWfwQAB2uYghglTAPMo=;
 b=Mz0y5/qvwrDhn3SLCED1XgiGpqGRaE4YzJhBSU/3+I/6r6xhwyBbJa6MOF16eKUh7uIU8fWdAvXuLpqhm7jANFPbcY/WDSbk6+OreKW4HMjTyp1IysAVb3wcbn8dNPKcvYIdpDInqSKCZGhmKxCZZydtdxNomRwPgCQwaV95/L8=
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: <6c4c8023-1d6b-426d-9c9d-c45f01c9c5d2@amd.com>
Date: Wed, 25 Oct 2023 19:59:09 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN] xen/arm: arm32: Use adr_l instead of load_paddr for getting
 address of symbols
To: Ayan Kumar Halder <ayan.kumar.halder@amd.com>,
	<xen-devel@lists.xenproject.org>
CC: <sstabellini@kernel.org>, <julien@xen.org>, <bertrand.marquis@arm.com>
References: <20231025170304.2331922-1-ayan.kumar.halder@amd.com>
Content-Language: en-US
From: Michal Orzel <michal.orzel@amd.com>
In-Reply-To: <20231025170304.2331922-1-ayan.kumar.halder@amd.com>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 7bit
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: CY4PEPF0000EE3E:EE_|PH7PR12MB9223:EE_
X-MS-Office365-Filtering-Correlation-Id: 1fc49e22-6b46-4ca1-3c3a-08dbd5841810
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	JrkB5LvESRWxXkXYrzCy62oYGHna6i2sQRJYKkLa4W+gKAODCbvZgbKcw4ui6H63VIWvYG++3M42JlJEydTNx9EfuyfhMp/EFgDm1a9poq1AVvVebbupJvjfJrQ5YNWp3yyM6OojJ4wmq7nBG+B8kN9m5kA4qGtsPw4wvMg32FbqZjwUBuBaLdYYKrScgexi3sb19WY4SXWLDSBBwBFmnoRZrBs6c+RYYe5iB6UqhUIFOEzsTcObO2U27dVJKILITKGJHh11XEAmpNvx2vF1OOdIquoeV2+U6hRDXOpwLvQxby39llW6/KfzJ/t7fq60sYSpcb7i0GToBCRasT3UcV3Ia5XWj7+Ew8bSlmgBTG+TzOxvGHlJeTqUXwJIPoPquQ4Vx7+RtdaRwTCdpwZ9HipYwL96fUlk9h92muO1xA73MaoWKKafmAeIVJwaFI3/kVgf2DIPzM6kb6xdVhvEMANRjJxZ341A5Pqk8gUGLdMVvLsl4/63I76A27++0If9YSX2M5V5TQ2X9JNEqOPOSkNdWG2w+4+B+MoFCN+aieycxXNdGLNjfriLaAbWWfhIiU9c3WriuGSLMzhoFw7M9+07UupWgfi4L+0zDfR2O/3cfp+EcKOZtvvzpIvOXuJsPFdrxMRAfwIY3YM6glS5qhX25Evj8yh6OK1WeqPNz69I06BfVN4cbMt4VxKtiV2wJG+o2u3VBRgLZwZFKdaQOe0MxMZdkpGl/gCO3/dhY4zi30PMlyKT1Qvkhvkc8fQ8WyIU5iEL9jt9gBf43XmqzbUztFDs36cz7QOrHralIMCOr7gNt5EgRrYJ5+GKC/7J
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)(39860400002)(376002)(136003)(230922051799003)(451199024)(1800799009)(186009)(82310400011)(64100799003)(36840700001)(40470700004)(46966006)(426003)(40480700001)(31686004)(40460700003)(31696002)(81166007)(36756003)(316002)(47076005)(356005)(36860700001)(2616005)(8936002)(336012)(70586007)(86362001)(478600001)(26005)(70206006)(2906002)(54906003)(16576012)(5660300002)(53546011)(44832011)(4744005)(4326008)(82740400003)(41300700001)(8676002)(110136005)(36900700001)(43740500002);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Oct 2023 17:59:11.8236
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 1fc49e22-6b46-4ca1-3c3a-08dbd5841810
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:
	CY4PEPF0000EE3E.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7PR12MB9223

Hi Ayan,

On 25/10/2023 19:03, Ayan Kumar Halder wrote:
> Before the MMU is turned on, the address returned for any symbol will always be
> physical address. Thus, one can use adr_l instead of load_paddr.
> 
> create_table_entry() now takes an extra argument to denote if it is called after
> the mmu is turned on or not.  If it is called with mmu on, then it uses
> load_paddr to get the physical address of the page table symbol.
I wonder if we need this extra complexity.
Can we just remove load_paddr macro completely (I have a plan to do this for arm64 mmu head.S)
and open code it in create_table_entry? I don't think there is any benefit in
having the if/else there to use either load_paddr or adr_l. This function will also go
into arm32 mmu head.S.

~Michal


From xen-devel-bounces@lists.xenproject.org Wed Oct 25 18:06:53 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 18:06:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623151.970694 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qviHF-0006mj-Ce; Wed, 25 Oct 2023 18:06:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623151.970694; Wed, 25 Oct 2023 18:06: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 1qviHF-0006mc-9S; Wed, 25 Oct 2023 18:06:45 +0000
Received: by outflank-mailman (input) for mailman id 623151;
 Wed, 25 Oct 2023 18:06: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=XWkD=GH=citrix.com=prvs=6553ec402=Andrew.Cooper3@srs-se1.protection.inumbo.net>)
 id 1qviHE-0006Zm-02
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 18:06:44 +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 3f4e719d-7361-11ee-98d5-6d05b1d4d9a1;
 Wed, 25 Oct 2023 20:06: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: 3f4e719d-7361-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1698257202;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=PrWVaHB2rEiz5xABgTcH+1DhAHUFJoymf4nqaft0ID8=;
  b=fGtB0hcoK68UbRQaMlQyUE1DsFpUujdrjkZDE5XgNIz+HXHy85dZbjqH
   W9vARzju+94/QcmDBxROD0X2TAPQvzz/rvRYqn0AdJ0GmdryLbXr+YK/Y
   d01eBjWM6jURAu/9FP1HcjrDXOASOiiCQNoKe6sDx+vrOfBsbAafduHWD
   0=;
X-CSE-ConnectionGUID: o+bZL5mCRnmfqLITOaXR1g==
X-CSE-MsgGUID: QolnCxsJRMuIgBbPu+rrVQ==
Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
X-SBRS: 4.0
X-MesageID: 126508435
X-Ironport-Server: esa2.hc3370-68.iphmx.com
X-Remote-IP: 162.221.159.70
X-Policy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:qSkReKkKnuX+Mn+4Ehw4dv7o5gyyJkRdPkR7XQ2eYbSJt1+Wr1Gzt
 xIZDG6Bb6mDM2T8ftgjPY+w9kpQ7ZeBm9QxSlNv+y82RSMWpZLJC+rCIxarNUt+DCFhoGFPt
 JxCN4aafKjYaleG+39B55C49SEUOZmgH+e6UKicfHkpGWeIcQ954Tp7gek1n4V0ttawBgKJq
 LvartbWfVSowFaYCEpNg064gE0p5K+aVA8w5ARkPqkT5gKGzRH5MbpETU2PByqgKmVrNrbSq
 9brlNmR4m7f9hExPdKp+p6TnpoiG+O60aCm0xK6aoD66vRwjnVaPpUTbZLwXXx/mTSR9+2d/
 f0W3XCGpaXFCYWX8AgVe0Ew/yiTpsSq8pefSZS0mZT7I0Er7xIAahihZa07FdRwxwp5PY1B3
 ftbIgIpMxWoveSzzqufa9VLj/QZdca+aevzulk4pd3YJfMvQJSFSKTW/95Imjw3g6iiH96HO
 ZBfM2A2Kk2dMlsQYj/7C7pn9AusrlD5fydVtxS+oq0v7nKI5AdwzKLsIJzefdniqcB9xxzG+
 zqWoz+kav0cHOWYzTyu4mmOvMrSvCzRUroPV6eiyMc/1TV/wURMUUZLBDNXu8KRmkO4Ht5SN
 UEQ0i4vtrQpslymSMHnWB+1q2LCuQQTM/JyOeAn7ACGyoLP/h2UQGMDS1Zpd9gOpMIwAzsw2
 TehhM/kCzVpt/uOVXuX+7OQrDWzESEQISkJYipsZRsI5djq5ps6gRPGQt9gF7Odh9j5Xzr3x
 li3QDMW3utJy5RRjuPioAGB3GrESoX1ohAd4UbdbEb46yhDYourfqiJ1X/S3cwZI9PMJrWeh
 0Toi/Ry/chXU8DdznTREbRTdF26z6zbamGC2zaDC7Fkp2z3pSP5FWxFyGsmTHqFJProbtMAj
 KX7kgRL7ZsbB2OwbKl4eOpd4OxxlvC/TLwJuh3OB+eig6SdlyfdpUmCnWbKgwjQfLEEyMnTw
 6uzf8e2Fmo9Aq961jewTOp1+eZ1l3BnmjmJGMGgn0nPPV+iiJi9E+lt3LymN71R0U95iF+Nr
 4Y32zWikH2zr9ESkgGIqNVOfDjm3FAwBIzsqtw/S9Nv1jFOQTl7Y9eImO9JRmCQt/gN/gs+1
 i3nCxAwJZuWrSGvFDhmnVg8OOqxAMwu8yNT0O5FFQ/A5kXPqL2HtM83H6bbt5F9nAC/5ZaYl
 8U4Rvg=
IronPort-HdrOrdr: A9a23:iTVoFqn2JJEge0IPxMLHY+Q0vFbpDfII3DAbv31ZSRFFG/Fw9v
 re/sjzsCWftN9/YgBCpTntAtj5fZr8z+8T3WByB8bYYOHm0FHYVb2KhLGKq1aBJ8SXzI9gPM
 xbAsxD4bPLfD1HZAXBjDVQ0exM/DBKys+VbJzlvhFQpMhRBZ1I6wd8BkKFHlZtRA9AbKBJbq
 ah2g==
X-Talos-CUID: 9a23:91mncGAsUnHsp8H6Ey4k/nwwR8UOSHvYwm70AnOfAFZTEbLAHA==
X-Talos-MUID: =?us-ascii?q?9a23=3A83+6ogy+SBx8lL4nQ1hZ80J0ZFqaqJ2pDEYmgY4?=
 =?us-ascii?q?kgeyZFCNaMQ+Azy6tfLZyfw=3D=3D?=
X-IronPort-AV: E=Sophos;i="6.03,250,1694750400"; 
   d="scan'208";a="126508435"
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>, Alejandro Vallejo
	<alejandro.vallejo@cloud.com>, Stefano Stabellini
	<stefano.stabellini@amd.com>, Xenia Ragiadakou <xenia.ragiadakou@amd.com>
Subject: [PATCH 2/2] x86/Kconfig: Introduce CONFIG_{AMD,INTEL} and conditionalise ucode
Date: Wed, 25 Oct 2023 19:06:30 +0100
Message-ID: <20231025180630.3230010-3-andrew.cooper3@citrix.com>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <20231025180630.3230010-1-andrew.cooper3@citrix.com>
References: <20231025180630.3230010-1-andrew.cooper3@citrix.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit

We eventually want to be able to build a stripped down Xen for a single
platform.  Make a start with CONFIG_{AMD,INTEL} (hidden behind EXPERT, but
available to randconfig), and adjust the microcode logic.

No practical 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>
CC: Alejandro Vallejo <alejandro.vallejo@cloud.com>
CC: Stefano Stabellini <stefano.stabellini@amd.com>
CC: Xenia Ragiadakou <xenia.ragiadakou@amd.com>

I've intentionally ignored the other vendors for now.  They can be put into
Kconfig by whomever figures out the actual dependencies between their init
routines.

CC Stefano/Xenia as I know you want to go down this line, but I don't recall
patches to this effect yet.
---
 xen/arch/x86/Kconfig                 |  2 ++
 xen/arch/x86/Kconfig.cpu             | 22 ++++++++++++++++++++++
 xen/arch/x86/cpu/microcode/Makefile  |  4 ++--
 xen/arch/x86/cpu/microcode/private.h |  9 +++++++++
 4 files changed, 35 insertions(+), 2 deletions(-)
 create mode 100644 xen/arch/x86/Kconfig.cpu

diff --git a/xen/arch/x86/Kconfig b/xen/arch/x86/Kconfig
index eac77573bd75..d9eacdd7e0fa 100644
--- a/xen/arch/x86/Kconfig
+++ b/xen/arch/x86/Kconfig
@@ -49,6 +49,8 @@ config HAS_CC_CET_IBT
 
 menu "Architecture Features"
 
+source "arch/x86/Kconfig.cpu"
+
 source "arch/Kconfig"
 
 config PV
diff --git a/xen/arch/x86/Kconfig.cpu b/xen/arch/x86/Kconfig.cpu
new file mode 100644
index 000000000000..0ce09b292045
--- /dev/null
+++ b/xen/arch/x86/Kconfig.cpu
@@ -0,0 +1,22 @@
+menu "Supported processor vendors"
+	visible if EXPERT
+
+config AMD
+	bool "AMD"
+        default y
+        help
+          Detection, tunings and quirks for AMD processors.
+
+	  May be turned off in builds targetting other vendors.  Otherwise,
+	  must be enabled for Xen to work suitably on AMD processors.
+
+config INTEL
+	bool "Intel"
+        default y
+        help
+          Detection, tunings and quirks for Intel processors.
+
+	  May be turned off in builds targetting other vendors.  Otherwise,
+	  must be enabled for Xen to work suitably on Intel processors.
+
+endmenu
diff --git a/xen/arch/x86/cpu/microcode/Makefile b/xen/arch/x86/cpu/microcode/Makefile
index aae235245b06..30d600544f45 100644
--- a/xen/arch/x86/cpu/microcode/Makefile
+++ b/xen/arch/x86/cpu/microcode/Makefile
@@ -1,3 +1,3 @@
-obj-y += amd.o
+obj-$(CONFIG_AMD) += amd.o
 obj-y += core.o
-obj-y += intel.o
+obj-$(CONFIG_INTEL) += intel.o
diff --git a/xen/arch/x86/cpu/microcode/private.h b/xen/arch/x86/cpu/microcode/private.h
index b58611e908aa..da556fe5060a 100644
--- a/xen/arch/x86/cpu/microcode/private.h
+++ b/xen/arch/x86/cpu/microcode/private.h
@@ -70,7 +70,16 @@ struct microcode_ops {
  * support available) and (not) ops->apply_microcode (i.e. read only).
  * Otherwise, all hooks must be filled in.
  */
+#ifdef CONFIG_AMD
 void ucode_probe_amd(struct microcode_ops *ops);
+#else
+static inline void ucode_probe_amd(struct microcode_ops *ops) {}
+#endif
+
+#ifdef CONFIG_INTEL
 void ucode_probe_intel(struct microcode_ops *ops);
+#else
+static inline void ucode_probe_intel(struct microcode_ops *ops) {}
+#endif
 
 #endif /* ASM_X86_MICROCODE_PRIVATE_H */
-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Wed Oct 25 18:06:53 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 18:06:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623152.970700 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qviHF-0006qJ-Ot; Wed, 25 Oct 2023 18:06:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623152.970700; Wed, 25 Oct 2023 18:06: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 1qviHF-0006qA-J7; Wed, 25 Oct 2023 18:06:45 +0000
Received: by outflank-mailman (input) for mailman id 623152;
 Wed, 25 Oct 2023 18:06: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=XWkD=GH=citrix.com=prvs=6553ec402=Andrew.Cooper3@srs-se1.protection.inumbo.net>)
 id 1qviHE-0006Xc-FY
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 18:06:44 +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 3f0121be-7361-11ee-9b0e-b553b5be7939;
 Wed, 25 Oct 2023 20:06: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: 3f0121be-7361-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1698257202;
  h=from:to:cc:subject:date:message-id:mime-version:
   content-transfer-encoding;
  bh=5cy4xAaZ9wU6f8Lv8BGywX/DUb3HlXjtWjNK6ZZueZA=;
  b=OeHQ2MKQREkA/UGYsIIv7NpjCgG2Q29swAj6cEna0Jh/6CQJhpN83LNZ
   lOgbwyxBHjUDxzG/MTNALNkS0A+Tt7lWpAWV8EMP/5FpU1fquwVWRP9E6
   azadmOC9/efrRYC6Rp8+jnlztgwtmaFjVQbDbjgG6PDnEeiYVp4i28LQK
   s=;
X-CSE-ConnectionGUID: xJGWuWySThuuvM6tKxsh6g==
X-CSE-MsgGUID: 9ULxjClsTSKiCqXxHU2zWQ==
Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
X-SBRS: 4.0
X-MesageID: 126635890
X-Ironport-Server: esa3.hc3370-68.iphmx.com
X-Remote-IP: 162.221.159.70
X-Policy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:128iV6Dr7EzMXhVW/xrjw5YqxClBgxIJ4kV8jS/XYbTApDpz0zMPm
 2tKWTrSOauKMWr8edolYI+x9k9QvZCEzYJkQQY4rX1jcSlH+JHPbTi7wuUcHAvJd5GeExg3h
 yk6QoOdRCzhZiaE/n9BCpC48D8kk/nOH+KgYAL9EngZbRd+Tys8gg5Ulec8g4p56fC0GArIs
 t7pyyHlEAbNNwVcbCRMsMpvlDs15K6p4WtC4wRkDRx2lAS2e0c9Xcp3yZ6ZdxMUcqEMdsamS
 uDKyq2O/2+x13/B3fv8z94X2mVTKlLjFVDmZkh+AsBOsTAbzsAG6Y4pNeJ0VKtio27hc+ada
 jl6ncfYpQ8BZsUgkQmGOvVSO3kW0aZuoNcrLZUj2CA6IoKvn3bEmp1T4E8K0YIw6sRYPnxx5
 MckKC0QcDXdm8Gm27LlRbw57igjBJGD0II3v3hhyXfSDOo8QICFSKLPjTNa9G5u3IYUR6+YP
 pdIL2U3BPjDS0Qn1lM/IZQyhuq3wFL4dCVVsgm9rqsr+WnDigd21dABNfKMIILUHpgFzx7wS
 mTurlndEhMxMMej8hmE2Wucls/yxzHEYddHfFG/3qEz2wDCroAJMzUGWF3+rfSnh0qWX9NEN
 1dS6icotbI19kGgUp/6RRLQiFyuswMYWtFQO/Yn8wzLwa3Riy6GAkAUQzgHb8Yp3OctWTEk3
 1mO2cj1DDZitLmUT3O1/7KY6zi1PEA9PWIEZCZCVwIK4tDvqYI0kzrGS9olG6mw5uAZAhmpn
 WrM9nJnwexO3IhUj81X4GwrnRq8hLf2UzEk3TnXQ3+7y11lR56+Z9KnvA2zAel7EGqJcrWQl
 CFaypjEtLxfXM/leD+lGrtXQO/zjxqRGHiM2QQxQsNJGyGFoSbLQGxG3N1pyK6F2O4vfiXgZ
 AfooRlQ4pBIVJdBRfQsO93oYyjGILKJKDgEahw3RoAXCnSJXFXblByCnGbJt4wXrGAikLskJ
 bCQetu2AHARBMxPlWTnF75Ci+V2l3tumAs/oKwXKTz9j9Jyg1bMFN843KamNLhlvMtoXi2Om
 zqgCyd640oGC7CvCsUm2YUSMUoLPRAGOHwCkOQOLrTrClM/RAkc5wr5netJl3pNw/4EyY8lP
 xiVBidl9bYIrSKXcFvXMCE9OdsCn/9X9BoGAMDlBn7ws1BLXGplxPx3m0cfFVX/yNFe8A==
IronPort-HdrOrdr: A9a23:MppJMKEh7c86V5jPpLqEzMeALOsnbusQ8zAXPiFKOH5om6mj/f
 xG885rtiMc5AxhIE3IuOrwX5VoI0msjqKc4OEqTM6ftWDd0QPCTL2KhbGC/9SKIVybygcy79
 YET0G8MrHN5JpB4PoSLDPWLz9a+qjgzElgv4nj5nNsSQ0vdK169Qd+DW+gYzdLeDU=
X-Talos-CUID: 9a23:CdCY/m8Xo5JSIAs1FFqVv142Nf84TWzm8HfNPlGdV3pKWKaVF1DFrQ==
X-Talos-MUID: =?us-ascii?q?9a23=3A+qaxNQ3E4Kd9lQ4bhknvDNrIlTUjspmKGEImlY4?=
 =?us-ascii?q?6gOqFHjVAKxeg1iaIe9py?=
X-IronPort-AV: E=Sophos;i="6.03,250,1694750400"; 
   d="scan'208";a="126635890"
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>, Alejandro Vallejo
	<alejandro.vallejo@cloud.com>, Stefano Stabellini
	<stefano.stabellini@amd.com>, Xenia Ragiadakou <xenia.ragiadakou@amd.com>
Subject: [PATCH 0/2] x86: ucode and CPU Kconfig
Date: Wed, 25 Oct 2023 19:06:28 +0100
Message-ID: <20231025180630.3230010-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

A fix to the recent Ucode changes which I ultimately didn't insist on owing to
the Xen 4.18 timeline, and enough of the start on the CPU Kconfig to allow
randconfig to check the boundary.

There are many more ucode fixes to come...

Andrew Cooper (2):
  x86/ucode: Move vendor specifics back out of early_microcode_init()
  x86/Kconfig: Introduce CONFIG_{AMD,INTEL} and conditionalise ucode

 xen/arch/x86/Kconfig                 |  2 ++
 xen/arch/x86/Kconfig.cpu             | 22 ++++++++++++++++++++++
 xen/arch/x86/cpu/microcode/Makefile  |  4 ++--
 xen/arch/x86/cpu/microcode/amd.c     | 10 +++++++++-
 xen/arch/x86/cpu/microcode/core.c    | 16 +++++-----------
 xen/arch/x86/cpu/microcode/intel.c   | 12 ++++++++++--
 xen/arch/x86/cpu/microcode/private.h | 23 ++++++++++++++++++-----
 7 files changed, 68 insertions(+), 21 deletions(-)
 create mode 100644 xen/arch/x86/Kconfig.cpu

-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Wed Oct 25 18:06:53 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 18:06:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623150.970684 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qviHD-0006Xp-5K; Wed, 25 Oct 2023 18:06:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623150.970684; Wed, 25 Oct 2023 18:06: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 1qviHD-0006Xi-1o; Wed, 25 Oct 2023 18:06:43 +0000
Received: by outflank-mailman (input) for mailman id 623150;
 Wed, 25 Oct 2023 18:06: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=XWkD=GH=citrix.com=prvs=6553ec402=Andrew.Cooper3@srs-se1.protection.inumbo.net>)
 id 1qviHC-0006Xc-A8
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 18:06:42 +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 3d48b757-7361-11ee-9b0e-b553b5be7939;
 Wed, 25 Oct 2023 20:06: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: 3d48b757-7361-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1698257199;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=dhzaHuLiBOH3Th4mbBAgfvjFhVkx5Tp4CfMsMBCY6ic=;
  b=eGCEhPSghhUvJgUkhrC06qJpZ7jZqZPprikUrHpjWq9jxJTLkQ/Y3V69
   ykux8jjWeQ4YbPmPKd601tJQc1MG/u7i6a9sztiQiaRtqAvzL12IUiRum
   V99oy2kZ9R1Q7BDkCZl4HZAWyVlA3b3kNpv2WxDun8juEg2OpzI2Nq0ze
   E=;
X-CSE-ConnectionGUID: rPmFhqRFQHKpTSN13c+maA==
X-CSE-MsgGUID: gmw5g9YcQEWLi4TS+rOTEg==
Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
X-SBRS: 4.0
X-MesageID: 126508414
X-Ironport-Server: esa2.hc3370-68.iphmx.com
X-Remote-IP: 162.221.159.70
X-Policy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:XqcrjKJbvsrrWwVfFE+R45UlxSXFcZb7ZxGr2PjKsXjdYENSgTUOm
 jMWDGCOaKnYZGT1eN8jO4Sx8ExSvcKHytNhGVFlqX01Q3x08seUXt7xwmUcnc+xBpaaEB84t
 ZV2hv3odp1coqr0/0/1WlTZhSAhk/nOHvylULKs1hlZHWdMUD0mhQ9oh9k3i4tphcnRKw6Ws
 Jb5rta31GWNglaYCUpKrfrYwP9TlK6q4mhB5gZjPaojUGL2zBH5MrpOfcldEFOgKmVkNrbSb
 /rOyri/4lTY838FYj9yuu+mGqGiaue60Tmm0hK6aYD76vRxjnVaPpIAHOgdcS9qZwChxLid/
 jnvWauYEm/FNoWU8AgUvoIx/ytWZcWq85efSZSzXFD6I+QrvBIAzt03ZHzaM7H09c5tOWRg9
 eUiBgktTQi/vMTvm7n4T+BF05FLwMnDZOvzu1llxDDdS/0nXYrCU+PB4towMDUY354UW6yEP
 oxANGspM0yojx5nYz/7DLoXmuuyi2a5WDpfsF+P/oI84nTJzRw327/oWDbQUoXQG5gNzhrB+
 goq+Uz2Bw5HO42uwgOozVat2tP03jncZK8dQejQGvlC3wTImz175ActfUu2p7y1h1CzX/pbK
 lcI4Ww+oK4q7kupQ9LhGRqirxasnDQRRt5RGO0S8xyWx+zf5APxLncAZi5MbpohrsBebSc22
 1GAmdSvHiBmurCRTXOb95+dqD/0Mi8QRUcSaCkFRE0f6tbiqY06jRXSZt9mHOi+ididJN3r6
 2nU9m5k3exV1JNakfrjlbzav96yjoLxSyA1/z/5Z0KG9j9CQtf+bM+t4HGOuJ6sM72lokm9U
 GkswpbPvLpWUcDcykRhU81XQuv1uazt3Cn0xA43Rcd8rVxB7lb5JehtDCdCyFCF2yruURTue
 kbX8ThJ/p5VM2DCgURfONnpVJ1CIUQND73YuhHogjlmOMEZmPevpn0GWKJp9zmFfLIQua8+I
 4yHVs2nEGwXD69qpBLvGbZNiOBxnH1vnjOOLXwe8/hB+eDADJJyYe5YWGZik8hjtP/UyOkr2
 4032zS2J+V3D7SlP3i/HX87JlEWN3krba3LRzhsXrfbeGJOQTh9Y8I9NJt9I+SJaYwJzLaXl
 px8M2cEoGfCaYrvdlXTNC05Oe2+NXu9xFpiVRER0Z+T8yBLSe6SAG03LsBfkWUPnAC78cNJc
 g==
IronPort-HdrOrdr: A9a23:3fn7D68xjamoZFQbgw9uk+D8I+orL9Y04lQ7vn2ZKCYlEPBw8v
 rFoB11726WtN98YgBZpTmgAtjmfZq/z+8P3WERVY3SJTUO0VHAROoD0WKL+Vzd8kbFh4pgPM
 lbAs1D4R7LYWSST/yW3OB1KbkdKaK8gcaVbC7loUtFSQFvZ+V+4xxiCgCde3cGPjV7OQ==
X-Talos-CUID: 9a23:8Lb5BmBvXv8Xs9b6EzNf8WAUA/oLS13+1EvrBRbjAiVsQZTAHA==
X-Talos-MUID: =?us-ascii?q?9a23=3AYAuH8Q619+Zt1u/O6fspuh4Lxoxn5rvzBxE8mqw?=
 =?us-ascii?q?rhO2FaRBLeC26sBm4F9o=3D?=
X-IronPort-AV: E=Sophos;i="6.03,250,1694750400"; 
   d="scan'208";a="126508414"
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>, Alejandro Vallejo
	<alejandro.vallejo@cloud.com>, Stefano Stabellini
	<stefano.stabellini@amd.com>, Xenia Ragiadakou <xenia.ragiadakou@amd.com>
Subject: [PATCH 1/2] x86/ucode: Move vendor specifics back out of early_microcode_init()
Date: Wed, 25 Oct 2023 19:06:29 +0100
Message-ID: <20231025180630.3230010-2-andrew.cooper3@citrix.com>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <20231025180630.3230010-1-andrew.cooper3@citrix.com>
References: <20231025180630.3230010-1-andrew.cooper3@citrix.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit

I know it was me who dropped microcode_init_{intel,amd}() in c/s
dd5f07997f29 ("x86/ucode: Rationalise startup and family/model checks"), but
times have moved on.  We've gained new conditional support, and a wish to
compile-time specialise Xen to single platform.

(Re)introduce ucode_probe_{amd,intel}() and move the recent vendor specific
additions back out.  Encode the conditional support state in the NULL-ness of
hooks as it's already done on other paths.

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>
CC: Alejandro Vallejo <alejandro.vallejo@cloud.com>
CC: Stefano Stabellini <stefano.stabellini@amd.com>
CC: Xenia Ragiadakou <xenia.ragiadakou@amd.com>

CC Stefano/Xenia as I know you want to go down this line, but I don't recall
patches in this area yet.
---
 xen/arch/x86/cpu/microcode/amd.c     | 10 +++++++++-
 xen/arch/x86/cpu/microcode/core.c    | 16 +++++-----------
 xen/arch/x86/cpu/microcode/intel.c   | 12 ++++++++++--
 xen/arch/x86/cpu/microcode/private.h | 16 ++++++++++------
 4 files changed, 34 insertions(+), 20 deletions(-)

diff --git a/xen/arch/x86/cpu/microcode/amd.c b/xen/arch/x86/cpu/microcode/amd.c
index 75fc84e445ce..17e68697d5bf 100644
--- a/xen/arch/x86/cpu/microcode/amd.c
+++ b/xen/arch/x86/cpu/microcode/amd.c
@@ -434,9 +434,17 @@ static struct microcode_patch *cf_check cpu_request_microcode(
     return patch;
 }
 
-const struct microcode_ops __initconst_cf_clobber amd_ucode_ops = {
+static const struct microcode_ops __initconst_cf_clobber amd_ucode_ops = {
     .cpu_request_microcode            = cpu_request_microcode,
     .collect_cpu_info                 = collect_cpu_info,
     .apply_microcode                  = apply_microcode,
     .compare_patch                    = compare_patch,
 };
+
+void __init ucode_probe_amd(struct microcode_ops *ops)
+{
+    if ( boot_cpu_data.x86 < 0x10 )
+        return;
+
+    *ops = amd_ucode_ops;
+}
diff --git a/xen/arch/x86/cpu/microcode/core.c b/xen/arch/x86/cpu/microcode/core.c
index 65ebeb50deea..09575b19d6dc 100644
--- a/xen/arch/x86/cpu/microcode/core.c
+++ b/xen/arch/x86/cpu/microcode/core.c
@@ -847,25 +847,19 @@ int __init early_microcode_init(unsigned long *module_map,
 {
     const struct cpuinfo_x86 *c = &boot_cpu_data;
     int rc = 0;
-    bool can_load = false;
 
     switch ( c->x86_vendor )
     {
     case X86_VENDOR_AMD:
-        if ( c->x86 >= 0x10 )
-        {
-            ucode_ops = amd_ucode_ops;
-            can_load = true;
-        }
+        ucode_probe_amd(&ucode_ops);
         break;
 
     case X86_VENDOR_INTEL:
-        ucode_ops = intel_ucode_ops;
-        can_load = intel_can_load_microcode();
+        ucode_probe_intel(&ucode_ops);
         break;
     }
 
-    if ( !ucode_ops.apply_microcode )
+    if ( !ucode_ops.collect_cpu_info )
     {
         printk(XENLOG_INFO "Microcode loading not available\n");
         return -ENODEV;
@@ -882,10 +876,10 @@ int __init early_microcode_init(unsigned long *module_map,
      *
      * Take the hint in either case and ignore the microcode interface.
      */
-    if ( this_cpu(cpu_sig).rev == ~0 || !can_load )
+    if ( !ucode_ops.apply_microcode || this_cpu(cpu_sig).rev == ~0 )
     {
         printk(XENLOG_INFO "Microcode loading disabled due to: %s\n",
-               can_load ? "rev = ~0" : "HW toggle");
+               ucode_ops.apply_microcode ? "HW toggle" : "rev = ~0");
         ucode_ops.apply_microcode = NULL;
         return -ENODEV;
     }
diff --git a/xen/arch/x86/cpu/microcode/intel.c b/xen/arch/x86/cpu/microcode/intel.c
index 060c529a6e5d..96f34b336b21 100644
--- a/xen/arch/x86/cpu/microcode/intel.c
+++ b/xen/arch/x86/cpu/microcode/intel.c
@@ -385,7 +385,7 @@ static struct microcode_patch *cf_check cpu_request_microcode(
     return patch;
 }
 
-bool __init intel_can_load_microcode(void)
+static bool __init can_load_microcode(void)
 {
     uint64_t mcu_ctrl;
 
@@ -398,9 +398,17 @@ bool __init intel_can_load_microcode(void)
     return !(mcu_ctrl & MCU_CONTROL_DIS_MCU_LOAD);
 }
 
-const struct microcode_ops __initconst_cf_clobber intel_ucode_ops = {
+static const struct microcode_ops __initconst_cf_clobber intel_ucode_ops = {
     .cpu_request_microcode            = cpu_request_microcode,
     .collect_cpu_info                 = collect_cpu_info,
     .apply_microcode                  = apply_microcode,
     .compare_patch                    = compare_patch,
 };
+
+void __init ucode_probe_intel(struct microcode_ops *ops)
+{
+    *ops = intel_ucode_ops;
+
+    if ( !can_load_microcode() )
+        ops->apply_microcode = NULL;
+}
diff --git a/xen/arch/x86/cpu/microcode/private.h b/xen/arch/x86/cpu/microcode/private.h
index d80787205a5e..b58611e908aa 100644
--- a/xen/arch/x86/cpu/microcode/private.h
+++ b/xen/arch/x86/cpu/microcode/private.h
@@ -60,13 +60,17 @@ struct microcode_ops {
         const struct microcode_patch *new, const struct microcode_patch *old);
 };
 
-/**
- * Checks whether we can perform microcode updates on this Intel system
+/*
+ * Microcode loading falls into one of 3 states.
+ *   - No support at all
+ *   - Read-only (locked by firmware, or we're virtualised)
+ *   - Loading available
  *
- * @return True iff the microcode update facilities are enabled
+ * These are encoded by (not) filling in ops->collect_cpu_info (i.e. no
+ * support available) and (not) ops->apply_microcode (i.e. read only).
+ * Otherwise, all hooks must be filled in.
  */
-bool intel_can_load_microcode(void);
-
-extern const struct microcode_ops amd_ucode_ops, intel_ucode_ops;
+void ucode_probe_amd(struct microcode_ops *ops);
+void ucode_probe_intel(struct microcode_ops *ops);
 
 #endif /* ASM_X86_MICROCODE_PRIVATE_H */
-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Wed Oct 25 18:20:30 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 18:20:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623162.970715 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qviUO-0002u5-Se; Wed, 25 Oct 2023 18:20:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623162.970715; Wed, 25 Oct 2023 18:20: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 1qviUO-0002ty-NQ; Wed, 25 Oct 2023 18:20:20 +0000
Received: by outflank-mailman (input) for mailman id 623162;
 Wed, 25 Oct 2023 18:20: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=BGX2=GH=redhat.com=eblake@srs-se1.protection.inumbo.net>)
 id 1qviUM-0002ts-Th
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 18:20:18 +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 256d4f75-7363-11ee-98d5-6d05b1d4d9a1;
 Wed, 25 Oct 2023 20:20:17 +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.3,
 cipher=TLS_AES_256_GCM_SHA384) id us-mta-269-MD8IH2-EMh6IsUtGtqLM8Q-1; Wed,
 25 Oct 2023 14:20:12 -0400
Received: from smtp.corp.redhat.com (int-mx08.intmail.prod.int.rdu2.redhat.com
 [10.11.54.8])
 (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 mimecast-mx02.redhat.com (Postfix) with ESMTPS id 9DC1E3822E9C;
 Wed, 25 Oct 2023 18:20:11 +0000 (UTC)
Received: from redhat.com (unknown [10.2.16.69])
 by smtp.corp.redhat.com (Postfix) with ESMTPS id 71065C1596D;
 Wed, 25 Oct 2023 18:20:09 +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: 256d4f75-7363-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
	s=mimecast20190719; t=1698258016;
	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=Kbl9Vh12iHFjO5JwnG1NE2HG/x04t0/PepbwFFk28Kc=;
	b=G2LNUbCMHb9IdymxqJkwPLKWZ6iNo4JMIJGERWEHBpOjuzx5C78DKA0GYRn1Nz/KNzz1GW
	hHUMYzTa6srEWwNZ0HnpAWRL2gsMf6udVL4f9qe90DhD0PD6j6SeK5ACp+uzWDtZdQ6GXv
	fgpTCO7PZBk8bfZx1twzi4trokDQRHg=
X-MC-Unique: MD8IH2-EMh6IsUtGtqLM8Q-1
Date: Wed, 25 Oct 2023 13:20:07 -0500
From: Eric Blake <eblake@redhat.com>
To: David Woodhouse <dwmw2@infradead.org>
Cc: qemu-devel@nongnu.org, Kevin Wolf <kwolf@redhat.com>, 
	Hanna Reitz <hreitz@redhat.com>, Stefano Stabellini <sstabellini@kernel.org>, 
	Anthony Perard <anthony.perard@citrix.com>, Paul Durrant <paul@xen.org>, 
	=?utf-8?Q?Marc-Andr=C3=A9?= Lureau <marcandre.lureau@redhat.com>, Paolo Bonzini <pbonzini@redhat.com>, 
	"Michael S. Tsirkin" <mst@redhat.com>, Marcel Apfelbaum <marcel.apfelbaum@gmail.com>, 
	Richard Henderson <richard.henderson@linaro.org>, Eduardo Habkost <eduardo@habkost.net>, 
	Jason Wang <jasowang@redhat.com>, Marcelo Tosatti <mtosatti@redhat.com>, qemu-block@nongnu.org, 
	xen-devel@lists.xenproject.org, kvm@vger.kernel.org, Bernhard Beschow <shentey@gmail.com>, 
	Joel Upham <jupham125@gmail.com>
Subject: Re: [PATCH v3 28/28] docs: update Xen-on-KVM documentation
Message-ID: <6vbpkrebc7fpypbv2t7jbs7m3suxwbqqykeomzfxpenjj2sogd@rphcppcl4inl>
References: <20231025145042.627381-1-dwmw2@infradead.org>
 <20231025145042.627381-29-dwmw2@infradead.org>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <20231025145042.627381-29-dwmw2@infradead.org>
User-Agent: NeoMutt/20231006
X-Scanned-By: MIMEDefang 3.4.1 on 10.11.54.8

On Wed, Oct 25, 2023 at 03:50:42PM +0100, David Woodhouse wrote:
> From: David Woodhouse <dwmw@amazon.co.uk>
> 
> Add notes about console and network support, and how to launch PV guests.
> Clean up the disk configuration examples now that that's simpler, and
> remove the comment about IDE unplug on q35/AHCI now that it's fixed.
> 
> Also update stale avocado test filename in MAINTAINERS.
> 
> Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
> ---
> +Xen paravirtual devices
> +-----------------------
> +
> +The Xen PCI platform device is enabled automatically for a Xen guest. This
> +allows a guest to unplug all emulated devices, in order to use paravirtual
> +block and network drivers instead.
> +
> +Those paravirtual Xen block, network (and console) devices can be created
> +through the command line, and/or hot-plugged.
> +
> +To provide a Xen console device, define a character device and then a device
> +of type ``xen-console`` to connect to it. For the Xen console equivalent of
> +the handy ``-serial mon:stdio`` option, for example:
> +
> +.. parsed-literal::
> +   -chardev -chardev stdio,mux=on,id=char0,signal=off -mon char0 \\
> +   -device xen-console,chardev=char0

Is -chardev supposed to appear twice here?

...
> +
> +Booting Xen PV guests
> +---------------------
> +
> +Booting PV guest kernels is possible by using the Xen PV shim (a version of Xen
> +itself, designed to run inside a Xen HVM guest and provide memory management
> +services for one guest alone).
> +
> +The Xen binary is provided as the ``-kernel`` and the guest kernel itself (or
> +PV Grub image) as the ``-initrd`` image, which actually just means the first
> +multiboot "module". For example:
> +
> +.. parsed-literal::
> +
> +  |qemu_system| --accel kvm,xen-version=0x40011,kernel-irqchip=split \\
> +       -chardev stdio,id=char0 -device xen-console,chardev=char0 \\
> +       -display none  -m 1G  -kernel xen -initrd bzImage \\
> +       -append "pv-shim console=xen,pv -- console=hvc0 root=/dev/xvda1" \\
> +       -drive file=${GUEST_IMAGE},if=xen

Is the space between -- and console= intentionsl?

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



From xen-devel-bounces@lists.xenproject.org Wed Oct 25 18:27:23 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 18:27:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623166.970723 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvib8-0004R4-GM; Wed, 25 Oct 2023 18:27:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623166.970723; Wed, 25 Oct 2023 18:27: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 1qvib8-0004Qx-Dk; Wed, 25 Oct 2023 18:27:18 +0000
Received: by outflank-mailman (input) for mailman id 623166;
 Wed, 25 Oct 2023 18:27: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=LJSz=GH=casper.srs.infradead.org=BATV+85b1c44ac99574f3713d+7367+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qvib5-0004Qr-CR
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 18:27:16 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 1e00a11b-7364-11ee-98d5-6d05b1d4d9a1;
 Wed, 25 Oct 2023 20:27:13 +0200 (CEST)
Received: from [2001:8b0:10b:5:5bd0:63a6:23b2:1881]
 (helo=u3832b3a9db3152.ant.amazon.com)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qvian-00AIbv-JM; Wed, 25 Oct 2023 18:26: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: 1e00a11b-7364-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=MIME-Version:Content-Type:References:
	In-Reply-To:Date:Cc:To:From:Subject:Message-ID:Sender:Reply-To:
	Content-Transfer-Encoding:Content-ID:Content-Description;
	bh=YF7Pgf5JG9oeOapVly95WZFHIXbPN/LHIYmrmUOXIZU=; b=MCS+gV84KY9iGO8IdwAL1G/3zk
	h+kJo/yaUcp3yxGD+tiOH0VeTdtgKD5hzGOUtjZ6ZLVxiA5wLtFLPyNJiAOsClV7o1QiCYeQyN5Rg
	NFyO7zXY29iYKu9yAtjOjLxv/rBaPHkqnIhsPKD9mPIt7svbwmtxdNcbqdb+iilrOe6WCdPUMEuBO
	1IPNjmICTcz/OkfMZsmZuCLSWSHPnSvvv8OwXMhun5JcqR+8KzMWLMwVjHs8ZrGP2u24KmQvMjHX5
	c+zYmY5T4cx2PonUhVY4LXGXhy1yBPUx2+w5XAzWinFi5CrzHPUGKfgnkZMpkiZj5Jeo9cmS94G0f
	3anrEcrg==;
Message-ID: <4a10a50e5469480a82cb993dedbff10c3d777082.camel@infradead.org>
Subject: Re: [PATCH v3 28/28] docs: update Xen-on-KVM documentation
From: David Woodhouse <dwmw2@infradead.org>
To: Eric Blake <eblake@redhat.com>
Cc: qemu-devel@nongnu.org, Kevin Wolf <kwolf@redhat.com>, Hanna Reitz
 <hreitz@redhat.com>, Stefano Stabellini <sstabellini@kernel.org>, Anthony
 Perard <anthony.perard@citrix.com>, Paul Durrant <paul@xen.org>, 
 =?ISO-8859-1?Q?Marc-Andr=E9?= Lureau <marcandre.lureau@redhat.com>, Paolo
 Bonzini <pbonzini@redhat.com>, "Michael S. Tsirkin" <mst@redhat.com>,
 Marcel Apfelbaum <marcel.apfelbaum@gmail.com>, Richard Henderson
 <richard.henderson@linaro.org>, Eduardo Habkost <eduardo@habkost.net>,
 Jason Wang <jasowang@redhat.com>, Marcelo Tosatti <mtosatti@redhat.com>,
 qemu-block@nongnu.org,  xen-devel@lists.xenproject.org,
 kvm@vger.kernel.org, Bernhard Beschow <shentey@gmail.com>, Joel Upham
 <jupham125@gmail.com>
Date: Wed, 25 Oct 2023 19:26:56 +0100
In-Reply-To: <6vbpkrebc7fpypbv2t7jbs7m3suxwbqqykeomzfxpenjj2sogd@rphcppcl4inl>
References: <20231025145042.627381-1-dwmw2@infradead.org>
	 <20231025145042.627381-29-dwmw2@infradead.org>
	 <6vbpkrebc7fpypbv2t7jbs7m3suxwbqqykeomzfxpenjj2sogd@rphcppcl4inl>
Content-Type: multipart/signed; micalg="sha-256"; protocol="application/pkcs7-signature";
	boundary="=-shXqgyMEQFTVt6coVWWq"
User-Agent: Evolution 3.44.4-0ubuntu2 
MIME-Version: 1.0
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html


--=-shXqgyMEQFTVt6coVWWq
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Wed, 2023-10-25 at 13:20 -0500, Eric Blake wrote:
> On Wed, Oct 25, 2023 at 03:50:42PM +0100, David Woodhouse wrote:
> > From: David Woodhouse <dwmw@amazon.co.uk>
> >=20
> > Add notes about console and network support, and how to launch PV guest=
s.
> > Clean up the disk configuration examples now that that's simpler, and
> > remove the comment about IDE unplug on q35/AHCI now that it's fixed.
> >=20
> > Also update stale avocado test filename in MAINTAINERS.
> >=20
> > Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
> > ---
> > +Xen paravirtual devices
> > +-----------------------
> > +
> > +The Xen PCI platform device is enabled automatically for a Xen guest. =
This
> > +allows a guest to unplug all emulated devices, in order to use paravir=
tual
> > +block and network drivers instead.
> > +
> > +Those paravirtual Xen block, network (and console) devices can be crea=
ted
> > +through the command line, and/or hot-plugged.
> > +
> > +To provide a Xen console device, define a character device and then a =
device
> > +of type ``xen-console`` to connect to it. For the Xen console equivale=
nt of
> > +the handy ``-serial mon:stdio`` option, for example:
> > +
> > +.. parsed-literal::
> > +=C2=A0=C2=A0 -chardev -chardev stdio,mux=3Don,id=3Dchar0,signal=3Doff =
-mon char0 \\
> > +=C2=A0=C2=A0 -device xen-console,chardev=3Dchar0
>=20
> Is -chardev supposed to appear twice here?

It is not. Will fix; thanks.

> ...
> > +
> > +Booting Xen PV guests
> > +---------------------
> > +
> > +Booting PV guest kernels is possible by using the Xen PV shim (a versi=
on of Xen
> > +itself, designed to run inside a Xen HVM guest and provide memory mana=
gement
> > +services for one guest alone).
> > +
> > +The Xen binary is provided as the ``-kernel`` and the guest kernel its=
elf (or
> > +PV Grub image) as the ``-initrd`` image, which actually just means the=
 first
> > +multiboot "module". For example:
> > +
> > +.. parsed-literal::
> > +
> > +=C2=A0 |qemu_system| --accel kvm,xen-version=3D0x40011,kernel-irqchip=
=3Dsplit \\
> > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 -chardev stdio,id=3Dchar0 -device=
 xen-console,chardev=3Dchar0 \\
> > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 -display none=C2=A0 -m 1G=C2=A0 -=
kernel xen -initrd bzImage \\
> > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 -append "pv-shim console=3Dxen,pv=
 -- console=3Dhvc0 root=3D/dev/xvda1" \\
> > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 -drive file=3D${GUEST_IMAGE},if=
=3Dxen
>=20
> Is the space between -- and console=3D intentionsl?

Yes, that one is correct. The -- is how you separate Xen's command line
(on the left) from the guest kernel command line (on the right).


--=-shXqgyMEQFTVt6coVWWq
Content-Type: application/pkcs7-signature; name="smime.p7s"
Content-Disposition: attachment; filename="smime.p7s"
Content-Transfer-Encoding: base64

MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgEFADCABgkqhkiG9w0BBwEAAKCCEkQw
ggYQMIID+KADAgECAhBNlCwQ1DvglAnFgS06KwZPMA0GCSqGSIb3DQEBDAUAMIGIMQswCQYDVQQG
EwJVUzETMBEGA1UECBMKTmV3IEplcnNleTEUMBIGA1UEBxMLSmVyc2V5IENpdHkxHjAcBgNVBAoT
FVRoZSBVU0VSVFJVU1QgTmV0d29yazEuMCwGA1UEAxMlVVNFUlRydXN0IFJTQSBDZXJ0aWZpY2F0
aW9uIEF1dGhvcml0eTAeFw0xODExMDIwMDAwMDBaFw0zMDEyMzEyMzU5NTlaMIGWMQswCQYDVQQG
EwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYD
VQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50
aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC
AQEAyjztlApB/975Rrno1jvm2pK/KxBOqhq8gr2+JhwpKirSzZxQgT9tlC7zl6hn1fXjSo5MqXUf
ItMltrMaXqcESJuK8dtK56NCSrq4iDKaKq9NxOXFmqXX2zN8HHGjQ2b2Xv0v1L5Nk1MQPKA19xeW
QcpGEGFUUd0kN+oHox+L9aV1rjfNiCj3bJk6kJaOPabPi2503nn/ITX5e8WfPnGw4VuZ79Khj1YB
rf24k5Ee1sLTHsLtpiK9OjG4iQRBdq6Z/TlVx/hGAez5h36bBJMxqdHLpdwIUkTqT8se3ed0PewD
ch/8kHPo5fZl5u1B0ecpq/sDN/5sCG52Ds+QU5O5EwIDAQABo4IBZDCCAWAwHwYDVR0jBBgwFoAU
U3m/WqorSs9UgOHYm8Cd8rIDZsswHQYDVR0OBBYEFAnA8vwL2pTbX/4r36iZQs/J4K0AMA4GA1Ud
DwEB/wQEAwIBhjASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEF
BQcDBDARBgNVHSAECjAIMAYGBFUdIAAwUAYDVR0fBEkwRzBFoEOgQYY/aHR0cDovL2NybC51c2Vy
dHJ1c3QuY29tL1VTRVJUcnVzdFJTQUNlcnRpZmljYXRpb25BdXRob3JpdHkuY3JsMHYGCCsGAQUF
BwEBBGowaDA/BggrBgEFBQcwAoYzaHR0cDovL2NydC51c2VydHJ1c3QuY29tL1VTRVJUcnVzdFJT
QUFkZFRydXN0Q0EuY3J0MCUGCCsGAQUFBzABhhlodHRwOi8vb2NzcC51c2VydHJ1c3QuY29tMA0G
CSqGSIb3DQEBDAUAA4ICAQBBRHUAqznCFfXejpVtMnFojADdF9d6HBA4kMjjsb0XMZHztuOCtKF+
xswhh2GqkW5JQrM8zVlU+A2VP72Ky2nlRA1GwmIPgou74TZ/XTarHG8zdMSgaDrkVYzz1g3nIVO9
IHk96VwsacIvBF8JfqIs+8aWH2PfSUrNxP6Ys7U0sZYx4rXD6+cqFq/ZW5BUfClN/rhk2ddQXyn7
kkmka2RQb9d90nmNHdgKrwfQ49mQ2hWQNDkJJIXwKjYA6VUR/fZUFeCUisdDe/0ABLTI+jheXUV1
eoYV7lNwNBKpeHdNuO6Aacb533JlfeUHxvBz9OfYWUiXu09sMAviM11Q0DuMZ5760CdO2VnpsXP4
KxaYIhvqPqUMWqRdWyn7crItNkZeroXaecG03i3mM7dkiPaCkgocBg0EBYsbZDZ8bsG3a08LwEsL
1Ygz3SBsyECa0waq4hOf/Z85F2w2ZpXfP+w8q4ifwO90SGZZV+HR/Jh6rEaVPDRF/CEGVqR1hiuQ
OZ1YL5ezMTX0ZSLwrymUE0pwi/KDaiYB15uswgeIAcA6JzPFf9pLkAFFWs1QNyN++niFhsM47qod
x/PL+5jR87myx5uYdBEQkkDc+lKB1Wct6ucXqm2EmsaQ0M95QjTmy+rDWjkDYdw3Ms6mSWE3Bn7i
5ZgtwCLXgAIe5W8mybM2JzCCBhQwggT8oAMCAQICEQDGvhmWZ0DEAx0oURL6O6l+MA0GCSqGSIb3
DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYD
VQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28g
UlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMB4XDTIyMDEwNzAw
MDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJARYTZHdtdzJAaW5mcmFkZWFkLm9y
ZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3GpC2bomUqk+91wLYBzDMcCj5C9m6
oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZHh7htyAkWYVoFsFPrwHounto8xTsy
SSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT9YgcBqKCo65pTFmOnR/VVbjJk4K2
xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNjP+qDrh0db7PAjO1D4d5ftfrsf+kd
RR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy2U+eITZ5LLE5s45mX2oPFknWqxBo
bQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3BgBEmfsYWlBXO8rVXfvPgLs32VdV
NZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/7auNVRmPB3v5SWEsH8xi4Bez2V9U
KxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmdlFYhAflWKQ03Ufiu8t3iBE3VJbc2
5oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9aelIl6vtbhMA+l0nfrsORMa4kobqQ5
C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMBAAGjggHMMIIByDAfBgNVHSMEGDAW
gBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeDMcimo0oz8o1R1Nver3ZVpSkwDgYD
VR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYwFAYIKwYBBQUHAwQGCCsGAQUFBwMC
MEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYBBQUHAgEWF2h0dHBzOi8vc2VjdGln
by5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9jcmwuc2VjdGlnby5jb20vU2VjdGln
b1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1haWxDQS5jcmwwgYoGCCsGAQUFBwEB
BH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdvLmNvbS9TZWN0aWdvUlNBQ2xpZW50
QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAjBggrBgEFBQcwAYYXaHR0cDovL29j
c3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5mcmFkZWFkLm9yZzANBgkqhkiG9w0B
AQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQvQ/fzPXmtR9t54rpmI2TfyvcKgOXp
qa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvIlSPrzIB4Z2wyIGQpaPLlYflrrVFK
v9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9ChWFfgSXvrWDZspnU3Gjw/rMHrGnql
Htlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0whpBtXdyDjzBtQTaZJ7zTT/vlehc/
tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9IzCCBhQwggT8oAMCAQICEQDGvhmW
Z0DEAx0oURL6O6l+MA0GCSqGSIb3DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3Jl
YXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0
ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJl
IEVtYWlsIENBMB4XDTIyMDEwNzAwMDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJ
ARYTZHdtdzJAaW5mcmFkZWFkLm9yZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3
GpC2bomUqk+91wLYBzDMcCj5C9m6oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZH
h7htyAkWYVoFsFPrwHounto8xTsySSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT
9YgcBqKCo65pTFmOnR/VVbjJk4K2xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNj
P+qDrh0db7PAjO1D4d5ftfrsf+kdRR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy
2U+eITZ5LLE5s45mX2oPFknWqxBobQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3
BgBEmfsYWlBXO8rVXfvPgLs32VdVNZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/
7auNVRmPB3v5SWEsH8xi4Bez2V9UKxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmd
lFYhAflWKQ03Ufiu8t3iBE3VJbc25oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9ae
lIl6vtbhMA+l0nfrsORMa4kobqQ5C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMB
AAGjggHMMIIByDAfBgNVHSMEGDAWgBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeD
Mcimo0oz8o1R1Nver3ZVpSkwDgYDVR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYw
FAYIKwYBBQUHAwQGCCsGAQUFBwMCMEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYB
BQUHAgEWF2h0dHBzOi8vc2VjdGlnby5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9j
cmwuc2VjdGlnby5jb20vU2VjdGlnb1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1h
aWxDQS5jcmwwgYoGCCsGAQUFBwEBBH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdv
LmNvbS9TZWN0aWdvUlNBQ2xpZW50QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAj
BggrBgEFBQcwAYYXaHR0cDovL29jc3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5m
cmFkZWFkLm9yZzANBgkqhkiG9w0BAQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQv
Q/fzPXmtR9t54rpmI2TfyvcKgOXpqa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvI
lSPrzIB4Z2wyIGQpaPLlYflrrVFKv9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9Ch
WFfgSXvrWDZspnU3Gjw/rMHrGnqlHtlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0w
hpBtXdyDjzBtQTaZJ7zTT/vlehc/tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9
IzGCBMcwggTDAgEBMIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVz
dGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMT
NVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEA
xr4ZlmdAxAMdKFES+jupfjANBglghkgBZQMEAgEFAKCCAeswGAYJKoZIhvcNAQkDMQsGCSqGSIb3
DQEHATAcBgkqhkiG9w0BCQUxDxcNMjMxMDI1MTgyNjU2WjAvBgkqhkiG9w0BCQQxIgQg0XTTncc1
cNLXA9he7Sss7Y4KkFZ7pPry9FLpyxfjrscwgb0GCSsGAQQBgjcQBDGBrzCBrDCBljELMAkGA1UE
BhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEYMBYG
A1UEChMPU2VjdGlnbyBMaW1pdGVkMT4wPAYDVQQDEzVTZWN0aWdvIFJTQSBDbGllbnQgQXV0aGVu
dGljYXRpb24gYW5kIFNlY3VyZSBFbWFpbCBDQQIRAMa+GZZnQMQDHShREvo7qX4wgb8GCyqGSIb3
DQEJEAILMYGvoIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVy
MRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNl
Y3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEAxr4Z
lmdAxAMdKFES+jupfjANBgkqhkiG9w0BAQEFAASCAgBT7Bq6bGLkTsHAJp09kVJIpoJKZFYWWpta
hfAcjvvKlLLAQqOWdlunrA7OjSuKU4bLLmxP+PsAp1xfwCdPWAeFpaj+JoHnYfTkQ0AZn2C3f0H9
aPktNUtf6GUbuv7scwgFK/P2PAqLq8FBxYRQSHwuJl5q6H8EFwOJqp3u27o9Cs0yez7LwKvrYUFv
TWo+JaNg0Rl82X+f0KF+dTc1TjsJTPg4LSjCfwufOSRK8VpgVfOgg+Lr1tsnrtiw4dIFEAiHzj+C
5DbXT8tT+E52uIsz/If5dp8/+RZgHK84KXyByS9T3g+KZGdXC+/Loctd0hXK8ypKYDOaN1/nl0DB
uikXINuwhWDMLGSQkFy+oFzyyWfgSfIsxxRlVH0HgZ3ViQoROEPp65Wp4gem1AiIMnzzfChpCC1O
UEqJCSDLxT2guUiVknRiJByCF9Y8kuEKLmc1AhoGeTaF9fmNuMjgubtDLFu6Ld9Y+x4MDdoYldq0
6l7WBtaUX2rkMYuG4qGHY8UjNjCTYa1VOOA23zMXlucC96ReWkWYwTO/dIjUF6SWGwiETvSFHFdK
3fPgyGsjH7lmOk02Aw6USlh6CHwuzwNsdUz84GpHP9JUvcJtecCeuAkIxKwJv126kglLy0IOw5oZ
clVKNBYuP2K7ZVLXa1uqi63p8mgOCtR5MN6jIgsP8gAAAAAAAA==


--=-shXqgyMEQFTVt6coVWWq--


From xen-devel-bounces@lists.xenproject.org Wed Oct 25 18:57:03 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 18:57:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623171.970734 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvj3l-0001gA-N7; Wed, 25 Oct 2023 18:56:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623171.970734; Wed, 25 Oct 2023 18: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 1qvj3l-0001g3-KO; Wed, 25 Oct 2023 18:56:53 +0000
Received: by outflank-mailman (input) for mailman id 623171;
 Wed, 25 Oct 2023 18:56: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=iZwN=GH=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qvj3k-0001fx-6D
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 18:56:52 +0000
Received: from mail-ed1-x530.google.com (mail-ed1-x530.google.com
 [2a00:1450:4864:20::530])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 417fab26-7368-11ee-98d5-6d05b1d4d9a1;
 Wed, 25 Oct 2023 20:56:50 +0200 (CEST)
Received: by mail-ed1-x530.google.com with SMTP id
 4fb4d7f45d1cf-538e8eca9c1so43130a12.3
 for <xen-devel@lists.xenproject.org>; Wed, 25 Oct 2023 11:56:50 -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
 gy5-20020a0564025bc500b0053d9cb67248sm9782173edb.18.2023.10.25.11.56.49
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 25 Oct 2023 11:56: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: 417fab26-7368-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1698260210; x=1698865010; darn=lists.xenproject.org;
        h=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=JF5ca7+x0sfEieU/HtiRgSR4K9/JiGdvljdjrfAmMDg=;
        b=V2x3jDmgzDe6iqpCFj3gUicpfvhoHw+ckCKokgwcyx40SxDJh+yvR856l0mbSBgXyC
         2QLX7zLVxxsV8qu0ogBWQYLMubefE/Bn7/0ujonHWDyOGKl4xHmJcI6OvWr/2qC+Uvtp
         DjZ0irDG2U/Jl8nUfARW+P1mPXdcRMJXRbLFY=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698260210; x=1698865010;
        h=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=JF5ca7+x0sfEieU/HtiRgSR4K9/JiGdvljdjrfAmMDg=;
        b=tzUY0BENQ47eolal3+Lu0/zCK2Q/ka0bjHNkgfmXC07k8iMyIz1wUN2NiMDJ9aDWQG
         sXuDJbgQB57FTawiUUjstUAwBlvXQCjk50Fu6Z5oNmRvZcy++DsroXFqLw0aCS/+QsRP
         3Jnqfww71AaBmvGABwMWwJuDdvdz2f9EmyHkofJMWckdBcmyrDbnYW66ZD28OsP2HHAP
         SvFW7Pbv3e9RgH6wr9Dthpi5mspqMYpoDTbC7nDBZCyL4GtHkrY/67cEGiSgeAb8+iRl
         DUwrla3A6q8U56lcVH8Jg08Pbq8U1fvvcZiqXTiMjolQU5soCoMrPDzFLuDWYVAbYoDu
         MLqg==
X-Gm-Message-State: AOJu0YzdiCr53bkwLIcvc+HDnioewmnoV7j1D9ZNQr2klAtp+SnK7nJ0
	iOh/LgGy8yJygI6OYX27rLg8LA==
X-Google-Smtp-Source: AGHT+IFxH1j7TKw+zrvE7NCB/3vXZZrLnWl0t3N2wKXEX65s3P/uyzFzibytV4tFS6LlcMIDzGoFgw==
X-Received: by 2002:a05:6402:5188:b0:53e:7eca:5650 with SMTP id q8-20020a056402518800b0053e7eca5650mr14140934edd.13.1698260210346;
        Wed, 25 Oct 2023 11:56:50 -0700 (PDT)
Content-Type: multipart/alternative;
 boundary="------------FpeNP3Ap5IjP2UdppoSTSNsb"
Message-ID: <21e8a265-bf5a-464c-86bc-f0fd7b5eb108@citrix.com>
Date: Wed, 25 Oct 2023 19:56:48 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v3 28/28] docs: update Xen-on-KVM documentation
Content-Language: en-GB
To: David Woodhouse <dwmw2@infradead.org>, Eric Blake <eblake@redhat.com>
Cc: qemu-devel@nongnu.org, Kevin Wolf <kwolf@redhat.com>,
 Hanna Reitz <hreitz@redhat.com>, Stefano Stabellini
 <sstabellini@kernel.org>, Anthony Perard <anthony.perard@citrix.com>,
 Paul Durrant <paul@xen.org>, =?UTF-8?Q?Marc-Andr=C3=A9_Lureau?=
 <marcandre.lureau@redhat.com>, Paolo Bonzini <pbonzini@redhat.com>,
 "Michael S. Tsirkin" <mst@redhat.com>,
 Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
 Richard Henderson <richard.henderson@linaro.org>,
 Eduardo Habkost <eduardo@habkost.net>, Jason Wang <jasowang@redhat.com>,
 Marcelo Tosatti <mtosatti@redhat.com>, qemu-block@nongnu.org,
 xen-devel@lists.xenproject.org, kvm@vger.kernel.org,
 Bernhard Beschow <shentey@gmail.com>, Joel Upham <jupham125@gmail.com>
References: <20231025145042.627381-1-dwmw2@infradead.org>
 <20231025145042.627381-29-dwmw2@infradead.org>
 <6vbpkrebc7fpypbv2t7jbs7m3suxwbqqykeomzfxpenjj2sogd@rphcppcl4inl>
 <4a10a50e5469480a82cb993dedbff10c3d777082.camel@infradead.org>
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: <4a10a50e5469480a82cb993dedbff10c3d777082.camel@infradead.org>

This is a multi-part message in MIME format.
--------------FpeNP3Ap5IjP2UdppoSTSNsb
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 25/10/2023 7:26 pm, David Woodhouse wrote:
> On Wed, 2023-10-25 at 13:20 -0500, Eric Blake wrote:
>> On Wed, Oct 25, 2023 at 03:50:42PM +0100, David Woodhouse wrote:
>>> +
>>> +Booting Xen PV guests
>>> +---------------------
>>> +
>>> +Booting PV guest kernels is possible by using the Xen PV shim (a version of Xen
>>> +itself, designed to run inside a Xen HVM guest and provide memory management
>>> +services for one guest alone).
>>> +
>>> +The Xen binary is provided as the ``-kernel`` and the guest kernel itself (or
>>> +PV Grub image) as the ``-initrd`` image, which actually just means the first
>>> +multiboot "module". For example:
>>> +
>>> +.. parsed-literal::
>>> +
>>> +  |qemu_system| --accel kvm,xen-version=0x40011,kernel-irqchip=split \\
>>> +       -chardev stdio,id=char0 -device xen-console,chardev=char0 \\
>>> +       -display none  -m 1G  -kernel xen -initrd bzImage \\
>>> +       -append "pv-shim console=xen,pv -- console=hvc0 root=/dev/xvda1" \\
>>> +       -drive file=${GUEST_IMAGE},if=xen
>> Is the space between -- and console= intentionsl?
> Yes, that one is correct. The -- is how you separate Xen's command line
> (on the left) from the guest kernel command line (on the right).

To expand on this a bit.

Multiboot1 supports multiple modules but only a single command line.  As
one of the modules passed to Xen is the dom0 kernel, we need some way to
pass it's command line, hence the " -- ".

Multiboot2 and PVH support a command line per module, which is the
preferred way to pass the commandlines, given a choice.

~Andrew
--------------FpeNP3Ap5IjP2UdppoSTSNsb
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: 8bit

<!DOCTYPE html>
<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body>
    <div class="moz-cite-prefix">On 25/10/2023 7:26 pm, David Woodhouse
      wrote:<br>
    </div>
    <blockquote type="cite"
cite="mid:4a10a50e5469480a82cb993dedbff10c3d777082.camel@infradead.org">
      <pre class="moz-quote-pre" wrap="">On Wed, 2023-10-25 at 13:20 -0500, Eric Blake wrote:
</pre>
      <blockquote type="cite">
        <pre class="moz-quote-pre" wrap="">On Wed, Oct 25, 2023 at 03:50:42PM +0100, David Woodhouse wrote:<span
        style="white-space: pre-wrap">
</span></pre>
      </blockquote>
      <blockquote type="cite">
        <blockquote type="cite">
          <pre class="moz-quote-pre" wrap="">+
+Booting Xen PV guests
+---------------------
+
+Booting PV guest kernels is possible by using the Xen PV shim (a version of Xen
+itself, designed to run inside a Xen HVM guest and provide memory management
+services for one guest alone).
+
+The Xen binary is provided as the ``-kernel`` and the guest kernel itself (or
+PV Grub image) as the ``-initrd`` image, which actually just means the first
+multiboot "module". For example:
+
+.. parsed-literal::
+
+  |qemu_system| --accel kvm,xen-version=0x40011,kernel-irqchip=split \\
+       -chardev stdio,id=char0 -device xen-console,chardev=char0 \\
+       -display none  -m 1G  -kernel xen -initrd bzImage \\
+       -append "pv-shim console=xen,pv -- console=hvc0 root=/dev/xvda1" \\
+       -drive file=${GUEST_IMAGE},if=xen
</pre>
        </blockquote>
        <pre class="moz-quote-pre" wrap="">
Is the space between -- and console= intentionsl?
</pre>
      </blockquote>
      <pre class="moz-quote-pre" wrap="">
Yes, that one is correct. The -- is how you separate Xen's command line
(on the left) from the guest kernel command line (on the right).</pre>
    </blockquote>
    <br>
    To expand on this a bit.<br>
    <br>
    Multiboot1 supports multiple modules but only a single command
    line.  As one of the modules passed to Xen is the dom0 kernel, we
    need some way to pass it's command line, hence the " -- ".<br>
    <br>
    Multiboot2 and PVH support a command line per module, which is the
    preferred way to pass the commandlines, given a choice.<br>
    <br>
    ~Andrew<br>
  </body>
</html>

--------------FpeNP3Ap5IjP2UdppoSTSNsb--


From xen-devel-bounces@lists.xenproject.org Wed Oct 25 19:02:58 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 19:02:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623175.970743 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvj9Y-0003CU-Ag; Wed, 25 Oct 2023 19:02:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623175.970743; Wed, 25 Oct 2023 19:02: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 1qvj9Y-0003CN-7u; Wed, 25 Oct 2023 19:02:52 +0000
Received: by outflank-mailman (input) for mailman id 623175;
 Wed, 25 Oct 2023 19:02: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=LJSz=GH=casper.srs.infradead.org=BATV+85b1c44ac99574f3713d+7367+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qvj9W-0003CH-RV
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 19:02:50 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 1619fb1a-7369-11ee-9b0e-b553b5be7939;
 Wed, 25 Oct 2023 21:02:47 +0200 (CEST)
Received: from [2001:8b0:10b:5:5bd0:63a6:23b2:1881]
 (helo=u3832b3a9db3152.ant.amazon.com)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qvj9E-00AT4n-7V; Wed, 25 Oct 2023 19:02: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: 1619fb1a-7369-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=MIME-Version:Content-Type:References:
	In-Reply-To:Date:Cc:To:From:Subject:Message-ID:Sender:Reply-To:
	Content-Transfer-Encoding:Content-ID:Content-Description;
	bh=RNbldFeH9RXvhlMpBkxoU3qDnF569sj7HrRIMA2FfyY=; b=GOLQM5YAVN8ONSWs9Bl6R+Z4Ah
	yK2FLDGqcaIZ6VnC7cGLY2E2nuNoBWTMLBYZvI3yOPlp/rc+1Zy8aI4k7z/s+KCbHEKWQ8O/EtvPf
	iCSB/q8wsmSh7Apb+xVZTET359Eib0ftTLVGDZ9RSeyexHId2vBbICP0edzIsKysw6GZ1EEnYgIqd
	PwnYZiTJdXoU2rhxIIfLWxzZdYFQCZH+2amLL63+0a2NveAd/KbE39TGA7cGoQlbn71ESHSU7ljeY
	COiALHuWH6uOWxhU1mb0wHFa4opjQzbB09HWKb02vFvmZ7WPRzm4dn6dHy9rgTlRjUcB+94vMnWh3
	9mCXC32A==;
Message-ID: <0f7a176064f2b351576ab5d31a3a8e921cca4212.camel@infradead.org>
Subject: Re: [PATCH v3 28/28] docs: update Xen-on-KVM documentation
From: David Woodhouse <dwmw2@infradead.org>
To: Andrew Cooper <andrew.cooper3@citrix.com>, Eric Blake <eblake@redhat.com>
Cc: qemu-devel@nongnu.org, Kevin Wolf <kwolf@redhat.com>, Hanna Reitz
 <hreitz@redhat.com>, Stefano Stabellini <sstabellini@kernel.org>, Anthony
 Perard <anthony.perard@citrix.com>, Paul Durrant <paul@xen.org>, 
 =?ISO-8859-1?Q?Marc-Andr=E9?= Lureau <marcandre.lureau@redhat.com>, Paolo
 Bonzini <pbonzini@redhat.com>, "Michael S. Tsirkin" <mst@redhat.com>,
 Marcel Apfelbaum <marcel.apfelbaum@gmail.com>, Richard Henderson
 <richard.henderson@linaro.org>, Eduardo Habkost <eduardo@habkost.net>,
 Jason Wang <jasowang@redhat.com>, Marcelo Tosatti <mtosatti@redhat.com>,
 qemu-block@nongnu.org,  xen-devel@lists.xenproject.org,
 kvm@vger.kernel.org, Bernhard Beschow <shentey@gmail.com>, Joel Upham
 <jupham125@gmail.com>
Date: Wed, 25 Oct 2023 20:02:31 +0100
In-Reply-To: <21e8a265-bf5a-464c-86bc-f0fd7b5eb108@citrix.com>
References: <20231025145042.627381-1-dwmw2@infradead.org>
	 <20231025145042.627381-29-dwmw2@infradead.org>
	 <6vbpkrebc7fpypbv2t7jbs7m3suxwbqqykeomzfxpenjj2sogd@rphcppcl4inl>
	 <4a10a50e5469480a82cb993dedbff10c3d777082.camel@infradead.org>
	 <21e8a265-bf5a-464c-86bc-f0fd7b5eb108@citrix.com>
Content-Type: multipart/signed; micalg="sha-256"; protocol="application/pkcs7-signature";
	boundary="=-Fy7YuKjiqJwaUXFo/l80"
User-Agent: Evolution 3.44.4-0ubuntu2 
MIME-Version: 1.0
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html


--=-Fy7YuKjiqJwaUXFo/l80
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Wed, 2023-10-25 at 19:56 +0100, Andrew Cooper wrote:
> On 25/10/2023 7:26 pm, David Woodhouse wrote:
> =C2=A0
> > On Wed, 2023-10-25 at 13:20 -0500, Eric Blake wrote:
> > =C2=A0
> > > On Wed, Oct 25, 2023 at 03:50:42PM +0100, David Woodhouse wrote:
> > =C2=A0
> > > =C2=A0
> > > > +
> > > > +Booting Xen PV guests
> > > > +---------------------
> > > > +
> > > > +Booting PV guest kernels is possible by using the Xen PV shim (a v=
ersion of Xen
> > > > +itself, designed to run inside a Xen HVM guest and provide memory =
management
> > > > +services for one guest alone).
> > > > +
> > > > +The Xen binary is provided as the ``-kernel`` and the guest kernel=
 itself (or
> > > > +PV Grub image) as the ``-initrd`` image, which actually just means=
 the first
> > > > +multiboot "module". For example:
> > > > +
> > > > +.. parsed-literal::
> > > > +
> > > > +=C2=A0 |qemu_system| --accel kvm,xen-version=3D0x40011,kernel-irqc=
hip=3Dsplit \\
> > > > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 -chardev stdio,id=3Dchar0 -de=
vice xen-console,chardev=3Dchar0 \\
> > > > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 -display none=C2=A0 -m 1G=C2=
=A0 -kernel xen -initrd bzImage \\
> > > > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 -append "pv-shim console=3Dxe=
n,pv -- console=3Dhvc0 root=3D/dev/xvda1" \\
> > > > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 -drive file=3D${GUEST_IMAGE},=
if=3Dxen
> > > Is the space between -- and console=3D intentionsl?
> > Yes, that one is correct. The -- is how you separate Xen's command line
> > (on the left) from the guest kernel command line (on the right).
> =C2=A0
> =C2=A0To expand on this a bit.
> =C2=A0
> =C2=A0Multiboot1 supports multiple modules but only a single command
> line.=C2=A0 As one of the modules passed to Xen is the dom0 kernel, we
> need some way to pass it's command line, hence the " -- ".
> =C2=A0
> =C2=A0Multiboot2 and PVH support a command line per module, which is the
> preferred way to pass the commandlines, given a choice.
> =C2=A0

Thanks.

Indeed, I had *originally* thought I was going to need to implement
Multiboot2 in qemu in order to boot Shim + PV guest, but it turns out
we can make it work with just Multiboot1 support.

As long as the guest kernel doesn't want an *actual* initrd, that is ;)


--=-Fy7YuKjiqJwaUXFo/l80
Content-Type: application/pkcs7-signature; name="smime.p7s"
Content-Disposition: attachment; filename="smime.p7s"
Content-Transfer-Encoding: base64

MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgEFADCABgkqhkiG9w0BBwEAAKCCEkQw
ggYQMIID+KADAgECAhBNlCwQ1DvglAnFgS06KwZPMA0GCSqGSIb3DQEBDAUAMIGIMQswCQYDVQQG
EwJVUzETMBEGA1UECBMKTmV3IEplcnNleTEUMBIGA1UEBxMLSmVyc2V5IENpdHkxHjAcBgNVBAoT
FVRoZSBVU0VSVFJVU1QgTmV0d29yazEuMCwGA1UEAxMlVVNFUlRydXN0IFJTQSBDZXJ0aWZpY2F0
aW9uIEF1dGhvcml0eTAeFw0xODExMDIwMDAwMDBaFw0zMDEyMzEyMzU5NTlaMIGWMQswCQYDVQQG
EwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYD
VQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50
aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC
AQEAyjztlApB/975Rrno1jvm2pK/KxBOqhq8gr2+JhwpKirSzZxQgT9tlC7zl6hn1fXjSo5MqXUf
ItMltrMaXqcESJuK8dtK56NCSrq4iDKaKq9NxOXFmqXX2zN8HHGjQ2b2Xv0v1L5Nk1MQPKA19xeW
QcpGEGFUUd0kN+oHox+L9aV1rjfNiCj3bJk6kJaOPabPi2503nn/ITX5e8WfPnGw4VuZ79Khj1YB
rf24k5Ee1sLTHsLtpiK9OjG4iQRBdq6Z/TlVx/hGAez5h36bBJMxqdHLpdwIUkTqT8se3ed0PewD
ch/8kHPo5fZl5u1B0ecpq/sDN/5sCG52Ds+QU5O5EwIDAQABo4IBZDCCAWAwHwYDVR0jBBgwFoAU
U3m/WqorSs9UgOHYm8Cd8rIDZsswHQYDVR0OBBYEFAnA8vwL2pTbX/4r36iZQs/J4K0AMA4GA1Ud
DwEB/wQEAwIBhjASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEF
BQcDBDARBgNVHSAECjAIMAYGBFUdIAAwUAYDVR0fBEkwRzBFoEOgQYY/aHR0cDovL2NybC51c2Vy
dHJ1c3QuY29tL1VTRVJUcnVzdFJTQUNlcnRpZmljYXRpb25BdXRob3JpdHkuY3JsMHYGCCsGAQUF
BwEBBGowaDA/BggrBgEFBQcwAoYzaHR0cDovL2NydC51c2VydHJ1c3QuY29tL1VTRVJUcnVzdFJT
QUFkZFRydXN0Q0EuY3J0MCUGCCsGAQUFBzABhhlodHRwOi8vb2NzcC51c2VydHJ1c3QuY29tMA0G
CSqGSIb3DQEBDAUAA4ICAQBBRHUAqznCFfXejpVtMnFojADdF9d6HBA4kMjjsb0XMZHztuOCtKF+
xswhh2GqkW5JQrM8zVlU+A2VP72Ky2nlRA1GwmIPgou74TZ/XTarHG8zdMSgaDrkVYzz1g3nIVO9
IHk96VwsacIvBF8JfqIs+8aWH2PfSUrNxP6Ys7U0sZYx4rXD6+cqFq/ZW5BUfClN/rhk2ddQXyn7
kkmka2RQb9d90nmNHdgKrwfQ49mQ2hWQNDkJJIXwKjYA6VUR/fZUFeCUisdDe/0ABLTI+jheXUV1
eoYV7lNwNBKpeHdNuO6Aacb533JlfeUHxvBz9OfYWUiXu09sMAviM11Q0DuMZ5760CdO2VnpsXP4
KxaYIhvqPqUMWqRdWyn7crItNkZeroXaecG03i3mM7dkiPaCkgocBg0EBYsbZDZ8bsG3a08LwEsL
1Ygz3SBsyECa0waq4hOf/Z85F2w2ZpXfP+w8q4ifwO90SGZZV+HR/Jh6rEaVPDRF/CEGVqR1hiuQ
OZ1YL5ezMTX0ZSLwrymUE0pwi/KDaiYB15uswgeIAcA6JzPFf9pLkAFFWs1QNyN++niFhsM47qod
x/PL+5jR87myx5uYdBEQkkDc+lKB1Wct6ucXqm2EmsaQ0M95QjTmy+rDWjkDYdw3Ms6mSWE3Bn7i
5ZgtwCLXgAIe5W8mybM2JzCCBhQwggT8oAMCAQICEQDGvhmWZ0DEAx0oURL6O6l+MA0GCSqGSIb3
DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYD
VQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28g
UlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMB4XDTIyMDEwNzAw
MDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJARYTZHdtdzJAaW5mcmFkZWFkLm9y
ZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3GpC2bomUqk+91wLYBzDMcCj5C9m6
oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZHh7htyAkWYVoFsFPrwHounto8xTsy
SSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT9YgcBqKCo65pTFmOnR/VVbjJk4K2
xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNjP+qDrh0db7PAjO1D4d5ftfrsf+kd
RR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy2U+eITZ5LLE5s45mX2oPFknWqxBo
bQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3BgBEmfsYWlBXO8rVXfvPgLs32VdV
NZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/7auNVRmPB3v5SWEsH8xi4Bez2V9U
KxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmdlFYhAflWKQ03Ufiu8t3iBE3VJbc2
5oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9aelIl6vtbhMA+l0nfrsORMa4kobqQ5
C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMBAAGjggHMMIIByDAfBgNVHSMEGDAW
gBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeDMcimo0oz8o1R1Nver3ZVpSkwDgYD
VR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYwFAYIKwYBBQUHAwQGCCsGAQUFBwMC
MEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYBBQUHAgEWF2h0dHBzOi8vc2VjdGln
by5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9jcmwuc2VjdGlnby5jb20vU2VjdGln
b1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1haWxDQS5jcmwwgYoGCCsGAQUFBwEB
BH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdvLmNvbS9TZWN0aWdvUlNBQ2xpZW50
QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAjBggrBgEFBQcwAYYXaHR0cDovL29j
c3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5mcmFkZWFkLm9yZzANBgkqhkiG9w0B
AQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQvQ/fzPXmtR9t54rpmI2TfyvcKgOXp
qa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvIlSPrzIB4Z2wyIGQpaPLlYflrrVFK
v9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9ChWFfgSXvrWDZspnU3Gjw/rMHrGnql
Htlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0whpBtXdyDjzBtQTaZJ7zTT/vlehc/
tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9IzCCBhQwggT8oAMCAQICEQDGvhmW
Z0DEAx0oURL6O6l+MA0GCSqGSIb3DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3Jl
YXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0
ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJl
IEVtYWlsIENBMB4XDTIyMDEwNzAwMDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJ
ARYTZHdtdzJAaW5mcmFkZWFkLm9yZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3
GpC2bomUqk+91wLYBzDMcCj5C9m6oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZH
h7htyAkWYVoFsFPrwHounto8xTsySSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT
9YgcBqKCo65pTFmOnR/VVbjJk4K2xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNj
P+qDrh0db7PAjO1D4d5ftfrsf+kdRR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy
2U+eITZ5LLE5s45mX2oPFknWqxBobQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3
BgBEmfsYWlBXO8rVXfvPgLs32VdVNZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/
7auNVRmPB3v5SWEsH8xi4Bez2V9UKxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmd
lFYhAflWKQ03Ufiu8t3iBE3VJbc25oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9ae
lIl6vtbhMA+l0nfrsORMa4kobqQ5C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMB
AAGjggHMMIIByDAfBgNVHSMEGDAWgBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeD
Mcimo0oz8o1R1Nver3ZVpSkwDgYDVR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYw
FAYIKwYBBQUHAwQGCCsGAQUFBwMCMEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYB
BQUHAgEWF2h0dHBzOi8vc2VjdGlnby5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9j
cmwuc2VjdGlnby5jb20vU2VjdGlnb1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1h
aWxDQS5jcmwwgYoGCCsGAQUFBwEBBH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdv
LmNvbS9TZWN0aWdvUlNBQ2xpZW50QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAj
BggrBgEFBQcwAYYXaHR0cDovL29jc3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5m
cmFkZWFkLm9yZzANBgkqhkiG9w0BAQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQv
Q/fzPXmtR9t54rpmI2TfyvcKgOXpqa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvI
lSPrzIB4Z2wyIGQpaPLlYflrrVFKv9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9Ch
WFfgSXvrWDZspnU3Gjw/rMHrGnqlHtlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0w
hpBtXdyDjzBtQTaZJ7zTT/vlehc/tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9
IzGCBMcwggTDAgEBMIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVz
dGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMT
NVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEA
xr4ZlmdAxAMdKFES+jupfjANBglghkgBZQMEAgEFAKCCAeswGAYJKoZIhvcNAQkDMQsGCSqGSIb3
DQEHATAcBgkqhkiG9w0BCQUxDxcNMjMxMDI1MTkwMjMxWjAvBgkqhkiG9w0BCQQxIgQgUuqj1cYj
QfF6xg6PxqoniLN3SeWIqUBhQkdyhXy4d0Iwgb0GCSsGAQQBgjcQBDGBrzCBrDCBljELMAkGA1UE
BhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEYMBYG
A1UEChMPU2VjdGlnbyBMaW1pdGVkMT4wPAYDVQQDEzVTZWN0aWdvIFJTQSBDbGllbnQgQXV0aGVu
dGljYXRpb24gYW5kIFNlY3VyZSBFbWFpbCBDQQIRAMa+GZZnQMQDHShREvo7qX4wgb8GCyqGSIb3
DQEJEAILMYGvoIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVy
MRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNl
Y3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEAxr4Z
lmdAxAMdKFES+jupfjANBgkqhkiG9w0BAQEFAASCAgAsFmCHRPHQOvGFW7h8uvsCqx5qgo4ArbjB
A1VFNFch0q45HUE7kB/HBjV7822gb78w55EZ849mRQJ7cUFgT1On5nwB8kG8wOvTzGjij3IlkaUE
B7bj4YsbbQh5BQWKVhGyHZZskx7Gg+ZH+x9VncUB6v3a/IvVUB4I+RXmiIs4jHwbIsarRuXC2WjA
JkgPQdSySsINV6+mQb1GmGbzBx9nRFXQHKs1Qveju2QiI30VhnstwyoOUGDR9IoYtKtaV7pwrHbE
37O+oGUXaMtLGOuDMByJXBYYyEI5CarR5pAE6PhP3y7oXvh6Gs/ltBYA9zCEBZeT+xThok3VbDci
MODgoD+HAa8Dr4Ojj2NxRf56HBeaPNJUz2OKYM8CJGO8C90Db6dPzBLKhu2Jq2fD97iRZKjMwsOB
voyzNjnSoByd0ng24KDNBHzFZ4497MrJd3yYNfxRwt9gXJio+3mCVJGcZN1dqjxKHTOa1pcRkjSo
VZp35qlFkd6J/JUhaMJ5cSLB/vrVsm3MBl5pp0eWET67fw+MtyXdc44TYBoaiU9JTq04KNBVKRjE
hbQ/Y4EsYRG8M/6pd2yhrE2tNlI82rGTTmyBnHMfse/Q9zBZ0Pw13FsbgXPEzragEkfgyJ3rw2IQ
0oriupkx09aNafY+jo5zGJDdJWgu46QDA7cT5mDBMgAAAAAAAA==


--=-Fy7YuKjiqJwaUXFo/l80--


From xen-devel-bounces@lists.xenproject.org Wed Oct 25 19:05:30 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 19:05:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623178.970754 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvjC5-0003rA-K1; Wed, 25 Oct 2023 19:05:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623178.970754; Wed, 25 Oct 2023 19:05: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 1qvjC5-0003r3-Gd; Wed, 25 Oct 2023 19:05:29 +0000
Received: by outflank-mailman (input) for mailman id 623178;
 Wed, 25 Oct 2023 19:05: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=Lpe5=GH=amd.com=Stewart.Hildebrand@srs-se1.protection.inumbo.net>)
 id 1qvjC4-0003qx-7W
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 19:05:28 +0000
Received: from NAM12-DM6-obe.outbound.protection.outlook.com
 (mail-dm6nam12on20620.outbound.protection.outlook.com
 [2a01:111:f400:fe59::620])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 736b066c-7369-11ee-9b0e-b553b5be7939;
 Wed, 25 Oct 2023 21:05:25 +0200 (CEST)
Received: from BYAPR01CA0028.prod.exchangelabs.com (2603:10b6:a02:80::41) by
 MW6PR12MB8868.namprd12.prod.outlook.com (2603:10b6:303:242::20) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.29; Wed, 25 Oct
 2023 19:05:21 +0000
Received: from SA2PEPF000015CA.namprd03.prod.outlook.com
 (2603:10b6:a02:80:cafe::a2) by BYAPR01CA0028.outlook.office365.com
 (2603:10b6:a02:80::41) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.19 via Frontend
 Transport; Wed, 25 Oct 2023 19:05:21 +0000
Received: from SATLEXMB03.amd.com (165.204.84.17) by
 SA2PEPF000015CA.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.6933.15 via Frontend Transport; Wed, 25 Oct 2023 19:05:20 +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.32; Wed, 25 Oct
 2023 14:05:18 -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.32; Wed, 25 Oct
 2023 14:05:18 -0500
Received: from [172.30.200.120] (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.32 via Frontend
 Transport; Wed, 25 Oct 2023 14:05: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: 736b066c-7369-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=fjTSg3OVBc5UMNOlZT7CJ+P6WP8Iag2ccSU9UaqGfSVSzibddmQuGqxrOwTPJNoDtjSjj4lKUmYA0ACr3jHmwRM0x9hWXedNOW+NiTDx11GfQLU8x0nPqP1akW/y1/7ryj+a6wN8UjGa2V1wBoTUZiA5hFT5A63OvxANKVCwWzfpDaQUW89xabzTcTHOu2zeh3R00drzaeHr55qBx5XqbBPjFr/b0Usokwmjs7fGGhhs+jc2mtukCFHjcmtakitpx6k82PqKMJXzwIy2Xv8wnZQQhvmo0NwQ8p53RBm1MPPP3DrbteZh0J29Yx23VNfvzeLH1MtpjjILwYjIgvAF8w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=1GyBg+1e6L/ffFNCJdal9z4iWPu4nC056FUZvUpZPuA=;
 b=N/EYDL0us6zmJ7H4rXPe6sVk2yveggvknbTyRES7qUeW1A5ydEf3WNFyvgA7uoLq30aYsu3SWobbwRYnuAcVGDmAqe+NXwio3G9VMV48w6h/16PMOKnK8c9vyi1Kf4nLSUmP5dSl5IUYRF+tp/YS/eozUzUmi0WAY69HK0h7eGvwrR2AjK1UJrHgaFMY+60ExUWrnt2ZAmvGIM2HK19GI47v9UfhG4WQ7GqSX7mgsY5ADYQFBeNlRMaE+crJOsN1Jyieq6o/hnhlS1jIImbLTrhqk5RxSkymNo1s2uDNkX7ffloN/8hKKQcYU9RVksqTSWGnNqWvSUavhxa9pKDDFw==
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 (0)
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=1GyBg+1e6L/ffFNCJdal9z4iWPu4nC056FUZvUpZPuA=;
 b=2w2dJ/zX4cLtNrys2riotz53NDXSrioFyfXwi33Ep8ZzpVSr+LsDW7zOLT7reoSPwO6H251148pFs2iwYZkQlbyTpSOy8rMcjUY5XQp4hw+0MhZngt5f2WTSmLHAJ8CFsQwu7d6UoZBaJGaYFOgTwac0un6Fh8om0hKlym/Ur34=
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: <6fdaea2e-d6c8-4246-bd2b-7c08139e86fa@amd.com>
Date: Wed, 25 Oct 2023 15:05:16 -0400
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v3 2/5] xen/arm: pci: plumb xen_arch_domainconfig with pci
 info
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>,
	Andrew Cooper <andrew.cooper3@citrix.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>
References: <20231009195747.889326-1-stewart.hildebrand@amd.com>
 <20231009195747.889326-3-stewart.hildebrand@amd.com>
 <5f69d9de-23af-429f-afa5-4623bedbb3ed@xen.org>
From: Stewart Hildebrand <stewart.hildebrand@amd.com>
In-Reply-To: <5f69d9de-23af-429f-afa5-4623bedbb3ed@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SA2PEPF000015CA:EE_|MW6PR12MB8868:EE_
X-MS-Office365-Filtering-Correlation-Id: d31cb0d6-9fdd-41ef-2d91-08dbd58d55be
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	t7Xgkpk3tN44CWC5K0E8VPuvu5ud6n4cgycMPU5LjliAbRoFzpplCyvXxF5fS7DWDk5mUCboYQEw0LJ4vBMq+9DOfQ5L8WTfIl0Fo5vZKoEP2OP1zPg9LD4R3R82KLezf2v2Rf2X8qSjovvT9KoiziT/8aEXpKGeUPw2piz1XVlAoLCbDb1o48L9beVbOS8t80sLrCRIntz8mpnecMgLbaVumzYi5ZaI1755+/kyBb5h/NHfF5hlpwxTIsWAMQoF8Llq9B2lldJhNUaemL039MxBcdFK5caUx4RUOG2Z+YYkCM5/oJklqcxVjCYGY0tymSJZfeMyUOwe8rl0nOv2aB4/QrWWjPR3ye7C+ljIB9D2ZWh+TC3XrB9ZJknnHrEFhXgLdF28bA+qtJme2dFOtlyc4z7HrP/kP1iONhzYD2BCSzqRhOQyDrpSVdLtjqNOXuroKgP//wrYIEII88U7JYk4fCtrCmNkIz0VaaxjsfjLnRyrDj7iRuwmSsei8AvkrRovklvztYXLGkQ9mX0Uif3ybOEbynLpyIahgy/8C3tB9sXI9QTmw5bJCJ+Z2KAIZTb8Dajq6SNq2gt2vpG+Q6pAnAsrarhmTcZH+DoZ0S67HU3PlF3ZM+TcX4XSGwmdeyDFCAn6jgV72PsPDI5oCILOH+YXOB22q3l975zTnvUrJOOxetfMkJc9H7J6S9PUfNCBvnPmUTRvxaE/kU6wzWeR1u6zbvK3ZbsYN0r7DyvCAqaRNsz1Ggh6KQf47DQrnNbHPDYjyrtl5jse3HwujGn8WBDESAFgNFNTjLWvTAi3oa+cRs9xolQBSUuVyNpG
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)(230922051799003)(1800799009)(186009)(64100799003)(82310400011)(451199024)(40470700004)(46966006)(36840700001)(26005)(31686004)(2906002)(36860700001)(70206006)(41300700001)(44832011)(5660300002)(86362001)(40460700003)(7416002)(31696002)(4326008)(8936002)(8676002)(70586007)(82740400003)(16576012)(478600001)(110136005)(54906003)(81166007)(36756003)(356005)(316002)(83380400001)(2616005)(40480700001)(336012)(426003)(47076005)(53546011)(36900700001)(43740500002);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Oct 2023 19:05:20.8064
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: d31cb0d6-9fdd-41ef-2d91-08dbd58d55be
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:
	SA2PEPF000015CA.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW6PR12MB8868

On 10/20/23 13:25, Julien Grall wrote:
> On 09/10/2023 20:57, Stewart Hildebrand wrote:
>> Add a flag to struct xen_arch_domainconfig to allow specifying at domain
>> creation time whether the domain uses vPCI.
>>
>> Add a corresponding flag to struct arch_domain to indicate vPCI and set it
>> accordingly.
> 
> The new boolean you are adding doesn't seem very arch specific. So could
> we use a bit in xen_domctl_createdomain.flags?

Right. Yes. Since x86 already has a vpci flag in xen_domctl_createdomain.arch.emulation_flags, I think the way forward is to move the x86 vpci flag to the common xen_domctl_createdomain.flags.

> 
>>
>> Bump XEN_DOMCTL_INTERFACE_VERSION since we're modifying struct
>> xen_arch_domainconfig.
>>
>> Signed-off-by: Stewart Hildebrand <stewart.hildebrand@amd.com>
>> ---
>> v2->v3:
>> * new patch
>> ---
>>   xen/arch/arm/domain.c             | 10 ++++++++++
>>   xen/arch/arm/include/asm/domain.h |  2 ++
>>   xen/include/public/arch-arm.h     |  4 ++++
>>   xen/include/public/domctl.h       |  2 +-
>>   4 files changed, 17 insertions(+), 1 deletion(-)
>>
>> diff --git a/xen/arch/arm/domain.c b/xen/arch/arm/domain.c
>> index 28e3aaa5e482..9470c28595da 100644
>> --- a/xen/arch/arm/domain.c
>> +++ b/xen/arch/arm/domain.c
>> @@ -687,6 +687,13 @@ int arch_sanitise_domain_config(struct xen_domctl_createdomain *config)
>>           return -EINVAL;
>>       }
>>
>> +    if ( (config->arch.pci_flags & XEN_DOMCTL_CONFIG_PCI_VPCI) &&
>> +         !IS_ENABLED(CONFIG_HAS_VPCI) )
>> +    {
>> +        dprintk(XENLOG_INFO, "vPCI support not enabled\n");
>> +        return -EINVAL;
>> +    }
>> +
>>       return 0;
>>   }
>>
>> @@ -737,6 +744,9 @@ int arch_domain_create(struct domain *d,
>>           BUG();
>>       }
>>
>> +    if ( config->arch.pci_flags & XEN_DOMCTL_CONFIG_PCI_VPCI )
>> +        d->arch.has_vpci = true;
>> +
>>       if ( (rc = domain_vgic_register(d, &count)) != 0 )
>>           goto fail;
>>
>> diff --git a/xen/arch/arm/include/asm/domain.h b/xen/arch/arm/include/asm/domain.h
>> index 99e798ffff68..0a66ed09a617 100644
>> --- a/xen/arch/arm/include/asm/domain.h
>> +++ b/xen/arch/arm/include/asm/domain.h
>> @@ -119,6 +119,8 @@ struct arch_domain
>>       void *tee;
>>   #endif
>>
>> +    bool has_vpci;
>> +
>>   }  __cacheline_aligned;
>>
>>   struct arch_vcpu
>> diff --git a/xen/include/public/arch-arm.h b/xen/include/public/arch-arm.h
>> index 6a4467e8f5d1..5c8424341aad 100644
>> --- a/xen/include/public/arch-arm.h
>> +++ b/xen/include/public/arch-arm.h
>> @@ -300,6 +300,8 @@ DEFINE_XEN_GUEST_HANDLE(vcpu_guest_context_t);
>>   #define XEN_DOMCTL_CONFIG_TEE_OPTEE     1
>>   #define XEN_DOMCTL_CONFIG_TEE_FFA       2
>>
>> +#define XEN_DOMCTL_CONFIG_PCI_VPCI      (1U << 0)
>> +
>>   struct xen_arch_domainconfig {
>>       /* IN/OUT */
>>       uint8_t gic_version;
>> @@ -323,6 +325,8 @@ struct xen_arch_domainconfig {
>>        *
>>        */
>>       uint32_t clock_frequency;
>> +    /* IN */
>> +    uint8_t pci_flags;
> 
> Regardless what I wrote above. Do you have any plan for adding more PCI
> specific flags?

No

> If not, then if you want to keep the flag Arm specific,
> then I think this should be named pci_flags.
> 
> As you add a new field, I believe, you also want to modoify the various
> language specific bindings (e.g. go, ocaml).

OK

> 
>>   };
>>   #endif /* __XEN__ || __XEN_TOOLS__ */
>>
>> diff --git a/xen/include/public/domctl.h b/xen/include/public/domctl.h
>> index a33f9ec32b08..dcd42b3d603d 100644
>> --- a/xen/include/public/domctl.h
>> +++ b/xen/include/public/domctl.h
>> @@ -21,7 +21,7 @@
>>   #include "hvm/save.h"
>>   #include "memory.h"
>>
>> -#define XEN_DOMCTL_INTERFACE_VERSION 0x00000016
>> +#define XEN_DOMCTL_INTERFACE_VERSION 0x00000017
>>
>>   /*
>>    * NB. xen_domctl.domain is an IN/OUT parameter for this operation.
> 
> Cheers,
> 
> -- 
> Julien Grall


From xen-devel-bounces@lists.xenproject.org Wed Oct 25 19:19:39 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 19:19:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623184.970764 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvjPY-0006oI-UR; Wed, 25 Oct 2023 19:19:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623184.970764; Wed, 25 Oct 2023 19: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 1qvjPY-0006oB-R5; Wed, 25 Oct 2023 19:19:24 +0000
Received: by outflank-mailman (input) for mailman id 623184;
 Wed, 25 Oct 2023 19: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=Lpe5=GH=amd.com=Stewart.Hildebrand@srs-se1.protection.inumbo.net>)
 id 1qvjPW-0006o1-QV
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 19:19:22 +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 64b32b78-736b-11ee-98d5-6d05b1d4d9a1;
 Wed, 25 Oct 2023 21:19:20 +0200 (CEST)
Received: from CY5PR15CA0082.namprd15.prod.outlook.com (2603:10b6:930:18::11)
 by LV3PR12MB9332.namprd12.prod.outlook.com (2603:10b6:408:20f::14)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.33; Wed, 25 Oct
 2023 19:19:16 +0000
Received: from CY4PEPF0000E9D9.namprd05.prod.outlook.com
 (2603:10b6:930:18:cafe::a7) by CY5PR15CA0082.outlook.office365.com
 (2603:10b6:930:18::11) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.33 via Frontend
 Transport; Wed, 25 Oct 2023 19:19:15 +0000
Received: from SATLEXMB03.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.6933.15 via Frontend Transport; Wed, 25 Oct 2023 19:19: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.32; Wed, 25 Oct
 2023 14:19:13 -0500
Received: from [172.30.200.120] (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.32 via Frontend
 Transport; Wed, 25 Oct 2023 14:19: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: 64b32b78-736b-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=E3GnuVDhmUhivyLdq2DZSfC4HslZZm19konEXXXlCsB+MVxwp9cK7kpZhSFIVuHZ9U6bB8J6bPCdulZGPXlLX995b+lnmyKMPFNYhj+GMs6YC7j+5mArUi805t9W0ax90+7+6YyjviL1FJozeMBOv4FsY1pe6G7TUfci0MamOUZHT4ClrgkrTzUDmwpfSx+0K8uvdSQYAl4YOD/NPb0hJh/hGMAGLRxGiP5SNUt+0N57etwiF0hcddmKpjrm4ql/NZjiEd3rLeJcV1HFCeVG7CVy50rDaYFnAfcYCkN4DZNBDBcOT1MGAW4uX3hoZqCTlvgu7mByAkFJKcTafY8B5A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=RASlQHoru4oseIk41rX07mI1o7EkWFyJ2TklU0lx76I=;
 b=PIYDb9NPgbK1x/1vCri+oPdztCD7O88VzY4vFZ6IeGj0oP6LqYnVhSToOC6upVzdUKYm/4FotOQ/eJrTQ80zpNmWYpmA54FOw4bwkjLNZq7oUFCZ14x14eq6gI1LLZNPwcMfTCG8CTquqU+7j97lTE8f7MH/EHWqTnEQnKUEXK/v5Yk3pCbaInade0/oDNRXOKRtlLxc/vEzd/eUb55IISoCzMp7ye8oEICnO4rmunYKTtMUpi2RFYB9oZqABqhW5sw//Xdq6vj9w3DGF6sNkh/TFN+cIt0a5ZSdIC8mHTG2KKrP549KchzakiQe4z8+zTu1v5qY5+Ceuv2D/kAxKA==
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=RASlQHoru4oseIk41rX07mI1o7EkWFyJ2TklU0lx76I=;
 b=qA9Pe1ZHz5zV2tCBQBh3SggNGHll1lteP49t4GSTovMvufXY2W57G+CmSG9tzRYzIJ+ZSwxCtwpUKvqcSFzVpNU2XWfdjrKB48+e12i6HF1y3rc0fkO62cNwDOawO3vXc/g15MJUVOWvaYiRdDae5APcIw2XNHr1GeWQR+P3cac=
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: <c563db76-1ed3-4a22-be4c-9d8300907487@amd.com>
Date: Wed, 25 Oct 2023 15:19:06 -0400
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v3 3/5] xen/arm: make has_vpci() depend on
 d->arch.has_vpci
Content-Language: en-US
To: Julien Grall <julien@xen.org>, <xen-devel@lists.xenproject.org>
CC: Oleksandr Andrushchenko <oleksandr_andrushchenko@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: <20231009195747.889326-1-stewart.hildebrand@amd.com>
 <20231009195747.889326-4-stewart.hildebrand@amd.com>
 <972ac641-9dff-4668-87eb-f48d9d0497c6@xen.org>
From: Stewart Hildebrand <stewart.hildebrand@amd.com>
In-Reply-To: <972ac641-9dff-4668-87eb-f48d9d0497c6@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: CY4PEPF0000E9D9:EE_|LV3PR12MB9332:EE_
X-MS-Office365-Filtering-Correlation-Id: 41e8f723-63d8-4f95-b8cf-08dbd58f46fe
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	qY3LDJnxNeRPj3+hAb+bx7weRuHqioVi0wWc8BikMOm8HEJ0+eeA5aRTtU20XktBKwLYuYf1DQyNGQOtYCRQnS+QJtTbD4samslorsHRO9/PjwLDxaNyjo3MA87CZrebIkm0gfVBom6YDIpBhuZkxiyoeclMOWdcsriX5+2CKvzMNAUODDQ4gJVhAJyZHh0Tbh1D58I6GiwyE06zrJ1/y/Tu/mKCWOBaYYo4dsTkWlsklIreDyTKokOAnzGZO3fsAQNGQeB27lle6uCZVf4fEzeT4HG9U7hOOurm7yfshjTcFlcYvzLgvQRF76ibsBpn2+GX9oA+MmXh9jjSZyCcYkxYI26vx0+tvWfELCZs7SPZQGwUUCTUmXp/IDEvX1pFsnavcowmDYcEKDD4QWXFSwQOHPh7HHTRngRFCqVLXEWedU/EBeHGWX5HIEGtZbAwt3gwHqmH06E5SgMvZQApBHZD+eB2ZZ6tyEW1qFGxzZAz5Eh2JgHk3jUyx81rc1RV5THBADUY3gdz3SSSJnC7kMmOFNPH4IPtxJxvrweC1NoBiVtK7oUzBe3HPJJF/Q+ePG9BdHdL4g049HnOgsapsuXaYWE8ntFEsODA2JwL+8sM/ubjxXV7gGUqPPcdkGk5E1PwzFAsX+3Z095MUY1dtOrxbrWNYYFSyUr7FUyD2sbGDzQPr8GgstDTDG8ugqw4bMHh0JodiseDOgj5v7UYNPSOBSEHX+U+CXMo0ITRJZh38Eos8Slr4s3li1h6nq0NHUEQqmeh02Qvo8CbXExoUCPsNad5Y90HoQV5C5+7uP8hX2duMi/KHEHECb+IRHBh+a5j882l6VafjGPVv4Yfqg==
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)(230922051799003)(64100799003)(1800799009)(451199024)(186009)(82310400011)(46966006)(36840700001)(40470700004)(31686004)(478600001)(2906002)(40460700003)(4326008)(5660300002)(8676002)(8936002)(44832011)(40480700001)(36756003)(41300700001)(316002)(70586007)(70206006)(426003)(86362001)(6666004)(966005)(54906003)(16576012)(110136005)(26005)(31696002)(2616005)(82740400003)(336012)(356005)(36860700001)(83380400001)(53546011)(47076005)(81166007)(43740500002)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Oct 2023 19:19:15.0101
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 41e8f723-63d8-4f95-b8cf-08dbd58f46fe
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:
	CY4PEPF0000E9D9.namprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: LV3PR12MB9332

On 10/20/23 13:29, Julien Grall wrote:
> Hi,
> 
> On 09/10/2023 20:57, Stewart Hildebrand wrote:
>> From: Oleksandr Andrushchenko <oleksandr_andrushchenko@epam.com>
>>
>> VPCI is disabled on ARM. Make it depend on d->arch.has_vpci to enable the PCI
>> passthrough support on ARM.
>>
>> While here, remove the comment on the preceding line.
>>
>> Signed-off-by: Oleksandr Andrushchenko <oleksandr_andrushchenko@epam.com>
>> Signed-off-by: Rahul Singh <rahul.singh@arm.com>
>> Signed-off-by: Stewart Hildebrand <stewart.hildebrand@amd.com>
> 
> I think this patch should be folded in patch #2. With that the
> hypervisor part would be properly plumbed as soon as the flag is introduced.

Will do. If moving the vpci flag to xen_domctl_createdomain.flags, there is not much arch specific about has_vpci(d), so I think this could also be moved to a common header, like xen/include/xen/domain.h.

> 
>> ---
>> There are two downstreams [1] [2] that have independently made a version this
>> change, each with different Signed-off-by's. I simply picked one at random for
>> the Author: field, and added both Signed-off-by lines. Please let me know if
>> there are any objections.
>>
>> v2->v3:
>> * use d->arch.has_vpci since plumbing struct arch_domain with a vPCI flag
>>
>> v1->v2:
>> * add is_hardware_domain check. This will need to be removed after the vPCI
>>    series [3] is merged.
>>
>> downstream->v1:
>> * change to IS_ENABLED(CONFIG_HAS_VPCI) instead of hardcoded to true
>> * remove the comment on the preceding line
>>
>> [1] https://gitlab.com/xen-project/people/bmarquis/xen-arm-poc/-/commit/27be1729ce8128dbe37275ce7946b2fbd2e5a382
>> [2] https://github.com/xen-troops/xen/commit/bf12185e6fb2e31db0d8e6ea9ccd8a02abadec17
>> [3] https://lists.xenproject.org/archives/html/xen-devel/2023-08/msg02361.html
>> ---
>>   xen/arch/arm/include/asm/domain.h | 3 +--
>>   1 file changed, 1 insertion(+), 2 deletions(-)
>>
>> diff --git a/xen/arch/arm/include/asm/domain.h b/xen/arch/arm/include/asm/domain.h
>> index 0a66ed09a617..ebba2c25dceb 100644
>> --- a/xen/arch/arm/include/asm/domain.h
>> +++ b/xen/arch/arm/include/asm/domain.h
>> @@ -300,8 +300,7 @@ static inline void arch_vcpu_block(struct vcpu *v) {}
>>
>>   #define arch_vm_assist_valid_mask(d) (1UL << VMASST_TYPE_runstate_update_flag)
>>
>> -/* vPCI is not available on Arm */
>> -#define has_vpci(d)    ({ (void)(d); false; })
>> +#define has_vpci(d) ( (d)->arch.has_vpci )
> 
> Coding style: I don't believe we add space after ( and before ) in this
> situation.

OK

> 
> Cheers,
> 
> -- 
> Julien Grall


From xen-devel-bounces@lists.xenproject.org Wed Oct 25 19:30:05 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 19:30:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623188.970773 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvjZn-0000Yb-S8; Wed, 25 Oct 2023 19:29:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623188.970773; Wed, 25 Oct 2023 19:29: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 1qvjZn-0000YU-Pb; Wed, 25 Oct 2023 19:29:59 +0000
Received: by outflank-mailman (input) for mailman id 623188;
 Wed, 25 Oct 2023 19:29: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=xaZJ=GH=cloud.com=edwin.torok@srs-se1.protection.inumbo.net>)
 id 1qvjZn-0000YO-3c
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 19:29:59 +0000
Received: from mail-ej1-x633.google.com (mail-ej1-x633.google.com
 [2a00:1450:4864:20::633])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id e1ddf04c-736c-11ee-98d5-6d05b1d4d9a1;
 Wed, 25 Oct 2023 21:29:57 +0200 (CEST)
Received: by mail-ej1-x633.google.com with SMTP id
 a640c23a62f3a-9a6190af24aso23292566b.0
 for <xen-devel@lists.xenproject.org>; Wed, 25 Oct 2023 12:29:57 -0700 (PDT)
Received: from edvint-x-u.eng.citrite.net ([185.25.67.249])
 by smtp.gmail.com with ESMTPSA id
 hv6-20020a17090760c600b00985ed2f1584sm10408710ejc.187.2023.10.25.12.29.56
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 25 Oct 2023 12: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: e1ddf04c-736c-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1698262197; x=1698866997; 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=pDxkD+A5E3zD+dh5+2dNxlmVsOA+sHZME9bukK+va6M=;
        b=YlY0a0WCnnWj7Pe9XeastUjWy8i6U26TFh8inq14vkphFsplnvM9FMuT4bjZ5IiFp5
         4i1UC5VjGVn058FQcgqlNncXYE2DUsL81dUgQnc0/AghC0fGM+irvCie3a3fw4w68BoW
         beFmYfxHVk1ln0WFRPsZ5eIf1MJMBl6GnmLn4=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698262197; x=1698866997;
        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=pDxkD+A5E3zD+dh5+2dNxlmVsOA+sHZME9bukK+va6M=;
        b=p/VkNslIqkmBWEt2fAs5fnNvQyYVRumAdi0oyjgsBQd5kbusbp98gcyLRCoa9+1J+C
         psrlVZgw+V+eLRHvxaCxliReqQzuufgJ8wnUzLRuFvlwUDhX5pPsBBPCXJL7ctGaISYP
         LmpeN4G1uH4+K1ydnGTzFSi6cdwkoF3fRmsPHvcS6IWuIXo7EeUsxdXzOLxavhtP4yBb
         6F3uuFtHWy7x62t9Ys8hlbbI89N7UGd05k0SInzwn/Je9hmSEWTGgezHET+EUg88lDiT
         wXx/RxUL8yJZm0tTkq8aZ8jzoydDU3Pdx2kcGXrrmMPMLJgi+SZa2LwMhq9xmBGp0sXm
         rBkQ==
X-Gm-Message-State: AOJu0Yw0i57HheiO9LHkzZ/SPCzLsy8Ws1zp8hoRcZHT5KqO+z6l8spf
	qHy04DH5U25z5P2gq6g0DPvDWDpvdmQriaf89xgAkKae
X-Google-Smtp-Source: AGHT+IFvVFtL/e/JLTsCsc9+lm+Go7R+Vy98je34yfz3U8PuPiV5jwKaWKSpYA4ziUjQFwYEV85FIQ==
X-Received: by 2002:a17:907:e8d:b0:9c0:1d65:68d9 with SMTP id ho13-20020a1709070e8d00b009c01d6568d9mr14425677ejc.7.1698262197237;
        Wed, 25 Oct 2023 12:29:57 -0700 (PDT)
From: =?UTF-8?q?Edwin=20T=C3=B6r=C3=B6k?= <edwin.torok@cloud.com>
To: xen-devel@lists.xenproject.org
Cc: =?UTF-8?q?Edwin=20T=C3=B6r=C3=B6k?= <edwin.torok@cloud.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>,
	Jun Nakajima <jun.nakajima@intel.com>,
	Kevin Tian <kevin.tian@intel.com>
Subject: [RFC PATCH 00/22] vPMU bugfixes and support for PMUv5
Date: Wed, 25 Oct 2023 20:29:30 +0100
Message-Id: <cover.1698261255.git.edwin.torok@cloud.com>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

These are a set of patches to improve performance monitoring in Xen.
It starts by fixing MSR_PLATFORM_INFO and making MSR_SMI_COUNT available.
Also allows a pinned Dom0 to read any MSR, there is no reason why this shouldn't be allowed, and it prevents having to recompile Xen in order to investigate a problem that is difficult to reproduce (e.g. one such MSR is the SMI counter).

Then it fixes bugs in each architectural PMU version starting from version 1, and introduces support
for new features up to version 5. This was done by reading the Intel SDM for each version and checking whether Xen implements the needed features correctly.

AMD is next with fixes for performance counters that were readable but not exposed in CPUID, and new support for another performance counter.

There is more to be done here (APERF/MPERF, IBS, temperature monitoring, and I haven't even began approaching uncore counters), but those are difficult to do correctly and I've split them out of this series.

The patches were written in 2021, then git segfaulted when rebasing them and they got lost in a branch until now.
I've rebased and compile-tested them on latest Xen master, but I haven't done any further testing on them yet, hence the RFC prefix to mark these as experimental (e.g. I'm not entirely sure whether some changes got lost in the cpuid.c to cpu-policy.c rebase or not).

I'm sending this out as an RFC so it is not lost again, and I'll resend a proper version once the code has been tested more.
The backport tags attempt to indicate which version of Xen is the oldest one that has a bug fixed by the patch, should a backport be desired.
E.g. Xen with vpmu on would claim it supports PMUv3, but doesn't actually implement it correctly, so those patches+AMD CPUID fix could be backported.

Edwin Török (22):
  x86/msr: MSR_PLATFORM_INFO shouldn't claim that turbo is programmable
  x86/msr: implement MSR_SMI_COUNT for Dom0 on Intel
  x86/msr: always allow a pinned Dom0 to read any unknown MSR
  x86/msr-index: add references to vendor manuals
  x86/PMUv1: report correct information in 0xa CPUID
  x86/PMUv1: limit arch PMCs to 4 for non-Dom0
  x86/PMUv1: allow topdown slots arch perf event
  x86/PMUv1: define macro for max number of events
  x86/PMUv1: consistently use 8 perf counters in Dom0
  x86/PMUv2: limit number of fixed perf counters to 3
  x86/PMUv2: freeze support in IA32_DEBUGCTL
  x86/msr-index: define more architectural MSRs
  x86/vpmu: expose PDCM and IA32_PERF_CAPABILITIES when vpmu is enabled
  x86/msr: RO MSR_TURBO_RATIO_LIMIT{,1,2}, MSR_TEMPERATURE_TARGET
  x86/VPMU: use macros for max supported VPMU version
  x86/PMUv4: support LBR_Frz and CTR_Frz
  x86/PMUv4: IA32_PERF_GLOBAL_{STATUS_SET, INUSE} support
  x86/PMUv4: disable intercept for PERF_GLOBAL_STATUS
  x86/PMUv4: bump max PMU version to 4
  x86/PMUv5: limit available fixed PMCs and enable support
  x86/AMD: fix CPUID for PerfCtr{4,5}
  x86/AMD: add IRPerf support

 xen/arch/x86/cpu-policy.c                   | 32 +++++--
 xen/arch/x86/cpu/vpmu_intel.c               | 99 ++++++++++++++-------
 xen/arch/x86/cpuid.c                        | 40 ++++++++-
 xen/arch/x86/hvm/svm/svm.c                  |  4 +
 xen/arch/x86/hvm/vmx/vmx.c                  | 33 +++++--
 xen/arch/x86/include/asm/msr-index.h        | 79 ++++++++++++++--
 xen/arch/x86/include/asm/vpmu.h             | 32 +++++++
 xen/arch/x86/msr.c                          | 22 +++++
 xen/arch/x86/pv/emul-priv-op.c              | 28 +++---
 xen/include/public/arch-x86/cpufeatureset.h |  6 +-
 xen/include/xen/lib/x86/cpu-policy.h        |  5 +-
 11 files changed, 317 insertions(+), 63 deletions(-)

-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Wed Oct 25 19:30:05 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 19:30:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623192.970807 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvjZt-0001qN-4u; Wed, 25 Oct 2023 19:30:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623192.970807; Wed, 25 Oct 2023 19: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 1qvjZt-0001pj-09; Wed, 25 Oct 2023 19:30:05 +0000
Received: by outflank-mailman (input) for mailman id 623192;
 Wed, 25 Oct 2023 19:30: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=xaZJ=GH=cloud.com=edwin.torok@srs-se1.protection.inumbo.net>)
 id 1qvjZr-0001Lv-Q7
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 19:30:03 +0000
Received: from mail-ej1-x629.google.com (mail-ej1-x629.google.com
 [2a00:1450:4864:20::629])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id e4082b4f-736c-11ee-9b0e-b553b5be7939;
 Wed, 25 Oct 2023 21:30:01 +0200 (CEST)
Received: by mail-ej1-x629.google.com with SMTP id
 a640c23a62f3a-9b95622c620so24429366b.0
 for <xen-devel@lists.xenproject.org>; Wed, 25 Oct 2023 12:30:01 -0700 (PDT)
Received: from edvint-x-u.eng.citrite.net ([185.25.67.249])
 by smtp.gmail.com with ESMTPSA id
 hv6-20020a17090760c600b00985ed2f1584sm10408710ejc.187.2023.10.25.12.30.00
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 25 Oct 2023 12:30: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: e4082b4f-736c-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1698262201; x=1698867001; 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=q52Q1bg8EwRk5uyN9PN5npyenGJL42vG+cI2ukLBfR8=;
        b=UghYwxM6eNUCHWTr+y5tNHJ8Yu6Y2UMZ6ZZPprpEaJeoyX/WVYTzEjxOEC1rD3aG8X
         vdFNZp8LXm7oVDQ15Q0ar5AHAcgm3Cg61q87esA7DRsLNe0pyc0L+fvCujyULZ1bdpPB
         dNkXpxsn6grUw3LLwzPradwj3NPSWEmyeMx8I=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698262201; x=1698867001;
        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=q52Q1bg8EwRk5uyN9PN5npyenGJL42vG+cI2ukLBfR8=;
        b=Z80Pv9ZyMLbOq1bWKdcMxmuOgKgfXrWUu4MagiS6VrHjBUqgtvz2Khg35ZZhqe0h2+
         Dvnr7EBjuwbp6V3U3jEWqyoQr5yqA4Mx1qtuxpySJMqIcaqoQsmxGuFxiMvdp/0y2Xcb
         rr7Udw+yZAjSd1G2bUzY9wTcCP4fuJJFxF2ya9cZj1K+7Zg/6yVuJFpth1xNUgoEzALp
         j85xuems0Bk9Xhk63ZMz0g2pqPbQZUN5m/FM86Vp9Mlrl/DDI18DJXxGVY2HC4cMAtdo
         nng67v2SvaA6OGyXGgjzoCns3fzJAcIukjO/xyHKNw4Km0AS/lOF7Ocg1411t/iFqgm4
         YUEA==
X-Gm-Message-State: AOJu0Yx9N0/VszveJLz9nMLCQQ1QXpnRCKEKLJcC1S37ERWar4PXBiDi
	zxjRlsDVvxfEiNV3orzxhGYpwA8W3X3oKvdFBMjTjC/6
X-Google-Smtp-Source: AGHT+IEDuSoHLBTSYKrv2dcyhFL37zkfx/6RXE+qOUBBIBiN5yWyjunViK6qHo6pKXlKofiH72yPbg==
X-Received: by 2002:a17:906:fd82:b0:9b2:7367:a6a4 with SMTP id xa2-20020a170906fd8200b009b27367a6a4mr13965194ejb.31.1698262201049;
        Wed, 25 Oct 2023 12:30:01 -0700 (PDT)
From: =?UTF-8?q?Edwin=20T=C3=B6r=C3=B6k?= <edwin.torok@cloud.com>
To: xen-devel@lists.xenproject.org
Cc: =?UTF-8?q?Edwin=20T=C3=B6r=C3=B6k?= <edvin.torok@citrix.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: [RFC PATCH 04/22] x86/msr-index: add references to vendor manuals
Date: Wed, 25 Oct 2023 20:29:34 +0100
Message-Id: <7e4418cfb1daa172e78fc47098a4018ae0493e23.1698261255.git.edwin.torok@cloud.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1698261255.git.edwin.torok@cloud.com>
References: <cover.1698261255.git.edwin.torok@cloud.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

From: Edwin Török <edvin.torok@citrix.com>

To more easily lookup the semantics of these MSRs add references to
vendor manuals.

Signed-off-by: Edwin Török <edvin.torok@citrix.com>
---
 xen/arch/x86/include/asm/msr-index.h | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/xen/arch/x86/include/asm/msr-index.h b/xen/arch/x86/include/asm/msr-index.h
index 2853a276ca..8601f8f426 100644
--- a/xen/arch/x86/include/asm/msr-index.h
+++ b/xen/arch/x86/include/asm/msr-index.h
@@ -13,6 +13,16 @@
  * Blocks of related constants should be sorted by MSR index.  The constant
  * names should be as concise as possible, and the bit names may have an
  * abbreviated name.  Exceptions will be considered on a case-by-case basis.
+ *
+ * References:
+ * - https://software.intel.com/content/www/us/en/develop/articles/intel-sdm.html
+ *    Intel(R) 64 and IA-32 architectures SDM volume 4: Model-specific registers
+ *    Chapter 2, "Model-Specific Registers (MSRs)"
+ *
+ * - https://developer.amd.com/resources/developer-guides-manuals/
+ *    AMD64 Architecture Programmer’s Manual Volume 2: System Programming
+ *    Appendix A "MSR Cross-Reference"
+ *
  */
 
 #define MSR_P5_MC_ADDR                      0
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Wed Oct 25 19:30:05 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 19:30:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623189.970784 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvjZp-0000nJ-3P; Wed, 25 Oct 2023 19:30:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623189.970784; Wed, 25 Oct 2023 19:30: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 1qvjZp-0000nC-0C; Wed, 25 Oct 2023 19:30:01 +0000
Received: by outflank-mailman (input) for mailman id 623189;
 Wed, 25 Oct 2023 19:30: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=xaZJ=GH=cloud.com=edwin.torok@srs-se1.protection.inumbo.net>)
 id 1qvjZo-0000YO-9i
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 19:30:00 +0000
Received: from mail-ej1-x633.google.com (mail-ej1-x633.google.com
 [2a00:1450:4864:20::633])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id e3020824-736c-11ee-98d5-6d05b1d4d9a1;
 Wed, 25 Oct 2023 21:29:59 +0200 (CEST)
Received: by mail-ej1-x633.google.com with SMTP id
 a640c23a62f3a-9c41e95efcbso18816966b.3
 for <xen-devel@lists.xenproject.org>; Wed, 25 Oct 2023 12:29:59 -0700 (PDT)
Received: from edvint-x-u.eng.citrite.net ([185.25.67.249])
 by smtp.gmail.com with ESMTPSA id
 hv6-20020a17090760c600b00985ed2f1584sm10408710ejc.187.2023.10.25.12.29.58
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 25 Oct 2023 12:29: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: e3020824-736c-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1698262199; x=1698866999; 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=JrcsVy0ZByqiAlrS1akx4lL5x1WkgTDXRbWzt5j813o=;
        b=hVoroQ6tWMxBlKGwSdRt4kMqYqbR41L9fMbrOC3kLOVVzduVp0PFBCQafhMRs3R/y1
         Vj+zoj3WdYHl2DSk2Y79aQsceDE93GARJbUBsz/DqAuF4YIiSVLpUpvIZd3qLbyZ+2BU
         cT9TrB04ZmsCv88oBX22OKLnf6Lc5QmvFFYyw=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698262199; x=1698866999;
        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=JrcsVy0ZByqiAlrS1akx4lL5x1WkgTDXRbWzt5j813o=;
        b=In+GAR6brLj8K0LRnAsGqWb0Id+ol2toIGX0cj1ij7QH99hgPzSIdIbZHaUF/0m3n3
         kgDm22wbH2R4cnA0TXCDlVVSB+qZjTZQK8NBuYHt5t0O20kTwyzAmH0xiUBpLte0uHoA
         rFunKuZ9NKh5V5+4jjoqVpZUlgbwTIrAOLb4++6YmGs3s72wkOFPSyh8wnp2u4MJlA62
         Ib9b0BuCeH6iwHuK1nrMoRBQ6JT+FSHJRdNnhajnvqOafivP0419z5xoxZlsWpyizqaZ
         /e4xw1/Q/0aSxJsFKu9U0+9UAe2NR36jSp1S3knXqtfVDqlaMe1AV4GlDFlqa7gppm2/
         DisQ==
X-Gm-Message-State: AOJu0YxRAZGgPx57uW2usjHYsF3Yq4KEMXOfaXPxlB/UMERPCjnNYkiy
	hadaxdENcXtBvj6mOEQ7wBiaH4Xe5ezbJZzrPMuBSlNi
X-Google-Smtp-Source: AGHT+IGKTzxUPC3TG6HAPPdbQQjreKqAMCHWDhPK8X0X8xM75TxTylLa1twuiHYjeQGjKJanjBsI+Q==
X-Received: by 2002:a17:907:320a:b0:9ba:2a5:75c5 with SMTP id xg10-20020a170907320a00b009ba02a575c5mr12366802ejb.75.1698262199318;
        Wed, 25 Oct 2023 12:29:59 -0700 (PDT)
From: =?UTF-8?q?Edwin=20T=C3=B6r=C3=B6k?= <edwin.torok@cloud.com>
To: xen-devel@lists.xenproject.org
Cc: =?UTF-8?q?Edwin=20T=C3=B6r=C3=B6k?= <edvin.torok@citrix.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: [RFC PATCH 02/22] x86/msr: implement MSR_SMI_COUNT for Dom0 on Intel
Date: Wed, 25 Oct 2023 20:29:32 +0100
Message-Id: <9d950b3c5502b5fb5fad62845b56b15d1bacc2d6.1698261255.git.edwin.torok@cloud.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1698261255.git.edwin.torok@cloud.com>
References: <cover.1698261255.git.edwin.torok@cloud.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

From: Edwin Török <edvin.torok@citrix.com>

Dom0 should always be able to read this MSR: it is useful when
investigating performance issues in production.
Although the count is Thread scoped, in practice all cores were observed
to return the same count (perhaps due to implementation details of SMM),
so do not require the cpu to be pinned in order to read it.

This MSR exists on Intel since Nehalem.

Backport: 4.15+

Signed-off-by: Edwin Török <edvin.torok@citrix.com>
---
 xen/arch/x86/include/asm/msr-index.h | 3 +++
 xen/arch/x86/msr.c                   | 7 +++++++
 2 files changed, 10 insertions(+)

diff --git a/xen/arch/x86/include/asm/msr-index.h b/xen/arch/x86/include/asm/msr-index.h
index 82a81bd0a2..2853a276ca 100644
--- a/xen/arch/x86/include/asm/msr-index.h
+++ b/xen/arch/x86/include/asm/msr-index.h
@@ -641,6 +641,9 @@
 #define MSR_NHL_LBR_SELECT		0x000001c8
 #define MSR_NHL_LASTBRANCH_TOS		0x000001c9
 
+/* Nehalem and newer other MSRs */
+#define MSR_SMI_COUNT                       0x00000034
+
 /* Skylake (and newer) last-branch recording */
 #define MSR_SKL_LASTBRANCH_0_FROM_IP	0x00000680
 #define MSR_SKL_LASTBRANCH_0_TO_IP	0x000006c0
diff --git a/xen/arch/x86/msr.c b/xen/arch/x86/msr.c
index c33dc78cd8..0bf6d263e7 100644
--- a/xen/arch/x86/msr.c
+++ b/xen/arch/x86/msr.c
@@ -139,6 +139,13 @@ int guest_rdmsr(struct vcpu *v, uint32_t msr, uint64_t *val)
         *val = msrs->misc_features_enables.raw;
         break;
 
+    case MSR_SMI_COUNT:
+        if ( cp->x86_vendor != X86_VENDOR_INTEL )
+            goto gp_fault;
+        if ( is_hardware_domain(d) && !rdmsr_safe(msr, *val) )
+            break;
+        return X86EMUL_UNHANDLEABLE;
+
     case MSR_P5_MC_ADDR:
     case MSR_P5_MC_TYPE:
     case MSR_IA32_MCG_CAP     ... MSR_IA32_MCG_CTL:      /* 0x179 -> 0x17b */
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Wed Oct 25 19:30:05 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 19:30:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623191.970804 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvjZs-0001my-QW; Wed, 25 Oct 2023 19:30:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623191.970804; Wed, 25 Oct 2023 19:30: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 1qvjZs-0001mj-N8; Wed, 25 Oct 2023 19:30:04 +0000
Received: by outflank-mailman (input) for mailman id 623191;
 Wed, 25 Oct 2023 19:30: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=xaZJ=GH=cloud.com=edwin.torok@srs-se1.protection.inumbo.net>)
 id 1qvjZr-0001Lv-5e
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 19:30:03 +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 e27fa6c8-736c-11ee-9b0e-b553b5be7939;
 Wed, 25 Oct 2023 21:29:59 +0200 (CEST)
Received: by mail-ed1-x536.google.com with SMTP id
 4fb4d7f45d1cf-53e3b8f906fso97551a12.2
 for <xen-devel@lists.xenproject.org>; Wed, 25 Oct 2023 12:29:59 -0700 (PDT)
Received: from edvint-x-u.eng.citrite.net ([185.25.67.249])
 by smtp.gmail.com with ESMTPSA id
 hv6-20020a17090760c600b00985ed2f1584sm10408710ejc.187.2023.10.25.12.29.57
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 25 Oct 2023 12:29: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: e27fa6c8-736c-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1698262198; x=1698866998; 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=/A/ZtRiyebqcEugV20RrAicCfJuzgWaLmL2OdhFzID8=;
        b=iGK4fpP2GLTiW/3k9ajlXfm6NcidMdRUgjNXW4VZKN7sX37tkBbqSujxdpG61O7DKC
         L+Yec4mpB+7S7V0DTeqYC+FD9L13FYZMAq0kd1L++tuF+RrrmjVgmrlRzouDx9DigsrJ
         +nsSSLOlGDUof1c4u33KJ68PYJpyumkl0uSBM=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698262198; x=1698866998;
        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=/A/ZtRiyebqcEugV20RrAicCfJuzgWaLmL2OdhFzID8=;
        b=XdybLkpFsGrUYeU/q7csb7GXdz8DottBhECHjgpXJFCjKxu976GOQar77i1+qMC44B
         g2D0M6gCxBFimHYA/16zQy21qm2+xldOaGlxycekiH7uYS8rdff02/p4CW3AZjLW4yex
         XkDOSKarJgNsIeLFH6rcAHdjXAs1v8jr79Me2JJS0o8g+uQI41/AuYj0SEOkrqEc7U+z
         NP6HB0NURNh74bMpDLjTgl69oZwFOBHKxsE3q/P2I0GOjs05BuTXj9DHxNR/8TrVVPBG
         wxdMXz1d4MGxYCbjSmqUTYdwdpf0pkVVVRn0Fpp+eXuyfUIH7pK9FVFLQDmXgwW+Ti1l
         lZ3w==
X-Gm-Message-State: AOJu0YxOF+1q/HmvCTJxbEcMNJ+D6YU/jlzStzu/NY7vGOr8naYZpkan
	bJvjT71cQLtBNGGbmNdVGZyaG+hg4T2lcuQqP3c6UFSb
X-Google-Smtp-Source: AGHT+IEzv3+OZXF7rpkTdLtgQRfAeXrM3F1CjoGpIFODMCInYL1OGkCIJ/S/jPBsn4pEyCpibdOo+w==
X-Received: by 2002:a17:907:720f:b0:9ae:6a60:81a2 with SMTP id dr15-20020a170907720f00b009ae6a6081a2mr11358501ejc.25.1698262198095;
        Wed, 25 Oct 2023 12:29:58 -0700 (PDT)
From: =?UTF-8?q?Edwin=20T=C3=B6r=C3=B6k?= <edwin.torok@cloud.com>
To: xen-devel@lists.xenproject.org
Cc: =?UTF-8?q?Edwin=20T=C3=B6r=C3=B6k?= <edvin.torok@citrix.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: [RFC PATCH 01/22] x86/msr: MSR_PLATFORM_INFO shouldn't claim that turbo is programmable
Date: Wed, 25 Oct 2023 20:29:31 +0100
Message-Id: <17a99e1da838a2edeeffa5a988e22c6fcb31406b.1698261255.git.edwin.torok@cloud.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1698261255.git.edwin.torok@cloud.com>
References: <cover.1698261255.git.edwin.torok@cloud.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

From: Edwin Török <edvin.torok@citrix.com>

Xen forbids writes to the various turbo control MSRs, however MSR_PLATFORM_INFO claims that these MSRs are writable.
Override MSR_PLATFORM_INFO bits to indicate lack of support.

See Intel SDM Volume 4, 2.17.6 "MSRs Introduced in the Intel Xeon Scaslable Processor Family",
which describes that MSR_PLATFORM_INFO.[28] = 1 implies that MSR_TURBO_RATIO_LIMIT is R/W,
and similarly bit 29 for TDP control, and bit 30 for MSR_TEMPERATURE_TARGET.

These bits were not all present on earlier processors, however where missing the bits were reserved,
and when present they are always present in the same bits.

(Curiously bit 31 that Xen uses is not documented anywhere in this manual but a separate one).

Backport: 4.0+

Signed-off-by: Edwin Török <edvin.torok@citrix.com>
---
 xen/arch/x86/cpu-policy.c            | 8 ++++++++
 xen/include/xen/lib/x86/cpu-policy.h | 5 ++++-
 2 files changed, 12 insertions(+), 1 deletion(-)

diff --git a/xen/arch/x86/cpu-policy.c b/xen/arch/x86/cpu-policy.c
index 81e574390f..64c8857a61 100644
--- a/xen/arch/x86/cpu-policy.c
+++ b/xen/arch/x86/cpu-policy.c
@@ -407,6 +407,14 @@ static void __init calculate_host_policy(void)
     /* 0x000000ce  MSR_INTEL_PLATFORM_INFO */
     /* probe_cpuid_faulting() sanity checks presence of MISC_FEATURES_ENABLES */
     p->platform_info.cpuid_faulting = cpu_has_cpuid_faulting;
+
+    /* Xen denies write access to turbo control MSRs, however natively the CPU may support them
+       and advertise those MSRs as writable by having bits 28 to 30 set to 1 in MSR_PLATFORM_INFO.
+       Set these bits to 0 to avoid confusing guests on the availability of turbo controls.
+    */
+    p->platform_info.programmable_ratio_turbo = 0;
+    p->platform_info.programmable_tdp_turbo = 0;
+    p->platform_info.programmable_tj_offset = 0;
 }
 
 static void __init guest_common_max_feature_adjustments(uint32_t *fs)
diff --git a/xen/include/xen/lib/x86/cpu-policy.h b/xen/include/xen/lib/x86/cpu-policy.h
index bab3eecda6..70479689f2 100644
--- a/xen/include/xen/lib/x86/cpu-policy.h
+++ b/xen/include/xen/lib/x86/cpu-policy.h
@@ -339,7 +339,10 @@ struct cpu_policy
     union {
         uint32_t raw;
         struct {
-            uint32_t :31;
+            uint32_t :28;
+            bool programmable_ratio_turbo:1;
+            bool programmable_tdp_turbo:1;
+            bool programmable_tj_offset:1;
             bool cpuid_faulting:1;
         };
     } platform_info;
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Wed Oct 25 19:30:05 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 19:30:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623190.970794 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvjZq-0001D9-D8; Wed, 25 Oct 2023 19:30:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623190.970794; Wed, 25 Oct 2023 19:30: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 1qvjZq-0001Ce-93; Wed, 25 Oct 2023 19:30:02 +0000
Received: by outflank-mailman (input) for mailman id 623190;
 Wed, 25 Oct 2023 19:30: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=xaZJ=GH=cloud.com=edwin.torok@srs-se1.protection.inumbo.net>)
 id 1qvjZp-0000YO-9H
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 19:30:01 +0000
Received: from mail-ej1-x633.google.com (mail-ej1-x633.google.com
 [2a00:1450:4864:20::633])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id e3990980-736c-11ee-98d5-6d05b1d4d9a1;
 Wed, 25 Oct 2023 21:30:00 +0200 (CEST)
Received: by mail-ej1-x633.google.com with SMTP id
 a640c23a62f3a-9b9faf05f51so19301666b.2
 for <xen-devel@lists.xenproject.org>; Wed, 25 Oct 2023 12:30:00 -0700 (PDT)
Received: from edvint-x-u.eng.citrite.net ([185.25.67.249])
 by smtp.gmail.com with ESMTPSA id
 hv6-20020a17090760c600b00985ed2f1584sm10408710ejc.187.2023.10.25.12.29.59
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 25 Oct 2023 12:29: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: e3990980-736c-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1698262200; x=1698867000; 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=AV8cFJRyXmuzAeVTWIZF+6fXtuxkE7JeXBoOk4GQqQ8=;
        b=V/jd0DiPJPJKN3g1eoVykvl5A/YVdmmGz2H3XsZHtWsaMe2Xa5ty2rqPg3k+D0r9ef
         2uaNPhSPcyy7m78YmgwGajYkfyr1uvXcdnTr0aoSCGNvtjFRTbdfpHMwQSRSK6mzkkT0
         3BAnPfdMND2AifhfbuqUzgimLo9kJg13MQA1I=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698262200; x=1698867000;
        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=AV8cFJRyXmuzAeVTWIZF+6fXtuxkE7JeXBoOk4GQqQ8=;
        b=uNM+D314ZyHry0IuVEG5icCPDOR6dadA0T3lnsxtUuYyMfDsEFuRBpy+Ardt2XMFTC
         BQVSCU/C1ECGWz6bWxtwqtGULZ51n5ORyxekkbpPLSV3qr9RY18c1aGsT0KpVSGqmujv
         HSu4mZEXYSTZNJ6KUPjmU82vuyDEhZOm1NiCG2ZsFJ3d1nPQfOigTUI78wTGJr+IrwM7
         fpShYJfo5KAyxCXYLeYtH7U6bjMogFsbHwe1P5RHTSpQdh9/cgqEE+NFo9Y+8dQVlLgF
         k7R06Ae1kj4bbTKt+P2lV+SXY1/upL1iPl9eE3VCHT401NcQwP5DsoUBHZ7//ID1J8Mc
         Inkw==
X-Gm-Message-State: AOJu0YxWXIdT8bAJ5t5nhnuued8BaMxu3j2KPDcykx8LPZ0gJQgnnFBX
	b/Bb1UWuhENCsFzP9dr2VbCZkuQ43TJl4NYbdszeqRVp
X-Google-Smtp-Source: AGHT+IFSB91m9XecdFlMZKXJ8BhUA1FJUNNvHyj1W5JVQeJmoQQHkNyOpxuPm6OLRRZhj961GioxLQ==
X-Received: by 2002:a17:906:fe48:b0:9c4:4b20:44a1 with SMTP id wz8-20020a170906fe4800b009c44b2044a1mr12987267ejb.65.1698262200084;
        Wed, 25 Oct 2023 12:30:00 -0700 (PDT)
From: =?UTF-8?q?Edwin=20T=C3=B6r=C3=B6k?= <edwin.torok@cloud.com>
To: xen-devel@lists.xenproject.org
Cc: =?UTF-8?q?Edwin=20T=C3=B6r=C3=B6k?= <edvin.torok@citrix.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>,
	Jun Nakajima <jun.nakajima@intel.com>,
	Kevin Tian <kevin.tian@intel.com>
Subject: [RFC PATCH 03/22] x86/msr: always allow a pinned Dom0 to read any unknown MSR
Date: Wed, 25 Oct 2023 20:29:33 +0100
Message-Id: <4c04e5661688cf1de3e3fd668b0a78b23b6d7b2e.1698261255.git.edwin.torok@cloud.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1698261255.git.edwin.torok@cloud.com>
References: <cover.1698261255.git.edwin.torok@cloud.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

From: Edwin Török <edvin.torok@citrix.com>

This can be useful if you realize you have to inspect the value of an
MSR in production, without having to change into a new Xen first that
handles the MSR.

E.g. SMI count didn't use to be explicitly allowed in the past
(it now is, see a previous commit), but there could be other MSRs that
are useful when tracking down issues.

Backport: 4.15+

Signed-off-by: Edwin Török <edvin.torok@citrix.com>
---
 xen/arch/x86/hvm/svm/svm.c     | 3 +++
 xen/arch/x86/hvm/vmx/vmx.c     | 3 +++
 xen/arch/x86/pv/emul-priv-op.c | 3 +++
 3 files changed, 9 insertions(+)

diff --git a/xen/arch/x86/hvm/svm/svm.c b/xen/arch/x86/hvm/svm/svm.c
index 24c417ca71..45f8e1ffd1 100644
--- a/xen/arch/x86/hvm/svm/svm.c
+++ b/xen/arch/x86/hvm/svm/svm.c
@@ -1933,6 +1933,9 @@ static int cf_check svm_msr_read_intercept(
         break;
 
     default:
+        if ( is_hwdom_pinned_vcpu(v) && !rdmsr_safe(msr, *msr_content) )
+            break;
+
         if ( d->arch.msr_relaxed && !rdmsr_safe(msr, tmp) )
         {
             *msr_content = 0;
diff --git a/xen/arch/x86/hvm/vmx/vmx.c b/xen/arch/x86/hvm/vmx/vmx.c
index 1edc7f1e91..f6e5123f66 100644
--- a/xen/arch/x86/hvm/vmx/vmx.c
+++ b/xen/arch/x86/hvm/vmx/vmx.c
@@ -3377,6 +3377,9 @@ static int cf_check vmx_msr_read_intercept(
         if ( vmx_read_guest_msr(curr, msr, msr_content) == 0 )
             break;
 
+        if ( is_hwdom_pinned_vcpu(curr) && !rdmsr_safe(msr, *msr_content) )
+            return X86EMUL_OKAY;
+
         if ( is_last_branch_msr(msr) )
         {
             *msr_content = 0;
diff --git a/xen/arch/x86/pv/emul-priv-op.c b/xen/arch/x86/pv/emul-priv-op.c
index 0d9f84f458..978ae679a2 100644
--- a/xen/arch/x86/pv/emul-priv-op.c
+++ b/xen/arch/x86/pv/emul-priv-op.c
@@ -985,6 +985,9 @@ static int cf_check read_msr(
         }
         /* fall through */
     default:
+        if ( is_hwdom_pinned_vcpu(curr) && !rdmsr_safe(reg, *val) )
+            return X86EMUL_OKAY;
+
         if ( currd->arch.msr_relaxed && !rdmsr_safe(reg, tmp) )
         {
             *val = 0;
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Wed Oct 25 19:30:06 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 19:30:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623193.970823 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvjZu-0002My-Kf; Wed, 25 Oct 2023 19:30:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623193.970823; Wed, 25 Oct 2023 19:30: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 1qvjZu-0002Kv-DY; Wed, 25 Oct 2023 19:30:06 +0000
Received: by outflank-mailman (input) for mailman id 623193;
 Wed, 25 Oct 2023 19: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=xaZJ=GH=cloud.com=edwin.torok@srs-se1.protection.inumbo.net>)
 id 1qvjZs-0001Lv-QD
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 19:30:04 +0000
Received: from mail-ej1-x62b.google.com (mail-ej1-x62b.google.com
 [2a00:1450:4864:20::62b])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id e4840e10-736c-11ee-9b0e-b553b5be7939;
 Wed, 25 Oct 2023 21:30:02 +0200 (CEST)
Received: by mail-ej1-x62b.google.com with SMTP id
 a640c23a62f3a-9b95622c620so24431766b.0
 for <xen-devel@lists.xenproject.org>; Wed, 25 Oct 2023 12:30:02 -0700 (PDT)
Received: from edvint-x-u.eng.citrite.net ([185.25.67.249])
 by smtp.gmail.com with ESMTPSA id
 hv6-20020a17090760c600b00985ed2f1584sm10408710ejc.187.2023.10.25.12.30.01
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 25 Oct 2023 12: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: e4840e10-736c-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1698262202; x=1698867002; 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=+4Ugom2BHWfSCQHaZ15aBTStdezniWO/0GIfarrnvRY=;
        b=G41IVVsNTjuJuI25uQ+S8ZI+6uaSBM+X0OQUVuFP55E7xqx+bipBRsMuJURzQk8/u3
         SyNLZb2zWPFF7iLO43mrUEwdmRXQPRaFJjQOaRCKyjmr4/vcXJ07yOP1KkU4toczYsUR
         Oc7O7mUbhx9wTi+C4B3kvwN1GS2Wk3NcQYNXM=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698262202; x=1698867002;
        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=+4Ugom2BHWfSCQHaZ15aBTStdezniWO/0GIfarrnvRY=;
        b=ILn+uP2EHgrdFC4Aq2UnVS3HYngjOAS1sr2N1mtHOwopE/cEunLKPmRSeRqxLgyQOj
         mcaCNKNmhBL9spala2WXnJL2JYgg8yIym/iKF2HkdapIqftrd+U1c9HGD+YTncee/J7u
         MMZwQSUtWqlStQONPFksbitZ3LP/rD2d4nUNGAJ/rmzXA6i8ML0ZRzgd4lMvcCbapfKg
         tQBzlUIx5tmFCDhV495s+wJMSnhjbwhdFBwh6xEV4TyBMrmj4y2IpLYRAYoLYlCnOux0
         a3RsPGBqMlRDmGdJdeJXHJ/u48Nbz49VpZWEJJlvsjb6M8cXpMIteZK3rM3FAgqqCQMA
         CbFQ==
X-Gm-Message-State: AOJu0YwnU57yRXJw0xWOVKNd6udXW73t0yQnsJqBz+2ig5pZQ7SOdH4F
	/efIkOMr2HzCJFZpDGMw6BnPUbSRXmIhkRNzOOJyQHwr
X-Google-Smtp-Source: AGHT+IHlyeNic58eWA6AVEhtXnW5b2tNaVHDqvEIfpVl/o8VVXuxMwbs+BxoU7A+kDntpz0Nz79TiA==
X-Received: by 2002:a17:906:c14b:b0:9ad:a59f:331a with SMTP id dp11-20020a170906c14b00b009ada59f331amr13625243ejc.57.1698262201789;
        Wed, 25 Oct 2023 12:30:01 -0700 (PDT)
From: =?UTF-8?q?Edwin=20T=C3=B6r=C3=B6k?= <edwin.torok@cloud.com>
To: xen-devel@lists.xenproject.org
Cc: =?UTF-8?q?Edwin=20T=C3=B6r=C3=B6k?= <edvin.torok@citrix.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: [RFC PATCH 05/22] x86/PMUv1: report correct information in 0xa CPUID
Date: Wed, 25 Oct 2023 20:29:35 +0100
Message-Id: <4a00165999a0cc250f097fc8eaab0649f1c05ac0.1698261255.git.edwin.torok@cloud.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1698261255.git.edwin.torok@cloud.com>
References: <cover.1698261255.git.edwin.torok@cloud.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

From: Edwin Török <edvin.torok@citrix.com>

The 0xa CPUID leaf has to report supported number of:
- fixed performance counters
- general purpose performance counters
- architectural predefined events

And the PMU version (which was already limited to 3).

Type punning is used, which should be safe due to -fno-strict-aliasing.

This limits the number of arch events supported when vpmu=arch on Icelake.

Backport: 4.0+

Signed-off-by: Edwin Török <edvin.torok@citrix.com>
---
 xen/arch/x86/cpu/vpmu_intel.c   |  2 +-
 xen/arch/x86/cpuid.c            | 39 ++++++++++++++++++++++++++++++---
 xen/arch/x86/include/asm/vpmu.h |  4 ++++
 3 files changed, 41 insertions(+), 4 deletions(-)

diff --git a/xen/arch/x86/cpu/vpmu_intel.c b/xen/arch/x86/cpu/vpmu_intel.c
index fa5b40c65c..9602728f1b 100644
--- a/xen/arch/x86/cpu/vpmu_intel.c
+++ b/xen/arch/x86/cpu/vpmu_intel.c
@@ -66,7 +66,7 @@ static bool_t __read_mostly full_width_write;
 #define ARCH_CNTR_PIN_CONTROL (1ULL << 19)
 
 /* Number of general-purpose and fixed performance counters */
-static unsigned int __read_mostly arch_pmc_cnt, fixed_pmc_cnt;
+unsigned int __read_mostly arch_pmc_cnt, fixed_pmc_cnt;
 
 /* Masks used for testing whether and MSR is valid */
 #define ARCH_CTRL_MASK  (~((1ull << 32) - 1) | (1ull << 21) | ARCH_CNTR_PIN_CONTROL)
diff --git a/xen/arch/x86/cpuid.c b/xen/arch/x86/cpuid.c
index 455a09b2dd..dfbcd1b3a4 100644
--- a/xen/arch/x86/cpuid.c
+++ b/xen/arch/x86/cpuid.c
@@ -304,9 +304,42 @@ void guest_cpuid(const struct vcpu *v, uint32_t leaf,
             *res = EMPTY_LEAF;
         else
         {
-            /* Report at most v3 since that's all we currently emulate. */
-            if ( (res->a & 0xff) > 3 )
-                res->a = (res->a & ~0xff) | 3;
+            union {
+                uint32_t eax;
+                struct {
+                    uint8_t version;
+                    uint8_t general_nr;
+                    uint8_t general_width;
+                    uint8_t arch_nr;
+                };
+            } u;
+            u.eax = res->a;
+
+            /* Report at most VPMU_VERSION_MAX since that's all we currently emulate. */
+            if ( u.version >  VPMU_VERSION_MAX ) {
+                gdprintk(XENLOG_WARNING, "Limiting PMU version to %d (actual %d)", VPMU_VERSION_MAX, u.version);
+                u.version = VPMU_VERSION_MAX;
+            }
+
+            if ( u.general_nr > arch_pmc_cnt ) {
+                gdprintk(XENLOG_WARNING, "Limiting general purpose PMU count to %d (actual %d)", arch_pmc_cnt, u.general_nr);
+                u.general_nr = arch_pmc_cnt;
+            }
+
+            if ( vpmu_features & (XENPMU_FEATURE_IPC_ONLY |
+                                  XENPMU_FEATURE_ARCH_ONLY) ) {
+                unsigned limit = ( vpmu_features & XENPMU_FEATURE_ARCH_ONLY ) ? 7 : 3;
+                if (limit < u.arch_nr) {
+                    gdprintk(XENLOG_WARNING, "Limiting architectural PMU events to %d (actual %d)", limit, u.arch_nr);
+                    u.arch_nr = limit;
+                }
+            }
+
+            res->a = u.eax;
+
+            /* We only implement 3 fixed function counters */
+            if ( (res->d & 0x1f) > fixed_pmc_cnt )
+                res->d = (res->d & ~0x1f) | fixed_pmc_cnt;
         }
         break;
 
diff --git a/xen/arch/x86/include/asm/vpmu.h b/xen/arch/x86/include/asm/vpmu.h
index b165acc6c2..1ef6089ccb 100644
--- a/xen/arch/x86/include/asm/vpmu.h
+++ b/xen/arch/x86/include/asm/vpmu.h
@@ -74,6 +74,8 @@ struct vpmu_struct {
 #define VPMU_CPU_HAS_DS                     0x1000 /* Has Debug Store */
 #define VPMU_CPU_HAS_BTS                    0x2000 /* Has Branch Trace Store */
 
+#define VPMU_VERSION_MAX                    0x3
+
 static inline void vpmu_set(struct vpmu_struct *vpmu, const u32 mask)
 {
     vpmu->flags |= mask;
@@ -118,6 +120,8 @@ static inline int vpmu_do_rdmsr(unsigned int msr, uint64_t *msr_content)
 
 extern unsigned int vpmu_mode;
 extern unsigned int vpmu_features;
+extern unsigned int arch_pmc_cnt;
+extern unsigned int fixed_pmc_cnt;
 
 /* Context switch */
 static inline void vpmu_switch_from(struct vcpu *prev)
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Wed Oct 25 19:30:07 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 19:30:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623194.970828 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvjZv-0002Uh-0a; Wed, 25 Oct 2023 19:30:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623194.970828; Wed, 25 Oct 2023 19:30: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 1qvjZu-0002SX-RN; Wed, 25 Oct 2023 19:30:06 +0000
Received: by outflank-mailman (input) for mailman id 623194;
 Wed, 25 Oct 2023 19:30: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=xaZJ=GH=cloud.com=edwin.torok@srs-se1.protection.inumbo.net>)
 id 1qvjZt-0001Lv-QQ
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 19:30:05 +0000
Received: from mail-ej1-x630.google.com (mail-ej1-x630.google.com
 [2a00:1450:4864:20::630])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id e4e9c8cf-736c-11ee-9b0e-b553b5be7939;
 Wed, 25 Oct 2023 21:30:03 +0200 (CEST)
Received: by mail-ej1-x630.google.com with SMTP id
 a640c23a62f3a-99c3c8adb27so22209166b.1
 for <xen-devel@lists.xenproject.org>; Wed, 25 Oct 2023 12:30:03 -0700 (PDT)
Received: from edvint-x-u.eng.citrite.net ([185.25.67.249])
 by smtp.gmail.com with ESMTPSA id
 hv6-20020a17090760c600b00985ed2f1584sm10408710ejc.187.2023.10.25.12.30.01
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 25 Oct 2023 12:30: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: e4e9c8cf-736c-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1698262202; x=1698867002; 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=kel4w+AQXGzNo/gpv6UV34p2+pJUPxrobh9qF8lkfgA=;
        b=ao6wAcCyyaQGgczNWgz66cRtQF+lOlEy8SUzJNd2OD+3Wu+6PwoEu7btILlTuAjVSM
         xDrJFU9GXAPcC0XXwtwQY0/jQtb0b44bl4reoY6VtKG06KK73uUbw7tUONIs6KeznKdE
         e+dZwLMoeypVIGiJ0WshozN1rx9P9lE0pOWXo=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698262202; x=1698867002;
        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=kel4w+AQXGzNo/gpv6UV34p2+pJUPxrobh9qF8lkfgA=;
        b=QXw+h6++XeMsIdHniNpsqoVEgr56r9URqKsdxlJjFfmaQbxEBrpAOAaoXa5EpJ1Apu
         6iPCx+nv5etxNpI/720wMfk+AtVqZJodmfnun0CDLBMfnBa7gPc6LcMjLBYzs2C2LrDR
         nBfFHL+ycF3cNRXHWGLXVGdnKidjhX2KPvj8QaLq/REbsNoQ+7bJLLJC9Z3wPLznbTJX
         0vBpvXRQOCVoVsqSr53cn/SCbhzHdYDyodY3urnZ4l2U7K7WQ0qM7g8/cWFA2oHvkRFA
         SmZj+GZB6+15LUKfDW/5ZcVI96S8Bkf0re0iG6gNn/I8qNdUf4qdPqgIwDWXSKAHGkr3
         cm6g==
X-Gm-Message-State: AOJu0YxqmnWvK4g7NyDD713HXxdderJh2ehwcfwSUMLxLnqTJLDmMVDd
	khcClGcwkqTvlo99WMByjIqlL1YZpXa5b83jZedhkz2x
X-Google-Smtp-Source: AGHT+IGbKc2jQ4Q0PVrBZMcpCHLXBfoNvATvEKAJZTTKSBDyDV/PQqhZ+zu6aXMtAGGxtWu16quuUg==
X-Received: by 2002:a17:906:3656:b0:9ca:e7ce:8e60 with SMTP id r22-20020a170906365600b009cae7ce8e60mr5464173ejb.41.1698262202484;
        Wed, 25 Oct 2023 12:30:02 -0700 (PDT)
From: =?UTF-8?q?Edwin=20T=C3=B6r=C3=B6k?= <edwin.torok@cloud.com>
To: xen-devel@lists.xenproject.org
Cc: =?UTF-8?q?Edwin=20T=C3=B6r=C3=B6k?= <edvin.torok@citrix.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: [RFC PATCH 06/22] x86/PMUv1: limit arch PMCs to 4 for non-Dom0
Date: Wed, 25 Oct 2023 20:29:36 +0100
Message-Id: <fc28de1f8d0558829ae902cc2a76063ec31815df.1698261255.git.edwin.torok@cloud.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1698261255.git.edwin.torok@cloud.com>
References: <cover.1698261255.git.edwin.torok@cloud.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

From: Edwin Török <edvin.torok@citrix.com>

Only PERFEVTSEL{0-3} are architectural MSRs and Thread scoped.

PERFEVTSEL{4-7} are Core scoped, and we cannot allow using them if more
than 1 guest can attempt to modify them: if they program them with
different events (quite likely when multiplexing) then one of the VMs
would sample the wrong PMCs.

For now only allow this when Dom0 is the only one using the PMU, i.e. in
vpmu mode `all`.

We could also allow this when sched_gran >= SCHED_GRAN_core, but we
don't have access to the cpupool here.

There is some indication that this was causing bugs, e.g.
`pcm` mentions about a bug with perf counters beyond 3 on AWS:
https://github.com/opcm/pcm/commit/02f3b00f304401c723131372e09b71798df613ff

Backport: 4.0+

Signed-off-by: Edwin Török <edvin.torok@citrix.com>
---
 xen/arch/x86/cpu/vpmu_intel.c | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/xen/arch/x86/cpu/vpmu_intel.c b/xen/arch/x86/cpu/vpmu_intel.c
index 9602728f1b..ec9ab01fde 100644
--- a/xen/arch/x86/cpu/vpmu_intel.c
+++ b/xen/arch/x86/cpu/vpmu_intel.c
@@ -926,6 +926,16 @@ const struct arch_vpmu_ops *__init core2_vpmu_init(void)
     }
 
     arch_pmc_cnt = core2_get_arch_pmc_count();
+    if ( arch_pmc_cnt > 4 &&
+         vpmu_mode != XENPMU_MODE_ALL )
+    {
+        /* Architectural PMCs 0-3 are Thread scoped, but 4+ are Core scoped.
+         * We can only allow using them if we know that we have at most one guest using a PMU
+         * on all siblings threads on a core. */
+        printk(XENLOG_INFO "VPMU: limiting architectural PMCs to 4\n");
+        arch_pmc_cnt = 4;
+    }
+
     fixed_pmc_cnt = core2_get_fixed_pmc_count();
 
     if ( cpu_has_pdcm )
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Wed Oct 25 19:30:08 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 19:30:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623195.970843 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvjZw-00030V-H3; Wed, 25 Oct 2023 19:30:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623195.970843; Wed, 25 Oct 2023 19:30: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 1qvjZw-0002z1-AO; Wed, 25 Oct 2023 19:30:08 +0000
Received: by outflank-mailman (input) for mailman id 623195;
 Wed, 25 Oct 2023 19:30: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=xaZJ=GH=cloud.com=edwin.torok@srs-se1.protection.inumbo.net>)
 id 1qvjZu-0001Lv-QN
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 19:30:06 +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 e57b829b-736c-11ee-9b0e-b553b5be7939;
 Wed, 25 Oct 2023 21:30:04 +0200 (CEST)
Received: by mail-ed1-x536.google.com with SMTP id
 4fb4d7f45d1cf-53de8fc1ad8so125739a12.0
 for <xen-devel@lists.xenproject.org>; Wed, 25 Oct 2023 12:30:04 -0700 (PDT)
Received: from edvint-x-u.eng.citrite.net ([185.25.67.249])
 by smtp.gmail.com with ESMTPSA id
 hv6-20020a17090760c600b00985ed2f1584sm10408710ejc.187.2023.10.25.12.30.02
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 25 Oct 2023 12:30: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: e57b829b-736c-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1698262203; x=1698867003; 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=q1Lv8Yw58F48q3eNmw9Dda+FIyTyujQenPm38dLzmoQ=;
        b=MkFuINpOjD9EHnFuWeMLtREmTFjECrSY2XYdQLQOLF/rOSd4Kr+XwGMV3r5yCT1x+I
         xX3ms3OYzskEh12AEmdtcUj0rMR+PoqPcr2A1G06VSlw7xxVZY4KD39hP/0RzI/q0AIa
         pTxi0d+qSDC/peGzxcy7Aav9aZrG6RFwaoHBM=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698262203; x=1698867003;
        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=q1Lv8Yw58F48q3eNmw9Dda+FIyTyujQenPm38dLzmoQ=;
        b=rJD1y9OgP8O2DySqaCPxIANydo20s1HO0PmxwvLXB3jfHHKV4RQwfxlgIz77V/7FTb
         Ep7/O4wcclvoHKFZhoSKz1QPssxLBwaYew2A1Aje90gDF1c0VTFH49INMoIi6wL/AnSv
         tebODh0wjPCwOnyoTCsnZXWfonOD8C4QBBAZuvsKppTN8wM3Fs2bzAQyMdoaqk/RH/Dj
         A1Iw764XDj5hBBiiCiQTBAalNuH+9PMMG//l1EdrqUe3vAn+JDBuL42tNJvrOEH6g9Ez
         UYs8lP8ZFtz58zziBE9euZnGlXNFH/evvQvjqhKu0C/pTU2oFiYWya6i/yG27eM9ZBG9
         kUuw==
X-Gm-Message-State: AOJu0Yx2DVvqo17nQQZxylMEP0XpoXRTAzikLTVsD927BW+gfHrWvsq5
	gjuK3vDHvk7TeTsDlh0KLx8AKeRdJK0u1Hqmy7iLC01N
X-Google-Smtp-Source: AGHT+IHGzEYx9KPrJpe2wgirs12rAMrDEJsknJkIY+KW74IJxwwDN+8ayvuqYOxxJS/ybW9i/gXI5Q==
X-Received: by 2002:a17:907:6e8c:b0:9b2:765b:273b with SMTP id sh12-20020a1709076e8c00b009b2765b273bmr16344389ejc.70.1698262203374;
        Wed, 25 Oct 2023 12:30:03 -0700 (PDT)
From: =?UTF-8?q?Edwin=20T=C3=B6r=C3=B6k?= <edwin.torok@cloud.com>
To: xen-devel@lists.xenproject.org
Cc: =?UTF-8?q?Edwin=20T=C3=B6r=C3=B6k?= <edvin.torok@citrix.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: [RFC PATCH 07/22] x86/PMUv1: allow topdown slots arch perf event
Date: Wed, 25 Oct 2023 20:29:37 +0100
Message-Id: <f1fef9da51b4964a04a634d65797099a5e4efd47.1698261255.git.edwin.torok@cloud.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1698261255.git.edwin.torok@cloud.com>
References: <cover.1698261255.git.edwin.torok@cloud.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

From: Edwin Török <edvin.torok@citrix.com>

This is part of 'Architectural Performance Monitoring Version 1'
and implemented on Icelake.

Backport: 4.13+

Signed-off-by: Edwin Török <edvin.torok@citrix.com>
---
 xen/arch/x86/cpu/vpmu_intel.c | 1 +
 xen/arch/x86/cpuid.c          | 2 +-
 2 files changed, 2 insertions(+), 1 deletion(-)

diff --git a/xen/arch/x86/cpu/vpmu_intel.c b/xen/arch/x86/cpu/vpmu_intel.c
index ec9ab01fde..44a1ed5b10 100644
--- a/xen/arch/x86/cpu/vpmu_intel.c
+++ b/xen/arch/x86/cpu/vpmu_intel.c
@@ -645,6 +645,7 @@ static int cf_check core2_vpmu_do_wrmsr(unsigned int msr, uint64_t msr_content)
                 case 0x412e:	/* Last Level Cache Misses */
                 case 0x00c4:	/* Branch Instructions Retired */
                 case 0x00c5:	/* All Branch Mispredict Retired */
+                case 0x01a4:	/* Topdown Slots */
                     blocked = 0;
                     break;
                }
diff --git a/xen/arch/x86/cpuid.c b/xen/arch/x86/cpuid.c
index dfbcd1b3a4..51ee89afc4 100644
--- a/xen/arch/x86/cpuid.c
+++ b/xen/arch/x86/cpuid.c
@@ -328,7 +328,7 @@ void guest_cpuid(const struct vcpu *v, uint32_t leaf,
 
             if ( vpmu_features & (XENPMU_FEATURE_IPC_ONLY |
                                   XENPMU_FEATURE_ARCH_ONLY) ) {
-                unsigned limit = ( vpmu_features & XENPMU_FEATURE_ARCH_ONLY ) ? 7 : 3;
+                unsigned limit = ( vpmu_features & XENPMU_FEATURE_ARCH_ONLY ) ? 8 : 3;
                 if (limit < u.arch_nr) {
                     gdprintk(XENLOG_WARNING, "Limiting architectural PMU events to %d (actual %d)", limit, u.arch_nr);
                     u.arch_nr = limit;
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Wed Oct 25 19:30:09 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 19:30:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623196.970849 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvjZx-00037A-6x; Wed, 25 Oct 2023 19:30:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623196.970849; Wed, 25 Oct 2023 19:30: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 1qvjZw-00035p-OP; Wed, 25 Oct 2023 19:30:08 +0000
Received: by outflank-mailman (input) for mailman id 623196;
 Wed, 25 Oct 2023 19:30: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=xaZJ=GH=cloud.com=edwin.torok@srs-se1.protection.inumbo.net>)
 id 1qvjZv-0001Lv-QS
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 19:30:07 +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 e659d384-736c-11ee-9b0e-b553b5be7939;
 Wed, 25 Oct 2023 21:30:05 +0200 (CEST)
Received: by mail-ej1-x636.google.com with SMTP id
 a640c23a62f3a-98377c5d53eso22281666b.0
 for <xen-devel@lists.xenproject.org>; Wed, 25 Oct 2023 12:30:05 -0700 (PDT)
Received: from edvint-x-u.eng.citrite.net ([185.25.67.249])
 by smtp.gmail.com with ESMTPSA id
 hv6-20020a17090760c600b00985ed2f1584sm10408710ejc.187.2023.10.25.12.30.03
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 25 Oct 2023 12:30: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: e659d384-736c-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1698262205; x=1698867005; 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=fyM84Qdg+WVAc6W6qy0lJuiinDdESDwhb8Pnza3zSdg=;
        b=TREcwNwslcqulnMJM9Y6FLewz5cHe1Hz4X+rjmMCi/K/8iqnFKZInoxPSbmIcwLNhp
         iT8GzVo/CcyQvtenaoxKN/aHbOy0inyQVricThg5p9q1hGCrEcx9GXH8KiwarYm8PaYH
         GGT95TTX9HRg0kp9fLAZfAmjdH2abr7fM6oUA=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698262205; x=1698867005;
        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=fyM84Qdg+WVAc6W6qy0lJuiinDdESDwhb8Pnza3zSdg=;
        b=cAJdkvqmHWpOKv7f8VoNnU71oRp8TneYrVpLZSxn84LEQ9R8TFvAotzUvoIOSoeJj5
         tlF/gjVBSzLIM/p5vTzhsLiBuEMmNk22iO63i/VmlAIWOU3lH6X8X6tkcl1qW+KBHCP3
         Us5WEbBNltLARvfYxgpoHl943gRzca7v9tDyd8R2kCABlfwIY0qapyYEV9vMXxLWB88m
         yr7BF/0FemFQ5ZQHxGVPJLXTYOJWsg4+9IGQVPrP00lp/gCtndniDAePODoS6Qh6nGGl
         MXbidWR0Le/ay1R+veYvSEOWOS+5HDghaoFuUoN5DGK9Qpt9C6dO0OrT99qLz+QtC0KS
         +OEA==
X-Gm-Message-State: AOJu0Yw14JIYIhdMtk+OmvSH7QValAYpC1fZ73FONoxPX+Q+gWqPiVat
	SC2VSUePgbwJqI7RyO4VBxbvO+HFSoHZbwSrzWMxxcXR
X-Google-Smtp-Source: AGHT+IFgN/mYcpUyc35YlHMAiXwlT37k7ePUjpzOqHB9F7IC7ofILTlN4WwhoN+j9LJVlHLG4MDqlA==
X-Received: by 2002:a17:907:97d4:b0:9bf:63b2:b6f0 with SMTP id js20-20020a17090797d400b009bf63b2b6f0mr12183499ejc.29.1698262204605;
        Wed, 25 Oct 2023 12:30:04 -0700 (PDT)
From: =?UTF-8?q?Edwin=20T=C3=B6r=C3=B6k?= <edwin.torok@cloud.com>
To: xen-devel@lists.xenproject.org
Cc: =?UTF-8?q?Edwin=20T=C3=B6r=C3=B6k?= <edvin.torok@citrix.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: [RFC PATCH 08/22] x86/PMUv1: define macro for max number of events
Date: Wed, 25 Oct 2023 20:29:38 +0100
Message-Id: <6f53f17afdf80b63bed4bc0c0d599ae0d8e7af5a.1698261255.git.edwin.torok@cloud.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1698261255.git.edwin.torok@cloud.com>
References: <cover.1698261255.git.edwin.torok@cloud.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

From: Edwin Török <edvin.torok@citrix.com>

This is needed so we can expose the maximum supported in CPUID,
without cpuid.c and vpmu_intel.c going out of sync.

The macros defined here take a parameter that controls how the enum
values are used: either to generate case statements or to count how many
elements we have.

They are a variation on https://en.wikipedia.org/wiki/X_Macro

No functional change.

Could be backported to 4.13.

Signed-off-by: Edwin Török <edvin.torok@citrix.com>
---
 xen/arch/x86/cpu/vpmu_intel.c   | 16 ++--------------
 xen/arch/x86/cpuid.c            |  2 +-
 xen/arch/x86/include/asm/vpmu.h | 27 +++++++++++++++++++++++++++
 3 files changed, 30 insertions(+), 15 deletions(-)

diff --git a/xen/arch/x86/cpu/vpmu_intel.c b/xen/arch/x86/cpu/vpmu_intel.c
index 44a1ed5b10..ef8d69a0d6 100644
--- a/xen/arch/x86/cpu/vpmu_intel.c
+++ b/xen/arch/x86/cpu/vpmu_intel.c
@@ -622,15 +622,7 @@ static int cf_check core2_vpmu_do_wrmsr(unsigned int msr, uint64_t msr_content)
                 blocked = 1;
                 switch ( umaskevent )
                 {
-                /*
-                 * See the Pre-Defined Architectural Performance Events table
-                 * from the Intel 64 and IA-32 Architectures Software
-                 * Developer's Manual, Volume 3B, System Programming Guide,
-                 * Part 2.
-                 */
-                case 0x003c:	/* UnHalted Core Cycles */
-                case 0x013c:	/* UnHalted Reference Cycles */
-                case 0x00c0:	/* Instructions Retired */
+                VPMU_IPC_EVENTS(DEFCASE)
                     blocked = 0;
                     break;
                 }
@@ -641,11 +633,7 @@ static int cf_check core2_vpmu_do_wrmsr(unsigned int msr, uint64_t msr_content)
                 /* Additional counters beyond IPC only; blocked already set. */
                 switch ( umaskevent )
                 {
-                case 0x4f2e:	/* Last Level Cache References */
-                case 0x412e:	/* Last Level Cache Misses */
-                case 0x00c4:	/* Branch Instructions Retired */
-                case 0x00c5:	/* All Branch Mispredict Retired */
-                case 0x01a4:	/* Topdown Slots */
+                VPMU_ARCH_EVENTS(DEFCASE)
                     blocked = 0;
                     break;
                }
diff --git a/xen/arch/x86/cpuid.c b/xen/arch/x86/cpuid.c
index 51ee89afc4..12e768ae87 100644
--- a/xen/arch/x86/cpuid.c
+++ b/xen/arch/x86/cpuid.c
@@ -328,7 +328,7 @@ void guest_cpuid(const struct vcpu *v, uint32_t leaf,
 
             if ( vpmu_features & (XENPMU_FEATURE_IPC_ONLY |
                                   XENPMU_FEATURE_ARCH_ONLY) ) {
-                unsigned limit = ( vpmu_features & XENPMU_FEATURE_ARCH_ONLY ) ? 8 : 3;
+                unsigned limit = VPMU_IPC_EVENTS_MAX + ( vpmu_features & XENPMU_FEATURE_ARCH_ONLY ) ? VPMU_ARCH_EVENTS_MAX : 0;
                 if (limit < u.arch_nr) {
                     gdprintk(XENLOG_WARNING, "Limiting architectural PMU events to %d (actual %d)", limit, u.arch_nr);
                     u.arch_nr = limit;
diff --git a/xen/arch/x86/include/asm/vpmu.h b/xen/arch/x86/include/asm/vpmu.h
index 1ef6089ccb..49c3e8c19a 100644
--- a/xen/arch/x86/include/asm/vpmu.h
+++ b/xen/arch/x86/include/asm/vpmu.h
@@ -146,5 +146,32 @@ static inline int vpmu_allocate_context(struct vcpu *v)
 }
 #endif
 
+/*
+ * See "20.2.1.2 Pre-Defined Architectural Performance Events"
+ * from the Intel 64 and IA-32 Architectures Software
+ * Developer's Manual, Volume 3B, System Programming Guide,
+ * Part 2.
+ */
+#define VPMU_IPC_EVENTS(DEF) \
+    DEF(0x003c)	/* UnHalted Core Cycles */\
+    DEF(0x00c0)	/* Instructions Retired */\
+    DEF(0x013c)	/* UnHalted Reference Cycles */\
+
+
+#define VPMU_ARCH_EVENTS(DEF) \
+    VPMU_IPC_EVENTS(DEF)\
+    DEF(0x4f2e)	/* Last Level Cache References */\
+    DEF(0x412e)	/* Last Level Cache Misses */\
+    DEF(0x00c4)	/* Branch Instructions Retired */\
+    DEF(0x00c5)	/* All Branch Mispredict Retired */\
+    DEF(0x01a4)	/* Topdown Slots */\
+
+#define DEFCASE(x) case (x):
+#define DEFSUM(x) +1
+#define DEFCOUNT(X) (0+X(DEFSUM))
+
+#define VPMU_IPC_EVENTS_MAX DEFCOUNT(VPMU_IPC_EVENTS)
+#define VPMU_ARCH_EVENTS_MAX DEFCOUNT(VPMU_ARCH_EVENTS)
+
 #endif /* __ASM_X86_HVM_VPMU_H_*/
 
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Wed Oct 25 19:30:10 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 19:30:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623197.970856 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvjZy-0003O3-0G; Wed, 25 Oct 2023 19:30:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623197.970856; Wed, 25 Oct 2023 19:30: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 1qvjZx-0003Ki-O8; Wed, 25 Oct 2023 19:30:09 +0000
Received: by outflank-mailman (input) for mailman id 623197;
 Wed, 25 Oct 2023 19: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=xaZJ=GH=cloud.com=edwin.torok@srs-se1.protection.inumbo.net>)
 id 1qvjZw-0000YO-K6
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 19:30:08 +0000
Received: from mail-ej1-x62f.google.com (mail-ej1-x62f.google.com
 [2a00:1450:4864:20::62f])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id e7e438ec-736c-11ee-98d5-6d05b1d4d9a1;
 Wed, 25 Oct 2023 21:30:08 +0200 (CEST)
Received: by mail-ej1-x62f.google.com with SMTP id
 a640c23a62f3a-9bdf5829000so24754666b.0
 for <xen-devel@lists.xenproject.org>; Wed, 25 Oct 2023 12:30:08 -0700 (PDT)
Received: from edvint-x-u.eng.citrite.net ([185.25.67.249])
 by smtp.gmail.com with ESMTPSA id
 hv6-20020a17090760c600b00985ed2f1584sm10408710ejc.187.2023.10.25.12.30.06
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 25 Oct 2023 12:30: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: e7e438ec-736c-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1698262207; x=1698867007; 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=D26h79W0uIiar9apEu5I8y2IaailVn2qskwn4HTwx6M=;
        b=QbiW5/Go6RCvbYnKe+hqpGo5NRPq2Nzb1yZHzP/wYSeeH5X6FamF0fVyXb0l/eDgLE
         pSlQw/M9mwTVuzQ0E8vjDywzeqMi+SnDwOvQltPKrUaTqqvv3UkStr5gyHJJwu6lfDsN
         cRS6Vapqsu/acduE/GNAK0kxXjgaHGe6U2qa4=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698262207; x=1698867007;
        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=D26h79W0uIiar9apEu5I8y2IaailVn2qskwn4HTwx6M=;
        b=Kyw7EPugo1Ks3BluFSZLxZibbYy43aLvVXs5zlrpAyJT3A8/uFshVl/3gaiCZiaXXR
         41HY1mSkvjwVlFGMfzSw6iMKK1O7/F/z6pEfz3tHlsP0HcGTv+wptPf0COgqlI8sVXJO
         A7D1f2jlMQ859RX1MFrUow5s4n174KrAqB6Q7cF2IETfqezipTjQnucA9D7GYkv5ftNU
         oZEHeguht555SE9Kw+20234XN0w66I1HtEnTrUf54lzB1jymmW1lqtPuVjYOB3Lg4K1f
         9NwAQoxHOdSzVhDQblJuSTcBX87Fr0/ATDK2Up7TKuD1ndmJfATvbPQQKo93oZ/8i4Oh
         ALTQ==
X-Gm-Message-State: AOJu0YyR5NNX+XNJhShWFGI+9Vw82o1ti3FyoHJUyFhoI/1hQR1asILc
	aamVabxWH/9tSeQICOfwugCVc4XCPmF7x0bU68V3tlHY
X-Google-Smtp-Source: AGHT+IFA7BksNHd8kthUX3uqbV5iFjWiTjpdglNpTm6OMMEu96h5FNd6/mqRyoOx7YpZdrWseSba+A==
X-Received: by 2002:a17:906:da82:b0:9c7:5db4:c943 with SMTP id xh2-20020a170906da8200b009c75db4c943mr13931963ejb.40.1698262207467;
        Wed, 25 Oct 2023 12:30:07 -0700 (PDT)
From: =?UTF-8?q?Edwin=20T=C3=B6r=C3=B6k?= <edwin.torok@cloud.com>
To: xen-devel@lists.xenproject.org
Cc: =?UTF-8?q?Edwin=20T=C3=B6r=C3=B6k?= <edvin.torok@citrix.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: [RFC PATCH 11/22] x86/PMUv2: freeze support in IA32_DEBUGCTL
Date: Wed, 25 Oct 2023 20:29:41 +0100
Message-Id: <53246128214e8bc91e4a6d765935936efa8cd2f0.1698261255.git.edwin.torok@cloud.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1698261255.git.edwin.torok@cloud.com>
References: <cover.1698261255.git.edwin.torok@cloud.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

From: Edwin Török <edvin.torok@citrix.com>

This is not yet exposed by HVM policies, but PMU version 2 requires that
if PDCM is supported in CPUID then these 2 bits would work.

Signed-off-by: Edwin Török <edvin.torok@citrix.com>
---
 xen/arch/x86/hvm/vmx/vmx.c           | 4 ++++
 xen/arch/x86/include/asm/msr-index.h | 4 +++-
 2 files changed, 7 insertions(+), 1 deletion(-)

diff --git a/xen/arch/x86/hvm/vmx/vmx.c b/xen/arch/x86/hvm/vmx/vmx.c
index 1510e980dd..f1f8a9afa2 100644
--- a/xen/arch/x86/hvm/vmx/vmx.c
+++ b/xen/arch/x86/hvm/vmx/vmx.c
@@ -3601,6 +3601,10 @@ static int cf_check vmx_msr_write_intercept(
                           IA32_DEBUGCTLMSR_BTS_OFF_USR);
         }
 
+        if (cp->basic.pmu_version >= 2 && cpu_has(&current_cpu_data, X86_FEATURE_PDCM)) {
+            rsvd &= ~(IA32_DEBUGCTLMSR_FREEZE_LBRS_ON_PMI | IA32_DEBUGCTLMSR_FREEZE_PERFMON_ON_PMI);
+        }
+
         if ( cp->feat.rtm )
             rsvd &= ~IA32_DEBUGCTLMSR_RTM;
 
diff --git a/xen/arch/x86/include/asm/msr-index.h b/xen/arch/x86/include/asm/msr-index.h
index 8a881a8a6f..0dfb5b499f 100644
--- a/xen/arch/x86/include/asm/msr-index.h
+++ b/xen/arch/x86/include/asm/msr-index.h
@@ -305,7 +305,9 @@
 #define IA32_DEBUGCTLMSR_BTINT		(1<<8) /* Branch Trace Interrupt */
 #define IA32_DEBUGCTLMSR_BTS_OFF_OS	(1<<9)  /* BTS off if CPL 0 */
 #define IA32_DEBUGCTLMSR_BTS_OFF_USR	(1<<10) /* BTS off if CPL > 0 */
-#define IA32_DEBUGCTLMSR_RTM		(1<<15) /* RTM debugging enable */
+#define IA32_DEBUGCTLMSR_FREEZE_LBRS_ON_PMI	(1<<11) /* LBR stack frozen on PMI */
+#define IA32_DEBUGCTLMSR_FREEZE_PERFMON_ON_PMI	(1<<12) /*  Global counter control ENABLE bit frozen on PMI */
+#define IA32_DEBUGCTLMSR_RTM			(1<<15) /* RTM debugging enable */
 
 #define MSR_IA32_LASTBRANCHFROMIP	0x000001db
 #define MSR_IA32_LASTBRANCHTOIP		0x000001dc
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Wed Oct 25 19:30:11 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 19:30:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623198.970862 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvjZy-0003Vl-RV; Wed, 25 Oct 2023 19:30:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623198.970862; Wed, 25 Oct 2023 19: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 1qvjZy-0003UU-A3; Wed, 25 Oct 2023 19:30:10 +0000
Received: by outflank-mailman (input) for mailman id 623198;
 Wed, 25 Oct 2023 19:30: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=xaZJ=GH=cloud.com=edwin.torok@srs-se1.protection.inumbo.net>)
 id 1qvjZw-0001Lv-Ss
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 19:30:08 +0000
Received: from mail-ej1-x633.google.com (mail-ej1-x633.google.com
 [2a00:1450:4864:20::633])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id e7481c41-736c-11ee-9b0e-b553b5be7939;
 Wed, 25 Oct 2023 21:30:07 +0200 (CEST)
Received: by mail-ej1-x633.google.com with SMTP id
 a640c23a62f3a-9ae2cc4d17eso21097666b.1
 for <xen-devel@lists.xenproject.org>; Wed, 25 Oct 2023 12:30:07 -0700 (PDT)
Received: from edvint-x-u.eng.citrite.net ([185.25.67.249])
 by smtp.gmail.com with ESMTPSA id
 hv6-20020a17090760c600b00985ed2f1584sm10408710ejc.187.2023.10.25.12.30.05
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 25 Oct 2023 12:30: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: e7481c41-736c-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1698262206; x=1698867006; 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=D82wmWFWuZgLhPScx6tmxAejKAf/fYGX9l7CCjPm+Oo=;
        b=ULkatCeWK9jQmpyjDgMgKixwzGyuXq2l1yzIOLYs8GwqZyry++ffLxtKAF7z8HdJiQ
         ecQ38gA6EjVYLLGrNUKFkN6T1ByXInlH1+lyoYfMCkWlmTsIppagQZp19Zygdv2O3kPF
         BHwD6wUiULhyewKYJpaStPyUp9rRNl3L+QcoI=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698262206; x=1698867006;
        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=D82wmWFWuZgLhPScx6tmxAejKAf/fYGX9l7CCjPm+Oo=;
        b=n3mr/gtC1T9bJyqpUhlgyRtwNMUMD6MADnieOwD9UuBlv1s5o2YTjjdn2MfITmEwH/
         u+kQMYWKmegJDMiL6rqRVE9pr4PfjISGIXvrDsuo7e1IrWwcDsDE6d38uqlSg2o+Xj8g
         1HeyeOmp/N663JaO46UM7NIF22Z5t4+DZY/ojwEPpqGOOC4oCUnfbLFf7ULZkVkdvJG/
         mOuqUj9bb089sJIPho4KbOiVIFG7y5TT44NmS++kxoaaRLn2L0qM38B4QOzNnBPvJ8/5
         W/sUJlgxdGaRMWiUQnSx6cmi4KH2Zc8PsIZWUKOPQskDzcshMyuLWX9tSV9RPia68ycF
         lpTg==
X-Gm-Message-State: AOJu0YyzVkPUhuhRRZ2eYJQat/jEtxKiR8LIPu9bWb2+RpPK6Kx7ou61
	EUa6ps2TEm7BXaeRrunvCyNVy7Kad0vCb5y0jJiFJPfd
X-Google-Smtp-Source: AGHT+IGxIhlT5o2lKJUs542MRxudBPnqUQuDNUOXjeN1e2xFqN7Z69EXUfiEly59AXLoO4KqwiV4CQ==
X-Received: by 2002:a17:907:762d:b0:9c8:f128:2fdb with SMTP id jy13-20020a170907762d00b009c8f1282fdbmr7527403ejc.13.1698262206404;
        Wed, 25 Oct 2023 12:30:06 -0700 (PDT)
From: =?UTF-8?q?Edwin=20T=C3=B6r=C3=B6k?= <edwin.torok@cloud.com>
To: xen-devel@lists.xenproject.org
Cc: =?UTF-8?q?Edwin=20T=C3=B6r=C3=B6k?= <edvin.torok@citrix.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: [RFC PATCH 10/22] x86/PMUv2: limit number of fixed perf counters to 3
Date: Wed, 25 Oct 2023 20:29:40 +0100
Message-Id: <0355493e5b5771e663381b163efb21d210f56c42.1698261255.git.edwin.torok@cloud.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1698261255.git.edwin.torok@cloud.com>
References: <cover.1698261255.git.edwin.torok@cloud.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

From: Edwin Török <edvin.torok@citrix.com>

There are only 3 architectural fixed function counters defined,
however Icelake introduces a 4th.
So we'll need to report the number of fixed counter implemented in CPUID
correctly for Icelake, define a macro to ensure we are consistent about
which counter is last.

Note: simply adding MSR_CORE_PERF_FIXED_CTR3 is not enough, Icelake also
defines MSR_PERF_METRICS and there are some ordering constraints on
restoring the MSR, and atomicity constraints on IA32_PERF_GLOBAL_CTRL,
so this is not implemented yet.

Backport: 4.13+

Signed-off-by: Edwin Török <edvin.torok@citrix.com>
---
 xen/arch/x86/cpu/vpmu_intel.c        | 6 ++++++
 xen/arch/x86/hvm/vmx/vmx.c           | 4 ++--
 xen/arch/x86/include/asm/msr-index.h | 4 ++--
 xen/arch/x86/pv/emul-priv-op.c       | 4 ++--
 4 files changed, 12 insertions(+), 6 deletions(-)

diff --git a/xen/arch/x86/cpu/vpmu_intel.c b/xen/arch/x86/cpu/vpmu_intel.c
index ef8d69a0d6..4c0776cee7 100644
--- a/xen/arch/x86/cpu/vpmu_intel.c
+++ b/xen/arch/x86/cpu/vpmu_intel.c
@@ -926,6 +926,12 @@ const struct arch_vpmu_ops *__init core2_vpmu_init(void)
     }
 
     fixed_pmc_cnt = core2_get_fixed_pmc_count();
+#define PERF_FIXED_CTR_MAX (MSR_CORE_PERF_FIXED_CTRn - MSR_CORE_PERF_FIXED_CTR0 + 1)
+    if ( fixed_pmc_cnt > PERF_FIXED_CTR_MAX )
+    {
+        printk(XENLOG_INFO "VPMU: limiting fixed perf counters to %d\n", PERF_FIXED_CTR_MAX);
+        fixed_pmc_cnt = PERF_FIXED_CTR_MAX;
+    }
 
     if ( cpu_has_pdcm )
     {
diff --git a/xen/arch/x86/hvm/vmx/vmx.c b/xen/arch/x86/hvm/vmx/vmx.c
index 7d51addf7a..1510e980dd 100644
--- a/xen/arch/x86/hvm/vmx/vmx.c
+++ b/xen/arch/x86/hvm/vmx/vmx.c
@@ -3362,7 +3362,7 @@ static int cf_check vmx_msr_read_intercept(
         /* FALLTHROUGH */
     case MSR_P6_PERFCTR(0)...MSR_P6_PERFCTR_LAST:
     case MSR_P6_EVNTSEL(0)...MSR_P6_EVNTSEL_LAST:
-    case MSR_CORE_PERF_FIXED_CTR0...MSR_CORE_PERF_FIXED_CTR2:
+    case MSR_CORE_PERF_FIXED_CTR0...MSR_CORE_PERF_FIXED_CTRn:
     case MSR_CORE_PERF_FIXED_CTR_CTRL...MSR_CORE_PERF_GLOBAL_OVF_CTRL:
     case MSR_IA32_PEBS_ENABLE:
     case MSR_IA32_DS_AREA:
@@ -3680,7 +3680,7 @@ static int cf_check vmx_msr_write_intercept(
 
     case MSR_P6_PERFCTR(0)...MSR_P6_PERFCTR_LAST:
     case MSR_P6_EVNTSEL(0)...MSR_P6_EVNTSEL_LAST:
-    case MSR_CORE_PERF_FIXED_CTR0...MSR_CORE_PERF_FIXED_CTR2:
+    case MSR_CORE_PERF_FIXED_CTR0...MSR_CORE_PERF_FIXED_CTRn:
     case MSR_CORE_PERF_FIXED_CTR_CTRL...MSR_CORE_PERF_GLOBAL_OVF_CTRL:
     case MSR_IA32_PEBS_ENABLE:
     case MSR_IA32_DS_AREA:
diff --git a/xen/arch/x86/include/asm/msr-index.h b/xen/arch/x86/include/asm/msr-index.h
index 011a926e0e..8a881a8a6f 100644
--- a/xen/arch/x86/include/asm/msr-index.h
+++ b/xen/arch/x86/include/asm/msr-index.h
@@ -674,8 +674,8 @@
 
 /* Intel Core-based CPU performance counters */
 #define MSR_CORE_PERF_FIXED_CTR0	0x00000309
-#define MSR_CORE_PERF_FIXED_CTR1	0x0000030a
-#define MSR_CORE_PERF_FIXED_CTR2	0x0000030b
+#define MSR_CORE_PERF_FIXED_CTRn	0x0000030b
+
 #define MSR_CORE_PERF_FIXED_CTR_CTRL	0x0000038d
 #define MSR_CORE_PERF_GLOBAL_STATUS	0x0000038e
 #define MSR_CORE_PERF_GLOBAL_CTRL	0x0000038f
diff --git a/xen/arch/x86/pv/emul-priv-op.c b/xen/arch/x86/pv/emul-priv-op.c
index 301a70f5ea..a8472fc779 100644
--- a/xen/arch/x86/pv/emul-priv-op.c
+++ b/xen/arch/x86/pv/emul-priv-op.c
@@ -967,7 +967,7 @@ static int cf_check read_msr(
 
     case MSR_P6_PERFCTR(0) ... MSR_P6_PERFCTR_LAST:
     case MSR_P6_EVNTSEL(0) ... MSR_P6_EVNTSEL_LAST:
-    case MSR_CORE_PERF_FIXED_CTR0 ... MSR_CORE_PERF_FIXED_CTR2:
+    case MSR_CORE_PERF_FIXED_CTR0 ... MSR_CORE_PERF_FIXED_CTRn:
     case MSR_CORE_PERF_FIXED_CTR_CTRL ... MSR_CORE_PERF_GLOBAL_OVF_CTRL:
         if ( boot_cpu_data.x86_vendor == X86_VENDOR_INTEL )
         {
@@ -1147,7 +1147,7 @@ static int cf_check write_msr(
 
     case MSR_P6_PERFCTR(0) ... MSR_P6_PERFCTR_LAST:
     case MSR_P6_EVNTSEL(0) ... MSR_P6_EVNTSEL_LAST:
-    case MSR_CORE_PERF_FIXED_CTR0 ... MSR_CORE_PERF_FIXED_CTR2:
+    case MSR_CORE_PERF_FIXED_CTR0 ... MSR_CORE_PERF_FIXED_CTRn:
     case MSR_CORE_PERF_FIXED_CTR_CTRL ... MSR_CORE_PERF_GLOBAL_OVF_CTRL:
         if ( boot_cpu_data.x86_vendor == X86_VENDOR_INTEL )
         {
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Wed Oct 25 19:30:12 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 19:30:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623199.970874 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvja0-0003uw-82; Wed, 25 Oct 2023 19:30:12 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623199.970874; Wed, 25 Oct 2023 19:30: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 1qvjZz-0003qY-Q7; Wed, 25 Oct 2023 19:30:11 +0000
Received: by outflank-mailman (input) for mailman id 623199;
 Wed, 25 Oct 2023 19:30: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=xaZJ=GH=cloud.com=edwin.torok@srs-se1.protection.inumbo.net>)
 id 1qvjZx-0000YO-KK
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 19:30:09 +0000
Received: from mail-ej1-x62a.google.com (mail-ej1-x62a.google.com
 [2a00:1450:4864:20::62a])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id e847d7af-736c-11ee-98d5-6d05b1d4d9a1;
 Wed, 25 Oct 2023 21:30:08 +0200 (CEST)
Received: by mail-ej1-x62a.google.com with SMTP id
 a640c23a62f3a-9be7e3fa1daso21797266b.3
 for <xen-devel@lists.xenproject.org>; Wed, 25 Oct 2023 12:30:08 -0700 (PDT)
Received: from edvint-x-u.eng.citrite.net ([185.25.67.249])
 by smtp.gmail.com with ESMTPSA id
 hv6-20020a17090760c600b00985ed2f1584sm10408710ejc.187.2023.10.25.12.30.07
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 25 Oct 2023 12:30: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: e847d7af-736c-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1698262208; x=1698867008; 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=q6XCC+5rvlk/MEJqhgdqPVpUFs95Cpj7FftubwM6eJQ=;
        b=gqduNI82iUt7h6l5+IN31W2Ykpz1WR9iKC2lAqOW0Y9lp0O+M2ASu6GygFblaF673h
         49jzX5OcdZLq+r0qzDObq+j7+WYqgrq4a0y8epr/LESKGpbVWRHBimmxsp6q6zpkPpmB
         ZE4lA9pnnBvOob8aldR8tLhQbMQvH0MwVx878=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698262208; x=1698867008;
        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=q6XCC+5rvlk/MEJqhgdqPVpUFs95Cpj7FftubwM6eJQ=;
        b=DKXxVAsoeNa+FI6yW1UsG7KMt8JQxpDg3rDW6TfXjZeiXZ2J7FFU3y7YHNcZF2lX4M
         +w3MGEscOeWaR4ycCFA1xYZWwrFzLBPeDQ7o/A+ZjLFN2yHxIo9Yi6pYk5Xk+H15n1iM
         GFc8gel1vuB5WkdivC/vG20hRzgV60zPypH7mfGyfUf+KORlQBIW8ogbWl1kfpkws1Lf
         ORo5nIC6yCd+u7ndAF6oz29Wl7qIhqDydnsHo8o2wdt24kWufK64TK7/Jyej1lg43an0
         f24u/gbex+GT4G/4Hpfv0kQ2cgwzeieTj46qFFkNdfFwAwi20yagb6paLLziZoCS4gqS
         bbhw==
X-Gm-Message-State: AOJu0Yxv6FLYaWLuW9J1TBAr8QjZW9pefEZUdFfB01hAolztaWtHXDxt
	nppZOS3E5MQuUA8cyQ/cLWrw8VbQ6jYqHiEvk08jUA==
X-Google-Smtp-Source: AGHT+IHb7FRCvx8nLCvBr4JujyymZWcrmw0JmHuGh7+ApxplFpCJ0oHdrsDqNC4PpvY1/MUtmiks8A==
X-Received: by 2002:a17:907:2d29:b0:9a9:e4ba:2da7 with SMTP id gs41-20020a1709072d2900b009a9e4ba2da7mr14103159ejc.49.1698262208129;
        Wed, 25 Oct 2023 12:30:08 -0700 (PDT)
From: =?UTF-8?q?Edwin=20T=C3=B6r=C3=B6k?= <edwin.torok@cloud.com>
To: xen-devel@lists.xenproject.org
Cc: =?UTF-8?q?Edwin=20T=C3=B6r=C3=B6k?= <edvin.torok@citrix.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: [RFC PATCH 12/22] x86/msr-index: define more architectural MSRs
Date: Wed, 25 Oct 2023 20:29:42 +0100
Message-Id: <4675c236ea5f66bfce36eb98ac5806ee0468b4fe.1698261255.git.edwin.torok@cloud.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1698261255.git.edwin.torok@cloud.com>
References: <cover.1698261255.git.edwin.torok@cloud.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

From: Edwin Török <edvin.torok@citrix.com>

Add most architectural MSRs, except those behind CPUID features that are
not yet implemented, such as TME, SGX.

Based on "2.1 Architectural MSRs" of Intel SDM volume 4

Signed-off-by: Edwin Török <edvin.torok@citrix.com>
---
 xen/arch/x86/include/asm/msr-index.h | 54 +++++++++++++++++++++++++---
 1 file changed, 50 insertions(+), 4 deletions(-)

diff --git a/xen/arch/x86/include/asm/msr-index.h b/xen/arch/x86/include/asm/msr-index.h
index 0dfb5b499f..061b07c7ae 100644
--- a/xen/arch/x86/include/asm/msr-index.h
+++ b/xen/arch/x86/include/asm/msr-index.h
@@ -58,6 +58,14 @@
 #define  PRED_CMD_IBPB                      (_AC(1, ULL) <<  0)
 #define  PRED_CMD_SBPB                      (_AC(1, ULL) <<  7)
 
+#define MSR_IA32_SMM_MONITOR_CTL            0x0000009b
+#define MSR_IA32_SMBASE                     0x0000009e
+#define MSR_IA32_SMRR_PHYSBASE              0x000001f2
+#define MSR_IA32_SMRR_PHYSMASK              0x000001f3
+#define MSR_IA32_PLATFORM_DCA_CAP           0x000001f8
+#define MSR_IA32_CPU_DCA_CAP                0x000001f9
+#define MSR_IA32_DCA_0_CAP                  0x000001fa
+
 #define MSR_PPIN_CTL                        0x0000004e
 #define  PPIN_LOCKOUT                       (_AC(1, ULL) <<  0)
 #define  PPIN_ENABLE                        (_AC(1, ULL) <<  1)
@@ -267,13 +275,21 @@
 #define MSR_IA32_MCG_CAP		0x00000179
 #define MSR_IA32_MCG_STATUS		0x0000017a
 #define MSR_IA32_MCG_CTL		0x0000017b
-#define MSR_IA32_MCG_EXT_CTL	0x000004d0
+#define MSR_IA32_MCG_EXT_CTL		0x000004d0
 
 #define MSR_IA32_PEBS_ENABLE		0x000003f1
 #define MSR_IA32_DS_AREA		0x00000600
 #define MSR_IA32_PERF_CAPABILITIES	0x00000345
 /* Lower 6 bits define the format of the address in the LBR stack */
-#define MSR_IA32_PERF_CAP_LBR_FORMAT	0x3f
+#define MSR_IA32_PERF_CAP_LBR_FORMAT    	0x3f
+#define MSR_IA32_PERF_CAP_PEBS_TRAP		(_AC(1,ULL) << 6)
+#define MSR_IA32_PERF_CAP_PEBS_SAVE_ARCH_REGS	(_AC(1,ULL) << 7)
+#define MSR_IA32_PERF_CAP_PEBS_RECORD_FORMAT	0xf00
+#define MSR_IA32_PERF_CAP_FREEZE_WHILE_SMM	(_AC(1,ULL) << 12)
+#define MSR_IA32_PERF_CAP_FULLWIDTH_PMC 	(_AC(1,ULL) << 13)
+#define MSR_IA32_PERF_CAP_PEBS_BASELINE		(_AC(1,ULL) << 14)
+#define MSR_IA32_PERF_CAP_PERF_METRICS		(_AC(1,ULL) << 15)
+#define MSR_IA32_PERF_CAP_PEBS_TO_PT		(_AC(1,ULL) << 16)
 
 #define MSR_IA32_BNDCFGS		0x00000d90
 #define IA32_BNDCFGS_ENABLE		0x00000001
@@ -307,6 +323,8 @@
 #define IA32_DEBUGCTLMSR_BTS_OFF_USR	(1<<10) /* BTS off if CPL > 0 */
 #define IA32_DEBUGCTLMSR_FREEZE_LBRS_ON_PMI	(1<<11) /* LBR stack frozen on PMI */
 #define IA32_DEBUGCTLMSR_FREEZE_PERFMON_ON_PMI	(1<<12) /*  Global counter control ENABLE bit frozen on PMI */
+#define IA32_DEBUGCTLMSR_ENABLE_UNCORE_PMI	(1<<13) /* Enable uncore PMI */
+#define IA32_DEBUGCTLMSR_FREEZE_WHILE_SMM	(1<<14) /* Freeze perfmon/trace while in SMM */
 #define IA32_DEBUGCTLMSR_RTM			(1<<15) /* RTM debugging enable */
 
 #define MSR_IA32_LASTBRANCHFROMIP	0x000001db
@@ -469,6 +487,7 @@
 #define MSR_VIA_RNG			0x0000110b
 
 /* Intel defined MSRs. */
+#define MSR_IA32_MONITOR_FILTER_SIZE	0x00000006
 #define MSR_IA32_TSC			0x00000010
 #define MSR_IA32_PLATFORM_ID		0x00000017
 #define MSR_IA32_EBL_CR_POWERON		0x0000002a
@@ -491,6 +510,7 @@
 #define MSR_IA32_PERF_STATUS		0x00000198
 #define MSR_IA32_PERF_CTL		0x00000199
 
+#define MSR_IA32_UMWAIT_CONTROL		0x000000e1
 #define MSR_IA32_MPERF			0x000000e7
 #define MSR_IA32_APERF			0x000000e8
 
@@ -498,6 +518,7 @@
 #define MSR_IA32_THERM_INTERRUPT	0x0000019b
 #define MSR_IA32_THERM_STATUS		0x0000019c
 #define MSR_IA32_MISC_ENABLE		0x000001a0
+#define MSR_IA32_MISC_ENABLE_FAST_STRINGS (1<<0)
 #define MSR_IA32_MISC_ENABLE_PERF_AVAIL   (1<<7)
 #define MSR_IA32_MISC_ENABLE_BTS_UNAVAIL  (1<<11)
 #define MSR_IA32_MISC_ENABLE_PEBS_UNAVAIL (1<<12)
@@ -508,15 +529,38 @@
 #define MSR_IA32_MISC_ENABLE_TURBO_DISENGAGE (_AC(1, ULL) << 38)
 
 #define MSR_IA32_TSC_DEADLINE		0x000006E0
+
+#define MSR_IA32_PM_ENABLE		0x00000770
+#define MSR_IA32_HWP_CAPABILITIES	0x00000771
+#define MSR_IA32_HWP_REQUEST_PKG	0x00000772
+#define MSR_IA32_HWP_INTERRUPT		0x00000773
+#define MSR_IA32_HWP_REQUEST		0x00000774
+#define MSR_IA32_PECI_HWP_REQUEST_INFO	0x00000775
+#define MSR_IA32_HWP_STATUS		0x00000777
+
+#define MSR_IA32_PKG_HDC_CTL		0x00000db0
+#define MSR_IA32_PM_CTL1		0x00000db1
+#define MSR_IA32_THREAD_STALL		0x00000db2
+#define MSR_IA32_HW_FEEDBACK_PTR	0x000017d0
+#define MSR_IA32_HW_FEEDBACK_CONFIG	0x000017d1
+
+#define MSR_TEMPERATURE_TARGET		0x000001a2
+#define MSR_TURBO_RATIO_LIMIT		0x000001ad
+#define MSR_TURBO_RATIO_LIMIT1		0x000001ae
+#define MSR_TURBO_RATIO_LIMIT2		0x000001af
+
 #define MSR_IA32_ENERGY_PERF_BIAS	0x000001b0
+#define MSR_IA32_PACKAGE_THERM_STATUS	0x000001b1
+#define MSR_IA32_PACKAGE_THERM_INTERRUPT 0x000001b2
 
 /* Platform Shared Resource MSRs */
+#define MSR_IA32_PSR_L3_QOS_CFG		0x00000c81
+#define MSR_IA32_PSR_L2_QOS_CFG		0x00000c82
 #define MSR_IA32_CMT_EVTSEL		0x00000c8d
 #define MSR_IA32_CMT_EVTSEL_UE_MASK	0x0000ffff
 #define MSR_IA32_CMT_CTR		0x00000c8e
 #define MSR_IA32_PSR_ASSOC		0x00000c8f
-#define MSR_IA32_PSR_L3_QOS_CFG	0x00000c81
-#define MSR_IA32_PSR_L3_MASK(n)	(0x00000c90 + (n))
+#define MSR_IA32_PSR_L3_MASK(n)		(0x00000c90 + (n))
 #define MSR_IA32_PSR_L3_MASK_CODE(n)	(0x00000c90 + (n) * 2 + 1)
 #define MSR_IA32_PSR_L3_MASK_DATA(n)	(0x00000c90 + (n) * 2)
 #define MSR_IA32_PSR_L2_MASK(n)		(0x00000d10 + (n))
@@ -682,6 +726,8 @@
 #define MSR_CORE_PERF_GLOBAL_STATUS	0x0000038e
 #define MSR_CORE_PERF_GLOBAL_CTRL	0x0000038f
 #define MSR_CORE_PERF_GLOBAL_OVF_CTRL	0x00000390
+#define MSR_CORE_PERF_GLOBAL_STATUS_SET	0x00000391
+#define MSR_CORE_PERF_GLOBAL_INUSE	0x00000392
 
 /* Intel cpuid spoofing MSRs */
 #define MSR_INTEL_MASK_V1_CPUID1        0x00000478
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Wed Oct 25 19:30:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 19:30:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623200.970879 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvja0-00042N-OW; Wed, 25 Oct 2023 19:30:12 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623200.970879; Wed, 25 Oct 2023 19:30: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 1qvja0-00040A-E3; Wed, 25 Oct 2023 19:30:12 +0000
Received: by outflank-mailman (input) for mailman id 623200;
 Wed, 25 Oct 2023 19:30: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=xaZJ=GH=cloud.com=edwin.torok@srs-se1.protection.inumbo.net>)
 id 1qvjZx-0001Lv-Qa
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 19:30:09 +0000
Received: from mail-ej1-x62b.google.com (mail-ej1-x62b.google.com
 [2a00:1450:4864:20::62b])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id e6d013d8-736c-11ee-9b0e-b553b5be7939;
 Wed, 25 Oct 2023 21:30:06 +0200 (CEST)
Received: by mail-ej1-x62b.google.com with SMTP id
 a640c23a62f3a-99de884ad25so19206266b.3
 for <xen-devel@lists.xenproject.org>; Wed, 25 Oct 2023 12:30:06 -0700 (PDT)
Received: from edvint-x-u.eng.citrite.net ([185.25.67.249])
 by smtp.gmail.com with ESMTPSA id
 hv6-20020a17090760c600b00985ed2f1584sm10408710ejc.187.2023.10.25.12.30.04
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 25 Oct 2023 12: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: e6d013d8-736c-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1698262205; x=1698867005; 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=iP9G7laIqRl2FqyiOfQJAdkCawwQIojH1r5EdOLWSS0=;
        b=eFfWSa28xk0rJEVPYBOYZGaddJgf04K8oJpn3ymYEo1TelzcfZVGTxEq38sr+pqK14
         USLiDeS3U4wlMQwuuPB2dNLcWAvnesoW8Qeg3/RQNIx96DxazKVoSUAgMGm3+YLpWwks
         H+2BwgaAnsUnJ3Mr+4RG7nwohPN8KtljiuiA4=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698262205; x=1698867005;
        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=iP9G7laIqRl2FqyiOfQJAdkCawwQIojH1r5EdOLWSS0=;
        b=s+1uF+rkRs0j80Ffu5eDifhcjwHQkpuPV6moawnjK0KkgWMRkzk7KDSvF978nfIKZ0
         S5ZSImqcjeMuxY64GwXzgRiwR69nd8JSKSo/LiN8PI1+srYvHdoED5JssUAenY41C5ct
         p4+/tsQhx+U/y55rdC1uIa81lgNo4AnYV2VrSytqY8/7GmilYa80mrnJPyqVUHXoFAcU
         rUFlOXwn1wevXdNhtQOPgz5PrJWWOu8eWDQaDY9tBcdK1OhqwAXqexMDko2RqYSrdB0l
         OPlkTP0dRmd207Ykt57W4oEzqBcuqO/qQRFstSq1mOta30gdf2EhC0xzcRa08ULgYh64
         bQRQ==
X-Gm-Message-State: AOJu0YxJtpPPnmGhfchJAud0D6g9VOXgtsGZYKOwVsLt4EDfC/J8sQe2
	KcqDKtH90/3wT3lZliSSXatOVOQzR9K9hwWQn1jCkcZa
X-Google-Smtp-Source: AGHT+IHKT/4+cqjr/SSda+iaHUVZU3nFN8vu40U2Th87N93s7qOLJ2x8v5UhOJ1ekUe+qeZAZ4l++Q==
X-Received: by 2002:a17:907:2cc4:b0:9c3:d356:ad0c with SMTP id hg4-20020a1709072cc400b009c3d356ad0cmr12766172ejc.24.1698262205687;
        Wed, 25 Oct 2023 12:30:05 -0700 (PDT)
From: =?UTF-8?q?Edwin=20T=C3=B6r=C3=B6k?= <edwin.torok@cloud.com>
To: xen-devel@lists.xenproject.org
Cc: =?UTF-8?q?Edwin=20T=C3=B6r=C3=B6k?= <edvin.torok@citrix.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: [RFC PATCH 09/22] x86/PMUv1: consistently use 8 perf counters in Dom0
Date: Wed, 25 Oct 2023 20:29:39 +0100
Message-Id: <bce88ca09f6787c1d0815611189da42a09598657.1698261255.git.edwin.torok@cloud.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1698261255.git.edwin.torok@cloud.com>
References: <cover.1698261255.git.edwin.torok@cloud.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

From: Edwin Török <edvin.torok@citrix.com>

The code is currently inconsistent: supports 4 on read and 8 on write.
Sandy Bridge+ supports 8 of these, and the MSR range is architecturally
reserved, so always support 8.

Make it a macro to ensure we use the same value everywhere.

Although DomUs are now restricted to only 4 PMCs, we may still want to
use all 8 in Dom0 when available, and since the default rdwmsr
restrictions Dom0 would be prevented to read these MSRs as well.

Depends on:
"x86/PMUv1: limit arch PMCs to 4 for non-Dom0"

Backport: 4.15+

Signed-off-by: Edwin Török <edvin.torok@citrix.com>
---
 xen/arch/x86/hvm/vmx/vmx.c           | 8 ++++----
 xen/arch/x86/include/asm/msr-index.h | 3 +++
 xen/arch/x86/pv/emul-priv-op.c       | 8 ++++----
 3 files changed, 11 insertions(+), 8 deletions(-)

diff --git a/xen/arch/x86/hvm/vmx/vmx.c b/xen/arch/x86/hvm/vmx/vmx.c
index f6e5123f66..7d51addf7a 100644
--- a/xen/arch/x86/hvm/vmx/vmx.c
+++ b/xen/arch/x86/hvm/vmx/vmx.c
@@ -3360,8 +3360,8 @@ static int cf_check vmx_msr_read_intercept(
                        MSR_IA32_MISC_ENABLE_PEBS_UNAVAIL;
         /* Perhaps vpmu will change some bits. */
         /* FALLTHROUGH */
-    case MSR_P6_PERFCTR(0)...MSR_P6_PERFCTR(7):
-    case MSR_P6_EVNTSEL(0)...MSR_P6_EVNTSEL(3):
+    case MSR_P6_PERFCTR(0)...MSR_P6_PERFCTR_LAST:
+    case MSR_P6_EVNTSEL(0)...MSR_P6_EVNTSEL_LAST:
     case MSR_CORE_PERF_FIXED_CTR0...MSR_CORE_PERF_FIXED_CTR2:
     case MSR_CORE_PERF_FIXED_CTR_CTRL...MSR_CORE_PERF_GLOBAL_OVF_CTRL:
     case MSR_IA32_PEBS_ENABLE:
@@ -3678,8 +3678,8 @@ static int cf_check vmx_msr_write_intercept(
             goto gp_fault;
         break;
 
-    case MSR_P6_PERFCTR(0)...MSR_P6_PERFCTR(7):
-    case MSR_P6_EVNTSEL(0)...MSR_P6_EVNTSEL(7):
+    case MSR_P6_PERFCTR(0)...MSR_P6_PERFCTR_LAST:
+    case MSR_P6_EVNTSEL(0)...MSR_P6_EVNTSEL_LAST:
     case MSR_CORE_PERF_FIXED_CTR0...MSR_CORE_PERF_FIXED_CTR2:
     case MSR_CORE_PERF_FIXED_CTR_CTRL...MSR_CORE_PERF_GLOBAL_OVF_CTRL:
     case MSR_IA32_PEBS_ENABLE:
diff --git a/xen/arch/x86/include/asm/msr-index.h b/xen/arch/x86/include/asm/msr-index.h
index 8601f8f426..011a926e0e 100644
--- a/xen/arch/x86/include/asm/msr-index.h
+++ b/xen/arch/x86/include/asm/msr-index.h
@@ -521,8 +521,11 @@
 #define MSR_IA32_PSR_MBA_MASK(n)	(0x00000d50 + (n))
 
 /* Intel Model 6 */
+#define MSR_P6_PERFCTR_MAX		8
 #define MSR_P6_PERFCTR(n)		(0x000000c1 + (n))
 #define MSR_P6_EVNTSEL(n)		(0x00000186 + (n))
+#define MSR_P6_PERFCTR_LAST		MSR_P6_PERFCTR(MSR_P6_PERFCTR_MAX-1)
+#define MSR_P6_EVNTSEL_LAST		MSR_P6_EVNTSEL(MSR_P6_PERFCTR_MAX-1)
 
 /* P4/Xeon+ specific */
 #define MSR_IA32_MCG_EAX		0x00000180
diff --git a/xen/arch/x86/pv/emul-priv-op.c b/xen/arch/x86/pv/emul-priv-op.c
index 978ae679a2..301a70f5ea 100644
--- a/xen/arch/x86/pv/emul-priv-op.c
+++ b/xen/arch/x86/pv/emul-priv-op.c
@@ -965,8 +965,8 @@ static int cf_check read_msr(
         *val = 0;
         return X86EMUL_OKAY;
 
-    case MSR_P6_PERFCTR(0) ... MSR_P6_PERFCTR(7):
-    case MSR_P6_EVNTSEL(0) ... MSR_P6_EVNTSEL(3):
+    case MSR_P6_PERFCTR(0) ... MSR_P6_PERFCTR_LAST:
+    case MSR_P6_EVNTSEL(0) ... MSR_P6_EVNTSEL_LAST:
     case MSR_CORE_PERF_FIXED_CTR0 ... MSR_CORE_PERF_FIXED_CTR2:
     case MSR_CORE_PERF_FIXED_CTR_CTRL ... MSR_CORE_PERF_GLOBAL_OVF_CTRL:
         if ( boot_cpu_data.x86_vendor == X86_VENDOR_INTEL )
@@ -1145,8 +1145,8 @@ static int cf_check write_msr(
             return X86EMUL_OKAY;
         break;
 
-    case MSR_P6_PERFCTR(0) ... MSR_P6_PERFCTR(7):
-    case MSR_P6_EVNTSEL(0) ... MSR_P6_EVNTSEL(3):
+    case MSR_P6_PERFCTR(0) ... MSR_P6_PERFCTR_LAST:
+    case MSR_P6_EVNTSEL(0) ... MSR_P6_EVNTSEL_LAST:
     case MSR_CORE_PERF_FIXED_CTR0 ... MSR_CORE_PERF_FIXED_CTR2:
     case MSR_CORE_PERF_FIXED_CTR_CTRL ... MSR_CORE_PERF_GLOBAL_OVF_CTRL:
         if ( boot_cpu_data.x86_vendor == X86_VENDOR_INTEL )
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Wed Oct 25 19:30:14 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 19:30:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623201.970889 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvja2-0004I1-C6; Wed, 25 Oct 2023 19:30:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623201.970889; Wed, 25 Oct 2023 19:30: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 1qvja1-0004Dg-Ht; Wed, 25 Oct 2023 19:30:13 +0000
Received: by outflank-mailman (input) for mailman id 623201;
 Wed, 25 Oct 2023 19: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=xaZJ=GH=cloud.com=edwin.torok@srs-se1.protection.inumbo.net>)
 id 1qvjZy-0000YO-T8
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 19:30:10 +0000
Received: from mail-ej1-x62e.google.com (mail-ej1-x62e.google.com
 [2a00:1450:4864:20::62e])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id e952b5fa-736c-11ee-98d5-6d05b1d4d9a1;
 Wed, 25 Oct 2023 21:30:10 +0200 (CEST)
Received: by mail-ej1-x62e.google.com with SMTP id
 a640c23a62f3a-9be7e3fa1daso21801866b.3
 for <xen-devel@lists.xenproject.org>; Wed, 25 Oct 2023 12:30:10 -0700 (PDT)
Received: from edvint-x-u.eng.citrite.net ([185.25.67.249])
 by smtp.gmail.com with ESMTPSA id
 hv6-20020a17090760c600b00985ed2f1584sm10408710ejc.187.2023.10.25.12.30.08
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 25 Oct 2023 12:30: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: e952b5fa-736c-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1698262209; x=1698867009; 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=xyRq+c9BJCb93kXBrKQv/KcXMiJOXue/WyRit8/QUCo=;
        b=Nzy0RgWNnYbzTXvFjA9ixvtHno8FE0b7OMLnj6E2clULz+PuWfxqLQJ1PwjJvgyBBD
         VX5LMXgfSIFIe9bxAGgzGdxirujoHfxkPw1IGR9x3/KLkb/+Z6nwXvnf52E+t4yn/xc3
         Tpq2KjNFjGKFUPWUvp20nSjJ53hVc07aoFeJg=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698262209; x=1698867009;
        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=xyRq+c9BJCb93kXBrKQv/KcXMiJOXue/WyRit8/QUCo=;
        b=gtQfEUssn11XqE4xgFrUpVU0y4ePOTglMnCQA9x1ItplSLv48mdd1oYqTkq1eWvmT5
         foPqntFlllGCP03Rv/y8vOLHj3s43ZfKxx5Bqp8ujzWJjW9tXSzxD6hBwuRkP8Ddquvd
         hDG+OI1MH480zUBfB3Mq46TdafzrYRSvcD/wkpmR6JeR+DW4CirIVES0M9GIWCu+wHTX
         B/ufNa3l3eBI4/nan24XsENEnOnkLaaLJWyQU4TdXuTlPICwkanGGYuiW72lAiZvz5ZC
         FQoWyzW6v5+/fheIP2QbzhMDHfpggX+jRHChAY/ZM/F1NIZNH/ib9WfPG8bN0nMMP0fG
         N08g==
X-Gm-Message-State: AOJu0YxlPkjYr7xbD+bQy7+8guFNPZe+jGMCsIHOloI1/uxo9gaZqOQp
	5vQrXVyBIrCJ4+ZrwEts4ONBtYLAG5ZDjvwipRdvkw==
X-Google-Smtp-Source: AGHT+IHx63H6w1nV7s5odhzwJCu1JVRIyW0hIwXWD+zmVSCbxvji+pd+k7UkLJx74o5xGRIAg/XqxA==
X-Received: by 2002:a17:907:3e0b:b0:9c5:8a6b:29e with SMTP id hp11-20020a1709073e0b00b009c58a6b029emr14545667ejc.13.1698262209651;
        Wed, 25 Oct 2023 12:30:09 -0700 (PDT)
From: =?UTF-8?q?Edwin=20T=C3=B6r=C3=B6k?= <edwin.torok@cloud.com>
To: xen-devel@lists.xenproject.org
Cc: =?UTF-8?q?Edwin=20T=C3=B6r=C3=B6k?= <edvin.torok@citrix.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: [RFC PATCH 14/22] x86/msr: RO MSR_TURBO_RATIO_LIMIT{,1,2}, MSR_TEMPERATURE_TARGET
Date: Wed, 25 Oct 2023 20:29:44 +0100
Message-Id: <85b2230c2c40789f6c8548ae9978cea244daf2c3.1698261255.git.edwin.torok@cloud.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1698261255.git.edwin.torok@cloud.com>
References: <cover.1698261255.git.edwin.torok@cloud.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

From: Edwin Török <edvin.torok@citrix.com>

Expose MSR_TURBO_RATIO_LIMIT{,1,2} and MSR_TEMPERATURE_TARGET to guest as RO.
Although these are not architectural MSRs they are in the same place
currently on all supported CPUs.
They also have the same meaning, except for 06_55H and 06_5C where
they have a different meaning (turbo core count).

It is safe to expose this to the guest by default: they are only
statically defined limits and don't expose runtime measurements.

It has been observed that some drivers BSOD on an unguarded read on
MSR 1ADH (e.g. socwatch).

Also we read as zero the actual temperature, so reporting the temp
target as 0 might lead to 0/0.

Backport: 4.15+

Signed-off-by: Edwin Török <edvin.torok@citrix.com>
---
 xen/arch/x86/hvm/vmx/vmx.c     | 9 +++++++++
 xen/arch/x86/pv/emul-priv-op.c | 4 ++++
 2 files changed, 13 insertions(+)

diff --git a/xen/arch/x86/hvm/vmx/vmx.c b/xen/arch/x86/hvm/vmx/vmx.c
index fefd01be40..cd772585fe 100644
--- a/xen/arch/x86/hvm/vmx/vmx.c
+++ b/xen/arch/x86/hvm/vmx/vmx.c
@@ -3353,6 +3353,15 @@ static int cf_check vmx_msr_read_intercept(
         if ( !nvmx_msr_read_intercept(msr, msr_content) )
             goto gp_fault;
         break;
+
+    case MSR_TEMPERATURE_TARGET:
+    case MSR_TURBO_RATIO_LIMIT...MSR_TURBO_RATIO_LIMIT2:
+        if ( !rdmsr_safe(msr, *msr_content) )
+            break;
+        /* RO for guests, MSR_PLATFORM_INFO bits set accordingly in msr.c to indicate lack of write
+         * support. */
+        goto gp_fault;
+
     case MSR_IA32_MISC_ENABLE:
         rdmsrl(MSR_IA32_MISC_ENABLE, *msr_content);
         /* Debug Trace Store is not supported. */
diff --git a/xen/arch/x86/pv/emul-priv-op.c b/xen/arch/x86/pv/emul-priv-op.c
index e623e57b55..09bfde1060 100644
--- a/xen/arch/x86/pv/emul-priv-op.c
+++ b/xen/arch/x86/pv/emul-priv-op.c
@@ -960,6 +960,10 @@ static int cf_check read_msr(
         *val = guest_misc_enable(*val);
         return X86EMUL_OKAY;
 
+    case MSR_TEMPERATURE_TARGET:
+    case MSR_TURBO_RATIO_LIMIT...MSR_TURBO_RATIO_LIMIT2:
+        goto normal;
+
     case MSR_P6_PERFCTR(0) ... MSR_P6_PERFCTR_LAST:
     case MSR_P6_EVNTSEL(0) ... MSR_P6_EVNTSEL_LAST:
     case MSR_CORE_PERF_FIXED_CTR0 ... MSR_CORE_PERF_FIXED_CTRn:
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Wed Oct 25 19:30:15 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 19:30:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623202.970892 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvja3-0004TR-7R; Wed, 25 Oct 2023 19:30:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623202.970892; Wed, 25 Oct 2023 19:30: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 1qvja2-0004RT-Fh; Wed, 25 Oct 2023 19:30:14 +0000
Received: by outflank-mailman (input) for mailman id 623202;
 Wed, 25 Oct 2023 19:30: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=xaZJ=GH=cloud.com=edwin.torok@srs-se1.protection.inumbo.net>)
 id 1qvjZz-0001Lv-6u
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 19:30:11 +0000
Received: from mail-ej1-x634.google.com (mail-ej1-x634.google.com
 [2a00:1450:4864:20::634])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id e8c25aad-736c-11ee-9b0e-b553b5be7939;
 Wed, 25 Oct 2023 21:30:09 +0200 (CEST)
Received: by mail-ej1-x634.google.com with SMTP id
 a640c23a62f3a-9bf0ac97fdeso19100366b.2
 for <xen-devel@lists.xenproject.org>; Wed, 25 Oct 2023 12:30:09 -0700 (PDT)
Received: from edvint-x-u.eng.citrite.net ([185.25.67.249])
 by smtp.gmail.com with ESMTPSA id
 hv6-20020a17090760c600b00985ed2f1584sm10408710ejc.187.2023.10.25.12.30.08
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 25 Oct 2023 12:30: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: e8c25aad-736c-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1698262209; x=1698867009; 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=ObxbptVjFjCZzNKpeaXDAzqTbrvIPZsTbBGt+Dq6anM=;
        b=A8W8rOCo5My5xhsELeZOk1J3TBi5pK2ddpCCCnUW+l/BCwheW3weAQCBXRLr7HYDmB
         JFeA2RUQHoIF/01mD3kl6dE9n4+YRVE06mD83YEVwaYIn6zps3RXSrmt5yF7glVEiIEw
         K48v9bMgGsmjl8pWIWJV0vsIj9SMCfLSyfBxk=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698262209; x=1698867009;
        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=ObxbptVjFjCZzNKpeaXDAzqTbrvIPZsTbBGt+Dq6anM=;
        b=hYPOpavAAe93wKXVAPCk4pzY8jBVglYcRp0xHZvNQVaXJLqaUFC5Ur+GA15dBTVxgD
         y/yXgoEt4MN5gUG/npdOqFV5Wv4bfaCUJZGfZ5Bs8A9JR8F7l/kMKLMwLh3vEvnWWYlJ
         Gzl8TkJ8LHEiur0wwC4FT1jc9KkE2zUbjN8PB/7cMhwNWsBS7KVK9bkcGM1FJm9p82f5
         bqrVCrVvQLxIeq3FiuYdEeOrmROzuRoUU7C/VjzTBaNmbBF2/IOtEjNwicM2Dn5GpD6P
         66b5hvwMiyZQKJbcZKs9DjpSL7N1rMh2JEQVeEy6+woHKqD7kvT6jqVsUVoQ+CFWU6NK
         8evA==
X-Gm-Message-State: AOJu0YyiUU2nYrsyow8b+/v+op9dEEqag3mc7H2CQoy7YQH5l2v7nE9g
	yzzIrMrgr5vJQfy62w5hpDjBn1gJXEqwU7unM6wRxg==
X-Google-Smtp-Source: AGHT+IHwxJOyWh8HPzL13+/SLwBO0U3Pr25AoXriqxxqHT9GvDNBp5XYykfO6ItnsgbolB5QJU60nQ==
X-Received: by 2002:a17:906:dace:b0:9c6:64be:a3ac with SMTP id xi14-20020a170906dace00b009c664bea3acmr13083067ejb.49.1698262208791;
        Wed, 25 Oct 2023 12:30:08 -0700 (PDT)
From: =?UTF-8?q?Edwin=20T=C3=B6r=C3=B6k?= <edwin.torok@cloud.com>
To: xen-devel@lists.xenproject.org
Cc: =?UTF-8?q?Edwin=20T=C3=B6r=C3=B6k?= <edvin.torok@citrix.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>,
	Jun Nakajima <jun.nakajima@intel.com>,
	Kevin Tian <kevin.tian@intel.com>
Subject: [RFC PATCH 13/22] x86/vpmu: expose PDCM and IA32_PERF_CAPABILITIES when vpmu is enabled
Date: Wed, 25 Oct 2023 20:29:43 +0100
Message-Id: <208464149217bcda9f774db7b906a597f9bde6db.1698261255.git.edwin.torok@cloud.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1698261255.git.edwin.torok@cloud.com>
References: <cover.1698261255.git.edwin.torok@cloud.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

From: Edwin Török <edvin.torok@citrix.com>

Marked as exposed by default, but then hidden if vpmu is not available.
TODO: the interaction between vpmu and policy might need some changes.

Only expose LBR and the full-width MSR capabilities, and not PEBS.

Backport: 4.15+

Signed-off-by: Edwin Török <edvin.torok@citrix.com>
---
 xen/arch/x86/cpu-policy.c                   | 10 ++++++++--
 xen/arch/x86/hvm/vmx/vmx.c                  |  2 +-
 xen/arch/x86/msr.c                          |  8 ++++++++
 xen/arch/x86/pv/emul-priv-op.c              |  5 -----
 xen/include/public/arch-x86/cpufeatureset.h |  2 +-
 5 files changed, 18 insertions(+), 9 deletions(-)

diff --git a/xen/arch/x86/cpu-policy.c b/xen/arch/x86/cpu-policy.c
index 64c8857a61..e38b648f7d 100644
--- a/xen/arch/x86/cpu-policy.c
+++ b/xen/arch/x86/cpu-policy.c
@@ -388,8 +388,10 @@ static void __init calculate_host_policy(void)
     recalculate_misc(p);
 
     /* When vPMU is disabled, drop it from the host policy. */
-    if ( vpmu_mode == XENPMU_MODE_OFF )
+    if ( vpmu_mode == XENPMU_MODE_OFF ) {
         p->basic.raw[0xa] = EMPTY_LEAF;
+        p->basic.pdcm = 0;
+    }
 
     if ( p->extd.svm )
     {
@@ -899,8 +901,12 @@ void recalculate_cpuid_policy(struct domain *d)
     }
 
     if ( vpmu_mode == XENPMU_MODE_OFF ||
-         ((vpmu_mode & XENPMU_MODE_ALL) && !is_hardware_domain(d)) )
+         ((vpmu_mode & XENPMU_MODE_ALL) && !is_hardware_domain(d)) ) {
         p->basic.raw[0xa] = EMPTY_LEAF;
+        p->basic.pdcm = 0;
+    }
+    if ( vpmu_features & (XENPMU_FEATURE_IPC_ONLY | XENPMU_FEATURE_ARCH_ONLY) )
+        p->basic.pdcm = 0;
 
     if ( !p->extd.svm )
         p->extd.raw[0xa] = EMPTY_LEAF;
diff --git a/xen/arch/x86/hvm/vmx/vmx.c b/xen/arch/x86/hvm/vmx/vmx.c
index f1f8a9afa2..fefd01be40 100644
--- a/xen/arch/x86/hvm/vmx/vmx.c
+++ b/xen/arch/x86/hvm/vmx/vmx.c
@@ -3602,7 +3602,7 @@ static int cf_check vmx_msr_write_intercept(
         }
 
         if (cp->basic.pmu_version >= 2 && cpu_has(&current_cpu_data, X86_FEATURE_PDCM)) {
-            rsvd &= ~(IA32_DEBUGCTLMSR_FREEZE_LBRS_ON_PMI | IA32_DEBUGCTLMSR_FREEZE_PERFMON_ON_PMI);
+            rsvd &= ~(IA32_DEBUGCTLMSR_FREEZE_LBRS_ON_PMI | IA32_DEBUGCTLMSR_FREEZE_PERFMON_ON_PMI | IA32_DEBUGCTLMSR_FREEZE_WHILE_SMM);
         }
 
         if ( cp->feat.rtm )
diff --git a/xen/arch/x86/msr.c b/xen/arch/x86/msr.c
index 0bf6d263e7..483b5e4f70 100644
--- a/xen/arch/x86/msr.c
+++ b/xen/arch/x86/msr.c
@@ -186,6 +186,14 @@ int guest_rdmsr(struct vcpu *v, uint32_t msr, uint64_t *val)
             goto gp_fault;
         goto get_reg;
 
+    case MSR_IA32_PERF_CAPABILITIES:
+        if ( cp->x86_vendor != X86_VENDOR_INTEL )
+            goto gp_fault;
+        if ( !cp->basic.pdcm || rdmsr_safe(msr, *val) )
+            goto gp_fault;
+        *val &= (MSR_IA32_PERF_CAP_LBR_FORMAT | MSR_IA32_PERF_CAP_FREEZE_WHILE_SMM | MSR_IA32_PERF_CAP_FULLWIDTH_PMC);
+        break;
+
     case MSR_X2APIC_FIRST ... MSR_X2APIC_LAST:
         if ( !is_hvm_domain(d) || v != curr )
             goto gp_fault;
diff --git a/xen/arch/x86/pv/emul-priv-op.c b/xen/arch/x86/pv/emul-priv-op.c
index a8472fc779..e623e57b55 100644
--- a/xen/arch/x86/pv/emul-priv-op.c
+++ b/xen/arch/x86/pv/emul-priv-op.c
@@ -960,11 +960,6 @@ static int cf_check read_msr(
         *val = guest_misc_enable(*val);
         return X86EMUL_OKAY;
 
-    case MSR_IA32_PERF_CAPABILITIES:
-        /* No extra capabilities are supported. */
-        *val = 0;
-        return X86EMUL_OKAY;
-
     case MSR_P6_PERFCTR(0) ... MSR_P6_PERFCTR_LAST:
     case MSR_P6_EVNTSEL(0) ... MSR_P6_EVNTSEL_LAST:
     case MSR_CORE_PERF_FIXED_CTR0 ... MSR_CORE_PERF_FIXED_CTRn:
diff --git a/xen/include/public/arch-x86/cpufeatureset.h b/xen/include/public/arch-x86/cpufeatureset.h
index 6b6ce2745c..0aa3251397 100644
--- a/xen/include/public/arch-x86/cpufeatureset.h
+++ b/xen/include/public/arch-x86/cpufeatureset.h
@@ -118,7 +118,7 @@ XEN_CPUFEATURE(SSSE3,         1*32+ 9) /*A  Supplemental Streaming SIMD Extensio
 XEN_CPUFEATURE(FMA,           1*32+12) /*A  Fused Multiply Add */
 XEN_CPUFEATURE(CX16,          1*32+13) /*A  CMPXCHG16B */
 XEN_CPUFEATURE(XTPR,          1*32+14) /*   Send Task Priority Messages */
-XEN_CPUFEATURE(PDCM,          1*32+15) /*   Perf/Debug Capability MSR */
+XEN_CPUFEATURE(PDCM,          1*32+15) /*A  Perf/Debug Capability MSR */
 XEN_CPUFEATURE(PCID,          1*32+17) /*H  Process Context ID */
 XEN_CPUFEATURE(DCA,           1*32+18) /*   Direct Cache Access */
 XEN_CPUFEATURE(SSE4_1,        1*32+19) /*A  Streaming SIMD Extensions 4.1 */
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Wed Oct 25 19:30:17 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 19:30:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623203.970904 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvja4-0004ju-UF; Wed, 25 Oct 2023 19:30:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623203.970904; Wed, 25 Oct 2023 19:30: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 1qvja3-0004ge-Mp; Wed, 25 Oct 2023 19:30:15 +0000
Received: by outflank-mailman (input) for mailman id 623203;
 Wed, 25 Oct 2023 19: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=xaZJ=GH=cloud.com=edwin.torok@srs-se1.protection.inumbo.net>)
 id 1qvjZz-0000YO-KV
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 19:30:11 +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 e99200bc-736c-11ee-98d5-6d05b1d4d9a1;
 Wed, 25 Oct 2023 21:30:10 +0200 (CEST)
Received: by mail-ej1-x62d.google.com with SMTP id
 a640c23a62f3a-99c3d3c3db9so20953666b.3
 for <xen-devel@lists.xenproject.org>; Wed, 25 Oct 2023 12:30:10 -0700 (PDT)
Received: from edvint-x-u.eng.citrite.net ([185.25.67.249])
 by smtp.gmail.com with ESMTPSA id
 hv6-20020a17090760c600b00985ed2f1584sm10408710ejc.187.2023.10.25.12.30.09
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 25 Oct 2023 12:30: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: e99200bc-736c-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1698262210; x=1698867010; 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=JKhNYdlAE8EwCefQAQkVbnFvAytz3pPS6IXrLO8Y8Kc=;
        b=Zj5TlKrfu78SyOouz/U6bZK7akCc/JA5uk9YTxf/aY26CRq6ywHAvfl8AI5DGK0g5K
         v8udYmuyW8ActQt3/VU8dABPF6djXSnebETFYe9sdybDPSE/VLPRZYeXnEYWRxb7zik1
         7VUsiMqcjvWU+d4dq4c5qqtotAvLyBAfbhUzk=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698262210; x=1698867010;
        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=JKhNYdlAE8EwCefQAQkVbnFvAytz3pPS6IXrLO8Y8Kc=;
        b=q+bL6ZX7srzrFeLoR1tPosAWurZDwuXArvqMuszIFjpBm9AC9XP1iSjJGzgdE8Hh5E
         7GZwvdkxdtkF7liuu9aEEERfxd6RIDAbKUlG4PXi5Ow7f6un8eWY95NLbt3/3ST5PFjr
         NtD6rGpCeg/jFWWJiVClLHq/y8NU2SRosJuGNiEvI0h18hqSAMoR+PypP99+Irqh1ohg
         u5ZJ+brJQHu1dAep1jRgiK5p5euaFu6+AZvDfPEdZZvO4q8DLAaaISqjY5E1AYmfFesb
         +GwWla481kfQD62iDESEEDMj/F7aX6Amr2WWg1JgHSDwvpsqcs4BCh7RV2krwCDoMi4G
         +gLA==
X-Gm-Message-State: AOJu0YxywVeMoeqx5aehlDQwMvTLG+fIo8KgJP45MlMJxxRzLdV1utaE
	u56Zh/hxihRFakFE/vI+rOBQUMkJmgltvk7getIexA==
X-Google-Smtp-Source: AGHT+IFzYgBWUL9afBd9LOeukhnEP1/3SxzWsrc9BUVmSazeXCKhKucA6bNJ0btH7zgnlcBmxZGpDQ==
X-Received: by 2002:a17:906:eec6:b0:9b6:f0e2:3c00 with SMTP id wu6-20020a170906eec600b009b6f0e23c00mr13472824ejb.71.1698262210271;
        Wed, 25 Oct 2023 12:30:10 -0700 (PDT)
From: =?UTF-8?q?Edwin=20T=C3=B6r=C3=B6k?= <edwin.torok@cloud.com>
To: xen-devel@lists.xenproject.org
Cc: =?UTF-8?q?Edwin=20T=C3=B6r=C3=B6k?= <edvin.torok@citrix.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: [RFC PATCH 15/22] x86/VPMU: use macros for max supported VPMU version
Date: Wed, 25 Oct 2023 20:29:45 +0100
Message-Id: <9ed0302bf1cce2dc65d6311c4508bfa4cfe4f8b7.1698261255.git.edwin.torok@cloud.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1698261255.git.edwin.torok@cloud.com>
References: <cover.1698261255.git.edwin.torok@cloud.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

From: Edwin Török <edvin.torok@citrix.com>

This ensures consistency between the 2 pieces of code that check for
VPMU version.

No functional change.

Signed-off-by: Edwin Török <edvin.torok@citrix.com>
---
 xen/arch/x86/cpu/vpmu_intel.c   | 20 ++++++--------------
 xen/arch/x86/include/asm/vpmu.h |  1 +
 2 files changed, 7 insertions(+), 14 deletions(-)

diff --git a/xen/arch/x86/cpu/vpmu_intel.c b/xen/arch/x86/cpu/vpmu_intel.c
index 4c0776cee7..82cd2656ea 100644
--- a/xen/arch/x86/cpu/vpmu_intel.c
+++ b/xen/arch/x86/cpu/vpmu_intel.c
@@ -810,7 +810,7 @@ static int cf_check core2_vpmu_initialise(struct vcpu *v)
     static bool_t ds_warned;
 
     if ( v->domain->arch.cpuid->basic.pmu_version <= 1 ||
-         v->domain->arch.cpuid->basic.pmu_version >= 6 )
+         v->domain->arch.cpuid->basic.pmu_version >= VPMU_VERSION_MAX_SUPPORTED )
         return -EINVAL;
 
     if ( (arch_pmc_cnt + fixed_pmc_cnt) == 0 )
@@ -890,22 +890,14 @@ const struct arch_vpmu_ops *__init core2_vpmu_init(void)
     if ( current_cpu_data.cpuid_level >= 0xa )
         version = MASK_EXTR(cpuid_eax(0xa), PMU_VERSION_MASK);
 
-    switch ( version )
-    {
-    case 4:
-    case 5:
-        printk(XENLOG_INFO "VPMU: PMU version %u is not fully supported. "
-               "Emulating version 3\n", version);
-        /* FALLTHROUGH */
-
-    case 2:
-    case 3:
-        break;
-
-    default:
+    if ( version <= 1 ||
+         version > VPMU_VERSION_MAX_SUPPORTED ) {
         printk(XENLOG_WARNING "VPMU: PMU version %u is not supported\n",
                version);
         return ERR_PTR(-EINVAL);
+    } else if ( version > VPMU_VERSION_MAX ) {
+        printk(XENLOG_INFO "VPMU: PMU version %u is not fully supported. "
+               "Emulating version %d\n", version, VPMU_VERSION_MAX);
     }
 
     if ( current_cpu_data.x86 != 6 )
diff --git a/xen/arch/x86/include/asm/vpmu.h b/xen/arch/x86/include/asm/vpmu.h
index 49c3e8c19a..79f7f4a09e 100644
--- a/xen/arch/x86/include/asm/vpmu.h
+++ b/xen/arch/x86/include/asm/vpmu.h
@@ -75,6 +75,7 @@ struct vpmu_struct {
 #define VPMU_CPU_HAS_BTS                    0x2000 /* Has Branch Trace Store */
 
 #define VPMU_VERSION_MAX                    0x3
+#define VPMU_VERSION_MAX_SUPPORTED          0x5
 
 static inline void vpmu_set(struct vpmu_struct *vpmu, const u32 mask)
 {
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Wed Oct 25 19:30:18 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 19:30:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623204.970910 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvja5-00053h-Uf; Wed, 25 Oct 2023 19:30:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623204.970910; Wed, 25 Oct 2023 19:30: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 1qvja5-00050G-6T; Wed, 25 Oct 2023 19:30:17 +0000
Received: by outflank-mailman (input) for mailman id 623204;
 Wed, 25 Oct 2023 19:30: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=xaZJ=GH=cloud.com=edwin.torok@srs-se1.protection.inumbo.net>)
 id 1qvja0-0000YO-PY
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 19:30:12 +0000
Received: from mail-ej1-x62e.google.com (mail-ej1-x62e.google.com
 [2a00:1450:4864:20::62e])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id ea6845ae-736c-11ee-98d5-6d05b1d4d9a1;
 Wed, 25 Oct 2023 21:30:12 +0200 (CEST)
Received: by mail-ej1-x62e.google.com with SMTP id
 a640c23a62f3a-9b95622c620so24457066b.0
 for <xen-devel@lists.xenproject.org>; Wed, 25 Oct 2023 12:30:12 -0700 (PDT)
Received: from edvint-x-u.eng.citrite.net ([185.25.67.249])
 by smtp.gmail.com with ESMTPSA id
 hv6-20020a17090760c600b00985ed2f1584sm10408710ejc.187.2023.10.25.12.30.11
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 25 Oct 2023 12:30: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: ea6845ae-736c-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1698262211; x=1698867011; 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=0nnj94eBCueSGzdSoAmtrm7fV0B+qdR+A2YxTRCOPiA=;
        b=kCbNBmAjp6mYFPR1sBLeqwdtzZ5mHWEvtQAyrVojFttpVpmxiqW8gir9pSjybZNxAl
         rvQAAOAwuSdbA2f9ZD6+zWRIVaDZMBHn0vQWMLiRwRNYdHWC9hv1dY2JQLdPlXrhpZae
         EZgzw5eUtJP6+/RT7rxg4JUsnyE+KIHi9hOCE=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698262211; x=1698867011;
        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=0nnj94eBCueSGzdSoAmtrm7fV0B+qdR+A2YxTRCOPiA=;
        b=h3Abpx2VuWm6qaR9QWU9nVlw8gdTw6b7hCmSzyxW1Up4wXnxH6ZABzfFROfZGHKeYo
         WM22GEC+ktvtlNJraryqNGAlMdVQeSseViOO1HjryKBhN8wIad75IoHwJ5AG7JEgl9pg
         lM1m97kSlyLnL0vQEGWo8RuFKflIxrqE2LiSvRGcdAqqDuJHOFXX8gVjCXKpw/Fd9Ylt
         oPQ+eEa7W0ApkWrSCLkSYMSrID80vjOzoB/OuoLEHo/0E1ZxXhuPF6J4PbWCLQlkA70T
         n2Mnwn7xokZOMfH0uoQA/bQf9Ru8leeE6H+5DMfvNeEPBJh30JRm6B4Nk+aLMqEey0ve
         0V3w==
X-Gm-Message-State: AOJu0Yy/Eb/jUZvw4khWfmOnAg0BW/6bjvxmK4UnSMNR0aoT1XnhtMUw
	1Q12qbcZRtEkmuAern6qliNM7Z5QTbG4dpy6YQ0xsA==
X-Google-Smtp-Source: AGHT+IEpDexz4pu9AN7h/Al6z/4coqxRpbpAap8jC+a2WblgSDzd8wrU1Mnw0oODEMQUOaDbuG4GsA==
X-Received: by 2002:a17:907:3f85:b0:9be:6ff7:128a with SMTP id hr5-20020a1709073f8500b009be6ff7128amr13011659ejc.67.1698262211740;
        Wed, 25 Oct 2023 12:30:11 -0700 (PDT)
From: =?UTF-8?q?Edwin=20T=C3=B6r=C3=B6k?= <edwin.torok@cloud.com>
To: xen-devel@lists.xenproject.org
Cc: =?UTF-8?q?Edwin=20T=C3=B6r=C3=B6k?= <edvin.torok@citrix.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: [RFC PATCH 17/22] x86/PMUv4: IA32_PERF_GLOBAL_{STATUS_SET, INUSE} support
Date: Wed, 25 Oct 2023 20:29:47 +0100
Message-Id: <586661cb0604d638972e57de039456c85371ed97.1698261255.git.edwin.torok@cloud.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1698261255.git.edwin.torok@cloud.com>
References: <cover.1698261255.git.edwin.torok@cloud.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

From: Edwin Török <edvin.torok@citrix.com>

Expose thse MSRs to the guest when PMU version is >= 4.

Signed-off-by: Edwin Török <edvin.torok@citrix.com>
---
 xen/arch/x86/cpu/vpmu_intel.c  | 20 +++++++++++++++++++-
 xen/arch/x86/hvm/vmx/vmx.c     |  5 +++++
 xen/arch/x86/pv/emul-priv-op.c |  5 +++++
 3 files changed, 29 insertions(+), 1 deletion(-)

diff --git a/xen/arch/x86/cpu/vpmu_intel.c b/xen/arch/x86/cpu/vpmu_intel.c
index 923fe42a0b..5e660af395 100644
--- a/xen/arch/x86/cpu/vpmu_intel.c
+++ b/xen/arch/x86/cpu/vpmu_intel.c
@@ -171,6 +171,8 @@ static int is_core2_vpmu_msr(u32 msr_index, int *type, int *index)
     case MSR_CORE_PERF_GLOBAL_CTRL:
     case MSR_CORE_PERF_GLOBAL_STATUS:
     case MSR_CORE_PERF_GLOBAL_OVF_CTRL:
+    case MSR_CORE_PERF_GLOBAL_STATUS_SET:
+    case MSR_CORE_PERF_GLOBAL_INUSE:
         *type = MSR_TYPE_GLOBAL;
         return 1;
 
@@ -545,10 +547,21 @@ static int cf_check core2_vpmu_do_wrmsr(unsigned int msr, uint64_t msr_content)
         core2_vpmu_cxt->global_status &= ~msr_content;
         wrmsrl(MSR_CORE_PERF_GLOBAL_OVF_CTRL, msr_content);
         return 0;
+    case MSR_CORE_PERF_GLOBAL_STATUS_SET:
+        if ( (v->domain->arch.cpuid->basic.pmu_version < 4) ||
+             (msr_content & global_ovf_ctrl_mask) )
+            return -EINVAL;
+        core2_vpmu_cxt->global_status |= msr_content;
+        wrmsrl(MSR_CORE_PERF_GLOBAL_STATUS_SET, msr_content);
+        return 0;
     case MSR_CORE_PERF_GLOBAL_STATUS:
         gdprintk(XENLOG_INFO, "Can not write readonly MSR: "
                  "MSR_PERF_GLOBAL_STATUS(0x38E)!\n");
         return -EINVAL;
+    case MSR_CORE_PERF_GLOBAL_INUSE:
+        gdprintk(XENLOG_INFO, "Can not write readonly MSR: "
+                 "MSR_PERF_GLOBAL_INUSE(0x392)!\n");
+        return -EINVAL;
     case MSR_IA32_PEBS_ENABLE:
         if ( vpmu_features & (XENPMU_FEATURE_IPC_ONLY |
                               XENPMU_FEATURE_ARCH_ONLY) )
@@ -688,7 +701,8 @@ static int cf_check core2_vpmu_do_rdmsr(unsigned int msr, uint64_t *msr_content)
         core2_vpmu_cxt = vpmu->context;
         switch ( msr )
         {
-        case MSR_CORE_PERF_GLOBAL_OVF_CTRL:
+        case MSR_CORE_PERF_GLOBAL_OVF_CTRL: /* FALLTHROUGH */
+        case MSR_CORE_PERF_GLOBAL_STATUS_SET:
             *msr_content = 0;
             break;
         case MSR_CORE_PERF_GLOBAL_STATUS:
@@ -700,6 +714,10 @@ static int cf_check core2_vpmu_do_rdmsr(unsigned int msr, uint64_t *msr_content)
             else
                 rdmsrl(MSR_CORE_PERF_GLOBAL_CTRL, *msr_content);
             break;
+        case MSR_CORE_PERF_GLOBAL_INUSE:
+            if ( v->domain->arch.cpuid->basic.pmu_version < 4 )
+                return -EINVAL;
+            /* FALLTHROUGH */
         default:
             rdmsrl(msr, *msr_content);
         }
diff --git a/xen/arch/x86/hvm/vmx/vmx.c b/xen/arch/x86/hvm/vmx/vmx.c
index cd772585fe..af70ed8f30 100644
--- a/xen/arch/x86/hvm/vmx/vmx.c
+++ b/xen/arch/x86/hvm/vmx/vmx.c
@@ -3375,6 +3375,8 @@ static int cf_check vmx_msr_read_intercept(
     case MSR_CORE_PERF_FIXED_CTR_CTRL...MSR_CORE_PERF_GLOBAL_OVF_CTRL:
     case MSR_IA32_PEBS_ENABLE:
     case MSR_IA32_DS_AREA:
+    case MSR_CORE_PERF_GLOBAL_STATUS_SET:
+    case MSR_CORE_PERF_GLOBAL_INUSE:
         if ( vpmu_do_rdmsr(msr, msr_content) )
             goto gp_fault;
         break;
@@ -3698,6 +3700,9 @@ static int cf_check vmx_msr_write_intercept(
     case MSR_IA32_PEBS_ENABLE:
     case MSR_IA32_DS_AREA:
          if ( vpmu_do_wrmsr(msr, msr_content) )
+    case MSR_CORE_PERF_GLOBAL_STATUS_SET:
+    case MSR_CORE_PERF_GLOBAL_INUSE:
+         if ( vpmu_do_wrmsr(msr, msr_content) )
             goto gp_fault;
         break;
 
diff --git a/xen/arch/x86/pv/emul-priv-op.c b/xen/arch/x86/pv/emul-priv-op.c
index 09bfde1060..105485bb1e 100644
--- a/xen/arch/x86/pv/emul-priv-op.c
+++ b/xen/arch/x86/pv/emul-priv-op.c
@@ -968,6 +968,9 @@ static int cf_check read_msr(
     case MSR_P6_EVNTSEL(0) ... MSR_P6_EVNTSEL_LAST:
     case MSR_CORE_PERF_FIXED_CTR0 ... MSR_CORE_PERF_FIXED_CTRn:
     case MSR_CORE_PERF_FIXED_CTR_CTRL ... MSR_CORE_PERF_GLOBAL_OVF_CTRL:
+    case MSR_IA32_PEBS_ENABLE:
+    case MSR_CORE_PERF_GLOBAL_STATUS_SET:
+    case MSR_CORE_PERF_GLOBAL_INUSE:
         if ( boot_cpu_data.x86_vendor == X86_VENDOR_INTEL )
         {
             vpmu_msr = true;
@@ -1148,6 +1151,8 @@ static int cf_check write_msr(
     case MSR_P6_EVNTSEL(0) ... MSR_P6_EVNTSEL_LAST:
     case MSR_CORE_PERF_FIXED_CTR0 ... MSR_CORE_PERF_FIXED_CTRn:
     case MSR_CORE_PERF_FIXED_CTR_CTRL ... MSR_CORE_PERF_GLOBAL_OVF_CTRL:
+    case MSR_CORE_PERF_GLOBAL_STATUS_SET:
+    case MSR_CORE_PERF_GLOBAL_INUSE:
         if ( boot_cpu_data.x86_vendor == X86_VENDOR_INTEL )
         {
             vpmu_msr = true;
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Wed Oct 25 19:30:20 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 19:30:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623205.970920 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvja7-0005K1-CE; Wed, 25 Oct 2023 19:30:19 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623205.970920; Wed, 25 Oct 2023 19:30: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 1qvja6-0005Ei-8l; Wed, 25 Oct 2023 19:30:18 +0000
Received: by outflank-mailman (input) for mailman id 623205;
 Wed, 25 Oct 2023 19:30: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=xaZJ=GH=cloud.com=edwin.torok@srs-se1.protection.inumbo.net>)
 id 1qvja1-0001Lv-5R
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 19:30:13 +0000
Received: from mail-ej1-x633.google.com (mail-ej1-x633.google.com
 [2a00:1450:4864:20::633])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id ea0aa2ec-736c-11ee-9b0e-b553b5be7939;
 Wed, 25 Oct 2023 21:30:11 +0200 (CEST)
Received: by mail-ej1-x633.google.com with SMTP id
 a640c23a62f3a-9c75ceea588so19150266b.3
 for <xen-devel@lists.xenproject.org>; Wed, 25 Oct 2023 12:30:11 -0700 (PDT)
Received: from edvint-x-u.eng.citrite.net ([185.25.67.249])
 by smtp.gmail.com with ESMTPSA id
 hv6-20020a17090760c600b00985ed2f1584sm10408710ejc.187.2023.10.25.12.30.10
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 25 Oct 2023 12:30: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: ea0aa2ec-736c-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1698262211; x=1698867011; 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=kNVXTwATT/U7ZeWv6JLd9rx3MTxnLYLpL+s2D1g+Bxc=;
        b=ft9ZC6bJvD2onqxSZOO1t3iW5F57NHY9BEOk1EopiiMIlksqk51HgbrMwUu4AlwQPp
         fp6eEtVttWkbhufCBQFZBGJqpveCx3pEmntf+XgN7611htdw/2KBBwREWX6p3ZnHWaBO
         MRHCLb8KZJt8OwnMtl4tUznTHFLDFCOtJOL2U=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698262211; x=1698867011;
        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=kNVXTwATT/U7ZeWv6JLd9rx3MTxnLYLpL+s2D1g+Bxc=;
        b=Hk9Vr/bjeZi/5v/pvbKwfYjbglskIyY3NHxFE6r+56eLYBl+8aDQPMlEH9djzG2wDl
         Q4L0e8vMQuzWdGE9qBk7aWbrt2jW1K1XOFdOkV2j3vFu7vRlaX/x0oah2UKhgVYQjlB9
         EfGEPRck6UTGz5E/Jld7NO4du6Ivu2o3tNRCrsPFACbr1YXSPkPvXhkD06s1Cr+hn6pM
         95copJ24dbXVjlMzVHkvoqfY9l+QCsh8Ktrwqpjw77HmdhT/gR/rsRijsngSUQ2/QrrK
         Oc0GKqlI85HBunjNZJRdeAlBUKDh011rk4BZUhptjyZKr0pxD0NEVzBGbYJXW7a68iQo
         pDNA==
X-Gm-Message-State: AOJu0YyxSZIgJcjiRxozGx2X06OTg86AJVIxM70u52huR7sBZKyG/RNC
	3vwfYAQpxIpX9zYSbJySGVLLf37SoC24Qaa4svcUAQ==
X-Google-Smtp-Source: AGHT+IHZPaAqI5dIYhGEutHuI0UKgf8zTmT3qls1UH0sZReCZbarM7SWYWihEiRZ2iSymWXGSACL4A==
X-Received: by 2002:a17:906:da88:b0:9be:7de2:927c with SMTP id xh8-20020a170906da8800b009be7de2927cmr11982723ejb.70.1698262210978;
        Wed, 25 Oct 2023 12:30:10 -0700 (PDT)
From: =?UTF-8?q?Edwin=20T=C3=B6r=C3=B6k?= <edwin.torok@cloud.com>
To: xen-devel@lists.xenproject.org
Cc: =?UTF-8?q?Edwin=20T=C3=B6r=C3=B6k?= <edvin.torok@citrix.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: [RFC PATCH 16/22] x86/PMUv4: support LBR_Frz and CTR_Frz
Date: Wed, 25 Oct 2023 20:29:46 +0100
Message-Id: <b0d40a19feee66f509ebabfc84d9166affae8fd4.1698261255.git.edwin.torok@cloud.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1698261255.git.edwin.torok@cloud.com>
References: <cover.1698261255.git.edwin.torok@cloud.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

From: Edwin Török <edvin.torok@citrix.com>

The behaviour is changed from Legacy to Streamlined for the LBR and
PERFMON freeze bits.
See "17.4.7 Freezing LBR and Performance Counters on PMI".

Instead of clearing the freeze bits through DEBUGCTL they are now
cleared through MSR 0x390 like everything else.

Signed-off-by: Edwin Török <edvin.torok@citrix.com>
---
 xen/arch/x86/cpu/vpmu_intel.c | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/xen/arch/x86/cpu/vpmu_intel.c b/xen/arch/x86/cpu/vpmu_intel.c
index 82cd2656ea..923fe42a0b 100644
--- a/xen/arch/x86/cpu/vpmu_intel.c
+++ b/xen/arch/x86/cpu/vpmu_intel.c
@@ -952,6 +952,13 @@ const struct arch_vpmu_ops *__init core2_vpmu_init(void)
          */
         global_ovf_ctrl_mask &= ~(1ULL << 61);
 
+    if ( version >= 4)
+        /* On PMU version 4 bits 58 and 59 are defined in
+         * IA32_PERF_GLOBAL_STATUS_RESET (same MSR as IA32_PERF_GLOBAL_STATUS).
+         * Also allow clearing overflow for processor trace, even if we don't support it yet.
+         * */
+        global_ovf_ctrl_mask &= ~((3ULL << 58) | (1ULL << 55));
+
     regs_sz = (sizeof(struct xen_pmu_intel_ctxt) - regs_off) +
               sizeof(uint64_t) * fixed_pmc_cnt +
               sizeof(struct xen_pmu_cntr_pair) * arch_pmc_cnt;
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Wed Oct 25 19:30:21 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 19:30:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623206.970929 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvja9-0005gm-8T; Wed, 25 Oct 2023 19:30:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623206.970929; Wed, 25 Oct 2023 19:30: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 1qvja8-0005b6-A0; Wed, 25 Oct 2023 19:30:20 +0000
Received: by outflank-mailman (input) for mailman id 623206;
 Wed, 25 Oct 2023 19:30: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=xaZJ=GH=cloud.com=edwin.torok@srs-se1.protection.inumbo.net>)
 id 1qvja2-0000YO-Sq
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 19:30:14 +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 eb8dbfe3-736c-11ee-98d5-6d05b1d4d9a1;
 Wed, 25 Oct 2023 21:30:14 +0200 (CEST)
Received: by mail-ej1-x62d.google.com with SMTP id
 a640c23a62f3a-9ba1eb73c27so19626766b.3
 for <xen-devel@lists.xenproject.org>; Wed, 25 Oct 2023 12:30:14 -0700 (PDT)
Received: from edvint-x-u.eng.citrite.net ([185.25.67.249])
 by smtp.gmail.com with ESMTPSA id
 hv6-20020a17090760c600b00985ed2f1584sm10408710ejc.187.2023.10.25.12.30.12
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 25 Oct 2023 12: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: eb8dbfe3-736c-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1698262213; x=1698867013; 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=6eF/vhiJowLpX1e2n8G2TeyGZWL6SIxALSARC90/5+I=;
        b=f5HULaJUGkAJ8ff/7ptP6Hb0hFDr46RAOoLAGlBi1r/r08oET17uWEv+lJrdEzhNhJ
         nkorl+fjOS/rOFu18BAZHHyYvR+kKVGujiB41RTirqsQo+WJ2lshiSpxorQwWmgTbfGD
         lE9cYLUBUPOPrV8AI3+9uDRrW2pzoTW62Kio4=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698262213; x=1698867013;
        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=6eF/vhiJowLpX1e2n8G2TeyGZWL6SIxALSARC90/5+I=;
        b=lwMngeD3+QCFccXwH5DwG8ywRuv74RVW1rv6rpgCtY2FG78F+9Ty7ppH+DgNHY8Kwa
         +UJNNjoxebSwE4+lI7JwyVgBN2Sxoowg6ZniV+nPNQJkk2owW5X46RoSPdjQlK3PdIuV
         4x47l9GZgfeTWQGdTAj6A6R7BU6X4kp8ZycIa/FMdT5B22VW1ar0Bush9YACC4ogeznC
         mWO69n1y7izKEFrKhoWYgfcXlhRfIvm1flNY2Y3dOItfzTDT1AnwdHVVd0/QZwimBBgV
         sOyTfWxnn1VCFFtcFidFovIzK5LYGQ355bCC+BL475coUEuNqGuWiU34M/Mme538dON3
         OrPg==
X-Gm-Message-State: AOJu0YwrNZVxY7pBcT/4pbOI4LlsvscfJUePqGTWUrvfICuNzi/foF7b
	Yis8+aGkbF6dWz/Zm0xj4ff+1mGJSxRMB98LtzwC1A==
X-Google-Smtp-Source: AGHT+IGXWcyEPQSQpmGRN8slTsWFz9fOVBr75bHc7OV40rvbFBerfXEiIVG5WX44sczPhewAuWaniA==
X-Received: by 2002:a17:907:3d9f:b0:9b2:b152:b0f2 with SMTP id he31-20020a1709073d9f00b009b2b152b0f2mr12217976ejc.10.1698262213534;
        Wed, 25 Oct 2023 12:30:13 -0700 (PDT)
From: =?UTF-8?q?Edwin=20T=C3=B6r=C3=B6k?= <edwin.torok@cloud.com>
To: xen-devel@lists.xenproject.org
Cc: =?UTF-8?q?Edwin=20T=C3=B6r=C3=B6k?= <edvin.torok@citrix.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: [RFC PATCH 19/22] x86/PMUv4: bump max PMU version to 4
Date: Wed, 25 Oct 2023 20:29:49 +0100
Message-Id: <981a906f2f309c5f9e7740f621929f7a58d7daaf.1698261255.git.edwin.torok@cloud.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1698261255.git.edwin.torok@cloud.com>
References: <cover.1698261255.git.edwin.torok@cloud.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

From: Edwin Török <edvin.torok@citrix.com>

Depends on the other x86/PMUv4 patches:
"x86/PMUv4: disable intercept for PERF_GLOBAL_STATUS"
"x86/PMUv4: IA32_PERF_GLOBAL_{STATUS_SET, INUSE} support"
"x86/PMUv4: support LBR_Frz and CTR_Frz"

Signed-off-by: Edwin Török <edvin.torok@citrix.com>
---
 xen/arch/x86/include/asm/vpmu.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/xen/arch/x86/include/asm/vpmu.h b/xen/arch/x86/include/asm/vpmu.h
index 79f7f4a09e..eaededadb5 100644
--- a/xen/arch/x86/include/asm/vpmu.h
+++ b/xen/arch/x86/include/asm/vpmu.h
@@ -74,7 +74,7 @@ struct vpmu_struct {
 #define VPMU_CPU_HAS_DS                     0x1000 /* Has Debug Store */
 #define VPMU_CPU_HAS_BTS                    0x2000 /* Has Branch Trace Store */
 
-#define VPMU_VERSION_MAX                    0x3
+#define VPMU_VERSION_MAX                    0x4
 #define VPMU_VERSION_MAX_SUPPORTED          0x5
 
 static inline void vpmu_set(struct vpmu_struct *vpmu, const u32 mask)
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Wed Oct 25 19:30:23 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 19:30:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623207.970940 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvjaA-0005zA-KE; Wed, 25 Oct 2023 19:30:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623207.970940; Wed, 25 Oct 2023 19:30: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 1qvja9-0005tr-EG; Wed, 25 Oct 2023 19:30:21 +0000
Received: by outflank-mailman (input) for mailman id 623207;
 Wed, 25 Oct 2023 19:30: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=xaZJ=GH=cloud.com=edwin.torok@srs-se1.protection.inumbo.net>)
 id 1qvja4-0000YO-As
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 19:30:16 +0000
Received: from mail-ej1-x62a.google.com (mail-ej1-x62a.google.com
 [2a00:1450:4864:20::62a])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id ec85bd75-736c-11ee-98d5-6d05b1d4d9a1;
 Wed, 25 Oct 2023 21:30:15 +0200 (CEST)
Received: by mail-ej1-x62a.google.com with SMTP id
 a640c23a62f3a-9c603e235d1so20702866b.3
 for <xen-devel@lists.xenproject.org>; Wed, 25 Oct 2023 12:30:15 -0700 (PDT)
Received: from edvint-x-u.eng.citrite.net ([185.25.67.249])
 by smtp.gmail.com with ESMTPSA id
 hv6-20020a17090760c600b00985ed2f1584sm10408710ejc.187.2023.10.25.12.30.14
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 25 Oct 2023 12:30: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: ec85bd75-736c-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1698262215; x=1698867015; 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=zycp1bHlrzodfdOe+CAlIL8xTOpfZ5SI6NbqB9xJUcQ=;
        b=YwTp7VblVMOlCCpT5HzVRYTSz7IHe227p05A+xA4uGz0eoR6gSAzz+2BqV+OgitLue
         qfG6AEWxUy07xosvy4ojjCIOcl8AxPSdlKZBYeLpR2YROGhwuHZMGLaRX+OJkueBApMB
         CRaXIR22BCmA07sE8a2ZFyoUFaqzS82Yi82k4=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698262215; x=1698867015;
        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=zycp1bHlrzodfdOe+CAlIL8xTOpfZ5SI6NbqB9xJUcQ=;
        b=dj/9zSEXJBhw681DKPlxJEL7zpcsRYQgbSsdV/Dqoq0v2q2Loa5kXB3/P9qKbVmD1R
         lrVr/be9bKMjdpBHdfYtsMECyNgJ8uq+AE1VxqPo7nEHlNrX9Cm53Kv6hw3BQQAyNSon
         Iw+7RXpMX/NZRGgQQGiae9O/vYEuGpy5X4aLaZUsJOojsWfzVn6OcoJWi+SuE0FHcxsd
         Bs6vQ0JnUemEQB57mO6Su9HIY0WQfM4G49Q4Vq3mU3SwUkxM0Jj/IIIIEIiV5AVa0tij
         n98x9o6fQ6NdNXMTsh1KXuuUdpWTRV9ei1TfzIeCZzv7vywEpGUisYfPzan0N0qE+i3X
         Aihw==
X-Gm-Message-State: AOJu0Ywr0ZADswg0sAXw5HtgtFcZu1Nuf1sE/W0OVKt1g7H0qlQTA4ud
	3mh6rmVusGpDozuNhqh3L78aGXaeSNonhZ7k/xvwHQ==
X-Google-Smtp-Source: AGHT+IEzN5FXTuOzD8uMuYRrOJ7KU5L8PcbtVzzNvjc7IoBpIn6ESNEPx5NCJxJvJKQYw7XaoPAi8Q==
X-Received: by 2002:a17:906:34d1:b0:9c9:44aa:7dcd with SMTP id h17-20020a17090634d100b009c944aa7dcdmr7770153ejb.33.1698262215191;
        Wed, 25 Oct 2023 12:30:15 -0700 (PDT)
From: =?UTF-8?q?Edwin=20T=C3=B6r=C3=B6k?= <edwin.torok@cloud.com>
To: xen-devel@lists.xenproject.org
Cc: =?UTF-8?q?Edwin=20T=C3=B6r=C3=B6k?= <edvin.torok@citrix.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: [RFC PATCH 21/22] x86/AMD: fix CPUID for PerfCtr{4,5}
Date: Wed, 25 Oct 2023 20:29:51 +0100
Message-Id: <29b4fbb1045bb7cb49facfe2bc3e470fd74234bf.1698261255.git.edwin.torok@cloud.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1698261255.git.edwin.torok@cloud.com>
References: <cover.1698261255.git.edwin.torok@cloud.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

From: Edwin Török <edvin.torok@citrix.com>

These are available, but were hidden by CPUID previously.

There are IR (all guests), NB and L2I (dom0 only) performance counters too
that need to be implemented, add placeholder entries for them.

Signed-off-by: Edwin Török <edvin.torok@citrix.com>
---
 xen/arch/x86/cpu-policy.c                   | 14 +++++++++++---
 xen/arch/x86/hvm/svm/svm.c                  |  1 +
 xen/arch/x86/pv/emul-priv-op.c              |  1 +
 xen/include/public/arch-x86/cpufeatureset.h |  4 ++++
 4 files changed, 17 insertions(+), 3 deletions(-)

diff --git a/xen/arch/x86/cpu-policy.c b/xen/arch/x86/cpu-policy.c
index e38b648f7d..4242a21e1d 100644
--- a/xen/arch/x86/cpu-policy.c
+++ b/xen/arch/x86/cpu-policy.c
@@ -340,9 +340,16 @@ static void recalculate_misc(struct cpu_policy *p)
         p->extd.raw[0x1e] = EMPTY_LEAF; /* TopoExt APIC ID/Core/Node */
         p->extd.raw[0x1f] = EMPTY_LEAF; /* SEV */
         p->extd.raw[0x20] = EMPTY_LEAF; /* Platform QoS */
-        break;
-    }
-}
+
+        /* These are not implemented yet, hide from CPUID.
+         * When they become implemented, make them available when full vpmu is on */
+        p->extd.irperf = 0;
+        p->extd.perfctrextnb = 0;
+        p->extd.perfctrextl2i = 0;
+
+         break;
+     }
+ }
 
 void calculate_raw_cpu_policy(void)
 {
@@ -391,6 +398,7 @@ static void __init calculate_host_policy(void)
     if ( vpmu_mode == XENPMU_MODE_OFF ) {
         p->basic.raw[0xa] = EMPTY_LEAF;
         p->basic.pdcm = 0;
+        p->extd.perfctrextcore = 0;
     }
 
     if ( p->extd.svm )
diff --git a/xen/arch/x86/hvm/svm/svm.c b/xen/arch/x86/hvm/svm/svm.c
index 45f8e1ffd1..ecb6184f51 100644
--- a/xen/arch/x86/hvm/svm/svm.c
+++ b/xen/arch/x86/hvm/svm/svm.c
@@ -1905,6 +1905,7 @@ static int cf_check svm_msr_read_intercept(
     case MSR_AMD_FAM15H_EVNTSEL3:
     case MSR_AMD_FAM15H_EVNTSEL4:
     case MSR_AMD_FAM15H_EVNTSEL5:
+    /* TODO: IRPerfCnt, L2I_* and NB_* support */
         if ( vpmu_do_rdmsr(msr, msr_content) )
             goto gpf;
         break;
diff --git a/xen/arch/x86/pv/emul-priv-op.c b/xen/arch/x86/pv/emul-priv-op.c
index 105485bb1e..8d802b5df0 100644
--- a/xen/arch/x86/pv/emul-priv-op.c
+++ b/xen/arch/x86/pv/emul-priv-op.c
@@ -1156,6 +1156,7 @@ static int cf_check write_msr(
         if ( boot_cpu_data.x86_vendor == X86_VENDOR_INTEL )
         {
             vpmu_msr = true;
+            /* fall-through */
     case MSR_AMD_FAM15H_EVNTSEL0 ... MSR_AMD_FAM15H_PERFCTR5:
     case MSR_K7_EVNTSEL0 ... MSR_K7_PERFCTR3:
             if ( vpmu_msr || (boot_cpu_data.x86_vendor &
diff --git a/xen/include/public/arch-x86/cpufeatureset.h b/xen/include/public/arch-x86/cpufeatureset.h
index 0aa3251397..5faca0bf7a 100644
--- a/xen/include/public/arch-x86/cpufeatureset.h
+++ b/xen/include/public/arch-x86/cpufeatureset.h
@@ -166,7 +166,10 @@ XEN_CPUFEATURE(FMA4,          3*32+16) /*A  4 operands MAC instructions */
 XEN_CPUFEATURE(NODEID_MSR,    3*32+19) /*   NodeId MSR */
 XEN_CPUFEATURE(TBM,           3*32+21) /*A  trailing bit manipulations */
 XEN_CPUFEATURE(TOPOEXT,       3*32+22) /*   topology extensions CPUID leafs */
+XEN_CPUFEATURE(PERFCTREXTCORE, 3*32+23) /*A! Extended core performance event-select registers */
+XEN_CPUFEATURE(PERFCTREXTNB,  3*32+24) /*   Extended Northbridge performance counters */
 XEN_CPUFEATURE(DBEXT,         3*32+26) /*A  data breakpoint extension */
+XEN_CPUFEATURE(PERFCTREXTL2I, 3*32+28) /*   Extended L2 cache performance counters */
 XEN_CPUFEATURE(MONITORX,      3*32+29) /*   MONITOR extension (MONITORX/MWAITX) */
 
 /* Intel-defined CPU features, CPUID level 0x0000000D:1.eax, word 4 */
@@ -238,6 +241,7 @@ XEN_CPUFEATURE(EFRO,          7*32+10) /*   APERF/MPERF Read Only interface */
 
 /* AMD-defined CPU features, CPUID level 0x80000008.ebx, word 8 */
 XEN_CPUFEATURE(CLZERO,        8*32+ 0) /*A  CLZERO instruction */
+XEN_CPUFEATURE(IRPERF,        8*32+ 1) /* Instruction Retired Performance Counter */
 XEN_CPUFEATURE(RSTR_FP_ERR_PTRS, 8*32+ 2) /*A  (F)X{SAVE,RSTOR} always saves/restores FPU Error pointers */
 XEN_CPUFEATURE(WBNOINVD,      8*32+ 9) /*   WBNOINVD instruction */
 XEN_CPUFEATURE(IBPB,          8*32+12) /*A  IBPB support only (no IBRS, used by AMD) */
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Wed Oct 25 19:32:38 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 19:32:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623228.970974 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvjcK-00045F-Ny; Wed, 25 Oct 2023 19:32:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623228.970974; Wed, 25 Oct 2023 19:32: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 1qvjcK-000458-LL; Wed, 25 Oct 2023 19:32:36 +0000
Received: by outflank-mailman (input) for mailman id 623228;
 Wed, 25 Oct 2023 19:32: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=Lpe5=GH=amd.com=Stewart.Hildebrand@srs-se1.protection.inumbo.net>)
 id 1qvjcJ-00044H-6G
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 19:32:35 +0000
Received: from NAM10-BN7-obe.outbound.protection.outlook.com
 (mail-bn7nam10on2062a.outbound.protection.outlook.com
 [2a01:111:f400:7e8a::62a])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 3ee90218-736d-11ee-98d5-6d05b1d4d9a1;
 Wed, 25 Oct 2023 21:32:34 +0200 (CEST)
Received: from MN2PR22CA0017.namprd22.prod.outlook.com (2603:10b6:208:238::22)
 by IA1PR12MB6017.namprd12.prod.outlook.com (2603:10b6:208:3d7::8)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.33; Wed, 25 Oct
 2023 19:32:28 +0000
Received: from BL6PEPF0001AB51.namprd04.prod.outlook.com
 (2603:10b6:208:238:cafe::37) by MN2PR22CA0017.outlook.office365.com
 (2603:10b6:208:238::22) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.33 via Frontend
 Transport; Wed, 25 Oct 2023 19:32:28 +0000
Received: from SATLEXMB03.amd.com (165.204.84.17) by
 BL6PEPF0001AB51.mail.protection.outlook.com (10.167.242.75) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6933.15 via Frontend Transport; Wed, 25 Oct 2023 19:32: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.32; Wed, 25 Oct
 2023 14:32:28 -0500
Received: from [172.30.200.120] (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.32 via Frontend
 Transport; Wed, 25 Oct 2023 14:32: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: 3ee90218-736d-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ISAnZKwR3xHGwsFrWJyMY8yxpGWFuMhmC/ZJ3OkotgXExI6A3JRfljSeSCZ59xePdKgUo0bB8tC2sx6PfiJnkdCiSnPe1SMPOaHd3PAUNMIIIJo9wcX/YvhOdXugI/sj1xIuNTqrESsFUyhi5apFP+fU2AP4ZznA+Ib43nDzItxB5XoTn4gKcqfJZ2w7KgriNXC+0qYHFTSZaS+NES2Gpz/1/60g+QiKbBOqlzf2JBpnFyA+qgT1MlMNlMZ0Pifdd31iLM0Of7jEqo21pO+U4r8JLpCEx7n8Ly2+KJUXXZJ2f1sc4RxjYR6bLZ56WRS3L6gz2EALzlZlNYZqGSd8kQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=bQm9qLEtiIOT8W5ejlBLBEidgM2aFzVM7WxqrAwHOgo=;
 b=bQAZB5NYsE5IU4qN1RnHlrIRKI3XHxMah4RMyDhcDddCpnjqaDFkpXH5YbKBYeHErRUnj3jjU9lVluMPwuA8V3hhD5YzdGuhjQm9iXWU6dEe+lV218lAH40x9LjfRnuQiwGYYvp2WjFISvxD/rpvIu+gquMjNCSboIQKyl7vYm6NHRTidn9fzYlOXOyDzak4ehRP8d/Bkynsyc726zmndrHrpImdT7sPlKDpNpwgCEhn75qmD/DVnu8leMS7rriGZpdyap/larH3Jcy74WHS9tML3c1HoZKNzcpV4LtAVlVASa/feMBzjah89k37HThDv6l6ilYHfhRsCSOgk2/E1Q==
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=bQm9qLEtiIOT8W5ejlBLBEidgM2aFzVM7WxqrAwHOgo=;
 b=WreXo00gHjnJRo3Z2r//+1CZsjQca8U2PKxgjjaeeAaK8LGy49mz+B+WIQor2L8NY/xJhvGz8kJjDotz01+3zyCRsrNB4vlrEnUltPX9cuj4+WM9uNjDZ/jK62vaDHIcVChszyYfRHp3rxY9ZvrxDXttsrlwjHe2pmv79VPigfs=
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: <eb2c06fe-6a33-4484-8632-fcf1b26beebe@amd.com>
Date: Wed, 25 Oct 2023 15:32:26 -0400
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v3 4/5] xen/arm: enable vPCI for dom0
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: <20231009195747.889326-1-stewart.hildebrand@amd.com>
 <20231009195747.889326-5-stewart.hildebrand@amd.com>
 <6b446a2d-ac23-4cb4-ad6a-1a816b497023@xen.org>
From: Stewart Hildebrand <stewart.hildebrand@amd.com>
In-Reply-To: <6b446a2d-ac23-4cb4-ad6a-1a816b497023@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 7bit
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: BL6PEPF0001AB51:EE_|IA1PR12MB6017:EE_
X-MS-Office365-Filtering-Correlation-Id: 4d8271ff-52db-45cd-de18-08dbd5911fdf
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	IFKPd3isR44e8qH5mn77I+I2R7raMt0XBHD6xhQiZJNdicBVWUJgHVFJyS1ivOroOa0rutXFP+6hzRdcjLUBNuoDOMpkvM5xh6+lIU0ddriLG/MwnbFehYBA0oatj4+W/thJZO3EY1FKgmLzcwdkDQTX9EmsRFfmOzAch+E5K7ULLyHS7r3sHDXjc5hKgiiKZ4e+uAGt6LW/BxuOS5BZaPPGh6EWBVPljhRS+0nYJguoQIviOFJyygF6IRYjxaebT1D0EXj9z8QYPnIpY5azQigMRHmwS7SlWeSAbwhHRdF/a1JCsyWmiiQbBHzlZMX2gMXBI2xKNntx1SlxKeA2qQ/lbvls53LlZYv/5Krvtjqwd8mRps8H6nd6GL5nFgqdHkq/hD4X5bsMVJh01V5yGu8S24uPkL4NWlP4Kh6bSWaJefD9iAQalGb123FmPZGg3+56mDMpnZnHBBeJCk9TYfBuMs7eSAtKM69WUCiz2t6UsHCWBG4sQhIeWTcIVCW8RfWRWUtfRbAdafmR2yQ24o+dm/H5Kbmd8rGSVz4JCZ+bOpRXFK7W8XzkRAAmYi52pV38Yty/yZpoQsIFvyZLNno/Q517oqFlluIY5DZ53Is6/DuhM1fXeYQokqBuqtH0RXEyX0FycsqZNq/oIyWrt/E41+gkSl1HOKHxzLM8xJlSGS5zErOkaOfRDQUU+cE0yBbJhLeevVPIHQdJODW5uBTbMr7dOZvks4X3JDCMf7YUlJzvyoTBZMD1ItYETmehSJGjchbIYzliMWwzGFeI05+YXwHXWXclbOBlP8jEH/vToWvg3oCdQ6tgvJFDN5TX
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)(230922051799003)(186009)(82310400011)(64100799003)(451199024)(1800799009)(46966006)(36840700001)(40470700004)(40460700003)(40480700001)(54906003)(8936002)(5660300002)(70206006)(70586007)(110136005)(16576012)(41300700001)(86362001)(478600001)(31696002)(316002)(8676002)(36756003)(4326008)(53546011)(44832011)(81166007)(2906002)(36860700001)(426003)(356005)(2616005)(336012)(26005)(47076005)(83380400001)(82740400003)(31686004)(43740500002)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Oct 2023 19:32:28.4327
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 4d8271ff-52db-45cd-de18-08dbd5911fdf
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:
	BL6PEPF0001AB51.namprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA1PR12MB6017

On 10/20/23 13:33, Julien Grall wrote:
> Hi Stewart,
> 
> On 09/10/2023 20:57, Stewart Hildebrand wrote:
>> Set the pci flags in xen_arch_domainconfig to enable vPCI for dom0.
>>
>> Signed-off-by: Stewart Hildebrand <stewart.hildebrand@amd.com>
>> ---
>> Julien had a suggestion to make this conditional on pci_passthrough_enabled [1].
>> However, in v5 of the PCI ARM SMMU series [2], we propose removing the
>> pci_passthrough_enabled flag. If pci_passthrough_enabled is gone, the conditions
>> under which vPCI should be enabled for dom0 aren't entirely clear to me (other
>> than CONFIG_HAS_VPCI=y).
> 
> I think it should be based on whether Xen detected a PCI hostbridge in
> system. I haven't looked which variable/function could be used in Xen
> for this purpose.

We can slightly tweak pci_host_iterate_bridges_and_count() and use that.
Also, a full revert of the pci_passthrough_enabled flag over in the SMMU series probably wasn't the best approach, so I'll add pci_passthrough_enabled into the mix too.

> 
> Cheers,
> 
> -- 
> Julien Grall


From xen-devel-bounces@lists.xenproject.org Wed Oct 25 19:33:22 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 19:33:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623250.970984 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvjd4-0004nL-2i; Wed, 25 Oct 2023 19:33:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623250.970984; Wed, 25 Oct 2023 19: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 1qvjd3-0004nE-Vn; Wed, 25 Oct 2023 19:33:21 +0000
Received: by outflank-mailman (input) for mailman id 623250;
 Wed, 25 Oct 2023 19:33: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=xaZJ=GH=cloud.com=edwin.torok@srs-se1.protection.inumbo.net>)
 id 1qvja3-0001Lv-Hr
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 19:30:15 +0000
Received: from mail-ej1-x632.google.com (mail-ej1-x632.google.com
 [2a00:1450:4864:20::632])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id eaf13bc0-736c-11ee-9b0e-b553b5be7939;
 Wed, 25 Oct 2023 21:30:13 +0200 (CEST)
Received: by mail-ej1-x632.google.com with SMTP id
 a640c23a62f3a-9bf86b77a2aso22697366b.0
 for <xen-devel@lists.xenproject.org>; Wed, 25 Oct 2023 12:30:13 -0700 (PDT)
Received: from edvint-x-u.eng.citrite.net ([185.25.67.249])
 by smtp.gmail.com with ESMTPSA id
 hv6-20020a17090760c600b00985ed2f1584sm10408710ejc.187.2023.10.25.12.30.11
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 25 Oct 2023 12: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: eaf13bc0-736c-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1698262212; x=1698867012; 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=szWwPrhRVQ5NEr0HTjBSWKJZPscEP7xbO0kPy1jcKl0=;
        b=BbdPFSkwhGMXJ+3yByYkH2XkVD5zbtBKkFaxJEH31hunMVtG6luBCjF3L0ekOYYkWB
         t0a4lF4O9SKrNQYUyCnKgM9LEVoUHj78Bf9mJaG5o1ZTex6bB4DLL8A2bQVTh1yWAgxS
         5RWZB5TFKpPoJjSye5cW85alZNDXiAXHkodBY=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698262212; x=1698867012;
        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=szWwPrhRVQ5NEr0HTjBSWKJZPscEP7xbO0kPy1jcKl0=;
        b=TPKjtmzJ6MzY2YkRblR+l0q8v/EA45SN0kv98MIr7oGgRl5nSJUhxLONqXSTA8TXS8
         fU91VVXOabLJehDzqpo6uuUIihWfQ9jHpofOoA92PX5CsDMeqoGv/nhSk3CUh8IaX+Qo
         13y+Ao2BqsfiUWAhhR8rXmlPgBM526caDxsQVFFDgmJs20/SMoetj8yAp0HxCQojuUK3
         dfPT0acQ0THcPOhaEYmtB4kty+Ozs7p36F89sbSZVdIlrVMuIfCydjNU0QIFzr6lzrAL
         /rd5yw0NuWPG2S0ln/ojZRZ8oqTtw+QDsvYeFeEKatyaOJPY8+QQteZSfDKt882R8UKp
         jZ7Q==
X-Gm-Message-State: AOJu0Yx6HcugS2kYbqnSVHAwxRHS+XASi7w1i7z29syoAZR8kyeAy0/e
	fcvYrYAyAeX9DTLyjMjhA7RO0ZiADLDJBCKA5uw8jQ==
X-Google-Smtp-Source: AGHT+IH1Df6VfyiYXZUnnyFiE2b8zlT9ZC3eG4XHBSndaqVZArI6AToPuwzZbTQJS3WoT53YXNXNeQ==
X-Received: by 2002:a17:907:3d92:b0:9b2:b71f:83be with SMTP id he18-20020a1709073d9200b009b2b71f83bemr10365431ejc.1.1698262212590;
        Wed, 25 Oct 2023 12:30:12 -0700 (PDT)
From: =?UTF-8?q?Edwin=20T=C3=B6r=C3=B6k?= <edwin.torok@cloud.com>
To: xen-devel@lists.xenproject.org
Cc: =?UTF-8?q?Edwin=20T=C3=B6r=C3=B6k?= <edvin.torok@citrix.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: [RFC PATCH 18/22] x86/PMUv4: disable intercept for PERF_GLOBAL_STATUS
Date: Wed, 25 Oct 2023 20:29:48 +0100
Message-Id: <37b346bcfc47ed514822fd6565f63df57a8c7c5f.1698261255.git.edwin.torok@cloud.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1698261255.git.edwin.torok@cloud.com>
References: <cover.1698261255.git.edwin.torok@cloud.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

From: Edwin Török <edvin.torok@citrix.com>

Now that we have a way to set PERF_GLOBAL_STATUS by writing to
PERF_GLOBAL_STATUS_RESET (== PERF_GLOBAL_OVF_CTRL) and
PERF_GLOBAL_STATUS_SET we do not need to intercept this MSR anymore.

We can save/restore its state when saving/loading vPMU state, and
otherwise let the guest read it directly.

This is an optimization, perhaps it'd need a flag to disable it for
debugging purposes.

Signed-off-by: Edwin Török <edvin.torok@citrix.com>
---
 xen/arch/x86/cpu/vpmu_intel.c | 19 ++++++++++++++++++-
 1 file changed, 18 insertions(+), 1 deletion(-)

diff --git a/xen/arch/x86/cpu/vpmu_intel.c b/xen/arch/x86/cpu/vpmu_intel.c
index 5e660af395..59d0b2ca36 100644
--- a/xen/arch/x86/cpu/vpmu_intel.c
+++ b/xen/arch/x86/cpu/vpmu_intel.c
@@ -67,6 +67,7 @@ static bool_t __read_mostly full_width_write;
 
 /* Number of general-purpose and fixed performance counters */
 unsigned int __read_mostly arch_pmc_cnt, fixed_pmc_cnt;
+static unsigned int __read_mostly vpmu_version;
 
 /* Masks used for testing whether and MSR is valid */
 #define ARCH_CTRL_MASK  (~((1ull << 32) - 1) | (1ull << 21) | ARCH_CNTR_PIN_CONTROL)
@@ -228,6 +229,9 @@ static void core2_vpmu_set_msr_bitmap(struct vcpu *v)
 
     vmx_clear_msr_intercept(v, MSR_CORE_PERF_FIXED_CTR_CTRL, VMX_MSR_R);
     vmx_clear_msr_intercept(v, MSR_IA32_DS_AREA, VMX_MSR_R);
+
+    if ( vpmu_version >= 4 )
+        vmx_clear_msr_intercept(v, MSR_CORE_PERF_GLOBAL_STATUS, VMX_MSR_R);
 }
 
 static void core2_vpmu_unset_msr_bitmap(struct vcpu *v)
@@ -250,6 +254,9 @@ static void core2_vpmu_unset_msr_bitmap(struct vcpu *v)
 
     vmx_set_msr_intercept(v, MSR_CORE_PERF_FIXED_CTR_CTRL, VMX_MSR_R);
     vmx_set_msr_intercept(v, MSR_IA32_DS_AREA, VMX_MSR_R);
+
+    if ( vpmu_version >= 4 )
+        vmx_set_msr_intercept(v, MSR_CORE_PERF_GLOBAL_STATUS, VMX_MSR_R);
 }
 
 static inline void __core2_vpmu_save(struct vcpu *v)
@@ -268,7 +275,7 @@ static inline void __core2_vpmu_save(struct vcpu *v)
         rdmsrl(MSR_P6_EVNTSEL(i), xen_pmu_cntr_pair[i].control);
     }
 
-    if ( !is_hvm_vcpu(v) )
+    if ( !is_hvm_vcpu(v) || vpmu_version >= 4 )
         rdmsrl(MSR_CORE_PERF_GLOBAL_STATUS, core2_vpmu_cxt->global_status);
     /* Save MSR to private context to make it fork-friendly */
     else if ( mem_sharing_enabled(v->domain) )
@@ -338,6 +345,15 @@ static inline void __core2_vpmu_load(struct vcpu *v)
     else if ( mem_sharing_is_fork(v->domain) )
         vmx_write_guest_msr(v, MSR_CORE_PERF_GLOBAL_CTRL,
                             core2_vpmu_cxt->global_ctrl);
+
+    if ( vpmu_version >= 4 ) {
+        const uint64_t global_status = core2_vpmu_cxt->global_status;
+        const uint64_t reset = (~global_status) & global_ovf_ctrl_mask ;
+        if ( reset )
+            wrmsrl(MSR_CORE_PERF_GLOBAL_OVF_CTRL, reset);
+        if ( global_status )
+            wrmsrl(MSR_CORE_PERF_GLOBAL_STATUS_SET, global_status);
+    }
 }
 
 static int core2_vpmu_verify(struct vcpu *v)
@@ -917,6 +933,7 @@ const struct arch_vpmu_ops *__init core2_vpmu_init(void)
         printk(XENLOG_INFO "VPMU: PMU version %u is not fully supported. "
                "Emulating version %d\n", version, VPMU_VERSION_MAX);
     }
+    vpmu_version = version;
 
     if ( current_cpu_data.x86 != 6 )
     {
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Wed Oct 25 19:34:19 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 19:34:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623264.970993 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvjdx-000695-Dg; Wed, 25 Oct 2023 19:34:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623264.970993; Wed, 25 Oct 2023 19:34: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 1qvjdx-00068y-B2; Wed, 25 Oct 2023 19:34:17 +0000
Received: by outflank-mailman (input) for mailman id 623264;
 Wed, 25 Oct 2023 19:34: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=xaZJ=GH=cloud.com=edwin.torok@srs-se1.protection.inumbo.net>)
 id 1qvja5-0001Lv-UO
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 19:30:17 +0000
Received: from mail-ej1-x630.google.com (mail-ej1-x630.google.com
 [2a00:1450:4864:20::630])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id ecdd8edd-736c-11ee-9b0e-b553b5be7939;
 Wed, 25 Oct 2023 21:30:16 +0200 (CEST)
Received: by mail-ej1-x630.google.com with SMTP id
 a640c23a62f3a-9becde9ea7bso271631566b.0
 for <xen-devel@lists.xenproject.org>; Wed, 25 Oct 2023 12:30:16 -0700 (PDT)
Received: from edvint-x-u.eng.citrite.net ([185.25.67.249])
 by smtp.gmail.com with ESMTPSA id
 hv6-20020a17090760c600b00985ed2f1584sm10408710ejc.187.2023.10.25.12.30.15
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 25 Oct 2023 12:30: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: ecdd8edd-736c-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1698262216; x=1698867016; 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=J6zd+9X3SvJrgztNDFGOA9xCp41IYKJ6RL7GRTOSekc=;
        b=fWv8EQ7gfmEWz3qLqEtoSEo3D8036NuJJ5QMYew0epgOXETkaAX0VYuXeKnKqrmKHY
         /V6DWplNXFtHSv4jwdjXPcXlGkGjJUa54ur0ceCRCd7ImmmUcuFgW4Fstj69+Gas5yIp
         sqG0Owbon6BviNyy/sWWTN2vPZ95cTLwZzf2U=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698262216; x=1698867016;
        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=J6zd+9X3SvJrgztNDFGOA9xCp41IYKJ6RL7GRTOSekc=;
        b=f23N8POuoy2A7aGwrB0/W6ln4uPrprzHNL2xi4bRLuImjpnRKKvl70c9Cn2dwywp/b
         7AxVfVDaIMMsI/bD+USq5KJvOjTqhgmW8BAcU5OEzozspSWOnQJFucdP5KYthOnfIhY7
         hqSMXuGbu/LTAedSl5xUsrvWOX/PJ1VVNmQLyT43AxGVE3ydTgQDqP96KdJhrq3h6fn4
         VqSrWm8KF3ChW8zwYvfRm2AEYb8IpwHP/jhGMeJQyswICfyJQwbgUsHIrRjPcKa5fK3m
         fjrDDNtKKw71fhvMRaTLXOnnKu4IkF6WGuDshcAh+d77CLe6HpqsBsFEqiPtNh3OP9Di
         l0PQ==
X-Gm-Message-State: AOJu0YymSg+yTOfPts4dA7gHB69tfONOb1Lw5mDSYwN2l1h+W9YFB02n
	y/vXFMBVy9oJnZooTXzMTTy/Gjgyk0PhZDlpMiN0nQ==
X-Google-Smtp-Source: AGHT+IG04jYEJpTiyADhr6u1GGQaT3N85oLVt59loHsRCQW4fkF5dyz5tXCImSbU31L/d8xtpNsBRg==
X-Received: by 2002:a17:907:9492:b0:9ad:8a9e:23ee with SMTP id dm18-20020a170907949200b009ad8a9e23eemr565135ejc.13.1698262215834;
        Wed, 25 Oct 2023 12:30:15 -0700 (PDT)
From: =?UTF-8?q?Edwin=20T=C3=B6r=C3=B6k?= <edwin.torok@cloud.com>
To: xen-devel@lists.xenproject.org
Cc: =?UTF-8?q?Edwin=20T=C3=B6r=C3=B6k?= <edvin.torok@citrix.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: [RFC PATCH 22/22] x86/AMD: add IRPerf support
Date: Wed, 25 Oct 2023 20:29:52 +0100
Message-Id: <6cd765e98fa4888b9e94215f3572a94e95fe2a4b.1698261255.git.edwin.torok@cloud.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1698261255.git.edwin.torok@cloud.com>
References: <cover.1698261255.git.edwin.torok@cloud.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

From: Edwin Török <edvin.torok@citrix.com>

Instruction retired perf counter, enabled by writing to a bit in HWCR.

Signed-off-by: Edwin Török <edvin.torok@citrix.com>
---
 xen/arch/x86/include/asm/msr-index.h        | 1 +
 xen/arch/x86/msr.c                          | 7 +++++++
 xen/include/public/arch-x86/cpufeatureset.h | 2 +-
 3 files changed, 9 insertions(+), 1 deletion(-)

diff --git a/xen/arch/x86/include/asm/msr-index.h b/xen/arch/x86/include/asm/msr-index.h
index 061b07c7ae..1d94fe3a5b 100644
--- a/xen/arch/x86/include/asm/msr-index.h
+++ b/xen/arch/x86/include/asm/msr-index.h
@@ -393,6 +393,7 @@
 
 #define MSR_K8_HWCR			0xc0010015
 #define K8_HWCR_TSC_FREQ_SEL		(1ULL << 24)
+#define K8_HWCR_IRPERF_EN		(1ULL << 30)
 #define K8_HWCR_CPUID_USER_DIS		(1ULL << 35)
 
 #define MSR_K7_FID_VID_CTL		0xc0010041
diff --git a/xen/arch/x86/msr.c b/xen/arch/x86/msr.c
index 483b5e4f70..b3cd851d9d 100644
--- a/xen/arch/x86/msr.c
+++ b/xen/arch/x86/msr.c
@@ -584,6 +584,13 @@ int guest_wrmsr(struct vcpu *v, uint32_t msr, uint64_t val)
         }
         break;
 
+    case MSR_K8_HWCR:
+        if ( !(cp->x86_vendor & X86_VENDOR_AMD) ||
+             (val & ~K8_HWCR_IRPERF_EN) ||
+             wrmsr_safe(msr, val) != 0 )
+            goto gp_fault;
+        break;
+
     case MSR_AMD64_DE_CFG:
         /*
          * OpenBSD 6.7 will panic if writing to DE_CFG triggers a #GP:
diff --git a/xen/include/public/arch-x86/cpufeatureset.h b/xen/include/public/arch-x86/cpufeatureset.h
index 5faca0bf7a..40f74cd5e8 100644
--- a/xen/include/public/arch-x86/cpufeatureset.h
+++ b/xen/include/public/arch-x86/cpufeatureset.h
@@ -241,7 +241,7 @@ XEN_CPUFEATURE(EFRO,          7*32+10) /*   APERF/MPERF Read Only interface */
 
 /* AMD-defined CPU features, CPUID level 0x80000008.ebx, word 8 */
 XEN_CPUFEATURE(CLZERO,        8*32+ 0) /*A  CLZERO instruction */
-XEN_CPUFEATURE(IRPERF,        8*32+ 1) /* Instruction Retired Performance Counter */
+XEN_CPUFEATURE(IRPERF,        8*32+ 1) /*A! Instruction Retired Performance Counter */
 XEN_CPUFEATURE(RSTR_FP_ERR_PTRS, 8*32+ 2) /*A  (F)X{SAVE,RSTOR} always saves/restores FPU Error pointers */
 XEN_CPUFEATURE(WBNOINVD,      8*32+ 9) /*   WBNOINVD instruction */
 XEN_CPUFEATURE(IBPB,          8*32+12) /*A  IBPB support only (no IBRS, used by AMD) */
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Wed Oct 25 19:39:31 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 19:39:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623276.971004 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvjiv-0007ZC-1t; Wed, 25 Oct 2023 19:39:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623276.971004; Wed, 25 Oct 2023 19:39: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 1qvjiu-0007Yc-To; Wed, 25 Oct 2023 19:39:24 +0000
Received: by outflank-mailman (input) for mailman id 623276;
 Wed, 25 Oct 2023 19:39: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=xaZJ=GH=cloud.com=edwin.torok@srs-se1.protection.inumbo.net>)
 id 1qvja4-0001Lv-Kk
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 19:30:16 +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 ec1f6471-736c-11ee-9b0e-b553b5be7939;
 Wed, 25 Oct 2023 21:30:15 +0200 (CEST)
Received: by mail-ej1-x636.google.com with SMTP id
 a640c23a62f3a-99de884ad25so19229566b.3
 for <xen-devel@lists.xenproject.org>; Wed, 25 Oct 2023 12:30:15 -0700 (PDT)
Received: from edvint-x-u.eng.citrite.net ([185.25.67.249])
 by smtp.gmail.com with ESMTPSA id
 hv6-20020a17090760c600b00985ed2f1584sm10408710ejc.187.2023.10.25.12.30.13
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 25 Oct 2023 12:30: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: ec1f6471-736c-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1698262214; x=1698867014; 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=Nd+293SHW4v/x+H7sqG2NMYgcbXBrCZIg35fi93FtdA=;
        b=D5fnzjtpQWFqO+0CA8rszIYI8IYs00KdGENmFC67mNIHQzPA0spSKbRMR8xvslPCb1
         3WlvmsjDBUdU+ikzkmGKHXQPG1l2BvDWLS1YaEwyQysHDs2ePLlXhr9ihMh8vaERXIGq
         u9JMe+hwio76ueyjeR64v/QcjE2tDIh23sO8U=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698262214; x=1698867014;
        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=Nd+293SHW4v/x+H7sqG2NMYgcbXBrCZIg35fi93FtdA=;
        b=TtpEfkx9lCUxK2EL907JDjgg7RN5EOXFOJ0eRlHIRQszysEYxqDu6z7TWEypPqvi7U
         yIMRvGfnKHxg6y3EfTPDOj08NoDnVeUEBufceQJt7IxWRXdzL9loJFuHjWBI+X6Z9cSj
         cRkcyxQTTlduKRiD0Zki2ETIGOjicFBdHtn4j+XArHh4kzol27i4FHLRfWeSaJfMRQbg
         JDOX419n7ltTQpAfkuSIGlLA5T65zFhJhhDAH0RRplV4GIAISgm4a8w+hf3lb6hY3Kik
         zmiH3MTnsFB4aaDIJhRx9R87CWCNBYmaX2WEJHUUSen37sKfOdWgR2U1ojAzBfHHXJFO
         GBhA==
X-Gm-Message-State: AOJu0YwTj03qtGW6+l314O31HSpq5O0Fmmqsedd6nPrTLP5RK6Dga9Tm
	HAoyMPolwPl2ETWRbjYOxtXDiAoDeNEJ9nHYZsRCEg==
X-Google-Smtp-Source: AGHT+IHxj7lbSTjwVtjs1SNZl18dayBq8u7zBAbJVtzmUE5dKOwN0q93kJch17zKul0wjS72MB5pTA==
X-Received: by 2002:a17:907:97d2:b0:9ae:7206:963c with SMTP id js18-20020a17090797d200b009ae7206963cmr15122803ejc.15.1698262214513;
        Wed, 25 Oct 2023 12:30:14 -0700 (PDT)
From: =?UTF-8?q?Edwin=20T=C3=B6r=C3=B6k?= <edwin.torok@cloud.com>
To: xen-devel@lists.xenproject.org
Cc: =?UTF-8?q?Edwin=20T=C3=B6r=C3=B6k?= <edvin.torok@citrix.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: [RFC PATCH 20/22] x86/PMUv5: limit available fixed PMCs and enable support
Date: Wed, 25 Oct 2023 20:29:50 +0100
Message-Id: <bcbf0d561c4d77794c27e58b0248eb4fa75bae4a.1698261255.git.edwin.torok@cloud.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1698261255.git.edwin.torok@cloud.com>
References: <cover.1698261255.git.edwin.torok@cloud.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

From: Edwin Török <edvin.torok@citrix.com>

AnyThread deprecation means a bit in 0xa edx, which we pass through.
(we could also avoid doing the anythread masking, but we need that
 for version <= 4 support).

Fixed Counter enumeration means we need to limit fixed counters if we
hide any.

Domain separation needs no action from the hypervisor AFAICT.

Signed-off-by: Edwin Török <edvin.torok@citrix.com>
---
 xen/arch/x86/cpuid.c            | 3 ++-
 xen/arch/x86/include/asm/vpmu.h | 2 +-
 2 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/xen/arch/x86/cpuid.c b/xen/arch/x86/cpuid.c
index 12e768ae87..8900943bcd 100644
--- a/xen/arch/x86/cpuid.c
+++ b/xen/arch/x86/cpuid.c
@@ -338,7 +338,8 @@ void guest_cpuid(const struct vcpu *v, uint32_t leaf,
             res->a = u.eax;
 
             /* We only implement 3 fixed function counters */
-            if ( (res->d & 0x1f) > fixed_pmc_cnt )
+            res->c &= ~((1 << fixed_pmc_cnt) - 1);
+            if ( (res->d & 0x1f) > fixed_pmc_cnt)
                 res->d = (res->d & ~0x1f) | fixed_pmc_cnt;
         }
         break;
diff --git a/xen/arch/x86/include/asm/vpmu.h b/xen/arch/x86/include/asm/vpmu.h
index eaededadb5..f066b17e45 100644
--- a/xen/arch/x86/include/asm/vpmu.h
+++ b/xen/arch/x86/include/asm/vpmu.h
@@ -74,7 +74,7 @@ struct vpmu_struct {
 #define VPMU_CPU_HAS_DS                     0x1000 /* Has Debug Store */
 #define VPMU_CPU_HAS_BTS                    0x2000 /* Has Branch Trace Store */
 
-#define VPMU_VERSION_MAX                    0x4
+#define VPMU_VERSION_MAX                    0x5
 #define VPMU_VERSION_MAX_SUPPORTED          0x5
 
 static inline void vpmu_set(struct vpmu_struct *vpmu, const u32 mask)
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Wed Oct 25 20:34:10 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 20:34:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623289.971014 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvkZc-00027G-TQ; Wed, 25 Oct 2023 20:33:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623289.971014; Wed, 25 Oct 2023 20:33: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 1qvkZc-000279-PX; Wed, 25 Oct 2023 20:33:52 +0000
Received: by outflank-mailman (input) for mailman id 623289;
 Wed, 25 Oct 2023 20:33: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=iZwN=GH=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qvkZc-00026z-80
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 20:33:52 +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 cccb7085-7375-11ee-9b0e-b553b5be7939;
 Wed, 25 Oct 2023 22:33:48 +0200 (CEST)
Received: by mail-ed1-x535.google.com with SMTP id
 4fb4d7f45d1cf-540105dea92so179393a12.2
 for <xen-devel@lists.xenproject.org>; Wed, 25 Oct 2023 13:33:48 -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
 w12-20020aa7cb4c000000b0053e7809615esm10028874edt.80.2023.10.25.13.33.46
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 25 Oct 2023 13:33: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: cccb7085-7375-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1698266027; x=1698870827; darn=lists.xenproject.org;
        h=content-transfer-encoding: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=qqEwLbJ8TurjDqmUH7zFgZUfJwSWLZFMxrJ4HKi5tck=;
        b=ucXY0U3kKSDHEVWgLnRRw2HEvGoz1EAGelHO2XU5pnXP6tjyfohn2vEkWdBld2wOvK
         r9CgZ7m2L7dX0CLkKjdT4Heob2Dk/b6G4juWcKms7ZJOjOLobzFZgcesylACX0XHjwZ7
         hYipb1r1Z+DbcIUoK4xzao700HkCcxWeg27dY=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698266027; x=1698870827;
        h=content-transfer-encoding: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=qqEwLbJ8TurjDqmUH7zFgZUfJwSWLZFMxrJ4HKi5tck=;
        b=O9x/S42uhr6Nm+mpTbPbbTliFaLIupS8tHToWZxzuwGAV+ZLufwodY/IE9+65UvhXk
         ZzUdBB9HonF2c/dnDtTnKrW9hHPKlSI0EPH3nAP/r7zURmJe2FKx4S/rSUY8EXDyBGi+
         9jS1CSwKo8+CtvkD46hjMuC+mkojCm6oyr4zF0VCF3sI8xd2BQJQtqLCslzCm/cjtFrC
         bDxu/f/KNllmdiNn+Uu/l4EK3BVBao+ceC7gAGZ7dFH1r7mvOK0pnCBxEroGq1swc0X1
         Z5L4ZQoP1dmE4xYdnh3RV/vFlzhmXX6cUTJZ5IasgW+Zd8kPDrcOqAFUIwsb5xWJwyDX
         8IZQ==
X-Gm-Message-State: AOJu0Yy0gw2NqQPUbGxgE49OYq9QalUh36rVzPkiJcNzZa8oIY9pW+LB
	ndEZliP7y6/21Szwe/DdY35yhg==
X-Google-Smtp-Source: AGHT+IEt/R71+n+6E0sw68/YTnvmELLSfvgok73QF1dvC5GT+zjyHsYyk1Qu7c4QiloiRRfTHyEv3w==
X-Received: by 2002:a50:c251:0:b0:540:e588:8243 with SMTP id t17-20020a50c251000000b00540e5888243mr2139848edf.20.1698266027567;
        Wed, 25 Oct 2023 13:33:47 -0700 (PDT)
Message-ID: <596186ca-53cb-4ccf-b719-95a587018c38@citrix.com>
Date: Wed, 25 Oct 2023 21:33:46 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [RFC PATCH 01/22] x86/msr: MSR_PLATFORM_INFO shouldn't claim that
 turbo is programmable
Content-Language: en-GB
To: =?UTF-8?B?RWR3aW4gVMO2csO2aw==?= <edwin.torok@cloud.com>,
 xen-devel@lists.xenproject.org
Cc: =?UTF-8?B?RWR3aW4gVMO2csO2aw==?= <edvin.torok@citrix.com>,
 Jan Beulich <jbeulich@suse.com>, =?UTF-8?Q?Roger_Pau_Monn=C3=A9?=
 <roger.pau@citrix.com>, Wei Liu <wl@xen.org>
References: <cover.1698261255.git.edwin.torok@cloud.com>
 <17a99e1da838a2edeeffa5a988e22c6fcb31406b.1698261255.git.edwin.torok@cloud.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: <17a99e1da838a2edeeffa5a988e22c6fcb31406b.1698261255.git.edwin.torok@cloud.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 25/10/2023 8:29 pm, Edwin Török wrote:
> From: Edwin Török <edvin.torok@citrix.com>
>
> Xen forbids writes to the various turbo control MSRs, however MSR_PLATFORM_INFO claims that these MSRs are writable.
> Override MSR_PLATFORM_INFO bits to indicate lack of support.
>
> See Intel SDM Volume 4, 2.17.6 "MSRs Introduced in the Intel Xeon Scaslable Processor Family",
> which describes that MSR_PLATFORM_INFO.[28] = 1 implies that MSR_TURBO_RATIO_LIMIT is R/W,
> and similarly bit 29 for TDP control, and bit 30 for MSR_TEMPERATURE_TARGET.
>
> These bits were not all present on earlier processors, however where missing the bits were reserved,
> and when present they are always present in the same bits.
>
> (Curiously bit 31 that Xen uses is not documented anywhere in this manual but a separate one).
>
> Backport: 4.0+
>
> Signed-off-by: Edwin Török <edvin.torok@citrix.com>

p->platform_info never has any bit other than cpuid_faulting set in it. 
We still don't even report the proper raw value, because we don't (yet)
have clean MSR derivation logic.

I'm confused as to how you managed to find these set.  Even back in Xen
4.13, PLATFORM_INFO was covered by the msr_policy (later merged into
cpu_policy).  Furthermore, even patch 3 oughtn't to have such an effect.

Sadly, the whole of this MSR is model specific.  Vol4 2.17 is only for
one SKX/CLX/ICX/SPR.  Technically its wrong to treat the cpuid_faulting
in the way we do, but it is enumerated separately, and we intentionally
don't have an Intel check because we need to emulate CPUID faulting on
AMD hardware to make PVShim work.

~Andrew


From xen-devel-bounces@lists.xenproject.org Wed Oct 25 20:51:23 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 20:51:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623293.971023 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvkqQ-0008EV-9e; Wed, 25 Oct 2023 20:51:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623293.971023; Wed, 25 Oct 2023 20:51: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 1qvkqQ-0008EO-74; Wed, 25 Oct 2023 20:51:14 +0000
Received: by outflank-mailman (input) for mailman id 623293;
 Wed, 25 Oct 2023 20:51: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=/NE+=GH=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qvkqP-0008EF-0X
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 20:51: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 375bfe85-7378-11ee-98d5-6d05b1d4d9a1;
 Wed, 25 Oct 2023 22:51:05 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by ams.source.kernel.org (Postfix) with ESMTP id 60404B82D0D;
 Wed, 25 Oct 2023 20:51:05 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 60E8CC433C7;
 Wed, 25 Oct 2023 20:51: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: 375bfe85-7378-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1698267064;
	bh=fZrOiVxVuiplCF21Wj9qcPFNR2lhY8kuMByUoh+j6Rc=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=bZOstzBecxXAirzraHW1s69J/eCtySHKQLkNZedBC94KcKX5sAqGVoxs6dBfNfVHW
	 L0QibU8GdKIGD6vkX137fVJtUfjvU/PdZpVg8KMnVEX/ZKMiGFGiD3hN4GX46Eb5zw
	 00ff0n5RlZWEOdR8qthxXUFMkD5VRqo3jEQHYT9eDLBp/8bcFzwmpdKL8qcSODAd1b
	 1Qliisx0/iOHz+jgZY66iPMwsXY9NoaNUiw9dfR1ehbbO3+WOJEGV8rzja5dLEZImq
	 M4T8HMNhC3JDCnmgMUS+rM0kf34CtFCVnGNDjcJxcJ3Ni6AkqdcAgsyFPngb/cbEJ0
	 7/HigE+tNeuxQ==
Date: Wed, 25 Oct 2023 13:51:01 -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: 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>, Alejandro Vallejo <alejandro.vallejo@cloud.com>, 
    Stefano Stabellini <stefano.stabellini@amd.com>, 
    Xenia Ragiadakou <xenia.ragiadakou@amd.com>
Subject: Re: [PATCH 1/2] x86/ucode: Move vendor specifics back out of
 early_microcode_init()
In-Reply-To: <20231025180630.3230010-2-andrew.cooper3@citrix.com>
Message-ID: <alpine.DEB.2.22.394.2310251350140.271731@ubuntu-linux-20-04-desktop>
References: <20231025180630.3230010-1-andrew.cooper3@citrix.com> <20231025180630.3230010-2-andrew.cooper3@citrix.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="8323329-424817730-1698267064=:271731"

  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-424817730-1698267064=:271731
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8BIT

On Wed, 25 Oct 2023, Andrew Cooper wrote:
> I know it was me who dropped microcode_init_{intel,amd}() in c/s
> dd5f07997f29 ("x86/ucode: Rationalise startup and family/model checks"), but
> times have moved on.  We've gained new conditional support, and a wish to
> compile-time specialise Xen to single platform.
> 
> (Re)introduce ucode_probe_{amd,intel}() and move the recent vendor specific
> additions back out.  Encode the conditional support state in the NULL-ness of
> hooks as it's already done on other paths.
> 
> 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>
> CC: Alejandro Vallejo <alejandro.vallejo@cloud.com>
> CC: Stefano Stabellini <stefano.stabellini@amd.com>
> CC: Xenia Ragiadakou <xenia.ragiadakou@amd.com>
> 
> CC Stefano/Xenia as I know you want to go down this line, but I don't recall
> patches in this area yet.

Yep, anything we can do to specialized the Xen build just to the
components needed (e.g. AMD drivers yes, Intel drivers no) it is an
improvement
--8323329-424817730-1698267064=:271731--


From xen-devel-bounces@lists.xenproject.org Wed Oct 25 20:54:35 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 20:54:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623297.971034 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvktd-0000qJ-O7; Wed, 25 Oct 2023 20:54:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623297.971034; Wed, 25 Oct 2023 20:54: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 1qvktd-0000qC-Kt; Wed, 25 Oct 2023 20:54:33 +0000
Received: by outflank-mailman (input) for mailman id 623297;
 Wed, 25 Oct 2023 20:54: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=/NE+=GH=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qvktc-0000m5-3T
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 20:54:32 +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 b18fc47b-7378-11ee-98d5-6d05b1d4d9a1;
 Wed, 25 Oct 2023 22:54:31 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by ams.source.kernel.org (Postfix) with ESMTP id 7BC1DB82893;
 Wed, 25 Oct 2023 20:54:30 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id CBDCFC433C8;
 Wed, 25 Oct 2023 20:54: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: b18fc47b-7378-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1698267269;
	bh=/sMdk3+Finvap0oP8OeA+Z9aRmdJ+YVcCJrX0i6NpuQ=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=apcmJYRHeWUMJb+moEICsH++mxoV+nmxCFLuBFsEE+UsteBe2mfg1gkA/5JB6vjEA
	 KJqRq5QONQ/rz1p+GH8QNUVMdV+DArtDlQScEKZwVTq0Y9qemrNBoxFMJuPZpulo7h
	 sR9wYCqP4qZkBcX8bfRHOe+XMBOfrt5O/+yLF545xwhYJXAHPUl9OkjkCeEg9ojijM
	 gheJSk8RArmv/JMFEoVm7qXXntBeBBPgzkhRMLu9+FCscnMMAkO9oL3qgTx65C+QSc
	 OaqtNwKcT9k2IPG9xlEulxGjDZ8oWPIrDbPsP1q2299Hh6r5cPaYjxPb/61RGSxmv0
	 TvOyVkVS/mtGg==
Date: Wed, 25 Oct 2023 13:54:27 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Jan Beulich <jbeulich@suse.com>
cc: Michal Orzel <michal.orzel@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>, 
    xen-devel@lists.xenproject.org
Subject: Re: [for-4.19][PATCH] build: Allow setting KBUILD_DEFCONFIG in the
 environment
In-Reply-To: <0807134b-3ad1-900c-64ce-b60475d91d45@suse.com>
Message-ID: <alpine.DEB.2.22.394.2310251353550.271731@ubuntu-linux-20-04-desktop>
References: <20231025082834.31680-1-michal.orzel@amd.com> <9e646df5-a9de-545a-e827-951a161c935f@suse.com> <14ab687e-2d2b-40a4-9f79-3f547bba286c@amd.com> <4cb8a480-a587-22cc-2f11-fd9d6cc8c1d3@suse.com> <5bd44ff0-041d-4fc5-ad6f-c9e1158c474b@amd.com>
 <0807134b-3ad1-900c-64ce-b60475d91d45@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, 25 Oct 2023, Jan Beulich wrote:
> On 25.10.2023 11:35, Michal Orzel wrote:
> > 
> > 
> > On 25/10/2023 11:26, Jan Beulich wrote:
> >>
> >>
> >> On 25.10.2023 11:21, Michal Orzel wrote:
> >>> On 25/10/2023 11:10, Jan Beulich wrote:
> >>>> On 25.10.2023 10:28, Michal Orzel wrote:
> >>>>> At the moment, in order to use a different defconfig target than default,
> >>>>> one needs to specify KBUILD_DEFCONFIG=<target> on the command line.
> >>>>> Switch to weak assignment, so that it can be also obtained from
> >>>>> environment similar to other KCONFIG/KBUILD variables.
> >>>>>
> >>>>> This change will activate the use of KBUILD_DEFCONFIG variable in CI
> >>>>> build jobs that so far had no effect.
> >>>>
> >>>> I'm certainly okay with the change, but the above sentence looks misleading
> >>>> to me: Yes, the envvar was ignored so far, but isn't it the case that the
> >>>> envvar as specified in CI matches what Makefile set it to (taking into
> >>>> account that for RISC-V riscv64_defconfig aliases tiny64_defconfig), and
> >>>> hence the specifications in build.yaml could be dropped (until such time
> >>>> where truly an override was intended)?
> >>> Well, today riscv64_defconfig matches tiny64_defconfig but it can change. Otherwise, why
> >>> would we need to have 2 identical files? Looking at the latest full build series from Oleksi,
> >>> only the tiny64_defconfig file gets updated which would be the clear indication that what is
> >>> specified in the CI matches the author's expectation.
> >>>
> >>> Also, I never mentioned that this change fixes something. I just wrote that it gives a meaning
> >>> to a variable that so far had no effect.
> >>
> >> Well, sure, but if you e.g. said "... that so far would have had no effect
> >> if they didn't match the default anyway", things would have been unambiguous.
> > Ok, I can see you did not provide any tag in which case I will wait for other's feedback.
> > Then, I can either respin the patch adding sentence you suggested or leave it to Stefano
> > to do when committing to his for-4.19 branch.
> 
> The reason I didn't offer A-b (yet) is that with the given description plus
> the claim on Matrix by someone that things don't work because of this
> override not working, it wasn't really clear to me whether that claim was
> wrong, or whether my view of the situation is. In the latter case I could
> hardly ack the patch, as that would then mean I'd ack something I don't
> understand. Provided there really has not been any breakage so far because
> of this, feel free to add
> Acked-by: Jan Beulich <jbeulich@suse.com>
> preferably with the slightly adjusted description.

Added to for-4.19 with the adjusted commit message


From xen-devel-bounces@lists.xenproject.org Wed Oct 25 20:57:12 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 20:57:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623302.971044 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvkw6-0001vV-62; Wed, 25 Oct 2023 20:57:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623302.971044; Wed, 25 Oct 2023 20:57: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 1qvkw6-0001vO-3G; Wed, 25 Oct 2023 20:57:06 +0000
Received: by outflank-mailman (input) for mailman id 623302;
 Wed, 25 Oct 2023 20:57: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=/NE+=GH=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qvkw4-0001uA-U1
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 20:57: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 0b8a92b8-7379-11ee-9b0e-b553b5be7939;
 Wed, 25 Oct 2023 22:57:02 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by dfw.source.kernel.org (Postfix) with ESMTP id 0BC2F62359;
 Wed, 25 Oct 2023 20:57:01 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 68A03C433C9;
 Wed, 25 Oct 2023 20:56: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: 0b8a92b8-7379-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1698267420;
	bh=lhUJfRSR6+tv+A1Myf0He+l1zu+AQD84/V1buK1mlhM=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=ZnsgA4vGWPqBR68knsBp8zmjl3/dVW1bq4aquDyW2wV9eiisuUsKRxz9GCsYy/3Ss
	 A7KXkckT2G0uR8v5p0I+3lgPDM5x0fL+KvGO9v1qLI8+L5kIiGTnwJtRM9HDBFZOUH
	 SCeVtRhQOTdx7wJZQnni6jSLoIAnw9Cyz4lA6wmU1FZKqmhLsnunNr18/Gi1aH6vEY
	 16RYB8TxLplnkiA6ellhyniiUHfuRy8FFILJuL17tbr7Uula4puTOT8lDOckFeAsE2
	 asxtZ+nOQEBGitYmabxowAGSIxNXQ0SMFbEXb7tnPQ1xfZ6OYRRoTV+UC2TuvwlMzC
	 /amg1FzZc7b9w==
Date: Wed, 25 Oct 2023 13:56:58 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Jan Beulich <jbeulich@suse.com>
cc: Luca Fancellu <Luca.Fancellu@arm.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>, 
    Michal Orzel <Michal.Orzel@amd.com>, 
    Xen-devel <xen-devel@lists.xenproject.org>
Subject: Re: Generalise the usage of exclude-list.json
In-Reply-To: <aa78ac18-b127-da92-bb04-6cbdaded3bef@suse.com>
Message-ID: <alpine.DEB.2.22.394.2310251356480.271731@ubuntu-linux-20-04-desktop>
References: <5883E219-2C0C-4809-852B-704C6ED0E736@arm.com> <aa78ac18-b127-da92-bb04-6cbdaded3bef@suse.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="8323329-1474863570-1698267420=:271731"

  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-1474863570-1698267420=:271731
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8BIT

On Wed, 25 Oct 2023, Jan Beulich wrote:
> On 25.10.2023 10:35, Luca Fancellu wrote:
> > I’m sending this mail looking for feedbacks about generalising the exclude-list.json, as suggested (IIRC) by Jan
> > this list can be used by multiple users and not only for MISRA, by adding a field to every entry.
> > 
> > These are the modifications I would like to do to the list, I will implement them if we reach an agreement.
> 
> Looks okay to me, thanks. Just one comment on wording:

Looks okay to me too
--8323329-1474863570-1698267420=:271731--


From xen-devel-bounces@lists.xenproject.org Wed Oct 25 20:59:12 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 20:59:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623307.971053 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvky7-0002qI-Hi; Wed, 25 Oct 2023 20:59:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623307.971053; Wed, 25 Oct 2023 20: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 1qvky7-0002qB-FB; Wed, 25 Oct 2023 20:59:11 +0000
Received: by outflank-mailman (input) for mailman id 623307;
 Wed, 25 Oct 2023 20:59: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=iZwN=GH=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qvky6-0002q3-Sp
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 20:59:10 +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 573f788f-7379-11ee-9b0e-b553b5be7939;
 Wed, 25 Oct 2023 22:59:08 +0200 (CEST)
Received: by mail-ed1-x529.google.com with SMTP id
 4fb4d7f45d1cf-53de8fc1ad8so247219a12.0
 for <xen-devel@lists.xenproject.org>; Wed, 25 Oct 2023 13:59:08 -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
 g1-20020a1709063b0100b0099b8234a9fesm10497590ejf.1.2023.10.25.13.59.07
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 25 Oct 2023 13:59: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: 573f788f-7379-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1698267548; x=1698872348; darn=lists.xenproject.org;
        h=content-transfer-encoding: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=BmA2Nxs2AZstbJrEbC/Zjou/qgAHeQdF6t33hq9pXic=;
        b=fDxsJWwoIho4FssF9Z8yldrwI/gEeXzhts6Kr2LJLBk3EosscptjS4oy7nPXNWvLSS
         U9y8A4KzE14eY6bDng+yW+lUOtGMxDy16MA29rKtgwOKwjlYaJYZTxgcoFP4LVe/5aUi
         G1iobCvRjloivMyYI8QjKAz2fuLBTg7jV8Vm4=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698267548; x=1698872348;
        h=content-transfer-encoding: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=BmA2Nxs2AZstbJrEbC/Zjou/qgAHeQdF6t33hq9pXic=;
        b=YzkoESJAMbSMrfqV9hlSI+eVW3DMjdE8FRGbumwHw0AwOzEskUfyiq8JHFEavUwmh6
         Qu5qMtoPJDqy8w4DnDPi/WJajMIXtVgo5YeyNC8TPyDvK9Z97O9Yrf1UpjO7fst7Advq
         HXoQUOhsyQ0ExSEKKoj5tkZ9LxtoJQ4JlezxgzrKkefGnZZj5SC8uM1hY1R6YQdujZzp
         wkz/HG6VCHaxlPgbVz2yr1kvwoEWV1aw1skaUseFhJC+iuhbnadu++ioXvUQlwCQDoRC
         86RKNEgYH31sZJs1uKs1UdymX7lTE8ZE5dgzqPRsYnDWG4KBa1SRuoZUHXawf0Cr6VsH
         KMOg==
X-Gm-Message-State: AOJu0YzAEafFG10LNdpc0oZPoL+OtNKBygg5Xf3HA6kuJi8Wm5K5gezh
	25iF7fx5DAdI18ZulvrUUXLtrg==
X-Google-Smtp-Source: AGHT+IG1lVuckgbJHPvvHoB90agXW7WFUX/5RzuKJJz9fvzboOzTmIoECbuSwRnXk64d+WKVIelKPg==
X-Received: by 2002:a17:906:db09:b0:994:555a:e49f with SMTP id xj9-20020a170906db0900b00994555ae49fmr13036610ejb.31.1698267548279;
        Wed, 25 Oct 2023 13:59:08 -0700 (PDT)
Message-ID: <20d0e946-f156-4472-a253-7517e831f44d@citrix.com>
Date: Wed, 25 Oct 2023 21:59:07 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [RFC PATCH 22/22] x86/AMD: add IRPerf support
Content-Language: en-GB
To: =?UTF-8?B?RWR3aW4gVMO2csO2aw==?= <edwin.torok@cloud.com>,
 xen-devel@lists.xenproject.org
Cc: =?UTF-8?B?RWR3aW4gVMO2csO2aw==?= <edvin.torok@citrix.com>,
 Jan Beulich <jbeulich@suse.com>, =?UTF-8?Q?Roger_Pau_Monn=C3=A9?=
 <roger.pau@citrix.com>, Wei Liu <wl@xen.org>
References: <cover.1698261255.git.edwin.torok@cloud.com>
 <6cd765e98fa4888b9e94215f3572a94e95fe2a4b.1698261255.git.edwin.torok@cloud.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: <6cd765e98fa4888b9e94215f3572a94e95fe2a4b.1698261255.git.edwin.torok@cloud.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 25/10/2023 8:29 pm, Edwin Török wrote:
> diff --git a/xen/arch/x86/msr.c b/xen/arch/x86/msr.c
> index 483b5e4f70..b3cd851d9d 100644
> --- a/xen/arch/x86/msr.c
> +++ b/xen/arch/x86/msr.c
> @@ -584,6 +584,13 @@ int guest_wrmsr(struct vcpu *v, uint32_t msr, uint64_t val)
>          }
>          break;
>  
> +    case MSR_K8_HWCR:
> +        if ( !(cp->x86_vendor & X86_VENDOR_AMD) ||
> +             (val & ~K8_HWCR_IRPERF_EN) ||
> +             wrmsr_safe(msr, val) != 0 )
> +            goto gp_fault;
> +        break;
> +
>      case MSR_AMD64_DE_CFG:
>          /*
>           * OpenBSD 6.7 will panic if writing to DE_CFG triggers a #GP:
> diff --git a/xen/include/public/arch-x86/cpufeatureset.h b/xen/include/public/arch-x86/cpufeatureset.h
> index 5faca0bf7a..40f74cd5e8 100644
> --- a/xen/include/public/arch-x86/cpufeatureset.h
> +++ b/xen/include/public/arch-x86/cpufeatureset.h
> @@ -241,7 +241,7 @@ XEN_CPUFEATURE(EFRO,          7*32+10) /*   APERF/MPERF Read Only interface */
>  
>  /* AMD-defined CPU features, CPUID level 0x80000008.ebx, word 8 */
>  XEN_CPUFEATURE(CLZERO,        8*32+ 0) /*A  CLZERO instruction */
> -XEN_CPUFEATURE(IRPERF,        8*32+ 1) /* Instruction Retired Performance Counter */
> +XEN_CPUFEATURE(IRPERF,        8*32+ 1) /*A! Instruction Retired Performance Counter */
>  XEN_CPUFEATURE(RSTR_FP_ERR_PTRS, 8*32+ 2) /*A  (F)X{SAVE,RSTOR} always saves/restores FPU Error pointers */
>  XEN_CPUFEATURE(WBNOINVD,      8*32+ 9) /*   WBNOINVD instruction */
>  XEN_CPUFEATURE(IBPB,          8*32+12) /*A  IBPB support only (no IBRS, used by AMD) */

Last things first.  You can advertise this bit to guests, but I'm
looking at the AMD manuals and woefully little information on what this
is an how it works.

It does have an architectural enumeration, but there isn't even a a
description of what HWCR.IPERF_EN does.

The HWCR documentation says "enables Core::X86::Msr::IRPerfCount", but
the IRPERF MSR says no such think, noting only that EFRO_LOCK makes the
MSR non-writeable (which in turn means we can't always offer it to
guests anyway.  See below).

At a guess, the HWCR bit activates the counter, but nothing states
this.  At a guess, it's a free-running, reset-able counter, but again
nothing states this.  The manual just says "is a dedicated counter" and
doesn't even state whether it is (or is not) tied into the other core
fixed counters and whether it is integrated with PMI or not.

Which brings us on to the middle hunk.  Putting it there short circuits
the PV-specific handling, but you can't do that in general without
arranging for HWCR to be context switched properly for vCPUs, nor in
this case IPERF_COUNT itself.

Unless you context switch HWCR and IPERF_COUNT, a guest will see it not
counting, or the count going backwards, 50% of the time as the vCPU is
scheduled around.

So while in principle we could let guests use this facility (it would
have to be off by default, because there doesn't appear to be any
filtering capability in it at all, so we can't restrict it to
instructions retired in guest context), it will need a far larger patch
than this to do it safely.

~Andrew


From xen-devel-bounces@lists.xenproject.org Wed Oct 25 21:02:06 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 21:02:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623312.971064 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvl0t-0004YZ-06; Wed, 25 Oct 2023 21:02:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623312.971064; Wed, 25 Oct 2023 21: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 1qvl0s-0004YS-SX; Wed, 25 Oct 2023 21:02:02 +0000
Received: by outflank-mailman (input) for mailman id 623312;
 Wed, 25 Oct 2023 21: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=/NE+=GH=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qvl0r-0004YM-Hl
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 21:02:01 +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 bd9a33d3-7379-11ee-98d5-6d05b1d4d9a1;
 Wed, 25 Oct 2023 23:02:00 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by ams.source.kernel.org (Postfix) with ESMTP id EB8CFB8329C;
 Wed, 25 Oct 2023 21:01:59 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 3A583C433C7;
 Wed, 25 Oct 2023 21:01: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: bd9a33d3-7379-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1698267719;
	bh=SxJfVyjrVi1TgJ5tSdOfiDPOpKYWXJtzrApT4ppXCGY=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=h8dr1WotxQCPanzwkEj6am45wtt/jPb6vhlvi+ZebqaCQIQTqmT1cua+K7nRNPqVL
	 DLMIVtpv92VZ0AZHb8PE1Tws5XaBoR5MP0nN47VorFq6EfwbSJZtkwZSCW4EFPxi95
	 bTjNzKAPSqob3mUMFfQRUsyFe7hlXN1zLPjc7CEQVSvS+zTYR7doivGIdcQwrA4YQz
	 ymOyf5a7+FxmUaJPkG3rsP2jJEGYkoJP27CrrWBCuFawPgSuHNPrP63Xd0hxbkMwJ9
	 WHejMJ1c42BOgp+Q7ISWkhTgR3pEGOBLwREHlNS6qbDUjI0uUc7pZrFSvmmzvyIQqn
	 zSmAGbiyPrmog==
Date: Wed, 25 Oct 2023 14:01:56 -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>, 
    Bertrand Marquis <Bertrand.Marquis@arm.com>, 
    Xen-devel <xen-devel@lists.xenproject.org>, 
    Henry Wang <Henry.Wang@arm.com>, 
    "michal.orzel@amd.com" <michal.orzel@amd.com>, 
    Julien Grall <jgrall@amazon.com>, 
    Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: Re: [PATCH for-4.19 v2] docs/arm: Document where Xen should be loaded
 in memory
In-Reply-To: <08284b00-7b37-4f4b-b4c6-f465dae75b86@xen.org>
Message-ID: <alpine.DEB.2.22.394.2310251401350.271731@ubuntu-linux-20-04-desktop>
References: <20231024102858.29067-1-julien@xen.org> <F5195B0D-C337-4221-9395-56F625497671@arm.com> <alpine.DEB.2.22.394.2310241252140.271731@ubuntu-linux-20-04-desktop> <08284b00-7b37-4f4b-b4c6-f465dae75b86@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, 25 Oct 2023, Julien Grall wrote:
> Hi Stefano,
> 
> On 24/10/2023 20:52, Stefano Stabellini wrote:
> > On Tue, 24 Oct 2023, Bertrand Marquis wrote:
> > > Hi Julien,
> > > 
> > > > On 24 Oct 2023, at 12:28, Julien Grall <julien@xen.org> wrote:
> > > > 
> > > > From: Julien Grall <jgrall@amazon.com>
> > > > 
> > > > In commit 9d267c049d92 ("xen/arm64: Rework the memory layout"),
> > > > we decided to require Xen to be loaded below 2 TiB to simplify
> > > > the logic to enable the MMU. The limit was decided based on
> > > > how known platform boot plus some slack.
> > > > 
> > > > We had a recent report that this is not sufficient on the AVA
> > > > platform with a old firmware [1]. But the restriction is not
> > > > going to change in Xen 4.18. So document the limit clearly
> > > > in docs/misc/arm/booting.txt.
> > > > 
> > > > [1] https://lore.kernel.org/20231013122658.1270506-3-leo.yan@linaro.org
> > > > 
> > > > Signed-off-by: Julien Grall <jgrall@amazon.com>
> > > > Reviewed-by: Michal Orzel <michal.orzel@amd.com>
> > > 
> > > Reviewed-by: Bertrand Marquis <bertrand.marquis@arm.com>
> > 
> > Added for for-4.19
> 
> It was actually meant for 4.18 as we didn't want to include the patch to
> increase the reserved area for the identity mapping [1]. But I failed to use
> the proper tag.
> 
> Henry provided a release-ack and the patch is now committed.

Thanks for letting me know. I took the commit out of for-4.19 and
rebased it.


From xen-devel-bounces@lists.xenproject.org Wed Oct 25 21:12:38 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 21:12:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623318.971074 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvlB0-0007VA-Sb; Wed, 25 Oct 2023 21:12:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623318.971074; Wed, 25 Oct 2023 21: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 1qvlB0-0007V3-PO; Wed, 25 Oct 2023 21:12:30 +0000
Received: by outflank-mailman (input) for mailman id 623318;
 Wed, 25 Oct 2023 21:12: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=/NE+=GH=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qvlAz-0007Ux-Gn
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 21:12:29 +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 327ed7d1-737b-11ee-9b0e-b553b5be7939;
 Wed, 25 Oct 2023 23:12:26 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by dfw.source.kernel.org (Postfix) with ESMTP id 7D84E63175;
 Wed, 25 Oct 2023 21:12:25 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 74883C433C7;
 Wed, 25 Oct 2023 21:12:23 +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: 327ed7d1-737b-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1698268345;
	bh=n2OfcSoTropCqj3leuEOQlb1rpQJCAsO6RcUYwIZyMw=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=AexPsLRd3b99QKj3ZymM1hK8dgxYuAAtQahYMRIarlsyIu/PCJEwmhQtzZl0vuLDO
	 EBLS8xCbRGrMjQcS3nQYyx4PL+vqfymk+4wf6KTsGk4mNd1hrXAky43dBWFccuSrSl
	 Asc6WUK8IajoKkhVLPpElu0fkwt10KfzVvuHxsW8e8Jqsn/0oyCjrupvgEcfgc/mRm
	 I6+/Ubuc44XMOOUbSyeyKvXrj3zkx+v2MdQWEeAz0GgaOCPdhzV0bagMESyqDfiNUy
	 Rx7RXdcxyaDgtscSkFUvaPpsNWuUx5oVbQKcKOE0yA00/EzwoBZXZWkgm36uX9oppv
	 VthaWpuk/Eeaw==
Date: Wed, 25 Oct 2023 14:12:22 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Julien Grall <julien@xen.org>
cc: Jan Beulich <jbeulich@suse.com>, 
    Stefano Stabellini <sstabellini@kernel.org>, 
    Stefano Stabellini <stefano.stabellini@amd.com>, 
    Simone Ballarin <simone.ballarin@bugseng.com>, consulting@bugseng.com, 
    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>, 
    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: <1fc2c191-79b7-43fc-9068-5605e741c243@xen.org>
Message-ID: <alpine.DEB.2.22.394.2310251408030.271731@ubuntu-linux-20-04-desktop>
References: <cover.1694510856.git.simone.ballarin@bugseng.com> <alpine.DEB.2.22.394.2310171709310.965337@ubuntu-linux-20-04-desktop> <ead797ed-84cc-fb70-5259-7e11211d049e@suse.com> <alpine.DEB.2.22.394.2310181739270.965337@ubuntu-linux-20-04-desktop>
 <e642bc2a-cefa-4ee4-6394-3c10102e8164@suse.com> <alpine.DEB.2.22.394.2310190915590.1945130@ubuntu-linux-20-04-desktop> <6374f0f4-d58f-83ca-6eb3-d5a9fcbac525@suse.com> <alpine.DEB.2.22.394.2310201622160.2356865@ubuntu-linux-20-04-desktop>
 <36e6dd08-918c-9791-0dab-ca75d4b98d7e@suse.com> <alpine.DEB.2.22.394.2310231346370.3516@ubuntu-linux-20-04-desktop> <af4a86bc-40d3-4363-adc8-30981652cd2b@xen.org> <c1fa350f-6f49-e2b1-0cda-dec99df415ae@suse.com> <alpine.DEB.2.22.394.2310241254480.271731@ubuntu-linux-20-04-desktop>
 <f546b8dc-baa8-c178-12be-70f7c1a8fec8@suse.com> <50b3a500-aa7d-4d3d-8bcf-220f8ee69b0e@xen.org> <f6b207c6-4bc2-e172-428c-a2e3294cc490@suse.com> <1fc2c191-79b7-43fc-9068-5605e741c243@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, 25 Oct 2023, Julien Grall wrote:
> On 25/10/2023 17:01, Jan Beulich wrote:
> > On 25.10.2023 17:58, Julien Grall wrote:
> > > On 25/10/2023 09:18, Jan Beulich wrote:
> > > > On 24.10.2023 21:59, Stefano Stabellini wrote:
> > > > > If I understood correctly I am fine with that. To make sure we are all
> > > > > on the same page, can you provide a couple of samples?
> > > > 
> > > > Taking the earlier example, instead of DRIVERS_PASSTHROUGH_VTD_DMAR_H it
> > > > would then be VTD_DMAR_H. arch/x86/pv/mm.h would use PV_MM_H, but then
> > > > you can already see that a hypothetical arch/x86/mm.h would use
> > > > X86_MM_H,
> > > > thus colliding with what your proposal would also yield for
> > > > arch/x86/include/asm/mm.h. So maybe private header guards should come
> > > > with e.g. a trailing underscore? Or double underscores as component
> > > > separators, where .../include/... use only single underscores? Or
> > > > headers in arch/*/include/asm/ use ASM_<name>_H (i.e. not making the
> > > > architecture explicit in the guard name, on the grounds that headers
> > > > from multiple architectures shouldn't be included at the same time)?
> > > Thanks for providing some details.  The proposal for private headers
> > > make sense. For arch/.../include/asm/ headers, I would strongly prefer
> > > if we use prefix them with ASM_*.
> > > 
> > > As a side note, I am guessing for asm-generic, we would want to use
> > > ASM_GENERIC_* for the guard prefix. Is that correct?
> > 
> > That was an assumption I was working from, yes. Could also be just
> > GENERIC_ afaic.
> 
> Thanks for the confirmation. I am fine with either GENERIC_ or ASM_GENERIC_.

OK. So in summary:
- arch/.../include/asm/ headers would use ASM_<filename>_H
- private headers would use <dir>_<filename>_H
- asm-generic headers would use ASM_GENERIC_<filename>_H

If that's agreed, we can move forward with the patch following this
scheme.


From xen-devel-bounces@lists.xenproject.org Wed Oct 25 21:24:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 21:24:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623326.971109 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvlMw-0003CN-RX; Wed, 25 Oct 2023 21:24:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623326.971109; Wed, 25 Oct 2023 21:24: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 1qvlMw-0003Aa-Lz; Wed, 25 Oct 2023 21:24:50 +0000
Received: by outflank-mailman (input) for mailman id 623326;
 Wed, 25 Oct 2023 21:24: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=sdGm=GH=amd.com=vikram.garhwal@srs-se1.protection.inumbo.net>)
 id 1qvlMv-0002mN-G3
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 21:24:49 +0000
Received: from NAM11-DM6-obe.outbound.protection.outlook.com
 (mail-dm6nam11on2061b.outbound.protection.outlook.com
 [2a01:111:f400:7eaa::61b])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id eb7d77fe-737c-11ee-9b0e-b553b5be7939;
 Wed, 25 Oct 2023 23:24:47 +0200 (CEST)
Received: from DS7PR03CA0293.namprd03.prod.outlook.com (2603:10b6:5:3ad::28)
 by PH7PR12MB8015.namprd12.prod.outlook.com (2603:10b6:510:26a::7) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.33; Wed, 25 Oct
 2023 21:24:43 +0000
Received: from DS3PEPF000099DF.namprd04.prod.outlook.com
 (2603:10b6:5:3ad:cafe::50) by DS7PR03CA0293.outlook.office365.com
 (2603:10b6:5:3ad::28) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.35 via Frontend
 Transport; Wed, 25 Oct 2023 21:24:43 +0000
Received: from SATLEXMB04.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.6933.15 via Frontend Transport; Wed, 25 Oct 2023 21:24:43 +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.32; Wed, 25 Oct
 2023 16:24: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.32 via Frontend
 Transport; Wed, 25 Oct 2023 16:24: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: eb7d77fe-737c-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=HUzVRk8IJpwny3AyZpJiV+E7xu124CDPe2cFG54n9/stCYaP+u5UdG1JBC7hKDjKIj/8LYQaZu3ungmZ5kX3V6XYtCK6x3IsViZwiAk8N9eFOA6wPoC1UzFD4Kr5UIX5wdBo6Ku8AQn7XB8dtTXYnwK4XG2YyE1JYme/8s/Zzuena5mHVqh/tNxRVPiArenrrD2649ErILgcUbPEwrQ1M9U05XOp9rU8/e22VJDS5yNoIf0gFCoGFNmQQEOybv4CuBtBOvLPw6QUHaio0umcAGD7mX/ZzidxmFisr9hscrKTK3A55xNz1Q8UMYUx45/dBrWDm35ZZGS9GuxRM33kjw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=mET7kcl9UXXPRp5J6MoXxeoteODqvxROwm3Ecdt2YHM=;
 b=L54Gsgu9lvYQuOOiRH3Lnd4vuIckJkm63+8Wh8ADL0G84BGqZ+iPu5V9ymyC/QOWjiTpjoEdKG4FacfqYa37ox8EvzDLsVXGCXXtnQZdX9DaDQNKC9ct3o8IZ9k9jphKQBzx8HKzii9rXx9I5G++5gQDDfwKvOADQ3G9ICCIrqmppfP72j1GxAbbmMcuQd+sGhcFxVbQZ11nL86fZ3MNWK+4mh+RGX/Ts5w3ItBCmYycEdhMflVHNxGtVeRViz9u9bFg0xGaQJx4UfhUWfvGw8tLzzvjI8QYMg08FJmog347VQMdnlz2xwmghwGd7ZbXtQSLv1Y4w2S7MeRCq93IKw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=nongnu.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=mET7kcl9UXXPRp5J6MoXxeoteODqvxROwm3Ecdt2YHM=;
 b=LPKxhpH3He1LUk5nz5kJkkKDwXxyR2IkcDmHfhH8BeSDxjm47uqwbstdvzEgXSBVtPc5s06MPVfjKIqVuh7EAE90RJw7m6J2Hd1jNwxbbuGtmP7Z/NefpGegWCtOUH+DImPF7zY5FvlL7B7tSHAbuiaBLjmyu0WuU0YEuETLfow=
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: <qemu-devel@nongnu.org>
CC: <sstabellini@kernel.org>, <vikram.garhwal@amd.com>, <jgross@suse.com>,
	Anthony Perard <anthony.perard@citrix.com>, Paul Durrant <paul@xen.org>,
	"open list:X86 Xen CPUs" <xen-devel@lists.xenproject.org>
Subject: [QEMU][PATCHv2 5/8] xen: let xen_ram_addr_from_mapcache() return -1 in case of not found entry
Date: Wed, 25 Oct 2023 14:24:18 -0700
Message-ID: <20231025212422.30371-6-vikram.garhwal@amd.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20231025212422.30371-1-vikram.garhwal@amd.com>
References: <20231025212422.30371-1-vikram.garhwal@amd.com>
MIME-Version: 1.0
Content-Type: text/plain
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DS3PEPF000099DF:EE_|PH7PR12MB8015:EE_
X-MS-Office365-Filtering-Correlation-Id: eb251ac1-76e0-4082-da4f-08dbd5a0ce6c
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	sBM53jdzwRhG04qo8BJM7dlxyvUqIZpGeYp5zQq+HPm6t1UAJYh4X3NDFrh9tShD87nZ+KfOqgwTe6NCP7uKeMcCehVd/XrhYgv93sdHeQpfX6OsnjuJOtnVsyACsgZhOY8d9Z6qCYd4xKDjOXY42rarB4mXn+S6MLAkfERZBpFcSDxbKOv/voegP80vadrU7VNlKsduMzF1Pe10ynMUXrEePbIiAsM9a1SuJxcy41Oiybz+Sl+fS9orHYT8/SmSm6YwhdwFspctKK9mHeqaySzW1DJSedpL0ENAOQ83jtp9j4cPtAFaaZvIwDK9VKXU50EQwjeMfZYykLB3MhNitlnB9nKfHOmzk8X5/ntvS/5OIBEfvRTy8gt1MkbGPosbTWgw3pRlKXoOd9MeF6IqcCt2jO+sS8kAOKpu2XFsSUvlqb34KOTl0Uy+QqsJLUG/zEAmG8aMNu332FEik0VhiRjoNVkY/pWGI1ilOt/ZhVOpMSn1UznpecgQ69HUWDDpvr3mxlpzJrp1vNi4TcEuYfNS4BUe6uQn/rVs3h6kIpZCYieFxmwdN+As8eKAKoPrmjAZ/jBEc+irkh9LjzoNMgqDg4pLgc79tevsA9osOiFiQvVxc0PrQR/rBxdVDXAr0TqUP1LEiLlJDkdDhpscRRE6ci5r5DxqRDJF3h7/LFjklGlUDRNz4xoRnSzpNgw1gZ51mY6qIvSue7KgFbzuBD4FjEDo9/9ptxK1OvfjNDX0n3Hf7yzK/u6A2zzlJUtEp6Q4aX2qijOv3y40LQOdFw==
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)(346002)(39860400002)(396003)(230922051799003)(82310400011)(186009)(64100799003)(1800799009)(451199024)(46966006)(36840700001)(40470700004)(26005)(41300700001)(2906002)(44832011)(40460700003)(36756003)(5660300002)(4326008)(86362001)(8676002)(8936002)(478600001)(2616005)(6916009)(1076003)(36860700001)(356005)(82740400003)(316002)(70206006)(70586007)(54906003)(6666004)(83380400001)(40480700001)(336012)(47076005)(81166007)(426003)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Oct 2023 21:24:43.5749
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: eb251ac1-76e0-4082-da4f-08dbd5a0ce6c
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:
	DS3PEPF000099DF.namprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7PR12MB8015

From: Juergen Gross <jgross@suse.com>

Today xen_ram_addr_from_mapcache() will either abort() or return 0 in
case it can't find a matching entry for a pointer value. Both cases
are bad, so change that to return an invalid address instead.

Signed-off-by: Juergen Gross <jgross@suse.com>
Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
---
 hw/xen/xen-mapcache.c | 12 +++---------
 1 file changed, 3 insertions(+), 9 deletions(-)

diff --git a/hw/xen/xen-mapcache.c b/hw/xen/xen-mapcache.c
index 8115c44c00..8a61c7dde6 100644
--- a/hw/xen/xen-mapcache.c
+++ b/hw/xen/xen-mapcache.c
@@ -404,13 +404,8 @@ ram_addr_t xen_ram_addr_from_mapcache(void *ptr)
         }
     }
     if (!found) {
-        fprintf(stderr, "%s, could not find %p\n", __func__, ptr);
-        QTAILQ_FOREACH(reventry, &mapcache->locked_entries, next) {
-            DPRINTF("   "HWADDR_FMT_plx" -> %p is present\n", reventry->paddr_index,
-                    reventry->vaddr_req);
-        }
-        abort();
-        return 0;
+        mapcache_unlock();
+        return RAM_ADDR_INVALID;
     }
 
     entry = &mapcache->entry[paddr_index % mapcache->nr_buckets];
@@ -418,8 +413,7 @@ ram_addr_t xen_ram_addr_from_mapcache(void *ptr)
         entry = entry->next;
     }
     if (!entry) {
-        DPRINTF("Trying to find address %p that is not in the mapcache!\n", ptr);
-        raddr = 0;
+        raddr = RAM_ADDR_INVALID;
     } else {
         raddr = (reventry->paddr_index << MCACHE_BUCKET_SHIFT) +
              ((unsigned long) ptr - (unsigned long) entry->vaddr_base);
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Wed Oct 25 21:24:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 21:24:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623325.971104 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvlMw-00038u-HP; Wed, 25 Oct 2023 21:24:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623325.971104; Wed, 25 Oct 2023 21:24: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 1qvlMw-00038j-Cs; Wed, 25 Oct 2023 21:24:50 +0000
Received: by outflank-mailman (input) for mailman id 623325;
 Wed, 25 Oct 2023 21:24: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=sdGm=GH=amd.com=vikram.garhwal@srs-se1.protection.inumbo.net>)
 id 1qvlMu-0002mN-RZ
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 21:24:48 +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 eb301d20-737c-11ee-9b0e-b553b5be7939;
 Wed, 25 Oct 2023 23:24:46 +0200 (CEST)
Received: from SN6PR04CA0086.namprd04.prod.outlook.com (2603:10b6:805:f2::27)
 by IA0PR12MB7749.namprd12.prod.outlook.com (2603:10b6:208:432::22)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.26; Wed, 25 Oct
 2023 21:24:42 +0000
Received: from SN1PEPF0002BA50.namprd03.prod.outlook.com
 (2603:10b6:805:f2:cafe::2c) by SN6PR04CA0086.outlook.office365.com
 (2603:10b6:805:f2::27) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.33 via Frontend
 Transport; Wed, 25 Oct 2023 21:24:42 +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.6933.15 via Frontend Transport; Wed, 25 Oct 2023 21:24: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.32; Wed, 25 Oct
 2023 16:24: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.32; Wed, 25 Oct
 2023 16:24: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.32 via Frontend
 Transport; Wed, 25 Oct 2023 16:24: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: eb301d20-737c-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=AA+Dn7EuyK08jdrS8wUwKfGJQmK9ZduLdOaHEQSiP5yR1GFHM2XIazTq3tbGeOmqnjjWkdcJtumoR05/uMiT85nQgDBNw1Y9wlig6iiRXXidjZkHZX8OxhnY0L2BaH7Wp13ajPPyW3VJG4YS3sSg/UAyNM6KgytSOjFIh4bORbA4YP86mn1bL1MgEuoCqqVoE7SIa38lfLW3ZFRKdpFlUv54k6V2o02pv0PuEicGXvh2upvSeiJx3AzjncgqxRXYZYUaglcD+g5FP4JJD2uDw90lxdQAnqPhjt64TRSR+nB+mQr+jbeKFV1vD8cDjv2bfHvPilmCPYIKDukAx6Nr0Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=9OdIgauYjvZTM3NEXeDJuUyyCuwPtaokUubGW/H/Oag=;
 b=kI95msU0wRhCZZB2E8iNEDeMtaqkBx3F/sTfYPGUkFcrI1Pom/g8zNRzkNClNt2a+mPs3H3+AK0M77Ma3mtuc9LLgnpm8yc4SBgi22/7RU4Ov2yG7vNCvW69PQGKgmrvLT018kL6eweWRC4C1TWjr2EEwPNyb+kDSKd2uzSOosh89HrUJwGyHcgTLnit+A2mygYqF6H215xuY255XYwIFi0DV4Aws4X5AqEbp9xlkV7JsAkcOFXs9rMDQwYgIgYaoQ3moJomBruXSFYPtq32ZwEhUgc+MFYCJVwTiZmcmkS0McY/8uSBtl2NxsmCJ9TytvTB2Yd3fzpt/qWckj5WCg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=nongnu.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 (0)
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=9OdIgauYjvZTM3NEXeDJuUyyCuwPtaokUubGW/H/Oag=;
 b=SWfdh0sYqpX8S5rm8t8jp006mVIZTWRcpdCIk3b2KLdLIkpj0iWZhzOz4cNy0Q7uexF7Nx9QJ+0Hx5zzWtyNs9mamjMnS43mW6QlYRH86B4jrnzzIlb+Fuxz95OMZwLxYRalVAJHEM6GmY9AW/2SQzFx/aRDslKvuQMfkdxaI4U=
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: <qemu-devel@nongnu.org>
CC: <sstabellini@kernel.org>, <vikram.garhwal@amd.com>, <jgross@suse.com>,
	Anthony Perard <anthony.perard@citrix.com>, Paul Durrant <paul@xen.org>,
	Paolo Bonzini <pbonzini@redhat.com>, Peter Xu <peterx@redhat.com>, "David
 Hildenbrand" <david@redhat.com>, =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?=
	<philmd@linaro.org>, "open list:X86 Xen CPUs"
	<xen-devel@lists.xenproject.org>
Subject: [QEMU][PATCHv2 7/8] xen: add map and unmap callbacks for grant region
Date: Wed, 25 Oct 2023 14:24:20 -0700
Message-ID: <20231025212422.30371-8-vikram.garhwal@amd.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20231025212422.30371-1-vikram.garhwal@amd.com>
References: <20231025212422.30371-1-vikram.garhwal@amd.com>
MIME-Version: 1.0
Content-Type: text/plain
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SN1PEPF0002BA50:EE_|IA0PR12MB7749:EE_
X-MS-Office365-Filtering-Correlation-Id: 9e1b8438-712f-4e8a-11bf-08dbd5a0cd9d
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	Fcy7JXO2HJKc8M0pj/e15L/UJBG4h+ZqfXqU3JpnPz4OMf6k3rymMcVCZab8x2VhhIQkMW/28IjjO457YZEkbAn8+ayqqjfIHW4EOjW8050tLedK3Bg3Je2fBAfVkZ/Ka/N+fjA0sXLGZRc5HeTXOfXqaLsV9Fn2WBGA2Rulik/mKA9WkW5/Ejn/j5VbZqnmue+6vEN4TjtHrlrbjxc27IXPI9o6BjxQsvB9Coyrv9/3KulEcWsECRRfO9nvl/VL1sKqbBmq7hkSI+J7zeXFHvIjy38UXh1NO1Nxy+7loCx2SC7JFGDvcOeLBiHvk07gYWfrigcoI05tkfgrf8WV9VT7ckc9s0rqdaOjpJ+fboA4jEdHUzoX+Uc+hWeRTAQ4KqXFsMdv5KJQkABpySgWS0J1aHYBpyJBNtABxFR2z4xeMlzuNFKPPtV97/eOTS1CRfOjHZzDE2tqsz31H6flkADfMMLIlsxuVIuXKqT0N2RDDE9qVBBuTHKpw1aEaASzW9PY8EkWxrPyRRMXgrA8zX4/S7Poi8xnJmGNo72PNORazVDdRoZzX4ksVcaGjMbM3+pHseeYe9aSHSVl1X2YjC5f6sDTSQOTe4XUryQ3VhTHpRJPWv+If5dmQfRja8TgUFczwtU1oZWexUFdDWh4AH2DuZwn9+XpmF/Lqluh9H27Oqdc8Jfy0SdjfXy6W67cZFSzli0r/YShB51uD1PRpyiHQcY5Q93yPJO/oyR3wnlv/knu3JIDj7oCSrx27DMRqn7LB+1WUlghDe23qNDRrQ==
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)(230922051799003)(64100799003)(82310400011)(186009)(451199024)(1800799009)(46966006)(40470700004)(36840700001)(40460700003)(40480700001)(1076003)(81166007)(2616005)(82740400003)(26005)(83380400001)(426003)(336012)(356005)(6916009)(316002)(478600001)(6666004)(47076005)(70586007)(36860700001)(70206006)(54906003)(86362001)(5660300002)(36756003)(7416002)(41300700001)(8936002)(8676002)(4326008)(2906002)(44832011)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Oct 2023 21:24:42.3538
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 9e1b8438-712f-4e8a-11bf-08dbd5a0cd9d
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: IA0PR12MB7749

From: Juergen Gross <jgross@suse.com>

Add the callbacks for mapping/unmapping guest memory via grants to the
special grant memory region.

Signed-off-by: Juergen Gross <jgross@suse.com>
Signed-off-by: Vikram Garhwal <vikram.garhwal@amd.com>
---
 hw/xen/xen-mapcache.c | 175 +++++++++++++++++++++++++++++++++++++++++-
 system/physmem.c      |  11 ++-
 2 files changed, 181 insertions(+), 5 deletions(-)

diff --git a/hw/xen/xen-mapcache.c b/hw/xen/xen-mapcache.c
index 8a61c7dde6..feb4a3b886 100644
--- a/hw/xen/xen-mapcache.c
+++ b/hw/xen/xen-mapcache.c
@@ -9,6 +9,8 @@
  */
 
 #include "qemu/osdep.h"
+#include "qemu/queue.h"
+#include "qemu/thread.h"
 #include "qemu/units.h"
 #include "qemu/error-report.h"
 
@@ -23,6 +25,8 @@
 #include "sysemu/xen-mapcache.h"
 #include "trace.h"
 
+#include <xenevtchn.h>
+#include <xengnttab.h>
 
 //#define MAPCACHE_DEBUG
 
@@ -385,7 +389,7 @@ uint8_t *xen_map_cache(hwaddr phys_addr, hwaddr size,
     return p;
 }
 
-ram_addr_t xen_ram_addr_from_mapcache(void *ptr)
+static ram_addr_t xen_ram_addr_from_mapcache_try(void *ptr)
 {
     MapCacheEntry *entry = NULL;
     MapCacheRev *reventry;
@@ -594,10 +598,178 @@ uint8_t *xen_replace_cache_entry(hwaddr old_phys_addr,
     return p;
 }
 
+struct XENMappedGrantRegion {
+    void *addr;
+    unsigned int pages;
+    unsigned int refs;
+    unsigned int prot;
+    uint32_t idx;
+    QLIST_ENTRY(XENMappedGrantRegion) list;
+};
+
+static xengnttab_handle *xen_region_gnttabdev;
+static QLIST_HEAD(GrantRegionList, XENMappedGrantRegion) xen_grant_mappings =
+    QLIST_HEAD_INITIALIZER(xen_grant_mappings);
+static QemuMutex xen_map_mutex;
+
+static void *xen_map_grant_dyn(MemoryRegion **mr, hwaddr addr, hwaddr *plen,
+                               bool is_write, MemTxAttrs attrs)
+{
+    unsigned int page_off = addr & (XC_PAGE_SIZE - 1);
+    unsigned int i;
+    unsigned int total_grants = 0;
+    unsigned int nrefs = (page_off + *plen + XC_PAGE_SIZE - 1) >> XC_PAGE_SHIFT;
+    uint32_t ref = (addr - XEN_GRANT_ADDR_OFF) >> XC_PAGE_SHIFT;
+    uint32_t *refs = NULL;
+    unsigned int prot = PROT_READ;
+    struct XENMappedGrantRegion *mgr = NULL;
+
+    if (is_write) {
+        prot |= PROT_WRITE;
+    }
+
+    qemu_mutex_lock(&xen_map_mutex);
+
+    QLIST_FOREACH(mgr, &xen_grant_mappings, list) {
+        if (mgr->idx == ref &&
+            mgr->pages == nrefs &&
+            (mgr->prot & prot) == prot) {
+            break;
+        }
+
+        total_grants += mgr->pages;
+    }
+
+    if (!mgr) {
+        if (nrefs + total_grants >= XEN_MAX_VIRTIO_GRANTS) {
+            return NULL;
+        }
+
+        mgr = g_new(struct XENMappedGrantRegion, 1);
+
+        if (nrefs == 1) {
+            refs = &ref;
+        } else {
+            refs = g_new(uint32_t, nrefs);
+            for (i = 0; i < nrefs; i++) {
+                refs[i] = ref + i;
+            }
+        }
+        mgr->addr = xengnttab_map_domain_grant_refs(xen_region_gnttabdev, nrefs,
+                                                    xen_domid, refs, prot);
+        if (mgr->addr) {
+            mgr->pages = nrefs;
+            mgr->refs = 1;
+            mgr->prot = prot;
+            mgr->idx = ref;
+
+            QLIST_INSERT_HEAD(&xen_grant_mappings, mgr, list);
+        } else {
+            g_free(mgr);
+            mgr = NULL;
+        }
+    } else {
+        mgr->refs++;
+    }
+
+    qemu_mutex_unlock(&xen_map_mutex);
+
+    if (nrefs > 1) {
+        g_free(refs);
+    }
+
+    return mgr ? mgr->addr + page_off : NULL;
+}
+
+static void xen_unmap_grant_dyn(MemoryRegion *mr, void *buffer, ram_addr_t addr,
+                                hwaddr len, bool is_write, hwaddr access_len)
+{
+    unsigned int page_off = (unsigned long)buffer & (XC_PAGE_SIZE - 1);
+    unsigned int nrefs = (page_off + len + XC_PAGE_SIZE - 1) >> XC_PAGE_SHIFT;
+    unsigned int prot = PROT_READ;
+    struct XENMappedGrantRegion *mgr = NULL;
+
+    if (is_write) {
+        prot |= PROT_WRITE;
+    }
+
+    qemu_mutex_lock(&xen_map_mutex);
+
+    QLIST_FOREACH(mgr, &xen_grant_mappings, list) {
+        if (mgr->addr == buffer - page_off &&
+            mgr->pages == nrefs &&
+            (mgr->prot & prot) == prot) {
+            break;
+        }
+    }
+    if (mgr) {
+        mgr->refs--;
+        if (!mgr->refs) {
+            xengnttab_unmap(xen_region_gnttabdev, mgr->addr, nrefs);
+
+            QLIST_REMOVE(mgr, list);
+            g_free(mgr);
+        }
+    } else {
+        error_report("xen_unmap_grant_dyn() trying to unmap unknown buffer");
+    }
+
+    qemu_mutex_unlock(&xen_map_mutex);
+}
+
+static ram_addr_t xen_ram_addr_from_grant_cache(void *ptr)
+{
+    unsigned int page_off = (unsigned long)ptr & (XC_PAGE_SIZE - 1);
+    struct XENMappedGrantRegion *mgr = NULL;
+    ram_addr_t raddr = RAM_ADDR_INVALID;
+
+    qemu_mutex_lock(&xen_map_mutex);
+
+    QLIST_FOREACH(mgr, &xen_grant_mappings, list) {
+        if (mgr->addr == ptr - page_off) {
+            break;
+        }
+    }
+
+    if (mgr) {
+        raddr = (mgr->idx << XC_PAGE_SHIFT) + page_off + XEN_GRANT_ADDR_OFF;
+    }
+
+    qemu_mutex_unlock(&xen_map_mutex);
+
+    return raddr;
+}
+
+ram_addr_t xen_ram_addr_from_mapcache(void *ptr)
+{
+    ram_addr_t raddr;
+
+    raddr = xen_ram_addr_from_mapcache_try(ptr);
+    if (raddr == RAM_ADDR_INVALID) {
+        raddr = xen_ram_addr_from_grant_cache(ptr);
+    }
+
+    return raddr;
+}
+
+static const struct MemoryRegionOps xen_grant_mr_ops = {
+    .map = xen_map_grant_dyn,
+    .unmap = xen_unmap_grant_dyn,
+    .endianness = DEVICE_LITTLE_ENDIAN,
+};
+
 MemoryRegion *xen_init_grant_ram(void)
 {
     RAMBlock *block;
 
+    qemu_mutex_init(&xen_map_mutex);
+
+    xen_region_gnttabdev = xengnttab_open(NULL, 0);
+    if (xen_region_gnttabdev == NULL) {
+        fprintf(stderr, "can't open gnttab device\n");
+        return NULL;
+    }
+
     memory_region_init(&ram_grants, NULL, "xen.grants",
                        XEN_MAX_VIRTIO_GRANTS * XC_PAGE_SIZE);
     block = g_malloc0(sizeof(*block));
@@ -612,6 +784,7 @@ MemoryRegion *xen_init_grant_ram(void)
     ram_grants.ram_block = block;
     ram_grants.ram = true;
     ram_grants.terminates = true;
+    ram_grants.ops = &xen_grant_mr_ops;
     ram_block_add_list(block);
     memory_region_add_subregion(get_system_memory(), XEN_GRANT_ADDR_OFF,
                                 &ram_grants);
diff --git a/system/physmem.c b/system/physmem.c
index 5db1b32823..155a8c05fb 100644
--- a/system/physmem.c
+++ b/system/physmem.c
@@ -2233,13 +2233,16 @@ RAMBlock *qemu_ram_block_from_host(void *ptr, bool round_offset,
 
     if (xen_enabled()) {
         ram_addr_t ram_addr;
+
         RCU_READ_LOCK_GUARD();
         ram_addr = xen_ram_addr_from_mapcache(ptr);
-        block = qemu_get_ram_block(ram_addr);
-        if (block) {
-            *offset = ram_addr - block->offset;
+        if (ram_addr != RAM_ADDR_INVALID) {
+            block = qemu_get_ram_block(ram_addr);
+            if (block) {
+                *offset = ram_addr - block->offset;
+            }
+            return block;
         }
-        return block;
     }
 
     RCU_READ_LOCK_GUARD();
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Wed Oct 25 21:24:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 21:24:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623324.971094 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvlMv-0002t0-8t; Wed, 25 Oct 2023 21:24:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623324.971094; Wed, 25 Oct 2023 21:24: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 1qvlMv-0002ss-5M; Wed, 25 Oct 2023 21:24:49 +0000
Received: by outflank-mailman (input) for mailman id 623324;
 Wed, 25 Oct 2023 21:24: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=sdGm=GH=amd.com=vikram.garhwal@srs-se1.protection.inumbo.net>)
 id 1qvlMt-0002bQ-Cw
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 21:24:47 +0000
Received: from NAM11-DM6-obe.outbound.protection.outlook.com
 (mail-dm6nam11on20625.outbound.protection.outlook.com
 [2a01:111:f400:7eaa::625])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id eb545dc6-737c-11ee-98d5-6d05b1d4d9a1;
 Wed, 25 Oct 2023 23:24:46 +0200 (CEST)
Received: from DS7PR03CA0276.namprd03.prod.outlook.com (2603:10b6:5:3ad::11)
 by CH3PR12MB7521.namprd12.prod.outlook.com (2603:10b6:610:143::14) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.33; Wed, 25 Oct
 2023 21:24:43 +0000
Received: from DS3PEPF000099DF.namprd04.prod.outlook.com
 (2603:10b6:5:3ad:cafe::94) by DS7PR03CA0276.outlook.office365.com
 (2603:10b6:5:3ad::11) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.19 via Frontend
 Transport; Wed, 25 Oct 2023 21:24:43 +0000
Received: from SATLEXMB04.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.6933.15 via Frontend Transport; Wed, 25 Oct 2023 21:24:43 +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.32; Wed, 25 Oct
 2023 16:24: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.32 via Frontend
 Transport; Wed, 25 Oct 2023 16:24: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: eb545dc6-737c-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=FNHzO9TyKadNN4QBBREyhymOu+T/Y/ljmaZLCrc+U4Ej4XzayaXJ1i6FecbbQUnW4lqqHmIkmdzVoYCO4UpJvY3oQlZd21l2kKI3a8k5ArZg+ZFnpXiZVfZkbMtjGaufMhyo3tOnnzyz/cHUFHJIOYri3ttYsPr6nqKgYqxfV5Rf1M70+fjh4donHPk57YDaXjIJZYDMIKdN/CldmQt0IuDx8n1a9ekOSyNwcwJgbNvQWftVifWPJBlLwlymSYyB8vUQqkA+tDj8AssTFhm3hucs5mQVo/jg9GKiUI1LXpCtQXNmY43PKv1tYuJJJmr9wipuGyZ98YrJ8lQk9zi5rg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=Ut7Scrh7dAWVSwNqnu8r7sO55DGW8qB7WwwfhcTT7kA=;
 b=aQMN6hWaQqf0VxKaEwyXQJiuabPme8anIA1HIzIA0inF7m1OLwVqNTCadYl/kzbHJsFSssOlecKLytoXrHgY4ewe12hOMulnTHYoRKbpU33Y+/amwtP+3gvQeZZlpgogRM1Cf+tDmVxgCFdchCMR3WcKEWPzPJb/068R5Ooj5DlVnOAAo8J5AxqeQBfMjeD+4Eku8BvuFG6w+vjRTF7zcZYGAk6s/JyUcmqP/EQwVlKYSzkelZPe/UyGmJaQQPBiBVK7Cri4OIPMG6dA1U4dgBWg2AxldFYhdVbkidvS98gTtNw/gQAOsddSr7PTmwAqSJTdInMv0sfrTwzKxp20Eg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=nongnu.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=Ut7Scrh7dAWVSwNqnu8r7sO55DGW8qB7WwwfhcTT7kA=;
 b=2o12FFLUsQvSTs5van85adZmy333PZR6n9L742jWG/e8dmRZ0RpolXWeyzONFFAcEs9YQTcN+6QG/0NBFIBrRhkzz43o2EXivBrz45s/KfIgEYkV0Q5fhwtsv0V1jKaE/R/PAQGCKEU+EGoLN/QIbtGedAig3ylMb/ZE5s3XOLY=
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: <qemu-devel@nongnu.org>
CC: <sstabellini@kernel.org>, <vikram.garhwal@amd.com>, <jgross@suse.com>,
	Anthony Perard <anthony.perard@citrix.com>, Paul Durrant <paul@xen.org>,
	Paolo Bonzini <pbonzini@redhat.com>, Richard Henderson
	<richard.henderson@linaro.org>, Eduardo Habkost <eduardo@habkost.net>,
	"Michael S. Tsirkin" <mst@redhat.com>, Marcel Apfelbaum
	<marcel.apfelbaum@gmail.com>, "open list:X86 Xen CPUs"
	<xen-devel@lists.xenproject.org>
Subject: [QEMU][PATCHv2 3/8] xen: add pseudo RAM region for grant mappings
Date: Wed, 25 Oct 2023 14:24:16 -0700
Message-ID: <20231025212422.30371-4-vikram.garhwal@amd.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20231025212422.30371-1-vikram.garhwal@amd.com>
References: <20231025212422.30371-1-vikram.garhwal@amd.com>
MIME-Version: 1.0
Content-Type: text/plain
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DS3PEPF000099DF:EE_|CH3PR12MB7521:EE_
X-MS-Office365-Filtering-Correlation-Id: b82c8f39-c33d-4f43-1b3b-08dbd5a0ce49
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	PEQAVun/RHDzu01SmZbK8teY3/In0sqKYfSrofRRPwlajAUwd7Hja0RI27fkyOfJKxgbFuirYIJmrJa8GArREyLUPfBKzid9paMQxGP1NJAwuoKpcFyrYqDvmHGnnQrYV+uqLDZLE6Cg8BS2yPZCxaZN/bPhaqtSA0pfiQJZcLrbg1xUXYZZcO2gparTQqiYi6MEVHXL3qpTWLg77q0MkuTKmkqP9z+sKzOu6j6C+f7i48ILA6BA+cwsoFKqvAq54GJySsgotECj1j8mCpJNgX3DbSlwTCNk/ePoTGFpNDT7Ob02U06z9Nc0VU1uGR46jwcqsL+aI9VpUpOKw49/Sa0rah4NrMSe25XK7PRh4d84/pzErJZNuW4gZwcLpfMAQunJ+f91Doq2uqxcO/hL01rVVNw87pF9BiKFe8hF83gpA4wV8AahsSW4aNu5N1xE7s1PSsG9bgorDo8eEzBjCbk2jg3ForMZk6B+nUKLALwf2FO20sDdzVBiXiaSnJjZgru8cdMjbquZ8u/ZuX5AqDGqNEWL7zZHRZKbg6FcTbvXnO2hVOuLpqb0GPgkto1WzOr8HqJH81NyzSk1sCcYj0RGvHoOtjEsGfuBx3lXxVFKIYdq1HvT9zGrvg79QeXMdaCst0w1WzkZVnotSBdRya3i8LBtiX9ZVSsvg0GIZpLoX25OwZAptnde6ugbe+r0UmSVjmXoFx6vOxHzRyurtdE+zF7YyhSFwaFN3wYYyM9HDA+fjlO3wWeeTvZ6flp84zuaXj4oaZ0m9NfQQFoLCA==
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)(376002)(346002)(396003)(230922051799003)(64100799003)(451199024)(82310400011)(186009)(1800799009)(40470700004)(46966006)(36840700001)(2906002)(44832011)(81166007)(36860700001)(478600001)(70586007)(70206006)(356005)(316002)(1076003)(6916009)(47076005)(40480700001)(336012)(426003)(83380400001)(54906003)(41300700001)(40460700003)(4326008)(36756003)(86362001)(5660300002)(7416002)(6666004)(2616005)(8676002)(82740400003)(8936002)(26005)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Oct 2023 21:24:43.3718
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: b82c8f39-c33d-4f43-1b3b-08dbd5a0ce49
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:
	DS3PEPF000099DF.namprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH3PR12MB7521

From: Juergen Gross <jgross@suse.com>

Add a memory region which can be used to automatically map granted
memory. It is starting at 0x8000000000000000ULL in order to be able to
distinguish it from normal RAM.

For this reason the xen.ram memory region is expanded, which has no
further impact as it is used just as a container of the real RAM
regions and now the grant region.

Signed-off-by: Juergen Gross <jgross@suse.com>
Signed-off-by: Vikram Garhwal <vikram.garhwal@amd.com>
---
 hw/i386/xen/xen-hvm.c           |  3 +++
 hw/xen/xen-hvm-common.c         |  4 ++--
 hw/xen/xen-mapcache.c           | 27 +++++++++++++++++++++++++++
 include/hw/xen/xen-hvm-common.h |  2 ++
 include/hw/xen/xen_pvdev.h      |  3 +++
 include/sysemu/xen-mapcache.h   |  3 +++
 6 files changed, 40 insertions(+), 2 deletions(-)

diff --git a/hw/i386/xen/xen-hvm.c b/hw/i386/xen/xen-hvm.c
index f42621e674..67a55558a6 100644
--- a/hw/i386/xen/xen-hvm.c
+++ b/hw/i386/xen/xen-hvm.c
@@ -172,6 +172,9 @@ static void xen_ram_init(PCMachineState *pcms,
                                  x86ms->above_4g_mem_size);
         memory_region_add_subregion(sysmem, 0x100000000ULL, &ram_hi);
     }
+
+    /* Add grant mappings as a pseudo RAM region. */
+    ram_grants = *xen_init_grant_ram();
 }
 
 static XenPhysmap *get_physmapping(hwaddr start_addr, ram_addr_t size)
diff --git a/hw/xen/xen-hvm-common.c b/hw/xen/xen-hvm-common.c
index 565dc39c8f..b7255977a5 100644
--- a/hw/xen/xen-hvm-common.c
+++ b/hw/xen/xen-hvm-common.c
@@ -9,7 +9,7 @@
 #include "hw/boards.h"
 #include "hw/xen/arch_hvm.h"
 
-MemoryRegion ram_memory;
+MemoryRegion ram_memory, ram_grants;
 
 void xen_ram_alloc(ram_addr_t ram_addr, ram_addr_t size, MemoryRegion *mr,
                    Error **errp)
@@ -26,7 +26,7 @@ void xen_ram_alloc(ram_addr_t ram_addr, ram_addr_t size, MemoryRegion *mr,
         return;
     }
 
-    if (mr == &ram_memory) {
+    if (mr == &ram_memory || mr == &ram_grants) {
         return;
     }
 
diff --git a/hw/xen/xen-mapcache.c b/hw/xen/xen-mapcache.c
index f7d974677d..8115c44c00 100644
--- a/hw/xen/xen-mapcache.c
+++ b/hw/xen/xen-mapcache.c
@@ -14,7 +14,9 @@
 
 #include <sys/resource.h>
 
+#include "hw/xen/xen-hvm-common.h"
 #include "hw/xen/xen_native.h"
+#include "hw/xen/xen_pvdev.h"
 #include "qemu/bitmap.h"
 
 #include "sysemu/runstate.h"
@@ -597,3 +599,28 @@ uint8_t *xen_replace_cache_entry(hwaddr old_phys_addr,
     mapcache_unlock();
     return p;
 }
+
+MemoryRegion *xen_init_grant_ram(void)
+{
+    RAMBlock *block;
+
+    memory_region_init(&ram_grants, NULL, "xen.grants",
+                       XEN_MAX_VIRTIO_GRANTS * XC_PAGE_SIZE);
+    block = g_malloc0(sizeof(*block));
+    block->mr = &ram_grants;
+    block->used_length = XEN_MAX_VIRTIO_GRANTS * XC_PAGE_SIZE;
+    block->max_length = XEN_MAX_VIRTIO_GRANTS * XC_PAGE_SIZE;
+    block->fd = -1;
+    block->page_size = XC_PAGE_SIZE;
+    block->host = (void *)XEN_GRANT_ADDR_OFF;
+    block->offset = XEN_GRANT_ADDR_OFF;
+    block->flags = RAM_PREALLOC;
+    ram_grants.ram_block = block;
+    ram_grants.ram = true;
+    ram_grants.terminates = true;
+    ram_block_add_list(block);
+    memory_region_add_subregion(get_system_memory(), XEN_GRANT_ADDR_OFF,
+                                &ram_grants);
+
+    return &ram_grants;
+}
diff --git a/include/hw/xen/xen-hvm-common.h b/include/hw/xen/xen-hvm-common.h
index 4e9904f1a6..0d300ba898 100644
--- a/include/hw/xen/xen-hvm-common.h
+++ b/include/hw/xen/xen-hvm-common.h
@@ -17,6 +17,8 @@
 #include <xen/hvm/ioreq.h>
 
 extern MemoryRegion ram_memory;
+
+extern MemoryRegion ram_grants;
 extern MemoryListener xen_io_listener;
 extern DeviceListener xen_device_listener;
 
diff --git a/include/hw/xen/xen_pvdev.h b/include/hw/xen/xen_pvdev.h
index ddad4b9f36..0f1b5edfa9 100644
--- a/include/hw/xen/xen_pvdev.h
+++ b/include/hw/xen/xen_pvdev.h
@@ -80,4 +80,7 @@ int xen_pv_send_notify(struct XenLegacyDevice *xendev);
 void xen_pv_printf(struct XenLegacyDevice *xendev, int msg_level,
                    const char *fmt, ...)  G_GNUC_PRINTF(3, 4);
 
+#define XEN_GRANT_ADDR_OFF    0x8000000000000000ULL
+#define XEN_MAX_VIRTIO_GRANTS 65536
+
 #endif /* QEMU_HW_XEN_PVDEV_H */
diff --git a/include/sysemu/xen-mapcache.h b/include/sysemu/xen-mapcache.h
index c8e7c2f6cf..f4bedb1c11 100644
--- a/include/sysemu/xen-mapcache.h
+++ b/include/sysemu/xen-mapcache.h
@@ -10,6 +10,7 @@
 #define XEN_MAPCACHE_H
 
 #include "exec/cpu-common.h"
+#include "exec/ram_addr.h"
 
 typedef hwaddr (*phys_offset_to_gaddr_t)(hwaddr phys_offset,
                                          ram_addr_t size);
@@ -25,6 +26,8 @@ void xen_invalidate_map_cache(void);
 uint8_t *xen_replace_cache_entry(hwaddr old_phys_addr,
                                  hwaddr new_phys_addr,
                                  hwaddr size);
+MemoryRegion *xen_init_grant_ram(void);
+
 #else
 
 static inline void xen_map_cache_init(phys_offset_to_gaddr_t f,
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Wed Oct 25 21:24:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 21:24:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623323.971084 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvlMt-0002cq-Ux; Wed, 25 Oct 2023 21:24:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623323.971084; Wed, 25 Oct 2023 21:24: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 1qvlMt-0002cj-RI; Wed, 25 Oct 2023 21:24:47 +0000
Received: by outflank-mailman (input) for mailman id 623323;
 Wed, 25 Oct 2023 21:24: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=sdGm=GH=amd.com=vikram.garhwal@srs-se1.protection.inumbo.net>)
 id 1qvlMs-0002bQ-25
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 21:24:46 +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 e99edb15-737c-11ee-98d5-6d05b1d4d9a1;
 Wed, 25 Oct 2023 23:24:44 +0200 (CEST)
Received: from DS7PR03CA0284.namprd03.prod.outlook.com (2603:10b6:5:3ad::19)
 by IA1PR12MB8539.namprd12.prod.outlook.com (2603:10b6:208:446::6) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.31; Wed, 25 Oct
 2023 21:24:39 +0000
Received: from DS3PEPF000099DF.namprd04.prod.outlook.com
 (2603:10b6:5:3ad:cafe::4c) by DS7PR03CA0284.outlook.office365.com
 (2603:10b6:5:3ad::19) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.33 via Frontend
 Transport; Wed, 25 Oct 2023 21:24:39 +0000
Received: from SATLEXMB04.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.6933.15 via Frontend Transport; Wed, 25 Oct 2023 21:24: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.32; Wed, 25 Oct
 2023 16:24:34 -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.32; Wed, 25 Oct
 2023 14:24:34 -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.32 via Frontend
 Transport; Wed, 25 Oct 2023 16:24: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: e99edb15-737c-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=LR6H8GH8Qh4HsvZO9PMqZvjcnbNnevZK8FgMsbNcnOSpkKpkSyd5IfUVacDVJmvYp8XjXV1eB53woxQP+k1kiSRmecOe5a24k7GlhkFjodLgS0sPaQRAe+OHgtEKYFugHdzk19c1zEG71MewGukfEsmAUc8uRHtPIAyQQrJgDwqdRB65NwdUG4/1A20x1w/agDjbZPa0p+ojA+LuPxQjl/EnMrs6J6nrGtXuBvx16/dhl34VzuqKYEmJJazMWpIBbiw9dve3kBScXfWUP6SGSD3x82h+kctprTYZ4F8ZxuhWiB3pEjVB+ZxDfbB9EedxtZSavxctnKgei8Gs7OnhwA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=j8RBc3mGaBZEzIDWAq6TaBKCLaPuj7qNGyoRNGoAD/4=;
 b=nENxdoUCU65ttVFbtpQEwGemXjlD7lMx6m6DISKmvScNTvHKeoa2fRjBu8hkuH1yGBpl9q1s3wxoE6Ehq/iBlZSU2rwo5u5LH00h5KCCV3I01QUsb2V5q0xZV/CiUeVQ7aF3qQ3lMM99ChJDhIDJgcqEAaeInV7hOYYJATYa7u+5OcWhfsxHbN6/lOv1tE9L91naGCC8UVeJEiY58Pgc9rVd9vUPbDBge4su5tCmvRzYkLLOsm4AP+k0mPph1w4tnoCodRwqf7yDOPWNeALNpbvpW82fEj9DfMoIl724T4eaNmDFrKh/Q/H0FUrtn4B8boqSOF/gVhWPaZJl+xJ0XQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=nongnu.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=j8RBc3mGaBZEzIDWAq6TaBKCLaPuj7qNGyoRNGoAD/4=;
 b=qQLwOnU+jhYD1B5eMvi8CHTbxjuU+wkYBNabiwajM3AZz/fh4e+GehwEdTWKPnNFijehWwGeCJYv8PQcVpxbpfzRltYPpPhfu5yW9s/U815O3HiFAsjCZ9AfFpsVvYiz2Jvm5GwRZS83d+um/MdBWZwtC7hI5BMNr0+n7tbSv0s=
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: <qemu-devel@nongnu.org>
CC: <sstabellini@kernel.org>, <vikram.garhwal@amd.com>, <jgross@suse.com>,
	Anthony Perard <anthony.perard@citrix.com>, Paul Durrant <paul@xen.org>,
	Paolo Bonzini <pbonzini@redhat.com>, Richard Henderson
	<richard.henderson@linaro.org>, Eduardo Habkost <eduardo@habkost.net>,
	"Michael S. Tsirkin" <mst@redhat.com>, Marcel Apfelbaum
	<marcel.apfelbaum@gmail.com>, "open list:X86 Xen CPUs"
	<xen-devel@lists.xenproject.org>
Subject: [QEMU][PATCHv2 1/8] xen: when unplugging emulated devices skip virtio devices
Date: Wed, 25 Oct 2023 14:24:14 -0700
Message-ID: <20231025212422.30371-2-vikram.garhwal@amd.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20231025212422.30371-1-vikram.garhwal@amd.com>
References: <20231025212422.30371-1-vikram.garhwal@amd.com>
MIME-Version: 1.0
Content-Type: text/plain
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DS3PEPF000099DF:EE_|IA1PR12MB8539:EE_
X-MS-Office365-Filtering-Correlation-Id: a7cb8ff2-c99a-48d8-f8d9-08dbd5a0cbe1
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	BmPxWzqta2PVUfu2JYM3Ka1NYG0qKeB+L1G04k2pLKcVRlFcfApsZwwco/LIEaYLAQJ6qb8p+h5ILXz/Xh+FWj1C8Jygrl5FM5TuCFhsjLiDl2fHLXG8F2nUicZl5/XgNpzjUU9OrAcMaRflxozacWZzgXxGbfX+jtY8/gnGx3IjYgSBcij5DqxJEfnYP3JwdwUtePJ+gsaVrmv/kLdXxT3/wCg9KKEoplxqPKldut7hLm132ZWSnSdt0U2EIw/vXNtluwghZiWYh+EsT4Cgerr26TjJks/1gQcenMhl1VEU76xJ3RlDQD3Mq4X7+0nUWZa3hpS+42AT3EOnr91wgz9eBf32/kqXHo1362YCyG7iJij8amHQo8zciIGR6P7WqnulA/Oxl7jBbTjBkD0CDYq74yWBV2oMwQSeZYBIJQlWpZq+umZo+V8hD9PaO/dhZ7Alt3urt/OhhNauE+NahmMDu8fYT5flQpGFlondL7gIBh1xWZCINU7lRSUM8RH9SafeKFSjVJkA10vhPOxnWttLr9uuDXsxc+q8XE9Y930M2gWS8lwPr41ATLXdAN72+ZNRBL0vvLUiK+aaYa1RWAZlHjoUP+V2nVvOLExkrzFvyMq7F8Shg00WBVOd+9UPl+KegYS2JL9FWYV/w53NP5djJgplGIcxdse04Rtj1nY3FysMm3DcApa2JtE+FrurJOc9V5TqlKP7petFit4pyvf4UumD4VZDxi/hFy30FZWO2XJVMIb6iicwYJcV7/yBPBB0E+YuvTrolmIkgH4aPw==
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)(230922051799003)(1800799009)(64100799003)(186009)(451199024)(82310400011)(46966006)(36840700001)(40470700004)(36860700001)(2906002)(356005)(316002)(70206006)(54906003)(6916009)(70586007)(478600001)(81166007)(2616005)(6666004)(41300700001)(47076005)(336012)(426003)(82740400003)(83380400001)(40480700001)(86362001)(1076003)(44832011)(36756003)(7416002)(40460700003)(5660300002)(8676002)(4326008)(8936002)(26005)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Oct 2023 21:24:39.3249
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: a7cb8ff2-c99a-48d8-f8d9-08dbd5a0cbe1
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:
	DS3PEPF000099DF.namprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA1PR12MB8539

From: Juergen Gross <jgross@suse.com>

Virtio devices should never be unplugged at boot time, as they are
similar to pci passthrough devices.

Signed-off-by: Juergen Gross <jgross@suse.com>
Signed-off-by: Vikram Garhwal <vikram.garhwal@amd.com>
---
 docs/system/i386/xen.rst   |  3 ---
 hw/i386/xen/xen_platform.c | 10 ++++++++--
 2 files changed, 8 insertions(+), 5 deletions(-)

diff --git a/docs/system/i386/xen.rst b/docs/system/i386/xen.rst
index f06765e88c..b86d57af6e 100644
--- a/docs/system/i386/xen.rst
+++ b/docs/system/i386/xen.rst
@@ -52,9 +52,6 @@ It is necessary to use the pc machine type, as the q35 machine uses AHCI instead
 of legacy IDE, and AHCI disks are not unplugged through the Xen PV unplug
 mechanism.
 
-VirtIO devices can also be used; Linux guests may need to be dissuaded from
-umplugging them by adding 'xen_emul_unplug=never' on their command line.
-
 Properties
 ----------
 
diff --git a/hw/i386/xen/xen_platform.c b/hw/i386/xen/xen_platform.c
index 17457ff3de..0187b73eeb 100644
--- a/hw/i386/xen/xen_platform.c
+++ b/hw/i386/xen/xen_platform.c
@@ -28,6 +28,7 @@
 #include "hw/ide/pci.h"
 #include "hw/pci/pci.h"
 #include "migration/vmstate.h"
+#include "hw/virtio/virtio-bus.h"
 #include "net/net.h"
 #include "trace.h"
 #include "sysemu/xen.h"
@@ -129,10 +130,11 @@ static bool pci_device_is_passthrough(PCIDevice *d)
 
 static void unplug_nic(PCIBus *b, PCIDevice *d, void *o)
 {
-    /* We have to ignore passthrough devices */
+    /* We have to ignore passthrough devices  and virtio devices. */
     if (pci_get_word(d->config + PCI_CLASS_DEVICE) ==
             PCI_CLASS_NETWORK_ETHERNET
-            && !pci_device_is_passthrough(d)) {
+            && !pci_device_is_passthrough(d)
+            && !qdev_get_child_bus(&d->qdev, TYPE_VIRTIO_BUS)) {
         object_unparent(OBJECT(d));
     }
 }
@@ -208,6 +210,10 @@ static void unplug_disks(PCIBus *b, PCIDevice *d, void *opaque)
     /* We have to ignore passthrough devices */
     if (pci_device_is_passthrough(d))
         return;
+    /* Ignore virtio devices */
+    if (qdev_get_child_bus(&d->qdev, TYPE_VIRTIO_BUS)) {
+        return;
+    }
 
     switch (pci_get_word(d->config + PCI_CLASS_DEVICE)) {
     case PCI_CLASS_STORAGE_IDE:
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Wed Oct 25 21:26:40 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 21:26:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623337.971123 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvlOg-0005W0-AU; Wed, 25 Oct 2023 21:26:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623337.971123; Wed, 25 Oct 2023 21: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 1qvlOg-0005Vt-7o; Wed, 25 Oct 2023 21:26:38 +0000
Received: by outflank-mailman (input) for mailman id 623337;
 Wed, 25 Oct 2023 21:26: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 1qvlOe-0005UE-Ph; Wed, 25 Oct 2023 21:26: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 1qvlOe-0005ox-H2; Wed, 25 Oct 2023 21:26: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 1qvlOe-0002TV-0h; Wed, 25 Oct 2023 21:26:36 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qvlOe-0000rh-0E; Wed, 25 Oct 2023 21:26: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=7kmAhyupYIXNhhQNZ+/31IiocsudAk+4K2J7hmKybqQ=; b=yGsjx4gOh9MoujtKDzN/XMfpki
	LcLZcp/aWsE8CzEtM5Zr+JR3lNUNd7iLd979qmq5X5wNBh8J+M5yIqrhz+OtED83LZrPG3QxOTMOZ
	MFBsAwMfhz4EBs406zOCY6P7l8uOb7O/pawaCjNsc2qm5yIx9HdVypop7ZLw1wuJTuwc=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183523-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-5.4 test] 183523: tolerable trouble: fail/pass/starved - PUSHED
X-Osstest-Failures:
    linux-5.4:test-armhf-armhf-xl-multivcpu:guest-start:fail:heisenbug
    linux-5.4:test-arm64-arm64-libvirt-raw:guest-start/debian.repeat:fail:heisenbug
    linux-5.4:test-armhf-armhf-xl-credit2:guest-start/debian.repeat:fail:nonblocking
    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-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-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-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-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-pvshim:guest-start: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-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-libvirt:migrate-support-check: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-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-xl:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl: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-credit1:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-credit1: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-rtds: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-rtds: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-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-libvirt: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-qcow2: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-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-dom0pvh-xl-amd:hosts-allocate:starved:nonblocking
X-Osstest-Versions-This:
    linux=86ea40e6ad22d9d7daa54b9e8167ad1e4a8a48ee
X-Osstest-Versions-That:
    linux=02f78c59a0ed312a41d5d76397ea812c7cb19cb2
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 25 Oct 2023 21:26:36 +0000

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

Failures :-/ but no regressions.

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

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-xl-credit2 18 guest-start/debian.repeat fail blocked in 183335
 test-armhf-armhf-xl-multivcpu 18 guest-start/debian.repeat fail in 183531 like 183335
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail in 183531 never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail in 183531 never pass
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183335
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183335
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 183335
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 183335
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183335
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 183335
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183335
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183335
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183335
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183335
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183335
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 183335
 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-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-libvirt      15 migrate-support-check        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-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-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-vhd 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-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     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-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-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-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-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-amd64-amd64-dom0pvh-xl-amd  3 hosts-allocate               starved  n/a

version targeted for testing:
 linux                86ea40e6ad22d9d7daa54b9e8167ad1e4a8a48ee
baseline version:
 linux                02f78c59a0ed312a41d5d76397ea812c7cb19cb2

Last test of basis   183335  2023-10-10 20:15:05 Z   15 days
Testing same since   183523  2023-10-25 10:14:26 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Abhinav Kumar <quic_abhinavk@quicinc.com>
  Adrian Hunter <adrian.hunter@intel.com>
  Alexander Zangerl <az@breathe-safe.com>
  Amelie Delaunay <amelie.delaunay@foss.st.com>
  Amir Goldstein <amir73il@gmail.com>
  Andy Shevchenko <andriy.shevchenko@linux.intel.com>
  Arkadiusz Bokowy <arkadiusz.bokowy@gmail.com>
  Arnd Bergmann <arnd@arndb.de>
  Artem Chernyshev <artem.chernyshev@red-soft.ru>
  Atish Patra <atishp@rivosinc.com>
  Avri Altman <avri.altman@wdc.com>
  Bagas Sanjaya <bagasdotme@gmail.com>
  Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
  Benjamin Berg <benjamin.berg@intel.com>
  Benjamin Tissoires <bentiss@kernel.org>
  Benoît Monin <benoit.monin@gmx.fr>
  Bibek Kumar Patro <quic_bibekkum@quicinc.com>
  Borislav Petkov (AMD) <bp@alien8.de>
  Chengfeng Ye <dg573847474@gmail.com>
  Christian Brauner <brauner@kernel.org>
  Christophe Leroy <christophe.leroy@csgroup.eu>
  Clément Léger <cleger@rivosinc.com>
  Damien Le Moal <dlemoal@kernel.org>
  Dan Carpenter <dan.carpenter@linaro.org>
  David S. Miller <davem@davemloft.net>
  David Sterba <dsterba@suse.com>
  Dinghao Liu <dinghao.liu@zju.edu.cn>
  Dmitry Torokhov <dmitry.torokhov@gmail.com>
  Duoming Zhou <duoming@zju.edu.cn>
  Dzmitry <wrkedm@gmail.com>
  Edward AD <twuufnxlz@gmail.com>
  Eric Dumazet <edumazet@google.com>
  Fabio Porcedda <fabio.porcedda@gmail.com>
  Filipe Manana <fdmanana@suse.com>
  Florian Fainelli <florian.fainelli@broadcom.com>
  Florian Westphal <fw@strlen.de>
  Gavrilov Ilia <Ilia.Gavrilov@infotecs.ru>
  Geert Uytterhoeven <geert+renesas@glider.be>
  Greg Kroah-Hartman <gregkh@linuxfoundation.org>
  Haibo Chen <haibo.chen@nxp.com>
  Hans de Goede <hdegoede@redhat.com>
  Harshit Mogalapalli <harshit.m.mogalapalli@oracle.com>
  Heiner Kallweit <hkallweit1@gmail.com>
  Herbert Xu <herbert@gondor.apana.org.au>
  Hui Wang <hui.wang@canonical.com>
  Ilya Dryomov <idryomov@gmail.com>
  Jacob Keller <jacob.e.keller@intel.com>
  Jakub Kicinski <kuba@kernel.org>
  Jamal Hadi Salim <jhs@mojatatu.com>
  Jan Kara <jack@suse.cz>
  Jason Wang <jasowang@redhat.com>
  Javier Carrasco <javier.carrasco.cruz@gmail.com>
  Jeff Layton <jlayton@kernel.org>
  Jeffery Miller <jefferymiller@google.com>
  Jens Axboe <axboe@kernel.dk>
  Jeremy Cline <jeremy@jcline.org>
  Jesse Brandeburg <jesse.brandeburg@intel.com>
  Jim Mattson <jmattson@google.com>
  Jiri Kosina <jkosina@suse.cz>
  Johan Hovold <johan+linaro@kernel.org>
  Johan Hovold <johan@kernel.org>
  Johannes Berg <johannes.berg@intel.com>
  John Garry <john.garry@huawei.com>
  Jonathan Cameron <Jonathan.Cameron@huawei.com>
  Jordan Rife <jrife@google.com>
  Jorge Sanjuan Garcia <jorge.sanjuangarcia@duagon.com>
  Jose Javier Rodriguez Barbarin <JoseJavier.Rodriguez@duagon.com>
  Josef Bacik <josef@toxicpanda.com>
  Josua Mayer <josua@solid-run.com>
  Kai Uwe Broulik <foss-linux@broulik.de>
  Kees Cook <keescook@chromium.org>
  Kellen Renshaw <kellen.renshaw@canonical.com>
  Kenta Sato <tosainu.maple@gmail.com>
  Konstantin Meskhidze <konstantin.meskhidze@huawei.com>
  Krishna Kurapati <quic_kriskura@quicinc.com>
  Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
  Lakshmi Yadlapati <lakshmiy@us.ibm.com>
  Lee, Chun-Yi <jlee@suse.com>
  Leon Romanovsky <leon@kernel.org>
  Linus Walleij <linus.walleij@linaro.org>
  Linux Kernel Functional Testing <lkft@linaro.org>
  Liviu Dudau <liviu.dudau@arm.com>
  Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
  Ma Ke <make_ruc2021@163.com>
  Manish Chopra <manishc@marvell.com>
  Manuel Krause <manuelkrause@netscape.net>
  Marc Zyngier <maz@kernel.org>
  Mark Brown <broonie@kernel.org>
  Martin Fuzzey <martin.fuzzey@flowbird.group>
  Martin Kurbanov <mmkurbanov@sberdevices.ru>
  Mathias Nyman <mathias.nyman@linux.intel.com>
  Matthias Berndt <matthias_berndt@gmx.de>
  Michael Ellerman <mpe@ellerman.id.au>
  Michal Koutný <mkoutny@suse.com>
  Michal Schmidt <mschmidt@redhat.com>
  Michał Mirosław <mirq-linux@rere.qmqm.pl>
  Mingwei Zhang <mizhang@google.com>
  Miquel Raynal <miquel.raynal@bootlin.com>
  Nathan Chancellor <nathan@kernel.org>
  Neal Cardwell <ncardwell@google.com>
  Nicolas Dichtel <nicolas.dichtel@6wind.com>
  Niklas Schnelle <schnelle@linux.ibm.com>
  Pablo Neira Ayuso <pablo@netfilter.org>
  Paolo Abeni <pabeni@redhat.com>
  Paul Menzel <pmenzel@molgen.mpg.de>
  Pedro Tammela <pctammela@mojatatu.com>
  Peter Korsgaard <peter@korsgaard.com>
  Peter Rosin <peda@axentia.se>
  Peter Zijlstra (Intel) <peterz@infradead.org>
  Peter Zijlstra <peterz@infradead.org>
  Phil Elwell <phil@raspberrypi.com>
  Piyush Mehta <piyush.mehta@amd.com>
  Pucha Himasekhar Reddy <himasekharx.reddy.pucha@intel.com> (A Contingent worker at Intel)
  Puliang Lu <puliang.lu@fibocom.com>
  Rafael J. Wysocki <rafael.j.wysocki@intel.com>
  Rahul Rameshbabu <sergeantsagara@protonmail.com>
  René Rebe <rene@exactcode.de>
  Ricardo Cañuelo <ricardo.canuelo@collabora.com>
  Roger Pau Monne <roger.pau@citrix.com>
  Roger Pau Monné <roger.pau@citrix.com>
  Sasha Levin <sashal@kernel.org>
  Sean Christopherson <seanjc@google.com>
  Simon Horman <horms@kernel.org> # build-tested
  Slade Watkins <srw@sladewatkins.net>
  Stefan Schmidt <stefan@datenfreihafen.org>
  Stefan Wahren <wahrenst@gmx.net>
  Steffen Klassert <steffen.klassert@secunet.com>
  Steven Rostedt (Google) <rostedt@goodmis.org>
  Sudip Mukherjee <sudip.mukherjee@codethink.co.uk>
  Sunand <sunandchakradhar@gmail.com>
  Sunil V L <sunilvl@ventanamicro.com>
  Tamim Khan <tamim@fusetak.com>
  Tejun Heo <tj@kernel.org>
  Thierry Reding <thierry.reding@gmail.com>
  Thinh Nguyen <Thinh.Nguyen@synopsys.com>
  Thorsten Leemhuis <linux@leemhuis.info>
  Tony Lindgren <tony@atomide.com>
  Ulf Hansson <ulf.hansson@linaro.org>
  Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
  Vasily Gorbik <gor@linux.ibm.com>
  Vinod Koul <vkoul@kernel.org>
  Waiman Long <longman@redhat.com>
  Wei Liu <wei.liu@kernel.org>
  Wen Gong <quic_wgong@quicinc.com>
  Wesley Cheng <quic_wcheng@quicinc.com>
  Wolfram Sang <wsa@kernel.org>
  Xingxing Luo <xingxing.luo@unisoc.com>
  Xiubo Li <xiubli@redhat.com>
  Ying Hsu <yinghsu@chromium.org>
  Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
  Yuchung Cheng <ycheng@google.com>
  Zack Rusin <zackr@vmware.com>
  zelenat <zelenat@gmail.com>
  Zhang Changzhong <zhangchangzhong@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                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              starved 
 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                                 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


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
   02f78c59a0ed..86ea40e6ad22  86ea40e6ad22d9d7daa54b9e8167ad1e4a8a48ee -> tested/linux-5.4


From xen-devel-bounces@lists.xenproject.org Wed Oct 25 22:31:00 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 22:31:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623347.971134 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvmOh-0003fK-V0; Wed, 25 Oct 2023 22:30:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623347.971134; Wed, 25 Oct 2023 22:30: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 1qvmOh-0003fD-RH; Wed, 25 Oct 2023 22:30:43 +0000
Received: by outflank-mailman (input) for mailman id 623347;
 Wed, 25 Oct 2023 22:30: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=nm7K=GH=raptorengineering.com=sanastasio@srs-se1.protection.inumbo.net>)
 id 1qvmOg-0003f6-Cs
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 22:30:42 +0000
Received: from raptorengineering.com (mail.raptorengineering.com
 [23.155.224.40]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 1f0fefa5-7386-11ee-98d5-6d05b1d4d9a1;
 Thu, 26 Oct 2023 00:30:39 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 513EA82857E5;
 Wed, 25 Oct 2023 17:30:37 -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 U7XeP55xmWDl; Wed, 25 Oct 2023 17:30:36 -0500 (CDT)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 72DF08284F68;
 Wed, 25 Oct 2023 17:30: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 m-NCvOO2Qrb0; Wed, 25 Oct 2023 17:30:36 -0500 (CDT)
Received: from [10.11.0.3] (5.edge.rptsys.com [23.155.224.38])
 by mail.rptsys.com (Postfix) with ESMTPSA id A347182857E5;
 Wed, 25 Oct 2023 17:30: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: 1f0fefa5-7386-11ee-98d5-6d05b1d4d9a1
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com 72DF08284F68
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD;
	t=1698273036; bh=bC/dn8WvQwDgpRL52f+0Qr8Ahh6DQqcAahSto6u2hWc=;
	h=Message-ID:Date:MIME-Version:To:From;
	b=R2+hpp+8uAJZozUU8uq4qv5DkjRDdJzPO+1tl1AIR8D4DRcRlnmu/6pGab496qHNJ
	 nmqg/u+dg3+Nilfsw+/u1Vu+xo02yzSbUM44HWmNyd6z9QCP0fHRl+AfSYuFDhWjZf
	 JcYtA0q9Eh3eG6blzA1v7rbVIVh414+XeggwfF18=
X-Virus-Scanned: amavisd-new at rptsys.com
Message-ID: <75b1ba67-0dbd-5551-5170-66a556e17bbb@raptorengineering.com>
Date: Wed, 25 Oct 2023 17:30:34 -0500
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux ppc64le; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH v2 2/2] xen/ppc: Implement a basic exception handler
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.1697220184.git.sanastasio@raptorengineering.com>
 <dfd134a6c59f329b62d2ecfaa37d74d70f8d4d90.1697220184.git.sanastasio@raptorengineering.com>
 <a5db276d-6bc0-1fe6-6cdd-7c097308fdce@suse.com>
 <4da4a57b-06ae-dd66-e8b5-a388f7e492b3@raptorengineering.com>
 <0990f0b3-ff8a-105c-5cb7-643f72ece945@suse.com>
From: Shawn Anastasio <sanastasio@raptorengineering.com>
In-Reply-To: <0990f0b3-ff8a-105c-5cb7-643f72ece945@suse.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit

On 10/20/23 1:22 AM, Jan Beulich wrote:
> On 19.10.2023 22:02, Shawn Anastasio wrote:
>> On 10/18/23 10:43 AM, Jan Beulich wrote:
>>> On 13.10.2023 20:13, Shawn Anastasio wrote:
>>>> --- 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);
>>>> +}
>>>
>>> Please forgive my lack of PPC knowledge: There's no use of any address
>>> here afaict. Where's the link to (presumably) AIL_VECTOR_BASE? If that
>>> address is kind of magic, I'm then lacking a connection between
>>> XEN_VIRT_START and that constant. (If Xen needed moving around in
>>> address space, it would be nice if changing a single constant would
>>> suffice.)
>>>
>>
>> AIL_VECTOR_BASE is indeed a magic address defined by the ISA for AIL=3.
>> As for the second part of your question, I'm a bit confused as to what
>> you're asking. The ISRs are placed at a position relative to
>> the start of the .text.exceptions section (EXCEPTION_VECTORS_START), so
>> Xen can be arbitrarily shuffled around in address space as long as
>> EXCEPTION_VECTORS_START lies at or before AIL_VECTOR_BASE.
> 
> Well, AIL_VECTOR_BASE is #define-d to a plain constant, not derived
> from EXCEPTION_VECTORS_START. In turn EXCEPTION_VECTORS_START is
> #define-d to a plain constant in patch 1, not derived from
> XEN_VIRT_START. Therefore moving Xen around would require to change
> (at least) 3 #define-s afaict.
>

AIL_VECTOR_BASE needs to be a plain constant since it's fixed by the
ISA. EXCEPTION_VECTORS_START could be defined in terms of XEN_VIRT_START
I suppose, but that would require introducing another plain constant for
representing the offset of EXCEPTION_VECTORS_START from XEN_VIRT_START.

I think the current approach is reasonable, especially since patch 1
introduces a linker assertion that ensures that EXCEPTION_VECTORS_START
matches the actual location of _stext_exceptions, so if one was to
change Xen's address and forgot to change the #define they'd get a
build error.

If you would prefer this to be handled in a different way though, I'm
not opposed.

> Jan

Thanks,
Shawn


From xen-devel-bounces@lists.xenproject.org Wed Oct 25 22:34:35 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 22:34:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623351.971143 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvmSQ-0004R4-H3; Wed, 25 Oct 2023 22:34:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623351.971143; Wed, 25 Oct 2023 22:34: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 1qvmSQ-0004Qx-EX; Wed, 25 Oct 2023 22:34:34 +0000
Received: by outflank-mailman (input) for mailman id 623351;
 Wed, 25 Oct 2023 22:34: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=/NE+=GH=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qvmSO-0004Qb-SU
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 22:34:32 +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 aa1e5ad5-7386-11ee-98d5-6d05b1d4d9a1;
 Thu, 26 Oct 2023 00:34:31 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by ams.source.kernel.org (Postfix) with ESMTP id AE4BDB80D06;
 Wed, 25 Oct 2023 22:34:30 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 4C7ABC433C8;
 Wed, 25 Oct 2023 22:34: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: aa1e5ad5-7386-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1698273270;
	bh=U1q9U7VIUhhWOYDLPgRVssCY2R4rZk2p90wJs5u1tXY=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=bKbGTwBrc+8yR6NM6GV/78CVygw0/i/UJPbOZs7ZKf2wReadQKSdE+t3tou5dVTVz
	 8usJnkt9aJLrUjBRz2KfomwopNBsyrplWrARvLW41jx7J1TK2F/jgviY83Ohv38PAZ
	 0mpd261MpRReTKYgV20x938Jso7XS5wANViqwsgyzzm1MRe8ZoXL7Akw57ZBzG2ovn
	 LUcc4kHoq91dHSwIf6Cndsnog85IONZxCdyKBcRr50Sg8NuatJ2E91MI0PUIlclw5J
	 NNEAnpiexqRiauY6e7qHBdvZJ7ZiWGn6VQXNvbC7gW0MJtUtgQEltre94Pkdjw5uPw
	 B6kRhcFI5kVDQ==
Date: Wed, 25 Oct 2023 15:34: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: 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.cooper3@citrix.com, roger.pau@citrix.com, 
    Simone Ballarin <simone.ballarin@bugseng.com>, 
    Doug Goldstein <cardoe@cardoe.com>, 
    George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>, 
    Wei Liu <wl@xen.org>, Nicola Vetrini <nicola.vetrini@bugseng.com>
Subject: Re: [XEN PATCH][for-4.19 v3] xen: Add deviations for MISRA C:2012
 Rule 7.1
In-Reply-To: <78107fe9-de43-30b8-7423-240450bc0da8@suse.com>
Message-ID: <alpine.DEB.2.22.394.2310251532290.271731@ubuntu-linux-20-04-desktop>
References: <5e0f1bcd7b4325141e64a3c2d581034956b42293.1698136547.git.nicola.vetrini@bugseng.com> <alpine.DEB.2.22.394.2310241329390.271731@ubuntu-linux-20-04-desktop> <78107fe9-de43-30b8-7423-240450bc0da8@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, 25 Oct 2023, Jan Beulich wrote:
> On 24.10.2023 22:30, Stefano Stabellini wrote:
> > On Tue, 24 Oct 2023, Nicola Vetrini wrote:
> >> As specified in rules.rst, these constants can be used
> >> in the code.
> >>
> >> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
> >> ---
> >> Changes in v2:
> >> - replace some SAF deviations with configurations
> >> Changes in v3:
> >> - refine configurations and justifications
> >> ---
> >>  automation/eclair_analysis/ECLAIR/deviations.ecl | 10 ++++++----
> >>  docs/misra/deviations.rst                        |  5 +++++
> >>  docs/misra/safe.json                             |  8 ++++++++
> >>  xen/arch/x86/hvm/svm/emulate.c                   |  6 +++---
> >>  xen/common/inflate.c                             |  4 ++--
> >>  5 files changed, 24 insertions(+), 9 deletions(-)
> >>
> >> diff --git a/automation/eclair_analysis/ECLAIR/deviations.ecl b/automation/eclair_analysis/ECLAIR/deviations.ecl
> >> index fa56e5c00a27..ea5e0eb1813f 100644
> >> --- a/automation/eclair_analysis/ECLAIR/deviations.ecl
> >> +++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
> >> @@ -85,10 +85,12 @@ conform to the directive."
> >>  # Series 7.
> >>  #
> >>  
> >> --doc_begin="Usage of the following constants is safe, since they are given as-is
> >> -in the inflate algorithm specification and there is therefore no risk of them
> >> -being interpreted as decimal constants."
> >> --config=MC3R1.R7.1,literals={safe, "^0(007|37|070|213|236|300|321|330|331|332|333|334|335|337|371)$"}
> >> +-doc_begin="It is safe to use certain octal constants the way they are defined in
> >> +specifications, manuals, and algorithm descriptions."
> >> +-file_tag+={x86_svm_h, "^xen/arch/x86/hvm/svm/svm\\.h$"}
> >> +-file_tag+={x86_emulate_c, "^xen/arch/x86/hvm/svm/emulate\\.c$"}
> >> +-config=MC3R1.R7.1,reports+={safe, "any_area(any_loc(any_exp(file(x86_svm_h)&&macro(^INSTR_ENC$))))"}
> >> +-config=MC3R1.R7.1,reports+={safe, "any_area(text(^.*octal-ok.*$)&&any_loc(any_exp(file(x86_emulate_c)&&macro(^MASK_EXTR$))))"}
> >>  -doc_end
> >>  
> >>  -doc_begin="Violations in files that maintainers have asked to not modify in the
> >> diff --git a/docs/misra/deviations.rst b/docs/misra/deviations.rst
> >> index 8511a189253b..26c6dbbc9ffe 100644
> >> --- a/docs/misra/deviations.rst
> >> +++ b/docs/misra/deviations.rst
> >> @@ -90,6 +90,11 @@ Deviations related to MISRA C:2012 Rules:
> >>           - __emulate_2op and __emulate_2op_nobyte
> >>           - read_debugreg and write_debugreg
> >>  
> >> +   * - R7.1
> >> +     - It is safe to use certain octal constants the way they are defined in
> >> +       specifications, manuals, and algorithm descriptions.
> > 
> > I think we should add that these cases have "octal-ok" as a in-code
> > comment. Everything else looks OK so this small change could be done on
> > commit.
> 
> But that needs wording carefully, as it doesn't hold across the board:
> Right now relevant MASK_EXTR() uses gain such comments, but INSTR_ENC()
> ones (deliberately) don't.

What about:

* - R7.1
  - It is safe to use certain octal constants the way they are defined
    in specifications, manuals, and algorithm descriptions. Such places
    are marked safe with a /* octal-ok */ in-code comment, or with a SAF
    comment (see safe.json).


From xen-devel-bounces@lists.xenproject.org Wed Oct 25 22:35:28 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 22:35:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623354.971154 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvmTH-0005B9-Qh; Wed, 25 Oct 2023 22:35:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623354.971154; Wed, 25 Oct 2023 22: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 1qvmTH-0005B2-NJ; Wed, 25 Oct 2023 22:35:27 +0000
Received: by outflank-mailman (input) for mailman id 623354;
 Wed, 25 Oct 2023 22:35: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=LJSz=GH=casper.srs.infradead.org=BATV+85b1c44ac99574f3713d+7367+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qvmTF-0005As-Qv
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 22:35:26 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id ca030c83-7386-11ee-98d5-6d05b1d4d9a1;
 Thu, 26 Oct 2023 00:35:24 +0200 (CEST)
Received: from [2001:8b0:10b:5:5bd0:63a6:23b2:1881]
 (helo=u3832b3a9db3152.ant.amazon.com)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qvmTB-00BNDG-3I; Wed, 25 Oct 2023 22:35: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: ca030c83-7386-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=MIME-Version:Content-Type:References:
	In-Reply-To:Date:Cc:To:From:Subject:Message-ID:Sender:Reply-To:
	Content-Transfer-Encoding:Content-ID:Content-Description;
	bh=9baH5gzIa17i/V8H1jv6hgc1AFByOkOX/UACnlWXIxE=; b=HoaGrB2xWvEiWffCQn3J51WG7X
	/dFi+P2Tto77YhWA50yB2Y1mJte1v039TqeuYpKvv3h1gJEBhtF6e/zV1dHKQF+kxpSzoxO7Kfvpy
	3WXRLgUZIGY64VyEbiIj1KCsk8SfGnWjBi7vKSZZhZo0JSJfOYeDSpm05Uoe+leuszT60Ty1Ed+P6
	eueucok0d3do4ENxk4nukDZZw2ewSICvEZ+YScKL1knDaCLw+xzeb+kAbNvQUtynVnC7aMb1OdBZk
	hDDZLk9rzFTYsH9dfBHStc+PAAzPgZM7YSiqPXn2BcwQ1C36A7M21PzQODbtQ5lZHcIPRO01fNxI7
	CprBo73A==;
Message-ID: <c0b7a887113b737fa85400967aaf9a7afd564766.camel@infradead.org>
Subject: Re: Lockdep show 6.6-rc regression in Xen HVM CPU hotplug
From: David Woodhouse <dwmw2@infradead.org>
To: Juergen Gross <jgross@suse.com>, xen-devel
 <xen-devel@lists.xenproject.org>,  paulmck <paulmck@kernel.org>
Cc: Stefano Stabellini <sstabellini@kernel.org>, Oleksandr Tyshchenko
 <oleksandr_tyshchenko@epam.com>, Rahul Singh <rahul.singh@arm.com>, Boris
 Ostrovsky <boris.ostrovsky@oracle.com>, Thomas Gleixner <tglx@linutronix.de>
Date: Wed, 25 Oct 2023 23:35:20 +0100
In-Reply-To: <22923f4cc0b0202a05390e827526214a336db1ca.camel@infradead.org>
References: <b28fff67f7501e4713af9b8c777f853cc44d6c6f.camel@infradead.org>
	 <c75a3d53-fc36-46a6-b781-f16e1e5c6226@suse.com>
	 <662772ec0d43cce9233680d67d7114bc8b0ed48d.camel@infradead.org>
	 <8e6c144f-f808-4603-8de4-76decc3c2838@suse.com>
	 <0a2725ee-a1a8-43e4-b117-f474ffb392a8@suse.com>
	 <f527753bab9fd48e3a3fdc060c33bba9e2a14324.camel@infradead.org>
	 <d4574364-4985-4ba1-8365-f4360860ad0d@suse.com>
	 <22923f4cc0b0202a05390e827526214a336db1ca.camel@infradead.org>
Content-Type: multipart/signed; micalg="sha-256"; protocol="application/pkcs7-signature";
	boundary="=-MUeOKFkFRJWHi1UhORMT"
User-Agent: Evolution 3.44.4-0ubuntu2 
MIME-Version: 1.0
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html


--=-MUeOKFkFRJWHi1UhORMT
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Wed, 2023-10-25 at 17:10 +0100, David Woodhouse wrote:
> On Wed, 2023-10-25 at 09:19 +0200, Juergen Gross wrote:
> > On 24.10.23 15:45, David Woodhouse wrote:
> > > On Tue, 2023-10-24 at 14:08 +0200, Juergen Gross wrote:
> > > >=20
> > > > > I can probably change xen_send_IPI_one() to not need irq_get_chip=
_data().
> > > >=20
> > > > David, could you test the attached patch, please? Build tested only=
.
> > >=20
> > > No longer whines when offlining CPU1.
> > >=20
> > > Still triple-faults when bringing it back online. Or if I remove the
> > > lockdep_assert_irqs_disabled() from load_current_idt(), gives the sam=
e
> > > warnings as before, all on the same theme about IRQs being enabled wh=
en
> > > they shouldn't be.
> >=20
> > I think this is a false positive. No idea (again) why it would trigger =
only
> > with my patch applied.
> >=20
> > The problem seems to be that lockdep_assert_irqs_disabled() doesn't kno=
w
> > about the "cli" at the very beginning of trampoline_start().
>=20
> Right. I have no idea why your patch would make any difference to that.
> Or why it would appear only on Xen, for that matter? It doesn't even
> happen in Xen emulation under Qemu/KVM, strangely.
>=20
> (I *do* have a different failure mode under KVM, where CPU1 doesn't
> seem to be receiving interrupts at all after bringing it back online,
> but only in the per-vCPU local APIC upcall mode. Still poking at that,
> which is the reason I was testing any of this in the first place)

FWIW I've finally worked out the failure mode under KVM which had me
looking at hotplug in the first place (which is because Xen checks
vcpu_info->evtchn_upcall_pending when enabling the local APIC and
injects the vector if so, while KVM wasn't doing that, so during
onlining when the vCPU sets up TIMER_VIRQ *before* setting up the local
APIC, the callback was getting lost).

I still have *no* idea why lockdep is giving us those false positives
after your patch, and no idea why it happens only on real Xen and not
in QEMU.



--=-MUeOKFkFRJWHi1UhORMT
Content-Type: application/pkcs7-signature; name="smime.p7s"
Content-Disposition: attachment; filename="smime.p7s"
Content-Transfer-Encoding: base64

MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgEFADCABgkqhkiG9w0BBwEAAKCCEkQw
ggYQMIID+KADAgECAhBNlCwQ1DvglAnFgS06KwZPMA0GCSqGSIb3DQEBDAUAMIGIMQswCQYDVQQG
EwJVUzETMBEGA1UECBMKTmV3IEplcnNleTEUMBIGA1UEBxMLSmVyc2V5IENpdHkxHjAcBgNVBAoT
FVRoZSBVU0VSVFJVU1QgTmV0d29yazEuMCwGA1UEAxMlVVNFUlRydXN0IFJTQSBDZXJ0aWZpY2F0
aW9uIEF1dGhvcml0eTAeFw0xODExMDIwMDAwMDBaFw0zMDEyMzEyMzU5NTlaMIGWMQswCQYDVQQG
EwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYD
VQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50
aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC
AQEAyjztlApB/975Rrno1jvm2pK/KxBOqhq8gr2+JhwpKirSzZxQgT9tlC7zl6hn1fXjSo5MqXUf
ItMltrMaXqcESJuK8dtK56NCSrq4iDKaKq9NxOXFmqXX2zN8HHGjQ2b2Xv0v1L5Nk1MQPKA19xeW
QcpGEGFUUd0kN+oHox+L9aV1rjfNiCj3bJk6kJaOPabPi2503nn/ITX5e8WfPnGw4VuZ79Khj1YB
rf24k5Ee1sLTHsLtpiK9OjG4iQRBdq6Z/TlVx/hGAez5h36bBJMxqdHLpdwIUkTqT8se3ed0PewD
ch/8kHPo5fZl5u1B0ecpq/sDN/5sCG52Ds+QU5O5EwIDAQABo4IBZDCCAWAwHwYDVR0jBBgwFoAU
U3m/WqorSs9UgOHYm8Cd8rIDZsswHQYDVR0OBBYEFAnA8vwL2pTbX/4r36iZQs/J4K0AMA4GA1Ud
DwEB/wQEAwIBhjASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEF
BQcDBDARBgNVHSAECjAIMAYGBFUdIAAwUAYDVR0fBEkwRzBFoEOgQYY/aHR0cDovL2NybC51c2Vy
dHJ1c3QuY29tL1VTRVJUcnVzdFJTQUNlcnRpZmljYXRpb25BdXRob3JpdHkuY3JsMHYGCCsGAQUF
BwEBBGowaDA/BggrBgEFBQcwAoYzaHR0cDovL2NydC51c2VydHJ1c3QuY29tL1VTRVJUcnVzdFJT
QUFkZFRydXN0Q0EuY3J0MCUGCCsGAQUFBzABhhlodHRwOi8vb2NzcC51c2VydHJ1c3QuY29tMA0G
CSqGSIb3DQEBDAUAA4ICAQBBRHUAqznCFfXejpVtMnFojADdF9d6HBA4kMjjsb0XMZHztuOCtKF+
xswhh2GqkW5JQrM8zVlU+A2VP72Ky2nlRA1GwmIPgou74TZ/XTarHG8zdMSgaDrkVYzz1g3nIVO9
IHk96VwsacIvBF8JfqIs+8aWH2PfSUrNxP6Ys7U0sZYx4rXD6+cqFq/ZW5BUfClN/rhk2ddQXyn7
kkmka2RQb9d90nmNHdgKrwfQ49mQ2hWQNDkJJIXwKjYA6VUR/fZUFeCUisdDe/0ABLTI+jheXUV1
eoYV7lNwNBKpeHdNuO6Aacb533JlfeUHxvBz9OfYWUiXu09sMAviM11Q0DuMZ5760CdO2VnpsXP4
KxaYIhvqPqUMWqRdWyn7crItNkZeroXaecG03i3mM7dkiPaCkgocBg0EBYsbZDZ8bsG3a08LwEsL
1Ygz3SBsyECa0waq4hOf/Z85F2w2ZpXfP+w8q4ifwO90SGZZV+HR/Jh6rEaVPDRF/CEGVqR1hiuQ
OZ1YL5ezMTX0ZSLwrymUE0pwi/KDaiYB15uswgeIAcA6JzPFf9pLkAFFWs1QNyN++niFhsM47qod
x/PL+5jR87myx5uYdBEQkkDc+lKB1Wct6ucXqm2EmsaQ0M95QjTmy+rDWjkDYdw3Ms6mSWE3Bn7i
5ZgtwCLXgAIe5W8mybM2JzCCBhQwggT8oAMCAQICEQDGvhmWZ0DEAx0oURL6O6l+MA0GCSqGSIb3
DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYD
VQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28g
UlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMB4XDTIyMDEwNzAw
MDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJARYTZHdtdzJAaW5mcmFkZWFkLm9y
ZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3GpC2bomUqk+91wLYBzDMcCj5C9m6
oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZHh7htyAkWYVoFsFPrwHounto8xTsy
SSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT9YgcBqKCo65pTFmOnR/VVbjJk4K2
xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNjP+qDrh0db7PAjO1D4d5ftfrsf+kd
RR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy2U+eITZ5LLE5s45mX2oPFknWqxBo
bQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3BgBEmfsYWlBXO8rVXfvPgLs32VdV
NZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/7auNVRmPB3v5SWEsH8xi4Bez2V9U
KxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmdlFYhAflWKQ03Ufiu8t3iBE3VJbc2
5oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9aelIl6vtbhMA+l0nfrsORMa4kobqQ5
C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMBAAGjggHMMIIByDAfBgNVHSMEGDAW
gBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeDMcimo0oz8o1R1Nver3ZVpSkwDgYD
VR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYwFAYIKwYBBQUHAwQGCCsGAQUFBwMC
MEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYBBQUHAgEWF2h0dHBzOi8vc2VjdGln
by5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9jcmwuc2VjdGlnby5jb20vU2VjdGln
b1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1haWxDQS5jcmwwgYoGCCsGAQUFBwEB
BH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdvLmNvbS9TZWN0aWdvUlNBQ2xpZW50
QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAjBggrBgEFBQcwAYYXaHR0cDovL29j
c3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5mcmFkZWFkLm9yZzANBgkqhkiG9w0B
AQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQvQ/fzPXmtR9t54rpmI2TfyvcKgOXp
qa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvIlSPrzIB4Z2wyIGQpaPLlYflrrVFK
v9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9ChWFfgSXvrWDZspnU3Gjw/rMHrGnql
Htlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0whpBtXdyDjzBtQTaZJ7zTT/vlehc/
tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9IzCCBhQwggT8oAMCAQICEQDGvhmW
Z0DEAx0oURL6O6l+MA0GCSqGSIb3DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3Jl
YXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0
ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJl
IEVtYWlsIENBMB4XDTIyMDEwNzAwMDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJ
ARYTZHdtdzJAaW5mcmFkZWFkLm9yZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3
GpC2bomUqk+91wLYBzDMcCj5C9m6oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZH
h7htyAkWYVoFsFPrwHounto8xTsySSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT
9YgcBqKCo65pTFmOnR/VVbjJk4K2xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNj
P+qDrh0db7PAjO1D4d5ftfrsf+kdRR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy
2U+eITZ5LLE5s45mX2oPFknWqxBobQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3
BgBEmfsYWlBXO8rVXfvPgLs32VdVNZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/
7auNVRmPB3v5SWEsH8xi4Bez2V9UKxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmd
lFYhAflWKQ03Ufiu8t3iBE3VJbc25oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9ae
lIl6vtbhMA+l0nfrsORMa4kobqQ5C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMB
AAGjggHMMIIByDAfBgNVHSMEGDAWgBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeD
Mcimo0oz8o1R1Nver3ZVpSkwDgYDVR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYw
FAYIKwYBBQUHAwQGCCsGAQUFBwMCMEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYB
BQUHAgEWF2h0dHBzOi8vc2VjdGlnby5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9j
cmwuc2VjdGlnby5jb20vU2VjdGlnb1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1h
aWxDQS5jcmwwgYoGCCsGAQUFBwEBBH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdv
LmNvbS9TZWN0aWdvUlNBQ2xpZW50QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAj
BggrBgEFBQcwAYYXaHR0cDovL29jc3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5m
cmFkZWFkLm9yZzANBgkqhkiG9w0BAQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQv
Q/fzPXmtR9t54rpmI2TfyvcKgOXpqa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvI
lSPrzIB4Z2wyIGQpaPLlYflrrVFKv9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9Ch
WFfgSXvrWDZspnU3Gjw/rMHrGnqlHtlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0w
hpBtXdyDjzBtQTaZJ7zTT/vlehc/tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9
IzGCBMcwggTDAgEBMIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVz
dGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMT
NVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEA
xr4ZlmdAxAMdKFES+jupfjANBglghkgBZQMEAgEFAKCCAeswGAYJKoZIhvcNAQkDMQsGCSqGSIb3
DQEHATAcBgkqhkiG9w0BCQUxDxcNMjMxMDI1MjIzNTIwWjAvBgkqhkiG9w0BCQQxIgQgQ3g5n7I8
0Pwcs9ovRifuC3t1TKO/nUGNLbzOtN5bbN0wgb0GCSsGAQQBgjcQBDGBrzCBrDCBljELMAkGA1UE
BhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEYMBYG
A1UEChMPU2VjdGlnbyBMaW1pdGVkMT4wPAYDVQQDEzVTZWN0aWdvIFJTQSBDbGllbnQgQXV0aGVu
dGljYXRpb24gYW5kIFNlY3VyZSBFbWFpbCBDQQIRAMa+GZZnQMQDHShREvo7qX4wgb8GCyqGSIb3
DQEJEAILMYGvoIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVy
MRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNl
Y3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEAxr4Z
lmdAxAMdKFES+jupfjANBgkqhkiG9w0BAQEFAASCAgAr4aDPKO893tTs/egecX4xAJZ3lRXi1pws
WZPR0PKmc65mrYLji+Fr/1HWHrn/Zsjn3aOnOBsgaxvpZ6QO0ZaxLUwfnWIn4s9k1cZlr9WhEzQO
vfSoGt0ed2N9Ftuwa3ZiGsOptFjhxXiVyFGqeNBOYGPFIe/mtOpMX9mlffaGLUKwWv6L0TxbAZqa
haEWjbcmOlLxu4YEulM43iBpQNk4tsBNO0w7mqdbuUszwpmV42xuCwOnlRx/uhMHOf5Hj8PPNDUF
BOCa/SD5hyilk1GD/viHtToRC8CZh8gTnsGI+AvYFV5xqDlEIe0L9MR6+nW2Rk0TjT9xj4soMvvP
MAeIj2YSzdEz5uwy88h0V3XhqjsM5hjdTcaRZU/S3FSntrRG6/2zx/S1gpotJAfEFcxuU3QVo7Qh
oGO8uex3G8aE8i3OLUzvqsDUalo+HLzhgYynFoVYFl7dzulZYFQ+Hpek1HBEhFUi1LVBWswWPTHZ
ULa6LHkLy7E8ha6DCokU5qk8nXYjpVZ1yF49fgpdvV1T3YlZFF4CEaynseEB9NyAoEcasX9y53dv
GVBxtOkdjg6p1+JWnMTjfJoKgLQ1pkApP8uZXUlibV+2SCFV3bJ3WqLNIHd+9eXEMmgMlP078Vbe
WAoRFBu2NYReAWdEvHOM7ovOMRgtsH8M4aAZsbHqTwAAAAAAAA==


--=-MUeOKFkFRJWHi1UhORMT--


From xen-devel-bounces@lists.xenproject.org Wed Oct 25 22:36:57 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 22:36:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623359.971164 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvmUf-0005uX-4l; Wed, 25 Oct 2023 22:36:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623359.971164; Wed, 25 Oct 2023 22:36: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 1qvmUf-0005uQ-1o; Wed, 25 Oct 2023 22:36:53 +0000
Received: by outflank-mailman (input) for mailman id 623359;
 Wed, 25 Oct 2023 22:36: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=/NE+=GH=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qvmUe-0005uK-J8
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 22:36:52 +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 fd2b4658-7386-11ee-9b0e-b553b5be7939;
 Thu, 26 Oct 2023 00:36:50 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by ams.source.kernel.org (Postfix) with ESMTP id 2E520B829A4;
 Wed, 25 Oct 2023 22:36:50 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id E458BC433C7;
 Wed, 25 Oct 2023 22:36: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: fd2b4658-7386-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1698273409;
	bh=rsUDCadxjPCXqAeQhnAy6kBrif27IG+2xSJijqWeAqc=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=NWX+Afx2SeYoX/lG5Xo+GIlqPzQqhiNW7h44bMwB5yl9y5COTwXSYisO6UyGBomS0
	 p06CGLLn+kLTttbZsiXE1U6mX+qm8lCT0f85vJ2C8PYPoKvBy1GkLlXirQKoA3wwoJ
	 fSQ2184Sg9CXwfcXwtBH4k91zYgz9f/QLdXR+tH/HdUtp2MucAS8dEcCEwKw0E8Ol1
	 qrQeshC2kjC3IH9lUV6SdOXHhxM9TSqluee4e463hrckT1mjBS3IRVz7OUfKuja7oP
	 mmYL6G7ElZHzbQT9TsFvrLZluil0KSxyTN3rx0LacZG7Q4D+BxZGuH7A5zhXJFFu31
	 ZFa0rSC2j+mcA==
Date: Wed, 25 Oct 2023 15:36: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: Stefano Stabellini <sstabellini@kernel.org>, 
    Jan Beulich <jbeulich@suse.com>, michal.orzel@amd.com, 
    xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, 
    consulting@bugseng.com, andrew.cooper3@citrix.com, roger.pau@citrix.com, 
    Wei Liu <wl@xen.org>, Jun Nakajima <jun.nakajima@intel.com>, 
    Kevin Tian <kevin.tian@intel.com>, xen-devel@lists.xenproject.org
Subject: Re: [XEN PATCH][for-4.19 v4 3/8] x86: add deviation comments for
 asm-only functions
In-Reply-To: <d60e17379fbfdb1288288ee079113a17@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2310251535320.271731@ubuntu-linux-20-04-desktop>
References: <cover.1698053876.git.nicola.vetrini@bugseng.com> <36d24b3a3e264f0e0b265b4f68d6432a143d64cd.1698053876.git.nicola.vetrini@bugseng.com> <a8370e98-1cb6-8fde-9458-e579047dd607@suse.com> <2d92ef1f753165e2fa9cc7c04c219217@bugseng.com>
 <52422128-156d-5d6c-46b2-261b1c7e85c0@suse.com> <734cc13409b44f709649895d76d388e2@bugseng.com> <alpine.DEB.2.22.394.2310241249080.271731@ubuntu-linux-20-04-desktop> <d60e17379fbfdb1288288ee079113a17@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, 25 Oct 2023, Nicola Vetrini wrote:
> On 24/10/2023 21:50, Stefano Stabellini wrote:
> > On Tue, 24 Oct 2023, Nicola Vetrini wrote:
> > > On 24/10/2023 10:14, Jan Beulich wrote:
> > > > On 24.10.2023 10:01, Nicola Vetrini wrote:
> > > > > On 24/10/2023 09:50, Jan Beulich wrote:
> > > > > > On 23.10.2023 11:56, Nicola Vetrini wrote:
> > > > > > > As stated in rules.rst, functions used only in asm code
> > > > > > > are allowed to have no prior declaration visible when being
> > > > > > > defined, hence these functions are deviated.
> > > > > > > This also fixes violations of MISRA C:2012 Rule 8.4.
> > > > > > >
> > > > > > > Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
> > > > > > > Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
> > > > > > > ---
> > > > > > > Changes in v3:
> > > > > > > - added SAF deviations for vmx counterparts to svm functions.
> > > > > >
> > > > > > Same comment regarding the R-b here as for patch 2.
> > > > > >
> > > > > > > --- a/xen/arch/x86/hvm/svm/intr.c
> > > > > > > +++ b/xen/arch/x86/hvm/svm/intr.c
> > > > > > > @@ -123,6 +123,7 @@ static void svm_enable_intr_window(struct vcpu
> > > *v,
> > > > > > > struct hvm_intack intack)
> > > > > > >          vmcb, general1_intercepts | GENERAL1_INTERCEPT_VINTR);
> > > > > > >  }
> > > > > > >
> > > > > > > +/* SAF-1-safe */
> > > > > > >  void svm_intr_assist(void)
> > > > > > >  {
> > > > > > >      struct vcpu *v = current;
> > > > > >
> > > > > > Linux has the concept of "asmlinkage" for functions interfacing C
> > > and
> > > > > > assembly. Was it considered to use that - even if expanding to
> > > nothing
> > > > > > for all present architectures - as a way to annotate affected
> > > > > > definitions
> > > > > > in place of the SAF-*-safe comments?
> > > > >
> > > > > It was proposed by Julien a while ago (I think it the thread on
> > > > > deviations.rst) to define
> > > > > a macro asmcall that expands to nothing, to mark all such functions.
> > > > > Right now, it's not
> > > > > strictly necessary (given that there are already some uses of SAF in
> > > > > Stefano's for-4.19 branch.
> > > >
> > > > Can this then be revisited please before any such reaches staging?
> > > >
> > > > Jan
> > > 
> > > I'll let Stefano answer this one.
> > 
> > Yes it can. If Nicola sends new patches I'll make sure to remove the
> > corresponding ones from for-4.19.
> > 
> > Nicola, you might want to send me privately the list of commits to take
> > out from for-4.19.
> 
> Actually I checked: the involved SAF comments are already in staging,
> specifically all
> were part of commit 5a415ef2b24d578d29479e38abda3d5285b9afed

OK. In that case we can still use the asmcall macro to deviate/fix new
violations. I suggest we do that. At some point anyone can go ahead and
replace those SAF comments with asmcall macros.


From xen-devel-bounces@lists.xenproject.org Wed Oct 25 22:38:30 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 22:38:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623362.971174 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvmWD-0006rS-Ec; Wed, 25 Oct 2023 22:38:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623362.971174; Wed, 25 Oct 2023 22:38: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 1qvmWD-0006rL-BZ; Wed, 25 Oct 2023 22:38:29 +0000
Received: by outflank-mailman (input) for mailman id 623362;
 Wed, 25 Oct 2023 22:38: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=/NE+=GH=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qvmWC-0006rD-MF
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 22:38:28 +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 368c678d-7387-11ee-98d5-6d05b1d4d9a1;
 Thu, 26 Oct 2023 00:38: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 236186319B;
 Wed, 25 Oct 2023 22:38:26 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 0EE80C433C8;
 Wed, 25 Oct 2023 22:38:23 +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: 368c678d-7387-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1698273505;
	bh=YuNHdw8A/UNYaHfQLHZoQpn05c/g+xHoSePvYbdlawk=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=rl9BUDJbdd3S0uqO0b7fmB4MtG/b3hyLk0O+KXilF98wmFP3oTBogUwEPRD1M+vWV
	 h92iK/BmHc0UEx8jPZhCEaL2+vJf/30lZQ8+rKj398EmMFKE3x0/8O0R7bym0fYSjw
	 z0X47jYcjJjcH+o2awyxZ8YYolP/vf6c3XRWVObCFNhs995ei0lHKFBSraQsXxptAJ
	 3YmkHo9JOWMwXQAsyx1JvVAzLe7qL4j1vnrKARTh6PLoWARrQ1fr3RKL8ewah8GNXG
	 XOrVbAjIM/rBN/VZdKyL3T7qWdXaFh1tesGKJGTsHEGVg1pUT24b3k+fB+nmEBuQ8+
	 giy+0ZgQ3Tyvw==
Date: Wed, 25 Oct 2023 15:38:22 -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>, 
    Stefano Stabellini <sstabellini@kernel.org>, michal.orzel@amd.com, 
    xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, 
    consulting@bugseng.com, andrew.cooper3@citrix.com, roger.pau@citrix.com, 
    Simone Ballarin <simone.ballarin@bugseng.com>, 
    Doug Goldstein <cardoe@cardoe.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][for-4.19 v3 1/8] xen/include: add macro LOWEST_BIT
In-Reply-To: <96dd7efb-c214-2155-c5d1-3b9a47c10d33@suse.com>
Message-ID: <alpine.DEB.2.22.394.2310251537460.271731@ubuntu-linux-20-04-desktop>
References: <cover.1697815135.git.nicola.vetrini@bugseng.com> <546cf30aa43d6d0687a9a6c6d23b11128e5783e8.1697815135.git.nicola.vetrini@bugseng.com> <f504772a-68b4-fbfa-e7d4-8d22992c7944@suse.com> <f23a1f95916bd61ddcd5002428d8876c@bugseng.com>
 <6d113a237846c7a41aa083e806f172e7@bugseng.com> <5475d9e5-ec1c-7f71-ee77-59ec2e6ee01e@suse.com> <alpine.DEB.2.22.394.2310231340320.3516@ubuntu-linux-20-04-desktop> <dd33e92f-03aa-cf3c-23d7-dcf9cce23c8e@suse.com> <2f88afb2383b5fdecf83d311ebe69bb4@bugseng.com>
 <96dd7efb-c214-2155-c5d1-3b9a47c10d33@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, 25 Oct 2023, Jan Beulich wrote:
> On 25.10.2023 16:50, Nicola Vetrini wrote:
> > Ok, I'll send a revised version using MASK_LOWEST_BIT, taking into 
> > account also the
> > other comments about the explanation on the macro definition
> > (which some IDEs even show when hovering on its usage, which could 
> > partially address
> > the latter concern).
> 
> You're of course free to do so, but since - as indicated before -
> MASK_LOWEST_BIT() imo isn't a better name than LOWEST_BIT(), I'll
> continue to object.

Jan if you are OK with that I'll ask Julien to break the tie and pick
the name to use. Julien can you please help us move forward?


From xen-devel-bounces@lists.xenproject.org Wed Oct 25 22:41:31 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 22:41:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623370.971184 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvmZ8-0008LZ-0W; Wed, 25 Oct 2023 22:41:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623370.971184; Wed, 25 Oct 2023 22:41: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 1qvmZ7-0008LS-U2; Wed, 25 Oct 2023 22:41:29 +0000
Received: by outflank-mailman (input) for mailman id 623370;
 Wed, 25 Oct 2023 22:41: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=nm7K=GH=raptorengineering.com=sanastasio@srs-se1.protection.inumbo.net>)
 id 1qvmZ6-0008LH-6A
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 22:41:28 +0000
Received: from raptorengineering.com (mail.raptorengineering.com
 [23.155.224.40]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id a0c77e2f-7387-11ee-9b0e-b553b5be7939;
 Thu, 26 Oct 2023 00:41:25 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 766C082858AF;
 Wed, 25 Oct 2023 17:41:24 -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 7LfU19WLdtAS; Wed, 25 Oct 2023 17:41:23 -0500 (CDT)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id BEE1482858BE;
 Wed, 25 Oct 2023 17:41:23 -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 znXbM_DcxfIw; Wed, 25 Oct 2023 17:41:23 -0500 (CDT)
Received: from raptor-ewks-026.2lan (5.edge.rptsys.com [23.155.224.38])
 by mail.rptsys.com (Postfix) with ESMTPSA id 3F5F882857E5;
 Wed, 25 Oct 2023 17:41:23 -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: a0c77e2f-7387-11ee-9b0e-b553b5be7939
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com BEE1482858BE
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD;
	t=1698273683; bh=3CIntRKcXOt7QoCjse2/hGyBC/GT4jPzfc8Z1vriXwk=;
	h=From:To:Date:Message-Id:MIME-Version;
	b=pDm9K3bkxEP4ti1NA3yqfNgZq9JOGF2OZ5Ct7kI+9JmuZ1gT3OtGCBvccam1wjwAn
	 La/wZadbPgY6cBR4e5AekQdYzjCQ9Z8negtpzGhKI+bzt/9hsLxOhQQJI9j2SFHBQw
	 FeGgpPtOKDnroSAW50lICAzsAmnw91TqCt0OrnRE=
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 0/2] Early exception handlers on Power
Date: Wed, 25 Oct 2023 17:41:02 -0500
Message-Id: <cover.1698273423.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.

Thanks,

Shawn Anastasio (2):
  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  | 129 +++++++++++++++++++++++++++
 xen/arch/ppc/ppc64/exceptions.c      | 102 +++++++++++++++++++++
 xen/arch/ppc/setup.c                 |  11 +++
 xen/arch/ppc/xen.lds.S               |   7 ++
 8 files changed, 286 insertions(+)
 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 Wed Oct 25 22:41:31 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 22:41:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623371.971190 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvmZ8-0008Ow-A5; Wed, 25 Oct 2023 22:41:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623371.971190; Wed, 25 Oct 2023 22:41: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 1qvmZ8-0008Nk-4d; Wed, 25 Oct 2023 22:41:30 +0000
Received: by outflank-mailman (input) for mailman id 623371;
 Wed, 25 Oct 2023 22:41: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=nm7K=GH=raptorengineering.com=sanastasio@srs-se1.protection.inumbo.net>)
 id 1qvmZ6-0008LH-Rl
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 22:41:28 +0000
Received: from raptorengineering.com (mail.raptorengineering.com
 [23.155.224.40]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id a0fb7bf5-7387-11ee-9b0e-b553b5be7939;
 Thu, 26 Oct 2023 00:41:26 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id EFF8382858BE;
 Wed, 25 Oct 2023 17:41:24 -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 Yf4w_PtXPaho; Wed, 25 Oct 2023 17:41:24 -0500 (CDT)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 2A89782857E5;
 Wed, 25 Oct 2023 17:41:24 -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 uTmIplDbMA0u; Wed, 25 Oct 2023 17:41:24 -0500 (CDT)
Received: from raptor-ewks-026.2lan (5.edge.rptsys.com [23.155.224.38])
 by mail.rptsys.com (Postfix) with ESMTPSA id B828482858AF;
 Wed, 25 Oct 2023 17:41:23 -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: a0fb7bf5-7387-11ee-9b0e-b553b5be7939
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com 2A89782857E5
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD;
	t=1698273684; bh=zKC200HDJpwlBO1CM8epP2u5TjCJL8NmxYMqlWHuHog=;
	h=From:To:Date:Message-Id:MIME-Version;
	b=A+d63t6KEThf3iZbRrX0ZfEWpuW8hbYxXWjduU0Aeu3/5vyjzR3qjrQULQssItZMY
	 XZdfr7fNv+5G6ybar4tbcs/Ajru/q1MDjv7CluDCauhR6l/J7ftFnQVJR7p8h51+SX
	 plmY9s4W6nbNS1TXvoNbZMqVIXQaBsom5wDgp4t4=
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 1/2] xen/ppc: Add .text.exceptions section for exception vectors
Date: Wed, 25 Oct 2023 17:41:03 -0500
Message-Id: <b2cdb7bd3bc14723af3d0e67bb1d97f32321e93f.1698273423.git.sanastasio@raptorengineering.com>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <cover.1698273423.git.sanastasio@raptorengineering.com>
References: <cover.1698273423.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>
Acked-by: Jan Beulich <jbeulich@suse.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..3697d656f4 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);
+        HIDDEN(_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 Wed Oct 25 22:41:31 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 22:41:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623372.971195 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvmZ8-00004q-K7; Wed, 25 Oct 2023 22:41:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623372.971195; Wed, 25 Oct 2023 22:41: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 1qvmZ8-0008UJ-E7; Wed, 25 Oct 2023 22:41:30 +0000
Received: by outflank-mailman (input) for mailman id 623372;
 Wed, 25 Oct 2023 22: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=nm7K=GH=raptorengineering.com=sanastasio@srs-se1.protection.inumbo.net>)
 id 1qvmZ7-0008LH-Rq
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 22:41:29 +0000
Received: from raptorengineering.com (mail.raptorengineering.com
 [23.155.224.40]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id a1fbf1d8-7387-11ee-9b0e-b553b5be7939;
 Thu, 26 Oct 2023 00:41:27 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id A874582857E5;
 Wed, 25 Oct 2023 17:41:26 -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 5uj40imSKiaj; Wed, 25 Oct 2023 17:41:24 -0500 (CDT)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 8D1838285AFA;
 Wed, 25 Oct 2023 17:41:24 -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 AGct8azOHlj8; Wed, 25 Oct 2023 17:41:24 -0500 (CDT)
Received: from raptor-ewks-026.2lan (5.edge.rptsys.com [23.155.224.38])
 by mail.rptsys.com (Postfix) with ESMTPSA id 20BC08285AB8;
 Wed, 25 Oct 2023 17:41:24 -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: a1fbf1d8-7387-11ee-9b0e-b553b5be7939
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com 8D1838285AFA
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD;
	t=1698273684; bh=askIAUvrnNxM300C2WKkQJuD2UHz6pYYs2K9R4SJJTQ=;
	h=From:To:Date:Message-Id:MIME-Version;
	b=F5sPMOCrf5F2DNjCgDk5QSCpkqdXfI9pbecR/MIbjShJCpVWMw84ZHhumEVtwLnHu
	 mRJmANIxQJiicBWkngCw8wp3DcTjbOyIv4bTEE9WLygc3CQW/WzEi3RMbtQDvj7ZSn
	 nU59Bvjf5I0yVaIsWHdu0IXKfGc9ydsS5uIK0ZwA=
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: Implement a basic exception handler
Date: Wed, 25 Oct 2023 17:41:04 -0500
Message-Id: <1d875c978caa4ed0b3d038655a39aa0cb0583565.1698273423.git.sanastasio@raptorengineering.com>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <cover.1698273423.git.sanastasio@raptorengineering.com>
References: <cover.1698273423.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>
---
v3:
  - Add comment to explain %r1 clobber
  - Add comment about ISR declaration order
  - Drop redundant " Interrupt" from exception name strings

v2:
  - Place {h_,}exception_common in .text.exceptions section
  - Use assembler macro instead of CPP macro for ISR definition
  - Tabulate ISR definitions

 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  | 129 +++++++++++++++++++++++++++
 xen/arch/ppc/ppc64/exceptions.c      | 102 +++++++++++++++++++++
 xen/arch/ppc/setup.c                 |  11 +++
 6 files changed, 276 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..f1b14bb860
--- /dev/null
+++ b/xen/arch/ppc/ppc64/exceptions-asm.S
@@ -0,0 +1,135 @@
+/* SPDX-License-Identifier: GPL-2.0-or-later */
+
+#include <asm/asm-defns.h>
+#include <asm/processor.h>
+
+    .section .text.exceptions, "ax", %progbits
+
+    /* Helper to dump CPU state to struct cpu_user_regs pointed to by r1. */
+ENTRY(exception_common)
+    /*
+     * Save GPRs 1-31. TODO: The value of %r1 has already been modified by the
+     * ISR, so the value we save isn't the exact value we had on entry.
+     */
+    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 the specified handler
+ */
+.macro ISR name, exc, handler
+    . = (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       \handler
+
+    .size \name, . - \name
+    .type \name, %function
+.endm
+
+/*
+ * Define all ISRs. Note: These must be declared in order from lowest exception
+ * vector to highest to satisfy the assembler.
+ */
+ISR exc_sysreset,   EXC_SYSTEM_RESET,   exception_common
+ISR exc_mcheck,     EXC_MACHINE_CHECK,  exception_common
+ISR exc_dstore,     EXC_DATA_STORAGE,   exception_common
+ISR exc_dsegment,   EXC_DATA_SEGMENT,   exception_common
+ISR exc_istore,     EXC_INSN_STORAGE,   exception_common
+ISR exc_isegment,   EXC_INSN_SEGMENT,   exception_common
+ISR exc_extern,     EXC_EXTERNAL,       exception_common
+ISR exc_align,      EXC_ALIGNMENT,      exception_common
+ISR exc_program,    EXC_PROGRAM,        exception_common
+ISR exc_fpu,        EXC_FPU_UNAVAIL,    exception_common
+ISR exc_dec,        EXC_DECREMENTER,    exception_common
+ISR exc_h_dec,      EXC_H_DECREMENTER,  h_exception_common
+/* EXC_PRIV_DOORBELL ... EXC_TRACE */
+ISR exc_h_dstore,   EXC_H_DATA_STORAGE, h_exception_common
+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..c6a11c8639
--- /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";
+    case EXC_MACHINE_CHECK:
+        return "Machine Check";
+    case EXC_DATA_STORAGE:
+        return "Data Storage";
+    case EXC_DATA_SEGMENT:
+        return "Data Segment";
+    case EXC_INSN_STORAGE:
+        return "Instruction Storage";
+    case EXC_INSN_SEGMENT:
+        return "Instruction Segment";
+    case EXC_EXTERNAL:
+        return "External";
+    case EXC_ALIGNMENT:
+        return "Alignment";
+    case EXC_PROGRAM:
+        return "Program";
+    case EXC_FPU_UNAVAIL:
+        return "Floating-Point Unavailable";
+    case EXC_DECREMENTER:
+        return "Decrementer";
+    case EXC_H_DECREMENTER:
+        return "Hypervisor Decrementer";
+    case EXC_PRIV_DOORBELL:
+        return "Directed Privileged Doorbell";
+    case EXC_SYSTEM_CALL:
+        return "System Call";
+    case EXC_TRACE:
+        return "Trace";
+    case EXC_H_DATA_STORAGE:
+        return "Hypervisor Data Storage";
+    case EXC_H_INSN_STORAGE:
+        return "Hypervisor Instruction Storage";
+    case EXC_H_EMUL_ASST:
+        return "Hypervisor Emulation Assistance";
+    case EXC_H_MAINTENANCE:
+        return "Hypervisor Maintenance";
+    case EXC_H_DOORBELL:
+        return "Directed Hypervisor Doorbell";
+    case EXC_H_VIRT:
+        return "Hypervisor Virtualization";
+    case EXC_PERF_MON:
+        return "Performance Monitor";
+    case EXC_VECTOR_UNAVAIL:
+        return "Vector Unavailable";
+    case EXC_VSX_UNAVAIL:
+        return "VSX Unavailable";
+    case EXC_FACIL_UNAVAIL:
+        return "Facility Unavailable";
+    case EXC_H_FACIL_UNAVAIL:
+        return "Hypervisor Facility Unavailable";
+    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 Wed Oct 25 23:22:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 25 Oct 2023 23:22:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623382.971214 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvnD4-0001Wd-KM; Wed, 25 Oct 2023 23:22:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623382.971214; Wed, 25 Oct 2023 23: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 1qvnD4-0001WW-H2; Wed, 25 Oct 2023 23:22:46 +0000
Received: by outflank-mailman (input) for mailman id 623382;
 Wed, 25 Oct 2023 23:22: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=LJSz=GH=casper.srs.infradead.org=BATV+85b1c44ac99574f3713d+7367+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qvnD3-0001WQ-PM
 for xen-devel@lists.xenproject.org; Wed, 25 Oct 2023 23:22:45 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 66aa2aa4-738d-11ee-98d5-6d05b1d4d9a1;
 Thu, 26 Oct 2023 01:22:44 +0200 (CEST)
Received: from [2001:8b0:10b:5:5bd0:63a6:23b2:1881]
 (helo=u3832b3a9db3152.ant.amazon.com)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qvnCo-00BaQG-2c; Wed, 25 Oct 2023 23: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>
X-Inumbo-ID: 66aa2aa4-738d-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=MIME-Version:Content-Type:References:
	In-Reply-To:Date:Cc:To:From:Subject:Message-ID:Sender:Reply-To:
	Content-Transfer-Encoding:Content-ID:Content-Description;
	bh=Hywp//kxabmBhLoPf9bPVzZxrS2G1q+9aoYbZpFBf1M=; b=WaN0SD06nfYFjmYfix+A76J+zz
	YQyT+iVM2WThChlOuDDqEfqmt4MoBJTB/mEy/4TXaYEW5jfhp34Z7RpQOaCZrl/KTMgaOspab7t6j
	wKVam5D++ubUNuZXOd4cpVzCYFmFIYhIpazkbUj2nXbZAXTkEpOAEyAWs0IZ0Gj07tsVDuEQr9+uB
	Y/I/1cOeD5FOtpDwExUHt3L9ushYOQPfZ+yqiuEgKaBWsO6jA4f8xktRXxAWUgli0Aai6Yma7Si17
	fe9PqCcryiKNctKcQIXhHaG/KlMp04yB9uF1bHiEIx3KxFAo8Mc80+CZeGte8J9OY8PejJ4uMAPVg
	WTfoxi0w==;
Message-ID: <f8d6eaf9b5f57184a5f6ec5b6103189b77364e3a.camel@infradead.org>
Subject: Re: [QEMU][PATCHv2 1/8] xen: when unplugging emulated devices skip
 virtio devices
From: David Woodhouse <dwmw2@infradead.org>
To: Vikram Garhwal <vikram.garhwal@amd.com>, qemu-devel@nongnu.org
Cc: sstabellini@kernel.org, jgross@suse.com, Anthony Perard
 <anthony.perard@citrix.com>, Paul Durrant <paul@xen.org>, Paolo Bonzini
 <pbonzini@redhat.com>, Richard Henderson <richard.henderson@linaro.org>, 
 Eduardo Habkost <eduardo@habkost.net>, "Michael S. Tsirkin"
 <mst@redhat.com>, Marcel Apfelbaum <marcel.apfelbaum@gmail.com>, "open
 list:X86 Xen CPUs" <xen-devel@lists.xenproject.org>
Date: Thu, 26 Oct 2023 00:22:29 +0100
In-Reply-To: <20231025212422.30371-2-vikram.garhwal@amd.com>
References: <20231025212422.30371-1-vikram.garhwal@amd.com>
	 <20231025212422.30371-2-vikram.garhwal@amd.com>
Content-Type: multipart/signed; micalg="sha-256"; protocol="application/pkcs7-signature";
	boundary="=-oZqrN/73FRiF017WitQ2"
User-Agent: Evolution 3.44.4-0ubuntu2 
MIME-Version: 1.0
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html


--=-oZqrN/73FRiF017WitQ2
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Wed, 2023-10-25 at 14:24 -0700, Vikram Garhwal wrote:
> From: Juergen Gross <jgross@suse.com>
>=20
> Virtio devices should never be unplugged at boot time, as they are
> similar to pci passthrough devices.
>=20
> Signed-off-by: Juergen Gross <jgross@suse.com>
> Signed-off-by: Vikram Garhwal <vikram.garhwal@amd.com>

Hm, do your virtio NICs still actually *work* after that? Or are they
all disconnected from their netdev peers?=20

I suspect you're going to want a variant of
https://lore.kernel.org/qemu-devel/20231025145042.627381-19-dwmw2@infradead=
.org/T/#u
which also leave the peers of your virtio devices intact?

--=-oZqrN/73FRiF017WitQ2
Content-Type: application/pkcs7-signature; name="smime.p7s"
Content-Disposition: attachment; filename="smime.p7s"
Content-Transfer-Encoding: base64

MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgEFADCABgkqhkiG9w0BBwEAAKCCEkQw
ggYQMIID+KADAgECAhBNlCwQ1DvglAnFgS06KwZPMA0GCSqGSIb3DQEBDAUAMIGIMQswCQYDVQQG
EwJVUzETMBEGA1UECBMKTmV3IEplcnNleTEUMBIGA1UEBxMLSmVyc2V5IENpdHkxHjAcBgNVBAoT
FVRoZSBVU0VSVFJVU1QgTmV0d29yazEuMCwGA1UEAxMlVVNFUlRydXN0IFJTQSBDZXJ0aWZpY2F0
aW9uIEF1dGhvcml0eTAeFw0xODExMDIwMDAwMDBaFw0zMDEyMzEyMzU5NTlaMIGWMQswCQYDVQQG
EwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYD
VQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50
aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC
AQEAyjztlApB/975Rrno1jvm2pK/KxBOqhq8gr2+JhwpKirSzZxQgT9tlC7zl6hn1fXjSo5MqXUf
ItMltrMaXqcESJuK8dtK56NCSrq4iDKaKq9NxOXFmqXX2zN8HHGjQ2b2Xv0v1L5Nk1MQPKA19xeW
QcpGEGFUUd0kN+oHox+L9aV1rjfNiCj3bJk6kJaOPabPi2503nn/ITX5e8WfPnGw4VuZ79Khj1YB
rf24k5Ee1sLTHsLtpiK9OjG4iQRBdq6Z/TlVx/hGAez5h36bBJMxqdHLpdwIUkTqT8se3ed0PewD
ch/8kHPo5fZl5u1B0ecpq/sDN/5sCG52Ds+QU5O5EwIDAQABo4IBZDCCAWAwHwYDVR0jBBgwFoAU
U3m/WqorSs9UgOHYm8Cd8rIDZsswHQYDVR0OBBYEFAnA8vwL2pTbX/4r36iZQs/J4K0AMA4GA1Ud
DwEB/wQEAwIBhjASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEF
BQcDBDARBgNVHSAECjAIMAYGBFUdIAAwUAYDVR0fBEkwRzBFoEOgQYY/aHR0cDovL2NybC51c2Vy
dHJ1c3QuY29tL1VTRVJUcnVzdFJTQUNlcnRpZmljYXRpb25BdXRob3JpdHkuY3JsMHYGCCsGAQUF
BwEBBGowaDA/BggrBgEFBQcwAoYzaHR0cDovL2NydC51c2VydHJ1c3QuY29tL1VTRVJUcnVzdFJT
QUFkZFRydXN0Q0EuY3J0MCUGCCsGAQUFBzABhhlodHRwOi8vb2NzcC51c2VydHJ1c3QuY29tMA0G
CSqGSIb3DQEBDAUAA4ICAQBBRHUAqznCFfXejpVtMnFojADdF9d6HBA4kMjjsb0XMZHztuOCtKF+
xswhh2GqkW5JQrM8zVlU+A2VP72Ky2nlRA1GwmIPgou74TZ/XTarHG8zdMSgaDrkVYzz1g3nIVO9
IHk96VwsacIvBF8JfqIs+8aWH2PfSUrNxP6Ys7U0sZYx4rXD6+cqFq/ZW5BUfClN/rhk2ddQXyn7
kkmka2RQb9d90nmNHdgKrwfQ49mQ2hWQNDkJJIXwKjYA6VUR/fZUFeCUisdDe/0ABLTI+jheXUV1
eoYV7lNwNBKpeHdNuO6Aacb533JlfeUHxvBz9OfYWUiXu09sMAviM11Q0DuMZ5760CdO2VnpsXP4
KxaYIhvqPqUMWqRdWyn7crItNkZeroXaecG03i3mM7dkiPaCkgocBg0EBYsbZDZ8bsG3a08LwEsL
1Ygz3SBsyECa0waq4hOf/Z85F2w2ZpXfP+w8q4ifwO90SGZZV+HR/Jh6rEaVPDRF/CEGVqR1hiuQ
OZ1YL5ezMTX0ZSLwrymUE0pwi/KDaiYB15uswgeIAcA6JzPFf9pLkAFFWs1QNyN++niFhsM47qod
x/PL+5jR87myx5uYdBEQkkDc+lKB1Wct6ucXqm2EmsaQ0M95QjTmy+rDWjkDYdw3Ms6mSWE3Bn7i
5ZgtwCLXgAIe5W8mybM2JzCCBhQwggT8oAMCAQICEQDGvhmWZ0DEAx0oURL6O6l+MA0GCSqGSIb3
DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYD
VQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28g
UlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMB4XDTIyMDEwNzAw
MDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJARYTZHdtdzJAaW5mcmFkZWFkLm9y
ZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3GpC2bomUqk+91wLYBzDMcCj5C9m6
oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZHh7htyAkWYVoFsFPrwHounto8xTsy
SSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT9YgcBqKCo65pTFmOnR/VVbjJk4K2
xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNjP+qDrh0db7PAjO1D4d5ftfrsf+kd
RR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy2U+eITZ5LLE5s45mX2oPFknWqxBo
bQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3BgBEmfsYWlBXO8rVXfvPgLs32VdV
NZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/7auNVRmPB3v5SWEsH8xi4Bez2V9U
KxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmdlFYhAflWKQ03Ufiu8t3iBE3VJbc2
5oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9aelIl6vtbhMA+l0nfrsORMa4kobqQ5
C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMBAAGjggHMMIIByDAfBgNVHSMEGDAW
gBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeDMcimo0oz8o1R1Nver3ZVpSkwDgYD
VR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYwFAYIKwYBBQUHAwQGCCsGAQUFBwMC
MEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYBBQUHAgEWF2h0dHBzOi8vc2VjdGln
by5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9jcmwuc2VjdGlnby5jb20vU2VjdGln
b1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1haWxDQS5jcmwwgYoGCCsGAQUFBwEB
BH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdvLmNvbS9TZWN0aWdvUlNBQ2xpZW50
QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAjBggrBgEFBQcwAYYXaHR0cDovL29j
c3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5mcmFkZWFkLm9yZzANBgkqhkiG9w0B
AQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQvQ/fzPXmtR9t54rpmI2TfyvcKgOXp
qa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvIlSPrzIB4Z2wyIGQpaPLlYflrrVFK
v9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9ChWFfgSXvrWDZspnU3Gjw/rMHrGnql
Htlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0whpBtXdyDjzBtQTaZJ7zTT/vlehc/
tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9IzCCBhQwggT8oAMCAQICEQDGvhmW
Z0DEAx0oURL6O6l+MA0GCSqGSIb3DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3Jl
YXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0
ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJl
IEVtYWlsIENBMB4XDTIyMDEwNzAwMDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJ
ARYTZHdtdzJAaW5mcmFkZWFkLm9yZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3
GpC2bomUqk+91wLYBzDMcCj5C9m6oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZH
h7htyAkWYVoFsFPrwHounto8xTsySSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT
9YgcBqKCo65pTFmOnR/VVbjJk4K2xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNj
P+qDrh0db7PAjO1D4d5ftfrsf+kdRR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy
2U+eITZ5LLE5s45mX2oPFknWqxBobQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3
BgBEmfsYWlBXO8rVXfvPgLs32VdVNZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/
7auNVRmPB3v5SWEsH8xi4Bez2V9UKxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmd
lFYhAflWKQ03Ufiu8t3iBE3VJbc25oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9ae
lIl6vtbhMA+l0nfrsORMa4kobqQ5C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMB
AAGjggHMMIIByDAfBgNVHSMEGDAWgBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeD
Mcimo0oz8o1R1Nver3ZVpSkwDgYDVR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYw
FAYIKwYBBQUHAwQGCCsGAQUFBwMCMEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYB
BQUHAgEWF2h0dHBzOi8vc2VjdGlnby5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9j
cmwuc2VjdGlnby5jb20vU2VjdGlnb1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1h
aWxDQS5jcmwwgYoGCCsGAQUFBwEBBH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdv
LmNvbS9TZWN0aWdvUlNBQ2xpZW50QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAj
BggrBgEFBQcwAYYXaHR0cDovL29jc3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5m
cmFkZWFkLm9yZzANBgkqhkiG9w0BAQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQv
Q/fzPXmtR9t54rpmI2TfyvcKgOXpqa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvI
lSPrzIB4Z2wyIGQpaPLlYflrrVFKv9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9Ch
WFfgSXvrWDZspnU3Gjw/rMHrGnqlHtlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0w
hpBtXdyDjzBtQTaZJ7zTT/vlehc/tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9
IzGCBMcwggTDAgEBMIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVz
dGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMT
NVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEA
xr4ZlmdAxAMdKFES+jupfjANBglghkgBZQMEAgEFAKCCAeswGAYJKoZIhvcNAQkDMQsGCSqGSIb3
DQEHATAcBgkqhkiG9w0BCQUxDxcNMjMxMDI1MjMyMjI5WjAvBgkqhkiG9w0BCQQxIgQg+N5V1di/
kpVs3VFQvPyUODhvqf4FazJRXYUbQCvZtTowgb0GCSsGAQQBgjcQBDGBrzCBrDCBljELMAkGA1UE
BhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEYMBYG
A1UEChMPU2VjdGlnbyBMaW1pdGVkMT4wPAYDVQQDEzVTZWN0aWdvIFJTQSBDbGllbnQgQXV0aGVu
dGljYXRpb24gYW5kIFNlY3VyZSBFbWFpbCBDQQIRAMa+GZZnQMQDHShREvo7qX4wgb8GCyqGSIb3
DQEJEAILMYGvoIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVy
MRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNl
Y3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEAxr4Z
lmdAxAMdKFES+jupfjANBgkqhkiG9w0BAQEFAASCAgB1RXBC5LDVbp7KyB5xpyUHZ/vxq13ihMlG
3lx8EF6sVzPtYTJjbYcyKmWM4UkvFC1K1UPQ32xdb0dCsyJ2k1hc+vIE6OKSPOcwPytmC+OSgxP4
rT+w9M+IlvyriekXVcEfe90vpNmxESEpBOPzvTdC/V7dTSltUn4qjm+F9V94ijwcR8TDbzHYu3LA
SpHr1pukO3EHa9QstA1noeGl5r/slhQroT8Jja9XIGVFn8M3SP6q40kEnen5CVwcN3gdEAGawZ6K
Xy2PYlAnNDPmvBCrEQVNEMgv6I4Ke6DjhwIDwBvbgIJtdzg/jvbHlXtTSR6pMuvzUAbxNJSBIBt5
DkaWpjPju84yvPmtCe+p7dvQ7h9zZ8Knst42tFCsCU4tt3qUTE39suNNi7PGtBuKVjxPjekKtRpn
TxyErV/6r037MwUniveO9RSEEAAzHCOc+ckP+4RRvFataG92Cb6t/OTR2EkM65K263Xmn8rpj0Sn
3/vx8H9+AGiBCHrqrjYB0LbV29Tz2L9zfMMsKoDPb4MNHECAXA9iRsS1cractvkPRBVZ52sjVotd
27TGdlvWBRVKRReBb8XUcxrU0mtzBfR0p4nbBTL+PT2sXkwg1b2DB9i9mHRomccEa5/SgUtI8bZh
FwjucAkbkBb1Yoz3a9MxZ+awXF5nmGmsfVVa79k/sAAAAAAAAA==


--=-oZqrN/73FRiF017WitQ2--


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 01:17:21 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 01:17:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623387.971224 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvozk-0001TZ-7a; Thu, 26 Oct 2023 01:17:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623387.971224; Thu, 26 Oct 2023 01: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 1qvozk-0001TS-4o; Thu, 26 Oct 2023 01:17:08 +0000
Received: by outflank-mailman (input) for mailman id 623387;
 Thu, 26 Oct 2023 01:17: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=z2QB=GI=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qvozi-0001TM-Gh
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 01:17:06 +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 5d49f842-739d-11ee-9b0e-b553b5be7939;
 Thu, 26 Oct 2023 03:17: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 5C02C62461;
 Thu, 26 Oct 2023 01:17:00 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id CD4ECC433C7;
 Thu, 26 Oct 2023 01:16: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: 5d49f842-739d-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1698283020;
	bh=rRGZu0zoE846AQrYCuTEVLdxg5WF6CtbSj53VvPXFv8=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=HYBRFyiNQpSC++Opv7WY5TKBQ21wk1qPQbBF5jyY7v1XmG41b1lsP0u4KLQPlPnAI
	 OWxdU2R4qqnC4+BYCWGhG7y56uzOrGhQKhwK7q0MAGirwTQt5idg7TeHVqHRZAvdih
	 dARjvqm+MVWwMXx0kfX+rK3Ao4md2T6rF5FJPoonwG+EWKnfutuhrs4rfsM6L/Thg0
	 xvlWa9UwTbQLpDG86PErsUI2ScoiPWfMfOrq8UYMh4xRLRE5tanTxuE+6q4C1ccYxy
	 uvTpus8GEho1fe0gvLHhbXrg6dDxh5kxRoYnkXn0+8ytKssC26mJEWiJghTSylEDyp
	 XMgS3S+SPknwQ==
Date: Wed, 25 Oct 2023 18:16:57 -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>, julien@xen.org, 
    bertrand.marquis@arm.com, andrew.cooper3@citrix.com, roger.pau@citrix.com, 
    george.dunlap@citrix.com, xen-devel@lists.xenproject.org
Subject: Re: [PATCH] misra: add R14.4 R21.1 R21.2
In-Reply-To: <1e2991d7-b7b5-2fdd-38e0-ee1eff607f0e@suse.com>
Message-ID: <alpine.DEB.2.22.394.2310251759560.271731@ubuntu-linux-20-04-desktop>
References: <alpine.DEB.2.22.394.2310231628500.3516@ubuntu-linux-20-04-desktop> <967caedc-3d10-dee4-6614-1b9dcc0c1c66@suse.com> <alpine.DEB.2.22.394.2310241753220.271731@ubuntu-linux-20-04-desktop> <1e2991d7-b7b5-2fdd-38e0-ee1eff607f0e@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, 25 Oct 2023, Jan Beulich wrote:
> On 25.10.2023 03:15, Stefano Stabellini wrote:
> > On Tue, 24 Oct 2023, Jan Beulich wrote:
> >> On 24.10.2023 01:31, Stefano Stabellini wrote:> --- a/docs/misra/rules.rst
> >>> +++ b/docs/misra/rules.rst
> >>> @@ -422,6 +422,13 @@ maintainers if you want to suggest a change.
> >>>  
> >>>         while(0) and while(1) and alike are allowed.
> >>>  
> >>> +   * - `Rule 14.4 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/R_14_04.c>`_
> >>> +     - Required
> >>> +     - The controlling expression of an if statement and the controlling
> >>> +       expression of an iteration-statement shall have essentially
> >>> +       Boolean type
> >>> +     - Implicit conversions to boolean are allowed
> >>
> >> What, if anything, remains of this rule with this exception?
> > 
> > Not much, but there is a difference between following a rule with a
> > deviation (in this case we allow implicit conversions of integers and
> > pointers to bool because we claim all Xen developers know how they work)
> > and not follow the rule at all, at least for the assessors. Also,
> > anything that doesn't implicitly convert to a boolean is not allowed,
> > although I guess probably it wouldn't compile either.
> > 
> > We could also try to find a better wording to reduce the deviation only
> > to integer and pointers. Any suggestions?
> 
> Since compound types can't be converted anyway, I think only floating
> point types (and their relatives) remain, which we don't use anyway
> (and if we did, excepting them as well would only be logical imo). I
> therefore see little point in making "integers and pointers" explicit.
> 
> Instead I wonder if we shouldn't make ourselves honest and say we
> deviate this rule as a whole.

Yes, I see your point. I think I'll remove Rule 14.4 from the patch and
put it in the bucket of all the rules deviated as a whole (which we
should track as a separate rst file but today we don't.)


> >>> @@ -479,6 +486,24 @@ maintainers if you want to suggest a change.
> >>>         they are related
> >>>       -
> >>>  
> >>> +   * - `Rule 21.1 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/R_21_01.c>`_
> >>> +     - Required
> >>> +     - #define and #undef shall not be used on a reserved identifier or
> >>> +       reserved macro name
> >>> +     - No identifiers should start with _BUILTIN to avoid clashes with
> >>
> >> DYM "__builtin_"? Also gcc introduces far more than just __builtin_...()
> >> into the name space.
> > 
> > Yes agreed, but in my notes that is the only one I wrote down. I recall
> > that the complete list is a couple of pages long, I don't think we can
> > possibly add it here in full and if I recall it is not available in the
> > GCC documentation. More on this below.
> > 
> > 
> >>> +       GCC reserved identifiers. In general, all identifiers starting with
> >>> +       an underscore are reserved, and are best avoided.
> >>
> >> This isn't precise enough. A leading underscore followed by a lower-case
> >> letter or a number is okay to use for file-scope symbols. Imo we should
> >> not aim at removing such uses, but rather encourage more use.
> > 
> > More on this below
> > 
> > 
> >> In this context, re-reading some of the C99 spec, I have to realize that
> >> my commenting on underscore-prefixed macro parameters (but not underscore-
> >> prefixed locals in macros) was based on ambiguous information in the spec.
> >> I will try to remember to not comment on such anymore going forward.
> >>
> >>> However, Xen
> >>> +       makes extensive usage of leading underscores in header guards,
> >>> +       bitwise manipulation functions, and a few other places. They are
> >>> +       considered safe as checks have been done against the list of
> >>> +       GCC's reserved identifiers. They don't need to be replaced.
> >>
> >> This leaves quite vague what wants and what does not want replacing, nor
> >> what might be okay to introduce subsequently despite violation this rule.
> >  
> > My goals here were to convey the following:
> > 1) avoid clashes with gcc reserved identifiers
> > 2) in general try to reduce the usage of leading underscores except for
> >    known existing locations (header guards, bitwise manipulation
> >    functions)
> > 
> > However, for 1) the problem is that we don't have the full list and for
> > 2) the problem is that it is too vague.
> > 
> > Instead I suggest we do the following:
> > - we get the full list of gcc reserved identifiers from Roberto and we
> >   commit it to xen.git as a seprate file under docs/misra
> 
> Such a full list can only be compiled for any specific gcc version. Even
> non-upstream backports by a distro may alter this list.
> 
> > - we reference the list here saying one should avoid clashes with those
> >   identifiers as reserved by gcc
> 
> With the list constantly changing (mostly expanding), that's pretty
> hopeless.
> 
> > And if we can find a clear general comment about the usage of leading
> > underscores in Xen I am happy to add it too (e.g. header guards), but
> > from MISRA point of view the above is sufficient.
> 
> But what we need isn't a description of the status quo, but one of
> what state we want to (slowly) move to. The status quo anyway is
> "no pattern, as in the past hardly anyone cared".

I guess you are suggesting something more like the following, but please
feel free to suggest your favorite wording (it might be easier for me to
understand what you mean if you provide a short example).

---
All identifiers starting with an underscore are reserved and should not
be used. Today Xen uses many, such as header guards and bitwise
manipulation functions. Upon analysis it turns out Xen identifiers do
not clash with the identifiers used by modern GCC, but that is not a
guarantee that there won't be a naming clash in the future or with
another compiler. For these reasons we discourage the introduction of
new reserved identifiers in Xen, and we see it as positive the reduction
of reserved identifiers. At the same time, certain identifiers starting
with an underscore are also commonly used in Linux (e.g. __set_bit) and
we don't think it would be an improvement to rename them.


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 01:24:11 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 01:24:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623391.971233 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvp6U-00038m-Te; Thu, 26 Oct 2023 01:24:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623391.971233; Thu, 26 Oct 2023 01: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 1qvp6U-00038f-R5; Thu, 26 Oct 2023 01:24:06 +0000
Received: by outflank-mailman (input) for mailman id 623391;
 Thu, 26 Oct 2023 01: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=z2QB=GI=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qvp6T-00038Z-NH
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 01:24:05 +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 587ba16c-739e-11ee-9b0e-b553b5be7939;
 Thu, 26 Oct 2023 03:24:03 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by dfw.source.kernel.org (Postfix) with ESMTP id A202763222;
 Thu, 26 Oct 2023 01:24:01 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id B387CC433C7;
 Thu, 26 Oct 2023 01:23: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: 587ba16c-739e-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1698283441;
	bh=all9ALWnHwFg35t+Nzb4IOBThZZxdjcSuuRG1MGh/nA=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=ZGy1wVdJq+gw9qO2UECqtP/WKDw+gvDihMdmnp0BSVZdPB/g90yTH3uHMZT8eTEmV
	 i3u2eUsC2lVvICMIx9vlyVYqdea82XOEvnm5BQnc9uxqEdy3tU8pvJDWJjkx+fLwDN
	 22ZcAutZ+yIqSlWpou1RJFyCrOE0uDa5+AgDnnWZe4iRWmgCL4bG0gERuVvWWrOYIF
	 0ld6Cch15Mng1DYc13vD4DVHQPyFC3ebcECoOdEkvx4K8Po8F7YUR72puweKyRA610
	 U/lTcKFaiHTyLf1/ZBOerFYDRaU+QKYlqrnjKmoW8/C84xbzpWH1CdkgdgVF4uLry8
	 EqmW8IhtQM8Eg==
Date: Wed, 25 Oct 2023 18:23:58 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: David Woodhouse <dwmw2@infradead.org>
cc: Vikram Garhwal <vikram.garhwal@amd.com>, qemu-devel@nongnu.org, 
    sstabellini@kernel.org, jgross@suse.com, 
    Anthony Perard <anthony.perard@citrix.com>, Paul Durrant <paul@xen.org>, 
    Paolo Bonzini <pbonzini@redhat.com>, 
    Richard Henderson <richard.henderson@linaro.org>, 
    Eduardo Habkost <eduardo@habkost.net>, 
    "Michael S. Tsirkin" <mst@redhat.com>, 
    Marcel Apfelbaum <marcel.apfelbaum@gmail.com>, 
    "open list:X86 Xen CPUs" <xen-devel@lists.xenproject.org>
Subject: Re: [QEMU][PATCHv2 1/8] xen: when unplugging emulated devices skip
 virtio devices
In-Reply-To: <f8d6eaf9b5f57184a5f6ec5b6103189b77364e3a.camel@infradead.org>
Message-ID: <alpine.DEB.2.22.394.2310251820510.271731@ubuntu-linux-20-04-desktop>
References: <20231025212422.30371-1-vikram.garhwal@amd.com>  <20231025212422.30371-2-vikram.garhwal@amd.com> <f8d6eaf9b5f57184a5f6ec5b6103189b77364e3a.camel@infradead.org>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Thu, 26 Oct 2023, David Woodhouse wrote:
> On Wed, 2023-10-25 at 14:24 -0700, Vikram Garhwal wrote:
> > From: Juergen Gross <jgross@suse.com>
> > 
> > Virtio devices should never be unplugged at boot time, as they are
> > similar to pci passthrough devices.
> > 
> > Signed-off-by: Juergen Gross <jgross@suse.com>
> > Signed-off-by: Vikram Garhwal <vikram.garhwal@amd.com>
> 
> Hm, do your virtio NICs still actually *work* after that? Or are they
> all disconnected from their netdev peers? 
> 
> I suspect you're going to want a variant of
> https://lore.kernel.org/qemu-devel/20231025145042.627381-19-dwmw2@infradead.org/T/#u
> which also leave the peers of your virtio devices intact?

Hi David, device unplug is an x86-only thing (see the definition of
xen_emul_unplug in Linux under arch/x86/xen/platform-pci-unplug.c) I
suspect Vikram who is working on ARM hasn't tested it.

Vikram, a simple option is to drop this patch if you don't need it.


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 01:27:28 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 01:27:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623395.971244 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvp9h-0003jV-BN; Thu, 26 Oct 2023 01:27:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623395.971244; Thu, 26 Oct 2023 01:27: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 1qvp9h-0003j3-8O; Thu, 26 Oct 2023 01:27:25 +0000
Received: by outflank-mailman (input) for mailman id 623395;
 Thu, 26 Oct 2023 01:27: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=z2QB=GI=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qvp9g-0003iq-3M
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 01:27:24 +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 ce18c562-739e-11ee-9b0e-b553b5be7939;
 Thu, 26 Oct 2023 03:27:21 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by sin.source.kernel.org (Postfix) with ESMTP id 50CC6CE3C81;
 Thu, 26 Oct 2023 01:27:15 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 18CE0C433C7;
 Thu, 26 Oct 2023 01:27: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: ce18c562-739e-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1698283634;
	bh=Ii3W8WPXM+HaC7H23lkbyui90eXEuTIW1dNd/XtNoaw=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=UVcUJrsETKIvGaOKN6+h4LRyyW5MwynTcXdxGg1sFjPh0+NHnCz6Yec0TLSqT815t
	 BL5mRFd/7ttTQ1+cEMgRFYjs4HMpSo+W4GWBI+tk4OtaEfQOcbLbWuUwUuAsBafw6z
	 gRXLbxOjbM9bfPmEN0KQC5AefHKsdF6v5+tdoCsji2UgPybHLw5eiMGqp86kPnV30L
	 teNYSKI+i705sF0bnmTqyX2e9IVzkQ+sts1l1bqJftrhmndVi57dG1Smm4jRMuGT+8
	 FoVcNXzPRnzNOSLyltN9MGctXJTh4n1ILOyOonaa5swWyntFlLe/QP2H2HMLprJOFv
	 M3iIOxAe/WjWw==
Date: Wed, 25 Oct 2023 18:27:11 -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: qemu-devel@nongnu.org, sstabellini@kernel.org, jgross@suse.com, 
    Anthony Perard <anthony.perard@citrix.com>, Paul Durrant <paul@xen.org>, 
    Paolo Bonzini <pbonzini@redhat.com>, 
    Richard Henderson <richard.henderson@linaro.org>, 
    Eduardo Habkost <eduardo@habkost.net>, 
    "Michael S. Tsirkin" <mst@redhat.com>, 
    Marcel Apfelbaum <marcel.apfelbaum@gmail.com>, 
    "open list:X86 Xen CPUs" <xen-devel@lists.xenproject.org>
Subject: Re: [QEMU][PATCHv2 3/8] xen: add pseudo RAM region for grant
 mappings
In-Reply-To: <20231025212422.30371-4-vikram.garhwal@amd.com>
Message-ID: <alpine.DEB.2.22.394.2310251826500.271731@ubuntu-linux-20-04-desktop>
References: <20231025212422.30371-1-vikram.garhwal@amd.com> <20231025212422.30371-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 Wed, 25 Oct 2023, Vikram Garhwal wrote:
> From: Juergen Gross <jgross@suse.com>
> 
> Add a memory region which can be used to automatically map granted
> memory. It is starting at 0x8000000000000000ULL in order to be able to
> distinguish it from normal RAM.
> 
> For this reason the xen.ram memory region is expanded, which has no
> further impact as it is used just as a container of the real RAM
> regions and now the grant region.
> 
> Signed-off-by: Juergen Gross <jgross@suse.com>
> Signed-off-by: Vikram Garhwal <vikram.garhwal@amd.com>

Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>


> ---
>  hw/i386/xen/xen-hvm.c           |  3 +++
>  hw/xen/xen-hvm-common.c         |  4 ++--
>  hw/xen/xen-mapcache.c           | 27 +++++++++++++++++++++++++++
>  include/hw/xen/xen-hvm-common.h |  2 ++
>  include/hw/xen/xen_pvdev.h      |  3 +++
>  include/sysemu/xen-mapcache.h   |  3 +++
>  6 files changed, 40 insertions(+), 2 deletions(-)
> 
> diff --git a/hw/i386/xen/xen-hvm.c b/hw/i386/xen/xen-hvm.c
> index f42621e674..67a55558a6 100644
> --- a/hw/i386/xen/xen-hvm.c
> +++ b/hw/i386/xen/xen-hvm.c
> @@ -172,6 +172,9 @@ static void xen_ram_init(PCMachineState *pcms,
>                                   x86ms->above_4g_mem_size);
>          memory_region_add_subregion(sysmem, 0x100000000ULL, &ram_hi);
>      }
> +
> +    /* Add grant mappings as a pseudo RAM region. */
> +    ram_grants = *xen_init_grant_ram();
>  }
>  
>  static XenPhysmap *get_physmapping(hwaddr start_addr, ram_addr_t size)
> diff --git a/hw/xen/xen-hvm-common.c b/hw/xen/xen-hvm-common.c
> index 565dc39c8f..b7255977a5 100644
> --- a/hw/xen/xen-hvm-common.c
> +++ b/hw/xen/xen-hvm-common.c
> @@ -9,7 +9,7 @@
>  #include "hw/boards.h"
>  #include "hw/xen/arch_hvm.h"
>  
> -MemoryRegion ram_memory;
> +MemoryRegion ram_memory, ram_grants;
>  
>  void xen_ram_alloc(ram_addr_t ram_addr, ram_addr_t size, MemoryRegion *mr,
>                     Error **errp)
> @@ -26,7 +26,7 @@ void xen_ram_alloc(ram_addr_t ram_addr, ram_addr_t size, MemoryRegion *mr,
>          return;
>      }
>  
> -    if (mr == &ram_memory) {
> +    if (mr == &ram_memory || mr == &ram_grants) {
>          return;
>      }
>  
> diff --git a/hw/xen/xen-mapcache.c b/hw/xen/xen-mapcache.c
> index f7d974677d..8115c44c00 100644
> --- a/hw/xen/xen-mapcache.c
> +++ b/hw/xen/xen-mapcache.c
> @@ -14,7 +14,9 @@
>  
>  #include <sys/resource.h>
>  
> +#include "hw/xen/xen-hvm-common.h"
>  #include "hw/xen/xen_native.h"
> +#include "hw/xen/xen_pvdev.h"
>  #include "qemu/bitmap.h"
>  
>  #include "sysemu/runstate.h"
> @@ -597,3 +599,28 @@ uint8_t *xen_replace_cache_entry(hwaddr old_phys_addr,
>      mapcache_unlock();
>      return p;
>  }
> +
> +MemoryRegion *xen_init_grant_ram(void)
> +{
> +    RAMBlock *block;
> +
> +    memory_region_init(&ram_grants, NULL, "xen.grants",
> +                       XEN_MAX_VIRTIO_GRANTS * XC_PAGE_SIZE);
> +    block = g_malloc0(sizeof(*block));
> +    block->mr = &ram_grants;
> +    block->used_length = XEN_MAX_VIRTIO_GRANTS * XC_PAGE_SIZE;
> +    block->max_length = XEN_MAX_VIRTIO_GRANTS * XC_PAGE_SIZE;
> +    block->fd = -1;
> +    block->page_size = XC_PAGE_SIZE;
> +    block->host = (void *)XEN_GRANT_ADDR_OFF;
> +    block->offset = XEN_GRANT_ADDR_OFF;
> +    block->flags = RAM_PREALLOC;
> +    ram_grants.ram_block = block;
> +    ram_grants.ram = true;
> +    ram_grants.terminates = true;
> +    ram_block_add_list(block);
> +    memory_region_add_subregion(get_system_memory(), XEN_GRANT_ADDR_OFF,
> +                                &ram_grants);
> +
> +    return &ram_grants;
> +}
> diff --git a/include/hw/xen/xen-hvm-common.h b/include/hw/xen/xen-hvm-common.h
> index 4e9904f1a6..0d300ba898 100644
> --- a/include/hw/xen/xen-hvm-common.h
> +++ b/include/hw/xen/xen-hvm-common.h
> @@ -17,6 +17,8 @@
>  #include <xen/hvm/ioreq.h>
>  
>  extern MemoryRegion ram_memory;
> +
> +extern MemoryRegion ram_grants;
>  extern MemoryListener xen_io_listener;
>  extern DeviceListener xen_device_listener;
>  
> diff --git a/include/hw/xen/xen_pvdev.h b/include/hw/xen/xen_pvdev.h
> index ddad4b9f36..0f1b5edfa9 100644
> --- a/include/hw/xen/xen_pvdev.h
> +++ b/include/hw/xen/xen_pvdev.h
> @@ -80,4 +80,7 @@ int xen_pv_send_notify(struct XenLegacyDevice *xendev);
>  void xen_pv_printf(struct XenLegacyDevice *xendev, int msg_level,
>                     const char *fmt, ...)  G_GNUC_PRINTF(3, 4);
>  
> +#define XEN_GRANT_ADDR_OFF    0x8000000000000000ULL
> +#define XEN_MAX_VIRTIO_GRANTS 65536
> +
>  #endif /* QEMU_HW_XEN_PVDEV_H */
> diff --git a/include/sysemu/xen-mapcache.h b/include/sysemu/xen-mapcache.h
> index c8e7c2f6cf..f4bedb1c11 100644
> --- a/include/sysemu/xen-mapcache.h
> +++ b/include/sysemu/xen-mapcache.h
> @@ -10,6 +10,7 @@
>  #define XEN_MAPCACHE_H
>  
>  #include "exec/cpu-common.h"
> +#include "exec/ram_addr.h"
>  
>  typedef hwaddr (*phys_offset_to_gaddr_t)(hwaddr phys_offset,
>                                           ram_addr_t size);
> @@ -25,6 +26,8 @@ void xen_invalidate_map_cache(void);
>  uint8_t *xen_replace_cache_entry(hwaddr old_phys_addr,
>                                   hwaddr new_phys_addr,
>                                   hwaddr size);
> +MemoryRegion *xen_init_grant_ram(void);
> +
>  #else
>  
>  static inline void xen_map_cache_init(phys_offset_to_gaddr_t f,
> -- 
> 2.17.1
> 


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 01:32:44 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 01:32:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623399.971254 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvpEj-0005Dq-Ud; Thu, 26 Oct 2023 01:32:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623399.971254; Thu, 26 Oct 2023 01: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 1qvpEj-0005Dj-RR; Thu, 26 Oct 2023 01:32:37 +0000
Received: by outflank-mailman (input) for mailman id 623399;
 Thu, 26 Oct 2023 01: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=z2QB=GI=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qvpEi-0005Dd-O9
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 01:32:36 +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 881a42ae-739f-11ee-9b0e-b553b5be7939;
 Thu, 26 Oct 2023 03:32:33 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by sin.source.kernel.org (Postfix) with ESMTP id 509BFCE3C05;
 Thu, 26 Oct 2023 01:32:30 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 9F00EC433C8;
 Thu, 26 Oct 2023 01:32: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: 881a42ae-739f-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1698283949;
	bh=tpmV0jJcukeFv/+kyfO83cg9rK+oV80xWvwmxLTD/8c=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=AdHkdbhxSkqo3iuHgSv5JXFEKqU/2Nm8D1fs8XlLZE9vgdh/EpSQAo8xEjk+z1MPH
	 nB2yUXzvNhEOgHh4Hm+FsF3ObgWDex4Z2cgqLmBcGBUG32M48jPpP2C4lOp5y5swJj
	 DjmCa09KH1kv0DTMvaaUYlTMUAw3xP07yur4j4AAeGRo/p8YnWjLs9gR1JWim4h2i+
	 AhhlB3kECzJHCTV5p1DHqcytJQZhwMZZIqZHqV/BpprqAhezj8ccPCgO6KbGgPYRzX
	 w9VFDuv0t1XbDH2/cOTFYim0V2/WoqAQpzok5ewR8W9pPshACuAJ1PCIOLpJ+uVXBE
	 OvClxuFefbZ+g==
Date: Wed, 25 Oct 2023 18:32:26 -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: qemu-devel@nongnu.org, sstabellini@kernel.org, jgross@suse.com, 
    Anthony Perard <anthony.perard@citrix.com>, Paul Durrant <paul@xen.org>, 
    Paolo Bonzini <pbonzini@redhat.com>, Peter Xu <peterx@redhat.com>, 
    David Hildenbrand <david@redhat.com>, 
    =?UTF-8?Q?Philippe_Mathieu-Daud=C3=A9?= <philmd@linaro.org>, 
    "open list:X86 Xen CPUs" <xen-devel@lists.xenproject.org>
Subject: Re: [QEMU][PATCHv2 7/8] xen: add map and unmap callbacks for grant
 region
In-Reply-To: <20231025212422.30371-8-vikram.garhwal@amd.com>
Message-ID: <alpine.DEB.2.22.394.2310251832100.271731@ubuntu-linux-20-04-desktop>
References: <20231025212422.30371-1-vikram.garhwal@amd.com> <20231025212422.30371-8-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 Wed, 25 Oct 2023, Vikram Garhwal wrote:
> From: Juergen Gross <jgross@suse.com>
> 
> Add the callbacks for mapping/unmapping guest memory via grants to the
> special grant memory region.
> 
> Signed-off-by: Juergen Gross <jgross@suse.com>
> Signed-off-by: Vikram Garhwal <vikram.garhwal@amd.com>
> ---
>  hw/xen/xen-mapcache.c | 175 +++++++++++++++++++++++++++++++++++++++++-
>  system/physmem.c      |  11 ++-
>  2 files changed, 181 insertions(+), 5 deletions(-)
> 
> diff --git a/hw/xen/xen-mapcache.c b/hw/xen/xen-mapcache.c
> index 8a61c7dde6..feb4a3b886 100644
> --- a/hw/xen/xen-mapcache.c
> +++ b/hw/xen/xen-mapcache.c
> @@ -9,6 +9,8 @@
>   */
>  
>  #include "qemu/osdep.h"
> +#include "qemu/queue.h"
> +#include "qemu/thread.h"
>  #include "qemu/units.h"
>  #include "qemu/error-report.h"
>  
> @@ -23,6 +25,8 @@
>  #include "sysemu/xen-mapcache.h"
>  #include "trace.h"
>  
> +#include <xenevtchn.h>
> +#include <xengnttab.h>
>  
>  //#define MAPCACHE_DEBUG
>  
> @@ -385,7 +389,7 @@ uint8_t *xen_map_cache(hwaddr phys_addr, hwaddr size,
>      return p;
>  }
>  
> -ram_addr_t xen_ram_addr_from_mapcache(void *ptr)
> +static ram_addr_t xen_ram_addr_from_mapcache_try(void *ptr)
>  {
>      MapCacheEntry *entry = NULL;
>      MapCacheRev *reventry;
> @@ -594,10 +598,178 @@ uint8_t *xen_replace_cache_entry(hwaddr old_phys_addr,
>      return p;
>  }
>  
> +struct XENMappedGrantRegion {
> +    void *addr;
> +    unsigned int pages;
> +    unsigned int refs;
> +    unsigned int prot;
> +    uint32_t idx;
> +    QLIST_ENTRY(XENMappedGrantRegion) list;
> +};
> +
> +static xengnttab_handle *xen_region_gnttabdev;
> +static QLIST_HEAD(GrantRegionList, XENMappedGrantRegion) xen_grant_mappings =
> +    QLIST_HEAD_INITIALIZER(xen_grant_mappings);
> +static QemuMutex xen_map_mutex;
> +
> +static void *xen_map_grant_dyn(MemoryRegion **mr, hwaddr addr, hwaddr *plen,
> +                               bool is_write, MemTxAttrs attrs)
> +{
> +    unsigned int page_off = addr & (XC_PAGE_SIZE - 1);
> +    unsigned int i;
> +    unsigned int total_grants = 0;
> +    unsigned int nrefs = (page_off + *plen + XC_PAGE_SIZE - 1) >> XC_PAGE_SHIFT;
> +    uint32_t ref = (addr - XEN_GRANT_ADDR_OFF) >> XC_PAGE_SHIFT;
> +    uint32_t *refs = NULL;
> +    unsigned int prot = PROT_READ;
> +    struct XENMappedGrantRegion *mgr = NULL;
> +
> +    if (is_write) {
> +        prot |= PROT_WRITE;
> +    }
> +
> +    qemu_mutex_lock(&xen_map_mutex);
> +
> +    QLIST_FOREACH(mgr, &xen_grant_mappings, list) {
> +        if (mgr->idx == ref &&
> +            mgr->pages == nrefs &&
> +            (mgr->prot & prot) == prot) {
> +            break;
> +        }
> +
> +        total_grants += mgr->pages;
> +    }
> +
> +    if (!mgr) {
> +        if (nrefs + total_grants >= XEN_MAX_VIRTIO_GRANTS) {
> +            return NULL;

missing qemu_mutex_unlock


> +        }
> +
> +        mgr = g_new(struct XENMappedGrantRegion, 1);
> +
> +        if (nrefs == 1) {
> +            refs = &ref;
> +        } else {
> +            refs = g_new(uint32_t, nrefs);
> +            for (i = 0; i < nrefs; i++) {
> +                refs[i] = ref + i;
> +            }
> +        }
> +        mgr->addr = xengnttab_map_domain_grant_refs(xen_region_gnttabdev, nrefs,
> +                                                    xen_domid, refs, prot);
> +        if (mgr->addr) {
> +            mgr->pages = nrefs;
> +            mgr->refs = 1;
> +            mgr->prot = prot;
> +            mgr->idx = ref;
> +
> +            QLIST_INSERT_HEAD(&xen_grant_mappings, mgr, list);
> +        } else {
> +            g_free(mgr);
> +            mgr = NULL;
> +        }
> +    } else {
> +        mgr->refs++;
> +    }
> +
> +    qemu_mutex_unlock(&xen_map_mutex);
> +
> +    if (nrefs > 1) {
> +        g_free(refs);
> +    }
> +
> +    return mgr ? mgr->addr + page_off : NULL;
> +}
> +
> +static void xen_unmap_grant_dyn(MemoryRegion *mr, void *buffer, ram_addr_t addr,
> +                                hwaddr len, bool is_write, hwaddr access_len)
> +{
> +    unsigned int page_off = (unsigned long)buffer & (XC_PAGE_SIZE - 1);
> +    unsigned int nrefs = (page_off + len + XC_PAGE_SIZE - 1) >> XC_PAGE_SHIFT;
> +    unsigned int prot = PROT_READ;
> +    struct XENMappedGrantRegion *mgr = NULL;
> +
> +    if (is_write) {
> +        prot |= PROT_WRITE;
> +    }
> +
> +    qemu_mutex_lock(&xen_map_mutex);
> +
> +    QLIST_FOREACH(mgr, &xen_grant_mappings, list) {
> +        if (mgr->addr == buffer - page_off &&
> +            mgr->pages == nrefs &&
> +            (mgr->prot & prot) == prot) {
> +            break;
> +        }
> +    }
> +    if (mgr) {
> +        mgr->refs--;
> +        if (!mgr->refs) {
> +            xengnttab_unmap(xen_region_gnttabdev, mgr->addr, nrefs);
> +
> +            QLIST_REMOVE(mgr, list);
> +            g_free(mgr);
> +        }
> +    } else {
> +        error_report("xen_unmap_grant_dyn() trying to unmap unknown buffer");
> +    }
> +
> +    qemu_mutex_unlock(&xen_map_mutex);
> +}
> +
> +static ram_addr_t xen_ram_addr_from_grant_cache(void *ptr)
> +{
> +    unsigned int page_off = (unsigned long)ptr & (XC_PAGE_SIZE - 1);
> +    struct XENMappedGrantRegion *mgr = NULL;
> +    ram_addr_t raddr = RAM_ADDR_INVALID;
> +
> +    qemu_mutex_lock(&xen_map_mutex);
> +
> +    QLIST_FOREACH(mgr, &xen_grant_mappings, list) {
> +        if (mgr->addr == ptr - page_off) {
> +            break;
> +        }
> +    }
> +
> +    if (mgr) {
> +        raddr = (mgr->idx << XC_PAGE_SHIFT) + page_off + XEN_GRANT_ADDR_OFF;
> +    }
> +
> +    qemu_mutex_unlock(&xen_map_mutex);
> +
> +    return raddr;
> +}
> +
> +ram_addr_t xen_ram_addr_from_mapcache(void *ptr)
> +{
> +    ram_addr_t raddr;
> +
> +    raddr = xen_ram_addr_from_mapcache_try(ptr);
> +    if (raddr == RAM_ADDR_INVALID) {
> +        raddr = xen_ram_addr_from_grant_cache(ptr);
> +    }
> +
> +    return raddr;
> +}
> +
> +static const struct MemoryRegionOps xen_grant_mr_ops = {
> +    .map = xen_map_grant_dyn,
> +    .unmap = xen_unmap_grant_dyn,
> +    .endianness = DEVICE_LITTLE_ENDIAN,
> +};
> +
>  MemoryRegion *xen_init_grant_ram(void)
>  {
>      RAMBlock *block;
>  
> +    qemu_mutex_init(&xen_map_mutex);
> +
> +    xen_region_gnttabdev = xengnttab_open(NULL, 0);
> +    if (xen_region_gnttabdev == NULL) {
> +        fprintf(stderr, "can't open gnttab device\n");
> +        return NULL;
> +    }
> +
>      memory_region_init(&ram_grants, NULL, "xen.grants",
>                         XEN_MAX_VIRTIO_GRANTS * XC_PAGE_SIZE);
>      block = g_malloc0(sizeof(*block));
> @@ -612,6 +784,7 @@ MemoryRegion *xen_init_grant_ram(void)
>      ram_grants.ram_block = block;
>      ram_grants.ram = true;
>      ram_grants.terminates = true;
> +    ram_grants.ops = &xen_grant_mr_ops;
>      ram_block_add_list(block);
>      memory_region_add_subregion(get_system_memory(), XEN_GRANT_ADDR_OFF,
>                                  &ram_grants);
> diff --git a/system/physmem.c b/system/physmem.c
> index 5db1b32823..155a8c05fb 100644
> --- a/system/physmem.c
> +++ b/system/physmem.c
> @@ -2233,13 +2233,16 @@ RAMBlock *qemu_ram_block_from_host(void *ptr, bool round_offset,
>  
>      if (xen_enabled()) {
>          ram_addr_t ram_addr;
> +
>          RCU_READ_LOCK_GUARD();
>          ram_addr = xen_ram_addr_from_mapcache(ptr);
> -        block = qemu_get_ram_block(ram_addr);
> -        if (block) {
> -            *offset = ram_addr - block->offset;
> +        if (ram_addr != RAM_ADDR_INVALID) {
> +            block = qemu_get_ram_block(ram_addr);
> +            if (block) {
> +                *offset = ram_addr - block->offset;
> +            }
> +            return block;
>          }
> -        return block;
>      }
>  
>      RCU_READ_LOCK_GUARD();
> -- 
> 2.17.1
> 


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 03:24:38 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 03:24:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623457.971300 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvqyz-0007cx-Op; Thu, 26 Oct 2023 03:24:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623457.971300; Thu, 26 Oct 2023 03:24: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 1qvqyz-0007cq-Lw; Thu, 26 Oct 2023 03:24:29 +0000
Received: by outflank-mailman (input) for mailman id 623457;
 Thu, 26 Oct 2023 03:24: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 1qvqyy-0007cg-Ax; Thu, 26 Oct 2023 03:24: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 1qvqyy-0005QT-89; Thu, 26 Oct 2023 03:24: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 1qvqyx-00082J-IJ; Thu, 26 Oct 2023 03:24:27 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qvqyx-0008D3-HA; Thu, 26 Oct 2023 03:24: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=ul+tQBw/ugJFKZFwMj7MQZAe9nd94b94GgH7y3qQPn0=; b=XBH4YWed4+4Yh2n3y9ly2Ok/qn
	9X6g4uQQhhki2cyR8CBP6tZ/hpQ6UpshDZWTEF1dbylr+eFZkRdpqowNB9e8w6a3cLLKqzk/Fun7b
	UfcJbeVw8PiqYTio61p7DJKYy0an0yyocrISbzFeh5OiaWm50KGWwu5j1k7DBhY4ymdc=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183529-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 183529: tolerable trouble: fail/pass/starved - PUSHED
X-Osstest-Failures:
    xen-unstable:test-amd64-i386-libvirt:xen-install:fail:heisenbug
    xen-unstable:test-amd64-amd64-dom0pvh-xl-intel:guest-localmigrate:fail:heisenbug
    xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2: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-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-xl-qemut-debianhvm-i386-xsm:debian-hvm-install: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-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-ws16-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-win7-amd64:guest-stop: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-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-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-amd64-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-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-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: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-amd64-i386-libvirt-raw: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-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-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-dom0pvh-xl-amd:hosts-allocate:starved:nonblocking
X-Osstest-Versions-This:
    xen=5415b2b2118bd78d8a04f276a8312f7f0cb1a466
X-Osstest-Versions-That:
    xen=d9f07b06cfc967e128371c11f56699cf5ee40b43
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 26 Oct 2023 03:24:27 +0000

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

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-amd64-i386-libvirt       7 xen-install         fail pass in 183533-retest
 test-amd64-amd64-dom0pvh-xl-intel 18 guest-localmigrate fail pass in 183533-retest

Tests which did not succeed, but are not blocking:
 test-amd64-i386-libvirt     15 migrate-support-check fail in 183533 never pass
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183519
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183522
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183522
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183522
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 183522
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 183522
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm 12 debian-hvm-install fail like 183522
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183522
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183522
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183522
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 183522
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 183522
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183522
 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-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-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-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-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-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     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-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-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-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-libvirt-raw 14 migrate-support-check        fail   never pass
 test-amd64-amd64-dom0pvh-xl-amd  3 hosts-allocate               starved  n/a

version targeted for testing:
 xen                  5415b2b2118bd78d8a04f276a8312f7f0cb1a466
baseline version:
 xen                  d9f07b06cfc967e128371c11f56699cf5ee40b43

Last test of basis   183522  2023-10-25 08:28:41 Z    0 days
Testing same since   183529  2023-10-25 17:08:53 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                 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                              starved 
 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                            fail    
 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


Pushing revision :

To xenbits.xen.org:/home/xen/git/xen.git
   d9f07b06cf..5415b2b211  5415b2b2118bd78d8a04f276a8312f7f0cb1a466 -> master


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 03:34:17 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 03:34:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623463.971310 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvr8N-0001EG-Ln; Thu, 26 Oct 2023 03:34:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623463.971310; Thu, 26 Oct 2023 03: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 1qvr8N-0001E9-Ih; Thu, 26 Oct 2023 03:34:11 +0000
Received: by outflank-mailman (input) for mailman id 623463;
 Thu, 26 Oct 2023 03:34: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 1qvr8M-0001Ci-KW; Thu, 26 Oct 2023 03:34: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 1qvr8M-0005jy-6o; Thu, 26 Oct 2023 03:34: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 1qvr8L-0008Hq-OG; Thu, 26 Oct 2023 03:34:09 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qvr8L-0003iA-Nh; Thu, 26 Oct 2023 03:34: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=FarVIZohBdYskKwfNlllMuW4J+Ai5TaYUmCzBhHE3aU=; b=I6CaXu6aqrRYpyCk49aNEj0aNb
	BOpy2Q6u3zXV62CdC2X3vUI7FvvvA1j2jH3V6GUUiFE21w4GjP1FrjWu9rqkgIABxA/m5/uFqq5rB
	wRKstISB+HtbmoRdpmFNS5XZ6BUWz6nqrsV22Y1Q4044AmP+kvwuSBPGfhaXM7h1uWnE=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183532-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 183532: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=9bb5ef1287c6765c477fb2cb3107339f700ab419
X-Osstest-Versions-That:
    ovmf=884ef984541c3e346d39e423fea53cf25066ff5a
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 26 Oct 2023 03:34:09 +0000

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

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 9bb5ef1287c6765c477fb2cb3107339f700ab419
baseline version:
 ovmf                 884ef984541c3e346d39e423fea53cf25066ff5a

Last test of basis   183526  2023-10-25 14:14:10 Z    0 days
Testing same since   183532  2023-10-26 01:44:34 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Chris Li <chrisli@os.amperecomputing.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
   884ef98454..9bb5ef1287  9bb5ef1287c6765c477fb2cb3107339f700ab419 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 04:35:53 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 04:35:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623469.971320 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvs5q-0001lK-80; Thu, 26 Oct 2023 04:35:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623469.971320; Thu, 26 Oct 2023 04: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 1qvs5q-0001lD-5M; Thu, 26 Oct 2023 04:35:38 +0000
Received: by outflank-mailman (input) for mailman id 623469;
 Thu, 26 Oct 2023 04:35: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=4jAM=GI=amd.com=vikram.garhwal@srs-se1.protection.inumbo.net>)
 id 1qvs5o-0001ko-IR
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 04:35:36 +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 18bf0c5a-73b9-11ee-9b0e-b553b5be7939;
 Thu, 26 Oct 2023 06:35:33 +0200 (CEST)
Received: from MW3PR12MB4409.namprd12.prod.outlook.com (2603:10b6:303:2d::23)
 by BN9PR12MB5083.namprd12.prod.outlook.com (2603:10b6:408:134::18)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.31; Thu, 26 Oct
 2023 04:35:28 +0000
Received: from MW3PR12MB4409.namprd12.prod.outlook.com
 ([fe80::bc0e:2b8d:357c:675e]) by MW3PR12MB4409.namprd12.prod.outlook.com
 ([fe80::bc0e:2b8d:357c:675e%7]) with mapi id 15.20.6907.032; Thu, 26 Oct 2023
 04:35: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: 18bf0c5a-73b9-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=cTqWhinfgxuqt78KT3/xVLjGYHQ6O1YV8SkJbmbvY1A0O3u3CS0bgyDtfeWEEw+spMR+5AwbrstuY82dUDI0WfPsHYJzTEDsQ/eOgMACkd3lYCtzL4WsqO15Xk/OY3YwvWQrMao2ky1Yo6rFXagdW6MX01EMXecAKeZf+jWZgZIpxlOQd1jTP49ZtPQx/24uPUTiT64s7nv7I+RhAxtHkabMjwIL7dWyqC9LFopfrabz8ozWoAa28DSKHhF+afhfXfGTGrG8a9b3IL2d8kVvY9wDsAPiMBmxwos8Gs8ia766VDVb+0lmImw40efZGVava44ufACbJk4BDxK44DHVRw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=f5yU4fIZRKw4waQcnAvKo3auuurJRLbbSnIPTnZsiL8=;
 b=DXPpGunXp9RXtz/oy4RChtwVueSKIULlz5rAEeZoaKgQog5SrBs2dQy11X4n1e5/t+2Ag/9Y7dembCEMWe/upQR8CXqUBaWskP4OB5yYk58XnI2ghlu9S6HDYdpA+TS3on+5V+RxzbBK8EkeQs+LR+ItjZbuvy0BbtJqEzHECBEobQBSdcFmj/rUfDpi4FMwyX7AvZD3ev6aft+4Hc2n3mYq9EPXAMKmSjWk0Mo4whBTsNW/qx1iv3SAvtbR/U/0GMA3gFwVt/ZFiWnXMJmZwLORdOSlaujhXW2YzmLJjwTGR3I95xlwsixTHayfWOTVc7D9YM21UUEUu0KfN5Syzg==
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=f5yU4fIZRKw4waQcnAvKo3auuurJRLbbSnIPTnZsiL8=;
 b=iTl+wE1xdhQhliccpPRFRLvn7SbirHvo4VI31QDcTQvy+T0jkBbKeUk7A+3axqqN0XoWV2X5/BVrBNYWj63RnbO4ZJZ0HYfCOl+2Xne/hGCo+0IdC0Cw6tr6SNL9kMQfJosTA7TzkEbXL/qXRZ5WAOac4ZxuWdjL3fcz7At/RNo=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=amd.com;
Date: Wed, 25 Oct 2023 21:35:24 -0700
From: Vikram Garhwal <vikram.garhwal@amd.com>
To: Stefano Stabellini <sstabellini@kernel.org>
Cc: qemu-devel@nongnu.org, jgross@suse.com,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>, Paolo Bonzini <pbonzini@redhat.com>,
	Peter Xu <peterx@redhat.com>, David Hildenbrand <david@redhat.com>,
	Philippe =?utf-8?Q?Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
	"open list:X86 Xen CPUs" <xen-devel@lists.xenproject.org>
Subject: Re: [QEMU][PATCHv2 7/8] xen: add map and unmap callbacks for grant
 region
Message-ID: <ZTnsjCo2kPyWk_ZT@amd.com>
References: <20231025212422.30371-1-vikram.garhwal@amd.com>
 <20231025212422.30371-8-vikram.garhwal@amd.com>
 <alpine.DEB.2.22.394.2310251832100.271731@ubuntu-linux-20-04-desktop>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <alpine.DEB.2.22.394.2310251832100.271731@ubuntu-linux-20-04-desktop>
X-ClientProxiedBy: PH8PR22CA0001.namprd22.prod.outlook.com
 (2603:10b6:510:2d1::16) To MW3PR12MB4409.namprd12.prod.outlook.com
 (2603:10b6:303:2d::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: MW3PR12MB4409:EE_|BN9PR12MB5083:EE_
X-MS-Office365-Filtering-Correlation-Id: 37a5b730-dafe-47aa-ebdb-08dbd5dcfaff
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	nE5hg/iNU1rfPxZJUni50q6ayGoOI8seEDf2uSJr+brCCp6GnHnQIU5gtVPURd2bb5lFGTAo5CKKNHQRaT8dvI66lnegeZCjT+Srvc0gB9XQp0lwP52CIa1GWDvd44u3m5gNlykGUqwoSZ6MEZaR8mMKn2dO4ImF935jikPCb/dg6idxo6I5dqvNixQqafxxcOfowAjB8NP70+2guI6/Kbk2DxCS6ttdY9H2kMUPm4jl1F9iJfL9wqC3f4c6pF7PqE52DpwitbNnO11O1aYMsWD7OZvgyGSRMo4lWKaMUpt1fXYR8Y5xt+cvYdUA2ZzXg5MW9PE+B/OXqGAooYRbggxGq40qwqRq7RX2cd3vkujJjxD0PM0QzmmaLPXnaikHB9OWBKxcC3kQ3plm+CfKfaBvYgxbl2YvEIpYwOugS4PEinwlRlk9zz9hLDOojlF3x0tYsv86G1/P+ea5r48ATcdmL4OsS2QuMA55KCR20WD++lI+iS5onqH4Vr/iDb0GMueZzOnmYrwfOerKVqPyM5Xn3MmuIA5/tHDK/Plv9yILw3Aaywi+kYCxA2djS7vV
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)(396003)(136003)(346002)(366004)(376002)(39860400002)(230922051799003)(1800799009)(64100799003)(186009)(451199024)(66946007)(2906002)(41300700001)(36756003)(38100700002)(6506007)(316002)(5660300002)(54906003)(66476007)(66556008)(478600001)(6666004)(6916009)(6512007)(6486002)(83380400001)(86362001)(44832011)(7416002)(4326008)(2616005)(8676002)(8936002)(26005);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?eUpUY2g0UHhlRGRFbUJJYzVIeElHSlBleVc2S29IcUw1UEZtMm8vem1lTHdi?=
 =?utf-8?B?MFpEZ3BLZlE2RVBTMHV3VkxwU3ZFQ3ZQTy9GU0hWOG0rNW45c2tObktBNXBu?=
 =?utf-8?B?M3hKV3Z6M3htWWlneXg1bVQ3eW05OFMxR1FEbXhnWEhyZkFtL0dXTmIxMUkv?=
 =?utf-8?B?N25LbHc4M1h1Qms0RG9XNWlkWWRJNGM1U3BLbDR5VXV2TXh0Q0xWcHErTFUz?=
 =?utf-8?B?VnJrMGtFUDM4YjJmcWtOSG1ZMUIzNjlTL0k0K2RwVG0zT2VDcVMrNWNKNDBB?=
 =?utf-8?B?ZEY0L0h4ZXArMEE2eUFGQmErUS93dkNYZFNoOGpSVVpzL0xPWEdwdEhORFE1?=
 =?utf-8?B?NVNQNnFmVk4yb2IrTjdFUExFZjdVdG5PejFnZUQ0OFBzb01DclBydGFNdFIv?=
 =?utf-8?B?SGxQekRESWFzRVZ3RVNMWVZ4bmRkOHY4VU4xMEpLSGYzdzErWGl1M08zUzhq?=
 =?utf-8?B?RC9sS1RGMTdua280T2JYdVJUckJUR0pCdGVDT3A2NEVUUG93NjR3Mm1vQ3pY?=
 =?utf-8?B?V2VEV2QrQlN0c3NxU1FNaHppMGdhZnRESFVkT3htYkhHWmZMZ01uMHhMZWpy?=
 =?utf-8?B?OS9mL3hJQ09kamRCWEpHalVMQ1FzVXUvR1pFTWxPcDNsdHpkUGNRcmZyWmh2?=
 =?utf-8?B?TWFCVVBuWnRKNTlPOGNsSmVOOEZ3S2JIVFAyUUFvOGpZZ1gzZTcrVUo4UUZM?=
 =?utf-8?B?VDQzRlAyN3pKbVJYcjdOcEMzditkZFFSYVV5cXA1Z1hoVjd4dGlaK1RMMjZu?=
 =?utf-8?B?TzB5b0dBUWhGL3lqUWRSaG9Fa28vVWc0dnErOTJpSlR5dCt2a0VKY1NER2RM?=
 =?utf-8?B?WXVQNy94L2NyeHpwVnBHb0VhWkk3eExtSjQrZUtEcEFQSndRVXdXOVdIcC9L?=
 =?utf-8?B?MGdXVlg0dENnclUweXJUWTBuWHF3VFpDT1pQNWxjQXNQMWgzZWRUMlUrbWlQ?=
 =?utf-8?B?NmpKUGdJcGJ3TStwdWp0Y1prTGhWQi80QXpTTHFYdnZiTzVEVEdXbW0rblor?=
 =?utf-8?B?WmVWeWF6bEVsMmpVdzlxMGozU2ZjbmJyV2srQk82SWJ1SWg0eVl0QzlpOXE3?=
 =?utf-8?B?blNZSWdxUWp4SjN6OXM1amtSa21pSG9JeE54SWRBdmhXZ2xsdFRaN3l2aDNW?=
 =?utf-8?B?TS9FZkVzQnErQ083cnYrSEFFUTNQUjhKQ2Y0VVkyYUpVUWQyUmF1QXAxajFu?=
 =?utf-8?B?S0swYXNFVXhxYlExb1J3N1VXT0lGZENXMU1yd3QyZVlHQklHWHNHbFdPR2Jw?=
 =?utf-8?B?WllJeGhFQnBsR0NJWFd4cjRNdXdaWWZCdVdZb0dXNFdGcG1FemVXaUtoSDdz?=
 =?utf-8?B?bUh1eklMVEZVRWFQR1VHRlAzSUdoSVVsMDVtem5vNGxONjNHRk5yVDQ5Tm1v?=
 =?utf-8?B?bS9PeVo1Si9mVzI1bzBQSVdaUXhLTHdLcXV5aElLUnBXZmQzRC9UTHc0QkVq?=
 =?utf-8?B?SHVDU1hIcHlYZ1BadkhzWXFPNkVFSTRSWExmMkQydVF1V0tkM2d3dFpYSUtz?=
 =?utf-8?B?TGxKMUExcE0zRXhBdEgwSmdpVmVWQUxSenJmU2lKYjBPRUdJUjNvbjc4eDEr?=
 =?utf-8?B?WUdzVGZReTQwbERQZ3REV29oaGFXcWlQKzRPcUVrbHRMRGtjT2pKSnV4UjdE?=
 =?utf-8?B?OW56clVvaGUvNFhnZ1pBMGZTZlpZUS85bEwyWi95a1BuTFhMQTZGcUhIZGUy?=
 =?utf-8?B?N3V5Y25mc1VQbnV3dmczcGoxM1pBQUxaSUZ1SnhlMjZXRnBGYmMwR2xMbnBR?=
 =?utf-8?B?c2M5eHRyZ0pNOEpmV2FHT1BGNnRZYUZoQ21tWG15dkx3KzI4WC8rdStqRU1X?=
 =?utf-8?B?VWVDVVZhMEdnZFZzc1lQT25XRzd6MWNBWTg4SGk0Y1BqeXQ3cVo0QzE5aEVT?=
 =?utf-8?B?WWYyR3I5cmZWdHNvKzFpeU9BenR4Mk90ZHBmMUNpSlYxR25xeWp6YjdvN0VI?=
 =?utf-8?B?MjN1eGN2UjNNb2pSOUNtNHVzYkYyTkNDSTFxSVZCakk5NXZ6aE5xdm9jTWlD?=
 =?utf-8?B?SEkxZUxibnAvdjczeCtrYXp0TzJ6eHZZcW0vem4zeWpKNjAzYWdteTIyZDF5?=
 =?utf-8?B?S0RRTmcxWmdXdmF5N3h0SXpOUDMwVGd2ZnRYdkZJMXpKdVRsZ3lZeWVwN1ly?=
 =?utf-8?Q?bHxY=3D?=
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 37a5b730-dafe-47aa-ebdb-08dbd5dcfaff
X-MS-Exchange-CrossTenant-AuthSource: MW3PR12MB4409.namprd12.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Oct 2023 04:35:28.5512
 (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: NpKKiWm6q848VoSLNeL9driUl0KyCLMZFF7LtK8HK6HCE/eOOXCf8Plos3+SHhKOvO6AsfjNkMw5mJGwTgyonQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN9PR12MB5083

On Wed, Oct 25, 2023 at 06:32:26PM -0700, Stefano Stabellini wrote:
> On Wed, 25 Oct 2023, Vikram Garhwal wrote:
> > From: Juergen Gross <jgross@suse.com>
> > 
> > Add the callbacks for mapping/unmapping guest memory via grants to the
> > special grant memory region.
> > 
> > Signed-off-by: Juergen Gross <jgross@suse.com>
> > Signed-off-by: Vikram Garhwal <vikram.garhwal@amd.com>
> > ---
> >  hw/xen/xen-mapcache.c | 175 +++++++++++++++++++++++++++++++++++++++++-
> >  system/physmem.c      |  11 ++-
> >  2 files changed, 181 insertions(+), 5 deletions(-)
> > 
> > diff --git a/hw/xen/xen-mapcache.c b/hw/xen/xen-mapcache.c
> > index 8a61c7dde6..feb4a3b886 100644
> > --- a/hw/xen/xen-mapcache.c
> > +++ b/hw/xen/xen-mapcache.c
> > @@ -9,6 +9,8 @@
> >   */
> >  
> >  #include "qemu/osdep.h"
> > +#include "qemu/queue.h"
> > +#include "qemu/thread.h"
> >  #include "qemu/units.h"
> >  #include "qemu/error-report.h"
> >  
> > @@ -23,6 +25,8 @@
> >  #include "sysemu/xen-mapcache.h"
> >  #include "trace.h"
> >  
> > +#include <xenevtchn.h>
> > +#include <xengnttab.h>
> >  
> >  //#define MAPCACHE_DEBUG
> >  
> > @@ -385,7 +389,7 @@ uint8_t *xen_map_cache(hwaddr phys_addr, hwaddr size,
> >      return p;
> >  }
> >  
> > -ram_addr_t xen_ram_addr_from_mapcache(void *ptr)
> > +static ram_addr_t xen_ram_addr_from_mapcache_try(void *ptr)
> >  {
> >      MapCacheEntry *entry = NULL;
> >      MapCacheRev *reventry;
> > @@ -594,10 +598,178 @@ uint8_t *xen_replace_cache_entry(hwaddr old_phys_addr,
> >      return p;
> >  }
> >  
> > +struct XENMappedGrantRegion {
> > +    void *addr;
> > +    unsigned int pages;
> > +    unsigned int refs;
> > +    unsigned int prot;
> > +    uint32_t idx;
> > +    QLIST_ENTRY(XENMappedGrantRegion) list;
> > +};
> > +
> > +static xengnttab_handle *xen_region_gnttabdev;
> > +static QLIST_HEAD(GrantRegionList, XENMappedGrantRegion) xen_grant_mappings =
> > +    QLIST_HEAD_INITIALIZER(xen_grant_mappings);
> > +static QemuMutex xen_map_mutex;
> > +
> > +static void *xen_map_grant_dyn(MemoryRegion **mr, hwaddr addr, hwaddr *plen,
> > +                               bool is_write, MemTxAttrs attrs)
> > +{
> > +    unsigned int page_off = addr & (XC_PAGE_SIZE - 1);
> > +    unsigned int i;
> > +    unsigned int total_grants = 0;
> > +    unsigned int nrefs = (page_off + *plen + XC_PAGE_SIZE - 1) >> XC_PAGE_SHIFT;
> > +    uint32_t ref = (addr - XEN_GRANT_ADDR_OFF) >> XC_PAGE_SHIFT;
> > +    uint32_t *refs = NULL;
> > +    unsigned int prot = PROT_READ;
> > +    struct XENMappedGrantRegion *mgr = NULL;
> > +
> > +    if (is_write) {
> > +        prot |= PROT_WRITE;
> > +    }
> > +
> > +    qemu_mutex_lock(&xen_map_mutex);
> > +
> > +    QLIST_FOREACH(mgr, &xen_grant_mappings, list) {
> > +        if (mgr->idx == ref &&
> > +            mgr->pages == nrefs &&
> > +            (mgr->prot & prot) == prot) {
> > +            break;
> > +        }
> > +
> > +        total_grants += mgr->pages;
> > +    }
> > +
> > +    if (!mgr) {
> > +        if (nrefs + total_grants >= XEN_MAX_VIRTIO_GRANTS) {
> > +            return NULL;
> 
> missing qemu_mutex_unlock
Oops, thanks for catching this! Will fix it in v3.
> 
> 
> > +        }
> > +
> > +        mgr = g_new(struct XENMappedGrantRegion, 1);
> > +
> > +        if (nrefs == 1) {
> > +            refs = &ref;
> > +        } else {
> > +            refs = g_new(uint32_t, nrefs);
> > +            for (i = 0; i < nrefs; i++) {
> > +                refs[i] = ref + i;
> > +            }
> > +        }
> > +        mgr->addr = xengnttab_map_domain_grant_refs(xen_region_gnttabdev, nrefs,
> > +                                                    xen_domid, refs, prot);
> > +        if (mgr->addr) {
> > +            mgr->pages = nrefs;
> > +            mgr->refs = 1;
> > +            mgr->prot = prot;
> > +            mgr->idx = ref;
> > +
> > +            QLIST_INSERT_HEAD(&xen_grant_mappings, mgr, list);
> > +        } else {
> > +            g_free(mgr);
> > +            mgr = NULL;
> > +        }
> > +    } else {
> > +        mgr->refs++;
> > +    }
> > +
> > +    qemu_mutex_unlock(&xen_map_mutex);
> > +
> > +    if (nrefs > 1) {
> > +        g_free(refs);
> > +    }
> > +
> > +    return mgr ? mgr->addr + page_off : NULL;
> > +}
> > +
> > +static void xen_unmap_grant_dyn(MemoryRegion *mr, void *buffer, ram_addr_t addr,
> > +                                hwaddr len, bool is_write, hwaddr access_len)
> > +{
> > +    unsigned int page_off = (unsigned long)buffer & (XC_PAGE_SIZE - 1);
> > +    unsigned int nrefs = (page_off + len + XC_PAGE_SIZE - 1) >> XC_PAGE_SHIFT;
> > +    unsigned int prot = PROT_READ;
> > +    struct XENMappedGrantRegion *mgr = NULL;
> > +
> > +    if (is_write) {
> > +        prot |= PROT_WRITE;
> > +    }
> > +
> > +    qemu_mutex_lock(&xen_map_mutex);
> > +
> > +    QLIST_FOREACH(mgr, &xen_grant_mappings, list) {
> > +        if (mgr->addr == buffer - page_off &&
> > +            mgr->pages == nrefs &&
> > +            (mgr->prot & prot) == prot) {
> > +            break;
> > +        }
> > +    }
> > +    if (mgr) {
> > +        mgr->refs--;
> > +        if (!mgr->refs) {
> > +            xengnttab_unmap(xen_region_gnttabdev, mgr->addr, nrefs);
> > +
> > +            QLIST_REMOVE(mgr, list);
> > +            g_free(mgr);
> > +        }
> > +    } else {
> > +        error_report("xen_unmap_grant_dyn() trying to unmap unknown buffer");
> > +    }
> > +
> > +    qemu_mutex_unlock(&xen_map_mutex);
> > +}
> > +
> > +static ram_addr_t xen_ram_addr_from_grant_cache(void *ptr)
> > +{
> > +    unsigned int page_off = (unsigned long)ptr & (XC_PAGE_SIZE - 1);
> > +    struct XENMappedGrantRegion *mgr = NULL;
> > +    ram_addr_t raddr = RAM_ADDR_INVALID;
> > +
> > +    qemu_mutex_lock(&xen_map_mutex);
> > +
> > +    QLIST_FOREACH(mgr, &xen_grant_mappings, list) {
> > +        if (mgr->addr == ptr - page_off) {
> > +            break;
> > +        }
> > +    }
> > +
> > +    if (mgr) {
> > +        raddr = (mgr->idx << XC_PAGE_SHIFT) + page_off + XEN_GRANT_ADDR_OFF;
> > +    }
> > +
> > +    qemu_mutex_unlock(&xen_map_mutex);
> > +
> > +    return raddr;
> > +}
> > +
> > +ram_addr_t xen_ram_addr_from_mapcache(void *ptr)
> > +{
> > +    ram_addr_t raddr;
> > +
> > +    raddr = xen_ram_addr_from_mapcache_try(ptr);
> > +    if (raddr == RAM_ADDR_INVALID) {
> > +        raddr = xen_ram_addr_from_grant_cache(ptr);
> > +    }
> > +
> > +    return raddr;
> > +}
> > +
> > +static const struct MemoryRegionOps xen_grant_mr_ops = {
> > +    .map = xen_map_grant_dyn,
> > +    .unmap = xen_unmap_grant_dyn,
> > +    .endianness = DEVICE_LITTLE_ENDIAN,
> > +};
> > +
> >  MemoryRegion *xen_init_grant_ram(void)
> >  {
> >      RAMBlock *block;
> >  
> > +    qemu_mutex_init(&xen_map_mutex);
> > +
> > +    xen_region_gnttabdev = xengnttab_open(NULL, 0);
> > +    if (xen_region_gnttabdev == NULL) {
> > +        fprintf(stderr, "can't open gnttab device\n");
> > +        return NULL;
> > +    }
> > +
> >      memory_region_init(&ram_grants, NULL, "xen.grants",
> >                         XEN_MAX_VIRTIO_GRANTS * XC_PAGE_SIZE);
> >      block = g_malloc0(sizeof(*block));
> > @@ -612,6 +784,7 @@ MemoryRegion *xen_init_grant_ram(void)
> >      ram_grants.ram_block = block;
> >      ram_grants.ram = true;
> >      ram_grants.terminates = true;
> > +    ram_grants.ops = &xen_grant_mr_ops;
> >      ram_block_add_list(block);
> >      memory_region_add_subregion(get_system_memory(), XEN_GRANT_ADDR_OFF,
> >                                  &ram_grants);
> > diff --git a/system/physmem.c b/system/physmem.c
> > index 5db1b32823..155a8c05fb 100644
> > --- a/system/physmem.c
> > +++ b/system/physmem.c
> > @@ -2233,13 +2233,16 @@ RAMBlock *qemu_ram_block_from_host(void *ptr, bool round_offset,
> >  
> >      if (xen_enabled()) {
> >          ram_addr_t ram_addr;
> > +
> >          RCU_READ_LOCK_GUARD();
> >          ram_addr = xen_ram_addr_from_mapcache(ptr);
> > -        block = qemu_get_ram_block(ram_addr);
> > -        if (block) {
> > -            *offset = ram_addr - block->offset;
> > +        if (ram_addr != RAM_ADDR_INVALID) {
> > +            block = qemu_get_ram_block(ram_addr);
> > +            if (block) {
> > +                *offset = ram_addr - block->offset;
> > +            }
> > +            return block;
> >          }
> > -        return block;
> >      }
> >  
> >      RCU_READ_LOCK_GUARD();
> > -- 
> > 2.17.1
> > 


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 05:50:09 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 05:50:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623474.971329 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvtFi-0002gz-QQ; Thu, 26 Oct 2023 05:49:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623474.971329; Thu, 26 Oct 2023 05: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 1qvtFi-0002gs-Ng; Thu, 26 Oct 2023 05:49:54 +0000
Received: by outflank-mailman (input) for mailman id 623474;
 Thu, 26 Oct 2023 05:46: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=bkoO=GI=linaro.org=jun.nie@srs-se1.protection.inumbo.net>)
 id 1qvtCc-0002dV-Jk
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 05:46:42 +0000
Received: from mail-pj1-x102b.google.com (mail-pj1-x102b.google.com
 [2607:f8b0:4864:20::102b])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 087c10dc-73c3-11ee-98d5-6d05b1d4d9a1;
 Thu, 26 Oct 2023 07:46:40 +0200 (CEST)
Received: by mail-pj1-x102b.google.com with SMTP id
 98e67ed59e1d1-27d5c71b4d7so1280842a91.1
 for <xen-devel@lists.xenproject.org>; Wed, 25 Oct 2023 22:46:40 -0700 (PDT)
Received: from niej-think.. (80.251.214.228.16clouds.com. [80.251.214.228])
 by smtp.gmail.com with ESMTPSA id
 so3-20020a17090b1f8300b0027d0a60b9c9sm831152pjb.28.2023.10.25.22.46.32
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 25 Oct 2023 22:46: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: 087c10dc-73c3-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=linaro.org; s=google; t=1698299199; x=1698903999; 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=iSTgWq3on62kpQTfU80MQgPRThAMsrIIzsvwWPX7qKg=;
        b=STSz3Q5wCH1AGajWzlKDiimcDB6Iekl2NPpz+p2MfUsJO8vEgizPw4TfwIVv9YOetf
         laL4QSKYdHabgBHBMfBnzDSxOIou1BcR4i6rrdPtvee4+dUDhGu6aFhUJTLXs4/O18Oa
         KfpXPMcpVsxuTxmTeaD42ZqZX/gxSWQhTZTLgQgoJojsbYGxV0M/q2PejGecFrHUe4xZ
         jn/d2Vpx7B5020hh+EpCV9WRb0GMa9PgEWLT5k5jvIG/Vrmum9ItRYKDnDYoSmkMeIM8
         VGQyURECzYi/yiWi2Mw8VaXndRdZaUu0gZ4H/d7aJVlMrfWq/TE7Iye1u9cAOKCTrVna
         SlKA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698299199; x=1698903999;
        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=iSTgWq3on62kpQTfU80MQgPRThAMsrIIzsvwWPX7qKg=;
        b=sVNkM5HEDcUQUfputDPLbBuCgeqOvAyzOXPpmt130jH0p1byJFG4cExsRYAyXFZWoH
         5yMgg362nwyxwwbECtP2bdJf9xvy7qS8Ta3Tvt6Y3sTkmkjjy/sv21Bs/zIyzabubvgU
         MGDWzofKR10JP945Ltxq8POg3lyGMKVrJc2dT7F+rjO4rHZHlT1NWGItFOOJxFU+dltO
         1DL+oYvsSrk1Y9lwZXLHBL57Y5W+2H87oNyTNmx07RVpLthPssn8hTK0IsrGhJuRTc/E
         BF5lU3aBndbX+kn9DZBaT435ultIPEJoupACTbpOPhzXAiFj+zeVF8nPh2+3g3grlVEt
         WBnw==
X-Gm-Message-State: AOJu0YyHtXse+jgjxClZQLyp5KdxvYVj6XskTKgYNDk5/HPDKrqiAyct
	JkiNiv5UIYt3BVboAPF1EtNySw==
X-Google-Smtp-Source: AGHT+IFFPi+uJmeQ4qWhfIG8ErAuI2vJxo9QF9JlrFuuINJsXwgulTJDIePIaTab5TfsETL1usThrw==
X-Received: by 2002:a17:90b:d88:b0:27d:1a75:5b98 with SMTP id bg8-20020a17090b0d8800b0027d1a755b98mr2184057pjb.12.1698299198676;
        Wed, 25 Oct 2023 22:46:38 -0700 (PDT)
From: Jun Nie <jun.nie@linaro.org>
To: sstabellini@kernel.org,
	julien@xen.org,
	bertrand.marquis@arm.com,
	Volodymyr_Babchuk@epam.com,
	xen-devel@lists.xenproject.org
Cc: Jun Nie <jun.nie@linaro.org>
Subject: [PATCH] xen/arm: Add Rockchip rk3399 early printk support
Date: Thu, 26 Oct 2023 13:46:34 +0800
Message-Id: <20231026054634.2805035-1-jun.nie@linaro.org>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Signed-off-by: Jun Nie <jun.nie@linaro.org>
---
 xen/arch/arm/Kconfig.debug | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/xen/arch/arm/Kconfig.debug b/xen/arch/arm/Kconfig.debug
index 842d768280..fefe8ac4df 100644
--- a/xen/arch/arm/Kconfig.debug
+++ b/xen/arch/arm/Kconfig.debug
@@ -158,6 +158,9 @@ choice
 	config EARLY_PRINTK_RCAR3
 		bool "Early printk with SCIF2 on Renesas R-Car Gen3 processors"
 		select EARLY_UART_SCIF
+	config EARLY_PRINTK_RK3399
+		bool "Early printk with 8250 on Rockchip RK3399 processors"
+		select EARLY_UART_8250
 	config EARLY_PRINTK_SEATTLE
 		bool "Early printk with pl011 for AMD Seattle processor"
 		select EARLY_UART_PL011
@@ -230,6 +233,7 @@ config EARLY_UART_BASE_ADDRESS
 	default 0xd0012000 if EARLY_PRINTK_MVEBU
 	default 0x48020000 if EARLY_PRINTK_OMAP5432
 	default 0xe6e88000 if EARLY_PRINTK_RCAR3
+	default 0xff1a0000 if EARLY_PRINTK_RK3399
 	default 0xe1010000 if EARLY_PRINTK_SEATTLE
 	default 0x01c28000 if EARLY_PRINTK_SUN6I
 	default 0x01c28000 if EARLY_PRINTK_SUN7I
@@ -270,6 +274,7 @@ config EARLY_UART_8250_REG_SHIFT
 	default 2 if EARLY_PRINTK_BRCM
 	default 2 if EARLY_PRINTK_DRA7
 	default 2 if EARLY_PRINTK_OMAP5432
+	default 2 if EARLY_PRINTK_RK3399
 	default 2 if EARLY_PRINTK_SUN6I
 	default 2 if EARLY_PRINTK_SUN7I
 	default 2 if EARLY_PRINTK_XGENE_MCDIVITT
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Thu Oct 26 06:12:26 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 06:12:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623479.971340 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvtbO-0006eS-LM; Thu, 26 Oct 2023 06:12:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623479.971340; Thu, 26 Oct 2023 06:12: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 1qvtbO-0006eL-IK; Thu, 26 Oct 2023 06:12:18 +0000
Received: by outflank-mailman (input) for mailman id 623479;
 Thu, 26 Oct 2023 06:12: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 1qvtbN-0006eB-5z; Thu, 26 Oct 2023 06:12: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 1qvtbM-0001df-OU; Thu, 26 Oct 2023 06:12: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 1qvtbM-0005dG-Du; Thu, 26 Oct 2023 06:12:16 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qvtbM-0004KV-C7; Thu, 26 Oct 2023 06:12: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=lKVSvmI3YYGz8IA/5pbpa6uupo/8OGV7cFlLukD4BK8=; b=odzfMJKHR+HiTCk1t8VL/+ZA/E
	/2SaRDicTlXfi9iipW7s+N9KLwXoNWc+YI6bHk0jOk6noDN7vXmgnJ70QLsd1IuTfgY2K2+255aps
	2+rkTDUR7l96ho9yJQsa9Y1+3pU8dbEO7IZioMO1fMcPT7p4G0KtlvacKF+h+ATIHQGk=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183530-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 183530: tolerable trouble: fail/pass/starved - PUSHED
X-Osstest-Failures:
    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-armhf-armhf-libvirt: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:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl: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: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-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-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu: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-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-raw:migrate-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-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-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds: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-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-amd64-amd64-dom0pvh-xl-amd:hosts-allocate:starved:nonblocking
X-Osstest-Versions-This:
    linux=611da07b89fdd53f140d7b33013f255bf0ed8f34
X-Osstest-Versions-That:
    linux=4f82870119a46b0d04d91ef4697ac4977a255a9d
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 26 Oct 2023 06:12:16 +0000

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

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 183518
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183518
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183518
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183518
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183518
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183518
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183518
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183518
 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          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          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-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-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-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-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-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-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-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-dom0pvh-xl-amd  3 hosts-allocate               starved  n/a

version targeted for testing:
 linux                611da07b89fdd53f140d7b33013f255bf0ed8f34
baseline version:
 linux                4f82870119a46b0d04d91ef4697ac4977a255a9d

Last test of basis   183518  2023-10-24 20:09:53 Z    1 days
Testing same since   183530  2023-10-25 18:12:16 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Linus Torvalds <torvalds@linux-foundation.org>
  Rafael J. Wysocki <rafael.j.wysocki@intel.com>
  Xiang Chen <chenxiang66@hisilicon.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                              starved 
 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
   4f82870119a4..611da07b89fd  611da07b89fdd53f140d7b33013f255bf0ed8f34 -> tested/linux-linus


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 06:46:06 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 06:46:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623485.971350 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvu7y-0002fy-7m; Thu, 26 Oct 2023 06:45:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623485.971350; Thu, 26 Oct 2023 06: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 1qvu7y-0002fr-4V; Thu, 26 Oct 2023 06:45:58 +0000
Received: by outflank-mailman (input) for mailman id 623485;
 Thu, 26 Oct 2023 06: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=jm+b=GI=amd.com=Xenia.Ragiadakou@srs-se1.protection.inumbo.net>)
 id 1qvu7x-0002fl-A8
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 06:45:57 +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 4ef2aa82-73cb-11ee-9b0e-b553b5be7939;
 Thu, 26 Oct 2023 08:45:54 +0200 (CEST)
Received: from DS7P222CA0018.NAMP222.PROD.OUTLOOK.COM (2603:10b6:8:2e::33) by
 SA0PR12MB4445.namprd12.prod.outlook.com (2603:10b6:806:95::15) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6933.19; Thu, 26 Oct 2023 06:45:49 +0000
Received: from DS2PEPF00003441.namprd04.prod.outlook.com
 (2603:10b6:8:2e:cafe::63) by DS7P222CA0018.outlook.office365.com
 (2603:10b6:8:2e::33) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.19 via Frontend
 Transport; Thu, 26 Oct 2023 06:45:49 +0000
Received: from SATLEXMB03.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.6933.15 via Frontend Transport; Thu, 26 Oct 2023 06:45:49 +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.32; Thu, 26 Oct
 2023 01:45:48 -0500
Received: from 10.0.2.15 (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.32 via Frontend
 Transport; Thu, 26 Oct 2023 01:45: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: 4ef2aa82-73cb-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=WDmY3j6d424QovQ8UZy0TsneEQKvdf8iUzeJoC1ZYaSQUNH/cm0U7vQkchQoelBduQobC/kKvFs7W8H7xGKvq6/W7pHmr1dTfxxzoFncsKws5BbzzN4oYNyPhrdHhKX3VXfF1pNFv2fNA+1zskroE/pkQxHSypbeAnojOAHXfcIECoahItCV7o8JXZPozG5q8gbE2uYiS/n+O/jg7Me3Da7eJirhL+vzF+uLuaUaJGwW/cn6xnEeL4aSrCD6jgCmoZlPF7Qjv3VL5c/ULO3t+33xsJbux3ND80mJ70Ynr7qym9Wjxv+0rHWPhxv23fHllA153Go/n/oanOutk8n2sA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=cZmZu8VfwSbwtFpJZOvSNULRvtAyCT7XDIOBfHqGsio=;
 b=M3C9PpnRfTiiiOwMEAVrtkzuglY2sfoGOEHX4RhUfW0eJl22lpKtPVMiN3kDMknUtQLiObl+DmnYq5gm9fd6BC7Cpx6Hxq/m+sjmrFgs8q9cAcjX51G9adHVNT7Lm2Ua1f+1SWE7HO+tCaa/kHJg2Vfa3kcoq/j5knazL1kFP2inve/ifoy1AwyfrKFA/4Pb4rsuM+seMj32uTYzM2bLPPyvgqYiQC3lx8I9oTSsGOJ87S+PmhbGxKDP9psqkTAyn6lay8GwYxExsYDDUrSj7PAU1jO6IKfiO7X8o845mQOScwWP3pN03L5eId7f/g55DsVON2yjniHRcTNvTzcOSA==
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 (0)
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=cZmZu8VfwSbwtFpJZOvSNULRvtAyCT7XDIOBfHqGsio=;
 b=sZ8X2HavPKJNj4zbVXEQqc5xCL97vVSVdyiYlaufUynbws0LBvJxy/kppxg3WCxI9750UiFOSPhxEgpTGibJbcq20wk+g2l+VISX8szxCkk4apXTsV2NRg3fCdQd2HTwut9nfPuXukDTi6BzAlv8tUaGc+5XFEm6YrwgwN6yuJ4=
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: Xenia Ragiadakou <xenia.ragiadakou@amd.com>
To: <xen-devel@lists.xenproject.org>
CC: Xenia Ragiadakou <xenia.ragiadakou@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] x86/hvm/dom0: fix PVH initrd and metadata placement
Date: Thu, 26 Oct 2023 09:45:43 +0300
Message-ID: <20231026064543.43369-1-xenia.ragiadakou@amd.com>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DS2PEPF00003441:EE_|SA0PR12MB4445:EE_
X-MS-Office365-Filtering-Correlation-Id: 7f471ce7-4b27-4e09-edd3-08dbd5ef3094
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	nVNliQe6fAgg2gH/AmJ2Ik/z4Mlqr6Aeqok3z8gQARI6+qBKEF8q8j2CfE3aBRxfqUQ2iLvAZKF/Ju1Zdt/xazwt4xjrXj2C+SsLlAHjFH4tBdLIRU+57aMeXbAjzlN4xVVmyW6LCR6YyEBfLPz3yHiOPiRBKmY+Jgh/xCqRRIqF38CHAKavIE5Ii54htD/AwzSJxKFEKRsAZZVfNqWiD3v8N4YLnrM11D0EZVOYHLTapL5zCyvLLIsruGH/02W+Bwt7aSIGVDDAis0mSxI72PWHnLKh3FWHUoxUCvJBVML6xFxw4k72F9AvsUozRlyfNeC+kUavBsvdbzrvAeT4jfjf7e7vim8o8VDwpxJx45W6SgT9yVNyyjF+86Ac2511WG/yhdzh5idfqBDxlF5GAghnzx4m0VZbxF5faJv61brZYgRaAILFn2+cj4AUegWoapstgT7/w6V3DTiGk/sDnt0AsF+gfe8zvmU3wC7k2TPCgMppq5/WLiDvt6ZhmjzHQVWusTJaR/bmor+BLggui2honlD65VD1GDO/tpFsdQxeib0x5BUtojJyLrq40qrcWKZWTse7rveY6KkJbqAdH1hiFcWP/+N9S7humw53L4n+ss0AtoPxaqpiAxQJhw3iAe+s8eKGF8kDfb7/s3eM0VgCOAnUUaK1FWxGe+AUMnIllBcHkBnUCLdy/ym8Ir6Dn1HYpXWYA8kweLowuYdj8F/qBODh51hrGyIJFiM77Cnxe2lcQy2L200Loa/CCx++OGSDj6Hf2/X/9yPmakOwnQ==
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)(230922051799003)(186009)(1800799009)(451199024)(82310400011)(64100799003)(36840700001)(46966006)(40470700004)(336012)(66899024)(426003)(26005)(478600001)(1076003)(316002)(6666004)(40480700001)(86362001)(6916009)(16576012)(70206006)(40460700003)(70586007)(54906003)(36756003)(36860700001)(47076005)(2616005)(356005)(44832011)(81166007)(2906002)(83380400001)(4326008)(8676002)(8936002)(82740400003)(5660300002)(41300700001)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Oct 2023 06:45:49.1242
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 7f471ce7-4b27-4e09-edd3-08dbd5ef3094
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:
	DS2PEPF00003441.namprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA0PR12MB4445

Given that start < kernel_end and end > kernel_start, the logic that
determines the best placement for dom0 initrd and metadata, does not
take into account the two cases below:
(1) start > kernel_start && end > kernel_end
(2) start < kernel_start && end < kernel_end

In case (1), the evaluation will result in end = kernel_start
i.e. end < start, and will load initrd in the middle of the kernel.
In case (2), the evaluation will result in start = kernel_end
i.e. end < start, and will load initrd at kernel_end, that is out
of the memory region under evaluation.

This patch rephrases the if condition to include the above two cases
without affecting the behaviour for the case where
start < kernel_start && end > kernel_end

Fixes: 73b47eea2104 ('x86/dom0: improve PVH initrd and metadata placement')
Signed-off-by: Xenia Ragiadakou <xenia.ragiadakou@amd.com>
---
 xen/arch/x86/hvm/dom0_build.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/xen/arch/x86/hvm/dom0_build.c b/xen/arch/x86/hvm/dom0_build.c
index c7d47d0d4c..5fc2c12f3a 100644
--- a/xen/arch/x86/hvm/dom0_build.c
+++ b/xen/arch/x86/hvm/dom0_build.c
@@ -518,7 +518,7 @@ static paddr_t __init find_memory(
         if ( end <= kernel_start || start >= kernel_end )
             ; /* No overlap, nothing to do. */
         /* Deal with the kernel already being loaded in the region. */
-        else if ( kernel_start - start > end - kernel_end )
+        else if ( kernel_start + kernel_end > start + end )
             end = kernel_start;
         else
             start = kernel_end;
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Thu Oct 26 06:49:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 06:49:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623489.971360 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvuBK-0003KB-OZ; Thu, 26 Oct 2023 06:49:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623489.971360; Thu, 26 Oct 2023 06: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 1qvuBK-0003K4-Lo; Thu, 26 Oct 2023 06:49:26 +0000
Received: by outflank-mailman (input) for mailman id 623489;
 Thu, 26 Oct 2023 06:49: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=hFWs=GI=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qvuBJ-0003Jw-Cf
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 06:49:25 +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 cbbce6c4-73cb-11ee-9b0e-b553b5be7939;
 Thu, 26 Oct 2023 08:49:23 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS8PR04MB7992.eurprd04.prod.outlook.com (2603:10a6:20b:2a4::6)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.14; Thu, 26 Oct
 2023 06:49:20 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6954.008; Thu, 26 Oct 2023
 06:49: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: cbbce6c4-73cb-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=oRjjwUM8Qea+jwG0KqfqCNmw0wrkXrHGGScLmaUMbKZlV+NM8GHvxKsnA3XJJuXkLcT0y2ysfoJyynUUarNch2kaE+z0jNJbVFqZwD/KmCnBqS4+IKBSlfDuEFdP1he5YJ6/TjhSLvaOKfXLdTZmMj8aPo41mjk88rhCftIxaBLDJ9rhtzcwdQwCi+21ePd+qR09K22KA7JdAu24WSFEUncj9CRhXZuziDBwecyu0YMkNEapjvimEAisd+lGneiYgwEqcfdk2xIrQoI7y3QuDM9LoBz2TFFSJvmLqtSx7P9+9hpgiAzi/byceDyyw6jU+0xtDdettDjCNk2JrDzJGQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=ScXXPbgvfg69sK5/V/jSimFsnBtWPz1Bf5ddu0j4Bz0=;
 b=QAhDlZbGjkNHRf0VDI586HfJGNTDADcJWzNGoH0NeNCkZmml2u/CV4NX0N89zeATrZ3PVDtH8Qc3IducJgfsb66DD/Nih7qbGLqrvx5k6cBbUu4sU0iC0YZBgA/hV0TwFXo4y8QS+30CvCS8aqJBYJMxpybjg8q6d2a7yWu9lQbFlGj8VjCK9ZCnLWCK0L7MPMH2Nj5YdPy6k0yqoyAtSOb+c9hoKqh9Wyt02ejk4v6hYbkxKwrPla5MLEpu6zE8nP1LR/40yfC0lUT8xOqxOjhy09IyXXz0oW6/lE/h7LGZF3ZvQnlrVza1IUcFQsqfe5YIcER8XlUpvKk3azMCyQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=ScXXPbgvfg69sK5/V/jSimFsnBtWPz1Bf5ddu0j4Bz0=;
 b=rke9ClfeOuvnjBye1YU96RFjBKUNwdbvPEOrpn3K4bpzMuBNrJ4SaXdnPyeeR1v8Y3+jW705wJlCR6x+uZ4HmOyXY7qlcXsathU8O6U5lUa5m2OkgzjbxC97ISGSwEk/x3FCW444stdTlJ40w9fPgnCuIyLDJFvkss764y7WhOzDdvu+XVELFbhJt4GRmxHQNvA1kwyUquVAbjUBWHT7giyPBbkia2x25a2I2frBmDrbHjuNFWNgVjIJTW7DqrBh8LrGLbUQ5vWC1nlrVxTVERgpWkLgPgW4oAsmaPaZOFH27LZJRPOjjfZWkAdW/fTHYOiMztKczvbBpKFq/90ahw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <f740f6db-ccec-1187-7c19-1cb37d8cf4b6@suse.com>
Date: Thu, 26 Oct 2023 08:49: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][for-4.19 v3] xen: Add deviations for MISRA C:2012
 Rule 7.1
Content-Language: en-US
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.cooper3@citrix.com, roger.pau@citrix.com,
 Simone Ballarin <simone.ballarin@bugseng.com>,
 Doug Goldstein <cardoe@cardoe.com>, George Dunlap
 <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Wei Liu <wl@xen.org>, Nicola Vetrini <nicola.vetrini@bugseng.com>
References: <5e0f1bcd7b4325141e64a3c2d581034956b42293.1698136547.git.nicola.vetrini@bugseng.com>
 <alpine.DEB.2.22.394.2310241329390.271731@ubuntu-linux-20-04-desktop>
 <78107fe9-de43-30b8-7423-240450bc0da8@suse.com>
 <alpine.DEB.2.22.394.2310251532290.271731@ubuntu-linux-20-04-desktop>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <alpine.DEB.2.22.394.2310251532290.271731@ubuntu-linux-20-04-desktop>
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_|AS8PR04MB7992:EE_
X-MS-Office365-Filtering-Correlation-Id: c5eb64f5-1fae-46e4-f8c9-08dbd5efad85
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	mhWuP32D9mvVH3whfjW9xJHXRpd9HKMD2SVVpj10xL5qSpQVuNVuRKq/U7kWhFVp+3lkWSoTS6HK5ObT3FMUBLe3hzXWg2xXugtXyOL33GweXNG0AWlOwLLm8WOuy3Ln8/sF/fDqEoHUKw40cK2C8DiGvGSNtNDliPLxF+qT69p4QYO+CEiq5iBZB2zBhFnL8sx7HVX87tWrEqcwwghPoMIUqJ26tRax4RnKM3sbMM9HUHhvsl3Dzgw0DmCv8V+H9NfQbcPIbcdiFKtROjfjlY2vG31iH/KWcVKOdPLiYoUWKMzcELuAb6CVrMS2thlAROVBFEofG/96wPvylk74DapHLX0pui0qnBiAEBCg2za7ygUmvzTIwaqjKSbZfoae32ZLiPI9emJkMgh82juy20yKlEJg5D7YegjxPaoA4SHFnRtbEvNypPyQfK/9mgmlHyA/+w4dehx09TELgy2o8hvuKLvgBLFTuBVgdn+v2eXxKDYigzVO8i6DcMPOVOlE1dETqGtgM2mOfyO3vLfUv1zemxOXax3Ydc/uqyemTT/iv8/eZnbees6v7SMNKry791O6yBaL1HiAMBX03Egt8W4ViXBbNKouBr4Va0r5UOZ2sq4MHNVudopjT567cItunwURgtu2MQtk88Ydn572Jw==
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)(396003)(136003)(230922051799003)(1800799009)(186009)(64100799003)(451199024)(41300700001)(8936002)(8676002)(6486002)(4326008)(86362001)(7416002)(478600001)(2906002)(31696002)(5660300002)(31686004)(36756003)(54906003)(66476007)(66946007)(316002)(66556008)(6916009)(6512007)(2616005)(26005)(83380400001)(53546011)(38100700002)(6506007)(6666004)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?Vk4vMWpBbndqd09aT2ZvdGhCOE9HRW4rc0xhdWpBOGdGYVJ0endmQWFmSEx0?=
 =?utf-8?B?bmxxK2I4eWFhdnFkQWdncFpxS1JvUjArOXdGQ3Z6WWJRREpURGhITWowWnNP?=
 =?utf-8?B?UHp4c001bkhhamVjbkZYc2ZDYUFGd2ZpSE92WU5RR2FiamJHYTVlYnk0eW1l?=
 =?utf-8?B?RGdDU2hkdUZyUUdIV0pYOG9wZVpBSDl1NEJ1eW1meGFqeU9KYU96S1ZIQkxx?=
 =?utf-8?B?L0ZWdU5EdGxFTEZJM0JIZ3dESmNLZjNSeEVteDlDc25Xd2RyYXBzdkp2WkRZ?=
 =?utf-8?B?aTBlRHlzNTZOTGtHbGJUUU1IOGJUd25sZ2lRaUpKcHloc1piTUY4K3UvT0JN?=
 =?utf-8?B?YzEybTd5Rk1pNjlFVVlYcDZMY2N2OUZmbkwxSGY0QXdJR21LTVBuRnpqcERq?=
 =?utf-8?B?bUxNelJ0M2NtTWlvTXlTUWV0Mk0wb2grRXRoaHdFdEEzbUlWRFNmUXRXdk1h?=
 =?utf-8?B?MDl3bU1uU01NYVEwaVV3SFNMTWVvOFRTa252NW0yS1lzV0F5U2ZvNFR4SlVM?=
 =?utf-8?B?ZSszUDU5YWtYTkk5VVVSVkJET0lGWEFqTi9udG5NejNudldxU1p2cnZheXRo?=
 =?utf-8?B?dU9Ua1o3S2RWcFNZdlFLQXh5b2hCUHIvTzcwZ3BmRGhUTnpLemJ3TlE5NXlB?=
 =?utf-8?B?ZEVvSWUvWGZmYi9YbFpqcEFqQjlweXNub0xTcng2aWh3RXFEN0tMVk03dS9G?=
 =?utf-8?B?OWdNRWpFODVPcnhvanRPKzBMZkFzTG5PUkNuZmxSSjBnVUlrV0g4cVRDTE93?=
 =?utf-8?B?ak5sM3AwUlN0SWdGMnZyUzB4S1NxazlpN0l1bEk2UVFlZjcxSk9pT2RxWXBu?=
 =?utf-8?B?Wi9EdGlxT0xyRTB5Y21nNHo3TW9qaUNabWJ5RjhvZURmTVphbk9tZzlCU0Ix?=
 =?utf-8?B?L3lLYjF1RWZ4RmgwSmErRDY3engvc0sxellYcldxVzY0RlZlQ2NHNTBhTExP?=
 =?utf-8?B?TXNiK3dSMUhQNFJtK3l4c29ORnhEVkRzUEFKV2JCVnE1QTF3Vk1RZTZVN25N?=
 =?utf-8?B?MTh0NmcvaytOOGhLSGVkbGs4OG4rMWUydnNqSmxNcmhRbkhtZy9qcTIwRkdt?=
 =?utf-8?B?QysxNVZ1eDc5WllsUjZMd1RFWG41TFBGbHJkSVZ5dFI3SjYrekZxbUlrZC91?=
 =?utf-8?B?aWxId1pwZFJ5TlRMdmU5dEF3K2ZqNllmNzg1OGZhU1BEYTVOZWFXMVFaOHVo?=
 =?utf-8?B?V015dzVlMHByQlErVGZFWDcrQkFwMmNwa2ZFNWxkemZZQ3g5V29zaDFCSkRx?=
 =?utf-8?B?c2JpMCtSbTNaNndEemRlTHRKZlRrVGVLTEEwTFA3NHNHWG1wTkZHZExhUjNW?=
 =?utf-8?B?QUs5WTVXektQUlBOMGNFUVhHVVEza0lQZUNjZkcxNm1iYitIM3RYWGg0M3RG?=
 =?utf-8?B?QUtmcmYwMjFOV0RmV0ErUHVTWFVTUnljMlV1TnFOOHprNVlSdVFFcmpLT0d5?=
 =?utf-8?B?by85Z3JQSm0wN2I0cHo5WDczUEp6NXBTRXhpSXNSd0FvTVA1OGVHUWdJTU5y?=
 =?utf-8?B?d1l5Y1hXbWpMSEx3UEh5VllTZU5QWFBFcFlMdEFDMW1wUThjckw4NW00b2Fq?=
 =?utf-8?B?OVlKMjNnVnFzb1cyWW5jTjUxcFZxVk1qd1p0a0RVR2pCQjE0QWN6aDY1dG0x?=
 =?utf-8?B?aUh3QlVLRUxjc2dhcHdpdlZlZFppMTlLekxoQnliek4zcFdzTW8wWWptUVl1?=
 =?utf-8?B?M3A0RmlMaDNWMkpib1lKdGw1WFpSS2drVW5pU0xqbUlRcE91NVUxR3ZvRUUr?=
 =?utf-8?B?dkorSTJuVmVFWUJwRUhlbWkzSUVpeVlOUGg5SE9nd1JNamZEUUhVeGFadlBz?=
 =?utf-8?B?NThlY3NUTGlDZkNRWEl4cGZJZWRSZzRQMXAxbjQxWDJRSEdodmtXcDFXN1cy?=
 =?utf-8?B?cStZQmdrTVI1NFFWcExzQ25kV0hTZG1NZnRld3JUUUFMZVRFdXdidHlaNTRL?=
 =?utf-8?B?NG5pUFJGTFhRZ0NLS05FMjIzbzlHWElHd0p4VmxzM29ZTlN6RXhvMFpKKzI3?=
 =?utf-8?B?ODhBZGR6VzdwTGdqUm53eGxQVm1QMFplZW5wTVhseG5DZXhtUXhpTDFLY05a?=
 =?utf-8?B?TGJvVzl4MEVTc3ZpZ29RczFYU3BQSS9EUVBvSkhzZm5hKzBQNWRiemhlZVJ3?=
 =?utf-8?Q?n2668V1RNAZrLWS1HdPkV3T3g?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: c5eb64f5-1fae-46e4-f8c9-08dbd5efad85
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Oct 2023 06:49:19.6280
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: ALwSM11JtlV3tXQlzecsk7Th6NX8NF+5X6W2nTZ/rO4YO2aFMMQRm1LB1TZ3eoZVb6STmTP+PMzQOghOsLC2cw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB7992

On 26.10.2023 00:34, Stefano Stabellini wrote:
> On Wed, 25 Oct 2023, Jan Beulich wrote:
>> On 24.10.2023 22:30, Stefano Stabellini wrote:
>>> On Tue, 24 Oct 2023, Nicola Vetrini wrote:
>>>> As specified in rules.rst, these constants can be used
>>>> in the code.
>>>>
>>>> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
>>>> ---
>>>> Changes in v2:
>>>> - replace some SAF deviations with configurations
>>>> Changes in v3:
>>>> - refine configurations and justifications
>>>> ---
>>>>  automation/eclair_analysis/ECLAIR/deviations.ecl | 10 ++++++----
>>>>  docs/misra/deviations.rst                        |  5 +++++
>>>>  docs/misra/safe.json                             |  8 ++++++++
>>>>  xen/arch/x86/hvm/svm/emulate.c                   |  6 +++---
>>>>  xen/common/inflate.c                             |  4 ++--
>>>>  5 files changed, 24 insertions(+), 9 deletions(-)
>>>>
>>>> diff --git a/automation/eclair_analysis/ECLAIR/deviations.ecl b/automation/eclair_analysis/ECLAIR/deviations.ecl
>>>> index fa56e5c00a27..ea5e0eb1813f 100644
>>>> --- a/automation/eclair_analysis/ECLAIR/deviations.ecl
>>>> +++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
>>>> @@ -85,10 +85,12 @@ conform to the directive."
>>>>  # Series 7.
>>>>  #
>>>>  
>>>> --doc_begin="Usage of the following constants is safe, since they are given as-is
>>>> -in the inflate algorithm specification and there is therefore no risk of them
>>>> -being interpreted as decimal constants."
>>>> --config=MC3R1.R7.1,literals={safe, "^0(007|37|070|213|236|300|321|330|331|332|333|334|335|337|371)$"}
>>>> +-doc_begin="It is safe to use certain octal constants the way they are defined in
>>>> +specifications, manuals, and algorithm descriptions."
>>>> +-file_tag+={x86_svm_h, "^xen/arch/x86/hvm/svm/svm\\.h$"}
>>>> +-file_tag+={x86_emulate_c, "^xen/arch/x86/hvm/svm/emulate\\.c$"}
>>>> +-config=MC3R1.R7.1,reports+={safe, "any_area(any_loc(any_exp(file(x86_svm_h)&&macro(^INSTR_ENC$))))"}
>>>> +-config=MC3R1.R7.1,reports+={safe, "any_area(text(^.*octal-ok.*$)&&any_loc(any_exp(file(x86_emulate_c)&&macro(^MASK_EXTR$))))"}
>>>>  -doc_end
>>>>  
>>>>  -doc_begin="Violations in files that maintainers have asked to not modify in the
>>>> diff --git a/docs/misra/deviations.rst b/docs/misra/deviations.rst
>>>> index 8511a189253b..26c6dbbc9ffe 100644
>>>> --- a/docs/misra/deviations.rst
>>>> +++ b/docs/misra/deviations.rst
>>>> @@ -90,6 +90,11 @@ Deviations related to MISRA C:2012 Rules:
>>>>           - __emulate_2op and __emulate_2op_nobyte
>>>>           - read_debugreg and write_debugreg
>>>>  
>>>> +   * - R7.1
>>>> +     - It is safe to use certain octal constants the way they are defined in
>>>> +       specifications, manuals, and algorithm descriptions.
>>>
>>> I think we should add that these cases have "octal-ok" as a in-code
>>> comment. Everything else looks OK so this small change could be done on
>>> commit.
>>
>> But that needs wording carefully, as it doesn't hold across the board:
>> Right now relevant MASK_EXTR() uses gain such comments, but INSTR_ENC()
>> ones (deliberately) don't.
> 
> What about:
> 
> * - R7.1
>   - It is safe to use certain octal constants the way they are defined
>     in specifications, manuals, and algorithm descriptions. Such places
>     are marked safe with a /* octal-ok */ in-code comment, or with a SAF
>     comment (see safe.json).

Fine with me.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 06:53:08 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 06:53:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623494.971369 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvuEj-0004lE-6r; Thu, 26 Oct 2023 06:52:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623494.971369; Thu, 26 Oct 2023 06:52: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 1qvuEj-0004l7-4D; Thu, 26 Oct 2023 06:52:57 +0000
Received: by outflank-mailman (input) for mailman id 623494;
 Thu, 26 Oct 2023 06:52: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=hFWs=GI=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qvuEi-0004l1-1n
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 06:52:56 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur05on2060c.outbound.protection.outlook.com
 [2a01:111:f400:7d00::60c])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 4a1263fd-73cc-11ee-98d5-6d05b1d4d9a1;
 Thu, 26 Oct 2023 08:52:55 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PAXPR04MB9373.eurprd04.prod.outlook.com (2603:10a6:102:2b5::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6954.8; Thu, 26 Oct
 2023 06:52:51 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6954.008; Thu, 26 Oct 2023
 06:52: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: 4a1263fd-73cc-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=IFMrNc0soOdyGZEG3UKln3zHvGlciKQ6PQYopr9vBKzhNEcPf7Oape9IzkmRsKFKL5aOatCSEFn/qN+D24ryOWJ8N1eHbZsVsFiDoSZgxfHvOHU3kyewjoKTfV5V5Uw+czXfzwPHXyPTQOGv528ODW0s51z4tZfjLF4UUcxJrPzsbGQRi8umwgiyUv4/w8A5O5dxprzQUPXmlbKdesmIscmdLJoQiAJ935BhDw/G1Dbg2/Kp6mzPpF4YQly2di5uOeWsouSYW5ERv9s1wGAIP0TGD/8iya3KYyS2ESenb9amMjOVAITlxExOikH2BrYPcmJ0teUWfWuoQceacy0LrA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=CcaqsFmdUh6Pz6g89a+kS9NqhCSDftwj2y9r0SAFVXg=;
 b=cMDSCm1YIRhbsYIvMBgQXrdgbUkxWi8ikCGL4apPjb5CNarvj2SAXJV+kWsP/I2VR5JYmShdV3wNZjDX4K40lx5TDxkwitqvsO0lHxo+uao1zh4uZjePTK6juCj4VemejzDg5Cm8gYn9qAkpuGqGeYqc1li6yyC34aIF5zeYYdXqs6fdC6R89HzCBS7WMce5ZfmUR2d1DeAR5owBG6eP4/8oHMY5MEiTLoRe6w0Nyp1YDlasZnBZL+sQUuyMAxxf+9HvVxvAX2iH09lMzlDz/zBEvroBXsflO/6Dyyo0uFyVXo+6DpkqskSox8lnh7FS8dD/4mthszFfqpC9vAe8Jw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=CcaqsFmdUh6Pz6g89a+kS9NqhCSDftwj2y9r0SAFVXg=;
 b=Sb/FPuSSRcJazPFVCvNopo8/53RIYNUGZlOJniPfIEoXl8Vk2efAsSLJxHZfIQjB/CCqHyvsXBkuzVRlisywUaTSviY3scBku6r7bC0b6GSRpnCyZfRG3z7Y1AtFudIYFCPtg/bWWj1MaYo+RH6sTImuAn0rwOZ8oVP/S2qxJwTuOzpXagek1noxXeeq34VGQKylZK5QZo5VVUs4zIYkBowaUQSnZVsJ9RWIGoHZF9jJhnzw40Edw9hptYx0526Fnj1TTDCA38+KlON7jtR3rVWxTlvEOnrLg07ubCI5slW7kG5Uww6C+pmCfDFp/rSzhSdqojlQJAnBjwtZO0wZrA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <3cc22b2d-fbcf-899e-1d7d-036a53bd0f7f@suse.com>
Date: Thu, 26 Oct 2023 08:52: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][for-4.19 v3 1/8] xen/include: add macro LOWEST_BIT
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.cooper3@citrix.com, roger.pau@citrix.com,
 Simone Ballarin <simone.ballarin@bugseng.com>,
 Doug Goldstein <cardoe@cardoe.com>, George Dunlap
 <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Wei Liu <wl@xen.org>, xen-devel@lists.xenproject.org
References: <cover.1697815135.git.nicola.vetrini@bugseng.com>
 <546cf30aa43d6d0687a9a6c6d23b11128e5783e8.1697815135.git.nicola.vetrini@bugseng.com>
 <f504772a-68b4-fbfa-e7d4-8d22992c7944@suse.com>
 <f23a1f95916bd61ddcd5002428d8876c@bugseng.com>
 <6d113a237846c7a41aa083e806f172e7@bugseng.com>
 <5475d9e5-ec1c-7f71-ee77-59ec2e6ee01e@suse.com>
 <alpine.DEB.2.22.394.2310231340320.3516@ubuntu-linux-20-04-desktop>
 <dd33e92f-03aa-cf3c-23d7-dcf9cce23c8e@suse.com>
 <2f88afb2383b5fdecf83d311ebe69bb4@bugseng.com>
 <96dd7efb-c214-2155-c5d1-3b9a47c10d33@suse.com>
 <alpine.DEB.2.22.394.2310251537460.271731@ubuntu-linux-20-04-desktop>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <alpine.DEB.2.22.394.2310251537460.271731@ubuntu-linux-20-04-desktop>
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_|PAXPR04MB9373:EE_
X-MS-Office365-Filtering-Correlation-Id: 5ad92ba0-3f68-410f-9ff2-08dbd5f02c3c
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	piy5NqmIDyNM0VGmiHJNyTacf/kYoR7L9EYdoC25UwPVtC+dkE0LttbXTuTRAdkcSsmV6JCeGTTiFFO+GS4DbmGzy0cGEm2qJQEP74mM7ATBhPwiT4dUYT3fbVKAP0h2W3Ned8Y0sGhOl+9p1gNdTFXHieBTJeUC2cCMIYPVuJtw/HzU4AiETLzdBItZ5mHgkNAvNf+5OHHbvVYVLsh09WXhP6fDc0XoPJ265JfcEBUWT6odWY7Z83FgA8XydX5r5zieFuOdUwoBKadTStqanFI8MwtF2Qqcn82Y8XVLkqFzeJoaJu7Vc+woXYEcPtNhPthketePDvV55sCCTUk3EUzRE0qWVT3lsWPyUYgkFd+0G1shLmawTYUWFzhLm/NBwARcygRciGtIav23c2gS22IV1DXCKN3CAi7qUEkBFX1cMSL9bo8eCU0PI6efvOkLDonWBjdzXZbZti/4B+3+CtsQ+/aTvzRb4yNWfL7FAxE0pUI3MN9SdW/Qx3T3BeeTLPMv+BOF/Z72NffauUD/5pOpgsyDZjaIG+yLbLKyUUtCNKVjgxnR+pgc8/KQjQixCS0j3G76rDzPbJ4qJIb5Sg0lRcvca/rLcA3n0IZJTjOpvNg/f0YStANxEENSrCnIAyU1ecHSToWKPRCRbkRb2Q==
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)(230922051799003)(64100799003)(186009)(1800799009)(451199024)(2616005)(6512007)(41300700001)(5660300002)(26005)(6486002)(8676002)(4326008)(8936002)(478600001)(6916009)(66946007)(54906003)(66476007)(66556008)(316002)(36756003)(6506007)(53546011)(6666004)(86362001)(31686004)(38100700002)(2906002)(31696002)(83380400001)(7416002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?M1R3UkhGNU4rMkdsK3ZIRTZZamhtYnRWZ2s3MTBxbW85WU1TR0dhYlRDWktX?=
 =?utf-8?B?YTdjeFhCdERPK2tJL1JJUGNpM1Uya2cyb3ZYMmM0VDVqREdhVnlvQU95dUFu?=
 =?utf-8?B?SXdNeHJGckdIUnhHZ3NYc0YwT1pscGVKUHhmM0dIdjhWQllXMU11cnRZbTFz?=
 =?utf-8?B?NHEwSElDMjRFZVlYZnlGaDhmcnl6dTNINldhSS9BUjhOUysyY3dJR1JQckFZ?=
 =?utf-8?B?Yk1aVlNsaVo3eE1jaE1FUDJIaFoyRVNGTjN0aFZvTExuTWppNVp6M2d6RWlR?=
 =?utf-8?B?MXU5YjMxK0NPSnpQcUhTNmRuZTVXRFliYndFV2Y1N2dKYnYxWGE3WVk5ZUlT?=
 =?utf-8?B?cE9ERnV3S0dwUkMrQlNXaDhXSXR5N08vVFBiTWJ5WDBpYTFENEwzcmJYVDlu?=
 =?utf-8?B?SXJpYW5oayt1ODJxN3NZYms3T3UxSUV5bnRlM0lXY2RFRXBLY0Y0dWlybmFF?=
 =?utf-8?B?YUhCdGhFWTRLV3B4bkdnLytyUlBqbmw1bml1L1Juc3JMUHJMUnVtcDFpQSt3?=
 =?utf-8?B?R3hrT3NaZTVFZlRtcTlPM1VkRzFyRTJ3VUJ5cjkxaE5qSkErdXY1MWJXSGRP?=
 =?utf-8?B?RkxTSEs3aXMxakZrQkJ4RGtleFBudGdRNVIxcUU2c2c3bmhZYWNNektGb1dh?=
 =?utf-8?B?eWNuNjE5WnBIdGhCa1hxV1lLbitMRm4xSmJQYkhFKzkwbnJGdFZJelhyRzJL?=
 =?utf-8?B?R05WNFVDQVV1alIySmtLUldVdEFyc1ExK0pKcTJjd2p2TFNHYTRTaDFhTWNX?=
 =?utf-8?B?bDRTWnJzUkEyL3V4U3dyUFBYUWdJbTJRVUJya1hEQmtWTUVjdzdvVTJ5dVpW?=
 =?utf-8?B?SndsWWtCNDkzK1MyR3p0dG5YR05YNFhvSjQxVEpZKzRoSmwvaDFPNml1MXVK?=
 =?utf-8?B?SW5xOEdYTHdUemk2aEkxMENFeG9GdStrQWZpdlFkN3BEdzZQRDA2OE1Lb0pD?=
 =?utf-8?B?c3FSN0M2NHdiZlZ3VWN3dDBvYjBUamZsME04Um5TR3JOUE5QZ0RQdmc0UUpw?=
 =?utf-8?B?QVZ2T1F2ci9wSy9sRlNpQWpRd2hyc3dlQ2VSOU5PeVRFcDYwcUVvQWtLdFNz?=
 =?utf-8?B?TXpPaFVQenkwWU5KQW8rVEdja1Bya0VqdzBDRnE1ZzdLZWp6OCt1QXhTSW82?=
 =?utf-8?B?TDJUOUZoc2pIbzl5UzQ2dXhUV05XWHExakxFQmJhZ2JvaGZ4ZUxleGdTa3NC?=
 =?utf-8?B?TnBCWkc4ZTRqZEN1NERLdWJkMk1JYUJIYVErS0FJQ1hhemp0anFuNEgxenlK?=
 =?utf-8?B?ZXBHRlExZE1weDRDNW16NUVMR3hoN0lNNndlVGs3ekZEdWJ5OTRWRmFnYk1Y?=
 =?utf-8?B?a0ZsNzk2djZKUTlkZndxRytQMnVrODBsRlN5VC9tNzc2VHpmV2xZTE5xK0hJ?=
 =?utf-8?B?Y0hWeXF1a0wra0tKd3BZMVl5MEE5RzBFUkN5S2VBWlRYTEtEd2dtV2FsTHVj?=
 =?utf-8?B?S2k1N01HWCtLS3pjWVJsbVFSWFVocTVkN2RQdzVHUmNNNkNzcmV5aDZBamd3?=
 =?utf-8?B?d0xhVVVibE9zVmJYdFhWS2czQ3ptTnkwdWtlYXhtQXhSVTcxOURGT1Q2QkRO?=
 =?utf-8?B?YS90Qm1kSjIxdGZmcGdYQWVTUitYT1BtbldSemgzZFZraitsVFlOb2l3c1hv?=
 =?utf-8?B?K2YxWVNHSE1xdk9UTUxmdnVRMjNVN1dSa2FZZzUyYUtmaVB0eWdzWXljNlJW?=
 =?utf-8?B?TG5XUTV4a0RxUHRHVFhmbWloalF1Rlp2ZXlBS0hlRzZ4bERlMm5WREFGbThH?=
 =?utf-8?B?MTN4aTk1c0J3T0ZmOGxoeFBTYXhXaDVDOXY5VHBlSXk0NXgxcFNLUGtLNlp4?=
 =?utf-8?B?QU9XVFJLdTJWK2ZSYnR3ZUZNM0tTNGN2eGRqMXVFQmR2UlZFQUN2NkhtbkNs?=
 =?utf-8?B?TFUxc1NhM0ZCTHNGYTdXUjBEMXZQcFBzMXlENHdKTmk0ZGlVUGdVd2hXcjlk?=
 =?utf-8?B?a1BndWpkYTB0OGdjbTQ5dW1Na0tMVTBvMmRtTHVSWTBNZ0o1VEFkQzJEcVE3?=
 =?utf-8?B?WnE4SWlMMERsVmZZK2hUL3ZMTHhBK0JDVjh1M1RGeXp2ZHcxdzJ1MC9TQXNN?=
 =?utf-8?B?QXN0SW9ZRW45Q0NkeEhBa1M1TGp3Q2FIM0pnNSthSFNqRVZqOWJ6Ujl5NGt3?=
 =?utf-8?Q?12j3mECrwubrUqIeGXzMMA6qU?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 5ad92ba0-3f68-410f-9ff2-08dbd5f02c3c
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Oct 2023 06:52:51.5391
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: /UTS2O7b56yklpF3Qp8nfBjcGO86hrpNTbvgYtGuHPi/AR75KvXHcYd1Iefd15A0VTS+EATywmNH1k8u+rDK7g==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB9373

On 26.10.2023 00:38, Stefano Stabellini wrote:
> On Wed, 25 Oct 2023, Jan Beulich wrote:
>> On 25.10.2023 16:50, Nicola Vetrini wrote:
>>> Ok, I'll send a revised version using MASK_LOWEST_BIT, taking into 
>>> account also the
>>> other comments about the explanation on the macro definition
>>> (which some IDEs even show when hovering on its usage, which could 
>>> partially address
>>> the latter concern).
>>
>> You're of course free to do so, but since - as indicated before -
>> MASK_LOWEST_BIT() imo isn't a better name than LOWEST_BIT(), I'll
>> continue to object.
> 
> Jan if you are OK with that I'll ask Julien to break the tie and pick
> the name to use. Julien can you please help us move forward?

Hmm, I'm having trouble seeing us at the point of breaking ties yet.
First we need naming suggestions which actually unambiguously
describe what's being done by the macro. I gave one suggestion which
I think fulfills this property, but is a little too long for my
taste. I gave another suggestion with a far-off but shorter name,
which I can appreciate isn't liked. I've not seen other suggestions
fulfilling this base criteria.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 07:00:10 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 07:00:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623499.971380 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvuLb-0006Ku-St; Thu, 26 Oct 2023 07:00:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623499.971380; Thu, 26 Oct 2023 07:00: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 1qvuLb-0006Jy-Pj; Thu, 26 Oct 2023 07:00:03 +0000
Received: by outflank-mailman (input) for mailman id 623499;
 Thu, 26 Oct 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=hFWs=GI=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qvuLa-0005pw-EG
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 07:00:02 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com
 (mail-db3eur04on0617.outbound.protection.outlook.com
 [2a01:111:f400:fe0c::617])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 46a3ffa7-73cd-11ee-9b0e-b553b5be7939;
 Thu, 26 Oct 2023 08:59:58 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PAXPR04MB8390.eurprd04.prod.outlook.com (2603:10a6:102:1c2::18)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.11; Thu, 26 Oct
 2023 06:59:57 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6954.008; Thu, 26 Oct 2023
 06:59: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: 46a3ffa7-73cd-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=jygDBIWgNztLvu0DLqlNI22lb0+KS99lddalB5RyqhlIdm88qwQlKc+7pLof4quB6DD5U0VRvexxhlSpwGERaTZqsHtv0IemWaMzskiHj7qj7tOd9JUGLJYTvLtj/ut6RrU8SECVXt3/w6mQXTmRe1UP0iVf7gmAIv/m96vyylyeNnRtXHPkFqm6sEEfUuFblO4j2BQTMFMDbxFiWF6kEjv0d4KBIEhPTCEgqhPZ0h4jYQVxQSB//eM+NjPdIa5gBjxIng8Jb1ctZbnhs2uzXGE9AUjKhxb5rBMyfKpfv6xooafnNt+d+a3Xh609iE32XEer9csjf9WVinsVj04CnQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=jwRENgDoaudvlm9RedMCBNrIsbxN/q8CsM7rcTpx0d8=;
 b=eJVta3TgOyhoH/NRfq3IaR0n8iltLfFtesucQMiryQ+36b2Ub76hiNJN0nRXE+LMRZ/m/3S7FHEFRKfkUZMFvAP1P4brc4M5G8meOeAA4RetYdI4DEse2s/fEQ0B0++mnoD0LpGTdonOGo0fH70SvCb7PLJaQuo16F6AfHwNPgW2w5kHNPPAw+adelS3d2vNHhLBIHZVIiAC21+gpQBNN4Nu4BL0EERVoAUkvlAg9E5i1jd2r/w40QaFyUkpKTqa5eZ7S3Dp7MzC5C0H8iw14wKBUGqJH+TnzlX95qkYi9Jgff93jTXNi/GdKw0c7gl7OGf1yspQIsnqI/XU3wtG+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=jwRENgDoaudvlm9RedMCBNrIsbxN/q8CsM7rcTpx0d8=;
 b=BCqcvGcHBmSThTQEuggaRtqzCG4Pp4dNd7eW1kjwfT+vxt3OmZpT9Wo4B9JR7NCnbfSha8XePcmt59e+i3seG6uo8eHnzC+m9ykgm2QG5qT8y+bmuiG3PvqRJp5hC5PK2aYdewdUBnZ3zkcOmy+cP0qEXIodfSdZ/sJGZIjWHiCHFbsAVRTDply9VuCfKlJYOQaKBGNl06jyBycD3GCRdobUH/kCiBe8AhiG/7I/Hu56hwYep9MIGRmpp4+eRcLC30/2Vy51mKTmUpr4w6jsRHBlDbmzGRlhIZruFZnTWaT9tngHcnoHFFCy8VSw5gLVXSXJCMQntxrxH4aOLPTvFA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <abd5c802-00c0-eda6-05ef-d10260ddb383@suse.com>
Date: Thu, 26 Oct 2023 08:59: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] misra: add R14.4 R21.1 R21.2
Content-Language: en-US
To: Stefano Stabellini <sstabellini@kernel.org>
Cc: julien@xen.org, bertrand.marquis@arm.com, andrew.cooper3@citrix.com,
 roger.pau@citrix.com, george.dunlap@citrix.com,
 xen-devel@lists.xenproject.org
References: <alpine.DEB.2.22.394.2310231628500.3516@ubuntu-linux-20-04-desktop>
 <967caedc-3d10-dee4-6614-1b9dcc0c1c66@suse.com>
 <alpine.DEB.2.22.394.2310241753220.271731@ubuntu-linux-20-04-desktop>
 <1e2991d7-b7b5-2fdd-38e0-ee1eff607f0e@suse.com>
 <alpine.DEB.2.22.394.2310251759560.271731@ubuntu-linux-20-04-desktop>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <alpine.DEB.2.22.394.2310251759560.271731@ubuntu-linux-20-04-desktop>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0263.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:b5::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_|PAXPR04MB8390:EE_
X-MS-Office365-Filtering-Correlation-Id: 6403b832-9b6d-440e-2473-08dbd5f129d7
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	zA5yC2I2Xa80sUzwom3h7qjqFbNoUuw848ykjhDyFT9gBpdbG8X9y/9l4dMI0ytRDMdyMZSsCD4WRWy2rav4FofdXPzhd0A4rFuuva9QLQC0jSprAmi+YGIfz2IzJMguY+9YPMGjR4KVge/5bGb6H9z6JX6iYEBDuTC95jwWRe5uIyGuonyIdbSOSzdLQRakuB6FLSiXKv8Hhu3v2ReVRJzS2wc/HkbxRuV23twNWHEUyFBJe6MIw0k2r8fSKqGQMx15zZFNa++VYJdHJclRD7+gCJs9fprFCxaCDryQV8pMcLtfn58JeJ8dUvIY3kPXj6PU1BsqE0QDRwHBZSx6ilzJYGk7lDuWlKbuXfYRdjQAvrxPm9drAzBOZcv8AahFCJRBfGVGp0kmwvFQULB2iTiKTGzVq/jpdv3Vg62CTtqUXNBchmGgfcaF1i97MouqlZ1qnOtBWaM5QEIu7IERUGlO5WP1OQ9CLKZRkIue9cATlLJn+xTgz7hek1ceSQOMqpKM13FYXl3aW5suiLzfCqX8cTE7kiyIWpPE9UdnPb+fS7v+6BE5uHAB5m+W4mL6lcMxbAhGRBSQVc8UzTvOhAsh2hwD/Uk9V2M7H+lh1Z6tnomv2vwFvFiK1zCgV1IfK/65ErKCYLdYiJ3yT6BfRw==
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)(376002)(346002)(136003)(230922051799003)(451199024)(186009)(1800799009)(64100799003)(6916009)(31686004)(2906002)(5660300002)(4326008)(8676002)(36756003)(66556008)(8936002)(66476007)(41300700001)(86362001)(478600001)(66946007)(6506007)(6512007)(6486002)(53546011)(2616005)(31696002)(26005)(316002)(6666004)(38100700002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?RWJqYjlOUW1GZEEzKzhuamhDcURYVExXNmQ2cUpzOGZwbis3V2VTbDc5R3c2?=
 =?utf-8?B?VWtDbW0wWFlySzZ4S3Y4M1FOdU1za3hSaEs4bXZvUTFXdWdVdGdUQWJsTE1z?=
 =?utf-8?B?NVBTZHhFQkVUVElubGpVNzNWY0FQMk1qWjhNY1N0WlNXU3JTQmRtZ3c3TjMy?=
 =?utf-8?B?UU0yUm55VnRGNHVtY0RpZGNnVWJTMnhPakxVSFZrYnR6VXFkaUQxNkFlSWlT?=
 =?utf-8?B?WHRNa1ltZXZ0YnZTcUlCWVRSR2c1eC9QRXJWam1vV09VWWhxYlp0TWZid042?=
 =?utf-8?B?M01FTlgvcXpwSjNpTElSY25ranMwWkh6VGwycmlyd3NaMm5CR1A3eXZCcUh4?=
 =?utf-8?B?SnRPOWZMVkhqQ2c2dnIwVWFGRUsxSnoyclo1YnhXQ1hFZWsraWpGSzQrb3lT?=
 =?utf-8?B?bE1PQ3ZLU20wUXFmRlZSVElhSGlDcWx4R0EyZ1l6MXFEU3pRbjAwQ05JRDBD?=
 =?utf-8?B?ZnRnTjk5YVRYY25LeWxTZXJuZ0xsdkppMTJRNVF4Q0wrRndVVER5QzQ5b1Za?=
 =?utf-8?B?Z1VvK3hMMkhRK0l1RFNQOWJ0MUFrc2NLd0ozVTcwN21pbGhDY0FpaG5WYnl3?=
 =?utf-8?B?ODFZbk9IQ1liT05zb1VpZjl1aTVHSzhIRlpCSHY4Z1dpK3FoSG1CN2dwb0d3?=
 =?utf-8?B?RDVPRVJrZW1ZS0JtQkFtRElHeXljSXdTMVp5T0t1czJBZ095eXJiTWhiV0h2?=
 =?utf-8?B?RnFLVWpKTXd5WHU2UVBhMWVJRVQra2pWbjFPUHZkdDNId3JQTi9pNHYxalFj?=
 =?utf-8?B?cU12eElGaFB3aCtmZlpMcWYwOWQxUTRUR0JwSGdoaFlSanFNYmtkc0hPL0VV?=
 =?utf-8?B?aTlkMDRXVWxnOHozMG9uSTVFSjF4SlljdUNUNng3Y2hjenVMTVhrM2tqMVZL?=
 =?utf-8?B?MXBxYXVIWHNmT3BwV3hZTUhCdW1JbHdDNUFObXVrZ0p1dGtPSWJ5Mmh0UlVx?=
 =?utf-8?B?bjBZVm56anluK3JiRjAxdUcvd3J6K1VzZ3p0VUhIVDloWkhQTzhhUjBQaG9v?=
 =?utf-8?B?di9xN1grOWlYanFuNk9md0VSU3RVRzBGemVENCtaOS96cHVkMzVOR1JKNU1N?=
 =?utf-8?B?M3dUWVMrK2Y3cXNsTDFKMDk4Nzl2T1BXZFB1OGpmQThIb1VQbGJ2b3FiSXRn?=
 =?utf-8?B?cVhldlkxaTk2ZURBQmg2VlNjYmtWUk0weHZVcHMrQVFKTElLYTV3Si9lMXJl?=
 =?utf-8?B?QUs0MDlZWVN4R1pTVlYzTEZ3SGpTNkVQZkFTTFo3c25BNHdMME9hdjZ3NUdo?=
 =?utf-8?B?aGZwRDFLeXBaTCtENUo1bDRGRlVmMEk5QXp4Y05FdGxCZjFSbS9zRWxneXc1?=
 =?utf-8?B?aTlPZDZpS2N3UTFpbml2dzNOdWo0NzFFSWRZQ3hJT0JJNUNTT0M1bXllUHNj?=
 =?utf-8?B?TmhjbmREdTNhNUtVQnlrcXRnM3ZLK05CSlZzOERycmM1aWFIRXRtVWJwak8w?=
 =?utf-8?B?bjFIVGp6dDJLdmdEV1RJelNmeDYreEphQlNVYW9zOTNES0g3VmlRMkFzU3Zm?=
 =?utf-8?B?czZiQ28xZngrOEJ2QnViOFJLSTRxQVI4MEViLzYvaEJhU3dJZ1R5OVQ1QXM1?=
 =?utf-8?B?dWY1MXgvY1lnK2RabThlUUM5cm9vS3lNZXpOQ0NWS3ZCVHpnMHl3UWxiYWhL?=
 =?utf-8?B?TGFBRm0raUNtRnVreUgwK2FUNnJZVUlmYWtjYjlEZzVrY0k4Mi8zc3Bzb3V5?=
 =?utf-8?B?enBlRmdyZzNGTHpTVFRpWUorRGpoN2Q1MnhHbHNGTWoxVG42c0NxUDl1bmRO?=
 =?utf-8?B?QzNoWkxpVVRFRHlpanNFbE5oMkpWVkw1UHprL2I5ZFMzbnBVQ1Y5V1RsN3kv?=
 =?utf-8?B?L21nNTBoU3dGWDBKbVFVU0duT04xWWRWRDZEZzZxaFJOQkFCbmdkS2M0QWNu?=
 =?utf-8?B?VnFWMjlVcmNJRjl0QlQyQTZCVXY0RFZuQ2Z5REVuYk9LbTBjYmpYb0hReVN3?=
 =?utf-8?B?TVNTd0crZDF1RXFLNmxEWTE4OGs1SVpTY1IrVWxEL3FHWDZUdndUeUd6RDgr?=
 =?utf-8?B?UkJTN1RacXVVelJSVDh3a2FhQjlGZ2gzM0c3d1A3WGJ0d0NsVEVPa05FNkw2?=
 =?utf-8?B?Vi9EekJybUt5THZzUmlrYUtaMnkrcWR2V1lPVXlTaWNNbGV6NWRPWlUwajFp?=
 =?utf-8?Q?/BZ4i69aYeHWdqS3bnmdsYVWq?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 6403b832-9b6d-440e-2473-08dbd5f129d7
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Oct 2023 06:59:57.0095
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: nOMpNoVJ0wk6YWysq/uzezd/vvuXe87VFqAw4Ysghv9ciebmCr2NjNGJMGlKlKmg1ORFxpxCq6rCaK5/jPqxpA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB8390

On 26.10.2023 03:16, Stefano Stabellini wrote:
> On Wed, 25 Oct 2023, Jan Beulich wrote:
>> On 25.10.2023 03:15, Stefano Stabellini wrote:
>>> And if we can find a clear general comment about the usage of leading
>>> underscores in Xen I am happy to add it too (e.g. header guards), but
>>> from MISRA point of view the above is sufficient.
>>
>> But what we need isn't a description of the status quo, but one of
>> what state we want to (slowly) move to. The status quo anyway is
>> "no pattern, as in the past hardly anyone cared".
> 
> I guess you are suggesting something more like the following, but please
> feel free to suggest your favorite wording (it might be easier for me to
> understand what you mean if you provide a short example).
> 
> ---
> All identifiers starting with an underscore are reserved and should not
> be used.

Again, no. Identifiers starting with an underscore followed by another
underscore or an upper-case letter are reserved. Other identifiers are
dedicated for a particular purpose, and are fine to use for (at least)
that purpose.

> Today Xen uses many, such as header guards and bitwise
> manipulation functions. Upon analysis it turns out Xen identifiers do
> not clash with the identifiers used by modern GCC, but that is not a
> guarantee that there won't be a naming clash in the future or with
> another compiler. For these reasons we discourage the introduction of
> new reserved identifiers in Xen, and we see it as positive the reduction
> of reserved identifiers. At the same time, certain identifiers starting
> with an underscore are also commonly used in Linux (e.g. __set_bit) and
> we don't think it would be an improvement to rename them.

Everything else reads okay-ish to me.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 07:01:31 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 07:01:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623504.971389 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvuMy-0007KE-Bg; Thu, 26 Oct 2023 07:01:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623504.971389; Thu, 26 Oct 2023 07: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 1qvuMy-0007K7-8w; Thu, 26 Oct 2023 07:01:28 +0000
Received: by outflank-mailman (input) for mailman id 623504;
 Thu, 26 Oct 2023 07:01: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=t3Pd=GI=intel.com=oliver.sang@srs-se1.protection.inumbo.net>)
 id 1qvuMw-0007Jy-Ih
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 07:01:27 +0000
Received: from mgamail.intel.com (mgamail.intel.com [192.198.163.7])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 779c70ff-73cd-11ee-9b0e-b553b5be7939;
 Thu, 26 Oct 2023 09:01:22 +0200 (CEST)
Received: from orsmga006.jf.intel.com ([10.7.209.51])
 by fmvoesa101.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 26 Oct 2023 00:01:14 -0700
Received: from fmsmsx602.amr.corp.intel.com ([10.18.126.82])
 by orsmga006.jf.intel.com with ESMTP/TLS/AES256-GCM-SHA384;
 26 Oct 2023 00:01:13 -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.34; Thu, 26 Oct 2023 00:01:12 -0700
Received: from fmsmsx612.amr.corp.intel.com (10.18.126.92) 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.34; Thu, 26 Oct 2023 00:01:12 -0700
Received: from FMSEDG603.ED.cps.intel.com (10.1.192.133) 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.34 via Frontend Transport; Thu, 26 Oct 2023 00:01:12 -0700
Received: from NAM12-BN8-obe.outbound.protection.outlook.com (104.47.55.169)
 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; Thu, 26 Oct 2023 00:01:11 -0700
Received: from PH8PR11MB6779.namprd11.prod.outlook.com (2603:10b6:510:1ca::17)
 by SA2PR11MB4955.namprd11.prod.outlook.com (2603:10b6:806:fa::16)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.26; Thu, 26 Oct
 2023 07:01:09 +0000
Received: from PH8PR11MB6779.namprd11.prod.outlook.com
 ([fe80::29f0:3f0f:2591:d1f6]) by PH8PR11MB6779.namprd11.prod.outlook.com
 ([fe80::29f0:3f0f:2591:d1f6%3]) with mapi id 15.20.6907.032; Thu, 26 Oct 2023
 07:01: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: 779c70ff-73cd-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1698303682; x=1729839682;
  h=date:from:to:cc:subject:message-id:in-reply-to:
   mime-version;
  bh=uv9FtYcgbdgRQT4dXgCHpDo7YSoiekT69lEvYb+L1/c=;
  b=JZGjM3sPX8Q9TYZcVd1qm+Df28DDU/s8ohNy2JlTWI7oNmdrmcGysZbU
   Ug1UkT8O2CRCC+46gEu6LQBfaKvKuvsVtBNA8IQl/J9barIog0CNlL8WA
   2t3shp5gp+8X67LXVTGhPzZ8aO6gtXJb9u1uzvUwDNI7ZTwtkuBQ3SAUX
   CmuMcZGj5ET6TJAz5KjWbXX4JCvsY09BUPPdjhUH4hyXEXJ9UolP7ue8s
   DwbPL64BVBw0bvtD7EfCoXiSUjEd2RGlvT6iNycwHMjGOwmqS/jG4qszD
   k8U0YPjin6j+fTz1YND2CNghXBDrjiOwuajuwuimVSXnplOjuoEeh+UE8
   Q==;
X-IronPort-AV: E=McAfee;i="6600,9927,10874"; a="9032433"
X-IronPort-AV: E=Sophos;i="6.03,253,1694761200"; 
   d="scan'208";a="9032433"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10874"; a="735644411"
X-IronPort-AV: E=Sophos;i="6.03,253,1694761200"; 
   d="scan'208";a="735644411"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=j8MgvPci7Y1Tay8zOVnShjAKxhebhzlpXuCkTiapOc7KxTTJx9Xmloej9OfiPWDCdpISYlxYA+kJCjTNzsqPQHB9pSOx9i5g7OcJO7HWtidFCl1W/7jxiuxE6XTknQw6mTlZ/g+zfo8k8Sj/MNg+RkO1gQDUi/u2oUvDURAu38Dtl1pKTdcdvSp5B2uO1l6KtnW/PDiU8++rPw/su4jCxGaLFt1FypciMQs1YEQ/CDk+XkKsdd5SFS3nPtjMXmpM3e3IRZRn9DuaB4TY9cjqEFC3Aj1hu9vvRpoTGuKh5rnn5C2ANH+sLTfR72f+2Oi9HNE46SwJF7JUFkjStw9DMQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=HpicIwgCyMiXMnViXnPSuo/iTpi5AXFW+c+iuqI68cY=;
 b=RnX0jnIKD9WVnNd8OijQojYDfKugfVs5cILKyhfg28kJVkxjS4MhL4nJd4Z8y1+CMWeRlxojfJ713ZDsIwRptsLHCLONSfR/LyG9VXR7tsolcbD72dd8AD1S8PMpj3Ot9FXWp31skTpQL+nMgHOcwHIe62rkZ4u5Q4U2wNws+3W9jdXZ3cQIwGMfrBBdZHFl7qZvavuQ1JnbnJqLOvwe3XFwyeRX6l2UvfUi94RlwXOoBoCCvH1Nggd8zDRwKrEUYjBwnr4WkQ9LVj9iGCz0gGMZqbCQRsuI3WBFhQ3Kd/RPhNei6MAMKQzT3/GB89b5wvWQ6DUvFlQgIiJr+QPAcA==
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;
Date: Thu, 26 Oct 2023 15:01:00 +0800
From: kernel test robot <oliver.sang@intel.com>
To: Uros Bizjak <ubizjak@gmail.com>
CC: <oe-lkp@lists.linux.dev>, <lkp@intel.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>, Peter Zijlstra <peterz@infradead.org>,
	<linux-kernel@vger.kernel.org>, <x86@kernel.org>,
	<xen-devel@lists.xenproject.org>, Uros Bizjak <ubizjak@gmail.com>,
	<oliver.sang@intel.com>
Subject: Re: [PATCH 1/4] x86/percpu: Use explicit segment registers in
 lib/cmpxchg{8,16}b_emu.S
Message-ID: <202310261417.b269d37e-oliver.sang@intel.com>
Content-Type: text/plain; charset="us-ascii"
Content-Disposition: inline
In-Reply-To: <20231012161237.114733-2-ubizjak@gmail.com>
X-ClientProxiedBy: SI1PR02CA0035.apcprd02.prod.outlook.com
 (2603:1096:4:1f6::8) To PH8PR11MB6779.namprd11.prod.outlook.com
 (2603:10b6:510:1ca::17)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: PH8PR11MB6779:EE_|SA2PR11MB4955:EE_
X-MS-Office365-Filtering-Correlation-Id: 58c73804-76c7-402a-c9c3-08dbd5f154b1
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: UzDrHq5mU1FNCPxfh9vxl9G0pkUWWYHnYpDwKAMOsviRaH+BxpWa5qyzMK8T4SfzSAsRnKLqsWpRt0TLmHLFhkAq8fg+6NxS4uf65TquCGtxX6kdPr6fX0OmeuTuTR1V+u6yOevj29ILmql2HEj6gboaPoMoBK1ep7kKJ4sxEop1S93IKDA2xyJFYvOUQoHo7R6dPpQxk1lCvlHaYmsmcEZTR3iEUsl8DzY5bn/obViq8zihSd0xrHYneWPvZ8pLZkibWQykel7ub+mdtpiZl0a4u7rWwwe76R/jepVsmq9CSh64pmIGKJatSu+Kxs7VM17MdqM5eN6l8/7qZ9WD69r1iqpQoD0kVr6Q8UQ3lCuzas0+DniUdakCsfqrCd9zuEL3nX3WQss9PmrraJl6RLkZdOBhQJxQeLlo2OLr3vWI4RicoXveHFsdCGZ1WCiiXLb9xbfjz+Yp+pzoA+PQcqh7BW/hfOOO/5hU97BD024xDCmtXFtlCoyJvYcydd8Mbuq+WVamHnWv8N/CkfRcEykdYEKUaezfXpdCftzDU5BGRFZSSMsfkyDiBs5eTEejbUBIiDVgp9U+dtLTW3EogpqMbwOii/p5P2fgNNzpcqTNyiD4xQA9E/N3yATwFMH/
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:PH8PR11MB6779.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(136003)(39860400002)(376002)(346002)(366004)(230922051799003)(451199024)(186009)(1800799009)(64100799003)(82960400001)(38100700002)(36756003)(86362001)(316002)(6916009)(66556008)(66946007)(2616005)(66476007)(6512007)(1076003)(6506007)(6486002)(966005)(7416002)(6666004)(2906002)(478600001)(8936002)(8676002)(4326008)(26005)(41300700001)(5660300002)(54906003)(83380400001)(133343001);DIR:OUT;SFP:1102;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?e8s36tBkVeoNXQoQEGWr+ut9MfXQG8GligSyry09JfwmR51N+5CX9XjS3cfT?=
 =?us-ascii?Q?r4+NIwX67v2VR2iu/FY+URmqrrefSwd7LkJCYhlPR6pHR770DYzOtIE/G7C9?=
 =?us-ascii?Q?cin6UmKZ15blBOGjHQw8+p6ORXC994UehoVGMsPjOq97A0+P6dvzUDhgFe5P?=
 =?us-ascii?Q?GRMmcJQWO53dZJlg/Kx00gGRnFw5IoraKyKWtWiBHSagBieGhLjE9tU3QqFr?=
 =?us-ascii?Q?bIlO0GSvXHWYaMOe3zbeYVotWPhbe1avZFy+DU9rcZwTkau1iYh8LQVYhdyv?=
 =?us-ascii?Q?y+VJqQaZXVkTukFTTMPbo2ppOEVfDluQAQsepAz8Z9exYXCyWJ/FT+G7PFtq?=
 =?us-ascii?Q?KS+lCQeckWWRDmQ5Pwul2bUkxT/QTjktDoL/1ol/yyABiue+XrYuvSQPlerK?=
 =?us-ascii?Q?NEXl8Se+4Ut0wfXOWAAS4YpxziZ/ctkxsWTBmUeoMB/qjpPVVdIKRH27tgP2?=
 =?us-ascii?Q?Zd5oFV1Ppb7uQCygiFCs24pVeDkhAG0AbSPv6y6hLGhUGh+4yBIpCGJ6RAEj?=
 =?us-ascii?Q?Rxtv4SbNhDg0xn1bWj+X1KQmi2cxgck3/iD0A2RDRrvpXW2g8iSoq6CJB/yZ?=
 =?us-ascii?Q?mElmsz7bli6wmWRad4zu6c37eWyQQeu5OUob6rT6NyFV1L+FAiKTrzeuLJFY?=
 =?us-ascii?Q?WIWp/W5dpd3dv3jxwdP7anXsqZUEIcSbLGj9Tkah40urXuq/G9oggOAErZSG?=
 =?us-ascii?Q?AwrfI4Tm1/SLZUZazbxT0dDweakRnmaSP8oytyUwmMDxG+MaKWgZxhlRMWkZ?=
 =?us-ascii?Q?BTPhurnuWfhrYI1bfLG6d69vp/m7xlDMhgj1h0wsZ22nugnfH3ybXZpx9rgE?=
 =?us-ascii?Q?+yvl8wJr1uwbdvSqMdgV1g533s1bINV8DvcC9vAvRzNW4WeELTLW/1AtVRDc?=
 =?us-ascii?Q?72T3/bP/u5nT5WAteglfdIT3mb+OMQwfuZwRW5mldimfNSUpeEQQsUh8hk77?=
 =?us-ascii?Q?HUh7qp34bNkIUmJR3edVPVkoZjy2ATd+uVaDDQGkFunxSdSetZgtxjrLNAz9?=
 =?us-ascii?Q?JhkuGQKmgVlVLwY9DKbGyUhyLUwELBzGMv9iZewhwbzKRc9yMoJNG4ZZ1b4d?=
 =?us-ascii?Q?TJJeSNQZyjC3N/qU2afI4a+mTq+Q1eUUsRUlhft0cILIHoZm19J4Ycp2+kZ2?=
 =?us-ascii?Q?+C2hAFFL+5tcin8qArzjPWjeUpRL9mPJjiDsT0kggCnhJfeF8BwmAEzsl9ZN?=
 =?us-ascii?Q?Innosxi+hMvv1v4nWFJ2H0iI8uWL/ezINsqSPWP1ayIZA578erO6wjoK4QqT?=
 =?us-ascii?Q?LkRMl1EOxhHo6tHnDsNAZ8lvZKiSTv8JN3FXxkIffUlngHMBZE1B7zLkKoZF?=
 =?us-ascii?Q?T6hU+MjN5QfWlMBTqba90xN9oe/hasn0h4bkgMHB8sQpLEJcUeC2w60eynjZ?=
 =?us-ascii?Q?h/GYhEhUMYB25NuISmIfuEMZUo4uqIHY/YRV4XqKzmiLU5HKJ02efT8LIGg+?=
 =?us-ascii?Q?0fC1YM7H8SLSKVoe4Ik+EVP372wvTDFdK68J4nDvJVUOTuG4i8RCIwGfBwv/?=
 =?us-ascii?Q?dq+AgCoV5n2aAbcOrcU+5B1hySkLknx3CarVHmvsAt1EABhNWtRCTJ0Zezg/?=
 =?us-ascii?Q?YWag7RBL5PTJf65dSxOL4ActHp7FmicsMThIgE3+utRsW14IKr1GO5Lz396W?=
 =?us-ascii?Q?Aw=3D=3D?=
X-MS-Exchange-CrossTenant-Network-Message-Id: 58c73804-76c7-402a-c9c3-08dbd5f154b1
X-MS-Exchange-CrossTenant-AuthSource: PH8PR11MB6779.namprd11.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Oct 2023 07:01:09.0952
 (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: t2b/gKn1gHUm3jJRoIS05VhsxSLpv6SpaYjQTYqxYRcORPUWwtqlfSue1dzrD01xsAcXfNt63pLlVjcvKhisCg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA2PR11MB4955
X-OriginatorOrg: intel.com



Hello,

kernel test robot noticed "general_protection_fault:#[##]" on:

commit: 33c7952d925e905f7af1fb7628e48e03f59885da ("[PATCH 1/4] x86/percpu: Use explicit segment registers in lib/cmpxchg{8,16}b_emu.S")
url: https://github.com/intel-lab-lkp/linux/commits/Uros-Bizjak/x86-percpu-Use-explicit-segment-registers-in-lib-cmpxchg-8-16-b_emu-S/20231017-111304
base: https://git.kernel.org/cgit/linux/kernel/git/tip/tip.git 92fe9bb77b0c9fade150350fdb0629a662f0923f
patch link: https://lore.kernel.org/all/20231012161237.114733-2-ubizjak@gmail.com/
patch subject: [PATCH 1/4] x86/percpu: Use explicit segment registers in lib/cmpxchg{8,16}b_emu.S

in testcase: boot

compiler: gcc-12
test machine: qemu-system-x86_64 -enable-kvm -cpu SandyBridge -smp 2 -m 16G

(please refer to attached dmesg/kmsg for entire log/backtrace)


+------------------------------------------+------------+------------+
|                                          | 92fe9bb77b | 33c7952d92 |
+------------------------------------------+------------+------------+
| boot_successes                           | 7          | 0          |
| boot_failures                            | 0          | 7          |
| general_protection_fault:#[##]           | 0          | 7          |
| EIP:this_cpu_cmpxchg8b_emu               | 0          | 7          |
| Kernel_panic-not_syncing:Fatal_exception | 0          | 7          |
+------------------------------------------+------------+------------+


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 <oliver.sang@intel.com>
| Closes: https://lore.kernel.org/oe-lkp/202310261417.b269d37e-oliver.sang@intel.com


[    0.186570][    T0] stackdepot hash table entries: 65536 (order: 6, 262144 bytes, linear)
[    0.187499][    T0] Initializing HighMem for node 0 (0002ebfe:000bffe0)
[    1.727965][    T0] Initializing Movable for node 0 (00000000:00000000)
[    1.943274][    T0] Checking if this processor honours the WP bit even in supervisor mode...Ok.
[    1.944313][    T0] Memory: 2896220K/3145208K available (16182K kernel code, 5537K rwdata, 11756K rodata, 816K init, 9720K bss, 248988K reserved, 0K cma-reserved, 2379656K highmem)
[    1.947172][    T0] general protection fault: 0000 [#1] PREEMPT
[    1.947900][    T0] CPU: 0 PID: 0 Comm: swapper Not tainted 6.6.0-rc1-00024-g33c7952d925e #1 8d4b014f9a0a85cc9a3f6a52ed8e88f1e431f74e
[    1.949317][    T0] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.16.2-debian-1.16.2-1 04/01/2014
[ 1.950480][ T0] EIP: this_cpu_cmpxchg8b_emu (kbuild/src/consumer/arch/x86/lib/cmpxchg8b_emu.S:73) 
[ 1.951093][ T0] Code: ff ff ff 8d b4 26 00 00 00 00 66 90 83 c6 01 3c 3d 0f 95 c0 0f b6 c0 83 c0 01 e9 56 ff ff ff bf ff ff ff ff eb a6 cc cc 9c fa <64> 3b 06 75 13 64 3b 56 04 75 0d 64 89 1e 64 89 4e 04 83 0c 24 40
All code
========
   0:	ff                   	(bad)
   1:	ff                   	(bad)
   2:	ff 8d b4 26 00 00    	decl   0x26b4(%rbp)
   8:	00 00                	add    %al,(%rax)
   a:	66 90                	xchg   %ax,%ax
   c:	83 c6 01             	add    $0x1,%esi
   f:	3c 3d                	cmp    $0x3d,%al
  11:	0f 95 c0             	setne  %al
  14:	0f b6 c0             	movzbl %al,%eax
  17:	83 c0 01             	add    $0x1,%eax
  1a:	e9 56 ff ff ff       	jmp    0xffffffffffffff75
  1f:	bf ff ff ff ff       	mov    $0xffffffff,%edi
  24:	eb a6                	jmp    0xffffffffffffffcc
  26:	cc                   	int3
  27:	cc                   	int3
  28:	9c                   	pushf
  29:	fa                   	cli
  2a:*	64 3b 06             	cmp    %fs:(%rsi),%eax		<-- trapping instruction
  2d:	75 13                	jne    0x42
  2f:	64 3b 56 04          	cmp    %fs:0x4(%rsi),%edx
  33:	75 0d                	jne    0x42
  35:	64 89 1e             	mov    %ebx,%fs:(%rsi)
  38:	64 89 4e 04          	mov    %ecx,%fs:0x4(%rsi)
  3c:	83 0c 24 40          	orl    $0x40,(%rsp)

Code starting with the faulting instruction
===========================================
   0:	64 3b 06             	cmp    %fs:(%rsi),%eax
   3:	75 13                	jne    0x18
   5:	64 3b 56 04          	cmp    %fs:0x4(%rsi),%edx
   9:	75 0d                	jne    0x18
   b:	64 89 1e             	mov    %ebx,%fs:(%rsi)
   e:	64 89 4e 04          	mov    %ecx,%fs:0x4(%rsi)
  12:	83 0c 24 40          	orl    $0x40,(%rsp)
[    1.953397][    T0] EAX: c3c01100 EBX: c3c01180 ECX: 00000004 EDX: 00000003
[    1.954231][    T0] ESI: e52cd090 EDI: e52cd090 EBP: c2b4bf00 ESP: c2b4bec4
[    1.955060][    T0] DS: 007b ES: 007b FS: 0000 GS: 0000 SS: 0068 EFLAGS: 00210082
[    1.955949][    T0] CR0: 80050033 CR2: ffdeb000 CR3: 031b5000 CR4: 00000090
[    1.956783][    T0] DR0: 00000000 DR1: 00000000 DR2: 00000000 DR3: 00000000
[    1.957641][    T0] DR6: fffe0ff0 DR7: 00000400
[    1.958190][    T0] Call Trace:
[ 1.958554][ T0] ? show_regs (kbuild/src/consumer/arch/x86/kernel/dumpstack.c:479) 
[ 1.959026][ T0] ? die_addr (kbuild/src/consumer/arch/x86/kernel/dumpstack.c:421 kbuild/src/consumer/arch/x86/kernel/dumpstack.c:460) 
[ 1.959480][ T0] ? exc_general_protection (kbuild/src/consumer/arch/x86/kernel/traps.c:697 kbuild/src/consumer/arch/x86/kernel/traps.c:642) 
[ 1.960101][ T0] ? exc_bounds (kbuild/src/consumer/arch/x86/kernel/traps.c:642) 
[ 1.960579][ T0] ? handle_exception (kbuild/src/consumer/arch/x86/entry/entry_32.S:1049) 


The kernel config and materials to reproduce are available at:
https://download.01.org/0day-ci/archive/20231026/202310261417.b269d37e-oliver.sang@intel.com



-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki



From xen-devel-bounces@lists.xenproject.org Thu Oct 26 07:02:44 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 07:02:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623507.971400 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvuOB-0007tr-MF; Thu, 26 Oct 2023 07:02:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623507.971400; Thu, 26 Oct 2023 07:02: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 1qvuOB-0007tk-IR; Thu, 26 Oct 2023 07:02:43 +0000
Received: by outflank-mailman (input) for mailman id 623507;
 Thu, 26 Oct 2023 07: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=I5Mm=GI=amd.com=Michal.Orzel@srs-se1.protection.inumbo.net>)
 id 1qvuOA-0007tc-30
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 07:02:42 +0000
Received: from NAM11-CO1-obe.outbound.protection.outlook.com
 (mail-co1nam11on20623.outbound.protection.outlook.com
 [2a01:111:f400:7eab::623])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id a5c95729-73cd-11ee-9b0e-b553b5be7939;
 Thu, 26 Oct 2023 09:02:39 +0200 (CEST)
Received: from MN2PR20CA0050.namprd20.prod.outlook.com (2603:10b6:208:235::19)
 by MW6PR12MB8952.namprd12.prod.outlook.com (2603:10b6:303:246::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.33; Thu, 26 Oct
 2023 07:02:34 +0000
Received: from BL02EPF0001A104.namprd05.prod.outlook.com
 (2603:10b6:208:235:cafe::ea) by MN2PR20CA0050.outlook.office365.com
 (2603:10b6:208:235::19) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.22 via Frontend
 Transport; Thu, 26 Oct 2023 07:02:33 +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.6933.15 via Frontend Transport; Thu, 26 Oct 2023 07:02:33 +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.32; Thu, 26 Oct
 2023 02:02:33 -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.32; Thu, 26 Oct
 2023 02:02:33 -0500
Received: from [10.71.193.58] (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.32 via Frontend
 Transport; Thu, 26 Oct 2023 02:02: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: a5c95729-73cd-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=hj653eZhm/MY1UuKbu7bnZ/FFQSOU4I4p7aYmkjaJiceRuGQMyr0GftI6retpAnoo2yZVJOx+607AKt5Zub6fzQPFygs1dyRYDmQFFtooOqJv1w9WDOOFLgbf+5PVj+TQetWK9kx8s9hithcPOsQXf8PAq8tg+gcuI3IiBNbaZ60z0ua+rrX+CElMG2MwfY+FROt4/bdK/hKNFct7HpQ+sZ/UqU4lpCTfFDgMpwYjVs0W930NNXH/FFpn/SuajgE31oD5h/xAC8u1wVvPpEvuU6R38+tC/w7JWDE5y3osOnfEkcFNyQya8i79ObdhBimdi2D3T7bTyaV5FcRJy3RhQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=01t6zzyHVhEgIqqj4ki0W1eJZJOuPeY7LSA/kgKoJM4=;
 b=GNV4Ips5LMN6KyIJcx3StdFD+2XrbKQf48mUKNle2MQILEiiJNy7RC5Q9DAMzwR7JxlDeLBiMfohMPpG4KYw/v6zelJtkHkl4RoNpVc7q9qfgq9ZHa3VRSPmc/YFcjtY6xyamjdFRjN/Nnmcx4FXR9kLvaVfn0CQkDQw6TJh1wuFv+CTEYeX9/V3/GpkJi9xwAnnBMiDejjoJOpRMd3/VTt2Qkj+13UDbaRG6lqVSId4UGnVTC/Bb5oLt4ZblxpMEyV2+26LW8eMcXzYHJNiMujizdSpIUiaQVbR0jqJ0q3H9CeYnd/sbHnFi51i5/tBes/HWpZHLDJkDDHrqTjV9g==
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=01t6zzyHVhEgIqqj4ki0W1eJZJOuPeY7LSA/kgKoJM4=;
 b=TMviiZZlaFwPcqOG2650yg4Y5Ng7Juix6bjbqlMDEUvpgzVkw8NqMgpVo0iVfAHTWFnGRDimia7kBv4RYSI0Y3hMDs4f7kca0dEXHIDhbf0v0LBnfRrmGFiNUIPOBtkdfaO5yfP6YR9J+SRkzTk9k96I1T+o8YBuxajP8pWI4T0=
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: <ae4342e4-0ee1-484c-b679-5e3c24e2ad68@amd.com>
Date: Thu, 26 Oct 2023 09:02:26 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH] xen/arm: Add Rockchip rk3399 early printk support
To: Jun Nie <jun.nie@linaro.org>, <sstabellini@kernel.org>, <julien@xen.org>,
	<bertrand.marquis@arm.com>, <Volodymyr_Babchuk@epam.com>,
	<xen-devel@lists.xenproject.org>
References: <20231026054634.2805035-1-jun.nie@linaro.org>
Content-Language: en-US
From: Michal Orzel <michal.orzel@amd.com>
In-Reply-To: <20231026054634.2805035-1-jun.nie@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_|MW6PR12MB8952:EE_
X-MS-Office365-Filtering-Correlation-Id: 4f68f85f-5a8b-4e28-86f5-08dbd5f1875f
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	Xql/iokti876VAclczC1FdQ8O7ocSmxOkKrzCG3f77+XZ8X/vcWSLRY5nLamEFGmMbNvIj3KQU626cCneUdOAPg/E64yfYoa0TCgH4B2k1BfKcninRlDL/3zC97U8NzW5Y+yvjzt5ye0Nxo5vC1RrxNd4fEdGkujjS9DCYi65TjCqGFZMdxMPxc1K5yJ+njqN2S3hs2LXzaaGlUvj4lkYw2bOSa4Cqno+1IHKXgrf0vZIzSJJAVH/dMB01bZgH+Gt3QTjLTrCbZmGMcPnYtTy8v39WZHqkTI+8HXpbWG7YLPPf6k2c0BEEGdSv0dg5d226rHTos9Q2xfqQUZuU7T0H0Yfw/QDfEUma4rilkU4qOmUKPMpdzvdOhw71p5oVxZJdJgSlEh9up8vCMDHuArpQTCtSrcZzrsbgDdcaB6YoU9k93aazdWOmSdas+HA6nCG0Yp+gkX5f4rVwxLi7JV0bRlh6UlQ50qTaITl4dKezEhZjsfAtiz3sgjKmW0VmbNhEwc5G660eAopld2LudOE+MpzLaMyS0pwnQRHhpVWxt+1cLGwK2E6zjakMoU/rR4shulC1epb/hPU2nKFxKFOSlswE4h4CQOIaovJg6apSSq8ASjziCdeQBV7tb5k5TCmIlJiAPK/ApFoQIArkAvwaCyi+q3afSWSULYyylXuCNoV0+R8ayP5YXGXJCTqQU6nNZ5tJsnqNs8OFXBx5fmHPnWWXujGg/GKvLrvAfCLc5+ZJNdw20wIf+fvv0DFY19VwYRfKAbnkJPOlLA1kHgQ8C9orC4yX+Wa9VMWuf4c5GY688w7ckkfTLavvVsoIBf
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)(186009)(82310400011)(451199024)(1800799009)(46966006)(40470700004)(36840700001)(26005)(31686004)(36756003)(2906002)(4744005)(44832011)(41300700001)(5660300002)(36860700001)(31696002)(86362001)(316002)(8936002)(8676002)(478600001)(81166007)(356005)(110136005)(16576012)(40460700003)(70586007)(82740400003)(2616005)(336012)(70206006)(53546011)(40480700001)(426003)(47076005)(6666004)(36900700001)(43740500002);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Oct 2023 07:02:33.7607
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 4f68f85f-5a8b-4e28-86f5-08dbd5f1875f
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: MW6PR12MB8952

Hi,

On 26/10/2023 07:46, Jun Nie wrote:
> 
> 
> Signed-off-by: Jun Nie <jun.nie@linaro.org>
> ---
>  xen/arch/arm/Kconfig.debug | 5 +++++
>  1 file changed, 5 insertions(+)
> 
> diff --git a/xen/arch/arm/Kconfig.debug b/xen/arch/arm/Kconfig.debug
> index 842d768280..fefe8ac4df 100644
> --- a/xen/arch/arm/Kconfig.debug
> +++ b/xen/arch/arm/Kconfig.debug
> @@ -158,6 +158,9 @@ choice
>         config EARLY_PRINTK_RCAR3
>                 bool "Early printk with SCIF2 on Renesas R-Car Gen3 processors"
>                 select EARLY_UART_SCIF
> +       config EARLY_PRINTK_RK3399
> +               bool "Early printk with 8250 on Rockchip RK3399 processors"
> +               select EARLY_UART_8250
Platform specific options for early printk are deprecated. You can read it at the top of the file:
"
Deprecated: Alternatively, there are platform specific options
which will have default values for the various parameters. But
such option will soon be removed.
"

~Michal


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 07:07:26 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 07:07:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623514.971409 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvuSe-0000ls-6U; Thu, 26 Oct 2023 07:07:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623514.971409; Thu, 26 Oct 2023 07:07: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 1qvuSe-0000ll-3I; Thu, 26 Oct 2023 07:07:20 +0000
Received: by outflank-mailman (input) for mailman id 623514;
 Thu, 26 Oct 2023 07:07: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=hFWs=GI=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qvuSc-0000lf-HR
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 07:07:18 +0000
Received: from EUR01-VE1-obe.outbound.protection.outlook.com
 (mail-ve1eur01on0617.outbound.protection.outlook.com
 [2a01:111:f400:fe1f::617])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 4b6828a5-73ce-11ee-9b0e-b553b5be7939;
 Thu, 26 Oct 2023 09:07:16 +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.6954.8; Thu, 26 Oct
 2023 07:07:13 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6954.008; Thu, 26 Oct 2023
 07:07: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: 4b6828a5-73ce-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=FKm6SHmFajk4NlGOUZVURElxWvS+2hV1qYDmb6IP5NlGrkNgbcZmReXUqv1c3dI7wZ//ampFDrcWLGYGtIUPud3fvTpJ45XBFPXk03M7pHdexkDzSj5OUZ1khpRb4RPntScnxV35dGt30213s1VobzO2LY0N6uF/xUflHAndNZTShSmuyAIQj+9bEgGr2MIHODfme/skvowtZy9HrwXgOvr/KQoU7B52OXxqsnu+t+vQMrvz6d+ANxEwLO25qiCNbWEhHLxE+urBRwq9qrYmYKTobuuSWasDMOV6uBma2z1DxZTFkodS4VKkr1LLMzc29+VKBO37HcnoZur+YsJ2sg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=GBRVz6NEhbBr4JvDnQvORl+zXPCbp9Jtnxwu6amglvI=;
 b=ALnzgBQERiX2Syo16i1QzZj9T5A99ctO1k4jW87KrrGNUp2hsRybC0m8NsHAPpPzjrOpQIqQ+3jM3Dsz+EAxi1v4PI1zX2MtWrFSargZvIPMA0wpQ9qCvHUhNMt2+eia3TylBi/fRMD/LQMIwPkDBPFvkfqpZsPqRXtDRyH97nAniq3bqoniD/pEug8MJOyt6FmjOE6zgG6HFuSZJ32O7bvOJETegAZSCGMtLp9HOq5bR7ZIKPS1ME3HPrvbJTCEj4l1TwqreEgWRqwGQDonUDVYrADEiH71eqHK8wi9X0qvvGrQDuPtGHft54vYjL5aA0UbIW4KJVVS/XXziFPzbQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=GBRVz6NEhbBr4JvDnQvORl+zXPCbp9Jtnxwu6amglvI=;
 b=g7xYnQ1oXDGox6aVAZGbmN+IC5pNSlUkIhnCkWLLLirYGwr77lwPViz6p4AEetcdeI4fD95DSaVk5NLtEgyWMa5QsOZxHi1cRmYO1x0XLhvy+7e/pj7lNvyAIe6gMEr/9pZTKZLgcqqx9QEDQ5RLNiGXdM3k6NG2eGYe4GqxrCnqYQ3Q9G1E3rkkYaL1TGSsLo+lR07Xi7/7tvzPbYrrSDIWfrdpTUdv3PLdEJmVjusugl1pUdXt6zUpuXnaZZFiqyuqKzMvZFBO2vjLjd/dIxdGVXSBDASum6HMHQ3OGvqDXDQEo9JPnHvmPi3T1M8M0NBj1w3c3r8D7RZ6XcxQEQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <1ec482ba-e334-3120-dbe5-fc1e5a29f9fe@suse.com>
Date: Thu, 26 Oct 2023 09:07:10 +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: Stefano Stabellini <sstabellini@kernel.org>
Cc: Stefano Stabellini <stefano.stabellini@amd.com>,
 Simone Ballarin <simone.ballarin@bugseng.com>, consulting@bugseng.com,
 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>,
 Doug Goldstein <cardoe@cardoe.com>,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 xen-devel@lists.xenproject.org, Julien Grall <julien@xen.org>
References: <cover.1694510856.git.simone.ballarin@bugseng.com>
 <ead797ed-84cc-fb70-5259-7e11211d049e@suse.com>
 <alpine.DEB.2.22.394.2310181739270.965337@ubuntu-linux-20-04-desktop>
 <e642bc2a-cefa-4ee4-6394-3c10102e8164@suse.com>
 <alpine.DEB.2.22.394.2310190915590.1945130@ubuntu-linux-20-04-desktop>
 <6374f0f4-d58f-83ca-6eb3-d5a9fcbac525@suse.com>
 <alpine.DEB.2.22.394.2310201622160.2356865@ubuntu-linux-20-04-desktop>
 <36e6dd08-918c-9791-0dab-ca75d4b98d7e@suse.com>
 <alpine.DEB.2.22.394.2310231346370.3516@ubuntu-linux-20-04-desktop>
 <af4a86bc-40d3-4363-adc8-30981652cd2b@xen.org>
 <c1fa350f-6f49-e2b1-0cda-dec99df415ae@suse.com>
 <alpine.DEB.2.22.394.2310241254480.271731@ubuntu-linux-20-04-desktop>
 <f546b8dc-baa8-c178-12be-70f7c1a8fec8@suse.com>
 <50b3a500-aa7d-4d3d-8bcf-220f8ee69b0e@xen.org>
 <f6b207c6-4bc2-e172-428c-a2e3294cc490@suse.com>
 <1fc2c191-79b7-43fc-9068-5605e741c243@xen.org>
 <alpine.DEB.2.22.394.2310251408030.271731@ubuntu-linux-20-04-desktop>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <alpine.DEB.2.22.394.2310251408030.271731@ubuntu-linux-20-04-desktop>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0206.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:ad::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_|DU2PR04MB8774:EE_
X-MS-Office365-Filtering-Correlation-Id: 21ab8f44-0d76-433c-76bd-08dbd5f22dfa
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	RkI1eVBJXITRyti4hRYuxtX47B/LP4oKXktTx+yDiJpcJF+OylN6qP4h9O5evunpwiwoahGKsm49fJNgXC+247pXwuqoCVLSTM+67uZdykNwpA2DdqRPnkRicc/HQdSo8Qzg9b7l+BzADmvIgxLolhDp4dXhIfd7UBbClgIGWlZcbg0QGOg/wtAPOl2PZfzlPd5xAxqvgUYkZ848QiiSzM0T1jrmJugdIoPSjKvvLuXTBcE7SgUPKyKMrgTywM8TmfCyT8m5cAq6vE19OC6mSr+M5zWdohNLleKzd4gsMBYJG9LYyaJD6Nz9aqZtAvIcOv+2Zs6uNjmKidPiam5GvEz9gs/iYsifWmFloOY3p+rU77bF3m+6/zyBVSYk/NjtFJmf9/TY/E0jic2L6NPh71lIr4zeauwI74nfdhL6J9TvkhDwgUi2G3LbFzIVNZdlDf3APFcfNgy4IYNLSooUI2j7IQo7jGry+F+PjJeWtN9mBO7UlwabLZ/lTKAkOViwB7u3wOzM2t3285ECkudwfDWAMmMTq7TYP6tu0vz10+SHJOhLdiYk69pkq+4Nh5YTvFWYMzhVdkrFRvaXJ3efwAU3zbYy61C4rvxiMtY3Uwi1EfcejsADfPJ2DO9BhtXLyYGJzcKK5/s/MESVMM9SOw==
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)(136003)(39860400002)(376002)(230922051799003)(64100799003)(186009)(451199024)(1800799009)(83380400001)(2616005)(26005)(38100700002)(41300700001)(36756003)(5660300002)(6486002)(2906002)(7416002)(86362001)(31696002)(478600001)(53546011)(8936002)(8676002)(4326008)(31686004)(66476007)(54906003)(316002)(66556008)(6916009)(6512007)(6506007)(66946007)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?cGhsTG9mREswWTFrQ2xvRXM0WG5GL1NNeTFySisySjZHV2RJcEJKVUdjSXZz?=
 =?utf-8?B?TnE5T0xHa0FLMkFXejVOU3BqbTUwRlhwUFVGcFhObVhXZ3BOVGZrN1drVmo0?=
 =?utf-8?B?VjFjV2NPaG9vL2pwTlI1KzRnYUZENFg5NU1GSkJDMndIckZ6VTV3Ri8vZHlh?=
 =?utf-8?B?MTZYZmRleFpoZk5sTHVldHc0OWl1YXdMcEZ2QkQvUnNVUjAzNzRFTXNhcUdI?=
 =?utf-8?B?cXJtcUY2Y1RyaStqMUNOUHk4QkkveUxnUXpWUk5uZjdDRWx4TEMydkVQRXhP?=
 =?utf-8?B?YkZLQXVJb3hrQkdrbUhIZ3R3enk0N3QrMzhaaGpITGNKVkdLclFTU2Fta1RE?=
 =?utf-8?B?MTBCOU9MYW43RFYyZUxBallNU2F2c0xlbVlFSHcvc0RjNzRtSGUwYVBwa1hB?=
 =?utf-8?B?ME1tbSsvcjllNmJHSjlIZlNoWlFLNXBWQnVTdUFCYXNROGwwK0V0MlE2cnI3?=
 =?utf-8?B?dWRsNlJLNXdOSEVDTHJmS29nTXlWSEc1MWwxRzh2TVZlQ2RGSnRER1BhbGFS?=
 =?utf-8?B?Y0NOemFTQy9yQmNONmVnTUQ4bUFGT1Fkb1JadEwrOHNBYU9FaGppaGRDc054?=
 =?utf-8?B?NmltRnJDRVI1dGMxOTk2RW54M1RRcEZvTmVVL3hjWVdaa250QjdBMG95SWox?=
 =?utf-8?B?YlhUK0N3a01KS1hzeVlEOUkvZExGQ1BqclJXZ0dHaEVzSmMyWnZaNENOTndu?=
 =?utf-8?B?ZWRJTGRsTFd6MnZHZmtJTzhuUUNFenB3VTczMGpJbk90RzlTQTJjMndQN3FB?=
 =?utf-8?B?eWVDT29TZFAwZkxGalNQRCtWVzdMM3hoQVRjZUtzTzlMR3R1ZlVmK0IxaXpM?=
 =?utf-8?B?d3Z4K1p0M3c1d0VHWm50ZCtDVzN1aHZ5Y01IZ0tpd3oydmxDUERUTHdSUHl4?=
 =?utf-8?B?Y3pMcnFwaFREZ3d1SFpWMzkva2hWaTNZaTJ3S2VNSEh3ZVhETXZTalBUcmVJ?=
 =?utf-8?B?eFpCempQT0dSWjYyMWdYRUt2UXkrRXRmTnNXNk53VzNva0djRjE1V0pmTFU4?=
 =?utf-8?B?Ujl0YkJxSUg3NXdvK3JFVUlXV29sQjQ5RGhzdlRtYU1kaGFPWlFGd1l6OFNN?=
 =?utf-8?B?bDc5d29RK1RRbTVRL252Rm5wdzZYRnRYMGxHYjVMbFNTQ1djanc0ajFrYzlV?=
 =?utf-8?B?WmpuaXUyY1pBUXk5ZlJLb2VmWU5Pc3cwVm1iaFYwZ3lqMFNGV2dtaTBIZlpt?=
 =?utf-8?B?OEtnajVHN3FsRU8rdjFUWjZPc2hxRURzcExCaDFKYWxiaXVON3FscjhmZG1i?=
 =?utf-8?B?NEhCZnBIM2M4c2JtaXluSWpoRlVBbzU3bnZUc1VkYXo5Q2NOaVhiSjlQMmhX?=
 =?utf-8?B?a2N4Z3pnL3c1ZXhza3FKQThHc3VlLzMxZCtpWWd2cXJIeEZYMGIvVWRNdWtp?=
 =?utf-8?B?SVl0aCtEbmtXNnQ4K3o1eEJCdEJpc28zRWFIU2ttNHBXQWkvWDRrYjJqcUdq?=
 =?utf-8?B?OUlqaURLcGtuVXEva2h6RTB3NzYxR1IyeHdtVndBUjFDaENlcjBidVZ3VnRT?=
 =?utf-8?B?UG8zdDlXQjdmN3BOOEdzSlNjRHAyajJWOVZ0YW80OFRwc1BqeHFxYmZrSFp1?=
 =?utf-8?B?QmF4bStuWFFTbFJKS3hycllyZGpDTU9zL2FkSVkrdksyek82QkVXa0UvRFJz?=
 =?utf-8?B?RTdRQy9sYmJHbU04WjB2Tk5OOWtiMkpXMS9Uak5hbXkvM1B5REVPTE1yV2Fx?=
 =?utf-8?B?UGViRXRPNDM1NUI1aktLQkcvTnNiaG9FZWxEYU1nTTVZaGhaeW43NVRsM2Zu?=
 =?utf-8?B?SklpMTcvamdvVXdxMzNwM1o2UGZpMklvdU1iam9Fd3lNNG4vYVorTmkwM3RS?=
 =?utf-8?B?YlM0cFh2bmNXK2F5WFVXdkRQbE5COUpNeDY0eHgrOEFDZ21Db3djVmxyTURu?=
 =?utf-8?B?TVJFQVpCaGJ0dVAxRkx6b1ZwZzMvbDZ0K2xVbjgxOXlVdGRjd1E3TzZPcHdP?=
 =?utf-8?B?dks3QnJGbisyb3pRdXZpMWJyU0ROMDc5WFZYMHJrdFZIUktRSFBWVEdneSt4?=
 =?utf-8?B?bXhId2ZTMVFkZ2IyWDl4RHp6VEhpYjBCeFc0bEJNN29UR25HaFkzMGxFVlNH?=
 =?utf-8?B?VW9Odmg3dzRtRWJjanMwSDJxT1hXTy8vSHQ0Y1F1d01POEVabzZvS0tKQllq?=
 =?utf-8?Q?WgBoGgYvzlHOEFwGMkhlqbWgQ?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 21ab8f44-0d76-433c-76bd-08dbd5f22dfa
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Oct 2023 07:07:13.5402
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: vOSQtYsPdsyJY1o2XEzEvj6N/jsLBs6V4QI1yL/NwYJRbGhY/NCR+chKjea8kA5GhoLoatPKhrHlsq4nnf+O/A==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU2PR04MB8774

On 25.10.2023 23:12, Stefano Stabellini wrote:
> On Wed, 25 Oct 2023, Julien Grall wrote:
>> On 25/10/2023 17:01, Jan Beulich wrote:
>>> On 25.10.2023 17:58, Julien Grall wrote:
>>>> On 25/10/2023 09:18, Jan Beulich wrote:
>>>>> On 24.10.2023 21:59, Stefano Stabellini wrote:
>>>>>> If I understood correctly I am fine with that. To make sure we are all
>>>>>> on the same page, can you provide a couple of samples?
>>>>>
>>>>> Taking the earlier example, instead of DRIVERS_PASSTHROUGH_VTD_DMAR_H it
>>>>> would then be VTD_DMAR_H. arch/x86/pv/mm.h would use PV_MM_H, but then
>>>>> you can already see that a hypothetical arch/x86/mm.h would use
>>>>> X86_MM_H,
>>>>> thus colliding with what your proposal would also yield for
>>>>> arch/x86/include/asm/mm.h. So maybe private header guards should come
>>>>> with e.g. a trailing underscore? Or double underscores as component
>>>>> separators, where .../include/... use only single underscores? Or
>>>>> headers in arch/*/include/asm/ use ASM_<name>_H (i.e. not making the
>>>>> architecture explicit in the guard name, on the grounds that headers
>>>>> from multiple architectures shouldn't be included at the same time)?
>>>> Thanks for providing some details.  The proposal for private headers
>>>> make sense. For arch/.../include/asm/ headers, I would strongly prefer
>>>> if we use prefix them with ASM_*.
>>>>
>>>> As a side note, I am guessing for asm-generic, we would want to use
>>>> ASM_GENERIC_* for the guard prefix. Is that correct?
>>>
>>> That was an assumption I was working from, yes. Could also be just
>>> GENERIC_ afaic.
>>
>> Thanks for the confirmation. I am fine with either GENERIC_ or ASM_GENERIC_.
> 
> OK. So in summary:
> - arch/.../include/asm/ headers would use ASM_<filename>_H
> - private headers would use <dir>_<filename>_H
> - asm-generic headers would use ASM_GENERIC_<filename>_H
> 
> If that's agreed, we can move forward with the patch following this
> scheme.

FTAOD - just as long as <dir> is clarified to mean only the leaf-most
directory component (assuming we're still talking about the most
recently proposed scheme and we deem the risk of collisions low enough
there).

Jan


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 07:16:17 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 07:16:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623520.971420 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvubD-00035W-3I; Thu, 26 Oct 2023 07:16:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623520.971420; Thu, 26 Oct 2023 07: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 1qvubD-00035P-0O; Thu, 26 Oct 2023 07:16:11 +0000
Received: by outflank-mailman (input) for mailman id 623520;
 Thu, 26 Oct 2023 07:16: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=oM/h=GI=gmail.com=ubizjak@srs-se1.protection.inumbo.net>)
 id 1qvubB-00035J-LV
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 07:16:09 +0000
Received: from mail-ed1-x536.google.com (mail-ed1-x536.google.com
 [2a00:1450:4864:20::536])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 88ab6184-73cf-11ee-98d5-6d05b1d4d9a1;
 Thu, 26 Oct 2023 09:16:08 +0200 (CEST)
Received: by mail-ed1-x536.google.com with SMTP id
 4fb4d7f45d1cf-540fb78363bso872364a12.0
 for <xen-devel@lists.xenproject.org>; Thu, 26 Oct 2023 00: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: 88ab6184-73cf-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698304568; x=1698909368; 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=XE9K/zLmyjAI/eqnnXkydpu2Z1qLEJmMy+aUPHF96ls=;
        b=amMTGUZXUy1faJ4l0gQ/vWQrQCgjd8bujSR1bNB9O3VD22aYCYnh0iP0oio3snNXaX
         i6+K9NEUeRuxwuhNrBfcrLYt1ySZe9TFVMHHeprwX293ocdcirUoC/whyRK2IdR47bmo
         77sEAqe++DOc/MJgWomlmyRnR66Mn3Pm00hUmUdhIaJ460G0PsIJn017ZzIA+Fs2YvOw
         +CA57RlnDHtkwbwErLzkyuzTOolnFZ8xVZ7VfyPwfDdsXhAquGc2GM6V6o0SJW2kcK/x
         WdaFV6GGR8BE3hmoNDmtDGajEcTlTMQKkOeL/NW4XGQg0CrHcky6GAPzGUUE+SBn6Xbx
         Vc9g==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698304568; x=1698909368;
        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=XE9K/zLmyjAI/eqnnXkydpu2Z1qLEJmMy+aUPHF96ls=;
        b=Mz848Cuu7eRx697ZnQpCyQvdjJk4J8SlRRCJ2w29O4Ao87khhvqofz5z4p+kGFxmE9
         wfhjJzATa7i53MliZNdE3dx0L5HIfCPirgYuIGdo1rq97EMfKz2oSipTSfUb0uGGGR4D
         Rq/Sm9S4/qaAHeofB/90WY7jeZ5dOP4kM/ZGXHKlrxDg7T96oFgSWpTrIVGk1Ko4/y0Z
         QP8ONv7WegMCi+JFBoOsw7HTABrxvGGWcvyalndGOJsK7a99SWx43YGLuyeLi4kcWBgz
         S5b4Md1OA+Vr/hcl+yPKDitlb93G3oqIhFWB18LDvMAC/C9TIEtWRcGK7NCSg/jGb6CL
         aacA==
X-Gm-Message-State: AOJu0Yz/hZbtmmSEUxZ3ERBq6TFhhVoClF9wcGRXZUq8QSe1W3/y3FxU
	hBPbU46BsAaADdiMh4U7Lqyjn36WPee+EgAQ0Qo=
X-Google-Smtp-Source: AGHT+IG7HVWFmDZlQ4OjN9X3Rowm9DAorTwDMoPMqOFZgCZydOHrqviKTR2JkKhHG2vJ57fdE3nal8BE40d17b6TWEc=
X-Received: by 2002:a50:9ec5:0:b0:540:2a0c:97a2 with SMTP id
 a63-20020a509ec5000000b005402a0c97a2mr8907566edf.16.1698304567699; Thu, 26
 Oct 2023 00:16:07 -0700 (PDT)
MIME-Version: 1.0
References: <20231012161237.114733-2-ubizjak@gmail.com> <202310261417.b269d37e-oliver.sang@intel.com>
In-Reply-To: <202310261417.b269d37e-oliver.sang@intel.com>
From: Uros Bizjak <ubizjak@gmail.com>
Date: Thu, 26 Oct 2023 09:15:56 +0200
Message-ID: <CAFULd4ZVBfQEGH0h8v1Br=3DbHteHA9V4u0+m2d5XQPLUu10mA@mail.gmail.com>
Subject: Re: [PATCH 1/4] x86/percpu: Use explicit segment registers in lib/cmpxchg{8,16}b_emu.S
To: kernel test robot <oliver.sang@intel.com>
Cc: oe-lkp@lists.linux.dev, lkp@intel.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>, 
	Peter Zijlstra <peterz@infradead.org>, linux-kernel@vger.kernel.org, x86@kernel.org, 
	xen-devel@lists.xenproject.org
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Thu, Oct 26, 2023 at 9:01=E2=80=AFAM kernel test robot <oliver.sang@inte=
l.com> wrote:
>
>
>
> Hello,
>
> kernel test robot noticed "general_protection_fault:#[##]" on:
>
> commit: 33c7952d925e905f7af1fb7628e48e03f59885da ("[PATCH 1/4] x86/percpu=
: Use explicit segment registers in lib/cmpxchg{8,16}b_emu.S")
> url: https://github.com/intel-lab-lkp/linux/commits/Uros-Bizjak/x86-percp=
u-Use-explicit-segment-registers-in-lib-cmpxchg-8-16-b_emu-S/20231017-11130=
4
> base: https://git.kernel.org/cgit/linux/kernel/git/tip/tip.git 92fe9bb77b=
0c9fade150350fdb0629a662f0923f
> patch link: https://lore.kernel.org/all/20231012161237.114733-2-ubizjak@g=
mail.com/
> patch subject: [PATCH 1/4] x86/percpu: Use explicit segment registers in =
lib/cmpxchg{8,16}b_emu.S
>
> in testcase: boot
>
> compiler: gcc-12
> test machine: qemu-system-x86_64 -enable-kvm -cpu SandyBridge -smp 2 -m 1=
6G

This problem was fixed in a -v3 version of the patch [1], that was
committed to the tip/percpu branch and later merged into tip/master.

[1] https://lore.kernel.org/lkml/20231017162811.200569-3-ubizjak@gmail.com/

Thanks,
Uros.

>
> (please refer to attached dmesg/kmsg for entire log/backtrace)
>
>
> +------------------------------------------+------------+------------+
> |                                          | 92fe9bb77b | 33c7952d92 |
> +------------------------------------------+------------+------------+
> | boot_successes                           | 7          | 0          |
> | boot_failures                            | 0          | 7          |
> | general_protection_fault:#[##]           | 0          | 7          |
> | EIP:this_cpu_cmpxchg8b_emu               | 0          | 7          |
> | Kernel_panic-not_syncing:Fatal_exception | 0          | 7          |
> +------------------------------------------+------------+------------+
>
>
> If you fix the issue in a separate patch/commit (i.e. not just a new vers=
ion of
> the same patch/commit), kindly add following tags
> | Reported-by: kernel test robot <oliver.sang@intel.com>
> | Closes: https://lore.kernel.org/oe-lkp/202310261417.b269d37e-oliver.san=
g@intel.com
>
>
> [    0.186570][    T0] stackdepot hash table entries: 65536 (order: 6, 26=
2144 bytes, linear)
> [    0.187499][    T0] Initializing HighMem for node 0 (0002ebfe:000bffe0=
)
> [    1.727965][    T0] Initializing Movable for node 0 (00000000:00000000=
)
> [    1.943274][    T0] Checking if this processor honours the WP bit even=
 in supervisor mode...Ok.
> [    1.944313][    T0] Memory: 2896220K/3145208K available (16182K kernel=
 code, 5537K rwdata, 11756K rodata, 816K init, 9720K bss, 248988K reserved,=
 0K cma-reserved, 2379656K highmem)
> [    1.947172][    T0] general protection fault: 0000 [#1] PREEMPT
> [    1.947900][    T0] CPU: 0 PID: 0 Comm: swapper Not tainted 6.6.0-rc1-=
00024-g33c7952d925e #1 8d4b014f9a0a85cc9a3f6a52ed8e88f1e431f74e
> [    1.949317][    T0] Hardware name: QEMU Standard PC (i440FX + PIIX, 19=
96), BIOS 1.16.2-debian-1.16.2-1 04/01/2014
> [ 1.950480][ T0] EIP: this_cpu_cmpxchg8b_emu (kbuild/src/consumer/arch/x8=
6/lib/cmpxchg8b_emu.S:73)
> [ 1.951093][ T0] Code: ff ff ff 8d b4 26 00 00 00 00 66 90 83 c6 01 3c 3d=
 0f 95 c0 0f b6 c0 83 c0 01 e9 56 ff ff ff bf ff ff ff ff eb a6 cc cc 9c fa=
 <64> 3b 06 75 13 64 3b 56 04 75 0d 64 89 1e 64 89 4e 04 83 0c 24 40
> All code
> =3D=3D=3D=3D=3D=3D=3D=3D
>    0:   ff                      (bad)
>    1:   ff                      (bad)
>    2:   ff 8d b4 26 00 00       decl   0x26b4(%rbp)
>    8:   00 00                   add    %al,(%rax)
>    a:   66 90                   xchg   %ax,%ax
>    c:   83 c6 01                add    $0x1,%esi
>    f:   3c 3d                   cmp    $0x3d,%al
>   11:   0f 95 c0                setne  %al
>   14:   0f b6 c0                movzbl %al,%eax
>   17:   83 c0 01                add    $0x1,%eax
>   1a:   e9 56 ff ff ff          jmp    0xffffffffffffff75
>   1f:   bf ff ff ff ff          mov    $0xffffffff,%edi
>   24:   eb a6                   jmp    0xffffffffffffffcc
>   26:   cc                      int3
>   27:   cc                      int3
>   28:   9c                      pushf
>   29:   fa                      cli
>   2a:*  64 3b 06                cmp    %fs:(%rsi),%eax          <-- trapp=
ing instruction
>   2d:   75 13                   jne    0x42
>   2f:   64 3b 56 04             cmp    %fs:0x4(%rsi),%edx
>   33:   75 0d                   jne    0x42
>   35:   64 89 1e                mov    %ebx,%fs:(%rsi)
>   38:   64 89 4e 04             mov    %ecx,%fs:0x4(%rsi)
>   3c:   83 0c 24 40             orl    $0x40,(%rsp)
>
> Code starting with the faulting instruction
> =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
>    0:   64 3b 06                cmp    %fs:(%rsi),%eax
>    3:   75 13                   jne    0x18
>    5:   64 3b 56 04             cmp    %fs:0x4(%rsi),%edx
>    9:   75 0d                   jne    0x18
>    b:   64 89 1e                mov    %ebx,%fs:(%rsi)
>    e:   64 89 4e 04             mov    %ecx,%fs:0x4(%rsi)
>   12:   83 0c 24 40             orl    $0x40,(%rsp)
> [    1.953397][    T0] EAX: c3c01100 EBX: c3c01180 ECX: 00000004 EDX: 000=
00003
> [    1.954231][    T0] ESI: e52cd090 EDI: e52cd090 EBP: c2b4bf00 ESP: c2b=
4bec4
> [    1.955060][    T0] DS: 007b ES: 007b FS: 0000 GS: 0000 SS: 0068 EFLAG=
S: 00210082
> [    1.955949][    T0] CR0: 80050033 CR2: ffdeb000 CR3: 031b5000 CR4: 000=
00090
> [    1.956783][    T0] DR0: 00000000 DR1: 00000000 DR2: 00000000 DR3: 000=
00000
> [    1.957641][    T0] DR6: fffe0ff0 DR7: 00000400
> [    1.958190][    T0] Call Trace:
> [ 1.958554][ T0] ? show_regs (kbuild/src/consumer/arch/x86/kernel/dumpsta=
ck.c:479)
> [ 1.959026][ T0] ? die_addr (kbuild/src/consumer/arch/x86/kernel/dumpstac=
k.c:421 kbuild/src/consumer/arch/x86/kernel/dumpstack.c:460)
> [ 1.959480][ T0] ? exc_general_protection (kbuild/src/consumer/arch/x86/k=
ernel/traps.c:697 kbuild/src/consumer/arch/x86/kernel/traps.c:642)
> [ 1.960101][ T0] ? exc_bounds (kbuild/src/consumer/arch/x86/kernel/traps.=
c:642)
> [ 1.960579][ T0] ? handle_exception (kbuild/src/consumer/arch/x86/entry/e=
ntry_32.S:1049)
>
>
> The kernel config and materials to reproduce are available at:
> https://download.01.org/0day-ci/archive/20231026/202310261417.b269d37e-ol=
iver.sang@intel.com
>
>
>
> --
> 0-DAY CI Kernel Test Service
> https://github.com/intel/lkp-tests/wiki
>


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 07:22:35 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 07:22:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623525.971429 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvuhH-0004Yz-OL; Thu, 26 Oct 2023 07:22:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623525.971429; Thu, 26 Oct 2023 07: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 1qvuhH-0004Ys-Lq; Thu, 26 Oct 2023 07:22:27 +0000
Received: by outflank-mailman (input) for mailman id 623525;
 Thu, 26 Oct 2023 07:22: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=bkoO=GI=linaro.org=jun.nie@srs-se1.protection.inumbo.net>)
 id 1qvuhH-0004Ym-4B
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 07:22:27 +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 6833c8f3-73d0-11ee-9b0e-b553b5be7939;
 Thu, 26 Oct 2023 09:22:25 +0200 (CEST)
Received: by mail-lj1-x235.google.com with SMTP id
 38308e7fff4ca-2b9338e4695so7994161fa.2
 for <xen-devel@lists.xenproject.org>; Thu, 26 Oct 2023 00:22: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: 6833c8f3-73d0-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=linaro.org; s=google; t=1698304943; x=1698909743; 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=cAJcozZEujKPLPrUxkPQBvKpVMiUDDIet325E9UGf9s=;
        b=Ujc3wi2vCGYgJr5/LNUymJSMf9VjnmjhERqqS2Hz22Wk236ybi4nT4zlJRnWRNgT6z
         erL2E9wv2N+ewKgwA9cwZaF0tbuChR/gEnrvHQFM+I1PAbvJEqi3RqSAOhjnKAOdvE/y
         lfGeLbWir4zuSTdKOafVYHVUrSH4CDcS40OClGNMVWebSEGE23rLp3UGux6nOBr/dX3A
         7j0hpwSnCd5SitcPXO0buPeXeNqTWbvUQ9GFD+fHRsh3C/PvvPkCxAgWnrKYMzVRPC2O
         DsbU67Bborqrj/U7VyF1BGdfDna1PSLD0A7uLG8UTZN7lY8wRm/lnNJ2jvP1Rv1Co/6A
         zNHg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698304943; x=1698909743;
        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=cAJcozZEujKPLPrUxkPQBvKpVMiUDDIet325E9UGf9s=;
        b=tNqx/+b/bzluhfvFP+txmqpe77AJKJOD4iVdQgI3yLhr4gQOIs1dYG9plnhFpm8z9e
         8+e4dWp9mh3nzglUMvk3Bf7997Op/id0FOcjfBC43+mmgko9wyCrTG92o+lQsR6/4Lmf
         yvYOfss5eLNLcKlhGEocETmBz/y119afVUzTCNYsBiQvHLLQlsAjRnoyCGCmY7MykQ+7
         F1oQyVa3Qht9W7M/9meUmF6IKIqU6re1d+OOT9odPijMfJu0bmcqzcPlLW3E5iuXZUuX
         BBJ3d0tk/Iq0UN40Rps7RG9lrx9yHK2Mt1LIS2AC5C4aU2SphIvE5q7C3kvfyGB/xi2J
         jwJA==
X-Gm-Message-State: AOJu0YwXT11lDRHWmQ4SzDooVIE1+vCu1ZNCl3UI5mUhbzsL7IfiJTv1
	vmPboNd9qud6r21jHPSaL71GQMT6aReDoAkZdf17bg==
X-Google-Smtp-Source: AGHT+IFByQkt/FuY9JcAyV254982M2QJxrgA/Z4cKepu4tzALKQcLKLq60867Jcs8WRV2CWY8UZocFS+skbIjTD0cW0=
X-Received: by 2002:a2e:be9d:0:b0:2c5:3090:537c with SMTP id
 a29-20020a2ebe9d000000b002c53090537cmr14395811ljr.17.1698304942869; Thu, 26
 Oct 2023 00:22:22 -0700 (PDT)
MIME-Version: 1.0
References: <20231026054634.2805035-1-jun.nie@linaro.org> <ae4342e4-0ee1-484c-b679-5e3c24e2ad68@amd.com>
In-Reply-To: <ae4342e4-0ee1-484c-b679-5e3c24e2ad68@amd.com>
From: Jun Nie <jun.nie@linaro.org>
Date: Thu, 26 Oct 2023 15:22:27 +0800
Message-ID: <CABymUCP66YRy7=LbCtqtUPcGc+8AG5SSjS1OL+0WbhqdK5ExpA@mail.gmail.com>
Subject: Re: [PATCH] xen/arm: Add Rockchip rk3399 early printk support
To: Michal Orzel <michal.orzel@amd.com>
Cc: sstabellini@kernel.org, julien@xen.org, bertrand.marquis@arm.com, 
	Volodymyr_Babchuk@epam.com, xen-devel@lists.xenproject.org
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

Michal Orzel <michal.orzel@amd.com> =E4=BA=8E2023=E5=B9=B410=E6=9C=8826=E6=
=97=A5=E5=91=A8=E5=9B=9B 15:02=E5=86=99=E9=81=93=EF=BC=9A
>
> Hi,
>
> On 26/10/2023 07:46, Jun Nie wrote:
> >
> >
> > Signed-off-by: Jun Nie <jun.nie@linaro.org>
> > ---
> >  xen/arch/arm/Kconfig.debug | 5 +++++
> >  1 file changed, 5 insertions(+)
> >
> > diff --git a/xen/arch/arm/Kconfig.debug b/xen/arch/arm/Kconfig.debug
> > index 842d768280..fefe8ac4df 100644
> > --- a/xen/arch/arm/Kconfig.debug
> > +++ b/xen/arch/arm/Kconfig.debug
> > @@ -158,6 +158,9 @@ choice
> >         config EARLY_PRINTK_RCAR3
> >                 bool "Early printk with SCIF2 on Renesas R-Car Gen3 pro=
cessors"
> >                 select EARLY_UART_SCIF
> > +       config EARLY_PRINTK_RK3399
> > +               bool "Early printk with 8250 on Rockchip RK3399 process=
ors"
> > +               select EARLY_UART_8250
> Platform specific options for early printk are deprecated. You can read i=
t at the top of the file:
> "
> Deprecated: Alternatively, there are platform specific options
> which will have default values for the various parameters. But
> such option will soon be removed.
> "
>
> ~Michal


Thanks for the reminder! So only below 2 configs shall be configured
when compiling the project, right?

EARLY_UART_BASE_ADDRESS
EARLY_UART_8250_REG_SHIFT

- Jun


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 07:31:41 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 07:31:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623529.971440 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvuq7-0006wp-IU; Thu, 26 Oct 2023 07:31:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623529.971440; Thu, 26 Oct 2023 07: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 1qvuq7-0006wi-Ey; Thu, 26 Oct 2023 07:31:35 +0000
Received: by outflank-mailman (input) for mailman id 623529;
 Thu, 26 Oct 2023 07:31: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=I5Mm=GI=amd.com=Michal.Orzel@srs-se1.protection.inumbo.net>)
 id 1qvuq6-0006wc-9u
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 07:31:34 +0000
Received: from NAM12-DM6-obe.outbound.protection.outlook.com
 (mail-dm6nam12on20618.outbound.protection.outlook.com
 [2a01:111:f400:fe59::618])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id ae3acb9d-73d1-11ee-9b0e-b553b5be7939;
 Thu, 26 Oct 2023 09:31:31 +0200 (CEST)
Received: from BL1PR13CA0156.namprd13.prod.outlook.com (2603:10b6:208:2bd::11)
 by DS0PR12MB7928.namprd12.prod.outlook.com (2603:10b6:8:14c::13) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.26; Thu, 26 Oct
 2023 07:31:28 +0000
Received: from MN1PEPF0000ECD7.namprd02.prod.outlook.com
 (2603:10b6:208:2bd:cafe::6) by BL1PR13CA0156.outlook.office365.com
 (2603:10b6:208:2bd::11) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6954.8 via Frontend
 Transport; Thu, 26 Oct 2023 07:31:28 +0000
Received: from SATLEXMB03.amd.com (165.204.84.17) by
 MN1PEPF0000ECD7.mail.protection.outlook.com (10.167.242.136) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6933.15 via Frontend Transport; Thu, 26 Oct 2023 07:31:28 +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.32; Thu, 26 Oct
 2023 02:31:27 -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.32; Thu, 26 Oct
 2023 02:31:27 -0500
Received: from [10.71.193.58] (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.32 via Frontend
 Transport; Thu, 26 Oct 2023 02:31: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: ae3acb9d-73d1-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=l/S77rtLFdMuRIM/ZLpe2vUYrqPbvVl5evYPg77jXteAmiMOy1fwQXz+rfOfuVaQr2TIlaTkdtDrcD6IHkMho2ZcxsScZFhls9e97JEPx6SRwLEqJtor3eO1P10ovUcupuqOTERdEgSQDqsLwJ6i3H7EdRMhINVFBz+fMkx/pp/x671RGyp2DpgXlYfGScdDs2JtIunKN2QGtAJChiOv27CvUOUo1LDFLsAg3uL9ini/jJp4xyFsx4VpUhzQACVXLZalvYAFREvZ5hRtPSLM6+FcnEe9eegumY9mILkgMECJ3ZSajrxI2dTLRaTaB69vw/yrA+TbsUU4XRFg6ANbyw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=32/wV8hI7aUe9ruznn3O+K1HZPqB7SIA3WGQOaL7Yis=;
 b=M8NYoUvjiCssXi3yguD33yDiDSMZBSuL9vVbxFnY0xxMA3FJqd2cXSr8iapBowqjW14JeISOipL0BgCc+8ZFxJ1XysPrldQTEdDpYzHnQ7kEeKW19CS5UmoohlHu8NCr+IXJ8oI8EcjuUIrh47y13JYkL8OGRa+UmNZvVvLY4lJjFLNmmT9NT3UsAUpJeCOGM9Ux1Y5+AjgubjouAXDdDPLKtXWgnv1RTaQnFYmWu3LnjpZDTwFKw3dFIDEkbjd8RDnuj8j+xHM/h4KO9656U61EnOjgl0toHV/k5Y5BkRTXjYvs8Sy2b65cqxrFuAwLMPHc2exqqI+za4HfenSDHg==
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=32/wV8hI7aUe9ruznn3O+K1HZPqB7SIA3WGQOaL7Yis=;
 b=zpdyf4I7vOOg1y60DvpMynTk+SXj/ma4eFJcBXycR/IBIWRy5w1/eXHrWVmBuPtezz3mSDLcl1S9yLwjDAnFN3OVKVrhETG1ZBbUWLlGvc+QyfnvM5r4qWPY0kMc3iWFRHsMCgMGFfxa5HxA5GhN/PCKzL4O5SMK9rD0WrddA0o=
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: <5a80b619-d768-46a2-bc9d-b02eb2fa4d72@amd.com>
Date: Thu, 26 Oct 2023 09:31:20 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH] xen/arm: Add Rockchip rk3399 early printk support
Content-Language: en-US
To: Jun Nie <jun.nie@linaro.org>
CC: <sstabellini@kernel.org>, <julien@xen.org>, <bertrand.marquis@arm.com>,
	<Volodymyr_Babchuk@epam.com>, <xen-devel@lists.xenproject.org>
References: <20231026054634.2805035-1-jun.nie@linaro.org>
 <ae4342e4-0ee1-484c-b679-5e3c24e2ad68@amd.com>
 <CABymUCP66YRy7=LbCtqtUPcGc+8AG5SSjS1OL+0WbhqdK5ExpA@mail.gmail.com>
From: Michal Orzel <michal.orzel@amd.com>
In-Reply-To: <CABymUCP66YRy7=LbCtqtUPcGc+8AG5SSjS1OL+0WbhqdK5ExpA@mail.gmail.com>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: MN1PEPF0000ECD7:EE_|DS0PR12MB7928:EE_
X-MS-Office365-Filtering-Correlation-Id: 9a14df26-bd99-401a-ba5b-08dbd5f5912b
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	lnFHT+ZZhUJUXwY+kufdBsdJwty2hRgp1o/hyxyLppi7VfbV6BRY6yhv/wUNeG7YF3yIdOanjNyQzoIlf3k2WuH1C64wLvhqxem88T8MNApw6aowfSohkLHTwnV0YU1BVPs38prA+9GWH/pcpyVsa+Te8jUJ3ay82JPcFO8SKJngMaaOSF87EEinL0sNSN+8ZZhk3W+6D6YbfnYW+kquDZKZRojwLaXKknInGElKjcsPXXn6HM7w/BlGENsfIkQQx55dZ0LODsQnCjrFN36hvuGaKhWfKVMdlm/N+OobF9QGOXxzzXt6qS+Uuj1utHuT1VZd4llg9PtxQhlgI+hwalgHAlIJFtZtNqzGVsOoqWyj5H7rjGlUADF6zN9zXPIbp9JyEm8iPxWJAZ96PV20G/mVZIpxhJQx/ipenlqn7Cvsyu6LoSdFZVrXYqzYK4iE+vRLj+PO42PLubQxoXt0g8cwAPvqO17uG4H7QLVPiYgPMtEO5xdVyc1IJ36InoIGwce7oFtL/hatt/G63ELsA39IpCMZfCbvvufcywrWFt8r5/rO8DtrTj8JsB0basMVbafgrYvfQcaN4Izg5Nu5CqbzBuPbHq1IK9XnWSxqeMfJH5e87/iv1iWmhFC0N5uDUCqKyUYXLopgkP9Psoc8u50NlMVuzb6Wp1zLpiRqq6LP9ATGAWr+9mp12tpe9DPPc8h2fVJMQOtDm9jTg6YJu5o3DPj12FS5bBahxS0tfw6N6jEpdHY5v+mbFWX3JG+uy+xp3Co9tQKJucIzmgREIkQj4g1wez7kJ/TSClCGE0deiKeqayqXr94rnxh26Li9
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)(39860400002)(136003)(346002)(230922051799003)(451199024)(64100799003)(186009)(82310400011)(1800799009)(46966006)(36840700001)(40470700004)(70586007)(40460700003)(426003)(6666004)(2906002)(36860700001)(336012)(83380400001)(2616005)(53546011)(478600001)(47076005)(8936002)(8676002)(5660300002)(4326008)(41300700001)(16576012)(44832011)(82740400003)(31696002)(86362001)(70206006)(6916009)(54906003)(316002)(356005)(81166007)(40480700001)(31686004)(36756003)(26005)(43740500002)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Oct 2023 07:31:28.1854
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 9a14df26-bd99-401a-ba5b-08dbd5f5912b
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:
	MN1PEPF0000ECD7.namprd02.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS0PR12MB7928



On 26/10/2023 09:22, Jun Nie wrote:
> 
> 
> Michal Orzel <michal.orzel@amd.com> 于2023年10月26日周四 15:02写道：
>>
>> Hi,
>>
>> On 26/10/2023 07:46, Jun Nie wrote:
>>>
>>>
>>> Signed-off-by: Jun Nie <jun.nie@linaro.org>
>>> ---
>>>  xen/arch/arm/Kconfig.debug | 5 +++++
>>>  1 file changed, 5 insertions(+)
>>>
>>> diff --git a/xen/arch/arm/Kconfig.debug b/xen/arch/arm/Kconfig.debug
>>> index 842d768280..fefe8ac4df 100644
>>> --- a/xen/arch/arm/Kconfig.debug
>>> +++ b/xen/arch/arm/Kconfig.debug
>>> @@ -158,6 +158,9 @@ choice
>>>         config EARLY_PRINTK_RCAR3
>>>                 bool "Early printk with SCIF2 on Renesas R-Car Gen3 processors"
>>>                 select EARLY_UART_SCIF
>>> +       config EARLY_PRINTK_RK3399
>>> +               bool "Early printk with 8250 on Rockchip RK3399 processors"
>>> +               select EARLY_UART_8250
>> Platform specific options for early printk are deprecated. You can read it at the top of the file:
>> "
>> Deprecated: Alternatively, there are platform specific options
>> which will have default values for the various parameters. But
>> such option will soon be removed.
>> "
>>
>> ~Michal
> 
> 
> Thanks for the reminder! So only below 2 configs shall be configured
> when compiling the project, right?
> 
> EARLY_UART_BASE_ADDRESS
> EARLY_UART_8250_REG_SHIFT

Yes, that's correct

~Michal


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 07:35:44 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 07:35:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623534.971450 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvuu6-00006f-3z; Thu, 26 Oct 2023 07:35:42 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623534.971450; Thu, 26 Oct 2023 07:35: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 1qvuu6-00006Y-0N; Thu, 26 Oct 2023 07:35:42 +0000
Received: by outflank-mailman (input) for mailman id 623534;
 Thu, 26 Oct 2023 07:35: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=hFWs=GI=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qvuu4-00006S-Iw
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 07:35:40 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur04on2087.outbound.protection.outlook.com [40.107.7.87])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 42abe15a-73d2-11ee-98d5-6d05b1d4d9a1;
 Thu, 26 Oct 2023 09:35:39 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM7PR04MB6951.eurprd04.prod.outlook.com (2603:10a6:20b:10f::10)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.11; Thu, 26 Oct
 2023 07:35:10 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6954.008; Thu, 26 Oct 2023
 07: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>
X-Inumbo-ID: 42abe15a-73d2-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=SXTqlW1Ob1s+m7kx9Fz/W5TT06sWjQwS5a3xdpbq2grGGaTtP8OMMwSILYFlVlmE2l0DbkoBuKnd1D1Th889rx2ytCuZ0E2DrOnH9j/yUQdkuoFAVZb5ucugFy5yfee5rxwQwBHD3mWgm6FHt2Wva9WyDfwCjlRdA0PoDvNPoFpeFDJXePqdpkJXHss0w6i0R9DPp238K3hH3yg+fxYqLa76JD7R5I9nogyWtK6oJ8euW31I18Zgj9TbxHPw6NH5Ua27LY7H71IhlLzOxSC9MFQoH+e9TfX7mEc2Rg8hSVE+zfhasVjC7xy56Q02znUEyRWscz7dd4k3hyg3TSVDpw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=xsQAxk9u9hohwHEAMZJh0ndDzytoIRuYpXNu5Dpaw0o=;
 b=fISBe0fwUwFOWE0aJ3P1twESlzGY6sTGE6KWc7eVwyzlKMJZnQcmAIKphnZD4RalzzOjCVkUZTe1a1eVTmdqQwRlfi+pIaSFVgQVcnu3CtY6+KALQPBTLoQP+lVCLuXZvwu02MJpF4SbABI8zSJsxYwzu8v9uZieCEeeZzNi45UUYRhjVlohJ0pvl8uNtDv0X56c5SgE4ZQLD+cjzU7kxesaUPEHPdHmIc+JY3iyUqYID0/ScuEofUnxRSentnXebDbQGDUqjLid5fQ2cYURZ/Q70osc8aPtBzcmLIt+1xp3V2FY4Yd0mmiV6bSaycs/X92Szyr+KYuaPvAqeP6Pkw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=xsQAxk9u9hohwHEAMZJh0ndDzytoIRuYpXNu5Dpaw0o=;
 b=rGnzklcEOdyD998sx4lrwMVLLj5+D4ryghHsjJJE7bsX1JfEj5gb7IbN3zwPfDPKdz/dRE0M0pGX4I1/NRtw6YuEoMMQpim2l80heoWEUpqu6RMApgUWoSkbQex12lzxGBYNnFYE14ddqmxv6tZDFYKpujpcl+0nH1D88MuxJPEK5lUHgkB1F7VdaZgvfx7ryVNlcwxpj/logsb0jXcSxkO6GevP/wvxdMsCkMd4QPMAVCdA8ZcFKI+L+uQun37PI2cH+TFVl2gSncTTTsapfgAocC7iOPrtzrY5DHNwKRkLG7IuhtjuN7DjuZ2Y+1qajOI92L5lVsm84RlkB6bJ8w==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <ac7e9bac-6d74-a5bf-d703-3c5455e581ea@suse.com>
Date: Thu, 26 Oct 2023 09:35: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] x86/hvm/dom0: fix PVH initrd and metadata placement
Content-Language: en-US
To: Xenia Ragiadakou <xenia.ragiadakou@amd.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>, xen-devel@lists.xenproject.org
References: <20231026064543.43369-1-xenia.ragiadakou@amd.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20231026064543.43369-1-xenia.ragiadakou@amd.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR3P281CA0098.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:a1::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_|AM7PR04MB6951:EE_
X-MS-Office365-Filtering-Correlation-Id: 1022571c-35c6-41de-8533-08dbd5f6152e
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	eJsHDQvYh93zEFszkr7dcxinE0fP8T9kI4ppClnA6yeaynRX+O1cOh35Av2FBO+bORmNsV2hkOYybcWk13Vmefr2AY2c+QXmrQl9HuMXfgBcnAKRb6wx1t0dO3NQHq53NveTso0z1K2+bT1iDjCjXOQXg2MPtS9O19Q92CCsEiTNfcvvCQJrbxJ0vuIhhKLo4lOm5ZK7TZ3jPNKh/gLX9lTp70024ddofbS7+mfCGbmfuhWiftth6PPlFLi8gHCNUbyp3SzLt6voYMqD1Ob4W/lpwZuGxxYiq0qPFWPFLT5DcPhoCS7io9B1foe63vlIy1ubi2lNrbRBjnEBKEAo4IDqwXO8AjKyzFJ0C5fcrZdJBuxSk+uZW/KcgDuTayrNKQeLTVowCkEbum1CwtS+jQysaK2vCF+0BcAMSRK4S4Xw5PbxNSsUezqBJRp7oIycboqoGAl/AU/VZ9Jq8YOnrijqvtTj+DVKy1ZBTT14F8XzGKLyAi/Bc33cNwznYaHj+Zf595/6t4tjF2b3h5KP6avddM81WKRSNFGah0i93ATw/BqYfA+zXL2XM/Pcq9A1FuTZ89rHdYRgomXcpe7AW1q74AJ+LkuqYT4J19IR4l14gTKdilsWKCgjLeOdHGAcbpY5PNdEiLIOtCV5bBHa8A==
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)(376002)(39860400002)(366004)(396003)(230922051799003)(64100799003)(1800799009)(186009)(451199024)(26005)(31686004)(66899024)(38100700002)(2906002)(41300700001)(86362001)(31696002)(5660300002)(8676002)(36756003)(8936002)(4326008)(478600001)(2616005)(6916009)(6506007)(66556008)(54906003)(316002)(66476007)(53546011)(66946007)(83380400001)(6512007)(6486002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?QVk2ZWlSd3pOblNUVjRlUWNrLy9RVjJyaWY4dkN1cm4xaklMdnZzQTZlU1dv?=
 =?utf-8?B?dmNRdklBclNsZy84VXZCUW1JRCtoeDgzenVpZlN1SWxYTHNxT0dLKzhESGtu?=
 =?utf-8?B?bWJmVXN4amhnSVRod3V0cEoyR0Q4TDNPUHlBVCtmaWtVWmNUdGliV1FhWEIv?=
 =?utf-8?B?b3Yyb0JpZVlWMDNyNWlvR0pGVTAzSm41ZGFwVkVxNFJGdG1RN0YybDQ4UlQv?=
 =?utf-8?B?SDk2S2dFVlFzbWdXbXB4WjlUNnpJNFordm5KNU9ZZUR3RDhPa25hWnFYSEUv?=
 =?utf-8?B?UFhORW9XZk5rMlJmeXhKNGdvY3lxSDlxRFhRV00wMkVHdkNIeGxzWktUdkZw?=
 =?utf-8?B?SklCVlpzSTZMdmUrMDlxdEczbDRxaG9wa1dQYVhPWUtoN2pobktMbS9iNGgz?=
 =?utf-8?B?aXhmNHBkdmgrU0dEWHQwOC9Vb0NDdkxBTlRCM2E3QU5FcU5LZXBVdnlDdVVS?=
 =?utf-8?B?YkN3Qm9rYXRZcElQeWJFRXVQYjgwU2xEYkVsQ0tEZm05SW84dS9NbzF6Ukdp?=
 =?utf-8?B?dy90TlB2RkFIYmJvUlVGay9tOHhoVWZUem1lSjNTMEtJVy92VlRMYkV2Mmp6?=
 =?utf-8?B?NnB4MUliRzdWQUNJOG9uR2tSSlpmU1BCWlpwdGtwc2oxZW5nYnRteUMwUndG?=
 =?utf-8?B?T3dlZEVsK1hnd0huaFBWR0srMEtZSnJXVHJXN0pWcktiVXRGeWZhVHIzS2Nt?=
 =?utf-8?B?ajBlSkJCU0RHMmVrZHQxNGdIaExRaUpXVWZLRTl3UEQzV0RTTmJ0MlRsUzdU?=
 =?utf-8?B?cVU1WFZXZFVBaEQ3VGxBSGtST3hSanVUVW5xb1dOVDlocEg2cGtqOFFiVHEr?=
 =?utf-8?B?emFHWkNmUG83UFJoZkFtV01uRytsUEdrM0ROaGNzV2dNZWlCQk9FRVNIUitZ?=
 =?utf-8?B?N1ZFcnhmOTFPZHVKdVJKT2ZIbFJXZE8vUzBlTy9nNWVoQkErZWxlUnFORkx6?=
 =?utf-8?B?d3NLS2h4M2dhOG1oOUNYSEg2cUJxQ2RMd1Npc2FCb0hSNWwxcmVRU2tlM0xF?=
 =?utf-8?B?SnRPRnNLelhrZ2VPMkVQYlJ6aWFpRk13R0N1K3ZzeWRIdFRQc3VtbXh2Ukd5?=
 =?utf-8?B?TUx1YnQzK1Vwb2wyVWc5aTNUdkhKcU1WN3Y4LzlXQndvbnRocC9hdm50Zmtt?=
 =?utf-8?B?YkZkdkN6M1ZoVFFCUEFhTy8xMnFJbms3dWRzVzVnTFg1MkdlMHFoRVB6SGJQ?=
 =?utf-8?B?dU1mVWhSdUY4aU42a1hoVDRlYlBtZWo3S2g5V2ZlUFRmMEk2Y3VEUmNYU1k1?=
 =?utf-8?B?d243MDRSQ3J2eWt0THRiOXgrby9BTGNBYWpyZWJ6S3JhNFlTNEVXWCtyUGRW?=
 =?utf-8?B?ZlhsYndCQ2pZUFEwTk95dTd4bmYzcGFVVlBOWFNGQlAzNmU0WUFzNHVYaUYx?=
 =?utf-8?B?QldoMWMrblNOSEM1NjljWTFIQW9zS3dDOEpmaWNqL01adk1HSzBoelByMU51?=
 =?utf-8?B?dDJ1Y2l2ZmNjUTJWaFl1elRhWGxXM0lXWkFXSzZpbzNYcnIvR0ZWOE9lRmFp?=
 =?utf-8?B?Q01MMEFnNWhkTzZMY2I0L1I1enZzNDAwWmo3cnBwcUcvSzJOMFkyajRoYVg3?=
 =?utf-8?B?S0w1eFpsRXo1TzZTUkdLMTh6UG4xMjBCWDBYcHB6S2Z5dzlLSmxHYVdOc1h1?=
 =?utf-8?B?QnVCZjlya1dCVlpwSXYzMXExQlNIZkpjRG9ZNUV0cklScHdNMStjUVozY0V3?=
 =?utf-8?B?M24rNGh5cStRSjUvT3ZMSkpqMDR5T2RJUFY3WUZ5TmtZZkRhdkpoc2RBWjF0?=
 =?utf-8?B?dUdjUGpWN3pvVmwyK1JhKzY1T2xnSnJ0YVB4QTg4VVdVYlV5US9EcWFOK1Zr?=
 =?utf-8?B?Zm8vUHNtcnRpVitUOW1kVmZZNS95VVd6OGJLWWtvbmcrMU1OS2RsWDhlWWJN?=
 =?utf-8?B?eVVyRGx4RGVicUhBT0pIditGM2pBNnF3MU9tcnRmVWM2OCt4ZEptWC9PVFo0?=
 =?utf-8?B?SWFhWE01RlNseUl5K2l4REN3anpPanRMbGpHWS91QjlFRWdCWjRvaEQ5eHhr?=
 =?utf-8?B?Z255aHBjcE9OZ2dUTEZJcXh3SkZpeUpRWTBsaXNzWm9pdDQ3RURpVkJzQ3M3?=
 =?utf-8?B?Q2NJMWJhUEVWK0xBVDdndVdXdXRoVHVVQndTbmFMZitIR0dySUZJN0hjSHJt?=
 =?utf-8?Q?iFaQvVVacTBvyhsSRzQ89a0kd?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 1022571c-35c6-41de-8533-08dbd5f6152e
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Oct 2023 07:35:09.8090
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: hLHWP2UX2bv+DOEyKqEUFmuRkJQ4QObfEO4r09RYorPwkEMJisJxGZzWL/olt8JRYeHcJ842pYfGEU0ZlfuiSA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM7PR04MB6951

On 26.10.2023 08:45, Xenia Ragiadakou wrote:
> Given that start < kernel_end and end > kernel_start, the logic that
> determines the best placement for dom0 initrd and metadata, does not
> take into account the two cases below:
> (1) start > kernel_start && end > kernel_end
> (2) start < kernel_start && end < kernel_end
> 
> In case (1), the evaluation will result in end = kernel_start
> i.e. end < start, and will load initrd in the middle of the kernel.
> In case (2), the evaluation will result in start = kernel_end
> i.e. end < start, and will load initrd at kernel_end, that is out
> of the memory region under evaluation.

I agree there is a problem if the kernel range overlaps but is not fully
contained in the E820 range under inspection. I'd like to ask though
under what conditions that can happen, as it seems suspicious for the
kernel range to span multiple E820 ranges.

> This patch rephrases the if condition to include the above two cases
> without affecting the behaviour for the case where
> start < kernel_start && end > kernel_end
> 
> Fixes: 73b47eea2104 ('x86/dom0: improve PVH initrd and metadata placement')
> Signed-off-by: Xenia Ragiadakou <xenia.ragiadakou@amd.com>
> ---
>  xen/arch/x86/hvm/dom0_build.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/xen/arch/x86/hvm/dom0_build.c b/xen/arch/x86/hvm/dom0_build.c
> index c7d47d0d4c..5fc2c12f3a 100644
> --- a/xen/arch/x86/hvm/dom0_build.c
> +++ b/xen/arch/x86/hvm/dom0_build.c
> @@ -518,7 +518,7 @@ static paddr_t __init find_memory(
>          if ( end <= kernel_start || start >= kernel_end )
>              ; /* No overlap, nothing to do. */
>          /* Deal with the kernel already being loaded in the region. */
> -        else if ( kernel_start - start > end - kernel_end )
> +        else if ( kernel_start + kernel_end > start + end )

What meaning has the sum of the start and end of either range? I can't
figure how comparing those two values will be generally correct / useful.
If the partial-overlap case needs handling in the first place, I think
new conditionals need adding (and the existing one needs constraining to
"kernel range fully contained") to use
- as before, the larger of the non-overlapping ranges at start and end
  if the kernel range is fully contained,
- the tail of the range when the overlap is at the start,
- the head of the range when the overlap is at the end.

That said, in the "kernel range fully contained" case it may want
considering to use the tail range if it is large enough, rather than
the larger of the two ranges. In fact when switching to that model, we
ought to be able to get away with one less conditional, as then the
"kernel range fully contained" case doesn't need treating specially.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 07:45:45 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 07:45:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623540.971460 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvv3k-0002JV-2u; Thu, 26 Oct 2023 07:45:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623540.971460; Thu, 26 Oct 2023 07:45: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 1qvv3k-0002JO-06; Thu, 26 Oct 2023 07:45:40 +0000
Received: by outflank-mailman (input) for mailman id 623540;
 Thu, 26 Oct 2023 07:45: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=hFWs=GI=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qvv3i-0002JG-Ki
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 07:45:38 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur04on0624.outbound.protection.outlook.com
 [2a01:111:f400:fe0e::624])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id a61e2801-73d3-11ee-9b0e-b553b5be7939;
 Thu, 26 Oct 2023 09:45:36 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 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.6933.11; Thu, 26 Oct
 2023 07:45:34 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6954.008; Thu, 26 Oct 2023
 07:45: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: a61e2801-73d3-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ZWXBWYyIIShx22jUSjnoXnab9lNuioRKjq0SJ/aNhCixkvQ3TtJmM01sKUxzB4fMgWL3dtwPyKeU/561cXROUlsl0ZDlgV0rL8L+xmKqvvu48Yf5h+sWs0h/7f2d1X5iQ/cNM0vjSJr53fJnTJGXekaMtIFNIsCLM1iodxhPC7E+QNf7IOauxkpWAot1rfvljR8QduzvCOl8qYhLbnVBGFfx0PjxjEgoo0DVkmu1Anhc1X/Tl4W5q5GMNzif1yX785tu1hhZGUtdpOmHui8bhmsHh0nS4i+77E+oSSv1fiNojqnLLp8mBjhMHBOqzMVLVtRX59NjeyoQKT6b77LRhQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=wGVaZJl990xqzRXMv5PLviGMafAstKUXR/YKeKebAIU=;
 b=Oa3hHomwt3Xmhqq/MZs+osVumwemM8IHRCTyQLoz7ODNF3x1XPEIh+Z1POg+fNdRFWC4FyfWEPs60QDTxLJFkYouJDh/8T3oOjSlQ9mNsG92qOMdZ39KfYcSXdsNiICCUzY6n0EXjiy/qcNC+XT9KSD3m7Cs0bVd1JQT4E351zyrjlaOAW2G+ccnLKTM6zGdt2UdTbnPCqPRyBsJQX4G9mywh6/b/uEeh/n/f5+awi5i0i6lPByivVUK6tdckocTbkhXnngb3kKgLjmQjDk9HsuJeqxpMf2l7tBqSwK/QhamUf8u5FCvkcIIEEVYxFg1f6BnVKm4G38KkEmd5F/1xA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=wGVaZJl990xqzRXMv5PLviGMafAstKUXR/YKeKebAIU=;
 b=zmacOzp6AlXuXio5CebjIOPws1aYbbmYw1m2jyoecJDLcOdhTGn0XTV2btDaYupvtDoWofuF1W3pmKHFK2WihSTGhHNIpmtWj+NGPKAVZzu/unLy65CyCYjx61al+3El6DNtPra6G0gY2Bgs5oc8KpwuMt32Xc9V/AzP6j9gDcSaMFJriZIoqDiivMAiL2AgAFkHBUvPDUizCpmdknVmOQadUE6SEFlLQ1ApQWmMsC2d/7BIsYB3ZZ+jrEFVHmn0ZiCSm6SQRtncLmYyfLhc3qp7O1G3IBg2Y6g0CYF+ZNlYB9AjkdLOS/E47QBmDkaEoyIiwW3Xxci85a3vfqld9A==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <af70a4b6-0bdf-e6d2-80ae-822a273573f9@suse.com>
Date: Thu, 26 Oct 2023 09:45: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 1/2] x86/ucode: Move vendor specifics back out of
 early_microcode_init()
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>, Alejandro Vallejo <alejandro.vallejo@cloud.com>,
 Stefano Stabellini <stefano.stabellini@amd.com>,
 Xenia Ragiadakou <xenia.ragiadakou@amd.com>,
 Xen-devel <xen-devel@lists.xenproject.org>
References: <20231025180630.3230010-1-andrew.cooper3@citrix.com>
 <20231025180630.3230010-2-andrew.cooper3@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20231025180630.3230010-2-andrew.cooper3@citrix.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_|AM0PR04MB7170:EE_
X-MS-Office365-Filtering-Correlation-Id: 4e37b2e2-4c5b-4042-c009-08dbd5f7892a
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	Dxmwkqy8moNZqCikTa4TXy98XLgeqdvxYvR2yJhHYi0cpXW7WHvrtDogDfDRnQ9JFXwBxuAYmRexpQ6EWIRST6mO+SAm+EEQ/DkK8R27KH3VgH4shTgPsGxJwQQOTOy7Z3W0jelFtc+dmXfufKuapJebxllkDCeaYSQDDAtCn8MW8AohoAvYzSGGdrVtvBbEeZqF6u6DysTAbgmmH61lsokm2fdagSxk6TUt184a9eanj/gk6payL92pyFlrtXShysmkfG4DvHZvg+ae4Jk3u+B9NhArlfqAEJkm913ON/TmJELRTwo8uIcGBqiIB3ZZ7uE89QZD6fOXdMmiqnhXaNQSUu02eGZesUiJLVKOAXT1YmVQrxKB7CF/Seg30p/EJxa1DYyqFNyYfpzNM4btjC4K6L9Ayp1YPrHVKImHBKhqYibSYJ7LDeaX6tUjYOav++YqF1mHQeMrmO89zRGix6BZbQSIiXkvL5uN28SpDNyjiUGxFeca66li1dIzblztBwAlf7RrBt8LrvB4i7T/e0IQ48Iy6+jzy0zbJCzxX3nc3JDls1GgcJNZnWYUYoX6uGC0QNW3ebn7H2slCUbimIsUbaXZO3lq2HgUSrWf3XZoSvWiilSaX+zkDQedSqS7qTNrQrBhQxG4+U/jBCV4CA==
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)(366004)(376002)(230922051799003)(451199024)(64100799003)(186009)(1800799009)(6486002)(6512007)(316002)(6916009)(2616005)(38100700002)(6506007)(26005)(53546011)(66556008)(66476007)(66946007)(54906003)(31686004)(83380400001)(478600001)(8676002)(4326008)(8936002)(41300700001)(5660300002)(36756003)(2906002)(86362001)(31696002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?S2FRS1NuRGhJZWtNdVFESDdBRmFxNDhIaTIxMUt3TXRPM2JyVk81QVZhMmMx?=
 =?utf-8?B?RTk3RW1FSUFaQ0trV2pjK1hvRWFIN3g2ZnQ3Ymh1K21QQlp5WUV4cVZrRWJi?=
 =?utf-8?B?LzRYL25LWERpdzhiSkFDQ2FWSFd3c2xsN0VNYkhicWQ1TWdYSm1vZnBWVGZt?=
 =?utf-8?B?OE4yR2JGZmJ3ZjFQd0J0VVlISVo4Z2hBM1ljc01vZTdpQ2lBSFZJTStFT2hQ?=
 =?utf-8?B?d1huY0NrcWFaRDZHTGFBSkNNano2eUhwYkVIczc2V1V5a0E5NVQrYUFUZERy?=
 =?utf-8?B?eDlTUlhnS2JtcURwOUVRejBlSjlwRUJpTUxsaEF3K0d3aWVoV2VjaHFZa0NO?=
 =?utf-8?B?a1ZOd0c1RHBlWEJ1QWxWVGlQalRDSGNEREE3RjJlQ1B3VDFkeTgwNXNrVFpE?=
 =?utf-8?B?TnFIWTQ4NVRqdFFvUjd6eEpwb0dkMGV2Nm1mbzZ1L1liSkhENXJXYVlMNzFs?=
 =?utf-8?B?bkQ1UEJRUVBOaDV5SnlibFdGM0lGNnA4M3BHVk1NdFlOd2lqcGtydHBHVWJC?=
 =?utf-8?B?Z1J1bmpVY3RxSW9nVFlqZ3E5SldTeW9Bbi9GODJKeXoxN2RDM1FLWGNxT3ZB?=
 =?utf-8?B?QS9rK1ZqRlI5eTNuYUVYdlpobkQ0cHlaRGEzWXVFTDl2eU9qMFEwSXd2ek5K?=
 =?utf-8?B?N2FLSXQ0UmUrcjM5S1NjTjVzYkNBd3ZpKzVnRjFmcDdva2tJeitRM3M5VmFp?=
 =?utf-8?B?WlFjUS9jMVlIZko4TzcyNUxrNmpCaHY0bEQ3ODJZcEJUcXVOUFpxdWQ1SWJU?=
 =?utf-8?B?VFZlQVZCUC92NVJtK1lsUzQ0aXloNU1ndXZhZkthSW5sTmYwcHdManlDbnMz?=
 =?utf-8?B?a050bTZHREVVT0dicUMwNlQ3NjJSUlNRN3dFb3RSaWk3QmRJT3hFekFabklu?=
 =?utf-8?B?UGxmS1FtS3dFamcxM001R3ZWTFdnUTRHSlhtZTB2T29zYzRTbllZZU9iaEo4?=
 =?utf-8?B?cVY4UU1tbmFtd0JkYUxIejdLM01aTW0xQzFLUlhhS0ZTbUFqaXo3b2trUlc2?=
 =?utf-8?B?UXlwNmlIRDZQRWdCRkx4Y3BYdjJmbVBLNExWci80dDZOKzd6MUpaNlpwb0g5?=
 =?utf-8?B?OGN5Vy9mNW1hQzNDcU1JMExIcWtFSHpGcGp4a3cxM29nTC9lREp5UjRnK0VM?=
 =?utf-8?B?YmJPWjg0QTE0N2V6Z3JqZGRGWTdnWlFNWEJFNlVGd1NTSVI2bC96d2t4WXRP?=
 =?utf-8?B?YWZHOFRVNWE0aStScncyc1VabmtQa3pvSnh3Mlk5Qjk1N0Q1NGNTTmE3eTZK?=
 =?utf-8?B?bCtSRWIzNi90MGt2a0srWWw4dFl1TWdaQXBiSU9tVDFpMVdINEZYaENUVW4y?=
 =?utf-8?B?dXNVcDltZnFuaEhaQ3BwVlh2dXdkUm43ME9wditpY0o5a1BWbm9HdlNwdktu?=
 =?utf-8?B?eFBCaFRuNUt0ajNHRWlJNkd1RnY1aTJNazRDMTF0WDZ2TGN0dXdoR2RWLys1?=
 =?utf-8?B?NWQvQUcvZkhjOUpWajBKdkxiaUc3NjR5cTN5QS9LYlZ6bW1iMDBmUmlDZkx3?=
 =?utf-8?B?c2h4bWhYVnhOd2htK0R4Q0tCSVptNzFld1d5Ym1tQzNQVnppNFR6aUNEY2tX?=
 =?utf-8?B?cDl3ZzFFVW01ZzJBWVVtcDF2M0w5RE5US1dZNitORExSS2RFNVFpZXR0M0FV?=
 =?utf-8?B?ZWZ6citqNHNMeUZwanFOdWJyNDhKYittaCtSZTU2TndKQkJqRUFuelRjQU1q?=
 =?utf-8?B?NkhhbEFNeGNyRFdzQ3UxNzB5U2p1aVBBNmJpSk12V0N4a2dBaXEvem81UjE3?=
 =?utf-8?B?cDZCd3ArUnlTall6QmtGS3FDdUhmdGFTd0UvOFBXRjk3ck1aMEtpQmhwR2Vm?=
 =?utf-8?B?QUJwdU9JbWQ4Q3lPYmI3U2ptZGxzTnVjcW5mdmF1LzBERjMzUVpURGU5NGF6?=
 =?utf-8?B?TkJuWFloOVdjVmNScTRkdDhQTFZjRkdtblltR2pEM1RGaFhtaXUrOHZDRDFu?=
 =?utf-8?B?eVhMUjY4SnYxejU3d0oxWVJMOEpnN2lNcmNnR3VGWjJ5SEZEbC9uMGNIcjR0?=
 =?utf-8?B?cGlTaGtkN25lQWQwb3R1MlJxU05LTTRXWnpUR2UrVC9BUFRvUHExTXZqMEUx?=
 =?utf-8?B?OHNvaHZja1N5WkxES1FMQk12aTNWd3cyU3RSVGtveVh6MFh0QmhiZlovZFpX?=
 =?utf-8?Q?cHTTWoKEIhHiMcDSnJIyxT4En?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 4e37b2e2-4c5b-4042-c009-08dbd5f7892a
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Oct 2023 07:45:33.9081
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: GbVBdLpi7m4lWKOUuqbWaIw5t20C14lXWT1YVNaZXhBS17+8DNFIa6aaJ1S9tcNUcG9GdAoVdj3BMJMG9wnzKw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR04MB7170

On 25.10.2023 20:06, Andrew Cooper wrote:
> --- a/xen/arch/x86/cpu/microcode/core.c
> +++ b/xen/arch/x86/cpu/microcode/core.c
> @@ -847,25 +847,19 @@ int __init early_microcode_init(unsigned long *module_map,
>  {
>      const struct cpuinfo_x86 *c = &boot_cpu_data;
>      int rc = 0;
> -    bool can_load = false;
>  
>      switch ( c->x86_vendor )
>      {
>      case X86_VENDOR_AMD:
> -        if ( c->x86 >= 0x10 )
> -        {
> -            ucode_ops = amd_ucode_ops;
> -            can_load = true;
> -        }
> +        ucode_probe_amd(&ucode_ops);
>          break;
>  
>      case X86_VENDOR_INTEL:
> -        ucode_ops = intel_ucode_ops;
> -        can_load = intel_can_load_microcode();
> +        ucode_probe_intel(&ucode_ops);
>          break;
>      }
>  
> -    if ( !ucode_ops.apply_microcode )
> +    if ( !ucode_ops.collect_cpu_info )
>      {
>          printk(XENLOG_INFO "Microcode loading not available\n");
>          return -ENODEV;
> @@ -882,10 +876,10 @@ int __init early_microcode_init(unsigned long *module_map,
>       *
>       * Take the hint in either case and ignore the microcode interface.
>       */
> -    if ( this_cpu(cpu_sig).rev == ~0 || !can_load )
> +    if ( !ucode_ops.apply_microcode || this_cpu(cpu_sig).rev == ~0 )

Here ucode_ops.apply_microcode simply replaces can_load, as expected.

>      {
>          printk(XENLOG_INFO "Microcode loading disabled due to: %s\n",
> -               can_load ? "rev = ~0" : "HW toggle");
> +               ucode_ops.apply_microcode ? "HW toggle" : "rev = ~0");

Here, otoh, you invert sense, which I don't think is right. With 2nd
and 3rd operands swapped back
Reviewed-by: Jan Beulich <jbeulich@suse.com>

> @@ -398,9 +398,17 @@ bool __init intel_can_load_microcode(void)
>      return !(mcu_ctrl & MCU_CONTROL_DIS_MCU_LOAD);
>  }
>  
> -const struct microcode_ops __initconst_cf_clobber intel_ucode_ops = {
> +static const struct microcode_ops __initconst_cf_clobber intel_ucode_ops = {
>      .cpu_request_microcode            = cpu_request_microcode,
>      .collect_cpu_info                 = collect_cpu_info,
>      .apply_microcode                  = apply_microcode,
>      .compare_patch                    = compare_patch,
>  };
> +
> +void __init ucode_probe_intel(struct microcode_ops *ops)
> +{
> +    *ops = intel_ucode_ops;
> +
> +    if ( !can_load_microcode() )
> +        ops->apply_microcode = NULL;
> +}

I was wondering why you didn't use the return value to supply the pointer
to the caller, but this override explains it.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 07:56:19 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 07:56:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623544.971470 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvvDn-0005SG-1b; Thu, 26 Oct 2023 07:56:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623544.971470; Thu, 26 Oct 2023 07: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 1qvvDm-0005S9-Uh; Thu, 26 Oct 2023 07:56:02 +0000
Received: by outflank-mailman (input) for mailman id 623544;
 Thu, 26 Oct 2023 07: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=hFWs=GI=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qvvDl-0005S3-6V
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 07:56:01 +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 191e961f-73d5-11ee-9b0e-b553b5be7939;
 Thu, 26 Oct 2023 09:55:58 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM7PR04MB6997.eurprd04.prod.outlook.com (2603:10a6:20b:10d::11)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.14; Thu, 26 Oct
 2023 07:55:56 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6954.008; Thu, 26 Oct 2023
 07:55: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: 191e961f-73d5-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=UJIxU6moI95qNz/+6KRy4fP9MNR2slEka8C9SyjAoPg6XkOVhJwuqa/XCV2/A0BZsfnU9sFbPc1ZMsWqY1RKsE/Qlly7Tg9iv9C4f2JprWQYgUzwJQoWJs0CcJK7r+sLESr3+dwjEtFNtZDxNE856qJxWKKiJHGn7O9uUVHIpBmmm9yHcqqxhW5bJ6LyaA1RoShw1Ths4OhtrjHczQik+5J1eLHZqzvL2KoteynG3HuUaxeb7+JqMHTJzIH5WV32GkUvvyutkWQWRtED1u9njrWrnfprfnL/84FwnRuTmjMvUWg5eqZaImfzBL633ooveZHHCCVcwI81SPLfU6zjlg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=KperA67NHhVdPhHvryRtO/eew4wsEJq0Eq9CIUinfPg=;
 b=Sw+ZXJaM1ybiPB0CpnMBv7hXFU4zzgLn76P04LZa+uAg1KevVi4EDXheFDTSu9c+aGqrzfkmws13pg9ng1blncxN1tw4DacwvqjS2pyHehkHwju1/dg7ymk2qm1DsVK4zMoJ+SMftyPgkmeieEeGxphUGYJ8hgq7QtO1nzrpb1COYvBjmJG6nClYPeHZS/HjaDO9pbm1ZHCkJwEbqZJI3k9MLuk6JyCLrMLvv+kzvAc4v7VAU9JSIxgc27S0qtnefs7jABA8kwqXvt/v8y8HFTAaWuduqjOhD/ckpwV7tbU3tPuoZwyqWYZiRxjWX+JeCYQkKtuXvenp+73qzoy+pg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=KperA67NHhVdPhHvryRtO/eew4wsEJq0Eq9CIUinfPg=;
 b=ESentQ2ajL9eVUJspnTzvlwyxclPfgonR+c/28fq6wbBd5JDf/HCrBF6DmXrRAr/z3UoxfbJCvysbVWN5ktupspS61/3gRG+X2K0hcsgr6Yn8ZL2oTFF4Ugx6utvh/8hS/uwRFRhjuQGUWx7Y5hKFVkC1iDQdNFtYi9z1zMVar5bOeeUsJrdEVXbSG17xwysZDR39hlV4Y2/6LPKjm1MmC3syVzlP4dmoej7vSNHD5xwU6oZUf60WGUVpMy3fbgKoQka52PYpTnkVuo/3fOrxcbPpbRbR+cMGcyZudi6IRGL4WTyqXrzMUto/aMAGgwG1Xq9GUsvt0BWde8/HeToLw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <85cddaeb-6b75-2f53-940e-0b06396fd1bb@suse.com>
Date: Thu, 26 Oct 2023 09:55: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/2] x86/Kconfig: Introduce CONFIG_{AMD,INTEL} and
 conditionalise ucode
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>, Alejandro Vallejo <alejandro.vallejo@cloud.com>,
 Stefano Stabellini <stefano.stabellini@amd.com>,
 Xenia Ragiadakou <xenia.ragiadakou@amd.com>,
 Xen-devel <xen-devel@lists.xenproject.org>
References: <20231025180630.3230010-1-andrew.cooper3@citrix.com>
 <20231025180630.3230010-3-andrew.cooper3@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20231025180630.3230010-3-andrew.cooper3@citrix.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_|AM7PR04MB6997:EE_
X-MS-Office365-Filtering-Correlation-Id: 97c929f0-28cf-415f-e82d-08dbd5f8fbfc
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	3MItbr3pvruepZl9yL6y4I6k1Z3b4f+XY6UFHcTaa1/TYLg5cL8joI3GhwDwUZ6CN13ejNDgnYNSrAQY+MlGatpiYTb6Oz2Pw9FQUyhwlkTTWUl6co8ukWgmLGvp/fDI42uoPxLpNUlKUkAAFRUhVDBKZrWXHdcolkW6cgVpnholu08L/WuJSUM/p6KqfK570JYLB5e+2xi8j2vlmgfJZ4n/NbwmGLN6yoyKv4Pf61gPiLCXLe3skmMAaYzj59kGj0mVt6A6vPwOUBm2VxsPfLWlh1jXrqNQte6I6K1VWPPfMiJMIUE8CO2FuJReb62IsciUbwQNLu12QYoRj/83lRje5qYCWXvwzevafF8bfUCxP3clQB7qiA0FHN4cpZKRXBKOS1N+qyJkVmu9Yf4WsjYjCUaGYVOF+k499Sx/nyRJJjiDSNx3dBDr/dgvyKbZnwsYDHhFAf+9pTIoOeaVuh74XJjQfFFBcD968b825WTXHoYd8IW1Uxp5rLP4TYBs1SyQiziLM67RWZ8X/owU2mdmjFdIGU2FlDXJN1hWXNTHQDLyuBUpaARm11+nyTRs03Wi+RwR6YulyGTg3SzOrLDXw+Lq0XaH691bCYfCWS61exFeDYWqxkNIL1lr5jWaJji5iK2BW0YCiBBGCHfNRQ==
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)(230922051799003)(1800799009)(64100799003)(186009)(451199024)(83380400001)(8936002)(4326008)(66476007)(66946007)(66556008)(41300700001)(86362001)(54906003)(6512007)(6916009)(316002)(31696002)(478600001)(6506007)(5660300002)(6486002)(6666004)(36756003)(2906002)(26005)(38100700002)(2616005)(8676002)(53546011)(31686004)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?RGR3Kzd5WksyZXg3RnlXL28xUGFITTU0K0NtUHhHZWRiSGV5eXViWHpFZFFw?=
 =?utf-8?B?Qml0dC9SaWlrTGxOU3B2dlFWemo4S0Ivb3lIR2lsb2FBeHBndEZlaXU3bXlz?=
 =?utf-8?B?OEVROVlSMmk1L3dmMzhIMkNnSEtxU0dNaDFBWXpaV0phOVova0U2bFhUcEUy?=
 =?utf-8?B?dkpFRWxQWFU1U3FFb21yaGk3VkY4THVJU1VDaVZVL3dzeHlIR3J6Q3dqalRI?=
 =?utf-8?B?ZmVQeVVXSDZVOCtOeVNDY3BwVjZNamZBRjdMNStXdEY1KzFTOTMxVTV4V2NI?=
 =?utf-8?B?aDZMa0Mxak5FdVcySjcvMUxkbzhJN3ZNRW1nYTIzMzgwNEk5UFB4UGdHc1lS?=
 =?utf-8?B?SVFpVXVLdlYvM0RTbWJFY2ZUbHp2N3RXWXBBKzhUaGd4bXZsZUh5cXlvZE05?=
 =?utf-8?B?K2hQSjN1cVF5WjNtaUQzZElpcVRRYzdnc1RhNjN0NjVPR2p6Wkp6bHl2N2l6?=
 =?utf-8?B?VmRtTWxMUjFOSXBJMmkzOERWWGhKMUtHcTNUQy9VVEw4Q3dpWWpIeGV1SXhY?=
 =?utf-8?B?dDd1K1VlQkVrZCtmQzBvMjQ3Zk5Fa3Ixam9YbTdpOFN5RXY3UDVDUldVeHZX?=
 =?utf-8?B?ZXN6dGNZNUpBdDAxYzd0R3RDVi9adFRBTHJpZXhjUmNBSnNsL0E2OStsQVZS?=
 =?utf-8?B?N0RVTmNZVlE3dXNRNnR1aHdOakRFMkVOdGR4YWZ6Z2g4b1B4VkVCQStDVStE?=
 =?utf-8?B?UlEreEJkL29uTkRLbTJMNEp5bjZlcGdqRS9kenZvNE52QVFPODY1TFdhb2Z2?=
 =?utf-8?B?QzBxS1ZLSytkeGV6dm9SQVBsdzhjREc2aFBnYmQyR3AwakZvaUh5RDN1WjVU?=
 =?utf-8?B?Z3dPeEJrYTQ0WXhCcGkzeTBYSEc2R2g3alVXelRESnBjN3RIUnVwSDU2UTFs?=
 =?utf-8?B?dUtINFl6a3Y2dThkeFRvNHFVOXUrWEZIS2xxQXFWWHlBYm83eHcxL0xqeUJD?=
 =?utf-8?B?bTMyYXFrZmhXL3pJek9IbWdia0xtZkI1UnN2cU5RZ2pEZmNYSlJFUDE3Y0tS?=
 =?utf-8?B?amt0K0xaRCt0VFY5TGhMS3hXTkV2VHBxdWtqa2FybC82eWFQUUlqamtxZDlI?=
 =?utf-8?B?OXBBaEJmMkVEbW1laElNMzFPTVVRZXc3ZXAzbWd1dGxsNm5uZHZCMW1PQW5p?=
 =?utf-8?B?NGtxRDIwaUxiang3L2c1MHlpdUNCcllJTjNKYW9aaWdpN0pkVjJhRjlUYnpJ?=
 =?utf-8?B?NThXOUpoNjN2SEJIdWpJZkRqU3Vpb05NK1B6Y0ljU2k2eVlxV2RZUHFmMFdL?=
 =?utf-8?B?aU4xNk1Tam9uNnM5R3NFQ2NUWkJyekhSeStFalhLUnl5NitPck8ramVjU09q?=
 =?utf-8?B?YkpGVkxNVzBJRDlXdFh3dnQ3Qlpaem5JM0IzRmx2K0xFc293REk1bzh2aFMx?=
 =?utf-8?B?VVNoY3JCUk9aZzc3VUVkUnpLNUtRNklsempnT3JHbUxYMDFEQUhJN0lzR0ZV?=
 =?utf-8?B?bDN3NHgrNUpmTXowSFd1Rkl0eW1GVXRsaHdkMHdpOEtSRlVCdzUyMi9sTkky?=
 =?utf-8?B?U1E0RU5ES1hwaFFpNXRiUTliK1prMlVtU0RJZ2tSS3VLbFQ4aVE2aTNCQlk2?=
 =?utf-8?B?Y2gzeU1QZG9XWHlCRVlZL0RkUkM2YituVHJ0MXkxNHVMcFFwRXpTNU9FUERo?=
 =?utf-8?B?L0pjY2lpUUE0Mkc5NTN3a1hLUS90dEJBUHN6NDFacUFJNEFjNng4WlZybVJQ?=
 =?utf-8?B?TzFZdXVpVWNnTFRVRUFCOWdpQ1dKbXBscHluNmVIclB4NFpTeHhDcVhVcS9C?=
 =?utf-8?B?dzVkMDhXK2hUK2JtZnA4TVNlMVNSTG9qbkRUTEQzcXJ2K25CWUwyakJhRGMy?=
 =?utf-8?B?MkhzK3lyVFJjZ1pEbkp3VlUrREZjR2Z6a2czRDJTVk0vWHF1ODRmdVhOeFJG?=
 =?utf-8?B?bEk0Yk9sWGlaODk0TWhLdzNkU0ZKYWJIN0dDeXN0VFYvckRET0pjSVhYcndF?=
 =?utf-8?B?TG5kZzEwaGpKckhETUdTbmJFSDc1Yzl5WWZKWjhBSnNTMFBTSXFoY0Nnc3dI?=
 =?utf-8?B?UTZoOHpFdzhlQ1p1VnY3TzdSaHdpdnRrNElOS093U2owdDJmMTdIRS9PYnpx?=
 =?utf-8?B?alJDWm12Z3hqVzgxZW9VR0F5R1NJZyt2V2xaMlNZK2NBcTRqYWNFRlZHbE1W?=
 =?utf-8?Q?9p3dEDMfmteL/3986zwJSTTa1?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 97c929f0-28cf-415f-e82d-08dbd5f8fbfc
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Oct 2023 07:55:56.0579
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: qVfKf9kOsm2p4A6GgMHuCh16U4r2VaEc6vuk2zHJPR+ZC6/Ax8qbq9FC+eKsgVGi5ztaG6khBeh1v2JZ1RYSLA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM7PR04MB6997

On 25.10.2023 20:06, Andrew Cooper wrote:
> We eventually want to be able to build a stripped down Xen for a single
> platform.  Make a start with CONFIG_{AMD,INTEL} (hidden behind EXPERT, but
> available to randconfig), and adjust the microcode logic.

Linux uses different names for the Kconfig symbols. While I'm unconvinced
of the SUP part, I wonder whether we wouldn't better use CPU in the names.
One immediate question here is how the IOMMU interaction is intended to
end up: Do we want to permit either vendor's CPUs with the other vendor's
IOMMUs to be usable?

> --- /dev/null
> +++ b/xen/arch/x86/Kconfig.cpu
> @@ -0,0 +1,22 @@
> +menu "Supported processor vendors"
> +	visible if EXPERT
> +
> +config AMD
> +	bool "AMD"
> +        default y
> +        help
> +          Detection, tunings and quirks for AMD processors.
> +
> +	  May be turned off in builds targetting other vendors.  Otherwise,
> +	  must be enabled for Xen to work suitably on AMD processors.
> +
> +config INTEL
> +	bool "Intel"
> +        default y
> +        help
> +          Detection, tunings and quirks for Intel processors.
> +
> +	  May be turned off in builds targetting other vendors.  Otherwise,
> +	  must be enabled for Xen to work suitably on Intel processors.
> +
> +endmenu

Nit: Throughout this hunk there's an inconsistency with indentation
(hard tabs not used in some places where they ought to be).

Also, depending on the verdict on the aspect mentioned at the top,
"processors" may want replacing by "systems" or "platforms" or some
such if we mean these to cover more than just the CPUs.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 08:00:20 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 08:00:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623551.971480 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvvHu-0007Sa-Uh; Thu, 26 Oct 2023 08:00:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623551.971480; Thu, 26 Oct 2023 08: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 1qvvHu-0007ST-Ra; Thu, 26 Oct 2023 08:00:18 +0000
Received: by outflank-mailman (input) for mailman id 623551;
 Thu, 26 Oct 2023 08:00: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=hFWs=GI=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qvvHt-0007SN-L0
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 08:00:17 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur04on2073.outbound.protection.outlook.com [40.107.7.73])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id b1aa20df-73d5-11ee-9b0e-b553b5be7939;
 Thu, 26 Oct 2023 10:00:14 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM8PR04MB7457.eurprd04.prod.outlook.com (2603:10a6:20b:1d9::10)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.9; Thu, 26 Oct
 2023 07:59:44 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6954.008; Thu, 26 Oct 2023
 07:59: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: b1aa20df-73d5-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Y21vPpE4Yq4bKVEBI9qcatKMFyE8s3X4QCVrR2gJgh5juT9xCRyOFkiwRlPOUNN2eKympMD4TDNA7CT7dXXdbnsU2zdHS3OXyItIcnbLBfPg2Fw3/LfLyIgEtEv2bHK2yw62vhQnnXHJ8PVF/irETy4YW0+ecojLE0TajheZmO9gHfW4QyhM7sgy+K92lB4HWKg9t7+QdppLoNhImb+rby49hQy9KMbpslP96R3di7TCMToCQTaQi92g3mfwyluPupiIMwStvPlgABP+T1ApLaIy4JLlLBaAz88rq/tAXxqfqdxkI0etcZ7V0/8PH2lc+4YPm4Klq2pPiFijKF56uw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=T9hy9gzhOj6gXKvmYiTueG2H0zjrq70Tn8DcVN/uQHM=;
 b=Mx/78QbQl2SKqfkZnFUBa2zp2a5X1Z5XS76OLLS0si4AIyr+OQFrcBulpDXSEchoH+zdlxR32UR/HB91vrRDWjgig7aHPaQJGjkhG31L0SPfFt4sPHJyFmkBz4CYLHI553B/+bDCQC/mAfBOMUJRub26su9W3EnHerJrjT9JWuj5gTHOibjuAh7xsA05K5Ay60npUsMmlOtLgBmXarvO2GjaFQFu8zB2sY5jb7fE5P5PRMh5QcVgc1Jk+RyKfyEO0XCxJRFjYMuwltmPSwehAYO18LQggvxpli//1XBtmKpzIx7br2hbNNqixkIdFFTIlRffl6qa8afKbMtvXlrZog==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=T9hy9gzhOj6gXKvmYiTueG2H0zjrq70Tn8DcVN/uQHM=;
 b=msKyCzbT/YuCPxiUzfGX+eYyxiJZWWmW8Jg8IioJFfqtcUBMRxfGiXPpStqMjA/clFiopEaKf1v5cwTq/C3JRlmD0zA4roVQ9QZWcIiJqw+oWDJLFHekYElhKPbHGMKKibXiLDmNMWn1SjtfWUj2rYykSt52m87VTFv4w+iJt7yDcTwuOKAdQmfBDdAYcCuo4RMrCMWeYwYCQHKnsrN2n69QnlLHdlFonPPm+sIQz04jta0ErAxym5Wt+lHbhWmIYqUmr92Xf3FAqMXn/20d/+OHMu7UlarTl99LTW9ZwS69SJ/UmDvRjiDDDalVclwY2e5Dl+E8YEuBPo4iCCBYgw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <e3daacea-79c8-32ea-70b7-7654f542c9de@suse.com>
Date: Thu, 26 Oct 2023 09:59: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 v3] 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: <20231024145340.49829-1-roger.pau@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20231024145340.49829-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR0P281CA0160.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:b3::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_|AM8PR04MB7457:EE_
X-MS-Office365-Filtering-Correlation-Id: 944a23cb-a617-44a2-2cf4-08dbd5f983d5
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	iXeWt935ZbWhJKxEs6QQHCgjxxX9ZHQHB8BuqX+v+J4NWhVQXjDjIWPCsbpM+WBJh10Idmv46SGxGUrWZT66reGbt/SuRa053SZpYklDnGIKTc7IqfU3CYpy2ZyXoIeRJIqm8iB6sYGLPx2uTttYeoHqvYFtN/SIO9kqvj4PryYb4UCftiKwGcLDcTuW/tTaAyDcMmAjWuA/eU+bVCDjReg3D18U72wud+oMWSFKFBEgm4fVh38iL2CtC5iK1cr5VQPNaQI88Wr8B/76v4KEjqy9gU8sz/MAO+ymkZGvM/UByclQL8Lyrc04JdKGOr7VCIptO2RM2g6QlkCRKDpXKYCD2O5BA68bU35I1aqhp4k3zl3T3CBWrLxIjvOsMLOF22FTM7r9GRyI4XNuZZGTUGwmHrqarZxomSu1+82S95KEeXo8TDb385pTY6qlz0a15zfdohR8IVhw+Ecqi0xoOxgiASVZzg6MhzOJ7oQdZpNLX7IEHLojEajYeGOBjCofXaiovFUO1vxKpfRjlw7u+Ffp7nLdu7mNTqVf6/3N+u5+w+4WQ6qNyQLvmlBCpy+TXXOgMgLzkwrjTNfGz7P6P4/g82ywPOYKUmGgcoYAj0tI3TFfdKkOUNMU77+gsWMuildOM0lktlYscaLbzMSknQ==
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)(136003)(376002)(346002)(230922051799003)(186009)(64100799003)(1800799009)(451199024)(31686004)(2616005)(31696002)(38100700002)(53546011)(26005)(6512007)(5660300002)(8676002)(86362001)(41300700001)(6506007)(4326008)(2906002)(8936002)(36756003)(54906003)(316002)(66476007)(6486002)(83380400001)(66946007)(6916009)(66556008)(478600001)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?dWM3OXB0SjBRZmZ1NGlwNHdOTHpaZEJRZUIwOVplZkZWU0kzRGQvYkZwRE4y?=
 =?utf-8?B?ZDdjUFl2ZXJPUU15cUYrU09QU0dUczFCMmJMd3JHWnhjVXlaNUxHS0YyN0k5?=
 =?utf-8?B?TmRsWTNLNCtKV0J5ejRmakF1Z2tSM1ozdWxHVXZjYTFWY2Q1L09MVTM4MGRt?=
 =?utf-8?B?REsya1NzSmJlb3BGdnR1NWpZOWNET2pmY1pYaUpUbm9uZUtxYVBHcFpUMTdm?=
 =?utf-8?B?R2FySFBsbTl1cmVBY0tJTGtmUzhlcC9ZUGdVSFU3eFg2cnRZQXpLZFBjNFQ4?=
 =?utf-8?B?RUtYU1VXdUtHd0V5TUlHTW1nOU96Rkk5QmRpYjE5NCtqVm9BcE1NMmNsLzU0?=
 =?utf-8?B?L0o5aWs5L2ZVWUQzSnpia2tzTlJGRkpMWDZMYWFLNG03WDJ1YisvOVVlamdM?=
 =?utf-8?B?cnlQMUo5Uzh2K1V4b04wRWZscStOUnRVT2QrcW9SQ1FGOWNwdmFWZ0Q5eUxp?=
 =?utf-8?B?SEUvUG1wTnBUQlpqRFphSEEvalJ4ZEFBRUJwLzBMaGkxV2tXZmpUOWw4aXh4?=
 =?utf-8?B?TXgvd2hYdXJjaU9KS0Z0ZHJ5emRya2ZlTStRZkIxZE5CNko1eUhEbWdERXRj?=
 =?utf-8?B?Y1FPZUxSTURlR1FsSEdHTmFuMXRuWWppTWo2bTNOWXB1OFRBVDM4VVEzaWhG?=
 =?utf-8?B?Zi84bGNpYmlpVXpDaVdaKzBYWXM4eG1hZzFtTlpvbytQNVZsOFhSaGlGRkg3?=
 =?utf-8?B?bmp5WlFSOHRCYjZBbUMxTnNKeUlaeERDN1ZaZ0dEWEFjRlhPNjBOT0hqZWVn?=
 =?utf-8?B?VksyN0NhOEM2ZjNHNWJ6TElUcERGbDlTUElvLytFbDR2M2FGeUY2eG9mYkgy?=
 =?utf-8?B?L1dmeUE3Ym5NU3p2MGRpeG5uTWtIQ3RLcXFXSXJVOTc1Ly94THRnSy8yeHFT?=
 =?utf-8?B?dFVhNXYxeCtrMW1xRnhHd1pwKzc1bGRoaGllWThJekF5N0N5RjdObnpidElC?=
 =?utf-8?B?ZnVEeEtEbVdMZWpkTVNHTmIzNmRRYUlZekFGbnBvUXVaWnFpOGd6Y2t3bjdk?=
 =?utf-8?B?YjBhR0FWMFRZL1lQQmo2cVMwMC9Zc2Z5QVYrcU42YVB6Z2RGMDdPZGExYlpo?=
 =?utf-8?B?Y0I4a1hBNjgzdFpRM2RCYXF0UmlWcGNWVkpwUjBLRG9CZGpFVnBpcGc0Vzc5?=
 =?utf-8?B?T0U2ekFTbjd2L1NOVmNOakZkNEhFUVdYY3dDdUV6ck5jNnFSRUFOU3BESitM?=
 =?utf-8?B?dkM1anhPLzdlaDl4TGlvRzRNTTJ1WllmM2xFN3REOWVZQUlGWjFjWHoybWlQ?=
 =?utf-8?B?cE45QTE3RDIxYmRXOFJRcFpzeG1mNVFHQ0sydGRHVFZ0ajNsV3hhS2xRUjFP?=
 =?utf-8?B?ZnVyc0NxbWYzb1ErNERDeEluWG9SVERRMHlvdDVsMDk1TlFmcVJoY1FXUUpV?=
 =?utf-8?B?d3JYb3B4aW80d01KMU9UYkYydEZzMXduNFpEUldLdVNwYWMzcUxMVFkrbUMz?=
 =?utf-8?B?OVhGdHRmRzAxbHo4MHU1Tk85WHRxNjRweTh3QlFLOFI1eEpkQWc5WFQxQ3E2?=
 =?utf-8?B?bjZpQlRaWCtRVEtFaUhWTU1CQzdUa2daa2dLZG9ZWEJyNTZqZ1ZMV1l6TnlN?=
 =?utf-8?B?eXBmK2VrUkVIQlowSmgzM2o5SHcxOG5Ua0swd3pxUzVXK2xCRFhsaHJHTVRH?=
 =?utf-8?B?dEJPcmdKQm5rRjMrZHcyRzl3LzRHOGhoV1JWbkpnaEdUbzUvcklpdTkwTmpH?=
 =?utf-8?B?dmhoMThBZWM5eWNLd2VqQy9ha3hNTzl1cVRaY2VTZldaME1kTWNBYVZYcmdY?=
 =?utf-8?B?TmlUUjUyR0JJaEkrbURFZEx3VkpXTzdQNm03Q3NyOFc2b1k5cSsyZ2hvMTB1?=
 =?utf-8?B?d2prWXp4Q25DV1JHR2Fha2hZeE4wMy9NSjlvM2Y0dFlMTDluWFFOSEIzV1Ro?=
 =?utf-8?B?M0xYdDBqS2wwMHE1YitFdlFpQ1QySlROR0EzaFQwK0R4bWltMEVTVTc3Sjh4?=
 =?utf-8?B?LzdkVS9uRWQweHI2ZGNNM05CUHhVNXhMU2ZqQkFGZENKL2xoeEtvS1IvcEpP?=
 =?utf-8?B?UnpaanNMQmRiVGxwV1BMZTJ4SERHNEJDWHUyVU53NkV0Q00zYmRZNWZxVjZP?=
 =?utf-8?B?Uzh2b0NCaHBTVzRUR2wxOGZaNDVhbXRPM0ErUnZyRVlOOWx5WjBxZm8zUmdu?=
 =?utf-8?Q?15QHI+O6MpHvqn5suKPytrVU5?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 944a23cb-a617-44a2-2cf4-08dbd5f983d5
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Oct 2023 07:59:43.9741
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: OSpGW5koEduwAWYaZpgRqd0tvTtsH292Haoa5tddcNHq6cAhZ5lhWmjNmBGlONkLrGMyUyudT+tqd/A70e13xA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8PR04MB7457

On 24.10.2023 16:53, 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
> observed i8259 (active) vectors getting delivered to CPUs different than 0.
> 
> On AMD or Hygon platforms 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 would need to be handled on all CPUs.
> 
> Continue to reserve PIC vectors on CPU0 only, but do check for such spurious
> interrupts on all CPUs if the vendor is AMD or Hygon.  Note that once the
> vectors get used by devices detecting PIC spurious interrupts will no longer be
> possible, however the device driver should be able to cope with spurious
> interrupts.  Such PIC spurious interrupts occurring when the vector is in use
> by a local APIC routed source will lead to an extra EOI, which might
> unintentionally clear a different vector from ISR.  Note this is already the
> current behavior, so assume it's infrequent enough to not cause real issues.
> 
> Finally, 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
> 
> Amends: 3fba06ba9f8b ('x86/IRQ: re-use legacy vector ranges on APs')
> Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>

Reviewed-by: Jan Beulich <jbeulich@suse.com>
with one nit (which I think can be taken care of when committing):

> --- a/xen/arch/x86/irq.c
> +++ b/xen/arch/x86/irq.c
> @@ -1920,7 +1920,16 @@ void do_IRQ(struct cpu_user_regs *regs)
>                  kind = "";
>              if ( !(vector >= FIRST_LEGACY_VECTOR &&
>                     vector <= LAST_LEGACY_VECTOR &&
> -                   !smp_processor_id() &&
> +                   (!smp_processor_id() ||
> +                    /*
> +                     * For AMD/Hygon do spurious PIC interrupt
> +                     * detection on all CPUs, as it has been observed
> +                     * that during unknown circumstances spurious PIC
> +                     * interrupts have been delivered to CPUs
> +                     * different than the BSP.
> +                     */
> +                   (boot_cpu_data.x86_vendor & (X86_VENDOR_AMD |
> +                                                X86_VENDOR_HYGON))) &&

Afaict these two lines need indenting by one more blank, to account
for the parentheses enclosing the || operands.

Jan

>                     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 Thu Oct 26 08:03:46 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 08:03:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623555.971490 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvvLA-0008DY-G2; Thu, 26 Oct 2023 08:03:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623555.971490; Thu, 26 Oct 2023 08:03: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 1qvvLA-0008DR-Ct; Thu, 26 Oct 2023 08:03:40 +0000
Received: by outflank-mailman (input) for mailman id 623555;
 Thu, 26 Oct 2023 08:03: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=hFWs=GI=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qvvL8-0008Cu-Tj
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 08:03:38 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur04on2049.outbound.protection.outlook.com [40.107.7.49])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 2a4c7a75-73d6-11ee-98d5-6d05b1d4d9a1;
 Thu, 26 Oct 2023 10:03:38 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DBBPR04MB7658.eurprd04.prod.outlook.com (2603:10a6:10:20d::24)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.11; Thu, 26 Oct
 2023 08:03:07 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6954.008; Thu, 26 Oct 2023
 08: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: 2a4c7a75-73d6-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=QEyGhS/6lFf7ZWu3dOs4aA+RREy7mgsm6E6Qmbm5dbo2S3iJIoHjVScJLfCCrv4kVeS9ER/NOdplEEdrFfFLT6+VTCtVWmGj3QA79d6TqywXgCsQ6UyYjTSFNEkSgpys1AtZ6h2nmLGt8SIlzIosEXfmZ4HABhjD8ugcl9ZE9hMRNqi3XnWQBWkYW+YSV4iZehtsV6wNDg1qQ9Rpp4Yyr1AlbcmOBQByfVLnFcd/ieuKfDvsx50sVLWnY9JS4XTNt4MjhvwbHT8kUy9CebOHC2yXJITTXuvUDRFOpf2TMKSa1Cz+ywAkerQAnMvo+7sVQtlhLLfGkEYcUD6Y1SuEsQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=msptUi6HYJ/aRRYoMs+pZIPQrCpy+XmWxF7UOq0j7vo=;
 b=n1yqrcJdgj65oqg5aNSJW6KMWcds6MBDCp/9xZI2th+JKLXd0aMu3e9EFec2ku0yVNsm0Ezfy1kyP3qgX83Xm/o70sTuKIQhByr45R3AH8uEq1+GPqrsfykMkfnewP1OJ+wHcGBsh1dPb6HJp7lxPlX85tSPSoOcTzWbwcLGuILTbeKFgrapGx2QTG12G3vSCAkYptPPhEj9o8eHduPSDlKblrBAoY8GDZuDVSi/feg1hNqv9cxkJ5WmdFmtIoNKJkmm+lAtfwMYIBWd64OcVBXrYj1MFL93ln/rNFh+ERku81lrDfqVi6OwEkFstW/Ib29/1zxb0k0OnwtKZPJJ3A==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=msptUi6HYJ/aRRYoMs+pZIPQrCpy+XmWxF7UOq0j7vo=;
 b=FSR+E6q37apyJ++LQC+b1dbpij+JDmeKcR6TgpgidCfAnuDrpfRgvjc8MPajtNs11JMBZZ1Yb4izXEKl7HtD5jfYC1N1H0bKEjO7o4ZM4dQ0VQaPyj3vLMUFAF404jYR3G6HdwlPXxTGow09OBfpUD23myx4aJjI/ErR1+JaDpCXhWPeQ/WvZx8CLezWaZDV9abNKT7ceuWR1eOGgvTlEHGIuSb3anlTepKdBalJr9+v+H3991xZPbbCd865ZiHzGF6C+gNKDTp9tTF6yDhMi/OTnxbKEjb3pmFT8+AB2tnPO5TQMXCVVqoikl4Tp0Wa1TeMM2Mx1pRpmxEurjhycQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <6757b3a9-9556-c658-fb01-ce0ff68ab027@suse.com>
Date: Thu, 26 Oct 2023 10:03: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 v3 2/2] xen/ppc: Implement a basic exception handler
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.1698273423.git.sanastasio@raptorengineering.com>
 <1d875c978caa4ed0b3d038655a39aa0cb0583565.1698273423.git.sanastasio@raptorengineering.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <1d875c978caa4ed0b3d038655a39aa0cb0583565.1698273423.git.sanastasio@raptorengineering.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR3P281CA0052.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:4a::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_|DBBPR04MB7658:EE_
X-MS-Office365-Filtering-Correlation-Id: 7f62892a-27c2-49c7-92c2-08dbd5f9fd17
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	1T8HnoCoXz8MKKabMRFt7LtMjLxNzABcF/eck0DBLFvFkeBl+Vame/4mVElMUd8rpGab1Abb3Q3zzPMobCTcbmONsZ2xXyNuStYgJnk5Oue3o/mqcJShfAXmiVkKf5qkaIbbnVdFW2T3yyndqouDVV5Dq4UrAhEE52dCIuiOmfVJ5FbL6KR+fF1krci1h0bAWp26cFyzXIfB3l7knv7OUswJak5WGmWwAuUn77WaJXSnhcymdPH7fDQYAI5gIDNPB/j/LkorK1Cois4b5wW/5mTjTlELEbgOhXcem3H5upmFE+UHvUJoS9KPDnK6XFe61ee1Ivm1ewHEvGPBpFeNou2YeVTsrAIhjSqupPfsrEAoVT5QYmnWUzslJTS4gU2t2FXLAF79sarArBuUviCWQeqaqbat2R9nrFkDsjaaTja4vs/LNMUPS9UTmqi/NKyFVxmMRSe2qY86GIuqWb8A4Y1xnaicY4iQjoNlp3LvvHr4qokJhnaV0HyN/ZUpfkZK0kTawJhQNxHySZ2/1mMr2Yqh0eCCOUzhWbY0y6lYDp0kgTanBQpf2EN2Sqleaekfo5eisFXxoqcq/ITHghxwlrfqa6WlTnbfz3ZziD50cEnfSwICtpELrZiXPq6LJ5GHpLFjvkRXLbYgzyvMnOZ85A==
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)(396003)(366004)(39860400002)(230922051799003)(451199024)(64100799003)(1800799009)(186009)(26005)(31686004)(38100700002)(41300700001)(2906002)(31696002)(36756003)(86362001)(5660300002)(66946007)(8676002)(8936002)(4326008)(478600001)(6916009)(54906003)(6506007)(66476007)(66556008)(2616005)(53546011)(6486002)(6512007)(316002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?Y0ZYdXhHNXBzY2FXa3Y5L1ZWbktwSlNoM1RxVkpCTCtKMkxqUmRZclJ4ZFlk?=
 =?utf-8?B?SUZwTUJ3bEI5NWdSblJyYXlYVG93K29DQ1g4SGJ2SzN2OEgxS1JMdHE1Zlhu?=
 =?utf-8?B?ai9ZNWg0cUU3T0NsS24vNmRURmtvSWZJam0vL0V4QzlWL2w3NnU3dHhHNXRT?=
 =?utf-8?B?dDRXaTFFN3hMaEhWeXFMYjBvbFBrV3NxSk1GbEluL0VDMXllUW9zZHlWUHFa?=
 =?utf-8?B?L1g5akgvUk9pSU5HbzVoM3pPcUhEemhHWmZ6QnpNejBDYlRGYnU0RzhnR1Z0?=
 =?utf-8?B?T2J0eWhvbDFOaDAwNnUxTUg5NEdOM2llOE5ObDJaMXdRbDdYUzJOdHI2Ymsv?=
 =?utf-8?B?MWFBbkhFMnN6OGxHRC81K0lFaXViMjNpMG5EeE1kVmdoeXR3dUZIOG55OHI2?=
 =?utf-8?B?ZlIxOFBSaXB1WmszQXNrcHNpZUdDV1NJVHR1T0dxcWZ1REptRDZyR0pjamln?=
 =?utf-8?B?UXZITHQ4SzRuVWFZR2F1Q3VRZmN3MXpLMDE4T2xHNm5hWGlPdFVvbHZUcFRO?=
 =?utf-8?B?Zng1aXcxVFNDYXpmU1FzYi84MnNlYUNBZDlGNWx2RngwNkEwakNtUEtlYWJS?=
 =?utf-8?B?cmZac0dXRVB6SWppamlZUjFLNE5WQzMzNHhDb1RHSTJzcFQ2MHdrYVRFRDJ5?=
 =?utf-8?B?UWdERVk5L3MrOXdaZVMwa01LZjlGY0tudDFCTHdoNkJPRFc4RjNQYTFtNTRU?=
 =?utf-8?B?cFJpaittK2hRU2Q5Z3lHN3pTQjYvVVpUMzl2UjlmZEw3blNKSTU0TS9GSVRF?=
 =?utf-8?B?dmlVL1NaTzlnc3NRYTJ0cEJpN0EvRGZRVlRUb0pjN2xJcEs2MXBleGpZUGtU?=
 =?utf-8?B?ZUlKQllwakx2RzMxTmJobm9KOEhybDZrMFlaSUtOendwVlZGWFJZb0xmc2Vk?=
 =?utf-8?B?UTlMVjJ6cFBnc1pPMU1HRmtSRUo2T2dGYThReStNTjVJV0JKWXlHZWlUb29p?=
 =?utf-8?B?N1orTjZVb1loTmR4dXV6dTFXdnNtY0w1SkwyeVYreExHK2NXcHZadWhCTmJ3?=
 =?utf-8?B?Zk5va1BkZ0laSTA3QXRxb0d1b2dzU1V0a3RBZ0hZai9HR1NYaXZMWElyZjJN?=
 =?utf-8?B?YXU5TGEzT1AzeEdVNU84SE5iT3BTQVphZlh6RVNNUmJkRmR1RENkMzljcEhM?=
 =?utf-8?B?cmZRVlJ0dDJlbEMzeXJBam14dFh3UVFTUTdtYlNHWExiNjV5aVhCeXZKb2dJ?=
 =?utf-8?B?a29uZndXVnZsRUJPTUgySWlXOWwydDRZTFMvYTgrK0Q3WFJtdnRmMzZWNUNN?=
 =?utf-8?B?b0IycGpWSGdtUlJGRTd2SFpWcFlORjF0dk13MEpMM0RJQ0lCZHIrZHdzTUs2?=
 =?utf-8?B?MWZyeXl1VWVnMzlsdlo5SHFkZ25uaW5WMW01UklRWElqeVNzL0dwcE9KRDh3?=
 =?utf-8?B?U2FwU2NWdGFXNDhKU3l6U2lHR25rd0p1YkFNTnh6UjY2UkRBS1g2dWh4M25F?=
 =?utf-8?B?N1ZkeEZxY0FoWGxIMm5LaFMrbTZISDd4dXFpME5ybVc1S0c5NDNoR3JjN2M5?=
 =?utf-8?B?cFN4MWJPU2FVNHRzVzJQejhPL09sNmN5UUpLcmNzT0IrbkpiSGVwYnpKTFhy?=
 =?utf-8?B?TGNyWHpkd3JsVHpCRFFXcjFIa0E2YXg3MHJmaUFJQzVBN0s2MThLdkhkcExp?=
 =?utf-8?B?anhmaTZTUnM1TE03M0dJbXI0R2hja0UweTlKM2RFUUNBRS8vaHhtRE1VQlhF?=
 =?utf-8?B?b3pPa2pRZEZYVzRaWi9YTjVvUDR5Z1VlSjQ0VlpUR2V6U2E2ZVpSRjNFcjZD?=
 =?utf-8?B?dGdJRGFSWnpFMDJIV2tnd0xCaUxOK295S1owdmEwTGNib1JzRG9KQ3VhaG9I?=
 =?utf-8?B?YWo5eUlPSitqcWJWNW5mTktTK2dXRjVQVWg5YzFFTUxjSktLNXg5d3lGdXB2?=
 =?utf-8?B?NU1ZYmRNWGlnbTZBaXpVd3VuUWczYkIzcUJhTHBzYlZ3SDhLQ2V5U2ovYjg3?=
 =?utf-8?B?WlRja1JoK2ZUZ3hwdnpyNEQydkhXeEdtZnBqT0dKSmkvTC9BcnpkL1VEOUIy?=
 =?utf-8?B?cHd5RkdWaXlnNUttYTFjSUtndUNlS2VXWmwwQkYwek9iSmhXWExQUEF5UHFj?=
 =?utf-8?B?S0g5NDQwYjkrMjUvODVndkFZZHNPUDFVTC82cnorT0lGalVNdWlOVC9tcmhr?=
 =?utf-8?Q?1i/DKqNpMOd5G5gk1bOS5YIJh?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 7f62892a-27c2-49c7-92c2-08dbd5f9fd17
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Oct 2023 08:03:07.3937
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: LcSP5AhyE67iE1O+jHigafkS/WRM3qvzQgGhLvSAY8y5m0n9NtbqMWHfIg+S53pZ8Nzp9cENbaQjD11Q50m2jQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBBPR04MB7658

On 26.10.2023 00:41, 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>

Despite me being unhappy about the disconnect of the constants
Acked-by: Jan Beulich <jbeulich@suse.com>
One further remark/suggestion though (happy to take care of while
committing):

> --- /dev/null
> +++ b/xen/arch/ppc/ppc64/exceptions-asm.S
> @@ -0,0 +1,135 @@
> +/* SPDX-License-Identifier: GPL-2.0-or-later */
> +
> +#include <asm/asm-defns.h>
> +#include <asm/processor.h>
> +
> +    .section .text.exceptions, "ax", %progbits
> +
> +    /* Helper to dump CPU state to struct cpu_user_regs pointed to by r1. */
> +ENTRY(exception_common)
> +    /*
> +     * Save GPRs 1-31. TODO: The value of %r1 has already been modified by the
> +     * ISR, so the value we save isn't the exact value we had on entry.
> +     */
> +    SAVE_GPRS(1, 31, %r1)

Wouldn't this comment ...

> +    /* 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)

... better be repeated here?

Jan


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 08:12:40 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 08:12:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623561.971500 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvvTj-0002SO-Av; Thu, 26 Oct 2023 08:12:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623561.971500; Thu, 26 Oct 2023 08: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 1qvvTj-0002SH-70; Thu, 26 Oct 2023 08:12:31 +0000
Received: by outflank-mailman (input) for mailman id 623561;
 Thu, 26 Oct 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=VqC+=GI=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qvvTh-0002SB-FP
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 08:12:29 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 671b7b61-73d7-11ee-98d5-6d05b1d4d9a1;
 Thu, 26 Oct 2023 10:12:28 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id A15AE4EE0742;
 Thu, 26 Oct 2023 10:12: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: 671b7b61-73d7-11ee-98d5-6d05b1d4d9a1
MIME-Version: 1.0
Date: Thu, 26 Oct 2023 10:12:27 +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.cooper3@citrix.com, roger.pau@citrix.com, Simone Ballarin
 <simone.ballarin@bugseng.com>, Doug Goldstein <cardoe@cardoe.com>, George
 Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>, Wei Liu
 <wl@xen.org>
Subject: Re: [XEN PATCH][for-4.19 v3] xen: Add deviations for MISRA C:2012
 Rule 7.1
In-Reply-To: <f740f6db-ccec-1187-7c19-1cb37d8cf4b6@suse.com>
References: <5e0f1bcd7b4325141e64a3c2d581034956b42293.1698136547.git.nicola.vetrini@bugseng.com>
 <alpine.DEB.2.22.394.2310241329390.271731@ubuntu-linux-20-04-desktop>
 <78107fe9-de43-30b8-7423-240450bc0da8@suse.com>
 <alpine.DEB.2.22.394.2310251532290.271731@ubuntu-linux-20-04-desktop>
 <f740f6db-ccec-1187-7c19-1cb37d8cf4b6@suse.com>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <937dc59860ce757c1a8de80a44a41ccb@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 26/10/2023 08:49, Jan Beulich wrote:
> On 26.10.2023 00:34, Stefano Stabellini wrote:
>> On Wed, 25 Oct 2023, Jan Beulich wrote:
>>> On 24.10.2023 22:30, Stefano Stabellini wrote:
>>>> On Tue, 24 Oct 2023, Nicola Vetrini wrote:
>>>>> As specified in rules.rst, these constants can be used
>>>>> in the code.
>>>>> 
>>>>> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
>>>>> ---
>>>>> Changes in v2:
>>>>> - replace some SAF deviations with configurations
>>>>> Changes in v3:
>>>>> - refine configurations and justifications
>>>>> ---
>>>>>  automation/eclair_analysis/ECLAIR/deviations.ecl | 10 ++++++----
>>>>>  docs/misra/deviations.rst                        |  5 +++++
>>>>>  docs/misra/safe.json                             |  8 ++++++++
>>>>>  xen/arch/x86/hvm/svm/emulate.c                   |  6 +++---
>>>>>  xen/common/inflate.c                             |  4 ++--
>>>>>  5 files changed, 24 insertions(+), 9 deletions(-)
>>>>> 
>>>>> diff --git a/automation/eclair_analysis/ECLAIR/deviations.ecl 
>>>>> b/automation/eclair_analysis/ECLAIR/deviations.ecl
>>>>> index fa56e5c00a27..ea5e0eb1813f 100644
>>>>> --- a/automation/eclair_analysis/ECLAIR/deviations.ecl
>>>>> +++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
>>>>> @@ -85,10 +85,12 @@ conform to the directive."
>>>>>  # Series 7.
>>>>>  #
>>>>> 
>>>>> --doc_begin="Usage of the following constants is safe, since they 
>>>>> are given as-is
>>>>> -in the inflate algorithm specification and there is therefore no 
>>>>> risk of them
>>>>> -being interpreted as decimal constants."
>>>>> --config=MC3R1.R7.1,literals={safe, 
>>>>> "^0(007|37|070|213|236|300|321|330|331|332|333|334|335|337|371)$"}
>>>>> +-doc_begin="It is safe to use certain octal constants the way they 
>>>>> are defined in
>>>>> +specifications, manuals, and algorithm descriptions."
>>>>> +-file_tag+={x86_svm_h, "^xen/arch/x86/hvm/svm/svm\\.h$"}
>>>>> +-file_tag+={x86_emulate_c, "^xen/arch/x86/hvm/svm/emulate\\.c$"}
>>>>> +-config=MC3R1.R7.1,reports+={safe, 
>>>>> "any_area(any_loc(any_exp(file(x86_svm_h)&&macro(^INSTR_ENC$))))"}
>>>>> +-config=MC3R1.R7.1,reports+={safe, 
>>>>> "any_area(text(^.*octal-ok.*$)&&any_loc(any_exp(file(x86_emulate_c)&&macro(^MASK_EXTR$))))"}
>>>>>  -doc_end
>>>>> 
>>>>>  -doc_begin="Violations in files that maintainers have asked to not 
>>>>> modify in the
>>>>> diff --git a/docs/misra/deviations.rst b/docs/misra/deviations.rst
>>>>> index 8511a189253b..26c6dbbc9ffe 100644
>>>>> --- a/docs/misra/deviations.rst
>>>>> +++ b/docs/misra/deviations.rst
>>>>> @@ -90,6 +90,11 @@ Deviations related to MISRA C:2012 Rules:
>>>>>           - __emulate_2op and __emulate_2op_nobyte
>>>>>           - read_debugreg and write_debugreg
>>>>> 
>>>>> +   * - R7.1
>>>>> +     - It is safe to use certain octal constants the way they are 
>>>>> defined in
>>>>> +       specifications, manuals, and algorithm descriptions.
>>>> 
>>>> I think we should add that these cases have "octal-ok" as a in-code
>>>> comment. Everything else looks OK so this small change could be done 
>>>> on
>>>> commit.
>>> 
>>> But that needs wording carefully, as it doesn't hold across the 
>>> board:
>>> Right now relevant MASK_EXTR() uses gain such comments, but 
>>> INSTR_ENC()
>>> ones (deliberately) don't.
>> 
>> What about:
>> 
>> * - R7.1
>>   - It is safe to use certain octal constants the way they are defined
>>     in specifications, manuals, and algorithm descriptions. Such 
>> places
>>     are marked safe with a /* octal-ok */ in-code comment, or with a 
>> SAF
>>     comment (see safe.json).
> 
> Fine with me.
> 
> Jan

Ok, I'll update the deviation record.

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


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 08:17:51 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 08:17:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623566.971510 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvvYp-0004G1-Sh; Thu, 26 Oct 2023 08:17:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623566.971510; Thu, 26 Oct 2023 08: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 1qvvYp-0004Fu-Pd; Thu, 26 Oct 2023 08:17:47 +0000
Received: by outflank-mailman (input) for mailman id 623566;
 Thu, 26 Oct 2023 08: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=YIwS=GI=gmail.com=oleshiiwood@srs-se1.protection.inumbo.net>)
 id 1qvvYp-0004Fh-BL
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 08:17:47 +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 23cd0352-73d8-11ee-9b0e-b553b5be7939;
 Thu, 26 Oct 2023 10:17:44 +0200 (CEST)
Received: by mail-wr1-x433.google.com with SMTP id
 ffacd0b85a97d-32d849cc152so442480f8f.1
 for <xen-devel@lists.xenproject.org>; Thu, 26 Oct 2023 01:17: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: 23cd0352-73d8-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698308264; x=1698913064; darn=lists.xenproject.org;
        h=to:subject:message-id:date:from:mime-version:from:to:cc:subject
         :date:message-id:reply-to;
        bh=2QlcZTPz0VxE1NAr3bnHmFcQKBfgNdzjWK/+xtw9AwM=;
        b=awiUzg7O140iADHGp+qxV+JrLgpHXt6KHyPgqupwU1fanrS2nA3nh1j7BeUNycQrSj
         pVoIChZ2oFBvVMcPmyRMGIzrnAgE/oxBDm7Oj1CqM5sxLqnGVTP8RhG8AODxi8TWQTXs
         UICTmQU4/N/wT1qWA0eLFlcj2hOFoyJOk91mQcDskvgyT45+M7DQApoKJ2X38WHmG4Qd
         sSU4TLoVqwiInT3/qDC6NVVfR2azU/eGl9tvyzbHi2qjxNv7Xqdeu27E04cw13/OeOvW
         wR1IeCBooyy8Hu7TaRAu2OYf2/h1lbNd6gieQ6xyFLhqUzL8+YDF73shchAytATcEBqh
         47iA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698308264; x=1698913064;
        h=to:subject:message-id:date:from:mime-version:x-gm-message-state
         :from:to:cc:subject:date:message-id:reply-to;
        bh=2QlcZTPz0VxE1NAr3bnHmFcQKBfgNdzjWK/+xtw9AwM=;
        b=PRAlqYRNBUkjOuqs54uoYpBVT4Ec7G9PNQhl/6JUdbdFaOSRVGAecpxVKfz8Gn3L8t
         65zz77toKtzGGQ48D3XxGm2VtxRzx8U5Mzj9HIvRDZYAM6yBPd41HTGE+XYUOgQQ4UNb
         W79QpcBhNjqe3f7ZuSpP4WY0fHMrEm46aGxolqyUkNmt69ovq5Vstxchk76Mehk3nc9T
         wdWVtqdaALNN7TigtsFooo5AoqtRGuW5AFMi1H9QhmAsxYO6p4zQTSs1bEslvMJxhdb3
         tZpP6C92doGsvNae8/7oppdWaCtACsAgGDkrH1W7RMJ5cBHA9t7IMTIX2J9+X2tM1Qfi
         6iWw==
X-Gm-Message-State: AOJu0YzNkoMlTeCKQdFnu4XSudZxDKdzaYbnlEBJc3PuseBERGq7xq4x
	SJ+Q6hRY/92xKDCohf3JftpIA1YSws/XbhJ31DA3J0WtyzZu3w==
X-Google-Smtp-Source: AGHT+IGl7umX9sly41zXRcJ1W85Xy7fQqboAZXtU4V8j87p/q+Xwx6p7Iojl4RHWGKebZWo9PD3jAx9sVEhSgO67ZeU=
X-Received: by 2002:adf:f049:0:b0:32d:9daf:3f94 with SMTP id
 t9-20020adff049000000b0032d9daf3f94mr11326102wro.53.1698308263895; Thu, 26
 Oct 2023 01:17:43 -0700 (PDT)
MIME-Version: 1.0
From: Oleg Nikitenko <oleshiiwood@gmail.com>
Date: Thu, 26 Oct 2023 11:25:28 +0300
Message-ID: <CA+SAi2soyLRdKeLScsPph2Qe9bLytAGCh4U1zKHp3hAJWaMxkw@mail.gmail.com>
Subject: network communication in CC mode
To: xen-devel@lists.xen.org, xen-devel@lists.xenproject.org
Content-Type: multipart/alternative; boundary="000000000000c9e5ca06089a3428"

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

Hi guys,

This is a new question.
Has anyone tried networking communication in Xen Cache Coloring mode ?
I mean connect from one DomU to another one DomU for example ?
It may be achieved by xl command.

Or maybe a goto device which has xen with Dom0 in CC mode from the host ?

Regards,
Oleg

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

<div dir=3D"ltr"><div>Hi guys,</div><div><br></div><div>This is a new quest=
ion.</div><div>Has anyone tried networking communication in Xen Cache Color=
ing mode ?</div><div>I mean connect from one DomU to another one DomU for e=
xample ?</div><div>It may be achieved by xl command.<br></div><div><br></di=
v><div>Or maybe a goto device which has xen with Dom0 in CC mode from the h=
ost ?</div><div><br></div><div>Regards,</div><div>Oleg<br></div></div>

--000000000000c9e5ca06089a3428--


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 08:17:51 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 08:17:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623567.971519 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvvYr-0004Ue-3W; Thu, 26 Oct 2023 08:17:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623567.971519; Thu, 26 Oct 2023 08: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 1qvvYr-0004UX-0x; Thu, 26 Oct 2023 08:17:49 +0000
Received: by outflank-mailman (input) for mailman id 623567;
 Thu, 26 Oct 2023 08: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=YIwS=GI=gmail.com=oleshiiwood@srs-se1.protection.inumbo.net>)
 id 1qvvYp-0004Fi-Jp
 for xen-devel@lists.xen.org; Thu, 26 Oct 2023 08:17:47 +0000
Received: from mail-wr1-x42b.google.com (mail-wr1-x42b.google.com
 [2a00:1450:4864:20::42b])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 23e663ae-73d8-11ee-9b0e-b553b5be7939;
 Thu, 26 Oct 2023 10:17:45 +0200 (CEST)
Received: by mail-wr1-x42b.google.com with SMTP id
 ffacd0b85a97d-32f5b83f254so433774f8f.3
 for <xen-devel@lists.xen.org>; Thu, 26 Oct 2023 01:17: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: 23e663ae-73d8-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698308264; x=1698913064; darn=lists.xen.org;
        h=to:subject:message-id:date:from:mime-version:from:to:cc:subject
         :date:message-id:reply-to;
        bh=2QlcZTPz0VxE1NAr3bnHmFcQKBfgNdzjWK/+xtw9AwM=;
        b=EkowZ73R8D3Atn0R9b6xJ3wtvJvvTborfByB14SksfZ51yYcVcXxOGmOlyqPyiUFfy
         yJqzuE/ZWTB9vnH8Z0jGgZ566HcSBYQqy7oJ9rEgADG/jc9zHQeSuNI/PrLyljgvABzj
         rZQvpjJ9yBdahQxj5j2rHUjbgvflArQMH/RzLwBRc5lyODxbOmQe3JyN3bAD1Tzm8glZ
         JNmx7p5qQmn/lpeey/0YQWCMulWJkjrlt7EtAZzSUjf7z6BEQ8mgEkEvMI+W1BmH+kFU
         eoH7qAUvrxDTFeBR8PobiSmikmMzzgsTinrUODQOrWelThshkcfeoSB79CSyxCBgOoVz
         oBEg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698308264; x=1698913064;
        h=to:subject:message-id:date:from:mime-version:x-gm-message-state
         :from:to:cc:subject:date:message-id:reply-to;
        bh=2QlcZTPz0VxE1NAr3bnHmFcQKBfgNdzjWK/+xtw9AwM=;
        b=vQHigj756MxG3jgfF5ZT0rkq5VsWKMgwt8QdazCIyOnBG1IZCWPWqUBDo9WmfYQOPI
         gd9LNsciz3DaxTj54efQuKF/5jv267cE7GMdLP562Ty5LoVqQya966kqoAj1lfH+iNyx
         o7SACTY7pbzl1r3D17GH/GbI/cAUUifmxmu1tT9epGBZys3F28ehaEw4DqcNFu3Vf7m+
         F5QdEMisH5qwph0cEG+xF+Q5r8Ntvkv/2ns7kGy6BobcKpWZuKFwuo0MrsjyYBsKXlyY
         DA4TooarsOwmStSGExfuKN3+gsBeyM69pwl4Y1GAlkSwQxrLSLNZrxpcZbt0UYD3Z6NW
         axCg==
X-Gm-Message-State: AOJu0YyEnOCzAJ1HOpaGHSM75RRVsJYqgD2TaHkM4Smpm96CWsgKPSb/
	WAuZE3nj20DJtZzzHLOz6b/AQhTe4Q/QndppYxPyZpYSGz9H1g==
X-Google-Smtp-Source: AGHT+IGl7umX9sly41zXRcJ1W85Xy7fQqboAZXtU4V8j87p/q+Xwx6p7Iojl4RHWGKebZWo9PD3jAx9sVEhSgO67ZeU=
X-Received: by 2002:adf:f049:0:b0:32d:9daf:3f94 with SMTP id
 t9-20020adff049000000b0032d9daf3f94mr11326102wro.53.1698308263895; Thu, 26
 Oct 2023 01:17:43 -0700 (PDT)
MIME-Version: 1.0
From: Oleg Nikitenko <oleshiiwood@gmail.com>
Date: Thu, 26 Oct 2023 11:25:28 +0300
Message-ID: <CA+SAi2soyLRdKeLScsPph2Qe9bLytAGCh4U1zKHp3hAJWaMxkw@mail.gmail.com>
Subject: network communication in CC mode
To: xen-devel@lists.xen.org, xen-devel@lists.xenproject.org
Content-Type: multipart/alternative; boundary="000000000000c9e5ca06089a3428"

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

Hi guys,

This is a new question.
Has anyone tried networking communication in Xen Cache Coloring mode ?
I mean connect from one DomU to another one DomU for example ?
It may be achieved by xl command.

Or maybe a goto device which has xen with Dom0 in CC mode from the host ?

Regards,
Oleg

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

<div dir=3D"ltr"><div>Hi guys,</div><div><br></div><div>This is a new quest=
ion.</div><div>Has anyone tried networking communication in Xen Cache Color=
ing mode ?</div><div>I mean connect from one DomU to another one DomU for e=
xample ?</div><div>It may be achieved by xl command.<br></div><div><br></di=
v><div>Or maybe a goto device which has xen with Dom0 in CC mode from the h=
ost ?</div><div><br></div><div>Regards,</div><div>Oleg<br></div></div>

--000000000000c9e5ca06089a3428--


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 08:18:38 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 08:18:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623570.971530 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvvZe-0005Hb-DA; Thu, 26 Oct 2023 08:18:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623570.971530; Thu, 26 Oct 2023 08: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 1qvvZe-0005HU-AX; Thu, 26 Oct 2023 08:18:38 +0000
Received: by outflank-mailman (input) for mailman id 623570;
 Thu, 26 Oct 2023 08: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=VqC+=GI=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qvvZc-0004Fi-V0
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 08:18:36 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 41be070b-73d8-11ee-9b0e-b553b5be7939;
 Thu, 26 Oct 2023 10:18:35 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id A80AF4EE0742;
 Thu, 26 Oct 2023 10:18: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: 41be070b-73d8-11ee-9b0e-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>,
	Simone Ballarin <simone.ballarin@bugseng.com>,
	Doug Goldstein <cardoe@cardoe.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Julien Grall <julien@xen.org>,
	Wei Liu <wl@xen.org>
Subject: [XEN PATCH][for-4.19 v4] xen: Add deviations for MISRA C:2012 Rule 7.1
Date: Thu, 26 Oct 2023 10:18:30 +0200
Message-Id: <9bc37dc81744283ca3b92ce3ffad373740122288.1698308237.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

As specified in rules.rst, these constants can be used
in the code.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
---
Changes in v2:
- replace some SAF deviations with configurations
Changes in v3:
- refine configurations and justifications
Changes in v4:
- updated deviation record comment.
---
 automation/eclair_analysis/ECLAIR/deviations.ecl | 10 ++++++----
 docs/misra/deviations.rst                        |  7 +++++++
 docs/misra/safe.json                             |  8 ++++++++
 xen/arch/x86/hvm/svm/emulate.c                   |  6 +++---
 xen/common/inflate.c                             |  4 ++--
 5 files changed, 26 insertions(+), 9 deletions(-)

diff --git a/automation/eclair_analysis/ECLAIR/deviations.ecl b/automation/eclair_analysis/ECLAIR/deviations.ecl
index fa56e5c00a27..ea5e0eb1813f 100644
--- a/automation/eclair_analysis/ECLAIR/deviations.ecl
+++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
@@ -85,10 +85,12 @@ conform to the directive."
 # Series 7.
 #
 
--doc_begin="Usage of the following constants is safe, since they are given as-is
-in the inflate algorithm specification and there is therefore no risk of them
-being interpreted as decimal constants."
--config=MC3R1.R7.1,literals={safe, "^0(007|37|070|213|236|300|321|330|331|332|333|334|335|337|371)$"}
+-doc_begin="It is safe to use certain octal constants the way they are defined in
+specifications, manuals, and algorithm descriptions."
+-file_tag+={x86_svm_h, "^xen/arch/x86/hvm/svm/svm\\.h$"}
+-file_tag+={x86_emulate_c, "^xen/arch/x86/hvm/svm/emulate\\.c$"}
+-config=MC3R1.R7.1,reports+={safe, "any_area(any_loc(any_exp(file(x86_svm_h)&&macro(^INSTR_ENC$))))"}
+-config=MC3R1.R7.1,reports+={safe, "any_area(text(^.*octal-ok.*$)&&any_loc(any_exp(file(x86_emulate_c)&&macro(^MASK_EXTR$))))"}
 -doc_end
 
 -doc_begin="Violations in files that maintainers have asked to not modify in the
diff --git a/docs/misra/deviations.rst b/docs/misra/deviations.rst
index 8511a189253b..8aaaa1473fb4 100644
--- a/docs/misra/deviations.rst
+++ b/docs/misra/deviations.rst
@@ -90,6 +90,13 @@ Deviations related to MISRA C:2012 Rules:
          - __emulate_2op and __emulate_2op_nobyte
          - read_debugreg and write_debugreg
 
+   * - R7.1
+     - It is safe to use certain octal constants the way they are defined
+       in specifications, manuals, and algorithm descriptions. Such places
+       are marked safe with a /\* octal-ok \*/ in-code comment, or with a SAF
+       comment (see safe.json).
+     - Tagged as `safe` for ECLAIR.
+
    * - R7.2
      - Violations caused by __HYPERVISOR_VIRT_START are related to the
        particular use of it done in xen_mk_ulong.
diff --git a/docs/misra/safe.json b/docs/misra/safe.json
index 39c5c056c7d4..7ea47344ffcc 100644
--- a/docs/misra/safe.json
+++ b/docs/misra/safe.json
@@ -20,6 +20,14 @@
         },
         {
             "id": "SAF-2-safe",
+            "analyser": {
+                "eclair": "MC3R1.R7.1"
+            },
+            "name": "Rule 7.1: constants defined in specifications, manuals, and algorithm descriptions",
+            "text": "It is safe to use certain octal constants the way they are defined in specifications, manuals, and algorithm descriptions."
+        },
+        {
+            "id": "SAF-3-safe",
             "analyser": {},
             "name": "Sentinel",
             "text": "Next ID to be used"
diff --git a/xen/arch/x86/hvm/svm/emulate.c b/xen/arch/x86/hvm/svm/emulate.c
index aa2c61c433b3..93ac1d3435f9 100644
--- a/xen/arch/x86/hvm/svm/emulate.c
+++ b/xen/arch/x86/hvm/svm/emulate.c
@@ -90,9 +90,9 @@ unsigned int svm_get_insn_len(struct vcpu *v, unsigned int instr_enc)
         if ( !instr_modrm )
             return emul_len;
 
-        if ( modrm_mod       == MASK_EXTR(instr_modrm, 0300) &&
-             (modrm_reg & 7) == MASK_EXTR(instr_modrm, 0070) &&
-             (modrm_rm  & 7) == MASK_EXTR(instr_modrm, 0007) )
+        if ( modrm_mod       == MASK_EXTR(instr_modrm, 0300) && /* octal-ok */
+             (modrm_reg & 7) == MASK_EXTR(instr_modrm, 0070) && /* octal-ok */
+             (modrm_rm  & 7) == MASK_EXTR(instr_modrm, 0007) )  /* octal-ok */
             return emul_len;
     }
 
diff --git a/xen/common/inflate.c b/xen/common/inflate.c
index 8fa4b96d12a3..be6a9115187e 100644
--- a/xen/common/inflate.c
+++ b/xen/common/inflate.c
@@ -1201,8 +1201,8 @@ static int __init gunzip(void)
     magic[1] = NEXTBYTE();
     method   = NEXTBYTE();
 
-    if (magic[0] != 037 ||
-        ((magic[1] != 0213) && (magic[1] != 0236))) {
+    /* SAF-2-safe */
+    if (magic[0] != 037 || ((magic[1] != 0213) && (magic[1] != 0236))) {
         error("bad gzip magic numbers");
         return -1;
     }
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Thu Oct 26 08:27:14 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 08:27:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623580.971539 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvvhp-0008GA-9r; Thu, 26 Oct 2023 08:27:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623580.971539; Thu, 26 Oct 2023 08:27: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 1qvvhp-0008G3-7H; Thu, 26 Oct 2023 08:27:05 +0000
Received: by outflank-mailman (input) for mailman id 623580;
 Thu, 26 Oct 2023 08:27: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=vi0O=GI=redhat.com=kwolf@srs-se1.protection.inumbo.net>)
 id 1qvvho-0008Fx-3p
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 08:27: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 6fc038a7-73d9-11ee-98d5-6d05b1d4d9a1;
 Thu, 26 Oct 2023 10:27: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.3, cipher=TLS_AES_256_GCM_SHA384) id
 us-mta-440-AfOJAuHtP6SZAVeVp_QaGw-1; Thu, 26 Oct 2023 04:26:57 -0400
Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.rdu2.redhat.com
 [10.11.54.2])
 (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 mimecast-mx02.redhat.com (Postfix) with ESMTPS id E338F811E7D;
 Thu, 26 Oct 2023 08:26:56 +0000 (UTC)
Received: from redhat.com (dhcp-192-218.str.redhat.com [10.33.192.218])
 by smtp.corp.redhat.com (Postfix) with ESMTPS id 3E8EC40C6F79;
 Thu, 26 Oct 2023 08:26:54 +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: 6fc038a7-73d9-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
	s=mimecast20190719; t=1698308821;
	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=LiXFBc8YsDvBzhxHytTZjcWCexeiPcrWUoCrLdYurNk=;
	b=JaPXutnHEWDXTi11fTnEEt8dUGjVX28da1DoXJ81QXfGOj43Fk2sz1ZNrFYvO0WwyVWL23
	PngeTpqhopxITha9IvTxnpOiLYeT2wpgrN+DQbyPSF+AGHQ4wqd9T5yZOAOuC8olUfalhD
	SnhQGgEk5CB6H41Lj6E3kJXk1okGkMM=
X-MC-Unique: AfOJAuHtP6SZAVeVp_QaGw-1
Date: Thu, 26 Oct 2023 10:26:53 +0200
From: Kevin Wolf <kwolf@redhat.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: David Woodhouse <dwmw2@infradead.org>, Eric Blake <eblake@redhat.com>,
	qemu-devel@nongnu.org, Hanna Reitz <hreitz@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>,
	=?iso-8859-1?Q?Marc-Andr=E9?= Lureau <marcandre.lureau@redhat.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Richard Henderson <richard.henderson@linaro.org>,
	Eduardo Habkost <eduardo@habkost.net>,
	Jason Wang <jasowang@redhat.com>,
	Marcelo Tosatti <mtosatti@redhat.com>, qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org, kvm@vger.kernel.org,
	Bernhard Beschow <shentey@gmail.com>,
	Joel Upham <jupham125@gmail.com>
Subject: Re: [PATCH v3 28/28] docs: update Xen-on-KVM documentation
Message-ID: <ZToizYcPjO0Zt52N@redhat.com>
References: <20231025145042.627381-1-dwmw2@infradead.org>
 <20231025145042.627381-29-dwmw2@infradead.org>
 <6vbpkrebc7fpypbv2t7jbs7m3suxwbqqykeomzfxpenjj2sogd@rphcppcl4inl>
 <4a10a50e5469480a82cb993dedbff10c3d777082.camel@infradead.org>
 <21e8a265-bf5a-464c-86bc-f0fd7b5eb108@citrix.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=iso-8859-1
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <21e8a265-bf5a-464c-86bc-f0fd7b5eb108@citrix.com>
X-Scanned-By: MIMEDefang 3.4.1 on 10.11.54.2

Am 25.10.2023 um 20:56 hat Andrew Cooper geschrieben:
> On 25/10/2023 7:26 pm, David Woodhouse wrote:
> > On Wed, 2023-10-25 at 13:20 -0500, Eric Blake wrote:
> >> On Wed, Oct 25, 2023 at 03:50:42PM +0100, David Woodhouse wrote:
> >>> +
> >>> +Booting Xen PV guests
> >>> +---------------------
> >>> +
> >>> +Booting PV guest kernels is possible by using the Xen PV shim (a version of Xen
> >>> +itself, designed to run inside a Xen HVM guest and provide memory management
> >>> +services for one guest alone).
> >>> +
> >>> +The Xen binary is provided as the ``-kernel`` and the guest kernel itself (or
> >>> +PV Grub image) as the ``-initrd`` image, which actually just means the first
> >>> +multiboot "module". For example:
> >>> +
> >>> +.. parsed-literal::
> >>> +
> >>> + |qemu_system| --accel kvm,xen-version=0x40011,kernel-irqchip=split \\
> >>> + -chardev stdio,id=char0 -device xen-console,chardev=char0 \\
> >>> + -display none -m 1G -kernel xen -initrd bzImage \\
> >>> + -append "pv-shim console=xen,pv -- console=hvc0 root=/dev/xvda1" \\
> >>> + -drive file=${GUEST_IMAGE},if=xen
> >> Is the space between -- and console= intentionsl?
> > Yes, that one is correct. The -- is how you separate Xen's command line
> > (on the left) from the guest kernel command line (on the right).
> 
> To expand on this a bit.
> 
> Multiboot1 supports multiple modules but only a single command line. As
> one of the modules passed to Xen is the dom0 kernel, we need some way to
> pass it's command line, hence the " -- ".

That's not right, even Multiboot 1 contains a 'string' field in the
module structure that is defined to typically hold a command line. The
exact meaning is OS dependent, so Xen could use it however it wants.

In QEMU (and I believe this is the same behaviour as in GRUB),
everything before the space in an -initrd argument is treated as a
filename to load, everything after it is just passed as the command
line.

So it would have been entirely possible to use -initrd 'bzImage
console=hvc0 root=/dev/xvda1' if Xen worked like that.

> Multiboot2 and PVH support a command line per module, which is the
> preferred way to pass the commandlines, given a choice.

Multiboot 2 seems to integrate the string in a variable length module
structure instead of just having a pointer in a fixed length one, but
the model behind it is essentially the same as before.

Kevin



From xen-devel-bounces@lists.xenproject.org Thu Oct 26 08:34:36 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 08:34:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623584.971550 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvvp1-0001Xe-0s; Thu, 26 Oct 2023 08:34:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623584.971550; Thu, 26 Oct 2023 08:34: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 1qvvp0-0001XX-UL; Thu, 26 Oct 2023 08:34:30 +0000
Received: by outflank-mailman (input) for mailman id 623584;
 Thu, 26 Oct 2023 08:34: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=jm+b=GI=amd.com=Xenia.Ragiadakou@srs-se1.protection.inumbo.net>)
 id 1qvvp0-0001XR-1M
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 08:34:30 +0000
Received: from NAM02-DM3-obe.outbound.protection.outlook.com
 (mail-dm3nam02on2060d.outbound.protection.outlook.com
 [2a01:111:f400:7e83::60d])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 79661572-73da-11ee-98d5-6d05b1d4d9a1;
 Thu, 26 Oct 2023 10:34:28 +0200 (CEST)
Received: from DM5PR07CA0096.namprd07.prod.outlook.com (2603:10b6:4:ae::25) by
 SA1PR12MB6678.namprd12.prod.outlook.com (2603:10b6:806:251::12) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.34; Thu, 26 Oct
 2023 08:34:24 +0000
Received: from DS1PEPF00017095.namprd03.prod.outlook.com
 (2603:10b6:4:ae:cafe::e0) by DM5PR07CA0096.outlook.office365.com
 (2603:10b6:4:ae::25) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.19 via Frontend
 Transport; Thu, 26 Oct 2023 08:34:24 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 DS1PEPF00017095.mail.protection.outlook.com (10.167.17.138) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6933.15 via Frontend Transport; Thu, 26 Oct 2023 08:34:24 +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.32; Thu, 26 Oct
 2023 03:34: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: 79661572-73da-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=gM7cf9NXG7Y5v8qD59PnWl+YFYm54/N1lFYpPlAOo+ez08eEDad6ubilykmWN2yuIQ9AVvrUygkA3KXqTaOWd0MINrUkpF24gPSTUsVbag2ZrsUwOPfvPBhS4UEW6NGbMlfWQpUXyIvNWfDObCYAVEwjk/i1a8qulCTQfYZuwlKW0/Bt8U8XBQ6Gzy5lxCUmzjjHRgM1OF6GlH8x6ium5dyJtH0H4TrcPIK/1kVpb2/GPy5ns1ppweLdPhlAyV6YVmxXhxN+/EzOznznRaO3kR/ef6D3aQJK0vGZYkxqAn2a6EfrDLSCN0YV7UcQdaqEXsg661RJEHquCTXXApIZTw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=gGB5Xy0JiVpg5CUd5pEyPzgFuIy7KaBKFTWQ5Lox5nk=;
 b=FMMtJVhtArFLEvCYoYeuggevkZJa/EKZ/arU1UI+LE4eY7ZKnZB7qj+lN9hsN0UNPt0CwWb9tlBPJ5689TKy4xRPT8w8aQFZlNp6njtOrlfhsgRVUknfZsiJgldpB9+rP+ZRLYn4ZJaBMJM6p99A1P6lBsWNznVsiSJNxWZVikR76mwUPFNAy8gn4xhapSidiPbg+EVwXO/1TUWDx+5BQF4YmggxmgOvA8Dp5J1yITItJIl01hEUd8CaCX2MXaJozfpwTXtnHFCg+SxcWhRNtPkR8Pi3Yr93ZXYGf+9/qiQuDIzILWwP4f6a+dmXTn94gxLiyVdmXFd87PUyo+C9bA==
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 (0)
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=gGB5Xy0JiVpg5CUd5pEyPzgFuIy7KaBKFTWQ5Lox5nk=;
 b=vMbKaC3qud03DV1R4Dzl1ni6TabkK9WUSaDc3gVdkmdcsawm//UOJ/B2h634TrOlW1WBwgJzNcEZeV7wJfiLjDG9OVPRbwcLb0GfAF1QABdEt1O0NQh3TQAKuQXGJf6jgyrh0GJe1nM7ulUt8wgs3SLDoSnXGaa/hVGhxiS8D8o=
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
Content-Type: multipart/alternative;
	boundary="------------MW6eaoWyfdtKOVnw0KOQSJjC"
Message-ID: <7712c60b-4f89-483e-89e4-7ac8f4d0311e@amd.com>
Date: Thu, 26 Oct 2023 11:34:03 +0300
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH] x86/hvm/dom0: fix PVH initrd and metadata placement
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>, <xen-devel@lists.xenproject.org>
References: <20231026064543.43369-1-xenia.ragiadakou@amd.com>
 <ac7e9bac-6d74-a5bf-d703-3c5455e581ea@suse.com>
Content-Language: en-US
From: Xenia Ragiadakou <xenia.ragiadakou@amd.com>
In-Reply-To: <ac7e9bac-6d74-a5bf-d703-3c5455e581ea@suse.com>
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: DS1PEPF00017095:EE_|SA1PR12MB6678:EE_
X-MS-Office365-Filtering-Correlation-Id: fad24fa6-974f-463a-b50a-08dbd5fe5c1d
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	d8sAGbTZ32t8WtQbn5kHBkPqZFMFNC9MEuKM5pR88Q/Ky/JcfLRfTsDfxN4HXZ3sum1Y5cQidFqGYojX2CsEvIUKsDAwP1Y4MKeXInvo30BZcPuHI7/Kg5Oq/py38bBAW4EFN0JRA1cRGJCbnslPZDbaOyQ3QZ5O7YlPKyqUYTCGNu7JROr63tLHGAPFEseLaUTBVvBzCFF1jNihvilRC0JHgs87cgnUUYVJUxUeUi1hbkPrubZ5cPVq4A538cuYcT7pyTSPMAZYhUqgpJMPGxUdGHNUgAaCVcH48sTn7nN+660lITTwq0ffg38Fih2s5mJmFcwbmXjF8FSZEbf1tHgWMp7h0usGffon3JJEEPAlbq2NOUY6aMdOkUyVyurO118qUnSy9XXjUCZNx3rr3eHQ3GxSTYT1lLDHaCZ/e7mNS3BNWi4RoP52PucLVUGaHwFSH/7hcnvZxQJtjDyPLhEiMpSEaVw2YT1qeIm3j2Kh98pviI9bBLcmU/VljYRN8T0+vviYXDG//pUOxFRExYkcpBcB76uHoTOK3GaL3CS0bjiei5EYiP9KEtya2ay2kdmysgBbnbcqfVMZOM6dO3D0BO1+QjCfhwh4U2VgoiK9ma2phfxXGVO2AYQSdAslwRnXYfKSSS0RREPbEEa12+tA4icECuPNIHPpXIo+EE8tK/LmJ3Owike7CMLXgDahGowgSWGXqi4HKd+RvIfqFjbRECFa7JxGbe3HdVth7M3rbZ9GePdqzQFbRV1mkADcc2u8PoVHYtnL40EuIIM7CNLDgLvdtac9dnS5PSH5qJxMxln69GzDlGJfjcvxl1YE
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)(39860400002)(396003)(376002)(230922051799003)(82310400011)(186009)(1800799009)(64100799003)(451199024)(36840700001)(46966006)(40470700004)(36756003)(40480700001)(16576012)(40460700003)(70586007)(70206006)(83380400001)(53546011)(16526019)(356005)(6666004)(86362001)(81166007)(2616005)(31696002)(36860700001)(426003)(47076005)(82740400003)(316002)(6916009)(54906003)(478600001)(33964004)(44832011)(41300700001)(5660300002)(336012)(2906002)(31686004)(66899024)(26005)(8936002)(4326008)(8676002)(36900700001)(43740500002);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Oct 2023 08:34:24.6136
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: fad24fa6-974f-463a-b50a-08dbd5fe5c1d
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:
	DS1PEPF00017095.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA1PR12MB6678

--------------MW6eaoWyfdtKOVnw0KOQSJjC
Content-Type: text/plain; charset="UTF-8"; format=flowed
Content-Transfer-Encoding: 7bit


On 26/10/23 10:35, Jan Beulich wrote:
> On 26.10.2023 08:45, Xenia Ragiadakou wrote:
>> Given that start < kernel_end and end > kernel_start, the logic that
>> determines the best placement for dom0 initrd and metadata, does not
>> take into account the two cases below:
>> (1) start > kernel_start && end > kernel_end
>> (2) start < kernel_start && end < kernel_end
>>
>> In case (1), the evaluation will result in end = kernel_start
>> i.e. end < start, and will load initrd in the middle of the kernel.
>> In case (2), the evaluation will result in start = kernel_end
>> i.e. end < start, and will load initrd at kernel_end, that is out
>> of the memory region under evaluation.
> I agree there is a problem if the kernel range overlaps but is not fully
> contained in the E820 range under inspection. I'd like to ask though
> under what conditions that can happen, as it seems suspicious for the
> kernel range to span multiple E820 ranges.

We tried to boot Zephyr as pvh dom0 and its load address was under 1MB.

I know ... that maybe shouldn't have been permitted at all, but 
nevertheless we hit this issue.

>> This patch rephrases the if condition to include the above two cases
>> without affecting the behaviour for the case where
>> start < kernel_start && end > kernel_end
>>
>> Fixes: 73b47eea2104 ('x86/dom0: improve PVH initrd and metadata placement')
>> Signed-off-by: Xenia Ragiadakou<xenia.ragiadakou@amd.com>
>> ---
>>   xen/arch/x86/hvm/dom0_build.c | 2 +-
>>   1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/xen/arch/x86/hvm/dom0_build.c b/xen/arch/x86/hvm/dom0_build.c
>> index c7d47d0d4c..5fc2c12f3a 100644
>> --- a/xen/arch/x86/hvm/dom0_build.c
>> +++ b/xen/arch/x86/hvm/dom0_build.c
>> @@ -518,7 +518,7 @@ static paddr_t __init find_memory(
>>           if ( end <= kernel_start || start >= kernel_end )
>>               ; /* No overlap, nothing to do. */
>>           /* Deal with the kernel already being loaded in the region. */
>> -        else if ( kernel_start - start > end - kernel_end )
>> +        else if ( kernel_start + kernel_end > start + end )
> What meaning has the sum of the start and end of either range? I can't
> figure how comparing those two values will be generally correct / useful.
> If the partial-overlap case needs handling in the first place, I think
> new conditionals need adding (and the existing one needs constraining to
> "kernel range fully contained") to use
> - as before, the larger of the non-overlapping ranges at start and end
>    if the kernel range is fully contained,
> - the tail of the range when the overlap is at the start,
> - the head of the range when the overlap is at the end.

Yes it is not quite straight forward to understand and is based on the
assumption that end > kernel_start and start < kernel_end, due to
the first condition failing.

Both cases:
(start < kernel_start && end < kernel_end) and
(kernel_start - start > end - kernel_end)
fall into the condition ( kernel_start + kernel_end > start + end )

And both the cases:
(start > kernel_start && end > kernel_end) and
(end - kernel_end > kernel_start - start)
fall into the condition ( kernel_start + kernel_end < start + end )

... unless of course I miss a case

> That said, in the "kernel range fully contained" case it may want
> considering to use the tail range if it is large enough, rather than
> the larger of the two ranges. In fact when switching to that model, we
> ought to be able to get away with one less conditional, as then the
> "kernel range fully contained" case doesn't need treating specially.
>
> Jan
--------------MW6eaoWyfdtKOVnw0KOQSJjC
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>
    <p><br>
    </p>
    <div class="moz-cite-prefix">On 26/10/23 10:35, Jan Beulich wrote:<br>
    </div>
    <blockquote type="cite"
      cite="mid:ac7e9bac-6d74-a5bf-d703-3c5455e581ea@suse.com">
      <pre class="moz-quote-pre" wrap="">On 26.10.2023 08:45, Xenia Ragiadakou wrote:
</pre>
      <blockquote type="cite">
        <pre class="moz-quote-pre" wrap="">Given that start &lt; kernel_end and end &gt; kernel_start, the logic that
determines the best placement for dom0 initrd and metadata, does not
take into account the two cases below:
(1) start &gt; kernel_start &amp;&amp; end &gt; kernel_end
(2) start &lt; kernel_start &amp;&amp; end &lt; kernel_end

In case (1), the evaluation will result in end = kernel_start
i.e. end &lt; start, and will load initrd in the middle of the kernel.
In case (2), the evaluation will result in start = kernel_end
i.e. end &lt; start, and will load initrd at kernel_end, that is out
of the memory region under evaluation.
</pre>
      </blockquote>
      <pre class="moz-quote-pre" wrap="">
I agree there is a problem if the kernel range overlaps but is not fully
contained in the E820 range under inspection. I'd like to ask though
under what conditions that can happen, as it seems suspicious for the
kernel range to span multiple E820 ranges.</pre>
    </blockquote>
    <p>We tried to boot Zephyr as pvh dom0 and its load address was
      under 1MB.<br>
    </p>
    <p><span style="white-space: pre-wrap">I know ... that maybe shouldn't have been permitted at all, but nevertheless
we hit this issue.
</span></p>
    <span style="white-space: pre-wrap">
</span>
    <blockquote type="cite"
      cite="mid:ac7e9bac-6d74-a5bf-d703-3c5455e581ea@suse.com">
      <blockquote type="cite">
        <pre class="moz-quote-pre" wrap="">This patch rephrases the if condition to include the above two cases
without affecting the behaviour for the case where
start &lt; kernel_start &amp;&amp; end &gt; kernel_end

Fixes: 73b47eea2104 ('x86/dom0: improve PVH initrd and metadata placement')
Signed-off-by: Xenia Ragiadakou <a class="moz-txt-link-rfc2396E" href="mailto:xenia.ragiadakou@amd.com">&lt;xenia.ragiadakou@amd.com&gt;</a>
---
 xen/arch/x86/hvm/dom0_build.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/xen/arch/x86/hvm/dom0_build.c b/xen/arch/x86/hvm/dom0_build.c
index c7d47d0d4c..5fc2c12f3a 100644
--- a/xen/arch/x86/hvm/dom0_build.c
+++ b/xen/arch/x86/hvm/dom0_build.c
@@ -518,7 +518,7 @@ static paddr_t __init find_memory(
         if ( end &lt;= kernel_start || start &gt;= kernel_end )
             ; /* No overlap, nothing to do. */
         /* Deal with the kernel already being loaded in the region. */
-        else if ( kernel_start - start &gt; end - kernel_end )
+        else if ( kernel_start + kernel_end &gt; start + end )
</pre>
      </blockquote>
      <pre class="moz-quote-pre" wrap="">
What meaning has the sum of the start and end of either range? I can't
figure how comparing those two values will be generally correct / useful.
If the partial-overlap case needs handling in the first place, I think
new conditionals need adding (and the existing one needs constraining to
"kernel range fully contained") to use
- as before, the larger of the non-overlapping ranges at start and end
  if the kernel range is fully contained,
- the tail of the range when the overlap is at the start,
- the head of the range when the overlap is at the end.</pre>
    </blockquote>
    <p>Yes it is not quite straight forward to understand and is based
      on the<br>
      assumption that end &gt; kernel_start and start &lt; kernel_end,
      due to<br>
      the first condition failing.<br>
    </p>
    <p>Both cases:<br>
      (start &lt; kernel_start &amp;&amp; end &lt; kernel_end) and<br>
      (kernel_start - start &gt; end - kernel_end)<br>
      fall into the condition ( kernel_start + kernel_end &gt; start +
      end )<br>
    </p>
    <p>And both the cases:<br>
      (start &gt; kernel_start &amp;&amp; end &gt; kernel_end) and<br>
      (end - kernel_end &gt; kernel_start - start)<br>
      fall into the condition ( kernel_start + kernel_end &lt; start +
      end )</p>
    <p><span style="white-space: pre-wrap">... unless of course I miss a case 
</span><span style="white-space: pre-wrap">
</span></p>
    <blockquote type="cite"
      cite="mid:ac7e9bac-6d74-a5bf-d703-3c5455e581ea@suse.com">
      <pre class="moz-quote-pre" wrap="">That said, in the "kernel range fully contained" case it may want
considering to use the tail range if it is large enough, rather than
the larger of the two ranges. In fact when switching to that model, we
ought to be able to get away with one less conditional, as then the
"kernel range fully contained" case doesn't need treating specially.

Jan
</pre>
    </blockquote>
  </body>
</html>

--------------MW6eaoWyfdtKOVnw0KOQSJjC--


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 08:35:19 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 08:35:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623586.971559 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvvpn-0002J8-9x; Thu, 26 Oct 2023 08:35:19 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623586.971559; Thu, 26 Oct 2023 08: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 1qvvpn-0002J1-7M; Thu, 26 Oct 2023 08:35:19 +0000
Received: by outflank-mailman (input) for mailman id 623586;
 Thu, 26 Oct 2023 08:35: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=Iwvv=GI=citrix.com=prvs=656fec104=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qvvpm-0002Ir-Al
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 08:35:18 +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 957b7d17-73da-11ee-9b0e-b553b5be7939;
 Thu, 26 Oct 2023 10:35:15 +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;
 26 Oct 2023 04:35:04 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by PH7PR03MB6861.namprd03.prod.outlook.com (2603:10b6:510:15e::21)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.11; Thu, 26 Oct
 2023 08:35:00 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::acf0:ce2b:1634:5aee]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::acf0:ce2b:1634:5aee%6]) with mapi id 15.20.6933.011; Thu, 26 Oct 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: 957b7d17-73da-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1698309315;
  h=date:from:to:cc:subject:message-id:references:
   in-reply-to:mime-version;
  bh=3phdeXiAJ6AAHPlM5qYPmNM9r6GQ2LDYGU9ek1Iy4jE=;
  b=GxGkAwivaZJbtmGrTfkj1R5b3Ylsb8XgfpudCNUsTpnqYF10aYtzz4qv
   PNhc4iAlfhFZcUX5HfLiGaZtuR0Z04Mlan8FIt5HbytXtc1D9TsbfwXww
   QOkQvVv6qSjuQmj/xm7iiCDs7aTeJ3XdqHso+57BWXN3mxaNUu9RBNYGP
   c=;
X-CSE-ConnectionGUID: vIMJivq3Qw+AW6JNEKRPbA==
X-CSE-MsgGUID: Xfko9Dm0SXC40Y/eM8lzxw==
X-IronPort-RemoteIP: 104.47.57.169
X-IronPort-MID: 129486066
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:XmuglKy231xJ465mdQl6t+cRxyrEfRIJ4+MujC+fZmUNrF6WrkUBx
 jRKXWvXPvyJZzGgf492aYXi/U8OuZKHztZkTlNlqyAxQypGp/SeCIXCJC8cHc8wwu7rFxs7s
 ppEOrEsCOhuExcwcz/0auCJQUFUjPzOHvykTrecZkidfCc8IA85kxVvhuUltYBhhNm9Emult
 Mj75sbSIzdJ4RYtWo4vw/zF8EgHUMja4mtC5QVmP64T5TcyqlFOZH4hDfDpR5fHatE88t6SH
 47r0Ly/92XFyBYhYvvNfmHTKxBirhb6ZGBiu1IOM0SQqkEqSh8ai87XAME0e0ZP4whlqvgqo
 Dl7WT5cfi9yVkHEsLx1vxC1iEiSN4UekFPMCSDXXcB+UyQq2pYjqhljJBheAGEWxgp4KX9v0
 N4ZNilWVw/Art3o4pSWadNUjO12eaEHPKtH0p1h5RfwKK9/BLzmHeDN79Ie2yosjMdTG/qYf
 9AedTdkcBXHZVtIJ0sTD5U92uyvgxETcRUB8A7T+fVxvjeVlVIguFTuGIO9ltiiX8Jak1zev
 mvb12/4HgsbJJqUzj/tHneE37WewXOlANxMfFG+3s5kg1rC6mlLMy09CQOK5vSc2kqsS80Kf
 iT4/QJr98De7neDTNPwQhm5q36spQMHVpxbFOhSwBGAzO/Y7hiUAkAATyVdc5o2uckuXzso2
 1SV2dTzClRHr7m9WX+bsLCOoluP1TM9KGYDYWoISFUD6ty6+YUr1EuRH5BkDbK/icDzFXfo2
 TeWoSMihrIVy8kWy6G8+lOBiDWpznTUcjMICszsdjrNxmtEiESNPuRENXCzAS58Ebuk
IronPort-HdrOrdr: A9a23:sMYpKKo09lLs9zXF5PHy+eEaV5rveYIsimQD101hICG9Evb0qy
 nOpoV/6faQslwssR4b9uxoVJPvfZq+z+8W3WByB9eftWDd0QPFEGgL1+DfKlbbak7DH4BmtJ
 uJc8JFeafN5VoRt7eG3OFveexQvOVu88qT9JjjJ28Gd3APV0n5hT0JcjpyFCdNNW57LKt8Lr
 WwzOxdqQGtfHwGB/7LfUXsD4D41rv2fIuNW29+OyIa
X-Talos-CUID: =?us-ascii?q?9a23=3AbJVVoGgXlUDILj3NdzjydZmo1zJubFz47nbOOhS?=
 =?us-ascii?q?BFiVAd+O3b3Kzwptuup87?=
X-Talos-MUID: 9a23:gV1p8gZAG783kOBThzHvg2BOMZ9T04/yUHFKnLBWv9uUKnkl
X-IronPort-AV: E=Sophos;i="6.03,253,1694750400"; 
   d="scan'208";a="129486066"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=eaXY9ES/y00AkJ52vUBoe0U8ATn+H5PrK9ht3SaBSTT6ZLF8SL7JUHUe71ZfkMumIySMU+WKSSME51wG3ex3KPU0RdA61RARkvg+/1CPnYsvEULY5dOi3WLsC8r9aPHKIqcz1HUVoLz0Jels5BpD0Ch+X2KaMiTblIwMU4QsS21k6iPHtENofL2jSxywo9O877vlhEhZYaKK6Ne/tcWolfFBy02cjQKHdVVypo/VZq9zw+TDVl3rRqlFQI80y7Abj4GmAswKvLSeFAr9hj6++zwXr+qWaOf1LhERUbVRq8qisLpTFLpz9k7guwRh2asqJfPoTvFuWvdhU2g83eWJ9g==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=+KEtr1uQSl4gc7Rcv3Qw2AlIEg5hI2vh1pQO39tsbxs=;
 b=GI7WM7xfNEIEMF+CcxKV3cSGmEPuAJW2bu2f1gb+3EDPyrSLPrVFSlNxyGNGrKzYVKMumHSdTDYxLwVnIAMLOSNvAnm4DLbkhsHga5PXehCXM03iIgwtIBpvxuVH9OslmrYNXteGbg6/q9JSQ4Jp//lsmW2BLpS5XIMhSzCpepFIHIEZPWjWa7ZtzPXzfay0UdBvCP6vqjH/l37I3fFrPAAA3xOCggEsETjAFp3iJk1nsiKG/rBwCL4BJbGq8P6o6Y3bqP1Vy3cP2jGWsYAIhgy4Z724gx2Kj6a6s4mpGSSL4NKST8tHvfaigdn58ddkdQQTYH8wHugA6hw/4npMdg==
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=+KEtr1uQSl4gc7Rcv3Qw2AlIEg5hI2vh1pQO39tsbxs=;
 b=jy40cQTGN9BsfT7A4FjOHnABxQaLi0r32Zi26dUBZP+9QFFJfIwtykOS+KJ2FuC1j6A9Ejcz+2B7fc2lbNFujbkg4/ILNzL/8ceaDnWpg6QfElwPXWLcUEZWfqbxfBIUByCj0BG72mUhwfu9Ry2IX27SpFjBR2hna95gFHL0c1M=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Thu, 26 Oct 2023 10:34:56 +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>, Wei Liu <wl@xen.org>
Subject: Re: [PATCH 4/7] x86: detect PIC aliasing on ports other than
 0x[2A][01]
Message-ID: <ZToksEP1Fg8MscdK@macbook>
References: <95129c04-f37c-9e26-e65d-786a1db2f003@suse.com>
 <27dd8f40-1ea6-1e7e-49c2-31936a17e9d7@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <27dd8f40-1ea6-1e7e-49c2-31936a17e9d7@suse.com>
X-ClientProxiedBy: LO0P123CA0006.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:354::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_|PH7PR03MB6861:EE_
X-MS-Office365-Filtering-Correlation-Id: 16ad3e80-cc4c-4692-adb6-08dbd5fe70f0
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:
	cxlbDmbYFL1l5KvEBEwsrmGw5ZjZu0MhebX5qTwBehoIU0b16u+7WKG8BBNFycZIYt3BCBFuBaRVj0374wkdhX2nqN5cTMbQ1AbUyTa++l7NtzqXRomeO8paQaRGTF5zcOYkl7D0YvZTDKinZt4rX5J6/eLfQwZJnzhBSpuYYHNfg3moAX6w8FinXP+G0A2vmg1Of+5yM+fLdPjDs/XcFJXofV3q8V4CjmSZAt+UZHoYsTyAORloh0TQO99+F3xyNjv9frR3iwlAzhpmBzV2tC8Tfr1IYKoKyG6lGbathYYehRR8jMufUeBQRp5oMDLFV8z8JA7XwrBegOdrFai98+WUvFElq8ybqFN8130vL+A77FE8HhEKORZVUP54DX85wp3N95fieJczsjTT2g3Qb8TNwECANr/AxZud9LAV/XCTRWhzf9tYVoBlTXRIgHrPsi1uePM7/oUAoYlzPIBtegxwH/cVLaIKgZVaVcCVediLaA5I5I4xxnjN2Yd7hesfW49SwnLFLbhoP/ohpJ2aegBN9NwyqgnHsiEEopzdjOoDTT1BGhpJ2B/NwUKlIKaB
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)(8936002)(8676002)(41300700001)(4326008)(2906002)(33716001)(5660300002)(9686003)(85182001)(82960400001)(6666004)(6512007)(6506007)(83380400001)(38100700002)(66946007)(86362001)(66556008)(26005)(6916009)(6486002)(478600001)(66476007)(54906003)(316002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?ay9kdEdzZFh3a3JUb3ZzYW1xQzM0cjVRMXlZcHB2R2szNklGWThvT01EUE9n?=
 =?utf-8?B?dlc5d3JiVEV4Z3o5UU8wVTJZd0pIWjZMQkpuUDZ1dW1pNzVFSU56R2NnZUFS?=
 =?utf-8?B?QUJGWGNIUmMrOWcyS0dOMGpNRHdqWXN2MGFXUTE3SlM2a0xMK094cXpiMFBn?=
 =?utf-8?B?Yk1tOFMrSUVtcUhtWnB5T1Vhbjl3Q3lKS1dqbklIREdmN20zKzZ5Q0RVVUZh?=
 =?utf-8?B?QU4zQVAxbUhkblFrRXBoQ0ltNlVGbENLejRJZVdCWkFINjZJN3cwTzl2Y3hN?=
 =?utf-8?B?Nk1Ob04xWHROUDJjYXAzQXpBK0VCNi9MWmFvZDltUTJDdDhWQ3UzL0VIeTdt?=
 =?utf-8?B?bTFBOEZLVGdHTVJwR2ZXL2lCT1kxRUhlMEhKNEF3cWhIRHp1MVdTMXdpZUhB?=
 =?utf-8?B?cFhtd2dFZk5LeHlPZ1FPc0J2SGEvVlk5eXZFdUNLdFVUbkpLT3BUem01bGgr?=
 =?utf-8?B?YkhQNDkvZGd0SUVOWTJtMW1RcmQxMHdTSHdlK1dWQzZhaXp2QmUvNWtWa1Z1?=
 =?utf-8?B?SHRtczhoMDlKWFlCd09BeG9RWVVYV2w5Rm9nMWRlRlpJS2MwSGNoN2xDUmlr?=
 =?utf-8?B?eVY2NUgvS0RDb09uRm0zOGJ4eVlMWkJuajd0bGdvMjZuL1N2Sis4MHNZY20z?=
 =?utf-8?B?V3RReVIwZkFWU3hzcVd4ZHEyNXdCR2VkcE5NMUtjWXBVUGJYNVpIZWZMcmg0?=
 =?utf-8?B?SW1XM0diSnhRSHpXUEkyWE9kempEU2hSbFJwWTBxd2dFWmJiZFhUcDZMbGxX?=
 =?utf-8?B?OHJXbDhoY1M4anZBU0tRODJEbVBudjJ5TjJYZTh3U25veWd6UWFNWnZSQjlX?=
 =?utf-8?B?WVhjYzBHZzkrNDB5L3AxZ0FZeVFPeWdiaEN5MGViNlRsdlBSa1BxUTM0Smls?=
 =?utf-8?B?bUJUR1FiNE1XckpiWkpQOGFoSHhCdnMwd3UzanpJUlVBZGp5b29zajBDK0Mr?=
 =?utf-8?B?VEZ5a1JQRVRIZk5kWFJYTHQwcy9iUWV2eXZ1cWtLcWRQQVFoUjRQdERzOXFo?=
 =?utf-8?B?bi81MFVlNS9Vai9iY3I0Q3JGclRwWTBvZTVKOGhtcTNFYVgwVVQ1VVdPY041?=
 =?utf-8?B?TnZxTk5kdCtXWlE3TU1PRTdrOXRlL29BRHhRRFo4UjlyZzNMVHZmNS9KaHJq?=
 =?utf-8?B?U3lHTmhXRFZQb1Q1TWcydW50Sm85TXlCcEY3djd0MU05bitaVmZuYVZzSDBM?=
 =?utf-8?B?eE9nWmk2aHA2amZVSUNDWmFSc2V4WVphSUhGSFE2L3FHRFc0eThEY2NFM2dK?=
 =?utf-8?B?cWNvdDk0T2hmYmFEYUcweHdnUitIRnR6TklacHZrNWtDQVFjNFlOV2lIRFpi?=
 =?utf-8?B?NEFMZll0aVRzL2pFanQ0YXdCRnhPMy9LY2dnVUYydjZYanIwRk5RekZkWkVn?=
 =?utf-8?B?WTh0dTlBOU5KcG5GazRLdkRqd09RTWU4cDc1MjEwdUw3VC83ZHFqYnQrZHZB?=
 =?utf-8?B?WkFxTTZCa2V3Wmk0NXBERGx5SmhkL3l6SDZVZ3pqWSswRy9TczNuMnN4eklz?=
 =?utf-8?B?MTQxaWNJOHpZMlZQbEZZeU5MZTlPci9DUUl2TjBVQWoyOEhXbW80d0laTnU0?=
 =?utf-8?B?djBQMVVRZ0tRZEZxYi9Zazhud1hJcXI2RzUxVEdwZEpRRFpXVGJRSzJnNklL?=
 =?utf-8?B?dzQ4bmZJNFg5UXFRVVRaZWs0dmR6bHJjSGdkVGZkS0IyZHdHeWxHa0xNQVFK?=
 =?utf-8?B?dDBLTDQyVkpLL1AwRVQwT1JtblFHOTVHUzRVMW9pc3laSGVYUE9hWmczQy9Q?=
 =?utf-8?B?citmME8rVU9BeXd2NzNlbUNrZmp1cWRKNFBLQmt2czMvL21UR20vSDY0Qlcz?=
 =?utf-8?B?S3YwaVEwY2RBcUJJQ056R2FxQzdtSzd6dzVUeUhUakJDMzZVRU9Hdkd6d1hD?=
 =?utf-8?B?ekNmVVZzNGt0TFlQRTlPNU4reVdVK0JuNFowWEVmRzlaaS83ckJkK2Y2WmxV?=
 =?utf-8?B?cVFnVFNUdUp4Q1FUSnBWaW80S2o0bXkxbFEyaWlKdk5ONUtFcHNjRzQzVFFi?=
 =?utf-8?B?dlV3OFFkK3pFNCtEZG1zbFI1VXBuWnM4SFVjQ29MamdROEtHeE83em5oZks3?=
 =?utf-8?B?K0RSN0ovYTJmSldjeEQ1UHBQYmV5N214SGpxSldQQ0VLQ0IxZ2NkeVd0bWRS?=
 =?utf-8?Q?FdibISUbx9ychHop9f7V/JZTW?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	ylQ0PWYLm4J4nI7pxaEgjt12yBn5+JwlxMQih/w/y+kZ04Em605YmabHbZDFcq+lEYQZ2wMShov+L0zwY7FZ5b6aFF5R30KJGuRMJUjfZbnieBjlmk85ilUcIV+pmMRpoqYpM0x09GPrqEx8xwsoq73pM05rmZVkl3GsMdmzwkFCRpd+s/jjf1dXz3hrCPB79HvewCK6G+T4qUfz5zIs1nswgRCX19CoF4h6VP4eER2XhMkrXt03cvmtASVoIkdDd/DOPpQaaKYSfYIzF/uIznAQFg0363CHN9nKx8CA6kfSHQ5OjzRZuj7dkg2l8U0b6CpYGpRfY43qeD7jxHYZzI+PXsyff0QDJvaBnnppYS59xFiSwT64iygyfVq4KL+HaOwHo8/gfnQ3WOHwAqKcdD7hteO8z6oM4ITFaldlvkDtImqOFpnOTAvtO4FZp6rmdapgZ/mVm4k4V54Hs/kkEdn4EhgR8oW3SkOqviLE6m9ixlfFed9rS3J1fgBoZm71Mcx3kGrJqzhDvPkhgJwl5F1U10k1AC6NIgmPZ7YvD/RBeFgj6oKyTFda1OQFYfCN/9kKlJyTzQZOMS9Ov74kEQvQISIgz1VP8bEOAQp7+QeIU58T9ZSOf+LlYm6Nbl6atUUQ9sZyHaZI6JMukreG3+hW/VJjjKEP/uon1pi0S45SJUG7ikXxIDxPevsPzYnNkRupTucRq4drjxpa+0XKZ4DabPVUIj8rDDWgcIQ2sLsBQ2YN45M7D9JLqcaRWp3+IsM/B62ypcjcKbci8NVxmhUpf9YHYmAMEpt2kjdlB6VKBUaRGP1ww9FiQKg8wYVEqwGW84fL8UVh2z5xCZTElg==
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 16ad3e80-cc4c-4692-adb6-08dbd5fe70f0
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Oct 2023 08:34:59.8910
 (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: eUCIM4LT+o3HCniK0F1KnFwHjXiGq7hWcWfRs+nH2DTALpfRO8YlWxwOW63p1t5GKndfsQp8wgwPRrYWhE/UtA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7PR03MB6861

On Thu, May 11, 2023 at 02:06:46PM +0200, Jan Beulich wrote:
> ... in order to also deny Dom0 access through the alias ports. Without
> this it is only giving the impression of denying access to both PICs.
> Unlike for CMOS/RTC, do detection very early, to avoid disturbing normal
> operation later on.
> 
> Like for CMOS/RTC a fundamental assumption of the probing is that reads
> from the probed alias port won't have side effects in case it does not
> alias the respective PIC's one.

I'm slightly concerned about this probing.

Also I'm unsure we can fully isolate the hardware domain like this.
Preventing access to the non-aliased ports is IMO helpful for domains
to realize the PIT is not available, but in any case such accesses
shouldn't happen in the first place, as dom0 must be modified to run
in such mode.

> 
> Signed-off-by: Jan Beulich <jbeulich@suse.com>
> 
> --- a/xen/arch/x86/dom0_build.c
> +++ b/xen/arch/x86/dom0_build.c
> @@ -479,7 +479,7 @@ static void __init process_dom0_ioports_
>  int __init dom0_setup_permissions(struct domain *d)
>  {
>      unsigned long mfn;
> -    unsigned int i;
> +    unsigned int i, offs;
>      int rc;
>  
>      if ( pv_shim )
> @@ -492,10 +492,17 @@ int __init dom0_setup_permissions(struct
>  
>      /* Modify I/O port access permissions. */
>  
> -    /* Master Interrupt Controller (PIC). */
> -    rc |= ioports_deny_access(d, 0x20, 0x21);
> -    /* Slave Interrupt Controller (PIC). */
> -    rc |= ioports_deny_access(d, 0xA0, 0xA1);
> +    for ( offs = 0, i = pic_alias_mask & -pic_alias_mask ?: 2;
> +          offs <= pic_alias_mask; offs += i )

I'm a bit lost with this, specifically:

i = pic_alias_mask & -pic_alias_mask ?: 2

Which is then used as the increment step in

offs += i

I could see the usage of pic_alias_mask & -pic_alias_mask in order to
find the first offset, but afterwards don't you need to increment at
single bit left shifts in order to test all possibly set bits in
pic_alias_mask?

> +    {
> +        if ( offs & ~pic_alias_mask )
> +            continue;
> +        /* Master Interrupt Controller (PIC). */
> +        rc |= ioports_deny_access(d, 0x20 + offs, 0x21 + offs);
> +        /* Slave Interrupt Controller (PIC). */
> +        rc |= ioports_deny_access(d, 0xA0 + offs, 0xA1 + offs);
> +    }
> +
>      /* Interval Timer (PIT). */
>      rc |= ioports_deny_access(d, 0x40, 0x43);
>      /* PIT Channel 2 / PC Speaker Control. */
> --- a/xen/arch/x86/i8259.c
> +++ b/xen/arch/x86/i8259.c
> @@ -19,6 +19,7 @@
>  #include <xen/delay.h>
>  #include <asm/apic.h>
>  #include <asm/asm_defns.h>
> +#include <asm/setup.h>
>  #include <io_ports.h>
>  #include <irq_vectors.h>
>  
> @@ -332,6 +333,55 @@ void __init make_8259A_irq(unsigned int
>      irq_to_desc(irq)->handler = &i8259A_irq_type;
>  }
>  
> +unsigned int __initdata pic_alias_mask;

Should this be __hwdom_initdata?  I see it gets used in an __init
function, so I guess this all permissions stuff is not really indented
for a late hardware domain to use?

> +
> +static void __init probe_pic_alias(void)
> +{
> +    unsigned int mask = 0x1e;
> +    uint8_t val = 0;
> +
> +    /*
> +     * The only properly r/w register is OCW1.  While keeping the master
> +     * fully masked (thus also masking anything coming through the slave),
> +     * write all possible 256 values to the slave's base port, and check
> +     * whether the same value can then be read back through any of the
> +     * possible alias ports.  Probing just the slave of course builds on the
> +     * assumption that aliasing is identical for master and slave.
> +     */
> +
> +    outb(0xff, 0x21); /* Fully mask master. */
> +
> +    do {
> +        unsigned int offs;
> +
> +        outb(val, 0xa1);
> +
> +        /* Try to make sure we're actually having a PIC here. */
> +        if ( inb(0xa1) != val )
> +        {
> +            mask = 0;
> +            break;
> +        }
> +
> +        for ( offs = mask & -mask; offs <= mask; offs <<= 1 )
> +        {
> +            if ( !(mask & offs) )
> +                continue;
> +            if ( inb(0xa1 + offs) != val )
> +                mask &= ~offs;
> +        }
> +    } while ( mask && (val += 0x0d) );  /* Arbitrary uneven number. */
> +
> +    outb(cached_A1, 0xa1); /* Restore slave IRQ mask. */
> +    outb(cached_21, 0x21); /* Restore master IRQ mask. */
> +
> +    if ( mask )
> +    {
> +        dprintk(XENLOG_INFO, "PIC aliasing mask: %02x\n", mask);
> +        pic_alias_mask = mask;
> +    }
> +}
> +
>  static struct irqaction __read_mostly cascade = { no_action, "cascade", NULL};
>  
>  void __init init_IRQ(void)
> @@ -342,6 +392,8 @@ void __init init_IRQ(void)
>  
>      init_8259A(0);
>  
> +    probe_pic_alias();

Could we use 8259A instead of pic in the function name and mask
variable?  Just so that it's consistent with how we refer to the PIC
in other parts of the code.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 08:38:30 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 08:38:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623594.971569 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvvsn-0003tI-S1; Thu, 26 Oct 2023 08:38:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623594.971569; Thu, 26 Oct 2023 08:38: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 1qvvsn-0003tB-P9; Thu, 26 Oct 2023 08:38:25 +0000
Received: by outflank-mailman (input) for mailman id 623594;
 Thu, 26 Oct 2023 08:38: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=hFWs=GI=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qvvsm-0003t5-Qr
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 08:38:24 +0000
Received: from EUR01-DB5-obe.outbound.protection.outlook.com
 (mail-db5eur01on0606.outbound.protection.outlook.com
 [2a01:111:f400:fe02::606])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 05fe346b-73db-11ee-98d5-6d05b1d4d9a1;
 Thu, 26 Oct 2023 10:38:23 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM8PR04MB7362.eurprd04.prod.outlook.com (2603:10a6:20b:1c5::23)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.18; Thu, 26 Oct
 2023 08:38:20 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6954.008; Thu, 26 Oct 2023
 08:38: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: 05fe346b-73db-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=j3nX03QNmMoNMrUF4625vOpo4DObIYnjzjUG3X151jc2EV92S7F2tM7dzypjKeDIeJoI+kn3vCW8VlQFrDvOIrSondLQhczCpRhGu/yp+dhHO0OMMh38niPfMJcWNSNa3aPtGqXI1XsmXZD5TdvLztSFMYy9YDm2sdvGU/nJuTFII+G6syLzuLEglAxQWXQhNpt5bsiIlN1kuIJloVOahtiUOJqf4MNCgTYrFcWyZ1ZiNbP2eZoxupKq+4a7ID8ZOuWxrTaguUOg2laovVkCiz2qYMoV6yhCUl6jCG/y8VfJogSZqk8KP1QrTXhbGeCYGujhCI7kJeAADfcfWSSoSQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=Y8rWSpsWnL1e2D1xcChTAv4edpUqiqVpJ+qqOYWwqiU=;
 b=JjGuHd+znlKe9qGJuRjUSsfKZnhMQlX9GY78ClMRP2HDvqlHCA+5LmVo011A16FlKICIoSw4UQFWdUtHTcengTPpr6MJ9ztavgFDSdAK8f/Q2e5Fg4Li1Zfvvo0FgT8kwGzLfQx8beoEg1cSMYfCYKVRm+mbq9wdbYCH6+rQmio9W43X2W0C/Fs46nqDw1yN7Vh0gwbpLLuWuBdmYG0pswYszht2lRRuOWkMjGbxFz+x2Vs6kS9yfYQDuq0BgUgtrXY4+BisNQrZwDZbXL2oKP9tuKpAvY9Lb3Se5kXBiTBuMcWV87sBQ04NzlMs+fXWnUlyPZia+eimoJQS57P2jg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=Y8rWSpsWnL1e2D1xcChTAv4edpUqiqVpJ+qqOYWwqiU=;
 b=r7Ku+4I9vHeH6jWMvU5n+5+vOzXx40sMyGEIuGvewFbYS014cZvwPJhl6Z39PEqkSJ6kVbUVvL+c189Nvq5TJ4OuV1b0+MkrkC1rdAAXbPk0ZwIbKdkXJ2ntuDOE04St3zndw9YnzKsFWGwU65K3koGd05mCY4UveY7tjbwWa3r7wMKKil/Ug+Gg18nzKc1+ccLKRAzbqvnwid/UHWAUstnd5RM2KWb4dPaLLIV4wJwJq6zyTAKRMxWNwGIvziFd5jJ4AGG+qoY3Nrlu/2So2A0Ciyojr+4E1S+o2BrFtBkRGvMaXjUHvMQKcyDJIRfDR6+cTOCxMV/R/h0rgJ9zQQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <f3ecae05-6fb0-79a7-c3ec-ed2093a8f40e@suse.com>
Date: Thu, 26 Oct 2023 10:38: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 PATCH][for-4.19 v4] xen: Add deviations for MISRA C:2012
 Rule 7.1
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.cooper3@citrix.com, roger.pau@citrix.com,
 Simone Ballarin <simone.ballarin@bugseng.com>,
 Doug Goldstein <cardoe@cardoe.com>, George Dunlap
 <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Wei Liu <wl@xen.org>, xen-devel@lists.xenproject.org
References: <9bc37dc81744283ca3b92ce3ffad373740122288.1698308237.git.nicola.vetrini@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <9bc37dc81744283ca3b92ce3ffad373740122288.1698308237.git.nicola.vetrini@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0446.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:c6::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_|AM8PR04MB7362:EE_
X-MS-Office365-Filtering-Correlation-Id: 807b5c47-63f8-4151-0c25-08dbd5fee855
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	aCc0XDavIh/FHy2E2tmURYs+BdvBdyQ/UY/FPwR2Nwi5w+9wmSXto3OIR1biQksgrzQLULZU72fBPxWbHolWjIF+fW+HPpo48a9tMKYEmtp7o+95CRporhuF+lzShBJiGQqJB3YYn3oXdBiZv4QNUAxB2DEGjnm7fe62E5R3RvEbumH5o6Bg0gFwEo4c/sjWEsPWttakmN9icHmCveci5WZW40wDpAtG0MUJWlvoL5DRR3ACCY9cyGge/VRg3DgAPvD1gScwdhwoCLnp22jShlxV/MH7ExVoztNfUIF6/RAJrlp/lUsDG6E77YIxDYr4yXFaMvmS99dbn9QEk1f4Z2KCxT83XnC4POXdAwI9dlywsH56orOxwekbblpa2/DHReCBH30rSvsW+2vFjzmAAy2fPPcoxxseHmM0xhF1CoiDk3gb6H6oCnBlJ1FkRAacJFG0ojHdx2yU8yJIAEGNPgQG4ce7QixRDFaxP13/KDgqjDb8/vtOgIBOBOhUkZRwP1Jb5qVy9KNh+72NTet7/VjCXu3TAcaPkzJXvfdK/MrxVOsMg6C8u78Cew8Eq6Ai9IRTx7ErsKsTJ9/0MVnoDlRGXP5me465H3FCd+gKuWbdN7I7a6OViz/RDsv3OVL62AjIPxGAM1O0WYg737s8BA==
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)(366004)(376002)(230922051799003)(186009)(64100799003)(1800799009)(451199024)(6486002)(316002)(6916009)(2616005)(6512007)(38100700002)(26005)(6506007)(54906003)(53546011)(66556008)(66476007)(66946007)(31686004)(83380400001)(8936002)(6666004)(478600001)(4326008)(8676002)(41300700001)(7416002)(5660300002)(36756003)(2906002)(86362001)(31696002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?QzFIMm52Y0llcWJQNGUvUEduZGt3NkFleTEyUDFzaDZKdFVvSFdBaHI0WFFu?=
 =?utf-8?B?ZEtsdksvM0ltQ1VRNVhEMjNzRjBveGxvUUFLOFBMeTJiZ0U5ZXNLbGRQa3Vp?=
 =?utf-8?B?cWx1TVZEYWJkWDV0YVdMRktvK3JickdVK2VtUWVremtDd0hkMGUyUU9wc2xx?=
 =?utf-8?B?RU9jRnJWMWVLSVFjMDh1TllzazlVWnB4Z3ZTa1NKUyt1ZU9xTEtYZVNtWkpr?=
 =?utf-8?B?eWQxMFB0TjRUZGtkSW11dUpBSGU5cnc2TVY5ajVnSkhHcEVjYVJlVVkxa1Ax?=
 =?utf-8?B?RVArY2tnTlc0NDRDVERIenhaYVcvS1JWNEtTT1l5VEZ5OEF1MlNJcmw5dG5k?=
 =?utf-8?B?azA0TTVvZ0p3VUY2anJucFJFSjM0dVBsUEkyeE5pbkM4YXZoem1RM2ZENmh4?=
 =?utf-8?B?bHgrdWtyRVRmUVNlUHJ3T2dtYUVhQlc0aXFhTmxBOTZjVGNqOUZKS1FyekxX?=
 =?utf-8?B?dVlMVzI2QzRjd2lzVnBjaVlIWnRGb21rc0NnTmFzbmxoWW0vRFNDYyswT3dF?=
 =?utf-8?B?TDRPNEpNcGdaUi90Zkw2di81czBzeEhvWlZ3dFk5bXpnUVVnd0tQbEUzS2Nz?=
 =?utf-8?B?T3RmbUoxZFZyc0xRTGROeEp2bkh4UGMxaHYxK2ZyN3Jsak9nZTJRb2M2Tllj?=
 =?utf-8?B?dSt5TEZvbWpIdjVrLzg5NWZtQnp6UVNLQndsUndjcTRJMmNyR2s5eDlrbmxN?=
 =?utf-8?B?VHoxTUFrSWRCbWNubEU0ZExhZnQwdm03UHIvZktJaVlING5kS1RNUFdhdm9O?=
 =?utf-8?B?YUdjR3k1N3QweGIzanR3QTNLYU9Ua0FnVjM0SWw2RTZMTUp2RzEyMFRNVEZN?=
 =?utf-8?B?WksxWkN6NW8weldYVHI2cXptam9ZNkR6WTgwY2RxVEVkQzMwQzM1c3ptZWdm?=
 =?utf-8?B?WEx4S2V2NzZ4MGFJQUNtMFhQK3IxVDhWbmNJd1NsdVZFT3B6ZWdaSmxZekFa?=
 =?utf-8?B?czRqN0p2VTBYQnB6NkVWeGVTY0s0QW5OL2Q4YjFUeURsOS8rcXIzM09HVElw?=
 =?utf-8?B?cWJUczNyUERmbkU1eVVnVTk2TUpSMEdYRk5iM1FxN2Z0eEFuOSsybWlIVjdi?=
 =?utf-8?B?czNSeHBuQlZyekR2b2cxOFpscjd0aUtyRTc2ZXRGZzJveXlTZEF6d2VIR083?=
 =?utf-8?B?UWpQdVhzQ2pNV043NGd5MENHajMzaE5RU2NiVU85aFNNVkRvcUpqanQ1aHNv?=
 =?utf-8?B?YngwL3NyR2o2d0ZWcUNMNGgvczlpS0ZrcjRabzJJRy9RZkVjS2xjZ3B1dDVQ?=
 =?utf-8?B?TEx5bUJSVXFvVTJkNHR0YkhJSEJFRzRpb3dJSElrQ092OGE1ZVByMkhOUStx?=
 =?utf-8?B?YmpDOUNPYjdWN3haT3pBcmZvSDlIaWkxY2xWN3QxejB3QmNYY0R4aVJGZXdy?=
 =?utf-8?B?OFdWYkhoWUNNVWRTNU9XM0dmV0NuajhVWE80cC9FM3Y4Ti93WlFPUmxNQTFI?=
 =?utf-8?B?OFR0SDVZeTdGMndwVndOV0RVTVFKem95YUdzMWVsLzc5STZKY2dnTmlVVTg1?=
 =?utf-8?B?TGhKRlNNd3JxQ3padTNMejc5c0NxVGh4ZCtaUE9kTHFpNTlIQ05jUVJ3aUhY?=
 =?utf-8?B?dGdhbS9oeXNzdzJCalM2SXhMSm9OYWVkbkxscEpYV256WlQ3MlpNaG1Nc2NK?=
 =?utf-8?B?bU1rcTZwc3JtTlIvUUNidkRLcDNSWkhvcW9GcWVSZHR3bzZmK0NYbDRpUDZF?=
 =?utf-8?B?a2NGa2pENE43eWthY0c4UkF5ditJVFJncDBtUW1Pd2tkUHJYd3hkRjk4VjJO?=
 =?utf-8?B?RWRua1NKVmFJTkcwbUF0aTFiOUtaOUlzL2NhTmlGUkxqNXRhMDVHZWNNNytB?=
 =?utf-8?B?N2pkWFY3QUlnZVpIb1YweFhsdEF1WVlxY1hLd0xlUnJXN3NNVGsrTjczV0dD?=
 =?utf-8?B?M2Y1ZHpwVjA0blh0K3VEUzBRNkdkcXFwREtpbEp5VW13NGRaKzhNNGNQVUYr?=
 =?utf-8?B?cnhmWVNCTkZzZ3ZjQ2dRT3pUbmpUR3NPUzhkcjhZSTkzbk9mV1pTcmFaeFMx?=
 =?utf-8?B?T2lVQUllbFhIcW13ZHFYV3BpcXY2eThsQlVQbUZuSGhkMGJWa0tlVy9RZTdp?=
 =?utf-8?B?aXFXbTIwa2RvdE95K2VjQ3lIQTF3R2FpRENqdXBpRmhkOHZrVUx5Sks0c0pp?=
 =?utf-8?Q?FKSfgPlteFYqttkmM+dPN8WGn?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 807b5c47-63f8-4151-0c25-08dbd5fee855
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Oct 2023 08:38:20.0309
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: mHZ4U3acs/D/oS/RkGvRXTKHsLag2AdsPxesFO6mYcX83r/yvaePFhwZYMyQAF17jUQSSRKqKSTkATv9ARyMQA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8PR04MB7362

On 26.10.2023 10:18, Nicola Vetrini wrote:
> --- a/automation/eclair_analysis/ECLAIR/deviations.ecl
> +++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
> @@ -85,10 +85,12 @@ conform to the directive."
>  # Series 7.
>  #
>  
> --doc_begin="Usage of the following constants is safe, since they are given as-is
> -in the inflate algorithm specification and there is therefore no risk of them
> -being interpreted as decimal constants."
> --config=MC3R1.R7.1,literals={safe, "^0(007|37|070|213|236|300|321|330|331|332|333|334|335|337|371)$"}
> +-doc_begin="It is safe to use certain octal constants the way they are defined in
> +specifications, manuals, and algorithm descriptions."
> +-file_tag+={x86_svm_h, "^xen/arch/x86/hvm/svm/svm\\.h$"}
> +-file_tag+={x86_emulate_c, "^xen/arch/x86/hvm/svm/emulate\\.c$"}
> +-config=MC3R1.R7.1,reports+={safe, "any_area(any_loc(any_exp(file(x86_svm_h)&&macro(^INSTR_ENC$))))"}
> +-config=MC3R1.R7.1,reports+={safe, "any_area(text(^.*octal-ok.*$)&&any_loc(any_exp(file(x86_emulate_c)&&macro(^MASK_EXTR$))))"}

Is the matching of file name and MASK_EXTR() still appropriate with ...

> --- a/docs/misra/deviations.rst
> +++ b/docs/misra/deviations.rst
> @@ -90,6 +90,13 @@ Deviations related to MISRA C:2012 Rules:
>           - __emulate_2op and __emulate_2op_nobyte
>           - read_debugreg and write_debugreg
>  
> +   * - R7.1
> +     - It is safe to use certain octal constants the way they are defined
> +       in specifications, manuals, and algorithm descriptions. Such places
> +       are marked safe with a /\* octal-ok \*/ in-code comment, or with a SAF
> +       comment (see safe.json).
> +     - Tagged as `safe` for ECLAIR.

... this description? I would have expected the key now solely is an
"octal-ok" comment?

Jan


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 08:40:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 08:40:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623597.971580 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvvuU-0005Hc-7g; Thu, 26 Oct 2023 08:40:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623597.971580; Thu, 26 Oct 2023 08: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 1qvvuU-0005HV-3j; Thu, 26 Oct 2023 08:40:10 +0000
Received: by outflank-mailman (input) for mailman id 623597;
 Thu, 26 Oct 2023 08:40: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 1qvvuS-0005HP-UA
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 08:40: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 1qvvuS-0005g4-NG; Thu, 26 Oct 2023 08:40:08 +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 1qvvuS-00030J-IA; Thu, 26 Oct 2023 08: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>
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=ALYKZ0Csqj7MRVAlh6QuhdWSOl74qWJdyWx0jcYBKtg=; b=ul28d0HEfpps/sKsqTlmo5XW6q
	MZwhKJzy7eLSklPbId8s0pLH7tba7ATTBF6M5g2ChfNRRH/fxgZS2oIef/xnQP8aV7030hYouxZRK
	W/oMzA+8+0hRC8oYPbrXG6Xyg6r08SsXcOmrhH30s/D/YODZuK8sYop5+DnF7Io6BPwc=;
Message-ID: <12be1b5e-2bdc-49bc-aeea-3372291ced8a@xen.org>
Date: Thu, 26 Oct 2023 09:40:06 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN] xen/arm: arm32: Use adr_l instead of load_paddr for getting
 address of symbols
To: Michal Orzel <michal.orzel@amd.com>,
 Ayan Kumar Halder <ayan.kumar.halder@amd.com>, xen-devel@lists.xenproject.org
Cc: sstabellini@kernel.org, bertrand.marquis@arm.com
References: <20231025170304.2331922-1-ayan.kumar.halder@amd.com>
 <6c4c8023-1d6b-426d-9c9d-c45f01c9c5d2@amd.com>
Content-Language: en-GB
From: Julien Grall <julien@xen.org>
In-Reply-To: <6c4c8023-1d6b-426d-9c9d-c45f01c9c5d2@amd.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi,

On 25/10/2023 18:59, Michal Orzel wrote:
> Hi Ayan,
> 
> On 25/10/2023 19:03, Ayan Kumar Halder wrote:
>> Before the MMU is turned on, the address returned for any symbol will always be
>> physical address. Thus, one can use adr_l instead of load_paddr.
>>
>> create_table_entry() now takes an extra argument to denote if it is called after
>> the mmu is turned on or not.  If it is called with mmu on, then it uses
>> load_paddr to get the physical address of the page table symbol.
> I wonder if we need this extra complexity.

+1. We used to request the caller to tell whether the MMU is on. But 
this made the code more complex. So I decided to remove it completely.

> Can we just remove load_paddr macro completely (I have a plan to do this for arm64 mmu head.S)
> and open code it in create_table_entry? I don't think there is any benefit in
> having the if/else there to use either load_paddr or adr_l. This function will also go
> into arm32 mmu head.S.

While I was ok (I am not 100% happy) with open-coding load_paddr in 
arm64, I would rather not do it on Arm32 because I still haven't figured 
out whether I would need other use (which could not be replaced with 
adr_l) when fixing the secondary CPU boot code (it is still not
compliant with the Arm Arm).

So the question here is what do we gain by removing load_paddr 
completely? We still need a register allocate for the offset, and the 
macro makes it clearer what's the code is about.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 08:45:44 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 08:45:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623602.971590 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvvzk-0006vw-Pf; Thu, 26 Oct 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 623602.971590; Thu, 26 Oct 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 1qvvzk-0006vp-MI; Thu, 26 Oct 2023 08:45:36 +0000
Received: by outflank-mailman (input) for mailman id 623602;
 Thu, 26 Oct 2023 08:45: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=hFWs=GI=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qvvzi-0006uR-PA
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 08:45:34 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur05on2061f.outbound.protection.outlook.com
 [2a01:111:f400:7d00::61f])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 05caf708-73dc-11ee-9b0e-b553b5be7939;
 Thu, 26 Oct 2023 10:45:32 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DUZPR04MB9948.eurprd04.prod.outlook.com (2603:10a6:10:4dd::16)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.36; Thu, 26 Oct
 2023 08:45:29 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6954.008; Thu, 26 Oct 2023
 08:45: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: 05caf708-73dc-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=LFMZGRj4bS4uma+aWeIr+An32lUz3mZD2iotzgEcwt94VbI2fjdn0C5qbjYY40grfcl+hQV31fsaX3ZFl5ZHsNdnNO9xBCPWp1of27k7SDLVjcdPkB5tYu3AqnfxUkp7F0qbjq/O7zTJAWm8NMqcROIQRfsHkwDfDGxbnb/gChK7ydcGZq3nxcOABwUG/anISgW9xLF9x6LPNB6TNnlEbvyPlUAdTF7g/dNp84s9eX9NqrM3C8/Ms8DC8uVC8HOosv+jORLE47EXaX3E98EtfPp+14TesiCJmRANE3vruG0o3t6YX2SdoqPNZsaR2bKVULPFCBvmMo8ZRWzI/ZBi5A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=HeL4Ujpyh0Z5eCSBCO4lfs1Cmksi/7P3y4PYo7YxKak=;
 b=jaToB0oe+QA64JPD/39vYVcwciG4Va+mb1XIW8IrwFUc3I0l5K7CQ+IX9kHeMklMCubmoDJrg3NCNNZ7DAyH0I0s+CxKhZtVf01tKMn8YCkfKdPUkOd/llAzUJuIHCeLViCrI5/Ga5imat1m6wy8yfnrwcT0VsphvS2NLOIrfCAeNzjnydYksc5MGAXWdQdaoeZGqvjly6HiYZj/QsilkQWZtxk928AT86kSkfme/hmW92j7Ti+qXkmNbjqnX7e88Bp4D9jRnKKZ8Sy7SvFG3Tq4T/4ZfikQJnRlKAErF15zdidsHYqJ8TLjH0O9ab960mEvHdfoeBhAy6YntkRgKQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=HeL4Ujpyh0Z5eCSBCO4lfs1Cmksi/7P3y4PYo7YxKak=;
 b=Hk/kUwMThaIKgacLI7TJtvAAJ9mlvmr8FYztXL7eToSXs853sTCRiz57MAwLdccq5IZdEHezNPJhNjzfvPlbG4m1O9dA/bL5Sqg8eLjxxtVDzzr9X4ZlJ/lkIrcVlTnEgEchR8kcTCyELk1yhxC2i/v5x3NohC+npHhYyN2J7lFtjXqvWpVJUpSd76agUtO6YLmVgNRvJlca4Bqnt4s0UFfk8UdnG62jKxdNNvhb6yfkSxv3icWaQiydcjx+NB2+0ynnDPfpiTbawK//kbSEKsqTO2cD11QlLPtQd/dQUDkQioSHca1anum1Lhn/LulkLMZHUliFhCKJTbzwjzCe4A==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <809115b1-2a47-583f-2d04-72a5a21ee7da@suse.com>
Date: Thu, 26 Oct 2023 10:45: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] x86/hvm/dom0: fix PVH initrd and metadata placement
Content-Language: en-US
To: Xenia Ragiadakou <xenia.ragiadakou@amd.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>, xen-devel@lists.xenproject.org
References: <20231026064543.43369-1-xenia.ragiadakou@amd.com>
 <ac7e9bac-6d74-a5bf-d703-3c5455e581ea@suse.com>
 <7712c60b-4f89-483e-89e4-7ac8f4d0311e@amd.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <7712c60b-4f89-483e-89e4-7ac8f4d0311e@amd.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR5P281CA0010.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:f2::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_|DUZPR04MB9948:EE_
X-MS-Office365-Filtering-Correlation-Id: 1b4a33a1-effc-498d-65f3-08dbd5ffe815
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	H5auSD1pimlNse4UdB81TSF6rbGEPgdcAtVIYNwaY/DK1R9eC+y7eV8v2CvPbfSjGas//cj4Xbvlek+sHTMOpkj0zaNKYxG0YbOGeqylCrMOJ2cGX0eIhI4XgmcXsLcso9AEsXLcfIaSU5zrnEJzzx+yDpcfbxdHW23tAhk/OVF9XkEQCU7vseaE+j95i3xuff5hAQp6X/po6CCPgz4ry44oeZWaOuH7tjsbwWhmiXyV9B0Zo6EZiFH86OvzOmK69ZmdkOm/WH1TVWMUK/NdDU6kbOrfEVCWGNVIS6CIHRdFcKRO0hDShx6edynywcJQ2D555XgDESe5udnDiJVukA4N5HmvEWMZaL02GsSvyKcj9MrGiGdjnISU3anaoTucmVOc3oy9EQmQrL4/5FVEqFxd++9eyHvfM4doTpnDFs/0+i8dWbX3J9NFGOMqSpLBTriwUGKqriqMzGIi1/vsmYbi+uWMl0d/gF2FbTKNg/5mEQ+zcub8lCQPcsfYCpIkgMBuV3JZAQtX5P9pFeNtlMvaDU/R1c/LKGNEhjfvN+t2kVTjLcCAdi0yZZhzBy8BsUBT4Tc3yf/bxppST9HN7jCEHAtAdkeOChLzPgGj9VdFF2sQKAWTUUkbKG5g45rn8J6R+BTB/n9vHSJdlJfD8g==
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)(39860400002)(136003)(346002)(366004)(230922051799003)(1800799009)(64100799003)(451199024)(186009)(86362001)(54906003)(316002)(66476007)(8676002)(8936002)(38100700002)(4326008)(53546011)(6506007)(6512007)(2616005)(6486002)(83380400001)(478600001)(66556008)(26005)(41300700001)(2906002)(36756003)(31696002)(5660300002)(31686004)(6916009)(66946007)(66899024)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?SnJzalVVeDN4dlJHK1U2Vk1QRVRjZ3RpVmxHR1JRVENqWmIyRDJuUGZ0dTdI?=
 =?utf-8?B?dVhKTW9ackM2dVlFNlAxeVd6ckswSHdvNTZHZGV2RG50QVdESUk1c1hCUzdC?=
 =?utf-8?B?Z2QramNZSHAxbjRtbU1ML2RzZWhOeldrV0ZvYzhwNWZQekhiakZjMDNuNXBF?=
 =?utf-8?B?N01ER01HSHdhSjkrbElQdFVjWXpSaUhsbDEvS1Y5TmpMdituVnNMU1ltdXBX?=
 =?utf-8?B?VjJaVVZWblFaaWxoWVZ6RXJQTE9yS211YlQycWhZSmlaNFlNbTN4QUIvNEhx?=
 =?utf-8?B?TUVwUFgzRlZEZU42bFVnSUR3VXlRUTc4bHBkSXZFVEtkRUZxaTJoeU1XZlpU?=
 =?utf-8?B?NnNHWDRCRXJvaWo2WEZMSlJpUlNDei9BNjIzdjV0MFBodmU2MzZvVjUxdEVU?=
 =?utf-8?B?aVRMV3NxMlhHb1RMTG4rQzRWa1FPbzZkbExrcmtya2dJTzZSWHlaNEp3WG1Q?=
 =?utf-8?B?YWxHU2xLc2twZ21XUUc4MUQ4aWZPM1p5NDZMSmlET052bXM5dFl2bTM0ZzBH?=
 =?utf-8?B?UHZUNXhXN0ZWemZWZlpaOWhwOWl0VDVGTVVDYnI4NE8rNXl4eDZ2M2dOcSs3?=
 =?utf-8?B?MTd2SFJnVEZ2MFhwTzRjdG1XcjRSL3o0Wllrd2FRTC93SW5NbXRocjF1Nk42?=
 =?utf-8?B?U29iaUxXbzAySVB3ZExUSTh4M29NazNMOWRtL2E5MklzRGdRSmlVU0c3U3o1?=
 =?utf-8?B?ZVU2SmtVcmtDYWtyM3RBS1V0WGRPaUxVQVZpNE1WcHZlS09ZUU1wYXozendh?=
 =?utf-8?B?bWsyV0daUit2b1ZjNk5DY3BtaWpUMlkrYWtxY3FtSDkxRFRiUkVxZXVYUWEx?=
 =?utf-8?B?YmtZUmlzd0lVc25rRElwWmZBNUZDTDBNM2g1ZlgyMDRKbHYvTDNUQ212VHc2?=
 =?utf-8?B?Z3VBT3puL2xxOTYvVTk0bVRGeE0zWnlCSzJ2VTM2VUZ5Um84THBJeE9uc3o3?=
 =?utf-8?B?R0lTT1lONVg3WWF2N2U1dmpPZ2hBYnJuZDh0WXk5bGJZRGoxRzF2Rk11eVlU?=
 =?utf-8?B?VSt4UEZZbjU4T2I4K2tlY0F5TS9lT0R3RlltZWVlTjNpVXZhY1Zwa1NGR21v?=
 =?utf-8?B?MEU0QUZDWDR2U0JNNWtlaTgvbTI1b0JSazJlVkVMNDRQOW1NQjFIVWc3M2N4?=
 =?utf-8?B?bHoyOVlob1hrMS81THN3OStJWjhDMkVaZysrUlRFK2V4MXUrODhXZ0EwYnh2?=
 =?utf-8?B?dGlaRW1Pc3p3azd6WERFeG5BaXVGZ1FjbllEZXVvVStiN1FkWHIwTWlObk5a?=
 =?utf-8?B?TFAxcldXVy9DQnFqS1pnSkZONUdGYzYvVkFqdmpRcit1TWF3VUNXNVB5K1FY?=
 =?utf-8?B?RVl5bFFwNGFOM1NKMHNBNkZnUzVHTFpOVlQ4R2Z5czVqb0VhSW1xVnZHTENB?=
 =?utf-8?B?cnlBQ0NTakFtMDZBRGZsZnphODhPTjNXMUQ0cXVZQXJ6UXVXa1NVeDVTaWlO?=
 =?utf-8?B?ZklsNzRjRU0rVTVwbGt1ZGtFdDdyQnA2UFpqdUN3ckVkVUo2M0lWcTZJYW5p?=
 =?utf-8?B?U2wvYWhPMmtPanVrQksrVUpXcHM5NUFibHpwcEJDY1V2UENOUmNtd09XTnMw?=
 =?utf-8?B?Q0ZPQXB5M2pRVXZSQjM3Y3VUYlp4a2l2ejdBWWJtWmVlUk9LYkNtWUlVMC9J?=
 =?utf-8?B?dyt3Y29JZFp1MkZicjU5bDFDT0taeE0rcEdPRk1LV0U2OVFkNG1WZW5FZUdX?=
 =?utf-8?B?ZGR3dDBzWjIxd0N1TW93M3hwQzNTSE5jZEhBdnFEUHBINlQ2Umd2ZkNtOWhw?=
 =?utf-8?B?NUtPaGlpenRUeXg5Mk45NkkxSDRKWmcwZFZPTGVBdWF4ZlR2NHRDT0lvaHly?=
 =?utf-8?B?em5jR2lDVXl0VG9VRDBTOHdHZWxIdXFldmVrMkNDa0JNdjFONEI5enNpN0tr?=
 =?utf-8?B?a1NFZUFOdStZaUYxR3lLMGxoRlZ2b1RtdHVwejNoUXJRcy82eDJOSllYOWJK?=
 =?utf-8?B?Q295V01aUWUzcFhBWDRNV1Y3SmJ4QTFZVlZYZHBQSmxPaWZwYzZHR0NxTTFZ?=
 =?utf-8?B?NHlOSFRQdFhTbjQ4VDRENHRwVHphSk5GSWhXRGhXYjJiYzk1c1dXdDlPTDZ0?=
 =?utf-8?B?bUlVaFdLOTY2OUZOUERmeHhucmxhMXJjc1BOVXIwUTcxOTAvRzdqQlRrQmZD?=
 =?utf-8?Q?Q0dnChniUotulEaD5piS5KLu2?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 1b4a33a1-effc-498d-65f3-08dbd5ffe815
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Oct 2023 08:45:29.1545
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 7Wdw+0c8BTfv/a7Gg/aauCpTEzrF9cqHA423KW/iaewACThWbiMYHCdJOLm7F0y3PHwykOTWE4SW8XWeQp8fjw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DUZPR04MB9948

On 26.10.2023 10:34, Xenia Ragiadakou wrote:
> On 26/10/23 10:35, Jan Beulich wrote:
>> On 26.10.2023 08:45, Xenia Ragiadakou wrote:
>>> Given that start < kernel_end and end > kernel_start, the logic that
>>> determines the best placement for dom0 initrd and metadata, does not
>>> take into account the two cases below:
>>> (1) start > kernel_start && end > kernel_end
>>> (2) start < kernel_start && end < kernel_end
>>>
>>> In case (1), the evaluation will result in end = kernel_start
>>> i.e. end < start, and will load initrd in the middle of the kernel.
>>> In case (2), the evaluation will result in start = kernel_end
>>> i.e. end < start, and will load initrd at kernel_end, that is out
>>> of the memory region under evaluation.
>> I agree there is a problem if the kernel range overlaps but is not fully
>> contained in the E820 range under inspection. I'd like to ask though
>> under what conditions that can happen, as it seems suspicious for the
>> kernel range to span multiple E820 ranges.
> 
> We tried to boot Zephyr as pvh dom0 and its load address was under 1MB.
> 
> I know ... that maybe shouldn't have been permitted at all, but 
> nevertheless we hit this issue.

How can they expect to have a contiguous, large enough range there?

>>> This patch rephrases the if condition to include the above two cases
>>> without affecting the behaviour for the case where
>>> start < kernel_start && end > kernel_end
>>>
>>> Fixes: 73b47eea2104 ('x86/dom0: improve PVH initrd and metadata placement')
>>> Signed-off-by: Xenia Ragiadakou<xenia.ragiadakou@amd.com>
>>> ---
>>>   xen/arch/x86/hvm/dom0_build.c | 2 +-
>>>   1 file changed, 1 insertion(+), 1 deletion(-)
>>>
>>> diff --git a/xen/arch/x86/hvm/dom0_build.c b/xen/arch/x86/hvm/dom0_build.c
>>> index c7d47d0d4c..5fc2c12f3a 100644
>>> --- a/xen/arch/x86/hvm/dom0_build.c
>>> +++ b/xen/arch/x86/hvm/dom0_build.c
>>> @@ -518,7 +518,7 @@ static paddr_t __init find_memory(
>>>           if ( end <= kernel_start || start >= kernel_end )
>>>               ; /* No overlap, nothing to do. */
>>>           /* Deal with the kernel already being loaded in the region. */
>>> -        else if ( kernel_start - start > end - kernel_end )
>>> +        else if ( kernel_start + kernel_end > start + end )
>> What meaning has the sum of the start and end of either range? I can't
>> figure how comparing those two values will be generally correct / useful.
>> If the partial-overlap case needs handling in the first place, I think
>> new conditionals need adding (and the existing one needs constraining to
>> "kernel range fully contained") to use
>> - as before, the larger of the non-overlapping ranges at start and end
>>    if the kernel range is fully contained,
>> - the tail of the range when the overlap is at the start,
>> - the head of the range when the overlap is at the end.
> 
> Yes it is not quite straight forward to understand and is based on the
> assumption that end > kernel_start and start < kernel_end, due to
> the first condition failing.
> 
> Both cases:
> (start < kernel_start && end < kernel_end) and
> (kernel_start - start > end - kernel_end)
> fall into the condition ( kernel_start + kernel_end > start + end )
> 
> And both the cases:
> (start > kernel_start && end > kernel_end) and
> (end - kernel_end > kernel_start - start)
> fall into the condition ( kernel_start + kernel_end < start + end )
> 
> ... unless of course I miss a case

Well, mathematically (i.e. ignoring the potential for overflow) the
original expression and your replacement are identical anyway. But
overflow needs to be taken into consideration, and hence there is a
(theoretical only at this point) risk with the replacement expression
as well. As a result I still think that ...

>> That said, in the "kernel range fully contained" case it may want
>> considering to use the tail range if it is large enough, rather than
>> the larger of the two ranges. In fact when switching to that model, we
>> ought to be able to get away with one less conditional, as then the
>> "kernel range fully contained" case doesn't need treating specially.

... this alternative approach may want considering (provided we need
to make a change in the first place, which I continue to be
unconvinced of).

Jan


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 09:03:22 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 09:03:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623608.971600 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvwGg-0003A6-Be; Thu, 26 Oct 2023 09:03:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623608.971600; Thu, 26 Oct 2023 09:03: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 1qvwGg-00039z-8M; Thu, 26 Oct 2023 09:03:06 +0000
Received: by outflank-mailman (input) for mailman id 623608;
 Thu, 26 Oct 2023 09: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=I5Mm=GI=amd.com=Michal.Orzel@srs-se1.protection.inumbo.net>)
 id 1qvwGf-00039t-KO
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 09:03:05 +0000
Received: from NAM11-DM6-obe.outbound.protection.outlook.com
 (mail-dm6nam11on20617.outbound.protection.outlook.com
 [2a01:111:f400:7eaa::617])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 77b34d49-73de-11ee-9b0e-b553b5be7939;
 Thu, 26 Oct 2023 11:03:03 +0200 (CEST)
Received: from DS7PR06CA0028.namprd06.prod.outlook.com (2603:10b6:8:54::33) by
 DS7PR12MB5718.namprd12.prod.outlook.com (2603:10b6:8:71::10) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6907.33; Thu, 26 Oct 2023 09:03:00 +0000
Received: from DS3PEPF000099D4.namprd04.prod.outlook.com
 (2603:10b6:8:54:cafe::88) by DS7PR06CA0028.outlook.office365.com
 (2603:10b6:8:54::33) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.35 via Frontend
 Transport; Thu, 26 Oct 2023 09:03:00 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 DS3PEPF000099D4.mail.protection.outlook.com (10.167.17.5) with Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6933.18 via Frontend Transport; Thu, 26 Oct 2023 09:02:59 +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.32; Thu, 26 Oct
 2023 04:02: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.32; Thu, 26 Oct
 2023 02:02:59 -0700
Received: from [10.71.193.58] (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.32 via Frontend
 Transport; Thu, 26 Oct 2023 04:02: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: 77b34d49-73de-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=FVOtsEwI8nC2zB39uhTClgeJPEq0mcfL8lT/gS2yeKRyoCcWnA9ui4yGTCDmatbsuOY3EmbVCRKydPI8hhIZy+zfDz20FGYsieKfK4i4V1b/zJfT363GY99Ih9mRUcpzRswPV0h7uj4S1ffjNygvahDp1BUA9RzTnbigouA2C43L6Q3ZtMULoA1eCuvU+gGO8PiyBgOlF82YTRZCqnY42XmIBnN8D6eqJpMgXR7OJEPYpKlJeKPW5ZekFzppzzsYT/q9+InXKfW0l9H/3dN6IYJuOjqBgGVv5GR8vU30rzc9hkQRQFDVCnpLVO98lP3HZ/w0bC8vyUhsxnusA87VVQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=sIK2GiO9xi8jpj0JqkeN7ZLEgMP1E9mQ9ocUZONKLPo=;
 b=QrL686RWQKTNzS4lmDPidW5Lm4ArqQHKcmHeTJK3J8rpRPSLx1HJ/8GsfdwWQ0OBRMk4Q/KqmbaeAu813Ydx4XlX0Eq3N9R4c3KwaBLNo7kFUagKsXLhmmrOlXLixMOTCdaWxczGuajWjdH0byiXwhXcWSm9G/y5Xq6uYVGWI7/Gr9fbub0nnlVu2sD+5dCSySGy+2YJT7BWZrbN7mKZy/J3bDcIkfoCDWAgYHmoNKFYA04EtEESkYY6jigGUcytVAXHzNTP0CTX5aJpV9NsGornHz+zVzQYd1pJ95QFBGgb6lBBGUnPiTH8x7cCvxKrNWjpNxDmov8JCUaJZZWEhg==
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=sIK2GiO9xi8jpj0JqkeN7ZLEgMP1E9mQ9ocUZONKLPo=;
 b=jhvBTZWef9bXnsiNytdbCVpSQpjEbNWcNcAQ5rjrinMYDV+FW/vuE8hWx5qoen7jKZz4+Mtt4BYgXxA79/IznH3ybY5WBARewo9151nfziVU6o4qcdzy9R9hkvNNG+FyH9KljDESqyKPI6t4Jv4JRhqqTKOLY80BR+1E/cHBxtM=
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: <6547ffb8-f8b8-4fe9-8ae1-4451a7e87cfa@amd.com>
Date: Thu, 26 Oct 2023 11:02:57 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN] xen/arm: arm32: Use adr_l instead of load_paddr for getting
 address of symbols
Content-Language: en-US
To: Julien Grall <julien@xen.org>, Ayan Kumar Halder
	<ayan.kumar.halder@amd.com>, <xen-devel@lists.xenproject.org>
CC: <sstabellini@kernel.org>, <bertrand.marquis@arm.com>
References: <20231025170304.2331922-1-ayan.kumar.halder@amd.com>
 <6c4c8023-1d6b-426d-9c9d-c45f01c9c5d2@amd.com>
 <12be1b5e-2bdc-49bc-aeea-3372291ced8a@xen.org>
From: Michal Orzel <michal.orzel@amd.com>
In-Reply-To: <12be1b5e-2bdc-49bc-aeea-3372291ced8a@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 7bit
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DS3PEPF000099D4:EE_|DS7PR12MB5718:EE_
X-MS-Office365-Filtering-Correlation-Id: 27509310-636a-4edc-7eb0-08dbd6025a63
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	NUicH2+uOqCwfxg0HnNZnz5vzlC2iDybntGUg2ZECIbGvpbcPnOKkDXT/xNoEYdo3VfbpLhGvTApo+oeNdNQUMjYdAE7Hs+IK9NbzH5Edmo/gzKq+2+FRWHTzRzwmdFMeG4dzqiiDSquSM9RBgpeI1Dl3ZYNOFc13SE7mLQRv5X84dRwhuJBtPMxp3yd8V69bGykbhPELTWITpBtfv5cjGnT7kTd5qqQktDOZ3jlB7Sd5M8VsXCI6+cXo5yuc1BBoZDLl0LMSPqNWrWTd3qgSciMBnxFQFCaeFg6P0ezoj537u1XWtk7Z53spdSGAePxQQkfQHPtOZ+LY7jBgXxEtwseQa4HIRDTNiwwCk636D45EDTuQg/wfnMnLDiqTbbwJHphcafpbv2VtzrGvo3O2RyZ0qiX9iN4p0Hg1UNvk0j+YjBg4P+twnZu7pZ4YGlBFCuDFn4NDus0nN0Am0KU0gCRaqhHkej8kotDteM5zTR3R2c5wRMIWFuR9BGy+hTJ4BXWYQfJ15DXNXH93FUGc3nIkJAJjLYCWu+dvTLEb8fu5T1AC7spdXE5UzkB1PSVUanezDxqqXCTN47kxycYX59vjhFsLCqsyLErlG7jHR4NrWxjIdnsECI4+HaqFkd1Wja6x6IhtRaANkft3+4/UF7M6FEmsxhQ4dlntvSkHzHAUFTkbBsWSreCgf6XQfqS+gWhW1LVgM90KnwcyORqy5KLEihmGTNKljbrpmGRT+nGF/mNRYz+KZtAtBA1+fkV6jXbNHQwjofq8TjyZ7sTxvfS/8Yd/3EKYJX1Bwwtj0/mgTlm1l0jnBjprRj+DpDr
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)(230922051799003)(1800799009)(82310400011)(64100799003)(186009)(451199024)(36840700001)(40470700004)(46966006)(8676002)(70206006)(5660300002)(8936002)(41300700001)(4326008)(44832011)(110136005)(54906003)(2906002)(316002)(86362001)(70586007)(16576012)(36756003)(478600001)(2616005)(31696002)(53546011)(31686004)(36860700001)(26005)(81166007)(40480700001)(47076005)(356005)(426003)(40460700003)(336012)(82740400003)(83380400001)(36900700001)(43740500002);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Oct 2023 09:02:59.7024
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 27509310-636a-4edc-7eb0-08dbd6025a63
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:
	DS3PEPF000099D4.namprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR12MB5718

Hi Julien,

On 26/10/2023 10:40, Julien Grall wrote:
> 
> 
> Hi,
> 
> On 25/10/2023 18:59, Michal Orzel wrote:
>> Hi Ayan,
>>
>> On 25/10/2023 19:03, Ayan Kumar Halder wrote:
>>> Before the MMU is turned on, the address returned for any symbol will always be
>>> physical address. Thus, one can use adr_l instead of load_paddr.
>>>
>>> create_table_entry() now takes an extra argument to denote if it is called after
>>> the mmu is turned on or not.  If it is called with mmu on, then it uses
>>> load_paddr to get the physical address of the page table symbol.
>> I wonder if we need this extra complexity.
> 
> +1. We used to request the caller to tell whether the MMU is on. But
> this made the code more complex. So I decided to remove it completely.
> 
>> Can we just remove load_paddr macro completely (I have a plan to do this for arm64 mmu head.S)
>> and open code it in create_table_entry? I don't think there is any benefit in
>> having the if/else there to use either load_paddr or adr_l. This function will also go
>> into arm32 mmu head.S.
> 
> While I was ok (I am not 100% happy) with open-coding load_paddr in
> arm64, I would rather not do it on Arm32 because I still haven't figured
> out whether I would need other use (which could not be replaced with
> adr_l) when fixing the secondary CPU boot code (it is still not
> compliant with the Arm Arm).
> 
> So the question here is what do we gain by removing load_paddr
> completely? We still need a register allocate for the offset, and the
> macro makes it clearer what's the code is about.
I agree that it might not be super beneficial. My opinion was based on the fact
that why bother having a macro if it is only used in one place and consists of 2 instructions only.
That said, I'm fully ok to keep the macro if it improves readability and the only use would be in create_table_entry.
Then, on an arm32 head.S split, the macro together with function would moved to mmu specific head.S

~Michal


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 09:03:48 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 09:03:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623611.971610 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvwHM-0003rn-Lr; Thu, 26 Oct 2023 09:03:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623611.971610; Thu, 26 Oct 2023 09: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 1qvwHM-0003rg-JF; Thu, 26 Oct 2023 09:03:48 +0000
Received: by outflank-mailman (input) for mailman id 623611;
 Thu, 26 Oct 2023 09: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=hFWs=GI=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qvwHL-0003Vj-Np
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 09:03:47 +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 9206e7b3-73de-11ee-98d5-6d05b1d4d9a1;
 Thu, 26 Oct 2023 11:03:46 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS5PR04MB10041.eurprd04.prod.outlook.com (2603:10a6:20b:67c::9)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.9; Thu, 26 Oct
 2023 09:03:44 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6954.008; Thu, 26 Oct 2023
 09:03: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: 9206e7b3-73de-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=SsPwiyJAElC6MgRlJUqO0OS3rznWx/ClUfydfSq2hB/Jyoj4gRtxd2hhFhBcmDWzXsi6blmtt3OxcNue1c3ni4lXVmWZQNnkeAo2kIyqaYBz8+T1FlH7sodC4XASYQOEDk6gK2kZHy3i7798qQS1ghyIjEm8PBE4qGb6ixbobu7ugeJ/jIxe/9aXvdW3duQYbESTa5gIFGUAcatCfmTD1ZOHAWkAPh+3a5+vMkXZG5HAip9fD7xLAq8+3C+KVHgwTtT0HtXnz3e+gpKNgNskEWBbJcf4h8AZb+08zTK9s4ITwHV5UHx6T8L6M7YXh+aY+b4FqViIAcFa+alTnwUA3g==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=m5QgYbpBBue3Yadlx/v9/dTlTtBu5H3ZK12TTCvQj+U=;
 b=Gavtsl1gMst1TuUCcHFPd4vB2HESecFf4Rv/j1SNW4zhtEeHvgnX7RrGSks+eQOtAgzFvLuJIeicmDe/8qinQ9I3XXEu70u1NUrp0nBX1tOhz9EVfDZitH/Fwg6Evlki+EECV5VE/1GXdlKpLB2NvHCpVpEQTHXeuXwwyntvW39ZTnPwS7i/1ygKLNedAhQH4fg9FWjBeErTwzL8wvzhm+d+6T9pajRaDypBqIgJHxYSyj/jb9nRmB/BzkP2PUd2O+bH5qf/hhRdxdQSh+hrp+VNFSLYZ6QRytmd88F141jrqMH0ckbQDmvVVFT2Gp2Xgow2R9OWHNU8b7Yez3u/9A==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=m5QgYbpBBue3Yadlx/v9/dTlTtBu5H3ZK12TTCvQj+U=;
 b=DV7nyBJofg4nfzw8wR36k3slht9O2z9iRLW5nXKn7ilSUgI2pSbZJBbwfEhd1W3QcUwf+BcDLAWeZyw39gBbo6NmP2BzrvON1cyxxNMdIy3KkUyMpHRbQGILBd2r/lhA74f6PLlOiVwJ1WKRdiCvMiL6hQNQKgbBK5qh73KxSsWWx8Przlr4rCeXWfGoluJfj0a8dKmJVtJreA6TlA94D2y/U9u4i3IGgezM9OXO0QubSACsT7BdUMFVhhJ5F6Rz6xdDxDOEkQu5EDyWiaPogGiG03bT/TuWRf25LWAGNNrfIU1MWLftQJC8cWiA/O3+zvM28RYXk+qXsfCpqT8KJg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <86eb1c0d-ac95-247b-16c3-9c4871398082@suse.com>
Date: Thu, 26 Oct 2023 11:03: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 4/7] x86: detect PIC aliasing on ports other than
 0x[2A][01]
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>, Wei Liu <wl@xen.org>
References: <95129c04-f37c-9e26-e65d-786a1db2f003@suse.com>
 <27dd8f40-1ea6-1e7e-49c2-31936a17e9d7@suse.com> <ZToksEP1Fg8MscdK@macbook>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <ZToksEP1Fg8MscdK@macbook>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
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_|AS5PR04MB10041:EE_
X-MS-Office365-Filtering-Correlation-Id: 70f35d3b-1fa7-4c81-2ef2-08dbd60274c8
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	gQnw2blaCWa22FKPqY0qpbyY++yv24s3YuPA+xW2wQw04rqSxB1PyYjILj4OT/B23H2WinDz7G2ej/rgA4yfjxoCUTg9MORVy4GT1+HAzE103Wi6MmEh/cl84iQnjkL/Ebza0ZT7vAAmbE4R8cLb8rIQ9ZsH25Rxh2GWdFqSJucdZJuHYEHVV6E1Y/75ZguuC0/E/CvEK7rl/spdW4aVH3qwCmonpvQVlI6ZKko7ogQ+e5lA2XeqgZBDcnw/+HMHCu9JM+4eJ+kFNAfh4c2hTyNWZybfa6aO8JhlhdCVrH6loCh8ZWXyAk7Y6y4Us624+eMM7J3uDUj/MmaoFosCmX89zFE12FuD2Wg6fRZQSJkyVp3ODeKTE/2CnBioKcpkM2miGo9i2ca6j+zcVFTrbgHhr61HTzwgIMUZgCK3YbUjI2HUH0XGFXVXYLKHEo/HvlOpg9xJC23Jgir19HT2lvrPYTO+lc+DAVM/ec9/DuP5dfG2teJQTkSzHXLXe7Ebzdo/Nd84W5DysuAxmxwFJzb21VQdEVTgThDdwvjv/fn8wtf6LkA8zDqyyk3IyCFACvwuVS3aM4mVCjvnSaXTzfNz3d71ONj8XJmW5V259cyKSRJw5y+ot4MiIHrt4d2CB1MtfMm6+zwdbnCwtyinuw==
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)(376002)(396003)(39860400002)(230922051799003)(1800799009)(64100799003)(451199024)(186009)(31686004)(26005)(38100700002)(31696002)(2616005)(6512007)(6506007)(36756003)(86362001)(83380400001)(41300700001)(4326008)(53546011)(5660300002)(478600001)(316002)(66476007)(6916009)(2906002)(8936002)(6486002)(8676002)(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?NS9pbnVoMWNhU1BuOUl4cUNRVmtSQnJUd2xhclpQMjAyNDhRd2k1ejB1MElx?=
 =?utf-8?B?dXpqT2E1UEY4dXp4SytQOE9YeEZGTFM4OFIveWtYOExvd1l3b0FyQjZvNm5H?=
 =?utf-8?B?SHFlUjlOM2ZKNi9ObTlMeWNiWHVMMEdwSkp1NEZOTkdNU1QvS1RrNTFGQjVQ?=
 =?utf-8?B?bTMzc3NDemxzcEhnMGQzWlErRDltNk4vcFo2b1JEOTdmZmVpYUJZSkZMUzZp?=
 =?utf-8?B?MWpXSVpVSHBaREc1TTVOeVhmZE4zZk5SNHhmQ2ZQbXBXdEhZaU9ULzdOSTRF?=
 =?utf-8?B?UXMrZyttVWJiOXFtQTdaVnE2R2dXamk3aWRYVXoyUHpzWHdTN2JDR2NCUFNj?=
 =?utf-8?B?Z3lUaWlBY1dzampacExZT2JYaFMrWUkrUUZRVFgrMGtoNG5SY1pIMjVBc1di?=
 =?utf-8?B?ZEdVWjFpMU14SVlSejFZK09CYkViMmlqeDN4Ri9WM01oYlAvWFUrcU0xVFpi?=
 =?utf-8?B?SmE5RGhmRWx5NTJKRXh5T1VBZWtqWENJRnllSWtkM2Y4RDVYZ0xmVklXMi93?=
 =?utf-8?B?RjFpcnhsMFBZYnZuZTNKeFF0cmVocGxnUHU2VzJlSEdQWXJoWWlBMmh3aXBh?=
 =?utf-8?B?VjYweUQrbWJRaE1VKzNSME9SQlQ2WmFGc0ZUZnkzMkFTRDFhejZveEpXZnJP?=
 =?utf-8?B?VVZzTkVwekpKSXppMGkxVGJVdEV2WWRBVElUZDQ2ZW9ITWN3OGE3WithOTN0?=
 =?utf-8?B?ZkpicXVYNTdZZFFiLy9oSjFiYURIRW4rWDBJVnF5VnIrMzdVN01nM1dlV1FI?=
 =?utf-8?B?K2FUL0NKclgxa0tnWjFmRzk5Q2syeDZ5WVVlVXFGSEtsZ0xnU1lvcDJnT0hm?=
 =?utf-8?B?cjFUZktweTYra1ArbVdvOUZpa1VvTTlYN3hCMHdWTW5JSTVzS1JGeXhaSG9G?=
 =?utf-8?B?TFBOZWRvOU5YV0RraGVsSHVra1pINUl4MC9ObUwzdWVad0lhYm5QZkZ2NzhQ?=
 =?utf-8?B?VDNYQkEvaUFpUnA1SjBCdnIyZFZlMDlZcGVhZjR2bUx5WDBDRFU1SG9QR1dI?=
 =?utf-8?B?S0NuY1Z3RWVJdmFkOExLOHlzQytuVUZ1aExFanVHZTk2MWQvb1dza3VnS1dB?=
 =?utf-8?B?ZS82WExTVzRxcWl2QUdlbDRSS1Y5cjJ1YlZweWFYZ1hWSWEwazRseWsrUUpq?=
 =?utf-8?B?RFpGRXJXZFRvSEVrK0MxWjVqcmd2TWI3Q2VmWkU2a0NpM2xpSDhmdUNYRXRE?=
 =?utf-8?B?ZXBpMlNITnBLMTNBRjNkWlExdEZ2Y2lpODN2NGIyU1puZ3lwNkZkTDZ1cVIx?=
 =?utf-8?B?dkFHUHE0YytlVkdZdk1IczV5NDRNYU5CVXZkVnNxRnIwUnh2WTMrUDN4NHc1?=
 =?utf-8?B?VnIrS0pjZW5SeFVSOUlIUjR4NXhienBsYjk1eDh6NnVvZ2s3UFNQNDh3ZWI4?=
 =?utf-8?B?RFVBbm91eUUrZWxSeUdRbkh6YUN1SjlVM2pvbUpGM0dQYk02Rll3R3VrNEQ2?=
 =?utf-8?B?SW5PZzB3dVJpS3VhMURTYUhxeWJCTzlYWTJkNm8vVDQzMVo4bFplelFsTml3?=
 =?utf-8?B?VldaVFlpOFlhZXEvSTVGUjVuQkkvNzMyOHFBK2pBRlhIRHJsUmR5aWsrOXhD?=
 =?utf-8?B?dzVrU0YzM0RmNitZV0s2YmMwSUV3L0pIa3JyblhSdncyNVUzeWVKYjhhTDhY?=
 =?utf-8?B?SFlzZmVGS28wZkhQSW9GNjJyQnhHcDlrbGVWMVQvK3I2QjlwYU56MmRBNyta?=
 =?utf-8?B?Tm5BTThqU2NhelBXTHZ3QU5Tc0lmR1J3cXE5d2ZuK1Y5eHVEWGs5SU9nNFFH?=
 =?utf-8?B?d1gxTldGR3grdEFJTmNJZ1dBR1prZmRDUGcyWjZHMlNNV25lejNLb214Q1ZB?=
 =?utf-8?B?RmoxUTdBMlNiNm9YenBIbVdBTWZsZi8vcDRRNkZ4UlY3RU5zNUQ4U0YxSlJs?=
 =?utf-8?B?TXBxUk1MdUg3VVpwaHpRNXBWbFZtMUNGZStuY3dYbFZ4THRzR0ZHZUwrRE9C?=
 =?utf-8?B?dGRnZnhaOWpXMGpzUWlQVzNOWTd5OHVkL1lYaTJZN29mMFJCQ1c3c1IyWWlR?=
 =?utf-8?B?eG9ONWxaZ3ZpckpqMDdjMXd2N3NpSGZNZzdCck9sNGF1VEFvbm1NVmpXdGNN?=
 =?utf-8?B?bkkvOUhra2tNSXlidW94RHNWc25GNnlTOWVKcS9JMEFaWXFJZlFUY0JNNWRD?=
 =?utf-8?Q?7g4b1sGeFicRzQuDSUfd0IxZJ?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 70f35d3b-1fa7-4c81-2ef2-08dbd60274c8
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Oct 2023 09:03:44.1670
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: +NHnJuS7BcMnZkddJfFH1pcKAD72x4CbrFgK95FsN0eNdJeo4rb8KfHJWTZ3J+bDRT7mynwFNnUqmR77LgKU1g==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS5PR04MB10041

On 26.10.2023 10:34, Roger Pau Monné wrote:
> On Thu, May 11, 2023 at 02:06:46PM +0200, Jan Beulich wrote:
>> ... in order to also deny Dom0 access through the alias ports. Without
>> this it is only giving the impression of denying access to both PICs.
>> Unlike for CMOS/RTC, do detection very early, to avoid disturbing normal
>> operation later on.
>>
>> Like for CMOS/RTC a fundamental assumption of the probing is that reads
>> from the probed alias port won't have side effects in case it does not
>> alias the respective PIC's one.
> 
> I'm slightly concerned about this probing.
> 
> Also I'm unsure we can fully isolate the hardware domain like this.
> Preventing access to the non-aliased ports is IMO helpful for domains
> to realize the PIT is not available, but in any case such accesses
> shouldn't happen in the first place, as dom0 must be modified to run
> in such mode.

That's true for PV Dom0, but not necessarily for PVH. Plus by denying
access to the aliases we also guard against bugs in Dom0, if some
component thinks there's something else at those ports (as they
indeed were used for other purposes by various vendors).

>> @@ -492,10 +492,17 @@ int __init dom0_setup_permissions(struct
>>  
>>      /* Modify I/O port access permissions. */
>>  
>> -    /* Master Interrupt Controller (PIC). */
>> -    rc |= ioports_deny_access(d, 0x20, 0x21);
>> -    /* Slave Interrupt Controller (PIC). */
>> -    rc |= ioports_deny_access(d, 0xA0, 0xA1);
>> +    for ( offs = 0, i = pic_alias_mask & -pic_alias_mask ?: 2;
>> +          offs <= pic_alias_mask; offs += i )
> 
> I'm a bit lost with this, specifically:
> 
> i = pic_alias_mask & -pic_alias_mask ?: 2
> 
> Which is then used as the increment step in
> 
> offs += i
> 
> I could see the usage of pic_alias_mask & -pic_alias_mask in order to
> find the first offset, but afterwards don't you need to increment at
> single bit left shifts in order to test all possibly set bits in
> pic_alias_mask?

No, the smallest sensible increment is the lowest bit set in
pic_alias_mask. There's specifically no shifting involved here (just
mentioning it because you use the word). E.g. if the aliasing was at
bits 2 and 3 (pic_alias_mask=0x0c), we'd need to deny access to 20/21,
24/25, 28/29, and 2C/2D, i.e. at an increment of 4.

>> --- a/xen/arch/x86/i8259.c
>> +++ b/xen/arch/x86/i8259.c
>> @@ -19,6 +19,7 @@
>>  #include <xen/delay.h>
>>  #include <asm/apic.h>
>>  #include <asm/asm_defns.h>
>> +#include <asm/setup.h>
>>  #include <io_ports.h>
>>  #include <irq_vectors.h>
>>  
>> @@ -332,6 +333,55 @@ void __init make_8259A_irq(unsigned int
>>      irq_to_desc(irq)->handler = &i8259A_irq_type;
>>  }
>>  
>> +unsigned int __initdata pic_alias_mask;
> 
> Should this be __hwdom_initdata?  I see it gets used in an __init
> function, so I guess this all permissions stuff is not really indented
> for a late hardware domain to use?

Late hwdom "inherits" Dom0's permissions (really the permissions of the
two domains are swapped in late_hwdom_init(), leaving Dom0 with no
permissions at all by default).

>> +static void __init probe_pic_alias(void)
>> +{
>> +    unsigned int mask = 0x1e;
>> +    uint8_t val = 0;
>> +
>> +    /*
>> +     * The only properly r/w register is OCW1.  While keeping the master
>> +     * fully masked (thus also masking anything coming through the slave),
>> +     * write all possible 256 values to the slave's base port, and check
>> +     * whether the same value can then be read back through any of the
>> +     * possible alias ports.  Probing just the slave of course builds on the
>> +     * assumption that aliasing is identical for master and slave.
>> +     */
>> +
>> +    outb(0xff, 0x21); /* Fully mask master. */
>> +
>> +    do {
>> +        unsigned int offs;
>> +
>> +        outb(val, 0xa1);
>> +
>> +        /* Try to make sure we're actually having a PIC here. */
>> +        if ( inb(0xa1) != val )
>> +        {
>> +            mask = 0;
>> +            break;
>> +        }
>> +
>> +        for ( offs = mask & -mask; offs <= mask; offs <<= 1 )
>> +        {
>> +            if ( !(mask & offs) )
>> +                continue;
>> +            if ( inb(0xa1 + offs) != val )
>> +                mask &= ~offs;
>> +        }
>> +    } while ( mask && (val += 0x0d) );  /* Arbitrary uneven number. */
>> +
>> +    outb(cached_A1, 0xa1); /* Restore slave IRQ mask. */
>> +    outb(cached_21, 0x21); /* Restore master IRQ mask. */
>> +
>> +    if ( mask )
>> +    {
>> +        dprintk(XENLOG_INFO, "PIC aliasing mask: %02x\n", mask);
>> +        pic_alias_mask = mask;
>> +    }
>> +}
>> +
>>  static struct irqaction __read_mostly cascade = { no_action, "cascade", NULL};
>>  
>>  void __init init_IRQ(void)
>> @@ -342,6 +392,8 @@ void __init init_IRQ(void)
>>  
>>      init_8259A(0);
>>  
>> +    probe_pic_alias();
> 
> Could we use 8259A instead of pic in the function name and mask
> variable?  Just so that it's consistent with how we refer to the PIC
> in other parts of the code.

I can certainly switch, no problem. For the variable it would be i8259A then,
though.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 09:26:09 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 09:26:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623618.971619 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvwcq-00022J-CQ; Thu, 26 Oct 2023 09:26:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623618.971619; Thu, 26 Oct 2023 09: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 1qvwcq-00022C-9s; Thu, 26 Oct 2023 09:26:00 +0000
Received: by outflank-mailman (input) for mailman id 623618;
 Thu, 26 Oct 2023 09: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=jpsH=GI=casper.srs.infradead.org=BATV+1fb9ca25523a2d41ea1b+7368+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qvwcm-00020s-VP
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 09:25:58 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id a7342ffe-73e1-11ee-9b0e-b553b5be7939;
 Thu, 26 Oct 2023 11:25:53 +0200 (CEST)
Received: from [2001:8b0:10b:5:5bd0:63a6:23b2:1881]
 (helo=u3832b3a9db3152.ant.amazon.com)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qvwcK-00EBcl-9p; Thu, 26 Oct 2023 09:25: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: a7342ffe-73e1-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=MIME-Version:Content-Type:References:
	In-Reply-To:Date:Cc:To:From:Subject:Message-ID:Sender:Reply-To:
	Content-Transfer-Encoding:Content-ID:Content-Description;
	bh=gVh7jYr/KmVThfs7mFeaU4q6oYx7NXNKmPGItcCdang=; b=YwyRHv3KdtfisXeiB4VkEDFI7i
	cUMITxip+TNbuevw0Xktt+1t/3QtQB1onP1vntpwls6GhZKa3Bc4RHHo8iUf9EvvcAmnmS6yO6QcN
	T/yXvalzw0znJbuk9Za810sT290kkB+dYtQqlC5YWD5/DG9bqoRt4fdqYq+kfsxk+2eSowcCGLYXv
	7g/BB/sFmrqccEPGEareZ9Q1wHJPdZM7m0BM/o0/7IsLBCyHN0vKrtGdfRbF3SwYfYxVFBL/JCzKr
	ilwTArcp2gIC8Mxjta9KcXEiKznNm9oER3qKilaL9Da3zf/OYVjx+OCrxz1ZsCQgKs1PU+9kl4AEl
	hGsWhwyg==;
Message-ID: <dfed5bba4882921b2c0fe685c9be4444d7e4bd45.camel@infradead.org>
Subject: Re: [PATCH v3 28/28] docs: update Xen-on-KVM documentation
From: David Woodhouse <dwmw2@infradead.org>
To: Kevin Wolf <kwolf@redhat.com>, Andrew Cooper <andrew.cooper3@citrix.com>
Cc: Eric Blake <eblake@redhat.com>, qemu-devel@nongnu.org, Hanna Reitz
 <hreitz@redhat.com>, Stefano Stabellini <sstabellini@kernel.org>, Anthony
 Perard <anthony.perard@citrix.com>, Paul Durrant <paul@xen.org>, 
 =?ISO-8859-1?Q?Marc-Andr=E9?= Lureau <marcandre.lureau@redhat.com>, Paolo
 Bonzini <pbonzini@redhat.com>, "Michael S. Tsirkin" <mst@redhat.com>,
 Marcel Apfelbaum <marcel.apfelbaum@gmail.com>, Richard Henderson
 <richard.henderson@linaro.org>, Eduardo Habkost <eduardo@habkost.net>,
 Jason Wang <jasowang@redhat.com>, Marcelo Tosatti <mtosatti@redhat.com>,
 qemu-block@nongnu.org,  xen-devel@lists.xenproject.org,
 kvm@vger.kernel.org, Bernhard Beschow <shentey@gmail.com>, Joel Upham
 <jupham125@gmail.com>
Date: Thu, 26 Oct 2023 10:25:27 +0100
In-Reply-To: <ZToizYcPjO0Zt52N@redhat.com>
References: <20231025145042.627381-1-dwmw2@infradead.org>
	 <20231025145042.627381-29-dwmw2@infradead.org>
	 <6vbpkrebc7fpypbv2t7jbs7m3suxwbqqykeomzfxpenjj2sogd@rphcppcl4inl>
	 <4a10a50e5469480a82cb993dedbff10c3d777082.camel@infradead.org>
	 <21e8a265-bf5a-464c-86bc-f0fd7b5eb108@citrix.com>
	 <ZToizYcPjO0Zt52N@redhat.com>
Content-Type: multipart/signed; micalg="sha-256"; protocol="application/pkcs7-signature";
	boundary="=-ohVbmht2/SW8r1of864B"
User-Agent: Evolution 3.44.4-0ubuntu2 
MIME-Version: 1.0
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html


--=-ohVbmht2/SW8r1of864B
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Thu, 2023-10-26 at 10:26 +0200, Kevin Wolf wrote:
>=20
> > > > > +.. parsed-literal::
> > > > > +
> > > > > +=C2=A0 |qemu_system| --accel kvm,xen-version=3D0x40011,kernel-ir=
qchip=3Dsplit \\
> > > > > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 -chardev stdio,id=3Dchar0 -=
device xen-console,chardev=3Dchar0 \\
> > > > > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 -display none=C2=A0 -m 1G=
=C2=A0 -kernel xen -initrd bzImage \\
> > > > > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 -append "pv-shim console=3D=
xen,pv -- console=3Dhvc0 root=3D/dev/xvda1" \\
> > > > > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 -drive file=3D${GUEST_IMAGE=
},if=3Dxen
> > > > Is the space between -- and console=3D intentionsl?
> > > Yes, that one is correct. The -- is how you separate Xen's command li=
ne
> > > (on the left) from the guest kernel command line (on the right).
> >=20
> > To expand on this a bit.
> >=20
> > Multiboot1 supports multiple modules but only a single command line.=C2=
=A0 As
> > one of the modules passed to Xen is the dom0 kernel, we need some way t=
o
> > pass it's command line, hence the " -- ".
>=20
> That's not right, even Multiboot 1 contains a 'string' field in the
> module structure that is defined to typically hold a command line. The
> exact meaning is OS dependent, so Xen could use it however it wants.
>=20
> In QEMU (and I believe this is the same behaviour as in GRUB),
> everything before the space in an -initrd argument is treated as a
> filename to load, everything after it is just passed as the command
> line.
>=20
> So it would have been entirely possible to use -initrd 'bzImage
> console=3Dhvc0 root=3D/dev/xvda1' if Xen worked like that.

Xen does allow that too. I didn't realise our multiboot loader did though.

So yes, you *can* use  -initrd 'bzImage root=3D/dev/xvda1'.=20

And you can even load more than one module, it seems. Separate them by
commas, so -initrd 'bzImage,initrd.img' should work.

You can even do both at the same time. If you have commas on the kernel
command line, *double* them:

 -initrd 'bzImage root=3D/dev/xvda earlyprintk=3Dxen,,keep,initrd.img'

I'll update the documentation accordingly.

--=-ohVbmht2/SW8r1of864B
Content-Type: application/pkcs7-signature; name="smime.p7s"
Content-Disposition: attachment; filename="smime.p7s"
Content-Transfer-Encoding: base64

MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgEFADCABgkqhkiG9w0BBwEAAKCCEkQw
ggYQMIID+KADAgECAhBNlCwQ1DvglAnFgS06KwZPMA0GCSqGSIb3DQEBDAUAMIGIMQswCQYDVQQG
EwJVUzETMBEGA1UECBMKTmV3IEplcnNleTEUMBIGA1UEBxMLSmVyc2V5IENpdHkxHjAcBgNVBAoT
FVRoZSBVU0VSVFJVU1QgTmV0d29yazEuMCwGA1UEAxMlVVNFUlRydXN0IFJTQSBDZXJ0aWZpY2F0
aW9uIEF1dGhvcml0eTAeFw0xODExMDIwMDAwMDBaFw0zMDEyMzEyMzU5NTlaMIGWMQswCQYDVQQG
EwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYD
VQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50
aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC
AQEAyjztlApB/975Rrno1jvm2pK/KxBOqhq8gr2+JhwpKirSzZxQgT9tlC7zl6hn1fXjSo5MqXUf
ItMltrMaXqcESJuK8dtK56NCSrq4iDKaKq9NxOXFmqXX2zN8HHGjQ2b2Xv0v1L5Nk1MQPKA19xeW
QcpGEGFUUd0kN+oHox+L9aV1rjfNiCj3bJk6kJaOPabPi2503nn/ITX5e8WfPnGw4VuZ79Khj1YB
rf24k5Ee1sLTHsLtpiK9OjG4iQRBdq6Z/TlVx/hGAez5h36bBJMxqdHLpdwIUkTqT8se3ed0PewD
ch/8kHPo5fZl5u1B0ecpq/sDN/5sCG52Ds+QU5O5EwIDAQABo4IBZDCCAWAwHwYDVR0jBBgwFoAU
U3m/WqorSs9UgOHYm8Cd8rIDZsswHQYDVR0OBBYEFAnA8vwL2pTbX/4r36iZQs/J4K0AMA4GA1Ud
DwEB/wQEAwIBhjASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEF
BQcDBDARBgNVHSAECjAIMAYGBFUdIAAwUAYDVR0fBEkwRzBFoEOgQYY/aHR0cDovL2NybC51c2Vy
dHJ1c3QuY29tL1VTRVJUcnVzdFJTQUNlcnRpZmljYXRpb25BdXRob3JpdHkuY3JsMHYGCCsGAQUF
BwEBBGowaDA/BggrBgEFBQcwAoYzaHR0cDovL2NydC51c2VydHJ1c3QuY29tL1VTRVJUcnVzdFJT
QUFkZFRydXN0Q0EuY3J0MCUGCCsGAQUFBzABhhlodHRwOi8vb2NzcC51c2VydHJ1c3QuY29tMA0G
CSqGSIb3DQEBDAUAA4ICAQBBRHUAqznCFfXejpVtMnFojADdF9d6HBA4kMjjsb0XMZHztuOCtKF+
xswhh2GqkW5JQrM8zVlU+A2VP72Ky2nlRA1GwmIPgou74TZ/XTarHG8zdMSgaDrkVYzz1g3nIVO9
IHk96VwsacIvBF8JfqIs+8aWH2PfSUrNxP6Ys7U0sZYx4rXD6+cqFq/ZW5BUfClN/rhk2ddQXyn7
kkmka2RQb9d90nmNHdgKrwfQ49mQ2hWQNDkJJIXwKjYA6VUR/fZUFeCUisdDe/0ABLTI+jheXUV1
eoYV7lNwNBKpeHdNuO6Aacb533JlfeUHxvBz9OfYWUiXu09sMAviM11Q0DuMZ5760CdO2VnpsXP4
KxaYIhvqPqUMWqRdWyn7crItNkZeroXaecG03i3mM7dkiPaCkgocBg0EBYsbZDZ8bsG3a08LwEsL
1Ygz3SBsyECa0waq4hOf/Z85F2w2ZpXfP+w8q4ifwO90SGZZV+HR/Jh6rEaVPDRF/CEGVqR1hiuQ
OZ1YL5ezMTX0ZSLwrymUE0pwi/KDaiYB15uswgeIAcA6JzPFf9pLkAFFWs1QNyN++niFhsM47qod
x/PL+5jR87myx5uYdBEQkkDc+lKB1Wct6ucXqm2EmsaQ0M95QjTmy+rDWjkDYdw3Ms6mSWE3Bn7i
5ZgtwCLXgAIe5W8mybM2JzCCBhQwggT8oAMCAQICEQDGvhmWZ0DEAx0oURL6O6l+MA0GCSqGSIb3
DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYD
VQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28g
UlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMB4XDTIyMDEwNzAw
MDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJARYTZHdtdzJAaW5mcmFkZWFkLm9y
ZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3GpC2bomUqk+91wLYBzDMcCj5C9m6
oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZHh7htyAkWYVoFsFPrwHounto8xTsy
SSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT9YgcBqKCo65pTFmOnR/VVbjJk4K2
xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNjP+qDrh0db7PAjO1D4d5ftfrsf+kd
RR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy2U+eITZ5LLE5s45mX2oPFknWqxBo
bQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3BgBEmfsYWlBXO8rVXfvPgLs32VdV
NZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/7auNVRmPB3v5SWEsH8xi4Bez2V9U
KxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmdlFYhAflWKQ03Ufiu8t3iBE3VJbc2
5oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9aelIl6vtbhMA+l0nfrsORMa4kobqQ5
C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMBAAGjggHMMIIByDAfBgNVHSMEGDAW
gBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeDMcimo0oz8o1R1Nver3ZVpSkwDgYD
VR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYwFAYIKwYBBQUHAwQGCCsGAQUFBwMC
MEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYBBQUHAgEWF2h0dHBzOi8vc2VjdGln
by5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9jcmwuc2VjdGlnby5jb20vU2VjdGln
b1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1haWxDQS5jcmwwgYoGCCsGAQUFBwEB
BH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdvLmNvbS9TZWN0aWdvUlNBQ2xpZW50
QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAjBggrBgEFBQcwAYYXaHR0cDovL29j
c3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5mcmFkZWFkLm9yZzANBgkqhkiG9w0B
AQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQvQ/fzPXmtR9t54rpmI2TfyvcKgOXp
qa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvIlSPrzIB4Z2wyIGQpaPLlYflrrVFK
v9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9ChWFfgSXvrWDZspnU3Gjw/rMHrGnql
Htlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0whpBtXdyDjzBtQTaZJ7zTT/vlehc/
tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9IzCCBhQwggT8oAMCAQICEQDGvhmW
Z0DEAx0oURL6O6l+MA0GCSqGSIb3DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3Jl
YXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0
ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJl
IEVtYWlsIENBMB4XDTIyMDEwNzAwMDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJ
ARYTZHdtdzJAaW5mcmFkZWFkLm9yZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3
GpC2bomUqk+91wLYBzDMcCj5C9m6oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZH
h7htyAkWYVoFsFPrwHounto8xTsySSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT
9YgcBqKCo65pTFmOnR/VVbjJk4K2xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNj
P+qDrh0db7PAjO1D4d5ftfrsf+kdRR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy
2U+eITZ5LLE5s45mX2oPFknWqxBobQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3
BgBEmfsYWlBXO8rVXfvPgLs32VdVNZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/
7auNVRmPB3v5SWEsH8xi4Bez2V9UKxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmd
lFYhAflWKQ03Ufiu8t3iBE3VJbc25oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9ae
lIl6vtbhMA+l0nfrsORMa4kobqQ5C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMB
AAGjggHMMIIByDAfBgNVHSMEGDAWgBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeD
Mcimo0oz8o1R1Nver3ZVpSkwDgYDVR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYw
FAYIKwYBBQUHAwQGCCsGAQUFBwMCMEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYB
BQUHAgEWF2h0dHBzOi8vc2VjdGlnby5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9j
cmwuc2VjdGlnby5jb20vU2VjdGlnb1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1h
aWxDQS5jcmwwgYoGCCsGAQUFBwEBBH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdv
LmNvbS9TZWN0aWdvUlNBQ2xpZW50QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAj
BggrBgEFBQcwAYYXaHR0cDovL29jc3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5m
cmFkZWFkLm9yZzANBgkqhkiG9w0BAQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQv
Q/fzPXmtR9t54rpmI2TfyvcKgOXpqa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvI
lSPrzIB4Z2wyIGQpaPLlYflrrVFKv9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9Ch
WFfgSXvrWDZspnU3Gjw/rMHrGnqlHtlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0w
hpBtXdyDjzBtQTaZJ7zTT/vlehc/tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9
IzGCBMcwggTDAgEBMIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVz
dGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMT
NVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEA
xr4ZlmdAxAMdKFES+jupfjANBglghkgBZQMEAgEFAKCCAeswGAYJKoZIhvcNAQkDMQsGCSqGSIb3
DQEHATAcBgkqhkiG9w0BCQUxDxcNMjMxMDI2MDkyNTI3WjAvBgkqhkiG9w0BCQQxIgQgN1ZPYe7g
4S/JT+ZQG27oS2uZc8NS72C3it7mmsfjI60wgb0GCSsGAQQBgjcQBDGBrzCBrDCBljELMAkGA1UE
BhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEYMBYG
A1UEChMPU2VjdGlnbyBMaW1pdGVkMT4wPAYDVQQDEzVTZWN0aWdvIFJTQSBDbGllbnQgQXV0aGVu
dGljYXRpb24gYW5kIFNlY3VyZSBFbWFpbCBDQQIRAMa+GZZnQMQDHShREvo7qX4wgb8GCyqGSIb3
DQEJEAILMYGvoIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVy
MRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNl
Y3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEAxr4Z
lmdAxAMdKFES+jupfjANBgkqhkiG9w0BAQEFAASCAgCYGdUT955fS9CWiiPv/dnCiziucmxtCWqz
zYS8Gbq+3VmfjHN4DU1PF4FLASWLOyeRED+FCQXwxV3PKght1kl3LlJZ2xSo7L7KUYrTNKClc6Wp
9jgr274yhMmsKD0zF6TddlbNM8hZzQSNBPIYkjuHL+laHBzRD5PT1m6hL29fKzNOs/YRbBT2qufP
YGvCWUMET55JweYmWdv8bPXHLGAfLxBDKLJM0mXKZufXlHUqx0r7g7sbn1+0ouKzlnFjdT8EH0RD
vXHOEpwdepvR4iv14bYFGmEL/WPGC9jektc/2HxidTMnvFcaNq1vqsGFZ+dmsB9Tsg1l3VOG8FNe
BAPjUy8GFMwsi9k46dvrO9qzQTBeYFmwCIZNZ3dAm70vq5JNn84O9JMDAPr2ZSUequDM4ptqjFE7
joxuXIDgjEgTk+mS/T7KyCIU7iSsUVj9ZY7+qkuObthrAocU2h6Hq9fQP/JXnpKeL/8P1neF2i+E
mupd2DhHJxOCqhZbvJfLKLSs7c0kRrCPSogeSBD+XN+Evaq4cABJg9ag/IxFKhMMi7xtE/K7isoy
7vTHJ3qXjODO+fnCvig0K0VFcLRtAo3uVlJ3C7WXcCRtzN5ZkfBgRR+OfjrLlg2uekQxQTImm2yN
fWR+n5tmGMwOIcDMo4jwjdgXCNz19Fi7GGAmRsxnFAAAAAAAAA==


--=-ohVbmht2/SW8r1of864B--


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 09:26:40 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 09:26:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623620.971630 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvwdT-0002ex-L1; Thu, 26 Oct 2023 09:26:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623620.971630; Thu, 26 Oct 2023 09: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 1qvwdT-0002eq-I1; Thu, 26 Oct 2023 09:26:39 +0000
Received: by outflank-mailman (input) for mailman id 623620;
 Thu, 26 Oct 2023 09:26: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=PMne=GI=arm.com=Wei.Chen@srs-se1.protection.inumbo.net>)
 id 1qvwdR-0002dZ-Nb
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 09:26:37 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur04on2044.outbound.protection.outlook.com [40.107.7.44])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id c25a7599-73e1-11ee-98d5-6d05b1d4d9a1;
 Thu, 26 Oct 2023 11:26:36 +0200 (CEST)
Received: from AS4P192CA0038.EURP192.PROD.OUTLOOK.COM (2603:10a6:20b:658::7)
 by GV1PR08MB8571.eurprd08.prod.outlook.com (2603:10a6:150:83::13) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.19; Thu, 26 Oct
 2023 09:26:06 +0000
Received: from AM4PEPF00025F9C.EURPRD83.prod.outlook.com
 (2603:10a6:20b:658:cafe::a7) by AS4P192CA0038.outlook.office365.com
 (2603:10a6:20b:658::7) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.22 via Frontend
 Transport; Thu, 26 Oct 2023 09:26:06 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM4PEPF00025F9C.mail.protection.outlook.com (10.167.16.11) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6954.0 via Frontend Transport; Thu, 26 Oct 2023 09:26:05 +0000
Received: ("Tessian outbound 5d213238733f:v228");
 Thu, 26 Oct 2023 09:26:05 +0000
Received: from 57ba27468200.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 C5EBE758-B711-445F-8A60-C1C73A8B5870.1; 
 Thu, 26 Oct 2023 09:25:58 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 57ba27468200.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Thu, 26 Oct 2023 09:25:58 +0000
Received: from PAXPR08MB7420.eurprd08.prod.outlook.com (2603:10a6:102:2b9::9)
 by AS1PR08MB7588.eurprd08.prod.outlook.com (2603:10a6:20b:474::21)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.33; Thu, 26 Oct
 2023 09:25:56 +0000
Received: from PAXPR08MB7420.eurprd08.prod.outlook.com
 ([fe80::7076:8afd:7afd:f9e]) by PAXPR08MB7420.eurprd08.prod.outlook.com
 ([fe80::7076:8afd:7afd:f9e%6]) with mapi id 15.20.6933.022; Thu, 26 Oct 2023
 09:25: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: c25a7599-73e1-11ee-98d5-6d05b1d4d9a1
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=+OUpcsAy2JZcZRdBT4rBrPntr+IJg2TYEjU6YJU+mVs=;
 b=ryPlI31uD9VbyMRDVmQ7e4ktkm1lz8GGpnTLciYkfUoFUmyqbq2KOqUxa8Jo1zMGeM7X5gnq5fXjI1oWTnaRjK58iWo58jshcJN+y/ReWR+/jdPG/Us4zYVQTqj9eTiBscR1aXtrzK6K9f/rsBWfcK5db8Mjv+rIWEGy0i3itJU=
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: 09d05039b540a7b6
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=kSBhBazPp6SM+ie5rOr+vBBCR9U90PC6y1Vub14+CjrA5gfU8HpD7rEQBdCv0/E3RkhgjlW71FtoDROYfiq8aorlWDLrFxu7fQS3ayrT9D2vazakGA8xcyBfWozyz0fScsGv+GipriSZJQjABcmS53Ue5tpon+FEM6o0txyYtdKg2xg0D0HP2zs4nelCbcZI6lSOVXC8alakKtC+gtURcI8P4JnXbvs3ENuuHHzyjv4yhOUX1+MwxA5qJPb0wVX0hW1vSfnl/bLphIW52lBVNyW+MctlRgN+MiJftvf6lAqfrFztEyl11rq1h+jtwR382V+nA+ay/12OCYhX8r9fxw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=+OUpcsAy2JZcZRdBT4rBrPntr+IJg2TYEjU6YJU+mVs=;
 b=dNvOBoH8K5wFl3byThasiWlmTCSKXOv8LghQYRMeBK0HskNMwnV/ay1Z9mYl1J00Zk3GyLazLDBJThVSJJ6SQCakY8G3SFCoQJ3SAmcAdRV0kI31eh0fHsu6k2zNKrZfDILRb96R9lQSVRksd76Hkc2m1rZl/tnD6jdKWv52GVo7MrAMExYjcEJMycpvCz3UMvkeNBseKAqHqh9KYNRWaZMs+HiceBXq5TPEziIiJ9kHgCc3jRliKp2o5rtDrWBsVoEcQ/h1CpsLcRKtxl5ltGi1XhArNyrlNLGUi74AjWkZhRRTEVOKMjX2mkhy2aWIlMpwMRdwCu8InVVZD9OZMQ==
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=+OUpcsAy2JZcZRdBT4rBrPntr+IJg2TYEjU6YJU+mVs=;
 b=ryPlI31uD9VbyMRDVmQ7e4ktkm1lz8GGpnTLciYkfUoFUmyqbq2KOqUxa8Jo1zMGeM7X5gnq5fXjI1oWTnaRjK58iWo58jshcJN+y/ReWR+/jdPG/Us4zYVQTqj9eTiBscR1aXtrzK6K9f/rsBWfcK5db8Mjv+rIWEGy0i3itJU=
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
Message-ID: <27a09231-be82-4fa0-89e9-7d2b3f1c4940@arm.com>
Date: Thu, 26 Oct 2023 17:25:49 +0800
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN PATCH 2/4] arm/vgic: Move get/put irq to a wider scope
To: Mykyta Poturai <Mykyta_Poturai@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>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
References: <cover.1698225630.git.mykyta_poturai@epam.com>
 <89ca664d00a3cdcf3f68d8ae0c4a6c7b76965120.1698225630.git.mykyta_poturai@epam.com>
Content-Language: en-US
From: Wei Chen <Wei.Chen@arm.com>
In-Reply-To: <89ca664d00a3cdcf3f68d8ae0c4a6c7b76965120.1698225630.git.mykyta_poturai@epam.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: SI2PR02CA0007.apcprd02.prod.outlook.com
 (2603:1096:4:194::23) To PAXPR08MB7420.eurprd08.prod.outlook.com
 (2603:10a6:102:2b9::9)
MIME-Version: 1.0
X-MS-TrafficTypeDiagnostic:
	PAXPR08MB7420:EE_|AS1PR08MB7588:EE_|AM4PEPF00025F9C:EE_|GV1PR08MB8571:EE_
X-MS-Office365-Filtering-Correlation-Id: 00706f02-a3f9-4d05-b54b-08dbd60594a0
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:
 HaMzSnL8T24SXFmFIK8kMYWzIaEhNSPWyqFZZxCBnjZfFXJif57C47IUk6uxbHV8skNB34gJ5t8GWFbqq6/c+ZN2rFNTaeVu3uDmF3D7wNayZqRCfqeL1FbJS2hRMgk5RmhpLLYtADIuZb/+9ceFLV9h/RRHM4tgAA6EQ7prNz0C/IdXmNrl6KKNVsY8KvBQltyQA+0AYSlzPe/95rM4MSGt7aGGkBhoGZgKHdECSzR9Y337yvFRWlGcvjbeanJC6eitY37VQChKZ0d/G9Rk9bZ/Tyxr2PjUGncHolRhj9NIxM/0tvb0Am3yjvd/d7wC2KMsUrY69hGYD291zbYaued9/V3Yvm5pK7eSLfV0FGrd3shEEVeGReGgJsZ8s3C6px1pg0iIjawO3apdSukr7rTY8AEX99+PfZ5+OWb1TuGcH0/RYNzHmEuKhj36f+pwHM+i61xzuhsYW7F9sTsq7hfCzdToybdmoxk/oj3Wru344cmhXoYFffCssbDj7Ybdgfx1X9CXgGT/Br8dHSLozM/8ATv2ybs6tawyATLXNyr5GqFkuF5aRhz7M9K+y/FNGcFQEqm3jLOIV2rhTo6NhJ2ikaqB/gzx0bWsts84JxlM7dGLdZlJB0n0nrCxm7Lxf+Gqw1w/0jDto2VhLpG5vQ==
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:PAXPR08MB7420.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366004)(396003)(346002)(136003)(39860400002)(376002)(230922051799003)(1800799009)(64100799003)(451199024)(186009)(2906002)(86362001)(38100700002)(41300700001)(6506007)(54906003)(110136005)(316002)(66476007)(66556008)(6666004)(478600001)(6486002)(6512007)(53546011)(83380400001)(31696002)(5660300002)(36756003)(4326008)(2616005)(8676002)(8936002)(66946007)(26005)(31686004)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS1PR08MB7588
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:
 AM4PEPF00025F9C.EURPRD83.prod.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	6500c083-484c-40e9-e469-08dbd6058e9e
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	LktVeWYl8T1bnOetIYdHyXDyY6LR/CJFag0SVMLF72w4dTNmiqRWp984TnaSXQFRfHBkYRb9fxIIMWrR5l3q7awM8qc4oHtobXBM7JmWmE2/qZSktpNWSdy1kAtsLOlw1g9Yuaj6at9B27ab5ANYnOL9GRwj6JfCBCRU+KSiNFqR28URoZdeaFPE7Hp6F1EeWQWI9B4Dd9k7LivSlQlmMfLDkripcTyxHR0LOcNrIJ0CM84rvwTtV3wyU9Pda8LNMlBGMhaI97ydgTsaWfUwzVKFSyixleFtSikIk61FGybUlyfyZuwxzEocCyK4oa9S7TvXnVHbATpmpWlFwXww47OqYDsEZ3Hdt7oxWAWmsAXGLC7Rdzz+ULok4x8BnrooWFETNvNS936++KhwkmI0WTOOQNpQ9Zq3pTrakY74nf4WNjMpmhPsf+JLe4tapGNTsZwuO/T8RNPXUyv3nvoDtqwQDk0tq14dQh5dW0B6Iy1qWFSjiFLrX02L23ndTlEK8b/uwnIuUTviNeZFQ3u+E22hsa58l94Fc9NSgqPoVgYofwg6Oq7RZGuip95fSGlFJ7mR3Fy1Sn82ThVoJG8SRxaAgJYmcN7aUXg+DAeCVXY5r4QYOKsW/PPANtIGTPmn2jQn7qyjCu5xY0D+qk3rdsH+POuH6+YagopZ7MISNfcg3PlhHIlUPzKPUGzXOj6jlHJcyApej2rygBZ+eZ++L8KL7omF4ypxzrKSQ6TboDGlpEvELC7KKKhnlt7ZVl7u8vJ/MCW8Js2rYRVBkrldvw==
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)(136003)(346002)(396003)(230922051799003)(186009)(1800799009)(64100799003)(82310400011)(451199024)(46966006)(36840700001)(40470700004)(40460700003)(40480700001)(53546011)(6666004)(478600001)(6506007)(107886003)(2616005)(70206006)(70586007)(54906003)(6512007)(110136005)(36756003)(31696002)(86362001)(6486002)(36860700001)(336012)(47076005)(83380400001)(81166007)(82740400003)(26005)(356005)(41300700001)(8676002)(8936002)(4326008)(5660300002)(316002)(31686004)(2906002)(43740500002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Oct 2023 09:26:05.9329
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 00706f02-a3f9-4d05-b54b-08dbd60594a0
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:
	AM4PEPF00025F9C.EURPRD83.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV1PR08MB8571

Hi Mykyta,


On 2023/10/25 18:13, Mykyta Poturai wrote:
> We will need GICv3 code to access get/put irq to inject LPIs for new
> VGIC similar to how the old one uses irq_to_pending now. So move
> get/put irq to the same header file.
> 
> Signed-off-by: Mykyta Poturai <mykyta_poturai@epam.com>
> ---
>   xen/arch/arm/include/asm/vgic.h | 6 ++++++
>   xen/arch/arm/vgic/vgic.h        | 3 ---
>   2 files changed, 6 insertions(+), 3 deletions(-)
> 
> diff --git a/xen/arch/arm/include/asm/vgic.h b/xen/arch/arm/include/asm/vgic.h
> index 922779ce14..7216ce82b7 100644
> --- a/xen/arch/arm/include/asm/vgic.h
> +++ b/xen/arch/arm/include/asm/vgic.h
> @@ -387,6 +387,12 @@ void vgic_sync_from_lrs(struct vcpu *v);
>   
>   int vgic_vcpu_pending_irq(struct vcpu *v);
>   
> +#ifdef CONFIG_NEW_VGIC
> +struct vgic_irq *vgic_get_irq(struct domain *d, struct vcpu *vcpu,
> +                              uint32_t intid);
> +void vgic_put_irq(struct domain *d, struct vgic_irq *irq);
> +#endif
> +

When we move the put/get here and protect it with the CONFIG_NEW_VGIC, 
will the irq_to_pending also become invalid?
Similar to:
#if CONFIG_NEW_VGIC
struct vgic_irq *vgic_get_irq(struct domain *d, struct vcpu *vcpu,
                               uint32_t intid);
void vgic_put_irq(struct domain *d, struct vgic_irq *irq);
#else
extern struct pending_irq *irq_to_pending(struct vcpu *v, unsigned int irq);
#endif

If so, subsequent changes to this file will be confusing. Can we add a 
wrapper header file and include the specific vgic implementation header 
file through the CONFIG_NEW_VGIC macro?

Cheers,
Wei Chen

>   #endif /* __ASM_ARM_VGIC_H__ */
>   
>   /*
> diff --git a/xen/arch/arm/vgic/vgic.h b/xen/arch/arm/vgic/vgic.h
> index 534b24bcd3..c6bc3509a5 100644
> --- a/xen/arch/arm/vgic/vgic.h
> +++ b/xen/arch/arm/vgic/vgic.h
> @@ -45,9 +45,6 @@ static inline bool vgic_irq_is_mapped_level(struct vgic_irq *irq)
>       return irq->config == VGIC_CONFIG_LEVEL && irq->hw;
>   }
>   
> -struct vgic_irq *vgic_get_irq(struct domain *d, struct vcpu *vcpu,
> -                              uint32_t intid);
> -void vgic_put_irq(struct domain *d, struct vgic_irq *irq);
>   void vgic_queue_irq_unlock(struct domain *d, struct vgic_irq *irq,
>                              unsigned long flags);
>   void vgic_kick_vcpus(struct domain *d);


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 09:34:49 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 09:34:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623627.971640 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvwlI-0004lS-Jl; Thu, 26 Oct 2023 09:34:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623627.971640; Thu, 26 Oct 2023 09: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 1qvwlI-0004lL-FR; Thu, 26 Oct 2023 09:34:44 +0000
Received: by outflank-mailman (input) for mailman id 623627;
 Thu, 26 Oct 2023 09:34: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=PMne=GI=arm.com=Wei.Chen@srs-se1.protection.inumbo.net>)
 id 1qvwlH-0004lE-2l
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 09:34:43 +0000
Received: from EUR03-DBA-obe.outbound.protection.outlook.com
 (mail-dbaeur03on2062c.outbound.protection.outlook.com
 [2a01:111:f400:fe1a::62c])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id e28660e9-73e2-11ee-9b0e-b553b5be7939;
 Thu, 26 Oct 2023 11:34:39 +0200 (CEST)
Received: from DUZP191CA0040.EURP191.PROD.OUTLOOK.COM (2603:10a6:10:4f8::18)
 by PAXPR08MB7382.eurprd08.prod.outlook.com (2603:10a6:102:22d::6) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.33; Thu, 26 Oct
 2023 09:34:32 +0000
Received: from DB1PEPF00039232.eurprd03.prod.outlook.com
 (2603:10a6:10:4f8:cafe::7c) by DUZP191CA0040.outlook.office365.com
 (2603:10a6:10:4f8::18) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.22 via Frontend
 Transport; Thu, 26 Oct 2023 09:34:32 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DB1PEPF00039232.mail.protection.outlook.com (10.167.8.105) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6933.15 via Frontend Transport; Thu, 26 Oct 2023 09:34:32 +0000
Received: ("Tessian outbound 5d213238733f:v228");
 Thu, 26 Oct 2023 09:34:32 +0000
Received: from f294a52ad51d.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 D8508488-6B08-4F48-AD2C-A491E68C6983.1; 
 Thu, 26 Oct 2023 09:34:21 +0000
Received: from EUR01-HE1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id f294a52ad51d.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Thu, 26 Oct 2023 09:34:21 +0000
Received: from PAXPR08MB7420.eurprd08.prod.outlook.com (2603:10a6:102:2b9::9)
 by AM9PR08MB5873.eurprd08.prod.outlook.com (2603:10a6:20b:2dd::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.19; Thu, 26 Oct
 2023 09:34:17 +0000
Received: from PAXPR08MB7420.eurprd08.prod.outlook.com
 ([fe80::7076:8afd:7afd:f9e]) by PAXPR08MB7420.eurprd08.prod.outlook.com
 ([fe80::7076:8afd:7afd:f9e%6]) with mapi id 15.20.6933.022; Thu, 26 Oct 2023
 09:34: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: e28660e9-73e2-11ee-9b0e-b553b5be7939
ARC-Seal: i=2; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=pass;
 b=ZzxiIkevTjNr1eEUUJ0U8z2mg9uPGP3Tnd8XkcGOLS9/At6HWAwzncSDiglhomEyJKsQejTEB3IvF+VpArovhOs6AErT/d3OHlpA3cudQ2mmX6+6W/Mx0vhdcRZqLDQGtFO5ZvWI//01booVIA2jYa2aI0al7hohIHlz2rQxbk7YWf1fuSQL9/bjhXE6SwzQ+GB25ZrQbsn19YUfLN7cYWU0Icd9C795xQAi7Y0iNG0fYUrlki0SnZUZ6IKrpvY+4xK6XNS8APwdbG6zsjyxRyZHHDhJ6lcC8Duev1m7INsBlhaMaUvy39ZEXxf/UGs0RVQMd1uS68qQ/w4zU+da4w==
ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=8B2RKwdWOC2yQLkR0u6LTr3JDGQskLhj91dMDBOs14I=;
 b=fiIrQB4ZFlOEZs7pdZpIr951EXSjnVy/WFhAi8sKAt6E8LzgdvfDYPXjB0wmkcN6Oanq4SwYnm1B3WzzIcsRMO45oDWYdKQTmagdbaorZidU8h3iw9FH9ROX7BXG2aSdoXK5HI0EafMCIno8UXl4U8APGc9bMzAHual2t8twgFykrfZDXX0GyaU2eau1+he3bgF6opJxKvCiHIkkbps7MawjBpJfJQZr1h2d8j9x+W6b5H9C7QDflkVnpnQXDruOQ37En+6Xx7WFz2RcAwcf5MuY6O5RmDhAqBRfKS+EbPjZudLHts86kVUtksqgmn0UuTGbC3mxUFszKtS9BoblRQ==
ARC-Authentication-Results: i=2; mx.microsoft.com 1; spf=pass (sender ip is
 63.35.35.123) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=arm.com;
 dmarc=pass (p=none sp=none pct=100) action=none header.from=arm.com;
 dkim=pass (signature was verified) header.d=armh.onmicrosoft.com; arc=pass (0
 oda=1 ltdi=1 spf=[1,1,smtp.mailfrom=arm.com] dkim=[1,1,header.d=arm.com]
 dmarc=[1,1,header.from=arm.com])
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=8B2RKwdWOC2yQLkR0u6LTr3JDGQskLhj91dMDBOs14I=;
 b=U6W0fSg9npL5L7hBCImaoTl/re/D2/n/S6INckIUBPkt6wkZqXhGzfe/vIguRrBJI6T0io4rDUsbVtLPkdBtgnZdtnSNTUOPKQnId6l5diFRmLXO32TO2kP+hjmzuv+VLAaF7Vd9Na0Yfg0+D+vwxQ3Dn3M5NHBjTtj15qtgGy8=
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: 8da76a4ec092c157
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=VMcsCWgYB93e0OYCwL9P9XzaBf6S2nx1aEkwEuff3F23VHGkw1k55/Bh9Xp5dOU9faFDrrlEzuDEjJtYnOvPeVnOchDja4if6jlA4LaObMVhN3bUC87la022YHgPs8KknPQhM6izBvak9u5oDKzmOVcxe2Nn92PoZhvtAbG8W5K5FR2ZTsh6q/4zzvkZBD5FZFrL970YdYM7sHbGVxYFtyvZdm0u950ssALPvsVjtuiE7zupPvvzdPtpvM03R24LLD4MLGHEArQyZp45nkN70r/1as5XEWm3pii7VI+9y783iR2e6XVEecUvP8d5Kbo5+C+1+zZHjguWVxvDIej8Hw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=8B2RKwdWOC2yQLkR0u6LTr3JDGQskLhj91dMDBOs14I=;
 b=RjlDSpnH00qCXX2pHqAG4jhymUa4fexYHL02inJEnCgCVfrFQkhBL41DqTDkFvfRC4REc3fBhBZoZl3e70KhBIKbO7+DoZmnymSo4nutmeGx0Phoi3g6o91ETfh7lBmYgxyjRMor3UX87NRHyS9mFL1a7MLkZnszdbss21tDOk9qr4z/E58ZhVid8p/YItX/JsisVlTsgGREm37JPxNgga9K3n5S2qTNau6iBwvmwJEHYFIWXqdhKtNgM3uldvFGkSF0wotn+YA9bqgQQUzf6dY4gQtX5YV6HuSL7jUeQCgG0CUKv+TLhUTjNY6Y34hly4Dj5JsI2iGO8aNVPJ0fgQ==
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=8B2RKwdWOC2yQLkR0u6LTr3JDGQskLhj91dMDBOs14I=;
 b=U6W0fSg9npL5L7hBCImaoTl/re/D2/n/S6INckIUBPkt6wkZqXhGzfe/vIguRrBJI6T0io4rDUsbVtLPkdBtgnZdtnSNTUOPKQnId6l5diFRmLXO32TO2kP+hjmzuv+VLAaF7Vd9Na0Yfg0+D+vwxQ3Dn3M5NHBjTtj15qtgGy8=
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
Message-ID: <f875fbff-1b66-461d-9f44-e16ed2aa44bb@arm.com>
Date: Thu, 26 Oct 2023 17:34:10 +0800
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN PATCH 3/4] arm/new vgic: Add GICv3 support for NEW VGIC
Content-Language: en-US
To: Mykyta Poturai <Mykyta_Poturai@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>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
References: <cover.1698225630.git.mykyta_poturai@epam.com>
 <102d39655bec312490acd5abda966b66e6962da7.1698225630.git.mykyta_poturai@epam.com>
From: Wei Chen <Wei.Chen@arm.com>
In-Reply-To: <102d39655bec312490acd5abda966b66e6962da7.1698225630.git.mykyta_poturai@epam.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: SI1PR02CA0014.apcprd02.prod.outlook.com
 (2603:1096:4:1f7::9) To PAXPR08MB7420.eurprd08.prod.outlook.com
 (2603:10a6:102:2b9::9)
MIME-Version: 1.0
X-MS-TrafficTypeDiagnostic:
	PAXPR08MB7420:EE_|AM9PR08MB5873:EE_|DB1PEPF00039232:EE_|PAXPR08MB7382:EE_
X-MS-Office365-Filtering-Correlation-Id: 0fc641f7-e7a5-4006-020b-08dbd606c26f
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:
 +Y3FjEJ8VFXTTVo89vmoRRVwZ7Boa9hUHbX1p+1Qlm6DvUhysKJj7IzINnDVJ7IBLdv7ri4PtEFQaPwL7XMpHrl/ONyj1tVxvqE0jpfNWTAIEQn1bZxs8LzSGvePLqE7I0MKJ4UqjOLUF2eCIRpQXq/CIyeoQ02upjrZ+ka2SHwo7vkJa/75TzqGR+LKaZCPGjNgIbL4jKowaMJ9IgbbvTO0BWYY0oXfR3gCULjwHcSZeujmNY/3uXct/slk7OdYsaPgx2t1bmNuGtiTssEYWnINcLlaXqSv+CetRqJdVMyIB9s8wfSV1sTu84pAFg5EhZJ5BiM88DuM87fyUmS+cxrET3ye1v8TvP5YZ/8J+vuhIhBNNtuVVwCEFS27gJNGFKwEWe7ZQ8Trfc3cdTOQc2E+4ubu8EkuVpf21HI0iuBaI7qSSZ6hhtwcNNxPg3ARwDd8+NXfv8QUEfmXNR/U8x0a78NbtDgB1YJvrwP75Rj9eVf1YCOK/Yc9jF1LDdHnFNQFb7qhrdrlQ57Deo9fhtp43GzNe2Rb/WfbJzug5kbm7Mfac/s44Fpse84Is3pfYRK9zxY9/QUQqkliIzuEJZU4Lz+B9EtuHXrDy0xXmb9/lz3xlGqxdmr+XDMVzMhM9vYZ2LzabIho1FmswUzVP7cOsfwM1W3LLzvk/EPuFvh65XedJMzFFQqbS7SFjcX9
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:PAXPR08MB7420.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366004)(396003)(346002)(376002)(39860400002)(136003)(230922051799003)(64100799003)(186009)(451199024)(1800799009)(41300700001)(66946007)(66556008)(38100700002)(66899024)(26005)(36756003)(2616005)(30864003)(8936002)(4326008)(8676002)(5660300002)(316002)(54906003)(110136005)(2906002)(6512007)(6506007)(53546011)(31696002)(6666004)(478600001)(86362001)(66476007)(6486002)(83380400001)(31686004)(2004002)(43740500002)(45980500001)(579004)(559001)(309714004);DIR:OUT;SFP:1101;
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR08MB5873
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:
 DB1PEPF00039232.eurprd03.prod.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	eb30414f-8f69-4b35-b719-08dbd606b95d
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	X+7AjD0AAwgGSYNmPB/diRhWmPSUYBLK0s+d6QD+GtsBUftZTUX1lozEm6mfbjYk/qGaqdk6a1izeF/4GdBaL1LEpdEGKMKM5eEFP6VdmgJWiZqqa5zlgWSbt3kSvYwLzb4k19H5+n6M0+Hck5ZkNEX4t2giJ8O6HSb86FyeM9TNIDnCph+swRoi6Tj2+80S9pkZtoLQDdK7+dZoWmUAlnBObXlplp1C4UkO5FA5mISCQQM7GfaoaQKZWCZ1lumjYdsSDc4d/oBv3jTS7QhBYJsdQWHkaWmg1vTz7r8WwMuvpnUZEnAFVXIkuj/rD2JPi4pCNyiBJq3M2nncZuvF+cnNzdzYpGh4C8R/GjeEGrZCn7jdk3v5Gfzl2mtDwEQ1nSALAjpami9yk6RXT4LD8OXFNp0Hr6Ir/SN/JfesH0QLSGOiujjxnuvmEzsVma1UuRx3WwubyQ6RL6ndj2DjoeFskHI9OYIyD/1YYdfvrHI7K46lVKVt45O3fFDyI7m43qLTxpyca4HluPXI17T1A2jMznzelDmxtybCMM+TRCx+WNDqV8zls1oj7MK/wype1P9VdjbPm4SLJ84yqwRLqKRKhh7RG/PUU8WWrxlbEewyoWBKjfpZwkd9sNduujxkx8u6uRt7wGfK1txVFofFIwe+Pz77X+60lz/jpiojSWpF4UrQduE0TR1EjcNULLZT8v0As5QO4ocwD4G71eUGz8JXzMGH1AJLwTpc6eN8mDDh1lF/3iTv+DVvrwyCc/YZBN1r3rtRaBluMfyl22Hdn/jI7wE7REJVdvxlmr1mu50G89kphZviuDzp25hnsyD5
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)(136003)(39860400002)(376002)(230922051799003)(82310400011)(186009)(64100799003)(1800799009)(451199024)(46966006)(36840700001)(40470700004)(31686004)(40460700003)(83380400001)(66899024)(8936002)(30864003)(36860700001)(36756003)(26005)(2906002)(53546011)(8676002)(107886003)(82740400003)(47076005)(81166007)(336012)(356005)(2616005)(40480700001)(4326008)(31696002)(6506007)(478600001)(316002)(6666004)(5660300002)(70206006)(6486002)(110136005)(6512007)(41300700001)(54906003)(70586007)(86362001)(2004002)(43740500002)(579004)(559001)(309714004);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Oct 2023 09:34:32.3259
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 0fc641f7-e7a5-4006-020b-08dbd606c26f
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:
	DB1PEPF00039232.eurprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR08MB7382

Hi Mykyta,

On 2023/10/25 18:13, Mykyta Poturai wrote:
> Add support for basic GICv3 functionality to new vgic. The code is
> ported from Kernel version 6.0. The distributor, redistributor and
> CPU interface are ported and hooked up to the XEN interfaces.
> The code is adapted to Xen coding style and conventions.
> 
> Remove !NEW_VGIC dependency from GIC_V3 config.
> 
> Signed-off-by: Mykyta Poturai <mykyta_poturai@epam.com>
> ---
>   xen/arch/arm/Kconfig                   |   1 -
>   xen/arch/arm/domain_build.c            |  23 +-
>   xen/arch/arm/gic-v3.c                  |   9 +
>   xen/arch/arm/include/asm/gic_v3_defs.h |  13 +-
>   xen/arch/arm/include/asm/new_vgic.h    |  32 +-
>   xen/arch/arm/vgic/Makefile             |   2 +
>   xen/arch/arm/vgic/vgic-init.c          |  12 +-
>   xen/arch/arm/vgic/vgic-mmio-v3.c       | 940 +++++++++++++++++++++++++
>   xen/arch/arm/vgic/vgic-mmio.c          |  18 +
>   xen/arch/arm/vgic/vgic-mmio.h          |  10 +
>   xen/arch/arm/vgic/vgic-v3.c            | 383 ++++++++++
>   xen/arch/arm/vgic/vgic.c               |  60 +-
>   xen/arch/arm/vgic/vgic.h               |  48 +-
>   13 files changed, 1523 insertions(+), 28 deletions(-)
>   create mode 100644 xen/arch/arm/vgic/vgic-mmio-v3.c
>   create mode 100644 xen/arch/arm/vgic/vgic-v3.c
> 
> diff --git a/xen/arch/arm/Kconfig b/xen/arch/arm/Kconfig
> index 2939db429b..c91011bc15 100644
> --- a/xen/arch/arm/Kconfig
> +++ b/xen/arch/arm/Kconfig
> @@ -82,7 +82,6 @@ config ARM_EFI
>   
>   config GICV3
>   	bool "GICv3 driver"
> -	depends on !NEW_VGIC
>   	default n if ARM_32
>   	default y if ARM_64
>   	---help---
> diff --git a/xen/arch/arm/domain_build.c b/xen/arch/arm/domain_build.c
> index 49792dd590..a4c97aa0bf 100644
> --- a/xen/arch/arm/domain_build.c
> +++ b/xen/arch/arm/domain_build.c
> @@ -2549,7 +2549,12 @@ static int __init make_gicv3_domU_node(struct kernel_info *kinfo)
>       int res = 0;
>       __be32 *reg, *cells;
>       const struct domain *d = kinfo->d;
> -    unsigned int i, len = 0;
> +    unsigned int len = 0;
> +#ifdef CONFIG_NEW_VGIC
> +    struct vgic_redist_region *rdreg;
> +#else
> +    unsigned int i;
> +#endif
>   

I think introduce CONFIG_NEW_VGIC to generic Arm code might be not a 
good idea (here and elsewhere in the patch below). We may need a 
helper-like abstraction to hide these differences in vgic itself.

Cheers,
Wei Chen
>       res = domain_fdt_begin_node(fdt, "interrupt-controller",
>                                   vgic_dist_base(&d->arch.vgic));
> @@ -2572,9 +2577,14 @@ static int __init make_gicv3_domU_node(struct kernel_info *kinfo)
>       if ( res )
>           return res;
>   
> -    /* reg specifies all re-distributors and Distributor. */
> +#ifdef CONFIG_NEW_VGIC
> +    len += (GUEST_ROOT_ADDRESS_CELLS + GUEST_ROOT_SIZE_CELLS) *
> +            vgic_v3_max_rdist_count(d) * sizeof(__be32);
> +#else
>       len = (GUEST_ROOT_ADDRESS_CELLS + GUEST_ROOT_SIZE_CELLS) *
>             (d->arch.vgic.nr_regions + 1) * sizeof(__be32);
> +#endif
> +    /* reg specifies all re-distributors and Distributor. */
>       reg = xmalloc_bytes(len);
>       if ( reg == NULL )
>           return -ENOMEM;
> @@ -2583,12 +2593,19 @@ static int __init make_gicv3_domU_node(struct kernel_info *kinfo)
>       dt_child_set_range(&cells, GUEST_ROOT_ADDRESS_CELLS, GUEST_ROOT_SIZE_CELLS,
>                          vgic_dist_base(&d->arch.vgic), GUEST_GICV3_GICD_SIZE);
>   
> +#ifdef CONFIG_NEW_VGIC
> +    list_for_each_entry(rdreg, &d->arch.vgic.rd_regions, list)
> +        dt_child_set_range(&cells,
> +                            GUEST_ROOT_ADDRESS_CELLS, GUEST_ROOT_SIZE_CELLS,
> +                            rdreg->base,
> +                            rdreg->count * VGIC_V3_REDIST_SIZE);
> +#else
>       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);
> -
> +#endif
>       res = fdt_property(fdt, "reg", reg, len);
>       xfree(reg);
>       if (res)
> diff --git a/xen/arch/arm/gic-v3.c b/xen/arch/arm/gic-v3.c
> index 95e4f020fe..cab3f2d943 100644
> --- a/xen/arch/arm/gic-v3.c
> +++ b/xen/arch/arm/gic-v3.c
> @@ -1280,8 +1280,13 @@ static int gicv3_make_hwdom_dt_node(const struct domain *d,
>       if ( res )
>           return res;
>   
> +#ifdef CONFIG_NEW_VGIC
> +    res = fdt_property_cell(fdt, "#redistributor-regions",
> +                            vgic_v3_max_rdist_count(d));
> +#else
>       res = fdt_property_cell(fdt, "#redistributor-regions",
>                               d->arch.vgic.nr_regions);
> +#endif
>       if ( res )
>           return res;
>   
> @@ -1293,7 +1298,11 @@ static int gicv3_make_hwdom_dt_node(const struct domain *d,
>        * The hardware domain may not use all the regions. So only copy
>        * what is necessary.
>        */
> +#ifdef CONFIG_NEW_VGIC
> +    new_len = new_len * (vgic_v3_max_rdist_count(d) + 1);
> +#else
>       new_len = new_len * (d->arch.vgic.nr_regions + 1);
> +#endif
>   
>       hw_reg = dt_get_property(gic, "reg", &len);
>       if ( !hw_reg )
> diff --git a/xen/arch/arm/include/asm/gic_v3_defs.h b/xen/arch/arm/include/asm/gic_v3_defs.h
> index 227533868f..e4e4696de3 100644
> --- a/xen/arch/arm/include/asm/gic_v3_defs.h
> +++ b/xen/arch/arm/include/asm/gic_v3_defs.h
> @@ -25,6 +25,7 @@
>    * Common GICD registers are defined in gic.h
>    */
>   
> +#define GICD_TYPER2                  (0x00C)
>   #define GICD_STATUSR                 (0x010)
>   #define GICD_SETSPI_NSR              (0x040)
>   #define GICD_CLRSPI_NSR              (0x048)
> @@ -35,6 +36,7 @@
>   #define GICD_IROUTER                 (0x6000)
>   #define GICD_IROUTER32               (0x6100)
>   #define GICD_IROUTER1019             (0x7FD8)
> +#define GICD_IDREGS                  (0xFFD0)
>   #define GICD_PIDR2                   (0xFFE8)
>   
>   /* Common between GICD_PIDR2 and GICR_PIDR2 */
> @@ -56,6 +58,7 @@
>   #define GICD_TYPE_LPIS               (1U << 17)
>   
>   #define GICD_CTLR_RWP                (1UL << 31)
> +#define GICD_CTLR_DS                 (1U << 6)
>   #define GICD_CTLR_ARE_NS             (1U << 4)
>   #define GICD_CTLR_ENABLE_G1A         (1U << 1)
>   #define GICD_CTLR_ENABLE_G1          (1U << 0)
> @@ -89,6 +92,7 @@
>   #define GICR_INVLPIR                 (0x00A0)
>   #define GICR_INVALLR                 (0x00B0)
>   #define GICR_SYNCR                   (0x00C0)
> +#define GICR_IDREGS                  GICD_IDREGS
>   #define GICR_PIDR2                   GICD_PIDR2
>   
>   /* GICR for SGI's & PPI's */
> @@ -108,6 +112,9 @@
>   #define GICR_NSACR                   (0x0E00)
>   
>   #define GICR_CTLR_ENABLE_LPIS        (1U << 0)
> +#define GICR_CTLR_CES                (1UL << 1)
> +#define GICR_CTLR_IR                 (1UL << 2)
> +#define GICR_CTLR_RWP                (1UL << 3)
>   
>   #define GICR_TYPER_PLPIS             (1U << 0)
>   #define GICR_TYPER_VLPIS             (1U << 1)
> @@ -131,7 +138,11 @@
>   #define GIC_BASER_NonShareable       0ULL
>   #define GIC_BASER_InnerShareable     1ULL
>   #define GIC_BASER_OuterShareable     2ULL
> +#define GIC_BASER_SHAREABILITY_MASK  3ULL
>   
> +#define GICR_PROPBASER_IDBITS_MASK   (0x1f)
> +#define GICR_PROPBASER_ADDRESS(x)    ((x) & GENMASK_ULL(51, 12))
> +#define GICR_PENDBASER_ADDRESS(x)    ((x) & GENMASK_ULL(51, 16))
>   #define GICR_PROPBASER_OUTER_CACHEABILITY_SHIFT         56
>   #define GICR_PROPBASER_OUTER_CACHEABILITY_MASK               \
>           (7ULL << GICR_PROPBASER_OUTER_CACHEABILITY_SHIFT)
> @@ -200,7 +211,7 @@
>   #define ICH_SGI_IRQ_SHIFT            24
>   #define ICH_SGI_IRQ_MASK             0xf
>   #define ICH_SGI_TARGETLIST_MASK      0xffff
> -#define ICH_SGI_AFFx_MASK            0xff
> +#define ICH_SGI_AFFx_MASK            0xffULL
>   #define ICH_SGI_AFFINITY_LEVEL(x)    (16 * (x))
>   
>   struct rdist_region {
> diff --git a/xen/arch/arm/include/asm/new_vgic.h b/xen/arch/arm/include/asm/new_vgic.h
> index 1e76213893..ed728652de 100644
> --- a/xen/arch/arm/include/asm/new_vgic.h
> +++ b/xen/arch/arm/include/asm/new_vgic.h
> @@ -21,6 +21,9 @@
>   #include <xen/list.h>
>   #include <xen/mm.h>
>   #include <xen/spinlock.h>
> +#define INTERRUPT_ID_BITS_SPIS  10
> +#define INTERRUPT_ID_BITS_ITS   16
> +#define VGIC_PRI_BITS           5
>   
>   #define VGIC_V3_MAX_CPUS        255
>   #define VGIC_V2_MAX_CPUS        8
> @@ -31,6 +34,8 @@
>   #define VGIC_MAX_SPI            1019
>   #define VGIC_MAX_RESERVED       1023
>   #define VGIC_MIN_LPI            8192
> +#define VGIC_V3_DIST_SIZE       SZ_64K
> +#define VGIC_V3_REDIST_SIZE     (2 * SZ_64K)
>   
>   #define irq_is_ppi(irq) ((irq) >= VGIC_NR_SGIS && (irq) < VGIC_NR_PRIVATE_IRQS)
>   #define irq_is_spi(irq) ((irq) >= VGIC_NR_PRIVATE_IRQS && \
> @@ -94,6 +99,14 @@ enum iodev_type {
>       IODEV_REDIST,
>   };
>   
> +struct vgic_redist_region {
> +    uint32_t index;
> +    paddr_t base;
> +    uint32_t count; /* number of redistributors or 0 if single region */
> +    uint32_t free_index; /* index of the next free redistributor */
> +    struct list_head list;
> +};
> +
>   struct vgic_io_device {
>       gfn_t base_fn;
>       struct vcpu *redist_vcpu;
> @@ -121,11 +134,7 @@ struct vgic_dist {
>           /* either a GICv2 CPU interface */
>           paddr_t         cbase;
>           /* or a number of GICv3 redistributor regions */
> -        struct
> -        {
> -            paddr_t     vgic_redist_base;
> -            paddr_t     vgic_redist_free_offset;
> -        };
> +        struct list_head rd_regions;
>       };
>       paddr_t             csize; /* CPU interface size */
>       paddr_t             vbase; /* virtual CPU interface base address */
> @@ -174,6 +183,9 @@ struct vgic_cpu {
>        * parts of the redistributor.
>        */
>       struct vgic_io_device   rd_iodev;
> +    struct vgic_redist_region *rdreg;
> +    uint32_t rdreg_index;
> +    atomic_t syncr_busy;
>       struct vgic_io_device   sgi_iodev;
>   
>       /* Contains the attributes and gpa of the LPI pending tables. */
> @@ -186,6 +198,9 @@ struct vgic_cpu {
>   
>       /* Cache guest interrupt ID bits */
>       uint32_t num_id_bits;
> +
> +    /* GICR_CTLR.{ENABLE_LPIS,RWP} */
> +    atomic_t ctlr;
>   };
>   
>   static inline paddr_t vgic_cpu_base(const struct vgic_dist *vgic)
> @@ -198,6 +213,13 @@ static inline paddr_t vgic_dist_base(const struct vgic_dist *vgic)
>       return vgic->dbase;
>   }
>   
> +#ifdef CONFIG_GICV3
> +struct vgic_redist_region *vgic_v3_rdist_free_slot(struct list_head *rd_regions);
> +int vgic_v3_set_redist_base(struct domain *d, u32 index, u64 addr, u32 count);
> +unsigned int vgic_v3_max_rdist_count(const struct domain *d);
> +void vgic_flush_pending_lpis(struct vcpu *vcpu);
> +#endif
> +
>   #endif /* __ASM_ARM_NEW_VGIC_H */
>   
>   /*
> diff --git a/xen/arch/arm/vgic/Makefile b/xen/arch/arm/vgic/Makefile
> index 806826948e..019bfe3d07 100644
> --- a/xen/arch/arm/vgic/Makefile
> +++ b/xen/arch/arm/vgic/Makefile
> @@ -2,4 +2,6 @@ obj-y += vgic.o
>   obj-y += vgic-v2.o
>   obj-y += vgic-mmio.o
>   obj-y += vgic-mmio-v2.o
> +obj-$(CONFIG_GICV3) += vgic-v3.o
> +obj-$(CONFIG_GICV3) += vgic-mmio-v3.o
>   obj-y += vgic-init.o
> diff --git a/xen/arch/arm/vgic/vgic-init.c b/xen/arch/arm/vgic/vgic-init.c
> index f8d7d3a226..be35cc33ec 100644
> --- a/xen/arch/arm/vgic/vgic-init.c
> +++ b/xen/arch/arm/vgic/vgic-init.c
> @@ -107,14 +107,18 @@ int domain_vgic_register(struct domain *d, unsigned int *mmio_count)
>       {
>       case GIC_V2:
>           *mmio_count = 1;
> +        d->arch.vgic.cbase = VGIC_ADDR_UNDEF;
>           break;
> +    case GIC_V3:
> +        *mmio_count = 2;
> +        INIT_LIST_HEAD(&d->arch.vgic.rd_regions);
> +        break;
> +
>       default:
>           BUG();
>       }
>   
>       d->arch.vgic.dbase = VGIC_ADDR_UNDEF;
> -    d->arch.vgic.cbase = VGIC_ADDR_UNDEF;
> -    d->arch.vgic.vgic_redist_base = VGIC_ADDR_UNDEF;
>   
>       return 0;
>   }
> @@ -174,7 +178,7 @@ int domain_vgic_init(struct domain *d, unsigned int nr_spis)
>       if ( dist->version == GIC_V2 )
>           ret = vgic_v2_map_resources(d);
>       else
> -        ret = -ENXIO;
> +        ret = vgic_v3_map_resources(d);
>   
>       if ( ret )
>           return ret;
> @@ -207,7 +211,7 @@ int vcpu_vgic_init(struct vcpu *v)
>       if ( gic_hw_version() == GIC_V2 )
>           vgic_v2_enable(v);
>       else
> -        ret = -ENXIO;
> +        vgic_v3_enable(v);
>   
>       return ret;
>   }
> diff --git a/xen/arch/arm/vgic/vgic-mmio-v3.c b/xen/arch/arm/vgic/vgic-mmio-v3.c
> new file mode 100644
> index 0000000000..4ec6d910af
> --- /dev/null
> +++ b/xen/arch/arm/vgic/vgic-mmio-v3.c
> @@ -0,0 +1,940 @@
> +/*
> + * VGICv3 MMIO handling functions
> + * Imported from Linux ("new" KVM VGIC) and heavily adapted to Xen.
> + *
> + * This program is free software; you can redistribute it and/or modify
> + * it under the terms of the GNU General Public License version 2 as
> + * published by the Free Software Foundation.
> + *
> + * 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 General Public License for more details.
> + */
> +
> +#include <xen/bitops.h>
> +#include <xen/sched.h>
> +#include <xen/sizes.h>
> +#include <asm/new_vgic.h>
> +#include <asm/gic_v3_defs.h>
> +#include <asm/gic_v3_its.h>
> +#include <asm/vreg.h>
> +
> +#include "asm/domain.h"
> +#include "asm/types.h"
> +#include "vgic.h"
> +#include "vgic-mmio.h"
> +
> +bool vgic_has_its(struct domain *d)
> +{
> +    struct vgic_dist *dist = &d->arch.vgic;
> +
> +    if ( dist->version != GIC_V3 )
> +        return false;
> +
> +    return dist->has_its;
> +}
> +
> +struct vcpu *mpidr_to_vcpu(struct domain *d, unsigned long mpidr)
> +{
> +    struct vcpu *vcpu;
> +
> +    mpidr &= MPIDR_HWID_MASK;
> +    for_each_vcpu(d, vcpu)
> +    {
> +        if ( mpidr == vcpuid_to_vaffinity(vcpu->vcpu_id) )
> +            return vcpu;
> +    }
> +    return NULL;
> +}
> +
> +/* extract @num bytes at @offset bytes offset in data */
> +unsigned long extract_bytes(uint64_t data, unsigned int offset,
> +                            unsigned int num)
> +{
> +    return (data >> (offset * 8)) & GENMASK_ULL(num * 8 - 1, 0);
> +}
> +
> +uint64_t update_64bit_reg(u64 reg, unsigned int offset, unsigned int len,
> +                          unsigned long val)
> +{
> +    int lower = (offset & 4) * 8;
> +    int upper = lower + 8 * len - 1;
> +
> +    reg &= ~GENMASK_ULL(upper, lower);
> +    val &= GENMASK_ULL(len * 8 - 1, 0);
> +
> +    return reg | ((u64)val << lower);
> +}
> +
> +static int match_mpidr(u64 sgi_aff, u16 sgi_cpu_mask, struct vcpu *vcpu)
> +{
> +    unsigned long affinity;
> +    int level0;
> +
> +    /*
> +     * Split the current VCPU's MPIDR into affinity level 0 and the
> +     * rest as this is what we have to compare against.
> +     */
> +    affinity = vcpuid_to_vaffinity(vcpu->vcpu_id);
> +    level0   = MPIDR_AFFINITY_LEVEL(affinity, 0);
> +    affinity &= ~MPIDR_LEVEL_MASK;
> +
> +    /* bail out if the upper three levels don't match */
> +    if ( sgi_aff != affinity )
> +        return -1;
> +
> +    /* Is this VCPU's bit set in the mask ? */
> +    if ( !(sgi_cpu_mask & BIT(level0, ULL)) )
> +        return -1;
> +
> +    return level0;
> +}
> +
> +#define SGI_AFFINITY_LEVEL(reg, level)                                         \
> +    ((((reg) & (ICH_SGI_AFFx_MASK << ICH_SGI_AFFINITY_LEVEL(level))) >>        \
> +      ICH_SGI_AFFINITY_LEVEL(level))                                           \
> +     << MPIDR_LEVEL_SHIFT(level))
> +
> +static bool vgic_v3_emulate_sgi1r(struct cpu_user_regs *regs, uint64_t *r,
> +                                  bool read)
> +{
> +    struct domain *d  = current->domain;
> +    struct vcpu *vcpu = current;
> +    struct vcpu *c_vcpu;
> +    u16 target_cpus;
> +    u64 mpidr;
> +    int sgi;
> +    int vcpu_id = vcpu->vcpu_id;
> +    bool broadcast;
> +    unsigned long flags;
> +
> +    if ( read )
> +    {
> +        gdprintk(XENLOG_WARNING, "Reading SGI1R_EL1 - WO register\n");
> +        return false;
> +    }
> +
> +    sgi         = (*r >> ICH_SGI_IRQ_SHIFT) & ICH_SGI_IRQ_MASK;
> +    broadcast   = *r & BIT(ICH_SGI_IRQMODE_SHIFT, ULL);
> +    target_cpus = (*r & ICH_SGI_TARGETLIST_MASK);
> +
> +    mpidr       = SGI_AFFINITY_LEVEL(*r, 3);
> +    mpidr |= SGI_AFFINITY_LEVEL(*r, 2);
> +    mpidr |= SGI_AFFINITY_LEVEL(*r, 1);
> +
> +    /*
> +     * We iterate over all VCPUs to find the MPIDRs matching the request.
> +     * If we have handled one CPU, we clear its bit to detect early
> +     * if we are already finished. This avoids iterating through all
> +     * VCPUs when most of the times we just signal a single VCPU.
> +     */
> +    for_each_vcpu(d, c_vcpu)
> +    {
> +        struct vgic_irq *irq;
> +
> +        /* Exit early if we have dealt with all requested CPUs */
> +        if ( !broadcast && target_cpus == 0 )
> +            break;
> +
> +        /* Don't signal the calling VCPU */
> +        if ( broadcast && c_vcpu->vcpu_id == vcpu_id )
> +            continue;
> +
> +        if ( !broadcast )
> +        {
> +            int level0;
> +
> +            level0 = match_mpidr(mpidr, target_cpus, c_vcpu);
> +            if ( level0 == -1 )
> +                continue;
> +
> +            /* remove this matching VCPU from the mask */
> +            target_cpus &= ~BIT(level0, UL);
> +        }
> +
> +        irq = vgic_get_irq(vcpu->domain, c_vcpu, sgi);
> +
> +        spin_lock_irqsave(&irq->irq_lock, flags);
> +
> +        if ( !irq->hw )
> +        {
> +            irq->pending_latch = true;
> +            vgic_queue_irq_unlock(vcpu->domain, irq, flags);
> +        }
> +        else
> +        {
> +            printk(XENLOG_ERR "HW SGIs are not implemented\n");
> +            BUG();
> +            spin_unlock_irqrestore(&irq->irq_lock, flags);
> +        }
> +
> +        vgic_put_irq(vcpu->domain, irq);
> +    }
> +
> +    return true;
> +}
> +
> +static bool vgic_v3_emulate_sysreg(struct cpu_user_regs *regs, union hsr hsr)
> +{
> +    struct hsr_sysreg sysreg = hsr.sysreg;
> +
> +    ASSERT(hsr.ec == HSR_EC_SYSREG);
> +
> +    if ( sysreg.read )
> +        perfc_incr(vgic_sysreg_reads);
> +    else
> +        perfc_incr(vgic_sysreg_writes);
> +
> +    switch ( hsr.bits & HSR_SYSREG_REGS_MASK )
> +    {
> +    case HSR_SYSREG_ICC_SGI1R_EL1:
> +        return vreg_emulate_sysreg(regs, hsr, vgic_v3_emulate_sgi1r);
> +
> +    default:
> +        return false;
> +    }
> +}
> +
> +bool vgic_v3_emulate_reg(struct cpu_user_regs *regs, union hsr hsr)
> +{
> +    switch ( hsr.ec )
> +    {
> +#ifdef CONFIG_ARM_64
> +    case HSR_EC_SYSREG:
> +        return vgic_v3_emulate_sysreg(regs, hsr);
> +#endif
> +    case HSR_EC_CP15_64:
> +        printk(XENLOG_ERR
> +               "vgic_v3_emulate_reg: HSR_EC_CP15_64 not implemented");
> +        BUG();
> +        break;
> +    default:
> +        return false;
> +    }
> +}
> +
> +/*
> + * The Revision field in the IIDR have the following meanings:
> + *
> + * Revision 2: Interrupt groups are guest-configurable and signaled using
> + *            their configured groups.
> + */
> +
> +static unsigned long vgic_mmio_read_v3_misc(struct vcpu *vcpu, paddr_t addr,
> +                                            unsigned int len)
> +{
> +    struct vgic_dist *vgic = &vcpu->domain->arch.vgic;
> +    uint32_t value         = 0;
> +
> +    switch ( addr & 0x0c )
> +    {
> +    case GICD_CTLR:
> +        if ( vgic->enabled )
> +            value |= GICD_CTLR_ENABLE_G1A;
> +        value |= GICD_CTLR_ARE_NS | GICD_CTLR_DS;
> +        break;
> +    case GICD_TYPER:
> +        value = vgic->nr_spis + VGIC_NR_PRIVATE_IRQS;
> +        value = (value >> 5) - 1;
> +        if ( vgic_has_its(vcpu->domain) )
> +        {
> +            value |= (INTERRUPT_ID_BITS_ITS - 1) << 19;
> +            value |= GICD_TYPE_LPIS;
> +        }
> +        else
> +        {
> +            value |= (INTERRUPT_ID_BITS_SPIS - 1) << 19;
> +        }
> +        break;
> +    case GICD_TYPER2:
> +        break;
> +    case GICD_IIDR:
> +        value = (PRODUCT_ID_KVM << 24) | (VARIANT_ID_XEN << 16) |
> +                (IMPLEMENTER_ARM << 0);
> +        break;
> +    default:
> +        return 0;
> +    }
> +
> +    return value;
> +}
> +
> +static void vgic_mmio_write_v3_misc(struct vcpu *vcpu, paddr_t addr,
> +                                    unsigned int len, unsigned long val)
> +{
> +    struct vgic_dist *dist = &vcpu->domain->arch.vgic;
> +
> +    switch ( addr & 0x0c )
> +    {
> +    case GICD_CTLR:
> +    {
> +        bool was_enabled;
> +
> +        domain_lock(vcpu->domain);
> +
> +        was_enabled   = dist->enabled;
> +
> +        dist->enabled = val & GICD_CTLR_ENABLE_G1A;
> +
> +        if ( dist->enabled )
> +            vgic_kick_vcpus(vcpu->domain);
> +
> +        domain_unlock(vcpu->domain);
> +        break;
> +    }
> +    case GICD_TYPER:
> +    case GICD_TYPER2:
> +    case GICD_IIDR:
> +        /* This is at best for documentation purposes... */
> +        return;
> +    }
> +}
> +
> +static unsigned long vgic_mmio_read_irouter(struct vcpu *vcpu, paddr_t addr,
> +                                            unsigned int len)
> +{
> +    int intid            = VGIC_ADDR_TO_INTID(addr, 64);
> +    struct vgic_irq *irq = vgic_get_irq(vcpu->domain, NULL, intid);
> +    unsigned long ret    = 0;
> +
> +    if ( !irq )
> +        return 0;
> +
> +    /* The upper word is RAZ for us. */
> +    if ( !(addr & 4) )
> +        ret = extract_bytes(irq->mpidr, addr & 7, len);
> +
> +    vgic_put_irq(vcpu->domain, irq);
> +    return ret;
> +}
> +
> +static void vgic_mmio_write_irouter(struct vcpu *vcpu, paddr_t addr,
> +                                    unsigned int len, unsigned long val)
> +{
> +    int intid = VGIC_ADDR_TO_INTID(addr, 64);
> +    struct vgic_irq *irq;
> +    unsigned long flags;
> +
> +    /* The upper word is WI for us since we don't implement Aff3. */
> +    if ( addr & 4 )
> +        return;
> +
> +    irq = vgic_get_irq(vcpu->domain, NULL, intid);
> +
> +    if ( !irq )
> +        return;
> +
> +    spin_lock_irqsave(&irq->irq_lock, flags);
> +
> +    /* We only care about and preserve Aff0, Aff1 and Aff2. */
> +    irq->mpidr       = val & GENMASK(23, 0);
> +    irq->target_vcpu = mpidr_to_vcpu(vcpu->domain, irq->mpidr);
> +
> +    spin_unlock_irqrestore(&irq->irq_lock, flags);
> +    vgic_put_irq(vcpu->domain, irq);
> +}
> +
> +static bool vgic_mmio_vcpu_rdist_is_last(struct vcpu *vcpu)
> +{
> +    struct vgic_dist *vgic    = &vcpu->domain->arch.vgic;
> +    struct vgic_cpu *vgic_cpu = &vcpu->arch.vgic;
> +    struct vgic_redist_region *iter, *rdreg = vgic_cpu->rdreg;
> +
> +    if ( !rdreg )
> +        return false;
> +
> +    if ( vgic_cpu->rdreg_index < rdreg->free_index - 1 )
> +    {
> +        return false;
> +    }
> +    else if ( rdreg->count && vgic_cpu->rdreg_index == (rdreg->count - 1) )
> +    {
> +        struct list_head *rd_regions = &vgic->rd_regions;
> +        paddr_t end = rdreg->base + rdreg->count * VGIC_V3_REDIST_SIZE;
> +
> +        /*
> +         * the rdist is the last one of the redist region,
> +         * check whether there is no other contiguous rdist region
> +         */
> +        list_for_each_entry(iter, rd_regions, list)
> +        {
> +            if ( iter->base == end && iter->free_index > 0 )
> +                return false;
> +        }
> +    }
> +    return true;
> +}
> +
> +static unsigned long vgic_mmio_read_v3r_typer(struct vcpu *vcpu, paddr_t addr,
> +                                              unsigned int len)
> +{
> +    unsigned long mpidr = vcpuid_to_vaffinity(vcpu->vcpu_id);
> +    int target_vcpu_id  = vcpu->vcpu_id;
> +    u64 value;
> +
> +    value = (u64)(mpidr & GENMASK(23, 0)) << 32;
> +    value |= ((target_vcpu_id & 0xffff) << 8);
> +
> +    if ( vgic_has_its(vcpu->domain) )
> +        value |= GICR_TYPER_PLPIS;
> +
> +    if ( vgic_mmio_vcpu_rdist_is_last(vcpu) )
> +        value |= GICR_TYPER_LAST;
> +
> +    return extract_bytes(value, addr & 7, len);
> +}
> +
> +static unsigned long vgic_mmio_read_v3r_iidr(struct vcpu *vcpu, paddr_t addr,
> +                                             unsigned int len)
> +{
> +    return (PRODUCT_ID_KVM << 24) | (VARIANT_ID_XEN << 16) |
> +           (IMPLEMENTER_ARM << 0);
> +}
> +
> +static unsigned long vgic_mmio_read_v3_idregs(struct vcpu *vcpu, paddr_t addr,
> +                                              unsigned int len)
> +{
> +    switch ( addr & 0xfff )
> +    {
> +    case GICD_ICPIDR2:
> +        /* report a GICv3 compliant implementation */
> +        return 0x3b;
> +    }
> +
> +    return 0;
> +}
> +
> +static unsigned long vgic_mmio_read_v3r_ctlr(struct vcpu *vcpu, paddr_t addr,
> +                                             unsigned int len)
> +{
> +    struct vgic_cpu *vgic_cpu = &vcpu->arch.vgic;
> +    unsigned long val;
> +
> +    val = atomic_read(&vgic_cpu->ctlr);
> +    val |= GICR_CTLR_IR | GICR_CTLR_CES;
> +
> +    return val;
> +}
> +
> +bool vgic_lpis_enabled(struct vcpu *vcpu)
> +{
> +    struct vgic_cpu *vgic_cpu = &vcpu->arch.vgic;
> +
> +    return atomic_read(&vgic_cpu->ctlr) == GICR_CTLR_ENABLE_LPIS;
> +}
> +
> +/* We want to avoid outer shareable. */
> +u64 vgic_sanitise_shareability(u64 field)
> +{
> +    switch ( field )
> +    {
> +    case GIC_BASER_OuterShareable:
> +        return GIC_BASER_InnerShareable;
> +    default:
> +        return field;
> +    }
> +}
> +
> +/* Avoid any inner non-cacheable mapping. */
> +u64 vgic_sanitise_inner_cacheability(u64 field)
> +{
> +    switch ( field )
> +    {
> +    case GIC_BASER_CACHE_nCnB:
> +    case GIC_BASER_CACHE_nC:
> +        return GIC_BASER_CACHE_RaWb;
> +    default:
> +        return field;
> +    }
> +}
> +
> +/* Non-cacheable or same-as-inner are OK. */
> +u64 vgic_sanitise_outer_cacheability(u64 field)
> +{
> +    switch ( field )
> +    {
> +    case GIC_BASER_CACHE_SameAsInner:
> +    case GIC_BASER_CACHE_nC:
> +        return field;
> +    default:
> +        return GIC_BASER_CACHE_SameAsInner;
> +    }
> +}
> +
> +u64 vgic_sanitise_field(u64 reg, u64 field_mask, int field_shift,
> +                        u64 (*sanitise_fn)(u64))
> +{
> +    u64 field = (reg & field_mask) >> field_shift;
> +
> +    field     = sanitise_fn(field) << field_shift;
> +    return (reg & ~field_mask) | field;
> +}
> +
> +#define PROPBASER_RES0_MASK                                                    \
> +    (GENMASK_ULL(63, 59) | GENMASK_ULL(55, 52) | GENMASK_ULL(6, 5))
> +#define PENDBASER_RES0_MASK                                                    \
> +    (BIT(63, ULL) | GENMASK_ULL(61, 59) | GENMASK_ULL(55, 52) |                \
> +     GENMASK_ULL(15, 12) | GENMASK_ULL(6, 0))
> +
> +static u64 vgic_sanitise_pendbaser(u64 reg)
> +{
> +    reg = vgic_sanitise_field(reg, GICR_PENDBASER_SHAREABILITY_MASK,
> +                              GICR_PENDBASER_SHAREABILITY_SHIFT,
> +                              vgic_sanitise_shareability);
> +    reg = vgic_sanitise_field(reg, GICR_PENDBASER_INNER_CACHEABILITY_MASK,
> +                              GICR_PENDBASER_INNER_CACHEABILITY_SHIFT,
> +                              vgic_sanitise_inner_cacheability);
> +    reg = vgic_sanitise_field(reg, GICR_PENDBASER_OUTER_CACHEABILITY_MASK,
> +                              GICR_PENDBASER_OUTER_CACHEABILITY_SHIFT,
> +                              vgic_sanitise_outer_cacheability);
> +
> +    reg &= ~PENDBASER_RES0_MASK;
> +
> +    return reg;
> +}
> +
> +static u64 vgic_sanitise_propbaser(u64 reg)
> +{
> +    reg = vgic_sanitise_field(reg, GICR_PROPBASER_SHAREABILITY_MASK,
> +                              GICR_PROPBASER_SHAREABILITY_SHIFT,
> +                              vgic_sanitise_shareability);
> +    reg = vgic_sanitise_field(reg, GICR_PROPBASER_INNER_CACHEABILITY_MASK,
> +                              GICR_PROPBASER_INNER_CACHEABILITY_SHIFT,
> +                              vgic_sanitise_inner_cacheability);
> +    reg = vgic_sanitise_field(reg, GICR_PROPBASER_OUTER_CACHEABILITY_MASK,
> +                              GICR_PROPBASER_OUTER_CACHEABILITY_SHIFT,
> +                              vgic_sanitise_outer_cacheability);
> +
> +    reg &= ~PROPBASER_RES0_MASK;
> +    return reg;
> +}
> +
> +static unsigned long vgic_mmio_read_propbase(struct vcpu *vcpu, paddr_t addr,
> +                                             unsigned int len)
> +{
> +    struct vgic_dist *dist = &vcpu->domain->arch.vgic;
> +
> +    return extract_bytes(dist->propbaser, addr & 7, len);
> +}
> +
> +static void vgic_mmio_write_propbase(struct vcpu *vcpu, paddr_t addr,
> +                                     unsigned int len, unsigned long val)
> +{
> +    struct vgic_dist *dist = &vcpu->domain->arch.vgic;
> +    u64 old_propbaser, propbaser;
> +
> +    /* Storing a value with LPIs already enabled is undefined */
> +    if ( vgic_lpis_enabled(vcpu) )
> +        return;
> +
> +    do
> +    {
> +        old_propbaser = dist->propbaser;
> +        propbaser     = old_propbaser;
> +        propbaser     = update_64bit_reg(propbaser, addr & 4, len, val);
> +        propbaser     = vgic_sanitise_propbaser(propbaser);
> +    } while ( cmpxchg64(&dist->propbaser, old_propbaser, propbaser) !=
> +              old_propbaser );
> +}
> +
> +static unsigned long vgic_mmio_read_pendbase(struct vcpu *vcpu, paddr_t addr,
> +                                             unsigned int len)
> +{
> +    struct vgic_cpu *vgic_cpu = &vcpu->arch.vgic;
> +    u64 value                 = vgic_cpu->pendbaser;
> +
> +    value &= ~GICR_PENDBASER_PTZ;
> +
> +    return extract_bytes(value, addr & 7, len);
> +}
> +
> +static void vgic_mmio_write_pendbase(struct vcpu *vcpu, paddr_t addr,
> +                                     unsigned int len, unsigned long val)
> +{
> +    struct vgic_cpu *vgic_cpu = &vcpu->arch.vgic;
> +    u64 old_pendbaser, pendbaser;
> +
> +    /* Storing a value with LPIs already enabled is undefined */
> +    if ( vgic_lpis_enabled(vcpu) )
> +        return;
> +
> +    do
> +    {
> +        old_pendbaser = vgic_cpu->pendbaser;
> +        pendbaser     = old_pendbaser;
> +        pendbaser     = update_64bit_reg(pendbaser, addr & 4, len, val);
> +        pendbaser     = vgic_sanitise_pendbaser(pendbaser);
> +    } while ( cmpxchg64(&vgic_cpu->pendbaser, old_pendbaser, pendbaser) !=
> +              old_pendbaser );
> +}
> +
> +static unsigned long vgic_mmio_read_sync(struct vcpu *vcpu, paddr_t addr,
> +                                         unsigned int len)
> +{
> +    return !!atomic_read(&vcpu->arch.vgic.syncr_busy);
> +}
> +
> +static const struct vgic_register_region vgic_v3_dist_registers[] = {
> +    REGISTER_DESC_WITH_LENGTH(GICD_CTLR,
> +        vgic_mmio_read_v3_misc, vgic_mmio_write_v3_misc,
> +        16, VGIC_ACCESS_32bit),
> +    REGISTER_DESC_WITH_LENGTH(GICD_STATUSR,
> +        vgic_mmio_read_rao, vgic_mmio_write_wi, 4,
> +        VGIC_ACCESS_32bit),
> +    REGISTER_DESC_WITH_BITS_PER_IRQ(GICD_IGROUPR,
> +        vgic_mmio_read_rao, vgic_mmio_write_wi, 1,
> +        VGIC_ACCESS_32bit),
> +    REGISTER_DESC_WITH_BITS_PER_IRQ(GICD_ISENABLER,
> +        vgic_mmio_read_enable, vgic_mmio_write_senable, 1,
> +        VGIC_ACCESS_32bit),
> +    REGISTER_DESC_WITH_BITS_PER_IRQ(GICD_ICENABLER,
> +        vgic_mmio_read_enable, vgic_mmio_write_cenable, 1,
> +        VGIC_ACCESS_32bit),
> +    REGISTER_DESC_WITH_BITS_PER_IRQ(GICD_ISPENDR,
> +        vgic_mmio_read_pending, vgic_mmio_write_spending, 1,
> +        VGIC_ACCESS_32bit),
> +    REGISTER_DESC_WITH_BITS_PER_IRQ(GICD_ICPENDR,
> +        vgic_mmio_read_pending, vgic_mmio_write_cpending, 1,
> +        VGIC_ACCESS_32bit),
> +    REGISTER_DESC_WITH_BITS_PER_IRQ(GICD_ISACTIVER,
> +        vgic_mmio_read_active, vgic_mmio_write_sactive, 1,
> +        VGIC_ACCESS_32bit),
> +    REGISTER_DESC_WITH_BITS_PER_IRQ(GICD_ICACTIVER,
> +        vgic_mmio_read_active, vgic_mmio_write_cactive,
> +        1, VGIC_ACCESS_32bit),
> +    REGISTER_DESC_WITH_BITS_PER_IRQ(GICD_IPRIORITYR,
> +        vgic_mmio_read_priority, vgic_mmio_write_priority,
> +        8, VGIC_ACCESS_32bit | VGIC_ACCESS_8bit),
> +    REGISTER_DESC_WITH_BITS_PER_IRQ(GICD_ITARGETSR,
> +        vgic_mmio_read_raz, vgic_mmio_write_wi, 8,
> +        VGIC_ACCESS_32bit | VGIC_ACCESS_8bit),
> +    REGISTER_DESC_WITH_BITS_PER_IRQ(GICD_ICFGR,
> +        vgic_mmio_read_config, vgic_mmio_write_config, 2,
> +        VGIC_ACCESS_32bit),
> +    REGISTER_DESC_WITH_BITS_PER_IRQ(GICD_IGRPMODR,
> +        vgic_mmio_read_raz, vgic_mmio_write_wi, 1,
> +        VGIC_ACCESS_32bit),
> +    REGISTER_DESC_WITH_BITS_PER_IRQ(GICD_IROUTER,
> +        vgic_mmio_read_irouter, vgic_mmio_write_irouter, 64,
> +        VGIC_ACCESS_64bit | VGIC_ACCESS_32bit),
> +    REGISTER_DESC_WITH_LENGTH(GICD_IDREGS,
> +        vgic_mmio_read_v3_idregs, vgic_mmio_write_wi, 48,
> +        VGIC_ACCESS_32bit),
> +};
> +
> +static const struct vgic_register_region vgic_v3_rd_registers[] = {
> +    /* RD_base registers */
> +    REGISTER_DESC_WITH_LENGTH(GICR_CTLR,
> +        vgic_mmio_read_v3r_ctlr, vgic_mmio_write_wi, 4,
> +        VGIC_ACCESS_32bit),
> +    REGISTER_DESC_WITH_LENGTH(GICR_STATUSR,
> +        vgic_mmio_read_raz, vgic_mmio_write_wi, 4,
> +        VGIC_ACCESS_32bit),
> +    REGISTER_DESC_WITH_LENGTH(GICR_IIDR,
> +        vgic_mmio_read_v3r_iidr, vgic_mmio_write_wi, 4,
> +        VGIC_ACCESS_32bit),
> +    REGISTER_DESC_WITH_LENGTH(GICR_TYPER,
> +        vgic_mmio_read_v3r_typer, vgic_mmio_write_wi, 8,
> +        VGIC_ACCESS_64bit | VGIC_ACCESS_32bit),
> +    REGISTER_DESC_WITH_LENGTH(GICR_WAKER,
> +        vgic_mmio_read_raz, vgic_mmio_write_wi, 4,
> +        VGIC_ACCESS_32bit),
> +    REGISTER_DESC_WITH_LENGTH(GICR_PROPBASER,
> +        vgic_mmio_read_propbase, vgic_mmio_write_propbase, 8,
> +        VGIC_ACCESS_64bit | VGIC_ACCESS_32bit),
> +    REGISTER_DESC_WITH_LENGTH(GICR_PENDBASER,
> +        vgic_mmio_read_pendbase, vgic_mmio_write_pendbase, 8,
> +        VGIC_ACCESS_64bit | VGIC_ACCESS_32bit),
> +    REGISTER_DESC_WITH_LENGTH(GICR_INVLPIR,
> +        vgic_mmio_read_raz, vgic_mmio_write_wi, 8,
> +        VGIC_ACCESS_64bit | VGIC_ACCESS_32bit),
> +    REGISTER_DESC_WITH_LENGTH(GICR_INVALLR,
> +        vgic_mmio_read_raz, vgic_mmio_write_wi, 8,
> +        VGIC_ACCESS_64bit | VGIC_ACCESS_32bit),
> +    REGISTER_DESC_WITH_LENGTH(GICR_SYNCR,
> +        vgic_mmio_read_sync, vgic_mmio_write_wi, 4,
> +        VGIC_ACCESS_32bit),
> +    REGISTER_DESC_WITH_LENGTH(GICR_IDREGS,
> +        vgic_mmio_read_v3_idregs, vgic_mmio_write_wi, 48,
> +        VGIC_ACCESS_32bit),
> +    /* SGI_base registers */
> +    REGISTER_DESC_WITH_LENGTH(SZ_64K + GICR_IGROUPR0,
> +        vgic_mmio_read_rao, vgic_mmio_write_wi, 4,
> +        VGIC_ACCESS_32bit),
> +    REGISTER_DESC_WITH_LENGTH(SZ_64K + GICR_ISENABLER0,
> +        vgic_mmio_read_enable, vgic_mmio_write_senable, 4,
> +        VGIC_ACCESS_32bit),
> +    REGISTER_DESC_WITH_LENGTH(SZ_64K + GICR_ICENABLER0,
> +        vgic_mmio_read_enable, vgic_mmio_write_cenable, 4,
> +        VGIC_ACCESS_32bit),
> +    REGISTER_DESC_WITH_LENGTH(SZ_64K + GICR_ISPENDR0,
> +        vgic_mmio_read_pending, vgic_mmio_write_spending, 4,
> +        VGIC_ACCESS_32bit),
> +    REGISTER_DESC_WITH_LENGTH(SZ_64K + GICR_ICPENDR0,
> +        vgic_mmio_read_pending, vgic_mmio_write_cpending,4,
> +        VGIC_ACCESS_32bit),
> +    REGISTER_DESC_WITH_LENGTH(SZ_64K + GICR_ISACTIVER0,
> +        vgic_mmio_read_active, vgic_mmio_write_sactive, 4,
> +        VGIC_ACCESS_32bit),
> +    REGISTER_DESC_WITH_LENGTH(SZ_64K + GICR_ICACTIVER0,
> +        vgic_mmio_read_active, vgic_mmio_write_cactive, 4,
> +        VGIC_ACCESS_32bit),
> +    REGISTER_DESC_WITH_LENGTH(SZ_64K + GICR_IPRIORITYR0,
> +        vgic_mmio_read_priority, vgic_mmio_write_priority, 32,
> +        VGIC_ACCESS_32bit | VGIC_ACCESS_8bit),
> +    REGISTER_DESC_WITH_LENGTH(SZ_64K + GICR_ICFGR0,
> +        vgic_mmio_read_config, vgic_mmio_write_config, 8,
> +        VGIC_ACCESS_32bit),
> +    REGISTER_DESC_WITH_LENGTH(SZ_64K + GICR_IGRPMODR0,
> +        vgic_mmio_read_raz, vgic_mmio_write_wi, 4,
> +        VGIC_ACCESS_32bit),
> +    REGISTER_DESC_WITH_LENGTH(SZ_64K + GICR_NSACR,
> +        vgic_mmio_read_raz, vgic_mmio_write_wi, 4,
> +        VGIC_ACCESS_32bit),
> +};
> +
> +unsigned int vgic_v3_init_dist_iodev(struct vgic_io_device *dev)
> +{
> +    dev->regions    = vgic_v3_dist_registers;
> +    dev->nr_regions = ARRAY_SIZE(vgic_v3_dist_registers);
> +
> +    return SZ_64K;
> +}
> +
> +/**
> + * vgic_register_redist_iodev - register a single redist iodev
> + * @vcpu:    The VCPU to which the redistributor belongs
> + *
> + * Register a KVM iodev for this VCPU's redistributor using the address
> + * provided.
> + *
> + * Return 0 on success, -ERRNO otherwise.
> + */
> +int vgic_register_redist_iodev(struct vcpu *vcpu)
> +{
> +    struct domain *d              = vcpu->domain;
> +    struct vgic_dist *vgic        = &d->arch.vgic;
> +    struct vgic_cpu *vgic_cpu     = &vcpu->arch.vgic;
> +    struct vgic_io_device *rd_dev = &vcpu->arch.vgic.rd_iodev;
> +    struct vgic_redist_region *rdreg;
> +    paddr_t rd_base;
> +
> +    /*
> +     * We may be creating VCPUs before having set the base address for the
> +     * redistributor region, in which case we will come back to this
> +     * function for all VCPUs when the base address is set.  Just return
> +     * without doing any work for now.
> +     */
> +    rdreg = vgic_v3_rdist_free_slot(&vgic->rd_regions);
> +    if ( !rdreg )
> +        return 0;
> +
> +    vgic_cpu->rdreg       = rdreg;
> +    vgic_cpu->rdreg_index = rdreg->free_index;
> +
> +    rd_base             = rdreg->base + rdreg->free_index * VGIC_V3_REDIST_SIZE;
> +
> +    rd_dev->base_fn     = gaddr_to_gfn(rd_base);
> +    rd_dev->iodev_type  = IODEV_REDIST;
> +    rd_dev->regions     = vgic_v3_rd_registers;
> +    rd_dev->nr_regions  = ARRAY_SIZE(vgic_v3_rd_registers);
> +    rd_dev->redist_vcpu = vcpu;
> +
> +    register_mmio_handler(d, &vgic_io_ops, rd_base, VGIC_V3_REDIST_SIZE,
> +                          rd_dev);
> +
> +    rdreg->free_index++;
> +    return 0;
> +}
> +
> +static int vgic_register_all_redist_iodevs(struct domain *d)
> +{
> +    struct vcpu *vcpu;
> +    int ret = 0;
> +
> +    for_each_vcpu(d, vcpu)
> +    {
> +        ret = vgic_register_redist_iodev(vcpu);
> +        if ( ret )
> +            break;
> +    }
> +
> +    if ( ret )
> +    {
> +        printk(XENLOG_ERR "Failed to register redistributor iodev\n");
> +    }
> +
> +    return ret;
> +}
> +
> +static inline size_t vgic_v3_rd_region_size(struct domain *d,
> +                                            struct vgic_redist_region *rdreg)
> +{
> +    if ( !rdreg->count )
> +        return d->max_vcpus * VGIC_V3_REDIST_SIZE;
> +    else
> +        return rdreg->count * VGIC_V3_REDIST_SIZE;
> +}
> +
> +/**
> + * vgic_v3_rdist_overlap - check if a region overlaps with any
> + * existing redistributor region
> + *
> + * @kvm: kvm handle
> + * @base: base of the region
> + * @size: size of region
> + *
> + * Return: true if there is an overlap
> + */
> +bool vgic_v3_rdist_overlap(struct domain *domain, paddr_t base, size_t size)
> +{
> +    struct vgic_dist *d = &domain->arch.vgic;
> +    struct vgic_redist_region *rdreg;
> +
> +    list_for_each_entry(rdreg, &d->rd_regions, list)
> +    {
> +        if ( (base + size > rdreg->base) &&
> +             (base < rdreg->base + vgic_v3_rd_region_size(domain, rdreg)) )
> +            return true;
> +    }
> +    return false;
> +}
> +
> +static inline bool vgic_dist_overlap(struct domain *domain, paddr_t base,
> +                                     size_t size)
> +{
> +    struct vgic_dist *d = &domain->arch.vgic;
> +
> +    return (base + size > d->dbase) && (base < d->dbase + VGIC_V3_DIST_SIZE);
> +}
> +
> +struct vgic_redist_region *vgic_v3_rdist_region_from_index(struct domain *d,
> +                                                           u32 index)
> +{
> +    struct list_head *rd_regions = &d->arch.vgic.rd_regions;
> +    struct vgic_redist_region *rdreg;
> +
> +    list_for_each_entry(rdreg, rd_regions, list)
> +    {
> +        if ( rdreg->index == index )
> +            return rdreg;
> +    }
> +    return NULL;
> +}
> +
> +/**
> + * vgic_v3_alloc_redist_region - Allocate a new redistributor region
> + *
> + * Performs various checks before inserting the rdist region in the list.
> + * Those tests depend on whether the size of the rdist region is known
> + * (ie. count != 0). The list is sorted by rdist region index.
> + *
> + * @kvm: kvm handle
> + * @index: redist region index
> + * @base: base of the new rdist region
> + * @count: number of redistributors the region is made of (0 in the old style
> + * single region, whose size is induced from the number of vcpus)
> + *
> + * Return 0 on success, < 0 otherwise
> + */
> +static int vgic_v3_alloc_redist_region(struct domain *domain, uint32_t index,
> +                                       paddr_t base, uint32_t count)
> +{
> +    struct vgic_dist *d = &domain->arch.vgic;
> +    struct vgic_redist_region *rdreg;
> +    struct list_head *rd_regions = &d->rd_regions;
> +    int nr_vcpus                 = domain->max_vcpus;
> +    size_t size                  = count ? count * VGIC_V3_REDIST_SIZE
> +                                         : nr_vcpus * VGIC_V3_REDIST_SIZE;
> +    int ret;
> +
> +    /* cross the end of memory ? */
> +    if ( base + size < base )
> +        return -EINVAL;
> +
> +    if ( list_empty(rd_regions) )
> +    {
> +        if ( index != 0 )
> +            return -EINVAL;
> +    }
> +    else
> +    {
> +        rdreg = list_last_entry(rd_regions, struct vgic_redist_region, list);
> +
> +        /* Don't mix single region and discrete redist regions */
> +        if ( !count && rdreg->count )
> +            return -EINVAL;
> +
> +        if ( !count )
> +            return -EEXIST;
> +
> +        if ( index != rdreg->index + 1 )
> +            return -EINVAL;
> +    }
> +
> +    /*
> +     * For legacy single-region redistributor regions (!count),
> +     * check that the redistributor region does not overlap with the
> +     * distributor's address space.
> +     */
> +    if ( !count && !IS_VGIC_ADDR_UNDEF(d->dbase) &&
> +         vgic_dist_overlap(domain, base, size) )
> +        return -EINVAL;
> +
> +    /* collision with any other rdist region? */
> +    if ( vgic_v3_rdist_overlap(domain, base, size) )
> +        return -EINVAL;
> +
> +    rdreg = xzalloc(struct vgic_redist_region);
> +    if ( !rdreg )
> +        return -ENOMEM;
> +
> +    rdreg->base = VGIC_ADDR_UNDEF;
> +
> +    ret         = vgic_check_iorange(rdreg->base, base, SZ_64K, size);
> +    if ( ret )
> +        goto free;
> +
> +    rdreg->base       = base;
> +    rdreg->count      = count;
> +    rdreg->free_index = 0;
> +    rdreg->index      = index;
> +
> +    list_add_tail(&rdreg->list, rd_regions);
> +    return 0;
> +free:
> +    xfree(rdreg);
> +    return ret;
> +}
> +
> +void vgic_v3_free_redist_region(struct vgic_redist_region *rdreg)
> +{
> +    list_del(&rdreg->list);
> +    xfree(rdreg);
> +}
> +
> +int vgic_v3_set_redist_base(struct domain *d, u32 index, u64 addr, u32 count)
> +{
> +    int ret;
> +
> +    ret = vgic_v3_alloc_redist_region(d, index, addr, count);
> +    if ( ret )
> +        return ret;
> +
> +    /*
> +     * Register iodevs for each existing VCPU.  Adding more VCPUs
> +     * afterwards will register the iodevs when needed.
> +     */
> +    ret = vgic_register_all_redist_iodevs(d);
> +    if ( ret )
> +    {
> +        struct vgic_redist_region *rdreg;
> +
> +        rdreg = vgic_v3_rdist_region_from_index(d, index);
> +        vgic_v3_free_redist_region(rdreg);
> +        return ret;
> +    }
> +
> +    return 0;
> +}
> diff --git a/xen/arch/arm/vgic/vgic-mmio.c b/xen/arch/arm/vgic/vgic-mmio.c
> index 5d935a7301..a96a7f8d96 100644
> --- a/xen/arch/arm/vgic/vgic-mmio.c
> +++ b/xen/arch/arm/vgic/vgic-mmio.c
> @@ -477,6 +477,21 @@ void vgic_mmio_write_config(struct vcpu *vcpu,
>       }
>   }
>   
> +int vgic_check_iorange(paddr_t ioaddr, paddr_t addr, paddr_t alignment,
> +                       paddr_t size)
> +{
> +    if ( !IS_VGIC_ADDR_UNDEF(ioaddr) )
> +        return -EEXIST;
> +
> +    if ( !IS_ALIGNED(addr, alignment) || !IS_ALIGNED(size, alignment) )
> +        return -EINVAL;
> +
> +    if ( addr + size < addr )
> +        return -EINVAL;
> +
> +    return 0;
> +}
> +
>   static int match_region(const void *key, const void *elt)
>   {
>       const unsigned int offset = (unsigned long)key;
> @@ -619,6 +634,9 @@ int vgic_register_dist_iodev(struct domain *d, gfn_t dist_base_fn,
>       case VGIC_V2:
>           len = vgic_v2_init_dist_iodev(io_device);
>           break;
> +    case VGIC_V3:
> +        len = vgic_v3_init_dist_iodev(io_device);
> +        break;
>       default:
>           BUG();
>       }
> diff --git a/xen/arch/arm/vgic/vgic-mmio.h b/xen/arch/arm/vgic/vgic-mmio.h
> index 3566cf237c..c38ef51e6b 100644
> --- a/xen/arch/arm/vgic/vgic-mmio.h
> +++ b/xen/arch/arm/vgic/vgic-mmio.h
> @@ -135,4 +135,14 @@ void vgic_mmio_write_config(struct vcpu *vcpu,
>   
>   unsigned int vgic_v2_init_dist_iodev(struct vgic_io_device *dev);
>   
> +/* extract @num bytes at @offset bytes offset in data */
> +unsigned long extract_bytes(uint64_t data, unsigned int offset,
> +			    unsigned int num);
> +
> +uint64_t update_64bit_reg(u64 reg, unsigned int offset, unsigned int len,
> +		     unsigned long val);
> +
> +int vgic_check_iorange(paddr_t ioaddr, paddr_t addr, paddr_t alignment,
> +		       paddr_t size);
> +
>   #endif
> diff --git a/xen/arch/arm/vgic/vgic-v3.c b/xen/arch/arm/vgic/vgic-v3.c
> new file mode 100644
> index 0000000000..12963d877e
> --- /dev/null
> +++ b/xen/arch/arm/vgic/vgic-v3.c
> @@ -0,0 +1,383 @@
> +/*
> + * Imported from Linux ("new" KVM VGIC) and heavily adapted to Xen.
> + *
> + * This program is free software; you can redistribute it and/or modify
> + * it under the terms of the GNU General Public License version 2 as
> + * published by the Free Software Foundation.
> + *
> + * 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 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/>.
> + */
> +
> +#include <asm/new_vgic.h>
> +#include <xen/guest_access.h>
> +#include <asm/gic_v3_defs.h>
> +#include <asm/gic_v3_its.h>
> +#include <asm/gic.h>
> +#include <xen/sched.h>
> +#include <xen/sizes.h>
> +
> +#include "vgic.h"
> +
> +static struct {
> +    bool enabled;
> +    /* Distributor interface address */
> +    paddr_t dbase;
> +    /* Re-distributor regions */
> +    unsigned int nr_rdist_regions;
> +    const struct rdist_region *regions;
> +    unsigned int intid_bits; /* Number of interrupt ID bits */
> +} vgic_v3_hw_data;
> +
> +void vgic_v3_setup_hw(paddr_t dbase, unsigned int nr_rdist_regions,
> +                      const struct rdist_region *regions,
> +                      unsigned int intid_bits)
> +{
> +    vgic_v3_hw_data.enabled          = true;
> +    vgic_v3_hw_data.dbase            = dbase;
> +    vgic_v3_hw_data.nr_rdist_regions = nr_rdist_regions;
> +    vgic_v3_hw_data.regions          = regions;
> +    vgic_v3_hw_data.intid_bits       = intid_bits;
> +}
> +
> +/*
> + * transfer the content of the LRs back into the corresponding ap_list:
> + * - active bit is transferred as is
> + * - pending bit is
> + *   - transferred as is in case of edge sensitive IRQs
> + *   - set to the line-level (resample time) for level sensitive IRQs
> + */
> +void vgic_v3_fold_lr_state(struct vcpu *vcpu)
> +{
> +    struct vgic_cpu *vgic_cpu = &vcpu->arch.vgic;
> +    unsigned int used_lrs     = vcpu->arch.vgic.used_lrs;
> +    unsigned long flags;
> +    unsigned int lr;
> +
> +    if ( !used_lrs ) /* No LRs used, so nothing to sync back here. */
> +        return;
> +
> +    gic_hw_ops->update_hcr_status(GICH_HCR_UIE, false);
> +
> +    for ( lr = 0; lr < used_lrs; lr++ )
> +    {
> +        struct gic_lr lr_val;
> +        uint32_t intid;
> +        struct vgic_irq *irq;
> +        struct irq_desc *desc = NULL;
> +
> +        gic_hw_ops->read_lr(lr, &lr_val);
> +
> +        /*
> +         * TODO: Possible optimization to avoid reading LRs:
> +         * Read the ELRSR to find out which of our LRs have been cleared
> +         * by the guest. We just need to know the IRQ number for those, which
> +         * we could save in an array when populating the LRs.
> +         * This trades one MMIO access (ELRSR) for possibly more than one (LRs),
> +         * but requires some more code to save the IRQ number and to handle
> +         * those finished IRQs according to the algorithm below.
> +         * We need some numbers to justify this: chances are that we don't
> +         * have many LRs in use most of the time, so we might not save much.
> +         */
> +        gic_hw_ops->clear_lr(lr);
> +
> +        intid = lr_val.virq;
> +        irq   = vgic_get_irq(vcpu->domain, vcpu, intid);
> +
> +        local_irq_save(flags);
> +
> +        /*
> +         * We check this here without taking the lock, because the locking
> +         * order forces us to do so. irq->hw is a "write-once" member, so
> +         * whenever we read true, the associated hardware IRQ will not go
> +         * away anymore.
> +         * TODO: rework this if possible, either by using the desc pointer
> +         * directly in struct vgic_irq or by changing the locking order.
> +         * Especially if we ever drop the assumption above.
> +         */
> +        if ( irq->hw )
> +        {
> +            desc = irq_to_desc(irq->hwintid);
> +            spin_lock(&desc->lock);
> +        }
> +
> +        spin_lock(&irq->irq_lock);
> +
> +        /*
> +         * If a hardware mapped IRQ has been handled for good, we need to
> +         * clear the _IRQ_INPROGRESS bit to allow handling of new IRQs.
> +         *
> +         * TODO: This is probably racy, but is so already in the existing
> +         * VGIC. A fix does not seem to be trivial.
> +         */
> +        if ( irq->hw && !lr_val.active && !lr_val.pending )
> +            clear_bit(_IRQ_INPROGRESS, &desc->status);
> +
> +        /* Always preserve the active bit */
> +        irq->active = lr_val.active;
> +
> +        /* Edge is the only case where we preserve the pending bit */
> +        if ( irq->config == VGIC_CONFIG_EDGE && lr_val.pending )
> +        {
> +            irq->pending_latch = true;
> +
> +            if ( vgic_irq_is_sgi(intid) )
> +                irq->source |= (1U << lr_val.virt.source);
> +        }
> +
> +        /* Clear soft pending state when level irqs have been acked. */
> +        if ( irq->config == VGIC_CONFIG_LEVEL && !lr_val.pending )
> +            irq->pending_latch = false;
> +
> +        /*
> +         * Level-triggered mapped IRQs are special because we only
> +         * observe rising edges as input to the VGIC.
> +         *
> +         * If the guest never acked the interrupt we have to sample
> +         * the physical line and set the line level, because the
> +         * device state could have changed or we simply need to
> +         * process the still pending interrupt later.
> +         *
> +         * If this causes us to lower the level, we have to also clear
> +         * the physical active state, since we will otherwise never be
> +         * told when the interrupt becomes asserted again.
> +         */
> +        if ( vgic_irq_is_mapped_level(irq) && lr_val.pending )
> +        {
> +            ASSERT(irq->hwintid >= VGIC_NR_PRIVATE_IRQS);
> +
> +            irq->line_level = gic_read_pending_state(desc);
> +
> +            if ( !irq->line_level )
> +                gic_set_active_state(desc, false);
> +        }
> +
> +        spin_unlock(&irq->irq_lock);
> +        if ( desc )
> +            spin_unlock(&desc->lock);
> +        local_irq_restore(flags);
> +
> +        vgic_put_irq(vcpu->domain, irq);
> +    }
> +
> +    gic_hw_ops->update_hcr_status(GICH_HCR_EN, false);
> +    vgic_cpu->used_lrs = 0;
> +}
> +
> +/* Requires the irq to be locked already */
> +void vgic_v3_populate_lr(struct vcpu *vcpu, struct vgic_irq *irq, int lr)
> +{
> +    struct gic_lr lr_val = { 0 };
> +
> +    lr_val.virq          = irq->intid;
> +
> +    if ( irq_is_pending(irq) )
> +    {
> +        lr_val.pending = true;
> +
> +        if ( irq->config == VGIC_CONFIG_EDGE )
> +            irq->pending_latch = false;
> +
> +        if ( vgic_irq_is_sgi(irq->intid) &&
> +             vcpu->domain->arch.vgic.version == VGIC_V2 )
> +        {
> +            uint32_t src = ffs(irq->source);
> +
> +            BUG_ON(!src);
> +            lr_val.virt.source = (src - 1);
> +            irq->source &= ~(1 << (src - 1));
> +            if ( irq->source )
> +                irq->pending_latch = true;
> +        }
> +    }
> +
> +    lr_val.active = irq->active;
> +
> +    if ( irq->hw )
> +    {
> +        lr_val.hw_status = true;
> +        lr_val.hw.pirq   = irq->hwintid;
> +        /*
> +         * Never set pending+active on a HW interrupt, as the
> +         * pending state is kept at the physical distributor
> +         * level.
> +         */
> +        if ( irq->active && irq_is_pending(irq) )
> +            lr_val.pending = false;
> +    }
> +    else
> +    {
> +        if ( irq->config == VGIC_CONFIG_LEVEL )
> +            lr_val.virt.eoi = true;
> +    }
> +
> +    /*
> +     * Level-triggered mapped IRQs are special because we only observe
> +     * rising edges as input to the VGIC.  We therefore lower the line
> +     * level here, so that we can take new virtual IRQs.  See
> +     * vgic_v2_fold_lr_state for more info.
> +     */
> +    if ( vgic_irq_is_mapped_level(irq) && lr_val.pending )
> +        irq->line_level = false;
> +
> +    /* The GICv2 LR only holds five bits of priority. */
> +    lr_val.priority = irq->priority >> 3;
> +
> +    gic_hw_ops->write_lr(lr, &lr_val);
> +}
> +
> +static bool vgic_v3_redist_region_full(struct vgic_redist_region *region)
> +{
> +    if ( !region->count )
> +        return false;
> +
> +    return (region->free_index >= region->count);
> +}
> +
> +/**
> + * vgic_v3_rdist_free_slot - Look up registered rdist regions and identify one
> + * which has free space to put a new rdist region.
> + *
> + * @rd_regions: redistributor region list head
> + *
> + * A redistributor regions maps n redistributors, n = region size / (2 x 64kB).
> + * Stride between redistributors is 0 and regions are filled in the index order.
> + *
> + * Return: the redist region handle, if any, that has space to map a new rdist
> + * region.
> + */
> +struct vgic_redist_region *vgic_v3_rdist_free_slot(struct list_head *rd_regions)
> +{
> +    struct vgic_redist_region *rdreg;
> +
> +    list_for_each_entry(rdreg, rd_regions, list)
> +    {
> +        if ( !vgic_v3_redist_region_full(rdreg) )
> +            return rdreg;
> +    }
> +    return NULL;
> +}
> +
> +unsigned int vgic_v3_max_rdist_count(const struct domain *d)
> +{
> +    /*
> +     * Normally there is only one GICv3 redistributor region.
> +     * The GICv3 DT binding provisions for multiple regions, since there are
> +     * platforms out there which need those (multi-socket systems).
> +     * For domain using the host memory layout, we have to live with the MMIO
> +     * layout the hardware provides, so we have to copy the multiple regions
> +     * - as the first region may not provide enough space to hold all
> +     * redistributors we need.
> +     * All the other domains will get a constructed memory map, so we can go
> +     * with the architected single redistributor region.
> +     */
> +    return domain_use_host_layout(d) ? vgic_v3_hw_data.nr_rdist_regions
> +                                     : GUEST_GICV3_RDIST_REGIONS;
> +}
> +
> +int vgic_register_redist_iodev(struct vcpu *vcpu);
> +
> +void vgic_v3_enable(struct vcpu *vcpu)
> +{
> +    /* Get the show on the road... */
> +    vgic_register_redist_iodev(vcpu);
> +    gic_hw_ops->update_hcr_status(GICH_HCR_EN, true);
> +}
> +
> +int vgic_v3_lpi_sync_pending_status(struct domain *d, struct vgic_irq *irq)
> +{
> +    struct vcpu *vcpu;
> +    int byte_offset, bit_nr;
> +    paddr_t pendbase, ptr;
> +    bool status;
> +    u8 val;
> +    int ret;
> +    unsigned long flags;
> +
> +retry:
> +    vcpu = irq->target_vcpu;
> +    if ( !vcpu )
> +        return 0;
> +
> +    pendbase    = GICR_PENDBASER_ADDRESS(vcpu->arch.vgic.pendbaser);
> +
> +    byte_offset = irq->intid / BITS_PER_BYTE;
> +    bit_nr      = irq->intid % BITS_PER_BYTE;
> +    ptr         = pendbase + byte_offset;
> +
> +    ret         = access_guest_memory_by_gpa(d, ptr, &val, 1, false);
> +    if ( ret )
> +        return ret;
> +
> +    status = val & (1 << bit_nr);
> +
> +    spin_lock_irqsave(&irq->irq_lock, flags);
> +    if ( irq->target_vcpu != vcpu )
> +    {
> +        spin_unlock_irqrestore(&irq->irq_lock, flags);
> +        goto retry;
> +    }
> +    irq->pending_latch = status;
> +    vgic_queue_irq_unlock(vcpu->domain, irq, flags);
> +
> +    if ( status )
> +    {
> +        /* clear consumed data */
> +        val &= ~(1 << bit_nr);
> +        ret = access_guest_memory_by_gpa(d, ptr, &val, 1, true);
> +        if ( ret )
> +            return ret;
> +    }
> +    return 0;
> +}
> +
> +int vgic_v3_map_resources(struct domain *d)
> +{
> +    int rdist_count, i, ret;
> +
> +    /* Allocate memory for Re-distributor regions */
> +    rdist_count = vgic_v3_max_rdist_count(d);
> +
> +    /*
> +     * For domain using the host memory layout, it gets the hardware
> +     * address.
> +     * Other domains get the virtual platform layout.
> +     */
> +    if ( domain_use_host_layout(d) )
> +    {
> +        d->arch.vgic.dbase = vgic_v3_hw_data.dbase;
> +
> +        for ( i = 0; i < vgic_v3_hw_data.nr_rdist_regions; i++ )
> +        {
> +            vgic_v3_set_redist_base(d, i, vgic_v3_hw_data.regions[i].base,
> +                                    vgic_v3_hw_data.regions[i].size /
> +                                        GICV3_GICR_SIZE);
> +        }
> +    }
> +    else
> +    {
> +        d->arch.vgic.dbase = GUEST_GICV3_GICD_BASE;
> +
> +        /* A single Re-distributor region is mapped for the guest. */
> +        BUILD_BUG_ON(GUEST_GICV3_RDIST_REGIONS != 1);
> +
> +        /* The first redistributor should contain enough space for all CPUs */
> +        BUILD_BUG_ON((GUEST_GICV3_GICR0_SIZE / GICV3_GICR_SIZE) <
> +                     MAX_VIRT_CPUS);
> +        vgic_v3_set_redist_base(d, 0, GUEST_GICV3_GICR0_BASE,
> +                                GUEST_GICV3_GICR0_SIZE / GICV3_GICR_SIZE);
> +    }
> +
> +    /* Register mmio handle for the Distributor */
> +    ret =
> +        vgic_register_dist_iodev(d, gaddr_to_gfn(d->arch.vgic.dbase), VGIC_V3);
> +
> +    d->arch.vgic.ready = true;
> +
> +    return 0;
> +}
> diff --git a/xen/arch/arm/vgic/vgic.c b/xen/arch/arm/vgic/vgic.c
> index b9463a5f27..05e6af4384 100644
> --- a/xen/arch/arm/vgic/vgic.c
> +++ b/xen/arch/arm/vgic/vgic.c
> @@ -151,6 +151,28 @@ void vgic_put_irq(struct domain *d, struct vgic_irq *irq)
>       xfree(irq);
>   }
>   
> +void vgic_flush_pending_lpis(struct vcpu *vcpu)
> +{
> +    struct vgic_cpu *vgic_cpu = &vcpu->arch.vgic;
> +    struct vgic_irq *irq, *tmp;
> +    unsigned long flags;
> +
> +    spin_lock_irqsave(&vgic_cpu->ap_list_lock, flags);
> +
> +    list_for_each_entry_safe(irq, tmp, &vgic_cpu->ap_list_head, ap_list)
> +    {
> +        if ( irq->intid >= VGIC_MIN_LPI )
> +        {
> +            spin_lock(&irq->irq_lock);
> +            list_del(&irq->ap_list);
> +            irq->vcpu = NULL;
> +            spin_unlock(&irq->irq_lock);
> +            vgic_put_irq(vcpu->domain, irq);
> +        }
> +    }
> +
> +    spin_unlock_irqrestore(&vgic_cpu->ap_list_lock, flags);
> +}
>   /**
>    * vgic_target_oracle() - compute the target vcpu for an irq
>    * @irq:    The irq to route. Must be already locked.
> @@ -520,7 +542,14 @@ retry:
>   
>   static void vgic_fold_lr_state(struct vcpu *vcpu)
>   {
> -    vgic_v2_fold_lr_state(vcpu);
> +    if ( vcpu->domain->arch.vgic.version == GIC_V2 )
> +    {
> +        vgic_v2_fold_lr_state(vcpu);
> +    }
> +    else
> +    {
> +        vgic_v3_fold_lr_state(vcpu);
> +    }
>   }
>   
>   /* Requires the irq_lock to be held. */
> @@ -529,7 +558,14 @@ static void vgic_populate_lr(struct vcpu *vcpu,
>   {
>       ASSERT(spin_is_locked(&irq->irq_lock));
>   
> -    vgic_v2_populate_lr(vcpu, irq, lr);
> +    if ( vcpu->domain->arch.vgic.version == GIC_V2 )
> +    {
> +        vgic_v2_populate_lr(vcpu, irq, lr);
> +    }
> +    else
> +    {
> +        vgic_v3_populate_lr(vcpu, irq, lr);
> +    }
>   }
>   
>   static void vgic_set_underflow(struct vcpu *vcpu)
> @@ -851,9 +887,13 @@ struct irq_desc *vgic_get_hw_irq_desc(struct domain *d, struct vcpu *v,
>   
>   bool vgic_emulate(struct cpu_user_regs *regs, union hsr hsr)
>   {
> -    ASSERT(current->domain->arch.vgic.version == GIC_V3);
> -
> -    return false;
> +    switch ( current->domain->arch.vgic.version )
> +    {
> +    case GIC_V3:
> +        return vgic_v3_emulate_reg(regs, hsr);
> +    default:
> +        return false;
> +    }
>   }
>   
>   /*
> @@ -950,6 +990,8 @@ unsigned int vgic_max_vcpus(unsigned int domctl_vgic_version)
>       {
>       case XEN_DOMCTL_CONFIG_GIC_V2:
>           return VGIC_V2_MAX_CPUS;
> +    case XEN_DOMCTL_CONFIG_GIC_V3:
> +        return VGIC_V3_MAX_CPUS;
>   
>       default:
>           return 0;
> @@ -957,14 +999,6 @@ unsigned int vgic_max_vcpus(unsigned int domctl_vgic_version)
>   }
>   
>   #ifdef CONFIG_GICV3
> -/* Dummy implementation to allow building without actual vGICv3 support. */
> -void vgic_v3_setup_hw(paddr_t dbase,
> -                      unsigned int nr_rdist_regions,
> -                      const struct rdist_region *regions,
> -                      unsigned int intid_bits)
> -{
> -    panic("New VGIC implementation does not yet support GICv3\n");
> -}
>   #endif
>   
>   /*
> diff --git a/xen/arch/arm/vgic/vgic.h b/xen/arch/arm/vgic/vgic.h
> index c6bc3509a5..aca977a5c9 100644
> --- a/xen/arch/arm/vgic/vgic.h
> +++ b/xen/arch/arm/vgic/vgic.h
> @@ -68,7 +68,53 @@ int vgic_v2_map_resources(struct domain *d);
>   int vgic_register_dist_iodev(struct domain *d, gfn_t dist_base_fn,
>                                enum vgic_type);
>   
> -#endif
> +#ifdef CONFIG_GICV3
> +void vgic_v3_fold_lr_state(struct vcpu *vcpu);
> +void vgic_v3_populate_lr(struct vcpu *vcpu, struct vgic_irq *irq, int lr);
> +void vgic_v3_enable(struct vcpu *vcpu);
> +int vgic_v3_map_resources(struct domain *d);
> +bool vgic_v3_emulate_reg(struct cpu_user_regs *regs, union hsr hsr);
> +int vgic_v3_lpi_sync_pending_status(struct domain *d, struct vgic_irq *irq);
> +bool vgic_lpis_enabled(struct vcpu *vcpu);
> +u64 vgic_sanitise_field(u64 reg, u64 field_mask, int field_shift,
> +			u64 (*sanitise_fn)(u64));
> +u64 vgic_sanitise_shareability(u64 field);
> +u64 vgic_sanitise_inner_cacheability(u64 field);
> +u64 vgic_sanitise_outer_cacheability(u64 field);
> +unsigned int vgic_v3_init_dist_iodev(struct vgic_io_device *dev);
> +#else
> +static inline void vgic_v3_fold_lr_state(struct vcpu *vcpu)
> +{
> +}
> +static inline void vgic_v3_populate_lr(struct vcpu *vcpu, struct vgic_irq *irq, int lr)
> +{
> +}
> +static inline void vgic_v3_enable(struct vcpu *vcpu)
> +{
> +}
> +static inline int vgic_v3_map_resources(struct domain *d)
> +{
> +    return 0;
> +}
> +static inline bool vgic_v3_emulate_reg(struct cpu_user_regs *regs, union hsr hsr)
> +{
> +    return false;
> +}
> +static inline int vgic_v3_lpi_sync_pending_status(struct domain *d, struct vgic_irq *irq)
> +{
> +    return 0;
> +}
> +static inline bool vgic_lpis_enabled(struct vcpu *vcpu)
> +{
> +    return false;
> +}
> +static inline unsigned int vgic_v3_init_dist_iodev(struct vgic_io_device *dev)
> +{
> +    return 0;
> +}
> +#endif /* CONFIG_GICV3 */
> +
> +#endif /* __XEN_ARM_VGIC_VGIC_H__ */
>   
>   /*
>    * Local variables:


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 09:40:22 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 09:40:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623632.971650 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvwqe-00075A-97; Thu, 26 Oct 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 623632.971650; Thu, 26 Oct 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 1qvwqe-000753-6S; Thu, 26 Oct 2023 09:40:16 +0000
Received: by outflank-mailman (input) for mailman id 623632;
 Thu, 26 Oct 2023 09:40: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 1qvwqd-00074x-4P
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 09:40: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 1qvwqc-00078L-OC; Thu, 26 Oct 2023 09:40:14 +0000
Received: from [15.248.2.156] (helo=[10.24.67.24])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qvwqc-0005YI-Il; Thu, 26 Oct 2023 09:40: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:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=G22MVmGOH1oGQA8ktPWKiJDnMDWth0ZEmp4sgf9B87Y=; b=OLtCH9aQK1cgIk8HdGTnuVvWyA
	01knChJsbHMy6COPVR5fUGIUiWsh8cTMfL41/YipaShC65+soumBPDtrfFYz/A2G+0J+QY6Hpo5UG
	9Wk2MPfCn7QNA7z+qxUjsQaraV/pYYBHShetqonKGagxP30aiLOLqYs2JF0pcT2JSPVA=;
Message-ID: <e61bb4e6-76ee-47d5-820f-926a85a8ec0f@xen.org>
Date: Thu, 26 Oct 2023 10:40:12 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN] xen/arm: arm32: Use adr_l instead of load_paddr for getting
 address of symbols
Content-Language: en-GB
To: Ayan Kumar Halder <ayan.kumar.halder@amd.com>,
 xen-devel@lists.xenproject.org
Cc: sstabellini@kernel.org, bertrand.marquis@arm.com, michal.orzel@amd.com
References: <20231025170304.2331922-1-ayan.kumar.halder@amd.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <20231025170304.2331922-1-ayan.kumar.halder@amd.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi,

On 25/10/2023 18:03, Ayan Kumar Halder wrote:
> Before the MMU is turned on, the address returned for any symbol will always be
> physical address. Thus, one can use adr_l instead of load_paddr.
> 
> create_table_entry() now takes an extra argument to denote if it is called after
> the mmu is turned on or not.  If it is called with mmu on, then it uses
> load_paddr to get the physical address of the page table symbol.
> 
> Signed-off-by: Ayan Kumar Halder <ayan.kumar.halder@amd.com>
> ---
> Refer https://lists.archive.carbon60.com/xen/devel/682900 for details.
> 
>   xen/arch/arm/arm32/head.S | 35 ++++++++++++++++++++---------------
>   1 file changed, 20 insertions(+), 15 deletions(-)
> 
> diff --git a/xen/arch/arm/arm32/head.S b/xen/arch/arm/arm32/head.S
> index 33b038e7e0..bf442b0434 100644
> --- a/xen/arch/arm/arm32/head.S
> +++ b/xen/arch/arm/arm32/head.S
> @@ -171,7 +171,7 @@ past_zImage:
>   
>           /* Using the DTB in the .dtb section? */
>   .ifnes CONFIG_DTB_FILE,""
> -        load_paddr r8, _sdtb
> +        adr_l r8, _sdtb
>   .endif
>   
>           /* Initialize the UART if earlyprintk has been enabled. */
> @@ -213,7 +213,7 @@ GLOBAL(init_secondary)
>           mrc   CP32(r1, MPIDR)
>           bic   r7, r1, #(~MPIDR_HWID_MASK) /* Mask out flags to get CPU ID */
>   
> -        load_paddr r0, smp_up_cpu
> +        adr_l r0, smp_up_cpu
>           dsb
>   2:      ldr   r1, [r0]
>           cmp   r1, r7
> @@ -406,6 +406,7 @@ ENDPROC(cpu_init)
>    * tbl:     table symbol to point to
>    * virt:    virtual address
>    * lvl:     page-table level
> + * mmu_on:  is mmu on
>    *
>    * Preserves \virt
>    * Clobbers r1 - r4
> @@ -414,10 +415,14 @@ ENDPROC(cpu_init)
>    *
>    * Note that \virt should be in a register other than r1 - r4
>    */
> -.macro create_table_entry, ptbl, tbl, virt, lvl
> +.macro create_table_entry, ptbl, tbl, virt, lvl, mmu_on
> +    .if \mmu_on == 1
>           load_paddr r4, \tbl
> -        create_table_entry_from_paddr \ptbl, r4, \virt, \lvl
> - .endm
> +    .else
> +        adr_l r4, \tbl
> +    .endif
> +    create_table_entry_from_paddr \ptbl, r4, \virt, \lvl
> +.endm
>   
>   /*
>    * Macro to create a mapping entry in \tbl to \paddr. Only mapping in 3rd
> @@ -479,7 +484,7 @@ create_page_tables:
>            * create_table_entry_paddr() will clobber the register storing
>            * the physical address of the table to point to.
>            */
> -        load_paddr r5, boot_third
> +        adr_l r5, boot_third
>           mov_w r4, XEN_VIRT_START
>   .rept XEN_NR_ENTRIES(2)
>           mov   r0, r5                        /* r0 := paddr(l3 table) */
> @@ -522,8 +527,8 @@ create_page_tables:
>            * 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_table_entry boot_pgtable, boot_second_id, r9, 1, 0
> +        create_table_entry boot_second_id, boot_third_id, r9, 2, 0
>           create_mapping_entry boot_third_id, r9, r9
>   
>           /*
> @@ -537,7 +542,7 @@ create_page_tables:
>           bne   use_temporary_mapping
>   
>           mov_w r0, XEN_VIRT_START
> -        create_table_entry boot_pgtable, boot_second, r0, 1
> +        create_table_entry boot_pgtable, boot_second, r0, 1, 0
>           mov   r12, #0                /* r12 := temporary mapping not created */
>           mov   pc, lr
>   
> @@ -551,7 +556,7 @@ use_temporary_mapping:
>   
>           /* 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
> +        create_table_entry boot_pgtable, boot_second, r0, 1, 0
>   
>           mov   r12, #1                /* r12 := temporary mapping created */
>           mov   pc, lr
> @@ -578,7 +583,7 @@ enable_mmu:
>           flush_xen_tlb_local r0
>   
>           /* Write Xen's PT's paddr into the HTTBR */
> -        load_paddr r0, boot_pgtable
> +        adr_l r0, boot_pgtable
>           mov   r1, #0                 /* r0:r1 is paddr (boot_pagetable) */
>           mcrr  CP64(r0, r1, HTTBR)
>           isb
> @@ -658,7 +663,7 @@ switch_to_runtime_mapping:
>   
>           /* Map boot_second into boot_pgtable */
>           mov_w r0, XEN_VIRT_START
> -        create_table_entry boot_pgtable, boot_second, r0, 1
> +        create_table_entry boot_pgtable, boot_second, r0, 1, 1
>   
>           /* Ensure any page table updates are visible before continuing */
>           dsb   nsh
> @@ -739,7 +744,7 @@ setup_fixmap:
>   #endif
>           /* Map fixmap into boot_second */
>           mov_w r0, FIXMAP_ADDR(0)
> -        create_table_entry boot_second, xen_fixmap, r0, 2
> +        create_table_entry boot_second, xen_fixmap, r0, 2, 0
>           /* Ensure any page table updates made above have occurred. */
>           dsb   nshst
>           /*
> @@ -897,8 +902,8 @@ ENTRY(lookup_processor_type)
>    */
>   __lookup_processor_type:
>           mrc   CP32(r0, MIDR)                /* r0 := our cpu id */
> -        load_paddr r1, __proc_info_start
> -        load_paddr r2, __proc_info_end
> +        adr_l r1, __proc_info_start
> +        adr_l r2, __proc_info_end

On top of what's Michal already mentioned, you can remove the line in 
lookup_process_type() which set r10. It was only present so load_paddr() 
do nothing when called from the C world.

It is a good hack to remove :).

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 09:42:32 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 09:42:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623635.971660 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvwso-0007fU-Kq; Thu, 26 Oct 2023 09:42:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623635.971660; Thu, 26 Oct 2023 09: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 1qvwso-0007fN-Hj; Thu, 26 Oct 2023 09:42:30 +0000
Received: by outflank-mailman (input) for mailman id 623635;
 Thu, 26 Oct 2023 09: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=VqC+=GI=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qvwsn-0007fH-Ii
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 09:42:29 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id f93dc3aa-73e3-11ee-9b0e-b553b5be7939;
 Thu, 26 Oct 2023 11:42:27 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id C75E44EE0742;
 Thu, 26 Oct 2023 11:42: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: f93dc3aa-73e3-11ee-9b0e-b553b5be7939
MIME-Version: 1.0
Date: Thu, 26 Oct 2023 11:42:26 +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.cooper3@citrix.com, roger.pau@citrix.com, Wei Liu <wl@xen.org>, Jun
 Nakajima <jun.nakajima@intel.com>, Kevin Tian <kevin.tian@intel.com>,
 xen-devel@lists.xenproject.org
Subject: Re: [XEN PATCH][for-4.19 v4 3/8] x86: add deviation comments for
 asm-only functions
In-Reply-To: <alpine.DEB.2.22.394.2310251535320.271731@ubuntu-linux-20-04-desktop>
References: <cover.1698053876.git.nicola.vetrini@bugseng.com>
 <36d24b3a3e264f0e0b265b4f68d6432a143d64cd.1698053876.git.nicola.vetrini@bugseng.com>
 <a8370e98-1cb6-8fde-9458-e579047dd607@suse.com>
 <2d92ef1f753165e2fa9cc7c04c219217@bugseng.com>
 <52422128-156d-5d6c-46b2-261b1c7e85c0@suse.com>
 <734cc13409b44f709649895d76d388e2@bugseng.com>
 <alpine.DEB.2.22.394.2310241249080.271731@ubuntu-linux-20-04-desktop>
 <d60e17379fbfdb1288288ee079113a17@bugseng.com>
 <alpine.DEB.2.22.394.2310251535320.271731@ubuntu-linux-20-04-desktop>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <843362b110e38fcddf5d0c4b1ff95099@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 26/10/2023 00:36, Stefano Stabellini wrote:
> On Wed, 25 Oct 2023, Nicola Vetrini wrote:
>> On 24/10/2023 21:50, Stefano Stabellini wrote:
>> > On Tue, 24 Oct 2023, Nicola Vetrini wrote:
>> > > On 24/10/2023 10:14, Jan Beulich wrote:
>> > > > On 24.10.2023 10:01, Nicola Vetrini wrote:
>> > > > > On 24/10/2023 09:50, Jan Beulich wrote:
>> > > > > > On 23.10.2023 11:56, Nicola Vetrini wrote:
>> > > > > > > As stated in rules.rst, functions used only in asm code
>> > > > > > > are allowed to have no prior declaration visible when being
>> > > > > > > defined, hence these functions are deviated.
>> > > > > > > This also fixes violations of MISRA C:2012 Rule 8.4.
>> > > > > > >
>> > > > > > > Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
>> > > > > > > Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
>> > > > > > > ---
>> > > > > > > Changes in v3:
>> > > > > > > - added SAF deviations for vmx counterparts to svm functions.
>> > > > > >
>> > > > > > Same comment regarding the R-b here as for patch 2.
>> > > > > >
>> > > > > > > --- a/xen/arch/x86/hvm/svm/intr.c
>> > > > > > > +++ b/xen/arch/x86/hvm/svm/intr.c
>> > > > > > > @@ -123,6 +123,7 @@ static void svm_enable_intr_window(struct vcpu
>> > > *v,
>> > > > > > > struct hvm_intack intack)
>> > > > > > >          vmcb, general1_intercepts | GENERAL1_INTERCEPT_VINTR);
>> > > > > > >  }
>> > > > > > >
>> > > > > > > +/* SAF-1-safe */
>> > > > > > >  void svm_intr_assist(void)
>> > > > > > >  {
>> > > > > > >      struct vcpu *v = current;
>> > > > > >
>> > > > > > Linux has the concept of "asmlinkage" for functions interfacing C
>> > > and
>> > > > > > assembly. Was it considered to use that - even if expanding to
>> > > nothing
>> > > > > > for all present architectures - as a way to annotate affected
>> > > > > > definitions
>> > > > > > in place of the SAF-*-safe comments?
>> > > > >
>> > > > > It was proposed by Julien a while ago (I think it the thread on
>> > > > > deviations.rst) to define
>> > > > > a macro asmcall that expands to nothing, to mark all such functions.
>> > > > > Right now, it's not
>> > > > > strictly necessary (given that there are already some uses of SAF in
>> > > > > Stefano's for-4.19 branch.
>> > > >
>> > > > Can this then be revisited please before any such reaches staging?
>> > > >
>> > > > Jan
>> > >
>> > > I'll let Stefano answer this one.
>> >
>> > Yes it can. If Nicola sends new patches I'll make sure to remove the
>> > corresponding ones from for-4.19.
>> >
>> > Nicola, you might want to send me privately the list of commits to take
>> > out from for-4.19.
>> 
>> Actually I checked: the involved SAF comments are already in staging,
>> specifically all
>> were part of commit 5a415ef2b24d578d29479e38abda3d5285b9afed
> 
> OK. In that case we can still use the asmcall macro to deviate/fix new
> violations. I suggest we do that. At some point anyone can go ahead and
> replace those SAF comments with asmcall macros.

Perhaps asmlinkage is a better fit, so that it wouldn't sound strange 
applying it to
variables.

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


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 09:47:23 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 09:47:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623641.971670 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvwxS-0001GG-5Z; Thu, 26 Oct 2023 09:47:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623641.971670; Thu, 26 Oct 2023 09:47: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 1qvwxS-0001G9-2r; Thu, 26 Oct 2023 09:47:18 +0000
Received: by outflank-mailman (input) for mailman id 623641;
 Thu, 26 Oct 2023 09:47: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=jm+b=GI=amd.com=Xenia.Ragiadakou@srs-se1.protection.inumbo.net>)
 id 1qvwxQ-0001G3-Kd
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 09:47:16 +0000
Received: from NAM04-BN8-obe.outbound.protection.outlook.com
 (mail-bn8nam04on20615.outbound.protection.outlook.com
 [2a01:111:f400:7e8d::615])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id a3162f34-73e4-11ee-9b0e-b553b5be7939;
 Thu, 26 Oct 2023 11:47:13 +0200 (CEST)
Received: from CY5PR15CA0188.namprd15.prod.outlook.com (2603:10b6:930:82::9)
 by IA0PR12MB7650.namprd12.prod.outlook.com (2603:10b6:208:436::14) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.34; Thu, 26 Oct
 2023 09:47:08 +0000
Received: from CY4PEPF0000EE33.namprd05.prod.outlook.com
 (2603:10b6:930:82:cafe::79) by CY5PR15CA0188.outlook.office365.com
 (2603:10b6:930:82::9) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.22 via Frontend
 Transport; Thu, 26 Oct 2023 09:47:08 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 CY4PEPF0000EE33.mail.protection.outlook.com (10.167.242.39) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6933.15 via Frontend Transport; Thu, 26 Oct 2023 09:47:07 +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.32; Thu, 26 Oct
 2023 04:47: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: a3162f34-73e4-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=T9k8vDM6wtvk70wtwaajzoYEzt/TrIGXJrdKj55cqVmwf24VIYOhyboKELmytAlobnXLtjNbyQmMdhwe42NftgNt0HHJ+YB46Pg1EnjlkZ6T9+YkWRSWNMr7n1eiqxG65CzmVolbX9CkjBaAIgxspNllIoLOuR+IaHM/pTTgsSVGHGoPWseDc2QLaRkxmszfehyb9ZCMbyT4aCDUvVVw2E3MbM9ejd4mF2cPMBzJJ25v8bVjWegHv1eqi1j/HWpURIWFdK+bJlXQnV2f4+JkkCWgVk9NNg4Lv5IYQzP/QVzP8W92WhfQuU1Chsx9ylFX+SIldkXJOvab9WOi6RJ4kw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=KpxjwBFCBu4GVbrCVetKq3Zrkk6FRLF+hLzDjDD3LyU=;
 b=g+qpMl60S+rRfiHnFGAYYaaAsnVyC86oEWT/gaMbPgaWYks7+iVNqEFBFXeVAk/1V8lCHNADqbMvSbt2JqmYFlebd8NC2Ki+vClDLO4HtWAF+UEoG9Msb1mL4kDrSJIpMP9UrIg/ppoibxw2qUx5kqURIEtKLyFPW7VPgDsbXM3jlCkiI8luw2wNosL4BWDTYdZ2MBUssAvTwi3Mh8miSBuc/xU2/qa2HTo44V/MxJCfoi8uSfXo+8Fc5ruKhnYjPxqNaik+uVGT7T5PT63KiiccwAVZnxPwnRD8BXvE3Y/ci4VybcA+G6ma+dtw5daJ18pV/2lYn7zSqGp91ScBIQ==
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=KpxjwBFCBu4GVbrCVetKq3Zrkk6FRLF+hLzDjDD3LyU=;
 b=DIGoEaFVMsFHQGlUtI9W6BLASorzMYugPOD0h4bkKbWvmWbWogi6fTwaVwH3aqOUrkDhomhnK2wkPAJWLsYd6EXWn9SDGj/bA+WfdN6cCa1xrOxWd4X9tYE3YT1D+zre3TljgO5a75dAtYHZBzoxmgu5xfqY6yinleBnXYrzIyk=
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
Content-Type: multipart/alternative;
	boundary="------------83AJLeVJPG8Yqwo11XIXY4hN"
Message-ID: <c107d63c-25a3-4f17-a5e8-7ec3ccd94ce3@amd.com>
Date: Thu, 26 Oct 2023 12:46:57 +0300
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH] x86/hvm/dom0: fix PVH initrd and metadata placement
Content-Language: en-US
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>, <xen-devel@lists.xenproject.org>
References: <20231026064543.43369-1-xenia.ragiadakou@amd.com>
 <ac7e9bac-6d74-a5bf-d703-3c5455e581ea@suse.com>
 <7712c60b-4f89-483e-89e4-7ac8f4d0311e@amd.com>
 <809115b1-2a47-583f-2d04-72a5a21ee7da@suse.com>
From: Xenia Ragiadakou <xenia.ragiadakou@amd.com>
In-Reply-To: <809115b1-2a47-583f-2d04-72a5a21ee7da@suse.com>
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: CY4PEPF0000EE33:EE_|IA0PR12MB7650:EE_
X-MS-Office365-Filtering-Correlation-Id: bd996a71-63be-4466-7cba-08dbd60884c9
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	8OqyppI3msdKrjyPGcwEvj3+gAk3bRZR3eW6+m2ORqh1UGRU5YDw7UFOeu1EC9uyGlBHzwViLGnhdBv1CleyflVqskopNMyHh4e2DiOmAKfUG19eK8xheRGMx2QT6A2OPSElFKQEGS9XDld3wtUG33Kf7guxwzaLukuoCfl1nqG22iy/PWmJbzb8mJ1J70DS+he4qsnC2pnFGn0Z2lKSU79voBD3bdkLKJ2r4Q1kBnuk+Bt+jjoB6RGohAcFN61NHEeV3n+l9lSFiMhzkKfj/1HkmqhovPh+/Z/0ewR4H1JxZotQWDwRUfBpEdjtynRCrJmkxQm8Vx+yX5sNCNDJ59f7mFnV/Djnw1/w5h0XOS/uiug37XIL4oxKRvWDzXBsHtXVlejG3PRX/vUzKoFEHcgpfqEnHtr0OO+CBqptJnTs214lBfo5RC3aVKP53TiI6aDROuPzIJEUx/b11b5GHSLAatxxD89BfXawZOBy4u0sZ5H81/CJAwSNd1j8bxm+jg18ZfTEAKqBwnnZZQvtIJF1Sidmqe8QL5mfelO+Q0tgzS6ksHYpnM6D4CePL70VOu42SgbX9rzZFjzBP09AIh/OLpbf9Vtw8VScqh6RtcJ9sW/SZzHe4QWHIgwGYV9Fv++VQJEcWxR4v0EWhc6e7OdZ7hXULYlCz6ej7Q4Mg5UQKJIs1Yo/u1nyoLpGxYIM9Whh+c4FglG/wJH4xAVDCRAXDTtJ0zM4NWSWnVTISIDAvNrVs7XbqGt8DbEtajx4HzG/ZI1VlfMHL57Hif1RDKwkoQCeqml0y1echvsA4ZVE+vdUFUW2si102pjjUTiq
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)(346002)(39860400002)(230922051799003)(82310400011)(451199024)(186009)(1800799009)(64100799003)(36840700001)(40470700004)(46966006)(33964004)(26005)(356005)(31686004)(66899024)(2906002)(36756003)(86362001)(31696002)(5660300002)(4326008)(41300700001)(8936002)(8676002)(40460700003)(70586007)(16526019)(2616005)(53546011)(6666004)(16576012)(6916009)(36860700001)(54906003)(81166007)(82740400003)(316002)(70206006)(478600001)(83380400001)(44832011)(40480700001)(336012)(47076005)(426003)(36900700001)(43740500002);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Oct 2023 09:47:07.7999
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: bd996a71-63be-4466-7cba-08dbd60884c9
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:
	CY4PEPF0000EE33.namprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA0PR12MB7650

--------------83AJLeVJPG8Yqwo11XIXY4hN
Content-Type: text/plain; charset="UTF-8"; format=flowed
Content-Transfer-Encoding: 7bit

On 26/10/23 11:45, Jan Beulich wrote:

> On 26.10.2023 10:34, Xenia Ragiadakou wrote:
>> On 26/10/23 10:35, Jan Beulich wrote:
>>> On 26.10.2023 08:45, Xenia Ragiadakou wrote:
>>>> Given that start < kernel_end and end > kernel_start, the logic that
>>>> determines the best placement for dom0 initrd and metadata, does not
>>>> take into account the two cases below:
>>>> (1) start > kernel_start && end > kernel_end
>>>> (2) start < kernel_start && end < kernel_end
>>>>
>>>> In case (1), the evaluation will result in end = kernel_start
>>>> i.e. end < start, and will load initrd in the middle of the kernel.
>>>> In case (2), the evaluation will result in start = kernel_end
>>>> i.e. end < start, and will load initrd at kernel_end, that is out
>>>> of the memory region under evaluation.
>>> I agree there is a problem if the kernel range overlaps but is not fully
>>> contained in the E820 range under inspection. I'd like to ask though
>>> under what conditions that can happen, as it seems suspicious for the
>>> kernel range to span multiple E820 ranges.
>> We tried to boot Zephyr as pvh dom0 and its load address was under 1MB.
>>
>> I know ... that maybe shouldn't have been permitted at all, but
>> nevertheless we hit this issue.
> How can they expect to have a contiguous, large enough range there?
Me too I wonder. I don't know, maybe somebody else could shed
some light on this.
>>>> This patch rephrases the if condition to include the above two cases
>>>> without affecting the behaviour for the case where
>>>> start < kernel_start && end > kernel_end
>>>>
>>>> Fixes: 73b47eea2104 ('x86/dom0: improve PVH initrd and metadata placement')
>>>> Signed-off-by: Xenia Ragiadakou<xenia.ragiadakou@amd.com>
>>>> ---
>>>>    xen/arch/x86/hvm/dom0_build.c | 2 +-
>>>>    1 file changed, 1 insertion(+), 1 deletion(-)
>>>>
>>>> diff --git a/xen/arch/x86/hvm/dom0_build.c b/xen/arch/x86/hvm/dom0_build.c
>>>> index c7d47d0d4c..5fc2c12f3a 100644
>>>> --- a/xen/arch/x86/hvm/dom0_build.c
>>>> +++ b/xen/arch/x86/hvm/dom0_build.c
>>>> @@ -518,7 +518,7 @@ static paddr_t __init find_memory(
>>>>            if ( end <= kernel_start || start >= kernel_end )
>>>>                ; /* No overlap, nothing to do. */
>>>>            /* Deal with the kernel already being loaded in the region. */
>>>> -        else if ( kernel_start - start > end - kernel_end )
>>>> +        else if ( kernel_start + kernel_end > start + end )
>>> What meaning has the sum of the start and end of either range? I can't
>>> figure how comparing those two values will be generally correct / useful.
>>> If the partial-overlap case needs handling in the first place, I think
>>> new conditionals need adding (and the existing one needs constraining to
>>> "kernel range fully contained") to use
>>> - as before, the larger of the non-overlapping ranges at start and end
>>>     if the kernel range is fully contained,
>>> - the tail of the range when the overlap is at the start,
>>> - the head of the range when the overlap is at the end.
>> Yes it is not quite straight forward to understand and is based on the
>> assumption that end > kernel_start and start < kernel_end, due to
>> the first condition failing.
>>
>> Both cases:
>> (start < kernel_start && end < kernel_end) and
>> (kernel_start - start > end - kernel_end)
>> fall into the condition ( kernel_start + kernel_end > start + end )
>>
>> And both the cases:
>> (start > kernel_start && end > kernel_end) and
>> (end - kernel_end > kernel_start - start)
>> fall into the condition ( kernel_start + kernel_end < start + end )
>>
>> ... unless of course I miss a case
> Well, mathematically (i.e. ignoring the potential for overflow) the
> original expression and your replacement are identical anyway. But
> overflow needs to be taken into consideration, and hence there is a
> (theoretical only at this point) risk with the replacement expression
> as well. As a result I still think that ...
>
>>> That said, in the "kernel range fully contained" case it may want
>>> considering to use the tail range if it is large enough, rather than
>>> the larger of the two ranges. In fact when switching to that model, we
>>> ought to be able to get away with one less conditional, as then the
>>> "kernel range fully contained" case doesn't need treating specially.
> ... this alternative approach may want considering (provided we need
> to make a change in the first place, which I continue to be
> unconvinced of).
Hmm, I see your point regarding the overflow.
Given that start < kernel_end and end > kernel_start, this could
be resolved by changing the above condition into:
if ( kernel_end - start > end - kernel_start )

Would that work for you?

> Jan
--------------83AJLeVJPG8Yqwo11XIXY4hN
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>
    <p>On 26/10/23 11:45, Jan Beulich wrote:</p>
    <blockquote type="cite"
      cite="mid:809115b1-2a47-583f-2d04-72a5a21ee7da@suse.com">
      <pre class="moz-quote-pre" wrap="">On 26.10.2023 10:34, Xenia Ragiadakou wrote:
</pre>
      <blockquote type="cite">
        <pre class="moz-quote-pre" wrap="">On 26/10/23 10:35, Jan Beulich wrote:
</pre>
        <blockquote type="cite">
          <pre class="moz-quote-pre" wrap="">On 26.10.2023 08:45, Xenia Ragiadakou wrote:
</pre>
          <blockquote type="cite">
            <pre class="moz-quote-pre" wrap="">Given that start &lt; kernel_end and end &gt; kernel_start, the logic that
determines the best placement for dom0 initrd and metadata, does not
take into account the two cases below:
(1) start &gt; kernel_start &amp;&amp; end &gt; kernel_end
(2) start &lt; kernel_start &amp;&amp; end &lt; kernel_end

In case (1), the evaluation will result in end = kernel_start
i.e. end &lt; start, and will load initrd in the middle of the kernel.
In case (2), the evaluation will result in start = kernel_end
i.e. end &lt; start, and will load initrd at kernel_end, that is out
of the memory region under evaluation.
</pre>
          </blockquote>
          <pre class="moz-quote-pre" wrap="">I agree there is a problem if the kernel range overlaps but is not fully
contained in the E820 range under inspection. I'd like to ask though
under what conditions that can happen, as it seems suspicious for the
kernel range to span multiple E820 ranges.
</pre>
        </blockquote>
        <pre class="moz-quote-pre" wrap="">
We tried to boot Zephyr as pvh dom0 and its load address was under 1MB.

I know ... that maybe shouldn't have been permitted at all, but 
nevertheless we hit this issue.
</pre>
      </blockquote>
      <pre class="moz-quote-pre" wrap="">
How can they expect to have a contiguous, large enough range there?</pre>
    </blockquote>
    Me too I wonder. I don't know, maybe somebody else could shed<br>
    some light on this.<span style="white-space: pre-wrap">
</span><span style="white-space: pre-wrap">
</span>
    <blockquote type="cite"
      cite="mid:809115b1-2a47-583f-2d04-72a5a21ee7da@suse.com">
      <blockquote type="cite">
        <blockquote type="cite">
          <blockquote type="cite">
            <pre class="moz-quote-pre" wrap="">This patch rephrases the if condition to include the above two cases
without affecting the behaviour for the case where
start &lt; kernel_start &amp;&amp; end &gt; kernel_end

Fixes: 73b47eea2104 ('x86/dom0: improve PVH initrd and metadata placement')
Signed-off-by: Xenia Ragiadakou<a class="moz-txt-link-rfc2396E" href="mailto:xenia.ragiadakou@amd.com">&lt;xenia.ragiadakou@amd.com&gt;</a>
---
  xen/arch/x86/hvm/dom0_build.c | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/xen/arch/x86/hvm/dom0_build.c b/xen/arch/x86/hvm/dom0_build.c
index c7d47d0d4c..5fc2c12f3a 100644
--- a/xen/arch/x86/hvm/dom0_build.c
+++ b/xen/arch/x86/hvm/dom0_build.c
@@ -518,7 +518,7 @@ static paddr_t __init find_memory(
          if ( end &lt;= kernel_start || start &gt;= kernel_end )
              ; /* No overlap, nothing to do. */
          /* Deal with the kernel already being loaded in the region. */
-        else if ( kernel_start - start &gt; end - kernel_end )
+        else if ( kernel_start + kernel_end &gt; start + end )
</pre>
          </blockquote>
          <pre class="moz-quote-pre" wrap="">What meaning has the sum of the start and end of either range? I can't
figure how comparing those two values will be generally correct / useful.
If the partial-overlap case needs handling in the first place, I think
new conditionals need adding (and the existing one needs constraining to
"kernel range fully contained") to use
- as before, the larger of the non-overlapping ranges at start and end
   if the kernel range is fully contained,
- the tail of the range when the overlap is at the start,
- the head of the range when the overlap is at the end.
</pre>
        </blockquote>
        <pre class="moz-quote-pre" wrap="">
Yes it is not quite straight forward to understand and is based on the
assumption that end &gt; kernel_start and start &lt; kernel_end, due to
the first condition failing.

Both cases:
(start &lt; kernel_start &amp;&amp; end &lt; kernel_end) and
(kernel_start - start &gt; end - kernel_end)
fall into the condition ( kernel_start + kernel_end &gt; start + end )

And both the cases:
(start &gt; kernel_start &amp;&amp; end &gt; kernel_end) and
(end - kernel_end &gt; kernel_start - start)
fall into the condition ( kernel_start + kernel_end &lt; start + end )

... unless of course I miss a case
</pre>
      </blockquote>
      <pre class="moz-quote-pre" wrap="">
Well, mathematically (i.e. ignoring the potential for overflow) the
original expression and your replacement are identical anyway. But
overflow needs to be taken into consideration, and hence there is a
(theoretical only at this point) risk with the replacement expression
as well. As a result I still think that ...

</pre>
      <blockquote type="cite">
        <blockquote type="cite">
          <pre class="moz-quote-pre" wrap="">That said, in the "kernel range fully contained" case it may want
considering to use the tail range if it is large enough, rather than
the larger of the two ranges. In fact when switching to that model, we
ought to be able to get away with one less conditional, as then the
"kernel range fully contained" case doesn't need treating specially.
</pre>
        </blockquote>
      </blockquote>
      <pre class="moz-quote-pre" wrap="">
... this alternative approach may want considering (provided we need
to make a change in the first place, which I continue to be
unconvinced of).</pre>
    </blockquote>
    Hmm, I see your point regarding the overflow.<br>
    Given that start &lt; kernel_end and end &gt; kernel_start, this
    could<br>
    be resolved by changing the above condition into:<br>
    if ( kernel_end - start &gt; end - kernel_start )<span
    style="white-space: pre-wrap">
</span>
    <p><span style="white-space: pre-wrap">Would that work for you?
</span></p>
    <span style="white-space: pre-wrap">
</span>
    <blockquote type="cite"
      cite="mid:809115b1-2a47-583f-2d04-72a5a21ee7da@suse.com">
      <pre class="moz-quote-pre" wrap="">Jan
</pre>
    </blockquote>
  </body>
</html>

--------------83AJLeVJPG8Yqwo11XIXY4hN--


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 10:01:41 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 10:01:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623646.971680 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvxBG-00056b-GD; Thu, 26 Oct 2023 10:01:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623646.971680; Thu, 26 Oct 2023 10:01: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 1qvxBG-00056U-DI; Thu, 26 Oct 2023 10:01:34 +0000
Received: by outflank-mailman (input) for mailman id 623646;
 Thu, 26 Oct 2023 10:01: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=3h0U=GI=epam.com=prvs=466334560c=mykyta_poturai@srs-se1.protection.inumbo.net>)
 id 1qvxBF-00056O-8E
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 10:01:33 +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 a1d88d4c-73e6-11ee-9b0e-b553b5be7939;
 Thu, 26 Oct 2023 12:01:30 +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
 39Q88Psv030363; Thu, 26 Oct 2023 10:01:23 GMT
Received: from eur04-db3-obe.outbound.protection.outlook.com
 (mail-db3eur04lp2051.outbound.protection.outlook.com [104.47.12.51])
 by mx0a-0039f301.pphosted.com (PPS) with ESMTPS id 3tyav0hjyp-1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT);
 Thu, 26 Oct 2023 10:01:23 +0000
Received: from VI1PR03MB3758.eurprd03.prod.outlook.com (2603:10a6:803:33::29)
 by AM9PR03MB7267.eurprd03.prod.outlook.com (2603:10a6:20b:26a::15)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.22; Thu, 26 Oct
 2023 10:01:20 +0000
Received: from VI1PR03MB3758.eurprd03.prod.outlook.com
 ([fe80::eecf:7ef0:b4b5:fc42]) by VI1PR03MB3758.eurprd03.prod.outlook.com
 ([fe80::eecf:7ef0:b4b5:fc42%4]) with mapi id 15.20.6907.032; Thu, 26 Oct 2023
 10:01: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: a1d88d4c-73e6-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=YPCEPtU3HYRsK6tSq3Te83o4XFQczCiaHN4HWTjhpeVKX3JZPEoo0rmQlyhEtCjkn/7N+bxIvpupXlD+CVN3Pzyxe4bqqlc1p66sC3ENox7u800Dgcv7baCgagBmE9mI4WX57A3MCIi7dFxuxBOQFb8L2CHiMFAQ1QrRzBFw12uxs/Oy5KG6EeCR3o5L0WDSWQDz74xq1GhTPCK+UApp+1DNjjX4+oKdAorqUPeDbk8dUfhh66SU6+ZJ0VEOE8BYuockdAMvWOIx3eInxXds46DIJPBwu5GimbBhcoJx8NN02zeLsoHJNQg6WGFrkp9fL0HKUYgF5GfiZiXemiqZ+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=U9YFE75pw8/VAWAThuBbllni+dqgf/ZdZaW5cUijMn0=;
 b=C9BuQtvFiYrHXDKvwiwIvSGMxVXKl0Jpw9IjB0z05u/3Pa8TJS4G/ErQ5Rqd8FfhTG1PHdlDiWirORanSpv4hNVsPJCByyBbNhYYxd/r6p7HI6e/mC4+EozfIH+1c0dZIC8IsVwW/MZmlq0ETUyJW/MkuAQUViy+eWiuz/KbrOPwPVtf2/PNn3PzdompGoX9Pgpg1YRippcLqmi8xD+eGQ97uikVBK+AptjoQ4qqhTfOG6u38MXDghLdToXy/Ne1Pz2sIOnsnTK+5IFZMbwclbonTkitwfZZWjcOQNvZe+YvSHG+Ctt6/ZuxysCE37h+wB8jraDIXIFIjCYI4P1Vnw==
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=U9YFE75pw8/VAWAThuBbllni+dqgf/ZdZaW5cUijMn0=;
 b=E/wvCrKAmrUJDrR5IDeQ5CWe+wo5C+8PQzGoG1fwU4z9WfssSMukDPX45zqe5ee7fiuP66ztO1AjA6FaKCZ/W1tMlLd7XlkWDaEYF50gt1Hp7AI0R9r8cW1wF59FgWCTjfChKQ2IymDB2gM2Nm3BXwjY6L5QEmN74iCvxcSQPsVaQYrPbA1r2WrxvwSUnSSl2QWPzxjP5XXVjxZWDdO++OPwDDhTlpp0GbiB/PJ1UNsm/FWWjwaJAoUeEVnU9tI/Npl+MsTK4kcGR3UhD8dsf6Bmo7ZlBgqORVPhIb5mTIY+qKbFJkchKNlnOnK14JmVM726iDv8+7iIwEmVkSWwAg==
From: Mykyta Poturai <Mykyta_Poturai@epam.com>
To: Julien Grall <julien@xen.org>,
        "xen-devel@lists.xenproject.org"
	<xen-devel@lists.xenproject.org>
CC: Stefano Stabellini <sstabellini@kernel.org>,
        Bertrand Marquis
	<bertrand.marquis@arm.com>,
        Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: Re: [XEN PATCH 4/4] arm/new vgic: Add ITS support to NEW_VGIC
Thread-Topic: [XEN PATCH 4/4] arm/new vgic: Add ITS support to NEW_VGIC
Thread-Index: AQHaByVKOarKe67VpUmvAyf2tK5K3LBaTAOAgAGMbAA=
Date: Thu, 26 Oct 2023 10:01:19 +0000
Message-ID: <6c5cb10b-7b61-4690-92b1-9c75a371af4d@epam.com>
References: <cover.1698225630.git.mykyta_poturai@epam.com>
 <b0b41f2065002e4cf7795ebfbf9f84624c2f150d.1698225630.git.mykyta_poturai@epam.com>
 <163d3326-38f2-40b6-a654-60f0221daa6c@xen.org>
In-Reply-To: <163d3326-38f2-40b6-a654-60f0221daa6c@xen.org>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
x-ms-publictraffictype: Email
x-ms-traffictypediagnostic: VI1PR03MB3758:EE_|AM9PR03MB7267:EE_
x-ms-office365-filtering-correlation-id: 14da2412-15c3-436c-735a-08dbd60a80af
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: 
 XT4N5Qr5hGQnBg8xxgd5O8fjCbPbL6SAW4TlyHRyoIx+7+zADaoETyU9dz/uUgs/iWiAMywieUpufyVQhO5WOXF8Z1Mh2aGO0hEbXBhQ932zovJhG0KV1XlJ9A3SA7ZfFUVQJ4jPTC2dVZHKx8H/i1cXhmn5Q6Xktw/O07u2CYSxC9w8wAuqAfEKlBZhkWQIFWm0Hnl+1ZtbtOAUYjMaE4IIGvA92Y3t32HGLvma0uR1TcCDsL07fIjlRLw+tS40fndwM3U/x64v41PTllIFYVzJzcOSbzmqXMettx33AmFPFXFn43rG0SoHXY9JaYR4AN5BnRzrqN7eHyp6BRPfAzeHbbmGmfGFwU5scV/CzG7xROkUqwLNK4yvcQZLJJ9byySZ/zOSm7AJmBBhFcXfg6emeKfGUOWnnMVnGgVDm3QW5ZNIIT1OXPj2LEFVei+DDJzBhzFoyX87OvQWjffiT+5EPOWOBH5uhTnx1RbLWxK+If+vTJobe76B3qzOtYvwfYqKwb/+F2iDxBB5vINIbw40UphvnCNVNyBV8lp1oY8yIGQpQcIZBvaW7tHvhzFnXzFkoGp2sdQnnEcMkyPOY9qXFOLMT9UNJq45mbqrFMJtLXJQdM54gudfG9J97i/cqbd8/wpr422ufR4RAsEhQw==
x-forefront-antispam-report: 
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VI1PR03MB3758.eurprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366004)(39860400002)(136003)(376002)(346002)(396003)(230922051799003)(451199024)(186009)(64100799003)(1800799009)(38100700002)(2906002)(86362001)(31686004)(31696002)(4744005)(107886003)(5660300002)(2616005)(6512007)(66899024)(41300700001)(122000001)(110136005)(91956017)(36756003)(66556008)(66476007)(66446008)(64756008)(54906003)(66946007)(316002)(76116006)(53546011)(71200400001)(6506007)(38070700009)(6486002)(8676002)(26005)(478600001)(4326008)(8936002)(45980500001);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: 
 =?utf-8?B?MHpMeVg2N29xTlU5QkxqUE5jaS8ybUl1bjdGeG54aXhhUFdra0NYMDZIQnA3?=
 =?utf-8?B?UjgrSXRKdnZET1VFT1dsTWtLTno3dHk2aXFrSjdHaVlJMzh1UFF2MFR2cXlr?=
 =?utf-8?B?K29EQTVzQzl3SzBqaExKdHVxc1AxQ2szR09abHVQMm5VRll1UnhSNWgyc1Yz?=
 =?utf-8?B?dFF3dXhzUFNNbEpCanNZMk5GS2o3cTAycUlhY2V2T1FNNGVkK1NqNTh2THgx?=
 =?utf-8?B?WUNLeGJqWlF5N2lqakVsc1IrNmhZeW9TRU53Z1IzbURFenRyYmp3RSsxYjRr?=
 =?utf-8?B?ZURUT21zOEdmSzFsbml5RnNpZVhuRThEeUtkT0thVDJIaC84bkIwalB1YnFX?=
 =?utf-8?B?REU3SGhuMDh4R2NkeVBsZldzTGJpZ3hnWHQ3TkI1VE1rZ09zZGV3TEVocWZM?=
 =?utf-8?B?Nlh5Nzlsd1BaVThYN0ozMXg5bWZHVDMvL2FaWkFnS2dCdzBaSlMyejBCc1pE?=
 =?utf-8?B?QkNtblhXTDNJalpOZlBpMHhUQm8wVmtySFlRR1BRbWgyOTA1Mi9MNzI5cGhs?=
 =?utf-8?B?TkRwSnArb0VaVWFvQmdEeWREb21qc1AvWnVPMUU4SjFKbXAvRzFaajhpMlVR?=
 =?utf-8?B?L1Vmb01mSzdEanZabE9STndkcFRRSkh0NTROUjBLZUxKVnRHYU04bnA0UFFC?=
 =?utf-8?B?SXg0MFZ6NGZVRjl5UWZCWGJDa1hhUDhvU0gvZjF4dVlaQS8wU2xQckE1a0Uz?=
 =?utf-8?B?VnlyeEdOZ05kL01UcUZzL1VkVXNQeE16MEhqdFpONm14Y2xnZEZldlEzMVVL?=
 =?utf-8?B?SEY3TktpMDBXaDBlYm50Y1NtWk1jdUtEdnJMU3FLM1huSlJwQkF4a25GaVZX?=
 =?utf-8?B?S0J5MEp3VHZHTDlPSXc5VGxHK2xRa2Z3M05vNklvTit0QjkwUFVEUUNrTUtB?=
 =?utf-8?B?cVNzWXQ0czN6QzVkZEdTQVQ3V2EzZm83N2UrbExsR3dibzVXdmdjSlBLaThl?=
 =?utf-8?B?Y1hUU0RtVzYxVlZsZlN5R1ZWR1FWZUR3NGVMUjVMS1dINS9zalNQOFhYeU9F?=
 =?utf-8?B?NytwNE5aNElWaFpNbkRLOHduVmNYRW1FdnI4bTg5TlVWMkFpa2tvMFFxN1h0?=
 =?utf-8?B?UTZtUUpMWFJtNGprYmpUUGQyeVVNL2dEaWJCWkNqSnl2cmUwNU90Y0oyRkgy?=
 =?utf-8?B?eEQxd1JoN0JMa2p6ZGlmWk9ONFpJZEVVbUxnOXpIREFiMEg1YXVmd2RxTWxZ?=
 =?utf-8?B?N01takV0WVo4TmxmenJ5VlpTcVF2MnhmVGRFcEF3cDFEZFc1OEhwQ0gvWnBL?=
 =?utf-8?B?ZzY3NjJGZStvY3ZoUlNvMEdveENrbWI1Sklia0l4cmhRcjZnajdLK0FTUVZZ?=
 =?utf-8?B?ZmlFS0I5YmxnRDdFcHdaVEorSkM4cWUwVlpLalo3WGxLVVRJU3dJVUgzQm9K?=
 =?utf-8?B?WWJhN3FjeGV1MXhndmhxUlNQY2JyOHUycWlWbTdNTk43MzFDSWVuV25oK25D?=
 =?utf-8?B?RmVoZkpTb1NhczhPVW16ZTEzM1BZVlpGYU1kTWNFR0xDRGI0M3BNU0NBYXpS?=
 =?utf-8?B?SkNPUkNjeExtdTc1Nk45YUIvNzA5bURlcmlsS0NUSHkrRXVtMzNjVDYyRm50?=
 =?utf-8?B?T2lGaXRjRWZPRWVGL1k0aEhwTUNNTWU0QlBBOW9ZS1hwOUViV0FrSnhQOURQ?=
 =?utf-8?B?WjIzY1VRcE93VE4ra1M4Vk1PSXBDZEhFMVQ5ZkhHS3NZSkRuRDNXc2cvZ3I1?=
 =?utf-8?B?KzBLY3kycDJ0QVUwcVVyQkY1SlZwSlFncldKc2wyZDEwZGFGTVJoOTRZWkVI?=
 =?utf-8?B?UGlVUHI3d1dLY1lhTC9tclFjQThlUFlCbE1RQzByU0lQQk9MWW9DZkQ1UWFp?=
 =?utf-8?B?RWtYUE5KNldoMzFTZEgySUNVcmdKTXBLdi95ajBkTit4SUZ6cUtVMjVOSHJE?=
 =?utf-8?B?eGxSVXNvVXJtekhGdGRCamtKRVRCNEZiakpFZWJlSXEzL2dBTVhFUms0MWRy?=
 =?utf-8?B?SWlkRjR6eEFQekw4YlQ2RmRPL2hndHFZVS91R2dSVGJreDJRVEo3TGExUE5F?=
 =?utf-8?B?ejlzUFV4a0xKMDh4K25vb1J4RGUvM0pxY2FiR1lMcFU3akdQTit2c1NrZHF0?=
 =?utf-8?B?aGp4V1liSmowUXEvZW1SMmtDTStza0NtdXBLaHlxakc1azV2Qk9XSkwxYnk4?=
 =?utf-8?B?eVhLeFNqQ0FNZ3NHWkJGVWt1bFlJRDViS3JwZ1hpSEVnREJSakc0N1BoNWxH?=
 =?utf-8?B?SXc9PQ==?=
Content-Type: text/plain; charset="utf-8"
Content-ID: <BFFE84629717EE48B880C666D4D957B8@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: VI1PR03MB3758.eurprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 14da2412-15c3-436c-735a-08dbd60a80af
X-MS-Exchange-CrossTenant-originalarrivaltime: 26 Oct 2023 10:01:19.9793
 (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: AlekU2rPFF3/enjGSUI3n3nHyqCO2y39R3TSxfD3fCQ3am1F/kO/qVMe8sGq1QBYFpKeGR/nBiH+8pa8SjHu4g==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR03MB7267
X-Proofpoint-ORIG-GUID: F2qvGkae99osNCjh4PxGwTV93SAlBTDx
X-Proofpoint-GUID: F2qvGkae99osNCjh4PxGwTV93SAlBTDx
X-Proofpoint-Virus-Version: vendor=baseguard
 engine=ICAP:2.0.272,Aquarius:18.0.980,Hydra:6.0.619,FMLib:17.11.176.26
 definitions=2023-10-26_07,2023-10-25_01,2023-05-22_02
X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 bulkscore=0 adultscore=0
 spamscore=0 mlxscore=0 priorityscore=1501 impostorscore=0
 lowpriorityscore=0 suspectscore=0 phishscore=0 malwarescore=0
 clxscore=1015 mlxlogscore=731 classifier=spam adjust=0 reason=mlx
 scancount=1 engine=8.12.0-2310170001 definitions=main-2310260084

SGkgSnVsaWVuLA0KDQoNCk9uIDI1LjEwLjIzIDEzOjIyLCBKdWxpZW4gR3JhbGwgd3JvdGU6DQo+
IExvb2tpbmcgYXQgdGhlIGNoYW5nZSwgeW91IG1haW5seSBhZGQgI2lmZGVmIGluIHRoZSBjb2Rl
LiBUaGUgZ29hbCBvZiANCj4gZ2ljLXYzLWxwaS5jIHdhcyB0byBiZSBhZ25vc3RpYyBmcm9tIHRo
ZSBkaWZmZXJlbnQgdkdJQy4gU28gcGxlYXNlIA0KPiBhYnN0cmFjdCBpdC4NCg0KDQpXb3VsZCBp
dCBiZSBva2F5IHRvIGFkZCBzb21ldGhpbmcgbGlrZSAidHlwZWRlZiBzdHJ1Y3QgdmdpY19pcnEg
DQpwZW5kaW5nX2lycSIgdG8gZGVhbCB3aXRoIHRoZSB0eXBlIGRpZmZlcmVuY2VzIG9yIGlzIGl0
IGJldHRlciB0byANCmNvbXBsZXRlbHkgbW92ZSB0aGUgY29kZSB0aGF0IG1lbnRpb25zIHRoZW0g
aW50byB2Z2ljIGZpbGVzPw0KDQoNClJlZ2FyZHMsDQoNCk15a3l0YQ0K


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 10:03:03 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 10:03:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623649.971690 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvxCf-0005e9-Sj; Thu, 26 Oct 2023 10:03:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623649.971690; Thu, 26 Oct 2023 10: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 1qvxCf-0005e2-Og; Thu, 26 Oct 2023 10:03:01 +0000
Received: by outflank-mailman (input) for mailman id 623649;
 Thu, 26 Oct 2023 10:03: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 1qvxCe-0005ds-Cz; Thu, 26 Oct 2023 10:03: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 1qvxCe-0007g7-4G; Thu, 26 Oct 2023 10:03: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 1qvxCd-0008CR-Pm; Thu, 26 Oct 2023 10:02:59 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qvxCd-0006T3-PL; Thu, 26 Oct 2023 10:02: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=W5JjxNWB0oFLyKARDQqQnKxDgcVd5KD8mG3xCcg5KF4=; b=rNyahKWVpRwey/CVbRA+qtxGVZ
	GonNHZxX50DCBpj4HNCvf6jX/XEfnXb2MvFR6iIzDXPRwQKffhoMXcOwXPQB/C5uEURZPnj/4RbEr
	e841TsSNc+0+Cn4e41/Og/rSAJm5YR7f5f52UDnFk6CzJWQdjSZj5uBNo2YZRbsdZlcQ=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183536-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 183536: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=8765f3eb428f86974033215fe08f8d3d85deedae
X-Osstest-Versions-That:
    ovmf=9bb5ef1287c6765c477fb2cb3107339f700ab419
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 26 Oct 2023 10:02:59 +0000

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

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 8765f3eb428f86974033215fe08f8d3d85deedae
baseline version:
 ovmf                 9bb5ef1287c6765c477fb2cb3107339f700ab419

Last test of basis   183532  2023-10-26 01:44:34 Z    0 days
Testing same since   183536  2023-10-26 07:44: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                                               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
   9bb5ef1287..8765f3eb42  8765f3eb428f86974033215fe08f8d3d85deedae -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 10:04:55 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 10:04:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623655.971700 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvxEM-0006Nq-6u; Thu, 26 Oct 2023 10:04:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623655.971700; Thu, 26 Oct 2023 10:04: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 1qvxEM-0006Nj-49; Thu, 26 Oct 2023 10:04:46 +0000
Received: by outflank-mailman (input) for mailman id 623655;
 Thu, 26 Oct 2023 10:04: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=gVJW=GI=bugseng.com=federico.serafini@srs-se1.protection.inumbo.net>)
 id 1qvxEL-0006Nd-8N
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 10:04:45 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 15d411b5-73e7-11ee-98d5-6d05b1d4d9a1;
 Thu, 26 Oct 2023 12:04:43 +0200 (CEST)
Received: from Dell.homenet.telecomitalia.it
 (host-95-247-204-25.retail.telecomitalia.it [95.247.204.25])
 by support.bugseng.com (Postfix) with ESMTPSA id E39354EE0742;
 Thu, 26 Oct 2023 12:04: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: 15d411b5-73e7-11ee-98d5-6d05b1d4d9a1
From: Federico Serafini <federico.serafini@bugseng.com>
To: xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com,
	Federico Serafini <federico.serafini@bugseng.com>,
	Simone Ballarin <simone.ballarin@bugseng.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: [XEN PATCH v2] automation/eclair: add deviations for MISRA C:2012 Rule 8.3
Date: Thu, 26 Oct 2023 12:04:37 +0200
Message-Id: <1c146f28cb19607ddd6741de4f7de051894a3381.1698314415.git.federico.serafini@bugseng.com>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Update ECLAIR configuration to deviate Rule 8.3 ("All declarations of
an object or function shall use the same names and type qualifiers")
for the following functions: guest_walk_tables_[0-9]+_levels().
Update file docs/misra/deviations.rst accordingly.
No functional change.

Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
---
Changes in v2:
  - removed set_px_pminfo() from the scope of the deviation;
  - fixed tag of the commit.
---
 automation/eclair_analysis/ECLAIR/deviations.ecl | 4 ++++
 docs/misra/deviations.rst                        | 6 ++++++
 2 files changed, 10 insertions(+)

diff --git a/automation/eclair_analysis/ECLAIR/deviations.ecl b/automation/eclair_analysis/ECLAIR/deviations.ecl
index d8170106b4..b99dfdafd6 100644
--- a/automation/eclair_analysis/ECLAIR/deviations.ecl
+++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
@@ -204,6 +204,10 @@ const-qualified."
 -config=MC3R1.R8.3,reports+={deliberate,"any_area(any_loc(file(adopted_mpparse_r8_3)))&&any_area(any_loc(file(^xen/arch/x86/include/asm/mpspec\\.h$)))"}
 -doc_end
 
+-doc_begin="For functions guest_walk_tables_[0-9]+_levels(), parameter names of definitions deliberately differ from the ones used in the corresponding declarations."
+-config=MC3R1.R8.3,declarations={deliberate,"^guest_walk_tables_[0-9]+_levels\\(const struct vcpu\\*, struct p2m_domain\\*, unsigned long, walk_t\\*, uint32_t, gfn_t, mfn_t, void\\*\\)$"}
+-doc_end
+
 -doc_begin="The following variables are compiled in multiple translation units
 belonging to different executables and therefore are safe."
 -config=MC3R1.R8.6,declarations+={safe, "name(current_stack_pointer||bsearch||sort)"}
diff --git a/docs/misra/deviations.rst b/docs/misra/deviations.rst
index 8511a18925..9423b5cd6b 100644
--- a/docs/misra/deviations.rst
+++ b/docs/misra/deviations.rst
@@ -121,6 +121,12 @@ Deviations related to MISRA C:2012 Rules:
          - xen/common/unxz.c
          - xen/common/unzstd.c
 
+   * - R8.3
+     - In some cases, parameter names used in the function definition
+       deliberately differ from the ones used in the corresponding declaration.
+     - Tagged as `deliberate` for ECLAIR. Such functions are:
+         - guest_walk_tables_[0-9]+_levels()
+
    * - R8.4
      - The definitions present in the files 'asm-offsets.c' for any architecture
        are used to generate definitions for asm modules, and are not called by
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Thu Oct 26 10:25:24 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 10:25:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623661.971710 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvxY9-0003gH-S9; Thu, 26 Oct 2023 10:25:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623661.971710; Thu, 26 Oct 2023 10:25: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 1qvxY9-0003gA-P3; Thu, 26 Oct 2023 10:25:13 +0000
Received: by outflank-mailman (input) for mailman id 623661;
 Thu, 26 Oct 2023 10:25: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 1qvxY8-0003g4-Oj
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 10:25: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 1qvxY7-0008Dt-OP; Thu, 26 Oct 2023 10:25:11 +0000
Received: from [15.248.2.156] (helo=[10.24.67.24])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qvxY7-0007gG-HH; Thu, 26 Oct 2023 10:25: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=6/ildjtjBN0BirJpnbC/yPoJgbHPN7XPRNXhTxgs3nc=; b=ZUCznRuO65dTlq9/UaehJUBwB+
	maRC4DCOHt3rypB82r7DEiTn7jFlT4X3rrOmMvRI4qvHyJFMzvUXawNxO838NoyGQda0i0aLOjZPL
	hSHyfCov5OFJ0xOKa5NjkLsQWhbh2FdxHrFrL0pl0KnvfLFFjSVdbZjFFTLqMUdj00/g=;
Message-ID: <662e9080-5648-47eb-95e6-41fcb618c68f@xen.org>
Date: Thu, 26 Oct 2023 11:25:09 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN PATCH v2] automation/eclair: add deviations for MISRA C:2012
 Rule 8.3
Content-Language: en-GB
To: Federico Serafini <federico.serafini@bugseng.com>,
 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>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Jan Beulich <jbeulich@suse.com>,
 Wei Liu <wl@xen.org>
References: <1c146f28cb19607ddd6741de4f7de051894a3381.1698314415.git.federico.serafini@bugseng.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <1c146f28cb19607ddd6741de4f7de051894a3381.1698314415.git.federico.serafini@bugseng.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi,

On 26/10/2023 11:04, Federico Serafini wrote:
> Update ECLAIR configuration to deviate Rule 8.3 ("All declarations of
> an object or function shall use the same names and type qualifiers")
> for the following functions: guest_walk_tables_[0-9]+_levels().
> Update file docs/misra/deviations.rst accordingly.
> No functional change.
> 
> Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
> ---
> Changes in v2:
>    - removed set_px_pminfo() from the scope of the deviation;
>    - fixed tag of the commit.
> ---
>   automation/eclair_analysis/ECLAIR/deviations.ecl | 4 ++++
>   docs/misra/deviations.rst                        | 6 ++++++
>   2 files changed, 10 insertions(+)
> 
> diff --git a/automation/eclair_analysis/ECLAIR/deviations.ecl b/automation/eclair_analysis/ECLAIR/deviations.ecl
> index d8170106b4..b99dfdafd6 100644
> --- a/automation/eclair_analysis/ECLAIR/deviations.ecl
> +++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
> @@ -204,6 +204,10 @@ const-qualified."
>   -config=MC3R1.R8.3,reports+={deliberate,"any_area(any_loc(file(adopted_mpparse_r8_3)))&&any_area(any_loc(file(^xen/arch/x86/include/asm/mpspec\\.h$)))"}
>   -doc_end
>   
> +-doc_begin="For functions guest_walk_tables_[0-9]+_levels(), parameter names of definitions deliberately differ from the ones used in the corresponding declarations."
> +-config=MC3R1.R8.3,declarations={deliberate,"^guest_walk_tables_[0-9]+_levels\\(const struct vcpu\\*, struct p2m_domain\\*, unsigned long, walk_t\\*, uint32_t, gfn_t, mfn_t, void\\*\\)$"}
> +-doc_end
> +
>   -doc_begin="The following variables are compiled in multiple translation units
>   belonging to different executables and therefore are safe."
>   -config=MC3R1.R8.6,declarations+={safe, "name(current_stack_pointer||bsearch||sort)"}
> diff --git a/docs/misra/deviations.rst b/docs/misra/deviations.rst
> index 8511a18925..9423b5cd6b 100644
> --- a/docs/misra/deviations.rst
> +++ b/docs/misra/deviations.rst
> @@ -121,6 +121,12 @@ Deviations related to MISRA C:2012 Rules:
>            - xen/common/unxz.c
>            - xen/common/unzstd.c
>   
> +   * - R8.3
> +     - In some cases, parameter names used in the function definition
> +       deliberately differ from the ones used in the corresponding declaration.

It would be helpful to provide a bit more reasoning in your commit 
message why this was desired. At least for Arm and common code, I would 
not want anyone to do that because it adds more confusion.

> +     - Tagged as `deliberate` for ECLAIR. Such functions are:
> +         - guest_walk_tables_[0-9]+_levels()

I think you want to be a bit mores specific. Other arch may have such 
function in the function and we don't want to deviate them from the start.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 10:26:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 10:26:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623663.971719 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvxZ7-0004Fm-5c; Thu, 26 Oct 2023 10:26:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623663.971719; Thu, 26 Oct 2023 10:26: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 1qvxZ7-0004Ff-2z; Thu, 26 Oct 2023 10:26:13 +0000
Received: by outflank-mailman (input) for mailman id 623663;
 Thu, 26 Oct 2023 10:26: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=Iwvv=GI=citrix.com=prvs=656fec104=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qvxZ5-00049n-Au
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 10:26: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 119bd3e3-73ea-11ee-98d5-6d05b1d4d9a1;
 Thu, 26 Oct 2023 12:26:07 +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;
 26 Oct 2023 06:26:03 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by MW4PR03MB6587.namprd03.prod.outlook.com (2603:10b6:303:12a::9)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.46; Thu, 26 Oct
 2023 10:26:01 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::acf0:ce2b:1634:5aee]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::acf0:ce2b:1634:5aee%6]) with mapi id 15.20.6933.011; Thu, 26 Oct 2023
 10:26: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: 119bd3e3-73ea-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1698315967;
  h=date:from:to:cc:subject:message-id:references:
   in-reply-to:mime-version;
  bh=+sTUP5qR5fubrejn8M004P6YiRXhreOtEHRwRotQAC8=;
  b=VebcaJ3T5hZpZT3Fay/Qzq0lehLglZK4e/Kx+59hXf0TdzGORDG85Yum
   EA1MlLvvopMub1vnw7CgZTGFzCis2yrNmQ4CeF3P/OtfN0UKgo3WcRrCC
   kiB1fKWZfbpTi2n8L8KPvhekZYbx/cZ1H8kR1fp3syYl8WUUIdsNICTVG
   8=;
X-CSE-ConnectionGUID: YIpGx7LYQ3W+W7KEWPFVrA==
X-CSE-MsgGUID: FfQC0dJ7Sh+Mi5SXc7IWKw==
X-IronPort-RemoteIP: 104.47.57.168
X-IronPort-MID: 126704757
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:n3Er8azHWro0WbkbBC96t+cRxyrEfRIJ4+MujC+fZmUNrF6WrkVUz
 DMaWDzVPPyDNjGjctpzbd608UoDscKEndcyGlY6ryAxQypGp/SeCIXCJC8cHc8wwu7rFxs7s
 ppEOrEsCOhuExcwcz/0auCJQUFUjPzOHvykTrecZkidfCc8IA85kxVvhuUltYBhhNm9Emult
 Mj75sbSIzdJ4RYtWo4vw/zF8EgHUMja4mtC5QVmP64T5TcyqlFOZH4hDfDpR5fHatE88t6SH
 47r0Ly/92XFyBYhYvvNfmHTKxBirhb6ZGBiu1IOM0SQqkEqSh8ai87XAME0e0ZP4whlqvgqo
 Dl7WT5cfi9yVkHEsLx1vxC1iEiSN4UekFPMCSDXXcB+UyQq2pYjqhljJBheAGEWxgp4KVBv7
 dMIdxQ8V0u8xN3p45+EcsdSnO12eaEHPKtH0p1h5RfwKK9/BLzmHeDN79Ie2yosjMdTG/qYf
 9AedTdkcBXHZVtIJ0sTD5U92uyvgxETcRUB8A7T+fVxvjeVlVIhuFTuGIO9ltiiX8Jak1zev
 mvb12/4HgsbJJqUzj/tHneE37WRwnunB99NfFG+3tBkuXbLyk5MMx1VcFrmmsmy1W+BeM0Kf
 iT4/QJr98De7neDTNPwQhm5q36spQMHVpxbFOhSwBGAzO/Y7hiUAkAATyVdc5o2uckuXzso2
 1SV2dTzClRHr7m9WX+bsLCOoluP1TM9KGYDYWoISFUD6ty6+YUr1EuRHpBkDbK/icDzFXfo2
 TeWoSMihrIVy8kWy6G8+lOBiDWpznTUcjMICszsdjrNxmtEiESNPuRENXCzAS58Ebuk
IronPort-HdrOrdr: A9a23:h2RiwKlfqK7wAj3qalcneTbArPXpDfLN3DAbv31ZSRFFG/Fwz/
 re7Mjy1XfP+U4ssQIb6KO90ci7MAThHPFOkPUs1NuZLW/bUS6TXfBfBOjZskvd8k/Fh5FgPM
 5bGsAOa6yTfD0K6bec3OD7Kadf/DDuytHguQ609QYXcegeUdAc0+4PMHfgLqQZfng+OXK2fK
 D22iJVzADLRZ1dVLXIOpBMZZm3mzXI/6iKXfdQPXIaAFHlt1yVALmQKXalNhF0aVJyKbNIyw
 j4eiLCl9Gej80=
X-Talos-CUID: =?us-ascii?q?9a23=3At4e9TGkC2UkbQOK2/hIYKSu/TePXOUz81FjAfGu?=
 =?us-ascii?q?JMD1WC4LKanKvwI1aieM7zg=3D=3D?=
X-Talos-MUID: 9a23:/cqecQbL1CqB8uBTmTHVr2luFphT4+eLCR02oZ5ZmvanKnkl
X-IronPort-AV: E=Sophos;i="6.03,253,1694750400"; 
   d="scan'208";a="126704757"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=fFWi5f1Fe/KKLw16XfeZa2wwfNsiIsumcKd+bPG0+4jyjhHZrZ1EQaODx0MpM4u9ZhOTL1zL1B7CAp4JH9vUtYZT5odaQiuG1VHVLdXQt7cqMAmpQZH7ZFa0hDB61Ne5YQYYywbIVW9WCShN2cpNvBXLCQLUhdiJeAgfvqnHiHelvJgkM1mKAlp8cBqVFzoYw3T4VOl8i5N9ggHEA4gKSI6VJvkuo/zLENuAkm1rGoAwtC43IwQxrt0XgylfC2oG7uzlt8cFuaz12tfqT+N4GV/taicLOH4/3ujFmogdD96CbYXlr3aIh+FTgUTienMQkYPB+ynvF3jh+n1/30hdRg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=GqfHx1i3lbisw850uEHI/HK5zZIIPkKVGBYLqcS0L1Q=;
 b=UyDEjjcUCsZnvwM2e6+fDAJQBkqbUe+tNlnfy44fnV4qlYXKSTVa1NNRa9zlC4/Z1m/+xgucWsRU5dw7HB+ShDditUvHBDfFM+O5llkg+UxmJVX1zLq14xK9dGCx5eyCIQY1opJ9s5WTGS/GgeJyrMzisfTHii/nd5BkiwKJqfElgzyICumowILOkjc1KGLPOAv06cAjv1SlVu6/AaHU3YmS4o/biqtFM8lgx6E5lhzIOQAcwEHsNg/iWABJkQUlM523Q0+zyNkfCNLGASEoV/JWkPJ371ISR5T3UIL7oJ9DXuzaBHlJ0H+WDOK5twlkXxjW+5O2hZkNlYEAL00wGQ==
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=GqfHx1i3lbisw850uEHI/HK5zZIIPkKVGBYLqcS0L1Q=;
 b=AE5AxTCVnbNDgcdFjFu5H3RwbWQIi+AqGntlS4TRIB4gMvvzEVOILy4kuzkyrxQTNt6Bjlfz04qbOY8hUOMrirDkV9Ou5bD/JpsNkzIIOGagqi6InR8DrDEHctWaz4iKe7YKM+QGTaGi6hQCV+GqIFEY+kL1m968ooYXWR/OF1E=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Thu, 26 Oct 2023 12:25:58 +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>, Wei Liu <wl@xen.org>
Subject: Re: [PATCH 5/7] x86: detect PIT aliasing on ports other than 0x4[0-3]
Message-ID: <ZTo-tpk64ew4rk1o@macbook>
References: <95129c04-f37c-9e26-e65d-786a1db2f003@suse.com>
 <042f76dd-d189-c40a-baec-68ded32aa797@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <042f76dd-d189-c40a-baec-68ded32aa797@suse.com>
X-ClientProxiedBy: LO2P265CA0073.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:8::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_|MW4PR03MB6587:EE_
X-MS-Office365-Filtering-Correlation-Id: a3a873f5-4499-47e8-550b-08dbd60df3b5
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:
	YS3/7mTks388NPU2jXPWphwBrKlWYjQsbbCDp+Q6QWAbENvtsyMmtP/7faKBJs3nc8rRqrMqTPLJtW6D6qZiallhhggjUvUmXBjs2kCFIeDZS/ga0654YHVNal0VztB3Xj8NyAj2ljy+is6RcQ+XP04gcQtoFPfVA8bfoeXcrgMoHBefvpdGpFju0Nvqu65zUYz0oZBTXGRzLyVoPT223JR01ieoTqOjjwp3Wsvc8Rbuz42L6ha/nun91X+rcw+UYEAABxjHFXTGbW3PbVKtnX8ggP1SsJCsmRZtIMHi0wCIFYxMaIoj4glGd5R7yntOJPS8tNTGnM3NNmtI8BlGMwcyq0dcopCoa/Yl/Ums/R8qP5LcBX27K7954zLn4HLytEhHeJSaN9movHNUvweVh81++0vULtzQw8PyIME+fR1OwJJ4EdOsbtsO1lTuRVKdm8Y5FMEwed9jtA7zBPToix1m8d81y9KbCAnBdryK2S92xi4yzEh4d3PvwfKKvANE3JQAXKV7750ya7SZEkoL6jWFZVJooSFYwjmFptf/+Wc+ejZCxpHkg78ILO6msI+43qDYywpr+SeXK3lpbR3+1AtP9QldhZw43iu5zjGy5Os=
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)(366004)(136003)(376002)(39860400002)(230922051799003)(1800799009)(64100799003)(186009)(451199024)(9686003)(6512007)(6666004)(41300700001)(6506007)(6486002)(478600001)(83380400001)(26005)(66556008)(66946007)(54906003)(316002)(6916009)(66476007)(86362001)(2906002)(82960400001)(8936002)(38100700002)(8676002)(4326008)(33716001)(5660300002)(85182001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?OXIyYnhhL0NFN2szTXY4Sml2RkhvV0lNRXVPdHV0TjJnbDNQUXl4UGQ4YjMz?=
 =?utf-8?B?TzdoVkcvNHRCc2pSdjk3bm51RFNSYUFDc0pQQ2gxY1pRdGtLenlSeHVFeU5l?=
 =?utf-8?B?NHBFVDJlRWF3NGZPTWI0K21ITDQzUm1GYXN1dlVWc2M3WlQwcFZ3SzhzOEJj?=
 =?utf-8?B?Znk1cFV3VVlrU2IzcXJ6Z0xQeWJZcGJUN1Q5TmVsS2dGVmpBVmtUclJZU29B?=
 =?utf-8?B?dUFsaHZTem44Q1BBRkQ1UytuY2hUZ3YySjJ6eHJHYVdKcmNYeEJTZmJnV3ZT?=
 =?utf-8?B?YVMrUmkrUFpabVdsN0VmZUZobFhhS3N4QkEwVDA3UkV2U1hMaXlkS2FnM3JV?=
 =?utf-8?B?cDZsZlpBMm54eHJweVlLeUEySlRGaHkyK3ZzUmNraTZFSUJFVk51YnVMcFZQ?=
 =?utf-8?B?emFSamdPZUhaQ21KZ2szdjJUWU9VU2RKRUJUSzB5U1RLd2dGTnYvSi95YTNl?=
 =?utf-8?B?RFZwVTU5NkdxK1ZIWUJyWHhhOEd6OW1PSjZRUTFodm9CZDZrU25qQkVkdEM3?=
 =?utf-8?B?ajM2NEVzelZpNU4vS1ZBNVdlYUhpUk1EaW9KaCtkZXdCWkVUdDNSMitsb1pr?=
 =?utf-8?B?R05CWStibnBXRHVTbXYyR0crRllFK3J4Nm12blhQOE1OTjZuY1RtV0FOZDk0?=
 =?utf-8?B?WE9LajBqVjNKQUh0YVFJQlNYbHVDMDU3bFJzVGxhRStXZzZaaDMxTmhRTnRB?=
 =?utf-8?B?alU0cGg0cXhoUHdmalRXeS93cXpzN3ZtYkgyZytsR1FEVHI1eXBXUlNILzIv?=
 =?utf-8?B?YjNyd1AwenFjZ09UZGgwRlNORnQxVWZGbGlJNXQ1VXdXZDdsbWtORTBNcWxx?=
 =?utf-8?B?YlE5ekVwWmxOdzhySXNPTG02OFZYSTZYa2R0cHM0VUtXS1RKWHhkR0tqTTdv?=
 =?utf-8?B?eTFsd2JyTnNoRytZZEc0T2JLZW9yQ3JQYWhER3g1b1BNYWZJd3NWV1RvR3Rz?=
 =?utf-8?B?SjFUcEdaWGxCdXBad21DWTZPdEE3QzZ5anMyRUFUWnN2bW5rVjBOb1lLSlgy?=
 =?utf-8?B?N20rc1UvTjl2RXpzTVN2K0VLbE1TWXVVQUhDdW9kcnlKMXk2ZVNEM2lXUUZ2?=
 =?utf-8?B?QTEyRms5eXd5OW9zWjdJTHQ1VzVVVmtmQkVrSng2a1RQdU45NEVJVjJLVnN0?=
 =?utf-8?B?L2F0WlhwTFlRdWFVN2FLL0V0V0V3dGRpZk5LSHRVQWNCSjNnRUtGaUdvQSs5?=
 =?utf-8?B?cG1abXYrdGxMekx0Z3dvb1FZS2lMMlV2UHI2MzRFVUp5MXZaTjJrMHVRd1VR?=
 =?utf-8?B?V3J6WlJWYXdJZmorMWl1SVVsS25Sc2t0TlFPSDVad0MyTWViNEpkTlduRXQv?=
 =?utf-8?B?cndhY1dsem5CbXVzUkxlSlA1ZmVpMDY0QnE1QnVkWHZTWDBRYWtUTUFMTm9m?=
 =?utf-8?B?ZzNsRHZzaDFFdWNlSXZsWGZmS21aTUFIZVAyeTlrdDJWcXZNVmRsR3hadjJm?=
 =?utf-8?B?V25Fa2J1S3p5cWV3dnVEUDdUR2NOMTVBMVZtWU84WUJUSWZyTTZaUGZPMkkv?=
 =?utf-8?B?SmlZdVppUm10RGY1Q2NhOU1JcXFZSWg3SEJHWEdzQU1NNm9ZdUtZeWZRK3gr?=
 =?utf-8?B?QWpFVEV5SVFROCtreVZFRVMxMWFQaTVqVU43MEtack0yczF0d1BpblpSOXov?=
 =?utf-8?B?OVJIYzVkNmF2L3pwVGtPNFB6OERiT1FBT1hSbXJ1Nnl2Y3NzT1o2Y2ROY0l4?=
 =?utf-8?B?NUZ4OFZjODBRL2MzTndFSmdzR09VczdTUnFUTHU1d3FxQzNsR0JPMnVsNGNo?=
 =?utf-8?B?OTNlL3NDdnFPQmo1U3pUM1NhK1FLdTNXQ1RXbEVuQXo2ektxYUVkcVBDWVhE?=
 =?utf-8?B?ekZOQk1rUDlOMEJpL1JhMUdReTBveHpNNXJ3T1pRclpJTXFLcG5hUzMyTGlJ?=
 =?utf-8?B?YjZxSTRhZXE5UTNhTE9GcVlwWmo2SGpCalVUQk9QeldCQXdibmFpaE9Ka0U3?=
 =?utf-8?B?Zjh1QjI4NjFVay9nWGF2bUttSVFiYm1XLzE4bTUxSERObkpwY0lHTi9CZHpt?=
 =?utf-8?B?bklHb1VOUUpUL3JBYTBFbzgvSHZwR3psRE9ITExNdjQvek1hQU4wY1RiZzd0?=
 =?utf-8?B?eUFZR0ZrKzNlQ2x3dTlEd2RQWkFFUE5ENnlOUGJqQ3QxL3BjbDFnS0hCN3ky?=
 =?utf-8?B?U2FjcDNwUloxdlBTc1VzMVl6VlNUanNOMVJ4eUJCUFlWUUZQcC8wSURHQnBx?=
 =?utf-8?B?b0E9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	uEyPjcbPWNc/LK4GNCa11pRjgO/hf+PkK6Je9u14lik9SnIGUDrIEvRj/6hWCL3wAawv3GTZiEpuMUJTRgiIvvDnlKUOltOrqhjXvVVum1mzK7dUpw5XaMhNECQLixwGgaYoONTY8F5anu7G+bXh18sFc7Tvw4T2GosZPiDaNMtEND0TPn4ovWxuWC72kVEhL6CH/njt37WuJB6Mz/2C2in94At9ZmKmPn5rhw5bXJzrLgaz/2pCMVdLY9lZUA8jLNdkQY0h/FDVI0r4NWwI6y3POWxW2lfgUtssupXXEQSEau5MaTQIMlc2EqEhnbjV7U9dSr84VQDZAlnr4Ykbvxwt9UYNf7t4DURNKUqRrtxejkYs5ZV0Q1YZb6lc4rorKQaLp+oQ3qo8ukMEge9nGPeOr5MDXvP1+3XICVmuVjGxXFIkr+n+NiU0JvTiiKIpvc4fOkd+d9J2lIruCO+f04rzzLMyXygn34TpYTmTLO/rAFBzwTBVdakw7Xb4pxZJFgK5XIbAxVTYptFe+4672RcO75kMf2jPXMJkxn6Iv7fU/XfJ2ifaQcv36VTPy21lE8MhQBDRsTa+gmy6ifPqUjan6V8IPNSM0zFDVUbbHFXxkzxwFhKP46mXb9zsgn8j+H5yJ2MlavW3sZwFyPMagxUcIfAktGgpxRSIFQZVeqaoBBCsESeH3SS9m1m4lQw4S1VabeICOJk4j2LPPlYHhhrmeNH2B1ZOgfU2z6U8SubK2mXEoBOCjAiP3H2i9DSQfm0jJjhFDD+7e1l1B//elWW+XMo5pt/EorxEaEBC2DWtvUIO6+2XNvxInewtTRZntOHJ2c3umEKKACLU72pKVA==
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: a3a873f5-4499-47e8-550b-08dbd60df3b5
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Oct 2023 10:26:01.8658
 (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: gLLNtvM4aeyxvyWqWcqzRUDPsWj8iV5M4g26iWnkm+qSCe1iGD/Iiuux9Icy/uGeeEmLhYz5fA86s1zMiHRjgg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW4PR03MB6587

On Thu, May 11, 2023 at 02:07:12PM +0200, Jan Beulich wrote:
> ... in order to also deny Dom0 access through the alias ports. Without
> this it is only giving the impression of denying access to PIT. Unlike
> for CMOS/RTC, do detection pretty early, to avoid disturbing normal
> operation later on (even if typically we won't use much of the PIT).
> 
> Like for CMOS/RTC a fundamental assumption of the probing is that reads
> from the probed alias port won't have side effects (beyond such that PIT
> reads have anyway) in case it does not alias the PIT's.
> 
> At to the port 0x61 accesses: Unlike other accesses we do, this masks
> off the top four bits (in addition to the bottom two ones), following
> Intel chipset documentation saying that these (read-only) bits should
> only be written with zero.

As said in previous patches, I think this is likely too much risk for
little benefit.  I understand the desire to uniformly deny access to
any ports that allow interaction with devices in use by Xen (or not
allowed to be used by dom0), but there's certainly a risk in
configuring such devices in the way that we do by finding a register
that can be read and written to.

I think if anything this alias detection should have a command line
option in order to disable it.

Do you also have figures if the greatly increased amount of accesses
add a noticeable boot time regression?

We are usually cautious is not performing more accesses than strictly
required.

> 
> Signed-off-by: Jan Beulich <jbeulich@suse.com>
> ---
> If Xen was running on top of another instance of itself (in HVM mode,
> not PVH, i.e. not as a shim), I'm afraid our vPIT logic would not allow
> the "Try to further make sure ..." check to pass in the Xen running on
> top: We don't respect the gate bit being clear when handling counter
> reads. (There are more unhandled [and unmentioned as being so] aspects
> of PIT behavior though, yet it's unclear in how far addressing at least
> some of them would be useful.)
> 
> --- a/xen/arch/x86/dom0_build.c
> +++ b/xen/arch/x86/dom0_build.c
> @@ -504,7 +504,11 @@ int __init dom0_setup_permissions(struct
>      }
>  
>      /* Interval Timer (PIT). */
> -    rc |= ioports_deny_access(d, 0x40, 0x43);
> +    for ( offs = 0, i = pit_alias_mask & -pit_alias_mask ?: 4;
> +          offs <= pit_alias_mask; offs += i )
> +        if ( !(offs & ~pit_alias_mask) )
> +            rc |= ioports_deny_access(d, 0x40 + offs, 0x43 + offs);
> +
>      /* PIT Channel 2 / PC Speaker Control. */
>      rc |= ioports_deny_access(d, 0x61, 0x61);
>  
> --- a/xen/arch/x86/include/asm/setup.h
> +++ b/xen/arch/x86/include/asm/setup.h
> @@ -53,6 +53,7 @@ extern unsigned long highmem_start;
>  #endif
>  
>  extern unsigned int pic_alias_mask;
> +extern unsigned int pit_alias_mask;
>  
>  extern int8_t opt_smt;
>  
> --- a/xen/arch/x86/time.c
> +++ b/xen/arch/x86/time.c
> @@ -425,6 +425,69 @@ static struct platform_timesource __init
>      .resume = resume_pit,
>  };
>  
> +unsigned int __initdata pit_alias_mask;
> +
> +static void __init probe_pit_alias(void)
> +{
> +    unsigned int mask = 0x1c;
> +    uint8_t val = 0;
> +
> +    /*
> +     * Use channel 2 in mode 0 for probing.  In this mode even a non-initial
> +     * count is loaded independent of counting being / becoming enabled.  Thus
> +     * we have a 16-bit value fully under our control, to write and then check
> +     * whether we can also read it back unaltered.
> +     */
> +
> +    /* Turn off speaker output and disable channel 2 counting. */
> +    outb(inb(0x61) & 0x0c, 0x61);
> +
> +    outb((2 << 6) | (3 << 4) | (0 << 1), PIT_MODE); /* Mode 0, LSB/MSB. */
> +
> +    do {
> +        uint8_t val2;
> +        unsigned int offs;
> +
> +        outb(val, PIT_CH2);
> +        outb(val ^ 0xff, PIT_CH2);
> +
> +        /* Wait for the Null Count bit to clear. */
> +        do {
> +            /* Latch status. */
> +            outb((3 << 6) | (1 << 5) | (1 << 3), PIT_MODE);
> +
> +            /* Try to make sure we're actually having a PIT here. */
> +            val2 = inb(PIT_CH2);
> +            if ( (val2 & ~(3 << 6)) != ((3 << 4) | (0 << 1)) )
> +                return;
> +        } while ( val2 & (1 << 6) );

We should have some kind of timeout here, just in case...

> +
> +        /*
> +         * Try to further make sure we're actually having a PIT here.
> +         *
> +         * NB: Deliberately |, not ||, as we always want both reads.
> +         */
> +        val2 = inb(PIT_CH2);
> +        if ( (val2 ^ val) | (inb(PIT_CH2) ^ val ^ 0xff) )
> +            return;
> +
> +        for ( offs = mask & -mask; offs <= mask; offs <<= 1 )
> +        {
> +            if ( !(mask & offs) )
> +                continue;
> +            val2 = inb(PIT_CH2 + offs);
> +            if ( (val2 ^ val) | (inb(PIT_CH2 + offs) ^ val ^ 0xff) )
> +                mask &= ~offs;
> +        }
> +    } while ( mask && (val += 0x0b) );  /* Arbitrary uneven number. */
> +
> +    if ( mask )
> +    {
> +        dprintk(XENLOG_INFO, "PIT aliasing mask: %02x\n", mask);
> +        pit_alias_mask = mask;
> +    }

Is it fine to leave counting disabled for channel 2?

Shouldn't we restore the previous gate value?

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 10:31:29 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 10:31:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623671.971730 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvxe8-0005nk-Ry; Thu, 26 Oct 2023 10:31:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623671.971730; Thu, 26 Oct 2023 10:31: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 1qvxe8-0005nd-Ow; Thu, 26 Oct 2023 10:31:24 +0000
Received: by outflank-mailman (input) for mailman id 623671;
 Thu, 26 Oct 2023 10:31: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=ziZY=GI=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qvxe7-0005nU-I9
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 10:31:23 +0000
Received: from mail-ej1-x633.google.com (mail-ej1-x633.google.com
 [2a00:1450:4864:20::633])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id cd3c9ea5-73ea-11ee-9b0e-b553b5be7939;
 Thu, 26 Oct 2023 12:31:19 +0200 (CEST)
Received: by mail-ej1-x633.google.com with SMTP id
 a640c23a62f3a-9a58dbd5daeso113748366b.2
 for <xen-devel@lists.xenproject.org>; Thu, 26 Oct 2023 03:31:19 -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
 u17-20020a509511000000b0053e163a1ca0sm11378893eda.1.2023.10.26.03.31.18
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Thu, 26 Oct 2023 03: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: cd3c9ea5-73ea-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1698316279; x=1698921079; darn=lists.xenproject.org;
        h=content-transfer-encoding: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=HTxNygwx+tdoV2KIQS0h6gWSMPFZCSB+pSLkpBZb9Bg=;
        b=GGnVq09R1L9rMph4QgjOUE+SB6/fCLJtcJbZfvv59HLPsU+9rX3xhw/iTUqe4XtwrY
         qtYXx8xwFfrit8l8emngGCeKgozZ+mfjAmiyPumifR2P/EEMuw8IWHlNWJIYj9vCsx6h
         5WmpifaECw9X3l1AQ8OWmO3PKEcxI3Q3ozOOY=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698316279; x=1698921079;
        h=content-transfer-encoding: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=HTxNygwx+tdoV2KIQS0h6gWSMPFZCSB+pSLkpBZb9Bg=;
        b=iHEyek9kJ22HxtlwOzMosqOzb7xHphdPMHVrq75LxJ6jjm3vhLuRiWQpbjcLz1r0Va
         Bh0O2EgZjFAYYfqZfQJs7YvBDsasWBypSanTwqeJGjBR223V9r+SytoKkUzljACmGW7C
         5JdQtGu5YUdC+TVModBqEFWl/xdonAgZ2MOpzI+IrfvxzzbLQwjO1ISbmJna/t2zSjHD
         3264plXTHAHvTlTr09OcFxnePTr5DJ6pOFeumdHKU6DaAQOok+ByOsmV8TpjJzhb/dXQ
         gxoOh2LoMNX/o6ii0fAgCQ/4jQKcB8Onh6Yf652UhkE13xqESec4+dmGYVnfZ3typzIe
         RhjA==
X-Gm-Message-State: AOJu0YyEMGQOtAoJaRAbblPpp/1F6aSAxcOAarZWK2IoiIYHMhLYyZhM
	R8kCFSkgz+Ojpy8djz3/kqfamw==
X-Google-Smtp-Source: AGHT+IHighws0G/sb5dSqe+M4H0gjXCmEzp91lOqL3SVNVmCi/gr0zThuiPp5RvKwPu+ollhAabN7w==
X-Received: by 2002:a17:907:1c27:b0:9bf:697b:8f44 with SMTP id nc39-20020a1709071c2700b009bf697b8f44mr14258322ejc.6.1698316279313;
        Thu, 26 Oct 2023 03:31:19 -0700 (PDT)
Message-ID: <cc4c6681-a788-4069-8470-730969018fd0@citrix.com>
Date: Thu, 26 Oct 2023 11:31:18 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH] x86/hvm/dom0: fix PVH initrd and metadata placement
Content-Language: en-GB
To: Xenia Ragiadakou <xenia.ragiadakou@amd.com>,
 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@lists.xenproject.org
References: <20231026064543.43369-1-xenia.ragiadakou@amd.com>
 <ac7e9bac-6d74-a5bf-d703-3c5455e581ea@suse.com>
 <7712c60b-4f89-483e-89e4-7ac8f4d0311e@amd.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: <7712c60b-4f89-483e-89e4-7ac8f4d0311e@amd.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit

On 26/10/2023 9:34 am, Xenia Ragiadakou wrote:
> On 26/10/23 10:35, Jan Beulich wrote:
>> On 26.10.2023 08:45, Xenia Ragiadakou wrote:
>>> Given that start < kernel_end and end > kernel_start, the logic that
>>> determines the best placement for dom0 initrd and metadata, does not
>>> take into account the two cases below:
>>> (1) start > kernel_start && end > kernel_end
>>> (2) start < kernel_start && end < kernel_end
>>>
>>> In case (1), the evaluation will result in end = kernel_start
>>> i.e. end < start, and will load initrd in the middle of the kernel.
>>> In case (2), the evaluation will result in start = kernel_end
>>> i.e. end < start, and will load initrd at kernel_end, that is out
>>> of the memory region under evaluation.
>> I agree there is a problem if the kernel range overlaps but is not fully
>> contained in the E820 range under inspection. I'd like to ask though
>> under what conditions that can happen, as it seems suspicious for the
>> kernel range to span multiple E820 ranges.
> 
> We tried to boot Zephyr as pvh dom0 and its load address was under 1MB.
> 
> I know ... that maybe shouldn't have been permitted at all, but
> nevertheless we hit this issue.


Zephyr is linked to run at 4k.  That's what the ELF Headers say, and the
entrypoint is not position-independent.

So trying to put the binary anywhere else is going to work about as well
having the notes section misalign the pagetables by 0x20 bytes[1].

~Andrew

[1] Guess what was causing the "Zephyr doesn't boot PVH" issues.  Which
is doubly irritating because about 6h of debugging prior, I'd pointed
out that the linker was complaining about an orphaned section and that
that ought to be fixed before trying to debug further...


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 10:32:48 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 10:32:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623674.971740 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvxfU-0006My-5n; Thu, 26 Oct 2023 10:32:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623674.971740; Thu, 26 Oct 2023 10:32: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 1qvxfU-0006Mr-26; Thu, 26 Oct 2023 10:32:48 +0000
Received: by outflank-mailman (input) for mailman id 623674;
 Thu, 26 Oct 2023 10:32: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=VqC+=GI=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qvxfS-0006Mj-Ma
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 10:32:46 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 00572945-73eb-11ee-98d5-6d05b1d4d9a1;
 Thu, 26 Oct 2023 12:32:45 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id 47B1C4EE0742;
 Thu, 26 Oct 2023 12:32: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: 00572945-73eb-11ee-98d5-6d05b1d4d9a1
MIME-Version: 1.0
Date: Thu, 26 Oct 2023 12:32:45 +0200
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: Stefano Stabellini <sstabellini@kernel.org>, michal.orzel@amd.com,
 xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, consulting@bugseng.com,
 andrew.cooper3@citrix.com, roger.pau@citrix.com, Simone Ballarin
 <simone.ballarin@bugseng.com>, Doug Goldstein <cardoe@cardoe.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][for-4.19 v3 1/8] xen/include: add macro LOWEST_BIT
In-Reply-To: <3cc22b2d-fbcf-899e-1d7d-036a53bd0f7f@suse.com>
References: <cover.1697815135.git.nicola.vetrini@bugseng.com>
 <546cf30aa43d6d0687a9a6c6d23b11128e5783e8.1697815135.git.nicola.vetrini@bugseng.com>
 <f504772a-68b4-fbfa-e7d4-8d22992c7944@suse.com>
 <f23a1f95916bd61ddcd5002428d8876c@bugseng.com>
 <6d113a237846c7a41aa083e806f172e7@bugseng.com>
 <5475d9e5-ec1c-7f71-ee77-59ec2e6ee01e@suse.com>
 <alpine.DEB.2.22.394.2310231340320.3516@ubuntu-linux-20-04-desktop>
 <dd33e92f-03aa-cf3c-23d7-dcf9cce23c8e@suse.com>
 <2f88afb2383b5fdecf83d311ebe69bb4@bugseng.com>
 <96dd7efb-c214-2155-c5d1-3b9a47c10d33@suse.com>
 <alpine.DEB.2.22.394.2310251537460.271731@ubuntu-linux-20-04-desktop>
 <3cc22b2d-fbcf-899e-1d7d-036a53bd0f7f@suse.com>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <ff395b4eab2e79a901516e0958647f8b@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 26/10/2023 08:52, Jan Beulich wrote:
> On 26.10.2023 00:38, Stefano Stabellini wrote:
>> On Wed, 25 Oct 2023, Jan Beulich wrote:
>>> On 25.10.2023 16:50, Nicola Vetrini wrote:
>>>> Ok, I'll send a revised version using MASK_LOWEST_BIT, taking into
>>>> account also the
>>>> other comments about the explanation on the macro definition
>>>> (which some IDEs even show when hovering on its usage, which could
>>>> partially address
>>>> the latter concern).
>>> 
>>> You're of course free to do so, but since - as indicated before -
>>> MASK_LOWEST_BIT() imo isn't a better name than LOWEST_BIT(), I'll
>>> continue to object.
>> 
>> Jan if you are OK with that I'll ask Julien to break the tie and pick
>> the name to use. Julien can you please help us move forward?
> 
> Hmm, I'm having trouble seeing us at the point of breaking ties yet.
> First we need naming suggestions which actually unambiguously
> describe what's being done by the macro. I gave one suggestion which
> I think fulfills this property, but is a little too long for my
> taste. I gave another suggestion with a far-off but shorter name,
> which I can appreciate isn't liked. I've not seen other suggestions
> fulfilling this base criteria.
> 
> Jan

Any name is fine with me. ISOLATE_LOW_BIT may be longish, but the macro 
would be used
in just a few places for a specific reason, so the loss in readability 
is probably not
that high.

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


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 10:32:59 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 10:32:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623676.971750 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvxff-0006gw-D7; Thu, 26 Oct 2023 10:32:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623676.971750; Thu, 26 Oct 2023 10:32: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 1qvxff-0006gp-AF; Thu, 26 Oct 2023 10:32:59 +0000
Received: by outflank-mailman (input) for mailman id 623676;
 Thu, 26 Oct 2023 10:32: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=Oycl=GI=arm.com=luca.fancellu@srs-se1.protection.inumbo.net>)
 id 1qvxfe-0006fs-5m
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 10:32:58 +0000
Received: from foss.arm.com (foss.arm.com [217.140.110.172])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTP
 id 060cdd26-73eb-11ee-9b0e-b553b5be7939;
 Thu, 26 Oct 2023 12:32:55 +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 4911C2F4;
 Thu, 26 Oct 2023 03:33:36 -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 96C713F738;
 Thu, 26 Oct 2023 03:32: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: 060cdd26-73eb-11ee-9b0e-b553b5be7939
From: Luca Fancellu <luca.fancellu@arm.com>
To: xen-devel@lists.xenproject.org
Cc: wei.chen@arm.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: [for-4.19 PATCH 0/2] Generalise exclude-list.json for other users
Date: Thu, 26 Oct 2023 11:32:41 +0100
Message-Id: <20231026103243.2077516-1-luca.fancellu@arm.com>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

This serie is generalising the exclude-list.json so that it can be used by
multiple checkers that might want to have a list of excluded files to be removed
from their computation.

Luca Fancellu (2):
  cppcheck: rework exclusion_file_list.py code
  exclude-list: generalise exclude-list

 docs/misra/exclude-list.rst                   | 31 ++++++++-----
 xen/scripts/xen_analysis/cppcheck_analysis.py |  6 +--
 .../xen_analysis/exclusion_file_list.py       | 45 ++++++++++++-------
 3 files changed, 51 insertions(+), 31 deletions(-)

-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Thu Oct 26 10:32:59 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 10:32:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623677.971756 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvxff-0006kS-NT; Thu, 26 Oct 2023 10:32:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623677.971756; Thu, 26 Oct 2023 10:32: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 1qvxff-0006j5-HJ; Thu, 26 Oct 2023 10:32:59 +0000
Received: by outflank-mailman (input) for mailman id 623677;
 Thu, 26 Oct 2023 10:32: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=Oycl=GI=arm.com=luca.fancellu@srs-se1.protection.inumbo.net>)
 id 1qvxfe-0006fs-RS
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 10:32:58 +0000
Received: from foss.arm.com (foss.arm.com [217.140.110.172])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTP
 id 068e4182-73eb-11ee-9b0e-b553b5be7939;
 Thu, 26 Oct 2023 12:32:56 +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 0B3C91424;
 Thu, 26 Oct 2023 03:33:37 -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 E64103F738;
 Thu, 26 Oct 2023 03:32: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: 068e4182-73eb-11ee-9b0e-b553b5be7939
From: Luca Fancellu <luca.fancellu@arm.com>
To: xen-devel@lists.xenproject.org
Cc: wei.chen@arm.com,
	Stefano Stabellini <sstabellini@kernel.org>
Subject: [for-4.19 PATCH 1/2] cppcheck: rework exclusion_file_list.py code
Date: Thu, 26 Oct 2023 11:32:42 +0100
Message-Id: <20231026103243.2077516-2-luca.fancellu@arm.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20231026103243.2077516-1-luca.fancellu@arm.com>
References: <20231026103243.2077516-1-luca.fancellu@arm.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Rework the exclusion_file_list.py code to have the function
load_exclusion_file_list() detached from the xen-analysis.py tool,
in a way so that other modules can use the function.
The xen-analysis tool and in particular its module cppcheck_analysis.py
will use a new function cppcheck_exclusion_file_list().

No functional changes are intended.

Signed-off-by: Luca Fancellu <luca.fancellu@arm.com>
---
 xen/scripts/xen_analysis/cppcheck_analysis.py |  6 ++--
 .../xen_analysis/exclusion_file_list.py       | 31 ++++++++++---------
 2 files changed, 19 insertions(+), 18 deletions(-)

diff --git a/xen/scripts/xen_analysis/cppcheck_analysis.py b/xen/scripts/xen_analysis/cppcheck_analysis.py
index 8dc45e653b79..e54848aa5339 100644
--- a/xen/scripts/xen_analysis/cppcheck_analysis.py
+++ b/xen/scripts/xen_analysis/cppcheck_analysis.py
@@ -2,7 +2,8 @@
 
 import os, re, shutil
 from . import settings, utils, cppcheck_report_utils, exclusion_file_list
-from .exclusion_file_list import ExclusionFileListError
+from .exclusion_file_list import (ExclusionFileListError,
+                                  cppcheck_exclusion_file_list)
 
 class GetMakeVarsPhaseError(Exception):
     pass
@@ -54,8 +55,7 @@ def __generate_suppression_list(out_file):
             try:
                 exclusion_file = \
                     "{}/docs/misra/exclude-list.json".format(settings.repo_dir)
-                exclusion_list = \
-                    exclusion_file_list.load_exclusion_file_list(exclusion_file)
+                exclusion_list = cppcheck_exclusion_file_list(exclusion_file)
             except ExclusionFileListError as e:
                 raise CppcheckDepsPhaseError(
                     "Issue with reading file {}: {}".format(exclusion_file, e)
diff --git a/xen/scripts/xen_analysis/exclusion_file_list.py b/xen/scripts/xen_analysis/exclusion_file_list.py
index 871e480586bb..79ebd34f55ec 100644
--- a/xen/scripts/xen_analysis/exclusion_file_list.py
+++ b/xen/scripts/xen_analysis/exclusion_file_list.py
@@ -7,16 +7,24 @@ class ExclusionFileListError(Exception):
     pass
 
 
-def __cppcheck_path_exclude_syntax(path):
-    # Prepending * to the relative path to match every path where the Xen
-    # codebase could be
-    path = "*" + path
+def cppcheck_exclusion_file_list(input_file):
+    ret = []
+    excl_list = load_exclusion_file_list(input_file)
+
+    for entry in excl_list:
+        # Prepending * to the relative path to match every path where the Xen
+        # codebase could be
+        ret.append("*" + entry[0])
 
-    return path
+    return ret
 
 
-# Reads the exclusion file list and returns a list of relative path to be
-# excluded.
+# Reads the exclusion file list and returns an array containing a set where the
+# first entry is what was listed in the exclusion list file, and the second
+# entry is the absolute path of the first entry.
+# If the first entry contained a wildcard '*', the second entry will have an
+# array of the solved absolute path for that entry.
+# Returns [('path',[path,path,...]), ('path',[path,path,...]), ...]
 def load_exclusion_file_list(input_file):
     ret = []
     try:
@@ -58,13 +66,6 @@ def load_exclusion_file_list(input_file):
                     .format(path, filepath_object)
                 )
 
-        if settings.analysis_tool == "cppcheck":
-            path = __cppcheck_path_exclude_syntax(path)
-        else:
-            raise ExclusionFileListError(
-                "Unimplemented for {}!".format(settings.analysis_tool)
-            )
-
-        ret.append(path)
+        ret.append((path, check_path))
 
     return ret
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Thu Oct 26 10:33:00 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 10:33:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623678.971770 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvxfg-0007Ai-UB; Thu, 26 Oct 2023 10:33:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623678.971770; Thu, 26 Oct 2023 10:33: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 1qvxfg-0007AZ-QS; Thu, 26 Oct 2023 10:33:00 +0000
Received: by outflank-mailman (input) for mailman id 623678;
 Thu, 26 Oct 2023 10:32: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=Oycl=GI=arm.com=luca.fancellu@srs-se1.protection.inumbo.net>)
 id 1qvxff-0006fs-Re
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 10:32:59 +0000
Received: from foss.arm.com (foss.arm.com [217.140.110.172])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTP
 id 07456219-73eb-11ee-9b0e-b553b5be7939;
 Thu, 26 Oct 2023 12:32:57 +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 531061480;
 Thu, 26 Oct 2023 03:33:38 -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 ABAE73F738;
 Thu, 26 Oct 2023 03:32: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: 07456219-73eb-11ee-9b0e-b553b5be7939
From: Luca Fancellu <luca.fancellu@arm.com>
To: xen-devel@lists.xenproject.org
Cc: wei.chen@arm.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: [for-4.19 PATCH 2/2] exclude-list: generalise exclude-list
Date: Thu, 26 Oct 2023 11:32:43 +0100
Message-Id: <20231026103243.2077516-3-luca.fancellu@arm.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20231026103243.2077516-1-luca.fancellu@arm.com>
References: <20231026103243.2077516-1-luca.fancellu@arm.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Currently exclude-list.json is used by the xen-analysis tool to
remove from the report (cppcheck for now) violations from the
files listed in it, however that list can be used by different
users that might want to exclude some of the files from their
computation for many reasons.

So add a new field that can be part of each entry to link
the tool supposed to consider that exclusion.

Update exclusion_file_list.py to implement the logic and update
the documentation to reflect this change.

Signed-off-by: Luca Fancellu <luca.fancellu@arm.com>
---
 docs/misra/exclude-list.rst                   | 31 ++++++++++++-------
 .../xen_analysis/exclusion_file_list.py       | 16 ++++++++--
 2 files changed, 33 insertions(+), 14 deletions(-)

diff --git a/docs/misra/exclude-list.rst b/docs/misra/exclude-list.rst
index c97431a86120..42dbceb82523 100644
--- a/docs/misra/exclude-list.rst
+++ b/docs/misra/exclude-list.rst
@@ -1,17 +1,16 @@
 .. SPDX-License-Identifier: CC-BY-4.0
 
-Exclude file list for xen-analysis script
-=========================================
+Exclude file list for xen scripts
+=================================
 
-The code analysis is performed on the Xen codebase for both MISRA
-checkers and static analysis checkers, there are some files however that
-needs to be removed from the findings report for various reasons (e.g.
-they are imported from external sources, they generate too many false
-positive results, etc.).
+Different Xen scripts can perform operations on the codebase to check its
+compliance for a set of rules, however Xen contains some files that are taken
+from other projects (e.g. linux) and they can't be updated to ease backporting
+fixes from their source, for this reason the file docs/misra/exclude-list.json
+is kept as a source of all these files that are external to the Xen project.
 
-For this reason the file docs/misra/exclude-list.json is used to exclude every
-entry listed in that file from the final report.
-Currently only the cppcheck analysis will use this file.
+Every entry of the file can be linked to different checkers, so that this list
+can be used by multiple scripts selecting only the required entries.
 
 Here is an example of the exclude-list.json file::
 
@@ -20,11 +19,13 @@ Here is an example of the exclude-list.json file::
 |    "content": [
 |        {
 |            "rel_path": "relative/path/from/xen/file",
-|            "comment": "This file is originated from ..."
+|            "comment": "This file is originated from ...",
+|            "checkers": "xen-analysis"
 |        },
 |        {
 |            "rel_path": "relative/path/from/xen/folder/*",
-|            "comment": "This folder is a library"
+|            "comment": "This folder is a library",
+|            "checkers": "xen-analysis some-checker"
 |        },
 |        {
 |            "rel_path": "relative/path/from/xen/mem*.c",
@@ -39,6 +40,12 @@ Here is an explanation of the fields inside an object of the "content" array:
    match more than one file/folder at the time. This field is mandatory.
  - comment: an optional comment to explain why the file is removed from the
    analysis.
+ - checkers: an optional list of checkers that will exclude this entries from
+   their results. This field is optional and when not specified, it means every
+   checker will use that entry.
+   Current implemented values for this field are:
+    - xen-analysis: the xen-analysis.py script exclude this entry for both MISRA
+      and static analysis scan. (Implemented only for Cppcheck tool)
 
 To ease the review and the modifications of the entries, they shall be listed in
 alphabetical order referring to the rel_path field.
diff --git a/xen/scripts/xen_analysis/exclusion_file_list.py b/xen/scripts/xen_analysis/exclusion_file_list.py
index 79ebd34f55ec..8b10665a19e8 100644
--- a/xen/scripts/xen_analysis/exclusion_file_list.py
+++ b/xen/scripts/xen_analysis/exclusion_file_list.py
@@ -9,7 +9,7 @@ class ExclusionFileListError(Exception):
 
 def cppcheck_exclusion_file_list(input_file):
     ret = []
-    excl_list = load_exclusion_file_list(input_file)
+    excl_list = load_exclusion_file_list(input_file, "xen-analysis")
 
     for entry in excl_list:
         # Prepending * to the relative path to match every path where the Xen
@@ -25,7 +25,7 @@ def cppcheck_exclusion_file_list(input_file):
 # If the first entry contained a wildcard '*', the second entry will have an
 # array of the solved absolute path for that entry.
 # Returns [('path',[path,path,...]), ('path',[path,path,...]), ...]
-def load_exclusion_file_list(input_file):
+def load_exclusion_file_list(input_file, checker=""):
     ret = []
     try:
         with open(input_file, "rt") as handle:
@@ -51,6 +51,18 @@ def load_exclusion_file_list(input_file):
             raise ExclusionFileListError(
                 "Malformed JSON entry: rel_path field not found!"
             )
+        # Check the checker field
+        try:
+            entry_checkers = entry['checkers']
+        except KeyError:
+            # If the field doesn't exists, assume that this entry is for every
+            # checker
+            entry_checkers = checker
+
+        # Check if this entry is for the selected checker
+        if checker not in entry_checkers:
+            continue
+
         abs_path = settings.xen_dir + "/" + path
         check_path = [abs_path]
 
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Thu Oct 26 10:48:43 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 10:48:43 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623695.971780 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvxuk-0003Wx-B1; Thu, 26 Oct 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 623695.971780; Thu, 26 Oct 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 1qvxuk-0003Wq-6k; Thu, 26 Oct 2023 10:48:34 +0000
Received: by outflank-mailman (input) for mailman id 623695;
 Thu, 26 Oct 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=Iwvv=GI=citrix.com=prvs=656fec104=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qvxui-0003Wk-Rj
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 10:48:32 +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 321fad77-73ed-11ee-9b0e-b553b5be7939;
 Thu, 26 Oct 2023 12:48:29 +0200 (CEST)
Received: from mail-mw2nam10lp2100.outbound.protection.outlook.com (HELO
 NAM10-MW2-obe.outbound.protection.outlook.com) ([104.47.55.100])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 26 Oct 2023 06:48:23 -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.6933.11; Thu, 26 Oct
 2023 10:48:18 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::acf0:ce2b:1634:5aee]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::acf0:ce2b:1634:5aee%6]) with mapi id 15.20.6933.011; Thu, 26 Oct 2023
 10:48: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: 321fad77-73ed-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1698317309;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=FBIQTbMJiTVsZb7rJGxE8tP5uLPmoo9dNiWBbpdjLHo=;
  b=XnwCjZBrbr7jcb9TwzQjZCFQ/5sfwjDzCLg6Yqs7F5PUt5Vik5z1MBiD
   m3g5ZtTSaqCfK8rT/EVj9DqnjTEYypF67wEi5m0rwycNGX0PHsCVdRYAO
   +Q8H7jj/H68VLsefCBR8N0ua+BC/lHdXDZmvHREVbyUFMGSsOzc0v7iHd
   4=;
X-CSE-ConnectionGUID: QQKxxjcmTguVi+Kgb7sAgw==
X-CSE-MsgGUID: 1QFpmEDBSbKIhOW0W2kZzQ==
X-IronPort-RemoteIP: 104.47.55.100
X-IronPort-MID: 125948549
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:JtnGEqkxIG5yyKonhhL+Hs/o5gynJ0RdPkR7XQ2eYbSJt1+Wr1Gzt
 xIYUDuGaPmNYGT9fYp0b4ix8UMD78SAm4c3Sws9rn9hFiMWpZLJC+rCIxarNUt+DCFhoGFPt
 JxCN4aafKjYaleG+39B55C49SEUOZmgH+e6UKicfHkpGWeIcQ954Tp7gek1n4V0ttawBgKJq
 LvartbWfVSowFaYCEpNg064gE0p5K+aVA8w5ARkPqkT5gGGzhH5MbpETU2PByqgKmVrNrbSq
 9brlNmR4m7f9hExPdKp+p6TnpoiG+O60aCm0xK6aoD66vRwjnVaPpUTbZLwXXx/mTSR9+2d/
 f0W3XCGpaXFCYWX8AgVe0Ew/yiTpsSq8pefSZS0mZT7I0Er7xIAahihZa07FdRwxwp5PY1B3
 cUhCyAdbBuGu+2r/rP4aeZm2d8KI9a+aevzulk4pd3YJdAPZMmbBoD1v5pf1jp2gd1SF/HDY
 cZfcSBocBnLfxxIPBEQFY46m+CrwHL4dlW0qnrM/fZxvzeVkVE3ieC1WDbWUoXiqcF9hEGXq
 3iA523kKhobKMae2XyO9XfEaurnxHmmCd5CSeHpnhJsqASq6HQWJTE8blGYgPmetRaBAdFtO
 XVBr0LCqoB3riRHVOLVXRe1vXqFtR40QMdLHqsx7wTl4rrZ5UOVC3YJShZFacc6r4kmSDoyz
 FiLktj1Qzt1v9W9Vna15rqS6zSoNkAowXQqYCYFSU4A/IPlqYRq1hbXFI87SOiyk8H/Hiz2z
 3aSti8iir4PjMkNkaKm4VTAhDHqrZ/MJuIo2jjqsquexlsRTOaYi0aAsDA3Md4owF6lc2S8
IronPort-HdrOrdr: A9a23:vom30KgGbVbo9wReozpjkzW0e3BQX7123DAbv31ZSRFFG/FwyP
 rCoB1L73XJYWgqM03I+eruBEBPewK4yXdQ2/hoAV7EZnichILIFvAa0WKG+VHd8kLFltK1uZ
 0QEJSWTeeAd2SS7vyKnzVQcexQp+VvmZrA7Ym+854ud3ANV0gJ1XYENu/xKDwTeOApP+taKH
 LKjfA32gZINE5nJ/hSQRI+Lpv+juyOsKijTQ8NBhYh5gXLpTS06ITiGxzd8gYCXyhJybIC93
 GAtwDi/K2sv9yy1xeZjgbontlrseqk7uEGKN2Hi8ATJDmpogG0ZL55U7nHkCEprPqp4FMKls
 CJhxs7Jcx8517YY2nwixrw3AvL1ioo9hbZuBWlqEqmhfa8aCMxCsJHi44cWhzF63A4tNU59K
 5QxWqWu7deEBuFxU3GlpP1fiAvsnDxjWspkOYVgXAaeYwCaIVJpYha2E9OCp8PEA/z9YhiOu
 hzC8P34upQbDqhHjjkl1gq5ObpcmU4Hx+ATERHksuJ0wJOlHQ89EcczNx3pAZ1yLsND71/o8
 jUOKVhk79DCuUMa7hmOesHScyrTkTQXBPlKgupUBXaPZBCH0iIh4/84b0z6u3vUocP1oEOlJ
 PIV04dnXIuenjpFdaF0PRwg17wqV2GLHfQI/xlltpEUuWWfsuvDcTDciFgryKYmYRePiWBMM
 zDfK6/AJfYXB7T8MhyrkrDsqJpWAkjuf0uy6gGsm2107P2w63Rx5vmmaXoVczQOAdhfF/DKV
 0+exW2DPl8zymQKw3FaV7qKj/QRnA=
X-Talos-CUID: =?us-ascii?q?9a23=3AQuoUEWp+styalAeh2WwrRQnmUfkcUW3NznzVH0C?=
 =?us-ascii?q?lN2cqa7KfFkS597wxxg=3D=3D?=
X-Talos-MUID: 9a23:D5DxjglBYS/JoBsVwNfadno7Delw5omCInsHsrQGnPbcCnZzCSWk2WE=
X-IronPort-AV: E=Sophos;i="6.03,253,1694750400"; 
   d="scan'208";a="125948549"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=A93V5OcWpSHcd7xma0/T4uzcYttPppohFfjnn4A08OZKWEbP6cwNhzg34em3FVysxIqXZW7GWuaWH/3LLZX7PObYjF9TsOusOlyx1XLMHkRsQA97vWwxhOBCWlSODqBhugFn2JiMEqA/+oHRz2VVMW4MHTQPDk7hEQFVclDp+otf/0v7IwrvLl4yK5kbhmmXNvjKZzn5mqXwiti1sChX1MXSDAS2+GZ2003jSeHZF3v5bHrenTuCdZw9sdb1lU9/RGwnAfvAnwmK9Ig/rp+f+uoMNLjRJlmln6gPejvdALX+w3nnEllfwTIx3muz3xxKiHdSepE3HEegsSK/r0FyJw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=NJ9MrFxpLi0rarvr8vqPhkrCuy0WR1S2kP4oihlnK08=;
 b=gDbi+pjRisnUrnYhNLCILGwf5LkHNzsDB6aRXMlrV+arNfRuHZ6b2bzAJvY+k06SEDn2nPV6G7C6KGKpxxKajAfLX27BkGWUwuInHO8TpEishzsfTlo0Jj5NJexqdj2aYJ4kFhl+yhBhM/rT4RaA40yvtRcNvgOUsGbYY4bUOshVx9pQa+omLhreX+fSNFk2WVwIZOScNCs8iui/YZdfC2XyLh8XoIUyxL4OO9kmxTJi5diTC+N9bEBNemFBr1vJ8vagNTZh7lE1rEvEXbVGLPaerkjP88TtZfvBmV6vTU6bHcze0YtxjWKFcu3XXxgBuOIoTTJb3W+D9BAqnUQL2w==
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=NJ9MrFxpLi0rarvr8vqPhkrCuy0WR1S2kP4oihlnK08=;
 b=aVJ2xHeWKv8fIyw+bJmh6rRDUSG5j9nNW0wZ5aZv3OzDkmuhwu8l7AzzY7FRTL9NsRW2ha10lFP6n7MT1HfXWTUcGd2oD0bbhLkU/BBPKGfrwR9SOz1VgcEbcCENMqKJVIZF599NmhDr/tn5olNR2JZpCsKYB7U8RzR3qRrDx28=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Thu, 26 Oct 2023 12:48: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>, Wei Liu <wl@xen.org>
Subject: Re: [PATCH 6/7] x86: don't allow Dom0 (direct) access to port F0
Message-ID: <ZTpD791YQsOY1d38@macbook>
References: <95129c04-f37c-9e26-e65d-786a1db2f003@suse.com>
 <a8be0096-42af-6d7d-ff7b-b6128d996ccc@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <a8be0096-42af-6d7d-ff7b-b6128d996ccc@suse.com>
X-ClientProxiedBy: LO4P123CA0150.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:188::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_|SJ0PR03MB5663:EE_
X-MS-Office365-Filtering-Correlation-Id: 683212db-8892-43ed-1287-08dbd61110aa
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:
	r53SQ6WludCrmmzwdTY9vbbaC3B1XN7AdSC1F77rx0Ifs08kzEm3e4/iz/s4bVXlWwcWwK44ldt6mBzjIbvMNB0VFYbSnGQsNlQIgoy4VqqGcOSNV40nWHJCjGzwVadliuZLgaQ3AQP5DCSnzXDhYGmwnnt8inhaTQi9NV2vwcQd42f7AU3tkHMF24MCfG4t8m4mdrZXpbYtkzDnfpt6SYn/tuWi/aFY7vsTXk+X5E6xBzBnTaKnS/R4xE1dXnLCR5ywgEqQ6H6hsnzcY8i5bJdftG5pqdbT4sb6mVIO7qC1ePdXUtrshJCPcGuPeBOysWdNqSRiIrw6JOmkZUrEA96Kwiz/F1N+63IcDdHeg8po08NZv7LDpRYWIW5we4jc28HE/s5dOB8BYD2iCsIm+QSZwqaDUEwQ4A8GH1onjQwhHWCHGJBTuxW0ytWmn3n6V8oMQUoiW4NQIA88VY1y20qAqK/soLK7LMfXCDHzq6EBZu1NsLHlJu8RgzUu+g6N5fy7F8pv99p80yfqTrCcRPXYqP9U6xCdDu8AeMzIHeVkOAWC136bW8zzj/IKJCjb
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)(366004)(396003)(39860400002)(230922051799003)(64100799003)(451199024)(186009)(1800799009)(2906002)(6486002)(4326008)(5660300002)(478600001)(41300700001)(8936002)(8676002)(6916009)(66946007)(66556008)(316002)(54906003)(66476007)(33716001)(83380400001)(86362001)(85182001)(82960400001)(38100700002)(6512007)(26005)(6506007)(6666004)(9686003);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?NXhpYVBMNTN2WEZrcllhT084S1MxbTFXMnYya3JNLzl1K2ZIS3RxRi8vYTJM?=
 =?utf-8?B?Z2tGZ3ZqNXBjWXRkcWxoL0lxTUxLalIrU1FJb0EvS2cxUDlnZVUzOFhCU2JE?=
 =?utf-8?B?aksyZFJSc1JlczNJRG5wR0RLb2Z3MnNsRzJWTE1rU1VvMVVDTVBvZWd0cFZh?=
 =?utf-8?B?ZVk2V2QyanYzTzhsa1NJTDNzMHdlZzk1SVFvRXZTTkZrY0N2eHJWNTZVTDZl?=
 =?utf-8?B?MGk1M2xhWGZHZ1dpQVBOYXN2MUMrbVhoRHZmZGlNMHVsbkNMQ3VHc1ZqN213?=
 =?utf-8?B?b0hDYWNTUG1tOXJwcGhOUWlWQVVHbnpTMFhSNzZYTXFaOGRVZUdHM01rbzM0?=
 =?utf-8?B?N0pOc0xFeXNrN0hQYWFrYlRHWFlGaTZjRFV2bTRONHpraWxMeHE2SUlqclo2?=
 =?utf-8?B?aTNqMGp2L0g2blFhY2RNRXN6V3ppb0s3S0hhemZxRGhIaDZXS3BhSDdRRjg3?=
 =?utf-8?B?bHpNUlRvQVd4YWRsc0ozVVNzaXFQYUYxb2tOaHh3YU85ZzU4SGtmK3Qwb1BI?=
 =?utf-8?B?TkY1ZUJyY1V4MWpTelR5NUhINThIdWZNVjZGalNuR3VQMkRwRjA2dkFpeFdJ?=
 =?utf-8?B?eHBxVkM4NWNScUVjZzA5bWtkZk5rSVNZWU5meHVzZFRqY2xDQ1BHNFFjaE9O?=
 =?utf-8?B?V2wrcFF6L0diWTFoS3F4N1FLN0tkMExDeHNZLzlGQTI2bFd0czhzMmdweUFM?=
 =?utf-8?B?SEFaRTVrQlQ4ck9ZVHN4WkZSNnAreHhPeStURXZtdDBXMDYwcEZzN3U4TEJt?=
 =?utf-8?B?R2tSUkI1SWswTFVsdVEwTTg3aTRzZVRUK2R3RU51QVZDUTZ0UURXT05iL2FN?=
 =?utf-8?B?N0tHNHdRb0VVL2VWdEtFd0pJdW9YTUdjT2M5d3J1QVRxQldCa0VEZ0JXaVd4?=
 =?utf-8?B?U0pHTzZvMWc3bTJTSXBxUmRmTVppN25IRkRvK0t1TExIM08rMTd5aC8wZ0JF?=
 =?utf-8?B?UG5rTmxkL3YwWW1GN2U1Y0txQkJZREhIcGpNNlliaW5BTTFZNDB1aDJFb3ow?=
 =?utf-8?B?SnVUUDN0WlBWV09VdkpSNUl6UWh1YzdzVDNXa3g4WGpZY1A3NzFLYm8rVUMv?=
 =?utf-8?B?aW1sZFlaeWwxVEVDam5oTHFUUVVXa3ByZitBendvbTJsUGRqSHZlOVBBVThE?=
 =?utf-8?B?SXRzYWhyYW9nWTZBYmNMbFppTFUyOEdEUldLREovaWZnS1BUdXI5NkMvYVpF?=
 =?utf-8?B?dUdBMkd5RFRMUHhVSU9VRlJ2aUdOQlIyNVpkaHI5MU1FVjdQWW1tc1U1VnU3?=
 =?utf-8?B?MHV0RFpWbXBMRXFSUzc4ZUtoa0hJcW5Qa2VDTEt4Ukd6WGJXZFhWRFIrZS9s?=
 =?utf-8?B?SGIvQmlXbUZlNnlkbk1qcXNkT3RPTGt4cnpob3FXNGZJZ1Y2d055QWRycVVY?=
 =?utf-8?B?UGtMRmx3VWUwMkNZZ2tzMkhDZ2JIa1FMUFhZN2Q1WXA0U3lpdGtMYVhRVEgz?=
 =?utf-8?B?bDZha3RJOHl3QmRmT3JpMUNOTS9QNGlXbTQ1clRuRGI1c2ZyaC9BSkZIeDJx?=
 =?utf-8?B?SjZodkcvSW54eE82alhLTnVjSHk4Z0lwaUJMK2syRDBiOEFPUVd6M0RabzBp?=
 =?utf-8?B?emc3UGZKeUxxcVdZN0xXblY4aVQ5aWZiZDVXbDdvUnZLbnhEK2NIMzE5UHZj?=
 =?utf-8?B?eERmcVY0cWlSUWlXUTNqR3BjZTVOa1BBNXRNWmZQWHZJTWYyQ2pZemZvTTFs?=
 =?utf-8?B?SFFSWjFJNXkzVEtlaGdTdVEvam9PY3I5ZjYvcmFkOUNZdE96RS9pRlZIUC84?=
 =?utf-8?B?SXFRclgwQjRpT0pQV2FYUkpadm1DWXRnaEErMkdmK2J6TE10RUlwZ3JtenpQ?=
 =?utf-8?B?S08vMTFPYUJHaHhDR0NMSkZDbHZWZWxJU1NzbnJlOTJaL0JNNFROcml4TFc1?=
 =?utf-8?B?aldIeWJpR1FtT2tmUEtLWjRhM25oZ1RBbk55cnF4a2pkV2xPKzQxaDBZZlZN?=
 =?utf-8?B?R0JwOFBFL0lKYVRVSzdpcFZiVXhxSHpoREFSUnRtWkJCNTFveENCKzhXdDdl?=
 =?utf-8?B?Ui9HZ2JlU3A4Qm1OR28yS0J1R0F2WVIrMU9DTzVYNyttNXdBU2thcUI1OVNS?=
 =?utf-8?B?ZVlQYnovcXJIV2IwTWFaeFBXTE9hdnh1R05LK2R6U0Z3bTgza2RMT2RLeGxH?=
 =?utf-8?B?N3k2cXJKZkExYzVyeHFOTXZka2xkb05xYlUya1d3MCsra3ZTMVdFQ2JuSnJk?=
 =?utf-8?B?aFE9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	rE8FBjQxk2qGCUHJKEa6ueLYI3wrbQ157LVgKTUIS9W+1bAuSz8fadriRI4W3XsMKALgUuiaYMsf8sLBy3XHaneP0UGZsrjoWg7I2t/Nu/xMdvFa8vo7qIbsoRIBeS2hN4CJAe4tVuzVI0Xs95D/x66hE1s0SKDY2WDlwhzbVD4DHttNnIZf0AcqEPbbl2HR+uPcSsyxcjZGL3+f9NccX9k0xsx3LBdjKVDzp/quaVfsT43aUBz9iI42qv/w0JnX2mSR2sQrsQaC3kfuWxtL9LFPj1GHCenucVSj7DgeYVu7okzwk6htsmepOUZDDOf8Kgc1l1o5+KprnonTUkGeNlChlLdR0AdBInTdg/0u35YWzyGOUAYZb1M/UJota7r6yycjgDW1Wmr9b/c2IYQ4bExnxqKjEJQDXK9gpTInM1k+0L4uOMjk4ztHVR8nOkzHr+hMuOWr4+HYOb3PKH68qX3yIQctEEFsyqZniMMnBnBDDVZyYrpCcDQwArEKGHReigGVOghQu+PQ6Clb6BriobnYTHhp7Lsn9ZLQvw1tTs31hdXpLf+KaCHfCegrDatZxRcch173bxpChwKE7IwM+FSKHejw2Ex5+qyXgYrx8KMNMMrKi06Ik05/AQKtLgObsIO4EjJCPTWFKIZJ3D6yquCwNBrBuSzIY9E+8jOK7EhLTmrPRKMADK3ywOMP/WyXVrDSup+7q6o7MyLDHIht8y4Tf5Sq2hFyLeaJx1DaBvQQG8gBa6uJ7B+ua0JdKSJgpampBZq5BFcbWOTEuiKPQtcD6kKl1bp5cRio2D8UZMBsrOd9c6F3yuTTQt7EAc9T8h6n3ZHYaofy17fInzYlog==
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 683212db-8892-43ed-1287-08dbd61110aa
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Oct 2023 10:48:18.7274
 (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: kcpFnR/DIgdmN/OWzo1VGsc3RqFN7f3N5J47O//rDvHE8lrDmV9FWoqxbNKQBjMeZ48bMcPMX5t/+oOrYXGYsQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR03MB5663

On Thu, May 11, 2023 at 02:07:40PM +0200, Jan Beulich wrote:
> This controls the driving of IGNNE# (if such emulation is enabled in
> hardware), and hence would need proper handling in the hypervisor to be
> safe to use by Dom0 (and fully emulating for PVH/HVM DomU-s).
> 
> Signed-off-by: Jan Beulich <jbeulich@suse.com>

Acked-by: Roger Pau Monné <roger.pau@citrix.com>

> ---
> RFC: Really this disabling of access would want to be conditional upon
>      the functionality actually being enabled. For AMD this looks to be
>      uniformly HWCR[8], but for Intel this is chipset-specific.

I'm afraid I'm not able to find much information about this, I've
found something in the Intel PCH datasheets, but I don't have a clear
picture of whether this port could be used by other functionality.

>From my reading of the spec, the initial value in 0xF0 (COPROC_ERR)
will inhibit the generation of an IRQ13, and hence if the behavior
that most modern OSes rely on?

Mostly wanted to check which kind of logic and OS would use to figure
out whether 0xF0 exists and control IGNNE#

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 11:03:01 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 11:03:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623702.971790 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvy8d-00077F-L3; Thu, 26 Oct 2023 11:02:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623702.971790; Thu, 26 Oct 2023 11: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 1qvy8d-000778-I6; Thu, 26 Oct 2023 11:02:55 +0000
Received: by outflank-mailman (input) for mailman id 623702;
 Thu, 26 Oct 2023 11:02: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=Iwvv=GI=citrix.com=prvs=656fec104=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qvy8c-000772-W9
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 11:02:54 +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 34ebb47f-73ef-11ee-98d5-6d05b1d4d9a1;
 Thu, 26 Oct 2023 13:02:53 +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;
 26 Oct 2023 07:02:50 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by MW4PR03MB6428.namprd03.prod.outlook.com (2603:10b6:303:123::8)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.16; Thu, 26 Oct
 2023 11:02:47 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::acf0:ce2b:1634:5aee]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::acf0:ce2b:1634:5aee%6]) with mapi id 15.20.6933.011; Thu, 26 Oct 2023
 11: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: 34ebb47f-73ef-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1698318173;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=OUP5hlZiFVYxTI/vO4+CTHz5HAMBHd+YpNvakVxfuLA=;
  b=A7+jvAp+0e6vd4aYdmEXd+xqWDcqgA8EFCk6mEbVTXv3YzdhWhYIv3xU
   y5GHCSxxd3992eZIsNuIs0S3+C4SQ3Kdr2pVgd8R07ZoZUI8jcdDEJv2Y
   0GSSh791h9p+D/WeOG9aoA02EW2AgdJeMYfXqzSz2xge+t7qQVWhIukkD
   k=;
X-CSE-ConnectionGUID: LVkVczW1TjmlyzSqp8kuWw==
X-CSE-MsgGUID: NsxUQoxdToqcMkuKFcc0cQ==
X-IronPort-RemoteIP: 104.47.58.101
X-IronPort-MID: 126707688
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:6m01h6laJvJi35nDHCMCupLo5gynJ0RdPkR7XQ2eYbSJt1+Wr1Gzt
 xJNXW+BOfiPYzT3eI9+Pt/i8UIPsZXQmIcxTwNkqHw1FiMWpZLJC+rCIxarNUt+DCFhoGFPt
 JxCN4aafKjYaleG+39B55C49SEUOZmgH+e6UKicfHkpGWeIcQ954Tp7gek1n4V0ttawBgKJq
 LvartbWfVSowFaYCEpNg064gE0p5K+aVA8w5ARkPqkT5gGGzhH5MbpETU2PByqgKmVrNrbSq
 9brlNmR4m7f9hExPdKp+p6TnpoiG+O60aCm0xK6aoD66vRwjnVaPpUTbZLwXXx/mTSR9+2d/
 f0W3XCGpaXFCYWX8AgVe0Ew/yiTpsSq8pefSZS0mZT7I0Er7xIAahihZa07FdRwxwp5PY1B3
 dgmKw4GfC/au+CzxKOpcfB01sc+E9a+aevzulk4pd3YJdAPZMmbBonvu5pf1jp2gd1SF/HDY
 cZfcSBocBnLfxxIPBEQFY46m+CrwHL4dlW0qnrM/fZxvzeVkVw3ieC0WDbWUoXiqcF9hEGXq
 3iA523kKhobKMae2XyO9XfEaurnxHmlB9pNSu3onhJsqHuI1lEqDw0aaVyiqty6l22QUNkHI
 HVBr0LCqoB3riRHVOLVXRe1vXqFtR40QMdLHqsx7wTl4rrZ5UOVC3YJShZFacc6r4kmSDoyz
 FiLktj1Qzt1v9W9Vna15rqS6zSoNkAowXQqYCYFSU4J5oflqYRq1hbXFI87Seiyk8H/Hiz2z
 3aSti8iir4PjMkNkaKm4VTAhDHqrZ/MJuIo2jjqsquexlsRTOaYi0aAsDA3Md4owF6lc2S8
IronPort-HdrOrdr: A9a23:3103e6FKJOXR8lUypLqFaZHXdLJyesId70hD6qkvc3Fom52j/f
 xGws5x6fatskdqZJkh8erwW5VoMkmsiKKdgLNhdotKOTOLhILGFvAE0WNtqQeQfREWmtQ96U
 4kSdkENDSSNykxsS+Z2njALz9I+rDun86VbKXlvg9QpGpRGsNdBnJCe2Km+zpNNWx77PQCdK
 a0145inX6NaH4XZsO0Cj0uRO7YveDGk5rgfFovGwMnwBPmt0Ll1JfKVzyjmjsOWTJGxrkvtU
 LflRbi26mlu/anjjfBym7o6YhMkteJ8KoNOCXMsLlaFtzfsHfpWG1TYczAgNnzmpDs1L8eqq
 iMn/7nBbU315qeRBDwnfKn4Xid7N9n0Q6c9bbfuwqvnSWxfkNFN+NRwY1eaRfX8EwmoZV117
 9KxXuQs95NAQrHhzmV3am/a/hGrDvBnZMZq59ls1VPFY8FLLNBp40W+01YVJ8GASLh8YgiVO
 1jFtvV6vpaeU6TKymxhBgm/PW8GnAoWhuWSEkLvcKYlzBQgXBi1kMdgMgShG0J+p4xQ4RNo+
 7ELqNrnrdTSdJ+V9M1OM4RBc+sTmDdSxPFN2yfZVzhCaEcInrI74X65b0kjdvaDaDgDKFC6q
 gpfGkoxlLaIXieePFm9Kc7gizwfA==
X-Talos-CUID: 9a23:ZITG5G0fmUCe2nsXUkHrRbxfPv4mTHbP8y7sIUq8GHRSUaXFSkKv5/Yx
X-Talos-MUID: 9a23:3bNxEAsTLX4hLq9KrM2noipyCf5v86iSD1kGtJYbmOePPnR7AmLI
X-IronPort-AV: E=Sophos;i="6.03,253,1694750400"; 
   d="scan'208";a="126707688"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=XvRXA0t6hYtSheKjF52WwyBmB8TkJ/hXvSMJuf3E8RbncwoN0sZSdrlapGS717iKXWJw+/ffmESBMWLXrArErb9ndLQUe9T0Yl6VFZbWcsfhcJEmbA9bovUQnCCxC33d28WpYuYdw1sL2iQOIytVSAM3vyYCsO5aOKUjgVw5h2nv3Zg7oQns/WkFlMrU/fWp+BFnnQCu85E9YNb+sOahMjOF6zIHTUvXZ6WuWgV5tr2lJu4q02sXwjFkyk+bQPclfndcRJ3DT2DT6JLyrrmn6AqLcIqFRRtsDjRJOGq8sDFUns7fq05JIlTowcwzlQDDjQr2e17ZFez0/JhwKHn8Bw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=7vGAbp6mjTrWPJuIU6jAZaW13brH8j/1qJlULg7b2CQ=;
 b=l03ZRCTAKQO3D9xegqDyqcRPSeEzqW02Mh3Y3YapLfUfFYNWnJ+ngZ4c6b7vPYL0+R1GboKxNygQiwkNQcakH/ISOR/uNd2FBz5z5DJdbfwTpDyYGicQYYzR+fO4oiayUCHphgx6yMw0psolVPGx5n/fOE4IFDoFvii/7Uilk+aq7wehG5ABa1FULbuLN/upQLseAnlB9cgVxWdxgJe3WPZVxLZuaMvQ+4LanPgecqYH/LEV0L1c0crJtpd57dKsAnWn7Su0nX4JjAxm5m4/IWmZMAGd7VEUYRnBL4URplkp+lbhaqqS6nokK5MiLJtDwV3Ix0xpSDI/z1IcrbrMuw==
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=7vGAbp6mjTrWPJuIU6jAZaW13brH8j/1qJlULg7b2CQ=;
 b=sHaUzmwnfw1+q+M/qThy1gx3dBQcnJaCdCEc7ovggV3EJiWuT45b66MwW4gEHeqSM40tjtB3k5s10pES2XcCsaqnFzL/XpHCTkYZgWWbPiYDsUbnFxUHGfJ/gwY05bTZ9AhOPztWElY1/OwmJiYAMCxncqZa8+92FZoorI8aVsQ=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Thu, 26 Oct 2023 13:02:43 +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>, Wei Liu <wl@xen.org>
Subject: Re: [PATCH 7/7] x86: don't allow Dom0 access to ELCR ports
Message-ID: <ZTpHUzeBbDLe5Lin@macbook>
References: <95129c04-f37c-9e26-e65d-786a1db2f003@suse.com>
 <118fa3e5-e1ac-ab3e-8b86-1ec751513434@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <118fa3e5-e1ac-ab3e-8b86-1ec751513434@suse.com>
X-ClientProxiedBy: LO4P265CA0074.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:2bd::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_|MW4PR03MB6428:EE_
X-MS-Office365-Filtering-Correlation-Id: 6e962262-326c-4ace-9548-08dbd6131629
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:
	wcItea2iYelamEZBiZ00FRhoVLYSEMP7rxuUAV8fSGJz7+wNqYiqNGgdtgwiLjMuWLWtbrPBsgraMrUguejFNPywGSzJ/jN/tvFLoOTxTb5dpragnAG1JugZ11qTK8zb2HqGyUs+2cNaE94RpsjN64nXmb3mw/LvTWr3W/BqqI1ENxdKU8AoBGJnbJhR/DmRdnmKjce+K7xuA7nKxBA7oWLG5BA60L451zDHu+tmjnzdBLZr9LHFZ/XVsYe5Utisr6i5i6Fmi/ku7LUmF5QvkhEmtlSHWvM/xIGaLStNUYaNp/3FaPx4X1LUycurO9jJswdKKDir71a8ysGDmfKleUxbyjucWYxEXnaOsGRL9OygdmQ2CowHHwWE7E9vnagr/JKRHSEoYqX9G1zJURaKqMU9gjqI5gzmyPLpQFcJib8AUGGu8G3k1rpfEhZEMqJ2bAU1MbUYUAJakscGB1R4TI5nOYfLi1XBTM5aDmxMpGztB6FN3EDfBJc6vvMEbgi24CWT/9kAUkrDiaD1QxzeAyn8RusJEjuIa5HjL1vbDuXNiO1+IWd7vUzteUmnqJJR
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)(39860400002)(366004)(136003)(230922051799003)(451199024)(1800799009)(64100799003)(186009)(6666004)(38100700002)(6506007)(6512007)(82960400001)(9686003)(478600001)(6486002)(83380400001)(33716001)(2906002)(316002)(85182001)(8676002)(66556008)(4326008)(8936002)(86362001)(66476007)(41300700001)(26005)(54906003)(5660300002)(66946007)(6916009);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?N3VTZjF6bSswWDlaWldUbHo3SlB3UFl6QXIrWFdtZE9RajdXVW0rbFJOZDQ3?=
 =?utf-8?B?eGpPUUdUd1dRUEFtTGJKc004M1BXNEVCTncvU0FRMjdjVUhHMllCZlZCZFl6?=
 =?utf-8?B?SkhIQWsxVU4vaExoem96MGlFWmYrcm52dmZIalZQWTRTUDZLODlxS2xkYXN1?=
 =?utf-8?B?aHdXaGR6UGd6T1lTRHlJQTZTd2ViUzhudEk3VTM0Uko0STF5bGxDY3RHUUNt?=
 =?utf-8?B?VFplRENTNVlzeXd5cDU4SnpFUHJvemJrSDlvcG5CNnNpZGlGVFBWeXFHVHdX?=
 =?utf-8?B?MGdsd0FTbk8vZFlpV0xXSWcrS3dJSVZ3TGpERlRzd1EyQXJXRWVTUG9Cbnpu?=
 =?utf-8?B?ZjUyVTJSQW9ZbVZndzE2bUgwV3EzR3B0cWFWcG9mT3ptQXVvd2JRNk9UeUow?=
 =?utf-8?B?N3gvcWdvRTFsSTlQWkpuVDBkdmN1ZlZKL25jOEZmSjQ2WjJtNmJSeFZMaFlx?=
 =?utf-8?B?aFExQlZSTmZXVm1EdkFaYjExT1lxL0Z4ZG1UN1lSMExvN3FlRHFVZXVxUDh5?=
 =?utf-8?B?WFgxbmFtWnBwTzBkUEx6K0ZwK2xnbU1rMy9vdVpoZzJlKzFWeGpwSE1ZcnM5?=
 =?utf-8?B?UXQydFE5TTMyemZiemY4dDVSamlYOGt4dlJVcHZJTVNHeC9pMERYMng1eDFs?=
 =?utf-8?B?bWhyeEl0ZU80dGdhSEtsNnBiMHRvWmxtWlpLNHU0TEIzcHlkWjZIOGswTm9r?=
 =?utf-8?B?bEoyT3dPVzE0TVMyRVNYVnhOTWRsZDYrSlVRdGRuOUw5ZlZtOUJtUGlJT0w3?=
 =?utf-8?B?YnVaUWppZC9Pd0NrcUJUVUJDSG0vWnpJckRiRTllWUZNOEY3MFBiUDViallq?=
 =?utf-8?B?STNHNnBnTnVOa3VPbjdEekR4Y2thTElOZzZyRlRSYlZOdEFNSTNZaUJsUDRw?=
 =?utf-8?B?WU05Z3FjR1FqT1hnZjJaTVFlUHg3N3lmY3MvZ09ONmREYXROQ3hXeFRnYjRr?=
 =?utf-8?B?bkpGc2FabWFkM0YwcmJ4NVBzdjI1SHFEMVBwTEJtUkFNQ2dIKzFnVXdMTzc0?=
 =?utf-8?B?Mk9MMmpiVnMyY0FjOHM1ckRFK3FscXRrVXpxVEdaSEJFM2JvK0Mwem03MzRC?=
 =?utf-8?B?azBzR2lCTWFwcTVoVzVVY091c1pIazBaWEZocHBua05IemhIUUFoejN0N3l1?=
 =?utf-8?B?Z1VtcDJzd2JrM3FEOTZmWWNXb2I4WG5maW1xY2p6VHVMbldmM1R6bzhGNUJa?=
 =?utf-8?B?V1M5Zlc1dVZmTk0vSFNKZ0lPTjhIR2lqeHY5QTFPak5YOGEyVm9sU2RpdnhK?=
 =?utf-8?B?ayt0ZTFaRE50ZWhnNjNJSEJZaHloUXNxTTFHUUlWWThRYS93OUZYVHRLb1k5?=
 =?utf-8?B?cXR6NCszWnZFd29NTmZkNHhkTHFMQ1huOGJsMTZ0QjNVeHd4ZCtzWkc1RFpB?=
 =?utf-8?B?STZJazVDVHVkdHk5MHBwV0t2RUxqQkoySmErQnFpcFBIbWxManhzR2ZuOWlo?=
 =?utf-8?B?cEk1cmF1UktoM1RBV0dUa25OL0dqeTJLd2d0RHlEbEZrSFhuNUpNK0dHdFhi?=
 =?utf-8?B?OUQwaXROdHJsZnZrMDgwQ1FZS1hmVTFwQ2V3NE14N1lweVRqRXdSU3lkcytt?=
 =?utf-8?B?bk41SjdFMFJjYkU0UmFtTnN6R3ZqbzFnbE1saHZ5VnQyZWI0Ylk1TG1IZnhl?=
 =?utf-8?B?NU84ZWlHUEdpTVo0a0YxNHh3YVVwajFBZExvN2lxU0l4M2ZiY1YwNzJiQzJ4?=
 =?utf-8?B?Y2o1Z1lGYzVJeHNZUlRXM3QxY3h6VFpxUDdhRFN5WjV2OHlJQy81cmw5UStC?=
 =?utf-8?B?L1ZkSXBXdkx0aW8rVThEd1pQc3BIYWhuRDQ4cC9Ea3lDMGRhYTJ2R1lQUlRi?=
 =?utf-8?B?ZGJlTkQyREZtN3VnV2hPVm1zaEdjQUZ4aXBzS3pDRUlBSnRmMGpySnhVenlH?=
 =?utf-8?B?S1VTdXVwaEd1VDIvYzg1T05TTVlzYU93amFNSlZWSzd2cXFEYWpHMmpCb2RK?=
 =?utf-8?B?bVVZa3lyUDROa3ZTekhLamN4RWxOYkdYdDZTUmlsVmJFZlg4QTkzSWM5SzhC?=
 =?utf-8?B?V2daVkltNW00VWpIYWEvVFNuR1NGc2x5VFdVckJycGxKZ1lzWElMbkQwb0xL?=
 =?utf-8?B?NGxTMU93NXIyWi9BWEJ5dDZzbmNKUHZjT3pNRW1Kbzc5Sy9UeDlpaC9sZjNV?=
 =?utf-8?B?M0FMMWtMSEdBS0ZnTk9Sbjk2WThQSVEzSzJYL1JreE9pOENWRi9iL3NwM2dV?=
 =?utf-8?B?c3c9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	uTXC1W9RtpaK0wY1lwqP2xz3ow/nMwGwq4HRSR2a3NGCNM8nOJwHBMHRCGjOpLiWOnPuqN4/pbgv9LDxaEVt3Pwl/HyFpTOFrRnzhFzrd7Kx7UNx16+vjOBZIktTO6uxAXubfvrMabzmv/78zjdE7IipCs8AeLr2pa+c5Ut+Wb/v2xAp5IMVWM0AezQz8OjoCrSn2dmpTLyBcoImAyuc53tFGpzntydXy+MmZQ1kgkpLdnekMjZsHOKDH/DC9m7ityPSBFVbR5Z2/XiBHVpEDTRGCZ1C24WFaBLCJNdMv7yl6dJ1jEo3Mi/NSyp46pNBxB62eqhYyB/u1oxKvXkvhlXtuh2eRsRvqghMmIEsBd54sIKIj6fI+d0G4JVzTUGTOMt/gb1qZ8t1BFL/P1FnNqPc+sTTtdatUTBMGhB8ZSWtx4ppxKHMtg+zZT1VMjvmq4gJEN0Gdijg3L3qU6wpx6ovb2uUpFoZN6CkY6AKoaE49q7EI1JVSv42kJ5pcBDcE2EglFrm1qlFsurH8Li/cJAv2tlDYl8x4JkLYn7XohCkHDE1DAE5SU8stFDMUJb4cMXra0rIdMeIcTWXgtcbR3IoBdZ9iiiW+cU8jt5/737aHaRn1QICxi9o4UUiUZ2uq49ATA3v9nK2bOklbhC97pNJWdBgZHITTjHNYt3sTw9Z6+WEn29fJY6Kog+HEZZYyULvqtKUwc1b5EGoyU+/Cg4h2Lzc7nHygFxiThsn9HoSCkGzOc8NrCuLnBax2SNaRaFBNYg2FImHKscvKnxtXbsSRFxyyQ6B7zEsH2kdGpFiikn232OTwqFmbuxHTuMIRouysOP19h0UtxsHOog0oQ==
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 6e962262-326c-4ace-9548-08dbd6131629
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Oct 2023 11:02:47.0184
 (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: Y7LeuIsZlVjvWFj2FA6G9QSjfmXoX2bEpVmvEK0LB3WalItoYO38GMJwhjI3LdBEz8WQJ9I11b2lXP7nvN6uYg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW4PR03MB6428

On Thu, May 11, 2023 at 02:08:09PM +0200, Jan Beulich wrote:
> Much like the other PIC ports, Dom0 has no business touching these. Even
> our own uses are somewhat questionable, as the corresponding IO-APIC
> code in Linux is enclosed in a CONFIG_EISA conditional; I don't think
> there are any x86-64 EISA systems.
> 
> Signed-off-by: Jan Beulich <jbeulich@suse.com>

Acked-by: Roger Pau Monné <roger.pau@citrix.com>

> ---
> RFC: For Linux'es (matching our) construct_default_ioirq_mptable() we
>      may need to permit read access at least for PVH, if such default
>      table construction is assumed to be sensible there in the first
>      place (we assume ACPI and no PIC for PVH Dom0, after all).

Unless I'm confused, thise ports only control the triggering mode of
the PICs, and hence a PVH dom0 should have no business with them, as
not having a PIC in the first place.

> 
> RFC: Linux further has ACPI boot code accessing ELCR
>      (acpi_pic_sci_set_trigger() and acpi_register_gsi_pic()), which we
>      have no equivalent of.

If access to the port is denied, ~0 will be returned, and hence all
IRQs will be assumed to be level.  Some bits reserved and must be 0
will also be returned as 1.

> 
> Taken together, perhaps the hiding needs to be limited to PVH Dom0?

I very much doubt Xen will ever use the PIC unless forced on the
command line, and we should likely remove such option and just
mandate a working IO-APIC in order to run Xen.

My only doubt is whether some Linux code will get confused by poking
at ELCR{1,2} and malfunction as a result of not being able to fetch a
sane mask.

As a last resort, we could make the register RO?

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 11:11:06 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 11:11:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623707.971799 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvyGJ-00016i-D2; Thu, 26 Oct 2023 11:10:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623707.971799; Thu, 26 Oct 2023 11:10: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 1qvyGJ-00016b-AD; Thu, 26 Oct 2023 11:10:51 +0000
Received: by outflank-mailman (input) for mailman id 623707;
 Thu, 26 Oct 2023 11:10: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=ziZY=GI=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qvyGH-00016V-VM
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 11:10:50 +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 509babe9-73f0-11ee-9b0e-b553b5be7939;
 Thu, 26 Oct 2023 13:10:47 +0200 (CEST)
Received: by mail-ed1-x529.google.com with SMTP id
 4fb4d7f45d1cf-53e08b60febso1111587a12.1
 for <xen-devel@lists.xenproject.org>; Thu, 26 Oct 2023 04:10: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
 m21-20020a509315000000b0053db1ca293asm11255541eda.19.2023.10.26.04.10.46
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Thu, 26 Oct 2023 04:10: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: 509babe9-73f0-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1698318647; x=1698923447; 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=Op1P72r2jBgqKancn4QRMMmpfEjGN//e8mAVY6RS1EA=;
        b=iHyp/kT2OMK574A1L7BrYxdpWekHLoEI0klwY2aVQF3lwK8G81FssEHsLbKX5bgzZ6
         EVuXx571N/v0WSpa9Lz0tzNVANcxjjO+cIRsTTNHDwVY76p6zMIx9TQuZJctIRhSkarL
         dSFGO7wKtadWeC51x1RW2n2CDSk2ioEgIACFM=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698318647; x=1698923447;
        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=Op1P72r2jBgqKancn4QRMMmpfEjGN//e8mAVY6RS1EA=;
        b=WVeZIV7cg4nwx2Xqk+DhLafLsVwQBb66aWg/vOpNdjxEvFc/0FUOnN5p/iof2D8EcG
         vCqaRePaAzTvpDxvCc3OrM8GWHa8YerEnaYxQzUddlGHYkBuReLjsHJVfGZfdd1wIzmJ
         L2WwdE93KY/rVeRzkhpzl7QOTvxlJP6d2OI/KEyN66vYf3h4isHjHp511hdoTzz5NCln
         ltB/d49AX728VXdEtmzNwDD3HCKEYOo/s1uiOIsIsSM6ACEcrk27xHWzPREimizkiTbv
         CEoDGdq4XrT3p2uF1eKFAaCWC4KlOIr80lhr9L1OYP52aOA++eRvv2yinQGunipsAlrM
         eYvw==
X-Gm-Message-State: AOJu0YwEtw32bkZJO+cxLyDLVf/gxnoChkzvsZ/piOr1XPfew9+fVLjk
	ifeYIOiI+IMeVHxo+UcwZk6phA==
X-Google-Smtp-Source: AGHT+IFRpK0VZydHtX5RqHQzB+nQDoXUjSdHjJuH36VZKmqp+KSv1FvfEdcuWEUtWylMS7xyUNe8tg==
X-Received: by 2002:a05:6402:520e:b0:53e:7ae7:bc5e with SMTP id s14-20020a056402520e00b0053e7ae7bc5emr13843133edd.3.1698318647197;
        Thu, 26 Oct 2023 04:10:47 -0700 (PDT)
Content-Type: multipart/alternative;
 boundary="------------10T0lS51W3Nc0Du3Z5dOq6L3"
Message-ID: <0d67d2c6-1841-4771-9e6e-1a6463c0b443@citrix.com>
Date: Thu, 26 Oct 2023 12:10:46 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH 2/2] x86/Kconfig: Introduce CONFIG_{AMD,INTEL} and
 conditionalise ucode
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>, Alejandro Vallejo <alejandro.vallejo@cloud.com>,
 Stefano Stabellini <stefano.stabellini@amd.com>,
 Xenia Ragiadakou <xenia.ragiadakou@amd.com>,
 Xen-devel <xen-devel@lists.xenproject.org>
References: <20231025180630.3230010-1-andrew.cooper3@citrix.com>
 <20231025180630.3230010-3-andrew.cooper3@citrix.com>
 <85cddaeb-6b75-2f53-940e-0b06396fd1bb@suse.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: <85cddaeb-6b75-2f53-940e-0b06396fd1bb@suse.com>

This is a multi-part message in MIME format.
--------------10T0lS51W3Nc0Du3Z5dOq6L3
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 26/10/2023 8:55 am, Jan Beulich wrote:
> On 25.10.2023 20:06, Andrew Cooper wrote:
>> We eventually want to be able to build a stripped down Xen for a single
>> platform.  Make a start with CONFIG_{AMD,INTEL} (hidden behind EXPERT, but
>> available to randconfig), and adjust the microcode logic.
> Linux uses different names for the Kconfig symbols. While I'm unconvinced
> of the SUP part, I wonder whether we wouldn't better use CPU in the names.

I don't see what that gets us, other than a longer name.

> One immediate question here is how the IOMMU interaction is intended to
> end up: Do we want to permit either vendor's CPUs with the other vendor's
> IOMMUs to be usable?

>From a randconfig point of view, yes.  These options are only targetting
a specific platform, and we can absolutely make that the end user's
responsibility to describe their platform correctly.


The more interesting question is perhaps VT-x and SVM, given that VIA
have shipped VT-x and Hygon have shipped SVM and AMD-Vi.

I do specifically want to to integrate the HVM setup better with CPU
init - KVM dropped an enormous amount of complexity by doing this - but
I expect we'll end up with VTX and SVM options rather than using
INTEL/AMD for this.

There is a bit of linkage between EPT/VT-d and NPT/AMD-Vi (in principle
at least) in the form of HAP/IOMMU pagetable sharing, but as it's "just"
an exchange of superpage sizes, iommu-pt pointer and height, I think we
can make an abstraction which doesn't force a vendor match.
>> --- /dev/null
>> +++ b/xen/arch/x86/Kconfig.cpu
>> @@ -0,0 +1,22 @@
>> +menu "Supported processor vendors"
>> +	visible if EXPERT
>> +
>> +config AMD
>> +	bool "AMD"
>> +        default y
>> +        help
>> +          Detection, tunings and quirks for AMD processors.
>> +
>> +	  May be turned off in builds targetting other vendors.  Otherwise,
>> +	  must be enabled for Xen to work suitably on AMD processors.
>> +
>> +config INTEL
>> +	bool "Intel"
>> +        default y
>> +        help
>> +          Detection, tunings and quirks for Intel processors.
>> +
>> +	  May be turned off in builds targetting other vendors.  Otherwise,
>> +	  must be enabled for Xen to work suitably on Intel processors.
>> +
>> +endmenu
> Nit: Throughout this hunk there's an inconsistency with indentation
> (hard tabs not used in some places where they ought to be).

Oh yes, that's unintended.

> Also, depending on the verdict on the aspect mentioned at the top,
> "processors" may want replacing by "systems" or "platforms" or some
> such if we mean these to cover more than just the CPUs.

I really don't want to use CPU because that term is overloaded enough
already.  Maybe it's ok in the overall menu text, but "plaform/system
vendor" would be the OEMs rather than the processor vendors.

We do have various platform quirks in Xen, but they're almost all DMI or
PCI based, rather than vendor based.

I could be persuaded to use CPU in the menu, and s/processors/platforms/
elsewhere.

~Andrew
--------------10T0lS51W3Nc0Du3Z5dOq6L3
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: 8bit

<!DOCTYPE html>
<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body>
    <div class="moz-cite-prefix">On 26/10/2023 8:55 am, Jan Beulich
      wrote:<br>
    </div>
    <blockquote type="cite"
      cite="mid:85cddaeb-6b75-2f53-940e-0b06396fd1bb@suse.com">
      <pre class="moz-quote-pre" wrap="">On 25.10.2023 20:06, Andrew Cooper wrote:
</pre>
      <blockquote type="cite">
        <pre class="moz-quote-pre" wrap="">We eventually want to be able to build a stripped down Xen for a single
platform.  Make a start with CONFIG_{AMD,INTEL} (hidden behind EXPERT, but
available to randconfig), and adjust the microcode logic.
</pre>
      </blockquote>
      <pre class="moz-quote-pre" wrap="">
Linux uses different names for the Kconfig symbols. While I'm unconvinced
of the SUP part, I wonder whether we wouldn't better use CPU in the names.</pre>
    </blockquote>
    <br>
    I don't see what that gets us, other than a longer name.<br>
    <br>
    <blockquote type="cite"
      cite="mid:85cddaeb-6b75-2f53-940e-0b06396fd1bb@suse.com">
      <pre class="moz-quote-pre" wrap="">One immediate question here is how the IOMMU interaction is intended to
end up: Do we want to permit either vendor's CPUs with the other vendor's
IOMMUs to be usable?</pre>
    </blockquote>
    <br>
    From a randconfig point of view, yes.  These options are only
    targetting a specific platform, and we can absolutely make that the
    end user's responsibility to describe their platform correctly.<br>
    <br>
    <br>
    The more interesting question is perhaps VT-x and SVM, given that
    VIA have shipped VT-x and Hygon have shipped SVM and AMD-Vi.<br>
    <br>
    I do specifically want to to integrate the HVM setup better with CPU
    init - KVM dropped an enormous amount of complexity by doing this -
    but I expect we'll end up with VTX and SVM options rather than using
    INTEL/AMD for this.<br>
    <br>
    There is a bit of linkage between EPT/VT-d and NPT/AMD-Vi (in
    principle at least) in the form of HAP/IOMMU pagetable sharing, but
    as it's "just" an exchange of superpage sizes, iommu-pt pointer and
    height, I think we can make an abstraction which doesn't force a
    vendor match.<br>
    <span style="white-space: pre-wrap">

</span>
    <blockquote type="cite"
      cite="mid:85cddaeb-6b75-2f53-940e-0b06396fd1bb@suse.com">
      <blockquote type="cite">
        <pre class="moz-quote-pre" wrap="">--- /dev/null
+++ b/xen/arch/x86/Kconfig.cpu
@@ -0,0 +1,22 @@
+menu "Supported processor vendors"
+	visible if EXPERT
+
+config AMD
+	bool "AMD"
+        default y
+        help
+          Detection, tunings and quirks for AMD processors.
+
+	  May be turned off in builds targetting other vendors.  Otherwise,
+	  must be enabled for Xen to work suitably on AMD processors.
+
+config INTEL
+	bool "Intel"
+        default y
+        help
+          Detection, tunings and quirks for Intel processors.
+
+	  May be turned off in builds targetting other vendors.  Otherwise,
+	  must be enabled for Xen to work suitably on Intel processors.
+
+endmenu
</pre>
      </blockquote>
      <pre class="moz-quote-pre" wrap="">
Nit: Throughout this hunk there's an inconsistency with indentation
(hard tabs not used in some places where they ought to be).</pre>
    </blockquote>
    <br>
    Oh yes, that's unintended.<br>
    <br>
    <blockquote type="cite"
      cite="mid:85cddaeb-6b75-2f53-940e-0b06396fd1bb@suse.com">
      <pre class="moz-quote-pre" wrap="">Also, depending on the verdict on the aspect mentioned at the top,
"processors" may want replacing by "systems" or "platforms" or some
such if we mean these to cover more than just the CPUs.</pre>
    </blockquote>
    <br>
    I really don't want to use CPU because that term is overloaded
    enough already.  Maybe it's ok in the overall menu text, but
    "plaform/system vendor" would be the OEMs rather than the processor
    vendors.<br>
    <br>
    We do have various platform quirks in Xen, but they're almost all
    DMI or PCI based, rather than vendor based.<br>
    <br>
    I could be persuaded to use CPU in the menu, and
    s/processors/platforms/ elsewhere.<br>
    <br>
    ~Andrew<br>
  </body>
</html>

--------------10T0lS51W3Nc0Du3Z5dOq6L3--


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 11:12:43 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 11:12:43 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623710.971809 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvyI5-0001fP-O4; Thu, 26 Oct 2023 11:12:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623710.971809; Thu, 26 Oct 2023 11:12: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 1qvyI5-0001fI-Ky; Thu, 26 Oct 2023 11:12:41 +0000
Received: by outflank-mailman (input) for mailman id 623710;
 Thu, 26 Oct 2023 11:12: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=v+j7=GI=amd.com=ayan.kumar.halder@srs-se1.protection.inumbo.net>)
 id 1qvyI4-0001fC-Ac
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 11:12:40 +0000
Received: from NAM12-MW2-obe.outbound.protection.outlook.com
 (mail-mw2nam12on20603.outbound.protection.outlook.com
 [2a01:111:f400:fe5a::603])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 91edd35c-73f0-11ee-9b0e-b553b5be7939;
 Thu, 26 Oct 2023 13:12:37 +0200 (CEST)
Received: from MN2PR10CA0032.namprd10.prod.outlook.com (2603:10b6:208:120::45)
 by DS7PR12MB5766.namprd12.prod.outlook.com (2603:10b6:8:75::12) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.25; Thu, 26 Oct
 2023 11:12:33 +0000
Received: from MN1PEPF0000F0E5.namprd04.prod.outlook.com
 (2603:10b6:208:120:cafe::5d) by MN2PR10CA0032.outlook.office365.com
 (2603:10b6:208:120::45) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.19 via Frontend
 Transport; Thu, 26 Oct 2023 11:12:33 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 MN1PEPF0000F0E5.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.6933.15 via Frontend Transport; Thu, 26 Oct 2023 11:12: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.32; Thu, 26 Oct
 2023 06:12:31 -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.32 via
 Frontend Transport; Thu, 26 Oct 2023 06:12: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: 91edd35c-73f0-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=nvFAc0wxZ6J6qzcPFP5+sU7gv0xivSCIBy1B583Yg16dI42AlwWDwvNagLlSlpxiBQNZwbxbQvgmUCPnwrqc+FYAUuqxyXNjVZddprvKsoZaDM6mtGC5YJVOlkC2724coZGZYnGp8gyz2kKF7x0BZ2rwOP5AV3PU7D0hHTclQuTSx1q9BKXnCkjhgl7k3HkpPdZxR/p6Fb+9An+lx1BfVxcMkWo/iqV5fT2byQwg+dP216jPXDV72Pr3S/GVHifNj6ELB9/mfThYnas+ALIXaEKv5zIAGZ7qmsDbqqJqMQtFGdR88s4KiKSR9H6Ic1Z1C6kpqOcj2JCuWU8x4MuJyw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=Bu0XMjhxMP6timxPh7gDT0on9fDPrVaAmCnLeZEdkGk=;
 b=HRtLOpWKKUMQcRj5TwQ1M5AlTtTQrPjGnYwPHNsoo56/jZINnbuEqbX1/+QggV7p3ICgKFax+KwbEI/fq/Dn2AmQG9MqBMQDtdVy2laHPTypil4z9EtH7sb164k3CdBOx9L2yC9kZm9GLdQgsyB/eRN8bvG3aSWru7udXMqgb2Jf9kDayUv8/dIuWIjBrkfdYqI13q52MRx/ffcca2w1RwFkc+qhxzRohw+7ZAUp3hqBeAQ/n0Wb7vDPBIKgCeBkjDHQtaYPUgDqpDmuBBaxQPoTEgSqb4x/LAiOvF/c4IlhEDD7Zl710deCk9B304kFJtPM+W5+ukuP4iHTtMb+qQ==
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 (0)
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=Bu0XMjhxMP6timxPh7gDT0on9fDPrVaAmCnLeZEdkGk=;
 b=OyQTXACynKHO/Lse9cLu26gGXKN+3au3GlQbZAJKe8wjn0Oe8PuP2GrLIIjtwdE8snBN6Fha36Ousnnpa4WFq89IhSR51elQQp32L9SwvJAk1S2tiXI7IBAJxdHUis7RWSr3eY5YVlvpurCfVHjYhAsODpiPmd7cDOkfOjujDNA=
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>, <julien@xen.org>, <bertrand.marquis@arm.com>,
	<michal.orzel@amd.com>, Ayan Kumar Halder <ayan.kumar.halder@amd.com>
Subject: [XEN v2] xen/arm: arm32: Use adr_l instead of load_paddr for getting address of symbols
Date: Thu, 26 Oct 2023 12:12:28 +0100
Message-ID: <20231026111228.2724962-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: MN1PEPF0000F0E5:EE_|DS7PR12MB5766:EE_
X-MS-Office365-Filtering-Correlation-Id: 823291fa-515e-49cd-6a86-08dbd6147374
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	M3XcwFTrulEdy7YTVEZiT6LkaI07lQLMHVdwnLVzt5E/Skqu5NYcv0bHFhvUrw8z1/N7yG5o4/GigKjtmskz7c1Xte/UT4E6GW6jfayOmIPmbYmVe2+urmojjfPUgqD46lsMIt2x1nLHHyVwqRyw25/CyTSWGaLPy3HLvFEhSvm6tkIPU1VcLS7k1y8fMTmei+XjHqm13M1zYBGHLqS3xuMswTQC5wBzmezGLWkAtAEbQQ+OyIifqDrk8jVjcJCIyzEvr5Dj6SLbyfYog06E/hl/26EjijchLRUSQllznZJk0P6S2+fFuc76iDqNJZmDQPHqTbg1CJFcNNBCLBDovtdRUCJ4HlqXHrxXDW+UWdB5rm3DS6Ee6L+pO27ODE0ofXWp8BmbI7sanbM48GdcOTk6EsRwp7v1ZAm2SCQn7yXwu15Ywj7m554J2J1hrkFtROywT9lMFGpZBjO01CHNcuZa965SGWYNFOMg8G5/P+/Fbr5LsJF95MQJYKqq9NAg3isgWMn2c4Rqdm9uJrHXbaMimTYHFVXON9kq8TmEkNyPNOW0LXVmMX9+MCDtBk37MdAVE7j9oePKahAz3djo0craWyaC5ZAwaTcDUK+82/nXWpT7jJIFRsLfKIZr5IDT76LgphpIefq/IiK83X0/Ii3+FMkX8K4V7E1zuUUOyyxDxywBJKS/rgxS3o2gZJQElZtJZvJljgZgve+KiOsIENc6KadifQo+Lte8THmzHjyPfeJXkDuk1sBCvO61B78tVIp4nhANZqHCD5WW37m75g==
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)(346002)(136003)(39860400002)(230922051799003)(1800799009)(64100799003)(186009)(82310400011)(451199024)(46966006)(40470700004)(36840700001)(40480700001)(40460700003)(356005)(966005)(70206006)(81166007)(478600001)(316002)(82740400003)(70586007)(6916009)(36756003)(8676002)(103116003)(54906003)(83380400001)(2906002)(47076005)(8936002)(336012)(36860700001)(4326008)(426003)(5660300002)(41300700001)(2616005)(26005)(1076003)(86362001)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Oct 2023 11:12:32.7287
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 823291fa-515e-49cd-6a86-08dbd6147374
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:
	MN1PEPF0000F0E5.namprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR12MB5766

Before the MMU is turned on, PC uses physical address. Thus, one can use adr_l
instead of load_paddr to obtain the physical address of a symbol.

The only exception (for this replacement) is create_table_entry() which is
called before and after MMU is turned on.

Also, in lookup_processor_type() "r10" is no longer used. The reason being
__lookup_processor_type uses adr_l (thus r10 is no longer used to obtain the
physical address offset).

Signed-off-by: Ayan Kumar Halder <ayan.kumar.halder@amd.com>
---
Refer https://lists.archive.carbon60.com/xen/devel/682900 for details.

Changes from :-

v1 :- 1. No need to modify create_table_entry().
2. Remove "mov   r10, #0 " in lookup_processor_type().

 xen/arch/arm/arm32/head.S | 13 ++++++-------
 1 file changed, 6 insertions(+), 7 deletions(-)

diff --git a/xen/arch/arm/arm32/head.S b/xen/arch/arm/arm32/head.S
index 33b038e7e0..e0ff46e92f 100644
--- a/xen/arch/arm/arm32/head.S
+++ b/xen/arch/arm/arm32/head.S
@@ -171,7 +171,7 @@ past_zImage:
 
         /* Using the DTB in the .dtb section? */
 .ifnes CONFIG_DTB_FILE,""
-        load_paddr r8, _sdtb
+        adr_l r8, _sdtb
 .endif
 
         /* Initialize the UART if earlyprintk has been enabled. */
@@ -213,7 +213,7 @@ GLOBAL(init_secondary)
         mrc   CP32(r1, MPIDR)
         bic   r7, r1, #(~MPIDR_HWID_MASK) /* Mask out flags to get CPU ID */
 
-        load_paddr r0, smp_up_cpu
+        adr_l r0, smp_up_cpu
         dsb
 2:      ldr   r1, [r0]
         cmp   r1, r7
@@ -479,7 +479,7 @@ create_page_tables:
          * create_table_entry_paddr() will clobber the register storing
          * the physical address of the table to point to.
          */
-        load_paddr r5, boot_third
+        adr_l r5, boot_third
         mov_w r4, XEN_VIRT_START
 .rept XEN_NR_ENTRIES(2)
         mov   r0, r5                        /* r0 := paddr(l3 table) */
@@ -578,7 +578,7 @@ enable_mmu:
         flush_xen_tlb_local r0
 
         /* Write Xen's PT's paddr into the HTTBR */
-        load_paddr r0, boot_pgtable
+        adr_l r0, boot_pgtable
         mov   r1, #0                 /* r0:r1 is paddr (boot_pagetable) */
         mcrr  CP64(r0, r1, HTTBR)
         isb
@@ -877,7 +877,6 @@ putn:   mov   pc, lr
 /* This provides a C-API version of __lookup_processor_type */
 ENTRY(lookup_processor_type)
         stmfd sp!, {r4, r10, lr}
-        mov   r10, #0                   /* r10 := offset between virt&phys */
         bl    __lookup_processor_type
         mov r0, r1
         ldmfd sp!, {r4, r10, pc}
@@ -897,8 +896,8 @@ ENTRY(lookup_processor_type)
  */
 __lookup_processor_type:
         mrc   CP32(r0, MIDR)                /* r0 := our cpu id */
-        load_paddr r1, __proc_info_start
-        load_paddr r2, __proc_info_end
+        adr_l r1, __proc_info_start
+        adr_l r2, __proc_info_end
 1:      ldr   r3, [r1, #PROCINFO_cpu_mask]
         and   r4, r0, r3                    /* r4 := our cpu id with mask */
         ldr   r3, [r1, #PROCINFO_cpu_val]   /* r3 := cpu val in current proc info */
-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Thu Oct 26 11:16:06 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 11:16:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623716.971820 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvyLI-0003Hn-94; Thu, 26 Oct 2023 11:16:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623716.971820; Thu, 26 Oct 2023 11: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 1qvyLI-0003Hg-65; Thu, 26 Oct 2023 11:16:00 +0000
Received: by outflank-mailman (input) for mailman id 623716;
 Thu, 26 Oct 2023 11: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=v+j7=GI=amd.com=ayan.kumar.halder@srs-se1.protection.inumbo.net>)
 id 1qvyLG-0003HZ-Br
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 11:15:58 +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 087be17e-73f1-11ee-98d5-6d05b1d4d9a1;
 Thu, 26 Oct 2023 13:15:57 +0200 (CEST)
Received: from SN6PR12MB2621.namprd12.prod.outlook.com (2603:10b6:805:73::15)
 by CH0PR12MB5169.namprd12.prod.outlook.com (2603:10b6:610:b8::8) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.33; Thu, 26 Oct
 2023 11:15:51 +0000
Received: from SN6PR12MB2621.namprd12.prod.outlook.com
 ([fe80::517a:f65:688e:c4b1]) by SN6PR12MB2621.namprd12.prod.outlook.com
 ([fe80::517a:f65:688e:c4b1%6]) with mapi id 15.20.6933.019; Thu, 26 Oct 2023
 11:15: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: 087be17e-73f1-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=NTwfhCWmOuLOIsb1CBd4QgY5VanOHF7dz5uiKxzviG37LWdih+H59Ha+PGbtH6NeK+Kc/oxMcaNX7sZnwIO9rtUrK306cQTpEQkIOBbnHqhpy+AubNcbjM3jH7BHYsQXt344MbBtq9BzMBGIBX9gqcR/zdf7EnHGthHsOf2RZK5Ox6DWNUdwmvkZMZQDnhZJ82r9OykwUR0UX8X1qdJkpZOiAWsjrtlWEysERNURNl4mCOz4ik2KfMlFzbUJyND6oPMion5Mdx9zyRz9BQ4zturGGixSCycKZyrShsdRdMvi/4Se4nt4+aDzQ7yUZpWKw4KK1QJQ+/zQtXw/6cQHjA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=lLhyPbrFP63QRbF61CzwlelsI9JYUcLXveVDaabc2Hk=;
 b=nATE5NSxeB12vyNxfTJD/2OlDtoxHVbhgl2axKE3gm8KlMc9h0CO2bMayH0rZHjujvYx+k2+kX2tFcjaDQIRa2sAtZ49eQoHbASzuziTR0pqeSI8SXZdnOiU375E+G7c4GGoz+UOzRORvpty4hgp31cEhTutkR5kBCmBczTpAiUQ3ZsVW9NJtlxnpgC9Ggw83cT+K2cLx+37IpsEQlmH65V2C/2d6LIBrTADs/aOhPJPVSeSu+S1qWpDkBgxwN18Gxo6PkpP2SyT1QakTYUkz+cbJiMWYXthVhA9PiXXyNZ24kiSIXUnOHev+8CkSUhf0D9/5TJUMnuPIiPBg0IkCw==
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=lLhyPbrFP63QRbF61CzwlelsI9JYUcLXveVDaabc2Hk=;
 b=nseEnYUyOtadS1ljkKZlHWKAzZDg4+LL50/DSttzDDeWG1VZtRwlN6j6aDBMs8/ktbNc1oAW7rNI2iRPAvxayh4vx3NAm1pZXm9hDl9RY28UZHOr57YCjgpmAdo+AqUs+LPKD3zz+TZ8gZpTxZg4zj4We6Uq2dhykURPCcvNwfU=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=amd.com;
Message-ID: <ab63a343-84ca-4568-8631-c5c6e8fa8159@amd.com>
Date: Thu, 26 Oct 2023 12:15:46 +0100
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN] xen/arm: arm32: Use adr_l instead of load_paddr for getting
 address of symbols
Content-Language: en-GB
To: Julien Grall <julien@xen.org>,
 Ayan Kumar Halder <ayan.kumar.halder@amd.com>, xen-devel@lists.xenproject.org
Cc: sstabellini@kernel.org, bertrand.marquis@arm.com, michal.orzel@amd.com
References: <20231025170304.2331922-1-ayan.kumar.halder@amd.com>
 <e61bb4e6-76ee-47d5-820f-926a85a8ec0f@xen.org>
From: Ayan Kumar Halder <ayankuma@amd.com>
In-Reply-To: <e61bb4e6-76ee-47d5-820f-926a85a8ec0f@xen.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: LO4P123CA0078.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:190::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_|CH0PR12MB5169:EE_
X-MS-Office365-Filtering-Correlation-Id: 2976843c-8f8e-46a6-71f4-08dbd614e9b8
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	yUGOIO06rz1BrzB/uD4RYV4MNLAaq/6i2jEMdAm8Uh6eqs3Xd4vxmNyClPbH7ckS+r4gOyUARR8ffvt2m01x/7UH2Qzkv7Hb2adt2XLUC9LpE0+XFchdWsoYKonEmG4FvLp16Xhef1krd12rRJS0Ko3r+/5+0+nf/1qvYoItgMPdXcmhDIqcdWsO8Qb/99ncbgTuStwlt5wgxNB0IlnqZ2sKx9NQEHFJZoR0enwFIoPSrEuUG0lxJ58H2ZMN6NxzxBsEYBZayCmym+Zd2w+lnxAwD3c9HJp+xF/l0rWJfEZCYwggVRXA2CNZLc90SJwoqsDSpJyjRhvGLkSwf7LrRmYHTQsY3QwekLSiTa9x0O4UaK+kf2T9H7EgjzoFS2VOBu9nJUgp3ClAJCr76LkYLHQxLCgdl77KwvmKnpfRzz1WD+eEM6kvcOQWFCPFMk8z0tKqOewHJ1hwC2bGvhT2WYljQuu/chpby1Grh/6ei2hYVbZ7EHoJWB6fjJQBvx903M6ZRlrgAeH9EMgvY1WcU2y5kJcVu2k0JuHxqFu2mHEkF4a7GXSbTfZy82P+C7P0BP7Gsj11UAQi2qSTw1MjsIrBZdcQGE1bjHt9+6hya3Idfz0GneJj6vg5uZB6jnj9808vMShzTvWIYWr0nzYVyg==
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)(346002)(39860400002)(366004)(376002)(136003)(230922051799003)(64100799003)(451199024)(1800799009)(186009)(6666004)(38100700002)(6506007)(6512007)(53546011)(966005)(478600001)(6486002)(26005)(2616005)(83380400001)(66476007)(36756003)(8676002)(110136005)(31696002)(8936002)(4326008)(66946007)(41300700001)(5660300002)(66556008)(31686004)(316002)(2906002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?L3FPV2liUWdETHFDcHY4QXN2MjZiN1k3aVZUWXptSHliVEgxaHVRc1pGU05H?=
 =?utf-8?B?SlVSaWNHVXZoRGJJVHJUdjFCWEJnQ0hQMnExMURQcjhTNWlBZGZNcW92M3J6?=
 =?utf-8?B?MThQR096U1F6clpTMlZVbjcyR3ZTZjlDMXZvbjlqZ0tZUlFQVmhMdFNsTXlQ?=
 =?utf-8?B?YXpZa1g3UWVMNUpvY1d0eTNrTVNpekVwd0ZWQ203TURVcHdyWmoyblNKNEYr?=
 =?utf-8?B?MmFEK3F5WkxzRVNZc0lMTEpWK2c1WUpwL3IvNWNEd0pyWTVvQ2tpK0crVDl1?=
 =?utf-8?B?eUlkRGZFYmRWajhjeDA1ZE96U3hlcmhSNHgzSE53TnZOK2UxQlBPM0lGaTU0?=
 =?utf-8?B?SWw4bVRnNkVRd1FkaXI5K1VsMkpOUGFsM3U3aFVVTUU0RHppWHhLSENZTzFJ?=
 =?utf-8?B?emdUR3NqQzBUMkxZMXcxM1RLZ2Q3RTdlY1MxMHNBL0o0eGxFb0x1TFNKd0Zy?=
 =?utf-8?B?OXhqU2tDWjhXMG5QblQ0OU1zQ2tnaEd1T01YQThLKzBSbi8zaStrN0VVZ1k4?=
 =?utf-8?B?ck1ZTlVjTkpyTzNnbWZ5Z1M5N0ZzLzNsTERCM3VnRTA3cDhBb1VCN2U3YUp0?=
 =?utf-8?B?K2Y0SW8wdkZhV0g5aVQ5YnRYTnRSTGhZcGkrdURuTzdjZ1lYZFRVcG1wMXgr?=
 =?utf-8?B?SXZHTlVPa3RkbVZsbDY3UzZSOEU4cDJYK1FJUkFlOURMczBZb3VhZjBoUDFu?=
 =?utf-8?B?L3lyMFNTRHIvdmJTSjBoblJ4TnVSa3FhQUxOT01oa04xZGtKOWM1V0hmVkM1?=
 =?utf-8?B?L21BMXkzbmR6SVdUSzVaVmlXTlhYTURpcUU2VVhFcldoT1lTVUtyT2xKelor?=
 =?utf-8?B?Njc4QVNOYVBUTk8zWi8rWUVuVEpKandIUFoxMm56OW8rTS9qZWRwMng1eWox?=
 =?utf-8?B?SkdLSFRqNXhSNUF4akZZZ2xrTUNVaks3ejJsT3hkLzdrV0ZmZWU5QUxMMkI3?=
 =?utf-8?B?aTBYalc3cXZvZ0dLMSt2V0hqdVc0cm1ZbExxejdsdlp1SG4xQkNhM3k2UFIw?=
 =?utf-8?B?ODRUNmt4Y2xZckM1UzQxQkhMdjBubENhQ0oyNGZoZ21oaitrSStXbExIakhD?=
 =?utf-8?B?dDExMmpsUDdBemlrOFhFZk12N3lJVmNmdDRwNTlFejlyTjFGbDZPd2krOVkv?=
 =?utf-8?B?UE0vRGt3TlBPYU9LbmI1akFZTG01WnZlMkE5WGs3RDlaUWpvV0ZNTHVHSGVS?=
 =?utf-8?B?NFB5cXdrZVN3SjlNKzFmNXkwMGxFM1pyNzBiNTI3NTZMdVM5MEFpQTBVVUpx?=
 =?utf-8?B?RTdib3JvTVdVbHVsYVVTaEdRc1dKVk1WMlBXODFQV0JjQUxJSGMrcm9DVUMz?=
 =?utf-8?B?cU1iT1BNUlI4YytRWnpNZWdzNEdoeUZaYUUxUzlRZnJncDFhQXg2MXhXWWlY?=
 =?utf-8?B?ZUVVdzlkVjVmbmczVjA3VDVqVkxaQUpsWDFQUDBiM0xCb3NydGoxaDRNQWhH?=
 =?utf-8?B?eHArRW1ZeHg2UzJ0dnEzK3EyUHcva0FjN0c4b0VyYUJqdUdSL1ZwdjRLQjBV?=
 =?utf-8?B?T25XaVlJbjhqZW5KYUZreWdFWUZKL2Iyc0xRNVgybnF3WHJzTExLOUt5Vldq?=
 =?utf-8?B?SW5nZCtGcitmcmlyNjBLNmh3L0UvKzlhL3NhQk0rNVBUVHBnWldZc3hDRGs1?=
 =?utf-8?B?VXM3UjhIcld6R0I3ZkI0UEltQ29LVFB1THhTSXA4T1FxaFFyS3hLMGdZMEhH?=
 =?utf-8?B?VXBDQUo4QlkwVVdyNUZWU1RtRTR2UW83NUZkTFlyWnY3MGZ1TWpDWDcxblBm?=
 =?utf-8?B?Wlp5YlBya3RCQW9IOTM0Q0RsTC9qb0U4eE9ONHhhbE1nRk1qTDdoRFZuaVFh?=
 =?utf-8?B?dFJCYmZ6REJtRXhjVG13TGJjTVN2clhBWFBKRy9jS2tLNVBCaTl4b1g2TjVk?=
 =?utf-8?B?aDl2bGJzQmFJSTVxeXBoT3c4R0UyNERWNW9wb3huam1FUmdVbGJSNERWWFlK?=
 =?utf-8?B?R2JlVW1wcUxjQkc5V3Z2MTdIeVVUcE1XUnNYUzRHZGlEdjZJMmlNejVHSjBq?=
 =?utf-8?B?L2ltZTAvbnJhVUp2M01UOUJxRkdGUTJCWUtIRUdXSDJ4bURiYmtGaEx1NkJU?=
 =?utf-8?B?cUF6cHRvamg4Zk91aC94NUtVVE51T0FvLytJZm96akE1aGJyQmlsaHQzODVq?=
 =?utf-8?Q?GRNKMWmROu53aioXGVtFeuC5q?=
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 2976843c-8f8e-46a6-71f4-08dbd614e9b8
X-MS-Exchange-CrossTenant-AuthSource: SN6PR12MB2621.namprd12.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Oct 2023 11:15:51.4188
 (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: C/JWuyG3WPNHlRfRROv0lj4Hs/rnp2uSWYAleh03TU9NbmvggSmbrgT3idWC76vPMNxgrqPhBu20QMjTAaqTDQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH0PR12MB5169


On 26/10/2023 10:40, Julien Grall wrote:
> Hi,
Hi Julien/Michal,
>
> On 25/10/2023 18:03, Ayan Kumar Halder wrote:
>> Before the MMU is turned on, the address returned for any symbol will 
>> always be
>> physical address. Thus, one can use adr_l instead of load_paddr.
>>
>> create_table_entry() now takes an extra argument to denote if it is 
>> called after
>> the mmu is turned on or not.  If it is called with mmu on, then it uses
>> load_paddr to get the physical address of the page table symbol.
>>
>> Signed-off-by: Ayan Kumar Halder <ayan.kumar.halder@amd.com>
>> ---
>> Refer https://lists.archive.carbon60.com/xen/devel/682900 for details.
>>
>>   xen/arch/arm/arm32/head.S | 35 ++++++++++++++++++++---------------
>>   1 file changed, 20 insertions(+), 15 deletions(-)
>>
>> diff --git a/xen/arch/arm/arm32/head.S b/xen/arch/arm/arm32/head.S
>> index 33b038e7e0..bf442b0434 100644
>> --- a/xen/arch/arm/arm32/head.S
>> +++ b/xen/arch/arm/arm32/head.S
>> @@ -171,7 +171,7 @@ past_zImage:
>>             /* Using the DTB in the .dtb section? */
>>   .ifnes CONFIG_DTB_FILE,""
>> -        load_paddr r8, _sdtb
>> +        adr_l r8, _sdtb
>>   .endif
>>             /* Initialize the UART if earlyprintk has been enabled. */
>> @@ -213,7 +213,7 @@ GLOBAL(init_secondary)
>>           mrc   CP32(r1, MPIDR)
>>           bic   r7, r1, #(~MPIDR_HWID_MASK) /* Mask out flags to get 
>> CPU ID */
>>   -        load_paddr r0, smp_up_cpu
>> +        adr_l r0, smp_up_cpu
>>           dsb
>>   2:      ldr   r1, [r0]
>>           cmp   r1, r7
>> @@ -406,6 +406,7 @@ ENDPROC(cpu_init)
>>    * tbl:     table symbol to point to
>>    * virt:    virtual address
>>    * lvl:     page-table level
>> + * mmu_on:  is mmu on
>>    *
>>    * Preserves \virt
>>    * Clobbers r1 - r4
>> @@ -414,10 +415,14 @@ ENDPROC(cpu_init)
>>    *
>>    * Note that \virt should be in a register other than r1 - r4
>>    */
>> -.macro create_table_entry, ptbl, tbl, virt, lvl
>> +.macro create_table_entry, ptbl, tbl, virt, lvl, mmu_on
>> +    .if \mmu_on == 1
>>           load_paddr r4, \tbl
>> -        create_table_entry_from_paddr \ptbl, r4, \virt, \lvl
>> - .endm
>> +    .else
>> +        adr_l r4, \tbl
>> +    .endif
>> +    create_table_entry_from_paddr \ptbl, r4, \virt, \lvl
>> +.endm
>>     /*
>>    * Macro to create a mapping entry in \tbl to \paddr. Only mapping 
>> in 3rd
>> @@ -479,7 +484,7 @@ create_page_tables:
>>            * create_table_entry_paddr() will clobber the register 
>> storing
>>            * the physical address of the table to point to.
>>            */
>> -        load_paddr r5, boot_third
>> +        adr_l r5, boot_third
>>           mov_w r4, XEN_VIRT_START
>>   .rept XEN_NR_ENTRIES(2)
>>           mov   r0, r5                        /* r0 := paddr(l3 
>> table) */
>> @@ -522,8 +527,8 @@ create_page_tables:
>>            * 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_table_entry boot_pgtable, boot_second_id, r9, 1, 0
>> +        create_table_entry boot_second_id, boot_third_id, r9, 2, 0
>>           create_mapping_entry boot_third_id, r9, r9
>>             /*
>> @@ -537,7 +542,7 @@ create_page_tables:
>>           bne   use_temporary_mapping
>>             mov_w r0, XEN_VIRT_START
>> -        create_table_entry boot_pgtable, boot_second, r0, 1
>> +        create_table_entry boot_pgtable, boot_second, r0, 1, 0
>>           mov   r12, #0                /* r12 := temporary mapping 
>> not created */
>>           mov   pc, lr
>>   @@ -551,7 +556,7 @@ use_temporary_mapping:
>>             /* 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
>> +        create_table_entry boot_pgtable, boot_second, r0, 1, 0
>>             mov   r12, #1                /* r12 := temporary mapping 
>> created */
>>           mov   pc, lr
>> @@ -578,7 +583,7 @@ enable_mmu:
>>           flush_xen_tlb_local r0
>>             /* Write Xen's PT's paddr into the HTTBR */
>> -        load_paddr r0, boot_pgtable
>> +        adr_l r0, boot_pgtable
>>           mov   r1, #0                 /* r0:r1 is paddr 
>> (boot_pagetable) */
>>           mcrr  CP64(r0, r1, HTTBR)
>>           isb
>> @@ -658,7 +663,7 @@ switch_to_runtime_mapping:
>>             /* Map boot_second into boot_pgtable */
>>           mov_w r0, XEN_VIRT_START
>> -        create_table_entry boot_pgtable, boot_second, r0, 1
>> +        create_table_entry boot_pgtable, boot_second, r0, 1, 1
>>             /* Ensure any page table updates are visible before 
>> continuing */
>>           dsb   nsh
>> @@ -739,7 +744,7 @@ setup_fixmap:
>>   #endif
>>           /* Map fixmap into boot_second */
>>           mov_w r0, FIXMAP_ADDR(0)
>> -        create_table_entry boot_second, xen_fixmap, r0, 2
>> +        create_table_entry boot_second, xen_fixmap, r0, 2, 0
>>           /* Ensure any page table updates made above have occurred. */
>>           dsb   nshst
>>           /*
>> @@ -897,8 +902,8 @@ ENTRY(lookup_processor_type)
>>    */
>>   __lookup_processor_type:
>>           mrc   CP32(r0, MIDR)                /* r0 := our cpu id */
>> -        load_paddr r1, __proc_info_start
>> -        load_paddr r2, __proc_info_end
>> +        adr_l r1, __proc_info_start
>> +        adr_l r2, __proc_info_end
>
> On top of what's Michal already mentioned, you can remove the line in 
> lookup_process_type() which set r10. It was only present so 
> load_paddr() do nothing when called from the C world.
>
> It is a good hack to remove :).

I have addressed this and the other comments.

I have sent out "[XEN v2] xen/arm: arm32: Use adr_l instead of 
load_paddr for getting address of symbols".

- Ayan

>
> Cheers,
>


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 11:19:37 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 11:19:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623720.971830 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvyOk-00040p-OC; Thu, 26 Oct 2023 11:19:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623720.971830; Thu, 26 Oct 2023 11: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 1qvyOk-00040i-Kt; Thu, 26 Oct 2023 11:19:34 +0000
Received: by outflank-mailman (input) for mailman id 623720;
 Thu, 26 Oct 2023 11:19: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 1qvyOj-00040c-QP
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 11:19: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 1qvyOj-00019T-Iu; Thu, 26 Oct 2023 11:19:33 +0000
Received: from [15.248.2.156] (helo=[10.24.67.24])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qvyOj-0002oj-B0; Thu, 26 Oct 2023 11: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=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=Mn1oXXeWxWR6cY3YOMKjdIF7OFtG12dfdH5Jl5NR74g=; b=q6Ex0qgSZKIDtYOrHXy9msp8K4
	VRNj9VisGytFjEkK/F6edtcswXYDsCAS/cydm7ScDeQPJ4Fo/EkbyJP8MZZSRGj57zVT55mPXM+ut
	eCZIvUmukWYPWQTNEj9FZVWamL3WYH7f8mTLESp9rD/N9mSmCGIKCk+2B6e4mNIk73nM=;
Message-ID: <e470ca62-6b51-4f7a-828b-dd95b881bf71@xen.org>
Date: Thu, 26 Oct 2023 12:19:31 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN v2] xen/arm: arm32: Use adr_l instead of load_paddr for
 getting address of symbols
Content-Language: en-GB
To: Ayan Kumar Halder <ayan.kumar.halder@amd.com>,
 xen-devel@lists.xenproject.org
Cc: sstabellini@kernel.org, bertrand.marquis@arm.com, michal.orzel@amd.com
References: <20231026111228.2724962-1-ayan.kumar.halder@amd.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <20231026111228.2724962-1-ayan.kumar.halder@amd.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi,

Title: This reads as you replace all adr_l with load_paddr. So how about:

xen/arm32: head: Replace load_paddr with adr_l when they are equivalent

On 26/10/2023 12:12, Ayan Kumar Halder wrote:
> Before the MMU is turned on, PC uses physical address. Thus, one can use adr_l
> instead of load_paddr to obtain the physical address of a symbol.
> 
> The only exception (for this replacement) is create_table_entry() which is
> called before and after MMU is turned on.
> 
> Also, in lookup_processor_type() "r10" is no longer used. The reason being
> __lookup_processor_type uses adr_l (thus r10 is no longer used to obtain the
> physical address offset).
> 
> Signed-off-by: Ayan Kumar Halder <ayan.kumar.halder@amd.com>
> ---
> Refer https://lists.archive.carbon60.com/xen/devel/682900 for details.
> 
> Changes from :-
> 
> v1 :- 1. No need to modify create_table_entry().
> 2. Remove "mov   r10, #0 " in lookup_processor_type().
> 
>   xen/arch/arm/arm32/head.S | 13 ++++++-------
>   1 file changed, 6 insertions(+), 7 deletions(-)
> 
> diff --git a/xen/arch/arm/arm32/head.S b/xen/arch/arm/arm32/head.S
> index 33b038e7e0..e0ff46e92f 100644
> --- a/xen/arch/arm/arm32/head.S
> +++ b/xen/arch/arm/arm32/head.S
> @@ -171,7 +171,7 @@ past_zImage:
>   
>           /* Using the DTB in the .dtb section? */
>   .ifnes CONFIG_DTB_FILE,""
> -        load_paddr r8, _sdtb
> +        adr_l r8, _sdtb
>   .endif
>   
>           /* Initialize the UART if earlyprintk has been enabled. */
> @@ -213,7 +213,7 @@ GLOBAL(init_secondary)
>           mrc   CP32(r1, MPIDR)
>           bic   r7, r1, #(~MPIDR_HWID_MASK) /* Mask out flags to get CPU ID */
>   
> -        load_paddr r0, smp_up_cpu
> +        adr_l r0, smp_up_cpu
>           dsb
>   2:      ldr   r1, [r0]
>           cmp   r1, r7
> @@ -479,7 +479,7 @@ create_page_tables:
>            * create_table_entry_paddr() will clobber the register storing
>            * the physical address of the table to point to.
>            */
> -        load_paddr r5, boot_third
> +        adr_l r5, boot_third
>           mov_w r4, XEN_VIRT_START
>   .rept XEN_NR_ENTRIES(2)
>           mov   r0, r5                        /* r0 := paddr(l3 table) */
> @@ -578,7 +578,7 @@ enable_mmu:
>           flush_xen_tlb_local r0
>   
>           /* Write Xen's PT's paddr into the HTTBR */
> -        load_paddr r0, boot_pgtable
> +        adr_l r0, boot_pgtable
>           mov   r1, #0                 /* r0:r1 is paddr (boot_pagetable) */
>           mcrr  CP64(r0, r1, HTTBR)
>           isb
> @@ -877,7 +877,6 @@ putn:   mov   pc, lr
>   /* This provides a C-API version of __lookup_processor_type */
>   ENTRY(lookup_processor_type)
>           stmfd sp!, {r4, r10, lr}

Do we still need to save/restore r10?

> -        mov   r10, #0                   /* r10 := offset between virt&phys */
>           bl    __lookup_processor_type
>           mov r0, r1
>           ldmfd sp!, {r4, r10, pc}
> @@ -897,8 +896,8 @@ ENTRY(lookup_processor_type)
>    */
>   __lookup_processor_type:
>           mrc   CP32(r0, MIDR)                /* r0 := our cpu id */
> -        load_paddr r1, __proc_info_start
> -        load_paddr r2, __proc_info_end
> +        adr_l r1, __proc_info_start
> +        adr_l r2, __proc_info_end
>   1:      ldr   r3, [r1, #PROCINFO_cpu_mask]
>           and   r4, r0, r3                    /* r4 := our cpu id with mask */
>           ldr   r3, [r1, #PROCINFO_cpu_val]   /* r3 := cpu val in current proc info */

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 11:24:00 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 11:24:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623725.971850 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvyT2-0005mj-Ji; Thu, 26 Oct 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 623725.971850; Thu, 26 Oct 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 1qvyT2-0005ma-Gq; Thu, 26 Oct 2023 11:24:00 +0000
Received: by outflank-mailman (input) for mailman id 623725;
 Thu, 26 Oct 2023 11:23: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=Iwvv=GI=citrix.com=prvs=656fec104=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qvyT1-0005VV-Dh
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 11:23:59 +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 2658671b-73f2-11ee-98d5-6d05b1d4d9a1;
 Thu, 26 Oct 2023 13:23:57 +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;
 26 Oct 2023 07:23:54 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by DM4PR03MB6125.namprd03.prod.outlook.com (2603:10b6:5:394::14) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.11; Thu, 26 Oct
 2023 11:23:51 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::acf0:ce2b:1634:5aee]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::acf0:ce2b:1634:5aee%6]) with mapi id 15.20.6933.011; Thu, 26 Oct 2023
 11: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: 2658671b-73f2-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1698319437;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=fpNUc2qPcpf7xbyVtuZnJLSQa2I8Y1u3vHDuulFqNJw=;
  b=DgxyzwRG3MC4GVvWUUzBuW0MyX+XqqjE9+wRQSAQx+73uaF4ZF1WvQc7
   zJzhiP5aDbBhbILXkM1qapgoPIpkAVelJy/gDkxTT2Og+f2HfAx2KTLCv
   NT/wfzVWel3w+Rl049UpG9b1hO2rNoxfeZPEjJeuwDbcEVdwRYb0M+Jhd
   w=;
X-CSE-ConnectionGUID: pkzta0rmSUCr/8HOk1YIwQ==
X-CSE-MsgGUID: e70xru6nQNGnflBTnZW+8Q==
X-IronPort-RemoteIP: 104.47.58.100
X-IronPort-MID: 126582251
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:AcPFcqxRhOBHX7IpvHl6t+cRxyrEfRIJ4+MujC+fZmUNrF6WrkUDy
 WAXWzvXbPyJN2f9Ldt+PYmxphxU657Rx9RgQFRoryAxQypGp/SeCIXCJC8cHc8wwu7rFxs7s
 ppEOrEsCOhuExcwcz/0auCJQUFUjPzOHvykTrecZkidfCc8IA85kxVvhuUltYBhhNm9Emult
 Mj75sbSIzdJ4RYtWo4vw/zF8EgHUMja4mtC5QVmP64T5TcyqlFOZH4hDfDpR5fHatE88t6SH
 47r0Ly/92XFyBYhYvvNfmHTKxBirhb6ZGBiu1IOM0SQqkEqSh8ai87XAME0e0ZP4whlqvgqo
 Dl7WT5cfi9yVkHEsLx1vxC1iEiSN4UekFPMCSDXXcB+UyQq2pYjqhljJBheAGEWxgp4KXlN5
 +ARcCoIVS2onaXm4JW4E9hNmf12eaEHPKtH0p1h5RfwKK9+BLzmHeDN79Ie2yosjMdTG/qYf
 9AedTdkcBXHZVtIJ0sTD5U92uyvgxETcRUB8A7T+fVxvjiVlVQpuFTuGIO9ltiiX8Jak1zev
 mvb12/4HgsbJJqUzj/tHneE37WRwHOhAt9LfFG+3vM12E2J2zIVMTs5U1W/i8W/uHH9C+sKf
 iT4/QJr98De7neDTNPwQhm5q36spQMHVpxbFOhSwB6J4rrZ5UCeHGdsZi5MbpkqudE7QRQu1
 0SVhJX5CDp3qrqXRHmBsLCOoluP1TM9KGYDYWoISFUD6ty6+IUr1EuXFpBkDbK/icDzFXfo2
 TeWoSMihrIVy8kWy6G8+lOBiDWpznTUcjMICszsdjrNxmtEiESNPuRENXCzAS58Ebuk
IronPort-HdrOrdr: A9a23:yrdurq4ntWIAg1MStwPXwPbXdLJyesId70hD6qkRc31om6mj/K
 qTdZsgpHzJYVoqNU3I4OrwXpVoIkmzyXcW2+Us1N6ZNWHbUAHBFvAa0WKI+VLd8kPFltK02c
 9bAspD4NCZNykcsS7xiDPIdurJz7G8gcSVuds=
X-Talos-CUID: 9a23:iRxeAWHK47WnkXuwqmJ/91wIE5g/d0bg522Xc2+fCj9YaaKsHAo=
X-Talos-MUID: =?us-ascii?q?9a23=3AC+Zc2g3DanUuuMiMNo21vMAsbTUj7vv2GFoQz5M?=
 =?us-ascii?q?/neaCOyhaBzGvs3fne9py?=
X-IronPort-AV: E=Sophos;i="6.03,253,1694750400"; 
   d="scan'208";a="126582251"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=FT2h8ccx1gC96Eb0POCGZH81iPZR/ihgB8XBa8/kwSBWMAXNJScH93fmXqLxTpslZc7uc7XtUHOO0O0Ep7XqsjDHdPTzesmKUzRNeDvl+cP2YQ+YFZXhLavXgxxx9UR+v/lW5amA7HCMogfVng4xNSmprX+ULP5xRWykAqCCPUyB03gL4uSJEfig+kYxjwD/hGOxcWzEnTphJdjNivmMjvNY4eEpqpNu+iRrEKa6V+1L3TT3Grhlh/Omji9QtdSWDa8Eo7crj5vPkjVD1+qI8quMB+TJaRlCL8TjLnqd6hhxGEy4mGXMJEI/DTTi9rXI4N7B0l+ydZ85ffrzl9omhw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=IS25JM1+kVbzP2J+xDGbgTNLQsO8xQ2gyhCu/OQN75Y=;
 b=UHkGoqehrXBx76SWfPaLAeweK56XtD1l88MzF0FreEBXdWQUZ01Tp7kT+S8z8Q4p7Zepq7QPbJZlHQKpylLYyIJrsExOX+Hb0vY38Y+8j/QVHKpatQlruMUUTYqqw0fOIBbXDyPtP+80ctZoSLLy1pPVmyRetuUrMufMyz2qmOFfL0iTz42Mm13hJHM99MAlGMLCKu1URjSkjUq6bDc4IJPEHuXw6pt813BL5wtzH3680Ww0Gl9HGTjeieE5eRvVkXJl+MkMllk/KvVyptu1ZYm6cNBFubzxGZSuaSbMg7pFKklS+otjAdZGfLiws8xKw8rDeLFclIvHM3ksEh/Dtw==
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=IS25JM1+kVbzP2J+xDGbgTNLQsO8xQ2gyhCu/OQN75Y=;
 b=l8wlb4sy0Oi7EteUc7rIuRmymlP18qr/R8cAdCQMO0WbTk0V9ZY93e+Sqo0AD8TPJNNyB/seHLsXe5VdINDQXzaf0paxqqO7EAUZs5uLa0T+VNPlTzb4EanJIwtPvmmr5pvS0q6Tj/AWSD36mu0abHJmZe2oAKWsiGsksjnHe5E=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Thu, 26 Oct 2023 13:23:47 +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 v3] x86/i8259: do not assume interrupts always target CPU0
Message-ID: <ZTpMQ9fs2I4xmt_-@macbook>
References: <20231024145340.49829-1-roger.pau@citrix.com>
 <e3daacea-79c8-32ea-70b7-7654f542c9de@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <e3daacea-79c8-32ea-70b7-7654f542c9de@suse.com>
X-ClientProxiedBy: MR2P264CA0093.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:32::33) To SJ0PR03MB6423.namprd03.prod.outlook.com
 (2603:10b6:a03:38d::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|DM4PR03MB6125:EE_
X-MS-Office365-Filtering-Correlation-Id: 05823a26-4a99-48fc-9e43-08dbd6160785
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:
	h23GE2/V5Fzi93iYmqRbLP34i7ezelJaw6kCO2yUU6lzh6sLlX8XbYFPdutj1Q+TXY2EifHcMtZ+QIwAHBJIX41DDirXkiGSMygyNERD5ub1TFMPYlLybt9gm09T3+zaje9uy9lqL6dwYPtzePNUa+0GFleMhVVq7hxbmZSe4h3V1HxkFCGlgb7SrqHNTBkIzHwZ9mEQpu8s5fkNA2Q6aYJasiZfdtjpQ2YxkK5PNqJb8LNAmAcoCxOCN41Zs/TILLPFqsq66i08UZ0+jrj4lQuifianh+53o7wstW4e1ktZsoUTV7n/X8nM1hhdnC5bVTN1cIbQ13Ws9YCQreoEDQJk7sx4cto+arE8pGwYncVyGJUxZ9PZ8hxhuOKHQzEvoK+BH2y3xhwe2SNvAdCP5IlFJHQ/yFuYsCfNIBdA/ccapjzNDKwYhMh1CWQ+gVQQtd5Abg19YfK7cDT5dYzeJ4La4UbvkUnZZuOsyBtBv1KwybJF2/abkCdZAHE8UM4FQcBiL8n4qiCr9buT5CZCCq97AF6XQdxy8kMsmE7uVg2xhuUSqqDzwB540ezmFsvd
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)(366004)(39860400002)(396003)(230922051799003)(186009)(451199024)(64100799003)(1800799009)(8676002)(8936002)(2906002)(41300700001)(4326008)(5660300002)(33716001)(6486002)(26005)(82960400001)(53546011)(6666004)(38100700002)(6512007)(6506007)(9686003)(83380400001)(86362001)(54906003)(66946007)(6916009)(316002)(66476007)(85182001)(478600001)(66556008);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?a1U4TWhtM2ZuY2hBcThvRVNYb2JRTEdzSzB1ZU1CRU0vNUlhV0VFcmVwOG93?=
 =?utf-8?B?and3Q013cFU0VDBRY2s0Z3lURVVrdGZIQkhoVTYrS2xVU3ZqUTJIRmtVcnhk?=
 =?utf-8?B?SExSTU1nMTY2Rlh1RHB2N3JoQ044cUowaDgvYUtrN2I0eGt0N2Z5SGNWTmVV?=
 =?utf-8?B?UkMwSCswc1B5cVNGTWs2TGh2cXJlUDJMRXNzMmhxU2JBN0xFTmN4TnZHckNB?=
 =?utf-8?B?T204WVhJS0czZjE2RGFlV2RmTURkQ3BXQlNMNmhIdG55YTNCL2JsRXZzOTcy?=
 =?utf-8?B?eVhESXZIa1dzcGVPYUZLUm80cEJ2ajlxcG9EOFoxK1MrNk83Sk1KcHUycTNV?=
 =?utf-8?B?dzA5R2F4UC9LUmErVENhS2xORkxHSmY0SGNocm45VHVGS0FSdDFXeU1ubjVD?=
 =?utf-8?B?dExJNERHS3ZFS2JkSDdhS3R4WVEvNzFubGYrcnB1Y2tsY0tiN1JXV05nTEF6?=
 =?utf-8?B?c2lqajltblFiWFVSUlU2NkNLU3QzT2J4SVA0ZzJnWDhxY1Z2SG5laHpzbkJ6?=
 =?utf-8?B?djY0VStIWm81YnAzYkc2S1FyZkJoQ1JRSzhsUFBNRUpOaW9lZ1ZoemNmNlBj?=
 =?utf-8?B?WHI2dHlxYWkxMmQ4c3AxYzJ2RHRmOW54b0FDcCtiODFqM1lkczJiODhoZlo2?=
 =?utf-8?B?KzJTcU9pNEs1OXMxdnlPci9lc1Z3TGJWWlc0OEFIb3FpaEowb1BmZm0rcldt?=
 =?utf-8?B?dTJIKzd1ZW10U0YzVVBkMzl5Q3g4SS9wZUlURFhyMk9pMkd5TXM4RU9sZzM3?=
 =?utf-8?B?ZmdsdUFDUzFFY1hXK1cvOEVlWG43UTNFa3puZjU1VFpQOWhrdUpBdVpSamU2?=
 =?utf-8?B?NzNEWlB1c3lTTU1FOE5mV2QrbElNcjNtMytIVXUxN2RaeFVlYjZxa2pXVm9G?=
 =?utf-8?B?K24rQmJUbDNIZnBoNm1DSTBLSVFYcjVRVGdXbERUaFdBRWx3Zzl2aFRya1VS?=
 =?utf-8?B?L0R3c1Y3UFBDdXJpUWlYSVp0OG0ydUdFVW9MOTZrUVN4ZGhRcHkvQ2xDWFlw?=
 =?utf-8?B?Ri9pNWh0NGtNUFVhbDFWTGRwekpja00vcUg2czdnV1l3a1dRNGl1eHdXaWhB?=
 =?utf-8?B?aUhPeVdBaS9BRmR2aDJmeFNCR20vNEg1UzJvL0dHV3h1YjJrVVY2RXBRTDho?=
 =?utf-8?B?djJVQ2lnOEJ1aVg5WXFscTB3Q2hlUHJseHozSWgwZVdSejhyWGJuWmRleHdZ?=
 =?utf-8?B?R25SbUE1bStPYThWMUdEaW9BNGdlUzczY0srRHF6Sm1YbndLVHJFaVMvYzk0?=
 =?utf-8?B?YW85aTA5ZU5mT3U4TEd0anZQbnpzR0E2b0hUZ2JVMlpJWnVLM2gzbjZRSnpE?=
 =?utf-8?B?ZFRlNkpxbTZacWtMMk44WGdlb0ZJYy9EamlXNzFwTkRISW5Pb1hBQ0VpYVZW?=
 =?utf-8?B?azFmdW9iOGo1RlBBVEtSQWNJcUFybWtKS0VhVzJXQ0ZOam01Qmx1Q0lBV0pz?=
 =?utf-8?B?M1VHdHhFdW5XZDVSRm1jUm00MlZudWRSY2FzaTJ0K2lPY1pDZnBCN212bDZN?=
 =?utf-8?B?QTc4K0JQZlI0dnhyZ3lyZGhrMHJERkhacVZXS0FDNUNwUi80dGVWaFAzajNp?=
 =?utf-8?B?L1FCaFBCVzFNK0hDdVFWcmJ1YXI0UUtVRUZBYXAvaDQyMzlZMTlyZUUxbVBh?=
 =?utf-8?B?TEd2c1VGcmRQUGpSa3FsUm15S3lwQnc3OHVaamxRaHpRZlE1dHJOcEU2clBy?=
 =?utf-8?B?QXQxWmg4cHJTcmhocVMrRDluNVpvbVlYUUNTOVEwZkk3akF5OUJLanhhSjJK?=
 =?utf-8?B?ZHVrVXB6VDI4OEYvcXpFV3Uyc0tiOVRwOEdKazdwaG0rZWJEZGZXSGN2N3ky?=
 =?utf-8?B?YTdLWFZ1MDdQU3ZhMTBhT28xbVZTaFBsSlVTOFJ6aXZTNzd5TDNLSm5DZ0dr?=
 =?utf-8?B?TFljY2MyV2FlWlR6VVNqSnVoRFVOMCs4THY0ampJTVFGdjg1OFk5ZFVRTnBi?=
 =?utf-8?B?M2Y5d2NUekVRU2hIVCtSSHhvY3VQZzBPbEk3c1ZmRWZITFlqQ051ZWMrNkVp?=
 =?utf-8?B?Q1ViNUtDa1RJQ3NCdUxBVEV3ZVVCYkpCK1hxUzhpMlZFWDg3dExaWDdaNTgy?=
 =?utf-8?B?K3VaYnlVWjA0NXQ2cUM2QlFtOVFVTGZvb043RmRZamI5dkhMR1ErRm15akov?=
 =?utf-8?B?RXNqdm5hUVNXajhCWC9ldzR2bkdOTlN2dmxWTlE2amZDVW9UVEcyTWJIR1Rn?=
 =?utf-8?B?NXc9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	PWMHhp8vPi9QrBTAMMqC41mSgyS7/XeBjwhL+K4q5ptM4+l5gED8cGMTmJH4XGFEtfXDXdocF7l6a7FPejvXvOJEpevP1zuMIV5ws6omTlfarnrRXWcLudByJFRw0ZQFEOfxfIlgdxUmUhibyzPplz9s08V9HhcB9orWFNOmRVTEHuB9DrvOCn3VJ6rBaca4cN/4wrBn9Qgk+OGitAbIV7ZZXj3v//svZ9AXz/7Q2QSe4o7GQj6vXEM4wbruoNnNTmQmNTuirmI/moc3IubBAU4ruyeiCLkmFqi95v1pPWCOOET0P7yQ2Acq/FoKb/H2KoDrOEf/4oPO5nYle14AbCjMJ3GAwNXjmZaZqO6lkAQwAEyAU+59vOww8/ywwfmpmBqrAh3BCK//VCXq5p1VfS24SeKITYHJYeEdIUGbhieu2ydZE2Gk8se67qH78n2qQJNJthheVg0HPTC03xOviPl4mrdrYabMDgJHXCXWaDKgV62hL26Lz/0VUWQ8VqRGssfBHbu1XdMWpgSdkloX2FjEAq1Y3V8JABWHrjWAK48yMOvxDCakceskiwuqBAMw+BteuD4/RCmappVjv4bfzTMzXDaV1cP2copqTSlqm9EI2qLg2qIx6ka+HM4UMZx/bK1FppAhYc0Fp6Ucg4Z1I5E5UvadfG0/8fc2s25Sp3wzr59uHcodo14dNpmRx+TNDiM5vr+UKHX8mN3c6jRkUCrESYbgtjYqFZ0/+u21ThGXS5hDGcPa4jXEkMq5ySDuj+tB9tjwqHQEDRTgkn85bCqPzynzY4P0SVk29LhvdFc1vJEfDLJ4RF9FwAOSSVrwAtk9cFPURGK0ykyMvUF+6A==
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 05823a26-4a99-48fc-9e43-08dbd6160785
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Oct 2023 11:23:51.0138
 (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: S93aJjjF6OQI3dVXu/Q28RrshiWLvx1WUGzdi++9PtOhn1GH4x3wHugJlV1NHuyWESZoFETubuR+jZjPUHPN1g==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR03MB6125

On Thu, Oct 26, 2023 at 09:59:42AM +0200, Jan Beulich wrote:
> On 24.10.2023 16:53, 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
> > observed i8259 (active) vectors getting delivered to CPUs different than 0.
> > 
> > On AMD or Hygon platforms 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 would need to be handled on all CPUs.
> > 
> > Continue to reserve PIC vectors on CPU0 only, but do check for such spurious
> > interrupts on all CPUs if the vendor is AMD or Hygon.  Note that once the
> > vectors get used by devices detecting PIC spurious interrupts will no longer be
> > possible, however the device driver should be able to cope with spurious
> > interrupts.  Such PIC spurious interrupts occurring when the vector is in use
> > by a local APIC routed source will lead to an extra EOI, which might
> > unintentionally clear a different vector from ISR.  Note this is already the
> > current behavior, so assume it's infrequent enough to not cause real issues.
> > 
> > Finally, 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
> > 
> > Amends: 3fba06ba9f8b ('x86/IRQ: re-use legacy vector ranges on APs')
> > Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
> 
> Reviewed-by: Jan Beulich <jbeulich@suse.com>
> with one nit (which I think can be taken care of when committing):
> 
> > --- a/xen/arch/x86/irq.c
> > +++ b/xen/arch/x86/irq.c
> > @@ -1920,7 +1920,16 @@ void do_IRQ(struct cpu_user_regs *regs)
> >                  kind = "";
> >              if ( !(vector >= FIRST_LEGACY_VECTOR &&
> >                     vector <= LAST_LEGACY_VECTOR &&
> > -                   !smp_processor_id() &&
> > +                   (!smp_processor_id() ||
> > +                    /*
> > +                     * For AMD/Hygon do spurious PIC interrupt
> > +                     * detection on all CPUs, as it has been observed
> > +                     * that during unknown circumstances spurious PIC
> > +                     * interrupts have been delivered to CPUs
> > +                     * different than the BSP.
> > +                     */
> > +                   (boot_cpu_data.x86_vendor & (X86_VENDOR_AMD |
> > +                                                X86_VENDOR_HYGON))) &&
> 
> Afaict these two lines need indenting by one more blank, to account
> for the parentheses enclosing the || operands.

Indeed, please adjust at commit if you don't mind.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 11:24:01 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 11:24:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623724.971840 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvySi-0005Vi-8l; Thu, 26 Oct 2023 11:23:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623724.971840; Thu, 26 Oct 2023 11:23: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 1qvySi-0005Vb-5l; Thu, 26 Oct 2023 11:23:40 +0000
Received: by outflank-mailman (input) for mailman id 623724;
 Thu, 26 Oct 2023 11:23: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=ziZY=GI=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qvySg-0005VV-Tb
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 11:23:38 +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 1b7b355b-73f2-11ee-98d5-6d05b1d4d9a1;
 Thu, 26 Oct 2023 13:23:37 +0200 (CEST)
Received: by mail-ej1-x636.google.com with SMTP id
 a640c23a62f3a-9b9faf05f51so113937566b.2
 for <xen-devel@lists.xenproject.org>; Thu, 26 Oct 2023 04:23: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
 pw17-20020a17090720b100b009bd9ac83a9fsm11409804ejb.152.2023.10.26.04.23.36
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Thu, 26 Oct 2023 04:23: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: 1b7b355b-73f2-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1698319417; x=1698924217; darn=lists.xenproject.org;
        h=content-transfer-encoding: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=in9UqRrtUf0hXu3rOWDiYw+C4Y6e7RNrzYYUDAii0Cg=;
        b=L4TlpbNYPE4RmofaJ8EmPtBEUresj+rTUkKiC3mi1c80E83zXgeMh5SuuLsAMxgD9a
         tP+O6dJZ0/YX/hgc9HTYhU48xJl06nTKFalut+5AP6h1jiEu0pWbpUDKOf/6gFwT1nw/
         VRwhuYNeP7DCeHEFhVF6LtwHGAB1A5wWw+Jtc=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698319417; x=1698924217;
        h=content-transfer-encoding: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=in9UqRrtUf0hXu3rOWDiYw+C4Y6e7RNrzYYUDAii0Cg=;
        b=EVY/r9b9OaLkC4qNLT99PG+r8yuAiOXdh3Z0/bDOTFXgWYm5h8mcgN41ShY6MpiBHL
         JipYLI1ikcvtS+QoQ83wct900zqpqrLOE+fwkrbipgWPF03ujC59u3LIbNG9Mgz4KTwK
         mZoLOyjFZDU/Kh34eGEkxe0hj1CjpK1TOsWd3zMs0B4L4oapJBeJWHkoB1NU6Buzhq5L
         0kxi0D8pE2ebSkYpewuETb5TDLeCPewJFJf0gYA2bog1FK6Ysf6e96HyY03zLihEPeIx
         sI+tJG/eaNH29dE9Vof2GoDgjOp+sOxhs9Vds3sQ/Ov8YhrQrnRgP0U1YcwjURYge/mv
         o8Qg==
X-Gm-Message-State: AOJu0YwGAcMqH/0lFtQbHqwmStBiwC9LiWmhU/bbfVfv+GXbuJzEHsTz
	OcF4sp0JZA1LHdSsR9fIL0C0MA==
X-Google-Smtp-Source: AGHT+IF5VyuLccSVyWGtELgkal0AoYKWP6Sw4b+B7ffLyCq41IgprhvZnfgqeCpmBZTM+iz7AeeE7A==
X-Received: by 2002:a17:907:3188:b0:9c7:4d3e:1e50 with SMTP id xe8-20020a170907318800b009c74d3e1e50mr14370806ejb.76.1698319417186;
        Thu, 26 Oct 2023 04:23:37 -0700 (PDT)
Message-ID: <0be81644-fe8d-486e-8e79-1316b87911c3@citrix.com>
Date: Thu, 26 Oct 2023 12:23:36 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH 1/2] x86/ucode: Move vendor specifics back out of
 early_microcode_init()
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>, Alejandro Vallejo <alejandro.vallejo@cloud.com>,
 Stefano Stabellini <stefano.stabellini@amd.com>,
 Xenia Ragiadakou <xenia.ragiadakou@amd.com>,
 Xen-devel <xen-devel@lists.xenproject.org>
References: <20231025180630.3230010-1-andrew.cooper3@citrix.com>
 <20231025180630.3230010-2-andrew.cooper3@citrix.com>
 <af70a4b6-0bdf-e6d2-80ae-822a273573f9@suse.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: <af70a4b6-0bdf-e6d2-80ae-822a273573f9@suse.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 26/10/2023 8:45 am, Jan Beulich wrote:
> On 25.10.2023 20:06, Andrew Cooper wrote:
>> --- a/xen/arch/x86/cpu/microcode/core.c
>> +++ b/xen/arch/x86/cpu/microcode/core.c
>> @@ -847,25 +847,19 @@ int __init early_microcode_init(unsigned long *module_map,
>>  {
>>      const struct cpuinfo_x86 *c = &boot_cpu_data;
>>      int rc = 0;
>> -    bool can_load = false;
>>  
>>      switch ( c->x86_vendor )
>>      {
>>      case X86_VENDOR_AMD:
>> -        if ( c->x86 >= 0x10 )
>> -        {
>> -            ucode_ops = amd_ucode_ops;
>> -            can_load = true;
>> -        }
>> +        ucode_probe_amd(&ucode_ops);
>>          break;
>>  
>>      case X86_VENDOR_INTEL:
>> -        ucode_ops = intel_ucode_ops;
>> -        can_load = intel_can_load_microcode();
>> +        ucode_probe_intel(&ucode_ops);
>>          break;
>>      }
>>  
>> -    if ( !ucode_ops.apply_microcode )
>> +    if ( !ucode_ops.collect_cpu_info )
>>      {
>>          printk(XENLOG_INFO "Microcode loading not available\n");
>>          return -ENODEV;
>> @@ -882,10 +876,10 @@ int __init early_microcode_init(unsigned long *module_map,
>>       *
>>       * Take the hint in either case and ignore the microcode interface.
>>       */
>> -    if ( this_cpu(cpu_sig).rev == ~0 || !can_load )
>> +    if ( !ucode_ops.apply_microcode || this_cpu(cpu_sig).rev == ~0 )
> Here ucode_ops.apply_microcode simply replaces can_load, as expected.
>
>>      {
>>          printk(XENLOG_INFO "Microcode loading disabled due to: %s\n",
>> -               can_load ? "rev = ~0" : "HW toggle");
>> +               ucode_ops.apply_microcode ? "HW toggle" : "rev = ~0");
> Here, otoh, you invert sense, which I don't think is right. With 2nd
> and 3rd operands swapped back
> Reviewed-by: Jan Beulich <jbeulich@suse.com>

Oh, right.  This did get adjusted several times.  I'll fix.

It's a weird construct anyway, and it gets cleaned up differently by
some of my later work.

>
>> @@ -398,9 +398,17 @@ bool __init intel_can_load_microcode(void)
>>      return !(mcu_ctrl & MCU_CONTROL_DIS_MCU_LOAD);
>>  }
>>  
>> -const struct microcode_ops __initconst_cf_clobber intel_ucode_ops = {
>> +static const struct microcode_ops __initconst_cf_clobber intel_ucode_ops = {
>>      .cpu_request_microcode            = cpu_request_microcode,
>>      .collect_cpu_info                 = collect_cpu_info,
>>      .apply_microcode                  = apply_microcode,
>>      .compare_patch                    = compare_patch,
>>  };
>> +
>> +void __init ucode_probe_intel(struct microcode_ops *ops)
>> +{
>> +    *ops = intel_ucode_ops;
>> +
>> +    if ( !can_load_microcode() )
>> +        ops->apply_microcode = NULL;
>> +}
> I was wondering why you didn't use the return value to supply the pointer
> to the caller, but this override explains it.

Yes.  The other option was to export (in private.h at least) the root
ucode_ops, which I decided against in the end.

I also toyed with the idea of having the probe functions return int, so
we could get EOPNOTSUPP or so in the compiled-out case, but that's
almost completely redundant with clobbering the hook, and it's added
complexity for somethign that only randconfig is going to care about.

The only thing I'm not entirely happy about is the volume of the
ifdefary for these ucode_probe() functions in the following patch, but
it's the least invasive option overall IMO.

~Andrew


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 11:36:18 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 11:36:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623734.971860 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvyen-00017C-M0; Thu, 26 Oct 2023 11:36:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623734.971860; Thu, 26 Oct 2023 11: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 1qvyen-000175-IY; Thu, 26 Oct 2023 11:36:09 +0000
Received: by outflank-mailman (input) for mailman id 623734;
 Thu, 26 Oct 2023 11:36: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=hFWs=GI=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qvyem-00016z-9n
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 11:36:08 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 (mail-am6eur05on20625.outbound.protection.outlook.com
 [2a01:111:f400:7e1b::625])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id d8395ebf-73f3-11ee-98d5-6d05b1d4d9a1;
 Thu, 26 Oct 2023 13:36:04 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by VI1PR04MB6830.eurprd04.prod.outlook.com (2603:10a6:803:132::21)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.19; Thu, 26 Oct
 2023 11:36:01 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6954.008; Thu, 26 Oct 2023
 11: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: d8395ebf-73f3-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=D52EH55JffuXmQOuTtvwRWlt1krRQSJfMqnPO1571AvvQvUA68LKqF8NNn32Ya7GvMkKVr5A7mvxSAHfF+gYzMI7pmwyHgAaRWxqtItVOLcTugcvmXfAoNoGJROvg26SyACKYMaNZPWycDZWUHy8yNlUzzL5UweB0Pfg3M0o6o326SqzcKCWcwQIh0+3vNEZE2z4isQKZRa17nnve3wS0shgD2euw6cBGtW5I/B1e2XxpxSrA/Bb3CMGyuVtNYTVvC90i0vAKTPEySdiXncINhr5tnIfmTH3POf6AzCv6rH/XQQw7mhfUuH9o/3mIIbLLkznXUTVZiRoQlJwTMZLRg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=CnuCnFYrID+nm5Gr1MKRMGLOEdQ4wkVNVMIMwRNyRM0=;
 b=H9xg7g3FQ13zHgs/qVMeHInHjRMD3M8Tv1mLauijpZYZOBwjP2bITpOo9U1ghdgLm58rUJbeyfExcXctaAeiBctt/sSvTo/aK/lySZ9IStvl4g/+hU2fO/usKKnDU9zf3RtsIUfeXXOLNSI2UhQCX8cVxZzzdgtT4h7Xf9r2TAJl0Cyc3a1jqNadbys2Qh1UHg8GvLuz644f3C5pF2YgtEUd4WIiiQRLc6tu3k6xgIgy12Zet92aXYFuBl19hdUy4HkV6aPXGKMSVAj2azC7jZDSbAL6S+6bA2GIdpNj94kAbDYwSpt4napJt6EnPrDUHS1VmNsZXsQ7an0SrSd0Qw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=CnuCnFYrID+nm5Gr1MKRMGLOEdQ4wkVNVMIMwRNyRM0=;
 b=TfCZ2VFGzGIn1mK8n+quZodMCVT1qDNqiNrvOzxzS5PR+phwGiyq/7/171FJwYOzANfPqr8yw8L6T6ZfnmbUmtHC8mapdENJmVVurp7VMrh2q5N29XGV+nJgdIl+KrBFITGhfbohcITyW/pNSLECTpOPtK+D5XcQ+49y7L5x/gvtYTkmNHaT4w7X8jHsE9OppsSUlU0zJwHwGSufz7blMcAk5Lnsq4AlO7MnCsHHONOmNOPb3H+YD3Jy1Hz8XVrrZ4NCL6w8d1mCerO7Y7njw5iUkg2uU5UqTasxz2A7aL1tPlu4Tt2LFZ0P8TMVzNbRXOEJisScwDbtZkFAA8CerQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <07fbb9b7-e6d7-9abc-a64a-a7972b93b9ad@suse.com>
Date: Thu, 26 Oct 2023 13:35: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 2/2] x86/Kconfig: Introduce CONFIG_{AMD,INTEL} and
 conditionalise ucode
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>, Alejandro Vallejo <alejandro.vallejo@cloud.com>,
 Stefano Stabellini <stefano.stabellini@amd.com>,
 Xenia Ragiadakou <xenia.ragiadakou@amd.com>,
 Xen-devel <xen-devel@lists.xenproject.org>
References: <20231025180630.3230010-1-andrew.cooper3@citrix.com>
 <20231025180630.3230010-3-andrew.cooper3@citrix.com>
 <85cddaeb-6b75-2f53-940e-0b06396fd1bb@suse.com>
 <0d67d2c6-1841-4771-9e6e-1a6463c0b443@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <0d67d2c6-1841-4771-9e6e-1a6463c0b443@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR4P281CA0373.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:f8::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_|VI1PR04MB6830:EE_
X-MS-Office365-Filtering-Correlation-Id: 4b69e7af-a474-4245-4c8b-08dbd617baf2
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	8W7ksSTjCH3BVEdL2ARJahhekJa/Et90cSSfC4vQ7mZ1fBsoBz83l+rAGrpTACYnihhRvIICZq3hpHGtpx0ygZDaddiDHsRmypsFKdcHhxqIngWqt2eTa73y5jx6pGjJHD7EUzb47e2DUxSXvjCvEJqs29q15aTPHgSbrS+T4St3IiX2k+Y/qyw6982h7wVl4IBS6z0FBd7PJRl4XBWO4n7fSrOpzm90nrs6fahgkTRBHsnADmLKn80vSIePWaID+dTdifKh4ghpHr0cdo/KDl4BXSmUbPr42hJRh+3SzdvHyoYNrlD+xBCtU2179Yamj0EYn7Si6jqxy5/n1DdsCJlZfkAFzzWmqGlGF+CFISmGDXshHGrrfX21vrlR/zax/ZcGN5xMRPlpSq2MKFjGd2H0Qkf2RGYhU3kR5/9ga0p0R1DCtFbm3x0fb6h3YbZ5qaXpx7HvcmPpc5TDDDVl5yXqLtbHpyMKpCazBakWXggKLX70+3Rgq8aFNz+8PNrp1dTM42Rf4s7qhhrQ5GSjX/sxeueNkgqSE/10UL2vf6GfCLaD1IGltAtvKoemwuU1Z4hNCR8Zomno87pSe/giKLHyT4kspx0FFoVn5JdlORZKlT4VUS1AEPmacp+XFjKxzatyI8xsnIQix3D7RpsFug==
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)(230922051799003)(186009)(64100799003)(451199024)(1800799009)(53546011)(6512007)(6506007)(86362001)(4326008)(5660300002)(8676002)(8936002)(38100700002)(54906003)(66556008)(66476007)(6486002)(66946007)(31696002)(41300700001)(6916009)(316002)(36756003)(478600001)(2906002)(31686004)(26005)(2616005)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?MmJaeVZpakp2N3poVE9hQnNxM09Qb2NRdmlkSDE1V3EydVpDaW4zZFlsNCs3?=
 =?utf-8?B?K0tOUWd4aWtmTFVrTnVBME5aMStjeEc5OThMbUQwa3Q3a0FzSXhTaDdoSzFo?=
 =?utf-8?B?NjlYVGtMZE5xdGUvUW5qUGN1cWMxaFVsWXVmaUxJMHJBeGlBZFlqSnhjRHRm?=
 =?utf-8?B?Q1JFdXdtOEdHY0EyazNxYklnWFhxMjQyZiswbUYzMStoSGthY2M4QVA3c1R3?=
 =?utf-8?B?Tnh6amhGaU9qWUdJSjUxT1R6WTRENkxBRjFNS1IwcDRQZjh0K2tzaWl5ZGVa?=
 =?utf-8?B?cW5RdGVSdGw3K2ptbDhhaXNhd1lrZFVhVHcxV1VKcnJqczhaM21nNE1HSGRy?=
 =?utf-8?B?dU9yYUFsS0FyWkVnM1NwOU0wNllnVnFWRG5EcW9tZnNpVnhRQ3hiNXRGYmdP?=
 =?utf-8?B?a0VyNTJuTFFzS3VHWW1PUUpFMVF3Ujk3bXVwSHNnb1Btb1RVN1ZZTHQ3cmFl?=
 =?utf-8?B?c1BONno2c2t6bEEva25DZ0JzS003L2dwdGpBVFozeXN4UW9Ga3RUVTMxNFhP?=
 =?utf-8?B?OEhwckZZcC8xQWhYZHFnZHhxQ25sWWhNaDZ6eVY3VWZNWlpOVUNqZGEzRGxX?=
 =?utf-8?B?RFZXLzZDaVFoS3hEakdIekJldTRpMGZvSExid1k2a3RlUHgyMWUvTkV5T0pK?=
 =?utf-8?B?MkR2SmQxb0JGd0cvamtOdE5DTWZKdW5Wcnd1emZNU1FzaXIrMjVTRDdjQ1or?=
 =?utf-8?B?VFFSeW5VMTA4Vjhnbm5wNHFOdkdONkR6UFJCK1JtYWoyUHZpejE4dUN1dXJE?=
 =?utf-8?B?eEdOZGdKUUMzWjlwZHMvSnkxQ0gzdzA0S1BEdGVKU21rUHd2ZXBOcXIwR252?=
 =?utf-8?B?UnR4OHliS2xYYWczQldZYjhaUE0yNWRuM3hRdUZLd2NyVmhWS3JvcHdNcHRw?=
 =?utf-8?B?Mm9BdnROM3BBY0NqMHJxWmtDdUpKK0o5eDN0Wkd2YmxnTFpwWnAzbzFyeU1h?=
 =?utf-8?B?NG45dEluWVFlS3NGR0s4WVBOUzFtd2UySlM3UlJ0WU1wMG9yYU1WbmFCMGJj?=
 =?utf-8?B?VkNQVkhkRXo5dHZvU2w3cWhzVW1TSzkrVGE2bERvNSt2blQwVkxoVXpCSzF3?=
 =?utf-8?B?UUpyZ1UwMlFTT2JFNUpBL0tkbHFlOS93VnhxWG1QR0lRMm5LVFNqQ3kwb3Nr?=
 =?utf-8?B?alNtS2ZsVzFJaUJOQnpZbVR6ZG1uMGd3QmlIaDhoYUFUYkVqNnRjbU1XTm5Q?=
 =?utf-8?B?dWVZR01zTVA1MkdhQ2lITG1ycHRRcEFwWmY2ZlJBdG03QU1IS1dtcituMTV2?=
 =?utf-8?B?ZHljQkt1QW9ZVjRDTnRzaEZRQmo1MjBuQkwyTitIekt2Qk9DVEMvZUNOVS81?=
 =?utf-8?B?d2Z3TFVzbHorRUZRZHBBdU1JVU84VXJoMkcyeEt6dXByTkg1Q2RLalFpYSts?=
 =?utf-8?B?RG1ETnB6aDlHNi9zZW1uajRWS05VQm5jbkUrRlJXUzZOS1NuNElYOU1PMnJP?=
 =?utf-8?B?eTlFd0Jid1pZQ0dCTzZUVHR2NnJmd2NUMlNDdFNpQVVDKzkyWDJMdU1MMGxD?=
 =?utf-8?B?LzUvUkdrWHFhMVI1NW8yUU12Vm0zTlpCQU5wa2RPUHphd2p2NmlnL3laeEtz?=
 =?utf-8?B?QmlEcmZHYXZyc2ZnWGhzRTYzOUFTVWxQYUI5eGxyenZKRmxLN29YblZMRFBz?=
 =?utf-8?B?OVhDWEFZVmhCWkQ2YXVSdDcrOFFxblJmZW1Kc0VmOWJJVkpNZmFJSkttNWJr?=
 =?utf-8?B?VWIySHlHamVVRGtsQjlkNFI0N1dCWUxnZXRROERuL1BpbUMwUUM1M3Ntd1Vu?=
 =?utf-8?B?SjY2K21UODVlUDI4SUJZcjBRaUd0b1daYmczQ2JlODZDaGVTWnArd1IyeVNK?=
 =?utf-8?B?QTVvc2h1TEt3Tml5K3d1S3plbVBNSFdIS3l3TlFCSDJJWFFCNFR4djcySmtT?=
 =?utf-8?B?Nnh0bTlkcGxXdTVqM3czZzhJSkxBSlpHVno5M29BWHVuSDEwdTRnV05RcEt6?=
 =?utf-8?B?RUdvb0hhSmVBWk4ydHJFOHpETm5rQjdSdlJZL0k2L20vZGdFVzJUcEEwcXpN?=
 =?utf-8?B?YVhhQkErRnlvUUVEcTAwRnNNY1h3ZlZ3SkR5bWhIcUtCS3FrL3Nub2JKbHZk?=
 =?utf-8?B?K3g2QU5LYy9IUnhhMWsyUG5Nb3hTUDRONXBjRk5JdXl3ME4yL0pVZm9ML3VJ?=
 =?utf-8?Q?+pBIJv/2aShsVmoYRsKpmKeh5?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 4b69e7af-a474-4245-4c8b-08dbd617baf2
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Oct 2023 11:36:01.3526
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: dOkPwgI59n/nImjBKoz2HdKRMeLH8IF/2bR4aIhf7cHISWhvFCGQQzo3k2o74kzAstsm5PTNuKSmWB1aHJLHiQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR04MB6830

On 26.10.2023 13:10, Andrew Cooper wrote:
> On 26/10/2023 8:55 am, Jan Beulich wrote:
>> On 25.10.2023 20:06, Andrew Cooper wrote:
>>> We eventually want to be able to build a stripped down Xen for a single
>>> platform.  Make a start with CONFIG_{AMD,INTEL} (hidden behind EXPERT, but
>>> available to randconfig), and adjust the microcode logic.
>> Linux uses different names for the Kconfig symbols. While I'm unconvinced
>> of the SUP part, I wonder whether we wouldn't better use CPU in the names.
> 
> I don't see what that gets us, other than a longer name.

Just to mention the (I think) obvious - on the IOMMU side we already have
AMD_IOMMU and INTEL_IOMMU. It would be odd to have just AMD and INTEL here,
yet then ...

>> One immediate question here is how the IOMMU interaction is intended to
>> end up: Do we want to permit either vendor's CPUs with the other vendor's
>> IOMMUs to be usable?
> 
> From a randconfig point of view, yes.  These options are only targetting
> a specific platform, and we can absolutely make that the end user's
> responsibility to describe their platform correctly.

... <vendor>_IOMMU not depending on <vendor>. Whereas the lack of a
dependency on <vendor>_CPU would be quite natural, imo.

> The more interesting question is perhaps VT-x and SVM, given that VIA
> have shipped VT-x and Hygon have shipped SVM and AMD-Vi.
> 
> I do specifically want to to integrate the HVM setup better with CPU
> init - KVM dropped an enormous amount of complexity by doing this - but
> I expect we'll end up with VTX and SVM options rather than using
> INTEL/AMD for this.

I'd certainly prefer us using VTX/SVM (and those then having dependencies
on the main || niche vendors), with the caveat that SVM also has had a
meaning for Intel for quite some time, iirc.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 11:38:00 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 11:38:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623737.971870 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvygY-00021K-Vv; Thu, 26 Oct 2023 11:37:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623737.971870; Thu, 26 Oct 2023 11:37: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 1qvygY-00021D-T4; Thu, 26 Oct 2023 11:37:58 +0000
Received: by outflank-mailman (input) for mailman id 623737;
 Thu, 26 Oct 2023 11:37: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 1qvygY-000215-A1
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 11:37: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 1qvygS-0001er-DB; Thu, 26 Oct 2023 11:37:52 +0000
Received: from [15.248.2.156] (helo=[10.24.67.24])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qvygS-0003cI-7S; Thu, 26 Oct 2023 11:37: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=jAGBloAIoaVnzf8WqQCcDlqvJR+qjbzYPjlP0ORrGTE=; b=ng/tWbNE9/css9AUwUyrt7xSrf
	qAGkOprUSHyFn4MwZtS7AYxTkwl3clUNKBT/GuU91LBMDTDE4nrr5qvstdQUAGKmvGn0ntgtuiXRy
	4LJBJdyLHe6iUVQui+/8M0LfAQp1heBqWlJ/jt1P0LnRRkLV+rHRV8TbmJpIx8uREuAQ=;
Message-ID: <36a3412d-cbe9-4fc7-af6c-db0206d56333@xen.org>
Date: Thu, 26 Oct 2023 12:37:49 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN PATCH][for-4.19 v3 1/8] xen/include: add macro LOWEST_BIT
Content-Language: en-GB
To: Nicola Vetrini <nicola.vetrini@bugseng.com>,
 Jan Beulich <jbeulich@suse.com>
Cc: Stefano Stabellini <sstabellini@kernel.org>, michal.orzel@amd.com,
 xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, consulting@bugseng.com,
 andrew.cooper3@citrix.com, roger.pau@citrix.com,
 Simone Ballarin <simone.ballarin@bugseng.com>,
 Doug Goldstein <cardoe@cardoe.com>, George Dunlap
 <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <cover.1697815135.git.nicola.vetrini@bugseng.com>
 <546cf30aa43d6d0687a9a6c6d23b11128e5783e8.1697815135.git.nicola.vetrini@bugseng.com>
 <f504772a-68b4-fbfa-e7d4-8d22992c7944@suse.com>
 <f23a1f95916bd61ddcd5002428d8876c@bugseng.com>
 <6d113a237846c7a41aa083e806f172e7@bugseng.com>
 <5475d9e5-ec1c-7f71-ee77-59ec2e6ee01e@suse.com>
 <alpine.DEB.2.22.394.2310231340320.3516@ubuntu-linux-20-04-desktop>
 <dd33e92f-03aa-cf3c-23d7-dcf9cce23c8e@suse.com>
 <2f88afb2383b5fdecf83d311ebe69bb4@bugseng.com>
 <96dd7efb-c214-2155-c5d1-3b9a47c10d33@suse.com>
 <alpine.DEB.2.22.394.2310251537460.271731@ubuntu-linux-20-04-desktop>
 <3cc22b2d-fbcf-899e-1d7d-036a53bd0f7f@suse.com>
 <ff395b4eab2e79a901516e0958647f8b@bugseng.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <ff395b4eab2e79a901516e0958647f8b@bugseng.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi,

On 26/10/2023 11:32, Nicola Vetrini wrote:
> On 26/10/2023 08:52, Jan Beulich wrote:
>> On 26.10.2023 00:38, Stefano Stabellini wrote:
>>> On Wed, 25 Oct 2023, Jan Beulich wrote:
>>>> On 25.10.2023 16:50, Nicola Vetrini wrote:
>>>>> Ok, I'll send a revised version using MASK_LOWEST_BIT, taking into
>>>>> account also the
>>>>> other comments about the explanation on the macro definition
>>>>> (which some IDEs even show when hovering on its usage, which could
>>>>> partially address
>>>>> the latter concern).
>>>>
>>>> You're of course free to do so, but since - as indicated before -
>>>> MASK_LOWEST_BIT() imo isn't a better name than LOWEST_BIT(), I'll
>>>> continue to object.
>>>
>>> Jan if you are OK with that I'll ask Julien to break the tie and pick
>>> the name to use. Julien can you please help us move forward?
>>
>> Hmm, I'm having trouble seeing us at the point of breaking ties yet.
>> First we need naming suggestions which actually unambiguously
>> describe what's being done by the macro. I gave one suggestion which
>> I think fulfills this property, but is a little too long for my
>> taste. I gave another suggestion with a far-off but shorter name,
>> which I can appreciate isn't liked. I've not seen other suggestions
>> fulfilling this base criteria.
>>
>> Jan
> 
> Any name is fine with me. ISOLATE_LOW_BIT may be longish, but the macro 
> would be used
> in just a few places for a specific reason, so the loss in readability 
> is probably not
> that high.

+1. It doesn't seem we will be able to find a name that 100% fit all the 
criteria. So of all the choice, my preference would be ISOLATE_LOW_BIT().

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 11:41:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 11:41:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623743.971879 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvyjr-0003Yj-Gd; Thu, 26 Oct 2023 11:41:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623743.971879; Thu, 26 Oct 2023 11:41: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 1qvyjr-0003Yc-E3; Thu, 26 Oct 2023 11:41:23 +0000
Received: by outflank-mailman (input) for mailman id 623743;
 Thu, 26 Oct 2023 11:41: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=hFWs=GI=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qvyjq-0003YT-J9
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 11:41:22 +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 95787f05-73f4-11ee-98d5-6d05b1d4d9a1;
 Thu, 26 Oct 2023 13:41:21 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PAXPR04MB8687.eurprd04.prod.outlook.com (2603:10a6:102:21e::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.19; Thu, 26 Oct
 2023 11:41:18 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6954.008; Thu, 26 Oct 2023
 11:41: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: 95787f05-73f4-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ZtgTW+sJkdrKGe1iwPCkldIDQRXIrjFEUkcAKQ3k3yQoHd4bIKDjU4mHbJzgrLxbvsRcilj8I1YSM/dD+HYaLyyD+4E42K7oVxftoTHG7RcO7uJuIK65nTtbPFjgZb/UA5kiDOoo619/0tW7thJWu23pr7psYh15lnDK+yjav2U73wtYCwx2bjxgqo9khnpE6vEgnkatub3CbvJJZevgfgSACiyFAvF6XnT7enlFYmPHipwOZNM8PzwfzojWB/5tDYoLMxC5EIH32VtVnKLJYZjC1ANLnQj7/o6JIdn5pnZxNdXXkSRp9u5jDpg9BbNZtwY3GiJfoy6RpzId/MThTA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=hcaA5TvrO/WTLESNjnkEpRqG2ZVVTL9yiPwmp9Cf+Yw=;
 b=T5cvBm9lIpxl+lIirvRPyf72BGqckimyyXbgOHkt+TM2UzA/wSJMV30WAV7XYa4At02ElEG6rzqYaO2CpxbU8v23VxyJ1GIk8ay20T/SG4ie0X9yprYzYAScce9jcXv8cqcg9/osgN1vRGI2h5jjmYjIOyzgbxfXCvhjCrkk4BATq2hyH04xpy+a6Q5uNpx/HOy+763VfqnUcKJqCqWzg6/ofczqOJTTmLDOZCkjy7f4v0fFGXPL7LRgSAdgvxayxU2ADe7JpjLSUdF03+mgcwOz2cZkJynoqLSjVijaR/bWHLIypFfMFmmVX/3wZmkNw/XdFMYkR1WxCu9s/DA4gw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=hcaA5TvrO/WTLESNjnkEpRqG2ZVVTL9yiPwmp9Cf+Yw=;
 b=ufgw24DVyu5XsNx4ZYx5Glb3cRN61l08gk/Rpy9XBlTq/oZzr6FsvELBS3iTK+VkP7lMru0di5hNtCdPM8ApnX6lWuc7BZE2mRV6WfFh8wr0mhzw+gzJgIZqz1/HhdRL7+5tyBLERC/v190QiKUh8OvIU53xf4MfCxL0OBNtFim1QywLDfQ78nrlY/F0A844nnqc7xcnUBJOXi+iW7imcJ59sWDW+8jmCfUu2g8elEwaT0UWlRtP++2jo5CUcTaiZ/Ip0pmriIZiX4W7mjRPim6G2yKxERqh5UWL+df1XzUXauEmsgplgAOTAiehQO9Kg1OovWNIlQXbrorskSADEw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <84b6679c-1956-4c6d-1fbd-b72846b69d1a@suse.com>
Date: Thu, 26 Oct 2023 13:41:16 +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/hvm/dom0: fix PVH initrd and metadata placement
Content-Language: en-US
To: Andrew Cooper <andrew.cooper3@citrix.com>,
 Xenia Ragiadakou <xenia.ragiadakou@amd.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Wei Liu <wl@xen.org>, xen-devel@lists.xenproject.org
References: <20231026064543.43369-1-xenia.ragiadakou@amd.com>
 <ac7e9bac-6d74-a5bf-d703-3c5455e581ea@suse.com>
 <7712c60b-4f89-483e-89e4-7ac8f4d0311e@amd.com>
 <cc4c6681-a788-4069-8470-730969018fd0@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <cc4c6681-a788-4069-8470-730969018fd0@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0180.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:b7::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_|PAXPR04MB8687:EE_
X-MS-Office365-Filtering-Correlation-Id: 068c3cb0-64ac-42f7-d50e-08dbd618781b
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	ofB5O6UIe88XQIl2Vtai0FJh5h+eUevE0R0JARihmyBzcirRg1/rfJUGHj12CELY8rM+3ZVBrOGBYzEWlE/os+jhqI4pFlmgNcw5Qh+BwdDT+WbD9l1JlCmyHi5wa5mITu0HlPXKj1KYx/DB4YC2MNF5xZYnnIf/sc1TgvMBiqA/xQdwZ0LPruWsJ4kxT5U8kFVzbl/Fhb1gqajkTxkkKr+wS+9/TngB3iWdKw+kMuMVUu7Wdr3OIxM1v4jvR70tHk6xC3235ULZb4FKS1RRpH/0JmiVPUB5oUkNtYUiFugz/CCaNv1mEk9j7BUmj8n8sZswKhkTQf/TSTETBguFs9dggk5f5+nAXs3TCYjqLtc8ylNUJpYdnhjO8TuutjOGfW6w1lZiWOZstjCzrH38a6SvOVbLN0+VJBnC+KURl29nZftp1bj29+gNRPAEGr3YTZBz4kiZCXOg2WBplOnOHSbUy6t3jmr0X+NkEPTU+UXmi+xgaOVpmgT137i2rnBsDvBkOXp2BO0RMGv6hlue3EtDMc1KFeS0INvnW3rTFBunOkhYmYulEs5kAq/jEQfBe3+lLTLSDmWjH2XclQcdevxQoIUkbE1AZMf2mxEGFOS5yea0ZqJR88Ivyty5iZoINrNViDIBU+HZYYrUpuNzrw==
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)(39860400002)(346002)(396003)(366004)(230922051799003)(186009)(1800799009)(64100799003)(451199024)(41300700001)(53546011)(478600001)(6506007)(66476007)(2616005)(54906003)(66946007)(6512007)(110136005)(36756003)(31696002)(86362001)(6486002)(66556008)(26005)(38100700002)(8676002)(83380400001)(8936002)(4326008)(5660300002)(316002)(31686004)(2906002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?NmxKZGJiRkIweUR6NUZGS3JyQnhaYUFHV0t1bkZpVHBBUFk3YzhjKzVQaXAw?=
 =?utf-8?B?K082ME5rQnlYT1lGWnZKVEkzNE5lWFJJQmNrSmJzbjVaL2pvUGsxWjVVWVRM?=
 =?utf-8?B?YkplM3FZOEtCelhSZkNSNVphbmRjcE9NTlY3eVdXT2o2OXJVbVY2dzlEYlB3?=
 =?utf-8?B?UG0ranA4WmNNdzZSUHBySGU4NjVXSSt5MU5JbHA5OWUxajNNSGdOeHR0QmNz?=
 =?utf-8?B?UzRxOWppRmtPVy83c3JUb0FUbXZSUVVyRUo2a2FBdzlqNzRRb2xaNUl1S1pB?=
 =?utf-8?B?aEJhMi84cUhaemFnZUZ3VzhkK0ZaU2EzZUlncURpTGMvQ2l5N2VaM1NYUHA3?=
 =?utf-8?B?a0IrUUp4TzA1QzVIWEk3NmFCbzFjZldHWUc4YUN1ZSs0SlpQajh4dmkrdmVy?=
 =?utf-8?B?ZjJ2UmpzUlBzeWxuTFpEcTJINGc4TnhTeUEySVlUd0paWnN6bGtxbnhwMkdX?=
 =?utf-8?B?STFCb2xKaTVFZEQ2VDhKS1FSTWhNdnFsbWtpUFkwMmEydThnSmRMaHZNNG54?=
 =?utf-8?B?eWxNeDFSL2w1UCtvSjVDL2VQZ3Bmd2hlRzFlcSt5dXorK1BXakFmby8yeHhV?=
 =?utf-8?B?ZVBRcDlTNUorUGswZEpZbkprNVNvSVhFK09hYVpuZnhBVE5HV25TQWo3bk5x?=
 =?utf-8?B?SkpLRS9KQ2ZMVy8rQkpzZmE0MG5OU1cvWXBrMnpQVnhINXlQc2UrT2FMMVdL?=
 =?utf-8?B?c29UZTZNTEY4aHR1eE9pK1k3WlRWQm02bW5jNnYvcHFubVNlZFZSTU5oTkpk?=
 =?utf-8?B?d2dUMEZuR2gvS1RwUXRtS25SYUxnOWlrRG9jL0Nqa2tMN0RsQ0pHTXViVm5W?=
 =?utf-8?B?ejF5NGhYb3dZQWtOUHRtS1NqVXI3TWsyeTdBdVRCS3MybWJ6ZTJSU2ltcjlx?=
 =?utf-8?B?WU5xRkY0Nk1aSUQreVI0K2ltQ1JjS0pZUHRMQWlpeHJjZExRMWFUSHYyTkZp?=
 =?utf-8?B?OXg1c2dOM1FhaHg3dkw4ZTZrcGN2a3ZWZTFkdGVmN3hHbURCenFzdUFzYlhO?=
 =?utf-8?B?OWJSYWdacUh5VXZFM2pkdGRqb2k2SmdtSTJ0dy9Wdkk0aTRCVnJVdmx0V0h3?=
 =?utf-8?B?TUhyRElCSlh4ZU9FZjhvdXlJK1p0cDBLb2JCZGgzaVFnU1FoTUtDSC9pc3Aw?=
 =?utf-8?B?OGc5WHViT3VLVko0K09hZEFBMGpmK01oSGltVDEzcXVmME1tRkhOTXZ4czgx?=
 =?utf-8?B?bTJLeU42TlVieGl1WlpPSVY3ajZQcXZhMWR0SDJHdU16bGdBNzd0Ry9zVUpj?=
 =?utf-8?B?R2FhbzhPRU1XT0h3RERVSEpQUDdrd1VyOUloY2s1L2plYm82eWhiSWdxaDVh?=
 =?utf-8?B?RFdNb2xSTnZrT2poRWV3NGpjbTFUMHNuVGRsZzgwZThSbnRMQ1UxOFBvY0lZ?=
 =?utf-8?B?aDk2WEFUc3M2UW1DM3Y1ZmxiaHZJaGpWcHE3a1h0dXltNldQb0h5VnZjdVkv?=
 =?utf-8?B?SmhFMUYwaktsdzAvWVU5SURLR1dKUlYrZVRsdWNNYm94cFNpbDQ1ZG9xMXZw?=
 =?utf-8?B?WGFMejZUY3YzZS9nZ1RRRmk0TEtORExJRUlDSUIvV1lsM292Ylhac1pTQTV1?=
 =?utf-8?B?S3dhMnZsekNVNGFWaVhQSDIwRUNBa00zSEVRT3Y0L1FlN3YxRDhkNkN3UlpT?=
 =?utf-8?B?aFdPNUxmL2tUMWc4a3ZKRW51VDZzV01IYjcyQTdzUVlmd2ZFTWpTZzhLZGRI?=
 =?utf-8?B?M1hYS1hhSUtZUk04YTNMZ01kQlpyOWtpTWZibks5ZHVrR3pycUpxeWU2eVRF?=
 =?utf-8?B?NlhDNXYwdmdXQkpBaW5IYURwdDN2cWJUVzlIK1k4bHNNcnNyM1ladEhFeEJn?=
 =?utf-8?B?eE4xS2Yxb0dHSC9GeFJnUW5JTzU3dDJhR1dkd3lleTdqaFVWTGFmR0xTTmpP?=
 =?utf-8?B?TFErZGM3eTJsNTY3ODZmSm5QZy9GQUlYQ0orcXh6RmFyNjhRZEZXdG9rTmF4?=
 =?utf-8?B?b0FWTTFydHlPQnFBT1huS2tzTlRGMDVlTGlGQ2VyaG0yNjBVYzkvUStVcWFF?=
 =?utf-8?B?YkQ4Wk83QUZZUVA2N3V0a2p4UzFmQSs0TmFhM01RR3ZFUHNXd3VtSjMvalFW?=
 =?utf-8?B?NEVMZEgvdjNIbDVYaXRGMHhiUERqTzdxTkdLUC8rM1VnMUVNK1RUR1p4bUFa?=
 =?utf-8?Q?D5Wui/jg8oi9ZsvFWKZLwNX/g?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 068c3cb0-64ac-42f7-d50e-08dbd618781b
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Oct 2023 11:41:18.7144
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: zjEUc4x0t4p31lnzplK7v9DUT1FFcjg9ZwNQLXuSb6D7eA0+G1+zuY8OnzNDmYTdLsIf7h2XcoKa6pD6kDU1dA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB8687

On 26.10.2023 12:31, Andrew Cooper wrote:
> On 26/10/2023 9:34 am, Xenia Ragiadakou wrote:
>> On 26/10/23 10:35, Jan Beulich wrote:
>>> On 26.10.2023 08:45, Xenia Ragiadakou wrote:
>>>> Given that start < kernel_end and end > kernel_start, the logic that
>>>> determines the best placement for dom0 initrd and metadata, does not
>>>> take into account the two cases below:
>>>> (1) start > kernel_start && end > kernel_end
>>>> (2) start < kernel_start && end < kernel_end
>>>>
>>>> In case (1), the evaluation will result in end = kernel_start
>>>> i.e. end < start, and will load initrd in the middle of the kernel.
>>>> In case (2), the evaluation will result in start = kernel_end
>>>> i.e. end < start, and will load initrd at kernel_end, that is out
>>>> of the memory region under evaluation.
>>> I agree there is a problem if the kernel range overlaps but is not fully
>>> contained in the E820 range under inspection. I'd like to ask though
>>> under what conditions that can happen, as it seems suspicious for the
>>> kernel range to span multiple E820 ranges.
>>
>> We tried to boot Zephyr as pvh dom0 and its load address was under 1MB.
>>
>> I know ... that maybe shouldn't have been permitted at all, but
>> nevertheless we hit this issue.
> 
> 
> Zephyr is linked to run at 4k.  That's what the ELF Headers say, and the
> entrypoint is not position-independent.

Very interesting. What size is their kernel? And, Xenia, can you provide
the E820 map that you were finding the collision with?

Jan

> So trying to put the binary anywhere else is going to work about as well
> having the notes section misalign the pagetables by 0x20 bytes[1].
> 
> ~Andrew
> 
> [1] Guess what was causing the "Zephyr doesn't boot PVH" issues.  Which
> is doubly irritating because about 6h of debugging prior, I'd pointed
> out that the linker was complaining about an orphaned section and that
> that ought to be fixed before trying to debug further...



From xen-devel-bounces@lists.xenproject.org Thu Oct 26 11:52:08 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 11:52:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623747.971890 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvyu7-0006Xs-Eo; Thu, 26 Oct 2023 11:51:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623747.971890; Thu, 26 Oct 2023 11: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 1qvyu7-0006Xl-Br; Thu, 26 Oct 2023 11:51:59 +0000
Received: by outflank-mailman (input) for mailman id 623747;
 Thu, 26 Oct 2023 11: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=hFWs=GI=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qvyu6-0006Xf-Gj
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 11:51:58 +0000
Received: from EUR01-VE1-obe.outbound.protection.outlook.com
 (mail-ve1eur01on0605.outbound.protection.outlook.com
 [2a01:111:f400:fe1f::605])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 10179cc8-73f6-11ee-98d5-6d05b1d4d9a1;
 Thu, 26 Oct 2023 13:51:57 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM8PR04MB7891.eurprd04.prod.outlook.com (2603:10a6:20b:237::15)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.19; Thu, 26 Oct
 2023 11:51:53 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6954.008; Thu, 26 Oct 2023
 11: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: 10179cc8-73f6-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=FPAl8pORgYKSm2nqC8pLfkA2flEd9BTCdbJcFVxLdLZKWqosIp3BkaoM9vvkCr7/OP6ZEcTPYIdS1BjUfio19LliKunysEKNvvFiSTrxOPe0ixnK/w8xFRlDLClMttCRlnb/RzwJv8FB+qj5yDlroJuLmdvkaBr0V2rb/48aT3shp5qHm1NAUAsFSfuk9g86yeg8gEBU6/Y1/7qSnV/1fyusqMFNsyInsF41s37724Cg3ifaj5m2rJiPJCJY+OWW6FoNGnRrLnnaSYP0j5ZrmYqVFt+YYZ0OmB1MEbhIxzqUBCZUltp50xVC59o1ur1MwZMKBs6qySV7/exabjw3/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=JfcuZRtPsYSUnyW/22vNJGRa0kD7hx/z6RqcxLhjiOE=;
 b=i1YVgKNvFljK4zTEQdC8OmQvuOiDe2Egpt1QWyFDacfEvOuDtz1wFCjetc3nS6KjWrXL/IzIX7ouTlheCgtL2d+G5w4Famxd6CIlLuIOvaU6SjGgOa6h67N2dCHsZXIbSqJaQshhrTfsBU6Hb9ckYSLCb0vMXoe9Sjt7F8FR6L7AWtQewnSGSAcZqQDe+axB7FXnyXAiRCO/Gv4cuzkjHcmZY/r+pqNpT9C+pE5t73hJW4L1I2xQnImpImHGoEC5qoF8OFnK0WkfwhXMhl0KTaEEe05/U/Kax5wwoxtGEmBow+AShsCGvGFoBOONg4LkUI3hnledqD1mzwuJDyGERg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=JfcuZRtPsYSUnyW/22vNJGRa0kD7hx/z6RqcxLhjiOE=;
 b=uZoLAoRhYs7Yi4hlPy0PcG7ZGAHAhcqN4x6wQ50l6TJCmquX6FKnZNkbOPjba4ARfe82JcP6ch+hmkWEgFGLEIJ35VmcitQazPzaclzo20VzPURbEy+VnyJaqh5mLh2f3bwLf0F9OxW8mcvrtuCgi3Qj5FCy6/IAPdN+uALPP8EEuImbg7hdeF/2+nLfIuRb6avghoF7lVl9AuZD6nOFxb8c7BKFBiYtsSkXaJcRVg7yaGpBjTeqvM/QMIAVsYhJ2tNin2I+0Fnenmt8L/IitQ0ntaB5kx8zr+/8koXF70SWZZiLCXdPlZUlogAUaU6Ozf78gEzMXchdVDlM7xg80g==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <c81a8275-ecfd-7598-c119-ed83b156c0e5@suse.com>
Date: Thu, 26 Oct 2023 13:51: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] x86/hvm/dom0: fix PVH initrd and metadata placement
Content-Language: en-US
To: Xenia Ragiadakou <xenia.ragiadakou@amd.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>, xen-devel@lists.xenproject.org
References: <20231026064543.43369-1-xenia.ragiadakou@amd.com>
 <ac7e9bac-6d74-a5bf-d703-3c5455e581ea@suse.com>
 <7712c60b-4f89-483e-89e4-7ac8f4d0311e@amd.com>
 <809115b1-2a47-583f-2d04-72a5a21ee7da@suse.com>
 <c107d63c-25a3-4f17-a5e8-7ec3ccd94ce3@amd.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <c107d63c-25a3-4f17-a5e8-7ec3ccd94ce3@amd.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0078.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:9a::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_|AM8PR04MB7891:EE_
X-MS-Office365-Filtering-Correlation-Id: 8fa71924-57e9-4a9b-0a34-08dbd619f298
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	xXkcg/V/3vXAXaZGOrw4WIFnliUcWEUJh7L99wlt5q/7rpPKmpRrdMDYyUOx9C7iNdsgeK5UqPPKZ8sTxAuwrIOVW84ANZNJmmKtGcDuqc3RKtYagtc5x0DmrJ6n+DyycALH/F0VcOvcLVFUEC6T1AzTIKQ7tp08RvbYybMo+aEk58u1Agkwez4ybk1egQXHMbruSnojfvzpntSU1R7MS+2XT3lPPSo4129KsskrL79wI/vKJxvjZudWhTKxOR0hs6G88gMr+GD6A0Eq1nsNYB9xsAB6I/WwItgJxqh405pTUdCIwoa+oA0HydyhgoA1K7MSyp+7W8TpOO3/wRq1EfWdeizXMGwha0Q8ae3NH/Ma6KUsBlZs2ERksTEyylMrMcECahlLzHZm52x6+Iw6TeyNmJZwLvH0ots+q7MI1DGivjMuxqzUdGz97cX9bJUChUOHZNQ3GY4iem9WT3QF0uKLhzfrhXY7m+rvS4UtIeAqTkMzUwGtL+YkIW5HVG+chfl09zOdKmhxJJTuFkab9XjAwKD0u47oop/a7xAggrEXaR+i5EUb3dWMyEo9FVK6k3IDLa+dgx3C+ZQNjq9FuBz6ZmEueLyZhy+w2+6gGGTBcGlFD4Ek0nSH/fX94/lpc5KkaRpPhRCNUFtOZxFoDQ==
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)(230922051799003)(1800799009)(186009)(64100799003)(451199024)(8936002)(8676002)(4326008)(83380400001)(316002)(54906003)(6916009)(66476007)(66946007)(66556008)(6486002)(2906002)(31686004)(41300700001)(5660300002)(478600001)(31696002)(6506007)(66899024)(86362001)(6512007)(36756003)(2616005)(38100700002)(26005)(53546011)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?d2VRNnVDTDNYNzR6NWlYWjNhNnJ6T3FncXRIRm93TlFLc0tjSmQrcUQrL2tX?=
 =?utf-8?B?ZmU3TjdrV0E3NWd5MFNZUW0rOXQ3MTE5dUNNcDRRZUNDY2ZDM0lmcHpxZjJG?=
 =?utf-8?B?Umx0YXkxdE1lK3ZEeHBxTFNxb0VpNU9Nc1RtNzhodVpITWRhbGxYSXdHcFFx?=
 =?utf-8?B?M1BZZ3VVNU51a3E3NGdCeFQxd3gvV1hlbzdISGZhUURsaEhCdytxYURrdmFs?=
 =?utf-8?B?S2ZCYUV0bUZod0YvRzZnMWxZdmlNaGp3VEl3Ukt3R3VpZVNkNTJhVERkKzNW?=
 =?utf-8?B?QVpSQTQ5RDNQazhnZTFkZ1BYWWlWemo2OGg4eHVKT1d0WVJ3VDJlUS9qL2gr?=
 =?utf-8?B?SkFYanEvNmV5MzVMOUhneVA3dFlhYTIycUkzczhUb2tMNUtsSWdhT1hDSHZy?=
 =?utf-8?B?bWErdUVLTUNnNW1aeGpkbmZyRjFZQTBXL3d4bEZIbW1qY2prU0d6U2ZqUWJB?=
 =?utf-8?B?cTNMd2ZsQzd3dllKS0JpQlN1c3JhUTlZVmUxR3BBT25BWUFZUEhDeHExd003?=
 =?utf-8?B?ZDlBRTFiVGFmM1h4MzZZRmZaZXdZMnBqR0VTVjA2VFdKZ1NWOExHTndJdHhB?=
 =?utf-8?B?WEJvZHpRZENUU2RqNW5Hd1lGcmdLY1c2d09BSW4rRUJ1RVZOOGpzalJaSERI?=
 =?utf-8?B?emhEeGhoajI5Q1JpbHhlR210aVFvSk9iNkVxRE10S2ZPSGlOeUxQZ0ZEakxv?=
 =?utf-8?B?dndGZmdqU1ZKOWdYeTZvQ1NpdGdMZHFVWTlpZjhRVUJyUGZIN1RpbjMxR3NN?=
 =?utf-8?B?WGJzZEJLSldBQWQyNVRYcklqdUVDRGhvb0haT0JEWnRVMmhWWW1oL3Y5ZDdh?=
 =?utf-8?B?TmpEay8yQzgzWFU5Ky95SnUwOUFZK3hvbVBQQSsrU3JFanNFUUxFSEU0RU1y?=
 =?utf-8?B?b01DQTR6STZRTnptS252aENWNjVxa0J0WmV4Y1B5YjgxczhtQU9uOUdKZHov?=
 =?utf-8?B?RGtWRXBhMS9sWk01OHVJRzdxbDQyc2lkZmpPUnpxbmNDUzBlZCtiT0tDc0t3?=
 =?utf-8?B?cnlMckFLZGdwbHdzMU5jQ1dqa280M00zbkU3M1U2Zmloa0ZMZnVZWTRWbVdj?=
 =?utf-8?B?LzNnRmJmeXRwbC9aQUZ0MTJNcmxLUmhUV0ZaZlBXT0lKdExYN1JsUFN5VjQr?=
 =?utf-8?B?emhxOWl6czFtN2Z5MnlPZnBMN1AvWTVMSkN3M0NtTHZvV0pkbjJyQW1GOXRy?=
 =?utf-8?B?WlptYWpMZjcwVDFoYm5KNFNiQkp5MHQ4Zy9xWjZMUzdvU3JJb2o4YXV6bUl6?=
 =?utf-8?B?d2FFb0JGcUgzem54amExcGRDSlQvQjdOWkdVNitQemloeGJsZTkrUC9NU1ly?=
 =?utf-8?B?bUw4V2FmQUQyNkFFVDVDbUk0K0dGZnZ2NndDRjVXTUdMc2c0NysvYkRPV1lu?=
 =?utf-8?B?NlJnQ1FCNjkxS0pJQ1BkVEt3RkJlL0l2S3NYYTZ0cUd5akJvVFhoYzYzTWZN?=
 =?utf-8?B?ZEdMeWV3OWtOTHdiS0s5K1dRd0pPL2hSSEVFbE1JOE5SNEwvelZySzV0dnNu?=
 =?utf-8?B?QWlDUFBXTHNBRXpCWlREcUI2UmVyWU9wTTQvQ1lLME5NVytIMkJSK0tNMkg0?=
 =?utf-8?B?K3VlT1FzbGR5UnJkTm1JNHZnY2ZmRjMrNXZqR0pwQzA3Yi91ZTB5OGw2WG4v?=
 =?utf-8?B?ajlNTmhvcnB3RzNUdzRlaGNzMHJaMDU2cmQ5VEtHZjFQOWxiS3I3U0VHTDZV?=
 =?utf-8?B?N2U5VUFNaGQzMkV0QWoyc2pGS2hLL2gva2ptZXBMNVNnQ0RhR29OazNERHpy?=
 =?utf-8?B?NUZvMjhwWTh5UW0xWmcwVDZVZmlEeXhLTUZJM05UWWZ4V1QrSDBNV29vYlRO?=
 =?utf-8?B?VHh5RDZqMkYxT2RESWpKRUxyczZBZnNqN3NwOWExa2VwQkszdEU2ZmprbkJm?=
 =?utf-8?B?SnNXOEZPUE9LQVB3R1JBZzJRa3Y2MVRZaXBSUDFzK0t5cTFzOFNVQ3ZocmlF?=
 =?utf-8?B?eGd3UnRZNktyQmY5Nkd4bWZhOHNqSWxsMXBPWFF3Rmw3MVNUUGJicG81NFJF?=
 =?utf-8?B?R2ZNTUpHWE15WUFROFRJSTBxcUxZenBtL2FkbGROeTNPQU90YWR6dzJtRkQ3?=
 =?utf-8?B?U0VoY1VIWEN0bldsV3lrdGpURFdJV1hGS1Rod0swTm5vZ21wcE1uYTJWNHQ5?=
 =?utf-8?Q?elg53zUYN5YPXy+/ysZzqdxCk?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 8fa71924-57e9-4a9b-0a34-08dbd619f298
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Oct 2023 11:51:53.6685
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 6WfnHaVpeiy32RQ61lW/JR9s+uduXVwfRRV0g14r+4h39y3Jz2fZI0oInCZWzLIaEp2KHUVyEektS03FUZF8pQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8PR04MB7891

On 26.10.2023 11:46, Xenia Ragiadakou wrote:
> On 26/10/23 11:45, Jan Beulich wrote:
>> On 26.10.2023 10:34, Xenia Ragiadakou wrote:
>>> On 26/10/23 10:35, Jan Beulich wrote:
>>>> On 26.10.2023 08:45, Xenia Ragiadakou wrote:
>>>>> --- a/xen/arch/x86/hvm/dom0_build.c
>>>>> +++ b/xen/arch/x86/hvm/dom0_build.c
>>>>> @@ -518,7 +518,7 @@ static paddr_t __init find_memory(
>>>>>            if ( end <= kernel_start || start >= kernel_end )
>>>>>                ; /* No overlap, nothing to do. */
>>>>>            /* Deal with the kernel already being loaded in the region. */
>>>>> -        else if ( kernel_start - start > end - kernel_end )
>>>>> +        else if ( kernel_start + kernel_end > start + end )
>>>> What meaning has the sum of the start and end of either range? I can't
>>>> figure how comparing those two values will be generally correct / useful.
>>>> If the partial-overlap case needs handling in the first place, I think
>>>> new conditionals need adding (and the existing one needs constraining to
>>>> "kernel range fully contained") to use
>>>> - as before, the larger of the non-overlapping ranges at start and end
>>>>     if the kernel range is fully contained,
>>>> - the tail of the range when the overlap is at the start,
>>>> - the head of the range when the overlap is at the end.
>>> Yes it is not quite straight forward to understand and is based on the
>>> assumption that end > kernel_start and start < kernel_end, due to
>>> the first condition failing.
>>>
>>> Both cases:
>>> (start < kernel_start && end < kernel_end) and
>>> (kernel_start - start > end - kernel_end)
>>> fall into the condition ( kernel_start + kernel_end > start + end )
>>>
>>> And both the cases:
>>> (start > kernel_start && end > kernel_end) and
>>> (end - kernel_end > kernel_start - start)
>>> fall into the condition ( kernel_start + kernel_end < start + end )
>>>
>>> ... unless of course I miss a case
>> Well, mathematically (i.e. ignoring the potential for overflow) the
>> original expression and your replacement are identical anyway. But
>> overflow needs to be taken into consideration, and hence there is a
>> (theoretical only at this point) risk with the replacement expression
>> as well. As a result I still think that ...
>>
>>>> That said, in the "kernel range fully contained" case it may want
>>>> considering to use the tail range if it is large enough, rather than
>>>> the larger of the two ranges. In fact when switching to that model, we
>>>> ought to be able to get away with one less conditional, as then the
>>>> "kernel range fully contained" case doesn't need treating specially.
>> ... this alternative approach may want considering (provided we need
>> to make a change in the first place, which I continue to be
>> unconvinced of).
> Hmm, I see your point regarding the overflow.
> Given that start < kernel_end and end > kernel_start, this could
> be resolved by changing the above condition into:
> if ( kernel_end - start > end - kernel_start )
> 
> Would that work for you?

That would look quite a bit more natural, yes. But I don't think it covers
all cases: What if the E820 range is a proper sub-range of the kernel one?
If we consider kernel range crossing E820 region boundaries, we also need
to take that possibility into account, I think.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 12:09:25 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 12:09:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623757.971900 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvzAq-0001Ky-4A; Thu, 26 Oct 2023 12:09:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623757.971900; Thu, 26 Oct 2023 12: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 1qvzAq-0001Kr-1R; Thu, 26 Oct 2023 12:09:16 +0000
Received: by outflank-mailman (input) for mailman id 623757;
 Thu, 26 Oct 2023 12:09: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=jm+b=GI=amd.com=Xenia.Ragiadakou@srs-se1.protection.inumbo.net>)
 id 1qvzAo-0001Kl-R9
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 12:09:14 +0000
Received: from NAM10-BN7-obe.outbound.protection.outlook.com
 (mail-bn7nam10on20609.outbound.protection.outlook.com
 [2a01:111:f400:7e8a::609])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 79560d7a-73f8-11ee-98d5-6d05b1d4d9a1;
 Thu, 26 Oct 2023 14:09:12 +0200 (CEST)
Received: from DM6PR06CA0026.namprd06.prod.outlook.com (2603:10b6:5:120::39)
 by SA1PR12MB6773.namprd12.prod.outlook.com (2603:10b6:806:258::16) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.33; Thu, 26 Oct
 2023 12:09:08 +0000
Received: from DS1PEPF00017094.namprd03.prod.outlook.com
 (2603:10b6:5:120:cafe::e1) by DM6PR06CA0026.outlook.office365.com
 (2603:10b6:5:120::39) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.19 via Frontend
 Transport; Thu, 26 Oct 2023 12:09:08 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 DS1PEPF00017094.mail.protection.outlook.com (10.167.17.137) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6933.15 via Frontend Transport; Thu, 26 Oct 2023 12:09:08 +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.32; Thu, 26 Oct
 2023 07:09: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: 79560d7a-73f8-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=cuxsdzHuXtLZw4NvNp0fc6rPMWfJ8Sdh2zmLHuw57OFdqlv5snjlokzRGnWo2A+gTwa+4zlkYJV53zNlaFaTOopDRvoIjIPrVx2F8S+tBiiC/dFUtIfNosimpCUy/EJfhrL8c70TS5eFjI+1A/lFX/dbpnH/z2sop5EcEMSrBiZlN90pYTj1AHyD4aX7VASdAg6VgpMvK7y6tl3PNgkiFNpccZwI2enVT4BHtRdHQy93RQ6xLkoyZu8CAJico9taDDa0dd37Yq1YubMz60EPXMC5TYR/bZCfn6qdRVh/RiGNIJuacljxBFVWvyabTr6xwQN8t1/7zbreSVLcJAg6Bw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=DPW8hp4LCcjyJ331tYGrN7maLJAXNAP8u5sEArrU/V4=;
 b=jfLETQmuf4o1AhfQPhTjWMlna0o8AobQ6Tc5tWeqipz0ZIBVIge5NRkclvysx2FW3f1vgjIVIRh/kUpWtEGq05d2oiQRX/NOOKqJYj8CMbh3o5EhiBl5uLjgdqeJsXrlaj5XXaBftSkjMxQdY0EuvMbboRC2IBuUjWoY66jhnPJURd4clV9I0ci/KmGMr8CDtzI7CVwBwj42awTIMcF5il795q7rzfPtDFFAtsqFfH7//ykeXXxOPYTYItfZheQZ8GtAdZpTd8iteFVJebmbzcCpnX2h1ehJYtH1saT7a89U1C9BvAH/uG3zSZk/XK90SxCW5HfZxep8HkpO5I3GRw==
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 (0)
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=DPW8hp4LCcjyJ331tYGrN7maLJAXNAP8u5sEArrU/V4=;
 b=IqQxlTAegjyYFG9lASixt2WfWqIxjykTzvzxcs+OWFg/1hXSZ8zGMrHDVB5urAF9xAiXPyeUwR5jA+QhW46oj14fRDK+eDXMeEJpFB1EmWFb3G6nFDet/N+I40Z8yYKkxYj5GIKE6ipjcfUc5gzhdsr5yYWxqh0XzYIW2lwnBGM=
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
Content-Type: multipart/alternative;
	boundary="------------xK8LwNjbcfUgRdA726EB40HV"
Message-ID: <a4d4cac5-3987-4891-8aac-c5f559a02b59@amd.com>
Date: Thu, 26 Oct 2023 15:09:04 +0300
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH] x86/hvm/dom0: fix PVH initrd and metadata placement
Content-Language: en-US
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@lists.xenproject.org>
References: <20231026064543.43369-1-xenia.ragiadakou@amd.com>
 <ac7e9bac-6d74-a5bf-d703-3c5455e581ea@suse.com>
 <7712c60b-4f89-483e-89e4-7ac8f4d0311e@amd.com>
 <cc4c6681-a788-4069-8470-730969018fd0@citrix.com>
 <84b6679c-1956-4c6d-1fbd-b72846b69d1a@suse.com>
From: Xenia Ragiadakou <xenia.ragiadakou@amd.com>
In-Reply-To: <84b6679c-1956-4c6d-1fbd-b72846b69d1a@suse.com>
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: DS1PEPF00017094:EE_|SA1PR12MB6773:EE_
X-MS-Office365-Filtering-Correlation-Id: d8f0b158-a907-4bf8-2d0d-08dbd61c5b84
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	uhBKR4oyfvVLYTtkJo6OhVVnxoSMkhrx1pF2ThvnGtoyuHNipe7OEdROWqdZJwKbrxeAEERbO8artPbfeG/nNkLtVtpukc9SLtbxEASbzyYNxGyI8SAgM9l2Cl5+WhCpJ2U3ymLo9paEGAN1cXFt/wZDcCHhctR62urj+nqa+65emrb62W2jR2UW9KNgoh3z40BMWuZdv3/LAnBs5vBG57uQSYQA7ok/1sY/+zSv5SXfFX0LCFRfarQL0K9J7l50O3x89f+YQUiNcDuci7YX1UgZHxFaFXB4lkuP2ASM1YRxCsd7wTcIkM5VF/g+d81r6vSLVCqapkTYU3XRgseMtIQdHIIDScwX7xLng35aM3cEuivUJlT3mCizLDE9vvQalSoxadvggOzO4g2cCaSfVCHgvX13XkSw++Nts8TkFAfxMMcrwaIy2gMY0kGmDpKVVFKAWdEz/BZm4Gr2y2UFjza3LeEQJMdTSpcAp1pb7JQ7VowyMhy+zUhoZ+hB7q8gdmQouNUDGa0dmEslUoX19QCY9g5adLq3v6bh9SD+oi7wlGiCYD1AY92eVxE03B21aqN6MRI/gM9AExk7SnDIec4Fhapm1WQSW7gVpfShjcFC7o+LHOWBadl59YiWkieyNbiB4rd8aoPhGeDSKM/wMWvQ6NnmGNsyk25Fub+1E9NtOnFWbro7cuJIxl/hyKSvnhutjeYOI58QmWWSG4zR+LCQka+izzddSCA90k+vDUVu89RWmbPrUXSgif3CWEZprTpFGB34VjKTq+CHHeOYtG2s3AVcOEVt8cHZmqf2UmADaz6/UrYQmmJDWgg9lB7H
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)(39860400002)(396003)(346002)(230922051799003)(451199024)(64100799003)(1800799009)(186009)(82310400011)(36840700001)(46966006)(40470700004)(31696002)(86362001)(2906002)(44832011)(81166007)(316002)(36860700001)(478600001)(82740400003)(16526019)(356005)(16576012)(110136005)(33964004)(70206006)(47076005)(53546011)(336012)(426003)(83380400001)(40480700001)(4326008)(40460700003)(5660300002)(41300700001)(2616005)(54906003)(36756003)(8936002)(8676002)(31686004)(70586007)(26005)(36900700001)(43740500002);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Oct 2023 12:09:08.5093
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: d8f0b158-a907-4bf8-2d0d-08dbd61c5b84
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:
	DS1PEPF00017094.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA1PR12MB6773

--------------xK8LwNjbcfUgRdA726EB40HV
Content-Type: text/plain; charset="UTF-8"; format=flowed
Content-Transfer-Encoding: 8bit

On 26/10/23 14:41, Jan Beulich wrote:
> On 26.10.2023 12:31, Andrew Cooper wrote:
>> On 26/10/2023 9:34 am, Xenia Ragiadakou wrote:
>>> On 26/10/23 10:35, Jan Beulich wrote:
>>>> On 26.10.2023 08:45, Xenia Ragiadakou wrote:
>>>>> Given that start < kernel_end and end > kernel_start, the logic that
>>>>> determines the best placement for dom0 initrd and metadata, does not
>>>>> take into account the two cases below:
>>>>> (1) start > kernel_start && end > kernel_end
>>>>> (2) start < kernel_start && end < kernel_end
>>>>>
>>>>> In case (1), the evaluation will result in end = kernel_start
>>>>> i.e. end < start, and will load initrd in the middle of the kernel.
>>>>> In case (2), the evaluation will result in start = kernel_end
>>>>> i.e. end < start, and will load initrd at kernel_end, that is out
>>>>> of the memory region under evaluation.
>>>> I agree there is a problem if the kernel range overlaps but is not fully
>>>> contained in the E820 range under inspection. I'd like to ask though
>>>> under what conditions that can happen, as it seems suspicious for the
>>>> kernel range to span multiple E820 ranges.
>>> We tried to boot Zephyr as pvh dom0 and its load address was under 1MB.
>>>
>>> I know ... that maybe shouldn't have been permitted at all, but
>>> nevertheless we hit this issue.
>>
>> Zephyr is linked to run at 4k.  That's what the ELF Headers say, and the
>> entrypoint is not position-independent.
> Very interesting. What size is their kernel? And, Xenia, can you provide
> the E820 map that you were finding the collision with?

Sure.

Xen-e820 RAM map:

  [0000000000000000, 000000000009fbff] (usable)
  [000000000009fc00, 000000000009ffff] (reserved)
  [00000000000f0000, 00000000000fffff] (reserved)
  [0000000000100000, 000000007ffdefff] (usable)
  [000000007ffdf000, 000000007fffffff] (reserved)
  [00000000b0000000, 00000000bfffffff] (reserved)
  [00000000fed1c000, 00000000fed1ffff] (reserved)
  [00000000fffc0000, 00000000ffffffff] (reserved)
  [0000000100000000, 000000027fffffff] (usable)

(XEN) ELF: phdr: paddr=0x1000 memsz=0x8000
(XEN) ELF: phdr: paddr=0x100000 memsz=0x28a90
(XEN) ELF: phdr: paddr=0x128aa0 memsz=0x7560
(XEN) ELF: memory: 0x1000 -> 0x130000

>> So trying to put the binary anywhere else is going to work about as well
>> having the notes section misalign the pagetables by 0x20 bytes[1].
>>
>> ~Andrew
>>
>> [1] Guess what was causing the "Zephyr doesn't boot PVH" issues.  Which
>> is doubly irritating because about 6h of debugging prior, I'd pointed
>> out that the linker was complaining about an orphaned section and that
>> that ought to be fixed before trying to debug further...
--------------xK8LwNjbcfUgRdA726EB40HV
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: 8bit

<!DOCTYPE html>
<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body>
    <div class="moz-cite-prefix">On 26/10/23 14:41, Jan Beulich wrote:<br>
    </div>
    <blockquote type="cite"
      cite="mid:84b6679c-1956-4c6d-1fbd-b72846b69d1a@suse.com">
      <pre class="moz-quote-pre" wrap="">On 26.10.2023 12:31, Andrew Cooper wrote:
</pre>
      <blockquote type="cite">
        <pre class="moz-quote-pre" wrap="">On 26/10/2023 9:34 am, Xenia Ragiadakou wrote:
</pre>
        <blockquote type="cite">
          <pre class="moz-quote-pre" wrap="">On 26/10/23 10:35, Jan Beulich wrote:
</pre>
          <blockquote type="cite">
            <pre class="moz-quote-pre" wrap="">On 26.10.2023 08:45, Xenia Ragiadakou wrote:
</pre>
            <blockquote type="cite">
              <pre class="moz-quote-pre" wrap="">Given that start &lt; kernel_end and end &gt; kernel_start, the logic that
determines the best placement for dom0 initrd and metadata, does not
take into account the two cases below:
(1) start &gt; kernel_start &amp;&amp; end &gt; kernel_end
(2) start &lt; kernel_start &amp;&amp; end &lt; kernel_end

In case (1), the evaluation will result in end = kernel_start
i.e. end &lt; start, and will load initrd in the middle of the kernel.
In case (2), the evaluation will result in start = kernel_end
i.e. end &lt; start, and will load initrd at kernel_end, that is out
of the memory region under evaluation.
</pre>
            </blockquote>
            <pre class="moz-quote-pre" wrap="">I agree there is a problem if the kernel range overlaps but is not fully
contained in the E820 range under inspection. I'd like to ask though
under what conditions that can happen, as it seems suspicious for the
kernel range to span multiple E820 ranges.
</pre>
          </blockquote>
          <pre class="moz-quote-pre" wrap="">
We tried to boot Zephyr as pvh dom0 and its load address was under 1MB.

I know ... that maybe shouldn't have been permitted at all, but
nevertheless we hit this issue.
</pre>
        </blockquote>
        <pre class="moz-quote-pre" wrap="">

Zephyr is linked to run at 4k.  That's what the ELF Headers say, and the
entrypoint is not position-independent.
</pre>
      </blockquote>
      <pre class="moz-quote-pre" wrap="">
Very interesting. What size is their kernel? And, Xenia, can you provide
the E820 map that you were finding the collision with?</pre>
    </blockquote>
    <p>Sure.<br>
    </p>
    <p>Xen-e820 RAM map:</p>
     [0000000000000000, 000000000009fbff] (usable)<br>
     [000000000009fc00, 000000000009ffff] (reserved)<br>
     [00000000000f0000, 00000000000fffff] (reserved)<br>
     [0000000000100000, 000000007ffdefff] (usable)<br>
     [000000007ffdf000, 000000007fffffff] (reserved)<br>
     [00000000b0000000, 00000000bfffffff] (reserved)<br>
     [00000000fed1c000, 00000000fed1ffff] (reserved)<br>
     [00000000fffc0000, 00000000ffffffff] (reserved)<br>
     [0000000100000000, 000000027fffffff] (usable)<br>
    <br>
    (XEN) ELF: phdr: paddr=0x1000 memsz=0x8000<br>
    (XEN) ELF: phdr: paddr=0x100000 memsz=0x28a90<br>
    (XEN) ELF: phdr: paddr=0x128aa0 memsz=0x7560<br>
    (XEN) ELF: memory: 0x1000 -&gt; 0x130000<span
    style="white-space: pre-wrap"></span><br>
    <p><span style="white-space: pre-wrap">
</span><span style="white-space: pre-wrap">
</span><span style="white-space: pre-wrap">
</span></p>
    <blockquote type="cite"
      cite="mid:84b6679c-1956-4c6d-1fbd-b72846b69d1a@suse.com">
      <blockquote type="cite">
        <pre class="moz-quote-pre" wrap="">So trying to put the binary anywhere else is going to work about as well
having the notes section misalign the pagetables by 0x20 bytes[1].

~Andrew

[1] Guess what was causing the "Zephyr doesn't boot PVH" issues.  Which
is doubly irritating because about 6h of debugging prior, I'd pointed
out that the linker was complaining about an orphaned section and that
that ought to be fixed before trying to debug further...
</pre>
      </blockquote>
      <pre class="moz-quote-pre" wrap="">
</pre>
    </blockquote>
  </body>
</html>

--------------xK8LwNjbcfUgRdA726EB40HV--


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 12:09:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 12:09:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623758.971910 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvzB1-0001dA-Ba; Thu, 26 Oct 2023 12:09:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623758.971910; Thu, 26 Oct 2023 12: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 1qvzB1-0001d3-8n; Thu, 26 Oct 2023 12:09:27 +0000
Received: by outflank-mailman (input) for mailman id 623758;
 Thu, 26 Oct 2023 12: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=gVJW=GI=bugseng.com=federico.serafini@srs-se1.protection.inumbo.net>)
 id 1qvzB0-0001ck-Ft
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 12: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 807e6133-73f8-11ee-9b0e-b553b5be7939;
 Thu, 26 Oct 2023 14:09:24 +0200 (CEST)
Received: from Dell.homenet.telecomitalia.it
 (host-95-247-204-25.retail.telecomitalia.it [95.247.204.25])
 by support.bugseng.com (Postfix) with ESMTPSA id 4941E4EE0742;
 Thu, 26 Oct 2023 14:09: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: 807e6133-73f8-11ee-9b0e-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>,
	George Dunlap <george.dunlap@citrix.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>
Subject: [XEN PATCH] xen/set_{c,p}x_pminfo: address violations od MISRA C:2012 Rule 8.3
Date: Thu, 26 Oct 2023 14:09:06 +0200
Message-Id: <88499ca9a61b59d13d90f6c5f77cbb2e124d850e.1698322083.git.federico.serafini@bugseng.com>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Make function definitions and declarations consistent.
No functional change.

Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
---
 xen/arch/x86/x86_64/cpu_idle.c |  5 ++--
 xen/arch/x86/x86_64/cpufreq.c  |  6 ++--
 xen/drivers/cpufreq/cpufreq.c  | 52 ++++++++++++++++------------------
 xen/include/xen/pmstat.h       |  4 +--
 4 files changed, 33 insertions(+), 34 deletions(-)

diff --git a/xen/arch/x86/x86_64/cpu_idle.c b/xen/arch/x86/x86_64/cpu_idle.c
index e2195d57be..fcd6fc0fc2 100644
--- a/xen/arch/x86/x86_64/cpu_idle.c
+++ b/xen/arch/x86/x86_64/cpu_idle.c
@@ -62,7 +62,8 @@ static int copy_from_compat_state(xen_processor_cx_t *xen_state,
     return 0;
 }
 
-long compat_set_cx_pminfo(uint32_t cpu, struct compat_processor_power *power)
+long compat_set_cx_pminfo(uint32_t acpi_id,
+                          struct compat_processor_power *power)
 {
     struct xen_processor_power *xen_power;
     unsigned long xlat_page_current;
@@ -106,5 +107,5 @@ long compat_set_cx_pminfo(uint32_t cpu, struct compat_processor_power *power)
     XLAT_processor_power(xen_power, power);
 #undef XLAT_processor_power_HNDL_states
 
-    return set_cx_pminfo(cpu, xen_power);
+    return set_cx_pminfo(acpi_id, xen_power);
 }
diff --git a/xen/arch/x86/x86_64/cpufreq.c b/xen/arch/x86/x86_64/cpufreq.c
index 9e1e2050da..e4f3d5b436 100644
--- a/xen/arch/x86/x86_64/cpufreq.c
+++ b/xen/arch/x86/x86_64/cpufreq.c
@@ -30,8 +30,8 @@ CHECK_processor_px;
 
 DEFINE_XEN_GUEST_HANDLE(compat_processor_px_t);
 
-int 
-compat_set_px_pminfo(uint32_t cpu, struct compat_processor_performance *perf)
+int compat_set_px_pminfo(uint32_t acpi_id,
+                         struct compat_processor_performance *perf)
 {
     struct xen_processor_performance *xen_perf;
     unsigned long xlat_page_current;
@@ -52,5 +52,5 @@ compat_set_px_pminfo(uint32_t cpu, struct compat_processor_performance *perf)
     XLAT_processor_performance(xen_perf, perf);
 #undef XLAT_processor_performance_HNDL_states
 
-    return set_px_pminfo(cpu, xen_perf);
+    return set_px_pminfo(acpi_id, xen_perf);
 }
diff --git a/xen/drivers/cpufreq/cpufreq.c b/xen/drivers/cpufreq/cpufreq.c
index 6e5c400849..6fc1aadb9f 100644
--- a/xen/drivers/cpufreq/cpufreq.c
+++ b/xen/drivers/cpufreq/cpufreq.c
@@ -457,14 +457,14 @@ static void print_PPC(unsigned int platform_limit)
     printk("\t_PPC: %d\n", platform_limit);
 }
 
-int set_px_pminfo(uint32_t acpi_id, struct xen_processor_performance *dom0_px_info)
+int set_px_pminfo(uint32_t acpi_id, struct xen_processor_performance *perf)
 {
     int ret=0, cpuid;
     struct processor_pminfo *pmpt;
     struct processor_performance *pxpt;
 
     cpuid = get_cpu_id(acpi_id);
-    if ( cpuid < 0 || !dom0_px_info)
+    if ( ( cpuid < 0 ) || !perf)
     {
         ret = -EINVAL;
         goto out;
@@ -488,21 +488,21 @@ int set_px_pminfo(uint32_t acpi_id, struct xen_processor_performance *dom0_px_in
     pmpt->acpi_id = acpi_id;
     pmpt->id = cpuid;
 
-    if ( dom0_px_info->flags & XEN_PX_PCT )
+    if ( perf->flags & XEN_PX_PCT )
     {
         /* space_id check */
-        if (dom0_px_info->control_register.space_id != 
-            dom0_px_info->status_register.space_id)
+        if ( perf->control_register.space_id !=
+             perf->status_register.space_id )
         {
             ret = -EINVAL;
             goto out;
         }
 
         memcpy ((void *)&pxpt->control_register,
-                (void *)&dom0_px_info->control_register,
+                (void *)&perf->control_register,
                 sizeof(struct xen_pct_register));
         memcpy ((void *)&pxpt->status_register,
-                (void *)&dom0_px_info->status_register,
+                (void *)&perf->status_register,
                 sizeof(struct xen_pct_register));
 
         if ( cpufreq_verbose )
@@ -512,69 +512,67 @@ int set_px_pminfo(uint32_t acpi_id, struct xen_processor_performance *dom0_px_in
         }
     }
 
-    if ( dom0_px_info->flags & XEN_PX_PSS ) 
+    if ( perf->flags & XEN_PX_PSS )
     {
         /* capability check */
-        if (dom0_px_info->state_count <= 1)
+        if (perf->state_count <= 1)
         {
             ret = -EINVAL;
             goto out;
         }
 
         if ( !(pxpt->states = xmalloc_array(struct xen_processor_px,
-                        dom0_px_info->state_count)) )
+                                            perf->state_count)) )
         {
             ret = -ENOMEM;
             goto out;
         }
-        if ( copy_from_guest(pxpt->states, dom0_px_info->states,
-                             dom0_px_info->state_count) )
+        if ( copy_from_guest(pxpt->states, perf->states, perf->state_count) )
         {
             ret = -EFAULT;
             goto out;
         }
-        pxpt->state_count = dom0_px_info->state_count;
+        pxpt->state_count = perf->state_count;
 
         if ( cpufreq_verbose )
             print_PSS(pxpt->states,pxpt->state_count);
     }
 
-    if ( dom0_px_info->flags & XEN_PX_PSD )
+    if ( perf->flags & XEN_PX_PSD )
     {
         /* check domain coordination */
-        if (dom0_px_info->shared_type != CPUFREQ_SHARED_TYPE_ALL &&
-            dom0_px_info->shared_type != CPUFREQ_SHARED_TYPE_ANY &&
-            dom0_px_info->shared_type != CPUFREQ_SHARED_TYPE_HW)
+        if (perf->shared_type != CPUFREQ_SHARED_TYPE_ALL &&
+            perf->shared_type != CPUFREQ_SHARED_TYPE_ANY &&
+            perf->shared_type != CPUFREQ_SHARED_TYPE_HW)
         {
             ret = -EINVAL;
             goto out;
         }
 
-        pxpt->shared_type = dom0_px_info->shared_type;
+        pxpt->shared_type = perf->shared_type;
         memcpy ((void *)&pxpt->domain_info,
-                (void *)&dom0_px_info->domain_info,
+                (void *)&perf->domain_info,
                 sizeof(struct xen_psd_package));
 
         if ( cpufreq_verbose )
             print_PSD(&pxpt->domain_info);
     }
 
-    if ( dom0_px_info->flags & XEN_PX_PPC )
+    if ( perf->flags & XEN_PX_PPC )
     {
-        pxpt->platform_limit = dom0_px_info->platform_limit;
+        pxpt->platform_limit = perf->platform_limit;
 
         if ( cpufreq_verbose )
             print_PPC(pxpt->platform_limit);
 
         if ( pxpt->init == XEN_PX_INIT )
         {
-            ret = cpufreq_limit_change(cpuid); 
+            ret = cpufreq_limit_change(cpuid);
             goto out;
         }
     }
 
-    if ( dom0_px_info->flags == ( XEN_PX_PCT | XEN_PX_PSS |
-                XEN_PX_PSD | XEN_PX_PPC ) )
+    if ( perf->flags == ( XEN_PX_PCT | XEN_PX_PSS | XEN_PX_PSD | XEN_PX_PPC ) )
     {
         pxpt->init = XEN_PX_INIT;
 
@@ -675,16 +673,16 @@ static int __init cpufreq_cmdline_parse(const char *s, const char *e)
 static int cf_check cpu_callback(
     struct notifier_block *nfb, unsigned long action, void *hcpu)
 {
-    unsigned int cpu = (unsigned long)hcpu;
+    unsigned int acpi_id = (unsigned long)hcpu;
 
     switch ( action )
     {
     case CPU_DOWN_FAILED:
     case CPU_ONLINE:
-        (void)cpufreq_add_cpu(cpu);
+        (void)cpufreq_add_cpu(acpi_id);
         break;
     case CPU_DOWN_PREPARE:
-        (void)cpufreq_del_cpu(cpu);
+        (void)cpufreq_del_cpu(acpi_id);
         break;
     default:
         break;
diff --git a/xen/include/xen/pmstat.h b/xen/include/xen/pmstat.h
index 266bc16d86..43b826ad4d 100644
--- a/xen/include/xen/pmstat.h
+++ b/xen/include/xen/pmstat.h
@@ -5,8 +5,8 @@
 #include <public/platform.h> /* for struct xen_processor_power */
 #include <public/sysctl.h>   /* for struct pm_cx_stat */
 
-int set_px_pminfo(uint32_t cpu, struct xen_processor_performance *perf);
-long set_cx_pminfo(uint32_t cpu, struct xen_processor_power *power);
+int set_px_pminfo(uint32_t acpi_id, struct xen_processor_performance *perf);
+long set_cx_pminfo(uint32_t acpi_id, struct xen_processor_power *power);
 uint32_t pmstat_get_cx_nr(uint32_t cpuid);
 int pmstat_get_cx_stat(uint32_t cpuid, struct pm_cx_stat *stat);
 int pmstat_reset_cx_stat(uint32_t cpuid);
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Thu Oct 26 12:13:44 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 12:13:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623766.971920 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvzF1-000477-SZ; Thu, 26 Oct 2023 12:13:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623766.971920; Thu, 26 Oct 2023 12:13: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 1qvzF1-000470-Pb; Thu, 26 Oct 2023 12:13:35 +0000
Received: by outflank-mailman (input) for mailman id 623766;
 Thu, 26 Oct 2023 12:13: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=gVJW=GI=bugseng.com=federico.serafini@srs-se1.protection.inumbo.net>)
 id 1qvzF0-00045h-H1
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 12:13:34 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 152884ac-73f9-11ee-98d5-6d05b1d4d9a1;
 Thu, 26 Oct 2023 14:13:33 +0200 (CEST)
Received: from [192.168.1.15] (host-95-247-204-25.retail.telecomitalia.it
 [95.247.204.25])
 by support.bugseng.com (Postfix) with ESMTPSA id 005C54EE0742;
 Thu, 26 Oct 2023 14:13: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: 152884ac-73f9-11ee-98d5-6d05b1d4d9a1
Message-ID: <1f137be0-452d-4073-a79c-ffd8a501e434@bugseng.com>
Date: Thu, 26 Oct 2023 14:13:32 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN PATCH v2] automation/eclair: add deviations for MISRA C:2012
 Rule 8.3
To: Julien Grall <julien@xen.org>, 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>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Jan Beulich <jbeulich@suse.com>,
 Wei Liu <wl@xen.org>
References: <1c146f28cb19607ddd6741de4f7de051894a3381.1698314415.git.federico.serafini@bugseng.com>
 <662e9080-5648-47eb-95e6-41fcb618c68f@xen.org>
Content-Language: en-US, it
From: Federico Serafini <federico.serafini@bugseng.com>
Organization: BUGSENG srl
In-Reply-To: <662e9080-5648-47eb-95e6-41fcb618c68f@xen.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

On 26/10/23 12:25, Julien Grall wrote:
> Hi,
> 
> On 26/10/2023 11:04, Federico Serafini wrote:
>> Update ECLAIR configuration to deviate Rule 8.3 ("All declarations of
>> an object or function shall use the same names and type qualifiers")
>> for the following functions: guest_walk_tables_[0-9]+_levels().
>> Update file docs/misra/deviations.rst accordingly.
>> No functional change.
>>
>> Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
>> ---
>> Changes in v2:
>>    - removed set_px_pminfo() from the scope of the deviation;
>>    - fixed tag of the commit.
>> ---
>>   automation/eclair_analysis/ECLAIR/deviations.ecl | 4 ++++
>>   docs/misra/deviations.rst                        | 6 ++++++
>>   2 files changed, 10 insertions(+)
>>
>> diff --git a/automation/eclair_analysis/ECLAIR/deviations.ecl 
>> b/automation/eclair_analysis/ECLAIR/deviations.ecl
>> index d8170106b4..b99dfdafd6 100644
>> --- a/automation/eclair_analysis/ECLAIR/deviations.ecl
>> +++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
>> @@ -204,6 +204,10 @@ const-qualified."
>>   
>> -config=MC3R1.R8.3,reports+={deliberate,"any_area(any_loc(file(adopted_mpparse_r8_3)))&&any_area(any_loc(file(^xen/arch/x86/include/asm/mpspec\\.h$)))"}
>>   -doc_end
>> +-doc_begin="For functions guest_walk_tables_[0-9]+_levels(), 
>> parameter names of definitions deliberately differ from the ones used 
>> in the corresponding declarations."
>> +-config=MC3R1.R8.3,declarations={deliberate,"^guest_walk_tables_[0-9]+_levels\\(const struct vcpu\\*, struct p2m_domain\\*, unsigned long, walk_t\\*, uint32_t, gfn_t, mfn_t, void\\*\\)$"}
>> +-doc_end
>> +
>>   -doc_begin="The following variables are compiled in multiple 
>> translation units
>>   belonging to different executables and therefore are safe."
>>   -config=MC3R1.R8.6,declarations+={safe, 
>> "name(current_stack_pointer||bsearch||sort)"}
>> diff --git a/docs/misra/deviations.rst b/docs/misra/deviations.rst
>> index 8511a18925..9423b5cd6b 100644
>> --- a/docs/misra/deviations.rst
>> +++ b/docs/misra/deviations.rst
>> @@ -121,6 +121,12 @@ Deviations related to MISRA C:2012 Rules:
>>            - xen/common/unxz.c
>>            - xen/common/unzstd.c
>> +   * - R8.3
>> +     - In some cases, parameter names used in the function definition
>> +       deliberately differ from the ones used in the corresponding 
>> declaration.
> 
> It would be helpful to provide a bit more reasoning in your commit 
> message why this was desired. At least for Arm and common code, I would 
> not want anyone to do that because it adds more confusion.
> 
>> +     - Tagged as `deliberate` for ECLAIR. Such functions are:
>> +         - guest_walk_tables_[0-9]+_levels()
> 
> I think you want to be a bit mores specific. Other arch may have such 
> function in the function and we don't want to deviate them from the start.
> 
> Cheers,
> 

Alright, thanks for the observation.

-- 
Federico Serafini, M.Sc.

Software Engineer, BUGSENG (http://bugseng.com)


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 12:22:51 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 12:22:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623772.971930 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvzNr-0007IR-SV; Thu, 26 Oct 2023 12:22:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623772.971930; Thu, 26 Oct 2023 12: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 1qvzNr-0007IK-PR; Thu, 26 Oct 2023 12:22:43 +0000
Received: by outflank-mailman (input) for mailman id 623772;
 Thu, 26 Oct 2023 12:22: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 1qvzNq-0007Hu-R8; Thu, 26 Oct 2023 12:22: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 1qvzNq-0002cx-LM; Thu, 26 Oct 2023 12:22: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 1qvzNq-0003u2-5g; Thu, 26 Oct 2023 12:22:42 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qvzNq-0000vK-58; Thu, 26 Oct 2023 12: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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=35eo7tzL9IXzY/kCqtyUMMTZvcL6j7JoPnb69VM9Euo=; b=BbZPfx2oLcm8ZbZ4eKir+nESo7
	NpMgdvezdTkCKgsa+umhNA+5nyJGIS4pPKRfgewzfJUrbpOZ7XJjie7EWMrMkGcbA6+fDIPR6qppi
	cCTpVV3UpUeKhcYATmIuBbmKbNbcjIaB6oOYff/jicBvlPcUPR4qNiVPkS1ZytcOww8k=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183534-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 183534: tolerable FAIL
X-Osstest-Failures:
    xen-unstable:test-amd64-i386-libvirt:xen-install:fail:heisenbug
    xen-unstable:test-amd64-amd64-dom0pvh-xl-intel:guest-localmigrate:fail:heisenbug
    xen-unstable:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:debian-hvm-install:fail:heisenbug
    xen-unstable:test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-install:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl:xen-boot:fail:heisenbug
    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-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-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-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-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-ws16-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-win7-amd64:guest-stop: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: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-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-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-amd64-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-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-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: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-amd64-i386-libvirt-raw: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-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-dom0pvh-xl-amd:hosts-allocate:starved:nonblocking
X-Osstest-Versions-This:
    xen=5415b2b2118bd78d8a04f276a8312f7f0cb1a466
X-Osstest-Versions-That:
    xen=5415b2b2118bd78d8a04f276a8312f7f0cb1a466
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 26 Oct 2023 12:22:42 +0000

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

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-amd64-i386-libvirt       7 xen-install      fail in 183529 pass in 183534
 test-amd64-amd64-dom0pvh-xl-intel 18 guest-localmigrate fail in 183529 pass in 183534
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm 12 debian-hvm-install fail in 183529 pass in 183534
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm 7 xen-install fail pass in 183529
 test-armhf-armhf-xl           8 xen-boot                   fail pass in 183529

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-xl         15 migrate-support-check fail in 183529 never pass
 test-armhf-armhf-xl     16 saverestore-support-check fail in 183529 never pass
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183529
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183529
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183529
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183529
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 183529
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 183529
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183529
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183529
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183529
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 183529
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 183529
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183529
 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      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-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-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-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-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-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     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-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-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-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-amd64-amd64-dom0pvh-xl-amd  3 hosts-allocate        starved in 183529 n/a

version targeted for testing:
 xen                  5415b2b2118bd78d8a04f276a8312f7f0cb1a466
baseline version:
 xen                  5415b2b2118bd78d8a04f276a8312f7f0cb1a466

Last test of basis   183534  2023-10-26 03:28:20 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                                          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         fail    
 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 Oct 26 12:31:40 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 12:31:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623778.971940 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvzWQ-0000xK-Mx; Thu, 26 Oct 2023 12:31:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623778.971940; Thu, 26 Oct 2023 12: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 1qvzWQ-0000xD-KG; Thu, 26 Oct 2023 12:31:34 +0000
Received: by outflank-mailman (input) for mailman id 623778;
 Thu, 26 Oct 2023 12:31: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=hFWs=GI=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qvzWP-0000x7-F4
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 12:31:33 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 (mail-db8eur05on20626.outbound.protection.outlook.com
 [2a01:111:f400:7e1a::626])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 97a83567-73fb-11ee-98d5-6d05b1d4d9a1;
 Thu, 26 Oct 2023 14:31:31 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM9PR04MB8780.eurprd04.prod.outlook.com (2603:10a6:20b:40b::9)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6954.8; Thu, 26 Oct
 2023 12:31:29 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6954.008; Thu, 26 Oct 2023
 12:31: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: 97a83567-73fb-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=QV7nPTkiVAvXhLeOpF2qfjtYVfhpBmL8zfXMTN0ppQIDKAaPik/EtpX2NO32mbRniVi+pOQJoxjpiGpCxbP9PBB/OwGquAsP0C8aTukt9sF1rDOsFcEF6R18yZdLyvVowp1oeV16Io1jJjy74hyzlM3boJLrtQlXOmHZZ24s52v9lOchafg8UDC4AHe7l+IJQLj103aVrNGOFIqv6kZ9mki0Bh3DQmSSvZvRid2RKVfmCJtjTkBWvK2p7F/QtMNhoguWKML1BwSI9LTljgvFpBQvLsefdgA99IDjXIGiZtrWtIkPTHRHx/8pcN6VYLRL5LPGDRAH6XvOV9rO5kP1qw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=zabVPSejkjfAOU8Yh1vVHyOiP06HRnn24iZ0GcIw8XI=;
 b=XQAJ+G6VyMWCiVQ+kwPmKq/gc0g88qhDJKF2XzkZ+KUz45TUMAK5n1y6/gB3nemCfHOqAu41x894Uf+yvZkjYiWMRQfvImmKm/AV+ZnO7qcDIzlPK6segg7FCbn35/OsP23Y8XQXGZT72WvOMGZC5nbu0ApTxDMLYmNQjnCrxV4eIULukhx9TS+rjGe7U/tLAcxOeb7tqpmjj8RRFWMROmMHZbdJfij2PGVnkxRzYn4tHiiufDlq21gfYj7NY420SJstBmeMkleJrbddJEkYdJA4aiWeqI8+UtFAV+xHysGjYrU1wjtvSOPoncUve0LQqHq5/o5r1FhWv3SQLxKSOw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=zabVPSejkjfAOU8Yh1vVHyOiP06HRnn24iZ0GcIw8XI=;
 b=cH/hbxLKvfy68v3yV0REyRUlPDy3rlDkDcrRc8dWN06ag3bxY6ANMuZDQ6lDjX2b9n+mlsDR7LD55LpWb1Z23S+ZsKSp8/JwmEDADyy2HxMoc6bh0mpl8IhukV8fHRApIjILP96N/ClyzDIB1/FvwBYx0epqDbhpFuiENQVf9KQ6scP8Rzg+VeRXWBYqFmdStbwRWfX1wrJ5/zzPt3Xf0Cld63ccVYyMwFXX0PrFv+eiHlN/1E4JQJj9vo8zLh9HTX/vexffzMCeXIqHWwfXvBK56MoNr9YT9s+KVxvHEF6gkWXUxsIoLzy98Axj6wyAddBZZQrwOSnP8f+XKJkzjA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <6c3a4243-fef4-129c-8f58-7bc009f886b6@suse.com>
Date: Thu, 26 Oct 2023 14:31: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 5/7] x86: detect PIT aliasing on ports other than 0x4[0-3]
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>, Wei Liu <wl@xen.org>
References: <95129c04-f37c-9e26-e65d-786a1db2f003@suse.com>
 <042f76dd-d189-c40a-baec-68ded32aa797@suse.com> <ZTo-tpk64ew4rk1o@macbook>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <ZTo-tpk64ew4rk1o@macbook>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR4P281CA0169.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:b7::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_|AM9PR04MB8780:EE_
X-MS-Office365-Filtering-Correlation-Id: e95c906a-a767-4f19-1ac0-08dbd61f7aaf
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	iT0fU4nrWxsaaahsS6Nw5OQbO/wHoiwCM+eAQ1DsZ77uwCN4sH+D6HmyWZMpgRmCUd9jU4v3gjss9IpijIZmKhqKeHF7mDy/FPJW+04MkGpysyemuPnLRRuXFzSQisimjgUsOV+KRjK58NlqUK0Zz6wZD+0uHpUUfZxLleZbElirwKOWaeKvUSYwaSJ4f1gYHt/wMh5C/62fZjYPPug4izEfrPBrUYTtIgGII+7sls2xHhMTSREoeRxSy3pR5Vogt50veToJOWMVLt8mxJ7gxd7vkK0TpDS5lIfN0i09t51XGa4J075cuLcSwkIlvkRlIT+upZoEa4sj3Ohw9zhlXDu4UXnfvg963ROsWd6CQyq8sq7ZJCtd1vvz8iixsDx2heS+OoMghzCZfwUGmxmaePPE4mqgH230c+prpc2BUFT/b1/ekI6M+5CJLvNz26+8MeyT0jOawbj0tpABwzMD7R5axlpe2Au5NSQ9JTkbilXsDobYFafQspRo8Py01GrEjZZnmKh+FimKOlD1FS7D9zuPIo7931XGCg2p/Kq0CXgxSsegD4BSBZ9Uv/RFVSN7e5HWmZikSfZm44OLZ+I3MPXgV2G18U4LiteU1upzvmzdRfEBDPT0iQdOneTXYK+8vYU6qDga3jPwp3GiaquvpQ==
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)(376002)(39860400002)(346002)(230922051799003)(1800799009)(451199024)(64100799003)(186009)(38100700002)(2616005)(6506007)(53546011)(6512007)(36756003)(26005)(83380400001)(2906002)(41300700001)(31696002)(5660300002)(54906003)(66556008)(66476007)(6916009)(86362001)(31686004)(316002)(66946007)(478600001)(6486002)(4326008)(8936002)(8676002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?Y2NnZzgzdGVvSDk2VVlqbjllemgvMHFCY0p0KzhqdWx1TE9tWGdQMXdhd3Vw?=
 =?utf-8?B?aGtITkFlRDhhUUk5czJaMmhrb2UvRHFuam8rY2IvR21sMHloZ1ovSzFtanZh?=
 =?utf-8?B?NnBNTDlkN1pWekpvUkFpaGFRazFPQ0E5YkNLZUl6Mkk5bXVBUXNNd3Z5UWF3?=
 =?utf-8?B?bXZ4WmdkenZNQ0VPaXlwL1haL1RwVWFZczF6NmJIRjFvVk5XTWVWQmxRQk5o?=
 =?utf-8?B?NnBTYXlwNGdxRGFVNGhTQ1RwUU1oeC9NNEQ3aHQvNEVaa09VTi9STGRmSlBT?=
 =?utf-8?B?bGxFcHhNZkxsdFBubzVQOGRtbkY1U2FtanM0N2hodU5qU2NmK1ZuVW5lUlN0?=
 =?utf-8?B?d0RRV0hwdld4elp5NG5lMU1XdUpxNnorblFGZzN5YWF6eGs2NGs2eW9qMEtP?=
 =?utf-8?B?WFFpMnB2bThEczZicE1zZEdTd3ZqVlV1di85V3NRN0ZiRnVkbXJ5ZzRBWXNK?=
 =?utf-8?B?alM2bXJmZjN6WjlnL2ZMZW1xSVR5VW5tS24vQUdVRzZNUW1LSGUvUGttamJY?=
 =?utf-8?B?azVxZ1I2ZDRRL0lQTmw4QUpuWlRnZ2FOWFVmZEwycGpqZE9GTFdhMGxLdXBz?=
 =?utf-8?B?YlBsV0VhRFhJcUdxNG91UzBuaFh5V0RtUklaNE5EUnZNMTRmVmFXb2wyOGZo?=
 =?utf-8?B?MUt4ZmREWHhzT09xRzd4eERjRHpJVTNSWWtUSElZWTZZQnoyT3FTWFVxaXVC?=
 =?utf-8?B?ZEFOcHJ0b2RWR1NYTDVxVjlnODdjOGloRFhyVExoYVkxSUZrbEZHVXNzMWJl?=
 =?utf-8?B?ekoxNVZUWVdpbktubTR5U293anoxelNGUG9MSERLVlF1ZFR6bUJTNmcrNG90?=
 =?utf-8?B?NDBOOWxFazF2OFcrVUJCUlE0cWVoTXpRUnpEeDU1WUZSOVA4MEJxcWx2Z0hM?=
 =?utf-8?B?aUlqRnczR3BoNkhNenZjZ3BicFBRQW94eTBuY3JWZFBXeVFtMUNqZFhyY3hJ?=
 =?utf-8?B?QzgxR29BYUdRSkRSM2lUaHowNmJXZUNPVkdBT0NXNUlwTTBUUlprZVJnOWwr?=
 =?utf-8?B?UFZvOXd6OFN4czJEbmNWbTAvVjBqb3ZuU2Q5Qk94RkViUm95QVYveVhhSm5D?=
 =?utf-8?B?N1diUWIxQ3l5MlkyNDd5R1k5S1ZKUW5vUWpEWFhmQXhtMFB4aTIycHVOTFMz?=
 =?utf-8?B?K0FVUnJGeUhVcGxjbHdwQlJQVld1NXJKYzNQWUJRRldoeEQySzd3SFpyWjFz?=
 =?utf-8?B?RzFxQW5qTzNINDZHMkQ4eVBXdStHSWxQcVBEcVpISGcwRnBxQ2d6OEk4dFkr?=
 =?utf-8?B?eWRiWHhlMHNrVUZNck5HYUM5cWZqUnNIYzVDbHZGZUFOTzRaYW1JZEgvV0p5?=
 =?utf-8?B?bG5IdkwxUHZnaEFHNVQyTWlZY2JLMFlrSlFZb1pOZzBMY3dEYmhwSUdpNkEy?=
 =?utf-8?B?YWxFUW16bVdnTVpFSUVMRzY5aWM5NitkaGRrL3hDMDA5aThXekdwYW04NWFV?=
 =?utf-8?B?dUtlb2FQcVYweHIwc29rWTltaW1CRG5pNFA0WkNuRmRMVmJXQU1aUjhTSElh?=
 =?utf-8?B?QVNiQUl6ZDY1V01ua1JLVmlFbFFzdExOdU9OTnJiRTUrR3BiTVlMWjRFbm9J?=
 =?utf-8?B?dmovZWNXRkRMU1E1eUZodTFtT0U5c1dWeWFRa2xjS3M4ZGFkcXI5QmZDN2Fu?=
 =?utf-8?B?UXE2MnBOREg5MG10YWVFNWFlOTEyYTJLWjgrVVltWEg2bjN0cjVtN3RKVWlB?=
 =?utf-8?B?V0FrZVUrQWtkZy9mWTAxQlRxYTZiT0NVSUpPcUVHM1hBVHpCNE1ucjdhczBE?=
 =?utf-8?B?Q2kxWktUVEltNUJLQlBzMTZOQnNJcTIvdUJUMFZPSDlPMStzdi93Ny90RFky?=
 =?utf-8?B?UlhVMENmMjRrcWJsWHB3d2RtMU9IbHErcVBPUm4ycnFiZnJYNlhzOFBUTExS?=
 =?utf-8?B?WHZFYWZiRTEzNEdhY0VqTStvUjFVVGkxSUM0TlNKLzJVSlF2bGNMUkZKQTNI?=
 =?utf-8?B?cHoyMWxIK0UvcWhsbW54VGcyVDZKeU45RlNnQlZnNWZTakxZQlVHOWQ2WDQw?=
 =?utf-8?B?QmJOeE50a2JsWUxRZUdGR1VSSkY1MzBLdlJWSXYzMm82SWlZZmwxczdRNUhv?=
 =?utf-8?B?ZFRuVE51Tm5EZmwxQitFWTFhVzFZenRySEoweWxHUlIwV2NxNkJQWWNUYy93?=
 =?utf-8?Q?ZXw5brrLVxAd5OsrmkIWW1e03?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: e95c906a-a767-4f19-1ac0-08dbd61f7aaf
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Oct 2023 12:31:29.4945
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: VTUeffXBsfVwcKv2KBO4FfHMo2zd4xt6PstVN1aD8CBjQZZsrn5OVOiD714qsPyDSVxIFnJU7QbExU66Zbtdhg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR04MB8780

On 26.10.2023 12:25, Roger Pau Monné wrote:
> On Thu, May 11, 2023 at 02:07:12PM +0200, Jan Beulich wrote:
>> ... in order to also deny Dom0 access through the alias ports. Without
>> this it is only giving the impression of denying access to PIT. Unlike
>> for CMOS/RTC, do detection pretty early, to avoid disturbing normal
>> operation later on (even if typically we won't use much of the PIT).
>>
>> Like for CMOS/RTC a fundamental assumption of the probing is that reads
>> from the probed alias port won't have side effects (beyond such that PIT
>> reads have anyway) in case it does not alias the PIT's.
>>
>> At to the port 0x61 accesses: Unlike other accesses we do, this masks
>> off the top four bits (in addition to the bottom two ones), following
>> Intel chipset documentation saying that these (read-only) bits should
>> only be written with zero.
> 
> As said in previous patches, I think this is likely too much risk for
> little benefit.  I understand the desire to uniformly deny access to
> any ports that allow interaction with devices in use by Xen (or not
> allowed to be used by dom0), but there's certainly a risk in
> configuring such devices in the way that we do by finding a register
> that can be read and written to.
> 
> I think if anything this alias detection should have a command line
> option in order to disable it.

Well, we could have command line options (for each of the RTC/CMOS,
PIC, and PIT probing allowing the alias masks to be specified (so we
don't need to probe). A value of 1 would uniformly mean "no probing,
no aliases" (as all three decode the low bit, so aliasing can happen
there). We could further make the default of these variables (yes/no,
no actual mask values of course) controllable by a Kconfig setting.

> Do you also have figures if the greatly increased amount of accesses
> add a noticeable boot time regression?

I didn't measure anything, but nothing's really noticeable, no. And
the number of accesses in all three of CMOS/RTC, PIC, and PIT is of
roughly the same order, I think (and the RTC/CMOS one has been in
for a while).

> We are usually cautious is not performing more accesses than strictly
> required.

Sadly "strictly required" is an uncertain quantity here. The more
checking we do, the less likely that we'd identify a false positive
case of aliasing.

>> --- a/xen/arch/x86/time.c
>> +++ b/xen/arch/x86/time.c
>> @@ -425,6 +425,69 @@ static struct platform_timesource __init
>>      .resume = resume_pit,
>>  };
>>  
>> +unsigned int __initdata pit_alias_mask;
>> +
>> +static void __init probe_pit_alias(void)
>> +{
>> +    unsigned int mask = 0x1c;
>> +    uint8_t val = 0;
>> +
>> +    /*
>> +     * Use channel 2 in mode 0 for probing.  In this mode even a non-initial
>> +     * count is loaded independent of counting being / becoming enabled.  Thus
>> +     * we have a 16-bit value fully under our control, to write and then check
>> +     * whether we can also read it back unaltered.
>> +     */
>> +
>> +    /* Turn off speaker output and disable channel 2 counting. */
>> +    outb(inb(0x61) & 0x0c, 0x61);
>> +
>> +    outb((2 << 6) | (3 << 4) | (0 << 1), PIT_MODE); /* Mode 0, LSB/MSB. */
>> +
>> +    do {
>> +        uint8_t val2;
>> +        unsigned int offs;
>> +
>> +        outb(val, PIT_CH2);
>> +        outb(val ^ 0xff, PIT_CH2);
>> +
>> +        /* Wait for the Null Count bit to clear. */
>> +        do {
>> +            /* Latch status. */
>> +            outb((3 << 6) | (1 << 5) | (1 << 3), PIT_MODE);
>> +
>> +            /* Try to make sure we're actually having a PIT here. */
>> +            val2 = inb(PIT_CH2);
>> +            if ( (val2 & ~(3 << 6)) != ((3 << 4) | (0 << 1)) )
>> +                return;
>> +        } while ( val2 & (1 << 6) );
> 
> We should have some kind of timeout here, just in case...

Hmm, I indeed did consider the need for a timeout here. With what
we've done up to here we already assume a functioning PIT, verifying
simply as we go. The issue with truly using some form of timeout is
the determination of how long to wait at most.

>> +
>> +        /*
>> +         * Try to further make sure we're actually having a PIT here.
>> +         *
>> +         * NB: Deliberately |, not ||, as we always want both reads.
>> +         */
>> +        val2 = inb(PIT_CH2);
>> +        if ( (val2 ^ val) | (inb(PIT_CH2) ^ val ^ 0xff) )
>> +            return;
>> +
>> +        for ( offs = mask & -mask; offs <= mask; offs <<= 1 )
>> +        {
>> +            if ( !(mask & offs) )
>> +                continue;
>> +            val2 = inb(PIT_CH2 + offs);
>> +            if ( (val2 ^ val) | (inb(PIT_CH2 + offs) ^ val ^ 0xff) )
>> +                mask &= ~offs;
>> +        }
>> +    } while ( mask && (val += 0x0b) );  /* Arbitrary uneven number. */
>> +
>> +    if ( mask )
>> +    {
>> +        dprintk(XENLOG_INFO, "PIT aliasing mask: %02x\n", mask);
>> +        pit_alias_mask = mask;
>> +    }
> 
> Is it fine to leave counting disabled for channel 2?
> 
> Shouldn't we restore the previous gate value?

See init_pit(), which also doesn't restore anything. The system is under
our control, and we have no other use for channel 2. (I really had
restore logic here initially, but then dropped it for said reason.)

Jan


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 12:32:06 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 12:32:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623781.971949 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvzWw-0001R4-2M; Thu, 26 Oct 2023 12:32:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623781.971949; Thu, 26 Oct 2023 12: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 1qvzWv-0001Qx-Vw; Thu, 26 Oct 2023 12:32:05 +0000
Received: by outflank-mailman (input) for mailman id 623781;
 Thu, 26 Oct 2023 12:32: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=VqC+=GI=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qvzWu-0001PT-3p
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 12:32:04 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id aa8eb622-73fb-11ee-98d5-6d05b1d4d9a1;
 Thu, 26 Oct 2023 14:32:03 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id BA2784EE0742;
 Thu, 26 Oct 2023 14:32: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: aa8eb622-73fb-11ee-98d5-6d05b1d4d9a1
MIME-Version: 1.0
Date: Thu, 26 Oct 2023 14:32:02 +0200
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: Stefano Stabellini <sstabellini@kernel.org>, michal.orzel@amd.com,
 xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, consulting@bugseng.com,
 andrew.cooper3@citrix.com, roger.pau@citrix.com, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
Subject: Re: [RFC 1/4] x86/ioemul: address MISRA C:2012 Rule 9.3
In-Reply-To: <41562c7a-6260-3104-b2d4-d6fd4df0cffc@suse.com>
References: <cover.1698155925.git.nicola.vetrini@bugseng.com>
 <76c9f78179a8bb5b4f99b34f163933394f79066c.1698155925.git.nicola.vetrini@bugseng.com>
 <60e26ad6-7366-2604-e9b2-ed401cee6e73@suse.com>
 <alpine.DEB.2.22.394.2310241317030.271731@ubuntu-linux-20-04-desktop>
 <41562c7a-6260-3104-b2d4-d6fd4df0cffc@suse.com>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <4e88d7ab94b9fc73554eee5b78612b63@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 25/10/2023 09:56, Jan Beulich wrote:
> On 24.10.2023 22:27, Stefano Stabellini wrote:
>> On Tue, 24 Oct 2023, Jan Beulich wrote:
>>> On 24.10.2023 16:31, Nicola Vetrini wrote:
>>>> Partially explicitly initalized .matches arrays result in violations
>>>> of Rule 9.3; this is resolved by using designated initializers,
>>>> which is permitted by the Rule.
>>>> 
>>>> Mechanical changes.
>>>> 
>>>> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
>>> 
>>> While not overly bad, I'm still not really seeing the improvement.
>>> Yet aiui changes induced by Misra are supposed to improve things in
>>> some direction?
>> 
>> I think the improvement is clarity, in the sense that the designated
>> initializers make it clearer that the array may be sparsely 
>> initialized
>> and that the remaining elements should be initialized to zero
>> automatically.
> 
> That's as clear from the original code, imo.
> 
> Jan

There's also this functionally equivalent alternative, with or without 
the zeros, which
doesn't incur in the risk of mistakenly attempting to initialize the 
same element twice,
while also giving an explicit cue to the reader that all elements are 
truly zero-initialized.

          .matches = {
              DMI_MATCH(DMI_BIOS_VENDOR, "HP"),
              DMI_MATCH(DMI_PRODUCT_NAME, "ProLiant DL5"),
+            {0}, {0}
          },

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


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 12:35:40 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 12:35:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623788.971960 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvzaL-0002mK-GY; Thu, 26 Oct 2023 12:35:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623788.971960; Thu, 26 Oct 2023 12:35: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 1qvzaL-0002mD-Dv; Thu, 26 Oct 2023 12:35:37 +0000
Received: by outflank-mailman (input) for mailman id 623788;
 Thu, 26 Oct 2023 12:35: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=jm+b=GI=amd.com=Xenia.Ragiadakou@srs-se1.protection.inumbo.net>)
 id 1qvzaJ-0002m7-Tj
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 12:35:36 +0000
Received: from NAM04-DM6-obe.outbound.protection.outlook.com
 (mail-dm6nam04on20602.outbound.protection.outlook.com
 [2a01:111:f400:7e8b::602])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 27474139-73fc-11ee-9b0e-b553b5be7939;
 Thu, 26 Oct 2023 14:35:33 +0200 (CEST)
Received: from SN4PR0501CA0109.namprd05.prod.outlook.com
 (2603:10b6:803:42::26) by PH7PR12MB8178.namprd12.prod.outlook.com
 (2603:10b6:510:2b3::19) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.31; Thu, 26 Oct
 2023 12:35:27 +0000
Received: from SN1PEPF0002636C.namprd02.prod.outlook.com
 (2603:10b6:803:42:cafe::7d) by SN4PR0501CA0109.outlook.office365.com
 (2603:10b6:803:42::26) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6954.8 via Frontend
 Transport; Thu, 26 Oct 2023 12:35:27 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 SN1PEPF0002636C.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.6933.15 via Frontend Transport; Thu, 26 Oct 2023 12:35:27 +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.32; Thu, 26 Oct
 2023 07:35: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: 27474139-73fc-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=jTc1xbsVZs8vwLQ5VoyWZ1ss19T5K8m0bvMXNimXsWQ+N6hEaUA9YfIc8Elsip2PznJxGtMECK4CVlLPWamlHPGT7/ckwyhx3UQplTTfjL7EH0byWtmXKD4wxb1Tqh70SSYkFO1aQb4s3AxUlderHeHpjmwsoVXpRm7v2vO3aZ8X/x0+SZBmzk1WHholvQHdi34632hS7MW9scqorwAB4uce1yXJV6mFbIcIsGKb3KT6HCUISKY9M+XHZ6HGDr766+A/S3UrQWAFcM5O6RXoi2XSqA4gJFhSzZzOhzJWMbmD0EkNMDXRyI5+pNM1YRrDEmZIJyHP6lQiSD/FPHbcEQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=1Z0YrACsDmrJTDBS5/nxOQkTWg003VE1l/wnmJpsq7Y=;
 b=Olxkq4uTAGdqA0ZIMVCxBMkZsgVHthhyaezTks7hQ85ln7q+GwUKJP0BsQG34gnCD3F8rMDVjRxDuHhxpz5VI9w4dUjM0hIbDVZ7NRLjqIq+wfuWkYdS4n0Mhomr6HKshvziJ5ndJAADVRzzmFNBnUJimHhn2jGA9AEKcXAw8qQKHmrk46NG2ApPOECdZf/MDU/wT8uM38kMJjllXfgDnhW8Ch79X8/ftnNSZwCimzKAK3SD+glkMT32joKEapyqGemsX+M0fOgF6zsthsk4hBB5ZDoSng786CTz0VWG5LA49+ejX7tUBS7j3e/bpdevm+26VCCAjdFOIM/rufnI/A==
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 (0)
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=1Z0YrACsDmrJTDBS5/nxOQkTWg003VE1l/wnmJpsq7Y=;
 b=3DurrXjHUk1GJp4VWI3A6VMDy84TRXiUo7odhLS/1A8jq944RzhIvIGN8Qkv1uhtSSjn2A66UembG+XDxnXOTkVNvvnDlMpPY3SG4i3EXh98XIKAzB1hCfqE/OiBYFRMbDBlUOztpaWaQu/EyuPLYGJ4qVSfy1dwqyB6TXXUVMo=
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: <b5330686-82a0-4d47-9549-2d943ca68c7e@amd.com>
Date: Thu, 26 Oct 2023 15:35:22 +0300
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH] x86/hvm/dom0: fix PVH initrd and metadata placement
Content-Language: en-US
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>, <xen-devel@lists.xenproject.org>
References: <20231026064543.43369-1-xenia.ragiadakou@amd.com>
 <ac7e9bac-6d74-a5bf-d703-3c5455e581ea@suse.com>
 <7712c60b-4f89-483e-89e4-7ac8f4d0311e@amd.com>
 <809115b1-2a47-583f-2d04-72a5a21ee7da@suse.com>
 <c107d63c-25a3-4f17-a5e8-7ec3ccd94ce3@amd.com>
 <c81a8275-ecfd-7598-c119-ed83b156c0e5@suse.com>
From: Xenia Ragiadakou <xenia.ragiadakou@amd.com>
In-Reply-To: <c81a8275-ecfd-7598-c119-ed83b156c0e5@suse.com>
Content-Type: text/plain; charset="UTF-8"; format=flowed
Content-Transfer-Encoding: 7bit
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: SN1PEPF0002636C:EE_|PH7PR12MB8178:EE_
X-MS-Office365-Filtering-Correlation-Id: e04f3ab4-9a79-4d56-7827-08dbd6200887
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	Y0sqXbiy0fTEc8NMIN1PXDoVLsA29MfdE5Hq/Frj75MxXy0ajbY/3wbTup+CMCDw3h72OoUkK8k8DPxwlBdDTpxwehIH2uo8ca0TyCahOF/CKCkQNY0Sx/+1Ndtd40Q+qYDkyA3TfRyCAsTr9GhiisDerCrRIuQ4nt/vDs0BPogsXqYOt8hbxcqaAl3zPiM7a2hMJ0Y5DzwFNJnXKsS3/MVy+cPb+m9OeCynGT7KZsbIeXXnM0t7B//uKIBjEm+WbCE8eLfDuaVvpkvbc2X9QO1LqBvVFMrD34PxmFD4fyjDW7EuOybvGZowk02GX8pPvdyPF30XyHzdkBKEz89KpOkWi+W1F77JJwt+CEBjbAy3Td79ltZDftdbGltjKS4+4LHRpUfDWBU9HEZ1kvseyIKPOd04qizqjBC+LFI9Bxt7pWEdWiQmlw6RNenZlqwhhoaMkSmUggcgeWXMfwZAHjA2POUWDa6i/6FDLmOskwEduqhSxmpt1sUp/4tWFFGAEQTe2OlKZyC0439e152NxHDoA2ImI3i9mlSbR7TIlNIo4ynMv7K/p7wByz0hGAHQil6B1j53eZgtIZeAwEQWw/IKYlxSdNChHXuHBgf0Upqn8Xi7RDCw/TQZC51bRTSVoxKQ7pkPqBD77rtMJZrYwUP+fVpFlvCBwBlrkc1vYlm9tqAxKvFcv6+0D+b8ui+PvxBLJGmG33l8kCX2aAbFeVQdCaBnKSf2XA2QxHLZRiXG9G7Rb5D7ml9zs2LURpsdLmWqQ/iaFXUCrwSHs7flJtF0JymyYJbo3qpLVLIurAgjU18V1eUSfP+INH+NmuqV
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)(39860400002)(396003)(346002)(230922051799003)(451199024)(64100799003)(1800799009)(186009)(82310400011)(46966006)(40470700004)(36840700001)(16526019)(26005)(31686004)(66899024)(41300700001)(2906002)(36860700001)(44832011)(31696002)(36756003)(40460700003)(86362001)(5660300002)(8676002)(8936002)(4326008)(478600001)(6916009)(6666004)(70206006)(81166007)(82740400003)(54906003)(16576012)(70586007)(356005)(83380400001)(336012)(2616005)(53546011)(47076005)(426003)(40480700001)(316002)(36900700001)(43740500002);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Oct 2023 12:35:27.2825
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: e04f3ab4-9a79-4d56-7827-08dbd6200887
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:
	SN1PEPF0002636C.namprd02.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7PR12MB8178



On 26/10/23 14:51, Jan Beulich wrote:
> On 26.10.2023 11:46, Xenia Ragiadakou wrote:
>> On 26/10/23 11:45, Jan Beulich wrote:
>>> On 26.10.2023 10:34, Xenia Ragiadakou wrote:
>>>> On 26/10/23 10:35, Jan Beulich wrote:
>>>>> On 26.10.2023 08:45, Xenia Ragiadakou wrote:
>>>>>> --- a/xen/arch/x86/hvm/dom0_build.c
>>>>>> +++ b/xen/arch/x86/hvm/dom0_build.c
>>>>>> @@ -518,7 +518,7 @@ static paddr_t __init find_memory(
>>>>>>             if ( end <= kernel_start || start >= kernel_end )
>>>>>>                 ; /* No overlap, nothing to do. */
>>>>>>             /* Deal with the kernel already being loaded in the region. */
>>>>>> -        else if ( kernel_start - start > end - kernel_end )
>>>>>> +        else if ( kernel_start + kernel_end > start + end )
>>>>> What meaning has the sum of the start and end of either range? I can't
>>>>> figure how comparing those two values will be generally correct / useful.
>>>>> If the partial-overlap case needs handling in the first place, I think
>>>>> new conditionals need adding (and the existing one needs constraining to
>>>>> "kernel range fully contained") to use
>>>>> - as before, the larger of the non-overlapping ranges at start and end
>>>>>      if the kernel range is fully contained,
>>>>> - the tail of the range when the overlap is at the start,
>>>>> - the head of the range when the overlap is at the end.
>>>> Yes it is not quite straight forward to understand and is based on the
>>>> assumption that end > kernel_start and start < kernel_end, due to
>>>> the first condition failing.
>>>>
>>>> Both cases:
>>>> (start < kernel_start && end < kernel_end) and
>>>> (kernel_start - start > end - kernel_end)
>>>> fall into the condition ( kernel_start + kernel_end > start + end )
>>>>
>>>> And both the cases:
>>>> (start > kernel_start && end > kernel_end) and
>>>> (end - kernel_end > kernel_start - start)
>>>> fall into the condition ( kernel_start + kernel_end < start + end )
>>>>
>>>> ... unless of course I miss a case
>>> Well, mathematically (i.e. ignoring the potential for overflow) the
>>> original expression and your replacement are identical anyway. But
>>> overflow needs to be taken into consideration, and hence there is a
>>> (theoretical only at this point) risk with the replacement expression
>>> as well. As a result I still think that ...
>>>
>>>>> That said, in the "kernel range fully contained" case it may want
>>>>> considering to use the tail range if it is large enough, rather than
>>>>> the larger of the two ranges. In fact when switching to that model, we
>>>>> ought to be able to get away with one less conditional, as then the
>>>>> "kernel range fully contained" case doesn't need treating specially.
>>> ... this alternative approach may want considering (provided we need
>>> to make a change in the first place, which I continue to be
>>> unconvinced of).
>> Hmm, I see your point regarding the overflow.
>> Given that start < kernel_end and end > kernel_start, this could
>> be resolved by changing the above condition into:
>> if ( kernel_end - start > end - kernel_start )
>>
>> Would that work for you?
> 
> That would look quite a bit more natural, yes. But I don't think it covers
> all cases: What if the E820 range is a proper sub-range of the kernel one?
> If we consider kernel range crossing E820 region boundaries, we also need
> to take that possibility into account, I think.

You are right, this case is not handled and can lead to either of the 
issues mentioned in commit message.
Maybe we should check whether end > start before proceeding with 
checking the size.

> 
> Jan


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 12:36:02 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 12:36:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623789.971970 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvzak-0003DT-P9; Thu, 26 Oct 2023 12:36:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623789.971970; Thu, 26 Oct 2023 12:36: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 1qvzak-0003DM-L4; Thu, 26 Oct 2023 12:36:02 +0000
Received: by outflank-mailman (input) for mailman id 623789;
 Thu, 26 Oct 2023 12:36: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=hFWs=GI=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qvzaj-0002m7-Ul
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 12:36:01 +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 37de5b70-73fc-11ee-9b0e-b553b5be7939;
 Thu, 26 Oct 2023 14:36:00 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS8PR04MB9205.eurprd04.prod.outlook.com (2603:10a6:20b:44c::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6954.8; Thu, 26 Oct
 2023 12:35:55 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6954.008; Thu, 26 Oct 2023
 12:35: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: 37de5b70-73fc-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=h5RSs00vJU8XVqFU9SQr4gHcqHjCgciZEHrhIrHu44Y/L7+zKJerNKwCoE+0Ot7u4jw2QkrfXUtC7/hv7k9XnekFv4dR8e5IZhh7m6NWgNDtkd1euEuoDwLSDug6JJZ3UMupZnETlSkZFlwY3D8emScrdzYo3/eZ0wkry7lldh69hiwekiJhducUrxH0T5aWv0vhHjKYBChKA7qrrWAzFC3C2n5DldIeuKtYSwB7P46Wt12mjimzOvutRUeBMKyutTYUPMNqNAVzALHNf68Ay2aIuAFuyP4hx98Em+xJwWEUPgCL90UPQHKybkTYQFtJyRBo6TL/1OBZpxp/dJQFAQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=CovbX6FkWqZncw0b+mTNGWotV201iZbpBaYZ7ZFm/FA=;
 b=lXBIhmRUAAv00Af54BiaObRNLvsRoZDLT5EWrMidgy/gLVQzB8WsnkG3nOiuRTUFfMKTWA025QS21cbXuS+UuD31PGzPL4cB1PJ3eR1Ma1+gKMYyi1Bv2czd/Yhu7Vr+Q7fhtQ3/3AZiM1EHqFw1J/a+XfL0T+KLOhvPUlqcD3zn6zK0izXwldImIIjG6xr5Sv2I7xeLUiG59Z2OniK0J1UqIMZYL02bHMLUgwDR5mkHLoh3JsLWaTw9DW75GjRCvMTZnhxW9mpdXYbZO2XhjzOUrUdahan4fEJycbgD9uACN7mRv2JrvdxDMxjkNJ/SpUl6LzXqLJumQQV1YueVSA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=CovbX6FkWqZncw0b+mTNGWotV201iZbpBaYZ7ZFm/FA=;
 b=CCojE2mn/dIgy4e4bni+RXgQyHSkeZXmszyTWhPZaH2ifPjjLbpWY5qu1KZdvVTV7gPIH9wFcT6ewLcrMImIMZ+xt7+BMkVtzutkD7wbH310iASk/hTdw+Qjv51pCi4bhiyodqJSOJpiRvjIUvanK89nK5rkFvPabaMa6vVOjRnUeLtahFvvMmsxKYHY02Sy+z/RjBHe4sWAuryT56vrQ2/7/ohYVkG0ehlioGs5ayUyvMTaLC3Jie+ynFoLAs8HiBku59ohQHXRopfwsbFYH/FugoL/W5BxbZ/WEP9S9BAzGQ2QuyfD03UzCerA4DgMLnkhNTLGraEpuZJOOb/f9g==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <b8bfd04a-d32d-8495-9014-a8953ae8a39d@suse.com>
Date: Thu, 26 Oct 2023 14:35: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] x86/hvm/dom0: fix PVH initrd and metadata placement
Content-Language: en-US
To: Xenia Ragiadakou <xenia.ragiadakou@amd.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Wei Liu <wl@xen.org>, xen-devel@lists.xenproject.org,
 Andrew Cooper <andrew.cooper3@citrix.com>
References: <20231026064543.43369-1-xenia.ragiadakou@amd.com>
 <ac7e9bac-6d74-a5bf-d703-3c5455e581ea@suse.com>
 <7712c60b-4f89-483e-89e4-7ac8f4d0311e@amd.com>
 <cc4c6681-a788-4069-8470-730969018fd0@citrix.com>
 <84b6679c-1956-4c6d-1fbd-b72846b69d1a@suse.com>
 <a4d4cac5-3987-4891-8aac-c5f559a02b59@amd.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <a4d4cac5-3987-4891-8aac-c5f559a02b59@amd.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR5P281CA0003.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:f2::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_|AS8PR04MB9205:EE_
X-MS-Office365-Filtering-Correlation-Id: ccdfc767-f08f-4850-8580-08dbd62018e9
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	PBHxcwUkgve6Zt+2FeJp7E5RinsWwMTkvkeAMf+h+sTO0dL3nnm8MrrhW/4mTChBFf7oxxnqnbDMYdB3SqOdsYZOYWOxt10O8cf7LTZFP0EjG6dLzCKUc0N8nj2UjL6sAHv1JYx6UmGGZFfF0xAnSFY/TeZ8GCuaUu3iC2LiQae3JlMeP9LB7QeUIiTvLUY5a103B6gC1Ql3GUTzP2CEj+X/3pkAQ/qNTMQ/PdQ+LxM6M/nluinyV0yhCZ7wna33qZq0r1j64qpLzTvVT2h7R02f/PIKKdK7eRBF7QFgm1XmypnTseiVQb0mJP6HT+7e8aVBPcaoF4PLpLkShCT4dxgnWrPWGkxQgfrGPiZPnRqVxhcNusUqAcuoEVcg0rHGk7+cH88upNDxFrHDeCN2TsbisWd74Gf27UjHA5kzc0ulsPnRtyERcj+G2dSnof3s+dl6rT+CMXJAFQqvp05Ej5sT8cexEoU+BGTSNgeYiHxTIpQbS+QfEejkikKHgFrS+cJpXxv8sKIawesOLut6W+BVpZnjqwBpgDESoZI+Rd3rMoW4kHSepEab3NMMEw8+KZ5CXtvJurc7JVZAJZv+CZWpt+GyQK6L0QujFcNjT0yizO+sO4dM7Qzpu40/RcQIv/L+Gq1wnFagIW80wSYYgg==
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)(230922051799003)(186009)(64100799003)(451199024)(1800799009)(2906002)(41300700001)(31696002)(83380400001)(478600001)(4326008)(8936002)(8676002)(6486002)(66946007)(5660300002)(86362001)(31686004)(316002)(6916009)(54906003)(66476007)(66556008)(53546011)(2616005)(38100700002)(6506007)(26005)(36756003)(6512007)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?TkZDZitxVmpaeGdkZzlpeXZhL2djRVExenBIakdxREh5TUxsUngydHBFMC9l?=
 =?utf-8?B?K0lYaERQWnF1cGpaSm53TXVudEMyU2JMM3dMaGw1ZEZpb09ZdGtUK3FLaUxs?=
 =?utf-8?B?RmN5Z2lYMUExT1RxcC84c1B5S21tNHZwL3VKZkRBUzRiTHpjZ2VRTU1WN3lp?=
 =?utf-8?B?dnBNV2NzWGh1QVFPbk50QVR1OTNJRUV6eHJJazVUa3Q2bFdZT2F4NVU4cGs4?=
 =?utf-8?B?UVZyOUNHSkxzUmkxUDd0WUtqV1Y1T2p1azMrUURRSDBXWUlHTnhBdGlCRStl?=
 =?utf-8?B?cDFJZ3p1NC8xTy9sakRFOWo1YkdNL1BkSEhmUng0OVN2RE9ORU9ISGJieUlF?=
 =?utf-8?B?cjN5Q1VMV205eFNKM3h5dUZsaEhBdFEvQXhNWlVsUXlJZkV2TDd6c05RWDBv?=
 =?utf-8?B?Q2dHME5BWWNTRlREWlRaVDQ3RnEvaXdWU3JjMW1nZEkzM3A3OFR0RmJ2Z05M?=
 =?utf-8?B?Z1dJNjBMM3lzOVZzTVZYNGFRakpuc05SRnEwQUhKVjlkcDIyZG5WaXE0QXpH?=
 =?utf-8?B?bmpJREFPeld2YzM5dVR5K0o5cVFYakxHeUdSakQzZFQyOFJKNUN4YWdhVDJH?=
 =?utf-8?B?dW5EUGliOGR0d1hmL01kemVlMlcyUGw4czRzTHlvdXBZNkttczlFZlpqbEE5?=
 =?utf-8?B?aHh5WURoay9pQmRIdCtuVkVGaUhOa3YrY1ZWQzFPYXdzL090RjZMMHZkczRl?=
 =?utf-8?B?TXRSTkp0QjlLTXE3SUgzek41eFdmempkQnFMa09TUnF6emFXSlhXSSs3Wmoz?=
 =?utf-8?B?VTRRNmFsb0R1ZTJ5Z2sxdTJ0b0E4ejhaWERaTUNKcXRXdXRRYjdkaVc3V0ZJ?=
 =?utf-8?B?aEpVOTZYOWhYR1BqTmVFMnBTZnVNKzJZdEdiaFpqSmtoVG5sT3lHdDFuUjJP?=
 =?utf-8?B?R1Nua3h3NE11WFlQMnpuV2UxVVhxYzh3ckVNQ1VzaE42WE95UzRUMnFyZlVO?=
 =?utf-8?B?VTdxbHhlamMzbWJiZW5sVUxYeFkzVGtUdnVqbG51czVKUGRUcXN0Mk9ieWlw?=
 =?utf-8?B?NzYzZzdkQy9yN0N2ckFBeFNVUVpaWU9UdnBoajVzekNxSXhzVk0zY3RRaVZT?=
 =?utf-8?B?YUNlL25ucVhrbXJHd3p1NUtqYTNtQkhZSHA5bEFiOEtkbkpqNVFIMnFyelpm?=
 =?utf-8?B?b09FcW1OQWlBcGNVM2NJT1ZrTXVOWmE0N25uMXN0dFQzRURMS1FucjNJbTRD?=
 =?utf-8?B?NmFkU3o0VDZGLzI4aW8yVlAyZUcraDZlYWJhaGlwTUEwbU5RZVo5eERRTmtI?=
 =?utf-8?B?S0Fsblo4TXA2SkVVOWs2clBLYnFhcTg3aTdsU0RrdVhGem1OTGlKZTdNZURw?=
 =?utf-8?B?aHJ0Vy85c2Y2NC9rd1AzM3poZHIrcjZpaUtSN3h0L3ZWSWV6Q1hlZTRpMk1C?=
 =?utf-8?B?WndaRXRNVUVGeTVVSCtXalFUbmhJdlV5YjBHMFZaNlZNcUdpLzVKUG5XcWNU?=
 =?utf-8?B?VUhocnF1MHNESzUrTEZMMCs5TXhwUER4Vmo2ZHBoMVBYWnlkYlV5VjZnQ2ll?=
 =?utf-8?B?RnJJc1BLYU1reHJ6K0cxRUtUcXU2aDlXR0FpNHBkV28wRzk1aVJTY1dNaVhC?=
 =?utf-8?B?QjlrM2JOenVlaUM3WHE5a0dpVkRzQ2VtcUhVaEFwOG5qZmpLY3JhSFE3SVlW?=
 =?utf-8?B?Z1JHamlmSkoyMEVaNUtzZ29uTmVIQ01xb0wxWTZsOGdvT3pWTGNtZ3gxWmkr?=
 =?utf-8?B?QU1XT242ZlY3aC91dTlqZzV5cS9xaXBaQ3AvMlphTFZYclJLenpqU3BNWEtI?=
 =?utf-8?B?L1ZFa2hqL204amVaZHJ2c1F4cEl5aVMvcG9laTl0Q2ErS0VtZ3krbVZtTmh5?=
 =?utf-8?B?WHMrVUcvaVJYWldUTVY1bmg4b1lkMHVrL210WjBueWVaNlc5TjZTMVFMZDNO?=
 =?utf-8?B?MXpzbC9sVGUwWGRNTXlHTDFEbktqeGs1M1ltNXYxd0ZOdFdTWXpqaHhJazNB?=
 =?utf-8?B?eVphczY5UnIrUHZrZlYwS2pCd0kweXk5VVFkOTZUOFdsSnNpOGUrOTIzQWZX?=
 =?utf-8?B?L01PV0RaeDEzMCtrM3NPaVhreDVmc25HdzZoektYc3dqazJmRzR1RWl1YlNr?=
 =?utf-8?B?WnZFQnlWY1ZRRm9vTnZDOWFFMlVhSE1DZEdnQW1oQWxxYlpQOXZnV1VrS1pC?=
 =?utf-8?Q?nypdfGKDwpBvwTuAEEKbbhdNT?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: ccdfc767-f08f-4850-8580-08dbd62018e9
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Oct 2023 12:35:54.9367
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: uPmI0VEEjmB/R4vcCC+2I7Etk3TAI0C506vuujuBUlc9k1TcAKLJMuSTRxjUmOLyrdQpoete6qN2ZDYvpIN3eg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB9205

On 26.10.2023 14:09, Xenia Ragiadakou wrote:
> On 26/10/23 14:41, Jan Beulich wrote:
>> On 26.10.2023 12:31, Andrew Cooper wrote:
>>> On 26/10/2023 9:34 am, Xenia Ragiadakou wrote:
>>>> On 26/10/23 10:35, Jan Beulich wrote:
>>>>> On 26.10.2023 08:45, Xenia Ragiadakou wrote:
>>>>>> Given that start < kernel_end and end > kernel_start, the logic that
>>>>>> determines the best placement for dom0 initrd and metadata, does not
>>>>>> take into account the two cases below:
>>>>>> (1) start > kernel_start && end > kernel_end
>>>>>> (2) start < kernel_start && end < kernel_end
>>>>>>
>>>>>> In case (1), the evaluation will result in end = kernel_start
>>>>>> i.e. end < start, and will load initrd in the middle of the kernel.
>>>>>> In case (2), the evaluation will result in start = kernel_end
>>>>>> i.e. end < start, and will load initrd at kernel_end, that is out
>>>>>> of the memory region under evaluation.
>>>>> I agree there is a problem if the kernel range overlaps but is not fully
>>>>> contained in the E820 range under inspection. I'd like to ask though
>>>>> under what conditions that can happen, as it seems suspicious for the
>>>>> kernel range to span multiple E820 ranges.
>>>> We tried to boot Zephyr as pvh dom0 and its load address was under 1MB.
>>>>
>>>> I know ... that maybe shouldn't have been permitted at all, but
>>>> nevertheless we hit this issue.
>>>
>>> Zephyr is linked to run at 4k.  That's what the ELF Headers say, and the
>>> entrypoint is not position-independent.
>> Very interesting. What size is their kernel? And, Xenia, can you provide
>> the E820 map that you were finding the collision with?
> 
> Sure.
> 
> Xen-e820 RAM map:
> 
>   [0000000000000000, 000000000009fbff] (usable)
>   [000000000009fc00, 000000000009ffff] (reserved)
>   [00000000000f0000, 00000000000fffff] (reserved)
>   [0000000000100000, 000000007ffdefff] (usable)
>   [000000007ffdf000, 000000007fffffff] (reserved)
>   [00000000b0000000, 00000000bfffffff] (reserved)
>   [00000000fed1c000, 00000000fed1ffff] (reserved)
>   [00000000fffc0000, 00000000ffffffff] (reserved)
>   [0000000100000000, 000000027fffffff] (usable)
> 
> (XEN) ELF: phdr: paddr=0x1000 memsz=0x8000
> (XEN) ELF: phdr: paddr=0x100000 memsz=0x28a90
> (XEN) ELF: phdr: paddr=0x128aa0 memsz=0x7560
> (XEN) ELF: memory: 0x1000 -> 0x130000

Oh, so it's not any particular range that crosses any E820 boundaries,
but merely the total range including all holes which does. That
raises the (only somewhat related) question what we would do with a
kernel having a really large hole somewhere.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 12:37:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 12:37:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623794.971980 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvzcR-0004bj-4S; Thu, 26 Oct 2023 12:37:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623794.971980; Thu, 26 Oct 2023 12:37: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 1qvzcR-0004bc-1t; Thu, 26 Oct 2023 12:37:47 +0000
Received: by outflank-mailman (input) for mailman id 623794;
 Thu, 26 Oct 2023 12:37: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=hFWs=GI=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qvzcP-0004bQ-UN
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 12:37:46 +0000
Received: from EUR01-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur01on2073.outbound.protection.outlook.com [40.107.13.73])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 759dbc6d-73fc-11ee-9b0e-b553b5be7939;
 Thu, 26 Oct 2023 14:37:44 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PAWPR04MB9935.eurprd04.prod.outlook.com (2603:10a6:102:387::21)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.22; Thu, 26 Oct
 2023 12:37:13 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6954.008; Thu, 26 Oct 2023
 12:37: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: 759dbc6d-73fc-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=oD4us4lWXEemcaWVAZetQsAKHPmbGTZDDt9mvyShngopjfZFS/pcj2UfPRNvY0JNUtu5dHaVKjnU3oP8tO1fjLaMsynUOziPLJJpsSXkdgKEF04bY7IdDsmPXYWOiV53d7S7wsBiPJz0DuU5J2xnSjyIDBr2oaS8reNYrVbsyMnXQoWVpSkxr+PAGkDUhBzlaHg+1YTLLzf3HQ2IxX8jdOsaXKl5JJk4FPrEirK46j09zDaWp1Ai/bZRzfxB8PGnUaGZRBXE2L/Hsnh0I4fOaKKJkz3cxuUdZzbJiQPCaOcZ1g1acbgTP+GpZzq4sgkBhhvcTgiR0lZToJSjdRz8Ng==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=7BsNwxmn3Vf+ElTPZZquO3BrSJg0FRfqwFU1woJ87Dg=;
 b=C1YzcjcG3DQAX0VBU0NAXOd+mgn50W0HKapqNYPUk3yiT9aVNNW0uETQGjm1P6b+8p6P1KVpr+dwTh0u3exqdNksocmywIDWIoKRYq1C0KTpuaAhcMjqrUoSQQf/7LTUJGqOrd7/LeaGLCwWo8BpArtrJ0ZYMrVGCF2fwqqEtgbBusCHEY7yDwEgVJjNGxCW1k+0B5SNacX90U0hrlCWDpaGFUwRwM0vEHUmqit08QBTLo/v4rL7WUuCTyiIBo5NfUyuNQYeAzIMrq1F85Ryd99F3J7pcmspeAT3A9kN7o8MtP6UwvdynNkcTFWiPPQLLA+PO55C9GDh9n2k71oU8g==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=7BsNwxmn3Vf+ElTPZZquO3BrSJg0FRfqwFU1woJ87Dg=;
 b=Kx2+1VYSm9ZIGwKrIWdYvtpVp7ANU1ssue94Lh84ZzPSbDsgYg2otCVatImiZyBd68wg0Y02tqu+k8mVVLkHwDofh4skwA9GQucEHydsr84l73Lq0E7dY+O/8h/eg9QlZSE2Sh8yatrwmO/TfbvduizTshvRfo1GD93PMQAR+95rdUQaB0vlZesBMaVWR34G3ZpUnzzxy6tckm+D+yexVBfGJDsika3jcLF2YpzttnIYqoChQNyxhq9vZkGD/5XPC2yulFTN6OCEk7+KWSx7ggdpraoTv5fEDm7TC2+4cw/rO4nUP0eaxQssTLqLruBoDpOuO9A8A6oCSQ21VJ5duw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <1cc98108-3328-94d3-5f8d-ff03c965087e@suse.com>
Date: Thu, 26 Oct 2023 14:37: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] x86/hvm/dom0: fix PVH initrd and metadata placement
Content-Language: en-US
To: Xenia Ragiadakou <xenia.ragiadakou@amd.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>, xen-devel@lists.xenproject.org
References: <20231026064543.43369-1-xenia.ragiadakou@amd.com>
 <ac7e9bac-6d74-a5bf-d703-3c5455e581ea@suse.com>
 <7712c60b-4f89-483e-89e4-7ac8f4d0311e@amd.com>
 <809115b1-2a47-583f-2d04-72a5a21ee7da@suse.com>
 <c107d63c-25a3-4f17-a5e8-7ec3ccd94ce3@amd.com>
 <c81a8275-ecfd-7598-c119-ed83b156c0e5@suse.com>
 <b5330686-82a0-4d47-9549-2d943ca68c7e@amd.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <b5330686-82a0-4d47-9549-2d943ca68c7e@amd.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0079.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:1e::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_|PAWPR04MB9935:EE_
X-MS-Office365-Filtering-Correlation-Id: a8b74fd9-4754-403a-7941-08dbd620467e
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	YA7Fo+RzolH8FiwbF7S0oPJ+77RBxYDXekNJpt4B8LbhSPvaIHql5pyj5ZtAJrtji9fYAuaee7PEHykFLfUDpWbEfUqozUaImaSU4FdRhLzHXYPI2/aVwkZhATWT6/ZNznI13gw0cKJ7406ul0KvCIhyhxJozpdGr+xtBfayjAzwKRSfSt6EskFrnN4cA6Z6+vL0a57PxXuw/Dohm0vjgIxLrqOb6gNqV8O4A3CK+Q5JHV7Qy+ZCODOdl/enFpMV9qllotQfgxaaxGNUTulYJVOWA8yeOguWaEyWkM9r8nZ3eRMCz59G8TSTI85s1czhxLX5U3j42Z25mNSDic3FAy1FItlJrlgnBX0ziGntRoM4pC15DHJkiSbAsxmiZVGSoSTyXT6SPT/wnsH8LfJslCFfjTiOM0DQ3ry6J7dYh1SgwFtK+imx9IECZi2qHl9zdW3TjkOFEcOWdyRTvpRGgyMwLxKjMSaRCAUkXjJW/jYUc8o/fd+LzANJRCnaI1tsLkORknwbEMGxnh2VTruSGH+5+HHLTSwXfBsY33L4QZeCUR9zXdqjpNkly1WdGEqmJJc+VaYdFIVvZCTmFRu0sjdraIVgbABzxGzdOlbuDl78fKvCsJvB2Z2qFxF9aMGFXmvKoax3PaAO/vj3foRVuw==
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)(230922051799003)(1800799009)(451199024)(186009)(64100799003)(478600001)(53546011)(66899024)(26005)(4326008)(38100700002)(31696002)(8936002)(86362001)(2616005)(8676002)(66476007)(5660300002)(83380400001)(6506007)(41300700001)(2906002)(6512007)(54906003)(66556008)(36756003)(31686004)(6916009)(66946007)(6486002)(316002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?aExhSjhHVXUxM2hMVXBUcWRidnZ3WVRMOC9CR0w2MnhLdmdTTUpLcUl6RHJK?=
 =?utf-8?B?QktuZkhCaWcydWlmdGRrNWorUEJIVnRBeU5FWG95RGd4VlMwdW1XeDN0eUp3?=
 =?utf-8?B?KzBlUXZDYTlZbllNOUVqTlVBc3FiNUVzS1EyWERXRmphUWxhbWU3UlhBdyty?=
 =?utf-8?B?OE43S1hwSXJWRGtLYjN0aHpCUjNCeFA0V284a0ZzbldpMDRGTitwNzJiUTBo?=
 =?utf-8?B?RnFVbG9BblZxck1ZdXpqSmRmK2tIVTBMMmlReUY5TmlwTUdsL2lDSFd4UkNv?=
 =?utf-8?B?NnhyY3h3cXIvOHN1Y0xRRVRqc3NsRmZJNUZTZXBDLzFRd1BoN3d6Mk13V1pN?=
 =?utf-8?B?a1o2bkpCeVhiYnFQRXhxSTc0NVFNRkpCdWxaYTFPZzVvbDJRTG5ySmphd0Z1?=
 =?utf-8?B?K240dzdsNjVSc0o2ZDd3bW5EMWo3UEhncnZRZk1ITkd6NGQvajM5Z3oya0lX?=
 =?utf-8?B?VXk0Vnd0NkZJVTl1UDNFcmpIbURQOWE3elR2NTBJUy9wbVJxYmVoZ0tWbGM0?=
 =?utf-8?B?QVhmbnVINGhUbTVqQkdZOVJ3cGVNQnRWSmRpVU9aTXI4ZHlaMzlnNHVkblcy?=
 =?utf-8?B?QmVCZnFUOVBvZ011ZnZ6c3VLOS9EQ08rNGFjSGhRM2tDWVFhTXpDdFdTVXZB?=
 =?utf-8?B?UXd0MkY2NDBZS0RnaGg5cWRDelFtUTBZM1A3T0xzN2FxcklFdFg2OVR3SHV4?=
 =?utf-8?B?MjBpWnFadS9yZVJibDlmOWt2T3BDait6WU5EdW5OMjRITG5vTVBTVVpYYTJz?=
 =?utf-8?B?UjQ5NUMrcW9qY0h6NENMcmtRdllKVmhOMWg2cHdTbXNrU2Npb3FqWStVanZU?=
 =?utf-8?B?U3Q3V0ZyaVlMeDhzcHZycStLcmhUbHkxZHR5K1lLa290TnZBbnRGcGF2M3Aw?=
 =?utf-8?B?M09QOHpleC9tUzJkbkI1RDMyVS9ZeFVhd3diTzFCblZaSVZWajh2WkZNVFNY?=
 =?utf-8?B?ZkFWNXFUQmVCWGFlQ0xJTVRYeEVua01QZjhzTTJJSDJ2cXBXQTBYRWp6UjBJ?=
 =?utf-8?B?K1VqOU1wYlY0V1Z0QUVQNi9XTU1sdFdhd3VKVnlLYXlvODJFNGN6bEdpeXFx?=
 =?utf-8?B?SVR0dlVlamZzZkdBcVBFeEFvcUZDTzF1VVdKWjRYVGE2Z3FKeTNYajJqcXJ2?=
 =?utf-8?B?dUJhOU9pRm9kQS9HRlVSTUJBRURmVnVNaTE1WnhhcGRHaml1elp2UXlGWFR4?=
 =?utf-8?B?WExFVDFvTkRXb2c5R0lqbmtRSCs2Q0lVZE9YWjgrMW1vYVQvenhKeHozUk1p?=
 =?utf-8?B?TTNycVgva1BET3RkaUZPWjEzTDBTenJLc0JralBMOHNtOTlYbnVSTFNVYXBl?=
 =?utf-8?B?UEhlZ1Foc3d2SUlFb3dscWtWQ2VJZzFVejVMdXBRdFNUZmZ5ZmRPNmpiUUZl?=
 =?utf-8?B?TUhuL0loV1NqQkNKaVhycTRENFN2cTB5QTd1TGFnaUVFdXUxQkZpQW1MSlJp?=
 =?utf-8?B?Y3hHWlNLRXBkSCtodFA4aGtUSUVYSjhjR1k1MTJyYVpKNXlRVFBNS0NYYVlY?=
 =?utf-8?B?c3U0NXJiTGhnTTZqZ3VDbFcyeFR1dVd3SngwR2ZlNjFmdERIK0xCOW5ybnJU?=
 =?utf-8?B?MENDbFAzY2xud2lrMnIrY1FlMTVYamRjZlNxKzJLR3NhbFRSTng5WjlEVms3?=
 =?utf-8?B?UU8zdDNRenRyS0RTZHFSZGd6Ymw4cW9za1Q4YUYxVUJ1YUhiK3ZQZm9ObzJM?=
 =?utf-8?B?Si9naFUxM0tTcElVUjlLSFQydkZWT1RUc3ViVEtscTRMM29JMVE2VXg5TDZh?=
 =?utf-8?B?UG5NZXAycXlSMXhtNVdGVEIzQjNJRHFUTnFXeVpRRWJoTjJnUlQwU3Z6MDBG?=
 =?utf-8?B?S0tZdnU2bzcvR1lhK3NBQTNtQ3YwMG5GdnhkNklYYjlRZjNMWURvaU83MFB2?=
 =?utf-8?B?bmo0Z2dBSVdRWlpNQTZmdFJFb3BNT1hoenZzZnE2SkJrb3EyK1YxMTZuWTJF?=
 =?utf-8?B?OFZ3MTZnb0lrdExTV1hkbVBibHNWKy9wSXl3WmJWSVE4SnZxVHByaklLVU9J?=
 =?utf-8?B?TTU3aEVQUFQ0ODZ6aWtvWGlNUnVwaVpPdDdZUmJtNjFaSDhjdVNjRzRRN0lP?=
 =?utf-8?B?a0dKZjFmSHVVMTFIakNNSURtSHFtTkRPZ01HcG90OFNEdUhHS3ZpYVR5YXZa?=
 =?utf-8?Q?/rcottdSv0pdnkgwVXIiPLveL?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: a8b74fd9-4754-403a-7941-08dbd620467e
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Oct 2023 12:37:11.4027
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: xy8mOBBE+4C+w5Yy0l+lx3F0RYWZ9Ha1wtlGiBAmhLxDIW7g0RLs6Wq/4XofV6s/7pp60P0RUxySBuuZhRV93w==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAWPR04MB9935

On 26.10.2023 14:35, Xenia Ragiadakou wrote:
> 
> 
> On 26/10/23 14:51, Jan Beulich wrote:
>> On 26.10.2023 11:46, Xenia Ragiadakou wrote:
>>> On 26/10/23 11:45, Jan Beulich wrote:
>>>> On 26.10.2023 10:34, Xenia Ragiadakou wrote:
>>>>> On 26/10/23 10:35, Jan Beulich wrote:
>>>>>> On 26.10.2023 08:45, Xenia Ragiadakou wrote:
>>>>>>> --- a/xen/arch/x86/hvm/dom0_build.c
>>>>>>> +++ b/xen/arch/x86/hvm/dom0_build.c
>>>>>>> @@ -518,7 +518,7 @@ static paddr_t __init find_memory(
>>>>>>>             if ( end <= kernel_start || start >= kernel_end )
>>>>>>>                 ; /* No overlap, nothing to do. */
>>>>>>>             /* Deal with the kernel already being loaded in the region. */
>>>>>>> -        else if ( kernel_start - start > end - kernel_end )
>>>>>>> +        else if ( kernel_start + kernel_end > start + end )
>>>>>> What meaning has the sum of the start and end of either range? I can't
>>>>>> figure how comparing those two values will be generally correct / useful.
>>>>>> If the partial-overlap case needs handling in the first place, I think
>>>>>> new conditionals need adding (and the existing one needs constraining to
>>>>>> "kernel range fully contained") to use
>>>>>> - as before, the larger of the non-overlapping ranges at start and end
>>>>>>      if the kernel range is fully contained,
>>>>>> - the tail of the range when the overlap is at the start,
>>>>>> - the head of the range when the overlap is at the end.
>>>>> Yes it is not quite straight forward to understand and is based on the
>>>>> assumption that end > kernel_start and start < kernel_end, due to
>>>>> the first condition failing.
>>>>>
>>>>> Both cases:
>>>>> (start < kernel_start && end < kernel_end) and
>>>>> (kernel_start - start > end - kernel_end)
>>>>> fall into the condition ( kernel_start + kernel_end > start + end )
>>>>>
>>>>> And both the cases:
>>>>> (start > kernel_start && end > kernel_end) and
>>>>> (end - kernel_end > kernel_start - start)
>>>>> fall into the condition ( kernel_start + kernel_end < start + end )
>>>>>
>>>>> ... unless of course I miss a case
>>>> Well, mathematically (i.e. ignoring the potential for overflow) the
>>>> original expression and your replacement are identical anyway. But
>>>> overflow needs to be taken into consideration, and hence there is a
>>>> (theoretical only at this point) risk with the replacement expression
>>>> as well. As a result I still think that ...
>>>>
>>>>>> That said, in the "kernel range fully contained" case it may want
>>>>>> considering to use the tail range if it is large enough, rather than
>>>>>> the larger of the two ranges. In fact when switching to that model, we
>>>>>> ought to be able to get away with one less conditional, as then the
>>>>>> "kernel range fully contained" case doesn't need treating specially.
>>>> ... this alternative approach may want considering (provided we need
>>>> to make a change in the first place, which I continue to be
>>>> unconvinced of).
>>> Hmm, I see your point regarding the overflow.
>>> Given that start < kernel_end and end > kernel_start, this could
>>> be resolved by changing the above condition into:
>>> if ( kernel_end - start > end - kernel_start )
>>>
>>> Would that work for you?
>>
>> That would look quite a bit more natural, yes. But I don't think it covers
>> all cases: What if the E820 range is a proper sub-range of the kernel one?
>> If we consider kernel range crossing E820 region boundaries, we also need
>> to take that possibility into account, I think.
> 
> You are right, this case is not handled and can lead to either of the 
> issues mentioned in commit message.
> Maybe we should check whether end > start before proceeding with 
> checking the size.

It looks like it all boils down to the alternative I did sketch out.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 12:39:46 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 12:39:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623800.971990 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvzeL-0005Jl-JI; Thu, 26 Oct 2023 12:39:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623800.971990; Thu, 26 Oct 2023 12:39: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 1qvzeL-0005Je-GJ; Thu, 26 Oct 2023 12:39:45 +0000
Received: by outflank-mailman (input) for mailman id 623800;
 Thu, 26 Oct 2023 12:39: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=hFWs=GI=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qvzeK-0005JY-K2
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 12:39:44 +0000
Received: from EUR01-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur01on2040.outbound.protection.outlook.com [40.107.13.40])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id bcfb997d-73fc-11ee-98d5-6d05b1d4d9a1;
 Thu, 26 Oct 2023 14:39:43 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PAWPR04MB9935.eurprd04.prod.outlook.com (2603:10a6:102:387::21)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.22; Thu, 26 Oct
 2023 12:39:14 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6954.008; Thu, 26 Oct 2023
 12:39: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: bcfb997d-73fc-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ThYDUZ6nislAfKqu8FinskBEYpVkysYLk+dNvx7zlKKHSGQhbleKt6noTA0933SFTtguoGPP+fGLVtgplzYPBhu37nOzaSbJAvKAGdNnYnrzec5405IB7Civmnfv1rxAyjypbBntAiJmPsEf+Lmo9oIPglfQl3/fxuJIu5eJYNgdJvQd3yJw35HzTeT86lVSLtjwWyuc+Obk1EgwLsr9Gaio0hdOJ/J1c6cybAcdOUUMIhtTLl4LZ4kcx+i489Fg0guhADXvwf8XAE4Z0mmqtz/gG1C2jNep0RSpcQ9gjQMv7+hPB7SI/bHzwBDyMaILutKisQjpXjRlyxsxxAYWFA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=mW/rpsuDDMfLZC1kac+VgtyspHC0JL2PsRIaddtjRYQ=;
 b=FZoKMs0UWlW3u+UWDg/DJlGQS7GH1L8nl1+UUjE1a2798TVwK9UkqMWKg8hZHhLOxFFACXwHbSrvOF/QmUu9vzTTDGCri+WOmjMfxIxmMB4wk2BaVzRif+XL9/9TeV30962nGRbqwlcQ6lH39TL1mzueC18bI9Rs7OV+sY2OHB+Ru0IGlzseLiuP4SRA0W3Dyzt1+1YpR+RdsiD9+wvhBlWAq0ClWt5FUg6XDdjFrb8jK+ed3x0LfT9ItYh8mYnUbhn6vHgaWlNUMawxmE87w+R6i8Va9sVFuN/5dRvoeIfBeqFPgknZcCWQY9s7oY7Uy4aHN6RE0b4sjFXS5f9J4Q==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=mW/rpsuDDMfLZC1kac+VgtyspHC0JL2PsRIaddtjRYQ=;
 b=ynBdwNs15jQ/dWspvqxtO/gI/+k8vnrERiQ56clZQNb5Acsi4KHZDiIpESwLSTsVxwe58CbP36SlnI0fuUroJz0A90oYYJ76Hs7/n4CEBXt5shCSKhruv5bdWU/arABlOKtxe6S11MO6xCLJm/gfUShC39aSL2xLPsgUk/1fsFw1vnFoOUq4I2fJwu8sXxBwZNK1UqtyrkfoV7MwDVy5grNRc1/7GRt7ldD4BF1I5tKfndB1SxKcrSaYBVeLcs+E9Hdw9L5b/jUmwTnDDJ6RngosHI6ng0ySMQGHs4ukhi1m/Qe1MFDJECsm3Tvm8sw1DUG0PwiiN1REiD90nVSdRw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <8cb336ca-41ed-8adc-957a-28b5585c84f1@suse.com>
Date: Thu, 26 Oct 2023 14:39:12 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [RFC 1/4] x86/ioemul: address MISRA C:2012 Rule 9.3
Content-Language: en-US
To: Nicola Vetrini <nicola.vetrini@bugseng.com>
Cc: Stefano Stabellini <sstabellini@kernel.org>, michal.orzel@amd.com,
 xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, consulting@bugseng.com,
 andrew.cooper3@citrix.com, roger.pau@citrix.com, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <cover.1698155925.git.nicola.vetrini@bugseng.com>
 <76c9f78179a8bb5b4f99b34f163933394f79066c.1698155925.git.nicola.vetrini@bugseng.com>
 <60e26ad6-7366-2604-e9b2-ed401cee6e73@suse.com>
 <alpine.DEB.2.22.394.2310241317030.271731@ubuntu-linux-20-04-desktop>
 <41562c7a-6260-3104-b2d4-d6fd4df0cffc@suse.com>
 <4e88d7ab94b9fc73554eee5b78612b63@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <4e88d7ab94b9fc73554eee5b78612b63@bugseng.com>
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_|PAWPR04MB9935:EE_
X-MS-Office365-Filtering-Correlation-Id: 836f4249-a685-480e-576c-08dbd6209017
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	F7ckkQD0grCDhLbDYCPC0eN/BsCxI6aPdoqIH1Sre1ayp+bc7K034qeJkvl27AurHhO8QWylN15f8Bt7Arm0uX1ppYLOO/eYGHodrL4b+q8v/3Hux1xy6v/BLRBslP+0nCKfidjYnyvEg9liEt6hEL+PIhCMgVcsh416ysGsTlR2mZtCP6d7nN69ODEPFWKMFpADk3jEa50jBVvmLqiOVyxdji+G3BWtDouUUeQz+VS7u3oHIlLZ6kxQYLss9j3BrOz0JgSAaHAFbEeZ6x9X9nCqQZl5rwcaI5rPeb/BOFUm3gwTlv7sSAklm4exLDF1FIGFMcHmKdmBjLB/qn/Tg4yBrgYC23dvQ1I2XM+VM4EXUr9tX+9kMETpgevJHD9iYAhs2FHlR7nzSFWH/r/D0iiUJHWY7SuUUMM+7kWjFNI/c/rVI8hgxp7pv9Q0DXlqRYGkjCxDpYQ8oPSJYhwAhDW13xmCcZnt9Smw0uLKQ5llgK+bsUH/QCwV73xcqE0i+Iyf8DOw2STtIrFJK2AF5HTTpaG4YNNpTS0W6470lq7vaFmb4tMT4D3G+q/LzkebrGoxN0pYCKmx5+V009dIPhIIBOFUsczgSjxwL64+dLHXQM8KrH7ZwTR3ilfW949s34Jsd3l2LrCdAobeqeP1BQ==
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)(230922051799003)(64100799003)(186009)(451199024)(1800799009)(6486002)(66946007)(6916009)(31686004)(66556008)(36756003)(316002)(53546011)(478600001)(26005)(6506007)(83380400001)(7416002)(5660300002)(54906003)(6512007)(41300700001)(2906002)(38100700002)(4326008)(2616005)(86362001)(66476007)(8676002)(8936002)(31696002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?N0JyQjlYQ0dydEVSVTRGcU03KzRndkxtRnA5YjdKeXgxVUF0YVFkclZDaDNY?=
 =?utf-8?B?RHZEMlQ1S2pZRUVsK1FkS3lUOG4rS2lNa1dwRU9SekVCSDJVOU5jeWVqemJX?=
 =?utf-8?B?S085T1BDMVBLdFd6bjdoeWhwMGV0emRyY05EaVpKaHZFTDN2ZHoxWDNyL2pO?=
 =?utf-8?B?dzRUc3k3SjdhamhUNDY2enJYUHdsam9PUEo2ZloyRnNlYUtVU2VSMjBVWDA1?=
 =?utf-8?B?dEdiTEVBUkQrcXBha2JCYTVJN2tUcG5ZcFFYbTJVT0pKckZYQTBhRTAxeWtT?=
 =?utf-8?B?ZmNVZGljei9NWkRQRXVnd0pSNkg4WjA3dGZsbEZ3K1VMUlV4dFk1L0EvejNn?=
 =?utf-8?B?NXdncmZPaDN6eDJQTnJncW9FdVRaWk1jSmRzbWVTMlVmRW52OERMd3R0dnBm?=
 =?utf-8?B?Q3VLY2VoMFI0VHl3ZjM4T1FwTStPSlNpdVdMcXIxazk1N2NpT05BcFdRNG9P?=
 =?utf-8?B?bTYvRGUzaTkzRk1tbXVBakxrU005WlRWeHBuVWhpNEdCU3R0RkFiSGNQM1ZN?=
 =?utf-8?B?d2RLaVlUeVNKUDBFN0o5cGdUL095ZDVwMlRJVEtVaWFMSDY2b25lbmc0MGti?=
 =?utf-8?B?S0cxNC9pS2g4MWJwUnpSTEV5TEhVUlpiWmNKMHlSRDhGUEN4M1UybzRVZml5?=
 =?utf-8?B?Rm9IWUthMFRBWkFxVWR2bWhnYWZBenZUWUJNSTQyM0JNUzNWM3BvdHZ2NFVY?=
 =?utf-8?B?cm1PMElyZnhsNTZqVnN6SXZWb1diSzVIRWtNK29Wczk4SUpaWkhHUFZjbTdS?=
 =?utf-8?B?b2MyMzIyZDhJOThrMUgxTFluMjlhT3VhdFBZTnZLOE5VSnkvc0NmczNZUlgw?=
 =?utf-8?B?OEx4V1FWSERVMGRQbFdMQTFFbGYzZlBVZVpDaGRBNlRZd09CVmpiQmdEYmI4?=
 =?utf-8?B?a3NFVXB6SlpyUVJPZXZ3dGJBN0RVLzlYSjBBUVcrS3BqVVhva3NCLzRhdmNL?=
 =?utf-8?B?aHhUK1dKS280V1IrV3VqWlFMOGlTZ2xBRmhsQTljSDF3MTdNcHlCSnMyT3M5?=
 =?utf-8?B?UVVxV0R2S3VwaFdReWFCaitiVE95QkJvTzZMREhONG1mUDg0Z0NqRUNaVEVo?=
 =?utf-8?B?OVN3RXZ6UXUxV2lqNG9vNHRHR1FRa2daWmhPT3J1Y1ExOFdwaFNPS3Q0RFpH?=
 =?utf-8?B?bUFVbzBNRjAxcmc4eThjVFNpSEpYcGJIdFBiSC9Cb0Jhd3dYd0dHMUVtcnlH?=
 =?utf-8?B?Ui9aWHB5TXRFK0VJY0ZseDFLT1dxZ01JSG9ydFJmS1lXOW9YRlV6dlJnMmxW?=
 =?utf-8?B?YUFrcjdCYWdTMUhrM1A1ZzY4M3Q2OEVzUEQvQ1lDbWVCRm5KU1ZUVTFOZ0RV?=
 =?utf-8?B?cml0aGRHdTgydUtGMDFRa2FMSXlXTFFxeTVxT1M0R1hLWkNsQjhWd2dXUjBo?=
 =?utf-8?B?MjUvZGxDcUY2ZjhGU1kzOU5SLzE0RVY4SkVNem5QTFJiQm5RcWpVRzFkSU1h?=
 =?utf-8?B?b0NFWVpBdWlBc200RGsrTEpNdHM5cDZrTGpiY1RLUy91Z3JNNVhjY0ltMTE3?=
 =?utf-8?B?c1QxalcyODhoT3RubXE5YWJiSVU3RXNMbmlSQXZOOG1rWUZpNjltMWM3VTNi?=
 =?utf-8?B?WG9PS3VsSUx2UXo4b21SK04xeXY0UkJjelNXYjVFNVhkSFdaMlJ4ZThjVGFG?=
 =?utf-8?B?MTk4dmY2NFlGbElhcjZKVkZEeWczaXdmR3EvbjlodFd1WmMzazdmZGNHb2RD?=
 =?utf-8?B?SzdCMloxd2UzZ0VSNjVMSGNFNFVCNzkrQzV6QThYZHpHVjFpZU5XMDFzUml4?=
 =?utf-8?B?T0ttSXBRbVVEcW00OWsyRDlxZlQ0RjdXRU1BZ3FnUVJ6VWwycFZCakZGS1dP?=
 =?utf-8?B?OG8xbS9lSVk2QVAvNThZU215VWZpemZxd2VaOHBoejBmRXhvSTMwNWlFcmVz?=
 =?utf-8?B?TmZhelp2REFWcW5WcVBaanljVFI3YWVYV0twWjRpS1BhdGZqK2UvOGJRVzJ2?=
 =?utf-8?B?anpTcFFOMDJJSjVMeTBSN085dmZSYWxHR2xyZWhQc2NDSmhkN2U3YWVOOFBM?=
 =?utf-8?B?K1lTTWNUNUZsdE1pcy9WZnRJampaUVpEMjJyZEM4Y0E1NVFrUWl0MnpCY1Br?=
 =?utf-8?B?Qm9ZQjh4WW1lK3Nad3QxT2VEZEw3a3hzZW80NC9mWUtXaG5ZZ2pWdThvUUxL?=
 =?utf-8?Q?WhKMPXZiU7lwKDmSW/g/7xRrI?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 836f4249-a685-480e-576c-08dbd6209017
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Oct 2023 12:39:14.8854
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: JIzbh+Z4ndlfjoDdmzF+uMlJSdZ+cb3KEJ9MTAeh/BGLh00BlpTsjgkkT8rVm2mVf8KRMibfYfKTNk7dwCHczA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAWPR04MB9935

On 26.10.2023 14:32, Nicola Vetrini wrote:
> On 25/10/2023 09:56, Jan Beulich wrote:
>> On 24.10.2023 22:27, Stefano Stabellini wrote:
>>> On Tue, 24 Oct 2023, Jan Beulich wrote:
>>>> On 24.10.2023 16:31, Nicola Vetrini wrote:
>>>>> Partially explicitly initalized .matches arrays result in violations
>>>>> of Rule 9.3; this is resolved by using designated initializers,
>>>>> which is permitted by the Rule.
>>>>>
>>>>> Mechanical changes.
>>>>>
>>>>> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
>>>>
>>>> While not overly bad, I'm still not really seeing the improvement.
>>>> Yet aiui changes induced by Misra are supposed to improve things in
>>>> some direction?
>>>
>>> I think the improvement is clarity, in the sense that the designated
>>> initializers make it clearer that the array may be sparsely 
>>> initialized
>>> and that the remaining elements should be initialized to zero
>>> automatically.
>>
>> That's as clear from the original code, imo.
> 
> There's also this functionally equivalent alternative, with or without 
> the zeros, which
> doesn't incur in the risk of mistakenly attempting to initialize the 
> same element twice,
> while also giving an explicit cue to the reader that all elements are 
> truly zero-initialized.
> 
>           .matches = {
>               DMI_MATCH(DMI_BIOS_VENDOR, "HP"),
>               DMI_MATCH(DMI_PRODUCT_NAME, "ProLiant DL5"),
> +            {0}, {0}
>           },

Adding a dependency on the array actually having 4 elements (while iirc
we have seen already that we could in principle go down to 3). A change
of this number would then require touching all these sites, which is
what we'd like to avoid.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 12:52:12 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 12:52:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623805.972000 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qvzqG-00011S-MQ; Thu, 26 Oct 2023 12:52:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623805.972000; Thu, 26 Oct 2023 12: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 1qvzqG-00011L-Ib; Thu, 26 Oct 2023 12:52:04 +0000
Received: by outflank-mailman (input) for mailman id 623805;
 Thu, 26 Oct 2023 12:52: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=hFWs=GI=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qvzqF-00011F-Dp
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 12:52:03 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur05on20616.outbound.protection.outlook.com
 [2a01:111:f400:7d00::616])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 7541fcaa-73fe-11ee-98d5-6d05b1d4d9a1;
 Thu, 26 Oct 2023 14:52:02 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS5PR04MB9799.eurprd04.prod.outlook.com (2603:10a6:20b:650::20)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.36; Thu, 26 Oct
 2023 12:51:59 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6954.008; Thu, 26 Oct 2023
 12:51: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: 7541fcaa-73fe-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=WsHO9iCJrmD8wfNiMPv4cD/vriqu9ZHWnxKEbcM1X6RCaVP5phJJlPd+vu7UdVjJ6SAtEpAhTvCLZpfQgVnIPPJx9ap3Zrq6HwWJXrdRQjR9j0LYlvBOAuPoKiXdXUPwW1oxzQRxgvk0nedRCIiUKvtJFU5eKmk5uY1fTJuJU9+gdhgF3LDStf03bRP5R5rrFm0TktxbGkRK8uHGStK0vFK2AAh/yxGt7mRrtXOZT0F+rfEH4NG/Kl8Kqg3wRU5Ju6ji7oZfs/QhrGvMlURnTRfvLLWghjvhv7sOljL7tYquGTufAw9/VQdhjtNkVCj6ow9ngufa1Q4f2x6hUXnmew==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=PXAMHMuCJERcxtt0Dm7d2ZZhd1RzhcRCfpNzWo3MrWE=;
 b=jZjym7LyMvRwLYt6LSpLwvK9rUDYbvS2joMUkO8zuKcdTTvHZsSaNqc0dmg0kycAyNtIthY2McbgR2vtSALrfe8apH3loLfZXnzPgbryQoaRdS3IQcGRqYtxLHn1IhxW3Yc+Qvoy74hR0ZkWfPIZvNYG4hQDPuZ9+xkJbrB20nq3P/F9AWVRpnpZ5HbpR7Rqpl6rtOUVjn9d0BjZa/F+0mCop2NZCyuBCQWP/pqURDSf5EvQhhu3xuY9q/hnu36fPLQex6ZsKChQlOZy+Cx4FKWZNzse6Mryrm9GNkGjBxAhnmIyMg7U2+fLA8c9s+aPTB26Rmoy0nX0vncWIEfTTQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=PXAMHMuCJERcxtt0Dm7d2ZZhd1RzhcRCfpNzWo3MrWE=;
 b=NzSOd3f3UtAupSau0mBjv991JGZRPesHzX4vrywrYn4qIt7jVh5YuFNCt+pHSlqEmOqYxcYqirCv1ZZhnvdfHJVV+pxRrBZ5hby4OAqVUorEVgIm8c1ZRluKiDr9nMdYPmxJn/0u6DFDvypz5mlv0pVftF9j91rc82yDMJEMVAkBehZ7kaxry+BwZjlfBySy2//nQIDSG6KySjIzS261iU2KEn+Cw6EFRc4IgRnU3Pf/89Z8GAOpABTwhwZc7QduNLj6SMNW2X7xjsQJhpJV+P5RGyAL3qZ9ir6+5TcgT3maWwNCZP+g2tZBGiOV595+gfO06/yOcTT4FbR/ejlsYA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <683db2a3-3b7a-1ecf-a0c0-d2d739c0787e@suse.com>
Date: Thu, 26 Oct 2023 14:51: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 7/7] x86: don't allow Dom0 access to ELCR ports
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>, Wei Liu <wl@xen.org>
References: <95129c04-f37c-9e26-e65d-786a1db2f003@suse.com>
 <118fa3e5-e1ac-ab3e-8b86-1ec751513434@suse.com> <ZTpHUzeBbDLe5Lin@macbook>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <ZTpHUzeBbDLe5Lin@macbook>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
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_|AS5PR04MB9799:EE_
X-MS-Office365-Filtering-Correlation-Id: 61963961-8d68-46fe-2db6-08dbd62257dc
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	0IH1PnVixuVGJYPZ3TtM5lHbeS/1S8mn33iTj9GpS9n0wTfB+VaPw6Gm7iHH4C0MttlJPsiefUIsfAlMZxSoUbnuDwrHe4LPLqjxgx2M7yIgYQunxBqftcHya+aUUYP5cEcwgcbJV0sRGObLD3n43ypzj3i/XaKDsDJtLtGr2nkSgHozsDM91IulBMgOA08ZgSEjKMkRoG2BlVvotgrLWQOw4vtYZJ5nJQFvJuZ8UIaiBE1LOHGNQdYW4f0KLGNxuQGZGXfuLp4y8gpAHEkUErPKjJswo2Z5BmbC7eckcKEM2BxeeXm8/lykEzoSrpaVoayvW/VYoBAHLBgZsWJjrTnAJKcMaHpNAeX2QIst/jDqP3VcTPsy0KloHbfKH+icLQyuL8EnqQiYDFa3QRa6sPwH9hDBve7VKSduoNWEJ0LZNMRq4BVosGCOgZh0DiiSO8HbH1S2TzQgCck7Q2c6ISYlSKN4rUr7F8zyoCHyCNSjinwfTXYktaRYCuXvJnqY4iZC5Q0+fREmi+jRGAxpraQEdRUzF1RqfFw1p6FEVblPYNOH0zlapR+Jhnal85bEEcpxsUQBSWBWX1vCiN0/qoA8qWYtnGxA1VVCpwrsSDAUl5EXd6tmxBC2G6oSzbsTJtH95w4t4fGnEUukilkV/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)(396003)(39860400002)(346002)(136003)(376002)(230922051799003)(186009)(451199024)(64100799003)(1800799009)(6666004)(6486002)(36756003)(478600001)(8676002)(66946007)(41300700001)(66476007)(54906003)(66556008)(316002)(31696002)(6916009)(38100700002)(8936002)(4326008)(2906002)(86362001)(5660300002)(6512007)(83380400001)(6506007)(26005)(2616005)(53546011)(31686004)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?KzdZZy9DUzV0ZmFOTmdFVWpmdFZCYVFYK0pVdndlV3FXdy9NQ0xwTFMranc0?=
 =?utf-8?B?VWFzSkgvYjRDVHZ5VkVJNGJpQW9DV2hFN1ZiZ3lHdFBlZC9kNVZZNGpJL0dW?=
 =?utf-8?B?cDVOczhuRlVoRU9tZlVPSHlwbXd6Y2VmbmVkb1U1SU1LWHAvUjFmUU1namxn?=
 =?utf-8?B?Z2VHUjhzQnZ6M2lIdW5zZ0lLZWFvcXF6bUNJNHBzUnF1UmMvQ0RaeFNkNGZX?=
 =?utf-8?B?dndRWFFURHlnQ1dMamYxeWs5WXV0bStiRW1YeG9aUm5oNEdocWFOcFJsRGtK?=
 =?utf-8?B?dWtPQXBMb2lGVFEwQnR4NldDUlRPbTBUMTcvYnNLZlBHcGxCQW5keTIweXNM?=
 =?utf-8?B?c3Zic1JiREdDMGpLQ0VOSnVXMlI4bzdzbjg2clJsR1B4YXBvUkRmTHhZN2JV?=
 =?utf-8?B?N3RYNXNodjlUdkRmVGNaK1FUblJvR3NFYWhxQllUVmpRc0wrTEFYUGRsNFFE?=
 =?utf-8?B?RndHTE1aMnZYdjBTMEdSb0RqVTkxdmVuNHlHb25mSFVCRVVlMUVXVmQyUXVp?=
 =?utf-8?B?ckg0ZFBqaTUzUUFoUFRxaDcxcWhuelZnVXV0UmJINUYwVW5maE1xdEhvSWNH?=
 =?utf-8?B?ZmM4czk1ZEdKZ1FKaFdwRnZDVVg2cGF6ZFdscitYS1JWUGVJYjRNVnp4a2t4?=
 =?utf-8?B?R29CbFdCYkxtUENUemJBd1pMVnQwWjhFZTlPSGxUcW5UZnRBR2Zod2hGSjN6?=
 =?utf-8?B?bVNGOWZIaG5oa3hWTkxpRkthamxxbzJJQXg2TnFTTG1EZFU0SVRmNWFET25N?=
 =?utf-8?B?enk5OWVNSW93TE1maEptMTc4OHZ1cHZzTVR1bVZ5amZ5WkRMc2RlNU4rZTNu?=
 =?utf-8?B?VEQzb0Fjc28zV2hPZGtBaklQYWhuQWNRNkR1L084ODBMTXd4UW44VG9TY2pC?=
 =?utf-8?B?QlFZcy9adUlsWHpNLzB0VTh6TDNvYzNSbWlJdjQ1QkU1NFhTR2dmckF5NVFO?=
 =?utf-8?B?OGx5WUZWTUd0K1dWNEtYYUR1eWo3OTR5SEVWR1M2N28zK3o3Q0pMUlVoUWVy?=
 =?utf-8?B?eHQvbEZiRVVwMTNhWlg3S1JKS0xPeEV5eVVIVk9RREZoampzTjBEazI2ZmMw?=
 =?utf-8?B?T3lFRzBEMGZLT2tUdjV3cVZHZzhTaUVTdDlYV3RHOHN0akhZd1hHTnRDcisv?=
 =?utf-8?B?TUUvNXZhcElLNnNudjNrL3R0QkxJUnorb2ZZekgydmU1bHFpSW5OV3Q1eGNp?=
 =?utf-8?B?Y1VXQUhGa29ad2tnT21vcDJyWHhhNzNFRXoxSUFRbGw2ek9hNzU1U01qbXRq?=
 =?utf-8?B?VFdmQk4xL09XOWFOUUt6NXhVN1BCS1hVWXk2K0t3WGV2MWtJbHNFTTlpVlhl?=
 =?utf-8?B?QVFlZVlMMzhKM04xb2lGZHZPTmhWOEIxbllqUzYzYTR3SVMrSk4rTUdwclIx?=
 =?utf-8?B?aHc1L1YrNzBWNWNTbXd0Zi9hWE5aRFVGczdBYVRYNmhBVU41S0ZHQzdsYlFO?=
 =?utf-8?B?akNmR2lnaUg4bkJzNkdhK0o4bEUwRDhrcEJscmRVclVZWjEzL2g0K2dZTzdS?=
 =?utf-8?B?dU5FVDZYTjgwQkovT0F5RlIwM2hUZi9uZ29LOEVEUjUrY3lXdXFpa3g0Z2JP?=
 =?utf-8?B?R1QrTXFzMXpCVzBURTRMRGZuU1BHbzFEa01FdGhuWkFVakZhcWxFUlRhQmdJ?=
 =?utf-8?B?ZVVQazEwVVplTUFjWno4TEc4a3FnVGJIUHRLcmJqMFczOG1leXRkK2pFcHJn?=
 =?utf-8?B?TmxaTG5DcUxlVmQ3aXBmVFE4NkNIVDJGeUx2N1B5TWEyMXRQdkJPRnlGenUv?=
 =?utf-8?B?N0lLeDdDelR2a096TGo2SkU1RXJKWHR2eE5PVytMeCtSWlFKenhzSG55MlF5?=
 =?utf-8?B?WXA3V25NK2F1NklqY0NJYlduanJuWWF0c0lMUEFCeHZ0OWNrWUxoa0paVzdV?=
 =?utf-8?B?QXJNM3oxWENWWjBFaDVLdzFyRHBrWG1qYzZpN2pTaGlyanc1QWZ1U0prTzUw?=
 =?utf-8?B?SldDaXIrMUdCSTMybGdGYlJvdXZwUklsOFJXbDZteko5eVpRUVpTYXY4VHJQ?=
 =?utf-8?B?VFZiK0pIY1NZWE13S3pXZ2JoNm9jbFdKNW93T2FrR1lvN1dnQUxZZk14anFi?=
 =?utf-8?B?UEQ5emgvL0poSmt3YVBZY3plSGtDUnVqTnZtcCtWaG9qWnFZWFBvYmhFNTd5?=
 =?utf-8?Q?Z3SiAcrgF2Ii4lEn2Ws8+GXsC?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 61963961-8d68-46fe-2db6-08dbd62257dc
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Oct 2023 12:51:59.6065
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: qwXj9DdJ3GWBGmBcdRlxAGRJwp2UQF69So06BANsKFsXNPpPkPOmsmf8WgutsOY3krRE/zkS7oP1NC3CXp/DMQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS5PR04MB9799

On 26.10.2023 13:02, Roger Pau Monné wrote:
> On Thu, May 11, 2023 at 02:08:09PM +0200, Jan Beulich wrote:
>> Much like the other PIC ports, Dom0 has no business touching these. Even
>> our own uses are somewhat questionable, as the corresponding IO-APIC
>> code in Linux is enclosed in a CONFIG_EISA conditional; I don't think
>> there are any x86-64 EISA systems.
>>
>> Signed-off-by: Jan Beulich <jbeulich@suse.com>
> 
> Acked-by: Roger Pau Monné <roger.pau@citrix.com>

Thanks.

>> ---
>> RFC: For Linux'es (matching our) construct_default_ioirq_mptable() we
>>      may need to permit read access at least for PVH, if such default
>>      table construction is assumed to be sensible there in the first
>>      place (we assume ACPI and no PIC for PVH Dom0, after all).
> 
> Unless I'm confused, thise ports only control the triggering mode of
> the PICs, and hence a PVH dom0 should have no business with them, as
> not having a PIC in the first place.

It should have no business, but the code I'm referring to still reads
these ports.

>> RFC: Linux further has ACPI boot code accessing ELCR
>>      (acpi_pic_sci_set_trigger() and acpi_register_gsi_pic()), which we
>>      have no equivalent of.
> 
> If access to the port is denied, ~0 will be returned, and hence all
> IRQs will be assumed to be level.  Some bits reserved and must be 0
> will also be returned as 1.

As with any reserved bits, the party reading them would better ignore
their values (like we do).

>> Taken together, perhaps the hiding needs to be limited to PVH Dom0?
> 
> I very much doubt Xen will ever use the PIC unless forced on the
> command line, and we should likely remove such option and just
> mandate a working IO-APIC in order to run Xen.
> 
> My only doubt is whether some Linux code will get confused by poking
> at ELCR{1,2} and malfunction as a result of not being able to fetch a
> sane mask.

Over many years this code hasn't changed much, if at all. So simply
from it being okay right now this would hopefully be only a
theoretical concern.

> As a last resort, we could make the register RO?

If and when needed, perhaps.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 13:22:47 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 13:22:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623809.972009 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qw0Jl-0008GR-UW; Thu, 26 Oct 2023 13:22:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623809.972009; Thu, 26 Oct 2023 13: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 1qw0Jl-0008GK-Ro; Thu, 26 Oct 2023 13:22:33 +0000
Received: by outflank-mailman (input) for mailman id 623809;
 Thu, 26 Oct 2023 13:22: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=ziZY=GI=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qw0Jk-0008GE-D3
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 13:22:32 +0000
Received: from mail-ej1-x62a.google.com (mail-ej1-x62a.google.com
 [2a00:1450:4864:20::62a])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id b6bc623b-7402-11ee-98d5-6d05b1d4d9a1;
 Thu, 26 Oct 2023 15:22:30 +0200 (CEST)
Received: by mail-ej1-x62a.google.com with SMTP id
 a640c23a62f3a-9b95622c620so156082466b.0
 for <xen-devel@lists.xenproject.org>; Thu, 26 Oct 2023 06:22:30 -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
 s22-20020a170906221600b009ce03057c48sm2355120ejs.214.2023.10.26.06.22.29
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Thu, 26 Oct 2023 06:22: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: b6bc623b-7402-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1698326550; x=1698931350; darn=lists.xenproject.org;
        h=content-transfer-encoding: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=AlTVmxyeiq78aEs19nb5ExnKGoUBVb+hH20bqGrX6II=;
        b=wKk8WRJP5cLKJwYqE0Rd8+Q7Kp023fzT+G9N5C4wy/b0OxaBgYFhfY7argvBy/tHnO
         xMnLebUWkTKfmUDPx13bsWHDFcNc38yhRhQhc/qKrqR/7rJkPg2m3HazN1+6XkzTZbmX
         reOlJPDrLuBk47kiobe4E2oF7u1Cf9IETtmfQ=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698326550; x=1698931350;
        h=content-transfer-encoding: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=AlTVmxyeiq78aEs19nb5ExnKGoUBVb+hH20bqGrX6II=;
        b=tTaFUpiUdXsjLq8p+85ly9xp2W/6t98dw+rD5Da98C5wAOlr7ToUARt+bf1fIAI6DQ
         istDIf7pFcJZ379FhKf3qdiBGUWjdLkJvb1UlTJ2iuADuqgi5fxh5cjhL2I4zI59vYgz
         H5Bp5jRi7kkxAJO1EpKmuMQYvUNAX8IAPqweYBMcVca0L4s0JWNd/6zHhCYng0ZHPoiQ
         RL9kTCn9v35kozBU9IMXPBmb/WTjyhG0rLgwnfrQ4zvZX+3YbEe4ab4aUggmNKTS05eG
         0VTW6MujHBtyekg/jQ8ygUyIeQku9u3BVsp06Cg/PODDRuti+VL52jZ6E/WxAJHhMCrB
         DdWg==
X-Gm-Message-State: AOJu0Yy00mo4K3ay1IXmirYHt6WCTGgnYlyBTgw6F3Z11rF2LIa7K9MO
	n0wUMdoEM0ilGO9XWrNpJtSrHQ==
X-Google-Smtp-Source: AGHT+IHKZzEkPXfSo8+am3j/6ugS0og+uE1AAX0dTrJodLi9OUkbHFDz6zAolzR0+xCfZAl6TazMLg==
X-Received: by 2002:a17:907:2cc4:b0:9b3:308:d045 with SMTP id hg4-20020a1709072cc400b009b30308d045mr12981136ejc.46.1698326549864;
        Thu, 26 Oct 2023 06:22:29 -0700 (PDT)
Message-ID: <a45bf30e-8be5-4652-a357-887f052af917@citrix.com>
Date: Thu, 26 Oct 2023 14:22:29 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH 2/2] x86/Kconfig: Introduce CONFIG_{AMD,INTEL} and
 conditionalise ucode
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>, Alejandro Vallejo <alejandro.vallejo@cloud.com>,
 Stefano Stabellini <stefano.stabellini@amd.com>,
 Xenia Ragiadakou <xenia.ragiadakou@amd.com>,
 Xen-devel <xen-devel@lists.xenproject.org>
References: <20231025180630.3230010-1-andrew.cooper3@citrix.com>
 <20231025180630.3230010-3-andrew.cooper3@citrix.com>
 <85cddaeb-6b75-2f53-940e-0b06396fd1bb@suse.com>
 <0d67d2c6-1841-4771-9e6e-1a6463c0b443@citrix.com>
 <07fbb9b7-e6d7-9abc-a64a-a7972b93b9ad@suse.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: <07fbb9b7-e6d7-9abc-a64a-a7972b93b9ad@suse.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 26/10/2023 12:35 pm, Jan Beulich wrote:
> On 26.10.2023 13:10, Andrew Cooper wrote:
>> On 26/10/2023 8:55 am, Jan Beulich wrote:
>>> On 25.10.2023 20:06, Andrew Cooper wrote:
>>>> We eventually want to be able to build a stripped down Xen for a single
>>>> platform.  Make a start with CONFIG_{AMD,INTEL} (hidden behind EXPERT, but
>>>> available to randconfig), and adjust the microcode logic.
>>> Linux uses different names for the Kconfig symbols. While I'm unconvinced
>>> of the SUP part, I wonder whether we wouldn't better use CPU in the names.
>> I don't see what that gets us, other than a longer name.
> Just to mention the (I think) obvious - on the IOMMU side we already have
> AMD_IOMMU and INTEL_IOMMU. It would be odd to have just AMD and INTEL here,
> yet then ...
>
>>> One immediate question here is how the IOMMU interaction is intended to
>>> end up: Do we want to permit either vendor's CPUs with the other vendor's
>>> IOMMUs to be usable?
>> From a randconfig point of view, yes.  These options are only targetting
>> a specific platform, and we can absolutely make that the end user's
>> responsibility to describe their platform correctly.
> ... <vendor>_IOMMU not depending on <vendor>.

Odd possibly, but not something to worry about.

It's mostly because of asymmetric marketing because while VTD is fine
and recognisable, AMD-Vi has AMD's name in it even for the non-AMD vendors.

Anyone liable to even notice in the first place will probably know
enough to understand why it's like that.

Furthermore, ...

>  Whereas the lack of a
> dependency on <vendor>_CPU would be quite natural, imo.

... this doesn't really work either as IOMMUs are non-really-optional
uncore components these days.


Names are just that - names.  They can be changed if needs be, and it's
the help text which matters to clarify the intent.

~Andrew


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 13:25:05 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 13:25:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623813.972020 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qw0MC-0001Ql-DF; Thu, 26 Oct 2023 13:25:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623813.972020; Thu, 26 Oct 2023 13: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 1qw0MC-0001Qe-AV; Thu, 26 Oct 2023 13:25:04 +0000
Received: by outflank-mailman (input) for mailman id 623813;
 Thu, 26 Oct 2023 13: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=Iwvv=GI=citrix.com=prvs=656fec104=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qw0MA-0001PM-Lq
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 13:25:02 +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 0f4f7692-7403-11ee-98d5-6d05b1d4d9a1;
 Thu, 26 Oct 2023 15:25:00 +0200 (CEST)
Received: from mail-mw2nam10lp2101.outbound.protection.outlook.com (HELO
 NAM10-MW2-obe.outbound.protection.outlook.com) ([104.47.55.101])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 26 Oct 2023 09:24:51 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by BY5PR03MB5078.namprd03.prod.outlook.com (2603:10b6:a03:1e5::12)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.34; Thu, 26 Oct
 2023 13:24:49 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::acf0:ce2b:1634:5aee]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::acf0:ce2b:1634:5aee%6]) with mapi id 15.20.6933.011; Thu, 26 Oct 2023
 13:24: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: 0f4f7692-7403-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1698326701;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=Djp8hlenDBZASoQ3Z3ki/FMOMTKu+pNox9qJhFT5C2Y=;
  b=dz8UKB9vtUrTiFd42yttuj2YaXPuowtChU3rlzhjokdDx5l3YDsQ0G+0
   gKGHgtTchu2wg8K1siogtw0EkfXccnVlzu/AtIQ2gmbq8wUfx2MGP+/UO
   5fNQ5jZ2L9HRxqClnxTfYGk7lShcOXUapamzqs+DHHJDTSdhMDuJqBMSt
   w=;
X-CSE-ConnectionGUID: WwUeDMUkRny3uJ/N7J4YpA==
X-CSE-MsgGUID: v5CVYyHGR3eshHgPKdanWw==
X-IronPort-RemoteIP: 104.47.55.101
X-IronPort-MID: 125319086
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:C6/j76nCx5IYGD9aV0sOw1jo5gynJ0RdPkR7XQ2eYbSJt1+Wr1Gzt
 xIcDDuAPveDZ2KgL4p0O9nlo05S78KAzd5lTwQ5+y81RSMWpZLJC+rCIxarNUt+DCFhoGFPt
 JxCN4aafKjYaleG+39B55C49SEUOZmgH+e6UKicfHkpGWeIcQ954Tp7gek1n4V0ttawBgKJq
 LvartbWfVSowFaYCEpNg064gE0p5K+aVA8w5ARkPqkT5gGGzhH5MbpETU2PByqgKmVrNrbSq
 9brlNmR4m7f9hExPdKp+p6TnpoiG+O60aCm0xK6aoD66vRwjnVaPpUTbZLwXXx/mTSR9+2d/
 f0W3XCGpaXFCYWX8AgVe0Ew/yiTpsSq8pefSZS0mZT7I0Er7xIAahihZa07FdRwxwp5PY1B3
 cMHFT0hSy2AveSnm6+ZDc8zpJgSNOC+aevzulk4pd3YJdAPZMmbBoD1v5pf1jp2gd1SF/HDY
 cZfcSBocBnLfxxIPBEQFY46m+CrwHL4dlW0qnrM/fZxvzeVkVE3ieC0WDbWUoXiqcF9hEGXq
 3iA523kKhobKMae2XyO9XfEaurnxHmmA9tDTO3mnhJsqEPO7VIiGT05bwC2uvmZhXadV9tZF
 FNBr0LCqoB3riRHVOLVXRe1vXqFtR40QMdLHqsx7wTl4rrZ5UOVC3YJShZFacc6r4kmSDoyz
 FiLktj1Qzt1v9W9Vna15rqS6zSoNkAowXQqYCYFSU4A/IPlqYRq1hbXFI87Seiyk8H/Hiz2z
 3aSti8iir4PjMkNkaKm4VTAhDHqrZ/MJuIo2jjqsquexlsRTOaYi0aAszA3Md4owF6lc2S8
IronPort-HdrOrdr: A9a23:IRo3qKlpoNhRN+RIkik8SYSxN7jpDfL23DAbv31ZSRFFG/Fw8P
 re+cjztCWE6gr5PUtLpTnuAtjifZqxz+8P3WAxB8bFYOCFghrTEGlihbGSuwEIcheWnoU86U
 4JSclD4bbLfD9HZKjBkW2F+hUbrOVvMprEuQ4T9RhQpHpRGthdBs5CZDqzFk1zSE1YCYEiFJ
 yaj/A32gadRQ==
X-Talos-CUID: 9a23:JVnVqWCbTxA5gKr6ExZ4yUM4P/0mSHvMl2ryZGnnKzpYUJTAHA==
X-Talos-MUID: 9a23:byBCogivcolIkVp6M7f+PcMpKppD3ZW/KG83ypgdu+mLDQ98MjGik2Hi
X-IronPort-AV: E=Sophos;i="6.03,253,1694750400"; 
   d="scan'208";a="125319086"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=VCx2TjLg91oRVgFDblwno5uvnhwgvYjLZv9kxCpqwh0VLCxeDt3glslhVAko9n40fRYKk2MFILPqAnfreymJR4RkjrDx3vMUruQGDx0wl7mw2TQyT4XFDPzqpBE9/GBF2x34T36JXWbKO12HTqwKE7RHGBkE9mpHDiMmc4ck9aPpQVdyWS4nVU2A3cXOV1Dr43W0mQ2ulxpYpt3xAOXyURI1w0Cd7U8I16u0CmGAC38jcIlijeyY0SVmKMSfvQQAQn03bqKqA9RPvCJk24f7gOzTSK6VCJIm3rLB3KdmnvG5sGu88Sz4ElJ5uD2xHj4a3PoB/iwPRK39N0Z6+P/mZw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=o/mmP/GnLyA0cnqztq7H0FcYsONSfuIxFrqUb3Vb40c=;
 b=G4cJqXNqtX1CAuPGTRLC0stKbazw2RievXLloU+7dFxLqDBO+UCvzXTnFfftCZOFKt5pycU7sZLeJMsrJguDRp9/BvJLNZcSqIjQw86Fvj5flvThRj/ixcDyIkfYIIfrSlpTPxA3L8XNpJYTJmkc5N4Ol5JSqFed2W7pB3uE9IIF3vxm7AZa6toddCin+v8R0NQFgbL73rVZSUY3mlVbUGF+zTG+D+l1fDo6lpLABjsFsuJcFCvuHwRMRoCVT83j5xVb32B/N7F9SO4flT8SNxE1TZ0FBCxiqeXgUNXkox1/vGlfK4gQLT4Pvuls653cvxZVFWQYGljbSW9szHl8hw==
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=o/mmP/GnLyA0cnqztq7H0FcYsONSfuIxFrqUb3Vb40c=;
 b=iQbBtG340gj2YLOyfyeClGDMlNU/F5S/peWOR8edPavtc111qczLna9gTrbgMoSR9SqG5EzLtkrXDMOem6H+FZInEUSF3v5LqZ9aZP7Uim/5GwlXL7jfzlA4wNB/bdPa4D2Gk9Eo36KsFtAvIsxJI38mkcFRHjHHPdSToWQKr4Q=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Thu, 26 Oct 2023 15:24:44 +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>, Wei Liu <wl@xen.org>
Subject: Re: [PATCH 4/7] x86: detect PIC aliasing on ports other than
 0x[2A][01]
Message-ID: <ZTponIYDYDWRZhzi@macbook>
References: <95129c04-f37c-9e26-e65d-786a1db2f003@suse.com>
 <27dd8f40-1ea6-1e7e-49c2-31936a17e9d7@suse.com>
 <ZToksEP1Fg8MscdK@macbook>
 <86eb1c0d-ac95-247b-16c3-9c4871398082@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <86eb1c0d-ac95-247b-16c3-9c4871398082@suse.com>
X-ClientProxiedBy: MRXP264CA0011.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:15::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_|BY5PR03MB5078:EE_
X-MS-Office365-Filtering-Correlation-Id: af5a7446-d71d-4fd6-5609-08dbd626ede5
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:
	j8APmCc65NIeujdpNx4YhJ4L8m6BMyRgFAbH2Gh2T20mqaCAq+pWMd76D5Jjq9b70+1oyHFFPobbEn9w2pMgiSYR5Jd1wuwkJeQknqpMWue3rJCwbq8/cU7Pv8npZ3m1Bc5dhW+qM2ba5NbIkZ7G7DRJvK3dZxEyU7hxdOahIdlSAwyIquJzUeI4F5uBVH+AEZavw7rIzbbL1dR0i6BFSMTroKrQ+M8LQzxlf0B88r5vevcZtVq+MutVyptmG7L5jNamTT8/ucKAaUBMRVrPTb7IFvtWEL1c55pPMHmLJNcTOxBYKG0L+mEWyNZ2ZUMhxTxJ+HklKcfdwE7xK7tslF9so/U/St1QCydWUi0aHHOpYwjKt/+G2YnGYmK8eyudtbhcnGPXWYDpCeA5Lcz7gAVpJ4Ilu4rzC0o/oU2CJhbaw2HGhwe1HdeUyi9Vr7zt3i7wTpXsAx1KBN3CwGDx0F5ZZ7mH54b0jo38/1NJQwURO9Rbr2uGCL7PQxb3NqnJSmK3NAD6V+BY80rT//YW58mGS7NXqvFMnryuezbhSQdpdRP4RWGYKsMR6IsHbp9K
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)(39860400002)(396003)(136003)(230922051799003)(1800799009)(64100799003)(186009)(451199024)(6512007)(33716001)(6916009)(66946007)(9686003)(316002)(83380400001)(6486002)(5660300002)(478600001)(26005)(2906002)(41300700001)(66476007)(4326008)(66556008)(8936002)(8676002)(54906003)(38100700002)(53546011)(85182001)(82960400001)(86362001)(6506007)(6666004);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?eFJWNVQ0QnI3VGx5NkcvcUZaTlJvL09zTnlneFVmeTlRbjJsdXRhWVA5RFlI?=
 =?utf-8?B?RWRGWE9YMW1YcW8rbnFrWnJSekx5czJST2FENDRXQW1kYklJMXdNOGZsVFJt?=
 =?utf-8?B?QndrOHowRjQvSnhGYms4dFRSMk9jbVdQeWhCT1NIbjRDR0tXbjlYdVFzaWtX?=
 =?utf-8?B?K2dSMCs1cGlxcUNqdEl2ekVXTHZoOTdnTGF6bGt4Y21qQ1VHZm1OM2RSb1JU?=
 =?utf-8?B?aExDbmFRVEdHWUR4Y2JWVVpvc3hhSFJ0dkMrY0pObHhQUFJ1dzFGVXYrMU5m?=
 =?utf-8?B?UklsRVVzTXFuRnFHbE5MZWY2MDNRT0xPYk53T2EvZWNmQmFvdlVXcXVtcStw?=
 =?utf-8?B?dlp1ZGdxcWI3dkZibEpTV1FPaEYyVXMybnZYSWxHV1VyZGg2UEtMYzZ1THlU?=
 =?utf-8?B?Wm9sTUp3Z0FlT25MRjQyTVM1cC90U1crL2VFYURVSXB0L1dBdTNtcFZwbkRH?=
 =?utf-8?B?RU1nVkFmOHpzS1ZEZ2t3Ylh5U01rOUZjY2FqWldtRTZhNnU1RG5jL2llSFlj?=
 =?utf-8?B?ajFsTU1sQ0pncWErUjJrUFNHMW5OU3owVUFqdDZzQVdHcjAyMGNsQk0xakQ4?=
 =?utf-8?B?T0ZnSENXMlJGMnlVM0M0SHFZUGx3ODhVVy9zVlpSQmlnaEpKZCs4VXJRMmNX?=
 =?utf-8?B?aGxSYmZEcHJ3dndUS08rclF5a1FlcXk4aC9McThGMlpPbWVLYXVCOTR6QlFV?=
 =?utf-8?B?dHFDd2NIOUx3ejhqYWRKVWs2Vm5xU2hLdWEvQ2l2bEdOMGlPZHMyL3dLeHFI?=
 =?utf-8?B?N1BJK01qMm9PcVZFZ1JucHBlSDNPYVFuVUZQS1A3VzJEWXJHVjBJRUtPVXox?=
 =?utf-8?B?YU9GbEFYZEZvMFE5ekhoSERKYVhXVyt6VW8zU2NrRThKOGcyUkM4K1pXc21Y?=
 =?utf-8?B?bmh4NHJuU3VhMUZxZ0xoZGdaTFFGbThLbktERzAyWlhNdTc3ZWdDVjNuL0JQ?=
 =?utf-8?B?MlYrQ0lGZ2F0OTJvTXBmcjFvWUc0UDNCTWtRTjVMSXlKNlRjbW00VmlPMWRr?=
 =?utf-8?B?NjJLL1pKblRodU50NkdmaDVVcnprMGU2SS82N1k4Q3l0UWpjeGh3NWYrRHRC?=
 =?utf-8?B?R3FjdERkVVhXQU9jNEd1dlpxZVdvRjJINUxEZVN2M3kwQ0RVL3k4dGdSdmhq?=
 =?utf-8?B?SC9PUG1sWDlVZjFXR1V3TVNvMzg0dTFIVVk4REdLRERiY2cyNm4vVFZNRTkv?=
 =?utf-8?B?UWVrRFEzR0Q5M0J2MWRSMHlEaGVDSHJOcGh4emFwVzR5SzI4cXFoTzYydmNS?=
 =?utf-8?B?d29aVFFwMnp4M3h2SW1EWEhmVmNmYngyZWZzTW9ramQxL1U2NE45Y1hmWmNB?=
 =?utf-8?B?Z2lDRWpoR3VsZlg3R291ZFFJblorSlp6NVQzMzB4N2tDNUFRYWV5MmdCTkpL?=
 =?utf-8?B?U1lSWjNNTzBaeFJNWGQrMElxOEZZK2FGbTMyWDkydkQyVWJkZzJOY2Jvdzls?=
 =?utf-8?B?ZUF5NDZ1UGlraSt1a3V3WlZiby82TWk1dmNQYWFqUHRRVllhZ3pOei9DL0VP?=
 =?utf-8?B?VHZoU3duMFVsOEg4SDRuT1RYaHN6RTlPNGpVeC80S3Yzd3FNYWFlVmF2VFhO?=
 =?utf-8?B?R1hoNXJiNGpIY2g4QW9pZ0lVUXFaQVk5NHlqNHhXR0pMVDZWMk5Tc09hTGp0?=
 =?utf-8?B?cFcvdzBEV3RBVXo5RGJLMncxS3IreTNXSkl4MzBlamNUc093TXNCNWNZcXdo?=
 =?utf-8?B?MjBoM0pwbHM4dUVEb2FjMXlaL3VFYlprakM3T3pyUGhXQk1TWXN3elh4ZzBp?=
 =?utf-8?B?VjI3NmJYUHRFZkQyTE00QXJtRGEvZ2NjMFg1K3dBeTFySSsyL1F4U0hmVXA0?=
 =?utf-8?B?UWdRSmJKb0hheFQ0VFZWUnh3NEZCT1Viem9OeWtwazBGQmRJSEtjZXJXTXI4?=
 =?utf-8?B?eFpwbnlOOGZ5bWdjaXdoODFRWWxIWVpCbndxL3MrbGpmdVBuNlB6RXlDeXR3?=
 =?utf-8?B?TWJRWFl5R3NpYkV2MFBTRjZFTkdjbExvUmFBamdQOUNiN0VoQ20zL1RNVGlS?=
 =?utf-8?B?cEQxT05lbHhjbmJJZFMrWUxSZjZSeGZINUM2WDZ6K3YvSk5pV2N0bmE5YWV0?=
 =?utf-8?B?MHBiSCtFQitCWmlnWi9wRDlXM1BrQ2Fna2RtNjRaRmJVb2UrZDU1bHNsd1RI?=
 =?utf-8?Q?O6lNwydnD9XlvvVHhijSj6Nua?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	bgZefyQ4oyi3h6Tm/IqQ8bvn/wMoh7PmgNgD0jH/MYurKg+SKEz42e+X99pywlU9vuNGUXsgtF5EJ36R+7FndBujieSO9NOa+I2s4cTDEnDNOwqarQd58XGIKHe4KW6BPRrMtyN1nDDk/2dc6GDpCUUwD4jPaMl5BoJnWtW36uLvRblTXahduRU3ZihOvUKHQgq5F0atU7/6bfGgB1TDyiEo6/gnBFW/qz3jF+7N17QY9nzcv6gnDNvLiiS9JtJz9iaSX5pKkxqtD9/fXxomlA41FjUh+2J3KY/+wlqhONpYAWbAp07hwpcuZOvVoLVRYzmwjILeiOBJRinVpp+wKGAhwvqrDvIJyam2xE0mdYXREd9E+3lnkYxprA5g+7TDzF2HlnTSoWxvujrosOARp5jay2+zqmxHGGuv1Cf9Mu29TSKxndlMqmDxIQfqYfy2WSEFeGoIzYngG0DvxdB0dn8pPHzV0Pp2V/AKlhdCVaOpQNOp4qYb1XEBaJOR/ZNNu9oRVpcoaGSDXFwnNUHssbHxNk26jd9KA9Xyb9tcda4BaCVQCLoNQTzJvfo66ItHoYffg29WJJMWdYUhqfzyVWPhlVA/xhyWy/K3k9TQ0lIrCLRsxTn5kywjH6jCymYcSyxNjYgGFHgoZe214+mDVGRMRLqXhGQL0ZO+ljcjof//0Gr3bAeh91KSAteAVf+R+HG3yOMyTAoKf5/76tpTxQ+eOo8XfshE6NbdV2i7nn3aRWw2uNvtLK1bWEtUKoppglxieNOUwKKKYcCYOkxya0Ooe657HgOrtiUZBWOBbcs4ZIn35+Ia89W1XJBpbMYYBrC4OFSSU7qvgraFjQWO+w==
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: af5a7446-d71d-4fd6-5609-08dbd626ede5
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Oct 2023 13:24:49.4816
 (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: 6+Wfg9xzccAA6gwlp7MHbO/aFO2rxghTLiuCJeUmasMe294JCxOb1qzSZXYrQA3A7n+lunGG7oSOhxDzapmJVA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY5PR03MB5078

On Thu, Oct 26, 2023 at 11:03:42AM +0200, Jan Beulich wrote:
> On 26.10.2023 10:34, Roger Pau Monné wrote:
> > On Thu, May 11, 2023 at 02:06:46PM +0200, Jan Beulich wrote:
> >> ... in order to also deny Dom0 access through the alias ports. Without
> >> this it is only giving the impression of denying access to both PICs.
> >> Unlike for CMOS/RTC, do detection very early, to avoid disturbing normal
> >> operation later on.
> >>
> >> Like for CMOS/RTC a fundamental assumption of the probing is that reads
> >> from the probed alias port won't have side effects in case it does not
> >> alias the respective PIC's one.
> > 
> > I'm slightly concerned about this probing.
> > 
> > Also I'm unsure we can fully isolate the hardware domain like this.
> > Preventing access to the non-aliased ports is IMO helpful for domains
> > to realize the PIT is not available, but in any case such accesses
> > shouldn't happen in the first place, as dom0 must be modified to run
> > in such mode.
> 
> That's true for PV Dom0, but not necessarily for PVH. Plus by denying
> access to the aliases we also guard against bugs in Dom0, if some
> component thinks there's something else at those ports (as they
> indeed were used for other purposes by various vendors).

I think it would be safe to add a command line option to disable the
probing, as we would at least like to avoid it in pvshim mode.  Maybe
ut would be interesting to make it a Kconfig option so that exclusive
pvshim Kconfig can avoid all this?

Otherwise it will just make booting the pvshim slower.

> >> @@ -492,10 +492,17 @@ int __init dom0_setup_permissions(struct
> >>  
> >>      /* Modify I/O port access permissions. */
> >>  
> >> -    /* Master Interrupt Controller (PIC). */
> >> -    rc |= ioports_deny_access(d, 0x20, 0x21);
> >> -    /* Slave Interrupt Controller (PIC). */
> >> -    rc |= ioports_deny_access(d, 0xA0, 0xA1);
> >> +    for ( offs = 0, i = pic_alias_mask & -pic_alias_mask ?: 2;
> >> +          offs <= pic_alias_mask; offs += i )
> > 
> > I'm a bit lost with this, specifically:
> > 
> > i = pic_alias_mask & -pic_alias_mask ?: 2
> > 
> > Which is then used as the increment step in
> > 
> > offs += i
> > 
> > I could see the usage of pic_alias_mask & -pic_alias_mask in order to
> > find the first offset, but afterwards don't you need to increment at
> > single bit left shifts in order to test all possibly set bits in
> > pic_alias_mask?
> 
> No, the smallest sensible increment is the lowest bit set in
> pic_alias_mask. There's specifically no shifting involved here (just
> mentioning it because you use the word). E.g. if the aliasing was at
> bits 2 and 3 (pic_alias_mask=0x0c), we'd need to deny access to 20/21,
> 24/25, 28/29, and 2C/2D, i.e. at an increment of 4.

Right, it took me a bit to realize.

We assume that aliases are based on fused address pins, so for example
we don't explicitly test for an alias at port 0x34, but expect one if
there's an alias at port 0x30 and another one at port 0x24.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 13:38:25 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 13:38:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623820.972030 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qw0Yz-0004Ex-Hx; Thu, 26 Oct 2023 13:38:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623820.972030; Thu, 26 Oct 2023 13: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 1qw0Yz-0004Eq-Ev; Thu, 26 Oct 2023 13:38:17 +0000
Received: by outflank-mailman (input) for mailman id 623820;
 Thu, 26 Oct 2023 13: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 1qw0Yy-0004Eg-JH; Thu, 26 Oct 2023 13: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 1qw0Yy-0004Pb-Eb; Thu, 26 Oct 2023 13: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 1qw0Yy-0005bH-16; Thu, 26 Oct 2023 13:38:16 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qw0Yy-0000Oy-0h; Thu, 26 Oct 2023 13:38: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=NGM+nI/MqddVb/BIzr0okI3F7wYiG4nWqa4QjlJAWWI=; b=I0ZQMVFJfhYU7svviIg4HXUbUr
	aBcjq8MxgX1hKr7rfbCIYKfHyQgtuanEjdHl2pcdIzib2ffbaxEiGd1/2bB5mOTqlvgjIHz54IDTs
	ehrX8NsciVN1pPa4X+mF5N6ymHWoq51jpGFWbODAb/Ijexa2pT7l7B4NbspOKzSaGYvI=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183535-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [libvirt test] 183535: tolerable all pass - PUSHED
X-Osstest-Failures:
    libvirt:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt:saverestore-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-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-i386-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-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-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
    libvirt:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    libvirt=4bdadede245b90ec1d9abfc659e07b247bc8b2ba
X-Osstest-Versions-That:
    libvirt=0eca9ba3161b4f31640a1bbf059e2e338d13f1e9
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 26 Oct 2023 13:38:16 +0000

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

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183521
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183521
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183521
 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-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-i386-libvirt-raw  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-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-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
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass

version targeted for testing:
 libvirt              4bdadede245b90ec1d9abfc659e07b247bc8b2ba
baseline version:
 libvirt              0eca9ba3161b4f31640a1bbf059e2e338d13f1e9

Last test of basis   183521  2023-10-25 04:20:21 Z    1 days
Testing same since   183535  2023-10-26 04:20:25 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrea Bolognani <abologna@redhat.com>
  Marc Hartmayer <mhartmay@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
   0eca9ba316..4bdadede24  4bdadede245b90ec1d9abfc659e07b247bc8b2ba -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 13:41:37 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 13:41:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623825.972040 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qw0cC-0005j0-0i; Thu, 26 Oct 2023 13:41:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623825.972040; Thu, 26 Oct 2023 13:41: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 1qw0cB-0005it-TY; Thu, 26 Oct 2023 13:41:35 +0000
Received: by outflank-mailman (input) for mailman id 623825;
 Thu, 26 Oct 2023 13:41: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=I5Mm=GI=amd.com=Michal.Orzel@srs-se1.protection.inumbo.net>)
 id 1qw0cA-0005in-OB
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 13:41:34 +0000
Received: from NAM11-DM6-obe.outbound.protection.outlook.com
 (mail-dm6nam11on20620.outbound.protection.outlook.com
 [2a01:111:f400:7eaa::620])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 5d4ab70e-7405-11ee-9b0e-b553b5be7939;
 Thu, 26 Oct 2023 15:41:29 +0200 (CEST)
Received: from DM6PR02CA0042.namprd02.prod.outlook.com (2603:10b6:5:177::19)
 by SA3PR12MB7976.namprd12.prod.outlook.com (2603:10b6:806:312::20) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.19; Thu, 26 Oct
 2023 13:41:24 +0000
Received: from DS2PEPF00003440.namprd02.prod.outlook.com
 (2603:10b6:5:177:cafe::b8) by DM6PR02CA0042.outlook.office365.com
 (2603:10b6:5:177::19) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.19 via Frontend
 Transport; Thu, 26 Oct 2023 13:41:24 +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.6933.18 via Frontend Transport; Thu, 26 Oct 2023 13:41:23 +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.32; Thu, 26 Oct
 2023 08:41:22 -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.32; Thu, 26 Oct
 2023 08:41:22 -0500
Received: from [10.71.193.58] (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.32 via Frontend
 Transport; Thu, 26 Oct 2023 08:41: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: 5d4ab70e-7405-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=lmyP3rwImQD6UCVUEP41mg+jANY0Ehy7kotG08v2Jrm+HdWRyPq0+hjdekdNfxV/gCL30je7ftguS0i50Af4PMbsHqtf23W6qa9P1+EnM3cV9UckYBQi1XCM8ifMq8Mr9YRr7Y4M0Fxg+1a9iEzDVZZulasQxMS8VCMwHK6bZgnt6NwcbQiBjSo7l3CVvBiv9QuXDGad/4ZCfsEyYZBoSm6nRK1VO/9o5UJcq0UCrujEatMLw4k/eWIn/NL6OBlMn+TUAbsYcAuHFLdYqaV+1u7uxdbQonPXjtU2HF90jjrkBJmdiZI0lzBan9BnU8ZLt1QpJdV4lj4zo6793dbZKg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=Jpf63Ghrqv+2EEV7KDj6pk+VhyGTFkL8j3vsiqiLCSM=;
 b=eCGq8VxCllPdhUu6FMJtf3w5HLVrkIu79mXEEJVcsUiCWuEaj45mdZOnGuRkMS+g0Yjnb2NA2gzO8r1PapvaveF/JR+Eh3j4jgCn33Je7iORre5nAF2f0PMmSoR4mhzQ/epp0uj/p78KAIAmXP7dVyFD4z12NfzwVRcEROlOf+SdJLxrITor0qM6JlQMrb45oZ8fNcMZLnhE7zQin548ZgMMWeR5P0pCVa1DBksf9eQtrz5xO4/6Ac3eqfJw9PvU34sVdvKYMiva3HRxXrQDdBF7YaRx/C6pYiNdA/tumv+MFYc+l0+eMbtknMtr5mQwayXd4Sfjkt8DG9p6+Dpx+w==
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 (0)
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=Jpf63Ghrqv+2EEV7KDj6pk+VhyGTFkL8j3vsiqiLCSM=;
 b=KCP/klP0/5ze1mT8Hizs2F4KE1sJGX0NYRnTSGqirzEWTe28WoehB0ezE12aCCWlUyIl3iQYBG6ZplDJJhNL58+MMlCuGSiOwcN7PcrYVsJuu3lgcbhFK3yT3oZkz14Ove1Y85apbGBqwGT4MvG/T/Ir14xYYl/ku9k+Rkz8PD8=
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: <c10f727d-21df-4f60-acec-66b341cd5420@amd.com>
Date: Thu, 26 Oct 2023 15:41:20 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN v2] xen/arm: arm32: Use adr_l instead of load_paddr for
 getting address of symbols
To: Julien Grall <julien@xen.org>, Ayan Kumar Halder
	<ayan.kumar.halder@amd.com>, <xen-devel@lists.xenproject.org>
CC: <sstabellini@kernel.org>, <bertrand.marquis@arm.com>
References: <20231026111228.2724962-1-ayan.kumar.halder@amd.com>
 <e470ca62-6b51-4f7a-828b-dd95b881bf71@xen.org>
Content-Language: en-US
From: Michal Orzel <michal.orzel@amd.com>
In-Reply-To: <e470ca62-6b51-4f7a-828b-dd95b881bf71@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_|SA3PR12MB7976:EE_
X-MS-Office365-Filtering-Correlation-Id: 48f79a33-dca7-4842-260c-08dbd6293e88
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	yI0/CKObzzV3OKmlDWWFM4/xHlcHact/88voixe1KEIMcZCF2VJA8e9CrYfcy+FWU/fqyPmfpcC6jKB3//b8CoIWP77f9WVptSDfdGK8db88r2X7fs4tuNhfFst6C1R0NMnrpoDlYSauuRVgFBldwR1pf6iE7nju2EykRk56I8B/KiIS0g+6d31zr/2ssVPyly7fGjabfKGaJHM3aiLM3oxfPXrMKKa/EdRvIJF3iSu6xzxSgT9mS2GT5Z7lqUufmXPgcXDd/amMYo1v3CABlIxZaLf5swb4spGufPuDTLEJtGrH6YPHgpgRYGxOHwdMcfO+4fgTDYfs9dxq5VGePQw3OSKQTT46qFs6oUpR1YKgMxJSGbPijyESo54sdiED0jvi7okrGzorb2G8QApZ2LKrudFYf7mj8ygwyZhpMVOCgyFYC3PUEkw9IeCkr1qBjQP1E8hve72isluxsSdeVfewMSpHcz0GiCBDg/aPV+0qeVnAhjjMP11F8EBq3XBoW2wMn0Ajcz5FlZj3+HOThKfPuvXQXn0mLV+NLIedPFTEDPQftRYJI56kjyZJeNg1aCLVIQbgWSJUXuwK/f0nCLc6OQqxENHGPDS515SqpTsmM3bEY5lahRFypS9a0pX8ir2TtNcU6R8n4jWevS9B+/HFxhJN729gqUzBez7zYOomoVZIhHqLfelk1qR+OeCJD2SAA1mWSsecWcUwV4DLkam0smDtWTaHe3yH51FDpprDsYhrWsRxKPNv5/NRZPqwp5QOOrO3EUtC0Ex5MvrkBiTglAF/3Q7BLDuoyos/gLk=
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)(230922051799003)(1800799009)(186009)(64100799003)(451199024)(82310400011)(46966006)(36840700001)(40470700004)(40460700003)(44832011)(40480700001)(53546011)(478600001)(2616005)(70586007)(316002)(70206006)(54906003)(110136005)(16576012)(36756003)(31696002)(966005)(86362001)(47076005)(36860700001)(426003)(336012)(81166007)(82740400003)(26005)(356005)(8676002)(8936002)(83380400001)(4326008)(5660300002)(31686004)(2906002)(41300700001)(43740500002)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Oct 2023 13:41:23.3389
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 48f79a33-dca7-4842-260c-08dbd6293e88
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: SA3PR12MB7976

Hi Ayan,

On 26/10/2023 13:19, Julien Grall wrote:
> 
> 
> Hi,
> 
> Title: This reads as you replace all adr_l with load_paddr. So how about:
> 
> xen/arm32: head: Replace load_paddr with adr_l when they are equivalent
> 
> On 26/10/2023 12:12, Ayan Kumar Halder wrote:
>> Before the MMU is turned on, PC uses physical address. Thus, one can use adr_l
>> instead of load_paddr to obtain the physical address of a symbol.
>>
>> The only exception (for this replacement) is create_table_entry() which is
>> called before and after MMU is turned on.
>>
>> Also, in lookup_processor_type() "r10" is no longer used. The reason being
>> __lookup_processor_type uses adr_l (thus r10 is no longer used to obtain the
>> physical address offset).
>>
>> Signed-off-by: Ayan Kumar Halder <ayan.kumar.halder@amd.com>
>> ---
>> Refer https://lists.archive.carbon60.com/xen/devel/682900 for details.
>>
>> Changes from :-
>>
>> v1 :- 1. No need to modify create_table_entry().
>> 2. Remove "mov   r10, #0 " in lookup_processor_type().
>>
>>   xen/arch/arm/arm32/head.S | 13 ++++++-------
>>   1 file changed, 6 insertions(+), 7 deletions(-)
>>

[...]
>>   /* This provides a C-API version of __lookup_processor_type */
>>   ENTRY(lookup_processor_type)
>>           stmfd sp!, {r4, r10, lr}
> 
> Do we still need to save/restore r10?
Apart from this remark...

> 
>> -        mov   r10, #0                   /* r10 := offset between virt&phys */
>>           bl    __lookup_processor_type
>>           mov r0, r1
>>           ldmfd sp!, {r4, r10, pc}
>> @@ -897,8 +896,8 @@ ENTRY(lookup_processor_type)
>>    */
there is also a comment here listing r10 as the register in use and explaining
the need to calculate the offset. This should be tweaked as well (r10 is no longer in use
and we don't care if we are running before or after MMU is on, since adr_l will always get us
the address in the current address space which is what we expect (before MMU - physical, after MMU - virtual).

>>   __lookup_processor_type:
>>           mrc   CP32(r0, MIDR)                /* r0 := our cpu id */
>> -        load_paddr r1, __proc_info_start
>> -        load_paddr r2, __proc_info_end
>> +        adr_l r1, __proc_info_start
>> +        adr_l r2, __proc_info_end
>>   1:      ldr   r3, [r1, #PROCINFO_cpu_mask]
>>           and   r4, r0, r3                    /* r4 := our cpu id with mask */
>>           ldr   r3, [r1, #PROCINFO_cpu_val]   /* r3 := cpu val in current proc info */
> 
> Cheers,
> 
> --
> Julien Grall

~Michal


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 13:54:18 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 13:54:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623831.972050 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qw0oK-0000ge-3z; Thu, 26 Oct 2023 13:54:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623831.972050; Thu, 26 Oct 2023 13:54: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 1qw0oK-0000gX-1Q; Thu, 26 Oct 2023 13:54:08 +0000
Received: by outflank-mailman (input) for mailman id 623831;
 Thu, 26 Oct 2023 13:54:06 +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 1qw0oI-0000fF-PJ
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 13:54: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 1qw0oI-0004fq-0T; Thu, 26 Oct 2023 13:54:06 +0000
Received: from 54-240-197-238.amazon.com ([54.240.197.238]
 helo=[192.168.13.109]) by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qw0oH-0001AT-N6; Thu, 26 Oct 2023 13:54: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=roINfNXYBFLZw180DmfuhTRQCVLsQHJvuNDkvUWrwVA=; b=2gqRT0XmMiV5GWvVDeFO6/wpUq
	W4gx2+VGQTOPnzR2IhR7bW/lzXfLG/7scx6DuRDxEW9LVnNyHiV0bXxZcxLNxOrAuOc6hrhv5ZBXa
	FOqDyxc7b8wUnhDxkKCoQDVwS6YD6T2WNa57XG6qZliqOZr4mxMoV37IjVqm7HrOYKpQ=;
Message-ID: <831e23c2-f30d-4931-8749-99e4b9c4215b@xen.org>
Date: Thu, 26 Oct 2023 14:54:03 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN PATCH v2] automation/eclair: add deviations for MISRA C:2012
 Rule 8.3
Content-Language: en-GB
To: Federico Serafini <federico.serafini@bugseng.com>,
 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>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Jan Beulich <jbeulich@suse.com>,
 Wei Liu <wl@xen.org>
References: <1c146f28cb19607ddd6741de4f7de051894a3381.1698314415.git.federico.serafini@bugseng.com>
 <662e9080-5648-47eb-95e6-41fcb618c68f@xen.org>
 <1f137be0-452d-4073-a79c-ffd8a501e434@bugseng.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <1f137be0-452d-4073-a79c-ffd8a501e434@bugseng.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

Hi,

On 26/10/2023 13:13, Federico Serafini wrote:
> On 26/10/23 12:25, Julien Grall wrote:
>> Hi,
>>
>> On 26/10/2023 11:04, Federico Serafini wrote:
>>> Update ECLAIR configuration to deviate Rule 8.3 ("All declarations of
>>> an object or function shall use the same names and type qualifiers")
>>> for the following functions: guest_walk_tables_[0-9]+_levels().
>>> Update file docs/misra/deviations.rst accordingly.
>>> No functional change.
>>>
>>> Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
>>> ---
>>> Changes in v2:
>>>    - removed set_px_pminfo() from the scope of the deviation;
>>>    - fixed tag of the commit.
>>> ---
>>>   automation/eclair_analysis/ECLAIR/deviations.ecl | 4 ++++
>>>   docs/misra/deviations.rst                        | 6 ++++++
>>>   2 files changed, 10 insertions(+)
>>>
>>> diff --git a/automation/eclair_analysis/ECLAIR/deviations.ecl 
>>> b/automation/eclair_analysis/ECLAIR/deviations.ecl
>>> index d8170106b4..b99dfdafd6 100644
>>> --- a/automation/eclair_analysis/ECLAIR/deviations.ecl
>>> +++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
>>> @@ -204,6 +204,10 @@ const-qualified."
>>> -config=MC3R1.R8.3,reports+={deliberate,"any_area(any_loc(file(adopted_mpparse_r8_3)))&&any_area(any_loc(file(^xen/arch/x86/include/asm/mpspec\\.h$)))"}
>>>   -doc_end
>>> +-doc_begin="For functions guest_walk_tables_[0-9]+_levels(), 
>>> parameter names of definitions deliberately differ from the ones used 
>>> in the corresponding declarations."
>>> +-config=MC3R1.R8.3,declarations={deliberate,"^guest_walk_tables_[0-9]+_levels\\(const struct vcpu\\*, struct p2m_domain\\*, unsigned long, walk_t\\*, uint32_t, gfn_t, mfn_t, void\\*\\)$"}
>>> +-doc_end
>>> +
>>>   -doc_begin="The following variables are compiled in multiple 
>>> translation units
>>>   belonging to different executables and therefore are safe."
>>>   -config=MC3R1.R8.6,declarations+={safe, 
>>> "name(current_stack_pointer||bsearch||sort)"}
>>> diff --git a/docs/misra/deviations.rst b/docs/misra/deviations.rst
>>> index 8511a18925..9423b5cd6b 100644
>>> --- a/docs/misra/deviations.rst
>>> +++ b/docs/misra/deviations.rst
>>> @@ -121,6 +121,12 @@ Deviations related to MISRA C:2012 Rules:
>>>            - xen/common/unxz.c
>>>            - xen/common/unzstd.c
>>> +   * - R8.3
>>> +     - In some cases, parameter names used in the function definition
>>> +       deliberately differ from the ones used in the corresponding 
>>> declaration.
>>
>> It would be helpful to provide a bit more reasoning in your commit 
>> message why this was desired. At least for Arm and common code, I 
>> would not want anyone to do that because it adds more confusion.
>>
>>> +     - Tagged as `deliberate` for ECLAIR. Such functions are:
>>> +         - guest_walk_tables_[0-9]+_levels()
>>
>> I think you want to be a bit mores specific. Other arch may have such 
>> function in the function and we don't want to deviate them from the 
>> start.
>>
>> Cheers,
>>
> 
> Alright, thanks for the observation.

Actually, I cannot find the original discussion. Do you have link? I am 
interested to read the reasoning and how many maintainers expressed 
there view.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 13:57:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 13:57:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623834.972060 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qw0rw-0001Os-J1; Thu, 26 Oct 2023 13:57:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623834.972060; Thu, 26 Oct 2023 13: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 1qw0rw-0001Ol-Fe; Thu, 26 Oct 2023 13:57:52 +0000
Received: by outflank-mailman (input) for mailman id 623834;
 Thu, 26 Oct 2023 13:57: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=Iwvv=GI=citrix.com=prvs=656fec104=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qw0rv-0001Of-1U
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 13:57:51 +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 a4aa49a0-7407-11ee-9b0e-b553b5be7939;
 Thu, 26 Oct 2023 15:57:48 +0200 (CEST)
Received: from mail-mw2nam12lp2041.outbound.protection.outlook.com (HELO
 NAM12-MW2-obe.outbound.protection.outlook.com) ([104.47.66.41])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 26 Oct 2023 09:57:43 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by DS7PR03MB5573.namprd03.prod.outlook.com (2603:10b6:5:2d1::19) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.16; Thu, 26 Oct
 2023 13:57:38 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::acf0:ce2b:1634:5aee]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::acf0:ce2b:1634:5aee%6]) with mapi id 15.20.6933.011; Thu, 26 Oct 2023
 13:57: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: a4aa49a0-7407-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1698328668;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=3vxxy1VQ69tIo8KOvUpgvUDKAKDMqkUYkI/Rr5r8afY=;
  b=CAPnqo97O7fnlN+BM2nAnL1ryRgpH1G2yqWJcJ8ekBoSF/Bvs0n4NVMc
   MZT+Kod3Det32Slw2gVG1O6qW+OpxbKg7kQvwuHLOHRMk+0iKYNvZ/dB1
   UWcv7Jz92eLX1L1cO4rW5eIjET7gx/ySO2gG0Ev1YCtR7fuIoUOlF6XCk
   I=;
X-CSE-ConnectionGUID: 9Td9a5hFQoSbzgVwrdG/ww==
X-CSE-MsgGUID: Un1hOfFwSoyZvYn2qd8wog==
X-IronPort-RemoteIP: 104.47.66.41
X-IronPort-MID: 125322776
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:7qd4KaJQwgHvB5saFE+R9pQlxSXFcZb7ZxGr2PjKsXjdYENS1TVWy
 2pNC2DXPP6INmuhKtxxb4/io0tUv8DUytcxQAJlqX01Q3x08seUXt7xwmUcnc+xBpaaEB84t
 ZV2hv3odp1coqr0/0/1WlTZhSAhk/nOHvylULKs1hlZHWdMUD0mhQ9oh9k3i4tphcnRKw6Ws
 Jb5rta31GWNglaYCUpKrfrYwP9TlK6q4mhB5gZgPakjUGL2zBH5MrpOfcldEFOgKmVkNrbSb
 /rOyri/4lTY838FYj9yuu+mGqGiaue60Tmm0hK6aYD76vRxjnVaPpIAHOgdcS9qZwChxLid/
 jnvWauYEm/FNoWU8AgUvoIx/ytWZcWq85efSZSzXFD6I+QrvBIAzt03ZHzaM7H09c4mPW0f/
 KEYBgkKVRqRiNyp2r6UDfZz05FLwMnDZOvzu1lG5BSAV7MDfsqGRK/Ho9hFwD03m8ZCW+7EY
 NYUYiZuaxKGZABTPlAQC9Q1m+LAanvXKmUE7g7K4/RppTSKpOBy+OGF3N79YNuFSN8Thk+Fj
 mnH4374ElcRM9n3JT+tqyjx3bWVwnylMG4UPIC+r/5NjnOM/WsCOgMnUwGirammjUHrDrqzL
 GRRoELCt5Ma9kamU938VB2Qu2Ofs1gXXN84O/037kSBx7TZ5y6dB3MYVXhRZdo+rsg0SDc2k
 FiTkLvBGjhHoLCTD3WH+d+pQSiaPCEUKSoHenUCRA5cud37+tlv11TIU8ppF7OzgpvtAzbsz
 juWrS84wbIOkcoM0Kb99lfC696xmqX0oscOzl2/dgqYAslRPuZJu6TABYDn0Mt9
IronPort-HdrOrdr: A9a23:S3/F+66yOTP2mqk5XAPXwY2BI+orL9Y04lQ7vn2ZKCYlB/Bw8v
 rE8sjzuiWVtN9vYgBdpTntAsi9qBDnhO1ICPcqTNWftWDd0QPDEGgI1/qA/9SPIVyaygZXvZ
 0QDJSXYLfLYWST5qzBjzVR3LwbreWvweSQoaP78l8odAdtbshbnnVE4sTwKDwJeOGDb6BJZK
 Z1I6B81kudkA8sH6CGL0hAZfHHu9rI0Lr+eHc9dmcawTjLtyqs9Ln5VzOF3hISOgk/vIsKwC
 z+ignk4afmlPm+xnbnpgjuxqUTosLl1txAQOqTjcQPQw+c7DqAVcBaQrifuzJwmsGDgWxa6O
 XkklMbJsFu7HGURG2vvhf3/AHl3F8VmgTf4G7du2Lnvcv6AA03ENBAg4UxSGqi13Yd
X-Talos-CUID: =?us-ascii?q?9a23=3ARfoRfmu4Q08zqCBrxgd1IegP6It0TnGMxSrQDXa?=
 =?us-ascii?q?/Mmx7R4OKU1O/v7x7xp8=3D?=
X-Talos-MUID: 9a23:HNxFMQs3uenJ+i/jh82nuTc7NOBmzbuVD1E/j6QA4dCIZTN3NGLI
X-IronPort-AV: E=Sophos;i="6.03,253,1694750400"; 
   d="scan'208";a="125322776"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=kbYlhVWBZKs5Uf8xg9JgHYRe/CUGl+qX/iBKHCotgsb9OXuCnw62I61MmfJXSrEzlibPcvCfbht+7juihErXpMvo/bzlCXrGz1HXJoUwgNkE7QEkWPOkW3qtpsA2jSxy5fk8WnCFx8xyH1wLnP0ZK029HS923gWbcr+WSblHkopKYe16uQXRbFmpUbhjYDmwoH/UWbPJzcoQEQLvvZiYikHpbNpInfeUnFvOQ9bum5FaGfNVAN5wlbHMHS/yLKAEKR6/N1bu6Le6ZO4gdIdEgnldCe062OZ+yhgmuLv0dlwa3JCrzu29nagjNIU/Pg/JBQRapQMiW5BkplkeH4LooA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=m4aiLF328sgtZU4YVFFM0iAfIXlfGqbGAOhC/j0tCd0=;
 b=LTho1iPEC6O2GcwTArnMg6pKob4+Vos5R/fth1pdeIQ/bWvcjzC5kwS6alG/fSiSXhdz80ybIVwVGk2Pw5ybIDBm0dUCSnVsMgQSmsqur06d4Xh+IYPbAkrqDVLpj4Z9ukM/zT2urABFRmAYuo3SPkuvOG3ZmWAMbJx6mCgYmlLC2M+99F5PKvTeRpAHOGIZz7bP+4JDXHNrcGYJRPcOysccYhaysQRrt9kIIagW0IlmmvjdONRia5gPZ8YmVfGD8mo0B2TvyEkovQnHvx1Zx0Fjt76iNvOVz1Lt2rdid49Wwy2d9PlD2pWzZUjcwW08t3b8gdm7GDqAj+YCHA+5qQ==
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=m4aiLF328sgtZU4YVFFM0iAfIXlfGqbGAOhC/j0tCd0=;
 b=B0i67rpbfN4RpTxnV+C5d3NdMHms8IFprJ5RqUT0HuXKnNmyS1wVUCquuHi9lUv/tXi3lx4lBbYZHxQOZsklEbz2b7EpOkSVkkz9O0ufPsPxMSj/bVY1e7cmt2J9gDNUT8jmYbMzJ4MO5b4SY4+BMrkJab6QQBFj2pweX88ckjc=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Thu, 26 Oct 2023 15:57:34 +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>, Wei Liu <wl@xen.org>
Subject: Re: [PATCH 5/7] x86: detect PIT aliasing on ports other than 0x4[0-3]
Message-ID: <ZTpwTrLU4d90lWYm@macbook>
References: <95129c04-f37c-9e26-e65d-786a1db2f003@suse.com>
 <042f76dd-d189-c40a-baec-68ded32aa797@suse.com>
 <ZTo-tpk64ew4rk1o@macbook>
 <6c3a4243-fef4-129c-8f58-7bc009f886b6@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <6c3a4243-fef4-129c-8f58-7bc009f886b6@suse.com>
X-ClientProxiedBy: MR1P264CA0135.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:501:51::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_|DS7PR03MB5573:EE_
X-MS-Office365-Filtering-Correlation-Id: e02359f6-583c-4948-2a3f-08dbd62b838f
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:
	nFghqYjteUy/VGoBkTfn/Oivww0j1aTjahd4BlMQt8EiN2RZtNXaaPjad3thTI+oA/wKGcsVD5kNv/MY1Q7P2Py1DbqYO3JOvC6dmuWW4LNWnwUPKBgAL1G81bbYHNYqQ0l6SozkHGR8IHH6ByWl0SLaaYQHEWVoBr2M+EL1BjQtdSSTl2osX4rZ+d2mf83/plfFAg9+S3sKI+e2c7oaTjgJhu6OINQFH0KAk7XQPhAElqdnU1FvJGQFT9xfIcnxkZ9CXFWxZyatj85o94BVkP6DE4TojXAuVfR60X1/g/Sda87swI90ogcYhjrBiap9YL2a4muhBOQVa+qZAFRGS5gUSg6cg0/DUt+09+HnTEYzOENg898E0qI/0VPN5NLe7zQ0kqt0u45VRR/cxrl5L1OYEA8n8hjee4sEWhZzI8wcMDyc70z8YW3qMGHx/3QlT9wtfiJV83NDGF+Q579PUJznt9ZB8rtPynBB2LHaUkw5869j6MHwupyktvemRhwHxOW71pbQqQTeABPV1ukc7Hxx3fW4507MZgdtfsOEcmLQu5oA0z7QmOH6a90PgPMS
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)(396003)(376002)(136003)(39860400002)(346002)(230922051799003)(186009)(1800799009)(451199024)(64100799003)(478600001)(6486002)(26005)(82960400001)(6666004)(53546011)(6506007)(33716001)(9686003)(6512007)(6916009)(54906003)(66556008)(66476007)(66946007)(38100700002)(316002)(83380400001)(8676002)(8936002)(5660300002)(2906002)(4326008)(41300700001)(85182001)(86362001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?QnRIRndPci9aL2tjSm8wN3lmYWFZOURtQ1N1L0JlTjVqNWZic0lqS1F5SnRj?=
 =?utf-8?B?U2VFbWNhY0s1UnQ3ZzRlOU5hN2FENGtwWGNIMElhQjhLcS9RNGdRZnZZRWN1?=
 =?utf-8?B?bjJhYkNCWXFnbUJwTkVuTWJyK1dmVFJad3hEUVlhNDNUazQ3QUYwZVJjbXh6?=
 =?utf-8?B?K2J2Y3ZUZ2tBUFJxejJzc1p0ZUlFS1g3SGNHcjNNeWIxclk0ZEV2TEFpMStI?=
 =?utf-8?B?VW5SSVc1RU5zV1F2M3dTWDFmRkYwdHZXWFdnYWFuWWVCRC83VHZFbG1sYjk0?=
 =?utf-8?B?aU5SdDJHT1VUd3ZtaWE4VXF3WEtrTnQvU0pRTnBJYmlmbDMreGdUZlQzOGtR?=
 =?utf-8?B?NXcrSk9JYlhkdnR4L3BhcmN1UlNBWEwyb1JDazZRNk5qZWhCSG1xb3A1UTlQ?=
 =?utf-8?B?aHFPdlVhMDBDNi9WU2FObmtKNnZWcE82bHFqUmhKVGplWGM0a0kzMllwTVpM?=
 =?utf-8?B?UTgzbVZQcW5lOGt3OXdaTlk5UXJzOGtocDNPQkJ2UC9DeTB5MEpNOEJXR1VD?=
 =?utf-8?B?OWY0d2dHd1hnNGxuV0lXbWtlUG9kNnlpTlJKa1NlYWJpSi9PQ2hjSnAyUVp2?=
 =?utf-8?B?ZHNqekZLSHJZSDY0cVh2MU50L1RWSGJwOGFVZnFRMGd0MzBaY3dkMEI0YVo5?=
 =?utf-8?B?ak9OY3NLQ1c0NEd1c2FTd0VsMHR1VTlMbXRSMEpOaTFzekcrVmxKelFIeThX?=
 =?utf-8?B?YUtSVkIwQkl1K1FseHJFZVROTitCMTVraVRVSU5EWWRxU0J6dFFwMWhZZlY3?=
 =?utf-8?B?cGQrYjJERVVlZkhUVWE3RVBJVVozQ2VwWGo4MjFDbUtxMUdDZG0wSnlxT1I5?=
 =?utf-8?B?dXNSNDVwYkRqenBHYk81UHJNVHZDdWt6TWdSWTROUktreC9zMDljY2JhK2pV?=
 =?utf-8?B?SDJJYTJOMzdzRlJhV1hrS3dyMDZJMCt3UlM5d3A3SXpkd1JIODFQaytpUGww?=
 =?utf-8?B?dmhNNHdlakJLaUh1VUloSFJ1aWsrd1d2SGF2ZUlyWjR1VTZFUHluakE4OGF2?=
 =?utf-8?B?cXZjcEdSSFRoUVIrc0pqZjgySTZodUFwQzRYaW1tZ3lObDY0M2N0bkpBNjJR?=
 =?utf-8?B?TW5uNVlDNnRkTFJNenhFenNISmlzZVd3eU5ZZE94azdyaWZDTmU4NCtrZjB4?=
 =?utf-8?B?bVA4RUNDQmh2ZXhPc0NkMFU2a2NBaEk4R0ZEZ2IwdWk5TmxlOTFXQjBDa1V1?=
 =?utf-8?B?eTZac0owRlFmWmk5MTd1NWpnTHJuT08yOEpLczlqajZLQ1NpZ2ZjSjc3NTll?=
 =?utf-8?B?Z2lCaUFCL0JGSVZ1WlhqSFQxaHEvcGNjS01nMXBBRmwzY0VEaFVIU0dyVE5B?=
 =?utf-8?B?L3BLS0xjNk4ybUxsOFU4OFh5RHBaODBaNjRtdWhsKzFZZUdaOTVQU3hyQmJu?=
 =?utf-8?B?NG5jWVdybzdySWV0bHZmNC9QbWpBSkMrb3FxUUhDM0psejVOZHZoSUNGbGJp?=
 =?utf-8?B?QU9Yekd4bXl6dUtJNnc4OHpScjloVlJ4UHlxNDBQUEVmSnl5ZEpkWStBMDZu?=
 =?utf-8?B?dWYzYnUzekJraE9BVXBNb0RXY2MvaVI1emFYWXJPRzZhbWpibUxHeUw2VWZZ?=
 =?utf-8?B?M1haWnMwODR6OHNsL2tBeTFNTGRKVlBkcldvM1Urek1TSHg0cC85SlVLelZO?=
 =?utf-8?B?UWFQeVBtODY3ZlBOSkNQMmZGWjBXTy9memhDeHByVThCN1pmRTAzUlRZaW0x?=
 =?utf-8?B?U1M5SzBTZU5GWFFYR1MyeFV1Uk4rMUQvV3N6ZUg2am9JZU5SWXExdGFsZzlT?=
 =?utf-8?B?N1lrQlByd24wSXh6ZHJZZDE5azJld0EyUVhuYVh6aUVmang1Y0lEWmVVYWFi?=
 =?utf-8?B?MnJJYnh0UVRtcThmeWFjM1NYdWNFQ1ZDbS9BUS9rVFVDcHVtWXI2eHdRTHh6?=
 =?utf-8?B?M3FvU1c0Vm1RdEUyYWMzNEc4dHBISk9TOTZMZS9YYmpKeU1GZ0c0bDdKZ0N5?=
 =?utf-8?B?dzVYZnhCbTJ6amJ2YmR1NU1aZDl6YlZSbWFtZG50U3BJT0dJYnpQbVpLcGJX?=
 =?utf-8?B?S1lKSE11eDNtZmZjcVBRNVVwbW1ab1NkOEJsd3B3VVRVb21WbUFqMC9jY0Nq?=
 =?utf-8?B?YmliZ0lKQnJVcitsdEEvWlBJbVVzZktPSlpCdTB3MW5VekZlOW1pZkhyRHAv?=
 =?utf-8?Q?+ZT8l08pdkyC2L8wsWlFkjlby?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	1fygwM9+xXIqXauABNrlIBnm/W5DVwA/ZfYJfsXxAVnWJzwWfQWaCC2q/IJonsoYPZjvHkK0MwqK1GQ12GpuS4nheDcn9QFCmZhzD9EWWmEWanPF0GJ2XxuMZgKdOUDt71f7Jf/lLCBWBsBkIr2RapEip12kqXgLDEPBQnWn1I87GdJSKQoze1zIIH9jwQpoZmYSPmUXmK9gK1a8RJ9TKdX6nkV62UFAkYFaSHkcwYpuumQ2PveaZiD+nG2W2GE21SV9l4ZX+njnTgfGrBBumftrs9Rcof+cHLoRW2aCoAuq8k4q7SG2NAREIakmUHH76o13E8vvCtXk4NnNAy4GhDRLPMQk9pGo83Pddg1rztcF3syLehnfjwYqBMw4IYxuteLwABpktGmNnfUYOnVOORPfrW4FCLqaHoKGVCx7VnAqqdDGSz75bB7LMZ3KEr3pzldloRHimVJeZuWnb337I3ycTl6aS0yLTgL5ft/79QuvSuUWZL2YX+rfl6rSbMbW0LiZx5HV5sosQBYecybS6I0Ss8L+ronOpPHS6ZujM0IXNVX+vrM7vi9xLMyuh4KHoOSKBis213j6mFBlqGlAmGiWesQPfiOCID4RZq4wQoADDq01YjPV0t+hHOsa3aoh9koqO78tmrSpg5AQjt3AGGFbofp49QdUfRVCkeguzJxhEkEUBWXyBGJuV0PDOKyoA8V6AoJOTxXIR+plJ3+MuiFZf2/dZQkRnPCcKmMUOdTvdXZDElubiho+vYgJP3hvt0SN2UEplcNLhCp0tPwBgy09pP15zAPZXvLjRB175YUpKuBeH9ACd4QQuB66sKPcAJLuhbyJ4fL2zJJMnfk1Ig==
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: e02359f6-583c-4948-2a3f-08dbd62b838f
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Oct 2023 13:57:38.6213
 (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: qs4v1knJycyxQ6VYE/f4qzqeDDz+agTJf8FhKOy5yJBlj9CggpEdvrI/EgbFSZ2+vAfoWk7zzq7pIzqE1aawrA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR03MB5573

On Thu, Oct 26, 2023 at 02:31:27PM +0200, Jan Beulich wrote:
> On 26.10.2023 12:25, Roger Pau Monné wrote:
> > On Thu, May 11, 2023 at 02:07:12PM +0200, Jan Beulich wrote:
> >> ... in order to also deny Dom0 access through the alias ports. Without
> >> this it is only giving the impression of denying access to PIT. Unlike
> >> for CMOS/RTC, do detection pretty early, to avoid disturbing normal
> >> operation later on (even if typically we won't use much of the PIT).
> >>
> >> Like for CMOS/RTC a fundamental assumption of the probing is that reads
> >> from the probed alias port won't have side effects (beyond such that PIT
> >> reads have anyway) in case it does not alias the PIT's.
> >>
> >> At to the port 0x61 accesses: Unlike other accesses we do, this masks
> >> off the top four bits (in addition to the bottom two ones), following
> >> Intel chipset documentation saying that these (read-only) bits should
> >> only be written with zero.
> > 
> > As said in previous patches, I think this is likely too much risk for
> > little benefit.  I understand the desire to uniformly deny access to
> > any ports that allow interaction with devices in use by Xen (or not
> > allowed to be used by dom0), but there's certainly a risk in
> > configuring such devices in the way that we do by finding a register
> > that can be read and written to.
> > 
> > I think if anything this alias detection should have a command line
> > option in order to disable it.
> 
> Well, we could have command line options (for each of the RTC/CMOS,
> PIC, and PIT probing allowing the alias masks to be specified (so we
> don't need to probe). A value of 1 would uniformly mean "no probing,
> no aliases" (as all three decode the low bit, so aliasing can happen
> there). We could further make the default of these variables (yes/no,
> no actual mask values of course) controllable by a Kconfig setting.

If you want to make this more fine grained, or even allow the user to
provide custom masks that's all fine, but there's already
dom0_ioports_disable that allows disabling a list of IO port ranges.

What I would require is a way to avoid all the probing, so that we
could return to the previous behavior.

> >> --- a/xen/arch/x86/time.c
> >> +++ b/xen/arch/x86/time.c
> >> @@ -425,6 +425,69 @@ static struct platform_timesource __init
> >>      .resume = resume_pit,
> >>  };
> >>  
> >> +unsigned int __initdata pit_alias_mask;
> >> +
> >> +static void __init probe_pit_alias(void)
> >> +{
> >> +    unsigned int mask = 0x1c;
> >> +    uint8_t val = 0;
> >> +
> >> +    /*
> >> +     * Use channel 2 in mode 0 for probing.  In this mode even a non-initial
> >> +     * count is loaded independent of counting being / becoming enabled.  Thus
> >> +     * we have a 16-bit value fully under our control, to write and then check
> >> +     * whether we can also read it back unaltered.
> >> +     */
> >> +
> >> +    /* Turn off speaker output and disable channel 2 counting. */
> >> +    outb(inb(0x61) & 0x0c, 0x61);
> >> +
> >> +    outb((2 << 6) | (3 << 4) | (0 << 1), PIT_MODE); /* Mode 0, LSB/MSB. */
> >> +
> >> +    do {
> >> +        uint8_t val2;
> >> +        unsigned int offs;
> >> +
> >> +        outb(val, PIT_CH2);
> >> +        outb(val ^ 0xff, PIT_CH2);
> >> +
> >> +        /* Wait for the Null Count bit to clear. */
> >> +        do {
> >> +            /* Latch status. */
> >> +            outb((3 << 6) | (1 << 5) | (1 << 3), PIT_MODE);
> >> +
> >> +            /* Try to make sure we're actually having a PIT here. */
> >> +            val2 = inb(PIT_CH2);
> >> +            if ( (val2 & ~(3 << 6)) != ((3 << 4) | (0 << 1)) )
> >> +                return;
> >> +        } while ( val2 & (1 << 6) );
> > 
> > We should have some kind of timeout here, just in case...
> 
> Hmm, I indeed did consider the need for a timeout here. With what
> we've done up to here we already assume a functioning PIT, verifying
> simply as we go. The issue with truly using some form of timeout is
> the determination of how long to wait at most.

I would likely make it based on iterations, could you get some figures
on how many iterations it takes for the bit to be clear?

I would think something like 1000 should be enough, but really have no
idea.

> >> +
> >> +        /*
> >> +         * Try to further make sure we're actually having a PIT here.
> >> +         *
> >> +         * NB: Deliberately |, not ||, as we always want both reads.
> >> +         */
> >> +        val2 = inb(PIT_CH2);
> >> +        if ( (val2 ^ val) | (inb(PIT_CH2) ^ val ^ 0xff) )
> >> +            return;
> >> +
> >> +        for ( offs = mask & -mask; offs <= mask; offs <<= 1 )
> >> +        {
> >> +            if ( !(mask & offs) )
> >> +                continue;
> >> +            val2 = inb(PIT_CH2 + offs);
> >> +            if ( (val2 ^ val) | (inb(PIT_CH2 + offs) ^ val ^ 0xff) )
> >> +                mask &= ~offs;
> >> +        }
> >> +    } while ( mask && (val += 0x0b) );  /* Arbitrary uneven number. */
> >> +
> >> +    if ( mask )
> >> +    {
> >> +        dprintk(XENLOG_INFO, "PIT aliasing mask: %02x\n", mask);
> >> +        pit_alias_mask = mask;
> >> +    }
> > 
> > Is it fine to leave counting disabled for channel 2?
> > 
> > Shouldn't we restore the previous gate value?
> 
> See init_pit(), which also doesn't restore anything. The system is under
> our control, and we have no other use for channel 2. (I really had
> restore logic here initially, but then dropped it for said reason.)

It might be used by a PV dom0 (see hwdom_pit_access()), so I wonder
whether we should try to hand off as Xen found it.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 13:59:14 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 13:59:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623838.972070 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qw0tD-0001wu-TS; Thu, 26 Oct 2023 13:59:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623838.972070; Thu, 26 Oct 2023 13: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 1qw0tD-0001wn-Qg; Thu, 26 Oct 2023 13:59:11 +0000
Received: by outflank-mailman (input) for mailman id 623838;
 Thu, 26 Oct 2023 13: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=jm+b=GI=amd.com=Xenia.Ragiadakou@srs-se1.protection.inumbo.net>)
 id 1qw0tC-0001wh-M0
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 13:59:10 +0000
Received: from NAM12-MW2-obe.outbound.protection.outlook.com
 (mail-mw2nam12on2061f.outbound.protection.outlook.com
 [2a01:111:f400:fe5a::61f])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id d4eff332-7407-11ee-98d5-6d05b1d4d9a1;
 Thu, 26 Oct 2023 15:59:09 +0200 (CEST)
Received: from DM6PR03CA0067.namprd03.prod.outlook.com (2603:10b6:5:100::44)
 by CO6PR12MB5410.namprd12.prod.outlook.com (2603:10b6:5:35b::5) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.22; Thu, 26 Oct
 2023 13:59:05 +0000
Received: from DS1PEPF0001709A.namprd05.prod.outlook.com
 (2603:10b6:5:100:cafe::3a) by DM6PR03CA0067.outlook.office365.com
 (2603:10b6:5:100::44) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.19 via Frontend
 Transport; Thu, 26 Oct 2023 13:59:04 +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.6933.18 via Frontend Transport; Thu, 26 Oct 2023 13:59:04 +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.32; Thu, 26 Oct
 2023 08:59: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: d4eff332-7407-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=WQq/CZK9fSMAUt9N52hX7y9XCoNg5riw28lo9iPgh5eaJwR/HK9q6LdImWPTy/NKLmcZcYsf1pwHBCc6gams4Pj2mTiNuMHJo8zh5+4QeeMXNWxbEb+3pR5GVU3g2q9Oc8DQpQmVerDJUpwcH7r1yMvAqeW+S3lAv+MbEVOEFjOXxfb0/C67fkenFkJE5mtr8OhmUQvuDRdnklgTJqxye1SYEHh5MaEZClNQjatlRxKRRpPcjlZXUudi1m4UrxDKiNLOxh6m0ejK4XZ3tK9VhALSnenlZAalH0hyETiukXrxcWFExvJkwjDN0kOMs5uFjiAbMHaiRQDUa6crLVh4bw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=EbtBfkCvMN9jSjxeIme2SvJ1BjQKvBFZ3xQppVQBGTI=;
 b=SbIfxrjg4+3ag42IVsRMKv8hT9ximdVUYjt7TDi3zwAZ/8P2E7PCMpP+oFCurnCjY13ABKf1MRc3orSehl2ooBXNBs5UqTy6kqwC8d2VdHzsMKuTPhsM2NOw3xalUyw7nC5BJrAi/5KiAQRIIezTlgiSuJ/DK9ZxG6trta+3kRCAnHHW4TINv5SRBJW0R/7SP/0O0+3/VuD+8Bv3JV+66qMg3wsYoxEKKzRk8jWvQeoB3FbquJG4LLtCixHv+9Hmx/suOOVwqMhdjl6F6OsrgXQ1314QL4HltXX+m0cdVVfFpv74iKV5mwXJgnY3KKOg5vrAe2i7i/3jrQ2a64kE6w==
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 (0)
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=EbtBfkCvMN9jSjxeIme2SvJ1BjQKvBFZ3xQppVQBGTI=;
 b=YsXX27agglHxuQqmhhk/q3YfuLjAC0RKrcNVaOf0ZxTzH2CwUmu3waBiqa4SMiv5q/blER3aeG18MpoMptP8Hd9xQ+RXhy9Bq0RfDAtu7A0oE7JqAvCgrDiptosNi61THY55l/Pryhc78vUWRyfsRq8UHanJs/upgayrjofqTv0=
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: <92ba94d2-9e57-4241-8626-33f06f88e726@amd.com>
Date: Thu, 26 Oct 2023 16:58:59 +0300
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH] x86/hvm/dom0: fix PVH initrd and metadata placement
Content-Language: en-US
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>, <xen-devel@lists.xenproject.org>
References: <20231026064543.43369-1-xenia.ragiadakou@amd.com>
 <ac7e9bac-6d74-a5bf-d703-3c5455e581ea@suse.com>
 <7712c60b-4f89-483e-89e4-7ac8f4d0311e@amd.com>
 <809115b1-2a47-583f-2d04-72a5a21ee7da@suse.com>
 <c107d63c-25a3-4f17-a5e8-7ec3ccd94ce3@amd.com>
 <c81a8275-ecfd-7598-c119-ed83b156c0e5@suse.com>
 <b5330686-82a0-4d47-9549-2d943ca68c7e@amd.com>
 <1cc98108-3328-94d3-5f8d-ff03c965087e@suse.com>
From: Xenia Ragiadakou <xenia.ragiadakou@amd.com>
In-Reply-To: <1cc98108-3328-94d3-5f8d-ff03c965087e@suse.com>
Content-Type: text/plain; charset="UTF-8"; format=flowed
Content-Transfer-Encoding: 7bit
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_|CO6PR12MB5410:EE_
X-MS-Office365-Filtering-Correlation-Id: 5e6ab61a-c44d-4cff-4277-08dbd62bb71d
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	5w/6bHWIi7P/jXlarh36FBKKsfZLDmtdyUuRL/j9sBggEeDWQIny22P5Cd6C4lbEUmkqJSfPy0lBWVzh17gf4hcd5q0NhQvCIn9kq7iBLiJfopery86fVY3bImVv7rLS72H6pvlffkr0ch7ZbSLno+FU8CivC0Q87WwOJNmNncw79N7Jb+7mLAbHe+pk9R0a+xhws1PWQCD8PfzKMHzuAyI6urSKmmwZlWejKB/f37qzWPrOLP27FLKYKgFoxp3vLKLxf1nta52kta5NOaYyQxbs2zJrm6eH0AIrMi/poDyM7mK2Zd5Rst+XPS+CmcK1gzOX+/jw9iU5VWOfWNKBCsvCAa0noJPNw+A590IjEBrvA7tY5Us2AhMvUcJD8IzfyqJVSLbVBXJba3pP+veg5fmksgSSWjUgS/PAezf5FAD+2+PszvfwYaYbH4hOKRXQAnYduhkjZjRTf280WgUW2qz0k/YegR/DtxKgWnq7j+r3XVgWnMliV0G9d8xYKQ6EiFqpBmrDVCpHaaEYOJg0EjFsxLXuVAEnD85zt/LmUoZ+sph/mQG0STTE5Gn6sneYAzTrh08oSEBtob4mb76mSFnGBEFoPkAJeB258yRQYBK2rNPrPizyjrdLh/CTDterbvH6EnbnL5FZpTn04Enk5hrmammdQs0Jpb7TshpZs2D5JvxTccyfQOnimB092p86bcs9d1FWYCtmb7yC+llW1Je2dDI9YeY/jqvsty9ksnYcKpfoLMU45IfRYDKDVwv+byzsCcMDw5KFBQM/dPZgRJD/Mcpd95xvM9RYrByG03C4MCSlsaYdt1aWVFcL+WLi
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)(230922051799003)(1800799009)(451199024)(64100799003)(82310400011)(186009)(46966006)(36840700001)(40470700004)(40480700001)(36756003)(31686004)(40460700003)(66899024)(54906003)(70586007)(70206006)(16576012)(86362001)(81166007)(356005)(31696002)(82740400003)(36860700001)(47076005)(83380400001)(426003)(336012)(26005)(16526019)(2616005)(6666004)(53546011)(2906002)(478600001)(316002)(41300700001)(4326008)(6916009)(5660300002)(44832011)(8676002)(8936002)(43740500002)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Oct 2023 13:59:04.6361
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 5e6ab61a-c44d-4cff-4277-08dbd62bb71d
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: CO6PR12MB5410


On 26/10/23 15:37, Jan Beulich wrote:
> On 26.10.2023 14:35, Xenia Ragiadakou wrote:
>>
>>
>> On 26/10/23 14:51, Jan Beulich wrote:
>>> On 26.10.2023 11:46, Xenia Ragiadakou wrote:
>>>> On 26/10/23 11:45, Jan Beulich wrote:
>>>>> On 26.10.2023 10:34, Xenia Ragiadakou wrote:
>>>>>> On 26/10/23 10:35, Jan Beulich wrote:
>>>>>>> On 26.10.2023 08:45, Xenia Ragiadakou wrote:
>>>>>>>> --- a/xen/arch/x86/hvm/dom0_build.c
>>>>>>>> +++ b/xen/arch/x86/hvm/dom0_build.c
>>>>>>>> @@ -518,7 +518,7 @@ static paddr_t __init find_memory(
>>>>>>>>              if ( end <= kernel_start || start >= kernel_end )
>>>>>>>>                  ; /* No overlap, nothing to do. */
>>>>>>>>              /* Deal with the kernel already being loaded in the region. */
>>>>>>>> -        else if ( kernel_start - start > end - kernel_end )
>>>>>>>> +        else if ( kernel_start + kernel_end > start + end )
>>>>>>> What meaning has the sum of the start and end of either range? I can't
>>>>>>> figure how comparing those two values will be generally correct / useful.
>>>>>>> If the partial-overlap case needs handling in the first place, I think
>>>>>>> new conditionals need adding (and the existing one needs constraining to
>>>>>>> "kernel range fully contained") to use
>>>>>>> - as before, the larger of the non-overlapping ranges at start and end
>>>>>>>       if the kernel range is fully contained,
>>>>>>> - the tail of the range when the overlap is at the start,
>>>>>>> - the head of the range when the overlap is at the end.
>>>>>> Yes it is not quite straight forward to understand and is based on the
>>>>>> assumption that end > kernel_start and start < kernel_end, due to
>>>>>> the first condition failing.
>>>>>>
>>>>>> Both cases:
>>>>>> (start < kernel_start && end < kernel_end) and
>>>>>> (kernel_start - start > end - kernel_end)
>>>>>> fall into the condition ( kernel_start + kernel_end > start + end )
>>>>>>
>>>>>> And both the cases:
>>>>>> (start > kernel_start && end > kernel_end) and
>>>>>> (end - kernel_end > kernel_start - start)
>>>>>> fall into the condition ( kernel_start + kernel_end < start + end )
>>>>>>
>>>>>> ... unless of course I miss a case
>>>>> Well, mathematically (i.e. ignoring the potential for overflow) the
>>>>> original expression and your replacement are identical anyway. But
>>>>> overflow needs to be taken into consideration, and hence there is a
>>>>> (theoretical only at this point) risk with the replacement expression
>>>>> as well. As a result I still think that ...
>>>>>
>>>>>>> That said, in the "kernel range fully contained" case it may want
>>>>>>> considering to use the tail range if it is large enough, rather than
>>>>>>> the larger of the two ranges. In fact when switching to that model, we
>>>>>>> ought to be able to get away with one less conditional, as then the
>>>>>>> "kernel range fully contained" case doesn't need treating specially.
>>>>> ... this alternative approach may want considering (provided we need
>>>>> to make a change in the first place, which I continue to be
>>>>> unconvinced of).
>>>> Hmm, I see your point regarding the overflow.
>>>> Given that start < kernel_end and end > kernel_start, this could
>>>> be resolved by changing the above condition into:
>>>> if ( kernel_end - start > end - kernel_start )
>>>>
>>>> Would that work for you?
>>>
>>> That would look quite a bit more natural, yes. But I don't think it covers
>>> all cases: What if the E820 range is a proper sub-range of the kernel one?
>>> If we consider kernel range crossing E820 region boundaries, we also need
>>> to take that possibility into account, I think.
>>
>> You are right, this case is not handled and can lead to either of the
>> issues mentioned in commit message.
>> Maybe we should check whether end > start before proceeding with
>> checking the size.
> 
> It looks like it all boils down to the alternative I did sketch out.

I 'm not sure I fully understood the alternative.
Do you mean sth in the lines below?

          if ( end <= kernel_start || start >= kernel_end )
              ; /* No overlap, nothing to do. */
          /* Deal with the kernel already being loaded in the region. */
-        else if ( kernel_start - start > end - kernel_end )
+        else if ( start < kernel_start && end > kernel_end ) {
+            if ( kernel_start - start > end - kernel_end )
+                end = kernel_start;
+            else
+                start = kernel_end;
+        }
+        else if ( start < kernel_start )
              end = kernel_start;
-        else
+        else if ( end > kernel_end )
              start = kernel_end;
+        else
+            continue;

          if ( end - start >= size )
              return start;

You wouldn't like to consider this approach?

          if ( end <= kernel_start || start >= kernel_end )
              ; /* No overlap, nothing to do. */
          /* Deal with the kernel already being loaded in the region. */
-        else if ( kernel_start - start > end - kernel_end )
+        else if ( kernel_end - start > end - kernel_start )
              end = kernel_start;
          else
              start = kernel_end;

-        if ( end - start >= size )
+        if ( end > start && end - start >= size )
              return start;
      }

> 
> Jan


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 14:04:24 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 14:04:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623845.972079 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qw0yA-0003ZT-IN; Thu, 26 Oct 2023 14:04:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623845.972079; Thu, 26 Oct 2023 14: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 1qw0yA-0003ZM-Fm; Thu, 26 Oct 2023 14:04:18 +0000
Received: by outflank-mailman (input) for mailman id 623845;
 Thu, 26 Oct 2023 14:04: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=gVJW=GI=bugseng.com=federico.serafini@srs-se1.protection.inumbo.net>)
 id 1qw0y9-0003ZG-4H
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 14:04:17 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 8b7955f7-7408-11ee-9b0e-b553b5be7939;
 Thu, 26 Oct 2023 16:04:14 +0200 (CEST)
Received: from [192.168.1.15] (host-95-247-204-25.retail.telecomitalia.it
 [95.247.204.25])
 by support.bugseng.com (Postfix) with ESMTPSA id 9BDE84EE0742;
 Thu, 26 Oct 2023 16:04: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: 8b7955f7-7408-11ee-9b0e-b553b5be7939
Message-ID: <66e59c25-fa6f-4fa4-aae8-aefa0b52c3b4@bugseng.com>
Date: Thu, 26 Oct 2023 16:04:13 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN PATCH v2] automation/eclair: add deviations for MISRA C:2012
 Rule 8.3
Content-Language: en-US, it
To: Julien Grall <julien@xen.org>, 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>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Jan Beulich <jbeulich@suse.com>,
 Wei Liu <wl@xen.org>
References: <1c146f28cb19607ddd6741de4f7de051894a3381.1698314415.git.federico.serafini@bugseng.com>
 <662e9080-5648-47eb-95e6-41fcb618c68f@xen.org>
 <1f137be0-452d-4073-a79c-ffd8a501e434@bugseng.com>
 <831e23c2-f30d-4931-8749-99e4b9c4215b@xen.org>
From: Federico Serafini <federico.serafini@bugseng.com>
Organization: BUGSENG srl
In-Reply-To: <831e23c2-f30d-4931-8749-99e4b9c4215b@xen.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

On 26/10/23 15:54, Julien Grall wrote:
> Hi,
> 
> On 26/10/2023 13:13, Federico Serafini wrote:
>> On 26/10/23 12:25, Julien Grall wrote:
>>> Hi,
>>>
>>> On 26/10/2023 11:04, Federico Serafini wrote:
>>>> Update ECLAIR configuration to deviate Rule 8.3 ("All declarations of
>>>> an object or function shall use the same names and type qualifiers")
>>>> for the following functions: guest_walk_tables_[0-9]+_levels().
>>>> Update file docs/misra/deviations.rst accordingly.
>>>> No functional change.
>>>>
>>>> Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
>>>> ---
>>>> Changes in v2:
>>>>    - removed set_px_pminfo() from the scope of the deviation;
>>>>    - fixed tag of the commit.
>>>> ---
>>>>   automation/eclair_analysis/ECLAIR/deviations.ecl | 4 ++++
>>>>   docs/misra/deviations.rst                        | 6 ++++++
>>>>   2 files changed, 10 insertions(+)
>>>>
>>>> diff --git a/automation/eclair_analysis/ECLAIR/deviations.ecl 
>>>> b/automation/eclair_analysis/ECLAIR/deviations.ecl
>>>> index d8170106b4..b99dfdafd6 100644
>>>> --- a/automation/eclair_analysis/ECLAIR/deviations.ecl
>>>> +++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
>>>> @@ -204,6 +204,10 @@ const-qualified."
>>>> -config=MC3R1.R8.3,reports+={deliberate,"any_area(any_loc(file(adopted_mpparse_r8_3)))&&any_area(any_loc(file(^xen/arch/x86/include/asm/mpspec\\.h$)))"}
>>>>   -doc_end
>>>> +-doc_begin="For functions guest_walk_tables_[0-9]+_levels(), 
>>>> parameter names of definitions deliberately differ from the ones 
>>>> used in the corresponding declarations."
>>>> +-config=MC3R1.R8.3,declarations={deliberate,"^guest_walk_tables_[0-9]+_levels\\(const struct vcpu\\*, struct p2m_domain\\*, unsigned long, walk_t\\*, uint32_t, gfn_t, mfn_t, void\\*\\)$"}
>>>> +-doc_end
>>>> +
>>>>   -doc_begin="The following variables are compiled in multiple 
>>>> translation units
>>>>   belonging to different executables and therefore are safe."
>>>>   -config=MC3R1.R8.6,declarations+={safe, 
>>>> "name(current_stack_pointer||bsearch||sort)"}
>>>> diff --git a/docs/misra/deviations.rst b/docs/misra/deviations.rst
>>>> index 8511a18925..9423b5cd6b 100644
>>>> --- a/docs/misra/deviations.rst
>>>> +++ b/docs/misra/deviations.rst
>>>> @@ -121,6 +121,12 @@ Deviations related to MISRA C:2012 Rules:
>>>>            - xen/common/unxz.c
>>>>            - xen/common/unzstd.c
>>>> +   * - R8.3
>>>> +     - In some cases, parameter names used in the function definition
>>>> +       deliberately differ from the ones used in the corresponding 
>>>> declaration.
>>>
>>> It would be helpful to provide a bit more reasoning in your commit 
>>> message why this was desired. At least for Arm and common code, I 
>>> would not want anyone to do that because it adds more confusion.
>>>
>>>> +     - Tagged as `deliberate` for ECLAIR. Such functions are:
>>>> +         - guest_walk_tables_[0-9]+_levels()
>>>
>>> I think you want to be a bit mores specific. Other arch may have such 
>>> function in the function and we don't want to deviate them from the 
>>> start.
>>>
>>> Cheers,
>>>
>>
>> Alright, thanks for the observation.
> 
> Actually, I cannot find the original discussion. Do you have link? I am 
> interested to read the reasoning and how many maintainers expressed 
> there view.
> 
> Cheers,
> 

The discussion started here:
https://lists.xenproject.org/archives/html/xen-devel/2023-07/msg00122.html

Then, I asked for further suggestions:
https://lists.xenproject.org/archives/html/xen-devel/2023-07/msg00855.html

-- 
Federico Serafini, M.Sc.

Software Engineer, BUGSENG (http://bugseng.com)


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 14:17:35 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 14:17:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623850.972089 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qw1As-0007Ag-MN; Thu, 26 Oct 2023 14:17:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623850.972089; Thu, 26 Oct 2023 14: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 1qw1As-0007AZ-Jf; Thu, 26 Oct 2023 14:17:26 +0000
Received: by outflank-mailman (input) for mailman id 623850;
 Thu, 26 Oct 2023 14:17: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 1qw1Ar-00078w-6f
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 14:17: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 1qw1Aq-0005LB-G6; Thu, 26 Oct 2023 14:17:24 +0000
Received: from 54-240-197-238.amazon.com ([54.240.197.238]
 helo=[192.168.13.109]) by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qw1Aq-0002SM-9n; Thu, 26 Oct 2023 14:17: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=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=fxr0vUVdCcmdNXFdrGLPJgT8ZBgcNFK8f7Zl8srfmMw=; b=Q9Z6pdyxDfieBYcyAJWMtJEmOt
	VokbDMxrv6Weti66VPbxzuDtISB/RojEq39Eso6E57C75d/Wb/luZlFf/XJCyMYF4HdOp8PCrmR/v
	MWkn5UG+1lxOROjF/SXCO6UhX04fHMjPEEZVuQbi/dEJdjG80TV0NT3nfXjD+QLDzrd8=;
Message-ID: <32f63354-872d-4598-a5ce-c851cacfc6d4@xen.org>
Date: Thu, 26 Oct 2023 15:17:21 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN PATCH v2] automation/eclair: add deviations for MISRA C:2012
 Rule 8.3
Content-Language: en-GB
To: Federico Serafini <federico.serafini@bugseng.com>,
 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>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Jan Beulich <jbeulich@suse.com>,
 Wei Liu <wl@xen.org>
References: <1c146f28cb19607ddd6741de4f7de051894a3381.1698314415.git.federico.serafini@bugseng.com>
 <662e9080-5648-47eb-95e6-41fcb618c68f@xen.org>
 <1f137be0-452d-4073-a79c-ffd8a501e434@bugseng.com>
 <831e23c2-f30d-4931-8749-99e4b9c4215b@xen.org>
 <66e59c25-fa6f-4fa4-aae8-aefa0b52c3b4@bugseng.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <66e59c25-fa6f-4fa4-aae8-aefa0b52c3b4@bugseng.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

Hi,

On 26/10/2023 15:04, Federico Serafini wrote:
> On 26/10/23 15:54, Julien Grall wrote:
>> Hi,
>>
>> On 26/10/2023 13:13, Federico Serafini wrote:
>>> On 26/10/23 12:25, Julien Grall wrote:
>>>> Hi,
>>>>
>>>> On 26/10/2023 11:04, Federico Serafini wrote:
>>>>> Update ECLAIR configuration to deviate Rule 8.3 ("All declarations of
>>>>> an object or function shall use the same names and type qualifiers")
>>>>> for the following functions: guest_walk_tables_[0-9]+_levels().
>>>>> Update file docs/misra/deviations.rst accordingly.
>>>>> No functional change.
>>>>>
>>>>> Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
>>>>> ---
>>>>> Changes in v2:
>>>>>    - removed set_px_pminfo() from the scope of the deviation;
>>>>>    - fixed tag of the commit.
>>>>> ---
>>>>>   automation/eclair_analysis/ECLAIR/deviations.ecl | 4 ++++
>>>>>   docs/misra/deviations.rst                        | 6 ++++++
>>>>>   2 files changed, 10 insertions(+)
>>>>>
>>>>> diff --git a/automation/eclair_analysis/ECLAIR/deviations.ecl 
>>>>> b/automation/eclair_analysis/ECLAIR/deviations.ecl
>>>>> index d8170106b4..b99dfdafd6 100644
>>>>> --- a/automation/eclair_analysis/ECLAIR/deviations.ecl
>>>>> +++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
>>>>> @@ -204,6 +204,10 @@ const-qualified."
>>>>> -config=MC3R1.R8.3,reports+={deliberate,"any_area(any_loc(file(adopted_mpparse_r8_3)))&&any_area(any_loc(file(^xen/arch/x86/include/asm/mpspec\\.h$)))"}
>>>>>   -doc_end
>>>>> +-doc_begin="For functions guest_walk_tables_[0-9]+_levels(), 
>>>>> parameter names of definitions deliberately differ from the ones 
>>>>> used in the corresponding declarations."
>>>>> +-config=MC3R1.R8.3,declarations={deliberate,"^guest_walk_tables_[0-9]+_levels\\(const struct vcpu\\*, struct p2m_domain\\*, unsigned long, walk_t\\*, uint32_t, gfn_t, mfn_t, void\\*\\)$"}
>>>>> +-doc_end
>>>>> +
>>>>>   -doc_begin="The following variables are compiled in multiple 
>>>>> translation units
>>>>>   belonging to different executables and therefore are safe."
>>>>>   -config=MC3R1.R8.6,declarations+={safe, 
>>>>> "name(current_stack_pointer||bsearch||sort)"}
>>>>> diff --git a/docs/misra/deviations.rst b/docs/misra/deviations.rst
>>>>> index 8511a18925..9423b5cd6b 100644
>>>>> --- a/docs/misra/deviations.rst
>>>>> +++ b/docs/misra/deviations.rst
>>>>> @@ -121,6 +121,12 @@ Deviations related to MISRA C:2012 Rules:
>>>>>            - xen/common/unxz.c
>>>>>            - xen/common/unzstd.c
>>>>> +   * - R8.3
>>>>> +     - In some cases, parameter names used in the function definition
>>>>> +       deliberately differ from the ones used in the corresponding 
>>>>> declaration.
>>>>
>>>> It would be helpful to provide a bit more reasoning in your commit 
>>>> message why this was desired. At least for Arm and common code, I 
>>>> would not want anyone to do that because it adds more confusion.
>>>>
>>>>> +     - Tagged as `deliberate` for ECLAIR. Such functions are:
>>>>> +         - guest_walk_tables_[0-9]+_levels()
>>>>
>>>> I think you want to be a bit mores specific. Other arch may have 
>>>> such function in the function and we don't want to deviate them from 
>>>> the start.
>>>>
>>>> Cheers,
>>>>
>>>
>>> Alright, thanks for the observation.
>>
>> Actually, I cannot find the original discussion. Do you have link? I 
>> am interested to read the reasoning and how many maintainers expressed 
>> there view.
>>
>> Cheers,
>>
> 
> The discussion started here:
> https://lists.xenproject.org/archives/html/xen-devel/2023-07/msg00122.html
> 
> Then, I asked for further suggestions:
> https://lists.xenproject.org/archives/html/xen-devel/2023-07/msg00855.html

Thanks! So only Jan really provided feedback here. I don't think this is 
a good idea to deviate in this case. If we really want to keep in sync 
and use 'walk' for the name, then we could add a comment after. 
Something like:

uint32_t walk /* pfec */

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 14:55:59 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 14:55:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623854.972100 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qw1lx-0006Z3-HD; Thu, 26 Oct 2023 14:55:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623854.972100; Thu, 26 Oct 2023 14:55: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 1qw1lx-0006Yw-Di; Thu, 26 Oct 2023 14:55:45 +0000
Received: by outflank-mailman (input) for mailman id 623854;
 Thu, 26 Oct 2023 14:55: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=hFWs=GI=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qw1lv-0006YX-GA
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 14:55:43 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur04on061a.outbound.protection.outlook.com
 [2a01:111:f400:fe0e::61a])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id bb5dc7ee-740f-11ee-98d5-6d05b1d4d9a1;
 Thu, 26 Oct 2023 16:55:41 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by GV1PR04MB9101.eurprd04.prod.outlook.com (2603:10a6:150:20::12)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.16; Thu, 26 Oct
 2023 14:55:38 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6954.008; Thu, 26 Oct 2023
 14:55: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: bb5dc7ee-740f-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=T8lY8Fpwuyvz6SuNYpJN6WBH76KSeU7/n4X85Jfhb6rmtPxEe/QpGqT7lIm4sJKWJDfO+4Tug+u1yHdyO33Kv18LAGumTbFLq/6+aCu/iM54d7awbV9zrGj6dOD9pwSkdnE6D7O9rjsjrf44qtleEj7SHHIQ7oi4FRW+fWwdpU/buLSD590I5NznFWBGFT0UKFn/YWtLuyOF+axuZo6AqLT7VUfPY1AFEgjzfK2XHfwYc2UJaAgwNOxzNtBphNfkxYL+o06U8jB7HElppA4Oe5a9PlSq2pnMk+DEfaW9RD04srzXtqsy4m5kIWWB6xdn5MO+YAJn9WqI7gEIPmXtWQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=UKXTNTikjp96Wsz9YiIJcvkFan7yuwOGnEYCcOLzOcE=;
 b=HylZzYciYkNQGJ5pVfXbprDitOlfv5FtgW4z+ozuEkl331T5Vm7c/8aB5eyyBX/jdzffd1MY1p9YBExZV2qFv9TNAnM4HBE/syiACvzWrTMlSy3TQbBxwVXU+RWyWOWilt7WYhom974uahq4cscnbHt3VWATLWSjBvtgtDyqwG3n3D1GCkDLH4Oq4pjXISPjCmSj0f+SepFcPIx4Ir7TKybkFCXQmZCpPVEQMtNfsD7E1/AV2Wxp/cEJ4OOoJlAXZU4dL53zIhZfc3k7OZk47DXTTmjwscHkyqalmVbjgoCOSa6vNZTlBXZRWriGkbVjba3WK271JCRM/6RT8sCRXw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=UKXTNTikjp96Wsz9YiIJcvkFan7yuwOGnEYCcOLzOcE=;
 b=PSkL7rHLIf3LNUdCH1pzdYSr8PrX3+hKJvd5mBkffHcige0WkLmovRnBpg4jNRujP7PnrUNpMAfVcWyu6Ks61BFNwntn22DurC4a+sw68psO127XGx/EHNQYiw1q6Lqt3IVIru8zgC2wSSaCGLinyXjVZKr03S49oOALmFcXi5dzTOGEP55ah1Kzrma1lBk+DWnzYjv27W6ZfxUEg6G3BghNR4Daap2NYEddTpq2H0kZZkBHMhOYbZPz/K3mE4/Lkd8q796wFto4pslKU3FCwbsjOlngyea1HFCkl8R95NMUEGY5wIDM35J933nSbC5AcPE9XatyibzWf+rYfpj01Q==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <a61926bc-e3e6-e381-45de-be3a4878b6af@suse.com>
Date: Thu, 26 Oct 2023 16:55: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] x86/hvm/dom0: fix PVH initrd and metadata placement
Content-Language: en-US
To: Xenia Ragiadakou <xenia.ragiadakou@amd.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>, xen-devel@lists.xenproject.org
References: <20231026064543.43369-1-xenia.ragiadakou@amd.com>
 <ac7e9bac-6d74-a5bf-d703-3c5455e581ea@suse.com>
 <7712c60b-4f89-483e-89e4-7ac8f4d0311e@amd.com>
 <809115b1-2a47-583f-2d04-72a5a21ee7da@suse.com>
 <c107d63c-25a3-4f17-a5e8-7ec3ccd94ce3@amd.com>
 <c81a8275-ecfd-7598-c119-ed83b156c0e5@suse.com>
 <b5330686-82a0-4d47-9549-2d943ca68c7e@amd.com>
 <1cc98108-3328-94d3-5f8d-ff03c965087e@suse.com>
 <92ba94d2-9e57-4241-8626-33f06f88e726@amd.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <92ba94d2-9e57-4241-8626-33f06f88e726@amd.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0411.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:d0::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_|GV1PR04MB9101:EE_
X-MS-Office365-Filtering-Correlation-Id: a31fea13-7a12-41ca-0038-08dbd6339dbb
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	qgxig8KN/kIlXbtSjVGqCCKuhUK4Q+T3AxT46r2qQpJdKyyXq4zfEtJFKRR3WeBaKUDBu9QFmwnCyDpeKNwjmzqu1HyYDvQURtSLFgTH5NnA1fsXnksg9mVtR/FRajwgsDVB7/6j//RqW0hR6lqub7s6UioGbAj23BPK1o7Em7RBD/to4VE5lBEj6uHTjWgtec6tvetm5fDfSdKYDVhdhstqt7qucgeOIQcoks/NUhy8f+lCpNVP0NlEEfnS2S7MrcqS6AQsjWReTA/nMaIIDIgvX9s5bwBg+u/oST1EezXeRKZiGBmwjfmeCk4kudJtwSYpS7J2RRtXOi2mUdNnjOEWBEssvyXFqJHShDpjaYaS9xa+m9K2wdKjCSXKEM/AAgyGasjF411l1maVABoijEDvtH1osQuBn6s1H94Br3hwTY9BQgfYV6QKHkcjGXpb68Me5Al0NvLFb2tDtC7JhFQTumrV2hikLoaYt5Xwx2JhJOsmOm7DJNshuz6AZaiFGeUIsneQjXg/rqS2zHtEke3w2mgbmm+kqUzXOXvr4xFXyeGfmzgu97a2NMasJM7BufF4ygt1GX517PB0lhF1WM7Q3yIEn8Vx/LOcIIg5jIyH55CHby+mZUhHNK1ePXtRBOmaKHe8J45nxwRJH0CxZA==
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)(136003)(376002)(396003)(366004)(230922051799003)(451199024)(1800799009)(64100799003)(186009)(41300700001)(8936002)(4326008)(8676002)(2906002)(5660300002)(66899024)(6512007)(53546011)(83380400001)(6506007)(26005)(31686004)(2616005)(36756003)(31696002)(86362001)(38100700002)(54906003)(316002)(6486002)(478600001)(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?ME5aVkZXSXVBK1lqWGgzRXBTdUxDSGZ0Q3N2L0gxTXR3MGloU2VtNHBiYlpI?=
 =?utf-8?B?eFd3UENqSkNoTWRpeWxjc3FPQks5WDNJdElzeDE0Zm9UTS96clppd25FWXpF?=
 =?utf-8?B?TWgyZElCL2dUYlUzNHFieXhGcUlQVVRMd2dyQ2traGwxTys2RWVjangwaCtm?=
 =?utf-8?B?anIyczhXL2NTL3lPVDdQb0gvdzZzZFpWUGtyUTVjV0Q5L05sZFVKelZMa2VY?=
 =?utf-8?B?WmVvcnlLUEdpUUcwcHI4MmZiTTluM3lDTjk1VTJpMkJlNk5Nb09jbllnc0Y4?=
 =?utf-8?B?KzlpVjJYbk43S2haWHpQN3NrU0lJN0JkUDIvamJiUkM0NElaRk1DOVRndjJM?=
 =?utf-8?B?bnB3NnZmUFI0RlpobDFYUXorWGxJTXd6Q3k4T0V2ckYxQ2VMcUh1MTJ2Z2Ux?=
 =?utf-8?B?bjlSYUYzOHpibVhWSHZqc3NqUHlZeEViTklMUWkxRFNLUW1SeDQ0N3YxWmdK?=
 =?utf-8?B?SDh6eXlGcElTa25WRzB6NVVYNkNsd3pFdmdNZ1pkZUIwZzVPSERaM3FVRW0x?=
 =?utf-8?B?dE1Uc1FwZFk1WDN3emUrcGgwQ2gzQy9TQVQ4WVdPbWlMY0tQSS9uZWF1UzRE?=
 =?utf-8?B?Y24vbjJnRkoyZk9WRE5KK2dSRHZ4SGpVajQ1Q1ZWZERCTUdDVVpWN2Yxd0Rh?=
 =?utf-8?B?ajJVZEhoVkNNeFRTM3Mvd3pWbEg0TkFROHlKbjdON3VmYTdWL0Erck5QT1gr?=
 =?utf-8?B?Zm9zWDNJZTNFVU4xNDhtNFRJR3FrazE5RDBEQTNBTEw2RmxLZzFBNVh2Z210?=
 =?utf-8?B?U0k2MmpCQWwxL0FwSjdpOEY0cmdwQkFrWFJ4bmY3cEpIUnNsNGtROTNMMy8r?=
 =?utf-8?B?Qm9iR0Y0Nk9ocld3TmRrdUg0VTg0L3ZqUGdKMlNoeFdBbGI5LytVQUdOMEc5?=
 =?utf-8?B?QmVLb1dXQUNMTCt5L2diK0JKQWNkZUZBMnArVlZXNkx2dzZJbWhuSi9tVGxC?=
 =?utf-8?B?ZWxSZUVidExDY1ZpRk5EcDlEYTRUb0Z0RFZ1U1lWb1BnMjF2M1hVeHBucHUy?=
 =?utf-8?B?eTBvZkcwMGNkcEZaamFUS2s1ZXloa1FIUCtwOUQzUm01OHlTekp5VkFmZ29I?=
 =?utf-8?B?T2MwRHBUaE5uT2pmZlpnMUo5VTc3SVpFdndQZjV4WlVVUkk1bTRGMVc4akg0?=
 =?utf-8?B?aVNreWJtdjg3LzBSSEtVRnVjOWFseFlIZnliOC8zc0JTL0E5a1FvVmtUaWFa?=
 =?utf-8?B?TEovcE1ySmVDSEl0bTdPQTZrZjVkTTZ2TDhPcHFScWVaQ3dsQ3ZkRUxTdDBz?=
 =?utf-8?B?WDZlWnRaUG1lajEyVG1kbWdYaEFtUWRURzhZSFlIVEt2cVROS1REem5EbFBT?=
 =?utf-8?B?b1hvUWd5c2k2cXVOeWxjNXZsUXRXK2NzVWsvYnQxSnJlU1F5aktrSU1EUEZF?=
 =?utf-8?B?QS9IbzMzaVR4MkFQNXJCRjZxNklndXBmMTNzVXZPSjVLWUo3ZGRYWmtCWVE1?=
 =?utf-8?B?SmlIWFRXKzY4VUhRSTB2Rk0xQllobVpaSVd6RDdKaDZCVER1eUxLMWpFYjBm?=
 =?utf-8?B?QmVnQWM0eGZSa041blVnSkhzRUpBSmV2aHlxT1psWGJNbU1kT0RnQUJBc0FC?=
 =?utf-8?B?cEp2UjA3UlBJbHNYZGgrY1puOWpsOXJZc2U1WTVRSm5zWVNTMEpESnNlRUtq?=
 =?utf-8?B?U1Y2NnFUMTBFNEpSS01FR3lXM1NDZzRkWnJ2N283ZjY2dzBib01rMXF1L1pz?=
 =?utf-8?B?QXRCYWtaL05lQ0VMQ0lGRElqeG0raWlnNmxBU3IvSThseUltOEs4YTVSZGFz?=
 =?utf-8?B?VldULzNJTDFVTlJoaWZKNGN6Ymg5T2pLWDNuYkllV2F1elFLbXpyZS9OY29s?=
 =?utf-8?B?dWJvWnBPOGNjWmZ1RHBIbEErSFgxeEZCR0Raa0ZsU0JPQWh2UkFFYm5IY01Q?=
 =?utf-8?B?WkZSR0xURDJydUJIcFQxckJ3Wk9tVU95UGNIYS92cjBuQjJ3d01RKzI3d0Zt?=
 =?utf-8?B?NFpFZkVILytoYURjajV0eGM1RDFveGpKY1VoMnphOUNqYWdoaEdjWDhXTzJB?=
 =?utf-8?B?OHJsY1lpYy9nMUZUOWdXYS95enNhUk4xdk1TeXE3Z0dVN2NlV25YQk5yNjYw?=
 =?utf-8?B?WkhWVzIwN3dzTW5yY3FVUHFRZnZjYk1xOHY5dmJVdGxFdWJkMFdmR29ML1VT?=
 =?utf-8?Q?+a2+CaPVW5ul6Aia9dxLG4sfy?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: a31fea13-7a12-41ca-0038-08dbd6339dbb
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Oct 2023 14:55:38.2317
 (UTC)
X-MS-Exchange-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/vZMUDDtVRrcSpzvESvoRXB8u9O7jR0MMFh/hOTa5jBaLskPihzjigvDVPCd4nMCu29HS09fN3NeBRTrq+IYA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV1PR04MB9101

On 26.10.2023 15:58, Xenia Ragiadakou wrote:
> 
> On 26/10/23 15:37, Jan Beulich wrote:
>> On 26.10.2023 14:35, Xenia Ragiadakou wrote:
>>>
>>>
>>> On 26/10/23 14:51, Jan Beulich wrote:
>>>> On 26.10.2023 11:46, Xenia Ragiadakou wrote:
>>>>> On 26/10/23 11:45, Jan Beulich wrote:
>>>>>> On 26.10.2023 10:34, Xenia Ragiadakou wrote:
>>>>>>> On 26/10/23 10:35, Jan Beulich wrote:
>>>>>>>> On 26.10.2023 08:45, Xenia Ragiadakou wrote:
>>>>>>>>> --- a/xen/arch/x86/hvm/dom0_build.c
>>>>>>>>> +++ b/xen/arch/x86/hvm/dom0_build.c
>>>>>>>>> @@ -518,7 +518,7 @@ static paddr_t __init find_memory(
>>>>>>>>>              if ( end <= kernel_start || start >= kernel_end )
>>>>>>>>>                  ; /* No overlap, nothing to do. */
>>>>>>>>>              /* Deal with the kernel already being loaded in the region. */
>>>>>>>>> -        else if ( kernel_start - start > end - kernel_end )
>>>>>>>>> +        else if ( kernel_start + kernel_end > start + end )
>>>>>>>> What meaning has the sum of the start and end of either range? I can't
>>>>>>>> figure how comparing those two values will be generally correct / useful.
>>>>>>>> If the partial-overlap case needs handling in the first place, I think
>>>>>>>> new conditionals need adding (and the existing one needs constraining to
>>>>>>>> "kernel range fully contained") to use
>>>>>>>> - as before, the larger of the non-overlapping ranges at start and end
>>>>>>>>       if the kernel range is fully contained,
>>>>>>>> - the tail of the range when the overlap is at the start,
>>>>>>>> - the head of the range when the overlap is at the end.
>>>>>>> Yes it is not quite straight forward to understand and is based on the
>>>>>>> assumption that end > kernel_start and start < kernel_end, due to
>>>>>>> the first condition failing.
>>>>>>>
>>>>>>> Both cases:
>>>>>>> (start < kernel_start && end < kernel_end) and
>>>>>>> (kernel_start - start > end - kernel_end)
>>>>>>> fall into the condition ( kernel_start + kernel_end > start + end )
>>>>>>>
>>>>>>> And both the cases:
>>>>>>> (start > kernel_start && end > kernel_end) and
>>>>>>> (end - kernel_end > kernel_start - start)
>>>>>>> fall into the condition ( kernel_start + kernel_end < start + end )
>>>>>>>
>>>>>>> ... unless of course I miss a case
>>>>>> Well, mathematically (i.e. ignoring the potential for overflow) the
>>>>>> original expression and your replacement are identical anyway. But
>>>>>> overflow needs to be taken into consideration, and hence there is a
>>>>>> (theoretical only at this point) risk with the replacement expression
>>>>>> as well. As a result I still think that ...
>>>>>>
>>>>>>>> That said, in the "kernel range fully contained" case it may want
>>>>>>>> considering to use the tail range if it is large enough, rather than
>>>>>>>> the larger of the two ranges. In fact when switching to that model, we
>>>>>>>> ought to be able to get away with one less conditional, as then the
>>>>>>>> "kernel range fully contained" case doesn't need treating specially.
>>>>>> ... this alternative approach may want considering (provided we need
>>>>>> to make a change in the first place, which I continue to be
>>>>>> unconvinced of).
>>>>> Hmm, I see your point regarding the overflow.
>>>>> Given that start < kernel_end and end > kernel_start, this could
>>>>> be resolved by changing the above condition into:
>>>>> if ( kernel_end - start > end - kernel_start )
>>>>>
>>>>> Would that work for you?
>>>>
>>>> That would look quite a bit more natural, yes. But I don't think it covers
>>>> all cases: What if the E820 range is a proper sub-range of the kernel one?
>>>> If we consider kernel range crossing E820 region boundaries, we also need
>>>> to take that possibility into account, I think.
>>>
>>> You are right, this case is not handled and can lead to either of the
>>> issues mentioned in commit message.
>>> Maybe we should check whether end > start before proceeding with
>>> checking the size.
>>
>> It looks like it all boils down to the alternative I did sketch out.
> 
> I 'm not sure I fully understood the alternative.
> Do you mean sth in the lines below?
> 
>           if ( end <= kernel_start || start >= kernel_end )
>               ; /* No overlap, nothing to do. */
>           /* Deal with the kernel already being loaded in the region. */
> -        else if ( kernel_start - start > end - kernel_end )
> +        else if ( start < kernel_start && end > kernel_end ) {
> +            if ( kernel_start - start > end - kernel_end )
> +                end = kernel_start;
> +            else
> +                start = kernel_end;
> +        }
> +        else if ( start < kernel_start )
>               end = kernel_start;
> -        else
> +        else if ( end > kernel_end )
>               start = kernel_end;
> +        else
> +            continue;
> 
>           if ( end - start >= size )
>               return start;

Not exactly, no, because this still takes the size into account only
in this final if().

> You wouldn't like to consider this approach?

I'm happy to consider any other approach. Just that ...

>           if ( end <= kernel_start || start >= kernel_end )
>               ; /* No overlap, nothing to do. */
>           /* Deal with the kernel already being loaded in the region. */
> -        else if ( kernel_start - start > end - kernel_end )
> +        else if ( kernel_end - start > end - kernel_start )
>               end = kernel_start;
>           else
>               start = kernel_end;
> 
> -        if ( end - start >= size )
> +        if ( end > start && end - start >= size )
>               return start;
>       }

... I'm afraid this doesn't deal well with the specific case I was
mentioning: If the E820 region is fully contained in the kernel range,
it looks to me as if this approach would ignore the E820 altogether,
since you either move end ahead of start or start past end then. Both
head and tail regions may be large enough in this case, and if this
was the only region above 1M, there'd be no other space to fall back
to.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 14:59:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 14:59:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623857.972109 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qw1pH-00079D-Vn; Thu, 26 Oct 2023 14:59:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623857.972109; Thu, 26 Oct 2023 14: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 1qw1pH-000796-T6; Thu, 26 Oct 2023 14:59:11 +0000
Received: by outflank-mailman (input) for mailman id 623857;
 Thu, 26 Oct 2023 14:59: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=Iwvv=GI=citrix.com=prvs=656fec104=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qw1pG-00078y-Ft
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 14:59:10 +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 34f8cc60-7410-11ee-9b0e-b553b5be7939;
 Thu, 26 Oct 2023 16:59:07 +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;
 26 Oct 2023 10:58:41 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by PH0PR03MB6756.namprd03.prod.outlook.com (2603:10b6:510:123::11)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6954.8; Thu, 26 Oct
 2023 14:58:37 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::acf0:ce2b:1634:5aee]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::acf0:ce2b:1634:5aee%6]) with mapi id 15.20.6933.011; Thu, 26 Oct 2023
 14:58: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: 34f8cc60-7410-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1698332347;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=5U/VzeDPj7AOeu5IpE6nPr26lbRj09RnYBJhRPVk2BU=;
  b=SuYVZJFg3TmtqkQqZIubOR6nQ35k6M6jec1eon5YL72uT80Mdh7sA4HG
   HyI/XSLDwDdEwMFuSt+H/zI/3AH2cqR3J884gxST7PMA7FLhbntU7fFQY
   lNkZjxyTn/WX3a9VM7GussgNguWrLUepip1tUhpM5pCdmSjyktgS17u2v
   I=;
X-CSE-ConnectionGUID: P1WCKbUMS7iUltTZP3pAZQ==
X-CSE-MsgGUID: tEfxsaEKTzy0EVD+mLFrHw==
X-IronPort-RemoteIP: 104.47.57.169
X-IronPort-MID: 125332745
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:U3B1VKCDew3DQBVW/xLiw5YqxClBgxIJ4kV8jS/XYbTApDwl3mQFx
 mFNWmrXa/eLMzT0fd9+aY6y/E4AusPcnIc1QQY4rX1jcSlH+JHPbTi7wuUcHAvJd5GeExg3h
 yk6QoOdRCzhZiaE/n9BCpC48D8kk/nOH+KgYAL9EngZbRd+Tys8gg5Ulec8g4p56fC0GArIs
 t7pyyHlEAbNNwVcbCRMsMpvlDs15K6p4WtC4ARnDRx2lAS2e0c9Xcp3yZ6ZdxMUcqEMdsamS
 uDKyq2O/2+x13/B3fv8z94X2mVTKlLjFVDmZkh+AsBOsTAbzsAG6Y4pNeJ0VKtio27hc+ada
 jl6ncfYpQ8BZsUgkQmGOvVSO3kW0aZuoNcrLZUj2CA6IoKvn3bEmp1T4E8K0YIwwr9IKkJEy
 NkjdzEwagy/tdrt2JuJc7w57igjBJGD0II3nFhFlGicIdN4BJfJTuPN+MNS2yo2ioZWB/HCa
 sEFaD1pKhPdfxlIPVRRA5U79AuqriCnL3sE9xTI+uxuvTm7IA9ZidABNPLPfdOHX4NNl1uwr
 WPa5WXpRBodMbRzzBLcqC/33bWQwX6TtIQ6CJC25uVjrX6v1H1LJSM6Fl6fj+OZlRvrMz5YA
 wlOksY0loAi+UqqR5/nVhK5qXKNvRkBc9NVH6sx7wTl4qje7hudB2MEZiVcc9Fgv8gzLRQ10
 neZktWvAiZg2JWFRHTY+rqKoDeaPSkOMXREdSICVREC4dTovMc0lB2nczp4OKu8j9mwFTSux
 TmP9XE6n+9K059N0Lin91fahT7qvoLOUgM++gTQWCSi8x99Y4mmIYev7DA38Mp9EWpQdXHZ1
 FBspiRUxLpfZX1RvERhmNkwIYw=
IronPort-HdrOrdr: A9a23:z07GA6ED3YKrkHYnpLqE18eALOsnbusQ8zAXPo5KOGVom62j5r
 iTdZEgvyMc5wxhPU3I9erwWpVoBEmslqKdgrNxAV7BZniDhILAFugLhrcKgQeBJ8SUzJ876U
 4PSdkZNDQyNzRHZATBjTVQ3+xO/DBPys6Vuds=
X-Talos-CUID: 9a23:wJX93W7wupG5C0NX+9sszBcrMeMvT1jmk3btJ1OEO14yUJSncArF
X-Talos-MUID: 9a23:xjawfgTY/FDGaDJERXTwqT9yL85FwJi8GRggr7lFvu2qLwxvbmI=
X-IronPort-AV: E=Sophos;i="6.03,253,1694750400"; 
   d="scan'208";a="125332745"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Ud8LUVhviozYFrw+6DgV91a+7HWO+fppRyx4sV22Nh2WKDvYPIjK84JhlZdTDwa0SrZQaGWZqYpO1CAhFly6ywW2aIBFVhOJ/KJHmgpc0BtahPWD/RKoAc0O1dAGF4G6UZB8RU74IHql5M6VcmJWPlORARaXnOgKAVVNlOqH0kznNGUUEMWAh6mlgEsuwA2EfWC3R5IkzIN8Kefn0PfquDsmhQjwkoxR5WqZo99BQtUAcvCUXJBa/P7W65liwPstqfyW0odt0bvSKIj5eEhdwjuABtRBOU7wN4xAB137qEd263bxnmuo1uJViFAAtG9amzDevdfgIakMqdpC15wnxQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=YOUWLR/1g7VYCnjpuMUXtn9c0XUy50nA4MNKKLyJP7I=;
 b=mSepF4po2JNeT2W3qnk7UXMrhNAucbNuXRlafDHio+g1yYr1WtrQtlZWG+jpYxsik2H366AvKPsKbZZphUnUurB2b4iDiPK+xA7DNIr4z5+df03Uw8ytL65WJQAhg6Bgb3wBB1L+Jvuw4NQo3/E8G5P2l2pNTnn3DS442ye9IRys26/wzA37lmMS6rDpEEYC/Ee7ENkbhC8cVZ5ShDNmnYmAri8q6DDjVZD8FO1PzdsXPtf3dyzbRBW1D7Tou0xs248Yktov5+zKku4td+ju3Vp0883BUfSkzGspVLmE2YaVu4KRGllOVPKiHpAgbmdoE5d4HLEUFKMPjpKdaZK7qA==
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=YOUWLR/1g7VYCnjpuMUXtn9c0XUy50nA4MNKKLyJP7I=;
 b=iwmuNVMKh40LymuzRryq3aZ8ffT9ZJyHUPFu0rOs/tkW2AQg2TtVjYhD6TN2wPYK803FTPVlSaV5gyM/NgLXGWho57XKVeGoJeEymS3w2ZmArCU9H2C6xV70m7n5hkTZnnuDTjXqA68XFo3Z3d1HwoSYLk1izAodVTdp3CnWanA=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Thu, 26 Oct 2023 16:58:31 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Xenia Ragiadakou <xenia.ragiadakou@amd.com>
Cc: Jan Beulich <jbeulich@suse.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
	xen-devel@lists.xenproject.org
Subject: Re: [PATCH] x86/hvm/dom0: fix PVH initrd and metadata placement
Message-ID: <ZTp-l6Kysgu0_xXL@macbook>
References: <20231026064543.43369-1-xenia.ragiadakou@amd.com>
 <ac7e9bac-6d74-a5bf-d703-3c5455e581ea@suse.com>
 <7712c60b-4f89-483e-89e4-7ac8f4d0311e@amd.com>
 <cc4c6681-a788-4069-8470-730969018fd0@citrix.com>
 <84b6679c-1956-4c6d-1fbd-b72846b69d1a@suse.com>
 <a4d4cac5-3987-4891-8aac-c5f559a02b59@amd.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <a4d4cac5-3987-4891-8aac-c5f559a02b59@amd.com>
X-ClientProxiedBy: LO4P123CA0450.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:1a9::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_|PH0PR03MB6756:EE_
X-MS-Office365-Filtering-Correlation-Id: 6afa3c29-ace2-4eb8-2b27-08dbd6340799
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:
	S5+XAHX09z78AcBYACw92CBytpqb1A3uD13C3gXavlsg9iXmnrLvxJs9i4u0l0PaLmJN+tRz8ElXkEcaOJMQNyfirMmAYUPXqjwiEzRCy+kDC1dv2CbMNtOosHFK6etCP3QfzvcmsJcEaFODQNsHqrCNpAqbL6pER+GBKf1+M8wsNrGEe5PqGR/Dvd4I8TrCEv/GUrpY0Knmqx9vHP7bFdlrAdordh2n8tWupG7KRaW+hXO7WggzISVjm1efLitdytZBGubtMm+lxGkP4+qNNV6wLqpi0OGsXaEQkkj+UyMaImQOQxy/w66LrUopWxvwkoob70FZDfFNxUSZpth/b1jHYlFCvLYskE6h5CkDMKENxYdIwnc+RYTb33TLE03dWTNVAtqG1DTANXNMLpAWUrYed0fuYvqKzgM9g5xLjMp20q877JdcUvReUksGWCBW2fW9bB2Co1IrJC9pcq0zt7hV4TRXeqY2tn0Wlf6XciOdgBGISlATv0uqhpaNmBNQvAAcfPX1PNmUwAMGOvBsfCgPi7sQGOW9aLhWnRK3OgbG+jaQwik/Th7rl5Ax1iRK
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)(396003)(366004)(136003)(39860400002)(230922051799003)(451199024)(1800799009)(186009)(64100799003)(83380400001)(41300700001)(5660300002)(2906002)(86362001)(85182001)(26005)(38100700002)(82960400001)(33716001)(6512007)(6666004)(9686003)(53546011)(478600001)(6486002)(66946007)(66556008)(54906003)(316002)(66476007)(4326008)(8676002)(6916009)(8936002)(6506007);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?cDlsNDc1N0owRDF4VzlSakc2ZXVXRGlNRmFBeHVzT1NhY1NkY05jZXYzK0pN?=
 =?utf-8?B?cVhXVVN1cDNxa3d5SWdRd3FQTEpmVnBJMisrSFIydGVlU25RRXlmdDNrQzFT?=
 =?utf-8?B?VEhOL0RXekN5R0l1K2dwWFd6Ujd0bWVxQld1N2x3NEVOMjl0QnJmb1hPN0M4?=
 =?utf-8?B?Rm4xMk1YOVp5LytOT2RuY3lpaXpELzJ0MXVJVVNyMGFWZ2l3eGtjeEw3ZnJq?=
 =?utf-8?B?LzhpcDZoSUw5M3prVnBLUjdpVFM5U2l0NTNRdmtmWUdDSlNMNlVRYUZpMm14?=
 =?utf-8?B?Q1dlS1N6VGl4d3drb3RJeTl1ek9kUk1aelpKcDNVYm5HSW1QcmVFTmwwK2p3?=
 =?utf-8?B?dmNCU0hicWlVVFlEMkI3bW0rWkNKMWJTU3NzTzBwYURwUE1OVERuN01nVTNF?=
 =?utf-8?B?R1NIVWF0bHduTTN6ZExYQmV2NUdTaEhXRms4ak5YMjZXbmJHa0ZNUWZWc0pa?=
 =?utf-8?B?WFpKTUo2WE9IM0VRZ2VnNWIyK2lwNGJKMFlPaW1kQ1ZhOHlpT2U0UmJMeHVS?=
 =?utf-8?B?V2xDdzIvUnIxSDdaNkxpR3NXNitRa3BTeVNwUEJOZ1RYV3RxL3RHU0NwWnI3?=
 =?utf-8?B?WXJvZHJFOFdia0EvZmJ1dHR1cms0T0VuaW9ieXpUbXhsWXE5OG5ZSmpldGNQ?=
 =?utf-8?B?alJ6NzZLa0NQUFVJTVhxOXM5MkxXVlZMY3lLTEc5WUNtdFMzaCtkS2hKeDZw?=
 =?utf-8?B?QmlpWHRIQUlPSDRmRHhzSUt5MWZlazd3MUZHQjY2dlBqNzN5QWJnZEJjakNP?=
 =?utf-8?B?MzJ0NVRlcFVJRHVJNkh0VlNNZFdvRkNPSE9CUm9OTy9rRllKTENjRGZiT00x?=
 =?utf-8?B?R3dLZ1hHYzRwa0hQM205RXVhYXBzbDhpa2xEWHREMG8zRGNqRVB2dVdkeXZS?=
 =?utf-8?B?U24xQ2JaK1J2dzNEbW5LdnN4czJWcXpvV0g5TWlsZlBlS1lYdk9Rcm4vejBH?=
 =?utf-8?B?S293TWFzaityK1FuNlVmOWg3ZXh5Y3dXVVBZR3hHSmRyVDJEVkdJa3lzYnFJ?=
 =?utf-8?B?TVkxd210QjA1MUtUTEFBa29WUVRONTBaYlJpMjFleStZQVJyOGFNV05PVzEy?=
 =?utf-8?B?eElRcUlzSkNqUUdZZVJWQVRvZkpFUmxSOXJDNzZGRDZtWWtwb2VQZWRZTzlv?=
 =?utf-8?B?T1JvaFVMeHk0MDA0cUtEbGhqY3ZCd28wUzhjMWZYUHk1VktoU2h4alFZSUli?=
 =?utf-8?B?WmNrZ1YwOXEwYStwVURWcWZzWW1xWEVxbVZkNDBXZTZsQ3BRVVo3d25vUXFN?=
 =?utf-8?B?T1E2YzJBelZhdDh3ejFBa05ZaGJ6ZDhoU2czbmt2OFhUYzVNazBsL3lzVUxl?=
 =?utf-8?B?VWZoNnR6ekxudUdZU1N2RUpSckZZNVdRSDBrQTZXYkUzbGVWUnJTSHM2WEdY?=
 =?utf-8?B?WVp2WWRBQjFTaDdtajFsYVFnTGxLRjZkTTdISjlMZHlwc1E3MXd0L2hVQm0y?=
 =?utf-8?B?U3dyYk9wVmNITXlsVzVZVmhqUGZjZlVrRVpGcm84b21UbWRkR1VVOGVMWFF5?=
 =?utf-8?B?MGM1dlpseUtJZFRNWXo5ZWtXajJWSEhCWEFpbVYxdzliekFFeDdqWHdUNk51?=
 =?utf-8?B?R1liTmw3dWxnMlJJRm5ObnpMNGwvWUY5V3VsMjd1eXdqbnQxOEpuNlUxTTFF?=
 =?utf-8?B?QzZYc1pReVdLUThZMmw1bWZnK2hlRTJ0N3RGeEVSS2N5UGEzWWR3M3JsR2pZ?=
 =?utf-8?B?VzNVNDNDaEhwTEw1bGNJNHZXeFBHSVZlbjdmTlFid3plcVU2VW5pZ1pGb2sz?=
 =?utf-8?B?Z1FWdlM3K0hHNS9QTDVxczBVZmQ0Q05TWXgxWHF4QjVKWThSZi8yZlBFZHh0?=
 =?utf-8?B?TSt3NEhxb2gyMEpkcTJFQmtuM1ZZV0V6b0RLWU5YZXZEeEZ0QzBIdHIySmE4?=
 =?utf-8?B?Mlg3ZnB5d09RYUlMOFpvK2ZYQ044RUVMUFFzNWpCRm5xRjNQMTVINEdtWjlk?=
 =?utf-8?B?Yk1qRlFRaUVRT0VmMFNRb3BLSFA2TndKYVZOT2FmSzBZNFhmbDUxd3FQSEFa?=
 =?utf-8?B?aU1LR3VTTGt0K0JTZ3l3OHBWeGNsTXJoT3cyRGdtM21qR0diaEI1ejZWV3lC?=
 =?utf-8?B?YUtra0NuVHdvMVVXWWdLL2xZMDZpWms1T2RtVGV5UGxFam9VOTEybHdoRUpG?=
 =?utf-8?B?a2VwaHBxVjhaVW5jTXFhdFZzUTlZQlZ1QlM5SWNLWDlPUndNWXQwYmt6eXMz?=
 =?utf-8?B?UVE9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	pZzKC+2Cus9vRpFmroQqKzHsqLrYtiETYdygCcJt5K86f26Y6ZYGWTu1wDOfcwCJOp4F/z3j515aBu/nnEoOJyKvIoP5C54OfFXVMYR34kUPV83aY/Bkuhz6dr+Wga16ZsMsXlEc6QCOkIIdYbEYlxBbe9OWBqYppTUhPAsjs616nxDC+UOApMF6PKA7Lm3CA9l4Bk/m8/LqmAo3QZd880cK/R9j+lNnPw/aWEkaiNgkZzGHuo3m9yd/p+/WdRBEB06VUAJlbdUbvGFGEs1Gp066L1zH9rJ9p9FcgUijYAWtx9zdyOkgemFb200k1R9dfT2+ClFZh9R1wLfA7dCXbytE4GAWhOhv6K07vYOdTnsEuemv8HeZKVEl9QbjaTmAaNrOYMxm1wZtgSxkzgUmHvswcswcnQCYQPtPPl6pXDYnh0R28fcTuf+AV73hiTCmnwnEZISVTrb6Mwm6x3CKHhf5dqLgpl7U4UOQiT4Erriewvuh+AX2KpzOOwUzgS3xj5zKSFod/d4vjeK6ehtEB3FBVOpob9ZDPoGnd6sW9T9gS1BffzIlczm3KtyXY6a5/zpdxg1P3Xs35eiD6MmaqTTxqFDYxjbTEF1eaST7A/AdSjxZrZOlZ3YuBlJA4h+Ea6aq53m+HWYNBRB8MMIUpcEsSWCOg4pf5GSr942jXIoe37hYgY7vfJOJKjL813iHIcfBPTTOP1x/Su488aN9wUc2Gv3Nwek6QqVGfaxzrPcr6cWdB7g9B8XVKd4Wngv3hqMa1JtrQyESyLIEFnjuPnnEv+cbTqk/nNOnyrTSC/OOnMTXOhJ1iYXNKzXOXol3IQipl4fA93WE5XPzSUBDJxsSEj9ByOQYMNlgzDyuxY4=
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 6afa3c29-ace2-4eb8-2b27-08dbd6340799
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Oct 2023 14:58:36.0480
 (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: TWCPEbhb+arBHX0HTEaLYJPhneaKY8vIZOHMeUAX2y4ivVtbnq6LzsTjmmrujgQRZdQyyzZYfcaA0LJq5NTIPg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR03MB6756

On Thu, Oct 26, 2023 at 03:09:04PM +0300, Xenia Ragiadakou wrote:
> On 26/10/23 14:41, Jan Beulich wrote:
> > On 26.10.2023 12:31, Andrew Cooper wrote:
> > > On 26/10/2023 9:34 am, Xenia Ragiadakou wrote:
> > > > On 26/10/23 10:35, Jan Beulich wrote:
> > > > > On 26.10.2023 08:45, Xenia Ragiadakou wrote:
> > > > > > Given that start < kernel_end and end > kernel_start, the logic that
> > > > > > determines the best placement for dom0 initrd and metadata, does not
> > > > > > take into account the two cases below:
> > > > > > (1) start > kernel_start && end > kernel_end
> > > > > > (2) start < kernel_start && end < kernel_end
> > > > > > 
> > > > > > In case (1), the evaluation will result in end = kernel_start
> > > > > > i.e. end < start, and will load initrd in the middle of the kernel.
> > > > > > In case (2), the evaluation will result in start = kernel_end
> > > > > > i.e. end < start, and will load initrd at kernel_end, that is out
> > > > > > of the memory region under evaluation.
> > > > > I agree there is a problem if the kernel range overlaps but is not fully
> > > > > contained in the E820 range under inspection. I'd like to ask though
> > > > > under what conditions that can happen, as it seems suspicious for the
> > > > > kernel range to span multiple E820 ranges.
> > > > We tried to boot Zephyr as pvh dom0 and its load address was under 1MB.
> > > > 
> > > > I know ... that maybe shouldn't have been permitted at all, but
> > > > nevertheless we hit this issue.
> > > 
> > > Zephyr is linked to run at 4k.  That's what the ELF Headers say, and the
> > > entrypoint is not position-independent.
> > Very interesting. What size is their kernel? And, Xenia, can you provide
> > the E820 map that you were finding the collision with?
> 
> Sure.
> 
> Xen-e820 RAM map:
> 
>  [0000000000000000, 000000000009fbff] (usable)
>  [000000000009fc00, 000000000009ffff] (reserved)
>  [00000000000f0000, 00000000000fffff] (reserved)
>  [0000000000100000, 000000007ffdefff] (usable)
>  [000000007ffdf000, 000000007fffffff] (reserved)
>  [00000000b0000000, 00000000bfffffff] (reserved)
>  [00000000fed1c000, 00000000fed1ffff] (reserved)
>  [00000000fffc0000, 00000000ffffffff] (reserved)
>  [0000000100000000, 000000027fffffff] (usable)
> 
> (XEN) ELF: phdr: paddr=0x1000 memsz=0x8000
> (XEN) ELF: phdr: paddr=0x100000 memsz=0x28a90
> (XEN) ELF: phdr: paddr=0x128aa0 memsz=0x7560
> (XEN) ELF: memory: 0x1000 -> 0x130000

Interesting, so far we have accommodated for the program headers
containing physical addresses for a mostly contiguous region, and the
assumption was that it would all fit into a single RAM region.

If we have to support elfs with such scattered loaded regions we
should start using a rangeset or similar in find_memory() in order to
have a clear picture of the available memory ranges suitable to load
the kernel metadata.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 15:01:31 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 15:01:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623862.972120 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qw1rS-0000Bb-FE; Thu, 26 Oct 2023 15:01:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623862.972120; Thu, 26 Oct 2023 15:01: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 1qw1rS-0000BU-CA; Thu, 26 Oct 2023 15:01:26 +0000
Received: by outflank-mailman (input) for mailman id 623862;
 Thu, 26 Oct 2023 15:01: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=Iwvv=GI=citrix.com=prvs=656fec104=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qw1rR-0000BO-Mi
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 15:01:25 +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 8616686b-7410-11ee-9b0e-b553b5be7939;
 Thu, 26 Oct 2023 17:01:23 +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 Oct 2023 11:01:19 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by SA2PR03MB5705.namprd03.prod.outlook.com (2603:10b6:806:11a::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.8; Thu, 26 Oct
 2023 15:01:17 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::acf0:ce2b:1634:5aee]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::acf0:ce2b:1634:5aee%6]) with mapi id 15.20.6933.011; Thu, 26 Oct 2023
 15:01: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: 8616686b-7410-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1698332482;
  h=date:from:to:cc:subject:message-id:references:
   in-reply-to:mime-version;
  bh=bhiBSiZ8ANQUMSQ2n9opVzW8IMkCJu4LWO+QZ+GGAkk=;
  b=dBPeJmz6IegVed2EsJVx+utj0NKC8TWK+dtk7ibYRNHeaBFwvYBbO/87
   oqxMrZXPBbRPyafneR6a+3sau1Jtakt3JmNmjbJdV140bGWpn90mVdCeo
   2zzFAYBUs5ntb8ciQ+2/XGuL9Pfgjhd0/kcWQibZj2uawrsXdWxqVCnRm
   M=;
X-CSE-ConnectionGUID: PIZmUUAuSSuPMi1wmJU7zg==
X-CSE-MsgGUID: y7Km290YQQ6woHKlkv8e6A==
X-IronPort-RemoteIP: 104.47.58.168
X-IronPort-MID: 126607275
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:/iKJgKvZz3+V8MuibxNjZOf6w+fnVG5fMUV32f8akzHdYApBsoF/q
 tZmKW3XOfmPYmXzet9wao7k9UoDvJLWnNNkQVBt+3hkEilH+JbJXdiXEBz9bniYRiHhoOCLz
 O1FM4Wdc5pkJpP4jk3wWlQ0hSAkjclkfpKlVaicfHg3HFc4IMsYoUoLs/YjhYJ1isSODQqIu
 Nfjy+XSI1bg0DNvWo4uw/vrRChH4rKq41v0gnRkPaoQ5QeEySFMZH4iDfrZw0XQE9E88tGSH
 44v/JnhlkvF8hEkDM+Sk7qTWiXmlZaLYGBiIlIPM0STqkAqSh4ai87XB9JFAatjsB2bnsgZ9
 Tl4ncfYpTHFnEH7sL91vxFwS0mSNEDdkVPNCSDXXce7lyUqf5ZwqhnH4Y5f0YAwo45K7W9yG
 fMwEBE/ay2+rv+N+6+Db+g1mcEBEZb5M9ZK0p1g5Wmx4fcOZ7nmGvyPz/kImTA6i4ZJAOrUY
 NcfZXx3dhPcbhZTO1ARTpUjgOOvgXq5eDpdwL6XjfNvvy6Pk0osgP60boq9lt+iHK25mm6Co
 W3L5SLhCwwyP92D0zuVtHmrg4cjmAuiAtxMTOLiqaMCbFu71zMwDUdHDWqCmKemjW6dX9FBe
 0FK0397xUQ13AnxJjXnZDW6qnOZuh8XW/JLDvY3rgqKz8L88wufB2FCVDdOadUqvcwxWBQj0
 1PPlNTsbRRwtJWFRHTb8a2bxRuiNC5QIWIcaCssSQoe/8KlsIw1lgjITNtoDOiylNKdJN3r6
 zWDrSx7jbNDi8cOjvy/5Qqe3WLqoYXVRAko4AmRRnii8g5yeI+iYcqv9ETf6vFDao2eSzFto
 UQ5piRX18hWZbnlqcBHaLxl8G2BjxpdDADhvA==
IronPort-HdrOrdr: A9a23:8SkKQa2ITWXXxllH3Q5wfwqjBHYkLtp133Aq2lEZdPU0SKGlfq
 GV7ZEmPHrP4gr5N0tOpTntAse9qBDnhPxICOsqXYtKNTOO0AeVxelZhrcKqAeQeBEWmNQ96U
 9hGZIOcuEZDzJB/LvHCN/TKadd/DGFmprY+ts31x1WPGVXgzkL1XYANu6ceHcGIzVuNN4CO7
 e3wNFInDakcWR/VLXBOpFUN9KzweEijfjdEGc7OyI=
X-Talos-CUID: 9a23:hjetymHZI5QOL4g1qmJf1XwRJ/0Mb0bm0U/1IhanDERUF6+aHAo=
X-Talos-MUID: 9a23:34zh2AV8tPeKwtjq/C6zpzQ4ZZ9Z2p3wF0ctspEFpZmJawUlbg==
X-IronPort-AV: E=Sophos;i="6.03,253,1694750400"; 
   d="scan'208";a="126607275"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=PROMREl+ZdSwjah8lDvL0ytiNFw0pQqEc+DIjBy+yyuQNMQ4ZWQhGpoPeaRk6V3RdA/7ia+Vs2PvHMzq73jAivGirsJ3qr24/9lohMtmUs7iyh7h7g5/zPys5YDh2pKpOkTWfvpaTP9b2hrHvz5IX8DRloTziDfw3vS+Bz/sCoVNQwME7EDyGczMMd6FByY2eMdKcn242iQVNztCeGAQ0sQRcss5LL+QxG1bw/Lemx86HwYScH/CCNv3WHQU8sPudo59LWTrTCM1laPkjU8y2CRUSnwfljY6ifaTOroAHPJSI5bf5WHsWiv+a7WLPIdOcd4S6x2W2iEr8g3Ppd76wg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=5IpCgNH5RqMHZohsvHgkSJbO0lIuThLj+MyHfzmm2Gg=;
 b=ZKCvwFMwDNRKXksxpZHgKxYSdx75TX4AyRhKsVvVByzwoKeRbjujJ8bqcUNhh+kVDIt7mowyg/IQjDsuwcfBmCXgh7criKONTUWeQ+pJcW33ynQjtEWWaAMqB9RWyD0DbP51SvAsIyq8fVFMN/XmSCPo6vHVMm0TAiISYisuOcp7GL/gYIOoKG24/8ui+d7i27U+3LGHULN06eE7SwAZKdGHlqZJ5e0iaQWapbiCjaOmp1oKOlehNVyI4NQuh5LV02SUNZO0BXGoW8qLl6g/3adSsinv/Css4gf3HywGRLFEVjyT/cMSCfbGEfxAK2ES4snd4WoI5xf1QuwUbwuILg==
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=5IpCgNH5RqMHZohsvHgkSJbO0lIuThLj+MyHfzmm2Gg=;
 b=YemC4F5e25nn2QH4AbsFPcd4Mn4PYQuSefbzItXXk5yxFArHNV1Sno4Cj7EqjwdalYgzEugGuG2orIHJh2+x+jw7+W8Owr43iHIN7+g00GmDM6zDZfQ2Kz/mZ0Xasy++pHXHx2DbwZoYQlVWq2S8J/goizhvDg3YnSAYqCsPPA4=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Thu, 26 Oct 2023 17:01:13 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: Xenia Ragiadakou <xenia.ragiadakou@amd.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
	xen-devel@lists.xenproject.org
Subject: Re: [PATCH] x86/hvm/dom0: fix PVH initrd and metadata placement
Message-ID: <ZTp_OW0wgdC5U6Qd@macbook>
References: <20231026064543.43369-1-xenia.ragiadakou@amd.com>
 <ac7e9bac-6d74-a5bf-d703-3c5455e581ea@suse.com>
 <7712c60b-4f89-483e-89e4-7ac8f4d0311e@amd.com>
 <809115b1-2a47-583f-2d04-72a5a21ee7da@suse.com>
 <c107d63c-25a3-4f17-a5e8-7ec3ccd94ce3@amd.com>
 <c81a8275-ecfd-7598-c119-ed83b156c0e5@suse.com>
 <b5330686-82a0-4d47-9549-2d943ca68c7e@amd.com>
 <1cc98108-3328-94d3-5f8d-ff03c965087e@suse.com>
 <92ba94d2-9e57-4241-8626-33f06f88e726@amd.com>
 <a61926bc-e3e6-e381-45de-be3a4878b6af@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <a61926bc-e3e6-e381-45de-be3a4878b6af@suse.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_|SA2PR03MB5705:EE_
X-MS-Office365-Filtering-Correlation-Id: 5037227a-a2a0-4766-c225-08dbd63467b8
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:
	ihKjb1Rs1gILsGFhQRlKVaDVn5iKTHsT/N1ph6aU6KO+o7t+wLVhJbzCLM0Yg7qVMxfwX+nmR2x4y8ucFQsAurNvEkGlpH0XRPuc1hjz4XQq+4a9F+ju8G5uvHDvRxltHmXs+GazAmLUlvFJuDtomslSNCMsTXVyrRfRHi0FuWnaaYCkHc+aWPXvvsHPUoGuFyApTjoIhJP2ZdvtcQm8yEgcFqPs5zPSnSoGXSUOqqRDoCpCtIyH8vsDhJaPpQhYe+sqWQCUQh7nRhgMQ0G6XWlVwHRXeEIWj9KBqh/aLN1lAslVJ6mvE2SLhDaGOh77xnr4SBt9whO3DKJ9aPRru/MHlhdG6VvE1f/L3foKU14IFKLHks+rxHxxkdJLAcixa7IrAVXHHtVXYiCW5r007/iW5HVqYZwGCuYCimw4pqImYSXMZfBKi6naLEC1MeCCQKtarMw4ROkcr5IFxb+SILrtsFI8GGP7HiR/3s3V8oiFgL5BscnHtrLAIiMUCbr9zgwd0E3GUfSengqPrNWYzhnBX1SRQzbiaf8Jsgh5UVhkq+XuniF25iFFf7BaRUVl
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)(346002)(39860400002)(136003)(366004)(230922051799003)(451199024)(64100799003)(1800799009)(186009)(2906002)(5660300002)(66899024)(6666004)(66946007)(66556008)(8936002)(6916009)(54906003)(316002)(6486002)(478600001)(66476007)(38100700002)(4326008)(41300700001)(86362001)(85182001)(53546011)(26005)(8676002)(83380400001)(82960400001)(6512007)(6506007)(9686003)(33716001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?ZXZIUFFNdkZDUGRmczVGREp6WnVkc2xHb0xXK1VIelg4Q00vYUx6eTk2b1N6?=
 =?utf-8?B?VThicjA5TWgxVE5NSmR6UVlzQVlMSUNjZzVHbE96VmZId0p5V0J4QndCRDBG?=
 =?utf-8?B?TzhxaEFHTTRmcDhuZ0VGNVZXTWpFZHRZdCt4K2w0Rmw5WVNzL090Q1NXU0dW?=
 =?utf-8?B?Vk53MHJDVWhSOXc2N0JWem5LZW1uRFpOcEJ0VEpSM1dmeEt4RTNJREFlcmhx?=
 =?utf-8?B?TmsyVUFUQ3M5YnV6bXlwZm1nSEZqem9DNmQ0MmNXY2NQeXVqN1VKVVN3ZmhY?=
 =?utf-8?B?aEdPKzJEN3YzQzJkc2czbTE1NDNZWTJOaTg2OHRNRUhnWHBOY3dyeE5Gdnhp?=
 =?utf-8?B?ekl4L1ZFSmVSZVVLcWlDUi9VMUNRRWRlSGo1K1lDTWkzQmJtQlE1ZElXOG12?=
 =?utf-8?B?MDhMNVY2amxyUC85S0J3YmczNE5WZGdIR2ZMSk1PRHhxTEFkQURhS1pjejNj?=
 =?utf-8?B?bGZlSkIxeHlSUHFNSno4ZlBBTC92RmVLZnFOdkZSNVBISTBHay9QYkhZdG11?=
 =?utf-8?B?UVlGdkt4TVB4eXZidDM0SGpJOHBwbmVtRlpGS0tQREFzeGxrQitVcENTNUVy?=
 =?utf-8?B?SDZtZEI4KzIyVXpCVzJmVThKZHFUZEJYa2VTNmt6UjQ3aEN6bENOaVhUMWQv?=
 =?utf-8?B?VG1wQlFYVWwzSE8yaHJUZU5BcVc2dVJLOXFHaXYvaGF4ZGR5V1RUUS9CMXZk?=
 =?utf-8?B?QjY2ZkV2R0t5R0FBM1IveU1TbXpNeHI3WkxwM2FTUWJYMklhMVQrM0tRbnBX?=
 =?utf-8?B?UTQyS0tTYk1CZDd5NGhIaTJrYTlJR1FRQXh4NURIelBEMjVQMVNVa0M3T0NM?=
 =?utf-8?B?bElDQmJMTFFZRjhSWmxvVkxqTC85dEdEd25MaUtrM0x4WEdpWE9VeUhrczE1?=
 =?utf-8?B?ZVFZNG5xOG1ZWlo3Q0RPQkJhcDlnVlh6b3FkN3BhS1hMUGRQYWNnZHp2ZTRL?=
 =?utf-8?B?MlVUY1NpenJ3OFFzcks0clRxdHg5dXdHUU9ZS1RMRk1VZksyZytFNndpS3Bi?=
 =?utf-8?B?emNkeVJMQy9mdjlOdzRBcU13V1NkRnNGZWxhWTdHcTBnbEVxZFJ0TWkxck5O?=
 =?utf-8?B?YWUzL3RwM1EydVZOOTJWU2R1NmRHSzd3d1Q4RDM2TlBlOGdRZGd6UGFUekJB?=
 =?utf-8?B?d29FWWU4VUZEbTFRSzFhbXBMTmozNWpCTm1SVGhmZEpnU0pYdlNvUHJYRlRw?=
 =?utf-8?B?T3NPTHVPMGJzZG9aL2VnekVpZzBJdS8yUUl6aUNGaGtMTklGVXo5T1hWRFF1?=
 =?utf-8?B?SmVQV3ZhMVREbjZYa3BhQy9tYjZwenFkM0F3Q2FOZkprQmlkN0NuMUxicVB4?=
 =?utf-8?B?MmxHWVlnbjM5QXdoMU1ld0xtSTJUeDRkYTViR1QvSmU0N0gwenBnOHAxVDJQ?=
 =?utf-8?B?blFqWlltSlJHRzN6aW4vY0NmTGoydXk3ZWYzek1jRDNjdGtZNVZnU2JteTdy?=
 =?utf-8?B?WUJMY2U4ZHN6Q3g0RWdKVTU1M3ZMajZMZnRRdlVVeHJTbjFHcmNYaTRQY3BS?=
 =?utf-8?B?ZHcyV0Q0NEhiWU1MQWlQNVBxOVVub1NoU09UaHlPQ09LVlhVSlhWWG9CYzNL?=
 =?utf-8?B?NjVvR2NLMDhFeFFIR1gxbEVRZjFWUktLUVdiU3FaamczUlYzMmhGQmJOWEV4?=
 =?utf-8?B?VDB5cjR0am81Y1h0Q1JPT2JwMGIwbEQzWDBKSElRSzVoRCs2aC9zZmlnbzg4?=
 =?utf-8?B?aWpKZHc2RVhHcnVSb0NQV210SmJ4RkMvWmd4cTl4NVU5ZTYyUjQxck81Y05M?=
 =?utf-8?B?SlkzeWZEZHE1RXd4SUxIUW9NVWRiQUxkNVZUSkhZN1owTWFZcmNsRFlSakRU?=
 =?utf-8?B?Z2FzS01lZXY4dHNhamR1Z0xKQVAvakFNMFJveHloMmdKQUdKU2ptRDQ5ZEZi?=
 =?utf-8?B?bGpKSmVYa3JEN3F6dXU4c2RVSFo0QjdtUXFaTkRjSFR3K1VGVnB3QkF6THU4?=
 =?utf-8?B?RFVPN3p2NXh0ZHFRL0tvRHpYMjVJem5LeUJqc2QwWWdKOTltUG1JVGFhMnc3?=
 =?utf-8?B?Y0ZuMnF4VGxjQXA4UWZKZEtHVHdMZVcrV2FDeitKUG5xYUFqckNQUjh6V09a?=
 =?utf-8?B?QUZWcm9zdFoyaEFkcnh3bGpXWUJHaDIyajBaa3RJazNOUjdEOFZZZ1p4aGIw?=
 =?utf-8?B?WGtiZklqYUIwdFg0Z3hZVG1IM2dFM01PNFpiQW4wUlA4cUJHNmJIbXpPVzZW?=
 =?utf-8?B?OWc9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	LZRuZAZoHlq1doSZFHbBrjVhyyiyiDlvId/yaebjuNpiNudZyWz80U6NFrE88M0tALIWMSAhw8dkaGPY3kD6zJ8jQt4iXdNYePfMuYJ8ZRgqYYRhnL5NAmZzdFsO/L7BvvfMVWjA1CCBdohM31LY4RN2OpQrs9uVHQj5rBmuayXjK7K202W4DRW4sJP5r1Y2UxDL5HVJNswE8scaP5KrRH1uXbhAAg/yLgO2EdFB9Q0hO5em70fmX2jqZIy8ekOfY5EU2iMA6HIJTXKKQlAEkFs+IlMjfYYnUi3U+wCmAu67hjHnb9qvJwRkaJhdQ+7wJuiZDEnSyom2gSfiJoMq51FS/urGZjtBg13dWh9AS+g0oLrpfHu3FHfo0cMtCtlVzmX6kU3Or3a2MnpCakQGT5tlW91cn61U2LXQYbJYWUpWXUUHT6lxxdnYr98fGiXICfnGqBg/i8bvix6oYdFRmdqJ8e2O8qZ7rmoveELzNfP/0HG+R44l13etWRpEyjptaX8xR+GwLEN0DlKqWgDqg+NFJqLcMnI5j8FhhFcII+OErMgdt4/VaoeD8GAy+14cyAcRrKYu8aOLzzqdGi0gW7/cJs4QOD7Q2qq6NsVpoN+T5XDKzhdnocfBHDWbqfcpneetpcZjqYP60XmAL9lUHbKs1Khclryh9vlNe0J4mNIwMaekDl3huqjtXKWb4Dq3Ntyyq0gplBs59O7mDdTqEBr9REd1e4EusnHNzitHalTxYMN/yWkVNFhT3PMlYL3VTw8m+j+agjcS9yRcgBhoqwwYKAs+Z6US2++VkHzX5OZd4G2iaEUfIuU3qudkvukSn/sSbBhqDYmZCXXok5pGneGCcadKEm2lnryA/qhyE3o=
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 5037227a-a2a0-4766-c225-08dbd63467b8
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Oct 2023 15:01:17.2714
 (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: dnbiLslqPuzQxPiaC79M3FJlxbfG9BCVEAi3lzaUfl1IIb8NPgKPuNnWtBY1MFrkZXKJQmDfMX1kIHE1h1gueA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA2PR03MB5705

On Thu, Oct 26, 2023 at 04:55:36PM +0200, Jan Beulich wrote:
> On 26.10.2023 15:58, Xenia Ragiadakou wrote:
> > 
> > On 26/10/23 15:37, Jan Beulich wrote:
> >> On 26.10.2023 14:35, Xenia Ragiadakou wrote:
> >>>
> >>>
> >>> On 26/10/23 14:51, Jan Beulich wrote:
> >>>> On 26.10.2023 11:46, Xenia Ragiadakou wrote:
> >>>>> On 26/10/23 11:45, Jan Beulich wrote:
> >>>>>> On 26.10.2023 10:34, Xenia Ragiadakou wrote:
> >>>>>>> On 26/10/23 10:35, Jan Beulich wrote:
> >>>>>>>> On 26.10.2023 08:45, Xenia Ragiadakou wrote:
> >>>>>>>>> --- a/xen/arch/x86/hvm/dom0_build.c
> >>>>>>>>> +++ b/xen/arch/x86/hvm/dom0_build.c
> >>>>>>>>> @@ -518,7 +518,7 @@ static paddr_t __init find_memory(
> >>>>>>>>>              if ( end <= kernel_start || start >= kernel_end )
> >>>>>>>>>                  ; /* No overlap, nothing to do. */
> >>>>>>>>>              /* Deal with the kernel already being loaded in the region. */
> >>>>>>>>> -        else if ( kernel_start - start > end - kernel_end )
> >>>>>>>>> +        else if ( kernel_start + kernel_end > start + end )
> >>>>>>>> What meaning has the sum of the start and end of either range? I can't
> >>>>>>>> figure how comparing those two values will be generally correct / useful.
> >>>>>>>> If the partial-overlap case needs handling in the first place, I think
> >>>>>>>> new conditionals need adding (and the existing one needs constraining to
> >>>>>>>> "kernel range fully contained") to use
> >>>>>>>> - as before, the larger of the non-overlapping ranges at start and end
> >>>>>>>>       if the kernel range is fully contained,
> >>>>>>>> - the tail of the range when the overlap is at the start,
> >>>>>>>> - the head of the range when the overlap is at the end.
> >>>>>>> Yes it is not quite straight forward to understand and is based on the
> >>>>>>> assumption that end > kernel_start and start < kernel_end, due to
> >>>>>>> the first condition failing.
> >>>>>>>
> >>>>>>> Both cases:
> >>>>>>> (start < kernel_start && end < kernel_end) and
> >>>>>>> (kernel_start - start > end - kernel_end)
> >>>>>>> fall into the condition ( kernel_start + kernel_end > start + end )
> >>>>>>>
> >>>>>>> And both the cases:
> >>>>>>> (start > kernel_start && end > kernel_end) and
> >>>>>>> (end - kernel_end > kernel_start - start)
> >>>>>>> fall into the condition ( kernel_start + kernel_end < start + end )
> >>>>>>>
> >>>>>>> ... unless of course I miss a case
> >>>>>> Well, mathematically (i.e. ignoring the potential for overflow) the
> >>>>>> original expression and your replacement are identical anyway. But
> >>>>>> overflow needs to be taken into consideration, and hence there is a
> >>>>>> (theoretical only at this point) risk with the replacement expression
> >>>>>> as well. As a result I still think that ...
> >>>>>>
> >>>>>>>> That said, in the "kernel range fully contained" case it may want
> >>>>>>>> considering to use the tail range if it is large enough, rather than
> >>>>>>>> the larger of the two ranges. In fact when switching to that model, we
> >>>>>>>> ought to be able to get away with one less conditional, as then the
> >>>>>>>> "kernel range fully contained" case doesn't need treating specially.
> >>>>>> ... this alternative approach may want considering (provided we need
> >>>>>> to make a change in the first place, which I continue to be
> >>>>>> unconvinced of).
> >>>>> Hmm, I see your point regarding the overflow.
> >>>>> Given that start < kernel_end and end > kernel_start, this could
> >>>>> be resolved by changing the above condition into:
> >>>>> if ( kernel_end - start > end - kernel_start )
> >>>>>
> >>>>> Would that work for you?
> >>>>
> >>>> That would look quite a bit more natural, yes. But I don't think it covers
> >>>> all cases: What if the E820 range is a proper sub-range of the kernel one?
> >>>> If we consider kernel range crossing E820 region boundaries, we also need
> >>>> to take that possibility into account, I think.
> >>>
> >>> You are right, this case is not handled and can lead to either of the
> >>> issues mentioned in commit message.
> >>> Maybe we should check whether end > start before proceeding with
> >>> checking the size.
> >>
> >> It looks like it all boils down to the alternative I did sketch out.
> > 
> > I 'm not sure I fully understood the alternative.
> > Do you mean sth in the lines below?
> > 
> >           if ( end <= kernel_start || start >= kernel_end )
> >               ; /* No overlap, nothing to do. */
> >           /* Deal with the kernel already being loaded in the region. */
> > -        else if ( kernel_start - start > end - kernel_end )
> > +        else if ( start < kernel_start && end > kernel_end ) {
> > +            if ( kernel_start - start > end - kernel_end )
> > +                end = kernel_start;
> > +            else
> > +                start = kernel_end;
> > +        }
> > +        else if ( start < kernel_start )
> >               end = kernel_start;
> > -        else
> > +        else if ( end > kernel_end )
> >               start = kernel_end;
> > +        else
> > +            continue;
> > 
> >           if ( end - start >= size )
> >               return start;
> 
> Not exactly, no, because this still takes the size into account only
> in this final if().
> 
> > You wouldn't like to consider this approach?
> 
> I'm happy to consider any other approach. Just that ...
> 
> >           if ( end <= kernel_start || start >= kernel_end )
> >               ; /* No overlap, nothing to do. */
> >           /* Deal with the kernel already being loaded in the region. */
> > -        else if ( kernel_start - start > end - kernel_end )
> > +        else if ( kernel_end - start > end - kernel_start )
> >               end = kernel_start;
> >           else
> >               start = kernel_end;
> > 
> > -        if ( end - start >= size )
> > +        if ( end > start && end - start >= size )
> >               return start;
> >       }
> 
> ... I'm afraid this doesn't deal well with the specific case I was
> mentioning: If the E820 region is fully contained in the kernel range,
> it looks to me as if this approach would ignore the E820 altogether,
> since you either move end ahead of start or start past end then. Both
> head and tail regions may be large enough in this case, and if this
> was the only region above 1M, there'd be no other space to fall back
> to.

I think the only sane option and more robust if we have to start
supporting kernels with a set of scattered program headers physical
addresses is to populate a rangeset with all the RAM ranges,
subtract all memory used by the kernel and then find a suitable
region for the metadata.

Roger.


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 15:07:31 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 15:07:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623869.972130 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qw1xH-0001AK-3F; Thu, 26 Oct 2023 15:07:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623869.972130; Thu, 26 Oct 2023 15: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 1qw1xH-0001AD-0X; Thu, 26 Oct 2023 15:07:27 +0000
Received: by outflank-mailman (input) for mailman id 623869;
 Thu, 26 Oct 2023 15:07: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=hFWs=GI=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qw1xF-00018c-Iz
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 15:07:25 +0000
Received: from EUR02-DB5-obe.outbound.protection.outlook.com
 (mail-db5eur02on20625.outbound.protection.outlook.com
 [2a01:111:f400:fe12::625])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 5d942b0a-7411-11ee-9b0e-b553b5be7939;
 Thu, 26 Oct 2023 17:07:23 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM8PR04MB7858.eurprd04.prod.outlook.com (2603:10a6:20b:237::23)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.18; Thu, 26 Oct
 2023 15:07:20 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6954.008; Thu, 26 Oct 2023
 15:07: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: 5d942b0a-7411-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=S72JwK/HPCB75Q+0a6ugiISmdMAeFVu71V5wkWtNJWcQNuIkOi4yAjmHuz80wA74xGKrncjB5MgBeX9ZvhKYD50x5baCkVC+/Oux8OTSDIHcgPBUqgi1oEKiYYDe0af8uBUpOZjrxhgqUT7B7cmMVTCm3bmjjvUuQ33sYR+1qxopMKoL6IeTtBQf136ZDObca0lFIua0gAgBa9xhxvV5hNfA7WB9SNW7RjmDeOWlkLohhwC6pWdU42Q/g/aEGjH6VlucQdTs9SNRBFlASkgj3dNzlYv9pYBswD2sSR4dsEk/GcZWctpuPvKPlxgJC+T5HGbh0crsZ7IXN2odXplAeg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=bliWtgXN1cE5IhQ7TxkR2kTzshNlTZTYQ/No5RqF4fg=;
 b=JuSaXYMnHJeQXrKAvv2Bb1oFLQ0kpZVc0S5LD1oOSMlUxl/Fab+RVoiWqSuI3mjgKODKMUMPZWCUYI0ZsAcFcTu1Rc9eXH/uInUfigUpxMZ9fSmm66v9Ws77PjVdAjijxaUgfmW3GWX55Q6cu//Iqc0IwAcItPBYh7EQ0oLWT9AcZWmIKkuGIuAagdAgSixqUtL33m1Eh6VLgWwjg9/ijrTqM2Nh7KyWMRfIluWCDKdVR1N+ieuRiXRzZGXbhUuR/ZJPztOLs+hgqVk9Lzdrc5FLO3w18T6Od/xVJUL1nhVEvfX60li9okl1/f6NI/bYoaprfbkOXC9G4useHRXMxw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=bliWtgXN1cE5IhQ7TxkR2kTzshNlTZTYQ/No5RqF4fg=;
 b=5roi4bNM57L/QIYmD5GCoqNfubP8o1q2lI5qiSPsqtW1tzV/FBiNAh0JqvLpPw4UiQ5wDy+zbBcD1oeyqg9n/q4psRVDK6RgSNSCo/NV9yoM9J3LOn+1DY6k0uXalrn+2ZN+GHxbofMq3udBWVR7PgcGlMWl/oj3orSWSz2j+hnUbgIZaPcJiaptpnTiWtpUUadvVuGUm9qYeq5L5EmtjhZrJcbeZG9soKjxFSkRRsutNTdtUXCtgQ9q1oOaT0RiDa9P9oatVgYdlcyGzHrIgCSeCG0IZzoAm2PwQAdeDey1YUgtHFePukUTuSf4gAB7AhWGreSVlosIKUKuO4Zobg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <75026813-03fe-3a46-2274-b93e98f62f89@suse.com>
Date: Thu, 26 Oct 2023 17:07:18 +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/7] x86: detect PIC aliasing on ports other than
 0x[2A][01]
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>, Wei Liu <wl@xen.org>
References: <95129c04-f37c-9e26-e65d-786a1db2f003@suse.com>
 <27dd8f40-1ea6-1e7e-49c2-31936a17e9d7@suse.com> <ZToksEP1Fg8MscdK@macbook>
 <86eb1c0d-ac95-247b-16c3-9c4871398082@suse.com> <ZTponIYDYDWRZhzi@macbook>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <ZTponIYDYDWRZhzi@macbook>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR4P281CA0365.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:f8::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_|AM8PR04MB7858:EE_
X-MS-Office365-Filtering-Correlation-Id: 5cbef4df-c502-4cc4-ee46-08dbd635406d
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	oSOiDCtO2IngFgMQtR7r683arAAXg9YdBmYdjIXEb8uh0tQAbHHqFfhKTffUcOpgtcKVcZG+Tl9ZTC7KslsULGL6H3Dxd/OfHLxyy4fiWhLFzpzdrmmsY4rpev/ecVYoUNh6Jg2qYtNkHMCLBqz778h099zl1CLmmXEL5Ra7fqSEf3qxs2FpaO1b4+eOJNBQg0vKVcZMfDybFQ8iAAZYsx8fPO1dPKRCQKA0Gx+PUOUlAry8KehAne0nCp33YQ/nHmm+5REZkpa7MjTrl619W8yeKZ+5ohpfaPBWpdMDzOzc8cLXfWvTpT8lbBiGhvOlBRKHN+2mOdGaQWkDuBIKI8xAMUse21f2uy6J8IIHzQtMHyi2h2epUGUsjj7sz9ejSaAxhXZ5PVLaAZy7TRLOcYcoXh+g5pFEdJetHsYxi2c8ozlsDTGZVl/rSjLPjeLLgkvVJfS0HydAuN8w4erN4V1z8Q3tHNZizLpj+hE7h6YMoSdyuNqH0VuZTEMG6cDkFQWzuRI19BLE73Q+GnUkLJqmJYEWdht4snJ9GSu3AMYXjZ1kW+wMyrRfcbR1qw1NDdO27EQDEywODutYtRPpm0kGDqnq/2M6Y5oc4keuwr872C8g9eADZQcs708nJoH/d1KLlLZvHtyoVDiHYLgHcQ==
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)(346002)(376002)(230922051799003)(186009)(451199024)(1800799009)(64100799003)(6486002)(966005)(54906003)(2616005)(6512007)(38100700002)(6506007)(26005)(316002)(6916009)(66556008)(66476007)(53546011)(66946007)(83380400001)(8936002)(8676002)(31686004)(478600001)(4326008)(5660300002)(41300700001)(36756003)(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?RVFrdW5pRC9PNHNlQkhaK3F3ckRaT0tHbmZlbEFNQVpQUDUvOER1b0pUWkI3?=
 =?utf-8?B?cGRlSU9qVE16OVpGUkZRV3NmVDFDRUM1MTlkeUNaNkxDUEVUaFJyODhPOFFo?=
 =?utf-8?B?SlZjSGt2TUJ2ZmdHeXZmRHpPWFREaDBCZVRMWnBuaTRNMUpsdGtPblVkYWx5?=
 =?utf-8?B?RmRPMElXWXQzSW5RSXphbCtNVUZKYndVNEJRUUhtMU1zWUdSWXYvS3hYL1BU?=
 =?utf-8?B?cVdaL0lhQUJ6SlEyd2tvckwxVG9vU2xPUUFIS0xQRTdJdHZBU0h1aXc2ZWk3?=
 =?utf-8?B?YW80a1BDdGMrb3ZTcjN3NHYzZHozd0szWnJCZFRVb1l6aEpBOTQ1RFhlZmo1?=
 =?utf-8?B?eFkzaUdMN1JEMjlhZlZYaUU4YmphN2dVcWdqK2Qwa25mbjZLYlQraXdNbVUx?=
 =?utf-8?B?aWo4SGFRNGpLVFhQR3YvTTlld3lMK3R5Y0N3OUxHeUIrUXBnQlFKTVdEc3NX?=
 =?utf-8?B?WU44Q1FXTEVrR0pacGFlT0IrVi9SVFNPWERjZk5hUzFkb3JpaE5pYXpobytM?=
 =?utf-8?B?a1owUUtvdVR0RWlHOFl4TGhYd1ZZaUhta2pLNTR3SUtoblRrUG1yaUY5R0tX?=
 =?utf-8?B?Wld3dnNOMkgvUy9TdWxMM0pzQkgySlR0VjdYcG1FRmpHLzV1ak5OSE5UR3Br?=
 =?utf-8?B?VFEvQWhIL250WWZadVdBMi9nWmpDb2Z3bzJRZWROV2U3R1BYRGx2aG53aWZs?=
 =?utf-8?B?WjlCblRsYmxDK2pqNWJnZ0VzZE4xR2ZWYSs4YVFlQUczcG9CY25QSDNCaEFv?=
 =?utf-8?B?eVNhMHVpTk9XRE9MK29sYlh4a0xzUHVzQU1IZjhuU1cwT3ROcG9rbHdxMFVJ?=
 =?utf-8?B?bnJsZStJQWQxK0F4LzJJbDJaa2phZDhQclJZcEtzVGE0TTZCU1ZtTkllNi9E?=
 =?utf-8?B?emE5UUh3K1FpWllJTTRDL2dad25Cc0diUDR2aVRnWWVVU0U2OWZTZkhwMUFI?=
 =?utf-8?B?cGt3VXBVdlpjcTFWbWd4d1AzL3FJYW13SG5iMUVqdkZjeUJ4YlNEdkIwUy9k?=
 =?utf-8?B?ajgwMW5pOTRZODIvMG1RWkxoalFXZ3VzYkF3bXZtaGJDVHJ3Yy85RmM2NGhZ?=
 =?utf-8?B?N3kxejJBMjRkQmpYMW1PQ1laL3NkVDZ5UGZ4SDlPQTFFNDdEeWkveUptYkVX?=
 =?utf-8?B?TXl6c25YaTZuSGthNlpvRmJlRDlYRHFNM0xRenBGVWFTMEg3SzlBQjhCYVhk?=
 =?utf-8?B?VzZzU2syY0xacEdCOU9HK1pCVUFQa2szOStJTnZZSmdVWEZHRlM4Y3lJc2g5?=
 =?utf-8?B?VURTTGdOWlNCb1c2b2pkanBaWEsxdmd2bHJDUzkybmZnMndxZTBNaDNITWNZ?=
 =?utf-8?B?aVNtTUJMK0tkMXlTc1QzYzVGTmVodW5CVVpGQmxjcHZWdzZ1NExqUFdtY1JO?=
 =?utf-8?B?U2Z1WWF4RDV2RGV5Q21iM3pQcVMrVWFoNGxsR0dWR2NmVWZZQktnNVdUaEZT?=
 =?utf-8?B?OVpJN1laK0lZSTI5eklSbGxPWS9BbWo2aEhOMmtmSEMrcXN3cXVnT3hYQXFw?=
 =?utf-8?B?b1hpNkxBVFh2MlgyK0xuVHc0bXRJeUNQUWFmaENMd0xuL2hwY0tiOXE3QTh0?=
 =?utf-8?B?NURES1JqMm5jMjZyUUI3TUMvNmd1TnJ1aHZKS01rQlM0djM0M3g5d3JLZVlJ?=
 =?utf-8?B?Q1pzN2xUTjFNMWJhaE9BM3QzbzFzd0lWb0Z1UmlzZ0ViUjk4WjEweDNjMERy?=
 =?utf-8?B?aFFZZnZIOXdndmIxZ3ZOcEdURmdZTHBjeWJmSnRvU21ndmxwVnovY0VRTlkv?=
 =?utf-8?B?Sm5qSHdIVWd1cDR6SEVHeFYrY05lb1BlT1VtMUlHUUVGTUhUb3ZhY1BlZVZ1?=
 =?utf-8?B?b0NvaUl6SllWdk9keU1hK2pGMTR5ekxDaGZwRCtwR1ZYK3RhOTREd1VJMlpj?=
 =?utf-8?B?clFMSFppVTlNNEplVEkvdXgxMnUyU1dvdEpwVTlrYkIzOEV0YmxEcEwyQXg4?=
 =?utf-8?B?eWQxKzNsTytnT2xIdnFtdlhhRGgwTnM5K3NvM2txV0pkL2ZwcnZkbnRGL091?=
 =?utf-8?B?ZHRRUGZRbDR4RnBJcHdzMVBzaWt0RjM5Yzlad0YvSXM4ajJ5THhMY2lhV2t1?=
 =?utf-8?B?bUNpY0J3ZC9jM3VUOUVXdVYzWkNWQ1J1VXBlZXVOSGxrMHFWQXJkeEVGTTJM?=
 =?utf-8?Q?hM0ejaoTsZKLWoKhppeFNqPTO?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 5cbef4df-c502-4cc4-ee46-08dbd635406d
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Oct 2023 15:07:20.6869
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: N49M1v1WUBoYfQQ29Qv4zTiQbtbCzoidvGbhdqwvvqL+M+3jypcDdG6XRB3SmxeX4Tz4A9X1bWz8FhbtGYy41Q==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8PR04MB7858

On 26.10.2023 15:24, Roger Pau Monné wrote:
> On Thu, Oct 26, 2023 at 11:03:42AM +0200, Jan Beulich wrote:
>> On 26.10.2023 10:34, Roger Pau Monné wrote:
>>> On Thu, May 11, 2023 at 02:06:46PM +0200, Jan Beulich wrote:
>>>> ... in order to also deny Dom0 access through the alias ports. Without
>>>> this it is only giving the impression of denying access to both PICs.
>>>> Unlike for CMOS/RTC, do detection very early, to avoid disturbing normal
>>>> operation later on.
>>>>
>>>> Like for CMOS/RTC a fundamental assumption of the probing is that reads
>>>> from the probed alias port won't have side effects in case it does not
>>>> alias the respective PIC's one.
>>>
>>> I'm slightly concerned about this probing.
>>>
>>> Also I'm unsure we can fully isolate the hardware domain like this.
>>> Preventing access to the non-aliased ports is IMO helpful for domains
>>> to realize the PIT is not available, but in any case such accesses
>>> shouldn't happen in the first place, as dom0 must be modified to run
>>> in such mode.
>>
>> That's true for PV Dom0, but not necessarily for PVH. Plus by denying
>> access to the aliases we also guard against bugs in Dom0, if some
>> component thinks there's something else at those ports (as they
>> indeed were used for other purposes by various vendors).
> 
> I think it would be safe to add a command line option to disable the
> probing, as we would at least like to avoid it in pvshim mode.  Maybe
> ut would be interesting to make it a Kconfig option so that exclusive
> pvshim Kconfig can avoid all this?
> 
> Otherwise it will just make booting the pvshim slower.

I've taken note to introduce such an option (not sure yet whether just
cmdline or also Kconfig). Still
- Shouldn't we already be bypassing related init logic in shim mode?
- A Kconfig option interfacing with PV_SHIM_EXCLUSIVE will collide with
  my patch inverting that option's sense (and renaming it), so it would
  be nice to have that sorted/accepted first (see
  https://lists.xen.org/archives/html/xen-devel/2023-03/msg00040.html).

>>>> @@ -492,10 +492,17 @@ int __init dom0_setup_permissions(struct
>>>>  
>>>>      /* Modify I/O port access permissions. */
>>>>  
>>>> -    /* Master Interrupt Controller (PIC). */
>>>> -    rc |= ioports_deny_access(d, 0x20, 0x21);
>>>> -    /* Slave Interrupt Controller (PIC). */
>>>> -    rc |= ioports_deny_access(d, 0xA0, 0xA1);
>>>> +    for ( offs = 0, i = pic_alias_mask & -pic_alias_mask ?: 2;
>>>> +          offs <= pic_alias_mask; offs += i )
>>>
>>> I'm a bit lost with this, specifically:
>>>
>>> i = pic_alias_mask & -pic_alias_mask ?: 2
>>>
>>> Which is then used as the increment step in
>>>
>>> offs += i
>>>
>>> I could see the usage of pic_alias_mask & -pic_alias_mask in order to
>>> find the first offset, but afterwards don't you need to increment at
>>> single bit left shifts in order to test all possibly set bits in
>>> pic_alias_mask?
>>
>> No, the smallest sensible increment is the lowest bit set in
>> pic_alias_mask. There's specifically no shifting involved here (just
>> mentioning it because you use the word). E.g. if the aliasing was at
>> bits 2 and 3 (pic_alias_mask=0x0c), we'd need to deny access to 20/21,
>> 24/25, 28/29, and 2C/2D, i.e. at an increment of 4.
> 
> Right, it took me a bit to realize.
> 
> We assume that aliases are based on fused address pins, so for example
> we don't explicitly test for an alias at port 0x34, but expect one if
> there's an alias at port 0x30 and another one at port 0x24.

Well, I wouldn't have called it "fused pins", but "not decoded address
bits". But yes. The same was already assumed in the CMOS/RTC patch.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 15:10:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 15:10:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623873.972141 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qw20Y-0003Ac-M7; Thu, 26 Oct 2023 15:10:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623873.972141; Thu, 26 Oct 2023 15:10: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 1qw20Y-0003AV-HO; Thu, 26 Oct 2023 15:10:50 +0000
Received: by outflank-mailman (input) for mailman id 623873;
 Thu, 26 Oct 2023 15:10: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=hFWs=GI=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qw20X-0003AO-2c
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 15:10:49 +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 d720a668-7411-11ee-9b0e-b553b5be7939;
 Thu, 26 Oct 2023 17:10:47 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS8PR04MB8692.eurprd04.prod.outlook.com (2603:10a6:20b:42b::15)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.16; Thu, 26 Oct
 2023 15:10:44 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6954.008; Thu, 26 Oct 2023
 15: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: d720a668-7411-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=X7JyWVOffa3s+s5QndVK20AGBaUenP8FTZVpD59eMAa9zXYYgJylYlth+i0uXjHhT1xNHabyM94XWJ9tRUo0/duPilY4/9qZCiVZBFJsbWMbzCWR5hZo7UCgklBHMQkVAGA51MBr2/23ipJIgA8bNNMMiKUHh/zxpHPhhUEsbccqTflqhKsTYrJkMF3OYQBDScbWU/hbYEoE1ohXg2PIjkn2ZoDuDTNmEK1N2fH8goQ/XfVv+RGei6RTJdTFh6Kq1rgMM+WfkK8RuJXhP04QQr8xpoeWoMp8c1qSLJ0Dw4m0vEaDNGHd++aUa65TrhNpZIW2ewlw3xCnipo1Bc3jaw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=RhEwzYdhqx3l3YlETBtTsdpgE9dCqdAsOZZ2yeChrww=;
 b=Ls6w9qd24oLXzeFgLz+U3od/nBL0s5k/Z0FihKm7Gi6Q4l1uCCkTvmhx5CfCDxfmeJPwWtUZRsqtulEZ0UFSgqz9G9404kiAGjCOn4KzbYY5XjNcD1NrCY35jUlGrjsHf+bo70pjKY6vN82gm+v8U39kkvrr0Kmo+55D4ThbYbr5lpktVgyfD/qlEB/Dv7LSlBCt1bXJ6aMdmvIupybBqeehHAZCaKdb6MbhpBC3bGdu8lN8Jz60d0UxBO4ybADw/uxh1obsgFe5ftfx+ieJe+z4DnY1/QkagkuvKbLmVZXOEeGE0Uf4jIEqioPrLk8TUjoIbwiY7qs2tng4pNzrnQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=RhEwzYdhqx3l3YlETBtTsdpgE9dCqdAsOZZ2yeChrww=;
 b=Xy+cR/f8kvQtzPdnbxx9WXn9sRn8E0zm74VXL/J5NYULXiPBsf8JjMmwZ9hAkgmJxyq7adb6Kh1zz9POUyYSEEhI68n7JWtf6y3qezi8qnDZfnrt9L7QBfgjRDR4bqqOOUtpaM4BqB90csBSz+QUtqMNKzI9UQBxXYdLzOgxqMQ8yFPWMtHlnpAFvxbXL7Xax1V/Tn71Du0Eaw6ZbkaEr5b6PBeImBA93mec/wNDiljYrr1H0+AA0WOmV9mXDq5mQLsWmt9hti9P/ihyLzFTa3Wsj5xddEOJ5H/m6+1KYbudKve+uiGI0lqvLPtz5Io3Af6+M3D62muzI5BRtB6fsw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <bbc0d98b-8908-3fdb-ebb9-6cff5caf940c@suse.com>
Date: Thu, 26 Oct 2023 17:10: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 5/7] x86: detect PIT aliasing on ports other than 0x4[0-3]
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>, Wei Liu <wl@xen.org>
References: <95129c04-f37c-9e26-e65d-786a1db2f003@suse.com>
 <042f76dd-d189-c40a-baec-68ded32aa797@suse.com> <ZTo-tpk64ew4rk1o@macbook>
 <6c3a4243-fef4-129c-8f58-7bc009f886b6@suse.com> <ZTpwTrLU4d90lWYm@macbook>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <ZTpwTrLU4d90lWYm@macbook>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
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_|AS8PR04MB8692:EE_
X-MS-Office365-Filtering-Correlation-Id: 4156ccf4-8ef1-4610-204d-08dbd635b979
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	XBvUFTYPZO7vakuNZWhCEn0EXByNbmPmn+G7mmvRUSrp+/gQDyFpRkfqU1s4Egklrcxpt8646/3OVk3nDzxIxEibkcUK9p9JmSPxRgk24auVbqFc0m67ICLBFTRU0JjZ4gX7uNw8tCXths4DG8yJdzL1X8YeWRcgQmc2dIVqJSACVsaafOHCTwdBKMpoBIp/vPZ/IxeNiTKdFed+hetcQfWlIWXaCsJ6aHTA+wlf9eLYPtalnuUWy0PzdIN9MrKZVqdFpvThSrI6n6ri4f9OnOPt28mueiLG6OSKHmanprVa0fmeAgR26V5tE4ZDcPM4lEy+ImYWkYGo9BfoxwrIP6cSDInwTjYihTPhmztm7SMFbo3aMAwT70gY0COHsO8gd9drB0Q76SWfwmPlu0Fst3yXePbEklJqHJQYxuoBa4HkFnSZeNCJkgl0S1sxP0UO4pIu+NAzFhUIQh79aC+8oOZ0CUCGPEARE8O6kbzQHweuqldUO7whqXyj0hdgTrakSubG69hJSRzEMEUXNnDNvLDE8WZJTPoP6X+2HA0tWUuuZA7NxeJe3IpcGkuJMcIdFIGxaDgUMNxt9oJd7FCdDdM/1vCdEX9SsFpKAg+Yf7HtOGw+VSXLt/Zt0XEf91LaGOC+LDKTI7aC5zn4lhLV4g==
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)(376002)(346002)(396003)(230922051799003)(1800799009)(64100799003)(186009)(451199024)(83380400001)(2906002)(4326008)(8936002)(8676002)(6486002)(53546011)(31696002)(31686004)(5660300002)(41300700001)(86362001)(6512007)(6506007)(6916009)(316002)(478600001)(26005)(2616005)(38100700002)(36756003)(66476007)(66946007)(54906003)(66556008)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?ZWZTbEhaaG9sOFB5L0VydTFXaFRtRzZsUld4NXFodkRldzcxaTQzMVVLbUVW?=
 =?utf-8?B?RWhZZ09CTW9saHZjeUJ4QU1aalphOWpLSENqS0xzNGVmV2ZSOGdFdW1yd1ZR?=
 =?utf-8?B?RkJYSjNLR2dQZ1pVNmp4NjNEcVNnQ0tBOFpJRUdJNndGVUE2YzJTUW93NkYz?=
 =?utf-8?B?SHBJZGFhTEZtSjZvRGNEQmNVc0x0UmFYVUxzRXhsV3h4b050dFRRdUJoWVlG?=
 =?utf-8?B?cXp1R1d1dVpDUTRmRDVOb0t1YWppd3lSUVVFajN4V3JsYjZQY1F4OVNUTFBT?=
 =?utf-8?B?SXNJeEo5U29qSFZhZkluOHdCWGJGTGsxOUQ3Nm5wRERscyt6TUlIeSthN0Nq?=
 =?utf-8?B?eTNmbzhRS0NMZmFuWXhjbk9KM3Q5RWRpTkJSdm9lT2VPbElVUnZLYVZFbUh1?=
 =?utf-8?B?VXJ6RHZzZ05hTElYSnoyQWlUR20xTW5sRkhXV0w0V25nbitzWlgxcWc4V1U1?=
 =?utf-8?B?RllSMzBWZ0JCaXRXUkJlWWNicEtYeXJGcHZBN1llZC9VY0tJM2NBTjEvU25E?=
 =?utf-8?B?ZW1qRWNMQVhWMDMwYUhEL1JpQ1RYZ1o2U1pWazJUV1VySWNaL0N1RXFwaE04?=
 =?utf-8?B?TTFtWjAzelFqVXdZVHRKSHlQU2ZSeG1iQTVYVXhOZGduampVS0daYlBlZHpy?=
 =?utf-8?B?dytja2t0by91dnA3MHloenlTQmg5Mk1NL1dUSWxGK09mUzZCK09rd1VHRGFB?=
 =?utf-8?B?dDVZb0tGZjRQME9CN3NYMlJyamhUWS9GTHRmdEJEOHoyOGRqUHhId0xsbDZp?=
 =?utf-8?B?RXBJYkt1aGRxWDkxTmFodFJpTm9URGovNm1jU1ZtNjA5T2RkS0p0cENOVGx1?=
 =?utf-8?B?QXArSTJlWWhsSWpFMXBhN21sNUJMSnRLOUgzT0FOeVd4ckhEbS9KWUNvQnlw?=
 =?utf-8?B?c1lIQkRLUjg4ZWk0b0c0djFkTmtsckVjRzJ0U0tQMmtIQnFqMVZUaC90UHda?=
 =?utf-8?B?eE92Rks2ZlQxNlpXcFc3NC80bWRvd0F0emJnTk4rKzlXNDRjcDFGeklPSlg1?=
 =?utf-8?B?MGpWRGNMeE1wMDY1NG83bkx1cVh1OFM4VWFYVzRTQlZkZ3Q2TFVxd1pnUVZK?=
 =?utf-8?B?OWhNaXh4a1RVL0hLUTNBK3VuT1g3cmZYOHcrVzJ3eDVXY2dqMlBaL3c1OWgw?=
 =?utf-8?B?TmNZOFRUTU5iaHE2UlJiQWpZYkZtWS9ycU9DR0hUem5CN2R6cG91TGIwUVQ1?=
 =?utf-8?B?MWV2TUVBOTRzY2Rmdlo5VHBidWJpQUlobXI3NUQvMFJYNzlYNjY2UnRnSXpX?=
 =?utf-8?B?eXNKQjN6QzQyREMwMkFqVEdCYk1Jb003eExrZ3QyQ1FHY3RQY092Rlg1K01q?=
 =?utf-8?B?UlRTV2R6NSsvNHRQUFlwSnFnUG9ESWx4R3NZN2FHTndMMm9HakV0K1o0ZE1B?=
 =?utf-8?B?c1ZyUVZhOUdoUGRYSHBjSTE2Qm5OWHdLcitiUWluYkMzTmR0eHBQdWV3S1Fp?=
 =?utf-8?B?MkJtUS9aOFlITVVaQkpYYzVyOVUrcEpiVHNyNmZTRVpnU09Vbm1yNzRRMVNI?=
 =?utf-8?B?aENpY256NFZEcmdkUXNVUjVkR0hNaURldU9udzlsb3VhRjMvNVdYZzB6cys2?=
 =?utf-8?B?ZGl1TjB1OXgyUm83UDl3Yk1PemJsMjFuT3BTTGo2bFp0RzVWdmdKSEVzelIx?=
 =?utf-8?B?V214N3IwLzd6dW1uZXh1RnR3SG9xMkpUNGlIMVlBUDkzajVkc1F3VjJOMHcv?=
 =?utf-8?B?MTZVbzlpSVFBU3RFSnI4VytyUzJSUVpySHB0ZnppYndBcy9nK1lVTXhyMVhX?=
 =?utf-8?B?VFdySms4ODlta2lxaGxHTTFEUUJvK29pcmdIM2dReWRjZVdiaG4yQVFFZ0tL?=
 =?utf-8?B?K0J2WWRuZ1hpZkhjY21uQmxpYW9xTDhQZHhBVE5idGtESld5NDRWK3RnYzlK?=
 =?utf-8?B?UFBQRnlOS1dCSzRyVmpma0lHOGlqVURhK3BLU2taYzlQbGhUZTRWeUhkRlh5?=
 =?utf-8?B?M2xoSWhDcWZqNkFRN1lCM2g1V0RiWHpjNTB6ekgvN1RUQVZWaXcrQjVRN1lj?=
 =?utf-8?B?eFkvOU5tbFVubUo4TktFK1c5WnBiaWlSN3YrWlBjekh4cWd3KzZIRmZvcVUw?=
 =?utf-8?B?ODJpdmhKb1FxTTljWDZLNnhJUEJWMithQ0VMWTFCZW52M2pTS2Y0b1oya1Vk?=
 =?utf-8?Q?byTJRGeYG9vFy2+5yel27qMGo?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 4156ccf4-8ef1-4610-204d-08dbd635b979
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Oct 2023 15:10:43.7566
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 5/FIaYnUXbaO736/Iat7BmgM065TUMVryRwVF+hUcy74VXRnhs8JwHcknwDsPcZX8cx6pjT6ZdzO63B2wsRFYw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB8692

On 26.10.2023 15:57, Roger Pau Monné wrote:
> On Thu, Oct 26, 2023 at 02:31:27PM +0200, Jan Beulich wrote:
>> On 26.10.2023 12:25, Roger Pau Monné wrote:
>>> On Thu, May 11, 2023 at 02:07:12PM +0200, Jan Beulich wrote:
>>>> ... in order to also deny Dom0 access through the alias ports. Without
>>>> this it is only giving the impression of denying access to PIT. Unlike
>>>> for CMOS/RTC, do detection pretty early, to avoid disturbing normal
>>>> operation later on (even if typically we won't use much of the PIT).
>>>>
>>>> Like for CMOS/RTC a fundamental assumption of the probing is that reads
>>>> from the probed alias port won't have side effects (beyond such that PIT
>>>> reads have anyway) in case it does not alias the PIT's.
>>>>
>>>> At to the port 0x61 accesses: Unlike other accesses we do, this masks
>>>> off the top four bits (in addition to the bottom two ones), following
>>>> Intel chipset documentation saying that these (read-only) bits should
>>>> only be written with zero.
>>>
>>> As said in previous patches, I think this is likely too much risk for
>>> little benefit.  I understand the desire to uniformly deny access to
>>> any ports that allow interaction with devices in use by Xen (or not
>>> allowed to be used by dom0), but there's certainly a risk in
>>> configuring such devices in the way that we do by finding a register
>>> that can be read and written to.
>>>
>>> I think if anything this alias detection should have a command line
>>> option in order to disable it.
>>
>> Well, we could have command line options (for each of the RTC/CMOS,
>> PIC, and PIT probing allowing the alias masks to be specified (so we
>> don't need to probe). A value of 1 would uniformly mean "no probing,
>> no aliases" (as all three decode the low bit, so aliasing can happen
>> there). We could further make the default of these variables (yes/no,
>> no actual mask values of course) controllable by a Kconfig setting.
> 
> If you want to make this more fine grained, or even allow the user to
> provide custom masks that's all fine, but there's already
> dom0_ioports_disable that allows disabling a list of IO port ranges.
> 
> What I would require is a way to avoid all the probing, so that we
> could return to the previous behavior.
> 
>>>> --- a/xen/arch/x86/time.c
>>>> +++ b/xen/arch/x86/time.c
>>>> @@ -425,6 +425,69 @@ static struct platform_timesource __init
>>>>      .resume = resume_pit,
>>>>  };
>>>>  
>>>> +unsigned int __initdata pit_alias_mask;
>>>> +
>>>> +static void __init probe_pit_alias(void)
>>>> +{
>>>> +    unsigned int mask = 0x1c;
>>>> +    uint8_t val = 0;
>>>> +
>>>> +    /*
>>>> +     * Use channel 2 in mode 0 for probing.  In this mode even a non-initial
>>>> +     * count is loaded independent of counting being / becoming enabled.  Thus
>>>> +     * we have a 16-bit value fully under our control, to write and then check
>>>> +     * whether we can also read it back unaltered.
>>>> +     */
>>>> +
>>>> +    /* Turn off speaker output and disable channel 2 counting. */
>>>> +    outb(inb(0x61) & 0x0c, 0x61);
>>>> +
>>>> +    outb((2 << 6) | (3 << 4) | (0 << 1), PIT_MODE); /* Mode 0, LSB/MSB. */
>>>> +
>>>> +    do {
>>>> +        uint8_t val2;
>>>> +        unsigned int offs;
>>>> +
>>>> +        outb(val, PIT_CH2);
>>>> +        outb(val ^ 0xff, PIT_CH2);
>>>> +
>>>> +        /* Wait for the Null Count bit to clear. */
>>>> +        do {
>>>> +            /* Latch status. */
>>>> +            outb((3 << 6) | (1 << 5) | (1 << 3), PIT_MODE);
>>>> +
>>>> +            /* Try to make sure we're actually having a PIT here. */
>>>> +            val2 = inb(PIT_CH2);
>>>> +            if ( (val2 & ~(3 << 6)) != ((3 << 4) | (0 << 1)) )
>>>> +                return;
>>>> +        } while ( val2 & (1 << 6) );
>>>
>>> We should have some kind of timeout here, just in case...
>>
>> Hmm, I indeed did consider the need for a timeout here. With what
>> we've done up to here we already assume a functioning PIT, verifying
>> simply as we go. The issue with truly using some form of timeout is
>> the determination of how long to wait at most.
> 
> I would likely make it based on iterations, could you get some figures
> on how many iterations it takes for the bit to be clear?
> 
> I would think something like 1000 should be enough, but really have no
> idea.

Except that how long a given number of iterations takes is unknown. 1000
may be enough today or on the systems we test, but may not be tomorrow
or on other peoples' systems. Hence why I'm hesitant ...

Jan


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 15:14:23 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 15:14:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623878.972150 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qw23v-0004E6-2v; Thu, 26 Oct 2023 15:14:19 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623878.972150; Thu, 26 Oct 2023 15:14: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 1qw23u-0004Dz-WA; Thu, 26 Oct 2023 15:14:18 +0000
Received: by outflank-mailman (input) for mailman id 623878;
 Thu, 26 Oct 2023 15:14: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=Iwvv=GI=citrix.com=prvs=656fec104=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qw23t-0004Dt-Hu
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 15:14:17 +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 52355951-7412-11ee-9b0e-b553b5be7939;
 Thu, 26 Oct 2023 17:14:15 +0200 (CEST)
Received: from mail-mw2nam10lp2100.outbound.protection.outlook.com (HELO
 NAM10-MW2-obe.outbound.protection.outlook.com) ([104.47.55.100])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 26 Oct 2023 11:13:55 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by PH8PR03MB7247.namprd03.prod.outlook.com (2603:10b6:510:23a::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.7; Thu, 26 Oct
 2023 15:13:52 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::acf0:ce2b:1634:5aee]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::acf0:ce2b:1634:5aee%6]) with mapi id 15.20.6933.011; Thu, 26 Oct 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: 52355951-7412-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1698333255;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=RBykdSC27rMc8PomWxEbw89B2Yxnl2WKc0Oxm8M6a/M=;
  b=NT1KcKidNJ4idE1OB4ZspBR0nYdP8PMk9gJm4afwiJKdetrYzURv5y6K
   AciDlXaUpW4o0sIS7erKzmx+vfL9ax9Ih6/paJ7wHR/fPRugoV+vZ6lTo
   vruDtjqmhxNBx/bN8pKX91kAG5+F4E8AhEs34rlfbGaDXfErfmNZSdNn2
   g=;
X-CSE-ConnectionGUID: /OeqPfcZSdW/Mzdx6ky9TA==
X-CSE-MsgGUID: LQiRPMPoSkWdRiiFTEW4iw==
X-IronPort-RemoteIP: 104.47.55.100
X-IronPort-MID: 125336216
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:DyDpZ6LK+I0Hcu5CFE+R8JQlxSXFcZb7ZxGr2PjKsXjdYENS1zEGn
 2sYWD2AbPnZY2rzctwnOouw8BgB6sKBmoA2HgZlqX01Q3x08seUXt7xwmUcnc+xBpaaEB84t
 ZV2hv3odp1coqr0/0/1WlTZhSAhk/nOHvylULKs1hlZHWdMUD0mhQ9oh9k3i4tphcnRKw6Ws
 Jb5rta31GWNglaYCUpKrfrYwP9TlK6q4mhB5gZgPakjUGL2zBH5MrpOfcldEFOgKmVkNrbSb
 /rOyri/4lTY838FYj9yuu+mGqGiaue60Tmm0hK6aYD76vRxjnVaPpIAHOgdcS9qZwChxLid/
 jnvWauYEm/FNoWU8AgUvoIx/ytWZcWq85efSZSzXFD6I+QrvBIAzt03ZHzaM7H09c4wJmxXz
 fITGgsBUVemle6mnrGqG9VF05FLwMnDZOvzu1lG5BSAVbMDfsqGRK/Ho9hFwD03m8ZCW+7EY
 NYUYiZuaxKGZABTPlAQC9Q1m+LAanvXKmUE7g7K4/dqpTGLlGSd05C0WDbRUsaNSshP2F6Ru
 0rN/njjAwFcP9uaodaA2iv227SUw3miBur+EpWcz/9QuHirwVcQNxEsVFqVndSG1k+hDoc3x
 0s8v3BGQbIJ3E6hQ8T5Xha4iGWZpRNaUN1Ve8Uq5QfIxqfK7gKxAmkfUiUHeNEgrNUxRzEhy
 hmOhdyBLSNrmK2YTzSa7Lj8kN+pES0cLGtHYDBeSwIAuoHnuNtq1kqJSct/GqmoiNGzASv33
 z2BsCk5gfMUkNIP0KK4u1vAhlpAu6T0c+L83S2PNkrN0++zTND1D2B0wTA3Ncp9Ebs=
IronPort-HdrOrdr: A9a23:lo01qq+upt4BddlLTKRuk+D6I+orL9Y04lQ7vn2ZKCYlF/Bw8v
 rF8cjzuiWZtN98Yh4dcKm7Sc69qBDnhPxICOsqXYtKNTOO0FdASrsN0WKI+UyCJ8SRzI9gPJ
 BbAsxD4Y3LZmSSVfyKmjVQyexQuOVvLZrY49s2E00dNj2CtZsQkjuQZW6gYzRLeDU=
X-Talos-CUID: 9a23:KCJ7nmwdPfmrVfXrQzPoBgVTPc08SnPW/kzcHAidG2p5Fr6EGGO5rfY=
X-Talos-MUID: =?us-ascii?q?9a23=3Az6jzUwxQ7szhwVdTvFNXZh45yJuaqICXCXo1tK0?=
 =?us-ascii?q?BgMq7ORZxOhmhoQvrQ5Byfw=3D=3D?=
X-IronPort-AV: E=Sophos;i="6.03,253,1694750400"; 
   d="scan'208";a="125336216"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=N6Kx4dYym8BG+NNJej5fj/NcytU9OTd4Use6F6vKU5chNTQ7J80u2C1ui4Q9GbuQeBVs+abKPhz3wzJ18+7ruo0cvUn5arOJHTgmBMAEQhFv+6pD6SnQKkpcjFHXp9G5UFAEiic7fMxAqYMjS8YqgWY15JpQhC+ScpJmpXU8XXvANEot9C8/c3uQx6nEMnGhIV0+AwYBboVm4K03uvyKtWDp/PcZV1NfWDA6juJsowcxWgc+R/allCQq961acFEEfwhs9JUp0uh6xjZ/Nuoln0M2GCqddSbEvZDcRaT6hZ1F7Am6m7OFrY1DBccCzfOmHPg1hJlPr3kEKQ1J3C37hw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=7b57vQ+UKpWXFt46GTsAvlt4g5no7bWRnfPfrkWI110=;
 b=DsEnn6c4WFZ4RcKE5Jh+JGuzVyeNt1e54dwADHe46epI2wbGgAdgQmDGycmQ4ESbi2sSfcWK+BPMfWxFVDWVFlhd4Cq8++z8cnlCR1Bu5encQL2aY4qm3LR0Kam0Q+yIDKpSI6Qxc/uEHkqxnBu02+fQqzo1af+kVTy3dsX5IrOJZ06/maddaRcxMLerNYso6jj53pMTg+sNk57WumwH9/Qsnur0+Q8tFNyF6C4Zrb7HpqoKQLM0tyJ0/kS+HnGG4q7fEIBjUApWcZIjUA6J6wyX3EWu9P124Db+Jv3WAIou/sDN1aivcSO0GIusBCg07R66aNFBxpy3YcZzjkMlXQ==
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=7b57vQ+UKpWXFt46GTsAvlt4g5no7bWRnfPfrkWI110=;
 b=WI3VDnCnqqezGHXiHraF93OxsvKK7T5G14+7MYuKkqDTYlg+kNsZGyezqUij9ItFUUV/aoQbuSPWNXi7L/oGqUk0ueV8D1zm4yaHK4bKDX5A4E3GH6m2jvi0HKdJ9VnHMYC9cOxXfUcYZKxblUSYOo+A85eeaygbDmlpY7YofXY=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Thu, 26 Oct 2023 17:13:49 +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>, Wei Liu <wl@xen.org>
Subject: Re: [PATCH 5/7] x86: detect PIT aliasing on ports other than 0x4[0-3]
Message-ID: <ZTqCLbFJkAyKCPuc@macbook>
References: <95129c04-f37c-9e26-e65d-786a1db2f003@suse.com>
 <042f76dd-d189-c40a-baec-68ded32aa797@suse.com>
 <ZTo-tpk64ew4rk1o@macbook>
 <6c3a4243-fef4-129c-8f58-7bc009f886b6@suse.com>
 <ZTpwTrLU4d90lWYm@macbook>
 <bbc0d98b-8908-3fdb-ebb9-6cff5caf940c@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <bbc0d98b-8908-3fdb-ebb9-6cff5caf940c@suse.com>
X-ClientProxiedBy: LO2P265CA0105.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:c::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_|PH8PR03MB7247:EE_
X-MS-Office365-Filtering-Correlation-Id: 9037e05a-5436-48bf-b60d-08dbd6362a16
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:
	t1wJhpHFz2kAPsuvLcS2uvPHptb0FESn9+x1hKZOlZ0WyiP4KAUgnqVhFx0zOrsME71MlcLpaIbxnUj8P/fTXGbKM9xZQV6LvWeckrz7oKNRNG35dz+vMmihALs9fQlbv3xbcThDv4WhGmkJJM8u6fBT/wETKEqsP5YmJRBJ3duwcAY6HJWTA6YLPqwVf5kC6aWpPOT9YXQgy/7CfR25nwHWdem4im4SCIxIlagt9XYqJFtRmuMMzDrMFyIuJXpjvGs76wZ4a14V8lDe7fp+xR+wbgvHRhxuQejv/HSOLB1J8LSG3LeQGkBMJEl3ml7jd3sEg0lc2zaUTooy3V40RkricWRPCpdOGn5eASz8MNSfOhlkdmIHhIKR0ITRqrG7hwQ0oYJjlFs1mKma1/saIq8GVHt0GqqgmYjxHnwhVmRUGeMHeav+U6rDiWlLs4CtpZpIdyM9LJR2BbDFWW6BwUbbiQa2DzV5lDb1jMrHSSueMF6n/l9kHI269kc8oDuXG/ntY/gEdfdVznLaxM46hOQY8MjzP1wdX5p7Jh1YA81meBVKIwyHnrdw8r/s8BrB
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)(366004)(39860400002)(396003)(376002)(230922051799003)(186009)(1800799009)(451199024)(64100799003)(66476007)(66946007)(82960400001)(54906003)(316002)(53546011)(6486002)(6916009)(478600001)(9686003)(6506007)(6666004)(6512007)(83380400001)(85182001)(33716001)(66556008)(86362001)(38100700002)(2906002)(41300700001)(8936002)(4326008)(8676002)(26005)(5660300002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?VlBrckFKemtQaFk2TkpxMFNZei9PWlRiMUNuWCtPalBMOEl3S3dqRkR5czZZ?=
 =?utf-8?B?b2UwZ1pKN3RPUWh1Q0xLSXE1MlllektKbFlhbDdCem90QW4wSkkrTnZld3pF?=
 =?utf-8?B?VHFzUnNvZ3BNM25ORkpjaXNBM1ExeHhvVjVEZDVSZnNiSzF0T0JaNWdNenFM?=
 =?utf-8?B?c2Ewdll0R1ZJZkV4citscHcxRHRUODZyYVI0Ui9mY2MxVVBROXhtL0V3dlhJ?=
 =?utf-8?B?RlJxbVdwdjF5TWhFOEVzSWcxN0pjUDNLbDZxb2ZXRTRBSHZHVVZGaVhMaGJy?=
 =?utf-8?B?MCtuQnJRRnM4YnlyeHB6c3R2OFk5RklTd1NiTUN2eCtOdExvalJtMG10Mjg1?=
 =?utf-8?B?MGVMd2JMQXBPajJUdkpEcVBUUmNDaDdmSmh3eSszWTVPL3VRUzNlMTlvWU10?=
 =?utf-8?B?Yk5PSXF5aWdwYlFJY0pUTWkvSGt6Nzd5c0ZzYy9mcEYvbzkxMjdCeHhzbzJN?=
 =?utf-8?B?QXBtUUt1SmVFQUJ3VGdWQ0U5d3ZtRzZ2SVozak81NmFVS1lOSXN4eDhUamNH?=
 =?utf-8?B?dzRvKzhGVjVWZUZyK3ZyU0RWZlg2d1RKQVFFTEVMRHpZQ3pERmhQL2ZPUURR?=
 =?utf-8?B?SmE5dlZsVHNQUldsNndpb3FWZml2MUI4bTJYOVI5bVRmeEUwczlDZXN0VElm?=
 =?utf-8?B?QU5KelVIRGxwWXgzQ1gxdUl5Y0g2QUloQjMzSFJYSDQ4MWJBSzU1TjdONkJt?=
 =?utf-8?B?RjZQMDM1L1JkYlFHMUZnbWZwN1JOenBEeUdsWFVLakk0WDRPU2lhQjgrdlpS?=
 =?utf-8?B?ZXFLNTFhR0JlWGNmNmJoRytra0dPck16a3FFVDFYRE1qQ3Ivbm5tWEVHMTQ3?=
 =?utf-8?B?d3NPZzFVeXhyb2ZIRWY4RVExMmlBQWtuS3AzR0tHeDlxdzZuLzNad2VCQzB0?=
 =?utf-8?B?N1BWcXJLRlVZM016RE10c2xadXNFVGU2cG1KbERPcklNYXZGT0FibkpObmtI?=
 =?utf-8?B?UUZlZzJ1NGlCWGpJbFRXRWtyQklGT3FiR3pnQVhHTDhTYkdCRHNIbHBQT2VD?=
 =?utf-8?B?RlkrRmtoc1lsdnE2UTczbHpqWUhYbWttbDlVTVE3d0MySlZnVUxPRFZHTFdt?=
 =?utf-8?B?cGsydEhEU2VzbVJ0YzMxc0tVdkIxL0pwc3VJRGUwek1iNG5ONW0zMW1xcXdJ?=
 =?utf-8?B?RVd5cFM5SFNjZ1l2NjAxTGQ1dUZxdVVZcnVxbjBoNFN1Sk9YdSthVkQxZzY3?=
 =?utf-8?B?dytsR0xsS0wzOGJaSDZ0QzNQZEpQLzhIWFJyUjl1MDVSYS9oZGxiUFJNdDBT?=
 =?utf-8?B?cEhDR3lTRmsxVVJkeno5bG43N0Rnb1BMcEozSnFCYTM5R1ZneUUzNExNUk5o?=
 =?utf-8?B?Q2lhSTZlUHYzTk5kN01RbVh1VVljd1dTTkxWckN6eGdSelRXdkpkUWRLNjZV?=
 =?utf-8?B?OURIUEFMSWllZkZzdnpnWkVaNCtKcUZINkNjT1R1OFFiWW9tUk9oSXZqb3pC?=
 =?utf-8?B?Z3JzWnFUVlhnUGNhN09MOWE4dDVaV1ZjU3ZqWlo5R3ZOcTJWZnpRTVk5bXg1?=
 =?utf-8?B?ZU52ODhmc1RiN2s4TlgrZ1hoVkxEb05LUUVZeHJ5cjlEWUNjcXp0OWVCeDlx?=
 =?utf-8?B?SHBBVVBhWVhGSHBzSlljUmFYZGxaeGkrQVhOZHlKc1ZxV0ttc1k4eUk1Yzdo?=
 =?utf-8?B?a2dKTDRaUGxrcUw0R0lwa3oyWFNvYXNDWkZISGpqQXZFTWlocmZNQWswV0x6?=
 =?utf-8?B?cEdqTVF5eGMrMHp5RWdGaUMzZWNBZ1U3bjJGWCtqQnFqR2c1Tk5tZ0YxNmd1?=
 =?utf-8?B?WnNPV2picGFUeGFDNkE4WUZYdE12Sm0zT1hzQXpUTGE1SnRJM1lYSXk4WGVO?=
 =?utf-8?B?MEgrMVAyaEtPWlNRSHBSVzBrdGkrSUExRkdwTGpHTC9mN1lVbE5VNUdEYVpT?=
 =?utf-8?B?d2xxcThxK2JWYlJVbjYxOHpwZnhCcUp6RXhVL2d3eGFuc3ZPdmJvWHBxUVVn?=
 =?utf-8?B?Ykt2MmpoWVJhQTQzWmVweVdWcFV1TjBvdGovU2FwYWZyallWYkhrOW10T1FZ?=
 =?utf-8?B?ZHUyYy9EMDRuOEd6QWZnVk9GbmxVR0lvN1FjRWRDUThFdUIzRUpkaWlReUUy?=
 =?utf-8?B?K3dOaTljS1Y1TEZJdGRocGJZMGxqQVhIeXZkQVhzSy96Y1lxMGRPMHNONStl?=
 =?utf-8?B?eU0vUElOdmh5TUFMRjljSVFCVEdrRG9DbG1HRld5UW8xd2NhQ3hQRW9YWG1l?=
 =?utf-8?B?NUE9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	3b2JCVKBhxG+Z9nHF/XbZ6NlDQG3+g6HNZhj5Df5BghohfvSri5wNVTsZC8GTkVhM+CilzSis9UwoaqfNrSJai8Mg+c4reyA5XhaVx08+KD25/uo22vE5WkFTYW4y9CgysbFKhfMFq7Nr7ivKWKxJg7IDeRoB9Oqj+xFZgyrataj1H+XtijHCGYb6Z6XLZJcswZmo4th7mxFP04tH1pVFzB7xtfxaNipmnPPl7D64nmOhUPZcURsZmphJlJ058vjqkRJlMuQvzf91AxNKjFSArHgxaLDHnLK0/GV/ce5D1aF9Ww3ZKeWlhl5eHIuLTABqXXJyxByipOVS+fYLq6N95hzvroCMklaY0Iiak5BjvBQLDCbLmO9rUPAHrxRWouYIAoerwkBWXS+NTQ8cxkHvz65jVJ+HoslkV1GTd+0MBUIP+axifWlQ5odt9vN60g4DuqeMBOfAeJ0+wpOf7NtBiwwMVf3Ff9UcrQ6lVr3DMFSpT3BqN2e8r5JcRQn3hT5wI4mXgqDj+Wge/OP+0zagRyKTx2sVt0V5ZMznMOeggKvwZ8uhjRYxp1q8cmHhsawaAotgZioLAZfpg72CD1cgYoio/ogHnMPexCp0T3mR53QbrplJz/+PrYvc+Zam8Kd+JoY3jC6JTxaFXGtf25d0XeUUhF6nsz8ufFz88Va5InKLqjHu7knREB1s5w18p6tS8JdfpNzVAjNWB65utKQGf9hRBnx6lb9kUOKeXa++uSRMURgsFigGk6dlafoCrqgnT3z2yahjvYE/OtjziV0cV2IRGpF2pNC2Q0i34AXTVo35K1P1uk9aLeatQwmSWg7lhe9scqwXi3fHXS1dm/+Nw==
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 9037e05a-5436-48bf-b60d-08dbd6362a16
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Oct 2023 15:13:52.8491
 (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: yCWJzp196V9lnLJkvUdbYUr+NAsxGAK8BckTqpXp4PbXwGfu+0yGaHsaP3HB7OlJgQnRqQV3SVrg3F1R99gKUw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH8PR03MB7247

On Thu, Oct 26, 2023 at 05:10:41PM +0200, Jan Beulich wrote:
> On 26.10.2023 15:57, Roger Pau Monné wrote:
> > On Thu, Oct 26, 2023 at 02:31:27PM +0200, Jan Beulich wrote:
> >> On 26.10.2023 12:25, Roger Pau Monné wrote:
> >>> On Thu, May 11, 2023 at 02:07:12PM +0200, Jan Beulich wrote:
> >>>> ... in order to also deny Dom0 access through the alias ports. Without
> >>>> this it is only giving the impression of denying access to PIT. Unlike
> >>>> for CMOS/RTC, do detection pretty early, to avoid disturbing normal
> >>>> operation later on (even if typically we won't use much of the PIT).
> >>>>
> >>>> Like for CMOS/RTC a fundamental assumption of the probing is that reads
> >>>> from the probed alias port won't have side effects (beyond such that PIT
> >>>> reads have anyway) in case it does not alias the PIT's.
> >>>>
> >>>> At to the port 0x61 accesses: Unlike other accesses we do, this masks
> >>>> off the top four bits (in addition to the bottom two ones), following
> >>>> Intel chipset documentation saying that these (read-only) bits should
> >>>> only be written with zero.
> >>>
> >>> As said in previous patches, I think this is likely too much risk for
> >>> little benefit.  I understand the desire to uniformly deny access to
> >>> any ports that allow interaction with devices in use by Xen (or not
> >>> allowed to be used by dom0), but there's certainly a risk in
> >>> configuring such devices in the way that we do by finding a register
> >>> that can be read and written to.
> >>>
> >>> I think if anything this alias detection should have a command line
> >>> option in order to disable it.
> >>
> >> Well, we could have command line options (for each of the RTC/CMOS,
> >> PIC, and PIT probing allowing the alias masks to be specified (so we
> >> don't need to probe). A value of 1 would uniformly mean "no probing,
> >> no aliases" (as all three decode the low bit, so aliasing can happen
> >> there). We could further make the default of these variables (yes/no,
> >> no actual mask values of course) controllable by a Kconfig setting.
> > 
> > If you want to make this more fine grained, or even allow the user to
> > provide custom masks that's all fine, but there's already
> > dom0_ioports_disable that allows disabling a list of IO port ranges.
> > 
> > What I would require is a way to avoid all the probing, so that we
> > could return to the previous behavior.
> > 
> >>>> --- a/xen/arch/x86/time.c
> >>>> +++ b/xen/arch/x86/time.c
> >>>> @@ -425,6 +425,69 @@ static struct platform_timesource __init
> >>>>      .resume = resume_pit,
> >>>>  };
> >>>>  
> >>>> +unsigned int __initdata pit_alias_mask;
> >>>> +
> >>>> +static void __init probe_pit_alias(void)
> >>>> +{
> >>>> +    unsigned int mask = 0x1c;
> >>>> +    uint8_t val = 0;
> >>>> +
> >>>> +    /*
> >>>> +     * Use channel 2 in mode 0 for probing.  In this mode even a non-initial
> >>>> +     * count is loaded independent of counting being / becoming enabled.  Thus
> >>>> +     * we have a 16-bit value fully under our control, to write and then check
> >>>> +     * whether we can also read it back unaltered.
> >>>> +     */
> >>>> +
> >>>> +    /* Turn off speaker output and disable channel 2 counting. */
> >>>> +    outb(inb(0x61) & 0x0c, 0x61);
> >>>> +
> >>>> +    outb((2 << 6) | (3 << 4) | (0 << 1), PIT_MODE); /* Mode 0, LSB/MSB. */
> >>>> +
> >>>> +    do {
> >>>> +        uint8_t val2;
> >>>> +        unsigned int offs;
> >>>> +
> >>>> +        outb(val, PIT_CH2);
> >>>> +        outb(val ^ 0xff, PIT_CH2);
> >>>> +
> >>>> +        /* Wait for the Null Count bit to clear. */
> >>>> +        do {
> >>>> +            /* Latch status. */
> >>>> +            outb((3 << 6) | (1 << 5) | (1 << 3), PIT_MODE);
> >>>> +
> >>>> +            /* Try to make sure we're actually having a PIT here. */
> >>>> +            val2 = inb(PIT_CH2);
> >>>> +            if ( (val2 & ~(3 << 6)) != ((3 << 4) | (0 << 1)) )
> >>>> +                return;
> >>>> +        } while ( val2 & (1 << 6) );
> >>>
> >>> We should have some kind of timeout here, just in case...
> >>
> >> Hmm, I indeed did consider the need for a timeout here. With what
> >> we've done up to here we already assume a functioning PIT, verifying
> >> simply as we go. The issue with truly using some form of timeout is
> >> the determination of how long to wait at most.
> > 
> > I would likely make it based on iterations, could you get some figures
> > on how many iterations it takes for the bit to be clear?
> > 
> > I would think something like 1000 should be enough, but really have no
> > idea.
> 
> Except that how long a given number of iterations takes is unknown. 1000
> may be enough today or on the systems we test, but may not be tomorrow
> or on other peoples' systems. Hence why I'm hesitant ...

Hm, but getting stuck in a loop here can't be good either.  Let's do
it time wise if you prefer, 1s should be more than enough I would
think.

In any case the worse that could if the timeout is hit is that aliases
are not properly detected, but that's way better than the possibility
of getting stuck in an infinite loop.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 15:20:17 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 15:20:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623884.972160 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qw29Z-0006F7-SH; Thu, 26 Oct 2023 15:20:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623884.972160; Thu, 26 Oct 2023 15:20: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 1qw29Z-0006F0-NQ; Thu, 26 Oct 2023 15:20:09 +0000
Received: by outflank-mailman (input) for mailman id 623884;
 Thu, 26 Oct 2023 15: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=Iwvv=GI=citrix.com=prvs=656fec104=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qw29Z-0006Eu-0u
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 15:20:09 +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 2305fc90-7413-11ee-9b0e-b553b5be7939;
 Thu, 26 Oct 2023 17:20:05 +0200 (CEST)
Received: from mail-mw2nam10lp2101.outbound.protection.outlook.com (HELO
 NAM10-MW2-obe.outbound.protection.outlook.com) ([104.47.55.101])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 26 Oct 2023 11:19:46 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by SJ0PR03MB6567.namprd03.prod.outlook.com (2603:10b6:a03:388::11)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.18; Thu, 26 Oct
 2023 15:19:44 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::acf0:ce2b:1634:5aee]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::acf0:ce2b:1634:5aee%6]) with mapi id 15.20.6933.011; Thu, 26 Oct 2023
 15:19: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: 2305fc90-7413-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1698333605;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=6spj0md71610YGuhOcTHwZ87LnS8O1v+LaBG0+6uhi8=;
  b=GQGtKnzMlKvyU34cnUwAj2rQlO3Z8VtsQvrdLqV6hXZXgJyYzqzUZxAj
   BTD5ebG20xPkXydlvltpXojAHffOh7qL2J9qkmpCVpxPoSU71nYk9Nq0T
   5M7EurFRcTr3SwuXQ3s59o72fQGvPrC1/BjnBo6S8uFcSq4RA3Rvnj+uL
   c=;
X-CSE-ConnectionGUID: Kgekgs/UQCmHl+wLyt7CcQ==
X-CSE-MsgGUID: dZb19uLnQK20rEmz6XaXBw==
X-IronPort-RemoteIP: 104.47.55.101
X-IronPort-MID: 126740461
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:40qACauJD3WazZlf5NeKDD2XBufnVHdfMUV32f8akzHdYApBsoF/q
 tZmKW/Tb6vcY2rzKotyOt/l8h4AuMSDx4BmHFZo+S09Qn4T+JbJXdiXEBz9bniYRiHhoOCLz
 O1FM4Wdc5pkJpP4jk3wWlQ0hSAkjclkfpKlVaicfHg3HFc4IMsYoUoLs/YjhYJ1isSODQqIu
 Nfjy+XSI1bg0DNvWo4uw/vrRChH4rKq41v0gnRkPaoQ5QeEySFMZH4iDfrZw0XQE9E88tGSH
 44v/JnhlkvF8hEkDM+Sk7qTWiXmlZaLYGBiIlIPM0STqkAqSh4ai87XB9JFAatjsB2bnsgZ9
 Tl4ncfYpTHFnEH7sL91vxFwS0mSNEDdkVPNCSDXXce7lyUqf5ZwqhnH4Y5f0YAwo45K7W9yG
 fMwCz8AbR+YwN+P67ebTqpzotU/c+LgBdZK0p1g5Wmx4fcOZ7nmGv2PwOACmTA6i4ZJAOrUY
 NcfZXx3dhPcbhZTO1ARTpUjgOOvgXq5eDpdwL6XjfNvvy6Pk0osjf60aIO9lt+iHK25mm6Co
 W3L5SLhCwwyP92D0zuVtHmrg4cjmAuiAtxNSOXkqKcCbFu7yl4ZUUwLcV2CgqPhkGO7SYxvI
 nw+5X97xUQ13AnxJjXnZDW6qnOZuh8XW/JLDvY3rgqKz8L88wufQ2QJUDNFQNgnr9MtAywn0
 EeTmNHkDiApt6eaIVqC8p+EoDX0PjIaRVLufgcBRAoBptz8+oc6i0uXSs45SfbsyNroBTv33
 jaG6jAkgKkehtIK0KP9+k3bhzWrpd7CSQtdChjrY19JJzhRPOaND7FEI3CAsp6s8K7xooG9g
 UU5
IronPort-HdrOrdr: A9a23:8t/8YqyfHyKZTm9J2nlqKrPwJ71zdoMgy1knxilNoH1uHPBw8v
 rFoB1173DJYVoqKRMdcPq7Sc29qArnhPtICOoqXItKPjOLhILAFugL0WKF+V3d8kbFh41gPM
 lbHpSWWOeaMWRH
X-Talos-CUID: 9a23:AByvNWNcmhrb+e5DeyZq90EPXf0cWXj9yDTPB16kVk1icejA
X-Talos-MUID: 9a23:8nBY0wtQR6dPRbB8SM2niANobZZ1x6KXKxpVi7gDqZe0PBxaJGLI
X-IronPort-AV: E=Sophos;i="6.03,253,1694750400"; 
   d="scan'208";a="126740461"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=dyxCgcvAaoPPxC2OGQHef376oU+d1h4jcplHP83I2tXalPWzKCbgeEXLh9ie2iHxYdxh6e4ISXye5mmb+qdXvlPEyI4pHEcmVgnZvmNYdzsJCg5x64kYtKQ25+gtwtnj9Qk+Zj//IMmkO3ewNR9xP8EFCAAdjoz8PotR7YspbRjBOddP/hlsHMpAPgp45SW3hLHuJVihaHaOof6rPti1Rk4hUDgF5A+nn+1gRoY5SkRxNEcRRcmQud0IlfzKZM9Wqn/0VyJyRwVTBAOalOK6oeBqcjvwpWwTiePSN0IyGmxpWi6DBCjIHKXzoMi+OHiJpmk1nUuxoD9TTvLOhR6j0A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=Fm+lt247TAkjhZdcsL8NUZu9MMe7/loC4g5DpjV2U+M=;
 b=KunevcwQYT5XFeMyI2n6fOCHGqfgLrnV21t9kiy9MVjlLHFdc7mQWANVFShc53hdMnScUmW+VwfDIsJNzpBwoZQGYIlT75rO3rnSuVCZlBxc+KscBvU6sDCVyEB5Qm8A/opa47RyaHBPy2cKd896lrGuZkvwQ1Nx6BSlLNjTCXtatRio9gtV6u8vDkAIZm3mjyzuz3/yw6KqoSQ7TXLRMN6gzaiWj0OAAMaJP84F9l0/RFfEIQPREGODq7D7mq4UzLgBLGK5rMrYdlJe7p8DC7Rjv4f/mvh/T4rVX1ifS7eUB8SqX2QR24haVe+5Js0n1hVNFZIwPdOCFdgMvOOqhQ==
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=Fm+lt247TAkjhZdcsL8NUZu9MMe7/loC4g5DpjV2U+M=;
 b=o/2DzGyFD5zOklD8e9IRXHSuP6X92CbMjQRJhHFTFeKNakeAkeWa0UmzI6ipDr6AEk8PDD05HoMk2FpN+4KILPuCaYQ3rQrtOq1K6JxQ5sSqtmLTyJwRx5USJ0NTnZC4DO7p2v5adhH3bbqi1ig+dStlTKrj3/kTQMs9MUzC4rk=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Thu, 26 Oct 2023 17:19: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>, Wei Liu <wl@xen.org>
Subject: Re: [PATCH 4/7] x86: detect PIC aliasing on ports other than
 0x[2A][01]
Message-ID: <ZTqDjNSBmXeblsud@macbook>
References: <95129c04-f37c-9e26-e65d-786a1db2f003@suse.com>
 <27dd8f40-1ea6-1e7e-49c2-31936a17e9d7@suse.com>
 <ZToksEP1Fg8MscdK@macbook>
 <86eb1c0d-ac95-247b-16c3-9c4871398082@suse.com>
 <ZTponIYDYDWRZhzi@macbook>
 <75026813-03fe-3a46-2274-b93e98f62f89@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <75026813-03fe-3a46-2274-b93e98f62f89@suse.com>
X-ClientProxiedBy: LO4P123CA0075.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:190::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_|SJ0PR03MB6567:EE_
X-MS-Office365-Filtering-Correlation-Id: 4a694ea9-f3a6-4b33-ff26-08dbd636fb9e
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:
	WXzfEkxZDClpThVM1y+ccxAhCtseWRj9M7yaQ4TWeyElZ8fEY3LUscoRkc9cD59YYwL0xExKeFP4RcQOCI7PFffZvt7aTqGUEDPwUgpFAtunMEg1G/7RSq2IsuUgYfOslL3QULbfaVbB6QhDaW3mzMeR/Yfka+bHI5imKQ98sbIZSVUWM5M4nymIkbV6w05nXcXFezlKIWotp0J2lhkh9/bPqxCUOYyVokqnJBnaH2hhWyLEwwSFDN7ZLexU7wEHtN1hgKlkIL+1moQOchvDItXT/cjseSDSiOfsZPebSJuvuqNlrZtdb/U1cPJ65WodOmmvEDU6x2Yrx2pr00zS9oXi6La4GZ/y/rvhDn6LnUMBj/EptVNM3E1MVs6zcz+Q9Ek12PbGQIGUJQZMfptOwGdnrfNXApEM0fbMh4uVRQsEgLdCbjAwvQU0yAqGrndTRvs25Mka1LZ9Y3BVnhgrxoS4ruOyp1zfPlbJgrJitjIqYhNOBQ5eV7W5mDw3XpBGXIlyoC50TAjm6OQOe9MBOq6stk3sQdDyM4rFSIxSXPY=
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)(396003)(346002)(39860400002)(376002)(136003)(230922051799003)(1800799009)(64100799003)(451199024)(186009)(83380400001)(4326008)(2906002)(8936002)(8676002)(966005)(6486002)(53546011)(82960400001)(41300700001)(5660300002)(9686003)(6666004)(6512007)(6506007)(316002)(6916009)(26005)(478600001)(86362001)(38100700002)(66476007)(66946007)(54906003)(66556008)(85182001)(33716001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?L09mUldSYVVsT3NvdDZIbllVcnBPeTJkNUFDMnN3MVBsR0RmTjJMeHEzZ21x?=
 =?utf-8?B?TEo4OGNBWFQrUktjRUwrWTJ2N1RITElKaTZ5TDNFVkxFTXpiQkJHdFloRldT?=
 =?utf-8?B?T0Y1azd6Z1lQeE05dzRzTkVPRmd5T3F5ZE8ya2xpR0xsU2tSeEpvVzd5NGx1?=
 =?utf-8?B?MkRQZklOQUdsWjdTRHd0RWRvUS9qTnI2VTNpRnhxMm5nVTFjaGthQ3BFb3Uz?=
 =?utf-8?B?WE5MK3NIUS96NFpnT29wVUlCNjErWG95ZmFTTWFtVkcyaUdaSjQ0VmZpN3RE?=
 =?utf-8?B?Y2Y0WlhSK1plSkY1ZXF0bk1obWxEQ3dsQXl2OGNxaHlsVjNaR1hUWUVNRnF2?=
 =?utf-8?B?VFdYTU5uMWlOMUlnZldTNHl1STVTWi9seXQ2NFZnWTg0ZmpBdzJGM1UvSnlE?=
 =?utf-8?B?QzdJak5QQzRaYnhobUxJZjJLeU9TMHNveERudW5JT1Z6YXozbkFWT2o1YlJL?=
 =?utf-8?B?QmRCOE5Cb2puSE10clA3ZEdWNXdlRENwTllMWndvdUxjVXJCV2FJVlY1WjBL?=
 =?utf-8?B?S1V3WFd3UjF6RXVBdGdSS1ovTjdSN2hHRFFPSFJaRGFQbHYxZWlROHJROXFn?=
 =?utf-8?B?R2FiSlBIb0lnN0Uxbkp0TjNUUWlIdG9UczBsZ3o1QmJUL3IxYlNqTml6bXI0?=
 =?utf-8?B?UEJoVWliMzhUSTlLMVQyWWxLRW9RdGJPZUxtdThzMno1OCtxYWpHMzBZVVFM?=
 =?utf-8?B?K2ZNd09HSW9hYnV2dVo5MG9VUTJFOUZicE9VTm11YlZOclI1ekY1SzlXMHpB?=
 =?utf-8?B?NFJuSERyV0pRd3NtNnp4elB0dmk3SzdGdk9OWkxTZ0FxMXI5cFRXN3hCdi96?=
 =?utf-8?B?WDNWVlhyVStzM2lKS2JmUXFqNlBVZmZDWGZvK08zQnRUQkduU0RTUGltbkpN?=
 =?utf-8?B?UEQxdUlVSlp5WEJZYzgvdm1nbENXY0dvZ3cxR0VQaUFWbk5pcmVQdmZjN0RI?=
 =?utf-8?B?bnBLeE1TQ1llRUtBM001eUFSeE4vUHVnTXlCR2RENHdsSVZoNDhpeTdNTTJY?=
 =?utf-8?B?SnhHOEp1ZHlsY1hyUHdLK2lKb0E2aFIxQzJMKy9YaGV5ZDVkcVlvd0tLVlF2?=
 =?utf-8?B?OFpzVlpmUWxRbWhVZmZaVjFTMTZvdnJVVWErZzhuQkYyT3NUWUJDU3pJbURF?=
 =?utf-8?B?TEJYS1ljT1RLQ05IMmVob1p6NXdNYUdHb1lMNGtRN1FkWGtCd0lzWUdHVm1W?=
 =?utf-8?B?UGd3M0VqeVJvZ3pzTmVBOG5XY0libEJtZkN3UXRFL0t3OVQ2OUNUak1KMzBn?=
 =?utf-8?B?cmZJZThsMklBa0RrOTRPM2F1LzlDK3grZjI2N2RZL0w3U05LaWY1T29UQkZl?=
 =?utf-8?B?eG9JNHphakg1c21JaE82Rk1IWmxQbVVBM21CS1ZxRlhLbytpcnp6UVJ1RWsv?=
 =?utf-8?B?NnN5VXd2UWlDRzl1cW1iVGVwdlQ5MXVVSlBwMU1OMXJGbnVwWGdZM1J4cHJO?=
 =?utf-8?B?VUU1dXdmVjgvRGVuaXc2Zy8vNnNUZmVTM2RzVUNjUmJ5VTRrdFFoRnVlcldT?=
 =?utf-8?B?OW1NZ0UrMXpJTTdvZGFjYWhtOFZRLzFJeFNzZzVIS0hVZHdPVVhkV3VzMTlt?=
 =?utf-8?B?VTJpalFCWTEvOVFEcmJlSkZDcGFBRkdJcWlpWFpyUHFnL1MxVkUwTXRTeTZM?=
 =?utf-8?B?QWlLcWpzd05VaEptNURZRGUxcFdsbitZUk4rTmprRDRLOE1QcE90SExqNTA1?=
 =?utf-8?B?UG56ZTVHbUxTMG0yWmZLVFh6TUFoZGVXcGJhK3JLRFhQbElWOTRuek1kRXFw?=
 =?utf-8?B?Tm1vQllFZTBmcHE1Y0dWUEFGbjd6YlE2V0pMdWlnOUxRdTl4WVdOcStZbDlZ?=
 =?utf-8?B?T21HUnFjYVhaUUxvbFdndTBPRnNpTEdUNVFHbDl4dDZGdk45cnlvN2FOVk1q?=
 =?utf-8?B?cGdrZXhJRTBPczBWNzVwbmVyQktvVU1wM2ZJSXpZS3VpbzVrT3YvdVdtWmhq?=
 =?utf-8?B?Zi9USWF1WERsOUkrUVlNNkVPYkVhSExXTnZrU00zVVZBMzloRnRGNFJkYUJo?=
 =?utf-8?B?SE5LeE5lUjNNSnZDWUhmQytBaHhVQzZhMUJDT01IM1NSM3ZjV3daMnVaUlhE?=
 =?utf-8?B?Ykl3cklnaU9QaWZRWk1rTWhIMk94djBFMHMzNDJPTE9BejhxZjZIUllqb0dG?=
 =?utf-8?B?d1VoVkhtV0NKQjlWVklFYlRUd2YwbUR4TTdzcFVLSWdjcG8vU2gvcjJTOW1k?=
 =?utf-8?B?Znc9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	09+4YaZAiuFdXsoULEARez89PsXK15OVW163GDjZCMcCJa7G50reG4fWvVlZ5nxJAedd+ymfATebzURqegSe6jyqxdxLtQgkqBs+grU7xjlFrmL8BMoao0X0JCCDgm8BBMhule8giD94WAqekaQ8JM4fPfbofczTyjD9jbT5BfkqtxpRlVqm83qpC0pY0o7NpUEVj/CWytc9RBiVuW286wHzVmQdlffdAa9BePLrXxNMBJi02gqcbk8exR3lznRMY9QPYlTaaZKzNhIaq8+m/lgY7UWfIJRs3a6/jrfdicVM0dM7MvkqQ1SWEN+lotF3qwhzt5+dybMVF/mwo7EkFBzmnLmoWyOQ40cLTwD60MLPfWRsIgc2zw1fVD2BseYdpUe7oUE0IhL0PTT04NhQe5wmclSAhcWj56CCxncS0iJ+ttRhTSEvf2bEX2cK+uJt0SGhs8eycFG1Y4xakLNlxV2IGlXb5kxZ6q+rwfp7sjfnHcO4DTOWXJ5C3Q4YWjGuW9BAvIwgtilBu7U/6SyCA8GuHVy814WiefcgFcWLqH7Jfmqo6Yg1AvoQRtYofOM1ddfLkl1CJjNw3kd20ADSCyAiXP/ouzRo3BRbeWOMj8Oe4o4szYeD8KlHNJ1Mrlc7t4J82Iir/QZh7oPJaJ6X3ufT6zJWYvbkBFoy38hKdG6sUEb4ndfdlC6zDh8nKAHDsAf0AwX3QPcmcUfGY/vhbW6F9EQr/g6xS3ewvQiPhRod7xd4DJA1+WSWsnltX2ZpU6IRUTbX2hOL3Q/gwml3Fk3WPT4xTZGlw18iExoM8tKyMA/gnboyUfPxcMcgEbvZwgEuu/FuHBYarYQHZoOIKQ==
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 4a694ea9-f3a6-4b33-ff26-08dbd636fb9e
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Oct 2023 15:19:44.3069
 (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: ktR0NgFnK71Ge24x1vHJwhQdu+qcA+0XOzIneOz7dfvvo00xysGd/bhlVzt5QrkUFCkVDlxXYAH7niR+LDQBOQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR03MB6567

On Thu, Oct 26, 2023 at 05:07:18PM +0200, Jan Beulich wrote:
> On 26.10.2023 15:24, Roger Pau Monné wrote:
> > On Thu, Oct 26, 2023 at 11:03:42AM +0200, Jan Beulich wrote:
> >> On 26.10.2023 10:34, Roger Pau Monné wrote:
> >>> On Thu, May 11, 2023 at 02:06:46PM +0200, Jan Beulich wrote:
> >>>> ... in order to also deny Dom0 access through the alias ports. Without
> >>>> this it is only giving the impression of denying access to both PICs.
> >>>> Unlike for CMOS/RTC, do detection very early, to avoid disturbing normal
> >>>> operation later on.
> >>>>
> >>>> Like for CMOS/RTC a fundamental assumption of the probing is that reads
> >>>> from the probed alias port won't have side effects in case it does not
> >>>> alias the respective PIC's one.
> >>>
> >>> I'm slightly concerned about this probing.
> >>>
> >>> Also I'm unsure we can fully isolate the hardware domain like this.
> >>> Preventing access to the non-aliased ports is IMO helpful for domains
> >>> to realize the PIT is not available, but in any case such accesses
> >>> shouldn't happen in the first place, as dom0 must be modified to run
> >>> in such mode.
> >>
> >> That's true for PV Dom0, but not necessarily for PVH. Plus by denying
> >> access to the aliases we also guard against bugs in Dom0, if some
> >> component thinks there's something else at those ports (as they
> >> indeed were used for other purposes by various vendors).
> > 
> > I think it would be safe to add a command line option to disable the
> > probing, as we would at least like to avoid it in pvshim mode.  Maybe
> > ut would be interesting to make it a Kconfig option so that exclusive
> > pvshim Kconfig can avoid all this?
> > 
> > Otherwise it will just make booting the pvshim slower.
> 
> I've taken note to introduce such an option (not sure yet whether just
> cmdline or also Kconfig). Still
> - Shouldn't we already be bypassing related init logic in shim mode?

Not sure what we bypass in pvshim mode, would be good to double
check.

> - A Kconfig option interfacing with PV_SHIM_EXCLUSIVE will collide with
>   my patch inverting that option's sense (and renaming it), so it would
>   be nice to have that sorted/accepted first (see
>   https://lists.xen.org/archives/html/xen-devel/2023-03/msg00040.html).

It being Andrew the one that made the request, I would like to get his
opinion on it.  UNCONSTRAINED does seem a bit weird.

Maybe the issue is that PV_SHIM_EXCLUSIVE shouldn't have been a
Kconfig option in the first place, and instead a specific Kconfig
config file?

Maybe it's not possible to achieve the same using just a Kconfig
config file.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 15:45:49 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 15:45:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623889.972170 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qw2YD-0002Se-Qs; Thu, 26 Oct 2023 15:45:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623889.972170; Thu, 26 Oct 2023 15: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 1qw2YD-0002SX-NS; Thu, 26 Oct 2023 15:45:37 +0000
Received: by outflank-mailman (input) for mailman id 623889;
 Thu, 26 Oct 2023 15: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=jpsH=GI=casper.srs.infradead.org=BATV+1fb9ca25523a2d41ea1b+7368+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qw2YB-0002SR-Ip
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 15:45:36 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id b308f387-7416-11ee-98d5-6d05b1d4d9a1;
 Thu, 26 Oct 2023 17:45:34 +0200 (CEST)
Received: from [2001:8b0:10b:5:a059:f7a9:933a:2236]
 (helo=u3832b3a9db3152.ant.amazon.com)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qw2Xy-00Fr28-EJ; Thu, 26 Oct 2023 15:45: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: b308f387-7416-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=MIME-Version:Content-Type:References:
	In-Reply-To:Date:Cc:To:From:Subject:Message-ID:Sender:Reply-To:
	Content-Transfer-Encoding:Content-ID:Content-Description;
	bh=Ob0ALOUwSkJvsjeQfue3SPsi0uVS5RJlogWBcJc0i5s=; b=qXgzwVZjUtJJqHdt99B24lZjvL
	XiF3KdbkDbgiuPhhp6vPKHcr9tSrKEZiQjvXWVYxuxYiQZNNqFbAdygBJ3ZhERmNHzW1hzwviV5BS
	lUOp/dRYCpKzHcc3E1bj0FkCYtbIc9tprbcllMVNaKsRCiUDCLNtp9d77GKqohJ2SSvo7KBzv7z3T
	QL2drCJd3Sc3XFfNR55bbvSDovcuUDe8CA/7yLHtLRnwCeJiHcc1sacF7SkY7qM4b3Oeki2EWMeOZ
	ohoBaWDF9s8SnvItdBEJyzpLA63Vac1gRuTeuCuGC+T3rzaJTezkWeB2ZloJik/dEHRU4MjyZx/av
	b638CH0A==;
Message-ID: <9d7d7fc988fa06d77cb1eca739f82063608dfda6.camel@infradead.org>
Subject: Re: [QEMU][PATCHv2 1/8] xen: when unplugging emulated devices skip
 virtio devices
From: David Woodhouse <dwmw2@infradead.org>
To: Stefano Stabellini <sstabellini@kernel.org>
Cc: Vikram Garhwal <vikram.garhwal@amd.com>, qemu-devel@nongnu.org, 
	jgross@suse.com, Anthony Perard <anthony.perard@citrix.com>, Paul Durrant
	 <paul@xen.org>, Paolo Bonzini <pbonzini@redhat.com>, Richard Henderson
	 <richard.henderson@linaro.org>, Eduardo Habkost <eduardo@habkost.net>, 
	"Michael S. Tsirkin"
	 <mst@redhat.com>, Marcel Apfelbaum <marcel.apfelbaum@gmail.com>, "open
	list:X86 Xen CPUs" <xen-devel@lists.xenproject.org>
Date: Thu, 26 Oct 2023 16:45:21 +0100
In-Reply-To: <alpine.DEB.2.22.394.2310251820510.271731@ubuntu-linux-20-04-desktop>
References: <20231025212422.30371-1-vikram.garhwal@amd.com>
	 <20231025212422.30371-2-vikram.garhwal@amd.com>
	 <f8d6eaf9b5f57184a5f6ec5b6103189b77364e3a.camel@infradead.org>
	 <alpine.DEB.2.22.394.2310251820510.271731@ubuntu-linux-20-04-desktop>
Content-Type: multipart/signed; micalg="sha-256"; protocol="application/pkcs7-signature";
	boundary="=-Zh8xFnrlW+/8oWRYErtc"
User-Agent: Evolution 3.44.4-0ubuntu2 
MIME-Version: 1.0
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html


--=-Zh8xFnrlW+/8oWRYErtc
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Wed, 2023-10-25 at 18:23 -0700, Stefano Stabellini wrote:
> On Thu, 26 Oct 2023, David Woodhouse wrote:
> > On Wed, 2023-10-25 at 14:24 -0700, Vikram Garhwal wrote:
> > > From: Juergen Gross <jgross@suse.com>
> > >=20
> > > Virtio devices should never be unplugged at boot time, as they are
> > > similar to pci passthrough devices.
> > >=20
> > > Signed-off-by: Juergen Gross <jgross@suse.com>
> > > Signed-off-by: Vikram Garhwal <vikram.garhwal@amd.com>
> >=20
> > Hm, do your virtio NICs still actually *work* after that? Or are they
> > all disconnected from their netdev peers?=20
> >=20
> > I suspect you're going to want a variant of
> > https://lore.kernel.org/qemu-devel/20231025145042.627381-19-dwmw2@infra=
dead.org/T/#u
> > which also leave the peers of your virtio devices intact?
>=20
> Hi David, device unplug is an x86-only thing (see the definition of
> xen_emul_unplug in Linux under arch/x86/xen/platform-pci-unplug.c) I
> suspect Vikram who is working on ARM hasn't tested it.

Ah, I had assumed there was something else coming along later which
would make it actually get used.=20

> Vikram, a simple option is to drop this patch if you don't need it.

That works. Although I may revive it in that case.=20


--=-Zh8xFnrlW+/8oWRYErtc
Content-Type: application/pkcs7-signature; name="smime.p7s"
Content-Disposition: attachment; filename="smime.p7s"
Content-Transfer-Encoding: base64

MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgEFADCABgkqhkiG9w0BBwEAAKCCEkQw
ggYQMIID+KADAgECAhBNlCwQ1DvglAnFgS06KwZPMA0GCSqGSIb3DQEBDAUAMIGIMQswCQYDVQQG
EwJVUzETMBEGA1UECBMKTmV3IEplcnNleTEUMBIGA1UEBxMLSmVyc2V5IENpdHkxHjAcBgNVBAoT
FVRoZSBVU0VSVFJVU1QgTmV0d29yazEuMCwGA1UEAxMlVVNFUlRydXN0IFJTQSBDZXJ0aWZpY2F0
aW9uIEF1dGhvcml0eTAeFw0xODExMDIwMDAwMDBaFw0zMDEyMzEyMzU5NTlaMIGWMQswCQYDVQQG
EwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYD
VQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50
aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC
AQEAyjztlApB/975Rrno1jvm2pK/KxBOqhq8gr2+JhwpKirSzZxQgT9tlC7zl6hn1fXjSo5MqXUf
ItMltrMaXqcESJuK8dtK56NCSrq4iDKaKq9NxOXFmqXX2zN8HHGjQ2b2Xv0v1L5Nk1MQPKA19xeW
QcpGEGFUUd0kN+oHox+L9aV1rjfNiCj3bJk6kJaOPabPi2503nn/ITX5e8WfPnGw4VuZ79Khj1YB
rf24k5Ee1sLTHsLtpiK9OjG4iQRBdq6Z/TlVx/hGAez5h36bBJMxqdHLpdwIUkTqT8se3ed0PewD
ch/8kHPo5fZl5u1B0ecpq/sDN/5sCG52Ds+QU5O5EwIDAQABo4IBZDCCAWAwHwYDVR0jBBgwFoAU
U3m/WqorSs9UgOHYm8Cd8rIDZsswHQYDVR0OBBYEFAnA8vwL2pTbX/4r36iZQs/J4K0AMA4GA1Ud
DwEB/wQEAwIBhjASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEF
BQcDBDARBgNVHSAECjAIMAYGBFUdIAAwUAYDVR0fBEkwRzBFoEOgQYY/aHR0cDovL2NybC51c2Vy
dHJ1c3QuY29tL1VTRVJUcnVzdFJTQUNlcnRpZmljYXRpb25BdXRob3JpdHkuY3JsMHYGCCsGAQUF
BwEBBGowaDA/BggrBgEFBQcwAoYzaHR0cDovL2NydC51c2VydHJ1c3QuY29tL1VTRVJUcnVzdFJT
QUFkZFRydXN0Q0EuY3J0MCUGCCsGAQUFBzABhhlodHRwOi8vb2NzcC51c2VydHJ1c3QuY29tMA0G
CSqGSIb3DQEBDAUAA4ICAQBBRHUAqznCFfXejpVtMnFojADdF9d6HBA4kMjjsb0XMZHztuOCtKF+
xswhh2GqkW5JQrM8zVlU+A2VP72Ky2nlRA1GwmIPgou74TZ/XTarHG8zdMSgaDrkVYzz1g3nIVO9
IHk96VwsacIvBF8JfqIs+8aWH2PfSUrNxP6Ys7U0sZYx4rXD6+cqFq/ZW5BUfClN/rhk2ddQXyn7
kkmka2RQb9d90nmNHdgKrwfQ49mQ2hWQNDkJJIXwKjYA6VUR/fZUFeCUisdDe/0ABLTI+jheXUV1
eoYV7lNwNBKpeHdNuO6Aacb533JlfeUHxvBz9OfYWUiXu09sMAviM11Q0DuMZ5760CdO2VnpsXP4
KxaYIhvqPqUMWqRdWyn7crItNkZeroXaecG03i3mM7dkiPaCkgocBg0EBYsbZDZ8bsG3a08LwEsL
1Ygz3SBsyECa0waq4hOf/Z85F2w2ZpXfP+w8q4ifwO90SGZZV+HR/Jh6rEaVPDRF/CEGVqR1hiuQ
OZ1YL5ezMTX0ZSLwrymUE0pwi/KDaiYB15uswgeIAcA6JzPFf9pLkAFFWs1QNyN++niFhsM47qod
x/PL+5jR87myx5uYdBEQkkDc+lKB1Wct6ucXqm2EmsaQ0M95QjTmy+rDWjkDYdw3Ms6mSWE3Bn7i
5ZgtwCLXgAIe5W8mybM2JzCCBhQwggT8oAMCAQICEQDGvhmWZ0DEAx0oURL6O6l+MA0GCSqGSIb3
DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYD
VQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28g
UlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMB4XDTIyMDEwNzAw
MDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJARYTZHdtdzJAaW5mcmFkZWFkLm9y
ZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3GpC2bomUqk+91wLYBzDMcCj5C9m6
oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZHh7htyAkWYVoFsFPrwHounto8xTsy
SSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT9YgcBqKCo65pTFmOnR/VVbjJk4K2
xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNjP+qDrh0db7PAjO1D4d5ftfrsf+kd
RR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy2U+eITZ5LLE5s45mX2oPFknWqxBo
bQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3BgBEmfsYWlBXO8rVXfvPgLs32VdV
NZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/7auNVRmPB3v5SWEsH8xi4Bez2V9U
KxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmdlFYhAflWKQ03Ufiu8t3iBE3VJbc2
5oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9aelIl6vtbhMA+l0nfrsORMa4kobqQ5
C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMBAAGjggHMMIIByDAfBgNVHSMEGDAW
gBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeDMcimo0oz8o1R1Nver3ZVpSkwDgYD
VR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYwFAYIKwYBBQUHAwQGCCsGAQUFBwMC
MEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYBBQUHAgEWF2h0dHBzOi8vc2VjdGln
by5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9jcmwuc2VjdGlnby5jb20vU2VjdGln
b1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1haWxDQS5jcmwwgYoGCCsGAQUFBwEB
BH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdvLmNvbS9TZWN0aWdvUlNBQ2xpZW50
QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAjBggrBgEFBQcwAYYXaHR0cDovL29j
c3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5mcmFkZWFkLm9yZzANBgkqhkiG9w0B
AQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQvQ/fzPXmtR9t54rpmI2TfyvcKgOXp
qa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvIlSPrzIB4Z2wyIGQpaPLlYflrrVFK
v9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9ChWFfgSXvrWDZspnU3Gjw/rMHrGnql
Htlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0whpBtXdyDjzBtQTaZJ7zTT/vlehc/
tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9IzCCBhQwggT8oAMCAQICEQDGvhmW
Z0DEAx0oURL6O6l+MA0GCSqGSIb3DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3Jl
YXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0
ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJl
IEVtYWlsIENBMB4XDTIyMDEwNzAwMDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJ
ARYTZHdtdzJAaW5mcmFkZWFkLm9yZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3
GpC2bomUqk+91wLYBzDMcCj5C9m6oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZH
h7htyAkWYVoFsFPrwHounto8xTsySSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT
9YgcBqKCo65pTFmOnR/VVbjJk4K2xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNj
P+qDrh0db7PAjO1D4d5ftfrsf+kdRR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy
2U+eITZ5LLE5s45mX2oPFknWqxBobQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3
BgBEmfsYWlBXO8rVXfvPgLs32VdVNZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/
7auNVRmPB3v5SWEsH8xi4Bez2V9UKxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmd
lFYhAflWKQ03Ufiu8t3iBE3VJbc25oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9ae
lIl6vtbhMA+l0nfrsORMa4kobqQ5C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMB
AAGjggHMMIIByDAfBgNVHSMEGDAWgBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeD
Mcimo0oz8o1R1Nver3ZVpSkwDgYDVR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYw
FAYIKwYBBQUHAwQGCCsGAQUFBwMCMEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYB
BQUHAgEWF2h0dHBzOi8vc2VjdGlnby5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9j
cmwuc2VjdGlnby5jb20vU2VjdGlnb1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1h
aWxDQS5jcmwwgYoGCCsGAQUFBwEBBH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdv
LmNvbS9TZWN0aWdvUlNBQ2xpZW50QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAj
BggrBgEFBQcwAYYXaHR0cDovL29jc3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5m
cmFkZWFkLm9yZzANBgkqhkiG9w0BAQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQv
Q/fzPXmtR9t54rpmI2TfyvcKgOXpqa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvI
lSPrzIB4Z2wyIGQpaPLlYflrrVFKv9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9Ch
WFfgSXvrWDZspnU3Gjw/rMHrGnqlHtlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0w
hpBtXdyDjzBtQTaZJ7zTT/vlehc/tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9
IzGCBMcwggTDAgEBMIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVz
dGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMT
NVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEA
xr4ZlmdAxAMdKFES+jupfjANBglghkgBZQMEAgEFAKCCAeswGAYJKoZIhvcNAQkDMQsGCSqGSIb3
DQEHATAcBgkqhkiG9w0BCQUxDxcNMjMxMDI2MTU0NTIxWjAvBgkqhkiG9w0BCQQxIgQg/a6gD3oR
29Ahlk3/f12OTgIuysJqEFXO64fwatk1Yxkwgb0GCSsGAQQBgjcQBDGBrzCBrDCBljELMAkGA1UE
BhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEYMBYG
A1UEChMPU2VjdGlnbyBMaW1pdGVkMT4wPAYDVQQDEzVTZWN0aWdvIFJTQSBDbGllbnQgQXV0aGVu
dGljYXRpb24gYW5kIFNlY3VyZSBFbWFpbCBDQQIRAMa+GZZnQMQDHShREvo7qX4wgb8GCyqGSIb3
DQEJEAILMYGvoIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVy
MRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNl
Y3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEAxr4Z
lmdAxAMdKFES+jupfjANBgkqhkiG9w0BAQEFAASCAgB1yYY0fHZ46Wo1+kUOAntA1QkcsOqKJb28
P/v8wkSIndIvbM+gdOJv9ebbM6ugF49+AFuAOxhhImLlhgKNsg74h/49ixHLlhZCts0Mcg/dwLdb
Xeu9p57Bydyr8jxQuINLDBybcOS6hiBkR9fWwV5FoJRKOQrCumTPcXtDMzC2hgqe0Uh7gvqPUh8h
UeT/r3RsCoTuZRp/Os4sHQbvmWyuKHZlc6DnLSqQxKDpM0cxSQB2Hvakhlzx4QP4+V67NA/HxPbk
XJkAAj4dCw5J8ExHXr3IdKmTvpi3MrFDXrLrLx5gok68EXgcxpsj7sHHu7Q9Fo+Fu+s84b7AGAVk
B9LdOeXoUvEZAhDYwO1Vgx0M4LgvFY/zRZvOXv6eWrFhU3Wy5B3STccsuNkFwkls9+33oU6XekjI
iqJuWrmpvYEmBpr9Igx98jPsbTmIaCWnWHJmRjPSY984P02aRbteljfjc5tb34HiZHyOc+ZT54WI
LWIsf2y1mXIzkusPGFpncJCtKtfwDNR5HGak5rpmbPrX9Wjd8+X7HrQDs0jCtispX2ye95I8s5jh
S8aOyM0jwRrvhwEqUVZUQOAuBhq0aoWm+caRGo6faJUxJVlF0aQtruUb1msVfeLw5n39mavltjow
Xb6MLMpL7se5cDSnwQdW/xX/uWFVqOMNAPQ3vD1KvgAAAAAAAA==


--=-Zh8xFnrlW+/8oWRYErtc--


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 16:26:09 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 16:26:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623916.972196 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qw3BK-0002ew-0X; Thu, 26 Oct 2023 16:26:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623916.972196; Thu, 26 Oct 2023 16: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 1qw3BJ-0002ep-UB; Thu, 26 Oct 2023 16:26:01 +0000
Received: by outflank-mailman (input) for mailman id 623916;
 Thu, 26 Oct 2023 16:26: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=jpsH=GI=casper.srs.infradead.org=BATV+1fb9ca25523a2d41ea1b+7368+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qw3BI-0002ej-K0
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 16:26:00 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 5852e590-741c-11ee-98d5-6d05b1d4d9a1;
 Thu, 26 Oct 2023 18:25:59 +0200 (CEST)
Received: from [2001:8b0:10b:5:a059:f7a9:933a:2236]
 (helo=u3832b3a9db3152.ant.amazon.com)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qw3B1-00G1NV-Az; Thu, 26 Oct 2023 16:25: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: 5852e590-741c-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=MIME-Version:Content-Type:References:
	In-Reply-To:Date:Cc:To:From:Subject:Message-ID:Sender:Reply-To:
	Content-Transfer-Encoding:Content-ID:Content-Description;
	bh=EYNbuIEJkn75aLk2xuAiI/f/kcobzchr1hyKL8PBhMw=; b=fL3aFzO97U7E4AIrmPh+wLjq1X
	D14kLIKP0XR29ME9BwAh3gbbR71u99d7kImVXDTWNebVDTfS6gl1k22hegCfEsiV2EYuyOfqQuVAA
	xO2aE7yu8Rvu+2hgGCZR8Y5x8M/8UYdpBzIJSeJCAtJngA7qBzaOiunU/Wp/hRPvXjUiF14zD9yyw
	qj6hOR1H7SvGc8SlzwTM338Tu4gyWDx+48XZyTTbcfuHnjBDB72LbkfCwCNvSJsCXeI7ZUqaanUh/
	YUXJT6ihPeIoWNCZ6PAdSAK7o4Dhw8ucKzhvQBjkyqBksHYr2bAyMl16VRDAFkdkBau1kZsfJRBJj
	0TORTAgQ==;
Message-ID: <7ff6cd4ffe20b54dfb6b5b527d3a85ff3870df55.camel@infradead.org>
Subject: Re: [PATCH v3 28/28] docs: update Xen-on-KVM documentation
From: David Woodhouse <dwmw2@infradead.org>
To: Kevin Wolf <kwolf@redhat.com>, Andrew Cooper <andrew.cooper3@citrix.com>
Cc: Eric Blake <eblake@redhat.com>, qemu-devel@nongnu.org, Hanna Reitz
 <hreitz@redhat.com>, Stefano Stabellini <sstabellini@kernel.org>, Anthony
 Perard <anthony.perard@citrix.com>, Paul Durrant <paul@xen.org>, 
 =?ISO-8859-1?Q?Marc-Andr=E9?= Lureau <marcandre.lureau@redhat.com>, Paolo
 Bonzini <pbonzini@redhat.com>, "Michael S. Tsirkin" <mst@redhat.com>,
 Marcel Apfelbaum <marcel.apfelbaum@gmail.com>, Richard Henderson
 <richard.henderson@linaro.org>, Eduardo Habkost <eduardo@habkost.net>,
 Jason Wang <jasowang@redhat.com>, Marcelo Tosatti <mtosatti@redhat.com>,
 qemu-block@nongnu.org,  xen-devel@lists.xenproject.org,
 kvm@vger.kernel.org, Bernhard Beschow <shentey@gmail.com>, Joel Upham
 <jupham125@gmail.com>
Date: Thu, 26 Oct 2023 17:25:42 +0100
In-Reply-To: <dfed5bba4882921b2c0fe685c9be4444d7e4bd45.camel@infradead.org>
References: <20231025145042.627381-1-dwmw2@infradead.org>
	 <20231025145042.627381-29-dwmw2@infradead.org>
	 <6vbpkrebc7fpypbv2t7jbs7m3suxwbqqykeomzfxpenjj2sogd@rphcppcl4inl>
	 <4a10a50e5469480a82cb993dedbff10c3d777082.camel@infradead.org>
	 <21e8a265-bf5a-464c-86bc-f0fd7b5eb108@citrix.com>
	 <ZToizYcPjO0Zt52N@redhat.com>
	 <dfed5bba4882921b2c0fe685c9be4444d7e4bd45.camel@infradead.org>
Content-Type: multipart/signed; micalg="sha-256"; protocol="application/pkcs7-signature";
	boundary="=-SDhuVhGhHCc68PSQ+PYZ"
User-Agent: Evolution 3.44.4-0ubuntu2 
MIME-Version: 1.0
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html


--=-SDhuVhGhHCc68PSQ+PYZ
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Thu, 2023-10-26 at 10:25 +0100, David Woodhouse wrote:
>=20
> > So it would have been entirely possible to use -initrd 'bzImage
> > console=3Dhvc0 root=3D/dev/xvda1' if Xen worked like that.
>=20
> Xen does allow that too. I didn't realise our multiboot loader did though=
.
>=20
> So yes, you *can* use=C2=A0 -initrd 'bzImage root=3D/dev/xvda1'.=20
>=20
> And you can even load more than one module, it seems. Separate them by
> commas, so -initrd 'bzImage,initrd.img' should work.
>=20
> You can even do both at the same time. If you have commas on the kernel
> command line, *double* them:
>=20
> =C2=A0-initrd 'bzImage root=3D/dev/xvda earlyprintk=3Dxen,,keep,initrd.im=
g'
>=20
> I'll update the documentation accordingly.

https://git.infradead.org/users/dwmw2/qemu.git/commitdiff/0b13c0ae39b


+Booting Xen PV guests
+---------------------
+
+Booting PV guest kernels is possible by using the Xen PV shim (a version o=
f Xen
+itself, designed to run inside a Xen HVM guest and provide memory manageme=
nt
+services for one guest alone).
+
+The Xen binary is provided as the ``-kernel`` and the guest kernel itself =
(or
+PV Grub image) as the ``-initrd`` image, which actually just means the fir=
st
+multiboot "module". For example:
+
+.. parsed-literal::
+
+  |qemu_system| --accel kvm,xen-version=3D0x40011,kernel-irqchip=3Dsplit \=
\
+       -chardev stdio,id=3Dchar0 -device xen-console,chardev=3Dchar0 \\
+       -display none  -m 1G  -kernel xen -initrd bzImage \\
+       -append "pv-shim console=3Dxen,pv -- console=3Dhvc0 root=3D/dev/xvd=
a1" \\
+       -drive file=3D${GUEST_IMAGE},if=3Dxen
+
+The Xen image must be built with the ``CONFIG_XEN_GUEST`` and ``CONFIG_PV_=
SHIM``
+options, and as of Xen 4.17, Xen's PV shim mode does not support using a s=
erial
+port; it must have a Xen console or it will panic.
+
+The example above provides the guest kernel command line after a separator
+(" ``--`` ") on the Xen command line, and does not provide the guest kerne=
l
+with an actual initramfs, which would need to listed as a second multiboot
+module. For more complicated alternatives, see the
+:ref:`documentation <initrd-reference-label>` for the ``-initrd`` option.
+


I also fixed up the -initrd documentation so that it actually mentions
how to quote commas, using a Xen PV launch as an example:

 ``-initrd "file1 arg=3Dfoo,file2"``
     This syntax is only available with multiboot.
=20
-    Use file1 and file2 as modules and pass arg=3Dfoo as parameter to the
-    first module.
+    Use file1 and file2 as modules and pass ``arg=3Dfoo`` as parameter to =
the
+    first module. Commas can be provided in module parameters by doubling
+    them on the command line to escape them:
+
+``-initrd "bzImage earlyprintk=3Dxen,,keep root=3D/dev/xvda1,initrd.img"``
+    Multiboot only. Use bzImage as the first module with
+    "``earlyprintk=3Dxen,keep root=3D/dev/xvda1``" as its command line,
+    and initrd.img as the second module.

--=-SDhuVhGhHCc68PSQ+PYZ
Content-Type: application/pkcs7-signature; name="smime.p7s"
Content-Disposition: attachment; filename="smime.p7s"
Content-Transfer-Encoding: base64

MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgEFADCABgkqhkiG9w0BBwEAAKCCEkQw
ggYQMIID+KADAgECAhBNlCwQ1DvglAnFgS06KwZPMA0GCSqGSIb3DQEBDAUAMIGIMQswCQYDVQQG
EwJVUzETMBEGA1UECBMKTmV3IEplcnNleTEUMBIGA1UEBxMLSmVyc2V5IENpdHkxHjAcBgNVBAoT
FVRoZSBVU0VSVFJVU1QgTmV0d29yazEuMCwGA1UEAxMlVVNFUlRydXN0IFJTQSBDZXJ0aWZpY2F0
aW9uIEF1dGhvcml0eTAeFw0xODExMDIwMDAwMDBaFw0zMDEyMzEyMzU5NTlaMIGWMQswCQYDVQQG
EwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYD
VQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50
aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC
AQEAyjztlApB/975Rrno1jvm2pK/KxBOqhq8gr2+JhwpKirSzZxQgT9tlC7zl6hn1fXjSo5MqXUf
ItMltrMaXqcESJuK8dtK56NCSrq4iDKaKq9NxOXFmqXX2zN8HHGjQ2b2Xv0v1L5Nk1MQPKA19xeW
QcpGEGFUUd0kN+oHox+L9aV1rjfNiCj3bJk6kJaOPabPi2503nn/ITX5e8WfPnGw4VuZ79Khj1YB
rf24k5Ee1sLTHsLtpiK9OjG4iQRBdq6Z/TlVx/hGAez5h36bBJMxqdHLpdwIUkTqT8se3ed0PewD
ch/8kHPo5fZl5u1B0ecpq/sDN/5sCG52Ds+QU5O5EwIDAQABo4IBZDCCAWAwHwYDVR0jBBgwFoAU
U3m/WqorSs9UgOHYm8Cd8rIDZsswHQYDVR0OBBYEFAnA8vwL2pTbX/4r36iZQs/J4K0AMA4GA1Ud
DwEB/wQEAwIBhjASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEF
BQcDBDARBgNVHSAECjAIMAYGBFUdIAAwUAYDVR0fBEkwRzBFoEOgQYY/aHR0cDovL2NybC51c2Vy
dHJ1c3QuY29tL1VTRVJUcnVzdFJTQUNlcnRpZmljYXRpb25BdXRob3JpdHkuY3JsMHYGCCsGAQUF
BwEBBGowaDA/BggrBgEFBQcwAoYzaHR0cDovL2NydC51c2VydHJ1c3QuY29tL1VTRVJUcnVzdFJT
QUFkZFRydXN0Q0EuY3J0MCUGCCsGAQUFBzABhhlodHRwOi8vb2NzcC51c2VydHJ1c3QuY29tMA0G
CSqGSIb3DQEBDAUAA4ICAQBBRHUAqznCFfXejpVtMnFojADdF9d6HBA4kMjjsb0XMZHztuOCtKF+
xswhh2GqkW5JQrM8zVlU+A2VP72Ky2nlRA1GwmIPgou74TZ/XTarHG8zdMSgaDrkVYzz1g3nIVO9
IHk96VwsacIvBF8JfqIs+8aWH2PfSUrNxP6Ys7U0sZYx4rXD6+cqFq/ZW5BUfClN/rhk2ddQXyn7
kkmka2RQb9d90nmNHdgKrwfQ49mQ2hWQNDkJJIXwKjYA6VUR/fZUFeCUisdDe/0ABLTI+jheXUV1
eoYV7lNwNBKpeHdNuO6Aacb533JlfeUHxvBz9OfYWUiXu09sMAviM11Q0DuMZ5760CdO2VnpsXP4
KxaYIhvqPqUMWqRdWyn7crItNkZeroXaecG03i3mM7dkiPaCkgocBg0EBYsbZDZ8bsG3a08LwEsL
1Ygz3SBsyECa0waq4hOf/Z85F2w2ZpXfP+w8q4ifwO90SGZZV+HR/Jh6rEaVPDRF/CEGVqR1hiuQ
OZ1YL5ezMTX0ZSLwrymUE0pwi/KDaiYB15uswgeIAcA6JzPFf9pLkAFFWs1QNyN++niFhsM47qod
x/PL+5jR87myx5uYdBEQkkDc+lKB1Wct6ucXqm2EmsaQ0M95QjTmy+rDWjkDYdw3Ms6mSWE3Bn7i
5ZgtwCLXgAIe5W8mybM2JzCCBhQwggT8oAMCAQICEQDGvhmWZ0DEAx0oURL6O6l+MA0GCSqGSIb3
DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYD
VQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28g
UlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMB4XDTIyMDEwNzAw
MDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJARYTZHdtdzJAaW5mcmFkZWFkLm9y
ZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3GpC2bomUqk+91wLYBzDMcCj5C9m6
oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZHh7htyAkWYVoFsFPrwHounto8xTsy
SSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT9YgcBqKCo65pTFmOnR/VVbjJk4K2
xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNjP+qDrh0db7PAjO1D4d5ftfrsf+kd
RR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy2U+eITZ5LLE5s45mX2oPFknWqxBo
bQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3BgBEmfsYWlBXO8rVXfvPgLs32VdV
NZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/7auNVRmPB3v5SWEsH8xi4Bez2V9U
KxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmdlFYhAflWKQ03Ufiu8t3iBE3VJbc2
5oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9aelIl6vtbhMA+l0nfrsORMa4kobqQ5
C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMBAAGjggHMMIIByDAfBgNVHSMEGDAW
gBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeDMcimo0oz8o1R1Nver3ZVpSkwDgYD
VR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYwFAYIKwYBBQUHAwQGCCsGAQUFBwMC
MEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYBBQUHAgEWF2h0dHBzOi8vc2VjdGln
by5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9jcmwuc2VjdGlnby5jb20vU2VjdGln
b1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1haWxDQS5jcmwwgYoGCCsGAQUFBwEB
BH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdvLmNvbS9TZWN0aWdvUlNBQ2xpZW50
QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAjBggrBgEFBQcwAYYXaHR0cDovL29j
c3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5mcmFkZWFkLm9yZzANBgkqhkiG9w0B
AQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQvQ/fzPXmtR9t54rpmI2TfyvcKgOXp
qa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvIlSPrzIB4Z2wyIGQpaPLlYflrrVFK
v9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9ChWFfgSXvrWDZspnU3Gjw/rMHrGnql
Htlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0whpBtXdyDjzBtQTaZJ7zTT/vlehc/
tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9IzCCBhQwggT8oAMCAQICEQDGvhmW
Z0DEAx0oURL6O6l+MA0GCSqGSIb3DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3Jl
YXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0
ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJl
IEVtYWlsIENBMB4XDTIyMDEwNzAwMDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJ
ARYTZHdtdzJAaW5mcmFkZWFkLm9yZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3
GpC2bomUqk+91wLYBzDMcCj5C9m6oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZH
h7htyAkWYVoFsFPrwHounto8xTsySSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT
9YgcBqKCo65pTFmOnR/VVbjJk4K2xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNj
P+qDrh0db7PAjO1D4d5ftfrsf+kdRR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy
2U+eITZ5LLE5s45mX2oPFknWqxBobQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3
BgBEmfsYWlBXO8rVXfvPgLs32VdVNZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/
7auNVRmPB3v5SWEsH8xi4Bez2V9UKxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmd
lFYhAflWKQ03Ufiu8t3iBE3VJbc25oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9ae
lIl6vtbhMA+l0nfrsORMa4kobqQ5C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMB
AAGjggHMMIIByDAfBgNVHSMEGDAWgBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeD
Mcimo0oz8o1R1Nver3ZVpSkwDgYDVR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYw
FAYIKwYBBQUHAwQGCCsGAQUFBwMCMEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYB
BQUHAgEWF2h0dHBzOi8vc2VjdGlnby5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9j
cmwuc2VjdGlnby5jb20vU2VjdGlnb1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1h
aWxDQS5jcmwwgYoGCCsGAQUFBwEBBH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdv
LmNvbS9TZWN0aWdvUlNBQ2xpZW50QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAj
BggrBgEFBQcwAYYXaHR0cDovL29jc3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5m
cmFkZWFkLm9yZzANBgkqhkiG9w0BAQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQv
Q/fzPXmtR9t54rpmI2TfyvcKgOXpqa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvI
lSPrzIB4Z2wyIGQpaPLlYflrrVFKv9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9Ch
WFfgSXvrWDZspnU3Gjw/rMHrGnqlHtlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0w
hpBtXdyDjzBtQTaZJ7zTT/vlehc/tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9
IzGCBMcwggTDAgEBMIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVz
dGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMT
NVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEA
xr4ZlmdAxAMdKFES+jupfjANBglghkgBZQMEAgEFAKCCAeswGAYJKoZIhvcNAQkDMQsGCSqGSIb3
DQEHATAcBgkqhkiG9w0BCQUxDxcNMjMxMDI2MTYyNTQyWjAvBgkqhkiG9w0BCQQxIgQgDqokiZKw
N4muR7dfd2094dEEoppnw0Krjpb2+JU9UJswgb0GCSsGAQQBgjcQBDGBrzCBrDCBljELMAkGA1UE
BhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEYMBYG
A1UEChMPU2VjdGlnbyBMaW1pdGVkMT4wPAYDVQQDEzVTZWN0aWdvIFJTQSBDbGllbnQgQXV0aGVu
dGljYXRpb24gYW5kIFNlY3VyZSBFbWFpbCBDQQIRAMa+GZZnQMQDHShREvo7qX4wgb8GCyqGSIb3
DQEJEAILMYGvoIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVy
MRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNl
Y3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEAxr4Z
lmdAxAMdKFES+jupfjANBgkqhkiG9w0BAQEFAASCAgCjqEORMAUbecSHJiVb61/NcY/ZnqeUT/16
/9R7HFXGKtrHT3UWVkLKBFfA7KBHT/eDAiPAQIzKKs9bgAJl2/lvOx2+3YLbpikgBjELxze8kUY7
cstlKY46HCa3qVfUEF+jKai06qs3+ivjRVzLnyOCKV4o+wLYCdecG8jC2XhRvz8JAyMSsUFdQXsU
4h2jqsS00WXLSNzUL0wgNk1DOPOYOb34JguQ1ANhrKYkZto2RPBn0irCrhYlLtnE4eJtFfUDfZmN
RRICcKvzmpQyWMDNP0HdmfZUGKsQG7vLOVsjN8PEGQ+R7Bkll3WKX4gaRvaU8boP1qo8Nwh8ZaEm
WKRjC9qq6nBhnHB2tDSNnQKWC1qnCdO0h8hKOL/h0a4ozVhHdXdHCe+cwgBfnvG6EK+A6do2yLuG
FWrapTAadidSmZtezCEyRS7x6DhlGxgvMeOP1fe0BTUasjK8+YnO5WjKn2mAw1IC971vtcJ22lEb
Y6KyjEMvU0rwSkhJXER3CK9bKvkuR2YIJGedAN1gSrZCNzdK+xKSARntKEtZLW8P48DafTsKOYGX
y2ua+qGY9E/1S7XIPenAnVjgO+iAmEg3Jh9xnjjSao5etGhYpGMAzXqJjayZOKN1tr5l+aGWg4TW
RV3YDXlhU8v3/97OLtFT6ISDScXygtNe0ArjaTdZogAAAAAAAA==


--=-SDhuVhGhHCc68PSQ+PYZ--


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 16:40:10 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 16:40:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623923.972205 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qw3Os-0005MO-B9; Thu, 26 Oct 2023 16:40:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623923.972205; Thu, 26 Oct 2023 16:40: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 1qw3Os-0005MH-8U; Thu, 26 Oct 2023 16:40:02 +0000
Received: by outflank-mailman (input) for mailman id 623923;
 Thu, 26 Oct 2023 16:40: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=ivkI=GI=cloud.com=edwin.torok@srs-se1.protection.inumbo.net>)
 id 1qw3Or-0005Bw-NC
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 16:40:01 +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 4d4d5fbb-741e-11ee-9b0e-b553b5be7939;
 Thu, 26 Oct 2023 18:39:59 +0200 (CEST)
Received: by mail-wr1-x435.google.com with SMTP id
 ffacd0b85a97d-32d9d8284abso723809f8f.3
 for <xen-devel@lists.xenproject.org>; Thu, 26 Oct 2023 09:39:59 -0700 (PDT)
Received: from smtpclient.apple ([90.243.16.33])
 by smtp.gmail.com with ESMTPSA id
 f10-20020adff98a000000b0031aef72a021sm14585350wrr.86.2023.10.26.09.39.58
 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128);
 Thu, 26 Oct 2023 09:39: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: 4d4d5fbb-741e-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1698338398; x=1698943198; darn=lists.xenproject.org;
        h=to:references:message-id:content-transfer-encoding:cc:date
         :in-reply-to:from:subject:mime-version:from:to:cc:subject:date
         :message-id:reply-to;
        bh=drlToy5+TZ/eRuyjCCtF8OaHAbSMAdWdSJdcchEbaEg=;
        b=H5g1l2DqaCTpanmsq0lEdmfAVMMHwClrh8Owaslplcc6YR9VgwAgsQ44jtdxjlNJ9+
         65KHMr0SDXmLJniFcbN9rZr16xAWlU5FGHZ+iwYPOAv6Rn/qrQ1PwNRIuRYdoEEOFF+8
         +qPcdl1guPUJsEMCjoXiXtEQwVhjLowIAYGz4=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698338398; x=1698943198;
        h=to:references:message-id:content-transfer-encoding:cc:date
         :in-reply-to:from:subject:mime-version:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=drlToy5+TZ/eRuyjCCtF8OaHAbSMAdWdSJdcchEbaEg=;
        b=mtHcxyQjD/j4HXEbpLa4RM3232ul+OGlCPDdJ3IzjFxh1FO3ARUCUbfWfaL2TBsCzd
         JRAVTKsRSzSy2wlsAMDpvmJmY4/6IILqKXxT/7RODauvDdmnPQCioS1BIbWAZ2+VMhWG
         JqnD7GAy68YYFeWBG3yD0ktqhpw5fMQAxXigQegX4rSuB1ACShj20SL9ukaoQKPAkrOv
         igRem5fqocmZus0lq+9fEOA1QYZAkgPIQb2BObNsVUEo1ny42MhA1mAT/TJuTjPuJ1s2
         ENamjX5/4ho7Kt1R/dCbqRkXUzd2npO+Tez95DcUtQ5z5lpq/xqojxtA9yu5oW+2ptDU
         SGGg==
X-Gm-Message-State: AOJu0YwOv4yBqGv9kNALWVChA8iBhsZ5tpsdwjo8XYLU3fcxEXQyTRdz
	MFhQbPWmfTLRxcYGFFM8dUHlAg==
X-Google-Smtp-Source: AGHT+IE/6QZbg3rbvNfECaycIqqkMZ9NzyQoROMR+oLiPwkQHxRF8llZff9gKboDOMynulqWAhsGVg==
X-Received: by 2002:adf:f0c4:0:b0:329:6b5b:57b8 with SMTP id x4-20020adff0c4000000b003296b5b57b8mr131444wro.25.1698338398466;
        Thu, 26 Oct 2023 09:39:58 -0700 (PDT)
Content-Type: text/plain;
	charset=utf-8
Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3774.100.2.1.4\))
Subject: Re: [RFC PATCH 22/22] x86/AMD: add IRPerf support
From: Edwin Torok <edwin.torok@cloud.com>
In-Reply-To: <20d0e946-f156-4472-a253-7517e831f44d@citrix.com>
Date: Thu, 26 Oct 2023 17:39:47 +0100
Cc: Xen-devel <xen-devel@lists.xenproject.org>,
 =?utf-8?B?RWR3aW4gVMO2csO2aw==?= <edvin.torok@citrix.com>,
 Jan Beulich <jbeulich@suse.com>,
 =?utf-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>,
 Wei Liu <wl@xen.org>
Content-Transfer-Encoding: quoted-printable
Message-Id: <A9ACEDF9-0A4B-45D2-90A2-92D9EEB89A9B@cloud.com>
References: <cover.1698261255.git.edwin.torok@cloud.com>
 <6cd765e98fa4888b9e94215f3572a94e95fe2a4b.1698261255.git.edwin.torok@cloud.com>
 <20d0e946-f156-4472-a253-7517e831f44d@citrix.com>
To: Andrew Cooper <Andrew.Cooper3@citrix.com>
X-Mailer: Apple Mail (2.3774.100.2.1.4)



> On 25 Oct 2023, at 21:59, Andrew Cooper <Andrew.Cooper3@citrix.com> =
wrote:
>=20
> On 25/10/2023 8:29 pm, Edwin T=C3=B6r=C3=B6k wrote:
>> diff --git a/xen/arch/x86/msr.c b/xen/arch/x86/msr.c
>> index 483b5e4f70..b3cd851d9d 100644
>> --- a/xen/arch/x86/msr.c
>> +++ b/xen/arch/x86/msr.c
>> @@ -584,6 +584,13 @@ int guest_wrmsr(struct vcpu *v, uint32_t msr, =
uint64_t val)
>>         }
>>         break;
>>=20
>> +    case MSR_K8_HWCR:
>> +        if ( !(cp->x86_vendor & X86_VENDOR_AMD) ||
>> +             (val & ~K8_HWCR_IRPERF_EN) ||
>> +             wrmsr_safe(msr, val) !=3D 0 )
>> +            goto gp_fault;
>> +        break;
>> +
>>     case MSR_AMD64_DE_CFG:
>>         /*
>>          * OpenBSD 6.7 will panic if writing to DE_CFG triggers a =
#GP:
>> diff --git a/xen/include/public/arch-x86/cpufeatureset.h =
b/xen/include/public/arch-x86/cpufeatureset.h
>> index 5faca0bf7a..40f74cd5e8 100644
>> --- a/xen/include/public/arch-x86/cpufeatureset.h
>> +++ b/xen/include/public/arch-x86/cpufeatureset.h
>> @@ -241,7 +241,7 @@ XEN_CPUFEATURE(EFRO,          7*32+10) /*   =
APERF/MPERF Read Only interface */
>>=20
>> /* AMD-defined CPU features, CPUID level 0x80000008.ebx, word 8 */
>> XEN_CPUFEATURE(CLZERO,        8*32+ 0) /*A  CLZERO instruction */
>> -XEN_CPUFEATURE(IRPERF,        8*32+ 1) /* Instruction Retired =
Performance Counter */
>> +XEN_CPUFEATURE(IRPERF,        8*32+ 1) /*A! Instruction Retired =
Performance Counter */
>> XEN_CPUFEATURE(RSTR_FP_ERR_PTRS, 8*32+ 2) /*A  (F)X{SAVE,RSTOR} =
always saves/restores FPU Error pointers */
>> XEN_CPUFEATURE(WBNOINVD,      8*32+ 9) /*   WBNOINVD instruction */
>> XEN_CPUFEATURE(IBPB,          8*32+12) /*A  IBPB support only (no =
IBRS, used by AMD) */
>=20
> Last things first.  You can advertise this bit to guests, but I'm
> looking at the AMD manuals and woefully little information on what =
this
> is an how it works.
>=20
> It does have an architectural enumeration, but there isn't even a a
> description of what HWCR.IPERF_EN does.
>=20
> The HWCR documentation says "enables Core::X86::Msr::IRPerfCount", but
> the IRPERF MSR says no such think,

> noting only that EFRO_LOCK makes the
> MSR non-writeable (which in turn means we can't always offer it to
> guests anyway.  See below).

> At a guess, the HWCR bit activates the counter, but nothing states
> this.


My version =
(https://www.amd.com/content/dam/amd/en/documents/processor-tech-docs/prog=
rammer-references/24593.pdf) says:
"This is a dedicated counter that is always counting instructions =
retired. It exists at MSR address C000_00E9. It is enabled by setting a =
1 to HWCR[30] and its support is indicated by CPUID Fn8000_0008_EBX[1]."

Although digging a bit more there are some erratas around deep C states =
on some chips and the HWCR register itself is not global but per CCD =
(which is neatly buried in the _ccd[7:0]_.... smallprint at the top:
https://github.com/cyring/CoreFreq/issues/206#issuecomment-722713147


>   At a guess, it's a free-running, reset-able counter, but again
> nothing states this.  The manual just says "is a dedicated counter" =
and
> doesn't even state whether it is (or is not) tied into the other core
> fixed counters and whether it is integrated with PMI or not.

There is also a LWP 'Instructions Retired' described in 13.4.2.2, which =
is user-mode only and per-core, but I assume that is completely =
different from this MSR
and part of the features that got dropped in newer cores.

>=20
> Which brings us on to the middle hunk.  Putting it there short =
circuits
> the PV-specific handling, but you can't do that in general without
> arranging for HWCR to be context switched properly for vCPUs, nor in
> this case IPERF_COUNT itself.
>=20
> Unless you context switch HWCR and IPERF_COUNT, a guest will see it =
not
> counting, or the count going backwards, 50% of the time as the vCPU is
> scheduled around.
>=20
> So while in principle we could let guests use this facility (it would
> have to be off by default, because there doesn't appear to be any
> filtering capability in it at all, so we can't restrict it to
> instructions retired in guest context), it will need a far larger =
patch
> than this to do it safely.

Thanks, I'll move this patch into the 'needs more work' category.


Thanks,
--Edwin



From xen-devel-bounces@lists.xenproject.org Thu Oct 26 16:49:24 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 16:49:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623928.972216 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qw3Xm-0007Dn-6z; Thu, 26 Oct 2023 16:49:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623928.972216; Thu, 26 Oct 2023 16: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 1qw3Xm-0007Dg-4D; Thu, 26 Oct 2023 16:49:14 +0000
Received: by outflank-mailman (input) for mailman id 623928;
 Thu, 26 Oct 2023 16: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=ivkI=GI=cloud.com=edwin.torok@srs-se1.protection.inumbo.net>)
 id 1qw3Xk-0007DZ-Lr
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 16:49:12 +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 95fa7456-741f-11ee-9b0e-b553b5be7939;
 Thu, 26 Oct 2023 18:49:10 +0200 (CEST)
Received: by mail-wr1-x432.google.com with SMTP id
 ffacd0b85a97d-32d895584f1so775451f8f.1
 for <xen-devel@lists.xenproject.org>; Thu, 26 Oct 2023 09:49:10 -0700 (PDT)
Received: from smtpclient.apple ([90.243.16.33])
 by smtp.gmail.com with ESMTPSA id
 o6-20020a5d62c6000000b0032196c508e3sm14515795wrv.53.2023.10.26.09.49.09
 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128);
 Thu, 26 Oct 2023 09:49: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: 95fa7456-741f-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1698338950; x=1698943750; darn=lists.xenproject.org;
        h=to:references:message-id:content-transfer-encoding:cc:date
         :in-reply-to:from:subject:mime-version:from:to:cc:subject:date
         :message-id:reply-to;
        bh=4K+PQ0ohq0AZfnAUyub1IQxxJDPGgoGmu3D71UDCQpg=;
        b=eyr2zUPQE169uUMHlS9tgnA8cPq/1ab0uqiDNQdmIJUPEO/f67YacqimHMJgVTSVpj
         1IzV07W0YXxp0JPsSqxVcNeIPAyxy493UBMudMIk0waFFmGacSWAKRaQ3Kis1wWHdfxy
         bsVkFMTL5wmqwzqMQHK0Mbpry9OvPR9pzB398=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698338950; x=1698943750;
        h=to:references:message-id:content-transfer-encoding:cc:date
         :in-reply-to:from:subject:mime-version:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=4K+PQ0ohq0AZfnAUyub1IQxxJDPGgoGmu3D71UDCQpg=;
        b=mFRHVUtLQfkDRMrHZDHO2C6kxy8r8tPn4jsWzGOITnMdT5sdol8CEDrr5q5LYcNOn+
         hd5bS/oTIQn4FRac34Xt4drIXCwkhEyOnhJbeMKnAkejna7D2X7K6MjYgKrmwXAIwqlU
         55HW1G7HnfOyt9y96cB9qJ1hHbB26WRKpj7UNeQ32pm3VmYUR7KF2sH2Dvb1YSu+MxxS
         baJlucYxEJXVYqwITUlUPOJLxVhrDt3fwBtGE9Q3/HW1ZK21l98/ORxShHrYssezDp8n
         mOLZ20S/7P8kTkaRmU4pMWPXvWR24XLZKDYdVcVi7hD2WvCQgxYO+FjSFdk47oSW157Q
         0gHw==
X-Gm-Message-State: AOJu0YwdfxEyhBAfNQRFvtxnLqEjJ9yF056pJ1Y1ZLaDB7kk9L8Iui2/
	gD17UNG9D0yTon/lvfX+JNFPJg==
X-Google-Smtp-Source: AGHT+IEYsqQxyG0b3sSgjuFHPwEPzANAW4yhJSFWd+O80OWzHnp8teu3p99VPWK9pseJBNgaZw1CJg==
X-Received: by 2002:adf:ea4e:0:b0:31c:3136:60af with SMTP id j14-20020adfea4e000000b0031c313660afmr137671wrn.61.1698338949928;
        Thu, 26 Oct 2023 09:49:09 -0700 (PDT)
Content-Type: text/plain;
	charset=utf-8
Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3774.100.2.1.4\))
Subject: Re: [RFC PATCH 01/22] x86/msr: MSR_PLATFORM_INFO shouldn't claim that
 turbo is programmable
From: Edwin Torok <edwin.torok@cloud.com>
In-Reply-To: <596186ca-53cb-4ccf-b719-95a587018c38@citrix.com>
Date: Thu, 26 Oct 2023 17:48:58 +0100
Cc: Xen-devel <xen-devel@lists.xenproject.org>,
 =?utf-8?B?RWR3aW4gVMO2csO2aw==?= <edvin.torok@citrix.com>,
 Jan Beulich <jbeulich@suse.com>,
 =?utf-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>,
 Wei Liu <wl@xen.org>
Content-Transfer-Encoding: quoted-printable
Message-Id: <2C040881-8DF0-4CF6-A843-8C1558B5B740@cloud.com>
References: <cover.1698261255.git.edwin.torok@cloud.com>
 <17a99e1da838a2edeeffa5a988e22c6fcb31406b.1698261255.git.edwin.torok@cloud.com>
 <596186ca-53cb-4ccf-b719-95a587018c38@citrix.com>
To: Andrew Cooper <Andrew.Cooper3@citrix.com>
X-Mailer: Apple Mail (2.3774.100.2.1.4)



> On 25 Oct 2023, at 21:33, Andrew Cooper <Andrew.Cooper3@citrix.com> =
wrote:
>=20
> On 25/10/2023 8:29 pm, Edwin T=C3=B6r=C3=B6k wrote:
>> From: Edwin T=C3=B6r=C3=B6k <edvin.torok@citrix.com>
>>=20
>> Xen forbids writes to the various turbo control MSRs, however =
MSR_PLATFORM_INFO claims that these MSRs are writable.
>> Override MSR_PLATFORM_INFO bits to indicate lack of support.
>>=20
>> See Intel SDM Volume 4, 2.17.6 "MSRs Introduced in the Intel Xeon =
Scaslable Processor Family",
>> which describes that MSR_PLATFORM_INFO.[28] =3D 1 implies that =
MSR_TURBO_RATIO_LIMIT is R/W,
>> and similarly bit 29 for TDP control, and bit 30 for =
MSR_TEMPERATURE_TARGET.
>>=20
>> These bits were not all present on earlier processors, however where =
missing the bits were reserved,
>> and when present they are always present in the same bits.
>>=20
>> (Curiously bit 31 that Xen uses is not documented anywhere in this =
manual but a separate one).
>>=20
>> Backport: 4.0+
>>=20
>> Signed-off-by: Edwin T=C3=B6r=C3=B6k <edvin.torok@citrix.com>
>=20
> p->platform_info never has any bit other than cpuid_faulting set in =
it.=20
> We still don't even report the proper raw value, because we don't =
(yet)
> have clean MSR derivation logic.
>=20
> I'm confused as to how you managed to find these set.  Even back in =
Xen
> 4.13, PLATFORM_INFO was covered by the msr_policy (later merged into
> cpu_policy).  Furthermore, even patch 3 oughtn't to have such an =
effect.
>=20
> Sadly, the whole of this MSR is model specific.  Vol4 2.17 is only for
> one SKX/CLX/ICX/SPR.  Technically its wrong to treat the =
cpuid_faulting
> in the way we do, but it is enumerated separately, and we =
intentionally
> don't have an Intel check because we need to emulate CPUID faulting on
> AMD hardware to make PVShim work.
>=20

xen/lib/x86/msr.c:    COPY_MSR(MSR_INTEL_PLATFORM_INFO, =
p->platform_info.raw);

This code made me believe that the underlying MSR value was copied, and =
only specific values from it were overwritten, I didn't spot any =
zeroing.
Although running rdmsr now (on 4.13.5) does show that all the other bits =
are zero, so the zeroing must happen somewhere else in the code, making =
this patch obsolete.
I'll drop it.

Thanks,
--Edwin

> ~Andrew



From xen-devel-bounces@lists.xenproject.org Thu Oct 26 16:56:08 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 16:56:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623932.972226 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qw3eL-0000ay-Sq; Thu, 26 Oct 2023 16:56:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623932.972226; Thu, 26 Oct 2023 16:56: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 1qw3eL-0000ar-PA; Thu, 26 Oct 2023 16:56:01 +0000
Received: by outflank-mailman (input) for mailman id 623932;
 Thu, 26 Oct 2023 16:56: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=jm+b=GI=amd.com=Xenia.Ragiadakou@srs-se1.protection.inumbo.net>)
 id 1qw3eJ-0000ZX-S3
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 16:56:00 +0000
Received: from NAM10-MW2-obe.outbound.protection.outlook.com
 (mail-mw2nam10on20600.outbound.protection.outlook.com
 [2a01:111:f400:7e89::600])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 881781dd-7420-11ee-98d5-6d05b1d4d9a1;
 Thu, 26 Oct 2023 18:55:57 +0200 (CEST)
Received: from BL1P221CA0014.NAMP221.PROD.OUTLOOK.COM (2603:10b6:208:2c5::26)
 by DM4PR12MB6542.namprd12.prod.outlook.com (2603:10b6:8:89::8) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6907.26; Thu, 26 Oct 2023 16:55:53 +0000
Received: from BL6PEPF0001AB52.namprd02.prod.outlook.com
 (2603:10b6:208:2c5:cafe::ab) by BL1P221CA0014.outlook.office365.com
 (2603:10b6:208:2c5::26) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.19 via Frontend
 Transport; Thu, 26 Oct 2023 16:55:53 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 BL6PEPF0001AB52.mail.protection.outlook.com (10.167.241.4) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6933.15 via Frontend Transport; Thu, 26 Oct 2023 16:55:53 +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.32; Thu, 26 Oct
 2023 11:55: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: 881781dd-7420-11ee-98d5-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=dYko6/PgnIvbbRZ8NcRFezpJIsQE7l6tp9JTpas4+Z+nDuxd2KmX6Pxd+nYTM5n9Vfl4YTLN5WWZ7486XvaYZB0fdzeNGeHpdPXiO0tVcKQVLLRhV5cVSIFPJm9x+KOlse94HMe2iGfbZ+G3OLTY98ml+RRE9XUAKh3J7vaklM7R00F0Y0rPCKewJ4wmfTzZsHSs201PZMpIxPb3StVhjFD7vsLc0kDqGvrwgESxEt+Hz9eGpvrQKCsQejuG1gfVjXJKU3Nvx2kGuVnPCCAb94Z1Gc24i5E1jmVJOf4AzzyOZpBGvuxg8YGX7KqHoJnSq9CvC0kQOa5M+onN+WwucQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=DmM4VFXFDvI7vffaTVwp2NFg8lPVjkYqfb5g2Ur4ErA=;
 b=KvXonN9uyCPfD7w2g7AN/ZCOyhomo370Jtww+Vgbb4h7BlaCFlko1j7paxHgJ3UjbS8cnTnxdZNfVhK514lJEyUDJDsugP78u1ovNZGsO4r7OSzyacC1fxMDDAZGmC2doqdvKmQEXVX7FwCJJup2+hSBmdaQZOkpPjuR2N39ux4+Egb4kx8SpfndDm1JB30u4kDNWelTEYJYpnYIt3lfMaA/+z2rIa3dwMuiuxMJZZ2ZFEHbLgQmF4b2m7agl3563zcDFbwtkTjeYHReWXOoUHYFXgIyRRSfOhUk3vlf6odAmFMkJiI7Pvl8q8U/AYCjpmvoayjvRU+YrB4eoimJJg==
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 (0)
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=DmM4VFXFDvI7vffaTVwp2NFg8lPVjkYqfb5g2Ur4ErA=;
 b=LZ8tvn+adkY1Eu9zP+ZfA0O0uuI02qldR1rq38cU12QYp/n1kd76tx0GXAXLC2OKnPlsrpIHo8Zn2AviVNX0NqNrpNse/R2pQ+yF5yfdMe/o8W2U87yC8NtE78vC/kf8lf3KJpeRO8Rog0d8Y/VT3I5AaVjOOcYr1u9a6Fp+7Hk=
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: <217d9079-3072-441a-a4ba-4db28c565bc7@amd.com>
Date: Thu, 26 Oct 2023 19:55:44 +0300
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH] x86/hvm/dom0: fix PVH initrd and metadata placement
Content-Language: en-US
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>, <xen-devel@lists.xenproject.org>
References: <20231026064543.43369-1-xenia.ragiadakou@amd.com>
 <ac7e9bac-6d74-a5bf-d703-3c5455e581ea@suse.com>
 <7712c60b-4f89-483e-89e4-7ac8f4d0311e@amd.com>
 <809115b1-2a47-583f-2d04-72a5a21ee7da@suse.com>
 <c107d63c-25a3-4f17-a5e8-7ec3ccd94ce3@amd.com>
 <c81a8275-ecfd-7598-c119-ed83b156c0e5@suse.com>
 <b5330686-82a0-4d47-9549-2d943ca68c7e@amd.com>
 <1cc98108-3328-94d3-5f8d-ff03c965087e@suse.com>
 <92ba94d2-9e57-4241-8626-33f06f88e726@amd.com>
 <a61926bc-e3e6-e381-45de-be3a4878b6af@suse.com>
From: Xenia Ragiadakou <xenia.ragiadakou@amd.com>
In-Reply-To: <a61926bc-e3e6-e381-45de-be3a4878b6af@suse.com>
Content-Type: text/plain; charset="UTF-8"; format=flowed
Content-Transfer-Encoding: 7bit
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: BL6PEPF0001AB52:EE_|DM4PR12MB6542:EE_
X-MS-Office365-Filtering-Correlation-Id: 2cb8e0d1-908c-4741-1e54-08dbd6446a39
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	r4V+q5Z175YBmc3fJCDBaRKscWEmp3WZgptrFqTXmUkUe+4Ju7BIJfPtp66XuYeI5VIw67qE4l3WrPL2BQLLYzT87NNCcDOa7HUVSdAmrgwe94yuYQkgmUzEKwqHtlxo5txpfiluZ4/6mhpV/YbANFwDIXSa+KWzhh7wetrQ+1a6Y/Qb14ng/l1T048qg0AuKBgrCWocIWmoh5c8DPMMLpoVnNzClr7wiPEmh5W/dU2FvtvpIhVhIEdpHu/r6suSi99gzncEyYuhOFXdMX/J27xpiyDEnudxcda1HHvmi3UO+36mSsQvD3MY9Yc3w8Tzb78XKihzodJaeUW8TaVm0p4Vqrut19+HOyPjef5lLLWvpwVwk3o/5z91okLGUMXSWcIXv7uRdEtmWonzhfUgywEou1w6jk88vFatRn9ucZKhgOg3pQ38Hu7lnpeTcrwXH9hMxDuAgB8a/jcrrljGzWljke0iHMw9l3anxjBUSkICOZUfgwVPcPFE6GobtV/XSlRNJGykByFb2ZHc/zjxKyfWO09l9x3Fi6J4f/lCRVk8XlgBNT+5Nrpsu1Q0gGdwI1rnkqWMBjjhtRjVgLY5Se3E8EEzgnY62X/sZXNWhVpxBFwASeJAe4xnhNTjakL6bBQ8HremmP6tbN+iJluqqGhjfnP+2DqFaH5LJK1oNIsbKZnp1Iqs55QgAv/chm+x8FihxQ0solkTyRQobv4uxCOwoeDpMF9cYxNqh1TSOLkci8/9r/JnSOCT9qIZ7mlqFSMf1tUqg/N+Emvd3JFKbS2OFjUzBu/ynzUXxFk6p+t0bMaBMVCe42LfdgMjTyk4
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)(230922051799003)(64100799003)(451199024)(82310400011)(186009)(1800799009)(40470700004)(46966006)(36840700001)(36756003)(66899024)(40480700001)(31686004)(40460700003)(16576012)(2616005)(54906003)(316002)(6916009)(81166007)(31696002)(70206006)(86362001)(82740400003)(70586007)(356005)(426003)(2906002)(336012)(83380400001)(16526019)(36860700001)(26005)(6666004)(8936002)(53546011)(41300700001)(47076005)(4326008)(44832011)(5660300002)(478600001)(8676002)(43740500002)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Oct 2023 16:55:53.0680
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 2cb8e0d1-908c-4741-1e54-08dbd6446a39
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:
	BL6PEPF0001AB52.namprd02.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR12MB6542



On 26/10/23 17:55, Jan Beulich wrote:
> On 26.10.2023 15:58, Xenia Ragiadakou wrote:
>>
>> On 26/10/23 15:37, Jan Beulich wrote:
>>> On 26.10.2023 14:35, Xenia Ragiadakou wrote:
>>>>
>>>>
>>>> On 26/10/23 14:51, Jan Beulich wrote:
>>>>> On 26.10.2023 11:46, Xenia Ragiadakou wrote:
>>>>>> On 26/10/23 11:45, Jan Beulich wrote:
>>>>>>> On 26.10.2023 10:34, Xenia Ragiadakou wrote:
>>>>>>>> On 26/10/23 10:35, Jan Beulich wrote:
>>>>>>>>> On 26.10.2023 08:45, Xenia Ragiadakou wrote:
>>>>>>>>>> --- a/xen/arch/x86/hvm/dom0_build.c
>>>>>>>>>> +++ b/xen/arch/x86/hvm/dom0_build.c
>>>>>>>>>> @@ -518,7 +518,7 @@ static paddr_t __init find_memory(
>>>>>>>>>>               if ( end <= kernel_start || start >= kernel_end )
>>>>>>>>>>                   ; /* No overlap, nothing to do. */
>>>>>>>>>>               /* Deal with the kernel already being loaded in the region. */
>>>>>>>>>> -        else if ( kernel_start - start > end - kernel_end )
>>>>>>>>>> +        else if ( kernel_start + kernel_end > start + end )
>>>>>>>>> What meaning has the sum of the start and end of either range? I can't
>>>>>>>>> figure how comparing those two values will be generally correct / useful.
>>>>>>>>> If the partial-overlap case needs handling in the first place, I think
>>>>>>>>> new conditionals need adding (and the existing one needs constraining to
>>>>>>>>> "kernel range fully contained") to use
>>>>>>>>> - as before, the larger of the non-overlapping ranges at start and end
>>>>>>>>>        if the kernel range is fully contained,
>>>>>>>>> - the tail of the range when the overlap is at the start,
>>>>>>>>> - the head of the range when the overlap is at the end.
>>>>>>>> Yes it is not quite straight forward to understand and is based on the
>>>>>>>> assumption that end > kernel_start and start < kernel_end, due to
>>>>>>>> the first condition failing.
>>>>>>>>
>>>>>>>> Both cases:
>>>>>>>> (start < kernel_start && end < kernel_end) and
>>>>>>>> (kernel_start - start > end - kernel_end)
>>>>>>>> fall into the condition ( kernel_start + kernel_end > start + end )
>>>>>>>>
>>>>>>>> And both the cases:
>>>>>>>> (start > kernel_start && end > kernel_end) and
>>>>>>>> (end - kernel_end > kernel_start - start)
>>>>>>>> fall into the condition ( kernel_start + kernel_end < start + end )
>>>>>>>>
>>>>>>>> ... unless of course I miss a case
>>>>>>> Well, mathematically (i.e. ignoring the potential for overflow) the
>>>>>>> original expression and your replacement are identical anyway. But
>>>>>>> overflow needs to be taken into consideration, and hence there is a
>>>>>>> (theoretical only at this point) risk with the replacement expression
>>>>>>> as well. As a result I still think that ...
>>>>>>>
>>>>>>>>> That said, in the "kernel range fully contained" case it may want
>>>>>>>>> considering to use the tail range if it is large enough, rather than
>>>>>>>>> the larger of the two ranges. In fact when switching to that model, we
>>>>>>>>> ought to be able to get away with one less conditional, as then the
>>>>>>>>> "kernel range fully contained" case doesn't need treating specially.
>>>>>>> ... this alternative approach may want considering (provided we need
>>>>>>> to make a change in the first place, which I continue to be
>>>>>>> unconvinced of).
>>>>>> Hmm, I see your point regarding the overflow.
>>>>>> Given that start < kernel_end and end > kernel_start, this could
>>>>>> be resolved by changing the above condition into:
>>>>>> if ( kernel_end - start > end - kernel_start )
>>>>>>
>>>>>> Would that work for you?
>>>>>
>>>>> That would look quite a bit more natural, yes. But I don't think it covers
>>>>> all cases: What if the E820 range is a proper sub-range of the kernel one?
>>>>> If we consider kernel range crossing E820 region boundaries, we also need
>>>>> to take that possibility into account, I think.
>>>>
>>>> You are right, this case is not handled and can lead to either of the
>>>> issues mentioned in commit message.
>>>> Maybe we should check whether end > start before proceeding with
>>>> checking the size.
>>>
>>> It looks like it all boils down to the alternative I did sketch out.
>>
>> I 'm not sure I fully understood the alternative.
>> Do you mean sth in the lines below?
>>
>>            if ( end <= kernel_start || start >= kernel_end )
>>                ; /* No overlap, nothing to do. */
>>            /* Deal with the kernel already being loaded in the region. */
>> -        else if ( kernel_start - start > end - kernel_end )
>> +        else if ( start < kernel_start && end > kernel_end ) {
>> +            if ( kernel_start - start > end - kernel_end )
>> +                end = kernel_start;
>> +            else
>> +                start = kernel_end;
>> +        }
>> +        else if ( start < kernel_start )
>>                end = kernel_start;
>> -        else
>> +        else if ( end > kernel_end )
>>                start = kernel_end;
>> +        else
>> +            continue;
>>
>>            if ( end - start >= size )
>>                return start;
> 
> Not exactly, no, because this still takes the size into account only
> in this final if().
> 
>> You wouldn't like to consider this approach?
> 
> I'm happy to consider any other approach. Just that ...
> 
>>            if ( end <= kernel_start || start >= kernel_end )
>>                ; /* No overlap, nothing to do. */
>>            /* Deal with the kernel already being loaded in the region. */
>> -        else if ( kernel_start - start > end - kernel_end )
>> +        else if ( kernel_end - start > end - kernel_start )
>>                end = kernel_start;
>>            else
>>                start = kernel_end;
>>
>> -        if ( end - start >= size )
>> +        if ( end > start && end - start >= size )
>>                return start;
>>        }
> 
> ... I'm afraid this doesn't deal well with the specific case I was
> mentioning: If the E820 region is fully contained in the kernel range,
> it looks to me as if this approach would ignore the E820 altogether,
> since you either move end ahead of start or start past end then. Both
> head and tail regions may be large enough in this case, and if this
> was the only region above 1M, there'd be no other space to fall back
> to.

Yes, in which case it will fail. This is legitimate.
Currently, the code proceeds with the dom0 kernel being corrupted.

> 
> Jan


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 17:13:31 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 17:13:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623936.972236 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qw3vA-0003ZU-9D; Thu, 26 Oct 2023 17:13:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623936.972236; Thu, 26 Oct 2023 17: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 1qw3vA-0003ZN-5z; Thu, 26 Oct 2023 17:13:24 +0000
Received: by outflank-mailman (input) for mailman id 623936;
 Thu, 26 Oct 2023 17: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=4jAM=GI=amd.com=vikram.garhwal@srs-se1.protection.inumbo.net>)
 id 1qw3v8-0003Y3-8l
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 17:13:22 +0000
Received: from NAM02-DM3-obe.outbound.protection.outlook.com
 (mail-dm3nam02on20625.outbound.protection.outlook.com
 [2a01:111:f400:7e83::625])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id f5448832-7422-11ee-9b0e-b553b5be7939;
 Thu, 26 Oct 2023 19:13:20 +0200 (CEST)
Received: from MW3PR12MB4409.namprd12.prod.outlook.com (2603:10b6:303:2d::23)
 by SJ1PR12MB6268.namprd12.prod.outlook.com (2603:10b6:a03:455::15)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.33; Thu, 26 Oct
 2023 17:13:16 +0000
Received: from MW3PR12MB4409.namprd12.prod.outlook.com
 ([fe80::bc0e:2b8d:357c:675e]) by MW3PR12MB4409.namprd12.prod.outlook.com
 ([fe80::bc0e:2b8d:357c:675e%7]) with mapi id 15.20.6907.032; Thu, 26 Oct 2023
 17:13: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: f5448832-7422-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=AtuAT8B3hrQ4hdiRs1D3LZSl6I4UvlP4TUbRP7d56FOpR0q4qR8CCjDGer3O5klKZbrMYa1xnVGh3qT/GAUft0FnKgvhLmtXPRvy78F6uYyHKkGYFIYiEuLSSVDy7DJ46PGU5kBxyycMLlZCske73KsypDMEVXnnoYxAy7fpSbOCiGqdQ2X6wbSLgfU4YGHHgygt9ifUwN0pVi7+/FaTaTFX771IF+q6SMjC+IpOyFtK4NAwiBcUCgZn7CNPogyVuztVMs/+AoLA9wM7VIQ5Xfl//0n8PyKQKbbhjXupHIuYXEwEpdTE2kxyV/1KVqr1jiyUjSfWZTXs5j/QOLKTFQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=zgRssnI/fojT3LhdHgfivKq3kQildm1/kX+trC4wVIA=;
 b=Nidju6G+Jc6Hrimm7xarbL83Ren4HK4qpkjiq/PGtDb6qNrMbQG1LPyxeQ8YLWystQOUeefXERiPeDu3KHpbovbVg0ohWrIXSZudu3CjGbWWuwnl9mf2kVxVhAuJJ3bYaHlLIJPdYmxHr6L8aA99COkLRWKTpk8xyOtOvc1NHhqyvl6bWn/l/ujo+f8rQ9WwOiBLkSfh1S9VBzn80bQOPCD0/u1grmrYigpaSZYohViy6Po91E+5d17GNfq0DHNslXTCW3JaoSU1VqXTWmVAkxw4B5b/uZr/HLEVM6B+VphQnzPPA0bEbaWh0Hk0fe4a4IywybJN3/DUsYdc6vv4GQ==
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=zgRssnI/fojT3LhdHgfivKq3kQildm1/kX+trC4wVIA=;
 b=wKyOX4gnzQs7kDZZ0Hh9MOiFKD0cT0JBpN6Wf0SMNtKdtno+4aUFqv/6uB284Uf6DSfPGXGnVwBmd79gHnuLncFhd4CPnhzbPpaM0dcUPBrBlkzE2ih32LYWpPzPXXc595OtjCUmfpd3SGEzYkO2UDhjoZaNxvjdMgdeki1Acs0=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=amd.com;
Date: Thu, 26 Oct 2023 10:13:12 -0700
From: Vikram Garhwal <vikram.garhwal@amd.com>
To: David Woodhouse <dwmw2@infradead.org>
Cc: Stefano Stabellini <sstabellini@kernel.org>, qemu-devel@nongnu.org,
	jgross@suse.com, Anthony Perard <anthony.perard@citrix.com>,
	Paul Durrant <paul@xen.org>, Paolo Bonzini <pbonzini@redhat.com>,
	Richard Henderson <richard.henderson@linaro.org>,
	Eduardo Habkost <eduardo@habkost.net>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	"open list:X86 Xen CPUs" <xen-devel@lists.xenproject.org>
Subject: Re: [QEMU][PATCHv2 1/8] xen: when unplugging emulated devices skip
 virtio devices
Message-ID: <ZTqeKBSYXciFcBXG@amd.com>
References: <20231025212422.30371-1-vikram.garhwal@amd.com>
 <20231025212422.30371-2-vikram.garhwal@amd.com>
 <f8d6eaf9b5f57184a5f6ec5b6103189b77364e3a.camel@infradead.org>
 <alpine.DEB.2.22.394.2310251820510.271731@ubuntu-linux-20-04-desktop>
 <9d7d7fc988fa06d77cb1eca739f82063608dfda6.camel@infradead.org>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <9d7d7fc988fa06d77cb1eca739f82063608dfda6.camel@infradead.org>
X-ClientProxiedBy: PH7PR17CA0042.namprd17.prod.outlook.com
 (2603:10b6:510:323::21) To MW3PR12MB4409.namprd12.prod.outlook.com
 (2603:10b6:303:2d::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: MW3PR12MB4409:EE_|SJ1PR12MB6268:EE_
X-MS-Office365-Filtering-Correlation-Id: fea02308-6938-4b93-e0af-08dbd646d7f0
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	CfG9f16BgZUx5mGp7nKvxlLxkf9ZHvgS6ipGkksoFl2vraeE25dIb6uFwC6qbRAgGe6HwEs/JdIi5DTeyCqS33iUDWD/mEQRNA84YKpDN6vonO5qQATJ8f6X1aoLFW5LtnO3XaUJhOgqxLB+59d5bczVS/UUIh13qYE0eP4pvT3JeA1F0bo3VviQnc5LO0Y5JlBIaVynl5sPmGhU1s9Nhy8yws3GYvDN0srMCvoubxr0eoU3qb/Oz0l6pWaFS6dgqeNI3adR9JutVKOxFMlqOw9ArmwOkou0sFXiP5NguPA5cte77byxsvKqoNHwuBMqhSXlvfWZ5bzux6yVhXOnohDXZ7vSHHzwWLcjyxmuC/ZbdDfuXYNHJAa6T05ZCalpB9d1+hBcDjZ0mpWncVPhg1QeK+BL66ql8Lx9/bG506WKOKZ9U/tunnOw0UBnQqJFEf+DzU89O7283WZ3/XMS9wbeUewdC6jv8WZDNVMx0/N1FWVCdmecWhECHQqag8UjnxF5PIeFQfbG4WmfeUcxJf1vPSk0QlwFWdn4yRkecAE=
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)(396003)(39860400002)(366004)(346002)(376002)(136003)(230922051799003)(1800799009)(186009)(64100799003)(451199024)(26005)(2616005)(36756003)(38100700002)(6506007)(6512007)(6666004)(316002)(54906003)(66946007)(6916009)(86362001)(66476007)(6486002)(478600001)(966005)(66556008)(4326008)(41300700001)(8676002)(44832011)(8936002)(2906002)(4001150100001)(7416002)(5660300002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?alBpbnlvNUJvWHIrbFBNVE5yaTJTbUMreTJqeStkYTd3YVo5WU5XQVVmZFdk?=
 =?utf-8?B?TnY2WWc3dDY0SmROYmg4bkYvVDIwUjlFQXlkbEVmTHhuWnNxWW5wY0Q1VUU0?=
 =?utf-8?B?MlpudUZlVDQzMWxwZ0NlZHJZMlJGcjE5Q2JpVlFnci95cjhTQVEzeG5aL1lx?=
 =?utf-8?B?MDd0dlRpT296SlBSUytmOEgxUEZ1aHNtSkVvaDhwODNCd3p0amZ5RmtKd0lL?=
 =?utf-8?B?OUJwNUhkMjMrM2dtdXcxZmlzSEpzbUVhOGVySm9POEV0TWZWY3BrdWRLNVRz?=
 =?utf-8?B?UktWdFUyYmdOOEMwTXE2NUF1dkxibCtnQXMxUHN1UUlKOEFBc3NGTVBlbzlB?=
 =?utf-8?B?OWY5eHUwN3BCZlo3UjhudkszTXBnQXJqRmxiS0hQaEtiT0hpVHBlREVuZWtE?=
 =?utf-8?B?RkNCNXdDaVU0SUFkaitsRWNFQzBsNmpQT0U0NUtVYXZxSFAvV2Eya3k1aTRr?=
 =?utf-8?B?QnIrMWZPWTE4WkxMOG96OGRhdFYxZ05FS3Y4QWZhNEZVeU9kbUVwZGVVelY0?=
 =?utf-8?B?bXJ3bWZ5c2g2c0NDRDZWeVhEZHpBTzVLV2Z0TUxOLzFUeUYxem9ISVEvY3pG?=
 =?utf-8?B?SlVJZURwMlpPcVlETjd3d1BFcDhqaUFGSTViL09hdDlLQzZwUkZwUlh4Nzkv?=
 =?utf-8?B?N0lPenNnQjQzZ3REdE1nRGdTaUcwKzBpS1hCcmh2N043b2gvUHlBZS9Ya2JT?=
 =?utf-8?B?enNNUlVrcnRwa0U2T0s4OXJUQzdYcDJRTW1RSm9BSkV1ZFhXaFR5WFhXS3B1?=
 =?utf-8?B?emUydUhheWZRcUQ5QkdVazdyN0V3Zm8zV0tYbjBwY0F6enU4dmlacmtWSitB?=
 =?utf-8?B?cGZMa2RRcGdSWjBDWktFRndEMnZYa2dKUVluOFg0aHlzd2hGaFRaVUdNZzhr?=
 =?utf-8?B?dmpWVSt3REpsSVMvZjFRT1lvenlJNXM3SzhKZnhWQzgxTWIyNjZ3TXJpVGZG?=
 =?utf-8?B?WGJ2NkhDVytjaHJEN0FGNjNwbmV1a1MvYXlJU01SK1hDNm5WY3ZQQ2p2bFdq?=
 =?utf-8?B?WEJoR3dVd3RXNVBsa3FRcWpCVTZmaVVXQlEyRHdBRHVobEpxaGxGeG9xZWd5?=
 =?utf-8?B?dTBkOHBCSVB2em5PcDNTZFdXQ0VPek14TytaNzl6dm9DdWRZcFN4OTE2YTBZ?=
 =?utf-8?B?Ukg0TkZxVnpxWGd0QjVqN1EzaWI0Qlk4NXFjZzZBU0FnMk9mb2w1eU1pU25P?=
 =?utf-8?B?V2psQXJTVmJ6TmI1S2ZJcThnY0lYaXFSWmtPNVp2YWkwVVBPT2Fhd1BSYml1?=
 =?utf-8?B?TW1vWUVQUjZsQlVnVGcwNzVmcjgzdzVjcWZMVGt1dFRtK2s5QU45eUl3ejlE?=
 =?utf-8?B?VDVIeWQrMUhTNE53dGRVdVIyZ21WOHVETUNMaDF1ckpTcEp3SDY0MHhTUXVO?=
 =?utf-8?B?RTEvdDZSL3R5OTFKTkhrc1lwTmRuVEY3RXo1ZXhuRjJEMDEvN2YwenJEY3VZ?=
 =?utf-8?B?R2tneGZEUXhKLzRaSEFwTmZreWNBNTFOajRneFNEdmZqcTBHWXlKUXZzOG1a?=
 =?utf-8?B?Tittci9zV2srSTNLVXhhOW4xaytrQmlMN2lTQ1R0aEt5VGwvSHZMNjY2MzZp?=
 =?utf-8?B?SUQ3R3FvU1hRV3lBYk16eC9tbTFuL1FJeWhUZVF5NWY0Y1ZZdTBmelhpSmlW?=
 =?utf-8?B?SFhjNDBqS2hPVUhWVnlSNUtVbGl4TktoVEpNU0VUcFFjbVRUUDhmUFlIbUFH?=
 =?utf-8?B?K1ZMWklvMjk0bGF6cS9CTldtN2tZbGtiSmtPQmluazFoeHFoZzJvaGVwdzZn?=
 =?utf-8?B?RFlTQk5lWjgvT1NSMHNZTjcxUEhlaXF5aFZlaklFS2xJbndvVkJEVmhuUkFG?=
 =?utf-8?B?TzhxUG9aRWtYZWlzN1JVdVNEYnFmbGNuazg3VHpia3g2NVVhZWs4Y3d4TU5J?=
 =?utf-8?B?YmdVQ2I5bkRPVklHQmVrTlpnZzlQQTBET0xSci8zTVNJMXF2emFROTBBdXkw?=
 =?utf-8?B?VVpLS1F4VmNKbWc3Q0pKeW41TkMxRnlOckV1UU1hNHoyYjlBbkprYTJkdGdl?=
 =?utf-8?B?ak9KTkJpZ1dvQ1dycDdkR21pQjFoNDRZNUNwWVB5Y1JWc1BCNm1DRTlKSDh6?=
 =?utf-8?B?Z1pETko2N3FqRE9EOFRTVlhpUXEzM3crbWpRTXg5eUEvVjluQTFCSzhCaGhj?=
 =?utf-8?Q?x0pAwPmI1N8oa1SaYzJ7I6i8k?=
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-Network-Message-Id: fea02308-6938-4b93-e0af-08dbd646d7f0
X-MS-Exchange-CrossTenant-AuthSource: MW3PR12MB4409.namprd12.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Oct 2023 17:13:16.3722
 (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: Vb/IGTBlFd3UXIJ1QMB446U6PaGbkA8Nca5eFTJie/602ff/Yx9F9gxS6U3tr1kQgJHH4gsvfo27x1VDy6J1IA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ1PR12MB6268

On Thu, Oct 26, 2023 at 04:45:21PM +0100, David Woodhouse wrote:
> On Wed, 2023-10-25 at 18:23 -0700, Stefano Stabellini wrote:
> > On Thu, 26 Oct 2023, David Woodhouse wrote:
> > > On Wed, 2023-10-25 at 14:24 -0700, Vikram Garhwal wrote:
> > > > From: Juergen Gross <jgross@suse.com>
> > > > 
> > > > Virtio devices should never be unplugged at boot time, as they are
> > > > similar to pci passthrough devices.
> > > > 
> > > > Signed-off-by: Juergen Gross <jgross@suse.com>
> > > > Signed-off-by: Vikram Garhwal <vikram.garhwal@amd.com>
> > > 
> > > Hm, do your virtio NICs still actually *work* after that? Or are they
> > > all disconnected from their netdev peers? 
> > > 
> > > I suspect you're going to want a variant of
> > > https://lore.kernel.org/qemu-devel/20231025145042.627381-19-dwmw2@infradead.org/T/#u
> > > which also leave the peers of your virtio devices intact?
> > 
> > Hi David, device unplug is an x86-only thing (see the definition of
> > xen_emul_unplug in Linux under arch/x86/xen/platform-pci-unplug.c) I
> > suspect Vikram who is working on ARM hasn't tested it.
> 
> Ah, I had assumed there was something else coming along later which
> would make it actually get used. 
> 
> > Vikram, a simple option is to drop this patch if you don't need it.
> 
> That works. Although I may revive it in that case. 
> 
Hopefully, Juergen is also okay with dropping the patch. Then, i will remove it
from v3.

Thanks David & Stefano!




From xen-devel-bounces@lists.xenproject.org Thu Oct 26 17:19:21 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 17:19:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623941.972245 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qw40f-0005EE-VV; Thu, 26 Oct 2023 17:19:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623941.972245; Thu, 26 Oct 2023 17: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 1qw40f-0005E7-SN; Thu, 26 Oct 2023 17:19:05 +0000
Received: by outflank-mailman (input) for mailman id 623941;
 Thu, 26 Oct 2023 17:19: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 1qw40f-0005Dx-0z; Thu, 26 Oct 2023 17:19: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 1qw40e-0001dO-TI; Thu, 26 Oct 2023 17: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 1qw40e-0002Ar-HM; Thu, 26 Oct 2023 17:19:04 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qw40e-0007Q8-Gz; Thu, 26 Oct 2023 17:19: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=9s34CyJMNtqykfUrTgmsVPqc5cpi63NO2m1cLpfyIMM=; b=Ct3wY0g754ye+qup7saezLEU5g
	Ck67Xt8S1pDiStu677NIuUxmY2ADDN6YdISYcqXpTfCu89ICXoyKJ4BawQ/lwN5yJaedv3R9aEBNk
	8Sma/cRKzSIZBxJuHEhKYiQv3lRoApQXLnElPYrnUf2Viuf9A2h/XE+YWiJA8sfH/Geg=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183539-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 183539: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=fe43b426762c31c2f1958444d3aca388ec8d4702
X-Osstest-Versions-That:
    ovmf=8765f3eb428f86974033215fe08f8d3d85deedae
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 26 Oct 2023 17:19:04 +0000

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

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 fe43b426762c31c2f1958444d3aca388ec8d4702
baseline version:
 ovmf                 8765f3eb428f86974033215fe08f8d3d85deedae

Last test of basis   183536  2023-10-26 07:44:22 Z    0 days
Testing same since   183539  2023-10-26 15:43:55 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Abner Chang <abner.chang@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
   8765f3eb42..fe43b42676  fe43b426762c31c2f1958444d3aca388ec8d4702 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 17:38:53 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 17:38:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623947.972255 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qw4Jh-0000HZ-Hs; Thu, 26 Oct 2023 17:38:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623947.972255; Thu, 26 Oct 2023 17: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 1qw4Jh-0000HS-F7; Thu, 26 Oct 2023 17:38:45 +0000
Received: by outflank-mailman (input) for mailman id 623947;
 Thu, 26 Oct 2023 17:38: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=ivkI=GI=cloud.com=edwin.torok@srs-se1.protection.inumbo.net>)
 id 1qw4Jf-0000HM-SG
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 17:38:43 +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 813f3f6b-7426-11ee-98d5-6d05b1d4d9a1;
 Thu, 26 Oct 2023 19:38:42 +0200 (CEST)
Received: by mail-wr1-x433.google.com with SMTP id
 ffacd0b85a97d-32d9effe314so799468f8f.3
 for <xen-devel@lists.xenproject.org>; Thu, 26 Oct 2023 10:38:42 -0700 (PDT)
Received: from smtpclient.apple ([90.243.16.33])
 by smtp.gmail.com with ESMTPSA id
 e16-20020adfef10000000b0032d8354fb43sm14779062wro.76.2023.10.26.10.38.41
 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128);
 Thu, 26 Oct 2023 10:38: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: 813f3f6b-7426-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1698341922; x=1698946722; darn=lists.xenproject.org;
        h=to:references:message-id:content-transfer-encoding:cc:date
         :in-reply-to:from:subject:mime-version:from:to:cc:subject:date
         :message-id:reply-to;
        bh=7haMi/oR3rkIxkTSuG/UQEkuXC0vFdY9Oe7FppsCLqU=;
        b=T0SgXyqAYHCR0Xz4XBTZpWezBi1cemE0x2vg0VzNBc3EXmAvy2kvPzIdKBFWjmsHnA
         TaE6lf5tgOZzET1ZHwPHYSOQ7xLWEkc8sOlvubvXodyQR5ht8O9k/EehaKv3YWYRsLOm
         ymN1Ub0TYT8hPQ262pohQFvs44pKE/91bS0GI=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698341922; x=1698946722;
        h=to:references:message-id:content-transfer-encoding:cc:date
         :in-reply-to:from:subject:mime-version:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=7haMi/oR3rkIxkTSuG/UQEkuXC0vFdY9Oe7FppsCLqU=;
        b=wP4zaekCVVH6mZXDILINCModu3S8FuBPA0bZgFjB26NWCYglfPvpY/t3kyYxl4ZSgT
         +EUrwZQ0bjWbaKGtTx6BsYw8N3CXxURLdY/hW2q/Cc9yaXFGxu+BFVxZnK2DhCLbhqoG
         EGlbLdhDCMuNSfHwWgL8V6eSoq5FtYmbhbC46Y/jffRdFIXlzod0gI8kCoY5tststmn+
         6RjHVK8L9Aft2hUee1lcYtvc6su36wvKzmpHtkEZaCymhmRnbe+mdv708BK3KLdE55pg
         1D7XJJw281LG3MRBKqCF7JbfFXUJ7RMveflzRDLE/AMWpMOUkGgwUhdR82GKXOiqxoaF
         N0qA==
X-Gm-Message-State: AOJu0YwAaCIqbxcwApQnf988g5aaAM5gcx1ygSazh0OLFwT+qi8/RA7O
	kPKdSLb5xtQZdaF9k9O1PnZbaA==
X-Google-Smtp-Source: AGHT+IG7Csm4CQJoTDK5DhFoGIjDiKi19HU25vEjsq3cU0GeRAZAGeJtHgfSpkhKv2wJ13YNje0JJQ==
X-Received: by 2002:a05:6000:1563:b0:329:6bdc:5a60 with SMTP id 3-20020a056000156300b003296bdc5a60mr370006wrz.12.1698341921732;
        Thu, 26 Oct 2023 10:38:41 -0700 (PDT)
Content-Type: text/plain;
	charset=utf-8
Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3774.100.2.1.4\))
Subject: Re: [PATCH] tools/ocaml/Makefile.rules: use correct C flags when
 compiling OCaml C stubs
From: Edwin Torok <edwin.torok@cloud.com>
In-Reply-To: <a907d98a-2d0d-cbf0-ae9e-cfa2e3dd37e2@suse.com>
Date: Thu, 26 Oct 2023 18:38:29 +0100
Cc: =?utf-8?B?RWR3aW4gVMO2csO2aw==?= <edvin.torok@citrix.com>,
 Christian Lindig <christian.lindig@citrix.com>,
 David Scott <dave@recoil.org>,
 Wei Liu <wl@xen.org>,
 Anthony PERARD <anthony.perard@citrix.com>,
 xen-devel@lists.xenproject.org
Content-Transfer-Encoding: quoted-printable
Message-Id: <3BB711DB-2420-4731-B3C3-A66E3791D039@cloud.com>
References: <fd09742f7c2191be3cdfafbd4c7cccb10eb0e3a2.1698240589.git.edwin.torok@cloud.com>
 <a907d98a-2d0d-cbf0-ae9e-cfa2e3dd37e2@suse.com>
To: Jan Beulich <jbeulich@suse.com>
X-Mailer: Apple Mail (2.3774.100.2.1.4)



> On 25 Oct 2023, at 15:04, Jan Beulich <jbeulich@suse.com> wrote:
>=20
> On 25.10.2023 15:52, Edwin T=C3=B6r=C3=B6k wrote:
>> --- a/tools/ocaml/Makefile.rules
>> +++ b/tools/ocaml/Makefile.rules
>> @@ -37,7 +37,7 @@ ALL_OCAML_OBJS ?=3D $(OBJS)
>> $(call quiet-command, $(OCAMLYACC) -q $<,MLYACC,$@)
>>=20
>> %.o: %.c
>> - $(call quiet-command, $(CC) $(CFLAGS) -c -o $@ $<,CC,$@)
>> + $(call quiet-command, $(OCAMLOPT) -verbose $(addprefix -ccopt =
,$(CFLAGS)) -c -o $@ $<,CC,$@)
>=20
> Wouldn't -verbose better be passed only if the build isn't a quiet =
one?

Only the OCaml files (and the hypervisor itself) are compiled in quiet =
mode. It looks like tools/ and the C files in tools/ocaml were not,
so the patch as is preserves the existing behaviour.

I think there were some patches to switch to a non-recursive make, I =
hope that'll make quiet mode more consistent throughout the tree, until =
then I'd keep it as is
instead of complicating the macro more.

Thanks,
--Edwin=


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 17:42:36 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 17:42:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623951.972266 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qw4NP-0001qr-0b; Thu, 26 Oct 2023 17:42:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623951.972266; Thu, 26 Oct 2023 17: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 1qw4NO-0001qk-Tu; Thu, 26 Oct 2023 17:42:34 +0000
Received: by outflank-mailman (input) for mailman id 623951;
 Thu, 26 Oct 2023 17: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=ivkI=GI=cloud.com=edwin.torok@srs-se1.protection.inumbo.net>)
 id 1qw4NN-0001qe-UI
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 17:42:33 +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 0ab02ac8-7427-11ee-98d5-6d05b1d4d9a1;
 Thu, 26 Oct 2023 19:42:32 +0200 (CEST)
Received: by mail-wm1-x32e.google.com with SMTP id
 5b1f17b1804b1-40839807e82so7316255e9.0
 for <xen-devel@lists.xenproject.org>; Thu, 26 Oct 2023 10:42:32 -0700 (PDT)
Received: from smtpclient.apple ([90.243.16.33])
 by smtp.gmail.com with ESMTPSA id
 q9-20020a05600c46c900b004083bc9ac90sm3119104wmo.24.2023.10.26.10.42.31
 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128);
 Thu, 26 Oct 2023 10:42: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: 0ab02ac8-7427-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1698342152; x=1698946952; darn=lists.xenproject.org;
        h=to:references:message-id:content-transfer-encoding:cc:date
         :in-reply-to:from:subject:mime-version:from:to:cc:subject:date
         :message-id:reply-to;
        bh=GRBY+tAoZb/J4M2ctNQ/DZ35UQBlaca1qsKrvfykeKc=;
        b=SCyOGtGCxMavn6wSxIHfHQ302yt0li07lTrDv5P3q5+ZLTbdduTZb9tLXaU+Hu75EI
         ACjSKybaaL2lfS5mqB/Y+YqvX9ywJQpqdjzo2YPnY5/NIk2h9YvLCBHe0HdjoTB3mSMM
         CrR6viPs0HkHio5GBu5c6d+/6zj34ZvnmvlkU=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698342152; x=1698946952;
        h=to:references:message-id:content-transfer-encoding:cc:date
         :in-reply-to:from:subject:mime-version:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=GRBY+tAoZb/J4M2ctNQ/DZ35UQBlaca1qsKrvfykeKc=;
        b=Nq9Vd0+7XSusg/SirUrq69X0kqU1prCU8KMPIrQMbtJF1yovKwo3AcG3a8P/GqvUWJ
         9vehv2jwyTGuBEGHLWxnGnQ/Zlsu5nj0KuK5ppbo/91BunfwVFPis48E11jEpmivrc3r
         9iVbOSvKtNRRTTzLbdyVlhBA9E0EHjUDP/JXhEIe+36PvLvjHRayYADlbENjDyekbX/X
         FudMTL68nOpD7o2p3KqSxCsdh6EHo6iE4O4c6vxvMH0BTWLCONzHjx6yTCLoEawmt0se
         1LfJPo8FX1XnhpSemiGH9S2FX615wX0n2U0+xhg6Ut8XzddaapJx6bbrbsdJkgm4NPtM
         yKJA==
X-Gm-Message-State: AOJu0YwjTgY+K/hVIaIue+FhtYAcVfMS3h3EMxTciYTM4BDYLbs2/8dC
	46Kai+AH/3MxF4sYJX7iH9neyA==
X-Google-Smtp-Source: AGHT+IFRx/TGnECZAcKm9mY28TMpyzQCkyEktKtfDyKFK9Mkc3Gu08i9d/gKm5gAj79BiPY/T5LO4g==
X-Received: by 2002:a05:600c:512a:b0:405:19dd:ad82 with SMTP id o42-20020a05600c512a00b0040519ddad82mr562509wms.16.1698342152331;
        Thu, 26 Oct 2023 10:42:32 -0700 (PDT)
Content-Type: text/plain;
	charset=utf-8
Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3774.100.2.1.4\))
Subject: Re: [PATCH] tools/ocaml/Makefile.rules: use correct C flags when
 compiling OCaml C stubs
From: Edwin Torok <edwin.torok@cloud.com>
In-Reply-To: <531503CD-6082-43FE-92AF-FFB9B829B5C5@cloud.com>
Date: Thu, 26 Oct 2023 18:42:21 +0100
Cc: =?utf-8?B?RWR3aW4gVMO2csO2aw==?= <edvin.torok@citrix.com>,
 Xen-devel <xen-devel@lists.xenproject.org>,
 Christian Lindig <christian.lindig@citrix.com>,
 David Scott <dave@recoil.org>,
 Wei Liu <wl@xen.org>,
 Anthony PERARD <anthony.perard@citrix.com>
Content-Transfer-Encoding: quoted-printable
Message-Id: <5DF59773-9816-42CB-BC89-1CC2EE064CBD@cloud.com>
References: <fd09742f7c2191be3cdfafbd4c7cccb10eb0e3a2.1698240589.git.edwin.torok@cloud.com>
 <531503CD-6082-43FE-92AF-FFB9B829B5C5@cloud.com>
To: Christian Lindig <christian.lindig@cloud.com>
X-Mailer: Apple Mail (2.3774.100.2.1.4)



> On 25 Oct 2023, at 15:02, Christian Lindig =
<christian.lindig@cloud.com> wrote:
>=20
>=20
>=20
>> On 25 Oct 2023, at 14:52, Edwin T=C3=B6r=C3=B6k =
<edvin.torok@citrix.com> wrote:
>>=20
>> From: Edwin T=C3=B6r=C3=B6k <edwin.torok@cloud.com>
>>=20
>> The code currently uses GCC to compile OCaml C stubs directly,
>> and although in most cases this works, it is not entirely correct.
>>=20
>> This will fail if the OCaml runtime has been recompiled to use and =
link with ASAN for example
>> (or other situations where a flag needs to be used consistently in =
everything that is linked into the same binary).
>>=20
>> Use the OCaml compiler instead, which knows how to invoke the correct =
C compiler with the correct flags,
>> and append the Xen specific CFLAGS to that instead.
>>=20
>> Drop the explicit -fPIC and -I$(ocamlc -where): these will now be =
provided by the compiler as needed.
>>=20
>> Use -verbose so we see the actuall full C compiler command line =
invocation done by the OCaml compiler.
>>=20
>> Signed-off-by: Edwin T=C3=B6r=C3=B6k <edwin.torok@cloud.com>
>=20
> Acked-by: Christian Lindig <christian.lindig@cloud.com>
>=20
> I like using the OCaml compiler to compile stubs as it knows how to =
handle C files and will invoke the C compiler with the correct flags. =
However, this is the kind of change that would be good to have tested on =
all supported platforms. I therefore invite comments from those who =
maintain the build process.


There was a CI failure. I've pushed an updated version of this patch =
here:
=
https://gitlab.com/xen-project/people/edwintorok/xen/-/commit/137ffad324eb=
82884e7ac6f46f618459d365693e

If it passes the CI this time I'll send out a V2, looks like the -fPIC =
flag is needed on some platforms and is not automatically added by the =
OCaml compiler.


Best regards,
--Edwin=


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 18:41:00 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 18:41:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623955.972275 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qw5Hh-0003hr-6W; Thu, 26 Oct 2023 18:40:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623955.972275; Thu, 26 Oct 2023 18:40: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 1qw5Hh-0003hk-44; Thu, 26 Oct 2023 18:40:45 +0000
Received: by outflank-mailman (input) for mailman id 623955;
 Thu, 26 Oct 2023 18:40: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=atUU=GI=raptorengineering.com=sanastasio@srs-se1.protection.inumbo.net>)
 id 1qw5Hg-0003he-DS
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 18:40:44 +0000
Received: from raptorengineering.com (mail.raptorengineering.com
 [23.155.224.40]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 2a4dd48c-742f-11ee-98d5-6d05b1d4d9a1;
 Thu, 26 Oct 2023 20:40:42 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id A608F82867D9;
 Thu, 26 Oct 2023 13:40: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 GKrOlKkyFSRJ; Thu, 26 Oct 2023 13:40:40 -0500 (CDT)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 13D40828686E;
 Thu, 26 Oct 2023 13:40:40 -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 AUkXFotv5GY5; Thu, 26 Oct 2023 13:40: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 8EA8A82867D9;
 Thu, 26 Oct 2023 13:40: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: 2a4dd48c-742f-11ee-98d5-6d05b1d4d9a1
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com 13D40828686E
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD;
	t=1698345640; bh=h4HjbPnCwNrXK1CS8VlcWWEY66J1/tWnBvkHdUy3X8E=;
	h=Message-ID:Date:MIME-Version:To:From;
	b=biCQDRZqXwagJsv+YXvdGi9H2qRPSIYrL3gNRv14JexeoYUoBGM9bskt9k/2QywBU
	 xJb1zzQW44OGOqjndEaCkXm3IFub7zeZvQDMrlTJXTtMLe4siaapMzW/BAPPqIwqS1
	 /RsJ+DhpoKjTJXWxsms4gTdyKNkpZqdP/0+DVeeQ=
X-Virus-Scanned: amavisd-new at rptsys.com
Message-ID: <b77587ac-0520-18cf-c1da-6ef75867127d@raptorengineering.com>
Date: Thu, 26 Oct 2023 13:40:38 -0500
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux ppc64le; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH v3 2/2] xen/ppc: Implement a basic exception handler
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.1698273423.git.sanastasio@raptorengineering.com>
 <1d875c978caa4ed0b3d038655a39aa0cb0583565.1698273423.git.sanastasio@raptorengineering.com>
 <6757b3a9-9556-c658-fb01-ce0ff68ab027@suse.com>
From: Shawn Anastasio <sanastasio@raptorengineering.com>
In-Reply-To: <6757b3a9-9556-c658-fb01-ce0ff68ab027@suse.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit

On 10/26/23 3:03 AM, Jan Beulich wrote:
> On 26.10.2023 00:41, 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>
> 
> Despite me being unhappy about the disconnect of the constants
> Acked-by: Jan Beulich <jbeulich@suse.com>
> One further remark/suggestion though (happy to take care of while
> committing):
> 
>> --- /dev/null
>> +++ b/xen/arch/ppc/ppc64/exceptions-asm.S
>> @@ -0,0 +1,135 @@
>> +/* SPDX-License-Identifier: GPL-2.0-or-later */
>> +
>> +#include <asm/asm-defns.h>
>> +#include <asm/processor.h>
>> +
>> +    .section .text.exceptions, "ax", %progbits
>> +
>> +    /* Helper to dump CPU state to struct cpu_user_regs pointed to by r1. */
>> +ENTRY(exception_common)
>> +    /*
>> +     * Save GPRs 1-31. TODO: The value of %r1 has already been modified by the
>> +     * ISR, so the value we save isn't the exact value we had on entry.
>> +     */
>> +    SAVE_GPRS(1, 31, %r1)
> 
> Wouldn't this comment ...
> 
>> +    /* 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)
> 
> ... better be repeated here?
>

Sure, if you'd like to make that change during commit that'd be great.

> Jan

Thanks,
Shawn


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 19:30:30 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 19:30:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623959.972285 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qw63f-0002Yk-NV; Thu, 26 Oct 2023 19:30:19 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623959.972285; Thu, 26 Oct 2023 19:30: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 1qw63f-0002Yd-L0; Thu, 26 Oct 2023 19:30:19 +0000
Received: by outflank-mailman (input) for mailman id 623959;
 Thu, 26 Oct 2023 19:30: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=z2QB=GI=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qw63e-0002YX-1M
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 19:30: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 1610e8e0-7436-11ee-98d5-6d05b1d4d9a1;
 Thu, 26 Oct 2023 21:30: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 7BE56CE3FC3;
 Thu, 26 Oct 2023 19:30:11 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 27096C433C8;
 Thu, 26 Oct 2023 19:30:10 +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: 1610e8e0-7436-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1698348610;
	bh=iymV6sGjgVauPfGbWU1lqHoHgT9biz7JtDNLa0H18E0=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=VI8jz8hIQvFY3U3DJfcnZetaFcVkfK8EnsMO2sSmVx4dQdKuBHNg0CqqWczNdC5Im
	 cfvnN77NavAux9wOR3B9zjaMNY7vMh40mHHtDbU0NqiEYbM/GWvBfXdN+QKc6cCTfw
	 wykYcMjUWWJp9oLpHR6UEkXlSJBzelJ0IUoX/0pq02PawciZQPo0z3ihoaA4/5Z3UD
	 A1sSGqnPnPHY+NvZaRO3V//3g+YJwdFtt5uH7Y+Cuh8JtTCI8YnL3jAtTuRWj5KmrC
	 T2JtA5EmYS5DZi1B81NEkpVqKJULjm6pYbQzqym1x/KY2pm6GDt93RhxLj4QmaYSVp
	 kYILza9KPbSgw==
Date: Thu, 26 Oct 2023 12:30:08 -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>
Subject: Re: [for-4.19 PATCH 1/2] cppcheck: rework exclusion_file_list.py
 code
In-Reply-To: <20231026103243.2077516-2-luca.fancellu@arm.com>
Message-ID: <alpine.DEB.2.22.394.2310261230010.271731@ubuntu-linux-20-04-desktop>
References: <20231026103243.2077516-1-luca.fancellu@arm.com> <20231026103243.2077516-2-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 Thu, 26 Oct 2023, Luca Fancellu wrote:
> Rework the exclusion_file_list.py code to have the function
> load_exclusion_file_list() detached from the xen-analysis.py tool,
> in a way so that other modules can use the function.
> The xen-analysis tool and in particular its module cppcheck_analysis.py
> will use a new function cppcheck_exclusion_file_list().
> 
> No functional changes are intended.
> 
> Signed-off-by: Luca Fancellu <luca.fancellu@arm.com>

Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 19:36:58 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 19:36:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623963.972296 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qw6A3-0003X3-E3; Thu, 26 Oct 2023 19:36:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623963.972296; Thu, 26 Oct 2023 19:36: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 1qw6A3-0003Ww-9m; Thu, 26 Oct 2023 19:36:55 +0000
Received: by outflank-mailman (input) for mailman id 623963;
 Thu, 26 Oct 2023 19:36: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=z2QB=GI=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qw6A1-0003Wq-DN
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 19:36: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 027040ca-7437-11ee-9b0e-b553b5be7939;
 Thu, 26 Oct 2023 21:36: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 0ED9CB83832;
 Thu, 26 Oct 2023 19:36:50 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 48B60C433C8;
 Thu, 26 Oct 2023 19:36: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: 027040ca-7437-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1698349009;
	bh=LHGFDugZG0VF1N85m7hYH9Iz75l4znIKUwSWhMyOVXw=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=IgmjxWn3MYhlz9E9LYhSOkr6qRb7LQFHFuab/V6AH7a+OZqj71/Q7vYSNVsSFGl1n
	 inFzAOKICVA21k1wlgliS/uhcrekRyQJXXnEC90UNUaL5v3UdEwMRctyZj9iZ0uciT
	 W9+yxaiF8Rm0PqzPfF5xI0aUbGp4Rs5/3reNgMu/SBih9mfBPKGRIR3X9tVTkzgF2F
	 DV/neo+RUgS3v2s5QAF4b4X8gBaLb/SySvuG/EhuGIKPplZ3cXUkSARIV2iVSKZcvK
	 XfcdRnRbUT87AQ/m792DYIMWqld/ZQQ0vmHdMzKAzbBmvg9Hpv+s/q6O+j7r6ZKgnD
	 VZokPPShng4KA==
Date: Thu, 26 Oct 2023 12:36:46 -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, 
    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: [for-4.19 PATCH 2/2] exclude-list: generalise exclude-list
In-Reply-To: <20231026103243.2077516-3-luca.fancellu@arm.com>
Message-ID: <alpine.DEB.2.22.394.2310261236380.271731@ubuntu-linux-20-04-desktop>
References: <20231026103243.2077516-1-luca.fancellu@arm.com> <20231026103243.2077516-3-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 Thu, 26 Oct 2023, Luca Fancellu wrote:
> Currently exclude-list.json is used by the xen-analysis tool to
> remove from the report (cppcheck for now) violations from the
> files listed in it, however that list can be used by different
> users that might want to exclude some of the files from their
> computation for many reasons.
> 
> So add a new field that can be part of each entry to link
> the tool supposed to consider that exclusion.
> 
> Update exclusion_file_list.py to implement the logic and update
> the documentation to reflect this change.
> 
> Signed-off-by: Luca Fancellu <luca.fancellu@arm.com>

Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 19:44:08 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 19:44:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623967.972306 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qw6Go-00053L-3j; Thu, 26 Oct 2023 19:43:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623967.972306; Thu, 26 Oct 2023 19:43: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 1qw6Go-00053E-09; Thu, 26 Oct 2023 19:43:54 +0000
Received: by outflank-mailman (input) for mailman id 623967;
 Thu, 26 Oct 2023 19: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 1qw6Gn-000534-AF; Thu, 26 Oct 2023 19: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 1qw6Gn-0005EK-3G; Thu, 26 Oct 2023 19: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 1qw6Gm-0005c6-Q2; Thu, 26 Oct 2023 19:43:52 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qw6Gm-0003UN-PI; Thu, 26 Oct 2023 19: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=johaEYrUC6GOOGMSPD9ECAKs7jzytYRqC6qepzPhBuY=; b=Zns+WKzkosBA/JrQYXeikQhtpo
	dOnIZ6ULyqbfidp7QbIwng+9CItlFlXQWz8Aev3HRRl6G0clEzNn0rSWDc+cTGN0iGa0VvmD7mw+g
	0UDfVWB9UfxxuoEdQnS0OdgEzTam7HD8JA35LYGhSv00CuZwx/Jn/ddVEbp97pZJoI1s=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183542-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 183542: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=74c687cc2f2f29d3bdd454a416624f0ca5a86566
X-Osstest-Versions-That:
    ovmf=fe43b426762c31c2f1958444d3aca388ec8d4702
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 26 Oct 2023 19:43:52 +0000

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

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 74c687cc2f2f29d3bdd454a416624f0ca5a86566
baseline version:
 ovmf                 fe43b426762c31c2f1958444d3aca388ec8d4702

Last test of basis   183539  2023-10-26 15:43:55 Z    0 days
Testing same since   183542  2023-10-26 18:10:40 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Yuanhao Xie <yuanhao.xie@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
   fe43b42676..74c687cc2f  74c687cc2f2f29d3bdd454a416624f0ca5a86566 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 20:23:24 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 20:23:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623974.972315 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qw6su-0002d7-4f; Thu, 26 Oct 2023 20:23:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623974.972315; Thu, 26 Oct 2023 20:23: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 1qw6su-0002d0-29; Thu, 26 Oct 2023 20:23:16 +0000
Received: by outflank-mailman (input) for mailman id 623974;
 Thu, 26 Oct 2023 20:23: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 1qw6ss-0002cu-46
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 20:23: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 1qw6sr-0006IO-M1; Thu, 26 Oct 2023 20:23:13 +0000
Received: from 54-240-197-238.amazon.com ([54.240.197.238]
 helo=[192.168.13.109]) by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qw6sr-0005ZG-FA; Thu, 26 Oct 2023 20:23: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=dVLcNqipZFXnzYb5oAHAq2Ceh4RPO/QeD6fVaedSG4Y=; b=JmpHgQ/6hiJagcYO/dQsUb9hJ2
	gX3xR5+Q1dWKHaB4jpISckwTeBKdnCdfNM1RIh3dt/nQedKTt/RHFuRACtTINdBJknorvWglt617u
	oDsqO103TnUgkAXIhfa6nkCYN3YUah12IspcxPC4Lkbd/Iv4CQNNp/YePMwrCF+5w6ow=;
Message-ID: <7a8aac9a-5ba0-45be-8673-9f0a6d5e8a66@xen.org>
Date: Thu, 26 Oct 2023 21:23:11 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN PATCH 4/4] arm/new vgic: Add ITS support to NEW_VGIC
Content-Language: en-GB
To: Mykyta Poturai <Mykyta_Poturai@epam.com>,
 "xen-devel@lists.xenproject.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: <cover.1698225630.git.mykyta_poturai@epam.com>
 <b0b41f2065002e4cf7795ebfbf9f84624c2f150d.1698225630.git.mykyta_poturai@epam.com>
 <163d3326-38f2-40b6-a654-60f0221daa6c@xen.org>
 <6c5cb10b-7b61-4690-92b1-9c75a371af4d@epam.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <6c5cb10b-7b61-4690-92b1-9c75a371af4d@epam.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit



On 26/10/2023 11:01, Mykyta Poturai wrote:
> Hi Julien,

Hi,

> On 25.10.23 13:22, Julien Grall wrote:
>> Looking at the change, you mainly add #ifdef in the code. The goal of
>> gic-v3-lpi.c was to be agnostic from the different vGIC. So please
>> abstract it.
> 
> 
> Would it be okay to add something like "typedef struct vgic_irq
> pending_irq" to deal with the type differences or is it better to
> completely move the code that mentions them into vgic files?

Looking at the code, you only seem to use vgic_irq in 
vgic_vcpu_inject_lpi(). Most of the code after your patch seems to 
diverge between the new vGIC and old vGIC.

So I think you want to duplicate vgic_vcpu_inject_lpi() for each vGIC.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 20:36:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 20:36:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623978.972325 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qw75Y-0004rO-8i; Thu, 26 Oct 2023 20:36:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623978.972325; Thu, 26 Oct 2023 20:36: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 1qw75Y-0004rH-6C; Thu, 26 Oct 2023 20:36:20 +0000
Received: by outflank-mailman (input) for mailman id 623978;
 Thu, 26 Oct 2023 20:36:19 +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 1qw75W-0004rB-VN
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 20:36: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 1qw75V-0006im-M9; Thu, 26 Oct 2023 20:36:17 +0000
Received: from 54-240-197-238.amazon.com ([54.240.197.238]
 helo=[192.168.13.109]) by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qw75V-00060h-FR; Thu, 26 Oct 2023 20:36: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=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=lg+MBJgHZQ0NZxu+ZmE6Y1Slkt2OlxXCbhWQd3ZHTQ0=; b=Y2LrKlhmMRFbzunvJoq0N2erov
	NpGq/c2YHaAkAyaxr+N/pMHSgenp7kS6+LNDkCdhxxoHPusZgag2rGSx87cbBYWQLFsXKt+/8YA3Z
	GVIlzolTWCLTy2Qpzf4qNmiJKYL66EtDWTPL1x9+l5n6cMZUDJOA/pZxKjPrQXoSyfNU=;
Message-ID: <622969f4-1cd0-451a-8b31-9c2f33e45025@xen.org>
Date: Thu, 26 Oct 2023 21:36:14 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v3 2/5] xen/arm: pci: plumb xen_arch_domainconfig with pci
 info
Content-Language: en-GB
To: Stewart Hildebrand <stewart.hildebrand@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>,
 Andrew Cooper <andrew.cooper3@citrix.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>
References: <20231009195747.889326-1-stewart.hildebrand@amd.com>
 <20231009195747.889326-3-stewart.hildebrand@amd.com>
 <5f69d9de-23af-429f-afa5-4623bedbb3ed@xen.org>
 <6fdaea2e-d6c8-4246-bd2b-7c08139e86fa@amd.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <6fdaea2e-d6c8-4246-bd2b-7c08139e86fa@amd.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi Stewart,

On 25/10/2023 20:05, Stewart Hildebrand wrote:
> On 10/20/23 13:25, Julien Grall wrote:
>> On 09/10/2023 20:57, Stewart Hildebrand wrote:
>>> Add a flag to struct xen_arch_domainconfig to allow specifying at domain
>>> creation time whether the domain uses vPCI.
>>>
>>> Add a corresponding flag to struct arch_domain to indicate vPCI and set it
>>> accordingly.
>>
>> The new boolean you are adding doesn't seem very arch specific. So could
>> we use a bit in xen_domctl_createdomain.flags?
> 
> Right. Yes. Since x86 already has a vpci flag in xen_domctl_createdomain.arch.emulation_flags, I think the way forward is to move the x86 vpci flag to the common xen_domctl_createdomain.flags.

+1.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 20:56:02 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 20:56:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623985.972346 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qw7OT-0008I3-77; Thu, 26 Oct 2023 20:55:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623985.972346; Thu, 26 Oct 2023 20:55: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 1qw7OT-0008Hw-34; Thu, 26 Oct 2023 20:55:53 +0000
Received: by outflank-mailman (input) for mailman id 623985;
 Thu, 26 Oct 2023 20:55: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=MgGv=GI=citrix.com=prvs=656ff9716=Andrew.Cooper3@srs-se1.protection.inumbo.net>)
 id 1qw7OR-000838-CH
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 20:55:51 +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 0b4487a7-7442-11ee-98d5-6d05b1d4d9a1;
 Thu, 26 Oct 2023 22:55: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: 0b4487a7-7442-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1698353750;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=ljkTUkq4cwuvgCLerUGuk67qFr0QhZx8czzjrJvbt94=;
  b=ApEWC3Y8TZKWAxUU79AsncA6cFntnZL6Eh2ab6TjZKJBSkL7DuKcTuhx
   lfcNVqxNt48ToZQSLSQoNtw9963FrQDGWrUuV/Vkn4Lvin0BCKGmZvjq1
   8No+UD/s0oYy+X5thUAP31XU5hMhM/LXbOYaGn3gKfiBLWB/4VOukS2+D
   g=;
X-CSE-ConnectionGUID: T+oetjRMTnK/J9d/XjGbxA==
X-CSE-MsgGUID: Lhlj6YxoRPO2+p8yCWQ78Q==
Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
X-SBRS: 5.1
X-MesageID: 129566477
X-Ironport-Server: esa4.hc3370-68.iphmx.com
X-Remote-IP: 162.221.159.70
X-Policy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:nwJj5q0+a5YDdLiYIfbD5e1xkn2cJEfYwER7XKvMYLTBsI5bpzQHm
 mFKWmvTa/jfZWXxKdgja4iw8RlUuJfcmoJnTAFlpC1hF35El5HIVI+TRqvS04F+DeWYFR46s
 J9OAjXkBJppJpMJjk71atANlVEliOfQAOK6UbaYUsxIbVcMYD87jh5+kPIOjIdtgNyoayuAo
 tq3qMDEULOf82cc3lk8teTb83uDgNyo4GlD5wRkO6gR1LPjvyJ94Kw3dPnZw0TQGuG4LsbiL
 87fwbew+H/u/htFIrtJRZ6iLyXm6paLVeS/oiI+t5qK23CulQRrukoPD9IOaF8/ttm8t4sZJ
 OOhF3CHYVxB0qXkwIzxWvTDes10FfUuFLTveRBTvSEPpqFvnrSFL/hGVSkL0YMkFulfPSJJ+
 OAaEhUxaDPEpbO6h4K5ZeN8r5F2RCXrFNt3VnBIyDjYCbAtQIzZQrWM7thdtNsyrpkQR7CEP
 ZNfMGc+KkuYC/FMEg5/5JYWteGknHTgNRZfr0qYv/Ef6GnP1g1hlrPqNbI5f/TTH5QIwBjE+
 T2uE2LRJhEeNoKu2T2/ylX2xfefjAjEYd1CLejtnhJtqALKnTFCYPEMbnOrrP/8hkOgVtZ3L
 00P5jFovaU07FasTNT2Q1u/unHsljw2VsdUEuY6wBqQ0aeS6AGcbkAbShZRZdpgs9U5LRQxy
 lKHltXuQydzubeYTXac8La8pDa+fyMSKAcqdSICTAJD+dDsoYg/hxHIU/5qFaLzhdrwcQwc2
 BjT8nJ43e9Ky5dWhuPkpTgrng5AuLD1DQk4+gfte16jzURbNYLiV46H40jyuKMowJmicrWRg
 JQVs5HAvbBUXMjRznzlrPYlRu/zu6jfWNHIqRs/R8N/qm7FF2uLJ9g43d1oGKt+3i/okxfCZ
 1XavUtq/IVSOnSxBUOcS9nqU5tzpUQM+M6Maxw1UjatSsIoHON/1HsyDXN8Jki0+KTWrYkxO
 I2AbeGnBmsABKJswVKeHrlMgeR3m3pumDiLHfgXKihLNpLHOxaopUotagPSPojVEovYyOkqz
 zqvH5TTkEgOOAEPSiLW7ZQSPTg3wYsTXPjLRzhsXrfbeGJOQTh5Y9eImO9JRmCQt/kM/gs+1
 irmAREwJZuWrSCvFDhmnVg6M+61Bcsm/SpiVcHuVH7xs0UejU+UxP93X/MKkXMPrYSPEdYco
 yE5Rvi9
IronPort-HdrOrdr: A9a23:Xwc3Sq9EJonF2v+kAIZuk+AcI+orL9Y04lQ7vn2ZKSY5TiX4rb
 HKoB1/73XJYVkqN03I9ervBEDiewK/yXcW2+ks1N6ZNWGLhILBFupfBODZsl7d8kPFl9K01c
 1bAtJD4N+bNykGsS4tijPIb+rJw7O8gd+Vbf+19QYIcenzAZsQlzuQDGygYypLbTgDP7UVPr
 yG6PFKojKxEE5nFfhSVhE+Lo7+T8SgruOeXSI7
X-Talos-CUID: 9a23:p7tpF2PQfsY37e5DZGpg+VIWIOUZdF6a7ibcZH+6Jmx5YejA
X-Talos-MUID: 9a23:RV6FJgUIdjltBFPq/BvsgDM8Bddv2ZyJUgMVwYQthPDbZRUlbg==
X-IronPort-AV: E=Sophos;i="6.03,254,1694750400"; 
   d="scan'208";a="129566477"
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>, Alejandro Vallejo
	<alejandro.vallejo@cloud.com>, Stefano Stabellini
	<stefano.stabellini@amd.com>, Xenia Ragiadakou <xenia.ragiadakou@amd.com>
Subject: [PATCH v2 2/2] x86/Kconfig: Introduce CONFIG_{AMD,INTEL} and conditionalise ucode
Date: Thu, 26 Oct 2023 21:55:39 +0100
Message-ID: <20231026205539.3261811-3-andrew.cooper3@citrix.com>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <20231026205539.3261811-1-andrew.cooper3@citrix.com>
References: <20231026205539.3261811-1-andrew.cooper3@citrix.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit

We eventually want to be able to build a stripped down Xen for a single
platform.  Make a start with CONFIG_{AMD,INTEL} (hidden behind EXPERT, but
available to randconfig), and adjust the microcode logic.

No practical 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>
CC: Alejandro Vallejo <alejandro.vallejo@cloud.com>
CC: Stefano Stabellini <stefano.stabellini@amd.com>
CC: Xenia Ragiadakou <xenia.ragiadakou@amd.com>

I've intentionally ignored the other vendors for now.  They can be put into
Kconfig by whomever figures out the actual dependencies between their init
routines.

v2:
 * Tweak text
---
 xen/arch/x86/Kconfig                 |  2 ++
 xen/arch/x86/Kconfig.cpu             | 22 ++++++++++++++++++++++
 xen/arch/x86/cpu/microcode/Makefile  |  4 ++--
 xen/arch/x86/cpu/microcode/private.h |  9 +++++++++
 4 files changed, 35 insertions(+), 2 deletions(-)
 create mode 100644 xen/arch/x86/Kconfig.cpu

diff --git a/xen/arch/x86/Kconfig b/xen/arch/x86/Kconfig
index eac77573bd75..d9eacdd7e0fa 100644
--- a/xen/arch/x86/Kconfig
+++ b/xen/arch/x86/Kconfig
@@ -49,6 +49,8 @@ config HAS_CC_CET_IBT
 
 menu "Architecture Features"
 
+source "arch/x86/Kconfig.cpu"
+
 source "arch/Kconfig"
 
 config PV
diff --git a/xen/arch/x86/Kconfig.cpu b/xen/arch/x86/Kconfig.cpu
new file mode 100644
index 000000000000..3c5d88fdfd16
--- /dev/null
+++ b/xen/arch/x86/Kconfig.cpu
@@ -0,0 +1,22 @@
+menu "Supported CPU vendors"
+	visible if EXPERT
+
+config AMD
+	bool "AMD"
+        default y
+        help
+          Detection, tunings and quirks for AMD platforms.
+
+	  May be turned off in builds targetting other vendors.  Otherwise,
+	  must be enabled for Xen to work suitably on AMD platforms.
+
+config INTEL
+	bool "Intel"
+        default y
+        help
+          Detection, tunings and quirks for Intel platforms.
+
+	  May be turned off in builds targetting other vendors.  Otherwise,
+	  must be enabled for Xen to work suitably on Intel platforms.
+
+endmenu
diff --git a/xen/arch/x86/cpu/microcode/Makefile b/xen/arch/x86/cpu/microcode/Makefile
index aae235245b06..30d600544f45 100644
--- a/xen/arch/x86/cpu/microcode/Makefile
+++ b/xen/arch/x86/cpu/microcode/Makefile
@@ -1,3 +1,3 @@
-obj-y += amd.o
+obj-$(CONFIG_AMD) += amd.o
 obj-y += core.o
-obj-y += intel.o
+obj-$(CONFIG_INTEL) += intel.o
diff --git a/xen/arch/x86/cpu/microcode/private.h b/xen/arch/x86/cpu/microcode/private.h
index b58611e908aa..da556fe5060a 100644
--- a/xen/arch/x86/cpu/microcode/private.h
+++ b/xen/arch/x86/cpu/microcode/private.h
@@ -70,7 +70,16 @@ struct microcode_ops {
  * support available) and (not) ops->apply_microcode (i.e. read only).
  * Otherwise, all hooks must be filled in.
  */
+#ifdef CONFIG_AMD
 void ucode_probe_amd(struct microcode_ops *ops);
+#else
+static inline void ucode_probe_amd(struct microcode_ops *ops) {}
+#endif
+
+#ifdef CONFIG_INTEL
 void ucode_probe_intel(struct microcode_ops *ops);
+#else
+static inline void ucode_probe_intel(struct microcode_ops *ops) {}
+#endif
 
 #endif /* ASM_X86_MICROCODE_PRIVATE_H */
-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Thu Oct 26 20:56:02 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 20:56:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623984.972335 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qw7OR-00083Q-Vy; Thu, 26 Oct 2023 20:55:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623984.972335; Thu, 26 Oct 2023 20:55: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 1qw7OR-00083J-TD; Thu, 26 Oct 2023 20:55:51 +0000
Received: by outflank-mailman (input) for mailman id 623984;
 Thu, 26 Oct 2023 20:55: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=MgGv=GI=citrix.com=prvs=656ff9716=Andrew.Cooper3@srs-se1.protection.inumbo.net>)
 id 1qw7OR-000838-4X
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 20:55:51 +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 089af1ab-7442-11ee-98d5-6d05b1d4d9a1;
 Thu, 26 Oct 2023 22:55: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: 089af1ab-7442-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1698353748;
  h=from:to:cc:subject:date:message-id:mime-version:
   content-transfer-encoding;
  bh=5cy4xAaZ9wU6f8Lv8BGywX/DUb3HlXjtWjNK6ZZueZA=;
  b=AJYQmvR9pqkyylyw0fCnpFgeGkjWdN0G9mii7lnCYz4htVnOBe/e/G/B
   dQohQKttfBDZG4kaSdKHfClnceZsCjsxVOlXk4zeqywKlS8q6xjjrr9fm
   SsxAaj1PSZ1Aj66wAvVswwL0B6CTv+FnTwO2uPyFw8bNuK3SSZ48XnMlP
   4=;
X-CSE-ConnectionGUID: T+oetjRMTnK/J9d/XjGbxA==
X-CSE-MsgGUID: l8xNbbU5SBOIS2s/a8t6GQ==
Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
X-SBRS: 5.1
X-MesageID: 129566474
X-Ironport-Server: esa4.hc3370-68.iphmx.com
X-Remote-IP: 162.221.159.70
X-Policy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:ZupAqq0yIbK+ZX9D4vbD5e1xkn2cJEfYwER7XKvMYLTBsI5bpzQBm
 mBLXjjTPfyIYDemKYpybduwp0tXv8LRmN5gGlA+pC1hF35El5HIVI+TRqvS04F+DeWYFR46s
 J9OAjXkBJppJpMJjk71atANlVEliOfQAOK6UbaYUsxIbVcMYD87jh5+kPIOjIdtgNyoayuAo
 tq3qMDEULOf82cc3lk8teTb83uDgNyo4GlD5wRkO6gR1LPjvyJ94Kw3dPnZw0TQGuG4LsbiL
 87fwbew+H/u/htFIrtJRZ6iLyXm6paLVeS/oiI+t5qK23CulQRrukoPD9IOaF8/ttm8t4sZJ
 OOhF3CHYVxB0qXkwIzxWvTDes10FfUuFLTveRBTvSEPpqFvnrSFL/hGVSkL0YMkFulfPSJJ+
 OAaEhUxaDPEpbO6h4K5ZeN8r5F2RCXrFNt3VnBIyDjYCbAtQIzZQrWM7thdtNsyrpkQR7CEP
 ZNfMGc+KkuYC/FMEg5/5JYWteGknHTgNRZfr0qYv/Ef6GnP1g1hlrPqNbI5f/TTH5QIwBjE+
 T6uE2LRBkEKEtaV9Ge+2FWNvbXU2iqrRNw9LejtnhJtqALKnTFCYPEMbnOrrP/8hkOgVtZ3L
 00P5jFovaU07FasTNT2Q1u/unHsljw2VsdUEuY6wBqQ0aeS6AGcbkAbShZRZdpgs9U5LRQxy
 lKHltXuQydzubeYTXac8La8pDa+fyMSKAcqdSICTAJD+dDsoYg/hxHIU/5qFaLzhdrwcQwc2
 BjT8nJ43e9Ky5dWhuPkpTgrng5AuLD1DQk4+gfte16jzURbNYLiV46H40jyuKMowJmicrWRg
 JQVs5HAvbBUXMjRznzlrPYlRu/zu6jfWNHIqRs/R8N/qm7FF2uLJ9g43d1oGKt+3i/okxfCZ
 1XavUtq/IVSOnSxBUOcS9nqU5tzpUQM+M6Maxw1UjatSsIoHON/1HsyDXN8Jki0+KTWrYkxO
 I2AbeGnBmsABKJswVKeHrlMgeR3m3pumDiLHfgXKihLNpLHOxaopUotagPSPojVEovYyOkqz
 zqvH5TTkEgOOAEPSiLW7ZQSPTg3wYsTXPjLRzhsXrfbeGJOQTh5Y9eImO9JRmCQt/kM/gs+1
 irmAREwJZuWrSCvFDhmnVg6M+61Bcsm/SpiVcHuVH7xs0UejU+UxP93X/MKkXMPrYSPEdYco
 yE5Rvi9
IronPort-HdrOrdr: A9a23:qsIWJ6hTjcd3x99OQ75xuTH6jnBQXh4ji2hC6mlwRA09TyX5ra
 2TdZUgpHrJYVMqMk3I9uruBEDtex3hHP1OkOss1NWZPDUO0VHARO1fBOPZqAEIcBeOldK1u5
 0AT0B/YueAd2STj6zBkXSF+wBL+qj6zEiq792usEuEVWtRGsVdB58SMHfiLqVxLjM2YqYRJd
 6nyedsgSGvQngTZtTTPAh/YwCSz+e78q4PeHQ9dmca1DU=
X-Talos-CUID: 9a23:hnUHvG5LKkJlCSCdWdssyA0TF9wnSFjhylSXAR60TlZrZ7eFYArF
X-Talos-MUID: =?us-ascii?q?9a23=3AR6eebgxJY2i2M/ur1eYcm8Pb7dWaqKD+GGYHm6h?=
 =?us-ascii?q?bgOOjFBcqIHCU3CjpbbZyfw=3D=3D?=
X-IronPort-AV: E=Sophos;i="6.03,254,1694750400"; 
   d="scan'208";a="129566474"
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>, Alejandro Vallejo
	<alejandro.vallejo@cloud.com>, Stefano Stabellini
	<stefano.stabellini@amd.com>, Xenia Ragiadakou <xenia.ragiadakou@amd.com>
Subject: [PATCH v2 0/2] x86: ucode and CPU Kconfig
Date: Thu, 26 Oct 2023 21:55:37 +0100
Message-ID: <20231026205539.3261811-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

A fix to the recent Ucode changes which I ultimately didn't insist on owing to
the Xen 4.18 timeline, and enough of the start on the CPU Kconfig to allow
randconfig to check the boundary.

There are many more ucode fixes to come...

Andrew Cooper (2):
  x86/ucode: Move vendor specifics back out of early_microcode_init()
  x86/Kconfig: Introduce CONFIG_{AMD,INTEL} and conditionalise ucode

 xen/arch/x86/Kconfig                 |  2 ++
 xen/arch/x86/Kconfig.cpu             | 22 ++++++++++++++++++++++
 xen/arch/x86/cpu/microcode/Makefile  |  4 ++--
 xen/arch/x86/cpu/microcode/amd.c     | 10 +++++++++-
 xen/arch/x86/cpu/microcode/core.c    | 16 +++++-----------
 xen/arch/x86/cpu/microcode/intel.c   | 12 ++++++++++--
 xen/arch/x86/cpu/microcode/private.h | 23 ++++++++++++++++++-----
 7 files changed, 68 insertions(+), 21 deletions(-)
 create mode 100644 xen/arch/x86/Kconfig.cpu

-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Thu Oct 26 20:56:02 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 20:56:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623986.972357 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qw7Oc-00009V-F7; Thu, 26 Oct 2023 20:56:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623986.972357; Thu, 26 Oct 2023 20: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 1qw7Oc-00009O-AJ; Thu, 26 Oct 2023 20:56:02 +0000
Received: by outflank-mailman (input) for mailman id 623986;
 Thu, 26 Oct 2023 20: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=MgGv=GI=citrix.com=prvs=656ff9716=Andrew.Cooper3@srs-se1.protection.inumbo.net>)
 id 1qw7Ob-00007h-2p
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 20:56:01 +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 0e697067-7442-11ee-9b0e-b553b5be7939;
 Thu, 26 Oct 2023 22:55: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: 0e697067-7442-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1698353756;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=cksUljEBpHI2dTr+Zw7DMLtraXv4rRT/FaMUALMhyu4=;
  b=JA3neJIBdFqviXXc81/hbfFh5fTGiKNeoBmF8RY9IJAlA29UwxjLCDo9
   Rx+OOMBRlTkYZXczRo9oEWpe1+TC9Ag9kGbSnxEUjWeah8KGp1b8Wwy1l
   rskk7pMC09hYJul4nYJa94yUytZjXeHZbPjbTP1leAjpfaypkLnNlHO0H
   c=;
X-CSE-ConnectionGUID: Plh2vhMCRN65Ck/vfG1nzw==
X-CSE-MsgGUID: XZ9OclyoSF24t+D23kVFhg==
Authentication-Results: esa6.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
X-SBRS: 5.1
X-MesageID: 126012812
X-Ironport-Server: esa6.hc3370-68.iphmx.com
X-Remote-IP: 162.221.159.70
X-Policy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:q1MO46sL8IulF2p9Xor1/hxRn+fnVGheMUV32f8akzHdYApBsoF/q
 tZmKTiBOf2JZWTzKNx3PIjn8h5V6sDWyt43SlQ/rSo2FC4X+JbJXdiXEBz9bniYRiHhoOCLz
 O1FM4Wdc5pkJpP4jk3wWlQ0hSAkjclkfpKlVaicfHg3HFc4IMsYoUoLs/YjhYJ1isSODQqIu
 Nfjy+XSI1bg0DNvWo4uw/vrRChH4rKq41v0gnRkPaoQ5QeEySFPZH4iDfrZw0XQE9E88tGSH
 44v/JnhlkvF8hEkDM+Sk7qTWiXmlZaLYGBiIlIPM0STqkAqSh4ai87XB9JFAatjsB2bnsgZ9
 Tl4ncfYpTHFnEH7sL91vxFwS0mSNEDdkVPNCSDXXce7lyUqf5ZwqhnH4Y5f0YAwo45K7W9yG
 fMwEDQNNA6DosmM5uzmYeormMoMdc/5I9ZK0p1g5Wmx4fcORJnCR+PB5MNC3Sd2jcdLdRrcT
 5NHM3w1Nk2GOkAefAhPYH49tL7Aan3XWjtUsl+K44Ew5HDe1ldZ27nxKtvFPNeNQK25m27B/
 Dyepj6pW0ty2Nq3+QjU1Xmol+j0s3mnRME+Tua7yNBqjwjGroAUIEJPDgbqyRWjsWauVtQaJ
 0EK9y4Gqakp6FftXtT7Rwe/onOPolgbQdU4O+8w5RyJy6HUyx2EHWVCRTlEAPQ5sOcmSDps0
 UWG9/vyGTFhubuSD2mB/72ZqTezPyk9JGoOIyQDSGMt89TloYh1lBvAT99vGa2yk/X8HD22y
 DePxBXSnJ1K05RNjf/iuwma0nTz/vAlUzLZ+C3vWmL/8ANcT7SDOdGD6h/F49kZKpSGGwzpU
 Gc/pySO0AwfJcjTxXzXEbxRRuHBC+WtamOG3QA1d3U133H9oyT9INo4DCRWfh8BDyoSRdP+j
 KY/Uyt644VaODORdbV2ZY2qYyjB5fO7TYu8Phw4g8AnX3SQSONk1Hs3DaJo9zqx+HXAaIlmU
 XthTe6iDGwBFYNsxyesSuEW3NcDn35vlTiPGMqrkk//idJygUJ5rp9cbzOzgh0RtvvY8G05D
 f4DXyd19/mveLKnOXSGmWLiBVsLMWI6FfjLRz9/L4a+zv5dMDh5UZf5mOp5E6Q8xvg9qws91
 izkMqOu4AGk3iOvxMTjQi0LVY4Dqr4m9i9hZXF1bQ7xs5XhCK72hJoim1IMVeFP3IReITRcF
 ZHpp+3o7ixzdwn6
IronPort-HdrOrdr: A9a23:H97Zvqz7MyoV9JnvHlQeKrPwFb1zdoMgy1knxilNoH1uA7Wlfq
 WV9sjzuiWE7Qr5NEtQ++xofZPwIk80lqQV3WByB8bHYOCOggLBR72Kr7GD/9SKIVyYygcy79
 YHT0G8MrHN5JpB4PoSLDPWLz/o+re6zJw=
X-Talos-CUID: 9a23:kwD2U2FkkLXcwDHmqmJf8E5OBMAAWUf7kir7IAimB0kwTq+KHAo=
X-Talos-MUID: =?us-ascii?q?9a23=3AhEwBLA9hAXJNJhVgEop47/aQf/dasoOlDFEKqrt?=
 =?us-ascii?q?c59XHGXYrOAmzjDviFw=3D=3D?=
X-IronPort-AV: E=Sophos;i="6.03,254,1694750400"; 
   d="scan'208";a="126012812"
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>, Alejandro Vallejo <alejandro.vallejo@cloud.com>, "Stefano
 Stabellini" <stefano.stabellini@amd.com>, Xenia Ragiadakou
	<xenia.ragiadakou@amd.com>
Subject: [PATCH v2 1/2] x86/ucode: Move vendor specifics back out of early_microcode_init()
Date: Thu, 26 Oct 2023 21:55:38 +0100
Message-ID: <20231026205539.3261811-2-andrew.cooper3@citrix.com>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <20231026205539.3261811-1-andrew.cooper3@citrix.com>
References: <20231026205539.3261811-1-andrew.cooper3@citrix.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit

I know it was me who dropped microcode_init_{intel,amd}() in c/s
dd5f07997f29 ("x86/ucode: Rationalise startup and family/model checks"), but
times have moved on.  We've gained new conditional support, and a wish to
compile-time specialise Xen to single platform.

(Re)introduce ucode_probe_{amd,intel}() and move the recent vendor specific
additions back out.  Encode the conditional support state in the NULL-ness of
hooks as it's already done on other paths.

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>
CC: Alejandro Vallejo <alejandro.vallejo@cloud.com>
CC: Stefano Stabellini <stefano.stabellini@amd.com>
CC: Xenia Ragiadakou <xenia.ragiadakou@amd.com>

v2:
 * Undo unintentinal operand inversion in early_microcode_init()
---
 xen/arch/x86/cpu/microcode/amd.c     | 10 +++++++++-
 xen/arch/x86/cpu/microcode/core.c    | 16 +++++-----------
 xen/arch/x86/cpu/microcode/intel.c   | 12 ++++++++++--
 xen/arch/x86/cpu/microcode/private.h | 16 ++++++++++------
 4 files changed, 34 insertions(+), 20 deletions(-)

diff --git a/xen/arch/x86/cpu/microcode/amd.c b/xen/arch/x86/cpu/microcode/amd.c
index 75fc84e445ce..17e68697d5bf 100644
--- a/xen/arch/x86/cpu/microcode/amd.c
+++ b/xen/arch/x86/cpu/microcode/amd.c
@@ -434,9 +434,17 @@ static struct microcode_patch *cf_check cpu_request_microcode(
     return patch;
 }
 
-const struct microcode_ops __initconst_cf_clobber amd_ucode_ops = {
+static const struct microcode_ops __initconst_cf_clobber amd_ucode_ops = {
     .cpu_request_microcode            = cpu_request_microcode,
     .collect_cpu_info                 = collect_cpu_info,
     .apply_microcode                  = apply_microcode,
     .compare_patch                    = compare_patch,
 };
+
+void __init ucode_probe_amd(struct microcode_ops *ops)
+{
+    if ( boot_cpu_data.x86 < 0x10 )
+        return;
+
+    *ops = amd_ucode_ops;
+}
diff --git a/xen/arch/x86/cpu/microcode/core.c b/xen/arch/x86/cpu/microcode/core.c
index 65ebeb50deea..3fd1f516e042 100644
--- a/xen/arch/x86/cpu/microcode/core.c
+++ b/xen/arch/x86/cpu/microcode/core.c
@@ -847,25 +847,19 @@ int __init early_microcode_init(unsigned long *module_map,
 {
     const struct cpuinfo_x86 *c = &boot_cpu_data;
     int rc = 0;
-    bool can_load = false;
 
     switch ( c->x86_vendor )
     {
     case X86_VENDOR_AMD:
-        if ( c->x86 >= 0x10 )
-        {
-            ucode_ops = amd_ucode_ops;
-            can_load = true;
-        }
+        ucode_probe_amd(&ucode_ops);
         break;
 
     case X86_VENDOR_INTEL:
-        ucode_ops = intel_ucode_ops;
-        can_load = intel_can_load_microcode();
+        ucode_probe_intel(&ucode_ops);
         break;
     }
 
-    if ( !ucode_ops.apply_microcode )
+    if ( !ucode_ops.collect_cpu_info )
     {
         printk(XENLOG_INFO "Microcode loading not available\n");
         return -ENODEV;
@@ -882,10 +876,10 @@ int __init early_microcode_init(unsigned long *module_map,
      *
      * Take the hint in either case and ignore the microcode interface.
      */
-    if ( this_cpu(cpu_sig).rev == ~0 || !can_load )
+    if ( !ucode_ops.apply_microcode || this_cpu(cpu_sig).rev == ~0 )
     {
         printk(XENLOG_INFO "Microcode loading disabled due to: %s\n",
-               can_load ? "rev = ~0" : "HW toggle");
+               ucode_ops.apply_microcode ? "rev = ~0" : "HW toggle");
         ucode_ops.apply_microcode = NULL;
         return -ENODEV;
     }
diff --git a/xen/arch/x86/cpu/microcode/intel.c b/xen/arch/x86/cpu/microcode/intel.c
index 060c529a6e5d..96f34b336b21 100644
--- a/xen/arch/x86/cpu/microcode/intel.c
+++ b/xen/arch/x86/cpu/microcode/intel.c
@@ -385,7 +385,7 @@ static struct microcode_patch *cf_check cpu_request_microcode(
     return patch;
 }
 
-bool __init intel_can_load_microcode(void)
+static bool __init can_load_microcode(void)
 {
     uint64_t mcu_ctrl;
 
@@ -398,9 +398,17 @@ bool __init intel_can_load_microcode(void)
     return !(mcu_ctrl & MCU_CONTROL_DIS_MCU_LOAD);
 }
 
-const struct microcode_ops __initconst_cf_clobber intel_ucode_ops = {
+static const struct microcode_ops __initconst_cf_clobber intel_ucode_ops = {
     .cpu_request_microcode            = cpu_request_microcode,
     .collect_cpu_info                 = collect_cpu_info,
     .apply_microcode                  = apply_microcode,
     .compare_patch                    = compare_patch,
 };
+
+void __init ucode_probe_intel(struct microcode_ops *ops)
+{
+    *ops = intel_ucode_ops;
+
+    if ( !can_load_microcode() )
+        ops->apply_microcode = NULL;
+}
diff --git a/xen/arch/x86/cpu/microcode/private.h b/xen/arch/x86/cpu/microcode/private.h
index d80787205a5e..b58611e908aa 100644
--- a/xen/arch/x86/cpu/microcode/private.h
+++ b/xen/arch/x86/cpu/microcode/private.h
@@ -60,13 +60,17 @@ struct microcode_ops {
         const struct microcode_patch *new, const struct microcode_patch *old);
 };
 
-/**
- * Checks whether we can perform microcode updates on this Intel system
+/*
+ * Microcode loading falls into one of 3 states.
+ *   - No support at all
+ *   - Read-only (locked by firmware, or we're virtualised)
+ *   - Loading available
  *
- * @return True iff the microcode update facilities are enabled
+ * These are encoded by (not) filling in ops->collect_cpu_info (i.e. no
+ * support available) and (not) ops->apply_microcode (i.e. read only).
+ * Otherwise, all hooks must be filled in.
  */
-bool intel_can_load_microcode(void);
-
-extern const struct microcode_ops amd_ucode_ops, intel_ucode_ops;
+void ucode_probe_amd(struct microcode_ops *ops);
+void ucode_probe_intel(struct microcode_ops *ops);
 
 #endif /* ASM_X86_MICROCODE_PRIVATE_H */
-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Thu Oct 26 21:00:08 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 21:00:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.623981.972365 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qw7Sa-0002CK-1G; Thu, 26 Oct 2023 21:00:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 623981.972365; Thu, 26 Oct 2023 21: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 1qw7SZ-0002Ba-Un; Thu, 26 Oct 2023 21:00:07 +0000
Received: by outflank-mailman (input) for mailman id 623981;
 Thu, 26 Oct 2023 20:38: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=ziZY=GI=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qw77Z-0005RC-N8
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 20:38:25 +0000
Received: from mail-ed1-x52f.google.com (mail-ed1-x52f.google.com
 [2a00:1450:4864:20::52f])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 9b41a08c-743f-11ee-9b0e-b553b5be7939;
 Thu, 26 Oct 2023 22:38:23 +0200 (CEST)
Received: by mail-ed1-x52f.google.com with SMTP id
 4fb4d7f45d1cf-53e07db272cso2036613a12.3
 for <xen-devel@lists.xenproject.org>; Thu, 26 Oct 2023 13:38: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
 v13-20020a170906564d00b009c74c56d71dsm134407ejr.13.2023.10.26.13.38.21
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Thu, 26 Oct 2023 13:38: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: 9b41a08c-743f-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1698352703; x=1698957503; darn=lists.xenproject.org;
        h=in-reply-to:references:cc:to:content-language:subject:user-agent
         :mime-version:date:message-id:from:from:to:cc:subject:date
         :message-id:reply-to;
        bh=3ihhsFU/nSUnwRSa3U0IzPBYmhjw/fViWtSip0TV6cI=;
        b=igp3wdOWdoGeULgHmxFGhdhNAlgv/DBPLT7NiexO+gcqggFNsrXb0KgxhcYWe0ukxT
         msyMRXtd846RzbSbkCHhPAkPyFxVRjfAqaurHXxAVkIsHHCzymSuu0x9jAAF9KXqYNOD
         iWeXj7deI0c9giuGnni/qaW1k0gY5vC3MajAk=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698352703; x=1698957503;
        h=in-reply-to:references:cc:to:content-language:subject:user-agent
         :mime-version:date:message-id:from:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=3ihhsFU/nSUnwRSa3U0IzPBYmhjw/fViWtSip0TV6cI=;
        b=GLnbxIPic7L41g50sgfKln+VPRVn61FiX0UrkkHuf02vV+d0i5LzA//9WRryZlw7Jw
         cJowxikGmF7wM9DFP5U7wMpnfYey6q65BdV2ZJQn6vW85XF0Drmgw+bjUC7EFPIqUFo0
         fifq+6nC1/j30K4j3HIPsbw54/12uZYZEIyQc3fmKhMpruyZ7ucueNZUqu83Xs3vvk2a
         y/QrCg5TmYgERzZj6UX3h8p4EN0uN3bVLZT/eoGQ/Psyg3p7azm7yTg8Ui+7OxucGeos
         0y7bc/GJGEAufVtVx38iPQ4FS7AMO6vm7allcAH7Vqnr3EH1vj4GMZCBTb1uIIsxvbsp
         xATw==
X-Gm-Message-State: AOJu0YwMZind+XlnI8fpNJZATeZzxaHqMiA+hvZ0bP6V4gTzujQx8Syp
	q8nV5QwGyb7lD1oXR6woyjPEeA==
X-Google-Smtp-Source: AGHT+IHPwP35BrQuWWbkjpb9lg6ZaJFkrfypOowO3wMiIHWO/swPhpkZKuAbeujVi6T+OCAZSMT0Ww==
X-Received: by 2002:a17:907:86aa:b0:9c3:c2e1:a38e with SMTP id qa42-20020a17090786aa00b009c3c2e1a38emr531570ejc.15.1698352702475;
        Thu, 26 Oct 2023 13:38:22 -0700 (PDT)
From: Andrew Cooper <andrew.cooper@cloud.com>
X-Google-Original-From: Andrew Cooper <Andrew.Cooper3@citrix.com>
Content-Type: multipart/alternative;
 boundary="------------9r0cd0WBMc4YK0pWl5Gv8CCB"
Message-ID: <977389d6-43e1-4731-a748-7d8f86de0a74@citrix.com>
Date: Thu, 26 Oct 2023 21:38:21 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [RFC PATCH 22/22] x86/AMD: add IRPerf support
Content-Language: en-GB
To: Edwin Torok <edwin.torok@cloud.com>
Cc: Xen-devel <xen-devel@lists.xenproject.org>,
 =?UTF-8?B?RWR3aW4gVMO2csO2aw==?= <edvin.torok@citrix.com>,
 Jan Beulich <jbeulich@suse.com>, =?UTF-8?Q?Roger_Pau_Monn=C3=A9?=
 <roger.pau@citrix.com>, Wei Liu <wl@xen.org>
References: <cover.1698261255.git.edwin.torok@cloud.com>
 <6cd765e98fa4888b9e94215f3572a94e95fe2a4b.1698261255.git.edwin.torok@cloud.com>
 <20d0e946-f156-4472-a253-7517e831f44d@citrix.com>
 <A9ACEDF9-0A4B-45D2-90A2-92D9EEB89A9B@cloud.com>
In-Reply-To: <A9ACEDF9-0A4B-45D2-90A2-92D9EEB89A9B@cloud.com>

This is a multi-part message in MIME format.
--------------9r0cd0WBMc4YK0pWl5Gv8CCB
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 26/10/2023 5:39 pm, Edwin Torok wrote:
>> On 25 Oct 2023, at 21:59, Andrew Cooper <Andrew.Cooper3@citrix.com> wrote:
>>
>> On 25/10/2023 8:29 pm, Edwin Török wrote:
>>> diff --git a/xen/arch/x86/msr.c b/xen/arch/x86/msr.c
>>> index 483b5e4f70..b3cd851d9d 100644
>>> --- a/xen/arch/x86/msr.c
>>> +++ b/xen/arch/x86/msr.c
>>> @@ -584,6 +584,13 @@ int guest_wrmsr(struct vcpu *v, uint32_t msr, uint64_t val)
>>>         }
>>>         break;
>>>
>>> +    case MSR_K8_HWCR:
>>> +        if ( !(cp->x86_vendor & X86_VENDOR_AMD) ||
>>> +             (val & ~K8_HWCR_IRPERF_EN) ||
>>> +             wrmsr_safe(msr, val) != 0 )
>>> +            goto gp_fault;
>>> +        break;
>>> +
>>>     case MSR_AMD64_DE_CFG:
>>>         /*
>>>          * OpenBSD 6.7 will panic if writing to DE_CFG triggers a #GP:
>>> diff --git a/xen/include/public/arch-x86/cpufeatureset.h b/xen/include/public/arch-x86/cpufeatureset.h
>>> index 5faca0bf7a..40f74cd5e8 100644
>>> --- a/xen/include/public/arch-x86/cpufeatureset.h
>>> +++ b/xen/include/public/arch-x86/cpufeatureset.h
>>> @@ -241,7 +241,7 @@ XEN_CPUFEATURE(EFRO,          7*32+10) /*   APERF/MPERF Read Only interface */
>>>
>>> /* AMD-defined CPU features, CPUID level 0x80000008.ebx, word 8 */
>>> XEN_CPUFEATURE(CLZERO,        8*32+ 0) /*A  CLZERO instruction */
>>> -XEN_CPUFEATURE(IRPERF,        8*32+ 1) /* Instruction Retired Performance Counter */
>>> +XEN_CPUFEATURE(IRPERF,        8*32+ 1) /*A! Instruction Retired Performance Counter */
>>> XEN_CPUFEATURE(RSTR_FP_ERR_PTRS, 8*32+ 2) /*A  (F)X{SAVE,RSTOR} always saves/restores FPU Error pointers */
>>> XEN_CPUFEATURE(WBNOINVD,      8*32+ 9) /*   WBNOINVD instruction */
>>> XEN_CPUFEATURE(IBPB,          8*32+12) /*A  IBPB support only (no IBRS, used by AMD) */
>> Last things first.  You can advertise this bit to guests, but I'm
>> looking at the AMD manuals and woefully little information on what this
>> is an how it works.
>>
>> It does have an architectural enumeration, but there isn't even a a
>> description of what HWCR.IPERF_EN does.
>>
>> The HWCR documentation says "enables Core::X86::Msr::IRPerfCount", but
>> the IRPERF MSR says no such think,
>> noting only that EFRO_LOCK makes the
>> MSR non-writeable (which in turn means we can't always offer it to
>> guests anyway.  See below).
>> At a guess, the HWCR bit activates the counter, but nothing states
>> this.
>
> My version (https://www.amd.com/content/dam/amd/en/documents/processor-tech-docs/programmer-references/24593.pdf) says:
> "This is a dedicated counter that is always counting instructions retired. It exists at MSR address C000_00E9. It is enabled by setting a 1 to HWCR[30] and its support is indicated by CPUID Fn8000_0008_EBX[1]."
>
> Although digging a bit more there are some erratas around deep C states on some chips and the HWCR register itself is not global but per CCD (which is neatly buried in the _ccd[7:0]_.... smallprint at the top:
> https://github.com/cyring/CoreFreq/issues/206#issuecomment-722713147

HWCR is per-thread, and that's what both screenshots there say.  Ryzen's
don't typically have CCDs, which is why CCD is missing from the scope
description.

Consider the implications of making bit 30 work if the MSR was CCD-wide,
seeing as the counting really does need to be done in at the core level.

Or for that matter bit 35 (the CPUID-faulting enable bit).
>>   At a guess, it's a free-running, reset-able counter, but again
>> nothing states this.  The manual just says "is a dedicated counter" and
>> doesn't even state whether it is (or is not) tied into the other core
>> fixed counters and whether it is integrated with PMI or not.
> There is also a LWP 'Instructions Retired' described in 13.4.2.2, which is user-mode only and per-core, but I assume that is completely different from this MSR
> and part of the features that got dropped in newer cores.

LWP doesn't exist any more, even in older processors.

It was the feature sacrificed to make enough microcode space to retrofit
IBPB in microcode for speculation protections.

~Andrew
--------------9r0cd0WBMc4YK0pWl5Gv8CCB
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: 8bit

<!DOCTYPE html>
<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body>
    <div class="moz-cite-prefix">On 26/10/2023 5:39 pm, Edwin Torok
      wrote:<span style="white-space: pre-wrap">
</span></div>
    <blockquote type="cite"
      cite="mid:A9ACEDF9-0A4B-45D2-90A2-92D9EEB89A9B@cloud.com">
      <blockquote type="cite">
        <pre class="moz-quote-pre" wrap="">On 25 Oct 2023, at 21:59, Andrew Cooper <a class="moz-txt-link-rfc2396E" href="mailto:Andrew.Cooper3@citrix.com">&lt;Andrew.Cooper3@citrix.com&gt;</a> wrote:

On 25/10/2023 8:29 pm, Edwin Török wrote:
</pre>
        <blockquote type="cite">
          <pre class="moz-quote-pre" wrap="">diff --git a/xen/arch/x86/msr.c b/xen/arch/x86/msr.c
index 483b5e4f70..b3cd851d9d 100644
--- a/xen/arch/x86/msr.c
+++ b/xen/arch/x86/msr.c
@@ -584,6 +584,13 @@ int guest_wrmsr(struct vcpu *v, uint32_t msr, uint64_t val)
        }
        break;

+    case MSR_K8_HWCR:
+        if ( !(cp-&gt;x86_vendor &amp; X86_VENDOR_AMD) ||
+             (val &amp; ~K8_HWCR_IRPERF_EN) ||
+             wrmsr_safe(msr, val) != 0 )
+            goto gp_fault;
+        break;
+
    case MSR_AMD64_DE_CFG:
        /*
         * OpenBSD 6.7 will panic if writing to DE_CFG triggers a #GP:
diff --git a/xen/include/public/arch-x86/cpufeatureset.h b/xen/include/public/arch-x86/cpufeatureset.h
index 5faca0bf7a..40f74cd5e8 100644
--- a/xen/include/public/arch-x86/cpufeatureset.h
+++ b/xen/include/public/arch-x86/cpufeatureset.h
@@ -241,7 +241,7 @@ XEN_CPUFEATURE(EFRO,          7*32+10) /*   APERF/MPERF Read Only interface */

/* AMD-defined CPU features, CPUID level 0x80000008.ebx, word 8 */
XEN_CPUFEATURE(CLZERO,        8*32+ 0) /*A  CLZERO instruction */
-XEN_CPUFEATURE(IRPERF,        8*32+ 1) /* Instruction Retired Performance Counter */
+XEN_CPUFEATURE(IRPERF,        8*32+ 1) /*A! Instruction Retired Performance Counter */
XEN_CPUFEATURE(RSTR_FP_ERR_PTRS, 8*32+ 2) /*A  (F)X{SAVE,RSTOR} always saves/restores FPU Error pointers */
XEN_CPUFEATURE(WBNOINVD,      8*32+ 9) /*   WBNOINVD instruction */
XEN_CPUFEATURE(IBPB,          8*32+12) /*A  IBPB support only (no IBRS, used by AMD) */
</pre>
        </blockquote>
        <pre class="moz-quote-pre" wrap="">
Last things first.  You can advertise this bit to guests, but I'm
looking at the AMD manuals and woefully little information on what this
is an how it works.

It does have an architectural enumeration, but there isn't even a a
description of what HWCR.IPERF_EN does.

The HWCR documentation says "enables Core::X86::Msr::IRPerfCount", but
the IRPERF MSR says no such think,
</pre>
      </blockquote>
      <pre class="moz-quote-pre" wrap="">
</pre>
      <blockquote type="cite">
        <pre class="moz-quote-pre" wrap="">noting only that EFRO_LOCK makes the
MSR non-writeable (which in turn means we can't always offer it to
guests anyway.  See below).
</pre>
      </blockquote>
      <pre class="moz-quote-pre" wrap="">
</pre>
      <blockquote type="cite">
        <pre class="moz-quote-pre" wrap="">At a guess, the HWCR bit activates the counter, but nothing states
this.
</pre>
      </blockquote>
      <pre class="moz-quote-pre" wrap="">

My version (<a class="moz-txt-link-freetext" href="https://www.amd.com/content/dam/amd/en/documents/processor-tech-docs/programmer-references/24593.pdf">https://www.amd.com/content/dam/amd/en/documents/processor-tech-docs/programmer-references/24593.pdf</a>) says:
"This is a dedicated counter that is always counting instructions retired. It exists at MSR address C000_00E9. It is enabled by setting a 1 to HWCR[30] and its support is indicated by CPUID Fn8000_0008_EBX[1]."

Although digging a bit more there are some erratas around deep C states on some chips and the HWCR register itself is not global but per CCD (which is neatly buried in the _ccd[7:0]_.... smallprint at the top:
<a class="moz-txt-link-freetext" href="https://github.com/cyring/CoreFreq/issues/206#issuecomment-722713147">https://github.com/cyring/CoreFreq/issues/206#issuecomment-722713147</a></pre>
    </blockquote>
    <br>
    HWCR is per-thread, and that's what both screenshots there say. 
    Ryzen's don't typically have CCDs, which is why CCD is missing from
    the scope description.<br>
    <br>
    Consider the implications of making bit 30 work if the MSR was
    CCD-wide, seeing as the counting really does need to be done in at
    the core level.<br>
    <br>
    Or for that matter bit 35 (the CPUID-faulting enable bit).<br>
    <span style="white-space: pre-wrap">

</span>
    <blockquote type="cite"
      cite="mid:A9ACEDF9-0A4B-45D2-90A2-92D9EEB89A9B@cloud.com">
      <blockquote type="cite">
        <pre class="moz-quote-pre" wrap="">  At a guess, it's a free-running, reset-able counter, but again
nothing states this.  The manual just says "is a dedicated counter" and
doesn't even state whether it is (or is not) tied into the other core
fixed counters and whether it is integrated with PMI or not.
</pre>
      </blockquote>
      <pre class="moz-quote-pre" wrap="">
There is also a LWP 'Instructions Retired' described in 13.4.2.2, which is user-mode only and per-core, but I assume that is completely different from this MSR
and part of the features that got dropped in newer cores.</pre>
    </blockquote>
    <br>
    LWP doesn't exist any more, even in older processors.<br>
    <br>
    It was the feature sacrificed to make enough microcode space to
    retrofit IBPB in microcode for speculation protections.<br>
    <br>
    ~Andrew<br>
  </body>
</html>

--------------9r0cd0WBMc4YK0pWl5Gv8CCB--


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 22:35:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 22:35:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624031.972395 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qw8wK-0001tN-7K; Thu, 26 Oct 2023 22:34:56 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624031.972395; Thu, 26 Oct 2023 22:34: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 1qw8wK-0001tG-4A; Thu, 26 Oct 2023 22:34:56 +0000
Received: by outflank-mailman (input) for mailman id 624031;
 Thu, 26 Oct 2023 22:34: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=z2QB=GI=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qw8wI-0001tA-Cj
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 22:34:54 +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 df16ef51-744f-11ee-9b0e-b553b5be7939;
 Fri, 27 Oct 2023 00:34:49 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by ams.source.kernel.org (Postfix) with ESMTP id 66073B816EF;
 Thu, 26 Oct 2023 22:34:48 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id ABF64C433C8;
 Thu, 26 Oct 2023 22:34: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: df16ef51-744f-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1698359687;
	bh=Osdx7hfaNFBaK3eeztfPGOHqBfwVnUuPl93jRNhqnVY=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=I8W7llEnX4ngrtyb+hTnTuAZbYvUe9Jj/dOrCoKvNHxSs8G/7zTdToFVkYuCBLd3W
	 Fmgr0aJGm2sc0ZU7y8ppjIXEJBqzC9GoMW1qrbUzQ5RViIjCMv53T1cAs1+jjCJVnT
	 jISdIXeCRZ6xVZ2T3YnQXBO21dYpBTmSSUC5LLpi2HbsQ/6Oh8vLzCzxWeyKQG6/UQ
	 eyyNrasSoWeowheqGHKujpAVLkWfEYopzZhfovtBdt9nI25MYxPHBwRVIxuq1FLV2R
	 63Kdx5Hx0NSfPGt9z3VrTGRpAw1vHxbDHZGNJgMtHeku5nmMBRRqfvE+XjBodURPNP
	 z/1ev88bU/R9A==
Date: Thu, 26 Oct 2023 15:34:45 -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>, julien@xen.org, 
    bertrand.marquis@arm.com, andrew.cooper3@citrix.com, roger.pau@citrix.com, 
    george.dunlap@citrix.com, xen-devel@lists.xenproject.org
Subject: Re: [PATCH] misra: add R14.4 R21.1 R21.2
In-Reply-To: <abd5c802-00c0-eda6-05ef-d10260ddb383@suse.com>
Message-ID: <alpine.DEB.2.22.394.2310261533050.271731@ubuntu-linux-20-04-desktop>
References: <alpine.DEB.2.22.394.2310231628500.3516@ubuntu-linux-20-04-desktop> <967caedc-3d10-dee4-6614-1b9dcc0c1c66@suse.com> <alpine.DEB.2.22.394.2310241753220.271731@ubuntu-linux-20-04-desktop> <1e2991d7-b7b5-2fdd-38e0-ee1eff607f0e@suse.com>
 <alpine.DEB.2.22.394.2310251759560.271731@ubuntu-linux-20-04-desktop> <abd5c802-00c0-eda6-05ef-d10260ddb383@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, 26 Oct 2023, Jan Beulich wrote:
> On 26.10.2023 03:16, Stefano Stabellini wrote:
> > On Wed, 25 Oct 2023, Jan Beulich wrote:
> >> On 25.10.2023 03:15, Stefano Stabellini wrote:
> >>> And if we can find a clear general comment about the usage of leading
> >>> underscores in Xen I am happy to add it too (e.g. header guards), but
> >>> from MISRA point of view the above is sufficient.
> >>
> >> But what we need isn't a description of the status quo, but one of
> >> what state we want to (slowly) move to. The status quo anyway is
> >> "no pattern, as in the past hardly anyone cared".
> > 
> > I guess you are suggesting something more like the following, but please
> > feel free to suggest your favorite wording (it might be easier for me to
> > understand what you mean if you provide a short example).
> > 
> > ---
> > All identifiers starting with an underscore are reserved and should not
> > be used.
> 
> Again, no. Identifiers starting with an underscore followed by another
> underscore or an upper-case letter are reserved. Other identifiers are
> dedicated for a particular purpose, and are fine to use for (at least)
> that purpose.
> 
> > Today Xen uses many, such as header guards and bitwise
> > manipulation functions. Upon analysis it turns out Xen identifiers do
> > not clash with the identifiers used by modern GCC, but that is not a
> > guarantee that there won't be a naming clash in the future or with
> > another compiler. For these reasons we discourage the introduction of
> > new reserved identifiers in Xen, and we see it as positive the reduction
> > of reserved identifiers. At the same time, certain identifiers starting
> > with an underscore are also commonly used in Linux (e.g. __set_bit) and
> > we don't think it would be an improvement to rename them.
> 
> Everything else reads okay-ish to me.

OK, here is the new version

Identifiers starting with an underscore followed by another underscore
or an upper-case letter are reserved. Today Xen uses many, such as
header guards and bitwise manipulation functions. Upon analysis it turns
out Xen identifiers do not clash with the identifiers used by modern
GCC, but that is not a guarantee that there won't be a naming clash in
the future or with another compiler.  For these reasons we discourage
the introduction of new reserved identifiers in Xen, and we see it as
positive the reduction of reserved identifiers. At the same time,
certain identifiers starting with an underscore are also commonly used
in Linux (e.g. __set_bit) and we don't think it would be an improvement
to rename them.


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 22:51:10 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 22:51:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624036.972404 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qw9Bu-0004kX-Cn; Thu, 26 Oct 2023 22:51:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624036.972404; Thu, 26 Oct 2023 22: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 1qw9Bu-0004kQ-AI; Thu, 26 Oct 2023 22:51:02 +0000
Received: by outflank-mailman (input) for mailman id 624036;
 Thu, 26 Oct 2023 22:51: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=z2QB=GI=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qw9Bs-0004kK-Gw
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 22:51:00 +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 206bd313-7452-11ee-98d5-6d05b1d4d9a1;
 Fri, 27 Oct 2023 00:50:58 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by dfw.source.kernel.org (Postfix) with ESMTP id C9C99636A9;
 Thu, 26 Oct 2023 22:50:56 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id C4F1EC433C7;
 Thu, 26 Oct 2023 22:50:54 +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: 206bd313-7452-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1698360656;
	bh=p88YY7AX2lwSaN8Z95uq859/EZplpPzZHphm5bShQ2U=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=Gw3vvf/dbLthBRRvow1181Dt892nFZZimhUAyLYG48PlpUrGf1Mgb9gkeN9Hj5Xm5
	 9dpyOybMQwE837/OFaA3ZOtK5+in2X7mdWigOci2cno55w6n4zf1iNyVD824O+y8Xp
	 xNg3Sp4IipPl5Ya31Q0ugYrXZbqKLVPPnkVmmQoue1zxRoX7pHRRATh+KGpkRBWjYS
	 y7slpemXybZWDUrTOg6oD2lBIMrPqMtqvXS03unc7rAellYPUBHRmkBCQTBhjztpuo
	 PVbM7jjis0Mp/jnfJlZAlOtDuLGF4WiyJDCSTBV85ASxdWqlvlG+XYeCD/9DMnvMnp
	 p60KGDchCUCDQ==
Date: Thu, 26 Oct 2023 15:50:53 -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>, 
    Stefano Stabellini <stefano.stabellini@amd.com>, 
    Simone Ballarin <simone.ballarin@bugseng.com>, consulting@bugseng.com, 
    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>, 
    Doug Goldstein <cardoe@cardoe.com>, 
    Bertrand Marquis <bertrand.marquis@arm.com>, 
    Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, 
    xen-devel@lists.xenproject.org, Julien Grall <julien@xen.org>
Subject: Re: [XEN PATCH v2 00/10] address violations of MISRA C:2012 Directive
 4.10
In-Reply-To: <1ec482ba-e334-3120-dbe5-fc1e5a29f9fe@suse.com>
Message-ID: <alpine.DEB.2.22.394.2310261550370.271731@ubuntu-linux-20-04-desktop>
References: <cover.1694510856.git.simone.ballarin@bugseng.com> <alpine.DEB.2.22.394.2310181739270.965337@ubuntu-linux-20-04-desktop> <e642bc2a-cefa-4ee4-6394-3c10102e8164@suse.com> <alpine.DEB.2.22.394.2310190915590.1945130@ubuntu-linux-20-04-desktop>
 <6374f0f4-d58f-83ca-6eb3-d5a9fcbac525@suse.com> <alpine.DEB.2.22.394.2310201622160.2356865@ubuntu-linux-20-04-desktop> <36e6dd08-918c-9791-0dab-ca75d4b98d7e@suse.com> <alpine.DEB.2.22.394.2310231346370.3516@ubuntu-linux-20-04-desktop>
 <af4a86bc-40d3-4363-adc8-30981652cd2b@xen.org> <c1fa350f-6f49-e2b1-0cda-dec99df415ae@suse.com> <alpine.DEB.2.22.394.2310241254480.271731@ubuntu-linux-20-04-desktop> <f546b8dc-baa8-c178-12be-70f7c1a8fec8@suse.com> <50b3a500-aa7d-4d3d-8bcf-220f8ee69b0e@xen.org>
 <f6b207c6-4bc2-e172-428c-a2e3294cc490@suse.com> <1fc2c191-79b7-43fc-9068-5605e741c243@xen.org> <alpine.DEB.2.22.394.2310251408030.271731@ubuntu-linux-20-04-desktop> <1ec482ba-e334-3120-dbe5-fc1e5a29f9fe@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, 26 Oct 2023, Jan Beulich wrote:
> On 25.10.2023 23:12, Stefano Stabellini wrote:
> > On Wed, 25 Oct 2023, Julien Grall wrote:
> >> On 25/10/2023 17:01, Jan Beulich wrote:
> >>> On 25.10.2023 17:58, Julien Grall wrote:
> >>>> On 25/10/2023 09:18, Jan Beulich wrote:
> >>>>> On 24.10.2023 21:59, Stefano Stabellini wrote:
> >>>>>> If I understood correctly I am fine with that. To make sure we are all
> >>>>>> on the same page, can you provide a couple of samples?
> >>>>>
> >>>>> Taking the earlier example, instead of DRIVERS_PASSTHROUGH_VTD_DMAR_H it
> >>>>> would then be VTD_DMAR_H. arch/x86/pv/mm.h would use PV_MM_H, but then
> >>>>> you can already see that a hypothetical arch/x86/mm.h would use
> >>>>> X86_MM_H,
> >>>>> thus colliding with what your proposal would also yield for
> >>>>> arch/x86/include/asm/mm.h. So maybe private header guards should come
> >>>>> with e.g. a trailing underscore? Or double underscores as component
> >>>>> separators, where .../include/... use only single underscores? Or
> >>>>> headers in arch/*/include/asm/ use ASM_<name>_H (i.e. not making the
> >>>>> architecture explicit in the guard name, on the grounds that headers
> >>>>> from multiple architectures shouldn't be included at the same time)?
> >>>> Thanks for providing some details.  The proposal for private headers
> >>>> make sense. For arch/.../include/asm/ headers, I would strongly prefer
> >>>> if we use prefix them with ASM_*.
> >>>>
> >>>> As a side note, I am guessing for asm-generic, we would want to use
> >>>> ASM_GENERIC_* for the guard prefix. Is that correct?
> >>>
> >>> That was an assumption I was working from, yes. Could also be just
> >>> GENERIC_ afaic.
> >>
> >> Thanks for the confirmation. I am fine with either GENERIC_ or ASM_GENERIC_.
> > 
> > OK. So in summary:
> > - arch/.../include/asm/ headers would use ASM_<filename>_H
> > - private headers would use <dir>_<filename>_H
> > - asm-generic headers would use ASM_GENERIC_<filename>_H
> > 
> > If that's agreed, we can move forward with the patch following this
> > scheme.
> 
> FTAOD - just as long as <dir> is clarified to mean only the leaf-most
> directory component (assuming we're still talking about the most
> recently proposed scheme and we deem the risk of collisions low enough
> there).

Yes, that's what I meant.


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 22:52:36 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 22:52:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624039.972415 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qw9DO-0005Jo-Oy; Thu, 26 Oct 2023 22:52:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624039.972415; Thu, 26 Oct 2023 22: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 1qw9DO-0005Jh-Le; Thu, 26 Oct 2023 22:52:34 +0000
Received: by outflank-mailman (input) for mailman id 624039;
 Thu, 26 Oct 2023 22: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=z2QB=GI=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qw9DO-0005Jb-6V
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 22:52:34 +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 58de0b02-7452-11ee-98d5-6d05b1d4d9a1;
 Fri, 27 Oct 2023 00:52:33 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by dfw.source.kernel.org (Postfix) with ESMTP id E5C9B636A9;
 Thu, 26 Oct 2023 22:52:31 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 08917C433C8;
 Thu, 26 Oct 2023 22:52: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: 58de0b02-7452-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1698360751;
	bh=rnd3SE9AhS3Va3e5e0y19CpQoB/A4x1aD4Z4DbG0T7A=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=ZmzfzrekwuswLJ3Gf3XXbbP/ggqqtnb3pDFH76HBSzMxpAZCcNEgsfO6WqmfR0JjO
	 VsHiIa0PBh5rqEM/pqZu/mDRfyz99oXitE4iEbp0dSrLgtFgewPDiAcMbRRv1N1Hai
	 1sWD7qfRm3AKIjOEfEyH2o06p5FmSXNYr9EUMqOtL2opGChWCrOZWXtSX9i850N1Er
	 YNtEKE8G+TuyFzLtJAG7Z8HhsDzxNUqVLZWLbpkRAT2lxioPNnfj5mzERIsgDfkZ2L
	 8Xb6zX8MfuK0m/25ipSOlGsAOEXtJ5PXTJoSXx6bQ6kMaXFRnr4wy+dYJwNboLiYLW
	 u9qlXm4mgDWvg==
Date: Thu, 26 Oct 2023 15:52:28 -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>, michal.orzel@amd.com, 
    xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, 
    consulting@bugseng.com, andrew.cooper3@citrix.com, roger.pau@citrix.com, 
    Wei Liu <wl@xen.org>, Jun Nakajima <jun.nakajima@intel.com>, 
    Kevin Tian <kevin.tian@intel.com>, xen-devel@lists.xenproject.org
Subject: Re: [XEN PATCH][for-4.19 v4 3/8] x86: add deviation comments for
 asm-only functions
In-Reply-To: <843362b110e38fcddf5d0c4b1ff95099@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2310261551540.271731@ubuntu-linux-20-04-desktop>
References: <cover.1698053876.git.nicola.vetrini@bugseng.com> <36d24b3a3e264f0e0b265b4f68d6432a143d64cd.1698053876.git.nicola.vetrini@bugseng.com> <a8370e98-1cb6-8fde-9458-e579047dd607@suse.com> <2d92ef1f753165e2fa9cc7c04c219217@bugseng.com>
 <52422128-156d-5d6c-46b2-261b1c7e85c0@suse.com> <734cc13409b44f709649895d76d388e2@bugseng.com> <alpine.DEB.2.22.394.2310241249080.271731@ubuntu-linux-20-04-desktop> <d60e17379fbfdb1288288ee079113a17@bugseng.com> <alpine.DEB.2.22.394.2310251535320.271731@ubuntu-linux-20-04-desktop>
 <843362b110e38fcddf5d0c4b1ff95099@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, 26 Oct 2023, Nicola Vetrini wrote:
> On 26/10/2023 00:36, Stefano Stabellini wrote:
> > On Wed, 25 Oct 2023, Nicola Vetrini wrote:
> > > On 24/10/2023 21:50, Stefano Stabellini wrote:
> > > > On Tue, 24 Oct 2023, Nicola Vetrini wrote:
> > > > > On 24/10/2023 10:14, Jan Beulich wrote:
> > > > > > On 24.10.2023 10:01, Nicola Vetrini wrote:
> > > > > > > On 24/10/2023 09:50, Jan Beulich wrote:
> > > > > > > > On 23.10.2023 11:56, Nicola Vetrini wrote:
> > > > > > > > > As stated in rules.rst, functions used only in asm code
> > > > > > > > > are allowed to have no prior declaration visible when being
> > > > > > > > > defined, hence these functions are deviated.
> > > > > > > > > This also fixes violations of MISRA C:2012 Rule 8.4.
> > > > > > > > >
> > > > > > > > > Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
> > > > > > > > > Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
> > > > > > > > > ---
> > > > > > > > > Changes in v3:
> > > > > > > > > - added SAF deviations for vmx counterparts to svm functions.
> > > > > > > >
> > > > > > > > Same comment regarding the R-b here as for patch 2.
> > > > > > > >
> > > > > > > > > --- a/xen/arch/x86/hvm/svm/intr.c
> > > > > > > > > +++ b/xen/arch/x86/hvm/svm/intr.c
> > > > > > > > > @@ -123,6 +123,7 @@ static void svm_enable_intr_window(struct
> > > vcpu
> > > > > *v,
> > > > > > > > > struct hvm_intack intack)
> > > > > > > > >          vmcb, general1_intercepts |
> > > GENERAL1_INTERCEPT_VINTR);
> > > > > > > > >  }
> > > > > > > > >
> > > > > > > > > +/* SAF-1-safe */
> > > > > > > > >  void svm_intr_assist(void)
> > > > > > > > >  {
> > > > > > > > >      struct vcpu *v = current;
> > > > > > > >
> > > > > > > > Linux has the concept of "asmlinkage" for functions interfacing
> > > C
> > > > > and
> > > > > > > > assembly. Was it considered to use that - even if expanding to
> > > > > nothing
> > > > > > > > for all present architectures - as a way to annotate affected
> > > > > > > > definitions
> > > > > > > > in place of the SAF-*-safe comments?
> > > > > > >
> > > > > > > It was proposed by Julien a while ago (I think it the thread on
> > > > > > > deviations.rst) to define
> > > > > > > a macro asmcall that expands to nothing, to mark all such
> > > functions.
> > > > > > > Right now, it's not
> > > > > > > strictly necessary (given that there are already some uses of SAF
> > > in
> > > > > > > Stefano's for-4.19 branch.
> > > > > >
> > > > > > Can this then be revisited please before any such reaches staging?
> > > > > >
> > > > > > Jan
> > > > >
> > > > > I'll let Stefano answer this one.
> > > >
> > > > Yes it can. If Nicola sends new patches I'll make sure to remove the
> > > > corresponding ones from for-4.19.
> > > >
> > > > Nicola, you might want to send me privately the list of commits to take
> > > > out from for-4.19.
> > > 
> > > Actually I checked: the involved SAF comments are already in staging,
> > > specifically all
> > > were part of commit 5a415ef2b24d578d29479e38abda3d5285b9afed
> > 
> > OK. In that case we can still use the asmcall macro to deviate/fix new
> > violations. I suggest we do that. At some point anyone can go ahead and
> > replace those SAF comments with asmcall macros.
> 
> Perhaps asmlinkage is a better fit, so that it wouldn't sound strange applying
> it to
> variables.

asmlinkage is good


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 22:55:37 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 22:55:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624044.972425 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qw9GK-0006XG-9n; Thu, 26 Oct 2023 22:55:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624044.972425; Thu, 26 Oct 2023 22:55: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 1qw9GK-0006X9-6j; Thu, 26 Oct 2023 22:55:36 +0000
Received: by outflank-mailman (input) for mailman id 624044;
 Thu, 26 Oct 2023 22:55: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=z2QB=GI=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qw9GI-0006X2-Ju
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 22:55:34 +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 c35d8c5e-7452-11ee-9b0e-b553b5be7939;
 Fri, 27 Oct 2023 00:55:31 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by ams.source.kernel.org (Postfix) with ESMTP id 331B1B838C7;
 Thu, 26 Oct 2023 22:55:31 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 1443CC433C7;
 Thu, 26 Oct 2023 22:55: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: c35d8c5e-7452-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1698360930;
	bh=sjzAs2kB7Yt1VR00WlnBdYGml5lr1Z24NgHzVrO0Y4g=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=DITmvRUJO/djjpBRCKu28IuxdyP3ck5DWe9CKA3VCthzo0Pfm8Jj/GirbzKKK0LBW
	 6zaLEI2TYoC64AVyMAOUUwzH4Rl0vwatOwt1xmYI5U8gHm62z24LxKIAyEUtOLFaLC
	 8mZU4jB+6+1dBlHVq8bVAmT9ZDZ2axfdxpC/x/NrbKdpd+/mlAXg8ahCyAp7HJFJa+
	 7v4ItU8xwRayXPgQwb2gUUa88ROfnQPGWKHOqYrjkyqODq7eQP8Hldpb8ZtWb/P4Aw
	 R3TcfBZ0xUAA0/MxdTJCYeCEDZMJb0q00XW5bEmG9AmFl8ei0Z42/6/BXgvdbIg+Rh
	 vQsClVdHd0Otg==
Date: Thu, 26 Oct 2023 15:55:27 -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, 
    Simone Ballarin <simone.ballarin@bugseng.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>, 
    Wei Liu <wl@xen.org>, roger.pau@citrix.com
Subject: Re: [XEN PATCH v2] automation/eclair: add deviations for MISRA C:2012
 Rule 8.3
In-Reply-To: <32f63354-872d-4598-a5ce-c851cacfc6d4@xen.org>
Message-ID: <alpine.DEB.2.22.394.2310261554570.271731@ubuntu-linux-20-04-desktop>
References: <1c146f28cb19607ddd6741de4f7de051894a3381.1698314415.git.federico.serafini@bugseng.com> <662e9080-5648-47eb-95e6-41fcb618c68f@xen.org> <1f137be0-452d-4073-a79c-ffd8a501e434@bugseng.com> <831e23c2-f30d-4931-8749-99e4b9c4215b@xen.org>
 <66e59c25-fa6f-4fa4-aae8-aefa0b52c3b4@bugseng.com> <32f63354-872d-4598-a5ce-c851cacfc6d4@xen.org>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: multipart/mixed; BOUNDARY="8323329-1503129938-1698360900=:271731"
Content-ID: <alpine.DEB.2.22.394.2310261555080.271731@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-1503129938-1698360900=:271731
Content-Type: text/plain; CHARSET=UTF-8
Content-Transfer-Encoding: 8BIT
Content-ID: <alpine.DEB.2.22.394.2310261555081.271731@ubuntu-linux-20-04-desktop>

+Roger

See below

On Thu, 26 Oct 2023, Julien Grall wrote:
> On 26/10/2023 15:04, Federico Serafini wrote:
> > On 26/10/23 15:54, Julien Grall wrote:
> > > Hi,
> > > 
> > > On 26/10/2023 13:13, Federico Serafini wrote:
> > > > On 26/10/23 12:25, Julien Grall wrote:
> > > > > Hi,
> > > > > 
> > > > > On 26/10/2023 11:04, Federico Serafini wrote:
> > > > > > Update ECLAIR configuration to deviate Rule 8.3 ("All declarations
> > > > > > of
> > > > > > an object or function shall use the same names and type qualifiers")
> > > > > > for the following functions: guest_walk_tables_[0-9]+_levels().
> > > > > > Update file docs/misra/deviations.rst accordingly.
> > > > > > No functional change.
> > > > > > 
> > > > > > Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
> > > > > > ---
> > > > > > Changes in v2:
> > > > > >    - removed set_px_pminfo() from the scope of the deviation;
> > > > > >    - fixed tag of the commit.
> > > > > > ---
> > > > > >   automation/eclair_analysis/ECLAIR/deviations.ecl | 4 ++++
> > > > > >   docs/misra/deviations.rst                        | 6 ++++++
> > > > > >   2 files changed, 10 insertions(+)
> > > > > > 
> > > > > > diff --git a/automation/eclair_analysis/ECLAIR/deviations.ecl
> > > > > > b/automation/eclair_analysis/ECLAIR/deviations.ecl
> > > > > > index d8170106b4..b99dfdafd6 100644
> > > > > > --- a/automation/eclair_analysis/ECLAIR/deviations.ecl
> > > > > > +++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
> > > > > > @@ -204,6 +204,10 @@ const-qualified."
> > > > > > 
> > > > > > -config=MC3R1.R8.3,reports+={deliberate,"any_area(any_loc(file(adopted_mpparse_r8_3)))&&any_area(any_loc(file(^xen/arch/x86/include/asm/mpspec\\.h$)))"}
> > > > > >   -doc_end
> > > > > > +-doc_begin="For functions guest_walk_tables_[0-9]+_levels(),
> > > > > > parameter names of definitions deliberately differ from the ones
> > > > > > used in the corresponding declarations."
> > > > > > +-config=MC3R1.R8.3,declarations={deliberate,"^guest_walk_tables_[0-9]+_levels\\(const
> > > > > > struct vcpu\\*, struct p2m_domain\\*, unsigned long, walk_t\\*,
> > > > > > uint32_t, gfn_t, mfn_t, void\\*\\)$"}
> > > > > > +-doc_end
> > > > > > +
> > > > > >   -doc_begin="The following variables are compiled in multiple
> > > > > > translation units
> > > > > >   belonging to different executables and therefore are safe."
> > > > > >   -config=MC3R1.R8.6,declarations+={safe,
> > > > > > "name(current_stack_pointer||bsearch||sort)"}
> > > > > > diff --git a/docs/misra/deviations.rst b/docs/misra/deviations.rst
> > > > > > index 8511a18925..9423b5cd6b 100644
> > > > > > --- a/docs/misra/deviations.rst
> > > > > > +++ b/docs/misra/deviations.rst
> > > > > > @@ -121,6 +121,12 @@ Deviations related to MISRA C:2012 Rules:
> > > > > >            - xen/common/unxz.c
> > > > > >            - xen/common/unzstd.c
> > > > > > +   * - R8.3
> > > > > > +     - In some cases, parameter names used in the function
> > > > > > definition
> > > > > > +       deliberately differ from the ones used in the corresponding
> > > > > > declaration.
> > > > > 
> > > > > It would be helpful to provide a bit more reasoning in your commit
> > > > > message why this was desired. At least for Arm and common code, I
> > > > > would not want anyone to do that because it adds more confusion.
> > > > > 
> > > > > > +     - Tagged as `deliberate` for ECLAIR. Such functions are:
> > > > > > +         - guest_walk_tables_[0-9]+_levels()
> > > > > 
> > > > > I think you want to be a bit mores specific. Other arch may have such
> > > > > function in the function and we don't want to deviate them from the
> > > > > start.
> > > > > 
> > > > > Cheers,
> > > > > 
> > > > 
> > > > Alright, thanks for the observation.
> > > 
> > > Actually, I cannot find the original discussion. Do you have link? I am
> > > interested to read the reasoning and how many maintainers expressed there
> > > view.
> > > 
> > > Cheers,
> > > 
> > 
> > The discussion started here:
> > https://lists.xenproject.org/archives/html/xen-devel/2023-07/msg00122.html
> > 
> > Then, I asked for further suggestions:
> > https://lists.xenproject.org/archives/html/xen-devel/2023-07/msg00855.html
> 
> Thanks! So only Jan really provided feedback here. I don't think this is a
> good idea to deviate in this case. If we really want to keep in sync and use
> 'walk' for the name, then we could add a comment after. Something like:
> 
> uint32_t walk /* pfec */

--8323329-1503129938-1698360900=:271731--


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 23:01:03 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 23:01:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624049.972435 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qw9LW-00081h-RZ; Thu, 26 Oct 2023 23:00:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624049.972435; Thu, 26 Oct 2023 23: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 1qw9LW-00081a-OS; Thu, 26 Oct 2023 23:00:58 +0000
Received: by outflank-mailman (input) for mailman id 624049;
 Thu, 26 Oct 2023 23: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=z2QB=GI=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qw9LV-00081U-0N
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 23:00:57 +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 846df501-7453-11ee-98d5-6d05b1d4d9a1;
 Fri, 27 Oct 2023 01:00:55 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by dfw.source.kernel.org (Postfix) with ESMTP id 6072E636BB;
 Thu, 26 Oct 2023 23:00:54 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id C15B6C433C8;
 Thu, 26 Oct 2023 23:00: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: 846df501-7453-11ee-98d5-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1698361254;
	bh=ZSH0xT3W0BOpnUDnOKKdjuMB59iz1rzKoGxMgf+mC0E=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=OFzOnJwM2xdE5eC6TBeQV1K1GWfKUfPg/0QpWBtxo/htKZj9AuDHUROrDJ1k5uvqz
	 DHF38vXQs2zTooh1Lgf4uFlws5QCABG1sIds1DjKkSY7U8ugULs0zgniB53wS55o88
	 WKJZ6nQK/xzYCzJ4Ad4kyDm7HBFQhNSISiM9FyIuVxTPkI3hOXzP1+YLcTCJoJ5syv
	 dIWo0xrl1q2OsazlYIqYazXn0tXHKodyLS5WYhDFo1ukGy+Nf/xn39dlB7dwUkTnlv
	 pA3ZNQjf9W4NfIzXCEhBdcvPftgsMTLm8Df+QlV2nim5HIkhEUvHd55PvhFpy4cPAK
	 lkmVoM9d8oujA==
Date: Thu, 26 Oct 2023 16:00:51 -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>, George Dunlap <george.dunlap@citrix.com>, 
    Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>
Subject: Re: [XEN PATCH] xen/set_{c,p}x_pminfo: address violations od MISRA
 C:2012 Rule 8.3
In-Reply-To: <88499ca9a61b59d13d90f6c5f77cbb2e124d850e.1698322083.git.federico.serafini@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2310261559470.271731@ubuntu-linux-20-04-desktop>
References: <88499ca9a61b59d13d90f6c5f77cbb2e124d850e.1698322083.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, 26 Oct 2023, Federico Serafini wrote:
> Make function definitions and declarations consistent.
> No functional change.
> 
> Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>

Great job at taking the opportunity to improve the code style with this
patch. Only one comment below.


> ---
>  xen/arch/x86/x86_64/cpu_idle.c |  5 ++--
>  xen/arch/x86/x86_64/cpufreq.c  |  6 ++--
>  xen/drivers/cpufreq/cpufreq.c  | 52 ++++++++++++++++------------------
>  xen/include/xen/pmstat.h       |  4 +--
>  4 files changed, 33 insertions(+), 34 deletions(-)
> 
> diff --git a/xen/arch/x86/x86_64/cpu_idle.c b/xen/arch/x86/x86_64/cpu_idle.c
> index e2195d57be..fcd6fc0fc2 100644
> --- a/xen/arch/x86/x86_64/cpu_idle.c
> +++ b/xen/arch/x86/x86_64/cpu_idle.c
> @@ -62,7 +62,8 @@ static int copy_from_compat_state(xen_processor_cx_t *xen_state,
>      return 0;
>  }
>  
> -long compat_set_cx_pminfo(uint32_t cpu, struct compat_processor_power *power)
> +long compat_set_cx_pminfo(uint32_t acpi_id,
> +                          struct compat_processor_power *power)
>  {
>      struct xen_processor_power *xen_power;
>      unsigned long xlat_page_current;
> @@ -106,5 +107,5 @@ long compat_set_cx_pminfo(uint32_t cpu, struct compat_processor_power *power)
>      XLAT_processor_power(xen_power, power);
>  #undef XLAT_processor_power_HNDL_states
>  
> -    return set_cx_pminfo(cpu, xen_power);
> +    return set_cx_pminfo(acpi_id, xen_power);
>  }
> diff --git a/xen/arch/x86/x86_64/cpufreq.c b/xen/arch/x86/x86_64/cpufreq.c
> index 9e1e2050da..e4f3d5b436 100644
> --- a/xen/arch/x86/x86_64/cpufreq.c
> +++ b/xen/arch/x86/x86_64/cpufreq.c
> @@ -30,8 +30,8 @@ CHECK_processor_px;
>  
>  DEFINE_XEN_GUEST_HANDLE(compat_processor_px_t);
>  
> -int 
> -compat_set_px_pminfo(uint32_t cpu, struct compat_processor_performance *perf)
> +int compat_set_px_pminfo(uint32_t acpi_id,
> +                         struct compat_processor_performance *perf)
>  {
>      struct xen_processor_performance *xen_perf;
>      unsigned long xlat_page_current;
> @@ -52,5 +52,5 @@ compat_set_px_pminfo(uint32_t cpu, struct compat_processor_performance *perf)
>      XLAT_processor_performance(xen_perf, perf);
>  #undef XLAT_processor_performance_HNDL_states
>  
> -    return set_px_pminfo(cpu, xen_perf);
> +    return set_px_pminfo(acpi_id, xen_perf);
>  }
> diff --git a/xen/drivers/cpufreq/cpufreq.c b/xen/drivers/cpufreq/cpufreq.c
> index 6e5c400849..6fc1aadb9f 100644
> --- a/xen/drivers/cpufreq/cpufreq.c
> +++ b/xen/drivers/cpufreq/cpufreq.c
> @@ -457,14 +457,14 @@ static void print_PPC(unsigned int platform_limit)
>      printk("\t_PPC: %d\n", platform_limit);
>  }
>  
> -int set_px_pminfo(uint32_t acpi_id, struct xen_processor_performance *dom0_px_info)
> +int set_px_pminfo(uint32_t acpi_id, struct xen_processor_performance *perf)
>  {
>      int ret=0, cpuid;
>      struct processor_pminfo *pmpt;
>      struct processor_performance *pxpt;
>  
>      cpuid = get_cpu_id(acpi_id);
> -    if ( cpuid < 0 || !dom0_px_info)
> +    if ( ( cpuid < 0 ) || !perf)
>      {
>          ret = -EINVAL;
>          goto out;
> @@ -488,21 +488,21 @@ int set_px_pminfo(uint32_t acpi_id, struct xen_processor_performance *dom0_px_in
>      pmpt->acpi_id = acpi_id;
>      pmpt->id = cpuid;
>  
> -    if ( dom0_px_info->flags & XEN_PX_PCT )
> +    if ( perf->flags & XEN_PX_PCT )
>      {
>          /* space_id check */
> -        if (dom0_px_info->control_register.space_id != 
> -            dom0_px_info->status_register.space_id)
> +        if ( perf->control_register.space_id !=
> +             perf->status_register.space_id )
>          {
>              ret = -EINVAL;
>              goto out;
>          }
>  
>          memcpy ((void *)&pxpt->control_register,
> -                (void *)&dom0_px_info->control_register,
> +                (void *)&perf->control_register,
>                  sizeof(struct xen_pct_register));
>          memcpy ((void *)&pxpt->status_register,
> -                (void *)&dom0_px_info->status_register,
> +                (void *)&perf->status_register,
>                  sizeof(struct xen_pct_register));
>  
>          if ( cpufreq_verbose )
> @@ -512,69 +512,67 @@ int set_px_pminfo(uint32_t acpi_id, struct xen_processor_performance *dom0_px_in
>          }
>      }
>  
> -    if ( dom0_px_info->flags & XEN_PX_PSS ) 
> +    if ( perf->flags & XEN_PX_PSS )
>      {
>          /* capability check */
> -        if (dom0_px_info->state_count <= 1)
> +        if (perf->state_count <= 1)
>          {
>              ret = -EINVAL;
>              goto out;
>          }
>  
>          if ( !(pxpt->states = xmalloc_array(struct xen_processor_px,
> -                        dom0_px_info->state_count)) )
> +                                            perf->state_count)) )
>          {
>              ret = -ENOMEM;
>              goto out;
>          }
> -        if ( copy_from_guest(pxpt->states, dom0_px_info->states,
> -                             dom0_px_info->state_count) )
> +        if ( copy_from_guest(pxpt->states, perf->states, perf->state_count) )
>          {
>              ret = -EFAULT;
>              goto out;
>          }
> -        pxpt->state_count = dom0_px_info->state_count;
> +        pxpt->state_count = perf->state_count;
>  
>          if ( cpufreq_verbose )
>              print_PSS(pxpt->states,pxpt->state_count);
>      }
>  
> -    if ( dom0_px_info->flags & XEN_PX_PSD )
> +    if ( perf->flags & XEN_PX_PSD )
>      {
>          /* check domain coordination */
> -        if (dom0_px_info->shared_type != CPUFREQ_SHARED_TYPE_ALL &&
> -            dom0_px_info->shared_type != CPUFREQ_SHARED_TYPE_ANY &&
> -            dom0_px_info->shared_type != CPUFREQ_SHARED_TYPE_HW)
> +        if (perf->shared_type != CPUFREQ_SHARED_TYPE_ALL &&
> +            perf->shared_type != CPUFREQ_SHARED_TYPE_ANY &&
> +            perf->shared_type != CPUFREQ_SHARED_TYPE_HW)
>          {
>              ret = -EINVAL;
>              goto out;
>          }
>  
> -        pxpt->shared_type = dom0_px_info->shared_type;
> +        pxpt->shared_type = perf->shared_type;
>          memcpy ((void *)&pxpt->domain_info,
> -                (void *)&dom0_px_info->domain_info,
> +                (void *)&perf->domain_info,
>                  sizeof(struct xen_psd_package));
>  
>          if ( cpufreq_verbose )
>              print_PSD(&pxpt->domain_info);
>      }
>  
> -    if ( dom0_px_info->flags & XEN_PX_PPC )
> +    if ( perf->flags & XEN_PX_PPC )
>      {
> -        pxpt->platform_limit = dom0_px_info->platform_limit;
> +        pxpt->platform_limit = perf->platform_limit;
>  
>          if ( cpufreq_verbose )
>              print_PPC(pxpt->platform_limit);
>  
>          if ( pxpt->init == XEN_PX_INIT )
>          {
> -            ret = cpufreq_limit_change(cpuid); 
> +            ret = cpufreq_limit_change(cpuid);
>              goto out;
>          }
>      }
>  
> -    if ( dom0_px_info->flags == ( XEN_PX_PCT | XEN_PX_PSS |
> -                XEN_PX_PSD | XEN_PX_PPC ) )
> +    if ( perf->flags == ( XEN_PX_PCT | XEN_PX_PSS | XEN_PX_PSD | XEN_PX_PPC ) )
>      {
>          pxpt->init = XEN_PX_INIT;
>  
> @@ -675,16 +673,16 @@ static int __init cpufreq_cmdline_parse(const char *s, const char *e)
>  static int cf_check cpu_callback(
>      struct notifier_block *nfb, unsigned long action, void *hcpu)
>  {
> -    unsigned int cpu = (unsigned long)hcpu;
> +    unsigned int acpi_id = (unsigned long)hcpu;
>  
>      switch ( action )
>      {
>      case CPU_DOWN_FAILED:
>      case CPU_ONLINE:
> -        (void)cpufreq_add_cpu(cpu);
> +        (void)cpufreq_add_cpu(acpi_id);
>          break;
>      case CPU_DOWN_PREPARE:
> -        (void)cpufreq_del_cpu(cpu);
> +        (void)cpufreq_del_cpu(acpi_id);
>          break;
>      default:
>          break;

I take you made these changes to cpu_callback for consistency, not
because they are required? Everything else makes sense so:

Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 23:02:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 23:02:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624052.972445 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qw9Mv-00007I-6X; Thu, 26 Oct 2023 23:02:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624052.972445; Thu, 26 Oct 2023 23: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 1qw9Mv-00007A-3K; Thu, 26 Oct 2023 23:02:25 +0000
Received: by outflank-mailman (input) for mailman id 624052;
 Thu, 26 Oct 2023 23: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=z2QB=GI=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qw9Mt-000074-M5
 for xen-devel@lists.xenproject.org; Thu, 26 Oct 2023 23:02:23 +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 b79c7dfb-7453-11ee-9b0e-b553b5be7939;
 Fri, 27 Oct 2023 01:02:20 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by ams.source.kernel.org (Postfix) with ESMTP id 1C7AAB838C9;
 Thu, 26 Oct 2023 23:02:21 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 5BA7BC433C7;
 Thu, 26 Oct 2023 23:02: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: b79c7dfb-7453-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1698361340;
	bh=q8boQmflejd3juET0E3ZdVnKNtq6lNs4bqK4WoiapZQ=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=gUcChs/PZZCcCzoaxzG52y+/MkF/q82/GGSzQ71HjXx3vQtmMGnHqTPwdjl8rHOF2
	 klKi4w3i4viUZTPMJQKdYM0E1nosKpKTWhLcyRoPAh0b5g9Q42uoWGerZAznXiZrF+
	 WjeB+36YfWKJSScCMXxWE20spQkUt1xS5uWO4Mbek+Vc9gR8qe0/3Eg462a3+V3RQ+
	 YELR2bdyTYeoLWpwcdy4sM92oyQ5uFMfIRulMKbkv64nc3kykzHSz8M+LUoDWDWZbo
	 0Jft7Z/2NSkuPbDDoYIbIe3u64NLs9/LLhKY6UMzyBRa24Pa44uafYC3mpI0BRogi3
	 g22VXRQWA+uGw==
Date: Thu, 26 Oct 2023 16:02:17 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Julien Grall <julien@xen.org>
cc: Nicola Vetrini <nicola.vetrini@bugseng.com>, 
    Jan Beulich <jbeulich@suse.com>, 
    Stefano Stabellini <sstabellini@kernel.org>, michal.orzel@amd.com, 
    xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, 
    consulting@bugseng.com, andrew.cooper3@citrix.com, roger.pau@citrix.com, 
    Simone Ballarin <simone.ballarin@bugseng.com>, 
    Doug Goldstein <cardoe@cardoe.com>, 
    George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>, 
    xen-devel@lists.xenproject.org
Subject: Re: [XEN PATCH][for-4.19 v3 1/8] xen/include: add macro LOWEST_BIT
In-Reply-To: <36a3412d-cbe9-4fc7-af6c-db0206d56333@xen.org>
Message-ID: <alpine.DEB.2.22.394.2310261601540.271731@ubuntu-linux-20-04-desktop>
References: <cover.1697815135.git.nicola.vetrini@bugseng.com> <546cf30aa43d6d0687a9a6c6d23b11128e5783e8.1697815135.git.nicola.vetrini@bugseng.com> <f504772a-68b4-fbfa-e7d4-8d22992c7944@suse.com> <f23a1f95916bd61ddcd5002428d8876c@bugseng.com>
 <6d113a237846c7a41aa083e806f172e7@bugseng.com> <5475d9e5-ec1c-7f71-ee77-59ec2e6ee01e@suse.com> <alpine.DEB.2.22.394.2310231340320.3516@ubuntu-linux-20-04-desktop> <dd33e92f-03aa-cf3c-23d7-dcf9cce23c8e@suse.com> <2f88afb2383b5fdecf83d311ebe69bb4@bugseng.com>
 <96dd7efb-c214-2155-c5d1-3b9a47c10d33@suse.com> <alpine.DEB.2.22.394.2310251537460.271731@ubuntu-linux-20-04-desktop> <3cc22b2d-fbcf-899e-1d7d-036a53bd0f7f@suse.com> <ff395b4eab2e79a901516e0958647f8b@bugseng.com>
 <36a3412d-cbe9-4fc7-af6c-db0206d56333@xen.org>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Thu, 26 Oct 2023, Julien Grall wrote:
> On 26/10/2023 11:32, Nicola Vetrini wrote:
> > On 26/10/2023 08:52, Jan Beulich wrote:
> > > On 26.10.2023 00:38, Stefano Stabellini wrote:
> > > > On Wed, 25 Oct 2023, Jan Beulich wrote:
> > > > > On 25.10.2023 16:50, Nicola Vetrini wrote:
> > > > > > Ok, I'll send a revised version using MASK_LOWEST_BIT, taking into
> > > > > > account also the
> > > > > > other comments about the explanation on the macro definition
> > > > > > (which some IDEs even show when hovering on its usage, which could
> > > > > > partially address
> > > > > > the latter concern).
> > > > > 
> > > > > You're of course free to do so, but since - as indicated before -
> > > > > MASK_LOWEST_BIT() imo isn't a better name than LOWEST_BIT(), I'll
> > > > > continue to object.
> > > > 
> > > > Jan if you are OK with that I'll ask Julien to break the tie and pick
> > > > the name to use. Julien can you please help us move forward?
> > > 
> > > Hmm, I'm having trouble seeing us at the point of breaking ties yet.
> > > First we need naming suggestions which actually unambiguously
> > > describe what's being done by the macro. I gave one suggestion which
> > > I think fulfills this property, but is a little too long for my
> > > taste. I gave another suggestion with a far-off but shorter name,
> > > which I can appreciate isn't liked. I've not seen other suggestions
> > > fulfilling this base criteria.
> > > 
> > > Jan
> > 
> > Any name is fine with me. ISOLATE_LOW_BIT may be longish, but the macro
> > would be used
> > in just a few places for a specific reason, so the loss in readability is
> > probably not
> > that high.
> 
> +1. It doesn't seem we will be able to find a name that 100% fit all the
> criteria. So of all the choice, my preference would be ISOLATE_LOW_BIT().

It is clear enough, so +1


From xen-devel-bounces@lists.xenproject.org Thu Oct 26 23:28:22 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 26 Oct 2023 23:28:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624074.972471 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qw9m0-0005yU-H5; Thu, 26 Oct 2023 23:28:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624074.972471; Thu, 26 Oct 2023 23: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 1qw9m0-0005yN-E3; Thu, 26 Oct 2023 23:28:20 +0000
Received: by outflank-mailman (input) for mailman id 624074;
 Thu, 26 Oct 2023 23:28: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 1qw9lz-0005y9-GH; Thu, 26 Oct 2023 23:28: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 1qw9lz-0002Bp-6l; Thu, 26 Oct 2023 23:28: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 1qw9ly-0000sG-S4; Thu, 26 Oct 2023 23:28:18 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qw9ly-00079o-RX; Thu, 26 Oct 2023 23:28: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=uS+z49a7pZQy9JLPg+3cKv4sR8poUNQXdRBvODVekxQ=; b=YRijPGTUFVweXQEbaamZbN8UQ5
	NAgOueRnWYWUa1AoxiZEpp/QOLCEhHl3vu1ik/CBgBxlwCZvcgc59pP5HYNEpmzcVJyWmiR2f181E
	lIJ3sG9AGTeMPCyFiY7KHQEwef0pq8JRMnUxql9sIAI2sWalJD3jx075LQxiegWlomlg=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183545-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 183545: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=f945b72331d7e9eed7f84c71052f198377ac3950
X-Osstest-Versions-That:
    ovmf=74c687cc2f2f29d3bdd454a416624f0ca5a86566
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 26 Oct 2023 23:28:18 +0000

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

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 f945b72331d7e9eed7f84c71052f198377ac3950
baseline version:
 ovmf                 74c687cc2f2f29d3bdd454a416624f0ca5a86566

Last test of basis   183542  2023-10-26 18:10:40 Z    0 days
Testing same since   183545  2023-10-26 20:14:05 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Ard Biesheuvel <ardb@kernel.org>
  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
   74c687cc2f..f945b72331  f945b72331d7e9eed7f84c71052f198377ac3950 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Fri Oct 27 03:17:15 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 27 Oct 2023 03:17:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624115.972497 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qwDLF-00052b-35; Fri, 27 Oct 2023 03:16:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624115.972497; Fri, 27 Oct 2023 03: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 1qwDLE-00052U-Vn; Fri, 27 Oct 2023 03:16:56 +0000
Received: by outflank-mailman (input) for mailman id 624115;
 Fri, 27 Oct 2023 03: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 1qwDLD-00052K-L2; Fri, 27 Oct 2023 03: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 1qwDLD-0006jv-7B; Fri, 27 Oct 2023 03: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 1qwDLC-0001uw-SA; Fri, 27 Oct 2023 03:16:54 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qwDLC-00013s-QK; Fri, 27 Oct 2023 03: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=ygE9gjLyc3vSEfBF6fSG5HEYGJP6A9VWk8d/Usff/F4=; b=lcEl71oUexpJ3tzBWkFDgg/5gN
	UmrXpRSbttQT2PpkYwoNFI7lSeoTfVhVPZGMuwoz3JtpNJ1TgFRW0icV+mb6fC8u/k6JOqE8Jdj7a
	4P9AyHzEkbESd2U9ZQbnaydm/gXVBhfGRMSEdaXDSSYMEffMrOkBdYizfz7x7F1zFZ9Y=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183546-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 183546: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=ca32f75fc6ba4a41a65b5ea83eaa21d209bae570
X-Osstest-Versions-That:
    ovmf=f945b72331d7e9eed7f84c71052f198377ac3950
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 27 Oct 2023 03:16:54 +0000

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

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

Last test of basis   183545  2023-10-26 20:14:05 Z    0 days
Testing same since   183546  2023-10-27 01:13:59 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Vivian Nowka-Keane <vnowkakeane@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
   f945b72331..ca32f75fc6  ca32f75fc6ba4a41a65b5ea83eaa21d209bae570 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Fri Oct 27 05:52:57 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 27 Oct 2023 05:52:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624205.972555 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qwFlz-0004CL-T9; Fri, 27 Oct 2023 05:52:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624205.972555; Fri, 27 Oct 2023 05: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 1qwFlz-0004CE-Pf; Fri, 27 Oct 2023 05:52:43 +0000
Received: by outflank-mailman (input) for mailman id 624205;
 Fri, 27 Oct 2023 05: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=eU9S=GJ=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qwFly-0004C8-8q
 for xen-devel@lists.xenproject.org; Fri, 27 Oct 2023 05:52:42 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 (mail-am6eur05on20606.outbound.protection.outlook.com
 [2a01:111:f400:7e1b::606])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 0a3c4e72-748d-11ee-98d6-6d05b1d4d9a1;
 Fri, 27 Oct 2023 07:52:40 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS8PR04MB8435.eurprd04.prod.outlook.com (2603:10a6:20b:344::8)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6954.9; Fri, 27 Oct
 2023 05:52:38 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6954.008; Fri, 27 Oct 2023
 05: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: 0a3c4e72-748d-11ee-98d6-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=kJz8Qz7Eljuq9Ii7BOIuOWYe7+wD1+epsy2FLQlxdIOACqtco7q3JRj03lgyjzt0Sbc1cj+Waju3jwGG8biNcQz2P7MHVo1kKJXmB8YQeTABepz20pkeHq2ljTWsmWQikACFKpVA1wWjCD2uH5pNbtUrL7LV5uYVeKilMY5BrCR9oFGM51SPeJ5DrPK0I6MiYAqyfnpGFIYzvHQA52JihwzOKhwWfqsH6kFrmbYIiiLJa1ppV9iLpUkDrUQcG5QRRfHyBrhgCSYznZGdsBbU43dU90Sp31nHlJZ/eNfust8bUm3IBKr3hpdFdgb2+Aznbix1k8SmqYR8EXTB6YSI7Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=5PbzUk38VxIU8334UTiLarqXadgrMhzYyzgwZ8GdFv8=;
 b=ZIJkKpPxfEaJQUxIitkT0tsiYblBgIDdrh78tW2Z4inCQ2X6C3yWxFLmuXWiAFwScYs3JOiK5YlUYGWwWWl3MBmCQrMWFhPKh7Xk1Q76Bvp18vb60ewx1fAMP4wUjrPJNeoNIcY/uVVZ5OAFp/rBkPAg27b5/BGOHbDAzTqJYH1eHdQScYFngmVXbMeIar/kiLw7Row0eQNiJbQDjXsSlTK6GH6o1ZWkps/GHfcawQeKId2W9qg/YqX2CzCLdgaN4QHuadZAMsmricrnRZuUVelreIQtowZHWepfODumnU16wAzSU0LtB3xl2ipTDh2Tuz6dMCayF9jX8uqlbtGkFw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=5PbzUk38VxIU8334UTiLarqXadgrMhzYyzgwZ8GdFv8=;
 b=NMqPX+JsUNepgaEXitRfbizXTNV/qD930qn2/MZhKsKEHjjB9i2l1cG52DRx5yrfBCnfWnMABpPYkiGoBo3LoQP2cUband0Mvhgrt60Oj0QG3LqZsJSMzkgl/I9N0P5WVN1J+eCbN8NeGAUIzrbYqdlKLUE2l2ilJzHlnpvs2cGd4KVqDZo4Q5gn8qTD+Jt/AyTAke0MA+kp7h3fJKI3iQwAVoTzmbqRvD3iNEccZ/7uIsRdKBZ69d/seKWu6OJVOihGurVHXkzfaj4BBPTAlFsX5Y6ELCU0jNhgGNzQqkNIfTZR4oT2htdYhF0BZSXtP3X5kV5M9XuKTIxk4cDn2g==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <a4f09e69-82f4-598e-3a5f-3d4b71ce65b8@suse.com>
Date: Fri, 27 Oct 2023 07:52:35 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH] tools/ocaml/Makefile.rules: use correct C flags when
 compiling OCaml C stubs
Content-Language: en-US
To: Edwin Torok <edwin.torok@cloud.com>
Cc: =?UTF-8?B?RWR3aW4gVMO2csO2aw==?= <edvin.torok@citrix.com>,
 Christian Lindig <christian.lindig@citrix.com>, David Scott
 <dave@recoil.org>, Wei Liu <wl@xen.org>,
 Anthony PERARD <anthony.perard@citrix.com>, xen-devel@lists.xenproject.org
References: <fd09742f7c2191be3cdfafbd4c7cccb10eb0e3a2.1698240589.git.edwin.torok@cloud.com>
 <a907d98a-2d0d-cbf0-ae9e-cfa2e3dd37e2@suse.com>
 <3BB711DB-2420-4731-B3C3-A66E3791D039@cloud.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <3BB711DB-2420-4731-B3C3-A66E3791D039@cloud.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR0P281CA0148.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:96::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_|AS8PR04MB8435:EE_
X-MS-Office365-Filtering-Correlation-Id: aaec0637-685c-4996-42cb-08dbd6b0ecac
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	VJp6HZuWrh/cqUP4//tGhqZkeSu9bnOABY58DocfG7BIiqzM5zO30sQEabmkvceSrby1opfWHWI0h6sNwB7vuHALc4WKRwx81k1dRePaT+b0Km7fFG70vnaoAV2TXasxi+YwOI9qHnOkMloRx5/1blpt7fRZzEB3CpO/ye35DVHnnvvHw3O7r5PA3LGfGSoBXOOx86kjbALv108iskLrKJxvEJy+Bqx64DYeXUGTESJ5N11Gf7yl7+2h8I6nrejTgqb4fBUCx4GSQxXht8/1ERJvO+ldZB0+kX096dS8w+89aSxW0SG4aeesOgx1oFriTwUg2EfYDypGwp3EWKSHDDgK9DZUmyU6blKbxEWTPIiRTTbR3mTy+ndPBXaL1YEdJro8eg2sSWaGVihPIJigIfKflJVwkXihcPNjhdh5MuvR+mUV2TB5bdKe/W5oJv+o38Nl0qBALdgX5PZLLV/pNFh9nmLe/fmlsStwuWpt0Ujh1VSiUbbTeBjbZV9sABl1Eak/WrhrZHn5O0eYuaY9iWObnYi5xrwyENKvyfo+2IU2/+eBApC7NfKNARY0jk1nIvogMD2ISWEJjXCXTqnr/xKdRofcyqz1tfTXxSmaq/BPGzJp/UXU9BF119L0hDv0/HmahrBFBqwfvvXeXen7ag==
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)(136003)(376002)(366004)(396003)(230922051799003)(1800799009)(64100799003)(186009)(451199024)(5660300002)(8676002)(8936002)(41300700001)(4326008)(36756003)(66946007)(66556008)(26005)(2616005)(31696002)(86362001)(6916009)(316002)(66476007)(54906003)(4744005)(2906002)(6486002)(31686004)(478600001)(53546011)(6512007)(6506007)(38100700002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?VVZyN2FseFkyZHBKS1B4eG9wVXh1RTVuSlk2aDVNRlFYK2ZGdkFvVjdzN0FZ?=
 =?utf-8?B?T3pzdDcyeUt1MFBUV1FTZFgvdk5UcjVIdVovZkZBVWhUMmJqakcvQVdiNEFN?=
 =?utf-8?B?OWZ0Um1TVG5CZE1ESUlLVHpQYWZxMVJsNlVlcGRmancwVW9VQ0EvY0VMMlFC?=
 =?utf-8?B?REpObmNOSml1UTRZd0pjbFRxcVduYnJmWndGL0VUejlhbGY5MVMwOFZJOGpR?=
 =?utf-8?B?ZE1heUkvaDNDR3RhOUxLQUtOR2ExSElkTEdUMjVwTGFla2ttQ1lzVUduMGNM?=
 =?utf-8?B?ZDliUm5xa2NTUXZpUkk5NFNMYjVUVmNDN0padldxTWdkcGQ1QXU3MFIxVmM4?=
 =?utf-8?B?bWZnZm4wbm9YUG1VK2N2T3pWTmkxdUl0dHZWbzljZFZVWnVPT01xNHQrN0xo?=
 =?utf-8?B?amQ0VEFtNHBqTlo4NXFyQ0s3ZVpnSTBaci9NTzgwVEVYZXlmZ0x1SmFtK05Z?=
 =?utf-8?B?ZkVncm5TcHphU09CV2k2NVBiOVR6V09URHc2d3lRcVFsSnk2MjFMaG45aEg2?=
 =?utf-8?B?Y1dsU3M2NnFIdkJzTE54UXlTTVRKVld0Rjd2WTlLeC94NE1vZFY2TklDeXIr?=
 =?utf-8?B?WUNDVzNxRjd5NkFXQ1JYR2dTQklaYU5sUnk0T2JGWmJqVG5hRFFYdnk0S2hV?=
 =?utf-8?B?aEJ4M1A1cjI3aDMrSVBEZ0RLNjh0anpMV2t2RTVIUGtReUpSQlR6MXdYdytk?=
 =?utf-8?B?bjNNVktQYXpVRHZUS2EyTDVlSDlGL0pKNjBXc0hWaDB5cXFycTA1NnYvWmFU?=
 =?utf-8?B?RDNXV1JxbWp5aHQ5alZrNVcwbE00b0F4NHdkMDNCV2dnUmlMeGxxcUZ2azdu?=
 =?utf-8?B?Q3Zoem43QVJqckRET25UaG9HRHF6S20wOEQ3aXZnTmp3SUFITi9HT25NSUdx?=
 =?utf-8?B?UHloTU9EdXo4YTVsblBtL0wzR056eUllWFlpbHlwNUhERTR4dy92RDZCbGpa?=
 =?utf-8?B?Y1dVQXZMa0lyZjhYSlRTOFVJV2hXSFFWUGtkajY2Sm8wZ3dWdUhFMFR1RmUw?=
 =?utf-8?B?VHUzKzhSbjlpaktVVUlsRDdjaHA4alFpa3pUUzJNcWxwS2N2ZHNHVmNibDFQ?=
 =?utf-8?B?WXhVNjFXQTNkUDgrTi9sbWRRbjQ1UU0xazZBekVUSU1Ld1FJRzl2amJoNHlW?=
 =?utf-8?B?M3FUZmNrT3ZiQXRQb1dZWjRjb2x3OEJjdkFUN2dHMmRlRzBUdVJzT05RRDVB?=
 =?utf-8?B?N3IzbHFselBFT0pUdzRDbUgrR1JSampFV1htdk01MVRGVWdEVDN2TGN5a3VZ?=
 =?utf-8?B?ZGVlNjZhM0VwdUdLem9oZk92RjhiT2plQUlaQm9WUUJiK1lmN1hrbmdCRTJY?=
 =?utf-8?B?R0J3Zi85SGIxd2dZMWo4SWRyM3hJNnZPUUNQOHpVREdKdHgvOERqV24yME9a?=
 =?utf-8?B?eTNDWDFQUFl5Y1NsSGJybWVyYVFYWmo5V1dhcTNxRzcwMldQbStFdkM1aS9M?=
 =?utf-8?B?YlBjU0ovM3hmRkRKWmYrelhEUDl5L1I1U3lReUt4cnJGTWZnQVRjZzMzVmN1?=
 =?utf-8?B?NHptYzg2SXJrQ1dMdW9vYnNTOEpDMDdVT2RaS0VtcFpheTJ0ek9jSWhReld4?=
 =?utf-8?B?T2k2UGF2YmJuc0RzMjJlWjhxaVV3U2RTOU5nWkNJZ2E1R2w3aC9RTkU1UE02?=
 =?utf-8?B?MEhoVVNLSjYzQ01tdFJsSWlvSnpLcWlpdWV6czRkT2NEaWg0MTJiUnNpUFRT?=
 =?utf-8?B?SFFob3VUTThiR254bFpiQWJFUDJvTzljdjNoWkx4RlhSN1dROERFNUN4Y1gz?=
 =?utf-8?B?blRSMThDUnVrMWNYZW9IRWF3T2ltNnVOVnZTcTQzTUNjb3FQTDR6bVJDVFIz?=
 =?utf-8?B?ayt6U1hGUVRNNkhOSi9VZFN0Mk4yZ29OQ01UMVYzRWRHNyt2cTBlQjRqVno4?=
 =?utf-8?B?aWptTlFrTmppR01IbU96VXlpakNtK3oyaVozazlSekptVHZBNldoV1dxNWli?=
 =?utf-8?B?MExOWWM5dlM0S1MzdUxVQm9KdVJ4WXR1eUJzM2EvUUhtN2JVbktBZ0prNEk2?=
 =?utf-8?B?eHVQTlA3ak1XOHRtRmEvdTREY3djTVdXK1BKK0VwYXJLSFdyenVyUG43VUlv?=
 =?utf-8?B?MnNlblcxL3dHQll1aW9PVGJlRnlMSDBTQ1B6YjdCbERhdGpBenZMMjFTdU1i?=
 =?utf-8?Q?So1SIQ/scLPZ7y5HatMx0OrN3?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: aaec0637-685c-4996-42cb-08dbd6b0ecac
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Oct 2023 05:52:37.7754
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 2giRPuey7sNS5w2RrZbnDMe0TxTN9bam8PqWOeIBCgBbmIk0ljDpcYcyCOs6L1tC1yGENA4RBpMwN9l//Nvhdw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB8435

On 26.10.2023 19:38, Edwin Torok wrote:
>> On 25 Oct 2023, at 15:04, Jan Beulich <jbeulich@suse.com> wrote:
>> On 25.10.2023 15:52, Edwin Török wrote:
>>> --- a/tools/ocaml/Makefile.rules
>>> +++ b/tools/ocaml/Makefile.rules
>>> @@ -37,7 +37,7 @@ ALL_OCAML_OBJS ?= $(OBJS)
>>> $(call quiet-command, $(OCAMLYACC) -q $<,MLYACC,$@)
>>>
>>> %.o: %.c
>>> - $(call quiet-command, $(CC) $(CFLAGS) -c -o $@ $<,CC,$@)
>>> + $(call quiet-command, $(OCAMLOPT) -verbose $(addprefix -ccopt ,$(CFLAGS)) -c -o $@ $<,CC,$@)
>>
>> Wouldn't -verbose better be passed only if the build isn't a quiet one?
> 
> Only the OCaml files (and the hypervisor itself) are compiled in quiet mode. It looks like tools/ and the C files in tools/ocaml were not,
> so the patch as is preserves the existing behaviour.

Yes and no. There's also make's -s flag, which I consider being wrongly
overridden by passing -verbose here. But anyway ...

Jan


From xen-devel-bounces@lists.xenproject.org Fri Oct 27 06:37:30 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 27 Oct 2023 06:37:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624209.972565 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qwGT5-0002FT-7a; Fri, 27 Oct 2023 06:37:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624209.972565; Fri, 27 Oct 2023 06: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 1qwGT5-0002FM-4Y; Fri, 27 Oct 2023 06:37:15 +0000
Received: by outflank-mailman (input) for mailman id 624209;
 Fri, 27 Oct 2023 06:37: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=eU9S=GJ=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qwGT4-0002FG-50
 for xen-devel@lists.xenproject.org; Fri, 27 Oct 2023 06:37:14 +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 4298a075-7493-11ee-98d6-6d05b1d4d9a1;
 Fri, 27 Oct 2023 08:37:12 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PA4PR04MB7902.eurprd04.prod.outlook.com (2603:10a6:102:c0::22)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.14; Fri, 27 Oct
 2023 06:37:10 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6954.008; Fri, 27 Oct 2023
 06:37: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: 4298a075-7493-11ee-98d6-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=DlQ/1WVlpNAuxFeEYfUET9QK5XZD5q3GXx92M5npO5rCczEQbSsTiLcunruTRdMiiCiewuWxoDnhBfDIXPW8fx3Qte7XyCLMY8polBy0iZuRjKqeATaPo6aT9RKDf5w03Pe37pvzSjMi/lLkSDlVz7aYYDmehL/yTHqeU2QrB71Bij5P6MGMbnzckQBNBNxWM/N4MoqVXMpQvQxpsDcfJWsDqPJ+ojyqQAExtl+JKjvZXJ2pYccTLeadYeI3RXiIjp5NTU4B3YvSYOi99mmyLTVwx9rJxK21H6RhenKJlZDyHhS9VFRdaSVJU0TNK35f6vPaSm60GgnLFNjAxk/FFQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=MaYTPyMUdFxPi50VGauorgZR46Bvk/OlvQ27kx6IduU=;
 b=FdWSVFv5FCs57v9kCH7i9v26nX6uYZ5qCyLDYdnn2KjDhyHDA9w+bdbtZTd8p6vnzSrJcAIkc6Go0bO8+rEtnWZZbGB6znuboZ2Pp3QuOqwrw5gSQsBXbrBRtbb0n1c2pPKRlc8bbB2zc4scjQ+unxN1ynWjntYrV6mgrKSv7QXlLbXHoejAbOQaBCQWAaSdy/EsOIPFSbURtwnFBAVkdsw7Wyy/L18xa0FLX7+DPrWyddAMDZFP8h4UjnB7GCJkKEBgPzgnldOyKpW+Uzgnj9a0eYIknqj+S3lhu5YerwBRtNRbj2sdSacbNWpjSnJnmC7TMXOarHjgregPngAnlw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=MaYTPyMUdFxPi50VGauorgZR46Bvk/OlvQ27kx6IduU=;
 b=4Ez2fg+McPPyBTcH/weI4pjyq4uwD2ga/FWF5Nv78GGFUrdZe6GZStAmV+Z4PS+/B3LlxTdvnsWPAr32rJnf0ZWSknPLnRch+T7mvZbEwOqgmJsUXUPNtWiVBju/LCASREtWTE/WmB2ZhxA8+mAVRnnbyso4PzmU5J0jRkgLiRRD/lK5JDGmUU2Lyi6Xp+va2HHFgVQWWN1EbCPwiOK7mtniQIIbpXm7qXnuKCSAHmAdocFEtOHb0sWnzjmSpc7obBJdmwrXMwLANMEiCIHHIV1BsuykGRkT05/VcY1PJbr0K62iMnUlSZJ7YrOXo7H3uggnQakLiNGJf4SpHcELjQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <08ea1b7b-c85f-337a-42c4-520e40b75288@suse.com>
Date: Fri, 27 Oct 2023 08:37: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] x86/hvm/dom0: fix PVH initrd and metadata placement
Content-Language: en-US
To: Xenia Ragiadakou <xenia.ragiadakou@amd.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>, xen-devel@lists.xenproject.org
References: <20231026064543.43369-1-xenia.ragiadakou@amd.com>
 <ac7e9bac-6d74-a5bf-d703-3c5455e581ea@suse.com>
 <7712c60b-4f89-483e-89e4-7ac8f4d0311e@amd.com>
 <809115b1-2a47-583f-2d04-72a5a21ee7da@suse.com>
 <c107d63c-25a3-4f17-a5e8-7ec3ccd94ce3@amd.com>
 <c81a8275-ecfd-7598-c119-ed83b156c0e5@suse.com>
 <b5330686-82a0-4d47-9549-2d943ca68c7e@amd.com>
 <1cc98108-3328-94d3-5f8d-ff03c965087e@suse.com>
 <92ba94d2-9e57-4241-8626-33f06f88e726@amd.com>
 <a61926bc-e3e6-e381-45de-be3a4878b6af@suse.com>
 <217d9079-3072-441a-a4ba-4db28c565bc7@amd.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <217d9079-3072-441a-a4ba-4db28c565bc7@amd.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0105.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:cb::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_|PA4PR04MB7902:EE_
X-MS-Office365-Filtering-Correlation-Id: 44630890-f330-443f-ac8d-08dbd6b72578
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	ennpZLezPpMYCbKffBxo6nMaxzAz2e/oIiEhHTFTrtBdEEgiLy/PRz2wMLtqofmy8B+1DlcLem0ucLOQWeVAb96LOOzbbUtftt/vsAGaFjSNy/kY6OCYVNgq7R4bgfLjMGcqbv00eRG5HagT0AfZkTuNjKV67QmuldWkbAqVQAEzbeREwf613klUEFVrmmksnz2v2773ZkCo4wZZWcg2k2AuKum9k2+s1ygaG04F+E9gPytwVNXIRP60+naM8N5Xvtp9aY6nLOLjiT4cwK8fWkk7eIlGp8J8cJVEqhe38am1E7nUTdulVhEn+BKGb44M8gZKms6B28TM4PpjmSYdNf8kUbow86H/3hSzGlkRdgDsdo16/izK+0HscqItbfYJtJucisLB93vJQA2zTKM4U+HWUz8m0DtgnZBpCp6PTWgf5JCDKoS5wIJNJu0F9yl9O2fETthay3s5WEAD7qWZpXOJ3wWYDwBHMe2KCw0ytGdTf7rFiBzzqruYn9xrqc4h5E0l9CGvHshrDOc8A/+TP6nrWWX/Oz53UWTVlixvOXlPaHzmHfYqhyMSV1+QXteuZCX+7AyssbiloSkaSMbZyDJZabIgt85BlNtlXOFdysbo3xAY/2TqS3ZSfCbJKUZI24JVubE+mTpUxdQS41RFOA==
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)(396003)(376002)(136003)(230922051799003)(451199024)(1800799009)(64100799003)(186009)(31686004)(66899024)(53546011)(2616005)(6506007)(6512007)(38100700002)(31696002)(36756003)(83380400001)(41300700001)(2906002)(66946007)(6486002)(478600001)(4326008)(6666004)(26005)(8676002)(8936002)(54906003)(5660300002)(66476007)(6916009)(316002)(86362001)(66556008)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?bXBxd1BpdjJLSnFGdlV2NzJZdGhlVTdCUDgwSjhJMFVOaXBBU2NPRXBBbjVt?=
 =?utf-8?B?K0ZIWVV0bTlPb0Z0VGxrdk9DOTBSMkVOYzlnZmFpbFR6NE9mbzhVbnh6bURk?=
 =?utf-8?B?S0dZcFlWa1lLQi9vLzBEWUNJWGZlUzByTFZjZUdXZlR5VXJMaEVPaHYybjlU?=
 =?utf-8?B?NDN3dWdickMxRlRBbGlrYXBRbE5ZNXQwL1JpR3ZTS1Fmem1FUU84aHYrdXZ4?=
 =?utf-8?B?bDZORWpoNjNFWllnMXdRZWhqTDhoTUxMNjdFNjRRaFZHU0pKdHZrQmhCUmVF?=
 =?utf-8?B?cGlVUm50cVNpUmRPcnRYREZ6VU9ScWMzNGhOeTVMcnlMaGZDUlJaakEvVUli?=
 =?utf-8?B?dDNHcndOakNxVXAyOUNuWkVhU1dHR1hVTm4vZ0M0WDBHQXI4R2JmZDk5Rnl2?=
 =?utf-8?B?VHRYMVVlSWFOaGZ4dm1uc2tENlhxeTk2WW00dWJrT3ByZW9FWXU2WWxqWm5i?=
 =?utf-8?B?dnpLbTBYR2M0MmUvd1RZd05LYVFETTZkREFCVVlMU2lDSGFjNXQzZElUU25M?=
 =?utf-8?B?d3dXMzdkNFlBN3BiKzhGNUFGZnVIZDNaVU9NaDRCeEZJYlZ0dFppWE5EVEp3?=
 =?utf-8?B?V0ZKRUNDV21jM3dvTzVzNkx2WHpTR0ZKdzBhR1ZxSjkxdkZkQWJtSnpVSjI0?=
 =?utf-8?B?dDNNWXNKbjZ2RXptWldUTFdWN1Zab3Y2L0JiaHlIaTdsUDRrMkt5ZDFJSitB?=
 =?utf-8?B?c3UzOFpicS9UMDJNdTFhOE1oWElUbnMwZjVOclMrQ3BMNmhnblUrRHlDRkxZ?=
 =?utf-8?B?WjJNZEdvYUdnRUxXZG5BdTkwRm9jMSt3UTdKT0UxZkxCUzk3TGoyNk1HbjdQ?=
 =?utf-8?B?NnZCT2YvdktyZDg4ZHFSMjdFRGxDVVRaU2I0V1BSVUFwRHY3ajRVQkRjUHJY?=
 =?utf-8?B?enc2MlY4LzBvQklEQVBJNDI5Qnk3cU52ZVc1RE9XMy8rSEpnQ2ZXOE5ZZU5H?=
 =?utf-8?B?bktFcFZML05NdnN3MWpzSjBDbndVR1MxUGlRaXF4YnQ5OUpuRlpEUy8vZ2Jm?=
 =?utf-8?B?NkQ4eVBaYWt2cWJJUVlpbld4RG05SHIwSkJxWGhBNjliK0d0YUhtN2hmYzFi?=
 =?utf-8?B?NzM3QjBTUFJQSjE5dkk2VkFaRUxzWEhQaWJEUm5PaG4xc1RPVis3alVucGx6?=
 =?utf-8?B?d3hwSTlCNENpcElVdHRXeS85YjFFQm41MUlFVTJoVUtJSkE3QSt1a2ZJTjJK?=
 =?utf-8?B?SnBQVng5enJhM1FraG9iMitZOVRqWElSaEZDK0lpNHZWb2NvdjRaR1k0SHVV?=
 =?utf-8?B?QSs4VzFVclJNZ0E3VEM0emRUS3NDWlBQclpGamtMaFJCRDBIcTRXUHhKMUkv?=
 =?utf-8?B?TXJsbitWazZwa09qQU9MTmYyYk9xNFF2ZG5JWGdHbEJCcklVY0NCYlFpaW1N?=
 =?utf-8?B?QVJ6VFRWaUNPaU94S3ducnhueDVhSUJKby9qS0E2NEQzcWhRaVhqbzZKZjBz?=
 =?utf-8?B?bUh4V05STjBBcksvd3gzTlY2MjhFbjhhWnRYcFZBV0dsVnRPempjNkZxcEsx?=
 =?utf-8?B?cUdqeldjQU0wdlpSRkRxUG9BL1FHM0pBUU5ZU1k4Uk5pUjZTVHBEWlRNdkR0?=
 =?utf-8?B?OXE1TE1FZWhHR291c2J4UGFTbmR6bStyUyt3dUZaK0Z6RHJmd25sSTFITU0w?=
 =?utf-8?B?Zkx5WWYyd2xLYTNDZkZPNTJyWStOclVEMHh6R0QvOVZCMTkzdVJCRFltRzZz?=
 =?utf-8?B?UVNlWmRndDBaY0oyRStjRUFyWUZKZm52ZkFkKzRwN1FJc3FrdVB1SndrSTBR?=
 =?utf-8?B?a3lGbG84Zk8vKzFKYXVvbHlmaWgvVUprVnJtelp3K2ptdWlmUWZ6Sk1zbkg1?=
 =?utf-8?B?NjZGV2xsT2NWczRZb29sYnBidWY1YlNXdVFWNVViZ2g0eXVRQUh0em9udWsy?=
 =?utf-8?B?Q3l2MnF1eVE1QThHNUZYc3RSbm9tcUpXRmg1NVY3aTlNQWtybnA4dTZBcEU2?=
 =?utf-8?B?UnNyQVZtRzcwZUE0MTRYaXdreFducXBBbHZsbGRGaEMwa3hXMVNJMHMzRGh2?=
 =?utf-8?B?ZHZ4MjBTVDR6U3hwNThOUGhmWUVvT1NvVjF0MmE1OXVNbDRTV250SEE0NkQw?=
 =?utf-8?B?N3Q0aUhRUXFuN0NZWm9mRXRKWjNjQkpTUHBFanFOejVwVUNLeEZmV3hWZmV5?=
 =?utf-8?Q?ASISobm/1twig3O9rfv8bBUiR?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 44630890-f330-443f-ac8d-08dbd6b72578
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Oct 2023 06:37:10.0133
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 5Z/3OMEBRvhfmDiTJH2o5AWeyDnv8L1GRZn5pTI7xHMU13sDtJYiXqC6k8ZS/Cm5Ey4vFP2au/UDUkhherSNyg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR04MB7902

On 26.10.2023 18:55, Xenia Ragiadakou wrote:
> 
> 
> On 26/10/23 17:55, Jan Beulich wrote:
>> On 26.10.2023 15:58, Xenia Ragiadakou wrote:
>>>
>>> On 26/10/23 15:37, Jan Beulich wrote:
>>>> On 26.10.2023 14:35, Xenia Ragiadakou wrote:
>>>>>
>>>>>
>>>>> On 26/10/23 14:51, Jan Beulich wrote:
>>>>>> On 26.10.2023 11:46, Xenia Ragiadakou wrote:
>>>>>>> On 26/10/23 11:45, Jan Beulich wrote:
>>>>>>>> On 26.10.2023 10:34, Xenia Ragiadakou wrote:
>>>>>>>>> On 26/10/23 10:35, Jan Beulich wrote:
>>>>>>>>>> On 26.10.2023 08:45, Xenia Ragiadakou wrote:
>>>>>>>>>>> --- a/xen/arch/x86/hvm/dom0_build.c
>>>>>>>>>>> +++ b/xen/arch/x86/hvm/dom0_build.c
>>>>>>>>>>> @@ -518,7 +518,7 @@ static paddr_t __init find_memory(
>>>>>>>>>>>               if ( end <= kernel_start || start >= kernel_end )
>>>>>>>>>>>                   ; /* No overlap, nothing to do. */
>>>>>>>>>>>               /* Deal with the kernel already being loaded in the region. */
>>>>>>>>>>> -        else if ( kernel_start - start > end - kernel_end )
>>>>>>>>>>> +        else if ( kernel_start + kernel_end > start + end )
>>>>>>>>>> What meaning has the sum of the start and end of either range? I can't
>>>>>>>>>> figure how comparing those two values will be generally correct / useful.
>>>>>>>>>> If the partial-overlap case needs handling in the first place, I think
>>>>>>>>>> new conditionals need adding (and the existing one needs constraining to
>>>>>>>>>> "kernel range fully contained") to use
>>>>>>>>>> - as before, the larger of the non-overlapping ranges at start and end
>>>>>>>>>>        if the kernel range is fully contained,
>>>>>>>>>> - the tail of the range when the overlap is at the start,
>>>>>>>>>> - the head of the range when the overlap is at the end.
>>>>>>>>> Yes it is not quite straight forward to understand and is based on the
>>>>>>>>> assumption that end > kernel_start and start < kernel_end, due to
>>>>>>>>> the first condition failing.
>>>>>>>>>
>>>>>>>>> Both cases:
>>>>>>>>> (start < kernel_start && end < kernel_end) and
>>>>>>>>> (kernel_start - start > end - kernel_end)
>>>>>>>>> fall into the condition ( kernel_start + kernel_end > start + end )
>>>>>>>>>
>>>>>>>>> And both the cases:
>>>>>>>>> (start > kernel_start && end > kernel_end) and
>>>>>>>>> (end - kernel_end > kernel_start - start)
>>>>>>>>> fall into the condition ( kernel_start + kernel_end < start + end )
>>>>>>>>>
>>>>>>>>> ... unless of course I miss a case
>>>>>>>> Well, mathematically (i.e. ignoring the potential for overflow) the
>>>>>>>> original expression and your replacement are identical anyway. But
>>>>>>>> overflow needs to be taken into consideration, and hence there is a
>>>>>>>> (theoretical only at this point) risk with the replacement expression
>>>>>>>> as well. As a result I still think that ...
>>>>>>>>
>>>>>>>>>> That said, in the "kernel range fully contained" case it may want
>>>>>>>>>> considering to use the tail range if it is large enough, rather than
>>>>>>>>>> the larger of the two ranges. In fact when switching to that model, we
>>>>>>>>>> ought to be able to get away with one less conditional, as then the
>>>>>>>>>> "kernel range fully contained" case doesn't need treating specially.
>>>>>>>> ... this alternative approach may want considering (provided we need
>>>>>>>> to make a change in the first place, which I continue to be
>>>>>>>> unconvinced of).
>>>>>>> Hmm, I see your point regarding the overflow.
>>>>>>> Given that start < kernel_end and end > kernel_start, this could
>>>>>>> be resolved by changing the above condition into:
>>>>>>> if ( kernel_end - start > end - kernel_start )
>>>>>>>
>>>>>>> Would that work for you?
>>>>>>
>>>>>> That would look quite a bit more natural, yes. But I don't think it covers
>>>>>> all cases: What if the E820 range is a proper sub-range of the kernel one?
>>>>>> If we consider kernel range crossing E820 region boundaries, we also need
>>>>>> to take that possibility into account, I think.
>>>>>
>>>>> You are right, this case is not handled and can lead to either of the
>>>>> issues mentioned in commit message.
>>>>> Maybe we should check whether end > start before proceeding with
>>>>> checking the size.
>>>>
>>>> It looks like it all boils down to the alternative I did sketch out.
>>>
>>> I 'm not sure I fully understood the alternative.
>>> Do you mean sth in the lines below?
>>>
>>>            if ( end <= kernel_start || start >= kernel_end )
>>>                ; /* No overlap, nothing to do. */
>>>            /* Deal with the kernel already being loaded in the region. */
>>> -        else if ( kernel_start - start > end - kernel_end )
>>> +        else if ( start < kernel_start && end > kernel_end ) {
>>> +            if ( kernel_start - start > end - kernel_end )
>>> +                end = kernel_start;
>>> +            else
>>> +                start = kernel_end;
>>> +        }
>>> +        else if ( start < kernel_start )
>>>                end = kernel_start;
>>> -        else
>>> +        else if ( end > kernel_end )
>>>                start = kernel_end;
>>> +        else
>>> +            continue;
>>>
>>>            if ( end - start >= size )
>>>                return start;
>>
>> Not exactly, no, because this still takes the size into account only
>> in this final if().
>>
>>> You wouldn't like to consider this approach?
>>
>> I'm happy to consider any other approach. Just that ...
>>
>>>            if ( end <= kernel_start || start >= kernel_end )
>>>                ; /* No overlap, nothing to do. */
>>>            /* Deal with the kernel already being loaded in the region. */
>>> -        else if ( kernel_start - start > end - kernel_end )
>>> +        else if ( kernel_end - start > end - kernel_start )
>>>                end = kernel_start;
>>>            else
>>>                start = kernel_end;
>>>
>>> -        if ( end - start >= size )
>>> +        if ( end > start && end - start >= size )
>>>                return start;
>>>        }
>>
>> ... I'm afraid this doesn't deal well with the specific case I was
>> mentioning: If the E820 region is fully contained in the kernel range,
>> it looks to me as if this approach would ignore the E820 altogether,
>> since you either move end ahead of start or start past end then. Both
>> head and tail regions may be large enough in this case, and if this
>> was the only region above 1M, there'd be no other space to fall back
>> to.
> 
> Yes, in which case it will fail. This is legitimate.

Not really, if there is space available (but just not properly used).

> Currently, the code proceeds with the dom0 kernel being corrupted.

And we agree that this wants fixing.

Jan


From xen-devel-bounces@lists.xenproject.org Fri Oct 27 06:37:40 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 27 Oct 2023 06:37:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624210.972575 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qwGTU-0002d9-GO; Fri, 27 Oct 2023 06:37:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624210.972575; Fri, 27 Oct 2023 06: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 1qwGTU-0002d2-Cf; Fri, 27 Oct 2023 06:37:40 +0000
Received: by outflank-mailman (input) for mailman id 624210;
 Fri, 27 Oct 2023 06:37: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 1qwGTS-0002aS-Ti; Fri, 27 Oct 2023 06:37: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 1qwGTS-0003WS-MV; Fri, 27 Oct 2023 06:37: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 1qwGTS-000080-7J; Fri, 27 Oct 2023 06:37:38 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qwGTS-0007r2-6r; Fri, 27 Oct 2023 06:37: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=jxD6UPj9k5pYJW8QE0OGGL2CKswHjkDSnUhxr51+Lqw=; b=TcSkexsEtPPwfZRu6lssVKzrIw
	YUFQME+HRzUD6A3TLJmtBshrdfaQ91S1t9Q6GGkhp7D0dYqE1vQuS6CMJvRwMujT/4CXNttIltCbB
	/bF+oPZTR+OHgg49o+bZeZ1K839zweA2TVP9UsD9niFO5q+N+Vd7f8q7z/MQzYIcbSbE=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183548-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 183548: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=7e08d17a4a535a7abfa58a0606ca1a0e7f5862ad
X-Osstest-Versions-That:
    ovmf=ca32f75fc6ba4a41a65b5ea83eaa21d209bae570
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 27 Oct 2023 06:37:38 +0000

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

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 7e08d17a4a535a7abfa58a0606ca1a0e7f5862ad
baseline version:
 ovmf                 ca32f75fc6ba4a41a65b5ea83eaa21d209bae570

Last test of basis   183546  2023-10-27 01:13:59 Z    0 days
Testing same since   183548  2023-10-27 03:17:33 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
   ca32f75fc6..7e08d17a4a  7e08d17a4a535a7abfa58a0606ca1a0e7f5862ad -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Fri Oct 27 06:48:39 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 27 Oct 2023 06:48:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624220.972585 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qwGe1-0004rB-Ko; Fri, 27 Oct 2023 06:48:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624220.972585; Fri, 27 Oct 2023 06: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 1qwGe1-0004r4-HL; Fri, 27 Oct 2023 06:48:33 +0000
Received: by outflank-mailman (input) for mailman id 624220;
 Fri, 27 Oct 2023 06:48: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 1qwGe0-0004qu-9u; Fri, 27 Oct 2023 06:48: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 1qwGdz-0003v8-Vg; Fri, 27 Oct 2023 06:48: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 1qwGdz-0000aK-F3; Fri, 27 Oct 2023 06:48:31 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qwGdz-0006nl-Ef; Fri, 27 Oct 2023 06:48: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=sy7j4BeVlUoda4Cx7QpaA96fZbshu9wPzrtvzgcal3I=; b=FdLKj8JAKqFay3r0Q/T13qj+iS
	zcWnUweNr+ZZju7zGZy3vyeUmRh0rhrPnZVadiHYn4AG1qQQjZ7wdaE0XhHdJ/ZOEP7DPcVRRdr4m
	xiKJ4Vk0I5T0RkM3mB8bnSue3wfwEdg/+KhRbOC7Lvd1wtCCStVdWsDUOHIveK8SIhjU=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183544-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 183544: tolerable FAIL - PUSHED
X-Osstest-Failures:
    linux-linus:test-armhf-armhf-libvirt:xen-boot: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:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl: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:saverestore-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-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-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-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-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:saverestore-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-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-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2: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: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-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=3a568e3a961ba330091cd031647e4c303fa0badb
X-Osstest-Versions-That:
    linux=611da07b89fdd53f140d7b33013f255bf0ed8f34
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 27 Oct 2023 06:48:31 +0000

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

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-armhf-armhf-libvirt      8 xen-boot            fail pass in 183550-retest

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt 16 saverestore-support-check fail in 183550 like 183530
 test-armhf-armhf-libvirt    15 migrate-support-check fail in 183550 never pass
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183530
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183530
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183530
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183530
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183530
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183530
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183530
 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          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          16 saverestore-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-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-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-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-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-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-credit2  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-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-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                3a568e3a961ba330091cd031647e4c303fa0badb
baseline version:
 linux                611da07b89fdd53f140d7b33013f255bf0ed8f34

Last test of basis   183530  2023-10-25 18:12:16 Z    1 days
Testing same since   183544  2023-10-26 19:11:57 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Alex Bee <knaerzche@gmail.com>
  Alexandru Matei <alexandru.matei@uipath.com>
  Anjali Kulkarni <anjali.k.kulkarni@oracle.com>
  Arnd Bergmann <arnd@arndb.de>
  Arpana Arland <arpanax.arland@intel.com> (A Contingent worker at Intel)
  Avraham Stern <avraham.stern@intel.com>
  Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
  Ben Greear <greearb@candelatech.com>
  Bjorn Andersson <andersson@kernel.org>
  Christoph Hellwig <hch@lst.de>
  Christophe JAILLET <christophe.jaillet@wanadoo.fr>
  Christopher Obbard <chris.obbard@collabora.com>
  Ciprian Regus <ciprian.regus@analog.com>
  Conor Dooley <conor.dooley@microchip.com>
  Dan Carpenter <dan.carpenter@linaro.org>
  David S. Miller <davem@davemloft.net>
  Dell Jin <dell.jin.code@outlook.com>
  Deming Wang <wangdeming@inspur.com>
  Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
  Douglas Anderson <dianders@chromium.org>
  Drew Fustini <dfustini@baylibre.com>
  Eric Dumazet <edumazet@google.com>
  Ermin Sunj <ermin.sunj@theobroma-systems.com>
  Fred Chen <fred.chenchen03@gmail.com>
  Gan, Yi Fang <yi.fang.gan@intel.com>
  Geert Uytterhoeven <geert+renesas@glider.be>
  Gregory CLEMENT <gregory.clement@bootlin.com>
  Gregory Greenman <gregory.greenman@intel.com>
  Hao Ge <gehao@kylinos.cn>
  Heiko Stuebner <heiko@sntech.de>
  hq.dev+kernel@msdfc.xyz
  Ivan Vecera <ivecera@redhat.com>
  Jacob Keller <jacob.e.keller@intel.com>
  Jakob Unterwurzacher <jakob.unterwurzacher@theobroma-systems.com>
  Jakob Unterwurzacher <jakobunt@gmail.com>
  Jakub Kicinski <kuba@kernel.org>
  Janusz Krzysztofik <jmkrzyszt@gmail.com>
  Jisheng Zhang <jszhang@kernel.org>
  Johannes Berg <johannes.berg@intel.com>
  Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
  Kunwu Chan <chentao@kylinos.cn>
  Linus Torvalds <torvalds@linux-foundation.org>
  Maciej Fijalkowski <maciej.fijalkowski@intel.com>
  Marco Elver <elver@google.com>
  Mateusz Palczewski <mateusz.palczewski@intel.com>
  Michael Sit Wei Hong <michael.wei.hong.sit@intel.com>
  Michal Schmidt <mschmidt@redhat.com>
  Mirsad Goran Todorovac <mirsad.todorovac@alu.unizg.hr>
  Moritz Wanzenböck <moritz.wanzenboeck@linbit.com>
  Naama Meir <naamax.meir@linux.intel.com>
  Nam Cao <namcao@linutronix.de>
  Neal Cardwell <ncardwell@google.com>
  Pablo Neira Ayuso <pablo@netfilter.org>
  Paolo Abeni <pabeni@redhat.com>
  Pieter Jansen van Vuuren <pieter.jansen-van-vuuren@amd.com>
  Pucha Himasekhar Reddy <himasekharx.reddy.pucha@intel.com> (A Contingent worker at Intel)
  Rafal Romanowski <rafal.romanowski@intel.com>
  Randy Dunlap <rdunlap@infradead.org>
  Rob Herring <robh@kernel.org>
  Robert Marko <robert.marko@sartura.hr>
  Samuel Holland <samuel.holland@sifive.com>
  Sasha Neftin <sasha.neftin@intel.com>
  Shawn Guo <shawnguo@kernel.org>
  Shigeru Yoshida <syoshida@redhat.com>
  Stephen Boyd <sboyd@kernel.org>
  Su Hui <suhui@nfschina.com>
  Tirthendu Sarkar <tirthendu.sarkar@intel.com>
  Tony Lindgren <tony@atomide.com>
  Tushar Vyavahare <tushar.vyavahare@intel.com>
  Vlad Buslov <vladbu@nvidia.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                                     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
   611da07b89fd..3a568e3a961b  3a568e3a961ba330091cd031647e4c303fa0badb -> tested/linux-linus


From xen-devel-bounces@lists.xenproject.org Fri Oct 27 07:08:16 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 27 Oct 2023 07:08:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624226.972595 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qwGwx-0008Eh-8p; Fri, 27 Oct 2023 07:08:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624226.972595; Fri, 27 Oct 2023 07: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 1qwGwx-0008EZ-57; Fri, 27 Oct 2023 07:08:07 +0000
Received: by outflank-mailman (input) for mailman id 624226;
 Fri, 27 Oct 2023 07:08: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=eU9S=GJ=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qwGww-0008ET-IZ
 for xen-devel@lists.xenproject.org; Fri, 27 Oct 2023 07:08:06 +0000
Received: from EUR02-DB5-obe.outbound.protection.outlook.com
 (mail-db5eur02on2062f.outbound.protection.outlook.com
 [2a01:111:f400:fe12::62f])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 92ab64bf-7497-11ee-98d6-6d05b1d4d9a1;
 Fri, 27 Oct 2023 09:08:04 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DB8PR04MB6939.eurprd04.prod.outlook.com (2603:10a6:10:11d::8) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.11; Fri, 27 Oct
 2023 07:08:02 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6954.008; Fri, 27 Oct 2023
 07:08: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: 92ab64bf-7497-11ee-98d6-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=dWE1LiBjiFQknUYec/q3YJOyGKFXZyWvblIZbrJJ6WHWmyo3+lN3NMQmIGcgoQQwszVU8HrX4/ToI2rvfSUFsnEK8jVI+Q0tl6ptM8l9s0qGtBBpvVKlsLSIVkwwPVR+C3sa5WLYWbewo2tk7Ljy9i/UjQvY2kLruxo3IiYGHpIlxLBcScWXwOOrpRs/qZzeiDuQF9R9dN43PhEK9QRTKLz/SnmuqZwACqR/wxezMQQj9iNHftANpwjPM6AVgKMAPvEApcibxkkMIULvCRlVvG5XuHgWpp/mIFWXBJKcpMuVSKGKGL6pxd6eKjmgyTFbNPwNet+ZaQq9tCqg2xasGQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=Ia8vcCymjpiYknAAqLNayVWtaXeHdJ9Y36tiSByw/WA=;
 b=R05KhGIDWGllk4QSkI1uvyiUHC325EcTIdsrJHZc5VRbYKwSKsV/5xkZlr93jDGTEy79n/Lh3hi2uUw2pWaa0Pix0gkTZCtKa0tX1vQMyMCo4OH+T/VT1Xrt5IDD/15ERIPw6VkOZmvtNU7K5PomTnD9DuazQYtCoi0MsMMLgfdvRGXAS3J4orP9LFeHOFg9ee5xDOVQna9HFn6w/QKwrdXTxlE4NryvtPQ6fIMnuEtjeq/NJI4k7G107ghprXOXKBUKA9akwu6MNKENvvkXV7DqiFyFz3opeVR9fXNtylIuy0XXKlbs+La48OaG5LAqfSBEqcp3x/bpqRHyPGFbfQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=Ia8vcCymjpiYknAAqLNayVWtaXeHdJ9Y36tiSByw/WA=;
 b=E5CSy14JgCWgBCgsqWko30cPv9c0YVN3uYAR+5SH5qoD6POOd5ZlgCZy7uBROJxU+JAq7q80YPD1VjHVxb8x8aWQ5AX3RGQELmV1YyPc6hKm7xBXW0O66CYaAGGY/YOFj+sGn95jTOYfyGEpomK2MlPQ15dLMPeR1qTPQq44Oh4WNXkP+4XgMlX6yUdvS+5PfoY7E6h1Y3elF168Jk01hdWv1oLqnpoLuE+EoeC5J3qa6JDDZC/rGvwWkLIpokgoh6FUkH8WPoJchW5cgdqQErmF5nYnYIjyHacJ5tEVeR6wP4Xc/X6XtGzB3ylwZnmqAhyUmQAFRo6F8VuSgvZyPw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <1795ba80-803a-7ed0-73fa-7d6e06691bad@suse.com>
Date: Fri, 27 Oct 2023 09:07:59 +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/set_{c,p}x_pminfo: address violations od MISRA
 C:2012 Rule 8.3
Content-Language: en-US
To: Stefano Stabellini <sstabellini@kernel.org>,
 Federico Serafini <federico.serafini@bugseng.com>
Cc: xen-devel@lists.xenproject.org, 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>
References: <88499ca9a61b59d13d90f6c5f77cbb2e124d850e.1698322083.git.federico.serafini@bugseng.com>
 <alpine.DEB.2.22.394.2310261559470.271731@ubuntu-linux-20-04-desktop>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <alpine.DEB.2.22.394.2310261559470.271731@ubuntu-linux-20-04-desktop>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR5P281CA0026.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:f1::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_|DB8PR04MB6939:EE_
X-MS-Office365-Filtering-Correlation-Id: caf94a71-dcd3-4581-1c1a-08dbd6bb7573
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	GG50kq7JnsWGHjoLo3CvWdzrIsmYMRWFlPJz1z6dZeT/JNX3lW/LT+f3CjkBFi7LL5BCI+X5yv46tw5HyxDCqtwNqYIAl2rNz4Yrm4PuQvLRFEVC7zmLRZhVpaMpxZNafGaNKKjqaVBtjSHgTRahGeX9Hdvg0E8O4Eaa34E0VFZdSsie9Jt+w+lGAe9f1LAyReQwqvhz8oiWQdmpqElQMn2T0NGO8HYKpt4vae5yUHSTdeK/EPkzIZhTbXX3pdTvv86x6qoIItXnPV/Pl3fNi40skYC3W1LgkQOSjrwkfCd1MgYmJPTuWjx0jGX5AAjnz6aNEB0bN5qdvBDMoun46G4737vvMsEe86oO1q02IG/MxUPG3/rcoL1NuK9rqxhDd3wwhlabhOykBw3kzoyCwfEPOZkYVOOzC/QHRk/CCBvfq7QeZWIr/3pLQR6Gt7QFdNoPuyGwuEo2XqU1QLb+2eBk4cu+bFCKRqP33ylbJkxifLnNWMswQquJ0YLzLUy/MwOqAquHCZw7iQskYZKMthLHYdAGY0TPdWWtCMkAapnTfTtNJ8gX5r/Otv/geLomP2EAMXFIzkqWKFMgX3gmwkD7iDIa1kOQrwwzA3f75+EgrhTcWwJapnT0m5NdLcR9sUMDPQB1WLAcwG7snYXz3g==
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)(366004)(396003)(346002)(39860400002)(230922051799003)(451199024)(1800799009)(186009)(64100799003)(86362001)(31686004)(6666004)(8676002)(2906002)(41300700001)(38100700002)(6506007)(26005)(83380400001)(53546011)(2616005)(5660300002)(6512007)(31696002)(4326008)(54906003)(36756003)(66476007)(478600001)(110136005)(316002)(6486002)(8936002)(66556008)(66946007)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?MVBiZzM2c01Qb1pmNnExN0lpYlpLRk5LS25EcDIxSnczbkh5ZFpHRTFCVmhr?=
 =?utf-8?B?YVBWSThFNThCbHphZlh1aWJsNUhCQlpwRjBQM01kZkFUanlSdHFtb2ZkSXdK?=
 =?utf-8?B?V011czFsSTd1Nkxnbng3SVR5MTJBVVNWN2ZZT0FCOEFuL3E4WjNicDRybTN5?=
 =?utf-8?B?R2xia2VxZjNYZmFnL0tzVFBrVmJVeHROb1JuWjUwanhsSTFOMmw5ODFwSHEw?=
 =?utf-8?B?dFoxalMxWm9lYlpJamdXWmszQ1FzSU53b3k3ZTRlZktmVDVHbGpPV2QwQTln?=
 =?utf-8?B?ekZUQkZZazV5dE9EbGJoeHBVcDZ0WVE1UUprSU5USlZYOGpjVk1VdU5hbGRY?=
 =?utf-8?B?TTVOVWRMa2gwa2JNU0lNbGt1blBubTNrNE5TWVcrNUlhdUY1S3lWWXQwT0Jn?=
 =?utf-8?B?cVVOblJVbWZtMS9xY3ZURnlGOURsTHFtUUtDQS9ZYWhCclNCMXNBS2cySVRl?=
 =?utf-8?B?LzZSWk0yVnlaVW9Yb2hIcDhUaE1pTFY0enpNVjZ5NDNXL0w4cUtCVExKZENB?=
 =?utf-8?B?N0lsRFJOS056RzM4eWlNNmtrM1NzcnJtdWMzVjdYYnJKK3FodUs5bzliWDBV?=
 =?utf-8?B?b1dXZitLTE50clRFNnpTTDZSaHRXQ3ZJa1dRcmZ0WjM3Z3I4NnA2MkVCbHdW?=
 =?utf-8?B?MXBBSHBHVi9YaldmbnFBN3hjSy9XalRFUDJvOVppVjNPNXNrYkg0Tzh1ZVB0?=
 =?utf-8?B?eHNFYUt5YTRNc25oejFZMnI0OFRzaGwzcHp0cXl4TThBdHRyRnBwT3hzbVpD?=
 =?utf-8?B?OGdQeU1tQWUyVHphb05SUWdDTmZ6U0Z5NHBqd2ZGQUZ0aG1kK0tKOUhsL3M2?=
 =?utf-8?B?STFZY1hvUklQUlZ0Qy9lMkRqZ0lEY1FuY2c5THJhcjNycUo5cFpFSEJpZXQ5?=
 =?utf-8?B?aFJBcXFmbjV0Y2k4TkxqM3U1THdUNC9HRk9MZDM2WVUvMmpXNWI0S1Q0L1FX?=
 =?utf-8?B?REZkdnUvY3BzUVdDWW5LYXpnQ29TZWZGcUNqUjNpYzZQeWh6aHViNkVUTGNZ?=
 =?utf-8?B?Z2srMEhDcGZoQk5obDFwQVlRS250SnNadEpoenlIVzg5VXR6TDFXakRGd1U0?=
 =?utf-8?B?SmtCOHBieFVjYlBkaXpqa3VpVnNlVk5RZ0tERTVYNWJNcXl6TU15STF0Smxl?=
 =?utf-8?B?QS9rMjl3NWR1TVdhVng3b2JScmlWSzN6UllkUzVpOTBwRlJqZGxDRFpvK0Fa?=
 =?utf-8?B?eTB1OUh3anhPVS9UUDNWMXVqMmJrNVlhZjVKclR1d1pvTkFLR3EwNlV4c21U?=
 =?utf-8?B?bm05QXZOMlhEYWFzMS9TR05tMHh6QnVIWlhDMkdwQ0x0MzRicG9xOHhEWTU0?=
 =?utf-8?B?QWNIVE1mQTBuM0VMbHVnNGpUQ2FLU2lLY0Q0UFNJNy83Wk1lTVF3UE11UFY5?=
 =?utf-8?B?V0ZsT25VcHVEVUtvMUkxZVcyT3V1YjF4SHJtQTVXZDN2YzNDWmF6NURwbVJW?=
 =?utf-8?B?NXM4dEx5VEZEN0lEc1Y1ZnNOMXpvWU9jNHZhZXJMaU4rOVZ3VnBydDdacEMr?=
 =?utf-8?B?TnF5Tjh6ZmFJdFhhSWlCcmVGeVJHMDVkUkwyUXM4MGo3bGpxS2JvT2c4dk1j?=
 =?utf-8?B?TnlyRStacFptbG5jTzVKVWhWaTRFQTRqWWVkQ1JhK0U1cmpBNmdjNDQ0RTAv?=
 =?utf-8?B?TmZpMmJodmlJZWhYand3S2hIaVNPYmJLUWVsekx1VHBvVDg0aDVydkpJY00x?=
 =?utf-8?B?aVhkOEp1S2pxYVkzdjZBNjVmdktTNzEvMm8yYzhjdDVpWDVOcE9CSUV5M3Vh?=
 =?utf-8?B?YjNhTWhwQUFlWEZ0TFlybTJzdGlTWFBNQ1kzaks0a0g1Q0dSd3lSUnVXYy9r?=
 =?utf-8?B?UFdVR3J3c2RLNmxRZGFzSHNwQ1k2eTlHYWszQzRrSi91SnNzSVJFSzZKcWlw?=
 =?utf-8?B?NiszdEhCcVIxY0cwUXRFeXY3ZzN4bEFybEFLVi9OYk1FMTB0ZUhwcmNhcHdq?=
 =?utf-8?B?eFVoRTAvcHRwcjk1YXIxRnVYZ0Q0L1V2dHUxcytubmo1WUkxVW9mN3VxZER0?=
 =?utf-8?B?bGxyN0dBcFBQVVJqR3h3aEJ4ODhRTVVTSWNWNE5mc3dqRWJJNUM0eG9JMmo4?=
 =?utf-8?B?emxqVVZFczc4d3BSb0tlL3oxUWlvQWFrMUtMazZLZGVoaTEvQVFLZTBQblEr?=
 =?utf-8?Q?AOujjWIeb5IHgsRoILO2VaCYn?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: caf94a71-dcd3-4581-1c1a-08dbd6bb7573
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Oct 2023 07:08:02.2027
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: rLCkOLUjryhjnR2hNlrcSD2Z84BdhEwt2T3cqP2k3gFHgHY5aCCR+XRbZx2G2qPiNA76QM9XHvnzOhx7y58UNg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB8PR04MB6939

On 27.10.2023 01:00, Stefano Stabellini wrote:
> On Thu, 26 Oct 2023, Federico Serafini wrote:
>> @@ -675,16 +673,16 @@ static int __init cpufreq_cmdline_parse(const char *s, const char *e)
>>  static int cf_check cpu_callback(
>>      struct notifier_block *nfb, unsigned long action, void *hcpu)
>>  {
>> -    unsigned int cpu = (unsigned long)hcpu;
>> +    unsigned int acpi_id = (unsigned long)hcpu;
>>  
>>      switch ( action )
>>      {
>>      case CPU_DOWN_FAILED:
>>      case CPU_ONLINE:
>> -        (void)cpufreq_add_cpu(cpu);
>> +        (void)cpufreq_add_cpu(acpi_id);
>>          break;
>>      case CPU_DOWN_PREPARE:
>> -        (void)cpufreq_del_cpu(cpu);
>> +        (void)cpufreq_del_cpu(acpi_id);
>>          break;
>>      default:
>>          break;
> 
> I take you made these changes to cpu_callback for consistency, not
> because they are required? Everything else makes sense so:

I'm sorry, but no, these changes are not only not required, they're
outright wrong. CPU callbacks never talk in terms of ACPI IDs. The
two functions called also aren't otherwise altered in this patch,
and both take "unsigned int cpu".

Jan

> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>



From xen-devel-bounces@lists.xenproject.org Fri Oct 27 07:12:49 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 27 Oct 2023 07:12:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624231.972604 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qwH1T-0001J1-Sr; Fri, 27 Oct 2023 07:12:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624231.972604; Fri, 27 Oct 2023 07: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 1qwH1T-0001Iu-QM; Fri, 27 Oct 2023 07:12:47 +0000
Received: by outflank-mailman (input) for mailman id 624231;
 Fri, 27 Oct 2023 07:12: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=eU9S=GJ=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qwH1T-0001Io-12
 for xen-devel@lists.xenproject.org; Fri, 27 Oct 2023 07:12:47 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 (mail-db8eur05on20621.outbound.protection.outlook.com
 [2a01:111:f400:7e1a::621])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 398f229b-7498-11ee-9b0e-b553b5be7939;
 Fri, 27 Oct 2023 09:12:44 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PAXPR04MB8457.eurprd04.prod.outlook.com (2603:10a6:102:1d8::18)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6954.11; Fri, 27 Oct
 2023 07:12:42 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6954.008; Fri, 27 Oct 2023
 07:12: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: 398f229b-7498-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Su2ApsWZma/UBuu3b2gJ5cGa996t6bnl+Ffbo8XQZqT3sirL55XEaHfIVpuMspoOUTzR/ytf5ZTt5XkDgC2LGI6Ayc1AMpseSF7g58fR3Ligv//f6Q9kcxYh9Jgll1nsJP+/olwhhFRhhWaFHRl7RTbAnenh3bQdF8NmPWcrK8E7aCw+m4gqEZA1hA6NiPbDNWpAMCV+CC9ZU68ZBQsDYzuH8IaDSStWSUFnayxDIvCbY41HBplA4eNgAt6dv8H+NCI4qLUADhZuV1pWZ/cLo0SvHqKoSWMDvsxUbIuualZdICN1ELLAo2E4eAXuR/Vbupya1AJEzAYAPlOnQOeMDA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=ZvCfxPBt0rbg0fD7wk13ly8mIejfQGicuvEoaReozpg=;
 b=hO2jdCue1jx2+ECrbCijn9NxguGFqyRx8fpgmf11EQJUGnpxYja5Vv8XbYEszzN0xYpTz/ExZ/05mzQ2oVADwMtxx2/wh2Qok6P1NgW7VDJ4SAmouImiTnqniZ5W7byWoKkrV4HKp3uMhK/mz/hfuCUfJP4wVbUWjJXIpmlcZBKMsSL0GuqKpFM5kUgqB8ZzhDSKtkRv8sZBAbW7GRJj58FPM4bQaM3wSno13EPEia1l4ayPnPk4mdh7HS5bRy8qw29gR55Yjv1ZkiIE80F4XKKjyC/WOsomK7SaQaAF1ZxzphsqSr3APC5lDXZyAebjnjSGQcAnxWWnylw9vaf95g==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=ZvCfxPBt0rbg0fD7wk13ly8mIejfQGicuvEoaReozpg=;
 b=atcrkUDG051WR5WBpKKlFih5DW9+Zo9nrskfKWJTzKtaIzJw371FoqPo2+2YCec40g+Qt/Q2c9VxNlBBhOk+kNLhhZx8ZmjX8YtSHGabqnqLr5stcfRHnPP15NsXRABKensdCl41O9daLlnCw4H+oHpkwjKj9qRlEX2wqokvFNVTy/2veIyxj+ZYEM6WccRe51LBaOq424Oj0sqDSwP2jvwJ1iTDwTMCk4cgSN3/9AH4D3mcg1jEtjy2MRHDgh9dHX8rsH7yE3Qi4VpPjwluHzn1SC7t/oL89lXsjO1YIN2mgiv4gVOUl3HGSKO4/gLMw59U2CkgkN16lG+pB7pXvA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <70472259-6429-e60f-7cdc-faa50b2d257f@suse.com>
Date: Fri, 27 Oct 2023 09:12: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 2/2] x86/Kconfig: Introduce CONFIG_{AMD,INTEL} and
 conditionalise ucode
Content-Language: en-US
To: Andrew Cooper <andrew.cooper3@citrix.com>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
Cc: Wei Liu <wl@xen.org>, Alejandro Vallejo <alejandro.vallejo@cloud.com>,
 Stefano Stabellini <stefano.stabellini@amd.com>,
 Xenia Ragiadakou <xenia.ragiadakou@amd.com>,
 Xen-devel <xen-devel@lists.xenproject.org>
References: <20231026205539.3261811-1-andrew.cooper3@citrix.com>
 <20231026205539.3261811-3-andrew.cooper3@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20231026205539.3261811-3-andrew.cooper3@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
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_|PAXPR04MB8457:EE_
X-MS-Office365-Filtering-Correlation-Id: ebf1ca2a-608e-4c16-e0a7-08dbd6bc1c50
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	rdIjc1pJvg363hnppoVhyL3o/bDhfptN71Fg/w82xkW5E6v8yi3GcQfm7HcOmhIguEeL0M3kDLZewMqjZNiPwev/PS2L38dZS2e/Gqz62VEeZql/HvpS5WbFfZIQiDkReAKlTu97SOceSWYhby+6VNGKHrEy9dyTdf3lj5hn+KzY/hjBIeDTsiGagcp4mHEhEC3olhz4IS7m0FyavKNUII6lwGzD6EnBtZ713zjGHk29EFDJOqRDtBwSwJUfwmUL9IggskV/CUdpl6NbQ+5b757BCX4HY+7bMH/YJepgGPXGTh9LxZv0AYgkFLE7NpYOFIVz8kHIUsZ+Oi0W35bXMrEt7XfPIhLtUqnT9X3mJ/s9H8JuvK5az42v0vl90xTJ3K9OlshjZsxkU8T9N4V/mBDLvXsaPxK738EEwrCmYy13Lz1JEIdj9zuvc69pQg0nSfB42DcC+beNL2FW5teKCyhgxIwtaYYMGKl3N5i3vVLRmHV6kB/f35hQIzNNfS3QEatQfnW8i3wtNe9Yuw03+QzIrW3WqHhs5uXfzyUM4P90VDNO6OVKCzifpjnrRGaAzkSOk34C2xJ48XAI5r1700KCGaeSdgikPybE1+KrN7TgCxeY64xAYcHITFIOG2T8XiFvpx1J2JrYEr8k3gedMA==
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)(230922051799003)(186009)(64100799003)(1800799009)(451199024)(2906002)(53546011)(6506007)(6512007)(86362001)(26005)(31696002)(2616005)(316002)(66946007)(66556008)(66476007)(54906003)(110136005)(6486002)(478600001)(83380400001)(38100700002)(5660300002)(4326008)(36756003)(41300700001)(8936002)(8676002)(31686004)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?VWZWR2dhcXptV0VaMzhOOTU4bnozMWF5VTNDNm9hQjBnUGorQ0Q3MmtEMXpm?=
 =?utf-8?B?TzU5NjZHYlVSUUVwdU10dENjLytFZWY1SHZBMW5UZHZ3YzArQmFYcFFGdnZK?=
 =?utf-8?B?dTBWeG92MXlrK09ndVJQRUlYaE5FdUVvditXNlNlMGRITEtGbC9RYmJRY3Iz?=
 =?utf-8?B?S3UwYlBab25GcEJ1L1MyM3FWbkhFdXkrQ2JOdWxHM0FVTGpnNmdpL3poZXlT?=
 =?utf-8?B?ZTBKRkdhU010akI2ajdRay9QRXFVc2tCRG01N01nUXkrQjI5aWRVcDJpc3JU?=
 =?utf-8?B?WnBLRGFsOWhPa3U1MHZFaVBhRU5OS1RmMzBjSjBxWUc1RGUrc1U3L01KN0VI?=
 =?utf-8?B?RExTZGlBK2dKa0FTYTFwb1BOUkpnUThyQjNQbFdGcG5MdE9sUFBaODFFZ1Rw?=
 =?utf-8?B?bGVmVEZjWVBUckdnZEdod3NYQy9Cc2IvdWxFWEdnVitobUI5ZU85cU1lQzVY?=
 =?utf-8?B?L1hiZlZHNGxaWWJzcXBMRlgxanFFRkRGNjRWMlN5RFlTTkJoSit5RGROU0M0?=
 =?utf-8?B?OUJLN0lPdUdwNWJDYm9tT3VNeDl2M2dDZFIyRFBWYXFOQjdyeml0WXpPZEdv?=
 =?utf-8?B?Nnhhdk5kTHZucGRBckVkMjVLMmd5Z0YzdkpKTDU5QXVIREhZMkZidlF2a3pI?=
 =?utf-8?B?dFVQR1lqM1Bna0xLVWFYZTFFN2VyUERhaHM0Rzl3MjBVdmJPbDlocEJNdHpj?=
 =?utf-8?B?N2IwTmF3d3NLZG1OM1RoWHRaMkk4bGN5SktreU9lZW9nN3IyWEZyS21seURZ?=
 =?utf-8?B?MUlWaEJwU0FHdlFad1BvMEU2Y3dvQ25VcWROdEZvcmRzVFJaRHBNTkR1SWJF?=
 =?utf-8?B?czNFbmVHUCsyamlCUkd4eFhLdFNGSk5NZDg3VHh0VXBqTG5Nc1Y3MjFVMldM?=
 =?utf-8?B?b1poQ1lYd1VXR0Y0NUVKLzErQ1ZnazcyS2h6NGxLMENtSmpJK2Z0cnBvN2Nn?=
 =?utf-8?B?Y0RYbHRyeGFtaXFORHBDKzRiUTQ1Q21Ba2dxR3U3SFNlc1B1V0VoN2szVENy?=
 =?utf-8?B?RXdhRXB3YUw1dVVtZkc0M3g2QWJKRDJIaytMeUh2Z1ZaRkwyVERTMkJLQlJw?=
 =?utf-8?B?U2t2QzhYaW9vQktLZThDNjNpekdwMzNIVzVZTnp0Y1VhbWd4V0d0RzZpVlR2?=
 =?utf-8?B?MlpDN1phRzIxZHcxeFhmWkhZc3UvazZ1MjRmSXZuc0hYeXlSdHJsU00weEx0?=
 =?utf-8?B?U1RTS0c4OW0xWTZWTFUzK295SG5zTC9lbHI5K1cvQXdyQUUrL0FNRTZsdkdJ?=
 =?utf-8?B?dU5pRUlGMERUQ2JQQ2pHc0h0UnhWclQ0cUdnQTJjNWhoMXZRMjFoT1NFWVIx?=
 =?utf-8?B?N0ZLWmZ2THpadUZ2S3FqM2E0cjBZUDlHUWFJWXBZYVp1U1FZSkdXY0FRRTVw?=
 =?utf-8?B?Mm9JTTZiVmhYS1I3RmNhdFdzdFJJditVdkNVYnJqUFVSdUd3SzdPa2Zkd2p2?=
 =?utf-8?B?bmM1aCtlMis3M3N0bmp6eDhPUEZCZ2x1OEpFdUV1ZUlsN1dpeGRIaTlVYmhw?=
 =?utf-8?B?U1p5d05GQ3JKUmt5RlZ5a3Z3TUJGWjVxSFRVd3lwb2JIM25WaXcwQ1dzQ0F5?=
 =?utf-8?B?OXRFNklGVTdybStZY2lpQjBYZHZHNkE0UVpiUDVKbW1idVVnU3ZLNnFNSVNh?=
 =?utf-8?B?TG54ZXNLa0dhanFqdHJRdEg4ZXBXSldkdXpZY3FDQzYyYUsra1kyc1dNTFhu?=
 =?utf-8?B?ZGlyTUpVS1kvVGlDcVlUSlM2L2dxeTEveG9VMGJqSG5BL2xtei96Y3g5cytH?=
 =?utf-8?B?UlVqQ3pROXBKUXo1b242bldvdWgwSTg1SmVwREtXU3V6UHAyenJRemFMRWdl?=
 =?utf-8?B?MWI1bXhocDlSNnBJZEtGTko4NWV2SkZDR0JWZzBIY1J5RHhxa2NhRUhjb2dX?=
 =?utf-8?B?OFhJTmUzdVI3TVc1VmdxdEswVmpOVXl2UFpuUnpjMUcvWWtEUWgxYllpdjIx?=
 =?utf-8?B?SWdkeE1VMFRsL1VLYjI1ejJxVm1RMDZxSWdibXpmVmJhUjVWdW9abnd0MXJz?=
 =?utf-8?B?bzkxejVpYW4rNVhsNlY2YnlYa0o2VDE0RWV3SDNXRU1BSTZHVVNYSjQzSUdL?=
 =?utf-8?B?OEI5QTBlNmYwbEl0alhNNnlYMGl3aFN1L3F6L0hCNytJQy8wRWsvaXFhMnNv?=
 =?utf-8?Q?BrDGiChHc3jwVeLBaHz/sJfot?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: ebf1ca2a-608e-4c16-e0a7-08dbd6bc1c50
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Oct 2023 07:12:42.1564
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: CZil1dJ2bpj6KOg1wAAfVzOPDYvlxEm9sq6bSBDMO64bIYaUd4NSUszGHRtS9LYW7jG+VbeWa+u1nBeXxIyIoQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB8457

On 26.10.2023 22:55, Andrew Cooper wrote:
> We eventually want to be able to build a stripped down Xen for a single
> platform.  Make a start with CONFIG_{AMD,INTEL} (hidden behind EXPERT, but
> available to randconfig), and adjust the microcode logic.
> 
> No practical 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>
> CC: Alejandro Vallejo <alejandro.vallejo@cloud.com>
> CC: Stefano Stabellini <stefano.stabellini@amd.com>
> CC: Xenia Ragiadakou <xenia.ragiadakou@amd.com>
> 
> I've intentionally ignored the other vendors for now.  They can be put into
> Kconfig by whomever figures out the actual dependencies between their init
> routines.
> 
> v2:
>  * Tweak text

What about the indentation issues mentioned in reply to v1?

As to using un-amended AMD and INTEL - Roger, what's your view here?
I'm not outright opposed, but to me it feels misleading to omit CPU
from those Kconfig symbols.

Jan

> ---
>  xen/arch/x86/Kconfig                 |  2 ++
>  xen/arch/x86/Kconfig.cpu             | 22 ++++++++++++++++++++++
>  xen/arch/x86/cpu/microcode/Makefile  |  4 ++--
>  xen/arch/x86/cpu/microcode/private.h |  9 +++++++++
>  4 files changed, 35 insertions(+), 2 deletions(-)
>  create mode 100644 xen/arch/x86/Kconfig.cpu
> 
> diff --git a/xen/arch/x86/Kconfig b/xen/arch/x86/Kconfig
> index eac77573bd75..d9eacdd7e0fa 100644
> --- a/xen/arch/x86/Kconfig
> +++ b/xen/arch/x86/Kconfig
> @@ -49,6 +49,8 @@ config HAS_CC_CET_IBT
>  
>  menu "Architecture Features"
>  
> +source "arch/x86/Kconfig.cpu"
> +
>  source "arch/Kconfig"
>  
>  config PV
> diff --git a/xen/arch/x86/Kconfig.cpu b/xen/arch/x86/Kconfig.cpu
> new file mode 100644
> index 000000000000..3c5d88fdfd16
> --- /dev/null
> +++ b/xen/arch/x86/Kconfig.cpu
> @@ -0,0 +1,22 @@
> +menu "Supported CPU vendors"
> +	visible if EXPERT
> +
> +config AMD
> +	bool "AMD"
> +        default y
> +        help
> +          Detection, tunings and quirks for AMD platforms.
> +
> +	  May be turned off in builds targetting other vendors.  Otherwise,
> +	  must be enabled for Xen to work suitably on AMD platforms.
> +
> +config INTEL
> +	bool "Intel"
> +        default y
> +        help
> +          Detection, tunings and quirks for Intel platforms.
> +
> +	  May be turned off in builds targetting other vendors.  Otherwise,
> +	  must be enabled for Xen to work suitably on Intel platforms.
> +
> +endmenu
> diff --git a/xen/arch/x86/cpu/microcode/Makefile b/xen/arch/x86/cpu/microcode/Makefile
> index aae235245b06..30d600544f45 100644
> --- a/xen/arch/x86/cpu/microcode/Makefile
> +++ b/xen/arch/x86/cpu/microcode/Makefile
> @@ -1,3 +1,3 @@
> -obj-y += amd.o
> +obj-$(CONFIG_AMD) += amd.o
>  obj-y += core.o
> -obj-y += intel.o
> +obj-$(CONFIG_INTEL) += intel.o
> diff --git a/xen/arch/x86/cpu/microcode/private.h b/xen/arch/x86/cpu/microcode/private.h
> index b58611e908aa..da556fe5060a 100644
> --- a/xen/arch/x86/cpu/microcode/private.h
> +++ b/xen/arch/x86/cpu/microcode/private.h
> @@ -70,7 +70,16 @@ struct microcode_ops {
>   * support available) and (not) ops->apply_microcode (i.e. read only).
>   * Otherwise, all hooks must be filled in.
>   */
> +#ifdef CONFIG_AMD
>  void ucode_probe_amd(struct microcode_ops *ops);
> +#else
> +static inline void ucode_probe_amd(struct microcode_ops *ops) {}
> +#endif
> +
> +#ifdef CONFIG_INTEL
>  void ucode_probe_intel(struct microcode_ops *ops);
> +#else
> +static inline void ucode_probe_intel(struct microcode_ops *ops) {}
> +#endif
>  
>  #endif /* ASM_X86_MICROCODE_PRIVATE_H */



From xen-devel-bounces@lists.xenproject.org Fri Oct 27 07:15:55 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 27 Oct 2023 07:15:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624235.972615 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qwH4R-0002Oh-B8; Fri, 27 Oct 2023 07:15:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624235.972615; Fri, 27 Oct 2023 07: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 1qwH4R-0002Oa-7E; Fri, 27 Oct 2023 07:15:51 +0000
Received: by outflank-mailman (input) for mailman id 624235;
 Fri, 27 Oct 2023 07:15: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=eEfT=GJ=gmail.com=xadimgnik@srs-se1.protection.inumbo.net>)
 id 1qwH4Q-0002OU-2a
 for xen-devel@lists.xenproject.org; Fri, 27 Oct 2023 07:15:50 +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 a6e211bf-7498-11ee-9b0e-b553b5be7939;
 Fri, 27 Oct 2023 09:15:48 +0200 (CEST)
Received: by mail-wm1-x32f.google.com with SMTP id
 5b1f17b1804b1-407da05f05aso12945165e9.3
 for <xen-devel@lists.xenproject.org>; Fri, 27 Oct 2023 00:15:48 -0700 (PDT)
Received: from [192.168.10.177] (54-240-197-235.amazon.com. [54.240.197.235])
 by smtp.gmail.com with ESMTPSA id
 t20-20020a0560001a5400b0032ddc3b88e9sm1145980wry.0.2023.10.27.00.15.45
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Fri, 27 Oct 2023 00:15: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: a6e211bf-7498-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698390947; x=1698995747; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:from:references:cc:to
         :content-language:subject:reply-to:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=r+vdINcmFGGjA6+x+iJDg46Mk3yJWEt8/WHgQwybeJI=;
        b=jgxB9DFixxTyEHhJTMvV6PYnZK9irWb/dKfGwZWPuS1WUQjqN365PIp2tR+rKHh1s8
         S8xXWsbG1bo97wfKUHyo0WDLxVhbZOSBh6MieLqhTs2O+cJK0Xaqfr3Go8cudkQRkCWL
         Ehjvxz/T6yBM9rDC94gtTJnz+00Wh7HOIZctFrs7hA9wYAFNsbef5MazKtkIxM1bzPw5
         VNejiICCwjED5bLsM9xhg1bSJVLT0X+4sDjVZnb//RKISz+EM/Dv2ReFn2NArR6t94V2
         sG74Q1V/Ko3iKdrBrep4avI2hU7mYCSfC0FoWuG/aftwMVnJVtA3CgQ2CivRGEasdky+
         d5zA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698390947; x=1698995747;
        h=content-transfer-encoding:in-reply-to:from:references:cc:to
         :content-language:subject:reply-to:user-agent:mime-version:date
         :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=r+vdINcmFGGjA6+x+iJDg46Mk3yJWEt8/WHgQwybeJI=;
        b=xUZdJ1t7uktk6S+CyuvBFa9CSQE5bT2VeFBQSpt9liJvNU7VpumS3mWAdRf+VxHMPO
         4aVdis/epR4me12hFbwwPSzTV/TfernTwFl799Wk21u/4zBTs2Q+XM5O4p+c/8EGq4hQ
         s5h+dy/BRAnTAnyICO/cl1QuFkOop1cqmWksmERIhEUrxUkTajJ5FPu5COYewDARJ0/R
         K8pdRYJKPLTpiVaROpxJU2GA2XQR58YaYoZW4DGhZyp1wGeT7r6/fPPNnHyHgyFVrUii
         NnGJFgCkided2iGLYkqPZUqnmhW91yfnzQhDBo7HlnnjCfEQ1GF8edCfJoe2j/sMa9fx
         jEdg==
X-Gm-Message-State: AOJu0YwWMAv51ysBf47ekweX/YwYlw2aDjmrt1SBpJOhXRgeYXEysgiI
	0cIahYiHHiCk2uKYNU4wKhM=
X-Google-Smtp-Source: AGHT+IFLvBaX+jKKJG5b7EuYxKD1+NY+YQPBw4JtamDZDEEoV5ML8tHynkORTdYmyuxI7EF3GYGUzw==
X-Received: by 2002:adf:efc4:0:b0:32d:a310:cc2e with SMTP id i4-20020adfefc4000000b0032da310cc2emr1551939wrp.34.1698390947261;
        Fri, 27 Oct 2023 00:15:47 -0700 (PDT)
Message-ID: <abb048fe-5c73-4d09-8998-e4e54afe47a3@gmail.com>
Date: Fri, 27 Oct 2023 08:15:44 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Reply-To: paul@xen.org
Subject: Re: [PATCH v3 05/28] hw/xen: fix XenStore watch delivery to guest
Content-Language: en-US
To: David Woodhouse <dwmw2@infradead.org>, qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>, Hanna Reitz <hreitz@redhat.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Anthony Perard <anthony.perard@citrix.com>, Paul Durrant <paul@xen.org>,
 =?UTF-8?Q?Marc-Andr=C3=A9_Lureau?= <marcandre.lureau@redhat.com>,
 Paolo Bonzini <pbonzini@redhat.com>, "Michael S. Tsirkin" <mst@redhat.com>,
 Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
 Richard Henderson <richard.henderson@linaro.org>,
 Eduardo Habkost <eduardo@habkost.net>, Jason Wang <jasowang@redhat.com>,
 Marcelo Tosatti <mtosatti@redhat.com>, qemu-block@nongnu.org,
 xen-devel@lists.xenproject.org, kvm@vger.kernel.org,
 Bernhard Beschow <shentey@gmail.com>, Joel Upham <jupham125@gmail.com>
References: <20231025145042.627381-1-dwmw2@infradead.org>
 <20231025145042.627381-6-dwmw2@infradead.org>
From: "Durrant, Paul" <xadimgnik@gmail.com>
In-Reply-To: <20231025145042.627381-6-dwmw2@infradead.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

On 25/10/2023 15:50, David Woodhouse wrote:
> From: David Woodhouse <dwmw@amazon.co.uk>
> 
> When fire_watch_cb() found the response buffer empty, it would call
> deliver_watch() to generate the XS_WATCH_EVENT message in the response
> buffer and send an event channel notification to the guest… without
> actually *copying* the response buffer into the ring. So there was
> nothing for the guest to see. The pending response didn't actually get
> processed into the ring until the guest next triggered some activity
> from its side.
> 
> Add the missing call to put_rsp().
> 
> It might have been slightly nicer to call xen_xenstore_event() here,
> which would *almost* have worked. Except for the fact that it calls
> xen_be_evtchn_pending() to check that it really does have an event
> pending (and clear the eventfd for next time). And under Xen it's
> defined that setting that fd to O_NONBLOCK isn't guaranteed to work,
> so the emu implementation follows suit.
> 
> This fixes Xen device hot-unplug.
> 
> Fixes: 0254c4d19df ("hw/xen: Add xenstore wire implementation and implementation stubs")
> Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
> ---
>   hw/i386/kvm/xen_xenstore.c | 8 +++++---
>   1 file changed, 5 insertions(+), 3 deletions(-)
> 

Reviewed-by: Paul Durrant <paul@xen.org>



From xen-devel-bounces@lists.xenproject.org Fri Oct 27 07:20:28 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 27 Oct 2023 07:20:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624239.972625 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qwH8r-0003qJ-Rf; Fri, 27 Oct 2023 07:20:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624239.972625; Fri, 27 Oct 2023 07: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 1qwH8r-0003qC-P0; Fri, 27 Oct 2023 07:20:25 +0000
Received: by outflank-mailman (input) for mailman id 624239;
 Fri, 27 Oct 2023 07:20: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=eEfT=GJ=gmail.com=xadimgnik@srs-se1.protection.inumbo.net>)
 id 1qwH8q-0003q6-4C
 for xen-devel@lists.xenproject.org; Fri, 27 Oct 2023 07:20:24 +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 4a4bf348-7499-11ee-9b0e-b553b5be7939;
 Fri, 27 Oct 2023 09:20:22 +0200 (CEST)
Received: by mail-wr1-x42d.google.com with SMTP id
 ffacd0b85a97d-32d9552d765so1279541f8f.2
 for <xen-devel@lists.xenproject.org>; Fri, 27 Oct 2023 00:20:22 -0700 (PDT)
Received: from [192.168.10.177] (54-240-197-227.amazon.com. [54.240.197.227])
 by smtp.gmail.com with ESMTPSA id
 t13-20020a5d534d000000b0032d9548240fsm1114969wrv.82.2023.10.27.00.20.20
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Fri, 27 Oct 2023 00:20: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: 4a4bf348-7499-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698391221; x=1698996021; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:from:references:cc:to
         :content-language:subject:reply-to:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=GiaZXgzc6McjQsGUPYikXLbeJ+i8MopBoPjQmhJQfo4=;
        b=Ptr+S/V5BjHsD6ZW64k0EgHZFM5YRhbN+r+lNZWPPE5E+Fq/+nK04uf63b5c0Zkh63
         X2Pgz2ETUobqpX/TyKpyoQ8eQDVN9fpJLm2kkmIGsGfW55Hip8Pv6vqzJK696SXCV8DW
         hIU6VEa5RnMuGIoHdy+hFk099kFlrHQbuGhTeAA805/n9J0zTff5Ha5QmUbxpPJNJQg9
         du9lcuoKQxvaT+PewLQ9MJtEKheHsG6hHwbHk/+kXMfeK2yZfhj4T6xoSAsJWXGxD75f
         MAYgh7nRsVXS8AUxxjk8pYKi+VrLJIfbsSmlcTKB9GIL36dj7TYk5iYuWO/MiVOwWAuV
         PHkA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698391221; x=1698996021;
        h=content-transfer-encoding:in-reply-to:from:references:cc:to
         :content-language:subject:reply-to:user-agent:mime-version:date
         :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=GiaZXgzc6McjQsGUPYikXLbeJ+i8MopBoPjQmhJQfo4=;
        b=w16zndyj/vBvqIbs3HXurgUXH/AnoMtF4fIHXUYehrzANnzEqSXCoNRZaGFM9mOEAT
         pzCQ1EyjcIEEtgZE5miHP1WXIkQ5ih7qUz60CjOyOoPWX/+EueyvWn7G5+gJ6a6tvdED
         hLT6wjKPWFJ/Ke6+inA8w374zl5Tpi7X2vkWvsotH94CklrM2IyzCwNGBT81bQtX91Oc
         QvZGNcfaGvn5ALNvt7DKw61Y+zcanrK/bGzHzPeKyYCkgfC4uYQ69nZm9Av6xo83AFuf
         UB9rTbRj89VTkWoGSv9+ESYHU5eLVaP2HBuU4aTMcjKJRHeTWtaFis1Mt7fmhVTjvFE8
         kqtg==
X-Gm-Message-State: AOJu0Yy4SoTJYx9+Tyd3/OxGVQbCQCoezcfRVB83lrTREi4tiMwNbFz0
	YrO0NAtzmDof0PqPdgcGrIU=
X-Google-Smtp-Source: AGHT+IF4ESb9Dtm5knfUhlBl2xjFSwSZ+UZKmlwz+qng/KTBk8Cd66OauspRUmQDrVkZd9/qUpk6wg==
X-Received: by 2002:a5d:4c42:0:b0:31f:a62d:264 with SMTP id n2-20020a5d4c42000000b0031fa62d0264mr1433744wrt.37.1698391221555;
        Fri, 27 Oct 2023 00:20:21 -0700 (PDT)
Message-ID: <94b54185-7ae6-48f9-976c-f4213a3643d0@gmail.com>
Date: Fri, 27 Oct 2023 08:20:19 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Reply-To: paul@xen.org
Subject: Re: [PATCH v3 06/28] hw/xen: take iothread mutex in
 xen_evtchn_reset_op()
Content-Language: en-US
To: David Woodhouse <dwmw2@infradead.org>, qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>, Hanna Reitz <hreitz@redhat.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Anthony Perard <anthony.perard@citrix.com>, Paul Durrant <paul@xen.org>,
 =?UTF-8?Q?Marc-Andr=C3=A9_Lureau?= <marcandre.lureau@redhat.com>,
 Paolo Bonzini <pbonzini@redhat.com>, "Michael S. Tsirkin" <mst@redhat.com>,
 Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
 Richard Henderson <richard.henderson@linaro.org>,
 Eduardo Habkost <eduardo@habkost.net>, Jason Wang <jasowang@redhat.com>,
 Marcelo Tosatti <mtosatti@redhat.com>, qemu-block@nongnu.org,
 xen-devel@lists.xenproject.org, kvm@vger.kernel.org,
 Bernhard Beschow <shentey@gmail.com>, Joel Upham <jupham125@gmail.com>
References: <20231025145042.627381-1-dwmw2@infradead.org>
 <20231025145042.627381-7-dwmw2@infradead.org>
From: "Durrant, Paul" <xadimgnik@gmail.com>
In-Reply-To: <20231025145042.627381-7-dwmw2@infradead.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 25/10/2023 15:50, David Woodhouse wrote:
> From: David Woodhouse <dwmw@amazon.co.uk>
> 
> The xen_evtchn_soft_reset() function requires the iothread mutex, but is
> also called for the EVTCHNOP_reset hypercall. Ensure the mutex is taken
> in that case.
> 
> Fixes: a15b10978fe6 ("hw/xen: Implement EVTCHNOP_reset")
> Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
> ---
>   hw/i386/kvm/xen_evtchn.c | 1 +
>   1 file changed, 1 insertion(+)
> 

Reviewed-by: Paul Durrant <paul@xen.org>



From xen-devel-bounces@lists.xenproject.org Fri Oct 27 07:22:17 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 27 Oct 2023 07:22:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624242.972634 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qwHAb-0004O1-5h; Fri, 27 Oct 2023 07:22:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624242.972634; Fri, 27 Oct 2023 07: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 1qwHAb-0004Nu-35; Fri, 27 Oct 2023 07:22:13 +0000
Received: by outflank-mailman (input) for mailman id 624242;
 Fri, 27 Oct 2023 07:22: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=eEfT=GJ=gmail.com=xadimgnik@srs-se1.protection.inumbo.net>)
 id 1qwHAa-0004No-Bi
 for xen-devel@lists.xenproject.org; Fri, 27 Oct 2023 07:22:12 +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 8b67cc28-7499-11ee-98d6-6d05b1d4d9a1;
 Fri, 27 Oct 2023 09:22:11 +0200 (CEST)
Received: by mail-wm1-x334.google.com with SMTP id
 5b1f17b1804b1-40806e4106dso9952235e9.1
 for <xen-devel@lists.xenproject.org>; Fri, 27 Oct 2023 00:22:11 -0700 (PDT)
Received: from [192.168.10.177] (54-240-197-235.amazon.com. [54.240.197.235])
 by smtp.gmail.com with ESMTPSA id
 d16-20020adfef90000000b0032326908972sm1126352wro.17.2023.10.27.00.22.09
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Fri, 27 Oct 2023 00:22: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: 8b67cc28-7499-11ee-98d6-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698391331; x=1698996131; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:from:references:cc:to
         :content-language:subject:reply-to:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=PqXLD4gsUSCQcm/bEiQQT7bGyjP9upwq2OK6iOIPglM=;
        b=jUvuep/+eoSBKNxJyiiMZQpVets36ymjV6IwdOLXvTg7B/jgN42qN1fytjqzkEwwrU
         zTy9qJP61eSXS/spj4lAVZwxy4GmomMCE0ArGMN/FfyZLonyJBUYreVjAzjIUkcRmGC9
         abtCHYqbYPhwMPNbDj8Rw/hAm4Cg1ksqzpMQN8SdnFo4mOAPgi+Her9gdeezUefgiGHt
         O0LeblucWyuH/NJ3FtzePzh2whCgBjuEoEovm5kkc9QSuYaHVX0A3riRNGhiaXgWRVoa
         J0Qa/nuc+dv0JimRwxXEcX4+sJDrNYEWYKN0cvgoWpFJmD3zu5kUWfHkZggJZUXOph+4
         wp1g==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698391331; x=1698996131;
        h=content-transfer-encoding:in-reply-to:from:references:cc:to
         :content-language:subject:reply-to:user-agent:mime-version:date
         :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=PqXLD4gsUSCQcm/bEiQQT7bGyjP9upwq2OK6iOIPglM=;
        b=paYebEZe47qUAsTmkybqOLIZcP7fS8iOPEplVRLka61ZHIpRjChuInP+tPAOFZ0NnY
         Qn2WJD0UwHAOQCmDLp1b36WVoQwOAY2xD3u7QBHci1BJ2wuH9laYlbRdUK6R9uv6G84W
         oicSQf8bmlfmf1SHgjS9DgWHWS5H/klVgPvjbsoUU5VZSI8i61JLP1FopXPrT51zt6qo
         HjsU502c3U0exauTfwsxgYf2Az4oGD3ZSo/sZqwh/ZHoiuh/MAmciVq4mlhmdKDiGClM
         hFiuNOik0bH6pW69LGM1de1H433BbjMTHIJnO2ddBNkBCRUTvV+Kg7k0j5a/MlRzEH3A
         kLlw==
X-Gm-Message-State: AOJu0Yz+k0xWG2g8Dsy/td2ykjQP5dUdAuVkMuSM7SON52hrDKpHLIem
	Fd0HB3fT75SQnbar3+LVACU=
X-Google-Smtp-Source: AGHT+IGU6tTMgK6RwsBlq8F1RDINHIo2QB0XP1KOkIfo88Tr96dL8LD0Q31Rr4FqnFe7pGXkQLUMWQ==
X-Received: by 2002:a05:600c:2d8c:b0:408:33ba:569a with SMTP id i12-20020a05600c2d8c00b0040833ba569amr6011223wmg.8.1698391330510;
        Fri, 27 Oct 2023 00:22:10 -0700 (PDT)
Message-ID: <ae99776d-bf6a-4b24-b617-fde8c76d087d@gmail.com>
Date: Fri, 27 Oct 2023 08:22:08 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Reply-To: paul@xen.org
Subject: Re: [PATCH v3 07/28] hw/xen: use correct default protocol for
 xen-block on x86
Content-Language: en-US
To: David Woodhouse <dwmw2@infradead.org>, qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>, Hanna Reitz <hreitz@redhat.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Anthony Perard <anthony.perard@citrix.com>, Paul Durrant <paul@xen.org>,
 =?UTF-8?Q?Marc-Andr=C3=A9_Lureau?= <marcandre.lureau@redhat.com>,
 Paolo Bonzini <pbonzini@redhat.com>, "Michael S. Tsirkin" <mst@redhat.com>,
 Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
 Richard Henderson <richard.henderson@linaro.org>,
 Eduardo Habkost <eduardo@habkost.net>, Jason Wang <jasowang@redhat.com>,
 Marcelo Tosatti <mtosatti@redhat.com>, qemu-block@nongnu.org,
 xen-devel@lists.xenproject.org, kvm@vger.kernel.org,
 Bernhard Beschow <shentey@gmail.com>, Joel Upham <jupham125@gmail.com>
References: <20231025145042.627381-1-dwmw2@infradead.org>
 <20231025145042.627381-8-dwmw2@infradead.org>
From: "Durrant, Paul" <xadimgnik@gmail.com>
In-Reply-To: <20231025145042.627381-8-dwmw2@infradead.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 25/10/2023 15:50, David Woodhouse wrote:
> From: David Woodhouse <dwmw@amazon.co.uk>
> 
> Even on x86_64 the default protocol is the x86-32 one if the guest doesn't
> specifically ask for x86-64.
> 
> Fixes: b6af8926fb85 ("xen: add implementations of xen-block connect and disconnect functions...")
> Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
> ---
>   hw/block/xen-block.c | 6 +++++-
>   1 file changed, 5 insertions(+), 1 deletion(-)
> 

Reviewed-by: Paul Durrant <paul@xen.org>



From xen-devel-bounces@lists.xenproject.org Fri Oct 27 07:22:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 27 Oct 2023 07:22:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624245.972645 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qwHBF-0004yp-I3; Fri, 27 Oct 2023 07:22:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624245.972645; Fri, 27 Oct 2023 07:22: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 1qwHBF-0004yi-F7; Fri, 27 Oct 2023 07:22:53 +0000
Received: by outflank-mailman (input) for mailman id 624245;
 Fri, 27 Oct 2023 07:22: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=HqTC=GJ=bugseng.com=federico.serafini@srs-se1.protection.inumbo.net>)
 id 1qwHBE-0004No-Cn
 for xen-devel@lists.xenproject.org; Fri, 27 Oct 2023 07:22:52 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id a342a706-7499-11ee-98d6-6d05b1d4d9a1;
 Fri, 27 Oct 2023 09:22:51 +0200 (CEST)
Received: from [192.168.1.15] (host-95-247-204-25.retail.telecomitalia.it
 [95.247.204.25])
 by support.bugseng.com (Postfix) with ESMTPSA id C7CA14EE073E;
 Fri, 27 Oct 2023 09:22: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: a342a706-7499-11ee-98d6-6d05b1d4d9a1
Message-ID: <274fcb9f-93af-45e0-bb33-8152d740cb7e@bugseng.com>
Date: Fri, 27 Oct 2023 09:22:50 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN PATCH] xen/set_{c,p}x_pminfo: address violations od MISRA
 C:2012 Rule 8.3
To: Jan Beulich <jbeulich@suse.com>,
 Stefano Stabellini <sstabellini@kernel.org>
Cc: xen-devel@lists.xenproject.org, 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>
References: <88499ca9a61b59d13d90f6c5f77cbb2e124d850e.1698322083.git.federico.serafini@bugseng.com>
 <alpine.DEB.2.22.394.2310261559470.271731@ubuntu-linux-20-04-desktop>
 <1795ba80-803a-7ed0-73fa-7d6e06691bad@suse.com>
Content-Language: en-US, it
From: Federico Serafini <federico.serafini@bugseng.com>
Organization: BUGSENG srl
In-Reply-To: <1795ba80-803a-7ed0-73fa-7d6e06691bad@suse.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit



On 27/10/23 09:07, Jan Beulich wrote:
> On 27.10.2023 01:00, Stefano Stabellini wrote:
>> On Thu, 26 Oct 2023, Federico Serafini wrote:
>>> @@ -675,16 +673,16 @@ static int __init cpufreq_cmdline_parse(const char *s, const char *e)
>>>   static int cf_check cpu_callback(
>>>       struct notifier_block *nfb, unsigned long action, void *hcpu)
>>>   {
>>> -    unsigned int cpu = (unsigned long)hcpu;
>>> +    unsigned int acpi_id = (unsigned long)hcpu;
>>>   
>>>       switch ( action )
>>>       {
>>>       case CPU_DOWN_FAILED:
>>>       case CPU_ONLINE:
>>> -        (void)cpufreq_add_cpu(cpu);
>>> +        (void)cpufreq_add_cpu(acpi_id);
>>>           break;
>>>       case CPU_DOWN_PREPARE:
>>> -        (void)cpufreq_del_cpu(cpu);
>>> +        (void)cpufreq_del_cpu(acpi_id);
>>>           break;
>>>       default:
>>>           break;
>>
>> I take you made these changes to cpu_callback for consistency, not
>> because they are required? Everything else makes sense so:
> 
> I'm sorry, but no, these changes are not only not required, they're
> outright wrong. CPU callbacks never talk in terms of ACPI IDs. The
> two functions called also aren't otherwise altered in this patch,
> and both take "unsigned int cpu".
> 
> Jan
> 
>> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
> 

These changes were not intended, I'm sorry.
I'll submit a v2. I also noticed that there are a few places left
where the coding style can still be improved.

-- 
Federico Serafini, M.Sc.

Software Engineer, BUGSENG (http://bugseng.com)


From xen-devel-bounces@lists.xenproject.org Fri Oct 27 07:23:08 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 27 Oct 2023 07:23:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624246.972654 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qwHBT-0005ND-P5; Fri, 27 Oct 2023 07:23:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624246.972654; Fri, 27 Oct 2023 07: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 1qwHBT-0005N6-MV; Fri, 27 Oct 2023 07:23:07 +0000
Received: by outflank-mailman (input) for mailman id 624246;
 Fri, 27 Oct 2023 07:23: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=eEfT=GJ=gmail.com=xadimgnik@srs-se1.protection.inumbo.net>)
 id 1qwHBS-0004No-I7
 for xen-devel@lists.xenproject.org; Fri, 27 Oct 2023 07:23:06 +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 abf8da1a-7499-11ee-98d6-6d05b1d4d9a1;
 Fri, 27 Oct 2023 09:23:06 +0200 (CEST)
Received: by mail-wr1-x436.google.com with SMTP id
 ffacd0b85a97d-32f70391608so178123f8f.2
 for <xen-devel@lists.xenproject.org>; Fri, 27 Oct 2023 00:23:06 -0700 (PDT)
Received: from [192.168.10.177] (54-240-197-235.amazon.com. [54.240.197.235])
 by smtp.gmail.com with ESMTPSA id
 d16-20020adfef90000000b0032326908972sm1126352wro.17.2023.10.27.00.23.04
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Fri, 27 Oct 2023 00:23: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: abf8da1a-7499-11ee-98d6-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698391385; x=1698996185; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:from:references:cc:to
         :content-language:subject:reply-to:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=dSCOMydOnsCaHq17QXAhhoXbOK1DobHQBIwwTw48NnM=;
        b=mJ0BCAk0kTO8rgU+SAk0qQY059MTKnq6nXm2RFdpQRkJ6BNh1/VoST2ujkdSIiBlFR
         a+HprhDnjW6n4jXhtASg4sbp8s+tp8LrwpP9DUlb0IJR0X9m2MKVLz058LRMNxViNae4
         UWOxnrTTYrNXh3kz5YmFOXqyyFLzgt0Di9cMowepL2MK6ijsjiZKjaI1h3aDny2cE81a
         d3CMDxukK5KEsZKiz4yhY/vqYU8ab6RyPUKAzOh+TxBh0USRktUUQto2WJt4XbaV1CPi
         QVAR5B9ShFnZAH9Dvys607gD88o0zO8K5aYZhSg9uwxLhyz0CIYqi4loTdt3nkvjt0j5
         p7Ew==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698391385; x=1698996185;
        h=content-transfer-encoding:in-reply-to:from:references:cc:to
         :content-language:subject:reply-to:user-agent:mime-version:date
         :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=dSCOMydOnsCaHq17QXAhhoXbOK1DobHQBIwwTw48NnM=;
        b=qWG1YFFUaqiIgrT6F6v/rM7TMyT1JhDgi6nG755xR4PqqZs6c2qi2UXY3BPmHGXOxU
         S22+fAqgyEATUyC6wJu/2x6AbBsEaR/8w3fzKIbTL56XIglSeRFWEIKq4yagsn78NR/B
         8p4eJn9/5GhCXUFvlHQL5eXGUNy5pyCxposDNlT8rcNS8Ew8xzuj7PIpn/OCnR8KEFZS
         Z99rO2vnS+/cc1fxk42wEvwwedhgMOoDV2X2MD/JkIDfat75zE+hiWqj94D+begpXutz
         duFfdQaTqxVzNoTOYsOoxEi3GOlc4qsMVDC8Dje+3N6JffUKwyPJdGu6hvgweYyoyipB
         dMVg==
X-Gm-Message-State: AOJu0YxAV62EqUIgjq7RbZWkZJ/UKd3iqaCtflfb9c03aa96a516wv8j
	StpVQQEBA/yWQTHLSshTudo=
X-Google-Smtp-Source: AGHT+IGcJqs+3Lj5Br/+siV+aN+YMItskE6Hk6MaX+RfvRLeEZhRqSD3XuVFCG4gSuppLBynhA6zLA==
X-Received: by 2002:adf:e992:0:b0:321:6a61:e45a with SMTP id h18-20020adfe992000000b003216a61e45amr1332680wrm.15.1698391385492;
        Fri, 27 Oct 2023 00:23:05 -0700 (PDT)
Message-ID: <65c0d093-e83c-4307-9edb-2b4f04cde607@gmail.com>
Date: Fri, 27 Oct 2023 08:23:04 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Reply-To: paul@xen.org
Subject: Re: [PATCH v3 08/28] i386/xen: Ignore VCPU_SSHOTTMR_future flag in
 set_singleshot_timer()
Content-Language: en-US
To: David Woodhouse <dwmw2@infradead.org>, qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>, Hanna Reitz <hreitz@redhat.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Anthony Perard <anthony.perard@citrix.com>, Paul Durrant <paul@xen.org>,
 =?UTF-8?Q?Marc-Andr=C3=A9_Lureau?= <marcandre.lureau@redhat.com>,
 Paolo Bonzini <pbonzini@redhat.com>, "Michael S. Tsirkin" <mst@redhat.com>,
 Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
 Richard Henderson <richard.henderson@linaro.org>,
 Eduardo Habkost <eduardo@habkost.net>, Jason Wang <jasowang@redhat.com>,
 Marcelo Tosatti <mtosatti@redhat.com>, qemu-block@nongnu.org,
 xen-devel@lists.xenproject.org, kvm@vger.kernel.org,
 Bernhard Beschow <shentey@gmail.com>, Joel Upham <jupham125@gmail.com>
References: <20231025145042.627381-1-dwmw2@infradead.org>
 <20231025145042.627381-9-dwmw2@infradead.org>
From: "Durrant, Paul" <xadimgnik@gmail.com>
In-Reply-To: <20231025145042.627381-9-dwmw2@infradead.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

On 25/10/2023 15:50, David Woodhouse wrote:
> From: David Woodhouse <dwmw@amazon.co.uk>
> 
> Upstream Xen now ignores this flag¹, since the only guest kernel ever to
> use it was buggy.
> 
> ¹ https://xenbits.xen.org/gitweb/?p=xen.git;a=commitdiff;h=19c6cbd909
> 
> Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
> Reviewed-by: Paul Durrant <paul@xen.org>
> ---
>   target/i386/kvm/xen-emu.c | 20 ++++++++++----------
>   1 file changed, 10 insertions(+), 10 deletions(-)
> 

Reviewed-by: Paul Durrant <paul@xen.org>



From xen-devel-bounces@lists.xenproject.org Fri Oct 27 07:30:43 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 27 Oct 2023 07:30:43 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624257.972665 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qwHIi-0007va-HS; Fri, 27 Oct 2023 07:30:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624257.972665; Fri, 27 Oct 2023 07: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 1qwHIi-0007vT-EW; Fri, 27 Oct 2023 07:30:36 +0000
Received: by outflank-mailman (input) for mailman id 624257;
 Fri, 27 Oct 2023 07: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=eEfT=GJ=gmail.com=xadimgnik@srs-se1.protection.inumbo.net>)
 id 1qwHIh-0007vN-5z
 for xen-devel@lists.xenproject.org; Fri, 27 Oct 2023 07:30:35 +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 b4fa52b5-749a-11ee-9b0e-b553b5be7939;
 Fri, 27 Oct 2023 09:30:31 +0200 (CEST)
Received: by mail-lj1-x236.google.com with SMTP id
 38308e7fff4ca-2c50305c5c4so26637881fa.1
 for <xen-devel@lists.xenproject.org>; Fri, 27 Oct 2023 00:30:30 -0700 (PDT)
Received: from [192.168.10.177] (54-240-197-227.amazon.com. [54.240.197.227])
 by smtp.gmail.com with ESMTPSA id
 iv8-20020a05600c548800b003fefaf299b6sm929618wmb.38.2023.10.27.00.30.28
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Fri, 27 Oct 2023 00:30: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: b4fa52b5-749a-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698391830; x=1698996630; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:from:references:cc:to
         :content-language:subject:reply-to:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=IMWdKJMTkLqEzJi2MXWMaJpxcEwSEMD/Scl3L0GwHoE=;
        b=YPI6swtwUXKy7r4EB9WClr+TND4k5HJ1aQv0jAW6UEO8NROyNocAeuXqJ5MvenT44l
         rOMj8uAldYzbXy44rUqvXO24IAnm4vQXXy1yPGCvv61oVOSnlX5nA7VLOw9Qldm2y3Xo
         8pw/9wttoWX1/OCYhJnSlYJHZwWmuh2+9bWHfZ6uxBzRNiAdkpVnbUo87XCfBxn9aWlE
         dCyqMX3vhDpo7OIfkgBtD0uTr3SlZbt3tWqRj95Rd0uw8zwgoQEy9AXcbzPn9UCBbkvm
         mcZUU1qvT3MQlckBJ3tE0Kh0sd8A0I1GL9CQOYduatR7f3WQawmR3h4Ghm9QIhfXy9D0
         bU2g==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698391830; x=1698996630;
        h=content-transfer-encoding:in-reply-to:from:references:cc:to
         :content-language:subject:reply-to:user-agent:mime-version:date
         :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=IMWdKJMTkLqEzJi2MXWMaJpxcEwSEMD/Scl3L0GwHoE=;
        b=eHZ7nVErTRhuiabxdXIDCnJcaHdqw7NsMRtSA9nGQl1HVilfZjKU5Kobtdp/hL06uE
         aMbrvEC2QrQQUeYOI5QD33u4ACmX8Hd5/k0rj9EgoNEcaSUF1jT6ycFdBXz3ccI0Tj+f
         jpe/e23D3YECh0L8eZRXdxbuVPaUeLpjVxCa+zvEKeSFALGquv8f8nzyD17iQO0IYKij
         4DM3B3t9gyYnb4ol/DJkGMgAdTvg2GQ6duG+/A0ZS4NID0kMQXfV+FKyvUiwmo6MvjEr
         hSKkroMZz+YJqd6itvTBUH5zjXHqxG28c+5UY6XuMQjeHWLYsLg/9XyjIrdBCdNI2YyP
         mmCA==
X-Gm-Message-State: AOJu0YySPQfbjFvmZdvMGEjgRIDr98wRcjqdUe8hMoeWG2LK/jsFhNuk
	vZAWsl5c43bnU2DPumYkJ4o=
X-Google-Smtp-Source: AGHT+IF5RLZXmSPAwPQGTeQf9qBkoPlsrm6rJnN6VcwysPeYpD+ud4M5ztCgJgOqX6IOIBtV1Fqwvg==
X-Received: by 2002:a2e:6e19:0:b0:2c5:1915:9824 with SMTP id j25-20020a2e6e19000000b002c519159824mr1406966ljc.9.1698391829723;
        Fri, 27 Oct 2023 00:30:29 -0700 (PDT)
Message-ID: <74e54da5-9c35-485d-a13c-efac3f81dec2@gmail.com>
Date: Fri, 27 Oct 2023 08:30:27 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Reply-To: paul@xen.org
Subject: Re: [PATCH v3 13/28] hw/xen: automatically assign device index to
 block devices
Content-Language: en-US
To: David Woodhouse <dwmw2@infradead.org>, qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>, Hanna Reitz <hreitz@redhat.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Anthony Perard <anthony.perard@citrix.com>, Paul Durrant <paul@xen.org>,
 =?UTF-8?Q?Marc-Andr=C3=A9_Lureau?= <marcandre.lureau@redhat.com>,
 Paolo Bonzini <pbonzini@redhat.com>, "Michael S. Tsirkin" <mst@redhat.com>,
 Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
 Richard Henderson <richard.henderson@linaro.org>,
 Eduardo Habkost <eduardo@habkost.net>, Jason Wang <jasowang@redhat.com>,
 Marcelo Tosatti <mtosatti@redhat.com>, qemu-block@nongnu.org,
 xen-devel@lists.xenproject.org, kvm@vger.kernel.org,
 Bernhard Beschow <shentey@gmail.com>, Joel Upham <jupham125@gmail.com>
References: <20231025145042.627381-1-dwmw2@infradead.org>
 <20231025145042.627381-14-dwmw2@infradead.org>
From: "Durrant, Paul" <xadimgnik@gmail.com>
In-Reply-To: <20231025145042.627381-14-dwmw2@infradead.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 25/10/2023 15:50, David Woodhouse wrote:
> From: David Woodhouse <dwmw@amazon.co.uk>
> 
> There's no need to force the user to assign a vdev. We can automatically
> assign one, starting at xvda and searching until we find the first disk
> name that's unused.
> 
> This means we can now allow '-drive if=xen,file=xxx' to work without an
> explicit separate -driver argument, just like if=virtio.
> 
> Rip out the legacy handling from the xenpv machine, which was scribbling
> over any disks configured by the toolstack, and didn't work with anything
> but raw images.
> 
> Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
> Acked-by: Kevin Wolf <kwolf@redhat.com>
> ---
>   blockdev.c                          | 15 +++++++++---
>   hw/block/xen-block.c                | 38 +++++++++++++++++++++++++++++
>   hw/xen/xen_devconfig.c              | 28 ---------------------
>   hw/xenpv/xen_machine_pv.c           |  9 -------
>   include/hw/xen/xen-legacy-backend.h |  1 -
>   5 files changed, 50 insertions(+), 41 deletions(-)
> 
> diff --git a/blockdev.c b/blockdev.c
> index a01c62596b..5d9f2e5395 100644
> --- a/blockdev.c
> +++ b/blockdev.c
> @@ -255,13 +255,13 @@ void drive_check_orphaned(void)
>            * Ignore default drives, because we create certain default
>            * drives unconditionally, then leave them unclaimed.  Not the
>            * users fault.
> -         * Ignore IF_VIRTIO, because it gets desugared into -device,
> -         * so we can leave failing to -device.
> +         * Ignore IF_VIRTIO or IF_XEN, because it gets desugared into
> +         * -device, so we can leave failing to -device.
>            * Ignore IF_NONE, because leaving unclaimed IF_NONE remains
>            * available for device_add is a feature.
>            */
>           if (dinfo->is_default || dinfo->type == IF_VIRTIO
> -            || dinfo->type == IF_NONE) {
> +            || dinfo->type == IF_XEN || dinfo->type == IF_NONE) {
>               continue;
>           }
>           if (!blk_get_attached_dev(blk)) {
> @@ -977,6 +977,15 @@ DriveInfo *drive_new(QemuOpts *all_opts, BlockInterfaceType block_default_type,
>           qemu_opt_set(devopts, "driver", "virtio-blk", &error_abort);
>           qemu_opt_set(devopts, "drive", qdict_get_str(bs_opts, "id"),
>                        &error_abort);
> +    } else if (type == IF_XEN) {
> +        QemuOpts *devopts;
> +        devopts = qemu_opts_create(qemu_find_opts("device"), NULL, 0,
> +                                   &error_abort);
> +        qemu_opt_set(devopts, "driver",
> +                     (media == MEDIA_CDROM) ? "xen-cdrom" : "xen-disk",
> +                     &error_abort);
> +        qemu_opt_set(devopts, "drive", qdict_get_str(bs_opts, "id"),
> +                     &error_abort);
>       }
>   
>       filename = qemu_opt_get(legacy_opts, "file");
> diff --git a/hw/block/xen-block.c b/hw/block/xen-block.c
> index 64470fc579..5011fe9430 100644
> --- a/hw/block/xen-block.c
> +++ b/hw/block/xen-block.c
> @@ -27,6 +27,7 @@
>   #include "sysemu/block-backend.h"
>   #include "sysemu/iothread.h"
>   #include "dataplane/xen-block.h"
> +#include "hw/xen/interface/io/xs_wire.h"
>   #include "trace.h"
>   
>   static char *xen_block_get_name(XenDevice *xendev, Error **errp)
> @@ -34,6 +35,43 @@ static char *xen_block_get_name(XenDevice *xendev, Error **errp)
>       XenBlockDevice *blockdev = XEN_BLOCK_DEVICE(xendev);
>       XenBlockVdev *vdev = &blockdev->props.vdev;
>   
> +    if (blockdev->props.vdev.type == XEN_BLOCK_VDEV_TYPE_INVALID) {
> +        XenBus *xenbus = XEN_BUS(qdev_get_parent_bus(DEVICE(xendev)));
> +        char fe_path[XENSTORE_ABS_PATH_MAX + 1];
> +        char *value;
> +        int disk = 0;
> +        unsigned long idx;
> +
> +        /* Find an unoccupied device name */

Not sure this is going to work is it? What happens if 'hda' or 'sda', or 
'd0' exists? I think you need to use the core of the code in 
xen_block_set_vdev() to generate names and search all possible encodings 
for each disk.

   Paul

> +        while (disk < (1 << 20)) {
> +            if (disk < (1 << 4)) {
> +                idx = (202 << 8) | (disk << 4);
> +            } else {
> +                idx = (1 << 28) | (disk << 8);
> +            }
> +            snprintf(fe_path, sizeof(fe_path),
> +                     "/local/domain/%u/device/vbd/%lu",
> +                     xendev->frontend_id, idx);
> +            value = qemu_xen_xs_read(xenbus->xsh, XBT_NULL, fe_path, NULL);
> +            if (!value) {
> +                if (errno == ENOENT) {
> +                    vdev->type = XEN_BLOCK_VDEV_TYPE_XVD;
> +                    vdev->partition = 0;
> +                    vdev->disk = disk;
> +                    vdev->number = idx;
> +                    goto found;
> +                }
> +                error_setg(errp, "cannot read %s: %s", fe_path,
> +                           strerror(errno));
> +                return NULL;
> +            }
> +            free(value);
> +            disk++;
> +        }
> +        error_setg(errp, "cannot find device vdev for block device");
> +        return NULL;
> +    }
> + found:
>       return g_strdup_printf("%lu", vdev->number);
>   }
>   
> diff --git a/hw/xen/xen_devconfig.c b/hw/xen/xen_devconfig.c
> index 9b7304e544..3f77c675c6 100644
> --- a/hw/xen/xen_devconfig.c
> +++ b/hw/xen/xen_devconfig.c
> @@ -46,34 +46,6 @@ static int xen_config_dev_all(char *fe, char *be)
>   
>   /* ------------------------------------------------------------- */
>   
> -int xen_config_dev_blk(DriveInfo *disk)
> -{
> -    char fe[256], be[256], device_name[32];
> -    int vdev = 202 * 256 + 16 * disk->unit;
> -    int cdrom = disk->media_cd;
> -    const char *devtype = cdrom ? "cdrom" : "disk";
> -    const char *mode    = cdrom ? "r"     : "w";
> -    const char *filename = qemu_opt_get(disk->opts, "file");
> -
> -    snprintf(device_name, sizeof(device_name), "xvd%c", 'a' + disk->unit);
> -    xen_pv_printf(NULL, 1, "config disk %d [%s]: %s\n",
> -                  disk->unit, device_name, filename);
> -    xen_config_dev_dirs("vbd", "qdisk", vdev, fe, be, sizeof(fe));
> -
> -    /* frontend */
> -    xenstore_write_int(fe, "virtual-device",  vdev);
> -    xenstore_write_str(fe, "device-type",     devtype);
> -
> -    /* backend */
> -    xenstore_write_str(be, "dev",             device_name);
> -    xenstore_write_str(be, "type",            "file");
> -    xenstore_write_str(be, "params",          filename);
> -    xenstore_write_str(be, "mode",            mode);
> -
> -    /* common stuff */
> -    return xen_config_dev_all(fe, be);
> -}
> -
>   int xen_config_dev_nic(NICInfo *nic)
>   {
>       char fe[256], be[256];
> diff --git a/hw/xenpv/xen_machine_pv.c b/hw/xenpv/xen_machine_pv.c
> index 17cda5ec13..1533f5dfb4 100644
> --- a/hw/xenpv/xen_machine_pv.c
> +++ b/hw/xenpv/xen_machine_pv.c
> @@ -32,7 +32,6 @@
>   
>   static void xen_init_pv(MachineState *machine)
>   {
> -    DriveInfo *dinfo;
>       int i;
>   
>       setup_xen_backend_ops();
> @@ -64,14 +63,6 @@ static void xen_init_pv(MachineState *machine)
>           vga_interface_created = true;
>       }
>   
> -    /* configure disks */
> -    for (i = 0; i < 16; i++) {
> -        dinfo = drive_get(IF_XEN, 0, i);
> -        if (!dinfo)
> -            continue;
> -        xen_config_dev_blk(dinfo);
> -    }
> -
>       /* configure nics */
>       for (i = 0; i < nb_nics; i++) {
>           if (!nd_table[i].model || 0 != strcmp(nd_table[i].model, "xen"))
> diff --git a/include/hw/xen/xen-legacy-backend.h b/include/hw/xen/xen-legacy-backend.h
> index 6c307c5f2c..fc42146bc2 100644
> --- a/include/hw/xen/xen-legacy-backend.h
> +++ b/include/hw/xen/xen-legacy-backend.h
> @@ -81,7 +81,6 @@ extern struct XenDevOps xen_usb_ops;          /* xen-usb.c         */
>   
>   /* configuration (aka xenbus setup) */
>   void xen_config_cleanup(void);
> -int xen_config_dev_blk(DriveInfo *disk);
>   int xen_config_dev_nic(NICInfo *nic);
>   int xen_config_dev_vfb(int vdev, const char *type);
>   int xen_config_dev_vkbd(int vdev);



From xen-devel-bounces@lists.xenproject.org Fri Oct 27 07:32:04 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 27 Oct 2023 07:32:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624260.972676 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qwHK5-0008T1-Sa; Fri, 27 Oct 2023 07:32:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624260.972676; Fri, 27 Oct 2023 07: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 1qwHK5-0008Su-O6; Fri, 27 Oct 2023 07:32:01 +0000
Received: by outflank-mailman (input) for mailman id 624260;
 Fri, 27 Oct 2023 07: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=eEfT=GJ=gmail.com=xadimgnik@srs-se1.protection.inumbo.net>)
 id 1qwHK4-0008So-1K
 for xen-devel@lists.xenproject.org; Fri, 27 Oct 2023 07:32:00 +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 e918aca5-749a-11ee-9b0e-b553b5be7939;
 Fri, 27 Oct 2023 09:31:58 +0200 (CEST)
Received: by mail-wm1-x329.google.com with SMTP id
 5b1f17b1804b1-4084b0223ccso13595885e9.2
 for <xen-devel@lists.xenproject.org>; Fri, 27 Oct 2023 00:31:58 -0700 (PDT)
Received: from [192.168.10.177] (54-240-197-227.amazon.com. [54.240.197.227])
 by smtp.gmail.com with ESMTPSA id
 iv8-20020a05600c548800b003fefaf299b6sm929618wmb.38.2023.10.27.00.31.56
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Fri, 27 Oct 2023 00:31: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: e918aca5-749a-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698391917; x=1698996717; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:from:references:cc:to
         :content-language:subject:reply-to:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=3WQCodtLeMa/vLM2901WzSloIhFtxV+9ehL3oSRrzfA=;
        b=lWjWqdJHQyCTQnt6Na486Ukiq/yHDGn4Qg9WZ8pDeLPnXpu809Nd1N6Lmb1xh3XkVu
         pqXqYCaNkvpm0wpicESl5i4PusfdFwQcK8SRzrnA+WldwUlV6ZbtdQwVg69NFLrJE1sc
         Y4QbpUUSSOV3Jp/bdaJtrEQlegMMBJstXu6KayXfpwPm/JCgjSpXn1UXgPVAev3Bv6k4
         i65KWr77c6rmtH+f3sx3OYwuNrDWH24IFq3HOxSc7cD1y9KN70imH2TlNOqlcAN6xP6c
         ML8OSjFbC2vY5S53M/EuEfQSFo9znGjigYF2ruqxbGQnun9vJSx1EYdVZdsh4DLXW0EH
         hDoA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698391917; x=1698996717;
        h=content-transfer-encoding:in-reply-to:from:references:cc:to
         :content-language:subject:reply-to:user-agent:mime-version:date
         :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=3WQCodtLeMa/vLM2901WzSloIhFtxV+9ehL3oSRrzfA=;
        b=blb5R0VFVjeSGzrlnMQt0BJJK/Af0iHOlXTHimloZjuw8TfutRh7Zj3aIZFmYBxpDT
         5Ts+OaByyOkjO5UOQfGz1WKd1u9bAr2IlyKEAwho35gXxCs+JCEOKbnkHmRhQHYLzrP1
         +wjuw1kTPRyzxWVkO/70B42CANlMBWokaOmUV087RJeiuSJcersRULe12mrZLmtmxslI
         7q1m86eGeuCb+RDBFhHBq8y2fWvGJyLg7Hp0jP7RQqDsJCG3U2L9ZyOp0y0yHia1eQcW
         Ucvux6hDZY5QoMO4AjBPlrvLgomV5G820A7XIxzCwy2afH2rlYfIeyiyp4NfU1a2ZbnE
         Hvdw==
X-Gm-Message-State: AOJu0YwwMltLND26Saf1ca66n7dqiPKukJaSbbAAVXkHOb/lWDVzGRZH
	aeVnSbAQr21L1Qd0B9DGJ5k=
X-Google-Smtp-Source: AGHT+IEMg/Tnlu8eq0BMbhOEZDo19OPcdSvp2reFdXjF66hF1stq7Cv3VhULPpUY2sBAaCOfyGVFVg==
X-Received: by 2002:a05:600c:2206:b0:409:295:9c6e with SMTP id z6-20020a05600c220600b0040902959c6emr1557480wml.30.1698391917503;
        Fri, 27 Oct 2023 00:31:57 -0700 (PDT)
Message-ID: <72d847b6-1031-48fd-8155-1cd441f37f8e@gmail.com>
Date: Fri, 27 Oct 2023 08:31:56 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Reply-To: paul@xen.org
Subject: Re: [PATCH v3 14/28] hw/xen: add get_frontend_path() method to
 XenDeviceClass
Content-Language: en-US
To: David Woodhouse <dwmw2@infradead.org>, qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>, Hanna Reitz <hreitz@redhat.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Anthony Perard <anthony.perard@citrix.com>, Paul Durrant <paul@xen.org>,
 =?UTF-8?Q?Marc-Andr=C3=A9_Lureau?= <marcandre.lureau@redhat.com>,
 Paolo Bonzini <pbonzini@redhat.com>, "Michael S. Tsirkin" <mst@redhat.com>,
 Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
 Richard Henderson <richard.henderson@linaro.org>,
 Eduardo Habkost <eduardo@habkost.net>, Jason Wang <jasowang@redhat.com>,
 Marcelo Tosatti <mtosatti@redhat.com>, qemu-block@nongnu.org,
 xen-devel@lists.xenproject.org, kvm@vger.kernel.org,
 Bernhard Beschow <shentey@gmail.com>, Joel Upham <jupham125@gmail.com>
References: <20231025145042.627381-1-dwmw2@infradead.org>
 <20231025145042.627381-15-dwmw2@infradead.org>
From: "Durrant, Paul" <xadimgnik@gmail.com>
In-Reply-To: <20231025145042.627381-15-dwmw2@infradead.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

On 25/10/2023 15:50, David Woodhouse wrote:
> From: David Woodhouse <dwmw@amazon.co.uk>
> 
> The primary Xen console is special. The guest's side is set up for it by
> the toolstack automatically and not by the standard PV init sequence.
> 
> Accordingly, its *frontend* doesn't appear in …/device/console/0 either;
> instead it appears under …/console in the guest's XenStore node.
> 
> To allow the Xen console driver to override the frontend path for the
> primary console, add a method to the XenDeviceClass which can be used
> instead of the standard xen_device_get_frontend_path()
> 
> Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
> ---
>   hw/xen/xen-bus.c         | 11 ++++++++++-
>   include/hw/xen/xen-bus.h |  2 ++
>   2 files changed, 12 insertions(+), 1 deletion(-)
> 

Reviewed-by: Paul Durrant <paul@xen.org>



From xen-devel-bounces@lists.xenproject.org Fri Oct 27 07:34:37 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 27 Oct 2023 07:34:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624265.972684 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qwHMa-000126-7N; Fri, 27 Oct 2023 07:34:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624265.972684; Fri, 27 Oct 2023 07:34: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 1qwHMa-00011z-4r; Fri, 27 Oct 2023 07:34:36 +0000
Received: by outflank-mailman (input) for mailman id 624265;
 Fri, 27 Oct 2023 07:34: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=FcCJ=GJ=bugseng.com=simone.ballarin@srs-se1.protection.inumbo.net>)
 id 1qwHMZ-00011t-Ft
 for xen-devel@lists.xenproject.org; Fri, 27 Oct 2023 07:34:35 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 45aa59c8-749b-11ee-9b0e-b553b5be7939;
 Fri, 27 Oct 2023 09:34:33 +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 8B11E4EE073E;
 Fri, 27 Oct 2023 09:34: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: 45aa59c8-749b-11ee-9b0e-b553b5be7939
Message-ID: <2445a4b6-74c4-49c9-8373-e788da443a0a@bugseng.com>
Date: Fri, 27 Oct 2023 09:34:31 +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: Stefano Stabellini <stefano.stabellini@amd.com>, consulting@bugseng.com,
 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>,
 Doug Goldstein <cardoe@cardoe.com>,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 xen-devel@lists.xenproject.org, Julien Grall <julien@xen.org>
References: <cover.1694510856.git.simone.ballarin@bugseng.com>
 <e642bc2a-cefa-4ee4-6394-3c10102e8164@suse.com>
 <alpine.DEB.2.22.394.2310190915590.1945130@ubuntu-linux-20-04-desktop>
 <6374f0f4-d58f-83ca-6eb3-d5a9fcbac525@suse.com>
 <alpine.DEB.2.22.394.2310201622160.2356865@ubuntu-linux-20-04-desktop>
 <36e6dd08-918c-9791-0dab-ca75d4b98d7e@suse.com>
 <alpine.DEB.2.22.394.2310231346370.3516@ubuntu-linux-20-04-desktop>
 <af4a86bc-40d3-4363-adc8-30981652cd2b@xen.org>
 <c1fa350f-6f49-e2b1-0cda-dec99df415ae@suse.com>
 <alpine.DEB.2.22.394.2310241254480.271731@ubuntu-linux-20-04-desktop>
 <f546b8dc-baa8-c178-12be-70f7c1a8fec8@suse.com>
 <50b3a500-aa7d-4d3d-8bcf-220f8ee69b0e@xen.org>
 <f6b207c6-4bc2-e172-428c-a2e3294cc490@suse.com>
 <1fc2c191-79b7-43fc-9068-5605e741c243@xen.org>
 <alpine.DEB.2.22.394.2310251408030.271731@ubuntu-linux-20-04-desktop>
 <1ec482ba-e334-3120-dbe5-fc1e5a29f9fe@suse.com>
 <alpine.DEB.2.22.394.2310261550370.271731@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.2310261550370.271731@ubuntu-linux-20-04-desktop>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 27/10/23 00:50, Stefano Stabellini wrote:
> On Thu, 26 Oct 2023, Jan Beulich wrote:
>> On 25.10.2023 23:12, Stefano Stabellini wrote:
>>> On Wed, 25 Oct 2023, Julien Grall wrote:
>>>> On 25/10/2023 17:01, Jan Beulich wrote:
>>>>> On 25.10.2023 17:58, Julien Grall wrote:
>>>>>> On 25/10/2023 09:18, Jan Beulich wrote:
>>>>>>> On 24.10.2023 21:59, Stefano Stabellini wrote:
>>>>>>>> If I understood correctly I am fine with that. To make sure we are all
>>>>>>>> on the same page, can you provide a couple of samples?
>>>>>>>
>>>>>>> Taking the earlier example, instead of DRIVERS_PASSTHROUGH_VTD_DMAR_H it
>>>>>>> would then be VTD_DMAR_H. arch/x86/pv/mm.h would use PV_MM_H, but then
>>>>>>> you can already see that a hypothetical arch/x86/mm.h would use
>>>>>>> X86_MM_H,
>>>>>>> thus colliding with what your proposal would also yield for
>>>>>>> arch/x86/include/asm/mm.h. So maybe private header guards should come
>>>>>>> with e.g. a trailing underscore? Or double underscores as component
>>>>>>> separators, where .../include/... use only single underscores? Or
>>>>>>> headers in arch/*/include/asm/ use ASM_<name>_H (i.e. not making the
>>>>>>> architecture explicit in the guard name, on the grounds that headers
>>>>>>> from multiple architectures shouldn't be included at the same time)?
>>>>>> Thanks for providing some details.  The proposal for private headers
>>>>>> make sense. For arch/.../include/asm/ headers, I would strongly prefer
>>>>>> if we use prefix them with ASM_*.
>>>>>>
>>>>>> As a side note, I am guessing for asm-generic, we would want to use
>>>>>> ASM_GENERIC_* for the guard prefix. Is that correct?
>>>>>
>>>>> That was an assumption I was working from, yes. Could also be just
>>>>> GENERIC_ afaic.
>>>>
>>>> Thanks for the confirmation. I am fine with either GENERIC_ or ASM_GENERIC_.
>>>
>>> OK. So in summary:
>>> - arch/.../include/asm/ headers would use ASM_<filename>_H
>>> - private headers would use <dir>_<filename>_H
>>> - asm-generic headers would use ASM_GENERIC_<filename>_H
>>>
>>> If that's agreed, we can move forward with the patch following this
>>> scheme.
>>
>> FTAOD - just as long as <dir> is clarified to mean only the leaf-most
>> directory component (assuming we're still talking about the most
>> recently proposed scheme and we deem the risk of collisions low enough
>> there).
> 
> Yes, that's what I meant.

Ok, I'll work on the patch using this schema.

-- 
Simone Ballarin, M.Sc.

Field Application Engineer, BUGSENG (https://bugseng.com)



From xen-devel-bounces@lists.xenproject.org Fri Oct 27 07:45:02 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 27 Oct 2023 07:45:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624271.972694 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qwHWV-0003fQ-8b; Fri, 27 Oct 2023 07:44:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624271.972694; Fri, 27 Oct 2023 07:44: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 1qwHWV-0003fJ-5z; Fri, 27 Oct 2023 07:44:51 +0000
Received: by outflank-mailman (input) for mailman id 624271;
 Fri, 27 Oct 2023 07:44: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=eEfT=GJ=gmail.com=xadimgnik@srs-se1.protection.inumbo.net>)
 id 1qwHWU-0003fA-E8
 for xen-devel@lists.xenproject.org; Fri, 27 Oct 2023 07:44:50 +0000
Received: from mail-wm1-x331.google.com (mail-wm1-x331.google.com
 [2a00:1450:4864:20::331])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id b39764d8-749c-11ee-9b0e-b553b5be7939;
 Fri, 27 Oct 2023 09:44:47 +0200 (CEST)
Received: by mail-wm1-x331.google.com with SMTP id
 5b1f17b1804b1-40838915cecso14060995e9.2
 for <xen-devel@lists.xenproject.org>; Fri, 27 Oct 2023 00:44:47 -0700 (PDT)
Received: from [192.168.10.177] (54-240-197-235.amazon.com. [54.240.197.235])
 by smtp.gmail.com with ESMTPSA id
 g12-20020a05600c310c00b004068e09a70bsm940661wmo.31.2023.10.27.00.44.45
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Fri, 27 Oct 2023 00:44: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: b39764d8-749c-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698392687; x=1698997487; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:from:references:cc:to
         :content-language:subject:reply-to:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=weNLTHsNEHd1AKAqcG0eLkMfm7+O04Gb2EjgMXPk2o8=;
        b=R6VxZV+RTz06jQNzK50uCUYAzPaIb+xWBIqBje3A7t6WglJBgyXTo9keSWE3qH4qTq
         752mGzPzIZfAbhr0qRpVcskdL+6mXDgxbSlbh3mlBXbrVQQeRt2WM0zW101JHbsQwBo9
         +N53QXsB7QAE0QhsB6WPrEHnK9oGy70dNaGCioYMmNh+IilM8KQmim8e0hTwDgj6ht2V
         roghHZZ0idX+azivGsmgkHv1QPDiqR3k9alqu5BGYo6sV2zwGWi6LpU6WB/eURScJnVK
         O2tOPquOfLwHx8cMHTelArunzb7Jp2fTH3vcCGhohVbP9OGPG2v6R8WvIRHA0n8CFZCg
         b5+Q==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698392687; x=1698997487;
        h=content-transfer-encoding:in-reply-to:from:references:cc:to
         :content-language:subject:reply-to:user-agent:mime-version:date
         :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=weNLTHsNEHd1AKAqcG0eLkMfm7+O04Gb2EjgMXPk2o8=;
        b=QNmNgaVGpeK7ciI1u0oZrtytxs0xxXsHVYUrEi6JvKd7czeGE48zMYWSpAiRSEzgfl
         qjFGMubY4Xp046nqgDGyVr3KN5mq/Mgt3yZtceQ4GGNl+QK6x9p/OA3dJlU5d9CO4Wbd
         WduIwHOroUiNw3ad6BZCsd7k9y7A9NI1b3qSaZbrDXtjm3EVlUVzSzryOGWiB/NnOWJ8
         svNOC0Nu6NbSVLiZ6C7R+jOV4Kzp9W39o2Gxd4VrAQRgzZhPgG0Mfb9B965Nv0ZXHSCf
         y0z6sdBPisULGYkJV355dUkplbUBOn2CzKTAmOio2zUFlvQIfzV4usKTJb0awYpqGXWP
         2wsg==
X-Gm-Message-State: AOJu0YzNe2dB7tyZ+rj+MIphEWbQwgz1s/uiGTKTE7zR8YtTcziUKe0a
	qc9tJYtHaDtv4pZV3HdGcAM=
X-Google-Smtp-Source: AGHT+IGfHlZcElg4jlYC+dM2f33yrgLaTa3lKMccWGDiPJqAf0Qf0ppM0UHBxCctTNhgycC9pq53SA==
X-Received: by 2002:a05:600c:45d3:b0:405:3dd0:6ee9 with SMTP id s19-20020a05600c45d300b004053dd06ee9mr1653222wmo.34.1698392686518;
        Fri, 27 Oct 2023 00:44:46 -0700 (PDT)
Message-ID: <d58639b8-09de-4820-88ae-53de0db55f7f@gmail.com>
Date: Fri, 27 Oct 2023 08:44:44 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Reply-To: paul@xen.org
Subject: Re: [PATCH v3 17/28] hw/xen: add support for Xen primary console in
 emulated mode
Content-Language: en-US
To: David Woodhouse <dwmw2@infradead.org>, qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>, Hanna Reitz <hreitz@redhat.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Anthony Perard <anthony.perard@citrix.com>, Paul Durrant <paul@xen.org>,
 =?UTF-8?Q?Marc-Andr=C3=A9_Lureau?= <marcandre.lureau@redhat.com>,
 Paolo Bonzini <pbonzini@redhat.com>, "Michael S. Tsirkin" <mst@redhat.com>,
 Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
 Richard Henderson <richard.henderson@linaro.org>,
 Eduardo Habkost <eduardo@habkost.net>, Jason Wang <jasowang@redhat.com>,
 Marcelo Tosatti <mtosatti@redhat.com>, qemu-block@nongnu.org,
 xen-devel@lists.xenproject.org, kvm@vger.kernel.org,
 Bernhard Beschow <shentey@gmail.com>, Joel Upham <jupham125@gmail.com>
References: <20231025145042.627381-1-dwmw2@infradead.org>
 <20231025145042.627381-18-dwmw2@infradead.org>
From: "Durrant, Paul" <xadimgnik@gmail.com>
In-Reply-To: <20231025145042.627381-18-dwmw2@infradead.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 25/10/2023 15:50, David Woodhouse wrote:
> From: David Woodhouse <dwmw@amazon.co.uk>
> 
> The primary console is special because the toolstack maps a page into
> the guest for its ring, and also allocates the guest-side event channel.
> The guest's grant table is even primed to export that page using a known
> grant ref#. Add support for all that in emulated mode, so that we can
> have a primary console.
> 
> For reasons unclear, the backends running under real Xen don't just use
> a mapping of the well-known GNTTAB_RESERVED_CONSOLE grant ref (which
> would also be in the ring-ref node in XenStore). Instead, the toolstack
> sets the ring-ref node of the primary console to the GFN of the guest
> page. The backend is expected to handle that special case and map it
> with foreignmem operations instead.
> 
> We don't have an implementation of foreignmem ops for emulated Xen mode,
> so just make it map GNTTAB_RESERVED_CONSOLE instead. This would probably
> work for real Xen too, but we can't work out how to make real Xen create
> a primary console of type "ioemu" to make QEMU drive it, so we can't
> test that; might as well leave it as it is for now under Xen.
> 
> Now at last we can boot the Xen PV shim and run PV kernels in QEMU.
> 
> Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
> ---
>   hw/char/xen_console.c             |  78 ++++++++----
>   hw/i386/kvm/meson.build           |   1 +
>   hw/i386/kvm/trace-events          |   2 +
>   hw/i386/kvm/xen-stubs.c           |   8 ++
>   hw/i386/kvm/xen_gnttab.c          |   7 +-
>   hw/i386/kvm/xen_primary_console.c | 193 ++++++++++++++++++++++++++++++
>   hw/i386/kvm/xen_primary_console.h |  23 ++++
>   hw/i386/kvm/xen_xenstore.c        |  10 ++
>   hw/xen/xen-bus.c                  |   5 +
>   include/hw/xen/xen-bus.h          |   1 +
>   target/i386/kvm/xen-emu.c         |  23 +++-
>   11 files changed, 328 insertions(+), 23 deletions(-)
>   create mode 100644 hw/i386/kvm/xen_primary_console.c
>   create mode 100644 hw/i386/kvm/xen_primary_console.h
> 

Reviewed-by: Paul Durrant <paul@xen.org>




From xen-devel-bounces@lists.xenproject.org Fri Oct 27 08:29:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 27 Oct 2023 08:29:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624281.972708 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qwIDt-0005A5-08; Fri, 27 Oct 2023 08:29:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624281.972708; Fri, 27 Oct 2023 08:29: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 1qwIDs-00059y-TX; Fri, 27 Oct 2023 08:29:40 +0000
Received: by outflank-mailman (input) for mailman id 624281;
 Fri, 27 Oct 2023 08:29: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=eEfT=GJ=gmail.com=xadimgnik@srs-se1.protection.inumbo.net>)
 id 1qwIDq-00059s-QS
 for xen-devel@lists.xenproject.org; Fri, 27 Oct 2023 08:29:38 +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 f6b83e62-74a2-11ee-98d6-6d05b1d4d9a1;
 Fri, 27 Oct 2023 10:29:37 +0200 (CEST)
Received: by mail-wm1-x331.google.com with SMTP id
 5b1f17b1804b1-4083f61312eso13892135e9.3
 for <xen-devel@lists.xenproject.org>; Fri, 27 Oct 2023 01:29:37 -0700 (PDT)
Received: from [192.168.10.177] (54-240-197-235.amazon.com. [54.240.197.235])
 by smtp.gmail.com with ESMTPSA id
 h9-20020a05600c314900b0040849ce7116sm4519893wmo.43.2023.10.27.01.29.34
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Fri, 27 Oct 2023 01:29: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: f6b83e62-74a2-11ee-98d6-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698395376; x=1699000176; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:from:references:cc:to
         :content-language:subject:reply-to:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=uawWEYvnU1I7SsFfXaVgl6JK99lbvsL15u5TMr7vQn8=;
        b=K9nyzKXqcS0umrg8ilM4BFAivRhh1Z88D7hH1+6wGaHKPHhzws+dikmLpD10pQIdf7
         IiLN/ajuXMg1l8HQJH9+L3+fuk35labkMfejSWAUuslNCU1ce+vRgeurODgv3fl2cWJZ
         +8I8gs4zeQktX8/+1weH7DNGRr9yYooihm0V150Rd0EW3f/Hrgbcg4pgPL+qg79k/ICb
         YiBe782+Ch2WjobLNHW7hvNI/8+F+On6rTEmCN0qT9NCfd9HkyZG0RFNWtxT9i/aFSLH
         o8P10Hr/+nYsafyshNEdlD2pJVpJadyKIiI1E3OY4bKS0j7z3uyn4RbZhBIvgi8Bf3hy
         X+9w==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698395376; x=1699000176;
        h=content-transfer-encoding:in-reply-to:from:references:cc:to
         :content-language:subject:reply-to:user-agent:mime-version:date
         :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=uawWEYvnU1I7SsFfXaVgl6JK99lbvsL15u5TMr7vQn8=;
        b=dalNFZdcaBUnmaFS8X8zWL+FCdtEsrFeJiOV7LSvp5MR82IWhiaW3BPXSBTh1LZ9QH
         dIwLbK0xaagrSfR4TOQZVNlYmLOsVlHBnjYCwEjXl8lhEA/RwdWNok5V1e2BBKDpd4HG
         iPnKsrrYI2/ksvy+IYerqIYdQ/ivlgjWUJINJ9jg8XnnwHB1uuz9XSQDZ4SVMTJscL7k
         qpl3vYdqzX3Opow2FLyMrlGBElYBLV1Xvy1qQLPw3YrTPzpMyR4Xh8bL5r8oy+9XM51I
         9wELn4oYQkrc+Knjlm+Sc6V7hr6g4W2l3MHJYYNrvDRsN34vAZco6q4UcVjjh6lGl8YR
         plfw==
X-Gm-Message-State: AOJu0YyezxmGZF+ILGBzCdTfOny9UHLsrkevHD1bYd8zlzTNZWI5/asZ
	49kiPVCA3aCPXhsy3RNgVyo=
X-Google-Smtp-Source: AGHT+IEhOFiWCBEfo+wHr0Pp7y4a5kzJHetZXB/E/pRI16RlTXShKDIVxn2mzdbzdHFgDhukzBbnCg==
X-Received: by 2002:a05:600c:1c06:b0:404:4b6f:d70d with SMTP id j6-20020a05600c1c0600b004044b6fd70dmr1726336wms.17.1698395376081;
        Fri, 27 Oct 2023 01:29:36 -0700 (PDT)
Message-ID: <0aabb787-eacf-48d9-83b6-3769c7436cf9@gmail.com>
Date: Fri, 27 Oct 2023 09:29:34 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Reply-To: paul@xen.org
Subject: Re: [PATCH v3 18/28] hw/xen: only remove peers of PCI NICs on unplug
Content-Language: en-US
To: David Woodhouse <dwmw2@infradead.org>, qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>, Hanna Reitz <hreitz@redhat.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Anthony Perard <anthony.perard@citrix.com>, Paul Durrant <paul@xen.org>,
 =?UTF-8?Q?Marc-Andr=C3=A9_Lureau?= <marcandre.lureau@redhat.com>,
 Paolo Bonzini <pbonzini@redhat.com>, "Michael S. Tsirkin" <mst@redhat.com>,
 Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
 Richard Henderson <richard.henderson@linaro.org>,
 Eduardo Habkost <eduardo@habkost.net>, Jason Wang <jasowang@redhat.com>,
 Marcelo Tosatti <mtosatti@redhat.com>, qemu-block@nongnu.org,
 xen-devel@lists.xenproject.org, kvm@vger.kernel.org,
 Bernhard Beschow <shentey@gmail.com>, Joel Upham <jupham125@gmail.com>
References: <20231025145042.627381-1-dwmw2@infradead.org>
 <20231025145042.627381-19-dwmw2@infradead.org>
From: "Durrant, Paul" <xadimgnik@gmail.com>
In-Reply-To: <20231025145042.627381-19-dwmw2@infradead.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 25/10/2023 15:50, David Woodhouse wrote:
> From: David Woodhouse <dwmw@amazon.co.uk>
> 
> When the Xen guest asks to unplug *emulated* NICs, it's kind of unhelpful
> also to unplug the peer of the *Xen* PV NIC.
> 
> Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
> ---
>   hw/i386/xen/xen_platform.c | 9 +++++++--
>   1 file changed, 7 insertions(+), 2 deletions(-)
> 

Reviewed-by: Paul Durrant <paul@xen.org>


From xen-devel-bounces@lists.xenproject.org Fri Oct 27 08:42:25 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 27 Oct 2023 08:42:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624285.972717 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qwIQ8-00006o-44; Fri, 27 Oct 2023 08:42:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624285.972717; Fri, 27 Oct 2023 08:42: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 1qwIQ8-00006h-1J; Fri, 27 Oct 2023 08:42:20 +0000
Received: by outflank-mailman (input) for mailman id 624285;
 Fri, 27 Oct 2023 08:42: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=eEfT=GJ=gmail.com=xadimgnik@srs-se1.protection.inumbo.net>)
 id 1qwIQ7-00006b-70
 for xen-devel@lists.xenproject.org; Fri, 27 Oct 2023 08:42:19 +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 bb4d82e7-74a4-11ee-9b0e-b553b5be7939;
 Fri, 27 Oct 2023 10:42:16 +0200 (CEST)
Received: by mail-wr1-x430.google.com with SMTP id
 ffacd0b85a97d-32dc9ff4a8fso1159666f8f.1
 for <xen-devel@lists.xenproject.org>; Fri, 27 Oct 2023 01:42:16 -0700 (PDT)
Received: from [192.168.10.177] (54-240-197-235.amazon.com. [54.240.197.235])
 by smtp.gmail.com with ESMTPSA id
 q12-20020adffecc000000b0032dc1fc84f2sm1294729wrs.46.2023.10.27.01.42.14
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Fri, 27 Oct 2023 01:42: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: bb4d82e7-74a4-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698396136; x=1699000936; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:from:references:cc:to
         :content-language:subject:reply-to:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=I4YW6v0nwEzTaGHDzniJxz3Wp+GrgF6w84+hb3xLCwk=;
        b=MC/pq2QQlugdJO0HZmcwD6xCFM+gtUlXsDTTB2ZZlSFiNlW5gbE9m61ztNVe3teQUz
         55omlF+gROKhoLDvLfeWePsO21gZQsDFPBjTp62DzdFcRjoPSGtRhfCKcY85fWph5gzn
         E4o63CWEy44jdc0ehgMGz9M7XAsEDAXQfcwAzrpfgO0NJQUH9R5py33UGMvrsXxChu0M
         wbyLeavn0J0RMTavY5DUs/W95UoNX5tncjak3WIPon75X1w/lzHW5lXMtM8sHJVRMF+x
         3PNyWeIM+cBkyxAGyhGx+PH8g28gYbKW9MY8RLA2mv3NNK3ku+XYJtfHtPb/Wr4bFmGm
         Bw3g==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698396136; x=1699000936;
        h=content-transfer-encoding:in-reply-to:from:references:cc:to
         :content-language:subject:reply-to:user-agent:mime-version:date
         :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=I4YW6v0nwEzTaGHDzniJxz3Wp+GrgF6w84+hb3xLCwk=;
        b=vdYHUcIbtu0jvyd9/PiBhhAkm38aMp9OcVr1BblkNUvgR+ZW9Q8m5TF29asNM3WoFa
         gR5Kt+pusnW/p91b1tV7VhCoVgW+oyY3S1ktsxw1TpqMv/0LlVJC95KTz/hZpxaxaEdW
         9CfPUoQsumWKFUWnpaCAC7rfHxxNqvz+oAtxY0MG8J78EozlRpvXVjDKqvQOtiBMxewb
         AeM3JWelAiqUZzVprY4ZJRYZbR+tZVBWf764bD/P6b3TVL7yuygiJu5mcZ2u6Rh/GCQ1
         2qvIvqqkQvG9gTttQ50HQyo9oXpkzZDyhu+ip0dyURJfQZsQgRZnwFir2oTbo7ceCkTq
         PtjA==
X-Gm-Message-State: AOJu0YxGR49ieAm9MKdVYKw3hJNcasfGwCaYGU8F+3aK+VBmgn+3HkXQ
	d/a0JQTjCWGENpat9GhWQQA=
X-Google-Smtp-Source: AGHT+IHYKFjE7/5s/eYCnVaerp95T/CLeSS0gWC6UKfDnf6cIdlOYl4zJ2dW3VoRlx9dX62JxFte9A==
X-Received: by 2002:a5d:4a4c:0:b0:32d:d2ef:b0c1 with SMTP id v12-20020a5d4a4c000000b0032dd2efb0c1mr1586686wrs.33.1698396135916;
        Fri, 27 Oct 2023 01:42:15 -0700 (PDT)
Message-ID: <a0798190-e5da-42fd-af1c-17af48e9fe89@gmail.com>
Date: Fri, 27 Oct 2023 09:42:13 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Reply-To: paul@xen.org
Subject: Re: [PATCH v3 19/28] hw/xen: update Xen PV NIC to XenDevice model
Content-Language: en-US
To: David Woodhouse <dwmw2@infradead.org>, qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>, Hanna Reitz <hreitz@redhat.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Anthony Perard <anthony.perard@citrix.com>, Paul Durrant <paul@xen.org>,
 =?UTF-8?Q?Marc-Andr=C3=A9_Lureau?= <marcandre.lureau@redhat.com>,
 Paolo Bonzini <pbonzini@redhat.com>, "Michael S. Tsirkin" <mst@redhat.com>,
 Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
 Richard Henderson <richard.henderson@linaro.org>,
 Eduardo Habkost <eduardo@habkost.net>, Jason Wang <jasowang@redhat.com>,
 Marcelo Tosatti <mtosatti@redhat.com>, qemu-block@nongnu.org,
 xen-devel@lists.xenproject.org, kvm@vger.kernel.org,
 Bernhard Beschow <shentey@gmail.com>, Joel Upham <jupham125@gmail.com>
References: <20231025145042.627381-1-dwmw2@infradead.org>
 <20231025145042.627381-20-dwmw2@infradead.org>
From: "Durrant, Paul" <xadimgnik@gmail.com>
In-Reply-To: <20231025145042.627381-20-dwmw2@infradead.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 25/10/2023 15:50, David Woodhouse wrote:
> From: David Woodhouse <dwmw@amazon.co.uk>
> 
> This allows us to use Xen PV networking with emulated Xen guests, and to
> add them on the command line or hotplug.
> 
> Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
> ---
>   hw/net/meson.build        |   2 +-
>   hw/net/trace-events       |  11 +
>   hw/net/xen_nic.c          | 484 +++++++++++++++++++++++++++++---------
>   hw/xenpv/xen_machine_pv.c |   1 -
>   4 files changed, 381 insertions(+), 117 deletions(-)
> 
> diff --git a/hw/net/meson.build b/hw/net/meson.build
> index 2632634df3..f64651c467 100644
> --- a/hw/net/meson.build
> +++ b/hw/net/meson.build
> @@ -1,5 +1,5 @@
>   system_ss.add(when: 'CONFIG_DP8393X', if_true: files('dp8393x.c'))
> -system_ss.add(when: 'CONFIG_XEN', if_true: files('xen_nic.c'))
> +system_ss.add(when: 'CONFIG_XEN_BUS', if_true: files('xen_nic.c'))
>   system_ss.add(when: 'CONFIG_NE2000_COMMON', if_true: files('ne2000.c'))
>   
>   # PCI network cards
> diff --git a/hw/net/trace-events b/hw/net/trace-events
> index 3abfd65e5b..3097742cc0 100644
> --- a/hw/net/trace-events
> +++ b/hw/net/trace-events
> @@ -482,3 +482,14 @@ dp8393x_receive_oversize(int size) "oversize packet, pkt_size is %d"
>   dp8393x_receive_not_netcard(void) "packet not for netcard"
>   dp8393x_receive_packet(int crba) "Receive packet at 0x%"PRIx32
>   dp8393x_receive_write_status(int crba) "Write status at 0x%"PRIx32
> +
> +# xen_nic.c
> +xen_netdev_realize(int dev, const char *info, const char *peer) "vif%u info '%s' peer '%s'"
> +xen_netdev_unrealize(int dev) "vif%u"
> +xen_netdev_create(int dev) "vif%u"
> +xen_netdev_destroy(int dev) "vif%u"
> +xen_netdev_disconnect(int dev) "vif%u"
> +xen_netdev_connect(int dev, unsigned int tx, unsigned int rx, int port) "vif%u tx %u rx %u port %u"
> +xen_netdev_frontend_changed(const char *dev, int state) "vif%s state %d"
> +xen_netdev_tx(int dev, int ref, int off, int len, unsigned int flags, const char *c, const char *d, const char *m, const char *e) "vif%u ref %u off %u len %u flags 0x%x%s%s%s%s"
> +xen_netdev_rx(int dev, int idx, int status, int flags) "vif%u idx %d status %d flags 0x%x"
> diff --git a/hw/net/xen_nic.c b/hw/net/xen_nic.c
> index 9bbf6599fc..af4ba3f1e6 100644
> --- a/hw/net/xen_nic.c
> +++ b/hw/net/xen_nic.c
> @@ -20,6 +20,13 @@
>    */
>   
>   #include "qemu/osdep.h"
> +#include "qemu/main-loop.h"
> +#include "qemu/cutils.h"
> +#include "qemu/log.h"
> +#include "qemu/qemu-print.h"
> +#include "qapi/qmp/qdict.h"
> +#include "qapi/error.h"
> +
>   #include <sys/socket.h>
>   #include <sys/ioctl.h>
>   #include <sys/wait.h>
> @@ -27,18 +34,26 @@
>   #include "net/net.h"
>   #include "net/checksum.h"
>   #include "net/util.h"
> -#include "hw/xen/xen-legacy-backend.h"
> +
> +#include "hw/xen/xen-backend.h"
> +#include "hw/xen/xen-bus-helper.h"
> +#include "hw/qdev-properties.h"
> +#include "hw/qdev-properties-system.h"
>   
>   #include "hw/xen/interface/io/netif.h"
> +#include "hw/xen/interface/io/xs_wire.h"
> +
> +#include "trace.h"
>   
>   /* ------------------------------------------------------------- */
>   
>   struct XenNetDev {
> -    struct XenLegacyDevice      xendev;  /* must be first */
> -    char                  *mac;
> +    struct XenDevice      xendev;  /* must be first */
> +    XenEventChannel       *event_channel;
> +    int                   dev;
>       int                   tx_work;
> -    int                   tx_ring_ref;
> -    int                   rx_ring_ref;
> +    unsigned int          tx_ring_ref;
> +    unsigned int          rx_ring_ref;
>       struct netif_tx_sring *txs;
>       struct netif_rx_sring *rxs;
>       netif_tx_back_ring_t  tx_ring;
> @@ -47,6 +62,11 @@ struct XenNetDev {
>       NICState              *nic;
>   };
>   
> +typedef struct XenNetDev XenNetDev;
> +
> +#define TYPE_XEN_NET_DEVICE "xen-net-device"
> +OBJECT_DECLARE_SIMPLE_TYPE(XenNetDev, XEN_NET_DEVICE)
> +
>   /* ------------------------------------------------------------- */
>   
>   static void net_tx_response(struct XenNetDev *netdev, netif_tx_request_t *txp, int8_t st)
> @@ -68,7 +88,8 @@ static void net_tx_response(struct XenNetDev *netdev, netif_tx_request_t *txp, i
>       netdev->tx_ring.rsp_prod_pvt = ++i;
>       RING_PUSH_RESPONSES_AND_CHECK_NOTIFY(&netdev->tx_ring, notify);
>       if (notify) {
> -        xen_pv_send_notify(&netdev->xendev);
> +        xen_device_notify_event_channel(XEN_DEVICE(netdev),
> +                                        netdev->event_channel, NULL);
>       }
>   
>       if (i == netdev->tx_ring.req_cons) {
> @@ -104,13 +125,16 @@ static void net_tx_error(struct XenNetDev *netdev, netif_tx_request_t *txp, RING
>   #endif
>   }
>   
> -static void net_tx_packets(struct XenNetDev *netdev)
> +static bool net_tx_packets(struct XenNetDev *netdev)
>   {
> +    bool done_something = false;
>       netif_tx_request_t txreq;
>       RING_IDX rc, rp;
>       void *page;
>       void *tmpbuf = NULL;
>   
> +    assert(qemu_mutex_iothread_locked());
> +
>       for (;;) {
>           rc = netdev->tx_ring.req_cons;
>           rp = netdev->tx_ring.sring->req_prod;
> @@ -122,49 +146,52 @@ static void net_tx_packets(struct XenNetDev *netdev)
>               }
>               memcpy(&txreq, RING_GET_REQUEST(&netdev->tx_ring, rc), sizeof(txreq));
>               netdev->tx_ring.req_cons = ++rc;
> +            done_something = true;
>   
>   #if 1
>               /* should not happen in theory, we don't announce the *
>                * feature-{sg,gso,whatelse} flags in xenstore (yet?) */
>               if (txreq.flags & NETTXF_extra_info) {
> -                xen_pv_printf(&netdev->xendev, 0, "FIXME: extra info flag\n");
> +                qemu_log_mask(LOG_UNIMP, "vif%u: FIXME: extra info flag\n",
> +                              netdev->dev);
>                   net_tx_error(netdev, &txreq, rc);
>                   continue;
>               }
>               if (txreq.flags & NETTXF_more_data) {
> -                xen_pv_printf(&netdev->xendev, 0, "FIXME: more data flag\n");
> +                qemu_log_mask(LOG_UNIMP, "vif%u: FIXME: more data flag\n",
> +                              netdev->dev);
>                   net_tx_error(netdev, &txreq, rc);
>                   continue;
>               }
>   #endif

I know that this is just translation but the fact the above code is 
there indicates that you're likely to see problems here. Not supporting 
extra_info is likely ok as long as RSS, TSO or multicast filtering is 
not advertized (as the comment says). But lack of support for more_data 
basically means your frontend needs to send all packets in a single frag 
(e.g. no header split) so that might bite pretty quickly. I guess it 
goes to show that no-one has used this code in many many years.

The translation looks ok to me though so...

Reviewed-by: Paul Durrant <paul@xen.org>



From xen-devel-bounces@lists.xenproject.org Fri Oct 27 08:44:40 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 27 Oct 2023 08:44:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624288.972728 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qwISN-0001M5-G3; Fri, 27 Oct 2023 08:44:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624288.972728; Fri, 27 Oct 2023 08:44: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 1qwISN-0001Ly-DD; Fri, 27 Oct 2023 08:44:39 +0000
Received: by outflank-mailman (input) for mailman id 624288;
 Fri, 27 Oct 2023 08:44: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=eEfT=GJ=gmail.com=xadimgnik@srs-se1.protection.inumbo.net>)
 id 1qwISM-0001GX-1M
 for xen-devel@lists.xenproject.org; Fri, 27 Oct 2023 08:44:38 +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 0e77e766-74a5-11ee-9b0e-b553b5be7939;
 Fri, 27 Oct 2023 10:44:35 +0200 (CEST)
Received: by mail-lf1-x134.google.com with SMTP id
 2adb3069b0e04-507e85ebf50so2472410e87.1
 for <xen-devel@lists.xenproject.org>; Fri, 27 Oct 2023 01:44:36 -0700 (PDT)
Received: from [192.168.10.177] (54-240-197-235.amazon.com. [54.240.197.235])
 by smtp.gmail.com with ESMTPSA id
 o4-20020a5d6704000000b0032dde679398sm1276365wru.8.2023.10.27.01.44.34
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Fri, 27 Oct 2023 01:44: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: 0e77e766-74a5-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698396276; x=1699001076; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:from:references:cc:to
         :content-language:subject:reply-to:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=tNlTPL/h1q0gctttAApwRF+1wbJdOYFnWGSZhWSB3FY=;
        b=lDJn4TIsGac7/9FguS4058xlSQ4KoI1EV0esQFHRVnmfkHs71FPaYLWBjlttCbZKfZ
         J/yo6DLnXqSYRU9oaG6wrIxdTALW7rjjX38PGb24kmQwrmPPZ7bTfJVfc83Ua6b623D7
         vYRk0HasR0TZfjiib0X0tCbjj6ipxozhKtisPwmY9Py2azwfyWPuU2kxf++M16qCK1PH
         XoB0tHbRd697YlNjjSQ88BrfkKCoIiCpYk1fR7BiJ70V61ygALnU5TQkyWKgzrTBvJ8u
         RFBfKGwhsGsjHajVVWQ//2U5+PG0q7EC4SpjphYGII4usutk+eQ2P9J7oHugojcrvuWS
         jV8w==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698396276; x=1699001076;
        h=content-transfer-encoding:in-reply-to:from:references:cc:to
         :content-language:subject:reply-to:user-agent:mime-version:date
         :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=tNlTPL/h1q0gctttAApwRF+1wbJdOYFnWGSZhWSB3FY=;
        b=E19MLTeM7s022oZQ65zRr9B/s2X6PTAWWb1aHN3c0zHlfLn6DYFRxEwRPi0lnTiShe
         th9AGr19rTpFjgu9/WDZ1u+D6zfQ/5AHmXCzWgw0Fs9PsQ5EM7jafeIQ3h1bcsvOKjvT
         l43x5b1iR7PeSkwKDcrwljP+mtlBi7EDl3cQcugJUgryDOrfMicZ47PBLtmuX0emWez1
         nnPwhH63ffGe7tCVPc+O4Ky8dr6j89PlkB6y5KZeY9U+9iNFSQxE332JhAUDfe64+Lo1
         uyO7wZpX29yzlWYt0xKgGdhzgBSoHaQ1puW5xrOJYGu8ZIQ54mvHaXB+VaL47T9iAxx8
         uZFA==
X-Gm-Message-State: AOJu0YwK/MhIhsG4yW/Y2NvuYoIl5InK3x0wsebZMCKeyP/KMe7cPicV
	KhzfiZIARkmKmlYZKwucwPU=
X-Google-Smtp-Source: AGHT+IGDgLtfXBaR32xR7jkwm7OjIsXKvGrggAwxMX3BfT7FEKsGbWVQFL/Ib+4ohIFSlDse9DRe/w==
X-Received: by 2002:a19:6d03:0:b0:507:c763:27a5 with SMTP id i3-20020a196d03000000b00507c76327a5mr1182175lfc.62.1698396275565;
        Fri, 27 Oct 2023 01:44:35 -0700 (PDT)
Message-ID: <db350375-9bb3-4ae7-bd2b-7bcce9974577@gmail.com>
Date: Fri, 27 Oct 2023 09:44:33 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Reply-To: paul@xen.org
Subject: Re: [PATCH v3 20/28] net: do not delete nics in net_cleanup()
Content-Language: en-US
To: David Woodhouse <dwmw2@infradead.org>, qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>, Hanna Reitz <hreitz@redhat.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Anthony Perard <anthony.perard@citrix.com>, Paul Durrant <paul@xen.org>,
 =?UTF-8?Q?Marc-Andr=C3=A9_Lureau?= <marcandre.lureau@redhat.com>,
 Paolo Bonzini <pbonzini@redhat.com>, "Michael S. Tsirkin" <mst@redhat.com>,
 Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
 Richard Henderson <richard.henderson@linaro.org>,
 Eduardo Habkost <eduardo@habkost.net>, Jason Wang <jasowang@redhat.com>,
 Marcelo Tosatti <mtosatti@redhat.com>, qemu-block@nongnu.org,
 xen-devel@lists.xenproject.org, kvm@vger.kernel.org,
 Bernhard Beschow <shentey@gmail.com>, Joel Upham <jupham125@gmail.com>
References: <20231025145042.627381-1-dwmw2@infradead.org>
 <20231025145042.627381-21-dwmw2@infradead.org>
From: "Durrant, Paul" <xadimgnik@gmail.com>
In-Reply-To: <20231025145042.627381-21-dwmw2@infradead.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 25/10/2023 15:50, David Woodhouse wrote:
> From: David Woodhouse <dwmw@amazon.co.uk>
> 
> In net_cleanup() we only need to delete the netdevs, as those may have
> state which outlives Qemu when it exits, and thus may actually need to
> be cleaned up on exit.
> 
> The nics, on the other hand, are owned by the device which created them.
> Most devices don't bother to clean up on exit because they don't have
> any state which will outlive Qemu... but XenBus devices do need to clean
> up their nodes in XenStore, and do have an exit handler to delete them.
> 
> When the XenBus exit handler destroys the xen-net-device, it attempts
> to delete its nic after net_cleanup() had already done so. And crashes.
> 
> Fix this by only deleting netdevs as we walk the list. As the comment
> notes, we can't use QTAILQ_FOREACH_SAFE() as each deletion may remove
> *multiple* entries, including the "safely" saved 'next' pointer. But
> we can store the *previous* entry, since nics are safe.
> 
> Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
> ---
>   net/net.c | 28 ++++++++++++++++++++++------
>   1 file changed, 22 insertions(+), 6 deletions(-)
> 

Reviewed-by: Paul Durrant <paul@xen.org>



From xen-devel-bounces@lists.xenproject.org Fri Oct 27 08:45:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 27 Oct 2023 08:45:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624292.972738 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qwITU-0002DH-Ql; Fri, 27 Oct 2023 08:45:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624292.972738; Fri, 27 Oct 2023 08:45: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 1qwITU-0002DA-Nr; Fri, 27 Oct 2023 08:45:48 +0000
Received: by outflank-mailman (input) for mailman id 624292;
 Fri, 27 Oct 2023 08:45: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=AA2W=GJ=casper.srs.infradead.org=BATV+92d2995e4a7c3d3365be+7369+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qwITS-0002D0-Ae
 for xen-devel@lists.xenproject.org; Fri, 27 Oct 2023 08:45:47 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 37937884-74a5-11ee-98d6-6d05b1d4d9a1;
 Fri, 27 Oct 2023 10:45:44 +0200 (CEST)
Received: from [2001:8b0:10b:5:a059:f7a9:933a:2236]
 (helo=u3832b3a9db3152.ant.amazon.com)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qwITM-002Slx-6X; Fri, 27 Oct 2023 08:45: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: 37937884-74a5-11ee-98d6-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=MIME-Version:Content-Type:References:
	In-Reply-To:Date:Cc:To:From:Subject:Message-ID:Sender:Reply-To:
	Content-Transfer-Encoding:Content-ID:Content-Description;
	bh=CCdva9oSf6tY28xy4tw/eAe0/f89vRQdMgzrW7dc0zY=; b=au624mjryRC71K4dqNzr6vEYpR
	i1VIwJKppRlM9F6K/FwEsGV2eGhonrk7KcXxOEXceXYYeVOasMOo89HuHMbsG81hXpUquEzvVCZYM
	B7xckI19v8r+eJddZWoPRM61S01rq2RwVA3kdZjNoZTLWVkvhWTrhsasaC2MC3meB+3j4SJos4nOv
	gTLaMd6486/DkrO5ktJJxuZKrFxgsTSG3eApBGyS5lCwpUZzUG8qstCAQ6LycGWxUOrwX+bflEF9E
	q2mb006FGrAKrTudsj5LgBnsoan5a/6IwYEbm6+k7a3i6MQYzXX0qKVHT4SvOsgskQqNjGjG0D+IO
	Of2zQx5w==;
Message-ID: <f72e2e7feed3ecf17af8ab8442c359eea329ef17.camel@infradead.org>
Subject: Re: [PATCH v3 13/28] hw/xen: automatically assign device index to
 block devices
From: David Woodhouse <dwmw2@infradead.org>
To: paul@xen.org, qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>, Hanna Reitz <hreitz@redhat.com>, Stefano
 Stabellini <sstabellini@kernel.org>, Anthony Perard
 <anthony.perard@citrix.com>,  =?ISO-8859-1?Q?Marc-Andr=E9?= Lureau
 <marcandre.lureau@redhat.com>, Paolo Bonzini <pbonzini@redhat.com>,
 "Michael S. Tsirkin" <mst@redhat.com>, Marcel Apfelbaum
 <marcel.apfelbaum@gmail.com>, Richard Henderson
 <richard.henderson@linaro.org>, Eduardo Habkost <eduardo@habkost.net>,
 Jason Wang <jasowang@redhat.com>, Marcelo Tosatti <mtosatti@redhat.com>,
 qemu-block@nongnu.org,  xen-devel@lists.xenproject.org,
 kvm@vger.kernel.org, Bernhard Beschow <shentey@gmail.com>, Joel Upham
 <jupham125@gmail.com>
Date: Fri, 27 Oct 2023 09:45:39 +0100
In-Reply-To: <74e54da5-9c35-485d-a13c-efac3f81dec2@gmail.com>
References: <20231025145042.627381-1-dwmw2@infradead.org>
	 <20231025145042.627381-14-dwmw2@infradead.org>
	 <74e54da5-9c35-485d-a13c-efac3f81dec2@gmail.com>
Content-Type: multipart/signed; micalg="sha-256"; protocol="application/pkcs7-signature";
	boundary="=-OZZWwwyLPIuvpVYNOyoh"
User-Agent: Evolution 3.44.4-0ubuntu2 
MIME-Version: 1.0
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html


--=-OZZWwwyLPIuvpVYNOyoh
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Fri, 2023-10-27 at 08:30 +0100, Durrant, Paul wrote:
>=20
> > +=C2=A0=C2=A0=C2=A0 if (blockdev->props.vdev.type =3D=3D XEN_BLOCK_VDEV=
_TYPE_INVALID) {
> > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 XenBus *xenbus =3D XEN_BUS(=
qdev_get_parent_bus(DEVICE(xendev)));
> > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 char fe_path[XENSTORE_ABS_P=
ATH_MAX + 1];
> > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 char *value;
> > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 int disk =3D 0;
> > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 unsigned long idx;
> > +
> > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 /* Find an unoccupied devic=
e name */
>=20
> Not sure this is going to work is it? What happens if 'hda' or 'sda', or=
=20
> 'd0' exists? I think you need to use the core of the code in=20
> xen_block_set_vdev() to generate names and search all possible encodings=
=20
> for each disk.

Do we care? You're allowed to have *all* of "hda", "sda" and "xvda" at
the same time. If a user explicitly provides "sda" and then provides
another disk without giving it a name, we're allowed to use "xvda".

Hell, you can also have *separate* backing stores provided as "hda1",
"sda1" and "xvda1". I *might* have tolerated a heckle that this
function should check for at least the latter of those, but when I was
first coding it up I was more inclined to argue "Don't Do That Then".

--=-OZZWwwyLPIuvpVYNOyoh
Content-Type: application/pkcs7-signature; name="smime.p7s"
Content-Disposition: attachment; filename="smime.p7s"
Content-Transfer-Encoding: base64

MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgEFADCABgkqhkiG9w0BBwEAAKCCEkQw
ggYQMIID+KADAgECAhBNlCwQ1DvglAnFgS06KwZPMA0GCSqGSIb3DQEBDAUAMIGIMQswCQYDVQQG
EwJVUzETMBEGA1UECBMKTmV3IEplcnNleTEUMBIGA1UEBxMLSmVyc2V5IENpdHkxHjAcBgNVBAoT
FVRoZSBVU0VSVFJVU1QgTmV0d29yazEuMCwGA1UEAxMlVVNFUlRydXN0IFJTQSBDZXJ0aWZpY2F0
aW9uIEF1dGhvcml0eTAeFw0xODExMDIwMDAwMDBaFw0zMDEyMzEyMzU5NTlaMIGWMQswCQYDVQQG
EwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYD
VQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50
aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC
AQEAyjztlApB/975Rrno1jvm2pK/KxBOqhq8gr2+JhwpKirSzZxQgT9tlC7zl6hn1fXjSo5MqXUf
ItMltrMaXqcESJuK8dtK56NCSrq4iDKaKq9NxOXFmqXX2zN8HHGjQ2b2Xv0v1L5Nk1MQPKA19xeW
QcpGEGFUUd0kN+oHox+L9aV1rjfNiCj3bJk6kJaOPabPi2503nn/ITX5e8WfPnGw4VuZ79Khj1YB
rf24k5Ee1sLTHsLtpiK9OjG4iQRBdq6Z/TlVx/hGAez5h36bBJMxqdHLpdwIUkTqT8se3ed0PewD
ch/8kHPo5fZl5u1B0ecpq/sDN/5sCG52Ds+QU5O5EwIDAQABo4IBZDCCAWAwHwYDVR0jBBgwFoAU
U3m/WqorSs9UgOHYm8Cd8rIDZsswHQYDVR0OBBYEFAnA8vwL2pTbX/4r36iZQs/J4K0AMA4GA1Ud
DwEB/wQEAwIBhjASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEF
BQcDBDARBgNVHSAECjAIMAYGBFUdIAAwUAYDVR0fBEkwRzBFoEOgQYY/aHR0cDovL2NybC51c2Vy
dHJ1c3QuY29tL1VTRVJUcnVzdFJTQUNlcnRpZmljYXRpb25BdXRob3JpdHkuY3JsMHYGCCsGAQUF
BwEBBGowaDA/BggrBgEFBQcwAoYzaHR0cDovL2NydC51c2VydHJ1c3QuY29tL1VTRVJUcnVzdFJT
QUFkZFRydXN0Q0EuY3J0MCUGCCsGAQUFBzABhhlodHRwOi8vb2NzcC51c2VydHJ1c3QuY29tMA0G
CSqGSIb3DQEBDAUAA4ICAQBBRHUAqznCFfXejpVtMnFojADdF9d6HBA4kMjjsb0XMZHztuOCtKF+
xswhh2GqkW5JQrM8zVlU+A2VP72Ky2nlRA1GwmIPgou74TZ/XTarHG8zdMSgaDrkVYzz1g3nIVO9
IHk96VwsacIvBF8JfqIs+8aWH2PfSUrNxP6Ys7U0sZYx4rXD6+cqFq/ZW5BUfClN/rhk2ddQXyn7
kkmka2RQb9d90nmNHdgKrwfQ49mQ2hWQNDkJJIXwKjYA6VUR/fZUFeCUisdDe/0ABLTI+jheXUV1
eoYV7lNwNBKpeHdNuO6Aacb533JlfeUHxvBz9OfYWUiXu09sMAviM11Q0DuMZ5760CdO2VnpsXP4
KxaYIhvqPqUMWqRdWyn7crItNkZeroXaecG03i3mM7dkiPaCkgocBg0EBYsbZDZ8bsG3a08LwEsL
1Ygz3SBsyECa0waq4hOf/Z85F2w2ZpXfP+w8q4ifwO90SGZZV+HR/Jh6rEaVPDRF/CEGVqR1hiuQ
OZ1YL5ezMTX0ZSLwrymUE0pwi/KDaiYB15uswgeIAcA6JzPFf9pLkAFFWs1QNyN++niFhsM47qod
x/PL+5jR87myx5uYdBEQkkDc+lKB1Wct6ucXqm2EmsaQ0M95QjTmy+rDWjkDYdw3Ms6mSWE3Bn7i
5ZgtwCLXgAIe5W8mybM2JzCCBhQwggT8oAMCAQICEQDGvhmWZ0DEAx0oURL6O6l+MA0GCSqGSIb3
DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYD
VQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28g
UlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMB4XDTIyMDEwNzAw
MDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJARYTZHdtdzJAaW5mcmFkZWFkLm9y
ZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3GpC2bomUqk+91wLYBzDMcCj5C9m6
oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZHh7htyAkWYVoFsFPrwHounto8xTsy
SSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT9YgcBqKCo65pTFmOnR/VVbjJk4K2
xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNjP+qDrh0db7PAjO1D4d5ftfrsf+kd
RR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy2U+eITZ5LLE5s45mX2oPFknWqxBo
bQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3BgBEmfsYWlBXO8rVXfvPgLs32VdV
NZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/7auNVRmPB3v5SWEsH8xi4Bez2V9U
KxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmdlFYhAflWKQ03Ufiu8t3iBE3VJbc2
5oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9aelIl6vtbhMA+l0nfrsORMa4kobqQ5
C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMBAAGjggHMMIIByDAfBgNVHSMEGDAW
gBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeDMcimo0oz8o1R1Nver3ZVpSkwDgYD
VR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYwFAYIKwYBBQUHAwQGCCsGAQUFBwMC
MEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYBBQUHAgEWF2h0dHBzOi8vc2VjdGln
by5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9jcmwuc2VjdGlnby5jb20vU2VjdGln
b1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1haWxDQS5jcmwwgYoGCCsGAQUFBwEB
BH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdvLmNvbS9TZWN0aWdvUlNBQ2xpZW50
QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAjBggrBgEFBQcwAYYXaHR0cDovL29j
c3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5mcmFkZWFkLm9yZzANBgkqhkiG9w0B
AQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQvQ/fzPXmtR9t54rpmI2TfyvcKgOXp
qa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvIlSPrzIB4Z2wyIGQpaPLlYflrrVFK
v9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9ChWFfgSXvrWDZspnU3Gjw/rMHrGnql
Htlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0whpBtXdyDjzBtQTaZJ7zTT/vlehc/
tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9IzCCBhQwggT8oAMCAQICEQDGvhmW
Z0DEAx0oURL6O6l+MA0GCSqGSIb3DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3Jl
YXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0
ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJl
IEVtYWlsIENBMB4XDTIyMDEwNzAwMDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJ
ARYTZHdtdzJAaW5mcmFkZWFkLm9yZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3
GpC2bomUqk+91wLYBzDMcCj5C9m6oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZH
h7htyAkWYVoFsFPrwHounto8xTsySSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT
9YgcBqKCo65pTFmOnR/VVbjJk4K2xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNj
P+qDrh0db7PAjO1D4d5ftfrsf+kdRR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy
2U+eITZ5LLE5s45mX2oPFknWqxBobQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3
BgBEmfsYWlBXO8rVXfvPgLs32VdVNZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/
7auNVRmPB3v5SWEsH8xi4Bez2V9UKxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmd
lFYhAflWKQ03Ufiu8t3iBE3VJbc25oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9ae
lIl6vtbhMA+l0nfrsORMa4kobqQ5C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMB
AAGjggHMMIIByDAfBgNVHSMEGDAWgBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeD
Mcimo0oz8o1R1Nver3ZVpSkwDgYDVR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYw
FAYIKwYBBQUHAwQGCCsGAQUFBwMCMEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYB
BQUHAgEWF2h0dHBzOi8vc2VjdGlnby5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9j
cmwuc2VjdGlnby5jb20vU2VjdGlnb1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1h
aWxDQS5jcmwwgYoGCCsGAQUFBwEBBH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdv
LmNvbS9TZWN0aWdvUlNBQ2xpZW50QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAj
BggrBgEFBQcwAYYXaHR0cDovL29jc3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5m
cmFkZWFkLm9yZzANBgkqhkiG9w0BAQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQv
Q/fzPXmtR9t54rpmI2TfyvcKgOXpqa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvI
lSPrzIB4Z2wyIGQpaPLlYflrrVFKv9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9Ch
WFfgSXvrWDZspnU3Gjw/rMHrGnqlHtlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0w
hpBtXdyDjzBtQTaZJ7zTT/vlehc/tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9
IzGCBMcwggTDAgEBMIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVz
dGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMT
NVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEA
xr4ZlmdAxAMdKFES+jupfjANBglghkgBZQMEAgEFAKCCAeswGAYJKoZIhvcNAQkDMQsGCSqGSIb3
DQEHATAcBgkqhkiG9w0BCQUxDxcNMjMxMDI3MDg0NTM5WjAvBgkqhkiG9w0BCQQxIgQgoPUCA6cK
0bLX0WnKEHxzhzwk00vnxkwtNzIZ8NCtB7owgb0GCSsGAQQBgjcQBDGBrzCBrDCBljELMAkGA1UE
BhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEYMBYG
A1UEChMPU2VjdGlnbyBMaW1pdGVkMT4wPAYDVQQDEzVTZWN0aWdvIFJTQSBDbGllbnQgQXV0aGVu
dGljYXRpb24gYW5kIFNlY3VyZSBFbWFpbCBDQQIRAMa+GZZnQMQDHShREvo7qX4wgb8GCyqGSIb3
DQEJEAILMYGvoIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVy
MRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNl
Y3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEAxr4Z
lmdAxAMdKFES+jupfjANBgkqhkiG9w0BAQEFAASCAgCSsD9IZF23NzdxVfyFIu69RUDAXLZNLOwN
qwTfna21IBjOO7Tsg0mIyzeJrJmGkM88vP0vf32D/FZqrftLGiEWG2JFRrqFnpkC+lxf373uewy1
FJO3wLj1dIavzpI01OqIyhz/NZ6CwwXG/6C79f7ngQN/J5YsQgbK1DRrCYyho4EwDWx+/AHAiDWd
vai67TPkW9UsgViXS32f8SFB8hKzMpyeCptPEX5j0eXphUmQr2sRMyS6vR9nMC6gyITr1y8SuPEf
gHu/G4LVTnmJWPKXyVsD1ZFYE0QbtTLMnkQnOQyxIKxhJPyqJOnxOLzSvLZ488sJ1IW/hhkCoAoA
eEM4TUzBMuULeZYHwREEdGneQhO0I2L/1i4EYtNUB3/2I4DxTRK1VeuRnhBGdzB0mvktVBDV/6+Z
Xr3XFzscElEbpdry1cUE/J8s4Fzi+Z9/o1llTNOMYvHZ4cdOrr8X3cMbixvYY2vnLzCicY8Ug6Bj
EZXN4sfiUaigW/i1OrTB9X5DwuC1DH9XtJlklKJgYczAY8Y8Thid6+7JgiuFPcSf2XiW29KCClN1
vvvgCGAXr9HnfybhV2tr6+UmGEsSpQuJVwif7WiOTvtAd6ohI3UOVx6yqVzfO6DdL54CunStH2FK
01fTE73syB0qzva+HytUuSS0RerpEx/teLRkQb1xjgAAAAAAAA==


--=-OZZWwwyLPIuvpVYNOyoh--


From xen-devel-bounces@lists.xenproject.org Fri Oct 27 09:01:21 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 27 Oct 2023 09:01:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624299.972748 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qwIiO-0005rB-9O; Fri, 27 Oct 2023 09:01:12 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624299.972748; Fri, 27 Oct 2023 09:01: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 1qwIiO-0005r4-4g; Fri, 27 Oct 2023 09:01:12 +0000
Received: by outflank-mailman (input) for mailman id 624299;
 Fri, 27 Oct 2023 09:01: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=eEfT=GJ=gmail.com=xadimgnik@srs-se1.protection.inumbo.net>)
 id 1qwIiM-0005qy-8b
 for xen-devel@lists.xenproject.org; Fri, 27 Oct 2023 09:01:10 +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 5e7a9c1c-74a7-11ee-98d6-6d05b1d4d9a1;
 Fri, 27 Oct 2023 11:01:09 +0200 (CEST)
Received: by mail-wm1-x331.google.com with SMTP id
 5b1f17b1804b1-40836ea8cbaso13770805e9.0
 for <xen-devel@lists.xenproject.org>; Fri, 27 Oct 2023 02:01:09 -0700 (PDT)
Received: from [192.168.10.177] (54-240-197-227.amazon.com. [54.240.197.227])
 by smtp.gmail.com with ESMTPSA id
 o1-20020a05600c510100b003fe1c332810sm4617535wms.33.2023.10.27.02.01.06
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Fri, 27 Oct 2023 02:01: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: 5e7a9c1c-74a7-11ee-98d6-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698397268; x=1699002068; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:from:references:cc:to
         :content-language:subject:reply-to:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=kudjWF6BKXHcvZTM1tPFPJmSWancLrtDgA6AoiUkJqM=;
        b=Z+iu32F6fttlk8QIZQCrVNQoD/GzYkObeU8NEfeaXOgD7J9ue44PGcjSTmyBZc1h4Q
         gdJ18Xdm9jyIo/drekfaZDDkhQRfeJXjrCIa9P1+0UzESS2ctzOX9diLSP6YcVYUhxYr
         TnJlm0nY6sSnTZhgpy3iy+jc8oCN0gwPp6IraaSSCX+LfAuWE6YYzj/+Gz6u+BcCfxV4
         Yvt0YHzALt2nN3K/KhLfhwwre1MbXHZZOvFU3La1mSpnzOTVX55TB0yOVS65NWYB+g9W
         Ci4Pf4ayZQdSoKIiYiPQP9AJVg1bl7+Wn29otYgxjstPsF+MJjyYOocsLs7tku+aEO0q
         cTRw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698397268; x=1699002068;
        h=content-transfer-encoding:in-reply-to:from:references:cc:to
         :content-language:subject:reply-to:user-agent:mime-version:date
         :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=kudjWF6BKXHcvZTM1tPFPJmSWancLrtDgA6AoiUkJqM=;
        b=VQbtwMcYnsvKYgn+0gfaLSiqeHKfrallrzJWWSmvmE4gLK2k4oszDda1e+q4v8M6cH
         UrIS5kb3+vQAmv7/l5wJ8goCQqIouK/wLnf2GK6QVqJ9WZttIhwWmN4jOzJEIHCzGGwY
         wyhTDTOTJKXAYJ5ifbkIzioJKfXXvvQxT1s/JNgHO1noZ2b2bTHhxFNG3JETTux0gmuN
         iHSTQpx414rAVKprMnwH+qRdjIhjuhIJVueqCdmoeNyAYd/20JzC21K4VkOh3kUkYZYL
         6FBDBAXMPl/zuga+B6B1DFcEI/Tge0ruf9gQSKBYb6oVtXacM1sMGCSNl9ldY05FkN8E
         Q00g==
X-Gm-Message-State: AOJu0YzkmjlTjtLUpBXd1CzXL872xTRch4v97CcAouOLmH/hOPFtZU8f
	xw5luve/tWDkFq6pYd4z1aY=
X-Google-Smtp-Source: AGHT+IF2wenxeyE7XIJ4gn5j7HE7kYt/efuEUfra8aTWvRCTeZ6usZClJatbl/oALDDone8ynTaYHQ==
X-Received: by 2002:a05:600c:1f92:b0:405:959e:dc7c with SMTP id je18-20020a05600c1f9200b00405959edc7cmr1735809wmb.30.1698397268254;
        Fri, 27 Oct 2023 02:01:08 -0700 (PDT)
Message-ID: <9fb67e52-f262-4cf4-91c2-a42411ba21c4@gmail.com>
Date: Fri, 27 Oct 2023 10:01:06 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Reply-To: paul@xen.org
Subject: Re: [PATCH v3 13/28] hw/xen: automatically assign device index to
 block devices
Content-Language: en-US
To: David Woodhouse <dwmw2@infradead.org>, paul@xen.org, qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>, Hanna Reitz <hreitz@redhat.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Anthony Perard <anthony.perard@citrix.com>,
 =?UTF-8?Q?Marc-Andr=C3=A9_Lureau?= <marcandre.lureau@redhat.com>,
 Paolo Bonzini <pbonzini@redhat.com>, "Michael S. Tsirkin" <mst@redhat.com>,
 Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
 Richard Henderson <richard.henderson@linaro.org>,
 Eduardo Habkost <eduardo@habkost.net>, Jason Wang <jasowang@redhat.com>,
 Marcelo Tosatti <mtosatti@redhat.com>, qemu-block@nongnu.org,
 xen-devel@lists.xenproject.org, kvm@vger.kernel.org,
 Bernhard Beschow <shentey@gmail.com>, Joel Upham <jupham125@gmail.com>
References: <20231025145042.627381-1-dwmw2@infradead.org>
 <20231025145042.627381-14-dwmw2@infradead.org>
 <74e54da5-9c35-485d-a13c-efac3f81dec2@gmail.com>
 <f72e2e7feed3ecf17af8ab8442c359eea329ef17.camel@infradead.org>
From: "Durrant, Paul" <xadimgnik@gmail.com>
In-Reply-To: <f72e2e7feed3ecf17af8ab8442c359eea329ef17.camel@infradead.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

On 27/10/2023 09:45, David Woodhouse wrote:
> On Fri, 2023-10-27 at 08:30 +0100, Durrant, Paul wrote:
>>
>>> +    if (blockdev->props.vdev.type == XEN_BLOCK_VDEV_TYPE_INVALID) {
>>> +        XenBus *xenbus = XEN_BUS(qdev_get_parent_bus(DEVICE(xendev)));
>>> +        char fe_path[XENSTORE_ABS_PATH_MAX + 1];
>>> +        char *value;
>>> +        int disk = 0;
>>> +        unsigned long idx;
>>> +
>>> +        /* Find an unoccupied device name */
>>
>> Not sure this is going to work is it? What happens if 'hda' or 'sda', or
>> 'd0' exists? I think you need to use the core of the code in
>> xen_block_set_vdev() to generate names and search all possible encodings
>> for each disk.
> 
> Do we care? You're allowed to have *all* of "hda", "sda" and "xvda" at
> the same time. If a user explicitly provides "sda" and then provides
> another disk without giving it a name, we're allowed to use "xvda".
> 

Maybe sda and xvda can co-exist, but

https://xenbits.xen.org/gitweb/?p=xen.git;a=blob;f=docs/man/xen-vbd-interface.7.pandoc;h=ba0d159dfa7eaf359922583ccd6d2b413acddb13;hb=HEAD#l125

says that you'll likely run into trouble if hda exists and you happen to 
create xvda.

> Hell, you can also have *separate* backing stores provided as "hda1",
> "sda1" and "xvda1". I *might* have tolerated a heckle that this
> function should check for at least the latter of those, but when I was
> first coding it up I was more inclined to argue "Don't Do That Then".

This code is allocating a name automatically so I think the onus is on 
it not create a needless clash which is likely to have unpredictable 
results depending on what the guest is. Just avoid any aliasing in the 
first place and things will be fine.

   Paul



From xen-devel-bounces@lists.xenproject.org Fri Oct 27 09:09:02 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 27 Oct 2023 09:09:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624303.972757 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qwIpv-0007cY-0s; Fri, 27 Oct 2023 09:08:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624303.972757; Fri, 27 Oct 2023 09:08: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 1qwIpu-0007cR-Ud; Fri, 27 Oct 2023 09:08:58 +0000
Received: by outflank-mailman (input) for mailman id 624303;
 Fri, 27 Oct 2023 09:08: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=eEfT=GJ=gmail.com=xadimgnik@srs-se1.protection.inumbo.net>)
 id 1qwIpu-0007cL-3W
 for xen-devel@lists.xenproject.org; Fri, 27 Oct 2023 09:08:58 +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 7576c93d-74a8-11ee-98d6-6d05b1d4d9a1;
 Fri, 27 Oct 2023 11:08:57 +0200 (CEST)
Received: by mail-wm1-x329.google.com with SMTP id
 5b1f17b1804b1-4083dbc43cfso12617645e9.3
 for <xen-devel@lists.xenproject.org>; Fri, 27 Oct 2023 02:08:57 -0700 (PDT)
Received: from [192.168.10.177] (54-240-197-235.amazon.com. [54.240.197.235])
 by smtp.gmail.com with ESMTPSA id
 g12-20020a05600c310c00b004068e09a70bsm1109446wmo.31.2023.10.27.02.08.54
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Fri, 27 Oct 2023 02:08: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: 7576c93d-74a8-11ee-98d6-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698397736; x=1699002536; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:from:references:cc:to
         :content-language:subject:reply-to:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=xk4l/7iC4UJ4bxYDA1m/0zWstbr1oMvAsUPXmEV1lqw=;
        b=JKecCF3yx7XInHclFLjwUf446cp1xhBEAdjJO6SkZLYagDHBpeYYnkmkDcXthlZVnW
         ROmRTZyR6JHFnjozthQBmhQAqaWwZGqhzdvsZLcpMbhfTqT3VvhoPWiuf7bHvmtoIv7R
         uqYb9DcQaYmyysP/HHLk36d/rO3pnE5s0Fv6XPQd1dTKkq4vYFl5UmbKcVfAK+nbuOZl
         rorwL792+FsZAWC2aO+a4UfZ6Km1xaKhtMJGVshvWtMQ4aMX6u8n9T2ZJM35eYMJyktB
         Jk7ozhwqZW2ovmZirqkQJAgdS92nZucma62E90URixp3QKkRIvuRa1OJl+0evOMdYXZh
         +95Q==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698397736; x=1699002536;
        h=content-transfer-encoding:in-reply-to:from:references:cc:to
         :content-language:subject:reply-to:user-agent:mime-version:date
         :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=xk4l/7iC4UJ4bxYDA1m/0zWstbr1oMvAsUPXmEV1lqw=;
        b=Ln68VDprmi0kYH+kZn7rEaXYKmyn8kcniQQ0MPZOQzerrt7U8z/tWjUiNUBSrxak0l
         iUf8EzmMtcSwrBvUkUM8wlcdAegggKh3XtA2kMesOJ6WJAcu5Gx4ECUQGTgKmZMkrT22
         6ueNJkbq0/1V850hi3FzlR34UwGNeRoIwKOlCjXKHhbnO9JaDhcHUZ5eJa4fMThSAgtm
         A7eOObYCy1mFpM4IhtYpbYLeUZalLUYmIgNY4uQ+krm+q8x2A+agGV8+fLj+KNpY1ZJq
         pU3s7D8959hDYbwjqflBNiarG4uGjniBUFrq8+oOkR1otOw/eflnC28cELY6jRfRr5Kl
         XpVw==
X-Gm-Message-State: AOJu0YzlwjbeRTI7JfiCTpms9mAqkSo8/vgnsIX+zoBeFoOO/ZUucjHu
	dK5lI7JA+YO5RavpdkiuxDI=
X-Google-Smtp-Source: AGHT+IHrQB1bpAc743TK730kpsbJOspNGIhwFQpbDW8MoZPSXg+FX7Yyui8H9QO36a/HiwExPsj/DA==
X-Received: by 2002:a05:600c:4514:b0:408:53d6:10b3 with SMTP id t20-20020a05600c451400b0040853d610b3mr1725341wmo.22.1698397736127;
        Fri, 27 Oct 2023 02:08:56 -0700 (PDT)
Message-ID: <053171c9-fb82-4e19-abda-d41af7b43378@gmail.com>
Date: Fri, 27 Oct 2023 10:08:54 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Reply-To: paul@xen.org
Subject: Re: [PATCH v3 21/28] xen-platform: unplug AHCI disks
Content-Language: en-US
To: David Woodhouse <dwmw2@infradead.org>, qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>, Hanna Reitz <hreitz@redhat.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Anthony Perard <anthony.perard@citrix.com>, Paul Durrant <paul@xen.org>,
 =?UTF-8?Q?Marc-Andr=C3=A9_Lureau?= <marcandre.lureau@redhat.com>,
 Paolo Bonzini <pbonzini@redhat.com>, "Michael S. Tsirkin" <mst@redhat.com>,
 Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
 Richard Henderson <richard.henderson@linaro.org>,
 Eduardo Habkost <eduardo@habkost.net>, Jason Wang <jasowang@redhat.com>,
 Marcelo Tosatti <mtosatti@redhat.com>, qemu-block@nongnu.org,
 xen-devel@lists.xenproject.org, kvm@vger.kernel.org,
 Bernhard Beschow <shentey@gmail.com>, Joel Upham <jupham125@gmail.com>
References: <20231025145042.627381-1-dwmw2@infradead.org>
 <20231025145042.627381-22-dwmw2@infradead.org>
From: "Durrant, Paul" <xadimgnik@gmail.com>
In-Reply-To: <20231025145042.627381-22-dwmw2@infradead.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 25/10/2023 15:50, David Woodhouse wrote:
> From: David Woodhouse <dwmw@amazon.co.uk>
> 
> To support Xen guests using the Q35 chipset, the unplug protocol needs
> to also remove AHCI disks.
> 
> Make pci_xen_ide_unplug() more generic, iterating over the children
> of the PCI device and destroying the "ide-hd" devices. That works the
> same for both AHCI and IDE, as does the detection of the primary disk
> as unit 0 on the bus named "ide.0".
> 
> Then pci_xen_ide_unplug() can be used for both AHCI and IDE devices.
> 
> Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
> ---
>   hw/i386/xen/xen_platform.c | 68 +++++++++++++++++++++++++-------------
>   1 file changed, 45 insertions(+), 23 deletions(-)
> 

Reviewed-by: Paul Durrant <paul@xen.org>



From xen-devel-bounces@lists.xenproject.org Fri Oct 27 09:26:03 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 27 Oct 2023 09:26:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624307.972767 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qwJ6I-0003XH-DA; Fri, 27 Oct 2023 09:25:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624307.972767; Fri, 27 Oct 2023 09: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 1qwJ6I-0003XA-AZ; Fri, 27 Oct 2023 09:25:54 +0000
Received: by outflank-mailman (input) for mailman id 624307;
 Fri, 27 Oct 2023 09:25: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=eEfT=GJ=gmail.com=xadimgnik@srs-se1.protection.inumbo.net>)
 id 1qwJ6H-0003X4-C9
 for xen-devel@lists.xenproject.org; Fri, 27 Oct 2023 09:25:53 +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 d2648ba7-74aa-11ee-98d6-6d05b1d4d9a1;
 Fri, 27 Oct 2023 11:25:52 +0200 (CEST)
Received: by mail-wm1-x32e.google.com with SMTP id
 5b1f17b1804b1-4083ac51d8aso14355675e9.2
 for <xen-devel@lists.xenproject.org>; Fri, 27 Oct 2023 02:25:52 -0700 (PDT)
Received: from [192.168.10.177] (54-240-197-227.amazon.com. [54.240.197.227])
 by smtp.gmail.com with ESMTPSA id
 s13-20020a05600c45cd00b004083bc9ac90sm1171371wmo.24.2023.10.27.02.25.50
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Fri, 27 Oct 2023 02:25: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: d2648ba7-74aa-11ee-98d6-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698398752; x=1699003552; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:from:references:cc:to
         :content-language:subject:reply-to:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=omznWtzf1XKHmZ/Z5NbQjoHVHixpWX6ejbkUDaU7VuQ=;
        b=An+8iWYnmEgESrY2xdERkZJ4Gqc/5VBdRjyjp0ozNlRvIfXLFu0TOk17VNDx55XPmA
         eP/RMusI+pKvDeeLM3mlPXOPqyNps8LcgoQk8F8G2wSDLRcYpcOK8ryoeyGR754ockvm
         Hq45A4oPTAUMrkTfWtKhq6Co7GTW59+10Uo2lqA+YAJfRNDojzv0JN3Ms/iyWBa3quw8
         mBr2PjQ9tMGM+sTUGXl4XYS582i5pcNCWW+fFm5xEMNfjO6e8CmmMi7WzGjIsNU/uaXy
         w2HLRFJmexBaEBqW3bYCPpD9bnGVoMbl6NZ1n8tc5++Y002v5642gv5gXuaUXUGAE1G4
         9xpQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698398752; x=1699003552;
        h=content-transfer-encoding:in-reply-to:from:references:cc:to
         :content-language:subject:reply-to:user-agent:mime-version:date
         :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=omznWtzf1XKHmZ/Z5NbQjoHVHixpWX6ejbkUDaU7VuQ=;
        b=WM9NwZXix8dflY7oZLLiimUYENKZ3lakUB6F4ZVObJoh0IsZkFdR7jLNan/GtrF/hZ
         6WtLbyUV8IBKocFtDxs45tpGj1LZJdxXKl/VXX/VT9GRXo2xnH79AjWrmowZ+zZ9LNAM
         yrlqhIaXRrsTYcOdPr2/VdThybw/S6mg67a1t8FszxJ0Vet91oOz1I0hOcbzEaCMB8Kt
         oVKwMhLFrqG571IS9tn032YjmbuUQqOSy3ntwE+5AnJ4djy61/Xb4XkNZx9Ns1BYDWRO
         MPRND07w4C4YJP3xLVdFx35tGMTT4NFrA7S1svS9I45LvuzCyD+g+j59fuLnzG3Z8BTi
         Ae8g==
X-Gm-Message-State: AOJu0YxV4AgCl6zMDos1x3+tQYnuxghLHO7ofdmyo18SS582Gt5bM82u
	XwWyXtVp1IjPLz03rxzsMV0=
X-Google-Smtp-Source: AGHT+IHJSsP+G8xwzCbhqRxELYFim76cG7KxRmQWj9AASSXVf0gXlQDLn+wC5l6TMdiRtV9QnIFltg==
X-Received: by 2002:a05:600c:468e:b0:408:3739:68fd with SMTP id p14-20020a05600c468e00b00408373968fdmr1901178wmo.6.1698398751572;
        Fri, 27 Oct 2023 02:25:51 -0700 (PDT)
Message-ID: <e4bf8f7a-9635-4315-b0e1-6dfb6c524631@gmail.com>
Date: Fri, 27 Oct 2023 10:25:49 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Reply-To: paul@xen.org
Subject: Re: [PATCH v3 22/28] net: add qemu_{configure,create}_nic_device(),
 qemu_find_nic_info()
Content-Language: en-US
To: David Woodhouse <dwmw2@infradead.org>, qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>, Hanna Reitz <hreitz@redhat.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Anthony Perard <anthony.perard@citrix.com>, Paul Durrant <paul@xen.org>,
 =?UTF-8?Q?Marc-Andr=C3=A9_Lureau?= <marcandre.lureau@redhat.com>,
 Paolo Bonzini <pbonzini@redhat.com>, "Michael S. Tsirkin" <mst@redhat.com>,
 Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
 Richard Henderson <richard.henderson@linaro.org>,
 Eduardo Habkost <eduardo@habkost.net>, Jason Wang <jasowang@redhat.com>,
 Marcelo Tosatti <mtosatti@redhat.com>, qemu-block@nongnu.org,
 xen-devel@lists.xenproject.org, kvm@vger.kernel.org,
 Bernhard Beschow <shentey@gmail.com>, Joel Upham <jupham125@gmail.com>
References: <20231025145042.627381-1-dwmw2@infradead.org>
 <20231025145042.627381-23-dwmw2@infradead.org>
From: "Durrant, Paul" <xadimgnik@gmail.com>
In-Reply-To: <20231025145042.627381-23-dwmw2@infradead.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 25/10/2023 15:50, David Woodhouse wrote:
> From: David Woodhouse <dwmw@amazon.co.uk>
> 
> Most code which directly accesses nd_table[] and nb_nics uses them for
> one of two things. Either "I have created a NIC device and I'd like a
> configuration for it", or "I will create a NIC device *if* there is a
> configuration for it".  With some variants on the theme around whether
> they actually *check* if the model specified in the configuration is
> the right one.
> 
> Provide functions which perform both of those, allowing platforms to
> be a little more consistent and as a step towards making nd_table[]
> and nb_nics private to the net code.
> 
> Also export the qemu_find_nic_info() helper, as some platforms have
> special cases they need to handle.
> 
> Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
> ---
>   include/net/net.h |  7 ++++++-
>   net/net.c         | 51 +++++++++++++++++++++++++++++++++++++++++++++++
>   2 files changed, 57 insertions(+), 1 deletion(-)
> 

Reviewed-by: Paul Durrant <paul@xen.org>



From xen-devel-bounces@lists.xenproject.org Fri Oct 27 09:31:45 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 27 Oct 2023 09:31:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624311.972778 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qwJBs-0005N4-0Y; Fri, 27 Oct 2023 09:31:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624311.972778; Fri, 27 Oct 2023 09: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 1qwJBr-0005Mx-Tn; Fri, 27 Oct 2023 09:31:39 +0000
Received: by outflank-mailman (input) for mailman id 624311;
 Fri, 27 Oct 2023 09:31: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=eEfT=GJ=gmail.com=xadimgnik@srs-se1.protection.inumbo.net>)
 id 1qwJBq-0005Mr-G6
 for xen-devel@lists.xenproject.org; Fri, 27 Oct 2023 09:31:38 +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 9fa51bb3-74ab-11ee-9b0e-b553b5be7939;
 Fri, 27 Oct 2023 11:31:36 +0200 (CEST)
Received: by mail-wm1-x32e.google.com with SMTP id
 5b1f17b1804b1-4081ccf69dcso17473365e9.0
 for <xen-devel@lists.xenproject.org>; Fri, 27 Oct 2023 02:31:36 -0700 (PDT)
Received: from [192.168.10.177] (54-240-197-235.amazon.com. [54.240.197.235])
 by smtp.gmail.com with ESMTPSA id
 x11-20020adfffcb000000b003258934a4bcsm1356830wrs.42.2023.10.27.02.31.34
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Fri, 27 Oct 2023 02:31: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: 9fa51bb3-74ab-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698399096; x=1699003896; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:from:references:cc:to
         :content-language:subject:reply-to:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=QTs9kivD/Mfn/UAvscBipfMJBB8Bih4r6SL3tafSaEI=;
        b=ATXhDJPgrSWGseGAj7xU2zZvg5Ywcp/6uPsLZg9m9Szf6IRtnzKobKdz87nr8jzZIg
         oYff3KME7NNiw7zDabDIl2Xxiqxss8/2QYoIDbB/6/WQmsvU31qX1wE5zjea5iy4Ynh/
         jRwAQTubcImie/9aodY6bKcBorI4XLFTPK7pvbo7NqW84YmNSY5pYGXFOGermq6Xmrv5
         yMEYSgiGx0rgfCmDQotP03XSQ6bkprxqbN5vmEj7Lb3lipN+dy7r6k62YqmrGwTycu+g
         lEMh/Y6yIO9BFLVIGVQxGBGh5YC0FU60WChFZCsp79baP2pIVfc+ndrZRbsz0oD2vDY9
         oN2w==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698399096; x=1699003896;
        h=content-transfer-encoding:in-reply-to:from:references:cc:to
         :content-language:subject:reply-to:user-agent:mime-version:date
         :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=QTs9kivD/Mfn/UAvscBipfMJBB8Bih4r6SL3tafSaEI=;
        b=jiBfZ7wYpXvi5Mhv7evjPExyotOsXalpD2wSrYBuSor7XuMFRHk8X0CTvGoyZgVKAO
         n80c26Z+QeeskAqNoOs7sDQHcDS/zKYYWX4XRfG+5j4LlkPWVigr/V3fTYgv3F2Lf0Kr
         l4C5sfVKTsoTxBDMdSrzgpF1DzYxriTujx5rCt5JbOStX3KxpjHUr8ToJNL53pHgbkfU
         FmW5aeOyg+JDa3jrMMo8hHnD8CVSQUBy2dZrURaOY9dcBj3a39JdNySychDWvl91SH/Z
         PbaGgg8F9FtuQZvLUXRl3HVXvvKpPqtSEy71ImgPoj7EWdLIVjKLciqmc5kfpJJQN1Lr
         UnFw==
X-Gm-Message-State: AOJu0Yy6ttzChTU3rtQx0fUOGy4Ae521TeSlUE1hJ336aGOvb9rSTIrq
	SFiOfDztfv1rYae3pnjFTjs=
X-Google-Smtp-Source: AGHT+IFMyYswcfqDBXUjHeiT0+hX+rLzRUjfI/ImjdtPGYKdKySflidFjyugVF6CSqz3WojMmjv6tQ==
X-Received: by 2002:a05:6000:80b:b0:32d:a045:cf71 with SMTP id bt11-20020a056000080b00b0032da045cf71mr3223387wrb.21.1698399095684;
        Fri, 27 Oct 2023 02:31:35 -0700 (PDT)
Message-ID: <7f5487e0-f794-4e58-8aa3-81ca3dc3f3db@gmail.com>
Date: Fri, 27 Oct 2023 10:31:33 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Reply-To: paul@xen.org
Subject: Re: [PATCH v3 23/28] net: report list of available models according
 to platform
Content-Language: en-US
To: David Woodhouse <dwmw2@infradead.org>, qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>, Hanna Reitz <hreitz@redhat.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Anthony Perard <anthony.perard@citrix.com>, Paul Durrant <paul@xen.org>,
 =?UTF-8?Q?Marc-Andr=C3=A9_Lureau?= <marcandre.lureau@redhat.com>,
 Paolo Bonzini <pbonzini@redhat.com>, "Michael S. Tsirkin" <mst@redhat.com>,
 Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
 Richard Henderson <richard.henderson@linaro.org>,
 Eduardo Habkost <eduardo@habkost.net>, Jason Wang <jasowang@redhat.com>,
 Marcelo Tosatti <mtosatti@redhat.com>, qemu-block@nongnu.org,
 xen-devel@lists.xenproject.org, kvm@vger.kernel.org,
 Bernhard Beschow <shentey@gmail.com>, Joel Upham <jupham125@gmail.com>
References: <20231025145042.627381-1-dwmw2@infradead.org>
 <20231025145042.627381-24-dwmw2@infradead.org>
From: "Durrant, Paul" <xadimgnik@gmail.com>
In-Reply-To: <20231025145042.627381-24-dwmw2@infradead.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 25/10/2023 15:50, David Woodhouse wrote:
> From: David Woodhouse <dwmw@amazon.co.uk>
> 
> By noting the models for which a configuration was requested, we can give
> the user an accurate list of which NIC models were actually available on
> the platform/configuration that was otherwise chosen.
> 
> Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
> ---
>   net/net.c | 94 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
>   1 file changed, 94 insertions(+)
> 

Reviewed-by: Paul Durrant <paul@xen.org>



From xen-devel-bounces@lists.xenproject.org Fri Oct 27 09:42:41 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 27 Oct 2023 09:42:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624315.972787 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qwJMO-0008Bj-Vk; Fri, 27 Oct 2023 09:42:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624315.972787; Fri, 27 Oct 2023 09:42: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 1qwJMO-0008Bc-T7; Fri, 27 Oct 2023 09:42:32 +0000
Received: by outflank-mailman (input) for mailman id 624315;
 Fri, 27 Oct 2023 09:42: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=eEfT=GJ=gmail.com=xadimgnik@srs-se1.protection.inumbo.net>)
 id 1qwJMN-0008BU-Hg
 for xen-devel@lists.xenproject.org; Fri, 27 Oct 2023 09:42:31 +0000
Received: from mail-lf1-x132.google.com (mail-lf1-x132.google.com
 [2a00:1450:4864:20::132])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 25afef24-74ad-11ee-98d6-6d05b1d4d9a1;
 Fri, 27 Oct 2023 11:42:30 +0200 (CEST)
Received: by mail-lf1-x132.google.com with SMTP id
 2adb3069b0e04-507cee17b00so2711823e87.2
 for <xen-devel@lists.xenproject.org>; Fri, 27 Oct 2023 02:42:30 -0700 (PDT)
Received: from [192.168.10.177] (54-240-197-235.amazon.com. [54.240.197.235])
 by smtp.gmail.com with ESMTPSA id
 du15-20020a05600c634f00b003fc16ee2864sm1170909wmb.48.2023.10.27.02.42.28
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Fri, 27 Oct 2023 02: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: 25afef24-74ad-11ee-98d6-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698399750; x=1699004550; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:from:references:cc:to
         :content-language:subject:reply-to:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=Kiz2KMdg7YL05gR8LgSt7smgQdVxoWMShyrXxPJfs9s=;
        b=jJ2MbQJjd3S+H0ebH64QsgxyBHnI/5mdZYjwuE8BGk43CsH+tx97dNmJ4tRmfYYQfg
         +GUXtKZ1Lr+SBXte3fv5tmZv32+ZBmmTW9Qccp418l1TGwfbieulgCT6bddkccFyozgP
         bFwrnSieG/SIIRQ0J1eImHvGrdHL+nz8P5+z8V2w7w0b+RYzlXoMUvlpcQ+zFhhXmEwW
         BTGonpwWO7UKHqI8nvEwg9zlXvTYBGfqmYKWhJuzvFtXvaOefi6fmAh6urnTcRPcXLwT
         VTfCmLimBPmhHIDbLJD/Gih21kX8V0WdLF3i5RhUbiqjMlPZO5Fnf7j8HHGO9gMvUbiZ
         9CmA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698399750; x=1699004550;
        h=content-transfer-encoding:in-reply-to:from:references:cc:to
         :content-language:subject:reply-to:user-agent:mime-version:date
         :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=Kiz2KMdg7YL05gR8LgSt7smgQdVxoWMShyrXxPJfs9s=;
        b=qhpTUCl6xBNE4U/38+OocdDc0WrZpjPSiMpfyEM2aWGbDa7eKb3FfOTKanEDj5eKU6
         Hj9lGBUJ2tnndyESvQaZcAkSwnYCvrw240S5Rh4GYgYOoNPA36bK2F5ZerrGl6WJznt9
         NN+um4KLBvdue6vlRh84H74vFtfkKhtwSpixhkporWBYzflc8vy4E84u1mAED50rUG3M
         I6AenBpCrQaUnclViVBO3JoXewSCCIeQVWKtUghuYSNGX7kJfUe87+J8V8zRv1aWoHah
         jm7pWsUclCnkjs0M+RZpZwtaVDfZb9PXimaqTZHRey6GxZDgeGk4wfCu9BHQGeD8LlNf
         rH+w==
X-Gm-Message-State: AOJu0YxL3FBq3fVL+GN1rgfyHR7mw3uP+QeUpJBKcVYrbEcxSJU5ypDF
	qxwEpGzZ2G69VYkbnl/6GLc=
X-Google-Smtp-Source: AGHT+IGhjfQTzfpSI0jSZ3Vaoz7HQMUUZYv6yz0Ojq0M+dEBGy0psEQV6EoLJB1bLce08/1kjOIo9w==
X-Received: by 2002:a05:6512:406:b0:508:1eb0:3d4a with SMTP id u6-20020a056512040600b005081eb03d4amr1422321lfk.22.1698399749812;
        Fri, 27 Oct 2023 02:42:29 -0700 (PDT)
Message-ID: <1ac8c57c-d154-4176-802c-505e4d785a5e@gmail.com>
Date: Fri, 27 Oct 2023 10:42:27 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Reply-To: paul@xen.org
Subject: Re: [PATCH v3 24/28] net: add qemu_create_nic_bus_devices()
Content-Language: en-US
To: David Woodhouse <dwmw2@infradead.org>, qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>, Hanna Reitz <hreitz@redhat.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Anthony Perard <anthony.perard@citrix.com>, Paul Durrant <paul@xen.org>,
 =?UTF-8?Q?Marc-Andr=C3=A9_Lureau?= <marcandre.lureau@redhat.com>,
 Paolo Bonzini <pbonzini@redhat.com>, "Michael S. Tsirkin" <mst@redhat.com>,
 Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
 Richard Henderson <richard.henderson@linaro.org>,
 Eduardo Habkost <eduardo@habkost.net>, Jason Wang <jasowang@redhat.com>,
 Marcelo Tosatti <mtosatti@redhat.com>, qemu-block@nongnu.org,
 xen-devel@lists.xenproject.org, kvm@vger.kernel.org,
 Bernhard Beschow <shentey@gmail.com>, Joel Upham <jupham125@gmail.com>
References: <20231025145042.627381-1-dwmw2@infradead.org>
 <20231025145042.627381-25-dwmw2@infradead.org>
From: "Durrant, Paul" <xadimgnik@gmail.com>
In-Reply-To: <20231025145042.627381-25-dwmw2@infradead.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

On 25/10/2023 15:50, David Woodhouse wrote:
> From: David Woodhouse <dwmw@amazon.co.uk>
> 
> This will instantiate any NICs which live on a given bus type. Each bus
> is allowed *one* substitution (for PCI it's virtio → virtio-net-pci, for
> Xen it's xen → xen-net-device; no point in overengineering it unless we
> actually want more).
> 
> Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
> ---
>   include/net/net.h |  3 +++
>   net/net.c         | 53 +++++++++++++++++++++++++++++++++++++++++++++++
>   2 files changed, 56 insertions(+)
> 

Reviewed-by: Paul Durrant <paul@xen.org>



From xen-devel-bounces@lists.xenproject.org Fri Oct 27 09:47:00 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 27 Oct 2023 09:47:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624319.972797 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qwJQa-0001fN-G3; Fri, 27 Oct 2023 09:46:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624319.972797; Fri, 27 Oct 2023 09: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 1qwJQa-0001fG-Cw; Fri, 27 Oct 2023 09:46:52 +0000
Received: by outflank-mailman (input) for mailman id 624319;
 Fri, 27 Oct 2023 09:46: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=eEfT=GJ=gmail.com=xadimgnik@srs-se1.protection.inumbo.net>)
 id 1qwJQa-0001fA-04
 for xen-devel@lists.xenproject.org; Fri, 27 Oct 2023 09:46:52 +0000
Received: from mail-wr1-x434.google.com (mail-wr1-x434.google.com
 [2a00:1450:4864:20::434])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id c042a7c5-74ad-11ee-9b0e-b553b5be7939;
 Fri, 27 Oct 2023 11:46:50 +0200 (CEST)
Received: by mail-wr1-x434.google.com with SMTP id
 ffacd0b85a97d-32d895584f1so1291498f8f.1
 for <xen-devel@lists.xenproject.org>; Fri, 27 Oct 2023 02:46:50 -0700 (PDT)
Received: from [192.168.10.177] (54-240-197-235.amazon.com. [54.240.197.235])
 by smtp.gmail.com with ESMTPSA id
 e9-20020a5d5949000000b00326f5d0ce0asm1389222wri.21.2023.10.27.02.46.48
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Fri, 27 Oct 2023 02:46: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: c042a7c5-74ad-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698400009; x=1699004809; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:from:references:cc:to
         :content-language:subject:reply-to:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=jzLwa1GntXahp5+i4Iu7OMe0oRp7S0Pb5ddkQlqpbTs=;
        b=ORVlg30SiJho88o4kbi7H8axlhkWyjCgDcMjH6DvwB2fdOThqw9h7l+kf2yOzFj3dY
         MwXNBESUX7SXJUt1lEa21Ej7ilp2sDxIKEz/n2TxNxJ6J226IeOi14HC5Zc+9+BQYDvZ
         r//677E+reOTJihWkUzdJyxQ5wLK5j2WXs1WwiKGvLOzWeyxkx46CV+kP82k+EeHNCKo
         6D6ezDQfmPZSyyCMUr0e2gPPtZ29KCqW31P6OYrAsOnLcdyzp5qYHCWlH8gy8eAPW/Bi
         NWCAbKUACaUHW5V+zs6z/UE0poiUP3+yraQv5qJ3pdyCFpBL/pe4UgfDsCj+MJrdKHq2
         456w==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698400009; x=1699004809;
        h=content-transfer-encoding:in-reply-to:from:references:cc:to
         :content-language:subject:reply-to:user-agent:mime-version:date
         :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=jzLwa1GntXahp5+i4Iu7OMe0oRp7S0Pb5ddkQlqpbTs=;
        b=CfCwf9Ug/bAOEYYxZwpxhBzz7JWmyw8ThQo6KisOv1LJdQYdFtuLn5DCvBU4qjGQh+
         AHbsS8mfZ/rpWIcx9dBAIi/h04kOxqAMYObhC5ipMswQ7OqjLmDbP1oy+ET2A5ku/j8x
         zuQTmHGaTbmvtmHmbJpP9mb0qfEvRqS/OaCpELxgoPMRDa9bYig1FA6nEsrDwi3epm1D
         rsz5cmgVHQsLBSHtVuToVWZqKJQqFW4Gq30/Hh0TUqaqkrXIrhbtvBDtiozsVC5ZhdQK
         aem2r2oTYBibdZkiFk/rSHng3RxJ09JdmX48CaftcOND/C7rB7OBJ7k2f7YexIMY7EoZ
         f2mw==
X-Gm-Message-State: AOJu0Ywpl1Pat5tfqXcZz7tiZ/5aRYejKjh4S0mnhplh6/XiI9gv0blC
	45S3PjglDXIZjMYUJ3MOjLc=
X-Google-Smtp-Source: AGHT+IF+xd8cuMtFJ/cywAMdwJALH04PvtMGn/mtI5e9KZNkVRA1ttigVPEIA2v+rqX3cz0pRpds5w==
X-Received: by 2002:a5d:68c1:0:b0:32d:a022:8559 with SMTP id p1-20020a5d68c1000000b0032da0228559mr1762750wrw.47.1698400009412;
        Fri, 27 Oct 2023 02:46:49 -0700 (PDT)
Message-ID: <b6cb24e3-d736-4951-b2dd-2a90562fd768@gmail.com>
Date: Fri, 27 Oct 2023 10:46:47 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Reply-To: paul@xen.org
Subject: Re: [PATCH v3 25/28] hw/pci: add pci_init_nic_devices(),
 pci_init_nic_in_slot()
Content-Language: en-US
To: David Woodhouse <dwmw2@infradead.org>, qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>, Hanna Reitz <hreitz@redhat.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Anthony Perard <anthony.perard@citrix.com>, Paul Durrant <paul@xen.org>,
 =?UTF-8?Q?Marc-Andr=C3=A9_Lureau?= <marcandre.lureau@redhat.com>,
 Paolo Bonzini <pbonzini@redhat.com>, "Michael S. Tsirkin" <mst@redhat.com>,
 Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
 Richard Henderson <richard.henderson@linaro.org>,
 Eduardo Habkost <eduardo@habkost.net>, Jason Wang <jasowang@redhat.com>,
 Marcelo Tosatti <mtosatti@redhat.com>, qemu-block@nongnu.org,
 xen-devel@lists.xenproject.org, kvm@vger.kernel.org,
 Bernhard Beschow <shentey@gmail.com>, Joel Upham <jupham125@gmail.com>
References: <20231025145042.627381-1-dwmw2@infradead.org>
 <20231025145042.627381-26-dwmw2@infradead.org>
From: "Durrant, Paul" <xadimgnik@gmail.com>
In-Reply-To: <20231025145042.627381-26-dwmw2@infradead.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 25/10/2023 15:50, David Woodhouse wrote:
> From: David Woodhouse <dwmw@amazon.co.uk>
> 
> The loop over nd_table[] to add PCI NICs is repeated in quite a few
> places. Add a helper function to do it.
> 
> Some platforms also try to instantiate a specific model in a specific
> slot, to match the real hardware. Add pci_init_nic_in_slot() for that
> purpose.
> 
> Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
> ---
>   hw/pci/pci.c         | 45 ++++++++++++++++++++++++++++++++++++++++++++
>   include/hw/pci/pci.h |  4 +++-
>   2 files changed, 48 insertions(+), 1 deletion(-)
> 

Reviewed-by: Paul Durrant <paul@xen.org>



From xen-devel-bounces@lists.xenproject.org Fri Oct 27 09:48:23 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 27 Oct 2023 09:48:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624323.972808 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qwJRy-0002Hs-Tm; Fri, 27 Oct 2023 09:48:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624323.972808; Fri, 27 Oct 2023 09:48: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 1qwJRy-0002Hl-Qe; Fri, 27 Oct 2023 09:48:18 +0000
Received: by outflank-mailman (input) for mailman id 624323;
 Fri, 27 Oct 2023 09:48: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=eEfT=GJ=gmail.com=xadimgnik@srs-se1.protection.inumbo.net>)
 id 1qwJRx-0002Hf-C0
 for xen-devel@lists.xenproject.org; Fri, 27 Oct 2023 09:48:17 +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 f31731bb-74ad-11ee-9b0e-b553b5be7939;
 Fri, 27 Oct 2023 11:48:15 +0200 (CEST)
Received: by mail-wr1-x435.google.com with SMTP id
 ffacd0b85a97d-32d849cc152so1290048f8f.1
 for <xen-devel@lists.xenproject.org>; Fri, 27 Oct 2023 02:48:15 -0700 (PDT)
Received: from [192.168.10.177] (54-240-197-235.amazon.com. [54.240.197.235])
 by smtp.gmail.com with ESMTPSA id
 e9-20020a5d5949000000b00326f5d0ce0asm1389222wri.21.2023.10.27.02.48.13
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Fri, 27 Oct 2023 02:48: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: f31731bb-74ad-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698400095; x=1699004895; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:from:references:cc:to
         :content-language:subject:reply-to:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=30VwI2HQrqCL5YyhF8qmfbeeHlzGfWBEtfc4fCXo8Fs=;
        b=ghvQJP/cSukx4GztB+T6CP9VyAYjMG5s2K72XcLvs5GNjS5WMn5DNTNAbPhH5y5HFT
         SrPqyo3pNcC8pC7gkA+NLEE6SXQ9e8dQ9rZ6u24EnLwt8VmkzFxIXjHVUcLHmWl01Qqb
         TJI8G975AhJmyuzcY9WQMtlceVoHGTBVduTYLV+Jc2KR2GdxXJMAa3YQsUy1RIK3sHuK
         R28LYqYHuqpM36mBfw4HWmR6zOXzyCjGdUN99nHOKLMWyVeVc9vayWVgyyZv87kSPPwM
         64Rdmchhj8A5/H48Jy4eLrz8Cfvtt0dyIAKmZG6mDu8W2x49mynNlWpiDKjMXFgl5pDi
         aZjQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698400095; x=1699004895;
        h=content-transfer-encoding:in-reply-to:from:references:cc:to
         :content-language:subject:reply-to:user-agent:mime-version:date
         :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=30VwI2HQrqCL5YyhF8qmfbeeHlzGfWBEtfc4fCXo8Fs=;
        b=sFYYsVRlzpO2zYVA7kmjCa9aLDXr88XSL2G5TNaoiNptbi/PFLXWvrwsAQeb3hoZk6
         J8LuohhS/lkg/XV5ajTckWcNgOlbrUrZth9KcfojdOPs+VWL5KfTwrxBN39trs/HcqWn
         9jZCdTE1wUVoUGIXnJQQXgIS2ZDMNUQ1AseZXScosCHxO4+BZmSF3IqUqfxUfOUSP2vu
         DtplF82LwuUk8wuxWi69/wFq/Fnqu1YJKV8i2o2IE7Hu1TkcIGQItAa526li8xeYc9VA
         mRaeTuEN1QJpibr99aaoAlX4sDvcH2pez569Rz3Vyx+5qx+tE530Yq/Up4lT/CvLnCPd
         fe5A==
X-Gm-Message-State: AOJu0YztekjQCrwEckAEjxU0z0tnVPWoaccsBMAfn0x2ctkcyUjvtFRY
	OyKaWMWPDd0lb6MFQ5ZnNKM=
X-Google-Smtp-Source: AGHT+IE4PpSyRDRjuLCwnnRqMs4Ez7+O/3yvQMMGSADruwPllbL3a4A8idM4xcMnD9poi1dGJZ1Jjg==
X-Received: by 2002:a05:6000:1361:b0:32d:9b80:e2c6 with SMTP id q1-20020a056000136100b0032d9b80e2c6mr1636403wrz.26.1698400094647;
        Fri, 27 Oct 2023 02:48:14 -0700 (PDT)
Message-ID: <322697f1-c4fe-40ab-88ce-f99f9d1fe4d6@gmail.com>
Date: Fri, 27 Oct 2023 10:48:13 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Reply-To: paul@xen.org
Subject: Re: [PATCH v3 26/28] hw/i386/pc: use qemu_get_nic_info() and
 pci_init_nic_devices()
Content-Language: en-US
To: David Woodhouse <dwmw2@infradead.org>, qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>, Hanna Reitz <hreitz@redhat.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Anthony Perard <anthony.perard@citrix.com>, Paul Durrant <paul@xen.org>,
 =?UTF-8?Q?Marc-Andr=C3=A9_Lureau?= <marcandre.lureau@redhat.com>,
 Paolo Bonzini <pbonzini@redhat.com>, "Michael S. Tsirkin" <mst@redhat.com>,
 Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
 Richard Henderson <richard.henderson@linaro.org>,
 Eduardo Habkost <eduardo@habkost.net>, Jason Wang <jasowang@redhat.com>,
 Marcelo Tosatti <mtosatti@redhat.com>, qemu-block@nongnu.org,
 xen-devel@lists.xenproject.org, kvm@vger.kernel.org,
 Bernhard Beschow <shentey@gmail.com>, Joel Upham <jupham125@gmail.com>
References: <20231025145042.627381-1-dwmw2@infradead.org>
 <20231025145042.627381-27-dwmw2@infradead.org>
From: "Durrant, Paul" <xadimgnik@gmail.com>
In-Reply-To: <20231025145042.627381-27-dwmw2@infradead.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 25/10/2023 15:50, David Woodhouse wrote:
> From: David Woodhouse <dwmw@amazon.co.uk>
> 
> Eliminate direct access to nd_table[] and nb_nics by processing the the
> ISA NICs first and then calling pci_init_nic_devices() for the test.
> 
> It's important to do this *before* the subsequent patch which registers
> the Xen PV network devices, because the code being remove here didn't
> check whether nd->instantiated was already set before using each entry.
> 
> Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
> ---
>   hw/i386/pc.c                | 21 +++++++++++----------
>   include/hw/net/ne2000-isa.h |  2 --
>   2 files changed, 11 insertions(+), 12 deletions(-)
> 

Reviewed-by: Paul Durrant <paul@xen.org>



From xen-devel-bounces@lists.xenproject.org Fri Oct 27 09:52:23 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 27 Oct 2023 09:52:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624328.972818 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qwJVu-0003j2-Cf; Fri, 27 Oct 2023 09:52:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624328.972818; Fri, 27 Oct 2023 09:52: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 1qwJVu-0003iv-9u; Fri, 27 Oct 2023 09:52:22 +0000
Received: by outflank-mailman (input) for mailman id 624328;
 Fri, 27 Oct 2023 09:52: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=eEfT=GJ=gmail.com=xadimgnik@srs-se1.protection.inumbo.net>)
 id 1qwJVt-0003in-5m
 for xen-devel@lists.xenproject.org; Fri, 27 Oct 2023 09:52:21 +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 851af42d-74ae-11ee-98d6-6d05b1d4d9a1;
 Fri, 27 Oct 2023 11:52:20 +0200 (CEST)
Received: by mail-wm1-x32d.google.com with SMTP id
 5b1f17b1804b1-4084de32db5so15391515e9.0
 for <xen-devel@lists.xenproject.org>; Fri, 27 Oct 2023 02:52:20 -0700 (PDT)
Received: from [192.168.10.177] (54-240-197-235.amazon.com. [54.240.197.235])
 by smtp.gmail.com with ESMTPSA id
 bd6-20020a05600c1f0600b003fee53feab5sm1212290wmb.10.2023.10.27.02.52.17
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Fri, 27 Oct 2023 02:52: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: 851af42d-74ae-11ee-98d6-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698400339; x=1699005139; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:from:references:cc:to
         :content-language:subject:reply-to:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=2yiE3kmnMlzeuIC0wQ9aeOyHGBx7Hm50hNBXLvo1oLI=;
        b=E9nwJGA8XMHkocVFPjQDyUQNAb6OYL0tDHDayJ67KBUNnYe8dibPp27RMm3SkU2Mbo
         8vy/j6oVQ/v1ATfG8xgKMpQq2Fjhe2YJYwa90Rnmx+XHcVZ8Prpq/rBd5/fXBh6CQZc1
         g5cgo9w0Qw6/DIofMjHT1kNCzPOVmmVilzEiSZU1fOb70319c/xxh1vMt0i5t5E8kVN4
         tCD+70+kNtZxoauwRtAikDPTAnAPvIB4TQCD906SS+07z3wXCd9/ZYaLSP1ZIvOQ3Y6g
         DhYdXcO0T3k7a0RvJMexwWL2PWuBs169ndE4QkD81h27HFAWyvyYXRvpzZXlkzIk6U6X
         Ny5w==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698400339; x=1699005139;
        h=content-transfer-encoding:in-reply-to:from:references:cc:to
         :content-language:subject:reply-to:user-agent:mime-version:date
         :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=2yiE3kmnMlzeuIC0wQ9aeOyHGBx7Hm50hNBXLvo1oLI=;
        b=ZAVBIfwn4jybSwVmAfx00F1XlSJBzqbsk9gRMVWWMgbr4IH4upzl6i90lN+fLIEEhd
         Pn9aJ8pKRWBndj9NVVX8AO+jTSlSNZRf5f8vFSP+Ka/PvknOw7Qhe3gGD7UecWId0R46
         qXu+mYEAZ/jZNrhtCbuWx/8LzVpcL0avmSsr9hxDJuU0sBs1Xf4Bs6if2JnVJj+bAjx1
         ij3rfTb18UvoBSPw2nsHEFmHtfu8Zk86AITE4h7iOlViIgJaZ0oM3hCRoRjh1n8GL6x4
         f2Dgt0QM/RMEqCXE0VTQ/505xreV8Vrbl1m1lt8jfZbWf0TvSURIONqFo3h4kofFPgJP
         1kEA==
X-Gm-Message-State: AOJu0YxGbAdbrZPn2kgRULTwHcq9sv11w2irxpg3s0VGhD202aKCII6E
	cQB1JjBeNTdCfp3BnmVKbww=
X-Google-Smtp-Source: AGHT+IEuLWOC6r1FV8oQb3wkYtxJ/Wfx1Om4s2yzSuMliOYSNXtiWemTUbczcZfVgloepcRrPb3iTw==
X-Received: by 2002:a05:600c:4ecd:b0:403:31a:77b9 with SMTP id g13-20020a05600c4ecd00b00403031a77b9mr1829515wmq.37.1698400339330;
        Fri, 27 Oct 2023 02:52:19 -0700 (PDT)
Message-ID: <88aad170-24f2-4ec6-b43c-ac87dde81255@gmail.com>
Date: Fri, 27 Oct 2023 10:52:17 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Reply-To: paul@xen.org
Subject: Re: [PATCH v3 27/28] hw/xen: use qemu_create_nic_bus_devices() to
 instantiate Xen NICs
Content-Language: en-US
To: David Woodhouse <dwmw2@infradead.org>, qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>, Hanna Reitz <hreitz@redhat.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Anthony Perard <anthony.perard@citrix.com>, Paul Durrant <paul@xen.org>,
 =?UTF-8?Q?Marc-Andr=C3=A9_Lureau?= <marcandre.lureau@redhat.com>,
 Paolo Bonzini <pbonzini@redhat.com>, "Michael S. Tsirkin" <mst@redhat.com>,
 Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
 Richard Henderson <richard.henderson@linaro.org>,
 Eduardo Habkost <eduardo@habkost.net>, Jason Wang <jasowang@redhat.com>,
 Marcelo Tosatti <mtosatti@redhat.com>, qemu-block@nongnu.org,
 xen-devel@lists.xenproject.org, kvm@vger.kernel.org,
 Bernhard Beschow <shentey@gmail.com>, Joel Upham <jupham125@gmail.com>
References: <20231025145042.627381-1-dwmw2@infradead.org>
 <20231025145042.627381-28-dwmw2@infradead.org>
From: "Durrant, Paul" <xadimgnik@gmail.com>
In-Reply-To: <20231025145042.627381-28-dwmw2@infradead.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 25/10/2023 15:50, David Woodhouse wrote:
> From: David Woodhouse <dwmw@amazon.co.uk>
> 
> When instantiating XenBus itself, for each NIC which is configured with
> either the model unspecified, or set to to "xen" or "xen-net-device",
> create a corresponding xen-net-device for it.
> 
> Now we can launch emulated Xen guests with '-nic user', and this fixes
> the setup for Xen PV guests, which was previously broken in various
> ways and never actually managed to peer with the netdev.
> 
> Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
> ---
>   hw/xen/xen-bus.c                    |  4 ++++
>   hw/xen/xen_devconfig.c              | 25 -------------------------
>   hw/xenpv/xen_machine_pv.c           |  9 ---------
>   include/hw/xen/xen-legacy-backend.h |  1 -
>   4 files changed, 4 insertions(+), 35 deletions(-)
> 

Yay! I've been wanting this for years but ETIME.

Reviewed-by: Paul Durrant <paul@xen.org>




From xen-devel-bounces@lists.xenproject.org Fri Oct 27 10:25:30 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 27 Oct 2023 10:25:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624332.972828 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qwK1p-0004Od-Qi; Fri, 27 Oct 2023 10:25:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624332.972828; Fri, 27 Oct 2023 10:25: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 1qwK1p-0004OW-O5; Fri, 27 Oct 2023 10:25:21 +0000
Received: by outflank-mailman (input) for mailman id 624332;
 Fri, 27 Oct 2023 10:25: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=AA2W=GJ=casper.srs.infradead.org=BATV+92d2995e4a7c3d3365be+7369+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qwK1n-0004NC-3k
 for xen-devel@lists.xenproject.org; Fri, 27 Oct 2023 10:25:20 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 1c4027dc-74b3-11ee-9b0e-b553b5be7939;
 Fri, 27 Oct 2023 12:25:14 +0200 (CEST)
Received: from [2001:8b0:10b:5:a059:f7a9:933a:2236]
 (helo=u3832b3a9db3152.ant.amazon.com)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qwK1d-002s8D-IJ; Fri, 27 Oct 2023 10:25: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: 1c4027dc-74b3-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=MIME-Version:Content-Type:References:
	In-Reply-To:Date:Cc:To:From:Subject:Message-ID:Sender:Reply-To:
	Content-Transfer-Encoding:Content-ID:Content-Description;
	bh=bjDgEQIvSDvOlYUvUIOtNjrwwS43zDdeaGfViAKqfDo=; b=TRQ6LKCVEU2oENLTpxJYhEJhOe
	VbWY5sCPWyEU30lVNFynsWRV0LqfGfInXHT02qx5M9FNq6qZKkOyqf/NFbXkPAyt7cx7eQTIIwovg
	/yjCKXHFGYvl6/EMI7KbE4XheFc0OmMFl5mRscPyyAK5M9J1gngdfry4V8Q9Yt8vq/u5uuzJdbW5L
	S3t++PkirgODgbbFeJVfLB4zUw8EwO7PLBclEydtxmBwY+RvrhkQrFL34fQ3nxRQD6oUfHYlMH6/f
	6ut9GXE51VSkY7gn74fySZgE1HY1KhNpIkqUm/JeMp5O6lVEhpncbiQQ9pttCdwz2OERoRPzA/nXT
	LjGITn3Q==;
Message-ID: <b6458e730fd861243f534e33a48a857122e77ed5.camel@infradead.org>
Subject: Re: [PATCH v3 13/28] hw/xen: automatically assign device index to
 block devices
From: David Woodhouse <dwmw2@infradead.org>
To: paul@xen.org, qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>, Hanna Reitz <hreitz@redhat.com>, Stefano
 Stabellini <sstabellini@kernel.org>, Anthony Perard
 <anthony.perard@citrix.com>,  =?ISO-8859-1?Q?Marc-Andr=E9?= Lureau
 <marcandre.lureau@redhat.com>, Paolo Bonzini <pbonzini@redhat.com>,
 "Michael S. Tsirkin" <mst@redhat.com>, Marcel Apfelbaum
 <marcel.apfelbaum@gmail.com>, Richard Henderson
 <richard.henderson@linaro.org>, Eduardo Habkost <eduardo@habkost.net>,
 Jason Wang <jasowang@redhat.com>, Marcelo Tosatti <mtosatti@redhat.com>,
 qemu-block@nongnu.org,  xen-devel@lists.xenproject.org,
 kvm@vger.kernel.org, Bernhard Beschow <shentey@gmail.com>, Joel Upham
 <jupham125@gmail.com>
Date: Fri, 27 Oct 2023 11:25:08 +0100
In-Reply-To: <9fb67e52-f262-4cf4-91c2-a42411ba21c4@gmail.com>
References: <20231025145042.627381-1-dwmw2@infradead.org>
	 <20231025145042.627381-14-dwmw2@infradead.org>
	 <74e54da5-9c35-485d-a13c-efac3f81dec2@gmail.com>
	 <f72e2e7feed3ecf17af8ab8442c359eea329ef17.camel@infradead.org>
	 <9fb67e52-f262-4cf4-91c2-a42411ba21c4@gmail.com>
Content-Type: multipart/signed; micalg="sha-256"; protocol="application/pkcs7-signature";
	boundary="=-VAZZmWjpnP+rAAS6AMba"
User-Agent: Evolution 3.44.4-0ubuntu2 
MIME-Version: 1.0
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html


--=-VAZZmWjpnP+rAAS6AMba
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Fri, 2023-10-27 at 10:01 +0100, Durrant, Paul wrote:
>=20
> This code is allocating a name automatically so I think the onus is on=
=20
> it not create a needless clash which is likely to have unpredictable=20
> results depending on what the guest is. Just avoid any aliasing in the=
=20
> first place and things will be fine.


Yeah, fair enough. In which case I'll probably switch to using
xs_directory() and then processing those results to find a free slot,
instead of going out to XenStore for every existence check.

This isn't exactly fast path and I'm prepared to tolerate a little bit
of O(n=C2=B2), but only within reason :)

--=-VAZZmWjpnP+rAAS6AMba
Content-Type: application/pkcs7-signature; name="smime.p7s"
Content-Disposition: attachment; filename="smime.p7s"
Content-Transfer-Encoding: base64

MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgEFADCABgkqhkiG9w0BBwEAAKCCEkQw
ggYQMIID+KADAgECAhBNlCwQ1DvglAnFgS06KwZPMA0GCSqGSIb3DQEBDAUAMIGIMQswCQYDVQQG
EwJVUzETMBEGA1UECBMKTmV3IEplcnNleTEUMBIGA1UEBxMLSmVyc2V5IENpdHkxHjAcBgNVBAoT
FVRoZSBVU0VSVFJVU1QgTmV0d29yazEuMCwGA1UEAxMlVVNFUlRydXN0IFJTQSBDZXJ0aWZpY2F0
aW9uIEF1dGhvcml0eTAeFw0xODExMDIwMDAwMDBaFw0zMDEyMzEyMzU5NTlaMIGWMQswCQYDVQQG
EwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYD
VQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50
aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC
AQEAyjztlApB/975Rrno1jvm2pK/KxBOqhq8gr2+JhwpKirSzZxQgT9tlC7zl6hn1fXjSo5MqXUf
ItMltrMaXqcESJuK8dtK56NCSrq4iDKaKq9NxOXFmqXX2zN8HHGjQ2b2Xv0v1L5Nk1MQPKA19xeW
QcpGEGFUUd0kN+oHox+L9aV1rjfNiCj3bJk6kJaOPabPi2503nn/ITX5e8WfPnGw4VuZ79Khj1YB
rf24k5Ee1sLTHsLtpiK9OjG4iQRBdq6Z/TlVx/hGAez5h36bBJMxqdHLpdwIUkTqT8se3ed0PewD
ch/8kHPo5fZl5u1B0ecpq/sDN/5sCG52Ds+QU5O5EwIDAQABo4IBZDCCAWAwHwYDVR0jBBgwFoAU
U3m/WqorSs9UgOHYm8Cd8rIDZsswHQYDVR0OBBYEFAnA8vwL2pTbX/4r36iZQs/J4K0AMA4GA1Ud
DwEB/wQEAwIBhjASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEF
BQcDBDARBgNVHSAECjAIMAYGBFUdIAAwUAYDVR0fBEkwRzBFoEOgQYY/aHR0cDovL2NybC51c2Vy
dHJ1c3QuY29tL1VTRVJUcnVzdFJTQUNlcnRpZmljYXRpb25BdXRob3JpdHkuY3JsMHYGCCsGAQUF
BwEBBGowaDA/BggrBgEFBQcwAoYzaHR0cDovL2NydC51c2VydHJ1c3QuY29tL1VTRVJUcnVzdFJT
QUFkZFRydXN0Q0EuY3J0MCUGCCsGAQUFBzABhhlodHRwOi8vb2NzcC51c2VydHJ1c3QuY29tMA0G
CSqGSIb3DQEBDAUAA4ICAQBBRHUAqznCFfXejpVtMnFojADdF9d6HBA4kMjjsb0XMZHztuOCtKF+
xswhh2GqkW5JQrM8zVlU+A2VP72Ky2nlRA1GwmIPgou74TZ/XTarHG8zdMSgaDrkVYzz1g3nIVO9
IHk96VwsacIvBF8JfqIs+8aWH2PfSUrNxP6Ys7U0sZYx4rXD6+cqFq/ZW5BUfClN/rhk2ddQXyn7
kkmka2RQb9d90nmNHdgKrwfQ49mQ2hWQNDkJJIXwKjYA6VUR/fZUFeCUisdDe/0ABLTI+jheXUV1
eoYV7lNwNBKpeHdNuO6Aacb533JlfeUHxvBz9OfYWUiXu09sMAviM11Q0DuMZ5760CdO2VnpsXP4
KxaYIhvqPqUMWqRdWyn7crItNkZeroXaecG03i3mM7dkiPaCkgocBg0EBYsbZDZ8bsG3a08LwEsL
1Ygz3SBsyECa0waq4hOf/Z85F2w2ZpXfP+w8q4ifwO90SGZZV+HR/Jh6rEaVPDRF/CEGVqR1hiuQ
OZ1YL5ezMTX0ZSLwrymUE0pwi/KDaiYB15uswgeIAcA6JzPFf9pLkAFFWs1QNyN++niFhsM47qod
x/PL+5jR87myx5uYdBEQkkDc+lKB1Wct6ucXqm2EmsaQ0M95QjTmy+rDWjkDYdw3Ms6mSWE3Bn7i
5ZgtwCLXgAIe5W8mybM2JzCCBhQwggT8oAMCAQICEQDGvhmWZ0DEAx0oURL6O6l+MA0GCSqGSIb3
DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYD
VQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28g
UlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMB4XDTIyMDEwNzAw
MDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJARYTZHdtdzJAaW5mcmFkZWFkLm9y
ZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3GpC2bomUqk+91wLYBzDMcCj5C9m6
oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZHh7htyAkWYVoFsFPrwHounto8xTsy
SSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT9YgcBqKCo65pTFmOnR/VVbjJk4K2
xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNjP+qDrh0db7PAjO1D4d5ftfrsf+kd
RR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy2U+eITZ5LLE5s45mX2oPFknWqxBo
bQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3BgBEmfsYWlBXO8rVXfvPgLs32VdV
NZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/7auNVRmPB3v5SWEsH8xi4Bez2V9U
KxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmdlFYhAflWKQ03Ufiu8t3iBE3VJbc2
5oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9aelIl6vtbhMA+l0nfrsORMa4kobqQ5
C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMBAAGjggHMMIIByDAfBgNVHSMEGDAW
gBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeDMcimo0oz8o1R1Nver3ZVpSkwDgYD
VR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYwFAYIKwYBBQUHAwQGCCsGAQUFBwMC
MEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYBBQUHAgEWF2h0dHBzOi8vc2VjdGln
by5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9jcmwuc2VjdGlnby5jb20vU2VjdGln
b1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1haWxDQS5jcmwwgYoGCCsGAQUFBwEB
BH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdvLmNvbS9TZWN0aWdvUlNBQ2xpZW50
QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAjBggrBgEFBQcwAYYXaHR0cDovL29j
c3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5mcmFkZWFkLm9yZzANBgkqhkiG9w0B
AQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQvQ/fzPXmtR9t54rpmI2TfyvcKgOXp
qa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvIlSPrzIB4Z2wyIGQpaPLlYflrrVFK
v9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9ChWFfgSXvrWDZspnU3Gjw/rMHrGnql
Htlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0whpBtXdyDjzBtQTaZJ7zTT/vlehc/
tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9IzCCBhQwggT8oAMCAQICEQDGvhmW
Z0DEAx0oURL6O6l+MA0GCSqGSIb3DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3Jl
YXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0
ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJl
IEVtYWlsIENBMB4XDTIyMDEwNzAwMDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJ
ARYTZHdtdzJAaW5mcmFkZWFkLm9yZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3
GpC2bomUqk+91wLYBzDMcCj5C9m6oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZH
h7htyAkWYVoFsFPrwHounto8xTsySSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT
9YgcBqKCo65pTFmOnR/VVbjJk4K2xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNj
P+qDrh0db7PAjO1D4d5ftfrsf+kdRR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy
2U+eITZ5LLE5s45mX2oPFknWqxBobQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3
BgBEmfsYWlBXO8rVXfvPgLs32VdVNZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/
7auNVRmPB3v5SWEsH8xi4Bez2V9UKxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmd
lFYhAflWKQ03Ufiu8t3iBE3VJbc25oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9ae
lIl6vtbhMA+l0nfrsORMa4kobqQ5C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMB
AAGjggHMMIIByDAfBgNVHSMEGDAWgBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeD
Mcimo0oz8o1R1Nver3ZVpSkwDgYDVR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYw
FAYIKwYBBQUHAwQGCCsGAQUFBwMCMEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYB
BQUHAgEWF2h0dHBzOi8vc2VjdGlnby5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9j
cmwuc2VjdGlnby5jb20vU2VjdGlnb1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1h
aWxDQS5jcmwwgYoGCCsGAQUFBwEBBH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdv
LmNvbS9TZWN0aWdvUlNBQ2xpZW50QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAj
BggrBgEFBQcwAYYXaHR0cDovL29jc3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5m
cmFkZWFkLm9yZzANBgkqhkiG9w0BAQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQv
Q/fzPXmtR9t54rpmI2TfyvcKgOXpqa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvI
lSPrzIB4Z2wyIGQpaPLlYflrrVFKv9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9Ch
WFfgSXvrWDZspnU3Gjw/rMHrGnqlHtlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0w
hpBtXdyDjzBtQTaZJ7zTT/vlehc/tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9
IzGCBMcwggTDAgEBMIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVz
dGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMT
NVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEA
xr4ZlmdAxAMdKFES+jupfjANBglghkgBZQMEAgEFAKCCAeswGAYJKoZIhvcNAQkDMQsGCSqGSIb3
DQEHATAcBgkqhkiG9w0BCQUxDxcNMjMxMDI3MTAyNTA4WjAvBgkqhkiG9w0BCQQxIgQgq5nRYNiS
MbunRK5008ItBGQvZJti/nFL1hPSb+5jPl4wgb0GCSsGAQQBgjcQBDGBrzCBrDCBljELMAkGA1UE
BhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEYMBYG
A1UEChMPU2VjdGlnbyBMaW1pdGVkMT4wPAYDVQQDEzVTZWN0aWdvIFJTQSBDbGllbnQgQXV0aGVu
dGljYXRpb24gYW5kIFNlY3VyZSBFbWFpbCBDQQIRAMa+GZZnQMQDHShREvo7qX4wgb8GCyqGSIb3
DQEJEAILMYGvoIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVy
MRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNl
Y3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEAxr4Z
lmdAxAMdKFES+jupfjANBgkqhkiG9w0BAQEFAASCAgCP2pKgi5ubkFqN7jBu7O6mogs190OG8MQz
h6IMtYOCUiyhcRlBdsVhZZDRDOsqbujpqfKsfue9gWZu/AtoAD7V7jkIbbU3gL0s3sCrHoksOjiN
8aLNC2ppLd36Vq96PDVWLxmt5d7JfXhyjDHeUryYIYpk0Uk2TbqpNpxeb3XSE9n+p0q5OmVITZpd
ClSgB/dxBaldLuFgIZS1SXGI4XofL1d0V7JC3pZ3WNF0a+p51FUhhOUgMdTF8coqx0/YfyYPkBpb
ryr8LIycdA5BxxTY1PEJJSU3YAJX9U2z1NPB73oP0n9avl93GKx+lA8PEXE1g2JqdWCY+Bbicr8J
9jwC2RTPP5G+KuzqjusPz0NGr9xmYV+LsTRNKIj6iPwmTx4vuM3TYP5+ioDyklhxOAANCiwoy/ET
YBoYWD8VKEqBYHwAGsPJQ/cnVV577Kmj1NrZ3+E0I2qIrHzrj3FPMzY6F/bWv1oar6kQ7pUVXnMI
w/DyYXJCIDcl1GIQjKT4yI8O4DHo6wWgIh/+NitIygpU9oadDISVZrJXv8Wyv5U9WRzTU0tyVizx
PRkEB2FlM22xc146G3KjyfT3twpDRMLOWtoTVTlwS/2z+rgFU09CEjV/NzL1vVTW7TouuZqwgow+
DfcN5ZkMTyNU18SPy1/MyDmjx6LoIGeNM9RiF+jD+wAAAAAAAA==


--=-VAZZmWjpnP+rAAS6AMba--


From xen-devel-bounces@lists.xenproject.org Fri Oct 27 10:33:05 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 27 Oct 2023 10:33:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624337.972838 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qwK9D-0006Fr-Jk; Fri, 27 Oct 2023 10:32:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624337.972838; Fri, 27 Oct 2023 10:32: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 1qwK9D-0006Fk-FY; Fri, 27 Oct 2023 10:32:59 +0000
Received: by outflank-mailman (input) for mailman id 624337;
 Fri, 27 Oct 2023 10:32: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=eEfT=GJ=gmail.com=xadimgnik@srs-se1.protection.inumbo.net>)
 id 1qwK9C-0006Fe-4O
 for xen-devel@lists.xenproject.org; Fri, 27 Oct 2023 10:32:58 +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 24c23b6e-74b4-11ee-98d6-6d05b1d4d9a1;
 Fri, 27 Oct 2023 12:32:35 +0200 (CEST)
Received: by mail-wm1-x32b.google.com with SMTP id
 5b1f17b1804b1-408425c7c10so15444845e9.0
 for <xen-devel@lists.xenproject.org>; Fri, 27 Oct 2023 03:32:35 -0700 (PDT)
Received: from [192.168.10.177] (54-240-197-227.amazon.com. [54.240.197.227])
 by smtp.gmail.com with ESMTPSA id
 o14-20020a05600c4fce00b0040775501256sm1300940wmq.16.2023.10.27.03.32.33
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Fri, 27 Oct 2023 03:32: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: 24c23b6e-74b4-11ee-98d6-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698402755; x=1699007555; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:from:references:cc:to
         :content-language:subject:reply-to:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=EnKvJtLdMM1klAtGShdO3PmXCUUiIZMF8/1aPxmDPfI=;
        b=dhYkoX/m2dPnJrTZbdHie3tSY0RerR6z+M2k5+I5Z8i9iP0a6LNoKqlhwQt0C0IwTh
         r2LeKM5hkabKNM7PfnoIo4TFAUuchpZsg8eY25uIbNx1TlfE6CmYf9bNgdP2Ph2MGPk9
         pOPRQH2pc23J/8HgsrmavuKwN3mMzM19f1+lAc4lS3RENZ5s7xrgHFO5ZNDhdhTIBFf4
         f5H0ztScOFpnP/gZTXR++wcXWOY0rm9e7f3CM2PYYil8PfOBmw3l5HpFmupCHLkzR953
         Z06HOgE2rZzAfNpR3J89OTguZWDetqeBQOyJYDTP4w6ivVhbOQeuA7FsucQZEjaFc6Vv
         h7mQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698402755; x=1699007555;
        h=content-transfer-encoding:in-reply-to:from:references:cc:to
         :content-language:subject:reply-to:user-agent:mime-version:date
         :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=EnKvJtLdMM1klAtGShdO3PmXCUUiIZMF8/1aPxmDPfI=;
        b=hTBvtEVoMZ9klQi8TT46UkpaDMoipKpYvFCNEsbCouSaPjGWArYQCoRiLK7FqqUWyb
         pcUXJS/DSNy21l2jCfN870W3RJTWsEecLwUB0Z/HK2HpS9Quix/qEk2dCJAHKd+oOTiq
         BckJXJKkt2Q7sogkPwAG5fdIynO+1JjayYPhvqMsH/RkwlWOmCI95cg9VFA9ztODEH1k
         HLfJ2/Y1OOCdboq1ym2ymF3UjpwqydRJ2wqCIeEzLQuKK+otOrzZQxL18wcMkFHYuYpq
         Duq1tecRrw0RdSCFsik1cLv9tDVkzL2Ou9/2gpnnxRAvGMHM0/i2PfuyNhn320fcdL7j
         mHyw==
X-Gm-Message-State: AOJu0Ywc7hTOiL+IjOrVj3d60icZo6v5abME2PCyfaQOBsn+HOn3t8qW
	5/Epym+rw0VmkgB0t8WyJdo=
X-Google-Smtp-Source: AGHT+IGWDabcILZvppndibIT+VlcAXisSRXRTOoY9Ub291eXsQSLS1cJV/CaQEshHMvzRuA7gSjyGg==
X-Received: by 2002:a05:600c:1f94:b0:406:7232:1431 with SMTP id je20-20020a05600c1f9400b0040672321431mr2033254wmb.33.1698402754916;
        Fri, 27 Oct 2023 03:32:34 -0700 (PDT)
Message-ID: <c538ea45-dac7-49f3-ad50-8c3a59755dee@gmail.com>
Date: Fri, 27 Oct 2023 11:32:33 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Reply-To: paul@xen.org
Subject: Re: [PATCH v3 13/28] hw/xen: automatically assign device index to
 block devices
Content-Language: en-US
To: David Woodhouse <dwmw2@infradead.org>, paul@xen.org, qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>, Hanna Reitz <hreitz@redhat.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Anthony Perard <anthony.perard@citrix.com>,
 =?UTF-8?Q?Marc-Andr=C3=A9_Lureau?= <marcandre.lureau@redhat.com>,
 Paolo Bonzini <pbonzini@redhat.com>, "Michael S. Tsirkin" <mst@redhat.com>,
 Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
 Richard Henderson <richard.henderson@linaro.org>,
 Eduardo Habkost <eduardo@habkost.net>, Jason Wang <jasowang@redhat.com>,
 Marcelo Tosatti <mtosatti@redhat.com>, qemu-block@nongnu.org,
 xen-devel@lists.xenproject.org, kvm@vger.kernel.org,
 Bernhard Beschow <shentey@gmail.com>, Joel Upham <jupham125@gmail.com>
References: <20231025145042.627381-1-dwmw2@infradead.org>
 <20231025145042.627381-14-dwmw2@infradead.org>
 <74e54da5-9c35-485d-a13c-efac3f81dec2@gmail.com>
 <f72e2e7feed3ecf17af8ab8442c359eea329ef17.camel@infradead.org>
 <9fb67e52-f262-4cf4-91c2-a42411ba21c4@gmail.com>
 <b6458e730fd861243f534e33a48a857122e77ed5.camel@infradead.org>
From: "Durrant, Paul" <xadimgnik@gmail.com>
In-Reply-To: <b6458e730fd861243f534e33a48a857122e77ed5.camel@infradead.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

On 27/10/2023 11:25, David Woodhouse wrote:
> On Fri, 2023-10-27 at 10:01 +0100, Durrant, Paul wrote:
>>
>> This code is allocating a name automatically so I think the onus is on
>> it not create a needless clash which is likely to have unpredictable
>> results depending on what the guest is. Just avoid any aliasing in the
>> first place and things will be fine.
> 
> 
> Yeah, fair enough. In which case I'll probably switch to using
> xs_directory() and then processing those results to find a free slot,
> instead of going out to XenStore for every existence check.
> 
> This isn't exactly fast path and I'm prepared to tolerate a little bit
> of O(n²), but only within reason :)

Yes, doing an xs_directory() and then using the code 
xen_block_get_vdev() to populate a list of existent disks will be neater.



From xen-devel-bounces@lists.xenproject.org Fri Oct 27 11:18:42 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 27 Oct 2023 11:18:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624341.972848 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qwKrE-0008Jn-OH; Fri, 27 Oct 2023 11:18:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624341.972848; Fri, 27 Oct 2023 11:18: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 1qwKrE-0008Jg-Ks; Fri, 27 Oct 2023 11:18:28 +0000
Received: by outflank-mailman (input) for mailman id 624341;
 Fri, 27 Oct 2023 11:18: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=zWeN=GJ=amd.com=Xenia.Ragiadakou@srs-se1.protection.inumbo.net>)
 id 1qwKrD-0008Ja-3q
 for xen-devel@lists.xenproject.org; Fri, 27 Oct 2023 11:18:27 +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 8a8eb7c1-74ba-11ee-98d6-6d05b1d4d9a1;
 Fri, 27 Oct 2023 13:18:24 +0200 (CEST)
Received: from DM6PR06CA0040.namprd06.prod.outlook.com (2603:10b6:5:54::17) by
 CH2PR12MB4229.namprd12.prod.outlook.com (2603:10b6:610:a5::15) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6933.24; Fri, 27 Oct 2023 11:18:18 +0000
Received: from DS3PEPF000099DD.namprd04.prod.outlook.com
 (2603:10b6:5:54:cafe::34) by DM6PR06CA0040.outlook.office365.com
 (2603:10b6:5:54::17) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.24 via Frontend
 Transport; Fri, 27 Oct 2023 11:18:17 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 DS3PEPF000099DD.mail.protection.outlook.com (10.167.17.199) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6933.15 via Frontend Transport; Fri, 27 Oct 2023 11:18:17 +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.32; Fri, 27 Oct
 2023 06:18: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: 8a8eb7c1-74ba-11ee-98d6-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Y/FaBt7NAGL2dcehVuVcsrae/vgENTWTyWbtQxE+1pc7XB3V13O1e/gcebF10MZu5vbKZmTyQdoCc8SW3bO2grrIcq0dkaMF06ZpYN5+Y4yk/fXSPiQjStYlJwwleBI6xbcoI29V1ZtRTnGQNk/2d7D38/4cjpe83ipGLgmnOSFz6Nm6d+0P/svCIbsS06An6/ngSkQaVPKATCNP1snbzSyykndBUZyJFuwg8ceFORrCej/5+cpJ6Wc+cTY7iLOx1Yzn1NUhsvGLcHMOvsTAPjcboC8VuxuQ/mJrc6AZySHUjwrr0JZZlAvhKh50vA/c50D+1bSRJWdUvR9YuEBUAQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=Fz99m5x5xtMufJ5gK5rnfWtKLPtwi5hDQMUX861Svv8=;
 b=nOVI98Jw53l4rMdTe4Z2bmv2Qth5i1qwAeEZxP8TYXbVTM5JjE11c+8qqoMXwTliiDEECp0IQdpzdD28TPvNhaRjSq88+MpR9CJ0oanVW6oOgD4lnTCBmH/O0i+Jf9Cl+YIDICmM0Z/hvGVGdXUC5e+7wLteeX+EsjafDW5FrPICC5LsZ/Lbww/cAfONY5eIa1NtpEe5MxgNZPMzQdgwLxY8QmFAmeRqijl9EsdBCry2Zsz/Z/ma1YXuvujU5cYckGlQIw6OhbXIbn0jhZiN+3HnZVd7/f9oiZZdEVvhqXwQm4CpD3WyAOiSa4JR+wrSz1iXi9NdSUR43nmGQ5HylQ==
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 (0)
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=Fz99m5x5xtMufJ5gK5rnfWtKLPtwi5hDQMUX861Svv8=;
 b=Sbx0iyHMlXDpiYIeVABwzUzP2Xo1LhjprWJcQFol/EKlNCDKxpB/ChRq6aFIUiynAlb5ubK/U7q3tUq62aW5txbj+AI9DYLGkqdbhm2vQ4c9oBwgYSG3K1ixtoxOlonS5BZeQ3qg02rmwkvJF7x4RAr+nnk113RaecuN3O+SU14=
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: <987b5b7d-57f8-4d63-bd13-fe662b6cb87f@amd.com>
Date: Fri, 27 Oct 2023 14:18:12 +0300
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH] x86/hvm/dom0: fix PVH initrd and metadata placement
Content-Language: en-US
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>, <xen-devel@lists.xenproject.org>
References: <20231026064543.43369-1-xenia.ragiadakou@amd.com>
 <ac7e9bac-6d74-a5bf-d703-3c5455e581ea@suse.com>
 <7712c60b-4f89-483e-89e4-7ac8f4d0311e@amd.com>
 <809115b1-2a47-583f-2d04-72a5a21ee7da@suse.com>
 <c107d63c-25a3-4f17-a5e8-7ec3ccd94ce3@amd.com>
 <c81a8275-ecfd-7598-c119-ed83b156c0e5@suse.com>
 <b5330686-82a0-4d47-9549-2d943ca68c7e@amd.com>
 <1cc98108-3328-94d3-5f8d-ff03c965087e@suse.com>
 <92ba94d2-9e57-4241-8626-33f06f88e726@amd.com>
 <a61926bc-e3e6-e381-45de-be3a4878b6af@suse.com>
 <217d9079-3072-441a-a4ba-4db28c565bc7@amd.com>
 <08ea1b7b-c85f-337a-42c4-520e40b75288@suse.com>
From: Xenia Ragiadakou <xenia.ragiadakou@amd.com>
In-Reply-To: <08ea1b7b-c85f-337a-42c4-520e40b75288@suse.com>
Content-Type: text/plain; charset="UTF-8"; format=flowed
Content-Transfer-Encoding: 7bit
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: DS3PEPF000099DD:EE_|CH2PR12MB4229:EE_
X-MS-Office365-Filtering-Correlation-Id: f51f31f6-7c84-4ae5-959e-08dbd6de6b98
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	Ds4oxGJIZgQhgEgzBkDNK5A+i1oxmGEkPBDBgN4aEH3d7CtYdPiKfDBHqN4qhWbbEmuYaHTUhMJXcJEUkTk3D+VzqA9HbCLQOeUOG4Hc+c+15+iSX7eUwdUZ2XEf4JPMe22gg6F54yph2U5GgkRtRJ46GVEm9gQEepqkXwNviDuX9Y0kdEzMCcIu89JNXhZQaqQ8EHhnJM67Vdzg6Spzwr7usE+iAo9UBbjkibrXLXer6FduQhm5xeoeqmcMiSN+rvNCGuO/czunIvYiioiENkP3vjNglPAEa+pCTEsQuJWOiLYQIZ8qQDH8KcUTo29Tvz1SFKl4A8QBfD0TN3OSxcVC8goH/7lFaLyxJX6l9B6LJeFDFoaCROm8zWhIS+4LCoElWin8/hWw25s109XoOb4BkNY9J/T3wDdwegWsXz65IMx0PWF/5OUEa6WnJ70Xu7LFBymc9fsoRUBItbk1LFON6PXBcgWFxtx4bHUlqDrJ39rIjSfONHsCtDdv/47KrSGiDe2TxNLWIrjE6AGyCItiI3kpXP60qoMmZ6lQCSfmLlJYCh016yYxCKtVW6TsxismD5e69Hv0iWCVqpIRZr8t8O33Hr+FKaKwDtZ+ePUHxGxcRMv8wrzuysB+RGBbI90+HPVLfDIx1tXLi8TCpXK9QIrDSzJXmTs+nlqhg3mrj1t4ehd4/QjkGTKsYmmTaAysvw7F5yVrO+ygfV+eye93NgarfewGoEhqQFEWUGYC6Nk4DFoJkLEXZ2Q/8yN/UXKMCuMW0lA5BdW8TRnAiE1f8hsFJ67bboXDgLnic2iYdk8ujmgDGoLyg60ej8Ra
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)(346002)(396003)(136003)(230922051799003)(82310400011)(1800799009)(451199024)(186009)(64100799003)(46966006)(40470700004)(36840700001)(66899024)(40460700003)(2616005)(336012)(426003)(26005)(16526019)(53546011)(6666004)(83380400001)(47076005)(16576012)(4326008)(41300700001)(8676002)(8936002)(44832011)(5660300002)(2906002)(36860700001)(6916009)(478600001)(316002)(54906003)(70586007)(70206006)(82740400003)(31696002)(86362001)(81166007)(356005)(36756003)(40480700001)(31686004)(36900700001)(43740500002);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Oct 2023 11:18:17.6802
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: f51f31f6-7c84-4ae5-959e-08dbd6de6b98
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:
	DS3PEPF000099DD.namprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH2PR12MB4229


On 27/10/23 09:37, Jan Beulich wrote:
> On 26.10.2023 18:55, Xenia Ragiadakou wrote:
>>
>>
>> On 26/10/23 17:55, Jan Beulich wrote:
>>> On 26.10.2023 15:58, Xenia Ragiadakou wrote:
>>>>
>>>> On 26/10/23 15:37, Jan Beulich wrote:
>>>>> On 26.10.2023 14:35, Xenia Ragiadakou wrote:
>>>>>>
>>>>>>
>>>>>> On 26/10/23 14:51, Jan Beulich wrote:
>>>>>>> On 26.10.2023 11:46, Xenia Ragiadakou wrote:
>>>>>>>> On 26/10/23 11:45, Jan Beulich wrote:
>>>>>>>>> On 26.10.2023 10:34, Xenia Ragiadakou wrote:
>>>>>>>>>> On 26/10/23 10:35, Jan Beulich wrote:
>>>>>>>>>>> On 26.10.2023 08:45, Xenia Ragiadakou wrote:
>>>>>>>>>>>> --- a/xen/arch/x86/hvm/dom0_build.c
>>>>>>>>>>>> +++ b/xen/arch/x86/hvm/dom0_build.c
>>>>>>>>>>>> @@ -518,7 +518,7 @@ static paddr_t __init find_memory(
>>>>>>>>>>>>                if ( end <= kernel_start || start >= kernel_end )
>>>>>>>>>>>>                    ; /* No overlap, nothing to do. */
>>>>>>>>>>>>                /* Deal with the kernel already being loaded in the region. */
>>>>>>>>>>>> -        else if ( kernel_start - start > end - kernel_end )
>>>>>>>>>>>> +        else if ( kernel_start + kernel_end > start + end )
>>>>>>>>>>> What meaning has the sum of the start and end of either range? I can't
>>>>>>>>>>> figure how comparing those two values will be generally correct / useful.
>>>>>>>>>>> If the partial-overlap case needs handling in the first place, I think
>>>>>>>>>>> new conditionals need adding (and the existing one needs constraining to
>>>>>>>>>>> "kernel range fully contained") to use
>>>>>>>>>>> - as before, the larger of the non-overlapping ranges at start and end
>>>>>>>>>>>         if the kernel range is fully contained,
>>>>>>>>>>> - the tail of the range when the overlap is at the start,
>>>>>>>>>>> - the head of the range when the overlap is at the end.
>>>>>>>>>> Yes it is not quite straight forward to understand and is based on the
>>>>>>>>>> assumption that end > kernel_start and start < kernel_end, due to
>>>>>>>>>> the first condition failing.
>>>>>>>>>>
>>>>>>>>>> Both cases:
>>>>>>>>>> (start < kernel_start && end < kernel_end) and
>>>>>>>>>> (kernel_start - start > end - kernel_end)
>>>>>>>>>> fall into the condition ( kernel_start + kernel_end > start + end )
>>>>>>>>>>
>>>>>>>>>> And both the cases:
>>>>>>>>>> (start > kernel_start && end > kernel_end) and
>>>>>>>>>> (end - kernel_end > kernel_start - start)
>>>>>>>>>> fall into the condition ( kernel_start + kernel_end < start + end )
>>>>>>>>>>
>>>>>>>>>> ... unless of course I miss a case
>>>>>>>>> Well, mathematically (i.e. ignoring the potential for overflow) the
>>>>>>>>> original expression and your replacement are identical anyway. But
>>>>>>>>> overflow needs to be taken into consideration, and hence there is a
>>>>>>>>> (theoretical only at this point) risk with the replacement expression
>>>>>>>>> as well. As a result I still think that ...
>>>>>>>>>
>>>>>>>>>>> That said, in the "kernel range fully contained" case it may want
>>>>>>>>>>> considering to use the tail range if it is large enough, rather than
>>>>>>>>>>> the larger of the two ranges. In fact when switching to that model, we
>>>>>>>>>>> ought to be able to get away with one less conditional, as then the
>>>>>>>>>>> "kernel range fully contained" case doesn't need treating specially.
>>>>>>>>> ... this alternative approach may want considering (provided we need
>>>>>>>>> to make a change in the first place, which I continue to be
>>>>>>>>> unconvinced of).
>>>>>>>> Hmm, I see your point regarding the overflow.
>>>>>>>> Given that start < kernel_end and end > kernel_start, this could
>>>>>>>> be resolved by changing the above condition into:
>>>>>>>> if ( kernel_end - start > end - kernel_start )
>>>>>>>>
>>>>>>>> Would that work for you?
>>>>>>>
>>>>>>> That would look quite a bit more natural, yes. But I don't think it covers
>>>>>>> all cases: What if the E820 range is a proper sub-range of the kernel one?
>>>>>>> If we consider kernel range crossing E820 region boundaries, we also need
>>>>>>> to take that possibility into account, I think.
>>>>>>
>>>>>> You are right, this case is not handled and can lead to either of the
>>>>>> issues mentioned in commit message.
>>>>>> Maybe we should check whether end > start before proceeding with
>>>>>> checking the size.
>>>>>
>>>>> It looks like it all boils down to the alternative I did sketch out.
>>>>
>>>> I 'm not sure I fully understood the alternative.
>>>> Do you mean sth in the lines below?
>>>>
>>>>             if ( end <= kernel_start || start >= kernel_end )
>>>>                 ; /* No overlap, nothing to do. */
>>>>             /* Deal with the kernel already being loaded in the region. */
>>>> -        else if ( kernel_start - start > end - kernel_end )
>>>> +        else if ( start < kernel_start && end > kernel_end ) {
>>>> +            if ( kernel_start - start > end - kernel_end )
>>>> +                end = kernel_start;
>>>> +            else
>>>> +                start = kernel_end;
>>>> +        }
>>>> +        else if ( start < kernel_start )
>>>>                 end = kernel_start;
>>>> -        else
>>>> +        else if ( end > kernel_end )
>>>>                 start = kernel_end;
>>>> +        else
>>>> +            continue;
>>>>
>>>>             if ( end - start >= size )
>>>>                 return start;
>>>
>>> Not exactly, no, because this still takes the size into account only
>>> in this final if().
>>>
>>>> You wouldn't like to consider this approach?
>>>
>>> I'm happy to consider any other approach. Just that ...
>>>
>>>>             if ( end <= kernel_start || start >= kernel_end )
>>>>                 ; /* No overlap, nothing to do. */
>>>>             /* Deal with the kernel already being loaded in the region. */
>>>> -        else if ( kernel_start - start > end - kernel_end )
>>>> +        else if ( kernel_end - start > end - kernel_start )
>>>>                 end = kernel_start;
>>>>             else
>>>>                 start = kernel_end;
>>>>
>>>> -        if ( end - start >= size )
>>>> +        if ( end > start && end - start >= size )
>>>>                 return start;
>>>>         }
>>>
>>> ... I'm afraid this doesn't deal well with the specific case I was
>>> mentioning: If the E820 region is fully contained in the kernel range,
>>> it looks to me as if this approach would ignore the E820 altogether,
>>> since you either move end ahead of start or start past end then. Both
>>> head and tail regions may be large enough in this case, and if this
>>> was the only region above 1M, there'd be no other space to fall back
>>> to.
>>
>> Yes, in which case it will fail. This is legitimate.
> 
> Not really, if there is space available (but just not properly used).

I said so because I noticed that, if, for instance, the loading address 
conflicts with a reserved memory region, xen won't attempt to relocate 
the kernel (assuming that it is relocatable). It will fail.

> 
>> Currently, the code proceeds with the dom0 kernel being corrupted.
> 
> And we agree that this wants fixing.

Ok, and IIUC, using rangeset as per Roger's suggestion, right?

> 
> Jan


From xen-devel-bounces@lists.xenproject.org Fri Oct 27 11:22:07 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 27 Oct 2023 11:22:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624345.972858 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qwKuk-0001MO-BV; Fri, 27 Oct 2023 11:22:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624345.972858; Fri, 27 Oct 2023 11:22: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 1qwKuk-0001MH-70; Fri, 27 Oct 2023 11:22:06 +0000
Received: by outflank-mailman (input) for mailman id 624345;
 Fri, 27 Oct 2023 11:22: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 1qwKuj-0001M7-Oz; Fri, 27 Oct 2023 11:22: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 1qwKuj-0002gw-Fb; Fri, 27 Oct 2023 11:22: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 1qwKuj-0003dj-5l; Fri, 27 Oct 2023 11:22:05 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qwKuj-0000fA-5K; Fri, 27 Oct 2023 11:22: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=qF2aGD3Hr0nr+LrUWz8bVQoNuKb+DM+HDD2Sq3KONUU=; b=1nQZdbPVS7Q6qa3oJ65p2f9WD8
	+kXx0mGK2rpuPh5hx+CSLxTSaGYGPS8OlV3gu08x+99V41mHWSXeSnm/fD9nCFSR5gI97UQC0neiM
	thgHc5+zfLRtPKKD7BuYTLkYX7Abkl5IYdyPTfSqE4qjFpEBp2cJYATrflLtxPnqXiBE=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183547-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 183547: tolerable FAIL
X-Osstest-Failures:
    xen-unstable:test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-install:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl:xen-boot: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-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-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-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-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop: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: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-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-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-amd64-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-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-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: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-amd64-i386-libvirt-raw: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-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-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=5415b2b2118bd78d8a04f276a8312f7f0cb1a466
X-Osstest-Versions-That:
    xen=5415b2b2118bd78d8a04f276a8312f7f0cb1a466
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 27 Oct 2023 11:22:05 +0000

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

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm 7 xen-install fail in 183534 pass in 183547
 test-armhf-armhf-xl           8 xen-boot         fail in 183534 pass in 183547
 test-amd64-amd64-xl-qemuu-win7-amd64 12 windows-install    fail pass in 183534

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop  fail in 183534 like 183529
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183534
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183534
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183534
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183534
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 183534
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 183534
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183534
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183534
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183534
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 183534
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 183534
 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      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-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-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-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-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-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     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-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-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-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-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 xen                  5415b2b2118bd78d8a04f276a8312f7f0cb1a466
baseline version:
 xen                  5415b2b2118bd78d8a04f276a8312f7f0cb1a466

Last test of basis   183547  2023-10-27 01:53:48 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 Oct 27 12:02:25 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 27 Oct 2023 12:02:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624356.972868 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qwLXd-000196-Ie; Fri, 27 Oct 2023 12:02:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624356.972868; Fri, 27 Oct 2023 12:02: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 1qwLXd-00018z-Fu; Fri, 27 Oct 2023 12:02:17 +0000
Received: by outflank-mailman (input) for mailman id 624356;
 Fri, 27 Oct 2023 12:02: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=eU9S=GJ=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qwLXc-00018r-Ev
 for xen-devel@lists.xenproject.org; Fri, 27 Oct 2023 12:02:16 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur04on2078.outbound.protection.outlook.com [40.107.7.78])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id aab012a6-74c0-11ee-9b0e-b553b5be7939;
 Fri, 27 Oct 2023 14:02:14 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by GVXPR04MB9779.eurprd04.prod.outlook.com (2603:10a6:150:111::22)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.11; Fri, 27 Oct
 2023 12:01:43 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6954.008; Fri, 27 Oct 2023
 12:01: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: aab012a6-74c0-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=XRpIGXl2gkvoVGegMCmjREFjEEV1gXU+sUTnLYoF8gLbg/VQ1xpltv3co4VR27uZR5XLypCAtvUQVGfyBqlrwjKDrbXvenyBjtYops0wSrLQ9Dx+JrzhY6uJAdjkrj48v1J7KfltjhBmL2fwmeostUwSzZOxpeb8PVfrG/jE27SubMq15RieyXgNcms92zVyBOhJCy3Z0VxDXijSxv+WiuJbSzC2JihlvZPSVxzpVRfNKo+yJnyXoNJSi0kgPcKigOxBo6xUO9fC0slgkfj/MZUHvFVfmXusxtVGz8S7ilPyFGwzJ7AUUIRQ4ZRIi+gCWF8Gdj7CTkHfwmIotK32mw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=VsU7jeeWvVCQy2eDHxlahJ2eaccKu+iNVXUXo9mKLaY=;
 b=Za5aWsdJCQpTZvbVtxySXNi0HkpFtKYCVFKZFEHzX8WT/otXU7nc9WUNTb3FYDl3sv7IdsMnPu+b3Caj7it9grZfMPDEpjCwNKOiM0+oCMtGQ6SavSDClWuw42r8BC73MbIoL1mG9QvAfWMznV2yBOmiEZie1Xyy+/t7C4Z1vZxShWT0lPIcdPoDqqSPhURftd0wvOB3vZOEko8BEpNqnEfGXUAntRrSiBqJUW7cUe7WEu69gpTA/O07r41ClMqMpmKunq1Y/ThDUduKQ4bS5QkraHPtReCVLwVKjNMuy/Qscu9/HJ5C0UqWWkXf0vUVgNLA0x3eMDub04OHL4tJnA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=VsU7jeeWvVCQy2eDHxlahJ2eaccKu+iNVXUXo9mKLaY=;
 b=CDPfe6cvt/z+70i+4uOoRfrejH+V9zDowqjZzpL/xD04tUcZYJf/t+0+GGKtmSWu4yEBYjJAQXbQyrykMp+T+C+5Gvozq/9j3oxlBzYbuZK3hQzGqnkZndqAn2QWOVC5EfuY9CilcpM/k+ociH516NeGSK8eCBUXQYCdfcLYPTijcyIpfc5+Fd9KuqNyoCUgPHTBl8EaEb9zmE35/jA7k0LDkqhAERbr9PN/3ciCCjB6+UAvyWV8NfP8CGF/hqoB+89bRV/oKuJdSTLDKMjlTvB+aIRNdHt9L9VOyWMzGwZZ76PJEZE69jmHtp78ISxf3SY2UFywiGIBQEgV0b65Zw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <486c778c-4a33-703f-2811-27101d10ea9b@suse.com>
Date: Fri, 27 Oct 2023 14:01: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] x86/hvm/dom0: fix PVH initrd and metadata placement
Content-Language: en-US
To: Xenia Ragiadakou <xenia.ragiadakou@amd.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>, xen-devel@lists.xenproject.org
References: <20231026064543.43369-1-xenia.ragiadakou@amd.com>
 <ac7e9bac-6d74-a5bf-d703-3c5455e581ea@suse.com>
 <7712c60b-4f89-483e-89e4-7ac8f4d0311e@amd.com>
 <809115b1-2a47-583f-2d04-72a5a21ee7da@suse.com>
 <c107d63c-25a3-4f17-a5e8-7ec3ccd94ce3@amd.com>
 <c81a8275-ecfd-7598-c119-ed83b156c0e5@suse.com>
 <b5330686-82a0-4d47-9549-2d943ca68c7e@amd.com>
 <1cc98108-3328-94d3-5f8d-ff03c965087e@suse.com>
 <92ba94d2-9e57-4241-8626-33f06f88e726@amd.com>
 <a61926bc-e3e6-e381-45de-be3a4878b6af@suse.com>
 <217d9079-3072-441a-a4ba-4db28c565bc7@amd.com>
 <08ea1b7b-c85f-337a-42c4-520e40b75288@suse.com>
 <987b5b7d-57f8-4d63-bd13-fe662b6cb87f@amd.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <987b5b7d-57f8-4d63-bd13-fe662b6cb87f@amd.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR5P281CA0048.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:f0::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_|GVXPR04MB9779:EE_
X-MS-Office365-Filtering-Correlation-Id: 35749d1e-0dd4-4549-4367-08dbd6e47c06
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	ZBz4jntoD823ccmardXWvjYstEEwKhh/lUpetIh5k4SGcRcqoVTLfRbRSZqFfGr2blfE0ghmykQTdNMYJJoALsqU1sQaFXr3E6GMegjrjUykGhdgjo9pOzQqszkEOXkKOzUIbqpEkRoylwJujttGM36l31eoK8hH83ZNkvVe640ByIR9/HDraqVCKOFlS1LbwCaAftPMlyenKajApGksYIbQMbXdGT3l4nUFRBZEYyw5T1ewEFej7+PROgqqmScjbxurrdApfF4vE0DPIaDtdBzT2faRwyRLEHPer1dwQFLRNt6gyosFElqGuQJBJHzTlo5WZ3F6Gkl7shmOYx94DI/sf/aZfjWpqvCIpzWEPogd3JSowFGWYwfkfyFmIt7OjMNrpK8f3P4PAeUEA/QW/wTCjug0oJMbMSm0z6OdiMv6hhKUwlZrGtjcx0Nfu0e9VLA9VW5Gn/JudiBPuc9K7PAUPocs3YrZfNmgaEoxLIHQYyj3OSnz84Br82teTaFz+FKr2zX2SqFQNjB0Z0L8k+hXAjtBDsP4AmmxdT8vpoyyGfkS2SL30DVPec7lSsakXbF0rl9sch7vNRaE21pRKrJrmi7rD+/509jcBN5ZBu0+t98IMFkaOrMeJm60vBgQVuAVz0728MZyNDbEV9vTFQ==
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)(230922051799003)(186009)(1800799009)(64100799003)(451199024)(6512007)(31686004)(8936002)(8676002)(66946007)(316002)(66476007)(66556008)(6916009)(54906003)(4326008)(26005)(66899024)(86362001)(83380400001)(31696002)(2616005)(478600001)(5660300002)(6486002)(6506007)(53546011)(41300700001)(2906002)(36756003)(38100700002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?MlVTV3RTSUlMa211ellidlk4N3hHMDVRYTVSQWdHSWhJZVk1cHdkeEk0WG5k?=
 =?utf-8?B?TkErRm40K1JKTitaazl1dENlVDhyT0Yza0dRYXJFTUZHT2U0RG1tRWZDMlky?=
 =?utf-8?B?alRtMVpncGVQeldlYUIxWDVZeW9UUkRzSXZpdGppbFloNXE4U2tGcTJjWEZ6?=
 =?utf-8?B?dXl0dkZDa1NBL2lsbTFCSmNjTXpwSnVqMXJLaGIzVGJhcktsdGptbVVpVCts?=
 =?utf-8?B?cTVobzlpT2prYlhwSWZiRml4WVZEVjh3QUFvSnVkekc5MW01RWNld3N3Qy82?=
 =?utf-8?B?VllYcW5zTTFmd2N4WVFBUUNSUStYQlJiakgrcDI2T0hleTFhNW50Mlk2NEo0?=
 =?utf-8?B?NC9JZTNNNjU3NFRIQ0FnaGRrNEF6VVBpSk9RWjRoMDdlNVVKSWFTQklIcUNO?=
 =?utf-8?B?ZFJZM0NDNDE0aEl4K1JuUkVPQTJySVlPQlRxaVFlUndidUhaWjdiMDNwSEZM?=
 =?utf-8?B?VDlRdks2d1MveG1VbWdlTXFBdGhwU2R2Nm9yNkQ0Vm9DRS9rSlllVTNUUVpK?=
 =?utf-8?B?R2U4VldtbXBDRTQxdTlMTDY0T2pBblJLQmV4bUhBa2dQRE9sTDdEdUM0WUh1?=
 =?utf-8?B?QU1zSXBjKzVKSVVzWXpmUUVVdEVSaHZCcHJTWjJnRjl6UnZxazhIRUh6N0xJ?=
 =?utf-8?B?cjg5MTJHS0tiQkUvbDM0cjJRUWo2QVBEVTh3NzEzVktXeUpMc1dkdUZoWUpj?=
 =?utf-8?B?bTh1Z0lvNmNDRm5Wb3VkRzRnUWJqZWF6bFVJSnZVUC82QXhZaEwyOCtxbWhs?=
 =?utf-8?B?d0orQ1QwNGdNbUZlMHF3MjU5YlhKTnFGd0dueFRGa3FST21IelljaTlteGkx?=
 =?utf-8?B?WFZSY3Ezc2drWmhXNnVqK2lKbnhnQm1STFp0MlY5YTczNnBHNXZUdVdFaE1U?=
 =?utf-8?B?SVZrajlmcE9QOElTdlJZdzQzYlozeW9wTGlPYW4vOE0rWURBT1hBbVVxK1N0?=
 =?utf-8?B?aUhydHhreS85QWdDTmp2SUNpYzhJdFFHeTVab25ONkt6OVBmdkZGWS9TYVUz?=
 =?utf-8?B?cW5zQ2orUzc4cFZHZ2p5VG53NnEzbk1rUmN0RzdTWmJlV1RmUFRJUGU2Z2tx?=
 =?utf-8?B?dXp0TlRYYlY3clA2UmdPdUhBR08zQWd1VmkzNGlia1JyaDRTZjFocUt1N1Vp?=
 =?utf-8?B?V3VrQllKc1dyK3dnOFRMNTAvdFFHQkFHNjZ4RDF1akg3ZDlGeHRadmdIdEZn?=
 =?utf-8?B?VlZhS2hkOE1aYUNtcTV5cTl1QVhKczNWSnVkZ3NDeTRqQ2RpR3ZIdm9nWVJr?=
 =?utf-8?B?R2dUOStrakNCckVhdmE1TGZ1NU5DNVphc3ExMHBBK0VFNWF5ZTlHVDQ0Rmt1?=
 =?utf-8?B?WkQ1d3E2QngybmNqWWM1MXhQL296b01CeWwxUGMvWmpWSmJQUFVUa0ozMEJG?=
 =?utf-8?B?ZDJhYy9tTEFGRXdrTGl1S04veWpTL2dBdS9MY2dDZWRLcWU1N0duMmtPb3M0?=
 =?utf-8?B?RThTNnBpTTNGUGU4MjZ0eFJRUzN1NThFSk5IQkVTVjZrcU5WMlU5eUEvcmY1?=
 =?utf-8?B?RGY2V3BWeUpDTXF0akNncktOdFpiOGg2OHhMYnB4L21HdXkxczN0ZUx2b0Jo?=
 =?utf-8?B?ZTE0VXFxOHRhUmZ0a3FLWkdBV2VWYWhFNWFSUncrUDZhRHpzRlZOU1J1bEt3?=
 =?utf-8?B?R0w2UGlYNEdNTUlIbEJNTjdwK0tqRFFDbmVIK2pIZVRrcFdCSUF0VS9oNEEv?=
 =?utf-8?B?a08zRXdPajlxRXJFK3dIaktvaisrSE1aQ2wxK0JNSlhOUEZSaUlrLzB5VW5R?=
 =?utf-8?B?M3F3QVZzYXo4S2Vhc3hXZmpTbTZtT0RPbmNZbjV2dWp5QnBObUFoY2VhdVho?=
 =?utf-8?B?QzczbjBjbWJqYUp0Mzlwc0tBR1RtL3FJRnMxL05qQitZK1dvZmxNQWI5OTIz?=
 =?utf-8?B?UEI2TVExaytPVkFpU3FMYVdLQW8yKzVyaW1xVkxlV01QVUZod3RzMm5ORW8w?=
 =?utf-8?B?SUVRZlNYclM4RHlRS2xJV2tDM2tFenlCMDlBdzFlMzR3VFZvSEFqa3hpMGZw?=
 =?utf-8?B?ZGNvR0Q5V1F2M2NYRDhYc0lhZGFVVHorcHJBTFBaMDkxdTRENmVZcUZIQnZk?=
 =?utf-8?B?VjFOYWtQZjhsbDJYUlBpbVBkVlFiL0I2QkZiY3orbERjVno0SmVXNTRaUDh3?=
 =?utf-8?Q?wjv2CzN5NWyrbFqzyCXuWJjH/?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 35749d1e-0dd4-4549-4367-08dbd6e47c06
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Oct 2023 12:01:42.7526
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: +9lTOovn+JQ9APHbNb3wQYxe2pMDdZrzSwoBB+myYl3oBrT6e/BHuzPPkvL4FDv1cn7sWlzYgIq+SKKkXJwqWg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: GVXPR04MB9779

On 27.10.2023 13:18, Xenia Ragiadakou wrote:
> 
> On 27/10/23 09:37, Jan Beulich wrote:
>> On 26.10.2023 18:55, Xenia Ragiadakou wrote:
>>>
>>>
>>> On 26/10/23 17:55, Jan Beulich wrote:
>>>> On 26.10.2023 15:58, Xenia Ragiadakou wrote:
>>>>>
>>>>> On 26/10/23 15:37, Jan Beulich wrote:
>>>>>> On 26.10.2023 14:35, Xenia Ragiadakou wrote:
>>>>>>>
>>>>>>>
>>>>>>> On 26/10/23 14:51, Jan Beulich wrote:
>>>>>>>> On 26.10.2023 11:46, Xenia Ragiadakou wrote:
>>>>>>>>> On 26/10/23 11:45, Jan Beulich wrote:
>>>>>>>>>> On 26.10.2023 10:34, Xenia Ragiadakou wrote:
>>>>>>>>>>> On 26/10/23 10:35, Jan Beulich wrote:
>>>>>>>>>>>> On 26.10.2023 08:45, Xenia Ragiadakou wrote:
>>>>>>>>>>>>> --- a/xen/arch/x86/hvm/dom0_build.c
>>>>>>>>>>>>> +++ b/xen/arch/x86/hvm/dom0_build.c
>>>>>>>>>>>>> @@ -518,7 +518,7 @@ static paddr_t __init find_memory(
>>>>>>>>>>>>>                if ( end <= kernel_start || start >= kernel_end )
>>>>>>>>>>>>>                    ; /* No overlap, nothing to do. */
>>>>>>>>>>>>>                /* Deal with the kernel already being loaded in the region. */
>>>>>>>>>>>>> -        else if ( kernel_start - start > end - kernel_end )
>>>>>>>>>>>>> +        else if ( kernel_start + kernel_end > start + end )
>>>>>>>>>>>> What meaning has the sum of the start and end of either range? I can't
>>>>>>>>>>>> figure how comparing those two values will be generally correct / useful.
>>>>>>>>>>>> If the partial-overlap case needs handling in the first place, I think
>>>>>>>>>>>> new conditionals need adding (and the existing one needs constraining to
>>>>>>>>>>>> "kernel range fully contained") to use
>>>>>>>>>>>> - as before, the larger of the non-overlapping ranges at start and end
>>>>>>>>>>>>         if the kernel range is fully contained,
>>>>>>>>>>>> - the tail of the range when the overlap is at the start,
>>>>>>>>>>>> - the head of the range when the overlap is at the end.
>>>>>>>>>>> Yes it is not quite straight forward to understand and is based on the
>>>>>>>>>>> assumption that end > kernel_start and start < kernel_end, due to
>>>>>>>>>>> the first condition failing.
>>>>>>>>>>>
>>>>>>>>>>> Both cases:
>>>>>>>>>>> (start < kernel_start && end < kernel_end) and
>>>>>>>>>>> (kernel_start - start > end - kernel_end)
>>>>>>>>>>> fall into the condition ( kernel_start + kernel_end > start + end )
>>>>>>>>>>>
>>>>>>>>>>> And both the cases:
>>>>>>>>>>> (start > kernel_start && end > kernel_end) and
>>>>>>>>>>> (end - kernel_end > kernel_start - start)
>>>>>>>>>>> fall into the condition ( kernel_start + kernel_end < start + end )
>>>>>>>>>>>
>>>>>>>>>>> ... unless of course I miss a case
>>>>>>>>>> Well, mathematically (i.e. ignoring the potential for overflow) the
>>>>>>>>>> original expression and your replacement are identical anyway. But
>>>>>>>>>> overflow needs to be taken into consideration, and hence there is a
>>>>>>>>>> (theoretical only at this point) risk with the replacement expression
>>>>>>>>>> as well. As a result I still think that ...
>>>>>>>>>>
>>>>>>>>>>>> That said, in the "kernel range fully contained" case it may want
>>>>>>>>>>>> considering to use the tail range if it is large enough, rather than
>>>>>>>>>>>> the larger of the two ranges. In fact when switching to that model, we
>>>>>>>>>>>> ought to be able to get away with one less conditional, as then the
>>>>>>>>>>>> "kernel range fully contained" case doesn't need treating specially.
>>>>>>>>>> ... this alternative approach may want considering (provided we need
>>>>>>>>>> to make a change in the first place, which I continue to be
>>>>>>>>>> unconvinced of).
>>>>>>>>> Hmm, I see your point regarding the overflow.
>>>>>>>>> Given that start < kernel_end and end > kernel_start, this could
>>>>>>>>> be resolved by changing the above condition into:
>>>>>>>>> if ( kernel_end - start > end - kernel_start )
>>>>>>>>>
>>>>>>>>> Would that work for you?
>>>>>>>>
>>>>>>>> That would look quite a bit more natural, yes. But I don't think it covers
>>>>>>>> all cases: What if the E820 range is a proper sub-range of the kernel one?
>>>>>>>> If we consider kernel range crossing E820 region boundaries, we also need
>>>>>>>> to take that possibility into account, I think.
>>>>>>>
>>>>>>> You are right, this case is not handled and can lead to either of the
>>>>>>> issues mentioned in commit message.
>>>>>>> Maybe we should check whether end > start before proceeding with
>>>>>>> checking the size.
>>>>>>
>>>>>> It looks like it all boils down to the alternative I did sketch out.
>>>>>
>>>>> I 'm not sure I fully understood the alternative.
>>>>> Do you mean sth in the lines below?
>>>>>
>>>>>             if ( end <= kernel_start || start >= kernel_end )
>>>>>                 ; /* No overlap, nothing to do. */
>>>>>             /* Deal with the kernel already being loaded in the region. */
>>>>> -        else if ( kernel_start - start > end - kernel_end )
>>>>> +        else if ( start < kernel_start && end > kernel_end ) {
>>>>> +            if ( kernel_start - start > end - kernel_end )
>>>>> +                end = kernel_start;
>>>>> +            else
>>>>> +                start = kernel_end;
>>>>> +        }
>>>>> +        else if ( start < kernel_start )
>>>>>                 end = kernel_start;
>>>>> -        else
>>>>> +        else if ( end > kernel_end )
>>>>>                 start = kernel_end;
>>>>> +        else
>>>>> +            continue;
>>>>>
>>>>>             if ( end - start >= size )
>>>>>                 return start;
>>>>
>>>> Not exactly, no, because this still takes the size into account only
>>>> in this final if().
>>>>
>>>>> You wouldn't like to consider this approach?
>>>>
>>>> I'm happy to consider any other approach. Just that ...
>>>>
>>>>>             if ( end <= kernel_start || start >= kernel_end )
>>>>>                 ; /* No overlap, nothing to do. */
>>>>>             /* Deal with the kernel already being loaded in the region. */
>>>>> -        else if ( kernel_start - start > end - kernel_end )
>>>>> +        else if ( kernel_end - start > end - kernel_start )
>>>>>                 end = kernel_start;
>>>>>             else
>>>>>                 start = kernel_end;
>>>>>
>>>>> -        if ( end - start >= size )
>>>>> +        if ( end > start && end - start >= size )
>>>>>                 return start;
>>>>>         }
>>>>
>>>> ... I'm afraid this doesn't deal well with the specific case I was
>>>> mentioning: If the E820 region is fully contained in the kernel range,
>>>> it looks to me as if this approach would ignore the E820 altogether,
>>>> since you either move end ahead of start or start past end then. Both
>>>> head and tail regions may be large enough in this case, and if this
>>>> was the only region above 1M, there'd be no other space to fall back
>>>> to.
>>>
>>> Yes, in which case it will fail. This is legitimate.
>>
>> Not really, if there is space available (but just not properly used).
> 
> I said so because I noticed that, if, for instance, the loading address 
> conflicts with a reserved memory region, xen won't attempt to relocate 
> the kernel (assuming that it is relocatable). It will fail.

Hmm, if so, perhaps yet something else to deal with.

>>> Currently, the code proceeds with the dom0 kernel being corrupted.
>>
>> And we agree that this wants fixing.
> 
> Ok, and IIUC, using rangeset as per Roger's suggestion, right?

Going that route would be optimal of course, but I for one wouldn't
insist.

Jan


From xen-devel-bounces@lists.xenproject.org Fri Oct 27 12:02:55 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 27 Oct 2023 12:02:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624358.972878 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qwLYE-0001YE-SU; Fri, 27 Oct 2023 12:02:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624358.972878; Fri, 27 Oct 2023 12:02: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 1qwLYE-0001Y3-Oc; Fri, 27 Oct 2023 12:02:54 +0000
Received: by outflank-mailman (input) for mailman id 624358;
 Fri, 27 Oct 2023 12: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=AA2W=GJ=casper.srs.infradead.org=BATV+92d2995e4a7c3d3365be+7369+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qwLYD-0001XS-1i
 for xen-devel@lists.xenproject.org; Fri, 27 Oct 2023 12:02:53 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id c108017b-74c0-11ee-98d6-6d05b1d4d9a1;
 Fri, 27 Oct 2023 14:02:52 +0200 (CEST)
Received: from [2001:8b0:10b:5:a059:f7a9:933a:2236]
 (helo=u3832b3a9db3152.ant.amazon.com)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qwLY8-003HdW-Af; Fri, 27 Oct 2023 12: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>
X-Inumbo-ID: c108017b-74c0-11ee-98d6-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=MIME-Version:Content-Type:References:
	In-Reply-To:Date:Cc:To:From:Subject:Message-ID:Sender:Reply-To:
	Content-Transfer-Encoding:Content-ID:Content-Description;
	bh=xbyOrQ9050h9MAoHON7t0yBFDvlRtikljfzvgpDlS5Q=; b=p+g4Ef6ShSjHTgCd2R9gQAyDRQ
	JQvbiCt5jRM9oiI9mj42/ecATMUQnKbnY22xn+4EqIIt62sscqJWQhUJ/+yDvB/NeJoNEG7PZ7d0o
	QfRwS9hT0Zuv20ex9C2a7TZIZNmPvjWqGFTjzF3VHVQArBgJYuuuFkFSUFSE7tab5IViq3ME0jIqc
	O63DeZXRCnJiUcMEnN6r9N80+U/snK/fnlTE1hCaOSwgDo0TGNXxKw8KwwXyH8tkJxM9hzinF/5D1
	eB8cOk1QzGbWQ4pAmiSegyR411z/LTRYTeR72mzaiVLL2WrJdLKF91zQyDL99ddRNd5vDMEfub8Mp
	vwxwvaow==;
Message-ID: <31acd48a13b3e198a025da1add7d8f7253f262ba.camel@infradead.org>
Subject: Re: [PATCH v3 13/28] hw/xen: automatically assign device index to
 block devices
From: David Woodhouse <dwmw2@infradead.org>
To: paul@xen.org, qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>, Hanna Reitz <hreitz@redhat.com>, Stefano
 Stabellini <sstabellini@kernel.org>, Anthony Perard
 <anthony.perard@citrix.com>,  =?ISO-8859-1?Q?Marc-Andr=E9?= Lureau
 <marcandre.lureau@redhat.com>, Paolo Bonzini <pbonzini@redhat.com>,
 "Michael S. Tsirkin" <mst@redhat.com>, Marcel Apfelbaum
 <marcel.apfelbaum@gmail.com>, Richard Henderson
 <richard.henderson@linaro.org>, Eduardo Habkost <eduardo@habkost.net>,
 Jason Wang <jasowang@redhat.com>, Marcelo Tosatti <mtosatti@redhat.com>,
 qemu-block@nongnu.org,  xen-devel@lists.xenproject.org,
 kvm@vger.kernel.org, Bernhard Beschow <shentey@gmail.com>, Joel Upham
 <jupham125@gmail.com>
Date: Fri, 27 Oct 2023 13:02:45 +0100
In-Reply-To: <c538ea45-dac7-49f3-ad50-8c3a59755dee@gmail.com>
References: <20231025145042.627381-1-dwmw2@infradead.org>
	 <20231025145042.627381-14-dwmw2@infradead.org>
	 <74e54da5-9c35-485d-a13c-efac3f81dec2@gmail.com>
	 <f72e2e7feed3ecf17af8ab8442c359eea329ef17.camel@infradead.org>
	 <9fb67e52-f262-4cf4-91c2-a42411ba21c4@gmail.com>
	 <b6458e730fd861243f534e33a48a857122e77ed5.camel@infradead.org>
	 <c538ea45-dac7-49f3-ad50-8c3a59755dee@gmail.com>
Content-Type: multipart/signed; micalg="sha-256"; protocol="application/pkcs7-signature";
	boundary="=-x8BOGq/ESRm/cDp9nNRD"
User-Agent: Evolution 3.44.4-0ubuntu2 
MIME-Version: 1.0
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html


--=-x8BOGq/ESRm/cDp9nNRD
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Fri, 2023-10-27 at 11:32 +0100, Durrant, Paul wrote:
> On 27/10/2023 11:25, David Woodhouse wrote:
> > On Fri, 2023-10-27 at 10:01 +0100, Durrant, Paul wrote:
> > >=20
> > > This code is allocating a name automatically so I think the onus is o=
n
> > > it not create a needless clash which is likely to have unpredictable
> > > results depending on what the guest is. Just avoid any aliasing in th=
e
> > > first place and things will be fine.
> >=20
> >=20
> > Yeah, fair enough. In which case I'll probably switch to using
> > xs_directory() and then processing those results to find a free slot,
> > instead of going out to XenStore for every existence check.
> >=20
> > This isn't exactly fast path and I'm prepared to tolerate a little bit
> > of O(n=C2=B2), but only within reason :)
>=20
> Yes, doing an xs_directory() and then using the code=20
> xen_block_get_vdev() to populate a list of existent disks will be neater.

diff --git a/hw/block/xen-block.c b/hw/block/xen-block.c
index 5011fe9430..9b7d7ef7e1 100644
--- a/hw/block/xen-block.c
+++ b/hw/block/xen-block.c
@@ -30,48 +30,105 @@
 #include "hw/xen/interface/io/xs_wire.h"
 #include "trace.h"
=20
-static char *xen_block_get_name(XenDevice *xendev, Error **errp)
+#define XVDA_MAJOR 202
+#define XVDQ_MAJOR (1<<20)
+#define XVDBGQCV_MAJOR ((1<<21) - 1)
+#define HDA_MAJOR 3
+#define HDC_MAJOR 22
+#define SDA_MAJOR 8
+
+/*
+ * This is fairly arbitrary just to avoid a stupidly sized bitmap, but Lin=
ux
+ * as of v6.6 only supports up to /dev/xvdfan (disk 4095) anyway.
+ */
+#define MAX_AUTO_VDEV 4096
+
+static int vdev_to_diskno(unsigned int vdev_nr)
 {
-    XenBlockDevice *blockdev =3D XEN_BLOCK_DEVICE(xendev);
+    switch (vdev_nr >> 8) {
+    case XVDA_MAJOR:
+    case SDA_MAJOR:
+        return (vdev_nr >> 4) & 0x15;
+
+    case HDA_MAJOR:
+        return (vdev_nr >> 6) & 1;
+
+    case HDC_MAJOR:
+        return ((vdev_nr >> 6) & 1) + 2;
+
+    case XVDQ_MAJOR ... XVDBGQCV_MAJOR:
+        return (vdev_nr >> 8) & 0xfffff;
+
+    default:
+        return -1;
+    }
+}
+
+static bool xen_block_find_free_vdev(XenBlockDevice *blockdev, Error **err=
p)
+{
+    XenBus *xenbus =3D XEN_BUS(qdev_get_parent_bus(DEVICE(blockdev)));
+    unsigned long used_devs[BITS_TO_LONGS(MAX_AUTO_VDEV)];
     XenBlockVdev *vdev =3D &blockdev->props.vdev;
+    char fe_path[XENSTORE_ABS_PATH_MAX + 1];
+    char **existing_frontends;
+    unsigned int nr_existing =3D 0;
+    unsigned int vdev_nr;
+    int i, disk =3D 0;
+
+    snprintf(fe_path, sizeof(fe_path), "/local/domain/%u/device/vbd",
+             blockdev->xendev.frontend_id);
+
+    existing_frontends =3D qemu_xen_xs_directory(xenbus->xsh, XBT_NULL, fe=
_path,
+                                               &nr_existing);
+    if (!existing_frontends && errno !=3D ENOENT) {
+        error_setg_errno(errp, errno, "cannot read %s", fe_path);
+        return false;
+    }
=20
-    if (blockdev->props.vdev.type =3D=3D XEN_BLOCK_VDEV_TYPE_INVALID) {
-        XenBus *xenbus =3D XEN_BUS(qdev_get_parent_bus(DEVICE(xendev)));
-        char fe_path[XENSTORE_ABS_PATH_MAX + 1];
-        char *value;
-        int disk =3D 0;
-        unsigned long idx;
-
-        /* Find an unoccupied device name */
-        while (disk < (1 << 20)) {
-            if (disk < (1 << 4)) {
-                idx =3D (202 << 8) | (disk << 4);
-            } else {
-                idx =3D (1 << 28) | (disk << 8);
-            }
-            snprintf(fe_path, sizeof(fe_path),
-                     "/local/domain/%u/device/vbd/%lu",
-                     xendev->frontend_id, idx);
-            value =3D qemu_xen_xs_read(xenbus->xsh, XBT_NULL, fe_path, NUL=
L);
-            if (!value) {
-                if (errno =3D=3D ENOENT) {
-                    vdev->type =3D XEN_BLOCK_VDEV_TYPE_XVD;
-                    vdev->partition =3D 0;
-                    vdev->disk =3D disk;
-                    vdev->number =3D idx;
-                    goto found;
-                }
-                error_setg(errp, "cannot read %s: %s", fe_path,
-                           strerror(errno));
-                return NULL;
-            }
-            free(value);
-            disk++;
+    memset(used_devs, 0, sizeof(used_devs));
+    for (i =3D 0; i < nr_existing; i++) {
+        if (qemu_strtoui(existing_frontends[i], NULL, 10, &vdev_nr)) {
+            free(existing_frontends[i]);
+            continue;
         }
+
+        free(existing_frontends[i]);
+
+        disk =3D vdev_to_diskno(vdev_nr);
+        if (disk < 0 || disk >=3D MAX_AUTO_VDEV) {
+            continue;
+        }
+
+        set_bit(disk, used_devs);
+    }
+    free(existing_frontends);
+
+    disk =3D find_first_zero_bit(used_devs, MAX_AUTO_VDEV);
+    if (disk =3D=3D MAX_AUTO_VDEV) {
         error_setg(errp, "cannot find device vdev for block device");
+        return false;
+    }
+
+    vdev->type =3D XEN_BLOCK_VDEV_TYPE_XVD;
+    vdev->partition =3D 0;
+    vdev->disk =3D disk;
+    if (disk < (1 << 4)) {
+        vdev->number =3D (XVDA_MAJOR << 8) | (disk << 4);
+    } else {
+        vdev->number =3D (XVDQ_MAJOR << 8) | (disk << 8);
+    }
+    return true;
+}
+
+static char *xen_block_get_name(XenDevice *xendev, Error **errp)
+{
+    XenBlockDevice *blockdev =3D XEN_BLOCK_DEVICE(xendev);
+    XenBlockVdev *vdev =3D &blockdev->props.vdev;
+
+    if (vdev->type =3D=3D XEN_BLOCK_VDEV_TYPE_INVALID &&
+        !xen_block_find_free_vdev(blockdev, errp)) {
         return NULL;
     }
- found:
     return g_strdup_printf("%lu", vdev->number);
 }
=20
@@ -520,10 +577,10 @@ static void xen_block_set_vdev(Object *obj, Visitor *=
v, const char *name,
     case XEN_BLOCK_VDEV_TYPE_DP:
     case XEN_BLOCK_VDEV_TYPE_XVD:
         if (vdev->disk < (1 << 4) && vdev->partition < (1 << 4)) {
-            vdev->number =3D (202 << 8) | (vdev->disk << 4) |
+            vdev->number =3D (XVDA_MAJOR << 8) | (vdev->disk << 4) |
                 vdev->partition;
         } else if (vdev->disk < (1 << 20) && vdev->partition < (1 << 8)) {
-            vdev->number =3D (1 << 28) | (vdev->disk << 8) |
+            vdev->number =3D (XVDQ_MAJOR << 8) | (vdev->disk << 8) |
                 vdev->partition;
         } else {
             goto invalid;
@@ -533,10 +590,10 @@ static void xen_block_set_vdev(Object *obj, Visitor *=
v, const char *name,
     case XEN_BLOCK_VDEV_TYPE_HD:
         if ((vdev->disk =3D=3D 0 || vdev->disk =3D=3D 1) &&
             vdev->partition < (1 << 6)) {
-            vdev->number =3D (3 << 8) | (vdev->disk << 6) | vdev->partitio=
n;
+            vdev->number =3D (HDA_MAJOR << 8) | (vdev->disk << 6) | vdev->=
partition;
         } else if ((vdev->disk =3D=3D 2 || vdev->disk =3D=3D 3) &&
                    vdev->partition < (1 << 6)) {
-            vdev->number =3D (22 << 8) | ((vdev->disk - 2) << 6) |
+            vdev->number =3D (HDC_MAJOR << 8) | ((vdev->disk - 2) << 6) |
                 vdev->partition;
         } else {
             goto invalid;
@@ -545,7 +602,7 @@ static void xen_block_set_vdev(Object *obj, Visitor *v,=
 const char *name,
=20
     case XEN_BLOCK_VDEV_TYPE_SD:
         if (vdev->disk < (1 << 4) && vdev->partition < (1 << 4)) {
-            vdev->number =3D (8 << 8) | (vdev->disk << 4) | vdev->partitio=
n;
+            vdev->number =3D (SDA_MAJOR << 8) | (vdev->disk << 4) | vdev->=
partition;
         } else {
             goto invalid;
         }


--=-x8BOGq/ESRm/cDp9nNRD
Content-Type: application/pkcs7-signature; name="smime.p7s"
Content-Disposition: attachment; filename="smime.p7s"
Content-Transfer-Encoding: base64

MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgEFADCABgkqhkiG9w0BBwEAAKCCEkQw
ggYQMIID+KADAgECAhBNlCwQ1DvglAnFgS06KwZPMA0GCSqGSIb3DQEBDAUAMIGIMQswCQYDVQQG
EwJVUzETMBEGA1UECBMKTmV3IEplcnNleTEUMBIGA1UEBxMLSmVyc2V5IENpdHkxHjAcBgNVBAoT
FVRoZSBVU0VSVFJVU1QgTmV0d29yazEuMCwGA1UEAxMlVVNFUlRydXN0IFJTQSBDZXJ0aWZpY2F0
aW9uIEF1dGhvcml0eTAeFw0xODExMDIwMDAwMDBaFw0zMDEyMzEyMzU5NTlaMIGWMQswCQYDVQQG
EwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYD
VQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50
aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC
AQEAyjztlApB/975Rrno1jvm2pK/KxBOqhq8gr2+JhwpKirSzZxQgT9tlC7zl6hn1fXjSo5MqXUf
ItMltrMaXqcESJuK8dtK56NCSrq4iDKaKq9NxOXFmqXX2zN8HHGjQ2b2Xv0v1L5Nk1MQPKA19xeW
QcpGEGFUUd0kN+oHox+L9aV1rjfNiCj3bJk6kJaOPabPi2503nn/ITX5e8WfPnGw4VuZ79Khj1YB
rf24k5Ee1sLTHsLtpiK9OjG4iQRBdq6Z/TlVx/hGAez5h36bBJMxqdHLpdwIUkTqT8se3ed0PewD
ch/8kHPo5fZl5u1B0ecpq/sDN/5sCG52Ds+QU5O5EwIDAQABo4IBZDCCAWAwHwYDVR0jBBgwFoAU
U3m/WqorSs9UgOHYm8Cd8rIDZsswHQYDVR0OBBYEFAnA8vwL2pTbX/4r36iZQs/J4K0AMA4GA1Ud
DwEB/wQEAwIBhjASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEF
BQcDBDARBgNVHSAECjAIMAYGBFUdIAAwUAYDVR0fBEkwRzBFoEOgQYY/aHR0cDovL2NybC51c2Vy
dHJ1c3QuY29tL1VTRVJUcnVzdFJTQUNlcnRpZmljYXRpb25BdXRob3JpdHkuY3JsMHYGCCsGAQUF
BwEBBGowaDA/BggrBgEFBQcwAoYzaHR0cDovL2NydC51c2VydHJ1c3QuY29tL1VTRVJUcnVzdFJT
QUFkZFRydXN0Q0EuY3J0MCUGCCsGAQUFBzABhhlodHRwOi8vb2NzcC51c2VydHJ1c3QuY29tMA0G
CSqGSIb3DQEBDAUAA4ICAQBBRHUAqznCFfXejpVtMnFojADdF9d6HBA4kMjjsb0XMZHztuOCtKF+
xswhh2GqkW5JQrM8zVlU+A2VP72Ky2nlRA1GwmIPgou74TZ/XTarHG8zdMSgaDrkVYzz1g3nIVO9
IHk96VwsacIvBF8JfqIs+8aWH2PfSUrNxP6Ys7U0sZYx4rXD6+cqFq/ZW5BUfClN/rhk2ddQXyn7
kkmka2RQb9d90nmNHdgKrwfQ49mQ2hWQNDkJJIXwKjYA6VUR/fZUFeCUisdDe/0ABLTI+jheXUV1
eoYV7lNwNBKpeHdNuO6Aacb533JlfeUHxvBz9OfYWUiXu09sMAviM11Q0DuMZ5760CdO2VnpsXP4
KxaYIhvqPqUMWqRdWyn7crItNkZeroXaecG03i3mM7dkiPaCkgocBg0EBYsbZDZ8bsG3a08LwEsL
1Ygz3SBsyECa0waq4hOf/Z85F2w2ZpXfP+w8q4ifwO90SGZZV+HR/Jh6rEaVPDRF/CEGVqR1hiuQ
OZ1YL5ezMTX0ZSLwrymUE0pwi/KDaiYB15uswgeIAcA6JzPFf9pLkAFFWs1QNyN++niFhsM47qod
x/PL+5jR87myx5uYdBEQkkDc+lKB1Wct6ucXqm2EmsaQ0M95QjTmy+rDWjkDYdw3Ms6mSWE3Bn7i
5ZgtwCLXgAIe5W8mybM2JzCCBhQwggT8oAMCAQICEQDGvhmWZ0DEAx0oURL6O6l+MA0GCSqGSIb3
DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYD
VQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28g
UlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMB4XDTIyMDEwNzAw
MDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJARYTZHdtdzJAaW5mcmFkZWFkLm9y
ZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3GpC2bomUqk+91wLYBzDMcCj5C9m6
oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZHh7htyAkWYVoFsFPrwHounto8xTsy
SSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT9YgcBqKCo65pTFmOnR/VVbjJk4K2
xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNjP+qDrh0db7PAjO1D4d5ftfrsf+kd
RR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy2U+eITZ5LLE5s45mX2oPFknWqxBo
bQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3BgBEmfsYWlBXO8rVXfvPgLs32VdV
NZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/7auNVRmPB3v5SWEsH8xi4Bez2V9U
KxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmdlFYhAflWKQ03Ufiu8t3iBE3VJbc2
5oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9aelIl6vtbhMA+l0nfrsORMa4kobqQ5
C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMBAAGjggHMMIIByDAfBgNVHSMEGDAW
gBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeDMcimo0oz8o1R1Nver3ZVpSkwDgYD
VR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYwFAYIKwYBBQUHAwQGCCsGAQUFBwMC
MEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYBBQUHAgEWF2h0dHBzOi8vc2VjdGln
by5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9jcmwuc2VjdGlnby5jb20vU2VjdGln
b1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1haWxDQS5jcmwwgYoGCCsGAQUFBwEB
BH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdvLmNvbS9TZWN0aWdvUlNBQ2xpZW50
QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAjBggrBgEFBQcwAYYXaHR0cDovL29j
c3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5mcmFkZWFkLm9yZzANBgkqhkiG9w0B
AQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQvQ/fzPXmtR9t54rpmI2TfyvcKgOXp
qa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvIlSPrzIB4Z2wyIGQpaPLlYflrrVFK
v9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9ChWFfgSXvrWDZspnU3Gjw/rMHrGnql
Htlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0whpBtXdyDjzBtQTaZJ7zTT/vlehc/
tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9IzCCBhQwggT8oAMCAQICEQDGvhmW
Z0DEAx0oURL6O6l+MA0GCSqGSIb3DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3Jl
YXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0
ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJl
IEVtYWlsIENBMB4XDTIyMDEwNzAwMDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJ
ARYTZHdtdzJAaW5mcmFkZWFkLm9yZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3
GpC2bomUqk+91wLYBzDMcCj5C9m6oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZH
h7htyAkWYVoFsFPrwHounto8xTsySSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT
9YgcBqKCo65pTFmOnR/VVbjJk4K2xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNj
P+qDrh0db7PAjO1D4d5ftfrsf+kdRR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy
2U+eITZ5LLE5s45mX2oPFknWqxBobQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3
BgBEmfsYWlBXO8rVXfvPgLs32VdVNZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/
7auNVRmPB3v5SWEsH8xi4Bez2V9UKxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmd
lFYhAflWKQ03Ufiu8t3iBE3VJbc25oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9ae
lIl6vtbhMA+l0nfrsORMa4kobqQ5C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMB
AAGjggHMMIIByDAfBgNVHSMEGDAWgBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeD
Mcimo0oz8o1R1Nver3ZVpSkwDgYDVR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYw
FAYIKwYBBQUHAwQGCCsGAQUFBwMCMEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYB
BQUHAgEWF2h0dHBzOi8vc2VjdGlnby5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9j
cmwuc2VjdGlnby5jb20vU2VjdGlnb1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1h
aWxDQS5jcmwwgYoGCCsGAQUFBwEBBH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdv
LmNvbS9TZWN0aWdvUlNBQ2xpZW50QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAj
BggrBgEFBQcwAYYXaHR0cDovL29jc3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5m
cmFkZWFkLm9yZzANBgkqhkiG9w0BAQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQv
Q/fzPXmtR9t54rpmI2TfyvcKgOXpqa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvI
lSPrzIB4Z2wyIGQpaPLlYflrrVFKv9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9Ch
WFfgSXvrWDZspnU3Gjw/rMHrGnqlHtlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0w
hpBtXdyDjzBtQTaZJ7zTT/vlehc/tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9
IzGCBMcwggTDAgEBMIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVz
dGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMT
NVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEA
xr4ZlmdAxAMdKFES+jupfjANBglghkgBZQMEAgEFAKCCAeswGAYJKoZIhvcNAQkDMQsGCSqGSIb3
DQEHATAcBgkqhkiG9w0BCQUxDxcNMjMxMDI3MTIwMjQ1WjAvBgkqhkiG9w0BCQQxIgQgy6jZIEVn
ttaZcN5FM5XBjbNwWd/MX+hlAaS0WhMuzaMwgb0GCSsGAQQBgjcQBDGBrzCBrDCBljELMAkGA1UE
BhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEYMBYG
A1UEChMPU2VjdGlnbyBMaW1pdGVkMT4wPAYDVQQDEzVTZWN0aWdvIFJTQSBDbGllbnQgQXV0aGVu
dGljYXRpb24gYW5kIFNlY3VyZSBFbWFpbCBDQQIRAMa+GZZnQMQDHShREvo7qX4wgb8GCyqGSIb3
DQEJEAILMYGvoIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVy
MRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNl
Y3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEAxr4Z
lmdAxAMdKFES+jupfjANBgkqhkiG9w0BAQEFAASCAgCMYXqkqgZsdFMHIMkBhqcvK/8acgkyKqTW
eosVHutNWGf9mmit54r3qRhGCsxZeUex/K6/LeFbgYkw0afPWUsP6+tAQbuBou6UqcHjonpOkJ+0
8ig9NGJ/R8wS6xWrV9xpipflHil78T2Q6uXiCZjXr7gPtIVFI4rdkxW4WNdhCSt0iVstCUMTTqo1
wSc22LnCXhRkjwJUb2XnMTpQbQ8D6sEhx/r+aOplZwhDRltkxnW7bcYBHdhiM7P/rCh1pUHcbqV6
0rAFSL+eSlpTj89hzd/CNNbe17JBwQKZlFj8HWaGocR+F0Vsn3PEkizaDXYFxw5x+gVuQyi4cSiI
D6U/AJuXA2Pv2gou4klFKYbvQQtQCnG811udwUA4MMVZNw2OrMTqex21MzY+hR3LKWd3onNMb9ZN
Ap5a6KKkhBhbK6yhQKjoFSg16HEhHNzOsONze92z0L+P82GyjsRlmXgYrdSErW4CBrwgSh28k5gf
mMakB/GRgGirvgCs/uFv5uXXgeXXcttoq3itZQsf2v/26BneNlMwrdsqSdd5k7jUoRUOTwMVHvw1
eWIB6USIFRbudKhd9nx5dPMpd1i2wx/DKZHdRFVaVuWvsa1vMdtnjhb+lQrKhao0kDpIzn8TIoOs
5uQfwiKt7EItb/Gbx/Uc9HY3uuZheckYX/jsyloYyQAAAAAAAA==


--=-x8BOGq/ESRm/cDp9nNRD--


From xen-devel-bounces@lists.xenproject.org Fri Oct 27 12:48:59 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 27 Oct 2023 12:48:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624373.972889 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qwMGc-0000xh-Hp; Fri, 27 Oct 2023 12:48:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624373.972889; Fri, 27 Oct 2023 12:48: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 1qwMGc-0000xa-Cu; Fri, 27 Oct 2023 12:48:46 +0000
Received: by outflank-mailman (input) for mailman id 624373;
 Fri, 27 Oct 2023 12:48: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=SHDA=GJ=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qwMGa-0000xU-4x
 for xen-devel@lists.xenproject.org; Fri, 27 Oct 2023 12:48:44 +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 28e5f9c7-74c7-11ee-98d6-6d05b1d4d9a1;
 Fri, 27 Oct 2023 14:48:42 +0200 (CEST)
Received: by mail-lj1-x234.google.com with SMTP id
 38308e7fff4ca-2c5b7764016so12203871fa.1
 for <xen-devel@lists.xenproject.org>; Fri, 27 Oct 2023 05:48: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
 z11-20020aa7d40b000000b0053e4d1cbc6esm1174637edq.55.2023.10.27.05.48.41
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Fri, 27 Oct 2023 05:48: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: 28e5f9c7-74c7-11ee-98d6-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1698410922; x=1699015722; darn=lists.xenproject.org;
        h=content-transfer-encoding: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=/OYmHso842cNG3tpnPG1jYeaRNeKUNloXejkuAtUOpc=;
        b=SSXg+1dU9KEV/XRrBBi4V2o4KFmG0tx5ZY+YzkUVhW91t5z9bK/gfpYgcI/HYS9Dl1
         9tzfpsB4GYl2rki0PiZ4cV4JQ7oWf0TOGss7jH5ah1n4mgJM7uGoO5q7IwPvx96wZLoI
         f/YbaNjfZ7LMzJFZtaXQpbXZLavfqdmUcj28A=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698410922; x=1699015722;
        h=content-transfer-encoding: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=/OYmHso842cNG3tpnPG1jYeaRNeKUNloXejkuAtUOpc=;
        b=ZfkrH+HdfyMOQJxMLjtu6Irj4sMKRdPN9cubOXHKugxlVrYeBepQ+o6QzxXCJTyjHD
         vSKJYj23Cu0pm+aYDaCkHIXhm8pq/P1fz+qfrjcB5EWSYu+cBJgY66mec/E6nKfDzINa
         pLVMNMKOeNPlomg5H5DS4WaioSdsnjHin4o4PN6cnMjfCX10xOTbHkruM6C2dic0OA1W
         UOhZXSEHTQy0C0b+WPZz/Veai3a8i3ZCSlYtkaC403MDJYeU7aniZysw/EWpSi6Kr6sw
         K07SfWdlTpw3F8gqa7kFCYx91hgJExcMnIMUKVLpmfAtoghVeOVwAlerujXyaJHAKIno
         IebA==
X-Gm-Message-State: AOJu0YzZQfmUjjxvD0EpYOdzvE4IfTp0KmAAVr+H5Y+eGXfs6GWsS9r9
	pXp8zp7lwke2Muq9hPagdkMaxg==
X-Google-Smtp-Source: AGHT+IHRKg4bFW47WyR8OLdnqV+VQt1gCdtmpX3tXy9i6dBu1Krjl015EWoib9KzOOQEZLQY0fi5Jg==
X-Received: by 2002:a05:6512:60e:b0:503:55c:7999 with SMTP id b14-20020a056512060e00b00503055c7999mr1696542lfe.34.1698410922421;
        Fri, 27 Oct 2023 05:48:42 -0700 (PDT)
Message-ID: <2cf3c866-c8c6-482e-8b5c-00ed2158b105@citrix.com>
Date: Fri, 27 Oct 2023 13:48:41 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH v2 2/2] x86/Kconfig: Introduce CONFIG_{AMD,INTEL} and
 conditionalise ucode
Content-Language: en-GB
To: Jan Beulich <jbeulich@suse.com>, =?UTF-8?Q?Roger_Pau_Monn=C3=A9?=
 <roger.pau@citrix.com>
Cc: Wei Liu <wl@xen.org>, Alejandro Vallejo <alejandro.vallejo@cloud.com>,
 Stefano Stabellini <stefano.stabellini@amd.com>,
 Xenia Ragiadakou <xenia.ragiadakou@amd.com>,
 Xen-devel <xen-devel@lists.xenproject.org>
References: <20231026205539.3261811-1-andrew.cooper3@citrix.com>
 <20231026205539.3261811-3-andrew.cooper3@citrix.com>
 <70472259-6429-e60f-7cdc-faa50b2d257f@suse.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: <70472259-6429-e60f-7cdc-faa50b2d257f@suse.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 27/10/2023 8:12 am, Jan Beulich wrote:
> On 26.10.2023 22:55, Andrew Cooper wrote:
>> v2:
>>  * Tweak text
> What about the indentation issues mentioned in reply to v1?

Bah, slipped my mind.  Sorry.

Fixed up locally.

~Andrew


From xen-devel-bounces@lists.xenproject.org Fri Oct 27 12:57:58 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 27 Oct 2023 12:57:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624371.972898 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qwMPS-00030m-B6; Fri, 27 Oct 2023 12:57:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624371.972898; Fri, 27 Oct 2023 12: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 1qwMPS-00030f-8H; Fri, 27 Oct 2023 12:57:54 +0000
Received: by outflank-mailman (input) for mailman id 624371;
 Fri, 27 Oct 2023 12:31: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=rgxb=GJ=users.sourceforge.jp=ysato@srs-se1.protection.inumbo.net>)
 id 1qwM0M-0007Cv-T6
 for xen-devel@lists.xenproject.org; Fri, 27 Oct 2023 12:31:58 +0000
Received: from hsmtpd-def.xspmail.jp (hsmtpd-def.xspmail.jp [202.238.198.240])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id d02a24ac-74c4-11ee-98d6-6d05b1d4d9a1;
 Fri, 27 Oct 2023 14:31:57 +0200 (CEST)
Received: from sakura.ysato.name (ik1-413-38519.vs.sakura.ne.jp
 [153.127.30.23])
 by hsmtpd-out-0.asahinet.cluster.xspmail.jp (Halon) with ESMTPA
 id cf9071da-cfc2-430a-aae8-d12cacb28888;
 Fri, 27 Oct 2023 21:31:54 +0900 (JST)
Received: from SIOS1075.ysato.ml (ZM005235.ppp.dion.ne.jp [222.8.5.235])
 by sakura.ysato.name (Postfix) with ESMTPSA id 755761C0037;
 Fri, 27 Oct 2023 21:31:45 +0900 (JST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: d02a24ac-74c4-11ee-98d6-6d05b1d4d9a1
X-Country-Code: JP
Date: Fri, 27 Oct 2023 21:31:44 +0900
Message-ID: <87sf5wi6vj.wl-ysato@users.sourceforge.jp>
From: Yoshinori Sato <ysato@users.sourceforge.jp>
To: David Woodhouse <dwmw2@infradead.org>
Cc: qemu-devel@nongnu.org,	Richard Henderson <richard.henderson@linaro.org>,
	Beniamino Galvani <b.galvani@gmail.com>,	Peter Maydell
 <peter.maydell@linaro.org>,	Strahinja Jankovic
 <strahinja.p.jankovic@gmail.com>,	Niek Linnenbank
 <nieklinnenbank@gmail.com>,	=?ISO-8859-1?Q?C=E9dric?= Le Goater
 <clg@kaod.org>,	Andrew Jeffery <andrew@aj.id.au>,	Joel Stanley
 <joel@jms.id.au>,	Igor Mitsyanko <i.mitsyanko@gmail.com>,	Jean-Christophe
 Dubois <jcd@tribudubois.net>,	Andrey Smirnov <andrew.smirnov@gmail.com>,
	Philippe =?ISO-8859-1?Q?Mathieu-Daud=E9?= <philmd@linaro.org>,	Rob Herring
 <robh@kernel.org>,	Subbaraya Sundeep <sundeep.lkml@gmail.com>,	Jan Kiszka
 <jan.kiszka@web.de>,	Tyrone Ting <kfting@nuvoton.com>,	Hao Wu
 <wuhaotsh@google.com>,	Radoslaw Biernacki <rad@semihalf.com>,	Leif Lindholm
 <quic_llindhol@quicinc.com>,	Marcin Juszkiewicz
 <marcin.juszkiewicz@linaro.org>,	"Edgar E. Iglesias"
 <edgar.iglesias@gmail.com>,	Alistair Francis <alistair@alistair23.me>,
	Helge Deller <deller@gmx.de>,	Paolo Bonzini <pbonzini@redhat.com>,	Eduardo
 Habkost <eduardo@habkost.net>,	"Michael S. Tsirkin" <mst@redhat.com>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,	Song Gao
 <gaosong@loongson.cn>,	Thomas Huth <huth@tuxfamily.org>,	Laurent Vivier
 <laurent@vivier.eu>,	Huacai Chen <chenhuacai@kernel.org>,	Jiaxun Yang
 <jiaxun.yang@flygoat.com>,	=?ISO-8859-1?Q?Herv=E9?= Poussineau
 <hpoussin@reactos.org>,	Aleksandar Rikalo <aleksandar.rikalo@syrmia.com>,
	Aurelien Jarno <aurelien@aurel32.net>,	Jason Wang <jasowang@redhat.com>,
	Jia Liu <proljc@gmail.com>,	Stafford Horne <shorne@gmail.com>,	Mark
 Cave-Ayland <mark.cave-ayland@ilande.co.uk>,	Nicholas Piggin
 <npiggin@gmail.com>,	Daniel Henrique Barboza <danielhb413@gmail.com>,	David
 Gibson <david@gibson.dropbear.id.au>,	Harsh Prateek Bora
 <harshpb@linux.ibm.com>,	Bin Meng <bin.meng@windriver.com>,	Palmer Dabbelt
 <palmer@dabbelt.com>,	Weiwei Li <liweiwei@iscas.ac.cn>,	Liu Zhiwei
 <zhiwei_liu@linux.alibaba.com>,	David Hildenbrand <david@redhat.com>,	Ilya
 Leoshkevich <iii@linux.ibm.com>,	Halil Pasic <pasic@linux.ibm.com>,
	Christian Borntraeger <borntraeger@linux.ibm.com>,	Eric Farman
 <farman@linux.ibm.com>,	Magnus Damm <magnus.damm@gmail.com>,	Artyom
 Tarasenko <atar4qemu@gmail.com>,	Stefano Stabellini
 <sstabellini@kernel.org>,	Anthony Perard <anthony.perard@citrix.com>,	Paul
 Durrant <paul@xen.org>,	Max Filippov <jcmvbkbc@gmail.com>,
	qemu-arm@nongnu.org,	qemu-ppc@nongnu.org,	qemu-riscv@nongnu.org,
	qemu-s390x@nongnu.org,	xen-devel@lists.xenproject.org
Subject: Re: [PATCH 18/45] hw/sh4/r2d: use pci_init_nic_devices()
In-Reply-To: <20231022155200.436340-19-dwmw2@infradead.org>
References: <20231022155200.436340-1-dwmw2@infradead.org>
	<20231022155200.436340-19-dwmw2@infradead.org>
User-Agent: Wanderlust/2.15.9 (Almost Unreal) SEMI-EPG/1.14.7 (Harue)
 FLIM-LB/1.14.9 (=?ISO-8859-4?Q?Goj=F2?=) APEL-LB/10.8 EasyPG/1.0.0
 Emacs/28.2 (x86_64-pc-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

On Mon, 23 Oct 2023 00:51:33 +0900,
David Woodhouse wrote:
> 
> From: David Woodhouse <dwmw@amazon.co.uk>
> 
> Previously, the first PCI NIC would be assigned to slot 2 even if the
> user override the model and made it something other than an rtl8139
> which is the default. Everything else would be dynamically assigned.
> 
> Now, the first rtl8139 gets slot 2 and everything else is dynamic.
> 
> Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
Reviewed-by: Yoshinori Sato <ysato@users.sourceforge.jp>

> ---
>  hw/sh4/r2d.c | 6 ++----
>  1 file changed, 2 insertions(+), 4 deletions(-)
> 
> diff --git a/hw/sh4/r2d.c b/hw/sh4/r2d.c
> index 4944994e9c..e9f316a6ce 100644
> --- a/hw/sh4/r2d.c
> +++ b/hw/sh4/r2d.c
> @@ -240,7 +240,6 @@ static void r2d_init(MachineState *machine)
>      MemoryRegion *sdram = g_new(MemoryRegion, 1);
>      qemu_irq *irq;
>      DriveInfo *dinfo;
> -    int i;
>      DeviceState *dev;
>      SysBusDevice *busdev;
>      MemoryRegion *address_space_mem = get_system_memory();
> @@ -309,9 +308,8 @@ static void r2d_init(MachineState *machine)
>                            0x555, 0x2aa, 0);
>  
>      /* NIC: rtl8139 on-board, and 2 slots. */
> -    for (i = 0; i < nb_nics; i++)
> -        pci_nic_init_nofail(&nd_table[i], pci_bus,
> -                            mc->default_nic, i == 0 ? "2" : NULL);
> +    pci_init_nic_in_slot(pci_bus, mc->default_nic, NULL, "2");
> +    pci_init_nic_devices(pci_bus, mc->default_nic);
>  
>      /* USB keyboard */
>      usb_create_simple(usb_bus_find(-1), "usb-kbd");
> -- 
> 2.40.1
> 

-- 
Yosinori Sato


From xen-devel-bounces@lists.xenproject.org Fri Oct 27 13:34:28 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 27 Oct 2023 13:34:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624386.972960 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qwMyp-0001je-Rn; Fri, 27 Oct 2023 13:34:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624386.972960; Fri, 27 Oct 2023 13:34: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 1qwMyp-0001hl-Hs; Fri, 27 Oct 2023 13:34:27 +0000
Received: by outflank-mailman (input) for mailman id 624386;
 Fri, 27 Oct 2023 13:34: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=bjPi=GJ=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qwMyn-0000bB-JI
 for xen-devel@lists.xenproject.org; Fri, 27 Oct 2023 13:34:25 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 8a77846d-74cd-11ee-98d6-6d05b1d4d9a1;
 Fri, 27 Oct 2023 15:34:23 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id D7CB24EE0C8A;
 Fri, 27 Oct 2023 15:34: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: 8a77846d-74cd-11ee-98d6-6d05b1d4d9a1
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>
Subject: [XEN PATCH][for-4.19 v4 6/8] x86/mce: Move MC_NCLASSES into the enum mctelem_class
Date: Fri, 27 Oct 2023 15:34:13 +0200
Message-Id: <6efab48e9340916f23c94baf5c189d1d1c6ab7e6.1698410970.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1698410970.git.nicola.vetrini@bugseng.com>
References: <cover.1698410970.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The definition of MC_NCLASSES contained a violation of MISRA C:2012
Rule 10.1, therefore by moving it as an enumeration constant resolves the
violation and makes it more resilient to possible additions to that enum.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
---
This patch has already been picked up in Andrew's for-next tree.

Note that the use of an enum constant as operand to [ ] and != is allowed
by the Rule.
---
 xen/arch/x86/cpu/mcheck/mctelem.c | 2 --
 xen/arch/x86/cpu/mcheck/mctelem.h | 5 +++--
 2 files changed, 3 insertions(+), 4 deletions(-)

diff --git a/xen/arch/x86/cpu/mcheck/mctelem.c b/xen/arch/x86/cpu/mcheck/mctelem.c
index 329ac20faf96..77a4d1d5ff48 100644
--- a/xen/arch/x86/cpu/mcheck/mctelem.c
+++ b/xen/arch/x86/cpu/mcheck/mctelem.c
@@ -64,8 +64,6 @@ struct mctelem_ent {
 
 #define MC_NENT (MC_URGENT_NENT + MC_NONURGENT_NENT)
 
-#define	MC_NCLASSES		(MC_NONURGENT + 1)
-
 #define	COOKIE2MCTE(c)		((struct mctelem_ent *)(c))
 #define	MCTE2COOKIE(tep)	((mctelem_cookie_t)(tep))
 
diff --git a/xen/arch/x86/cpu/mcheck/mctelem.h b/xen/arch/x86/cpu/mcheck/mctelem.h
index d4eba53ae0e5..21b251847bc0 100644
--- a/xen/arch/x86/cpu/mcheck/mctelem.h
+++ b/xen/arch/x86/cpu/mcheck/mctelem.h
@@ -55,8 +55,9 @@
 typedef struct mctelem_cookie *mctelem_cookie_t;
 
 typedef enum mctelem_class {
-	MC_URGENT,
-	MC_NONURGENT
+    MC_URGENT,
+    MC_NONURGENT,
+    MC_NCLASSES
 } mctelem_class_t;
 
 extern void mctelem_init(unsigned int);
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Fri Oct 27 13:34:28 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 27 Oct 2023 13:34:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624385.972953 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qwMyp-0001dn-Cs; Fri, 27 Oct 2023 13:34:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624385.972953; Fri, 27 Oct 2023 13:34: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 1qwMyp-0001dM-8m; Fri, 27 Oct 2023 13:34:27 +0000
Received: by outflank-mailman (input) for mailman id 624385;
 Fri, 27 Oct 2023 13:34: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=bjPi=GJ=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qwMym-0000bB-JH
 for xen-devel@lists.xenproject.org; Fri, 27 Oct 2023 13:34:24 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 8a0b81b2-74cd-11ee-98d6-6d05b1d4d9a1;
 Fri, 27 Oct 2023 15:34:23 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id 2F1DC4EE0C89;
 Fri, 27 Oct 2023 15:34: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: 8a0b81b2-74cd-11ee-98d6-6d05b1d4d9a1
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>
Subject: [XEN PATCH][for-4.19 v4 5/8] x86/io_apic: address violation of MISRA C:2012 Rule 10.1
Date: Fri, 27 Oct 2023 15:34:12 +0200
Message-Id: <6de2dac3c48426a11841130d14c9d01f383379ef.1698410970.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1698410970.git.nicola.vetrini@bugseng.com>
References: <cover.1698410970.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The definition of IO_APIC_BASE contains a sum of an essentially enum
value (FIX_IO_APIC_BASE_0) that is positive with an index that, in all
instances, is unsigned, therefore the former is cast to unsigned, so that
the operands are of the same essential type.

No functional change.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
Acked-by: Jan Beulich <jbeulich@suse.com>
---
Eventually __fix_to_virt may become an inline function; in that case,
it should retain unsigned int as its parameter type.

Changes in v3:
- style fix
- Add missing S-o-b
---
 xen/arch/x86/include/asm/io_apic.h | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/xen/arch/x86/include/asm/io_apic.h b/xen/arch/x86/include/asm/io_apic.h
index a7e4c9e146de..206bb961c005 100644
--- a/xen/arch/x86/include/asm/io_apic.h
+++ b/xen/arch/x86/include/asm/io_apic.h
@@ -14,9 +14,10 @@
  * Copyright (C) 1997, 1998, 1999, 2000 Ingo Molnar
  */
 
-#define IO_APIC_BASE(idx)                                               \
-    ((volatile uint32_t *)(__fix_to_virt(FIX_IO_APIC_BASE_0 + (idx))    \
-                           + (mp_ioapics[idx].mpc_apicaddr & ~PAGE_MASK)))
+#define IO_APIC_BASE(idx)                                         \
+    ((volatile uint32_t *)                                        \
+     (__fix_to_virt((unsigned int)FIX_IO_APIC_BASE_0 + (idx)) +   \
+                    (mp_ioapics[idx].mpc_apicaddr & ~PAGE_MASK)))
 
 #define IO_APIC_ID(idx) (mp_ioapics[idx].mpc_apicid)
 
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Fri Oct 27 13:34:28 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 27 Oct 2023 13:34:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624381.972913 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qwMyl-0000f0-CJ; Fri, 27 Oct 2023 13:34:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624381.972913; Fri, 27 Oct 2023 13:34: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 1qwMyl-0000eD-6y; Fri, 27 Oct 2023 13:34:23 +0000
Received: by outflank-mailman (input) for mailman id 624381;
 Fri, 27 Oct 2023 13:34: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=bjPi=GJ=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qwMyk-0000bA-Es
 for xen-devel@lists.xenproject.org; Fri, 27 Oct 2023 13:34:22 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 87c98e81-74cd-11ee-9b0e-b553b5be7939;
 Fri, 27 Oct 2023 15:34:19 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id BF64C4EE073E;
 Fri, 27 Oct 2023 15:34: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: 87c98e81-74cd-11ee-9b0e-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>,
	Simone Ballarin <simone.ballarin@bugseng.com>,
	Doug Goldstein <cardoe@cardoe.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>,
	Paul Durrant <paul@xen.org>
Subject: [XEN PATCH][for-4.19 v4 0/8] address violations of MISRA C:2012 Rule 10.1
Date: Fri, 27 Oct 2023 15:34:07 +0200
Message-Id: <cover.1698410970.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The widely-used construct
(x & -x), where x is an unsigned integer quantity represented in 2's complement,
does yield the expected result. Since all architectures that are targets for
compliance do fulfill such requirements, the construct is deemed safe and
deviated.

The use of 'DECLARE_BITMAP(features, IOMMU_FEAT_count);' is deviated, to avoid
harming code readability.

On the contrary, other uses of inappropriate types are changed.

Changes in v3:
- Patch [6/8] has already been picked up in Andrew's for-next tree
Changes in v4:
- s/LOWEST_BIT/ISOLATE_LOW_BIT/

Nicola Vetrini (8):
  xen/include: add macro ISOLATE_LOW_BIT
  arm/bitops: encapsulate violation of MISRA C:2012 Rule 10.1
  xen/pdx: amend definition of PDX_GROUP_COUNT
  x86_64/mm: express macro CNT using ISOLATE_LOW_BIT
  x86/io_apic: address violation of MISRA C:2012 Rule 10.1
  x86/mce: Move MC_NCLASSES into the enum mctelem_class
  xen/types: address Rule 10.1 for DECLARE_BITMAP use
  xen/compat: use BUILD_BUG_ON in CHECK_SIZE macros

 automation/eclair_analysis/ECLAIR/deviations.ecl |  7 +++++++
 docs/misra/deviations.rst                        |  8 ++++++++
 docs/misra/safe.json                             |  8 ++++++++
 xen/arch/arm/include/asm/bitops.h                |  6 ++++--
 xen/arch/x86/cpu/mcheck/mctelem.c                |  2 --
 xen/arch/x86/cpu/mcheck/mctelem.h                |  5 +++--
 xen/arch/x86/include/asm/io_apic.h               |  7 ++++---
 xen/arch/x86/x86_64/mm.c                         | 12 ++++++------
 xen/include/xen/compat.h                         | 16 +++++++++++-----
 xen/include/xen/iommu.h                          |  1 +
 xen/include/xen/macros.h                         | 10 ++++++++--
 xen/include/xen/pdx.h                            |  2 +-
 xen/include/xen/types.h                          |  5 +++++
 13 files changed, 66 insertions(+), 23 deletions(-)

-- 
2.34.1


From xen-devel-bounces@lists.xenproject.org Fri Oct 27 13:34:28 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 27 Oct 2023 13:34:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624383.972938 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qwMym-0001Ii-QW; Fri, 27 Oct 2023 13:34:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624383.972938; Fri, 27 Oct 2023 13:34: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 1qwMym-0001Hn-MI; Fri, 27 Oct 2023 13:34:24 +0000
Received: by outflank-mailman (input) for mailman id 624383;
 Fri, 27 Oct 2023 13:34: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=bjPi=GJ=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qwMyk-0000bA-Lr
 for xen-devel@lists.xenproject.org; Fri, 27 Oct 2023 13:34:22 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 883c68a9-74cd-11ee-9b0e-b553b5be7939;
 Fri, 27 Oct 2023 15:34:19 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id E4EE44EE074E;
 Fri, 27 Oct 2023 15:34: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: 883c68a9-74cd-11ee-9b0e-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>,
	Simone Ballarin <simone.ballarin@bugseng.com>,
	Doug Goldstein <cardoe@cardoe.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Julien Grall <julien@xen.org>,
	Wei Liu <wl@xen.org>
Subject: [XEN PATCH][for-4.19 v4 1/8] xen/include: add macro ISOLATE_LOW_BIT
Date: Fri, 27 Oct 2023 15:34:08 +0200
Message-Id: <dca236bf9199f596bafb35eb48d81adc280d8cca.1698410970.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1698410970.git.nicola.vetrini@bugseng.com>
References: <cover.1698410970.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The purpose of this macro is to encapsulate the well-known expression
'x & -x' that in 2's complement architectures on unsigned integers will
give a mask where only the least significant nonzero bit of 'x' is set,
or 0 if none are set.

A deviation for ECLAIR is also introduced.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
---
Changes in v2:
- rename to LOWEST_BIT
Changes in v3:
- entry for deviations.rst
- comment on the macro defn
Changes in v4:
- Change the macro's name to ISOLATE_LOW_BIT
---
 automation/eclair_analysis/ECLAIR/deviations.ecl |  7 +++++++
 docs/misra/deviations.rst                        |  8 ++++++++
 xen/include/xen/macros.h                         | 10 ++++++++--
 3 files changed, 23 insertions(+), 2 deletions(-)

diff --git a/automation/eclair_analysis/ECLAIR/deviations.ecl b/automation/eclair_analysis/ECLAIR/deviations.ecl
index fa56e5c00a27..139dabc8477f 100644
--- a/automation/eclair_analysis/ECLAIR/deviations.ecl
+++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
@@ -246,6 +246,13 @@ constant expressions are required.\""
   "any()"}
 -doc_end
 
+-doc_begin="The macro ISOLATE_LOW_BIT encapsulates a well-known pattern to obtain
+a mask where only the lowest bit set in the argument is set, if any, for unsigned
+integers arguments on two's complement architectures
+(all the architectures supported by Xen satisfy this requirement)."
+-config=MC3R1.R10.1,reports+={safe, "any_area(any_loc(any_exp(macro(^ISOLATE_LOW_BIT$))))"}
+-doc_end
+
 #
 # Series 13
 #
diff --git a/docs/misra/deviations.rst b/docs/misra/deviations.rst
index 8511a189253b..d76b28279e59 100644
--- a/docs/misra/deviations.rst
+++ b/docs/misra/deviations.rst
@@ -192,6 +192,14 @@ Deviations related to MISRA C:2012 Rules:
        See automation/eclair_analysis/deviations.ecl for the full explanation.
      - Tagged as `safe` for ECLAIR.
 
+   * - R10.1
+     - The macro ISOLATE_LOW_BIT encapsulates the well-known pattern (x & -x)
+       applied to unsigned integer values on 2's complement architectures
+       (i.e., all architectures supported by Xen), used to obtain a mask where
+       just the least significant nonzero bit of x is set.
+       If no bits are set, 0 is returned.
+     - Tagged as `safe` for ECLAIR.
+
    * - R13.5
      - All developers and reviewers can be safely assumed to be well aware of
        the short-circuit evaluation strategy for logical operators.
diff --git a/xen/include/xen/macros.h b/xen/include/xen/macros.h
index d0caae7db298..4e1b1f4e4b56 100644
--- a/xen/include/xen/macros.h
+++ b/xen/include/xen/macros.h
@@ -8,8 +8,14 @@
 #define DIV_ROUND(n, d) (((n) + (d) / 2) / (d))
 #define DIV_ROUND_UP(n, d) (((n) + (d) - 1) / (d))
 
-#define MASK_EXTR(v, m) (((v) & (m)) / ((m) & -(m)))
-#define MASK_INSR(v, m) (((v) * ((m) & -(m))) & (m))
+/*
+ * Given an unsigned integer argument, expands to a mask where just the least
+ * significant nonzero bit of the argument is set, or 0 if no bits are set.
+ */
+#define ISOLATE_LOW_BIT(x) ((x) & -(x))
+
+#define MASK_EXTR(v, m) (((v) & (m)) / ISOLATE_LOW_BIT(m))
+#define MASK_INSR(v, m) (((v) * ISOLATE_LOW_BIT(m)) & (m))
 
 #define count_args_(dot, a1, a2, a3, a4, a5, a6, a7, a8, x, ...) x
 #define count_args(args...) \
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Fri Oct 27 13:34:28 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 27 Oct 2023 13:34:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624380.972908 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qwMyl-0000bd-3A; Fri, 27 Oct 2023 13:34:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624380.972908; Fri, 27 Oct 2023 13:34: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 1qwMyl-0000bW-0D; Fri, 27 Oct 2023 13:34:23 +0000
Received: by outflank-mailman (input) for mailman id 624380;
 Fri, 27 Oct 2023 13:34: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=bjPi=GJ=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qwMyk-0000bB-C1
 for xen-devel@lists.xenproject.org; Fri, 27 Oct 2023 13:34:22 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 88b6eba4-74cd-11ee-98d6-6d05b1d4d9a1;
 Fri, 27 Oct 2023 15:34:20 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id CA8504EE0C81;
 Fri, 27 Oct 2023 15:34: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: 88b6eba4-74cd-11ee-98d6-6d05b1d4d9a1
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>,
	Julien Grall <julien@xen.org>,
	Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: [XEN PATCH][for-4.19 v4 2/8] arm/bitops: encapsulate violation of MISRA C:2012 Rule 10.1
Date: Fri, 27 Oct 2023 15:34:09 +0200
Message-Id: <a7138472e788dafe3a8c3787030a1715dd230ec9.1698410970.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1698410970.git.nicola.vetrini@bugseng.com>
References: <cover.1698410970.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The definitions of ffs{l}? violate Rule 10.1, by using the well-known
pattern (x & -x); its usage is wrapped by the ISOLATE_LOW_BIT macro.

No functional change.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
Changes in v4:
- Changed macro name.
---
 xen/arch/arm/include/asm/bitops.h | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/xen/arch/arm/include/asm/bitops.h b/xen/arch/arm/include/asm/bitops.h
index 71ae14cab355..e674634d03bf 100644
--- a/xen/arch/arm/include/asm/bitops.h
+++ b/xen/arch/arm/include/asm/bitops.h
@@ -9,6 +9,8 @@
 #ifndef _ARM_BITOPS_H
 #define _ARM_BITOPS_H
 
+#include <xen/macros.h>
+
 #include <asm/asm_defns.h>
 
 /*
@@ -155,8 +157,8 @@ static inline int fls(unsigned int x)
 }
 
 
-#define ffs(x) ({ unsigned int __t = (x); fls(__t & -__t); })
-#define ffsl(x) ({ unsigned long __t = (x); flsl(__t & -__t); })
+#define ffs(x) ({ unsigned int __t = (x); fls(ISOLATE_LOW_BIT(__t)); })
+#define ffsl(x) ({ unsigned long __t = (x); flsl(ISOLATE_LOW_BIT(__t)); })
 
 /**
  * find_first_set_bit - find the first set bit in @word
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Fri Oct 27 13:34:28 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 27 Oct 2023 13:34:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624384.972948 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qwMyp-0001b8-4G; Fri, 27 Oct 2023 13:34:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624384.972948; Fri, 27 Oct 2023 13:34: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 1qwMyp-0001ax-1T; Fri, 27 Oct 2023 13:34:27 +0000
Received: by outflank-mailman (input) for mailman id 624384;
 Fri, 27 Oct 2023 13:34: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=bjPi=GJ=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qwMyl-0000bB-J7
 for xen-devel@lists.xenproject.org; Fri, 27 Oct 2023 13:34:23 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 89a45bec-74cd-11ee-98d6-6d05b1d4d9a1;
 Fri, 27 Oct 2023 15:34:22 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id 7964E4EE0C88;
 Fri, 27 Oct 2023 15:34: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: 89a45bec-74cd-11ee-98d6-6d05b1d4d9a1
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>
Subject: [XEN PATCH][for-4.19 v4 4/8] x86_64/mm: express macro CNT using ISOLATE_LOW_BIT
Date: Fri, 27 Oct 2023 15:34:11 +0200
Message-Id: <8e56caec1dfa2ef9a528d58935f16c537adfdbea.1698410970.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1698410970.git.nicola.vetrini@bugseng.com>
References: <cover.1698410970.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The various definitions of macro CNT (and the related BUILD_BUG_ON)
can be rewritten using ISOLATE_LOW_BIT, encapsulating a violation of
MISRA C:2012 Rule 10.1.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
---
Changes in v4:
- Changed macro name
---
 xen/arch/x86/x86_64/mm.c | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/xen/arch/x86/x86_64/mm.c b/xen/arch/x86/x86_64/mm.c
index c3ebb777144a..710a756a3c07 100644
--- a/xen/arch/x86/x86_64/mm.c
+++ b/xen/arch/x86/x86_64/mm.c
@@ -351,9 +351,9 @@ static int setup_compat_m2p_table(struct mem_hotadd_info *info)
                 ~((1UL << (L2_PAGETABLE_SHIFT - 2)) - 1) );
 
 #define MFN(x) (((x) << L2_PAGETABLE_SHIFT) / sizeof(unsigned int))
-#define CNT ((sizeof(*frame_table) & -sizeof(*frame_table)) / \
+#define CNT (ISOLATE_LOW_BIT(sizeof(*frame_table)) / \
              sizeof(*compat_machine_to_phys_mapping))
-    BUILD_BUG_ON((sizeof(*frame_table) & -sizeof(*frame_table)) % \
+    BUILD_BUG_ON(ISOLATE_LOW_BIT(sizeof(*frame_table)) % \
                  sizeof(*compat_machine_to_phys_mapping));
 
     for ( i = smap; i < emap; i += (1UL << (L2_PAGETABLE_SHIFT - 2)) )
@@ -410,10 +410,10 @@ static int setup_m2p_table(struct mem_hotadd_info *info)
     va = RO_MPT_VIRT_START + smap * sizeof(*machine_to_phys_mapping);
 
 #define MFN(x) (((x) << L2_PAGETABLE_SHIFT) / sizeof(unsigned long))
-#define CNT ((sizeof(*frame_table) & -sizeof(*frame_table)) / \
+#define CNT (ISOLATE_LOW_BIT(sizeof(*frame_table)) / \
              sizeof(*machine_to_phys_mapping))
 
-    BUILD_BUG_ON((sizeof(*frame_table) & -sizeof(*frame_table)) % \
+    BUILD_BUG_ON(ISOLATE_LOW_BIT(sizeof(*frame_table)) % \
                  sizeof(*machine_to_phys_mapping));
 
     i = smap;
@@ -539,7 +539,7 @@ void __init paging_init(void)
     mpt_size  = (max_page * BYTES_PER_LONG) + (1UL << L2_PAGETABLE_SHIFT) - 1;
     mpt_size &= ~((1UL << L2_PAGETABLE_SHIFT) - 1UL);
 #define MFN(x) (((x) << L2_PAGETABLE_SHIFT) / sizeof(unsigned long))
-#define CNT ((sizeof(*frame_table) & -sizeof(*frame_table)) / \
+#define CNT (ISOLATE_LOW_BIT(sizeof(*frame_table)) / \
              sizeof(*machine_to_phys_mapping))
     BUILD_BUG_ON((sizeof(*frame_table) & ~sizeof(*frame_table)) % \
                  sizeof(*machine_to_phys_mapping));
@@ -666,7 +666,7 @@ void __init paging_init(void)
         mpt_size = 0;
 
 #define MFN(x) (((x) << L2_PAGETABLE_SHIFT) / sizeof(unsigned int))
-#define CNT ((sizeof(*frame_table) & -sizeof(*frame_table)) / \
+#define CNT (ISOLATE_LOW_BIT(sizeof(*frame_table)) / \
              sizeof(*compat_machine_to_phys_mapping))
     BUILD_BUG_ON((sizeof(*frame_table) & ~sizeof(*frame_table)) % \
                  sizeof(*compat_machine_to_phys_mapping));
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Fri Oct 27 13:34:28 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 27 Oct 2023 13:34:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624387.972965 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qwMyq-0001rW-63; Fri, 27 Oct 2023 13:34:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624387.972965; Fri, 27 Oct 2023 13: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 1qwMyp-0001qU-Ul; Fri, 27 Oct 2023 13:34:27 +0000
Received: by outflank-mailman (input) for mailman id 624387;
 Fri, 27 Oct 2023 13:34: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=bjPi=GJ=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qwMyo-0000bA-1Q
 for xen-devel@lists.xenproject.org; Fri, 27 Oct 2023 13:34:26 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 8af313ac-74cd-11ee-9b0e-b553b5be7939;
 Fri, 27 Oct 2023 15:34:24 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id 8CFF34EE0C8B;
 Fri, 27 Oct 2023 15:34: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: 8af313ac-74cd-11ee-9b0e-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>,
	Paul Durrant <paul@xen.org>
Subject: [XEN PATCH][for-4.19 v4 7/8] xen/types: address Rule 10.1 for DECLARE_BITMAP use
Date: Fri, 27 Oct 2023 15:34:14 +0200
Message-Id: <86d78caaef0bb2d73f25ce641dfc80e0a1dc4112.1698410970.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1698410970.git.nicola.vetrini@bugseng.com>
References: <cover.1698410970.git.nicola.vetrini@bugseng.com>
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
in macro 'BITS_TO_LONGS'.

This construct is deviated with a deviation comment.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
---
Changes in v3:
- edited comment
---
 docs/misra/safe.json    | 8 ++++++++
 xen/include/xen/iommu.h | 1 +
 xen/include/xen/types.h | 5 +++++
 3 files changed, 14 insertions(+)

diff --git a/docs/misra/safe.json b/docs/misra/safe.json
index 39c5c056c7d4..952324f85cf9 100644
--- a/docs/misra/safe.json
+++ b/docs/misra/safe.json
@@ -20,6 +20,14 @@
         },
         {
             "id": "SAF-2-safe",
+            "analyser": {
+                "eclair": "MC3R1.R10.1"
+            },
+            "name": "MC3R1.R10.1: use of an enumeration constant in an arithmetic operation",
+            "text": "This violation can be fixed with a cast to (int) of the enumeration constant, but a deviation was chosen due to code readability (see also the comment in BITS_TO_LONGS)."
+        },
+        {
+            "id": "SAF-3-safe",
             "analyser": {},
             "name": "Sentinel",
             "text": "Next ID to be used"
diff --git a/xen/include/xen/iommu.h b/xen/include/xen/iommu.h
index 0e747b0bbc1c..d5c25770915b 100644
--- a/xen/include/xen/iommu.h
+++ b/xen/include/xen/iommu.h
@@ -360,6 +360,7 @@ struct domain_iommu {
 #endif
 
     /* Features supported by the IOMMU */
+    /* SAF-2-safe enum constant in arithmetic operation */
     DECLARE_BITMAP(features, IOMMU_FEAT_count);
 
     /* Does the guest share HAP mapping with the IOMMU? */
diff --git a/xen/include/xen/types.h b/xen/include/xen/types.h
index aea259db1ef2..64e75674da4f 100644
--- a/xen/include/xen/types.h
+++ b/xen/include/xen/types.h
@@ -22,6 +22,11 @@ typedef signed long ssize_t;
 
 typedef __PTRDIFF_TYPE__ ptrdiff_t;
 
+/*
+ * Users of this macro are expected to pass a positive value.
+ *
+ * XXX: should become an unsigned quantity
+ */
 #define BITS_TO_LONGS(bits) \
     (((bits)+BITS_PER_LONG-1)/BITS_PER_LONG)
 #define DECLARE_BITMAP(name,bits) \
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Fri Oct 27 13:34:28 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 27 Oct 2023 13:34:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624382.972919 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qwMyl-0000jo-Kb; Fri, 27 Oct 2023 13:34:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624382.972919; Fri, 27 Oct 2023 13:34: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 1qwMyl-0000hX-Eg; Fri, 27 Oct 2023 13:34:23 +0000
Received: by outflank-mailman (input) for mailman id 624382;
 Fri, 27 Oct 2023 13:34: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=bjPi=GJ=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qwMyk-0000bB-J7
 for xen-devel@lists.xenproject.org; Fri, 27 Oct 2023 13:34:22 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 893a287f-74cd-11ee-98d6-6d05b1d4d9a1;
 Fri, 27 Oct 2023 15:34:21 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id 9B9D54EE0C87;
 Fri, 27 Oct 2023 15:34: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: 893a287f-74cd-11ee-98d6-6d05b1d4d9a1
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>
Subject: [XEN PATCH][for-4.19 v4 3/8] xen/pdx: amend definition of PDX_GROUP_COUNT
Date: Fri, 27 Oct 2023 15:34:10 +0200
Message-Id: <a61827489575e003885c416312945b654a4850c3.1698410970.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1698410970.git.nicola.vetrini@bugseng.com>
References: <cover.1698410970.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The definition of PDX_GROUP_COUNT causes violations of
MISRA C:2012 Rule 10.1, therefore the problematic part now uses
the ISOLATE_LOW_BIT macro, which encapsulates the pattern.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
---
Changes in v4:
-CChanged macro name.
---
 xen/include/xen/pdx.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/xen/include/xen/pdx.h b/xen/include/xen/pdx.h
index f3fbc4273aa4..6853dc1a601e 100644
--- a/xen/include/xen/pdx.h
+++ b/xen/include/xen/pdx.h
@@ -72,7 +72,7 @@
 extern unsigned long max_pdx;
 
 #define PDX_GROUP_COUNT ((1 << PDX_GROUP_SHIFT) / \
-                         (sizeof(*frame_table) & -sizeof(*frame_table)))
+                         (ISOLATE_LOW_BIT(sizeof(*frame_table))))
 extern unsigned long pdx_group_valid[];
 
 /**
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Fri Oct 27 13:34:28 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 27 Oct 2023 13:34:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624388.972972 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qwMyq-00020g-Pk; Fri, 27 Oct 2023 13:34:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624388.972972; Fri, 27 Oct 2023 13: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 1qwMyq-0001wb-BE; Fri, 27 Oct 2023 13:34:28 +0000
Received: by outflank-mailman (input) for mailman id 624388;
 Fri, 27 Oct 2023 13:34: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=bjPi=GJ=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qwMyo-0000bB-JI
 for xen-devel@lists.xenproject.org; Fri, 27 Oct 2023 13:34:26 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 8b68a9e1-74cd-11ee-98d6-6d05b1d4d9a1;
 Fri, 27 Oct 2023 15:34:25 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id 638DB4EE0C8D;
 Fri, 27 Oct 2023 15:34: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: 8b68a9e1-74cd-11ee-98d6-6d05b1d4d9a1
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>
Subject: [XEN PATCH][for-4.19 v4 8/8] xen/compat: use BUILD_BUG_ON in CHECK_SIZE macros
Date: Fri, 27 Oct 2023 15:34:15 +0200
Message-Id: <16877f531dd79442a7fad6e8bacd17f445a0ad66.1698410970.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1698410970.git.nicola.vetrini@bugseng.com>
References: <cover.1698410970.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

BUILD_BUG_ON is the preferred way to induce a build error
upon statically determined incorrect conditions.

This also fixes a MISRA C:2012 Rule 10.1 violation in the
previous formulation.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
Acked-by: Jan Beulich <jbeulich@suse.com>
---
Changes in v2:
- replace the construct with a BUILD_BUG_ON.
Changes in v3:
- drop unused typedef.
---
 xen/include/xen/compat.h | 16 +++++++++++-----
 1 file changed, 11 insertions(+), 5 deletions(-)

diff --git a/xen/include/xen/compat.h b/xen/include/xen/compat.h
index f2ce5bb3580a..41a5d61eef98 100644
--- a/xen/include/xen/compat.h
+++ b/xen/include/xen/compat.h
@@ -151,12 +151,18 @@ CHECK_NAME_(k, n, T)(k xen_ ## n *x, \
     return x == c; \
 }
 
-#define CHECK_SIZE(name) \
-    typedef int CHECK_NAME(name, S)[1 - (sizeof(xen_ ## name ## _t) != \
-                                         sizeof(compat_ ## name ## _t)) * 2]
+#define CHECK_SIZE(name)                                  \
+static inline void __maybe_unused CHECK_SIZE_##name(void) \
+{                                                         \
+    BUILD_BUG_ON(sizeof(xen_ ## name ## _t) !=            \
+                 sizeof(compat_ ## name ## _t));          \
+}
 #define CHECK_SIZE_(k, n) \
-    typedef int CHECK_NAME_(k, n, S)[1 - (sizeof(k xen_ ## n) != \
-                                          sizeof(k compat_ ## n)) * 2]
+static inline void __maybe_unused CHECK_SIZE_##k_##n(void) \
+{                                                          \
+    BUILD_BUG_ON(sizeof(k xen_ ## n) !=                    \
+                 sizeof(k compat_ ## n));                  \
+}
 
 #define CHECK_FIELD_COMMON(name, t, f) \
 static inline int __maybe_unused name(xen_ ## t ## _t *x, compat_ ## t ## _t *c) \
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Fri Oct 27 13:37:05 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 27 Oct 2023 13:37:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624410.973008 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qwN1N-0005j5-7A; Fri, 27 Oct 2023 13:37:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624410.973008; Fri, 27 Oct 2023 13: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 1qwN1N-0005iy-3L; Fri, 27 Oct 2023 13:37:05 +0000
Received: by outflank-mailman (input) for mailman id 624410;
 Fri, 27 Oct 2023 13: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=bjPi=GJ=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qwN1M-0005Th-8y
 for xen-devel@lists.xenproject.org; Fri, 27 Oct 2023 13:37:04 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id e95107f6-74cd-11ee-9b0e-b553b5be7939;
 Fri, 27 Oct 2023 15:37:02 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id 2077D4EE074E;
 Fri, 27 Oct 2023 15:37: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: e95107f6-74cd-11ee-9b0e-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>
Subject: [XEN PATCH][for-4.19 v2 1/2] xen/vmap: use ISOLATE_LOW_BIT to wrap a violation of Rule 10.1
Date: Fri, 27 Oct 2023 15:36:55 +0200
Message-Id: <f2de37fa69d1bf88433ad2a67411357cbca0367d.1698413073.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1698413073.git.nicola.vetrini@bugseng.com>
References: <cover.1698413073.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

No functional change.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
---
Changes in v2:
- Changed macro name
---
 xen/common/vmap.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/xen/common/vmap.c b/xen/common/vmap.c
index 4fd6b3067ec1..1e498a6e525b 100644
--- a/xen/common/vmap.c
+++ b/xen/common/vmap.c
@@ -53,7 +53,7 @@ static void *vm_alloc(unsigned int nr, unsigned int align,
     if ( !align )
         align = 1;
     else if ( align & (align - 1) )
-        align &= -align;
+        align = ISOLATE_LOW_BIT(align);
 
     ASSERT((t >= VMAP_DEFAULT) && (t < VMAP_REGION_NR));
     if ( !vm_base[t] )
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Fri Oct 27 13:37:05 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 27 Oct 2023 13:37:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624409.972997 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qwN1L-0005Ty-Uq; Fri, 27 Oct 2023 13:37:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624409.972997; Fri, 27 Oct 2023 13:37: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 1qwN1L-0005Tr-SO; Fri, 27 Oct 2023 13:37:03 +0000
Received: by outflank-mailman (input) for mailman id 624409;
 Fri, 27 Oct 2023 13:37: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=bjPi=GJ=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qwN1L-0005Th-26
 for xen-devel@lists.xenproject.org; Fri, 27 Oct 2023 13:37:03 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id e857fd20-74cd-11ee-9b0e-b553b5be7939;
 Fri, 27 Oct 2023 15:37:01 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id 49DA34EE073E;
 Fri, 27 Oct 2023 15:36: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: e857fd20-74cd-11ee-9b0e-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>,
	Paul Durrant <paul@xen.org>
Subject: [XEN PATCH][for-4.19 v2 0/2] use the macro ISOLATE_LOW_BIT where appropriate
Date: Fri, 27 Oct 2023 15:36:54 +0200
Message-Id: <cover.1698413073.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

This series replaces two instances of the pattern (x & -x) with the
macro ISOLATE_LOW_BIT, introduced by the series [1]. Therefore, these patches should
be applied on top of that series.

[1] https://marc.info/?l=xen-devel&m=169841347803987&w=2

Changes in v2:
- s/LOWEST_BIT/ISOLATE_LOW_BIT/

Nicola Vetrini (2):
  xen/vmap: use ISOLATE_LOW_BIT to wrap a violation of Rule 10.1
  xen/iommu: use ISOLATE_LOW_BIT to wrap a violation of Rule 10.1

 xen/common/vmap.c               | 2 +-
 xen/drivers/passthrough/iommu.c | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

-- 
2.34.1


From xen-devel-bounces@lists.xenproject.org Fri Oct 27 13:37:05 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 27 Oct 2023 13:37:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624411.973015 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qwN1N-0005mt-Li; Fri, 27 Oct 2023 13:37:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624411.973015; Fri, 27 Oct 2023 13: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 1qwN1N-0005mE-Bu; Fri, 27 Oct 2023 13:37:05 +0000
Received: by outflank-mailman (input) for mailman id 624411;
 Fri, 27 Oct 2023 13: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=bjPi=GJ=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qwN1M-0005Xh-G3
 for xen-devel@lists.xenproject.org; Fri, 27 Oct 2023 13:37:04 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id e9d4b4ab-74cd-11ee-98d6-6d05b1d4d9a1;
 Fri, 27 Oct 2023 15:37:03 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id AEC5D4EE0C81;
 Fri, 27 Oct 2023 15:37: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: e9d4b4ab-74cd-11ee-98d6-6d05b1d4d9a1
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>,
	Paul Durrant <paul@xen.org>
Subject: [XEN PATCH][for-4.19 v2 2/2] xen/iommu: use ISOLATE_LOW_BIT to wrap a violation of Rule 10.1
Date: Fri, 27 Oct 2023 15:36:56 +0200
Message-Id: <6a1590b0d002641fe8dc53a2368ab8c2973e4bb3.1698413073.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1698413073.git.nicola.vetrini@bugseng.com>
References: <cover.1698413073.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

No functional change.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
---
Changes in v2:
- Changed macro name
---
 xen/drivers/passthrough/iommu.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/xen/drivers/passthrough/iommu.c b/xen/drivers/passthrough/iommu.c
index f9a9f53dbd44..894e4fd2f43b 100644
--- a/xen/drivers/passthrough/iommu.c
+++ b/xen/drivers/passthrough/iommu.c
@@ -560,7 +560,7 @@ int __init iommu_setup(void)
         rc = iommu_hardware_setup();
         if ( !rc )
             ops = iommu_get_ops();
-        if ( ops && (ops->page_sizes & -ops->page_sizes) != PAGE_SIZE )
+        if ( ops && (ISOLATE_LOW_BIT(ops->page_sizes)) != PAGE_SIZE )
         {
             printk(XENLOG_ERR "IOMMU: page size mask %lx unsupported\n",
                    ops->page_sizes);
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Fri Oct 27 13:40:57 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 27 Oct 2023 13:40:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624437.973044 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qwN54-0000GA-IZ; Fri, 27 Oct 2023 13:40:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624437.973044; Fri, 27 Oct 2023 13:40: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 1qwN54-0000G3-Fo; Fri, 27 Oct 2023 13:40:54 +0000
Received: by outflank-mailman (input) for mailman id 624437;
 Fri, 27 Oct 2023 13:40: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 1qwN53-0000FM-IT; Fri, 27 Oct 2023 13:40: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 1qwN53-00063k-G7; Fri, 27 Oct 2023 13:40: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 1qwN53-000706-48; Fri, 27 Oct 2023 13:40:53 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qwN53-0000PB-3d; Fri, 27 Oct 2023 13: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=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=VpzSCL2uM9jI7i33/Qr7NVqp1MZarDluPTWJzx3BpV8=; b=Q9Uf0F7Q87woh7vrvyCDA5c9Be
	VkoGUtxRTvfNpdCsGj9QrcHD23B5gEMu3Zc2I9JW71wf0y5epKZmzuC7nd+BinXxejxSC7SYD/3GA
	UA9Ibp5YJMz82j9eZs1uVp/D4Gh+/BprX3hYEGlI+f6GI2r6R5xU91g7eglXH41FEwrc=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183549-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [libvirt test] 183549: regressions - FAIL
X-Osstest-Failures:
    libvirt:test-amd64-i386-libvirt-pair:xen-install/src_host:fail:regression
    libvirt:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt:saverestore-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-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-i386-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-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-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
    libvirt:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    libvirt=ae4477bce41e934f751740767930e4c32f34ef31
X-Osstest-Versions-That:
    libvirt=4bdadede245b90ec1d9abfc659e07b247bc8b2ba
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 27 Oct 2023 13:40:53 +0000

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

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. 183535

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183535
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183535
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183535
 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-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-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-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-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
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass

version targeted for testing:
 libvirt              ae4477bce41e934f751740767930e4c32f34ef31
baseline version:
 libvirt              4bdadede245b90ec1d9abfc659e07b247bc8b2ba

Last test of basis   183535  2023-10-26 04:20:25 Z    1 days
Testing same since   183549  2023-10-27 04:20:39 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrea Bolognani <abologna@redhat.com>
  Jiri Denemark <jdenemar@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                                 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


Not pushing.

------------------------------------------------------------
commit ae4477bce41e934f751740767930e4c32f34ef31
Author: Jiri Denemark <jdenemar@redhat.com>
Date:   Thu Oct 26 12:03:18 2023 +0200

    po: Refresh potfile for v9.9.0
    
    Signed-off-by: Jiri Denemark <jdenemar@redhat.com>

commit 4242a9481694845eb43fb24f654ad6600051cce5
Author: Andrea Bolognani <abologna@redhat.com>
Date:   Tue Oct 3 15:39:02 2023 +0200

    meson: Rename build_tests -> tests_enabled
    
    Given that this variable now controls not just whether C tests
    are built, but also whether any test at all is executed, the new
    name is more appropriate.
    
    Update the description for the corresponding meson option
    accordingly.
    
    Signed-off-by: Andrea Bolognani <abologna@redhat.com>
    Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
    Reviewed-by: Martin Kletzander <mkletzan@redhat.com>

commit 87f14badd0354432d245455cd706676de5ebcc30
Author: Andrea Bolognani <abologna@redhat.com>
Date:   Tue Oct 3 14:58:56 2023 +0200

    meson: Disable all tests when tests are disabled
    
    Currently, passing -Dtests=disabled only disables a subset of
    tests: those that are written in C and thus require compilation.
    Other tests, such as the syntax-check ones and those that are
    implemented as scripts, are always enabled.
    
    There's a potentially dangerous consequence of this behavior:
    when tests are disabled, 'meson test' will succeed as if they
    had been enabled. No indication of this will be shown, so the
    user will likely make the reasonable assumption that everything
    is fine when in fact the significantly reduced coverage might
    be hiding failures.
    
    To solve this issues, disable *all* tests when asked to do so,
    and inject an intentionally failing test to ensure that 'meson
    test' doesn't succeed.
    
    Best viewed with 'git show -w'.
    
    Signed-off-by: Andrea Bolognani <abologna@redhat.com>
    Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
    Reviewed-by: Martin Kletzander <mkletzan@redhat.com>

commit 8ce0decc372051d616018f57ae268e2f03082eec
Author: Andrea Bolognani <abologna@redhat.com>
Date:   Tue Oct 3 14:53:08 2023 +0200

    meson: Make -Dexpensive_tests depend on -Dtests
    
    It only makes sense to enable expensive tests when tests are
    enabled. Disallow invalid configurations.
    
    Signed-off-by: Andrea Bolognani <abologna@redhat.com>
    Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
    Reviewed-by: Martin Kletzander <mkletzan@redhat.com>

commit 5904228f92cb46253f0f4624e98cda9a375a24a3
Author: Andrea Bolognani <abologna@redhat.com>
Date:   Tue Oct 3 14:52:45 2023 +0200

    meson: Handle -Dtests=enabled with Clang
    
    There are some cases in which we automatically disable tests when
    using Clang as the compiler. If the user has explicitly asked for
    tests to be enabled, however, we should error out instead of
    silently disabling things.
    
    Signed-off-by: Andrea Bolognani <abologna@redhat.com>
    Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
    Reviewed-by: Martin Kletzander <mkletzan@redhat.com>

commit 44711485b1c1dae0a69995dbaea2a8f7069b3f51
Author: Andrea Bolognani <abologna@redhat.com>
Date:   Tue Oct 3 14:46:56 2023 +0200

    meson: Move all handling of test options together
    
    This will make future patches nicer.
    
    Note that we need to handle these somewhat late because of the
    dependency on information about the compiler and the flags it
    supports.
    
    Signed-off-by: Andrea Bolognani <abologna@redhat.com>
    Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
    Reviewed-by: Martin Kletzander <mkletzan@redhat.com>

commit ed90d3622488cdd852b4281cf969a0cf582b5da7
Author: Andrea Bolognani <abologna@redhat.com>
Date:   Tue Oct 3 14:57:05 2023 +0200

    meson: Do less when not building from git
    
    As explained in the comment, the syntax-check machinery uses git
    to figure out the list of files it should operate on, so we can
    only enable it when building from git.
    
    Despite only registering the various tests with meson in that
    case, however, we unconditionally perform a bunch of preparation
    that is only useful for the purpose of registering and running
    the tests. If we're not going to do that, we can skip a few steps
    and save a bit of time.
    
    Best viewed with 'git show -w'.
    
    Signed-off-by: Andrea Bolognani <abologna@redhat.com>
    Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
    Reviewed-by: Martin Kletzander <mkletzan@redhat.com>

commit 5d95617ed92fcae26e6e863d9036e07054a3e234
Author: Andrea Bolognani <abologna@redhat.com>
Date:   Wed Oct 25 17:33:49 2023 +0200

    ci: Disable optimizations on macOS
    
    Clang can be too aggressive at optimizations, which can end up
    breaking our test suite. See f9f5ab57189b for details.
    
    As a result of this, since 7944700b4037 we are automatically
    disabling tests when Clang is used unless it supports the
    -fsemantic-interposition compiler flag.
    
    Since the version of Clang included in macOS doesn't support that
    compiler flag, we end up always disabling the test suite on that
    platform.
    
    This is already far from ideal, considering that it was just last
    year when we finally managed to get the test suite to successfully
    pass on macOS, and it would be a real shame if the situation
    regressed again.
    
    With the upcoming changes, which will turn running 'meson test'
    into a hard failure if tests are disabled, this behavior will
    result in every single pipeline failing.
    
    Work around the problem the only way we can: disabling
    optimizations entirely for the macOS CI jobs.
    
    Signed-off-by: Andrea Bolognani <abologna@redhat.com>
    Reviewed-by: Martin Kletzander <mkletzan@redhat.com>

commit 3653eb5dcf713b6c0492a1597f7c23401236d4cc
Author: Andrea Bolognani <abologna@redhat.com>
Date:   Wed Oct 25 16:48:18 2023 +0200

    tests: Fix some test cases on macOS
    
    Test cases that depend on duplicating fds are using fairly big
    values as targets.
    
    This works fine on Linux, where RLIMIT_NOFILE is 1024 by
    default, but fails on macOS which uses 256 as the default.
    
    Decrease the values so that they're valid across all platforms.
    
    Signed-off-by: Andrea Bolognani <abologna@redhat.com>
    Reviewed-by: Martin Kletzander <mkletzan@redhat.com>

commit b9a5541b49517b1099b5e2ca54366e3f3a754776
Author: Peter Krempa <pkrempa@redhat.com>
Date:   Wed Oct 18 16:18:40 2023 +0200

    qemublocktest: Use "target only" mode in 'testJSONtoJSON' and 'testBackingXMLjsonXML'
    
    Both tests pass a disk source definition which didn't go through the
    preparation steps and thus contains only the target information that
    were originally present, thus we should be using the
    QEMU_BLOCK_STORAGE_SOURCE_BACKEND_PROPS_TARGET_ONLY flag.
    
    For the same reason QEMU_BLOCK_STORAGE_SOURCE_BACKEND_PROPS_AUTO_READONLY
    used in 'testJSONtoJSON' doesn't make sense.
    
    Signed-off-by: Peter Krempa <pkrempa@redhat.com>
    Reviewed-by: Ján Tomko <jtomko@redhat.com>

commit e60c3057cc22adcfefbfd66a01e2df4b135cb8b5
Author: Peter Krempa <pkrempa@redhat.com>
Date:   Wed Oct 18 13:51:09 2023 +0200

    qemuBlockStorageSourceGetBlockdevGetCacheProps: Return the cache object rather than appending it
    
    Signed-off-by: Peter Krempa <pkrempa@redhat.com>
    Reviewed-by: Ján Tomko <jtomko@redhat.com>

commit 4cf223962aa342e9c1d9b2d8678b0f90e8df28d0
Author: Peter Krempa <pkrempa@redhat.com>
Date:   Wed Oct 18 13:19:08 2023 +0200

    qemuDomainDiskCachemodeFlags: Simplify usage
    
    Return whether a relevant cachemode was presented rather than returning
    an error, so that callers can be simplified. Use the proper enum type as
    argument rather than typecasting in the switch statement.
    
    Signed-off-by: Peter Krempa <pkrempa@redhat.com>
    Reviewed-by: Ján Tomko <jtomko@redhat.com>

commit 91661eb19fede64fc447c1cdce6b6c70f642291f
Author: Peter Krempa <pkrempa@redhat.com>
Date:   Wed Oct 18 09:55:19 2023 +0200

    virStorageSource: Use proper type for shadow copies of iomode/cachemode/discard/detect_zeroes
    
    The aforementioned fields in virStorageSource struct are copies of the
    disk properties, but were not converted to the proper type yet.
    
    Signed-off-by: Peter Krempa <pkrempa@redhat.com>
    Reviewed-by: Ján Tomko <jtomko@redhat.com>

commit 5ac61e7c15c3bff00e36cc2c0fdd9fe024c08543
Author: Peter Krempa <pkrempa@redhat.com>
Date:   Wed Oct 18 12:56:04 2023 +0200

    conf: Move definition of some disk type enums to a common header
    
    Certain disk config fields are mirrored between the disk and storage
    source definitions, but the proper types are not available for use in
    the virStorageSource definition. Move them so they can be used properly.
    
    Signed-off-by: Peter Krempa <pkrempa@redhat.com>
    Reviewed-by: Ján Tomko <jtomko@redhat.com>

commit 01e35b452b19f1ef8166045a6e98ad60f6d0c469
Author: Peter Krempa <pkrempa@redhat.com>
Date:   Wed Oct 18 09:38:56 2023 +0200

    qemuBlockStorageSourceGetBackendProps: Remove unnecessary indent for non-nbdkit code path
    
    Formatting of the 'nbdkit' driven backend breaks out of the switch
    statement so we don't need to have an unnecessary block and indentation
    level for the case when nbdkit is not in use.
    
    Signed-off-by: Peter Krempa <pkrempa@redhat.com>
    Reviewed-by: Ján Tomko <jtomko@redhat.com>

commit d38f32cb4eb082e302583b800a6f63a3371724f4
Author: Peter Krempa <pkrempa@redhat.com>
Date:   Wed Oct 18 09:34:27 2023 +0200

    qemuBuildDriveSourceStr: Absorb only use of qemuDiskSourceGetProps
    
    'qemuBuildDriveSourceStr' used to build the legacy -drive commandline
    for SD cards is the only user of qemuDiskSourceGetProps. Move the helper
    directly inline.
    
    Signed-off-by: Peter Krempa <pkrempa@redhat.com>
    Reviewed-by: Ján Tomko <jtomko@redhat.com>

commit 682db64417b070cb9c0368fe89b11a6e905a3cc3
Author: Peter Krempa <pkrempa@redhat.com>
Date:   Tue Oct 17 16:10:47 2023 +0200

    qemu: migration: No longer avoid 'auto-read-only' option for migration
    
    The 'auto-read-only' blockdev option is available in all supported qemu
    versions so we can remove the migration hack which disabled it.
    
    Signed-off-by: Peter Krempa <pkrempa@redhat.com>
    Reviewed-by: Ján Tomko <jtomko@redhat.com>

commit 829d9ed829c0421dc1b40bbdfd86a648e2681fad
Author: Peter Krempa <pkrempa@redhat.com>
Date:   Wed Oct 18 09:16:40 2023 +0200

    qemuxml2(argv|xml)test: Add network backed disk type='sd'
    
    Add a few examples of SD cards backed with network storage to capture
    the current state as the formatter code is about to be refactored.
    
    Signed-off-by: Peter Krempa <pkrempa@redhat.com>
    Reviewed-by: Ján Tomko <jtomko@redhat.com>


From xen-devel-bounces@lists.xenproject.org Fri Oct 27 13:47:15 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 27 Oct 2023 13:47:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624496.973069 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qwNB9-0002mm-JB; Fri, 27 Oct 2023 13:47:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624496.973069; Fri, 27 Oct 2023 13:47: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 1qwNB9-0002mf-Gd; Fri, 27 Oct 2023 13:47:11 +0000
Received: by outflank-mailman (input) for mailman id 624496;
 Fri, 27 Oct 2023 13:47: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=ZGm/=GJ=cloud.com=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qwNB7-0002kn-JJ
 for xen-devel@lists.xenproject.org; Fri, 27 Oct 2023 13:47:09 +0000
Received: from mail-ej1-x62a.google.com (mail-ej1-x62a.google.com
 [2a00:1450:4864:20::62a])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 52ad8354-74cf-11ee-98d6-6d05b1d4d9a1;
 Fri, 27 Oct 2023 15:47:09 +0200 (CEST)
Received: by mail-ej1-x62a.google.com with SMTP id
 a640c23a62f3a-9d0b4dfd60dso62839966b.1
 for <xen-devel@lists.xenproject.org>; Fri, 27 Oct 2023 06:47:09 -0700 (PDT)
Received: from localhost ([213.195.118.109]) by smtp.gmail.com with ESMTPSA id
 lf6-20020a170907174600b009b977bea1dcsm1227285ejc.23.2023.10.27.06.47.08
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Fri, 27 Oct 2023 06:47: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: 52ad8354-74cf-11ee-98d6-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1698414428; x=1699019228; 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=Hn2H3DDSmFvevHsDTiyDlpZaUW6715OIjZp6yBj8aLs=;
        b=ZvFG9Jk+RUzhaGhiQrWZ7sh/kcPDX5/w28VZjw11rPkJHN7NrqvbQN8hS6aDSZRKb8
         WOZcsShAjLpWeHnHdN5YGjWQyo77+FFP+dwptfMEwlRGURHxkUF+6nU1O+WWjf28jLO2
         eOpwm+mbe0w86iOwqYoYMebSslYH7ozKtMNBA=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698414428; x=1699019228;
        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=Hn2H3DDSmFvevHsDTiyDlpZaUW6715OIjZp6yBj8aLs=;
        b=o16p1AHyI/4CMVlOQ6Y+QMKvgH/ra/jfUQ4Z0CYb/hTY56QFcOgDlgYynbjgP8YrJV
         EVk11NGeZGsVkvB6+ckuGbUuwV/zvpiF7jiROKInOrVluEEYFA6/dYI4aYSK/S5QZ9jj
         sGDwdC74HNBgEWkA+FqAIA7kkGW2o9zIwMF/e0fGsIsY08vQChr8RY5NfVafO3hFLmft
         kVQA4OJpfcYHVX3R243sNcdB7m10p9x4+WDVTL9rJ0GyM3Pe498R+iSScR8TK7y1RrZY
         YtKIPN9vBr4k9O12lwJH4woghPHb+ZTtHUOEiZORZfJftngOzoUIiPuGCR+Hi4Fzu1ZI
         86TQ==
X-Gm-Message-State: AOJu0YzRL5CSQxWw6Wo5dPvf5ipAy6FhgY9mF1scYBdT4TK9E4TZQv7F
	aMM+H64Tp3Hze1MhVEzU8QcMig==
X-Google-Smtp-Source: AGHT+IEIa9ua3rq95D+XQ7/37WjSH3SOw835aTW+08fZONME0dsSllsrfMq6u/Fdl0rwu+W+Zyu28A==
X-Received: by 2002:a17:906:ef07:b0:9c6:3c94:69fa with SMTP id f7-20020a170906ef0700b009c63c9469famr1885874ejs.44.1698414428575;
        Fri, 27 Oct 2023 06:47:08 -0700 (PDT)
Date: Fri, 27 Oct 2023 15:47: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>,
	Alejandro Vallejo <alejandro.vallejo@cloud.com>,
	Stefano Stabellini <stefano.stabellini@amd.com>,
	Xenia Ragiadakou <xenia.ragiadakou@amd.com>,
	Xen-devel <xen-devel@lists.xenproject.org>
Subject: Re: [PATCH v2 2/2] x86/Kconfig: Introduce CONFIG_{AMD,INTEL} and
 conditionalise ucode
Message-ID: <ZTu_WxdWTrthCs4m@macbook>
References: <20231026205539.3261811-1-andrew.cooper3@citrix.com>
 <20231026205539.3261811-3-andrew.cooper3@citrix.com>
 <70472259-6429-e60f-7cdc-faa50b2d257f@suse.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <70472259-6429-e60f-7cdc-faa50b2d257f@suse.com>

On Fri, Oct 27, 2023 at 09:12:40AM +0200, Jan Beulich wrote:
> On 26.10.2023 22:55, Andrew Cooper wrote:
> > We eventually want to be able to build a stripped down Xen for a single
> > platform.  Make a start with CONFIG_{AMD,INTEL} (hidden behind EXPERT, but
> > available to randconfig), and adjust the microcode logic.
> > 
> > No practical 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>
> > CC: Alejandro Vallejo <alejandro.vallejo@cloud.com>
> > CC: Stefano Stabellini <stefano.stabellini@amd.com>
> > CC: Xenia Ragiadakou <xenia.ragiadakou@amd.com>
> > 
> > I've intentionally ignored the other vendors for now.  They can be put into
> > Kconfig by whomever figures out the actual dependencies between their init
> > routines.
> > 
> > v2:
> >  * Tweak text
> 
> What about the indentation issues mentioned in reply to v1?
> 
> As to using un-amended AMD and INTEL - Roger, what's your view here?

I think it would be good to add a suffix, like we do for
{AMD,INTEL}_IOMMU options, and reserve the plain AMD and INTEL options
as platform/system level options that enable both VENDOR_{CPU,IOMMU}
sub options.

So yes, {INTEL,AMD}_CPU seems a good option.

Regards, Roger.


From xen-devel-bounces@lists.xenproject.org Fri Oct 27 13:57:29 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 27 Oct 2023 13:57:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624505.973079 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qwNKs-00052A-Gt; Fri, 27 Oct 2023 13:57:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624505.973079; Fri, 27 Oct 2023 13: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 1qwNKs-000523-DW; Fri, 27 Oct 2023 13:57:14 +0000
Received: by outflank-mailman (input) for mailman id 624505;
 Fri, 27 Oct 2023 13: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=eU9S=GJ=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qwNKr-00051x-0B
 for xen-devel@lists.xenproject.org; Fri, 27 Oct 2023 13:57:13 +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 b94e15c1-74d0-11ee-9b0e-b553b5be7939;
 Fri, 27 Oct 2023 15:57:11 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM9PR04MB8194.eurprd04.prod.outlook.com (2603:10a6:20b:3e6::7)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.11; Fri, 27 Oct
 2023 13:57:08 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6954.008; Fri, 27 Oct 2023
 13:57: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: b94e15c1-74d0-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=MCA0ZPwcD8upIDKt3vrObhwymDi0BoTkWo74RmuVCnwtdFQ17rU2paqyhZZvV72cF8vSwwgpL8WtsW9OmsJvKtu67jcPXkiygftk8DxVX1x3+mJAxEmOh46WE+kqFacL6noq+tE5bFxxq2Ptt8Dm5Fhj9eREjIy/6y5+yyjEBJ2plSXoIvqIOYM9/F1lwvFcM9aN/OU/d8VAUmWUGpxcc4bmeNtAu+sMVtqbRNPcmr4ywO+eHHh2GWSE1UV1vGOZt8ffMJr5YZbVJp/4s3vaIphpdKRHBBZeP3m8Da/2PZY+I58mNVPAGwLLHL8mKbAuaDw9WwisNsRE89smUW34Dg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=HJiV3slNr0tHCJXEI3X61r4zXwykuCqSO5AgES5BSgU=;
 b=bbe1tpC4bbMUqlj3m+PEijNfyXCyCFerFPq4BK/Fhu3mlEzx61f2E8j5XVl8ndPeSNTU+h2qVyKPapHqGwQ7fuOQPcUkqdJR3XHxzXBTKfeWYJeNSy6rxUooCtPu7c0s/YcH0QMxZwzOLlEEkoGpojv1jZDLiikbcs+njjgBpHzOrw50xxauCDJwgCvPDmtO6n7INpfnd62F+zbRF1Xw4fGWxrVoijRIv2qMrLU44A4RCHlw1w+JwO2nRkM+3ca8ItwtLjLuGFm4n+CkThpbotqZOS+OTififjK5PqZ70emmeD/DGfydglcqS+HKAXt1qsxdAFmnT4VxI8ODYT8ASw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=HJiV3slNr0tHCJXEI3X61r4zXwykuCqSO5AgES5BSgU=;
 b=K44SNFO/LguLAR1dz7HpbOmvqN7ecg+GTD1edLiAN/z0Ry5qZe5Zv1HsjKeAeavt2fLATYqMuW46Kk2VTqCav5+rA+5mAKMNzEu2LOa0LgK13fBjSF15sT0eX00HlJylOQlDFU2uWFY2pjO61AelBFRAj8eCnRWYrYRdPbd8z9/60RTOCboyGq4uZaBqNTXQskf6tFTzm8RiIdB16ZM2NgEyyqD+RrqbpvPHgshuBrBeo/KWqJdAwVKxtHZ9F8F6LkQ2+DFLjm0wKS7B0wy7JkeMO+EqRIbINGXdDCbaYirAOC+WmcFS7YJxm+tZ/aUbjgBiiz/peqjqaoeRsr7ieQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <beb4255f-76ca-2b09-a953-d02e0f04997e@suse.com>
Date: Fri, 27 Oct 2023 15:57:06 +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/set_{c,p}x_pminfo: address violations od 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>, George Dunlap <george.dunlap@citrix.com>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 xen-devel@lists.xenproject.org
References: <88499ca9a61b59d13d90f6c5f77cbb2e124d850e.1698322083.git.federico.serafini@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <88499ca9a61b59d13d90f6c5f77cbb2e124d850e.1698322083.git.federico.serafini@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0173.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:b4::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_|AM9PR04MB8194:EE_
X-MS-Office365-Filtering-Correlation-Id: 1aa1bdc2-bb4d-45e9-c3e7-08dbd6f49c22
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	gj8GXHwLZYT0FnbiGYxG72FOc8xLJtMbw8acAo852fTa6+z9zyAJjhEP3fpGf7rkXptfMWI0MBnJk5Uu0vBvkNN9NDP8F90+xPwP9Rg4wb35SNyg3EZNTL/2B+oV7jy8eduY/uIUDscD2qfpk9o836aKv/XCuBPw5H6nNf/homtRMD/LkvfwikHJTJdNNM0Bv6JrtFyjp0/XeQoE5E1ZDI9Eh4rAv+DAw4X9P1TJxx5NlRESAFf7rG7+8MDrbFbgwXBpZCUaOBnoyBpVR4Omvx/AjDHvQCzFgf2usPOnGcgJ6run+UzbfRRsmQoeyvj+u+xGDvVyah0BO4M6bgsxypw7tUCeO6TP2Hbg5G4OWnOvZ2OBS9jTqBgGyKI7DVsDm1M0xoGN9e2bq+b6L3XgygAlUD624vctEIifOpxreXOr4M/LtsFv5mlv49eZVqZlcA3lgHlEKsqrzhamI4ASv276wEa+PfeUQIdUP5P9SjhxBcx3MeUUyopDstfDaAPz0EXweGM9ICtsFcg0A1AxMKTs6EkMg1F0yCMuSrTV2t8XtRWPKUxvUO7ssGIlha0LbH10Tjpswdfxaw4MG2Mmpm0pGccD9DDt/RnZNyPSXzgpZdpPZY4hyCSUC0/Kapzv08eLUxz3uevfcMUAJHkg2A==
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)(396003)(366004)(230922051799003)(64100799003)(186009)(451199024)(1800799009)(8936002)(8676002)(2906002)(41300700001)(4326008)(5660300002)(2616005)(36756003)(26005)(53546011)(6512007)(6506007)(38100700002)(31686004)(66476007)(54906003)(66946007)(6916009)(31696002)(316002)(86362001)(478600001)(83380400001)(66556008)(6486002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?eUtwMEgzYUpjNlZ4Z04vNHlxZmNnNUhEeER0elVqbkc0eStLSVE2Wk90VEIv?=
 =?utf-8?B?ck9sZEM3NXExR0xLZ29TcW5BWncrWDBETGxwbUU3YklMWnhaeDBnUWdndEh6?=
 =?utf-8?B?RitXNFhSb0UxTE90bDBPMEUrYmo2TGEvM1hzOU85Q1kzTTRvWkFKcWR0VlEz?=
 =?utf-8?B?S3piZmoyUExEb2pDTXNVR3IvbWlMdkFhVlhoNEZhSXJ2TkRkbm1oM0EwSFhp?=
 =?utf-8?B?djcvditZaXZIWlRQR3A3cVE5N2ZGQkNTbDc3VUZFUlppaWh3aXArVHprN0tS?=
 =?utf-8?B?K0JjZkp6b3hZenQ4cmNGY054cVYyQmJMMG5laUdXR3ZidjlkbnMyeWpScTRF?=
 =?utf-8?B?eDV0UVhhR2JRMGpFU1FIMmJQbUJwbWRlUFdZVjY3blhkZmNHMWxRZFJIck9X?=
 =?utf-8?B?akpyaFhkeDhPdVdka1JGUjloUzN1L1MvVit2ZTg4eWppMzNYbHhSWGowc3BU?=
 =?utf-8?B?dDFTQmo2STdpOEJZZXB5UWhmNUM5TkNmRnIvM2ZlYjNIc1N1N01WUjlxYkVM?=
 =?utf-8?B?RlJxQjhYbU0wQk50aDdIclpuUHRLSWowRXpleDhERVk1RVF3c0Z5THJWZnc2?=
 =?utf-8?B?Z2UvbWlSb0JJM2dVOWkxYjdkWmNhQjZ2WWI3Nnk1RzJGYUxVTWc1Rk9DT0x5?=
 =?utf-8?B?bSsyeHRuckhXRVBRTktLb0tvOXNza0ZSUnhlWExybTVyMURGNU5tZzIybnhE?=
 =?utf-8?B?ZlVnNXlhdUk4VUxtbGEwRVlTVDJQNVdhaTFYNVVQWWlXZ0JqNDNIZzF3bTUx?=
 =?utf-8?B?cXdOYTFETy9wZVFqb1h5VFArbzZxcVdRSVRuQUJyeklVM1NOcXBVQWs2T1J5?=
 =?utf-8?B?SGRxemhRaktnR21WVW1zQmtHemU2TE5VcSsxNEZDZG8zY1F6WWV4V0NHQjJR?=
 =?utf-8?B?S1QxL0tMZm9tNTlmUHU5eWx0TWtWRjlsOEJhdUlGNzZMUGs4ZXJWRVFMWE51?=
 =?utf-8?B?UG1XL2E5eWY3dkQ4YkY0Y3VjTkNlR1VFZkVVYlVaQnBiMngxSGFqc3hBRml4?=
 =?utf-8?B?Vm1QdzNSaC96ZVJRMU1XcE05RXgvQkdNNDYyWUp2YW1ncjhoVDExMkkwcFZ0?=
 =?utf-8?B?ZWx3VHNpZ0h6WTI3ZStOd3k5R1ZML0tDblJFQS8zZFh1V3hDRElkVElnTjRk?=
 =?utf-8?B?cWhqNmZ4SWY3am9IVjQ2Q0NTeFlnNEMrem1Za0FFMmxGWjYvcm0yNWpJMEhh?=
 =?utf-8?B?bUJnR25BQmVFUUxFQUlkWlpwMHRucDZvSDhqSXJzenVpWThzR0hYUmJLNzZJ?=
 =?utf-8?B?STVWRnN1a25RWjZnbi9HYjBCdS8zVnh5S3JrUzRiL3M0Q3c5eU9ucjRaSXFT?=
 =?utf-8?B?Y1J1R1VjZ2tVVzNZdmdwd1l4ekxRSi94QVZLRHduaUZtL0NiMjF0Tnl4azA4?=
 =?utf-8?B?WkVBSk9Db0huUHFWUytiOGpRbnQ1aDc1MTM2L1FtMytWTmVKZmNrcmtCOEhJ?=
 =?utf-8?B?R2NnK1BVS0crWXVkeExqTDdWc0JtT1JNMDl0Sjd2K20xZ2FrWHV2NlM0U0xl?=
 =?utf-8?B?cVBUYXJTV21jTUJJS0J3eGRKdEN4N1VLdlZPdE5HdThqNm5aSlNWMnJnYUZ6?=
 =?utf-8?B?WkxaYXIyaXNKWFFwemNHUmZnSkVpSE91OGgwd0JOSEg3N20vMDQxc3BaUURa?=
 =?utf-8?B?S0REaWZvWnJRZEc2WDlkcGhrbEttYWw5MFJxSU5yejZna2tSTXdIM2gydlA3?=
 =?utf-8?B?aC9qRHhSeFpDdkxGeDVQV292MHRRTGZKSDBoU2hBYnZXeks3MWdYZnpnMUVy?=
 =?utf-8?B?cmRzRlZ4QUV3d0lHV2RpTC9kdmFBcWJpcDladnRjSEFQOGx6cUM2ZTdMYzlR?=
 =?utf-8?B?SUM1bUJ4d2FTSWU0VE90ckwzQlFCZytnUU1NU01CdGNoT1JiY1V5Z2txMW9V?=
 =?utf-8?B?QnhwUDdLSjhFV21CL2liR0Z0cmVDbjRKMnltajJXRmllQWRTYklWZ1lwL2NW?=
 =?utf-8?B?TldwMEpBZTJnVWU0L1QrQTJLK2h2QVdIRS83c3dWYjZ5YXdOMHNZSXdiYU5E?=
 =?utf-8?B?VHpGSm5jUnJvZGoydWl1NEVNVjVLMjNkZnJvaTR0UExsdUh0RzFtVXJ5TC8r?=
 =?utf-8?B?L3dtL2JySXZLRnZ0QmZxOGhkQTFHNTN0azh4MkUwem5xZXhMQnUzYWNrWllw?=
 =?utf-8?Q?dSqgVkW02hOu4w/tIgMeC3bTI?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 1aa1bdc2-bb4d-45e9-c3e7-08dbd6f49c22
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Oct 2023 13:57:08.6307
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: GvoabIJqNGLfikk5MD5EyNiOhbCqzdQ71lJhRrTnMQ0qXpSvYOIiuKSkwbVUiVEyO8lv+1N3P6mLnB1Tuht5LA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR04MB8194

On 26.10.2023 14:09, Federico Serafini wrote:
> --- a/xen/drivers/cpufreq/cpufreq.c
> +++ b/xen/drivers/cpufreq/cpufreq.c
> @@ -457,14 +457,14 @@ static void print_PPC(unsigned int platform_limit)
>      printk("\t_PPC: %d\n", platform_limit);
>  }
>  
> -int set_px_pminfo(uint32_t acpi_id, struct xen_processor_performance *dom0_px_info)
> +int set_px_pminfo(uint32_t acpi_id, struct xen_processor_performance *perf)
>  {
>      int ret=0, cpuid;
>      struct processor_pminfo *pmpt;
>      struct processor_performance *pxpt;
>  
>      cpuid = get_cpu_id(acpi_id);
> -    if ( cpuid < 0 || !dom0_px_info)
> +    if ( ( cpuid < 0 ) || !perf)

I don't see the need for the new pair of parentheses here, but if you
add such, please don't violate style.

> @@ -488,21 +488,21 @@ int set_px_pminfo(uint32_t acpi_id, struct xen_processor_performance *dom0_px_in
>      pmpt->acpi_id = acpi_id;
>      pmpt->id = cpuid;
>  
> -    if ( dom0_px_info->flags & XEN_PX_PCT )
> +    if ( perf->flags & XEN_PX_PCT )
>      {
>          /* space_id check */
> -        if (dom0_px_info->control_register.space_id != 
> -            dom0_px_info->status_register.space_id)
> +        if ( perf->control_register.space_id !=
> +             perf->status_register.space_id )
>          {
>              ret = -EINVAL;
>              goto out;
>          }
>  
>          memcpy ((void *)&pxpt->control_register,
> -                (void *)&dom0_px_info->control_register,
> +                (void *)&perf->control_register,
>                  sizeof(struct xen_pct_register));
>          memcpy ((void *)&pxpt->status_register,
> -                (void *)&dom0_px_info->status_register,
> +                (void *)&perf->status_register,
>                  sizeof(struct xen_pct_register));
>  
>          if ( cpufreq_verbose )
> @@ -512,69 +512,67 @@ int set_px_pminfo(uint32_t acpi_id, struct xen_processor_performance *dom0_px_in
>          }
>      }
>  
> -    if ( dom0_px_info->flags & XEN_PX_PSS ) 
> +    if ( perf->flags & XEN_PX_PSS )
>      {
>          /* capability check */
> -        if (dom0_px_info->state_count <= 1)
> +        if (perf->state_count <= 1)

Since you're adjusting style elsewhere, would you mind adding the missing
blanks here as well?

>          {
>              ret = -EINVAL;
>              goto out;
>          }
>  
>          if ( !(pxpt->states = xmalloc_array(struct xen_processor_px,
> -                        dom0_px_info->state_count)) )
> +                                            perf->state_count)) )
>          {
>              ret = -ENOMEM;
>              goto out;
>          }
> -        if ( copy_from_guest(pxpt->states, dom0_px_info->states,
> -                             dom0_px_info->state_count) )
> +        if ( copy_from_guest(pxpt->states, perf->states, perf->state_count) )
>          {
>              ret = -EFAULT;
>              goto out;
>          }
> -        pxpt->state_count = dom0_px_info->state_count;
> +        pxpt->state_count = perf->state_count;
>  
>          if ( cpufreq_verbose )
>              print_PSS(pxpt->states,pxpt->state_count);
>      }
>  
> -    if ( dom0_px_info->flags & XEN_PX_PSD )
> +    if ( perf->flags & XEN_PX_PSD )
>      {
>          /* check domain coordination */
> -        if (dom0_px_info->shared_type != CPUFREQ_SHARED_TYPE_ALL &&
> -            dom0_px_info->shared_type != CPUFREQ_SHARED_TYPE_ANY &&
> -            dom0_px_info->shared_type != CPUFREQ_SHARED_TYPE_HW)
> +        if (perf->shared_type != CPUFREQ_SHARED_TYPE_ALL &&
> +            perf->shared_type != CPUFREQ_SHARED_TYPE_ANY &&
> +            perf->shared_type != CPUFREQ_SHARED_TYPE_HW)

Same here then?

Jan


From xen-devel-bounces@lists.xenproject.org Fri Oct 27 14:14:59 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 27 Oct 2023 14:14:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624512.973090 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qwNbv-0008T0-32; Fri, 27 Oct 2023 14:14:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624512.973090; Fri, 27 Oct 2023 14:14: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 1qwNbv-0008St-0B; Fri, 27 Oct 2023 14:14:51 +0000
Received: by outflank-mailman (input) for mailman id 624512;
 Fri, 27 Oct 2023 14:14: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=bjPi=GJ=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qwNbu-0008Sn-KV
 for xen-devel@lists.xenproject.org; Fri, 27 Oct 2023 14:14:50 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 2f97e3e3-74d3-11ee-9b0e-b553b5be7939;
 Fri, 27 Oct 2023 16:14:48 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id BD97C4EE073E;
 Fri, 27 Oct 2023 16:14: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: 2f97e3e3-74d3-11ee-9b0e-b553b5be7939
MIME-Version: 1.0
Date: Fri, 27 Oct 2023 16:14: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,
 andrew.cooper3@citrix.com, roger.pau@citrix.com, Simone Ballarin
 <simone.ballarin@bugseng.com>, Doug Goldstein <cardoe@cardoe.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][for-4.19 v4] xen: Add deviations for MISRA C:2012
 Rule 7.1
In-Reply-To: <f3ecae05-6fb0-79a7-c3ec-ed2093a8f40e@suse.com>
References: <9bc37dc81744283ca3b92ce3ffad373740122288.1698308237.git.nicola.vetrini@bugseng.com>
 <f3ecae05-6fb0-79a7-c3ec-ed2093a8f40e@suse.com>
Message-ID: <ddb64697b6c9977c36fef81670292896@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 26/10/2023 10:38, Jan Beulich wrote:
> On 26.10.2023 10:18, Nicola Vetrini wrote:
>> --- a/automation/eclair_analysis/ECLAIR/deviations.ecl
>> +++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
>> @@ -85,10 +85,12 @@ conform to the directive."
>>  # Series 7.
>>  #
>> 
>> --doc_begin="Usage of the following constants is safe, since they are 
>> given as-is
>> -in the inflate algorithm specification and there is therefore no risk 
>> of them
>> -being interpreted as decimal constants."
>> --config=MC3R1.R7.1,literals={safe, 
>> "^0(007|37|070|213|236|300|321|330|331|332|333|334|335|337|371)$"}
>> +-doc_begin="It is safe to use certain octal constants the way they 
>> are defined in
>> +specifications, manuals, and algorithm descriptions."
>> +-file_tag+={x86_svm_h, "^xen/arch/x86/hvm/svm/svm\\.h$"}
>> +-file_tag+={x86_emulate_c, "^xen/arch/x86/hvm/svm/emulate\\.c$"}
>> +-config=MC3R1.R7.1,reports+={safe, 
>> "any_area(any_loc(any_exp(file(x86_svm_h)&&macro(^INSTR_ENC$))))"}
>> +-config=MC3R1.R7.1,reports+={safe, 
>> "any_area(text(^.*octal-ok.*$)&&any_loc(any_exp(file(x86_emulate_c)&&macro(^MASK_EXTR$))))"}
> 
> Is the matching of file name and MASK_EXTR() still appropriate with ...
> 
>> --- a/docs/misra/deviations.rst
>> +++ b/docs/misra/deviations.rst
>> @@ -90,6 +90,13 @@ Deviations related to MISRA C:2012 Rules:
>>           - __emulate_2op and __emulate_2op_nobyte
>>           - read_debugreg and write_debugreg
>> 
>> +   * - R7.1
>> +     - It is safe to use certain octal constants the way they are 
>> defined
>> +       in specifications, manuals, and algorithm descriptions. Such 
>> places
>> +       are marked safe with a /\* octal-ok \*/ in-code comment, or 
>> with a SAF
>> +       comment (see safe.json).
>> +     - Tagged as `safe` for ECLAIR.
> 
> ... this description? I would have expected the key now solely is an
> "octal-ok" comment?
> 
> Jan

You have a point. I'll send a quick v5 that fully reflects the 
description.

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


From xen-devel-bounces@lists.xenproject.org Fri Oct 27 14:18:41 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 27 Oct 2023 14:18:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624517.973100 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qwNfc-0000g0-IP; Fri, 27 Oct 2023 14:18:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624517.973100; Fri, 27 Oct 2023 14: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 1qwNfc-0000ft-Fj; Fri, 27 Oct 2023 14:18:40 +0000
Received: by outflank-mailman (input) for mailman id 624517;
 Fri, 27 Oct 2023 14:18: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=HqTC=GJ=bugseng.com=federico.serafini@srs-se1.protection.inumbo.net>)
 id 1qwNfb-0000fn-Nk
 for xen-devel@lists.xenproject.org; Fri, 27 Oct 2023 14:18:39 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id b8f03038-74d3-11ee-98d6-6d05b1d4d9a1;
 Fri, 27 Oct 2023 16:18:38 +0200 (CEST)
Received: from [192.168.1.15] (host-95-247-204-25.retail.telecomitalia.it
 [95.247.204.25])
 by support.bugseng.com (Postfix) with ESMTPSA id 1425E4EE073E;
 Fri, 27 Oct 2023 16:18: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: b8f03038-74d3-11ee-98d6-6d05b1d4d9a1
Message-ID: <4fc39741-40a7-4a60-8cbf-2d23bbf5a238@bugseng.com>
Date: Fri, 27 Oct 2023 16:18:37 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN PATCH] xen/set_{c,p}x_pminfo: address violations od 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>, George Dunlap <george.dunlap@citrix.com>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 xen-devel@lists.xenproject.org
References: <88499ca9a61b59d13d90f6c5f77cbb2e124d850e.1698322083.git.federico.serafini@bugseng.com>
 <beb4255f-76ca-2b09-a953-d02e0f04997e@suse.com>
From: Federico Serafini <federico.serafini@bugseng.com>
Organization: BUGSENG srl
In-Reply-To: <beb4255f-76ca-2b09-a953-d02e0f04997e@suse.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 27/10/23 15:57, Jan Beulich wrote:
> On 26.10.2023 14:09, Federico Serafini wrote:
>> --- a/xen/drivers/cpufreq/cpufreq.c
>> +++ b/xen/drivers/cpufreq/cpufreq.c
>> @@ -457,14 +457,14 @@ static void print_PPC(unsigned int platform_limit)
>>       printk("\t_PPC: %d\n", platform_limit);
>>   }
>>   
>> -int set_px_pminfo(uint32_t acpi_id, struct xen_processor_performance *dom0_px_info)
>> +int set_px_pminfo(uint32_t acpi_id, struct xen_processor_performance *perf)
>>   {
>>       int ret=0, cpuid;
>>       struct processor_pminfo *pmpt;
>>       struct processor_performance *pxpt;
>>   
>>       cpuid = get_cpu_id(acpi_id);
>> -    if ( cpuid < 0 || !dom0_px_info)
>> +    if ( ( cpuid < 0 ) || !perf)
> 
> I don't see the need for the new pair of parentheses here, but if you
> add such, please don't violate style.

Noted.

> 
>> @@ -488,21 +488,21 @@ int set_px_pminfo(uint32_t acpi_id, struct xen_processor_performance *dom0_px_in
>>       pmpt->acpi_id = acpi_id;
>>       pmpt->id = cpuid;
>>   
>> -    if ( dom0_px_info->flags & XEN_PX_PCT )
>> +    if ( perf->flags & XEN_PX_PCT )
>>       {
>>           /* space_id check */
>> -        if (dom0_px_info->control_register.space_id !=
>> -            dom0_px_info->status_register.space_id)
>> +        if ( perf->control_register.space_id !=
>> +             perf->status_register.space_id )
>>           {
>>               ret = -EINVAL;
>>               goto out;
>>           }
>>   
>>           memcpy ((void *)&pxpt->control_register,
>> -                (void *)&dom0_px_info->control_register,
>> +                (void *)&perf->control_register,
>>                   sizeof(struct xen_pct_register));
>>           memcpy ((void *)&pxpt->status_register,
>> -                (void *)&dom0_px_info->status_register,
>> +                (void *)&perf->status_register,
>>                   sizeof(struct xen_pct_register));
>>   
>>           if ( cpufreq_verbose )
>> @@ -512,69 +512,67 @@ int set_px_pminfo(uint32_t acpi_id, struct xen_processor_performance *dom0_px_in
>>           }
>>       }
>>   
>> -    if ( dom0_px_info->flags & XEN_PX_PSS )
>> +    if ( perf->flags & XEN_PX_PSS )
>>       {
>>           /* capability check */
>> -        if (dom0_px_info->state_count <= 1)
>> +        if (perf->state_count <= 1)
> 
> Since you're adjusting style elsewhere, would you mind adding the missing
> blanks here as well?
> 
>>           {
>>               ret = -EINVAL;
>>               goto out;
>>           }
>>   
>>           if ( !(pxpt->states = xmalloc_array(struct xen_processor_px,
>> -                        dom0_px_info->state_count)) )
>> +                                            perf->state_count)) )
>>           {
>>               ret = -ENOMEM;
>>               goto out;
>>           }
>> -        if ( copy_from_guest(pxpt->states, dom0_px_info->states,
>> -                             dom0_px_info->state_count) )
>> +        if ( copy_from_guest(pxpt->states, perf->states, perf->state_count) )
>>           {
>>               ret = -EFAULT;
>>               goto out;
>>           }
>> -        pxpt->state_count = dom0_px_info->state_count;
>> +        pxpt->state_count = perf->state_count;
>>   
>>           if ( cpufreq_verbose )
>>               print_PSS(pxpt->states,pxpt->state_count);
>>       }
>>   
>> -    if ( dom0_px_info->flags & XEN_PX_PSD )
>> +    if ( perf->flags & XEN_PX_PSD )
>>       {
>>           /* check domain coordination */
>> -        if (dom0_px_info->shared_type != CPUFREQ_SHARED_TYPE_ALL &&
>> -            dom0_px_info->shared_type != CPUFREQ_SHARED_TYPE_ANY &&
>> -            dom0_px_info->shared_type != CPUFREQ_SHARED_TYPE_HW)
>> +        if (perf->shared_type != CPUFREQ_SHARED_TYPE_ALL &&
>> +            perf->shared_type != CPUFREQ_SHARED_TYPE_ANY &&
>> +            perf->shared_type != CPUFREQ_SHARED_TYPE_HW)
> 
> Same here then?
> 
> Jan

Sure, I'll pay more attention.

-- 
Federico Serafini, M.Sc.

Software Engineer, BUGSENG (http://bugseng.com)


From xen-devel-bounces@lists.xenproject.org Fri Oct 27 14:26:17 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 27 Oct 2023 14:26:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624522.973110 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qwNmt-0003E4-AG; Fri, 27 Oct 2023 14:26:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624522.973110; Fri, 27 Oct 2023 14:26: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 1qwNmt-0003Dx-7F; Fri, 27 Oct 2023 14:26:11 +0000
Received: by outflank-mailman (input) for mailman id 624522;
 Fri, 27 Oct 2023 14:26: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=jK+m=GJ=cloud.com=george.dunlap@srs-se1.protection.inumbo.net>)
 id 1qwNmr-0003Dr-UH
 for xen-devel@lists.xenproject.org; Fri, 27 Oct 2023 14:26:09 +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 c33dcfc0-74d4-11ee-9b0e-b553b5be7939;
 Fri, 27 Oct 2023 16:26:05 +0200 (CEST)
Received: by mail-wr1-x42d.google.com with SMTP id
 ffacd0b85a97d-32d9cb5e0fcso1494402f8f.0
 for <xen-devel@lists.xenproject.org>; Fri, 27 Oct 2023 07:26:05 -0700 (PDT)
Received: from localhost.localdomain ([90.243.219.52])
 by smtp.gmail.com with ESMTPSA id
 c8-20020adfef48000000b0031fd849e797sm1854974wrp.105.2023.10.27.07.26.04
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Fri, 27 Oct 2023 07:26: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: c33dcfc0-74d4-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1698416764; x=1699021564; 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=1Likxx9/XoscccO6ivXBm/dTGgbdygFlPEOIk/gw8kA=;
        b=gcp19p4yq6ON/nfqTcrULmgMArDdVDfTSOqJXqGww5lgBNDsCoVyv2KEV0aWlgs7F4
         Q8IeIjlUbLZYEJUw8m4yrTzadLu++T9zurSbGbk38ekzGB+jhHoj656ucDUEc//M+9eV
         QUHYSq+GXu85sve34Tc/vd7usu7amd9pQ5CHw=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698416764; x=1699021564;
        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=1Likxx9/XoscccO6ivXBm/dTGgbdygFlPEOIk/gw8kA=;
        b=F21Bdfk2bcd7NRh4Xsahxt/tIg/C0X295h3nlwN/tOZb8Tcu2cFENToevX2c3uH+CE
         JJFVpG1zBwhBJnI8sI45blL7PykDG1AVTjZGF6jsQn+wlyKzRyNt5IAnO+4DrT4uBC8p
         Trh2LCiIcWhOEt5BSs9OMW68nxITbMLv65xaCRtLXjR4MaXRGZ5iQxtxEXEfs3LVNe4j
         1uSrs44A144yat3qmT3iJtXC5MJO4ojRZqMEWrqg3VYo+0R5PmLcUHESUwRWKdGgBdFp
         60iILMm1RUn7/F/GHnbu327MzdnmXLFLG4u43Jf8VYW2QLu9v91nkBZyIHTNNS/GAPA6
         um6w==
X-Gm-Message-State: AOJu0YycqVDZWABMWIHCMb6X45HXHttHCSOCDHatP/sLA5LS7joCLDri
	I0pt/elBYiQIUeG6/x4JzjocYO4B/dT/TwZ/d0I=
X-Google-Smtp-Source: AGHT+IE5gVDU+xs1AVhjUkkVbt3cVi9UMxdBFgKZVoYd7/ePWEZF2Nmyqg2kobyWSjj/sXRBgV289Q==
X-Received: by 2002:adf:ee82:0:b0:32d:a853:af6e with SMTP id b2-20020adfee82000000b0032da853af6emr2351124wro.1.1698416764552;
        Fri, 27 Oct 2023 07:26:04 -0700 (PDT)
From: George Dunlap <george.dunlap@cloud.com>
To: xen-devel@lists.xenproject.org
Cc: George Dunlap <george.dunlap@cloud.com>
Subject: [PATCH] security-process.pandoc: Statement on issuing XSAs for older versions of Xen
Date: Fri, 27 Oct 2023 15:26:02 +0100
Message-ID: <20231027142602.57037-1-george.dunlap@cloud.com>
X-Mailer: git-send-email 2.42.0
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

We recently had a situation where a security issue was discovered
which only affected versions of Xen out of security support from an
upstream perspective.  However, many downstreams (including XenServer
and SUSE) still had supported products based on the versions affected.

Specify what the security team will do in this situation in the
future.  As always, the goal here is to be fair and helpful, without
adding to the workload of the security team.  Inviting downstreams to
list versions and ranges, as well as expecting them to be involved in
the patch, gives organizations without representation in the security
team the opportunity to decide to engage in the security process.  At
the same time, it puts he onus of determining which products and which
versions might be affected, as well as the core work of creating and
testing a patch, on downstreams.

Signed-off-by: George Dunlap <george.dunlap@cloud.com>
---
The entire security-process.pandoc file can be found here:

https://gitlab.com/xen-project/people/gdunlap/old-governance
---
 security-policy.pandoc | 14 ++++++++++++++
 1 file changed, 14 insertions(+)

diff --git a/security-policy.pandoc b/security-policy.pandoc
index 76c25e1..23b6381 100644
--- a/security-policy.pandoc
+++ b/security-policy.pandoc
@@ -30,6 +30,20 @@ Vulnerabilities reported against other Xen Project teams will be handled on a
 best effort basis by the relevant Project Lead together with the Security
 Response Team.
 
+The Xen Project Security Team will issue XSAs, including patches, for
+all upstream versions of the Xen Project Hypervisor currently under
+security support.
+
+It is often the case that downstreams have a longer product support
+lifecycle than upstream Xen provides.  Downstreams are invited to
+inform the security team of the Xen version and support window of
+these products.  If a security issue is discovered which does not
+affect upstream "security supported" versions, but does (or may)
+affect a supported product containing one of these older versions, the
+downstreams will be informed privately.  If at least one of the
+downstreams chooses to participate in the development of a patch, then
+an XSA will be issued according to our normal process.
+
 Specific process
 ----------------
 
-- 
2.42.0



From xen-devel-bounces@lists.xenproject.org Fri Oct 27 14:27:17 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 27 Oct 2023 14:27:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624524.973119 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qwNnw-0003it-J9; Fri, 27 Oct 2023 14:27:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624524.973119; Fri, 27 Oct 2023 14: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 1qwNnw-0003im-G9; Fri, 27 Oct 2023 14:27:16 +0000
Received: by outflank-mailman (input) for mailman id 624524;
 Fri, 27 Oct 2023 14:27: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=jK+m=GJ=cloud.com=george.dunlap@srs-se1.protection.inumbo.net>)
 id 1qwNnv-0003ic-1Z
 for xen-devel@lists.xenproject.org; Fri, 27 Oct 2023 14:27:15 +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 ec22e4b5-74d4-11ee-98d6-6d05b1d4d9a1;
 Fri, 27 Oct 2023 16:27:14 +0200 (CEST)
Received: by mail-lj1-x232.google.com with SMTP id
 38308e7fff4ca-2c518a1d83fso34293701fa.3
 for <xen-devel@lists.xenproject.org>; Fri, 27 Oct 2023 07:27: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: ec22e4b5-74d4-11ee-98d6-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1698416833; x=1699021633; darn=lists.xenproject.org;
        h=content-transfer-encoding:to:subject:message-id:date:from
         :in-reply-to:references:mime-version:from:to:cc:subject:date
         :message-id:reply-to;
        bh=DRiw93aQFfv7gbdGIdLaIQ5MUlo/KpjukHKGlCJoozg=;
        b=GOW7+eVw4+AMUiJ5Lm7Q7p3qYvi3ZiaeCeIwNHFoN4HSZQ8v7/g+aihsxXGJjUsKRH
         NEfunD8OqZBR2fbTVB1Qu0fs3TvcYYG2GXJRvNWvkNM5oJdE2z2F6ArQbFRC/6TzmpRq
         bx6+hBNMJCtWua+5rVhA3+TfkPpREAap+erPg=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698416833; x=1699021633;
        h=content-transfer-encoding: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=DRiw93aQFfv7gbdGIdLaIQ5MUlo/KpjukHKGlCJoozg=;
        b=wx09zc54LJ5cgSBu+8oX2nky6/IrJsDpYOKpNEbDEFv/iigVK9YUNioHegpWyYsPxu
         Q/SeKNE253LzBlzhMVuoyAJNDTDjiRocWqOjTl/fPnm7at+GD8Ytcq/XvjYH6sTntf8/
         v1OnuVcVf/cEdyLwKTyaE3YtLd4cqUbTEKfVMqm74bAITNFnW3aGDI21lIdZWZViQWHp
         ji8qJ5vJiwmMolk8LCXZ9FRx5hshcjapKvyK3IwmWU0hpYgDG0prFr1YGVYpgbsqKmXm
         miJeJu7o+QXktHPKoh+X0QgPHN70IBMfx4PBOmS82Fp/90p+kUXYpOlFYf+AbgDqfEP6
         nZWw==
X-Gm-Message-State: AOJu0YyovXQE/uZZl6alvJMQSSyodeLSO84inIO3SZbh7Ev2suYn5FiT
	OA96DgaYGalWFUJwzVEkD7Nma00valjV1E9LekL6cUcoTqar7SSvugI=
X-Google-Smtp-Source: AGHT+IFltHb9j0GV+G88ObVR1RI+/Z03OUll19E2LQGnl6WPFujIIPahsGUBqRyRt/xvQq83rrueynJ5+4h+K44tGlA=
X-Received: by 2002:a2e:b0da:0:b0:2c5:1bd9:f946 with SMTP id
 g26-20020a2eb0da000000b002c51bd9f946mr2473627ljl.9.1698416833197; Fri, 27 Oct
 2023 07:27:13 -0700 (PDT)
MIME-Version: 1.0
References: <20231027142602.57037-1-george.dunlap@cloud.com>
In-Reply-To: <20231027142602.57037-1-george.dunlap@cloud.com>
From: George Dunlap <george.dunlap@cloud.com>
Date: Fri, 27 Oct 2023 15:27:01 +0100
Message-ID: <CA+zSX=besyZPfZ83QmEd_JXCvL6thjC1rv5=Jsr-1Fzu59EZWw@mail.gmail.com>
Subject: Re: [PATCH] security-process.pandoc: Statement on issuing XSAs for
 older versions of Xen
To: xen-devel@lists.xenproject.org
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Fri, Oct 27, 2023 at 3:26=E2=80=AFPM George Dunlap <george.dunlap@cloud.=
com> wrote:
>
> We recently had a situation where a security issue was discovered
> which only affected versions of Xen out of security support from an
> upstream perspective.  However, many downstreams (including XenServer
> and SUSE) still had supported products based on the versions affected.
>
> Specify what the security team will do in this situation in the
> future.  As always, the goal here is to be fair and helpful, without
> adding to the workload of the security team.  Inviting downstreams to
> list versions and ranges, as well as expecting them to be involved in
> the patch, gives organizations without representation in the security
> team the opportunity to decide to engage in the security process.  At
> the same time, it puts he onus of determining which products and which
> versions might be affected, as well as the core work of creating and
> testing a patch, on downstreams.
>
> Signed-off-by: George Dunlap <george.dunlap@cloud.com>
> ---
> The entire security-process.pandoc file can be found here:
>
> https://gitlab.com/xen-project/people/gdunlap/old-governance

...and you can see this as a pull request here:

https://gitlab.com/xen-project/people/gdunlap/old-governance/-/merge_reques=
ts/1

 -George


From xen-devel-bounces@lists.xenproject.org Fri Oct 27 15:11:57 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 27 Oct 2023 15:11:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624606.973178 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qwOV5-0006s7-SJ; Fri, 27 Oct 2023 15:11:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624606.973178; Fri, 27 Oct 2023 15: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 1qwOV5-0006s0-Ox; Fri, 27 Oct 2023 15:11:51 +0000
Received: by outflank-mailman (input) for mailman id 624606;
 Fri, 27 Oct 2023 15: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=bjPi=GJ=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qwOV4-0006ru-BD
 for xen-devel@lists.xenproject.org; Fri, 27 Oct 2023 15:11:50 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 25f7debd-74db-11ee-9b0e-b553b5be7939;
 Fri, 27 Oct 2023 17:11:48 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id D87094EE073E;
 Fri, 27 Oct 2023 17:11: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: 25f7debd-74db-11ee-9b0e-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>,
	Simone Ballarin <simone.ballarin@bugseng.com>,
	Doug Goldstein <cardoe@cardoe.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Julien Grall <julien@xen.org>,
	Wei Liu <wl@xen.org>
Subject: [XEN PATCH][for-4.19 v5] xen: Add deviations for MISRA C:2012 Rule 7.1
Date: Fri, 27 Oct 2023 17:11:43 +0200
Message-Id: <0c86b50a796ba2aaab01e30935ed559ab719d33a.1698418578.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

As specified in rules.rst, these constants can be used
in the code.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
---
Changes in v2:
- replace some SAF deviations with configurations
Changes in v3:
- refine configurations and justifications
Changes in v4:
- updated deviation record comment.
Changes in v5:
- use octal-ok instead of keying the deviation to the file.
---
Indentation on svm.h has been modified to fit the whole line within
80 characters
---
 .../eclair_analysis/ECLAIR/deviations.ecl     |  7 ++--
 docs/misra/deviations.rst                     |  7 ++++
 docs/misra/safe.json                          |  8 ++++
 xen/arch/x86/hvm/svm/emulate.c                |  6 +--
 xen/arch/x86/hvm/svm/svm.h                    | 38 +++++++++----------
 xen/common/inflate.c                          |  4 +-
 6 files changed, 42 insertions(+), 28 deletions(-)

diff --git a/automation/eclair_analysis/ECLAIR/deviations.ecl b/automation/eclair_analysis/ECLAIR/deviations.ecl
index fa56e5c00a27..fabbf9d66330 100644
--- a/automation/eclair_analysis/ECLAIR/deviations.ecl
+++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
@@ -85,10 +85,9 @@ conform to the directive."
 # Series 7.
 #
 
--doc_begin="Usage of the following constants is safe, since they are given as-is
-in the inflate algorithm specification and there is therefore no risk of them
-being interpreted as decimal constants."
--config=MC3R1.R7.1,literals={safe, "^0(007|37|070|213|236|300|321|330|331|332|333|334|335|337|371)$"}
+-doc_begin="It is safe to use certain octal constants the way they are defined
+in specifications, manuals, and algorithm descriptions."
+-config=MC3R1.R7.1,reports+={safe, "any_area(any_loc(any_exp(text(^.*octal-ok.*$))))"}
 -doc_end
 
 -doc_begin="Violations in files that maintainers have asked to not modify in the
diff --git a/docs/misra/deviations.rst b/docs/misra/deviations.rst
index 8511a189253b..8aaaa1473fb4 100644
--- a/docs/misra/deviations.rst
+++ b/docs/misra/deviations.rst
@@ -90,6 +90,13 @@ Deviations related to MISRA C:2012 Rules:
          - __emulate_2op and __emulate_2op_nobyte
          - read_debugreg and write_debugreg
 
+   * - R7.1
+     - It is safe to use certain octal constants the way they are defined
+       in specifications, manuals, and algorithm descriptions. Such places
+       are marked safe with a /\* octal-ok \*/ in-code comment, or with a SAF
+       comment (see safe.json).
+     - Tagged as `safe` for ECLAIR.
+
    * - R7.2
      - Violations caused by __HYPERVISOR_VIRT_START are related to the
        particular use of it done in xen_mk_ulong.
diff --git a/docs/misra/safe.json b/docs/misra/safe.json
index 39c5c056c7d4..7ea47344ffcc 100644
--- a/docs/misra/safe.json
+++ b/docs/misra/safe.json
@@ -20,6 +20,14 @@
         },
         {
             "id": "SAF-2-safe",
+            "analyser": {
+                "eclair": "MC3R1.R7.1"
+            },
+            "name": "Rule 7.1: constants defined in specifications, manuals, and algorithm descriptions",
+            "text": "It is safe to use certain octal constants the way they are defined in specifications, manuals, and algorithm descriptions."
+        },
+        {
+            "id": "SAF-3-safe",
             "analyser": {},
             "name": "Sentinel",
             "text": "Next ID to be used"
diff --git a/xen/arch/x86/hvm/svm/emulate.c b/xen/arch/x86/hvm/svm/emulate.c
index aa2c61c433b3..93ac1d3435f9 100644
--- a/xen/arch/x86/hvm/svm/emulate.c
+++ b/xen/arch/x86/hvm/svm/emulate.c
@@ -90,9 +90,9 @@ unsigned int svm_get_insn_len(struct vcpu *v, unsigned int instr_enc)
         if ( !instr_modrm )
             return emul_len;
 
-        if ( modrm_mod       == MASK_EXTR(instr_modrm, 0300) &&
-             (modrm_reg & 7) == MASK_EXTR(instr_modrm, 0070) &&
-             (modrm_rm  & 7) == MASK_EXTR(instr_modrm, 0007) )
+        if ( modrm_mod       == MASK_EXTR(instr_modrm, 0300) && /* octal-ok */
+             (modrm_reg & 7) == MASK_EXTR(instr_modrm, 0070) && /* octal-ok */
+             (modrm_rm  & 7) == MASK_EXTR(instr_modrm, 0007) )  /* octal-ok */
             return emul_len;
     }
 
diff --git a/xen/arch/x86/hvm/svm/svm.h b/xen/arch/x86/hvm/svm/svm.h
index d2a781fc3fb5..8dbf37ff4961 100644
--- a/xen/arch/x86/hvm/svm/svm.h
+++ b/xen/arch/x86/hvm/svm/svm.h
@@ -53,25 +53,25 @@ static inline void svm_invlpga(unsigned long linear, uint32_t asid)
  */
 #define INSTR_ENC(opc, modrm) (((opc) << 8) | (modrm))
 
-#define INSTR_PAUSE       INSTR_ENC(X86EMUL_OPC_F3(0, 0x90), 0)
-#define INSTR_INT3        INSTR_ENC(X86EMUL_OPC(   0, 0xcc), 0)
-#define INSTR_ICEBP       INSTR_ENC(X86EMUL_OPC(   0, 0xf1), 0)
-#define INSTR_HLT         INSTR_ENC(X86EMUL_OPC(   0, 0xf4), 0)
-#define INSTR_XSETBV      INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0321)
-#define INSTR_VMRUN       INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0330)
-#define INSTR_VMCALL      INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0331)
-#define INSTR_VMLOAD      INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0332)
-#define INSTR_VMSAVE      INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0333)
-#define INSTR_STGI        INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0334)
-#define INSTR_CLGI        INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0335)
-#define INSTR_INVLPGA     INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0337)
-#define INSTR_RDTSCP      INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0371)
-#define INSTR_INVD        INSTR_ENC(X86EMUL_OPC(0x0f, 0x08), 0)
-#define INSTR_WBINVD      INSTR_ENC(X86EMUL_OPC(0x0f, 0x09), 0)
-#define INSTR_WRMSR       INSTR_ENC(X86EMUL_OPC(0x0f, 0x30), 0)
-#define INSTR_RDTSC       INSTR_ENC(X86EMUL_OPC(0x0f, 0x31), 0)
-#define INSTR_RDMSR       INSTR_ENC(X86EMUL_OPC(0x0f, 0x32), 0)
-#define INSTR_CPUID       INSTR_ENC(X86EMUL_OPC(0x0f, 0xa2), 0)
+#define INSTR_PAUSE      INSTR_ENC(X86EMUL_OPC_F3(0, 0x90), 0)
+#define INSTR_INT3       INSTR_ENC(X86EMUL_OPC(   0, 0xcc), 0)
+#define INSTR_ICEBP      INSTR_ENC(X86EMUL_OPC(   0, 0xf1), 0)
+#define INSTR_HLT        INSTR_ENC(X86EMUL_OPC(   0, 0xf4), 0)
+#define INSTR_XSETBV     INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0321) /* octal-ok */
+#define INSTR_VMRUN      INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0330) /* octal-ok */
+#define INSTR_VMCALL     INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0331) /* octal-ok */
+#define INSTR_VMLOAD     INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0332) /* octal-ok */
+#define INSTR_VMSAVE     INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0333) /* octal-ok */
+#define INSTR_STGI       INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0334) /* octal-ok */
+#define INSTR_CLGI       INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0335) /* octal-ok */
+#define INSTR_INVLPGA    INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0337) /* octal-ok */
+#define INSTR_RDTSCP     INSTR_ENC(X86EMUL_OPC(0x0f, 0x01), 0371) /* octal-ok */
+#define INSTR_INVD       INSTR_ENC(X86EMUL_OPC(0x0f, 0x08), 0)
+#define INSTR_WBINVD     INSTR_ENC(X86EMUL_OPC(0x0f, 0x09), 0)
+#define INSTR_WRMSR      INSTR_ENC(X86EMUL_OPC(0x0f, 0x30), 0)
+#define INSTR_RDTSC      INSTR_ENC(X86EMUL_OPC(0x0f, 0x31), 0)
+#define INSTR_RDMSR      INSTR_ENC(X86EMUL_OPC(0x0f, 0x32), 0)
+#define INSTR_CPUID      INSTR_ENC(X86EMUL_OPC(0x0f, 0xa2), 0)
 
 unsigned int svm_get_insn_len(struct vcpu *v, unsigned int instr_enc);
 unsigned int svm_get_task_switch_insn_len(void);
diff --git a/xen/common/inflate.c b/xen/common/inflate.c
index 8fa4b96d12a3..be6a9115187e 100644
--- a/xen/common/inflate.c
+++ b/xen/common/inflate.c
@@ -1201,8 +1201,8 @@ static int __init gunzip(void)
     magic[1] = NEXTBYTE();
     method   = NEXTBYTE();
 
-    if (magic[0] != 037 ||
-        ((magic[1] != 0213) && (magic[1] != 0236))) {
+    /* SAF-2-safe */
+    if (magic[0] != 037 || ((magic[1] != 0213) && (magic[1] != 0236))) {
         error("bad gzip magic numbers");
         return -1;
     }
-- 
2.34.1


From xen-devel-bounces@lists.xenproject.org Fri Oct 27 18:07:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 27 Oct 2023 18:07:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624613.973188 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qwRF8-0000pb-BA; Fri, 27 Oct 2023 18:07:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624613.973188; Fri, 27 Oct 2023 18:07: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 1qwRF8-0000pU-8X; Fri, 27 Oct 2023 18:07:34 +0000
Received: by outflank-mailman (input) for mailman id 624613;
 Fri, 27 Oct 2023 18:07: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=cQhv=GJ=amd.com=ayan.kumar.halder@srs-se1.protection.inumbo.net>)
 id 1qwRF6-0000pO-V7
 for xen-devel@lists.xenproject.org; Fri, 27 Oct 2023 18:07:33 +0000
Received: from NAM10-DM6-obe.outbound.protection.outlook.com
 (mail-dm6nam10on20627.outbound.protection.outlook.com
 [2a01:111:f400:7e88::627])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id b112321a-74f3-11ee-98d6-6d05b1d4d9a1;
 Fri, 27 Oct 2023 20:07:30 +0200 (CEST)
Received: from CY8P222CA0022.NAMP222.PROD.OUTLOOK.COM (2603:10b6:930:6b::15)
 by IA0PR12MB7652.namprd12.prod.outlook.com (2603:10b6:208:434::6) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.47; Fri, 27 Oct
 2023 18:07:26 +0000
Received: from CY4PEPF0000E9D2.namprd03.prod.outlook.com
 (2603:10b6:930:6b:cafe::d6) by CY8P222CA0022.outlook.office365.com
 (2603:10b6:930:6b::15) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.24 via Frontend
 Transport; Fri, 27 Oct 2023 18:07:26 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 CY4PEPF0000E9D2.mail.protection.outlook.com (10.167.241.145) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6933.19 via Frontend Transport; Fri, 27 Oct 2023 18:07:25 +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.32; Fri, 27 Oct
 2023 13:07: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.32; Fri, 27 Oct
 2023 13:07:24 -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.32 via
 Frontend Transport; Fri, 27 Oct 2023 13:07: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: b112321a-74f3-11ee-98d6-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=P59YC14NHj4UDf9tMuTJbqdUABQTq1rFJReBnkqg1dC9flHpGTT8HQDjPvkhHNDx6IOI0KUCaK4CsjypnSJ1VolO+XDKncvKK7Tg8djxOE515ikIXXbMA76I4tJ3uIdvyaztvcSyCBcJK7IFBRJEhBDg8M8kCdt0FwMBFegD6nRsiCZl94FB0qaBRNAljKHx/BsM9EsA8PzOqIkee9fN+X6d5ZHvo8yb7iCyMIYBpjDL/BQAAdclL77y0PBA7/E6U/kUHZ7NJNuJKt7C5sqo9rAxksxTH2YoXsxGT0lpzpwNB4wwT5U8pReBtIRRKYGtKeUuj7IAllwfnj4IFgsltQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=83quyAosQOtu5va1SRSOx1l+J26kwo4vlcwl/4hDc3s=;
 b=KBSFHfiCYV9KPZiukPROlsw0Bgs0x/I0GXpKS/wm6giWWk70/1IJe6bAT354cBkyJC+ULWoIsHKEvyQZ7hsswCakZySzgVkqa6jGFyKE0PHUlWlCPXeSMDM6r8+ALUiXOsX3WbUz3X2urs0fNBYG2xMzZJ+Zga+axb8upMimOSTENElrXb1S8jjgH41XwE6541yPZAUIsJmRkv7KiXFTukJwuT9ltgpk2rH0MNIv8JQVfJhuvGtyhB2ftTeTTCgV1qj4L1tCbkqOKsQfNe5ixg6twgUX5n6VZgMBg38GVDFlievMVwUQvb+ORmyRaZbKXUnvha/66aVCb+lSOu3jBg==
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 (0)
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=83quyAosQOtu5va1SRSOx1l+J26kwo4vlcwl/4hDc3s=;
 b=joVgM6DXcbWzZOOkrHVn1iFQIsauuLr1gjtg2fgUjlL7K4f6S9gZefXDGgfQm5EEcctyBEn6V2mOILQXH4bqvOH02Oc3xBIBKdUS37q0ZwGwzDZr3J6d0iDcANYTOJaO4ohKLu9NwnDK+YmMZWE5//WcbLCE/f84D6awmerzMqw=
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>, <julien@xen.org>, <bertrand.marquis@arm.com>,
	<michal.orzel@amd.com>, Ayan Kumar Halder <ayan.kumar.halder@amd.com>
Subject: [XEN v3] xen/arm32: head: Replace load_paddr with adr_l when they are equivalent
Date: Fri, 27 Oct 2023 19:07:15 +0100
Message-ID: <20231027180715.3484439-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: CY4PEPF0000E9D2:EE_|IA0PR12MB7652:EE_
X-MS-Office365-Filtering-Correlation-Id: 8352d35c-ca49-4801-0274-08dbd7179342
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	HZw8qShpUzfTv8OLCs+bElsonVOTXgbSu5iCRAZa4/wjgTgcbiY9gTQt/vQVOJZ1KHzDtwciJ+kc3K2AjRWfxtHipYzcbXbwEzA6Won5wX2Mp/fvSsAZxS1/YjRM+MuoyF4nKwZWlx7C/s4UgPkv4LR9dAtb7ZSy4R6NV65LXxBertM+77Ndi9Iz1JQbZPqZwCzpzczVIdT+M0n2I7lu7oktacBnf1dE5vITAqQiJzekHtA94k/mbYKYr8ZPGrEVZ/gYMCyk+atXYL3aA7ZgI3ZjrTGh6uvWjakliRG+2QLMlM/AOZpJ3obUDoAixNMyHTwz3xmcMI5MDXXewwq/2T3N6qWIFzRPEkhmq6SsBQV8e+c/D0Gp9kjtiSV/lAHv3CImJIhzjGRThlem0dHryTQbd10cA3zcx91XcG00+427rhy67mwkViRndZx+oufXekT0q7hMj8G38v69J9myjQdnZiGFxvdh54ZGlO+MZ9/eIk5cSeDG5jxqYbJvxtSzEXYD0V8nz8ucZOoe23/BUV5alcobyH0wW+iHm3CbBmIv3ZuVcgiNzknqcUBDuHCnxgr7rB9QWtReGCk0GtOm+9fpoAVMtF+74foNU8D8T5HM8AkpCDQMsxO2ySvJ3804OVuDwPxwTk1afHyk+sql3ktANZhHfPHsOLIUjds+Pf3SXpEQFPENZ25qORN85nsVclYQmLQN1s8K9KNFe8WmOL7H438O/qPMlnIl32CVjsxEEghpE9RWdm3eQZHaJrtaZVpbcqNEGv7vmOKS+i/UOmAyenLqPTcneZ9JMMyvBy2Z7s4QLmf3FY86j7f8Ckop
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)(230922051799003)(186009)(64100799003)(451199024)(1800799009)(82310400011)(40470700004)(46966006)(36840700001)(70206006)(40460700003)(86362001)(47076005)(36860700001)(336012)(6666004)(1076003)(54906003)(83380400001)(26005)(4326008)(426003)(316002)(8676002)(478600001)(70586007)(2906002)(5660300002)(966005)(8936002)(356005)(6916009)(81166007)(82740400003)(41300700001)(40480700001)(2616005)(103116003)(36756003)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Oct 2023 18:07:25.6603
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 8352d35c-ca49-4801-0274-08dbd7179342
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:
	CY4PEPF0000E9D2.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA0PR12MB7652

Before the MMU is turned on, PC uses physical address. Thus, one can use adr_l
instead of load_paddr to obtain the physical address of a symbol.

The only exception (for this replacement) is create_table_entry() which is
called before and after MMU is turned on.

Also, in lookup_processor_type() "r10" is no longer used. The reason being
__lookup_processor_type uses adr_l (thus r10 is no longer used to obtain the
physical address offset). Consequently, there is no need to save/restore r10.

Signed-off-by: Ayan Kumar Halder <ayan.kumar.halder@amd.com>
---
Refer https://lists.archive.carbon60.com/xen/devel/682900 for details.

Changes from :-

v1 :- 1. No need to modify create_table_entry().
2. Remove "mov   r10, #0 " in lookup_processor_type().

v2 :- 1. No need to save/restore r10 in lookup_processor_type().
2. Update the commit message title.

 xen/arch/arm/arm32/head.S | 19 ++++++++-----------
 1 file changed, 8 insertions(+), 11 deletions(-)

diff --git a/xen/arch/arm/arm32/head.S b/xen/arch/arm/arm32/head.S
index 33b038e7e0..1fcc6f745e 100644
--- a/xen/arch/arm/arm32/head.S
+++ b/xen/arch/arm/arm32/head.S
@@ -171,7 +171,7 @@ past_zImage:
 
         /* Using the DTB in the .dtb section? */
 .ifnes CONFIG_DTB_FILE,""
-        load_paddr r8, _sdtb
+        adr_l r8, _sdtb
 .endif
 
         /* Initialize the UART if earlyprintk has been enabled. */
@@ -213,7 +213,7 @@ GLOBAL(init_secondary)
         mrc   CP32(r1, MPIDR)
         bic   r7, r1, #(~MPIDR_HWID_MASK) /* Mask out flags to get CPU ID */
 
-        load_paddr r0, smp_up_cpu
+        adr_l r0, smp_up_cpu
         dsb
 2:      ldr   r1, [r0]
         cmp   r1, r7
@@ -479,7 +479,7 @@ create_page_tables:
          * create_table_entry_paddr() will clobber the register storing
          * the physical address of the table to point to.
          */
-        load_paddr r5, boot_third
+        adr_l r5, boot_third
         mov_w r4, XEN_VIRT_START
 .rept XEN_NR_ENTRIES(2)
         mov   r0, r5                        /* r0 := paddr(l3 table) */
@@ -578,7 +578,7 @@ enable_mmu:
         flush_xen_tlb_local r0
 
         /* Write Xen's PT's paddr into the HTTBR */
-        load_paddr r0, boot_pgtable
+        adr_l r0, boot_pgtable
         mov   r1, #0                 /* r0:r1 is paddr (boot_pagetable) */
         mcrr  CP64(r0, r1, HTTBR)
         isb
@@ -876,11 +876,10 @@ putn:   mov   pc, lr
 
 /* This provides a C-API version of __lookup_processor_type */
 ENTRY(lookup_processor_type)
-        stmfd sp!, {r4, r10, lr}
-        mov   r10, #0                   /* r10 := offset between virt&phys */
+        stmfd sp!, {r4, lr}
         bl    __lookup_processor_type
         mov r0, r1
-        ldmfd sp!, {r4, r10, pc}
+        ldmfd sp!, {r4, pc}
 
 /*
  *  Read processor ID register (CP#15, CR0), and Look up in the linker-built
@@ -888,8 +887,6 @@ ENTRY(lookup_processor_type)
  * the __proc_info lists since we aren't running with the MMU on (and therefore,
  * we are not in correct address space). We have to calculate the offset.
  *
- * r10: offset between virt&phys
- *
  * Returns:
  * r0: CPUID
  * r1: proc_info pointer
@@ -897,8 +894,8 @@ ENTRY(lookup_processor_type)
  */
 __lookup_processor_type:
         mrc   CP32(r0, MIDR)                /* r0 := our cpu id */
-        load_paddr r1, __proc_info_start
-        load_paddr r2, __proc_info_end
+        adr_l r1, __proc_info_start
+        adr_l r2, __proc_info_end
 1:      ldr   r3, [r1, #PROCINFO_cpu_mask]
         and   r4, r0, r3                    /* r4 := our cpu id with mask */
         ldr   r3, [r1, #PROCINFO_cpu_val]   /* r3 := cpu val in current proc info */
-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Fri Oct 27 18:37:14 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 27 Oct 2023 18:37:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624617.973198 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qwRhj-0004n1-OF; Fri, 27 Oct 2023 18:37:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624617.973198; Fri, 27 Oct 2023 18: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 1qwRhj-0004mu-KN; Fri, 27 Oct 2023 18:37:07 +0000
Received: by outflank-mailman (input) for mailman id 624617;
 Fri, 27 Oct 2023 18:37: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=AA2W=GJ=casper.srs.infradead.org=BATV+92d2995e4a7c3d3365be+7369+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qwRhg-0004mX-Kn
 for xen-devel@lists.xenproject.org; Fri, 27 Oct 2023 18:37:05 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id d0a5ef47-74f7-11ee-9b0e-b553b5be7939;
 Fri, 27 Oct 2023 20:37:00 +0200 (CEST)
Received: from [2001:8b0:10b:5:8f9a:f53a:1a74:1a12]
 (helo=u3832b3a9db3152.ant.amazon.com)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qwRhU-004wDA-1R; Fri, 27 Oct 2023 18:36: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: d0a5ef47-74f7-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=MIME-Version:Content-Type:Date:Cc:To:
	From:Subject:Message-ID:Sender:Reply-To:Content-Transfer-Encoding:Content-ID:
	Content-Description:In-Reply-To:References;
	bh=Vsp70uUjmZBYC/PeJqsr4c3tnhKpPArVAhfeb/JBx+4=; b=A+K0J8f5m4iW6/xEVFkF4+DfCi
	V9cXPdogqZrwnZutMQIItIsvL/d3R8H+2vyvRMei1SZuOHxhpny5bMDtN1T8Q/6ziIvJJ9V5hPSnX
	5n6ohNV4mE8zkEC4BcJXuX84C7myQCpEplK0b6FROpc5aNmLN/N/zk8ThUkVZ0+B3dFg9BdUiJsWH
	KMxzKy+PGNs3LwVX+FyH8X2zlhrtHp5hjPhxzfPGJcMlM7/t9xau91SMFB9C2CxbsOVz8dap2vqw+
	KEelc7Xm7oRK6iqapER+yAYGnNtszeXUjlU7brEgjTc5BhF+UoCUqMr6iCTLdrIJwxxk6QobZuJwL
	RPFoBhUg==;
Message-ID: <a079bba5a0e47d6534b307553fc3772d26ce911b.camel@infradead.org>
Subject: [PATCH] acpi_idle: use raw_safe_halt() from acpi_idle_play_dead()
From: David Woodhouse <dwmw2@infradead.org>
To: linux-acpi <linux-acpi@vger.kernel.org>, linux-kernel
	 <linux-kernel@vger.kernel.org>
Cc: "Rafael J. Wysocki" <rafael@kernel.org>, Len Brown <lenb@kernel.org>, 
 Juergen Gross <jgross@suse.com>, xen-devel
 <xen-devel@lists.xenproject.org>, Peter Zijlstra <peterz@infradead.org>,
 Ingo Molnar <mingo@redhat.com>, Will Deacon <will@kernel.org>, Waiman Long
 <longman@redhat.com>, Boqun Feng <boqun.feng@gmail.com>
Date: Fri, 27 Oct 2023 19:36:51 +0100
Content-Type: multipart/signed; micalg="sha-256"; protocol="application/pkcs7-signature";
	boundary="=-m3QW9bQiD6p/UWx5bqvF"
User-Agent: Evolution 3.44.4-0ubuntu2 
MIME-Version: 1.0
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html


--=-m3QW9bQiD6p/UWx5bqvF
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

From: David Woodhouse <dwmw@amazon.co.uk>

Xen HVM guests were observed taking triple-faults when attempting to
online a previously offlined vCPU.

Investigation showed that the fault was coming from a failing call
to lockdep_assert_irqs_disabled(), in load_current_idt() which was
too early in the CPU bringup to actually catch the exception and
report the failure cleanly.

This was a false positive, caused by acpi_idle_play_dead() setting
the per-cpu hardirqs_enabled flag by calling safe_halt(). Switch it
to use raw_safe_halt() instead, which doesn't do so.

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
We might {also,instead} explicitly set the hardirqs_enabled flag to
zero when bringing up an AP?

 drivers/acpi/processor_idle.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/acpi/processor_idle.c b/drivers/acpi/processor_idle.c
index 3a34a8c425fe..55437f5e0c3a 100644
--- a/drivers/acpi/processor_idle.c
+++ b/drivers/acpi/processor_idle.c
@@ -592,7 +592,7 @@ static int acpi_idle_play_dead(struct cpuidle_device *d=
ev, int index)
 	while (1) {
=20
 		if (cx->entry_method =3D=3D ACPI_CSTATE_HALT)
-			safe_halt();
+			raw_safe_halt();
 		else if (cx->entry_method =3D=3D ACPI_CSTATE_SYSTEMIO) {
 			io_idle(cx->address);
 		} else
--=20
2.41.0



--=-m3QW9bQiD6p/UWx5bqvF
Content-Type: application/pkcs7-signature; name="smime.p7s"
Content-Disposition: attachment; filename="smime.p7s"
Content-Transfer-Encoding: base64

MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgEFADCABgkqhkiG9w0BBwEAAKCCEkQw
ggYQMIID+KADAgECAhBNlCwQ1DvglAnFgS06KwZPMA0GCSqGSIb3DQEBDAUAMIGIMQswCQYDVQQG
EwJVUzETMBEGA1UECBMKTmV3IEplcnNleTEUMBIGA1UEBxMLSmVyc2V5IENpdHkxHjAcBgNVBAoT
FVRoZSBVU0VSVFJVU1QgTmV0d29yazEuMCwGA1UEAxMlVVNFUlRydXN0IFJTQSBDZXJ0aWZpY2F0
aW9uIEF1dGhvcml0eTAeFw0xODExMDIwMDAwMDBaFw0zMDEyMzEyMzU5NTlaMIGWMQswCQYDVQQG
EwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYD
VQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50
aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC
AQEAyjztlApB/975Rrno1jvm2pK/KxBOqhq8gr2+JhwpKirSzZxQgT9tlC7zl6hn1fXjSo5MqXUf
ItMltrMaXqcESJuK8dtK56NCSrq4iDKaKq9NxOXFmqXX2zN8HHGjQ2b2Xv0v1L5Nk1MQPKA19xeW
QcpGEGFUUd0kN+oHox+L9aV1rjfNiCj3bJk6kJaOPabPi2503nn/ITX5e8WfPnGw4VuZ79Khj1YB
rf24k5Ee1sLTHsLtpiK9OjG4iQRBdq6Z/TlVx/hGAez5h36bBJMxqdHLpdwIUkTqT8se3ed0PewD
ch/8kHPo5fZl5u1B0ecpq/sDN/5sCG52Ds+QU5O5EwIDAQABo4IBZDCCAWAwHwYDVR0jBBgwFoAU
U3m/WqorSs9UgOHYm8Cd8rIDZsswHQYDVR0OBBYEFAnA8vwL2pTbX/4r36iZQs/J4K0AMA4GA1Ud
DwEB/wQEAwIBhjASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEF
BQcDBDARBgNVHSAECjAIMAYGBFUdIAAwUAYDVR0fBEkwRzBFoEOgQYY/aHR0cDovL2NybC51c2Vy
dHJ1c3QuY29tL1VTRVJUcnVzdFJTQUNlcnRpZmljYXRpb25BdXRob3JpdHkuY3JsMHYGCCsGAQUF
BwEBBGowaDA/BggrBgEFBQcwAoYzaHR0cDovL2NydC51c2VydHJ1c3QuY29tL1VTRVJUcnVzdFJT
QUFkZFRydXN0Q0EuY3J0MCUGCCsGAQUFBzABhhlodHRwOi8vb2NzcC51c2VydHJ1c3QuY29tMA0G
CSqGSIb3DQEBDAUAA4ICAQBBRHUAqznCFfXejpVtMnFojADdF9d6HBA4kMjjsb0XMZHztuOCtKF+
xswhh2GqkW5JQrM8zVlU+A2VP72Ky2nlRA1GwmIPgou74TZ/XTarHG8zdMSgaDrkVYzz1g3nIVO9
IHk96VwsacIvBF8JfqIs+8aWH2PfSUrNxP6Ys7U0sZYx4rXD6+cqFq/ZW5BUfClN/rhk2ddQXyn7
kkmka2RQb9d90nmNHdgKrwfQ49mQ2hWQNDkJJIXwKjYA6VUR/fZUFeCUisdDe/0ABLTI+jheXUV1
eoYV7lNwNBKpeHdNuO6Aacb533JlfeUHxvBz9OfYWUiXu09sMAviM11Q0DuMZ5760CdO2VnpsXP4
KxaYIhvqPqUMWqRdWyn7crItNkZeroXaecG03i3mM7dkiPaCkgocBg0EBYsbZDZ8bsG3a08LwEsL
1Ygz3SBsyECa0waq4hOf/Z85F2w2ZpXfP+w8q4ifwO90SGZZV+HR/Jh6rEaVPDRF/CEGVqR1hiuQ
OZ1YL5ezMTX0ZSLwrymUE0pwi/KDaiYB15uswgeIAcA6JzPFf9pLkAFFWs1QNyN++niFhsM47qod
x/PL+5jR87myx5uYdBEQkkDc+lKB1Wct6ucXqm2EmsaQ0M95QjTmy+rDWjkDYdw3Ms6mSWE3Bn7i
5ZgtwCLXgAIe5W8mybM2JzCCBhQwggT8oAMCAQICEQDGvhmWZ0DEAx0oURL6O6l+MA0GCSqGSIb3
DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYD
VQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28g
UlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMB4XDTIyMDEwNzAw
MDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJARYTZHdtdzJAaW5mcmFkZWFkLm9y
ZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3GpC2bomUqk+91wLYBzDMcCj5C9m6
oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZHh7htyAkWYVoFsFPrwHounto8xTsy
SSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT9YgcBqKCo65pTFmOnR/VVbjJk4K2
xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNjP+qDrh0db7PAjO1D4d5ftfrsf+kd
RR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy2U+eITZ5LLE5s45mX2oPFknWqxBo
bQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3BgBEmfsYWlBXO8rVXfvPgLs32VdV
NZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/7auNVRmPB3v5SWEsH8xi4Bez2V9U
KxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmdlFYhAflWKQ03Ufiu8t3iBE3VJbc2
5oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9aelIl6vtbhMA+l0nfrsORMa4kobqQ5
C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMBAAGjggHMMIIByDAfBgNVHSMEGDAW
gBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeDMcimo0oz8o1R1Nver3ZVpSkwDgYD
VR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYwFAYIKwYBBQUHAwQGCCsGAQUFBwMC
MEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYBBQUHAgEWF2h0dHBzOi8vc2VjdGln
by5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9jcmwuc2VjdGlnby5jb20vU2VjdGln
b1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1haWxDQS5jcmwwgYoGCCsGAQUFBwEB
BH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdvLmNvbS9TZWN0aWdvUlNBQ2xpZW50
QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAjBggrBgEFBQcwAYYXaHR0cDovL29j
c3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5mcmFkZWFkLm9yZzANBgkqhkiG9w0B
AQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQvQ/fzPXmtR9t54rpmI2TfyvcKgOXp
qa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvIlSPrzIB4Z2wyIGQpaPLlYflrrVFK
v9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9ChWFfgSXvrWDZspnU3Gjw/rMHrGnql
Htlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0whpBtXdyDjzBtQTaZJ7zTT/vlehc/
tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9IzCCBhQwggT8oAMCAQICEQDGvhmW
Z0DEAx0oURL6O6l+MA0GCSqGSIb3DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3Jl
YXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0
ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJl
IEVtYWlsIENBMB4XDTIyMDEwNzAwMDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJ
ARYTZHdtdzJAaW5mcmFkZWFkLm9yZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3
GpC2bomUqk+91wLYBzDMcCj5C9m6oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZH
h7htyAkWYVoFsFPrwHounto8xTsySSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT
9YgcBqKCo65pTFmOnR/VVbjJk4K2xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNj
P+qDrh0db7PAjO1D4d5ftfrsf+kdRR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy
2U+eITZ5LLE5s45mX2oPFknWqxBobQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3
BgBEmfsYWlBXO8rVXfvPgLs32VdVNZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/
7auNVRmPB3v5SWEsH8xi4Bez2V9UKxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmd
lFYhAflWKQ03Ufiu8t3iBE3VJbc25oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9ae
lIl6vtbhMA+l0nfrsORMa4kobqQ5C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMB
AAGjggHMMIIByDAfBgNVHSMEGDAWgBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeD
Mcimo0oz8o1R1Nver3ZVpSkwDgYDVR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYw
FAYIKwYBBQUHAwQGCCsGAQUFBwMCMEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYB
BQUHAgEWF2h0dHBzOi8vc2VjdGlnby5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9j
cmwuc2VjdGlnby5jb20vU2VjdGlnb1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1h
aWxDQS5jcmwwgYoGCCsGAQUFBwEBBH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdv
LmNvbS9TZWN0aWdvUlNBQ2xpZW50QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAj
BggrBgEFBQcwAYYXaHR0cDovL29jc3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5m
cmFkZWFkLm9yZzANBgkqhkiG9w0BAQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQv
Q/fzPXmtR9t54rpmI2TfyvcKgOXpqa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvI
lSPrzIB4Z2wyIGQpaPLlYflrrVFKv9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9Ch
WFfgSXvrWDZspnU3Gjw/rMHrGnqlHtlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0w
hpBtXdyDjzBtQTaZJ7zTT/vlehc/tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9
IzGCBMcwggTDAgEBMIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVz
dGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMT
NVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEA
xr4ZlmdAxAMdKFES+jupfjANBglghkgBZQMEAgEFAKCCAeswGAYJKoZIhvcNAQkDMQsGCSqGSIb3
DQEHATAcBgkqhkiG9w0BCQUxDxcNMjMxMDI3MTgzNjUxWjAvBgkqhkiG9w0BCQQxIgQgC/VsPJ2v
IMZBZFAWAsWdD+ygHEHVB1cu7IxPUg7TFOMwgb0GCSsGAQQBgjcQBDGBrzCBrDCBljELMAkGA1UE
BhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEYMBYG
A1UEChMPU2VjdGlnbyBMaW1pdGVkMT4wPAYDVQQDEzVTZWN0aWdvIFJTQSBDbGllbnQgQXV0aGVu
dGljYXRpb24gYW5kIFNlY3VyZSBFbWFpbCBDQQIRAMa+GZZnQMQDHShREvo7qX4wgb8GCyqGSIb3
DQEJEAILMYGvoIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVy
MRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNl
Y3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEAxr4Z
lmdAxAMdKFES+jupfjANBgkqhkiG9w0BAQEFAASCAgAkrIkxMEEz62uUqQ4p05Ugy4TG5KWLtJVJ
GRnLofvWVuhXojcPQhzyUpyptxEh0SIphGt732GcABaXmJOfXjKXDou8acvowv3BUoFDvRAM52IT
1DkR2w9t9p/WktPVwGdA97n/13JbL2hUz8nDe+GvJTUN2o+ZC5h1XMKrwV76VBr/qFTHx6TVrENG
NZejL3mgoXZL9X8JxUOHKXIcx3JXbQTD/ZtBJyswlks46Py9byUl4J7MDIgABPTSR6bqZivBSEWh
V0ZFW9ws9Np4xOforYJZjsZgVDfc7pb2I3HXOIU41qr94T0yJfZ62LBwLSR2LxVVBHNdhxipI8Sw
o5pomfF1InKgmC+RLVWrvxFhod1Nxbv6j7ymUIO1+2Bh6aepvRBeJeY7NVE9Y2s7SP3sbjIPc11p
uwyUFGuBKn8uaRfT74I+gp2som2TyAdCElJwFFXgzvekQMYH9me7ob7KVMIqbiQ9nsteY5QEDMYg
3r0WbsesKV64pdTWOPpMp7M/Exs0RUck2TbURX3QRekV7k5gy2+PeND6WKc6NqnnSRz6LlMbw9af
WC0jmlt5UYZ2/q0T+4F8kHkP1h2mCI5OfP6ryVoRc39Ft7Wb/e+NyXoxmbDzG2BELmOmoKr5NctH
uKhd+rkCCgKAGu+CrplVr7YIEHdYxwrJbLLWWJZAEgAAAAAAAA==


--=-m3QW9bQiD6p/UWx5bqvF--


From xen-devel-bounces@lists.xenproject.org Fri Oct 27 19:15:02 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 27 Oct 2023 19:15:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624623.973207 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qwSI7-0001Jd-Ha; Fri, 27 Oct 2023 19:14:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624623.973207; Fri, 27 Oct 2023 19: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 1qwSI7-0001JW-Er; Fri, 27 Oct 2023 19:14:43 +0000
Received: by outflank-mailman (input) for mailman id 624623;
 Fri, 27 Oct 2023 19: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=wQui=GJ=infradead.org=peterz@srs-se1.protection.inumbo.net>)
 id 1qwSI5-0001JQ-Lp
 for xen-devel@lists.xenproject.org; Fri, 27 Oct 2023 19:14:42 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 131a7e4a-74fd-11ee-9b0e-b553b5be7939;
 Fri, 27 Oct 2023 21:14:39 +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 1qwSHz-0056Vr-SO; Fri, 27 Oct 2023 19:14:35 +0000
Received: by noisy.programming.kicks-ass.net (Postfix, from userid 1000)
 id 84DA4300392; Fri, 27 Oct 2023 21:14: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: 131a7e4a-74fd-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=In-Reply-To:Content-Transfer-Encoding:
	Content-Type:MIME-Version:References:Message-ID:Subject:Cc:To:From:Date:
	Sender:Reply-To:Content-ID:Content-Description;
	bh=s5bWgVKpwmS1KllHLKJH6MgftoWkWiVLZ4YJm3tjFD4=; b=Lm/WGIyRJjJfRsdY53T4rtZXPq
	WgEnLip1WsWSzW7hPSzoqL3CkCULHfUqtiixPcHU4/Sxv9t6be3iGrvGzZew4mdXYdxefVxVgfguG
	1Wc4tIvraqp9VyCAIXs6nZAihLnhEB4BS9+nZgnlNTHc8WRZSWBsPM3vGdiW+KDbyEOJF67JqVEED
	NClrnbYbx/v6G6CiuRkqAqqgHY2C7GJrPGWmPprcbX4CSTgFj2Xkc9tmaQT0DooiOlfp8xPfSC/hs
	nVBRqo+VDeyPMdkfUHOZ0Gg7l3L1PU7qIhMr404RXKYYXSOFWmEhDYADds/a+zdkJq1RZQQsM/Gy9
	qceYikrQ==;
Date: Fri, 27 Oct 2023 21:14:35 +0200
From: Peter Zijlstra <peterz@infradead.org>
To: David Woodhouse <dwmw2@infradead.org>
Cc: linux-acpi <linux-acpi@vger.kernel.org>,
	linux-kernel <linux-kernel@vger.kernel.org>,
	"Rafael J. Wysocki" <rafael@kernel.org>,
	Len Brown <lenb@kernel.org>, Juergen Gross <jgross@suse.com>,
	xen-devel <xen-devel@lists.xenproject.org>,
	Ingo Molnar <mingo@redhat.com>, Will Deacon <will@kernel.org>,
	Waiman Long <longman@redhat.com>, Boqun Feng <boqun.feng@gmail.com>
Subject: Re: [PATCH] acpi_idle: use raw_safe_halt() from acpi_idle_play_dead()
Message-ID: <20231027191435.GF26550@noisy.programming.kicks-ass.net>
References: <a079bba5a0e47d6534b307553fc3772d26ce911b.camel@infradead.org>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable
In-Reply-To: <a079bba5a0e47d6534b307553fc3772d26ce911b.camel@infradead.org>

On Fri, Oct 27, 2023 at 07:36:51PM +0100, David Woodhouse wrote:
> From: David Woodhouse <dwmw@amazon.co.uk>
>=20
> Xen HVM guests were observed taking triple-faults when attempting to
> online a previously offlined vCPU.
>=20
> Investigation showed that the fault was coming from a failing call
> to lockdep_assert_irqs_disabled(), in load_current_idt() which was
> too early in the CPU bringup to actually catch the exception and
> report the failure cleanly.
>=20
> This was a false positive, caused by acpi_idle_play_dead() setting
> the per-cpu hardirqs_enabled flag by calling safe_halt(). Switch it
> to use raw_safe_halt() instead, which doesn't do so.
>=20
> Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
> ---
> We might {also,instead} explicitly set the hardirqs_enabled flag to
> zero when bringing up an AP?

So I fixed up the idle paths the other day (see all that __cpuidle
stuff) but I've not yet gone through the whole hotplug thing :/

This seems right, at this point everything, including RCU is very much
gone, any instrumentation is undesired.

Acked-by: Peter Zijlstra (Intel) <peterz@infradead.org>

>=20
>  drivers/acpi/processor_idle.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>=20
> diff --git a/drivers/acpi/processor_idle.c b/drivers/acpi/processor_idle.c
> index 3a34a8c425fe..55437f5e0c3a 100644
> --- a/drivers/acpi/processor_idle.c
> +++ b/drivers/acpi/processor_idle.c
> @@ -592,7 +592,7 @@ static int acpi_idle_play_dead(struct cpuidle_device =
*dev, int index)
>  	while (1) {
> =20
>  		if (cx->entry_method =3D=3D ACPI_CSTATE_HALT)
> -			safe_halt();
> +			raw_safe_halt();
>  		else if (cx->entry_method =3D=3D ACPI_CSTATE_SYSTEMIO) {
>  			io_idle(cx->address);
>  		} else
> --=20
> 2.41.0
>=20
>=20




From xen-devel-bounces@lists.xenproject.org Fri Oct 27 19:18:24 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 27 Oct 2023 19:18:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624627.973218 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qwSLf-0001vA-1Z; Fri, 27 Oct 2023 19:18:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624627.973218; Fri, 27 Oct 2023 19: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 1qwSLe-0001v3-Ua; Fri, 27 Oct 2023 19:18:22 +0000
Received: by outflank-mailman (input) for mailman id 624627;
 Fri, 27 Oct 2023 19:18: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=SHDA=GJ=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qwSLe-0001ux-4J
 for xen-devel@lists.xenproject.org; Fri, 27 Oct 2023 19:18:22 +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 96d09794-74fd-11ee-9b0e-b553b5be7939;
 Fri, 27 Oct 2023 21:18:20 +0200 (CEST)
Received: by mail-ej1-x635.google.com with SMTP id
 a640c23a62f3a-9adb9fa7200so497559366b.0
 for <xen-devel@lists.xenproject.org>; Fri, 27 Oct 2023 12:18:20 -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
 l17-20020a170906415100b009adc77fe165sm1603874ejk.118.2023.10.27.12.18.19
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Fri, 27 Oct 2023 12:18: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: 96d09794-74fd-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1698434300; x=1699039100; darn=lists.xenproject.org;
        h=content-transfer-encoding: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=kQS3fk6DrReVt//epBsd12Yew4UIfltY3twEPZTSjhk=;
        b=Jmu4zBvtr/65MHcnamfiOrZj+vMXyoV7BjS7drAzZoe5upMr/cvn15yH8znCDXNzwt
         l6vvf+Hr5XN3fABrLJiGllCSgNdOLJaa3UtgqKLtA9WThBRxxBTqqKWEA9nTmayoLty3
         dhWv3BDNxU3oXVrRONa/i+2QKZVpfPwjqnKbU=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698434300; x=1699039100;
        h=content-transfer-encoding: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=kQS3fk6DrReVt//epBsd12Yew4UIfltY3twEPZTSjhk=;
        b=T4eKHw6wJZ35wHMPKUOQXrVR/9Q3Vd129u7a5azsmvLqnvRjgpDy2OiF6nx78AIMgh
         ttWZC7MsVUFI4OFMEulDWFFXXc1f8FwoR5pch/7X55KzNEOAe+O0teCxS9UT04S4bxhN
         tqWrKBLmSsio3FXjV5Q/nFEQYQMEJ8JpmehifDA9j55k1gupiJCgS3wRnxt5YOPiwnGB
         XWJspyMSdo8fQXTqq6RbU2cFSmS4ZdIa98slvAyCgGl+9AxDZQ//bhWGwb+T6rpqyHp8
         B7dNxFQXMBl1H+e+T+2UrnIOa0Wc71AZzonnajpmbssplRQQqgDcRd9dsvN9+WH3vxYF
         rFsQ==
X-Gm-Message-State: AOJu0YxEQQSiZKlGJhXRPVkNdZSUrUyN+bpygpwSs/qef4d9LGi6/ISU
	qThqdcT29v+9vnJQ9AztjYuMKg==
X-Google-Smtp-Source: AGHT+IFBYEI+8p4l+jn//eUrgVqxrBWgkV0DecSBixAAPOyM0c9Y75A3SJmU6kQdrYqBmF6DhPB19w==
X-Received: by 2002:a17:907:7206:b0:9cd:26e9:a8af with SMTP id dr6-20020a170907720600b009cd26e9a8afmr3761177ejc.21.1698434299744;
        Fri, 27 Oct 2023 12:18:19 -0700 (PDT)
Message-ID: <997218cb-b1d3-4fa8-a098-10849a54c592@citrix.com>
Date: Fri, 27 Oct 2023 20:18:18 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH v2 2/2] x86/Kconfig: Introduce CONFIG_{AMD,INTEL} and
 conditionalise ucode
Content-Language: en-GB
To: =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>,
 Jan Beulich <jbeulich@suse.com>
Cc: Wei Liu <wl@xen.org>, Alejandro Vallejo <alejandro.vallejo@cloud.com>,
 Stefano Stabellini <stefano.stabellini@amd.com>,
 Xenia Ragiadakou <xenia.ragiadakou@amd.com>,
 Xen-devel <xen-devel@lists.xenproject.org>
References: <20231026205539.3261811-1-andrew.cooper3@citrix.com>
 <20231026205539.3261811-3-andrew.cooper3@citrix.com>
 <70472259-6429-e60f-7cdc-faa50b2d257f@suse.com> <ZTu_WxdWTrthCs4m@macbook>
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: <ZTu_WxdWTrthCs4m@macbook>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 27/10/2023 2:47 pm, Roger Pau Monné wrote:
> On Fri, Oct 27, 2023 at 09:12:40AM +0200, Jan Beulich wrote:
>> On 26.10.2023 22:55, Andrew Cooper wrote:
>>> We eventually want to be able to build a stripped down Xen for a single
>>> platform.  Make a start with CONFIG_{AMD,INTEL} (hidden behind EXPERT, but
>>> available to randconfig), and adjust the microcode logic.
>>>
>>> No practical 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>
>>> CC: Alejandro Vallejo <alejandro.vallejo@cloud.com>
>>> CC: Stefano Stabellini <stefano.stabellini@amd.com>
>>> CC: Xenia Ragiadakou <xenia.ragiadakou@amd.com>
>>>
>>> I've intentionally ignored the other vendors for now.  They can be put into
>>> Kconfig by whomever figures out the actual dependencies between their init
>>> routines.
>>>
>>> v2:
>>>  * Tweak text
>> What about the indentation issues mentioned in reply to v1?
>>
>> As to using un-amended AMD and INTEL - Roger, what's your view here?
> I think it would be good to add a suffix, like we do for
> {AMD,INTEL}_IOMMU options, and reserve the plain AMD and INTEL options
> as platform/system level options that enable both VENDOR_{CPU,IOMMU}
> sub options.
>
> So yes, {INTEL,AMD}_CPU seems a good option.

Really?  You do realise that, unlike the IOMMU names, this is going to
be plastered all over the Makefiles and header files?

And it breaks the careful attempt not to use the ambigous term when
describing what the symbol means.

I'll send out a v2.5 so you can see it in context, but I'm going to say
straight up - I think this is a mistake.

~Andrew


From xen-devel-bounces@lists.xenproject.org Fri Oct 27 19:19:43 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 27 Oct 2023 19:19:43 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624632.973228 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qwSMv-0002V2-Dh; Fri, 27 Oct 2023 19:19:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624632.973228; Fri, 27 Oct 2023 19: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 1qwSMv-0002Uv-Ag; Fri, 27 Oct 2023 19:19:41 +0000
Received: by outflank-mailman (input) for mailman id 624632;
 Fri, 27 Oct 2023 19: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=cjdJ=GJ=citrix.com=prvs=657347611=Andrew.Cooper3@srs-se1.protection.inumbo.net>)
 id 1qwSMu-0002Up-99
 for xen-devel@lists.xenproject.org; Fri, 27 Oct 2023 19:19:40 +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 c3c36ac7-74fd-11ee-98d6-6d05b1d4d9a1;
 Fri, 27 Oct 2023 21: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: c3c36ac7-74fd-11ee-98d6-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1698434378;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=27oIc6L47bBkCxsQsTDNa9J7x2KtqWWueihQZG3UFA4=;
  b=IFl0ZHXTRaxTg+069ZiLNaHMst5LP/IEdbEl7SYZmUTfHIkNTys4pZQW
   uODb2FxGD6z6rz9d3hsoENFtsTmsypEz4ZXmCUyk7lYs52Tc74MZ8MDp3
   bLcphC8FqVOW7RGkIO8Zmf1kMbEexOeCW/hWbOSjbafkKqMwk86WFCIK2
   I=;
X-CSE-ConnectionGUID: 4HsE3iLaT6K+1CkT5/cpqg==
X-CSE-MsgGUID: b46kcL+RQIi/13KeNh9/RA==
Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
X-SBRS: 5.1
X-MesageID: 126748980
X-Ironport-Server: esa2.hc3370-68.iphmx.com
X-Remote-IP: 162.221.159.70
X-Policy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:rGzvvqKNMGAGlOy1FE+RFJUlxSXFcZb7ZxGr2PjKsXjdYENS3jMOz
 WofUD+Ca/rfa2CkKtsiO43g8BhQscTXm9dnHANlqX01Q3x08seUXt7xwmUcnc+xBpaaEB84t
 ZV2hv3odp1coqr0/0/1WlTZhSAhk/nOHvylULKs1hlZHWdMUD0mhQ9oh9k3i4tphcnRKw6Ws
 Jb5rta31GWNglaYCUpKrfrYwP9TlK6q4mhB5gZhPaojUGL2zBH5MrpOfcldEFOgKmVkNrbSb
 /rOyri/4lTY838FYj9yuu+mGqGiaue60Tmm0hK6aYD76vRxjnVaPpIAHOgdcS9qZwChxLid/
 jnvWauYEm/FNoWU8AgUvoIx/ytWZcWq85efSZSzXFD6I+QrvBIAzt03ZHzaM7H09c4rIXpjr
 v08IQxTTVParOGKnfWwUvBj05FLwMnDZOvzu1llxDDdS/0nXYrCU+PB4towMDUY354UW6yEP
 oxANGspM0yojx5nYz/7DLoXmuuyi2a5WDpfsF+P/oI84nTJzRw327/oWDbQUoXQG5oJzhfI/
 goq+UzzXk8ZP/jc8wOk8zX13czCuyOqH7g7QejQGvlC3wTImz175ActfUu2p7y1h1CzX/pbK
 lcI4Ww+oK4q7kupQ9LhGRqirxasnDQRRt5RGO0S8xyWx+zf5APxLncAZi5MbpohrsBebSc22
 1GAmdSvHiBmurCRTXOb95+dqD/0Mi8QRUcSaCkFRE0f6tbiqY06jRXSZt9mHOi+ididJN3r6
 2nU9m5k3exV1JNakfrjlbzav96yjsTpVSNu5yHeYjyGrVpSZ7L4IIew8FeOuJ6sM72lokm9U
 GkswpbPvLtRUsHQxERhU81XQuv1uazt3Cn0xA43Rcd8rVxB7lb5JehtDCdCyFCF2yruURTue
 kbX8ThJ/p5VM2DCgURfONnpVJ1CIUQND73YuhHogjlmOMEZmPevpn0GWKJp9zmFfLIQua8+I
 4yHVs2nEGwXD69qpBLvGbZNjeRymn9kmjKNLXwe8/hB+eDGDJJyYe5aWGZik8hjtP/UyOkr2
 4o32zS2J+V3D7SlP3i/HX87JlEWN3krba0aWOQOHtNv1jFOQTl7Y9eImOtJU9U8w8xoehLgo
 yjVtrlwkwGk2xUq6GyiNxheVV8YdcYu8CtjZHFxYz5FGRELOO6S0UvWTLNvFZFPyQCp5acco
 yUtEylYPslydw==
IronPort-HdrOrdr: A9a23:5ZI0NqnmYgd8V441GH2f4X4IyS7pDfLc3DAbv31ZSRFFG/Fw9/
 rCoB17726StN91YhsdcL+7V5VoLUmzyXcx2/hzAV7AZniDhILLFuFfBOLZqlWNJ8S9zJ8+6U
 4JScND4bbLfD1HZKjBgTVRE7wbsaW6GKLDv5ag85+6JzsaFZ2J7G1Ce3em+lUdfnghOXKgfq
 DsnPauoVCbCA0qR/X+PFYpdc7ZqebGkZr3CCR2eiLOuGG1/EuVAKeRKWni4isj
X-Talos-CUID: 9a23:embQrmxgA2YJygmKONO2BgVIOtsIKXz5xUuOAAzhImVVFfqeUUafrfY=
X-Talos-MUID: =?us-ascii?q?9a23=3Ajbd5ag7Eaew14vZnDdhNs0OUxoxiv/qtA2ROq6w?=
 =?us-ascii?q?nuo7dbg99HTfMyw6eF9o=3D?=
X-IronPort-AV: E=Sophos;i="6.03,257,1694750400"; 
   d="scan'208";a="126748980"
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>, Alejandro Vallejo
	<alejandro.vallejo@cloud.com>, Stefano Stabellini
	<stefano.stabellini@amd.com>, Xenia Ragiadakou <xenia.ragiadakou@amd.com>
Subject: [PATCH v2.5 2/2] x86/Kconfig: Introduce CONFIG_{AMD,INTEL} and conditionalise ucode
Date: Fri, 27 Oct 2023 20:19:26 +0100
Message-ID: <20231027191926.3283871-1-andrew.cooper3@citrix.com>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <ZTu_WxdWTrthCs4m@macbook>
References: <ZTu_WxdWTrthCs4m@macbook>
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit

We eventually want to be able to build a stripped down Xen for a single
platform.  Make a start with CONFIG_{AMD,INTEL} (hidden behind EXPERT, but
available to randconfig), and adjust the microcode logic.

No practical 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>
CC: Alejandro Vallejo <alejandro.vallejo@cloud.com>
CC: Stefano Stabellini <stefano.stabellini@amd.com>
CC: Xenia Ragiadakou <xenia.ragiadakou@amd.com>

I've intentionally ignored the other vendors for now.  They can be put into
Kconfig by whomever figures out the actual dependencies between their init
routines.

v2:
 * Tweak text
v2.5:
 * Fix indentation
 * Rename with _CPU suffixes as requested
---
 xen/arch/x86/Kconfig                 |  2 ++
 xen/arch/x86/Kconfig.cpu             | 22 ++++++++++++++++++++++
 xen/arch/x86/cpu/microcode/Makefile  |  4 ++--
 xen/arch/x86/cpu/microcode/private.h |  9 +++++++++
 4 files changed, 35 insertions(+), 2 deletions(-)
 create mode 100644 xen/arch/x86/Kconfig.cpu

diff --git a/xen/arch/x86/Kconfig b/xen/arch/x86/Kconfig
index eac77573bd75..d9eacdd7e0fa 100644
--- a/xen/arch/x86/Kconfig
+++ b/xen/arch/x86/Kconfig
@@ -49,6 +49,8 @@ config HAS_CC_CET_IBT
 
 menu "Architecture Features"
 
+source "arch/x86/Kconfig.cpu"
+
 source "arch/Kconfig"
 
 config PV
diff --git a/xen/arch/x86/Kconfig.cpu b/xen/arch/x86/Kconfig.cpu
new file mode 100644
index 000000000000..b68c41977a3b
--- /dev/null
+++ b/xen/arch/x86/Kconfig.cpu
@@ -0,0 +1,22 @@
+menu "Supported CPU vendors"
+	visible if EXPERT
+
+config AMD_CPU
+	bool "AMD"
+	default y
+	help
+	  Detection, tunings and quirks for AMD platforms.
+
+	  May be turned off in builds targetting other vendors.  Otherwise,
+	  must be enabled for Xen to work suitably on AMD platforms.
+
+config INTEL_CPU
+	bool "Intel"
+	default y
+	help
+	  Detection, tunings and quirks for Intel platforms.
+
+	  May be turned off in builds targetting other vendors.  Otherwise,
+	  must be enabled for Xen to work suitably on Intel platforms.
+
+endmenu
diff --git a/xen/arch/x86/cpu/microcode/Makefile b/xen/arch/x86/cpu/microcode/Makefile
index aae235245b06..194ddc239ee3 100644
--- a/xen/arch/x86/cpu/microcode/Makefile
+++ b/xen/arch/x86/cpu/microcode/Makefile
@@ -1,3 +1,3 @@
-obj-y += amd.o
+obj-$(CONFIG_AMD_CPU) += amd.o
 obj-y += core.o
-obj-y += intel.o
+obj-$(CONFIG_INTEL_CPU) += intel.o
diff --git a/xen/arch/x86/cpu/microcode/private.h b/xen/arch/x86/cpu/microcode/private.h
index b58611e908aa..bb329933ac89 100644
--- a/xen/arch/x86/cpu/microcode/private.h
+++ b/xen/arch/x86/cpu/microcode/private.h
@@ -70,7 +70,16 @@ struct microcode_ops {
  * support available) and (not) ops->apply_microcode (i.e. read only).
  * Otherwise, all hooks must be filled in.
  */
+#ifdef CONFIG_AMD_CPU
 void ucode_probe_amd(struct microcode_ops *ops);
+#else
+static inline void ucode_probe_amd(struct microcode_ops *ops) {}
+#endif
+
+#ifdef CONFIG_INTEL_CPU
 void ucode_probe_intel(struct microcode_ops *ops);
+#else
+static inline void ucode_probe_intel(struct microcode_ops *ops) {}
+#endif
 
 #endif /* ASM_X86_MICROCODE_PRIVATE_H */
-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Fri Oct 27 20:49:20 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 27 Oct 2023 20:49:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624637.973238 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qwTlO-0005Jw-N0; Fri, 27 Oct 2023 20:49:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624637.973238; Fri, 27 Oct 2023 20:49: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 1qwTlO-0005Jp-KF; Fri, 27 Oct 2023 20:49:02 +0000
Received: by outflank-mailman (input) for mailman id 624637;
 Fri, 27 Oct 2023 20:49: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=HzCB=GJ=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qwTlN-0005Jj-0E
 for xen-devel@lists.xenproject.org; Fri, 27 Oct 2023 20:49:01 +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 3e3cf286-750a-11ee-9b0e-b553b5be7939;
 Fri, 27 Oct 2023 22:48:55 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by dfw.source.kernel.org (Postfix) with ESMTP id 64DBF60D29;
 Fri, 27 Oct 2023 20:48:54 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 09DC0C433C7;
 Fri, 27 Oct 2023 20:48: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: 3e3cf286-750a-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1698439734;
	bh=tABYMPaDThtIvUPtNVP0SnfmmdkCk1V5SMhg/Vecjr4=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=qGAXOJqDLdHVaIw56+fQ/gXJqOmeuQKEorOdSi8xPa22bddY/RiJY62doIZcBtud0
	 csrd1INeQ7CJ05ANYE7/27/dA5pVw2eJJwHxBnYvKOSi2SFSn6X09cI30YD2W/xUl7
	 ay6X6jE/UUkMqHKjkccEZGMcruRpnSdeolxo8fnKpY1gJ53Re+wFl5ZSkOtPabWTpc
	 SJcj802BoVszhKa1P11bBsu31BpTelb322UaofvCBMs5AvcWeiMdNGDwTLySMGStm6
	 Yia492V+557bB1cxbSvaEXXd9qVVoXrgOloFxJ3bDIwT24M0VUQIrhPdpnsrnjJDH3
	 S4jI6Fnb7OZNA==
Date: Fri, 27 Oct 2023 13:48:50 -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, Simone Ballarin <simone.ballarin@bugseng.com>, 
    Doug Goldstein <cardoe@cardoe.com>, 
    George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>, 
    Wei Liu <wl@xen.org>
Subject: Re: [XEN PATCH][for-4.19 v4 1/8] xen/include: add macro
 ISOLATE_LOW_BIT
In-Reply-To: <dca236bf9199f596bafb35eb48d81adc280d8cca.1698410970.git.nicola.vetrini@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2310271348440.271731@ubuntu-linux-20-04-desktop>
References: <cover.1698410970.git.nicola.vetrini@bugseng.com> <dca236bf9199f596bafb35eb48d81adc280d8cca.1698410970.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, 26 Oct 2023, Nicola Vetrini wrote:
> The purpose of this macro is to encapsulate the well-known expression
> 'x & -x' that in 2's complement architectures on unsigned integers will
> give a mask where only the least significant nonzero bit of 'x' is set,
> or 0 if none are set.
> 
> A deviation for ECLAIR is also introduced.
> 
> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>

Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>


From xen-devel-bounces@lists.xenproject.org Fri Oct 27 20:50:19 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 27 Oct 2023 20:50:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624639.973248 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qwTmd-0006ft-10; Fri, 27 Oct 2023 20:50:19 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624639.973248; Fri, 27 Oct 2023 20:50: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 1qwTmc-0006fm-Tu; Fri, 27 Oct 2023 20:50:18 +0000
Received: by outflank-mailman (input) for mailman id 624639;
 Fri, 27 Oct 2023 20:50: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=HzCB=GJ=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qwTmb-0006fc-Nx
 for xen-devel@lists.xenproject.org; Fri, 27 Oct 2023 20:50: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 6dffdd27-750a-11ee-98d6-6d05b1d4d9a1;
 Fri, 27 Oct 2023 22:50: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 CA311CE1EAA;
 Fri, 27 Oct 2023 20:50:10 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 91EBCC433CB;
 Fri, 27 Oct 2023 20:50: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: 6dffdd27-750a-11ee-98d6-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1698439810;
	bh=kxCc1jFhEzhByO/8+hYdnp5XBtcQozYyW6rK9iv6ksU=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=Msn0BoBBOTBv7Zu9+yinyQcHt3rA2Xo3UzNFO0FbD2abUzcHoU6Ja6VVRbTVH8Fy3
	 qC5DfGPSgnygCxcqHIJN8nFyfaiaSNISfSsy4gAMolLrcHOK6BYzxzAzutz+G30phs
	 HvJvo6YEECOW/3LCkoY47zmZ3PtAo5sLG2+HDPVSz70Tx8imuLJrXwaJ8QtqXWT4G/
	 P7vG3MESbfh96VjpEkiwtFvqs0JI2KJFWWVYJOuXNep8kxr7n1hOJHi3WFKTx6UpKx
	 1PfYOu0mYc9d3fyRaeSlEsNEnv1YeXhgYmdFKXg7quO5O0oRE+m0cFo9wm6J+krSCe
	 uS2xh1hDi6Bwg==
Date: Fri, 27 Oct 2023 13:50: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, jbeulich@suse.com, andrew.cooper3@citrix.com, 
    roger.pau@citrix.com, Wei Liu <wl@xen.org>
Subject: Re: [XEN PATCH][for-4.19 v4 6/8] x86/mce: Move MC_NCLASSES into the
 enum mctelem_class
In-Reply-To: <6efab48e9340916f23c94baf5c189d1d1c6ab7e6.1698410970.git.nicola.vetrini@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2310271349340.271731@ubuntu-linux-20-04-desktop>
References: <cover.1698410970.git.nicola.vetrini@bugseng.com> <6efab48e9340916f23c94baf5c189d1d1c6ab7e6.1698410970.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, 27 Oct 2023, Nicola Vetrini wrote:
> The definition of MC_NCLASSES contained a violation of MISRA C:2012
> Rule 10.1, therefore by moving it as an enumeration constant resolves the
> violation and makes it more resilient to possible additions to that enum.
> 
> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>

Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>



From xen-devel-bounces@lists.xenproject.org Fri Oct 27 20:52:43 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 27 Oct 2023 20:52:43 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624643.973258 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qwTow-0007JA-Dj; Fri, 27 Oct 2023 20:52:42 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624643.973258; Fri, 27 Oct 2023 20:52: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 1qwTow-0007J3-A8; Fri, 27 Oct 2023 20:52:42 +0000
Received: by outflank-mailman (input) for mailman id 624643;
 Fri, 27 Oct 2023 20:52: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=HzCB=GJ=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qwTov-0007Ix-SB
 for xen-devel@lists.xenproject.org; Fri, 27 Oct 2023 20:52:41 +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 c452d362-750a-11ee-98d6-6d05b1d4d9a1;
 Fri, 27 Oct 2023 22:52: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 4BF7A61BC4;
 Fri, 27 Oct 2023 20:52:39 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 25111C433CA;
 Fri, 27 Oct 2023 20:52: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: c452d362-750a-11ee-98d6-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1698439959;
	bh=sH1uUvVFiGXYFH19i1YkLh7C4vhf7FWCiDU9GDLGSfw=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=Pvm17XsRiL4bY1ZeuWZVUSUzpN695LAuEBgw+Dy21K8vD7LrM+BDrkfqCjgn8H9a7
	 kqCc1BMH3L44TGYX3Y6KU1ToSW6CVuw2ZwKNCHE/+h0j2ohXK+nFHF70wCl39IwA4H
	 0YEqQwCacsu+AWUm8t5Kq8qiQc24Ul5DLsun2HYH4umr8Sqi5RG9UY52FQQvcRgk6H
	 MbkigkQz4uPLfCz2mZg1fTOzvHVRY7sRF9c843kCOBbEtOAPHksQ8wAF2HT9Oh6AsK
	 48hBNEw+KWrWVuCPwUoaHRIW8jSFFb+SVFbo9O+joTjPcWD9e2/v2PBYNOpey9kiV+
	 GRGkrtPb1CXeQ==
Date: Fri, 27 Oct 2023 13:52:35 -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, Simone Ballarin <simone.ballarin@bugseng.com>, 
    Doug Goldstein <cardoe@cardoe.com>, 
    George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>, 
    Wei Liu <wl@xen.org>
Subject: Re: [XEN PATCH][for-4.19 v5] xen: Add deviations for MISRA C:2012
 Rule 7.1
In-Reply-To: <0c86b50a796ba2aaab01e30935ed559ab719d33a.1698418578.git.nicola.vetrini@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2310271352260.271731@ubuntu-linux-20-04-desktop>
References: <0c86b50a796ba2aaab01e30935ed559ab719d33a.1698418578.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, 27 Oct 2023, Nicola Vetrini wrote:
> As specified in rules.rst, these constants can be used
> in the code.
> 
> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>

Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>



From xen-devel-bounces@lists.xenproject.org Fri Oct 27 21:39:06 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 27 Oct 2023 21:39:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624649.973268 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qwUXg-0005M9-Nu; Fri, 27 Oct 2023 21:38:56 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624649.973268; Fri, 27 Oct 2023 21:38: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 1qwUXg-0005M2-LP; Fri, 27 Oct 2023 21:38:56 +0000
Received: by outflank-mailman (input) for mailman id 624649;
 Fri, 27 Oct 2023 21:38: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=HzCB=GJ=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qwUXf-0005Lw-94
 for xen-devel@lists.xenproject.org; Fri, 27 Oct 2023 21:38:55 +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 392d2ce4-7511-11ee-9b0e-b553b5be7939;
 Fri, 27 Oct 2023 23:38:53 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by ams.source.kernel.org (Postfix) with ESMTP id 65DEFB8107D;
 Fri, 27 Oct 2023 21:38:52 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 48706C433C7;
 Fri, 27 Oct 2023 21:38: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: 392d2ce4-7511-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1698442731;
	bh=Oe0HyI+H6c6WV8Ojf2MpQj5evvyuH4VkNJqRMzYhROY=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=mDpsB8EC77HeL3row/jukkNMerRjFtNrKbPpJBdoz85PyTSpL/61hfoUb5BvaD+z2
	 blwnFjRJli1Y0rBkXVOm1K//BiduZKgwoQABcDh+BRnxczpinVk/YKs5DzZ0eJjllL
	 +GydMGE6QCt3wt8owFoqgBK3emsmkRh/QCZfWoiWTE8eLX400gBkEzBI4z1+1QZvti
	 yFPORuVrObrJJidLehSWSW0Gcyh36DGy9QIJMr7jHlOTw/aq7ECLmBiDcibflzB68e
	 rrn0yLKDeiCnXt8YlSmVXy7P0l1Pd6TUJ6eDl+nAcIO/teFeLkT4wPPfA3R+5C/0gT
	 QL0d1xgyxaaFw==
Date: Fri, 27 Oct 2023 14:38:46 -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>, 
    Stefano Stabellini <sstabellini@kernel.org>, michal.orzel@amd.com, 
    xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, 
    consulting@bugseng.com, andrew.cooper3@citrix.com, roger.pau@citrix.com, 
    Wei Liu <wl@xen.org>, xen-devel@lists.xenproject.org
Subject: Re: [RFC 1/4] x86/ioemul: address MISRA C:2012 Rule 9.3
In-Reply-To: <8cb336ca-41ed-8adc-957a-28b5585c84f1@suse.com>
Message-ID: <alpine.DEB.2.22.394.2310271419260.271731@ubuntu-linux-20-04-desktop>
References: <cover.1698155925.git.nicola.vetrini@bugseng.com> <76c9f78179a8bb5b4f99b34f163933394f79066c.1698155925.git.nicola.vetrini@bugseng.com> <60e26ad6-7366-2604-e9b2-ed401cee6e73@suse.com> <alpine.DEB.2.22.394.2310241317030.271731@ubuntu-linux-20-04-desktop>
 <41562c7a-6260-3104-b2d4-d6fd4df0cffc@suse.com> <4e88d7ab94b9fc73554eee5b78612b63@bugseng.com> <8cb336ca-41ed-8adc-957a-28b5585c84f1@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, 26 Oct 2023, Jan Beulich wrote:
> On 26.10.2023 14:32, Nicola Vetrini wrote:
> > On 25/10/2023 09:56, Jan Beulich wrote:
> >> On 24.10.2023 22:27, Stefano Stabellini wrote:
> >>> On Tue, 24 Oct 2023, Jan Beulich wrote:
> >>>> On 24.10.2023 16:31, Nicola Vetrini wrote:
> >>>>> Partially explicitly initalized .matches arrays result in violations
> >>>>> of Rule 9.3; this is resolved by using designated initializers,
> >>>>> which is permitted by the Rule.
> >>>>>
> >>>>> Mechanical changes.
> >>>>>
> >>>>> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
> >>>>
> >>>> While not overly bad, I'm still not really seeing the improvement.
> >>>> Yet aiui changes induced by Misra are supposed to improve things in
> >>>> some direction?
> >>>
> >>> I think the improvement is clarity, in the sense that the designated
> >>> initializers make it clearer that the array may be sparsely 
> >>> initialized
> >>> and that the remaining elements should be initialized to zero
> >>> automatically.
> >>
> >> That's as clear from the original code, imo.

This specific instance is simple and might be clear either way, but in
general especially in more complex scenarios and potentially nested
structures and arrays, it could be harder to figure out and that leads
to errors. The MISRA checker is a powerful tool to help us make sure the
code is correct in all cases, but to take advantage of it properly we
need to get to the point where we don't have violations in the current
code.

Looking at the results, we have zero violations for Rule 9.3 on ARM
already and only 55 on x86. It should be possible to fix them all
mechanically in short order. Of course for that to happen, we need to
make some compromises. For instance, adding {0} like in the example
below, or adding [0]=init,[2]=init like in the first version of the
patch. Taking individually, they might not be all great improvements,
but all together having the Xen codebase Rule 9.3-free and easy to scan
for future violations should be.



> > There's also this functionally equivalent alternative, with or without 
> > the zeros, which
> > doesn't incur in the risk of mistakenly attempting to initialize the 
> > same element twice,
> > while also giving an explicit cue to the reader that all elements are 
> > truly zero-initialized.
> > 
> >           .matches = {
> >               DMI_MATCH(DMI_BIOS_VENDOR, "HP"),
> >               DMI_MATCH(DMI_PRODUCT_NAME, "ProLiant DL5"),
> > +            {0}, {0}
> >           },
> 
> Adding a dependency on the array actually having 4 elements (while iirc
> we have seen already that we could in principle go down to 3). A change
> of this number would then require touching all these sites, which is
> what we'd like to avoid.

How often the array needs to change though? Looking at the git history
it doesn't seem the number of elements ever changed. So I think it is a
good tradeoff, and I would go with this type of fix (maybe also at the
other locations mechanically too although I haven't looked at them in
details).


From xen-devel-bounces@lists.xenproject.org Fri Oct 27 22:30:53 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 27 Oct 2023 22:30:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624653.973278 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qwVLj-0004oj-Hn; Fri, 27 Oct 2023 22:30:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624653.973278; Fri, 27 Oct 2023 22: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 1qwVLj-0004oc-EQ; Fri, 27 Oct 2023 22:30:39 +0000
Received: by outflank-mailman (input) for mailman id 624653;
 Fri, 27 Oct 2023 22:30: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 1qwVLh-0004oS-G7; Fri, 27 Oct 2023 22:30: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 1qwVLh-0002rr-5U; Fri, 27 Oct 2023 22:30: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 1qwVLg-0006ML-IJ; Fri, 27 Oct 2023 22:30:36 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qwVLg-0001GV-Hs; Fri, 27 Oct 2023 22: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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=VPj+j6a+pcjcjlrJvsyX/usfxjzNYqY8tUk4xlx9FGg=; b=pCja7EDqATcsoYZAn0G6tKqY0k
	qh9u7k2cCTY1hbq1vaKhnV5SKV93IJWv1DlcX0t2ig/729rPaUvuyXGVmcsO1/O64OOhN29GYuiDX
	THbOuJcqin6ZfR1DbBcm6k/KyAW9Rj/7r8ZQ0m9s10+ehkI1RGkFONc8c+zcHMuTO8Vk=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183551-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 183551: tolerable FAIL - PUSHED
X-Osstest-Failures:
    linux-linus:test-armhf-armhf-libvirt-qcow2:host-ping-check-xen:fail:heisenbug
    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-qcow2: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-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:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-xsm:migrate-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-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:saverestore-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-xl-xsm: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-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-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-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:saverestore-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-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-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: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-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=750b95887e567848ac2c851dae47922cac6db946
X-Osstest-Versions-That:
    linux=3a568e3a961ba330091cd031647e4c303fa0badb
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 27 Oct 2023 22:30:36 +0000

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

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-armhf-armhf-libvirt-qcow2 10 host-ping-check-xen fail pass in 183561-retest

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt   16 saverestore-support-check fail blocked in 183544
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail in 183561 like 183544
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail in 183561 never pass
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183544
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183544
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183544
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183544
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183544
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183544
 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          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-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-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-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-qcow2 14 migrate-support-check        fail never pass
 test-amd64-amd64-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-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-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                750b95887e567848ac2c851dae47922cac6db946
baseline version:
 linux                3a568e3a961ba330091cd031647e4c303fa0badb

Last test of basis   183544  2023-10-26 19:11:57 Z    1 days
Testing same since   183551  2023-10-27 07:13:47 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Alex Deucher <alexander.deucher@amd.com>
  Andi Shyti <andi.shyti@linux.intel.com>
  Christian König <christian.koenig@amd.com>
  Dave Airlie <airlied@redhat.com>
  Felix Kuehling <Felix.Kuehling@amd.com>
  Karol Wachowski <karol.wachowski@linux.intel.com>
  Linus Torvalds <torvalds@linux-foundation.org>
  Luben Tuikov <luben.tuikov@amd.com>
  Lukasz Majczak <lma@semihalf.com>
  Manasi Navare <navaremanasi@chromium.org>
  Mario Limonciello <mario.limonciello@amd.com>
  Matt Roper <matthew.d.roper@intel.com>
  Paul Kocialkowski <paul.kocialkowski@bootlin.com>
  Rodrigo Vivi <rodrigo.vivi@intel.com>
  Stanislaw Gruszka <stanislaw.gruszka@linux.intel.com>
  Sui Jingfeng <suijingfeng@loongson.cn>
  Thomas Zimmermann <tzimmermann@suse.de>
  Umesh Nerlige Ramappa <umesh.nerlige.ramappa@intel.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                               fail    
 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
   3a568e3a961b..750b95887e56  750b95887e567848ac2c851dae47922cac6db946 -> tested/linux-linus


From xen-devel-bounces@lists.xenproject.org Fri Oct 27 23:09:24 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 27 Oct 2023 23:09:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624709.973320 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qwVx9-0003aY-78; Fri, 27 Oct 2023 23:09:19 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624709.973320; Fri, 27 Oct 2023 23:09: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 1qwVx9-0003aR-3v; Fri, 27 Oct 2023 23:09:19 +0000
Received: by outflank-mailman (input) for mailman id 624709;
 Fri, 27 Oct 2023 23:09: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 1qwVx7-0003aH-Ns; Fri, 27 Oct 2023 23:09: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 1qwVx7-00041C-Ar; Fri, 27 Oct 2023 23:09: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 1qwVx6-0007FX-SU; Fri, 27 Oct 2023 23:09:17 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qwVx6-0008Ny-Ru; Fri, 27 Oct 2023 23:09: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=a8AuuL8rYAs9FShY+BJvukDTDvkK29U/QSzUYYVPEZc=; b=UER0FxJCmo2uzS6mjHrldEZtmx
	xxNLYPLBCuXUUDkNuIi8JgxW80k3BQerGc9jfsVHW5Y2ULb65ToT+ydYgUKLyywHIHdJ9ZynBIzhO
	xlGaooQoCYg34NBI5hIshLfeqRSeNd9wAfhesL95SM0YCuqXF2QGYpNcSqdLSfMM6S7o=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183555-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-4.18-testing baseline test] 183555: tolerable FAIL
X-Osstest-Failures:
    xen-4.18-testing:test-amd64-i386-pair:xen-install/src_host:fail:nonblocking
    xen-4.18-testing:test-amd64-i386-pair:xen-install/dst_host:fail:nonblocking
    xen-4.18-testing:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:xen-install:fail:nonblocking
    xen-4.18-testing:test-amd64-i386-xl-qemuu-ovmf-amd64:xen-install:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-xl-credit1:xen-boot:fail:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.18-testing:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.18-testing:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.18-testing:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.18-testing:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=5415b2b2118bd78d8a04f276a8312f7f0cb1a466
X-Osstest-Versions-That:
    xen=5415b2b2118bd78d8a04f276a8312f7f0cb1a466
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 27 Oct 2023 23:09:16 +0000

"Old" tested version had not actually been tested; therefore in this
flight we test it, rather than a new candidate.  The baseline, if
any, is the most recent actually tested revision.

flight 183555 xen-4.18-testing real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183555/

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-amd64-i386-pair         10 xen-install/src_host    fail baseline untested
 test-amd64-i386-pair         11 xen-install/dst_host    fail baseline untested
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 7 xen-install fail baseline untested
 test-amd64-i386-xl-qemuu-ovmf-amd64  7 xen-install      fail baseline untested
 test-armhf-armhf-xl-credit1   8 xen-boot                fail baseline untested
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop      fail baseline untested
 test-armhf-armhf-libvirt   16 saverestore-support-check fail baseline untested
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop      fail baseline untested
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop      fail baseline untested
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop      fail baseline untested
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail baseline untested
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail baseline untested
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop       fail baseline untested
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail baseline untested
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop       fail baseline untested
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop       fail baseline untested
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop       fail baseline untested
 test-amd64-i386-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          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-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-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-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-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-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-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-amd64-amd64-libvirt-vhd 14 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-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

version targeted for testing:
 xen                  5415b2b2118bd78d8a04f276a8312f7f0cb1a466
baseline version:
 xen                  5415b2b2118bd78d8a04f276a8312f7f0cb1a466

Last test of basis   183555  2023-10-27 13:10:21 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-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-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              fail    
 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


Published tested tree is already up to date.



From xen-devel-bounces@lists.xenproject.org Sat Oct 28 02:10:15 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 28 Oct 2023 02:10:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624719.973335 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qwYlz-00017D-Bz; Sat, 28 Oct 2023 02:09:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624719.973335; Sat, 28 Oct 2023 02:09: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 1qwYlz-000176-8d; Sat, 28 Oct 2023 02:09:59 +0000
Received: by outflank-mailman (input) for mailman id 624719;
 Sat, 28 Oct 2023 02:09: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 1qwYlx-00016w-D5; Sat, 28 Oct 2023 02:09: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 1qwYlx-0007ak-7o; Sat, 28 Oct 2023 02:09: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 1qwYlw-0006hg-Nu; Sat, 28 Oct 2023 02:09:56 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qwYlw-0004Vl-MY; Sat, 28 Oct 2023 02:09: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=Ky1hpV2LPNxdLkxlk4LZQFCh2/NShs4UtdbNpUPPEoM=; b=1zW+fg1hqIDblNvnrvcWX78y6G
	yfjkR5ibKhgtU4lWes1fBeXR1EY8GakOwtrvo9kANuUIc7zUDxir/+QPT0WVXe/TlwvYFTVOEjQt/
	8eCVzHigLLFNd/gWQLa6Flioi15zSN+22SLC1JUJi2QwjPgZavtpRI8DxNBtSoIlLsSM=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183565-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 183565: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=7ff6ab2b3e09ee7ec0d698398001295b7867b08c
X-Osstest-Versions-That:
    ovmf=7e08d17a4a535a7abfa58a0606ca1a0e7f5862ad
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 28 Oct 2023 02:09:56 +0000

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

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 7ff6ab2b3e09ee7ec0d698398001295b7867b08c
baseline version:
 ovmf                 7e08d17a4a535a7abfa58a0606ca1a0e7f5862ad

Last test of basis   183548  2023-10-27 03:17:33 Z    0 days
Testing same since   183565  2023-10-27 23:41:06 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  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
   7e08d17a4a..7ff6ab2b3e  7ff6ab2b3e09ee7ec0d698398001295b7867b08c -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Sat Oct 28 02:37:21 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 28 Oct 2023 02:37:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624725.973346 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qwZCM-0004oo-G7; Sat, 28 Oct 2023 02:37:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624725.973346; Sat, 28 Oct 2023 02:37: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 1qwZCM-0004oh-D6; Sat, 28 Oct 2023 02:37:14 +0000
Received: by outflank-mailman (input) for mailman id 624725;
 Sat, 28 Oct 2023 02:37: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 1qwZCK-0004oX-Cq; Sat, 28 Oct 2023 02:37: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 1qwZCK-0008EB-0A; Sat, 28 Oct 2023 02:37: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 1qwZCJ-0007Sg-J1; Sat, 28 Oct 2023 02:37:11 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qwZCJ-0000Di-Fm; Sat, 28 Oct 2023 02:37: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=4j24Xh/qbd3UQBKmZFa7kRRPdPm03tg/f5dYmznmgy0=; b=IhjgSV4jikOmK6d5zN2i6mdXCs
	8nK8ItXOCRoEiwUoRO25g3TrwL3rM5V1BFpPRlDvwgQhbK0bcymdi2HVaOoitGWMmthhDQnCP74vf
	BSxG1/Vt7o5uislv+dBNE+GZ8N/XsbYEwFZxNfppRDnUbWS1bOxoSosMgq5v2AKmZ2K8=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183557-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [qemu-upstream-4.18-testing baseline test] 183557: tolerable FAIL
X-Osstest-Failures:
    qemu-upstream-4.18-testing:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    qemu-upstream-4.18-testing:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    qemu-upstream-4.18-testing:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    qemu-upstream-4.18-testing:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    qemu-upstream-4.18-testing:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    qemu-upstream-4.18-testing:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    qemu-upstream-4.18-testing:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    qemu-upstream-4.18-testing:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    qemu-upstream-4.18-testing:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    qemu-upstream-4.18-testing:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    qemu-upstream-4.18-testing:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    qemu-upstream-4.18-testing:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    qemu-upstream-4.18-testing:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    qemu-upstream-4.18-testing:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    qemu-upstream-4.18-testing:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    qemu-upstream-4.18-testing:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    qemu-upstream-4.18-testing:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    qemu-upstream-4.18-testing:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    qemu-upstream-4.18-testing:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    qemu-upstream-4.18-testing:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-upstream-4.18-testing:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-upstream-4.18-testing:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    qemu-upstream-4.18-testing:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    qemu-upstream-4.18-testing:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-upstream-4.18-testing:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-upstream-4.18-testing:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    qemu-upstream-4.18-testing:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    qemu-upstream-4.18-testing:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    qemu-upstream-4.18-testing:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    qemu-upstream-4.18-testing:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    qemu-upstream-4.18-testing:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    qemu-upstream-4.18-testing:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-upstream-4.18-testing:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-upstream-4.18-testing:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    qemu-upstream-4.18-testing:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    qemu-upstream-4.18-testing:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-upstream-4.18-testing:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-upstream-4.18-testing:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    qemu-upstream-4.18-testing:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    qemu-upstream-4.18-testing:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    qemu-upstream-4.18-testing:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    qemu-upstream-4.18-testing:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    qemu-upstream-4.18-testing:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    qemu-upstream-4.18-testing:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    qemu-upstream-4.18-testing:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    qemu-upstream-4.18-testing:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    qemu-upstream-4.18-testing:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    qemu-upstream-4.18-testing:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    qemu-upstream-4.18-testing:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    qemu-upstream-4.18-testing:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    qemuu=0df9387c8983e1b1e72d8c574356f572342c03e6
X-Osstest-Versions-That:
    qemuu=0df9387c8983e1b1e72d8c574356f572342c03e6
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 28 Oct 2023 02:37:11 +0000

"Old" tested version had not actually been tested; therefore in this
flight we test it, rather than a new candidate.  The baseline, if
any, is the most recent actually tested revision.

flight 183557 qemu-upstream-4.18-testing real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183557/

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt   16 saverestore-support-check fail baseline untested
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop      fail baseline untested
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop       fail baseline untested
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail baseline untested
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail baseline untested
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop      fail baseline untested
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop       fail baseline untested
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail baseline untested
 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-amd64-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-xsm  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-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-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-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-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-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-amd64-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-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-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass

version targeted for testing:
 qemuu                0df9387c8983e1b1e72d8c574356f572342c03e6
baseline version:
 qemuu                0df9387c8983e1b1e72d8c574356f572342c03e6

Last test of basis   183557  2023-10-27 13:11:22 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                                                  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


Published tested tree is already up to date.



From xen-devel-bounces@lists.xenproject.org Sat Oct 28 03:35:48 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 28 Oct 2023 03:35:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624732.973355 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qwa6j-0003Gw-Uw; Sat, 28 Oct 2023 03:35:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624732.973355; Sat, 28 Oct 2023 03:35: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 1qwa6j-0003Gp-SA; Sat, 28 Oct 2023 03:35:29 +0000
Received: by outflank-mailman (input) for mailman id 624732;
 Sat, 28 Oct 2023 03:35: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=HIYw=GK=invisiblethingslab.com=marmarek@srs-se1.protection.inumbo.net>)
 id 1qwa6i-0003Gh-DY
 for xen-devel@lists.xenproject.org; Sat, 28 Oct 2023 03:35:28 +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 05ccfa3c-7543-11ee-9b0e-b553b5be7939;
 Sat, 28 Oct 2023 05:35:22 +0200 (CEST)
Received: from compute1.internal (compute1.nyi.internal [10.202.2.41])
 by mailout.nyi.internal (Postfix) with ESMTP id E72AF5C0352;
 Fri, 27 Oct 2023 23:35:20 -0400 (EDT)
Received: from mailfrontend1 ([10.202.2.162])
 by compute1.internal (MEProxy); Fri, 27 Oct 2023 23:35:20 -0400
Received: by mail.messagingengine.com (Postfix) with ESMTPA; Fri,
 27 Oct 2023 23:35: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: 05ccfa3c-7543-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
	invisiblethingslab.com; h=cc:cc:content-transfer-encoding
	:content-type:content-type:date:date:from:from:in-reply-to
	:message-id:mime-version:reply-to:sender:subject:subject:to:to;
	 s=fm3; t=1698464120; x=1698550520; bh=x+fJDKu1XKqm+RWIGS9Y1RqzZ
	XaHFv/SGQeeRLP2hbw=; b=k1YRj4VT5oHviv7HyLTyZRC9NpXE8iUDK63Gpcvzi
	u8Xofn6mCavBfbzXv0nQo+mOXtDE8ogYZkkbTdfhK5bJs1DkIUNhQY/bckcQ/mNA
	qhWabQvGeizXP1a3KO9bNCy3P2o5ksLjbgToJy2zhl/ndwNC9BvI0UibTCtySlcq
	BwWxthJOZ3k1ocaNxEw9IZ8tqb2zD8dN8JZ2sRlIOsTZAhDwSWkxVLsy4FDT3H1T
	c/a8vV1Uk5K/wVMXr2fquN5C/66jWC6PUYNfbOZ4awZomtOG+oaLwcXxU0Z6Nn0l
	nHnF9Tmr8DJZ16foJbpp4ZpJqo9sYqZy9sW4POZaWrN5g==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
	messagingengine.com; h=cc:cc:content-transfer-encoding
	:content-type: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=fm3; t=1698464120; x=1698550520; bh=x
	+fJDKu1XKqm+RWIGS9Y1RqzZXaHFv/SGQeeRLP2hbw=; b=f6MqBWYyIGZv09LWw
	mjV6wGnGOWyQKFsCzwiymi6TvcJ+NM5ftqEGLd7ECZwxn1yI2O/7Is7KbhgMOFlx
	iOChbsL/L/x79UGWBWrEVzlOzezUAbYBw1YdEGBPWNDaFxn4QwpTRMBS6t+en0Em
	3lXwRmFWkGWTIsudN22m9iAo1GNlUqPDIG+S3P0i1VJXFVsW5ImkICJidWNtITkz
	Jms70G9eHuWviLU3//EQ1uWjiCWOlwIRfyMuYQAlQbpIZtcU3DVyhBIuR3SRvlAV
	/i8rv3T9oMBIlFGId/laO90pKV7JtpTN/T9M8jVh8BE7p8B9CWUJ27YHvjWC4ihx
	xEbnQ==
X-ME-Sender: <xms:eIE8ZW0Hb-TWYAoJTn_3OEixsIqQOFl_PEOOz1abXN1trNZgjAZUpw>
    <xme:eIE8ZZEzZKpVJDbwzV2gEbSWDcwf-DbqSp_BntuLVvCwEgaQ_p8qy3ulDl8pFxY1X
    Pna91qCEy4l0A>
X-ME-Received: <xmr:eIE8Ze6SCtJBmRpu84yFBkJrrts-dsxec2cAxbPjZeURuq-xo2Rveho5iKuQNVtklUo3bHDlCoL5Vw32IhDA7F4oPlSLWj4-VDGqYkyPO8KuPQy1yP5E>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvkedrleehgdejfecutefuodetggdotefrodftvf
    curfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfghnecu
    uegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmdenuc
    fjughrpefhvfevufffkffogggtgfesthekredtredtjeenucfhrhhomhepofgrrhgvkhcu
    ofgrrhgtiiihkhhofihskhhiqdfikphrvggtkhhiuceomhgrrhhmrghrvghksehinhhvih
    hsihgslhgvthhhihhnghhslhgrsgdrtghomheqnecuggftrfgrthhtvghrnhepleekhfdu
    leetleelleetteevfeefteffkeetteejheelgfegkeelgeehhfdthedvnecuvehluhhsth
    gvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomhepmhgrrhhmrghrvghksehi
    nhhvihhsihgslhgvthhhihhnghhslhgrsgdrtghomh
X-ME-Proxy: <xmx:eIE8ZX3PzQo-qxNsPyklAaG8yJw9YRd1LVbwOYXuHi54M0_1rvSbQw>
    <xmx:eIE8ZZFqi2tsWVpgfbBxWzwvPPBI3cScrkNUKmvcp38W5b6Brym8LQ>
    <xmx:eIE8ZQ9CrYgH5rAV7Ii4zOCPGAeVOllXr9yhC_mTjudeA-YzI_bTog>
    <xmx:eIE8ZXNtzvNzqJDoRGDmJNIv0iK9rRII8xSMLMArxYG_f__cLGJ_HQ>
Feedback-ID: i1568416f:Fastmail
From: =?UTF-8?q?Marek=20Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>
To: xen-devel@lists.xenproject.org
Cc: =?UTF-8?q?Marek=20Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>,
	Doug Goldstein <cardoe@cardoe.com>,
	Stefano Stabellini <sstabellini@kernel.org>
Subject: [PATCH] automation: fix race condition in adl-suspend test
Date: Sat, 28 Oct 2023 05:33:57 +0200
Message-ID: <20231028033404.262729-1-marmarek@invisiblethingslab.com>
X-Mailer: git-send-email 2.41.0
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

If system suspends too quickly, the message for the test controller to
wake up the system may be not sent to the console before suspending.
This will cause the test to timeout.

Fix this by waiting a bit after printing the message. The test
controller then resumes the system 30s after the message, so as long as
the delay + suspending takes less time it is okay.

Signed-off-by: Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
---
This is consistent with the observation that sync_console "fixes" the
issue.
---
 automation/scripts/qubes-x86-64.sh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/automation/scripts/qubes-x86-64.sh b/automation/scripts/qubes-x86-64.sh
index 26131b082671..a34db96e4585 100755
--- a/automation/scripts/qubes-x86-64.sh
+++ b/automation/scripts/qubes-x86-64.sh
@@ -54,11 +54,11 @@ until grep 'domU started' /var/log/xen/console/guest-domU.log; do
     sleep 1
 done
 echo \"${wait_and_wakeup}\"
+# let the above message flow to console, then suspend
+sleep 5
 set -x
 echo deep > /sys/power/mem_sleep
 echo mem > /sys/power/state
-# now wait for resume
-sleep 5
 xl list
 xl dmesg | grep 'Finishing wakeup from ACPI S3 state' || exit 1
 # check if domU is still alive
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Sat Oct 28 12:25:18 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 28 Oct 2023 12:25:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624749.973366 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qwiNB-0000ak-P6; Sat, 28 Oct 2023 12:25:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624749.973366; Sat, 28 Oct 2023 12: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 1qwiNB-0000ad-MS; Sat, 28 Oct 2023 12:25:01 +0000
Received: by outflank-mailman (input) for mailman id 624749;
 Sat, 28 Oct 2023 12:24: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 1qwiN9-0000aT-Px; Sat, 28 Oct 2023 12:24: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 1qwiN9-0006Yg-FI; Sat, 28 Oct 2023 12:24: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 1qwiN9-0002cU-1e; Sat, 28 Oct 2023 12:24:59 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qwiN9-0007DZ-1F; Sat, 28 Oct 2023 12:24: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=QNwwSjzlNbtpuzAd+zwCuPQcvDVXq1dUR3kvMuNljHA=; b=dtXz9ij/1pPbTDfTz2GoaEztyt
	hMjG21/1MGM4Ck8MkphjOv4CJO1DwzjXx248GVtDMhHxDHWkX2hY0Mx8fzxF2dD+zm7Q6pawP0jvT
	4IPIeRtFGeG9Lc0xQCsaTjofx6Q581zpHGC/UxRXFkG9qxGMZFVjibHzjKR+o2nSd6yY=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183563-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 183563: tolerable FAIL - PUSHED
X-Osstest-Failures:
    linux-linus:test-amd64-amd64-xl-shadow:guest-localmigrate/x10:fail:heisenbug
    linux-linus:test-armhf-armhf-libvirt-qcow2: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-armhf-armhf-libvirt: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:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-xsm:migrate-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-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:saverestore-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-xl-xsm: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-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-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:saverestore-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-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-raw:migrate-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-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: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-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=888cf78c29e223fd808682f477c18cf8f61ad995
X-Osstest-Versions-That:
    linux=750b95887e567848ac2c851dae47922cac6db946
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 28 Oct 2023 12:24:59 +0000

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

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-amd64-amd64-xl-shadow 20 guest-localmigrate/x10 fail pass in 183569-retest

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail blocked in 183551
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183551
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183551
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183551
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183551
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183551
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183551
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183551
 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          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-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-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-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-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-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-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-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-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                888cf78c29e223fd808682f477c18cf8f61ad995
baseline version:
 linux                750b95887e567848ac2c851dae47922cac6db946

Last test of basis   183551  2023-10-27 07:13:47 Z    1 days
Testing same since   183563  2023-10-27 22:51:55 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  "Aneesh Kumar K.V" <aneesh.kumar@linux.ibm.com>
  Aneesh Kumar K.V <aneesh.kumar@linux.ibm.com>
  Henry Willard <henry.willard@oracle.com>
  Joerg Roedel <jroedel@suse.de>
  Linus Torvalds <torvalds@linux-foundation.org>
  Lu Baolu <baolu.lu@linux.intel.com>
  Michael Ellerman <mpe@ellerman.id.au>

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                                   fail    
 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
   750b95887e56..888cf78c29e2  888cf78c29e223fd808682f477c18cf8f61ad995 -> tested/linux-linus


From xen-devel-bounces@lists.xenproject.org Sat Oct 28 13:55:40 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 28 Oct 2023 13:55:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624755.973375 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qwjmf-0001ii-9F; Sat, 28 Oct 2023 13:55:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624755.973375; Sat, 28 Oct 2023 13: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 1qwjmf-0001ib-6d; Sat, 28 Oct 2023 13:55:25 +0000
Received: by outflank-mailman (input) for mailman id 624755;
 Sat, 28 Oct 2023 13: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=k4Ch=GK=gmail.com=jinoh.kang.kr@srs-se1.protection.inumbo.net>)
 id 1qwjme-0001iV-DK
 for xen-devel@lists.xenproject.org; Sat, 28 Oct 2023 13:55:24 +0000
Received: from mail-io1-xd33.google.com (mail-io1-xd33.google.com
 [2607:f8b0:4864:20::d33])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id a1ee8725-7599-11ee-9b0e-b553b5be7939;
 Sat, 28 Oct 2023 15:55:21 +0200 (CEST)
Received: by mail-io1-xd33.google.com with SMTP id
 ca18e2360f4ac-7a6830df017so89258439f.3
 for <xen-devel@lists.xenproject.org>; Sat, 28 Oct 2023 06:55:20 -0700 (PDT)
Received: from [10.137.0.57] ([14.33.99.107]) by smtp.gmail.com with ESMTPSA id
 g4-20020aa78744000000b0068e49cb1692sm3003511pfo.1.2023.10.28.06.55.17
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Sat, 28 Oct 2023 06:55: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: a1ee8725-7599-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698501319; x=1699106119; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:autocrypt:references:cc:to
         :from:content-language:subject:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=ghogzWAM0DlwzHAe5VfGXZuVCvVZ5uQ3sHkg2QNduys=;
        b=RxYaHHqYhn25p+47YEtoRG4PJ2UsB/Dbnz5HKlkKWJjo5HxU0DpqONAeSNHlOpSwOC
         5OEMhwV4g1iWY+J44F2QqGd0oGt2V5GbBwxKTEgU94qEr4bw1VB66tM6eWtcRIRFrE2C
         gEFKmDVatQgKtOkqs821DuzSMjfff2kUknyObKBGeHtHesgyLzFFN3FzE3j6bE0hJu7H
         AA3x23KaB1d0Kam6MqDWaLjxVHlhF4xWOhjqJXzyTOX8Vs1dn213HQUP27JO8/QoB8Pq
         fShWFQUxszKRiryfYWGHnklQGrs600Ptd5eKxfV6q+J0aFpxccMbHretB62Ojv9n5I6j
         8e7Q==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698501319; x=1699106119;
        h=content-transfer-encoding:in-reply-to:autocrypt: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=ghogzWAM0DlwzHAe5VfGXZuVCvVZ5uQ3sHkg2QNduys=;
        b=oj90l1jMttCn/Yc0oYtQdS3mmQL2fO9ypkJVPVXlLPNJPCNpmMiRhPfY5FwJwIzw9m
         srdI88BSDW2F1FbXdc+zGSQYBAOCjXben4Ov25L2BbFMzIVWx5vYKjtOL7UOl1aZLDNH
         Q+Zx3MQhXfiUoM0YhB8DA9wlYt/QQNO9xTaaz5Fe5LiA3POMPG0aQ8qDHbOWUldetU8Q
         t6x+0TkDPR2k4Otzb/zN2vR2pTqw6sTEWRAXrAgjaBoRmAl0W+gZ5ZWKiCUTcqewjZFT
         mmgJ050UAcLI5CA9FBS0OsCBbWxBJ+3Szz7exnaA/tQUbjYG59+ZEfNMlEANiXFvtR5Z
         p0jg==
X-Gm-Message-State: AOJu0YzA4sH7i00YOZ7sRmHVZAd76EGPDafBFzdti5P+B4AFS/jWKrQp
	Onc7ms4EJSxcJ/+cNUcK7jo=
X-Google-Smtp-Source: AGHT+IE36nKn7DU2LMBoTIw1oUV7gLSmlyd0tKZnbx+QIk+lt8IHgBuVeoTMv0nCAWIotXRVdvg0DQ==
X-Received: by 2002:a05:6e02:1846:b0:358:104:677d with SMTP id b6-20020a056e02184600b003580104677dmr7464775ilv.22.1698501319649;
        Sat, 28 Oct 2023 06:55:19 -0700 (PDT)
Message-ID: <3b21c98d-bf3c-46e4-a302-fc5b2c6cce3d@gmail.com>
Date: Sat, 28 Oct 2023 22:55:14 +0900
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH 5/7] x86: Introduce x86_merge_dr6()
Content-Language: en-US
From: Jinoh Kang <jinoh.kang.kr@gmail.com>
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>
 <13e3a0e1-42fe-d954-f06e-88526d56e919@gmail.com>
Autocrypt: addr=jinoh.kang.kr@gmail.com; keydata=
 xsFNBF/Q7MUBEADVIU6g5ui3gcTQV9jbneUb6xdUQJtEDOWG6pThD+nKAwQFYtZpCUSWgGVg
 osMQTyZu7HpEMvxoYNmO+1ZHtARugq2tl6BH11vEJgTsoF8IFrgyXNlinS+Kq6I8s6py96Pl
 Fk2b9Y3ok64DJUrmFjfgCAxO0RY/ZFS1vXMqibExzMLODTChrXal0Z9tjxQBkARPXeDmVg8c
 qW0121/3ODyi04jri34f5luRQe2PMJsqKAmd6Ok9zNkvc3wQZw7t3MiMEJjf1/eZa/He4OoI
 CO0zQY9dRhQBqgO67lnVziCRfRb4WCHxO03zE7C8ud/UOmuMM4Qh8rAyW3sJ2TbIqwvQepuc
 vC/Q+Av0GtuUCArUw4GbOibUDxhe1eTZViIYAghkzOxUWeDs1PXRPVnRu6PAGsQP39/2ZPAB
 wune9t2SEs4o2Js0Vx0c2O/vMXt3uHqtaGNdCJgqlBkNXHlrv47wF7bBMQSf4SepAg+1ZqfI
 wGgEWmWhBV+8Kqyb1zYIAPsqyvl/2E//XcvKk/70q0QhASGkUvEI8AWAGDdkVPrBfwIqhvWY
 ycMnOl12k5e161uvL1NiUIbvG41/lCzQqhmaDfYznwsC1YRfx/STNaoIdBqR+niUhJbEGpfy
 z1BqOYMHpFx1sKFfJesMDyLBDaQBuO5X2mKmpHvCyfy9ouBNmQARAQABzSRKaW5vaCBLYW5n
 IDxqaW5vaC5rYW5nLmtyQGdtYWlsLmNvbT7CwZQEEwEIAD4CGy8FCwkIBwIGFQoJCAsCBBYC
 AwECHgECF4AWIQRCo/a4eJTkYSJv2ktDGVOBYOvS5gUCYbhyYgUJBansnQAKCRBDGVOBYOvS
 5j/MD/9nOVrCapKqBwZasEvTDRnpSP+TYoNoLDnJ6ukyCLiVwSBINJuzENLw7WQzsAoMsQbF
 PH/VJE2BIsFTTkkEcST6xJzGb79LCReYWINCLJKFRkdqhFC/tE5WjcRmpHW6A+xWPvoBcsNw
 gkpygovdQEI4i4LnwTmC40xL86x7EgJMOFyHdbFFV6SbnagSQyN9qLMV52Ohj8VvBMEMoXF4
 gokxz11FYNMH6y8/n7VCqF3/uQR11uc84IHlxG1Q9I2b2Uwzf2Yy6JM7GYgSehqJnB74vxHw
 gLFTTtSTsi7yselCbvXMbOa2etETdU78u95JrKwlIDSDymPSynDLW4424DAv+r/HJ4T2ldck
 OFDf4cGKVsKw/IrNimgOQzGyMNoFbkZEG79+kWYqA6URXOPZaIpBsdMX7GGWpAei+FPUzLjI
 /lozEArNKHESRdoJaHPFMPuECodjfEYZjblt0VZNM8ybi7Xrp/RWrOtloKnTNewl/hSEfbxk
 S2yn6epDDhnU5vlOpnQXE6UrcGh0SXmnr6ZcN1b3xObTgvHe+nOq5vV1Rxss5iJURokEFe4L
 83PvU/9kZ9Z8SUzAjx5dgm4cV8MhKGFSV+6vCuWJwVqk0HVXyicSip4YR1uhdI+pmXqBdXa4
 51RbFPjXR1tR42AY3HsBvlksLjiWftW2nOyIYr48+c7BTQRf0OzFARAAx8fgWCVxM1CZWKGj
 5HKYV5IJy4D5/YVvi2ob05I18a5lz1dXLOu598rL9gX3V9bZ1k6Q7lh5glNyITnTnlAnpVNu
 zXbPlbJb35Bwmns3OgGi0tCPWxlsn5GZacXUnByVylwcR0OKA9ekWB2CJk0BVpBzKf3c/JgS
 bLNKNG9lpDlypJGMZBWbwODK5HdKKridfUJiFHdE6wErdryjTT75NDTzQoKTeMG/TgyBTLY5
 Ebc6AXryTGGi2THU/ufC+m7/NMhXQGR1dc1dZsPUELXR4XfE36HVfKi3lHT6jY+ylQqIhiQr
 haAun5mpitoOCWyeMvQCrXB+Qe1JzpVHQB2mPZ2RAMD82+wZE3kGh3XiOheY+NFb2ahTvZMe
 otf3/uH6k0LehKt2jVbVjaxAelqCMjBzOlPeaYlD1NTXXX9RGRUUQThfJezcCt/iOv64wayV
 N6ua8dMCrFWzS66bsrsdSmlucB/S7VvNLCFStSJnoW1s4MdQ387NVK3NC41tpx9qVzwIc4X/
 0jS2xA2EHC/+HMx8CXQiXPV98WP2Hd4TEmX4SAiIXuiXrN84ANJx/bPn/iS3QXBiY1YNI787
 oinlL4BJTM+rpZgTgsQk3M0QfenrVIqn7c/L+vk7r0TV4oq/+w2mKLAQX3co00+mrRfANajb
 xA4oODN5wd649jV7NZUAEQEAAcLDsgQYAQgAJgIbLhYhBEKj9rh4lORhIm/aS0MZU4Fg69Lm
 BQJhuHKrBQkFqezmAkDBdCAEGQEIAB0WIQTMaS2u9z9TeQVd30AaWpBEbISr9QUCX9DsxQAK
 CRAaWpBEbISr9YyoEACEZ78xorTPJiQwPtk+CDusIGGQUCpmDv9SJATiXVLS9n0cmNXpCEr0
 wmSfNMpav6vsbXG98J9VMS5sqYV92BNdcQzrUQQY6cZum3CgpXOZgsmmijda8Qd8agX6+dzi
 vnwZLF8pkKeGfvBGtGzy2gY/cU2HpXfBDYkReFpPT3wilRKjZGe5QvNS8VQYbQ3EHp72cKim
 ksXclQOd/oN03TSCQGAZV3aIq4rw/dnPL8Yk+ngZLDRjWwWCVpvvX972a1D9BnfP4+AXIAfW
 8/OY+HSELm2Ft2EGglascOlgztHNx8k6cDI+aj0W58QH3BEQRIrTLL7aH2V+rnofloFyHdNJ
 vbdwiIDjHs6EeCRpOaxRGJJKH14/b95d50KVFe+8Yyhz8s/zfuq1nPnZ4MMdwvLsADb6E9sO
 ojL5nGZg7D1uNssfpAa/aEoa8PC0QXXavgxpgeJp7+9tsg6ORDbWb1tzqA7mQ+pZqeXaumRr
 g90OaDXbkxM3IE5mT7zd7Exj7np5NWJxwwez69Sa2rGW5Hnf0HywIdqVxyLdR1vi9RZE0XB5
 gzzm62BtJHcwJ2wDqv/C4vAgD++wrNpJOODYjso7j8qI1XcBQKFp9eMCRkyE+zc4+6RZFIB8
 dKLHHLKAtMHnaKtt+FX+pWxLlEp7acvo8KWa6ZT1452WOtnoVbybGwkQQxlTgWDr0uZsGxAA
 wqR1Jr/ddIfFHdvEc8o/MGKJbmco+NZzmPqBjq7CUd9HWtApXM3VGJEV2KIBUndBRFt6+ZRQ
 IoDMD8YdqJMqRTGNNmi5lzQO/FYSKMdNc312e0AISFq4M5h3H1L2eHQRKUhf6yN1lEcvxAOC
 oifY83sLcMxiQCalMmquy4ViISo7NutImw8hJmJ/wwGTR2vQ4ROdISPTzcLmQgqECJdA/IeG
 Pmy2v5Mc+hVAlEGSxPXU4s3kqxXlNaJA7nX2+QYCjiOnIYgRa90VPbsrkw8B7GUz78rYYb3D
 XNwy8LtR2kv5vkqiqkKQCRhCB7EBWYrDgFldOBx7VbV8p9dS1Ub50/de6pKi0IrK46CtE4sB
 ro+Uq+k0HxllHh2ilUlSnInm+Riit+pH7x5BAjMQJ5E2nIGBHJebWPPN4hmraAh7Iy+tFLrr
 JCtRNpmqjscVqbBCtAc0KbGenSAPeWB4xx4CPxj0xYls8yR7r4HFnhk3RHGuTk2XhI+oa3Ku
 EFupnXSyAprbJOXjLrTQGmqgqxu2Pe3Y8c4QDpMWvSE9O1uFL3Kbb81A0UKJBDTovVvNixbk
 bd/QBkfTNpm3GP0/jjQRma2jvammxorO8/rCHHTJDC1G9jYdS5plYdjBauqtVAhwQYAptlD6
 txXwl3e8f9MonKqfbRPPNjJzsrnlOhApsBI=
In-Reply-To: <13e3a0e1-42fe-d954-f06e-88526d56e919@gmail.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit

On 9/25/23 19:20, Jinoh Kang wrote:
> 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.
> 

Just a heads-up; has there been any progress on this part?

Please let me know if you need anything.  I'm happy to help!

-- 
Sincerely,
Jinoh Kang



From xen-devel-bounces@lists.xenproject.org Sat Oct 28 14:54:26 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 28 Oct 2023 14:54:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624761.973385 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qwkhd-0000ak-Gg; Sat, 28 Oct 2023 14:54:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624761.973385; Sat, 28 Oct 2023 14:54: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 1qwkhd-0000ad-EA; Sat, 28 Oct 2023 14:54:17 +0000
Received: by outflank-mailman (input) for mailman id 624761;
 Sat, 28 Oct 2023 14:54: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=IE94=GK=amd.com=Stewart.Hildebrand@srs-se1.protection.inumbo.net>)
 id 1qwkhb-0000aC-QQ
 for xen-devel@lists.xenproject.org; Sat, 28 Oct 2023 14:54:15 +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 d9ecd789-75a1-11ee-9b0e-b553b5be7939;
 Sat, 28 Oct 2023 16:54:11 +0200 (CEST)
Received: from BLAPR03CA0079.namprd03.prod.outlook.com (2603:10b6:208:329::24)
 by CY8PR12MB8363.namprd12.prod.outlook.com (2603:10b6:930:7a::14)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.24; Sat, 28 Oct
 2023 14:54:08 +0000
Received: from MN1PEPF0000ECD6.namprd02.prod.outlook.com
 (2603:10b6:208:329:cafe::5) by BLAPR03CA0079.outlook.office365.com
 (2603:10b6:208:329::24) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.26 via Frontend
 Transport; Sat, 28 Oct 2023 14:54:07 +0000
Received: from SATLEXMB03.amd.com (165.204.84.17) by
 MN1PEPF0000ECD6.mail.protection.outlook.com (10.167.242.135) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6933.15 via Frontend Transport; Sat, 28 Oct 2023 14:54:07 +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.32; Sat, 28 Oct
 2023 09:54:07 -0500
Received: from [172.28.214.164] (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.32 via Frontend
 Transport; Sat, 28 Oct 2023 09:54: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: d9ecd789-75a1-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=m3dwHQLkhzxTqM6Pn3CM1dshSUkZeeLm2MmLaxuaWKUAem3vgfFZbOI+THfKayAuRnGIxQy3wyQERXllu29wHnN3yBzSd6fovlZe27PLScAayf9/FWWLSHvMg33dtaIGpTpmVT5+N1JC/6XBteTJjVLCwGJ6/tXZ2jbSVOcGDC1mIgUxhlCzUws0Z8IrJq202WYHwoggKzxpmuMsPjdVpfwa9zlVV00aJOvDG1z8m0X+aSZrQ5PCBrjjq76o8FIdzo6iUIfASUJlTGo0MjM3/Kchof4gTgVVPu2MoSExtfynaO3y2J9Km5qlM4go85uKJWyzQ/ItVAfrjNQj385Ucw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=ZC3B/ZD83xXgRJuYAFVx9TYHCGNdgcnn/fu4C3+kc3o=;
 b=SEtuIJf5iIG3McSSwNdKSNTAWBiPpHBaeZKk7ITu0cE8WETYBkAsNvbYIbUABxPD3UlWCOVkShoNXJQDDnOCUXaFfhf36yIonCgd7Fv880abpSXGfPTQn5mo58YDZXsA+DMV1EvJ79M/AFKBCDga49c/xg3FyqCMcG7HKBfBnQC3gdJcO2F8l/HtouAGNCzWnwx9o53tfiUNq8P+pzy4FyYX+rygXIMV9kxchOtCi46OhCResDkS3aFxXA/Rq5BhsQCmaKAy3yTH5r/E7YqZuec+TV0mODy6HqULsAxStFVf7C8DMtpqKmcd9DvWLgzcNpQ180FvzpDUYfhvZsRKrw==
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 (0)
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=ZC3B/ZD83xXgRJuYAFVx9TYHCGNdgcnn/fu4C3+kc3o=;
 b=5ujf4vo06bamaN8GR7GVB24oxrLzbsTz6jw036h6UOG161/CHPk9urFaBpy4QbSEoQhZmja0nh6arSdByUsyuMJny57ziHwu1F79xC+TjHGH+JlUsQS7P/+tGWJ+EzbAgjlgxfSBvkylKGo5hsvSGUJXfcI9CPrOAWKHIJI6/ZA=
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: <23a1f0f2-dd1d-4040-be19-41b6e5e53e20@amd.com>
Date: Sat, 28 Oct 2023 10:54:04 -0400
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v3 5/5] [FUTURE] xen/arm: enable vPCI for domUs
To: Anthony PERARD <anthony.perard@citrix.com>
CC: <xen-devel@lists.xenproject.org>, Wei Liu <wl@xen.org>, Juergen Gross
	<jgross@suse.com>, Stefano Stabellini <sstabellini@kernel.org>, Julien Grall
	<julien@xen.org>, Bertrand Marquis <bertrand.marquis@arm.com>, Volodymyr
 Babchuk <Volodymyr_Babchuk@epam.com>
References: <20231009195747.889326-1-stewart.hildebrand@amd.com>
 <20231009195747.889326-6-stewart.hildebrand@amd.com>
 <3e1d47e7-4f69-4402-9136-1dee0511915f@perard>
Content-Language: en-US
From: Stewart Hildebrand <stewart.hildebrand@amd.com>
In-Reply-To: <3e1d47e7-4f69-4402-9136-1dee0511915f@perard>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 7bit
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: MN1PEPF0000ECD6:EE_|CY8PR12MB8363:EE_
X-MS-Office365-Filtering-Correlation-Id: ee25fcd8-6918-423d-1b68-08dbd7c5bc95
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	yLpTzAKJiZIgE+xs75TKBU8s9eQ8V40kAlCWo1+nKNWqhM0D6ehPRjA/bflTSoWyLJmDQlfFCrtep6srxVZ/J3/JtHJ7lRPxwxhNCSmP91VxKxvW4my+ke7BXeG2oiR56fp3RTgiTrq2GqvIa2rtK2iFTfYSou67cc9A5AzdbC3ZDQbnI+t/mwtHjPwY7zfI5ECAYkag67Bh3wpl3YMlYVs5/1V7ZbJxdG5904FSlGsK6aKOyiviPohOFImGqBn7U2tzGd8JpjDrQjfXCeadCW1qEk2FpdA3iSWWpS8qHZdcSHHcv8lkDH4Pjbs4Om07Z+EePNL1Dkx2+kPrpdtC+xwdaN5UC4kwbaI2GwWXZCtDCYnlEeJzDFgnOzs/RMwNllhoeZkIK60GzfaiRMuGnQopylo7vlbH91leW8hJn0gLWG7qjyNI+VR6LM3acMU2PLr5g4/+4I5yFLJZhoQ2dNR1IP3dYannJS2Nz5PNTF9zwEz6gDz9tELMqQOM4SZpP5rT04A1Sz9QsCVPv6bZlImGQPqDWJidazIHYvZj6L81qM+Qq3tq09YDKX6D8bgcJ8om1mHTkJ7YNyXY7Ylo3eKBrLJ4QGD7ZN7srEW4W8Z0J1dc3YfXwDSiW7Oypq9EmdtOq03QRon9eO6+E0my08VzxYySowO50CL4Djrs/E48oXtZ8TP5D5tysNzQ8/fqa+eHkQIGDDVSpBwAZ7l8K8gMzdH8IP2MrSZLE+Q2i0nI1p76M650VimuSgB8ADdAelo6R7jqtJDgePpE7gd7QHTSFpDkYxHBV/z8KaVLTvs=
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)(396003)(39860400002)(136003)(230922051799003)(64100799003)(451199024)(82310400011)(1800799009)(186009)(46966006)(40470700004)(36840700001)(5660300002)(31696002)(8936002)(4326008)(36756003)(8676002)(86362001)(44832011)(41300700001)(40480700001)(40460700003)(2906002)(53546011)(2616005)(336012)(26005)(426003)(966005)(83380400001)(478600001)(356005)(81166007)(31686004)(82740400003)(47076005)(36860700001)(70586007)(70206006)(316002)(54906003)(16576012)(6916009)(36900700001)(43740500002);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Oct 2023 14:54:07.5006
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: ee25fcd8-6918-423d-1b68-08dbd7c5bc95
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:
	MN1PEPF0000ECD6.namprd02.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY8PR12MB8363

On 10/23/23 06:27, Anthony PERARD wrote:
> On Mon, Oct 09, 2023 at 03:57:44PM -0400, Stewart Hildebrand wrote:
>> Select HAS_VPCI_GUEST_SUPPORT in Kconfig for enabling vPCI in domUs.
>>
>> Set the pci flags in xen_arch_domainconfig to enable vPCI if a pci device has
>> been specified in the xl domain config file.
>>
>> Signed-off-by: Stewart Hildebrand <stewart.hildebrand@amd.com>
>> ---
>> As the tag implies, this patch is not intended to be merged (yet).
>>
>> Note that CONFIG_HAS_VPCI_GUEST_SUPPORT is not currently used in the upstream
>> code base. It will be used by the vPCI series [1]. This patch is intended to be
>> merged as part of the vPCI series. I'll coordinate with Volodymyr to include
>> this in the vPCI series or resend afterwards. Meanwhile, I'll include it here
>> until the Kconfig and xen_arch_domainconfig prerequisites have been committed.
>>
>> v2->v3:
>> * set pci flags in toolstack
>>
>> v1->v2:
>> * new patch
>>
>> [1] https://lists.xenproject.org/archives/html/xen-devel/2023-08/msg02361.html
>> ---
>>  tools/libs/light/libxl_arm.c | 3 +++
>>  xen/arch/arm/Kconfig         | 1 +
> 
> Can we have two different patch? One for the hypervisor, one for the
> tools.

Yes.

> Or does the both depends on each other, somehow?

They will both be needed for enabling vPCI in a domU on ARM with assigned PCI device(s).

> 
> Is guest creation going to fails if we set XEN_DOMCTL_CONFIG_PCI_VPCI
> without HAS_VPCI_GUEST_SUPPORT ?

No, currently the guest will still run, it just won't be able to probe any assigned PCI devices.

> 
> Is the guest is going to fail to run, or fail at creation if the
> hypervisor HAS_VPCI_GUEST_SUPPORT, but we didn't set
> XEN_DOMCTL_CONFIG_PCI_VPCI?

Assuming num_pcidevs > 0, the guest will be created but fail to boot as it will try to access the vPCI configuration space, but it will trap and panic.

In both cases, I think I can do more on the hypervisor side to check for an invalid configuration and refuse the domain creation with a helpful error message.

In either case, if a user does not try to assign a PCI device (i.e. num_pcidevs == 0), then the guest will run fine.

> 
> Thanks,
> 
> --
> Anthony PERARD


From xen-devel-bounces@lists.xenproject.org Sat Oct 28 15:55:45 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 28 Oct 2023 15:55:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624766.973395 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qwleu-0008CM-1E; Sat, 28 Oct 2023 15:55:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624766.973395; Sat, 28 Oct 2023 15: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 1qwlet-0008CF-Um; Sat, 28 Oct 2023 15:55:31 +0000
Received: by outflank-mailman (input) for mailman id 624766;
 Sat, 28 Oct 2023 15: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=vYyO=GK=suse.com=jgross@srs-se1.protection.inumbo.net>)
 id 1qwles-0008C9-6R
 for xen-devel@lists.xenproject.org; Sat, 28 Oct 2023 15:55:30 +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 6926c80f-75aa-11ee-98d6-6d05b1d4d9a1;
 Sat, 28 Oct 2023 17:55: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-out1.suse.de (Postfix) with ESMTPS id AE86921D6F;
 Sat, 28 Oct 2023 15:55: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 81222138F8;
 Sat, 28 Oct 2023 15:55:25 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap2.suse-dmz.suse.de with ESMTPSA id krgQHu0uPWXCJwAAMHmgww
 (envelope-from <jgross@suse.com>); Sat, 28 Oct 2023 15:55: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: 6926c80f-75aa-11ee-98d6-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1698508525; h=from:from:reply-to: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=dGrk1kgDIUUWjtfSnQ+C6LXr6l7ET+4+pAVQ44VHhtE=;
	b=ViN190DzdFdCqnn/9/LXvKVD9+pLQ/qwts27v0yZ1th3p5cYApaXylS+yaUvJfJIefggDM
	JDN2CZA0l9cODgsnaMQgIQkg4O+Y2bbceSse3uKqWfnA7I03FBTNhoDtInOSDSaPov+lgk
	CLVJWgD/TM4vZNwDctXmDJ+D28wt3DM=
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.7-rc1
Date: Sat, 28 Oct 2023 17:55:24 +0200
Message-Id: <20231028155524.19315-1-jgross@suse.com>
X-Mailer: git-send-email 2.35.3
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Authentication-Results: smtp-out1.suse.de;
	none
X-Spam-Level: 
X-Spam-Score: -1.68
X-Spamd-Result: default: False [-1.68 / 50.00];
	 ARC_NA(0.00)[];
	 RCVD_VIA_SMTP_AUTH(0.00)[];
	 BAYES_SPAM(1.42)[85.23%];
	 FROM_HAS_DN(0.00)[];
	 RCPT_COUNT_THREE(0.00)[4];
	 TO_MATCH_ENVRCPT_ALL(0.00)[];
	 NEURAL_HAM_LONG(-3.00)[-1.000];
	 MIME_GOOD(-0.10)[text/plain];
	 TO_DN_NONE(0.00)[];
	 DKIM_SIGNED(0.00)[suse.com:s=susede1];
	 NEURAL_HAM_SHORT(-1.00)[-1.000];
	 MID_CONTAINS_FROM(1.00)[];
	 FROM_EQ_ENVFROM(0.00)[];
	 MIME_TRACE(0.00)[0:+];
	 RCVD_COUNT_TWO(0.00)[2];
	 RCVD_TLS_ALL(0.00)[]
X-Spam-Flag: NO

Linus,

Please git pull the following tag:

 git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip.git for-linus-6.7-rc1-tag

xen: branch for v6.7-rc1

It contains the following patches:

- 2 small cleanup patches

- a fix for PCI passthrough under Xen

- a 4 patch series speeding up virtio under Xen with user space backends


Thanks.

Juergen

 drivers/xen/Kconfig                             |   8 +-
 drivers/xen/events/events_base.c                |   3 +-
 drivers/xen/evtchn.c                            |   2 +-
 drivers/xen/privcmd.c                           | 407 +++++++++++++++++++++++-
 drivers/xen/xen-pciback/conf_space.c            |  19 +-
 drivers/xen/xen-pciback/conf_space_capability.c |   8 +-
 drivers/xen/xen-pciback/conf_space_header.c     |  21 +-
 drivers/xen/xenbus/xenbus_dev_frontend.c        |   4 +-
 drivers/xen/xenbus/xenbus_probe.c               |   2 +-
 include/uapi/xen/privcmd.h                      |  22 +-
 include/xen/interface/hvm/ioreq.h               |  51 +++
 11 files changed, 508 insertions(+), 39 deletions(-)

Gustavo A. R. Silva (1):
      xen/xenbus: Add __counted_by for struct read_buffer and use struct_size()

Juergen Gross (1):
      xenbus: fix error exit in xenbus_init()

Marek Marczykowski-Górecki (1):
      xen-pciback: Consider INTx disabled when MSI/MSI-X is enabled

Viresh Kumar (4):
      xen: Make struct privcmd_irqfd's layout architecture independent
      xen: irqfd: Use _IOW instead of the internal _IOC() macro
      xen: evtchn: Allow shared registration of IRQ handers
      xen: privcmd: Add support for ioeventfd


From xen-devel-bounces@lists.xenproject.org Sat Oct 28 16:32:58 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 28 Oct 2023 16:32:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624770.973406 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qwmEw-0005Pv-Ra; Sat, 28 Oct 2023 16:32:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624770.973406; Sat, 28 Oct 2023 16:32: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 1qwmEw-0005Po-Oi; Sat, 28 Oct 2023 16:32:46 +0000
Received: by outflank-mailman (input) for mailman id 624770;
 Sat, 28 Oct 2023 16:32: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 1qwmEv-0005Pc-Hb; Sat, 28 Oct 2023 16:32: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 1qwmEv-0004Vn-6K; Sat, 28 Oct 2023 16:32: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 1qwmEu-0003lb-RD; Sat, 28 Oct 2023 16:32:44 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qwmEu-0001fq-Qd; Sat, 28 Oct 2023 16:32: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=V1FxN+F+xQrt1KQita5CzFJMTMFxqb5qAWbwm/g/c7Q=; b=27otlOLLKa23J1m30gTCupVDzQ
	LmRGrV1wrjvvl6kTw2Twv3qxrqrYrvAq3+VJZgu7eHn+bxmDH1uhvUH91FKAKgF7LQ47mBCRXeULr
	LbRFfKcwNsBC08MLzVvtrh3+B7V1enYU+Zgbe98RlnQf9ai7Tci/HwoNpl+VviXMINO0=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183564-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-4.18-testing test] 183564: regressions - FAIL
X-Osstest-Failures:
    xen-4.18-testing:build-amd64-xsm:xen-build:fail:regression
    xen-4.18-testing:build-i386-xsm:xen-build:fail:regression
    xen-4.18-testing:build-amd64:xen-build:fail:regression
    xen-4.18-testing:build-i386:xen-build:fail:regression
    xen-4.18-testing:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-livepatch:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-migrupgrade:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-pair:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-qemut-rhel6hvm-amd:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-qemut-rhel6hvm-intel:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-xl:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-xl-qemut-debianhvm-amd64:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-xl-qemut-win7-amd64:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-xl-qemut-ws16-amd64:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-xl-xsm:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-xsm:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-qemut-ws16-amd64:build-check(1):blocked:nonblocking
    xen-4.18-testing:build-amd64-libvirt:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-qemut-win7-amd64:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-qemut-debianhvm-amd64:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking
    xen-4.18-testing:build-i386-libvirt:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-livepatch:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-migrupgrade:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-pair:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-xtf-amd64-amd64-1:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-xtf-amd64-amd64-2:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-xtf-amd64-amd64-3:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-xtf-amd64-amd64-4:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-xtf-amd64-amd64-5:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=b6cf4f81b5ff43a05b199c3eb8c78059d03d9485
X-Osstest-Versions-That:
    xen=5415b2b2118bd78d8a04f276a8312f7f0cb1a466
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 28 Oct 2023 16:32:44 +0000

flight 183564 xen-4.18-testing real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183564/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 build-amd64-xsm               6 xen-build                fail REGR. vs. 183555
 build-i386-xsm                6 xen-build                fail REGR. vs. 183555
 build-amd64                   6 xen-build                fail REGR. vs. 183555
 build-i386                    6 xen-build                fail REGR. vs. 183555

Tests which did not succeed, but are not blocking:
 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-amd64-i386-livepatch     1 build-check(1)               blocked  n/a
 test-amd64-i386-migrupgrade   1 build-check(1)               blocked  n/a
 test-amd64-i386-pair          1 build-check(1)               blocked  n/a
 test-amd64-i386-qemut-rhel6hvm-amd  1 build-check(1)               blocked n/a
 test-amd64-i386-qemut-rhel6hvm-intel  1 build-check(1)             blocked n/a
 test-amd64-i386-qemuu-rhel6hvm-amd  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-qemut-debianhvm-amd64  1 build-check(1)         blocked n/a
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm  1 build-check(1)      blocked n/a
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-i386-xl-qemut-win7-amd64  1 build-check(1)              blocked n/a
 test-amd64-i386-xl-qemut-ws16-amd64  1 build-check(1)              blocked n/a
 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-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-amd64-coresched-amd64-xl  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-xsm       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
 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
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 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-xl-qemuu-debianhvm-amd64-shadow  1 build-check(1) blocked n/a
 test-amd64-amd64-xl-qemuu-debianhvm-amd64  1 build-check(1)        blocked n/a
 test-amd64-amd64-xl-qemut-ws16-amd64  1 build-check(1)             blocked n/a
 build-amd64-libvirt           1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemut-win7-amd64  1 build-check(1)             blocked n/a
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm  1 build-check(1)     blocked n/a
 test-amd64-amd64-xl-qemut-debianhvm-amd64  1 build-check(1)        blocked n/a
 test-amd64-amd64-xl-qcow2     1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-pvshim    1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-pvhv2-intel  1 build-check(1)               blocked  n/a
 build-i386-libvirt            1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-pvhv2-amd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-multivcpu  1 build-check(1)               blocked  n/a
 test-amd64-amd64-dom0pvh-xl-amd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-dom0pvh-xl-intel  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-credit2   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-xl-credit1   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-libvirt-vhd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl           1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-amd64-amd64-livepatch    1 build-check(1)               blocked  n/a
 test-amd64-amd64-qemuu-nested-intel  1 build-check(1)              blocked n/a
 test-amd64-amd64-migrupgrade  1 build-check(1)               blocked  n/a
 test-amd64-amd64-pair         1 build-check(1)               blocked  n/a
 test-amd64-amd64-qemuu-nested-amd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-pygrub       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-i386-xl-qemuu-win7-amd64  1 build-check(1)              blocked n/a
 test-amd64-i386-xl-qemuu-ovmf-amd64  1 build-check(1)              blocked n/a
 test-amd64-coresched-i386-xl  1 build-check(1)               blocked  n/a
 test-amd64-i386-freebsd10-amd64  1 build-check(1)               blocked  n/a
 test-amd64-i386-freebsd10-i386  1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt       1 build-check(1)               blocked  n/a
 test-xtf-amd64-amd64-1        1 build-check(1)               blocked  n/a
 test-xtf-amd64-amd64-2        1 build-check(1)               blocked  n/a
 test-xtf-amd64-amd64-3        1 build-check(1)               blocked  n/a
 test-xtf-amd64-amd64-4        1 build-check(1)               blocked  n/a
 test-xtf-amd64-amd64-5        1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183555
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183555
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183555
 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-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 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-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-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-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-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:
 xen                  b6cf4f81b5ff43a05b199c3eb8c78059d03d9485
baseline version:
 xen                  5415b2b2118bd78d8a04f276a8312f7f0cb1a466

Last test of basis   183555  2023-10-27 13:10:21 Z    1 days
Testing same since   183564  2023-10-27 23:37:39 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Julien Grall <jgrall@amazon.com>
  Julien Grall <julien@xen.org>

jobs:
 build-amd64-xsm                                              fail    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               fail    
 build-amd64-xtf                                              pass    
 build-amd64                                                  fail    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   fail    
 build-amd64-libvirt                                          blocked 
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           blocked 
 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                                       blocked 
 test-xtf-amd64-amd64-2                                       blocked 
 test-xtf-amd64-amd64-3                                       blocked 
 test-xtf-amd64-amd64-4                                       blocked 
 test-xtf-amd64-amd64-5                                       blocked 
 test-amd64-amd64-xl                                          blocked 
 test-amd64-coresched-amd64-xl                                blocked 
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 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-qemut-stubdom-debianhvm-amd64-xsm        blocked 
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         blocked 
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 blocked 
 test-amd64-i386-xl-qemut-debianhvm-i386-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                                 pass    
 test-amd64-i386-libvirt-xsm                                  blocked 
 test-amd64-amd64-xl-xsm                                      blocked 
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       blocked 
 test-amd64-amd64-qemuu-nested-amd                            blocked 
 test-amd64-amd64-xl-pvhv2-amd                                blocked 
 test-amd64-i386-qemut-rhel6hvm-amd                           blocked 
 test-amd64-i386-qemuu-rhel6hvm-amd                           blocked 
 test-amd64-amd64-dom0pvh-xl-amd                              blocked 
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    blocked 
 test-amd64-i386-xl-qemut-debianhvm-amd64                     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-qemut-win7-amd64                         blocked 
 test-amd64-i386-xl-qemut-win7-amd64                          blocked 
 test-amd64-amd64-xl-qemuu-win7-amd64                         blocked 
 test-amd64-i386-xl-qemuu-win7-amd64                          blocked 
 test-amd64-amd64-xl-qemut-ws16-amd64                         blocked 
 test-amd64-i386-xl-qemut-ws16-amd64                          blocked 
 test-amd64-amd64-xl-qemuu-ws16-amd64                         blocked 
 test-amd64-i386-xl-qemuu-ws16-amd64                          blocked 
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-xl-credit1                                  blocked 
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  blocked 
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 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-qemut-rhel6hvm-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                                     pass    
 test-amd64-i386-libvirt                                      blocked 
 test-amd64-amd64-livepatch                                   blocked 
 test-amd64-i386-livepatch                                    blocked 
 test-amd64-amd64-migrupgrade                                 blocked 
 test-amd64-i386-migrupgrade                                  blocked 
 test-amd64-amd64-xl-multivcpu                                blocked 
 test-armhf-armhf-xl-multivcpu                                pass    
 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                               pass    
 test-amd64-amd64-xl-qcow2                                    blocked 
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  blocked 
 test-amd64-amd64-xl-rtds                                     blocked 
 test-armhf-armhf-xl-rtds                                     pass    
 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                                 pass    
 test-amd64-amd64-libvirt-vhd                                 blocked 
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    
 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.

------------------------------------------------------------
commit b6cf4f81b5ff43a05b199c3eb8c78059d03d9485
Author: Julien Grall <julien@xen.org>
Date:   Fri Oct 27 14:08:16 2023 +0100

    Turn off debug by default
    
    Signed-off-by: Julien Grall <jgrall@amazon.com>

commit f17e9d7459f4d4c6e078cbf15e7e0591c8b5f43e
Author: Julien Grall <julien@xen.org>
Date:   Fri Oct 27 14:07:09 2023 +0100

    Config.mk: switch to named tags (for stable branch)
    
    Signed-off-by: Julien Grall <julien@xen.org>
(qemu changes not included)


From xen-devel-bounces@lists.xenproject.org Sat Oct 28 17:36:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 28 Oct 2023 17:36:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624781.973431 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qwnEl-0004ho-Q3; Sat, 28 Oct 2023 17:36:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624781.973431; Sat, 28 Oct 2023 17:36: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 1qwnEl-0004hh-Le; Sat, 28 Oct 2023 17:36:39 +0000
Received: by outflank-mailman (input) for mailman id 624781;
 Sat, 28 Oct 2023 17:36: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 1qwnEl-0004hX-2s; Sat, 28 Oct 2023 17:36: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 1qwnEk-000659-Ub; Sat, 28 Oct 2023 17:36: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 1qwnEk-0005bH-OJ; Sat, 28 Oct 2023 17:36:38 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qwnEk-0003FK-Nq; Sat, 28 Oct 2023 17:36: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=ZX3MmTpNN7hmGYMvoW1j5ObMe3GtUzU3blAwVM+cBnI=; b=hox2Hf5v3ABTiDj2pdpinkYMbl
	vSmNiK/5mMDY1SfmVJku7lwKZgDrqe9nyo3NYom920d5RyU/jYrAhS4bLJCO+mV8Y0ZOaIevA+uwY
	2qdDfeUTZ7/aum7YalSLKVqV1JVX7Tsj7mmXfrDmD8Ju0rf726KvN+olsxnuAu6Tuads=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183571-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 183571: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=7806713f00e92b37799ef920daae3ebf14c5b07f
X-Osstest-Versions-That:
    ovmf=7ff6ab2b3e09ee7ec0d698398001295b7867b08c
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 28 Oct 2023 17:36:38 +0000

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

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 7806713f00e92b37799ef920daae3ebf14c5b07f
baseline version:
 ovmf                 7ff6ab2b3e09ee7ec0d698398001295b7867b08c

Last test of basis   183565  2023-10-27 23:41:06 Z    0 days
Testing same since   183571  2023-10-28 15:12:46 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Joey Vagedes <joeyvagedes@gmail.com>
  Joey Vagedes <joeyvagedes@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
   7ff6ab2b3e..7806713f00  7806713f00e92b37799ef920daae3ebf14c5b07f -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Sat Oct 28 19:20:28 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 28 Oct 2023 19:20:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624799.973477 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qwoqs-0008UQ-U2; Sat, 28 Oct 2023 19:20:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624799.973477; Sat, 28 Oct 2023 19:20: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 1qwoqs-0008U9-Qz; Sat, 28 Oct 2023 19:20:06 +0000
Received: by outflank-mailman (input) for mailman id 624799;
 Sat, 28 Oct 2023 19:20: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 1qwoqr-0008QI-DH; Sat, 28 Oct 2023 19:20: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 1qwoqr-0008ML-7M; Sat, 28 Oct 2023 19:20: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 1qwoqq-0008J7-QR; Sat, 28 Oct 2023 19:20:04 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qwoqq-0008Lx-Q3; Sat, 28 Oct 2023 19:20: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:Message-Id:Subject:To;
	bh=ydh94nZR7q5HSjRmjW0nobUsb5LEmGxEdatP48E++Sk=; b=tta8o3NYeAlVQrsJkEd4ulKtPa
	rKUAFX3Ytjm0d5ftU4N/NE39NFbJEOTdfBxefawM/aTmGl+aNp/jLNPbVW/Sa+t27KVju584thzbA
	ett43EFbN4MqbkRedFYImXe6WsM3ljOHcLWiMNLfLm51lcIq9Oe8hA//PFJQjz+0ihcM=;
To: xen-devel@lists.xenproject.org
Subject: [xen-4.18-testing bisection] complete build-amd64-xsm
Message-Id: <E1qwoqq-0008Lx-Q3@osstest.test-lab.xenproject.org>
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 28 Oct 2023 19:20:04 +0000

branch xen-4.18-testing
xenbranch xen-4.18-testing
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 git://xenbits.xen.org/qemu-xen.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:  f17e9d7459f4d4c6e078cbf15e7e0591c8b5f43e
  Bug not present: 5415b2b2118bd78d8a04f276a8312f7f0cb1a466
  Last fail repro: http://logs.test-lab.xenproject.org/osstest/logs/183581/


  commit f17e9d7459f4d4c6e078cbf15e7e0591c8b5f43e
  Author: Julien Grall <julien@xen.org>
  Date:   Fri Oct 27 14:07:09 2023 +0100
  
      Config.mk: switch to named tags (for stable branch)
      
      Signed-off-by: Julien Grall <julien@xen.org>


For bisection revision-tuple graph see:
   http://logs.test-lab.xenproject.org/osstest/results/bisect/xen-4.18-testing/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/xen-4.18-testing/build-amd64-xsm.xen-build --summary-out=tmp/183581.bisection-summary --basis-template=183555 --blessings=real,real-bisect,real-retry xen-4.18-testing build-amd64-xsm xen-build
Searching for failure / basis pass:
 183564 fail [host=nobling1] / 183555 [host=godello0] template as basis? using template as basis.
Failure / basis pass flights: 183564 / 183555
(tree in basispass but not in latest: minios)
Tree: ovmf git://xenbits.xen.org/osstest/ovmf.git
Tree: qemu git://xenbits.xen.org/qemu-xen-traditional.git
Tree: qemuu git://xenbits.xen.org/qemu-xen.git
Tree: seabios git://xenbits.xen.org/osstest/seabios.git
Tree: xen git://xenbits.xen.org/xen.git
Latest 7e08d17a4a535a7abfa58a0606ca1a0e7f5862ad 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 1e1da7a963007d03a4e0e9a9e0ff17990bb1608d b6cf4f81b5ff43a05b199c3eb8c78059d03d9485
Basis pass 7e08d17a4a535a7abfa58a0606ca1a0e7f5862ad 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 1e1da7a963007d03a4e0e9a9e0ff17990bb1608d 5415b2b2118bd78d8a04f276a8312f7f0cb1a466
Generating revisions with ./adhoc-revtuple-generator  git://xenbits.xen.org/osstest/ovmf.git#7e08d17a4a535a7abfa58a0606ca1a0e7f5862ad-7e08d17a4a535a7abfa58a0606ca1a0e7f5862ad git://xenbits.xen.org/qemu-xen-traditional.git#3d273dd05e51e5a1ffba3d98c7437ee84e8f8764-3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 git://xenbits.xen.org/qemu-xen.git#0df9387c8983e1b1e72d8c574356f572342c03e6-0df9387c8983e1b1e72d8c574356f572342c03e6 git://xenbits.xen.org/osstest/seabios.git#1e1da7a963007d03a4e0e9a9e0ff17990bb16\
 08d-1e1da7a963007d03a4e0e9a9e0ff17990bb1608d git://xenbits.xen.org/xen.git#5415b2b2118bd78d8a04f276a8312f7f0cb1a466-b6cf4f81b5ff43a05b199c3eb8c78059d03d9485
Loaded 5001 nodes in revision graph
Searching for test results:
 183573 pass 7e08d17a4a535a7abfa58a0606ca1a0e7f5862ad 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 1e1da7a963007d03a4e0e9a9e0ff17990bb1608d 5415b2b2118bd78d8a04f276a8312f7f0cb1a466
 183555 [host=godello0]
 183564 fail 7e08d17a4a535a7abfa58a0606ca1a0e7f5862ad 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 1e1da7a963007d03a4e0e9a9e0ff17990bb1608d b6cf4f81b5ff43a05b199c3eb8c78059d03d9485
 183574 fail 7e08d17a4a535a7abfa58a0606ca1a0e7f5862ad 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 1e1da7a963007d03a4e0e9a9e0ff17990bb1608d b6cf4f81b5ff43a05b199c3eb8c78059d03d9485
 183575 pass 7e08d17a4a535a7abfa58a0606ca1a0e7f5862ad 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 1e1da7a963007d03a4e0e9a9e0ff17990bb1608d 5415b2b2118bd78d8a04f276a8312f7f0cb1a466
 183576 fail 7e08d17a4a535a7abfa58a0606ca1a0e7f5862ad 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 1e1da7a963007d03a4e0e9a9e0ff17990bb1608d b6cf4f81b5ff43a05b199c3eb8c78059d03d9485
 183577 fail 7e08d17a4a535a7abfa58a0606ca1a0e7f5862ad 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 1e1da7a963007d03a4e0e9a9e0ff17990bb1608d f17e9d7459f4d4c6e078cbf15e7e0591c8b5f43e
 183578 pass 7e08d17a4a535a7abfa58a0606ca1a0e7f5862ad 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 1e1da7a963007d03a4e0e9a9e0ff17990bb1608d 5415b2b2118bd78d8a04f276a8312f7f0cb1a466
 183579 fail 7e08d17a4a535a7abfa58a0606ca1a0e7f5862ad 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 1e1da7a963007d03a4e0e9a9e0ff17990bb1608d f17e9d7459f4d4c6e078cbf15e7e0591c8b5f43e
 183580 pass 7e08d17a4a535a7abfa58a0606ca1a0e7f5862ad 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 1e1da7a963007d03a4e0e9a9e0ff17990bb1608d 5415b2b2118bd78d8a04f276a8312f7f0cb1a466
 183581 fail 7e08d17a4a535a7abfa58a0606ca1a0e7f5862ad 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 1e1da7a963007d03a4e0e9a9e0ff17990bb1608d f17e9d7459f4d4c6e078cbf15e7e0591c8b5f43e
Searching for interesting versions
 Result found: flight 183573 (pass), for basis pass
 For basis failure, parent search stopping at 7e08d17a4a535a7abfa58a0606ca1a0e7f5862ad 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 1e1da7a963007d03a4e0e9a9e0ff17990bb1608d 5415b2b2118bd78d8a04f276a8312f7f0cb1a466, results HASH(0x5561873387f0) HASH(0x556187342540) HASH(0x5561873475f8) HASH(0x55618734b188) Result found: flight 183574 (fail), for basis failure (at ancestor ~2236)
 Repro found: flight 183575 (pass), for basis pass
 Repro found: flight 183576 (fail), for basis failure
 0 revisions at 7e08d17a4a535a7abfa58a0606ca1a0e7f5862ad 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 1e1da7a963007d03a4e0e9a9e0ff17990bb1608d 5415b2b2118bd78d8a04f276a8312f7f0cb1a466
No revisions left to test, checking graph state.
 Result found: flight 183573 (pass), for last pass
 Result found: flight 183577 (fail), for first failure
 Repro found: flight 183578 (pass), for last pass
 Repro found: flight 183579 (fail), for first failure
 Repro found: flight 183580 (pass), for last pass
 Repro found: flight 183581 (fail), for first failure

*** Found and reproduced problem changeset ***

  Bug is in tree:  xen git://xenbits.xen.org/xen.git
  Bug introduced:  f17e9d7459f4d4c6e078cbf15e7e0591c8b5f43e
  Bug not present: 5415b2b2118bd78d8a04f276a8312f7f0cb1a466
  Last fail repro: http://logs.test-lab.xenproject.org/osstest/logs/183581/


  commit f17e9d7459f4d4c6e078cbf15e7e0591c8b5f43e
  Author: Julien Grall <julien@xen.org>
  Date:   Fri Oct 27 14:07:09 2023 +0100
  
      Config.mk: switch to named tags (for stable branch)
      
      Signed-off-by: Julien Grall <julien@xen.org>

Revision graph left in /home/logs/results/bisect/xen-4.18-testing/build-amd64-xsm.xen-build.{dot,ps,png,html,svg}.
----------------------------------------
183581: tolerable ALL FAIL

flight 183581 xen-4.18-testing real-bisect [real]
http://logs.test-lab.xenproject.org/osstest/logs/183581/

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 Sat Oct 28 19:38:42 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 28 Oct 2023 19:38:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624806.973490 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qwp8m-0001us-Gf; Sat, 28 Oct 2023 19:38:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624806.973490; Sat, 28 Oct 2023 19: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 1qwp8m-0001ul-Cx; Sat, 28 Oct 2023 19:38:36 +0000
Received: by outflank-mailman (input) for mailman id 624806;
 Sat, 28 Oct 2023 19:38: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=qvwV=GK=casper.srs.infradead.org=BATV+0ab4e39735c3f9797cfb+7370+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qwp8j-0001uf-JB
 for xen-devel@lists.xenproject.org; Sat, 28 Oct 2023 19:38:34 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 9185ae4b-75c9-11ee-9b0e-b553b5be7939;
 Sat, 28 Oct 2023 21:38:29 +0200 (CEST)
Received: from [2001:8b0:10b:5:b7dd:c749:f0d9:3970]
 (helo=u3832b3a9db3152.ant.amazon.com)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qwp8b-00BAlt-Fv; Sat, 28 Oct 2023 19: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>
X-Inumbo-ID: 9185ae4b-75c9-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=MIME-Version:Content-Type:References:
	In-Reply-To:Date:Cc:To:From:Subject:Message-ID:Sender:Reply-To:
	Content-Transfer-Encoding:Content-ID:Content-Description;
	bh=1PDA/OtA85Ip36tNy+1cXTACwGHLWbgWd/xDFr6FBmQ=; b=J5IdER/ru0QLmx39ORwESa9UYr
	4WUL5hsKnGdy0fUevUsZqmaBr8j1quXPfIEehA5WatE8/2suUQ+kPkllNpHdFQ+C5jY+jWEsEMmWa
	wSj6rUBOLAc3cYSd3cJfDheHIxNF26vnZOtedteOAKpFhEdmMOjDrEGAByMXiwhzsTBScN0+QWX7k
	iS2CScvSRC5YKUruY4eLVP74QXdN20+3WIvHrISJJgzc4B+oxKDiaNWSOVdv3XSD51MAFDsN8WKIc
	cxdhiN0pqUIlXhDoetNTf2qLaGgf8meq3mVO9ourdTGPtULU0yXw91rVs/cPUkPcI3rA6kHRJ0aAi
	W/kzng8w==;
Message-ID: <65edeb7df8ee2684b99bd06c8d3f694d6e3137ea.camel@infradead.org>
Subject: Re: Lockdep show 6.6-rc regression in Xen HVM CPU hotplug
From: David Woodhouse <dwmw2@infradead.org>
To: Juergen Gross <jgross@suse.com>, xen-devel
 <xen-devel@lists.xenproject.org>,  paulmck <paulmck@kernel.org>
Cc: Stefano Stabellini <sstabellini@kernel.org>, Oleksandr Tyshchenko
 <oleksandr_tyshchenko@epam.com>, Rahul Singh <rahul.singh@arm.com>, Boris
 Ostrovsky <boris.ostrovsky@oracle.com>, Thomas Gleixner <tglx@linutronix.de>
Date: Sat, 28 Oct 2023 20:38:25 +0100
In-Reply-To: <d4574364-4985-4ba1-8365-f4360860ad0d@suse.com>
References: <b28fff67f7501e4713af9b8c777f853cc44d6c6f.camel@infradead.org>
	 <c75a3d53-fc36-46a6-b781-f16e1e5c6226@suse.com>
	 <662772ec0d43cce9233680d67d7114bc8b0ed48d.camel@infradead.org>
	 <8e6c144f-f808-4603-8de4-76decc3c2838@suse.com>
	 <0a2725ee-a1a8-43e4-b117-f474ffb392a8@suse.com>
	 <f527753bab9fd48e3a3fdc060c33bba9e2a14324.camel@infradead.org>
	 <d4574364-4985-4ba1-8365-f4360860ad0d@suse.com>
Content-Type: multipart/signed; micalg="sha-256"; protocol="application/pkcs7-signature";
	boundary="=-30/EM9xMIkWGutPlel+h"
User-Agent: Evolution 3.44.4-0ubuntu2 
MIME-Version: 1.0
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html


--=-30/EM9xMIkWGutPlel+h
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Wed, 2023-10-25 at 09:19 +0200, Juergen Gross wrote:
> On 24.10.23 15:45, David Woodhouse wrote:
> > On Tue, 2023-10-24 at 14:08 +0200, Juergen Gross wrote:
> > >=20
> > > > I can probably change xen_send_IPI_one() to not need irq_get_chip_d=
ata().
> > >=20
> > > David, could you test the attached patch, please? Build tested only.
> >=20
> > No longer whines when offlining CPU1.
> >=20
> > Still triple-faults when bringing it back online. Or if I remove the
> > lockdep_assert_irqs_disabled() from load_current_idt(), gives the same
> > warnings as before, all on the same theme about IRQs being enabled when
> > they shouldn't be.
>=20
> I think this is a false positive. No idea (again) why it would trigger on=
ly
> with my patch applied.
>=20
> The problem seems to be that lockdep_assert_irqs_disabled() doesn't know
> about the "cli" at the very beginning of trampoline_start().

FWIW this is fixed by
https://lore.kernel.org/lkml/a079bba5a0e47d6534b307553fc3772d26ce911b.camel=
@infradead.org/

And would be a whole lot easier to debug if something like this happens
again, after
https://lore.kernel.org/lkml/635fa006e8f3816b4a36b964d6281f0d8efa789b.camel=
@infradead.org/

--=-30/EM9xMIkWGutPlel+h
Content-Type: application/pkcs7-signature; name="smime.p7s"
Content-Disposition: attachment; filename="smime.p7s"
Content-Transfer-Encoding: base64

MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgEFADCABgkqhkiG9w0BBwEAAKCCEkQw
ggYQMIID+KADAgECAhBNlCwQ1DvglAnFgS06KwZPMA0GCSqGSIb3DQEBDAUAMIGIMQswCQYDVQQG
EwJVUzETMBEGA1UECBMKTmV3IEplcnNleTEUMBIGA1UEBxMLSmVyc2V5IENpdHkxHjAcBgNVBAoT
FVRoZSBVU0VSVFJVU1QgTmV0d29yazEuMCwGA1UEAxMlVVNFUlRydXN0IFJTQSBDZXJ0aWZpY2F0
aW9uIEF1dGhvcml0eTAeFw0xODExMDIwMDAwMDBaFw0zMDEyMzEyMzU5NTlaMIGWMQswCQYDVQQG
EwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYD
VQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50
aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC
AQEAyjztlApB/975Rrno1jvm2pK/KxBOqhq8gr2+JhwpKirSzZxQgT9tlC7zl6hn1fXjSo5MqXUf
ItMltrMaXqcESJuK8dtK56NCSrq4iDKaKq9NxOXFmqXX2zN8HHGjQ2b2Xv0v1L5Nk1MQPKA19xeW
QcpGEGFUUd0kN+oHox+L9aV1rjfNiCj3bJk6kJaOPabPi2503nn/ITX5e8WfPnGw4VuZ79Khj1YB
rf24k5Ee1sLTHsLtpiK9OjG4iQRBdq6Z/TlVx/hGAez5h36bBJMxqdHLpdwIUkTqT8se3ed0PewD
ch/8kHPo5fZl5u1B0ecpq/sDN/5sCG52Ds+QU5O5EwIDAQABo4IBZDCCAWAwHwYDVR0jBBgwFoAU
U3m/WqorSs9UgOHYm8Cd8rIDZsswHQYDVR0OBBYEFAnA8vwL2pTbX/4r36iZQs/J4K0AMA4GA1Ud
DwEB/wQEAwIBhjASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEF
BQcDBDARBgNVHSAECjAIMAYGBFUdIAAwUAYDVR0fBEkwRzBFoEOgQYY/aHR0cDovL2NybC51c2Vy
dHJ1c3QuY29tL1VTRVJUcnVzdFJTQUNlcnRpZmljYXRpb25BdXRob3JpdHkuY3JsMHYGCCsGAQUF
BwEBBGowaDA/BggrBgEFBQcwAoYzaHR0cDovL2NydC51c2VydHJ1c3QuY29tL1VTRVJUcnVzdFJT
QUFkZFRydXN0Q0EuY3J0MCUGCCsGAQUFBzABhhlodHRwOi8vb2NzcC51c2VydHJ1c3QuY29tMA0G
CSqGSIb3DQEBDAUAA4ICAQBBRHUAqznCFfXejpVtMnFojADdF9d6HBA4kMjjsb0XMZHztuOCtKF+
xswhh2GqkW5JQrM8zVlU+A2VP72Ky2nlRA1GwmIPgou74TZ/XTarHG8zdMSgaDrkVYzz1g3nIVO9
IHk96VwsacIvBF8JfqIs+8aWH2PfSUrNxP6Ys7U0sZYx4rXD6+cqFq/ZW5BUfClN/rhk2ddQXyn7
kkmka2RQb9d90nmNHdgKrwfQ49mQ2hWQNDkJJIXwKjYA6VUR/fZUFeCUisdDe/0ABLTI+jheXUV1
eoYV7lNwNBKpeHdNuO6Aacb533JlfeUHxvBz9OfYWUiXu09sMAviM11Q0DuMZ5760CdO2VnpsXP4
KxaYIhvqPqUMWqRdWyn7crItNkZeroXaecG03i3mM7dkiPaCkgocBg0EBYsbZDZ8bsG3a08LwEsL
1Ygz3SBsyECa0waq4hOf/Z85F2w2ZpXfP+w8q4ifwO90SGZZV+HR/Jh6rEaVPDRF/CEGVqR1hiuQ
OZ1YL5ezMTX0ZSLwrymUE0pwi/KDaiYB15uswgeIAcA6JzPFf9pLkAFFWs1QNyN++niFhsM47qod
x/PL+5jR87myx5uYdBEQkkDc+lKB1Wct6ucXqm2EmsaQ0M95QjTmy+rDWjkDYdw3Ms6mSWE3Bn7i
5ZgtwCLXgAIe5W8mybM2JzCCBhQwggT8oAMCAQICEQDGvhmWZ0DEAx0oURL6O6l+MA0GCSqGSIb3
DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYD
VQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28g
UlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMB4XDTIyMDEwNzAw
MDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJARYTZHdtdzJAaW5mcmFkZWFkLm9y
ZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3GpC2bomUqk+91wLYBzDMcCj5C9m6
oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZHh7htyAkWYVoFsFPrwHounto8xTsy
SSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT9YgcBqKCo65pTFmOnR/VVbjJk4K2
xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNjP+qDrh0db7PAjO1D4d5ftfrsf+kd
RR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy2U+eITZ5LLE5s45mX2oPFknWqxBo
bQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3BgBEmfsYWlBXO8rVXfvPgLs32VdV
NZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/7auNVRmPB3v5SWEsH8xi4Bez2V9U
KxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmdlFYhAflWKQ03Ufiu8t3iBE3VJbc2
5oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9aelIl6vtbhMA+l0nfrsORMa4kobqQ5
C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMBAAGjggHMMIIByDAfBgNVHSMEGDAW
gBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeDMcimo0oz8o1R1Nver3ZVpSkwDgYD
VR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYwFAYIKwYBBQUHAwQGCCsGAQUFBwMC
MEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYBBQUHAgEWF2h0dHBzOi8vc2VjdGln
by5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9jcmwuc2VjdGlnby5jb20vU2VjdGln
b1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1haWxDQS5jcmwwgYoGCCsGAQUFBwEB
BH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdvLmNvbS9TZWN0aWdvUlNBQ2xpZW50
QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAjBggrBgEFBQcwAYYXaHR0cDovL29j
c3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5mcmFkZWFkLm9yZzANBgkqhkiG9w0B
AQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQvQ/fzPXmtR9t54rpmI2TfyvcKgOXp
qa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvIlSPrzIB4Z2wyIGQpaPLlYflrrVFK
v9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9ChWFfgSXvrWDZspnU3Gjw/rMHrGnql
Htlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0whpBtXdyDjzBtQTaZJ7zTT/vlehc/
tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9IzCCBhQwggT8oAMCAQICEQDGvhmW
Z0DEAx0oURL6O6l+MA0GCSqGSIb3DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3Jl
YXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0
ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJl
IEVtYWlsIENBMB4XDTIyMDEwNzAwMDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJ
ARYTZHdtdzJAaW5mcmFkZWFkLm9yZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3
GpC2bomUqk+91wLYBzDMcCj5C9m6oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZH
h7htyAkWYVoFsFPrwHounto8xTsySSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT
9YgcBqKCo65pTFmOnR/VVbjJk4K2xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNj
P+qDrh0db7PAjO1D4d5ftfrsf+kdRR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy
2U+eITZ5LLE5s45mX2oPFknWqxBobQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3
BgBEmfsYWlBXO8rVXfvPgLs32VdVNZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/
7auNVRmPB3v5SWEsH8xi4Bez2V9UKxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmd
lFYhAflWKQ03Ufiu8t3iBE3VJbc25oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9ae
lIl6vtbhMA+l0nfrsORMa4kobqQ5C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMB
AAGjggHMMIIByDAfBgNVHSMEGDAWgBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeD
Mcimo0oz8o1R1Nver3ZVpSkwDgYDVR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYw
FAYIKwYBBQUHAwQGCCsGAQUFBwMCMEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYB
BQUHAgEWF2h0dHBzOi8vc2VjdGlnby5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9j
cmwuc2VjdGlnby5jb20vU2VjdGlnb1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1h
aWxDQS5jcmwwgYoGCCsGAQUFBwEBBH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdv
LmNvbS9TZWN0aWdvUlNBQ2xpZW50QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAj
BggrBgEFBQcwAYYXaHR0cDovL29jc3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5m
cmFkZWFkLm9yZzANBgkqhkiG9w0BAQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQv
Q/fzPXmtR9t54rpmI2TfyvcKgOXpqa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvI
lSPrzIB4Z2wyIGQpaPLlYflrrVFKv9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9Ch
WFfgSXvrWDZspnU3Gjw/rMHrGnqlHtlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0w
hpBtXdyDjzBtQTaZJ7zTT/vlehc/tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9
IzGCBMcwggTDAgEBMIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVz
dGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMT
NVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEA
xr4ZlmdAxAMdKFES+jupfjANBglghkgBZQMEAgEFAKCCAeswGAYJKoZIhvcNAQkDMQsGCSqGSIb3
DQEHATAcBgkqhkiG9w0BCQUxDxcNMjMxMDI4MTkzODI1WjAvBgkqhkiG9w0BCQQxIgQgvcCHCUZ4
BZ8a8TOsMllK/NVlxop1Ny4i1SI22BfZRZ4wgb0GCSsGAQQBgjcQBDGBrzCBrDCBljELMAkGA1UE
BhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEYMBYG
A1UEChMPU2VjdGlnbyBMaW1pdGVkMT4wPAYDVQQDEzVTZWN0aWdvIFJTQSBDbGllbnQgQXV0aGVu
dGljYXRpb24gYW5kIFNlY3VyZSBFbWFpbCBDQQIRAMa+GZZnQMQDHShREvo7qX4wgb8GCyqGSIb3
DQEJEAILMYGvoIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVy
MRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNl
Y3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEAxr4Z
lmdAxAMdKFES+jupfjANBgkqhkiG9w0BAQEFAASCAgApBSVPwmvpuEjDZJg2DTJnxP40KK67OUQ9
RU8VCKQhsG4nfzkoLlsUycMTBTDgUubNapjISI8AChOQS+5tVpNMzwwPf63OXZ35lblSsWzmyfcG
1oQFsz77a8r2kOCva+NODLj0MUOkgZcyEUy9Hju63c9uMEe9D+ZSop7Oe9C6sKpPY+4eBoQ0uTP3
YVs61IAZryN53v4pnwxszxiwgppJgqFtIXh2tvYCHSiCOYyerk+NAVGJXtuDk59A29uJVJ9bGqXV
Cn/Mh/XONlkYlwJRixeMDNwfatRFw9UTC+ZGMpROMeG5CbYz+NoMwckdM4qbgu/qRQzAoap7Y1yb
6POD8xGh+NCtRXKO7HPLJx1evhwf0/jaDiy32qOCjs/d3I7boKUKa+25UITXO6QrAwvwm9fNIEY5
sHGKJgCrFzxKoh+iTnq6eBKvTA32WyLQ3wcntGD2KkAYOINDsNSXqONTmN8A0B1l3cRM22S+ES/5
wbUJqWlgJNhFTM0FxRjsmn6jW2gcjNd7y4VsXFpzOAzesL1XqQNrEfuLZNclLmClU10Yvh4uKcsw
SPYFPQYzNeXcL8bmweHRkCbLy9T8Hb6kuOp/FM/8/PvIqwP2nDM0Vp56FOIAQ2D1Zt5WM1AwDUFT
ytevSV2xQ4y6upnjtGXb27ORLHdYNpQKvE0Wciq2WgAAAAAAAA==


--=-30/EM9xMIkWGutPlel+h--


From xen-devel-bounces@lists.xenproject.org Sat Oct 28 20:58:11 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 28 Oct 2023 20:58:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624819.973525 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qwqNS-0002EB-0h; Sat, 28 Oct 2023 20:57:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624819.973525; Sat, 28 Oct 2023 20:57: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 1qwqNR-0002E4-R6; Sat, 28 Oct 2023 20:57:49 +0000
Received: by outflank-mailman (input) for mailman id 624819;
 Sat, 28 Oct 2023 20:57: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 1qwqNQ-0002Du-F7; Sat, 28 Oct 2023 20:57: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 1qwqNQ-0002GO-80; Sat, 28 Oct 2023 20:57: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 1qwqNP-0002WQ-VS; Sat, 28 Oct 2023 20:57:48 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qwqNP-0007vx-V0; Sat, 28 Oct 2023 20:57: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=3h+0ctvyqPfOZOiDeUXGdrlkcGdINX8iOLftVV6yaE4=; b=WGmjLz42jp2WvdWaaA4uNFRnsn
	J9yscBfZJ/rCNjr8nsLxgb/Psly6Br/u2OKYk+/riXZaAEcyvO+pbVGgaOpAh8J2VclWEQ1lV8uI9
	Q+m1aIQyIR6alPnWgpd9tDB3kPZ0o4MYOCPfJfRUqpuwd/3hy/sc74KzCkhO9Wzvt+uM=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183566-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 183566: tolerable FAIL
X-Osstest-Failures:
    xen-unstable:test-amd64-amd64-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-qemut-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-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-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop: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: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-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1: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-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-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-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-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: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-amd64-i386-libvirt-raw: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-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-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=5415b2b2118bd78d8a04f276a8312f7f0cb1a466
X-Osstest-Versions-That:
    xen=5415b2b2118bd78d8a04f276a8312f7f0cb1a466
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 28 Oct 2023 20:57:47 +0000

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

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 183534
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183547
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183547
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183547
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183547
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 183547
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 183547
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183547
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183547
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183547
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 183547
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 183547
 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      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-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-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-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-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-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-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     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-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-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-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-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 xen                  5415b2b2118bd78d8a04f276a8312f7f0cb1a466
baseline version:
 xen                  5415b2b2118bd78d8a04f276a8312f7f0cb1a466

Last test of basis   183566  2023-10-28 01:53:51 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 Sat Oct 28 20:58:45 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 28 Oct 2023 20:58:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624826.973540 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qwqOL-0002nd-DP; Sat, 28 Oct 2023 20:58:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624826.973540; Sat, 28 Oct 2023 20:58: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 1qwqOL-0002nW-9J; Sat, 28 Oct 2023 20:58:45 +0000
Received: by outflank-mailman (input) for mailman id 624826;
 Sat, 28 Oct 2023 20:58: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 1qwqOK-0002nM-AY; Sat, 28 Oct 2023 20:58: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 1qwqOK-0002HD-0S; Sat, 28 Oct 2023 20:58: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 1qwqOJ-0002YL-Ob; Sat, 28 Oct 2023 20:58:43 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qwqOJ-0008Oh-O7; Sat, 28 Oct 2023 20:58: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=PHywyW6Hd8FUIylmhalIGnrZA0P12BblLZafCB8w294=; b=QPFoHLmRFQ9VPvh80Mb2/guCR/
	5zJtnbAZXTVX3SBS1lJ8p0ih6P4QisCSsHVr753qG2iQ+KwnoI+5qKnA0T0WkGdSeTgchHT/4Ewce
	9B+eIW70wKhFQhqTPruavLZ4WsPB15S3Wzt84HsIatv+viJBmtlhIzuxvVWe0puVx2LY=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183582-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 183582: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=4f3ee7fbafc8e83c20f273f4db6c24fe240f6a94
X-Osstest-Versions-That:
    ovmf=7806713f00e92b37799ef920daae3ebf14c5b07f
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 28 Oct 2023 20:58:43 +0000

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

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 4f3ee7fbafc8e83c20f273f4db6c24fe240f6a94
baseline version:
 ovmf                 7806713f00e92b37799ef920daae3ebf14c5b07f

Last test of basis   183571  2023-10-28 15:12:46 Z    0 days
Testing same since   183582  2023-10-28 19:11:00 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Gary Lin <glin@suse.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
   7806713f00..4f3ee7fbaf  4f3ee7fbafc8e83c20f273f4db6c24fe240f6a94 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Sat Oct 28 21:46:10 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 28 Oct 2023 21:46:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624840.973567 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qwr83-0008SB-QV; Sat, 28 Oct 2023 21:45:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624840.973567; Sat, 28 Oct 2023 21:45: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 1qwr83-0008S4-Np; Sat, 28 Oct 2023 21:45:59 +0000
Received: by outflank-mailman (input) for mailman id 624840;
 Sat, 28 Oct 2023 21:45: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 1qwr82-0008Ru-H5; Sat, 28 Oct 2023 21:45: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 1qwr82-0003R6-9P; Sat, 28 Oct 2023 21:45: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 1qwr82-0003iv-23; Sat, 28 Oct 2023 21:45:58 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qwr82-0004e7-1d; Sat, 28 Oct 2023 21: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>
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=bzE7hmZxlOr+xAYuB/YwALG7ZfqQfm7gg+fWXn30uh4=; b=g6BpvuGkGyYjW35tSaCTstbq0s
	1/sgoxM1wUqOsPPPq6lCoWBi+6FO8ahkK+rCTW8xTGGEIkCZlW0oOckfUo/J+2Mu6uww1/drbqdPS
	c6ytLhPZnobdO8z/mKK8wZFP06hTsS2zCU+Fr/PQN1OpfRCTDBP6785sd748XVXLm4ZE=;
To: xen-devel@lists.xenproject.org
Subject: [xen-4.18-testing bisection] complete build-i386-xsm
Message-Id: <E1qwr82-0004e7-1d@osstest.test-lab.xenproject.org>
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 28 Oct 2023 21:45:58 +0000

branch xen-4.18-testing
xenbranch xen-4.18-testing
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 git://xenbits.xen.org/qemu-xen.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:  f17e9d7459f4d4c6e078cbf15e7e0591c8b5f43e
  Bug not present: 5415b2b2118bd78d8a04f276a8312f7f0cb1a466
  Last fail repro: http://logs.test-lab.xenproject.org/osstest/logs/183591/


  commit f17e9d7459f4d4c6e078cbf15e7e0591c8b5f43e
  Author: Julien Grall <julien@xen.org>
  Date:   Fri Oct 27 14:07:09 2023 +0100
  
      Config.mk: switch to named tags (for stable branch)
      
      Signed-off-by: Julien Grall <julien@xen.org>


For bisection revision-tuple graph see:
   http://logs.test-lab.xenproject.org/osstest/results/bisect/xen-4.18-testing/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/xen-4.18-testing/build-i386-xsm.xen-build --summary-out=tmp/183591.bisection-summary --basis-template=183555 --blessings=real,real-bisect,real-retry xen-4.18-testing build-i386-xsm xen-build
Searching for failure / basis pass:
 183564 fail [host=huxelrebe1] / 183555 [host=pinot1] template as basis? using template as basis.
Failure / basis pass flights: 183564 / 183555
(tree in basispass but not in latest: minios)
Tree: ovmf git://xenbits.xen.org/osstest/ovmf.git
Tree: qemu git://xenbits.xen.org/qemu-xen-traditional.git
Tree: qemuu git://xenbits.xen.org/qemu-xen.git
Tree: seabios git://xenbits.xen.org/osstest/seabios.git
Tree: xen git://xenbits.xen.org/xen.git
Latest 7e08d17a4a535a7abfa58a0606ca1a0e7f5862ad 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 1e1da7a963007d03a4e0e9a9e0ff17990bb1608d b6cf4f81b5ff43a05b199c3eb8c78059d03d9485
Basis pass 7e08d17a4a535a7abfa58a0606ca1a0e7f5862ad 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 1e1da7a963007d03a4e0e9a9e0ff17990bb1608d 5415b2b2118bd78d8a04f276a8312f7f0cb1a466
Generating revisions with ./adhoc-revtuple-generator  git://xenbits.xen.org/osstest/ovmf.git#7e08d17a4a535a7abfa58a0606ca1a0e7f5862ad-7e08d17a4a535a7abfa58a0606ca1a0e7f5862ad git://xenbits.xen.org/qemu-xen-traditional.git#3d273dd05e51e5a1ffba3d98c7437ee84e8f8764-3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 git://xenbits.xen.org/qemu-xen.git#0df9387c8983e1b1e72d8c574356f572342c03e6-0df9387c8983e1b1e72d8c574356f572342c03e6 git://xenbits.xen.org/osstest/seabios.git#1e1da7a963007d03a4e0e9a9e0ff17990bb16\
 08d-1e1da7a963007d03a4e0e9a9e0ff17990bb1608d git://xenbits.xen.org/xen.git#5415b2b2118bd78d8a04f276a8312f7f0cb1a466-b6cf4f81b5ff43a05b199c3eb8c78059d03d9485
Loaded 5001 nodes in revision graph
Searching for test results:
 183555 [host=pinot1]
 183564 fail 7e08d17a4a535a7abfa58a0606ca1a0e7f5862ad 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 1e1da7a963007d03a4e0e9a9e0ff17990bb1608d b6cf4f81b5ff43a05b199c3eb8c78059d03d9485
 183583 pass 7e08d17a4a535a7abfa58a0606ca1a0e7f5862ad 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 1e1da7a963007d03a4e0e9a9e0ff17990bb1608d 5415b2b2118bd78d8a04f276a8312f7f0cb1a466
 183584 fail 7e08d17a4a535a7abfa58a0606ca1a0e7f5862ad 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 1e1da7a963007d03a4e0e9a9e0ff17990bb1608d b6cf4f81b5ff43a05b199c3eb8c78059d03d9485
 183585 pass 7e08d17a4a535a7abfa58a0606ca1a0e7f5862ad 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 1e1da7a963007d03a4e0e9a9e0ff17990bb1608d 5415b2b2118bd78d8a04f276a8312f7f0cb1a466
 183586 fail 7e08d17a4a535a7abfa58a0606ca1a0e7f5862ad 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 1e1da7a963007d03a4e0e9a9e0ff17990bb1608d b6cf4f81b5ff43a05b199c3eb8c78059d03d9485
 183587 fail 7e08d17a4a535a7abfa58a0606ca1a0e7f5862ad 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 1e1da7a963007d03a4e0e9a9e0ff17990bb1608d f17e9d7459f4d4c6e078cbf15e7e0591c8b5f43e
 183588 pass 7e08d17a4a535a7abfa58a0606ca1a0e7f5862ad 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 1e1da7a963007d03a4e0e9a9e0ff17990bb1608d 5415b2b2118bd78d8a04f276a8312f7f0cb1a466
 183589 fail 7e08d17a4a535a7abfa58a0606ca1a0e7f5862ad 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 1e1da7a963007d03a4e0e9a9e0ff17990bb1608d f17e9d7459f4d4c6e078cbf15e7e0591c8b5f43e
 183590 pass 7e08d17a4a535a7abfa58a0606ca1a0e7f5862ad 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 1e1da7a963007d03a4e0e9a9e0ff17990bb1608d 5415b2b2118bd78d8a04f276a8312f7f0cb1a466
 183591 fail 7e08d17a4a535a7abfa58a0606ca1a0e7f5862ad 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 1e1da7a963007d03a4e0e9a9e0ff17990bb1608d f17e9d7459f4d4c6e078cbf15e7e0591c8b5f43e
Searching for interesting versions
 Result found: flight 183583 (pass), for basis pass
 For basis failure, parent search stopping at 7e08d17a4a535a7abfa58a0606ca1a0e7f5862ad 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 1e1da7a963007d03a4e0e9a9e0ff17990bb1608d 5415b2b2118bd78d8a04f276a8312f7f0cb1a466, results HASH(0x56042d4d0f10) HASH(0x56042d4d4c20) HASH(0x56042d4d9cd8) HASH(0x56042d4dd868) Result found: flight 183584 (fail), for basis failure (at ancestor ~2236)
 Repro found: flight 183585 (pass), for basis pass
 Repro found: flight 183586 (fail), for basis failure
 0 revisions at 7e08d17a4a535a7abfa58a0606ca1a0e7f5862ad 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 1e1da7a963007d03a4e0e9a9e0ff17990bb1608d 5415b2b2118bd78d8a04f276a8312f7f0cb1a466
No revisions left to test, checking graph state.
 Result found: flight 183583 (pass), for last pass
 Result found: flight 183587 (fail), for first failure
 Repro found: flight 183588 (pass), for last pass
 Repro found: flight 183589 (fail), for first failure
 Repro found: flight 183590 (pass), for last pass
 Repro found: flight 183591 (fail), for first failure

*** Found and reproduced problem changeset ***

  Bug is in tree:  xen git://xenbits.xen.org/xen.git
  Bug introduced:  f17e9d7459f4d4c6e078cbf15e7e0591c8b5f43e
  Bug not present: 5415b2b2118bd78d8a04f276a8312f7f0cb1a466
  Last fail repro: http://logs.test-lab.xenproject.org/osstest/logs/183591/


  commit f17e9d7459f4d4c6e078cbf15e7e0591c8b5f43e
  Author: Julien Grall <julien@xen.org>
  Date:   Fri Oct 27 14:07:09 2023 +0100
  
      Config.mk: switch to named tags (for stable branch)
      
      Signed-off-by: Julien Grall <julien@xen.org>

Revision graph left in /home/logs/results/bisect/xen-4.18-testing/build-i386-xsm.xen-build.{dot,ps,png,html,svg}.
----------------------------------------
183591: tolerable ALL FAIL

flight 183591 xen-4.18-testing real-bisect [real]
http://logs.test-lab.xenproject.org/osstest/logs/183591/

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 Sat Oct 28 22:41:29 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 28 Oct 2023 22:41:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624853.973599 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qwrzX-0006hv-0v; Sat, 28 Oct 2023 22:41:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624853.973599; Sat, 28 Oct 2023 22:41: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 1qwrzW-0006ho-UI; Sat, 28 Oct 2023 22:41:14 +0000
Received: by outflank-mailman (input) for mailman id 624853;
 Sat, 28 Oct 2023 22:41: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 1qwrzV-0006hd-Nk; Sat, 28 Oct 2023 22:41: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 1qwrzV-0004mE-F3; Sat, 28 Oct 2023 22:41: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 1qwrzV-000550-4k; Sat, 28 Oct 2023 22:41:13 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qwrzV-0005iU-48; Sat, 28 Oct 2023 22:41: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=x4vhAjNt33cNMWIzmVAqC4+KrFjVS5xJc7BFP+WYQHY=; b=zaaU0y7EWqbgmDSrxQva6rhU2J
	Wg/RVZuhpmalilsxv4iCY57dKKAZRAr35+rjZDvLQtEjeGIe/ZtnbrTBaWuI1upk5BlccPf/XLWWL
	XAdSX/sCRpwGsYeQdFfj3CSCJ+xAeZ+344lF3G4AzUaqixM+oxlulu+2HIuQTRd7VzFA=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183567-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [libvirt test] 183567: tolerable all pass - PUSHED
X-Osstest-Failures:
    libvirt:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt:saverestore-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:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt-xsm: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-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-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
    libvirt:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    libvirt=9ca910488cf43ffeb18116c76afd278d3d3cada4
X-Osstest-Versions-That:
    libvirt=4bdadede245b90ec1d9abfc659e07b247bc8b2ba
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 28 Oct 2023 22:41:13 +0000

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

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183535
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183535
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183535
 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-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-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-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
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass

version targeted for testing:
 libvirt              9ca910488cf43ffeb18116c76afd278d3d3cada4
baseline version:
 libvirt              4bdadede245b90ec1d9abfc659e07b247bc8b2ba

Last test of basis   183535  2023-10-26 04:20:25 Z    2 days
Failing since        183549  2023-10-27 04:20:39 Z    1 days    2 attempts
Testing same since   183567  2023-10-28 04:22:26 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrea Bolognani <abologna@redhat.com>
  Jiri Denemark <jdenemar@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
   4bdadede24..9ca910488c  9ca910488cf43ffeb18116c76afd278d3d3cada4 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Sun Oct 29 00:07:48 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 29 Oct 2023 00:07:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624869.973640 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qwtL1-0007xt-0n; Sun, 29 Oct 2023 00:07:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624869.973640; Sun, 29 Oct 2023 00:07: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 1qwtL0-0007xm-Si; Sun, 29 Oct 2023 00:07:30 +0000
Received: by outflank-mailman (input) for mailman id 624869;
 Sun, 29 Oct 2023 00:07: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 1qwtKz-0007xc-ED; Sun, 29 Oct 2023 00:07: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 1qwtKz-0007UU-5Q; Sun, 29 Oct 2023 00:07: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 1qwtKy-00085d-TY; Sun, 29 Oct 2023 00:07:28 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qwtKy-0003tL-T0; Sun, 29 Oct 2023 00:07: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:Message-Id:Subject:To;
	bh=GmPZj53wMTNU0mtJpOfbtDpFYsd6Mf+ECDFEosmvDO4=; b=BoqDD+WXAGCNC+ppUdhadu0ozb
	K9IDA/nye9Okx8SnEsXQtgICiA+B35MV+ttsgSDPLXpDGq5khS7O9Ai1nwvigZw8kStSr4luLLdtG
	ndnFDdIiqe0Y42TQgQO5z83rQiDsnxA81i3zkUgbyPsm96UNEChEyfgtWF+JCyJhxBL0=;
To: xen-devel@lists.xenproject.org
Subject: [xen-4.18-testing bisection] complete build-amd64
Message-Id: <E1qwtKy-0003tL-T0@osstest.test-lab.xenproject.org>
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sun, 29 Oct 2023 00:07:28 +0000

branch xen-4.18-testing
xenbranch xen-4.18-testing
job build-amd64
testid xen-build

Tree: ovmf git://xenbits.xen.org/osstest/ovmf.git
Tree: qemuu git://xenbits.xen.org/qemu-xen.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:  f17e9d7459f4d4c6e078cbf15e7e0591c8b5f43e
  Bug not present: 5415b2b2118bd78d8a04f276a8312f7f0cb1a466
  Last fail repro: http://logs.test-lab.xenproject.org/osstest/logs/183601/


  commit f17e9d7459f4d4c6e078cbf15e7e0591c8b5f43e
  Author: Julien Grall <julien@xen.org>
  Date:   Fri Oct 27 14:07:09 2023 +0100
  
      Config.mk: switch to named tags (for stable branch)
      
      Signed-off-by: Julien Grall <julien@xen.org>


For bisection revision-tuple graph see:
   http://logs.test-lab.xenproject.org/osstest/results/bisect/xen-4.18-testing/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-4.18-testing/build-amd64.xen-build --summary-out=tmp/183601.bisection-summary --basis-template=183555 --blessings=real,real-bisect,real-retry xen-4.18-testing build-amd64 xen-build
Searching for failure / basis pass:
 183564 fail [host=himrod2] / 183555 [host=fiano0] template as basis? using template as basis.
Failure / basis pass flights: 183564 / 183555
(tree in basispass but not in latest: minios)
(tree in basispass but not in latest: qemu)
Tree: ovmf git://xenbits.xen.org/osstest/ovmf.git
Tree: qemuu git://xenbits.xen.org/qemu-xen.git
Tree: seabios git://xenbits.xen.org/osstest/seabios.git
Tree: xen git://xenbits.xen.org/xen.git
Latest 7e08d17a4a535a7abfa58a0606ca1a0e7f5862ad 0df9387c8983e1b1e72d8c574356f572342c03e6 1e1da7a963007d03a4e0e9a9e0ff17990bb1608d b6cf4f81b5ff43a05b199c3eb8c78059d03d9485
Basis pass 7e08d17a4a535a7abfa58a0606ca1a0e7f5862ad 0df9387c8983e1b1e72d8c574356f572342c03e6 1e1da7a963007d03a4e0e9a9e0ff17990bb1608d 5415b2b2118bd78d8a04f276a8312f7f0cb1a466
Generating revisions with ./adhoc-revtuple-generator  git://xenbits.xen.org/osstest/ovmf.git#7e08d17a4a535a7abfa58a0606ca1a0e7f5862ad-7e08d17a4a535a7abfa58a0606ca1a0e7f5862ad git://xenbits.xen.org/qemu-xen.git#0df9387c8983e1b1e72d8c574356f572342c03e6-0df9387c8983e1b1e72d8c574356f572342c03e6 git://xenbits.xen.org/osstest/seabios.git#1e1da7a963007d03a4e0e9a9e0ff17990bb1608d-1e1da7a963007d03a4e0e9a9e0ff17990bb1608d git://xenbits.xen.org/xen.git#5415b2b2118bd78d8a04f276a8312f7f0cb1a466-b6cf4f81b5ff4\
 3a05b199c3eb8c78059d03d9485
Loaded 5001 nodes in revision graph
Searching for test results:
 183555 [host=fiano0]
 183564 fail 7e08d17a4a535a7abfa58a0606ca1a0e7f5862ad 0df9387c8983e1b1e72d8c574356f572342c03e6 1e1da7a963007d03a4e0e9a9e0ff17990bb1608d b6cf4f81b5ff43a05b199c3eb8c78059d03d9485
 183592 pass 7e08d17a4a535a7abfa58a0606ca1a0e7f5862ad 0df9387c8983e1b1e72d8c574356f572342c03e6 1e1da7a963007d03a4e0e9a9e0ff17990bb1608d 5415b2b2118bd78d8a04f276a8312f7f0cb1a466
 183593 fail 7e08d17a4a535a7abfa58a0606ca1a0e7f5862ad 0df9387c8983e1b1e72d8c574356f572342c03e6 1e1da7a963007d03a4e0e9a9e0ff17990bb1608d b6cf4f81b5ff43a05b199c3eb8c78059d03d9485
 183594 pass 7e08d17a4a535a7abfa58a0606ca1a0e7f5862ad 0df9387c8983e1b1e72d8c574356f572342c03e6 1e1da7a963007d03a4e0e9a9e0ff17990bb1608d 5415b2b2118bd78d8a04f276a8312f7f0cb1a466
 183596 fail 7e08d17a4a535a7abfa58a0606ca1a0e7f5862ad 0df9387c8983e1b1e72d8c574356f572342c03e6 1e1da7a963007d03a4e0e9a9e0ff17990bb1608d b6cf4f81b5ff43a05b199c3eb8c78059d03d9485
 183597 fail 7e08d17a4a535a7abfa58a0606ca1a0e7f5862ad 0df9387c8983e1b1e72d8c574356f572342c03e6 1e1da7a963007d03a4e0e9a9e0ff17990bb1608d f17e9d7459f4d4c6e078cbf15e7e0591c8b5f43e
 183598 pass 7e08d17a4a535a7abfa58a0606ca1a0e7f5862ad 0df9387c8983e1b1e72d8c574356f572342c03e6 1e1da7a963007d03a4e0e9a9e0ff17990bb1608d 5415b2b2118bd78d8a04f276a8312f7f0cb1a466
 183599 fail 7e08d17a4a535a7abfa58a0606ca1a0e7f5862ad 0df9387c8983e1b1e72d8c574356f572342c03e6 1e1da7a963007d03a4e0e9a9e0ff17990bb1608d f17e9d7459f4d4c6e078cbf15e7e0591c8b5f43e
 183600 pass 7e08d17a4a535a7abfa58a0606ca1a0e7f5862ad 0df9387c8983e1b1e72d8c574356f572342c03e6 1e1da7a963007d03a4e0e9a9e0ff17990bb1608d 5415b2b2118bd78d8a04f276a8312f7f0cb1a466
 183601 fail 7e08d17a4a535a7abfa58a0606ca1a0e7f5862ad 0df9387c8983e1b1e72d8c574356f572342c03e6 1e1da7a963007d03a4e0e9a9e0ff17990bb1608d f17e9d7459f4d4c6e078cbf15e7e0591c8b5f43e
Searching for interesting versions
 Result found: flight 183592 (pass), for basis pass
 For basis failure, parent search stopping at 7e08d17a4a535a7abfa58a0606ca1a0e7f5862ad 0df9387c8983e1b1e72d8c574356f572342c03e6 1e1da7a963007d03a4e0e9a9e0ff17990bb1608d 5415b2b2118bd78d8a04f276a8312f7f0cb1a466, results HASH(0x55982f7c9f30) HASH(0x55982f7cdf40) HASH(0x55982f7c8e88) HASH(0x55982f7d6888) Result found: flight 183593 (fail), for basis failure (at ancestor ~2236)
 Repro found: flight 183594 (pass), for basis pass
 Repro found: flight 183596 (fail), for basis failure
 0 revisions at 7e08d17a4a535a7abfa58a0606ca1a0e7f5862ad 0df9387c8983e1b1e72d8c574356f572342c03e6 1e1da7a963007d03a4e0e9a9e0ff17990bb1608d 5415b2b2118bd78d8a04f276a8312f7f0cb1a466
No revisions left to test, checking graph state.
 Result found: flight 183592 (pass), for last pass
 Result found: flight 183597 (fail), for first failure
 Repro found: flight 183598 (pass), for last pass
 Repro found: flight 183599 (fail), for first failure
 Repro found: flight 183600 (pass), for last pass
 Repro found: flight 183601 (fail), for first failure

*** Found and reproduced problem changeset ***

  Bug is in tree:  xen git://xenbits.xen.org/xen.git
  Bug introduced:  f17e9d7459f4d4c6e078cbf15e7e0591c8b5f43e
  Bug not present: 5415b2b2118bd78d8a04f276a8312f7f0cb1a466
  Last fail repro: http://logs.test-lab.xenproject.org/osstest/logs/183601/


  commit f17e9d7459f4d4c6e078cbf15e7e0591c8b5f43e
  Author: Julien Grall <julien@xen.org>
  Date:   Fri Oct 27 14:07:09 2023 +0100
  
      Config.mk: switch to named tags (for stable branch)
      
      Signed-off-by: Julien Grall <julien@xen.org>

Revision graph left in /home/logs/results/bisect/xen-4.18-testing/build-amd64.xen-build.{dot,ps,png,html,svg}.
----------------------------------------
183601: tolerable ALL FAIL

flight 183601 xen-4.18-testing real-bisect [real]
http://logs.test-lab.xenproject.org/osstest/logs/183601/

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 Oct 29 08:06:57 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 29 Oct 2023 08:06:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624888.973669 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qx0oe-00073K-TQ; Sun, 29 Oct 2023 08:06:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624888.973669; Sun, 29 Oct 2023 08:06: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 1qx0oe-00073D-QH; Sun, 29 Oct 2023 08:06:36 +0000
Received: by outflank-mailman (input) for mailman id 624888;
 Sun, 29 Oct 2023 08:06: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 1qx0oc-000733-R7; Sun, 29 Oct 2023 08:06: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 1qx0oc-00013P-Az; Sun, 29 Oct 2023 08:06: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 1qx0ob-0008Jy-Ul; Sun, 29 Oct 2023 08:06:34 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qx0ob-0002Fn-UA; Sun, 29 Oct 2023 08:06: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=WzMLqAGSaPX0Pf/s8EM7QN+BvrhUD2c1ClfZEngR22M=; b=n5L5MUhXVz8VLlxCeSSrkI+7X7
	frwJ8a3lJEoExpq3DoMJkYtUOuESxkbnHhMof0jcbLH9lSzNZusUY4tZkFeAwdn+1fsj1OeQ/Btlp
	yp1bfmmDxYdCRlhVBJLKG/pvqFKB8Mc63LmvzZgq6XbOBbPvVcMXgM7Qs7dMZmiCN+6M=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183570-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 183570: tolerable FAIL - PUSHED
X-Osstest-Failures:
    linux-linus:test-amd64-amd64-xl-rtds:guest-localmigrate/x10:fail:allowable
    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-armhf-armhf-libvirt: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:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-xsm:migrate-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-credit1: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-xl-xsm: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-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-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-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:saverestore-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-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-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: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-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=56567a20b22bdbf85c3e55eee3bf2bd23fa2f108
X-Osstest-Versions-That:
    linux=888cf78c29e223fd808682f477c18cf8f61ad995
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sun, 29 Oct 2023 08:06:33 +0000

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

Failures :-/ but no regressions.

Regressions which are regarded as allowable (not blocking):
 test-amd64-amd64-xl-rtds     20 guest-localmigrate/x10   fail REGR. vs. 183563

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183563
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183563
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183563
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183563
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183563
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183563
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183563
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183563
 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          15 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          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-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-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-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-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-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-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-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                56567a20b22bdbf85c3e55eee3bf2bd23fa2f108
baseline version:
 linux                888cf78c29e223fd808682f477c18cf8f61ad995

Last test of basis   183563  2023-10-27 22:51:55 Z    1 days
Testing same since   183570  2023-10-28 12:28:04 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Damien Le Moal <dlemoal@kernel.org>
  David Lazar <dlazar@gmail.com>
  Hans de Goede <hdegoede@redhat.com>
  Jens Axboe <axboe@kernel.dk>
  Khazhismel Kumykov <khazhy@chromium.org>
  Khazhismel Kumykov <khazhy@google.com>
  Linus Torvalds <torvalds@linux-foundation.org>
  Martin K. Petersen <martin.petersen@oracle.com>
  Tejun Heo <tj@kernel.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-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                                     fail    
 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
   888cf78c29e2..56567a20b22b  56567a20b22bdbf85c3e55eee3bf2bd23fa2f108 -> tested/linux-linus


From xen-devel-bounces@lists.xenproject.org Sun Oct 29 11:25:25 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 29 Oct 2023 11:25:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624905.973710 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qx3un-0002Y7-Ty; Sun, 29 Oct 2023 11:25:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624905.973710; Sun, 29 Oct 2023 11:25: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 1qx3un-0002Y0-R3; Sun, 29 Oct 2023 11:25:09 +0000
Received: by outflank-mailman (input) for mailman id 624905;
 Sun, 29 Oct 2023 11:25: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 1qx3um-0002Xq-8P; Sun, 29 Oct 2023 11:25: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 1qx3ul-0005bQ-PL; Sun, 29 Oct 2023 11:25: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 1qx3ul-0000f4-Ht; Sun, 29 Oct 2023 11:25:07 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qx3ul-00042X-HP; Sun, 29 Oct 2023 11:25: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=R15SCYHXa7YTA1+nH4TfM3JN4QqVHtDaWvYK9e+PXjA=; b=BTtpZO7or9GLqZr6WFjd87MZ8b
	17NAgYph+2SWGI4aDUGGgctiR93ZTO4V/dDmjyygrSrnUyrADTSQHeJFopl1Y+0KfIZRJsFWgANFA
	oG0Dduwv1B4Xmpmz9zKVtMgnYi1BxVyBVpSL3k1+LwnoTgmS5sN3Padqyl6SWN9SXEtE=;
To: xen-devel@lists.xenproject.org
Subject: [xen-4.18-testing bisection] complete build-i386
Message-Id: <E1qx3ul-00042X-HP@osstest.test-lab.xenproject.org>
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sun, 29 Oct 2023 11:25:07 +0000

branch xen-4.18-testing
xenbranch xen-4.18-testing
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 git://xenbits.xen.org/qemu-xen.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:  f17e9d7459f4d4c6e078cbf15e7e0591c8b5f43e
  Bug not present: 5415b2b2118bd78d8a04f276a8312f7f0cb1a466
  Last fail repro: http://logs.test-lab.xenproject.org/osstest/logs/183612/


  commit f17e9d7459f4d4c6e078cbf15e7e0591c8b5f43e
  Author: Julien Grall <julien@xen.org>
  Date:   Fri Oct 27 14:07:09 2023 +0100
  
      Config.mk: switch to named tags (for stable branch)
      
      Signed-off-by: Julien Grall <julien@xen.org>


For bisection revision-tuple graph see:
   http://logs.test-lab.xenproject.org/osstest/results/bisect/xen-4.18-testing/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/xen-4.18-testing/build-i386.xen-build --summary-out=tmp/183612.bisection-summary --basis-template=183555 --blessings=real,real-bisect,real-retry xen-4.18-testing build-i386 xen-build
Searching for failure / basis pass:
 183564 fail [host=huxelrebe1] / 183555 [host=pinot1] template as basis? using template as basis.
Failure / basis pass flights: 183564 / 183555
(tree in basispass but not in latest: minios)
Tree: ovmf git://xenbits.xen.org/osstest/ovmf.git
Tree: qemu git://xenbits.xen.org/qemu-xen-traditional.git
Tree: qemuu git://xenbits.xen.org/qemu-xen.git
Tree: seabios git://xenbits.xen.org/osstest/seabios.git
Tree: xen git://xenbits.xen.org/xen.git
Latest 7e08d17a4a535a7abfa58a0606ca1a0e7f5862ad 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 1e1da7a963007d03a4e0e9a9e0ff17990bb1608d b6cf4f81b5ff43a05b199c3eb8c78059d03d9485
Basis pass 7e08d17a4a535a7abfa58a0606ca1a0e7f5862ad 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 1e1da7a963007d03a4e0e9a9e0ff17990bb1608d 5415b2b2118bd78d8a04f276a8312f7f0cb1a466
Generating revisions with ./adhoc-revtuple-generator  git://xenbits.xen.org/osstest/ovmf.git#7e08d17a4a535a7abfa58a0606ca1a0e7f5862ad-7e08d17a4a535a7abfa58a0606ca1a0e7f5862ad git://xenbits.xen.org/qemu-xen-traditional.git#3d273dd05e51e5a1ffba3d98c7437ee84e8f8764-3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 git://xenbits.xen.org/qemu-xen.git#0df9387c8983e1b1e72d8c574356f572342c03e6-0df9387c8983e1b1e72d8c574356f572342c03e6 git://xenbits.xen.org/osstest/seabios.git#1e1da7a963007d03a4e0e9a9e0ff17990bb16\
 08d-1e1da7a963007d03a4e0e9a9e0ff17990bb1608d git://xenbits.xen.org/xen.git#5415b2b2118bd78d8a04f276a8312f7f0cb1a466-b6cf4f81b5ff43a05b199c3eb8c78059d03d9485
Loaded 5001 nodes in revision graph
Searching for test results:
 183555 [host=pinot1]
 183564 fail 7e08d17a4a535a7abfa58a0606ca1a0e7f5862ad 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 1e1da7a963007d03a4e0e9a9e0ff17990bb1608d b6cf4f81b5ff43a05b199c3eb8c78059d03d9485
 183602 pass 7e08d17a4a535a7abfa58a0606ca1a0e7f5862ad 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 1e1da7a963007d03a4e0e9a9e0ff17990bb1608d 5415b2b2118bd78d8a04f276a8312f7f0cb1a466
 183604 fail 7e08d17a4a535a7abfa58a0606ca1a0e7f5862ad 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 1e1da7a963007d03a4e0e9a9e0ff17990bb1608d b6cf4f81b5ff43a05b199c3eb8c78059d03d9485
 183605 pass 7e08d17a4a535a7abfa58a0606ca1a0e7f5862ad 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 1e1da7a963007d03a4e0e9a9e0ff17990bb1608d 5415b2b2118bd78d8a04f276a8312f7f0cb1a466
 183606 fail 7e08d17a4a535a7abfa58a0606ca1a0e7f5862ad 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 1e1da7a963007d03a4e0e9a9e0ff17990bb1608d b6cf4f81b5ff43a05b199c3eb8c78059d03d9485
 183607 fail 7e08d17a4a535a7abfa58a0606ca1a0e7f5862ad 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 1e1da7a963007d03a4e0e9a9e0ff17990bb1608d f17e9d7459f4d4c6e078cbf15e7e0591c8b5f43e
 183609 pass 7e08d17a4a535a7abfa58a0606ca1a0e7f5862ad 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 1e1da7a963007d03a4e0e9a9e0ff17990bb1608d 5415b2b2118bd78d8a04f276a8312f7f0cb1a466
 183610 fail 7e08d17a4a535a7abfa58a0606ca1a0e7f5862ad 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 1e1da7a963007d03a4e0e9a9e0ff17990bb1608d f17e9d7459f4d4c6e078cbf15e7e0591c8b5f43e
 183611 pass 7e08d17a4a535a7abfa58a0606ca1a0e7f5862ad 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 1e1da7a963007d03a4e0e9a9e0ff17990bb1608d 5415b2b2118bd78d8a04f276a8312f7f0cb1a466
 183612 fail 7e08d17a4a535a7abfa58a0606ca1a0e7f5862ad 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 1e1da7a963007d03a4e0e9a9e0ff17990bb1608d f17e9d7459f4d4c6e078cbf15e7e0591c8b5f43e
Searching for interesting versions
 Result found: flight 183602 (pass), for basis pass
 For basis failure, parent search stopping at 7e08d17a4a535a7abfa58a0606ca1a0e7f5862ad 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 1e1da7a963007d03a4e0e9a9e0ff17990bb1608d 5415b2b2118bd78d8a04f276a8312f7f0cb1a466, results HASH(0x5575ec4d1e08) HASH(0x5575ec4d57b8) HASH(0x5575ec4db678) HASH(0x5575ec4df208) Result found: flight 183604 (fail), for basis failure (at ancestor ~2236)
 Repro found: flight 183605 (pass), for basis pass
 Repro found: flight 183606 (fail), for basis failure
 0 revisions at 7e08d17a4a535a7abfa58a0606ca1a0e7f5862ad 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 1e1da7a963007d03a4e0e9a9e0ff17990bb1608d 5415b2b2118bd78d8a04f276a8312f7f0cb1a466
No revisions left to test, checking graph state.
 Result found: flight 183602 (pass), for last pass
 Result found: flight 183607 (fail), for first failure
 Repro found: flight 183609 (pass), for last pass
 Repro found: flight 183610 (fail), for first failure
 Repro found: flight 183611 (pass), for last pass
 Repro found: flight 183612 (fail), for first failure

*** Found and reproduced problem changeset ***

  Bug is in tree:  xen git://xenbits.xen.org/xen.git
  Bug introduced:  f17e9d7459f4d4c6e078cbf15e7e0591c8b5f43e
  Bug not present: 5415b2b2118bd78d8a04f276a8312f7f0cb1a466
  Last fail repro: http://logs.test-lab.xenproject.org/osstest/logs/183612/


  commit f17e9d7459f4d4c6e078cbf15e7e0591c8b5f43e
  Author: Julien Grall <julien@xen.org>
  Date:   Fri Oct 27 14:07:09 2023 +0100
  
      Config.mk: switch to named tags (for stable branch)
      
      Signed-off-by: Julien Grall <julien@xen.org>

Revision graph left in /home/logs/results/bisect/xen-4.18-testing/build-i386.xen-build.{dot,ps,png,html,svg}.
----------------------------------------
183612: tolerable ALL FAIL

flight 183612 xen-4.18-testing real-bisect [real]
http://logs.test-lab.xenproject.org/osstest/logs/183612/

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 Sun Oct 29 12:45:19 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 29 Oct 2023 12:45:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624912.973720 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qx5A7-0002gL-MN; Sun, 29 Oct 2023 12:45:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624912.973720; Sun, 29 Oct 2023 12:45: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 1qx5A7-0002gE-J0; Sun, 29 Oct 2023 12:45:03 +0000
Received: by outflank-mailman (input) for mailman id 624912;
 Sun, 29 Oct 2023 12:45: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 1qx5A6-0002g4-DY; Sun, 29 Oct 2023 12:45: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 1qx5A6-0007ev-36; Sun, 29 Oct 2023 12:45: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 1qx5A5-0002nv-Pl; Sun, 29 Oct 2023 12:45:01 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qx5A5-0006Ed-PH; Sun, 29 Oct 2023 12:45: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=EDw2vvGBWn87qkiSh/kIXQ4mH0XnnhKTxss2KmDpwRM=; b=GmFgYP5d8c4EnhUMt0MiXfJVsy
	T8DxbhOVx+DE9VPTX6uZw+NwhQrIm8ohUdkifCcDbkUDWoS5AJUeXkIPk+pQ2RVZsI7ll2sqOgzL1
	PvUFdPIcxzkLIuENloNpajeHynW6AEqV+ENNwOJzD44/xEG2ciCqTVtN6XWg+vq6XUvU=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183572-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-4.18-testing test] 183572: regressions - FAIL
X-Osstest-Failures:
    xen-4.18-testing:build-amd64-xsm:xen-build:fail:regression
    xen-4.18-testing:build-i386-xsm:xen-build:fail:regression
    xen-4.18-testing:build-amd64:xen-build:fail:regression
    xen-4.18-testing:build-i386:xen-build:fail:regression
    xen-4.18-testing:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-livepatch:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-migrupgrade:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-pair:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-qemut-rhel6hvm-amd:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-qemut-rhel6hvm-intel:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-xl:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-xl-qemut-debianhvm-amd64:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-xl-qemut-win7-amd64:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-xl-qemut-ws16-amd64:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-xl-xsm:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-xsm:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-qemut-ws16-amd64:build-check(1):blocked:nonblocking
    xen-4.18-testing:build-amd64-libvirt:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-qemut-win7-amd64:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-qemut-debianhvm-amd64:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking
    xen-4.18-testing:build-i386-libvirt:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-livepatch:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-migrupgrade:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-pair:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-xtf-amd64-amd64-1:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-xtf-amd64-amd64-2:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-xtf-amd64-amd64-3:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-xtf-amd64-amd64-4:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-xtf-amd64-amd64-5:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-armhf-armhf-xl-credit1:guest-start/debian.repeat:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=b6cf4f81b5ff43a05b199c3eb8c78059d03d9485
X-Osstest-Versions-That:
    xen=5415b2b2118bd78d8a04f276a8312f7f0cb1a466
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sun, 29 Oct 2023 12:45:01 +0000

flight 183572 xen-4.18-testing real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183572/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 build-amd64-xsm               6 xen-build                fail REGR. vs. 183555
 build-i386-xsm                6 xen-build                fail REGR. vs. 183555
 build-amd64                   6 xen-build                fail REGR. vs. 183555
 build-i386                    6 xen-build                fail REGR. vs. 183555

Tests which did not succeed, but are not blocking:
 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-amd64-i386-livepatch     1 build-check(1)               blocked  n/a
 test-amd64-i386-migrupgrade   1 build-check(1)               blocked  n/a
 test-amd64-i386-pair          1 build-check(1)               blocked  n/a
 test-amd64-i386-qemut-rhel6hvm-amd  1 build-check(1)               blocked n/a
 test-amd64-i386-qemut-rhel6hvm-intel  1 build-check(1)             blocked n/a
 test-amd64-i386-qemuu-rhel6hvm-amd  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-qemut-debianhvm-amd64  1 build-check(1)         blocked n/a
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm  1 build-check(1)      blocked n/a
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-i386-xl-qemut-win7-amd64  1 build-check(1)              blocked n/a
 test-amd64-i386-xl-qemut-ws16-amd64  1 build-check(1)              blocked n/a
 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-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-amd64-coresched-amd64-xl  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-xsm       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
 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
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 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-xl-qemuu-debianhvm-amd64-shadow  1 build-check(1) blocked n/a
 test-amd64-amd64-xl-qemuu-debianhvm-amd64  1 build-check(1)        blocked n/a
 test-amd64-amd64-xl-qemut-ws16-amd64  1 build-check(1)             blocked n/a
 build-amd64-libvirt           1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemut-win7-amd64  1 build-check(1)             blocked n/a
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm  1 build-check(1)     blocked n/a
 test-amd64-amd64-xl-qemut-debianhvm-amd64  1 build-check(1)        blocked n/a
 test-amd64-amd64-xl-qcow2     1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-pvshim    1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-pvhv2-intel  1 build-check(1)               blocked  n/a
 build-i386-libvirt            1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-pvhv2-amd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-multivcpu  1 build-check(1)               blocked  n/a
 test-amd64-amd64-dom0pvh-xl-amd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-dom0pvh-xl-intel  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-credit2   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-xl-credit1   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-libvirt-vhd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl           1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-amd64-amd64-livepatch    1 build-check(1)               blocked  n/a
 test-amd64-amd64-qemuu-nested-intel  1 build-check(1)              blocked n/a
 test-amd64-amd64-migrupgrade  1 build-check(1)               blocked  n/a
 test-amd64-amd64-pair         1 build-check(1)               blocked  n/a
 test-amd64-amd64-qemuu-nested-amd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-pygrub       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-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-coresched-i386-xl  1 build-check(1)               blocked  n/a
 test-amd64-i386-freebsd10-amd64  1 build-check(1)               blocked  n/a
 test-amd64-i386-freebsd10-i386  1 build-check(1)               blocked  n/a
 test-xtf-amd64-amd64-1        1 build-check(1)               blocked  n/a
 test-xtf-amd64-amd64-2        1 build-check(1)               blocked  n/a
 test-xtf-amd64-amd64-3        1 build-check(1)               blocked  n/a
 test-xtf-amd64-amd64-4        1 build-check(1)               blocked  n/a
 test-xtf-amd64-amd64-5        1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-credit1 18 guest-start/debian.repeat fail blocked in 183555
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183555
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183555
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183555
 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-credit1  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  16 saverestore-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-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-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-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-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     15 migrate-support-check        fail   never pass

version targeted for testing:
 xen                  b6cf4f81b5ff43a05b199c3eb8c78059d03d9485
baseline version:
 xen                  5415b2b2118bd78d8a04f276a8312f7f0cb1a466

Last test of basis   183555  2023-10-27 13:10:21 Z    1 days
Testing same since   183564  2023-10-27 23:37:39 Z    1 days    2 attempts

------------------------------------------------------------
People who touched revisions under test:
  Julien Grall <jgrall@amazon.com>
  Julien Grall <julien@xen.org>

jobs:
 build-amd64-xsm                                              fail    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               fail    
 build-amd64-xtf                                              pass    
 build-amd64                                                  fail    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   fail    
 build-amd64-libvirt                                          blocked 
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           blocked 
 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                                       blocked 
 test-xtf-amd64-amd64-2                                       blocked 
 test-xtf-amd64-amd64-3                                       blocked 
 test-xtf-amd64-amd64-4                                       blocked 
 test-xtf-amd64-amd64-5                                       blocked 
 test-amd64-amd64-xl                                          blocked 
 test-amd64-coresched-amd64-xl                                blocked 
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 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-qemut-stubdom-debianhvm-amd64-xsm        blocked 
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         blocked 
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 blocked 
 test-amd64-i386-xl-qemut-debianhvm-i386-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                                 pass    
 test-amd64-i386-libvirt-xsm                                  blocked 
 test-amd64-amd64-xl-xsm                                      blocked 
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       blocked 
 test-amd64-amd64-qemuu-nested-amd                            blocked 
 test-amd64-amd64-xl-pvhv2-amd                                blocked 
 test-amd64-i386-qemut-rhel6hvm-amd                           blocked 
 test-amd64-i386-qemuu-rhel6hvm-amd                           blocked 
 test-amd64-amd64-dom0pvh-xl-amd                              blocked 
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    blocked 
 test-amd64-i386-xl-qemut-debianhvm-amd64                     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-qemut-win7-amd64                         blocked 
 test-amd64-i386-xl-qemut-win7-amd64                          blocked 
 test-amd64-amd64-xl-qemuu-win7-amd64                         blocked 
 test-amd64-i386-xl-qemuu-win7-amd64                          blocked 
 test-amd64-amd64-xl-qemut-ws16-amd64                         blocked 
 test-amd64-i386-xl-qemut-ws16-amd64                          blocked 
 test-amd64-amd64-xl-qemuu-ws16-amd64                         blocked 
 test-amd64-i386-xl-qemuu-ws16-amd64                          blocked 
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-xl-credit1                                  blocked 
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  fail    
 test-amd64-amd64-xl-credit2                                  blocked 
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 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-qemut-rhel6hvm-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                                     pass    
 test-amd64-i386-libvirt                                      blocked 
 test-amd64-amd64-livepatch                                   blocked 
 test-amd64-i386-livepatch                                    blocked 
 test-amd64-amd64-migrupgrade                                 blocked 
 test-amd64-i386-migrupgrade                                  blocked 
 test-amd64-amd64-xl-multivcpu                                blocked 
 test-armhf-armhf-xl-multivcpu                                pass    
 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                               pass    
 test-amd64-amd64-xl-qcow2                                    blocked 
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  blocked 
 test-amd64-amd64-xl-rtds                                     blocked 
 test-armhf-armhf-xl-rtds                                     pass    
 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                                 pass    
 test-amd64-amd64-libvirt-vhd                                 blocked 
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    
 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.

------------------------------------------------------------
commit b6cf4f81b5ff43a05b199c3eb8c78059d03d9485
Author: Julien Grall <julien@xen.org>
Date:   Fri Oct 27 14:08:16 2023 +0100

    Turn off debug by default
    
    Signed-off-by: Julien Grall <jgrall@amazon.com>

commit f17e9d7459f4d4c6e078cbf15e7e0591c8b5f43e
Author: Julien Grall <julien@xen.org>
Date:   Fri Oct 27 14:07:09 2023 +0100

    Config.mk: switch to named tags (for stable branch)
    
    Signed-off-by: Julien Grall <julien@xen.org>
(qemu changes not included)


From xen-devel-bounces@lists.xenproject.org Sun Oct 29 19:04:41 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 29 Oct 2023 19:04:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624918.973729 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxB5B-0008IE-VW; Sun, 29 Oct 2023 19:04:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624918.973729; Sun, 29 Oct 2023 19: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 1qxB5B-0008I7-Sl; Sun, 29 Oct 2023 19:04:21 +0000
Received: by outflank-mailman (input) for mailman id 624918;
 Sun, 29 Oct 2023 19: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 1qxB5A-0008Hx-Ka; Sun, 29 Oct 2023 19: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 1qxB5A-0000D0-EG; Sun, 29 Oct 2023 19:04: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 1qxB5A-0003Q9-0J; Sun, 29 Oct 2023 19:04:20 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qxB59-0007lr-W5; Sun, 29 Oct 2023 19: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=gtmzgWXJBalS2I99fsvzmoRpUkk3LpCSjmdhEARgAKA=; b=eHarhe8nzq3Ywxv1508DZhr+rE
	w+i+2+7QhGc26mfTbUhCUFPvdMlK3THVwerc+7S+hGLM7DKvSlTXMF03RhmxiHSmBU2Rhv4Wrswl9
	JFsTF8lqkfIAbafRGXTbvpto30zwe1S75hdr8I2LUjeaDLdNFrfTrfUE6OBhm8f/L4fw=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183603-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 183603: tolerable FAIL
X-Osstest-Failures:
    xen-unstable:test-arm64-arm64-xl-vhd:xen-boot:fail:heisenbug
    xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:windows-install:fail:heisenbug
    xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop: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:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-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-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-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2: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-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt:migrate-support-check: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-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-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1: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-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-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-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-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-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-amd64-i386-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-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1: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:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=5415b2b2118bd78d8a04f276a8312f7f0cb1a466
X-Osstest-Versions-That:
    xen=5415b2b2118bd78d8a04f276a8312f7f0cb1a466
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sun, 29 Oct 2023 19:04:19 +0000

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

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-arm64-arm64-xl-vhd       8 xen-boot                   fail pass in 183566
 test-amd64-i386-xl-qemuu-win7-amd64 12 windows-install     fail pass in 183566

Tests which did not succeed, but are not blocking:
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop   fail in 183566 like 183547
 test-arm64-arm64-xl-vhd     14 migrate-support-check fail in 183566 never pass
 test-arm64-arm64-xl-vhd 15 saverestore-support-check fail in 183566 never pass
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183566
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183566
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183566
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183566
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 183566
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 183566
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183566
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183566
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183566
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 183566
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183566
 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      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-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-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-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-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-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-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-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-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-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-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-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 xen                  5415b2b2118bd78d8a04f276a8312f7f0cb1a466
baseline version:
 xen                  5415b2b2118bd78d8a04f276a8312f7f0cb1a466

Last test of basis   183603  2023-10-29 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                 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                                      fail    
 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 Oct 29 22:59:42 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 29 Oct 2023 22:59:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624924.973739 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxEkd-00070E-BA; Sun, 29 Oct 2023 22:59:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624924.973739; Sun, 29 Oct 2023 22:59: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 1qxEkd-000707-8e; Sun, 29 Oct 2023 22:59:23 +0000
Received: by outflank-mailman (input) for mailman id 624924;
 Sun, 29 Oct 2023 22:59: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 1qxEkc-0006zv-Ov; Sun, 29 Oct 2023 22:59: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 1qxEkc-0005qO-CZ; Sun, 29 Oct 2023 22:59: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 1qxEkc-0000Of-1L; Sun, 29 Oct 2023 22:59:22 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qxEkc-0005Ja-0m; Sun, 29 Oct 2023 22:59: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=VUM0ENNh1Dv+TuOHG+xPS+lmbfblPbNJEBWRWiqR7uE=; b=RE31/C2cD4IYlnrMiif/Za3KS8
	oR4JPB7oWoZ0rmI7rfZmZKhL3BUISMuVme9aGPMDQ+QsgFBF+m2UTvUemapyPgWcFQnVFEh5vnp0u
	DhlIfINFNpBpYgpG0s3zu2vBgPnjTb47Tt8Pv1/oeSxpsKimL5JE79cFhdcpxNt2+qBk=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183608-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 183608: regressions - trouble: broken/fail/pass
X-Osstest-Failures:
    linux-linus:test-armhf-armhf-xl-credit1:<job status>:broken:regression
    linux-linus:test-armhf-armhf-xl-credit1:host-install(5):broken:regression
    linux-linus:test-amd64-amd64-freebsd12-amd64:guest-start.2:fail:regression
    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-armhf-armhf-libvirt: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:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-xsm:migrate-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-credit1: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-xl-xsm: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-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-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-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-raw:migrate-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-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: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-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=2af9b20dbb39f6ebf9b9b6c090271594627d818e
X-Osstest-Versions-That:
    linux=56567a20b22bdbf85c3e55eee3bf2bd23fa2f108
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sun, 29 Oct 2023 22:59:22 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-armhf-armhf-xl-credit1     <job status>                 broken
 test-armhf-armhf-xl-credit1   5 host-install(5)        broken REGR. vs. 183570
 test-amd64-amd64-freebsd12-amd64 22 guest-start.2        fail REGR. vs. 183570

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183570
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183570
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183570
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183570
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183570
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183570
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183570
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183570
 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          15 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          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-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-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-qcow2 14 migrate-support-check        fail never pass
 test-amd64-amd64-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-libvirt-raw 14 migrate-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-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                2af9b20dbb39f6ebf9b9b6c090271594627d818e
baseline version:
 linux                56567a20b22bdbf85c3e55eee3bf2bd23fa2f108

Last test of basis   183570  2023-10-28 12:28:04 Z    1 days
Testing same since   183608  2023-10-29 08:10:06 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Al Viro <viro@zeniv.linux.org.uk>
  Alain Volmat <alain.volmat@foss.st.com>
  Alessandro Carminati (Red Hat) <alessandro.carminati@gmail.com>
  Alessandro Carminati <alessandro.carminati@gmail.com>
  Andi Shyti <andi.shyti@kernel.org>
  Andrew Jeffery <andrew@codeconstruct.com.au>
  Andrii Nakryiko <andrii@kernel.org>
  Christoph Hellwig <hch@lst.de>
  Conor Dooley <conor.dooley@microchip.com>
  Dan Carpenter <dan.carpenter@linaro.org>
  Dave Hansen <dave.hansen@linux.intel.com>
  David Lazar <dlazar@gmail.com>
  Dominic Rath <dominic.rath@ibv-augsburg.net>
  Ekansh Gupta <quic_ekangupt@quicinc.com>
  Greg Kroah-Hartman <gregkh@linuxfoundation.org>
  Herve Codina <herve.codina@bootlin.com>
  Ingo Molnar <mingo@kernel.org>
  Jian Zhang <zhangjian.3032@bytedance.com>
  Jinjie Ruan <ruanjinjie@huawei.com>
  Jonathan Cameron <Jonathan.Cameron@huawei.com>
  Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
  Linus Torvalds <torvalds@linux-foundation.org>
  Linus Walleij <linus.walleij@linaro.org>
  Marc Zyngier <maz@kernel.org>
  Marco Pagani <marpagan@redhat.com>
  Marek Szyprowski <m.szyprowski@samsung.com>
  Masami Hiramatsu (Google) <mhiramat@kernel.org>
  Maxime Ripard <mripard@kernel.org>
  O'Griofa, Conall <conall.ogriofa@amd.com>
  Peng Fan <peng.fan@nxp.com>
  Peter Colberg <peter.colberg@intel.com>
  Peter Rosin <peda@axentia.se>
  Peter Zijlstra (Intel) <peterz@infradead.org>
  Peter Zijlstra <peterz@infradead.org>
  Petr Tesarik <petr.tesarik1@huawei-partners.com>
  Robert Hancock <robert.hancock@calian.com>
  Russ Weight <russell.h.weight@intel.com>
  Song Liu <song@kernel.org>
  Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
  Stephen Boyd <sboyd@kernel.org>
  Tetsuo Handa <penguin-kernel@i-love.sakura.ne.jp>
  Thomas Gleixner <tglx@linutronix.de>
  Tony Luck <tony.luck@intel.com>
  Wolfram Sang <wsa@kernel.org>
  Xu Yilun <yilun.xu@intel.com>
  Xu Yilun <yilun.xu@linux.intel.com>
  Yujie Liu <yujie.liu@intel.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                             fail    
 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                                  broken  
 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

broken-job test-armhf-armhf-xl-credit1 broken
broken-step test-armhf-armhf-xl-credit1 host-install(5)

Not pushing.

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


From xen-devel-bounces@lists.xenproject.org Mon Oct 30 02:21:24 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 02:21:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624949.973750 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxHtr-0002mM-OB; Mon, 30 Oct 2023 02:21:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624949.973750; Mon, 30 Oct 2023 02: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 1qxHtr-0002mF-L9; Mon, 30 Oct 2023 02:21:07 +0000
Received: by outflank-mailman (input) for mailman id 624949;
 Mon, 30 Oct 2023 02:21: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 1qxHtq-0002m0-1G; Mon, 30 Oct 2023 02:21: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 1qxHtp-0001O3-Ct; Mon, 30 Oct 2023 02:21: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 1qxHtp-0007yx-1j; Mon, 30 Oct 2023 02:21:05 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qxHtp-0002zu-1B; Mon, 30 Oct 2023 02:21: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=4kYngcDv4krX2g7ukthAd3Qchh6m0eLltBnWriVpKfs=; b=esr5jjEz50tfITrRi5dars18cU
	07dLYnYTmQq/zuyXYWBUK7lSrtl8907kWCRp/PwnZW3S/Kk2o1KllRABkaGmykeUfzvL/0IoIHQtS
	t1piFToVa+7QALzXrP3upEsUWtvMSVfvCrmmufy53AR/g+Q7QUdvEKvYbdSM4X3QfcF0=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183613-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-4.18-testing test] 183613: regressions - FAIL
X-Osstest-Failures:
    xen-4.18-testing:build-amd64-xsm:xen-build:fail:regression
    xen-4.18-testing:build-i386-xsm:xen-build:fail:regression
    xen-4.18-testing:build-amd64:xen-build:fail:regression
    xen-4.18-testing:build-i386:xen-build:fail:regression
    xen-4.18-testing:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-livepatch:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-migrupgrade:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-pair:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-qemut-rhel6hvm-amd:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-qemut-rhel6hvm-intel:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-xl:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-xl-qemut-debianhvm-amd64:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-xl-qemut-win7-amd64:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-xl-qemut-ws16-amd64:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-xl-xsm:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-xsm:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-qemut-ws16-amd64:build-check(1):blocked:nonblocking
    xen-4.18-testing:build-amd64-libvirt:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-qemut-win7-amd64:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-qemut-debianhvm-amd64:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking
    xen-4.18-testing:build-i386-libvirt:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-livepatch:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-migrupgrade:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-pair:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-xtf-amd64-amd64-1:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-xtf-amd64-amd64-2:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-xtf-amd64-amd64-3:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-xtf-amd64-amd64-4:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-xtf-amd64-amd64-5:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=b6cf4f81b5ff43a05b199c3eb8c78059d03d9485
X-Osstest-Versions-That:
    xen=5415b2b2118bd78d8a04f276a8312f7f0cb1a466
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 30 Oct 2023 02:21:05 +0000

flight 183613 xen-4.18-testing real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183613/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 build-amd64-xsm               6 xen-build                fail REGR. vs. 183555
 build-i386-xsm                6 xen-build                fail REGR. vs. 183555
 build-amd64                   6 xen-build                fail REGR. vs. 183555
 build-i386                    6 xen-build                fail REGR. vs. 183555

Tests which did not succeed, but are not blocking:
 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-amd64-i386-livepatch     1 build-check(1)               blocked  n/a
 test-amd64-i386-migrupgrade   1 build-check(1)               blocked  n/a
 test-amd64-i386-pair          1 build-check(1)               blocked  n/a
 test-amd64-i386-qemut-rhel6hvm-amd  1 build-check(1)               blocked n/a
 test-amd64-i386-qemut-rhel6hvm-intel  1 build-check(1)             blocked n/a
 test-amd64-i386-qemuu-rhel6hvm-amd  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-qemut-debianhvm-amd64  1 build-check(1)         blocked n/a
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm  1 build-check(1)      blocked n/a
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-i386-xl-qemut-win7-amd64  1 build-check(1)              blocked n/a
 test-amd64-i386-xl-qemut-ws16-amd64  1 build-check(1)              blocked n/a
 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-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-amd64-coresched-amd64-xl  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-xsm       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
 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
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 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-xl-qemuu-debianhvm-amd64-shadow  1 build-check(1) blocked n/a
 test-amd64-amd64-xl-qemuu-debianhvm-amd64  1 build-check(1)        blocked n/a
 test-amd64-amd64-xl-qemut-ws16-amd64  1 build-check(1)             blocked n/a
 build-amd64-libvirt           1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemut-win7-amd64  1 build-check(1)             blocked n/a
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm  1 build-check(1)     blocked n/a
 test-amd64-amd64-xl-qemut-debianhvm-amd64  1 build-check(1)        blocked n/a
 test-amd64-amd64-xl-qcow2     1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-pvshim    1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-pvhv2-intel  1 build-check(1)               blocked  n/a
 build-i386-libvirt            1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-pvhv2-amd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-multivcpu  1 build-check(1)               blocked  n/a
 test-amd64-amd64-dom0pvh-xl-amd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-dom0pvh-xl-intel  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-credit2   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-xl-credit1   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-libvirt-vhd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl           1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-amd64-amd64-livepatch    1 build-check(1)               blocked  n/a
 test-amd64-amd64-qemuu-nested-intel  1 build-check(1)              blocked n/a
 test-amd64-amd64-migrupgrade  1 build-check(1)               blocked  n/a
 test-amd64-amd64-pair         1 build-check(1)               blocked  n/a
 test-amd64-amd64-qemuu-nested-amd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-pygrub       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-i386-xl-qemuu-win7-amd64  1 build-check(1)              blocked n/a
 test-amd64-i386-xl-qemuu-ovmf-amd64  1 build-check(1)              blocked n/a
 test-amd64-coresched-i386-xl  1 build-check(1)               blocked  n/a
 test-amd64-i386-freebsd10-amd64  1 build-check(1)               blocked  n/a
 test-amd64-i386-freebsd10-i386  1 build-check(1)               blocked  n/a
 test-xtf-amd64-amd64-1        1 build-check(1)               blocked  n/a
 test-xtf-amd64-amd64-2        1 build-check(1)               blocked  n/a
 test-xtf-amd64-amd64-3        1 build-check(1)               blocked  n/a
 test-xtf-amd64-amd64-4        1 build-check(1)               blocked  n/a
 test-xtf-amd64-amd64-5        1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183555
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183555
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183555
 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-credit1  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  16 saverestore-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-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-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-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-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     15 migrate-support-check        fail   never pass

version targeted for testing:
 xen                  b6cf4f81b5ff43a05b199c3eb8c78059d03d9485
baseline version:
 xen                  5415b2b2118bd78d8a04f276a8312f7f0cb1a466

Last test of basis   183555  2023-10-27 13:10:21 Z    2 days
Testing same since   183564  2023-10-27 23:37:39 Z    2 days    3 attempts

------------------------------------------------------------
People who touched revisions under test:
  Julien Grall <jgrall@amazon.com>
  Julien Grall <julien@xen.org>

jobs:
 build-amd64-xsm                                              fail    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               fail    
 build-amd64-xtf                                              pass    
 build-amd64                                                  fail    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   fail    
 build-amd64-libvirt                                          blocked 
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           blocked 
 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                                       blocked 
 test-xtf-amd64-amd64-2                                       blocked 
 test-xtf-amd64-amd64-3                                       blocked 
 test-xtf-amd64-amd64-4                                       blocked 
 test-xtf-amd64-amd64-5                                       blocked 
 test-amd64-amd64-xl                                          blocked 
 test-amd64-coresched-amd64-xl                                blocked 
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 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-qemut-stubdom-debianhvm-amd64-xsm        blocked 
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         blocked 
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 blocked 
 test-amd64-i386-xl-qemut-debianhvm-i386-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                                 pass    
 test-amd64-i386-libvirt-xsm                                  blocked 
 test-amd64-amd64-xl-xsm                                      blocked 
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       blocked 
 test-amd64-amd64-qemuu-nested-amd                            blocked 
 test-amd64-amd64-xl-pvhv2-amd                                blocked 
 test-amd64-i386-qemut-rhel6hvm-amd                           blocked 
 test-amd64-i386-qemuu-rhel6hvm-amd                           blocked 
 test-amd64-amd64-dom0pvh-xl-amd                              blocked 
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    blocked 
 test-amd64-i386-xl-qemut-debianhvm-amd64                     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-qemut-win7-amd64                         blocked 
 test-amd64-i386-xl-qemut-win7-amd64                          blocked 
 test-amd64-amd64-xl-qemuu-win7-amd64                         blocked 
 test-amd64-i386-xl-qemuu-win7-amd64                          blocked 
 test-amd64-amd64-xl-qemut-ws16-amd64                         blocked 
 test-amd64-i386-xl-qemut-ws16-amd64                          blocked 
 test-amd64-amd64-xl-qemuu-ws16-amd64                         blocked 
 test-amd64-i386-xl-qemuu-ws16-amd64                          blocked 
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-xl-credit1                                  blocked 
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  blocked 
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 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-qemut-rhel6hvm-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                                     pass    
 test-amd64-i386-libvirt                                      blocked 
 test-amd64-amd64-livepatch                                   blocked 
 test-amd64-i386-livepatch                                    blocked 
 test-amd64-amd64-migrupgrade                                 blocked 
 test-amd64-i386-migrupgrade                                  blocked 
 test-amd64-amd64-xl-multivcpu                                blocked 
 test-armhf-armhf-xl-multivcpu                                pass    
 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                               pass    
 test-amd64-amd64-xl-qcow2                                    blocked 
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  blocked 
 test-amd64-amd64-xl-rtds                                     blocked 
 test-armhf-armhf-xl-rtds                                     pass    
 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                                 pass    
 test-amd64-amd64-libvirt-vhd                                 blocked 
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    
 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.

------------------------------------------------------------
commit b6cf4f81b5ff43a05b199c3eb8c78059d03d9485
Author: Julien Grall <julien@xen.org>
Date:   Fri Oct 27 14:08:16 2023 +0100

    Turn off debug by default
    
    Signed-off-by: Julien Grall <jgrall@amazon.com>

commit f17e9d7459f4d4c6e078cbf15e7e0591c8b5f43e
Author: Julien Grall <julien@xen.org>
Date:   Fri Oct 27 14:07:09 2023 +0100

    Config.mk: switch to named tags (for stable branch)
    
    Signed-off-by: Julien Grall <julien@xen.org>
(qemu changes not included)


From xen-devel-bounces@lists.xenproject.org Mon Oct 30 07:38:07 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 07:38:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624957.973760 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxMqK-0001s5-OP; Mon, 30 Oct 2023 07:37:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624957.973760; Mon, 30 Oct 2023 07:37: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 1qxMqK-0001ry-Kn; Mon, 30 Oct 2023 07:37:48 +0000
Received: by outflank-mailman (input) for mailman id 624957;
 Mon, 30 Oct 2023 07:37: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=crLw=GM=amd.com=Xenia.Ragiadakou@srs-se1.protection.inumbo.net>)
 id 1qxMqJ-0001rs-2R
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 07:37:47 +0000
Received: from NAM12-BN8-obe.outbound.protection.outlook.com
 (mail-bn8nam12on2060c.outbound.protection.outlook.com
 [2a01:111:f400:fe5b::60c])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 353db09b-76f7-11ee-9b0e-b553b5be7939;
 Mon, 30 Oct 2023 08:37:42 +0100 (CET)
Received: from CH0PR03CA0004.namprd03.prod.outlook.com (2603:10b6:610:b0::9)
 by PH8PR12MB6915.namprd12.prod.outlook.com (2603:10b6:510:1bc::21) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.28; Mon, 30 Oct
 2023 07:37:38 +0000
Received: from SA2PEPF000015C8.namprd03.prod.outlook.com
 (2603:10b6:610:b0:cafe::7d) by CH0PR03CA0004.outlook.office365.com
 (2603:10b6:610:b0::9) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.28 via Frontend
 Transport; Mon, 30 Oct 2023 07:37:38 +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.6933.15 via Frontend Transport; Mon, 30 Oct 2023 07:37:38 +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.32; Mon, 30 Oct
 2023 02:37: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: 353db09b-76f7-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=OSKeomCb8xN8dhZkFphJ9Gv097jrA8LeHB4Orymb/dGer2lZywNroW+m64ZuJUVERJZqVvBaMfX1A/Yg0pVGCMKnAIrsGhefooESRd93i3NbNz7lrQHxqfUzm4RLx3gsaLyYA9tv6xkopABOq4+DkPF7pYrbKCAUeDpO2YRh51CqLWNTv6PJprQ45rphEM6bRhN4XJpicMG982VUoHUO9kJO3RJVU4cEA4O4wZe4NEuA8Ij/YiRoIImzF5rgmiBMGJPsjPP17FZGGpPe5YWI55BnvUt+cMnXonylJhKQ4j9VBsVbsanwsFX8B9QFB4hXSPD9CvM8J1XYpzJyrdD5Ww==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=K/CYNdLL1LC3+hOLXS5kCLgVvdRZGednHHuby0bDhEk=;
 b=n2PN/vfgFCzl3kCGqcp4NGKPAsyJ0SG6+3E+1ZlVU8yC7BY2+DMlzqyshCMO/r71UPIMBCn14O90kkApGIkXwnHgK5+q6eKlAD7uUEgj4ojF1B2wKuvosrsa0/lb6QwamTu5kcnLZzVnSNtmcS5QCtaNZG8XSOLb46H0OCjdAkwQjakPuLvnZ+Z+S7zkJKYyY8EsiCIg+Can/JbeaIrhNyOs4JpKcw8UgeUqTMUeEkHwn7gwcN9Pu5CLLeRVULgxotsuKt39qvn0McQqJM1zRqc5/oSu8ZtBBtY1ffbSulouubGqlyzfcIVBB6ObNTM7PNfybzzZ7uXWhs7b783geA==
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 (0)
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=K/CYNdLL1LC3+hOLXS5kCLgVvdRZGednHHuby0bDhEk=;
 b=3gQWg080ebn47Y+QYw46n/OiMz78QhzvJmxToTQ9rb8H99eqgPGGNwLdl6a7r01b3yYfJsWpi+PXUEHgJyC6EnxQ6aEWC8Oa9DgKLGJqyU2nEH81jL4JxGxq7Xd3dU5kuAxcfybPUl/LEHm4tko/m1imAQyBfWfYq6mfZNKtb+Q=
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: <b203d30f-1563-45b6-9469-b25dda8df9a4@amd.com>
Date: Mon, 30 Oct 2023 09:37:24 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH] x86/hvm/dom0: fix PVH initrd and metadata placement
Content-Language: en-US
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>, Wei Liu <wl@xen.org>,
	<xen-devel@lists.xenproject.org>
References: <20231026064543.43369-1-xenia.ragiadakou@amd.com>
 <ac7e9bac-6d74-a5bf-d703-3c5455e581ea@suse.com>
 <7712c60b-4f89-483e-89e4-7ac8f4d0311e@amd.com>
 <809115b1-2a47-583f-2d04-72a5a21ee7da@suse.com>
 <c107d63c-25a3-4f17-a5e8-7ec3ccd94ce3@amd.com>
 <c81a8275-ecfd-7598-c119-ed83b156c0e5@suse.com>
 <b5330686-82a0-4d47-9549-2d943ca68c7e@amd.com>
 <1cc98108-3328-94d3-5f8d-ff03c965087e@suse.com>
 <92ba94d2-9e57-4241-8626-33f06f88e726@amd.com>
 <a61926bc-e3e6-e381-45de-be3a4878b6af@suse.com>
 <217d9079-3072-441a-a4ba-4db28c565bc7@amd.com>
 <08ea1b7b-c85f-337a-42c4-520e40b75288@suse.com>
 <987b5b7d-57f8-4d63-bd13-fe662b6cb87f@amd.com>
 <486c778c-4a33-703f-2811-27101d10ea9b@suse.com>
From: Xenia Ragiadakou <xenia.ragiadakou@amd.com>
In-Reply-To: <486c778c-4a33-703f-2811-27101d10ea9b@suse.com>
Content-Type: text/plain; charset="UTF-8"; format=flowed
Content-Transfer-Encoding: 7bit
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: SA2PEPF000015C8:EE_|PH8PR12MB6915:EE_
X-MS-Office365-Filtering-Correlation-Id: 9296c38b-d8d3-4f53-fd1e-08dbd91b1747
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	c4YrdPQeZN+liLTQ3IuJRAa8e7BVCo7SJCNNTFNn1oDkZwLn+/VE+KZg+nV58QTGnwHwij33/m1QsgzujExa7mNz9rvzP1RhoIhpI4nTLh+2kgF8yBAz1prsmH4p2U6N2Z4jkzV+edHMrm631J/ggGr52+ywNaivABhdTz4r5lDy67xJSq17+gmnCf0UgpqEAbZ6tEeZytfokWx7Cj/1vBcuz4YX3X1bW3Ha9grMlkOG980OPHJmigxydbnYuUMtSdc7t5LWr8zGvsIFgnpiggC2UT/NXTbRlcx0x6njfTmiaELL0kA4znmfC1W90mUBhY2qNbXBt8I213giwnugjMEZuzdXhz/HUd3AmJhX7/sB67foNnXO7eIR6UG4bPwPlrm1Al2vhI1D1iCKq5H8Xwy59HNWnrasfmgHxJL/I4AYH8NHiII09ty+KnnFjPqw54tTc+T+h/QH4zG5UOLNDj8N2hu6XkvbKBhFZ10xS+cyqfciCM/Z8y4rbPOeC4p7Q6wVQvDnEeXYYBkwpuqxb+ffQoS170ALLO7GURj2SBgs3FbdyoBOA0hW8fZ8FIk0RLuD/gflyxT9rVJuutTrUX7YwNiTzWrfblqpBBt7iH2rg7rC/jidYrCUcP3dK0Iss1/e8+lgspuiy/ZxPpfSHZYwLYYnUONLinm1u0621O1pNVKkElP6rJe4W6OKGE9nRD+u31MOPff9t2+uqZjJ+avwoXwnbT0j9/xoGMdDjOAg/2ClUVLoB1IqcoT727Vk4SXA2VLVKmYRR0QBdizgbhh63beOUF4cfLTqsKS/FSxg7MUgVsSAJShg4IVJSvDW
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)(39860400002)(396003)(376002)(230922051799003)(64100799003)(1800799009)(451199024)(82310400011)(186009)(40470700004)(36840700001)(46966006)(41300700001)(5660300002)(2906002)(478600001)(40460700003)(40480700001)(316002)(16576012)(54906003)(44832011)(4326008)(8676002)(8936002)(110136005)(70206006)(70586007)(66899024)(36860700001)(83380400001)(36756003)(47076005)(31696002)(31686004)(86362001)(356005)(81166007)(82740400003)(16526019)(426003)(2616005)(336012)(26005)(6666004)(53546011)(43740500002)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Oct 2023 07:37:38.0526
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 9296c38b-d8d3-4f53-fd1e-08dbd91b1747
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: PH8PR12MB6915


On 27/10/23 15:01, Jan Beulich wrote:
> On 27.10.2023 13:18, Xenia Ragiadakou wrote:
>>
>> On 27/10/23 09:37, Jan Beulich wrote:
>>> On 26.10.2023 18:55, Xenia Ragiadakou wrote:
>>>>
>>>>
>>>> On 26/10/23 17:55, Jan Beulich wrote:
>>>>> On 26.10.2023 15:58, Xenia Ragiadakou wrote:
>>>>>>
>>>>>> On 26/10/23 15:37, Jan Beulich wrote:
>>>>>>> On 26.10.2023 14:35, Xenia Ragiadakou wrote:
>>>>>>>>
>>>>>>>>
>>>>>>>> On 26/10/23 14:51, Jan Beulich wrote:
>>>>>>>>> On 26.10.2023 11:46, Xenia Ragiadakou wrote:
>>>>>>>>>> On 26/10/23 11:45, Jan Beulich wrote:
>>>>>>>>>>> On 26.10.2023 10:34, Xenia Ragiadakou wrote:
>>>>>>>>>>>> On 26/10/23 10:35, Jan Beulich wrote:
>>>>>>>>>>>>> On 26.10.2023 08:45, Xenia Ragiadakou wrote:
>>>>>>>>>>>>>> --- a/xen/arch/x86/hvm/dom0_build.c
>>>>>>>>>>>>>> +++ b/xen/arch/x86/hvm/dom0_build.c
>>>>>>>>>>>>>> @@ -518,7 +518,7 @@ static paddr_t __init find_memory(
>>>>>>>>>>>>>>                 if ( end <= kernel_start || start >= kernel_end )
>>>>>>>>>>>>>>                     ; /* No overlap, nothing to do. */
>>>>>>>>>>>>>>                 /* Deal with the kernel already being loaded in the region. */
>>>>>>>>>>>>>> -        else if ( kernel_start - start > end - kernel_end )
>>>>>>>>>>>>>> +        else if ( kernel_start + kernel_end > start + end )
>>>>>>>>>>>>> What meaning has the sum of the start and end of either range? I can't
>>>>>>>>>>>>> figure how comparing those two values will be generally correct / useful.
>>>>>>>>>>>>> If the partial-overlap case needs handling in the first place, I think
>>>>>>>>>>>>> new conditionals need adding (and the existing one needs constraining to
>>>>>>>>>>>>> "kernel range fully contained") to use
>>>>>>>>>>>>> - as before, the larger of the non-overlapping ranges at start and end
>>>>>>>>>>>>>          if the kernel range is fully contained,
>>>>>>>>>>>>> - the tail of the range when the overlap is at the start,
>>>>>>>>>>>>> - the head of the range when the overlap is at the end.
>>>>>>>>>>>> Yes it is not quite straight forward to understand and is based on the
>>>>>>>>>>>> assumption that end > kernel_start and start < kernel_end, due to
>>>>>>>>>>>> the first condition failing.
>>>>>>>>>>>>
>>>>>>>>>>>> Both cases:
>>>>>>>>>>>> (start < kernel_start && end < kernel_end) and
>>>>>>>>>>>> (kernel_start - start > end - kernel_end)
>>>>>>>>>>>> fall into the condition ( kernel_start + kernel_end > start + end )
>>>>>>>>>>>>
>>>>>>>>>>>> And both the cases:
>>>>>>>>>>>> (start > kernel_start && end > kernel_end) and
>>>>>>>>>>>> (end - kernel_end > kernel_start - start)
>>>>>>>>>>>> fall into the condition ( kernel_start + kernel_end < start + end )
>>>>>>>>>>>>
>>>>>>>>>>>> ... unless of course I miss a case
>>>>>>>>>>> Well, mathematically (i.e. ignoring the potential for overflow) the
>>>>>>>>>>> original expression and your replacement are identical anyway. But
>>>>>>>>>>> overflow needs to be taken into consideration, and hence there is a
>>>>>>>>>>> (theoretical only at this point) risk with the replacement expression
>>>>>>>>>>> as well. As a result I still think that ...
>>>>>>>>>>>
>>>>>>>>>>>>> That said, in the "kernel range fully contained" case it may want
>>>>>>>>>>>>> considering to use the tail range if it is large enough, rather than
>>>>>>>>>>>>> the larger of the two ranges. In fact when switching to that model, we
>>>>>>>>>>>>> ought to be able to get away with one less conditional, as then the
>>>>>>>>>>>>> "kernel range fully contained" case doesn't need treating specially.
>>>>>>>>>>> ... this alternative approach may want considering (provided we need
>>>>>>>>>>> to make a change in the first place, which I continue to be
>>>>>>>>>>> unconvinced of).
>>>>>>>>>> Hmm, I see your point regarding the overflow.
>>>>>>>>>> Given that start < kernel_end and end > kernel_start, this could
>>>>>>>>>> be resolved by changing the above condition into:
>>>>>>>>>> if ( kernel_end - start > end - kernel_start )
>>>>>>>>>>
>>>>>>>>>> Would that work for you?
>>>>>>>>>
>>>>>>>>> That would look quite a bit more natural, yes. But I don't think it covers
>>>>>>>>> all cases: What if the E820 range is a proper sub-range of the kernel one?
>>>>>>>>> If we consider kernel range crossing E820 region boundaries, we also need
>>>>>>>>> to take that possibility into account, I think.
>>>>>>>>
>>>>>>>> You are right, this case is not handled and can lead to either of the
>>>>>>>> issues mentioned in commit message.
>>>>>>>> Maybe we should check whether end > start before proceeding with
>>>>>>>> checking the size.
>>>>>>>
>>>>>>> It looks like it all boils down to the alternative I did sketch out.
>>>>>>
>>>>>> I 'm not sure I fully understood the alternative.
>>>>>> Do you mean sth in the lines below?
>>>>>>
>>>>>>              if ( end <= kernel_start || start >= kernel_end )
>>>>>>                  ; /* No overlap, nothing to do. */
>>>>>>              /* Deal with the kernel already being loaded in the region. */
>>>>>> -        else if ( kernel_start - start > end - kernel_end )
>>>>>> +        else if ( start < kernel_start && end > kernel_end ) {
>>>>>> +            if ( kernel_start - start > end - kernel_end )
>>>>>> +                end = kernel_start;
>>>>>> +            else
>>>>>> +                start = kernel_end;
>>>>>> +        }
>>>>>> +        else if ( start < kernel_start )
>>>>>>                  end = kernel_start;
>>>>>> -        else
>>>>>> +        else if ( end > kernel_end )
>>>>>>                  start = kernel_end;
>>>>>> +        else
>>>>>> +            continue;
>>>>>>
>>>>>>              if ( end - start >= size )
>>>>>>                  return start;
>>>>>
>>>>> Not exactly, no, because this still takes the size into account only
>>>>> in this final if().
>>>>>
>>>>>> You wouldn't like to consider this approach?
>>>>>
>>>>> I'm happy to consider any other approach. Just that ...
>>>>>
>>>>>>              if ( end <= kernel_start || start >= kernel_end )
>>>>>>                  ; /* No overlap, nothing to do. */
>>>>>>              /* Deal with the kernel already being loaded in the region. */
>>>>>> -        else if ( kernel_start - start > end - kernel_end )
>>>>>> +        else if ( kernel_end - start > end - kernel_start )
>>>>>>                  end = kernel_start;
>>>>>>              else
>>>>>>                  start = kernel_end;
>>>>>>
>>>>>> -        if ( end - start >= size )
>>>>>> +        if ( end > start && end - start >= size )
>>>>>>                  return start;
>>>>>>          }
>>>>>
>>>>> ... I'm afraid this doesn't deal well with the specific case I was
>>>>> mentioning: If the E820 region is fully contained in the kernel range,
>>>>> it looks to me as if this approach would ignore the E820 altogether,
>>>>> since you either move end ahead of start or start past end then. Both
>>>>> head and tail regions may be large enough in this case, and if this
>>>>> was the only region above 1M, there'd be no other space to fall back
>>>>> to.
>>>>
>>>> Yes, in which case it will fail. This is legitimate.
>>>
>>> Not really, if there is space available (but just not properly used).
>>
>> I said so because I noticed that, if, for instance, the loading address
>> conflicts with a reserved memory region, xen won't attempt to relocate
>> the kernel (assuming that it is relocatable). It will fail.
> 
> Hmm, if so, perhaps yet something else to deal with.
> 
>>>> Currently, the code proceeds with the dom0 kernel being corrupted.
>>>
>>> And we agree that this wants fixing.
>>
>> Ok, and IIUC, using rangeset as per Roger's suggestion, right?
> 
> Going that route would be optimal of course, but I for one wouldn't
> insist.

Roger what's your opinion on this? Would it be ok for now to send a v2 
with just the change above (i.e. that might fail if the image extends 
over a really large memory area containing all usable memory regions) 
and implement later your suggested solution (probably taking into 
account in the implementation also image relocation aspect in case of 
conflicts)?

Jan would it be possible to sketch a patch of your suggested solution 
because I 'm afraid I have not fully understood it yet and I won't be 
able to implement it properly for a v2?


From xen-devel-bounces@lists.xenproject.org Mon Oct 30 08:28:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 08:28:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624966.973770 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxNdZ-000089-Qw; Mon, 30 Oct 2023 08:28:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624966.973770; Mon, 30 Oct 2023 08:28: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 1qxNdZ-00007x-Nt; Mon, 30 Oct 2023 08:28:41 +0000
Received: by outflank-mailman (input) for mailman id 624966;
 Mon, 30 Oct 2023 08:28: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=Nl15=GM=amd.com=Michal.Orzel@srs-se1.protection.inumbo.net>)
 id 1qxNdZ-00007j-3C
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 08:28:41 +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 530a3d4f-76fe-11ee-98d6-6d05b1d4d9a1;
 Mon, 30 Oct 2023 09:28:39 +0100 (CET)
Received: from CY8PR12CA0043.namprd12.prod.outlook.com (2603:10b6:930:49::25)
 by DM4PR12MB5278.namprd12.prod.outlook.com (2603:10b6:5:39e::17) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.28; Mon, 30 Oct
 2023 08:28:34 +0000
Received: from CY4PEPF0000E9D1.namprd03.prod.outlook.com
 (2603:10b6:930:49:cafe::fd) by CY8PR12CA0043.outlook.office365.com
 (2603:10b6:930:49::25) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.28 via Frontend
 Transport; Mon, 30 Oct 2023 08:28:33 +0000
Received: from SATLEXMB03.amd.com (165.204.84.17) by
 CY4PEPF0000E9D1.mail.protection.outlook.com (10.167.241.144) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6933.15 via Frontend Transport; Mon, 30 Oct 2023 08:28:33 +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.32; Mon, 30 Oct
 2023 03:28:27 -0500
Received: from [10.252.147.188] (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.32 via Frontend
 Transport; Mon, 30 Oct 2023 03:28: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: 530a3d4f-76fe-11ee-98d6-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=hp/+qvKm8gZIiWnGskOf1BhzsN377NlUMRcXduEmnoMkFnCH3B+9x7pRx2n6CGd4zBJoYe6zGm5Iv4clCLqoF7iufUK7bUFIGF9WcIvcGwnlE4aK2RuAvfi1fC2VHv9ft8Lhwi+WfoTgHeJluk1LcLgS5cuQ6qc4MEd3dokj3ZIeKGzh1jz2uk9/sH0QARQSExQOn/X07T72LuVD/Dneul2eGOceKj3W5R24A4BeRgzwslOkmcFliOQognsFAVLP8udo1VkViYJNcjlUOb5D0kRkEiEioF6lJWvPVvnYrZuyzRB8GFr7iDGs2QVbJXZ2lXeOUdKl5A6DT4Kdfx4izg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=Wcs1akE3wttCtucFFzEnmsMI8uITNQcYuvG81FlzCTw=;
 b=QbQ6WXXDZVfm3glBDwK/ZIAnofd6sNkJVfV5EzMgxHndEzofX5QptcN7sRVDbRTxDtWpWRy3xJxUMM/sAInQUgTxKhjmbBhiPd2GbGkW4Yq+wwTWZskeYfoDw73+UdTRJIHpo4e76QYv7gLJuF2x9uVPsJ1kEtaaMz1clTQ7VSmLX/X8Ml3b1N/Bu83RIJHHYmS+ob379YxXP1IVdaA8OY8eS2N+wTlX9QZxR7sjjzOL1FsChx3X1T7DSJ4Z5LNFk0Re3wLG6+8t6Wzzp2fW53Qh7kPXLWxjwsjkb30IrdRFvAsG6NmhOPvRIEEJgv6ZecpaXq1TeUNBZ6BpycnDqQ==
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 (0)
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=Wcs1akE3wttCtucFFzEnmsMI8uITNQcYuvG81FlzCTw=;
 b=kI7FbGBE6ZK0Kjm7VPB17DKKnIqq8U1xKMSCbuWp2ZVIlecngU+9jkEmPeYxHf9lAremLDkXHYLBg9vm2A9gK+QV6YY+gBvkNxg8/Lblnu2fbjXec33c/QenHNhKXKflJ3PqjKu+tXUXUfDu/FJ9vAyMejjJ0qu7qxkwS4IPozM=
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: <fd9a1eb2-c62f-44ed-977a-e4fee498fe0c@amd.com>
Date: Mon, 30 Oct 2023 09:28:25 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN v3] xen/arm32: head: Replace load_paddr with adr_l when they
 are equivalent
To: Ayan Kumar Halder <ayan.kumar.halder@amd.com>,
	<xen-devel@lists.xenproject.org>
CC: <sstabellini@kernel.org>, <julien@xen.org>, <bertrand.marquis@arm.com>
References: <20231027180715.3484439-1-ayan.kumar.halder@amd.com>
Content-Language: en-US
From: Michal Orzel <michal.orzel@amd.com>
In-Reply-To: <20231027180715.3484439-1-ayan.kumar.halder@amd.com>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 7bit
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: CY4PEPF0000E9D1:EE_|DM4PR12MB5278:EE_
X-MS-Office365-Filtering-Correlation-Id: 6c0db482-8371-4577-85e9-08dbd9223450
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	qc+0+VlDYBORwHp8UILUcbIKEqxJozvvGNb+haAJ3V8mJ5sdeA1UToFZW9SYq7CgfvBRuwtGjIIPzGmPT33XjpxbjPB8yrn1iHXXfpvm4T2Bk0jJZfwfc9btDTXmytA8yQTIo+84HZKj94QlJ3mpnCgDAwLR2D+U0tDk6GUqZtJs99Otrr9ej75WFih3LGmbjl5xsWfVlTCiX7HwXNGmsL0Sl1gBVXeoV3X985RikK5u7mgrzrvdVg8JksgoxLjCtqbvqES8IRgSm5gVtc2tKELvlZ0UE+jayIrESfIMepfTvOCruUPUejX1F2E0ZrodKdk59zTe/H6f82R8XM48ncJHmx9R5tmzChsdL8maGVMAJfmGGQnt3rbwmqGmjzKsqyeZL3Pp+Yh3nkwE84PF1cjdvTtDmtkOtJbQY1v654PTEkwW9LeGOl0vR97ceR4sNPede1fvQTRxSI4zlCdsRiDqK9ZwBCY8UDE3epWm27yzHeKXP1+0rsXc99NyiS2AeHdIaZbOoKIaz07+V04yA9NczdvV/8R7K63kNfKBF9KtwIj2I5/JMJt3pnpRrlQqk6F/pfcE1Y/49TliEzFJXkgUcADeE0oTDddSXo/z1/W613n9yd8lQH0UuDDDkWVqy9BdCODBbvUDQuf/T8KZGuR/tM5zu6hKsz4nmUq1g2uZaZvzyRW+I5E1ti/+OujlK+ZLY9X2G4z0ee1QNGSvQYpRr3rLzHEysDflpz7xzmASqJEhFDTaKrdQJpSmcxg3yelhH97E3UVc5JdpzG/K9Eiq9k0yVpeTwA4pUXfjwFQ=
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)(346002)(396003)(39860400002)(230922051799003)(82310400011)(186009)(1800799009)(64100799003)(451199024)(36840700001)(40470700004)(46966006)(31686004)(16576012)(40460700003)(2906002)(5660300002)(44832011)(41300700001)(4326008)(8676002)(8936002)(36756003)(40480700001)(31696002)(86362001)(82740400003)(316002)(54906003)(36860700001)(47076005)(356005)(81166007)(70586007)(70206006)(83380400001)(110136005)(426003)(26005)(2616005)(336012)(966005)(53546011)(478600001)(43740500002)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Oct 2023 08:28:33.1613
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 6c0db482-8371-4577-85e9-08dbd9223450
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:
	CY4PEPF0000E9D1.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR12MB5278

Hi Ayan,

On 27/10/2023 20:07, Ayan Kumar Halder wrote:
> Before the MMU is turned on, PC uses physical address. Thus, one can use adr_l
> instead of load_paddr to obtain the physical address of a symbol.
> 
> The only exception (for this replacement) is create_table_entry() which is
> called before and after MMU is turned on.
> 
> Also, in lookup_processor_type() "r10" is no longer used. The reason being
> __lookup_processor_type uses adr_l (thus r10 is no longer used to obtain the
> physical address offset). Consequently, there is no need to save/restore r10.
> 
> Signed-off-by: Ayan Kumar Halder <ayan.kumar.halder@amd.com>
> ---
> Refer https://lists.archive.carbon60.com/xen/devel/682900 for details.
> 
> Changes from :-
> 
> v1 :- 1. No need to modify create_table_entry().
> 2. Remove "mov   r10, #0 " in lookup_processor_type().
> 
> v2 :- 1. No need to save/restore r10 in lookup_processor_type().
> 2. Update the commit message title.
> 
>  xen/arch/arm/arm32/head.S | 19 ++++++++-----------
>  1 file changed, 8 insertions(+), 11 deletions(-)
> 
> diff --git a/xen/arch/arm/arm32/head.S b/xen/arch/arm/arm32/head.S
> index 33b038e7e0..1fcc6f745e 100644
> --- a/xen/arch/arm/arm32/head.S
> +++ b/xen/arch/arm/arm32/head.S
> @@ -171,7 +171,7 @@ past_zImage:
>  
>          /* Using the DTB in the .dtb section? */
>  .ifnes CONFIG_DTB_FILE,""
> -        load_paddr r8, _sdtb
> +        adr_l r8, _sdtb
>  .endif
>  
>          /* Initialize the UART if earlyprintk has been enabled. */
> @@ -213,7 +213,7 @@ GLOBAL(init_secondary)
>          mrc   CP32(r1, MPIDR)
>          bic   r7, r1, #(~MPIDR_HWID_MASK) /* Mask out flags to get CPU ID */
>  
> -        load_paddr r0, smp_up_cpu
> +        adr_l r0, smp_up_cpu
>          dsb
>  2:      ldr   r1, [r0]
>          cmp   r1, r7
> @@ -479,7 +479,7 @@ create_page_tables:
>           * create_table_entry_paddr() will clobber the register storing
>           * the physical address of the table to point to.
>           */
> -        load_paddr r5, boot_third
> +        adr_l r5, boot_third
>          mov_w r4, XEN_VIRT_START
>  .rept XEN_NR_ENTRIES(2)
>          mov   r0, r5                        /* r0 := paddr(l3 table) */
> @@ -578,7 +578,7 @@ enable_mmu:
>          flush_xen_tlb_local r0
>  
>          /* Write Xen's PT's paddr into the HTTBR */
> -        load_paddr r0, boot_pgtable
> +        adr_l r0, boot_pgtable
>          mov   r1, #0                 /* r0:r1 is paddr (boot_pagetable) */
>          mcrr  CP64(r0, r1, HTTBR)
>          isb
> @@ -876,11 +876,10 @@ putn:   mov   pc, lr
>  
>  /* This provides a C-API version of __lookup_processor_type */
>  ENTRY(lookup_processor_type)
> -        stmfd sp!, {r4, r10, lr}
> -        mov   r10, #0                   /* r10 := offset between virt&phys */
> +        stmfd sp!, {r4, lr}
>          bl    __lookup_processor_type
>          mov r0, r1
> -        ldmfd sp!, {r4, r10, pc}
> +        ldmfd sp!, {r4, pc}
>  
>  /*
>   *  Read processor ID register (CP#15, CR0), and Look up in the linker-built
> @@ -888,8 +887,6 @@ ENTRY(lookup_processor_type)
>   * the __proc_info lists since we aren't running with the MMU on (and therefore,
>   * we are not in correct address space). We have to calculate the offset.
In v2, I mentioned that this comment needs to be tweaked as well. We no longer use load_paddr
thus we don't care about the offset. I would remove the comment starting from "Note that...".
to avoid confusion or add a proper explanation if you want to keep it.
With that addressed:
Reviewed-by: Michal Orzel <michal.orzel@amd.com>

~Michal


From xen-devel-bounces@lists.xenproject.org Mon Oct 30 08:32:11 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 08:32:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624969.973779 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxNgw-0001ZC-A3; Mon, 30 Oct 2023 08:32:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624969.973779; Mon, 30 Oct 2023 08:32: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 1qxNgw-0001Z5-7U; Mon, 30 Oct 2023 08:32:10 +0000
Received: by outflank-mailman (input) for mailman id 624969;
 Mon, 30 Oct 2023 08:32: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 1qxNgv-0001Yt-F0; Mon, 30 Oct 2023 08:32: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 1qxNgv-00033h-9d; Mon, 30 Oct 2023 08:32: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 1qxNgv-0000tw-13; Mon, 30 Oct 2023 08:32:09 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qxNgv-0003GM-0e; Mon, 30 Oct 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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=Ier6R0sXVYmz36jC02KunmppY/0/5Dshfah62YRK1BU=; b=HniqelVP/aPaRKyztTZrvMmmk0
	P5gTE4sED3umc6jv711fmFfkYs2gL0Wq8f46GH3qxT0bG3OwrBIZj5Q/D2iOjX6mYXYlaw1nMbbw+
	9/6tlGhkfykToKqMXjwATqyHsJRIIOx4i9K3uAI3ubWjYd2iAOtxG4GYMzMf08A/wrHk=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183614-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 183614: regressions - FAIL
X-Osstest-Failures:
    linux-linus:test-armhf-armhf-xl-credit1:<job status>:broken:regression
    linux-linus:test-amd64-amd64-freebsd12-amd64:guest-start.2:fail:regression
    linux-linus:test-armhf-armhf-xl-credit1:host-install(5):broken:heisenbug
    linux-linus:test-amd64-amd64-freebsd12-amd64:guest-saverestore:fail:heisenbug
    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-armhf-armhf-libvirt: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:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-xsm:migrate-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-credit1: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-xl-xsm: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-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-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-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:saverestore-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-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-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: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-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=2af9b20dbb39f6ebf9b9b6c090271594627d818e
X-Osstest-Versions-That:
    linux=56567a20b22bdbf85c3e55eee3bf2bd23fa2f108
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 30 Oct 2023 08:32:09 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-armhf-armhf-xl-credit1     <job status>                 broken  in 183608
 test-amd64-amd64-freebsd12-amd64 22 guest-start.2 fail in 183608 REGR. vs. 183570

Tests which are failing intermittently (not blocking):
 test-armhf-armhf-xl-credit1  5 host-install(5) broken in 183608 pass in 183614
 test-amd64-amd64-freebsd12-amd64 16 guest-saverestore      fail pass in 183608

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183570
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183570
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183570
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183570
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183570
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183570
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183570
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183570
 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          15 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          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-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-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-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-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-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-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-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                2af9b20dbb39f6ebf9b9b6c090271594627d818e
baseline version:
 linux                56567a20b22bdbf85c3e55eee3bf2bd23fa2f108

Last test of basis   183570  2023-10-28 12:28:04 Z    1 days
Testing same since   183608  2023-10-29 08:10:06 Z    1 days    2 attempts

------------------------------------------------------------
People who touched revisions under test:
  Al Viro <viro@zeniv.linux.org.uk>
  Alain Volmat <alain.volmat@foss.st.com>
  Alessandro Carminati (Red Hat) <alessandro.carminati@gmail.com>
  Alessandro Carminati <alessandro.carminati@gmail.com>
  Andi Shyti <andi.shyti@kernel.org>
  Andrew Jeffery <andrew@codeconstruct.com.au>
  Andrii Nakryiko <andrii@kernel.org>
  Christoph Hellwig <hch@lst.de>
  Conor Dooley <conor.dooley@microchip.com>
  Dan Carpenter <dan.carpenter@linaro.org>
  Dave Hansen <dave.hansen@linux.intel.com>
  David Lazar <dlazar@gmail.com>
  Dominic Rath <dominic.rath@ibv-augsburg.net>
  Ekansh Gupta <quic_ekangupt@quicinc.com>
  Greg Kroah-Hartman <gregkh@linuxfoundation.org>
  Herve Codina <herve.codina@bootlin.com>
  Ingo Molnar <mingo@kernel.org>
  Jian Zhang <zhangjian.3032@bytedance.com>
  Jinjie Ruan <ruanjinjie@huawei.com>
  Jonathan Cameron <Jonathan.Cameron@huawei.com>
  Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
  Linus Torvalds <torvalds@linux-foundation.org>
  Linus Walleij <linus.walleij@linaro.org>
  Marc Zyngier <maz@kernel.org>
  Marco Pagani <marpagan@redhat.com>
  Marek Szyprowski <m.szyprowski@samsung.com>
  Masami Hiramatsu (Google) <mhiramat@kernel.org>
  Maxime Ripard <mripard@kernel.org>
  O'Griofa, Conall <conall.ogriofa@amd.com>
  Peng Fan <peng.fan@nxp.com>
  Peter Colberg <peter.colberg@intel.com>
  Peter Rosin <peda@axentia.se>
  Peter Zijlstra (Intel) <peterz@infradead.org>
  Peter Zijlstra <peterz@infradead.org>
  Petr Tesarik <petr.tesarik1@huawei-partners.com>
  Robert Hancock <robert.hancock@calian.com>
  Russ Weight <russell.h.weight@intel.com>
  Song Liu <song@kernel.org>
  Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
  Stephen Boyd <sboyd@kernel.org>
  Tetsuo Handa <penguin-kernel@i-love.sakura.ne.jp>
  Thomas Gleixner <tglx@linutronix.de>
  Tony Luck <tony.luck@intel.com>
  Wolfram Sang <wsa@kernel.org>
  Xu Yilun <yilun.xu@intel.com>
  Xu Yilun <yilun.xu@linux.intel.com>
  Yujie Liu <yujie.liu@intel.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                             fail    
 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

broken-job test-armhf-armhf-xl-credit1 broken

Not pushing.

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


From xen-devel-bounces@lists.xenproject.org Mon Oct 30 08:40:57 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 08:40:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624977.973790 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxNpE-0003ND-7k; Mon, 30 Oct 2023 08:40:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624977.973790; Mon, 30 Oct 2023 08:40: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 1qxNpE-0003N6-4t; Mon, 30 Oct 2023 08:40:44 +0000
Received: by outflank-mailman (input) for mailman id 624977;
 Mon, 30 Oct 2023 08:40: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=Hhfi=GM=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qxNpC-0003Mf-RM
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 08:40:42 +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 020bf8ef-7700-11ee-98d6-6d05b1d4d9a1;
 Mon, 30 Oct 2023 09:40:41 +0100 (CET)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DB9PR04MB8105.eurprd04.prod.outlook.com (2603:10a6:10:24a::14)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.16; Mon, 30 Oct
 2023 08:40:39 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6954.016; Mon, 30 Oct 2023
 08:40: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: 020bf8ef-7700-11ee-98d6-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=lKHKtSsTcws83mTdyBJQT4tgMCxRkW7etIWB8QsV0rHgPWV0p92J3y3v21sNPEeBl2NS/3AHG+4QVvJpzwrS2aoEo1NFhYczdEKB1vKu6YDwegUik4g+HrjfHhA7Jj11HTNSlHbH01CktmXq3LGCWznT/sy//51MfT7OOQkpvppJbeAHzUBkclhCmw7jOkvQL2dNY8OTzxAGZOPxHo8ZOBBHxZYSsgUux1EXHLmueufVX2woGJP6dllep0OeSZDEnW91py71n+3uDQ3QPK6Dglfbi+mAyJ1bmPNWqlfIA2OAkxmzCTBInzsdHERcnaXIBbXy19C+49JuFFsX/QIUzw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=4G7FCbPDqWyLnbja5Rlo1osDqVeS5fDDq/yuIpn+tqk=;
 b=XNoPk0sz6Gfh7TIKC+lUNx6IIQYZGbaCL0gi1NbqJj7xAtyLrYGJHrUnDrY2/kQeEcZKC6dBsvlpSddJRA+9/g8fGzMNzbEi0Bt3PWi5ydUsSnOYaKGiMacQArb3lTN1lCJgSRuVY/k7dNTXXcp2CoSSxLQ52TW3L0XNfbt/Oi9A9t+lFmbCep9bagmaoPWm2h6376BYmoyzt/yIflBABn6geYLirJNpnEMZRGUgY5WZhJqb9HKXqbvd+PWFFpaxG6rUxlK1wctciu7LBZ8XBO/c0hXCNmfmpo1ocA3bglPGB4Eh9xOmSYunX6O1wEmemKG4PssdamR/gl8COaMVTg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=4G7FCbPDqWyLnbja5Rlo1osDqVeS5fDDq/yuIpn+tqk=;
 b=GnvQCVlh9eKVEiryvo+UrG4DbWNAcEF9hJhvwb0wtaONUr5CV1IMzXE7Eowc0mwzHSTRUJ/H8eH8pKUBybsOIDqlqsnDYQ5T2dguIw79mCbwmcNzm0uuDiWfyOAt/1jlROfljtVFbbBZ9HcjGitdfx5muHIaFBUboWKTdxCc7Ac/mD/x4gzrvOLSrJM1v41grNsGBqc0va8Ap/0mSHIOkZnE/guBwL9no1XSEa/h6XQocLpi83PZFsh6Zr4tivs4ASHRal7WDpVuIDT329P8j9xrxPpsyXAe8gwL5sqxx32tgj0oK0t8y22+7N/MPBmgC1bzCHZGF35Ohuv3sldB/A==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <78e56f41-cd55-d4ca-a3ce-f7da87d2b063@suse.com>
Date: Mon, 30 Oct 2023 09:40:40 +0100
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH v2 2/2] x86/Kconfig: Introduce CONFIG_{AMD,INTEL} and
 conditionalise ucode
Content-Language: en-US
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: Wei Liu <wl@xen.org>, Alejandro Vallejo <alejandro.vallejo@cloud.com>,
 Stefano Stabellini <stefano.stabellini@amd.com>,
 Xenia Ragiadakou <xenia.ragiadakou@amd.com>,
 Xen-devel <xen-devel@lists.xenproject.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
References: <20231026205539.3261811-1-andrew.cooper3@citrix.com>
 <20231026205539.3261811-3-andrew.cooper3@citrix.com>
 <70472259-6429-e60f-7cdc-faa50b2d257f@suse.com> <ZTu_WxdWTrthCs4m@macbook>
 <997218cb-b1d3-4fa8-a098-10849a54c592@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <997218cb-b1d3-4fa8-a098-10849a54c592@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR0P281CA0093.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:a9::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_|DB9PR04MB8105:EE_
X-MS-Office365-Filtering-Correlation-Id: 14b0adf6-0bae-4ff9-d6cd-08dbd923e4da
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	eEwMVAt6uIr1PWkySiuR2UDL2I0IrOQ/1oRZKLUevARWwWTd91sKAPNdpsLW6BLiLbHp4agWeZVdd9BVsgsnnxfp2PRvYdU77kWTTKcz+st0NtoqcSyU5WAS7DJTpO0I+RrjcY81bms0y6af2ih+gdXrNrrkP88VAS/jmNyncFk2sNlXOAHnLJuGOofys6vf5PE7nvduUHSTG9bCURX+e6BhGHYYlgU1UeyuUrIHWtt4bkfWeYJbBC+yvdC4lGjVyBXFYkc4sx/ShkinOLk4+fx08At0sAKSID9pfkP4LT1xW9+bWXNYnjINZGrcQsS5a2wYAlbJbtlGccIjQ9TpwBs1m68Hrfxlc7H5azXMysHONCGjN7VlwqjHyzCGRdWRp7Oqd0ZyXTzLjv1eLojid0kNjp11LDZL6AyimvgRYjevylaJn9YQfbMG5rXCsQlgJ7C0PxFfQ/1MH2b1pSjy2bZM2B7dZmH9nM9WEUuraV3ANv63V592azy1dt4SQYQ8ABYXODwXCJ6GEl0jep3Bt5+6dld3Rs+lf1tXnlez+qdcz6AEtcrRSPHIanR6LPHPKMOnVxiWZ2f57inKg9KxPdpm1ww9kIrs9LgtC7q19goZKd8JgoR2ajfoQtgebvOreaOa7EQiDyMzySs1vuv7tQ==
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)(376002)(346002)(136003)(230922051799003)(186009)(1800799009)(64100799003)(451199024)(2616005)(26005)(38100700002)(6916009)(316002)(54906003)(66556008)(66946007)(66476007)(2906002)(41300700001)(4326008)(6506007)(8936002)(5660300002)(478600001)(6666004)(53546011)(6512007)(6486002)(8676002)(36756003)(86362001)(31696002)(31686004)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?bzYwRUZYQ3d0aTBWSkFkUkNSRjVNa09tc1lhZzNtTnF5Wit5QVlsMW14dVJZ?=
 =?utf-8?B?TUxGMzVPV2kxNmo5YmRqbXMvUktFUUNCV1lQaEVIZDNDRm1Ua1l6TXg2bDFT?=
 =?utf-8?B?QnVvcDFnci9kR3ZXQkFFY1RlUVNCYU9jbTAxZnZ0MVRIMllTdFl1N0x6WnhC?=
 =?utf-8?B?QVZiRGpjZmViNEdjaWJVUVJWUkhaVm1wUG5TeThhRXgrUTY4b2FFWWpUSDFH?=
 =?utf-8?B?UVVVMjN5Rm9VazBmR3BxQ3FKNC96cFBOdW91QXZhUEhvRHdtVmdSSG8xQ2x3?=
 =?utf-8?B?QmNmSFp3SXRwQ1Y2Um1aanVETHpRcmpXMnI2bEVaSGpEU2w0aFlDS2pabTdN?=
 =?utf-8?B?QXk0bkx1dm5McFp6dXpmVGNUakFmOHBoRGQ1MzFSVlNPWkROV3BIU215bEdK?=
 =?utf-8?B?NHZOMFV5M3o2SUJreGpXeWJaNWNqZzNXZGlNbHFkYXNlSXhMTEY4MUd2b2hZ?=
 =?utf-8?B?UEkyS3RTTDB0R284UmF2djJQUzBYZlFGN3dUYXdxYjRabWFlbkszTDhrSGUv?=
 =?utf-8?B?cmh4NWxXZGIyVDdZa2xkK0Z2RUtqTVYwNUNtZWNrTHd5UG1QZk0rR2xSSWgw?=
 =?utf-8?B?S0xaaUdEQ3R2cWx4SHdUb0pJalZET3BlUHVHbjh5Y0JwcVdmQkdBK09vL0RM?=
 =?utf-8?B?VC9iN281bTVFY0Q4UnFVbk0yYWd3Y2NSb2FVTS9neHJVSlE1TE9VVnA1OW1G?=
 =?utf-8?B?V2F4YnVDODJ1Z2VJYklRazZHWllkYTVsdkU4MW5IbkYvdmFBZzA3cmpLdFhw?=
 =?utf-8?B?cXcydXdTckpmUTBSZmlEdW5tM3p1NWNaUXFHVytmSDRlZ0hQMitjUldQWlE3?=
 =?utf-8?B?amJqOU9yQ0JKN1VFVGRrTW1MTHZPQWk2WmFaYXlNQTJocFM3Qk5wcW4xUEVJ?=
 =?utf-8?B?Y0FXd1dtRERJNUExZStidUtMNWZySVpyd3hKOWl6TFpFY0pYQ0FrOGJxV0JM?=
 =?utf-8?B?QUx6Mll4ZzVEMk1xWWlIQXZ0cEJYVm9NNXhMcGpaS1RUTVIxZTUwYnU1UXQw?=
 =?utf-8?B?cFdUdHEzYm5xQjNvWGovTFk2d1Z3aVllMDQ0L1BueE9DSW4yS2FLTVFVNzVk?=
 =?utf-8?B?NVNVWTAyRW1uS1M1M2hOc1NEVXhXTStFcDRUQ1N5M0VvNlhra2RNYU5rZkdu?=
 =?utf-8?B?RTdoQmllbFAxTW84Zk9wb1psbnl0SzBvRmx0Z0oxUDBRaXRKTDRObTIxOEdC?=
 =?utf-8?B?SGUwektDajhWaUlZeGtsZzlNVFJIaG1OenRHSG1UMmlUdlZLVzJMSklQSXZo?=
 =?utf-8?B?VzEwcm9jZ2U3RWUxVjZOZUJRNDc1eVZ6UHk0cEhQNS9YR0hPVnJ2NHlaZ09Q?=
 =?utf-8?B?VVdsOGhDb2xwa29QWnM5SVN5aDd5UnN4MWZNTGJUeGpkaWR2cHVzdWk0SFRN?=
 =?utf-8?B?LzB2NTJuMmtqTTYvTXhzcW95SEErR01CK0xuN3JocDFVVjlHcUlkM3B0eXNw?=
 =?utf-8?B?UThjeVhvZ1JxQzZ4UUlZcnQxaUpYUktOR2xCSUVwZDdpalZBZGpaRVdQR0hG?=
 =?utf-8?B?TiswNTZ5WlFFYnVTMnprdEExNk1Db3pmWG9IS3VZZzZBNm1EcWNrMDlOenBI?=
 =?utf-8?B?eVk0QU51aG44c0RsdWV4Z1VHOWpzdVluajNmdG00QXNwL0hyYUVyanRyTitY?=
 =?utf-8?B?Y3VyaFFnTCtVTk1lZ2thNnZENDU3UW1pR2JMY3M3bmVSMnIvMGY2SWE3VURp?=
 =?utf-8?B?RUlMbnBpcHo4dnZwVXUrSzJHMW9qeXJuZ3Irekd3NU84VElGY3N0RkdKaWlN?=
 =?utf-8?B?ZUo5RXc4WE5OSUs0c0x5NU1HTkVzUEtmUWVKY1AwV3Byc1R1UnhwNVIzY05N?=
 =?utf-8?B?VDU0ZlE0NzN5ejFFOFkwMXRkaDBnaC8wRzBEeTlWb3E1aUtHNlphL0VrK0ZM?=
 =?utf-8?B?SVN0NEJJMy9oSGZDR0h0U2x1Q05uRlRadU94L2JiSU16czFHL1dpanRDNXlL?=
 =?utf-8?B?RG9aeWRqdkdXLzFWUWRwZEZNSmt5Vjg5bzFXMHNvNUtFeDJzWGZzcmp0NHFr?=
 =?utf-8?B?eS8rQ2FjT2F5MTF4aUlhRkl5T3FjNFB0MjJUaWw1bmU1VnNzenlPcXVMaFd6?=
 =?utf-8?B?Y1ZWMGQ3dWFZTkZ5K2htQ0tZcHl4VDFobkt5Nnl2Z2J4WmNrbGM4OTkvOEN4?=
 =?utf-8?Q?Jh+bBjYhS+tdYaTaFDggHyelf?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 14b0adf6-0bae-4ff9-d6cd-08dbd923e4da
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Oct 2023 08:40:39.1199
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: Wi2+PMY72XxCRbHuqZlRZSIYBw2pyn/l82Jsmt4c88ob8Q8uSJz+ACGYgWkpNyaSzHGAd1c2yqNLbvaqtn5LfQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR04MB8105

On 27.10.2023 21:18, Andrew Cooper wrote:
> On 27/10/2023 2:47 pm, Roger Pau Monné wrote:
>> On Fri, Oct 27, 2023 at 09:12:40AM +0200, Jan Beulich wrote:
>>> On 26.10.2023 22:55, Andrew Cooper wrote:
>>>> We eventually want to be able to build a stripped down Xen for a single
>>>> platform.  Make a start with CONFIG_{AMD,INTEL} (hidden behind EXPERT, but
>>>> available to randconfig), and adjust the microcode logic.
>>>>
>>>> No practical 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>
>>>> CC: Alejandro Vallejo <alejandro.vallejo@cloud.com>
>>>> CC: Stefano Stabellini <stefano.stabellini@amd.com>
>>>> CC: Xenia Ragiadakou <xenia.ragiadakou@amd.com>
>>>>
>>>> I've intentionally ignored the other vendors for now.  They can be put into
>>>> Kconfig by whomever figures out the actual dependencies between their init
>>>> routines.
>>>>
>>>> v2:
>>>>  * Tweak text
>>> What about the indentation issues mentioned in reply to v1?
>>>
>>> As to using un-amended AMD and INTEL - Roger, what's your view here?
>> I think it would be good to add a suffix, like we do for
>> {AMD,INTEL}_IOMMU options, and reserve the plain AMD and INTEL options
>> as platform/system level options that enable both VENDOR_{CPU,IOMMU}
>> sub options.
>>
>> So yes, {INTEL,AMD}_CPU seems a good option.
> 
> Really?  You do realise that, unlike the IOMMU names, this is going to
> be plastered all over the Makefiles and header files?
> 
> And it breaks the careful attempt not to use the ambigous term when
> describing what the symbol means.

I wonder what you mean here: Describing what the symbol means is all
done in plain text, i.e. independent of the symbol name.

> I'll send out a v2.5 so you can see it in context, but I'm going to say
> straight up - I think this is a mistake.

So in the longer run perhaps we want CONFIG_{AMD,INTEL} _and_
CONFIG_{AMD,INTEL}_CPU? The former mainly to control the defaults of
CONFIG_{AMD,INTEL}_{CPU,IOMMU} (could also be viewed as kind of a
shorthand)?

Jan


From xen-devel-bounces@lists.xenproject.org Mon Oct 30 09:07:16 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 09:07:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.624996.973800 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxOEm-0006wX-HB; Mon, 30 Oct 2023 09:07:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 624996.973800; Mon, 30 Oct 2023 09: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 1qxOEm-0006wQ-EQ; Mon, 30 Oct 2023 09:07:08 +0000
Received: by outflank-mailman (input) for mailman id 624996;
 Mon, 30 Oct 2023 09: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=3VkP=GM=cloud.com=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qxOEk-0006wK-KP
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 09:07:06 +0000
Received: from mail-wm1-x331.google.com (mail-wm1-x331.google.com
 [2a00:1450:4864:20::331])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id b193c07f-7703-11ee-9b0e-b553b5be7939;
 Mon, 30 Oct 2023 10:07:04 +0100 (CET)
Received: by mail-wm1-x331.google.com with SMTP id
 5b1f17b1804b1-408002b5b9fso30893225e9.3
 for <xen-devel@lists.xenproject.org>; Mon, 30 Oct 2023 02:07:04 -0700 (PDT)
Received: from localhost ([213.195.118.109]) by smtp.gmail.com with ESMTPSA id
 g12-20020a05600c310c00b004068e09a70bsm8676984wmo.31.2023.10.30.02.07.03
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 30 Oct 2023 02:07: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: b193c07f-7703-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1698656824; x=1699261624; 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=Ad+HV3FtCgbWljPIOnt+yLczS1BYmPVE7tR5BX9B+eY=;
        b=cQh1DRam0MFIGG2/bf2nK1v3ZYrtahwdfxDbwktC2O+4m6gOjFwPMOC7egXSU1TX0r
         mwCTDaptzI6OGvl1y0zuqeGmYCWt5l68k4Ub5lPEoD6aV+knloGK+o45Jba54mczZhJn
         dUARA+Vh8NQkXfM6syH5/UpeuM+tiyWpGbu+0=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698656824; x=1699261624;
        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=Ad+HV3FtCgbWljPIOnt+yLczS1BYmPVE7tR5BX9B+eY=;
        b=lAhuUqpYoYgIcYNckJfXWs8MEed2UDV8pNWR7JUxA46by5KHuQexiYusIByuRRpn3/
         geBlKSHNR5JuSX/CjkXUu1ZkgVCLPgXyCKZgcXxyzsPPE6UbpmiSnzlD3dI4xLqxnSP+
         pklSFSc1Ex52E7QAesNHjTY4dOjYEpYOhszXGFMDO7R+c1CBp0JbNha2T34GdfBznnYL
         M0OhnceJXrz+flED/1JFPyaoKVI/V77oAwpneEkWsN0ur5HeHW+qYU/1qyINFjKHcKpL
         +QNW0khmqmjpNfu0Y2FwpXXY2Zjx2vQpEWYb7U8ibJmyOe1gOSMbU7kN6UJADTMVu0Hp
         HbYw==
X-Gm-Message-State: AOJu0YycQ7P7EagXZpxPXm24Lc7zPXmmvREYmTZIQFiBPydLWQJAAaT/
	7TE/r7zlO6VJgxAaldjjSD2QAw==
X-Google-Smtp-Source: AGHT+IHrOuG5qYldbexv+tLazIKmt1ZHbRlKkwYtmoUSwLWTfNxBG9QF4OP9CnW5ek70ia8e2oqc7A==
X-Received: by 2002:a05:600c:1913:b0:409:351:873d with SMTP id j19-20020a05600c191300b004090351873dmr8162640wmq.31.1698656823892;
        Mon, 30 Oct 2023 02:07:03 -0700 (PDT)
Date: Mon, 30 Oct 2023 10:07:02 +0100
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: Jan Beulich <jbeulich@suse.com>, Wei Liu <wl@xen.org>,
	Alejandro Vallejo <alejandro.vallejo@cloud.com>,
	Stefano Stabellini <stefano.stabellini@amd.com>,
	Xenia Ragiadakou <xenia.ragiadakou@amd.com>,
	Xen-devel <xen-devel@lists.xenproject.org>
Subject: Re: [PATCH v2 2/2] x86/Kconfig: Introduce CONFIG_{AMD,INTEL} and
 conditionalise ucode
Message-ID: <ZT9yNrdoCKZs3_uY@macbook>
References: <20231026205539.3261811-1-andrew.cooper3@citrix.com>
 <20231026205539.3261811-3-andrew.cooper3@citrix.com>
 <70472259-6429-e60f-7cdc-faa50b2d257f@suse.com>
 <ZTu_WxdWTrthCs4m@macbook>
 <997218cb-b1d3-4fa8-a098-10849a54c592@citrix.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <997218cb-b1d3-4fa8-a098-10849a54c592@citrix.com>

On Fri, Oct 27, 2023 at 08:18:18PM +0100, Andrew Cooper wrote:
> On 27/10/2023 2:47 pm, Roger Pau Monné wrote:
> > On Fri, Oct 27, 2023 at 09:12:40AM +0200, Jan Beulich wrote:
> >> On 26.10.2023 22:55, Andrew Cooper wrote:
> >>> We eventually want to be able to build a stripped down Xen for a single
> >>> platform.  Make a start with CONFIG_{AMD,INTEL} (hidden behind EXPERT, but
> >>> available to randconfig), and adjust the microcode logic.
> >>>
> >>> No practical 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>
> >>> CC: Alejandro Vallejo <alejandro.vallejo@cloud.com>
> >>> CC: Stefano Stabellini <stefano.stabellini@amd.com>
> >>> CC: Xenia Ragiadakou <xenia.ragiadakou@amd.com>
> >>>
> >>> I've intentionally ignored the other vendors for now.  They can be put into
> >>> Kconfig by whomever figures out the actual dependencies between their init
> >>> routines.
> >>>
> >>> v2:
> >>>  * Tweak text
> >> What about the indentation issues mentioned in reply to v1?
> >>
> >> As to using un-amended AMD and INTEL - Roger, what's your view here?
> > I think it would be good to add a suffix, like we do for
> > {AMD,INTEL}_IOMMU options, and reserve the plain AMD and INTEL options
> > as platform/system level options that enable both VENDOR_{CPU,IOMMU}
> > sub options.
> >
> > So yes, {INTEL,AMD}_CPU seems a good option.
> 
> Really?  You do realise that, unlike the IOMMU names, this is going to
> be plastered all over the Makefiles and header files?

What's it different from using INTEL_CPU than just plain INTEL?  It's
still going to be plastered all over the Makefiles and header files.

> And it breaks the careful attempt not to use the ambigous term when
> describing what the symbol means.
> 
> I'll send out a v2.5 so you can see it in context, but I'm going to say
> straight up - I think this is a mistake.

My point is that we might want to reserve the top level names (iow:
CONFIG_INTEL, CONFIG_AMD, CONFIG_{VENDOR}) for system wide options
that enable both the CPU and the IOMMU code needed for the selected
vendor.

I'm happy to use a name different than {INTEL,AMD}_CPU for the vendor
CPU/platform code.

Alternatively, I would be fine to use CONFIG_{INTEL,AMD} as long as
the existing CONFIG_{AMD,INTEL}_IOMMU Kconfig options are made
dependent on the newly introduced CONFIG_{INTEL,AMD} options, so when
disabling CONFIG_AMD CONFIG_AMD_IOMMU also gets disabled.

Maybe that's already the intention of the suggested CONFIG_{AMD,INTEL}
and I'm missing the point.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Mon Oct 30 09:11:46 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 09:11:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625000.973810 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxOJF-0008OR-3e; Mon, 30 Oct 2023 09:11:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625000.973810; Mon, 30 Oct 2023 09: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 1qxOJF-0008OK-0M; Mon, 30 Oct 2023 09:11:45 +0000
Received: by outflank-mailman (input) for mailman id 625000;
 Mon, 30 Oct 2023 09:11: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=Nz7O=GM=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qxOJE-0008OE-Jl
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 09:11:44 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 57e6ee74-7704-11ee-98d6-6d05b1d4d9a1;
 Mon, 30 Oct 2023 10:11:43 +0100 (CET)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id DF1BF4EE0740;
 Mon, 30 Oct 2023 10:11:42 +0100 (CET)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 57e6ee74-7704-11ee-98d6-6d05b1d4d9a1
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>
Subject: [XEN PATCH][for-4.19 v5 3/8] x86: add asmlinkage macro to variables only used in asm code
Date: Mon, 30 Oct 2023 10:11:28 +0100
Message-Id: <9a157bace0442919d21a3379ab36938a8059ae8f.1698655374.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1698655374.git.nicola.vetrini@bugseng.com>
References: <cover.1698655374.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

To avoid a violation of MISRA C:2012 Rule 8.4, as permitted
by docs/misra/rules.rst.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
---
Changes in v3:
- Edited commit message
- Add two new variables
Changes in v5:
- Mark current_stack_pointer as a declaration.
- Use asmlinkage instead of SAF.
---
 xen/arch/x86/setup.c | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/xen/arch/x86/setup.c b/xen/arch/x86/setup.c
index a3d3f797bb1e..272fd6f2ad3c 100644
--- a/xen/arch/x86/setup.c
+++ b/xen/arch/x86/setup.c
@@ -75,7 +75,8 @@ static bool __initdata opt_invpcid = true;
 boolean_param("invpcid", opt_invpcid);
 bool __read_mostly use_invpcid;
 
-unsigned long __read_mostly cr4_pv32_mask;
+/* Only used in asm code and within this source file */
+asmlinkage unsigned long __read_mostly cr4_pv32_mask;
 
 /* **** Linux config option: propagated to domain0. */
 /* "acpi=off":    Sisables both ACPI table parsing and interpreter. */
@@ -146,14 +147,15 @@ cpumask_t __read_mostly cpu_present_map;
 
 unsigned long __read_mostly xen_phys_start;
 
-char __section(".init.bss.stack_aligned") __aligned(STACK_SIZE)
+/* Only used in asm code and within this source file */
+asmlinkage char __section(".init.bss.stack_aligned") __aligned(STACK_SIZE)
     cpu0_stack[STACK_SIZE];
 
 /* Used by the BSP/AP paths to find the higher half stack mapping to use. */
 void *stack_start = cpu0_stack + STACK_SIZE - sizeof(struct cpu_info);
 
 /* Used by the boot asm to stash the relocated multiboot info pointer. */
-unsigned int __initdata multiboot_ptr;
+asmlinkage unsigned int __initdata multiboot_ptr;
 
 struct cpuinfo_x86 __read_mostly boot_cpu_data = { 0, 0, 0, 0, -1 };
 
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Mon Oct 30 09:11:46 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 09:11:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625001.973820 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxOJG-0000CK-AG; Mon, 30 Oct 2023 09:11:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625001.973820; Mon, 30 Oct 2023 09: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 1qxOJG-0000C9-6d; Mon, 30 Oct 2023 09:11:46 +0000
Received: by outflank-mailman (input) for mailman id 625001;
 Mon, 30 Oct 2023 09:11: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=Nz7O=GM=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qxOJF-0008OE-9T
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 09:11:45 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 5863e9ff-7704-11ee-98d6-6d05b1d4d9a1;
 Mon, 30 Oct 2023 10:11:44 +0100 (CET)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id BACEA4EE0741;
 Mon, 30 Oct 2023 10:11:43 +0100 (CET)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 5863e9ff-7704-11ee-98d6-6d05b1d4d9a1
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>
Subject: [XEN PATCH][for-4.19 v5 4/8] x86/grant: switch included header to make declarations visible
Date: Mon, 30 Oct 2023 10:11:29 +0100
Message-Id: <f72d68c0097f407f4ea8cca191e6aafa80eeb5ef.1698655374.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1698655374.git.nicola.vetrini@bugseng.com>
References: <cover.1698655374.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The declarations for {create,replace}_grant_p2m_mapping are
not visible when these functions are defined, therefore the right
header needs to be included to allow them to be visible.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
Acked-by: Jan Beulich <jbeulich@suse.com>
---
Changes in v3:
- asm/paging.h can be replaced with mm-frame.h, because just the
  definition of mfn_t is needed.
---
 xen/arch/x86/hvm/grant_table.c             | 3 +--
 xen/arch/x86/include/asm/hvm/grant_table.h | 2 ++
 2 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/xen/arch/x86/hvm/grant_table.c b/xen/arch/x86/hvm/grant_table.c
index 30d51d54a949..afe449d8882c 100644
--- a/xen/arch/x86/hvm/grant_table.c
+++ b/xen/arch/x86/hvm/grant_table.c
@@ -9,8 +9,7 @@
 
 #include <xen/types.h>
 
-#include <public/grant_table.h>
-
+#include <asm/hvm/grant_table.h>
 #include <asm/p2m.h>
 
 int create_grant_p2m_mapping(uint64_t addr, mfn_t frame,
diff --git a/xen/arch/x86/include/asm/hvm/grant_table.h b/xen/arch/x86/include/asm/hvm/grant_table.h
index 33c1da1a25f3..01e23f79b8cf 100644
--- a/xen/arch/x86/include/asm/hvm/grant_table.h
+++ b/xen/arch/x86/include/asm/hvm/grant_table.h
@@ -10,6 +10,8 @@
 #ifndef __X86_HVM_GRANT_TABLE_H__
 #define __X86_HVM_GRANT_TABLE_H__
 
+#include <xen/mm-frame.h>
+
 #ifdef CONFIG_HVM
 
 int create_grant_p2m_mapping(uint64_t addr, mfn_t frame,
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Mon Oct 30 09:11:46 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 09:11:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625002.973824 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxOJG-0000EY-Iu; Mon, 30 Oct 2023 09:11:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625002.973824; Mon, 30 Oct 2023 09: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 1qxOJG-0000EF-E1; Mon, 30 Oct 2023 09:11:46 +0000
Received: by outflank-mailman (input) for mailman id 625002;
 Mon, 30 Oct 2023 09: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=Nz7O=GM=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qxOJF-0008Uy-L8
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 09:11:45 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 55f69ec4-7704-11ee-9b0e-b553b5be7939;
 Mon, 30 Oct 2023 10:11:40 +0100 (CET)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id ECF734EE073C;
 Mon, 30 Oct 2023 10:11:36 +0100 (CET)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 55f69ec4-7704-11ee-9b0e-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>,
	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>,
	Simone Ballarin <simone.ballarin@bugseng.com>,
	Doug Goldstein <cardoe@cardoe.com>,
	Jun Nakajima <jun.nakajima@intel.com>,
	Kevin Tian <kevin.tian@intel.com>,
	Tamas K Lengyel <tamas@tklengyel.com>,
	Alexandru Isaila <aisaila@bitdefender.com>,
	Petre Pircalabu <ppircalabu@bitdefender.com>
Subject: [XEN PATCH][for-4.19 v5 0/8] Fix or deviate various instances of missing declarations
Date: Mon, 30 Oct 2023 10:11:25 +0100
Message-Id: <cover.1698655374.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The patches in this series aim to fix or deviate various instances where a
function or variable do not have a declaration visible when such entity is
defined (in violation of MISRA C:2012 Rule 8.4).
An exception listed under docs/misra/rules.rst allows asm-only functions and
variables to be exempted, while the other instances are either changed
(e.g., making them static) or a missing header inclusion is added.

Nicola Vetrini (8):
  xen: modify or add declarations for variables where needed
  x86: add deviation for asm-only functions
  x86: add asmlinkage macro to variables only used in asm code
  x86/grant: switch included header to make declarations visible
  x86/vm_event: add missing include for hvm_vm_event_do_resume
  xen/console: remove stub definition in consoled.h
  x86/mem_access: make function static
  docs/misra: exclude three more files

 automation/eclair_analysis/ECLAIR/deviations.ecl |  9 +++++++++
 docs/misra/deviations.rst                        |  6 ++++++
 docs/misra/exclude-list.json                     | 12 ++++++++++++
 xen/arch/arm/include/asm/setup.h                 |  3 +++
 xen/arch/arm/include/asm/smp.h                   |  3 +++
 xen/arch/arm/platform_hypercall.c                |  2 +-
 xen/arch/x86/cpu/mcheck/mce.c                    |  7 ++++---
 xen/arch/x86/hvm/grant_table.c                   |  3 +--
 xen/arch/x86/hvm/svm/intr.c                      |  2 +-
 xen/arch/x86/hvm/svm/nestedsvm.c                 |  2 +-
 xen/arch/x86/hvm/svm/svm.c                       |  4 ++--
 xen/arch/x86/hvm/vm_event.c                      |  1 +
 xen/arch/x86/hvm/vmx/intr.c                      |  2 +-
 xen/arch/x86/hvm/vmx/vmx.c                       |  4 ++--
 xen/arch/x86/hvm/vmx/vvmx.c                      |  2 +-
 xen/arch/x86/include/asm/hvm/grant_table.h       |  2 ++
 xen/arch/x86/irq.c                               |  2 +-
 xen/arch/x86/mm/mem_access.c                     |  6 +++---
 xen/arch/x86/setup.c                             |  8 +++++---
 xen/arch/x86/traps.c                             |  2 +-
 xen/arch/x86/x86_64/traps.c                      |  2 +-
 xen/include/xen/compiler.h                       |  3 +++
 xen/include/xen/consoled.h                       |  7 -------
 xen/include/xen/symbols.h                        |  1 +
 24 files changed, 65 insertions(+), 30 deletions(-)

-- 
2.34.1


From xen-devel-bounces@lists.xenproject.org Mon Oct 30 09:11:48 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 09:11:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625003.973840 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxOJH-0000iU-Va; Mon, 30 Oct 2023 09:11:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625003.973840; Mon, 30 Oct 2023 09: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 1qxOJH-0000iN-Ra; Mon, 30 Oct 2023 09:11:47 +0000
Received: by outflank-mailman (input) for mailman id 625003;
 Mon, 30 Oct 2023 09: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=Nz7O=GM=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qxOJG-0008Uy-Ay
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 09:11:46 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 57985c5a-7704-11ee-9b0e-b553b5be7939;
 Mon, 30 Oct 2023 10:11:43 +0100 (CET)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id AA2C84EE073F;
 Mon, 30 Oct 2023 10:11:41 +0100 (CET)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 57985c5a-7704-11ee-9b0e-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>,
	Simone Ballarin <simone.ballarin@bugseng.com>,
	Doug Goldstein <cardoe@cardoe.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Julien Grall <julien@xen.org>,
	Wei Liu <wl@xen.org>,
	Jun Nakajima <jun.nakajima@intel.com>,
	Kevin Tian <kevin.tian@intel.com>
Subject: [XEN PATCH][for-4.19 v5 2/8] x86: add deviation for asm-only functions
Date: Mon, 30 Oct 2023 10:11:27 +0100
Message-Id: <79091a4e450b522aedfdd903ad671e705a933c49.1698655374.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1698655374.git.nicola.vetrini@bugseng.com>
References: <cover.1698655374.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

As stated in rules.rst, functions used only in asm modules
are allowed to have no prior declaration visible when being
defined, hence these functions are marked with an
'asmlinkage' macro, which is then deviated for MISRA C:2012
Rule 8.4.

'current_stack_pointer' in x86/asm_defns is a declaration, not a definition,
and is thus marked as safe for ECLAIR.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
---
Changes in v3:
- added SAF deviations for vmx counterparts to svm functions.
Changes in v5:
- drop SAF deviations in favour of the pseudo-attribute asmlinkage
---
 automation/eclair_analysis/ECLAIR/deviations.ecl | 9 +++++++++
 docs/misra/deviations.rst                        | 6 ++++++
 xen/arch/x86/hvm/svm/intr.c                      | 2 +-
 xen/arch/x86/hvm/svm/nestedsvm.c                 | 2 +-
 xen/arch/x86/hvm/svm/svm.c                       | 4 ++--
 xen/arch/x86/hvm/vmx/intr.c                      | 2 +-
 xen/arch/x86/hvm/vmx/vmx.c                       | 4 ++--
 xen/arch/x86/hvm/vmx/vvmx.c                      | 2 +-
 xen/arch/x86/traps.c                             | 2 +-
 xen/arch/x86/x86_64/traps.c                      | 2 +-
 xen/include/xen/compiler.h                       | 3 +++
 11 files changed, 28 insertions(+), 10 deletions(-)

diff --git a/automation/eclair_analysis/ECLAIR/deviations.ecl b/automation/eclair_analysis/ECLAIR/deviations.ecl
index fa56e5c00a27..28369174458d 100644
--- a/automation/eclair_analysis/ECLAIR/deviations.ecl
+++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
@@ -163,6 +163,15 @@ Therefore the absence of prior declarations is safe."
 -config=MC3R1.R8.4,reports+={safe, "first_area(any_loc(file(gcov)))"}
 -doc_end
 
+-doc_begin="Recognize the occurrence of current_stack_pointer as a declaration."
+-file_tag+={asm_defns, "^xen/arch/x86/include/asm/asm_defns\\.h$"}
+-config=MC3R1.R8.4,declarations+={safe, "loc(file(asm_defns))&&^current_stack_pointer$"}
+-doc_end
+
+-doc_begin="asmlinkage is a marker to indicate that the function is only used from asm modules."
+-config=MC3R1.R8.4,declarations+={safe,"loc(text(^.*asmlinkage.*$, -1..0))"}
+-doc_end
+
 -doc_begin="The following variables are compiled in multiple translation units
 belonging to different executables and therefore are safe."
 -config=MC3R1.R8.6,declarations+={safe, "name(current_stack_pointer||bsearch||sort)"}
diff --git a/docs/misra/deviations.rst b/docs/misra/deviations.rst
index 8511a189253b..d468da2f5ce9 100644
--- a/docs/misra/deviations.rst
+++ b/docs/misra/deviations.rst
@@ -133,6 +133,12 @@ Deviations related to MISRA C:2012 Rules:
        configuration. Therefore, the absence of prior declarations is safe.
      - Tagged as `safe` for ECLAIR.
 
+   * - R8.4
+     - Functions and variables used only by asm modules are either marked with
+       the `asmlinkage` macro or with a SAF-1-safe textual deviation
+       (see safe.json).
+     - Tagged as `safe` for ECLAIR.
+
    * - R8.6
      - The following variables are compiled in multiple translation units
        belonging to different executables and therefore are safe.
diff --git a/xen/arch/x86/hvm/svm/intr.c b/xen/arch/x86/hvm/svm/intr.c
index 192e17ebbfbb..34e5ff886e47 100644
--- a/xen/arch/x86/hvm/svm/intr.c
+++ b/xen/arch/x86/hvm/svm/intr.c
@@ -123,7 +123,7 @@ static void svm_enable_intr_window(struct vcpu *v, struct hvm_intack intack)
         vmcb, general1_intercepts | GENERAL1_INTERCEPT_VINTR);
 }
 
-void svm_intr_assist(void)
+asmlinkage void svm_intr_assist(void)
 {
     struct vcpu *v = current;
     struct vmcb_struct *vmcb = v->arch.hvm.svm.vmcb;
diff --git a/xen/arch/x86/hvm/svm/nestedsvm.c b/xen/arch/x86/hvm/svm/nestedsvm.c
index a09b6abaaeaf..222dfbe28781 100644
--- a/xen/arch/x86/hvm/svm/nestedsvm.c
+++ b/xen/arch/x86/hvm/svm/nestedsvm.c
@@ -1441,7 +1441,7 @@ nestedsvm_vcpu_vmexit(struct vcpu *v, struct cpu_user_regs *regs,
 }
 
 /* VCPU switch */
-void nsvm_vcpu_switch(void)
+asmlinkage void nsvm_vcpu_switch(void)
 {
     struct cpu_user_regs *regs = guest_cpu_user_regs();
     struct vcpu *v = current;
diff --git a/xen/arch/x86/hvm/svm/svm.c b/xen/arch/x86/hvm/svm/svm.c
index 24c417ca7199..c1d83fe8af70 100644
--- a/xen/arch/x86/hvm/svm/svm.c
+++ b/xen/arch/x86/hvm/svm/svm.c
@@ -1056,7 +1056,7 @@ static void noreturn cf_check svm_do_resume(void)
     reset_stack_and_jump(svm_asm_do_resume);
 }
 
-void svm_vmenter_helper(void)
+asmlinkage void svm_vmenter_helper(void)
 {
     const struct cpu_user_regs *regs = guest_cpu_user_regs();
     struct vcpu *curr = current;
@@ -2586,7 +2586,7 @@ const struct hvm_function_table * __init start_svm(void)
     return &svm_function_table;
 }
 
-void svm_vmexit_handler(void)
+asmlinkage void svm_vmexit_handler(void)
 {
     struct cpu_user_regs *regs = guest_cpu_user_regs();
     uint64_t exit_reason;
diff --git a/xen/arch/x86/hvm/vmx/intr.c b/xen/arch/x86/hvm/vmx/intr.c
index fd719c4c01d2..4f2ac1db3e83 100644
--- a/xen/arch/x86/hvm/vmx/intr.c
+++ b/xen/arch/x86/hvm/vmx/intr.c
@@ -224,7 +224,7 @@ void vmx_sync_exit_bitmap(struct vcpu *v)
     }
 }
 
-void vmx_intr_assist(void)
+asmlinkage void vmx_intr_assist(void)
 {
     struct hvm_intack intack;
     struct vcpu *v = current;
diff --git a/xen/arch/x86/hvm/vmx/vmx.c b/xen/arch/x86/hvm/vmx/vmx.c
index 1edc7f1e919f..af7e4e997c75 100644
--- a/xen/arch/x86/hvm/vmx/vmx.c
+++ b/xen/arch/x86/hvm/vmx/vmx.c
@@ -4035,7 +4035,7 @@ static void undo_nmis_unblocked_by_iret(void)
               guest_info | VMX_INTR_SHADOW_NMI);
 }
 
-void vmx_vmexit_handler(struct cpu_user_regs *regs)
+asmlinkage void vmx_vmexit_handler(struct cpu_user_regs *regs)
 {
     unsigned long exit_qualification, exit_reason, idtv_info, intr_info = 0;
     unsigned int vector = 0;
@@ -4787,7 +4787,7 @@ static void lbr_fixup(void)
 }
 
 /* Returns false if the vmentry has to be restarted */
-bool vmx_vmenter_helper(const struct cpu_user_regs *regs)
+asmlinkage bool vmx_vmenter_helper(const struct cpu_user_regs *regs)
 {
     struct vcpu *curr = current;
     struct domain *currd = curr->domain;
diff --git a/xen/arch/x86/hvm/vmx/vvmx.c b/xen/arch/x86/hvm/vmx/vvmx.c
index 16b0ef82b6c8..f234057b88ae 100644
--- a/xen/arch/x86/hvm/vmx/vvmx.c
+++ b/xen/arch/x86/hvm/vmx/vvmx.c
@@ -1490,7 +1490,7 @@ static void nvmx_eptp_update(void)
     __vmwrite(EPT_POINTER, get_shadow_eptp(curr));
 }
 
-void nvmx_switch_guest(void)
+asmlinkage void nvmx_switch_guest(void)
 {
     struct vcpu *v = current;
     struct nestedvcpu *nvcpu = &vcpu_nestedhvm(v);
diff --git a/xen/arch/x86/traps.c b/xen/arch/x86/traps.c
index e1356f696aba..b516da7b80f0 100644
--- a/xen/arch/x86/traps.c
+++ b/xen/arch/x86/traps.c
@@ -2265,7 +2265,7 @@ void asm_domain_crash_synchronous(unsigned long addr)
 }
 
 #ifdef CONFIG_DEBUG
-void check_ist_exit(const struct cpu_user_regs *regs, bool ist_exit)
+asmlinkage 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) |
diff --git a/xen/arch/x86/x86_64/traps.c b/xen/arch/x86/x86_64/traps.c
index e03e80813e36..ab5959daa887 100644
--- a/xen/arch/x86/x86_64/traps.c
+++ b/xen/arch/x86/x86_64/traps.c
@@ -266,7 +266,7 @@ void show_page_walk(unsigned long addr)
            l1_table_offset(addr), l1e_get_intpte(l1e), pfn);
 }
 
-void do_double_fault(struct cpu_user_regs *regs)
+asmlinkage void do_double_fault(struct cpu_user_regs *regs)
 {
     unsigned int cpu;
     unsigned long crs[8];
diff --git a/xen/include/xen/compiler.h b/xen/include/xen/compiler.h
index dd99e573083f..39d696176f3d 100644
--- a/xen/include/xen/compiler.h
+++ b/xen/include/xen/compiler.h
@@ -159,6 +159,9 @@
 # define ASM_FLAG_OUT(yes, no) no
 #endif
 
+/* Mark a function or variable as used only from asm */
+#define asmlinkage
+
 /*
  * NB: we need to disable the gcc-compat warnings for clang in some places or
  * else it will complain with: "'break' is bound to loop, GCC binds it to
-- 
2.34.1


From xen-devel-bounces@lists.xenproject.org Mon Oct 30 09:11:48 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 09:11:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625004.973846 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxOJI-0000md-Cq; Mon, 30 Oct 2023 09:11:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625004.973846; Mon, 30 Oct 2023 09: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 1qxOJI-0000lH-5f; Mon, 30 Oct 2023 09:11:48 +0000
Received: by outflank-mailman (input) for mailman id 625004;
 Mon, 30 Oct 2023 09: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=Nz7O=GM=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qxOJH-0008Uy-B4
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 09:11:47 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 56de55e3-7704-11ee-9b0e-b553b5be7939;
 Mon, 30 Oct 2023 10:11:41 +0100 (CET)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id 2AE1D4EE073E;
 Mon, 30 Oct 2023 10:11:40 +0100 (CET)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 56de55e3-7704-11ee-9b0e-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>,
	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>
Subject: [XEN PATCH][for-4.19 v5 1/8] xen: modify or add declarations for variables where needed
Date: Mon, 30 Oct 2023 10:11:26 +0100
Message-Id: <03ff750e9580c2de8ce3d1211562a03f663d678c.1698655374.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1698655374.git.nicola.vetrini@bugseng.com>
References: <cover.1698655374.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Some variables with external linkage used in C code do not have
a visible declaration where they are defined. Other variables
can be made static, thereby eliminating the need for a declaration.
Doing so also resolves violations of MISRA C:2012 Rule 8.4.

Fix typo s/mcinfo_dumpped/mcinfo_dumped/ while making
the variable static.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
Acked-by: Jan Beulich <jbeulich@suse.com>
---
Jan's ack is for the x86 part, but no other concerns have been
raised for the arm files.

Changes in v2:
- make xenpf_lock static on ARM
Changes in v3:
- moved back code from symbols.h to symbols.c
- dropped two declarations, now deviated
Changes in v4:
- revise commit message
---
 xen/arch/arm/include/asm/setup.h  | 3 +++
 xen/arch/arm/include/asm/smp.h    | 3 +++
 xen/arch/arm/platform_hypercall.c | 2 +-
 xen/arch/x86/cpu/mcheck/mce.c     | 7 ++++---
 xen/arch/x86/irq.c                | 2 +-
 xen/include/xen/symbols.h         | 1 +
 6 files changed, 13 insertions(+), 5 deletions(-)

diff --git a/xen/arch/arm/include/asm/setup.h b/xen/arch/arm/include/asm/setup.h
index 98af6f55f5a0..2a2d6114f2eb 100644
--- a/xen/arch/arm/include/asm/setup.h
+++ b/xen/arch/arm/include/asm/setup.h
@@ -184,9 +184,12 @@ int map_range_to_domain(const struct dt_device_node *dev,
 extern lpae_t boot_pgtable[XEN_PT_LPAE_ENTRIES];
 
 #ifdef CONFIG_ARM_64
+extern lpae_t boot_first[XEN_PT_LPAE_ENTRIES];
 extern lpae_t boot_first_id[XEN_PT_LPAE_ENTRIES];
 #endif
+extern lpae_t boot_second[XEN_PT_LPAE_ENTRIES];
 extern lpae_t boot_second_id[XEN_PT_LPAE_ENTRIES];
+extern lpae_t boot_third[XEN_PT_LPAE_ENTRIES * XEN_NR_ENTRIES(2)];
 extern lpae_t boot_third_id[XEN_PT_LPAE_ENTRIES];
 
 /* Find where Xen will be residing at runtime and return a PT entry */
diff --git a/xen/arch/arm/include/asm/smp.h b/xen/arch/arm/include/asm/smp.h
index 4fabdf5310d8..28bf24a01d95 100644
--- a/xen/arch/arm/include/asm/smp.h
+++ b/xen/arch/arm/include/asm/smp.h
@@ -6,6 +6,9 @@
 #include <asm/current.h>
 #endif
 
+extern struct init_info init_data;
+extern unsigned long smp_up_cpu;
+
 DECLARE_PER_CPU(cpumask_var_t, cpu_sibling_mask);
 DECLARE_PER_CPU(cpumask_var_t, cpu_core_mask);
 
diff --git a/xen/arch/arm/platform_hypercall.c b/xen/arch/arm/platform_hypercall.c
index 743687a30390..fde4bc3e5809 100644
--- a/xen/arch/arm/platform_hypercall.c
+++ b/xen/arch/arm/platform_hypercall.c
@@ -17,7 +17,7 @@
 #include <asm/current.h>
 #include <asm/event.h>
 
-DEFINE_SPINLOCK(xenpf_lock);
+static DEFINE_SPINLOCK(xenpf_lock);
 
 long do_platform_op(XEN_GUEST_HANDLE_PARAM(xen_platform_op_t) u_xenpf_op)
 {
diff --git a/xen/arch/x86/cpu/mcheck/mce.c b/xen/arch/x86/cpu/mcheck/mce.c
index 6141b7eb9cf1..779a458cd88f 100644
--- a/xen/arch/x86/cpu/mcheck/mce.c
+++ b/xen/arch/x86/cpu/mcheck/mce.c
@@ -1682,13 +1682,14 @@ long do_mca(XEN_GUEST_HANDLE_PARAM(xen_mc_t) u_xen_mc)
     return ret;
 }
 
-int mcinfo_dumpped;
+static int mcinfo_dumped;
+
 static int cf_check x86_mcinfo_dump_panic(mctelem_cookie_t mctc)
 {
     struct mc_info *mcip = mctelem_dataptr(mctc);
 
     x86_mcinfo_dump(mcip);
-    mcinfo_dumpped++;
+    mcinfo_dumped++;
 
     return 0;
 }
@@ -1702,7 +1703,7 @@ static void mc_panic_dump(void)
     for_each_online_cpu(cpu)
         mctelem_process_deferred(cpu, x86_mcinfo_dump_panic,
                                  mctelem_has_deferred_lmce(cpu));
-    dprintk(XENLOG_ERR, "End dump mc_info, %x mcinfo dumped\n", mcinfo_dumpped);
+    dprintk(XENLOG_ERR, "End dump mc_info, %x mcinfo dumped\n", mcinfo_dumped);
 }
 
 void mc_panic(const char *s)
diff --git a/xen/arch/x86/irq.c b/xen/arch/x86/irq.c
index f42ad539dcd5..ecd67f7f8416 100644
--- a/xen/arch/x86/irq.c
+++ b/xen/arch/x86/irq.c
@@ -43,7 +43,7 @@ int __read_mostly opt_irq_vector_map = OPT_IRQ_VECTOR_MAP_DEFAULT;
 static unsigned char __read_mostly irq_max_guests;
 integer_param("irq-max-guests", irq_max_guests);
 
-vmask_t global_used_vector_map;
+static vmask_t global_used_vector_map;
 
 struct irq_desc __read_mostly *irq_desc = NULL;
 
diff --git a/xen/include/xen/symbols.h b/xen/include/xen/symbols.h
index 20bbb28ef226..1b2863663aa0 100644
--- a/xen/include/xen/symbols.h
+++ b/xen/include/xen/symbols.h
@@ -33,4 +33,5 @@ struct symbol_offset {
     uint32_t stream; /* .. in the compressed stream.*/
     uint32_t addr;   /* .. and in the fixed size address array. */
 };
+
 #endif /*_XEN_SYMBOLS_H*/
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Mon Oct 30 09:11:49 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 09:11:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625005.973860 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxOJJ-0001DY-Ml; Mon, 30 Oct 2023 09:11:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625005.973860; Mon, 30 Oct 2023 09: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 1qxOJJ-0001Cs-H7; Mon, 30 Oct 2023 09:11:49 +0000
Received: by outflank-mailman (input) for mailman id 625005;
 Mon, 30 Oct 2023 09: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=Nz7O=GM=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qxOJI-0008Uy-BG
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 09:11:48 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 592558fd-7704-11ee-9b0e-b553b5be7939;
 Mon, 30 Oct 2023 10:11:45 +0100 (CET)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id 89B164EE0744;
 Mon, 30 Oct 2023 10:11:44 +0100 (CET)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 592558fd-7704-11ee-9b0e-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>,
	Tamas K Lengyel <tamas@tklengyel.com>,
	Alexandru Isaila <aisaila@bitdefender.com>,
	Petre Pircalabu <ppircalabu@bitdefender.com>,
	Wei Liu <wl@xen.org>
Subject: [XEN PATCH][for-4.19 v5 5/8] x86/vm_event: add missing include for hvm_vm_event_do_resume
Date: Mon, 30 Oct 2023 10:11:30 +0100
Message-Id: <8d5a53856c637b0fbc2742f8da94fcdddd07308f.1698655374.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1698655374.git.nicola.vetrini@bugseng.com>
References: <cover.1698655374.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The missing header makes the declaration visible when the function
is defined, thereby fixing a violation of MISRA C:2012 Rule 8.4.

Fixes: 1366a0e76db6 ("x86/vm_event: add hvm/vm_event.{h,c}")
Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
Acked-by: Tamas K Lengyel <tamas@tklengyel.com>
---
 xen/arch/x86/hvm/vm_event.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/xen/arch/x86/hvm/vm_event.c b/xen/arch/x86/hvm/vm_event.c
index 3b064bcfade5..c1af230e7aed 100644
--- a/xen/arch/x86/hvm/vm_event.c
+++ b/xen/arch/x86/hvm/vm_event.c
@@ -24,6 +24,7 @@
 #include <xen/vm_event.h>
 #include <asm/hvm/emulate.h>
 #include <asm/hvm/support.h>
+#include <asm/hvm/vm_event.h>
 #include <asm/vm_event.h>
 
 static void hvm_vm_event_set_registers(const struct vcpu *v)
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Mon Oct 30 09:11:51 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 09:11:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625006.973870 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxOJK-0001Vn-UV; Mon, 30 Oct 2023 09:11:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625006.973870; Mon, 30 Oct 2023 09: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 1qxOJK-0001Ut-Po; Mon, 30 Oct 2023 09:11:50 +0000
Received: by outflank-mailman (input) for mailman id 625006;
 Mon, 30 Oct 2023 09:11: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=Nz7O=GM=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qxOJJ-0008OE-7M
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 09:11:49 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 5ad9684f-7704-11ee-98d6-6d05b1d4d9a1;
 Mon, 30 Oct 2023 10:11:48 +0100 (CET)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id BD8B64EE0C81;
 Mon, 30 Oct 2023 10:11:47 +0100 (CET)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 5ad9684f-7704-11ee-98d6-6d05b1d4d9a1
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>
Subject: [XEN PATCH][for-4.19 v5 8/8] docs/misra: exclude three more files
Date: Mon, 30 Oct 2023 10:11:33 +0100
Message-Id: <87000126f64cb4d8acc0351be08b9aabbbac7d56.1698655374.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1698655374.git.nicola.vetrini@bugseng.com>
References: <cover.1698655374.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

These files should not conform to MISRA guidelines at the moment,
therefore they are added to the exclusion list.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
---
These exclusions are automatically picked up by ECLAIR's automation
to hide reports originating from these files.

Changes in v4:
- Fixed typo
---
 docs/misra/exclude-list.json | 12 ++++++++++++
 1 file changed, 12 insertions(+)

diff --git a/docs/misra/exclude-list.json b/docs/misra/exclude-list.json
index 575ed22a7f67..b858a0baa106 100644
--- a/docs/misra/exclude-list.json
+++ b/docs/misra/exclude-list.json
@@ -145,6 +145,10 @@
             "rel_path": "common/zstd/*",
             "comment": "Imported from Linux, ignore for now"
         },
+        {
+            "rel_path": "common/symbols-dummy.c",
+            "comment": "The resulting code is not included in the final Xen binary, ignore for now"
+        },
         {
             "rel_path": "crypto/*",
             "comment": "Origin is external and documented in crypto/README.source"
@@ -189,6 +193,14 @@
             "rel_path": "include/acpi/acpixf.h",
             "comment": "Imported from Linux, ignore for now"
         },
+        {
+          "rel_path": "include/acpi/acexcep.h",
+          "comment": "Imported from Linux, ignore for now"
+        },
+        {
+          "rel_path": "include/acpi/acglobal.h",
+          "comment": "Imported from Linux, ignore for now"
+        },
         {
             "rel_path": "include/xen/acpi.h",
             "comment": "Imported from Linux, ignore for now"
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Mon Oct 30 09:11:51 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 09:11:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625007.973874 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxOJL-0001a0-94; Mon, 30 Oct 2023 09:11:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625007.973874; Mon, 30 Oct 2023 09: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 1qxOJL-0001Z3-2h; Mon, 30 Oct 2023 09:11:51 +0000
Received: by outflank-mailman (input) for mailman id 625007;
 Mon, 30 Oct 2023 09: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=Nz7O=GM=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qxOJJ-0008Uy-BK
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 09:11:49 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 59c79713-7704-11ee-9b0e-b553b5be7939;
 Mon, 30 Oct 2023 10:11:46 +0100 (CET)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id 8157F4EE0747;
 Mon, 30 Oct 2023 10:11:45 +0100 (CET)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 59c79713-7704-11ee-9b0e-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>
Subject: [XEN PATCH][for-4.19 v5 6/8] xen/console: remove stub definition in consoled.h
Date: Mon, 30 Oct 2023 10:11:31 +0100
Message-Id: <9328cc486244bfd3868525fd5ee579b73dca48df.1698655374.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1698655374.git.nicola.vetrini@bugseng.com>
References: <cover.1698655374.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The stub  definition of 'consoled_guest_tx' can be removed, since its
its single caller uses the implementation built with PV_SHIM enabled.

Fixes: 5ef49f185c2d ("x86/pv-shim: shadow PV console's page for L2 DomU")
Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
---
 xen/include/xen/consoled.h | 7 -------
 1 file changed, 7 deletions(-)

diff --git a/xen/include/xen/consoled.h b/xen/include/xen/consoled.h
index fd5d220a8aca..2b30516b3a0a 100644
--- a/xen/include/xen/consoled.h
+++ b/xen/include/xen/consoled.h
@@ -3,18 +3,11 @@
 
 #include <public/io/console.h>
 
-#ifdef CONFIG_PV_SHIM
-
 void consoled_set_ring_addr(struct xencons_interface *ring);
 struct xencons_interface *consoled_get_ring_addr(void);
 size_t consoled_guest_rx(void);
 size_t consoled_guest_tx(char c);
 
-#else
-
-size_t consoled_guest_tx(char c) { return 0; }
-
-#endif /* !CONFIG_PV_SHIM */
 #endif /* __XEN_CONSOLED_H__ */
 /*
  * Local variables:
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Mon Oct 30 09:11:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 09:11:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625008.973888 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxOJM-0001zV-Ix; Mon, 30 Oct 2023 09:11:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625008.973888; Mon, 30 Oct 2023 09: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 1qxOJM-0001yG-E3; Mon, 30 Oct 2023 09:11:52 +0000
Received: by outflank-mailman (input) for mailman id 625008;
 Mon, 30 Oct 2023 09: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=Nz7O=GM=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qxOJL-0008Uy-TI
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 09:11:51 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 5a7aafa7-7704-11ee-9b0e-b553b5be7939;
 Mon, 30 Oct 2023 10:11:47 +0100 (CET)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id 92C2C4EE074E;
 Mon, 30 Oct 2023 10:11:46 +0100 (CET)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 5a7aafa7-7704-11ee-9b0e-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>,
	Tamas K Lengyel <tamas@tklengyel.com>,
	Alexandru Isaila <aisaila@bitdefender.com>,
	Petre Pircalabu <ppircalabu@bitdefender.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Wei Liu <wl@xen.org>
Subject: [XEN PATCH][for-4.19 v5 7/8] x86/mem_access: make function static
Date: Mon, 30 Oct 2023 10:11:32 +0100
Message-Id: <819cdbf2c7d1c3aff771a871aa5a00124f4883c6.1698655374.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1698655374.git.nicola.vetrini@bugseng.com>
References: <cover.1698655374.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The function is used only within this file, and therefore can be static.

No functional change.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
Acked-by: Tamas K Lengyel <tamas@tklengyel.com>
---
Changes in v3:
- style fix
---
 xen/arch/x86/mm/mem_access.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/xen/arch/x86/mm/mem_access.c b/xen/arch/x86/mm/mem_access.c
index 3449e0ee85ff..60a0cce68aa3 100644
--- a/xen/arch/x86/mm/mem_access.c
+++ b/xen/arch/x86/mm/mem_access.c
@@ -249,9 +249,9 @@ bool p2m_mem_access_check(paddr_t gpa, unsigned long gla,
     return (p2ma != p2m_access_n2rwx);
 }
 
-int p2m_set_altp2m_mem_access(struct domain *d, struct p2m_domain *hp2m,
-                              struct p2m_domain *ap2m, p2m_access_t a,
-                              gfn_t gfn)
+static int p2m_set_altp2m_mem_access(struct domain *d, struct p2m_domain *hp2m,
+                                     struct p2m_domain *ap2m, p2m_access_t a,
+                                     gfn_t gfn)
 {
     mfn_t mfn;
     p2m_type_t t;
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Mon Oct 30 09:43:08 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 09:43:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625049.973900 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxOnN-0000gT-EU; Mon, 30 Oct 2023 09:42:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625049.973900; Mon, 30 Oct 2023 09: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 1qxOnN-0000gM-AM; Mon, 30 Oct 2023 09:42:53 +0000
Received: by outflank-mailman (input) for mailman id 625049;
 Mon, 30 Oct 2023 09:42: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=8Ooz=GM=bounce.vates.tech=bounce-md_30504962.653f7a97.v1-ecab575db48a446ab11c8dcd4b8e7f2c@srs-se1.protection.inumbo.net>)
 id 1qxOnL-0000gG-Qz
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 09:42:52 +0000
Received: from mail137-22.atl71.mandrillapp.com
 (mail137-22.atl71.mandrillapp.com [198.2.137.22])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id afb1032d-7708-11ee-9b0e-b553b5be7939;
 Mon, 30 Oct 2023 10:42:49 +0100 (CET)
Received: from pmta07.mandrill.prod.atl01.rsglab.com (localhost [127.0.0.1])
 by mail137-22.atl71.mandrillapp.com (Mailchimp) with ESMTP id
 4SJpGc02FwzFCWZZZ
 for <xen-devel@lists.xenproject.org>; Mon, 30 Oct 2023 09:42:48 +0000 (GMT)
Received: from [37.26.189.201] by mandrillapp.com id
 ecab575db48a446ab11c8dcd4b8e7f2c; Mon, 30 Oct 2023 09:42: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: afb1032d-7708-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=vates.tech;
	s=mandrill; t=1698658968; x=1698919468;
	i=vaishali.thakkar@vates.tech;
	bh=27kZKJ+F0MRA8fErAYHLDoQcxLR9bNNuPu5Or1KKmHM=;
	h=From:Subject:Message-Id:To:Cc:Feedback-ID:Date:MIME-Version:
	 Content-Type:Content-Transfer-Encoding:CC:Date:Subject:From;
	b=Y0o3cTJYDHgjAUzLOrn2Ed24icOHCyBET24wpf/kJsEKGymvxMz0V5QiL8AwyRlVt
	 pnWR7erOrUhnGkZ1vaiAo2Tg4E2QHxUGslGDx82sguBnCTAOZdoZ9ASwUJleUyqlxR
	 4jmiaC4xUOSAuwHoMhyJQclglRuugHjWqirYf5nA=
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=mandrillapp.com;
 i=@mandrillapp.com; q=dns/txt; s=mandrill; t=1698658967; h=from :
 subject : message-id : to : cc : date : mime-version : content-type :
 content-transfer-encoding : from : x-mandrill-user : list-unsubscribe;
 bh=27kZKJ+F0MRA8fErAYHLDoQcxLR9bNNuPu5Or1KKmHM=;
 b=JLzk6lBhwnqEX8Dfvvb3z50M7guHCcVA8sSuyBs6OAD5fi9OmXVAYMqLOCbRmprwRdjrY
 80es8qkjuPLpa2QdQj4IJSMKnOCzf1NhJOjDaHW5EvZR+4+DykPFIQI3rp/UHzMTOoKXK4H
 mhlsgrbNRIVo4FxLP0a2dDbK8mPHDvs=
From: Vaishali Thakkar <vaishali.thakkar@vates.tech>
Subject: =?utf-8?Q?AMD=20SEV=20Enablement=20plans=20in=20Xen?=
X-Bm-Milter-Handled: a6f8c62a-75f8-4756-90d1-92e0b788484c
X-Bm-Transport-Timestamp: 1698658967179
Message-Id: <1dceb501-1502-4621-a6c6-5e9e90e20280@vates.tech>
To: xen-devel@lists.xenproject.org
Cc: andrei.semenov@vates.tech, olivier.lambert@vates.tech
X-Native-Encoded: 1
X-Report-Abuse: =?UTF-8?Q?Please=20forward=20a=20copy=20of=20this=20message,=20including=20all=20headers,=20to=20abuse@mandrill.com.=20You=20can=20also=20report=20abuse=20here:=20https://mandrillapp.com/contact/abuse=3Fid=3D30504962.ecab575db48a446ab11c8dcd4b8e7f2c?=
X-Mandrill-User: md_30504962
Feedback-ID: 30504962:30504962.20231030:md
Date: Mon, 30 Oct 2023 09:42:47 +0000
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi All,

This is an informational post about our plans for the enablement of AMD SEV 
support in Xen. This work will be done as part of the Hyper OpenX project[1].

Phase Zero:
----------------

Our primary intention is to gather the necessary information required to 
commence the upstream work for this project. This phase also encompasses 
the development of a small demo to demonstrate the SME technology itself.

Please note, this small demo won't be part of the upstream, as its primary 
purpose is to demonstrate the SME technology as part of Hyper OpenX 
project. And it is not integral to the enablement work in Xen. Although the 
demo code will be open source, so feel free to keep an eye on this repo[2] 
as we'll add the related links there.

Phase One:
----------------
The main goal of this phase is to achieve basic SEV support using XTF 
guests. This work will entail:
- Xen adaptations to make it compliant with SEV technology. (For example: 
how Xen currently manages multiple ASIDs for a single VM)
- An ASP/PSP driver for platform and key management.
- ASID allocation mechanism

Dom0:

- Introduction of a security hypercall and an ASP sub-op
- Support for enabling SEV during guest creation

DomU XTF:

- Support for the security hypercall and ASP sub-op
- Support for the C bit
- Test cases for OSS-Test to launch the XTF guest

Phase Two:
----------------

This phase emphasizes achieving full support for the PVH VM with 
paravirtualized devices capable of running in the SEV-ES environment. The 
primary tasks include:

- SEV-ES support addition
- GHCB MSR protocol implementation and #vc handler
- Enhancements in PV protocol related to PV devices framework (Xenstore/Xen 
console)
- Adjustments in VMEXIT handling
- Establishing ABI rules for the HVM ABI redesign
- Dom0 developments concerning the HVM ABI redesign
- OSS Test: PVH Linux+initrd+metadata+signature mimicking phase one XTF test
- XTF(testing): comprehensive test cases for the new HVM ABI

Phase Three:
-----------------
This phase revolves around enabling SEV-SNP support for PVH Linux guests. 
Predominantly, this will require:

- Addition of alternative SNP commands supporting the API and extending the 
flow in the PSP/ASP driver
- Hypercall expansion for domain creation
- Developments in RMP Management
- Dom0 and DomU developments related to the enablement of SNP in guests
- Testing that includes support for guest RMP instructions

We're also looking forward to integrating CI and documenting the various 
project stages. Like any significant upstream project, implementation 
details may change as we advance. However, we are committed to 
collaborating and communicating with the Xen community regarding any 
modifications.

We would also like to thank Andrew and folks from Apertus solutions , in 
doing the early research with regards to defining the tasks for the AMD 
SEV-SNP enablement in Xen.

Please don't hesitate to reply here or email me & Andrei (CC'ed here) if 
you have any further inquiries.

Thank you,
Vaishali

[1] 
https://www.lemondeinformatique.fr/actualites/lire-hyper-open-x-sort-de-terre-avec-10-meteuro-de-financements-90954.html

[2] https://github.com/xcp-ng/hyper-sev-project


From xen-devel-bounces@lists.xenproject.org Mon Oct 30 11:19:16 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 11:19:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625053.973910 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxQIQ-0004pT-A8; Mon, 30 Oct 2023 11:19:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625053.973910; Mon, 30 Oct 2023 11: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 1qxQIQ-0004pM-7C; Mon, 30 Oct 2023 11:19:02 +0000
Received: by outflank-mailman (input) for mailman id 625053;
 Mon, 30 Oct 2023 11:19: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=3VkP=GM=cloud.com=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qxQIP-0004pG-2V
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 11:19:01 +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 1e1a1909-7716-11ee-9b0e-b553b5be7939;
 Mon, 30 Oct 2023 12:18:57 +0100 (CET)
Received: by mail-ej1-x635.google.com with SMTP id
 a640c23a62f3a-9c3aec5f326so1136611366b.1
 for <xen-devel@lists.xenproject.org>; Mon, 30 Oct 2023 04:18:57 -0700 (PDT)
Received: from localhost ([213.195.118.109]) by smtp.gmail.com with ESMTPSA id
 v13-20020a170906564d00b009c74c56d71dsm5872984ejr.13.2023.10.30.04.18.56
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 30 Oct 2023 04:18: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: 1e1a1909-7716-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1698664737; x=1699269537; 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=SybUrgox0OOTfZ1F4P2W5W4O/sTJS3wRMW8kYIiI2Yk=;
        b=mOaig42pHh8qQGWVYYI+JCmBKyXsl+WQWlG4lxJrdIipBMhjmSQ9zb+vRm0ajJqTmK
         V3uNKsETsT+//Xp07u7ZROi/uWoqkRam5Rfb3gHAsmuCNZJEppSj0fCFBDmzK+0SNAX4
         9U0A0RDpV4GTIJfEQcB81KOjQ1KIHQ7wdhoE0=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698664737; x=1699269537;
        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=SybUrgox0OOTfZ1F4P2W5W4O/sTJS3wRMW8kYIiI2Yk=;
        b=UXQMeqb0OYbRBbnJVJ6z47TRYeI2pqPiGzjs9xKJi8Ioe1iUw4y2a+Ab7+62uu4B0V
         4IpPTQ1ehFmTH7k5ZZyFGwyEnHzSUQO+OJrztUESQuW7/O5PXxjNQcPDLKwpNsEV2jBT
         VKWQxToUUSXhMOoNPLH/zPkNzs7vbArxXJDrBRxRxvALoI1IqID5Dz6rnyUeG4UZ5wQS
         M2e1tnxAr4ghQwxCSRCcrmI9nahlxjov7XTev+JnNF+jw2/HWPMLImvKhe+JIWCGXyaB
         R4Tvo2ry8yOn1u2IxsqHmw1B01zxylunERXYUdjbuUTgQrFU2MLLT8TCnBr43UPePUgX
         y+RQ==
X-Gm-Message-State: AOJu0YxmU37AEhG25GtxfZUBZt/fhJAx5SEY0sS0QyRAXIxC2zyRN4sX
	V5VZBW4uHPWksqsyuvgJxDdnDw==
X-Google-Smtp-Source: AGHT+IHtSc/LwVPlA6SdDUDX0VRxxZJoP3bkubpja/W8+SsoopWTeBpjR26yuaYcYYyS8WW9eoghjg==
X-Received: by 2002:a17:907:97c8:b0:9c7:5186:de2a with SMTP id js8-20020a17090797c800b009c75186de2amr11854288ejc.6.1698664736816;
        Mon, 30 Oct 2023 04:18:56 -0700 (PDT)
Date: Mon, 30 Oct 2023 12:18:55 +0100
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Xenia Ragiadakou <xenia.ragiadakou@amd.com>
Cc: Jan Beulich <jbeulich@suse.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
	xen-devel@lists.xenproject.org
Subject: Re: [PATCH] x86/hvm/dom0: fix PVH initrd and metadata placement
Message-ID: <ZT-RH7plvXhDr5iP@macbook>
References: <c81a8275-ecfd-7598-c119-ed83b156c0e5@suse.com>
 <b5330686-82a0-4d47-9549-2d943ca68c7e@amd.com>
 <1cc98108-3328-94d3-5f8d-ff03c965087e@suse.com>
 <92ba94d2-9e57-4241-8626-33f06f88e726@amd.com>
 <a61926bc-e3e6-e381-45de-be3a4878b6af@suse.com>
 <217d9079-3072-441a-a4ba-4db28c565bc7@amd.com>
 <08ea1b7b-c85f-337a-42c4-520e40b75288@suse.com>
 <987b5b7d-57f8-4d63-bd13-fe662b6cb87f@amd.com>
 <486c778c-4a33-703f-2811-27101d10ea9b@suse.com>
 <b203d30f-1563-45b6-9469-b25dda8df9a4@amd.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <b203d30f-1563-45b6-9469-b25dda8df9a4@amd.com>

On Mon, Oct 30, 2023 at 09:37:24AM +0200, Xenia Ragiadakou wrote:
> 
> On 27/10/23 15:01, Jan Beulich wrote:
> > On 27.10.2023 13:18, Xenia Ragiadakou wrote:
> > > 
> > > On 27/10/23 09:37, Jan Beulich wrote:
> > > > On 26.10.2023 18:55, Xenia Ragiadakou wrote:
> > > > > 
> > > > > 
> > > > > On 26/10/23 17:55, Jan Beulich wrote:
> > > > > > On 26.10.2023 15:58, Xenia Ragiadakou wrote:
> > > > > > > 
> > > > > > > On 26/10/23 15:37, Jan Beulich wrote:
> > > > > > > > On 26.10.2023 14:35, Xenia Ragiadakou wrote:
> > > > > > > > > 
> > > > > > > > > 
> > > > > > > > > On 26/10/23 14:51, Jan Beulich wrote:
> > > > > > > > > > On 26.10.2023 11:46, Xenia Ragiadakou wrote:
> > > > > > > > > > > On 26/10/23 11:45, Jan Beulich wrote:
> > > > > > > > > > > > On 26.10.2023 10:34, Xenia Ragiadakou wrote:
> > > > > > > > > > > > > On 26/10/23 10:35, Jan Beulich wrote:
> > > > > > > > > > > > > > On 26.10.2023 08:45, Xenia Ragiadakou wrote:
> > > > > > > > > > > > > > > --- a/xen/arch/x86/hvm/dom0_build.c
> > > > > > > > > > > > > > > +++ b/xen/arch/x86/hvm/dom0_build.c
> > > > > > > > > > > > > > > @@ -518,7 +518,7 @@ static paddr_t __init find_memory(
> > > > > > > > > > > > > > >                 if ( end <= kernel_start || start >= kernel_end )
> > > > > > > > > > > > > > >                     ; /* No overlap, nothing to do. */
> > > > > > > > > > > > > > >                 /* Deal with the kernel already being loaded in the region. */
> > > > > > > > > > > > > > > -        else if ( kernel_start - start > end - kernel_end )
> > > > > > > > > > > > > > > +        else if ( kernel_start + kernel_end > start + end )
> > > > > > > > > > > > > > What meaning has the sum of the start and end of either range? I can't
> > > > > > > > > > > > > > figure how comparing those two values will be generally correct / useful.
> > > > > > > > > > > > > > If the partial-overlap case needs handling in the first place, I think
> > > > > > > > > > > > > > new conditionals need adding (and the existing one needs constraining to
> > > > > > > > > > > > > > "kernel range fully contained") to use
> > > > > > > > > > > > > > - as before, the larger of the non-overlapping ranges at start and end
> > > > > > > > > > > > > >          if the kernel range is fully contained,
> > > > > > > > > > > > > > - the tail of the range when the overlap is at the start,
> > > > > > > > > > > > > > - the head of the range when the overlap is at the end.
> > > > > > > > > > > > > Yes it is not quite straight forward to understand and is based on the
> > > > > > > > > > > > > assumption that end > kernel_start and start < kernel_end, due to
> > > > > > > > > > > > > the first condition failing.
> > > > > > > > > > > > > 
> > > > > > > > > > > > > Both cases:
> > > > > > > > > > > > > (start < kernel_start && end < kernel_end) and
> > > > > > > > > > > > > (kernel_start - start > end - kernel_end)
> > > > > > > > > > > > > fall into the condition ( kernel_start + kernel_end > start + end )
> > > > > > > > > > > > > 
> > > > > > > > > > > > > And both the cases:
> > > > > > > > > > > > > (start > kernel_start && end > kernel_end) and
> > > > > > > > > > > > > (end - kernel_end > kernel_start - start)
> > > > > > > > > > > > > fall into the condition ( kernel_start + kernel_end < start + end )
> > > > > > > > > > > > > 
> > > > > > > > > > > > > ... unless of course I miss a case
> > > > > > > > > > > > Well, mathematically (i.e. ignoring the potential for overflow) the
> > > > > > > > > > > > original expression and your replacement are identical anyway. But
> > > > > > > > > > > > overflow needs to be taken into consideration, and hence there is a
> > > > > > > > > > > > (theoretical only at this point) risk with the replacement expression
> > > > > > > > > > > > as well. As a result I still think that ...
> > > > > > > > > > > > 
> > > > > > > > > > > > > > That said, in the "kernel range fully contained" case it may want
> > > > > > > > > > > > > > considering to use the tail range if it is large enough, rather than
> > > > > > > > > > > > > > the larger of the two ranges. In fact when switching to that model, we
> > > > > > > > > > > > > > ought to be able to get away with one less conditional, as then the
> > > > > > > > > > > > > > "kernel range fully contained" case doesn't need treating specially.
> > > > > > > > > > > > ... this alternative approach may want considering (provided we need
> > > > > > > > > > > > to make a change in the first place, which I continue to be
> > > > > > > > > > > > unconvinced of).
> > > > > > > > > > > Hmm, I see your point regarding the overflow.
> > > > > > > > > > > Given that start < kernel_end and end > kernel_start, this could
> > > > > > > > > > > be resolved by changing the above condition into:
> > > > > > > > > > > if ( kernel_end - start > end - kernel_start )
> > > > > > > > > > > 
> > > > > > > > > > > Would that work for you?
> > > > > > > > > > 
> > > > > > > > > > That would look quite a bit more natural, yes. But I don't think it covers
> > > > > > > > > > all cases: What if the E820 range is a proper sub-range of the kernel one?
> > > > > > > > > > If we consider kernel range crossing E820 region boundaries, we also need
> > > > > > > > > > to take that possibility into account, I think.
> > > > > > > > > 
> > > > > > > > > You are right, this case is not handled and can lead to either of the
> > > > > > > > > issues mentioned in commit message.
> > > > > > > > > Maybe we should check whether end > start before proceeding with
> > > > > > > > > checking the size.
> > > > > > > > 
> > > > > > > > It looks like it all boils down to the alternative I did sketch out.
> > > > > > > 
> > > > > > > I 'm not sure I fully understood the alternative.
> > > > > > > Do you mean sth in the lines below?
> > > > > > > 
> > > > > > >              if ( end <= kernel_start || start >= kernel_end )
> > > > > > >                  ; /* No overlap, nothing to do. */
> > > > > > >              /* Deal with the kernel already being loaded in the region. */
> > > > > > > -        else if ( kernel_start - start > end - kernel_end )
> > > > > > > +        else if ( start < kernel_start && end > kernel_end ) {
> > > > > > > +            if ( kernel_start - start > end - kernel_end )
> > > > > > > +                end = kernel_start;
> > > > > > > +            else
> > > > > > > +                start = kernel_end;
> > > > > > > +        }
> > > > > > > +        else if ( start < kernel_start )
> > > > > > >                  end = kernel_start;
> > > > > > > -        else
> > > > > > > +        else if ( end > kernel_end )
> > > > > > >                  start = kernel_end;
> > > > > > > +        else
> > > > > > > +            continue;
> > > > > > > 
> > > > > > >              if ( end - start >= size )
> > > > > > >                  return start;
> > > > > > 
> > > > > > Not exactly, no, because this still takes the size into account only
> > > > > > in this final if().
> > > > > > 
> > > > > > > You wouldn't like to consider this approach?
> > > > > > 
> > > > > > I'm happy to consider any other approach. Just that ...
> > > > > > 
> > > > > > >              if ( end <= kernel_start || start >= kernel_end )
> > > > > > >                  ; /* No overlap, nothing to do. */
> > > > > > >              /* Deal with the kernel already being loaded in the region. */
> > > > > > > -        else if ( kernel_start - start > end - kernel_end )
> > > > > > > +        else if ( kernel_end - start > end - kernel_start )
> > > > > > >                  end = kernel_start;
> > > > > > >              else
> > > > > > >                  start = kernel_end;
> > > > > > > 
> > > > > > > -        if ( end - start >= size )
> > > > > > > +        if ( end > start && end - start >= size )
> > > > > > >                  return start;
> > > > > > >          }
> > > > > > 
> > > > > > ... I'm afraid this doesn't deal well with the specific case I was
> > > > > > mentioning: If the E820 region is fully contained in the kernel range,
> > > > > > it looks to me as if this approach would ignore the E820 altogether,
> > > > > > since you either move end ahead of start or start past end then. Both
> > > > > > head and tail regions may be large enough in this case, and if this
> > > > > > was the only region above 1M, there'd be no other space to fall back
> > > > > > to.
> > > > > 
> > > > > Yes, in which case it will fail. This is legitimate.
> > > > 
> > > > Not really, if there is space available (but just not properly used).
> > > 
> > > I said so because I noticed that, if, for instance, the loading address
> > > conflicts with a reserved memory region, xen won't attempt to relocate
> > > the kernel (assuming that it is relocatable). It will fail.
> > 
> > Hmm, if so, perhaps yet something else to deal with.
> > 
> > > > > Currently, the code proceeds with the dom0 kernel being corrupted.
> > > > 
> > > > And we agree that this wants fixing.
> > > 
> > > Ok, and IIUC, using rangeset as per Roger's suggestion, right?
> > 
> > Going that route would be optimal of course, but I for one wouldn't
> > insist.
> 
> Roger what's your opinion on this? Would it be ok for now to send a v2 with
> just the change above (i.e. that might fail if the image extends over a
> really large memory area containing all usable memory regions) and implement
> later your suggested solution (probably taking into account in the
> implementation also image relocation aspect in case of conflicts)?
> 
> Jan would it be possible to sketch a patch of your suggested solution
> because I 'm afraid I have not fully understood it yet and I won't be able
> to implement it properly for a v2?

I think something like the fully untested patch below:

diff --git a/xen/arch/x86/hvm/dom0_build.c b/xen/arch/x86/hvm/dom0_build.c
index c7d47d0d4ce6..64ec8835d53e 100644
--- a/xen/arch/x86/hvm/dom0_build.c
+++ b/xen/arch/x86/hvm/dom0_build.c
@@ -517,8 +517,12 @@ static paddr_t __init find_memory(

         if ( end <= kernel_start || start >= kernel_end )
             ; /* No overlap, nothing to do. */
+        else if ( kernel_start <= start && kernel_end >= end )
+            /* Kernel is using the full region, skip it. */
+            continue;
         /* Deal with the kernel already being loaded in the region. */
-        else if ( kernel_start - start > end - kernel_end )
+        else if ( max(kernel_start, start) - start >
+                  end - min(kernel_end, end) )
             end = kernel_start;
         else
             start = kernel_end;

Should be enough to solve the issue with a kernel consuming several
e820 RAM regions entirely?

Could you also add a note to the commit message that the current code
assumes that all kernel loaded segments are mostly contiguous and
loaded in a single RAM region, but that's not suitable for Zephyr that
has segments scattered across possibly several different RAM regions.

A TODO in the code describing that it would be best to use a rangeset
for more fine grained accounting of memory used by the loaded kernel
segments would also be helpful IMO in order to remember that we
might want to fix this in the future.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Mon Oct 30 11:29:32 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 11:29:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625058.973919 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxQST-0006aq-83; Mon, 30 Oct 2023 11:29:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625058.973919; Mon, 30 Oct 2023 11: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 1qxQST-0006aj-5U; Mon, 30 Oct 2023 11:29:25 +0000
Received: by outflank-mailman (input) for mailman id 625058;
 Mon, 30 Oct 2023 11:29: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 1qxQSR-0006ad-O4
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 11:29: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 1qxQSQ-0007Ew-9K; Mon, 30 Oct 2023 11:29:22 +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 1qxQSP-0001TW-Vb; Mon, 30 Oct 2023 11:29: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=jfNWRxjvoAH8O3mgyZy30Z0zXan+pp4ep5ijBXXcR4Q=; b=qUsqBqdtmbkCOBZikFJpIdLLxw
	l4EQX2aA7u7/FmLaQZzZS811j6sKoN0EkB2DNlFew6Ge61HXVQVMijsr/EPF1zFQ+6eUi62PKk8ER
	RvL5vJLTgX8BW/3tm7jFzMtpxqPpm59YXAY8zMC8ojRAAl87xvKErcizk5TmRLhxaOjk=;
Message-ID: <4c5db3e9-cf77-43aa-be7b-df5734104fea@xen.org>
Date: Mon, 30 Oct 2023 11:29:19 +0000
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN PATCH][for-4.19 v5 2/8] x86: add deviation for asm-only
 functions
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,
 andrew.cooper3@citrix.com, roger.pau@citrix.com,
 Simone Ballarin <simone.ballarin@bugseng.com>,
 Doug Goldstein <cardoe@cardoe.com>, George Dunlap
 <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>,
 Jun Nakajima <jun.nakajima@intel.com>, Kevin Tian <kevin.tian@intel.com>
References: <cover.1698655374.git.nicola.vetrini@bugseng.com>
 <79091a4e450b522aedfdd903ad671e705a933c49.1698655374.git.nicola.vetrini@bugseng.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <79091a4e450b522aedfdd903ad671e705a933c49.1698655374.git.nicola.vetrini@bugseng.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi Nicola,

On 30/10/2023 09:11, Nicola Vetrini wrote:
> As stated in rules.rst, functions used only in asm modules
> are allowed to have no prior declaration visible when being
> defined, hence these functions are marked with an
> 'asmlinkage' macro, which is then deviated for MISRA C:2012
> Rule 8.4.

AFAIU, this is a replacement of SAF-1. If so, I would like a consistent 
way to address Rule 8.4. So can you write a patch to replace all the use 
of SAF-1 with asmlinkage and remove SAF-1?

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Mon Oct 30 11:43:05 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 11:43:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625062.973929 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxQfY-0000vI-Bl; Mon, 30 Oct 2023 11:42:56 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625062.973929; Mon, 30 Oct 2023 11:42: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 1qxQfY-0000vB-9E; Mon, 30 Oct 2023 11:42:56 +0000
Received: by outflank-mailman (input) for mailman id 625062;
 Mon, 30 Oct 2023 11:42: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=3VkP=GM=cloud.com=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qxQfX-0000v5-1L
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 11:42:55 +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 76549aa5-7719-11ee-98d6-6d05b1d4d9a1;
 Mon, 30 Oct 2023 12:42:53 +0100 (CET)
Received: by mail-ej1-x62b.google.com with SMTP id
 a640c23a62f3a-9a58dbd5daeso666241666b.2
 for <xen-devel@lists.xenproject.org>; Mon, 30 Oct 2023 04:42:53 -0700 (PDT)
Received: from localhost ([213.195.118.109]) by smtp.gmail.com with ESMTPSA id
 n11-20020a170906b30b00b0099bcdfff7cbsm5767682ejz.160.2023.10.30.04.42.53
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 30 Oct 2023 04:42: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: 76549aa5-7719-11ee-98d6-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1698666173; x=1699270973; 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=5nMxB3pbQgBPe8juaICqu1T0NsV8DywdYSg4UfNXx0s=;
        b=EQ52sjImeDnpI33I/ot9Bo9f/1Nbgya25J2VBg/+QKB/CqN+AKagXAod943CLaZFK5
         2Lt0YN1I5zlTs1Fxo2BeAQM/Pe2pMUqa7OfejsFJXIMe9AtPFHG0SWgjgq1SJOb/BzDF
         i3WP+DxhvAqJz7OHtbuSQcHI1lXwX25OUiego=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698666173; x=1699270973;
        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=5nMxB3pbQgBPe8juaICqu1T0NsV8DywdYSg4UfNXx0s=;
        b=djMO3P8DUKp1iUjK4uVq4suH0EK5AWT2rmMht25O6GIOAaueoygE6d6Ad/3BtIedgM
         y0Bcu9/9/DnnuWAb47EMO56AxKI74i4PzTJyG/Akh6KIwN+StoRBJj5S5mwMspcq4mIK
         Va01gmWv3wmEKK6T44nPo0uM6i0Cq8MFlftcdNIbau7htOiidXwmTGyyzp4YsBP0MdkF
         iQl4l8N/sjgqZ6LC9jHX7gbhNYVkNAFAZ25LrlDuXQPHFtWhYC2g0JI240pJrz1tnC+Z
         e86EFOvhSUCkBZ9+RmS+U/HFlHCtCrTmq8ZXDJ7LWrpWElGfsgkySy7UYdr9oCa8vdOM
         kSug==
X-Gm-Message-State: AOJu0Yyy0hTO4TSoFLClOs45Fqhp8KlRrh8eNOY9NxWly4KYwV7516TI
	hqFdb7alrupZoLDBP0fy5w5EJQ==
X-Google-Smtp-Source: AGHT+IGU6RyWHS4LYCT4Z1yUWWk2LPXTAQUepWVcaox7vvaz9bL41J4JTPL86zLpm75X/Zi8rW+tBQ==
X-Received: by 2002:a17:907:3fa2:b0:9c6:1143:b73 with SMTP id hr34-20020a1709073fa200b009c611430b73mr8156864ejc.51.1698666173506;
        Mon, 30 Oct 2023 04:42:53 -0700 (PDT)
Date: Mon, 30 Oct 2023 12:42:52 +0100
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>
Cc: xen-devel@lists.xenproject.org, Doug Goldstein <cardoe@cardoe.com>,
	Stefano Stabellini <sstabellini@kernel.org>
Subject: Re: [PATCH] automation: fix race condition in adl-suspend test
Message-ID: <ZT-WvAye6OlWGLAx@macbook>
References: <20231028033404.262729-1-marmarek@invisiblethingslab.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <20231028033404.262729-1-marmarek@invisiblethingslab.com>

On Sat, Oct 28, 2023 at 05:33:57AM +0200, Marek Marczykowski-Górecki wrote:
> If system suspends too quickly, the message for the test controller to
> wake up the system may be not sent to the console before suspending.
> This will cause the test to timeout.
> 
> Fix this by waiting a bit after printing the message. The test
> controller then resumes the system 30s after the message, so as long as
> the delay + suspending takes less time it is okay.
> 
> Signed-off-by: Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
> ---
> This is consistent with the observation that sync_console "fixes" the
> issue.
> ---
>  automation/scripts/qubes-x86-64.sh | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/automation/scripts/qubes-x86-64.sh b/automation/scripts/qubes-x86-64.sh
> index 26131b082671..a34db96e4585 100755
> --- a/automation/scripts/qubes-x86-64.sh
> +++ b/automation/scripts/qubes-x86-64.sh
> @@ -54,11 +54,11 @@ until grep 'domU started' /var/log/xen/console/guest-domU.log; do
>      sleep 1
>  done
>  echo \"${wait_and_wakeup}\"
> +# let the above message flow to console, then suspend
> +sleep 5

Could you use `sync /dev/stdout`?  I guess that might not be enough,
since the sync won't be propagated to the hypervisor, and hence even
if flushed from Linux, we have no guarantee that the hypervisor has
also flushed it.

Xen should flush the buffer when a newline character is found, but I
have no idea whether context could return to guest while the buffer is
still in the process of being fully flushed.

Anyway, adding the extra sync might be good regardless, and keeping
the sleep.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Mon Oct 30 12:12:35 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 12:12:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625067.973940 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxR86-0005e6-OM; Mon, 30 Oct 2023 12:12:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625067.973940; Mon, 30 Oct 2023 12: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 1qxR86-0005dz-Kk; Mon, 30 Oct 2023 12:12:26 +0000
Received: by outflank-mailman (input) for mailman id 625067;
 Mon, 30 Oct 2023 12: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=Hhfi=GM=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qxR84-0005cM-HS
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 12:12:24 +0000
Received: from EUR02-DB5-obe.outbound.protection.outlook.com
 (mail-db5eur02on20616.outbound.protection.outlook.com
 [2a01:111:f400:fe12::616])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 94c8c32c-771d-11ee-98d6-6d05b1d4d9a1;
 Mon, 30 Oct 2023 13:12:23 +0100 (CET)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DBBPR04MB7961.eurprd04.prod.outlook.com (2603:10a6:10:1ee::14)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.19; Mon, 30 Oct
 2023 12:12:21 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6954.016; Mon, 30 Oct 2023
 12:12: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: 94c8c32c-771d-11ee-98d6-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=UQUzbq941PQiyaaw/9yRR/NICJ8+B1/68fAklNEb/K3JOXlMdLTtgZxMTvbfhBOdYL+hkAWWy8pChaqt+VhB7vDS3xmS61jNLSL5gWL6zjHXCeu4HEEdUrh5EFrUPUfgTYlWJAsjVGjzXZva34120OB6axwVlEs+iVVJcGot9gd8fZAiGSrdqKRvXY+OuB7IG3Z+gGNEIkRFH0NK3bKP8GjFZdwfTaSn4mOKTcdYikJxrKA1VYw/gV/M8Dxsaadgj4QpH7K5Efn8bnhtiqt3sonqY4fqj8eGkBwDNmyshcO0v3O9vmX9hICKptjnolVhyywhcRo1w7K78r65olPcFw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=DHxJBS9g4VPvxUGnG/f4KLJN1mHF0ajstqPxa/WEU30=;
 b=a7yRk26TXDCsCB6KppsIhvSjRiRgwVR7zgg+rOx+Xh3qotQ540R3xb5h0x3UucBKXgBtlvzvXomIgN0iqsaTiRzoOm22JeXG7UV94ITf4r3dFx5vQ9QboyZ2Zjdq0nnzCxhTMh+KPqiS04vsMJUTmcCNHpic5oheRRAI7qHOKmUxhngZ9Rgi8Z3HcwL73bpBR/5BSIgwTMSDRuLhnLgNWFUBGVT0nLgfBhIJEmkhp6Hu2FQTLOIK6Xecf+kjnKHTWmr1aKmrMSq00Af9ZAuMxzORRARm7tx0aAOQ4eEecCQuAR/dlKhSlZWaH1I5iyoYpEhXsnQ3QLLxFr5Se/TIdg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=DHxJBS9g4VPvxUGnG/f4KLJN1mHF0ajstqPxa/WEU30=;
 b=Atp2ZYxsTKqmyhNjiMe5rbH/vP5j5Ap01uhX8yQmnYwbyR34HMq2TMRR0WHY4aEInAmBqAZUo6QWc2317FBi9G3CFj4ufAl+BgHwK1oQzya50kJ534ScsVVZwT038DMWKtyVFVL/16FX9yPbiXjJ+m9wsoqtPPNXadhT9Q7LOXl81EJaNk0EznFATCEXRoaO7nhhE+b0jJKOP9Z/LDjRzWzU8FhDLta7XFPKYrvEubVcW1xKEhef4RYXhvdoRxHOTrCCvsv3Z8xCIa42qI8s6oLcNeBjrtvKwtP/KrefQg1Y8PxIZ/yxc1FU2pmqwAvLYdHKjZ9/wLzG37dkmXB2KA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <e40fba96-87ec-09a7-e095-28637d112e56@suse.com>
Date: Mon, 30 Oct 2023 13:12:21 +0100
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH] x86/hvm/dom0: fix PVH initrd and metadata placement
Content-Language: en-US
To: Xenia Ragiadakou <xenia.ragiadakou@amd.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org, =?UTF-8?Q?Roger_Pau_Monn=c3=a9?=
 <roger.pau@citrix.com>
References: <20231026064543.43369-1-xenia.ragiadakou@amd.com>
 <ac7e9bac-6d74-a5bf-d703-3c5455e581ea@suse.com>
 <7712c60b-4f89-483e-89e4-7ac8f4d0311e@amd.com>
 <809115b1-2a47-583f-2d04-72a5a21ee7da@suse.com>
 <c107d63c-25a3-4f17-a5e8-7ec3ccd94ce3@amd.com>
 <c81a8275-ecfd-7598-c119-ed83b156c0e5@suse.com>
 <b5330686-82a0-4d47-9549-2d943ca68c7e@amd.com>
 <1cc98108-3328-94d3-5f8d-ff03c965087e@suse.com>
 <92ba94d2-9e57-4241-8626-33f06f88e726@amd.com>
 <a61926bc-e3e6-e381-45de-be3a4878b6af@suse.com>
 <217d9079-3072-441a-a4ba-4db28c565bc7@amd.com>
 <08ea1b7b-c85f-337a-42c4-520e40b75288@suse.com>
 <987b5b7d-57f8-4d63-bd13-fe662b6cb87f@amd.com>
 <486c778c-4a33-703f-2811-27101d10ea9b@suse.com>
 <b203d30f-1563-45b6-9469-b25dda8df9a4@amd.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <b203d30f-1563-45b6-9469-b25dda8df9a4@amd.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0009.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:15::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_|DBBPR04MB7961:EE_
X-MS-Office365-Filtering-Correlation-Id: f0cbbbdc-9b14-4c7e-2e68-08dbd941774a
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	VSA1TjHDcaHF5kxHw5cak+W8E5xrtx1RNFGhQz+iPpR+8/KMJsqCe8HtWqniH32kq498xO+h8ujcsflWdiytHEi0Qg7lVVBazll0IctkAq5fE3cQNSsGqQzoAninKDsUDHKK59Su5324HhjZKVuKA4HWMBOJsVdfA7HhdIdseZb1D8abypengQ1B2I0GyjERVY3hWnxeewl3b6dkqy+lxfSKI+hMOFhFxRniVawejVHZ+Uf6+G2+qUqBu7YQlGVisrjL12Lxk3G/tYdM/DcX3RRjKv3OT8fAtRYA/LHVTAdPDiZ/GuGoyXaDB8Nmqk1ZI66JQj2c2zDl/rINy6sDta7wuSv+B/XikhGkLj8qoQec1h4Iz/uVzyy06x0DLH4qxNv7XLSq1IvHk4WsKQ7jlU6J6zwv12sNOmJAmPj9jGjeC0xrbEkvUMzyHpKMtpUWDEPToqc96ZsskaFqixcB9g0I8EuUZultlGe4uK6eBp/Q+4sELwTVzYsKxn7/b9zTNJG2tFNsfnYe6xfPSTooOnhJqJFBzKM1hgqGh415xp/RWemXRQZ6uXbAKuHDiTRPTF+AcfMPZTIJW8rTPHcZ5EmsAB4qAxP0iGc8eSG9yRjnKkkWdCgtx1xbWp8f1ia1Ls3ykaNVNVQS6wRlCY7/8g==
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)(230922051799003)(451199024)(64100799003)(186009)(1800799009)(54906003)(31686004)(66899024)(316002)(83380400001)(36756003)(41300700001)(86362001)(5660300002)(31696002)(2906002)(66946007)(66556008)(26005)(6486002)(38100700002)(478600001)(8936002)(4326008)(8676002)(66476007)(53546011)(6512007)(6916009)(2616005)(6506007)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?UVZUKzVQeUdZd1phR1didWVSY1pjMzFMZ0ZuSXR4Rk1wMWJEeWdBM0tJMlB5?=
 =?utf-8?B?ZXVVemdYM3Q3dzZST042dHM4eno0ZllTTDloR3o0bkljRHhFdE8xOEszTlhs?=
 =?utf-8?B?Y1ZqM1c4aDN5TFYvOTVMQkV6cWFwWmt6YWJzenZPZVZYOSt1QXVmVDdxUmVv?=
 =?utf-8?B?Q3hVK05IaWY4RlJQUEZ3dENrZXRyYzlDaGR4aVJ4eDF1QXdDR0xZTnlUVGxq?=
 =?utf-8?B?L2pJMTRnN3h2UnYwSDRLVTJCc09QVWhtTnBaWVVzUUhwRE4rSjc0MGorcnU0?=
 =?utf-8?B?dGEwd1g1SWhDSkJBbEU1SGFXMHZ5MHpNYjB2bXhLeTBzaWc2VndSOWYvMmhr?=
 =?utf-8?B?V0JreURoVTU3ZXMwUlVkT1Vvai9jSWlnZUIrbThrdFlwZmFUSWJyVjVCb1Ex?=
 =?utf-8?B?VGhyZWVNSVV0RERSSzErMGNmdkJkcjUyaXlpUkFNdTZFTy9BdEZkbzlZRVFj?=
 =?utf-8?B?SU5sa0U3ZDdRWGc5MHFJUndwSW1QcmJWWTdvdnUzb3VUZnhmdEVnejZBb1Vj?=
 =?utf-8?B?aElzcWxLN1BiZHkycFRTWU9pUjR4N1JpUHVvSkNkWnA0RHhIenR5OTlCbXZD?=
 =?utf-8?B?TlNpK091UUxWZkxtWGFQb0t3TjNEallBbmYzSzJyOUE3RzYrVDRteWdXQVlu?=
 =?utf-8?B?NGZzZTNhL2gvdTllSk11anhBOVJla1JDY3ZrMGVEQ2l2ZHhBbWc3Y2pTRjJr?=
 =?utf-8?B?dWhqWmFDc1lzYzJpY1JJSkhHWFpZdEM2ZUEvN0ZPQ1dxUGgxRUplYythaWhU?=
 =?utf-8?B?WnpXS0UveXd6WFFHUkFZTWVRdVY4d3c4NzBJL2FBd3RqTXBIQW1HVFZJeXRW?=
 =?utf-8?B?TGlYakVUL3dSQVZBNnRTZDQyTCtkd3lUUzRMNnd4V2FUV3djRmEvS3lMcXJ3?=
 =?utf-8?B?NEJ0SWhCZlVBT1NXdGlRWXVGRU9sQWpEbGxIZ09CdmY3bzZQUmZRTDVkY2x4?=
 =?utf-8?B?Vm05MmRHUjFEd3UvOU1veXdoRWRubHJxUTJ4cUZRZVk3UmJTbXVOTGF5cTUy?=
 =?utf-8?B?cytiR1o2QlZqdHU3M09uSEY2SzI5SHh5V21vYkJUY0xVWTRXOWhYK1cyeHN6?=
 =?utf-8?B?bHJkQ3YyVHNxbWhyZnlic0VLNHp2RmV2ZHQwKzJrYUJxc1NQL1k3TzV5dGc1?=
 =?utf-8?B?d2szWUhOb3BOMzJwanIwMG1vT2xlTENGa1p3TzkvaUpaNVA1Y1NheDlmc0ty?=
 =?utf-8?B?a0RjRTBzUmtjR1JkRzB1QTMzL3VHU3d2YXBnQnRHdkRHN2ZGNzNIV1F6OVpZ?=
 =?utf-8?B?bnhNb0RpSGpyRE53YjJkUmxuc0Z2V21RNEUvMlJ1MTBlbm82QTBpVWNYUHJu?=
 =?utf-8?B?OGF6SmVzSi9YNWZYMWtqbW5QRzcrcUI3anJXRDRRdGtlMEFpRk5UdDczUjhW?=
 =?utf-8?B?S2twaWZOY3hycHE4R09LTXd1dllzaktsMkFMR00wVW9sSkcxdTlpTWpyclcz?=
 =?utf-8?B?R2NhVWRjRkd2aG5jaytLYXlMZkZUdmJQM2FNM2I0Y0djVisyOWp3TkNlaVhM?=
 =?utf-8?B?REZXcXU2Z043L2N6eExKTkhXWlRRL2xJcTNUSVo1VVUvRjE5UkxRMUp2TWlJ?=
 =?utf-8?B?dk8zeFBHWm1EUC9yc3pHSUpXZWQ0MVlMUDhJUXFYWGtyQ1MzL0Y0Ynl0YVVY?=
 =?utf-8?B?cElSTVl1MjRLYnBRTkxaVmUvL2pwV1BwMEh0aERNc2MxVVdmcldldEt5YjlT?=
 =?utf-8?B?WStMK1dFWGR0aDFFTWdEbTJIOE5PQUZJRHUyQ2dSSnF3R2Y3N0pURkdSaEdG?=
 =?utf-8?B?ek1MY1V4azI5bTFEMGFQaXNCM29vTWFhclNzY3FPa0xSZ0NkcGRSOEhaajlS?=
 =?utf-8?B?VG9JeHhKNnFBTktjRjVwZ0RIWkRnc24rQkIzMHE1d3UzNE41b1N2amJJb0tt?=
 =?utf-8?B?Q3ptaktjbTlhVit3Yno3eGM1aThITkEvTFY3d1NIc2hqdEx2aTZCeG9pZk15?=
 =?utf-8?B?NWhsLytZMXNmZ3dHeWJZMytxZUpUVzh3VGFKbXlkWE5uNjg2aCtQbW9PazFN?=
 =?utf-8?B?cEhTS1hCdSs4SER1RDBuYTRNZE85YWF1aDU0Sk9Ga25EUndzMkxDb1k3SkhS?=
 =?utf-8?B?cG1DVTNmUFNDSjE2Sis5TnlURXMwZENWbkhnWDVSbWg1ZEZiaGhBeGRaZnN6?=
 =?utf-8?Q?cZLUG1x7eoQsYa0ra6WYdjoe9?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: f0cbbbdc-9b14-4c7e-2e68-08dbd941774a
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Oct 2023 12:12:20.6491
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: ykNslQQ+Om37dfGqHpR4AeJ7qTy5HLmEC+8+7C4j5kP+kufZzEruwRCLPyorCzZIKusR2gdxQ+D0tytrPWtcgQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBBPR04MB7961

On 30.10.2023 08:37, Xenia Ragiadakou wrote:
> Jan would it be possible to sketch a patch of your suggested solution 
> because I 'm afraid I have not fully understood it yet and I won't be 
> able to implement it properly for a v2?

While what Roger sent looks to be sufficient, I still thought I'd send
my variant, which I think yields more overall consistent results. Like
Roger's this isn't really tested (beyond making sure it builds).

Jan

From: Xenia Ragiadakou <xenia.ragiadakou@amd.com>
Subject: x86/hvm/dom0: fix PVH initrd and metadata placement

Given that start < kernel_end and end > kernel_start, the logic that
determines the best placement for dom0 initrd and metadata, does not
take into account the two cases below:
(1) start > kernel_start && end > kernel_end
(2) start < kernel_start && end < kernel_end

In case (1), the evaluation will result in end = kernel_start
i.e. end < start, and will load initrd in the middle of the kernel.
In case (2), the evaluation will result in start = kernel_end
i.e. end < start, and will load initrd at kernel_end, that is out
of the memory region under evaluation.

This patch reorganizes the conditionals to include so far unconsidered
cases as well, uniformly returning the lowest available address.

Fixes: 73b47eea2104 ('x86/dom0: improve PVH initrd and metadata placement')
Signed-off-by: Xenia Ragiadakou <xenia.ragiadakou@amd.com>
Signed-off-by: Jan Beulich <jbeulich@suse.com>
---
Contrary to my original intentions, with the function preferring lower
addresses (by walking the E820 table forwards), the new cases also
return lowest-possible addresses.
---
v2: Cover further cases of overlap.

--- a/xen/arch/x86/hvm/dom0_build.c
+++ b/xen/arch/x86/hvm/dom0_build.c
@@ -515,16 +515,23 @@ static paddr_t __init find_memory(
 
         ASSERT(IS_ALIGNED(start, PAGE_SIZE) && IS_ALIGNED(end, PAGE_SIZE));
 
+        /*
+         * NB: Even better would be to use rangesets to determine a suitable
+         * range, in particular in case a kernel requests multiple heavily
+         * discontiguous regions (which right now we fold all into one big
+         * region).
+         */
         if ( end <= kernel_start || start >= kernel_end )
-            ; /* No overlap, nothing to do. */
+        {
+            /* No overlap, just check whether the region is large enough. */
+            if ( end - start >= size )
+                return start;
+        }
         /* Deal with the kernel already being loaded in the region. */
-        else if ( kernel_start - start > end - kernel_end )
-            end = kernel_start;
-        else
-            start = kernel_end;
-
-        if ( end - start >= size )
+        else if ( kernel_start > start && kernel_start - start >= size )
             return start;
+        else if ( kernel_end < end && end - kernel_end >= size )
+            return kernel_end;
     }
 
     return INVALID_PADDR;



From xen-devel-bounces@lists.xenproject.org Mon Oct 30 12:25:12 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 12:25:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625071.973950 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxRKE-000852-Qx; Mon, 30 Oct 2023 12:24:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625071.973950; Mon, 30 Oct 2023 12:24: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 1qxRKE-00084v-Nd; Mon, 30 Oct 2023 12:24:58 +0000
Received: by outflank-mailman (input) for mailman id 625071;
 Mon, 30 Oct 2023 12:24: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=Hhfi=GM=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qxRKD-00084l-MI
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 12:24:57 +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 539ebc85-771f-11ee-9b0e-b553b5be7939;
 Mon, 30 Oct 2023 13:24:52 +0100 (CET)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DU2PR04MB9098.eurprd04.prod.outlook.com (2603:10a6:10:2f1::12)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6954.15; Mon, 30 Oct
 2023 12:24:51 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6954.016; Mon, 30 Oct 2023
 12:24: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: 539ebc85-771f-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=br7LOpeyhcU+Qtj+6g4heXvZJjzjxXQN5SRCGg9xE3AJk3GCdPGeF7I+q7YI0K8+7mujaktstH4q0TuW2H5lqitUOQtAon/t8N2dcIiDAmEX4V2X1I8EavEB8Nrob7RVW1g/077wrDvn0HAt2aEWulfH81zT4uK5BORC0MPF1xUjY5CQV4pi9xfPh/glH6Nd3+tjk9GYrSNqWVmoNB896hRUVFvWejrKfxgWgUugtNCRbcEgkxjs1zFK3kqbX5eZ4IRLukWHyRT2KirZIwgk98TzzO2IWamcVt4SwQBiB8ynMjKMLytaX8oUobC/VWPuCYoIRAcs/of5c+Lwp+Tn4g==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=bDX9Isc5XNdumdrqiDILuxRZgB8aCLmIm5fofT8spr4=;
 b=WxjGmFt8Rgy1u0mZjEdaKTINESU7sl5c5lvvDuniFIrPJ2uQr723SJsVqWpW+bhnGraNfgxpZAYVH9rA3P5sH2qgDr5N6/KT1XEqOEFeJrwhoi47A59Uy5YhUsEdsFdx7IFDr+whnWtI+iFwTSiAw+KGf8I31NJk0/PGvDEYH0KXX4sw3CrPkgW+u8N8bwiIX/cbnT6FCtN6mkDajF+2Z/DeTUuLptQXa26IfsL7J2MMwAaJsFighvPmpLa3ARLG7jP33yRv7EdG36B1Em/Wnaw0cqntOpkESbnk9eBsdvRki18jSnmXHu2BcfJy7MnMfwnvcbgwtRwt7u+qKHMdCg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=bDX9Isc5XNdumdrqiDILuxRZgB8aCLmIm5fofT8spr4=;
 b=c8M9kRel5NSmjtzwoFg2fHRT65COKcnliu6S7VJ2PjpCwgTtcd9cFwzSwXRmDo8IkBFhoZIFCfxiy5f65SH/3As9XActLCWx5PKcvUnCdyAshJnoYaK2Dt2NHAJziF88CyeRXfZ1/ftoCTA689qxxmVIRdsW3y+8DIytH0mPMk3gborGl0xEXnqATjqV/r/FtQpcAr6XuSsoPOMWxs24Gr+ZgdjZSA/K0S9f1qKIb3RUcMotAalDG5C700rPDGH6fOqc+mqzD9eT3VglzoOxpMgBG+KwRZKC3ie7JjMOTqyXW/2HwJfeHnL5XsNoO2jdYg357F005QHrhQLb7mh99Q==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <d3da9300-781f-9abb-158b-0c82d36228f5@suse.com>
Date: Mon, 30 Oct 2023 13:24:52 +0100
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH 4/7] x86: detect PIC aliasing on ports other than
 0x[2A][01]
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>, Wei Liu <wl@xen.org>
References: <95129c04-f37c-9e26-e65d-786a1db2f003@suse.com>
 <27dd8f40-1ea6-1e7e-49c2-31936a17e9d7@suse.com> <ZToksEP1Fg8MscdK@macbook>
 <86eb1c0d-ac95-247b-16c3-9c4871398082@suse.com> <ZTponIYDYDWRZhzi@macbook>
 <75026813-03fe-3a46-2274-b93e98f62f89@suse.com> <ZTqDjNSBmXeblsud@macbook>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <ZTqDjNSBmXeblsud@macbook>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR0P281CA0121.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:97::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_|DU2PR04MB9098:EE_
X-MS-Office365-Filtering-Correlation-Id: ef4ecde6-b635-4c9c-f081-08dbd94336a2
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	GsAbMPhCmQW3Hsy4DDdIAlg5tDvxnX9TnleTqT55jd5GvQDdFWza99L+fySC3aXzc8EvGMOnhO5c5QJxtKp79593Mjr8nrIs0W+yVprAt7Y+z2B1eZzeXzeYVly5fVjsuG+qa7rh3Q4uAKRgryHyr1S7Dl6I3l0oqUxdZTs/qg+K0xjeQ8fqD6A/jJWFSi47avTS9P4d6SRtYNdOjQtUgyKcAgfDs4++efpy7SUyedOA3VVlR14gLb75nUxzaGTaUbOxDu12+6vngEv4usyU6Q8brljLubujXeHO/V2JWUrqCjR8RArX408YufhjS0QN04aSijW5KuJa7y22vhFJUemu8U1q6ABoqHKJo30lPN2Dpa0QIEv/m4MV9WfJp8XKPUfiRbGrsQ2hNPfw0UtcnGuLJsIiVt6cnY7MK7Ok7FTAO4Qun3c7Gg/TTK65KhPY2kKnul3vw5S6vllvBHHC7urKUx9EFhoS83MiBFu1Q/3h4HmLSATR7HKCTsf9XhvTQo2E+7WRdNoHEPDlh8FOWjTkyMDfGro43WyY2/wMhunqOYAqKMDAo2mKpsRnW4D//ReCyLxhztrUZ3a67Vqh+Ui2T4fGhhSd2K0oq/1DK4RYNx2pk57YzOaYIfGUTpqMOBfjzyxSZcfm+ImxWAV+WQ==
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)(39860400002)(136003)(366004)(346002)(230922051799003)(1800799009)(186009)(64100799003)(451199024)(2906002)(316002)(66476007)(6916009)(66556008)(54906003)(38100700002)(53546011)(6506007)(2616005)(478600001)(966005)(6486002)(66946007)(83380400001)(5660300002)(6512007)(26005)(41300700001)(4326008)(8936002)(8676002)(31696002)(86362001)(36756003)(31686004)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?cXZuN1llWllmbkpuT0VxdE8veVNuRm4ybFVQVTBrNnpoZXZCZmwydGt4VWtQ?=
 =?utf-8?B?QmI5bHgwN0k5N01JYzJEb1hsbTRwNjdpc2NUdFQxaG83UlVnamEyN2tWM29x?=
 =?utf-8?B?TUIvWklvdCtZRGlRK1BtbWJTQ1Q2ZkdpR21ZbXgzemxITCtoUzNtbXFTaGxn?=
 =?utf-8?B?V292Sm9UYVI5dzhUNVVxak1VYXZ1dEV0aFVlM0llckZ0bUdJbC9ndUh5all4?=
 =?utf-8?B?QTFIT2gyNFZjYWVpQlRGYy9qVllzOEQxMmZTSzFZemlMR2w5TEhIT0F3bmUv?=
 =?utf-8?B?VTV3TjAwOVh0eC9hSkdwTWgvQnZRb1M2RmFvbkNHZnBIY040TGlFNDF0TVhx?=
 =?utf-8?B?Y0FNOXdxRHVyNW9Jbjd4ZlZvWDZIbXQ2am83eGhIZjZ6dElHaktINm1VSmF3?=
 =?utf-8?B?dnVpNkYrWmNzWVkrd08zMXlmUmNQVmIxbTdIdHdnSFBEV1BSME96cGNCdU1L?=
 =?utf-8?B?dDZMQVNHR2x2R2QvWi9EY0wrMDR2SXFKUklTbTZNc0s5eGRqU05VM29OeGF3?=
 =?utf-8?B?WnVPNGxHWmVhdUllMXAreHcvVkVvdnA2WFUxY3ZCa21ySURwOFFJNUJqUVN3?=
 =?utf-8?B?ajVUZ1BuVUQvZ05kckR1aTFWclNoZkV5bWRBTjh3Tit3VlV3OHBwQlJKWEFJ?=
 =?utf-8?B?ZWJIbjV5UlFsTjYrUE9Kd3BPS0xsWjVsMDQvd3p2NkhDM0xjMWRhNkZFc3Ro?=
 =?utf-8?B?SDl6eGhzZ3UycThiVnMwK0QycmVyc1MwZmtDbDBuamNSLzhBdWpnZjZHTWJt?=
 =?utf-8?B?L3VSNjdleW9VanJxZGF3QU5BbFR5ZG9ZV0xJalVaeWtub3NLYUY1RzhYbktv?=
 =?utf-8?B?TWRBQ05Sc05DYjFwR21pYkN4OXkwWmZ5QmdKNENjcVVoYUJtL1VpRkd0QXVE?=
 =?utf-8?B?V3RVL0tFVUZtWC9Pcldyc0lRNWJSVWxxcmljSks2TFduM09kdkIzeWJLZWd5?=
 =?utf-8?B?SitDM0JiN2JJemtkRVA4SkNyaXhLVEVSSjhkZXNWWUN2aTFBR1BURFB3U21B?=
 =?utf-8?B?VlZHWUlDOXZGZXVnVzdQTjFCT3RQWkc4eDdRWG9odUtMNTFmdWcrOXlzUDdk?=
 =?utf-8?B?dXZCSUhkeXFLeUtFNXZWV3ZvRkpzbTlKTkhHc2lJM1EvcWlQcStON2VGYk0y?=
 =?utf-8?B?OGFiU29EaFpUbGlZR2ppbEtIbWwxM0JOSmlwSjVBMU1GY1UvbDBObCtLV0sw?=
 =?utf-8?B?Q2ZPT2U0NG15UzJzekZacHI3cWl2MkJvNTgzM3JBNlhHS2toRm9nR2Y4Nk5G?=
 =?utf-8?B?ZE9HZTgybzRVbUsyOFZGQ0s5WC9OcTVaNHIvR0RVOXQwb2hqeXJnVTEydUpD?=
 =?utf-8?B?Qnd6dWl1VHRsTlJFRGJGZ0RWVjRUcjhvRW1seSs5ZWU0QkZoMHovbDdOMmRI?=
 =?utf-8?B?RUpvTjhOeEF0Z1FGd0l1MlhES3duVk9aYXMyT1VTeFNBSzExcGliWlVkRVJk?=
 =?utf-8?B?ZDFqZko5OVRmaVFDR0ZZNC95d282Z1Bla3p3MW1Cd2w5S3BLN29nVUdCdEU1?=
 =?utf-8?B?VklJN3VHb050Mmc5ZFN5SllJYzdnZElTRklFWXBOOHAyQ0ZaaEJ0OU5ER2tH?=
 =?utf-8?B?VVlUYmtoampzdGNJOUZXYlA4TkFNSUptaXNJZWdTM0NDOHdTWEMxTFVkNjg4?=
 =?utf-8?B?VkZXQlBQNVg0emxSbERhdGd6MHc3S1g2QldkZ2ZJUS90Y0xNRDNLM2ViVHlC?=
 =?utf-8?B?bmFsWitqQWY4L0NQLzNvK240QTRyTXJhazRFTHBQTW5JTnlJMEptYW9KMlVs?=
 =?utf-8?B?Si9VeHJuRHFhZlg1YThMY0NPYjViSFhIMG1WVy80SzBFeGlHUXJqOVF0UENU?=
 =?utf-8?B?Mk9LeStLWlJaZHJQd0d2cFF4dkNxMk00MDdZYmhzWnBxSUlhMVBVazVpODBv?=
 =?utf-8?B?S2pjUWhoamQraGw2b0ZOcXdXMTlzdDl6bjRnRWY3U0Zpb1ZBMXlaZk5FaFBK?=
 =?utf-8?B?NS9sS0ZrTFg5QnVuMldsQzRRWDN0ZG5rbXdYVzVwcS9QMm9qYkFSTXRwRGJL?=
 =?utf-8?B?b1lmVS80dWU1SXh5cTBFdnRyMU5pL0Y5akxmSFN6aUxOR3ozeWZTS0ZrUDNM?=
 =?utf-8?B?Z1AreFRwNmFTYUtIM0ozY2xleGFTUlZEOU1FMU9GQ0dDRUdZL2o1RWhaZ25R?=
 =?utf-8?Q?xOeHsohqY8pxYFRqEGeccWOzD?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: ef4ecde6-b635-4c9c-f081-08dbd94336a2
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Oct 2023 12:24:50.9765
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 7Ua4EzjYSh2Kd5B4PB282B+J6VmJJ4a4Um7qgFOjK6EtTeYyLp7S8EU1WX3TqneE7/TinApP1Uh6i8gEHTBCSg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU2PR04MB9098

On 26.10.2023 17:19, Roger Pau Monné wrote:
> On Thu, Oct 26, 2023 at 05:07:18PM +0200, Jan Beulich wrote:
>> On 26.10.2023 15:24, Roger Pau Monné wrote:
>>> On Thu, Oct 26, 2023 at 11:03:42AM +0200, Jan Beulich wrote:
>>>> On 26.10.2023 10:34, Roger Pau Monné wrote:
>>>>> On Thu, May 11, 2023 at 02:06:46PM +0200, Jan Beulich wrote:
>>>>>> ... in order to also deny Dom0 access through the alias ports. Without
>>>>>> this it is only giving the impression of denying access to both PICs.
>>>>>> Unlike for CMOS/RTC, do detection very early, to avoid disturbing normal
>>>>>> operation later on.
>>>>>>
>>>>>> Like for CMOS/RTC a fundamental assumption of the probing is that reads
>>>>>> from the probed alias port won't have side effects in case it does not
>>>>>> alias the respective PIC's one.
>>>>>
>>>>> I'm slightly concerned about this probing.
>>>>>
>>>>> Also I'm unsure we can fully isolate the hardware domain like this.
>>>>> Preventing access to the non-aliased ports is IMO helpful for domains
>>>>> to realize the PIT is not available, but in any case such accesses
>>>>> shouldn't happen in the first place, as dom0 must be modified to run
>>>>> in such mode.
>>>>
>>>> That's true for PV Dom0, but not necessarily for PVH. Plus by denying
>>>> access to the aliases we also guard against bugs in Dom0, if some
>>>> component thinks there's something else at those ports (as they
>>>> indeed were used for other purposes by various vendors).
>>>
>>> I think it would be safe to add a command line option to disable the
>>> probing, as we would at least like to avoid it in pvshim mode.  Maybe
>>> ut would be interesting to make it a Kconfig option so that exclusive
>>> pvshim Kconfig can avoid all this?
>>>
>>> Otherwise it will just make booting the pvshim slower.
>>
>> I've taken note to introduce such an option (not sure yet whether just
>> cmdline or also Kconfig). Still
>> - Shouldn't we already be bypassing related init logic in shim mode?
> 
> Not sure what we bypass in pvshim mode, would be good to double
> check.
> 
>> - A Kconfig option interfacing with PV_SHIM_EXCLUSIVE will collide with
>>   my patch inverting that option's sense (and renaming it), so it would
>>   be nice to have that sorted/accepted first (see
>>   https://lists.xen.org/archives/html/xen-devel/2023-03/msg00040.html).
> 
> It being Andrew the one that made the request, I would like to get his
> opinion on it.  UNCONSTRAINED does seem a bit weird.

I agree that the name is odd; I couldn't think of any better one (and
this already is the result of 3 or 4 rounds of renaming). I'll be more
than happy to consider other naming suggestions. The main issue with the
present option is, just to re-state it here, that we have grown negative
dependencies on it, which is a problem.

However, meanwhile I've realized that we don't really want to tie anything
here to PV_SHIM_EXCLUSIVE, at least not directly. What we care about is
whether we _actually_ run in shim mode, i.e. also when a full-fledged
hypervisor is in use. My plan is now to have said new command line option,
which - if not specified on the command line - I'd default to !pv_shim.

> Maybe the issue is that PV_SHIM_EXCLUSIVE shouldn't have been a
> Kconfig option in the first place, and instead a specific Kconfig
> config file?
> 
> Maybe it's not possible to achieve the same using just a Kconfig
> config file.

I'm afraid I don't understand what you mean by "Kconfig config file". It
can't really be just another .../Kconfig file somewhere in the tree, as
it doesn't really matter where an option like this would be defined.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Oct 30 12:39:42 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 12:39:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625075.973960 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxRYM-0001ja-27; Mon, 30 Oct 2023 12:39:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625075.973960; Mon, 30 Oct 2023 12:39: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 1qxRYL-0001jT-V7; Mon, 30 Oct 2023 12:39:33 +0000
Received: by outflank-mailman (input) for mailman id 625075;
 Mon, 30 Oct 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=ec4L=GM=suse.com=jgross@srs-se1.protection.inumbo.net>)
 id 1qxRYK-0001jN-Js
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 12:39:32 +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 5edcd8ca-7721-11ee-9b0e-b553b5be7939;
 Mon, 30 Oct 2023 13:39:30 +0100 (CET)
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 1B056219CD;
 Mon, 30 Oct 2023 12:39:29 +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 93B40138EF;
 Mon, 30 Oct 2023 12:39:28 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap2.suse-dmz.suse.de with ESMTPSA id ZbidIgCkP2UOegAAMHmgww
 (envelope-from <jgross@suse.com>); Mon, 30 Oct 2023 12: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: 5edcd8ca-7721-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1698669569; 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=Lngqcg+nkjGVgOoPgmcw4oMm+hcyGCopDw1fWfcrD/8=;
	b=Y5PKASa8dFVmFdnT6aL8z5iuwp4kcS3EeacVeKZUt/f07PMcW/mWWajKWL565n56G1hLov
	U3bRVzYyDJxOy2KSCtmT9hAXa8+XCMS3GI8vldRR0+Pd4xjCY75XRAmxWZh4LY5qxC+Gu4
	8j3I9oJ6K0OfNxn6YPbWpfHYe3QPz4g=
Message-ID: <3b6a8d5d-f766-49fd-aa35-992c5b048bc6@suse.com>
Date: Mon, 30 Oct 2023 13:39:27 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v3 1/5] x86/paravirt: move some functions and defines to
 alternative
Content-Language: en-US
To: Borislav Petkov <bp@alien8.de>
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>,
 Dave Hansen <dave.hansen@linux.intel.com>, "H. Peter Anvin" <hpa@zytor.com>,
 Ajay Kaher <akaher@vmware.com>, 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, Peter Zijlstra <peterz@infradead.org>
References: <20231019091520.14540-1-jgross@suse.com>
 <20231019091520.14540-2-jgross@suse.com>
 <20231025103402.GBZTjvGse9c0utZGO0@fat_crate.local>
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: <20231025103402.GBZTjvGse9c0utZGO0@fat_crate.local>
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature";
 boundary="------------CjY5AqY2i0DxVv5xgZzdvcJ0"

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--------------CjY5AqY2i0DxVv5xgZzdvcJ0
Content-Type: multipart/mixed; boundary="------------WtUeyENtP6GaM0fFvnSU09ev";
 protected-headers="v1"
From: Juergen Gross <jgross@suse.com>
To: Borislav Petkov <bp@alien8.de>
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>,
 Dave Hansen <dave.hansen@linux.intel.com>, "H. Peter Anvin" <hpa@zytor.com>,
 Ajay Kaher <akaher@vmware.com>, 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, Peter Zijlstra <peterz@infradead.org>
Message-ID: <3b6a8d5d-f766-49fd-aa35-992c5b048bc6@suse.com>
Subject: Re: [PATCH v3 1/5] x86/paravirt: move some functions and defines to
 alternative
References: <20231019091520.14540-1-jgross@suse.com>
 <20231019091520.14540-2-jgross@suse.com>
 <20231025103402.GBZTjvGse9c0utZGO0@fat_crate.local>
In-Reply-To: <20231025103402.GBZTjvGse9c0utZGO0@fat_crate.local>

--------------WtUeyENtP6GaM0fFvnSU09ev
Content-Type: multipart/mixed; boundary="------------gKgRX3PD6Fey5HM02ylSIZYh"

--------------gKgRX3PD6Fey5HM02ylSIZYh
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: base64

T24gMjUuMTAuMjMgMTI6MzQsIEJvcmlzbGF2IFBldGtvdiB3cm90ZToNCj4gT24gVGh1LCBP
Y3QgMTksIDIwMjMgYXQgMTE6MTU6MTZBTSArMDIwMCwgSnVlcmdlbiBHcm9zcyB3cm90ZToN
Cj4+ICsvKiBMb3ctbGV2ZWwgYmFja2VuZCBmdW5jdGlvbnMgdXNhYmxlIGZyb20gYWx0ZXJu
YXRpdmUgY29kZSByZXBsYWNlbWVudHMuICovDQo+PiArREVGSU5FX0FTTV9GVU5DKHg4Nl9u
b3AsICIiLCAuZW50cnkudGV4dCk7DQo+PiArRVhQT1JUX1NZTUJPTF9HUEwoeDg2X25vcCk7
DQo+IA0KPiBUaGlzIGlzIGFsbCB4ODYgY29kZSBzbyB5b3UgZG9uJ3QgcmVhbGx5IG5lZWQg
dGhlICJ4ODZfIiBwcmVmaXggLSAibm9wIg0KPiBpcyBwZXJmZWN0bHkgZmluZS4NCj4gDQo+
PiArbm9pbnN0ciB2b2lkIHg4Nl9CVUcodm9pZCkNCj4+ICt7DQo+PiArCUJVRygpOw0KPj4g
K30NCj4+ICtFWFBPUlRfU1lNQk9MX0dQTCh4ODZfQlVHKTsNCj4gDQo+IFRoYXQgZXhwb3J0
IGlzIG5lZWRlZCBmb3I/DQo+IA0KPiBQYXJhdmlydCBzdHVmZiBpbiBtb2R1bGVzPw0KPiAN
Cj4gSXQgYnVpbGRzIGhlcmUgd2l0aG91dCBpdCAtIEkgZ3Vlc3MgSSBuZWVkIHRvIGRvIGFu
IGFsbG1vZGNvbmZpZy4NCj4gDQoNClR1cm5zIG91dCBpdCBpcyBuZWVkZWQgYWZ0ZXIgYWxs
LiBXaXRoIHBhdGNoIDQgYXBwbGllZCBJIGdldDoNCg0KRVJST1I6IG1vZHBvc3Q6ICJCVUdf
ZnVuYyIgW2FyY2gveDg2L2V2ZW50cy9hbWQvcG93ZXIua29dIHVuZGVmaW5lZCENCkVSUk9S
OiBtb2Rwb3N0OiAiQlVHX2Z1bmMiIFthcmNoL3g4Ni9rZXJuZWwvY3B1L21jZS9tY2UtaW5q
ZWN0LmtvXSB1bmRlZmluZWQhDQpFUlJPUjogbW9kcG9zdDogIkJVR19mdW5jIiBbYXJjaC94
ODYva2VybmVsL2NwdWlkLmtvXSB1bmRlZmluZWQhDQpFUlJPUjogbW9kcG9zdDogIkJVR19m
dW5jIiBbYXJjaC94ODYva3ZtL2t2bS5rb10gdW5kZWZpbmVkIQ0KRVJST1I6IG1vZHBvc3Q6
ICJCVUdfZnVuYyIgW2FyY2gveDg2L2t2bS9rdm0taW50ZWwua29dIHVuZGVmaW5lZCENCkVS
Uk9SOiBtb2Rwb3N0OiAiQlVHX2Z1bmMiIFthcmNoL3g4Ni9rdm0va3ZtLWFtZC5rb10gdW5k
ZWZpbmVkIQ0KRVJST1I6IG1vZHBvc3Q6ICJCVUdfZnVuYyIgW2ZzL25mc2QvbmZzZC5rb10g
dW5kZWZpbmVkIQ0KRVJST1I6IG1vZHBvc3Q6ICJCVUdfZnVuYyIgW2NyeXB0by9hZXNfdGku
a29dIHVuZGVmaW5lZCENCkVSUk9SOiBtb2Rwb3N0OiAiQlVHX2Z1bmMiIFtkcml2ZXJzL3Zp
ZGVvL2ZiZGV2L3V2ZXNhZmIua29dIHVuZGVmaW5lZCENCkVSUk9SOiBtb2Rwb3N0OiAiQlVH
X2Z1bmMiIFtkcml2ZXJzL3ZpZGVvL3ZnYXN0YXRlLmtvXSB1bmRlZmluZWQhDQoNCg0KSnVl
cmdlbg0K
--------------gKgRX3PD6Fey5HM02ylSIZYh
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-----

--------------gKgRX3PD6Fey5HM02ylSIZYh--

--------------WtUeyENtP6GaM0fFvnSU09ev--

--------------CjY5AqY2i0DxVv5xgZzdvcJ0
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/Ey8FAmU/pAAFAwAAAAAACgkQsN6d1ii/Ey9X
uQf9HVW5MAezF4sh5DKlZuUi81hLzbrceMI/4mgDEoARnFElG81OLh2+VbeukkopRfKFk83m3iDX
Nwczt7+A65fKi2X31jD2Qcwk+Roy22HyH3YOVGR8GyrwD+t40pnnA2j+ltwLNwT8NlnQ4sX/Xs54
/u43Mb372gE+gxQUR6JQq3aHeO+xcYoAvOYOeUn3JGOWoCu/HbQGwAoU6T2Xn5xwdeHTnTRugghs
DsS8QMJJXxmeTFMVokdeISwUqENxPiGTPyOlhzCxLtHkAQyatGHlUXcuOoE/9LeQ+yjOBa6QO8Zp
psAtk64ro1/ouewo/0WZUNT9G+g3r8jL2mkMZU5Bww==
=rD7o
-----END PGP SIGNATURE-----

--------------CjY5AqY2i0DxVv5xgZzdvcJ0--


From xen-devel-bounces@lists.xenproject.org Mon Oct 30 12:51:07 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 12:51:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625079.973970 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxRjK-0004fy-4l; Mon, 30 Oct 2023 12:50:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625079.973970; Mon, 30 Oct 2023 12:50: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 1qxRjK-0004fr-1v; Mon, 30 Oct 2023 12:50:54 +0000
Received: by outflank-mailman (input) for mailman id 625079;
 Mon, 30 Oct 2023 12:50: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=Hhfi=GM=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qxRjI-0004fl-El
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 12:50:52 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 (mail-am6eur05on2061d.outbound.protection.outlook.com
 [2a01:111:f400:7e1b::61d])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id f3e94edd-7722-11ee-9b0e-b553b5be7939;
 Mon, 30 Oct 2023 13:50:50 +0100 (CET)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM9PR04MB8339.eurprd04.prod.outlook.com (2603:10a6:20b:3e6::6)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.18; Mon, 30 Oct
 2023 12:50:47 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6954.016; Mon, 30 Oct 2023
 12: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>
X-Inumbo-ID: f3e94edd-7722-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=TsK228iAh6aGckWT5+J5l8QJrN1yoqCeWbvz0F5z/E7l8d6bLH1TVsjNyA5UA7deMGRbAKu4vxTaNDg0ZiBAD7aap3r6E4GcJUANJoVsaimk8JMChdF8esc32G3/CdDpbri3oHnVY3B90Dw54hLyHLIXyB2sIX/Dzn4ulfHNsaKrq4gxxlQnWY9qUBaTaa92mZKVWrQTREvNo5UX5X07QdosFNS1m/vXyO8A/Ra+FVdzBFkG4865jGYFhmLfpN8mw+cJidbmxfX7NMln5uDV0OEWzgaRtgN6N0ZJ+A+Xg9oR58ZZvL3sjVwOrvv/p9hBzbkVbIRkgMYSuALQWl6pFw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=rAHGO6KVerxMhewd1ogEz8HFz1lkwF2+2TWetT93Xvw=;
 b=Yx/TmSOtEmO6L4BBYnxYoAc4QHZolANfLgmuqaGKEcK8CwZkcSmlFgtjJBxn779ocZcv2fQdVLooF/CoGUf8c6JJUH8y2ihlydR0cWw9uKBFVMk8dsM943xCuC0kxU1Ao/YHyHG+dfAWG2b7lhGOYNYrkXaRLbnt98gudu8thWvC53FgRSH3lMYmZLEhjE0vuwttleuIj5tXHVQLyU118PEiqtLvcjS0X6h+PGLx+KI0hEH6/JC49RjLxxg34wpOpgGPhB2mi8xPy/Ydp6MX3w51eoIOS7n5ONUwsp+4+y1URZLvnySQNEIRPdT3AlJycg6THizX2ztNkq8SrH/OAg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=rAHGO6KVerxMhewd1ogEz8HFz1lkwF2+2TWetT93Xvw=;
 b=EjWt3ZffkqTn1nnB+ATQoYb8bA9t/m7Uq9m08Ubyxm3ysrtvmDnKlsM1o7hwtyHiCdy3fBLh0fuMUpk+f6Z/sF1YMEisTO03zlbHRB7F0H+iUfzCnQos8AL4sS2JchSIa5gZBQy2CChDNo0kLYgH8fsSeBfHkkkXBbbFM1eTyMyTCmEtG2TIJUN1XNK6LwQnebz7WSsNIIwNZPOIPu/J30qa0AD+l8vHc/UfB+Ib3UcIoN/97Ui2J6mmzsih/YntIf/rxCsflOhZR7DRhB3eWasDz+CI/bnMsrk7Zrd7utLqtwJbr4fSOnaCEMscN7Re1J59lJ69kelDL7DvKtJmLQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <fc66ff4d-8440-85d0-ac65-940c48d51ff9@suse.com>
Date: Mon, 30 Oct 2023 13:50:48 +0100
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: detect PIT aliasing on ports other than 0x4[0-3]
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>, Wei Liu <wl@xen.org>
References: <95129c04-f37c-9e26-e65d-786a1db2f003@suse.com>
 <042f76dd-d189-c40a-baec-68ded32aa797@suse.com> <ZTo-tpk64ew4rk1o@macbook>
 <6c3a4243-fef4-129c-8f58-7bc009f886b6@suse.com> <ZTpwTrLU4d90lWYm@macbook>
 <bbc0d98b-8908-3fdb-ebb9-6cff5caf940c@suse.com> <ZTqCLbFJkAyKCPuc@macbook>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <ZTqCLbFJkAyKCPuc@macbook>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR4P281CA0340.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:ea::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_|AM9PR04MB8339:EE_
X-MS-Office365-Filtering-Correlation-Id: 88d3ce84-4f9b-455b-c15b-08dbd946d64a
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	lr+brNkv+HBsQ5zgGDl04IT1tGWcXTGDZwK9aW3sbHcRa4DBVA0Fhg4MmHYc7kgdXB3s6kN2/oCO+qKUePq8dZmtdfzbBybkGKKn/4po0iLHjPCZRBmv1BYrTwYNq1ybCWDKOQx5lHKkRObfDD8/J4DFw/vlWU19Dyrb78Sqzm3XkFtIbRozRpYajROcANS0DNuQwJG42zu6KPijqpYd6rjMXb/eWFHltFI480KryUAEnUfAN5TK/0mCeacRGZSoZfcOhQOijZoobJCLFWHpoG5y4xlyAawMiY1JlXQjx7d0VkVy4m+vmKcNaAptnwYC3NQRELz9Tl4NgTqshbYgFpH/zne6KlLvH4qO3bVK08CbtoneeLjtLJ6hvfB+bAS2k2x8uu2t5ssmCmUUHY9xWGNE0WI6WCxXZKSF8TDG/d8CVc5DE8o/yFQcBkwagiTiKl+4oGL18av0fu9uUmR538scDsQ6UYNan7acqlpITPCvDScBaRwd95ItaI0/LgipeuunAV/j77AJclmd1RVL11ZfYBjl+x7BkFBP1LrxXcl4sduUNZnrePLSF0nkN8Cj59PNIHdsNwRgaIUWHSsRZkMgCbViMAh12lWiOVrGwrMrgfhjrszBdI8ntY37k7MCW0sqb5cBsxd4x1sqwSYB1Q==
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)(230922051799003)(186009)(451199024)(1800799009)(64100799003)(5660300002)(41300700001)(2906002)(54906003)(66556008)(66946007)(66476007)(6486002)(8676002)(8936002)(4326008)(478600001)(316002)(6916009)(66899024)(38100700002)(83380400001)(86362001)(53546011)(31696002)(36756003)(31686004)(6506007)(6512007)(26005)(2616005)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?b0ZJN1VFTXM4SG1LTGRTTngrN1J6UVZLOUdESlpiQkdQT3lrQ1ZETG14NitX?=
 =?utf-8?B?L21SdWpLazhYRFhIb0NCaElCZXVGVXdEN3lwdXdyMy96V0hMbndZWWc1Rmly?=
 =?utf-8?B?b1dpbXFCU2NoRjg3QjY5ZlQ5ZUVVVE1xRXZtNkh1OGovSHBqV0NaUzNOL1Ns?=
 =?utf-8?B?SFUrN2UxdVNLdE5XRnFJaG5acDlGMXZuOVo0ZWJIN1o2NnkzUytacUlIRVhH?=
 =?utf-8?B?Z21MRnNHRkowK1dicjV3WURldzF1eGxVMVBRMkFybWhLR0FWdDFHQk5OQTJW?=
 =?utf-8?B?aldxNXc1UWlqclhvcXFEWmwxNWQ0Q2docVdwZ01yWDlZM2NmSG1DZk0wVDVP?=
 =?utf-8?B?QXVtNzBBdzlhWW12VEV3VlVXZXptczJtS1R0a1J0UXVzczg2L3lyY0tYMjI0?=
 =?utf-8?B?dUVGMTh4VzJ3VVNocnpqTVU2RVVpNk15bGF3MlN0cWJsVHp2dGI2YWZUY1Q2?=
 =?utf-8?B?Tm83aHk4OTFlMVVOM0NxMzhZYTFacW8zMEtzVFFOcmhEOTh3aVRBNExzdis4?=
 =?utf-8?B?Z2R1bDE1ZHZVYlY5K2c0c1lzaU9IQ2sycTgwMzI1QUxiVHlndEgxQ3V1YXAr?=
 =?utf-8?B?bkw5SVFNMHdRUCtHQ1c3eUlNd3JhaDI4ODhYUXkvRGZnTlNxZm1wWlI3YitJ?=
 =?utf-8?B?VllZamdTdEIzNk50WUE1Wmk1c25QUnRMWnIwd3hDTDB1aExjMWhlUm9JcG4z?=
 =?utf-8?B?S1pndFk0WjIvczBnVWszRlRrRTJOZDhDTnQvaDk2ekN5bm9qcFhBVEtORXNS?=
 =?utf-8?B?b3NYZHVhdWZhVHVPZnFOcG9ibW53Y1FMQlduSUEya3p5NjZQNzgydGxRb1Zh?=
 =?utf-8?B?TVBucHVlMmpLWHZ4TDhZbU1nc2JEaUhwRXdra2ZORkNjbDR1Sjh6NlhoRm9H?=
 =?utf-8?B?aHNiUzNyZnRYL1hQcXhCR2lJdzdDVXpOdGRyOWRQUjhqTXJjaXY2N2lWS21V?=
 =?utf-8?B?dklxRW1VSkRFT08yeVpkZTFDWHdBd1loYmV3a2kzcTN5WGhxRzZIeUZ3ZVNG?=
 =?utf-8?B?USttMi9kZGUvNW16OVp2aEVqQkF2K3czWmNoNXhVWmVxV2F4NDJwUC8zaGY3?=
 =?utf-8?B?dUN0UDFXblVXQjBuZDdDRFZlNUdsa1ZYWmhRZDdDbTdLMDFvSnRhZk00VXU3?=
 =?utf-8?B?dGIvVTF3cVI2aHZmejRoOHd3TEt1bGVuby9TUWFCUERoYWFlK05pTUhrOXFi?=
 =?utf-8?B?SWRHdW9oYnovZTdCUHlBbHNqbVRXV1M0Rzg1b1l2dGlFUi80eGFKamIzZUl3?=
 =?utf-8?B?b3J4dG82QkFwMG9PQkZhd3Zkd3pEcmVEK2VGbE9ZcHB5Z2JqSm5EZEhIQllq?=
 =?utf-8?B?bWJFNjl5NnFpK2twRWtXUDNkcVRhWkRNNkdhTFplVmUvRnhUZmEwWUpDb0Fz?=
 =?utf-8?B?S1NIUVk3dTJYVEJ0Z1hQS2xBL0xuMUtRVE53M3BScXBISTJCYVNmOW4rYk9I?=
 =?utf-8?B?aFY3M1FURTFrUGYyZ3VuWWZaMzQ0ZkxnZHdIV3R6Um5lSjRBd0duOHl2Qzlh?=
 =?utf-8?B?bmRqdkxKckM3MmloUzI0cyt6dTlKVzdTN0JTL1RzUW0xMVBxSGhpRTJsRkh0?=
 =?utf-8?B?Mk9qdDJ3cFp1eWVwdnJIZmRNVGl3TllHZkpTcDlVRXFsMGUvN1lPc1VCTld3?=
 =?utf-8?B?WlRMbTVGK0l3dzhxb1Q2MDdNR29YSmNLMWsveDdDL2drZVcvMkNzTStoSWQr?=
 =?utf-8?B?ZWNnSXAvdFBRWmdWRW1la2hEOEpVZ3h3RDQxRGZDRHN1UmdYU2JscWlkbWx5?=
 =?utf-8?B?VGI5RmtlSUFDb2pyWUZpbFBlM2wvU0RadXpkYVRpR1A1cVR5Qi9zTVU2d3VD?=
 =?utf-8?B?QThydkkrQXo1c1R0UVVXdnVDOTNxNkpubUFUellybjhTbEJEdHVUMDVuQUty?=
 =?utf-8?B?YjhHYzBYUVpWeWlmTGlaekc2WnZ0Sm5XejFJa0pqSkRuUThRdVU1VExCck8v?=
 =?utf-8?B?NTBhekduTHRwLy9RN0xtTVRUUGIwTXJFa2QzTk12WCtpNWFmM1YrRDhlUjNT?=
 =?utf-8?B?KzNydzBFNnhDTWpRUHlIbGdhdktYcEhiNW9HblVEVmNOSG14M1FXVjI1RXB4?=
 =?utf-8?B?U2tTVlVqU3NoZDdOdFJIbDhqUmFoRGp1WjJOTFZYemo4OGtkckJZcDZLeGND?=
 =?utf-8?Q?vX7LKGnibQ1iKamdKXv3QloRS?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 88d3ce84-4f9b-455b-c15b-08dbd946d64a
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Oct 2023 12:50:47.0480
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: o5WjGI1eVuJVqfVOr0QaYGCnTS4w7SlIe5LPabBbSx87trxPqFzm3XptfQlHh/D2SBy4XW4yhVerXxN58eMRNQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR04MB8339

On 26.10.2023 17:13, Roger Pau Monné wrote:
> On Thu, Oct 26, 2023 at 05:10:41PM +0200, Jan Beulich wrote:
>> On 26.10.2023 15:57, Roger Pau Monné wrote:
>>> On Thu, Oct 26, 2023 at 02:31:27PM +0200, Jan Beulich wrote:
>>>> On 26.10.2023 12:25, Roger Pau Monné wrote:
>>>>> On Thu, May 11, 2023 at 02:07:12PM +0200, Jan Beulich wrote:
>>>>>> ... in order to also deny Dom0 access through the alias ports. Without
>>>>>> this it is only giving the impression of denying access to PIT. Unlike
>>>>>> for CMOS/RTC, do detection pretty early, to avoid disturbing normal
>>>>>> operation later on (even if typically we won't use much of the PIT).
>>>>>>
>>>>>> Like for CMOS/RTC a fundamental assumption of the probing is that reads
>>>>>> from the probed alias port won't have side effects (beyond such that PIT
>>>>>> reads have anyway) in case it does not alias the PIT's.
>>>>>>
>>>>>> At to the port 0x61 accesses: Unlike other accesses we do, this masks
>>>>>> off the top four bits (in addition to the bottom two ones), following
>>>>>> Intel chipset documentation saying that these (read-only) bits should
>>>>>> only be written with zero.
>>>>>
>>>>> As said in previous patches, I think this is likely too much risk for
>>>>> little benefit.  I understand the desire to uniformly deny access to
>>>>> any ports that allow interaction with devices in use by Xen (or not
>>>>> allowed to be used by dom0), but there's certainly a risk in
>>>>> configuring such devices in the way that we do by finding a register
>>>>> that can be read and written to.
>>>>>
>>>>> I think if anything this alias detection should have a command line
>>>>> option in order to disable it.
>>>>
>>>> Well, we could have command line options (for each of the RTC/CMOS,
>>>> PIC, and PIT probing allowing the alias masks to be specified (so we
>>>> don't need to probe). A value of 1 would uniformly mean "no probing,
>>>> no aliases" (as all three decode the low bit, so aliasing can happen
>>>> there). We could further make the default of these variables (yes/no,
>>>> no actual mask values of course) controllable by a Kconfig setting.
>>>
>>> If you want to make this more fine grained, or even allow the user to
>>> provide custom masks that's all fine, but there's already
>>> dom0_ioports_disable that allows disabling a list of IO port ranges.
>>>
>>> What I would require is a way to avoid all the probing, so that we
>>> could return to the previous behavior.
>>>
>>>>>> --- a/xen/arch/x86/time.c
>>>>>> +++ b/xen/arch/x86/time.c
>>>>>> @@ -425,6 +425,69 @@ static struct platform_timesource __init
>>>>>>      .resume = resume_pit,
>>>>>>  };
>>>>>>  
>>>>>> +unsigned int __initdata pit_alias_mask;
>>>>>> +
>>>>>> +static void __init probe_pit_alias(void)
>>>>>> +{
>>>>>> +    unsigned int mask = 0x1c;
>>>>>> +    uint8_t val = 0;
>>>>>> +
>>>>>> +    /*
>>>>>> +     * Use channel 2 in mode 0 for probing.  In this mode even a non-initial
>>>>>> +     * count is loaded independent of counting being / becoming enabled.  Thus
>>>>>> +     * we have a 16-bit value fully under our control, to write and then check
>>>>>> +     * whether we can also read it back unaltered.
>>>>>> +     */
>>>>>> +
>>>>>> +    /* Turn off speaker output and disable channel 2 counting. */
>>>>>> +    outb(inb(0x61) & 0x0c, 0x61);
>>>>>> +
>>>>>> +    outb((2 << 6) | (3 << 4) | (0 << 1), PIT_MODE); /* Mode 0, LSB/MSB. */
>>>>>> +
>>>>>> +    do {
>>>>>> +        uint8_t val2;
>>>>>> +        unsigned int offs;
>>>>>> +
>>>>>> +        outb(val, PIT_CH2);
>>>>>> +        outb(val ^ 0xff, PIT_CH2);
>>>>>> +
>>>>>> +        /* Wait for the Null Count bit to clear. */
>>>>>> +        do {
>>>>>> +            /* Latch status. */
>>>>>> +            outb((3 << 6) | (1 << 5) | (1 << 3), PIT_MODE);
>>>>>> +
>>>>>> +            /* Try to make sure we're actually having a PIT here. */
>>>>>> +            val2 = inb(PIT_CH2);
>>>>>> +            if ( (val2 & ~(3 << 6)) != ((3 << 4) | (0 << 1)) )
>>>>>> +                return;
>>>>>> +        } while ( val2 & (1 << 6) );
>>>>>
>>>>> We should have some kind of timeout here, just in case...
>>>>
>>>> Hmm, I indeed did consider the need for a timeout here. With what
>>>> we've done up to here we already assume a functioning PIT, verifying
>>>> simply as we go. The issue with truly using some form of timeout is
>>>> the determination of how long to wait at most.
>>>
>>> I would likely make it based on iterations, could you get some figures
>>> on how many iterations it takes for the bit to be clear?
>>>
>>> I would think something like 1000 should be enough, but really have no
>>> idea.
>>
>> Except that how long a given number of iterations takes is unknown. 1000
>> may be enough today or on the systems we test, but may not be tomorrow
>> or on other peoples' systems. Hence why I'm hesitant ...
> 
> Hm, but getting stuck in a loop here can't be good either.

I certainly understand that. The command line option I've just added in
a prereq patch would allow bypassing the probing, but of course I agree
that we want to avoid hanging here nevertheless (if we can).

>  Let's do
> it time wise if you prefer, 1s should be more than enough I would
> think.

Yet time-wise is also problematic ahead of us having calibrated clocks.
And using the PIT itself (which runs at a known frequency) doesn't look
to be a good idea when we mean to deal with the case of a broken PIT,
or none at all.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Oct 30 12:54:19 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 12:54:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625082.973979 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxRmb-0005aw-Ij; Mon, 30 Oct 2023 12:54:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625082.973979; Mon, 30 Oct 2023 12:54: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 1qxRmb-0005ap-Fz; Mon, 30 Oct 2023 12:54:17 +0000
Received: by outflank-mailman (input) for mailman id 625082;
 Mon, 30 Oct 2023 12:54: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 1qxRmZ-0005ad-Hx; Mon, 30 Oct 2023 12:54: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 1qxRmZ-0000kY-8O; Mon, 30 Oct 2023 12:54: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 1qxRmY-00041K-UQ; Mon, 30 Oct 2023 12:54:15 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qxRmY-0003oG-Ts; Mon, 30 Oct 2023 12:54: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=1a/ZaWvshJL2BccaxkMdDZPPL306TS/xziLk7uCbf7A=; b=Usr92dKNFvWda2RdJugv8kmDE8
	6/8Rpuc51TuZ1uPcrYQip9uXfWbIO4P2p3mGGfP/AqV+8h21hzE2TrNnPvYubiJTrkzRHc6DQXwnp
	oWlWXUFclVaD8pUieazFVZZB70WveNH6tkm0FdUtcD5l8QUdG+BDdxhYItUPu3dZqmk0=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183618-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 183618: 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=9659b2a6d73b14620e187f9c626a09323853c459
X-Osstest-Versions-That:
    xen=5415b2b2118bd78d8a04f276a8312f7f0cb1a466
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 30 Oct 2023 12:54:14 +0000

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

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                  9659b2a6d73b14620e187f9c626a09323853c459
baseline version:
 xen                  5415b2b2118bd78d8a04f276a8312f7f0cb1a466

Last test of basis   183525  2023-10-25 11:00:28 Z    5 days
Testing same since   183618  2023-10-30 10:00:39 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Julien Grall <julien@xen.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
   5415b2b211..9659b2a6d7  9659b2a6d73b14620e187f9c626a09323853c459 -> smoke


From xen-devel-bounces@lists.xenproject.org Mon Oct 30 13:14:59 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 13:14:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625089.973990 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxS6U-00014W-7W; Mon, 30 Oct 2023 13:14:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625089.973990; Mon, 30 Oct 2023 13:14: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 1qxS6U-00014O-2j; Mon, 30 Oct 2023 13:14:50 +0000
Received: by outflank-mailman (input) for mailman id 625089;
 Mon, 30 Oct 2023 13:14: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=Hhfi=GM=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qxS6S-00014I-Es
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 13:14:48 +0000
Received: from EUR02-DB5-obe.outbound.protection.outlook.com
 (mail-db5eur02on20603.outbound.protection.outlook.com
 [2a01:111:f400:fe12::603])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 4be61bc6-7726-11ee-9b0e-b553b5be7939;
 Mon, 30 Oct 2023 14:14:46 +0100 (CET)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM9PR04MB9004.eurprd04.prod.outlook.com (2603:10a6:20b:40b::10)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6954.15; Mon, 30 Oct
 2023 13:14:44 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6954.016; Mon, 30 Oct 2023
 13: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: 4be61bc6-7726-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=JM7AhipIM/gAKD6N379Ecjai+UVnZkt9CCjrKR4qdVZnRRHJWHQcCCa3K3WRLR0QFBhsDGFYXKWfjfhb+aJl9nR/YrBQxSUkbt6qGp+EmDywgcNVsGjprHdxAVd9CH+FXFXLXjqkvkzpaAE5IkXv0Ndxv0bt6FLUTha48QW+Qh7DNxZwI2APyBg2+ZXxFcdyJ0vIpKkg/iWee8+KlOFQyQk2qgjwEIc4XV98x/rBwWjIDAjNtEzFacj513RZDE3j6hb3kC7n/jwzcOiluj8idAOgZ0DUutoP/GK23Lp0gK6sKpvysAWGpkvOE2UHQnsarNAQqtEqwbXtd+mq/K+1ig==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=3Q4mQqnMvveaYTXc/q/QyyNJWrBwCyPsV63BAEhdJmM=;
 b=hdhR/Oyr8+PKTeY7+dgT9umluxZhmOvcJIxObP0t2m4JQKtgmscQQ6sU/MS9eOIcrgKqhi4sfxEjA5EWTPHCR/uYyTWey55e8j8noO5SAuGbRHNGzIK6s8i2+t95S8i7lHDCG7JtbgbPhQPKqvGaV2/TjP06i1lMMwqS/vtpckuxfUrFxo27C486pn1rVPgGFUrpi9NEUfF/yPSEP2fw7b0uF3cWMN/5GOklLHNGGBXGf9tfCZvZOJZzFRvIr5L7d/3yf/ojZOtzyx5wQ5tOdp+UUkGv8hWcpqdFu1egMsR+vfpp+qH20FYCzFq5YqC1bOROWFKCtkhtDFi6WYP7pA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=3Q4mQqnMvveaYTXc/q/QyyNJWrBwCyPsV63BAEhdJmM=;
 b=eb/8SNMXrc96ZPrOO33qFCyUYtMnx3AhqBcfx4yoxcm/bm1bmJ7EwwjtTzc8PkLEAL2Lir5nnYsMAOeiYfnItYfiDaHR7q0KxYmLRnkArPW5ShGVI6Hx/HsGxDXVlTFbWgF7dDl43lvXQS5Duoz9eT0FwvBG8yaOWbDugY3Ac5PkjRfnakKg2UIN+bXU621j1cIpZKXBZv9K/a4m8rHRwT9sNxPeQzLCRnjRyp810SwjOm035QNkanpxKKLXMLi7uRcedgsAta3Otq5e9LWUaAHIfsmqGVYF7xM8vmtiOyv/JqdMHxhdPSgk9Tzhduw+88azdOH4oltpOca4IadAzA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <b297e430-f3e3-97a7-be7d-1debdbcb0119@suse.com>
Date: Mon, 30 Oct 2023 14:14:44 +0100
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
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/PVH: allow Dom0 ELF parsing to be verbose
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_|AM9PR04MB9004:EE_
X-MS-Office365-Filtering-Correlation-Id: 966bba68-2b74-4dca-8e63-08dbd94a2ee6
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	pM0keaDmkA2IeB45t3VGUE8AjkaVpvutVSF5db4SnAedSGceuo3fZi0f4Y8BySqXLE79tqs5IJ2m/VBSyH8Kq1/Gbx1gSQGwGY26K7PcOetO5Jcbs+dWJDLDeN2jutEs38RX517tw57iOBrt28mUOThpVcKAdqKHFf99JRsER37fzetcN1R88teEFmcvqjLnODvg/SnL5Ftw3yXybMT58N7TrW86SukkjustObqledB2S2xuD2Dq1W5oCR63Ls+1FjxUIAheNK8JS1L0tpLxwaEKDX54JKb+eWDkxZXqvaFK9oumDaFJtoNyQFsbe3vV6t7CcDBKv//mt4kuaJStzw22UBjrAnGWwD817G1ro9GYjD/gUjgT+scYduJIsBXJ+As3kbINOuL7eXDlin+VBRifVK3BeZ1kAnBbTCMrPAtc+J2ro4sMPpVuLQW6F0/hN71y4g04V/myQooaQBZyQgHiqlSJMxz1QRrEsIL5d2spGfbT/bVgRvUvEIUbzQ9fl4m1DoNxHk6XTROqd1gEXwd9gX6OodgL5rxQkiv+HoN0f0TI6XqKeaJK6vsOPMERWfppjUz1tCZKsPNYN1XYB/EoZ8b48UuCH5HSTTEgSeKxUoD+tsUSRXa4ji4/TqlDnIgiUnG2vb/14VrSvv08zw==
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)(376002)(366004)(396003)(230922051799003)(64100799003)(1800799009)(186009)(451199024)(38100700002)(26005)(6506007)(31686004)(6512007)(2616005)(31696002)(36756003)(86362001)(54906003)(66476007)(66556008)(66946007)(4326008)(8936002)(8676002)(6486002)(41300700001)(5660300002)(4744005)(2906002)(478600001)(316002)(6916009)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?TUU1S1doV3dxRVZZa2cwcDR3YlFYR05Ba21EY2kyYVBsbUdDZnlNb29xWEpU?=
 =?utf-8?B?cXIwaVBLT0lIVVR0V0ZLSmEreFF0R1JmZ3R2TEdRNzNZZTdWekd0dHNJSTkv?=
 =?utf-8?B?WS9ZYk9YRjBLckJUL29wUDRMclNjN2N3K0hHMXdnTFZmWHgvZkNXL1lXdVpi?=
 =?utf-8?B?QXd2dWc3cG1zNGEwRnR1bytGU2l6TG1QL1NPdng5MVZMUEdwenNZNFBqK1JY?=
 =?utf-8?B?YkJGMXljWDBIaEdpTFkrdXNNWW5xVi96MStRT3Q5SjlwZEwrSFRPUy9aOE5O?=
 =?utf-8?B?UldtVXc1azRpNnVrZmNTdDhkTkpDTTVFcXVJWHQzSXhPZDE0THVrQlFQMk5Q?=
 =?utf-8?B?VHRWYkR2RHBOcXF0azBLeXBZYUNtZEtNQ2R3cmlKS1Nxb3A4bVB3MmRDSWk5?=
 =?utf-8?B?ODRJc1k2eWo0TEtJL3ExTHJocCtoM3RrYzRkajczYlhyUFZXYU1lb3RiM0pP?=
 =?utf-8?B?aEN6NTluMkpaS213Zk5sN2EvS0s2cG5lMGNvcmNtUDJMbWhPeVJjVkIvVWdl?=
 =?utf-8?B?d2FObXBSSmlUbGY3VlJkV1QvbElBei81REFyTk1FUW42TFhSbVE4Mi9sQ2d2?=
 =?utf-8?B?dWNNV0dLbUliRjlZZldZLzMzWjlrNkE3R0doY2RBaEN4RTFOVTlzdzFqaWRs?=
 =?utf-8?B?RVVaSWcwUUsycU1LOG5IOVBGcS9pbmtkcWVUM1V1emJGcWpvbGlNbHhJYndi?=
 =?utf-8?B?SUg1d0V6dENzdG11TCtsQjU2N0wrWDd3dHBEVWJ3Qzk2ZERJNjBpcUtiSmxz?=
 =?utf-8?B?YXNLY0VYUC8zRFQxM2NpS3lVZHAzVHFxT0RBQlFDeFIvMDN3YmdlNUQwbTdH?=
 =?utf-8?B?USt6dkxab2txK01LYlkxOStBZXdVL2hFODRoTmxhQUMrUnhGMnFNWWEyM0VW?=
 =?utf-8?B?VVNQbHlxMi95aHpocU5tQWdJaGNESHdxVkFZSnBmVllNb3VYNGdnVTF0cWor?=
 =?utf-8?B?aU9zRmtFQ3VLUUdaYjAwTHZCMzlpVlN0MGZjaGdISkIzUEZtZUxkcXd6Ulpm?=
 =?utf-8?B?R0ZIMmpMS3QvcVhUVVNUL0dDMkd4clM0WGVOMGZOQmltYkVHS2NuQ3drRXV4?=
 =?utf-8?B?RllVc0xIdVNkdE5tRDJtRGs2dUR0NVdGNXpPUEVKOUh6RU91TnVUY3RhdFAz?=
 =?utf-8?B?K1R4MUc3ekNZUFVVMDBsRUF3eW0xd3UrNTM1ODhTbisvYysxWFVOZmNMS2Mr?=
 =?utf-8?B?VjYvUkZvbTRXRStGTlVlTVRwckxaRXNFdjJlYzVFSE9RWUt2ZUF3aklYS29u?=
 =?utf-8?B?SmRHZHdEZXZTNk84d3h4eTFyOVVnV0FXdGwyMVpMWHZwZW9KTmNDaTFhcm0y?=
 =?utf-8?B?UGdBcWREZEo4a3J0cElIK3VnOGUzczZGOHliaUNRZUFIOUtQLzZwUzNsdHQ4?=
 =?utf-8?B?bXdKWGJ5ZHZLMFE3QUZkTTdMT2oxYkpqTG96OGZiVVRLNjNMV2FTVlB2bmtx?=
 =?utf-8?B?TmpTRTBuaWJNYTBOUlZkUFhHZ0luamJoZFZOY05XMUtwK01VaDhEajdJN001?=
 =?utf-8?B?VVRUZ01XMk91QmRoMklxdGVrUDVLanZHVnc4bU8yOEdmeDZKd3FaTjhKM1Ry?=
 =?utf-8?B?MFBvcUVnNkJUNXZ5UnA0L1dXeW5KRjNBMkorakhxeGhpU2N3STVES2YwUENM?=
 =?utf-8?B?enRKVnEzTHA5RjY1NXJXODNCSUpDN2RkWW5vMHVpZjU2MUJiS1lzamh2MWZw?=
 =?utf-8?B?WHE3YUtzSmp4VUZQT1Rrbm5FRzdUbjlpMFhGKytTQXU0bm5xUHJtVmI5T0Q4?=
 =?utf-8?B?Yno2RlVFQlhqRE5IVGJONy96czEydm9icStnUzdTemNscVQ0cUNVditBekRD?=
 =?utf-8?B?eWY2c0kwb25haXJmTjJyeG1BeEFUcmowanpEZEhOS1ZpV1JKWENvcWdrRkdI?=
 =?utf-8?B?M3hydWVDQkQzaklMUWlxYXJMU2czMjJYSHBPdDJzSXlJM2lGa1hJQkcrT0oz?=
 =?utf-8?B?Y0FJblpmdHU2M1BsTEwrVHFrSm9uY0VGK25JOFVOT2JUeVZ1YkorK2hjOUdG?=
 =?utf-8?B?T2VZN00rVENlT2Z0MUZEdTJ5cUFzR3RKZzVrK0E0dU1FN1JXYUc3YWZvSHVX?=
 =?utf-8?B?YlY5N2V5VkxERThxU3ZkMGd5YmVKZjdiV0IrMVRrSU4ySlA0dk52bzQ0TVh4?=
 =?utf-8?Q?MV8E/tqb/PkHGmtoCj6YMmql2?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 966bba68-2b74-4dca-8e63-08dbd94a2ee6
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Oct 2023 13:14:44.2471
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: eUebcvQZjd9BLYMEDPgPM9mwJGi/ftKSHarJkTP/q2a8/iOrBTWCubBRVZGUwmgdifiD9yFrYCzIfE+TbB0caw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR04MB9004

VERBOSE had ceased to exist already before the introduction of this ELF
parsing code.

Fixes: 62ba982424cb ("x86: parse Dom0 kernel for PVHv2")
Signed-off-by: Jan Beulich <jbeulich@suse.com>

--- a/xen/arch/x86/hvm/dom0_build.c
+++ b/xen/arch/x86/hvm/dom0_build.c
@@ -557,9 +557,8 @@ static int __init pvh_load_kernel(struct
         printk("Unable to init ELF\n");
         return rc;
     }
-#ifdef VERBOSE
-    elf_set_verbose(&elf);
-#endif
+    if ( opt_dom0_verbose )
+        elf_set_verbose(&elf);
     elf_parse_binary(&elf);
     if ( (rc = elf_xen_parse(&elf, &parms, true)) != 0 )
     {


From xen-devel-bounces@lists.xenproject.org Mon Oct 30 13:16:26 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 13:16:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625093.973999 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxS81-0001fG-LS; Mon, 30 Oct 2023 13:16:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625093.973999; Mon, 30 Oct 2023 13: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 1qxS81-0001f9-IR; Mon, 30 Oct 2023 13:16:25 +0000
Received: by outflank-mailman (input) for mailman id 625093;
 Mon, 30 Oct 2023 13: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=Hhfi=GM=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qxS80-0001f3-Rf
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 13:16:24 +0000
Received: from EUR03-AM7-obe.outbound.protection.outlook.com
 (mail-am7eur03on20606.outbound.protection.outlook.com
 [2a01:111:f400:7eaf::606])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 85f88ec7-7726-11ee-98d6-6d05b1d4d9a1;
 Mon, 30 Oct 2023 14:16:23 +0100 (CET)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DBBPR04MB7580.eurprd04.prod.outlook.com (2603:10a6:10:1f7::9) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.11; Mon, 30 Oct
 2023 13:16:20 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6954.016; Mon, 30 Oct 2023
 13:16: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: 85f88ec7-7726-11ee-98d6-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=cPHgUdCKJia5j7Ou0o7eqh3ddTNPiitlpWOuAFramsy77htM8hdtAfMAVEOnrSpgHVreForcy7ZchGOPJZiqrOxV/qLKXQrhkhokSLWlGDuAsPETQzsV59JE0N3wNfyq5hct9mWn+IYVmWfEoSH0c315TqCEhU/YzOaVlAc116BBSshPFykaV/38dIivv7qM0qZazLZipGyohRcUNZlB9lJc+7fga9ZK4mt79vK+07upi34Wzh0gVvjWCgndIViDWbEwdO/0tjD7sD099oOcHDI7iDdelfdaAW1NiQIOulRbPnbWW9NdEupRJUqHm4K8zfTZWZnop9Jy7r+mPDHjwQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=QMyE8FXqxWMnkNmTu0BqW4INn9n57mn2PyP6ZhtdAY4=;
 b=h9MmHhiXeHSTfbBBqJr6mhLI4XhsfMZCEFg9psfPm9z7a40Yxv1l9SiJbieBU2rsqU6DJL2MNi6uTVqbeHmHaXfhlTXNtR6EOJ7NoeLMER7pjfAfJ2vGcbO1jEtBdMfrAG1b6/n4lDzc9ERI/neARRVAum2RQxsFBzsYxEKgqLRlLff+5BcWSJgmLuAlOcOLGwYBntYYfT2z/tL2BSHrdCPFUrDxZ5pE7WLZ8Ln0Dw7SGtz6N+Nssc4tn89R65wXJJ/IHpo9KYiIYRsMGun481rJejmmkX0ylfqFXP2aRzD1dCp8InPh5fsGpcVmOM09rTzBm7fqdEOgkhBi3R+FXg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=QMyE8FXqxWMnkNmTu0BqW4INn9n57mn2PyP6ZhtdAY4=;
 b=rTpsWFlh6IGU9+xhjtZ/LWS3/uqEWkRr5hgJ13HSYxUDnU3fZJOo6t2yVRmN3qDN/AoFNvsXObXZJBCggclGUNzDFFLwpUzIP4oSP1CN3baemzeY1Pbts9eJLe/XL4LHaSdLcbP0S+iTTEqjeg0ConGseR9G0r6wbyMvvvrBHTFgJn4hCO6zkFyfpKAJ8ZXJvMWqjJZ2qicJaVFdpvffUY56sIRalTViMMuRblp5ydDnPLXWCWDKrPk0rT6WZDFM5dmEKhuoSKALu99B44Er62C9cVdwizzPGo+hX9ctEqHNku7+O73BiqkEgrjJJgn1pH2bsERzfkPCLxTQQ03MiA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <59c59b19-40e0-aa1e-d775-31963e03144a@suse.com>
Date: Mon, 30 Oct 2023 14:16:22 +0100
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
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] console: conditionalize console_input_domain()
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
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_|DBBPR04MB7580:EE_
X-MS-Office365-Filtering-Correlation-Id: 945d959a-c9d3-4fe5-3479-08dbd94a6884
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	+SvnE2qo2FDbztDhSweV4Jh1fbmmSDgXyfZRWfNC8VOewDGpD7P7eS5wP/vcqEkvDPukivdjqaI/h/Zjh69V/MqMyuIdNM868AvzW+TxeWUASIP2jj4ILaMrlsq2135q3x5uAQaZhn3i//RAOY2kD9bE15FHA4/2VA0wKCTRbyinGuxIg2aV8FCW++yispPFZZ0PpWRc4yfbGLUKw6IGro11Z+vKrcnxIlECfoXwJisAtHAMnPFcl2klizDBy2Saf6SHaw2+z31EaQrs6o/nTCucOzC/cCmAzK5mtU1rr8PzrlG+du+mo8poEk4NBUbMPS86NvpXGbOHcn78tKe2C3IqdZEsP2iv21yiEpTD6/C/gknG6W+IdUFXEKOGh5wL96ZwjvpGlpPgTQd6iLYyhhsWlEIcXdWxQNdRTjjVoRAwN/EsjRBbzQqfZ9ALQ1haon9cbmLIhn2bFcFpzb41zqWVB/3mVMD6VcJu8IBT5GySNwCJ6n01ZVOLNyg9w66YtcWTrzdPohs91JzC96bJuwxs1DKOnunFeGZBheepNtOguE3CcZP0y4XB4RYzVtYGWmUqid7f/aAFGS2ADkAjgFJEWbS01DBvSfEB+CcgIvB4RE3W6xxl+F5gyvahdInBriaY+iNui+lCeTevz2zrIw==
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)(39860400002)(376002)(136003)(230922051799003)(1800799009)(451199024)(64100799003)(186009)(4744005)(2906002)(38100700002)(6506007)(2616005)(66556008)(6916009)(66476007)(66946007)(316002)(478600001)(54906003)(41300700001)(6486002)(83380400001)(6512007)(36756003)(86362001)(31696002)(8676002)(5660300002)(4326008)(8936002)(26005)(31686004)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?WSt0a0ljK2JlcWszREFNV1FrTDhJN2dhUmlxTWFIbnpzV2h2YzBYTzJrSlV0?=
 =?utf-8?B?eWJWQ0RtR29SWDZpYlRaMk5ZYUNOR1dnKzhRdzFoK2ZvTXFZSDZibDRGL0ll?=
 =?utf-8?B?T3BNQ2lNdFNDdEpZM2hqenZHaVhmZHMvUTAwVlQ5TlRUSGZjQjRNME8xNDJ2?=
 =?utf-8?B?RUJqOHhHckoxYzZENXlPMldzdU90eC94YVNKWW52NFBuU2pKeVVMZDN6NXRv?=
 =?utf-8?B?S2x1L1lpbXU2WlZXSjVxZGpjT1FzYXZrRWxmQkxyN0JEcFVycjYyN2ZNRFVX?=
 =?utf-8?B?RnV4ZXRxRk1tdnkrRFpnZG5HNGxSVTlvZVRCSldNN3VUQ1IxZUo0WDdQanZ3?=
 =?utf-8?B?Zk82Z2pqSjBwSHhOZ1RGdDRycE1nT3U0NVpQTHc1NHFLNmROM29sZU00S3ha?=
 =?utf-8?B?VUpSQVdudnBHR25aUlowWnh1bEJxS1dNUlJVQkpkWVJJUjhEYkI1bGpyY3F6?=
 =?utf-8?B?U2NzZ2NobUJNQWJFVTRoWE5VWWtUWEE3TzNtbGx1UGlsRXBHMnlSMGwwQXVL?=
 =?utf-8?B?OHA0RDlrU1d1QTRvQ2d3ai9EZlRPSXhOSnJ6Z3BYWkpzaUhoUWVpQ3dOVE9P?=
 =?utf-8?B?bVhrT1ZtcFZBa0Q3aFRUL1lsY3hZcU03ZWlabjZqRklCQVl3cmYreW9oMy9h?=
 =?utf-8?B?SlVXekQyRVF4dkl0ejAzZlRtODJaVzJOc2J5bElTMzhVRkJiQWlZYVc0NmVK?=
 =?utf-8?B?TFZ1YWp1OEJoeThsWStmUWNQZG9kaUVURUphOTlaU21HN2lUTTI3TVhjZ011?=
 =?utf-8?B?OUtXckI3Y202cFhudXIyeDhmNlo3Y1hac0hST0VnUGFSZlpDZmlwVVJ4aTk2?=
 =?utf-8?B?dlgvVnZIQWdKbkl4UWcrL211WldTd1lId2wzbkY0emNwQVhIZm9vcko5UmZY?=
 =?utf-8?B?QWw4UDVRZDBCMWdZbjk1UUJZVHcrZGJCc1FwTGlpR2dVUnFScERKOHV2bzhD?=
 =?utf-8?B?QkkvOWg4RU1vVk1kazY0dTE5MEFJd0hpUmw1alp3S0tJai94cVlLQ0J1TzBo?=
 =?utf-8?B?L3laZnRZK21iaUNES2ZpRm8yanlhQlk5NnpDcUJZYzQvTmI2eWVzVXN5RDgz?=
 =?utf-8?B?YW40TG1zYTR4bHJ5MEo2b09USGpRcVBtbnhuTEpqRVVKTCtjRVBPMXBkZGhQ?=
 =?utf-8?B?aFBzNnozeW1RN2pYZ3F1bTVYcFJPL0tPMmE4MzBYS2lybWhlb1Y2Uyt0L1kw?=
 =?utf-8?B?OGFwSVlidnNEVWsya0NIZEVDNHFOUlBiVW5xMlhjVHlENUNqckdBM2tIa2tW?=
 =?utf-8?B?ZHlVcTduUzdpWndlUVhvVHdlc0lpeVIxVTNKZVpaeUFlb0RDZm9wQytVZFQ0?=
 =?utf-8?B?Q25qcEJNenEybU5xR0gvQThoanVhZ1lOdFBQZUtsSEFZbzJ5TDJMSlN1Nmxv?=
 =?utf-8?B?aUl6T0tiZWhZZDU3eVQ2Q1d5N2loWk5zWG00ZVZ2ZEw1cXpoVVhlSDI4RUwv?=
 =?utf-8?B?bDdVVmJJV1QxUXRnaWIrV1Bmd3NrdjB1YWM2MFNFYy9YVjhjazEwWjFQWUNy?=
 =?utf-8?B?ZnZVL0VqRmRhZEJEcnR3UDdQeEROZVQ3U1NZMUJ5ejAxZFdiUVBZUnhuT2V6?=
 =?utf-8?B?dmR2eXg4YWFZejN0OFFoT0N5elRQb1czRE9WVkc0cWtiSDI1dFFZTlAzWjda?=
 =?utf-8?B?MGFRdzk0V00rL2JqYnBNT2hZdUxGT0hodS9WbnkwMld0bm1oQXIwREk0YzQy?=
 =?utf-8?B?dmZ4NEdRcnBsM21kZVhaTHVlODZIb0VoTU9neFRxTVJOMVpjQVl4NVRJWVRU?=
 =?utf-8?B?TStpbGJocG5pbG9hOWEwVHNHTC9KeXpsSnpUakR5K29QdmdVYWt3M3hodm1m?=
 =?utf-8?B?NGF3elBHQS9zdGpORkwzNGRZbTNPekhWWGlSRWQ3SlFWSGRVZ1NYbXpJS0E0?=
 =?utf-8?B?ZUpqOHhVQTZrdEUrdDlNb3IxVi95SEU4d2EzM05zTUhheW95ZU5wWHBBMXhN?=
 =?utf-8?B?NUZBaXJMenpQZzZxQ1lEeTFoRlRYMEpWSFRrOCsveklNSGw0cUdmMENJbzBn?=
 =?utf-8?B?dGJxc3FlWWYxUjJtUjNZZFBOM2drRUFtU01ERlFoU2xESGY0dFB4NHlwaUJG?=
 =?utf-8?B?U1M1bWNBVFFJZ2Rrb3JBZlF5cXQ4QUdsWGhWbzJNZWxEMWFocHV2L0xrZEw3?=
 =?utf-8?Q?FGIBbEBlOhdegJinCPAMotbTr?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 945d959a-c9d3-4fe5-3479-08dbd94a6884
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Oct 2023 13:16:20.8418
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: dDV+GXY9pWt/3J+rmIVDK4M/q+hqar3xfNnvL4JzUcS62/ylr7WsHiFFUT8OdGUP3NPxDZ1UXVtisPux7mQGZg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBBPR04MB7580

The function was introduced for just one piece of code to use; it is
dead code in cases where the respective Kconfig option is disabled, thus
violating Misra C:2012 rule 2.1 there.

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

--- a/xen/drivers/char/console.c
+++ b/xen/drivers/char/console.c
@@ -475,6 +475,7 @@ static unsigned int __read_mostly consol
 
 #define max_console_rx (max_init_domid + 1)
 
+#ifdef CONFIG_SBSA_VUART_CONSOLE
 /* Make sure to rcu_unlock_domain after use */
 struct domain *console_input_domain(void)
 {
@@ -482,6 +483,7 @@ struct domain *console_input_domain(void
             return NULL;
     return rcu_lock_domain_by_id(console_rx - 1);
 }
+#endif
 
 static void switch_serial_input(void)
 {


From xen-devel-bounces@lists.xenproject.org Mon Oct 30 13:19:20 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 13:19:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625098.974009 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxSAp-0002H1-2N; Mon, 30 Oct 2023 13:19:19 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625098.974009; Mon, 30 Oct 2023 13:19: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 1qxSAo-0002Gu-Vx; Mon, 30 Oct 2023 13:19:18 +0000
Received: by outflank-mailman (input) for mailman id 625098;
 Mon, 30 Oct 2023 13: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=Hhfi=GM=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qxSAo-0002Go-CX
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 13:19:18 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur05on20609.outbound.protection.outlook.com
 [2a01:111:f400:7d00::609])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id ed88ae7e-7726-11ee-98d6-6d05b1d4d9a1;
 Mon, 30 Oct 2023 14:19:17 +0100 (CET)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS8PR04MB8312.eurprd04.prod.outlook.com (2603:10a6:20b:3f1::20)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.19; Mon, 30 Oct
 2023 13:19:14 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6954.016; Mon, 30 Oct 2023
 13:19: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: ed88ae7e-7726-11ee-98d6-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=bjQNCXKmNj4mro9ba8eH5pvt2Jr/AxynQ4QoNH+xLReAN1b4O72580yYoYsYsjxTIF2/SgRe/MvjGGSoyhEEFRli2/G8uJWAjFw2tj9OTMtJiT4hFF4nVTRb9ntv4aa0NMB3VNE6Z/5TEeLpL2tND7j23DOaxK1SOFupXjsIBaUdLKDduarmtZvGvSkfoJYcD0nJUKMyWSzwcsk8RowHM4uqhijD+ZfB23ZLsC3PD60fCjX0u9uGmOOvZ2qwj/kv/WKoi8F2qwlKWIBLjmPPSV2slTcL8ja7lVKm6vHD0FAIs/gWB0fHIbB4OaFZynFXKzMyOLSBtWD0F2+wc8MKzQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=5RS7ML3zUGduWIOpMzIYiW9tDyouZkunpiHrgT+gfaE=;
 b=QYy66vO8D5sMfQxaKemYNfWnndLG7TN557Lq8fB8ueFY0Q8hefcBK63+s8apMx5IUlDzkVuNP+EFo9wOy38rIqWMFlEUIMiuQMThgiyflRT5YANYU+WAb3cISQh5gpGugbfxktNDoEHnxFFJezFr/UnqLDxX6SuUMwmofvf/b9KecDogsQI1ojRn4R1aDDnChhkKKFHIWWw70HGif9WSlpB8K5N9qWAjOrxTi8/o5ebXdQ6VzAJv5LEJ8bNDJ8CvwVWhTqIXhmxVPIi6wOQxa4RUfNyHCO4xCDNK5eNq8qa7m0EHLqhmBPLiv2aTs5ENttW0CuwK/vLtzxjijcDw3w==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=5RS7ML3zUGduWIOpMzIYiW9tDyouZkunpiHrgT+gfaE=;
 b=z2ssQhIz3b3HCNG1YdampZGwmQ05AbCFQhi6p50GGLUl0cYuE+Y62hJNLuJjBv5e0++cAIWmMA9qxk/uMJvukXwTuHg2nz1npwLH3NM76xMeXHJ8JOaWGXqb3UwH1P/4xaf2mNq0aL9JCMjcfbacbim8a1GzxFA5FeZznt0bO5zoDSrQzIHbsR12OKEcH1zjR7QXUuz0olRDtZH3spJfFoqPNWQeGKaqzzeexqNAs64jsFJMrnM2Ab1EK8nfxbySOV1XuCB4eF6LthhDv9gMsaiQYh/ldjoCxetV4+K/o5tZMATfIkPhfnOaBaz+Dl4LGK0+DWCe3Raq0uwfqka1vg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <4fda4793-6fdc-70e6-575d-062f72c8c0dc@suse.com>
Date: Mon, 30 Oct 2023 14:19:15 +0100
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
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>,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <volodymyr_babchuk@epam.com>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Shawn Anastasio <sanastasio@raptorengineering.com>,
 Oleksii Kurochko <oleksii.kurochko@gmail.com>
From: Jan Beulich <jbeulich@suse.com>
Subject: [PATCH] xenoprof: move asm/ include
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0071.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:49::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_|AS8PR04MB8312:EE_
X-MS-Office365-Filtering-Correlation-Id: 65c10bf9-4e13-43d0-9603-08dbd94ad024
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	gy133bWC/77N70i+llbpcboTicUHyiUo/GMdfVEopWzHPBPKwFRue8UXt7LnavGIRQGuMtDyUmOk8BbWP6xrklxA+o5RbI5uz5VExDbm/M32uebesCMvKsr0uMoPHMK9MtLR168qlBKpvIVeLkNvrCHp+LnAtG0HK7O5LcM7gMniYI9jo4dh9D1tsSamH/OQkX2pUSWCAqWr6zQRfetoqRwwgKHkJt3UAEqx0Hoi+AakCGSWXokqILpYe6+yjw4sZTd+Ul1fY4+ATjvozGy7K6D2pkgm/etkJOu5uNMDE2VO2xXoXDJ4d6mJeXM3VaIHxqorP/gHEwb8EeaEbIpcp6+F0F/E8vvUzwYbDJ+I8s+IVPlcV8NfFWe7Xi5mws27XEfS4hFYBhmJt0ujBpgRgsyIga6GNzKMbipo+2d+ykymfKnXG0cNOVn2Jpa8nnpw7dzN8SUzC9usThyg5XeJSRrgPSsQqGDfLcmHSvwep9k6XvfGWTMBJURXjWMWb/2vnnEC3bIhgUto2Df0oAm1Wph+cd90JQwPCwocnNA6gApEwIUIp3mZerO0eRUr4bpvlQbPTxEmSyCT6OmPomPffODibts8c8PPcsDchL8rgJWOo85kSANHi5nu4XCrvsj3LX2/8JVfnlX0LcOLWrWr6A==
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)(230922051799003)(451199024)(1800799009)(186009)(64100799003)(31696002)(6486002)(8936002)(8676002)(31686004)(54906003)(66476007)(66556008)(478600001)(7416002)(66946007)(86362001)(4326008)(41300700001)(5660300002)(316002)(6916009)(2906002)(6506007)(38100700002)(36756003)(2616005)(6512007)(26005)(83380400001)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?ak9hUEExbENXdkZGYzI4Z0JuZFZuMUxXQ1diWW5DdlQ0VlJmV2JmMWhTb3lo?=
 =?utf-8?B?L2IzcGZaenNwcDZBZVAxdVJaazd2dlE2V3Z2TTF3YTYxTG9TNlBIQkF6NkpD?=
 =?utf-8?B?OXNWRWgrS1doYTBnUWMxN3NNQVg1RE5BbGpzbTViOTN5MndhYnhFNjJDNmZL?=
 =?utf-8?B?RWwxSWtlenJoKzZmZ0d1cyttMGdTaEl4Yk4xV2crRkw1NkRhMXFnQW82ZmFo?=
 =?utf-8?B?cDN6SmxKT3pZQnpmV0gvVzFUTWxzQmQ2T2xsZld6SC9EUjJ3NlZ0Qi9XUFV1?=
 =?utf-8?B?VW9hQnBBeFFJcG5FS0JNSkw2TmpsK0ZsWE9LdHBtMXN6RGIvRU9Damh3L0cr?=
 =?utf-8?B?Ry9JRVdRMFoxMnBJdGJUd3h4NVVHOU1venRmRDN0ZUtXTFY2QmllV1NXRWpK?=
 =?utf-8?B?bkR0c1hQdEZyQVN4ZTgralByVVpKZStLTVR6MGF2aSs4VHpTVFFCRXRScUlC?=
 =?utf-8?B?S0ZtTmhYNTQxcDNhWnBJZzcyN0VjNjZITlh4TGVWRE9NdWFldWNCcEZzYkRp?=
 =?utf-8?B?YVJ2UklKRnY0cjFpYWM5NkxmdTdXT3BuWFdTY1BIYlVYQU1laFZOb2phVTlV?=
 =?utf-8?B?ZGlPOUFaMXVIakpGYzZjY1BWQ1UvVU9xaDRoY0JXMjY3V0tqU3pDYjBjTUhF?=
 =?utf-8?B?QnhVTmorN2tGcksyZ3R1MGZZa3NPdXhVY0hIdFVvU0d5UnFEYXJmRGRoU21a?=
 =?utf-8?B?b1gzZ25zZzZMWk5zSWZWV0x2OCtNTXE4L1hlaXB4L25jMk9qWDA4QWJacnBl?=
 =?utf-8?B?T1RZSHkwYnZsVFhveGlhVXc2M09wM1BiYXFnT0RWVDR6cnk0RlNvVW1aVmJE?=
 =?utf-8?B?dHR0TWh1K1o1Umg3R1ovRnZoM0liSy9aL2gzSUFBRndPU0hEeWp2QkZ0a2lB?=
 =?utf-8?B?cW5mK3ZQNndFeGw1T01zNUJHK29xNnc5TlFBL3Q3cDN6Q002bnc0MTIwd1M2?=
 =?utf-8?B?V3ZGb0tEVm1aaEY4cFJRdU52Nm8zOUJaWk1aVVpzUjJ4d1lERWFxK3ZQaXQ3?=
 =?utf-8?B?OTFnNHNMQzBLSThMVjhFcS9GR1p1ZG02aFZ0cmVhZXd3enY4aW9DYUthdkEv?=
 =?utf-8?B?bDNOaStVNy9rMUIvQUZCUTFjSFBMejkzMG1TVloyWnAwVy8yanJ4VmdZNXJH?=
 =?utf-8?B?SXFON0VEZVlaM1l2ZUFNOTA4bk1QZGhnL3ZjSEYvNEVCYkQzZUsraXFmVEhE?=
 =?utf-8?B?QkNzd2s5YnhZdU02c2ZVTVB3K1A5ci8wMXVOcmIxcXZTSlltcFNSN0M4a3NV?=
 =?utf-8?B?cDF3UWg3bWYvaWRRSEozVE1lSG0wVnMvWm1IOGtDYlZ5VktINXZaVTFPanA3?=
 =?utf-8?B?VWZOQzVoZmw5NVAvbEFwa29vcnh2ZUo5U3JMcGFzMTNGZzlDaUlCbjF1OTVQ?=
 =?utf-8?B?NUpJKzdNczBGK2FZWXlhdk9HYWkydEpRc0FOam0wUjhrVkFTMWptcS82bmxD?=
 =?utf-8?B?eFMyMDhFWWNWZThnS2c3cC9VWGtPZmtDcS9OZlc0VW1LNTFsZVlHNE9FZm15?=
 =?utf-8?B?VEZCcXNkaXZmdVZrODE0Q0grUmlaYXU4YmY4TC9FOEZxclhCVU9Xci9IWHlV?=
 =?utf-8?B?UXVxQjc2ckM4Mk5vdDkyTmNKMjgyOVhaR2oybG9WbDBNc1BOd3JzZXVlTHVp?=
 =?utf-8?B?MGRTdmdqb3ZIRmxMS1RVZDNBdXNpbXFkNHhnMXNLK2t5MXROdFJXOG9aQ3k5?=
 =?utf-8?B?U1FvWk9sek54ZTFqaS93M2daajg2VktmQWN2Q0pkKy9QeGxVRGdzQms1OGZO?=
 =?utf-8?B?NDZsTDFjNGtZUmVVdjJjYmJrZ0JwT3RqZWVaSklXWkZXNm1vbzN6ZHIva2Zx?=
 =?utf-8?B?TFZyY3EzcUU0aVcwcG1Bbk1ZaWxnWG4rOHluVkxCWFVFTnpkWk1OdEliQWN5?=
 =?utf-8?B?aVByWU9wVDV2dVBieWpDaGF1QzBiaG5aNzZDYmlMZjhYQXdiL09ZSzY4RDQw?=
 =?utf-8?B?Q0w1VTltWXdwclZSajIwSUZScVZzeUFFMzJlbmgzMjdGVC9VMWRWdG51R2Rm?=
 =?utf-8?B?SzlrL1c0aVpReWh0NnNhMUsvc0I1Yi9zcVRWdjZjWVlVM1hPZnBnUWdmUlRF?=
 =?utf-8?B?U2hmSnpwbGhTdGI2czR2ZWU1cEViN0VhNDEvaThJbXFrek5VOUxVR3h2UzlJ?=
 =?utf-8?Q?nlNdibYQoTz6JZkfzzanXIgHS?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 65c10bf9-4e13-43d0-9603-08dbd94ad024
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Oct 2023 13:19:14.7123
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 8rga3Q4mQquvG/Z2IGgAp9isEeYdHmH5EGwasYNMeV6xZ2vXxnwE5EWiFlIsryJuZuWhMvbHazEG677RCXTnmQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB8312

There's no need for xen/xenoprof.h to include the arch header when the
respective config option is off. The only compensation needed is for
svm.c to explicitly include the arch header instead of the common one
(matching what vmx.c and traps.c do).

With that Arm's header can be deleted, and neither RISC-V nor PPC will
need to introduce one.

While there also adjust and move the (prior) inclusion of inttypes.h.

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

--- a/xen/arch/arm/include/asm/xenoprof.h
+++ /dev/null
@@ -1,12 +0,0 @@
-#ifndef __ASM_XENOPROF_H__
-#define __ASM_XENOPROF_H__
-
-#endif /* __ASM_XENOPROF_H__ */
-/*
- * Local variables:
- * mode: C
- * c-file-style: "BSD"
- * c-basic-offset: 4
- * indent-tabs-mode: nil
- * End:
- */
--- a/xen/arch/x86/hvm/svm/svm.c
+++ b/xen/arch/x86/hvm/svm/svm.c
@@ -12,7 +12,6 @@
 #include <xen/lib.h>
 #include <xen/sched.h>
 #include <xen/trace.h>
-#include <xen/xenoprof.h>
 
 #include <asm/amd.h>
 #include <asm/apic.h>
@@ -38,6 +37,7 @@
 #include <asm/processor.h>
 #include <asm/p2m.h>
 #include <asm/x86_emulate.h>
+#include <asm/xenoprof.h>
 
 #include <public/sched.h>
 
--- a/xen/include/xen/xenoprof.h
+++ b/xen/include/xen/xenoprof.h
@@ -10,15 +10,15 @@
 #ifndef __XEN_XENOPROF_H__
 #define __XEN_XENOPROF_H__
 
-#include <xen/inttypes.h>
-#include <asm/xenoprof.h>
-
 #define PMU_OWNER_NONE          0
 #define PMU_OWNER_XENOPROF      1
 #define PMU_OWNER_HVM           2
 
 #ifdef CONFIG_XENOPROF
 
+#include <xen/stdint.h>
+#include <asm/xenoprof.h>
+
 struct domain;
 struct vcpu;
 struct cpu_user_regs;


From xen-devel-bounces@lists.xenproject.org Mon Oct 30 13:25:16 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 13:25:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625102.974020 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxSGN-0004GV-Mx; Mon, 30 Oct 2023 13:25:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625102.974020; Mon, 30 Oct 2023 13: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 1qxSGN-0004GO-Jz; Mon, 30 Oct 2023 13:25:03 +0000
Received: by outflank-mailman (input) for mailman id 625102;
 Mon, 30 Oct 2023 13:25: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=Hhfi=GM=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qxSGM-0004Ex-8G
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 13:25:02 +0000
Received: from EUR01-VE1-obe.outbound.protection.outlook.com
 (mail-ve1eur01on0625.outbound.protection.outlook.com
 [2a01:111:f400:fe1f::625])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id b81f45fb-7727-11ee-9b0e-b553b5be7939;
 Mon, 30 Oct 2023 14:24:57 +0100 (CET)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM7PR04MB7016.eurprd04.prod.outlook.com (2603:10a6:20b:11e::22)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.11; Mon, 30 Oct
 2023 13:24:55 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6954.016; Mon, 30 Oct 2023
 13:24: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: b81f45fb-7727-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=aMPzl8IG0ZyPSFXID7fupXxqzpRvod9KdyDj1e5E4kAmkP4F/4h5BW8o391wwwWioqyavkEZtLL2PnQAzYRyrIDHSSRCuyJpSck59U8VRM0rnP8Uacp5IhHAWia6XWlGJBPaFpdqHO/hDy5/9w5TNzyfjquYfj3ppZfk82jFSRha5p2nt5tS5pqST54ODphmRucyrQ3oAX7XHv0kuHH2ftyEVBVElBaja3iVebuPAkHhkSaIPfkjHw4mAz22GaykcAwm+TmzMDlRTiE/SqFvCQZhEJrM7IRsYYmDmv9JbvJ1G2rl6xcfuU+wqoJOGRVQH8AfXzzOK3jL7K0TsStz+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=RNh4ROXv79CnE2jtd3XjBPdvjNoTnh7ZaDC1XhyUUZo=;
 b=YFFeQYjeIzxeSQyk/Z0ga0aJismotuKQtc04iv7kzePRgvcfk1ULoSV8VVeRHjmERuiAXVPiuNeIip3+iOtVNfVhE1ZWgC2r9ncxvPb9mfnQDZVRwA2Ga/i/GsSSs6tR4FT/Jn4byJo/f7PiTzeNKiscCcWKgQ7+muUuADFXo2K7Jfv9SNzdZEDtlXhC3IeOcq+0iSfmr+IL7dfPFMCtkJ3II5wwuy7CDCDEnClnZL/svd2mLArkJk68c3Ss1GbvN2J0kP7h7vAD5W279Y96NHeIko2UMlrat6JVy6FvpWZF+X4z+R/nhdN8QrymTCfV2P4vXCD9TOPaYYOJIyHA6g==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=RNh4ROXv79CnE2jtd3XjBPdvjNoTnh7ZaDC1XhyUUZo=;
 b=NaphmTcKK14cLn21SgPMZBrt7Y9/cz3UM/PhYOGUVt4n6rcAf4ck8+uZgXjeOWztD1Y2cTAFIpl6nuqGrSBHZJy8CLszNbOTZr/QXuUT78fyn6pwMJm+Tk9W1dq+83SgcUO/IKd/86neYN+wFtWthx2x59zAIJCKNvUBW9cJ2+iRVvJ2Nzf98ktPEvkSL3ytYcvLESo4t9yT6MaA3HHe54foZqUlTezhegRvjO1Ad+QZEeiORYDPNwH1FxA0akJNateddaITRAnAl+niuubL7JBLSC10bpg7Axf2cT6mNQcq4xZ1Mnxm1rbWkA9IvKQgblzVruqm/ERqCem5MfFkXg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <3b4f8517-43ca-a573-c88c-7c9097c365e0@suse.com>
Date: Mon, 30 Oct 2023 14:24:55 +0100
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH] xenoprof: move asm/ include
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>,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <volodymyr_babchuk@epam.com>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Shawn Anastasio <sanastasio@raptorengineering.com>,
 Oleksii Kurochko <oleksii.kurochko@gmail.com>
References: <4fda4793-6fdc-70e6-575d-062f72c8c0dc@suse.com>
In-Reply-To: <4fda4793-6fdc-70e6-575d-062f72c8c0dc@suse.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR3P281CA0020.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:1c::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_|AM7PR04MB7016:EE_
X-MS-Office365-Filtering-Correlation-Id: 588f498b-416f-4d9c-2880-08dbd94b9afb
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	Q7WN/lNZCkD99+vEZRVx+HNxXen8Q/jeyUFUCHVRILvrGeOeB2h4Tl17e0Oa/66XzsD4fSghsheYjZ3LjQCt/CHnr/Ixrtk9l1HDA9UghFm2eH2NH6KT30LNcOfAtzgEzIlW1DDPP/UmzN1iPcVfE2bBBDQsCPucs+MgMdQhgSmYcmMCPZsjMaCyw/X+udz66OxPDze9x9gUEzxY1bTBMjn7fhJvf93YrAysRWpwPX3+qYGcO+Qqy1/3p8ysc1B15DiHx5NTfQe529XibCWP45tzPHd80vp2m1AX+UKb2yQEE2sEQLCNh86BgaUaraV9DYGEB0MVW7sGxLI3UCXKg26tdFpf8fI6eiMRl3qvxmAyXjhPJBF3pUadfq9FgZeLAiwROI3/xUIX6yMXLogwbYPBUbzGZTk2lY1SNpqoN571TuBf2zJRZFBHdkj3SR70f59wZtsZGZT3NbKaYvm9wRw195/iSKV5ljz7P1XTy+a7pfw+s52hvE/eRHi1cvS9UWm5jDiM+1eulN3CYmUqYPGd+mx2X1R6kFcrq9FPQC9aGkLfCWjexXRGft+5TPPAr0DcIjEpoY4APRNoW5gJheIb3Ik+GQ9m8GyYZp18moB3p1T/7KVcISWtJybcNEruVQmn5R0OjLpUi6VKaucHbg==
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)(396003)(346002)(136003)(230922051799003)(451199024)(1800799009)(186009)(64100799003)(41300700001)(2906002)(86362001)(38100700002)(54906003)(66476007)(66556008)(6916009)(83380400001)(6486002)(53546011)(316002)(66946007)(31696002)(7416002)(4326008)(5660300002)(8936002)(2616005)(36756003)(8676002)(478600001)(6506007)(6512007)(26005)(31686004)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?Y05JMXhKRUlXSEZGbW03YXFTSHB3TWhVK1ZmUnVKMFFWNFkxc0haV3NyNGg5?=
 =?utf-8?B?ZjFvcnJsV0tuOXNxZjVneTZJZFFxbEoyZ1kzakplQit6V1lkb21LRXpkNUVN?=
 =?utf-8?B?a1FKY2tPT2NBSzBudnJBYXZURTlHcElDMUlyWnZWaGQrZGNlWjR6WllGRnVp?=
 =?utf-8?B?NEpaalZvYml2Ly9Sa0IyYm5FVW1NNmtTWDd6R1ozK0ZSdjY4c051RFRnd2Mv?=
 =?utf-8?B?a1RldUJ1OUVUc2FuaGtqTmQ0MXNaY3c3ZDN4U3dyNUw4ZzROa0c1Z3hDRDI2?=
 =?utf-8?B?OTZyV0VPTWlRTERVUnJIUnZobVROT2VjNEhPNElrRk1ZVFlvT2RrTGlPbC9r?=
 =?utf-8?B?K3dUU3hWMVowMExWR3J4QVFyUERBbEZKbnFoNFMzUzJIaE1lcEJIWEl5Z0Zy?=
 =?utf-8?B?MExwSGdRbVNXQVBtYlBoZUE3elNnd0ZEOTBHZXo3a0U2eDRBdmplQnVDUHJw?=
 =?utf-8?B?bFMyZkR3NkdrTkIrZmJWbTNueTFXcGJLM0pJYy94QytaOG01NkI1aEM2Ymhp?=
 =?utf-8?B?NUN4Yms2YTc2TkUzaHVoNFp3OVk0aHdGSVE3Zms4MHJNK094UUhwVmF0UWlZ?=
 =?utf-8?B?YWl3N0M4Z1NaV001bU1WRGpzNks0bXZzdUJTQWUzRzAxU0ZLTnB3ak9jYXg1?=
 =?utf-8?B?TVRqVWRYcGN4YnF6azRWUEZma0ZFcTM2VTVFUEtkTEUzbHVkSDFucHc0eE1u?=
 =?utf-8?B?QmwzakdRNndQa05xeU1hc05hVjBaWTdWbmI2OUlvbHdJa2N6dnNUY0x5ZExh?=
 =?utf-8?B?MVZrTzM3OGNIeXRNMEFLbnJhTllUSkFpOGppWm1MUUliQ09TM1U0YzF5NitH?=
 =?utf-8?B?MlhpV1JuaDhTUW9xOTJONXRscTdycjJ6QThtbTl6ZUIyMFFRc08yZ3VIajRO?=
 =?utf-8?B?d2xxVTkyUVBXRWNKUGRScktrcE5mYWlIQVlIQ1Vpd3pWd2d3aGovSXNMMGo4?=
 =?utf-8?B?MmhieEp6V1pDMlJDVElUbGU5TTVQZy9BK3B1VVkyTGVrdURkRHB4bmVPY3k5?=
 =?utf-8?B?cHVlUjFqVWsybkk5OUxCRTZPNlhTd0xTNS9SRFllaXgzWVRCL1FNSTNEdENy?=
 =?utf-8?B?ZmQ4K0RHazhUeXJUaTQ4VEZEQmNTMDR5VU1FV3diYVlLS0lIczkrOUgxRDRW?=
 =?utf-8?B?OGR2aFY1SDQvT0czOHNhY1YzTjNYVkd6b1JrbFUzbDdHd25OcDVrckpnc2dx?=
 =?utf-8?B?VituS0xXampxSElRekYwZEw0Z0phS1RmNTZHVlZUQnFHTVBXMVVDb0dvYWpY?=
 =?utf-8?B?M0M2ODNjRlVQY2pobUw5RTJydkR2UVMvenNWUHRpYnBqT09pWXB1YjhLUFU1?=
 =?utf-8?B?d0N6UU5OVExHeCt2c09OV0Z2SnpSam1nL0NPd2QrTWVSUTNmdHN5VHNkZVZU?=
 =?utf-8?B?MFp6ZWxNYzd3bDA1TVdsbnladmlRc2lXb3AzSGs4VnFzb1E4YVg0dFUzb2x2?=
 =?utf-8?B?Y2M5WE9VWGZrdjlTdzJFVkZobVJkL3lQY1VaUC85bTRIU2FLaHRCbTBPOXJE?=
 =?utf-8?B?alZjYTJ2MEVxaU9mOUVKV05VRVhpSnliY1hMQmtaeHhvK2I0VWZycERJdnRN?=
 =?utf-8?B?UlhScitpR0NudE9BMUZmNFZHZnJLNEhmdmVZaEhpdzVDc1Q2Tzh0R1BvNGtP?=
 =?utf-8?B?Zk1OL0RLbS9ocWpBZWtOaElHdzdzKzVuL2d5VEoyYnRxaStWZ0lLYUhzb1Br?=
 =?utf-8?B?L3BzT2dISkcxY1lBRTdEMExuM1dRRlBzMjByRzNsNEtkUWJ6NFg2VDdSZmJX?=
 =?utf-8?B?UGhwS3dhK04wcisxNldKc1JjclVoNGNweFoyVnVJTTN3NjhoY3dTUEFsTjV2?=
 =?utf-8?B?QXJpSzJDMEZGaE5OKzJMeUhrUkpFL0lHN255OHZ3dW9NTWtCVGRRTnJrZlFo?=
 =?utf-8?B?UUUwQmg0V0hQOXpBbmsydjJIMVNieWdnVEpMZlBVbFllZjNrMWRld05Hem1s?=
 =?utf-8?B?UDY2Z1dJOVE2ai9tekRqcmZLSU51bUVSMkFiYXUxaW9jUE9VUzJ2MG5kWk50?=
 =?utf-8?B?Z3QrSFN4OGh3WUFDbk5CS21aenNMT2VtbU1aTElWQmZ2TG9zU1NobzFnSDJJ?=
 =?utf-8?B?RDVITktyVytEbEhXSkdMeDdQd1MrOG10NzE3dVBSTzJGUHdGMUNERGlHcnY2?=
 =?utf-8?Q?9pgcef0bAi0pt41Zhlx7utqc2?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 588f498b-416f-4d9c-2880-08dbd94b9afb
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Oct 2023 13:24:55.0052
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: EjrTx16ffQ7hbX4xEcKZ9rTSoiKxeBUOOvirDXn5/pb/bEwTJbkXm4RW+Zj29nBq9zH29lciXLcPal7mgutOPg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM7PR04MB7016

On 30.10.2023 14:19, Jan Beulich wrote:
> There's no need for xen/xenoprof.h to include the arch header when the
> respective config option is off. The only compensation needed is for
> svm.c to explicitly include the arch header instead of the common one
> (matching what vmx.c and traps.c do).
> 
> With that Arm's header can be deleted, and neither RISC-V nor PPC will
> need to introduce one.
> 
> While there also adjust and move the (prior) inclusion of inttypes.h.
> 
> Signed-off-by: Jan Beulich <jbeulich@suse.com>
> 
> --- a/xen/arch/arm/include/asm/xenoprof.h
> +++ /dev/null
> @@ -1,12 +0,0 @@
> -#ifndef __ASM_XENOPROF_H__
> -#define __ASM_XENOPROF_H__
> -
> -#endif /* __ASM_XENOPROF_H__ */
> -/*
> - * Local variables:
> - * mode: C
> - * c-file-style: "BSD"
> - * c-basic-offset: 4
> - * indent-tabs-mode: nil
> - * End:
> - */

First time that I notice a shortcoming in quilt that I would not have run
into if I used git: quilt can't express deletion of an empty file;
arch/ppc/include/asm/xenoprof.h wants deleting as well.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Oct 30 13:29:15 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 13:29:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625107.974030 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxSKQ-0005Ek-9Q; Mon, 30 Oct 2023 13:29:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625107.974030; Mon, 30 Oct 2023 13: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 1qxSKQ-0005Ed-6R; Mon, 30 Oct 2023 13:29:14 +0000
Received: by outflank-mailman (input) for mailman id 625107;
 Mon, 30 Oct 2023 13:29: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=Hhfi=GM=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qxSKO-0005EX-DK
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 13:29:12 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 (mail-am6eur05on20605.outbound.protection.outlook.com
 [2a01:111:f400:7e1b::605])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 4edcf156-7728-11ee-9b0e-b553b5be7939;
 Mon, 30 Oct 2023 14:29:10 +0100 (CET)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS4PR04MB9267.eurprd04.prod.outlook.com (2603:10a6:20b:4e2::21)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6954.16; Mon, 30 Oct
 2023 13:29:08 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6954.016; Mon, 30 Oct 2023
 13:29: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: 4edcf156-7728-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=jEzJDjBliHFZzghfQ7XNh0ELmhgg/CSKRgyp8mBxpadaneWEC8eaJs+qMk0TaODfiuHIRbd2lk1Xtkm6Ns9web0nW3EybsJ9nhcQFs7bpjclOl/Enhk0jghOuAgFw/k/Ks1PxjW37r2YnpL4tEYN20aCqyEur7NS88fWSy/u798Tsk8hx7GhhOQ2GPiJq6rt3dOHLO6JgIC+3nslLmEup6seEGTXZQJE5xk+VfOqTTUbKEK1E22y4fxYBY1GJOqMVCwzek1GIqIstzLrhjyfnlYUJP7t0lqp91HEOrtB8awYBB38WQuCEgqeDaQfbhfWB2yN6QuJnjgxvpitWpHsfg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=vKik35MQcS6pD/HucPW4VWShefuYO4ofbGQRb7+mupM=;
 b=ERMgrpwJmP7+6NBhOlX5+2amNUgb/pk2/TWErlLrlgI3QcAJioVdxMbyGTM2mt/XfHd7Gi5cP+Be1Qaku3blV+IACkyrqKIbjnTNbEHwtwWkrBNLtLHpRFvv54y8kqa4vraTUlNSScffroB/EmAMifrwmCLboLg7faJYa0eoZtdFckRHC+YkNEZDxoAhllOSAXJbkfYgv7mOP4mGOigMNO/a0S21lzk4hax2H4JIryWBloH1hw6bCdX/Pqq+S+IZORQD0WX6R4RTuEW+qktYqpx5Yg5wOOvsif038LYoS06Kd28FQC4HBxbb/eCDYUmzG8tKIkqaxRUI1WOYpIjKjw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=vKik35MQcS6pD/HucPW4VWShefuYO4ofbGQRb7+mupM=;
 b=LOcPvaFkl1MUUt+xdJCFLsmsboVyxtk/KiRjXyMtZqZ43JLjhIriYu+MaCf0vaejLblqGvk3VFXeQP8qsc9doHixQwEAIiQo52xjxE+i6Xltx4+tTHEzzOa1SF+1vv4muKS/OPPvc4Qwe4Vm/WXd89Th00C/0O1MTIJBueDnXsovcgd6BHEZixOMO7uUkVM1ppm2kY3mAvSwggz/Xtcz/M/27F4z1qRBGNMbPOdrhlwsGqaUWu67nn1wXzQZoj/CtUEEf++DUOR7EiI0FER48/3SXbmkHpuAGGmwMDdi78gf52Z15BkaGAZRK6cEwBu8rPDfZMy8m/sIztfeWvJUTw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <446254b4-8231-f6db-5f18-ed367503454c@suse.com>
Date: Mon, 30 Oct 2023 14:29:09 +0100
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] arch: drop get_processor_id()
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>,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <volodymyr_babchuk@epam.com>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Shawn Anastasio <sanastasio@raptorengineering.com>,
 Oleksii Kurochko <oleksii.kurochko@gmail.com>
Content-Language: en-US
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR3P281CA0134.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:94::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_|AS4PR04MB9267:EE_
X-MS-Office365-Filtering-Correlation-Id: 2f098182-eb9a-4ab1-779b-08dbd94c31cf
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	28d4nl1C7bP1oFTJM+Ue1rQCEJn/Bo6lIuB8xeoFOO7YJa64YNRF3k1MyG83HcwPRFUumWpu3WOOA+E9Py/xlswBTjAy08rEU7SEHRVqRY05ng81CYwm7eGyRWTDSlnF0feI+MWwjEw+uFFbWntn0upTeF/FCNWlUY5R9FQqSUiRng/rxqgjdfDy1/3M3633reUidKnP/+E3E4fuWmq2MWBPCTJMpeDnDZvTybCLkWIBtUxv1gPuzH495VdEkyX1PGQrAWxGzJMwk+3KIaOb8aVTcas2uRwCSUNTxXUqwa3y5C/F/hEeeAkTQ8SOx4eAsq9SyYdVoX45tcyjgcdWVLjKweu9JKCiHCnS+anbx3SIxCZyP9Rhb24LYNLFT7666R+Acdv8+QDksS06d2eoh7FBQ3VgeLHSOVgGop8hUsPx8RAanRXT2HtyAu6VY5vyh1Sgx2mceQ10xjbUT/zzpWSI/KCuFtgFNzWgOmNt9TzGCWW6l6ZxS2is4vmu3JcaaRuMTQXaBqZP53YfqL6EBi5vHBwQENBZgLhhlcPz/873QlL5fhqo8IsM2fm1/LD4J8MOvTr2s1iMMGa0SKcpEzT7mOV1X3HykLSJjQ2SH4r2ApHTvBR2oBCAun19f2PAGsNNzl6XAt0EifqrIrp+6w==
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)(396003)(346002)(136003)(39860400002)(230922051799003)(64100799003)(1800799009)(186009)(451199024)(478600001)(6506007)(6486002)(66946007)(6512007)(26005)(2616005)(66476007)(66556008)(41300700001)(2906002)(6916009)(8676002)(54906003)(5660300002)(7416002)(8936002)(4326008)(316002)(31696002)(86362001)(36756003)(83380400001)(38100700002)(31686004)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?d2RYeVVSY3hNVXJJa1NqVW56Y256ZGFIbkhvVUZQZXZ5UjVuZndrNER6UEQr?=
 =?utf-8?B?cFBaRGJndElvcytLRmxQMWNJdVRVcnNlK21Hb01rcHlPbUhPelBnL0FVY3Q4?=
 =?utf-8?B?MHFFOFk1QnhPQWFPVXhWdjFEQm5DWmRHZUNaMkdiY0ZmeTFka2tHU0p5UUE3?=
 =?utf-8?B?OWg2aVhYSjdmRk5ibXZ0QTJLaUEyVmVJeExoaFlDQUNMT05oa0VMYmZtaHhN?=
 =?utf-8?B?Z0Z5ZElVdGFCQWVsTW5HQk41dk1GNUJVcW1aMENNUVpCVFFObE1HTVQxU3px?=
 =?utf-8?B?R1VIT1IxKzhaUjJlclVncklIV2x4WmtMT0dXZFJPKzNTNmxWQ1VpVG1RWngv?=
 =?utf-8?B?Y0JzYzJTRXN2dDM4VERrQTlmMGxNdFcvM2xlQ1NVWmFJODhud3RMekxWRENa?=
 =?utf-8?B?YXNUT0pyMVNaRjZUKzJpQk1ENjNoTXk4Ni9CRTlDcndQWHhabG1yWHZmOE1G?=
 =?utf-8?B?YUxRbHJzU1lmZGZDUGlCM0puMTlIL0ZoajgyWnhVRk95MUVNY0F3dFBxZ0Zy?=
 =?utf-8?B?U3BqeEs3MXdYdVBxRkJaRFdlUCsraWs4MS8wL0k5Z01uNS9adHd1eFBReWNz?=
 =?utf-8?B?SGxLeE9kZk5raUJvR2drV2dJNDFxN290ekVqMVR2a1pwNHhEU040bmlpSUlX?=
 =?utf-8?B?aUxibFJObWpCT25iMzB4YmhJQ1Ura2s2WFY1emVFa05vWExUaURnVVAvZUVZ?=
 =?utf-8?B?eFFBVk5zYldOK285Tk92TGpwbzZxSzc2Vm45bk12V2lROWZWcFFScVdvbk1a?=
 =?utf-8?B?MkdqN0hJZXFkNUdWREQ4RmJxdTVUSjBMaDYzeWlJWGllblJXSjRzTGdMVFFI?=
 =?utf-8?B?T2RkUzFxWVdTRHlnQWRBMzJxRWtwNHhvRjN3SFcrczlRcG83MkxqbGlKbklI?=
 =?utf-8?B?TkNqZlQzUDVsYXpCRkYzYUJORzBNTHVSTnN4TFZOSFo0cWZ5cE84dktaUmg5?=
 =?utf-8?B?WGJxNEh2RmdXRE9ERENhNkpCdndRUjdYcTNZTVRXNVgwa0pSWTBhY3V4Q29u?=
 =?utf-8?B?NnE5SGkxTUhhUDdYdVBiTnYvSG4rV3h6NFpqUnJ6b0tHVnFveDh6OGMrNVJD?=
 =?utf-8?B?d0tCZ2R5OVpUeWlOanJKc1ZLNm5PYzdXVVJiTUhaeU01c0dUUGFJVmRVd1Rl?=
 =?utf-8?B?OWp4b21OMGdxbkQ0NjhKaE1qTWFhTjJubEFBaUJWT25DcEpTUEJsRzA2WVg3?=
 =?utf-8?B?OFl5WER4c24vYXo5cW85YWtKWUJ6T0ZzTDBnVkRMdXFsaDU0SXd2OWtiM1A2?=
 =?utf-8?B?WUpENzg4VWhrK282d0JtUE1wUURKMmJIbGtBRnpUSFNRV04wZE9rL3dETUZ4?=
 =?utf-8?B?MFhxR3NJNHhDdXN4YU9XQ0ExdnpTVnRHU1lXSHpZRkR6N1JDak40a2pxWkdW?=
 =?utf-8?B?YVdUSThPc1EyYUZOWU9wZ2Q5QnFxUDIzVFlYWmNoWW9OV3UvbUVUUk80S3Jz?=
 =?utf-8?B?S3c2aVhmbDM0OVRxSllrTDRYRlYxK0pqTHBQT2VGTzVGTW9ieHViaGpCeEo1?=
 =?utf-8?B?blZFdGxOL0VabTdmWkJkbFpqN3lCaHNCL25FMHRRdXVrWmwyMmNNS0tIUkw4?=
 =?utf-8?B?Y2FLeklYbVQ3R21JN0JEdldzYVZxSlI2SUEzejZvaVBTT0ZnTUwwSGt6Wk92?=
 =?utf-8?B?RkU4OTkvTlU2TTJibkJiN1dNMmMxOVBLMzNKOElsOHBxdUwzdG1POFZwQ0Fk?=
 =?utf-8?B?ZG9tdEt4R0JOSXBaNUpaYmFyaGcrVEVmbS9HVG9HQWFrZ0FXOTRUQ0ZwT3FG?=
 =?utf-8?B?MnVuUXBSY0wwS1NBdXhHSXFrSGU2OE03TkdKRVFWbzhhK3dyUU5EVGZmREZn?=
 =?utf-8?B?R1NTa1N6QW5LWmR3bTZId0VrbHZ0SUFHa00zdlR2NnhHRDZva1ZtUnNSZ1Ix?=
 =?utf-8?B?UVdKbW01cjRBdlE2OFk5Vm9PNkZmWUpNQkNUaEM4NFNON085S2dUVVYyclhM?=
 =?utf-8?B?RHlvbm5GcTJVakRJQkxQRGpsaFhqVWZ3WVhyRFZod2RuelFDU2FLdlJidzQ1?=
 =?utf-8?B?cjNXZ2NvQmFVeEFJVGh6U1NveEUyUFFhMnFLLzg4K2REVTZMNXgvUktoa0lP?=
 =?utf-8?B?dWhXQk5LSjNzZmVYeEtpa3pqVXg4eFNPSDIzS2pZb0JQcnUwZXpaQStDT0I4?=
 =?utf-8?Q?8H5/0j7BrnVg7uVIVk6f1mPaj?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 2f098182-eb9a-4ab1-779b-08dbd94c31cf
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Oct 2023 13:29:08.0687
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: EBbOWKdsdz2n4isZw3TlTjbob6ARqlAE/0w9DH0h6NzbCtYklvyG7YbBsJDJWgYcnd9pYLfj7006FXKvFgQmqQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS4PR04MB9267

smp_processor_id() is what we commonly use; there's no need for it to
have an alias.

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

--- a/xen/arch/arm/include/asm/current.h
+++ b/xen/arch/arm/include/asm/current.h
@@ -53,7 +53,7 @@ static inline struct cpu_info *get_cpu_i
 
 DECLARE_PER_CPU(unsigned int, cpu_id);
 
-#define get_processor_id()     this_cpu(cpu_id)
+#define smp_processor_id()     this_cpu(cpu_id)
 #define set_processor_id(id)                            \
 do {                                                    \
     WRITE_SYSREG(__per_cpu_offset[(id)], TPIDR_EL2);    \
--- a/xen/arch/arm/include/asm/smp.h
+++ b/xen/arch/arm/include/asm/smp.h
@@ -11,8 +11,6 @@ DECLARE_PER_CPU(cpumask_var_t, cpu_core_
 
 #define cpu_is_offline(cpu) unlikely(!cpu_online(cpu))
 
-#define smp_processor_id() get_processor_id()
-
 /*
  * Do we, for platform reasons, need to actually keep CPUs online when we
  * would otherwise prefer them to be off?
--- a/xen/arch/arm/smpboot.c
+++ b/xen/arch/arm/smpboot.c
@@ -401,7 +401,7 @@ void start_secondary(void)
 /* Shut down the current CPU */
 void __cpu_disable(void)
 {
-    unsigned int cpu = get_processor_id();
+    unsigned int cpu = smp_processor_id();
 
     local_irq_disable();
     gic_disable_cpu();
--- a/xen/arch/x86/include/asm/current.h
+++ b/xen/arch/x86/include/asm/current.h
@@ -99,7 +99,7 @@ static inline struct cpu_info *get_cpu_i
 #define set_current(vcpu)     (get_cpu_info()->current_vcpu = (vcpu))
 #define current               (get_current())
 
-#define get_processor_id()    (get_cpu_info()->processor_id)
+#define smp_processor_id()    (get_cpu_info()->processor_id)
 #define guest_cpu_user_regs() (&get_cpu_info()->guest_cpu_user_regs)
 
 /*
--- a/xen/arch/x86/include/asm/smp.h
+++ b/xen/arch/x86/include/asm/smp.h
@@ -48,13 +48,6 @@ extern void cpu_exit_clear(unsigned int
 extern void cpu_uninit(unsigned int cpu);
 int cpu_add(uint32_t apic_id, uint32_t acpi_id, uint32_t pxm);
 
-/*
- * This function is needed by all SMP systems. It must _always_ be valid
- * from the initial startup. We map APIC_BASE very early in page_setup(),
- * so this is correct in the x86 case.
- */
-#define smp_processor_id() get_processor_id()
-
 void __stop_this_cpu(void);
 
 long cf_check cpu_up_helper(void *data);
--- a/xen/arch/x86/mm/mm-locks.h
+++ b/xen/arch/x86/mm/mm-locks.h
@@ -122,7 +122,7 @@ static inline void mm_rwlock_init(mm_rwl
 
 static inline int mm_write_locked_by_me(mm_rwlock_t *l)
 {
-    return (l->locker == get_processor_id());
+    return (l->locker == smp_processor_id());
 }
 
 static inline void _mm_write_lock(const struct domain *d, mm_rwlock_t *l,
@@ -132,7 +132,7 @@ static inline void _mm_write_lock(const
     {
         _check_lock_level(d, level);
         percpu_write_lock(p2m_percpu_rwlock, &l->lock);
-        l->locker = get_processor_id();
+        l->locker = smp_processor_id();
         l->locker_function = func;
         l->unlock_level = _get_lock_level();
         _set_lock_level(_lock_level(d, level));


From xen-devel-bounces@lists.xenproject.org Mon Oct 30 13:31:33 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 13:31:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625110.974040 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxSMY-0006cr-Ll; Mon, 30 Oct 2023 13:31:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625110.974040; Mon, 30 Oct 2023 13: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 1qxSMY-0006ck-IX; Mon, 30 Oct 2023 13:31:26 +0000
Received: by outflank-mailman (input) for mailman id 625110;
 Mon, 30 Oct 2023 13: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 1qxSMX-0006ca-D2; Mon, 30 Oct 2023 13: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 1qxSMX-0001aM-4x; Mon, 30 Oct 2023 13: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 1qxSMW-0004zx-P7; Mon, 30 Oct 2023 13:31:24 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qxSMW-0000Fq-OX; Mon, 30 Oct 2023 13:31: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=ShMwKGiIfeFxwT87HWJyj9nbIPQhGbkqGzlldFSpZ+k=; b=qFv/ajxz/E+R0yFtL9ShAxHeNI
	esFc+T0b6oy9bdS209FGvByjv1SWZ/xY2Z9gAgk4faOrkQsD2+CNdYrQb0QhF6OGU4155NKQsbt17
	aDrw0cYo7FjeeZ6GlcaBLoOCqxfTzK30I9ebiyvcVV3YD3JGRQhBEwTYQdRERF0rVVd4=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183615-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 183615: tolerable FAIL
X-Osstest-Failures:
    xen-unstable:test-arm64-arm64-xl-vhd:xen-boot:fail:heisenbug
    xen-unstable:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:debian-hvm-install: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-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-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-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:windows-install:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop: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: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-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1: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-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-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-rtds:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds: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-arndale:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt: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-amd64-i386-libvirt-raw: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-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-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=5415b2b2118bd78d8a04f276a8312f7f0cb1a466
X-Osstest-Versions-That:
    xen=5415b2b2118bd78d8a04f276a8312f7f0cb1a466
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 30 Oct 2023 13:31:24 +0000

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

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-arm64-arm64-xl-vhd       8 xen-boot         fail in 183603 pass in 183615
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm 12 debian-hvm-install fail pass in 183603

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183603
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183603
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183603
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183603
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 183603
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 183603
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183603
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183603
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183603
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 183603
 test-amd64-i386-xl-qemuu-win7-amd64 12 windows-install        fail like 183603
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183603
 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      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-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-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-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-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-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     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-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-amd64-i386-libvirt-raw  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-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-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-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 xen                  5415b2b2118bd78d8a04f276a8312f7f0cb1a466
baseline version:
 xen                  5415b2b2118bd78d8a04f276a8312f7f0cb1a466

Last test of basis   183615  2023-10-30 01:53:40 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                  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                                  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 Oct 30 13:33:00 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 13:33:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625117.974050 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxSO3-0007Gs-6T; Mon, 30 Oct 2023 13:32:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625117.974050; Mon, 30 Oct 2023 13:32: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 1qxSO3-0007Gl-2A; Mon, 30 Oct 2023 13:32:59 +0000
Received: by outflank-mailman (input) for mailman id 625117;
 Mon, 30 Oct 2023 13:32: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=crLw=GM=amd.com=Xenia.Ragiadakou@srs-se1.protection.inumbo.net>)
 id 1qxSO1-0007Gf-T7
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 13:32:58 +0000
Received: from NAM10-DM6-obe.outbound.protection.outlook.com
 (mail-dm6nam10on2060a.outbound.protection.outlook.com
 [2a01:111:f400:7e88::60a])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id d4d834a5-7728-11ee-98d6-6d05b1d4d9a1;
 Mon, 30 Oct 2023 14:32:56 +0100 (CET)
Received: from CY5PR16CA0021.namprd16.prod.outlook.com (2603:10b6:930:10::27)
 by CH3PR12MB8283.namprd12.prod.outlook.com (2603:10b6:610:12a::11)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.27; Mon, 30 Oct
 2023 13:32:52 +0000
Received: from CY4PEPF0000E9D1.namprd03.prod.outlook.com
 (2603:10b6:930:10:cafe::e4) by CY5PR16CA0021.outlook.office365.com
 (2603:10b6:930:10::27) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.27 via Frontend
 Transport; Mon, 30 Oct 2023 13:32:52 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 CY4PEPF0000E9D1.mail.protection.outlook.com (10.167.241.144) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6933.15 via Frontend Transport; Mon, 30 Oct 2023 13:32:51 +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.32; Mon, 30 Oct
 2023 08:32:51 -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; Mon, 30 Oct
 2023 06:32:51 -0700
Received: from 10.0.2.15 (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.32 via Frontend
 Transport; Mon, 30 Oct 2023 08:32: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: d4d834a5-7728-11ee-98d6-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=EpZyE/C0X54UpWzQR45HYD4v/HcX8CsKWBLetRP8LHsiCGe5VZlAzJPxli1ixXezw55x/lO910pexrzEP6N1T8LlMiGRfRy8jMc4xsbSbrL/JSH8y53MFCBy56tHKyl0Co+C8GTpDHyhbTw/ep/hQFKpPaWm5fyo43rU2V5zLNkMFxUh2LSWMfSYtsLI4y4WHqlOcdbbGjAuG6VuC2q8DhBZr3CVzynxhmv32x5xbh6jdlCuhSnUZLCd5f4a4jy1wcUZwQ2ZZSv4HKVOuQNOfQxD9lKaD88QxrjH7zsBaSpbnbzDMlISptN/mesDUcJTmMRRrTGr8ocKI9VLGF/Haw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=MRNOFM+joOHAbAw9dAW+1GbPZ2653qeOKPOddfMLiSw=;
 b=IFpbgUa7kFYNbgpxYPodzPAPO/ogH50ZDgLPnd4SQqqOluVR/WS3sXwpFDMc2s5ShsaKwAm4KwikomWv0Hgf/hh4MPWtTbzBEcd0rv3vh4Wa5M4vkNKnjEBYWDaMjIXWBGpzCQU7dmSjrBVIUmTEJG4je0nUe0Bv/N2JcTVZ++ojAM3BV3qjr5anqkBNXPE2pvp3KSW84LvzHJWQFf0LGWL1u/efBFwvMtpF5rLbSDmywBdH8MEhkYyWsqfduIHAmsOOhMM9stEK6J8hk9KbQbjBm5YXO193odRKAt01Qi0RXXzWUn+WPNKkOrs9joirFhhsaW7plMxWJWslFvZcdg==
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 (0)
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=MRNOFM+joOHAbAw9dAW+1GbPZ2653qeOKPOddfMLiSw=;
 b=OYZ7fMECQpa349zxiT/DJRlD5vjTLrpzcZgjJNflLYoiES9//obp9TYOkQtYaq7lk3UE3lheW2GBcag0Vl73GqT/t0ROyVtedmamTPeYMCwkCupQ1zjPvXKMDUkZAYTRHOv9gb+kgtunRoQkG1KO4rYrgTUwHzykWcRBrdDo/YI=
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: Xenia Ragiadakou <xenia.ragiadakou@amd.com>
To: <xen-devel@lists.xenproject.org>
CC: Xenia Ragiadakou <xenia.ragiadakou@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 v2] x86/hvm/dom0: fix PVH initrd and metadata placement
Date: Mon, 30 Oct 2023 15:32:40 +0200
Message-ID: <20231030133240.116758-1-xenia.ragiadakou@amd.com>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: CY4PEPF0000E9D1:EE_|CH3PR12MB8283:EE_
X-MS-Office365-Filtering-Correlation-Id: d942d39d-328e-4f8c-505e-08dbd94cb752
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	cmdNL+7kDC9qt7YG1/t/xylUd3s0+x1rPpLpADLl6OklhDUkI1vIR0Gra6OQqaahgqm7NV+eGBdxpln63kIYdoBnlABctyOVR8q9URiaDksiuvwoM0wub697skXxtdNf1NIOHjFqb6YX83S06U23Yb+8g31LL9DVQwQMcylVStn4ss2KUMlMh9ZLBelk8AeQ/iwjgYuNC8axpUCWO4Lsbz4FUarmtQaA0UsXhwvMkVeBswk6F6wZmARR8794wPdsc2KvV1lgami6qqhkemDB1BOYu/calNZjSedgTukmS4r8Uc0KuyHtKcSi1PFvEnEYcM0SATd7DuyBUU6paYRDrowCOeLA7jTvj6hpsmUa1xJrpv5krEBSu7VX0c1jW2smzIylKxSFbOakgM3Mai5L08ONNXlcK2zhWdGIqrAy8gMEDnQVmlXPcifN16O04UDC9C8+s449nIMVIUkJrBzZOXgFfOXTmpeqR35UsBPIBtrwhHv8JOHagmUYORSntnJmASY75ctBgHBPZtS5StPnnQaT88il1mziv/l94Q3oOwasGIwUkFFbwYbmN0EJ2Wow45xu4eJvZUV7bomXN+tL/qoGTQLrNWGSAqloeu9zTqb1vgBx3vP45/n+7OMABjvOLwKjuRBhKL0OMEYeiqMGiBk8m8vFH2OhhefiGKb/xLDgnOXlsygPYbCNfGIUM94kVH+37YG8Ff8ii+egFJEtZr13PdE0jdutfufFvF/HViYq4WL8IzyYZS+spEtFAejPPBzP4a9S8Ig7Qvrp7HnyrA==
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)(39860400002)(396003)(230922051799003)(64100799003)(1800799009)(82310400011)(186009)(451199024)(40470700004)(36840700001)(46966006)(478600001)(6666004)(70206006)(70586007)(426003)(336012)(26005)(41300700001)(2616005)(1076003)(2906002)(54906003)(316002)(16576012)(8936002)(8676002)(5660300002)(6916009)(4326008)(44832011)(86362001)(36756003)(36860700001)(83380400001)(47076005)(81166007)(82740400003)(356005)(66899024)(40460700003)(40480700001)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Oct 2023 13:32:51.8330
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: d942d39d-328e-4f8c-505e-08dbd94cb752
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:
	CY4PEPF0000E9D1.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH3PR12MB8283

Given that start < kernel_end and end > kernel_start, the logic that
determines the best placement for dom0 initrd and metadata, does not
take into account the three cases below:
(1) start > kernel_start && end > kernel_end
(2) start < kernel_start && end < kernel_end
(3) start > kernel_start && end < kernel_end

In case (1), the evaluation will result in end = kernel_start,
i.e. end < start, and will load initrd in the middle of the kernel.
In case (2), the evaluation will result in start = kernel_end,
i.e. end < start, and will load initrd at kernel_end, that is out
of the memory region under evaluation.
In case (3), the evaluation will result in either end = kernel_start
or start = kernel_end but in both cases will be end < start, and
will either load initrd in the middle of the image, or arbitrarily
at kernel_end.

This patch reorganizes the conditionals to include so far unconsidered
cases as well, uniformly returning the lowest available address.

Fixes: 73b47eea2104 ('x86/dom0: improve PVH initrd and metadata placement')
Signed-off-by: Xenia Ragiadakou <xenia.ragiadakou@amd.com>
Signed-off-by: Jan Beulich <jbeulich@suse.com>
---

Changes in v2:
    - cover further cases of overlap (Jan)
    - mention with an in-code comment that a proper, more fine-grained
      solution can be implemented using a rangeset (Roger)

 xen/arch/x86/hvm/dom0_build.c | 21 ++++++++++++++-------
 1 file changed, 14 insertions(+), 7 deletions(-)

diff --git a/xen/arch/x86/hvm/dom0_build.c b/xen/arch/x86/hvm/dom0_build.c
index c7d47d0d4c..62debc7415 100644
--- a/xen/arch/x86/hvm/dom0_build.c
+++ b/xen/arch/x86/hvm/dom0_build.c
@@ -515,16 +515,23 @@ static paddr_t __init find_memory(
 
         ASSERT(IS_ALIGNED(start, PAGE_SIZE) && IS_ALIGNED(end, PAGE_SIZE));
 
+        /*
+         * NB: Even better would be to use rangesets to determine a suitable
+         * range, in particular in case a kernel requests multiple heavily
+         * discontiguous regions (which right now we fold all into one big
+         * region).
+         */
         if ( end <= kernel_start || start >= kernel_end )
-            ; /* No overlap, nothing to do. */
+        {
+            /* No overlap, just check whether the region is large enough. */
+            if ( end - start >= size )
+                return start;
+        }
         /* Deal with the kernel already being loaded in the region. */
-        else if ( kernel_start - start > end - kernel_end )
-            end = kernel_start;
-        else
-            start = kernel_end;
-
-        if ( end - start >= size )
+        else if ( kernel_start > start && kernel_start - start >= size )
             return start;
+        else if ( kernel_end < end && end - kernel_end >= size )
+            return kernel_end;
     }
 
     return INVALID_PADDR;
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Mon Oct 30 13:47:35 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 13:47:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625122.974059 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxSc2-0002YE-BY; Mon, 30 Oct 2023 13:47:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625122.974059; Mon, 30 Oct 2023 13:47: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 1qxSc2-0002Y7-8k; Mon, 30 Oct 2023 13:47:26 +0000
Received: by outflank-mailman (input) for mailman id 625122;
 Mon, 30 Oct 2023 13:47: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=rbZD=GM=casper.srs.infradead.org=BATV+4ee8b3733ecef6be489c+7372+infradead.org+dwmw2@srs-se1.protection.inumbo.net>)
 id 1qxSc0-0002Wi-TB
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 13:47:25 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id d92662ad-772a-11ee-98d6-6d05b1d4d9a1;
 Mon, 30 Oct 2023 14:47:23 +0100 (CET)
Received: from [2001:8b0:10b:5:9cbc:41e:b3e7:96ad]
 (helo=u3832b3a9db3152.ant.amazon.com)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qxSbt-004OiM-DO; Mon, 30 Oct 2023 13:47: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: d92662ad-772a-11ee-98d6-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=MIME-Version:Content-Type:References:
	In-Reply-To:Date:Cc:To:From:Subject:Message-ID:Sender:Reply-To:
	Content-Transfer-Encoding:Content-ID:Content-Description;
	bh=JCQyjtHk0/EEYfLuCwexiNgB5kkoXX4jRmIoeXIGGP4=; b=d/CVrXNRXQ7JayAWKHroVhinmu
	ifaVOC1ckfMPgTJKGCEeBfsZa1IIuq1tzAL5OGvehn/Ohd+2R9J1Sp4THffVhmYmJApHlGPHJfSGb
	x76x6PJthzWiv3dVV3WzmcSjlJigZ5rnenYKVn4FI/hlUhVWxxZ6JPz/FEFYb86ibC6ztP8H2Tqi4
	v5TtP1Ogebu6wa869jG0z2nHqxvcmbbTeQT+sDsiDHcjmZaIMlPOzxDE9PuOm+EzwRmm3wUWrR4Eu
	3owOieN3XgadsadDX49dhJVCnO4v9dK8S3lEnPUlWWYuRF5eLOMWm9zKRDHhtM9ZRre/eYMUg7tjL
	1UE3qjPA==;
Message-ID: <62eb30557d70785add8a8146e1d940faabdc54e0.camel@infradead.org>
Subject: Re: Lockdep show 6.6-rc regression in Xen HVM CPU hotplug
From: David Woodhouse <dwmw2@infradead.org>
To: Juergen Gross <jgross@suse.com>, xen-devel
 <xen-devel@lists.xenproject.org>,  paulmck <paulmck@kernel.org>
Cc: Stefano Stabellini <sstabellini@kernel.org>, Oleksandr Tyshchenko
 <oleksandr_tyshchenko@epam.com>, Rahul Singh <rahul.singh@arm.com>, Boris
 Ostrovsky <boris.ostrovsky@oracle.com>, Thomas Gleixner <tglx@linutronix.de>
Date: Mon, 30 Oct 2023 13:47:16 +0000
In-Reply-To: <0a2725ee-a1a8-43e4-b117-f474ffb392a8@suse.com>
References: <b28fff67f7501e4713af9b8c777f853cc44d6c6f.camel@infradead.org>
	 <c75a3d53-fc36-46a6-b781-f16e1e5c6226@suse.com>
	 <662772ec0d43cce9233680d67d7114bc8b0ed48d.camel@infradead.org>
	 <8e6c144f-f808-4603-8de4-76decc3c2838@suse.com>
	 <0a2725ee-a1a8-43e4-b117-f474ffb392a8@suse.com>
Content-Type: multipart/signed; micalg="sha-256"; protocol="application/pkcs7-signature";
	boundary="=-Inj5xKw6wBaQM/xH4qeX"
User-Agent: Evolution 3.44.4-0ubuntu2 
MIME-Version: 1.0
X-SRS-Rewrite: SMTP reverse-path rewritten from <dwmw2@infradead.org> by casper.infradead.org. See http://www.infradead.org/rpr.html


--=-Inj5xKw6wBaQM/xH4qeX
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Tue, 2023-10-24 at 14:08 +0200, Juergen Gross wrote:
> On 24.10.23 12:41, Juergen Gross wrote:
> > On 24.10.23 09:43, David Woodhouse wrote:
> > > On Tue, 2023-10-24 at 08:53 +0200, Juergen Gross wrote:
> > > >=20
> > > > I'm puzzled. This path doesn't contain any of the RCU usage I've ad=
ded in
> > > > commit 87797fad6cce.
> > > >=20
> > > > Are you sure that with just reverting commit 87797fad6cce the issue=
 doesn't
> > > > manifest anymore? I'd rather expect commit 721255b9826b having caus=
ed this
> > > > behavior, just telling from the messages above.
> > >=20
> > > Retesting in the cold light of day, yes. Using v6.6-rc5 which is the
> > > parent commit of the offending 87797fad6cce.
> > >=20
> > > I now see this warning at boot time again, which I believe was an
> > > aspect of what you were trying to fix:
> > >=20
> > > [=C2=A0=C2=A0=C2=A0 0.059014] xen:events: Using FIFO-based ABI
> > > [=C2=A0=C2=A0=C2=A0 0.059029] xen:events: Xen HVM callback vector for=
 event delivery is enabled
> > > [=C2=A0=C2=A0=C2=A0 0.059227] rcu: srcu_init: Setting srcu_struct siz=
es based on contention.
> > > [=C2=A0=C2=A0=C2=A0 0.059296]
> > > [=C2=A0=C2=A0=C2=A0 0.059297] =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
> > > [=C2=A0=C2=A0=C2=A0 0.059298] [ BUG: Invalid wait context ]
> > > [=C2=A0=C2=A0=C2=A0 0.059299] 6.6.0-rc5 #1374 Not tainted
> > > [=C2=A0=C2=A0=C2=A0 0.059300] -----------------------------
> > > [=C2=A0=C2=A0=C2=A0 0.059301] swapper/0/0 is trying to lock:
> > > [=C2=A0=C2=A0=C2=A0 0.059303] ffffffff8ad595f8 (evtchn_rwlock){....}-=
{3:3}, at:=20
> > > xen_evtchn_do_upcall+0x59/0xd0
> >=20
> > Indeed.
> >=20
> > What I still not get is why the rcu_dereference_check() splat isn't
> > happening without my patch.
> >=20
> > IMHO it should be related to the fact that cpuhp_report_idle_dead()
> > is trying to send an IPI via xen_send_IPI_one(), which is using
> > notify_remote_via_irq(), which in turn needs to call irq_get_chip_data(=
).
> > This is using the maple-tree since 721255b9826b, which is using
> > rcu_read_lock().
> >=20
> > I can probably change xen_send_IPI_one() to not need irq_get_chip_data(=
).
>=20
> David, could you test the attached patch, please? Build tested only.

Tested-by: David Woodhouse <dwmw@amazon.co.uk>

(And I think we worked out the reason why your 'replace evtchn_rwlock
with RCU' patch apparently triggers those other issues is that
*without* your patch, lockdep fired off a warning and then stopped
working long before the other issues occur.)


--=-Inj5xKw6wBaQM/xH4qeX
Content-Type: application/pkcs7-signature; name="smime.p7s"
Content-Disposition: attachment; filename="smime.p7s"
Content-Transfer-Encoding: base64

MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgEFADCABgkqhkiG9w0BBwEAAKCCEkQw
ggYQMIID+KADAgECAhBNlCwQ1DvglAnFgS06KwZPMA0GCSqGSIb3DQEBDAUAMIGIMQswCQYDVQQG
EwJVUzETMBEGA1UECBMKTmV3IEplcnNleTEUMBIGA1UEBxMLSmVyc2V5IENpdHkxHjAcBgNVBAoT
FVRoZSBVU0VSVFJVU1QgTmV0d29yazEuMCwGA1UEAxMlVVNFUlRydXN0IFJTQSBDZXJ0aWZpY2F0
aW9uIEF1dGhvcml0eTAeFw0xODExMDIwMDAwMDBaFw0zMDEyMzEyMzU5NTlaMIGWMQswCQYDVQQG
EwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYD
VQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50
aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC
AQEAyjztlApB/975Rrno1jvm2pK/KxBOqhq8gr2+JhwpKirSzZxQgT9tlC7zl6hn1fXjSo5MqXUf
ItMltrMaXqcESJuK8dtK56NCSrq4iDKaKq9NxOXFmqXX2zN8HHGjQ2b2Xv0v1L5Nk1MQPKA19xeW
QcpGEGFUUd0kN+oHox+L9aV1rjfNiCj3bJk6kJaOPabPi2503nn/ITX5e8WfPnGw4VuZ79Khj1YB
rf24k5Ee1sLTHsLtpiK9OjG4iQRBdq6Z/TlVx/hGAez5h36bBJMxqdHLpdwIUkTqT8se3ed0PewD
ch/8kHPo5fZl5u1B0ecpq/sDN/5sCG52Ds+QU5O5EwIDAQABo4IBZDCCAWAwHwYDVR0jBBgwFoAU
U3m/WqorSs9UgOHYm8Cd8rIDZsswHQYDVR0OBBYEFAnA8vwL2pTbX/4r36iZQs/J4K0AMA4GA1Ud
DwEB/wQEAwIBhjASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEF
BQcDBDARBgNVHSAECjAIMAYGBFUdIAAwUAYDVR0fBEkwRzBFoEOgQYY/aHR0cDovL2NybC51c2Vy
dHJ1c3QuY29tL1VTRVJUcnVzdFJTQUNlcnRpZmljYXRpb25BdXRob3JpdHkuY3JsMHYGCCsGAQUF
BwEBBGowaDA/BggrBgEFBQcwAoYzaHR0cDovL2NydC51c2VydHJ1c3QuY29tL1VTRVJUcnVzdFJT
QUFkZFRydXN0Q0EuY3J0MCUGCCsGAQUFBzABhhlodHRwOi8vb2NzcC51c2VydHJ1c3QuY29tMA0G
CSqGSIb3DQEBDAUAA4ICAQBBRHUAqznCFfXejpVtMnFojADdF9d6HBA4kMjjsb0XMZHztuOCtKF+
xswhh2GqkW5JQrM8zVlU+A2VP72Ky2nlRA1GwmIPgou74TZ/XTarHG8zdMSgaDrkVYzz1g3nIVO9
IHk96VwsacIvBF8JfqIs+8aWH2PfSUrNxP6Ys7U0sZYx4rXD6+cqFq/ZW5BUfClN/rhk2ddQXyn7
kkmka2RQb9d90nmNHdgKrwfQ49mQ2hWQNDkJJIXwKjYA6VUR/fZUFeCUisdDe/0ABLTI+jheXUV1
eoYV7lNwNBKpeHdNuO6Aacb533JlfeUHxvBz9OfYWUiXu09sMAviM11Q0DuMZ5760CdO2VnpsXP4
KxaYIhvqPqUMWqRdWyn7crItNkZeroXaecG03i3mM7dkiPaCkgocBg0EBYsbZDZ8bsG3a08LwEsL
1Ygz3SBsyECa0waq4hOf/Z85F2w2ZpXfP+w8q4ifwO90SGZZV+HR/Jh6rEaVPDRF/CEGVqR1hiuQ
OZ1YL5ezMTX0ZSLwrymUE0pwi/KDaiYB15uswgeIAcA6JzPFf9pLkAFFWs1QNyN++niFhsM47qod
x/PL+5jR87myx5uYdBEQkkDc+lKB1Wct6ucXqm2EmsaQ0M95QjTmy+rDWjkDYdw3Ms6mSWE3Bn7i
5ZgtwCLXgAIe5W8mybM2JzCCBhQwggT8oAMCAQICEQDGvhmWZ0DEAx0oURL6O6l+MA0GCSqGSIb3
DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYD
VQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28g
UlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMB4XDTIyMDEwNzAw
MDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJARYTZHdtdzJAaW5mcmFkZWFkLm9y
ZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3GpC2bomUqk+91wLYBzDMcCj5C9m6
oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZHh7htyAkWYVoFsFPrwHounto8xTsy
SSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT9YgcBqKCo65pTFmOnR/VVbjJk4K2
xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNjP+qDrh0db7PAjO1D4d5ftfrsf+kd
RR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy2U+eITZ5LLE5s45mX2oPFknWqxBo
bQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3BgBEmfsYWlBXO8rVXfvPgLs32VdV
NZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/7auNVRmPB3v5SWEsH8xi4Bez2V9U
KxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmdlFYhAflWKQ03Ufiu8t3iBE3VJbc2
5oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9aelIl6vtbhMA+l0nfrsORMa4kobqQ5
C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMBAAGjggHMMIIByDAfBgNVHSMEGDAW
gBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeDMcimo0oz8o1R1Nver3ZVpSkwDgYD
VR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYwFAYIKwYBBQUHAwQGCCsGAQUFBwMC
MEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYBBQUHAgEWF2h0dHBzOi8vc2VjdGln
by5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9jcmwuc2VjdGlnby5jb20vU2VjdGln
b1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1haWxDQS5jcmwwgYoGCCsGAQUFBwEB
BH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdvLmNvbS9TZWN0aWdvUlNBQ2xpZW50
QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAjBggrBgEFBQcwAYYXaHR0cDovL29j
c3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5mcmFkZWFkLm9yZzANBgkqhkiG9w0B
AQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQvQ/fzPXmtR9t54rpmI2TfyvcKgOXp
qa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvIlSPrzIB4Z2wyIGQpaPLlYflrrVFK
v9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9ChWFfgSXvrWDZspnU3Gjw/rMHrGnql
Htlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0whpBtXdyDjzBtQTaZJ7zTT/vlehc/
tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9IzCCBhQwggT8oAMCAQICEQDGvhmW
Z0DEAx0oURL6O6l+MA0GCSqGSIb3DQEBCwUAMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3Jl
YXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0
ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJl
IEVtYWlsIENBMB4XDTIyMDEwNzAwMDAwMFoXDTI1MDEwNjIzNTk1OVowJDEiMCAGCSqGSIb3DQEJ
ARYTZHdtdzJAaW5mcmFkZWFkLm9yZzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALQ3
GpC2bomUqk+91wLYBzDMcCj5C9m6oZaHwvmIdXftOgTbCJXADo6G9T7BBAebw2JV38EINgKpy/ZH
h7htyAkWYVoFsFPrwHounto8xTsySSePMiPlmIdQ10BcVSXMUJ3Juu16GlWOnAMJY2oYfEzmE7uT
9YgcBqKCo65pTFmOnR/VVbjJk4K2xE34GC2nAdUQkPFuyaFisicc6HRMOYXPuF0DuwITEKnjxgNj
P+qDrh0db7PAjO1D4d5ftfrsf+kdRR4gKVGSk8Tz2WwvtLAroJM4nXjNPIBJNT4w/FWWc/5qPHJy
2U+eITZ5LLE5s45mX2oPFknWqxBobQZ8a9dsZ3dSPZBvE9ZrmtFLrVrN4eo1jsXgAp1+p7bkfqd3
BgBEmfsYWlBXO8rVXfvPgLs32VdVNZxb/CDWPqBsiYv0Hv3HPsz07j5b+/cVoWqyHDKzkaVbxfq/
7auNVRmPB3v5SWEsH8xi4Bez2V9UKxfYCnqsjp8RaC2/khxKt0A552Eaxnz/4ly/2C7wkwTQnBmd
lFYhAflWKQ03Ufiu8t3iBE3VJbc25oMrglj7TRZrmKq3CkbFnX0fyulB+kHimrt6PIWn7kgyl9ae
lIl6vtbhMA+l0nfrsORMa4kobqQ5C5rveVgmcIad67EDa+UqEKy/GltUwlSh6xy+TrK1tzDvAgMB
AAGjggHMMIIByDAfBgNVHSMEGDAWgBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUzMeD
Mcimo0oz8o1R1Nver3ZVpSkwDgYDVR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYw
FAYIKwYBBQUHAwQGCCsGAQUFBwMCMEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYB
BQUHAgEWF2h0dHBzOi8vc2VjdGlnby5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9j
cmwuc2VjdGlnby5jb20vU2VjdGlnb1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1h
aWxDQS5jcmwwgYoGCCsGAQUFBwEBBH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdv
LmNvbS9TZWN0aWdvUlNBQ2xpZW50QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAj
BggrBgEFBQcwAYYXaHR0cDovL29jc3Auc2VjdGlnby5jb20wHgYDVR0RBBcwFYETZHdtdzJAaW5m
cmFkZWFkLm9yZzANBgkqhkiG9w0BAQsFAAOCAQEAyW6MUir5dm495teKqAQjDJwuFCi35h4xgnQv
Q/fzPXmtR9t54rpmI2TfyvcKgOXpqa7BGXNFfh1JsqexVkIqZP9uWB2J+uVMD+XZEs/KYNNX2PvI
lSPrzIB4Z2wyIGQpaPLlYflrrVFKv9CjT2zdqvy2maK7HKOQRt3BiJbVG5lRiwbbygldcALEV9Ch
WFfgSXvrWDZspnU3Gjw/rMHrGnqlHtlyebp3pf3fSS9kzQ1FVtVIDrL6eqhTwJxe+pXSMMqFiN0w
hpBtXdyDjzBtQTaZJ7zTT/vlehc/tDuqZwGHm/YJy883Ll+GP3NvOkgaRGWEuYWJJ6hFCkXYjyR9
IzGCBMcwggTDAgEBMIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVz
dGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMT
NVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEA
xr4ZlmdAxAMdKFES+jupfjANBglghkgBZQMEAgEFAKCCAeswGAYJKoZIhvcNAQkDMQsGCSqGSIb3
DQEHATAcBgkqhkiG9w0BCQUxDxcNMjMxMDMwMTM0NzE2WjAvBgkqhkiG9w0BCQQxIgQgA9c/CP4J
aUIFtd9HtwVj2ID27h7BRJO6pJSqVpUuxwgwgb0GCSsGAQQBgjcQBDGBrzCBrDCBljELMAkGA1UE
BhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEYMBYG
A1UEChMPU2VjdGlnbyBMaW1pdGVkMT4wPAYDVQQDEzVTZWN0aWdvIFJTQSBDbGllbnQgQXV0aGVu
dGljYXRpb24gYW5kIFNlY3VyZSBFbWFpbCBDQQIRAMa+GZZnQMQDHShREvo7qX4wgb8GCyqGSIb3
DQEJEAILMYGvoIGsMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVy
MRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNl
Y3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhEAxr4Z
lmdAxAMdKFES+jupfjANBgkqhkiG9w0BAQEFAASCAgA2bPuS/z3RDaGWB3nY/6NyKRbAF1P8IG3j
PH5B9avTcUZi8TA5a7hK6QGYNulEnBfoAltgk8Eb3dghjf+1oaIEJrEgUoUji580XFA10BQT19qs
aGFiMb44JGqIO0BRMPYpnHDeBJ/Pozg4C0Yhi6pTGxFN8Z3NEiJin8iocWo6ii3ckoI4x4JlmXOq
hetCRmq4CJFUwWCaZydoJmx8Qf5HruqVmc1G2M4ekPyOv/xGRFRITvIa/YsY6/JkAZc//Ffuifkj
gYvsF2v90ldSotKzO83b1Wg9TjDq6ikYXcLPemkc/KXiy5JGjTUNgb2XXsylwr3yhjHYC2j9NcdS
7gRhEoxV/9fWpn4HKe9cQIdBzjIfYXTebMQ87uoYxT4vdiuN2E8fQl2l8qLB7zTHYadt+2fL3Jkx
PAlHBA3zRWeVZmg5Qe0kSsdVmtGOrmkeIQNdPwwdmJoS6Vi/rEjyV+GeuOeq6g1UUIj8oI5WRjTc
5tKKwS6ECw4wl+NGADx0H/jeemkp4QZoR03bvqm5QwLE/PsZ+WCwAcv/vKC60zXqzCStKq4UdNc5
41yxgPmkDgmP04MamH1A5NxtCc1FNVSUMsS/Adl0SzdSk3lpn4kFLhpYjWKz2E1GQaJ8Fu5COmL5
T90gV42ErSHMSyPlgL2Og97i3aP//kBlKty8/k8kAQAAAAAAAA==


--=-Inj5xKw6wBaQM/xH4qeX--


From xen-devel-bounces@lists.xenproject.org Mon Oct 30 14:03:49 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 14:03:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625127.974070 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxSrk-0005zR-IA; Mon, 30 Oct 2023 14:03:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625127.974070; Mon, 30 Oct 2023 14:03: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 1qxSrk-0005zK-EU; Mon, 30 Oct 2023 14:03:40 +0000
Received: by outflank-mailman (input) for mailman id 625127;
 Mon, 30 Oct 2023 14:03: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=aFdh=GM=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qxSrk-0005zE-3l
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 14:03:40 +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 1f6a9249-772d-11ee-9b0e-b553b5be7939;
 Mon, 30 Oct 2023 15:03:38 +0100 (CET)
Received: by mail-lf1-x12e.google.com with SMTP id
 2adb3069b0e04-507962561adso6556115e87.0
 for <xen-devel@lists.xenproject.org>; Mon, 30 Oct 2023 07:03:38 -0700 (PDT)
Received: from [192.168.201.133] ([94.75.70.14])
 by smtp.gmail.com with ESMTPSA id
 t24-20020ac24c18000000b00504211d2a73sm1451017lfq.230.2023.10.30.07.03.35
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 30 Oct 2023 07:03: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: 1f6a9249-772d-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698674617; x=1699279417; 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=Et7bLkuUyjr6eBHNiSQU/8YQxesnW4GB9tMYVVUOI5M=;
        b=YTjOvZYsTjpHmbzq6mkUby/FXAvbl+E1onjd66U/aGi7NezGHNN95SmHiF+xIVzD+O
         Pl3iD3fBUtN/G5SBkv21s4b1kTVuWwKTJ3QKK9Y3tvAyoQCjcyKVOhoPXqASzzFQUPb3
         gIl8ecIy0q0uUHBty42lfssO8xZGbpTRkN3GYaJoWGk1L+K+5Q69HbUqLn40mUXIdjpE
         4TQe4N7XTk0qL3pTeQ85kw5NSrL0gVY6EALq5vVoZItjNMmiJXoTiPPjB/fX0/JGwIhU
         hWUOWAEZHnhFCJv/2p4SrlmblZO4SaONPYVQQ/knm3reOzrhBq0PrM86oL+fK+YZ/xZY
         LHiw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698674617; x=1699279417;
        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=Et7bLkuUyjr6eBHNiSQU/8YQxesnW4GB9tMYVVUOI5M=;
        b=UwZbwnI6Np+Lq8BGAzhDwn36lCvv6AZreECUlaVVyDFusEwcbdbV+7/3LkJ3TlW/lh
         jPkTmtuwyVH0nKNclDNOaSqGKO6j7gwAKBtCItATmIkmBBfF7kyh9VZegzEj14kmqXrS
         oABTsr8QIQMVWmtElpdCauI2g3pHzN2tnHldqNLtlvutlDpJy5G60x3/FukjrkYf8ZHr
         Pv5m8xbl0NMB/S7xZx2BKjLGyDCQAqyhixsnKUJk8aOTc653W3BRWv3SEdZbaCMR1Ny4
         r3khriZrODpGjeGjmOSvvZY3JlHta5ECQa3ZoJgBZZSvLFowdq4p91JuBhGG8iyIvQ7U
         xW7Q==
X-Gm-Message-State: AOJu0YyHvzW8fGRkACbp8lpCxPP+PiaqWVcRqodPCjGodhjVzBtYl1wq
	ZwVM50p5BVPYVAjrq3nWKSs=
X-Google-Smtp-Source: AGHT+IFafuIln79IsyY8FovSxsN3m14VlgFTSQysbeWGIvM4n+mPlxkaJMg7VqEsrAs/boBxHnTJDQ==
X-Received: by 2002:ac2:4843:0:b0:507:a823:fac5 with SMTP id 3-20020ac24843000000b00507a823fac5mr7183908lfy.8.1698674617098;
        Mon, 30 Oct 2023 07:03:37 -0700 (PDT)
Message-ID: <ab1c73bf5d0661fd35b370b5324d2fcb452024c2.camel@gmail.com>
Subject: Re: [PATCH] xenoprof: move asm/ include
From: Oleksii <oleksii.kurochko@gmail.com>
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>, Bertrand Marquis
 <bertrand.marquis@arm.com>, Volodymyr Babchuk <volodymyr_babchuk@epam.com>,
  Roger Pau =?ISO-8859-1?Q?Monn=E9?= <roger.pau@citrix.com>, Shawn Anastasio
 <sanastasio@raptorengineering.com>
Date: Mon, 30 Oct 2023 16:03:35 +0200
In-Reply-To: <4fda4793-6fdc-70e6-575d-062f72c8c0dc@suse.com>
References: <4fda4793-6fdc-70e6-575d-062f72c8c0dc@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

Hi Jan,

On Mon, 2023-10-30 at 14:19 +0100, Jan Beulich wrote:
> There's no need for xen/xenoprof.h to include the arch header when
> the
> respective config option is off. The only compensation needed is for
> svm.c to explicitly include the arch header instead of the common one
> (matching what vmx.c and traps.c do).
>=20
> With that Arm's header can be deleted, and neither RISC-V nor PPC
> will
> need to introduce one.
>=20
> While there also adjust and move the (prior) inclusion of inttypes.h.
>=20
> Signed-off-by: Jan Beulich <jbeulich@suse.com>
>=20
> --- a/xen/arch/arm/include/asm/xenoprof.h
> +++ /dev/null
> @@ -1,12 +0,0 @@
> -#ifndef __ASM_XENOPROF_H__
> -#define __ASM_XENOPROF_H__
> -
> -#endif /* __ASM_XENOPROF_H__ */
> -/*
> - * Local variables:
> - * mode: C
> - * c-file-style: "BSD"
> - * c-basic-offset: 4
> - * indent-tabs-mode: nil
> - * End:
> - */
> --- a/xen/arch/x86/hvm/svm/svm.c
> +++ b/xen/arch/x86/hvm/svm/svm.c
> @@ -12,7 +12,6 @@
> =C2=A0#include <xen/lib.h>
> =C2=A0#include <xen/sched.h>
> =C2=A0#include <xen/trace.h>
> -#include <xen/xenoprof.h>
> =C2=A0
> =C2=A0#include <asm/amd.h>
> =C2=A0#include <asm/apic.h>
> @@ -38,6 +37,7 @@
> =C2=A0#include <asm/processor.h>
> =C2=A0#include <asm/p2m.h>
> =C2=A0#include <asm/x86_emulate.h>
> +#include <asm/xenoprof.h>
> =C2=A0
> =C2=A0#include <public/sched.h>
> =C2=A0
> --- a/xen/include/xen/xenoprof.h
> +++ b/xen/include/xen/xenoprof.h
> @@ -10,15 +10,15 @@
> =C2=A0#ifndef __XEN_XENOPROF_H__
> =C2=A0#define __XEN_XENOPROF_H__
> =C2=A0
> -#include <xen/inttypes.h>
> -#include <asm/xenoprof.h>
> -
> =C2=A0#define PMU_OWNER_NONE=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0 0
> =C2=A0#define PMU_OWNER_XENOPROF=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 1
> =C2=A0#define PMU_OWNER_HVM=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0 2
> =C2=A0
> =C2=A0#ifdef CONFIG_XENOPROF
> =C2=A0
> +#include <xen/stdint.h>
> +#include <asm/xenoprof.h>
> +
> =C2=A0struct domain;
> =C2=A0struct vcpu;
> =C2=A0struct cpu_user_regs;

Looks good to me.

Reviewed-by: Oleksii Kurochko <oleksii.kurochko@gmail.com>

~ Oleksii



From xen-devel-bounces@lists.xenproject.org Mon Oct 30 14:06:33 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 14:06:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625131.974080 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxSuV-00075U-0p; Mon, 30 Oct 2023 14:06:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625131.974080; Mon, 30 Oct 2023 14:06: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 1qxSuU-00075N-Td; Mon, 30 Oct 2023 14:06:30 +0000
Received: by outflank-mailman (input) for mailman id 625131;
 Mon, 30 Oct 2023 14:06: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=aFdh=GM=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qxSuT-00075H-FR
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 14:06:29 +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 84e5621e-772d-11ee-98d6-6d05b1d4d9a1;
 Mon, 30 Oct 2023 15:06:28 +0100 (CET)
Received: by mail-lf1-x133.google.com with SMTP id
 2adb3069b0e04-507f1c29f25so6236910e87.1
 for <xen-devel@lists.xenproject.org>; Mon, 30 Oct 2023 07:06:28 -0700 (PDT)
Received: from [192.168.201.133] ([94.75.70.14])
 by smtp.gmail.com with ESMTPSA id
 c8-20020a056512238800b00507a0017931sm1446405lfv.167.2023.10.30.07.06.26
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 30 Oct 2023 07:06: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: 84e5621e-772d-11ee-98d6-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698674788; x=1699279588; 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=9zje1WR/5N9X9fh2vGaqxNi9OOUC+5VFuZB22F9QkMQ=;
        b=ZeC3NjQVysIFDR6Eh/HkGFFKIZIFtSFLnykvD3NHFAyjorwu541otDNfPvfbXyah8L
         xfACKmySrY1G7JSo3EmcNIHjRtMVI3Ao9C669juUDGESMFeO8FnIQcpQMADXWQriCUzX
         +Mh1M2RIaoPcJ6eSVkyJeVaOHpxZePOyubFmmo9BK+TFoysuYHJtwVvTqhzXEBRywi7b
         E5NqllDiF0S5IAnhpyTRFkX06192P5m8qh+HUJQL1LEJIGLkSkPQS5mejYJ3fI8D8057
         LUvlYr0/jtxOM/f3YfO7mMnJpmztpXf0gMveUfHBoNv2J4//teKXhkiik+M+Z33p/Ezy
         ZB4A==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698674788; x=1699279588;
        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=9zje1WR/5N9X9fh2vGaqxNi9OOUC+5VFuZB22F9QkMQ=;
        b=eBBKnpkxlt7umrcsRZlCQE/2AWbA6rF30daN+aBemVm+zeapgLZ66F4bCFzcX3R+1E
         BqIJ5Qn8Hfsu7D1iJt/va4HndDERpNO6xR1vd6cy88zbbT+c6VinTze1YLMt7P4mlnPv
         fWF9WTy0Y4Eli2GyAfPTJ0Qzqu19V5eiLwRCDg3Saw9ooMp0+zkNbrO8m9qubHMSASiY
         2O990nOEwKbFefaStUTMATpt5I3bpiTrhn7Jo9RgO83IFlsFl0x9eYF7YEqozavA8DTB
         f/VopjWoPmhUj+NBDCoSn38ZhaGuboxmKgHjGyboVUoepN511rzENNrNfNwGGfLgz0FN
         xoJQ==
X-Gm-Message-State: AOJu0Yy/18rE6OOG97tREwKhFY2GavWYHP1TU0yGClR07ukHQ5VJ8nFu
	GfXCipIBbzekRlIhPHfhZvo=
X-Google-Smtp-Source: AGHT+IFw/xBFIomFyGk0Rg2TqZJfENJhGeKbXCn9R8UAbu6/jn7K+ePfHghzMLCqW5qv0jInmFjB5g==
X-Received: by 2002:ac2:5e2f:0:b0:500:75e5:a2f0 with SMTP id o15-20020ac25e2f000000b0050075e5a2f0mr6739817lfg.51.1698674787788;
        Mon, 30 Oct 2023 07:06:27 -0700 (PDT)
Message-ID: <f59d52b12553b3a0099897f9a0751c9febb3ef43.camel@gmail.com>
Subject: Re: [PATCH] arch: drop get_processor_id()
From: Oleksii <oleksii.kurochko@gmail.com>
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>, Bertrand Marquis
 <bertrand.marquis@arm.com>, Volodymyr Babchuk <volodymyr_babchuk@epam.com>,
  Roger Pau =?ISO-8859-1?Q?Monn=E9?= <roger.pau@citrix.com>, Shawn Anastasio
 <sanastasio@raptorengineering.com>
Date: Mon, 30 Oct 2023 16:06:26 +0200
In-Reply-To: <446254b4-8231-f6db-5f18-ed367503454c@suse.com>
References: <446254b4-8231-f6db-5f18-ed367503454c@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


Hi Jan,

On Mon, 2023-10-30 at 14:29 +0100, Jan Beulich wrote:
> smp_processor_id() is what we commonly use; there's no need for it to
> have an alias.
>=20
> Signed-off-by: Jan Beulich <jbeulich@suse.com>
>=20
> --- a/xen/arch/arm/include/asm/current.h
> +++ b/xen/arch/arm/include/asm/current.h
> @@ -53,7 +53,7 @@ static inline struct cpu_info *get_cpu_i
> =C2=A0
> =C2=A0DECLARE_PER_CPU(unsigned int, cpu_id);
> =C2=A0
> -#define get_processor_id()=C2=A0=C2=A0=C2=A0=C2=A0 this_cpu(cpu_id)
> +#define smp_processor_id()=C2=A0=C2=A0=C2=A0=C2=A0 this_cpu(cpu_id)
> =C2=A0#define set_processor_id(id)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 \
> =C2=A0do {=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0 \
> =C2=A0=C2=A0=C2=A0=C2=A0 WRITE_SYSREG(__per_cpu_offset[(id)], TPIDR_EL2);=
=C2=A0=C2=A0=C2=A0 \
> --- a/xen/arch/arm/include/asm/smp.h
> +++ b/xen/arch/arm/include/asm/smp.h
> @@ -11,8 +11,6 @@ DECLARE_PER_CPU(cpumask_var_t, cpu_core_
> =C2=A0
> =C2=A0#define cpu_is_offline(cpu) unlikely(!cpu_online(cpu))
> =C2=A0
> -#define smp_processor_id() get_processor_id()
> -
> =C2=A0/*
> =C2=A0 * Do we, for platform reasons, need to actually keep CPUs online
> when we
> =C2=A0 * would otherwise prefer them to be off?
> --- a/xen/arch/arm/smpboot.c
> +++ b/xen/arch/arm/smpboot.c
> @@ -401,7 +401,7 @@ void start_secondary(void)
> =C2=A0/* Shut down the current CPU */
> =C2=A0void __cpu_disable(void)
> =C2=A0{
> -=C2=A0=C2=A0=C2=A0 unsigned int cpu =3D get_processor_id();
> +=C2=A0=C2=A0=C2=A0 unsigned int cpu =3D smp_processor_id();
> =C2=A0
> =C2=A0=C2=A0=C2=A0=C2=A0 local_irq_disable();
> =C2=A0=C2=A0=C2=A0=C2=A0 gic_disable_cpu();
> --- a/xen/arch/x86/include/asm/current.h
> +++ b/xen/arch/x86/include/asm/current.h
> @@ -99,7 +99,7 @@ static inline struct cpu_info *get_cpu_i
> =C2=A0#define set_current(vcpu)=C2=A0=C2=A0=C2=A0=C2=A0 (get_cpu_info()->=
current_vcpu =3D
> (vcpu))
> =C2=A0#define current=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (get_current())
> =C2=A0
> -#define get_processor_id()=C2=A0=C2=A0=C2=A0 (get_cpu_info()->processor_=
id)
> +#define smp_processor_id()=C2=A0=C2=A0=C2=A0 (get_cpu_info()->processor_=
id)
> =C2=A0#define guest_cpu_user_regs() (&get_cpu_info()->guest_cpu_user_regs=
)
> =C2=A0
> =C2=A0/*
> --- a/xen/arch/x86/include/asm/smp.h
> +++ b/xen/arch/x86/include/asm/smp.h
> @@ -48,13 +48,6 @@ extern void cpu_exit_clear(unsigned int
> =C2=A0extern void cpu_uninit(unsigned int cpu);
> =C2=A0int cpu_add(uint32_t apic_id, uint32_t acpi_id, uint32_t pxm);
> =C2=A0
> -/*
> - * This function is needed by all SMP systems. It must _always_ be
> valid
> - * from the initial startup. We map APIC_BASE very early in
> page_setup(),
> - * so this is correct in the x86 case.
> - */
> -#define smp_processor_id() get_processor_id()
> -
> =C2=A0void __stop_this_cpu(void);
> =C2=A0
> =C2=A0long cf_check cpu_up_helper(void *data);
> --- a/xen/arch/x86/mm/mm-locks.h
> +++ b/xen/arch/x86/mm/mm-locks.h
> @@ -122,7 +122,7 @@ static inline void mm_rwlock_init(mm_rwl
> =C2=A0
> =C2=A0static inline int mm_write_locked_by_me(mm_rwlock_t *l)
> =C2=A0{
> -=C2=A0=C2=A0=C2=A0 return (l->locker =3D=3D get_processor_id());
> +=C2=A0=C2=A0=C2=A0 return (l->locker =3D=3D smp_processor_id());
> =C2=A0}
> =C2=A0
> =C2=A0static inline void _mm_write_lock(const struct domain *d,
> mm_rwlock_t *l,
> @@ -132,7 +132,7 @@ static inline void _mm_write_lock(const
> =C2=A0=C2=A0=C2=A0=C2=A0 {
> =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 _check_lock_level(d, lev=
el);
> =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 percpu_write_lock(p2m_pe=
rcpu_rwlock, &l->lock);
> -=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 l->locker =3D get_processor_i=
d();
> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 l->locker =3D smp_processor_i=
d();
> =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 l->locker_function =3D f=
unc;
> =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 l->unlock_level =3D _get=
_lock_level();
> =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 _set_lock_level(_lock_le=
vel(d, level));

Looks good to me.

Reviewed-by: Oleksii Kurochko <oleksii.kurochko@gmail.com>

~ Oleksii



From xen-devel-bounces@lists.xenproject.org Mon Oct 30 14:12:35 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 14:12:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625136.974090 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxT0J-0000VD-Km; Mon, 30 Oct 2023 14:12:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625136.974090; Mon, 30 Oct 2023 14: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 1qxT0J-0000V6-Ho; Mon, 30 Oct 2023 14:12:31 +0000
Received: by outflank-mailman (input) for mailman id 625136;
 Mon, 30 Oct 2023 14:12: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=Hhfi=GM=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qxT0I-0000V0-Rk
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 14:12:30 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur04on2051.outbound.protection.outlook.com [40.107.7.51])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 5c25ae52-772e-11ee-98d6-6d05b1d4d9a1;
 Mon, 30 Oct 2023 15:12:29 +0100 (CET)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM9PR04MB8338.eurprd04.prod.outlook.com (2603:10a6:20b:3ec::18)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.11; Mon, 30 Oct
 2023 14:12:00 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6954.016; Mon, 30 Oct 2023
 14:12: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: 5c25ae52-772e-11ee-98d6-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=RCcmqJMIDm4L6witGpNfqFxH9ZlCAv7SE02jf5zjeC7lhHiVAzr4VZ5HKoJA0uOI4miTJwnGCsPtnml2AES1iKMOSvrRGz5Lpct5bYYRdyQQDGT5oscNYCvtg+YtUxJtN5bvd5XWPnz3cgQModHFWl4IZmSJSrZSBAKFxRr60SxvEmLje7NqJzXzMKumgtanJ8MbvZdtCvLeuGeLzPfqlTsbHeCigbzPiJHhx27NFxPASSpb7A/AfnlnuSCrDR339oRiP+3dx01kfeGXgT8bS4Xx33VEZu83dvjCYtrvE+JkMrtK8Mv6+U8lgBYIF754sropr+5cohBnb/fs95fveA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=26FFgfDy+XeQ9w/5g7cx/xYQJAeK+xLT3MfRJCPlin0=;
 b=JLlbnVuVOQGU0sghhpYfpKZW2/UL4Da54ZAALxxbSKQ8VCesJE6mcq0n0oyVguEk+ot4iZDDMZeAVcNkEWyv2c1CirhZVFSBXXCp9vDkpKW0yVwdn2TE769oug/SlddgGzpRwLdSmEdosf3p888rEmFW7EHWTK1rOdYxtyswZnNPiwEgaFopniC/a/yG7+Y5aPRdRusCEPQH8vPGJr2lY5UV1khDRWK3X+gFF9e319JHc3pKg37HgaiP37y60Y4iHl2b4CSlY96XDPR1uFvpFzWpf7zmQPDwxQfQHS59Ez/owA2dkVmlwV9o6c02fiuVBytBBZ0nVylCVbq89Zn9YA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=26FFgfDy+XeQ9w/5g7cx/xYQJAeK+xLT3MfRJCPlin0=;
 b=S33mficFlsGLCTJSUWkQuGmOsoM+403rWSjDexIjTSaALHuPGdPbwpY/4imYVpkNu/7EkW+KPKNR7uG8bVfxbt0t8h8wzKiQtXp3Xks2Au1WjN2atDJi1oTY0tM8AXpk7Y8NlHdo0i7+LFGxS2+VO8xT9A12EcCSz6iX/A1iuCEZyUxNrdPjSNEBKsxgknjittAxAw+4+C2fuusLXvdiOdMNz2NG/jLUqzm0274GpACd9f3h4/7TC8QHs/4MZptm6yEvkWa9QMmlh8bwjBL+MHClYqxjc9zGRtNAqjaUTrgQayRmDylqxXPTNYqWiAGZWSsmCckrq4nwHWz9fyNFQw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <705d59cf-0e3f-0224-dfc3-be60d446d2e0@suse.com>
Date: Mon, 30 Oct 2023 15:12:01 +0100
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH] x86/x2apic: remove usage of ACPI_FADT_APIC_CLUSTER
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: <20231024102630.47691-1-roger.pau@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20231024102630.47691-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR3P281CA0077.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:1f::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_|AM9PR04MB8338:EE_
X-MS-Office365-Filtering-Correlation-Id: a01d3a27-f8f7-4544-e369-08dbd9522ec6
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	lnI7CY2QZ/BzT1tuoivheXXgIdvJZJJvRK9pxLz3rVyi5t6oJ5xVRsrgpSWDFVAseOBDiOS4dri/z/2PT8D+QUP9OhtczTOuQMYl1hcGJp7wNeQr3aHsCephUXf8wrtGPMnVOpVND0SabhHpvgW+o4ng03rR4WF7HhVN7ogpCT1llN36+ntBFhm96BKoMFzLtOs7sDcRDExzl+OgZnKqgMdZ0nLc42NtdZc0cOvU3EaUEcghWm5OAd3YG0X5d15FAVj5wByU9yliU7dll4aEteo8B44FFnrgR/AwfH2xdD0YEtIfKmx/MXlwcM5tTtNIxrMlO2tbjpii84JpNt1N1pxYIYHV+fmGv/aUKhSMQv1VFZeVO8Qh2ACpryBgbY9lXi0D3gj/e0te/u9gDD5mCmalijIsQfYrHxWdFPXOhMhPVGUPtBwEhu7utqbzmqlXOltDjtV8URGP8e65DZWIgf8kVyQ8sNNrJy2m6DgoCJXlWENeIZ4idbqdHWrFg8NYF9zF/uY1g8tJKDf/vuAs+H4815Us/UUvPStTU6TiLcRkGarNJwHJldZT3GPhA9RXu/Pusnu+d5OPTA4a+Qw+HxtVuB9ZoiEcYEosqYy71LOKz1ybkyeti9vVTAmjv7kGaF/5tnMZA06MmcEXDucOHA==
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)(230922051799003)(64100799003)(186009)(1800799009)(451199024)(2906002)(4326008)(6512007)(53546011)(2616005)(6506007)(8676002)(8936002)(478600001)(26005)(41300700001)(66476007)(5660300002)(4744005)(6486002)(66556008)(86362001)(38100700002)(6916009)(31696002)(54906003)(66946007)(316002)(36756003)(31686004)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?TVd0Y0lmOUtyUElkSjhFUnZndnI3Ti83Z0g2bzFZOWZqNVhTK1NSVUMwTXB2?=
 =?utf-8?B?UkphSlM3dHAwZ01xakVIMG1KcEo0aUdya0l6blJza2tpSzhOZlRhOG5hQ00y?=
 =?utf-8?B?TGthWVNEQUFlZzJPRGRmNUN0QkRoY0tPeldPdTZWNU1ycjlZbWEvc29DV2Ro?=
 =?utf-8?B?b1dubU10RUZRQlVZeE8xK1RRYWNjelVZQW1IbzlEWnBWRWhoa0E5WUVIVUly?=
 =?utf-8?B?RmF3eUY1dHlJK1p1M3piSXE0R0Fqa2ZIR1Rib3ZuSy9Rc3lGZHBOcVhZOE9s?=
 =?utf-8?B?Y2NxZ3FoYzJqZjdEVUswRWk2WlAwWVRuR3JIMTdYT01Ycm1FQkhQOUFxVXFT?=
 =?utf-8?B?K2ZyUFdwZXlja1VDT2Y4SjBJVElyUlFBR0ZhYW9iMkNwMlhwZzIrQlB6bWdr?=
 =?utf-8?B?eSswbDhNL3BYKzhtUkVKeEYza2RaRHZuUXNIQjY0T0lMcjNBM0dVNDdvZTlt?=
 =?utf-8?B?bk1QSnVZMk1TVWVwYnRCTVZ6NFpvWHZKRjRJZXpsaTdzQjdmOTJKNXVjY0ZF?=
 =?utf-8?B?bUFmczNra21EZVZ0TWJrZjV5SzdTOEowamhwWko1K3M1cjFqSS8yd2k3S25S?=
 =?utf-8?B?UkdtNXN3NnQxcWN6cTFDL2x1U2VvQzRKZ2JOSDc4UlpDRHBBQldWSUgwdnpj?=
 =?utf-8?B?QnZKbFdySytCNm4wb1dtU2h2bHE0TUg2emFEUGdET0JDVUpxU3dYaG9QT3Zh?=
 =?utf-8?B?UmwyUVBoRDlGVWQxNzlBV2RkSDR3bWtSQ1hSL2pBTHgwSTAwR0MrZENLb1Y0?=
 =?utf-8?B?anNDWmhvUzVCdFVBSVNBbFdMQm0wZjEwV3VmYkRCMzV5WkdDY2dBM2N1SFBB?=
 =?utf-8?B?WVUvMHBReWtacGt0MjBqTFhsQUwxMkZQVXQ4RjluVDNLdG1UVml2MHZSNllG?=
 =?utf-8?B?T2NhVkNGQ3N0eEovdjFiR0IrbkhJSTJhRTJkUkt3bmtsM2h6cjBvS09KOGp1?=
 =?utf-8?B?bnhGZHpkN2V0Z084amlGN2JlZjVuVWRJWjQ4T1g5WWwvNGI4NzlObURMQ2Nv?=
 =?utf-8?B?clJFWnBYRWREOWE1S1ZFejVwSFdualV0am9QcjNJb3JrdklpYlhZWjA0clB0?=
 =?utf-8?B?N1F6clkwMzU3MWJUS2FuRUJ6YUoyYy9pS2FSQ0dsaC9oZ2hHdEpkeEhOUW1Z?=
 =?utf-8?B?em9ObktwZko0NzJoaHhrY3Zhdlloc2JMc2JOUW8rTnB4S1hDVUZMMFIrMGRr?=
 =?utf-8?B?QTI2Y2svTXVyWFFRakZTc3IrcUV6aDJRU1pmM0V1MXEyNWxEQVF1UkJya1lP?=
 =?utf-8?B?czdvSWZjVEVKd2lMMUR2bks3ZjJIdlFtK25PVlRpSFg0Y1BKaFdjaWZadXQ4?=
 =?utf-8?B?eGlmRlZ0ZXY2eU02UUVXZVdSdU1oU0xZSE1lbGRNRm84WnoxY29PZDdQSHdw?=
 =?utf-8?B?RGtpZ0hQUmZ3VXFpYlFLd2wwODBsaC80bElEaCtNekprN3dSYTBUUjZ4L3d6?=
 =?utf-8?B?ZVlVQkRrNmtuUWhwY24vUTBGdTRVQWNFSEM2MlA0K012bU05by9BRlZkNnVX?=
 =?utf-8?B?akVUTXJ4V3Fza3FhNG9PNU5UNTViVHp6T3lEblZuRW9laUhVemtsYTBnTmZo?=
 =?utf-8?B?M3M5ekN3dmFoeGMyM2dZbFluUlpLbEJaUmk2Qklvc0pZdGo0UDFzYzBFeGtC?=
 =?utf-8?B?NzI1aXJMU0o4OXRWN0QxNW42dkhxL0M3Y0dlZGg1dllHK1B6YkIrdFF1MkhH?=
 =?utf-8?B?NWZYSTREK0dkV2IrNEpVT0N6aHlyRXRUSm1PSDdGMXNpQ1hya2ZDMFl5dkRS?=
 =?utf-8?B?MzAwSjJGdVV0VjlOZ3Q5a3RNUnpGWjk0K3RSeTJMbGNWMkVvVkJFeE9CQ0NV?=
 =?utf-8?B?czhuR1hRcnJhR3dJWEE4OTB5NkZMQ0gzOGtsQWFKeVJLdnorMkwzQzFQRytT?=
 =?utf-8?B?SVlyQlAxcUNLRGErckVoUDFsM2R2ak5WSWFuUjRKVVNibVgvQVRQNEJ0aHhR?=
 =?utf-8?B?eHBuaUovdHJtWlBNaEdCWUNXQkEvTVE1blZzN1owcGpLV1RSWTFFaHZwdlhu?=
 =?utf-8?B?Q1h1NlgxSnlHQkZIQWhXUDYyR1RCQjQ0M3haWHBMa3hkdEpsK01GTmE0SkZu?=
 =?utf-8?B?aEl5azNEcHhnUXV1NDRtbUI4dzFyR2s3N0xUT090em84TlFkVmxSWEVZdEZU?=
 =?utf-8?Q?by7cxCaxw4b24+2Mi+I6rA12R?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: a01d3a27-f8f7-4544-e369-08dbd9522ec6
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Oct 2023 14:11:59.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: alpN7d2cmlw2O4PL/xP7xpq2A/87HvI8V+HSgBLbEDDdEDdLqdrRJ9GFrgSff6Pls1rdPH15CAtDOz1Zdx6xgA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR04MB8338

On 24.10.2023 12:26, Roger Pau Monne wrote:
> The ACPI FADT APIC_CLUSTER flag mandates that when the interrupt delivery is
> Logical mode APIC must be configured for Cluster destination model.  However in
> apic_x2apic_probe() such flag is incorrectly used to gate whether Physical mode
> can be used.
> 
> Since Xen when in x2APIC mode only uses Logical mode together with Cluster
> model completely remove checking for ACPI_FADT_APIC_CLUSTER, as Xen always
> fulfills the requirement signaled by the flag.
> 
> Fixes: eb40ae41b658 ('x86/Kconfig: add option for default x2APIC destination mode')
> Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>

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




From xen-devel-bounces@lists.xenproject.org Mon Oct 30 14:13:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 14:13:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625139.974100 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxT1d-0001AO-Ul; Mon, 30 Oct 2023 14:13:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625139.974100; Mon, 30 Oct 2023 14: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 1qxT1d-0001AH-Rv; Mon, 30 Oct 2023 14:13:53 +0000
Received: by outflank-mailman (input) for mailman id 625139;
 Mon, 30 Oct 2023 14:13: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=Hhfi=GM=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qxT1c-0001A9-CO
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 14:13:52 +0000
Received: from EUR01-DB5-obe.outbound.protection.outlook.com
 (mail-db5eur01on060d.outbound.protection.outlook.com
 [2a01:111:f400:fe02::60d])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 8cd63a36-772e-11ee-98d6-6d05b1d4d9a1;
 Mon, 30 Oct 2023 15:13:51 +0100 (CET)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DB8PR04MB6939.eurprd04.prod.outlook.com (2603:10a6:10:11d::8) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.11; Mon, 30 Oct
 2023 14:13:49 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6954.016; Mon, 30 Oct 2023
 14:13: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: 8cd63a36-772e-11ee-98d6-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=kNgzw+ID/Fh/6ndnlmqz0+y0w+epN7ZWtS6NKa9TWYkDXOJPouqeHYiLsmRogz98DyVQQ/d5u4NqPZZzR7Bfy9X4T6jRXocV6ZFSTxT7EsbBTkvjx6/+u1f2kiWBjtVJ5l6CTbQBazPm83YcViQo27pVLMk1zvB6J9bHHBOm29l6+l6QR9dq5XVNYjAJ37RDPj9hmIoiHVN8LZeBTddg9Gu+ufxR3Aty4RQGBFU8yIRx1CAZNX9bx9Yx0Xeb+w6HsKvxlXF9QhDE2pjtBqktencdBEuc4offgbipO2oHA0yeJx47vrK0tIkksKmAFSunUacSHORa5OK5xCnpkhnD0A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=ozhRjkKQPTvu5sO3J9PWmPQFmjbIELeiheWHXP7CP6c=;
 b=hWYvL7EJOJEK4fMoHy0/FJxfMA4LSCESOIJARTeNGte22FRbhcEN3IXBPQZEkPXlqaRYixL8RrFfaXi6Y+ER74Wm+xY/slWuwzA0zk+qmXufpbmwM6lh34K/SdnB0KiJP2SCVvdQSp7n9jp12DmeZN2wwNjgjX0H02XgQO7StAVx8EiyUV771cm6GNeb9x26LMEBOKGoKOKWXKBqCDpYElBAZeGUu9QeRHkhlATBj7iOZd4MTur3EYv7RczQ6erj6r79NGnWPmOzn7fMjiu8jLPuSonC5oqZxwqJVyHt1Vt/eA+X8lHimgih0JbZ6R6Q5AYJS/iY+Ua9o5+mqlPsOQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=ozhRjkKQPTvu5sO3J9PWmPQFmjbIELeiheWHXP7CP6c=;
 b=B++MjrVu9J3yIAsoGexZRvSw5UFJphmaIF40mmohfjUBl26wET7cABVIYogdRE+6saaoMtBIEQDsst+rd69bLZ/G/kUjKn/PhoRdTFiRDMOHqV5M9srJ14s2mZ5jrugT/BSqwmlXeL1vE9Xzp4nqJLbhrV4u2eibUiSMvmXvcOhWe6f4JyGxpZ2n+/tL2Z+VIO3+3HvSv9s/NDfSIr4XXW83g9zERl9nGni2CyBvSuJLS4y+RgtQQm2yLvAPOAuZXAZQP8j1ZJQ7NLzFypBaeZsO91ARF14pFIS56OeKzvWL9IsYND396IhuvT9x8boiQiSl6NjMNWYJ7xEQa3I/PQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <77a0297d-3b47-6679-94a3-1463f642aa72@suse.com>
Date: Mon, 30 Oct 2023 15:13:50 +0100
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH] x86/x2apic: remove usage of ACPI_FADT_APIC_CLUSTER
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: <20231024102630.47691-1-roger.pau@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20231024102630.47691-1-roger.pau@citrix.com>
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_|DB8PR04MB6939:EE_
X-MS-Office365-Filtering-Correlation-Id: 65b4e0b1-5b9f-41b7-6995-08dbd9526f9c
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	d2mCZx8vZNifuozRLhjrNdxhg5oewjP043fSvbrzHW1rcBAUTug+1K9QW9sefb1m4/gktx7qTPVaOlmPfFEppBljCcldDMTANAjTeKsLel95V3y6WkGXTl6KZJLv4MJ+Lg3alo28YP+TU2DG2GB9qR5FFPi5Kkoym9H5ceqb82iJFAopua6z2pCuxWXq+LqjVeMx/3futoIJupgadMM68Cj1fY2WR07+5/vgZSw/WEULO2Jg0JgOE5TS8g786IuTUq8EVVYzK2fxWBMAjYb3mhcoWK32fQi3Cb3RZxRbXNhTqUFNnt39n02UBzhafs6VcwZzxJ1xVGNij+t7YvhXNLeMclYqvYIyNLeR1X4gBtj+9zyTv57d68sT6VNg8pBEk2bxIOHnoyvp5PljnnvJ440Qs9AYF1LYyTLQWc9JT8GHi4439NhOyZCrr3Ygidt/ds4QMjogV/ByQZ9f+Fy5I6eHLR9+EWPZq/0CF7BjFw61DAkZQOISJN9lCdMiavH+VnsvVZ+11PS6DSXcqsxK5hiVp+/GuvzH738I4sEclqmKWVpE8TI/7NnTv269mokUDCzBka0XReA04SDpCUJ1c8OMKawWNxXIPsbvDELi/cSU6tByH7JVTsX287GAVupwt6sV/Nn5xcwrGt9b4NAy5A==
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)(376002)(366004)(396003)(230922051799003)(451199024)(1800799009)(186009)(64100799003)(86362001)(31686004)(316002)(6916009)(6666004)(8676002)(38100700002)(6512007)(2906002)(41300700001)(6506007)(53546011)(26005)(2616005)(5660300002)(31696002)(4326008)(36756003)(54906003)(66946007)(66476007)(478600001)(8936002)(66556008)(4744005)(6486002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?VU5iZlJ6K0tacDVrekJLZitEWFRucUhNdHVweWxqVnRNZnM1YzVHL2NFVnlS?=
 =?utf-8?B?eG5OeGUvR2xOVS8vUmF1NTJMVFZiemVVc2tpQUlzeSsxb3NnMklHbkxPYkxn?=
 =?utf-8?B?RHBtMGYzZXBEOS9TeHNaSnlOMTJNTmxGL1J3cVRmN2lNaDgvOGx4YjJUYlZh?=
 =?utf-8?B?WVpjOStMZm53SlJlRnRFcC9zMmt1SGRLT3N0bFN4Z3Bud05YeDZrU2dKYkdq?=
 =?utf-8?B?ODdraXUxWVYvT1kvMHhlVDN0WjluMXUzTWRaTGxkcWhORmg4dG82WHQ4dXZO?=
 =?utf-8?B?Nys1WnpueTk5V1hEb1E4UWx5SndETFNraThiWlJrT1V0bHBKVTNDZzFCQ3FV?=
 =?utf-8?B?ZFZwOFVzc1h5SU1HbjdUQ3NwVnVNdVlMWDVSeG1VSkk5bG1xTTNFOVE3cGl5?=
 =?utf-8?B?cXN3QkhUQmNMSDJYQlVpUVkyNUxOSEpEeHg2MXl4V1JhNzd3MFc3Q3BRZktB?=
 =?utf-8?B?R0dhckg4cmJMdkdNZmRHMzlReGkxemtmY0V3SlVwcUg4cFZsUURXVjBpWUlI?=
 =?utf-8?B?QVZOZHVxOEZ1blFWYWdLS0wzSTAxQkdiUUU4T0l1aGxQZXZNTURSV1ZUUXY2?=
 =?utf-8?B?bnRzMW1lWnJtQWtoczRJOTgyZVpWZ3ZFRzZ6dzF4bmZsazlVbHRLNzR6RktD?=
 =?utf-8?B?UUZ3Uk5EL2EwZitHNG0xK0hLR1FDVjUyaEY0SitlVkNwcXg5UUc0SzQwMm5M?=
 =?utf-8?B?dGVGdlg4SytTNzIwOFMxZkFqOUUrK2tqVVpIbnNOSW9SczZaeFcwV2N5dU00?=
 =?utf-8?B?NGFSLytLQXFMSnhYOEU3Wk5GakdLQ3B6M3VJS21raFVZRXhKS0F0bUUyL2FS?=
 =?utf-8?B?aktRNVV1WHpJTm9QSDRsL0lQVFFwNlVPcklwRlIvc01ja1FWSDk4ZWRBR2NJ?=
 =?utf-8?B?OUNkdnFIWS96ZXI3L0M1Q1Y1Nnp6SW5lUVhtTS9lazNGZVIzN3RJRnJFTHM5?=
 =?utf-8?B?Y25hS3hPODBWRUp5bGJSWDJtcFVSMHh5SGRLa1JUeEROVWtHS0xjNEROSmxZ?=
 =?utf-8?B?c1dubll1ckJxTUFYRFRLRHpKWGZRVTU0WjNTWDJuLzZvQmRhWDV3VWNVZGFO?=
 =?utf-8?B?N3ZLa3RnTzg1R1M0ZVA3aDhWQXB4cWVsNU5DV216Z3JwM1krTTh6WEZDbHN5?=
 =?utf-8?B?MWY2L3o2WWdTa1pXTStRY3llT0k4dE5pcE1tcWw3UHhjMHRkM3pEaUtPVjNW?=
 =?utf-8?B?VG9uT1NHM1NPR1R4ZlZwYWlwYkc4K1pVSjhSbE5qeXJQNHBsY2p0YVV4Z2l0?=
 =?utf-8?B?SUQrVEpWYklEQjB5OHFrMjRGTnQ1N21NQ0JDeFY5M1VkbmQyU2VqWE5taXYr?=
 =?utf-8?B?VGwvSmNVLzMwb2ZwVjA3VXdCc0VBODZmSXNoc1VOcUYxWm9YQ1RVY0ZGNFIz?=
 =?utf-8?B?QzhuQlpxYzV1YytaZDRBckY2U0VoY0Y1VjRqejRtUkJYcFJpTy9yZERscGhr?=
 =?utf-8?B?SE51THZsYTVlaW9nOTRmWEV5S3grM2hqdSt2OWlHanBDZnhFeTkzL2liK0Zz?=
 =?utf-8?B?cDN6M29TZlhWL3RiUlpEbGJlUDAxNHZhaXdWWnFobDJ3OVU2WW9TMEllU2tR?=
 =?utf-8?B?eUFSSXdrR0pwbERYdk9JaHdtK1NYUmFTbkh3eFdOMms3VXR2ckZrZDVVWG1R?=
 =?utf-8?B?ZTREQ3RCWEp1aWZKRnpEcXNHNHJGc3dpQnBNNWdjYVA3VDZtMjh4dC9zM1Jk?=
 =?utf-8?B?cFZaRUFiTXZMK1NUWW1qVjhlaFhUNWxEcXE1djZpejNnQ1BXSnVuTWJranJ6?=
 =?utf-8?B?TFExeEVvT1lrR0lqYWc2d01peDBZYThOTWlnbTdTckNERVNXeHRnMXY0WkRI?=
 =?utf-8?B?eVIxZnZ1cDV3SkVRZnZHdDA4d3NLZjE4dnlhRm1tc242eXFVY0dBeFNDTVg5?=
 =?utf-8?B?TDc2Z3VacTByc3ZvM3hqT09zVDEzTzRuRmJXbnRocHJnY0tid1JObjZWVWlp?=
 =?utf-8?B?YWE1TTM4RXZwWlVrYWtyeEd1UldYSUdWT2VucllSakpNY2dPcktxWml4YlA2?=
 =?utf-8?B?eXRNVW1HbHBENm1ZYjJhU2dDSlRkYklPdzA0cGc4bnJzbE11aHYySjlVM3ZG?=
 =?utf-8?B?WVpROG16Q0NxcEsyaDh5SUNpSlAydGtEY2pOWE03cVR6d3NhVWVEQ1FORzZs?=
 =?utf-8?Q?TchCIWOOeXPiE1DmBKqyFS4Yp?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 65b4e0b1-5b9f-41b7-6995-08dbd9526f9c
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Oct 2023 14:13:48.8071
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: SN3rc00GudSaQsjse9C/ymdnekNrrFlQ5Ax3TtHtElNR15LsrvDCbYZPCc4wf2ed9nq2a/Sr3eWxN0HKG8OSRQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB8PR04MB6939

On 24.10.2023 12:26, Roger Pau Monne wrote:
> The ACPI FADT APIC_CLUSTER flag mandates that when the interrupt delivery is
> Logical mode APIC must be configured for Cluster destination model.  However in
> apic_x2apic_probe() such flag is incorrectly used to gate whether Physical mode
> can be used.
> 
> Since Xen when in x2APIC mode only uses Logical mode together with Cluster
> model completely remove checking for ACPI_FADT_APIC_CLUSTER, as Xen always
> fulfills the requirement signaled by the flag.

Actually, one remark: The text in the 6.5 spec really only mentions xAPIC
mode, so it's not entirely clear whether the two flags actually have any
meaning for x2APIC mode.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Oct 30 14:25:30 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 14:25:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625145.974120 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxTCi-0004zN-7G; Mon, 30 Oct 2023 14:25:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625145.974120; Mon, 30 Oct 2023 14:25: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 1qxTCi-0004zG-4e; Mon, 30 Oct 2023 14:25:20 +0000
Received: by outflank-mailman (input) for mailman id 625145;
 Mon, 30 Oct 2023 14:25: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=ec4L=GM=suse.com=jgross@srs-se1.protection.inumbo.net>)
 id 1qxTCh-0004k5-64
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 14:25:19 +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 25dd81bb-7730-11ee-9b0e-b553b5be7939;
 Mon, 30 Oct 2023 15:25:17 +0100 (CET)
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 28EF721CB2;
 Mon, 30 Oct 2023 14:25: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 9E728138F8;
 Mon, 30 Oct 2023 14:25:16 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap2.suse-dmz.suse.de with ESMTPSA id 2AdUJcy8P2XEQAAAMHmgww
 (envelope-from <jgross@suse.com>); Mon, 30 Oct 2023 14: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: 25dd81bb-7730-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1698675917; 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=WQOy6pmGVsZoJQWqUvwRPY1Vmq8EiP0giPaU8rw9TWY=;
	b=UD3xyMMK5QDTRrRGkaPCZjE3QkmKPaiSnNPA5nn6CRBP3ZYocQuzXIyjlmq73f8u+6RltH
	XK3YHJT+Zrs88ia2k4I7whPdRSN7E9IbPfsn/Twk8IH+uJS7+P8+hxZrKtP6N4SLolTTco
	A+3hRY3ZHkW6eSD6eQFhX6nbhkss8as=
From: Juergen Gross <jgross@suse.com>
To: linux-kernel@vger.kernel.org,
	x86@kernel.org,
	virtualization@lists.linux-foundation.org,
	kvm@vger.kernel.org
Cc: Juergen Gross <jgross@suse.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>,
	Ajay Kaher <akaher@vmware.com>,
	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: [PATCH v4 1/5] x86/paravirt: move some functions and defines to alternative
Date: Mon, 30 Oct 2023 15:25:04 +0100
Message-Id: <20231030142508.1407-2-jgross@suse.com>
X-Mailer: git-send-email 2.35.3
In-Reply-To: <20231030142508.1407-1-jgross@suse.com>
References: <20231030142508.1407-1-jgross@suse.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

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>
---
V4:
- rename x86_nop() to nop_func() and x86_BUG() to BUG_func() (Boris
  Petkov)
---
 arch/x86/include/asm/alternative.h        | 16 ++++++++++++
 arch/x86/include/asm/paravirt.h           | 12 ---------
 arch/x86/include/asm/paravirt_types.h     |  4 +--
 arch/x86/include/asm/qspinlock_paravirt.h |  4 +--
 arch/x86/kernel/alternative.c             | 10 ++++++++
 arch/x86/kernel/kvm.c                     |  4 +--
 arch/x86/kernel/paravirt.c                | 30 +++++++----------------
 arch/x86/xen/irq.c                        |  2 +-
 8 files changed, 41 insertions(+), 41 deletions(-)

diff --git a/arch/x86/include/asm/alternative.h b/arch/x86/include/asm/alternative.h
index 9c4da699e11a..484f16dfc429 100644
--- a/arch/x86/include/asm/alternative.h
+++ b/arch/x86/include/asm/alternative.h
@@ -330,6 +330,22 @@ static inline int alternatives_text_reserved(void *start, void *end)
  */
 #define ASM_NO_INPUT_CLOBBER(clbr...) "i" (0) : clbr
 
+/* Macro for creating assembler functions avoiding any C magic. */
+#define DEFINE_ASM_FUNC(func, instr, sec)		\
+	asm (".pushsection " #sec ", \"ax\"\n"		\
+	     ".global " #func "\n\t"			\
+	     ".type " #func ", @function\n\t"		\
+	     ASM_FUNC_ALIGN "\n"			\
+	     #func ":\n\t"				\
+	     ASM_ENDBR					\
+	     instr "\n\t"				\
+	     ASM_RET					\
+	     ".size " #func ", . - " #func "\n\t"	\
+	     ".popsection")
+
+void BUG_func(void);
+void nop_func(void);
+
 #else /* __ASSEMBLY__ */
 
 #ifdef CONFIG_SMP
diff --git a/arch/x86/include/asm/paravirt.h b/arch/x86/include/asm/paravirt.h
index 6c8ff12140ae..ed5c7342f2ef 100644
--- a/arch/x86/include/asm/paravirt.h
+++ b/arch/x86/include/asm/paravirt.h
@@ -726,18 +726,6 @@ static __always_inline unsigned long arch_local_irq_save(void)
 #undef PVOP_VCALL4
 #undef PVOP_CALL4
 
-#define DEFINE_PARAVIRT_ASM(func, instr, sec)		\
-	asm (".pushsection " #sec ", \"ax\"\n"		\
-	     ".global " #func "\n\t"			\
-	     ".type " #func ", @function\n\t"		\
-	     ASM_FUNC_ALIGN "\n"			\
-	     #func ":\n\t"				\
-	     ASM_ENDBR					\
-	     instr "\n\t"				\
-	     ASM_RET					\
-	     ".size " #func ", . - " #func "\n\t"	\
-	     ".popsection")
-
 extern void default_banner(void);
 void native_pv_lock_init(void) __init;
 
diff --git a/arch/x86/include/asm/paravirt_types.h b/arch/x86/include/asm/paravirt_types.h
index 772d03487520..c3d680544da1 100644
--- a/arch/x86/include/asm/paravirt_types.h
+++ b/arch/x86/include/asm/paravirt_types.h
@@ -542,8 +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))
 
-void _paravirt_nop(void);
-void paravirt_BUG(void);
 unsigned long paravirt_ret0(void);
 #ifdef CONFIG_PARAVIRT_XXL
 u64 _paravirt_ident_64(u64);
@@ -553,7 +551,7 @@ void pv_native_irq_enable(void);
 unsigned long pv_native_read_cr2(void);
 #endif
 
-#define paravirt_nop	((void *)_paravirt_nop)
+#define paravirt_nop	((void *)nop_func)
 
 extern struct paravirt_patch_site __parainstructions[],
 	__parainstructions_end[];
diff --git a/arch/x86/include/asm/qspinlock_paravirt.h b/arch/x86/include/asm/qspinlock_paravirt.h
index 85b6e3609cb9..ef9697f20129 100644
--- a/arch/x86/include/asm/qspinlock_paravirt.h
+++ b/arch/x86/include/asm/qspinlock_paravirt.h
@@ -56,8 +56,8 @@ __PV_CALLEE_SAVE_REGS_THUNK(__pv_queued_spin_unlock_slowpath, ".spinlock.text");
 	"pop    %rdx\n\t"						\
 	FRAME_END
 
-DEFINE_PARAVIRT_ASM(__raw_callee_save___pv_queued_spin_unlock,
-		    PV_UNLOCK_ASM, .spinlock.text);
+DEFINE_ASM_FUNC(__raw_callee_save___pv_queued_spin_unlock,
+		PV_UNLOCK_ASM, .spinlock.text);
 
 #else /* CONFIG_64BIT */
 
diff --git a/arch/x86/kernel/alternative.c b/arch/x86/kernel/alternative.c
index 73be3931e4f0..ff9ad30a9484 100644
--- a/arch/x86/kernel/alternative.c
+++ b/arch/x86/kernel/alternative.c
@@ -385,6 +385,16 @@ apply_relocation(u8 *buf, size_t len, u8 *dest, u8 *src, size_t src_len)
 	}
 }
 
+/* Low-level backend functions usable from alternative code replacements. */
+DEFINE_ASM_FUNC(nop_func, "", .entry.text);
+EXPORT_SYMBOL_GPL(nop_func);
+
+noinstr void BUG_func(void)
+{
+	BUG();
+}
+EXPORT_SYMBOL_GPL(BUG_func);
+
 /*
  * Replace instructions with better alternatives for this CPU type. This runs
  * before SMP is initialized to avoid SMP problems with self modifying code.
diff --git a/arch/x86/kernel/kvm.c b/arch/x86/kernel/kvm.c
index b8ab9ee5896c..4ca59dccc15a 100644
--- a/arch/x86/kernel/kvm.c
+++ b/arch/x86/kernel/kvm.c
@@ -803,8 +803,8 @@ extern bool __raw_callee_save___kvm_vcpu_is_preempted(long);
  "cmpb   $0, " __stringify(KVM_STEAL_TIME_preempted) "+steal_time(%rax)\n\t" \
  "setne  %al\n\t"
 
-DEFINE_PARAVIRT_ASM(__raw_callee_save___kvm_vcpu_is_preempted,
-		    PV_VCPU_PREEMPTED_ASM, .text);
+DEFINE_ASM_FUNC(__raw_callee_save___kvm_vcpu_is_preempted,
+		PV_VCPU_PREEMPTED_ASM, .text);
 #endif
 
 static void __init kvm_guest_init(void)
diff --git a/arch/x86/kernel/paravirt.c b/arch/x86/kernel/paravirt.c
index 97f1436c1a20..acc5b1004f0f 100644
--- a/arch/x86/kernel/paravirt.c
+++ b/arch/x86/kernel/paravirt.c
@@ -34,14 +34,8 @@
 #include <asm/io_bitmap.h>
 #include <asm/gsseg.h>
 
-/*
- * nop stub, which must not clobber anything *including the stack* to
- * avoid confusing the entry prologues.
- */
-DEFINE_PARAVIRT_ASM(_paravirt_nop, "", .entry.text);
-
 /* stub always returning 0. */
-DEFINE_PARAVIRT_ASM(paravirt_ret0, "xor %eax,%eax", .entry.text);
+DEFINE_ASM_FUNC(paravirt_ret0, "xor %eax,%eax", .entry.text);
 
 void __init default_banner(void)
 {
@@ -49,12 +43,6 @@ void __init default_banner(void)
 	       pv_info.name);
 }
 
-/* Undefined instruction for dealing with missing ops pointers. */
-noinstr void paravirt_BUG(void)
-{
-	BUG();
-}
-
 static unsigned paravirt_patch_call(void *insn_buff, const void *target,
 				    unsigned long addr, unsigned len)
 {
@@ -64,11 +52,11 @@ static unsigned paravirt_patch_call(void *insn_buff, const void *target,
 }
 
 #ifdef CONFIG_PARAVIRT_XXL
-DEFINE_PARAVIRT_ASM(_paravirt_ident_64, "mov %rdi, %rax", .text);
-DEFINE_PARAVIRT_ASM(pv_native_save_fl, "pushf; pop %rax", .noinstr.text);
-DEFINE_PARAVIRT_ASM(pv_native_irq_disable, "cli", .noinstr.text);
-DEFINE_PARAVIRT_ASM(pv_native_irq_enable, "sti", .noinstr.text);
-DEFINE_PARAVIRT_ASM(pv_native_read_cr2, "mov %cr2, %rax", .noinstr.text);
+DEFINE_ASM_FUNC(_paravirt_ident_64, "mov %rdi, %rax", .text);
+DEFINE_ASM_FUNC(pv_native_save_fl, "pushf; pop %rax", .noinstr.text);
+DEFINE_ASM_FUNC(pv_native_irq_disable, "cli", .noinstr.text);
+DEFINE_ASM_FUNC(pv_native_irq_enable, "sti", .noinstr.text);
+DEFINE_ASM_FUNC(pv_native_read_cr2, "mov %cr2, %rax", .noinstr.text);
 #endif
 
 DEFINE_STATIC_KEY_TRUE(virt_spin_lock_key);
@@ -96,9 +84,9 @@ unsigned int paravirt_patch(u8 type, void *insn_buff, unsigned long addr,
 	unsigned ret;
 
 	if (opfunc == NULL)
-		/* If there's no function, patch it with paravirt_BUG() */
-		ret = paravirt_patch_call(insn_buff, paravirt_BUG, addr, len);
-	else if (opfunc == _paravirt_nop)
+		/* If there's no function, patch it with BUG_func() */
+		ret = paravirt_patch_call(insn_buff, BUG_func, addr, len);
+	else if (opfunc == nop_func)
 		ret = 0;
 	else
 		/* Otherwise call the function. */
diff --git a/arch/x86/xen/irq.c b/arch/x86/xen/irq.c
index 6092fea7d651..39982f955cfe 100644
--- a/arch/x86/xen/irq.c
+++ b/arch/x86/xen/irq.c
@@ -45,7 +45,7 @@ static const typeof(pv_ops) xen_irq_ops __initconst = {
 		/* Initial interrupt flag handling only called while interrupts off. */
 		.save_fl = __PV_IS_CALLEE_SAVE(paravirt_ret0),
 		.irq_disable = __PV_IS_CALLEE_SAVE(paravirt_nop),
-		.irq_enable = __PV_IS_CALLEE_SAVE(paravirt_BUG),
+		.irq_enable = __PV_IS_CALLEE_SAVE(BUG_func),
 
 		.safe_halt = xen_safe_halt,
 		.halt = xen_halt,
-- 
2.35.3



From xen-devel-bounces@lists.xenproject.org Mon Oct 30 14:25:30 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 14:25:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625144.974109 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxTCf-0004kI-T4; Mon, 30 Oct 2023 14:25:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625144.974109; Mon, 30 Oct 2023 14:25: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 1qxTCf-0004kB-QX; Mon, 30 Oct 2023 14:25:17 +0000
Received: by outflank-mailman (input) for mailman id 625144;
 Mon, 30 Oct 2023 14:25: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=ec4L=GM=suse.com=jgross@srs-se1.protection.inumbo.net>)
 id 1qxTCe-0004k5-4J
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 14:25:16 +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 229487ea-7730-11ee-9b0e-b553b5be7939;
 Mon, 30 Oct 2023 15:25:11 +0100 (CET)
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 3DA0021CAD;
 Mon, 30 Oct 2023 14:25: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 BB99E138F8;
 Mon, 30 Oct 2023 14:25:10 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap2.suse-dmz.suse.de with ESMTPSA id S2xyLMa8P2W0QAAAMHmgww
 (envelope-from <jgross@suse.com>); Mon, 30 Oct 2023 14:25: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: 229487ea-7730-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1698675911; 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=y2ADXZuRUSMr2od9G+oNY1AaP5CziwipA6lK0SssnIw=;
	b=h4OOWOe06DQ9hnKJPsEwywmZI2lFAj/geZAZMPADqRPLqQggbHPr0WJDCOBES0ID1ErhY/
	ei7JimsZMOQJkqo38O3ifbz/+A0vBIOqslQrabGE9kxAmHBtet/L6RnMg2aWqskon4wXWT
	OaKHVj4gP5to5B2P53gNeadd+lriP70=
From: Juergen Gross <jgross@suse.com>
To: linux-kernel@vger.kernel.org,
	x86@kernel.org,
	virtualization@lists.linux-foundation.org,
	kvm@vger.kernel.org
Cc: Juergen Gross <jgross@suse.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>,
	Ajay Kaher <akaher@vmware.com>,
	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: [PATCH v4 0/5] x86/paravirt: Get rid of paravirt patching
Date: Mon, 30 Oct 2023 15:25:03 +0100
Message-Id: <20231030142508.1407-1-jgross@suse.com>
X-Mailer: git-send-email 2.35.3
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

This is a small series getting rid of paravirt patching by switching
completely to alternative patching for the same functionality.

The basic idea is to add the capability to switch from indirect to
direct calls via a special alternative patching option.

This removes _some_ of the paravirt macro maze, but most of it needs
to stay due to the need of hiding the call instructions from the
compiler in order to avoid needless register save/restore.

What is going away is the nasty stacking of alternative and paravirt
patching and (of course) the special .parainstructions linker section.

I have tested the series on bare metal and as Xen PV domain to still
work.

Note that objtool might need some changes to cope with the new
indirect call patching mechanism. Additionally some paravirt handling
can probably be removed from it.

Changes in V4:
- addressed Boris' comments in patch 1
- fixed bugs found by kernel test robot (patch 2)

Changes in V3:
- split v2 patch 3 into 2 patches as requested by Peter and Ingo

Changes in V2:
- split last patch into 2
- rebase of patch 2 as suggested by Peter
- addressed Peter's comments for patch 3

Juergen Gross (5):
  x86/paravirt: move some functions and defines to alternative
  x86/alternative: add indirect call patching
  x86/paravirt: introduce ALT_NOT_XEN
  x86/paravirt: switch mixed paravirt/alternative calls to alternative_2
  x86/paravirt: remove no longer needed paravirt patching code

 arch/x86/include/asm/alternative.h        |  30 +++++-
 arch/x86/include/asm/paravirt.h           |  79 ++++----------
 arch/x86/include/asm/paravirt_types.h     |  73 +++----------
 arch/x86/include/asm/qspinlock_paravirt.h |   4 +-
 arch/x86/include/asm/text-patching.h      |  12 ---
 arch/x86/kernel/alternative.c             | 121 ++++++++++------------
 arch/x86/kernel/callthunks.c              |  17 ++-
 arch/x86/kernel/kvm.c                     |   4 +-
 arch/x86/kernel/module.c                  |  20 +---
 arch/x86/kernel/paravirt.c                |  54 ++--------
 arch/x86/kernel/vmlinux.lds.S             |  13 ---
 arch/x86/tools/relocs.c                   |   2 +-
 arch/x86/xen/irq.c                        |   2 +-
 13 files changed, 146 insertions(+), 285 deletions(-)

-- 
2.35.3



From xen-devel-bounces@lists.xenproject.org Mon Oct 30 14:27:39 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 14:27:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625151.974130 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxTEv-0005uM-KA; Mon, 30 Oct 2023 14:27:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625151.974130; Mon, 30 Oct 2023 14:27: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 1qxTEv-0005uF-Ge; Mon, 30 Oct 2023 14:27:37 +0000
Received: by outflank-mailman (input) for mailman id 625151;
 Mon, 30 Oct 2023 14:27: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=ec4L=GM=suse.com=jgross@srs-se1.protection.inumbo.net>)
 id 1qxTEu-0005u0-D8
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 14:27:36 +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 7778af3a-7730-11ee-9b0e-b553b5be7939;
 Mon, 30 Oct 2023 15:27:34 +0100 (CET)
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 1AB471FF07;
 Mon, 30 Oct 2023 14:27:34 +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 DBD17138F8;
 Mon, 30 Oct 2023 14:27:33 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap2.suse-dmz.suse.de with ESMTPSA id 4y9JNFW9P2VkQgAAMHmgww
 (envelope-from <jgross@suse.com>); Mon, 30 Oct 2023 14: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: 7778af3a-7730-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1698676054; 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=+x62jf5ZiMaBeXCGaTeI3fAeetzVsKKIlwH9XbYi/Wk=;
	b=DVFbhplYczx0rCQjxOvC9F63FeFl9OHZE7xQlGzpqBW0G7Msl6Bylf1AyraSQmEocHrYIh
	ppCCeVfnXGjDCYZ3hTKI397EhbDm222zDQWg+DtpbWN/rvvhX/wM4T6jNQ55qBgpg7+XIm
	V+0arNif/gGSK5kvLKV7DzQ+XySO2QE=
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,
	David Woodhouse <dwmw@amazon.co.uk>
Subject: [PATCH] xen/events: avoid using info_for_irq() in xen_send_IPI_one()
Date: Mon, 30 Oct 2023 15:27:32 +0100
Message-Id: <20231030142732.1702-1-jgross@suse.com>
X-Mailer: git-send-email 2.35.3
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

xen_send_IPI_one() is being used by cpuhp_report_idle_dead() after
it calls rcu_report_dead(), meaning that any RCU usage by
xen_send_IPI_one() is a bad idea.

Unfortunately xen_send_IPI_one() is using notify_remote_via_irq()
today, which is using irq_get_chip_data() via info_for_irq(). And
irq_get_chip_data() in turn is using a maple-tree lookup requiring
RCU.

Avoid this problem by caching the ipi event channels in another
percpu variable, allowing the use notify_remote_via_evtchn() in
xen_send_IPI_one().

Fixes: 721255b9826b ("genirq: Use a maple tree for interrupt descriptor management")
Reported-by: David Woodhouse <dwmw@amazon.co.uk>
Signed-off-by: Juergen Gross <jgross@suse.com>
Tested-by: David Woodhouse <dwmw@amazon.co.uk>
---
 drivers/xen/events/events_base.c | 12 ++++++++----
 1 file changed, 8 insertions(+), 4 deletions(-)

diff --git a/drivers/xen/events/events_base.c b/drivers/xen/events/events_base.c
index 1b2136fe0fa5..2cf0c2b69386 100644
--- a/drivers/xen/events/events_base.c
+++ b/drivers/xen/events/events_base.c
@@ -164,6 +164,8 @@ static DEFINE_PER_CPU(int [NR_VIRQS], virq_to_irq) = {[0 ... NR_VIRQS-1] = -1};
 
 /* IRQ <-> IPI mapping */
 static DEFINE_PER_CPU(int [XEN_NR_IPIS], ipi_to_irq) = {[0 ... XEN_NR_IPIS-1] = -1};
+/* Cache for IPI event channels - needed for hot cpu unplug (avoid RCU usage). */
+static DEFINE_PER_CPU(evtchn_port_t [XEN_NR_IPIS], ipi_to_evtchn) = {[0 ... XEN_NR_IPIS-1] = 0};
 
 /* Event channel distribution data */
 static atomic_t channels_on_cpu[NR_CPUS];
@@ -366,6 +368,7 @@ static int xen_irq_info_ipi_setup(unsigned cpu,
 	info->u.ipi = ipi;
 
 	per_cpu(ipi_to_irq, cpu)[ipi] = irq;
+	per_cpu(ipi_to_evtchn, cpu)[ipi] = evtchn;
 
 	return xen_irq_info_common_setup(info, irq, IRQT_IPI, evtchn, 0);
 }
@@ -981,6 +984,7 @@ static void __unbind_from_irq(unsigned int irq)
 			break;
 		case IRQT_IPI:
 			per_cpu(ipi_to_irq, cpu)[ipi_from_irq(irq)] = -1;
+			per_cpu(ipi_to_evtchn, cpu)[ipi_from_irq(irq)] = 0;
 			break;
 		case IRQT_EVTCHN:
 			dev = info->u.interdomain;
@@ -1631,7 +1635,7 @@ EXPORT_SYMBOL_GPL(evtchn_put);
 
 void xen_send_IPI_one(unsigned int cpu, enum ipi_vector vector)
 {
-	int irq;
+	evtchn_port_t evtchn;
 
 #ifdef CONFIG_X86
 	if (unlikely(vector == XEN_NMI_VECTOR)) {
@@ -1642,9 +1646,9 @@ void xen_send_IPI_one(unsigned int cpu, enum ipi_vector vector)
 		return;
 	}
 #endif
-	irq = per_cpu(ipi_to_irq, cpu)[vector];
-	BUG_ON(irq < 0);
-	notify_remote_via_irq(irq);
+	evtchn = per_cpu(ipi_to_evtchn, cpu)[vector];
+	BUG_ON(evtchn == 0);
+	notify_remote_via_evtchn(evtchn);
 }
 
 struct evtchn_loop_ctrl {
-- 
2.35.3



From xen-devel-bounces@lists.xenproject.org Mon Oct 30 14:33:05 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 14:33:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625157.974139 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxTKA-0007OW-63; Mon, 30 Oct 2023 14:33:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625157.974139; Mon, 30 Oct 2023 14:33: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 1qxTKA-0007OP-3H; Mon, 30 Oct 2023 14:33:02 +0000
Received: by outflank-mailman (input) for mailman id 625157;
 Mon, 30 Oct 2023 14:33: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=Hhfi=GM=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qxTK8-0007OJ-6P
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 14:33:00 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur04on0630.outbound.protection.outlook.com
 [2a01:111:f400:fe0e::630])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 384c0c32-7731-11ee-9b0e-b553b5be7939;
 Mon, 30 Oct 2023 15:32:57 +0100 (CET)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS8PR04MB8040.eurprd04.prod.outlook.com (2603:10a6:20b:2a9::22)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.11; Mon, 30 Oct
 2023 14:32:55 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6954.016; Mon, 30 Oct 2023
 14:32: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: 384c0c32-7731-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=a58/eEhrlMxragJZtAmVZ7g3Auf2CkG8KUsubo2w4sjpzREtVX7jVpd84Fcrd0hu73erY352Lg1Xp9b0qdRXFSzbZjZkPLPs2XX7mm31kihgOjbvFkTAefO6OCuh07ajImBov0zcbIymulyjdOdcZfSH1XI3My0SWINihdKEPYH0dh3LEnfIN95/d8TDj99HA8WtxZMrDsn1MOxe8zirnRNm5U9DL6ou6O2tgBTvmZzvc+9kikIh/xVA+yT/cKcs1j80/FTvvONSM3xixJInytVf1oG4GR0VDVnMIUmSAjqSLzLRJRDdty9NTjy4eWt1wHBPnua0X9mBEPXw4FzF7w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=zMvcdRPVIlX+D3a1VIhD0jPAKdHF3pYb3ClU7TEg/88=;
 b=Di2NyoAlMpODNhKnrYMOfcsjnsnwL4u950Vs1OezO98nI3bqKYramVpVZ0RLMd7JPHjiXeyUKWbnmdhezqzNw7lp+/NkU/P4dSD0+lmyPRsbODgPswpSzM7MDAIYhGheMYFs7qD8kSEwz0mu6BcmI+ECAJ0F74uVcIW3sD+IT77Ycf5WeB/mU88HaMvfzMqiNIoQVNBIGkF55uOi9voZyIkFtzgGsF9Qg74ou9AHrcSOIJWtymY/qtMGDlDRQmg/RvnKmqCOPrF6ec0cnx4k9GPqxVGdTyKfRDKu9cHbN+59XomX3VVQIG5mOUz0EccjvuA36x+nqgIuiIh6xeUoXA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=zMvcdRPVIlX+D3a1VIhD0jPAKdHF3pYb3ClU7TEg/88=;
 b=gkn0GcX/PnqjDGlwAWCLgNWnvHDiqal2t6XB9893oSDXVfXn+XRvdMKOOw+kLsIJ2ukp/+CvTRnoP6rNpyi062nK4dIybchlPOa5Rh07d9mvzKF89xsDRa8n1+pIM38pxLElJ8fKYRjGfrZ/JiHwb7Z5pLr/6FR2Ti8ieRRLsFCBpAkPpFoerjeGsiF6F0SEEOybwlO4OyqkiziEP8ets3slu/FtI0CZD2H/yoYCoTK5n/zGOEfAFpeMIJyjlIsqx9FnbhZ8R9h1ryoXdySQYu6wYvsH4wmN2aii69GYfRk3kTsOnAIvloquN6QQx32BbWpzgrkOAt2ekJCSERg+eA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <6734e477-0aa5-c74c-4f64-02ca0415ae9e@suse.com>
Date: Mon, 30 Oct 2023 15:32:56 +0100
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH] x86/x2apic: introduce a mixed physical/cluster mode
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: <20231024135150.49232-1-roger.pau@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20231024135150.49232-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR2P281CA0107.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:9c::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_|AS8PR04MB8040:EE_
X-MS-Office365-Filtering-Correlation-Id: 00fad240-9f7f-4bcd-d86a-08dbd9551ae5
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	niNvIqELogBuB3FRMvUFcJXlPJBlZRiCq4BbMkfodLhFiI3R1k8v1vTObzKv8Y/NeHn5PcIvX40atE1PhMGZ5Y31NHXbqARqEwMGIn89Snq+M6R3l0Q3Aqzmz26CrMFRRiqsOIZb/y5RYUhBnxI0mE0vLq9zlH2zOpLaKdUVXVsn/RALJBupmw7/8b487suFrgElknd+PR/PbfEr4ALD3aQdNmFgPYGkkdEE1l7xr5AJ3QjuQQBTw5jld8c4BCUcLRODxPC0MUw6ZUAJLbJFjo+c49Vrplp0npDxltBgz+6mPN+Q06SwQS0g3ku8xwMv/3NFsQi6FiFABYZAPgBB5BWOUDIYUelSQInKw5J+H/RDgtwiOpZinWzmoRFVxFPvqY6ijf2LD1k/bY7APUA2V8guOdGK8dpQFkbK9EQqaOjIEGMJYz+Zjh5bQw3C3VASaKgLTF/TqSZ2C1lHrK/LNvZ90FhlBZJ36kSGvU76Wcxxv2q/siGyx3d0uaTYkPJBvLx2Li1yjmW8zZvQlcxo7dw4694ub66zE1MUAjNF0TR3hJduz27WVWUJjIrFqtx2WRgYRhqKHaoWjuTISZmg5D1L02dhoepMszwRTNlk0AFpjki8AD8jeIZVzHWEPUv4p6rvW9Ow0oCCkK8Cul6D1geMqbl2vehFwEYAD6A2MR272EYxw+8K+DvN/9+TcmIu
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)(230273577357003)(230173577357003)(230922051799003)(186009)(1800799009)(64100799003)(451199024)(2906002)(54906003)(66476007)(66556008)(66946007)(41300700001)(38100700002)(53546011)(31696002)(5660300002)(6486002)(86362001)(36756003)(478600001)(6506007)(26005)(83380400001)(6916009)(2616005)(316002)(6512007)(8936002)(31686004)(8676002)(4326008)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?dzJXeTZMSTY2Sk1QVk1xQzladE00ekZ1YlBsMmNZSnN2RWw1Q1VySnZMRHZu?=
 =?utf-8?B?NWVuaHpIcGwyZ2dHQ3V3Q0RsbXREbWRhYlhiaVU0UnJEWndtWGYrMUcwMVMz?=
 =?utf-8?B?dUxWOGRIL0x6K2xkZFNZc3VjVFYyVTljdVJ1c0hmT2sweDZIcWVabjlUWnV0?=
 =?utf-8?B?ZWZkbldOSjFVU0JwRHI1WVJSb3pHOVdGMks0UnlsMmovQURwc29RK01hVWtx?=
 =?utf-8?B?SjhuWFAvbThwRUd6U1hrUTEwWFVnY0FXZjJTY2h4WDdueUNxVDlHOWRiU3BV?=
 =?utf-8?B?SzB3S2NsdmRFWE45S2tYcWh4R1RHYWNYZnZFSVVKTmNFa1VoUjQrYXVxTy9h?=
 =?utf-8?B?RW9mTWErVEpVQXl1MUtqSHhXcDVEM2tvQlBWWi9CVi83M0REcDM1ajNxczkr?=
 =?utf-8?B?a2dsUWt3MlJsYW03NERlUG4xRGhvdkxaVzZaMitFcS9ZKytSRE5MaWFjUVlU?=
 =?utf-8?B?eTdGajNKSVNJNldqcys4MTB1VTcxNWR6TXFaczR1SHRhMC9pZyt2YVFDeWF6?=
 =?utf-8?B?ZTg0cGVKL01OcGtKMjh1UEdkbTA0U09pTFhQaEdGcFUyakhwWk45T2VxZE13?=
 =?utf-8?B?YU1UMUZTQWZ2V0dMNUlNRUE4MENlWmtaMzVFUTR3aUNlZEVaOVRua1IzTjNi?=
 =?utf-8?B?S2pVMG9nUVA3L0JHWUFYOG5qQTQxanRiZG5EaUNqc3Y3VmRyWGJybm16T0k5?=
 =?utf-8?B?N1NDbVhXRW1aNUFjRU5sMFhGQnRWVXBaa3hsS0JmREZiL2pJM0RLU2hRdUpD?=
 =?utf-8?B?Qy9yb2pPckE0ejgydkEvazdpWDN4Wmp3b0ZlSUZkZlU1cjFvczlYZ1VrMzRG?=
 =?utf-8?B?bDdSbXhhVlJEYnY1a0huVG5vNUlueWRMS2NpUnN3U3hTUnMrWXBzUFV4M0lR?=
 =?utf-8?B?bnU0UmpPdW9VVGZ1QlJnNmtFZzFncDVjTUFLOHFaeTJpM3lqdHRvSU1tT2I1?=
 =?utf-8?B?QjFyTXJ6YlE4azdhMm9aYktGellib3J2bGhJR0tpa051dCsxZUhtQ29TQlp3?=
 =?utf-8?B?TTVJTWNIcWFOZTY5NkpEVEl2MzFDZnpONC9hS3BtaEtFOGhwNWVhR0VkSlZq?=
 =?utf-8?B?SEsvMGlnL0Y3ODFqSHR0RmpnQ0hkc0pXelh0dmpHRGdNNExBS255d250NUh6?=
 =?utf-8?B?MS9jRjlDYmhqcXJMMnkyQzY4S1pidUk0c1NiRUhjdW1pb0RiTUJuT0pkdHVL?=
 =?utf-8?B?NjZ5ZFlJTjdRRzFJc3FaTjZOR1IzeUpxeHVNb056WDB1NWFKSU1oemFIL1FJ?=
 =?utf-8?B?MXdnRlpTanhKTEh0bWVxd0RYSGw0dGVKU3RsNlBVeFpCUXB2WkJJT0xBRGxX?=
 =?utf-8?B?MG01amQ2Z3JsYVNqNlhhWEJhMnZIUEZUVU9JTEs2ckJNeTlFZ3prd0RGeGhS?=
 =?utf-8?B?TVc1V1VCUytwRlpMQ2lMTDQ0T2V0byt2RlRUemR4aTg0UU85YkxoczNycmt3?=
 =?utf-8?B?bWR4SWRjdzNGQTJjVllIdDlqU1B2blR2Q1dLQnVxQjgzc3UxbGJudmd1UTRm?=
 =?utf-8?B?OVl5Q0psSHBkVzgvM3FsUHhacjZpRU1BaUUzdWdzUWRNM05MQjBHODNUZzFG?=
 =?utf-8?B?d2o4cVo3T1VPb2c0M2FlRWVtU3RJUVNIc0pTUjIrVEFIRGFxYXZDMjFiQWJL?=
 =?utf-8?B?cUg0YUxVc0h6aUduMWxYbTlweG9ONXV0V013VDdSSHNERG54dnJXYWJxanVX?=
 =?utf-8?B?UUpRRTZpcDFIRXIvLzJZL3g2QjFsNU9kR0tZRG9LMllOY3A4cDdBSmFsQlZk?=
 =?utf-8?B?NDFEWTVXQVlaTjZBVjVtZGhpRUs2cE1BeTdxc3Vic29vWUtWMEQxMmZvL25X?=
 =?utf-8?B?cThJVkVqYmVyL2d0OFY4OThvNlJVdmhaaGQ1dHh3OWh5blF0ajQvVG95NkRn?=
 =?utf-8?B?ZkZwcnc5Y0Jrd1dKcno0K3RreUVJY3hzY0FtZFJobHpTQ1A2ZDF3RlQxMDhC?=
 =?utf-8?B?Zlh6UHlFOWFzNmZDemRlU0ZYYmRxN0QzV25lZjZiYk4yWC9CdFcyakRoTGNS?=
 =?utf-8?B?Sk1LRzdnZ1crT3g2Z09PdzZOOEY1NVRmVWs4a2RybWs3cVU1aWhZVzU3ZCtp?=
 =?utf-8?B?bFFkODJIQld0TGpoMTZSUVJDZFp4TXlOeWo2cXNsU3o4MDRVaUtFTUw1OVpa?=
 =?utf-8?Q?2uEVBnvu1vq/+T+31DS+61PYo?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 00fad240-9f7f-4bcd-d86a-08dbd9551ae5
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Oct 2023 14:32:55.1173
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: PpZoLeIdW1BKjt4MctHw/Voav8Ya8SNdviEAiXEo0Zw4UYKnFB7aX47DOxIku3Bw2dXAshHV5YjlxOEXRrt8Xw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB8040

On 24.10.2023 15:51, Roger Pau Monne wrote:
> The current implementation of x2APIC requires to either use Cluster Logical or
> Physical mode for all interrupts.  However the selection of Physical vs Logical
> is not done at APIC setup, an APIC can be addressed both in Physical or Logical
> destination modes concurrently.
> 
> Introduce a new x2APIC mode called mixed, which uses Logical Cluster mode for
> IPIs, and Physical mode for external interrupts, thus attempting to use the
> best method for each interrupt type.
> 
> Using Physical mode for external interrupts allows more vectors to be used, and
> interrupt balancing to be more accurate.
> 
> Using Logical Cluster mode for IPIs allows less accesses to the ICR register
> when sending those, as multiple CPUs can be targeted with a single ICR register
> write.
> 
> A simple test calling flush_tlb_all() 10000 times in a tight loop on a 96 CPU
> box gives the following average figures:
> 
> Physical mode: 26617931ns
> Mixed mode:    23865337ns
> 
> So ~10% improvement versus plain Physical mode.

Nice.

>  Note that Xen uses Cluster
> mode by default, and hence is already using the fastest way for IPI delivery at
> the cost of reducing the amount of vectors available system-wide.
> 
> Make the newly introduced mode the default one.
> 
> Suggested-by: Andrew Cooper <andrew.cooper3@citrix.com>
> Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
> ---
> Do we want to keep a full Logical Cluster mode available?  I don't see a reason
> to target external interrupts in Logical Cluster mode, but maybe there's
> something I'm missing.
> 
> It's not clear to me whether the ACPI FADT flags are meant to apply only to
> external interrupt delivery mode, or also to IPI delivery.  If
> ACPI_FADT_APIC_PHYSICAL is only meant to apply to external interrupts and not
> IPIs then we could possibly get rid of physical mode IPI delivery.
> 
> Still need to put this under XenServer extensive testing, but wanted to get
> some feedback before in case approach greatly changes.

Looks quite okay, just a couple of minor remarks:

> --- a/docs/misc/xen-command-line.pandoc
> +++ b/docs/misc/xen-command-line.pandoc
> @@ -2802,6 +2802,14 @@ the watchdog.
>  
>  Permit use of x2apic setup for SMP environments.
>  
> +### x2apic-mode (x86)
> +> `= physical | cluster | mixed`
> +
> +> Default: `physical` if **FADT** mandates physical mode, `mixed` otherwise.
> +
> +In the case that x2apic is in use, this option switches between modes to
> +address APICs in the system as interrupt destinations.
> +
>  ### x2apic_phys (x86)
>  > `= <boolean>`
>  
> @@ -2812,6 +2820,9 @@ In the case that x2apic is in use, this option switches between physical and
>  clustered mode.  The default, given no hint from the **FADT**, is cluster
>  mode.
>  
> +**WARNING: `x2apic_phys` is deprecated and superseded by `x2apic-mode`.
> +The later takes precedence if both are set.**

s/later/latter/ ?

This may further want a CHANGELOG.md entry.

> --- a/xen/arch/x86/Kconfig
> +++ b/xen/arch/x86/Kconfig
> @@ -228,11 +228,18 @@ config XEN_ALIGN_2M
>  
>  endchoice
>  
> -config X2APIC_PHYSICAL
> -	bool "x2APIC Physical Destination mode"
> -	help
> -	  Use x2APIC Physical Destination mode by default when available.
> +choice
> +	prompt "x2APIC Destination mode"
> +	default X2APIC_MIXED
> +	---help---

No new ---help--- please (also below); it ought to be just help going forward.

> +	  Select APIC addressing when x2APIC is enabled.
>  
> +	  The default mode is mixed which should provide the best aspects
> +	  of both physical and cluster modes.
> +
> +config X2APIC_PHYSICAL
> +       tristate "Physical Destination mode"
> +	---help---

Something's odd with indentation here. But first of all - why tristate? We
don't have modules in Xen.

> --- a/xen/arch/x86/genapic/x2apic.c
> +++ b/xen/arch/x86/genapic/x2apic.c
> @@ -180,6 +180,25 @@ static const struct genapic __initconstrel apic_x2apic_cluster = {
>      .send_IPI_self = send_IPI_self_x2apic
>  };
>  
> +/*
> + * Mixed x2APIC mode: use physical for external (device) interrupts, and
> + * cluster for inter processor interrupt.  Such mode has the benefits of not
> + * sharing the vector space with all CPUs on the cluster, while still allows
> + * IPIs to be more efficiently delivered by not having to perform an ICR
> + * write for each target CPU.
> + */
> +static const struct genapic __initconstrel apic_x2apic_mixed = {
> +    APIC_INIT("x2apic_mixed", NULL),
> +    /* NB: int_{delivery,dest}_mode are only used by non-IPI callers. */
> +    .int_delivery_mode = dest_Fixed,
> +    .int_dest_mode = 0 /* physical delivery */,
> +    .init_apic_ldr = init_apic_ldr_x2apic_cluster,
> +    .vector_allocation_cpumask = vector_allocation_cpumask_phys,
> +    .cpu_mask_to_apicid = cpu_mask_to_apicid_phys,

You have a non-IPI-only comment further up, but that - if in fact 
applicable here - would need to extend to these two hook functions as
well.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Oct 30 14:33:30 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 14:33:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625159.974150 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxTKc-0007uC-HP; Mon, 30 Oct 2023 14:33:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625159.974150; Mon, 30 Oct 2023 14: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 1qxTKc-0007u5-Eo; Mon, 30 Oct 2023 14:33:30 +0000
Received: by outflank-mailman (input) for mailman id 625159;
 Mon, 30 Oct 2023 14:33: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 1qxTKa-0007t5-GW; Mon, 30 Oct 2023 14:33: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 1qxTKa-00036h-CO; Mon, 30 Oct 2023 14:33: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 1qxTKZ-0006m3-WE; Mon, 30 Oct 2023 14:33:28 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qxTKZ-0002FW-Vl; Mon, 30 Oct 2023 14:33: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=B0SmYC8VodLHDthOE2cCN8q54PDIX5eiCSkKCiIKdss=; b=pOTM/y6UES1ucvunrU0R9RWcyI
	5xA+7LrAEZ1mi8E86AiHPt6o7ZqQdtZx4lps6YCKD6SATz1/X1Am1Ic5O1Eh707phwaqe0Ji4PmwK
	3gg94GrXn6/Re1x79PqjnX+CWCgNCoPsRzmjrtni7NxMIvcYGCRyccuSerY/iPVpXRXE=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183619-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 183619: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=a671a14e63fdaa9490e5c61cf11346416f1d1463
X-Osstest-Versions-That:
    ovmf=4f3ee7fbafc8e83c20f273f4db6c24fe240f6a94
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 30 Oct 2023 14:33:27 +0000

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

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 a671a14e63fdaa9490e5c61cf11346416f1d1463
baseline version:
 ovmf                 4f3ee7fbafc8e83c20f273f4db6c24fe240f6a94

Last test of basis   183582  2023-10-28 19:11:00 Z    1 days
Testing same since   183619  2023-10-30 12:41:05 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  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
   4f3ee7fbaf..a671a14e63  a671a14e63fdaa9490e5c61cf11346416f1d1463 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Mon Oct 30 14:51:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 14:51:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625168.974160 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxTbc-0004fk-08; Mon, 30 Oct 2023 14:51:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625168.974160; Mon, 30 Oct 2023 14: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 1qxTbb-0004fd-ST; Mon, 30 Oct 2023 14:51:03 +0000
Received: by outflank-mailman (input) for mailman id 625168;
 Mon, 30 Oct 2023 14:51: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=ihRl=GM=m5p.com=ehem@srs-se1.protection.inumbo.net>)
 id 1qxTba-0004fX-BJ
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 14:51:02 +0000
Received: from mailhost.m5p.com (mailhost.m5p.com [74.104.188.4])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id bd703c2c-7733-11ee-98d6-6d05b1d4d9a1;
 Mon, 30 Oct 2023 15:51:01 +0100 (CET)
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 39UEoRNO003337
 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NO);
 Mon, 30 Oct 2023 10:50:33 -0400 (EDT) (envelope-from ehem@m5p.com)
Received: (from ehem@localhost)
 by m5p.com (8.17.1/8.15.2/Submit) id 39UEoRqN003336;
 Mon, 30 Oct 2023 07:50:27 -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: bd703c2c-7733-11ee-98d6-6d05b1d4d9a1
Date: Mon, 30 Oct 2023 07:50:27 -0700
From: Elliott Mitchell <ehem+xen@m5p.com>
To: Roger Pau Monne <roger.pau@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>
Subject: Re: [PATCH] x86/x2apic: introduce a mixed physical/cluster mode
Message-ID: <ZT/Cs+MsBPibcc9D@mattapan.m5p.com>
References: <20231024135150.49232-1-roger.pau@citrix.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <20231024135150.49232-1-roger.pau@citrix.com>
X-Spam-Status: No, score=0.0 required=10.0 tests=KHOP_HELO_FCRDNS
	autolearn=unavailable autolearn_force=no version=4.0.0
X-Spam-Checker-Version: SpamAssassin 4.0.0 (2022-12-14) on mattapan.m5p.com

On Tue, Oct 24, 2023 at 03:51:50PM +0200, Roger Pau Monne wrote:
> diff --git a/xen/arch/x86/genapic/x2apic.c b/xen/arch/x86/genapic/x2apic.c
> index 707deef98c27..15632cc7332e 100644
> --- a/xen/arch/x86/genapic/x2apic.c
> +++ b/xen/arch/x86/genapic/x2apic.c
> @@ -220,38 +239,56 @@ static struct notifier_block x2apic_cpu_nfb = {
>  static int8_t __initdata x2apic_phys = -1;
>  boolean_param("x2apic_phys", x2apic_phys);
>  
> +enum {
> +   unset, physical, cluster, mixed
> +} static __initdata x2apic_mode = unset;
> +
> +static int __init parse_x2apic_mode(const char *s)
> +{
> +    if ( !cmdline_strcmp(s, "physical") )
> +        x2apic_mode = physical;
> +    else if ( !cmdline_strcmp(s, "cluster") )
> +        x2apic_mode = cluster;
> +    else if ( !cmdline_strcmp(s, "mixed") )
> +        x2apic_mode = mixed;
> +    else
> +        return EINVAL;
> +
> +    return 0;
> +}
> +custom_param("x2apic-mode", parse_x2apic_mode);
> +
>  const struct genapic *__init apic_x2apic_probe(void)
>  {
> -    if ( x2apic_phys < 0 )
> +    /* x2apic-mode option has preference over x2apic_phys. */
> +    if ( x2apic_phys >= 0 && x2apic_mode == unset )
> +        x2apic_mode = x2apic_phys ? physical : cluster;
> +
> +    if ( x2apic_mode == unset )
>      {
> -        /*
> -         * Force physical mode if there's no (full) interrupt remapping support:
> -         * The ID in clustered mode requires a 32 bit destination field due to
> -         * the usage of the high 16 bits to hold the cluster ID.
> -         */
> -        x2apic_phys = iommu_intremap != iommu_intremap_full ||
> -                      (acpi_gbl_FADT.flags & ACPI_FADT_APIC_PHYSICAL) ||
> -                      IS_ENABLED(CONFIG_X2APIC_PHYSICAL);
> -    }
> -    else if ( !x2apic_phys )
> -        switch ( iommu_intremap )
> +        if ( acpi_gbl_FADT.flags & ACPI_FADT_APIC_PHYSICAL )
>          {

Could this explain the issues with recent AMD processors/motherboards?

Mainly the firmware had been setting this flag, but Xen was previously
ignoring it?  As such Xen had been attempting to use cluster mode on an
x2APIC where that mode was broken for physical interrupts?

This may warrant a Fixes line.  This may warrant a backport to 4.17 due
to the seriousness of the bug.


-- 
(\___(\___(\______          --=> 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 Mon Oct 30 14:51:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 14:51:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625171.974169 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxTcQ-0005Ao-7w; Mon, 30 Oct 2023 14:51:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625171.974169; Mon, 30 Oct 2023 14:51: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 1qxTcQ-0005Af-5O; Mon, 30 Oct 2023 14:51:54 +0000
Received: by outflank-mailman (input) for mailman id 625171;
 Mon, 30 Oct 2023 14:51: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 1qxTcO-0005AW-GE
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 14:51: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 1qxTcN-0003ai-Pj; Mon, 30 Oct 2023 14:51:51 +0000
Received: from [54.239.6.189] (helo=[192.168.13.78])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qxTcN-0001G3-GL; Mon, 30 Oct 2023 14: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>
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=sUBxZHal8X3gZ030XRWzozLKdebv6lcq6WYIS1X76PE=; b=081JzxPIIUhOGNO75zqQGOtDAF
	0/NXkVg3Uiy+LRXLoKx3cB0iWM5Jj+a1j666JcKn8EHixKioUAMBQUtnEC2hbhibSet1pbW2o+jtP
	WK8tQkazCjo2yOEbHATU48ptDsw7lKfJ0K64G2A+bMmPLfuk0UXCAaWzhjQCULWJnv1I=;
Message-ID: <98da41d4-f818-44c7-bd3c-b3e3b224ff0d@xen.org>
Date: Mon, 30 Oct 2023 14:51:48 +0000
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN PATCH][for-4.19 v5] xen: Add deviations for MISRA C:2012
 Rule 7.1
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,
 andrew.cooper3@citrix.com, roger.pau@citrix.com,
 Simone Ballarin <simone.ballarin@bugseng.com>,
 Doug Goldstein <cardoe@cardoe.com>, George Dunlap
 <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>
References: <0c86b50a796ba2aaab01e30935ed559ab719d33a.1698418578.git.nicola.vetrini@bugseng.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <0c86b50a796ba2aaab01e30935ed559ab719d33a.1698418578.git.nicola.vetrini@bugseng.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi Nicola,

On 27/10/2023 16:11, Nicola Vetrini wrote:
> diff --git a/docs/misra/deviations.rst b/docs/misra/deviations.rst
> index 8511a189253b..8aaaa1473fb4 100644
> --- a/docs/misra/deviations.rst
> +++ b/docs/misra/deviations.rst
> @@ -90,6 +90,13 @@ Deviations related to MISRA C:2012 Rules:
>            - __emulate_2op and __emulate_2op_nobyte
>            - read_debugreg and write_debugreg
>   
> +   * - R7.1
> +     - It is safe to use certain octal constants the way they are defined
> +       in specifications, manuals, and algorithm descriptions. Such places
> +       are marked safe with a /\* octal-ok \*/ in-code comment, or with a SAF
> +       comment (see safe.json).

Reading this, it is unclear to me why we have two ways to deviate the 
rule r7.1. And more importantely, how would the developper decide which 
one to use?

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Mon Oct 30 15:01:24 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 15:01:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625177.974180 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxTlW-000823-4p; Mon, 30 Oct 2023 15:01:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625177.974180; Mon, 30 Oct 2023 15: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 1qxTlW-00081w-0e; Mon, 30 Oct 2023 15:01:18 +0000
Received: by outflank-mailman (input) for mailman id 625177;
 Mon, 30 Oct 2023 15: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=Hhfi=GM=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qxTlV-00081q-7H
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 15:01:17 +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 2c39e75f-7735-11ee-98d6-6d05b1d4d9a1;
 Mon, 30 Oct 2023 16:01:15 +0100 (CET)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM8PR04MB7442.eurprd04.prod.outlook.com (2603:10a6:20b:1d8::11)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.18; Mon, 30 Oct
 2023 15:01:13 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6954.016; Mon, 30 Oct 2023
 15:01: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: 2c39e75f-7735-11ee-98d6-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=SaJk2m4TnDuiONzoQ/KKpyv2wCCKGnsTi9XjwnKUa/+6kQhodKrGQurA6ZNw+hnrJGHhKqdplX0UeUvkFOlIHTM0WEY7l3+gFtudxXios2lSCXIxVJo7cBwT7qJzW/+SzM66Qtmuket0O6stXvGsLSSCykmVvH8PTqgNvCbdGhKRGjoCfCB70QfYeM54NzLM3FFEf6jcP/0EvIaC1KdWqPna87l1nZKPQty8+6D2bs1DIn34nLiNys4iPPx0l2MZnz9eWxUXCkpBvOCMD03GIMP4dLIzVQKWMAJZbg2zEmC3dKiPp5tTJNAlCUjS3uqQLtg7acVGgAZNJYD2ZPJhrg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=icjcyNuIn5b0D9mqM/w/ep/8gav10tNy7bxwpu/29wM=;
 b=J20ibSDQQQ0UzHj8c8JZa60OsrMg+CVSZ2rMnhsSEeFuvjXEq3ZrUXiR3otKVokaAevZj32rnUpQnXIJj+YQhecwwKUdLWebntWkSuNVb0NpbTvY+ZglGibcL/oXcU/0aEU7Jqx7vQY2nSbbN4ARvFKV6sV/fWumgYen1sX26fq+5uCNrdccInU2LJI7rKt6g+9kcJBBJeZfzsKhuLBR292r4We1iUd+5k0eIf9RUEPzwCYsqvEG/nQi1vKGW/JSziK37+YBLEcejOhwJX7RALf8bNgZxGA3VH9HGMoz2KCxJ6letm4fsxu4AxO9uYeSbj8+RzY8CweXkLT4e9mk0Q==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=icjcyNuIn5b0D9mqM/w/ep/8gav10tNy7bxwpu/29wM=;
 b=MWeDhcLp3BgCDb9CIdsOn0vytjKvzBlamBsNwCJq5BCbG22+KTzgswdJ8uV8hBO5vGLR+b8t6IdeljcgbwLWom4HIWzawFYWxlZ3EZRRN+KKb09XlSNoa1Qs9DWrtPiyzxl7RlJH/btN9pOS9g43ABEVe4zlQwT74/j/5kVbuY8g0RI8Zm8BzZmag528OCnVsTpx4C3M9aGGsdz6ZJr/5PK40t0kfi4PAi/SGJYjWmzCXkqO+gkmV3qRfZwG6cAPmM+xRYW6dL8UJce71PaBwWI15329NpFUZGRXhzCLdVvtNaIAXhQxppar48+CUm0sI5TNwFWR0pNkiFS94in7YA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <e21cb579-842c-a3c3-db82-067dc023ef06@suse.com>
Date: Mon, 30 Oct 2023 16:01:14 +0100
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] x86/iommu_init: 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>,
 xen-devel@lists.xenproject.org
References: <ba5d1368fce181a6a3a6abc150651e1e5323e489.1698238686.git.federico.serafini@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <ba5d1368fce181a6a3a6abc150651e1e5323e489.1698238686.git.federico.serafini@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR3P281CA0195.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:a4::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_|AM8PR04MB7442:EE_
X-MS-Office365-Filtering-Correlation-Id: abdbd5ba-e5be-475b-33e7-08dbd9590ef7
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	JfGGzU4HIhyMmOca6Rw6W2vaJPXI9o6m2nUpgPN9AhybjP+j7D9tE8YMoE/7dCB5BNixSVH2gpIMnrqxSH3xHloabkFiSkGy1Pih89veEPkCF+HFR3Fr2vuQ8lLDFtvrbn5uCsRdIHUo6M2HhGhUZWOaYHerUTPkGsfPJlHEAg5ms8ylgXf2cuOlnlweU4U+uuw7bfgxpNgcSV1PcSWsXHc483WuBo90allLXeXLwcMiquNrtE5Cn9KAPwSRA5HGxzrh8OedpuB77ywSMVnusuyCeUYXKbU+fz6WAxexWObwRSH3ve9jpemExOZ6vC3moId7k0/63Fg2rzXwwaTP0yuOTy9+RpFLVvVCF5LCCKAGfY+69fj1ihrZBs9leG7uQ8WO5RQvdiiuvWBZyRY9OSV8xo/D63n6COwbQ5IVN7T8hP6RHW9mD4pmmD+LFDTuKm7WF3HN0Bf9nxpR/LyAygyzlPmd079An5TrE1xsY3NAZcwBn6qxvyDxxQ9Puw9EQAK0NxQBd/zy5WzBTaU3nePtV110P2HmMlkeSPt0xnhWbDEIxnjzqd/xEdlFoyt9+IPVeiBsiTB+D4du3HEwpbZN44Q/bef30H4db8EAMNUQDIl7aXl83y58AhJkWhFyNNUrraXcLB/Zm19ZqU8kWw==
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)(39860400002)(346002)(230922051799003)(1800799009)(451199024)(64100799003)(186009)(478600001)(6486002)(31686004)(6916009)(8936002)(316002)(4326008)(8676002)(66476007)(66946007)(66556008)(6506007)(53546011)(31696002)(6512007)(38100700002)(26005)(83380400001)(2906002)(41300700001)(2616005)(5660300002)(86362001)(36756003)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?VUVlamlUU3pqb1RYc053UlJzL3pvQ09HTEVKa09SN1l3eHpXR2V0Z3hmR00x?=
 =?utf-8?B?R1VvbC8xQXZSVWUrKzY5Vm1jT1VKUW1KbDBCN1lhS2VycENaek13Y0tqWnBi?=
 =?utf-8?B?RFRqNkl0SWNDKzZHaE1HVnd0ZG5ESzZIdi9COEJhUTYwK2dhZ2pUMDlrWFRj?=
 =?utf-8?B?amZFUzl1Y2x5SmZCUndhOEZtYTJwVzYrWEh1OXlkQTFLMW44eVB0RnpEckp6?=
 =?utf-8?B?K1FKVTZSOTV6VTB4aS9mdm5OZDN6b05md0h5QUt2a0tyWlBPSnJ1K0Jta3c0?=
 =?utf-8?B?M3VSSkt3WFlLcG1jcVNEZzY3cDUxcW96OTNBa1grenpSZ0U0c1NwNUFsU3h1?=
 =?utf-8?B?T3pFN2JnTWhuYlR3OXoreGJPWUszS0E4cnNoU0FhbU90alUxZEF1Z2FnQmo5?=
 =?utf-8?B?MzdIYlVBb1pPSVBXWEtsKzc4azRTcFp2WjRyRXpVVVc4WmpCTld3ZkdQNmRN?=
 =?utf-8?B?U0ljZ1R3ZGNUVExtSVJCcFJmQXdvcUhPdWZFZnMwdFVIUmhlTy9mRFFUZzlB?=
 =?utf-8?B?T3l2eDBWT2JJck16Y2lTeUk5QVkzQ0lndVRnblZnUnQ5WGdVZ1JNMEM0UDFU?=
 =?utf-8?B?TTNDb2JQOGcvZnVhOFZ2RjhSZzJPVllPMncyVjhlcndvYTk1N1cwSTVmOVdK?=
 =?utf-8?B?cmtiVnFsTWJPS29HbTlrNHpRa3BaTnU3UXVaa3dsT3ptcUtLNDkrZkxyUkZy?=
 =?utf-8?B?TWJKT0Qxdmw5MFR5L2V6bEJQZHY0SUVkbk9TK2x5UG9CTmpMdjNiMVlyYmxm?=
 =?utf-8?B?NS9UZ05DeFd2N0s0NWpnOEY3TEEwcnR6aWl1dUgxc0pmWldTNUwweFpHRG56?=
 =?utf-8?B?S1A1ZXl5V1BEc21KTER6NE9qalBhSmcxTU1HdXFkT09salNIdG56NHZTbzVq?=
 =?utf-8?B?YXJnOFJLUk8wdnZPK3NQRmJMa0VrWHZ6RmdSdkJvbjhOekpoQVhRcXBNUkp2?=
 =?utf-8?B?YitidlRGS3dESFlVNnp6QkVScmFuOFAyNXdrNW10RWdaOEpBZTFzSWQrbHJo?=
 =?utf-8?B?YkJsb1dsekNrQUdyRlhJL0JMRVE5V0lhTGhoeFk0SUhrNlVNelh3MWVzZ1Rn?=
 =?utf-8?B?RlgxckFoUGpyaHR0NGxGODZtNEJVQ0F1enRFSFh0VjY2THBwSFE2aEZldHgw?=
 =?utf-8?B?SGRxZTNFRFpoOXd0WE1IZFloWGtUS3dBMndVYkNhK0hTbUtFeDB3ckU3SERr?=
 =?utf-8?B?c0ZMbjNhZ1o5S09NRVFzamxKNG5IbjFhNVdKSnd5UFE5MG55MEJNQjlWSnpy?=
 =?utf-8?B?UzRtdDNmQU9QY3Vza1dDTi9ncjgxZTJEaG5DajMwamxMemhCMXUzd3l4K1Rw?=
 =?utf-8?B?YU90TGRFd0tuS2xUMDhDUE1MOW9SV0hVcUQ5MjBYZnBkbS9PZFN5b2ZtYTJW?=
 =?utf-8?B?VWRXamxzOFQwcllNWkErQ2Q5UC9rajVoWUNBMXhqcTlUL09oSHZBZmRWWFpL?=
 =?utf-8?B?TkZuUGJHK2xDTDdNdFkrRk1EU0k0V0RLYU9Gb1VJaVJnMmdSLzNNSUFVd0Ev?=
 =?utf-8?B?WXl2UEZyWUFpV0VaM2htaUJwWXJHRnFqK1pNMThYeWJwbVNzaXRsZVpwN1Nu?=
 =?utf-8?B?R3RGRWV6aWlmSXF1ejBpcnVCOTZFZVNpTFRIR29md1Z5VmRRcVFZb20zYytn?=
 =?utf-8?B?dXRYSzBYMHc5ZERuWGo5WHNEUGRCYnRJL296MjFNOEpmYzYxeUF2clA5c3pU?=
 =?utf-8?B?OC9yVHd1Y1FYeHdKcG1aYSt5Ymo1SnplN1FZNit2SHJkM1lrTStMU3ZvUGpm?=
 =?utf-8?B?ZDZ0YUh5UCtJQkdXeWZnM0ZWWUdhOHUwQWVmOWEvM2NGTU96dTNCV2htamVk?=
 =?utf-8?B?a0Y2ZEVUWUQyUWszMXpWbk91ZVAyVEEwQk93Wkc0TjBCdm9UUHQ5OHkzZHcr?=
 =?utf-8?B?My9CRzRlTmZPVVY5Rk11aGdOOXo4OHBsQXlKNFIxemlvbm9qdTFad1F0ZFl5?=
 =?utf-8?B?TVh3cWREMTlsTkpGUmhJZWMwelBhd25EVytLWVZ5eUV5L2FldmZia2ZYQ24x?=
 =?utf-8?B?VXl4aFcybkZvcDdJUkVLTHBBVWxlRkhqV2owT3pvV1RMSGNnUUM2b05oamt1?=
 =?utf-8?B?SHdRMmw1VHVTTlIyUWVwQ3Zmc0hiZExmK0MxK0hId3lFci9pTHFZeE1LNkcr?=
 =?utf-8?Q?fgiD5aO+3gFRnJVGAKFzYeKpr?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: abdbd5ba-e5be-475b-33e7-08dbd9590ef7
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Oct 2023 15:01:13.1065
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: Bcx49c8N9gxRTpgUC9Y1icuipCErBZPIFUMOe64nkmH+weP9STHElDgvNkf1t2oFI4SyMDXUelLTDsIIizeeNQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8PR04MB7442

On 25.10.2023 15:01, Federico Serafini wrote:
> Make function definition and declaration consistent and emphasize that
> the formal parameter is deliberately not used.

Coming back to my earlier objection: Did you consider alternatives? Best
would of course be to get rid of the forward declaration. That seems
possible, albeit not quite as straightforward as it ended up being in
other cases. Second best would be to rename the parameter in the forward
declaration. Question of course in how far "emphasize that the formal
parameter is deliberately not used" is important here. (If it was, I
wonder why VT-d's do_iommu_page_fault() is left alone.)

Jan

> --- a/xen/drivers/passthrough/amd/iommu_init.c
> +++ b/xen/drivers/passthrough/amd/iommu_init.c
> @@ -692,7 +692,7 @@ static void iommu_check_ppr_log(struct amd_iommu *iommu)
>      spin_unlock_irqrestore(&iommu->lock, flags);
>  }
>  
> -static void cf_check do_amd_iommu_irq(void *unused)
> +static void cf_check do_amd_iommu_irq(void *data)
>  {
>      struct amd_iommu *iommu;
>  
> @@ -702,6 +702,9 @@ static void cf_check do_amd_iommu_irq(void *unused)
>          return;
>      }
>  
> +    /* Formal parameter is deliberately unused. */
> +    (void)data;
> +
>      /*
>       * No matter from where the interrupt came from, check all the
>       * IOMMUs present in the system. This allows for having just one



From xen-devel-bounces@lists.xenproject.org Mon Oct 30 15:12:41 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 15:12:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625181.974190 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxTwP-0001xP-4N; Mon, 30 Oct 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 625181.974190; Mon, 30 Oct 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 1qxTwP-0001xI-17; Mon, 30 Oct 2023 15:12:33 +0000
Received: by outflank-mailman (input) for mailman id 625181;
 Mon, 30 Oct 2023 15:12: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=Hhfi=GM=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qxTwO-0001xC-AL
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 15:12:32 +0000
Received: from EUR02-AM0-obe.outbound.protection.outlook.com
 (mail-am0eur02on2062f.outbound.protection.outlook.com
 [2a01:111:f400:fe13::62f])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id be317474-7736-11ee-9b0e-b553b5be7939;
 Mon, 30 Oct 2023 16:12:30 +0100 (CET)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PAWPR04MB10031.eurprd04.prod.outlook.com (2603:10a6:102:38b::18)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6954.14; Mon, 30 Oct
 2023 15:12:27 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6954.016; Mon, 30 Oct 2023
 15:12: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: be317474-7736-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=e60pb/4YCHsd1H+YfLf62ruuwEViKIWb+zZ/r5eAxPYaMEYZMGegLIU+Q++lD3DAuO8AS8CkJGTL4OpSuwtQbFHschqc+tOnvTy/GlxeX0mM2WvA8OLT8S0vEVD5GQWYHmzSZEpitksyGCWb6lyE+K3Gxmro3IIQ+vi6ygEurAH/pnnwLQa6nB4TNbZe7/tvSGT4T323R1xVQizszPHdAwgUUhlhIpvaJqvzUUT3ONqvPsRyX/BBs6TjF9nJU6lhETsxL9meH3itR2kUjAFNVU/0GrATsq6LoubQa5UZSdkoZlpTlASJviVoYXYGbEfFyn/S+tvntfhCFFZyxZzYPA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=YDhI7kwHyGfsZpSIdwE1TohnoAzCMk4pDznHLmfZKfc=;
 b=cKjxEhqRh0KtwTYJ8vvqEP7qu8RO4/6cByJX2PG5ORfJij23Ar74KOBXtu2K6DtVyY42Foo4uZWA5peETZIsxkMHqFzUnUTkVvSsmTHGdGEg5dSCCG5Ap22WgO3Va+VyKQh7FHuly12GU4h0Z+w3MkZdR8kBKCRek6jCm48GnopuCtSf1uEbmdFFxvsuYnG7Gpu1fX0wlQg9qMWzLgfq2/vsWgKinnaUGC+FNSMlTQz4A992SWevj5REZ/w6bJFKYdCbnX+KikUjqQws6HZUUVjFHbMw1TL4VwykDNQlVEx/8XSwIyngoSZTBLkeNH9bE1Pg2S/nr2IKRNXKbvlrOw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=YDhI7kwHyGfsZpSIdwE1TohnoAzCMk4pDznHLmfZKfc=;
 b=SqWE1iCEp0LCpxKTZtefCxMv/OZpFUxVTrIGHWtA9lxz102jf8bHO4OBSdvH1PNEDJCDiVjhLAFasuqH/i3TWVebeR6EsIEcp+aXyH0E3bIGuYZJAx166+rY3jGWOnxYEKbHp7JIfZToYHr6Xe4O0esMBZ+qfGrBsnirjX0MvUb8A7J16/0qhD0PP+f4iHOWlIx6YwnnwF4Lryz3Jdjt17NYySW9L/vEXmil0lfnkx8sGYCCgkAiUGLcVia6f77I4zE+//+8nkTx1euuh9zOmAobODF7HLONCHrxP93gOQVgnJCVyGEci5bpcFgL12O/9fFk1Rmygtd0aeyqencacA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <20677a35-37ee-d959-78d5-d8f95f443912@suse.com>
Date: Mon, 30 Oct 2023 16:12:27 +0100
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [XEN PATCH][for-4.19 v5 2/8] x86: add deviation for asm-only
 functions
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.cooper3@citrix.com, roger.pau@citrix.com,
 Simone Ballarin <simone.ballarin@bugseng.com>,
 Doug Goldstein <cardoe@cardoe.com>, George Dunlap
 <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Wei Liu <wl@xen.org>, Jun Nakajima <jun.nakajima@intel.com>,
 Kevin Tian <kevin.tian@intel.com>, xen-devel@lists.xenproject.org
References: <cover.1698655374.git.nicola.vetrini@bugseng.com>
 <79091a4e450b522aedfdd903ad671e705a933c49.1698655374.git.nicola.vetrini@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <79091a4e450b522aedfdd903ad671e705a933c49.1698655374.git.nicola.vetrini@bugseng.com>
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_|PAWPR04MB10031:EE_
X-MS-Office365-Filtering-Correlation-Id: 904b5c29-da13-4f4f-1b52-08dbd95aa065
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	6Fftx2lSSwNJ5jMIDfGMM06JF78zPrmlKFDJ9lux8k53qqjz/x9QHli39YJb5LkpX4QN5RvdJk8bslJwhVfjddwbMY+fSrp4jM+1oDyf1Q4atTrn4smBEnz0pBDQcPJ0sq3hfN1GSBjepXj4Ln6m1Fjiam4ftiiHCfF/kJKLcUy75eblqOD6y5p5P8ev5eFKf/laug0zOq4/K4Km00/vo+Ar4M2oy0nxEYBq6U8b7FvnGLH+0+jTpiJcUx3V7MK//479elQX0OcTx3jEH1Ifv9RCOcDSrFZSE2YjpQn9jgGF2SqJCh2269o5/CsU9G0JHY4oDjTvTeQpXSyGlJ3CXPwHoe5f25wCyYEubJ7lQCeAWaj7ScZ0eXnbfVN2K7yCIhzDYe1SrsEEeYWmnko2vGhFALOLBmdg4d1JwV4wNNQWRk4lVJ/jUuiOjq0hgIb14NPLpdMOvMFMauei0c2nbIhyuW1JMDUhyCooySQTyyYcM34C+f2YM+F/n5Xc1ixhkaeq6prBLQdOw6g5ivkLfrtCY6+c6YYdFYnuYVvt5QiHoeZiFBLW+cERYRt/ypCKOhqbVEUj0jzJO9WFo2Pj5vR1mdAWCHEomh7OuUtly8XxFhLwcywxzrBHjh7AEhwDW3EAwzBfjaLgZVoW0K7e6w==
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)(230922051799003)(186009)(64100799003)(451199024)(1800799009)(31696002)(38100700002)(86362001)(6486002)(36756003)(478600001)(53546011)(6506007)(6512007)(41300700001)(7416002)(8936002)(4326008)(8676002)(83380400001)(26005)(5660300002)(2616005)(2906002)(66556008)(66946007)(66476007)(6916009)(316002)(54906003)(31686004)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?dHlrTzV1QStYVE9ocTNseU93UytseEFyU1RibktFUnVWZzI5V2tFRWdHcE9V?=
 =?utf-8?B?OGRpRGJhaEFabXZKYWMvSFc5eHQzc0EyOEFGUU1SNHZJbFB6MUdHeVluYlI4?=
 =?utf-8?B?N0lMU1dqQnB2aGpNVThCNDB2Vm9CV1NpdnNGY2p3YUlUeEc2a0lIZFZlZ3Nx?=
 =?utf-8?B?MUljbUt5Y0xOQmdDcnlCWUg5TWNWVFlya1JLY3cwOHdtdy91MllhTEYxMVZt?=
 =?utf-8?B?dzY2NjZJOU5EY3VxVUkvYjNSMDVPYTYxSWpVa1U4aWdYUTV2anpwSU53Vkp2?=
 =?utf-8?B?bnZEc2pxWWs0dExIclZpN1paRE5kSkFwV3U1WlRaamthVzRHcGFCSHg5Y1U3?=
 =?utf-8?B?WFVpVWxhcGgrWnRuR012TTFmOWIwV0d2QVlRU2E0TFNDNEdlYXFNRUhJUzRM?=
 =?utf-8?B?ckdhQVhOVkdDZ0d3TVFLcllLa281bXFiSTdNM0Q5SmtzRUZsMUlldGNleis3?=
 =?utf-8?B?M0R2Sk1zUm5Ib1FIN2lEbEwvK2o4alFHSnV6Ty9uT3BvaVB6UTkzVnVQL0RD?=
 =?utf-8?B?N0E5WVVqN1AxT2VDcmx5Y3BkK2thNWJLRkZvb0t2MXBJU0hjTk9ld3ZrQXRP?=
 =?utf-8?B?MmtMd0ZqTVAzSmNyRDArVG84clNDZTljczB1QU9KQk05QmxtZ1FWNXREZCtZ?=
 =?utf-8?B?SHFQd0NtU2pmNWF2Y21SOHl0K0d0U1Z3S0FWa0tucHZodWNUTnc1ejJpQmtM?=
 =?utf-8?B?ekJ4S3VKYTNmSGlmc1NsbWRVUjhDSWVzdHE3NWdnQTNxMVpsWHlzbjZlVjlT?=
 =?utf-8?B?WjU1WHBYbTVrMGt0MWxnUFpWbUFtd0FNZi8rZWx5SktZZ0MrWCtUQ0pUTzR2?=
 =?utf-8?B?MWFGeW1ucmhHa2RuamVJSFlPdHArNTJzWEUyNjdrVytUZ0prWTR1ZUExOGhj?=
 =?utf-8?B?TWs3eEhYeWxKcmlZbm5aUWNhVXBEUG9wU0xVYVlpQ0hlMDlrNDBuQUZTTHBU?=
 =?utf-8?B?Qlkxekd5RHFpTThKd1ZFT0lBY2lKcUVIdEMvM3BXQWhMSlBLNmsxZTFFUSs4?=
 =?utf-8?B?U2t1V2k5UUNORWFPUUVUVDRpakxIa0s1M0pJM0t5Z3hLRmRYL2NNNWQ3bXAz?=
 =?utf-8?B?cHhOTlNqK3FodTJDbWVYaHdTaUFUMkxaT09UVHR5RWpSS2xRWXp1S3BtRG5O?=
 =?utf-8?B?OGVJTElpOWd4TzlSTTk0Wm82Z3lDNkNGdnVpL2t2QmlKdlZKNEdkbHpIVmNY?=
 =?utf-8?B?QjJsY3VEVDFheXBEcTJRelRBVEEyZmE3MTR2a1JOZGJVdGV4Q05OeGZuanZX?=
 =?utf-8?B?MDRrelNNaW1jRUdCZC9HeHYySW44elRNSDZBc0ljOUxFTW9ZeVVnUWEyU2N4?=
 =?utf-8?B?Y3FaY1k3aWJ2RCs2eUVITS9IcFBzMDJsU3laczV4MUFiN1FhdjQ2ZnJxeGQv?=
 =?utf-8?B?eS9BaitZcTI3MVIrMlBpb3ZCcjE0UnFVYnJ4VlJhVFFuRkk2Q3prRXg0SDgr?=
 =?utf-8?B?L2MyOFgwOHZFc3hCdlZTV3JrUUJJVTl2REk2c1VCaWw2M3ZuM0FqR2txcWRw?=
 =?utf-8?B?Z3JnbUNrQkI2eUNsSU1wcHI5TE52U2t6RGNqVGhVb1BQeEoyTnR5cHU5a3BD?=
 =?utf-8?B?U0hRR2VYNnJJbmZTdHhKS3E2NlJKOWx3cG05RktSdFdSekJzdDNBaXh3TUVq?=
 =?utf-8?B?TmwxQ0FhRjdEZkRQU1ZBTllyK3B0S2tEbE8wN1piQWlrU2FKMGxrL0JERm50?=
 =?utf-8?B?RWhrKzJRYmZOMlNJQXh6QkRsejlNRjdZYS9IQXFPeURYVmZENGxPdXhQZzZn?=
 =?utf-8?B?TlNOUlRoUTNBWUZTdEVjd0RvTmR2czJxK2lGTnpPKzZsUXEvTVpyeUp0d3JT?=
 =?utf-8?B?alJUbUdZcnZLSHdncVFONHhRSU9BRHBwdGg1eU5xU29qTDdib2ExWlVudHRw?=
 =?utf-8?B?MUtEYmlXcTlyNFl6WVUwdkN5cmhSQWFUVnYvUGF0VkhKUlhRWnBIaGY0bHpH?=
 =?utf-8?B?dUxxN25zZGNJREJVUjEzUUZ4YUpKcHp0WGtUbU52VnZlSjAxdXV6UXBWeFpE?=
 =?utf-8?B?R2Ura3pibEFRRmcvUllrYW9DNTY2TTlEOWlDd1R1N3VSY004UThFc0hEQktV?=
 =?utf-8?B?OThTWHNTYVVHOG1wSERtWjV0UmxXeXdFUllGSktRQk1HSncycUxpcDcvOG1I?=
 =?utf-8?Q?7nBtVcmZY8g6VLl7PCDCF5ZoI?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 904b5c29-da13-4f4f-1b52-08dbd95aa065
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Oct 2023 15:12:26.5441
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: JUnc/0sBPZw9f/ew+sQHWEfJzMYWCQ7T/YCQo2pZXqfY9INhikGAgblyySrcekoF8PzHKDy3td9hYZKiB4LsoA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAWPR04MB10031

On 30.10.2023 10:11, Nicola Vetrini wrote:
> --- a/automation/eclair_analysis/ECLAIR/deviations.ecl
> +++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
> @@ -163,6 +163,15 @@ Therefore the absence of prior declarations is safe."
>  -config=MC3R1.R8.4,reports+={safe, "first_area(any_loc(file(gcov)))"}
>  -doc_end
>  
> +-doc_begin="Recognize the occurrence of current_stack_pointer as a declaration."
> +-file_tag+={asm_defns, "^xen/arch/x86/include/asm/asm_defns\\.h$"}
> +-config=MC3R1.R8.4,declarations+={safe, "loc(file(asm_defns))&&^current_stack_pointer$"}
> +-doc_end
> +
> +-doc_begin="asmlinkage is a marker to indicate that the function is only used from asm modules."
> +-config=MC3R1.R8.4,declarations+={safe,"loc(text(^.*asmlinkage.*$, -1..0))"}
> +-doc_end

In the longer run asmlinkage will want using for functions used either way
between C and assembly (i.e. C->asm calls as well as asm->C ones). I'd like
to ask that the text please allow for that (e.g. s/from/to interface with/).

> --- a/xen/arch/x86/hvm/svm/intr.c
> +++ b/xen/arch/x86/hvm/svm/intr.c
> @@ -123,7 +123,7 @@ static void svm_enable_intr_window(struct vcpu *v, struct hvm_intack intack)
>          vmcb, general1_intercepts | GENERAL1_INTERCEPT_VINTR);
>  }
>  
> -void svm_intr_assist(void)
> +asmlinkage void svm_intr_assist(void)

Nit (here and below): Attributes, unless impossible for some specific
reason, should always go between type and identifier. Not all our code
is conforming to that, but I think a majority is, and hence you should
be able to find ample examples (taking e.g. __init).

> --- a/xen/include/xen/compiler.h
> +++ b/xen/include/xen/compiler.h
> @@ -159,6 +159,9 @@
>  # define ASM_FLAG_OUT(yes, no) no
>  #endif
>  
> +/* Mark a function or variable as used only from asm */
> +#define asmlinkage

I appreciate this being an immediately "natural" place, but considering
what we know from Linux I think we ought to allow for arch overrides here
right away. For that I'm afraid compiler.h isn't best; it may still be
okay as long as at least an #ifndef is put around it. Imo, however, this
ought to go into xen/linkage.h, as is being introduced by "common:
assembly entry point type/size annotations". It's somewhat a shame that
this and the rest of that series has missed 4.18 ...

Jan


From xen-devel-bounces@lists.xenproject.org Mon Oct 30 15:14:14 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 15:14:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625184.974200 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxTy0-0002r2-H7; Mon, 30 Oct 2023 15:14:12 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625184.974200; Mon, 30 Oct 2023 15:14: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 1qxTy0-0002qv-EZ; Mon, 30 Oct 2023 15:14:12 +0000
Received: by outflank-mailman (input) for mailman id 625184;
 Mon, 30 Oct 2023 15:14: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=3VkP=GM=cloud.com=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qxTxz-0002qn-GP
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 15:14:11 +0000
Received: from mail-ej1-x630.google.com (mail-ej1-x630.google.com
 [2a00:1450:4864:20::630])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id f968ec09-7736-11ee-9b0e-b553b5be7939;
 Mon, 30 Oct 2023 16:14:09 +0100 (CET)
Received: by mail-ej1-x630.google.com with SMTP id
 a640c23a62f3a-9c2a0725825so738722366b.2
 for <xen-devel@lists.xenproject.org>; Mon, 30 Oct 2023 08:14:09 -0700 (PDT)
Received: from localhost ([213.195.118.109]) by smtp.gmail.com with ESMTPSA id
 fi25-20020a170906da1900b009cc1227f443sm6181962ejb.104.2023.10.30.08.14.08
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 30 Oct 2023 08:14: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: f968ec09-7736-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1698678849; x=1699283649; 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=yOpZxaIol7tk52sBTGzczNigV8eMbx2hEnqlTVEwtS4=;
        b=BsUZMPipi1DYHgt11J0SWW7dmhTCcKUS6i85dmzXPLU4LHc+fce2IZoJye9QETQrIT
         t5e4rrW+7GNd9vbSxogobKWWTJGWdNNEXyEfUe/tRX/fr45QB3kzWLDfSHjNdlKpJVCi
         dg6Qg279TztgmjxTtWPtycwSUIAYkDVLH67qo=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698678849; x=1699283649;
        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=yOpZxaIol7tk52sBTGzczNigV8eMbx2hEnqlTVEwtS4=;
        b=F7GqcDc7fLk/HTquAAhH7AYpDjAQtPMGpDLW0KgYP0oD/aaDMK/LeYZOOM1IVU5AF3
         VtBSGZRAk5KglzYcJZbup6flsV5DSoAuzs10PNko+PaaH1+1/2gritgfPCMiF/bq2nC8
         eUnp9OpImlCGNVg7A7BqF0j5xN9eMo5cTY6pzRXFanFEeXQ05ywweiPGtl2jxfB+/NIa
         80sS46mAEySlWH0YLsjAc9XwQIYwzCD9sARJDp5Pu7A4oAudfpLhmvX/BeHyoiMoiPJM
         nIbi9sdD1sl15VV/s76MfV+7nB8DrjWeRzJmZ5DxHWh+51hx9bgAm8wm3qXm8JZO6zur
         b5Qw==
X-Gm-Message-State: AOJu0YyzUzWMML3C4/oQuNMchgYe8wO4yupNTK5Q64gj7pfVRDJSOpeh
	UibBft8oVjPGGfqRKqqHq73c9g==
X-Google-Smtp-Source: AGHT+IGvPbyNwuTu6JWNktvhvcOPzHBnePvo4bbYIh76v7xVo1rUpXSSodkISy7Sso6J7effRNd4IA==
X-Received: by 2002:a17:906:daca:b0:9ae:3d17:d5d0 with SMTP id xi10-20020a170906daca00b009ae3d17d5d0mr8809273ejb.31.1698678848695;
        Mon, 30 Oct 2023 08:14:08 -0700 (PDT)
Date: Mon, 30 Oct 2023 16:14:07 +0100
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>, Wei Liu <wl@xen.org>
Subject: Re: [PATCH 4/7] x86: detect PIC aliasing on ports other than
 0x[2A][01]
Message-ID: <ZT_IP_-X4oLhmcFT@macbook>
References: <95129c04-f37c-9e26-e65d-786a1db2f003@suse.com>
 <27dd8f40-1ea6-1e7e-49c2-31936a17e9d7@suse.com>
 <ZToksEP1Fg8MscdK@macbook>
 <86eb1c0d-ac95-247b-16c3-9c4871398082@suse.com>
 <ZTponIYDYDWRZhzi@macbook>
 <75026813-03fe-3a46-2274-b93e98f62f89@suse.com>
 <ZTqDjNSBmXeblsud@macbook>
 <d3da9300-781f-9abb-158b-0c82d36228f5@suse.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <d3da9300-781f-9abb-158b-0c82d36228f5@suse.com>

On Mon, Oct 30, 2023 at 01:24:52PM +0100, Jan Beulich wrote:
> On 26.10.2023 17:19, Roger Pau Monné wrote:
> > On Thu, Oct 26, 2023 at 05:07:18PM +0200, Jan Beulich wrote:
> >> On 26.10.2023 15:24, Roger Pau Monné wrote:
> >>> On Thu, Oct 26, 2023 at 11:03:42AM +0200, Jan Beulich wrote:
> >>>> On 26.10.2023 10:34, Roger Pau Monné wrote:
> >>>>> On Thu, May 11, 2023 at 02:06:46PM +0200, Jan Beulich wrote:
> >>>>>> ... in order to also deny Dom0 access through the alias ports. Without
> >>>>>> this it is only giving the impression of denying access to both PICs.
> >>>>>> Unlike for CMOS/RTC, do detection very early, to avoid disturbing normal
> >>>>>> operation later on.
> >>>>>>
> >>>>>> Like for CMOS/RTC a fundamental assumption of the probing is that reads
> >>>>>> from the probed alias port won't have side effects in case it does not
> >>>>>> alias the respective PIC's one.
> >>>>>
> >>>>> I'm slightly concerned about this probing.
> >>>>>
> >>>>> Also I'm unsure we can fully isolate the hardware domain like this.
> >>>>> Preventing access to the non-aliased ports is IMO helpful for domains
> >>>>> to realize the PIT is not available, but in any case such accesses
> >>>>> shouldn't happen in the first place, as dom0 must be modified to run
> >>>>> in such mode.
> >>>>
> >>>> That's true for PV Dom0, but not necessarily for PVH. Plus by denying
> >>>> access to the aliases we also guard against bugs in Dom0, if some
> >>>> component thinks there's something else at those ports (as they
> >>>> indeed were used for other purposes by various vendors).
> >>>
> >>> I think it would be safe to add a command line option to disable the
> >>> probing, as we would at least like to avoid it in pvshim mode.  Maybe
> >>> ut would be interesting to make it a Kconfig option so that exclusive
> >>> pvshim Kconfig can avoid all this?
> >>>
> >>> Otherwise it will just make booting the pvshim slower.
> >>
> >> I've taken note to introduce such an option (not sure yet whether just
> >> cmdline or also Kconfig). Still
> >> - Shouldn't we already be bypassing related init logic in shim mode?
> > 
> > Not sure what we bypass in pvshim mode, would be good to double
> > check.
> > 
> >> - A Kconfig option interfacing with PV_SHIM_EXCLUSIVE will collide with
> >>   my patch inverting that option's sense (and renaming it), so it would
> >>   be nice to have that sorted/accepted first (see
> >>   https://lists.xen.org/archives/html/xen-devel/2023-03/msg00040.html).
> > 
> > It being Andrew the one that made the request, I would like to get his
> > opinion on it.  UNCONSTRAINED does seem a bit weird.
> 
> I agree that the name is odd; I couldn't think of any better one (and
> this already is the result of 3 or 4 rounds of renaming). I'll be more
> than happy to consider other naming suggestions. The main issue with the
> present option is, just to re-state it here, that we have grown negative
> dependencies on it, which is a problem.
> 
> However, meanwhile I've realized that we don't really want to tie anything
> here to PV_SHIM_EXCLUSIVE, at least not directly. What we care about is
> whether we _actually_ run in shim mode, i.e. also when a full-fledged
> hypervisor is in use. My plan is now to have said new command line option,
> which - if not specified on the command line - I'd default to !pv_shim.

So that tests for aliases are run unless in pv shim mode.

> > Maybe the issue is that PV_SHIM_EXCLUSIVE shouldn't have been a
> > Kconfig option in the first place, and instead a specific Kconfig
> > config file?
> > 
> > Maybe it's not possible to achieve the same using just a Kconfig
> > config file.
> 
> I'm afraid I don't understand what you mean by "Kconfig config file". It
> can't really be just another .../Kconfig file somewhere in the tree, as
> it doesn't really matter where an option like this would be defined.

No, I was thinking of splitting what PV_SHIM_EXCLUSIVE actually
implies, for example by adding CONFIG_DOMCTL_HYPERCALLL or
CONFIG_PLATFORM_HYPERCALL and re-work the pvshim_defconfig config file
based on those, so that we don't end up with negative relations.

Note sure all usages of PV_SHIM_EXCLUSIVE can be split in such a way,
maybe we would need some compromise.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Mon Oct 30 15:19:32 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 15:19:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625189.974210 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxU35-0004vI-35; Mon, 30 Oct 2023 15:19:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625189.974210; Mon, 30 Oct 2023 15:19: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 1qxU34-0004vB-W9; Mon, 30 Oct 2023 15:19:26 +0000
Received: by outflank-mailman (input) for mailman id 625189;
 Mon, 30 Oct 2023 15: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=Hhfi=GM=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qxU33-0004v5-Al
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 15:19:25 +0000
Received: from EUR02-DB5-obe.outbound.protection.outlook.com
 (mail-db5eur02on20621.outbound.protection.outlook.com
 [2a01:111:f400:fe12::621])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id b44f5d0d-7737-11ee-9b0e-b553b5be7939;
 Mon, 30 Oct 2023 16:19:23 +0100 (CET)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS8PR04MB9208.eurprd04.prod.outlook.com (2603:10a6:20b:44f::20)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6954.16; Mon, 30 Oct
 2023 15:19:20 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6954.016; Mon, 30 Oct 2023
 15:19: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: b44f5d0d-7737-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=KtZ52NXFv2KrJ9JL8K4mEyyjVWvp5O+YbtQQzdK9wyu3ILSy6haY2oLQfwDISu2+JPhXoDoT0mTAslR3cpCU6sz/XH/N6J9Gt5nUvoXBZZ3LoGjZ+NMvOLocXJZNmBGeYn3T+AMne8aqI6wXI5nG8gY8Ky9H1PJngYN+XZxOwpAm0trevcYikemPTmuaTaVtsxqWvf+kev+ubiakNZq4XQQ/NiIi4aXgcXmTC4ITN6KfbcyfrN9WG5dKpy9hd8jRW4EEEw+4bS1zfihd5U3IdRSJf6qgWqCT7hKhQPsXP0Ixszc/lRyL2+pERTGOSKdOoo1XA+iGFFyno/zGxCPvxg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=RcBEXizaahuBBHyZND5VnUFmhl1MFtWBu49OgJMt4CA=;
 b=lchpqgFxDKVrkDcTo7VwOOYM/21IZrERfoRFqX3ldnF5Afp/C8agny+0xwersnKC2fV6kM7azCk+ZbStRgm639OeD5zmoANApkDvu2uC8w8wE/ISQUwiegOiovvQr1JT857y2/XAV5rw50DpDnErKLM0H3RflmZh8D+RErNwj1hHHa3yPsgczpt/QvEHit7I8ZQh7OziCWQp1df0WQskhYoFyYZa6A3flMnxEtQ22U/j/x4ApQ07E0872Lk5E6eS4wERwLsXXbeW72iXl5wxYIQ0uJ9Weu2IxxYP/vjqL95nrDE/G0pkzj7mFm7kUSDXqpBsYftXaaopcfL6PXK4JQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=RcBEXizaahuBBHyZND5VnUFmhl1MFtWBu49OgJMt4CA=;
 b=JBC683Ey5tbHBQMD9+maugbYUS/++E07y/VyWrTyRJTppgkrYD5sY5AB2pQa+ykDFQyAgcF332yNfc9jqjlCZGeCg0suU59gAty85+2fFqdUujIyncYi9+l1skChSN3hVWzX6d1sAiuBpmORXIJSeMyy3S5hC8p7srhWvYLyJaku+JszjWIYnvSmOWC9l9fSK/yo7g0Ep9btQOrohSx6W3BeX/L2+UGCkR9q8G2cFZDjuLu0FxlxWGV+ROvFo7xoARGYj72vNE1HS8eMIEFTmgkxPFsRFYsn/nQ+UgzKYkOF3x90X3U+9+Gk9NrJmxQMaHnTaeVRuMaV8Uao97OAOQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <e4929b28-5608-bba8-9953-270f408e32eb@suse.com>
Date: Mon, 30 Oct 2023 16:19:22 +0100
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH 4/7] x86: detect PIC aliasing on ports other than
 0x[2A][01]
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>, Wei Liu <wl@xen.org>
References: <95129c04-f37c-9e26-e65d-786a1db2f003@suse.com>
 <27dd8f40-1ea6-1e7e-49c2-31936a17e9d7@suse.com> <ZToksEP1Fg8MscdK@macbook>
 <86eb1c0d-ac95-247b-16c3-9c4871398082@suse.com> <ZTponIYDYDWRZhzi@macbook>
 <75026813-03fe-3a46-2274-b93e98f62f89@suse.com> <ZTqDjNSBmXeblsud@macbook>
 <d3da9300-781f-9abb-158b-0c82d36228f5@suse.com> <ZT_IP_-X4oLhmcFT@macbook>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <ZT_IP_-X4oLhmcFT@macbook>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR0P281CA0226.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:b2::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_|AS8PR04MB9208:EE_
X-MS-Office365-Filtering-Correlation-Id: 3ae86eac-c45e-40f5-b761-08dbd95b9723
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	0VOuwcvblT9Rp1meQra9L50HCnTbPB0Pg+amEPLiIYNXe2HEMs/4W/pe0c/IM+3FBqPP/5QS14eOkqM+gO/807JqszEbUMSAbvT1HwOmv8WcvBCq2xpYWSU8v7gCRmPlLu9KkP6EtwxiXNN9oLkqw9ipD+NLwCnikEPAgjxxUxq4FXdfuh5rxeuE6IUqqvwkxS9imAY9TMNjgt3C4C0ptgEWlTjHq+uZQFHasy1oBi7COXeq6wsp+oDmB7wC901QvqUkLpxsPZ5pr5iBra//I0zA2jB+9+YY1nLPld53lZYRbmW2Vle/aKWX1RlE2exGEbJ5C7Bh2oGceAmAry2ocDz2gB7UaRWM/nIGQGTwfq3LjndKnmiYJNDRn+mOI/RhUw9iyQO03CiwGtYiW0LfQ1OcManZwLaQNPLUq9O3U8EeK8HrHasSu6LwDTAr+YqohW3aQwPy5v4+KpCcxPmUcVmxRliMTh59Zeav/QCFYJ+o1UonnQtG4cxEupDJNGzs/6VF49X6Ti7as4p0rLX0SWXpCB+jtRwAXehNux2aPBcWxWbLZtTzVpi+damyWccd85WQ9mNE0++pepeMxt5lW3AJGKLmySGGA7f9WNlNjxZH0SVX188PO8gGwbDgpQGU6qacO89H8Z5uSRxeogVg/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)(366004)(376002)(396003)(136003)(346002)(39860400002)(230922051799003)(64100799003)(186009)(1800799009)(451199024)(31686004)(6512007)(2616005)(26005)(38100700002)(31696002)(36756003)(86362001)(2906002)(6486002)(478600001)(53546011)(6506007)(66476007)(8936002)(4326008)(8676002)(54906003)(6916009)(316002)(5660300002)(66556008)(41300700001)(66946007)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?R3VBZ242b2s5S1RqR2cvSFdNanNIQ1B6QWJnQjgzMG42MHhrWHZ0b2pvYm5R?=
 =?utf-8?B?VGFrc084VE5tZW5lVWNkaHB4WVlQaUZVK1BzTE9ubjJ5bnpJYWhPbWswVzd1?=
 =?utf-8?B?SkNkL2NYVkRvaXpTdmtnUGFCN1lFK2RGQVk3Wmd5a0MrTVlJbnBwbUZ4NHRK?=
 =?utf-8?B?Z1hzUDNjSjJyenoxZkNHWkpRdnN3S21Od01sdnMxVGN2UUMvZWxndE04K3h5?=
 =?utf-8?B?cWp0R2F3WHNlL25rSC9mWXNleVlrZ2ZScGQzZ0pNNHlIaWFxS3d0RHdmN05i?=
 =?utf-8?B?Nk1sZXpCWkpQQmxGQVpVM1RzZEpYV1pHaUY1WjdLLzRYUWV4MFZWL3BqOStG?=
 =?utf-8?B?SHZJeTdPYlAzOHo2YlYrQXpGNUpweXE5cWQ1Y1U2VThYS0l6MTV6M0ZtaU15?=
 =?utf-8?B?WW82SFM3M0xyek5pb1dVdWc2UkgreW9menB6VEhBQ2pMWGZOcWdCVVFSMi9J?=
 =?utf-8?B?YkpJMHlxQzJWYU13Z0hIVXpmK0JzenVFZTcxWTFJR0xEa2lmVkVHeTBubUEw?=
 =?utf-8?B?TjQ3YjJkR285emNpdHA2RHgyZkRoRmNpK2Z0cjVNVThtcjZ1b21pcGNjWk5D?=
 =?utf-8?B?TGk0NHdhRjdMRW96SWIveE9QSncrbVY3Wk9Hd2xMbVluM0NCN2N2V1hlQ1hC?=
 =?utf-8?B?dW10Y2FlR3M0UzRhTko0aUVQWXZtMjluN3JTeFVtMVBwLzhWS0FoRFBSZ1BY?=
 =?utf-8?B?TTd1dlhmR0RtQnBaeG8ydy9NWGZiaFVPVzhIR3FvL1l4K3dpRFExQ0UxaWZG?=
 =?utf-8?B?L2JQeW9VRGZ3Wkg2OXZvckxodjBPN3QxOGV3VVNYSjFSY2xDdGxBMDA1MzNW?=
 =?utf-8?B?eGtvVDdWOHBIMGhHYXFpMi84L003anNraTVaSk9XRmxuWk1sOUpPN2tqWFR4?=
 =?utf-8?B?K0NUbENzNURmNXgxdVJnUjdLQWZRTlVVMXlMYVp6NzBGMTQwbnNkdEFYRTRK?=
 =?utf-8?B?KzdDc0ltZ0pRT1RHVlJSY01hNzN3U2hKUUphaHdzS3lLUTZTQWc3dW1JbDB1?=
 =?utf-8?B?djNYM2tKRmIzOHltY3ZuT25NTzMwWkFqRFdlUGhzRnkvRmp5cStmcTV5a3RG?=
 =?utf-8?B?SktYamJHempSU3J1N2YvWVRTaXNGU3dsS0lHb3RyUkR3dElGczNNa0QyQmhE?=
 =?utf-8?B?dGdkVllTOXZuRzRzM2I0M0lYRjcwNWZBOXVCSTI4dTdyVjhzSU56d1lhQ25D?=
 =?utf-8?B?TU84dHlYVXMvSWFRTmFNY0hCTFlMQy9xTWN0ckFnZDQ3V2xLSFRkb3VnemVz?=
 =?utf-8?B?Y1FDUFk2a2JlRnQ0S2VuN3FzQVdEZU5QOXZwSDRBOFVNU1VlZEUyNTlnMFk1?=
 =?utf-8?B?UVp2eXE5UGpnYlNLVXZMUGxVak14YlVSWVdtUUhBa1ZZMVZTWThuY3RqN1RD?=
 =?utf-8?B?MW1WSG5CVlFVTXdsenNIUGc3NjkrOGdyZkpTNEJxRDQ0SlJMMU9ialdJN1lv?=
 =?utf-8?B?dWJva2kwenRGVGpEeGV3azZwRTJleC94Zkp5SzVqOTJGdXJhbzcvUU9pV2dn?=
 =?utf-8?B?WmpRYWUwRm43SlZpbS9vVWYvVktDd2lldWZaQVpoUTVJU21mNW1CYnhWWUN4?=
 =?utf-8?B?T29Cd1JUYXVIT2VhQll0RzN6d2xQVFFHYlNybk9RekxDWlY1dWxMMGJHcytO?=
 =?utf-8?B?WFhERFRqYXJhMmdoQ1M1K2xsTC9mZXVQaEwvSkJISGV0TkRKQTA4cWlPWWVF?=
 =?utf-8?B?c3BOaHh3QXNhdVd6ODQ2eEcxOEFPRjBJRFExY1pFL01LREo5dFQ3MExVblhs?=
 =?utf-8?B?VjRCYlJiWjM5OHZENGNKMWZuS2Q3cmJEcThOdTljNmRXRlY0T2NFVVFJYXJV?=
 =?utf-8?B?WGs1YllSZytQVnQzdjJ5bEQ2OEVLd1p2SGhNVXFmc0pOUFZ6TVFCTk1TLzN1?=
 =?utf-8?B?WVhrcUkxVzMrSm1BVUlqMWtOdjVoN3pRTEFFRGF4OFBFVEdKRkFjR3RnYUkx?=
 =?utf-8?B?cnQ5cllWZDhwV0IwTmhsR1dqK1FaQncxeFp0MVRsZURza25Qb25DejRON09n?=
 =?utf-8?B?TGNad1A2cjhaNFNWVWZxWFQzQU8zUFdoWnRiYUg2WG5xd2pUWjFydTk4T2py?=
 =?utf-8?B?azB5UlFtRzRzNmVTNDEwNjRRbmJyRm1XTUlmZFBla2JrOXlJRk44NG43K3Br?=
 =?utf-8?Q?siLjKKZxBq5SLXH3Q9nN5GavS?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 3ae86eac-c45e-40f5-b761-08dbd95b9723
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Oct 2023 15:19:20.5068
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: WTbLLdu779thhqbQn7VSuy7fEFfZ0USnhgnOz6mjQF1SGOUX0AlQk9eNvg5QG/JdjVWh5M6osjsBgc5HxQDEXg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB9208

On 30.10.2023 16:14, Roger Pau Monné wrote:
> On Mon, Oct 30, 2023 at 01:24:52PM +0100, Jan Beulich wrote:
>> On 26.10.2023 17:19, Roger Pau Monné wrote:
>>> Maybe the issue is that PV_SHIM_EXCLUSIVE shouldn't have been a
>>> Kconfig option in the first place, and instead a specific Kconfig
>>> config file?
>>>
>>> Maybe it's not possible to achieve the same using just a Kconfig
>>> config file.
>>
>> I'm afraid I don't understand what you mean by "Kconfig config file". It
>> can't really be just another .../Kconfig file somewhere in the tree, as
>> it doesn't really matter where an option like this would be defined.
> 
> No, I was thinking of splitting what PV_SHIM_EXCLUSIVE actually
> implies, for example by adding CONFIG_DOMCTL_HYPERCALLL or
> CONFIG_PLATFORM_HYPERCALL and re-work the pvshim_defconfig config file
> based on those, so that we don't end up with negative relations.
> 
> Note sure all usages of PV_SHIM_EXCLUSIVE can be split in such a way,
> maybe we would need some compromise.

Wouldn't such a CONFIG_DOMCTL_HYPERCALL then still want to depend on
!PV_SHIM_EXCLUSIVE, which is the kind of dependency we want to avoid?
Aiui the two (splitting and inverting) are largely orthogonal aspects.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Oct 30 15:22:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 15:22:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625193.974219 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxU6N-0006MS-H3; Mon, 30 Oct 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 625193.974219; Mon, 30 Oct 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 1qxU6N-0006ML-EP; Mon, 30 Oct 2023 15:22:51 +0000
Received: by outflank-mailman (input) for mailman id 625193;
 Mon, 30 Oct 2023 15:22: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=Hhfi=GM=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qxU6M-0006MF-62
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 15:22:50 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur04on0603.outbound.protection.outlook.com
 [2a01:111:f400:fe0e::603])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 2f3f52b7-7738-11ee-98d6-6d05b1d4d9a1;
 Mon, 30 Oct 2023 16:22:49 +0100 (CET)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS8PR04MB8184.eurprd04.prod.outlook.com (2603:10a6:20b:3fa::24)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.15; Mon, 30 Oct
 2023 15:22:46 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6954.016; Mon, 30 Oct 2023
 15:22: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: 2f3f52b7-7738-11ee-98d6-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Ax2XOwWoE8SoAXof9VkX2mDx6kkpJkGMcHCGgwn0ihM26DbLqmk+AQM4xF8RXf8Qi7AjbMPUqzD/jH59KG4rWLr96nbpVh0UNhl268oQp7Jj/Y1OI7+jRzSecFjIEYn98g4t1TJP+R7toK0LW/IgtMWVqv/lSSO6FhUJHRtf9xS7FPeFTOIcpB5NrXw7kUdS6L3vJ9tv8NDIJEkcK3zlBfkaJALT9gj65OEQcuGmRQoYgYN8xiJ1itYJMk6Nw6/iONa0k8VnZHA5YMiWMi73LJ5/QicjXzpqkoGeb0DgOPHIktYSWKhYB804PAioBWHe2a6lr1wKKYjlju3g9U2xSg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=b5eJgNAarf01l8HJko6NigK4Gg5ZuB+Gyc/7tHfGWBE=;
 b=jQmLC6V7iuhs6RAm8KuMsPX6YnkjB3z+6lLpkqMq4FezRQmtw3CISFgCtfSMFEOdobmR56wJ3hb9UFKWUFMi467AsMBJO1oF08W8whQQ4PI3Kpdng9+qVGdHob2N6rWEvOZvddRD7jcRLAmAhDiRftTuQZwLpOOwvs7KLn6F/6O2AMQZSlvRniQ76otxxWSRqX232Zrz8wqFUV9y26/qUpba1zVLy2TTtVzVwrFgm4OVmqnBDN6+S1RJ3kl+AQtYHXd+mt/hIWlOLrb1WnDfEMUlgkFrIgGzTVl5COVXoJ05MZ8sFXdKoEfixs3ATKzEvbL008q2+pnh1BCTUhEKIg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=b5eJgNAarf01l8HJko6NigK4Gg5ZuB+Gyc/7tHfGWBE=;
 b=t2YOPQ67bB0nfvqBpanZbp5QDsLpFB+0j2+3Z3n4W1i47G4ZXXsYTrUhHZHr6th8Gk7yt7qKXPAHdfqMm2IoZORbU2XrT5ozTJz4uxae/NljzafAMlnprmI0SrlAZwKQx29BVNH1vI7urFtzw+pjzbpYC3OdCkuGcEkShE1KBlDFpCY5ZcTJpVFgeR9z7TTAKufuy7JjIXlHTBX6yxKVLlD5Lg48PN8X2ogwxO4apxmzwKH/xOm+CtlmxO2PVp7vCB4XkdK9jJb1ggjIOY3ejWBNGfVn3kiGW/ux1p+c19gLD4QponuuPdbYe/gd/g7h2PvybjNp+Ct02vid99bD0A==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <7b52d551-3c42-0769-f421-c8ee414757b8@suse.com>
Date: Mon, 30 Oct 2023 16:22:47 +0100
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [XEN PATCH][for-4.19 v4 4/8] x86_64/mm: express macro CNT using
 ISOLATE_LOW_BIT
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.cooper3@citrix.com, roger.pau@citrix.com, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <cover.1698410970.git.nicola.vetrini@bugseng.com>
 <8e56caec1dfa2ef9a528d58935f16c537adfdbea.1698410970.git.nicola.vetrini@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <8e56caec1dfa2ef9a528d58935f16c537adfdbea.1698410970.git.nicola.vetrini@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0127.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:9e::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_|AS8PR04MB8184:EE_
X-MS-Office365-Filtering-Correlation-Id: 6508f617-193b-4062-70a5-08dbd95c11bf
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	Vf7UZLfxtFeCqUbpTY8iwK+//ZQt9VFZAEy2HKI0l6fHtq1YE82LtCYaNeGERdDthcJy+YhYu4eAhGS+9wBTC84mubC1Kc0iJrUzH/lXvO+r/wEwBZPn6LbdgSi7FIjiRIfbjak/Oh0Y9LFkAEI4DlME/J6PgGmpsNpcl5Nk+oIka2bc6yrtJFLsVC97EldGWp9eja12sz0vTJOkdH4pOrYACRBwJlG5ugGeFP7tc/daCGUGTF7ztDixoIaPgobrnq9wszfSDtQ5ruFuXFbdZyI1R2Wu4CWb6V0VG1V0SEsod8E5sOUwFq0U0/vryCO0s8GNNW3BhfI3M5xzZ+8OV0AirUTTp0rXkt+kowSEuii2LyF7BCi7LyvfBTYpGL3RBybViDD0kqbGmN6W9vJIJOrcMzIGKgkNd1bfixTcj0Xx7Sha9MxMKFgkPThg4PimrMD1Qm4oTixs/UZ7E1ATQmOZUqfLe/4OHo25BUublEJoVVgfbr0e212vjJb1pGFjLS21mKQBDeBcUaZ+2soS4m92VLvelKkYuL3qnht38MEmwcliKbp6ERWjeaZKC/ZvnXadW02fTX4NpU5UgK9mS1QF5ArNe9jO/maUUxZmWKLdf4Ao6zS51k26jd5u8X4sloKcP9ZXMuful1f6eAls/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)(376002)(136003)(366004)(39860400002)(346002)(396003)(230922051799003)(64100799003)(451199024)(186009)(1800799009)(26005)(31686004)(2906002)(38100700002)(5660300002)(4744005)(86362001)(7416002)(8676002)(8936002)(36756003)(4326008)(41300700001)(53546011)(478600001)(6916009)(66556008)(31696002)(6506007)(316002)(66946007)(2616005)(66476007)(6512007)(6486002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?V1MvVjlqdXIxWUhvUzhMVE9rUWdrWDR0bWwxVDJJQThMRUI2d2Zaa1hSK1pu?=
 =?utf-8?B?dWR3bXVZRU5mVkQvN1gvazZJN2Z0cG9Hck1tc1RiMXdvNnczbVVMd1FHamF5?=
 =?utf-8?B?dEdaL3JFbS9yQUxUT2N4UVdsYk03TTM1U01DTkkwVnpZWWMybDhxYmIvM3hu?=
 =?utf-8?B?OFFnRld0Sk5hL1Q2NzNxZExTM2oycS9RRFJ6THVyamw1Vm9ZYVVIOHJUMktW?=
 =?utf-8?B?MjdDNFNxay8vWXlWNzNyaUJkb3h1UlJ5RUtYYVhLYjBaM0RoTEgzUjdjTTli?=
 =?utf-8?B?R0E5aEVuSVFVVUVHTHRnNG5tWkwvVzJxZ2xORjc0bm4zUWppKzZxbDNqbjVL?=
 =?utf-8?B?OVhGdTBTZXR1U04yem50TC81cFZESXY2SWhsRFNsaFhhekU3MkxaRkQxMjNj?=
 =?utf-8?B?SndKVjFVYlYvMzZmUFN3M2Nub1hnQm4rTFdqYkU5OG5HUnNhQU1YTXN5Qlg5?=
 =?utf-8?B?QVNRVkR4VGdYMytoa1NYZzJxdm1YaGFWTy9DNGV3WEdmdnlLYjNGdnRyemNW?=
 =?utf-8?B?OU9wcUVDejN0WDBZbTNaVWltMnVrcU5wL1JlalErbHhsZ0VyVDNvSDBkNGJ1?=
 =?utf-8?B?RzVzaklwbWJoT3VKazRBbGJES1QrblJuRVd1K1NuUDRXTWZzVENrWHUxbnVw?=
 =?utf-8?B?RllKelRXWGFmanJZNFordG5XUlJUdGNHR0JSODYxenEyRndYL1IwU2svbXVR?=
 =?utf-8?B?dExkeFdob1RFQ3dWeFlLek5TYXAxVGcvRDkramxnN1ZQWWFrQUlQaHYvallG?=
 =?utf-8?B?em4ybThPTzc0YXovTmdKemN0OVFSS1pWVFQ4NWVGYmVlM1AvcjYzL09lM21h?=
 =?utf-8?B?cE84RmdBZXZGSzRSOVByUWV0cTdNdFBGblovYWpCUXVHTDB1c2FVaVh1Y0F4?=
 =?utf-8?B?a2NzQTRzN2M3RlUvNlFRenc1TzY5YW15L3pUTmpHTXlrL2QvOWZ3ZDlSRE1O?=
 =?utf-8?B?OG00YmN4SmEwS1JSOENIOHlzOER5Q09vcngzTzBhNzk2ZUdwcnZuL1d3eFor?=
 =?utf-8?B?THp1M3RZTmc5WFFKTC9xanlhNFZlZTZZTXlPZ1hxMitTR2dxRVY0L3hIRVlR?=
 =?utf-8?B?QVU5S0JjRFM3blZ4THlaQ083SjBzTEt6TEhVcGRuNkpDNnpyNTc1Z0tsVEhk?=
 =?utf-8?B?Q2dMTXZUU21vdXRUcmRWVkFWZnJKQ0FaT0ErczQzK2VXT0htNlJEQVVMR2RD?=
 =?utf-8?B?NnB0U2RFNjZjcUdyYnF4eHRMc2Y3R1BocXVTZ2RTRWJzdGtpU2M1U3lFV2Rv?=
 =?utf-8?B?TVdtSm5WSzVpRTlNcElLcnMrQ3l6NlZ3NkRCcXdmWVBnSFUwVkh3UHF1T1Yy?=
 =?utf-8?B?MTMrTHE0bkFPM04zSHMzc0Y1cnNUeE54L1IzWmREandnTFcxK2ZXcUwvVVc3?=
 =?utf-8?B?Z2JJV29XMmsyUlVMQWRvQmc4cG9Eak9PVStVVTNTdGVVWlVsWmo0VlVKTDE0?=
 =?utf-8?B?NkxXSVhObVo4a2F5dFVlblBvK3R1eDl1Wk9wOWJQK1lNejhmTEc5TkE1NFVm?=
 =?utf-8?B?ZHRuNE5VaEJuc1ZtaU0xQTM4dml6TGw1L0gxL1oraFBJSDNLUGpuUTJCS3hF?=
 =?utf-8?B?dnFpcGhDYytmY0lZR05kU0RmM01iMVgxR3RiWXU5dmJWYzVudnRidjFWbm0x?=
 =?utf-8?B?SVQvWFA3cE5xMXFMRWd4SVU0ekI0VHBYQndDVTMxNXMxUkZKb1RXZ2Z0QVRw?=
 =?utf-8?B?TEx1ekE0TWFmUVNIRkV2UlZiQXV2aFVwWHp1clhBR211WWdiYnFNSFgvdno3?=
 =?utf-8?B?TzRuNnhYYnB2VUVXNytGajkrdS8rSjFCcEFiTXY1T3NSVWJodlNGVzBLTFhq?=
 =?utf-8?B?R1ZyZlpBWWpaUTNXbUhRWCtESmZLRXJ1OFB0RnVHeHNTcWdYQzZ4M2Q1YXEv?=
 =?utf-8?B?cnFRKzhoTDZOSSs4QWczZFVDNm16R1oxcjV4VjBLaWVnOVVYZ3IvTWJsV2Vs?=
 =?utf-8?B?RnBUSS8wOWlyb1RqazFSOGYxbE83cUZabVljZ1VZNjdybFFWc1Y4TXVIaTlW?=
 =?utf-8?B?TmZlalZjcDlyNlVTaEQ5b2I2UXRCYjIvN2Q4NGs4MVo2YlhuR1RGemdNMnJk?=
 =?utf-8?B?N1VqM2MyUEI5Nkt0WTRrcDdDYnJuYWFtc1d2eStGV0F2Q3haL2lsM2I0cGlG?=
 =?utf-8?Q?DCzyZgwyXCLWEy5boIY2lQ1vc?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 6508f617-193b-4062-70a5-08dbd95c11bf
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Oct 2023 15:22:46.2439
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 7Sg4eAoaXcNoect9NaHjZo95s/3IsRgzYUZk9ePMvlp829uzOJJ+Uq8ehjN6wUgoDDG8UBHxFDkdant9PaOPWg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB8184

On 27.10.2023 15:34, Nicola Vetrini wrote:
> The various definitions of macro CNT (and the related BUILD_BUG_ON)
> can be rewritten using ISOLATE_LOW_BIT, encapsulating a violation of
> MISRA C:2012 Rule 10.1.
> 
> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>

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




From xen-devel-bounces@lists.xenproject.org Mon Oct 30 15:23:28 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 15:23:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625195.974229 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxU6x-0006sm-Pi; Mon, 30 Oct 2023 15:23:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625195.974229; Mon, 30 Oct 2023 15: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 1qxU6x-0006sf-MY; Mon, 30 Oct 2023 15:23:27 +0000
Received: by outflank-mailman (input) for mailman id 625195;
 Mon, 30 Oct 2023 15:23: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=3VkP=GM=cloud.com=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qxU6w-0006sV-I0
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 15:23:26 +0000
Received: from mail-ej1-x633.google.com (mail-ej1-x633.google.com
 [2a00:1450:4864:20::633])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 451be4d7-7738-11ee-98d6-6d05b1d4d9a1;
 Mon, 30 Oct 2023 16:23:25 +0100 (CET)
Received: by mail-ej1-x633.google.com with SMTP id
 a640c23a62f3a-9c773ac9b15so689307566b.2
 for <xen-devel@lists.xenproject.org>; Mon, 30 Oct 2023 08:23:25 -0700 (PDT)
Received: from localhost ([213.195.118.109]) by smtp.gmail.com with ESMTPSA id
 v13-20020a170906564d00b009c74c56d71dsm6190488ejr.13.2023.10.30.08.23.24
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 30 Oct 2023 08:23: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: 451be4d7-7738-11ee-98d6-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1698679405; x=1699284205; 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=0ZaDyAaxmEd7xtQYCZdb/vfUPBQtnW0nFhGBd9NlsfI=;
        b=Qa8EsISLAjc7mRKMjlCHpAMb8ErIzI2QhylEeiJM8tpqrtMdAQcih8Z10WT76yY1QA
         QwvZWj6UKHQ+VZQ0/VpVPsA7OZ56dLZ2ScW1MfPCfPTRYY6tNHjVryfYqE4LSBnK/w7F
         wm9uJUayJmr717mamw7Fv5yleWShZeA2dFiBs=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698679405; x=1699284205;
        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=0ZaDyAaxmEd7xtQYCZdb/vfUPBQtnW0nFhGBd9NlsfI=;
        b=a3EzVB7rNDShAbYZI/P/24uXZZs1rUfuBcY2gCR1D0eR3QoDqXOIalKZUaezg847sp
         4d1QA/Kpn/rtHkiqhmcc47v4VmgAgWEtYKSafOTlBA+GsE3uEjI2OlHcsmImf6XoRtNF
         EXA0j5mzKG/ULFAawuv+jlZvOZe2J/5jolydw6B6pFjCG+7fol/EpLyzfCGYdsrgfvLz
         DnYubgRYX3MY+ApBz1Rk0b9euw6kksi8oA3/Ff0sgnkEPD9kYYKKFdH8cUPNJJuK4m4y
         Gv/ixOmdkEKhYegRb7Z80Uc1ncjYD/x3LeM9GHIkn5KPpFhaKaujGj6jTQhD0VAl6f8A
         R2WA==
X-Gm-Message-State: AOJu0YwTCLKMIBrG0VSTvCxGtRM1NAbFNEj3YSQvvf2R5JmPL+BpRjD0
	op4HEWll+uK2qkIF6wYmKaZDkA==
X-Google-Smtp-Source: AGHT+IHEkIQ5PBU2n/s/WapZ/eSj/8DX1Fc0v/DQKGYDb1s4Cv8Cm/GUjBRhQvAY2l2v42L67qk5Og==
X-Received: by 2002:a17:907:3fa4:b0:9be:8ead:54c7 with SMTP id hr36-20020a1709073fa400b009be8ead54c7mr9328758ejc.12.1698679405264;
        Mon, 30 Oct 2023 08:23:25 -0700 (PDT)
Date: Mon, 30 Oct 2023 16:23:24 +0100
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>, Wei Liu <wl@xen.org>
Subject: Re: [PATCH 4/7] x86: detect PIC aliasing on ports other than
 0x[2A][01]
Message-ID: <ZT_KbM0tzrn5cWR6@macbook>
References: <95129c04-f37c-9e26-e65d-786a1db2f003@suse.com>
 <27dd8f40-1ea6-1e7e-49c2-31936a17e9d7@suse.com>
 <ZToksEP1Fg8MscdK@macbook>
 <86eb1c0d-ac95-247b-16c3-9c4871398082@suse.com>
 <ZTponIYDYDWRZhzi@macbook>
 <75026813-03fe-3a46-2274-b93e98f62f89@suse.com>
 <ZTqDjNSBmXeblsud@macbook>
 <d3da9300-781f-9abb-158b-0c82d36228f5@suse.com>
 <ZT_IP_-X4oLhmcFT@macbook>
 <e4929b28-5608-bba8-9953-270f408e32eb@suse.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <e4929b28-5608-bba8-9953-270f408e32eb@suse.com>

On Mon, Oct 30, 2023 at 04:19:22PM +0100, Jan Beulich wrote:
> On 30.10.2023 16:14, Roger Pau Monné wrote:
> > On Mon, Oct 30, 2023 at 01:24:52PM +0100, Jan Beulich wrote:
> >> On 26.10.2023 17:19, Roger Pau Monné wrote:
> >>> Maybe the issue is that PV_SHIM_EXCLUSIVE shouldn't have been a
> >>> Kconfig option in the first place, and instead a specific Kconfig
> >>> config file?
> >>>
> >>> Maybe it's not possible to achieve the same using just a Kconfig
> >>> config file.
> >>
> >> I'm afraid I don't understand what you mean by "Kconfig config file". It
> >> can't really be just another .../Kconfig file somewhere in the tree, as
> >> it doesn't really matter where an option like this would be defined.
> > 
> > No, I was thinking of splitting what PV_SHIM_EXCLUSIVE actually
> > implies, for example by adding CONFIG_DOMCTL_HYPERCALLL or
> > CONFIG_PLATFORM_HYPERCALL and re-work the pvshim_defconfig config file
> > based on those, so that we don't end up with negative relations.
> > 
> > Note sure all usages of PV_SHIM_EXCLUSIVE can be split in such a way,
> > maybe we would need some compromise.
> 
> Wouldn't such a CONFIG_DOMCTL_HYPERCALL then still want to depend on
> !PV_SHIM_EXCLUSIVE, which is the kind of dependency we want to avoid?
> Aiui the two (splitting and inverting) are largely orthogonal aspects.

No, CONFIG_DOMCTL_HYPERCALL could be promptless option enabled by
default and disabled by the pvshim_defconfig.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Mon Oct 30 15:27:35 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 15:27:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625202.974240 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxUAo-0000aZ-E2; Mon, 30 Oct 2023 15:27:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625202.974240; Mon, 30 Oct 2023 15:27: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 1qxUAo-0000aS-9M; Mon, 30 Oct 2023 15:27:26 +0000
Received: by outflank-mailman (input) for mailman id 625202;
 Mon, 30 Oct 2023 15: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=3VkP=GM=cloud.com=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qxUAn-0000Z3-0b
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 15:27:25 +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 d2e80b18-7738-11ee-98d6-6d05b1d4d9a1;
 Mon, 30 Oct 2023 16:27:23 +0100 (CET)
Received: by mail-ej1-x632.google.com with SMTP id
 a640c23a62f3a-9d224dca585so288125366b.1
 for <xen-devel@lists.xenproject.org>; Mon, 30 Oct 2023 08:27:23 -0700 (PDT)
Received: from localhost ([213.195.118.109]) by smtp.gmail.com with ESMTPSA id
 lx21-20020a170906af1500b0099bd1a78ef5sm6190991ejb.74.2023.10.30.08.27.22
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 30 Oct 2023 08:27: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: d2e80b18-7738-11ee-98d6-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1698679643; x=1699284443; 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=oDv9YoFrTnA29vimrVV31aE1YbJjtL8YXlrkJxpuVGg=;
        b=WNI1LliKylmGGxxePJ+iTV0MzrjflAzHZzj0dRAypzR9RlCo6ENxNp+55rdN8o6jyo
         6lkM+rQx4DaRHvJXkmYqEt2karXJVWLr5A/aWBlsYoMyjoyilA2PaDijMwq0zb715CgV
         B3OZejn7sj2+Q4z2p4jIfx/e28npm7vSRlYpk=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698679643; x=1699284443;
        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=oDv9YoFrTnA29vimrVV31aE1YbJjtL8YXlrkJxpuVGg=;
        b=F87O53pC/nhYuSwnYaoq2dqkQyH1GHARNcdjjTjqAtgqYA1Q+IXjxex4Rr80SWW3Mh
         VdjGm8vuNxusyxaHKh8LH1JR0fu35FUs0Iin61TbIdr0GOWQF6UjmDCaddhtnXRYfowa
         4veOqUuwOvzmvrhUjugaYJVPrhrFPCC4J5LpLwo4aAq1gMWtILXlsBWp+XW328CmKJGc
         LmTBYwBMjcQSANnaGwY+861/cdkdkA2P/fy6HOmTQ8Q0VQdEdNNOz2bxs3e+i58Fg556
         17j4yGFQxcH5roQmPDz0NN9dyWPQkMhDsyTuE5ihBDB6d05Htjp13mR7OvXoaHQfkTun
         WnbQ==
X-Gm-Message-State: AOJu0Yyj2e25R/weOEsdNL1UUXvZuNCoQC79P8VcTUU+fWZp71aSEhiv
	zvnRGoZ8WM9tYciIkV+EvluoAw==
X-Google-Smtp-Source: AGHT+IHYh6gRxVsqjMxqIACJjZmvbGMdi79cgQQtSNz58cUPUrN8AzXLllwXs3QkuLf7AwHu/CBB8A==
X-Received: by 2002:a17:907:3fa2:b0:9c4:4b20:44a9 with SMTP id hr34-20020a1709073fa200b009c44b2044a9mr9719619ejc.65.1698679643073;
        Mon, 30 Oct 2023 08:27:23 -0700 (PDT)
Date: Mon, 30 Oct 2023 16:27:22 +0100
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Elliott Mitchell <ehem+xen@m5p.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] x86/x2apic: introduce a mixed physical/cluster mode
Message-ID: <ZT_LWjKgQxOE9lpj@macbook>
References: <20231024135150.49232-1-roger.pau@citrix.com>
 <ZT/Cs+MsBPibcc9D@mattapan.m5p.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <ZT/Cs+MsBPibcc9D@mattapan.m5p.com>

On Mon, Oct 30, 2023 at 07:50:27AM -0700, Elliott Mitchell wrote:
> On Tue, Oct 24, 2023 at 03:51:50PM +0200, Roger Pau Monne wrote:
> > diff --git a/xen/arch/x86/genapic/x2apic.c b/xen/arch/x86/genapic/x2apic.c
> > index 707deef98c27..15632cc7332e 100644
> > --- a/xen/arch/x86/genapic/x2apic.c
> > +++ b/xen/arch/x86/genapic/x2apic.c
> > @@ -220,38 +239,56 @@ static struct notifier_block x2apic_cpu_nfb = {
> >  static int8_t __initdata x2apic_phys = -1;
> >  boolean_param("x2apic_phys", x2apic_phys);
> >  
> > +enum {
> > +   unset, physical, cluster, mixed
> > +} static __initdata x2apic_mode = unset;
> > +
> > +static int __init parse_x2apic_mode(const char *s)
> > +{
> > +    if ( !cmdline_strcmp(s, "physical") )
> > +        x2apic_mode = physical;
> > +    else if ( !cmdline_strcmp(s, "cluster") )
> > +        x2apic_mode = cluster;
> > +    else if ( !cmdline_strcmp(s, "mixed") )
> > +        x2apic_mode = mixed;
> > +    else
> > +        return EINVAL;
> > +
> > +    return 0;
> > +}
> > +custom_param("x2apic-mode", parse_x2apic_mode);
> > +
> >  const struct genapic *__init apic_x2apic_probe(void)
> >  {
> > -    if ( x2apic_phys < 0 )
> > +    /* x2apic-mode option has preference over x2apic_phys. */
> > +    if ( x2apic_phys >= 0 && x2apic_mode == unset )
> > +        x2apic_mode = x2apic_phys ? physical : cluster;
> > +
> > +    if ( x2apic_mode == unset )
> >      {
> > -        /*
> > -         * Force physical mode if there's no (full) interrupt remapping support:
> > -         * The ID in clustered mode requires a 32 bit destination field due to
> > -         * the usage of the high 16 bits to hold the cluster ID.
> > -         */
> > -        x2apic_phys = iommu_intremap != iommu_intremap_full ||
> > -                      (acpi_gbl_FADT.flags & ACPI_FADT_APIC_PHYSICAL) ||
> > -                      IS_ENABLED(CONFIG_X2APIC_PHYSICAL);
> > -    }
> > -    else if ( !x2apic_phys )
> > -        switch ( iommu_intremap )
> > +        if ( acpi_gbl_FADT.flags & ACPI_FADT_APIC_PHYSICAL )
> >          {
> 
> Could this explain the issues with recent AMD processors/motherboards?
> 
> Mainly the firmware had been setting this flag, but Xen was previously
> ignoring it?

No, not unless you pass {no-}x2apic_phys={false,0} on the Xen command
line to force logical (clustered) destination mode.

> As such Xen had been attempting to use cluster mode on an
> x2APIC where that mode was broken for physical interrupts?

No, not realy, x2apic_phys was already forced to true if
acpi_gbl_FADT.flags & ACPI_FADT_APIC_PHYSICAL is set on the FADT (I
just delete that line in this same chunk and move it here).

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Mon Oct 30 15:27:35 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 15:27:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625203.974250 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxUAq-0000pb-Ji; Mon, 30 Oct 2023 15:27:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625203.974250; Mon, 30 Oct 2023 15:27: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 1qxUAq-0000pS-GM; Mon, 30 Oct 2023 15:27:28 +0000
Received: by outflank-mailman (input) for mailman id 625203;
 Mon, 30 Oct 2023 15: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=DIyV=GM=arm.com=Bertrand.Marquis@srs-se1.protection.inumbo.net>)
 id 1qxUAp-0000Z3-8v
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 15:27:27 +0000
Received: from EUR01-VE1-obe.outbound.protection.outlook.com
 (mail-ve1eur01on0605.outbound.protection.outlook.com
 [2a01:111:f400:fe1f::605])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id d4203ae9-7738-11ee-98d6-6d05b1d4d9a1;
 Mon, 30 Oct 2023 16:27:26 +0100 (CET)
Received: from AS8PR04CA0131.eurprd04.prod.outlook.com (2603:10a6:20b:127::16)
 by PAVPR08MB9258.eurprd08.prod.outlook.com (2603:10a6:102:308::19)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.28; Mon, 30 Oct
 2023 15:27:21 +0000
Received: from AM2PEPF0001C714.eurprd05.prod.outlook.com
 (2603:10a6:20b:127:cafe::bb) by AS8PR04CA0131.outlook.office365.com
 (2603:10a6:20b:127::16) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.28 via Frontend
 Transport; Mon, 30 Oct 2023 15:27:21 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM2PEPF0001C714.mail.protection.outlook.com (10.167.16.184) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6933.15 via Frontend Transport; Mon, 30 Oct 2023 15:27:19 +0000
Received: ("Tessian outbound e243565b0037:v228");
 Mon, 30 Oct 2023 15:27:19 +0000
Received: from d868d0525783.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 65D4F262-D49C-43D0-9452-DEE1DD390069.1; 
 Mon, 30 Oct 2023 15:27:12 +0000
Received: from EUR01-VE1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id d868d0525783.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Mon, 30 Oct 2023 15:27:12 +0000
Received: from AM6PR08MB3784.eurprd08.prod.outlook.com (2603:10a6:20b:85::25)
 by DB9PR08MB6635.eurprd08.prod.outlook.com (2603:10a6:10:254::12)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.31; Mon, 30 Oct
 2023 15:27:09 +0000
Received: from AM6PR08MB3784.eurprd08.prod.outlook.com
 ([fe80::ce62:ebc6:8559:67e9]) by AM6PR08MB3784.eurprd08.prod.outlook.com
 ([fe80::ce62:ebc6:8559:67e9%4]) with mapi id 15.20.6933.019; Mon, 30 Oct 2023
 15:27: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: d4203ae9-7738-11ee-98d6-6d05b1d4d9a1
ARC-Seal: i=2; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=pass;
 b=MapmhiFB3/VsBPGtmezgOXNo2Ei4MPfH8vEev5GUEshvgV2l9KUchQYUYf65yf7+8779NasQu1DgsHQesQQ7s3ZEDXsv80n0rEOOtglhZXrGFuUrpzMHStNouA8c/ZQfsInxNZ50CHHGuKrRkzMqkmImfGFg9HXOIGhMjkyriLEbgumXoINQgMn9F8i7/wRKYc/Yky+nSn5GJE2S7dJYwrzdTvS4PaW3+cKBb0qZK2QJQtOEQCoRof5s5pqaGa/kVRs5Ls1th85vs602Q77QyzzH+v6UIiyNxoy/xEUvpaX8FXystMcU698JmlvpxyXVZWoouGKwpzwYKbn3urevvw==
ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=B1BpK4nmNdwq8973AZFAVqVffbPuHIuOgWx3KVCxSJE=;
 b=EXBPfBZR2PE2whFfaMPGEIlJFYYLBNYhvzLF2PDCuTIWreTNyX5TBRQN053dszx5yfdVy++L3Fi8zIBXg1DzTjojzngZNQTHPEkNDwgirnkqO9DmnXDE7lOpi1nqDtORVvKUot+8zEVaXztlegcNsh5fpjoEb4oHUcyPQ/m3SSKGxtEHb3kZV4U2arCFbWaeKwEu79qvjttRHbelO0kjWOW8RL0IWPbUhF4f3Eqbyr/hV11QCZW85ipV7VsfFKqUzdNL5YZyPjAL5gulz93dG72KFtZ95dnw1e1zXmugVw4gT7kqB2pnnAhnMkiA5QPxcRl2uA9c9+AeARl7HUPxQA==
ARC-Authentication-Results: i=2; mx.microsoft.com 1; spf=pass (sender ip is
 63.35.35.123) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=arm.com;
 dmarc=pass (p=none sp=none pct=100) action=none header.from=arm.com;
 dkim=pass (signature was verified) header.d=armh.onmicrosoft.com; arc=pass (0
 oda=1 ltdi=1 spf=[1,1,smtp.mailfrom=arm.com] dkim=[1,1,header.d=arm.com]
 dmarc=[1,1,header.from=arm.com])
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=B1BpK4nmNdwq8973AZFAVqVffbPuHIuOgWx3KVCxSJE=;
 b=DZpfxd32IxYGf6cLIVNI+5gQFCghX9//ol5OpDpzEn/d6iAcncBR1WEO0AOuBXUoD2ceslQxWnFbypGrWa8mhmk3ksA7M4yk7qHL/pUYBc3vAu576Ko9l5tBO/jES7QEIc9TESqrZl0W0pHVvIpqQcvBnkwEy3mlmSlX4TcWpdE=
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: f78a95aad863e35d
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=gWYr16xpPGJFyAe1x1cTLfOsN8LNDtMs/DQvfcQzVmMxsasFIssxEU6Ip96pZdtvTiXpgAiL4fkE84r9Hc9L2eG5tRuR02LO/2Qs/MuQ18QppvZni9dl5cDwoLK1V+TKa1BB3Hcpfdatl0TKb5hiJsZTWSlpyu9H+LIChXkJVMuua3Bsl3eZf7rj58ErXRj+RGASETBJpLHk3f5lqQrdQjXKRJ2ka0ESuZ65cmTmpX6cFnaHmQPisfd9toKzOf7zB7cJhkGTsMaIq7VSxLyoadbcM8Vf/APafkNA3kBB59EQ63IwXl3xdHSp1K9GIlZ8krXXaHo8CTI/EQ2P5DjEVQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=B1BpK4nmNdwq8973AZFAVqVffbPuHIuOgWx3KVCxSJE=;
 b=Ofk/WrCFaNddWQAVJmDoB6Dp/CLdjKpJn3vfMlXsA+lFOTOGXzwTEHCR1leN9mpueswgG3k8OyTdtn+uyFHVYFBfVdIHt5vsB8dVUHks1JplWVpB31/PZKQQCeOco3ddO5CO+y9WXuKrWYzwMZCK5NgEJ+6yeTmjyqWV8y+5/yqtr4u98H4EXBKL7d79TSYHmABTt64SdMUdwbufA/bGBc4rGbevPEGJDRXVblMn+DdRxwsFxC0ydCoWk/oonlmnjHnUeNF/tbrQfEibed7U4m7VmYdnfNWFZchzJrlVDV6G/BoASnMM52T5b5Az2rxJsCA61E9ajF9KVUssjrUN0A==
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=B1BpK4nmNdwq8973AZFAVqVffbPuHIuOgWx3KVCxSJE=;
 b=DZpfxd32IxYGf6cLIVNI+5gQFCghX9//ol5OpDpzEn/d6iAcncBR1WEO0AOuBXUoD2ceslQxWnFbypGrWa8mhmk3ksA7M4yk7qHL/pUYBc3vAu576Ko9l5tBO/jES7QEIc9TESqrZl0W0pHVvIpqQcvBnkwEy3mlmSlX4TcWpdE=
From: Bertrand Marquis <Bertrand.Marquis@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>, Volodymyr Babchuk <volodymyr_babchuk@epam.com>,
	=?iso-8859-1?Q?Roger_Pau_Monn=E9?= <roger.pau@citrix.com>, Shawn Anastasio
	<sanastasio@raptorengineering.com>, Oleksii Kurochko
	<oleksii.kurochko@gmail.com>
Subject: Re: [PATCH] arch: drop get_processor_id()
Thread-Topic: [PATCH] arch: drop get_processor_id()
Thread-Index: AQHaCzUe0SAqyX2Ma0ufwbFDL3dTKrBidKAA
Date: Mon, 30 Oct 2023 15:27:08 +0000
Message-ID: <A1FEFBB6-0A72-4B96-A18E-73033886DDDF@arm.com>
References: <446254b4-8231-f6db-5f18-ed367503454c@suse.com>
In-Reply-To: <446254b4-8231-f6db-5f18-ed367503454c@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_|DB9PR08MB6635:EE_|AM2PEPF0001C714:EE_|PAVPR08MB9258:EE_
X-MS-Office365-Filtering-Correlation-Id: f01779e6-056d-465e-e10e-08dbd95cb4b2
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:
 A+YTSy0tVNkOR7sAfwySGl+qO8PctCbkyobIqeEJL5+2pckk1vhij3SXXm1lJpv0OUBf/dm6BPtLLE8Xw8sucJpEiA+Eb4HLTxFqPnDl0riYzbX7fx6YmLQRtnzQnwMu5ecIJ0L5HbWJYThFVFv2EpOkxOL4kGw3ba5Qzft0xFu2k1Ic+d8mIgW+TJLV4PA9Cws005EttfjTG/mpPGE1k6gf3p36IrffonREUBSqMcOyAExqitnjpiB6YpgUq03Ic6cFr0DN0qxzjSapmm3vutbwJfdFldZageGNuMELg+4vQzuYF6uViVldKyipElp64Lh506PjkpgujMvwKZi/EClxgw6j7FJWNoNObEzzD6FaPJ+MlKuwLd9QjlyU07Xv5t4u/cUKC0agOmtAX7zC9kds4sMEVnwUHMc4G2DWgfrGf73tb3jzgCh5zstAQQmteFzrijiqCbtwVknQ4fcPcinA4mFUywAtH2iAahErChjI2s2SP1yIUk3UhCTuJevoDlh4hpm90M45T9uRcfgtZ3vzmRaIdMxFwwSmk3rmnZSUnCetVExtB1DlKovpWKB0JjDD2OHDIXBMk0WuweQBVeuREKC2Ilq7kEgSo2VqEkrs3T/EK8MAX+zL8PunrT+3A4ffzEIBbMuDzykZW/lD3g==
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)(136003)(376002)(346002)(396003)(230922051799003)(186009)(1800799009)(451199024)(64100799003)(54906003)(2906002)(41300700001)(33656002)(38100700002)(76116006)(64756008)(122000001)(478600001)(66946007)(66556008)(316002)(2616005)(71200400001)(66446008)(91956017)(53546011)(6512007)(6916009)(66476007)(6486002)(83380400001)(6506007)(4326008)(36756003)(86362001)(7416002)(5660300002)(8936002)(8676002)(38070700009)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="iso-8859-1"
Content-ID: <717148E0D418564AB528D96D8C2D36FB@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR08MB6635
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:
 AM2PEPF0001C714.eurprd05.prod.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	b96ef698-f9fb-4fb5-b643-08dbd95cae74
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	QHPc/F4jHJRwvN5HODiGQCW96ZzYMh5MsteRJngvM3xiI3aaNMzJY4X/HVbdc/jXAEX8bxFtKtCDHZaMzKVHd2Y9N03sXp1sVM0/1uvvKtkZAMteH2km+DBpoL729VQN1g/551HAGRDBPh0+P5Wn2XLmCckxhlumD9Lt2HxuX2jmDWCkfVPyt4qB9+l//mukiivVcki+GBLksAMsLBk6fqNZ1zynZojYUGyDeWXg6XDS9uOF46vQxXFIyUFb8tD6FufTG/0KeHHie941N4pbVTi23f2C7kujqyZ2j8eNDWOBxlZCvRXl+ZMvyH2QgzxnbVmKMYYIC7Z211SP7uEmX3HyHFiig07plkPMCVxZZZ9/6F0RfxvJtLYkvWvPOe6n1dIWvqrbCTTCnXvsDkSPOXvaldW7nBiaUCqXmGUhFj/ZrG01lTFQ+/nwaLKJhUjzcWbVVBK8e46t/o2B19rMHKT9zAaAN2JNoHkvMjJ6VtPFMP9OlMwQnP5Z+FE4xUgCoE/gl4jNnPX+oeuV3SCBBHLmdBA9RDClv7Jd19zH8suyCaDHhoRhgOpZAf5YvTQ1gPXy63j0Adpivkr//micBcAUqsq7vnkayCXAsJmJNadWini4AJSeWDJ2d7iIuAAw40lxWY9JPPpelP5epkBTh5oxL2bOgMSz1CsaBQjUaTKtX4D4GNDdkXTwyU+MlKHJ9Gy/KY4bFD2qQLOsIPrg7wv4vvHl949Hnu3JFsFSwNAHR0BPv98VOhzkbM08EwI9
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)(451199024)(186009)(1800799009)(64100799003)(82310400011)(40470700004)(36840700001)(46966006)(6512007)(40480700001)(47076005)(6506007)(478600001)(6486002)(36756003)(336012)(70586007)(26005)(70206006)(356005)(2616005)(36860700001)(82740400003)(83380400001)(53546011)(107886003)(54906003)(316002)(81166007)(8936002)(8676002)(6862004)(4326008)(40460700003)(5660300002)(33656002)(86362001)(2906002)(41300700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Oct 2023 15:27:19.4272
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: f01779e6-056d-465e-e10e-08dbd95cb4b2
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:
	AM2PEPF0001C714.eurprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAVPR08MB9258

Hi Jan,

> On 30 Oct 2023, at 14:29, Jan Beulich <jbeulich@suse.com> wrote:
>=20
> smp_processor_id() is what we commonly use; there's no need for it to
> have an alias.
>=20
> Signed-off-by: Jan Beulich <jbeulich@suse.com>

For the arm part:

Reviewed-by: Bertrand Marquis <bertrand.marquis@arm.com>

Cheers
Bertrand

>=20
> --- a/xen/arch/arm/include/asm/current.h
> +++ b/xen/arch/arm/include/asm/current.h
> @@ -53,7 +53,7 @@ static inline struct cpu_info *get_cpu_i
>=20
> DECLARE_PER_CPU(unsigned int, cpu_id);
>=20
> -#define get_processor_id()     this_cpu(cpu_id)
> +#define smp_processor_id()     this_cpu(cpu_id)
> #define set_processor_id(id)                            \
> do {                                                    \
>     WRITE_SYSREG(__per_cpu_offset[(id)], TPIDR_EL2);    \
> --- a/xen/arch/arm/include/asm/smp.h
> +++ b/xen/arch/arm/include/asm/smp.h
> @@ -11,8 +11,6 @@ DECLARE_PER_CPU(cpumask_var_t, cpu_core_
>=20
> #define cpu_is_offline(cpu) unlikely(!cpu_online(cpu))
>=20
> -#define smp_processor_id() get_processor_id()
> -
> /*
>  * Do we, for platform reasons, need to actually keep CPUs online when we
>  * would otherwise prefer them to be off?
> --- a/xen/arch/arm/smpboot.c
> +++ b/xen/arch/arm/smpboot.c
> @@ -401,7 +401,7 @@ void start_secondary(void)
> /* Shut down the current CPU */
> void __cpu_disable(void)
> {
> -    unsigned int cpu =3D get_processor_id();
> +    unsigned int cpu =3D smp_processor_id();
>=20
>     local_irq_disable();
>     gic_disable_cpu();
> --- a/xen/arch/x86/include/asm/current.h
> +++ b/xen/arch/x86/include/asm/current.h
> @@ -99,7 +99,7 @@ static inline struct cpu_info *get_cpu_i
> #define set_current(vcpu)     (get_cpu_info()->current_vcpu =3D (vcpu))
> #define current               (get_current())
>=20
> -#define get_processor_id()    (get_cpu_info()->processor_id)
> +#define smp_processor_id()    (get_cpu_info()->processor_id)
> #define guest_cpu_user_regs() (&get_cpu_info()->guest_cpu_user_regs)
>=20
> /*
> --- a/xen/arch/x86/include/asm/smp.h
> +++ b/xen/arch/x86/include/asm/smp.h
> @@ -48,13 +48,6 @@ extern void cpu_exit_clear(unsigned int
> extern void cpu_uninit(unsigned int cpu);
> int cpu_add(uint32_t apic_id, uint32_t acpi_id, uint32_t pxm);
>=20
> -/*
> - * This function is needed by all SMP systems. It must _always_ be valid
> - * from the initial startup. We map APIC_BASE very early in page_setup()=
,
> - * so this is correct in the x86 case.
> - */
> -#define smp_processor_id() get_processor_id()
> -
> void __stop_this_cpu(void);
>=20
> long cf_check cpu_up_helper(void *data);
> --- a/xen/arch/x86/mm/mm-locks.h
> +++ b/xen/arch/x86/mm/mm-locks.h
> @@ -122,7 +122,7 @@ static inline void mm_rwlock_init(mm_rwl
>=20
> static inline int mm_write_locked_by_me(mm_rwlock_t *l)
> {
> -    return (l->locker =3D=3D get_processor_id());
> +    return (l->locker =3D=3D smp_processor_id());
> }
>=20
> static inline void _mm_write_lock(const struct domain *d, mm_rwlock_t *l,
> @@ -132,7 +132,7 @@ static inline void _mm_write_lock(const
>     {
>         _check_lock_level(d, level);
>         percpu_write_lock(p2m_percpu_rwlock, &l->lock);
> -        l->locker =3D get_processor_id();
> +        l->locker =3D smp_processor_id();
>         l->locker_function =3D func;
>         l->unlock_level =3D _get_lock_level();
>         _set_lock_level(_lock_level(d, level));



From xen-devel-bounces@lists.xenproject.org Mon Oct 30 15:35:55 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 15:35:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625210.974260 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxUIs-00032F-Ce; Mon, 30 Oct 2023 15:35:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625210.974260; Mon, 30 Oct 2023 15:35: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 1qxUIs-000328-9g; Mon, 30 Oct 2023 15:35:46 +0000
Received: by outflank-mailman (input) for mailman id 625210;
 Mon, 30 Oct 2023 15:35: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=Hhfi=GM=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qxUIq-000322-KQ
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 15:35:44 +0000
Received: from EUR03-AM7-obe.outbound.protection.outlook.com
 (mail-am7eur03on20630.outbound.protection.outlook.com
 [2a01:111:f400:7eaf::630])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id fc15659c-7739-11ee-9b0e-b553b5be7939;
 Mon, 30 Oct 2023 16:35:42 +0100 (CET)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM8PR04MB7426.eurprd04.prod.outlook.com (2603:10a6:20b:1d7::10)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.14; Mon, 30 Oct
 2023 15:35:40 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6954.016; Mon, 30 Oct 2023
 15:35: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: fc15659c-7739-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=F9nA2Ziux3nFyaoc2JN2XJV+b1zmmkbaWfQ+oEzw9+3Fe+s8n8Z0uvIuEQOcrED8UAV1J/K77Bhf/JKnt/1i5TYgw8Qb61WmuQThNbwFP9vVQ4dgrTIymiaEsizeFFVMwQNbsgAgreAiTGQv/hd0lKiD1Ud3A/50qn2fDt+BPPQM63H4Xq5OawTKSQPML8yEN0vKRW0g1Tk+hpq1cWMwClEonnBi3YmcO8CmSy63Fbk8m3NsI8CFGpjhD7DThWzlRTBRxrTJ04Tu7xrzdGux6JuSEin43TnZ9X+Gns0AIwU2DxPDsYDbYSKnAl5xeXvfEzqQ/+nUB8TbCE187VizTg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=XOO6TXwIgFsuiSsZDDTRIprwRoxAmkoWKLRvI2AX4Y8=;
 b=oA98L6j3T1+bLW4doJgNQ2j4AZ+uxreL5zYFZULdfkUp+VeltAGG9nqfbjegMV5SfVxHyPuGeFwwp95n0HVy2tY8ekcMubYhEC4N9rORhHEe2TBYNw3EI5D2TAGam9OmJ2kmxJ0mP60KT6Rl/4sbyLwCYRyPHMUgrEv0uFpYLKYsAUHZzpoziENHwiKqxI5bwSuQW2vfFg9t8GSv8qaCxxC+m6kNGe9R7yHkLYWHOa2n0jQn3aqaJsYkEHZycT067OPlfIgrRmMt5lRWkU36nNJr5GThHoC3JNh7P7j0v82wbldEJ/ddjOyNQouaS8yWCm0PCq8E9Ni6SK26z1Sv8w==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=XOO6TXwIgFsuiSsZDDTRIprwRoxAmkoWKLRvI2AX4Y8=;
 b=zy8ZqoUZuWo86q4m4vnSBhRkti3rp1u7l8oKO2qoghSR3ltLM/MBL1//dyO4Wuj4R7FFFZO1teG4s1CtpKcqe0M88WVKLtVAaxAr/SqxiFwn/WRbbowErgfLPSn5NofLwn+yzFD12by+UCFNYof9yPhskMGSVdjaovQg6IxgorrcAAVA2uJkerNW0DXwuKxEuK6liUFVn9Ho2kvdqv3F7d902yUcGBKBKZJZ5+4keHfb6EpoxfeHqQhSxgK7tZEEuhr9DNwKTnz947K87DHgr4ydh0WdogVZYSaq8Ctmta6tNgvaR7/hn4KMiaOgUFmQ7uJ+im3HOWgJ6ApOWtt5Zg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <23a229f8-9987-ead4-995f-a917300ac6ae@suse.com>
Date: Mon, 30 Oct 2023 16:35:41 +0100
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH 4/7] x86: detect PIC aliasing on ports other than
 0x[2A][01]
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>, Wei Liu <wl@xen.org>
References: <95129c04-f37c-9e26-e65d-786a1db2f003@suse.com>
 <27dd8f40-1ea6-1e7e-49c2-31936a17e9d7@suse.com> <ZToksEP1Fg8MscdK@macbook>
 <86eb1c0d-ac95-247b-16c3-9c4871398082@suse.com> <ZTponIYDYDWRZhzi@macbook>
 <75026813-03fe-3a46-2274-b93e98f62f89@suse.com> <ZTqDjNSBmXeblsud@macbook>
 <d3da9300-781f-9abb-158b-0c82d36228f5@suse.com> <ZT_IP_-X4oLhmcFT@macbook>
 <e4929b28-5608-bba8-9953-270f408e32eb@suse.com> <ZT_KbM0tzrn5cWR6@macbook>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <ZT_KbM0tzrn5cWR6@macbook>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR0P281CA0086.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:1e::22) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AM8PR04MB7426:EE_
X-MS-Office365-Filtering-Correlation-Id: 53f059aa-473c-49e7-a80e-08dbd95ddf09
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	9Hy/lmM7vdR6Xq45R55qpAoVDeZNx60iJuumzW/kr6DqoP8WMRvzf4i/V4pDp/YlvBeuM6hh0baqiqD8ap40wLh7dtUdUtteTJTBwsUH4I/O6lRH17uWglQyfVc8UUYY/vLKOenOOE3isQe/FLD27fec5Gg9Eo/RDzAaCl2K4uktNrX/QjfCZbLSqs3E8I7tP1wC6CTksequqWp4Haddzr7cgJ0UqnQFQpJyYBeA3A2uX7BJh2nIXrQt7psGdSPIh6WY7J246crvBtGssiBNiWdAta3orw4AwtdP+Ao7jV+jIR9oexOc7PJWluDKbk2SRzhy639WMeYyt3ITldvlVxX0jX8c5UHFPgKGfxSfxIho/15LfOGLQpFr9hJVUI4T1yNabvSbT+KAulXXPqLyDd2H2Z+3nrT+Ik5rOxnZQybOMUv8fNnC74IO2Ac5DsL8M6yKOmeyE7tqQRvc1ZY/WbbEbjf4dJ/2swpQcmFgyTf4YYTzVYqytzsYph1so7TXF+rtBzZ18qASXGiQ5xr5fVgs1biYwQj92Fu+msX9jjY0C+s5+j5BkkwfNrfha+V1H+KfE9dHhupHy7YR3vt/RgMMO5I9xZRcFjvCLkEBhImGoTPR2AkR5uGUZgjF9WJgI7X55SViryGDz2vSF5plNw==
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)(396003)(39860400002)(366004)(230922051799003)(186009)(64100799003)(451199024)(1800799009)(31686004)(26005)(2906002)(5660300002)(36756003)(38100700002)(41300700001)(6916009)(31696002)(8676002)(86362001)(8936002)(66476007)(4326008)(478600001)(2616005)(66556008)(53546011)(54906003)(6506007)(316002)(66946007)(83380400001)(6512007)(6486002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?NmVoRDNmMC9qZjkxSWtyUUszS28wVWR3T0tpRUE0VmozdE1TSE1yNDlqbHRp?=
 =?utf-8?B?S0IyYnVsNm9XN1lRcFE5TFJ3OFYyV0ZEY3kwVzdoZzlPSDc4RENqN2lPNWVK?=
 =?utf-8?B?MGFjTjQ3SUpIUmlSU0pTaSt0MWE5eU5FelRiTjVqbkFBb3ZlRXNqd0pFUkhh?=
 =?utf-8?B?UnJJVlY2aFUzQ3U3OGhXeWVGbWpYaG14akRHaU1jWW5SN1AyQ0lRSzFuNW52?=
 =?utf-8?B?U1FHY3hwMjIvQVg4bXdrNTBkMkhGOS9NN0ltN2UvNlBTSVliQzMySDk0UTFZ?=
 =?utf-8?B?VUg0R2QxcGtCaWVjb0lJQXpFQ0dSS3NhMWQvaC9uK2hyZ1I1UmtHcktzNFJC?=
 =?utf-8?B?M2RrZ2NGdUIyNGJvUVd2V1Q2b0R6U2tlZmx0djdRdUhqelUyUGg5Y09BRFMz?=
 =?utf-8?B?WTNxTmE5cW5nNWQveWhDeVZnZit6SUs1RGZHMEd3Y25QWkpmZ2Q3bS82ajVS?=
 =?utf-8?B?aUN5dWVzWlJ5RjducmdTTWk1WlE2cGlXbnk1Q1JvWWFIblRqajlQa3dLcEY2?=
 =?utf-8?B?eW5hWkVpaG4xbmVYaG5KT2VNY3pNVklrK3R5REs0b244UG9BQkMwUnUxVVJj?=
 =?utf-8?B?ZkxmdkhEZW1BQ3luQ1lhWVFsRlcvME9BZ1VxazlPTzhjZUtMOW9nN0tmZHBl?=
 =?utf-8?B?elExSms1VEZQeVlndDVmZHY4cTRnRitpRmJNc21GK2VnUjh1Q0FHdy9UdEV2?=
 =?utf-8?B?Y0YxOUtTY1BWL3VoMzhTeFdJRUhuRTBXLzdOZDRVTnZZTVBXbE9XTUI3UDlr?=
 =?utf-8?B?a0lVbmgvK0tURSs5eGVqV3JOdWtHb2pvenpEdWl1aStpb0VpbjVUaUdHVzds?=
 =?utf-8?B?MDFOM2Y1UnIzUER3Z3BMeStiS0d3c3hyYldsc0NtbTJtVFBrbFF4VFk4Q2Ri?=
 =?utf-8?B?c0IxdWxEaXNaR0IzOXhNejB3TFIzK1NTeG01OU9PM2llemNxYW9CL0VUZVo3?=
 =?utf-8?B?azZDaWdjZnJBaWp2eGRzRGJkMUp2bFo2ZWxuR1RyT3JsclQwaTB5eWtUNXpq?=
 =?utf-8?B?Y2VsdEZrTFE3bTcybXRGSDJHUGdBdGtrTmlZMHJiTWk2QldlWmk1bUNyUklF?=
 =?utf-8?B?aWNteFdreWcrZDlGVTlVQTA1N2RXSlAyRUxiRzBwbk4zVWZGUHZsZjUyNmpu?=
 =?utf-8?B?ckdhSE9wbWVFYjgrTXVwQVVBWjJYaStWdzdXUTlYdHc3bTJqMm5KZlBzQ1gz?=
 =?utf-8?B?V1ZCWCsvTFovVzdMMUp4NS9oRXZScE4yaVJvTXlLdks1cVlFanIxRmdMR3VP?=
 =?utf-8?B?WEZWNEppbitDQXFGd0ZBQTZ2a0hQQzh3T2VVS25abW1HcThxWENFbTR6dE9C?=
 =?utf-8?B?WCtSb3ErdUdDaEE3a2lBS3JSeEpSR1hNYVdoa1dDUWR5TThkd1dyVFlIVjZa?=
 =?utf-8?B?VVVxd2FkQ2NMUHlWbG4yNStETkVsUFE1VkxERWlSbHRmcDNVTmcrM0RhemxN?=
 =?utf-8?B?bFQ1T05Kd2tvVDJ5NzU1OWluazFkdkVzbmh6NEt4M2pNeC9FU0RLaTI4a1NX?=
 =?utf-8?B?bGRQY0hFY24yVkRCY0hFSTZmcVVjU1hsanRTdW9zSUgvdUN4cWh1TGowUFd2?=
 =?utf-8?B?QW5LekVneEFZZ0NFMlJ0VldpRVR4QkR1VFpOTVkzU28yVXV6TXF3OHl3N0xO?=
 =?utf-8?B?QkFVRU9DSmFHYlhzREtyTmNXY1o4VzJqNG9rc1V6STB1RUhRWFhQZlZweUM1?=
 =?utf-8?B?VERnWCt6Rk4xR1hoOGh6YzF5Qno5WE9iSDUzTDd1Z0licFAwQ2RHUUJjMnVx?=
 =?utf-8?B?cXhKZFM4aHdsRTduRFZYa2dyWERZYTlMWXgzd1FkT3Q0V2VsMTJCT3ZZTjVV?=
 =?utf-8?B?Zlo4SlhKVXBBNjY1N29UMXNuWUVSYTBhb0RlS3JBUU9McCs3OGJZQVovTlBK?=
 =?utf-8?B?N0xVNE5JZFh2Zk9Nc2NNOFZ4QldJckFxUWM4YUd1aHFMMFczRTFlcHgwcXlk?=
 =?utf-8?B?RUpWbURNN0U5MUx5bEl6cFZsdEZla3VBcU9MbjNLcDdLQlQ3RXNhZkpqbUty?=
 =?utf-8?B?cWdqQzE2cS85ZW1yaTFzRzhiTVpLNVhuY05aS2dhWVgzT1dWUWtHenJpUnBI?=
 =?utf-8?B?NW5aS2pnYkZVc2o2NDZCR3BDenVSQ0IyUEdZU2dudWZEajVTcEdtcWFoZjNF?=
 =?utf-8?Q?36vL8hvJpbH5hs6PswxtyEJZF?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 53f059aa-473c-49e7-a80e-08dbd95ddf09
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Oct 2023 15:35:40.1174
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: CwQYu/KokEBu3Y4WfWpecgah1qXxjbeC6rbwSfOHD1LPa08rCswoEdFd68pg6HEvspk8gxYSmeZQxl687hz6uA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8PR04MB7426

On 30.10.2023 16:23, Roger Pau Monné wrote:
> On Mon, Oct 30, 2023 at 04:19:22PM +0100, Jan Beulich wrote:
>> On 30.10.2023 16:14, Roger Pau Monné wrote:
>>> On Mon, Oct 30, 2023 at 01:24:52PM +0100, Jan Beulich wrote:
>>>> On 26.10.2023 17:19, Roger Pau Monné wrote:
>>>>> Maybe the issue is that PV_SHIM_EXCLUSIVE shouldn't have been a
>>>>> Kconfig option in the first place, and instead a specific Kconfig
>>>>> config file?
>>>>>
>>>>> Maybe it's not possible to achieve the same using just a Kconfig
>>>>> config file.
>>>>
>>>> I'm afraid I don't understand what you mean by "Kconfig config file". It
>>>> can't really be just another .../Kconfig file somewhere in the tree, as
>>>> it doesn't really matter where an option like this would be defined.
>>>
>>> No, I was thinking of splitting what PV_SHIM_EXCLUSIVE actually
>>> implies, for example by adding CONFIG_DOMCTL_HYPERCALLL or
>>> CONFIG_PLATFORM_HYPERCALL and re-work the pvshim_defconfig config file
>>> based on those, so that we don't end up with negative relations.
>>>
>>> Note sure all usages of PV_SHIM_EXCLUSIVE can be split in such a way,
>>> maybe we would need some compromise.
>>
>> Wouldn't such a CONFIG_DOMCTL_HYPERCALL then still want to depend on
>> !PV_SHIM_EXCLUSIVE, which is the kind of dependency we want to avoid?
>> Aiui the two (splitting and inverting) are largely orthogonal aspects.
> 
> No, CONFIG_DOMCTL_HYPERCALL could be promptless option enabled by
> default and disabled by the pvshim_defconfig.

pvshim_defconfig shouldn't play a role here. Anyone configuring a shim
build from scratch should also get a consistent set of settings. When
there's no prompt and default-enabling, I'm also having some difficulty
seeing how pvshim_defconfig could override that then.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Oct 30 15:37:06 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 15:37:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625214.974270 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxUK8-0003y6-Pz; Mon, 30 Oct 2023 15:37:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625214.974270; Mon, 30 Oct 2023 15: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 1qxUK8-0003xz-N8; Mon, 30 Oct 2023 15:37:04 +0000
Received: by outflank-mailman (input) for mailman id 625214;
 Mon, 30 Oct 2023 15:37: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=DIyV=GM=arm.com=Bertrand.Marquis@srs-se1.protection.inumbo.net>)
 id 1qxUK7-0003xr-G5
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 15:37:03 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur05on2062a.outbound.protection.outlook.com
 [2a01:111:f400:7d00::62a])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 2ad76397-773a-11ee-9b0e-b553b5be7939;
 Mon, 30 Oct 2023 16:37:00 +0100 (CET)
Received: from AM6PR10CA0099.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:209:8c::40)
 by DU0PR08MB9300.eurprd08.prod.outlook.com (2603:10a6:10:41f::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.26; Mon, 30 Oct
 2023 15:36:57 +0000
Received: from AMS1EPF0000004D.eurprd04.prod.outlook.com
 (2603:10a6:209:8c:cafe::c0) by AM6PR10CA0099.outlook.office365.com
 (2603:10a6:209:8c::40) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.28 via Frontend
 Transport; Mon, 30 Oct 2023 15:36:57 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AMS1EPF0000004D.mail.protection.outlook.com (10.167.16.138) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6933.15 via Frontend Transport; Mon, 30 Oct 2023 15:36:56 +0000
Received: ("Tessian outbound e243565b0037:v228");
 Mon, 30 Oct 2023 15:36:55 +0000
Received: from efd34c24d4d0.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 02BCC3FD-E6EE-4A5B-8B8D-BD5ED2689553.1; 
 Mon, 30 Oct 2023 15:36:49 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id efd34c24d4d0.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Mon, 30 Oct 2023 15:36:49 +0000
Received: from AM6PR08MB3784.eurprd08.prod.outlook.com (2603:10a6:20b:85::25)
 by AM8PR08MB6610.eurprd08.prod.outlook.com (2603:10a6:20b:36a::5)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.19; Mon, 30 Oct
 2023 15:36:46 +0000
Received: from AM6PR08MB3784.eurprd08.prod.outlook.com
 ([fe80::ce62:ebc6:8559:67e9]) by AM6PR08MB3784.eurprd08.prod.outlook.com
 ([fe80::ce62:ebc6:8559:67e9%4]) with mapi id 15.20.6933.019; Mon, 30 Oct 2023
 15:36: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: 2ad76397-773a-11ee-9b0e-b553b5be7939
ARC-Seal: i=2; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=pass;
 b=NDDqJ2XqjafexZUO7PuQ4PRKWceemdqO3Wd2VSrtZ4DVHIOkGrweoc11c7KuCNBYeiuTIp4A9h87/LBU/SbaaAxZz20tCT3WWe6aI7ja4PT739XKdMb6JE8I/e2sTTegsZZXlOsalsOIfv5rJD+yAm5ks+R1iCXoGDM23oGP0BhM4nauFaaazhKpuyjs6VQJ+UrdfSVMk+5FIInmDGRffqmWymuC4Kt40mAh/8WN+OhG38ePSx6BdqUCMgtnrvoSlUYokJNXTBpXQ10Wg5hbhkcQaGP7SV/iCSOrsii4VCmg3ROnUE+FspTmkylh2e2Q/Lu/AmFIk3VSNFeu8XhmsQ==
ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=gwr/EL4ijqwFB8uewRyhrarUhK0sfr5Bn6uvcIuLe7Q=;
 b=evdGVxYfCCU6TNpWpycKAgSrXBcU0J72MFezhGl0Hg5YxvZbnMQIlrTWUUTlBm7L7PTGWaIyRnQ0+Iw7QpI3KDCSt262KZT4Fe9dndyDMW9yEuOeQdtePSvdsCy/4Nf8tWzZ+J6YwuwJfL/rXPjQoYAqy1dmtPJ2Gd/zK5LF65ePNaebUbW/7bLLTkXXRGouwm+PlXpzJ1cMZWg3bgidxOtIG/GVRBvNRuyuzWNq7PAZoNAiy4Cch5WX/16MSgVDI2oksU1eVx2dl0rftE5qUrL8ODfMDMLUH8/Zzk9aEmdiCuKaS29LR1ZzKWV5z5mPdRa+OyQHPss9GVHGgUo1AA==
ARC-Authentication-Results: i=2; mx.microsoft.com 1; spf=pass (sender ip is
 63.35.35.123) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=arm.com;
 dmarc=pass (p=none sp=none pct=100) action=none header.from=arm.com;
 dkim=pass (signature was verified) header.d=armh.onmicrosoft.com; arc=pass (0
 oda=1 ltdi=1 spf=[1,1,smtp.mailfrom=arm.com] dkim=[1,1,header.d=arm.com]
 dmarc=[1,1,header.from=arm.com])
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=gwr/EL4ijqwFB8uewRyhrarUhK0sfr5Bn6uvcIuLe7Q=;
 b=3bgCSeQrX8Hel0K+9/6Nb5Z4bS3122NRIYMbuNcsfnHwTVZP8B4oTyhIHf7KvNtqillR4xWZHuKD8/QWRF7gIMbjCohxbpV6/uKHPnvp8d0VT/n/WLhT0RlgRrSgLVOeyPuPtD9cVepM3p0HRGeVnF3TDj/EllH5+jUpkc5KJ0g=
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: f5e65401750c4872
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=nKX+XPa4U/1gcGrY5ydRBidQC7XCyzdydiLA+Jhi7jEK2F9SG823R8iChdLZghu6+pm6nikv2y1LIWb0VeHp4oTzEXZxhCzx0jfiYqMEY59D3cNq0GDg1VyO6Um8n5be+Dy+iCaCic/9Vpv0ijfK/fM57770ibZuDUgRUDA6dC7IhMt3p67KR8qmiGh+3sSNZXbb3CIrfo37QmFcOgaDRGkwexX5hrnaSqnm7fnGIzfHxUUhnVJSyEi05CsNbXFhjfUJMHbybO4CCMpD35D3JDWI8BNUs3GfuDR+wIrhaxj29VZi0GlOdzDVajzB4+8wXr+F0LrbSHu+i+JIomwyvA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=gwr/EL4ijqwFB8uewRyhrarUhK0sfr5Bn6uvcIuLe7Q=;
 b=J3Umu5BSQIjTL+6O5efepmZE7yAbcdMNxFfaLZwLcM/g0sGEO2lQspFaSpSoy6xlTqXS4esEpX4sbfvSBWMwWWxQuFEq4iZWBE4ye52ObvM/buAPb0osn/wR0RhqykBQIfO58u2D9WcQ+Ef2c0IBGu1q2eTI61WxxX6+oyHTZ0Oe3kgvg19igoB9H+4txu5Bl7yLWlNqIoyH5CLZwVzm5vIzj7MiSW5K1JupQ6o7pKqFPLpWqxEw7byDoXV3oIawoI16MOxXi69hZhzZL/BSyCwYoGZqdI4n1/oXU4L7e3BLzvfOP13rGFdklUeT1rrGXqFUWlEpkhUwgrMcMrNVQg==
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=gwr/EL4ijqwFB8uewRyhrarUhK0sfr5Bn6uvcIuLe7Q=;
 b=3bgCSeQrX8Hel0K+9/6Nb5Z4bS3122NRIYMbuNcsfnHwTVZP8B4oTyhIHf7KvNtqillR4xWZHuKD8/QWRF7gIMbjCohxbpV6/uKHPnvp8d0VT/n/WLhT0RlgRrSgLVOeyPuPtD9cVepM3p0HRGeVnF3TDj/EllH5+jUpkc5KJ0g=
From: Bertrand Marquis <Bertrand.Marquis@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>, Volodymyr Babchuk <volodymyr_babchuk@epam.com>,
	=?iso-8859-1?Q?Roger_Pau_Monn=E9?= <roger.pau@citrix.com>, Shawn Anastasio
	<sanastasio@raptorengineering.com>, Oleksii Kurochko
	<oleksii.kurochko@gmail.com>
Subject: Re: [PATCH] xenoprof: move asm/ include
Thread-Topic: [PATCH] xenoprof: move asm/ include
Thread-Index: AQHaCzO1xyz/ZGFYC0K8JSTClKiKnrBid1QA
Date: Mon, 30 Oct 2023 15:36:46 +0000
Message-ID: <4105ED46-8287-4EA0-BE96-66AC52BB609E@arm.com>
References: <4fda4793-6fdc-70e6-575d-062f72c8c0dc@suse.com>
In-Reply-To: <4fda4793-6fdc-70e6-575d-062f72c8c0dc@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_|AM8PR08MB6610:EE_|AMS1EPF0000004D:EE_|DU0PR08MB9300:EE_
X-MS-Office365-Filtering-Correlation-Id: dc06e05a-5833-49eb-dc77-08dbd95e0c8c
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:
 vLbUMX6+NoLvbLCwLy+X8mvlQIZb/SkGVs3rjM0+uaF9cO6QNI0bmQuH0qpV114z3D7+y6gqdbhm8QEkmOOdg44CnbSFRokL+CaaWPSYD5POoq+m3MczaX49W1CE0k4jJREAntiDwSRyzaTmX7wcocMR29Eq47yFqrKkLOzXksi5fCk6DZ+xOjMGc6TM8I/5DsnjCXubqsAMk+HYUrB2jFcZvBxb53HVyXV+VkDgy58SNYpGStPoIDm8z85ygD1GmzRo6aK3M5uDkZH47s+eHzaVfDXHXWJII5I0ecs5PdwOG8KBqj4R7VA9/K0YXJEY+9TAhdY7OhmHNT43Q+uJaxbmar2k7oDiqqbpOGHnbU2PefnXuVMQ3NvvNOPogOOKtNX7G2fgudysy0IS+Y2BKfK685wHoTdxhsjPhbAjsFgFcRmgMGreMfqdwUXSTG+iP6sAK3bM0zsWDfRWkYvnqeP0WGXiJHqtnEobrO5AiyMNzYxHMzRd/4NeVo+AtLOMjDhbjm4WFbA94nRQVnA1xyAp616FrKqdyBX7pndUBzIy9DUs5yQ0Z8J5OiLEkwDF4RVoOkbax6j/I8tRR3Jqn6Sanu/6YMc19Z5gQKXhNvDu/ikg4GUzkgEJREZkywb/U74J3OSgL+S6mRfmrS9TTg==
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)(376002)(346002)(396003)(136003)(366004)(230922051799003)(186009)(1800799009)(64100799003)(451199024)(2616005)(91956017)(71200400001)(478600001)(6506007)(53546011)(6512007)(122000001)(64756008)(66476007)(66446008)(66946007)(36756003)(86362001)(33656002)(6486002)(76116006)(54906003)(66556008)(83380400001)(8936002)(38100700002)(41300700001)(8676002)(4326008)(38070700009)(7416002)(5660300002)(6916009)(2906002)(316002)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="iso-8859-1"
Content-ID: <220A884601EC60439A16D952B181573F@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8PR08MB6610
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:
 AMS1EPF0000004D.eurprd04.prod.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	6e2e4723-bc7f-4380-4de1-08dbd95e06d9
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	+6s/J28EPzrbab824uq0PAJ0ZkAeZVnY458ONWHM+/9xcHCdZT8DWVu3V6I5uMVysvJUlY07z5Db4nzB9RrUQfbs5UAXc0ixyPNBmvc9zQK/X/NRZo7ymOevE/C4TB1drQCqO/yyYvbO/uHvzdV2fXYdprXxUTXGZufFblQnNtBGOqLOfR3RkT+bVO6rIhgYsYzS7LszyTsdVPPnpVA3BTRU4D47oP1ojbAglVfa/2psxAD3LP/yOyXzd1KGGqYIZeoQBLqDkHEfJXleUtXY6DgXKKI9jPLU36BrrAICfHOWY4iagbgYhsmFqiDNjfvzpkkBasYBMoQZe3RIHvjCWFfadveKdHbXEVPDrjk61wmyMuTv0GTGerFwTTs1wUUIgjtOX9Qa5EF/ryPe0Uvou5LViH9G5hMoU193O+kAyu0gT6KH/wIQ53iNDY1z+dqCZWETLcPnE+BAfyzQzZ6YCyxW6ebBeMz5NNzkpj+ItnM3Yo3nGmSrJBnlvQ+03onvPqw/4r54g5i6vHdzphkBYbip+tqkOA2jMIG0AFWt3WEOGpblCRNfeCVXf0iYDhVfENHlSOzRZz9HjUQB1bmE6TFbeQs/0XFkiaFzjh2PierNbPdkuv+ZbCMc+frsTDS1X8ilzaMbg99vP6PcULZYrSt51YnMSHyAgrTqRXi4XffNJpM/lyH+fOUrUYaobjrfa1CvQrfekB4+QJgASlF4M8nAdSKzVNUPvDl/2W/sFN8WgsLb/0cAEd0AqTSkMyjd
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)(82310400011)(451199024)(1800799009)(186009)(64100799003)(40470700004)(46966006)(36840700001)(41300700001)(107886003)(8936002)(6862004)(8676002)(4326008)(6512007)(6506007)(54906003)(316002)(36860700001)(70586007)(2906002)(2616005)(33656002)(70206006)(336012)(83380400001)(26005)(5660300002)(356005)(86362001)(81166007)(82740400003)(40480700001)(53546011)(478600001)(47076005)(6486002)(40460700003)(36756003);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Oct 2023 15:36:56.3143
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: dc06e05a-5833-49eb-dc77-08dbd95e0c8c
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:
	AMS1EPF0000004D.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR08MB9300

Hi Jan,

> On 30 Oct 2023, at 14:19, Jan Beulich <jbeulich@suse.com> wrote:
>=20
> There's no need for xen/xenoprof.h to include the arch header when the
> respective config option is off. The only compensation needed is for
> svm.c to explicitly include the arch header instead of the common one
> (matching what vmx.c and traps.c do).
>=20
> With that Arm's header can be deleted, and neither RISC-V nor PPC will
> need to introduce one.
>=20
> While there also adjust and move the (prior) inclusion of inttypes.h.
>=20
> Signed-off-by: Jan Beulich <jbeulich@suse.com>

Always nice to remove a useless empty file :-)

For the arm part:

Reviewed-by: Bertrand Marquis <bertrand.marquis@arm.com>

Cheers
Bertrand

>=20
> --- a/xen/arch/arm/include/asm/xenoprof.h
> +++ /dev/null
> @@ -1,12 +0,0 @@
> -#ifndef __ASM_XENOPROF_H__
> -#define __ASM_XENOPROF_H__
> -
> -#endif /* __ASM_XENOPROF_H__ */
> -/*
> - * Local variables:
> - * mode: C
> - * c-file-style: "BSD"
> - * c-basic-offset: 4
> - * indent-tabs-mode: nil
> - * End:
> - */
> --- a/xen/arch/x86/hvm/svm/svm.c
> +++ b/xen/arch/x86/hvm/svm/svm.c
> @@ -12,7 +12,6 @@
> #include <xen/lib.h>
> #include <xen/sched.h>
> #include <xen/trace.h>
> -#include <xen/xenoprof.h>
>=20
> #include <asm/amd.h>
> #include <asm/apic.h>
> @@ -38,6 +37,7 @@
> #include <asm/processor.h>
> #include <asm/p2m.h>
> #include <asm/x86_emulate.h>
> +#include <asm/xenoprof.h>
>=20
> #include <public/sched.h>
>=20
> --- a/xen/include/xen/xenoprof.h
> +++ b/xen/include/xen/xenoprof.h
> @@ -10,15 +10,15 @@
> #ifndef __XEN_XENOPROF_H__
> #define __XEN_XENOPROF_H__
>=20
> -#include <xen/inttypes.h>
> -#include <asm/xenoprof.h>
> -
> #define PMU_OWNER_NONE          0
> #define PMU_OWNER_XENOPROF      1
> #define PMU_OWNER_HVM           2
>=20
> #ifdef CONFIG_XENOPROF
>=20
> +#include <xen/stdint.h>
> +#include <asm/xenoprof.h>
> +
> struct domain;
> struct vcpu;
> struct cpu_user_regs;



From xen-devel-bounces@lists.xenproject.org Mon Oct 30 15:41:08 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 15:41:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625219.974280 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxUNz-0006Ig-9c; Mon, 30 Oct 2023 15:41:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625219.974280; Mon, 30 Oct 2023 15:41: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 1qxUNz-0006IY-6q; Mon, 30 Oct 2023 15:41:03 +0000
Received: by outflank-mailman (input) for mailman id 625219;
 Mon, 30 Oct 2023 15:41: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=Hhfi=GM=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qxUNy-0006Gn-1D
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 15:41:02 +0000
Received: from EUR02-AM0-obe.outbound.protection.outlook.com
 (mail-am0eur02on2061d.outbound.protection.outlook.com
 [2a01:111:f400:fe13::61d])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id ba290a66-773a-11ee-98d6-6d05b1d4d9a1;
 Mon, 30 Oct 2023 16:41:01 +0100 (CET)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM9PR04MB7603.eurprd04.prod.outlook.com (2603:10a6:20b:2d6::9)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.14; Mon, 30 Oct
 2023 15:40:58 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6954.016; Mon, 30 Oct 2023
 15:40: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: ba290a66-773a-11ee-98d6-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=L0nNTU9PbIjtIfc4ZSPhN/TcZ6YbRPXvTH4CnCuwiXKkq+9GPW7yFTzPe2E0aK3oOiJf4An5a85yiQwH644cg9zEKPqvP9v8YANln1cwNPqb7kIjNzMt9AjZVL6+Ittw37C8HqCTHpnM+rf2nkgevZ92mDxRgWwMSCw9p0kKL1ymKAMdAbSzlGKevKXp8FJ+v/8gUJgH+wZ6Rc2GIf4YI+ttnJVqsZbobvRpZEyW9BPURMtFKhTU1f7t+bkU9IYZv7kMBpR94jGjQEBdDpWxBHVFamyFbj6lTcEWtjy7FA4WOn61F4Jwwy5Vo/2yaqNFLqfmYN8d9WfTehQRQ1rq+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=h/kTTMUA2mt3NDEF9ck1clRnQLEoedrAA3H4nH1t4rw=;
 b=oFdV9LqcFjlju/7YY0/10CzvRYH0WlE9GSTYjaljmqLMTHrEG7/cfSNv3Fzr2W15xqZCsxzGhv0BCdY8LYrFYxuwJ0z9QABBkS4y+XdczSCmiwZ/t6FjwbaAGb8zx7k+krKLzaHhu9JOlIlURZgBfcf0RuMXLend/hMuhp+nbmeUTWLwxLOVOkoapAQZqwUxTrYF4PnaHXFSKPoZMuP0kcp68OceRBr+RbJ3gBTOKYCZFQbBS2PRtH9Iv1tsIMrwNmzFw824xSfJyx8S7J5dnkjhzvBVy8Wc0CcgoP2/qqBFVO93DXS/u8KVw+wlo1js2MzNG4mb4LYpxSJnyPSrbQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=h/kTTMUA2mt3NDEF9ck1clRnQLEoedrAA3H4nH1t4rw=;
 b=aCV/N653F1eK4tOY9lK1ai3zYCghMYZ17JiIAWNzVULjAPlR//fFMyUh6aqXWL2jUGNuqsBz8RGqcTRSqIoC9E6UHp9eqcuO4fjHkG1HSCKQ5WUhbMcm08bU+Yw4ASVlHrQ/IC9II+SV9rHvoLmwku9A9wnsvr1tD/OlatThafWsrrljuq5vhjJ5AY+zh4vAvtfDkLfKdPBOPURmkVnZo+jnXGMHI9yqwMh0u7N/JWJB13OmcdJOoy9b6dCwcjypmTvC1JvewUYujNcW1SK2+x6uzwKTy1lCB/xjcvgPh6uKQLZiJbR0f46zlaNga8ooQHQ6L526pcZ2UXOFghZSXA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <f88edc35-6b1b-0136-aa1f-6429652c4016@suse.com>
Date: Mon, 30 Oct 2023 16:40:59 +0100
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [XEN PATCH][for-4.19 v4 1/8] xen/include: add macro
 ISOLATE_LOW_BIT
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.cooper3@citrix.com, roger.pau@citrix.com,
 Simone Ballarin <simone.ballarin@bugseng.com>,
 Doug Goldstein <cardoe@cardoe.com>, George Dunlap
 <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Wei Liu <wl@xen.org>, xen-devel@lists.xenproject.org
References: <cover.1698410970.git.nicola.vetrini@bugseng.com>
 <dca236bf9199f596bafb35eb48d81adc280d8cca.1698410970.git.nicola.vetrini@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <dca236bf9199f596bafb35eb48d81adc280d8cca.1698410970.git.nicola.vetrini@bugseng.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_|AM9PR04MB7603:EE_
X-MS-Office365-Filtering-Correlation-Id: 08ef4a19-5d51-49f3-4954-08dbd95e9cdd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	zHxmFMCWJAAya935tuXksX7ZRc7+CHXTvp6bPOqa3Dvwe+O2UQaJ/n9YgcuxP+1ZH+pVyYkhj81lA7QdwtzHhjIaYunCbzARlojqUq7GSDmLFCh89TTLmjAQRBqRIBHNwsZlU/v/77m5gTKCAURlQEdMrwog02JO7a1NSmGF1x/AfcEMuA3B/T7DTa98aP5JeKjjFi9s1SJlz0I+vOd340is0zMl+vCxcK7HTj48PwgpsqS4cBDaFCRdhZrae8EGoGfDmTIrLRXMyhjw/JOVMNfV/olgcZsKSqqVu+ca/txbhuO5O+2jxwsSIRtAmFsvc8Nfw30UPgqLs7UPbJnKnjUq8z5i0dn4eul4Ey7Ul4GeykOgRYtPgVbmliqUvot2/WFndMqO4ZmxWR8kqpgP1eLW9oFNN3R5EkgGRhPp9cggYypY5wKvtvnKv5mY0Ui/vpuxsVZ3hFs5KSRU45ENZQ463srbvKg+10D/LS7hNnXLT+HJ5l5oFOh68gzqg1+8WwosA7WqRaVRJrGt9lq94uR128z5ahaNmMY6B5huokerhu52Y5JlRc8PZggd/M2yAFnMZETObZ+NE+oW7tPcJZBYlpSsezXrDxr2HSn8C9uLzGN5fwM5oZ+E3U5G9kuZG7d3Vu8kFxxlJiTUmrIR6g==
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)(396003)(136003)(376002)(39860400002)(230922051799003)(186009)(64100799003)(451199024)(1800799009)(4744005)(38100700002)(41300700001)(86362001)(2906002)(6506007)(54906003)(6512007)(316002)(6916009)(66476007)(66556008)(478600001)(6486002)(53546011)(36756003)(31696002)(5660300002)(4326008)(2616005)(7416002)(8676002)(66946007)(8936002)(26005)(31686004)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?Q214SW9vNFlZTVUrUnF0MklFZUw0dEx5YWQ5b2N4cGhrS1NVYVlDSXorM2tk?=
 =?utf-8?B?cjJyZFVwQndwU3hlUjgwRlYyK3dDNGNOSG0xNGROS3BjZFZSSGJZdjl0TnlB?=
 =?utf-8?B?SklObysySlVSbCtPUHk1dS92OHRaUmorc3VURlFXVkpZa1MxaWdDRDdWekNu?=
 =?utf-8?B?SUJFUUMvOVNDOWhOVmNDZ3B2VmRXOXJsZVdBMlRZQ1U1TEdLSU03SE9aQXNk?=
 =?utf-8?B?NHFweFlOMy9qS2Z0Z2ZIR0psc2NERXVOZjdPMHFNZmFJNWI5aWN3UXkveVNC?=
 =?utf-8?B?TTBKRWpnWTlYOVcyN0xlaXF1Yy9Id3QwNURPRW5NbmtsdHExcndNS1d6Lzhv?=
 =?utf-8?B?RkxSb3R2NmR1d0xTdGgrL2NFZ2xaSTdVOTFRL3JvM2R2SUtqdCtBRnYzU1Fm?=
 =?utf-8?B?MzNsNUQyQ0Nqa0RSNU14VnRYV3orcmczcmt0dU5Nb2NrZzBIbXdNM0Q3VlNQ?=
 =?utf-8?B?WmcvSlNEalBOM0NSRE01ajR3bFBDbGJ3UDBWU1h0UW42N0J4am9laWk0U2xN?=
 =?utf-8?B?YUJUSkkwM2J6Zkc5dmRuNTVCL2piaG91N1lLeG82K3dlRFJyZXVTbmI5Ymcw?=
 =?utf-8?B?VEZqVGwrTFJyR3VCQ2ZoYjBRQVlwZ213VEhKY0xQT1k3ejlrRnRhN2dhVTZY?=
 =?utf-8?B?VVJOWWxQSXlDbVBCK3RlSmVvWUdkSkVPVUVXR2E4L1VadGY4blBuRnpXT1Yy?=
 =?utf-8?B?R0c0RFYvMVErU0lsZE40ZkhjQ1ZMajhhVXhUOE1zT0pGODBLZGZoNit4WmIr?=
 =?utf-8?B?MUZBUnpkNXZRTCthMVhMbThsM0wwNys1cFR6TldWUHZJdkJVUEhYbVFYMjRL?=
 =?utf-8?B?QmtrbEtFaUtEdnBMYmQwWGFJc2d0NnJjUGFwbWVoVEkwK2poaklidFprcERh?=
 =?utf-8?B?MzFBVUhTbE95bk5UclAySm5kRFpFa3hjbFNkU0tzL3Vwd1hqOGNiakQzM1hu?=
 =?utf-8?B?QUFOQy84ZXN2QzBXK1VMMitmTXNiYW1uNU0xSVozYUc4WHlHVnhwMjN0ZzEx?=
 =?utf-8?B?VmZPenZXQ3JtUEZOMEpYOE9KalZhcThLZXh4T3VLZFRzOVRjWHlFdVRHcERw?=
 =?utf-8?B?cHVGUUthajhFUStYaGc2MzRIMmpscWhRMFRiTVVBTXBXMFhzUk9ZV1l6RmhI?=
 =?utf-8?B?U3owbWFVNlRVK0V0VXE0SWhmVGVFUkJXeWt0YjZnbjFNSkhUdFZWMzUrbWUv?=
 =?utf-8?B?eUlCRVcvNmlIL0FUL3daem1zdWloanJmQ2ZOUGl1OTllTzRVQjV6OWVnNGNB?=
 =?utf-8?B?d0p0c2ptYUs5MWY0TnpBeTBwaC9lSDlGSWVlUXBBSWFKZkd0b3N6NDhNcHo1?=
 =?utf-8?B?Ni8wNWRZRkY1THltcFhjMDVwUk9VNjJYNUIrZm5GMnJCZ0dnVkM5MitKWGlR?=
 =?utf-8?B?azhTZERLd3RGOFRMMmRtR09JS3ZhOVV0dVhEdnd4TGJBcTZWTlBIVCtJVWwr?=
 =?utf-8?B?MGd0MVdNTjBINkk4RXUrcDFWcEh3bnJmRVF1QnVXZS8yNnJXZ2pBZmFxTGZQ?=
 =?utf-8?B?S3FNOFdOQkRnRlBuQ2QySnkzbkRhKys5M3ZCdml0V2hCWExWVENtME1Mb3N4?=
 =?utf-8?B?ald4WlBHb0NKTnMzYzMwbkhKVTJYUXN0R2k1NWpBREtsSUt0M0Q2M3JqVzA4?=
 =?utf-8?B?L1lobVdTWXJGOFhlTjQ5SjliS2NGSDBpUm1qVUFGTUV5Nm10OUpsbWlMS3BN?=
 =?utf-8?B?ZkRodEhqNmtUajBuaGsrN09zSG5nekhJMEdjRWtQeWh5SGxESnpDWVluYlBK?=
 =?utf-8?B?S3Q1ei9kSE1BZTZYMlhtUG1ZaG1MQjN6aFJXQ3Z0TzFRWnc2NEJXQ1kyWW9K?=
 =?utf-8?B?UW5QcjEzeElFWWFEUkU4MmlYY2Y4OGZ3S0t1TlhYbktZZlZjRnljSGE1a2dr?=
 =?utf-8?B?UE1ScEJjcUpRS1BRU3g4Tk9HY2QvaEFmQUZBSHNIcVBFZVZoSVhCZm00TXdR?=
 =?utf-8?B?YitrTmZ2RXE1cXY3VUFkeHg4bzkzeGVMUGlsZUdKaENpMTVsUXZ2K21TNEFY?=
 =?utf-8?B?SjBqSkpZejliMTcxUDBrUFkxNGFwUmxxTDIrNHdSWWJXV2F0WjI5aE9SNWVG?=
 =?utf-8?B?WkY3cmpIUnZLUzlSdWs1TEJpZEoxbDljYzFQVzB5bTlmbHNIZUtCVkNZaTJC?=
 =?utf-8?Q?/hCl8XHfLYqgQZh66IIlg5Bi0?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 08ef4a19-5d51-49f3-4954-08dbd95e9cdd
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Oct 2023 15:40:58.6288
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: ZTArSqYoHZ+eQGPRmCEBzlZZcmqwG8qkkR5SOSXGC82HsbaQYklpNXjTPyf6qMWUnosA555L9mrsUm7SipTXaQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR04MB7603

On 27.10.2023 15:34, Nicola Vetrini wrote:
> --- a/xen/include/xen/macros.h
> +++ b/xen/include/xen/macros.h
> @@ -8,8 +8,14 @@
>  #define DIV_ROUND(n, d) (((n) + (d) / 2) / (d))
>  #define DIV_ROUND_UP(n, d) (((n) + (d) - 1) / (d))
>  
> -#define MASK_EXTR(v, m) (((v) & (m)) / ((m) & -(m)))
> -#define MASK_INSR(v, m) (((v) * ((m) & -(m))) & (m))
> +/*
> + * Given an unsigned integer argument, expands to a mask where just the least
> + * significant nonzero bit of the argument is set, or 0 if no bits are set.
> + */
> +#define ISOLATE_LOW_BIT(x) ((x) & -(x))

Not even considering future Misra changes (which aiui may require that
anyway), this generalization of the macro imo demands that its argument
now be evaluated only once.

Also another thought regarding the name: Would ISOLATE_LSB() be acceptable
to everyone having voiced a view on the set of proposed names? It would be
at least a little shorter ...

Jan


From xen-devel-bounces@lists.xenproject.org Mon Oct 30 15:44:24 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 15:44:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625223.974290 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxURD-0007xL-Nw; Mon, 30 Oct 2023 15:44:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625223.974290; Mon, 30 Oct 2023 15:44: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 1qxURD-0007xE-KV; Mon, 30 Oct 2023 15:44:23 +0000
Received: by outflank-mailman (input) for mailman id 625223;
 Mon, 30 Oct 2023 15:44: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=Hhfi=GM=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qxURC-0007vv-7M
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 15:44:22 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur05on20604.outbound.protection.outlook.com
 [2a01:111:f400:7d00::604])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 319b389c-773b-11ee-98d6-6d05b1d4d9a1;
 Mon, 30 Oct 2023 16:44:21 +0100 (CET)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM9PR04MB8554.eurprd04.prod.outlook.com (2603:10a6:20b:435::14)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6954.15; Mon, 30 Oct
 2023 15:44:18 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6954.016; Mon, 30 Oct 2023
 15:44: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: 319b389c-773b-11ee-98d6-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=oDVQfblLVApXbf0UJs9uBAoBkCzIsF5vMApWGEwxKWXBvUydszGPbs9hbqjpjFLJVIhiB4BUkionRujjsTDZlwpzXZP7IB+ss3wnqbCM9Pgzrs9YXZh9rrbAbB1eWoiNuVofB+RZftb9cXGyh8CICO/WPDH2eK6aJBaLtDy3e22dPQDqCLHoEj01dmA/AJlG8sL99DX4S3RMOicspCq7yCRJKrHWyp3ax+yAxsREXRowy7rf8ObfXoRmWZ1A0ubOuGTBWJIscfEmR6nZUj8StZuDCJ/9lOPijlV9pu/MQaHYNpYcrQ0dQgnQ5EGUfCh6fyZwfuoZrd/faDdhucMjGg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=iSsiBBz0NKVnwVvQLWQ5dOmjEcYbD1xFhZ+UcxN7ENY=;
 b=Z9DVxFa7LYht22qktTYk08emTfDMaxc59ZrGbpkEKpOJaYmjT7MoTQniWgq15GHCDg+mfOAVMcTGoa7RQ3+VVrBm//q/gOa9hTEFeYFYtN2j7Tlz9nc+sZ/XDhJ4th9KWeBTvG9WnUyrf7IdpOTMeuGGfY3iiuk7SUWIh7LZHrwEt2ZNkyZZQ4jiYzLeaTS/M/mOjVENltv3wU5nUUuzHPMu64p3Z2+6HfjlO0Pm/pd3FAUYskMKxLU1H3K+istalbdGtjOP7BmW1ntWc6yBvuBUqeftK7s2XuKkzEi8I+jDT3E4XV7FgzZkh96mp4M1rrdORhHHjz5jRPP6Y45Y5A==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=iSsiBBz0NKVnwVvQLWQ5dOmjEcYbD1xFhZ+UcxN7ENY=;
 b=jgYTOZbVqbmUgIsvcyWZzrQkTt7vgGLKcLvUO5INuCbvOJ0YxapueQxXauTA2SHh0Ww9GK1KvN3OTMOfGRLmO5v3j4h+TH9r7CRyLukm0/cLEzWf1T7/e37LT+6QyfAOFt50sAEsadSvxKBgVSQp7fodLLGZI4kdKOl7+GHiMvx2zndXxWpP0dzotMlzz2UwrjVGcbt5iqwozIefY8WKLRp/EOsK8JZ3zPMR3veGTVkra871fLB/PcWv2pgDrSxPD278YO2rAsCd0fk2l7ErJLbZOwx+VYd2r81596kEPYg5UEn5g6I/K7pStZgqooKZKVQxI100Umu8ecq+WwXvNg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <c58421c7-898c-ca00-a8f6-f91819130310@suse.com>
Date: Mon, 30 Oct 2023 16:44:19 +0100
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [XEN PATCH][for-4.19 v2 2/2] xen/iommu: use ISOLATE_LOW_BIT to
 wrap a violation of Rule 10.1
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.cooper3@citrix.com, roger.pau@citrix.com, Paul Durrant
 <paul@xen.org>, xen-devel@lists.xenproject.org
References: <cover.1698413073.git.nicola.vetrini@bugseng.com>
 <6a1590b0d002641fe8dc53a2368ab8c2973e4bb3.1698413073.git.nicola.vetrini@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <6a1590b0d002641fe8dc53a2368ab8c2973e4bb3.1698413073.git.nicola.vetrini@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
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_|AM9PR04MB8554:EE_
X-MS-Office365-Filtering-Correlation-Id: 5e9b645e-2cca-4e98-c947-08dbd95f13e7
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	BxnGEGsMm3VYtedUzokoT5hyeC3QHbTmupzIZxpcEDtZhTGjldKiFy9+1hNcCKKRq/jvlhO84ycaSJN2kRmB+jy8tJnHEvdhUoRM13Hv7LCjrgcHTxU+1yHyqB/HNAK3YgedqDusceDNHgmLph//kbMavKDp1gGeHaFx2n52R5vK9KLXytXbjurkeDLrVjmmAnbgM1LdXmXkvDt5UBvRzNRwVDEmlr7tSLugTCPVsoC/TvVs06VPDYKNuv443vqiqu+94oPaF6/xC+oi8k/9dY7Vl3WbwFONGGCF5ALAs26P/Q5S6f6F/P5MSodKDFoMobKOtKwwAcOdVeOapHcg0S4idMAsM6qz5pz1JVbAkV84os1XCfRSFgzRzVO17TCq8MtODmx4iTH3J6EcXucpk9lRs+f8rSTSIcxm0APICeCiKG0ToAel0BxFqWbMI/8o1dI/8GVVa2GjBgWkDKcOTqt3rFaDFQVrp+seznyuw4jeoj5koIuhm1lwBI6/6R14J61/LCrjLqiD46q56mcsq9eecvaAZuacEhk+wNSBNdf7tYiOi3KxDF6X3VOu9ZRUDhmFPmvhlIBBzxcHLmreWyY99/8InJqg88LqnQld7KVXENqjhGjhO8oakBxTFL/qDawKo272KWK1P0QsRcIcKg==
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)(230922051799003)(1800799009)(186009)(64100799003)(451199024)(2906002)(316002)(66476007)(66556008)(6916009)(38100700002)(6506007)(53546011)(478600001)(6486002)(5660300002)(66946007)(6512007)(2616005)(26005)(41300700001)(7416002)(4326008)(86362001)(8936002)(31696002)(8676002)(558084003)(36756003)(31686004)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?dWkydjcwV2g5RUlEckhhWGtrenlJMUtxU2N2bzNhd25CNE9mUVZEbW5nUXdr?=
 =?utf-8?B?WEpaa3F0eXVqajRFclZvSUczWHFtdUhVbWluOGNINkxFL25RT0lpRFFoYVZR?=
 =?utf-8?B?eTBuZkpGcURXY2MvR0lhZEVTTEdKa3AvRzVta200RnZFcC80SW10SnJuWFNs?=
 =?utf-8?B?QkZaRG5LZWZPZ1dGVmxHMUptUDZMU3BZOHpBc09LdENkdTZvbDA2V3hMV3N0?=
 =?utf-8?B?Q0k3bldQV2g1K0RvNzc2bWltT3h5VzFHU0dpVXE2eko3Vk5pb2NOeElzWjdY?=
 =?utf-8?B?OGRRdjU4MWU3SGs1SEhLMHJKUFlWZHpLWHovb1JBNWppbUwvNWJVQXpsaHFq?=
 =?utf-8?B?TGVFRWJ4MVpkcEROOXovQW9kZjhISlE0R0RHbEVTOFdjTEVmanhsbDFnRDdp?=
 =?utf-8?B?M0NMRlZWeGRJR2x2aGM4amdpemZIOVdQSnEyWWFvRnAwaG1Ob1cyS0dyTHhD?=
 =?utf-8?B?bDh3Q2N5NnFnSzdTZm1vbEhxY0xTS21pVFk0T0l6a3BqMHdmUGhmYWk0RUVG?=
 =?utf-8?B?enZQY3V0R0N5ZXJZOXIxa1JvNnlJMWR6RlE5ZWFFSzE2dVo0a04rVDBxQldi?=
 =?utf-8?B?WVlTUm9BWGk1Y3BSQm4rVGE4MUxjdWFUL1FaWk04TVAzc2FQTVlxdkhPbVRX?=
 =?utf-8?B?ZFRZTnU5L0RNVlYzakhxOFAycktVbXFYVW52V3ZkYWE5VHh5bVdVSWMreUFP?=
 =?utf-8?B?bk1ZR2JrTStPMlVzMEEzUkc4VmFWN3FRZG90cUVibzN0QnpJUmYycERoTnUy?=
 =?utf-8?B?MkZzTStWcEVNUWV0Y3oreDhSSkt1VVVESVo5K3Y1U2lSMVRVbEhMSWtRUUxZ?=
 =?utf-8?B?amlhUXVLK3p4YkxEb1JHdjM1R00wNDZqTHorRGcycUhKcDhXMDFUMGpNZncr?=
 =?utf-8?B?cStjYS9MUFpzUWxLUlgyZFlrS3VnNGN4UnVUK3EvSlJSNTIwWkRmd0hDMjR6?=
 =?utf-8?B?RWU5S2dlWDVzN3VsaEpiMXM2RUpEdHRLd2w4YVQ5a2dHWC9nclYwTW1vTlF0?=
 =?utf-8?B?TnVNeHM2bnlvTU5UU2o1dGhtM1VMN09OMER2UEFFMnd2Y21xWGdoNTNxWWw4?=
 =?utf-8?B?WDZHQjhROWZYUGlEbHdvS3hGR1UrS2MxaWJCUVlRb1BUUGI1RUcvblRRWkNT?=
 =?utf-8?B?TkFKSEhqR3MzOWdPZVUrMVRFcXBGcDF3QmFxVnRlcmtZYVplMnBNd2VteVVa?=
 =?utf-8?B?bzgvSS9KdWYzU1hrNVN1Yy9FeVZvRHNpQU81VVFSbHFkYjJzMVpDR084STkr?=
 =?utf-8?B?am9SZVFQN1BGbFo1UmZvblp6WTYrclB0V1UzcVZnOEZGY3RzSjFHNmMyWlNK?=
 =?utf-8?B?Rk9FN3M5TFl1SStjbkR1Z0kwTHpETy8yOTRYUlY5aE9NTWhrTWV3NDF6c25B?=
 =?utf-8?B?Y0hKSDNybXlNTDdzNkgraWF1QjFRc3VaVUwvQmNEd3NucTFxYW1NM0NCWDB2?=
 =?utf-8?B?TzFVNC9FNTZrN3hkU1BQU1FvVURkTkJpUHNpV3BKM3dYeVh6dnhiTVRyeVRY?=
 =?utf-8?B?bVVycmtyeVlndDc3MnYxSHRVWE1vUDU4N0RnYnMvdkl1Ykxpa2x4WG9kditv?=
 =?utf-8?B?VHRxUnlYU1hXSm56c2tnQzczSkZjYk9MRmRTZEZXNEJCNmFDamFYdEt2RXFH?=
 =?utf-8?B?UkdsN2FRbGsva05JT1BHMUlTYkpPMjVuN2FHN2UxT3hGNUJycHo2MEoxM2Fo?=
 =?utf-8?B?VTFaMXlQMGlYeXBTcFFnTEhoOVpKaEdYWjl3VnIyZytQcnd3YUpmcDF6YWhN?=
 =?utf-8?B?bHBuSWdWVnkrdXVyR1RubzdldHNLcXZldjNBaXdQZlZ1Rm9JckZtVHRzcm85?=
 =?utf-8?B?Mmg5VzVnSTVxbG84V0FTd3lHaXk2RFVCS3hkRDFOakFaY2JOUDVjWmhiOExu?=
 =?utf-8?B?a0VNbGlJSWRCTWJLOVZ4OFlZNVlzaGI3M1Q1UHNXWFF2SmFUWUtxWU5KaXNl?=
 =?utf-8?B?alA3c0ZsamJhNTFrdis1SDJWb0c0M1dtZ1VoQ2szVkk0NS9Zc3FrWHQwdGsy?=
 =?utf-8?B?WW4rSGdSc1ZMT1JneStMdEJCalZkT2tuckFRQUNYaUxpcTAyOHBnTE1oMXpN?=
 =?utf-8?B?RVpaOHN1elpXTVMvRndoTU45NVF1MjVWVlQyelBRaytJQ2hhdXcyZXlKVG5x?=
 =?utf-8?Q?1ZumOPx+NljtqA+jLpGLkTSrs?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 5e9b645e-2cca-4e98-c947-08dbd95f13e7
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Oct 2023 15:44:18.3761
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: MXQYxucybSpQWPxc0kH+UGKbGBasrpJZOQZ3rxWVMAlvzmTeo/C5zIctrD6ZZjJnO/1VhhhZoBbbrHGgwgHxdA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR04MB8554

On 27.10.2023 15:36, Nicola Vetrini wrote:
> No functional change.
> 
> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>

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




From xen-devel-bounces@lists.xenproject.org Mon Oct 30 15:55:41 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 15:55:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625228.974299 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxUby-0002N4-Oi; Mon, 30 Oct 2023 15:55:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625228.974299; Mon, 30 Oct 2023 15: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 1qxUby-0002Mx-M3; Mon, 30 Oct 2023 15:55:30 +0000
Received: by outflank-mailman (input) for mailman id 625228;
 Mon, 30 Oct 2023 15:55: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=Hhfi=GM=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qxUbx-0002Mr-GQ
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 15:55:29 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur05on2062f.outbound.protection.outlook.com
 [2a01:111:f400:7d00::62f])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id beeadea0-773c-11ee-98d6-6d05b1d4d9a1;
 Mon, 30 Oct 2023 16:55:28 +0100 (CET)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS8PR04MB8341.eurprd04.prod.outlook.com (2603:10a6:20b:3b0::24)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.19; Mon, 30 Oct
 2023 15:55:25 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6954.016; Mon, 30 Oct 2023
 15:55: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: beeadea0-773c-11ee-98d6-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=S/VWhyNTx7nkzzdLsGoivGsD4Ilyk11c9sCbWxarHY+worU0yyzzja8LcTZcmUBOUyncgI3BxvjHSOpJhLVsO7VAy7B1K4+bvh98BO0gLUAIwV5TtIzw9A9kb4PVi/ejWNCt8vjQSCKhLsJIVJiSCnCwRHfMCO7/TOtpnYCvIlggMLDmEqk40pce1oh9EiZhzLEMpwRu0TuHdqFLxzoR64Xu+yPr2Z5n7R9lan7ASf3Cv6alxCRpENG3XHOXbZ6oBe8QmmY7r1MGdx5vQm7VwTNVBbEQ75xtSrk/ivQniSJj73Fcpq+7V1M4TFWaOVsQ5PkrLE2uHN8Izh/lD2H82w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=SXBZ0yuj37WjjDEcWh7Qb4ZpzwNyuWKUHgvB2OrnO3U=;
 b=hN12UNelVQzE2cYudsEo30+oGjV4uRa9RXwJCLOPyQufMcKpoO9g7F4vYwewRcKFcgKEE33m+g9Lvr+vYrpGX3HaPPR9r+EPds5y+OfwB6tz4X/iiLKEnnKCK/gheBn2Inowt+TQzpriIaFstlCOq1DY05zxbPLFSjMorOKAmGWSriL1guu+2zsfYsEymYDknpmCt5iNLHvGZKoAEtDp8/IyGoYAyPuqFBGEmuAe0qX059jlQl31DCxnPqr3WJnC5rNTCIP7SWQqqrwXiKzpXMWPplQkUM7i8NpddQay040H159brRFFIO9NamfbZM9wa4raEjBkOLo49rd7UnHIdA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=SXBZ0yuj37WjjDEcWh7Qb4ZpzwNyuWKUHgvB2OrnO3U=;
 b=0l91I46d45MHoHLCtGkppt3ZdFuE6OTF5utQ2fSKF+SiVW/3SZt2y8DkXl4qHrUzpBxQIh8KrszygpmkvfJ/Wj8uNguTi3RAUH6z4YZk69Z9tGEcFJC0HLKIMEdCOCNTdLOS28JsNWz3NjxtWYIX6aWEqRSO1BDDGLh0jBloJWhEtyy1RNnbmu92jTxCik8rDDz+H9d/gf9P9CgmGNojCJeztqX3bkkpulOriAxR0HGSqiW2bsYvyWWBvMzfpdyLWMi8a4qpu34mwsGmTRxroJacaSQEufcIMUq58jXteibHnrD044uhUgFOwWXX7SwO1ipQpByc1uJ2d+/bkwLzGg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <105291bd-3109-f7d0-0104-6728ca31315a@suse.com>
Date: Mon, 30 Oct 2023 16:55:26 +0100
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH v10 01/17] pci: msi: pass pdev to pci_enable_msi()
 function
Content-Language: en-US
To: Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Cc: Stewart Hildebrand <stewart.hildebrand@amd.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>, Stefano Stabellini <sstabellini@kernel.org>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <20231012220854.2736994-1-volodymyr_babchuk@epam.com>
 <20231012220854.2736994-2-volodymyr_babchuk@epam.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20231012220854.2736994-2-volodymyr_babchuk@epam.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0113.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:a8::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_|AS8PR04MB8341:EE_
X-MS-Office365-Filtering-Correlation-Id: f00a302b-20ca-4be8-15a5-08dbd960a178
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	ZKXpf/sFtTjGFxB+44ctZuLyksnMcYKEFIE6td+w6/x3UyRpexgzRXIc4/GE2yp1vEZNf631vhuyYNhXWMtZoR8EFQHk4+jJCSHfB5wYwXnnxsBxdrXLVoiqQtPmJ5jZEqJrxnD+Ilb/7iEGTp8ifTArVV4NnY017gzU29ASco45NVNo92fu+fr6nGLYItVIfvuuMKSMB3KZPpHM5WKiYw7jAE3QjZjXY+nLy+//fQNoSwVaaT9CHJG9rDqsMBQJd7u3+PUWu1uGPsChcxaB8DfBQLmMfzRcCHOUQh16mF1IQfwzJVGr2zZZpPw3eVTfgxrR8Tw5OqVg9EHN+heb6UzdyNopO2Vpcvv0zYfRr3Q6gRgXAOy5UHyXequz0wV9TVq86hT94upzooQ42NNFY404K7+nbHKDEDnjv5nt8YtNgcRBYKWyGG66/WIPJ6bwII4vU5F9oIVX62hmgJxFbmcvl7saLgztwNllyi2+rVUjusm2ayZxxSwYJIztGkj6KhTV/NY7to/AkLYmcdfJOGQrajgWEmEQtmZo6nwFuTkzrylTF/WNK1cYNHXvS1YaoM+WixkKVxkB04SlS45/j/kNU7o2w11MIqY9LjPqTC8zNckUeRSe6doh+Si9oj/MJeesnZeaYFz02Go1eyhGmQ==
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)(39860400002)(136003)(230922051799003)(1800799009)(64100799003)(451199024)(186009)(6486002)(86362001)(41300700001)(31696002)(5660300002)(66946007)(31686004)(6916009)(8936002)(8676002)(4326008)(6506007)(2906002)(54906003)(316002)(478600001)(53546011)(2616005)(66476007)(26005)(83380400001)(66556008)(38100700002)(6512007)(36756003)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?bWJ6dzk3NjhxMjUvTERoTisxUytZb0tsVlg4dEFWaDBMdmNIYWN3aDJINVpI?=
 =?utf-8?B?Q0FtL25IN2R0OERMRFNtZHRwZlJVb1RwaE0vZ2d3NVhFZGRlamVCQURuaXdv?=
 =?utf-8?B?bVJIM2JrZm1MNy9Ed29qYlF3ZzRsYnRRNUdBMWZITkZYbENJek55eVI0UHho?=
 =?utf-8?B?dU1WU0k3eDh1ckVaTHE1R0dvVlR1U2hpdlJCTzcvbWpnWUtxZW50ZUd4aGtB?=
 =?utf-8?B?UmRxL0ZlVjNpYjExMW9HTmNsRUlhRDcwREliUktKOUp6U3NOSFNkVGVYQWZn?=
 =?utf-8?B?b3kwMm9xWkpHMTVyZGFEbmExZEJ2M2R6aHd1YkVYSklCYXJMRmE1REMyV05C?=
 =?utf-8?B?VER0UFdMT3lsd3U5Y2VRRnA5WitaUFROL0EyMitFOTZ2Y1Y1bmRIWkNidmUz?=
 =?utf-8?B?WFlHZjZqOW9ScEF3T3BhbWVJR2c2eWdQcHV5VGdLWkEwY0NwS1k3UmVMK0My?=
 =?utf-8?B?ZjBvY3VQUWdiWTZGa2d1VE9oYWlELzljLzNCTjFzNnBuSC9iMm9UbmtIak1V?=
 =?utf-8?B?bFBqWkovV2lhd0hHcSt0dUJTM3hjb2JWNFUxRmM3QVFFeWliNURyMVZKY2tQ?=
 =?utf-8?B?dmVlaUpUYTVjckRwMlFkeGszbmdMbURTdjZWTlBTeUFPWmU2WW56NTUzRS9I?=
 =?utf-8?B?V2JTWEloaWRER21QTUtBbVFtR2ZQMnYwZzZZNE9UZ1hNUmlpYUhNNFN0a2I2?=
 =?utf-8?B?RFBvWWFCcVZsd1JGVm1HUFM2MjJtSitDY0JLVDdRcFFOcmgyaURHaXpVMzZt?=
 =?utf-8?B?WTZKaUxwckxHdHk0a0R5NHlpQjNxMjk0ZWZFeDkwRDh1S29qOE82czNHTnBU?=
 =?utf-8?B?VGJlOVQ1a1lkVXh0b1p1Rkh4bWM4dGtIbktMdU1UYkhFYTJLRW5Wc0pRd0gz?=
 =?utf-8?B?RU9Kekt3M1BRbGJuejZ3aEpVaTZnV25rNGVTTFQ2Y29oTUZKMG9hRmhKdDZv?=
 =?utf-8?B?cUpWSWl0TFd2ZkpjbHllTkRycktZWUtPQ2YxSWRJanBLTzM1UzREeW56V3lo?=
 =?utf-8?B?MENtY0h6ODd1TTd2UWNsS0Z1YjFYY1g4U016eEdVdFBXVlpLZWd3dlZxTnZM?=
 =?utf-8?B?VTZKZDN3RlNRRE5EZnFtRG9GSGZGZ1RpamNla3pKQVI4ZTFhRklmVklpTzIx?=
 =?utf-8?B?RmxBWGp4a1hXa1FBYTFieTI2bHdia2k1cEVjMzBzRHFIOG5TOHdxdTlxdDVr?=
 =?utf-8?B?K0JFSkcwQTc1dzBKTGhTdVVlQytpV0U3Tk1DVVpTVGtkTFc3Y2M0UG5TMUd1?=
 =?utf-8?B?ajRWMWhmMkdoSzJ2Ym55NnJvaXowQ05nbURJc21NRE5pSnJsWXJpbUFMYndV?=
 =?utf-8?B?YW0zOE5rbVVnZzJKMWsrazJDenI4S0J3cm9OZEtHbnFGZnFLNVhETEQ5WkVm?=
 =?utf-8?B?OVREbVpXY1BKSExUUUlCRkpjSWxhS3hBbVM4WXJSenN4RFFGOHdMaE9UWkZL?=
 =?utf-8?B?WWJCb2l4WDZWTEd6RXZEanQrY2VSZzdKMVF5cUpyUUFxZ3ZlTVJGN1dDSDZR?=
 =?utf-8?B?MVNkSlo3SXViZnQ2eUVQb1gxb3BKa2wxaEVxY3RxZ1lScWtmeHptaER0bjlX?=
 =?utf-8?B?WWJ1cktyQ1lsUjhBTzA4UHpTdUN5VE5TMC9tcVJYTHdvT2NWZWlYVkVoUndI?=
 =?utf-8?B?dDlnY2IwQUdJbWEwTjJleDkvSWRZdGQ1UE1CZzNlYURHdUxmUUdlWFkvZ01B?=
 =?utf-8?B?SkdUSC9lTW5tb29Nb0tkWlkzcmVoZXBPU2hxaVJQOEFrYnMwemtxQVN4TnF6?=
 =?utf-8?B?bUk5ZEUvZWF6ajROWndLWWd6bGFBeGw4amIxa3VWemtnKzFoZTlzYWo0Znlt?=
 =?utf-8?B?NTBFMzh6Sk1YNmJLc05kTlBTckNvUEk5NS9uT3NTcC9ONEF5by96MVlNbkZ5?=
 =?utf-8?B?dGlyUlV2OVhVT2VkODFWN2tmbUREcGo3V1FHcHdBOG1lbldvNEVxNSs0TEtL?=
 =?utf-8?B?RFhBRHg5RXU0a0NqS05VT2tQWmpxbU5OSTF2cGgwcldpYlE2anVYcENiemFS?=
 =?utf-8?B?N3QxeFUyckRwNjlKYmFPNG1DTU15SmgvK3VsODZDdHRTckVWbEp5Q3FJcFdI?=
 =?utf-8?B?MHoxTTV0UThtSGdPQXVES2hTcmpVWHE5TW1rT1NMaWVET1lZMGVGK1pIdkdQ?=
 =?utf-8?Q?jaW5F912f+Bk4ENyK4eWSIJsU?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: f00a302b-20ca-4be8-15a5-08dbd960a178
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Oct 2023 15:55:25.3912
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: FTEktEk3UbpeHlXG495GKxNBEhUUExaYHWdOAYtDKyXdsZWranduALtjlXTMPiqJADjZEPz10KlNECCTSuAQHw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB8341

On 13.10.2023 00:09, Volodymyr Babchuk wrote:
> Previously pci_enable_msi() function obtained pdev pointer by itself,
> but taking into account upcoming changes to PCI locking, it is better
> when caller passes already acquired pdev pointer to the function.

For the patch to be understandable on its own, the "is better" wants
explaining here.

> Note that ns16550 driver does not check validity of obtained pdev
> pointer because pci_enable_msi() already does this.

I'm not convinced of this model. I'd rather see the caller do the
check, and the callee - optionally - have a respective assertion.

> --- a/xen/arch/x86/msi.c
> +++ b/xen/arch/x86/msi.c
> @@ -983,13 +983,13 @@ static int msix_capability_init(struct pci_dev *dev,
>   * irq or non-zero for otherwise.
>   **/
>  
> -static int __pci_enable_msi(struct msi_info *msi, struct msi_desc **desc)
> +static int __pci_enable_msi(struct msi_info *msi, struct msi_desc **desc,
> +			    struct pci_dev *pdev)

In line with msi_capability_init() and ...

> @@ -1038,13 +1038,13 @@ static void __pci_disable_msi(struct msi_desc *entry)
>   * of irqs available. Driver should use the returned value to re-send
>   * its request.
>   **/
> -static int __pci_enable_msix(struct msi_info *msi, struct msi_desc **desc)
> +static int __pci_enable_msix(struct msi_info *msi, struct msi_desc **desc,
> +			     struct pci_dev *pdev)

... msix_capability_init(), may I ask that the new parameter then
become the first one, not the last (and hence even past output
parameters)?

Jan


From xen-devel-bounces@lists.xenproject.org Mon Oct 30 15:57:30 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 15:57:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625231.974310 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxUdt-0003JP-4X; Mon, 30 Oct 2023 15:57:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625231.974310; Mon, 30 Oct 2023 15:57: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 1qxUdt-0003JI-0f; Mon, 30 Oct 2023 15:57:29 +0000
Received: by outflank-mailman (input) for mailman id 625231;
 Mon, 30 Oct 2023 15:57: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=Hhfi=GM=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qxUdr-0003J5-Gy
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 15:57:27 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur04on2057.outbound.protection.outlook.com [40.107.7.57])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 059786ab-773d-11ee-98d6-6d05b1d4d9a1;
 Mon, 30 Oct 2023 16:57:26 +0100 (CET)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DU2PR04MB8918.eurprd04.prod.outlook.com (2603:10a6:10:2e1::18)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6954.14; Mon, 30 Oct
 2023 15:56:57 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6954.016; Mon, 30 Oct 2023
 15:56: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: 059786ab-773d-11ee-98d6-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=S2V1IeXEEgywQTKbc6fyykQKKuoVgu3Wp9PmsfOzMrudRm9rRE7YlCyZxq/7yg5aU4zJfLs9ai56s+03MydCQypPcNCU6/lzyIjKvsEkp8mpPT9YNVF8EhW8KNQGVOGouKBFBkG7sAGNTaBIea8JqZ+mNJAPwMf8cmlnR0wo0XAqLJDRXj48PcI8IpDlMW7LVctf8WWiuwj68yRcluOG148a4rYf6eyQOivHK6YmuiEapWX4dTxD4Y1+XwUl6+hxFUPUNWwiRIhe8NJWWISjwCUyFlPGRNE8T4jybQEDOFkVzMftzME6qZeGbWJp43116gQZf0KHrHcOFa4ml3oHTg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=bHvAXIKJXjd2kg3190fn2MFCqtoogmJbKQNVOwWpCqI=;
 b=S1d53URh+mHCMh+4eZh8h2E40EZXhu36Bj+K79T74fv6KGWxD8RLCnFUiqyIRmM4B/A8ECoXk6RK9ZKV2D+yizxcbV8Ancerw9PwSI3QKIxePg/u+O8GnCjx+wx7KK/xI7TZt9ly9N9xAkvAfZxoTUftIPQld09Bi1L5QWqTrxdWan4gnYlgvCVmckMmFJVbFnLZLb8QiMRCLuEk6zc9g5A1BlDaosoIahMghNl5sKcTG/CNPo7lBLfNZb4MV0kF8Ekp19RuAdBa0Ji8fxwRrxF+4GifSff9cgXRi4xXA1rBY5jUOIY1ygXtCvALPqWPoA9YOwCnVgKrF6n53oZeBw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=bHvAXIKJXjd2kg3190fn2MFCqtoogmJbKQNVOwWpCqI=;
 b=H3rDlZ/Oqq8pJ0hvvJVG9VuvTaGbLRujH8NkS+9pKf1vo44DODbvTKUtdBW2YMHmwaSJm1IhrJgymYrAknWBG/qdIHXjBi1mxvnOd045G8dnXi1LtOz1kNRdL+BdOdB6oxO+zNgbhGdWepuCkL4FDw6KDm9luw2CqvstR3tUP0u0Hbm7lKDAec+f6TFBKVMxzVWP8KLw8n4lW7eFAeXuSIfzChgasBTqOo9N+laLqK9Re5pmCpNuI5NXJ9uu1yf5jcm8/uDb5OLmUHR4hhQ4p3Zz7iLT51nbQVueY9bXx8h8syhdo5oHnFbZm9/Ij+OjlVriYZl8gU69Qf5Nk6nOBQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <a6de291b-24df-0899-d0ba-17313f5b2c88@suse.com>
Date: Mon, 30 Oct 2023 16:56:59 +0100
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [XEN PATCH 1/8] x86/hvm: address violations of MISRA C:2012 Rule
 8.2
Content-Language: en-US
To: Federico Serafini <federico.serafini@bugseng.com>
Cc: consulting@bugseng.com, Paul Durrant <paul@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 xen-devel@lists.xenproject.org
References: <cover.1698045505.git.federico.serafini@bugseng.com>
 <4cfdc887fa3e384dd0d160755350270208c3693a.1698045505.git.federico.serafini@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <4cfdc887fa3e384dd0d160755350270208c3693a.1698045505.git.federico.serafini@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR5P281CA0055.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:f0::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_|DU2PR04MB8918:EE_
X-MS-Office365-Filtering-Correlation-Id: 792ee75c-5565-4cb0-7e9f-08dbd960d85d
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	wgnBQJdKigVfIYQtLczA7tu+AK1aA860RXAIHRkQxe0Mt3LHGX+E6zrK6ayG1b6sqTitRpWChcyjiFWA3nQl5ZbQqwFE7Fwze3G2IXT4NkvzX4Rl94GeEmbGyO5lLa7uqYIukUnkh1ccuXRuQIzi/zfaWxhXTWXmS+zvQ5m9V//IWoU6uoNEsecPRU8rLro9zAU1nON+Hzml4pIXirWawW608eYYtWTmNR3CEfpixEcZMBBQ2xfHdyF/jEyf0pj8LCz3HF7+07TZW+ol2HpZO2fXtrP2tiDAnPQZL+OhQk80siq/CSf52fPqcFCDb8Lht6TJbjwXfnnROZvPy6aGJIbJ6NmHGBftz8TMqWc8Tf1yMnvcF0vGXPYvBILhdYZRqbfhrWKmd5fwTzQVwmI9zn6HufpNDxBlyWvxrPkT9aozqgpEmLYJB9tst5hykBChNqUn6/qqjhBAfwPnmb3b6jHqoNYUMcmi4iGwnM0QDrBGHA3qCIec0QRpIgwjKbOcVnwiyR7BUmXERHBSBsoQ3SZI+AGs/sLwET+V6oNnW6qGVnUOnPSVPyJJPwTJzjG8ttnsnFgkWsUQUuzgoHGJp4cVTqE+FNljQu5FdXfxJy+nROlFB8IOe3yYpGEWOZ9QMjwn7Vu1k/njNZTY9aTdTQ==
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)(64100799003)(186009)(451199024)(1800799009)(6512007)(2616005)(26005)(53546011)(478600001)(6506007)(6486002)(2906002)(66556008)(41300700001)(66946007)(5660300002)(8936002)(66476007)(4326008)(8676002)(54906003)(6916009)(316002)(38100700002)(36756003)(31696002)(86362001)(558084003)(31686004)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?YS8yN0IrVVZMck1yRXU2UTB0a256NUpGNFhac0ZSOXptZUFFN0Njd2szbTdh?=
 =?utf-8?B?ZU5ab09QQjlJcStRa1V6b1IvSlFMdUtKTGRPWjVHc3hZSjc3RHA3eGs2YnR0?=
 =?utf-8?B?aHBHSUlXU0I3VS9LUmZwNXN5TE9XWThFOTkvY0tFYzJ4ZGFDRE5mcVllSFFw?=
 =?utf-8?B?NzB3M09RRzVHb21ZbERDYmlCSFRWRmhmYlozd0xOLzdHbTdWa2FFa0U3Nklw?=
 =?utf-8?B?eTNsZmlERjluVWdKWjJ3SzdHWlF6VHhkdjlIZjd5TWtNWkQ1cytwK0tFR3Vy?=
 =?utf-8?B?S1ZVZUl6VmU0Ly92Z2VlYTBMUWpkemQ4VWVKUHNENndhbFZ1eDBVc2lSQzVs?=
 =?utf-8?B?QWNGVXhNZHFiK0hNQTFkZEF3NW9Gblk0bVViSFlocnNqbjljQ3FVUGU3NERO?=
 =?utf-8?B?amc1b2QzRGNxZDZBS0ZSMHFCdUJTUjNob09Tb0U3TmM0UFIxdG5pMlZsOVd0?=
 =?utf-8?B?ZWIzZTJ3VXBSbVRSY3lGZkZGV0JBY0s1TzFHcS91THROTWtjSjZVMTdhRU95?=
 =?utf-8?B?ZW1LMzdHWHNUV1ZPaDlGQm5LOXU2cmNneUt5SGFlaHhGekxWbWQvRUxhWGwv?=
 =?utf-8?B?d3g2MGxkSG1BWk9YS0ZCZ1dBLzhSNFpvWHBPT0I0MWlTU041OVVFUnplMmFu?=
 =?utf-8?B?andFaFh6d3k3WnQrOExoV0dmK2xKa2wyOGZ3MjMwUjdmT2ozK0NqM0ozNnF3?=
 =?utf-8?B?Si9LSkVkYmc5UmpGWDlBdzBZOGNqL1ZnWXlxZVVvTGJ4SGVmTHlZdGpyQy80?=
 =?utf-8?B?Y0xDeFErd292bW5LeENndDhCRE9jSUIyMnJQTjVxRldxYUlIdWEyTXEvQ0ln?=
 =?utf-8?B?SFNwVkUyR3pPVWRxd0NxcGQvKy9sMmV0R3U0Q2huc1JJMXg5eTdhM1VkZkF4?=
 =?utf-8?B?THNtV3pUbFE2M3orbFZvS090RzJ5R0NLbUE3bVYxN2sxM0thVmpWbEorQmZO?=
 =?utf-8?B?MjJpUzUyeXNwdmJSQzV5Ui9ZRTZiU0ZPN1ZxSXBCU0YwcWFFTzNBeHgwYXJm?=
 =?utf-8?B?UCtHSkRmeXhIN3F5YzVlSHFpelQxUkxJL1M0RkxHRUtCTTFJQVR1UFVQcmp0?=
 =?utf-8?B?b3NscVBVc0xuVng1K2RZQUcwWDl5WDFoS2J2MXI4WFdTUGppbnpNcFBvRHB5?=
 =?utf-8?B?VnY4bTREZHZIYUljUW9HQys3VzM0aitQUWxBOWt0VjlobGwzVVZxL1pzOXYy?=
 =?utf-8?B?MlZNTkhyZVZLNExzd3lpOGtVM2F4QVJPTkx3ekFLTXJhT0o0eXJIYzRMd2Vh?=
 =?utf-8?B?ZDJmWDJvQjdJcW5JNEZlc3Q0ZHk5NzRHaXlaRElNenZzSmYzTnQva0FEdzFR?=
 =?utf-8?B?VVB1ZEYva0piSFhzVFMrZWN4SGlodDdhd2w3c2ZjekJER2NiQ1pHQ1BaKzJy?=
 =?utf-8?B?S3FsM2J5ZGFnSjRvdGNQQStBejhlN3lPeVRKV3hoTU5PSUNCQzVZRCs4Ymtp?=
 =?utf-8?B?T1JjT0VDNmpHVkN3Tk8vRnpuRTErVGVMdnRoMHJBbjB2YjlyaTk1Uy9kVWRl?=
 =?utf-8?B?SS82aEh6RUZuOGxQSnVFUm5RbUVjZURDSUQ0MnF0UmVTRk5ENUJqV3FmeWM0?=
 =?utf-8?B?S2wxMXJ0Rmx5TGJwMlNuS0poc2JOcno2RHlJN28xaEVhNDJRbnRtN1Q3cmw2?=
 =?utf-8?B?dEh6ZURxNXpUbVVsYVUyajJiTVNxeEtBVDZmTEhoWXhJcDhBREZLM2lWNFpV?=
 =?utf-8?B?RFJqY1J6RndKRU16UlVUUWhKVnBvTzNDeThCaTljSWYzT2w4VUFDZkVJYzRR?=
 =?utf-8?B?eUx6VnJwQ1Z0T0dUbHZhM0xXc0Y4SWwvNkxSb05abEZuVCt6YWJjY0xFUmlP?=
 =?utf-8?B?N2Q2WlVsb2x5NjdKemdpYWZwMytialdIV0VXSEpBM2JoaFNXaEhZdE5RS0s2?=
 =?utf-8?B?ejJ0cHY3YzRjcVVXSlhobHdHM20yQkFRK3IvRnpjTmtFOVR0QVBaUHFuWm9J?=
 =?utf-8?B?TldyMWloYXl6STNtZWs1WDZtVU00N1puSkVpWjJ0MjlFZ3lrUWJ3cW5pSlJu?=
 =?utf-8?B?NzREdHcwN1hHV211ajlncUJsbWVPUHpFaHVwUVJMTUZCK21LcTNSaGxBKzJr?=
 =?utf-8?B?RTFJSzlvNGZFamJjRm5VU1NpUExnS2pkMDhHUk1Tc1htYkxiUFdLT2ZjZXdV?=
 =?utf-8?Q?xJToKwDX1R3QDCbOPDyFLDcqx?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 792ee75c-5565-4cb0-7e9f-08dbd960d85d
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Oct 2023 15:56:57.4687
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: V/1JSo9jE+4StwlmSxsUcCfskpFudLS7pStQD4mKnCz6Zls+Zh2cTQh/Hrp9e0p43/HrmXhpTlP4/6t1wX5OWA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU2PR04MB8918

On 23.10.2023 09:22, Federico Serafini wrote:
> Add missing parameter names. 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 Mon Oct 30 15:57:30 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 15:57:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625232.974320 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxUdu-0003ZN-BX; Mon, 30 Oct 2023 15:57:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625232.974320; Mon, 30 Oct 2023 15: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 1qxUdu-0003Z9-8R; Mon, 30 Oct 2023 15:57:30 +0000
Received: by outflank-mailman (input) for mailman id 625232;
 Mon, 30 Oct 2023 15:57: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=Hhfi=GM=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qxUds-0003J5-6e
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 15:57:28 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur04on2057.outbound.protection.outlook.com [40.107.7.57])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 05f31e9f-773d-11ee-98d6-6d05b1d4d9a1;
 Mon, 30 Oct 2023 16:57:27 +0100 (CET)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DU2PR04MB8918.eurprd04.prod.outlook.com (2603:10a6:10:2e1::18)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6954.14; Mon, 30 Oct
 2023 15:57:22 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6954.016; Mon, 30 Oct 2023
 15:57: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: 05f31e9f-773d-11ee-98d6-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=KibJmrLCWtIvXD79gdMTMlBz2b78Hr5sRXvpLRfwVavij9TRszNiUMXSMxYQLykM8gOdw6//0lehAT41oo3z8T545va5FBPMcKOF2ODrllsGp83d9oReDQBHiY2l1qQwruA8p61ufYtlNq3muJAeXRYdEW0YshnZaAFoP4iVyLyRskEC1TUJOO8ftZx4+aJEIx+V+5uLCP3XOqOx4B0wXsSu9Ozj+TGKVQvXixjHKJO3mBTZctnETzZ/DqKx5TLODlKjADoA+emeWSOMfaR+m8+PtkXhUDkLy5RNXlJ72H+RKD1KUSoMbMQnD8ZQtjVO1L3dOpMJdE4vuc+hGkU10Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=bHvAXIKJXjd2kg3190fn2MFCqtoogmJbKQNVOwWpCqI=;
 b=jghoE0/WOt0MiXeMRGmuCVUnUiea/I9eFpFCrgPvRr4gAq0rJngynkpNpFUcIdURznCSuDDGuKIWzjTkirUkC6rLpsrvIpoBzWU3FeEFnZSL6f/QFAq51zXSrsAa+HAjJ48GkqrerWMBdnDS0YvL336qXUU+HRC42UTMZRDGtTfGb/unWXFzCXb/kXCH1Pp6pY6N3Q3Hwg1vFy0gQ1QxjssnCFMYjw+85Pf8zBQRiML3yC3W4Puvg8oy8oZ/ijL4LjGS7bFKM46ejsQsLkf+P6nGGKFiXfU29A5KJf2UPm3a6nA2o3Yf61ZIINVp/DtRXnW/6uw0Mg407BWNwyjixQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=bHvAXIKJXjd2kg3190fn2MFCqtoogmJbKQNVOwWpCqI=;
 b=wWrPCjhPlKrB7YIjrnM7sX86NLODIsVUp92NCR9MUTRujzxQU8YU6LjHOEYNsWcoYOd1ES0vYp5000XYsEDBdqLesVh46Bguozz/Og0fLWseMAY6/PBEC0jTzq0Fp/elk1blfc/DHmthHJvr0kdNy6yTDuxRqdrma6JWBLPQnRe1zxhfdoAfSKhOFB3RqEV4ib5JXYPFefpByQ7XkWt/tLEm8ToRoyqj4mj4mbP3OArlpEYJBqW9Q8FsDBVn1r+bxEdsfTjFvl/54ySpj2L7KZBrXmuLP7qaiCungLr4mU654fgOB0P06VuZQsGftfR7q82+Gj0VS2vCjPiXsfoBAg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <0b8f46e7-c11c-80ec-d60c-8a0fdf3b2cf7@suse.com>
Date: Mon, 30 Oct 2023 16:57:23 +0100
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [XEN PATCH 2/8] x86/mmconfig: address violations of MISRA C:2012
 Rule 8.2
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.1698045505.git.federico.serafini@bugseng.com>
 <1ced29b83c361b390ed32e30155a603a81baab0a.1698045505.git.federico.serafini@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <1ced29b83c361b390ed32e30155a603a81baab0a.1698045505.git.federico.serafini@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR5P281CA0053.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:f0::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_|DU2PR04MB8918:EE_
X-MS-Office365-Filtering-Correlation-Id: 922c91c0-e21a-4366-a123-08dbd960e70d
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	ISRMl1qLRythXCGQ4ya/dcP02K1H/oG+Vvdj8BlZVev4VZoJ64LYHZXsHcIrlIYy5Q7eRb7MSu7viIxi35OKC77pxzuTe7YrdzPnxc0D6x3XiRnAjMh1rUY0puBJWb318nx+uwycZdaJdLRjGbRSDbSCqX43RigrVG4EhnwFgtXC4beaJayXsiv1w4sWkgt1e+Mm+1VMY9+hrsa/Tei1NLoJMHEakPGlatNHyIsRYiFC1KOD7s+hYJyCSMX1lyUxIZH1EqO2xbQyljgUDg/ZQmN6zzgwLqjz5qvFK/FmpeUSej2Hi5DZqRMJ3i0u6UJSdRXok+tsI6mNm2YxesjF1EiTdY4O/H/Q2MqQFvQEEk4oVy+0iQs7y9JnULzPGKa9+OB/BBzw08EpPb5KsFXEd2s86uoVYR+LS3hUJn4CwFhC42m7aidPJtqhKq+F/RLuVXVsvkGHAzi1wX7yaL0t8hgqb8kSFzsA+OIA7xgHAQHsc3zMhD4kbAJWF3wT4Zyhqnhs0okIXPIq+FQPc6ymYCP7iaDNOTSX+U8RU5JxjSWlwsfltcL70OgzmnNjwTSizbOTG9Xc8d/DSIua5ANqKtLaMQ2TZfyNcEv2b60diSwyQifvzivFDla6mOmc5rS84ySDJVTZ6i58RBFIceW3LA==
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)(64100799003)(186009)(451199024)(1800799009)(6512007)(2616005)(26005)(53546011)(478600001)(6506007)(6486002)(2906002)(66556008)(41300700001)(66946007)(5660300002)(8936002)(66476007)(4326008)(8676002)(54906003)(6916009)(316002)(38100700002)(36756003)(31696002)(86362001)(558084003)(31686004)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?bXZvNkhSR2JvcGRUbzhBbkNtVGdzUlhOQmdmcURMSDFtQjUyS004c3RsU2Ur?=
 =?utf-8?B?dS91aDdkZVlLY3pxa3hJS2RvMU5RUm80R3pTOCttUEUxSkJ4RXl0Y2lLMDdM?=
 =?utf-8?B?RXlPdXR5MU1YRFEzeDhRemp3U3BSYTliL0NSZy91cFBjN3FVME9KUUdSYnJl?=
 =?utf-8?B?TzdYRVVSbE52OHhOMElDYnZDamQyUVlUb3FGM0JiWi9XdVp6dEtVQmgxNW1F?=
 =?utf-8?B?QllETkVMTDU0Q3J6TVdRdmxuV3g5OUZnRzNPand4MXJubWYreURzbDBYM0x2?=
 =?utf-8?B?YlBwcHlQY1M0TitLSXVNYmcyUEtUOFlLYmRvekdTMzJSNjl3RmNLMnF3QjZy?=
 =?utf-8?B?YVpyZGNkU1dDYjcxWGJTbkVMMTRTSnlrMk4zdWtXSlJ2RE5Da1ZEKzUyUk5E?=
 =?utf-8?B?ODZRTnFhelIrTlIxZWtRWUZsdzNJQ0tsSkwwNWVUOTY1cjJPd3pTQkFoMmVa?=
 =?utf-8?B?aUZWTHl4dFhVdlp1QnBLSHdDMHhSaFErM3QwMVdvTXBWUGVZcHJEN2x5eVdu?=
 =?utf-8?B?V2I3OWhCKzk3WTVNdnF5VE90NnE4N01FVTRDSDFmaWJieGlSdGlDcnJVaFRO?=
 =?utf-8?B?ZHNTRWZ2bjI2SWNmaCtFRWhrU3hBdFFiQk82QW1NUStJaG14cFN6Y1NocS8x?=
 =?utf-8?B?RHRPZEt1Q2ZJeGhPMkVWa0RLOFh4OThMYWxKQUNTU3ZaL3RoRDg4Nk55SEYw?=
 =?utf-8?B?eUVYRmFNZy85RnUxb21jWm01VTJjN3Q5elBPMjBrc3BjS0JzSW9rOE1ZSEhP?=
 =?utf-8?B?VUdDcEdRNzk0OGNqZElRZXVVVzZRQmZzOGFVSXY3NjM2aGw2NUZaTDJwU0V3?=
 =?utf-8?B?b0dFcG9ZcjJQWGJNbXduT3dkL28xTDJpSDhpdU9Va2RoYmFNQzZSdWtJdTFN?=
 =?utf-8?B?em9ZOC9Dc2NzZ0VjNFlGOXpXYmZuMlZQY3VTS2dJZlJ0MERIMkdpSjRBeXV6?=
 =?utf-8?B?T3FwSVNMdm5DQ2hxa0RraUk3d0ZUdGV3Nlk0OXlaaWRuTTF6WTQyT3ZzMkZw?=
 =?utf-8?B?cFdMM1VMSU5LMzRTVFY2ZU5GWTI1TkZZdTlJeXR2NGM5aGNrMERmaTUrMGZL?=
 =?utf-8?B?NEoraGJnampDeFBjT0I5N0tMYkdrU2UwL25xcTl3c3gxQjhvUlhKMjU3dHlF?=
 =?utf-8?B?TEFUaDUzUlQ3K3N5ZXE1Wmp3VkRzOVBlaHZZSkV6RlI0SlplVEFCUm1sdTlJ?=
 =?utf-8?B?SFN1djRUSWJJQXE2SFZERnJtN1dHL3QzQXk0dytURzlGSHpGWkRFUG1EK2pW?=
 =?utf-8?B?ZzZuc0tNTG4wSlpCRVBwL3dnejdKRFczcVBhWDgrMWZBMXNrT0UzSVF6Um5j?=
 =?utf-8?B?MjduODBDQzdjKzBMd3ZHSCsrMWNzaVluM2RFbzVtZnpCZ0xmdmlHb0FVTWQx?=
 =?utf-8?B?OG1haC91SC9kV1dJWklMMW9JbGw0NkgzejQ4QzFKY0FjaTIrSytWRk14eDlV?=
 =?utf-8?B?czJZTW11MWdZVm9WQnZ5TEhFMXNRekJnbmJveENDWFUveWVUb0VoaUZObnBW?=
 =?utf-8?B?dlRFL0hjNUIyck5iYXFYUUpEeGpuTTl1R3JES3NlWWlleHVqckVTaWdCeGRa?=
 =?utf-8?B?N3d1TTd4QTRHY1NUVFkwNnJQMENjcWl1Mld0V1NRTDczQzFvbWk2MDJDVDVJ?=
 =?utf-8?B?UThyZkFBRDRqVGxXajdEcUFqVGxQWVJrQ1dDUlprb2p5SytGdk9tcUE3alV3?=
 =?utf-8?B?M3V4K2ozbmt4ZW5PZ3M5VHJHcFJyUWg0Qmt4TGpDa2VOVitpYXNVbktLazFI?=
 =?utf-8?B?bmJRc2lNSWpmUnN4YlZlR2wzK2FKeTI0UkJKSFBhazRzdlFCN1k1OFVwQ0hs?=
 =?utf-8?B?eTAxSndLYWw0U2VoMGpKVk52dU5iNGpwaDFabzNUcHA4Nk1oZzl2NzM3K0gz?=
 =?utf-8?B?b2E1N2dGMmhSbkhJbDU4cmNQWHY3NmNvSTZUVmtLRy9zMlBKSm1HaDkwd21U?=
 =?utf-8?B?WmNOT2hQeVlZczlXcE9mYk8rcHlRbVgvV3Y2Ry81QlJpSnJ2eDg4TEI0ajZU?=
 =?utf-8?B?a1VudDBsWkozaHJmaDdDMFRPdjJGdFd4UWwwNzVSUFhpMG5FY0ZaOVA4eTJk?=
 =?utf-8?B?ZUI3bTRRUjg4bmUyRVJhZU45cU9IRFAraEVxajR3by9va1M4dnZkVlRUZlRK?=
 =?utf-8?Q?a5H8bYvHLd4auAUdKA3k0EvFG?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 922c91c0-e21a-4366-a123-08dbd960e70d
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Oct 2023 15:57:22.1012
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: GFmdu6gKNO/Yno3rNRovbx6HgEzcV/03AGuvOd18KHGSlWjA1jy1i4kilbxn5Q2cr8kpn9Rfp3JGGJWOGLnR4Q==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU2PR04MB8918

On 23.10.2023 09:22, Federico Serafini wrote:
> Add missing parameter names. 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 Mon Oct 30 15:57:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 15:57:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625236.974329 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxUeD-0004Fg-On; Mon, 30 Oct 2023 15:57:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625236.974329; Mon, 30 Oct 2023 15:57: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 1qxUeD-0004FZ-LS; Mon, 30 Oct 2023 15:57:49 +0000
Received: by outflank-mailman (input) for mailman id 625236;
 Mon, 30 Oct 2023 15:57: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=Hhfi=GM=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qxUeC-0003J5-FA
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 15:57:48 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur04on2071.outbound.protection.outlook.com [40.107.7.71])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 124a41a5-773d-11ee-98d6-6d05b1d4d9a1;
 Mon, 30 Oct 2023 16:57:48 +0100 (CET)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DU2PR04MB8918.eurprd04.prod.outlook.com (2603:10a6:10:2e1::18)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6954.14; Mon, 30 Oct
 2023 15:57:46 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6954.016; Mon, 30 Oct 2023
 15:57: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: 124a41a5-773d-11ee-98d6-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=jGv3d6Zvy8MwrvBFwOhBEMOtPEeoTYxY2xfCBJ3JRR6tsPhFwTo3UlJZmRT7ZCLXqDoD9eZMvA8x7+RliDt7uJFrc8je744J63zMV8x42Oo9ThVQF4H/djNXDtEem4NVW9yzRvlwxdjFasBY6KlwOwAPVURV9NrDtFy4Q3PdhlVLjIVNy+SFdbQPSbvyjkvdR66mZV156OmG77FWHHoTEyXsz0rxyBwysKgT5hhUJMDH6ohpdTqB+8VWOJzeNaW2JMXQ8F6fXgzPEfPRptRHa6QyEHFj/z+pAZYTIJXW35uo7iK0RnQCaQzkPb6Nj6LTSrC0jI+Srs4cW5oDXs8vEQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=TiSxU06r7eW9JyNJKVtrLumX8Oc3b3Q4lQ8Ys4Q0Sps=;
 b=PizcpEwKta7bdVwcH85UZW4AjxAXw/JL7iS40SPwvjrFJiV9SC8b0lNyNOjqf0UYpDcNiuHogBpt5JgWG1nhixvOBMRjZ9fiwvBwy28oqiwdwMyv+mi+LlPeq05x3nI5fubR+B+Wj9qpBocxUSWeAP2csq51JLz/CSnGYRWmNRqpj6QHpKAsTTCJU3Py6515w0mZImu2m7ZIlgDiH2SuWXUVvhVgHbuW0R/2f1TX4tsQFmsCpBIb9FKCdRFF0GKiyBlrCh+iXwQvRJBCzkf9WZmzVbfosNt3g0Bq3ZRGzphrtd9YX0uAgs2PTViKKbvGG3Db04oUS2riCizvbGY/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=TiSxU06r7eW9JyNJKVtrLumX8Oc3b3Q4lQ8Ys4Q0Sps=;
 b=lawWOYYx+Zsx9TL0438Hr38QJYjMgbSV7Er0Un3x/J4qDttJkGP6aVWeN99O1i0Sv++tFGfC4qfaE8AAcDmuD6KRoqlrH/JaZqe7FXuGh0I2B1j4gsfY++X37Nia62CRbR3yPyJfTzJEqZa0B4j4JxYXGumkiQN3y3XFCR9YReayQr+Xo9IRyJer6KSDJNh3ZtfXNnYbtiezqzIU3RC+ycilBIHCzwJ7h+rdhMGvc1x6yDH2HdOIVR+D2jXmrquF2FRYNVCSEbsgD1CQRTBgDBkYgzoi5+wmSL18jIv9Y0DXnfDY+oUse7fpX5sxF8+r5HTfb1z8O65oXsJi5SyYPw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <d432b1e5-1c0a-b423-e109-a336da9e5ca0@suse.com>
Date: Mon, 30 Oct 2023 16:57:47 +0100
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [XEN PATCH 3/8] x86/vpmu: address a violation of MISRA C:2012
 Rule 8.2
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.1698045505.git.federico.serafini@bugseng.com>
 <064278aecf69859c664784ba18a7189d885112c0.1698045505.git.federico.serafini@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <064278aecf69859c664784ba18a7189d885112c0.1698045505.git.federico.serafini@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0193.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:ab::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_|DU2PR04MB8918:EE_
X-MS-Office365-Filtering-Correlation-Id: fd9bffdd-14d7-411b-4f95-08dbd960f56a
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	hXLFG/PaFRbjOrkBdmtuIWpSRIVf9Bd+emE6fHtl4Pb4cLjU4IbHPP/5QXhZ+/nAJGNsNFO3STEXAb9fv2BkxUfS0De5mMf0XCedEFj3/rr/1o5DGbAYy9pXohZZOYWaBzqGLjk678VoxjwdtN1KmT28gbnMqVLA+6qFT1mUKOx+qhypqQGE1JUGSQq2FM24JvylIU0IM5iiuvmdbj7+RgAIvWaHc35JQtbEY1u3oOa29H/JD/Bdl7DQOb+nK87yAlqJY+8VgXmjaKdu5tDensrfhQG9+TNEOCzjkB/U6QeJGCbrlSCjzdKCdO+bQCG4jAYkeTJXUx86PQuKv0AJg0WB0kBrxrs+GdeydXVp9JxG+SzkJO0dVMaOopvM2ff6VxlPUhlUXiRlTWrbNIMDVzkDiuxML5Y5g/3R04i9QUUQ+l9qtDcOy8zmaO6XsrmvWnj84/p0ZYInk24opukGwfoJ/RGo3HizMNTcgf//at0ZBUxssaCPi7+qyccgWOXqXlMVjqV8kAgjsAUlHyu8yxHIsKn+fRetJQMOZFFBQt+DMG8z8D/hh286epu30AE5xBu4RfiqhWoPHanNjVSameas2jX2FrNAxDTgmbnXDF5EElEDToFUO+TM8GLOmdIZp5PlrUNLu6iESsNXoOOSpg==
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)(64100799003)(186009)(451199024)(1800799009)(6512007)(2616005)(26005)(53546011)(478600001)(6506007)(6486002)(2906002)(66556008)(41300700001)(66946007)(5660300002)(8936002)(66476007)(4326008)(8676002)(54906003)(6916009)(316002)(38100700002)(36756003)(31696002)(86362001)(558084003)(31686004)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?RE1xbHlEdm9VT0UvY1hxMmJ1RFBENENuK05ya1pEOW1GYzZ0L1pTM1RDK1d6?=
 =?utf-8?B?ZTB5M09uTE1FUU83MFNmRWxpbTdTNjFiWTZmUUFVQTQ4REJwYjc4TjhDelhp?=
 =?utf-8?B?N2twZGF2elVMNm0vWklTMDNMTVpRRitZNHQvbG5HOTN2Y2NRdysxZnhaZEJJ?=
 =?utf-8?B?WXlvN0I3Y09ROGN0ZHlWdDh1TWtGSFBqYW9oS3drdVFvZzZXUWV4blovSzlh?=
 =?utf-8?B?NVorQmU5RUN0VVBPRHJXUFhkWWtlSUd5Y1doWWdlS3B6cjU4YXc2eU0wUXNK?=
 =?utf-8?B?M2IxU3VDM3RHanQ3MnFWVEl4K2ZxQktQMSt1T0hSY0RVQm1jdHEwQmxzZWJj?=
 =?utf-8?B?eE9CNzBYOGl1RHRYakNFUE5xdWk3dzNTVEtBcGVXUEJEYlVkTGxFemxTcG5l?=
 =?utf-8?B?UlVtZk84eE55djV0aFo3KzZzdGtpZ0NweUdhbngwVHNzQjhlUDM1ckdXTUtN?=
 =?utf-8?B?YUxrcDNwY24rdEMybGMwWllHamVubzVQUGt3ZzQyNWFLU3U4Y1kzVGgzRTFS?=
 =?utf-8?B?Y01WeHp1TVRFNFZTN1R4M0VIWnMzemFVVmQ1alY2R01WVC9DWjNWRjRveUlB?=
 =?utf-8?B?dzlEb3V1SzVYTWMzd1FUMGZMc3ZCOTBsZ1NxazhYR1NuN01uUE1LVTBrVlI2?=
 =?utf-8?B?b3JIV2pXTFpDbXpIeFl5R3FSTUNLMmpBaTJ0cnFtZ21kSk9hd2JXME5sNEJ2?=
 =?utf-8?B?MnZJU3lDZ21ocjlCQm8yc21qeWRNOEViVGpXazlLRVNkNHIvNG5KRTNrL3lL?=
 =?utf-8?B?cy8vNjBOeUFMUlRUb2o3c2lmTWhaTkw0Q0NXNjRTMDhUMWxaSk9GYU5tM0tF?=
 =?utf-8?B?bGlTemxzTytCMThUNzZ4Q0htSGdqbkdxMHBCSDBWSG9mVEVtTkxza0h2Vlh4?=
 =?utf-8?B?eEhGRnVCU1lEeEt5eVRMa1RMU0E5UEo0Z0YrQ2Fxd1Q1RTgzc0xwWGhRTC9u?=
 =?utf-8?B?WWowd3dRYUlWcXFCa0Z5elRNYzk1aXFpNnpZTTZCSjlhdWFOMU9TV3RkUThp?=
 =?utf-8?B?WFptL3dMVUhyNEZFK1NjK3o4bWx1ekNZZVFVRHFzUEl2MXRsNnlGRGl4TGh5?=
 =?utf-8?B?ZTYzMDBJNHBsa1FxWlhXRnFrdFpaMmhIQWVKNjBsMTVHVG9sSjdVN0NQRHZV?=
 =?utf-8?B?bUtvdG4xN25YY21CNXhvbGVlWGxiNHFGdGY0TXFGNG5IY0ZwL055alJsMDgw?=
 =?utf-8?B?SzJOeUhoVVVxb1YvZExZTkpBejRHM1ZxTGVvTTVQSzYzemR1QW1kSVBGVndV?=
 =?utf-8?B?dVVVNWFwSFZjZHA3WVRpSE5nbTMzN2xGTjFvK0RheHJ6anhhamxWOWVqdkdW?=
 =?utf-8?B?eDVGbFpzREYyRUVnMTJ3ZU0raEFLU2N0U0pmYVJMMCtuRmVSK3d0STVsQ0dP?=
 =?utf-8?B?eldrR2NYblBiL3ErVEJEdXRIQUxtTkRqNG9PdkJNQS9mR2Z0blFxNm1qNlRo?=
 =?utf-8?B?blY5NXRZYlN5azZVc1I3dkIwWmtCU2k3Y3lOdnlESE9UNzhlbGNabSt0QWFy?=
 =?utf-8?B?MDNVaHJCS0U2VzFDajFFUUpWK1ErV1IxRys1dXJCeDloTk81YnF5Vm9QN2hW?=
 =?utf-8?B?QkJUbitaRE13c21HRDRRSld0V2hRa1luUHFEUElxc0s2dGtUSmpSazFoVGpt?=
 =?utf-8?B?YXBWNVRhMjJ0UUNMYWk3YXArZ1MyLzRWblFBK2szRTIxSDdqZjFzK0Z1NDBt?=
 =?utf-8?B?NkRvdWVzRFhaQ1FOUE5RNkdRUkRPTE5lSGdtQUZtM1V3NStmcUZwRFIvU00v?=
 =?utf-8?B?dlBxWlRXb2lnR3FDeWp4NXRrM0dpdWRpN3Z0U3YzYUhaTFpKNUpvN0tvUWQ2?=
 =?utf-8?B?SmVaY2dkSGNRekhqR2ZibDZHb25UYnArTzc5NG40eks2ZlhhOUUvd3dSa2FI?=
 =?utf-8?B?V2Vac3NSMUdHeXJjdTV6QWFWa3U3K0UwTy9odkRoejAyWmFqWXErRkNXZ05W?=
 =?utf-8?B?djBCdWJ5TTFRbWdkUlcxSVRJTDVvbldZa1ZzYlo1QkxaUjRyTzVMMGNDNk1F?=
 =?utf-8?B?aCtXcFVlRWlCZDkvTTJ3cVJFeEViUmxjYkdmTS8rUmJWMVM0OHJLNW8xRGpD?=
 =?utf-8?B?TkpSTVd1S0tKU05sNURJM3h1dmsvTUJLMkhTWWtnVEJTTnBRTTdHNitscWJI?=
 =?utf-8?Q?3DWEO/fk3qvCon/JQ6A1z10hG?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: fd9bffdd-14d7-411b-4f95-08dbd960f56a
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Oct 2023 15:57:46.1936
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: Z7ZLhp6jBiWQlCJgUCF8wV9GBLvMsIWaVPbeQcUvMkpK27CJNfa2jRuQmhefRU7PG8EHqK4w1uwzZGfu/6lioA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU2PR04MB8918

On 23.10.2023 09:22, Federico Serafini wrote:
> Add missing parameter name. 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 Mon Oct 30 15:58:21 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 15:58:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625238.974340 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxUej-00052h-0p; Mon, 30 Oct 2023 15:58:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625238.974340; Mon, 30 Oct 2023 15: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 1qxUei-00052a-TW; Mon, 30 Oct 2023 15:58:20 +0000
Received: by outflank-mailman (input) for mailman id 625238;
 Mon, 30 Oct 2023 15:58: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=Hhfi=GM=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qxUeh-0003J5-Ir
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 15:58:19 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur05on2061d.outbound.protection.outlook.com
 [2a01:111:f400:7d00::61d])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 24b393db-773d-11ee-98d6-6d05b1d4d9a1;
 Mon, 30 Oct 2023 16:58:19 +0100 (CET)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS8PR04MB8341.eurprd04.prod.outlook.com (2603:10a6:20b:3b0::24)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.19; Mon, 30 Oct
 2023 15:58:17 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6954.016; Mon, 30 Oct 2023
 15: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: 24b393db-773d-11ee-98d6-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=c6N5sLRH1EzKrjrHMrRka+nc+NXcLrhqvgld4rtlsEtQGUAgFjC2hLukgo/araRPiKgk2XR9OekDGHKtQsiPLOKkquu7W2HHR07Yj/upa8cH2XePmqVneRbONIfU6/NRMiPQhYxcnwU0l6OMslgNf85p2n/9OX+v8tmddVdOATw7oa5sNCYYdkZxqgsw0nhsIKv9ADQh8KD2oF/yl5zLMgV4Q6S2sYvR8zAx8LKGEYUWuR8dHn2KQo4U38bj9/KXpdCpKe4EBC+y6oOI4runsl16+GkhCro8/ff3ABk7Ic9ljBScnVhY/W7m/HYhC/eKKZ41hebm69MIVTl1Lxk+Pg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=TiSxU06r7eW9JyNJKVtrLumX8Oc3b3Q4lQ8Ys4Q0Sps=;
 b=mkbeorvrRMgFMSg5ITxtmpqw7ABPwidCAoegZCz3BnbVDpwnvhAefjeVDlKpyI+doFLjLeTIUIB36NxwdlgkKGS5fxiUqKXRQByX9BpLz3svCLHUEJB2njV2n8nsqmiiYbpsQzni8xVJsGSEaQpC+kHJEItw+gYSgM9jXyxQTujW4gvdktb7ySq9J0PrCiGO98IISRGLNT7SGsVaALgOTEqc+Ugww4C9qTSO+n3isttSHZxBdlbxidr8poRE6f6SZqWm6TVqK9Yr4L5TPTBC0/KwnJcqKFj+2pCqnEiBrdTx2oaOFACRgFx4ZY97DMOMqoTW4Op2umcCkwgJxXJh6Q==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=TiSxU06r7eW9JyNJKVtrLumX8Oc3b3Q4lQ8Ys4Q0Sps=;
 b=VRAlwZeF9IhgK8V4vao+wAP0Ff48Bi0+NjRlEMy8WIa0iaNXmBaCdyJHlhNmXnPa5ilA6XgM8YUUPPNZmWkZGfp3w8Qk8eo765uOM2rQgIWqN5aTRL75Uv3Uiejhx+Y0MlR3hi7TTrGU0vEcd4IWFFAtB+7SnM3Sx4fc68IqsK1twCQ765b+LPnCWJmBUFVndcKlIBQO14TkXY/Y3efj/b7qGY08MDq0Ut+/GoLPZnG8y6S+As/MAzinD7803uSt0vzxhhdBuZkIoVYv0r02bA6aTrA7kJ1O2Fc/QkBKzE0Erfn76oCezDWkxluMx7Ck5JHRjGBbqSNRjyFRs0w1kg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <4ac01e8a-5742-72cc-55d8-6569bb09d816@suse.com>
Date: Mon, 30 Oct 2023 16:58:18 +0100
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [XEN PATCH 4/8] x86/smp: address a violation of MISRA C:2012 Rule
 8.2
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.1698045505.git.federico.serafini@bugseng.com>
 <e36afb831557c91d4a61967293799e189c83b2dd.1698045505.git.federico.serafini@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <e36afb831557c91d4a61967293799e189c83b2dd.1698045505.git.federico.serafini@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FRYP281CA0003.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10::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_|AS8PR04MB8341:EE_
X-MS-Office365-Filtering-Correlation-Id: 2af5ed1f-dfce-4ef1-07f0-08dbd96107ec
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	AarOFD+Bo8OVJPtUq2+bew5vxtgWixMtYw+kF15VvKa9I72+Vs9MvJTlV8pves0KV2urb7nLNnvF5CVA7sCk4RobnYDGOG5FGaKjWhKwTH2GobG3sfAM0+Ca8LszI76bPc1SUKkkWewNJKcF/PT8fF8hgky6uu2HccQ8sa3rH1I3p+8EHMh5pHuwDxU/VjtDmr8SsktP45AkCQimSvIIC2aVFg/WGoECO67c7iGRFnAVA6GH1+i2qOmA6cExJPQ1lcaU75co1wCqevqVPVA4DkhGbuHsz8H09DMyTSKHcu63SvdvUJukfLAjNuqiux/qSkV6Rt3PVgIzy2F+P1XYcrmZE+Fp+sxqB5y6wckeYic1ufPT/LpRk60Sy/enr3yIwzz1m2DKUeqSvaSX2d4Ps8I9J3TZDJHLcqKtd/yl231j5FF5e0WcfMHMz6ziIwYGmUxMdlpYcdeh7bnxpYJ8ZKv7Gq4MMadmz68nMOSbDOipGUAroH3UgcDPt0NgzJXQAw6oP5fSCEXLRBF4AAh8rUZcJOF8C3g0waFgBsAEm+II8+soiW8jYnfoCKDdvNEvnEse8F2ttwxx3MrKjxyQ16Y1j9VOSOaGvZLekQEjV6SXJT2gjDABu9uYoHGoN1zrLnKJMvhuMkfX29PPUH8v8g==
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)(39860400002)(136003)(230922051799003)(1800799009)(64100799003)(451199024)(186009)(6486002)(86362001)(41300700001)(31696002)(5660300002)(66946007)(31686004)(6916009)(8936002)(8676002)(4326008)(6506007)(2906002)(54906003)(316002)(478600001)(53546011)(2616005)(66476007)(26005)(66556008)(38100700002)(558084003)(6512007)(36756003)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?Zm00eStRV2FaK01za1ZrYVo2Tm9Nem9idFNVZkpWRVBKZEM1SWNRWmNWYXVO?=
 =?utf-8?B?bHFWVDArQ3JUSmRjZjJRRTg4bzRHdFZJa0RGMGZzSHFBTjBWcFU4by9mcHdl?=
 =?utf-8?B?b091REJ2d2xCWWV4cEpWV2RoRlYxZzNQUGtLVVh0YXMvdUUwWUZCL1JjNytD?=
 =?utf-8?B?WHljU1Y4RmJSdmd3a1FOT1RyME9WMTIrSjVLbDZsSmZkM0NXd1pCVWltRTRh?=
 =?utf-8?B?N1VNbkJvM1hmTFhxMU1sRW82NWVIRkE3WlBnWjhFK0JSbityNHR1RFkxYjdo?=
 =?utf-8?B?cC9HbHFpNWtwQi96Z0E1NUtrSlZXQXkya05iWCsvK1FuaENUMzgxOTE5Q2gr?=
 =?utf-8?B?ci9TQUJvQk56ZWdVMWdiU2NTRWIveStYK0FvZWdveWg5a2ZEa29BL052V3lh?=
 =?utf-8?B?OWRVRjF5bytxdW54KzM4MkkxWnhDM0V5TkN4UTJEVHRIbHA0QW54a3NEY0xB?=
 =?utf-8?B?K0hTei9pTUYzUk5kNGFLMm5wQ2svVUlRYXVxaXh5THpNbzdHZDB1anBGSmw4?=
 =?utf-8?B?QzFrUHlSOHpBaFlVSEtIbjNNMk1nK2FIM0k3U2ZFNmxTdDFJVFU1TXB1Wkkz?=
 =?utf-8?B?Ty9mbGNPWFdxaE1oS29vOFQ1KzdJOGp0MW53cXpTOGNZdDF2RlRTZzBRZTRD?=
 =?utf-8?B?cDdjMnJEMG9pQStNWXZiVkk1WGRlcVlPM0laMUVxNExyWHVzMkFqNFhIT1JK?=
 =?utf-8?B?cnRBeHVBOFoxOHh1Y2grVDNIL2REbENzR2M2d3plKzJpTVVjaXZRZDdJNEU0?=
 =?utf-8?B?WEw3YnM0WkJzZUoydmlHcWltK3RTcXJaTnBIS2srcVlYc0xvY2k2TjNTR0NK?=
 =?utf-8?B?S09DVGxDNHprc0FSRm84eGN5b2Nhb3ZIdTZVVWlML084Um44T1N2YzlHT25r?=
 =?utf-8?B?WHF1SE0zbTI1OUxrS1d3YmVUSjRma04xYXIyaytqdTlpRjJrZmE3OWREMTd1?=
 =?utf-8?B?NEdqMklUaiszSjJ1T29CUWM1ekxSeDd2QVZYbzZrYXZJMXp4aXduTWhkV0hx?=
 =?utf-8?B?VHF4WURKMVF5ZmpHOGdodmlTZjNscytSYWl4TC9OVUhTNm0veHAwV1dyOXRl?=
 =?utf-8?B?WUJ4dEY3TzRPS2pSYkY2amw5SEFrVkpYTklTUk05RlZkTmhOMGY0QUdRS0xw?=
 =?utf-8?B?WU80bzdyUEY0dlN3Yy9pUFJQSXRLU3Q4UEZCVEZwWENaVmJsNVB2RmRqVlda?=
 =?utf-8?B?NkxPZ2doSUR0emoyNkZ3ZzVyeExzRnNuK2pSd3FxZTBLU1hzOGRMOUpSZk8r?=
 =?utf-8?B?U0YyNEdDMk13eVJMK1ZhWVhGeWdZdzl1UEFTMEcxa2xibkRTUzBETnhMc2JM?=
 =?utf-8?B?Q0E1Nm1NL3NKOEMyVUxxMUQ0d0VxSWVXQWpqVkNmNElZUTMxM2oySjVmdWZq?=
 =?utf-8?B?T1VzVjExMnRIb0hiUTFpVXpwYzJTaDhFQ0I5b0pMc0NLN0pYWVlIWlptODVK?=
 =?utf-8?B?Ly9QTngxTHlQR251WWpEUjVPNGl6U0J4a3c5dzg4OTJ5amRlQjVLVjBVYXZq?=
 =?utf-8?B?dllqckxmb09TVitXYTNLaERuZjFLZ2Z3dTRjT3oySEY3WUtDRzNPRERNcTNo?=
 =?utf-8?B?M1lEelhVL2hnc3A3UWhzTG9lUFRPNjVYSWJwOTBlbmNHSzNaYzBaQzBDWm1j?=
 =?utf-8?B?WXhBVGs3T29TcTQwakVaaUd4WVFFSHd2ekM3TjJsakFJUlFFQ2pPdHhvRnYv?=
 =?utf-8?B?QnNzdnZLVlhxM2RjWlg2QVZDT1FZNDgwQm11YTdjM25wOFpNSmc5UEVoaXYr?=
 =?utf-8?B?RWVETUZ6dEltRmdRVUpNSHM3OVpRYUUxVnk5L0ZoWVhSdldUUmdIcHR1N0pT?=
 =?utf-8?B?VXVucVBjQmV0b0NMcUhaeitxQlgvRjZ5LytmZGx4ZEp1MGZabzF5ajd3bExY?=
 =?utf-8?B?VnU3SDVEVEtEZUxzWU9DbVFYMHE0STFtQktrRk9adVhzcThFZnJURkVLeFli?=
 =?utf-8?B?QVRJU1BpcWhjZUd6Wll5L1VSdVZhT2d5NTdibVBlbWsxc2kvWk9tQTg5RE1v?=
 =?utf-8?B?ZFJ5VlRLWUsyaDJPYkZsNVVnSmtMUlp0OEV3TE4yL1E4UEhNOTV3SWhNeGh1?=
 =?utf-8?B?T1QwbnNKUlovUHZOUks1aHc0elVNc3FURVlSNmI3Y0VPOS9pTUh4Myt3dUNH?=
 =?utf-8?Q?OA+DzzjpOnt8E2eUIpWPrm+1f?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 2af5ed1f-dfce-4ef1-07f0-08dbd96107ec
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Oct 2023 15:58:17.2604
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: fXH5SfSnIv78kmxmVlPDJ9A8fHiO5+YZ0gtZst4XFKhWm7UWnk6CD/fNRFwEtBAT/9Sa/V2L8u5zR5LGPpxQ4A==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB8341

On 23.10.2023 09:22, Federico Serafini wrote:
> Add missing parameter name. 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 Mon Oct 30 15:58:45 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 15:58:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625242.974350 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxUf6-0005bG-8U; Mon, 30 Oct 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 625242.974350; Mon, 30 Oct 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 1qxUf6-0005b9-5P; Mon, 30 Oct 2023 15:58:44 +0000
Received: by outflank-mailman (input) for mailman id 625242;
 Mon, 30 Oct 2023 15:58: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=Hhfi=GM=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qxUf4-0003J5-LK
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 15:58:42 +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 3280509a-773d-11ee-98d6-6d05b1d4d9a1;
 Mon, 30 Oct 2023 16:58:42 +0100 (CET)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS8PR04MB8341.eurprd04.prod.outlook.com (2603:10a6:20b:3b0::24)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.19; Mon, 30 Oct
 2023 15:58:40 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6954.016; Mon, 30 Oct 2023
 15:58: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: 3280509a-773d-11ee-98d6-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=BDnR40FcRlR5fDDZBVyCNaUoNjFQ4fGQdwQfkh4Z5aJlkVm4o7dG1JpPGQIj1pr+SYC9YwI7xKkF2fIcqx3AegbFIbrRBZYLgVwyK2WqakS94mo7O2vVaqyarpjvI4cck8g7yehfKi5nS1EshDWM1h226biZCOpWhpedCFT8y4ZgpTxq9GA0MjJVRNTSw8ESCikyZer3ArlXzLgwI9GpITf9OiymVzbJ4GVDOAxoYVZgzc7XgnguRAtKHNk19CGsmRJqMneY6KOd/4zZ94GrNOIOhPmFswB/1wiZHSyVl2x15hPZ9xzzyBy5YifB0ikH8/SUdfXHllItOJqnVn+/og==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=DxMMYCGZQJfesL30vhlhbBOk3ppBIyeZxwf+yGxd8Vo=;
 b=b8tOP3b0Y0w0ThkyAd2+r5lwZAchQWH4oBMviK9TDaekXsQ7rnVQhmG06RPucDTO4A3D+TY7/WU4a3BSQeaOI3Zl2n3Qz34dfKbRp7vTAjL2vI4aax3vHEwZVnzwV8FLBQDuIwRoNh6dcnf8FjehcnlN6NDm9FKQ2nfU2ZdzlQCNmq19Vo5Hi7nyeKLseICUECKmzFgDj8vk9hZ3pYfcR5dc9ULfBMP+JDmmpuS13BQ2920RNImWN1gXwPSb1U7SGRtUOL9BKWlW0rAbqRdc1Dg7MTpqJuo/tIc8wGTYwkcyuOjjPQ0Iqheztq31D0ZHi3Te2zb+7aANIqCVukSZaQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=DxMMYCGZQJfesL30vhlhbBOk3ppBIyeZxwf+yGxd8Vo=;
 b=Bp8mTDmwk30lwqiHQ9VriCQFKXju2JBALOIrm1Bcc/X2witnr5KBEATVMEwGFYM+O0onnwOJWNfw+6q1Oi2yP1Rf6Ig9CZPWBx8a7JGr6IRuMgOplxwQtZ4O0wwEpdAKaHGhXhpjEPfAM+p9KzLvRNl1Au0l38nVEiE4yTp+bhaJR97O1JHMHqlcn6KHcRvMZwdtl8HLKd7fRS+D/6wxLHqapWbRofWTEOWCsGFjG6pn2LSNfAYjliz6X+ko/4k9ZqdUME4qjothmKGOAIcFzVIYwWfob6FVdeNUOegJvMVaAsdmpd0sV+Wtq6efFZ0ylloen8/ZzUBNG+PzLRLeQw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <d133561e-8bc8-8ff7-b155-6e63e93a0bc1@suse.com>
Date: Mon, 30 Oct 2023 16:58:42 +0100
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [XEN PATCH 5/8] x86/pci: address a violation of MISRA C:2012 Rule
 8.2
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.1698045505.git.federico.serafini@bugseng.com>
 <19fce0e146462d713e3f7dfd816f87b35a94636b.1698045505.git.federico.serafini@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <19fce0e146462d713e3f7dfd816f87b35a94636b.1698045505.git.federico.serafini@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
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_|AS8PR04MB8341:EE_
X-MS-Office365-Filtering-Correlation-Id: 71c71114-816d-44b3-a4d0-08dbd96115f7
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	YbBYq52GmTj+6Ws2NuEfdghMRxX6ICp3EaqFx6oy/NWZAJVA47NdpfClso2aW/tH4V2ZxLq6kyXn0gWDMzPOiGtWvHLpLAOvM1KNivJZlA4HsFZjhxdfa/xFB581FwUf2uBKWixoHS7EySk6yCaXFX+3qCuy6HEjfq1iuaCWkb3oGLHOPglP5cHdd7Noie4zfi5NG+v8Ir/3vb/iLlFakTJ1QHyu7KVgBexBtnJBB5UmSqr1jqyi9xyGMLLrk9gbhImEJjSbK9EjE3FG4uIX7EVDLd+ZEQ/WCdEpxYzb1iNqatrqEr2Uyf/7A4psSz21/UBZ9l2P47eKZR4VZMwV7iWtFl6UBbXPEc36Hh3xxC+GtmqXNeJ81p06fGqCqsMyDVj1gyZcOMjevoxRiin9AmwwBuQ6KXKOrMs6hUyRH4uHaNnVZkIRurA5Ly0iF8nkaoKX7d7CEp53QntvUc1/W4Y6iO4lCcXK9a5edwCKvQ0BJJAunqZ8zckR0RFCIp5ckpn7fxkaWFzXydgLqkKKBY/dhhQ0iy5usXIzlT3etau+B0iJgvPUHE5exMloSADFl1A6BXuR7MGAaXZ+2Iqa3FQpghzchCD2H0aiwykmBT4l5PAzyUslNIgbHdmzUHgUsOyUdixcED89oJ8Rurd8Jw==
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)(39860400002)(136003)(230922051799003)(1800799009)(64100799003)(451199024)(186009)(6486002)(86362001)(41300700001)(31696002)(5660300002)(66946007)(31686004)(6916009)(8936002)(8676002)(4326008)(6506007)(2906002)(54906003)(316002)(478600001)(53546011)(2616005)(66476007)(26005)(66556008)(38100700002)(558084003)(6512007)(36756003)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?R2pDOGZWaklkblhsZE80dXB3QkhnTEQxeVdVdXZXRG1pWExhMjQ5QzlnaVdV?=
 =?utf-8?B?WCtXTkNYMTlPSUNCUDdGdEdHZ0JyMFpFUU0xeWZaRERJYVQ2RTdMU2ZVYURS?=
 =?utf-8?B?Si8yNjVQLzZGNUJzTThEMHFQOWowL2F2MHpwQ21ScjlOdWJybmg5VGhrZVdr?=
 =?utf-8?B?OVNhNkREeXBTZXZiOXNBc2FNR3VIUEhQUmo4a2RYazJ6enVuUE81Rk1TTlIv?=
 =?utf-8?B?YnpkNjIzUmxEUStjLzg2ZWRiL2FlSGwrV1MyV3d6bTlEYjVYQ2lrZGpNY2Jk?=
 =?utf-8?B?UFltSDcvMFJNT0kzN2d6T2E5ZzdGRFFKYnJNOXFJN0plMEpabi9DRmY2bHd3?=
 =?utf-8?B?cjVMck94UHRrMkp6T1pwTVU4Um1aa2RMVE9jSVdjOExXYm1iNS84VTlBVVdN?=
 =?utf-8?B?dHdBK0I0QVdPamtXQkVvSUthTFRBYm1PenJTcE1iM1FYL1R5bzA0VkxYL0pW?=
 =?utf-8?B?eXNwaWcyMjVTdGhsQVgrZWUrMXp0cE9GUzVLV2J3VlZiTy9LNGZQczhUSmZY?=
 =?utf-8?B?bUxIRWxJWXk0UDVPUGdrYklPMExMYzBsSGVuOWVKT3lWYnhnTzcxSUtsUUdS?=
 =?utf-8?B?SU84VmJNbXZPRG5pYzRlMWZJSXZHajNnK1ZsczVMdTkycnZ0cnB2REZ2WTFx?=
 =?utf-8?B?QTZrYm5MY2N0eDZDN29sZ2lPL20wQlUvMmRFenJrbmVLTDhiMU9BTlZJUDh1?=
 =?utf-8?B?cjdCS01KVWNROTBRaFdPdmMrMzBqWGRDc1BYRmo0Q0xMTjBJbDFvckE3Sm5Y?=
 =?utf-8?B?WUVTcTRqSFMyaENuRWxXMkhnb2lUTm8vckdCc0FhbVN6RWZCUXpualBrV3dC?=
 =?utf-8?B?MnIvcndVSlhtaWRsdWIzd1FobHQyaE0zek5xYzRIT2RLZHcvblZkVUUxLzdU?=
 =?utf-8?B?RkcrYzJ0emJPYklFalBNQmJKK0NtVmo5VzR2N01XSFBYa2taNFdPelY0cTd5?=
 =?utf-8?B?T29wS2RJdktBSzkvOTJQdHdCRzNGRnpNaUZnWStkME5FejdkMlFXREJ1MXB2?=
 =?utf-8?B?anJIbm9JSk9wMDRwcUppWmpCOEJmeVhwa3drTWpFdlQ5M3d0N3FnVE0xNldw?=
 =?utf-8?B?Tnd5Ly9keERMWUxNVUgzWjMzVXAzMEZSQUtkS0VlUDBGRHE5KzRoZjZyZlp6?=
 =?utf-8?B?WUdkbTloZXFZOW9jUVd1OTY4OVZxbmxYMFY1UStMbEhNczBmVDA2TlJ5L0Qy?=
 =?utf-8?B?UXhsRXo4V1dCUDlkQmxnSE5hQS9xL0tCbnZZazJWZDZ6ek1ReVFnY1dXbklH?=
 =?utf-8?B?Ujg1ZVpjbmpNS2hhcGlRMTU1S0R6ZU1EU0hYNVdGWHEwdjJMclFWQ2U0aHh1?=
 =?utf-8?B?UjBEZnpmVlMya2JiQlB0WEJYVFUrdjlxUjJBUXl3bk5XT3hxMEdrdVdEb1JY?=
 =?utf-8?B?QzhRWDhjelBZcUJOSnJ2NWI4WTFpbTdTVzc1eUxvNnZQcjFNSTVZaHNaMUti?=
 =?utf-8?B?YSs0MU5BNTh5K0NTY1BBSDZqbmR1WFJpcG9kM2R0VVRiNnlaVXJudTFHT0Jr?=
 =?utf-8?B?MEpkRllQa2IwRWVjR3JMalFEdlFPczR2akhnV3lCRzhZRnQ4R3RvQ0syYitv?=
 =?utf-8?B?SDc1ZUlCcGtYSmlpZnc2Y1NMTzUrU2U3TUpqWnhkeUozek1YblJmaVd5ZzhZ?=
 =?utf-8?B?RlZLRjZkYmFPWlp1anhycm1ZRVprQTBlL202dEovMHg3eG9HcVZvQUp0aGNO?=
 =?utf-8?B?RWlQMTUzOHo1WjBTTkVDQ05MWlUyaDlKYXJrRHdWRlk3L04zS3o4TTQra3R2?=
 =?utf-8?B?b2ZzWmdybDlHajllSHVuYWpDbDBNUHd1dDZKK0VJeGZuZWlKVE0rRWduVmZn?=
 =?utf-8?B?SVV0NnBHT1M3VnN4by9GdmVPRno1TElyVTQraTJzN1Y4cVc5YWJ5Q0s0WHU2?=
 =?utf-8?B?cEx6ZjNiRHVpMldIZWtjNnFTZ2xMY0ZwQzRkSVUrUFA4SjhrcEljS3ljeVky?=
 =?utf-8?B?OXZ0T0kvbFpYVkxXM3FaRkp6YWNpZnR1RW0vYTVid2syZVJFQjRFQVQ1b0RF?=
 =?utf-8?B?RS9sNk96bU1LVDBzNTl5NUpjNG8rb3RPODBSOUNVdUlFekJnU3VrNGZ6R01l?=
 =?utf-8?B?T0JmSDI2QkRoNEJVc25SRlp4NjdrNSt1L0k2YlNyWUprSzg2Y2V5SlZuWUtY?=
 =?utf-8?Q?PLbJ41PPhq/DlP0ZT+ljbj47G?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 71c71114-816d-44b3-a4d0-08dbd96115f7
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Oct 2023 15:58:40.8154
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: xsjSiCUYPPR200Oa6TGN2He07XtrGFwFQ4rK+DgY29dWW3I9VIEZ5QAcjjN0fjTVs9zZBswEku+TTHTmzf/aTQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB8341

On 23.10.2023 09:23, Federico Serafini wrote:
> Add missing parameter name. 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 Mon Oct 30 16:01:37 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 16:01:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625252.974360 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxUho-00085Y-M6; Mon, 30 Oct 2023 16:01:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625252.974360; Mon, 30 Oct 2023 16:01: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 1qxUho-00085R-Ih; Mon, 30 Oct 2023 16:01:32 +0000
Received: by outflank-mailman (input) for mailman id 625252;
 Mon, 30 Oct 2023 16:01: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=Hhfi=GM=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qxUhm-00085J-GC
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 16:01:30 +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 959883ed-773d-11ee-9b0e-b553b5be7939;
 Mon, 30 Oct 2023 17:01:28 +0100 (CET)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS8PR04MB8835.eurprd04.prod.outlook.com (2603:10a6:20b:42e::21)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6954.16; Mon, 30 Oct
 2023 16:01:25 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6954.016; Mon, 30 Oct 2023
 16: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>
X-Inumbo-ID: 959883ed-773d-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=V1mh2uMZu63F1rt9aKuMyb2H2gMn76Y7DPjOjJoEkzjTtG3r/jdvF0EfIuJ1Y7cib7jl+s7Qh29eW74f+7ffYG+rdtSQJ/k3wMtCkaw3iKxYj0HtZY73A7Ya2TAhgBV0lyeHV1h/WptwH/Vst4zU9ia/L0tHE2hZY6MWvVYkySM27JGSxfSqpRghNzAe0614/c+cjYoY4n6rr46jNrRS+Ae4vvwW7kMeEB+cmwmHQBMvf0KyPE68W5+DfgC7ILXKV5KVucpV52dgAEZzj0dp3HlVAr0ezwhqQg+W6Jq3C4e7+caAaiX4ztpNQ8wLkFmBc3twzvRjUOg7kY/aDoNC9A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=ahqQJthhHqeYtQzGfndnYtX3ZmHLkrUP2KSsGgJ9lfE=;
 b=SsrYaGJ2fXLMBmE6zLYB8CViKni/jpBZunCL1dTBy7JpEDcfqgNGk45O6FbHv/WPCRYZpcIM+J+y8ixdeFeufv5EIsNjdJ1MhmIYo0FsAGSfHRvPnpOQdM8D1TWY6GNUHV3J1CDlCgdQSZSHohiVjDG6AaCdBwZIb+K6ZFE0RI9zmXM1FK8h8k3UUeD2S2Od4FbXaDHYpOV4v9XIA4x5OmHNUIUPtTGz8i06Bj8XqHheY9v5MpUs8w6gyoPQZFLNsX3H1k4K7FwhaaT20mqwMAeEdQ8j+uHkR1svuxJpKTrojD49Ew6r4pRRmjyLiy27hWWh3Qt6XbBhNDtB8PN57Q==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=ahqQJthhHqeYtQzGfndnYtX3ZmHLkrUP2KSsGgJ9lfE=;
 b=2IBdkUMzvM7Zu8egaBWolzXbuRtVhs9I2BVaMbHKSrGgt/QUIG1zImN16y4pMrzmuVZEftri3iVTAgLeHXJi9HKqj1fBxcV5QkoP5f97LQ3B20DtdKEfUZx7jHzpnAmPGfkz1qDRwm//0AS5/I77z2w/bRiq6ghGKWgy0f/LdxMHOYzDx97iw9DYi5BXdlM99X/M7GNyZFWDVXXB4kqNKmNHIWyd11QMGf58/iYOfbdMDm0K9zcTp60h7LLwcKJ+ZSfRgdeFFJGjT/AjbSSgePJ4IUDvoZ5muxGczzCD3vngXPn9llGLKQtjg8hF8OKSJtmaWAxcxzNZk62vF69J8w==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <91c8c189-fa39-b0f9-49b4-635d4d7344ea@suse.com>
Date: Mon, 30 Oct 2023 17:01:27 +0100
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [XEN PATCH 6/8] x86/physdev: address violations of MISRA C:2012
 Rule 8.2
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.1698045505.git.federico.serafini@bugseng.com>
 <dee7168f9ce2c52c8db0c4d5d48394550592756f.1698045505.git.federico.serafini@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <dee7168f9ce2c52c8db0c4d5d48394550592756f.1698045505.git.federico.serafini@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0172.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:b4::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_|AS8PR04MB8835:EE_
X-MS-Office365-Filtering-Correlation-Id: ed629dff-7505-49c2-b540-08dbd961784d
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	QXdkPOsu0ixnMhiOR/JgC+IM+yXkAeQ8WXpwygu0woOiT1aXlXD+UmJ5DcBlbMnvAxXyD0MAOX3/IzOhcC4Sb9jlaXAADyJL2BH/ImfEAZQpxpG4YjHhMqsNEWCg7ogU0K4HiwOq9/0vTFl6+BKpz8jplmFuf4FRdDzTLOQl6edPjnIuMkITMp+BujF1ARYJOo6ebtllMry9RG9ReQstgiX4G6axp+on/IX3u8UYTX20zZt2XJrJkxGu4YvOv4/zInA7werve5XpUyrgdg4IVjA4Ea6mCKBueWrB7zbCiN5kYGNg3Q7fvk1soiOVpMwTTANZp7/LPl6Wb1+r/Qp14oCGsz9eeGvBou2y3HTIY4u2iuoq22rTQdc27zBe0T2F5U5Xu9MsB0olsHYvd2QJumcNWYdLSY22mat9C6K2m5SKrJcVFQz/5YIEDxOO22PfUsRHx7wFNyKjinIm1v2mdLD1NU9UYE1rof8IYUpSWniDaSv5FT0yLM5kuuKVu0yn8YJw+gTpCZUgLCryZU67pRhWw9GMotKLBGn4QXOpenyy3xrEHxrH+m1gjs5Rsyi56aUzH55Xk0qOPbCd/H6Y9sBPeMFPgmUCl1BAvBS5OSkMQuUgemJ+cvzTgAQPs+Strz9Dqc9r6XeJpz6riIXMZw==
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)(366004)(376002)(136003)(230922051799003)(186009)(451199024)(1800799009)(64100799003)(26005)(54906003)(66556008)(66476007)(5660300002)(6916009)(38100700002)(2616005)(316002)(66946007)(8676002)(4326008)(8936002)(53546011)(6506007)(41300700001)(6512007)(4744005)(2906002)(6486002)(478600001)(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?TlplMWplRjAwQUxHWWZpVHY5U2tpWHlBQnhETHpTdXRKTzdvWWFnZXU5SjBJ?=
 =?utf-8?B?ajhaSHh4T1JIM3lEcEhFYndmM0UwRjFtV2JTQzdzZld4SnFWcGZTZ05HVjNX?=
 =?utf-8?B?QUtFbzBZSkZ4VGhQUWRYdU5hZXBLekhDMU95eEhrZW5NRGtXSW1rZE1XRHo5?=
 =?utf-8?B?TXNNWStlVE1KNVYrVHRJcUVKWVhVSHFxNmFIaWNFZitUQUtJR2kzY0Vyd2xM?=
 =?utf-8?B?Ty9QNDFDalBYelhjUm1WODFHVkhxc1VXTi9mbTBPMlBoeC9UQ0J6UlhxeGt1?=
 =?utf-8?B?cW1kR21Ua2FFSjkxcHZaTkZPblNPekdWRDlFRHpmOHhZbExaWWdRMi9hVDN6?=
 =?utf-8?B?a2xaS3J3SWJKVUFXTnhsL1c0cFRGdS9DRG8xRUQ1T3ppdFRmeHNmVzNKbzBq?=
 =?utf-8?B?Sk5LejA2MFEvMDkvZGhVblppci80Ylc2MDVxQTBiY3BCOWFQLzdsTkJwYllD?=
 =?utf-8?B?Zlk4cHlxeWh4Yk5SZC80ajNFbklHQmdhdk9jMkhoamRYYmdFc1hjd3RheGI4?=
 =?utf-8?B?NkFPdG5UV1JzM3JwWmlGb0g1RVMrR1hkSTlWQ1NvM0REZVhCQkhzODNySnU3?=
 =?utf-8?B?U3lVQjU0U0s1UTVGREpUNXhqZXZkOHBuU2VSUFBzN2k4SnNoVE4zWUJtb1B2?=
 =?utf-8?B?eTE4ZEtyN0xxMzJWT1VaM2psWUVsa1ZVeUtQZmJNV2h0QXFRRHZKZm10ZUx3?=
 =?utf-8?B?QXA4cnBnWS90c3FpUWh4NVJsZUtCeHArQXZQdWN3UGhOQmtJSnhFbzZtdGVl?=
 =?utf-8?B?aDRaME0wS2F4UEdQV09MNFdrSy9aWWxKRUsvbTZCSmNiaG13ZHNVR0d4RVhY?=
 =?utf-8?B?dHM2YWN2V1UrQ1RSZW9IOXFDNUQwcXJjMEx2WWpoK3c0RGh3aWoySHhTc0lF?=
 =?utf-8?B?R0ZmQnBkMXY2N1JZNWgzOVpoMW56YktMVGREQlYxNm5iTVVzTGRieXltZHFm?=
 =?utf-8?B?dkpVRStmV2ZsamhwelhXUmVPTTBTdnp6em9MR25rMFF5bHpyUDlqTGFibTQ0?=
 =?utf-8?B?UHFSalNoSlJUd1hYQmg2ZXhZbEdGeENCTE12N0V1MXFsa3JnYU1SOWFjWmtS?=
 =?utf-8?B?bzd5SEpzUzBKTWlibXBVcUY0aEJLN0tyT051dUxTT1YvYnJ2d2ZsSnp6cVcz?=
 =?utf-8?B?R28xbkR1anp1dmdvQjRCbmtqdmU1YlpjQUpYSjFOb0JRd0xoN1pXSkI5ZjhE?=
 =?utf-8?B?Ky85TlZxUkkzd2NjZU45eTI5Z1g1a1l4eGZVT0diS1dvTDVjbWxRYWtPNU1o?=
 =?utf-8?B?S1N1QUMvVXFuSzBXRWVYbFlpWnFMVGsrSmZQSGNONUJRNm5xYTU1RUdFQ0lR?=
 =?utf-8?B?WXo3MFVSTnNvR3MweXR1aU02cjA2ZW5OWTNJUDJsYVEvcXRmQkkrVk8rdXpU?=
 =?utf-8?B?aHZIOUtYbThNeHBlb3hpRDl4OVQ3Sys4QnFzZG5mQTB3MTA3K2g0TVhMVDRT?=
 =?utf-8?B?a29Zb0o0SDZHN0doT3FvZitEenZRUDUwbTduNUZuaktzUjlOMXVhamo3OFhY?=
 =?utf-8?B?blZ6Mzk2UElwSjRtczk5NG5lZWNSbVdMaVRZVHl6SzBMaTdaUW5pcDI3UlNV?=
 =?utf-8?B?clE4N0xFNlNkdDlqeVBONG9DVVRSaTBxTkRFVmx1ZWVHTTAzWG5OOWhNandJ?=
 =?utf-8?B?Umh5RndIRml5WWNNQmgvQVBSR2JMMllNemZEd3FDemZ4K3JDbEJod0Y1QkRM?=
 =?utf-8?B?V2lvSEdrSkd2NmhKVHhiWHVEdkZsT2lmMkwxVUtJYUZoNHFqQTZhMHFWeDlz?=
 =?utf-8?B?NlRoZmtxblJvZFZwenEyemtSejBkejBHQmIza2F6UU5GRmRTSnFQVlNGR0xY?=
 =?utf-8?B?eDNCc3BWbW9oelNURDZQVmVxdEU0NnFlNXJwRlRtSDg2VExIUXdVMkVOK0xh?=
 =?utf-8?B?czhSeVRYZmx5ZkZoTUtiWlF3TGR1N3grWi83ekhqdmhHTkxXZjdQdmphWGJl?=
 =?utf-8?B?MnhCS1BWMFVNS3diQ3V5TUpaaWMwYStJaXBGLzBqam10cXZWV3kvZXVwemo5?=
 =?utf-8?B?Wjk4am56eXVNcDg2SkNHOTNjRlc2dFBYR2UrLytWam9QSXlxQStWeVZMekRT?=
 =?utf-8?B?eGJ3emNKdnhJcG9ab0xERjdqL2daQnpQOHNSTDAvR01KMTBNTGdCVHpIYksy?=
 =?utf-8?Q?rD82wiR8HwQoDHm9nCxAFGHPT?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: ed629dff-7505-49c2-b540-08dbd961784d
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Oct 2023 16:01:25.7792
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: vQ0Bdv/9/T53delj+47LY1k2XHD3lYGNyKAw25dFDkn8b1OmQlnE2f4FMMMCtvzzyoO/9SFLZLDFPY7MQ+0gGQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB8835

On 23.10.2023 09:23, Federico Serafini wrote:
> Add missing parameter names. No functional change.
> 
> Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>

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

Albeit I can't resist to say that ...

> --- a/xen/arch/x86/physdev.c
> +++ b/xen/arch/x86/physdev.c
> @@ -18,9 +18,9 @@
>  #include <xsm/xsm.h>
>  #include <asm/p2m.h>
>  
> -int physdev_map_pirq(domid_t, int type, int *index, int *pirq_p,
> -                     struct msi_info *);
> -int physdev_unmap_pirq(domid_t, int pirq);
> +int physdev_map_pirq(domid_t domid, int type, int *index, int *pirq_p,
> +                     struct msi_info *msi);
> +int physdev_unmap_pirq(domid_t domid, int pirq);

... this is a good example where adding names to the so far unnamed parameters
adds no new useful information at all, as their types were already sufficient
to express all that needs expressing here.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Oct 30 16:06:44 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 16:06:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625258.974370 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxUmk-0000tk-DC; Mon, 30 Oct 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 625258.974370; Mon, 30 Oct 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 1qxUmk-0000td-9F; Mon, 30 Oct 2023 16:06:38 +0000
Received: by outflank-mailman (input) for mailman id 625258;
 Mon, 30 Oct 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=Hhfi=GM=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qxUmj-0000tV-Kk
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 16:06:37 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur04on2082.outbound.protection.outlook.com [40.107.7.82])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 4cc01b74-773e-11ee-9b0e-b553b5be7939;
 Mon, 30 Oct 2023 17:06:35 +0100 (CET)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS5PR04MB9799.eurprd04.prod.outlook.com (2603:10a6:20b:650::20)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6954.14; Mon, 30 Oct
 2023 16:06:06 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6954.016; Mon, 30 Oct 2023
 16:06: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: 4cc01b74-773e-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=VqVT+lH5it+8mFORBULzOCbEUF66KRRsENJ5s2Mrrpu0jfnj+dFKQ5k4MTjtR1/g66ekY7N3Ar6feqZU89t/2s7Lydt2P8+aq8SwxvR3riBBG9KNHwN3BxrGD50inyXxIEfM3E+zSfY8N1KeRSg/W8fnAuyTnzdbpm3lfWIcK3eqbfpcKQN2tzrORwHOhmu4kpIMQYd6GbG4rpv1xwo/Y5i7vrfL0pnVxSTPaazyUCrwLgWxc90YqXnk5Ut5pWdONL8VPYjHp2UlAS9k2z+9WCECwnpITSI06MkPxDu1hDLm2e+O/t17cRQ1oz0Gt61N+zlvwiWzZddL+0vddQP4UA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=7cAv8akFaenkTCx0mhcfE/Di1PvMLJQxn7lQ1lqkWqo=;
 b=L4xlyLtfYU21V6dkd+iGp7nXf/lA0/cZG5R/uDIR6sfeFtsVkL0c3SjSKu1xZFPBO30DiRaPgzw8xmNoIkTR1DXEQIZyF/HJvXPvBk3SmjLSeNB9PmxQBAQ0hOWvLh8/cx4G6+biJYAhA90pPGjshJ4/m3RdzDDF5if7DpJh0a88ZztrEN1SyxpBUlWdL5bTK2F0sQ8WUBM94bI+c9y6CTEYAQvc7dMneYosbnPoZYRjMseN8bakJUr+dmQibF0C9Q7DB3jE4xbF+YAW+ADIjuD9/d/wOEn23V/DVXYpp/NIfrrXfk59IEzWZ4/tg0pvUgOvy326DyZuRkqEgyV9FQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=7cAv8akFaenkTCx0mhcfE/Di1PvMLJQxn7lQ1lqkWqo=;
 b=iN541qMvm05gvlHe2L7/fSbw8HeU7Q44gIJk1vjtCxqbYuyBisVAlLP2TkaEVuLlEP3T7ixgDqraekxcFqq2sf/xRd6yKTxLzuUy9SpKlgjCGnMP/VLoTD6zcjJYSw2jUQI+8/91foOhVMOwNtBdweTLV5U89Yawu4FeQq6RhKrPdtvmcBUbWf/tLuuPltRyCmk9xT7tt0RQJT6vla3mkDIKijsl5ddMGxgH7hUOpgWZVYfosC+VP+g/NUXG3wGNFsFGdhllOheleVkOwYMJjFOQJbLcDCOjtVsz4PUODpBp2SrmQhDzpBFeeSHFsBqFvFCwQW6Mx/5p9DUJJi9VhA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <5d26efc0-caab-76f6-c02b-cca9f421c88d@suse.com>
Date: Mon, 30 Oct 2023 17:06:07 +0100
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [XEN PATCH 7/8] x86/platform_hypercall: address violations of
 MISRA C:2012 Rule 8.2
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.1698045505.git.federico.serafini@bugseng.com>
 <40839b7484878109b3096347dfc113bf177f210a.1698045505.git.federico.serafini@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <40839b7484878109b3096347dfc113bf177f210a.1698045505.git.federico.serafini@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0432.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:d1::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_|AS5PR04MB9799:EE_
X-MS-Office365-Filtering-Correlation-Id: ecdaabb9-06a4-48a4-dc5b-08dbd9621fc6
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	1nx3VMdwGQnaA7jOctp1GzOeCLU6DP//cFsVmaWh7Cl9IPZmTOlEZgrGfX+OdOrbxuv/jY7RLFpjyA6hbisxRxqlidHD5z4KHfl2vOhad1ch7OnHXf+rupPjT66Y9MVD60qHrcQstY28/t6wezTGcusBFgdxMCsX0tyHTDqt2bpty/KpNKjqTsNfGMrWgWGvuH2OWmvOEMtuRPJbojRtUOj6lZt4dwTLw/yTT/JvQ4KqL56IOA6/68FKPkhAspOnimD6SrcaWvmeGBhFj1fl9ck2Pyi0nboEigEX3Imj3IS0XEwIfbvMHIElmj6UgxM6rEarInkfaMG65Mta6XfHQO6/W4WVL3XHHO6OicNiTGf+iPVU3dmlvObp5+G8W5cVFDe1UMFVOM5Weyo2HTrUw/AfXJvZLsO7xRbB1Ks+bdRVL4PJw1XwIe7iy17YIhsg01RhoRQbTidxmXymC54vlNNsFKd8S/EKZlMPWKmtPrc5QI2bhdhJAFZmZwwlEYoL2ltlCRbIul8PLgZdm1m5DQ+v22EXd5Kp/h520IT2pBs0ieT+zbP4DFmH5hTZb/PJ7j0BYGwHV8KDYavQpMqeZ+efNu5VmqF1oRNttES2/UZf+e78H0zsFNmvOOgVQCw5LigWJh9YzSh6/0CSlbWrIA==
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)(136003)(346002)(230922051799003)(1800799009)(186009)(64100799003)(451199024)(66476007)(66556008)(316002)(54906003)(41300700001)(6916009)(558084003)(8676002)(8936002)(31696002)(86362001)(6486002)(38100700002)(2906002)(4326008)(478600001)(66946007)(31686004)(5660300002)(36756003)(6512007)(26005)(2616005)(6506007)(53546011)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?clZCK3BkK0YvMituZ1RGZFY0K3BBaksxVlJxYVp6RzJhaUJ1K2xya0dqbTRm?=
 =?utf-8?B?UzF5Z285NTBaZENENi9BNHhXaVpJbC9MNldiVmxiS1N1NVR3Y1YvNi9FOTRL?=
 =?utf-8?B?RXd6dkYreHd0blFXODk1T2IyemlnTVlRZXpLSTNVeGFQa1lybHBVWG9BYjRG?=
 =?utf-8?B?dXBCR0tOYXBydk9xNk13MDNMYlJwTHkwYXJSdWlXZk1QVDlaaGVzaHc1OU9K?=
 =?utf-8?B?YlFHYWxkWkE2WVEwd1grY3hrS0Uya1BoL2Nuc0gzcURteEVZRjY4eTRVUDI0?=
 =?utf-8?B?OXpRSEc3a3NZc2Nid2dRZVBzUHFqMjB6TGRrcElwc2tLTjU3YXNDb01Qd2l5?=
 =?utf-8?B?YjU3TW1XQlZ2bWhvaG9FMW1mRWhEM3NNRm51WDdzZzdoUjdZL3kvV3pDYzVW?=
 =?utf-8?B?WTZXUkp0S0RBRVJyYnRTK2R2V2dwblRCT05aNnBhZUJYR1VUakdZc0x2cGhv?=
 =?utf-8?B?ckhPNm5XeDBzQTA1V25iVWtkV2liWlErZmpmQVp1UncwcWVvRTFIK2NMV2w0?=
 =?utf-8?B?NlVMYWZvRW54RlBoc0haT2oraE5YRlN6YkViRnVaVFlVUzFFZFNtM0dlQnh0?=
 =?utf-8?B?RGxHT1hlV1VUL1ZCUTdPV1VBUW1RSTVNTWFUck9sQldGcHJEM0gvbHpiek1z?=
 =?utf-8?B?ZVlSTDRGdmQrTitOZmJ0czVLRC9FODJ2dVVDNGxhNFU1bE5mQm5LaTFqeDJS?=
 =?utf-8?B?b0hDR0tXMG5RT2c3V3RmVDhnTlZtaGtHWGRySEcyR1hocGZZK0lNN252TUdL?=
 =?utf-8?B?UGxtMEtUQ2tyWFNsNXZPb01WczFpMzJyZERoNDlldllMa1VINVR0L2prOXpL?=
 =?utf-8?B?ZUN2SklRR3RMT2hSMVNFMjJzdTlHYlFiREUrVEN3UXJ4aTdnaFNtblhVbkpY?=
 =?utf-8?B?aFZkQUpWTVdGeFVobGk4TWR5cEFKZVMxMlArY1J2MmZHSC9ZVERPM3VHTGhE?=
 =?utf-8?B?V2RUZkU0VXppK3FWZ1FVRHQzdVVXT0VBVnpqb2VVY2lQUDVaYWZuUnJKclpv?=
 =?utf-8?B?U1lvSFBEL2I4U3VHTFROQ1FpZzc5RjZQRVRuNWRtakFZaGYxNXhmWWRXU2Fr?=
 =?utf-8?B?Z3Rubjh1SmR6KytzblJYTmV5SEljY0hVM3lUN0F5eE1yQk5YRzRnU0Nwd0gr?=
 =?utf-8?B?czg1cVAreERxR0pHNWRzNG5QcVpTeWNJYVJQWWFwN1RhbC9MSmJLek9pV1JW?=
 =?utf-8?B?dVF2RGtWaXlZNGZlSVIvTlVjUHQvYkhSTitoYkdYUXJ0OUIwSUJvUG1aYlpG?=
 =?utf-8?B?MkZROW1MTEZiY254R0xVbmFiRzRlODlHRWZQR2UzMW1nSzhtdzNwSnVlSFZn?=
 =?utf-8?B?ZEEyY1VPN0FiQ0FHQ2ZyT1BrdlFmdUhOOTBKUHRzK1RmbVROcGZieG5mMFRQ?=
 =?utf-8?B?bklia3ZPMEpCNWZQVUlhOTYvMEcra3dhQzRZODVtMzBPSm90MldBOG1zTVlH?=
 =?utf-8?B?VlFuRXhMUGl3ak5sdUpaLyt2RENXL1VMNWQ0eXFTcWRzSG94bGJtbTIxb05w?=
 =?utf-8?B?STNMR3lhQW01aElnM3RTeU5nQlVuOFN6OVdyejh5MmtLTnVkUTJRcDB4allD?=
 =?utf-8?B?OWk3MndCRnpMUnB6b3lXa3VmanFJbURHWG1uSUhSYTYxc2ZUN1pZOEkwRTQv?=
 =?utf-8?B?TnZycE9YczJ3d2t0bng0M0hyb2ZsQ1VLRHpzU2JLd3d2OFdZY0ZWVFYyWmRm?=
 =?utf-8?B?NDQ5Tkh1WHlnSG9EYWs1bEI3QnhvbS9XeDFiMnFPTHRRckM5RU5lbW1XK08y?=
 =?utf-8?B?cyt6Z3dpWDVyVmEvd0tsb0M5Szh6ck5tdmZ5QzF3SVo2Q1VQamt2WHJ3aUp3?=
 =?utf-8?B?akJWS3hiblA2dTNydUJlaWhmWGJQM2NGbEpJVjhwVmgrTlhrelBhcDlKdU9G?=
 =?utf-8?B?d3FVZi84R1RCbTN6NFdnR1lBUHM2Qys3S2JqMDVoM1hNL0laQk9TSHk1Q0Vw?=
 =?utf-8?B?WWk5cEF1bzQybTc3OFhSMDZnc29QK0doMXBkZEFqVHVtRklGa2Y2MVZYTEsx?=
 =?utf-8?B?QmFUR29MQitpOWdaQ1VaeFNOUUY5emY0RzBVdDcwNWU4eW5qQ3Bjam9IV3hs?=
 =?utf-8?B?SkZwUHR6YzIxc0dqMERKT1lVa2VCNjY4MGFjSEMwUElKekM4NVFtL0RZQU9V?=
 =?utf-8?Q?oINzkJMt6yQl+awdwwxras3LV?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: ecdaabb9-06a4-48a4-dc5b-08dbd9621fc6
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Oct 2023 16:06:06.7848
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: bgANgW2hrrVASWHix7HDgQ8Ibxs0x9lRh9wbQU6hNryPR5xT2PmScKtleH2qg0yKXG5PjhWGpz+wBGOH5l85mA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS5PR04MB9799

On 23.10.2023 09:23, Federico Serafini wrote:
> Add missing parameter names. 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 Mon Oct 30 16:07:09 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 16:07:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625260.974380 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxUnF-0001J4-KS; Mon, 30 Oct 2023 16:07:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625260.974380; Mon, 30 Oct 2023 16: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 1qxUnF-0001Iv-H6; Mon, 30 Oct 2023 16:07:09 +0000
Received: by outflank-mailman (input) for mailman id 625260;
 Mon, 30 Oct 2023 16:07: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=Hhfi=GM=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qxUnE-0000tV-MA
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 16:07:08 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 (mail-am6eur05on20603.outbound.protection.outlook.com
 [2a01:111:f400:7e1b::603])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 5f6b8d25-773e-11ee-9b0e-b553b5be7939;
 Mon, 30 Oct 2023 17:07:07 +0100 (CET)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS5PR04MB9799.eurprd04.prod.outlook.com (2603:10a6:20b:650::20)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6954.14; Mon, 30 Oct
 2023 16:07:05 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6954.016; Mon, 30 Oct 2023
 16:07: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: 5f6b8d25-773e-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=WRv3QftPfgZwl+01VYhcTIVbuqSG3qF9yu7ZOYWPsntkmjRlizMeVZ9sboTRxlDH9tDnzS7L4X8+ZhU7cXx8c5VuzwTBayAkniLsM4hDMfjAz7w3r9EQQI5pJNu1qoCzvXn4r/RN1BRT0KU2e3SVrNXRPSgv4F1i7Bf4EUpH0yf/oSBo4qN+Bzyt7LjozxGIqeysOQ4RqqNFRWtEe0KXZn8TxXMkuRKcRZDmnCseDLXa4/mG8WE1gT7oz3Z6/wn98zmzpMDnbuevup9kfvEddRP1bGyvI42VdpWPl73qzopGyOiX5TQYemhnEQlNwb9kymOiReVEYyO+KoN1V1giLA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=DxMMYCGZQJfesL30vhlhbBOk3ppBIyeZxwf+yGxd8Vo=;
 b=hJMyE0AO8aHEorZrP/h4t3Ed2saZyi/jwgfbqJ3t46vfG0M/9cb8lGJaqKzz9LFm0Iu5GDOskdxsvkbYMG7tBhH+vjMNLXNwGSuohYKxIMCfrlLmGPM346Tr4CZgtlCA+rczQW7bs1jOwf6WaT4zLLwVdCii9uYV5WTy4YsR2pJfNGGYb3Rpzf1RCWRuzrmgCbyKOm5iFqX2vkeoKWinuP94rqW3g1k0NhtR5FBgQaOofajkU1o/f9eOFLui7FEo24cfDF9BPdF2dwcMI1T4fN0uLGRWIXg6rikedi4GMa3E9NmjVY1KeTzLARyvMt450YAPFyITRYsYQ9D4n8DQ2Q==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=DxMMYCGZQJfesL30vhlhbBOk3ppBIyeZxwf+yGxd8Vo=;
 b=OjAwOjF1gF0vBhTkk5ToqousYH+IMrbt5NPqx3cYV8p/KdHQkWoTCYL3B9PuvBt8/S4CrdbAejEo4uQwRv2nwWUPcae3NFLKAcofJV2JX0YISH+6xCnEBiP/YAzKV1vLa71ZRy/o9gAAequUMno0kbIHA/0R9UEN5xgGJnIEAz4XNfNhl20fGFYwB+Q3iKn/fbWpdRL+mNQa5snYxYYlapsUfv41JmdNDfonHas2PLkMIrTUoDVOtpIfWim2GuqTArmYoPWHu2LFvHy2I8kEwt0GnszgAP6RdykCJxDFv9YDusp5n92ln/G77zcMHFmX3niTUouOE2chuR8UQVKTDA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <c66da25e-6bc2-78f9-75a3-e1d3974fce3e@suse.com>
Date: Mon, 30 Oct 2023 17:07:06 +0100
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [XEN PATCH 8/8] x86/sysctl: address a violation of MISRA C:2012
 Rule 8.2
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.1698045505.git.federico.serafini@bugseng.com>
 <06004789b921a35632bd7126bf022e20c15052ef.1698045505.git.federico.serafini@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <06004789b921a35632bd7126bf022e20c15052ef.1698045505.git.federico.serafini@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0428.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:d1::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_|AS5PR04MB9799:EE_
X-MS-Office365-Filtering-Correlation-Id: af1029bf-7cc8-4069-abed-08dbd962428b
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	NqGKi5qNoF6VBmoid1LQRtoIzn5ODduT00bqanmDAsFuP5bDvFkbKjmv3Coavhhai6FF+SJfrBIUnyefcAvlQlLFjM88QxAIsdbpQXW1h/U3r/EtJ468MttkbbtDjJuDNM+1BWetimVU87kX4VDeZgvjxrCsHUuQWFgvPfJ8g++ILp97A0IWgpJAcCkLq+P0BWfE8C2Dv6MJJc99380/9mlqx7Xsdamm5Cyu3TUteg7BgMN1FWAxZXiCbQxsU59KrTmLzSymnbqWvweBeeTzhuKJ/XCTaDMQKsQPZtFb08qvkLOCINfTjd/F5qQTmMQ3Ud544qoSD/QkTqx4dzfmfLldabRjluGf7bspCFDl66AJwRkhQ/E9Egyx82TmSFuPgWjPaiNOQsEJk1bxlDwmJjF70ZO4UkocP72Vsgy3KeocxCMahDeO5VL8afCgSMc2pMbO7ScfeQRrgG2eZaM8iwWNEyjiv03zcAAaf8dnauF7PnMPJd5EIWyx1GGeBpvE3Jl38g6lQCDtIzfiUzxxAcTQY1xMOVnltMfw7J+uSvGGNDky7NHT9WH7z1DWUy9Y5pCQd9VHJLjoHEhhRclqbY2jT4BjZ955Yxp54hQJNehQTFiET+h2ucJCY0T9FLT0nUWoCXxxSbRdB/Bwbguvdg==
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)(136003)(346002)(230922051799003)(1800799009)(186009)(64100799003)(451199024)(66476007)(66556008)(316002)(54906003)(41300700001)(6916009)(558084003)(8676002)(8936002)(31696002)(86362001)(6486002)(38100700002)(2906002)(4326008)(478600001)(66946007)(31686004)(5660300002)(36756003)(6512007)(26005)(2616005)(6506007)(53546011)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?K1NJOHlvcDZKNWpxZGd0eUh2LzY4dDhUM21qRGdiNTFTL3BmMG5PWnoxQk5Y?=
 =?utf-8?B?cUFhQjJsODNNZVlyRWQwa0pUdHFwbzJTdXBwRE5hUXlzSStmUFdTQ085OGNU?=
 =?utf-8?B?T3ZwQS9sdTBXQWdyb0xjUlk0OWtwSDBNcDhFaHZibVlqNjMvaDVyY2x5dyt4?=
 =?utf-8?B?V2MyemRSbG1IMldYZk1pZ0RTZS9BUGdSQTN3a3paUlpQcHlqUjdMOEVDZ0NU?=
 =?utf-8?B?U1BJUlJ3bkRaVHRhemxNd1V5bGJGaG84UTdBNm5IYVJnRFZXRmFSRDZ1RGE4?=
 =?utf-8?B?ZHRpdkZHNFBJdFVGT1BtVUFwNmxrT01rVnFTYS9URWVUdDF2dndJTm4zL21V?=
 =?utf-8?B?QW5HK1dCWGRTakhBenpMTXg3Y3V6NnpSYVJQdVJKemVQWHJhdlE0RWIxQlVl?=
 =?utf-8?B?amNLcDVUQVNqdW1HcjRRZVpuSTU5U1ZKbWtiQkZ4MmxiUVFDWEE5YU5wKzJZ?=
 =?utf-8?B?RlRNc3IxRXFPVXc1SloycTZJeXhVRTJwVlNLZTM2OEFDK0x1YThyK0JmNlZ4?=
 =?utf-8?B?L09va2lQYXR1QnpYUXp2UCs4Tmthb2ZKY1RxdkZBM0V5dE5hcTZZaXR1YWZq?=
 =?utf-8?B?cFFTL0dGUU5Rd0M3QzN1UDJ6NUNIeXprcGxydUIyeHY1dzVhVzIxRThmZWg0?=
 =?utf-8?B?Q1I5VGxvN3hHcityd003b3dwbVBETHRsTG5pYnNzUzArbjMrOWY3K3hJR05V?=
 =?utf-8?B?RGpuU1NmcCtnWWRaVVU5RlN0V0s4eFltcW1RR0pNa2FDM1VGWmpZdHhDbCtr?=
 =?utf-8?B?ZnFWQ0xEb3lsdkJ3RzQvTXlSdzNpY20yMkp5T3pkdlNTS1BOVVI2eWpjSjhF?=
 =?utf-8?B?REhSaWFKUG01SmVlV0djbTJGcmJ6K0FuZjhkUVRJN3ZySi9rQ3o5bW93NlNw?=
 =?utf-8?B?QVljeCtvRHhzTWV1ZFdIZ3llaWdyTlAwSWdycVVjY2s1dGx4MEJBQmVUYnFU?=
 =?utf-8?B?S0pNeFdPM3ZBcnErdDlmQzZRSFkzN1dKNnB3RjB0VHZBMktkQ2w2RmVxMGp0?=
 =?utf-8?B?NTZkZitOcGI3NnVta2pDT3V1UU4ycWZleFJkRVdiZVJPNDBIdmVGdHVuelVO?=
 =?utf-8?B?Q1FCbHU0WUR0TTg1WWVQcGQwM1VLR0drOEpaTjRuVCtPR05UbkUvendSVmxR?=
 =?utf-8?B?NFN3K0hEWW5BZUdZNzY3VDVSNjMzVERUSnlJVmNOTU1kRHBoeHBIZng3MmlY?=
 =?utf-8?B?elRTcTJMbkQ2eFZYNEIwSUsrN3RTRGdqRnVidzh6NFpSL1RBd0ZZekd0RklX?=
 =?utf-8?B?L2xlTXlTdXFCWjVydWxUNnQ3ZkloK01oc2g5Mmp5ZzBZTUwzbkdIQ0p3T3dv?=
 =?utf-8?B?aE10N0JwdDEvZEw1RndFaXpTeXlabHpOUU5BWXBzbkhoS0NFT1VSYTJLRHA3?=
 =?utf-8?B?SzlRQXdTQWpONFRDeVNESThjcmI4eXoxWkdwTG9BeUgzd1lhUVQ5Ylh1S00r?=
 =?utf-8?B?Y1pwMzB2UmZwbjFwWm4wcTBqN2VBYUFFUWxJbEJiYnU0b0dzbjd5WU1PRXBV?=
 =?utf-8?B?bzduTU4yaUJNQTJpSmpTYlJIK1BLQjlmV1NHMDRXSDJST0cxdWJRNXFDbjAr?=
 =?utf-8?B?a1BUUWRqYmZCdFBObXRLaFIrZUFJOXh3TCt3TnhjTzZHVjFuVVVhSHRPR05F?=
 =?utf-8?B?ZjFWNmRETHBaUUZVWXdST2lnbDZ1V3o3N1NFdHhNMllxVVhZaEVVbmpsVDFX?=
 =?utf-8?B?TVJnY29yOFBhQmNURE9VYm1WT1hrT0lXZ3E0Q0pYMUQyL1FXWU1SQUtIQ2NU?=
 =?utf-8?B?QWthVk1vbXU1S0ZHMFljMDBjRWdTcXJWTGxqUDNQd3YraWxTbFVLV2QwY0ZF?=
 =?utf-8?B?a2JzcnJhS1RuN1hDUFRPVnhock15NncvWmJXUmRGSUoyZWNvWmJmUCtXY1By?=
 =?utf-8?B?TlZiQkFjNDc2S3hDMVFCRmQ1eFpWRzBaRFRPd0tEZ0JQVEZYU2JkazBNSUt5?=
 =?utf-8?B?Tml3dGFPV3Q1bzJzZUJrSmFrbnBnUXdUSTB5cDNwYlpucVozKzJDRWpIMW9G?=
 =?utf-8?B?L2gycXI3WGd5ZzFyb1ZRYlhveHBvUkNVbnpJN01WWWJXaEtrTjdBMGlFZFVh?=
 =?utf-8?B?VFRQOHRzM24vVVdCTEV1M0RuVWZSbUxyNU5MYkxsbXdQQTF1MjBsNTJUUk5W?=
 =?utf-8?Q?UBth6Y8LtWOXHRA8bS/VFLuuW?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: af1029bf-7cc8-4069-abed-08dbd962428b
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Oct 2023 16:07:05.1366
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: LkY5JrC7ePJsM9yHZHXh0LXHJUuJrPgp956e2VLheyPTMb5MvTBHiTytpSZJmb/UYm91kc1/sRKNuj/dtyv7dg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS5PR04MB9799

On 23.10.2023 09:23, Federico Serafini wrote:
> Add missing parameter name. 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 Mon Oct 30 16:10:49 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 16:10:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625266.974390 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxUqm-0003PZ-4C; Mon, 30 Oct 2023 16:10:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625266.974390; Mon, 30 Oct 2023 16:10: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 1qxUqm-0003PS-19; Mon, 30 Oct 2023 16:10:48 +0000
Received: by outflank-mailman (input) for mailman id 625266;
 Mon, 30 Oct 2023 16:10: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=3VkP=GM=cloud.com=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qxUqk-0003PL-AK
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 16:10:46 +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 e0eca2af-773e-11ee-9b0e-b553b5be7939;
 Mon, 30 Oct 2023 17:10:44 +0100 (CET)
Received: by mail-ed1-x52e.google.com with SMTP id
 4fb4d7f45d1cf-53de0d1dc46so7896701a12.3
 for <xen-devel@lists.xenproject.org>; Mon, 30 Oct 2023 09:10:44 -0700 (PDT)
Received: from localhost ([213.195.118.109]) by smtp.gmail.com with ESMTPSA id
 h29-20020a50cddd000000b0053ff311f388sm6417973edj.23.2023.10.30.09.10.43
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 30 Oct 2023 09:10: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: e0eca2af-773e-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1698682244; x=1699287044; 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=HaxTUT+FOmwcKPdWyAD4f0bzPbIgorWRHMv/Tpkqck0=;
        b=fxLP5W8ASs33PqOcyI0jo7J8WRwAmG5MWI5d2qFSNpA7MA9JTkm/3vtBz7dDRkCXFN
         NqRtmhOwrwkszOKBmPsHWu356umJ6I3i7FLq/BdrvWoZlWusvJEMUwSPAkcaNpRxk9Ta
         cIfhUBOn6Nk4ZPRq8Qa8btfi3LIx/rhHGTQNM=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698682244; x=1699287044;
        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=HaxTUT+FOmwcKPdWyAD4f0bzPbIgorWRHMv/Tpkqck0=;
        b=Kb8JMkasJd2gOmOswLpRxkDSfXz9u8GxZkZ5KH0RGBnQfG7Anlg2vGGwmpqenznP6j
         XckU87aywGVOwNjYy0J1cfnW6WqbdrFKKlS7s4q9nrLJwIqWGnCtf4542bfN3NvDId3Y
         Q3sGM4wYOklVUjPFkv1xQAlOvoYqE1r9O5rXRyq5tKrqhpTIciZkJWURZ24iLuvO+15c
         nRJ+ZJk3N60EknxZ4jZ2vgoGRP8CvNtGZZT82VSlnaO4At6WjxuWB/I7h5O/h7qZbUj3
         gln66SfdWTqiyevUBJG/6sZDB4ARGHtLSzvz+IpAHVDBHZCmWYjT9xms/oc2prIiwURo
         6uHA==
X-Gm-Message-State: AOJu0YyYKxSP7iUprQ4VRThrrSi/b65OjMwoDOid4hwA7TcvK0u7LvbU
	Du6IRBWwr/pZRtNagYahZOv3Aw==
X-Google-Smtp-Source: AGHT+IHqZRudvyWCHDL8vpRBAqayRPsLUbU5vAhTVkeOklNrS3rnxXOSPpoJk+hr3tjBemAZZqxdTg==
X-Received: by 2002:a50:9e87:0:b0:53d:a1c0:410f with SMTP id a7-20020a509e87000000b0053da1c0410fmr7395761edf.2.1698682243666;
        Mon, 30 Oct 2023 09:10:43 -0700 (PDT)
Date: Mon, 30 Oct 2023 17:10:42 +0100
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] x86/x2apic: introduce a mixed physical/cluster mode
Message-ID: <ZT_VguxJLtOQeYK1@macbook>
References: <20231024135150.49232-1-roger.pau@citrix.com>
 <6734e477-0aa5-c74c-4f64-02ca0415ae9e@suse.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <6734e477-0aa5-c74c-4f64-02ca0415ae9e@suse.com>

On Mon, Oct 30, 2023 at 03:32:56PM +0100, Jan Beulich wrote:
> On 24.10.2023 15:51, Roger Pau Monne wrote:
> > The current implementation of x2APIC requires to either use Cluster Logical or
> > Physical mode for all interrupts.  However the selection of Physical vs Logical
> > is not done at APIC setup, an APIC can be addressed both in Physical or Logical
> > destination modes concurrently.
> > 
> > Introduce a new x2APIC mode called mixed, which uses Logical Cluster mode for
> > IPIs, and Physical mode for external interrupts, thus attempting to use the
> > best method for each interrupt type.
> > 
> > Using Physical mode for external interrupts allows more vectors to be used, and
> > interrupt balancing to be more accurate.
> > 
> > Using Logical Cluster mode for IPIs allows less accesses to the ICR register
> > when sending those, as multiple CPUs can be targeted with a single ICR register
> > write.
> > 
> > A simple test calling flush_tlb_all() 10000 times in a tight loop on a 96 CPU
> > box gives the following average figures:
> > 
> > Physical mode: 26617931ns
> > Mixed mode:    23865337ns
> > 
> > So ~10% improvement versus plain Physical mode.
> 
> Nice.
> 
> >  Note that Xen uses Cluster
> > mode by default, and hence is already using the fastest way for IPI delivery at
> > the cost of reducing the amount of vectors available system-wide.
> > 
> > Make the newly introduced mode the default one.
> > 
> > Suggested-by: Andrew Cooper <andrew.cooper3@citrix.com>
> > Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
> > ---
> > Do we want to keep a full Logical Cluster mode available?  I don't see a reason
> > to target external interrupts in Logical Cluster mode, but maybe there's
> > something I'm missing.
> > 
> > It's not clear to me whether the ACPI FADT flags are meant to apply only to
> > external interrupt delivery mode, or also to IPI delivery.  If
> > ACPI_FADT_APIC_PHYSICAL is only meant to apply to external interrupts and not
> > IPIs then we could possibly get rid of physical mode IPI delivery.
> > 
> > Still need to put this under XenServer extensive testing, but wanted to get
> > some feedback before in case approach greatly changes.
> 
> Looks quite okay, just a couple of minor remarks:

Thanks.

Do we still want to keep the pure cluster mode?

We do need to keep the pure Physical mode in case the FADT flags force
us into using it, but there's no flag to force the usage of Logical
destination mode only.

> 
> > --- a/docs/misc/xen-command-line.pandoc
> > +++ b/docs/misc/xen-command-line.pandoc
> > @@ -2802,6 +2802,14 @@ the watchdog.
> >  
> >  Permit use of x2apic setup for SMP environments.
> >  
> > +### x2apic-mode (x86)
> > +> `= physical | cluster | mixed`
> > +
> > +> Default: `physical` if **FADT** mandates physical mode, `mixed` otherwise.
> > +
> > +In the case that x2apic is in use, this option switches between modes to
> > +address APICs in the system as interrupt destinations.
> > +
> >  ### x2apic_phys (x86)
> >  > `= <boolean>`
> >  
> > @@ -2812,6 +2820,9 @@ In the case that x2apic is in use, this option switches between physical and
> >  clustered mode.  The default, given no hint from the **FADT**, is cluster
> >  mode.
> >  
> > +**WARNING: `x2apic_phys` is deprecated and superseded by `x2apic-mode`.
> > +The later takes precedence if both are set.**
> 
> s/later/latter/ ?
> 
> This may further want a CHANGELOG.md entry.

Yes, indeed.

> > --- a/xen/arch/x86/Kconfig
> > +++ b/xen/arch/x86/Kconfig
> > @@ -228,11 +228,18 @@ config XEN_ALIGN_2M
> >  
> >  endchoice
> >  
> > -config X2APIC_PHYSICAL
> > -	bool "x2APIC Physical Destination mode"
> > -	help
> > -	  Use x2APIC Physical Destination mode by default when available.
> > +choice
> > +	prompt "x2APIC Destination mode"
> > +	default X2APIC_MIXED
> > +	---help---
> 
> No new ---help--- please (also below); it ought to be just help going forward.

In this case we should replace existing instances of ---help---
otherwise I copy from one of those and forgot to adjust.

Kconfig is usually done by copy&paste (at least for me), and hence
having proper format everywhere will make that less error prone.

> > +	  Select APIC addressing when x2APIC is enabled.
> >  
> > +	  The default mode is mixed which should provide the best aspects
> > +	  of both physical and cluster modes.
> > +
> > +config X2APIC_PHYSICAL
> > +       tristate "Physical Destination mode"
> > +	---help---
> 
> Something's odd with indentation here. But first of all - why tristate? We
> don't have modules in Xen.

Ah, yes, got confused.

> 
> > --- a/xen/arch/x86/genapic/x2apic.c
> > +++ b/xen/arch/x86/genapic/x2apic.c
> > @@ -180,6 +180,25 @@ static const struct genapic __initconstrel apic_x2apic_cluster = {
> >      .send_IPI_self = send_IPI_self_x2apic
> >  };
> >  
> > +/*
> > + * Mixed x2APIC mode: use physical for external (device) interrupts, and
> > + * cluster for inter processor interrupt.  Such mode has the benefits of not
> > + * sharing the vector space with all CPUs on the cluster, while still allows
> > + * IPIs to be more efficiently delivered by not having to perform an ICR
> > + * write for each target CPU.
> > + */
> > +static const struct genapic __initconstrel apic_x2apic_mixed = {
> > +    APIC_INIT("x2apic_mixed", NULL),
> > +    /* NB: int_{delivery,dest}_mode are only used by non-IPI callers. */
> > +    .int_delivery_mode = dest_Fixed,
> > +    .int_dest_mode = 0 /* physical delivery */,
> > +    .init_apic_ldr = init_apic_ldr_x2apic_cluster,
> > +    .vector_allocation_cpumask = vector_allocation_cpumask_phys,
> > +    .cpu_mask_to_apicid = cpu_mask_to_apicid_phys,
> 
> You have a non-IPI-only comment further up, but that - if in fact 
> applicable here - would need to extend to these two hook functions as
> well.

Yes, all fields except for send_IPI_{mask,self} only apply to external
interrupts, not IPIs. And init_apic_ldr is kind of weird because it
just inits the data related fields in order to do the cluster
delivery, but doesn't clobber any data used by physical mode anyway.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Mon Oct 30 16:13:02 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 16:13:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625269.974399 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxUss-0004Bt-Fv; Mon, 30 Oct 2023 16:12:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625269.974399; Mon, 30 Oct 2023 16: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 1qxUss-0004Bm-Cz; Mon, 30 Oct 2023 16:12:58 +0000
Received: by outflank-mailman (input) for mailman id 625269;
 Mon, 30 Oct 2023 16: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=Hhfi=GM=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qxUsq-0004Bg-Od
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 16:12:56 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 (mail-db8eur05on2062a.outbound.protection.outlook.com
 [2a01:111:f400:7e1a::62a])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 2f427bfd-773f-11ee-98d6-6d05b1d4d9a1;
 Mon, 30 Oct 2023 17:12:55 +0100 (CET)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DBBPR04MB7690.eurprd04.prod.outlook.com (2603:10a6:10:200::18)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.11; Mon, 30 Oct
 2023 16:12:53 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6954.016; Mon, 30 Oct 2023
 16:12: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: 2f427bfd-773f-11ee-98d6-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=L08P6zrjSKNNFWfz1xFW9GSB4sDl6SVf5FIw/j11EjAOQqeWpzRXd/w1ekmvMSB/Ly3tW5nxZH0Jr81SUGwE97/AsIupCgu5dE0rtOgEzhI0ZXQwcXaGVruExQ5kb1gw8xBu1YjoN/JiT7A0mDMXMbsd11p+rFi4mW+vIdH3+CiCoo2xDHKMdN2mXIZxdXPIVFVk/tbT6BsnZ6XohGCYCUe5MJNBnc4DBH8sabPasxIe8cLCVS47U7O/2wlNfdC+SRZcbLZO6OAU59BcJ9WDUMNzeLDv0WSS0kmnJNf5D9r4SAsoKvIu/suCZwcytoypLXeI8swzVVRrpNScX63asg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=S0TWxnaw4ejw+TwWZThxVpM7WIfbwSD/zM1TROyDKJs=;
 b=jjXKPz1G5G+1LEg7z7YV1F4dt/y944bhXooTO7SCH/LC/x6vdjFflsuMq1mq9U8R/O8f9EJZtDf1axMLgnX7TQjRut6L3ZZJ3SJdnIfeSfslidRABV+NmR5krm4Hy5ah/iZIcnuXMn1qjX6aVJ4ptX3PmqUOvZ1wj4QQUMskxgKcA/5Jg7kLZDLmF08zukznZXQ4JTiqBHwdH8zxIGU7+AZDkdmSF4Nqvakobg3oQCqORmQT0yz/eiK2oyL34QXn7ErHlih0cBjAFjv4Mrt4lBYbISeK8HkUThdZH9w+Rq8dISAwFlDqO0dA1Erhp/K2fa3lvy1d10c+DUIHEddkxg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=S0TWxnaw4ejw+TwWZThxVpM7WIfbwSD/zM1TROyDKJs=;
 b=2b9eAKFx76gtlHuQGYrrJjValQFveSyTtEBoMEhT8IIesXk2tTtvizy4xRtlWPP6Nq/T+ddk1QxowdwrQACenQz74zvUseCIUoyBGLAL/bKocn5U3wpNb0xC55MD9OWxhGq7G8OGgm2EnjAUetDZnQ7rbJsyyRE9bzkTREZAeDZ4lBvYaUbNZI+F7ba/GwZYlZaTu2yNWmJVEZyfe7QHcDVVncAyPoSp9zDkZDNktdFhUtb4czFE7qFCxXmUa6XwWwD1HtPTZTSB4EV7iJDwpviQ1ydVIp8kk829AvuBRmZEXYfEaNrLa4J/n4bg/EuVlkTj2BU/VI0t9Z+D510SAw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <7f3680e9-27de-fdf3-c5cd-d3413bd3239e@suse.com>
Date: Mon, 30 Oct 2023 17:12:54 +0100
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [RFC PATCH 12/22] x86/msr-index: define more architectural MSRs
Content-Language: en-US
To: =?UTF-8?B?RWR3aW4gVMO2csO2aw==?= <edwin.torok@cloud.com>
Cc: =?UTF-8?B?RWR3aW4gVMO2csO2aw==?= <edvin.torok@citrix.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.1698261255.git.edwin.torok@cloud.com>
 <4675c236ea5f66bfce36eb98ac5806ee0468b4fe.1698261255.git.edwin.torok@cloud.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <4675c236ea5f66bfce36eb98ac5806ee0468b4fe.1698261255.git.edwin.torok@cloud.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
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_|DBBPR04MB7690:EE_
X-MS-Office365-Filtering-Correlation-Id: 70b36127-cae3-454f-385d-08dbd963121b
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	auLza/iqRWfqAuD+QtMMcbg0jslFyszDT0rjapelcbGgr1KhpRFMyNa4hUM/Ossuj8hS/s0VkUENc4w7VD2RCKZkw5mSpoU73EwBAAf11omj6RN6iEngwCVCfgt/Rfe1kcr1IRMEIUbOy+OwO2kNgG7RPNHgwf6V/alweCG83L8ZSgdXDlmmSg0Ko7/mvCOCm7oC8hcZVeDIfDLZPmQ5lvNA0AcXDF6yUtHx8u8lZtJFyyqKw2BAlbVXGDYlZNqSDXtRvyaeVEaKylJWnvmVXSGWaU5YRzVnQfdwAC9OK45xP7ZgqqcuFpXrezo66bJ+aezvsD6a2GvA4V2SaKdhhj+DbBsbyZrUMS1RQlJwqOjG9O3lj6e6anW2GXwLHgplnxxVLTRiU81kd9a9UNRL/IwxLzFPdlfiHqBx5MjHclLhJwhviMGJOC22/7n6ubndULcRpCwfc0kbPgmH6NDvj+EfrnUxsQ94LAV8nx85JFiV9md2wN+C/7Hl1bb37hK0jYKhVme8F0gac1EdePXG82Nf3Y4fbxWdA8SXiSvESHu8vW+Of1OGSAvviJ9M4jtndjNCABF3yT9Ci93XO1XUOgLm6IbT9Wtys03O1LBpjSc2c7FdiND9sWJa+TeinHLPVPFCCeuG5mB+Cy7HE9rwZA==
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)(230922051799003)(451199024)(1800799009)(186009)(64100799003)(36756003)(31686004)(478600001)(53546011)(6486002)(6506007)(5660300002)(4326008)(8676002)(8936002)(6512007)(38100700002)(86362001)(2616005)(83380400001)(26005)(54906003)(66476007)(66556008)(66946007)(316002)(6916009)(66574015)(31696002)(41300700001)(2906002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?NzJJOTkxWTNNOE9CcHI0dy8xQW5hZ0s5Z2l5U1FUTDlQbi9PVDI3NFBSMHdL?=
 =?utf-8?B?bkJrejVaU2FtMFJDdWx5N2d0WEFaK1QyZmNub2NCRVVHb2ZMYWxJdDd4Qnpx?=
 =?utf-8?B?dlQ5RGpkRExTY0lWQk5pdFZsRTQvb29hb2Z2NDBvU0ZrSUtYM0pBMG01YUsx?=
 =?utf-8?B?a3FtcmRYNVlRYVgvUURxb3k4TVYrYnpQVDRQcUp5R240TzZHMWhNbkhjOHNq?=
 =?utf-8?B?dkU1Zm9md1l1S3lucE4reTRDbUYvT3RXTnU0M1RWRTVJSUFwUW03YnhPbzNZ?=
 =?utf-8?B?R1NqZDNpRXRubUdBTVI2YnlXTXgzUmcxdHl5MVNTcjc3TjVxcXJBWmlaOU5k?=
 =?utf-8?B?T3F4NXJFTGd0YVRBSTlERmdLWXVLMjJXRGhjdHJTU2I3cTZ6OXpvSHBhMmtK?=
 =?utf-8?B?b3d6UHhUdTlxN1RLVGNiQ3I1aWtZSk90dUFoSzd1ZG9WWngvRmMyWVNKWGRO?=
 =?utf-8?B?WFdwUFdWVzZPeG4xclJNcFF1cGJnMjZUSUJpMlJsTG5oNkRzNU92dU9iaGpU?=
 =?utf-8?B?Sk80SnJVOHZYZHdyNHFNTlBYWUg2dk41ZEtBMUJMcW1scDBncEpCemxEUGUw?=
 =?utf-8?B?QkVXSWpwUCs3ZUFFTTFOeHlGVUFBTGxqeXdxWGZKang1c1pjOUx0dXM3YTFJ?=
 =?utf-8?B?NFdiYWdJQWMrbFBDRGRRQTlacDNJM0NsdFBqV0RDVFF4OXc1K1NMQ2svYkJK?=
 =?utf-8?B?bVJqZzhFNDZOOVU0UU04NytJRjI0dXhXM3N2a3dNbFA5R2hnUWNIeEVwWFY1?=
 =?utf-8?B?MmN4Njk2RkpmNWZ1S011TnVDNndWSExwRm0rSHkyMCtHTHFYbGdVbjRhemth?=
 =?utf-8?B?Kzl0eG9YMFZ3R1ZsZWFnNVJvY0xTTXRtYnZ1REhRb0lXZEVBdXhMVm40TURp?=
 =?utf-8?B?ajZWQkIvbFlSTzNiZlJhR0M0ODluaU9qQXljRlRWWTVrYm1FRTUwSjdPb0Nz?=
 =?utf-8?B?TEVXdTV2NUErYU5HbEthYjRXYmNBNy9SUklkTmo3cmlTSTNpa1ZJVWRFM1Iw?=
 =?utf-8?B?WkJiR2J1cTVVODAvN1l2NkpqWmp3WlNYWkx6SWk5ZC9hYllZS3YzZWhJMXQ0?=
 =?utf-8?B?VmdtOGpBaXF4VjRKaWFhczVJMVdMclNKWHhvc0N3VVpFaEtoYUJCR2I0ZjVn?=
 =?utf-8?B?dlVLUnRWS1NJVWtGT1lxZTFSUEoveURUVWRwOVdURDNlZGtRM05MM0s4dnJU?=
 =?utf-8?B?NDc5TTIrVC9oL056YlRPS2lHWjNGaXdscHYyVjlRQU51YSthcHFHQk1pZGZw?=
 =?utf-8?B?cG1zS3k0ek83TS8rNHQyWDZBQlZZQmVTdzdTQlZRc1FDY1pLZU9SV2pad3V5?=
 =?utf-8?B?ZU1IaER0Rkl6ZTZCUWR5bHk1V0hYWjVGK2Y3aDVzekJ5eE5EelczeUE3V24x?=
 =?utf-8?B?d0NUaXBoS01pWDNnd3RwSDI2dmpXZGtKVHIzWG9YQVd1YWFRUk1pTi9wS2hE?=
 =?utf-8?B?SVcrMTFHYXZ5Q0gwRmhLVWlUMkViNXB4ZjNxZ1c1bmN2R3U0cmFLMUlpSk5v?=
 =?utf-8?B?a2NQRFhRb1JjM0FtRmxGVWk3TzQ5eWVmTzUySkp6TFN1cnR0MHA5VEE2bld3?=
 =?utf-8?B?dVAyWEJTdFpQTWFSckI4Y3VzZTBMeEdRNlVYL1poLzg1UTJkN1N4Y0FSa2Jp?=
 =?utf-8?B?dTRlYldFSW9hVGhXODJoVjNBbkZKOXdNbnZ5elJOSTV3TE1wYk4yTVYxTkM5?=
 =?utf-8?B?eUJDclhWME1wR2lqdWVBZzJzQStTcE5MZ290RXN1bE5mWnpDdTN2RWk0RVYy?=
 =?utf-8?B?RnF3WWhjSXlxMGJNNTRwb0J3cHEvaDhwYlh0eWFZQUFWRFU2KzczOUZUZ1hi?=
 =?utf-8?B?LzczOGxjem9xUU1RQVZNcVFJb2J4RTFScHdDcjhSMzFJNzBOL0hucWNWaFdt?=
 =?utf-8?B?dFJRcFdZUXYrTTdUVlRUQXNPRXZMd3ZseHNaS01tang3MGxQc1BxQ0xBaEpq?=
 =?utf-8?B?cDRTWXRiN0V3MDV4TFFLZ2pybFpPbHErUDVSUTNla0lKakZycXFZVTJBSW1z?=
 =?utf-8?B?TEdnQWE2dkJRRW5OOVgveFVvL0ZCdDNSaHIraVdOcnk2SEZkYklHUlBKQkpz?=
 =?utf-8?B?cW1KSVFJQ2FUbU9RdzNiY3duTDJrMm54NHRKbWhIL3Q2MThjTUF3VG5RY0E4?=
 =?utf-8?Q?ty/YLTT60Dd57QadlYBKJaB4I?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 70b36127-cae3-454f-385d-08dbd963121b
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Oct 2023 16:12:53.2990
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: +bfuvyzg2IBE5CwTnvvUCZmTEbvEM1/WrX3q1tXvH2VGSdjMFg0g0ECwbJbKb5lyWlrGof5BvN6de17/nDnDAg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBBPR04MB7690

On 25.10.2023 21:29, Edwin Török wrote:
> From: Edwin Török <edvin.torok@citrix.com>
> 
> Add most architectural MSRs, except those behind CPUID features that are
> not yet implemented, such as TME, SGX.

I'm not convinced we should blindly add MSR definitions for ones we
don't use. But if you do, ...

> --- a/xen/arch/x86/include/asm/msr-index.h
> +++ b/xen/arch/x86/include/asm/msr-index.h
> @@ -58,6 +58,14 @@
>  #define  PRED_CMD_IBPB                      (_AC(1, ULL) <<  0)
>  #define  PRED_CMD_SBPB                      (_AC(1, ULL) <<  7)
>  
> +#define MSR_IA32_SMM_MONITOR_CTL            0x0000009b
> +#define MSR_IA32_SMBASE                     0x0000009e
> +#define MSR_IA32_SMRR_PHYSBASE              0x000001f2
> +#define MSR_IA32_SMRR_PHYSMASK              0x000001f3
> +#define MSR_IA32_PLATFORM_DCA_CAP           0x000001f8
> +#define MSR_IA32_CPU_DCA_CAP                0x000001f9
> +#define MSR_IA32_DCA_0_CAP                  0x000001fa
> +
>  #define MSR_PPIN_CTL                        0x0000004e
>  #define  PPIN_LOCKOUT                       (_AC(1, ULL) <<  0)
>  #define  PPIN_ENABLE                        (_AC(1, ULL) <<  1)
> @@ -267,13 +275,21 @@
>  #define MSR_IA32_MCG_CAP		0x00000179
>  #define MSR_IA32_MCG_STATUS		0x0000017a
>  #define MSR_IA32_MCG_CTL		0x0000017b
> -#define MSR_IA32_MCG_EXT_CTL	0x000004d0
> +#define MSR_IA32_MCG_EXT_CTL		0x000004d0

... please obey to the comment a few lines up from here: Altering
indentation is kind of okay, but most of what you add below here
should be added (well-formed) above that comment.

Jan

>  #define MSR_IA32_PEBS_ENABLE		0x000003f1
>  #define MSR_IA32_DS_AREA		0x00000600
>  #define MSR_IA32_PERF_CAPABILITIES	0x00000345
>  /* Lower 6 bits define the format of the address in the LBR stack */
> -#define MSR_IA32_PERF_CAP_LBR_FORMAT	0x3f
> +#define MSR_IA32_PERF_CAP_LBR_FORMAT    	0x3f
> +#define MSR_IA32_PERF_CAP_PEBS_TRAP		(_AC(1,ULL) << 6)
> +#define MSR_IA32_PERF_CAP_PEBS_SAVE_ARCH_REGS	(_AC(1,ULL) << 7)
> +#define MSR_IA32_PERF_CAP_PEBS_RECORD_FORMAT	0xf00
> +#define MSR_IA32_PERF_CAP_FREEZE_WHILE_SMM	(_AC(1,ULL) << 12)
> +#define MSR_IA32_PERF_CAP_FULLWIDTH_PMC 	(_AC(1,ULL) << 13)
> +#define MSR_IA32_PERF_CAP_PEBS_BASELINE		(_AC(1,ULL) << 14)
> +#define MSR_IA32_PERF_CAP_PERF_METRICS		(_AC(1,ULL) << 15)
> +#define MSR_IA32_PERF_CAP_PEBS_TO_PT		(_AC(1,ULL) << 16)
>  
>  #define MSR_IA32_BNDCFGS		0x00000d90
>  #define IA32_BNDCFGS_ENABLE		0x00000001
> @@ -307,6 +323,8 @@
>  #define IA32_DEBUGCTLMSR_BTS_OFF_USR	(1<<10) /* BTS off if CPL > 0 */
>  #define IA32_DEBUGCTLMSR_FREEZE_LBRS_ON_PMI	(1<<11) /* LBR stack frozen on PMI */
>  #define IA32_DEBUGCTLMSR_FREEZE_PERFMON_ON_PMI	(1<<12) /*  Global counter control ENABLE bit frozen on PMI */
> +#define IA32_DEBUGCTLMSR_ENABLE_UNCORE_PMI	(1<<13) /* Enable uncore PMI */
> +#define IA32_DEBUGCTLMSR_FREEZE_WHILE_SMM	(1<<14) /* Freeze perfmon/trace while in SMM */
>  #define IA32_DEBUGCTLMSR_RTM			(1<<15) /* RTM debugging enable */
>  
>  #define MSR_IA32_LASTBRANCHFROMIP	0x000001db
> @@ -469,6 +487,7 @@
>  #define MSR_VIA_RNG			0x0000110b
>  
>  /* Intel defined MSRs. */
> +#define MSR_IA32_MONITOR_FILTER_SIZE	0x00000006
>  #define MSR_IA32_TSC			0x00000010
>  #define MSR_IA32_PLATFORM_ID		0x00000017
>  #define MSR_IA32_EBL_CR_POWERON		0x0000002a
> @@ -491,6 +510,7 @@
>  #define MSR_IA32_PERF_STATUS		0x00000198
>  #define MSR_IA32_PERF_CTL		0x00000199
>  
> +#define MSR_IA32_UMWAIT_CONTROL		0x000000e1
>  #define MSR_IA32_MPERF			0x000000e7
>  #define MSR_IA32_APERF			0x000000e8
>  
> @@ -498,6 +518,7 @@
>  #define MSR_IA32_THERM_INTERRUPT	0x0000019b
>  #define MSR_IA32_THERM_STATUS		0x0000019c
>  #define MSR_IA32_MISC_ENABLE		0x000001a0
> +#define MSR_IA32_MISC_ENABLE_FAST_STRINGS (1<<0)
>  #define MSR_IA32_MISC_ENABLE_PERF_AVAIL   (1<<7)
>  #define MSR_IA32_MISC_ENABLE_BTS_UNAVAIL  (1<<11)
>  #define MSR_IA32_MISC_ENABLE_PEBS_UNAVAIL (1<<12)
> @@ -508,15 +529,38 @@
>  #define MSR_IA32_MISC_ENABLE_TURBO_DISENGAGE (_AC(1, ULL) << 38)
>  
>  #define MSR_IA32_TSC_DEADLINE		0x000006E0
> +
> +#define MSR_IA32_PM_ENABLE		0x00000770
> +#define MSR_IA32_HWP_CAPABILITIES	0x00000771
> +#define MSR_IA32_HWP_REQUEST_PKG	0x00000772
> +#define MSR_IA32_HWP_INTERRUPT		0x00000773
> +#define MSR_IA32_HWP_REQUEST		0x00000774
> +#define MSR_IA32_PECI_HWP_REQUEST_INFO	0x00000775
> +#define MSR_IA32_HWP_STATUS		0x00000777
> +
> +#define MSR_IA32_PKG_HDC_CTL		0x00000db0
> +#define MSR_IA32_PM_CTL1		0x00000db1
> +#define MSR_IA32_THREAD_STALL		0x00000db2
> +#define MSR_IA32_HW_FEEDBACK_PTR	0x000017d0
> +#define MSR_IA32_HW_FEEDBACK_CONFIG	0x000017d1
> +
> +#define MSR_TEMPERATURE_TARGET		0x000001a2
> +#define MSR_TURBO_RATIO_LIMIT		0x000001ad
> +#define MSR_TURBO_RATIO_LIMIT1		0x000001ae
> +#define MSR_TURBO_RATIO_LIMIT2		0x000001af
> +
>  #define MSR_IA32_ENERGY_PERF_BIAS	0x000001b0
> +#define MSR_IA32_PACKAGE_THERM_STATUS	0x000001b1
> +#define MSR_IA32_PACKAGE_THERM_INTERRUPT 0x000001b2
>  
>  /* Platform Shared Resource MSRs */
> +#define MSR_IA32_PSR_L3_QOS_CFG		0x00000c81
> +#define MSR_IA32_PSR_L2_QOS_CFG		0x00000c82
>  #define MSR_IA32_CMT_EVTSEL		0x00000c8d
>  #define MSR_IA32_CMT_EVTSEL_UE_MASK	0x0000ffff
>  #define MSR_IA32_CMT_CTR		0x00000c8e
>  #define MSR_IA32_PSR_ASSOC		0x00000c8f
> -#define MSR_IA32_PSR_L3_QOS_CFG	0x00000c81
> -#define MSR_IA32_PSR_L3_MASK(n)	(0x00000c90 + (n))
> +#define MSR_IA32_PSR_L3_MASK(n)		(0x00000c90 + (n))
>  #define MSR_IA32_PSR_L3_MASK_CODE(n)	(0x00000c90 + (n) * 2 + 1)
>  #define MSR_IA32_PSR_L3_MASK_DATA(n)	(0x00000c90 + (n) * 2)
>  #define MSR_IA32_PSR_L2_MASK(n)		(0x00000d10 + (n))
> @@ -682,6 +726,8 @@
>  #define MSR_CORE_PERF_GLOBAL_STATUS	0x0000038e
>  #define MSR_CORE_PERF_GLOBAL_CTRL	0x0000038f
>  #define MSR_CORE_PERF_GLOBAL_OVF_CTRL	0x00000390
> +#define MSR_CORE_PERF_GLOBAL_STATUS_SET	0x00000391
> +#define MSR_CORE_PERF_GLOBAL_INUSE	0x00000392
>  
>  /* Intel cpuid spoofing MSRs */
>  #define MSR_INTEL_MASK_V1_CPUID1        0x00000478



From xen-devel-bounces@lists.xenproject.org Mon Oct 30 16:15:42 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 16:15:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625274.974410 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxUvT-0005El-Va; Mon, 30 Oct 2023 16:15:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625274.974410; Mon, 30 Oct 2023 16:15: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 1qxUvT-0005Ee-ST; Mon, 30 Oct 2023 16:15:39 +0000
Received: by outflank-mailman (input) for mailman id 625274;
 Mon, 30 Oct 2023 16:15: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=Hhfi=GM=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qxUvS-0005EY-PS
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 16:15:38 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 (mail-db8eur05on20614.outbound.protection.outlook.com
 [2a01:111:f400:7e1a::614])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 8fd5651b-773f-11ee-98d6-6d05b1d4d9a1;
 Mon, 30 Oct 2023 17:15:38 +0100 (CET)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DBBPR04MB7690.eurprd04.prod.outlook.com (2603:10a6:10:200::18)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.11; Mon, 30 Oct
 2023 16:15:35 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6954.016; Mon, 30 Oct 2023
 16:15: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: 8fd5651b-773f-11ee-98d6-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=aYlgKipF9vrfqf+dPhyIOIDD6DqIJP5PtApLvRdqkm0zIQx2ea8ZO6PpD2NsKnr7ilwS0npMCLgzgkfrgS/KtcIFNFl3/yuI1PBepTbs9EYwSuaR0Dvz/seUMG54RbUCMVk/XZOJRdnDXunnvm7OKBMblINv3Ngz5ttPTnQos8gIPig1S0JjbVDaytULidVbEfDQQ/CC0jCuCpyR6aoVZxr/H94elOu+vRGUmPmrH1t06HX1OE8bWb90IIYXvP5h3d5mMunRkqGbPkXExLNuDAhzWKKrGO+B3/KPhwPVXpALWbb0GvFSSXYKPpqCq7msJfeMuhqQ/loipHpGIUSoUg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=ZiiBrW5vEf0m1/y2G0GNTDRRH2fhWo4h1V/uCWDYIc0=;
 b=iB7xDECzuju1UFk5EUBgah/fEhwffFyk2Q8Ng8lnBcG6cNtm6jXW0bNqv6dy4XBgaXBCSgQ4HmD/qregBUr3EAfy1hLGi4PhYLvWB3Jr+KZS9gWf3J5xYnsrP9SZc02CV512Pk5eojREaGFvMjkn9L39kIk19ounPzydHRE7aORBKhIYlOyzOcKxo/KOONd3WLPf6h+LjF2aTROcU2QUTH6AwBQv7bQPlVAq+PODDjjXWh4W4lCGr/J6MEChUXvMRzo8soyH1hXV2rzY0kx6j+hPXLTmMi2zGvdWE+1ysZgsjTwebBpfK9vOhuX8gMxbs3O99MqkJRFnfSo1eFl32Q==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=ZiiBrW5vEf0m1/y2G0GNTDRRH2fhWo4h1V/uCWDYIc0=;
 b=WCGu0qvoG59c007mzaCPp2w0Ef8CdbbmzqwWaw7qpjPkCocmGLre4AepN3ffLdqiP0RRNXzSC9YkxS3zE1rPpU5ZXuN/rsFT1j00L18hPEqcn/DSn3AA5zbLL16Egofcs8Zb5kS+3TRmBob6UwwjNy4oGcOOVRQYeC2nlN9g0RypbEMK8LvE1kpJaDi1uqqpKf6M4vdIkHwN5609GnhKY1bKvS0OXSdfUm8OjMSmmCo3czbQ5udM5KSSX0bBqfiY/HiBjm3S9fvPDLlVtOwmvGlchB1gaKqujrUcJfkIGeim5oklDVuLBfRmHeH7LCW3PB8n30DXN7LJzzwDi6bhYw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <356aa412-453f-f6d7-d61b-5946ba8832e2@suse.com>
Date: Mon, 30 Oct 2023 17:15:35 +0100
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [RFC PATCH 04/22] x86/msr-index: add references to vendor manuals
Content-Language: en-US
To: =?UTF-8?B?RWR3aW4gVMO2csO2aw==?= <edwin.torok@cloud.com>
Cc: =?UTF-8?B?RWR3aW4gVMO2csO2aw==?= <edvin.torok@citrix.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.1698261255.git.edwin.torok@cloud.com>
 <7e4418cfb1daa172e78fc47098a4018ae0493e23.1698261255.git.edwin.torok@cloud.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <7e4418cfb1daa172e78fc47098a4018ae0493e23.1698261255.git.edwin.torok@cloud.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR4P281CA0292.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:e7::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_|DBBPR04MB7690:EE_
X-MS-Office365-Filtering-Correlation-Id: e3ab4bf8-1ed7-4b99-2e35-08dbd9637299
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	MjuwSgCptbZPYZN8ZXlExKv91vvRTWqi4l9F1LuXTJ2Ak1n/SmKVueotQSpVyQuh3aw0dpDkpNwS+xIkFVmYEOiSIblJ5e8iWYB0JCNhIL5Aid7Z/cNu0v4ROjD7yGtusFGSLU4Hb7qPG9JY6yOGenm7fl315zPbFfwdoz0OenSWljKI/6ndIaRRBLOOhNHj9Yu/SEAA8o6956BBLIHM7ouaM4DWRuQsOA9bkvUGuY0pnfueSgdrK7x0jYrgD9tFdLCeM5aWcEb1JR1raVcv3odSluR1XAPovgP0gSWrk3iwYRSY9mmk7DUOYsT18QUMEO1i0dHhN/V298acfvyIe98kHwKV9EySwPcF35VF+PlC9WvZZQJwl9+UJhZ5+D2b3IjXT4YJIdb14ZG4KoXSlNCcpslVFK0qY2ilg1lzTh+6y28emY4RqOsmlU5d9pRj5y8/Swz1Z2GXOk+YsJxiub/bu/wsxBnd/wS1TDXUKthOlR95Bpn6cjppUI+p/3qQQg2cQbUrbB4pJCPd8xPrwUbtFnwz1rB18ioqsGij+NB3ReqiE0IfvIGdp+QVAD2Lh7DUvyoRVKG5RR8IPsILHLsMnclKr32NAlaP8OFFaTg6lFtErEscBjYuPLP5i2hQtD839ap5AF2MSQk4ibQ2QA==
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)(230922051799003)(451199024)(1800799009)(186009)(64100799003)(36756003)(31686004)(478600001)(53546011)(966005)(6486002)(6506007)(5660300002)(4326008)(8676002)(8936002)(6512007)(38100700002)(86362001)(2616005)(83380400001)(26005)(54906003)(66476007)(66556008)(66946007)(316002)(6916009)(31696002)(41300700001)(2906002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?OWp3NnpIdUJ2cnBiYm42Wk94ZjNRYytSZHpRdTBWdE9nNWNrWG9pK3BjcllH?=
 =?utf-8?B?RDVmSUNIVEcxeWt2T3BZTjc3eDJmZnA4NGZPQ24wNHprVnBQdzJDelJyWTRq?=
 =?utf-8?B?bTd4MW84RkduNURUT21UNHgzU1NucTBidHRoMCtJYlhmUzdaby9BYWFBSm1Q?=
 =?utf-8?B?ZlhyNVRDUmJhQVVQbk5kajZObFk2RUdoTUxIdlduQS9rMXZ1cTA0MDJEN2hh?=
 =?utf-8?B?TEJlUmVIWVlEbzI1NS9Ebm5BQ1h1RVRUaG85UVFDVjJ2cm1kQi9OQk9HbzZC?=
 =?utf-8?B?bFNJUlhsTVBlaG5lSzMvSW4wZHF3WjhuNDhJTXE3dG1zUDkrRFRRZmM2bXJT?=
 =?utf-8?B?dlRNeDNmLytUY3d1Q3pJR1RaY2k5VzRQejYxZ2N1Wk1RT3hLMW85S2NrRjhy?=
 =?utf-8?B?d2FJaERHaWpBdmovMG4xS0htV0hDRXJ1U3VMblVsZ3lRaDRRNFZJU3prS2xT?=
 =?utf-8?B?czlEdThwY2hBekhUTXlyYUE3cWlGSTN1R2VFY3BjUitEZmt2d1FqSlhycjFE?=
 =?utf-8?B?clNzNVNUWExzUFRIYjIvaWdnSUppcEdqSG1wMEpiSXcvK1hpR1psUjlpQWNq?=
 =?utf-8?B?VnEzYnNzTzNLOXUwbUJIaHN2MWxhblUxU2lWaWxZK2FiaWljZUEzZm15M3da?=
 =?utf-8?B?b0NhWittTHM1MlNDZnpvRWk3akRDQkNBZlNtNk5ybnpaMmRVZWV1L0NscEsw?=
 =?utf-8?B?RjJWdk42b1o3NTdqMDFjOVFiMWxnbCtnK3JiaGxRclo5TllzSGFvQUN0VGRp?=
 =?utf-8?B?OVdjN0lpQXhLSDFKeXlqRlpycCtIM2pXU2FEZWsvVzA4c05VK1puclpySnNK?=
 =?utf-8?B?bjM3a3RieFptM3piZkRDMXBZZ3REMGM2UVQ1aTFlTlliSW5BQ3JxS3k5QWsr?=
 =?utf-8?B?M01HMVprM0ZmSnU5N2prTytQY2l4bzd2dnpCczZPdlhBQ1c2VnhDd0hzaGJr?=
 =?utf-8?B?cmNEVFRhZllJWGhTdVB2SGp0VUVSelFHejA0K2ZwV1NCZlhnbXJNeTVPQ0M2?=
 =?utf-8?B?aUFzMlMrejdGV3c4UmlDbWNxMUpxS3VkRU9INmVTRFAybjhiaXlPWGdZVC9I?=
 =?utf-8?B?T1NoMzI4TnVDakdCOWtzWElYT3QrSDlUMnkrZ0V2TVVBWlFPODR4bVUxck96?=
 =?utf-8?B?Uy9kTUl6VXFLbmtuL1Jtb1E3M1NhTFQvdjRvZ0IvR2JDekR1cGFqQTYwNEhG?=
 =?utf-8?B?bzdTU0E0NHdmbG1Ha0Y2M29lTmJtTTNPWU5VVXhDOFpVVDZmUVRJWjZlS3Ja?=
 =?utf-8?B?dWJpK0YvWGIralRlNlMrRTgwVXZkQTZOTy81Mi9TTnJRNnYrdGU2b2hyaGdM?=
 =?utf-8?B?NWxRNEJ1MFE3VVA5aTJIUDY4NCsweS95ayszMW1hbFBXb3VVS2FmaWFlcWRC?=
 =?utf-8?B?UWd1UkRFTHlndnZETXB6b2J5c09FdU5rVmF3Y3lvWCtuZkpZRGZrdzRHT2hL?=
 =?utf-8?B?c0xUV2NrMDR6VWs2TElPYmltcFQ1VlJabWtKYkxKajA5TklRcEloSFpDOFNR?=
 =?utf-8?B?MllRTDRqaldBb2g5KzhRckE2ZUc4RG5qclBacHBOSTF0L1o5TGV4aXMrWTNa?=
 =?utf-8?B?Um9MajRWT2t2MUxzUU1SakFmWm81cUNqNld4Mkw2d3hWR1lNRWM2VHhXSUhi?=
 =?utf-8?B?Z2hBa2xnWExZQ0ZVZ2VFWWlxaTk3OGJYYm43Y1N0VGlxQm0veDRiRG9SSFdH?=
 =?utf-8?B?THNrVkI3alNKcUdJNXZvM3ZJcnBlb2dITGVrbFp5bjdXL3VYamdsQ0xMZE9v?=
 =?utf-8?B?T2RORVZKeEovWWN5YSs4UUxHUGl2RHpHck9oVzZvYndUYkFGS2dqTGhpYVlY?=
 =?utf-8?B?UWJESENQY21WV0lWTHhTWlltd3JZdDlUQkdJNlNJT1pJTXBDTFVMaC9iUnVN?=
 =?utf-8?B?RVhyeERaZTQya0lKUC9wTnMyT0pudHNSK2dBOTliaHhQekdwc2ZYc3N5T2VQ?=
 =?utf-8?B?ZERQNWJ2UTdCNnNneXJVQ0IzaUZCWTN5SklkUHRkL2RRWmhrb2wzVGpiRDMv?=
 =?utf-8?B?MWhnNm5tUG9JejgybkppQTRkbnhYOWx5elRxd3kxb2g1clYrS0F5N2YzR2xr?=
 =?utf-8?B?VWVjbU43WlM1TGJ1OEgxZVVGR1ZQU21hNkNEQVFFMXcwZlErdDk5Z2NWcmdE?=
 =?utf-8?Q?sS8pmndRMLQPJ0DoQN9i7OBkA?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: e3ab4bf8-1ed7-4b99-2e35-08dbd9637299
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Oct 2023 16:15:35.1642
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: X4EEYdCbB5/4Edql4cWP8ve3ryh8NrwQk6JktvfV4u67U5Ar1xVao7w4Apq73GqYwemdZWf54Pqu9HHZERiIyg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBBPR04MB7690

On 25.10.2023 21:29, Edwin Török wrote:
> To more easily lookup the semantics of these MSRs add references to
> vendor manuals.

As much as I appreciate the intention, ...

> --- a/xen/arch/x86/include/asm/msr-index.h
> +++ b/xen/arch/x86/include/asm/msr-index.h
> @@ -13,6 +13,16 @@
>   * Blocks of related constants should be sorted by MSR index.  The constant
>   * names should be as concise as possible, and the bit names may have an
>   * abbreviated name.  Exceptions will be considered on a case-by-case basis.
> + *
> + * References:
> + * - https://software.intel.com/content/www/us/en/develop/articles/intel-sdm.html
> + *    Intel(R) 64 and IA-32 architectures SDM volume 4: Model-specific registers
> + *    Chapter 2, "Model-Specific Registers (MSRs)"

... at least Intel's URL has changed several times over the years. Volume
and chapter numbers change even more frequently. Any such is liable to go
stale at some point.

Jan

> + * - https://developer.amd.com/resources/developer-guides-manuals/
> + *    AMD64 Architecture Programmer’s Manual Volume 2: System Programming
> + *    Appendix A "MSR Cross-Reference"
> + *
>   */
>  
>  #define MSR_P5_MC_ADDR                      0



From xen-devel-bounces@lists.xenproject.org Mon Oct 30 16:19:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 16:19:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625279.974420 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxUz1-0006lo-FK; Mon, 30 Oct 2023 16:19:19 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625279.974420; Mon, 30 Oct 2023 16:19: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 1qxUz1-0006lh-C6; Mon, 30 Oct 2023 16:19:19 +0000
Received: by outflank-mailman (input) for mailman id 625279;
 Mon, 30 Oct 2023 16:19: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=3VkP=GM=cloud.com=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qxUz0-0006kN-Rk
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 16:19:18 +0000
Received: from mail-ed1-x52d.google.com (mail-ed1-x52d.google.com
 [2a00:1450:4864:20::52d])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 12476658-7740-11ee-9b0e-b553b5be7939;
 Mon, 30 Oct 2023 17:19:16 +0100 (CET)
Received: by mail-ed1-x52d.google.com with SMTP id
 4fb4d7f45d1cf-538e8eca9c1so7523326a12.3
 for <xen-devel@lists.xenproject.org>; Mon, 30 Oct 2023 09:19:16 -0700 (PDT)
Received: from localhost ([213.195.118.109]) by smtp.gmail.com with ESMTPSA id
 16-20020a170906329000b009d3148fb9f6sm2858231ejw.22.2023.10.30.09.19.15
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 30 Oct 2023 09:19: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: 12476658-7740-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1698682756; x=1699287556; 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=FJZkRpOMk3C2UIlWoKKmUjykg+igzXGvq/QftLmFKsc=;
        b=omb0NoGsuxjIa27YChVMxLBcr6DKctLMblO911T5+ZJlUwv60XBA5oWcRkCnQiZH09
         TXZ7q65K06m97sJz9+2CtP2zzZeXPQ1RXJ/SqoNemlTTVYhzbGEMEUEwfMghrFQGN5As
         bAdvbMIExxBPDdia8awhZe2loq7MLJhuVrvoo=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698682756; x=1699287556;
        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=FJZkRpOMk3C2UIlWoKKmUjykg+igzXGvq/QftLmFKsc=;
        b=Eotvldo4i2tqv4aerzLubYzmObw7UUy99zoCTvh8umP/R2ZlWuZPpavOhpgmyoWwBP
         iBNny+bv5dcQhTamgYt8tBDPtTpy6PH7PTch8u7gAyngXmcwpapDjIEVYYkliBv/S5pi
         Edci0O53Nkvkl/mfgXMxo93lZ+oZshQndB3WqQZPMKHHo2hO3x93PAyXabY13N+TtBXt
         9WMeYrd2e5zqOZo/bh9JIRjGltiLTSG2etU6kVg2nRxb0/hZK7mUhCXoAJ3S0aHBkeW6
         LQHv/zJvx+kV7I5dvkclWom2/0Uw6vTjZqGT1DQUWHKXe8esMtJqPa92xxHg/1XeZQi6
         Gomg==
X-Gm-Message-State: AOJu0YwHfoFEjNJI8TBYwQn7r8Y7zKU5qR+UkUElpECfM+xzARe3YYgs
	VJKArvgHP8NqUe9TfVUtDA5n5Q==
X-Google-Smtp-Source: AGHT+IG18lHoR13uddCDsJMtU463RS0cRy4//CMV37HV5cz6NZfw3QwYBE32FCIbFabz6eNbXPUCWQ==
X-Received: by 2002:a17:907:841:b0:9be:263b:e31e with SMTP id ww1-20020a170907084100b009be263be31emr9678994ejb.33.1698682756048;
        Mon, 30 Oct 2023 09:19:16 -0700 (PDT)
Date: Mon, 30 Oct 2023 17:19:14 +0100
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/x2apic: remove usage of ACPI_FADT_APIC_CLUSTER
Message-ID: <ZT_XgnKC6ORZcyXX@macbook>
References: <20231024102630.47691-1-roger.pau@citrix.com>
 <77a0297d-3b47-6679-94a3-1463f642aa72@suse.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <77a0297d-3b47-6679-94a3-1463f642aa72@suse.com>

On Mon, Oct 30, 2023 at 03:13:50PM +0100, Jan Beulich wrote:
> On 24.10.2023 12:26, Roger Pau Monne wrote:
> > The ACPI FADT APIC_CLUSTER flag mandates that when the interrupt delivery is
> > Logical mode APIC must be configured for Cluster destination model.  However in
> > apic_x2apic_probe() such flag is incorrectly used to gate whether Physical mode
> > can be used.
> > 
> > Since Xen when in x2APIC mode only uses Logical mode together with Cluster
> > model completely remove checking for ACPI_FADT_APIC_CLUSTER, as Xen always
> > fulfills the requirement signaled by the flag.
> 
> Actually, one remark: The text in the 6.5 spec really only mentions xAPIC
> mode, so it's not entirely clear whether the two flags actually have any
> meaning for x2APIC mode.

Hm, indeed.  That wants to be in a different fix however.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Mon Oct 30 16:21:05 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 16:21:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625282.974430 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxV0i-0000Mu-Pb; Mon, 30 Oct 2023 16:21:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625282.974430; Mon, 30 Oct 2023 16: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 1qxV0i-0000Mn-MN; Mon, 30 Oct 2023 16:21:04 +0000
Received: by outflank-mailman (input) for mailman id 625282;
 Mon, 30 Oct 2023 16:21: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=Hhfi=GM=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qxV0h-0000LL-3k
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 16:21:03 +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 508d48f3-7740-11ee-9b0e-b553b5be7939;
 Mon, 30 Oct 2023 17:21:01 +0100 (CET)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DB9PR04MB8409.eurprd04.prod.outlook.com (2603:10a6:10:244::6) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.11; Mon, 30 Oct
 2023 16:20:58 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6954.016; Mon, 30 Oct 2023
 16: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: 508d48f3-7740-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=dFyZniiLYdvqh7VA8FG8mWZrGHT9DoIvJEreo1RslKY+qC1EfUv29hR1exON+dA4coM2MaFfQzAPKysbqLc3cpTYfAo+5Fe75zCTLS+VO/NsVmHxan9+YPV9rC059AaiLHbxvlGbUhinPO0tFpjQ4qyeoeBAegKKLXoxtNmBDFyzvUq/mZyEcYDXb2IwtQZDGpXW0mQINB/zmwTlrjrnGYzLMgJ8xZYDMvlbSoTMV67PeQus4k06dmuYcVMxtnfXjchSPpCtmkLuQB0V3/aRyBtOvvtF0pdcpz2OuHTMCkDcPH4xqxrGY+VWQl4EzySRPFsm1+h6ltWeaJ+kbG+ZwA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=w6geNRyVnAZFztF+B5xdlA8rKGH2UDWHlouDjL9Omh8=;
 b=KzWUAX+Go9c2caz2Nbzoah303ZluQpSOQ/qYsJFp1DiFzQzJSXWROiTmhiEnd/WT45NtWXBHmcm5oJFSdkm5lEDOvPfHEAko/wCd6U3/lvzU16FF9euivLVVnFbGMv0OQvpWJXKwqXigckXcQHqXza1iwMtevW9v3gec/sg5+A4wOO2kFUndVoKSLJ0lOnhgs5uzJN7VRnFlfpOJU850/iywf4dPyOKtajoZG/6hjBIq0s3lc3k5wM0d7Mskktif+buSdKJAFIN1yHjDh2jzLUEciQLH+7YC054RiDnJ2VHsvV9YmxdyBgHTRu9DFfVuvXePz0xY9Wyu5fFyFMLeJw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=w6geNRyVnAZFztF+B5xdlA8rKGH2UDWHlouDjL9Omh8=;
 b=l8IeiXl2NiTosIIBlDysSUUjpYM8yWBD6AxqSRAOEu+fvX75Jzh1RuVGy85QwPpnQaPujoeiBJK7hcVZz9qpvJcJESeywwVbo98lhmDNbJP3usGFCNYVpIMJQWmKXG8NJxInfzbAeEc0sXNlBj2bclyznHybNttcXvdm0WIDnAwD04A1XqSDSGvceWjDRW09fKuSp4s4WxPa+hiDTL4waAIqbrL1oqSgLzwAH9Hb9ftx0YuPtawN3shOas9vVXIJb5cQdWjco0+Po+GIvDawvbDaTddQbqq07KSKsNLcEijsS+Ae18Jif2JhQ9QEUdBTVKifLFDg8k2/8qOALDOC1Q==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <6fc915a9-4415-3337-3b3d-cef0e9f735c1@suse.com>
Date: Mon, 30 Oct 2023 17:20:58 +0100
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [RFC PATCH 02/22] x86/msr: implement MSR_SMI_COUNT for Dom0 on
 Intel
Content-Language: en-US
To: =?UTF-8?B?RWR3aW4gVMO2csO2aw==?= <edwin.torok@cloud.com>
Cc: =?UTF-8?B?RWR3aW4gVMO2csO2aw==?= <edvin.torok@citrix.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.1698261255.git.edwin.torok@cloud.com>
 <9d950b3c5502b5fb5fad62845b56b15d1bacc2d6.1698261255.git.edwin.torok@cloud.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <9d950b3c5502b5fb5fad62845b56b15d1bacc2d6.1698261255.git.edwin.torok@cloud.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
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_|DB9PR04MB8409:EE_
X-MS-Office365-Filtering-Correlation-Id: e9c7264b-4412-4a8b-58fc-08dbd96432f5
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	dY8f0IRp5XkTAVw51mOEVMgGw0KTfO2nIwCoXePM3cZ8FOhXw/T5pczeKgq96ylRYcN42x69aoRQligzARzt30WBrl625PSk8BPAqdi/y2k7s4aGNSC/hv1Yu2Pcp4M+1nyCgSCISzTAEoaNSicAWL/IoOXkgU+2dLIGpWx56wW1bHKV58zN0B0cGBxkk+U9s4+vBBDSXD1Mh6fn0XLubl9AAocAlpG2jeC93mcP2off6u97SyKFJB/qeJiuNcA5imrpKHueKNE2P1oLICjO98NSErKq3n2HIDvKgtmZwPfQcY85rDQLEmWt45CZGRmENL1kTsZYzb1OteWediqlpy1rcnZA+cAwa3HUzb0ptd3LrHfSAxd6V9kuaVtw5LAbaK4bojnENYxgoezsOn3v64vMPUtCWfTSmwPfa1BQzwE3iHE3pgVOm9lxZfpf7P6OU6Z/aU8Sl7bpBFzyua7QudXRuN1u/mSxVwZ9UJn4FLYLPiTeGycTxPxShUAY1YlhMitH5YSRDnxfratt0qKugh5dJIwSLqC4fZPpkndpby3Z10YleL5qXaUwkHIF5a0xQAZTFEBf0Hsk3sT28C06AJo4/+ct8dTnFtlNitsWGZ47DM59sN0wpqieXr6Ogal5P8GpVcwfWbX57eOtL8K+Lw==
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)(376002)(136003)(366004)(230922051799003)(1800799009)(64100799003)(186009)(451199024)(26005)(53546011)(2616005)(36756003)(38100700002)(6512007)(6506007)(66946007)(316002)(478600001)(86362001)(54906003)(6916009)(66476007)(31696002)(6486002)(83380400001)(66556008)(66574015)(31686004)(4326008)(41300700001)(8676002)(8936002)(2906002)(5660300002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?dTIrOXA4UkEzREpuK0VLQktXTGdHdk93UEw5YWVRMWlLVXFXS05tZDI2bFFD?=
 =?utf-8?B?K0R4dmVSbTZqZ3ZDYS9zVmFONWwvY2l0SlhQYkNOai9RQU52N2YrT1hzcXVm?=
 =?utf-8?B?S3piZFhPNnNSSFVuUnVRT0EyZTFTWFRmR2o4S25zTDBvNUZMQ2xQeXFuREdH?=
 =?utf-8?B?dGl1OE5EMGhLaS96Q3NZMjJwK213aTZtaVFzSC9wMWVEZWZrcTQ2MjJjZ3A5?=
 =?utf-8?B?R3V0Q1NOdW9EdDdweDBPZzFYSFViaUhNMzI5VWszVkx1ZU40VlQ5WFIwc3gy?=
 =?utf-8?B?NWVLV0NOdDBSMm82bWw1eWRETmpjSXNDYitUMlpxSnhQWFlYSFoxSVdtdXhj?=
 =?utf-8?B?SnNueHF1VVo3d2RHZ2tuTGZsTVplU3B5b3V1bTdzalhway9GUjV2Mlh5OGVw?=
 =?utf-8?B?Skh3QThzTmxJZi9KZXl1T2l2OGFKUG5xaElYUHVZcEY1Z3BMV0N2b0FIY0pu?=
 =?utf-8?B?UEl3YXZUSEpRMGVybVhsUjJ0dUtXU2FhbmlWb09lTTljK3EvU2ZuQm9uMC9a?=
 =?utf-8?B?a2hnUnNvVCtBQ1BjSE9WY1JBYTFENUlyeDdFMTJVR291T1JpT2dUamhuaTRh?=
 =?utf-8?B?UnprWUVDOE9weFY5dFRRNml5MnJWVVpwcGhxMXBwQjFFODNyWmFuWXEyYWFY?=
 =?utf-8?B?QzA4bzVDNGhCTnBFV3NvY3ByM2ptbHFWd1ZIcStNMmVMWnZCVXZObnBFMisr?=
 =?utf-8?B?bFp6QmZxS1liTVlabFNmeTRQM2ZhWEovLzA0c2pVblR3V1k1S1dUSkRWUUt5?=
 =?utf-8?B?UCsrZi9wVDkvOUJtQUs5UkRuRjZOTU9QcjVrMjVFL3FrQ2ZtYXdXZ2w1bHhj?=
 =?utf-8?B?aWhTYktNelFuOHV2bExvaSs3V1J6WHBhSGN5ZjlPc0s4QUlBaDNoOEZYb05Y?=
 =?utf-8?B?b094c3F0OXhlZFd5ZEZNc3drbThOekoxZi9GZjZZb3d6QXZkOFdiQXBRZWpv?=
 =?utf-8?B?NXZ6TGo1Sm5BVHFXTlUwdXNnUjgwdVhXd1dndW5zWUF2ZWZRU2dzcXRRdzRa?=
 =?utf-8?B?aXduQzNhdDU0RERoQjlTVUdQVFFlQU12a2JKSnFJWW4vM0ZOcytjRGdESHpS?=
 =?utf-8?B?a0pLVlpmMVdGcTI4dlY4ZWhhQUJFTVFTK1JvS2JaRVJUNDhYKzN4eTNzWkR3?=
 =?utf-8?B?M3BMbHRVNUZNN1QxSld0b2NwbTBXdzJ5bG4rb01jYlNWZVdtQXdYc2g3WGF0?=
 =?utf-8?B?VTNmSkJBUUYvOWRGYytXTXJDb3I3MWtzUkhuWVM3OHdnOWFaWitOK09PNkdu?=
 =?utf-8?B?VVE5Yk1wZVpHUzlYUzgxekxrTk4vVlZPZWdXTWdBRTc0LzZDRHhveFBIaWkz?=
 =?utf-8?B?R0IwQWZKQm5MbjROeWlzWVBVbXBOREZiVDVVWnRudzUwbTFHWXBZSDhKeVFv?=
 =?utf-8?B?ZjJ5OVc0WjFTRk5YRjVOUjFQbGtJU0c1SDRXcjZpNlhmODJLUnhZNzFPdXJQ?=
 =?utf-8?B?WTl6WWRpWWlZbXNKQTQyNjRsR3BGS3lyblBmTCt3Mm1lRFovL2drWlRTeEdQ?=
 =?utf-8?B?K3B2MkhkNG5DUzIxSVg0aU96OEE2OVM0M09qeE9aVit2aWZkUGs2TStPYVdE?=
 =?utf-8?B?SStLZ0pvVWYwcUJMRnA0R2VPUXRKMG5OZ3lQTEJPS3pCYXAzQXlDZHRRR3lh?=
 =?utf-8?B?M245TDIwaEwzNWtvTFF1OGR1cWM3ak1yenQxalJEVTlvZUticGRxYVNiSzlp?=
 =?utf-8?B?ZFdVVEsyYmpnN0RXeVBJeEFGU0NKM1BlQVF5ekNGWGNKV3JYRWtoWlpQd084?=
 =?utf-8?B?eTdSazNVeUJ1QmMvT1hXZHNtc2ZhWG5STHJSR24vWHVNZ05rOGE4SjRPMDdS?=
 =?utf-8?B?ckIvSUlWYmFSaXhZTDVrd0hhdlgxbTFvUXc1WTlZMnBmZVNKZXZyTjdUL1Vq?=
 =?utf-8?B?dHV5ZFlXcHRLSC93Y3ZzOU5hSU9CdzA3NTU1SFVpdGJoeTZjdUdBOUJ2eHln?=
 =?utf-8?B?OUFpVFR5Y0R4WElsaFpUNlpSRFN1TFlEL2lQVmZLeEZDUzFZMXZEYWtmMFFK?=
 =?utf-8?B?MFNKcnQyZG90RjgrR0ltSE9PaWppSlBOSWVkKzI5andDUjRiL1QyZXc2QXBV?=
 =?utf-8?B?d0pna1lXOUJ3ZU0zYzQ5WTZic0JsYXkvZERDWjFTSmRWb0NiRW9UZkI2NHps?=
 =?utf-8?Q?hXs2F3IOk4iKsK+fgwPp9s95j?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: e9c7264b-4412-4a8b-58fc-08dbd96432f5
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Oct 2023 16:20:57.9124
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: wT5DT1bTwnYHJYyjgqyK+d2IpqPEq8Cs34FfyANxi/cHY8ufs1y8Yax9f343OcBDob7+ZiiZm5tcLofM62/cog==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR04MB8409

On 25.10.2023 21:29, Edwin Török wrote:
> Dom0 should always be able to read this MSR: it is useful when
> investigating performance issues in production.

While I'm not outright opposed, I'm also not convinced. At the very least
...

> Although the count is Thread scoped, in practice all cores were observed
> to return the same count (perhaps due to implementation details of SMM),
> so do not require the cpu to be pinned in order to read it.

... this, even if matching your observations, is going to be properly
misleading in case counts end up diverging.

> This MSR exists on Intel since Nehalem.
> 
> Backport: 4.15+

If this was a backporting candidate, I think a Fixes: tag would need
to indicate what's being fixed here. Otherwise this is merely a new
feature.

> --- a/xen/arch/x86/include/asm/msr-index.h
> +++ b/xen/arch/x86/include/asm/msr-index.h
> @@ -641,6 +641,9 @@
>  #define MSR_NHL_LBR_SELECT		0x000001c8
>  #define MSR_NHL_LASTBRANCH_TOS		0x000001c9
>  
> +/* Nehalem and newer other MSRs */
> +#define MSR_SMI_COUNT                       0x00000034

See my comment on the other patch regarding additions here.

> --- a/xen/arch/x86/msr.c
> +++ b/xen/arch/x86/msr.c
> @@ -139,6 +139,13 @@ int guest_rdmsr(struct vcpu *v, uint32_t msr, uint64_t *val)
>          *val = msrs->misc_features_enables.raw;
>          break;
>  
> +    case MSR_SMI_COUNT:
> +        if ( cp->x86_vendor != X86_VENDOR_INTEL )
> +            goto gp_fault;
> +        if ( is_hardware_domain(d) && !rdmsr_safe(msr, *val) )
> +            break;
> +        return X86EMUL_UNHANDLEABLE;

Why #GP for non-Intel but UNHANDLEABLE for DomU?

Jan


From xen-devel-bounces@lists.xenproject.org Mon Oct 30 16:25:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 16:25:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625287.974440 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxV4f-0003pW-AJ; Mon, 30 Oct 2023 16:25:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625287.974440; Mon, 30 Oct 2023 16:25: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 1qxV4f-0003pP-6m; Mon, 30 Oct 2023 16:25:09 +0000
Received: by outflank-mailman (input) for mailman id 625287;
 Mon, 30 Oct 2023 16: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=3VkP=GM=cloud.com=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qxV4d-0003o6-Kf
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 16:25:07 +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 e25f0938-7740-11ee-9b0e-b553b5be7939;
 Mon, 30 Oct 2023 17:25:05 +0100 (CET)
Received: by mail-ej1-x635.google.com with SMTP id
 a640c23a62f3a-9d34b2b51a5so220805966b.2
 for <xen-devel@lists.xenproject.org>; Mon, 30 Oct 2023 09:25:05 -0700 (PDT)
Received: from localhost ([213.195.118.109]) by smtp.gmail.com with ESMTPSA id
 i19-20020a1709063c5300b0098884f86e41sm6147247ejg.123.2023.10.30.09.25.04
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 30 Oct 2023 09:25: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: e25f0938-7740-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1698683105; x=1699287905; 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=99qu0f/IB7zYA48TZXIbF83b7dqXVJSK/aWx+C0Beng=;
        b=e4lAZLhTBhsyt6cVR0zPxJ+fklDKfMSK5m+xCWWTKujnt5w6CQKHEu1u4D9zUIUawc
         8ur4kwFJCwkbTrggUmM0Pz/cuXV23dW2lY84HcH/OnbPiqU2LbrrG7S0FkHzdT21pqNP
         ZNZDbNgOxBCDECPlfOtzblh5e/ldjsAGyAF54=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698683105; x=1699287905;
        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=99qu0f/IB7zYA48TZXIbF83b7dqXVJSK/aWx+C0Beng=;
        b=YXtK4AeKVRfKUBhgci1UVTzS/Vj8P0XAgCl6gF1iM+sS6JeGx1NXV9xTNr9cejKAfl
         239/k29HMbbDGH5Bb2PX/OtNQYUjmXkBKIexEZBTm2mHFGNVwZw6dmNvqCMm9Hp+BRMZ
         2iJeVQ/BPkNEYjzTd79HewfFGxvCF8h5sTuRt8PK7ZXslQpdJwQuA42Wm/+N459PphK6
         prdBEGe7m3tXiHG4l4MI3cDRr0dY51Ird9MSGmvKAudWFk9K3uDox/8e+cCnt40e/hVt
         8CclTM/st05TvlpnmIfHxc3lDfN2mEdKfxW7t873Ey6/opGWf3YZpT2KNndrq0g/WeI6
         qR8g==
X-Gm-Message-State: AOJu0YwYtIS975B5+07Ya34PyJ94BCoUh/d1tBojZwwRqhXhSzz5c/D6
	1KIODEhftDH3JzkAwldoxk+UuA==
X-Google-Smtp-Source: AGHT+IF+ulQiLt/I0+C9yuIca3JQT2irf09AxoI4exEUDd5SJnsL5ZEHKpFZ0Ub2me+qU1O3XmdCig==
X-Received: by 2002:a17:907:74d:b0:9c6:9342:1459 with SMTP id xc13-20020a170907074d00b009c693421459mr7754388ejb.20.1698683105105;
        Mon, 30 Oct 2023 09:25:05 -0700 (PDT)
Date: Mon, 30 Oct 2023 17:25:04 +0100
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>, Wei Liu <wl@xen.org>
Subject: Re: [PATCH 4/7] x86: detect PIC aliasing on ports other than
 0x[2A][01]
Message-ID: <ZT_Y4KmwRld3j1fR@macbook>
References: <ZToksEP1Fg8MscdK@macbook>
 <86eb1c0d-ac95-247b-16c3-9c4871398082@suse.com>
 <ZTponIYDYDWRZhzi@macbook>
 <75026813-03fe-3a46-2274-b93e98f62f89@suse.com>
 <ZTqDjNSBmXeblsud@macbook>
 <d3da9300-781f-9abb-158b-0c82d36228f5@suse.com>
 <ZT_IP_-X4oLhmcFT@macbook>
 <e4929b28-5608-bba8-9953-270f408e32eb@suse.com>
 <ZT_KbM0tzrn5cWR6@macbook>
 <23a229f8-9987-ead4-995f-a917300ac6ae@suse.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <23a229f8-9987-ead4-995f-a917300ac6ae@suse.com>

On Mon, Oct 30, 2023 at 04:35:41PM +0100, Jan Beulich wrote:
> On 30.10.2023 16:23, Roger Pau Monné wrote:
> > On Mon, Oct 30, 2023 at 04:19:22PM +0100, Jan Beulich wrote:
> >> On 30.10.2023 16:14, Roger Pau Monné wrote:
> >>> On Mon, Oct 30, 2023 at 01:24:52PM +0100, Jan Beulich wrote:
> >>>> On 26.10.2023 17:19, Roger Pau Monné wrote:
> >>>>> Maybe the issue is that PV_SHIM_EXCLUSIVE shouldn't have been a
> >>>>> Kconfig option in the first place, and instead a specific Kconfig
> >>>>> config file?
> >>>>>
> >>>>> Maybe it's not possible to achieve the same using just a Kconfig
> >>>>> config file.
> >>>>
> >>>> I'm afraid I don't understand what you mean by "Kconfig config file". It
> >>>> can't really be just another .../Kconfig file somewhere in the tree, as
> >>>> it doesn't really matter where an option like this would be defined.
> >>>
> >>> No, I was thinking of splitting what PV_SHIM_EXCLUSIVE actually
> >>> implies, for example by adding CONFIG_DOMCTL_HYPERCALLL or
> >>> CONFIG_PLATFORM_HYPERCALL and re-work the pvshim_defconfig config file
> >>> based on those, so that we don't end up with negative relations.
> >>>
> >>> Note sure all usages of PV_SHIM_EXCLUSIVE can be split in such a way,
> >>> maybe we would need some compromise.
> >>
> >> Wouldn't such a CONFIG_DOMCTL_HYPERCALL then still want to depend on
> >> !PV_SHIM_EXCLUSIVE, which is the kind of dependency we want to avoid?
> >> Aiui the two (splitting and inverting) are largely orthogonal aspects.
> > 
> > No, CONFIG_DOMCTL_HYPERCALL could be promptless option enabled by
> > default and disabled by the pvshim_defconfig.
> 
> pvshim_defconfig shouldn't play a role here. Anyone configuring a shim
> build from scratch should also get a consistent set of settings.

Then we might have to expose those more fine grained options.

My sauggestion was to still allow enabling shim mode from by the user,
but that building a pv-shim exclusive image would require using the
pvshim_defconfig, to simply avoid exposing a bunch of fine grained
options that only make sense for pv-shim exclusive builds.

If that's not sensible, we might consider exposing those more fine
grained options.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Mon Oct 30 16:26:34 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 16:26:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625291.974449 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxV5z-0004uJ-M7; Mon, 30 Oct 2023 16:26:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625291.974449; Mon, 30 Oct 2023 16:26: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 1qxV5z-0004uC-Jb; Mon, 30 Oct 2023 16:26:31 +0000
Received: by outflank-mailman (input) for mailman id 625291;
 Mon, 30 Oct 2023 16:26: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=3VkP=GM=cloud.com=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qxV5x-0004u6-O6
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 16:26:29 +0000
Received: from mail-ed1-x530.google.com (mail-ed1-x530.google.com
 [2a00:1450:4864:20::530])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 135bbb14-7741-11ee-9b0e-b553b5be7939;
 Mon, 30 Oct 2023 17:26:27 +0100 (CET)
Received: by mail-ed1-x530.google.com with SMTP id
 4fb4d7f45d1cf-538e8eca9c1so7536241a12.3
 for <xen-devel@lists.xenproject.org>; Mon, 30 Oct 2023 09:26:27 -0700 (PDT)
Received: from localhost ([213.195.118.109]) by smtp.gmail.com with ESMTPSA id
 l2-20020aa7c3c2000000b005407ac82f4csm6237500edr.97.2023.10.30.09.26.26
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 30 Oct 2023 09:26: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: 135bbb14-7741-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1698683187; x=1699287987; 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=Y2CsJS2Z1go25NNTkqlGOMv00wUBDUayWJEChGx+47s=;
        b=AzX5RMTusCJqBm5A60Zk90LkSPFN8LBBjNfznn1oVWplWPV+gRh9Fqib2724KHQXp4
         ursQS/ZLfh9Hq0MvZwHmD4OVGVM1mwVFdWXa1lPnBNbAfH9b31wbz/XsE2Q+o4vdv+qi
         JJycn4+cR/+yszscTERvFbjJWsgDM/wQLAHYY=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698683187; x=1699287987;
        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=Y2CsJS2Z1go25NNTkqlGOMv00wUBDUayWJEChGx+47s=;
        b=DcXouABrP+V786IryEI4+cZFrCW6akbYOtBGiedmN8PVtv4MgEK75+EVsLil24xFGM
         jL6hkGwHPyVldCs67r+c76cGITOdST3iOKV9y2ppyXkSoDy8J7wDVRCeJ1kgk2tjwwvX
         MlkxMlmhtyEyzs1YDlNHbwsDiqhb1cFUwuZh3NOGCqH4RL5CsHZHJOIDPD8+BITFHjk0
         o+8Fo7yg/IxdSjqr8IOPxXtvAUti6GR1UHb6UkbvInPg2N8jodXzWc9071uNs8C1SWxG
         NFc2IVA3vnbkrR6YrHmUUE7VV3jIRuVq8sYRUnmIb+LXvAxysEwCR5nINcc35cw+vAvT
         mD8g==
X-Gm-Message-State: AOJu0YxcfRpM8Lzt11Vk3WDOj0d2t/F4STqAkr5W+vElF7K9X8hrQLAa
	FSmy76/ACC6OZj6x4vInaTkPqg==
X-Google-Smtp-Source: AGHT+IHGuribpwoBub0/lexlIKKuy2qCNwmwTmw/O0xO9KKo2Dkv1NcvGYzWZN17GliWTsLHxGEr0A==
X-Received: by 2002:aa7:d351:0:b0:53e:467c:33f1 with SMTP id m17-20020aa7d351000000b0053e467c33f1mr9306436edr.8.1698683187331;
        Mon, 30 Oct 2023 09:26:27 -0700 (PDT)
Date: Mon, 30 Oct 2023 17:26:26 +0100
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>,
	Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <volodymyr_babchuk@epam.com>,
	Shawn Anastasio <sanastasio@raptorengineering.com>,
	Oleksii Kurochko <oleksii.kurochko@gmail.com>
Subject: Re: [PATCH] arch: drop get_processor_id()
Message-ID: <ZT_ZMv5SJVcZ-9zf@macbook>
References: <446254b4-8231-f6db-5f18-ed367503454c@suse.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <446254b4-8231-f6db-5f18-ed367503454c@suse.com>

On Mon, Oct 30, 2023 at 02:29:09PM +0100, Jan Beulich wrote:
> smp_processor_id() is what we commonly use; there's no need for it to
> have an alias.
> 
> 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 Mon Oct 30 16:29:24 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 16:29:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625295.974460 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxV8e-0006YV-4D; Mon, 30 Oct 2023 16:29:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625295.974460; Mon, 30 Oct 2023 16: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 1qxV8e-0006YO-0a; Mon, 30 Oct 2023 16:29:16 +0000
Received: by outflank-mailman (input) for mailman id 625295;
 Mon, 30 Oct 2023 16: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=Hhfi=GM=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qxV8d-0006YI-0U
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 16:29:15 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 (mail-db8eur05on20618.outbound.protection.outlook.com
 [2a01:111:f400:7e1a::618])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 74a6b446-7741-11ee-98d6-6d05b1d4d9a1;
 Mon, 30 Oct 2023 17:29:13 +0100 (CET)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PAXPR04MB9089.eurprd04.prod.outlook.com (2603:10a6:102:225::22)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6954.16; Mon, 30 Oct
 2023 16:29:08 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6954.016; Mon, 30 Oct 2023
 16:29: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: 74a6b446-7741-11ee-98d6-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=nxb0wiVBpH3WpYSp1zj6e3WxCDWF4N5+lofQYKALx+Gp4kI1v3fcUGC6RsAmzLE7tKWIiC6VnQ1A1ZtfyWjuMdPTJbZkzG+PpIywtj0R7auObJWGWXMvEY7KmduuRNVfs9eP3KZwDJYmZAjC1QfptE4SueVtXl4ne7fB9JBiwFMtpMw00KXg+Dq4fq0gjMudt828He5fcZXo73xGibDWlAijGIUm0WeKCqNQndz4wP7a6mvQcPxuQr5/SndhDaYfEeo6uzDfemUu8y6MP7rmlZg3WAG1bRrkfBUFKH86T1VbT5dto8idj/0UBgKuzQMtWNifaRzRiPJo57R+FrWxCA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=PMeZPXrw5XYyfODhFdDzOiAAkUt9zFAYFaSApJILQS8=;
 b=ld094hssTALy45E/mut/d4VY8JA37jMYl0wsCQ/XsMC8lWnRJVxCxkhlHRbnDp6RNznf71UEN+88kRF7B2Y+HvIJuFknGHYXjxb11zDU9+6JHffX0niT0FYi6pGW7/6zwA0mAmhYhnUP7y0Sl6JyZt5+y3PYTHkv22mHDfH2XZWmpV3bSLRdvcCkMPUnRteiF1kbEekfkGK5yHtiKDvyLyCWQtMw7+in7F8kDOhwhhbNHymat8OyH63B692lBN5uewedEcFYq2iid6C40hpPhHZ83e+o3LKY5evv+OhNiIPUDFpZtE5ItmmrGt6HvwLO1kFSFEmvj9WAwMslgxvn5Q==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=PMeZPXrw5XYyfODhFdDzOiAAkUt9zFAYFaSApJILQS8=;
 b=c4rELk6YXGB0UwNbzCBEIFS7JHmaLeC1tz3QJNQTJ883pRa9Gq2YZK0fKEB9UogopPmQB25wOuyGYdvjpCZLcwrwIG8aHyCG134q37YKKg3TNnkxF1guDHUVXj8dfepAg2Oy+RtGg4rn2jZjSvFRZuVxYbsTxDn1AyJ5wg2cXlwSh4k5HP5+riECrdVCiJz//8rGfLD4EH8NdDcDlQYOvaLklEir+Lo+EmqMm9NZttes+XY530vIoDdEsT4Ocu2wFQMTnAY30CkUZDYpJKEI6/k9c9f/fKtDcMg1Z9v4LYaFHDbAtVmhTqKAwL8t5BMD3gV+mzo68dYu4NJMLUrqyQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <ac2eaa4a-36da-9d77-f682-a6bef25e27f0@suse.com>
Date: Mon, 30 Oct 2023 17:29:09 +0100
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [RFC PATCH 03/22] x86/msr: always allow a pinned Dom0 to read any
 unknown MSR
Content-Language: en-US
To: =?UTF-8?B?RWR3aW4gVMO2csO2aw==?= <edwin.torok@cloud.com>
Cc: =?UTF-8?B?RWR3aW4gVMO2csO2aw==?= <edvin.torok@citrix.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>, Wei Liu
 <wl@xen.org>, Jun Nakajima <jun.nakajima@intel.com>,
 Kevin Tian <kevin.tian@intel.com>, xen-devel@lists.xenproject.org
References: <cover.1698261255.git.edwin.torok@cloud.com>
 <4c04e5661688cf1de3e3fd668b0a78b23b6d7b2e.1698261255.git.edwin.torok@cloud.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <4c04e5661688cf1de3e3fd668b0a78b23b6d7b2e.1698261255.git.edwin.torok@cloud.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR4P281CA0379.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:f7::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_|PAXPR04MB9089:EE_
X-MS-Office365-Filtering-Correlation-Id: be3632be-e86e-4d97-9ad9-08dbd965572e
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	X6iBExAWRXzFfHD+6fj2RQ4dEYO/rpwOGkesYyV3KwTspdNyYkWyF6SS7og3B2B7O211h8zR6ULcsyksvajZYnrTRJI1V1vbSlLku0fa1mcz+8nv9iFGFTNLohRdXLkZb6zimdgbc6gmlkukg3Gm+Do48ak5UNBN1W6ZWmhLYMGr8oJdA+Im4aHGERSnBZTmN86qqlIP5UKAnyhd+45t9n79ZllK9rADoyYat1CyJU5bbB8sxJYKX0G2xK4+q76TNG61U3u5LyO9Qv64I1AkCYTbnN5KutwWKtv8S8WBv45dJfkFwIfc1jzXoNkzAUV45x9ui/z9WwrmxI5xUPajCTTEeL/NsobC4UpUeOd9ilJZ+v28WYjiCpKKd76RHJ2Ua3Q67Y2lhUufmClP80FVk6ew7h+sokgmNWvY3XvLcrz+5EW/tc/He1hXwFMVCC+plP4BkzcZxZ6guPZ7cp8R3IP3vkqMyNAI3bzq8HoA9XSxwsQ3jUfNwLKluwc420leVsH+HodaULDiJ9giy0IjYi/SBmSMTdCKy4jg3HmdGMpqZf0+iSlIcr4lKX3gGe9pajx4Efpado61U7rsjJw7YHTvxYqzjp6+/KZTVzbokO9Zwo7zvkb0JBQogiFrQYovF7KwAtOWqIhSfyMnb5A+hA==
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)(230922051799003)(451199024)(1800799009)(64100799003)(186009)(4744005)(41300700001)(6916009)(316002)(54906003)(83380400001)(478600001)(2906002)(6486002)(66476007)(66556008)(31686004)(5660300002)(66946007)(8676002)(8936002)(4326008)(6506007)(53546011)(2616005)(26005)(6512007)(31696002)(36756003)(86362001)(38100700002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?WjhGKzlnVUNZaE9LOXVlL1UzM0lLWWNzQy9vNVprQUpUblBuLzJXZ3kxSmFu?=
 =?utf-8?B?RW8zWXVQTlpGcitYMlk0VG5KYkNzZWoyZlhOOXgzTCs1a0VoRVlUNVQrU2N3?=
 =?utf-8?B?L0ZJRWNYOU56WnVJN2FYWkFmcFZJR1JCUE1QdVZPemJlRys3VzdTV3VXcHlm?=
 =?utf-8?B?UnZzYWxYKzkwYkVIWTZqd00wTFF0MkZHUTRKbUQ0TndGaUN0MXRGMEg5U05w?=
 =?utf-8?B?d2hUbGI4Z0x1WGRLNVBGb2M4OWt0UzBvWlpmcDlqNEN0bllpVHhQK08xaVFh?=
 =?utf-8?B?c2pDdGFBM0VNMDU1N0dxUlhqMEVJTWdJc0MwZzlHV3BGVkh5TURLY0pQUk5v?=
 =?utf-8?B?ZFQ2TlExYUNBaGJYZE9TR2JETUZITURKTVRTbGNFWi9rZ3BqZ01kT2ViK053?=
 =?utf-8?B?azgwd1NTL3A2MVI4TzNEbjlrQUtFS0d5OG1uTGN2aGtiTVpueHdxZmVQbUV3?=
 =?utf-8?B?Y3lxbjV4eFF3R1lvVXVadEd4Q3NPdzlXakxBRHovNElRVTFBMmNCUlQ1cmRZ?=
 =?utf-8?B?VFdoT0plMFd6Zk9mSHhKWlVWeVhKM1VyK2ZmN29zQ0pwTDBXSzB1UFg0enE4?=
 =?utf-8?B?MDBPd1krczF5dGVtcUg4eEM5S2xLZFZjMEtRN0pKdGpWd2lVMmlhZDg1azdL?=
 =?utf-8?B?eWhsMHFFNXp1RDlhaFNWL1ljdnRHSXVJdUVNUS9WOFgzYkZnNUtnNkpHR1Vk?=
 =?utf-8?B?Uk9wN01kYnltMjNXZmxKV01QSmZURzkvaFZoRkxlYnhoeHZTejhka0pxMW9i?=
 =?utf-8?B?c2R2MkNPNWM5WlpNYWE5SVhqQUJLZ29mNHV1OGZYamJOUGZOWGwxWGhpbFdL?=
 =?utf-8?B?UzJhUjUzb3VpbDg0b3FZSUxXWHF1L3drNWdsaVc5cmdFMnd2NW9ZQjB6Mkdu?=
 =?utf-8?B?bjlDM2syYTI2eGN1Wk9Hb2F5WkIzbW95Zk1TQVdnWjd5eTIrUWV2WVIvZ2h4?=
 =?utf-8?B?S2ttVDYxMDZ6Mkx3cTd6dGRwV0hxZHNpenppTk03VU5weTc2TlAzQ2cvT3d3?=
 =?utf-8?B?MUNxdjBaRER0L3Z6eE4xZE1rZlFOMlEyOHZVTUVJTTBBRDZrcWx3Z2dDejdN?=
 =?utf-8?B?TXV2Y0c3dzVsWWZWTmZSTUZvdFl1cGdvU0t0TnBNeGplZElaMlo5alF6RjIz?=
 =?utf-8?B?SEJ2NFB2N1ZkNnJ6dkRZNmlYVHBmYzJiUmpWWnFXSUlpZjZDUlY4VWt4NVZs?=
 =?utf-8?B?SkdpNC9CbGEwemxjNW9TOVd3czRBNThNcHByeTdkQ0E0aFgwU1JkK25XSDFY?=
 =?utf-8?B?dXN3NEpNbkxlVzlKK2ZhbG1RMVJqU0FheHpWb0FkQzFDRm9FMWNZVml1bGVV?=
 =?utf-8?B?OEhITXpNdHQ0aS9xUzZmam9NK0Q2UDZxM3lNc0tUUkZRZVNBdUtJaVdVcWhI?=
 =?utf-8?B?UVNKMHVna2UwbGc4TWpSVWNYcHBCKzEvcHRyYmxmS3gva05ZczkycnRhdGd5?=
 =?utf-8?B?emRZR1IxRzRNUnVtWko3YVhmbXkwOE15a244WTRKVU9Ib2pvYnp2L2RLTkJE?=
 =?utf-8?B?S2N4T1RqbnM4a3NxZmhnZDRmM3BwZyt4Y2cwYUFKWjI2eVpwZ28yNURCem5S?=
 =?utf-8?B?bWs4TzZ6Q05aWm1KMDdpTzNQM2tja25BdjdJQUcvRkJBUHdTZ1dtYzh1KzhY?=
 =?utf-8?B?Z1VUYkNkSmdsdkd1bVJuTUk5TTVLUGZMSUpyNkxvVStrYXJCaDEweGdWMHQ4?=
 =?utf-8?B?MC9scEh4K1MvNW9VcFQvdHNEblp0TnRhZmVVL0xTQUkzZ0VUNjdiZ2NiTldv?=
 =?utf-8?B?TUIxblU4MlNIR1pVSnVrV2o2T2FsODJ6MDJVMTJyQ0JlWlFCZ1hIY280MldF?=
 =?utf-8?B?UjZQWDdPKzJJU3lwc3pIZ016bjU2U25XTnV4cDI2NWwxRVBaVHRTWmswYlNV?=
 =?utf-8?B?Rm5EOStpTW1YUzh3Q2F6VkkrSlJiUHhlTXdhQ2l3M05uV2ZkVlNuTGU5dmxG?=
 =?utf-8?B?Q0RmNW53WDErOTlNMGNtL2gvdy81WUI5aSs5ZHFXeEFmTy9HMDRjRmdzUXlN?=
 =?utf-8?B?QVVCK3R5SHZFVVNJUE9GSkVvOEp1MjNLcmNzQ1ZZRGxPTnF4NzNrVHlDVTJ5?=
 =?utf-8?B?TTRqSy9Fb3M2a0FmSFg1dWxYMWFUYjF1Z3FXUmVIT2VWbHJFR09sbkFtUzZE?=
 =?utf-8?Q?2ngsJ/fINvMVaZWQvfMErYw4X?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: be3632be-e86e-4d97-9ad9-08dbd965572e
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Oct 2023 16:29:08.1986
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: D2dY9by8Fry+LYR3kaHXG+PVNi29SwuI5LA1M8+/0ngL4yzz4B2arjta1InTywgkRCcxbM+WKqVx+W5zHvrsjA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB9089

On 25.10.2023 21:29, Edwin Török wrote:
> This can be useful if you realize you have to inspect the value of an
> MSR in production, without having to change into a new Xen first that
> handles the MSR.

Yet on a non-pinned Dom0 you'd still be lost. Since iirc we generally
advise against pinning, I wonder of how much use such a change would be,
when it effectively undoes what we deliberately did a while ago.

> --- a/xen/arch/x86/hvm/svm/svm.c
> +++ b/xen/arch/x86/hvm/svm/svm.c
> @@ -1933,6 +1933,9 @@ static int cf_check svm_msr_read_intercept(
>          break;
>  
>      default:
> +        if ( is_hwdom_pinned_vcpu(v) && !rdmsr_safe(msr, *msr_content) )
> +            break;
> +
>          if ( d->arch.msr_relaxed && !rdmsr_safe(msr, tmp) )
>          {
>              *msr_content = 0;

If we went as far as undoing some of what was done, I'd then wonder
whether instead we should mandate relaxed mode to be enabled on such a
Dom0. Then, instead of returning fake 0 here, the actual value could
be returned in the specific case of (pinned?) Dom0.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Oct 30 16:32:23 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 16:32:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625299.974471 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxVBY-0007xo-K4; Mon, 30 Oct 2023 16:32:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625299.974471; Mon, 30 Oct 2023 16:32: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 1qxVBY-0007xh-G1; Mon, 30 Oct 2023 16:32:16 +0000
Received: by outflank-mailman (input) for mailman id 625299;
 Mon, 30 Oct 2023 16:32: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=PZGw=GM=invisiblethingslab.com=marmarek@srs-se1.protection.inumbo.net>)
 id 1qxVBX-0007xZ-0a
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 16:32:15 +0000
Received: from out3-smtp.messagingengine.com (out3-smtp.messagingengine.com
 [66.111.4.27]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id e0a0fe33-7741-11ee-9b0e-b553b5be7939;
 Mon, 30 Oct 2023 17:32:12 +0100 (CET)
Received: from compute6.internal (compute6.nyi.internal [10.202.2.47])
 by mailout.nyi.internal (Postfix) with ESMTP id 94CEF5C022C;
 Mon, 30 Oct 2023 12:32:11 -0400 (EDT)
Received: from mailfrontend2 ([10.202.2.163])
 by compute6.internal (MEProxy); Mon, 30 Oct 2023 12:32:11 -0400
Received: by mail.messagingengine.com (Postfix) with ESMTPA; Mon,
 30 Oct 2023 12:32:10 -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: e0a0fe33-7741-11ee-9b0e-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=fm3; t=
	1698683531; x=1698769931; bh=0OtgsMvHzA1yM+SFXRCisDbGSA/ccSpclUn
	hLDlxpgk=; b=KTCG9qCWjWJpvcnwYHsWO54MkJnMivtXJgac/TrJsWOqPwuU3Cs
	QJlF6/qKfZX36dYRVWuEFo9GdhdkeyRXDX6H4cb7oCW5BGJMxAK/KiGtkxMBRF5r
	0uE/siyC/y8TxHdPfwBR2Zdetq7Q72ezwYhRAlgawWuJk4aJTuZHo20l0mpVoBz7
	xNKBKa+iXsE1/+ib+q4YW8wAN7yM4izFE6RYDZWG05fA3HoYAL9j+ZXQyR7MJRFG
	P/kp3rXVuS9iF7Mas/Sm+fNZTJqzOorpkqddkEAqcXFPbji8eckT60/mC79d/ImK
	+AVbEePVszR8TZTPqSRY5eUFr/lWE7+07RA==
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=fm3; t=1698683531; x=1698769931; bh=0OtgsMvHzA1yM
	+SFXRCisDbGSA/ccSpclUnhLDlxpgk=; b=CwgiyZhvlQy8GLr0gUS6mwiXdUtRa
	pFWObJIcZnJsRraeKRFXmYnFrRasLtJ3HZxaihT9wYO553jUFl5nhtcdREgRdg98
	EIdl7zZaVBA5EFa5O8LW/+k8LiV1ww0jWs9jT3gtsiK0kDLEp9ygbrQ6RUxAj+os
	ZvnCgu4GmBy4NHGXK+kLvCo7L2j32nLJ8f2kwwgk2TI70pYGpGM74ZQT28FeXFb1
	YU/67pEp7Zpg52nAUo4HDrr+YSKRgPTR2SzIGCYeSdtAldwByeA2T537jenBHWry
	HrhaZHf84hID9efyLQEwlHxDmEdr31WqvVg90pGBDh75lKRzc9D6yRLVA==
X-ME-Sender: <xms:i9o_ZZWhK6z8xbspTfAp6M7bM8lsaFBLxbKUiYOB8ef-Kx9JNtr0og>
    <xme:i9o_ZZnGEfWmASnbDZZnFQfab3jCHJaBKgtn0Iq5mS1ebECPiUdCSj2NuV3vSkMEK
    1uMrcAkouQ6kA>
X-ME-Received: <xmr:i9o_ZVZdawt2OBNwNyW6Id7MovsDCbukTNWVRaq7Ku8f9oDzydd85s6KkB_hlper_5rAiKf_Z5bOeHAn97HTQxn-8Xn8XoJBC8Q>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvkedruddttddgkeelucetufdoteggodetrfdotf
    fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen
    uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne
    cujfgurhepfffhvfevuffkfhggtggujgesghdtreertddtjeenucfhrhhomhepofgrrhgv
    khcuofgrrhgtiiihkhhofihskhhiqdfikphrvggtkhhiuceomhgrrhhmrghrvghksehinh
    hvihhsihgslhgvthhhihhnghhslhgrsgdrtghomheqnecuggftrfgrthhtvghrnhepgfdu
    leetfeevhfefheeiteeliefhjefhleduveetteekveettddvgeeuteefjedunecuvehluh
    hsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomhepmhgrrhhmrghrvghk
    sehinhhvihhsihgslhgvthhhihhnghhslhgrsgdrtghomh
X-ME-Proxy: <xmx:i9o_ZcVtvTbgtxLB3ptZsvV2y8iuOTjCSoKk-pMfE5O542_2CQLh0A>
    <xmx:i9o_ZTl_JsNztL98lwcYeXuciNz3iuoevi8Qx_yiJIVBY_GjC0MASg>
    <xmx:i9o_ZZf9I-UtuMSvqiB6RRqBjXj6mdL9HS-r08GVKoktZkyxAjE7Fg>
    <xmx:i9o_ZbuMaAl_x_rrukYQ8caDNfnYRHaJq4cjc976Gp-_g-c5IUsscw>
Feedback-ID: i1568416f:Fastmail
Date: Mon, 30 Oct 2023 17:32:08 +0100
From: Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>
To: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
Cc: xen-devel@lists.xenproject.org, Doug Goldstein <cardoe@cardoe.com>,
	Stefano Stabellini <sstabellini@kernel.org>
Subject: Re: [PATCH] automation: fix race condition in adl-suspend test
Message-ID: <ZT/aiFnjW4dOIaiw@mail-itl>
References: <20231028033404.262729-1-marmarek@invisiblethingslab.com>
 <ZT-WvAye6OlWGLAx@macbook>
MIME-Version: 1.0
Content-Type: multipart/signed; micalg=pgp-sha256;
	protocol="application/pgp-signature"; boundary="N4zB2EWuPretiURx"
Content-Disposition: inline
In-Reply-To: <ZT-WvAye6OlWGLAx@macbook>


--N4zB2EWuPretiURx
Content-Type: text/plain; protected-headers=v1; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable
Date: Mon, 30 Oct 2023 17:32:08 +0100
From: Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>
To: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
Cc: xen-devel@lists.xenproject.org, Doug Goldstein <cardoe@cardoe.com>,
	Stefano Stabellini <sstabellini@kernel.org>
Subject: Re: [PATCH] automation: fix race condition in adl-suspend test

On Mon, Oct 30, 2023 at 12:42:52PM +0100, Roger Pau Monn=C3=A9 wrote:
> On Sat, Oct 28, 2023 at 05:33:57AM +0200, Marek Marczykowski-G=C3=B3recki=
 wrote:
> > If system suspends too quickly, the message for the test controller to
> > wake up the system may be not sent to the console before suspending.
> > This will cause the test to timeout.
> >=20
> > Fix this by waiting a bit after printing the message. The test
> > controller then resumes the system 30s after the message, so as long as
> > the delay + suspending takes less time it is okay.
> >=20
> > Signed-off-by: Marek Marczykowski-G=C3=B3recki <marmarek@invisiblething=
slab.com>
> > ---
> > This is consistent with the observation that sync_console "fixes" the
> > issue.
> > ---
> >  automation/scripts/qubes-x86-64.sh | 4 ++--
> >  1 file changed, 2 insertions(+), 2 deletions(-)
> >=20
> > diff --git a/automation/scripts/qubes-x86-64.sh b/automation/scripts/qu=
bes-x86-64.sh
> > index 26131b082671..a34db96e4585 100755
> > --- a/automation/scripts/qubes-x86-64.sh
> > +++ b/automation/scripts/qubes-x86-64.sh
> > @@ -54,11 +54,11 @@ until grep 'domU started' /var/log/xen/console/gues=
t-domU.log; do
> >      sleep 1
> >  done
> >  echo \"${wait_and_wakeup}\"
> > +# let the above message flow to console, then suspend
> > +sleep 5
>=20
> Could you use `sync /dev/stdout`?  I guess that might not be enough,
> since the sync won't be propagated to the hypervisor, and hence even
> if flushed from Linux, we have no guarantee that the hypervisor has
> also flushed it.

It seems `sync /dev/stdout` helps too, at least in a limited sample of
two.

> Xen should flush the buffer when a newline character is found, but I
> have no idea whether context could return to guest while the buffer is
> still in the process of being fully flushed.

IIC Xen should flush the console buffer on the suspend path (there is
console_start_sync() in enter_state()). So, if linux manages to send it
to Xen in time, all should be good (in theory at least).

> Anyway, adding the extra sync might be good regardless, and keeping
> the sleep.

Good idea, I'll send v2 with it included.

--=20
Best Regards,
Marek Marczykowski-G=C3=B3recki
Invisible Things Lab

--N4zB2EWuPretiURx
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQEzBAEBCAAdFiEEhrpukzGPukRmQqkK24/THMrX1ywFAmU/2ogACgkQ24/THMrX
1yyfDggAmI7R5YuGcPV57JeI6Z60mW+wA+1cN3+Iwh386ddFKxPmBgufwK1BQ0kZ
TKOm0ZkCRp/yu7Th5bfyMrixk6Z5ypeC+u7lcqy0mwg85qjqlBTs7bO9/Sx6TzIW
O0UvHHsFyWzfhGajboEAOxa4Uq/NSk7OIlWCFHzqHWCwpZ7W+YZd41CZNtZBXmy5
zAVEFzN025xxwAQZf5oI5AqovFRgEofKxH1U0SugyhGyRYHzJ/gcyGgogYap0MaB
U7bvMfax3KMAdUcgbLaxzC8T8RwXG4txPplXBVGyz7JZvxmsBS/SKcjCtQq1JE4u
Gia9MWWwduJ/zSxjH6EmwqQR4I13eQ==
=/Co5
-----END PGP SIGNATURE-----

--N4zB2EWuPretiURx--


From xen-devel-bounces@lists.xenproject.org Mon Oct 30 16:32:37 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 16:32:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625301.974480 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxVBs-0008JA-Qm; Mon, 30 Oct 2023 16:32:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625301.974480; Mon, 30 Oct 2023 16:32: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 1qxVBs-0008J3-O1; Mon, 30 Oct 2023 16:32:36 +0000
Received: by outflank-mailman (input) for mailman id 625301;
 Mon, 30 Oct 2023 16:32: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=Hhfi=GM=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qxVBr-0007xZ-Jy
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 16:32:35 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur05on2061b.outbound.protection.outlook.com
 [2a01:111:f400:7d00::61b])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id ed9fc389-7741-11ee-9b0e-b553b5be7939;
 Mon, 30 Oct 2023 17:32:33 +0100 (CET)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PAXPR04MB8458.eurprd04.prod.outlook.com (2603:10a6:102:1d9::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6954.15; Mon, 30 Oct
 2023 16:32:30 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6954.016; Mon, 30 Oct 2023
 16:32: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: ed9fc389-7741-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=TkAPsClAeUr9h9H8atMv5DMawEXA6H47L+jy4X7J4J2OpB/G248zzvghYWvcPC7tNsiazkZVfXXawPw6Cv/Pc5z7VecVMBUjtxLRqvheMFdfc88dtBBCVrPivHk9BLwFfdYok0MZNq+FJJVjbqiO1sd1S903Ga+JCOpqRSQJfF5LQyTpcmUbCso1rSTO2i3qnnAhmYke0l0Qa0U92roiyOzM5d+3NtG3vkI8ai4QQra3ElwY4ePrbwY7Om5CiKPEMzo4XEX+0yNgxvgIfAiJwSSGZ5llfO1YvPQLURsMXUDfq5m/WNI/4dnabqH/0oEmilNrJsO7tUnLVCqOnGBZog==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=XoRRgVAMe+aAXAGhmW4wc+Zar4xu+5zNZP0iuqZ2Zto=;
 b=GcNBZyNb7jQ/yr8l17bgx31JrIl7EAtlzZeKnqMn0xT3loWjYlTFGjG/z664Gqp0pGwIztYW4UlDGshDV3o+OTpdugYrpZudOugBMOX7ZKJumzGhjxB3fbhhbXgnGyejVgTScdsgnzZNpLhw/DZaK3ThryZyhtZt3vlKMSwH1jWvqw8Q4JwWQDfdtAEwV5Lz0bw+bmsIHyPhV2TRwQkdfHkMhc1foi/o4ZNdE8T20Jc+16/x9F92+iPjnK31vCzZcEGuTAZld+mtxl1c9SHA8Nyh2mECrHhD7AipQ3Z1f5mVk4k9G94TJHUtQ4v1fEbrJi5CIXXFA3ppMyof2d0UFQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=XoRRgVAMe+aAXAGhmW4wc+Zar4xu+5zNZP0iuqZ2Zto=;
 b=jTP/EISLjFsbiiGsuGwwmv3Nj20kzbgzZmuD0eYT12GJltN6sp8TjapB+aqqIN/JzqGiPLqbnP2F2/xhAdjq4PaClU6PhVLvUnZp485dkXbAefJssPEELfBZJoZqdDjoIAt6YGTAjHHa9G95DstGdjFn9g1s1TfNqzbywQiG3CV5JN/YXr5qT+UnP0qAXIcnEuEX07VHUQdLkDvQMi+jdFPTWPLpzPw3dpvEsFQylEq6cY6IG9uvJHwJKDgSEsomamZVZuSgOflhc2Ut1v8WvjsV32uoxuZIQfSyZBRs7NIdvq4gqlpk7Qd/nHZdo+1tJFNquRtBuhov2l6WQmNklQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <cd1ed5f9-ca42-7870-233d-e2bc42515dcf@suse.com>
Date: Mon, 30 Oct 2023 17:32:31 +0100
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH] x86/x2apic: remove usage of ACPI_FADT_APIC_CLUSTER
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: <20231024102630.47691-1-roger.pau@citrix.com>
 <77a0297d-3b47-6679-94a3-1463f642aa72@suse.com> <ZT_XgnKC6ORZcyXX@macbook>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <ZT_XgnKC6ORZcyXX@macbook>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR4P281CA0305.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:f6::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_|PAXPR04MB8458:EE_
X-MS-Office365-Filtering-Correlation-Id: d82928f8-1b3c-4228-9879-08dbd965cfd5
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	meZu5GIRvNPTZmvIG5fIahERAtU3ptNWaM26X8R99skjFaJHtuPCw8NCdRwg+VADwFr3WH9CvVEyy8qlY7UYBDgY0bryYh/MuBSyMXsz0dC83gTZErQy5fCNzcQwraLUhVJ1MVV+mM2Pd0E+7mkikMdFSTcwpP0ebTDS8AQqUYVBYCfW+RGzCaXAxCFo6xHcHMbepi0gaMfCJmrCYvrXcD4RJFbYbSMdYdVrNNg/ZvCYvNX2IO/8a2DG6zMTYznWOsEkK/20Yg14SHKav7gdsjkxEV9nGxHhSP2G3EZN+xNvZwCqC5fPWcbV9IYJwAyEp8H128TwFPBG9Xo5NWf/OVQABR/EtCrLsvEjSfqF6KTo9IKvYRCdzrGBhud2XAUfB+ib10gHZsdCOhCO2WS9UJ/0Lfm1dk4FLwbO5vRpS9TJnzxRZ3ekc4UQXqEszxm2N1ck49D95BwyO1zWfSni5JBmtXUcfFnuKTzFdLT+vfOKfHAcc7hE5JwpMqsz+py/MJw2hZ+VSyqfq1Bq4hJU2vtuGRcBWqa/0oSf46znIWlYK1YEOY7c3GcaIcAyCVGshhQQrxU5BOs/flWp3vY7ZkkESvl28yyzFB/ppOPtpfaPCh2xfyASmb1EG9ACNCvVxNj7Pg9iBcKU5oqILWqT+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)(396003)(346002)(376002)(136003)(39860400002)(230922051799003)(451199024)(64100799003)(186009)(1800799009)(38100700002)(2906002)(66556008)(6916009)(54906003)(66946007)(66476007)(316002)(6506007)(53546011)(26005)(6512007)(6486002)(478600001)(2616005)(41300700001)(5660300002)(8936002)(8676002)(4326008)(31696002)(86362001)(36756003)(31686004)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?Qm1hcHdsY2htcHFEd1Z4MnZwbVhhTU1lYjIzSVlXMjJDRnNHWkZpaCtOaDVQ?=
 =?utf-8?B?eVlqdlduaDhIeU51SHFxQ0NNc01oWWh5QU1kVUR6Yyt2OHROWEpVZzJEc0Vu?=
 =?utf-8?B?cE9IMFNxZ3djeFpEZ0lycDRKS1dCR0RSZWpvMkdKV0RaUVpZOS9lNzJsVHFj?=
 =?utf-8?B?ZGdUcFlpNldkMENxc3JwdlZrT2ZNOFhENFdGUitzUWxjNGlRUTIzYld0MFRN?=
 =?utf-8?B?T214VUg2TGxacTd3SFdqNHdseGxudXU4Y3pURG9xT3RNbVNacml2U0JLRDR0?=
 =?utf-8?B?S0RqZDNOOE1aMEYweHplL0VHR2lPK3BCYWl0MnFrczdaNTNxL1NqSFluMWha?=
 =?utf-8?B?RGRjSmRVRW80Wmt0SFhhNnUySEZuSUNDZzl2a3pPU1ZvQXlpazRzRk5mc2Qw?=
 =?utf-8?B?aXhIQnFBc1VNNk1QemxaKzRNcFpzd0c0L3I1OVRVK3czeWtlQlh4ZlpUQ1FH?=
 =?utf-8?B?MGRoTDQxU3RIRWlRSWVBU2EwTmpKTUlTZi92U1Vxa3JZN1BNaHRJRmNjRURm?=
 =?utf-8?B?VmhqajJBYTZpaGR6NitDMzVEUDdSME0xQmpmcnBxT0wzaVVqbytJcUFpcDhN?=
 =?utf-8?B?T1lDTlFpaUpycTVEaWNQZmZkOWhyOFpHYXBrN3JtZFpsR1FMYWRadzNoR2M3?=
 =?utf-8?B?UHhBQ2JsWllzMmhTNTI1Ym5qcGs3eVRxMUxycjFDa0dkTUk5d3FrbkFSU2RU?=
 =?utf-8?B?dTVPZFA3N0RNL1JzQWwzSlpubDBCSW54QldkUDdUTHEvTzRjQWd5THk2blhV?=
 =?utf-8?B?K0NhN3dhNEdHSkEwNTR0QXNMQ1Jqc2psUDN1TjY2c3V2dlRkUDFwSS9TWlNF?=
 =?utf-8?B?RnNyeEtOYzFRRTVneFJEZWVKZnUvL0VEczhxMVN1UDEyWVQ3UmNaUXBaV2x2?=
 =?utf-8?B?NDRJaFlnM1BZczI5VGtJeVY0eWZKQi9YTnF5Nzc2MHpNQTVNOU1DczZORnRi?=
 =?utf-8?B?QzR3Sk92dktrZmVyOEhEem5nZklXaU9OTEJxZmNQVDk1ZjR0T0s1M1RKaVJJ?=
 =?utf-8?B?UUczVzBzdDh3bVFxa1p0d01kSmZBVkNqVHA1SmRWMUU0MlRoUkJQMVJFTHNY?=
 =?utf-8?B?aGFhNzE5Z3dVQzVQTG43c1Z0ZmN6UGtyWmxDSnhZWStKa2trV0VZQlJUOHRV?=
 =?utf-8?B?cHM5ZlBSaC9wak9hUVZJTXByZVoyM3E5VVZsS0I2RFVDc0JpOGxldG1jTTVG?=
 =?utf-8?B?UXBrbWd5ZmNRN3ZYa1ZLNUlsWmY2ZlJKUU5IdVhPTjVidFFPeXh5Z0swWGxL?=
 =?utf-8?B?WGNIMk4rb3ZjL245dmFNOGkrK1BWeXZSUEdqQm9qYjg1TzlyTnoxUzZxUWZa?=
 =?utf-8?B?VHQ0Y3MwbGh3TSsvVXFoR2RvcmQ3Tm1maVpKZE1WaUJOSlR3RVNjVThrb3dN?=
 =?utf-8?B?RHlLUXU0SUMzYUlpS0tTNmllTWYwZlJsYVZsVGlvazRsd3BYbDQrWmhBUUdD?=
 =?utf-8?B?RFg2Z1N6R25aektVYXhDUVJObkxsUHZ1UjFGOUlsOE1GSktFS3M0UXJ0ZDN1?=
 =?utf-8?B?aTRYUmZDV2NPK2cvcjN5OXFUeU0rUmZ0L0JJWGVkZVVnTUhCQTBtYklpZ3BM?=
 =?utf-8?B?OWEzQXZXeE1RVmMzaFE1c255RXZHOWRldm9YVXVRMUtkMDRZajVXNEI0cTlu?=
 =?utf-8?B?b1E2MG5QT1BFaUNUeHRSc1AxZC9sZDZJVzRsZlVsYkRmQmdSRk5TL1NsNHRP?=
 =?utf-8?B?ME5NbEx3SkFRTldKT1FkNjhLU3o3YXRmWmU4azhHbDExcXluNFpjMjJ2U24v?=
 =?utf-8?B?b3RHdzdLOEZLQW9ScUZJaUptbHZJRU9odGVsdEZjV1hrSTVoQVZrUXdlUjVj?=
 =?utf-8?B?OERWL3h5RnBWZEd3U3Y4a0F3OC8rZks4SDhvc0p0QnBuM3Fha21UUVFic0VO?=
 =?utf-8?B?ejhRSnFUWUpwUWdTUnlMMEN5TURScFNLZWNVaDg1cVlGeDRjRHRXZGhMdVZl?=
 =?utf-8?B?Q080RlY2SVFET2VjaWpUOFhuYUVFVEZUejNOYmJuZzE2YkF6bTN2SWdtdW9N?=
 =?utf-8?B?dmp1MWpCR3h0eGYzUVBBSWp6ZUJKeUtmb2lQMTdqUnNhS1cwbWs0STRJU1Qv?=
 =?utf-8?B?YnFDMmM3NXh0Mi9YQWYzU0tqS1UyTXRCVER6NEM1aENYZysxWm9kQThJTFA3?=
 =?utf-8?Q?icnoJ5jncjwKyORnHQHTiwlZC?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: d82928f8-1b3c-4228-9879-08dbd965cfd5
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Oct 2023 16:32:30.5969
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: KB+Amum7nYVBMtw1zstiRp6f38+d3OFWZitoGlymxlDt6lO3lHg1Hj+dmT+dmpaCzYb6amDjSGtLpXWJvuKRPQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB8458

On 30.10.2023 17:19, Roger Pau Monné wrote:
> On Mon, Oct 30, 2023 at 03:13:50PM +0100, Jan Beulich wrote:
>> On 24.10.2023 12:26, Roger Pau Monne wrote:
>>> The ACPI FADT APIC_CLUSTER flag mandates that when the interrupt delivery is
>>> Logical mode APIC must be configured for Cluster destination model.  However in
>>> apic_x2apic_probe() such flag is incorrectly used to gate whether Physical mode
>>> can be used.
>>>
>>> Since Xen when in x2APIC mode only uses Logical mode together with Cluster
>>> model completely remove checking for ACPI_FADT_APIC_CLUSTER, as Xen always
>>> fulfills the requirement signaled by the flag.
>>
>> Actually, one remark: The text in the 6.5 spec really only mentions xAPIC
>> mode, so it's not entirely clear whether the two flags actually have any
>> meaning for x2APIC mode.
> 
> Hm, indeed.  That wants to be in a different fix however.

If any at all - it wouldn't be the first time that when adding x2APIC, editing
certain places simply didn't happen. If anything needs changing here, of course
I agree that the further adjustment would want to be a separate change.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Oct 30 16:34:19 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 16:34:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625308.974490 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxVDW-0000zH-95; Mon, 30 Oct 2023 16:34:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625308.974490; Mon, 30 Oct 2023 16:34: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 1qxVDW-0000zA-6R; Mon, 30 Oct 2023 16:34:18 +0000
Received: by outflank-mailman (input) for mailman id 625308;
 Mon, 30 Oct 2023 16:34: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=aFdh=GM=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qxVDU-0000z2-OF
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 16:34:16 +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 2a749fa4-7742-11ee-98d6-6d05b1d4d9a1;
 Mon, 30 Oct 2023 17:34:15 +0100 (CET)
Received: by mail-lf1-x135.google.com with SMTP id
 2adb3069b0e04-5082a874098so4535167e87.3
 for <xen-devel@lists.xenproject.org>; Mon, 30 Oct 2023 09:34:15 -0700 (PDT)
Received: from [192.168.201.133] ([94.75.70.14])
 by smtp.gmail.com with ESMTPSA id
 ep13-20020a056512484d00b00502ae6b8ebcsm1494412lfb.304.2023.10.30.09.34.14
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 30 Oct 2023 09:34: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: 2a749fa4-7742-11ee-98d6-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698683655; x=1699288455; 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=GI8n9+UuQ5kno4Bg3saXjQ5HUWMHSj5s7RxPryZtNQM=;
        b=ZnXs8wMAUWwlHaYm4N74nmis+8I79eYJplomG9G0oZvBcKPb6VmWEgfOnaoWc0tFwG
         Ln1jg7FDhrazRFk6nlJ1CiKNBvudvdsEvrZcFk9j/y2JCUE0TtGM+GA9zO9deQjUF3AB
         yTt78r7BFF+wFdSGC5TJQHa2mXhAaq4/NfxNKlEDMljDKrEWsNyOCJ88fAXSwzMynuIL
         sJVgOJGhVbFtJN5DbK71xdNwCI0VYEXITYCU2Xlr4jGPnf9UnW8ELMbRFnSKeFqa15Px
         tEsC39dvxswS4UGI0IH9UZXxfKRsmc07U7QQ1Msq/RIKZlDmscpu5JGCcWKN26ja9Hao
         KelA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698683655; x=1699288455;
        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=GI8n9+UuQ5kno4Bg3saXjQ5HUWMHSj5s7RxPryZtNQM=;
        b=FSClwb4a7Afu9eMVw1b/Rzkb8mRJEJrJ9RplfEeNGuuA220ZimpY4iSEjNepanbPCb
         R7alKHmrD7/Na3dF7DZVnUTgiRczeEqyRfy+VPp/UtJZDmv66bZtU/oHnIM4WDBWbftk
         PmA6eLIMmG+t512E1D9cdajqgzfI7EM6W9KSk1wfsuvLHo9a2yWzAqNRToVnTQsd5BrB
         jd/VqkbFLYEzNuf7XPb9EHrX+YFtJSqEy/pOdMPe/iqMdGthJCkJmANGo62x8QoG08CZ
         DqpVBHbJeLfBYou53+MAdDZzyE3y5vnD5JRe94UQ5hDwAajdDD28+tJUwFT9EJ1aeNC2
         fCKA==
X-Gm-Message-State: AOJu0YxlYxVIxxRzcCqHbKLoXndugd8cB1YHmP8hqrpUAg4cbeZd/+sY
	hwYWFs8M+Jo2IWBH2R66A94=
X-Google-Smtp-Source: AGHT+IEnZGIXHJOAazhrdrDijJ4CvGNjyeADfIKNYO6ZZpuNU/6NEhTG2nNyAeIJzV9t+7uC9O1nMA==
X-Received: by 2002:ac2:5104:0:b0:507:a624:3f36 with SMTP id q4-20020ac25104000000b00507a6243f36mr7305541lfb.11.1698683655020;
        Mon, 30 Oct 2023 09:34:15 -0700 (PDT)
Message-ID: <d1e5d5fed5732274b2d4582b7aac4c3c2151d30a.camel@gmail.com>
Subject: Re: [PATCH v1 12/29] xen/asm-generic: introduce stub header pci.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, 30 Oct 2023 18:34:14 +0200
In-Reply-To: <d4dca6d7-ac54-beac-26fc-5eaf80783a73@suse.com>
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
	 <597a482c70fef196e245a5d898ea6314a0c479ca.1694702259.git.oleksii.kurochko@gmail.com>
	 <d4dca6d7-ac54-beac-26fc-5eaf80783a73@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

Hello Jan,

On Thu, 2023-10-19 at 11:55 +0200, Jan Beulich wrote:
> On 14.09.2023 16:56, Oleksii Kurochko wrote:
> > --- /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__ */
>=20
> While more involved, I still wonder whether xen/pci.h could also
> avoid
> including asm/pci.h when !HAS_PCI. Of course there's more than just
> the
> #include which then would need #ifdef-ing out.
>=20
> Jan

It looks like we can do that but only one question should be resolved.
In ARM case, in <asm/pci.h> there is !HAS_PCI branch:

#else   /*!CONFIG_HAS_PCI*/

struct arch_pci_dev { };

static always_inline bool is_pci_passthrough_enabled(void)
{
    return false;
}

struct pci_dev;

static inline void arch_pci_init_pdev(struct pci_dev *pdev) {}

static inline int pci_get_host_bridge_segment(const struct
dt_device_node *node,
                                              uint16_t *segment)
{
    ASSERT_UNREACHABLE();
    return -EINVAL;
}

static inline int pci_get_new_domain_nr(void)
{
    ASSERT_UNREACHABLE();
    return -1;
}

#endif  /*!CONFIG_HAS_PCI*/

And if is_pci_passthrough_enabled(), arch_pci_init_pdev() is used by
all architrectures but pci_get_host_bridge_segment() and
pci_get_new_domain_nr() is ARM specific.
Does it make sense to add them to <xen/pci.h> and ifdef them?

~ Oleksii



From xen-devel-bounces@lists.xenproject.org Mon Oct 30 16:34:53 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 16:34:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625310.974500 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxVE4-0001YA-JF; Mon, 30 Oct 2023 16:34:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625310.974500; Mon, 30 Oct 2023 16:34: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 1qxVE4-0001Y3-FP; Mon, 30 Oct 2023 16:34:52 +0000
Received: by outflank-mailman (input) for mailman id 625310;
 Mon, 30 Oct 2023 16:34: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=Hhfi=GM=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qxVE3-0001Tj-Ut
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 16:34:51 +0000
Received: from EUR03-AM7-obe.outbound.protection.outlook.com
 (mail-am7eur03on20603.outbound.protection.outlook.com
 [2a01:111:f400:7eaf::603])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 3ec2ce92-7742-11ee-9b0e-b553b5be7939;
 Mon, 30 Oct 2023 17:34:50 +0100 (CET)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM9PR04MB8193.eurprd04.prod.outlook.com (2603:10a6:20b:3ea::6)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.14; Mon, 30 Oct
 2023 16:34:47 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6954.016; Mon, 30 Oct 2023
 16:34: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: 3ec2ce92-7742-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ba24XC6svDCLnVWEJy08p/IC1xmgokJej8whPjuOb/XWJxJYX+QeEu/uGFsUVhFbEQNgUkazWyHEQ0pQYaT5DKM8oOybWiFE1iRtM5Z3KwOGavOX4kArAgIVZFcZFtoD5V5xLbNDOC4dosoA8AwklP4F43pMXcVGQR8UuuJ8dUp32x2+FfNTPw2xEV6iDK0cVYasuGV8Y1rFiWs7XocLDxbBsFCER//J/HrMfrPpW2k5NI/USTOnmBlrWfURn80SsspfINn2H/QK7c4WOGxXE/UXNzzPEi9Po88dA7Ek2opLJyL1xG/rsUAt6try+F3Zkp0TSOkBG/Q2G6kb7Ysp4g==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=sQg8h0NKIXYmbrbgWzJEBlL60OwNyl7e/y8fpoDn7f4=;
 b=n9MmZU7aeiu8Dob140SKUAOer8X3Ypy14qzg+h4vVip/raRH2Xk0oulvjTpn5FEfeHF4+lqkRDxB/PnF0TYqb6pSzEQa7mHwEd7aWXmopANH4ZS2f3B3DP1DHLfYuMG8qeXStTQew7OkmnBT7h+T8efI4aRrghLu7BaepdfMj6J1jUqI9RktnNUf9S6X+ZHb2nFlS8D/we9xjTJsrYw6yrEebeRwyVq+7uR84EX68ce42s6TSn0qmtR+/Hjufgik42gDwDmlogLN3k06jqawLl94ToL70T/yCGUp3HTFROBfJcV5szcIwmXq4AykvzvW9gxPOPzahI4tQ8yTS9gDjw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=sQg8h0NKIXYmbrbgWzJEBlL60OwNyl7e/y8fpoDn7f4=;
 b=3NDAjZ08WZbZi/DMHZVkEh4eihXHoqsiCkQ2Ddj+4Ftib/LHrnh4cuQosNIk5RDu2Nmpkt7C5dQ3mKOCXV3H/icGCQvi8EZNAr2S+3i0scb4jn8qojUSKxtfB0H5bpXtGbDaVlxCNbK9QfS16hO9S4mPgkRz1O8WD5jRAJMawnTa8UrETF9XNoz+dIbldXgMpzwjgKChejZcJE06vIGbvX1RDVYJc5Gt76J3qdT134hwHot9aM5MOKegl+1rrcCGvxF1QQIROqem4XXUZVkiWTgSLqlwrOeMRvNJA0ok5WmXy1/OFJmJTtC1ISoh8Vyx3ttm10F5rrQDFmQDpIiEsw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <db4eac3c-3ecf-d376-0a22-6cdcf6616f73@suse.com>
Date: Mon, 30 Oct 2023 17:34:48 +0100
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH] x86/x2apic: introduce a mixed physical/cluster mode
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: <20231024135150.49232-1-roger.pau@citrix.com>
 <6734e477-0aa5-c74c-4f64-02ca0415ae9e@suse.com> <ZT_VguxJLtOQeYK1@macbook>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <ZT_VguxJLtOQeYK1@macbook>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR3P281CA0185.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:a4::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_|AM9PR04MB8193:EE_
X-MS-Office365-Filtering-Correlation-Id: 888f2d7b-fe9e-4d85-803d-08dbd9662178
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	zIekqVYtGYZXvf2JZX0aML3EPIONgFDJC7NkEY8FLKIlXT25odGB+tPxPsQVB40EWAzIpdGduWWTvCThuGg1I+3BrVdA7jrZWqLpYfCxpaYwGBAk4Vqr2zNF9Q8gJkrtHub9jldqR+lbLmsP9DojmBtUmz11b/y8Xa/PY7WEESnNcFzsZerjOXdEO26h22n3iYQBaO9dSCiAIzfpiIfjuqiZpaNXhBh4KCCD1i4w/hYnVTHCvAsCd7QI5Wu/M4NIC9D+Q9yqkFWoFBxVh/kRrFN15IYOyRG5XwVxB6xanO07aYlsCUUcnxYYY+7pDDpvocwaURssBjMY+86SXMPUHftuoE6WG4p0+A8YPm0KCgXhKKfnS4ourXtzYpqgnEHsaeyr6EmYhJ28SJFB8cDgt/FakGcuneRD70D26jArmoBa+CgN/dKWUwqs5glqICkHHzNL4Wd8DNjRg8EBAeBwCBWT8JXonxXYOnsOuTI/OcddeB84aYAPhqSw36HDlGPFqjT3XsATiXMJwC1k/gqqTMQdWEswNojmx/lDJ44vnkE5TIr/lW7eqUE9ifwRmGJZFsKC3lFM+pCf+D7RWBoKx9EhnUb7I9qptNCWPgD1KMKDBgYIaMva5Dl4Cj2hHZHYuSWq7DElAWGIUrfLYoAsygbCQSG4uAxy0sQzojxQIcZTGCbeWW1IXjIzbsn3uZBH
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)(366004)(346002)(376002)(396003)(230273577357003)(230173577357003)(230922051799003)(451199024)(64100799003)(1800799009)(186009)(4326008)(8936002)(41300700001)(8676002)(2906002)(5660300002)(36756003)(53546011)(6506007)(6512007)(83380400001)(2616005)(38100700002)(66946007)(86362001)(31686004)(316002)(66556008)(26005)(31696002)(6486002)(6916009)(66476007)(54906003)(478600001)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?QUpYOEtFNWRCOE51bk9PUDFSd2MwOEYxaitGWC9DMG50NVRBNDBxMFZaYVRO?=
 =?utf-8?B?SGphSUMyMHhPaEtEMGhsMW9HMkNvUklIY1NSUmFPNFN2WkRpZUJCSWlBcnlW?=
 =?utf-8?B?QWxQaU9MMXljdFV0NlpvdFQ5L1ZNY2pWbVQweCsvaG5lUk5Mc091eHpEaHp5?=
 =?utf-8?B?b1lBNE9IQ1I1NHhqVkpZdmw2MmtHaGxTcFRDWDk2TCtKSkNCTXhxTk1BQmJy?=
 =?utf-8?B?ZXZNbXhGVFR2NCtkYUIrNDZNOFFweEhwdHV2UzM4R3RrN3BETS9UbERIaWdz?=
 =?utf-8?B?SDRJZmJwV2JzeUJjZTc4U08rVE1UMk1LK29uNSt6OGVaSStaNEkzSDE3dFRG?=
 =?utf-8?B?UUZ5aWZzMldNRkxMblJEcGVjVTNzSFljUU0waTF6YjBJL1V2U1dLc3Y0OVZv?=
 =?utf-8?B?cldSSis0R3ZTQnpVZGFaM2hFSnFKQVpqLzRHNGdCVzVOVjNqL2RqNkpYOFJC?=
 =?utf-8?B?TEtDeFJ6T0VqREtneUVlMFZWUWFIbGZRVGNwaTk1TGNrcmRHZzlub3pNelE4?=
 =?utf-8?B?T1A2S3I5ZVlnTzlQK0dnRXlzQ1B0ZU9BTHRFS05lQy9JS1BSUHdhUUlseTV1?=
 =?utf-8?B?bXVuN0RKcVpzRlZWaXU4dWhZZW9WR1FrRkd5dHFsR2xFV3dFNXhlS1oxT3NL?=
 =?utf-8?B?M3JHS1pTNXp5b1hIa3g4aFJIc0JoN1RxaUVVdkk1Y0JXNFJYNmg0Y1YyOGdB?=
 =?utf-8?B?STAxTDlZN2JhVjByaGZ6MzJWckpKU09ZZ2wrdW55ZlpoRXgzbDFIRzhzdC9Z?=
 =?utf-8?B?cFE1K0hDaDV6QWthbFZwUjl6ejFLQjJuTjNqdER6cnBvYzQxZzl6TWM3bnRr?=
 =?utf-8?B?TDVqc2FJM0x0emNpMGVibEVHdzRyVVhaMzRsY3dWVmJkZ2tSdDVFamZ5WEVh?=
 =?utf-8?B?MzVSUytyc0J6V3RWckpZcHFheXRNNTZrbXptQ2JUcGhBcTN4Q1ZyYzVpWnYz?=
 =?utf-8?B?T1g2aW1jdmM2MlV0VHdKNDlQV0RDU0trK1cvZVNzQjdXdlNkbzR3d1I5eEdN?=
 =?utf-8?B?YUlKVUMyNGc4UHp4eDNEYTR6N1RZNFZOSFd2OGdJRVV4ZXo3UkdaN3NHaE9o?=
 =?utf-8?B?YVVTSHQ3dlRUZUNIZXdUZ0c0VXh5RjYvRnNCSEZJWXBweDBSOXlaZ2YxZ0hI?=
 =?utf-8?B?dWs1c3hpTTBTY09HT3d1YmpEVTUva0Z5MnpsQk1hb1Z2OWZLSkpUdXdpelAy?=
 =?utf-8?B?U05EQjBVRzRwajBmWUZqeTAyZnNBVUNMRWZtNzRyU3BLU3FPZmRCaU9wMk5W?=
 =?utf-8?B?WVhwN0tER1NEdGxFRUloSk9sSWpCZit6UlovNkIzdktNTmRtcTM3dVhoR3Z0?=
 =?utf-8?B?TXhyRXV1Rll6ZXpTSjNxYWdoL2crYmJqU0tOd1ZiOFJxRFVtdjVvRlFKMGdE?=
 =?utf-8?B?UlRPRnVONXlLT0N2NGJ3azFXenJzU0hQK1FtNlRBV2FQMjVhdVU0RE5aT2FB?=
 =?utf-8?B?U0RwYWhGckp6eVlkQnpZZVhzc0lXNkQ1Y0dHVEF6T2VxYTA1aHFMZUtNMFlo?=
 =?utf-8?B?dFB6K0J0L0YrMG01eDAwMW1yQXFualh6OEd0dUcyZnhtTEQ1a1IzRnlSRE5E?=
 =?utf-8?B?VVN3TTNIcTF0cWllbE81dUl1bFI1NUtzUGpBdDI0V2I5Ni9pRTA4R3IwY2tU?=
 =?utf-8?B?Q2szT0xtWGhIcjVLU04zMVFaSTdWUVIyUVlIK2VnbmVRM2Jjemw4M09mM2xn?=
 =?utf-8?B?ckl2Q3pXN0poRW42TTJXTWZINUZkd3A4QkI0NXJNMms5WjVlcTc5eXpTanhG?=
 =?utf-8?B?N1VkeTMyaWNZb2R2NFVGK0U1OGdiLzVyakQwbnc5TC9vN0ZwMU5IRm1RNXdl?=
 =?utf-8?B?Vms0Ry9yWDBTbG1ob1ZBUllLbWtRVGo0aDY4a3pYdXdtRjlhbVExdnRybGQ1?=
 =?utf-8?B?RkhudFVFeXdmYXpYRWo3blFhL3JCdmg5NDJJam9PRTRtVy93SjIwZlBBbkFq?=
 =?utf-8?B?RUV4NS9xalFSdnhCTkE1VWlKVVVpMlZCTzNmdU5lYUY3QkxkTVpnaFpVQW1K?=
 =?utf-8?B?TU9kOGxSaVlCVndndjlPMEltUzdubkQwelYzSEFpM3I0SVBsUkZhQmFMaWQ2?=
 =?utf-8?B?UEtBQVBsUlEyckpQOTVYN0k5MjJZTXFLTWFCWEhaL1RkZ2lUd3FnbGovWXdk?=
 =?utf-8?Q?fSL3u9Jxf0FD8zXCLuVB6x+zx?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 888f2d7b-fe9e-4d85-803d-08dbd9662178
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Oct 2023 16:34:47.5561
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: B6B2SsMQy0BngnBIfHYvKOo+UQbtQa1TtQlBZiFtGqI3xiOh0ZqRUq8yPG9QZFvLkeAzXsBGfdSL6XHO+kSmgg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR04MB8193

On 30.10.2023 17:10, Roger Pau Monné wrote:
> On Mon, Oct 30, 2023 at 03:32:56PM +0100, Jan Beulich wrote:
>> On 24.10.2023 15:51, Roger Pau Monne wrote:
>>> The current implementation of x2APIC requires to either use Cluster Logical or
>>> Physical mode for all interrupts.  However the selection of Physical vs Logical
>>> is not done at APIC setup, an APIC can be addressed both in Physical or Logical
>>> destination modes concurrently.
>>>
>>> Introduce a new x2APIC mode called mixed, which uses Logical Cluster mode for
>>> IPIs, and Physical mode for external interrupts, thus attempting to use the
>>> best method for each interrupt type.
>>>
>>> Using Physical mode for external interrupts allows more vectors to be used, and
>>> interrupt balancing to be more accurate.
>>>
>>> Using Logical Cluster mode for IPIs allows less accesses to the ICR register
>>> when sending those, as multiple CPUs can be targeted with a single ICR register
>>> write.
>>>
>>> A simple test calling flush_tlb_all() 10000 times in a tight loop on a 96 CPU
>>> box gives the following average figures:
>>>
>>> Physical mode: 26617931ns
>>> Mixed mode:    23865337ns
>>>
>>> So ~10% improvement versus plain Physical mode.
>>
>> Nice.
>>
>>>  Note that Xen uses Cluster
>>> mode by default, and hence is already using the fastest way for IPI delivery at
>>> the cost of reducing the amount of vectors available system-wide.
>>>
>>> Make the newly introduced mode the default one.
>>>
>>> Suggested-by: Andrew Cooper <andrew.cooper3@citrix.com>
>>> Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
>>> ---
>>> Do we want to keep a full Logical Cluster mode available?  I don't see a reason
>>> to target external interrupts in Logical Cluster mode, but maybe there's
>>> something I'm missing.
>>>
>>> It's not clear to me whether the ACPI FADT flags are meant to apply only to
>>> external interrupt delivery mode, or also to IPI delivery.  If
>>> ACPI_FADT_APIC_PHYSICAL is only meant to apply to external interrupts and not
>>> IPIs then we could possibly get rid of physical mode IPI delivery.
>>>
>>> Still need to put this under XenServer extensive testing, but wanted to get
>>> some feedback before in case approach greatly changes.
>>
>> Looks quite okay, just a couple of minor remarks:
> 
> Thanks.
> 
> Do we still want to keep the pure cluster mode?

I think we should keep it for a full release cycle or two.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Oct 30 16:37:40 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 16:37:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625318.974510 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxVGh-0002lM-VV; Mon, 30 Oct 2023 16:37:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625318.974510; Mon, 30 Oct 2023 16:37: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 1qxVGh-0002lF-Sa; Mon, 30 Oct 2023 16:37:35 +0000
Received: by outflank-mailman (input) for mailman id 625318;
 Mon, 30 Oct 2023 16:37: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=3VkP=GM=cloud.com=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qxVGh-0002l9-6y
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 16:37:35 +0000
Received: from mail-ej1-x634.google.com (mail-ej1-x634.google.com
 [2a00:1450:4864:20::634])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 9fea0c78-7742-11ee-9b0e-b553b5be7939;
 Mon, 30 Oct 2023 17:37:33 +0100 (CET)
Received: by mail-ej1-x634.google.com with SMTP id
 a640c23a62f3a-9d2c54482fbso261529366b.2
 for <xen-devel@lists.xenproject.org>; Mon, 30 Oct 2023 09:37:33 -0700 (PDT)
Received: from localhost ([213.195.118.109]) by smtp.gmail.com with ESMTPSA id
 r23-20020a170906365700b009aa292a2df2sm6246691ejb.217.2023.10.30.09.37.32
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 30 Oct 2023 09:37: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: 9fea0c78-7742-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1698683852; x=1699288652; 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=tlNly9ZP+NGfbt2hySpMNPj3rxIySBkhl8v30f0zE90=;
        b=i3EcO5oBib/nRfVusbqlX0RYiTKhbmBwwhtTyq7gRvBhAlaIHFn/qwfTBq2Woi3CTi
         jWcn91swpzTPhjtqK+5A5kncog2jCer51oF4cvpsoZTqGjwvhkbshfty7m8iMhCGxIuy
         yVPLNHmeOxZo+CayqYr/oKCTiPvHuVlfp6kow=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698683852; x=1699288652;
        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=tlNly9ZP+NGfbt2hySpMNPj3rxIySBkhl8v30f0zE90=;
        b=J7mwi4F9LAJ2dy12NHow0tn17/lpm1gHPrVfawRU+so45nSfGuEPzsDrmaDPm8CQW1
         7SvjEaQH6NJhxOdnWmYUHJfkA2T6nqMQDbwEwFSHulSFLTkySYJ6n9hAnvzAawsyg8Od
         aeoE3qm5XSH3y34iY4WnLBlqT2D0x7KHhsOCi+niXb0s+VqBt3//bTWfh+PeaoEFNCCt
         MbRn+0DlNx+9QlKCeiVViS6XjqYGoaQ0trgG1LEfWct5CJ2qUGQZrYSuD4ZjK3vxcmOt
         0k9nwzQoriLlY0fjSCg+RgxMoTJNk6zv1jopxqSRzDQ3YF2Co2f9qHqjqpwdl5UScvQA
         g3ig==
X-Gm-Message-State: AOJu0Yy/JMXRDA9LChqu5xvvMtQ4fZNzaZqV/DdeoAOYzMtp41QcYxvR
	GM66rd4zOIxJnp9suVYjzp/3Og==
X-Google-Smtp-Source: AGHT+IHDQC6PJXSU78oJOHaFHgG9+nm8R7d5VWS0uk7xK9HphBw0eJK8IHUJ7MDD8jD/fh5jf8oS0w==
X-Received: by 2002:a17:907:7ba0:b0:9af:9c4f:b579 with SMTP id ne32-20020a1709077ba000b009af9c4fb579mr10822975ejc.18.1698683852612;
        Mon, 30 Oct 2023 09:37:32 -0700 (PDT)
Date: Mon, 30 Oct 2023 17:37:31 +0100
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Xenia Ragiadakou <xenia.ragiadakou@amd.com>
Cc: xen-devel@lists.xenproject.org, Jan Beulich <jbeulich@suse.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>
Subject: Re: [PATCH v2] x86/hvm/dom0: fix PVH initrd and metadata placement
Message-ID: <ZT_by3lesO5TWdy_@macbook>
References: <20231030133240.116758-1-xenia.ragiadakou@amd.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <20231030133240.116758-1-xenia.ragiadakou@amd.com>

On Mon, Oct 30, 2023 at 03:32:40PM +0200, Xenia Ragiadakou wrote:
> Given that start < kernel_end and end > kernel_start, the logic that
> determines the best placement for dom0 initrd and metadata, does not
> take into account the three cases below:
> (1) start > kernel_start && end > kernel_end
> (2) start < kernel_start && end < kernel_end
> (3) start > kernel_start && end < kernel_end
> 
> In case (1), the evaluation will result in end = kernel_start,
> i.e. end < start, and will load initrd in the middle of the kernel.
> In case (2), the evaluation will result in start = kernel_end,
> i.e. end < start, and will load initrd at kernel_end, that is out
> of the memory region under evaluation.
> In case (3), the evaluation will result in either end = kernel_start
> or start = kernel_end but in both cases will be end < start, and
> will either load initrd in the middle of the image, or arbitrarily
> at kernel_end.
> 
> This patch reorganizes the conditionals to include so far unconsidered
> cases as well, uniformly returning the lowest available address.

It would be good to mention that this was discovered because Zephyr
has multiple loaded segments in non-contiguous ranges, so that we know
what triggered the change and how we could test further improvements
(like the usage of a rangeset).

> 
> Fixes: 73b47eea2104 ('x86/dom0: improve PVH initrd and metadata placement')
> Signed-off-by: Xenia Ragiadakou <xenia.ragiadakou@amd.com>
> Signed-off-by: Jan Beulich <jbeulich@suse.com>

Reviewed-by: Roger Pau Monné <roger.pau@citrix.com>

With the commit message adjusted preferably.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Mon Oct 30 16:38:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 16:38:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625320.974520 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxVHJ-0003Hr-6f; Mon, 30 Oct 2023 16:38:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625320.974520; Mon, 30 Oct 2023 16: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 1qxVHJ-0003Hk-3j; Mon, 30 Oct 2023 16:38:13 +0000
Received: by outflank-mailman (input) for mailman id 625320;
 Mon, 30 Oct 2023 16:38: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=3VkP=GM=cloud.com=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qxVHH-0002l9-LL
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 16:38:11 +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 b5de12e3-7742-11ee-9b0e-b553b5be7939;
 Mon, 30 Oct 2023 17:38:09 +0100 (CET)
Received: by mail-ed1-x529.google.com with SMTP id
 4fb4d7f45d1cf-53de8fc1ad8so7593693a12.0
 for <xen-devel@lists.xenproject.org>; Mon, 30 Oct 2023 09:38:09 -0700 (PDT)
Received: from localhost ([213.195.118.109]) by smtp.gmail.com with ESMTPSA id
 f26-20020aa7d85a000000b0053e3d8f1d9fsm6263960eds.67.2023.10.30.09.38.09
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 30 Oct 2023 09:38: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: b5de12e3-7742-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1698683889; x=1699288689; 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=GAtWOQuGuBciqx4zP+O4k/vnaYzXMJngCsGOR6ayFhE=;
        b=EGxrAQAETufQd+V37qbzJvfCCbNTfpqcRDbLjM+wV3mRBbCSaxafwGy4kprekn1Sp2
         a/z6o7hYlLScv3VCXx+2wpi3Af3cGUR0K5l85bwgRjvawAFsegALKRvfEipImrTLmROj
         2Sclw0j/Oq3q/nPUHKO6I8dSfqIFcoXwl+PEw=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698683889; x=1699288689;
        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=GAtWOQuGuBciqx4zP+O4k/vnaYzXMJngCsGOR6ayFhE=;
        b=wC1/X+byrcIUY2Qre990T94gVDVK75MzitpriwkSI0BotG68seyIrp/9NpX760ySoM
         SHVCC2tBk+zj3defxLl3DlS+Za5qLsbfWu46upNkDCLVHzqyA5Gy8U/aAi21LllP1BbT
         R0uPCCR66Z6VFD94j4pD8UDRnVNCvCjcy6mZrX7f1X/hl2PhWoJbmI6hA8IEXxvV70hw
         1yBLjPbofz+hcIqRFE70M57NQWm/wv7mnF7n+DDpqv3ONSFdIr47K/sgH7+xMij5NRfH
         HGZ3/juO2TXbWkNwaQnl63JhuXamOTDEpWVOpt0XjVNLULvFV8t3kUIQ9IR8yJRMidiQ
         TfUA==
X-Gm-Message-State: AOJu0Yxx4zegUYkFzc9T3D40KxnasLOIVr7hcEybrs0q0nK0lzHdFA4H
	sxPeSSdUMA+5KfJez2UabOFhEA==
X-Google-Smtp-Source: AGHT+IFtVR07qq7+4xAQ2nAHMyO8TrEGfDIGvlruH4f0frpQpGmz64WTa6FrdQICYILM47+uu56DOg==
X-Received: by 2002:aa7:d351:0:b0:53e:467c:33f1 with SMTP id m17-20020aa7d351000000b0053e467c33f1mr9334254edr.8.1698683889559;
        Mon, 30 Oct 2023 09:38:09 -0700 (PDT)
Date: Mon, 30 Oct 2023 17:38:08 +0100
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] x86/x2apic: introduce a mixed physical/cluster mode
Message-ID: <ZT_b8BZH4AVOM3JG@macbook>
References: <20231024135150.49232-1-roger.pau@citrix.com>
 <6734e477-0aa5-c74c-4f64-02ca0415ae9e@suse.com>
 <ZT_VguxJLtOQeYK1@macbook>
 <db4eac3c-3ecf-d376-0a22-6cdcf6616f73@suse.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <db4eac3c-3ecf-d376-0a22-6cdcf6616f73@suse.com>

On Mon, Oct 30, 2023 at 05:34:48PM +0100, Jan Beulich wrote:
> On 30.10.2023 17:10, Roger Pau Monné wrote:
> > On Mon, Oct 30, 2023 at 03:32:56PM +0100, Jan Beulich wrote:
> >> On 24.10.2023 15:51, Roger Pau Monne wrote:
> >>> The current implementation of x2APIC requires to either use Cluster Logical or
> >>> Physical mode for all interrupts.  However the selection of Physical vs Logical
> >>> is not done at APIC setup, an APIC can be addressed both in Physical or Logical
> >>> destination modes concurrently.
> >>>
> >>> Introduce a new x2APIC mode called mixed, which uses Logical Cluster mode for
> >>> IPIs, and Physical mode for external interrupts, thus attempting to use the
> >>> best method for each interrupt type.
> >>>
> >>> Using Physical mode for external interrupts allows more vectors to be used, and
> >>> interrupt balancing to be more accurate.
> >>>
> >>> Using Logical Cluster mode for IPIs allows less accesses to the ICR register
> >>> when sending those, as multiple CPUs can be targeted with a single ICR register
> >>> write.
> >>>
> >>> A simple test calling flush_tlb_all() 10000 times in a tight loop on a 96 CPU
> >>> box gives the following average figures:
> >>>
> >>> Physical mode: 26617931ns
> >>> Mixed mode:    23865337ns
> >>>
> >>> So ~10% improvement versus plain Physical mode.
> >>
> >> Nice.
> >>
> >>>  Note that Xen uses Cluster
> >>> mode by default, and hence is already using the fastest way for IPI delivery at
> >>> the cost of reducing the amount of vectors available system-wide.
> >>>
> >>> Make the newly introduced mode the default one.
> >>>
> >>> Suggested-by: Andrew Cooper <andrew.cooper3@citrix.com>
> >>> Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
> >>> ---
> >>> Do we want to keep a full Logical Cluster mode available?  I don't see a reason
> >>> to target external interrupts in Logical Cluster mode, but maybe there's
> >>> something I'm missing.
> >>>
> >>> It's not clear to me whether the ACPI FADT flags are meant to apply only to
> >>> external interrupt delivery mode, or also to IPI delivery.  If
> >>> ACPI_FADT_APIC_PHYSICAL is only meant to apply to external interrupts and not
> >>> IPIs then we could possibly get rid of physical mode IPI delivery.
> >>>
> >>> Still need to put this under XenServer extensive testing, but wanted to get
> >>> some feedback before in case approach greatly changes.
> >>
> >> Looks quite okay, just a couple of minor remarks:
> > 
> > Thanks.
> > 
> > Do we still want to keep the pure cluster mode?
> 
> I think we should keep it for a full release cycle or two.

OK, will make the requested changes and send v2 then.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Mon Oct 30 16:38:53 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 16:38:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625324.974529 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxVHv-00040R-HM; Mon, 30 Oct 2023 16:38:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625324.974529; Mon, 30 Oct 2023 16: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 1qxVHv-00040K-Ei; Mon, 30 Oct 2023 16:38:51 +0000
Received: by outflank-mailman (input) for mailman id 625324;
 Mon, 30 Oct 2023 16:38: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=PZGw=GM=invisiblethingslab.com=marmarek@srs-se1.protection.inumbo.net>)
 id 1qxVHt-00040A-Uz
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 16:38:49 +0000
Received: from out3-smtp.messagingengine.com (out3-smtp.messagingengine.com
 [66.111.4.27]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id cb2619c5-7742-11ee-98d6-6d05b1d4d9a1;
 Mon, 30 Oct 2023 17:38:48 +0100 (CET)
Received: from compute2.internal (compute2.nyi.internal [10.202.2.46])
 by mailout.nyi.internal (Postfix) with ESMTP id EC4A65C022C;
 Mon, 30 Oct 2023 12:38:44 -0400 (EDT)
Received: from mailfrontend2 ([10.202.2.163])
 by compute2.internal (MEProxy); Mon, 30 Oct 2023 12:38:44 -0400
Received: by mail.messagingengine.com (Postfix) with ESMTPA; Mon,
 30 Oct 2023 12:38:43 -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: cb2619c5-7742-11ee-98d6-6d05b1d4d9a1
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=fm3; t=
	1698683924; x=1698770324; bh=H3FMm/KCOvYupYm8lx7+FY9QkhQ2/K9SJCK
	V5VPpvSE=; b=CTiqYtHl00tCgERkKdZHfKZlS3dbXPQtBs/yP4mmxebTSEjRo+I
	WXNjhmQyf+gc4S7/f7cydfVcb8+HbJQgk7thZS4Bu+Xxhr9bt3A7TolkS8BzsUV7
	thMxSMFNROrPylVw72Y/Dn85kOkcQjG6G6gZ2NidKQrrlq+aXUqHQcx48ZTTyf9d
	Lp1EK6J8gKADTVWxzMD+VSg7iVDhRlpsr1wZmYX2eybOXFp1aDpxy7lKo7I27RUN
	27Gd2ZOgI6XvMrkbwtWaY70MsjVCcakuZhPerBjOEHT99uUYF6p8I59ExPDrsAJ2
	hO1RcOxwGx3/Fk8cpH/bAuICVqTZLktROhA==
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=fm3; t=1698683924; x=1698770324; bh=H3FMm/KCOvYup
	Ym8lx7+FY9QkhQ2/K9SJCKV5VPpvSE=; b=fRsIR26mJT/vGYovfsdFBVU4A+cDp
	djp+Wq2JaIxZhL9fRwcvf3MOjmFuncjR4PHvrsdiyloHfaSxND2gVCHfOF2RPVaf
	+74UW3USNehJ7l4a7VC0WEyoFDwAwjJxat6JCBWfsDp2bSTRyw7LYDfqo5s7IRmb
	PazezrbNPKAiIkyTOC4TuP8/DWkIQbR/x2JOb/bV+0BE9gwX9ReuV4AWCuViSB1A
	7dlCMaahKTnFD0VIsatUGHZ0KQ+0d00s8nnaG/orJc75qRm61BFsCwtIXr+w2dme
	QJoVCTILI0oASgh/H29QwbCVsVxZLAf7RVqnaX/heDpX2kqgR+qaKZRnw==
X-ME-Sender: <xms:FNw_ZUKhBTtsfVI7v6G75EwLSZkX9nMBRIzBkGE-UdECbh_ZDd70nQ>
    <xme:FNw_ZUIRFV1z7HJcjgGXjFuL4uecRWO5PkHjeIp90zyvP45p5wBRfkI5jowAOPh1W
    ht21Qfkk08ufQ>
X-ME-Received: <xmr:FNw_ZUv9sas5Aj-Xp4WldJSYOAU9XDKdre81wNGph20mKb92YU8umyTR3etEdtwXJhqShYWKky2lSn22Ng3Gd2eqlTbVCeeYLLw>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvkedruddttddgkeelucetufdoteggodetrfdotf
    fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen
    uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne
    cujfgurhepfffhvfevuffkfhggtggujgesghdtreertddtjeenucfhrhhomhepofgrrhgv
    khcuofgrrhgtiiihkhhofihskhhiqdfikphrvggtkhhiuceomhgrrhhmrghrvghksehinh
    hvihhsihgslhgvthhhihhnghhslhgrsgdrtghomheqnecuggftrfgrthhtvghrnhepgfdu
    leetfeevhfefheeiteeliefhjefhleduveetteekveettddvgeeuteefjedunecuvehluh
    hsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomhepmhgrrhhmrghrvghk
    sehinhhvihhsihgslhgvthhhihhnghhslhgrsgdrtghomh
X-ME-Proxy: <xmx:FNw_ZRanYdTCkAacV-qGlBbBqt0svYLRY57IKds9YWYHODbRbZvvlw>
    <xmx:FNw_ZbasPYJQYbFa2bBjLXU4EgtSkUU1oiDlpfJbz0D8elOq8w2noA>
    <xmx:FNw_ZdCpHGq-e4TJAmAjjciBhVhatf6GIU79R2mRaQe4PT5F1y-TBA>
    <xmx:FNw_ZSw_4vKwn-MP8TiJPHQt6X_B58-9pJoFXCWHW99rMSJHNKTZmg>
Feedback-ID: i1568416f:Fastmail
Date: Mon, 30 Oct 2023 17:38:41 +0100
From: Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>
To: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
Cc: xen-devel@lists.xenproject.org, Doug Goldstein <cardoe@cardoe.com>,
	Stefano Stabellini <sstabellini@kernel.org>
Subject: Re: [PATCH] automation: fix race condition in adl-suspend test
Message-ID: <ZT/cEqEUlBoyvyr0@mail-itl>
References: <20231028033404.262729-1-marmarek@invisiblethingslab.com>
 <ZT-WvAye6OlWGLAx@macbook>
 <ZT/aiFnjW4dOIaiw@mail-itl>
MIME-Version: 1.0
Content-Type: multipart/signed; micalg=pgp-sha256;
	protocol="application/pgp-signature"; boundary="paK9yxII+R3FdtFG"
Content-Disposition: inline
In-Reply-To: <ZT/aiFnjW4dOIaiw@mail-itl>


--paK9yxII+R3FdtFG
Content-Type: text/plain; protected-headers=v1; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable
Date: Mon, 30 Oct 2023 17:38:41 +0100
From: Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>
To: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
Cc: xen-devel@lists.xenproject.org, Doug Goldstein <cardoe@cardoe.com>,
	Stefano Stabellini <sstabellini@kernel.org>
Subject: Re: [PATCH] automation: fix race condition in adl-suspend test

On Mon, Oct 30, 2023 at 05:32:08PM +0100, Marek Marczykowski-G=C3=B3recki w=
rote:
> On Mon, Oct 30, 2023 at 12:42:52PM +0100, Roger Pau Monn=C3=A9 wrote:
> > On Sat, Oct 28, 2023 at 05:33:57AM +0200, Marek Marczykowski-G=C3=B3rec=
ki wrote:
> > > If system suspends too quickly, the message for the test controller to
> > > wake up the system may be not sent to the console before suspending.
> > > This will cause the test to timeout.
> > >=20
> > > Fix this by waiting a bit after printing the message. The test
> > > controller then resumes the system 30s after the message, so as long =
as
> > > the delay + suspending takes less time it is okay.
> > >=20
> > > Signed-off-by: Marek Marczykowski-G=C3=B3recki <marmarek@invisiblethi=
ngslab.com>
> > > ---
> > > This is consistent with the observation that sync_console "fixes" the
> > > issue.
> > > ---
> > >  automation/scripts/qubes-x86-64.sh | 4 ++--
> > >  1 file changed, 2 insertions(+), 2 deletions(-)
> > >=20
> > > diff --git a/automation/scripts/qubes-x86-64.sh b/automation/scripts/=
qubes-x86-64.sh
> > > index 26131b082671..a34db96e4585 100755
> > > --- a/automation/scripts/qubes-x86-64.sh
> > > +++ b/automation/scripts/qubes-x86-64.sh
> > > @@ -54,11 +54,11 @@ until grep 'domU started' /var/log/xen/console/gu=
est-domU.log; do
> > >      sleep 1
> > >  done
> > >  echo \"${wait_and_wakeup}\"
> > > +# let the above message flow to console, then suspend
> > > +sleep 5
> >=20
> > Could you use `sync /dev/stdout`?  I guess that might not be enough,
> > since the sync won't be propagated to the hypervisor, and hence even
> > if flushed from Linux, we have no guarantee that the hypervisor has
> > also flushed it.
>=20
> It seems `sync /dev/stdout` helps too, at least in a limited sample of
> two.

=2E.. and the third attempt (with sync instead of sleep) failed.

> > Xen should flush the buffer when a newline character is found, but I
> > have no idea whether context could return to guest while the buffer is
> > still in the process of being fully flushed.
>=20
> IIC Xen should flush the console buffer on the suspend path (there is
> console_start_sync() in enter_state()). So, if linux manages to send it
> to Xen in time, all should be good (in theory at least).
>=20
> > Anyway, adding the extra sync might be good regardless, and keeping
> > the sleep.
>=20
> Good idea, I'll send v2 with it included.


--=20
Best Regards,
Marek Marczykowski-G=C3=B3recki
Invisible Things Lab

--paK9yxII+R3FdtFG
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQEzBAEBCAAdFiEEhrpukzGPukRmQqkK24/THMrX1ywFAmU/3BIACgkQ24/THMrX
1yxrDwf/UzxTdP8sfURuvoBtUSKDzS5kWeowPDyaxhZcyqa8LthzBme/GiY7vUil
WOG2mtDAJSoDG3HleBdPpiPwtxPg8+NK0c+iLmLb15ulRkybYl0DlqpfCnXebtAm
OqJA+Fxbsmw7vo+v+sNgGUOlZFrCAFraBlD+nkQliuN50sGJ0NRB7WRqR1aNSYXl
SqifHkeUTYfh2aKpBxwph6goSESfmNzjGc7o0DmLv4IeLetBvlULT/zAPXcLFzsp
QWzwVu9EGQrnkyOcKzIOk2XXxHUU9qq5s+zfuHxosiiHQgHnfjGLR+k9t4qyNk2y
jfyCNQlvnAHsDHyixlzUi3XuPzsvOw==
=eFxg
-----END PGP SIGNATURE-----

--paK9yxII+R3FdtFG--


From xen-devel-bounces@lists.xenproject.org Mon Oct 30 16:43:41 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 16:43:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625332.974539 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxVMR-0005zr-2E; Mon, 30 Oct 2023 16:43:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625332.974539; Mon, 30 Oct 2023 16:43: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 1qxVMQ-0005zk-Vu; Mon, 30 Oct 2023 16:43:30 +0000
Received: by outflank-mailman (input) for mailman id 625332;
 Mon, 30 Oct 2023 16: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=Hhfi=GM=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qxVMP-0005ze-0J
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 16:43:29 +0000
Received: from EUR02-DB5-obe.outbound.protection.outlook.com
 (mail-db5eur02on20601.outbound.protection.outlook.com
 [2a01:111:f400:fe12::601])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 7331ecbc-7743-11ee-98d6-6d05b1d4d9a1;
 Mon, 30 Oct 2023 17:43:27 +0100 (CET)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM9PR04MB8453.eurprd04.prod.outlook.com (2603:10a6:20b:410::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6954.15; Mon, 30 Oct
 2023 16:43:25 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6954.016; Mon, 30 Oct 2023
 16:43: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: 7331ecbc-7743-11ee-98d6-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=bOvx6lieOsII1T9lPP7lo6zn6C4WwSR4T7idp/r0OdytCFC58nBlKmV7klYGlwc2RX6CgGO2iRy+lSFp2SVa+NsJ/MJlIytahiQSAZBeK4dtsuNXl3c40bhh0J46BklZRKEY/gJbAvj+UWyhDPEcElQzsxoK1PND9+mbD4BQtIKhZ+DBmMA603mBbyPjsho9XxEl26hYKGt5LKSbs47KyM76V1ot0l+fpT7CgjuGWMQkkV4CrDso4m/CqhUMC+7z6+icmEYoTJeLLAQ8APp7LLltrl52V6K9zgFEXCN3nICgZ9zBKcxB2//AQe8mJPUdT1clhEmxzR2YX6U4GxOYWw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=RdCj2um+EEp7a3DsFWKtm4OIAliSxHWpJd/XJ48iS/0=;
 b=eoycnbHXbq7nCFYleGJV/+hvDpNr8eJeteWwzxtu22yZVeV8RI89z65yuW+8elVTH21em2hXToTPC76GTMBO9Qy8KwOSRwem9yf88/reru3wpcbPMX/LO8FLXdATnaf0dAw4uNWdCM0qyFL0SefEcJUr2wAVrufl+Sk7Pp4/CkGAXYj3o4CG7AFQJfEdPZF2tiWmwAMw+ecei15bPPy8SA5BOUkUiP4AbFRHmbM/Hryb9d5014TkezEb2JadqitsNYbpmEXsEzPov/UlIJstzLcKMFTe5XhOY5xgVlFECIGutlopwEFohHK+qVvML0Vb/SIsgBhquqpsgGN42Xs8kg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=RdCj2um+EEp7a3DsFWKtm4OIAliSxHWpJd/XJ48iS/0=;
 b=0KwcZGSVn93aexob5jK1J8QPjTGeVZ4KYv8UXP4cUE7ipY9dcMCJcTKsMTyz/f7TeWAXatLqaTkgr+p30It4TeoVmBv5N4yujIrq9ffwohEDKncKxWgkun9cGr2E4p8yZLDjA+KyqEbz10VThMW+LdFpbfU+o8LKr4aA3qnU5HNBAB6e47dOb7jMqyJkSRTQCPHtAX279cOFykSmsi4IjjflGp+uYo4Wn5KUheFAv2aRVYoGBO5BdLTdbJtAKlIuJI8XlFX+wO9SWapG8PBIWa6oSeE1lg1VTBg08pwaanUNJqNx1wDyGbb/zCdKvXxAPl2CcLQlfZNcahgibPc3CQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <a826292a-44de-c149-0831-01578d9b38c3@suse.com>
Date: Mon, 30 Oct 2023 17:43:26 +0100
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH v1 12/29] xen/asm-generic: introduce stub header pci.h
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>,
 xen-devel@lists.xenproject.org
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
 <597a482c70fef196e245a5d898ea6314a0c479ca.1694702259.git.oleksii.kurochko@gmail.com>
 <d4dca6d7-ac54-beac-26fc-5eaf80783a73@suse.com>
 <d1e5d5fed5732274b2d4582b7aac4c3c2151d30a.camel@gmail.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <d1e5d5fed5732274b2d4582b7aac4c3c2151d30a.camel@gmail.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
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_|AM9PR04MB8453:EE_
X-MS-Office365-Filtering-Correlation-Id: 900a47dd-a0f4-4c95-edc8-08dbd96755e3
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	BdAdruuuKx9vIrRso0lWKaCtD9DdcvVDWiV/fRRdidsItyVvpIdKOCk20IFl1naL8XqF70FzpO51M9NmOiMx8xcVKken4d/fRd7lnI15wUjEaJLDBqtRn8QjgAiaDYxBecphUqm9rgCmsE9Sx3gmRcJvVk3RE6MqJfFgNR0XayG8UBWW6/8FnNU/LCeUw3F1ZIznHLBGtnpDcDtjp1/0r6RjHMvMpH28GEUu1/hkI3qrVfaj20tvnxZpp+Te39pe1WhtwNcn4xMl1pdZcyHCx3fPUAO8NitLO65KDuByXdOp0EC7KLqqIl6olmEBZeF6FlFt0KWqzBivgOvXjOML5Fdtt/1wJSqQWftHeJePK0e9EMe2xKYFOtTjvFvPdNKMwAThFerrP8Gqq01wbdOXeJezXkg+mpPccRBkL1HZMl4fl30HirC4HuI/UbGrIrgNkNMI0n5GTH+G77nNTJm0jZndxg/pTkl/wkib9nSjXajPFtMfFxw0g3TuwDXHJj2BKEx5LE5fEJCQR2ddMH6LerK9bYZGkyTZTlBlQt6Cw0tweeeAR49nklQO+wh0bBelIQmOc1sVD6XxIBkIy1W12R1Ew7DepBWFyy/caDyvMdqVoGZwDbu/dcn4onaiCFnh8Sz1QhdF7d9RH4Tp4nuIY02WJJdmaMAzUAzuSBD2XJQ=
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)(39860400002)(366004)(346002)(376002)(230922051799003)(1800799009)(186009)(64100799003)(451199024)(2906002)(4001150100001)(316002)(66556008)(66476007)(54906003)(6916009)(38100700002)(478600001)(53546011)(6486002)(6506007)(66946007)(5660300002)(6512007)(2616005)(26005)(41300700001)(4326008)(86362001)(8936002)(8676002)(31696002)(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?MHd5UXhZTlZGdXRwSGxtVmg3Nko2SU5tTlpVUzJjc0JWYlJ0V0hKK0kwZk0y?=
 =?utf-8?B?eEw1Y3pzamhERmFqa25PdGdkQUgxbWpjNmtjOG8xcnZHQU16bzBDMXU3cTJo?=
 =?utf-8?B?MmdvUUZBRUFEcHJhNGp2NVZaZ0dDbW5iajg2RE9LSlU4bWFTYlp5V0FBdVN1?=
 =?utf-8?B?Z2w5UWQySDR4RWVud3VjZ0NtakU5Y1lUbFRFbVk1cUxUdldQR0U3MHF2TTBO?=
 =?utf-8?B?S0E5R3kzdFlyL1N4Q2VtenMwanpCek1Pb0Z5ZFYrRDZMaFBLbVFBMC9ybDJK?=
 =?utf-8?B?OWdKUHJObHdFUkk4NnVUOXdWODZ2bFpSallKY2Z5a3lFUExuZU5BZWpCRnZo?=
 =?utf-8?B?bDZSMUJCVFpXdzUrMmpBMlBScGViSDdaMU5QMDBtR3dBS2VFRmZFYnVWWnBq?=
 =?utf-8?B?Z3NwRUpzNnZWOEQ0SXBHZUxSS3VsR0pLa1pLbVhudWdTU05oaExoMjF3SkJI?=
 =?utf-8?B?RmNTcVlmQjhqdS9VS1RqWGExbGVOUExCMjMveUNvZnpicis0UVRpQ1JxMDVP?=
 =?utf-8?B?Qkcreno5NzgybmFrb1ZHcUVNdzNtYnVGdjFlRzRkU0RHRG44T3ZhMDlhTXhJ?=
 =?utf-8?B?bXRKMzhPYkp1dW04dmpqWVdERGU0OEtxZWdYc3p0L2EyRGYyM05VTDlhTHpN?=
 =?utf-8?B?cXFBdFpSeTQxQitKNEZ0WGFxME9yYWJBOFlPZ1Uzc21uZjZmY3VYaDlWZ1py?=
 =?utf-8?B?cmtlQ3VFSENqbTlQNWd5QXk4VDBISktmNHB4STVpMW41dG5rd09UZ0VxWWgr?=
 =?utf-8?B?TEh0WnFmcm9aQmlrVTYzaWN5S0ZHZ3RDTDdlUTlqUmNEc2RzZXJuS1U2Ritx?=
 =?utf-8?B?VkxTN3JIVHp2OTJBRjYzbGtmaWFGL3RYNGk1dTlpVHBRWURCcHRuWEVMajlW?=
 =?utf-8?B?dXJUVFdhU2hHQ3JwbVVhR0Y0UFNnbWxBTVo5NDZpZTZ1MVJrYzFhZDkzZnlW?=
 =?utf-8?B?MHVTTTZYVWl5OWdQVjArc1JwT21sNkdCeUg3M2xCYWI3dFJTMmVBRVg2MXYw?=
 =?utf-8?B?NzNocjJwbytyeEdpMjRGTStBaDhKN2ppak55MHRrOWtTR0dKSHdubmROSHZL?=
 =?utf-8?B?V2pGZEs5SkNzS1JZZjRaUmRNamN0VTE0M0VYc05QZFlVMFVVSjhROUpWZDI1?=
 =?utf-8?B?WnpFeDhEelIycDJreU9xeExuc1hvbUsvMTNDZUIxNThHbG1Nd0xNNCtIcUgr?=
 =?utf-8?B?cngvNE00cldEL3RtTzE0eS9rOHlGZjNwbkcrcW9tMVdkU1JEU1RIZnZwYUdr?=
 =?utf-8?B?b0wxVVV2SXJzYkd0MWhQclRsVjhKdnVYbkl5dnhOYlJJSmR2TC9lY1JzVU5l?=
 =?utf-8?B?MXdUeXRuVVRZOHJ2V0dJczkvbXFIUlFQZCtoNGxEVVYrV01FL1ZJSjZuOXNX?=
 =?utf-8?B?K0ExUktwMDdmUEhTU09MdlYvN3FQQXA2S2FRT3dJVUoyeW9idkJ3OEVkMVMw?=
 =?utf-8?B?Ti9hVVNzT1R1ODM1Q1BlVVA2Wnk4eUtEblpoUURiT0R2VXFnRFlYdXhzT1FO?=
 =?utf-8?B?a29LMTZKbEV0YmtiOGlIN1hJWWhBZHJNTDV4TmJuSnZCa3Z5amZWOG1IZWFi?=
 =?utf-8?B?aUxNdUVIKzl5UG9MMjUyczJYNDZJRWtraGlTRXpyNEpSWW1FREl6cUZxV05j?=
 =?utf-8?B?MS94RmcyZXZ6bVZEZVozVElvTm1JbWxRa3VJNWV0dmZHV0k3aU4vdVRtQVhM?=
 =?utf-8?B?d2w4MEJLOVVXenExaG5iemRCWkJKS3BkK3lCcHpoekZ6Z2dqN2xmZjNiaWNM?=
 =?utf-8?B?dmd3NFBUOFMzMnUzYTEydWpDdEdRZ2d6dWJUdTBJemhQVzRHQmtRRVZmZEtH?=
 =?utf-8?B?dGU5aHNXU2o2aysrTWQ0Z2ZDb2xJNU5odUN3UnIydXRQVTlLQ1J0ZXZPWCs3?=
 =?utf-8?B?OG4xaWY2bTZKQjFwcnVsK3I2RGVMb1lGczRXWjNSWGxNMWxSU013aWt5RExZ?=
 =?utf-8?B?cWxRSGJvOTBFNWhqZVpaMFZrMnVzelNmcTAvZWRtTE80R3A4THRPeUdZd3pZ?=
 =?utf-8?B?Rno2dlFaN2ZwaG95V3FIQ2M0UEV5NXV0ekpqOTdNMCtaYVhkYjFsNzFJcXlN?=
 =?utf-8?B?LzlsZ2MxajBtd0ZiUC9QTlBjT1Q5RDZ6ODVlcS9CRzN4UE55WEI0ME9oaVhB?=
 =?utf-8?Q?WTuk7dSZrugSUWp1yTACbLSSE?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 900a47dd-a0f4-4c95-edc8-08dbd96755e3
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Oct 2023 16:43:25.0180
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: l1x+ZEKR1Rw+wMxSYPFjq5cym40tdrySUj4mSaALkxtwf27G5InJXF7jH2zl33ueImx6V1xBDmY125rD4hQIFg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR04MB8453

On 30.10.2023 17:34, Oleksii wrote:
> Hello Jan,
> 
> On Thu, 2023-10-19 at 11:55 +0200, Jan Beulich wrote:
>> On 14.09.2023 16:56, Oleksii Kurochko wrote:
>>> --- /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__ */
>>
>> While more involved, I still wonder whether xen/pci.h could also
>> avoid
>> including asm/pci.h when !HAS_PCI. Of course there's more than just
>> the
>> #include which then would need #ifdef-ing out.
>>
>> Jan
> 
> It looks like we can do that but only one question should be resolved.
> In ARM case, in <asm/pci.h> there is !HAS_PCI branch:
> 
> #else   /*!CONFIG_HAS_PCI*/
> 
> struct arch_pci_dev { };
> 
> static always_inline bool is_pci_passthrough_enabled(void)
> {
>     return false;
> }
> 
> struct pci_dev;
> 
> static inline void arch_pci_init_pdev(struct pci_dev *pdev) {}
> 
> static inline int pci_get_host_bridge_segment(const struct
> dt_device_node *node,
>                                               uint16_t *segment)
> {
>     ASSERT_UNREACHABLE();
>     return -EINVAL;
> }
> 
> static inline int pci_get_new_domain_nr(void)
> {
>     ASSERT_UNREACHABLE();
>     return -1;
> }
> 
> #endif  /*!CONFIG_HAS_PCI*/
> 
> And if is_pci_passthrough_enabled(), arch_pci_init_pdev() is used by
> all architrectures but pci_get_host_bridge_segment() and
> pci_get_new_domain_nr() is ARM specific.
> Does it make sense to add them to <xen/pci.h> and ifdef them?

Counter question: Is the arch_pci_init_pdev() stub actually needed?
The sole caller looks to be in a file which is only built when HAS_PCI=y.

For the Arm-only stubs (which are called from Arm-specific code afaics)
all it would take is that the respective .c files include asm/pci.h
(possibly alongside xen/pci.h).

Jan


From xen-devel-bounces@lists.xenproject.org Mon Oct 30 17:52:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 17:52:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625337.974550 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxWRN-0005PW-0V; Mon, 30 Oct 2023 17:52:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625337.974550; Mon, 30 Oct 2023 17:52: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 1qxWRM-0005PP-Tz; Mon, 30 Oct 2023 17:52:40 +0000
Received: by outflank-mailman (input) for mailman id 625337;
 Mon, 30 Oct 2023 17:52: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 1qxWRM-0005PF-9z; Mon, 30 Oct 2023 17:52: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 1qxWRL-0000KV-VK; Mon, 30 Oct 2023 17:52: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 1qxWRL-00026x-Lr; Mon, 30 Oct 2023 17:52:39 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qxWRL-0004fw-LO; Mon, 30 Oct 2023 17:52: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=+VT23KcLxYfWl2cCXmf+vz92xBZhu6Nm+G9E4Mweam4=; b=5iiJTFOUdiwrCr+DUVSma3VoI6
	nC7144qFFz8Cqmlo17m05K4jWVTO5suiAr5h7VXZOL1wQP2Clxxlu0TkR7wKYFHyMwTSBO40ysL+b
	RXuYny686LtRNLizvoiwG1L8MGQRh6XqSYrX1Qu1+qi/jC9J0JjBYKLS65HIgKLRXd8Y=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183616-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-4.18-testing test] 183616: regressions - FAIL
X-Osstest-Failures:
    xen-4.18-testing:build-amd64-xsm:xen-build:fail:regression
    xen-4.18-testing:build-i386-xsm:xen-build:fail:regression
    xen-4.18-testing:build-amd64:xen-build:fail:regression
    xen-4.18-testing:build-i386:xen-build:fail:regression
    xen-4.18-testing:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-livepatch:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-migrupgrade:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-pair:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-qemut-rhel6hvm-amd:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-qemut-rhel6hvm-intel:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-xl:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-xl-qemut-debianhvm-amd64:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-xl-qemut-win7-amd64:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-xl-qemut-ws16-amd64:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-xl-xsm:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-xsm:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-qemut-ws16-amd64:build-check(1):blocked:nonblocking
    xen-4.18-testing:build-amd64-libvirt:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-qemut-win7-amd64:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-qemut-debianhvm-amd64:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking
    xen-4.18-testing:build-i386-libvirt:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-livepatch:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-migrupgrade:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-pair:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-xtf-amd64-amd64-1:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-xtf-amd64-amd64-2:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-xtf-amd64-amd64-3:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-xtf-amd64-amd64-4:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-xtf-amd64-amd64-5:build-check(1):blocked:nonblocking
    xen-4.18-testing:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=b6cf4f81b5ff43a05b199c3eb8c78059d03d9485
X-Osstest-Versions-That:
    xen=5415b2b2118bd78d8a04f276a8312f7f0cb1a466
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 30 Oct 2023 17:52:39 +0000

flight 183616 xen-4.18-testing real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183616/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 build-amd64-xsm               6 xen-build                fail REGR. vs. 183555
 build-i386-xsm                6 xen-build                fail REGR. vs. 183555
 build-amd64                   6 xen-build                fail REGR. vs. 183555
 build-i386                    6 xen-build                fail REGR. vs. 183555

Tests which did not succeed, but are not blocking:
 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-amd64-i386-livepatch     1 build-check(1)               blocked  n/a
 test-amd64-i386-migrupgrade   1 build-check(1)               blocked  n/a
 test-amd64-i386-pair          1 build-check(1)               blocked  n/a
 test-amd64-i386-qemut-rhel6hvm-amd  1 build-check(1)               blocked n/a
 test-amd64-i386-qemut-rhel6hvm-intel  1 build-check(1)             blocked n/a
 test-amd64-i386-qemuu-rhel6hvm-amd  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-qemut-debianhvm-amd64  1 build-check(1)         blocked n/a
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm  1 build-check(1)      blocked n/a
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-i386-xl-qemut-win7-amd64  1 build-check(1)              blocked n/a
 test-amd64-i386-xl-qemut-ws16-amd64  1 build-check(1)              blocked n/a
 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-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-amd64-coresched-amd64-xl  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-xsm       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
 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
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 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-xl-qemuu-debianhvm-amd64-shadow  1 build-check(1) blocked n/a
 test-amd64-amd64-xl-qemuu-debianhvm-amd64  1 build-check(1)        blocked n/a
 test-amd64-amd64-xl-qemut-ws16-amd64  1 build-check(1)             blocked n/a
 build-amd64-libvirt           1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemut-win7-amd64  1 build-check(1)             blocked n/a
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm  1 build-check(1)     blocked n/a
 test-amd64-amd64-xl-qemut-debianhvm-amd64  1 build-check(1)        blocked n/a
 test-amd64-amd64-xl-qcow2     1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-pvshim    1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-pvhv2-intel  1 build-check(1)               blocked  n/a
 build-i386-libvirt            1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-pvhv2-amd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-multivcpu  1 build-check(1)               blocked  n/a
 test-amd64-amd64-dom0pvh-xl-amd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-dom0pvh-xl-intel  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-credit2   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-xl-credit1   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-libvirt-vhd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl           1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-amd64-amd64-livepatch    1 build-check(1)               blocked  n/a
 test-amd64-amd64-qemuu-nested-intel  1 build-check(1)              blocked n/a
 test-amd64-amd64-migrupgrade  1 build-check(1)               blocked  n/a
 test-amd64-amd64-pair         1 build-check(1)               blocked  n/a
 test-amd64-amd64-qemuu-nested-amd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-pygrub       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-i386-xl-qemuu-win7-amd64  1 build-check(1)              blocked n/a
 test-amd64-i386-xl-qemuu-ovmf-amd64  1 build-check(1)              blocked n/a
 test-amd64-coresched-i386-xl  1 build-check(1)               blocked  n/a
 test-amd64-i386-freebsd10-amd64  1 build-check(1)               blocked  n/a
 test-amd64-i386-freebsd10-i386  1 build-check(1)               blocked  n/a
 test-xtf-amd64-amd64-1        1 build-check(1)               blocked  n/a
 test-xtf-amd64-amd64-2        1 build-check(1)               blocked  n/a
 test-xtf-amd64-amd64-3        1 build-check(1)               blocked  n/a
 test-xtf-amd64-amd64-4        1 build-check(1)               blocked  n/a
 test-xtf-amd64-amd64-5        1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183555
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183555
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183555
 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-credit1  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  16 saverestore-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-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 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-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-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          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-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     15 migrate-support-check        fail   never pass

version targeted for testing:
 xen                  b6cf4f81b5ff43a05b199c3eb8c78059d03d9485
baseline version:
 xen                  5415b2b2118bd78d8a04f276a8312f7f0cb1a466

Last test of basis   183555  2023-10-27 13:10:21 Z    3 days
Testing same since   183564  2023-10-27 23:37:39 Z    2 days    4 attempts

------------------------------------------------------------
People who touched revisions under test:
  Julien Grall <jgrall@amazon.com>
  Julien Grall <julien@xen.org>

jobs:
 build-amd64-xsm                                              fail    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               fail    
 build-amd64-xtf                                              pass    
 build-amd64                                                  fail    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   fail    
 build-amd64-libvirt                                          blocked 
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           blocked 
 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                                       blocked 
 test-xtf-amd64-amd64-2                                       blocked 
 test-xtf-amd64-amd64-3                                       blocked 
 test-xtf-amd64-amd64-4                                       blocked 
 test-xtf-amd64-amd64-5                                       blocked 
 test-amd64-amd64-xl                                          blocked 
 test-amd64-coresched-amd64-xl                                blocked 
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 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-qemut-stubdom-debianhvm-amd64-xsm        blocked 
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         blocked 
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 blocked 
 test-amd64-i386-xl-qemut-debianhvm-i386-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                                 pass    
 test-amd64-i386-libvirt-xsm                                  blocked 
 test-amd64-amd64-xl-xsm                                      blocked 
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       blocked 
 test-amd64-amd64-qemuu-nested-amd                            blocked 
 test-amd64-amd64-xl-pvhv2-amd                                blocked 
 test-amd64-i386-qemut-rhel6hvm-amd                           blocked 
 test-amd64-i386-qemuu-rhel6hvm-amd                           blocked 
 test-amd64-amd64-dom0pvh-xl-amd                              blocked 
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    blocked 
 test-amd64-i386-xl-qemut-debianhvm-amd64                     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-qemut-win7-amd64                         blocked 
 test-amd64-i386-xl-qemut-win7-amd64                          blocked 
 test-amd64-amd64-xl-qemuu-win7-amd64                         blocked 
 test-amd64-i386-xl-qemuu-win7-amd64                          blocked 
 test-amd64-amd64-xl-qemut-ws16-amd64                         blocked 
 test-amd64-i386-xl-qemut-ws16-amd64                          blocked 
 test-amd64-amd64-xl-qemuu-ws16-amd64                         blocked 
 test-amd64-i386-xl-qemuu-ws16-amd64                          blocked 
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-xl-credit1                                  blocked 
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  blocked 
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 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-qemut-rhel6hvm-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                                     pass    
 test-amd64-i386-libvirt                                      blocked 
 test-amd64-amd64-livepatch                                   blocked 
 test-amd64-i386-livepatch                                    blocked 
 test-amd64-amd64-migrupgrade                                 blocked 
 test-amd64-i386-migrupgrade                                  blocked 
 test-amd64-amd64-xl-multivcpu                                blocked 
 test-armhf-armhf-xl-multivcpu                                pass    
 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                               pass    
 test-amd64-amd64-xl-qcow2                                    blocked 
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  blocked 
 test-amd64-amd64-xl-rtds                                     blocked 
 test-armhf-armhf-xl-rtds                                     pass    
 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                                 pass    
 test-amd64-amd64-libvirt-vhd                                 blocked 
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    
 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.

------------------------------------------------------------
commit b6cf4f81b5ff43a05b199c3eb8c78059d03d9485
Author: Julien Grall <julien@xen.org>
Date:   Fri Oct 27 14:08:16 2023 +0100

    Turn off debug by default
    
    Signed-off-by: Julien Grall <jgrall@amazon.com>

commit f17e9d7459f4d4c6e078cbf15e7e0591c8b5f43e
Author: Julien Grall <julien@xen.org>
Date:   Fri Oct 27 14:07:09 2023 +0100

    Config.mk: switch to named tags (for stable branch)
    
    Signed-off-by: Julien Grall <julien@xen.org>
(qemu changes not included)


From xen-devel-bounces@lists.xenproject.org Mon Oct 30 17:55:24 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 17:55:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625342.974560 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxWTz-00076H-JV; Mon, 30 Oct 2023 17:55:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625342.974560; Mon, 30 Oct 2023 17: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 1qxWTz-00076A-Fa; Mon, 30 Oct 2023 17:55:23 +0000
Received: by outflank-mailman (input) for mailman id 625342;
 Mon, 30 Oct 2023 17:55: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=CUpU=GM=cloud.com=kelly.choi@srs-se1.protection.inumbo.net>)
 id 1qxWTy-000760-N1
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 17:55:22 +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 7da5f8ae-774d-11ee-9b0e-b553b5be7939;
 Mon, 30 Oct 2023 18:55:20 +0100 (CET)
Received: by mail-ej1-x636.google.com with SMTP id
 a640c23a62f3a-9d2e6c8b542so258594166b.0
 for <xen-devel@lists.xenproject.org>; Mon, 30 Oct 2023 10: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: 7da5f8ae-774d-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1698688519; x=1699293319; darn=lists.xenproject.org;
        h=to:subject:message-id:date:from:mime-version:from:to:cc:subject
         :date:message-id:reply-to;
        bh=MiY2qQWBuimm6imDvYmYikkg4CJ9NS3y2EviYwtmsTI=;
        b=Bfl/0JzpjD3/7oly+46eo70s8UONR3dfruMn7Hj0R+TTxG+hD4mGI3g3qpsC9lmeJ2
         2Vvtepjhw55z9DD9Q04/rA+YWbEIf0fiQgPqDKVWc6KQCuZ7uKYKbheTvAESpyOWZomC
         wQBgMqbbfE9qlwRlBcuED1vbW27hIcXp7BP2A=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698688519; x=1699293319;
        h=to:subject:message-id:date:from:mime-version:x-gm-message-state
         :from:to:cc:subject:date:message-id:reply-to;
        bh=MiY2qQWBuimm6imDvYmYikkg4CJ9NS3y2EviYwtmsTI=;
        b=nSoMtSwK9CSLLG6joBfYC6niamcr0SrZKLDDTEDXYzsbPjG9n8qA3nfBvFvZpyzdQr
         F1o8J8yi6BlnIAqeYll19w2V8Ci4wla9YWknoUdAm2PDV3hDGpRMkzg64W3wxZKwzrG4
         EMQH+ZinVNyuxtCEJ5z/xwqqSO9uzH2aezZn4l5mIDoMm2woGNVE4u8Ip1PAxfm3/w/e
         FQUkjs8a+WzMBUYv+5Lgf8SfFJcPIRwe2j8Cu2fE/qOkfMW2DLaAWaOEFMtwk2Y3maCX
         ajrFV70L7FKusPbapWH+pCB+wLBgDu+3zDjAa9/7+Yr1INoS9Gs03MR7+nkdS1nNYInl
         sW+g==
X-Gm-Message-State: AOJu0YwNwz/Xhq1IZLzhEz6PGNItnUmuAMAUBEhlGEiLQKUrGbvpF4R7
	cT5CpXEFDscYwP62plQMlP1+lsTtQwNBXy6zgxiWLQ==
X-Google-Smtp-Source: AGHT+IHNPsIf9nxsGhkCGuwD1pAPLkKB9Plx78p9A5AFUAbB4qnytQY3U6IJANdJ2Xq+Kt79KkQ0eBE+wXeMkEXg0qw=
X-Received: by 2002:a17:907:7654:b0:9d2:414c:b92 with SMTP id
 kj20-20020a170907765400b009d2414c0b92mr4308549ejc.68.1698688519182; Mon, 30
 Oct 2023 10:55:19 -0700 (PDT)
MIME-Version: 1.0
From: Kelly Choi <kelly.choi@cloud.com>
Date: Mon, 30 Oct 2023 10:54:43 -0700
Message-ID: <CAO-mL=xE=-8RjeAOKumLfcSf=wu0OWLK0X1Lz2JMCefBXbnTfA@mail.gmail.com>
Subject: Cambridge University Talk - 9th November 2023
To: xen-announce@lists.xenproject.org, xen-users@lists.xenproject.org, 
	xen-devel@lists.xenproject.org
Content-Type: multipart/alternative; boundary="000000000000c5320b0608f2bde2"

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

Hello Xen Community!

I'm excited to share that we will be presenting a talk at Cambridge
University!
This is free and open to everyone, including students and the public.

Make sure to add this to your calendars and come along.

*Date: Thursday 9th November 2023*
*Time: 3 - 4pm *

*Location: *


*Computer LaboratoryWilliam Gates Building15 JJ Thomson Avenue*

*Cambridge CB3 0FDhttps://www.cl.cam.ac.uk/directions/
<https://www.cl.cam.ac.uk/directions/>  *

Title: Navigating the Open Source Landscape: Insights from Ayan Kumar and
Edwin Torok  <https://talks.cam.ac.uk/talk/index/205825>

Join us for an illuminating seminar featuring two distinguished speakers,
Ayan Kumar and Edwin Torok, who will delve into the intricate world of
open-source projects.

Ayan Kumar: In his engaging presentation, Ayan Kumar will be your guide
through the inner workings of open-source projects, using the Xen
hypervisor as a compelling example. With a keen focus on demystifying the
nuances of open-source collaborations, Ayan will walk you through the
step-by-step workflow for contributions, shedding light on the
collaborative modes that fuel innovation. Get ready to be inspired by the
fascinating ongoing developments in the Xen hypervisor. Ayan will also
provide invaluable insights for newcomers, outlining promising avenues for
their initial contributions. The session will culminate in a hands-on
demonstration featuring a selection of noteworthy open-source projects.

Edwin Torok: Edwin Torok will offer invaluable wisdom on the unique
challenges of joining and maintaining a venerable, decade-old codebase,
drawing from his extensive experience with the XAPI project. With a deep
dive into the strategies and practices that sustain such a longstanding
project, Edwin will equip you with the insights needed to navigate and
contribute effectively to large-scale, established codebases.

Don't miss this opportunity to gain firsthand knowledge from these two
seasoned experts in the open-source arena. Join us for an enriching seminar
that promises to empower both beginners and seasoned developers alike.

Many thanks,
Kelly Choi

Open Source Community Manager
XenServer, Cloud Software Group

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

<div dir=3D"ltr">Hello Xen Community! <br><br>I&#39;m excited to share that=
 we will be presenting a talk at Cambridge University!=C2=A0<div>This is fr=
ee and open to everyone, including students and the public. <br><br>Make su=
re to add this to your calendars and come along.<div><br></div><div><b>Date=
: Thursday 9th November 2023</b></div><div><b>Time: 3 - 4pm=C2=A0</b></div>=
<div><b>Location:=C2=A0<br></b></div><div><b>Computer Laboratory<br>William=
 Gates Building<br>15 JJ Thomson Avenue</b></div><div><b>Cambridge CB3 0FD<=
br><a href=3D"https://www.cl.cam.ac.uk/directions/" target=3D"_blank">https=
://www.cl.cam.ac.uk/directions/</a>=C2=A0=C2=A0</b></div><div><br>Title: <a=
 href=3D"https://talks.cam.ac.uk/talk/index/205825" target=3D"_blank">Navig=
ating the Open Source Landscape: Insights from Ayan Kumar and Edwin Torok=
=C2=A0</a></div><div><br></div><div>Join us for an illuminating seminar fea=
turing two distinguished speakers, Ayan Kumar and Edwin Torok, who will del=
ve into the intricate world of open-source projects.=C2=A0<div><br></div><d=
iv>Ayan Kumar: In his engaging presentation, Ayan Kumar will be your guide =
through the inner workings of open-source projects, using the Xen hyperviso=
r as a compelling example. With a keen focus on demystifying the nuances of=
 open-source collaborations, Ayan will walk you through the step-by-step wo=
rkflow for contributions, shedding light on the collaborative modes that fu=
el innovation. Get ready to be inspired by the fascinating ongoing developm=
ents in the Xen hypervisor. Ayan will also provide invaluable insights for =
newcomers, outlining promising avenues for their initial contributions. The=
 session will culminate in a hands-on demonstration featuring a selection o=
f noteworthy open-source projects.=C2=A0</div><div><br></div><div>Edwin Tor=
ok: Edwin Torok will offer invaluable wisdom on the unique challenges of jo=
ining and maintaining a venerable, decade-old codebase, drawing from his ex=
tensive experience with the XAPI project. With a deep dive into the strateg=
ies and practices that sustain such a longstanding project, Edwin will equi=
p you with the insights needed to navigate and contribute effectively to la=
rge-scale, established codebases.=C2=A0</div><div><br></div><div>Don&#39;t =
miss this opportunity to gain firsthand knowledge from these two seasoned e=
xperts in the open-source arena. Join us for an enriching seminar that prom=
ises to empower both beginners and seasoned developers alike.<br><br></div>=
<div>Many thanks,<br>Kelly Choi<br><br>Open Source Community Manager<br>Xen=
Server, Cloud Software Group<br></div></div></div></div>

--000000000000c5320b0608f2bde2--


From xen-devel-bounces@lists.xenproject.org Mon Oct 30 18:11:26 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 18:11:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625375.974586 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxWjL-0003Ge-8d; Mon, 30 Oct 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 625375.974586; Mon, 30 Oct 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 1qxWjL-0003GX-5E; Mon, 30 Oct 2023 18:11:15 +0000
Received: by outflank-mailman (input) for mailman id 625375;
 Mon, 30 Oct 2023 18:11: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=NDJX=GM=cloud.com=edwin.torok@srs-se1.protection.inumbo.net>)
 id 1qxWjK-0003GR-7s
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 18:11:14 +0000
Received: from mail-ed1-x52a.google.com (mail-ed1-x52a.google.com
 [2a00:1450:4864:20::52a])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id b50dc7dc-774f-11ee-9b0e-b553b5be7939;
 Mon, 30 Oct 2023 19:11:12 +0100 (CET)
Received: by mail-ed1-x52a.google.com with SMTP id
 4fb4d7f45d1cf-53de8fc1ad8so7749593a12.0
 for <xen-devel@lists.xenproject.org>; Mon, 30 Oct 2023 11:11:12 -0700 (PDT)
Received: from smtpclient.apple (default-46-102-197-194.interdsl.co.uk.
 [46.102.197.194]) by smtp.gmail.com with ESMTPSA id
 d26-20020a17090648da00b00988dbbd1f7esm6340554ejt.213.2023.10.30.11.11.11
 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128);
 Mon, 30 Oct 2023 11:11: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: b50dc7dc-774f-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1698689471; x=1699294271; darn=lists.xenproject.org;
        h=to:references:message-id:content-transfer-encoding:cc:date
         :in-reply-to:from:subject:mime-version:from:to:cc:subject:date
         :message-id:reply-to;
        bh=NYoqCY0LYF5XJAiA01xiE5ruVPds5+30jxb9bHFiooc=;
        b=RABCwJWGjS/NVo/P69psbkBM4BzEmz10NNXS2p1fYUlqmoywZ59JeGhVXfw6Zy6Ogi
         HvwSgD8bQVe5fWo2lTidU/hnwbQmP+xm9l1E1kBS4t8TrIMZJtnaGDKjKeV69a1JFe6n
         DmgZhlNE8ramMbwoJQHsxM0pFZSvHxEDC3m1I=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698689471; x=1699294271;
        h=to:references:message-id:content-transfer-encoding:cc:date
         :in-reply-to:from:subject:mime-version:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=NYoqCY0LYF5XJAiA01xiE5ruVPds5+30jxb9bHFiooc=;
        b=MZ8AAHtddyEOQ4qeZV9FZw458/mOLgXxXiOrdvnRtNdKskM9pos81/4iM+TFnBtAPV
         yCv3gWf5jKDtSY+Dqz/OGZsSs7xxKhpDTZjf1rFMSxya3yjNdkRxXgdfG38ygOrDkdhq
         LFEwGT2Rb47nfPFpPlT5mfHH43Zq4IIV09djKmh1NQ+i8AzscRJMmIvhpF7zh8n1pyyM
         vtAo8TSpwsCMjinI6JF2mjiH5xuSfEZ6QNPQSUDw/ow4YEtni4VZrr8f26GtqamVHPhA
         6BCArt5KV62owlzoJAyE9EQWjCvVcV0QNKxjdX5Lyp8iBuooY899UiBIe/ESZUGvoR/0
         bZog==
X-Gm-Message-State: AOJu0YyUBnbSJUgJzj+HkFeMTnE2cgHeEBMFYSfhuPm17YDDPhyt/47Y
	FVHPF2wd4uo7lnWUfhBdTNlh+w==
X-Google-Smtp-Source: AGHT+IHSlZ95GVuJRkbKq27UE7kWd0F2kU70DtZfb6mgFlADRB6kTUromYUR7kzZZ19UNoNyFB6SFg==
X-Received: by 2002:a17:906:a044:b0:9d1:92bb:ce74 with SMTP id bg4-20020a170906a04400b009d192bbce74mr5986312ejb.38.1698689471483;
        Mon, 30 Oct 2023 11:11:11 -0700 (PDT)
Content-Type: text/plain;
	charset=utf-8
Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3774.100.2.1.4\))
Subject: Re: [PATCH] xenstored: do not redirect stderr to /dev/null
From: Edwin Torok <edwin.torok@cloud.com>
In-Reply-To: <87fbae122fd2d75852026d621358031c72c9a36d.1698227069.git.edwin.torok@cloud.com>
Date: Mon, 30 Oct 2023 18:11:00 +0000
Cc: xen-devel@lists.xenproject.org,
 Wei Liu <wl@xen.org>,
 Anthony PERARD <anthony.perard@citrix.com>
Content-Transfer-Encoding: quoted-printable
Message-Id: <ECFA15A7-9DC8-4476-8D0B-44A6D12192D6@cloud.com>
References: <87fbae122fd2d75852026d621358031c72c9a36d.1698227069.git.edwin.torok@cloud.com>
To: =?utf-8?B?RWR3aW4gVMO2csO2aw==?= <edvin.torok@citrix.com>
X-Mailer: Apple Mail (2.3774.100.2.1.4)



> On 25 Oct 2023, at 14:50, Edwin T=C3=B6r=C3=B6k =
<edvin.torok@citrix.com> wrote:
>=20
> From: Edwin T=C3=B6r=C3=B6k <edwin.torok@cloud.com>
>=20
> By default stderr gets redirected to /dev/null because oxenstored =
daemonizes itself.
> This must be a left-over from pre-systemd days.
>=20
> In ee7815f49f ("tools/oxenstored: Set uncaught exception handler") a =
workaround was added to log exceptions
> directly to syslog to cope with standard error being lost.
>=20
> However it is better to not lose standard error (what if the =
connection to syslog itself fails, how'd we log that?),
> and use the '--no-fork' flag to do that.
> This flag is supported by both C and O versions of xenstored.
>=20
> Both versions also call sd_notify so there is no need for forking.
>=20
> Leave the default daemonize as is so that xenstored keeps working on =
non-Linux systems as before.
>=20
> Signed-off-by: Edwin T=C3=B6r=C3=B6k <edwin.torok@cloud.com>
> ---
> tools/hotplug/Linux/init.d/sysconfig.xencommons.in | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>=20
> diff --git a/tools/hotplug/Linux/init.d/sysconfig.xencommons.in =
b/tools/hotplug/Linux/init.d/sysconfig.xencommons.in
> index 433e4849af..09a1230cee 100644
> --- a/tools/hotplug/Linux/init.d/sysconfig.xencommons.in
> +++ b/tools/hotplug/Linux/init.d/sysconfig.xencommons.in
> @@ -52,7 +52,7 @@
> # like "--trace-file @XEN_LOG_DIR@/xenstored-trace.log"
> # See "@sbindir@/xenstored --help" for possible options.
> # Only evaluated if XENSTORETYPE is "daemon".
> -XENSTORED_ARGS=3D
> +XENSTORED_ARGS=3D--no-fork


I think the CI failure is due to this patch, and it only happens on =
Linux systems that do not use systemd.
In that case we do need to fork, because that is the only way not to tie =
up the boot sequence.

I'll try to make '--no-fork' depend on having systemd present, because =
otherwise I tested both C and O xenstored and they do start up with =
--no-fork.

Best regards,
--Edwin=


From xen-devel-bounces@lists.xenproject.org Mon Oct 30 20:28:47 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 20:28:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625397.974609 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxYs8-0006kY-5j; Mon, 30 Oct 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 625397.974609; Mon, 30 Oct 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 1qxYs8-0006kR-26; Mon, 30 Oct 2023 20:28:28 +0000
Received: by outflank-mailman (input) for mailman id 625397;
 Mon, 30 Oct 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=KEI1=GM=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qxYs7-0006kL-3r
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 20:28:27 +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 dcd8754c-7762-11ee-9b0e-b553b5be7939;
 Mon, 30 Oct 2023 21:28:23 +0100 (CET)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by sin.source.kernel.org (Postfix) with ESMTP id 29542CE021A;
 Mon, 30 Oct 2023 20:28:14 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 6A1E0C433C7;
 Mon, 30 Oct 2023 20:28: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: dcd8754c-7762-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1698697693;
	bh=gOjjGJWV4rfGJ5PJd96TpHyh/9uG37MqNq0xqFUqPq8=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=WU0Z98s3cawv8nPEd/TeP8l+JRjhUfnh8W1RGIiSPrtdhJ0d5qD+VfsXyqPcZLfnn
	 UC90D4EHRbG2pLj5RWtdkTJmXeuvgMw7T6L1RXoaJTCNLS46rut0o0vaqteSDYEFAJ
	 DV1s2bv7NInw6Gj9LUDdkR7CTDA4FQxiuoLeid0X/ilrmFklwG4OB2t1VbA6SzHS8a
	 jfLpbGSp1F0lcuDPd2xrmAt+Mb3NboyUBL+4CSN0uhQuFr+JgAVSUYWKkNLWMWgOZX
	 cRR0xp6fxCIXg/xqzlMJEQfjDQwGwXOO0awF53/6uelnbBUaRTmqgl/jIBrkjHFG7N
	 Pf/SEbZ/rXe3A==
Date: Mon, 30 Oct 2023 13:28:11 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
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] console: conditionalize console_input_domain()
In-Reply-To: <59c59b19-40e0-aa1e-d775-31963e03144a@suse.com>
Message-ID: <alpine.DEB.2.22.394.2310301328030.271731@ubuntu-linux-20-04-desktop>
References: <59c59b19-40e0-aa1e-d775-31963e03144a@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, 30 Oct 2023, Jan Beulich wrote:
> The function was introduced for just one piece of code to use; it is
> dead code in cases where the respective Kconfig option is disabled, thus
> violating Misra C:2012 rule 2.1 there.
> 
> Signed-off-by: Jan Beulich <jbeulich@suse.com>

Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>


> --- a/xen/drivers/char/console.c
> +++ b/xen/drivers/char/console.c
> @@ -475,6 +475,7 @@ static unsigned int __read_mostly consol
>  
>  #define max_console_rx (max_init_domid + 1)
>  
> +#ifdef CONFIG_SBSA_VUART_CONSOLE
>  /* Make sure to rcu_unlock_domain after use */
>  struct domain *console_input_domain(void)
>  {
> @@ -482,6 +483,7 @@ struct domain *console_input_domain(void
>              return NULL;
>      return rcu_lock_domain_by_id(console_rx - 1);
>  }
> +#endif
>  
>  static void switch_serial_input(void)
>  {
> 


From xen-devel-bounces@lists.xenproject.org Mon Oct 30 22:44:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 22:44:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625401.974618 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxazs-0002vC-DS; Mon, 30 Oct 2023 22:44:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625401.974618; Mon, 30 Oct 2023 22:44: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 1qxazs-0002v5-AU; Mon, 30 Oct 2023 22:44:36 +0000
Received: by outflank-mailman (input) for mailman id 625401;
 Mon, 30 Oct 2023 22:44: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=KEI1=GM=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qxazq-0002uz-E5
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 22:44:34 +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 e3fc8dbd-7775-11ee-98d6-6d05b1d4d9a1;
 Mon, 30 Oct 2023 23:44:32 +0100 (CET)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by dfw.source.kernel.org (Postfix) with ESMTP id E03D860A5B;
 Mon, 30 Oct 2023 22:44:30 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id C8EC8C433C7;
 Mon, 30 Oct 2023 22:44: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: e3fc8dbd-7775-11ee-98d6-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1698705870;
	bh=ieH9DJ3zXCskXh4EEPOfDyDs/1BbZu0kzgnHfXSk838=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=HRbdpv0xnDtodF5CdXSsnlT6hRqOBQM2D6JnEIXjU05lN+OWWmStm6+gFvefiQqpt
	 seUAf1iy75k1UvEUnV7BTurWTIsXht0/UhiN67cT0bInFFzQ3kEj4TvCj9XAzzeuYY
	 hR7bcOWgF8rCChhKmJLyP8v6U2hDVaNCGmKQsCuXPwHuypNICu6oEjOb0jd5uVj20k
	 WIcz9KGQi5Eyni5uIpXqecmliyvB8tYtkcETXVcs02+9ETA20BEBuyubShhRk1Aw4K
	 eE3Ozjh2fj1XSggJ6RgcVCowxQPl/vwV5CN0PuLrEXbCB0DU7dESTPBdRGjG28gmSD
	 gYlKh1oGYU1bw==
Date: Mon, 30 Oct 2023 15:44:19 -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.cooper3@citrix.com, roger.pau@citrix.com, 
    Simone Ballarin <simone.ballarin@bugseng.com>, 
    Doug Goldstein <cardoe@cardoe.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][for-4.19 v4 1/8] xen/include: add macro
 ISOLATE_LOW_BIT
In-Reply-To: <f88edc35-6b1b-0136-aa1f-6429652c4016@suse.com>
Message-ID: <alpine.DEB.2.22.394.2310301536390.1625118@ubuntu-linux-20-04-desktop>
References: <cover.1698410970.git.nicola.vetrini@bugseng.com> <dca236bf9199f596bafb35eb48d81adc280d8cca.1698410970.git.nicola.vetrini@bugseng.com> <f88edc35-6b1b-0136-aa1f-6429652c4016@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, 30 Oct 2023, Jan Beulich wrote:
> On 27.10.2023 15:34, Nicola Vetrini wrote:
> > --- a/xen/include/xen/macros.h
> > +++ b/xen/include/xen/macros.h
> > @@ -8,8 +8,14 @@
> >  #define DIV_ROUND(n, d) (((n) + (d) / 2) / (d))
> >  #define DIV_ROUND_UP(n, d) (((n) + (d) - 1) / (d))
> >  
> > -#define MASK_EXTR(v, m) (((v) & (m)) / ((m) & -(m)))
> > -#define MASK_INSR(v, m) (((v) * ((m) & -(m))) & (m))
> > +/*
> > + * Given an unsigned integer argument, expands to a mask where just the least
> > + * significant nonzero bit of the argument is set, or 0 if no bits are set.
> > + */
> > +#define ISOLATE_LOW_BIT(x) ((x) & -(x))
> 
> Not even considering future Misra changes (which aiui may require that
> anyway), this generalization of the macro imo demands that its argument
> now be evaluated only once.

Fur sure that would be an improvement, but I don't see a trivial way to
do it and this issue is also present today before the patch. I think it
would be better to avoid scope-creeping this patch as we are already at
v4 for something that was expected to be a trivial mechanical change. I
would rather review the fix as a separate patch, maybe sent by you as
you probably have a specific implementation in mind?


> Also another thought regarding the name: Would ISOLATE_LSB() be acceptable
> to everyone having voiced a view on the set of proposed names? It would be
> at least a little shorter ...

I would be OK with that


From xen-devel-bounces@lists.xenproject.org Mon Oct 30 22:49:36 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 22:49:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625404.974629 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxb4g-0003Vv-VP; Mon, 30 Oct 2023 22:49:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625404.974629; Mon, 30 Oct 2023 22: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 1qxb4g-0003Vo-Rv; Mon, 30 Oct 2023 22:49:34 +0000
Received: by outflank-mailman (input) for mailman id 625404;
 Mon, 30 Oct 2023 22: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=KEI1=GM=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qxb4f-0003Vi-GU
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 22: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 96d236ba-7776-11ee-98d6-6d05b1d4d9a1;
 Mon, 30 Oct 2023 23:49:32 +0100 (CET)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by dfw.source.kernel.org (Postfix) with ESMTP id DB5E260BB5;
 Mon, 30 Oct 2023 22:49:30 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id BC291C433C8;
 Mon, 30 Oct 2023 22: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: 96d236ba-7776-11ee-98d6-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1698706170;
	bh=l0+1I/+BKsLqolV87ldHTy5/JRzQXOlOWSJwv/qjzqQ=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=rQTTe7bq0MeGj+ojGjNrY6jfsfrn42hvhRa1nY6K/wOoJoXGjzxyZDKtngkJdWgHB
	 JPxn8dbVzjFgeupzDJu/IUN1qYkwDmfUDBRUAzLYDEmnLjq9xy/U1tThwSTaInkWGO
	 baxElC89/5B+d9xHMVbiUBSpG2tjlV2Ampe1o7xTtnFkqpJX+tdEe5ydF2VvtOGhTQ
	 fMyzeY7I5Ex4zDsCl8P+gVRp92kjoYDOkARga/15uNFVJBb56WCUGcs6sQ/uPqurkO
	 GFXWBO7UxoVq52uDG97ZN1tK7Q3HuaUyqqf/6MXLeTuxZbUCoG/LJzps8KyTmh+KOU
	 H+fRhbyQLz+ZQ==
Date: Mon, 30 Oct 2023 15:49:27 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Julien Grall <julien@xen.org>
cc: Nicola Vetrini <nicola.vetrini@bugseng.com>, 
    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, Simone Ballarin <simone.ballarin@bugseng.com>, 
    Doug Goldstein <cardoe@cardoe.com>, 
    George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>
Subject: Re: [XEN PATCH][for-4.19 v5] xen: Add deviations for MISRA C:2012
 Rule 7.1
In-Reply-To: <98da41d4-f818-44c7-bd3c-b3e3b224ff0d@xen.org>
Message-ID: <alpine.DEB.2.22.394.2310301544460.1625118@ubuntu-linux-20-04-desktop>
References: <0c86b50a796ba2aaab01e30935ed559ab719d33a.1698418578.git.nicola.vetrini@bugseng.com> <98da41d4-f818-44c7-bd3c-b3e3b224ff0d@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, 30 Oct 2023, Julien Grall wrote:
> Hi Nicola,
> 
> On 27/10/2023 16:11, Nicola Vetrini wrote:
> > diff --git a/docs/misra/deviations.rst b/docs/misra/deviations.rst
> > index 8511a189253b..8aaaa1473fb4 100644
> > --- a/docs/misra/deviations.rst
> > +++ b/docs/misra/deviations.rst
> > @@ -90,6 +90,13 @@ Deviations related to MISRA C:2012 Rules:
> >            - __emulate_2op and __emulate_2op_nobyte
> >            - read_debugreg and write_debugreg
> >   +   * - R7.1
> > +     - It is safe to use certain octal constants the way they are defined
> > +       in specifications, manuals, and algorithm descriptions. Such places
> > +       are marked safe with a /\* octal-ok \*/ in-code comment, or with a
> > SAF
> > +       comment (see safe.json).
> 
> Reading this, it is unclear to me why we have two ways to deviate the rule
> r7.1. And more importantely, how would the developper decide which one to use?

I agree with you on this and we were discussing this topic just this
morning in the FUSA community call. I think we need a way to do this
with the SAF framework:

if (some code with violation) /* SAF-xx-safe */

This doesn't work today unfortunately. It can only be done this way:

/* SAF-xx-safe */
if (some code with violation)

Which is not always desirable. octal-ok is just an ad-hoc solution for
one specific violation but we need a generic way to do this. Luca is
investigating possible ways to support the previous format in SAF.

I think we should take this patch for now and harmonize it once SAF is
improved.


From xen-devel-bounces@lists.xenproject.org Mon Oct 30 22:55:00 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 22:55:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625408.974639 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxb9q-0005Uu-H4; Mon, 30 Oct 2023 22:54:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625408.974639; Mon, 30 Oct 2023 22:54: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 1qxb9q-0005Un-E7; Mon, 30 Oct 2023 22:54:54 +0000
Received: by outflank-mailman (input) for mailman id 625408;
 Mon, 30 Oct 2023 22:54: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=KEI1=GM=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qxb9p-0005Uf-6d
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 22:54:53 +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 55683705-7777-11ee-98d6-6d05b1d4d9a1;
 Mon, 30 Oct 2023 23:54:52 +0100 (CET)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by dfw.source.kernel.org (Postfix) with ESMTP id 9D14E60B9F;
 Mon, 30 Oct 2023 22:54:50 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 42D37C433C9;
 Mon, 30 Oct 2023 22:54: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: 55683705-7777-11ee-98d6-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1698706490;
	bh=kX3kiZJ5W99zGhXT7lbcan46OXFyhXWuhQBE5cGZEJU=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=NlHmxeXnbd9YesQ552xUq0UfANIBGlzWaE63jrAr2Mjv/hGYdY4e7wOX+m2f7Tzw7
	 tngjJ3P3eK++CKYzEjaKnS0wGFFTmWoWuGaJdg1mqJ+DqWVyUcLj5ZVGeqVSUNawgl
	 7XmLpo3vJAmNN/Izv0TJLFTVf7QSQPzhsHmHmiLSLge0HoQqgWOiTbghwOEUb0zBG+
	 xR832de8oCpsNAfguCLoO5pgOi2YYz64kaoTfsMuz01hqoFNQrtU9cQW+YVh/43wcC
	 glpY2qKeoVXAP56ygMntJM8mwrNJQ+QiYWISk/PzCdkmTyP7row7Vj5VmsQjz1TVfn
	 gMaT1h4hAjPmw==
Date: Mon, 30 Oct 2023 15:54:47 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Julien Grall <julien@xen.org>
cc: Nicola Vetrini <nicola.vetrini@bugseng.com>, 
    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, Simone Ballarin <simone.ballarin@bugseng.com>, 
    Doug Goldstein <cardoe@cardoe.com>, 
    George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>, 
    Jun Nakajima <jun.nakajima@intel.com>, Kevin Tian <kevin.tian@intel.com>
Subject: Re: [XEN PATCH][for-4.19 v5 2/8] x86: add deviation for asm-only
 functions
In-Reply-To: <4c5db3e9-cf77-43aa-be7b-df5734104fea@xen.org>
Message-ID: <alpine.DEB.2.22.394.2310301553280.1625118@ubuntu-linux-20-04-desktop>
References: <cover.1698655374.git.nicola.vetrini@bugseng.com> <79091a4e450b522aedfdd903ad671e705a933c49.1698655374.git.nicola.vetrini@bugseng.com> <4c5db3e9-cf77-43aa-be7b-df5734104fea@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, 30 Oct 2023, Julien Grall wrote:
> Hi Nicola,
> 
> On 30/10/2023 09:11, Nicola Vetrini wrote:
> > As stated in rules.rst, functions used only in asm modules
> > are allowed to have no prior declaration visible when being
> > defined, hence these functions are marked with an
> > 'asmlinkage' macro, which is then deviated for MISRA C:2012
> > Rule 8.4.
> 
> AFAIU, this is a replacement of SAF-1. If so, I would like a consistent way to
> address Rule 8.4. So can you write a patch to replace all the use of SAF-1
> with asmlinkage and remove SAF-1?

+1



From xen-devel-bounces@lists.xenproject.org Mon Oct 30 22:55:29 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 22:55:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625411.974648 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxbAO-0005zM-RW; Mon, 30 Oct 2023 22:55:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625411.974648; Mon, 30 Oct 2023 22:55: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 1qxbAO-0005zF-P3; Mon, 30 Oct 2023 22:55:28 +0000
Received: by outflank-mailman (input) for mailman id 625411;
 Mon, 30 Oct 2023 22: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=KEI1=GM=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qxbAN-0005pt-V3
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 22:55:27 +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 69cd933e-7777-11ee-9b0e-b553b5be7939;
 Mon, 30 Oct 2023 23:55:26 +0100 (CET)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by dfw.source.kernel.org (Postfix) with ESMTP id 31FD260AF4;
 Mon, 30 Oct 2023 22:55:25 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id DB4E3C433C9;
 Mon, 30 Oct 2023 22:55: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: 69cd933e-7777-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1698706524;
	bh=b6tRFh1fKYNq6qkhoaVync13KCCPnHftQ1YKMhtU220=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=D9fqT/6E076b+kQnqDt9iti6VSH8zSagQcGHZm5ZKfFdgE+aGwqHLdOVwxBeegQXt
	 o3OLZdzb0mC1ff215Su/7VUJaUp4rK2DhZFupIG2IyYDWq5avs/pcSFjxYIfv9n2Jk
	 yz+YTZV6d8O8NzuIpqZdjoTXSjgzvfloPBCJOeOSvyvRDG4Pcg6HeXNlDofpPx+O2b
	 YB1jHiwsJnnuIXC+Fui1hzdKIBNR3pA26V1U33pWFfysMthiapHtB7BYRzVLSw7HIy
	 mbBmrFaBJvhhrCvCBLInr2h0kCtx05FtIm8+fmNTje19dYQGGcuWSxF2xudXuFkeOY
	 h3l2f5un/uRtw==
Date: Mon, 30 Oct 2023 15:55:21 -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, Simone Ballarin <simone.ballarin@bugseng.com>, 
    Doug Goldstein <cardoe@cardoe.com>, 
    George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>, 
    Wei Liu <wl@xen.org>, Jun Nakajima <jun.nakajima@intel.com>, 
    Kevin Tian <kevin.tian@intel.com>
Subject: Re: [XEN PATCH][for-4.19 v5 2/8] x86: add deviation for asm-only
 functions
In-Reply-To: <79091a4e450b522aedfdd903ad671e705a933c49.1698655374.git.nicola.vetrini@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2310301555020.1625118@ubuntu-linux-20-04-desktop>
References: <cover.1698655374.git.nicola.vetrini@bugseng.com> <79091a4e450b522aedfdd903ad671e705a933c49.1698655374.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, 30 Oct 2023, Nicola Vetrini wrote:
> As stated in rules.rst, functions used only in asm modules
> are allowed to have no prior declaration visible when being
> defined, hence these functions are marked with an
> 'asmlinkage' macro, which is then deviated for MISRA C:2012
> Rule 8.4.
> 
> 'current_stack_pointer' in x86/asm_defns is a declaration, not a definition,
> and is thus marked as safe for ECLAIR.
> 
> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>

Just wanted to say that this patch looks OK and I don't have any further
coments on top of Jan's


From xen-devel-bounces@lists.xenproject.org Mon Oct 30 23:02:32 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 23:02:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625418.974658 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxbGz-0007be-Hf; Mon, 30 Oct 2023 23:02:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625418.974658; Mon, 30 Oct 2023 23:02: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 1qxbGz-0007bX-Et; Mon, 30 Oct 2023 23:02:17 +0000
Received: by outflank-mailman (input) for mailman id 625418;
 Mon, 30 Oct 2023 23:02: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=KEI1=GM=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qxbGx-0007bR-TX
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 23:02:15 +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 5cf642a5-7778-11ee-98d6-6d05b1d4d9a1;
 Tue, 31 Oct 2023 00:02:14 +0100 (CET)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by dfw.source.kernel.org (Postfix) with ESMTP id D32C460B2B;
 Mon, 30 Oct 2023 23:02:12 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 85D40C433C8;
 Mon, 30 Oct 2023 23:02:10 +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: 5cf642a5-7778-11ee-98d6-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1698706932;
	bh=+QQYqCknssPYlRS2qQe4eRUAkkezYcOasgFSU+5v4Rg=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=RU0FuN23ie7nySNTVEswuxix7A4jYR8E5kwL+uTLoNnzF1A+eZ16Vh/Tjx54lnK+f
	 Cpk3KQ07JcYMf+HUqjeuTz1pdGlarC0Ht1Ka2Lhin1qBsRzpR5kwxj3Fdl5bIuUCD1
	 F3aLjzdE0/CUYgWqwN72aEivjSsv7Te4/mRYN6PR+fUkxOj+D73AxqVQ523yZwGJgQ
	 YQgX2WS8DLUPrCFhmmrVmoYte8dVJ5k9gcFZ9bou12RIKZXTgHLNKLAbDoeKWIsYGq
	 WpR9ZU5yrWsprEY5cETXZZ4vEhyHstVCxjcxFNCJOehtPeW9DElD5blOC5H6nF5aAO
	 wDLWYuEcMHbnQ==
Date: Mon, 30 Oct 2023 16:02:09 -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.cooper3@citrix.com, roger.pau@citrix.com, 
    Simone Ballarin <simone.ballarin@bugseng.com>, 
    Doug Goldstein <cardoe@cardoe.com>, 
    George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>, 
    Wei Liu <wl@xen.org>, Jun Nakajima <jun.nakajima@intel.com>, 
    Kevin Tian <kevin.tian@intel.com>, xen-devel@lists.xenproject.org
Subject: Re: [XEN PATCH][for-4.19 v5 2/8] x86: add deviation for asm-only
 functions
In-Reply-To: <20677a35-37ee-d959-78d5-d8f95f443912@suse.com>
Message-ID: <alpine.DEB.2.22.394.2310301557300.1625118@ubuntu-linux-20-04-desktop>
References: <cover.1698655374.git.nicola.vetrini@bugseng.com> <79091a4e450b522aedfdd903ad671e705a933c49.1698655374.git.nicola.vetrini@bugseng.com> <20677a35-37ee-d959-78d5-d8f95f443912@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, 30 Oct 2023, Jan Beulich wrote:
> On 30.10.2023 10:11, Nicola Vetrini wrote:
> > --- a/automation/eclair_analysis/ECLAIR/deviations.ecl
> > +++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
> > @@ -163,6 +163,15 @@ Therefore the absence of prior declarations is safe."
> >  -config=MC3R1.R8.4,reports+={safe, "first_area(any_loc(file(gcov)))"}
> >  -doc_end
> >  
> > +-doc_begin="Recognize the occurrence of current_stack_pointer as a declaration."
> > +-file_tag+={asm_defns, "^xen/arch/x86/include/asm/asm_defns\\.h$"}
> > +-config=MC3R1.R8.4,declarations+={safe, "loc(file(asm_defns))&&^current_stack_pointer$"}
> > +-doc_end
> > +
> > +-doc_begin="asmlinkage is a marker to indicate that the function is only used from asm modules."
> > +-config=MC3R1.R8.4,declarations+={safe,"loc(text(^.*asmlinkage.*$, -1..0))"}
> > +-doc_end
> 
> In the longer run asmlinkage will want using for functions used either way
> between C and assembly (i.e. C->asm calls as well as asm->C ones). I'd like
> to ask that the text please allow for that (e.g. s/from/to interface with/).
> 
> > --- a/xen/arch/x86/hvm/svm/intr.c
> > +++ b/xen/arch/x86/hvm/svm/intr.c
> > @@ -123,7 +123,7 @@ static void svm_enable_intr_window(struct vcpu *v, struct hvm_intack intack)
> >          vmcb, general1_intercepts | GENERAL1_INTERCEPT_VINTR);
> >  }
> >  
> > -void svm_intr_assist(void)
> > +asmlinkage void svm_intr_assist(void)
> 
> Nit (here and below): Attributes, unless impossible for some specific
> reason, should always go between type and identifier. Not all our code
> is conforming to that, but I think a majority is, and hence you should
> be able to find ample examples (taking e.g. __init).

Hi Jan, in general I agree with this principle but I noticed that this
is not the way Linux uses asmlinkage, a couple of examples:

asmlinkage void do_page_fault(struct pt_regs *regs);
asmlinkage const sys_call_ptr_t sys_call_table[];

Should we go our way or follow Linux on this in terms of code style?


From xen-devel-bounces@lists.xenproject.org Mon Oct 30 23:53:22 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 23:53:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625422.974669 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxc4E-00009m-2u; Mon, 30 Oct 2023 23:53:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625422.974669; Mon, 30 Oct 2023 23: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 1qxc4E-00009f-08; Mon, 30 Oct 2023 23:53:10 +0000
Received: by outflank-mailman (input) for mailman id 625422;
 Mon, 30 Oct 2023 23: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=j9+r=GM=amd.com=Stewart.Hildebrand@srs-se1.protection.inumbo.net>)
 id 1qxc4C-00009Y-4S
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 23:53:08 +0000
Received: from NAM10-MW2-obe.outbound.protection.outlook.com
 (mail-mw2nam10on20628.outbound.protection.outlook.com
 [2a01:111:f400:7e89::628])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 75f69e63-777f-11ee-9b0e-b553b5be7939;
 Tue, 31 Oct 2023 00:53:03 +0100 (CET)
Received: from MN2PR19CA0036.namprd19.prod.outlook.com (2603:10b6:208:178::49)
 by PH0PR12MB8176.namprd12.prod.outlook.com (2603:10b6:510:290::18)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.28; Mon, 30 Oct
 2023 23:52:56 +0000
Received: from BL6PEPF0001AB78.namprd02.prod.outlook.com
 (2603:10b6:208:178:cafe::5c) by MN2PR19CA0036.outlook.office365.com
 (2603:10b6:208:178::49) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.28 via Frontend
 Transport; Mon, 30 Oct 2023 23:52:56 +0000
Received: from SATLEXMB03.amd.com (165.204.84.17) by
 BL6PEPF0001AB78.mail.protection.outlook.com (10.167.242.171) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6933.15 via Frontend Transport; Mon, 30 Oct 2023 23:52:55 +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.32; Mon, 30 Oct
 2023 18:52:55 -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.32; Mon, 30 Oct
 2023 18:52:55 -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.32 via Frontend
 Transport; Mon, 30 Oct 2023 18:52: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: 75f69e63-777f-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Ss/nPbeTONb8AyWh5VjAfF0AROveqfx46rSM+54d0uDiGv9n8dCZT9V6VmNiqzVBV6/Pp7iSXvteArXJYzTmXKZ1yE8k3+RPEWeQyS8qP629+UngYr8KzIT4YAbh3DEyWCTmSHqCmibbpxgvTotM9c3BpxyUOywbvHGEqusaRBlrWve5Y1MZonDNDL4fMZSFTNlXaGq1tCFlnLWd3S96/HJLvywGT5wbyBaADdn5HE7OfBtmgdozgnbIpKqPA+g2Lgs2C3RFoJzpR5WPcNOUzyXIg/xoEa5XmTQAskfMftFco7uy5g5BAlIoN20rDI8qbPPL99P+jidoqHal6cYsYg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=ZH56hr5p1Jyv8APbSQjo/iQs8yqGwP42SrM9niQD3rc=;
 b=Zhv+VtWWjPBe4Sv2I/gQ/wutGsgPiBZ9d2Tr9krnw/9dtQ5VYWmjBezXUwrezy7AYoiufsju6t2rirr5HSlNB4Wp1Cq/4IurAQy+7uT5+kJcumq0GQCwx3XqG7//kv3/QX78bsfcd730ChIm5oBPxh5N8Gx458vUc3baGIljrWg1meP9AffX0hQvZZmpL33Tabthf+IXQLm9fPQCOwLOQ4IaOk+D2bz4ow1Yqem0EzyGpmF6dQFvUaqrVt68othTUkkkbh2/LGgaBub1znpA4rRGxtFBD1ExYN5e9hp/2ni2xqZL1f2dLvM+5udMy3gyC5HrZfehigaTkK3T7SCUMw==
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 (0)
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=ZH56hr5p1Jyv8APbSQjo/iQs8yqGwP42SrM9niQD3rc=;
 b=369DX+YoRzFRML/xxsvPBxlaBbWF06HQLnampOPfPx0aHKOA9v7Nzc37zXdg5aOy7F4Z4RxWMlFbE9f5+xLrc6LVm3UndqvWfMhlaqRqi8FrrWNZsTqtQqa+VV4xZFwUfrO6ZY19MqAUKcNrNW1Y/rj1mWYju3MZ5JNdsmwGt2o=
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>, Julien Grall <julien@xen.org>, Bertrand Marquis
	<bertrand.marquis@arm.com>, Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Wei Liu <wl@xen.org>, Anthony PERARD <anthony.perard@citrix.com>, "Juergen
 Gross" <jgross@suse.com>, Andrew Cooper <andrew.cooper3@citrix.com>, "George
 Dunlap" <george.dunlap@citrix.com>, Jan Beulich <jbeulich@suse.com>,
	Christian Lindig <christian.lindig@citrix.com>, David Scott
	<dave@recoil.org>, =?UTF-8?q?Marek=20Marczykowski-G=C3=B3recki?=
	<marmarek@invisiblethingslab.com>, =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?=
	<roger.pau@citrix.com>, Paul Durrant <paul@xen.org>
Subject: [PATCH v4 0/5] Kconfig for PCI passthrough on ARM
Date: Mon, 30 Oct 2023 19:52:31 -0400
Message-ID: <20231030235240.106998-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: BL6PEPF0001AB78:EE_|PH0PR12MB8176:EE_
X-MS-Office365-Filtering-Correlation-Id: 13cf1d96-0002-4456-5a03-08dbd9a3567c
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	tsrp5NDSUbH352QBvS3LzjiAfz6sBudJJEk5BsQCurZGgDh2zv01+4PGWs+sWRu3dvjbvYsTKVEiU9FgqPtf0bae5V+aitNBdREw2vcEgeLLDj6hjvVCamJLNUrO/g1gYOWcdYoXz+qQnJZRXGlecpsTt/8//VLHuPzCb9XU9LrvgjMcjRK6IgCPRNuwd3bW7X0tASDXVLlmJ8N9S5BPK0YPZbrYVAxarGQpsvbH5L9IywzuCfMqp8/fWhAQDK49x2W3eAwOXxgXv8mpcew5BsR82YelHAInG9JLQdNtBqeEUGeLZVSGM1RaEYRmKvi6wdr0l9DDay1qRfOnPIGwx3Lv94ACLKw9BCH58uUc6aiGqzl4qNT0FOskNVB6uouNE7c6hvwlyDbTm3tzRNJK7IPYVuX6u+PvCpDWgOMw6FhXCvCFkGnBbxj81HI64FyC+YKqjQ7dzDxRN6nn3poR1ehxz/+NrtZu2c0o8rjK40lKrk7zNOjmWQSAhPtKTWdTpQnbaMeHpMBLa2Lmpg5OJ8ufwuM9K1ahBusnWsyjvQjVKOzRrEldIpR8sNXOpJBJB/Dhu2SEHWMHqlYI6sPiTA4RuuSJ2PnWODBD40moSrajfHQg5p8z0JISLOG1CN8UYRrScybaDzC71Ayt/KRU0yyW2OgGDGK4zYK3KCu/MCjYwx+JD8d98K8/KmNu/EmzrCO2wW/+v1WCGRvCWX29SJpWdox06pY/0iXkjLey/SSQR2i1Hzygr5tmCf8TktTDpC4yj5T/kWHAyRrlCfPRhQ==
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)(346002)(39860400002)(230922051799003)(64100799003)(451199024)(186009)(82310400011)(1800799009)(46966006)(40470700004)(36840700001)(82740400003)(36860700001)(81166007)(356005)(47076005)(966005)(6666004)(478600001)(8936002)(6916009)(8676002)(4326008)(70586007)(316002)(70206006)(54906003)(44832011)(5660300002)(7416002)(2906002)(41300700001)(83380400001)(2616005)(336012)(426003)(26005)(1076003)(40460700003)(40480700001)(36756003)(86362001)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Oct 2023 23:52:55.6475
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 13cf1d96-0002-4456-5a03-08dbd9a3567c
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:
	BL6PEPF0001AB78.namprd02.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR12MB8176

There are multiple series in development/review [1], [2] that will benefit from
having a Kconfig option for PCI passthrough on ARM. Hence I have sent this
series independent from any other series.

v3->v4:
* rename ("xen/arm: pci: plumb xen_arch_domainconfig with pci info")
  to ("xen/vpci: move xen_domctl_createdomain vPCI flag to common")
* fold ("xen/arm: make has_vpci() depend on d->arch.has_vpci")
  into ("xen/vpci: move xen_domctl_createdomain vPCI flag to common")
* split ("xen/arm: enable vPCI for domUs") into separate hypervisor and
  tools patches

v2->v3:
* add ("xen/arm: pci: plumb xen_arch_domainconfig with pci info")
* rename ("xen/arm: make has_vpci depend on CONFIG_HAS_VPCI")
      to ("xen/arm: make has_vpci() depend on d->arch.has_vpci")
* add ("xen/arm: enable vPCI for dom0")

v1->v2:
* add ("[FUTURE] xen/arm: enable vPCI for domUs")

[1] https://lists.xenproject.org/archives/html/xen-devel/2023-08/msg02361.html
[2] https://lists.xenproject.org/archives/html/xen-devel/2023-10/msg00210.html

Rahul Singh (1):
  xen/arm: pci: introduce PCI_PASSTHROUGH Kconfig option

Stewart Hildebrand (4):
  xen/vpci: move xen_domctl_createdomain vPCI flag to common
  xen/arm: enable vPCI for dom0
  [FUTURE] xen/arm: enable vPCI for domUs
  [FUTURE] tools/arm: enable vPCI for domUs

 tools/libs/light/libxl_arm.c       |  3 +++
 tools/libs/light/libxl_x86.c       |  5 ++++-
 tools/ocaml/libs/xc/xenctrl.ml     |  2 +-
 tools/ocaml/libs/xc/xenctrl.mli    |  2 +-
 tools/python/xen/lowlevel/xc/xc.c  |  5 ++++-
 xen/arch/arm/Kconfig               | 10 ++++++++++
 xen/arch/arm/domain.c              |  3 ++-
 xen/arch/arm/domain_build.c        |  6 ++++++
 xen/arch/arm/include/asm/domain.h  |  3 ---
 xen/arch/arm/include/asm/pci.h     |  9 +++++++++
 xen/arch/arm/pci/pci-host-common.c | 11 ++++++++---
 xen/arch/arm/vpci.c                |  8 ++++++++
 xen/arch/x86/domain.c              | 16 ++++++++++------
 xen/arch/x86/include/asm/domain.h  |  6 +-----
 xen/arch/x86/setup.c               |  5 +++--
 xen/common/domain.c                | 10 +++++++++-
 xen/drivers/passthrough/pci.c      | 10 ++++++++++
 xen/include/public/arch-x86/xen.h  |  5 +----
 xen/include/public/domctl.h        |  7 +++++--
 xen/include/xen/domain.h           |  2 ++
 20 files changed, 97 insertions(+), 31 deletions(-)


base-commit: 9659b2a6d73b14620e187f9c626a09323853c459
-- 
2.42.0



From xen-devel-bounces@lists.xenproject.org Mon Oct 30 23:53:22 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 23:53:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625423.974678 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxc4M-0000Qh-Aq; Mon, 30 Oct 2023 23:53:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625423.974678; Mon, 30 Oct 2023 23:53: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 1qxc4M-0000QX-8I; Mon, 30 Oct 2023 23:53:18 +0000
Received: by outflank-mailman (input) for mailman id 625423;
 Mon, 30 Oct 2023 23:53: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=j9+r=GM=amd.com=Stewart.Hildebrand@srs-se1.protection.inumbo.net>)
 id 1qxc4K-00009Y-J9
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 23:53:16 +0000
Received: from NAM11-DM6-obe.outbound.protection.outlook.com
 (mail-dm6nam11on20602.outbound.protection.outlook.com
 [2a01:111:f400:7eaa::602])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 7d065591-777f-11ee-9b0e-b553b5be7939;
 Tue, 31 Oct 2023 00:53:14 +0100 (CET)
Received: from BL1PR13CA0401.namprd13.prod.outlook.com (2603:10b6:208:2c2::16)
 by DM6PR12MB4483.namprd12.prod.outlook.com (2603:10b6:5:2a2::22) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.28; Mon, 30 Oct
 2023 23:53:11 +0000
Received: from BL6PEPF0001AB74.namprd02.prod.outlook.com
 (2603:10b6:208:2c2:cafe::a9) by BL1PR13CA0401.outlook.office365.com
 (2603:10b6:208:2c2::16) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6954.15 via Frontend
 Transport; Mon, 30 Oct 2023 23:53:10 +0000
Received: from SATLEXMB03.amd.com (165.204.84.17) by
 BL6PEPF0001AB74.mail.protection.outlook.com (10.167.242.167) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6933.15 via Frontend Transport; Mon, 30 Oct 2023 23:53:10 +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.32; Mon, 30 Oct
 2023 18:53:10 -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.32; Mon, 30 Oct
 2023 18:53:09 -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.32 via Frontend
 Transport; Mon, 30 Oct 2023 18:53: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: 7d065591-777f-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=imHzs3GwAC+6ZjMUHbnb9YtsaRrtOaDVo8eICOfstejg1hldY8MNNgJDdM5atYTz3cuv94+KdgAPw3kF5GKhZsfk7/hMVg2fGkOOv2cLiMWK8FrQmAOhLZ8fqcaQTRACksSsTO7q5rcrOdIa6taO64eLWW0WIu0mIXwMrLLGfGOuY58OuC4VGvDlumFvEvuoT5OXmk685BVYRe1Jw/5QU2bI1/6GbzTt6fJ4PZzOrLeK9UHGKA8r5zK+8WIRU1bVjahvRX8sW5f+xrwGuNq8vEyxwEQXGRgTUra78cpBaF8qfu0Brj9Ovb6s2p9/l/ZSkCq4BGPNBKdehLqg7k2NtQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=6vJBkkc7Wu6DjPvhvL3fqXdEasGwxXnYZMqwvjI9HKg=;
 b=EZSptB4ftEeXaVOUuvIlif8+C1KVV+FjR97dN3EViCeY7DLmVPxbTZDRh5V7pYCvcptMYIAC8dNlcjsDnxy5gpFE9fNN9dqgmE4EvgeHI0DWmCUdSJoITbdw5mU/XcvFMuDVWfhdnz0wKK46nLDTTYLpxqk61L41MrirQk3c0yGNdIhi/xrBxlrSX+cyWXLy8kYDPsiNdcpEqBIctgYBDWwQ8RZ3Cmo91BYL6H/mL93AfoomUBqYVzpwNIbVsZdzrnnXIGxk4jNeFxFjYgtxWjSev6225YCVoHnI4yT0AjNFTx6EhEKzkK6B9zkXVqSbrnr4PVaxBRtN5fisjForiQ==
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 (0)
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=6vJBkkc7Wu6DjPvhvL3fqXdEasGwxXnYZMqwvjI9HKg=;
 b=wsLPPBJjzMYhYqHrweR0kOMumGB9hVaOyx1xrs+lrTWHnChRtCcmVm4RHo95UFTsbMb7Kn/QOSgo8Ck+kO6KZrJbgy2L8DaDn1hM9IzBSL4o/N7D402VSS3gnkWzFekVpsId47AT4939Zaa3rYR53gpV63bec/ylBU1DJ/+RkHs=
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: Rahul Singh <rahul.singh@arm.com>, Stefano Stabellini
	<sstabellini@kernel.org>, Julien Grall <julien@xen.org>, Bertrand Marquis
	<bertrand.marquis@arm.com>, Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Stefano Stabellini <stefano.stabellini@amd.com>, Stewart Hildebrand
	<stewart.hildebrand@amd.com>, Julien Grall <jgrall@amazon.com>
Subject: [PATCH v4 1/5] xen/arm: pci: introduce PCI_PASSTHROUGH Kconfig option
Date: Mon, 30 Oct 2023 19:52:32 -0400
Message-ID: <20231030235240.106998-2-stewart.hildebrand@amd.com>
X-Mailer: git-send-email 2.42.0
In-Reply-To: <20231030235240.106998-1-stewart.hildebrand@amd.com>
References: <20231030235240.106998-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: BL6PEPF0001AB74:EE_|DM6PR12MB4483:EE_
X-MS-Office365-Filtering-Correlation-Id: 5f1b210c-ea2b-48c3-3b0b-08dbd9a35f41
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	5sog9IrAxzKul9ACe9euLhJMrMc+fdnjOJzAroWmZT/xrVokzEerYjDLZ8hrOWT3VCjq8+pRYXtjWfo8QoaYR3SxrEfn+KCEfw98XQS9T/QJWBHAt1/kvumwFmpFTtlHupIt8ZmCEd3PHNSqARj3rWIXdmWQZJtyMbCUPrZTnpGdhZS+qvWrbmNn6hhnWoqCaeJt97mEwr4I4DeWayjbfaa9lf08WhtIXTymM26Ja0UelQZpispveiJ5Qf+HDKLXDRLqJEqtW8jqMjXui2RPaLlopfUegj4X/FbesYbwKkzvfc/cJrK3dDxox5ZdTCyfNH+jXBS/gQpA45z2gr5498KJnRPMArRsvnGF+b1VhERHdni8vZURM4uB90sneT18g+hyllw4jSVrYt2cyceWTclvVJa8Gk1rnfOfiJjaMJ1/9UciygDGIkbLvR94cQCV0AoRg42HHrJA0GZsnCvbXGQn8CObmJjCHNsgMmVWht4NUIDMdaxX1X+MOfQRY5YldiS653xfd1EXQ8bZxXyB0PtwVxMuq35qUeysBrKbtPPOi9D4uiRMejmmxap7B5UADpm2FMnMjMPjdaRzB/Q8rJ9bD1wHTjBIIQmr1vxKhqGncgKa3WjOrN6kwVCSGbsVIA7A7mc0TTkhGhEz8PfJ8D2xTwkeO86FvU+3RQ2pQ9QeOPqvibTAP+fjVeFRAsaSl8fb+2JRB22Ys9XojSWKk9xaYN+nvOfiLTueJRiIW2cFNGbpMJWvwrK434baaph9vjrXVu7+W8iPwTec9jEPGQ==
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)(396003)(346002)(230922051799003)(82310400011)(186009)(1800799009)(451199024)(64100799003)(40470700004)(46966006)(36840700001)(40460700003)(2906002)(5660300002)(44832011)(41300700001)(4326008)(8676002)(8936002)(86362001)(40480700001)(36756003)(82740400003)(316002)(6666004)(54906003)(36860700001)(47076005)(356005)(81166007)(70586007)(70206006)(426003)(26005)(1076003)(2616005)(336012)(478600001)(966005)(6916009)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Oct 2023 23:53:10.3751
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 5f1b210c-ea2b-48c3-3b0b-08dbd9a35f41
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:
	BL6PEPF0001AB74.namprd02.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR12MB4483

From: Rahul Singh <rahul.singh@arm.com>

Setting CONFIG_PCI_PASSTHROUGH=y will enable PCI passthrough on ARM, even though
the feature is not yet complete in the current upstream codebase. The purpose of
this is to make it easier to enable the necessary configs (HAS_PCI, HAS_VPCI) for
testing and development of PCI passthrough on ARM.

Since PCI passthrough on ARM is still work in progress at this time, make it
depend on EXPERT.

Signed-off-by: Rahul Singh <rahul.singh@arm.com>
Signed-off-by: Stefano Stabellini <stefano.stabellini@amd.com>
Signed-off-by: Stewart Hildebrand <stewart.hildebrand@amd.com>
Acked-by: Julien Grall <jgrall@amazon.com>
---
(cherry picked from commit 9a08f1f7ce28ec619640ba9ce11018bf443e9a0e from the
 downstream branch [1])

v3->v4:
* no change

v2->v3:
* add Julien's A-b

v1->v2:
* drop "ARM" naming since it is already in an ARM category
* depend on EXPERT instead of UNSUPPORTED

Changes from downstream to v1:
* depends on ARM_64 (Stefano)
* Don't select HAS_VPCI_GUEST_SUPPORT since this config option is not currently
  used in the upstream codebase. This will want to be re-added here once the
  vpci series [2] is merged.
* Don't select ARM_SMMU_V3 since this option can already be selected
  independently. While PCI passthrough on ARM depends on an SMMU, it does not
  depend on a particular version or variant of an SMMU.
* Don't select HAS_ITS since this option can already be selected independently.
  HAS_ITS may want to be added here once the MSI series [1] is merged.
* Don't select LATE_HWDOM since this option is unrelated to PCI passthrough.

[1] https://gitlab.com/xen-project/people/bmarquis/xen-arm-poc/-/commits/poc/pci-passthrough
[2] https://lists.xenproject.org/archives/html/xen-devel/2023-08/msg02361.html
---
 xen/arch/arm/Kconfig | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/xen/arch/arm/Kconfig b/xen/arch/arm/Kconfig
index 2939db429b78..5ff68e5d5979 100644
--- a/xen/arch/arm/Kconfig
+++ b/xen/arch/arm/Kconfig
@@ -190,6 +190,15 @@ config STATIC_SHM
 	help
 	  This option enables statically shared memory on a dom0less system.
 
+config PCI_PASSTHROUGH
+	bool "PCI passthrough" if EXPERT
+	depends on ARM_64
+	select HAS_PCI
+	select HAS_VPCI
+	default n
+	help
+	  This option enables PCI device passthrough
+
 endmenu
 
 menu "ARM errata workaround via the alternative framework"
-- 
2.42.0



From xen-devel-bounces@lists.xenproject.org Mon Oct 30 23:53:35 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 23:53:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625424.974688 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxc4c-0000x3-Pn; Mon, 30 Oct 2023 23:53:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625424.974688; Mon, 30 Oct 2023 23:53: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 1qxc4c-0000ww-Ma; Mon, 30 Oct 2023 23:53:34 +0000
Received: by outflank-mailman (input) for mailman id 625424;
 Mon, 30 Oct 2023 23:53: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=j9+r=GM=amd.com=Stewart.Hildebrand@srs-se1.protection.inumbo.net>)
 id 1qxc4b-00009Y-GR
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 23:53:33 +0000
Received: from NAM11-DM6-obe.outbound.protection.outlook.com
 (mail-dm6nam11on20625.outbound.protection.outlook.com
 [2a01:111:f400:7eaa::625])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 86f32cfb-777f-11ee-9b0e-b553b5be7939;
 Tue, 31 Oct 2023 00:53:31 +0100 (CET)
Received: from MW4PR04CA0232.namprd04.prod.outlook.com (2603:10b6:303:87::27)
 by SA1PR12MB8598.namprd12.prod.outlook.com (2603:10b6:806:253::21)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.26; Mon, 30 Oct
 2023 23:53:27 +0000
Received: from CO1PEPF000042A7.namprd03.prod.outlook.com
 (2603:10b6:303:87:cafe::61) by MW4PR04CA0232.outlook.office365.com
 (2603:10b6:303:87::27) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.28 via Frontend
 Transport; Mon, 30 Oct 2023 23:53:26 +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.6933.15 via Frontend Transport; Mon, 30 Oct 2023 23:53:25 +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.32; Mon, 30 Oct
 2023 18:53:24 -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.32; Mon, 30 Oct
 2023 18:53:24 -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.32 via Frontend
 Transport; Mon, 30 Oct 2023 18:53: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: 86f32cfb-777f-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Syl6E7adKLrCkaXTpZwiWcqo7Hvzwujth3y3qPj07F6f9+pHDK7frIGV/EFv+u5RbTb+4XmpUtTcDu1Dco5cpPRphsoKNXMvrnTUSCitBg1xtELZtoOuWpCXcuGYkMdZDE/Cxw+7QzeIP/tNYOIsww1wiMXSpr3QmVk89LrSgoRwnLkU1TJrfcMVcaEaJjCIfFAM8ndla6TbbpoxXRZ72ysxOdM/JK5LBhPn3+HZTORqwrqpSZaBqO0TbvG4Icz0nWjcZXkQWadFQXAaGjswnI1wvFJVQ6fPle5wsXXGN3DxUfRE3+ZzF7G6Q8J24S8ZDf6S1iA+h0sASDrLgeTsMg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=paYgyYFEvCqtRNrRgLjdy+iDeJ6pBAXS6AUnevvjTBg=;
 b=RdV0SJHio93Nw/QhGQtWeF9jV3OXg3SuuDkc41C/ZOZgJQietHMjKdxqDwgHy5SU18nTGDYORV499T24yQhm4XSqEXlNUmnC8YEIJ/FHMotHjkHTmxdtmpWxdd5DHsZTReLXeHbO3RYNTvsDrn14Ie6cOT3eU7tP4gUiFUlHVoJkvAGC9Nh0YcxV3GWVr1KU+7T5SgLgLbo1DicBOpBO1KySIQwZiV+U6ovnCXBcnQWmZSmiDjNWTyQ3EZVd9v8Z2C8oFdF8sPcLhIU0zzCQaEqK4s+POUnXgPrg4uBzPBPDrh5AAGJDUACfsQufD5/OEj8PtOLwADA3nPPyeAOnpg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=temperror (sender ip
 is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org
 smtp.mailfrom=amd.com; dmarc=temperror action=none header.from=amd.com;
 dkim=none (message not signed); arc=none (0)
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=paYgyYFEvCqtRNrRgLjdy+iDeJ6pBAXS6AUnevvjTBg=;
 b=0rfVWQWX5KpJZK9hqQC8c2wrX4KZ70E4U/mNDrLYus2ykdZj5rXpmCZbP5dFHnAmN4PISS+KDxRkjypoQP7G8WOeMIYjfFJvh9iTfyZMEx5uhgOezRfINxDLZLkbz5k4ISwpxE2x3QNTJahJEHv1PkN1tPh+Ecn1KwaJJ88uy8Q=
X-MS-Exchange-Authentication-Results: spf=temperror (sender IP is
 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=temperror action=none header.from=amd.com;
Received-SPF: TempError (protection.outlook.com: error in processing during
 lookup of amd.com: DNS Timeout)
From: Stewart Hildebrand <stewart.hildebrand@amd.com>
To: <xen-devel@lists.xenproject.org>
CC: Stewart Hildebrand <stewart.hildebrand@amd.com>, Wei Liu <wl@xen.org>,
	Anthony PERARD <anthony.perard@citrix.com>, Juergen Gross <jgross@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>, "Christian
 Lindig" <christian.lindig@citrix.com>, David Scott <dave@recoil.org>,
	=?UTF-8?q?Marek=20Marczykowski-G=C3=B3recki?=
	<marmarek@invisiblethingslab.com>, Bertrand Marquis
	<bertrand.marquis@arm.com>, Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>, "Oleksandr
 Andrushchenko" <oleksandr_andrushchenko@epam.com>, Rahul Singh
	<rahul.singh@arm.com>
Subject: [PATCH v4 2/5] xen/vpci: move xen_domctl_createdomain vPCI flag to common
Date: Mon, 30 Oct 2023 19:52:33 -0400
Message-ID: <20231030235240.106998-3-stewart.hildebrand@amd.com>
X-Mailer: git-send-email 2.42.0
In-Reply-To: <20231030235240.106998-1-stewart.hildebrand@amd.com>
References: <20231030235240.106998-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: CO1PEPF000042A7:EE_|SA1PR12MB8598:EE_
X-MS-Office365-Filtering-Correlation-Id: c21365b0-9592-446f-7593-08dbd9a36825
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	cwdLkffRS536UIlrt7RHdgjqgvSZJMJ92QSXpEC9oBaJtN7ibmchGYqiHRGPA/Y+e70w3u20S/KaSJSBxvo+kNgXc05IOhgEx4Bctr6hKDzLnzASV/hlagnGY2ynepHXg0jRAzuCcgSTGQQ5WskDvOyb57dUIFSt2M9dqjJ0v6N0nu/99VOuQl+7FY6NCGWhf5mBoi8JNr3O8KyI0oxHZ3ZGbnOO6euYp2lDAY9B8ZQ52t/6LqBOXQ43jrFkHDyXNBJXc89bQdIak7brCbszM6VEp23K3PmXoSFoCzkSrFAQVd2/BLJOGHnMvPoLWKRRCAGc367GoPpuJLiU8nCF8O+VAt4HbliBmNrnVMwWPp/4yyAU+l7t9LPE/UhiePxcXZk2GUR5gIZTxSTKoYmmFZqflSdrcajJV3NQdoVtc9BZCwWXQCp9aXzS7WHIwAKqugD9902QSacuIhKIOBG97rknw4tu4/dG0g9+NsYXod6NQKSGmcanffASiQcAyMipylPIOBVZyJXZpaIxqQCVlC707TMWhVM4gLw15adHw9ddSkTSgZQcjlETot/dsZg2qchMdWs0MtTpkrPDwI3la0bu7t6LBE9M+Nql+b0EilDUn0v6HTdYdcQqqeCcAxM/3HPnu4S46QZ7za8qn4BhpP7M4YUGibH2t2OCdedpX91RJU3gkIFmHMPemtgHA7wTcGFkGHHIOc5KaHdhhSLVl+vKXJ1k9EIOl+Z+iEnD2Q6wuM964ce56gSDVm/YCVinYknsNQKiQhIHD8UhP7I4K2s634rAxroLkwMY0YwsaNY=
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)(346002)(39860400002)(136003)(230922051799003)(64100799003)(82310400011)(186009)(451199024)(1800799009)(40470700004)(36840700001)(46966006)(26005)(1076003)(2616005)(40480700001)(7416002)(40460700003)(86362001)(82740400003)(81166007)(356005)(36756003)(426003)(336012)(2906002)(30864003)(83380400001)(63370400001)(63350400001)(478600001)(36860700001)(47076005)(6666004)(4326008)(8676002)(8936002)(6916009)(54906003)(316002)(966005)(5660300002)(44832011)(70586007)(70206006)(41300700001)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Oct 2023 23:53:25.1832
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: c21365b0-9592-446f-7593-08dbd9a36825
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: SA1PR12MB8598

Both x86 and ARM need a way at domain creation time to specify whether
the domain needs vPCI emulation. Move the vPCI flag from x86
xen_domctl_createdomain.arch.emulation_flags to the common
xen_domctl_createdomain.flags.

Move has_vpci() macro to common header.

Bump XEN_DOMCTL_INTERFACE_VERSION since we're modifying flags inside
struct xen_domctl_createdomain and xen_arch_domainconfig.

Signed-off-by: Oleksandr Andrushchenko <oleksandr_andrushchenko@epam.com>
Signed-off-by: Rahul Singh <rahul.singh@arm.com>
Signed-off-by: Stewart Hildebrand <stewart.hildebrand@amd.com>
---
v3->v4:
* renamed, was:
  ("xen/arm: pci: plumb xen_arch_domainconfig with pci info")
* reworked: move x86 vPCI flag to common instead of adding another arch
  specific vPCI flag
* folded ("xen/arm: make has_vpci() depend on d->arch.has_vpci") into
  this patch (retain Signed-off-by's from [1] and [2])

v2->v3:
* new patch

[1] https://gitlab.com/xen-project/people/bmarquis/xen-arm-poc/-/commit/27be1729ce8128dbe37275ce7946b2fbd2e5a382
[2] https://github.com/xen-troops/xen/commit/bf12185e6fb2e31db0d8e6ea9ccd8a02abadec17
---
 tools/libs/light/libxl_x86.c      |  5 ++++-
 tools/ocaml/libs/xc/xenctrl.ml    |  2 +-
 tools/ocaml/libs/xc/xenctrl.mli   |  2 +-
 tools/python/xen/lowlevel/xc/xc.c |  5 ++++-
 xen/arch/arm/domain.c             |  3 ++-
 xen/arch/arm/include/asm/domain.h |  3 ---
 xen/arch/x86/domain.c             | 16 ++++++++++------
 xen/arch/x86/include/asm/domain.h |  6 +-----
 xen/arch/x86/setup.c              |  5 +++--
 xen/common/domain.c               | 10 +++++++++-
 xen/include/public/arch-x86/xen.h |  5 +----
 xen/include/public/domctl.h       |  7 +++++--
 xen/include/xen/domain.h          |  2 ++
 13 files changed, 43 insertions(+), 28 deletions(-)

diff --git a/tools/libs/light/libxl_x86.c b/tools/libs/light/libxl_x86.c
index d16573e72cd4..ebce1552accd 100644
--- a/tools/libs/light/libxl_x86.c
+++ b/tools/libs/light/libxl_x86.c
@@ -8,13 +8,16 @@ int libxl__arch_domain_prepare_config(libxl__gc *gc,
 {
     switch(d_config->c_info.type) {
     case LIBXL_DOMAIN_TYPE_HVM:
-        config->arch.emulation_flags = (XEN_X86_EMU_ALL & ~XEN_X86_EMU_VPCI);
+        config->arch.emulation_flags = XEN_X86_EMU_ALL;
+        config->flags &= ~XEN_DOMCTL_CDF_vpci;
         break;
     case LIBXL_DOMAIN_TYPE_PVH:
         config->arch.emulation_flags = XEN_X86_EMU_LAPIC;
+        config->flags &= ~XEN_DOMCTL_CDF_vpci;
         break;
     case LIBXL_DOMAIN_TYPE_PV:
         config->arch.emulation_flags = 0;
+        config->flags &= ~XEN_DOMCTL_CDF_vpci;
         break;
     default:
         abort();
diff --git a/tools/ocaml/libs/xc/xenctrl.ml b/tools/ocaml/libs/xc/xenctrl.ml
index d6c6eb73db44..6f3da9c6e064 100644
--- a/tools/ocaml/libs/xc/xenctrl.ml
+++ b/tools/ocaml/libs/xc/xenctrl.ml
@@ -46,7 +46,6 @@ type x86_arch_emulation_flags =
   | X86_EMU_IOMMU
   | X86_EMU_PIT
   | X86_EMU_USE_PIRQ
-  | X86_EMU_VPCI
 
 type x86_arch_misc_flags =
   | X86_MSR_RELAXED
@@ -70,6 +69,7 @@ type domain_create_flag =
   | CDF_IOMMU
   | CDF_NESTED_VIRT
   | CDF_VPMU
+  | CDF_VPCI
 
 type domain_create_iommu_opts =
   | IOMMU_NO_SHAREPT
diff --git a/tools/ocaml/libs/xc/xenctrl.mli b/tools/ocaml/libs/xc/xenctrl.mli
index 3bfc16edba96..e2dd02bec962 100644
--- a/tools/ocaml/libs/xc/xenctrl.mli
+++ b/tools/ocaml/libs/xc/xenctrl.mli
@@ -40,7 +40,6 @@ type x86_arch_emulation_flags =
   | X86_EMU_IOMMU
   | X86_EMU_PIT
   | X86_EMU_USE_PIRQ
-  | X86_EMU_VPCI
 
 type x86_arch_misc_flags =
   | X86_MSR_RELAXED
@@ -63,6 +62,7 @@ type domain_create_flag =
   | CDF_IOMMU
   | CDF_NESTED_VIRT
   | CDF_VPMU
+  | CDF_VPCI
 
 type domain_create_iommu_opts =
   | IOMMU_NO_SHAREPT
diff --git a/tools/python/xen/lowlevel/xc/xc.c b/tools/python/xen/lowlevel/xc/xc.c
index d3ea350e07b9..e3623cdcb90d 100644
--- a/tools/python/xen/lowlevel/xc/xc.c
+++ b/tools/python/xen/lowlevel/xc/xc.c
@@ -159,7 +159,10 @@ static PyObject *pyxc_domain_create(XcObject *self,
 
 #if defined (__i386) || defined(__x86_64__)
     if ( config.flags & XEN_DOMCTL_CDF_hvm )
-        config.arch.emulation_flags = (XEN_X86_EMU_ALL & ~XEN_X86_EMU_VPCI);
+    {
+        config.arch.emulation_flags = XEN_X86_EMU_ALL;
+        config.flags &= ~XEN_DOMCTL_CDF_vpci;
+    }
 #elif defined (__arm__) || defined(__aarch64__)
     config.arch.gic_version = XEN_DOMCTL_CONFIG_GIC_NATIVE;
 #else
diff --git a/xen/arch/arm/domain.c b/xen/arch/arm/domain.c
index 28e3aaa5e482..1409a4235e13 100644
--- a/xen/arch/arm/domain.c
+++ b/xen/arch/arm/domain.c
@@ -607,7 +607,8 @@ int arch_sanitise_domain_config(struct xen_domctl_createdomain *config)
 {
     unsigned int max_vcpus;
     unsigned int flags_required = (XEN_DOMCTL_CDF_hvm | XEN_DOMCTL_CDF_hap);
-    unsigned int flags_optional = (XEN_DOMCTL_CDF_iommu | XEN_DOMCTL_CDF_vpmu);
+    unsigned int flags_optional = (XEN_DOMCTL_CDF_iommu | XEN_DOMCTL_CDF_vpmu |
+                                   XEN_DOMCTL_CDF_vpci);
     unsigned int sve_vl_bits = sve_decode_vl(config->arch.sve_vl);
 
     if ( (config->flags & ~flags_optional) != flags_required )
diff --git a/xen/arch/arm/include/asm/domain.h b/xen/arch/arm/include/asm/domain.h
index 99e798ffff68..be9ed39c9d42 100644
--- a/xen/arch/arm/include/asm/domain.h
+++ b/xen/arch/arm/include/asm/domain.h
@@ -298,9 +298,6 @@ static inline void arch_vcpu_block(struct vcpu *v) {}
 
 #define arch_vm_assist_valid_mask(d) (1UL << VMASST_TYPE_runstate_update_flag)
 
-/* vPCI is not available on Arm */
-#define has_vpci(d)    ({ (void)(d); false; })
-
 struct arch_vcpu_io {
     struct instr_details dabt_instr; /* when the instruction is decoded */
 };
diff --git a/xen/arch/x86/domain.c b/xen/arch/x86/domain.c
index 3712e36df930..2882fc1081c1 100644
--- a/xen/arch/x86/domain.c
+++ b/xen/arch/x86/domain.c
@@ -712,7 +712,8 @@ int arch_sanitise_domain_config(struct xen_domctl_createdomain *config)
     return 0;
 }
 
-static bool emulation_flags_ok(const struct domain *d, uint32_t emflags)
+static bool emulation_flags_ok(const struct domain *d, uint32_t emflags,
+                               uint32_t cdf)
 {
 #ifdef CONFIG_HVM
     /* This doesn't catch !CONFIG_HVM case but it is better than nothing */
@@ -722,14 +723,17 @@ static bool emulation_flags_ok(const struct domain *d, uint32_t emflags)
     if ( is_hvm_domain(d) )
     {
         if ( is_hardware_domain(d) &&
-             emflags != (X86_EMU_VPCI | X86_EMU_LAPIC | X86_EMU_IOAPIC) )
+             (!( cdf & XEN_DOMCTL_CDF_vpci ) ||
+              emflags != (X86_EMU_LAPIC | X86_EMU_IOAPIC)) )
             return false;
         if ( !is_hardware_domain(d) &&
-             emflags != (X86_EMU_ALL & ~X86_EMU_VPCI) &&
-             emflags != X86_EMU_LAPIC )
+             ((cdf & XEN_DOMCTL_CDF_vpci) ||
+              (emflags != X86_EMU_ALL &&
+               emflags != X86_EMU_LAPIC)) )
             return false;
     }
-    else if ( emflags != 0 && emflags != X86_EMU_PIT )
+    else if ( (cdf & XEN_DOMCTL_CDF_vpci) ||
+              (emflags != 0 && emflags != X86_EMU_PIT) )
     {
         /* PV or classic PVH. */
         return false;
@@ -798,7 +802,7 @@ int arch_domain_create(struct domain *d,
         return -EINVAL;
     }
 
-    if ( !emulation_flags_ok(d, emflags) )
+    if ( !emulation_flags_ok(d, emflags, config->flags) )
     {
         printk(XENLOG_G_ERR "d%d: Xen does not allow %s domain creation "
                "with the current selection of emulators: %#x\n",
diff --git a/xen/arch/x86/include/asm/domain.h b/xen/arch/x86/include/asm/domain.h
index 619e667938ed..cb02a4d1ebb2 100644
--- a/xen/arch/x86/include/asm/domain.h
+++ b/xen/arch/x86/include/asm/domain.h
@@ -471,7 +471,6 @@ struct arch_domain
 #define X86_EMU_VGA      XEN_X86_EMU_VGA
 #define X86_EMU_IOMMU    XEN_X86_EMU_IOMMU
 #define X86_EMU_USE_PIRQ XEN_X86_EMU_USE_PIRQ
-#define X86_EMU_VPCI     XEN_X86_EMU_VPCI
 #else
 #define X86_EMU_LAPIC    0
 #define X86_EMU_HPET     0
@@ -482,7 +481,6 @@ struct arch_domain
 #define X86_EMU_VGA      0
 #define X86_EMU_IOMMU    0
 #define X86_EMU_USE_PIRQ 0
-#define X86_EMU_VPCI     0
 #endif
 
 #define X86_EMU_PIT     XEN_X86_EMU_PIT
@@ -492,8 +490,7 @@ struct arch_domain
                                  X86_EMU_PM | X86_EMU_RTC |             \
                                  X86_EMU_IOAPIC | X86_EMU_PIC |         \
                                  X86_EMU_VGA | X86_EMU_IOMMU |          \
-                                 X86_EMU_PIT | X86_EMU_USE_PIRQ |       \
-                                 X86_EMU_VPCI)
+                                 X86_EMU_PIT | X86_EMU_USE_PIRQ)
 
 #define has_vlapic(d)      (!!((d)->arch.emulation_flags & X86_EMU_LAPIC))
 #define has_vhpet(d)       (!!((d)->arch.emulation_flags & X86_EMU_HPET))
@@ -505,7 +502,6 @@ struct arch_domain
 #define has_viommu(d)      (!!((d)->arch.emulation_flags & X86_EMU_IOMMU))
 #define has_vpit(d)        (!!((d)->arch.emulation_flags & X86_EMU_PIT))
 #define has_pirq(d)        (!!((d)->arch.emulation_flags & X86_EMU_USE_PIRQ))
-#define has_vpci(d)        (!!((d)->arch.emulation_flags & X86_EMU_VPCI))
 
 #define gdt_ldt_pt_idx(v) \
       ((v)->vcpu_id >> (PAGETABLE_ORDER - GDT_LDT_VCPU_SHIFT))
diff --git a/xen/arch/x86/setup.c b/xen/arch/x86/setup.c
index a3d3f797bb1e..58a98acfb1ee 100644
--- a/xen/arch/x86/setup.c
+++ b/xen/arch/x86/setup.c
@@ -892,10 +892,11 @@ static struct domain *__init create_dom0(const module_t *image,
     {
         dom0_cfg.flags |= (XEN_DOMCTL_CDF_hvm |
                            ((hvm_hap_supported() && !opt_dom0_shadow) ?
-                            XEN_DOMCTL_CDF_hap : 0));
+                            XEN_DOMCTL_CDF_hap : 0) |
+                           XEN_DOMCTL_CDF_vpci);
 
         dom0_cfg.arch.emulation_flags |=
-            XEN_X86_EMU_LAPIC | XEN_X86_EMU_IOAPIC | XEN_X86_EMU_VPCI;
+            XEN_X86_EMU_LAPIC | XEN_X86_EMU_IOAPIC;
     }
 
     if ( iommu_enabled )
diff --git a/xen/common/domain.c b/xen/common/domain.c
index 8f9ab01c0cb7..12dc27428972 100644
--- a/xen/common/domain.c
+++ b/xen/common/domain.c
@@ -509,12 +509,14 @@ static int sanitise_domain_config(struct xen_domctl_createdomain *config)
     bool hap = config->flags & XEN_DOMCTL_CDF_hap;
     bool iommu = config->flags & XEN_DOMCTL_CDF_iommu;
     bool vpmu = config->flags & XEN_DOMCTL_CDF_vpmu;
+    bool vpci = config->flags & XEN_DOMCTL_CDF_vpci;
 
     if ( config->flags &
          ~(XEN_DOMCTL_CDF_hvm | XEN_DOMCTL_CDF_hap |
            XEN_DOMCTL_CDF_s3_integrity | XEN_DOMCTL_CDF_oos_off |
            XEN_DOMCTL_CDF_xs_domain | XEN_DOMCTL_CDF_iommu |
-           XEN_DOMCTL_CDF_nested_virt | XEN_DOMCTL_CDF_vpmu) )
+           XEN_DOMCTL_CDF_nested_virt | XEN_DOMCTL_CDF_vpmu |
+           XEN_DOMCTL_CDF_vpci) )
     {
         dprintk(XENLOG_INFO, "Unknown CDF flags %#x\n", config->flags);
         return -EINVAL;
@@ -575,6 +577,12 @@ static int sanitise_domain_config(struct xen_domctl_createdomain *config)
         return -EINVAL;
     }
 
+    if ( vpci && !IS_ENABLED(CONFIG_HAS_VPCI) )
+    {
+        dprintk(XENLOG_INFO, "vPCI requested but not enabled\n");
+        return -EINVAL;
+    }
+
     return arch_sanitise_domain_config(config);
 }
 
diff --git a/xen/include/public/arch-x86/xen.h b/xen/include/public/arch-x86/xen.h
index c0f4551247f4..4cf066761c6b 100644
--- a/xen/include/public/arch-x86/xen.h
+++ b/xen/include/public/arch-x86/xen.h
@@ -283,15 +283,12 @@ struct xen_arch_domainconfig {
 #define XEN_X86_EMU_PIT             (1U<<_XEN_X86_EMU_PIT)
 #define _XEN_X86_EMU_USE_PIRQ       9
 #define XEN_X86_EMU_USE_PIRQ        (1U<<_XEN_X86_EMU_USE_PIRQ)
-#define _XEN_X86_EMU_VPCI           10
-#define XEN_X86_EMU_VPCI            (1U<<_XEN_X86_EMU_VPCI)
 
 #define XEN_X86_EMU_ALL             (XEN_X86_EMU_LAPIC | XEN_X86_EMU_HPET |  \
                                      XEN_X86_EMU_PM | XEN_X86_EMU_RTC |      \
                                      XEN_X86_EMU_IOAPIC | XEN_X86_EMU_PIC |  \
                                      XEN_X86_EMU_VGA | XEN_X86_EMU_IOMMU |   \
-                                     XEN_X86_EMU_PIT | XEN_X86_EMU_USE_PIRQ |\
-                                     XEN_X86_EMU_VPCI)
+                                     XEN_X86_EMU_PIT | XEN_X86_EMU_USE_PIRQ)
     uint32_t emulation_flags;
 
 /*
diff --git a/xen/include/public/domctl.h b/xen/include/public/domctl.h
index a33f9ec32b08..5f3b5579c377 100644
--- a/xen/include/public/domctl.h
+++ b/xen/include/public/domctl.h
@@ -21,7 +21,7 @@
 #include "hvm/save.h"
 #include "memory.h"
 
-#define XEN_DOMCTL_INTERFACE_VERSION 0x00000016
+#define XEN_DOMCTL_INTERFACE_VERSION 0x00000017
 
 /*
  * NB. xen_domctl.domain is an IN/OUT parameter for this operation.
@@ -55,9 +55,12 @@ struct xen_domctl_createdomain {
 #define XEN_DOMCTL_CDF_nested_virt    (1U << _XEN_DOMCTL_CDF_nested_virt)
 /* Should we expose the vPMU to the guest? */
 #define XEN_DOMCTL_CDF_vpmu           (1U << 7)
+/* Should vPCI be enabled for the guest? */
+#define _XEN_DOMCTL_CDF_vpci          8
+#define XEN_DOMCTL_CDF_vpci           (1U<<_XEN_DOMCTL_CDF_vpci)
 
 /* Max XEN_DOMCTL_CDF_* constant.  Used for ABI checking. */
-#define XEN_DOMCTL_CDF_MAX XEN_DOMCTL_CDF_vpmu
+#define XEN_DOMCTL_CDF_MAX XEN_DOMCTL_CDF_vpci
 
     uint32_t flags;
 
diff --git a/xen/include/xen/domain.h b/xen/include/xen/domain.h
index 54d88bf5e34b..17b3429240f3 100644
--- a/xen/include/xen/domain.h
+++ b/xen/include/xen/domain.h
@@ -51,6 +51,8 @@ void arch_get_domain_info(const struct domain *d,
 
 #define is_domain_using_staticmem(d) ((d)->cdf & CDF_staticmem)
 
+#define has_vpci(d) (!!((d)->options & XEN_DOMCTL_CDF_vpci))
+
 /*
  * Arch-specifics.
  */
-- 
2.42.0



From xen-devel-bounces@lists.xenproject.org Mon Oct 30 23:53:49 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 23:53:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625428.974699 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxc4r-0001Z0-2Z; Mon, 30 Oct 2023 23:53:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625428.974699; Mon, 30 Oct 2023 23: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 1qxc4q-0001Yr-Vt; Mon, 30 Oct 2023 23:53:48 +0000
Received: by outflank-mailman (input) for mailman id 625428;
 Mon, 30 Oct 2023 23:53: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=j9+r=GM=amd.com=Stewart.Hildebrand@srs-se1.protection.inumbo.net>)
 id 1qxc4p-0001Gf-D0
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 23:53:47 +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 903caa6b-777f-11ee-98d6-6d05b1d4d9a1;
 Tue, 31 Oct 2023 00:53:46 +0100 (CET)
Received: from BL1P223CA0005.NAMP223.PROD.OUTLOOK.COM (2603:10b6:208:2c4::10)
 by IA1PR12MB7688.namprd12.prod.outlook.com (2603:10b6:208:420::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.28; Mon, 30 Oct
 2023 23:53:41 +0000
Received: from BL6PEPF0001AB75.namprd02.prod.outlook.com
 (2603:10b6:208:2c4:cafe::ce) by BL1P223CA0005.outlook.office365.com
 (2603:10b6:208:2c4::10) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.29 via Frontend
 Transport; Mon, 30 Oct 2023 23:53:41 +0000
Received: from SATLEXMB03.amd.com (165.204.84.17) by
 BL6PEPF0001AB75.mail.protection.outlook.com (10.167.242.168) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6933.15 via Frontend Transport; Mon, 30 Oct 2023 23:53:41 +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.32; Mon, 30 Oct
 2023 18:53:40 -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.32 via Frontend
 Transport; Mon, 30 Oct 2023 18:53: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: 903caa6b-777f-11ee-98d6-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=FfYlW3dKpfNqMfqFT/lNoRDOa4zyyc+zZowpmbUUGeU8siHtazH9q+7v0tab2lJILihcPCnNVcpv6gRtF6gI7FBN235ZTR0rtm2O8SvGApxlpkRki8nTDTwoneMYT/6CKR2J65zKLpYE0MctKS6dAfw6AbNR0Rk9xGH6/QuMjyj1Db5mF1PsEDkgw8f4/W5dCrLzu8hyfhtV3wX4gcBAjjAQO2EODpnKiBVXpp5TrUrfZUbMtcIHde9myOrF5wfrXTrtrkJyoxSmVfeQ7OP65wquWLS5Agu0YWou+Os7ur9xR2ZiZfd76L0gd7o7HHco0f0M2nScoCMm7y1prnG5tg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=w6TYM1i0vSlru/rDee01ixHg5fuu2TI7QkbjK5Jwo0o=;
 b=glECe+uh0nFNduqzPxNwdBjm6NKrH0sZAN+b1X7GXoLdPYeZyI+EP7CkcDH89GoN4hqrMlxigt6boNy33J12oeavwmsG/CmfKBA+VUjKHuJ8/KLu3hKzM39YU6rqQBMQZ52jgNFi9OIE+N7VyU32hv/NGODWJ/WStYaQfekJ7O7gvquQylnd2nn6CJPE+qyw414uIRAOB2GK168y2dya3lI+KJQDhrGQRq/2p34OqGjtFjsGhi58yO2L4mJSu3wnhgw/U1wvIkqI/n+t3ucLVxtO/5oMPQf3An8SA8bnQV7Ig5YsxwtaNjvo6WAdOlAepKFCwsC0eWeE6z+yUAX6hw==
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 (0)
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=w6TYM1i0vSlru/rDee01ixHg5fuu2TI7QkbjK5Jwo0o=;
 b=nJmGigQPcZNox4UaUlW3erapo6tzyxAA4vdCV+juMTnLRRxgZMgYStqOKtzc36WGdQl+bDwmddzbWNi6367F6h1qAqiZJXU3dJvkc2lhNBlPAZeT6cT1Hxskye8UVoNueRjI6odyKZt6mbRRW9Cu2EqfXdLh3UVy0ryRJFaWhAM=
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>, Julien Grall <julien@xen.org>, Bertrand Marquis
	<bertrand.marquis@arm.com>, Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: [PATCH v4 3/5] xen/arm: enable vPCI for dom0
Date: Mon, 30 Oct 2023 19:52:34 -0400
Message-ID: <20231030235240.106998-4-stewart.hildebrand@amd.com>
X-Mailer: git-send-email 2.42.0
In-Reply-To: <20231030235240.106998-1-stewart.hildebrand@amd.com>
References: <20231030235240.106998-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: BL6PEPF0001AB75:EE_|IA1PR12MB7688:EE_
X-MS-Office365-Filtering-Correlation-Id: 290db4b6-73e7-4705-16b7-08dbd9a37184
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	kZOZCypkYDeNxBSIX6C4ZGLkt0oYJBpFqGjiLOKx8AJEKTVUQPGk4CdRWNSh2zDfpYyu1uV0SFjg4yxz1qx3WEnwBvgAgf4f0AXb+Dw03sBvgSYbXd+EI0QUFNYTGhy/ubD5QSrfKQjL8dWW3U+YRTMTcr/S/XtfhnJyOmwyB0dp2++NCerzm3bokeJLsz6NPwC9rxLVlhBHdZ3aKKkbHlYNX9ot/WsC8icOv8s9ZvD7xZnhGeLYsM7LYsaTvORMfnG68irrhC1co4a3i4vh31GrZymFnNxFfpHJj6ex3YzIvHpqyUYtHqfDr5Xs37cCqVRSpg9Bzj2M8IAyXW3aDsRl91OPQReyhPmdod1ilD//KpIkLcEM2JtQXrRXxFa+Dkm3i5XaeyCrRvH46tA2DEKYL6VWPeYqtit0IOBDFwYd114rFejDyK8CVcOZaOab8kK9O5yBVkzmflLao54Au0j89dX/d31MRviNZwQS+uy8diBeN/mNJMD72mYqjmBx1tJYuRWcAM/Dd3kXzKImfG2IbxGfZ5jwoR3H5bVwvTnEap/7742tE/qGMRFfxbBomaEHjkoYl0FMNe4USKpcowEF/NlpP1Jgf03D6siKggaEZiQZ0Ae92Rf4CckoY1M4VztOGxqCTg6LIYxaMCFXJwCUAVRE6et3eOc9RUoN91g1k1M/l1xgploT+mZIEk2jxmqvQzhTXIb3HW8O/iDj72VupxpBKwdF90pVBhLI4EdOntH7e2hHbkdRvBeP0DwAoWKerWDK/SKEVRyJEi4YnQ==
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)(376002)(396003)(230922051799003)(451199024)(1800799009)(186009)(64100799003)(82310400011)(36840700001)(40470700004)(46966006)(5660300002)(6666004)(336012)(426003)(26005)(2616005)(47076005)(83380400001)(1076003)(8936002)(8676002)(44832011)(81166007)(356005)(86362001)(478600001)(40480700001)(40460700003)(36860700001)(54906003)(2906002)(70206006)(70586007)(316002)(6916009)(82740400003)(41300700001)(36756003)(966005)(4326008)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Oct 2023 23:53:41.0123
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 290db4b6-73e7-4705-16b7-08dbd9a37184
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:
	BL6PEPF0001AB75.namprd02.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA1PR12MB7688

Set the vPCI flag in xen_domctl_createdomain to enable vPCI for dom0 if
iommu and PCI passthrough are enabled and there exists a PCI host bridge
in the system.

Adjust pci_host_iterate_bridges_and_count() to count the number of host
bridges if no callback is provided.

Signed-off-by: Stewart Hildebrand <stewart.hildebrand@amd.com>
---
v3->v4:
* depend on iommu_enabled, pci_passthrough_enabled, and whether there
  is a pci host bridge

v2->v3:
* new patch

[1] https://lists.xenproject.org/archives/html/xen-devel/2023-10/msg00475.html
[2] https://lists.xenproject.org/archives/html/xen-devel/2023-10/msg00210.html
---
 xen/arch/arm/domain_build.c        |  6 ++++++
 xen/arch/arm/include/asm/pci.h     |  9 +++++++++
 xen/arch/arm/pci/pci-host-common.c | 11 ++++++++---
 3 files changed, 23 insertions(+), 3 deletions(-)

diff --git a/xen/arch/arm/domain_build.c b/xen/arch/arm/domain_build.c
index 49792dd590ee..4750f5c6ad31 100644
--- a/xen/arch/arm/domain_build.c
+++ b/xen/arch/arm/domain_build.c
@@ -3915,6 +3915,12 @@ void __init create_dom0(void)
             panic("SVE vector length error\n");
     }
 
+    if ( IS_ENABLED(CONFIG_HAS_VPCI) &&
+         iommu_enabled &&
+         is_pci_passthrough_enabled() &&
+         (pci_host_iterate_bridges_and_count(NULL, NULL) > 0) )
+        dom0_cfg.flags |= XEN_DOMCTL_CDF_vpci;
+
     dom0 = domain_create(0, &dom0_cfg, CDF_privileged | CDF_directmap);
     if ( IS_ERR(dom0) )
         panic("Error creating domain 0 (rc = %ld)\n", PTR_ERR(dom0));
diff --git a/xen/arch/arm/include/asm/pci.h b/xen/arch/arm/include/asm/pci.h
index 8cb46f6b7185..4ae4d8cff8bf 100644
--- a/xen/arch/arm/include/asm/pci.h
+++ b/xen/arch/arm/include/asm/pci.h
@@ -154,5 +154,14 @@ static inline int pci_get_new_domain_nr(void)
     return -1;
 }
 
+struct pci_host_bridge;
+
+static inline int pci_host_iterate_bridges_and_count(
+    struct domain *d,
+    int (*cb)(struct domain *d, struct pci_host_bridge *bridge))
+{
+    return 0;
+}
+
 #endif  /*!CONFIG_HAS_PCI*/
 #endif /* __ARM_PCI_H__ */
diff --git a/xen/arch/arm/pci/pci-host-common.c b/xen/arch/arm/pci/pci-host-common.c
index c0faf0f43675..e6a03ae668f8 100644
--- a/xen/arch/arm/pci/pci-host-common.c
+++ b/xen/arch/arm/pci/pci-host-common.c
@@ -319,9 +319,14 @@ int pci_host_iterate_bridges_and_count(struct domain *d,
     {
         int ret;
 
-        ret = cb(d, bridge);
-        if ( ret < 0 )
-            return ret;
+        if ( cb )
+        {
+            ret = cb(d, bridge);
+            if ( ret < 0 )
+                return ret;
+        }
+        else
+            ret = 1;
         count += ret;
     }
     return count;
-- 
2.42.0



From xen-devel-bounces@lists.xenproject.org Mon Oct 30 23:54:04 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 23:54:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625431.974709 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxc56-0002BA-H5; Mon, 30 Oct 2023 23:54:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625431.974709; Mon, 30 Oct 2023 23: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 1qxc56-0002B3-Cr; Mon, 30 Oct 2023 23:54:04 +0000
Received: by outflank-mailman (input) for mailman id 625431;
 Mon, 30 Oct 2023 23:54: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=j9+r=GM=amd.com=Stewart.Hildebrand@srs-se1.protection.inumbo.net>)
 id 1qxc55-00009Y-A7
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 23:54:03 +0000
Received: from NAM04-DM6-obe.outbound.protection.outlook.com
 (mail-dm6nam04on20617.outbound.protection.outlook.com
 [2a01:111:f400:7e8b::617])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 98ec147e-777f-11ee-9b0e-b553b5be7939;
 Tue, 31 Oct 2023 00:54:00 +0100 (CET)
Received: from BL0PR01CA0001.prod.exchangelabs.com (2603:10b6:208:71::14) by
 SA1PR12MB7319.namprd12.prod.outlook.com (2603:10b6:806:2b5::19) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.24; Mon, 30 Oct
 2023 23:53:57 +0000
Received: from BL6PEPF0001AB71.namprd02.prod.outlook.com
 (2603:10b6:208:71:cafe::e) by BL0PR01CA0001.outlook.office365.com
 (2603:10b6:208:71::14) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.28 via Frontend
 Transport; Mon, 30 Oct 2023 23:53:56 +0000
Received: from SATLEXMB03.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.6933.22 via Frontend Transport; Mon, 30 Oct 2023 23:53:56 +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.32; Mon, 30 Oct
 2023 18:53:55 -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.32 via Frontend
 Transport; Mon, 30 Oct 2023 18:53: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: 98ec147e-777f-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=DfpWf7l70nhSaMpg85PxIlTl5R0YEKaPntc0JtUjLlnj/IBgF0Um8YSKVGbjMIoCEzgnlWNRAaDEDRgNTnf/BAReeiRJBr61bMjiwBMZSX8+zhECPmzlNfEhoffkeL5748onj7GLWLz8a+pv72Hj6dW+1A54AutVsR4ShPz4XRGsvLC5Jc9mR5CFAOXnerrn/uvnVq1nLnPtlCgcNJDp3/YHiG4beGlYoKbZ4jlC8v/L6VJ5rfGyHrNNjrZ8ERop5jn9bt8B3Xa23f9SVLD+7pIK4tA4/Qk6F4A12TNI2ksvgyyzg/8HSkFsem59Fkw2aaadDDeS+nuRdV2zSBTepg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=jS463M7ybXNAP2udLjwYqu5FXR0JgJvPA4yJkwmqw18=;
 b=kt0O3QHGST8XQ+CKYeCZqLvGDs3nSnvJ/XG36k5CgWshkzcdIgnF/hKx8PVX7ebbXcWMSU2b7cTde1fUrYe3HzRfVMzXTlP1ZgxjhySg8tybaUE1Sn2xYtEW5LZGFi2RKd2Bfff+xKCJT9x5B55QFKbsrCblp7RTkYJ/GbKIf+oX1EDstbC3zdxbnN/ExhevL8aiky8fEq5bOj2mFK1/IBATr3Cp8mp3AZUq2hlF5CWp4auiG8AogQh/SDh7tJd4SuiSkQvqc9jDR2PYA919TzTBik4oubmslFMOQhHMeyeRd5vdVCeaxKxYnQT6UONiU6/qikFURFI1LuCRr8/m5Q==
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 (0)
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=jS463M7ybXNAP2udLjwYqu5FXR0JgJvPA4yJkwmqw18=;
 b=5NyQVFjKeYFR2+lKxiaO+KR8pj8vj4CiLfUoL4CqyOS/iOLr/RPD3umF3wGrkLdjNVt/mPl3qPqI/KfuHd2JuQNneGQ+opXds3oLsF+gU+OQXHPDNprRnWPTKVjf4L/7I2grwUhNpflmmYV5iBMdJFS82CEBxCnCAlGcMFXs0R0=
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>, Julien Grall <julien@xen.org>, Bertrand Marquis
	<bertrand.marquis@arm.com>, Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Jan Beulich <jbeulich@suse.com>, Paul Durrant <paul@xen.org>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>
Subject: [PATCH v4 4/5] [FUTURE] xen/arm: enable vPCI for domUs
Date: Mon, 30 Oct 2023 19:52:35 -0400
Message-ID: <20231030235240.106998-5-stewart.hildebrand@amd.com>
X-Mailer: git-send-email 2.42.0
In-Reply-To: <20231030235240.106998-1-stewart.hildebrand@amd.com>
References: <20231030235240.106998-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: BL6PEPF0001AB71:EE_|SA1PR12MB7319:EE_
X-MS-Office365-Filtering-Correlation-Id: c601a318-4e04-47ca-b523-08dbd9a37a7c
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	MGCSPsk9Z40HOTa+fbrIlVXoH1aaDfpA2DLrnsnS6K+5ItVGwlRwFssVrHxQQ/8t0XJs/0VLLWZotSZu1GgwUpxGvR7tvFecKOSpCCIaDiG6Hs7o4dRPGat7f3xrJeJPRcTJa+yZtVv3kleDhrAmVnEc/7co7PViVthfTq+ZdMdKY8PIkL/gi02qpfwa9go0/KZnCKvETEXdHn/WcWI9ZPR6hfRLzvvHpr1sxeXIMI9U9AHBAj8CXpEMuEujEsYuXZ9U8h0lRlnw1CRPZzGzDD5+t6Y/ph4dwCrHjAWInf11juNWnO2g92BFrevkNpmAWhI5HkhBMqncP04cvGNrE7owU21hbif2BBVk4O4uO2gxgXEbQ3vDyCqiSVcZ/VyGikxvVIc7ibBr0QvPFQJBWddhuwdiCDJbqwcIudYrFNF8SWKyKyFET1T3qjlCCEqw5btQRtriVMzzIpbskulC9ArrvJHPe2znnV+GCGrUIyJut2qC7W/lyyulQLwh0f5JlXOjUIq6xNumGS7ITxt9zMcPvIPnxXcTwLDVS48d5XRssMtbRMiFugGOEnZFSEs6tmMlcWVUJTK4b/A0CzliMEyoDlNOaD5R0NXsVUJV4SMLDQ8tRiE5MpyEKirc999Gg+oKuQAu6kyDgTgWZbzNeQT0k2Y2QyA0Lfbam2HZTxKr4SXS75OrfPPvE9GsgklKvbPIOqxoZK3NMuMsL2sbsL4fDOVpODnTnoB/y1+iKtWUnMk6NyVj3D7pMafuHPcVQy4Pwjb+HyAOwCqIUYwv3/CtR8YxLK33qv/0JtAwfhM=
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)(39860400002)(136003)(346002)(230173577357003)(230273577357003)(230922051799003)(451199024)(64100799003)(186009)(82310400011)(1800799009)(46966006)(40470700004)(36840700001)(336012)(40480700001)(40460700003)(8676002)(36756003)(86362001)(8936002)(4326008)(356005)(47076005)(82740400003)(44832011)(81166007)(36860700001)(83380400001)(966005)(2616005)(478600001)(54906003)(6916009)(5660300002)(6666004)(70206006)(1076003)(316002)(41300700001)(26005)(2906002)(70586007)(426003)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Oct 2023 23:53:56.0478
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: c601a318-4e04-47ca-b523-08dbd9a37a7c
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:
	BL6PEPF0001AB71.namprd02.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA1PR12MB7319

Select HAS_VPCI_GUEST_SUPPORT in Kconfig for enabling vPCI support for
domUs.

Add checks to fail guest creation if the configuration is invalid.

Signed-off-by: Stewart Hildebrand <stewart.hildebrand@amd.com>
---
As the tag implies, this patch is not intended to be merged (yet).

Note that CONFIG_HAS_VPCI_GUEST_SUPPORT is not currently used in the upstream
code base. It will be used by the vPCI series [1]. This patch is intended to be
merged as part of the vPCI series. I'll coordinate with Volodymyr to include
this in the vPCI series or resend afterwards. Meanwhile, I'll include it here
until the Kconfig and xen_arch_domainconfig prerequisites have been committed.

v3->v4:
* refuse to create domain if configuration is invalid
* split toolstack change into separate patch

v2->v3:
* set pci flags in toolstack

v1->v2:
* new patch

[1] https://lists.xenproject.org/archives/html/xen-devel/2023-08/msg02361.html
---
 xen/arch/arm/Kconfig          |  1 +
 xen/arch/arm/vpci.c           |  8 ++++++++
 xen/drivers/passthrough/pci.c | 10 ++++++++++
 3 files changed, 19 insertions(+)

diff --git a/xen/arch/arm/Kconfig b/xen/arch/arm/Kconfig
index 5ff68e5d5979..3845b238a33f 100644
--- a/xen/arch/arm/Kconfig
+++ b/xen/arch/arm/Kconfig
@@ -195,6 +195,7 @@ config PCI_PASSTHROUGH
 	depends on ARM_64
 	select HAS_PCI
 	select HAS_VPCI
+	select HAS_VPCI_GUEST_SUPPORT
 	default n
 	help
 	  This option enables PCI device passthrough
diff --git a/xen/arch/arm/vpci.c b/xen/arch/arm/vpci.c
index 3bc4bb55082a..61e0edcedea9 100644
--- a/xen/arch/arm/vpci.c
+++ b/xen/arch/arm/vpci.c
@@ -2,6 +2,7 @@
 /*
  * xen/arch/arm/vpci.c
  */
+#include <xen/lib.h>
 #include <xen/sched.h>
 #include <xen/vpci.h>
 
@@ -90,8 +91,15 @@ int domain_vpci_init(struct domain *d)
             return ret;
     }
     else
+    {
+        if ( !IS_ENABLED(CONFIG_HAS_VPCI_GUEST_SUPPORT) )
+        {
+            gdprintk(XENLOG_ERR, "vPCI requested but guest support not enabled\n");
+            return -EINVAL;
+        }
         register_mmio_handler(d, &vpci_mmio_handler,
                               GUEST_VPCI_ECAM_BASE, GUEST_VPCI_ECAM_SIZE, NULL);
+    }
 
     return 0;
 }
diff --git a/xen/drivers/passthrough/pci.c b/xen/drivers/passthrough/pci.c
index 04d00c7c37df..bbdc926eda2c 100644
--- a/xen/drivers/passthrough/pci.c
+++ b/xen/drivers/passthrough/pci.c
@@ -1618,6 +1618,16 @@ int iommu_do_pci_domctl(
         bus = PCI_BUS(machine_sbdf);
         devfn = PCI_DEVFN(machine_sbdf);
 
+        if ( IS_ENABLED(CONFIG_ARM) &&
+             !is_hardware_domain(d) &&
+             !is_system_domain(d) &&
+             (!IS_ENABLED(CONFIG_HAS_VPCI_GUEST_SUPPORT) || !has_vpci(d)) )
+        {
+            printk(XENLOG_G_WARNING "Cannot assign %pp to %pd: vPCI support not enabled\n",
+                   &PCI_SBDF(seg, bus, devfn), d);
+            break;
+        }
+
         pcidevs_lock();
         ret = device_assigned(seg, bus, devfn);
         if ( domctl->cmd == XEN_DOMCTL_test_assign_device )
-- 
2.42.0



From xen-devel-bounces@lists.xenproject.org Mon Oct 30 23:54:21 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 30 Oct 2023 23:54:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625433.974719 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxc5M-0002kU-PE; Mon, 30 Oct 2023 23:54:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625433.974719; Mon, 30 Oct 2023 23:54: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 1qxc5M-0002kN-Lk; Mon, 30 Oct 2023 23:54:20 +0000
Received: by outflank-mailman (input) for mailman id 625433;
 Mon, 30 Oct 2023 23:54: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=j9+r=GM=amd.com=Stewart.Hildebrand@srs-se1.protection.inumbo.net>)
 id 1qxc5L-0001Gf-3k
 for xen-devel@lists.xenproject.org; Mon, 30 Oct 2023 23:54:19 +0000
Received: from NAM02-DM3-obe.outbound.protection.outlook.com
 (mail-dm3nam02on20631.outbound.protection.outlook.com
 [2a01:111:f400:7e83::631])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id a2da9b7d-777f-11ee-98d6-6d05b1d4d9a1;
 Tue, 31 Oct 2023 00:54:18 +0100 (CET)
Received: from MW4P221CA0002.NAMP221.PROD.OUTLOOK.COM (2603:10b6:303:8b::7) by
 PH0PR12MB7887.namprd12.prod.outlook.com (2603:10b6:510:26d::7) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6933.19; Mon, 30 Oct 2023 23:54:13 +0000
Received: from CO1PEPF000042AC.namprd03.prod.outlook.com
 (2603:10b6:303:8b:cafe::3d) by MW4P221CA0002.outlook.office365.com
 (2603:10b6:303:8b::7) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.28 via Frontend
 Transport; Mon, 30 Oct 2023 23:54:13 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 CO1PEPF000042AC.mail.protection.outlook.com (10.167.243.41) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6933.15 via Frontend Transport; Mon, 30 Oct 2023 23:54:12 +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.32; Mon, 30 Oct
 2023 18:54:10 -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.32; Mon, 30 Oct
 2023 16:54:10 -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.32 via Frontend
 Transport; Mon, 30 Oct 2023 18:54: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: a2da9b7d-777f-11ee-98d6-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=EmPH1HjQu9DWY2+R6Iu8JyGqJ1ZOErfrlHwbgCN0omGgGrTsDlHT1JxwEPOlPX+nQQSdP5c+PY9/Ih/zPucjH99eqHeqcdpmHRpcE/iHfuSvWFVOq3fHt6QEMBCT+Rl4yL094AfoVdOigjZgI9bTk077opBwyVD3b9022EaqJRoEeCAkRzdUrreAAKX5KD0bA0qQxaoDN7zUK9Ip4Gx3OSltBmFoGlze0lN0V9uOIAC1/mQ+JUESwhq2G9URViKnZj5qxBzvQr5APA7vSt9n6fFx4FeAkBzQKfj8DMLZ0yNEmc7pzV0HU3fs9g4kmDQm1lIPWVQDFiaeKiUGvzs5oA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=ZcqRDhU+U2f04Uf/nmVGrqD/iilRRWwf9OkeqXO/Q44=;
 b=dUR3FT098V9T/lBZP/xYLTfdF9AAXiKXyELoWkJsfQUHcIRGRRFItijFy4Z+M3lBYbvSz6uNTqBRm2LtSp8qJirBnB83SJUnDrHGNDkVZeoJ51YAFpz17TG4tqcu01+lkJwTH4yBK9s3T6r8EAcVK/NeObN+jmqPZlb6wPReWmv09ywt9W32ZYMmjRhWPVnXilSBsHuGStnXSseL4kpbgWMzR3wXxbRwrqHdzqMyQcDVhNhOPpXfrF+ArlTfmLQYYL/Krz/OjDuB9T5CTmKz3VKvDbT+F7a9SuE+kqkPQmwf10O+Z3BUCFdW2hGkVsyQPmDIu/Dp/Zg6SX6mJHpG7Q==
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 (0)
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=ZcqRDhU+U2f04Uf/nmVGrqD/iilRRWwf9OkeqXO/Q44=;
 b=GAMseXUtWsCo6i52VOL2Y1SqoQmUalQunsVWlfX1oxL9y6QF+6SQgYX0G0fBnafaBth9MxkvN4k3f+NwsEIUEGfrcloc5vxL3fTAvAhV4f05NfLq/qBmmaPHr841nCYgY2UYyQjFh6Vvt1Q6NIwzCnlLjNF9aeg4p/NJIhJ/hn4=
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>, Wei Liu <wl@xen.org>,
	Anthony PERARD <anthony.perard@citrix.com>, Juergen Gross <jgross@suse.com>
Subject: [PATCH v4 5/5] [FUTURE] tools/arm: enable vPCI for domUs
Date: Mon, 30 Oct 2023 19:52:36 -0400
Message-ID: <20231030235240.106998-6-stewart.hildebrand@amd.com>
X-Mailer: git-send-email 2.42.0
In-Reply-To: <20231030235240.106998-1-stewart.hildebrand@amd.com>
References: <20231030235240.106998-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: CO1PEPF000042AC:EE_|PH0PR12MB7887:EE_
X-MS-Office365-Filtering-Correlation-Id: 465df51c-59f6-458c-953b-08dbd9a38476
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	+JrTeFOuuuJmq9HbpuZLojEPc0+AAIhTiNHBkMl2/LGg6MFioOBWO4mbtrnrtgiT41mvSiibqwScfBX6jmt/CviehCPeJS3I0qGjc0VybcAMGwDXXPdv97QcL8dPSrJL95JbDybvtLHZyCRPb7FVBLBoU9fPyZ1QWet+a0yRHrgGZ1E1gb/cYjH2ZX4Krwhy4m4Tc2W1zuurqp1NWjXX62LEcLfT/Js4vjgrtwA6DPX10ls6HTfxdHYiHIx62yy5Q2blj3LVRfxEEdBLNtjVXTVkh3FSdDzivVMqWvyxN310bSZeBjGb6tuni10KuCFPxcivgYK0or+R2mgUV32YQUKFpl8eZyLgUJ8RGq+W+2j5Z7mvLeVaO/6rXbz+m1lQXqsoEApQ7VtRQ9Gy00xNJgSNSUxJ47juQAFfxadVdocqs/eGrp/dSVOXbKpelgre0L+BBZStJdigP6CAzQrMF3RkIfUQrtQgM/G0BwHn6tc6Z4tVqtKuhp1bw86dPGbAJmPQpD/A+WbHr5NdPPq2EJ2GBB4TI1HHvE1sp5ZUzyraisLZinmqBGnRKL7bmlAlT8qu+92kmnj9Eu6rCaVUvdvzx+48HN6+F93ZOZGoKc2rXkm34bDFSATBnRSDwkAWUGXwtaYK6Z9OFMSECho24nZu+X8L0lxvA2rng4xEyob5M49CVKyEiOTYuPeZA5bs31Q7+5hi8yIQC3eGBEjWR6TYSdIsi5NeaFhhxQYrnbFSY9QSSS6m9k97hPGViTyr0mCZrQ8IOb04Z72+n9WQNA==
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)(396003)(376002)(230922051799003)(186009)(1800799009)(64100799003)(82310400011)(451199024)(36840700001)(40470700004)(46966006)(40460700003)(44832011)(40480700001)(2616005)(478600001)(1076003)(6666004)(36756003)(36860700001)(426003)(336012)(86362001)(47076005)(54906003)(26005)(356005)(81166007)(70586007)(8936002)(70206006)(4326008)(8676002)(41300700001)(82740400003)(5660300002)(6916009)(2906002)(316002)(4744005)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Oct 2023 23:54:12.6755
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 465df51c-59f6-458c-953b-08dbd9a38476
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:
	CO1PEPF000042AC.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR12MB7887

Set the vPCI flag in xen_domctl_createdomain to enable vPCI if a pci
device has been specified in the xl domain config file.

Signed-off-by: Stewart Hildebrand <stewart.hildebrand@amd.com>
---
Same story as the patch before this regarding the [FUTURE] tag.

v3->v4:
* split from ("xen/arm: enable vPCI for domUs")
---
 tools/libs/light/libxl_arm.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/tools/libs/light/libxl_arm.c b/tools/libs/light/libxl_arm.c
index 15391917748c..6daed958e598 100644
--- a/tools/libs/light/libxl_arm.c
+++ b/tools/libs/light/libxl_arm.c
@@ -222,6 +222,9 @@ int libxl__arch_domain_prepare_config(libxl__gc *gc,
         config->arch.sve_vl = d_config->b_info.arch_arm.sve_vl / 128U;
     }
 
+    if (d_config->num_pcidevs)
+        config->flags |= XEN_DOMCTL_CDF_vpci;
+
     return 0;
 }
 
-- 
2.42.0



From xen-devel-bounces@lists.xenproject.org Tue Oct 31 00:19:53 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 00:19:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625448.974729 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxcTw-0000O9-AI; Tue, 31 Oct 2023 00:19:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625448.974729; Tue, 31 Oct 2023 00: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 1qxcTw-0000O2-75; Tue, 31 Oct 2023 00:19:44 +0000
Received: by outflank-mailman (input) for mailman id 625448;
 Tue, 31 Oct 2023 00:19: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=YC+N=GN=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qxcTu-0000Nu-QE
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 00:19:42 +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 2e051fb9-7783-11ee-9b0e-b553b5be7939;
 Tue, 31 Oct 2023 01:19:40 +0100 (CET)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by dfw.source.kernel.org (Postfix) with ESMTP id B44B660C41;
 Tue, 31 Oct 2023 00:19:38 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 9325EC433C8;
 Tue, 31 Oct 2023 00:19: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: 2e051fb9-7783-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1698711578;
	bh=KqntrI6yWULYOqoFYjP2QovNdDJFLeRx3oez/l6mcTI=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=mObPa0r3sINbGo40LsSc7nvHUNR3hXs+ZjXhViF1YCKoPuxBTiEZSVviCUHutX4d5
	 CJsTyR2gHbHVBhH+cFfWuKteME8CgZY37/s1sqDWtSns9uPJEX6iKd++/QHzuCS44K
	 vGOesldheWZUdadPb8Ti2z8WfupkrRH2dCWfZdVijuklRAXvrFPmVuljx6eHkEL1NU
	 uViFD8uqf+VZPbfWxtkod6niVIJ8d5m7FyTRp8zdBC6YQPXiLWCNWNc3DR7JsvbW5P
	 hhVL579HWUOoP+I2a60Mm1vhfuP3WVAZ9gbzoNIerRCxBHqDk4j/TL4W8zTt3cJD2t
	 lrN8t12dY0fcg==
Date: Mon, 30 Oct 2023 17:19:36 -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, David Woodhouse <dwmw@amazon.co.uk>
Subject: Re: [PATCH] xen/events: avoid using info_for_irq() in
 xen_send_IPI_one()
In-Reply-To: <20231030142732.1702-1-jgross@suse.com>
Message-ID: <alpine.DEB.2.22.394.2310301719300.1625118@ubuntu-linux-20-04-desktop>
References: <20231030142732.1702-1-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 Mon, 30 Oct 2023, Juergen Gross wrote:
> xen_send_IPI_one() is being used by cpuhp_report_idle_dead() after
> it calls rcu_report_dead(), meaning that any RCU usage by
> xen_send_IPI_one() is a bad idea.
> 
> Unfortunately xen_send_IPI_one() is using notify_remote_via_irq()
> today, which is using irq_get_chip_data() via info_for_irq(). And
> irq_get_chip_data() in turn is using a maple-tree lookup requiring
> RCU.
> 
> Avoid this problem by caching the ipi event channels in another
> percpu variable, allowing the use notify_remote_via_evtchn() in
> xen_send_IPI_one().
> 
> Fixes: 721255b9826b ("genirq: Use a maple tree for interrupt descriptor management")
> Reported-by: David Woodhouse <dwmw@amazon.co.uk>
> Signed-off-by: Juergen Gross <jgross@suse.com>
> Tested-by: David Woodhouse <dwmw@amazon.co.uk>

Acked-by: Stefano Stabellini <sstabellini@kernel.org>


From xen-devel-bounces@lists.xenproject.org Tue Oct 31 02:17:59 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 02:17:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625454.974739 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxeK4-0002YG-6O; Tue, 31 Oct 2023 02:17:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625454.974739; Tue, 31 Oct 2023 02:17: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 1qxeK4-0002Y9-3L; Tue, 31 Oct 2023 02:17:40 +0000
Received: by outflank-mailman (input) for mailman id 625454;
 Tue, 31 Oct 2023 02:17: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=uwBg=GN=invisiblethingslab.com=marmarek@srs-se1.protection.inumbo.net>)
 id 1qxeK2-0002Y2-EA
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 02:17:38 +0000
Received: from out5-smtp.messagingengine.com (out5-smtp.messagingengine.com
 [66.111.4.29]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id a65b1a62-7793-11ee-9b0e-b553b5be7939;
 Tue, 31 Oct 2023 03:17:34 +0100 (CET)
Received: from compute2.internal (compute2.nyi.internal [10.202.2.46])
 by mailout.nyi.internal (Postfix) with ESMTP id 6D5EC5C01E9;
 Mon, 30 Oct 2023 22:17:32 -0400 (EDT)
Received: from mailfrontend2 ([10.202.2.163])
 by compute2.internal (MEProxy); Mon, 30 Oct 2023 22:17:32 -0400
Received: by mail.messagingengine.com (Postfix) with ESMTPA; Mon,
 30 Oct 2023 22:17:31 -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: a65b1a62-7793-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
	invisiblethingslab.com; h=cc:cc:content-transfer-encoding
	:content-type:content-type:date:date:from:from:in-reply-to
	:message-id:mime-version:reply-to:sender:subject:subject:to:to;
	 s=fm3; t=1698718652; x=1698805052; bh=zYMfoQZoxqDRcFBjijlGHhNbY
	0JZtNCtyhnKb84g17Q=; b=A31AKVkPDgdT+w+gVQpGBIsE5PZeRATEYQY8EzIp3
	tevYFDFXfZsbz2UEKCgdROx+YLRx9/dN5kal5iW8qJ+1Jc0n6/bjaKPvi4/cnG94
	rewn+1DMwDE/nzD87kZ4BlNbyssCfZznyfs8azsuoLVb9iPpA7PNcjvxQd8H5CeL
	/1tgwThEu1leUUgD7aneWcxsOaG3KlByAbVjG1vIJ1BrjtvL0GIZdKvEeG9pXsHB
	CcTjgSJl/XNuCOiE+yKnaC/ggNAF8/GWUrVgKi0wpuo70x7MA51nEn92oljTVCgJ
	l5IaGhUUUzSGxmiZ4wcgYLvowKkpCIfSa2odl5k7I6ruQ==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
	messagingengine.com; h=cc:cc:content-transfer-encoding
	:content-type: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=fm3; t=1698718652; x=1698805052; bh=z
	YMfoQZoxqDRcFBjijlGHhNbY0JZtNCtyhnKb84g17Q=; b=tMKFu20R1LNTNuBgd
	OdCn7xaOO+rPfPp7j7iW2mIVU7TUC3ymPDAvOanuPNUZHW+vpjMveve0n2HS5usZ
	S8gQSDpMiVsHFqaZCXqBT5Pd7wjT6W19ZN3n37S35NKU7VmZq2Omn5Cu4JRe4q2M
	Jloo02S/LfVVHQ2RAJqg0vJQOIENsn7vaaV01E+6zaekxODE7ZO6YI3TJ+AdWCp9
	kNMvjZ+/JU4s1cPtnPsakAF4MI0ZB1nL2wjMxWniwFdcGZu0FIt3kAKGR/RNdQIT
	xye3QoHLX5KO5w1M2peULHVal5l78MD8RtDPmXWsvEMJbf+yA8wTDIBZaqZzeVQ1
	RT9uA==
X-ME-Sender: <xms:vGNAZU-5QWmbcIE9_PsM17lISfbsTq5mE82Y-ruN03qg8qn42rcvaA>
    <xme:vGNAZcv8QnxHcz5bAdl-tfGfdavfSVSPlEmqgBDyYEnuXMRdfuacqoWFXUv5m3sLI
    KaLxWAiDEjMcQ>
X-ME-Received: <xmr:vGNAZaBcKCS_Okmidyzqh361KxJQXEhELA5B2dgBd5PD03kfwmyoxG0zV6N5SqDQN-aW0E8AwGXtIFd3ztrlIPw9QsyKsWUJrjXoZ8ui6kC49HiKdaE1>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvkedruddtuddggeegucetufdoteggodetrfdotf
    fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen
    uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne
    cujfgurhephffvvefufffkofggtgfgsehtkeertdertdejnecuhfhrohhmpeforghrvghk
    ucforghrtgiihihkohifshhkihdqifpkrhgvtghkihcuoehmrghrmhgrrhgvkhesihhnvh
    hishhisghlvghthhhinhhgshhlrggsrdgtohhmqeenucggtffrrghtthgvrhhnpeelkefh
    udelteelleelteetveeffeetffekteetjeehlefggeekleeghefhtdehvdenucevlhhush
    htvghrufhiiigvpedtnecurfgrrhgrmhepmhgrihhlfhhrohhmpehmrghrmhgrrhgvkhes
    ihhnvhhishhisghlvghthhhinhhgshhlrggsrdgtohhm
X-ME-Proxy: <xmx:vGNAZUecyhAXdfb_XWjh5PL5E4F_X7mPm9kK51BlwOVS5WdDlLiI-A>
    <xmx:vGNAZZMYZA6TYNi2IjyMMybt3Hz6a1DOzeTFDw_8f29qNzEP7iKF2Q>
    <xmx:vGNAZekkHbEtGwrBIhvTiiZnOuPBSb10K4o0J4WJFaCtslvjjWGgzQ>
    <xmx:vGNAZSaFNJ0hdAlMLF7Qzk4DsDur_m0eBgYHOO3RP_PMFl84T7x_6Q>
Feedback-ID: i1568416f:Fastmail
From: =?UTF-8?q?Marek=20Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>
To: xen-devel@lists.xenproject.org
Cc: Henry Wang <Henry.Wang@arm.com>,
	=?UTF-8?q?Marek=20Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>,
	Doug Goldstein <cardoe@cardoe.com>,
	Stefano Stabellini <sstabellini@kernel.org>
Subject: [PATCH for-4.18 v2] automation: fix race condition in adl-suspend test
Date: Tue, 31 Oct 2023 03:16:53 +0100
Message-ID: <20231031021712.407318-1-marmarek@invisiblethingslab.com>
X-Mailer: git-send-email 2.41.0
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

If system suspends too quickly, the message for the test controller to
wake up the system may be not sent to the console before suspending.
This will cause the test to timeout.

Fix this by calling sync on the console and waiting a bit after printing
the message. The test controller then resumes the system 30s after the
message, so as long as the delay + suspending takes less time it is
okay.

Signed-off-by: Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
---
This is consistent with the observation that sync_console "fixes" the
issue.

Changes in v2:
- add sync /dev/stdout too (Roger)
---
 automation/scripts/qubes-x86-64.sh | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/automation/scripts/qubes-x86-64.sh b/automation/scripts/qubes-x86-64.sh
index 26131b082671..0f00bebdd8c8 100755
--- a/automation/scripts/qubes-x86-64.sh
+++ b/automation/scripts/qubes-x86-64.sh
@@ -54,11 +54,12 @@ until grep 'domU started' /var/log/xen/console/guest-domU.log; do
     sleep 1
 done
 echo \"${wait_and_wakeup}\"
+# let the above message flow to console, then suspend
+sync /dev/stdout
+sleep 5
 set -x
 echo deep > /sys/power/mem_sleep
 echo mem > /sys/power/state
-# now wait for resume
-sleep 5
 xl list
 xl dmesg | grep 'Finishing wakeup from ACPI S3 state' || exit 1
 # check if domU is still alive
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Tue Oct 31 02:22:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 02:22:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625459.974748 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxeOg-0004K3-OW; Tue, 31 Oct 2023 02:22:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625459.974748; Tue, 31 Oct 2023 02:22: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 1qxeOg-0004Jw-LM; Tue, 31 Oct 2023 02:22:26 +0000
Received: by outflank-mailman (input) for mailman id 625459;
 Tue, 31 Oct 2023 02:22: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 1qxeOf-0004IF-CF; Tue, 31 Oct 2023 02:22: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 1qxeOf-0003bg-3G; Tue, 31 Oct 2023 02:22: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 1qxeOe-0004n9-Kl; Tue, 31 Oct 2023 02:22:24 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qxeOe-0001kl-KI; Tue, 31 Oct 2023 02:22: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=TIJPRv07UkEe8l0fDS32JwlpfpcAPMsSdUCNnDs6QVs=; b=KHT1WEYujc1Qo0TfQ8AMCWoPEw
	nIrdJLZSXhk4z0AvvtHTG48cOXPmej7zoMZlo8jfNVzlWh26O/fG+9q8oAZbNr/eOoedvo/DHJGXA
	YaksP2816HzoEgddwEpVO33ey4mYgocH/5YVH4Zfn7JBU3QDbAMb+/1lAVSqUc8JmiXQ=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183617-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 183617: tolerable FAIL - PUSHED
X-Osstest-Failures:
    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-armhf-armhf-libvirt: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:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-xsm:migrate-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-credit1: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-xl-xsm: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-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-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-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:saverestore-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-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-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: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-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=ffc253263a1375a65fa6c9f62a893e9767fbebfa
X-Osstest-Versions-That:
    linux=56567a20b22bdbf85c3e55eee3bf2bd23fa2f108
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 31 Oct 2023 02:22:24 +0000

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

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 183570
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183570
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183570
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183570
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183570
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183570
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183570
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183570
 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          15 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          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-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-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-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-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-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-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-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                ffc253263a1375a65fa6c9f62a893e9767fbebfa
baseline version:
 linux                56567a20b22bdbf85c3e55eee3bf2bd23fa2f108

Last test of basis   183570  2023-10-28 12:28:04 Z    2 days
Failing since        183608  2023-10-29 08:10:06 Z    1 days    3 attempts
Testing same since   183617  2023-10-30 08:36:55 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Al Viro <viro@zeniv.linux.org.uk>
  Alain Volmat <alain.volmat@foss.st.com>
  Alessandro Carminati (Red Hat) <alessandro.carminati@gmail.com>
  Alessandro Carminati <alessandro.carminati@gmail.com>
  Andi Shyti <andi.shyti@kernel.org>
  Andrew Jeffery <andrew@codeconstruct.com.au>
  Andrii Nakryiko <andrii@kernel.org>
  Christoph Hellwig <hch@lst.de>
  Conor Dooley <conor.dooley@microchip.com>
  Dan Carpenter <dan.carpenter@linaro.org>
  Dave Hansen <dave.hansen@linux.intel.com>
  David Lazar <dlazar@gmail.com>
  Dominic Rath <dominic.rath@ibv-augsburg.net>
  Ekansh Gupta <quic_ekangupt@quicinc.com>
  Greg Kroah-Hartman <gregkh@linuxfoundation.org>
  Herve Codina <herve.codina@bootlin.com>
  Ingo Molnar <mingo@kernel.org>
  Jian Zhang <zhangjian.3032@bytedance.com>
  Jinjie Ruan <ruanjinjie@huawei.com>
  Jonathan Cameron <Jonathan.Cameron@huawei.com>
  Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
  Linus Torvalds <torvalds@linux-foundation.org>
  Linus Walleij <linus.walleij@linaro.org>
  Marc Zyngier <maz@kernel.org>
  Marco Pagani <marpagan@redhat.com>
  Marek Szyprowski <m.szyprowski@samsung.com>
  Masami Hiramatsu (Google) <mhiramat@kernel.org>
  Maxime Ripard <mripard@kernel.org>
  O'Griofa, Conall <conall.ogriofa@amd.com>
  Peng Fan <peng.fan@nxp.com>
  Peter Colberg <peter.colberg@intel.com>
  Peter Rosin <peda@axentia.se>
  Peter Zijlstra (Intel) <peterz@infradead.org>
  Peter Zijlstra <peterz@infradead.org>
  Petr Tesarik <petr.tesarik1@huawei-partners.com>
  Robert Hancock <robert.hancock@calian.com>
  Russ Weight <russell.h.weight@intel.com>
  Song Liu <song@kernel.org>
  Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
  Stephen Boyd <sboyd@kernel.org>
  Tetsuo Handa <penguin-kernel@i-love.sakura.ne.jp>
  Thomas Gleixner <tglx@linutronix.de>
  Tony Luck <tony.luck@intel.com>
  Wolfram Sang <wsa@kernel.org>
  Xu Yilun <yilun.xu@intel.com>
  Xu Yilun <yilun.xu@linux.intel.com>
  Yujie Liu <yujie.liu@intel.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
   56567a20b22b..ffc253263a13  ffc253263a1375a65fa6c9f62a893e9767fbebfa -> tested/linux-linus


From xen-devel-bounces@lists.xenproject.org Tue Oct 31 03:29:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 03:29:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625466.974759 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxfR4-0004SE-Lt; Tue, 31 Oct 2023 03:28:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625466.974759; Tue, 31 Oct 2023 03: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 1qxfR4-0004S7-Ir; Tue, 31 Oct 2023 03:28:58 +0000
Received: by outflank-mailman (input) for mailman id 625466;
 Tue, 31 Oct 2023 03:28: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 1qxfR3-0004Rx-Ka; Tue, 31 Oct 2023 03:28: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 1qxfR3-00054Y-As; Tue, 31 Oct 2023 03:28: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 1qxfR2-0007ZH-Vh; Tue, 31 Oct 2023 03:28:57 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qxfR2-0004wi-V8; Tue, 31 Oct 2023 03: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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=1zTrKhHRUGcjLHCYEk0VLFkM6D2M+gQeMqB+cbv5I14=; b=OWbOdd5ahTdF1tKT/r1hfMl8me
	eUkpeHD2mvW+UrH2z/WClrpLWpFdbcij/6NK782xBq0i39LWymCeGxG+MPAIx8T8vykcMYLqYqlzz
	5KmYwudSZcqh0r/PwfAagUUvwShshaTDeaksG5lSUQRWi0/+EaQYJnpjde/E4cXNp1WQ=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183620-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 183620: regressions - trouble: fail/pass/starved
X-Osstest-Failures:
    xen-unstable:test-amd64-i386-examine-uefi:xen-install:fail:regression
    xen-unstable:test-amd64-i386-qemut-rhel6hvm-amd:xen-install:fail:regression
    xen-unstable:test-amd64-i386-pair:xen-install/src_host:fail:regression
    xen-unstable:test-amd64-i386-pair:xen-install/dst_host:fail:regression
    xen-unstable:test-amd64-i386-examine-bios:xen-install:fail:regression
    xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:windows-install: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-qemut-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-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-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2: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-amd64-libvirt:migrate-support-check: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-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-rtds:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds: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-arndale:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-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-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1: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:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:hosts-allocate:starved:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:hosts-allocate:starved:nonblocking
    xen-unstable:test-arm64-arm64-xl:hosts-allocate:starved:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:hosts-allocate:starved:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:hosts-allocate:starved:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:hosts-allocate:starved:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:hosts-allocate:starved:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:hosts-allocate:starved:nonblocking
X-Osstest-Versions-This:
    xen=9659b2a6d73b14620e187f9c626a09323853c459
X-Osstest-Versions-That:
    xen=5415b2b2118bd78d8a04f276a8312f7f0cb1a466
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 31 Oct 2023 03:28:56 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-i386-examine-uefi  6 xen-install              fail REGR. vs. 183615
 test-amd64-i386-qemut-rhel6hvm-amd  7 xen-install        fail REGR. vs. 183615
 test-amd64-i386-pair         10 xen-install/src_host     fail REGR. vs. 183615
 test-amd64-i386-pair         11 xen-install/dst_host     fail REGR. vs. 183615
 test-amd64-i386-examine-bios  6 xen-install              fail REGR. vs. 183615

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemuu-win7-amd64 12 windows-install       fail like 183547
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 183566
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183615
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183615
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183615
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183615
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 183615
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 183615
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183615
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183615
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183615
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 183615
 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      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-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 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-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-amd64-amd64-libvirt-vhd 14 migrate-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-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-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-libvirt-raw 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           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-credit1   3 hosts-allocate               starved  n/a
 test-arm64-arm64-xl-thunderx  3 hosts-allocate               starved  n/a

version targeted for testing:
 xen                  9659b2a6d73b14620e187f9c626a09323853c459
baseline version:
 xen                  5415b2b2118bd78d8a04f276a8312f7f0cb1a466

Last test of basis   183615  2023-10-30 01:53:40 Z    1 days
Testing same since   183620  2023-10-30 13:40:36 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Julien Grall <julien@xen.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                                          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                                  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-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                                 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-examine-uefi                                pass    
 test-amd64-i386-examine-uefi                                 fail    
 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 9659b2a6d73b14620e187f9c626a09323853c459
Author: Julien Grall <julien@xen.org>
Date:   Mon Oct 30 09:23:06 2023 +0000

    Set version to 4.18; return ./autogen.sh
    
    Signed-off-by: Julien Grall <julien@xen.org>

commit 7f48e342988e1cc6c24153e8c2c248741f107f0a
Author: Julien Grall <julien@xen.org>
Date:   Mon Oct 30 09:13:38 2023 +0000

    Revert "Config.mk pin QEMU_UPSTREAM_REVISION (prep for Xen 4.18 RC1)"
    
    The branch is unstable again.
    
    This reverts commit 520d18e0ff7917ef86b6a69c7949f15e6a804f3d.

commit 4294987c7a4b1171b4bb5342f126df0e43a7bd38
Author: Julien Grall <julien@xen.org>
Date:   Mon Oct 30 09:12:49 2023 +0000

    Set version to 4.19; 4.18 has branched
    
    Signed-off-by: Julien Grall <julien@xen.org>
(qemu changes not included)


From xen-devel-bounces@lists.xenproject.org Tue Oct 31 07:44:15 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 07:44:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625480.974787 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxjPq-0002Pj-Ag; Tue, 31 Oct 2023 07:43:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625480.974787; Tue, 31 Oct 2023 07:43: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 1qxjPq-0002Pc-6B; Tue, 31 Oct 2023 07:43:58 +0000
Received: by outflank-mailman (input) for mailman id 625480;
 Tue, 31 Oct 2023 07:43: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=yzb5=GN=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qxjPo-0002PU-N1
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 07:43:56 +0000
Received: from EUR02-DB5-obe.outbound.protection.outlook.com
 (mail-db5eur02on2060e.outbound.protection.outlook.com
 [2a01:111:f400:fe12::60e])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 3d1994b5-77c1-11ee-9b0e-b553b5be7939;
 Tue, 31 Oct 2023 08:43:53 +0100 (CET)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DU2PR04MB9081.eurprd04.prod.outlook.com (2603:10a6:10:2f0::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6954.18; Tue, 31 Oct
 2023 07:43:51 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6954.016; Tue, 31 Oct 2023
 07:43: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: 3d1994b5-77c1-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=HUhDMgd1IPCLjWw/d3t+8FlD9CXvQYZFtDA/ngYzh44GCq63R6zqE9iCaaBInL91l8esnqBa+AcThaYyZVJWmi6ZmaU6TWtnx2tqabKPMDrmf2J+Hg9qdBkV46aySwFljxgezhYt9Jnq8L9NqIlRkMjy1pwvGk9iVefPmV7lkqK+YKjvYlCP6xNOlW4EBt0LcRL9OYyPwCW9mG/hPF/bMiwQyS0eWTddUlLUn+8DlzWVTpJNtc+mUU88fgO34owqybWQtZ9aT+LPyUkx3Xd+BG1SudpcCzaOQLWmmKnEla0zbdXTVJhhnrj/3h/XjvL+0kQ/Eo1/8WO2jZcb+uE7gg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=elwS3m9oWWde0Vtx49vvAl5E1Fi32dRX7lZ44ox6X5Q=;
 b=fHMtAZC2uceFS7MNmgHypYle2u/rp413haF+RXW8TaZFHsiQvsdUYbgVvhxLZsoV6URaps1Ee0JuXisWGGtZj2LBJP/4VhvqMJ934ckFgkOVY++/GXXwyOVsDl5lcIVDGTx3D7LHio3zbQeoA6v6QOY4SJfhVxf15FaA0bXWNCVXaClbQqpgsuZFI590CBtZ72u3Lmk2DlDglDHuvx0vke3FO9oJ+68VvQRhvwE22pQC/KG9ighCHZqHQDIavD4Ue5Xr5d/tzOyELCa/pAGe5yYMWfA7pCmyNpL3fBHA8TWGDaYHqrsk/Sf6EcdLBrQJUWRwhQacikUaBvjWv08/VQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=elwS3m9oWWde0Vtx49vvAl5E1Fi32dRX7lZ44ox6X5Q=;
 b=CqL4NoJ3iaogLwJ1nmSxlDEuAn70lA2TRNpEXa5D3+xqt9Fh2hSp8o7L53J3NeEvGA9iQcw0ay4WLEBrQSk1TPKNJLhlhKAPuCjfb4c2k1vY/WtHO38lXWT5X1uwQsbaWgmjvffkIz2qoH3r2cv6D7+SB2ZpJyIUaOnPqOaKbgQ90hgqSvQOJW+DkZab+yooh9mOEYZNmiNOycJWrdObTADF9olKkv9f7PY3CKvB/Gy+FB1rLhnLVMihbDoBwvsJ2MY+JVi2NrT841aUL46Og19+8RKxvVeY89AYBV9KZ1yL5mDkkSl31RSU1ar/t5ZciCYCvd/5T1i79J3kt9M0Eg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <7c26fb70-6a8c-58a3-6a1d-300dd57b5827@suse.com>
Date: Tue, 31 Oct 2023 08:43:48 +0100
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [XEN PATCH][for-4.19 v4 1/8] xen/include: add macro
 ISOLATE_LOW_BIT
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.cooper3@citrix.com, roger.pau@citrix.com,
 Simone Ballarin <simone.ballarin@bugseng.com>,
 Doug Goldstein <cardoe@cardoe.com>, George Dunlap
 <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Wei Liu <wl@xen.org>, xen-devel@lists.xenproject.org
References: <cover.1698410970.git.nicola.vetrini@bugseng.com>
 <dca236bf9199f596bafb35eb48d81adc280d8cca.1698410970.git.nicola.vetrini@bugseng.com>
 <f88edc35-6b1b-0136-aa1f-6429652c4016@suse.com>
 <alpine.DEB.2.22.394.2310301536390.1625118@ubuntu-linux-20-04-desktop>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <alpine.DEB.2.22.394.2310301536390.1625118@ubuntu-linux-20-04-desktop>
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_|DU2PR04MB9081:EE_
X-MS-Office365-Filtering-Correlation-Id: 5d943bcb-1ffa-4d22-e915-08dbd9e51fe0
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	0ARworeO/jy2KSkBBj2oAF9cV5p5H0NLKesiZ16P7K3fYfuDdp09AEtSit4tEMTdFdn3me3K//OkQUgZWd5wMtKO7JIozAMZnl9XH30P2Jq5fUKJzy54mD9c6Gbtthq1qFw7EYhCragyfRUK+Guk1c8OIARuHBu4P1wijYs19ACn5+1rHAIbGzwJhZDlnoi6A5A6CVzGsudE9tCQijKmUnyxlgeL+6UETQ8HTAE39W3V8jXmeZK/LTEh4O3pPEqM01Aytn4O5XS2+DxmqYQdnnU/6Mxxwn8PmGM2r8EpUHnppZrlfr5oG32N6cdQ2yfUaCHT3bg6E2uLrcVbPPWvlXIBdpNePUG3qt6EgRNZwkHk23nsk1gV3oJkXtacWcTxWF/TOwjCU9HK+qoBp9CDG4XSlDiw+rYcyPfQEzDgNXWTwBrQKyYFMG+0bNXLR21NvbpaI4WkJ0xT1HJhZChCPlkWUEaqDPE9PIB9nhM0PkiY/LCksSoU2DG521xydea1uC5V/MsuiZiNawmO9ZKMID82/5pF2tSaSBg3j6+TVXlVm7VHlWxOVkppL8i/CE6btfm9dYhxfhRDLEpQa4hrEk++SRCi/vV4fQ8g9bTTczSj4Dc2NAS55M2ag8yO/u0eKpkoCJXuqOnaw+3zljS+Hw==
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)(230922051799003)(186009)(1800799009)(451199024)(64100799003)(41300700001)(8936002)(8676002)(4326008)(2906002)(7416002)(5660300002)(478600001)(6486002)(6916009)(316002)(66476007)(54906003)(66556008)(66946007)(36756003)(31686004)(86362001)(31696002)(38100700002)(26005)(2616005)(6666004)(6512007)(6506007)(53546011)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?SGQ4WjRyVDRCZHdGT29TdERwUlNMeExSRHk0dTduWHNDYURZREhHT1JVcE9i?=
 =?utf-8?B?dkt3UVBoeUFNaFplL09VWGlBWDlGdktwSjkxdlNXMFVpbDJML1ovK0x3Y2x4?=
 =?utf-8?B?R3VTMUNGUWZqdHJneHhwN00wNDl4Qm9iWWZvU1pFMVZKdXAvQVZ0MnR2N3du?=
 =?utf-8?B?Y05sQTZRZTA1akc4b0dUbnhkaUtBVWlpZmUwc0VXaEtBRnFmbXVDUEdPRHl3?=
 =?utf-8?B?SFdPelFtNE9BTzN5YWNMNE5wQ2J0RUlRcWVuMWVURmM3UGNwaW5BLzVBSTE2?=
 =?utf-8?B?TmFsUWdFS01Wb3VMWnozVE42UDNOMk5vQzJXVVhtVWtFUmtRUHYvU29FY0xT?=
 =?utf-8?B?aUN5UFpWYTZMWkE0b08vR1NhZEU5VUxYT3RzTWxUbUszS0ZRazMwSDJUd3Bh?=
 =?utf-8?B?bkZCVFF3K3FDZmdnWkpScWk5cjlXNk9rc1M4aVpqZXd6ajJJdnNFSlFJbGxL?=
 =?utf-8?B?R2xQR05kUnZwZmIwZVkrd3BROEowYmtMRlhqaTVsVmlPWC9PNjVUTUM4M3Ax?=
 =?utf-8?B?bUdRaXAzSmlxUFFXRnAvUzVhNWlnWmlzNlNPNzhIMmNpQWMvM0RiKzRSY0hY?=
 =?utf-8?B?NXZFYXYrQUg2RUp1eFpzZ0lINWM1WjRZbi9XeEsvSFJjVC9ZNXc4bjNvUlhp?=
 =?utf-8?B?SlNVd2VCdm5TSnNrVncydjNhRy9ma0xnWTRucnowZUVocVVlb2k5OFRzaHZv?=
 =?utf-8?B?OWMwNk96NFNNcGtOWExnTGU3VWJTMSt4M1dmMFFQbzl1MmVxeFNCWXdhSldr?=
 =?utf-8?B?UzFVOXNOMGxnUHdoY0NGQzl4NkRLUkJZUWdtUEkwVzdkV1NNMnRHYTRuc1or?=
 =?utf-8?B?M0lMaVBHYjZPWnFtVkNiUm01M2hRVGxzN3QxN1lmb25MYnc5RkxvTkJCY0Nl?=
 =?utf-8?B?WW9jWG5Dczkwejc5Smx3V2FEdTc3UktOajhhVzNQVFdwdnhBS1YyY2lHSWRx?=
 =?utf-8?B?SVAzTUhQUnlrRTBtVWV0eGFqY1VSbTBKY1FkdFpqR0dkOER4c01icXRGZmdW?=
 =?utf-8?B?ZzlSMEtWY0JtWHAxTUFTdDlFUDhZcG8rQTE2MWoyL2xCM3VySmR2QWxublZr?=
 =?utf-8?B?TFhDRTY1N3BISjZqSkNBMW5ZM3p4Tm9HaU53WkdJM0FzbGtZUktDL2QvdXBu?=
 =?utf-8?B?ZVM1UlVTRzM4TzZNVmFJR05IRHNQQldCUkpoM1VwcHdoUWhNdVlSemRxNGdV?=
 =?utf-8?B?NTRqa01yeWxOdVU5WjNwSjM1TVhrYUZodURPMXF6TGgwZ3R3ME9qR0M2ajlN?=
 =?utf-8?B?eHhOSVBLd2JMMkFEWktXUFdMWWRTUE94M2JjZ1hRaU01Q1lPTVBqaUlZd3lt?=
 =?utf-8?B?Q0xNbms2WWF2Tm05OGhzRHZMMnl3aFBJODcrQjBqbkEyVmZzanhFRDJUS3d4?=
 =?utf-8?B?cFB0bmdHYWo2K0pveURSalpKQitPUGxlL29MUUFvZGZoTFRGUmtBekE0SkhV?=
 =?utf-8?B?OHpkQlphQjRTZDFHQVBVRjJJR3pia0tPYzl6VmgrMTZpMkRpU2psY0pPWS95?=
 =?utf-8?B?TWxPejNxZ0lucldRWXFZY0VzS0M0TEZwTGVYci9hdnQ2eG90cUdPOW4zNUFh?=
 =?utf-8?B?Zm84aExhYlowZklJK3k1MW1sZ2J4RFAvWGdtT2hFSFlmdDkyeW4zY0dOck5L?=
 =?utf-8?B?NXpmSzFVblZMOHdLdmEwQ3JlUWVLRTFyV2duUk1GdDNpT1dsRUZUNS8zMmFh?=
 =?utf-8?B?S0lyS3ZmTC8yNE9GT3VPNkNnWUZhbTNkN1d1cGZzSEE4NFFXZCtCQTUxTW05?=
 =?utf-8?B?UDV4OENlY1JpVHE5eXAxN2ZvN3RFSGQ2VnlSa2EyQzJlSHFQM3p4N2dPK3Ba?=
 =?utf-8?B?aUx5UVdYMGVKd0ZxZEV6UHkzemMwellzTnJDNmNuVDJBUnlHVTc0NVpoUHJi?=
 =?utf-8?B?VlVnd0V0aGNkSEVZclJ4MFdLNlFFRkJ2Ui9PRGkrOWUxeUZSRStVdmUwU3RT?=
 =?utf-8?B?bDdNUTVRaEZDbXBqQzNmaTQ1TngrRHVZaVBNZEFBQms5RjdiZ0N6d0hMWEox?=
 =?utf-8?B?WFBKblJqN2dBR1lXZzg0VzJ3VnhZS2NtUXNyUzJaMGkyVXFyUHRmbHVaL1NR?=
 =?utf-8?B?STMzU0ptMjBlMnRGOWp1OEJaeTdoTHFvcTJNUTRjTnJ0ZUlBOHU5bTZTVGlk?=
 =?utf-8?Q?NESNGWvhnDZB18os9Xdjf+Pxb?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 5d943bcb-1ffa-4d22-e915-08dbd9e51fe0
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 31 Oct 2023 07:43:50.9891
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: sM3yrPz+LtQayJ5I5pv7Z3c14qMbu+O1KruU66J8UlNUj+aGOvF0RjLE9oKz5SFriRCsDbzahlLePpunyXtoeQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU2PR04MB9081

On 30.10.2023 23:44, Stefano Stabellini wrote:
> On Mon, 30 Oct 2023, Jan Beulich wrote:
>> On 27.10.2023 15:34, Nicola Vetrini wrote:
>>> --- a/xen/include/xen/macros.h
>>> +++ b/xen/include/xen/macros.h
>>> @@ -8,8 +8,14 @@
>>>  #define DIV_ROUND(n, d) (((n) + (d) / 2) / (d))
>>>  #define DIV_ROUND_UP(n, d) (((n) + (d) - 1) / (d))
>>>  
>>> -#define MASK_EXTR(v, m) (((v) & (m)) / ((m) & -(m)))
>>> -#define MASK_INSR(v, m) (((v) * ((m) & -(m))) & (m))
>>> +/*
>>> + * Given an unsigned integer argument, expands to a mask where just the least
>>> + * significant nonzero bit of the argument is set, or 0 if no bits are set.
>>> + */
>>> +#define ISOLATE_LOW_BIT(x) ((x) & -(x))
>>
>> Not even considering future Misra changes (which aiui may require that
>> anyway), this generalization of the macro imo demands that its argument
>> now be evaluated only once.
> 
> Fur sure that would be an improvement, but I don't see a trivial way to
> do it and this issue is also present today before the patch.

This was an issue here for MASK_EXTR() and MASK_INSR(), yes, but the new
macro has wider use, and there was no issue elsewhere so far.

> I think it
> would be better to avoid scope-creeping this patch as we are already at
> v4 for something that was expected to be a trivial mechanical change. I
> would rather review the fix as a separate patch, maybe sent by you as
> you probably have a specific implementation in mind?

#define ISOLATE_LOW_BIT(x) ({ \
    typeof(x) x_ = (x); \
    x_ & -x_; \
})

Hard to see the scope creep here. What I would consider scope creep I
specifically didn't even ask for: I'd like this macro to be overridable
by an arch. Specifically (see my earlier naming hint) I'd like to use
x86's BMI insn BLSI in the context of "x86: allow Kconfig control over
psABI level", when ABI v2 or higher is in use.

Jan


From xen-devel-bounces@lists.xenproject.org Tue Oct 31 07:50:23 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 07:50:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625484.974796 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxjVz-0003wW-3W; Tue, 31 Oct 2023 07:50:19 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625484.974796; Tue, 31 Oct 2023 07:50: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 1qxjVz-0003wP-0s; Tue, 31 Oct 2023 07:50:19 +0000
Received: by outflank-mailman (input) for mailman id 625484;
 Tue, 31 Oct 2023 07:50: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=yzb5=GN=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qxjVx-0003wJ-8y
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 07:50:17 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 (mail-db8eur05on20609.outbound.protection.outlook.com
 [2a01:111:f400:7e1a::609])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 2092978f-77c2-11ee-9b0e-b553b5be7939;
 Tue, 31 Oct 2023 08:50:15 +0100 (CET)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM9PR04MB8068.eurprd04.prod.outlook.com (2603:10a6:20b:3b5::18)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.14; Tue, 31 Oct
 2023 07:50:12 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6954.016; Tue, 31 Oct 2023
 07: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: 2092978f-77c2-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=YgjIG+3fGOPBbnWZS4GxmBP1JQHIUGddB5w5M0y9g3D/33OlNWkOlIlIS7n9vZNpVSJAv4W1HICqYxB2kNNA2YVukO0wusv2/CFY9X2i7QCxHS65CYIBR9RXUKiqKOZmFTTM7YbYZeSjDQtSTwiY+qAb5ZgOFA4MpXPFhYpLPzkNW0hlAY7SR3KagzHaehjw61kATUFaQwppfqK6l7uc80+0hkQURCNNOgY3C09CPr9WKF3fSvoCt68VvCdave7yo+FdJD6sGDiao8FVl3CEs5s70868L5GO7UzFi9S3Lc3ewRJC/a1FUSm4wCBMDyr/9xl9y95WOU+ixQMwPH0KnA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=uzAsxgsE5+0VfgXqQ9RjpWl2mUnzvmQzPxCNezkDT5s=;
 b=eZsvWnJ86qphFRjSt0Ew38LqwojS2YMKfH9BxxY8vyH9FsgvF29MYP4y+D/43td2qiwqsBEdAoWZbb7U8mE3C947XxsbJdkk02eVqRoq8qgiG6GfkK8o+5z6RIIGaQ3x3/VlFvdGBSZ5ZsOcLUz4EY+q1R+nzyCJO2ok5k3kNJAiJiJTQAmmdEB2jldo64R/2Chgo3lUTrrLcDtMlLMU8bAYR1u1V3pTg5wpdLtQmX94/tRxxoFdUKa2vOvwf8QHnz9iiHqfkDgkhI7cX3zyyw4XQ1FKGjq4S7gT1Qj3VjafMb2HR/g0FBYa8Q5yKRmYfTEV+8N44fZDwHdIezpQfQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=uzAsxgsE5+0VfgXqQ9RjpWl2mUnzvmQzPxCNezkDT5s=;
 b=ovBj9yHvoCNe1V9tIdvS0ynYTHgqYg2CAXM6nwlMU8SO7dsxnt+dzo31ZD6hVVyh8lC3y3JuGdY2AXRcgkdlE/+x/FBGTKzDY/8q/KI5sMy3fRU/VPc4P6/uzwH1tBLB3img1PGHskj/rMf4J92rlFb+Kerdo7kx/fFn0rYGFYm/q9bceirHaqYFPZxwSK0IWiKzqTWpjJDuXnQ/3CNDa5mF4c7fusHO2KL9IGgf5/R5Aum6jytWhYMxgeuO7+zbPc7UQ/Z95pWy3FOnm5IqVqBxD/b+CGywZYPwZVOZXjWemVPpiTcTEq/RIw3X70RCNa9SPl5EeoOWTMuN22iA6Q==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <a91fbdc6-1307-dfce-4e5e-351138c49dc6@suse.com>
Date: Tue, 31 Oct 2023 08:50:10 +0100
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [XEN PATCH][for-4.19 v5 2/8] x86: add deviation for asm-only
 functions
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.cooper3@citrix.com, roger.pau@citrix.com,
 Simone Ballarin <simone.ballarin@bugseng.com>,
 Doug Goldstein <cardoe@cardoe.com>, George Dunlap
 <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Wei Liu <wl@xen.org>, Jun Nakajima <jun.nakajima@intel.com>,
 Kevin Tian <kevin.tian@intel.com>, xen-devel@lists.xenproject.org
References: <cover.1698655374.git.nicola.vetrini@bugseng.com>
 <79091a4e450b522aedfdd903ad671e705a933c49.1698655374.git.nicola.vetrini@bugseng.com>
 <20677a35-37ee-d959-78d5-d8f95f443912@suse.com>
 <alpine.DEB.2.22.394.2310301557300.1625118@ubuntu-linux-20-04-desktop>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <alpine.DEB.2.22.394.2310301557300.1625118@ubuntu-linux-20-04-desktop>
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_|AM9PR04MB8068:EE_
X-MS-Office365-Filtering-Correlation-Id: 3ab9af20-c8c9-4bc6-ac5a-08dbd9e60338
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	lbgj8mox85QeGRqiI4oFXIk/ToXPg+hfu6aYFijwxBhW+s67fymMuHRUkynTuFXclngzmUqAhodVZQIuTkSXJZQFKG/E7HqlzRSye9RBkUDVWngKy0iEQjE7nqnpWuEuWswkchel/Eye/jF6PfEyV8un2+hxacAJF+Okfc5wnQoKesj4iH36fTWzyukqn4MocQlvJknEpBtGvXnQ8kvrDocdR4GVnYHO5A9TnecUe1752lYFCE4c6C6Bday9wyAJehECU2JFBNXx04PQTSbWMUF5RKF9mghS16IAZ5JLGNDDXNg6+6voTL4Ts8COjXPpNpDLsrs0x5HuJDb4bfzt7L9TljYH6WQtRnOqCuYGA7O6/SLEdUkHJfFlIYNs1RLMkHUW6L0x0xK5m8K09+r9kpvIlxlxthQNzFhjuAXeRVpk0zwBkr5bvQ4eiydGGCNkIN+tQIna+mIEAjxgxQPghuQoA9Xb3MNHx19GSZkF/YNx3cxYGAu4mON1WiSjig8XupPdFNLRG63OmitYNFDfWvjAOLHQcoPhi9cnFJz0Dm/7LBDjQINDY6uhk7bmm1L8YMRsMc6NNsAIR3+KSPwUpwHD5jftHfNbX8uigok2rSd+xkI3kCRNQtMvLw5QCLYji/jICR2GqqYDKG9rnmQC+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)(376002)(39860400002)(136003)(366004)(396003)(346002)(230922051799003)(186009)(1800799009)(64100799003)(451199024)(83380400001)(6506007)(6512007)(86362001)(53546011)(6486002)(66946007)(26005)(66556008)(478600001)(54906003)(6916009)(66476007)(36756003)(31686004)(38100700002)(2616005)(31696002)(4326008)(8936002)(41300700001)(2906002)(7416002)(316002)(8676002)(5660300002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?TmVBWTl1MU5reVQrS3VIZWs3c3Q4U2FiSHJMS1l3cTlRNU5XbmdaM1FEYXVO?=
 =?utf-8?B?dU45TEE4VnhKL1RPblBoMyt1a3VteWZzMGxlSHRwRXpzYzRpemZaYkdTanI0?=
 =?utf-8?B?RmNaSFlSR3dsOUhHMnlDYWVWSTRPRVNBc2FhZG4wb05aSXZNN2JTUnQrSjRs?=
 =?utf-8?B?NWFHUmowcjBEZ3FxclhIMkFpV0hFdXFhMnNFS3dFWG5uQjFETjZGMzlEd2do?=
 =?utf-8?B?blh2WTMwa1orejhFVVlKekVQbWR3U0N5ZFVJeVZoaFk2aEdSQlUzTUVkMzZl?=
 =?utf-8?B?c1gzVDNnaUZJaW1GYnpVb0MwY3FEa0JhY2FYV3VWR2JTOEsxQmQ4cHVXM3Bm?=
 =?utf-8?B?c0w5SGw4c041V3lSZUxEVzdzd2YyeEVOWTlXSUZBcml6M1MrNVFWMmFJRmlt?=
 =?utf-8?B?SkN4WFdlNE9lU1VXc3JxdWdYQXpiZlRaMGEwRzRoVXdsdHdCNjFBZk9iTlZG?=
 =?utf-8?B?a3R0RFZib2FpaERLTGFrS1lENVJGWlJTZnlPL2NROUFoVGRJUDU1UHJpNU5k?=
 =?utf-8?B?VThza1VRcVhEbzV3OW1VaTFHbDEremIxSEJCMzZHWGwxWFBlQ3l3OHM1ODRF?=
 =?utf-8?B?ODlac2lBSGtEODFqNnoyeXYzMHRDbDlxdnJQU3lwRzRieXlxRGxtTDNFMndV?=
 =?utf-8?B?VkUrR1R2ZWtQYVRYdjQvUFE2MEcxbFJGSWpYY2FhRU9KZklWRVk3QkNVU0s2?=
 =?utf-8?B?Y1ZINHRMR1VTVXNabTBFcHZnMVBDTDlPbHJubW03eTFSTjIvTE9JZlJYSk5L?=
 =?utf-8?B?R3pidjVPZ2xKQ01lOHhKR1pHdW1TSkVEbm9vNVluaUswa0Q2OUlvRnF2cllN?=
 =?utf-8?B?OU80MFVZMlc2WWtkNlNqN3RLdXNTb01uRlMrU0Vwc2JqY3FIUzNZeTI3dlBs?=
 =?utf-8?B?RXhObkYySkZ6ZkhwbkhYL0xuOHVpY0hNOTBsZDBVVmZMYVpRZ21MYWRoaXR1?=
 =?utf-8?B?T1F3QUdqb2JBUXJ4VWtIRUlXUmZCSG5VRXlseW5HcnZ6ZHE5d0pPQXRzWldo?=
 =?utf-8?B?ZndXRlFWV0d1R2tFUFVkSytQdjg2V1BmNkJmM3U3MzdVTkcyVFMzdC9nZUls?=
 =?utf-8?B?K1MwNHpBUjhXL1VJVTZ4YzlOTXBMN2Z4SytldTFrSFhnNHBPaVFTaGRCeU40?=
 =?utf-8?B?SVJKdXkzK1BYYldrUW9ZTlh3enF5MFRjVEptRnNFRFBIR3NzL0FxOWxkaUFV?=
 =?utf-8?B?OXNRbUg5SUpnRTVIdENtUGplRzY0QzNoK2w4ZktNZGd0N2F6NFQrUHBkMDkz?=
 =?utf-8?B?TVllT0NvYXpXWlB1QVRiWTRPb0sraFJsY2hiN2QzS0U4MHY2OHMxODhFY0Er?=
 =?utf-8?B?bFJaL0pyRHJNclg5V1F6TFhLNWt3K2VLM3VKYmEyUmN3UmYxZlRXR3R5MkNF?=
 =?utf-8?B?QnoyNmdMTE94VUU3MDRDaWFoRmhGUkhYR3lTWW95emk0bXM0emxHa2s2Z2F2?=
 =?utf-8?B?MDdHSTB5Zk92cC92Njg4c2h1b0I4UjFYVWRzVVpoa2VaMnBvaUVTVFpIUjZO?=
 =?utf-8?B?QXFueDkwNnpiZDd2TDJMcnBkbTcraU0vL3JXNXpzaDhxcGlZMjBMMmtJQ3dt?=
 =?utf-8?B?cnR2V243a0pab3JZcksxK0dlWXd6eGdDZnBWa3BNRGpwcVZCMDZ6TEVzT3Mz?=
 =?utf-8?B?cmhQRUVKaVlhdGVETGNnTUFSenA5TGR6Y1FKZCtUNGR6QjZmY3hPbXJkMWtR?=
 =?utf-8?B?VzdqS2FYVU9oSXErYXZOOGRiSEN6cFhLejN5SFdEV2hFMTZJNS9VWlcxMjNK?=
 =?utf-8?B?eGJkRURXeGlpRlkvYk96NFZFTEE0ZDg0OE1oaldvTEN0MWJmTnFqMldYeW1y?=
 =?utf-8?B?RU1mZTRuTk5vN1BVT3BLc3dKSUtaNUFmczUybFcvcUYxMU1MK3dNU3lpVVVO?=
 =?utf-8?B?aG5nWXYwRE9DSE51N1I0RzZySjZFSXNvSjRpZWFzZVFHUktMQy9URWhuekk5?=
 =?utf-8?B?NVVuMWppVnNRZ3lVYWVPVlNMWXBhSUZBRjNybllGRXJVMTZVZmtEWWxJaldm?=
 =?utf-8?B?ZXdPbmJPTEl1amNSdGJTZ0g1VWEzdWh5YjFkNHcvbHU1SDltamVmcUVGWWVs?=
 =?utf-8?B?aW9MT05UYXkwY0NoOFpBU2VVWE5GcDZ3dHlIWlhVU1pZbEE4b0dqZkFmUnpS?=
 =?utf-8?Q?qrt/q3Cg9WgoGlJSMTh5A+IzU?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 3ab9af20-c8c9-4bc6-ac5a-08dbd9e60338
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 31 Oct 2023 07:50:12.4334
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 5LiXlYyv/BYS7oAEP6ZdtzxkphAzwqXdq+MvNKDRrfv+F5Jwp1EGnCdKSqRR6LqvmfYCa7nBrFyUWCJZ59WHQA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR04MB8068

On 31.10.2023 00:02, Stefano Stabellini wrote:
> On Mon, 30 Oct 2023, Jan Beulich wrote:
>> On 30.10.2023 10:11, Nicola Vetrini wrote:
>>> --- a/automation/eclair_analysis/ECLAIR/deviations.ecl
>>> +++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
>>> @@ -163,6 +163,15 @@ Therefore the absence of prior declarations is safe."
>>>  -config=MC3R1.R8.4,reports+={safe, "first_area(any_loc(file(gcov)))"}
>>>  -doc_end
>>>  
>>> +-doc_begin="Recognize the occurrence of current_stack_pointer as a declaration."
>>> +-file_tag+={asm_defns, "^xen/arch/x86/include/asm/asm_defns\\.h$"}
>>> +-config=MC3R1.R8.4,declarations+={safe, "loc(file(asm_defns))&&^current_stack_pointer$"}
>>> +-doc_end
>>> +
>>> +-doc_begin="asmlinkage is a marker to indicate that the function is only used from asm modules."
>>> +-config=MC3R1.R8.4,declarations+={safe,"loc(text(^.*asmlinkage.*$, -1..0))"}
>>> +-doc_end
>>
>> In the longer run asmlinkage will want using for functions used either way
>> between C and assembly (i.e. C->asm calls as well as asm->C ones). I'd like
>> to ask that the text please allow for that (e.g. s/from/to interface with/).
>>
>>> --- a/xen/arch/x86/hvm/svm/intr.c
>>> +++ b/xen/arch/x86/hvm/svm/intr.c
>>> @@ -123,7 +123,7 @@ static void svm_enable_intr_window(struct vcpu *v, struct hvm_intack intack)
>>>          vmcb, general1_intercepts | GENERAL1_INTERCEPT_VINTR);
>>>  }
>>>  
>>> -void svm_intr_assist(void)
>>> +asmlinkage void svm_intr_assist(void)
>>
>> Nit (here and below): Attributes, unless impossible for some specific
>> reason, should always go between type and identifier. Not all our code
>> is conforming to that, but I think a majority is, and hence you should
>> be able to find ample examples (taking e.g. __init).
> 
> Hi Jan, in general I agree with this principle but I noticed that this
> is not the way Linux uses asmlinkage, a couple of examples:
> 
> asmlinkage void do_page_fault(struct pt_regs *regs);
> asmlinkage const sys_call_ptr_t sys_call_table[];
> 
> Should we go our way or follow Linux on this in terms of code style?

Linux isn't very consistent in attribute placement anyway, and doing it
"randomly" relies on the compiler guys never going to tighten what
attributes mean dependent on their placement (iirc gcc doc has text to
the effect of this possibly changing at any time). Aiui part of the
reason why parsing is more relaxed than it should be is that certain
attributes cannot be placed unambiguously at their nominally dedicated
place.

So my personal view on your question is that we should go our more
consistent way.

Jan


From xen-devel-bounces@lists.xenproject.org Tue Oct 31 08:15:20 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 08:15:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625496.974812 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxju3-0008Cc-GY; Tue, 31 Oct 2023 08:15:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625496.974812; Tue, 31 Oct 2023 08: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 1qxju3-0008CV-Dc; Tue, 31 Oct 2023 08:15:11 +0000
Received: by outflank-mailman (input) for mailman id 625496;
 Tue, 31 Oct 2023 08:15: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=TgTD=GN=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qxju1-0008CP-TB
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 08:15:09 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 9b07bc3c-77c5-11ee-98d6-6d05b1d4d9a1;
 Tue, 31 Oct 2023 09:15:09 +0100 (CET)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id 770754EE073A;
 Tue, 31 Oct 2023 09:15:08 +0100 (CET)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 9b07bc3c-77c5-11ee-98d6-6d05b1d4d9a1
MIME-Version: 1.0
Date: Tue, 31 Oct 2023 09:15:08 +0100
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: Stefano Stabellini <sstabellini@kernel.org>
Cc: Julien Grall <julien@xen.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, Simone Ballarin <simone.ballarin@bugseng.com>, Doug
 Goldstein <cardoe@cardoe.com>, George Dunlap <george.dunlap@citrix.com>, Wei
 Liu <wl@xen.org>, Jun Nakajima <jun.nakajima@intel.com>, Kevin Tian
 <kevin.tian@intel.com>
Subject: Re: [XEN PATCH][for-4.19 v5 2/8] x86: add deviation for asm-only
 functions
In-Reply-To: <alpine.DEB.2.22.394.2310301553280.1625118@ubuntu-linux-20-04-desktop>
References: <cover.1698655374.git.nicola.vetrini@bugseng.com>
 <79091a4e450b522aedfdd903ad671e705a933c49.1698655374.git.nicola.vetrini@bugseng.com>
 <4c5db3e9-cf77-43aa-be7b-df5734104fea@xen.org>
 <alpine.DEB.2.22.394.2310301553280.1625118@ubuntu-linux-20-04-desktop>
Message-ID: <f246ee1adabdee7abd53f3bcd737fc2b@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 2023-10-30 23:54, Stefano Stabellini wrote:
> On Mon, 30 Oct 2023, Julien Grall wrote:
>> Hi Nicola,
>> 
>> On 30/10/2023 09:11, Nicola Vetrini wrote:
>> > As stated in rules.rst, functions used only in asm modules
>> > are allowed to have no prior declaration visible when being
>> > defined, hence these functions are marked with an
>> > 'asmlinkage' macro, which is then deviated for MISRA C:2012
>> > Rule 8.4.
>> 
>> AFAIU, this is a replacement of SAF-1. If so, I would like a 
>> consistent way to
>> address Rule 8.4. So can you write a patch to replace all the use of 
>> SAF-1
>> with asmlinkage and remove SAF-1?
> 
> +1

Ok, no problem

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


From xen-devel-bounces@lists.xenproject.org Tue Oct 31 08:18:36 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 08:18:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625501.974822 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxjxK-0000Nc-Uk; Tue, 31 Oct 2023 08:18:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625501.974822; Tue, 31 Oct 2023 08:18: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 1qxjxK-0000NV-Rp; Tue, 31 Oct 2023 08:18:34 +0000
Received: by outflank-mailman (input) for mailman id 625501;
 Tue, 31 Oct 2023 08:18: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=TgTD=GN=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qxjxJ-0000NP-5N
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 08:18:33 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 143094f3-77c6-11ee-98d6-6d05b1d4d9a1;
 Tue, 31 Oct 2023 09:18:32 +0100 (CET)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id E5FCC4EE073A;
 Tue, 31 Oct 2023 09:18:31 +0100 (CET)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 143094f3-77c6-11ee-98d6-6d05b1d4d9a1
MIME-Version: 1.0
Date: Tue, 31 Oct 2023 09:18:31 +0100
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: Stefano Stabellini <sstabellini@kernel.org>, michal.orzel@amd.com,
 xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, consulting@bugseng.com,
 andrew.cooper3@citrix.com, roger.pau@citrix.com, Simone Ballarin
 <simone.ballarin@bugseng.com>, Doug Goldstein <cardoe@cardoe.com>, George
 Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>, Wei Liu
 <wl@xen.org>, Jun Nakajima <jun.nakajima@intel.com>, Kevin Tian
 <kevin.tian@intel.com>, xen-devel@lists.xenproject.org
Subject: Re: [XEN PATCH][for-4.19 v5 2/8] x86: add deviation for asm-only
 functions
In-Reply-To: <a91fbdc6-1307-dfce-4e5e-351138c49dc6@suse.com>
References: <cover.1698655374.git.nicola.vetrini@bugseng.com>
 <79091a4e450b522aedfdd903ad671e705a933c49.1698655374.git.nicola.vetrini@bugseng.com>
 <20677a35-37ee-d959-78d5-d8f95f443912@suse.com>
 <alpine.DEB.2.22.394.2310301557300.1625118@ubuntu-linux-20-04-desktop>
 <a91fbdc6-1307-dfce-4e5e-351138c49dc6@suse.com>
Message-ID: <68ae1905f2fd345ea0923b31a3065d79@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 2023-10-31 08:50, Jan Beulich wrote:
> On 31.10.2023 00:02, Stefano Stabellini wrote:
>> On Mon, 30 Oct 2023, Jan Beulich wrote:
>>> On 30.10.2023 10:11, Nicola Vetrini wrote:
>>>> --- a/automation/eclair_analysis/ECLAIR/deviations.ecl
>>>> +++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
>>>> @@ -163,6 +163,15 @@ Therefore the absence of prior declarations is 
>>>> safe."
>>>>  -config=MC3R1.R8.4,reports+={safe, 
>>>> "first_area(any_loc(file(gcov)))"}
>>>>  -doc_end
>>>> 
>>>> +-doc_begin="Recognize the occurrence of current_stack_pointer as a 
>>>> declaration."
>>>> +-file_tag+={asm_defns, "^xen/arch/x86/include/asm/asm_defns\\.h$"}
>>>> +-config=MC3R1.R8.4,declarations+={safe, 
>>>> "loc(file(asm_defns))&&^current_stack_pointer$"}
>>>> +-doc_end
>>>> +
>>>> +-doc_begin="asmlinkage is a marker to indicate that the function is 
>>>> only used from asm modules."
>>>> +-config=MC3R1.R8.4,declarations+={safe,"loc(text(^.*asmlinkage.*$, 
>>>> -1..0))"}
>>>> +-doc_end
>>> 
>>> In the longer run asmlinkage will want using for functions used 
>>> either way
>>> between C and assembly (i.e. C->asm calls as well as asm->C ones). 
>>> I'd like
>>> to ask that the text please allow for that (e.g. s/from/to interface 
>>> with/).
>>> 

Will do

>>>> --- a/xen/arch/x86/hvm/svm/intr.c
>>>> +++ b/xen/arch/x86/hvm/svm/intr.c
>>>> @@ -123,7 +123,7 @@ static void svm_enable_intr_window(struct vcpu 
>>>> *v, struct hvm_intack intack)
>>>>          vmcb, general1_intercepts | GENERAL1_INTERCEPT_VINTR);
>>>>  }
>>>> 
>>>> -void svm_intr_assist(void)
>>>> +asmlinkage void svm_intr_assist(void)
>>> 
>>> Nit (here and below): Attributes, unless impossible for some specific
>>> reason, should always go between type and identifier. Not all our 
>>> code
>>> is conforming to that, but I think a majority is, and hence you 
>>> should
>>> be able to find ample examples (taking e.g. __init).
>> 
>> Hi Jan, in general I agree with this principle but I noticed that this
>> is not the way Linux uses asmlinkage, a couple of examples:
>> 
>> asmlinkage void do_page_fault(struct pt_regs *regs);
>> asmlinkage const sys_call_ptr_t sys_call_table[];
>> 
>> Should we go our way or follow Linux on this in terms of code style?
> 
> Linux isn't very consistent in attribute placement anyway, and doing it
> "randomly" relies on the compiler guys never going to tighten what
> attributes mean dependent on their placement (iirc gcc doc has text to
> the effect of this possibly changing at any time). Aiui part of the
> reason why parsing is more relaxed than it should be is that certain
> attributes cannot be placed unambiguously at their nominally dedicated
> place.
> 
> So my personal view on your question is that we should go our more
> consistent way.
> 
> Jan

Ok.

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


From xen-devel-bounces@lists.xenproject.org Tue Oct 31 08:22:43 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 08:22:43 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625506.974833 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxk1H-0001ot-FY; Tue, 31 Oct 2023 08:22:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625506.974833; Tue, 31 Oct 2023 08:22: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 1qxk1H-0001om-CZ; Tue, 31 Oct 2023 08:22:39 +0000
Received: by outflank-mailman (input) for mailman id 625506;
 Tue, 31 Oct 2023 08:22: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=TgTD=GN=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qxk1F-0001of-P1
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 08:22:37 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id a6040762-77c6-11ee-98d6-6d05b1d4d9a1;
 Tue, 31 Oct 2023 09:22:36 +0100 (CET)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id 785834EE073A;
 Tue, 31 Oct 2023 09:22:36 +0100 (CET)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a6040762-77c6-11ee-98d6-6d05b1d4d9a1
MIME-Version: 1.0
Date: Tue, 31 Oct 2023 09:22:36 +0100
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.cooper3@citrix.com, roger.pau@citrix.com, Simone Ballarin
 <simone.ballarin@bugseng.com>, Doug Goldstein <cardoe@cardoe.com>, George
 Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>, Wei Liu
 <wl@xen.org>, Jun Nakajima <jun.nakajima@intel.com>, Kevin Tian
 <kevin.tian@intel.com>, xen-devel@lists.xenproject.org
Subject: Re: [XEN PATCH][for-4.19 v5 2/8] x86: add deviation for asm-only
 functions
In-Reply-To: <20677a35-37ee-d959-78d5-d8f95f443912@suse.com>
References: <cover.1698655374.git.nicola.vetrini@bugseng.com>
 <79091a4e450b522aedfdd903ad671e705a933c49.1698655374.git.nicola.vetrini@bugseng.com>
 <20677a35-37ee-d959-78d5-d8f95f443912@suse.com>
Message-ID: <0e96a194d77d89fbd65537b464664429@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 2023-10-30 16:12, Jan Beulich wrote:
> On 30.10.2023 10:11, Nicola Vetrini wrote:
>> --- a/automation/eclair_analysis/ECLAIR/deviations.ecl
>> +++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
>> @@ -163,6 +163,15 @@ Therefore the absence of prior declarations is 
>> safe."
>>  -config=MC3R1.R8.4,reports+={safe, "first_area(any_loc(file(gcov)))"}
>>  -doc_end
>> 
>> +-doc_begin="Recognize the occurrence of current_stack_pointer as a 
>> declaration."
>> +-file_tag+={asm_defns, "^xen/arch/x86/include/asm/asm_defns\\.h$"}
>> +-config=MC3R1.R8.4,declarations+={safe, 
>> "loc(file(asm_defns))&&^current_stack_pointer$"}
>> +-doc_end
>> +
>> +-doc_begin="asmlinkage is a marker to indicate that the function is 
>> only used from asm modules."
>> +-config=MC3R1.R8.4,declarations+={safe,"loc(text(^.*asmlinkage.*$, 
>> -1..0))"}
>> +-doc_end
> 
> In the longer run asmlinkage will want using for functions used either 
> way
> between C and assembly (i.e. C->asm calls as well as asm->C ones). I'd 
> like
> to ask that the text please allow for that (e.g. s/from/to interface 
> with/).
> 
>> --- a/xen/arch/x86/hvm/svm/intr.c
>> +++ b/xen/arch/x86/hvm/svm/intr.c
>> @@ -123,7 +123,7 @@ static void svm_enable_intr_window(struct vcpu *v, 
>> struct hvm_intack intack)
>>          vmcb, general1_intercepts | GENERAL1_INTERCEPT_VINTR);
>>  }
>> 
>> -void svm_intr_assist(void)
>> +asmlinkage void svm_intr_assist(void)
> 
> Nit (here and below): Attributes, unless impossible for some specific
> reason, should always go between type and identifier. Not all our code
> is conforming to that, but I think a majority is, and hence you should
> be able to find ample examples (taking e.g. __init).
> 
>> --- a/xen/include/xen/compiler.h
>> +++ b/xen/include/xen/compiler.h
>> @@ -159,6 +159,9 @@
>>  # define ASM_FLAG_OUT(yes, no) no
>>  #endif
>> 
>> +/* Mark a function or variable as used only from asm */
>> +#define asmlinkage
> 
> I appreciate this being an immediately "natural" place, but considering
> what we know from Linux I think we ought to allow for arch overrides 
> here
> right away. For that I'm afraid compiler.h isn't best; it may still be
> okay as long as at least an #ifndef is put around it. Imo, however, 
> this
> ought to go into xen/linkage.h, as is being introduced by "common:
> assembly entry point type/size annotations". It's somewhat a shame that
> this and the rest of that series has missed 4.18 ...
> 
> Jan

An #ifndef around what, exactly? Anyway, making (part of) this series 
wait for approval
until the other has been accepted into 4.19 (for which I have no 
specific timeframe)
does not seem that desirable to me.

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


From xen-devel-bounces@lists.xenproject.org Tue Oct 31 08:27:12 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 08:27:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625511.974843 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxk5e-0002j6-1R; Tue, 31 Oct 2023 08:27:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625511.974843; Tue, 31 Oct 2023 08:27: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 1qxk5d-0002iz-Uh; Tue, 31 Oct 2023 08:27:09 +0000
Received: by outflank-mailman (input) for mailman id 625511;
 Tue, 31 Oct 2023 08:27: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=yzb5=GN=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qxk5c-0002it-Jm
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 08:27:08 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur05on2061f.outbound.protection.outlook.com
 [2a01:111:f400:7d00::61f])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 473952c7-77c7-11ee-98d6-6d05b1d4d9a1;
 Tue, 31 Oct 2023 09:27:07 +0100 (CET)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by GV1PR04MB9103.eurprd04.prod.outlook.com (2603:10a6:150:22::22)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6954.16; Tue, 31 Oct
 2023 08:27:03 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6954.016; Tue, 31 Oct 2023
 08:27: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: 473952c7-77c7-11ee-98d6-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=XKBAYJLpn8wgESexsayI5JCgHsbPqCep3pYX0DX1eV/GLRujJFEujFTyxmr+uayMvS7l6KhlQkXPDz2uNDcnoK1uyKUrxSRVyVox01drtYdleQXAe6dYU0/3GNoNkYha4ot+ReAXbgVOblXdbZJuZw1L6yxJ5JCCSpXyizG8edWFuXrkc2l1rfMSE+BXScHvxiUanPeJOy8lz6Wnl8E5Nd9ThqNz6ILr1ah/hbhhDSvX7LQlVP7mxbd1xgyuKGEsyWsoWM3TPni5JFdAHpgjhdcQ/z0lncyh4dZTlaWTbbEm9KOBXMfuv0wGDKQKsdeYafotdMi9aGRB9hfC/8gHmA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=hrga80tquEQ+dISSCnrS4LHWXksW7tVYEjiF4NNaW4U=;
 b=cFxHIF4NTuZ4uwTBvEVtNPL3vdm7Otfhb+e6+nWLgm+CVMynNhqID4Qdi8etNyjQn2rqq4eXi9leUvYDdOYbrvXvBbuQBhr8op4ZhCgqx3QEZ4QzLBy2TW5JWqOpFAzb6T9p5buHR/wvb63GBsq6dxnw2CtUjOKVhWC/K2o5vJyRXJ8pdD6Q0Mw40pwt2lSqMFZGxPX2Gp5Ys1GRFzzKhO1VJJxB/UiwVpHFhG2qakmf7ngeeJIMI+e5AqH26IeviUZIszu7lAD3HIaz3WD/OJnWZ0Zv98FTxekV5sEOCO4Q1kprFrrx9vl9z4WHevcgQ+yGUOwZipWnUjhvAB9QdA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=hrga80tquEQ+dISSCnrS4LHWXksW7tVYEjiF4NNaW4U=;
 b=pyUMWki55zd7v/LtwG4AKMAR7ybp3VepTjONzZnegewU0B8QovS/Gn35+HNabGsXi2kdeTCOToEZNUOzzjjC5dwIKeVHZWjsGej8/WEC67f0Kp38ABnCkRd8GIt6maXaDzPqx6oXWvEqYTywY3ymUAqHpjArZCJtp/sOhu0x3IAVjHvbwpIYkR695rN18F3U9neAvXkRKMiga6t3qRRop/UmtnGcN9Axg3htKkMA02FX2k6pc6g82JV4n1gw+F2BjbvlukQO0xOcaTXKOt5FWuDzsdR0kuyqyi+GnC47lUGydCyb6BHlnY6u30VevY4pNsuf+U9W9HH87zDUVRXmmQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <cb448439-6966-4bcd-1aec-4cbfd1aeedf4@suse.com>
Date: Tue, 31 Oct 2023 09:26:59 +0100
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [XEN PATCH][for-4.19 v5 2/8] x86: add deviation for asm-only
 functions
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.cooper3@citrix.com, roger.pau@citrix.com,
 Simone Ballarin <simone.ballarin@bugseng.com>,
 Doug Goldstein <cardoe@cardoe.com>, George Dunlap
 <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Wei Liu <wl@xen.org>, Jun Nakajima <jun.nakajima@intel.com>,
 Kevin Tian <kevin.tian@intel.com>, xen-devel@lists.xenproject.org
References: <cover.1698655374.git.nicola.vetrini@bugseng.com>
 <79091a4e450b522aedfdd903ad671e705a933c49.1698655374.git.nicola.vetrini@bugseng.com>
 <20677a35-37ee-d959-78d5-d8f95f443912@suse.com>
 <0e96a194d77d89fbd65537b464664429@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <0e96a194d77d89fbd65537b464664429@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0205.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:e5::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_|GV1PR04MB9103:EE_
X-MS-Office365-Filtering-Correlation-Id: 5d5ca7d1-b0fd-495a-d3ae-08dbd9eb282d
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	ct3kET6LMIsHJuOYswsclajeiA25FBgW01NwENx4yndcjazxX22QXfvnqV5JVFHn/jG7LZsTAu0M2yTSVxndVhGwrPz9lt43DqF3NycDfH3uItI7F9gfhMm7EJKxkkS3XNLn9E6FvV85yk9K7x68sLo8e5iRJe4fDUuG/oALlSzVTzKtE7gNlvhNl50lwOSA8dvAbcPz1CpYTHySTbPoWGI8espXuVvDAq1cW+6oh1yN7VFCz+YR5/mht7sgNqEu+5TAgt/U44KNwiXMiff5RcWgkEudBD4yWd1tJHgyCg8gVG7MBRI5/AnGbOE/SeU2b2OXFQUK3AGcds40RML9Xj0+VC1WYHZM+if3o51YDyT0ijoNGlbZ5lMdVZrMFIDfuytZHQbcM0DVTSqwb/1GWNq0NGNPfo+pBtMeA9jGKLQLwSuzPlJTkPdxU7T0FJPVJLrMTXYLU/+xkALZ1mhN7Xa+cgIqVAI+/hQobs7Wl3eAFFUvv143F6PQ8abcArx2VJKSDMH06E8LnRVLuXc8G7/nhLVOZ1NS1ZV2ZpbkIsWR8HU1HkxCTD1hcGfpNP2Pb2EqVwZVA1JCL0WWhK64bCSf2bf7OjOMT500rzw+WHc/0G8LLo8eyJ8G6248+WnGt0ZwMONQKzO2Zvdi9GoeDg==
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)(376002)(39860400002)(346002)(136003)(230922051799003)(1800799009)(64100799003)(186009)(451199024)(31696002)(2906002)(7416002)(66946007)(54906003)(66476007)(66556008)(31686004)(5660300002)(6486002)(6916009)(316002)(478600001)(4001150100001)(8936002)(8676002)(4326008)(41300700001)(66899024)(6506007)(2616005)(53546011)(26005)(83380400001)(6512007)(36756003)(86362001)(38100700002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?aVQ0ZytkU21WeTRmZ2p5SGYwTzh3ZUd0eHYrM3owU0xnL3NHZGpOZGRnSThU?=
 =?utf-8?B?ZVhGUEpzWnBIV3lCRXdJQXIzQmZaRDRQUlFIcDJPRU4xd2g4MnZiYUJwOGZZ?=
 =?utf-8?B?bmd5bWllTWluTlpzYnJBQi94Wjg5NndMK2ViaVhmQ2NzQzE3Q2xlT0loUlM0?=
 =?utf-8?B?T09ocjJoOWpESnlVeVN4SGJrVUZOdEt4UFNuWGU0QlVkaCtqYTBVVGx0TnE1?=
 =?utf-8?B?VmZUT3lxeWdvQW53TlE5Q3hpQjdPNzV3c1kwbWhDOVp6QUQza1BRTmdWK3d5?=
 =?utf-8?B?TFVCbkNtejYwZHNkZzdua2Y0TVBNWkpvZ3NHOU9JR2NPblBHK29wYzFvWUpZ?=
 =?utf-8?B?dzB6Z0JtZFB3d2hXN0hDcVZmTDZwZDNReW5Ya2NldGpXdjVzNTNOVTFCYnQ0?=
 =?utf-8?B?cFlvYURZaDdBc3JUVVFJd1o2eU5TMDVvL2YrRlEyRHBVSjhZQUZvN1R6Nm5T?=
 =?utf-8?B?OTM3YmdJSWpXV1RmL2xYR2pFQ2dYUE5od0hiamdKZURLcGs2ZEZ0T1FTcnFr?=
 =?utf-8?B?NlJickt0OW5NcGwzejRHOTFibmgwSEQ1UlI0OW02OUFORnhrUWNWMkpwUVlp?=
 =?utf-8?B?bWw4V05OaDR3Mjl6TzllOVJRUHJZQ0c2OGh6MWpzTXdzUm04RkZmVWZxUTly?=
 =?utf-8?B?Zk5RM0RJcUk5OEVuK1ZhRUhxd09Eb2s5MDdWV0c2Wm1LUDdlaHBtTHNWaTJM?=
 =?utf-8?B?dForRGFLZEZZWHVLenc3M2ZaaVN1NDJyNWJ5c3p5TkZaTmtGWk1qdlFIQ0xs?=
 =?utf-8?B?OURGS2ZCdCtlQWZhZjRXaVpsaW5iYmdzbGd3amxXVTFJTndVMU0yQzNBdVh3?=
 =?utf-8?B?WTdRaG9jWWdqVHZrdXFKczlEZURDK0NFbVhaMk11THFmVHdDM1lKeFlqaUk2?=
 =?utf-8?B?ZXIxenM2ZFM5UVBVeVJGU01RRG5ZZnZrWVFTVTlyby9VZXYvZXZrOXpuUDV5?=
 =?utf-8?B?S0NqRzdGZy9IN1ppS1JUaFM0aElJOEx3ZXRpWXl2c3RrMW5PVGRRWlBBeVM2?=
 =?utf-8?B?YmNERmxLRHh5aGYxNE5VSU9BdUViaWxEUUN6VlVkYkh5eHN2RjVybEsxOXIx?=
 =?utf-8?B?RDNYakFGbWN5RDNMWHVqNVRVNjcyWnFtanFzK1pBMWVVY0h6TjBmclZOR3ZR?=
 =?utf-8?B?Uk5NMW1veUJ0M21Eakhrb09OWHBzcGFCUUhtcE1JSFZXcmpJZDNCTUtKYUt2?=
 =?utf-8?B?Unl1elVPbnZqcURtamxTRkRyWFZOMTJHVU90V25XbjFETEMrU01RWGVkNGtk?=
 =?utf-8?B?WkxycThvekVlM3ZvUWorTDgrTy9BT29RZlFtcmpoR3pHcnF2c0tZd3RSc08y?=
 =?utf-8?B?WGpoS2cyVkREVHRaeWl3TTJYbUtpK2ZMbG9hWmdFMFh0VzR0RHJ0a2hJMEVD?=
 =?utf-8?B?Zm1DRTZPcjZQUGsrTDdVYUJoTDI4eTFySENiT0pHTEp6T3l3OStxbENmUjFo?=
 =?utf-8?B?dE5hVmxVc3hnN0dqTUx3cktzR1dqODFRSlI2WEdMakloekpzWFpodVEyRSt2?=
 =?utf-8?B?M01KS080Y2RHaUtoVnNZczlQaDJLMlFoMEF1a2NLNGRmMno5dnhjRTd2bGdI?=
 =?utf-8?B?em91bCtxaTF1cDUwWE9raUp5OFZtc1JYcVkrcTd3anhnb3JCcncrWUpEUjN5?=
 =?utf-8?B?SHdSc1FBemNJSTBmWmp0c2NSZVRTWjdjSTFSMUVIajdSdUFWUng1cXF1aEJ5?=
 =?utf-8?B?RXR4bEMwNU1yMFB5OFh4bmRpOS9RR0JtTURwOVE5U0tEMzFSejZaZlJabUpF?=
 =?utf-8?B?b1U0SHZoVWp2dm9IZVhoUmNVVWZBWFdwQVRXSFlyYkJ0MUNpRnVVUzg4QVpE?=
 =?utf-8?B?RzZFZjIzYk1CeUVnVVppTGthVjlVM0VnUDlwSGdLanFDaVVFSHFpcVFPV2Zv?=
 =?utf-8?B?OWZhY2diRjdMTDBqVXB4MnphVGQrR2wrNDlhKzBXR0tUOUVCcHIrUjBkUlJw?=
 =?utf-8?B?MmY3ZElCVjdNa2hWWWlIY3BaV09HbnlXWFRzUW1LTUNuTXNySWkvcEZnbU9P?=
 =?utf-8?B?bU0xTzJ6ekVhODYzVk13M1VqakhYSDZVRjM5NkovNFZGaTU2RGYwTitISmlr?=
 =?utf-8?B?K1NpT1RmVkZ6ZW5XN1Qva0Q2Z0phZkUyR1JBcUFhRWRzbzdTUEdpRDlzWmY4?=
 =?utf-8?Q?MEcxEBRTln3cc71KUOeAaGNXw?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 5d5ca7d1-b0fd-495a-d3ae-08dbd9eb282d
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 31 Oct 2023 08:27:01.8942
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 4mKJWGfBKWH6xM0VAafnYYRvw7AhBJa7SIsHyBj+EMIafp6u7pMStkejPVso4vXcBxNN4cSWZRF6E/D3f/i/Ug==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV1PR04MB9103

On 31.10.2023 09:22, Nicola Vetrini wrote:
> On 2023-10-30 16:12, Jan Beulich wrote:
>> On 30.10.2023 10:11, Nicola Vetrini wrote:
>>> --- a/automation/eclair_analysis/ECLAIR/deviations.ecl
>>> +++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
>>> @@ -163,6 +163,15 @@ Therefore the absence of prior declarations is 
>>> safe."
>>>  -config=MC3R1.R8.4,reports+={safe, "first_area(any_loc(file(gcov)))"}
>>>  -doc_end
>>>
>>> +-doc_begin="Recognize the occurrence of current_stack_pointer as a 
>>> declaration."
>>> +-file_tag+={asm_defns, "^xen/arch/x86/include/asm/asm_defns\\.h$"}
>>> +-config=MC3R1.R8.4,declarations+={safe, 
>>> "loc(file(asm_defns))&&^current_stack_pointer$"}
>>> +-doc_end
>>> +
>>> +-doc_begin="asmlinkage is a marker to indicate that the function is 
>>> only used from asm modules."
>>> +-config=MC3R1.R8.4,declarations+={safe,"loc(text(^.*asmlinkage.*$, 
>>> -1..0))"}
>>> +-doc_end
>>
>> In the longer run asmlinkage will want using for functions used either 
>> way
>> between C and assembly (i.e. C->asm calls as well as asm->C ones). I'd 
>> like
>> to ask that the text please allow for that (e.g. s/from/to interface 
>> with/).
>>
>>> --- a/xen/arch/x86/hvm/svm/intr.c
>>> +++ b/xen/arch/x86/hvm/svm/intr.c
>>> @@ -123,7 +123,7 @@ static void svm_enable_intr_window(struct vcpu *v, 
>>> struct hvm_intack intack)
>>>          vmcb, general1_intercepts | GENERAL1_INTERCEPT_VINTR);
>>>  }
>>>
>>> -void svm_intr_assist(void)
>>> +asmlinkage void svm_intr_assist(void)
>>
>> Nit (here and below): Attributes, unless impossible for some specific
>> reason, should always go between type and identifier. Not all our code
>> is conforming to that, but I think a majority is, and hence you should
>> be able to find ample examples (taking e.g. __init).
>>
>>> --- a/xen/include/xen/compiler.h
>>> +++ b/xen/include/xen/compiler.h
>>> @@ -159,6 +159,9 @@
>>>  # define ASM_FLAG_OUT(yes, no) no
>>>  #endif
>>>
>>> +/* Mark a function or variable as used only from asm */
>>> +#define asmlinkage
>>
>> I appreciate this being an immediately "natural" place, but considering
>> what we know from Linux I think we ought to allow for arch overrides 
>> here
>> right away. For that I'm afraid compiler.h isn't best; it may still be
>> okay as long as at least an #ifndef is put around it. Imo, however, 
>> this
>> ought to go into xen/linkage.h, as is being introduced by "common:
>> assembly entry point type/size annotations". It's somewhat a shame that
>> this and the rest of that series has missed 4.18 ...
> 
> An #ifndef around what, exactly?

The #define. That way at least an arch's config.h can override it.

> Anyway, making (part of) this series 
> wait for approval
> until the other has been accepted into 4.19 (for which I have no 
> specific timeframe)
> does not seem that desirable to me.

It's not ideal, but you or anyone else are free to help that other work
make progress.

Jan


From xen-devel-bounces@lists.xenproject.org Tue Oct 31 08:28:58 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 08:28:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625515.974853 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxk7J-0003Lh-Em; Tue, 31 Oct 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 625515.974853; Tue, 31 Oct 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 1qxk7J-0003La-Be; Tue, 31 Oct 2023 08:28:53 +0000
Received: by outflank-mailman (input) for mailman id 625515;
 Tue, 31 Oct 2023 08:28: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=TgTD=GN=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qxk7I-0003LS-Lj
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 08:28:52 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 84ad59b5-77c7-11ee-9b0e-b553b5be7939;
 Tue, 31 Oct 2023 09:28:50 +0100 (CET)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id 3A0B54EE073A;
 Tue, 31 Oct 2023 09:28:50 +0100 (CET)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 84ad59b5-77c7-11ee-9b0e-b553b5be7939
MIME-Version: 1.0
Date: Tue, 31 Oct 2023 09:28:50 +0100
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: Stefano Stabellini <sstabellini@kernel.org>, michal.orzel@amd.com,
 xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, consulting@bugseng.com,
 andrew.cooper3@citrix.com, roger.pau@citrix.com, Simone Ballarin
 <simone.ballarin@bugseng.com>, Doug Goldstein <cardoe@cardoe.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][for-4.19 v4 1/8] xen/include: add macro
 ISOLATE_LOW_BIT
In-Reply-To: <7c26fb70-6a8c-58a3-6a1d-300dd57b5827@suse.com>
References: <cover.1698410970.git.nicola.vetrini@bugseng.com>
 <dca236bf9199f596bafb35eb48d81adc280d8cca.1698410970.git.nicola.vetrini@bugseng.com>
 <f88edc35-6b1b-0136-aa1f-6429652c4016@suse.com>
 <alpine.DEB.2.22.394.2310301536390.1625118@ubuntu-linux-20-04-desktop>
 <7c26fb70-6a8c-58a3-6a1d-300dd57b5827@suse.com>
Message-ID: <817fab34432c854ce585aba80db77f7c@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 2023-10-31 08:43, Jan Beulich wrote:
> On 30.10.2023 23:44, Stefano Stabellini wrote:
>> On Mon, 30 Oct 2023, Jan Beulich wrote:
>>> On 27.10.2023 15:34, Nicola Vetrini wrote:
>>>> --- a/xen/include/xen/macros.h
>>>> +++ b/xen/include/xen/macros.h
>>>> @@ -8,8 +8,14 @@
>>>>  #define DIV_ROUND(n, d) (((n) + (d) / 2) / (d))
>>>>  #define DIV_ROUND_UP(n, d) (((n) + (d) - 1) / (d))
>>>> 
>>>> -#define MASK_EXTR(v, m) (((v) & (m)) / ((m) & -(m)))
>>>> -#define MASK_INSR(v, m) (((v) * ((m) & -(m))) & (m))
>>>> +/*
>>>> + * Given an unsigned integer argument, expands to a mask where just 
>>>> the least
>>>> + * significant nonzero bit of the argument is set, or 0 if no bits 
>>>> are set.
>>>> + */
>>>> +#define ISOLATE_LOW_BIT(x) ((x) & -(x))
>>> 
>>> Not even considering future Misra changes (which aiui may require 
>>> that
>>> anyway), this generalization of the macro imo demands that its 
>>> argument
>>> now be evaluated only once.
>> 
>> Fur sure that would be an improvement, but I don't see a trivial way 
>> to
>> do it and this issue is also present today before the patch.
> 
> This was an issue here for MASK_EXTR() and MASK_INSR(), yes, but the 
> new
> macro has wider use, and there was no issue elsewhere so far.
> 
>> I think it
>> would be better to avoid scope-creeping this patch as we are already 
>> at
>> v4 for something that was expected to be a trivial mechanical change. 
>> I
>> would rather review the fix as a separate patch, maybe sent by you as
>> you probably have a specific implementation in mind?
> 
> #define ISOLATE_LOW_BIT(x) ({ \
>     typeof(x) x_ = (x); \
>     x_ & -x_; \
> })
> 
> Hard to see the scope creep here. What I would consider scope creep I
> specifically didn't even ask for: I'd like this macro to be overridable
> by an arch. Specifically (see my earlier naming hint) I'd like to use
> x86's BMI insn BLSI in the context of "x86: allow Kconfig control over
> psABI level", when ABI v2 or higher is in use.
> 
> Jan

I appreciate you suggesting an implementation; I'll send a v5 
incorporating it.

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


From xen-devel-bounces@lists.xenproject.org Tue Oct 31 08:33:42 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 08:33:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625521.974863 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxkBv-00052E-Vj; Tue, 31 Oct 2023 08:33:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625521.974863; Tue, 31 Oct 2023 08: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 1qxkBv-000527-T1; Tue, 31 Oct 2023 08:33:39 +0000
Received: by outflank-mailman (input) for mailman id 625521;
 Tue, 31 Oct 2023 08: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=EKKP=GN=bugseng.com=federico.serafini@srs-se1.protection.inumbo.net>)
 id 1qxkBu-000502-6X
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 08:33:38 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 2f9a82ed-77c8-11ee-98d6-6d05b1d4d9a1;
 Tue, 31 Oct 2023 09:33:37 +0100 (CET)
Received: from Dell.homenet.telecomitalia.it
 (host-87-7-132-154.retail.telecomitalia.it [87.7.132.154])
 by support.bugseng.com (Postfix) with ESMTPSA id 9D1AF4EE073A;
 Tue, 31 Oct 2023 09:33:36 +0100 (CET)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 2f9a82ed-77c8-11ee-98d6-6d05b1d4d9a1
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>,
	George Dunlap <george.dunlap@citrix.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>
Subject: [XEN PATCH v2] xen/set_{c,p}x_pminfo: address violations od MISRA C:2012 Rule 8.3
Date: Tue, 31 Oct 2023 09:33:07 +0100
Message-Id: <5624a23d704a2ef4eabc1d741e7e5b52de0362d9.1698740011.git.federico.serafini@bugseng.com>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Make function definitions and declarations consistent.
No functional change.

Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
---
Changes in v2:
- removed unwanted changes to cpu_callback();
- improved code style.
---
 xen/arch/x86/x86_64/cpu_idle.c |  5 +--
 xen/arch/x86/x86_64/cpufreq.c  |  6 ++--
 xen/drivers/cpufreq/cpufreq.c  | 58 ++++++++++++++++------------------
 xen/include/xen/pmstat.h       |  4 +--
 4 files changed, 36 insertions(+), 37 deletions(-)

diff --git a/xen/arch/x86/x86_64/cpu_idle.c b/xen/arch/x86/x86_64/cpu_idle.c
index e2195d57be..fcd6fc0fc2 100644
--- a/xen/arch/x86/x86_64/cpu_idle.c
+++ b/xen/arch/x86/x86_64/cpu_idle.c
@@ -62,7 +62,8 @@ static int copy_from_compat_state(xen_processor_cx_t *xen_state,
     return 0;
 }
 
-long compat_set_cx_pminfo(uint32_t cpu, struct compat_processor_power *power)
+long compat_set_cx_pminfo(uint32_t acpi_id,
+                          struct compat_processor_power *power)
 {
     struct xen_processor_power *xen_power;
     unsigned long xlat_page_current;
@@ -106,5 +107,5 @@ long compat_set_cx_pminfo(uint32_t cpu, struct compat_processor_power *power)
     XLAT_processor_power(xen_power, power);
 #undef XLAT_processor_power_HNDL_states
 
-    return set_cx_pminfo(cpu, xen_power);
+    return set_cx_pminfo(acpi_id, xen_power);
 }
diff --git a/xen/arch/x86/x86_64/cpufreq.c b/xen/arch/x86/x86_64/cpufreq.c
index 9e1e2050da..e4f3d5b436 100644
--- a/xen/arch/x86/x86_64/cpufreq.c
+++ b/xen/arch/x86/x86_64/cpufreq.c
@@ -30,8 +30,8 @@ CHECK_processor_px;
 
 DEFINE_XEN_GUEST_HANDLE(compat_processor_px_t);
 
-int 
-compat_set_px_pminfo(uint32_t cpu, struct compat_processor_performance *perf)
+int compat_set_px_pminfo(uint32_t acpi_id,
+                         struct compat_processor_performance *perf)
 {
     struct xen_processor_performance *xen_perf;
     unsigned long xlat_page_current;
@@ -52,5 +52,5 @@ compat_set_px_pminfo(uint32_t cpu, struct compat_processor_performance *perf)
     XLAT_processor_performance(xen_perf, perf);
 #undef XLAT_processor_performance_HNDL_states
 
-    return set_px_pminfo(cpu, xen_perf);
+    return set_px_pminfo(acpi_id, xen_perf);
 }
diff --git a/xen/drivers/cpufreq/cpufreq.c b/xen/drivers/cpufreq/cpufreq.c
index 6e5c400849..f5c714611e 100644
--- a/xen/drivers/cpufreq/cpufreq.c
+++ b/xen/drivers/cpufreq/cpufreq.c
@@ -457,14 +457,14 @@ static void print_PPC(unsigned int platform_limit)
     printk("\t_PPC: %d\n", platform_limit);
 }
 
-int set_px_pminfo(uint32_t acpi_id, struct xen_processor_performance *dom0_px_info)
+int set_px_pminfo(uint32_t acpi_id, struct xen_processor_performance *perf)
 {
     int ret=0, cpuid;
     struct processor_pminfo *pmpt;
     struct processor_performance *pxpt;
 
     cpuid = get_cpu_id(acpi_id);
-    if ( cpuid < 0 || !dom0_px_info)
+    if ( cpuid < 0 || !perf )
     {
         ret = -EINVAL;
         goto out;
@@ -488,22 +488,22 @@ int set_px_pminfo(uint32_t acpi_id, struct xen_processor_performance *dom0_px_in
     pmpt->acpi_id = acpi_id;
     pmpt->id = cpuid;
 
-    if ( dom0_px_info->flags & XEN_PX_PCT )
+    if ( perf->flags & XEN_PX_PCT )
     {
         /* space_id check */
-        if (dom0_px_info->control_register.space_id != 
-            dom0_px_info->status_register.space_id)
+        if ( perf->control_register.space_id !=
+             perf->status_register.space_id )
         {
             ret = -EINVAL;
             goto out;
         }
 
-        memcpy ((void *)&pxpt->control_register,
-                (void *)&dom0_px_info->control_register,
-                sizeof(struct xen_pct_register));
-        memcpy ((void *)&pxpt->status_register,
-                (void *)&dom0_px_info->status_register,
-                sizeof(struct xen_pct_register));
+        memcpy((void *)&pxpt->control_register,
+               (void *)&perf->control_register,
+               sizeof(struct xen_pct_register));
+        memcpy((void *)&pxpt->status_register,
+               (void *)&perf->status_register,
+               sizeof(struct xen_pct_register));
 
         if ( cpufreq_verbose )
         {
@@ -512,69 +512,67 @@ int set_px_pminfo(uint32_t acpi_id, struct xen_processor_performance *dom0_px_in
         }
     }
 
-    if ( dom0_px_info->flags & XEN_PX_PSS ) 
+    if ( perf->flags & XEN_PX_PSS )
     {
         /* capability check */
-        if (dom0_px_info->state_count <= 1)
+        if ( perf->state_count <= 1 )
         {
             ret = -EINVAL;
             goto out;
         }
 
         if ( !(pxpt->states = xmalloc_array(struct xen_processor_px,
-                        dom0_px_info->state_count)) )
+                                            perf->state_count)) )
         {
             ret = -ENOMEM;
             goto out;
         }
-        if ( copy_from_guest(pxpt->states, dom0_px_info->states,
-                             dom0_px_info->state_count) )
+        if ( copy_from_guest(pxpt->states, perf->states, perf->state_count) )
         {
             ret = -EFAULT;
             goto out;
         }
-        pxpt->state_count = dom0_px_info->state_count;
+        pxpt->state_count = perf->state_count;
 
         if ( cpufreq_verbose )
             print_PSS(pxpt->states,pxpt->state_count);
     }
 
-    if ( dom0_px_info->flags & XEN_PX_PSD )
+    if ( perf->flags & XEN_PX_PSD )
     {
         /* check domain coordination */
-        if (dom0_px_info->shared_type != CPUFREQ_SHARED_TYPE_ALL &&
-            dom0_px_info->shared_type != CPUFREQ_SHARED_TYPE_ANY &&
-            dom0_px_info->shared_type != CPUFREQ_SHARED_TYPE_HW)
+        if ( perf->shared_type != CPUFREQ_SHARED_TYPE_ALL &&
+             perf->shared_type != CPUFREQ_SHARED_TYPE_ANY &&
+             perf->shared_type != CPUFREQ_SHARED_TYPE_HW )
         {
             ret = -EINVAL;
             goto out;
         }
 
-        pxpt->shared_type = dom0_px_info->shared_type;
-        memcpy ((void *)&pxpt->domain_info,
-                (void *)&dom0_px_info->domain_info,
-                sizeof(struct xen_psd_package));
+        pxpt->shared_type = perf->shared_type;
+        memcpy((void *)&pxpt->domain_info,
+               (void *)&perf->domain_info,
+               sizeof(struct xen_psd_package));
 
         if ( cpufreq_verbose )
             print_PSD(&pxpt->domain_info);
     }
 
-    if ( dom0_px_info->flags & XEN_PX_PPC )
+    if ( perf->flags & XEN_PX_PPC )
     {
-        pxpt->platform_limit = dom0_px_info->platform_limit;
+        pxpt->platform_limit = perf->platform_limit;
 
         if ( cpufreq_verbose )
             print_PPC(pxpt->platform_limit);
 
         if ( pxpt->init == XEN_PX_INIT )
         {
-            ret = cpufreq_limit_change(cpuid); 
+            ret = cpufreq_limit_change(cpuid);
             goto out;
         }
     }
 
-    if ( dom0_px_info->flags == ( XEN_PX_PCT | XEN_PX_PSS |
-                XEN_PX_PSD | XEN_PX_PPC ) )
+    if ( perf->flags == ( XEN_PX_PCT | XEN_PX_PSS | XEN_PX_PSD | XEN_PX_PPC ) )
     {
         pxpt->init = XEN_PX_INIT;
 
diff --git a/xen/include/xen/pmstat.h b/xen/include/xen/pmstat.h
index 266bc16d86..43b826ad4d 100644
--- a/xen/include/xen/pmstat.h
+++ b/xen/include/xen/pmstat.h
@@ -5,8 +5,8 @@
 #include <public/platform.h> /* for struct xen_processor_power */
 #include <public/sysctl.h>   /* for struct pm_cx_stat */
 
-int set_px_pminfo(uint32_t cpu, struct xen_processor_performance *perf);
-long set_cx_pminfo(uint32_t cpu, struct xen_processor_power *power);
+int set_px_pminfo(uint32_t acpi_id, struct xen_processor_performance *perf);
+long set_cx_pminfo(uint32_t acpi_id, struct xen_processor_power *power);
 uint32_t pmstat_get_cx_nr(uint32_t cpuid);
 int pmstat_get_cx_stat(uint32_t cpuid, struct pm_cx_stat *stat);
 int pmstat_reset_cx_stat(uint32_t cpuid);
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Tue Oct 31 08:38:16 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 08:38:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625526.974873 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxkGI-0005rx-Hd; Tue, 31 Oct 2023 08:38:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625526.974873; Tue, 31 Oct 2023 08: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 1qxkGI-0005rq-DS; Tue, 31 Oct 2023 08:38:10 +0000
Received: by outflank-mailman (input) for mailman id 625526;
 Tue, 31 Oct 2023 08:38: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=yzb5=GN=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qxkGG-0005rk-Mr
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 08:38:08 +0000
Received: from EUR01-DB5-obe.outbound.protection.outlook.com
 (mail-db5eur01on061c.outbound.protection.outlook.com
 [2a01:111:f400:fe02::61c])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id cfc4d770-77c8-11ee-9b0e-b553b5be7939;
 Tue, 31 Oct 2023 09:38:06 +0100 (CET)
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.6933.16; Tue, 31 Oct
 2023 08:38:03 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6954.016; Tue, 31 Oct 2023
 08:38: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: cfc4d770-77c8-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ENwmxbPPi8oN9luK45QfMdcTXAJIdWYCJgMc7PHHqR5+NxB3+xH6oN7SDPfgw8k86HG/yjple3PnIf/WAKeqbmlVtHAmBVHWuE+QqFa6mPkJnU4R5k+kYnEGNmqG+8bBaON29bQziCa5HYqQsNQOUotYWcrt+Ak0kqaQ0KfVUHPx1jqexPpKRJYehu5sn2/bGj/XG7pF2xjbN6VH6Hg1RqocKWNKkeipR7lYa6REibT5tJoEW89Z4BXqWrFLqzuO5gV7VmBbVgcO6p7hOE0oGLC0652+0+dXEjilPmeSkBn2Ll+ZiHpHNQmc1sgb5dzM9Di9lP/cOJ1dBE8unenN/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=UuC8T6P3mH03w5RWnjiWLqRLF+9j1EwWQ98JzWr2m8g=;
 b=kMLokaLIS+Px+kWhIKbV+DAgsnrQOBI/DeXgoEAlJ9gkzxke4Sk8YS6yh37GELvtC8NlH/FWfvg/dOAls1+cECL1Cl+f2NP4FXQ/xCq0/aIk29e4x+fqDclb+2gqNSo5I2RFLkZnJE7wCxQdOhrQlE2+P7VpF4FTdzB8KAQf1nhCg8ZveaBnUV0Rf3ckvqUDfn1m8O96R+rrjjHJT45jZG6YRXICcshfpbA8e/gUZDhC2KDxmFxCCPU/0r/P8htjmLXEDPaIHzQSNyEbLXkUvy5TCCJA75qR9fwyWdPt8JcaWsorrDsdjoYirgf/6abKX8dJswgp6CNlA8VbtHrLtg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=UuC8T6P3mH03w5RWnjiWLqRLF+9j1EwWQ98JzWr2m8g=;
 b=YxvXRnCzEdtBJ8b5296gMsk75+69me9sXQ8sGzWQMAcYeXQurV0SDzEpoDN4iVuDbG9EE1dYF40n5zQf5XojEWlrYJmm/xvwbobytSxcUDKvi7brRJDZpSoH7CvdwiVWu6Rq1mMArorVNeswZ+mQCHP6Bsn7AMSytpVaccyp+iZRkTICY+hVMzgs64C8S9FN9DHTmO9jMHspz3hOou11akccucCw+b5q66AOT08MuIIQBqqJz8HAgKhfF6MhryZsVpLxz71qpMz7XpPUO45cqcRINgC/1k2pZpo8+pe+4dWHlOKll6Ft8dGrrwLTaYWzQKlkN+evJMYZBPPvvxBIug==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <b33ad98e-5bc2-3c55-c647-bf097e5971a3@suse.com>
Date: Tue, 31 Oct 2023 09:38:01 +0100
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/set_{c,p}x_pminfo: address violations od 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>, George Dunlap <george.dunlap@citrix.com>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 xen-devel@lists.xenproject.org
References: <5624a23d704a2ef4eabc1d741e7e5b52de0362d9.1698740011.git.federico.serafini@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <5624a23d704a2ef4eabc1d741e7e5b52de0362d9.1698740011.git.federico.serafini@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR3P281CA0049.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:4a::22) 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: 712fecba-2508-4c97-add0-08dbd9ecb29a
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	3TPJaOOI2cm/xWux0YwDhJtgZGzvtA2yzZPU7Pf5ofCZP5ycxwepb49yi3VLorP+OeoZrX9DM5KOdYDHpXb0Cklzz8kaskqE1CNn/WOB7Cj0jcjyVl+LBc+jCbVBPJUAVueXPqz5mHIyByZkTsvzmjC6z1D9bn/aDhhqrxy1O5e/0eLFTshtv6UeXk+b2Xkl7nm+XHTA6XRsDtCJyeeEcyrUHLwSFn4BzaUhXRaIjbMCmVc2RL7lhtE1AO8WFdlJFQ4eU+IdoHcl3EfsH1lDRPg9SaKwulXNRi3PE4gixog6PXPvbqHQ2Kq64XQ+ju6KITeusks8TN+hipCXXYVHEK9RPFwVVKuab1aECVzGO/E/SyhXqJmgRhnd14Nb0gU+ECa6+uWdXwbE0z2w6Q+UbIUJKb8gPH1EKgz7JoPMCxoqeSY2gdy4EBPvtQCULF+WS9UUvMy2swkeiluoEzRQD/7j1gkM6aurcg1Jkd72yyJvAVIw1/Ylel85hreeSnhUUakLFySt/pb/wkcdP2EBy79Y8wAMBfq6ZXwdyCYPs6p7yAzUP070m8q77VwJeFw+u3jkWG/c2tlq4bt6TMMcBW5pt/n8y+3Li8v49WGoWGywm73QUgZw4lwIfq/rmHezdsaMqG7GSElgh9j2RYJmJA==
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)(186009)(64100799003)(1800799009)(451199024)(2616005)(53546011)(478600001)(5660300002)(6512007)(6506007)(66946007)(26005)(41300700001)(6486002)(8676002)(8936002)(316002)(54906003)(66476007)(66556008)(6916009)(2906002)(4326008)(31696002)(38100700002)(86362001)(36756003)(31686004)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?cGVMOHJvMHJybm95RzVQT1U4MC9JUXhSU2dyYk9KeExwQ2I1YkhtQzZhaGFL?=
 =?utf-8?B?K0RFbit5Ymw1SVliR1I1Sk5NQUw2dy9zbnRzdVFIZlhZMmhLY0ZaT2ZqakZr?=
 =?utf-8?B?RG5DbCt4Zy93OWs1b0dsc3FnVDE1RFdsSnM5OGU5ODBLOW5sU0lhcXJCRkZF?=
 =?utf-8?B?ZHBadWkvMWN4N3FwcE9QY1A0cFdmcnhkYnNRMlluUXBoSjhibTBkNXpONGtX?=
 =?utf-8?B?UTRJd2RXNmxHdHRBQ3Z4OW8xbnpTdWhGVnlyM3FQY1JwZWtxaTlGZVVoeExs?=
 =?utf-8?B?d1ZKdU96UU9pVmVUb0hJZ0tyYXI5V3J4Z1ZubSsxNEw2aE81cS9aVzE4WkhZ?=
 =?utf-8?B?NytsMEpEdi9DUEtTTHpQa09YOVNCMzkzTVM3VUhjbFZBaVErQjJYVjBESkV3?=
 =?utf-8?B?WXJ0UExHTlE0Y05nT0VueUdlYjE2a1AxN0RDVzgxN0hxaTVkY2FoSHZUQkJs?=
 =?utf-8?B?dCtYeTlJV25ydDZ5c1NLNGFMSFA2SGQwMWd2OHR4cDFxK0VQakJhRWpGMGxq?=
 =?utf-8?B?UloxanNXdU43UEErR1NqanhXWVdTWDJzcVZyaVRwSkFzNUNyZ01wZThTSHV2?=
 =?utf-8?B?NHJOK1FJRERaaE5waGlhLzFLMmNRWjBLcHpwMG5NNVNlL2gxV1oxeWlaZkll?=
 =?utf-8?B?R00ya0lOS1FHNXJzU0xUekkwaDBNZUpBbGIvQ29HL25uc0J6blFzbHdMV3A3?=
 =?utf-8?B?YTRvdE5IMHVmTzRaUnpTMjU3NHc1WENDRTIwUHdVOUJ4SWxsVmppZ2lSN3dm?=
 =?utf-8?B?WHdRMDh5NW5yNzN6RTBkOUE4QVE5NmhFMEdmVGFCd3paMFhxT1RmVXpBWGpY?=
 =?utf-8?B?WDQyQUg3K0tmei9yRmtmendjb1dBczhTYWRNdzZ0S2FvVFVnUE5QVk96MlZi?=
 =?utf-8?B?Q2FYTEw5Tjg0aVV6L2NRV0lyS0V6eUtPblRqTXFpTWFaczF1S0V2Q0RxTDVa?=
 =?utf-8?B?ZDhJMlZoWkdsS0dNS21vRTJ2dnpzeGpFS2FtOUUra2ZMR2doZDl2RjJnSU8r?=
 =?utf-8?B?ZXlkdHZRVHRGTm44Q3UzbHU3VXF2d0I4QkVObjJLQ2txaHBaWlltTlB6L082?=
 =?utf-8?B?dGhFanVDc1pmOTg3ck5UZk52SG1FZnBGVlNLeVJ6RmNxUXlQMGlrN0pqMUZz?=
 =?utf-8?B?a3d0K3pJbk1rUkwvd2pIcUpIbVZPVDdQOHRoSXY4VWJQdUx0ZUtYSGpNdGFZ?=
 =?utf-8?B?Y2dua0t0S2x1eDVvNmxHcGFtUXJ0ekNUL1NZa08xVXcrNDdYcGFtK1QzaHcy?=
 =?utf-8?B?TmEwNUNmYlhldVVLdmdKNWU5TjlvaWFmWkdnSlBWK3NsWldmRWU1cXM2ZE9p?=
 =?utf-8?B?eEg1NklzSUtxeWR5Mm5uTWJUVmxMazlDYzkzUjMydHlpNFN0bThmU0hSUWp6?=
 =?utf-8?B?Y3cyMnVBV3c4eWZyZk5UeHEwTFgwckpGVVVkKytlRlczM1h1cUZtQnBGT0l1?=
 =?utf-8?B?ckZ5Z25STVhtNzkyeG1welJhOFFIeHhzUGdnb2gxZWxGdzFQd05WbHVCR1kw?=
 =?utf-8?B?Z2pJVEs1R1kybld5N1BUM241TVYxOW9tODROczhNdmh3MXFGdHFEOTN0SG5W?=
 =?utf-8?B?UWJBdUdsZGZ4OWhMYlJuUjRnTlZySExkTlVMTU9FNVE1V0dPYzRjVjFqMm5D?=
 =?utf-8?B?NzliNDZmd1l1OEZSeG5KRXBOcmVpSG1lV1ZNejBMSVp4NmV6cGd6WkliWWxm?=
 =?utf-8?B?MjBMUG8wb2NmRFVCc2cxUFR1OGJvY3VZV3ZHT0I1ZzZlQlN6TVNOTE1aMjZK?=
 =?utf-8?B?cXltc3FDZzNwL0RZK1ZKYnpNSjlQeFpqV0dyTzZIaGdmTFgvN1RPejRtTnpY?=
 =?utf-8?B?Rk1idGFrY2pTakJHeEFTUVc2NzJwUFhzOGVHbm1SSlBNcFVqVE1QMU9IeEU1?=
 =?utf-8?B?ZjRRMC9DYVNEakpYT3FwVURXMHBUdGZIRWFTMGx5ZDd1YmNacmZIQlBOWFp1?=
 =?utf-8?B?dXAyaDF4TTVyYVF0bFFPaFpubnBLRG9aQTJtZzNsb2ZmeW1BK3RyTzIyMDZN?=
 =?utf-8?B?V3NCL1JSR2Ria0FmTFV1Yk9RNEQrMGNkNDRqeEgvZ2pINDlXaEFpTm1XcnZI?=
 =?utf-8?B?RTBxV2ViTmhsVlpFWXBEVS9OL0d2UVdLU3FxeFRlT0NsdDFNRkcvU3lNdkdV?=
 =?utf-8?Q?YCxM8ZVPwai7bqUJqKEEy//Av?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 712fecba-2508-4c97-add0-08dbd9ecb29a
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 31 Oct 2023 08:38:03.6067
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: tVp64uhcwc/5pRaDOdM0KoAVgkPrVFnf9t392+2B7d4dHdh1UmT0GDyrecyMBzblhtskjjAy9o83zfgcurfqgg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR04MB7107

On 31.10.2023 09:33, Federico Serafini wrote:
> Make function definitions and declarations consistent.
> No functional change.
> 
> Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>

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

> @@ -488,22 +488,22 @@ int set_px_pminfo(uint32_t acpi_id, struct xen_processor_performance *dom0_px_in
>      pmpt->acpi_id = acpi_id;
>      pmpt->id = cpuid;
>  
> -    if ( dom0_px_info->flags & XEN_PX_PCT )
> +    if ( perf->flags & XEN_PX_PCT )
>      {
>          /* space_id check */
> -        if (dom0_px_info->control_register.space_id != 
> -            dom0_px_info->status_register.space_id)
> +        if ( perf->control_register.space_id !=
> +             perf->status_register.space_id )
>          {
>              ret = -EINVAL;
>              goto out;
>          }
>  
> -        memcpy ((void *)&pxpt->control_register,
> -                (void *)&dom0_px_info->control_register,
> -                sizeof(struct xen_pct_register));
> -        memcpy ((void *)&pxpt->status_register,
> -                (void *)&dom0_px_info->status_register,
> -                sizeof(struct xen_pct_register));
> +        memcpy((void *)&pxpt->control_register,
> +               (void *)&perf->control_register,
> +               sizeof(struct xen_pct_register));
> +        memcpy((void *)&pxpt->status_register,
> +               (void *)&perf->status_register,
> +               sizeof(struct xen_pct_register));

Along with the other coding style changes it might have been nice to
also drop the bogus casts here and ...

> @@ -512,69 +512,67 @@ int set_px_pminfo(uint32_t acpi_id, struct xen_processor_performance *dom0_px_in
>          }
>      }
>  
> -    if ( dom0_px_info->flags & XEN_PX_PSS ) 
> +    if ( perf->flags & XEN_PX_PSS )
>      {
>          /* capability check */
> -        if (dom0_px_info->state_count <= 1)
> +        if ( perf->state_count <= 1 )
>          {
>              ret = -EINVAL;
>              goto out;
>          }
>  
>          if ( !(pxpt->states = xmalloc_array(struct xen_processor_px,
> -                        dom0_px_info->state_count)) )
> +                                            perf->state_count)) )
>          {
>              ret = -ENOMEM;
>              goto out;
>          }
> -        if ( copy_from_guest(pxpt->states, dom0_px_info->states,
> -                             dom0_px_info->state_count) )
> +        if ( copy_from_guest(pxpt->states, perf->states, perf->state_count) )
>          {
>              ret = -EFAULT;
>              goto out;
>          }
> -        pxpt->state_count = dom0_px_info->state_count;
> +        pxpt->state_count = perf->state_count;
>  
>          if ( cpufreq_verbose )
>              print_PSS(pxpt->states,pxpt->state_count);
>      }
>  
> -    if ( dom0_px_info->flags & XEN_PX_PSD )
> +    if ( perf->flags & XEN_PX_PSD )
>      {
>          /* check domain coordination */
> -        if (dom0_px_info->shared_type != CPUFREQ_SHARED_TYPE_ALL &&
> -            dom0_px_info->shared_type != CPUFREQ_SHARED_TYPE_ANY &&
> -            dom0_px_info->shared_type != CPUFREQ_SHARED_TYPE_HW)
> +        if ( perf->shared_type != CPUFREQ_SHARED_TYPE_ALL &&
> +             perf->shared_type != CPUFREQ_SHARED_TYPE_ANY &&
> +             perf->shared_type != CPUFREQ_SHARED_TYPE_HW )
>          {
>              ret = -EINVAL;
>              goto out;
>          }
>  
> -        pxpt->shared_type = dom0_px_info->shared_type;
> -        memcpy ((void *)&pxpt->domain_info,
> -                (void *)&dom0_px_info->domain_info,
> -                sizeof(struct xen_psd_package));
> +        pxpt->shared_type = perf->shared_type;
> +        memcpy((void *)&pxpt->domain_info,
> +               (void *)&perf->domain_info,
> +               sizeof(struct xen_psd_package));

... here. If I end up committing this, I may take the liberty to do so.

Jan


From xen-devel-bounces@lists.xenproject.org Tue Oct 31 08:51:16 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 08:51:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625532.974889 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxkSj-0000M0-LC; Tue, 31 Oct 2023 08:51:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625532.974889; Tue, 31 Oct 2023 08: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 1qxkSj-0000Lt-IH; Tue, 31 Oct 2023 08:51:01 +0000
Received: by outflank-mailman (input) for mailman id 625532;
 Tue, 31 Oct 2023 08: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=TgTD=GN=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qxkSi-0000LU-A8
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 08:51:00 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 9b68120a-77ca-11ee-9b0e-b553b5be7939;
 Tue, 31 Oct 2023 09:50:57 +0100 (CET)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id B4C424EE073A;
 Tue, 31 Oct 2023 09:50:56 +0100 (CET)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 9b68120a-77ca-11ee-9b0e-b553b5be7939
MIME-Version: 1.0
Date: Tue, 31 Oct 2023 09:50:56 +0100
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, Wei Liu
 <wl@xen.org>
Subject: Re: [XEN PATCH][for-4.19 v4 6/8] x86/mce: Move MC_NCLASSES into the
 enum mctelem_class
In-Reply-To: <alpine.DEB.2.22.394.2310271349340.271731@ubuntu-linux-20-04-desktop>
References: <cover.1698410970.git.nicola.vetrini@bugseng.com>
 <6efab48e9340916f23c94baf5c189d1d1c6ab7e6.1698410970.git.nicola.vetrini@bugseng.com>
 <alpine.DEB.2.22.394.2310271349340.271731@ubuntu-linux-20-04-desktop>
Message-ID: <14bee5d8d86a067e63b71aefb0461221@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 2023-10-27 22:50, Stefano Stabellini wrote:
> On Fri, 27 Oct 2023, Nicola Vetrini wrote:
>> The definition of MC_NCLASSES contained a violation of MISRA C:2012
>> Rule 10.1, therefore by moving it as an enumeration constant resolves 
>> the
>> violation and makes it more resilient to possible additions to that 
>> enum.
>> 
>> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
> 
> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>

I appreciate your review here, but I forgot to put Andrew's A-by;
he already included this patch in its own for-next tree.

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


From xen-devel-bounces@lists.xenproject.org Tue Oct 31 09:08:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 09:08:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625540.974902 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxkjv-0003Cb-9y; Tue, 31 Oct 2023 09:08:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625540.974902; Tue, 31 Oct 2023 09:08: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 1qxkjv-0003CU-6w; Tue, 31 Oct 2023 09:08:47 +0000
Received: by outflank-mailman (input) for mailman id 625540;
 Tue, 31 Oct 2023 09:08: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=G+CR=GN=cloud.com=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qxkju-0003CO-DB
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 09:08:46 +0000
Received: from mail-ej1-x62a.google.com (mail-ej1-x62a.google.com
 [2a00:1450:4864:20::62a])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 17942795-77cd-11ee-9b0e-b553b5be7939;
 Tue, 31 Oct 2023 10:08:44 +0100 (CET)
Received: by mail-ej1-x62a.google.com with SMTP id
 a640c23a62f3a-9d0b4dfd60dso550702966b.1
 for <xen-devel@lists.xenproject.org>; Tue, 31 Oct 2023 02:08:44 -0700 (PDT)
Received: from localhost ([213.195.118.109]) by smtp.gmail.com with ESMTPSA id
 gv21-20020a170906f11500b009932337747esm608618ejb.86.2023.10.31.02.08.43
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Tue, 31 Oct 2023 02:08: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: 17942795-77cd-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1698743324; x=1699348124; 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=YCXNlIfMoyVSdTvk0VtP87TFdeFjDRAbDQq3QIRqV28=;
        b=UFJwC6kqls7CogrzgskWSgFrApINovD5inJKFbwqQUhudAKhjdBrDGatBNNhok5T8M
         Z9d1C2zfLKC2J3Z9yqpZ/FV2Az9M62+WyCF2I1GYhXoNASNwI3aNZslQKq4Dr3eoKEf7
         71231ZmemhijmP4citgsQujtAWTlbaPSJTKvw=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698743324; x=1699348124;
        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=YCXNlIfMoyVSdTvk0VtP87TFdeFjDRAbDQq3QIRqV28=;
        b=lX8/n7x3z7V7/myU5brhyChL4yre3d7Mg+W+pRKmcq/Y6NmXc67qVBucabnrIFB9CT
         ONdHTgoOvfnCOrZMrUFT1R6JtzsICBkWDFVIy5BmAkZWmrpwUqqJydQDpNAV4EMOwz9w
         etjEPaoY8koqlRl0gAAmYGbeMcICoATv/HoEzvSTyqfrZJK6tdgUbh644GQuKoP6WHPw
         sMQUClqhHKqCFtGowGXkYk8TYxiID57sH/LCyeeFuTWHQDLGPpYfqgKy95QCGO30FNZT
         vpWOkPWiFIsl2s8sSZGRndnKwIafwpKhSm9EbS5IDZUoCv3aCXITLEv54yMkRxCnr5nH
         DCWQ==
X-Gm-Message-State: AOJu0YyoLm7ZvwJMOSLIlffwKcw1/2iTckeowgoZM4k2dgVDxuViYKTA
	eVzAcQwfeLjUMNDiYhe8qMTBNfsth3sihsDHeDs=
X-Google-Smtp-Source: AGHT+IEaizyXKri5aZftjaAOOF8/6YcPeZ8KlBvJ9Rrjy5qTd9FOKjwvMEyT+GWWzjMMRu3KAPiNYA==
X-Received: by 2002:a17:907:d311:b0:9d1:a628:3e4f with SMTP id vg17-20020a170907d31100b009d1a6283e4fmr7399900ejc.32.1698743323896;
        Tue, 31 Oct 2023 02:08:43 -0700 (PDT)
Date: Tue, 31 Oct 2023 10:08:42 +0100
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>, Wei Liu <wl@xen.org>
Subject: Re: [PATCH] x86/PVH: allow Dom0 ELF parsing to be verbose
Message-ID: <ZUDEGqGBjKWpwY5e@macbook>
References: <b297e430-f3e3-97a7-be7d-1debdbcb0119@suse.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <b297e430-f3e3-97a7-be7d-1debdbcb0119@suse.com>

On Mon, Oct 30, 2023 at 02:14:44PM +0100, Jan Beulich wrote:
> VERBOSE had ceased to exist already before the introduction of this ELF
> parsing code.
> 
> Fixes: 62ba982424cb ("x86: parse Dom0 kernel for PVHv2")
> Signed-off-by: Jan Beulich <jbeulich@suse.com>

Acked-by: Roger Pau Monné <roger.pau@citrix.com>

Some of the printed information might not be relevant for PVH mode,
like the 'ELF: addresses:' virt_* fields.

Note also that in 62ba982424cb opt_dom0_verbose wasn't available yet,
that option got introduced a couple of years later by 525ef6584f852.

Maybe it's 679216943f545 that should have also switched the
elf_set_verbose() in the PVH dom0 builder to use opt_dom0_verbose, at
the same time that the PV one was switched?

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Tue Oct 31 09:25:57 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 09:25:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625544.974911 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxl0Q-0006kp-NO; Tue, 31 Oct 2023 09:25:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625544.974911; Tue, 31 Oct 2023 09: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 1qxl0Q-0006ki-K5; Tue, 31 Oct 2023 09:25:50 +0000
Received: by outflank-mailman (input) for mailman id 625544;
 Tue, 31 Oct 2023 09:25: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=EKKP=GN=bugseng.com=federico.serafini@srs-se1.protection.inumbo.net>)
 id 1qxl0P-0006kc-Qj
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 09:25:49 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 7a03c143-77cf-11ee-98d6-6d05b1d4d9a1;
 Tue, 31 Oct 2023 10:25:48 +0100 (CET)
Received: from Dell.homenet.telecomitalia.it
 (host-87-7-132-154.retail.telecomitalia.it [87.7.132.154])
 by support.bugseng.com (Postfix) with ESMTPSA id 96AF04EE073A;
 Tue, 31 Oct 2023 10:25:47 +0100 (CET)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 7a03c143-77cf-11ee-98d6-6d05b1d4d9a1
From: Federico Serafini <federico.serafini@bugseng.com>
To: xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com,
	Federico Serafini <federico.serafini@bugseng.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: [XEN PATCH v2] xen/domain_page: address violations of MISRA C:2012 Rule 8.3
Date: Tue, 31 Oct 2023 10:25:41 +0100
Message-Id: <d70e8e6b00f7b08ed4b360d38113e6a1460ed3ab.1698743361.git.federico.serafini@bugseng.com>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Make function defintions and declarations consistent.
No functional change.

Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
---
Changes in v2:
- use 'ptr' do denote a const void * parameter.
---
 xen/arch/arm/domain_page.c    | 10 +++++-----
 xen/include/xen/domain_page.h | 12 ++++++------
 2 files changed, 11 insertions(+), 11 deletions(-)

diff --git a/xen/arch/arm/domain_page.c b/xen/arch/arm/domain_page.c
index b7c02c9190..3a43601623 100644
--- a/xen/arch/arm/domain_page.c
+++ b/xen/arch/arm/domain_page.c
@@ -74,9 +74,9 @@ void *map_domain_page_global(mfn_t mfn)
     return vmap(&mfn, 1);
 }
 
-void unmap_domain_page_global(const void *va)
+void unmap_domain_page_global(const void *ptr)
 {
-    vunmap(va);
+    vunmap(ptr);
 }
 
 /* Map a page of domheap memory */
@@ -149,13 +149,13 @@ void *map_domain_page(mfn_t mfn)
 }
 
 /* Release a mapping taken with map_domain_page() */
-void unmap_domain_page(const void *va)
+void unmap_domain_page(const void *ptr)
 {
     unsigned long flags;
     lpae_t *map = this_cpu(xen_dommap);
-    int slot = ((unsigned long) va - DOMHEAP_VIRT_START) >> SECOND_SHIFT;
+    int slot = ((unsigned long)ptr - DOMHEAP_VIRT_START) >> SECOND_SHIFT;
 
-    if ( !va )
+    if ( !ptr )
         return;
 
     local_irq_save(flags);
diff --git a/xen/include/xen/domain_page.h b/xen/include/xen/domain_page.h
index 0ff5cdd294..e1dd24ae58 100644
--- a/xen/include/xen/domain_page.h
+++ b/xen/include/xen/domain_page.h
@@ -29,12 +29,12 @@ void *map_domain_page(mfn_t mfn);
  * Pass a VA within a page previously mapped in the context of the
  * currently-executing VCPU via a call to map_domain_page().
  */
-void unmap_domain_page(const void *va);
+void unmap_domain_page(const void *ptr);
 
-/* 
+/*
  * Given a VA from map_domain_page(), return its underlying MFN.
  */
-mfn_t domain_page_map_to_mfn(const void *va);
+mfn_t domain_page_map_to_mfn(const void *ptr);
 
 /*
  * Similar to the above calls, except the mapping is accessible in all
@@ -42,7 +42,7 @@ mfn_t domain_page_map_to_mfn(const void *va);
  * mappings can also be unmapped from any context.
  */
 void *map_domain_page_global(mfn_t mfn);
-void unmap_domain_page_global(const void *va);
+void unmap_domain_page_global(const void *ptr);
 
 #define __map_domain_page(pg)        map_domain_page(page_to_mfn(pg))
 
@@ -55,8 +55,8 @@ static inline void *__map_domain_page_global(const struct page_info *pg)
 
 #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 unmap_domain_page(ptr)               ((void)(ptr))
+#define domain_page_map_to_mfn(ptr)          _mfn(__virt_to_mfn((unsigned long)(ptr)))
 
 static inline void *map_domain_page_global(mfn_t mfn)
 {
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Tue Oct 31 09:31:41 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 09:31:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625549.974922 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxl60-0008DZ-BN; Tue, 31 Oct 2023 09:31:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625549.974922; Tue, 31 Oct 2023 09:31: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 1qxl60-0008DS-8O; Tue, 31 Oct 2023 09:31:36 +0000
Received: by outflank-mailman (input) for mailman id 625549;
 Tue, 31 Oct 2023 09:31: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=q6UM=GN=cloud.com=edwin.torok@srs-se1.protection.inumbo.net>)
 id 1qxl5y-0008DM-Fq
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 09:31:34 +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 46bd03a7-77d0-11ee-9b0e-b553b5be7939;
 Tue, 31 Oct 2023 10:31:32 +0100 (CET)
Received: by mail-wm1-x32a.google.com with SMTP id
 5b1f17b1804b1-4083cd3917eso42504635e9.3
 for <xen-devel@lists.xenproject.org>; Tue, 31 Oct 2023 02:31:32 -0700 (PDT)
Received: from smtpclient.apple ([90.243.16.33])
 by smtp.gmail.com with ESMTPSA id
 w17-20020a5d6811000000b0032d2f09d991sm1053177wru.33.2023.10.31.02.31.30
 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128);
 Tue, 31 Oct 2023 02:31: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: 46bd03a7-77d0-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1698744691; x=1699349491; darn=lists.xenproject.org;
        h=to:references:message-id:content-transfer-encoding:cc:date
         :in-reply-to:from:subject:mime-version:from:to:cc:subject:date
         :message-id:reply-to;
        bh=kHKKF3iAKmYWNV7TRjZxqdkO++P0krjMVNcgLiYVS48=;
        b=E90XvBuVCZQCpPPvPdG4gfKaGYwcqDBwBK1qWvcPU2zZ9ReFgDSDvs+UGwbF1vSAvi
         WMhSR1BFkVh4eSR7/jWBnnsUAGqDu+VmiOMIf2CkkSyUO4h9ZL7rnn5jyPq0qNX+6GWp
         FyORIMwDuHaQqmtoOY8fYQk2Ja/8fgBp9uDP4=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698744691; x=1699349491;
        h=to:references:message-id:content-transfer-encoding:cc:date
         :in-reply-to:from:subject:mime-version:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=kHKKF3iAKmYWNV7TRjZxqdkO++P0krjMVNcgLiYVS48=;
        b=m0ylN9CYqiERpo53l9QUGjdptIUKkLqZIH5bE7gW1lBzz26p+fFlCwGkOtrn3RIHEh
         i59S1A9aQ7qNh8j5ceLemsoyZJMnxbfcMj6xx6RQdnPADVxteN6X0t7l0POLjVRcJEjy
         lcvjY9bcUOI1PSHdwGOUThbeLrmm7LmJ4hXA2TN4T1EU0Hig+rrhTZzb4qQYeXIV6qvs
         dniq1VdN9EQ+wofQpyeVMTkE0qDCAb0tFMpVt9pG0r402KHEO/Yi/26BS6fjCkpVZoCQ
         c6u+nX3mv37kdf/ekVjbG9vFuDszps3I31MVTjYgIgXJmDVnBIKn90LbNCQbWo7Fal5+
         J34Q==
X-Gm-Message-State: AOJu0YyjZpyNr979LZ7TNj5yttUaBFdg6s9xPs0HvJpG4M/nfaAM5K08
	1dXCiUu4Lh6OBjZLaNZMVm3FN02k0pwvvpOHxZI=
X-Google-Smtp-Source: AGHT+IHZLKwN8BfAwUKeHdNQEQMENeUJy/n+1l8MRGK/xLapHLtZ1j8S4vRfvamWBZ9bc5Q2hu/kKQ==
X-Received: by 2002:a7b:cbcb:0:b0:3fe:2b8c:9f0b with SMTP id n11-20020a7bcbcb000000b003fe2b8c9f0bmr9169447wmi.23.1698744691334;
        Tue, 31 Oct 2023 02:31:31 -0700 (PDT)
Content-Type: text/plain;
	charset=utf-8
Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3774.100.2.1.4\))
Subject: Re: [RFC PATCH 03/22] x86/msr: always allow a pinned Dom0 to read any
 unknown MSR
From: Edwin Torok <edwin.torok@cloud.com>
In-Reply-To: <ac2eaa4a-36da-9d77-f682-a6bef25e27f0@suse.com>
Date: Tue, 31 Oct 2023 09:31:20 +0000
Cc: =?utf-8?B?RWR3aW4gVMO2csO2aw==?= <edvin.torok@citrix.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 =?utf-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>,
 Wei Liu <wl@xen.org>,
 Jun Nakajima <jun.nakajima@intel.com>,
 Kevin Tian <kevin.tian@intel.com>,
 xen-devel@lists.xenproject.org
Content-Transfer-Encoding: quoted-printable
Message-Id: <46B60857-CC42-45D6-96E5-04F5CB1C7A7B@cloud.com>
References: <cover.1698261255.git.edwin.torok@cloud.com>
 <4c04e5661688cf1de3e3fd668b0a78b23b6d7b2e.1698261255.git.edwin.torok@cloud.com>
 <ac2eaa4a-36da-9d77-f682-a6bef25e27f0@suse.com>
To: Jan Beulich <jbeulich@suse.com>
X-Mailer: Apple Mail (2.3774.100.2.1.4)



> On 30 Oct 2023, at 16:29, Jan Beulich <jbeulich@suse.com> wrote:
>=20
> On 25.10.2023 21:29, Edwin T=C3=B6r=C3=B6k wrote:
>> This can be useful if you realize you have to inspect the value of an
>> MSR in production, without having to change into a new Xen first that
>> handles the MSR.
>=20
> Yet on a non-pinned Dom0 you'd still be lost. Since iirc we generally
> advise against pinning,

You can temporarily pin while debugging the issue (e.g. pin just 1 CPU =
from Dom0, and "walk" all your physical CPUs with it if you have to,
so that you query them all), e.g. with 'xl vcpu-pin'.
Although that is more invasive than reading a value.
=20
Or alternatively have another (privileged) interface to read the MSR for =
a given core without exposing it to any guests, that way you don't =
affect the running system at all
(which would be preferable in a production environment), i.e. a Xen =
equivalent of 'rdmsr'.

> I wonder of how much use such a change would be,
> when it effectively undoes what we deliberately did a while ago.
>=20
>> --- a/xen/arch/x86/hvm/svm/svm.c
>> +++ b/xen/arch/x86/hvm/svm/svm.c
>> @@ -1933,6 +1933,9 @@ static int cf_check svm_msr_read_intercept(
>>         break;
>>=20
>>     default:
>> +        if ( is_hwdom_pinned_vcpu(v) && !rdmsr_safe(msr, =
*msr_content) )
>> +            break;
>> +
>>         if ( d->arch.msr_relaxed && !rdmsr_safe(msr, tmp) )
>>         {
>>             *msr_content =3D 0;
>=20
> If we went as far as undoing some of what was done, I'd then wonder
> whether instead we should mandate relaxed mode to be enabled on such a
> Dom0. Then, instead of returning fake 0 here, the actual value could
> be returned in the specific case of (pinned?) Dom0.


Can relaxed mode be enabled at runtime? I'd be happy with either =
solution, but it should be something that can be enabled at runtime
(if you have to reboot Xen then you may lose the bug repro that you want =
to gather more information on).
Although changing such a setting in a production environment may still =
be risky, because the guest will then become very confused that it has =
previously read some 0s, now there are some real values, and later when =
you flip the switch off it gets 0s again.

Best regards,
--Edwin=


From xen-devel-bounces@lists.xenproject.org Tue Oct 31 09:43:06 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 09:43:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625553.974932 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxlGx-0001wP-Bz; Tue, 31 Oct 2023 09:42:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625553.974932; Tue, 31 Oct 2023 09: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 1qxlGx-0001wI-90; Tue, 31 Oct 2023 09:42:55 +0000
Received: by outflank-mailman (input) for mailman id 625553;
 Tue, 31 Oct 2023 09:42: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=q6UM=GN=cloud.com=edwin.torok@srs-se1.protection.inumbo.net>)
 id 1qxlGv-0001wC-Qz
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 09:42:53 +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 dc93b580-77d1-11ee-98d6-6d05b1d4d9a1;
 Tue, 31 Oct 2023 10:42:52 +0100 (CET)
Received: by mail-wm1-x32b.google.com with SMTP id
 5b1f17b1804b1-4094301d505so13936815e9.2
 for <xen-devel@lists.xenproject.org>; Tue, 31 Oct 2023 02:42:52 -0700 (PDT)
Received: from smtpclient.apple ([90.243.16.33])
 by smtp.gmail.com with ESMTPSA id
 s3-20020adff803000000b0032f7fab0711sm1053633wrp.93.2023.10.31.02.42.52
 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128);
 Tue, 31 Oct 2023 02:42: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: dc93b580-77d1-11ee-98d6-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1698745372; x=1699350172; darn=lists.xenproject.org;
        h=to:references:message-id:content-transfer-encoding:cc:date
         :in-reply-to:from:subject:mime-version:from:to:cc:subject:date
         :message-id:reply-to;
        bh=ZL1NpQKB1C3cjeiPjdsLoLwAWjRdpdAPuIU8Uj8yQFQ=;
        b=H4A+kaTORKXQkfmKIYyLrrhUscqQQ+Vkqf96u8fdsJA0yNC5phOElYzKVhnLcPurwV
         Iet8foiOj8XU0wVFWv9aPiwxjU3lrwvlbvAVc8F8Xu0/WzSfsWgecOEXLypohKlRK6kC
         kTzzIXy8yaKKWyWD44M+hfA9mgr5dd4/TLtjI=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698745372; x=1699350172;
        h=to:references:message-id:content-transfer-encoding:cc:date
         :in-reply-to:from:subject:mime-version:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=ZL1NpQKB1C3cjeiPjdsLoLwAWjRdpdAPuIU8Uj8yQFQ=;
        b=TrQF47dJh/VgJ7EK/HsREKbs3tc2szXB30xfPIQBz3yb8JqPOxcSaJ/vnYP2fma40W
         6t1MbDHnFV3pR0egE3RU1c3xTaSSet9GqfdPZHYLsj8G+898IktH+MjFP3DD0o60jM+p
         XbkpbQX5rbPt3Yzu/Ry3GeDCXYweW0NjJREGN+pKggMtq7c31itnTQpxL4L5NA1FSohJ
         WT8osvRRL/951I6lsHcZnK0XYpehu2MOrjpYVchIPxCUf7QM2pZgpD//ATpbX+Ppsybp
         Z1gP+uC1Bh1NVoj+tDyJI87qjoLxD8BKelwTO3CsmVlSBtHg5KGku77q8ZHqtiRTK1w+
         Mkpw==
X-Gm-Message-State: AOJu0YyqwQer8bNtTQkpYzBDyBRjQVHoE2Uie6ckOlSeefqPTJfxOzt4
	1QuhbY3C0ftSQrVicR18lGNRXw==
X-Google-Smtp-Source: AGHT+IES4emjF3kzIgBpyN3QL3zSyYWOPfxg/yZGUjinHzd7htTq+9oIfiFnEpgBge815KXWUQcD8A==
X-Received: by 2002:a05:600c:c0f:b0:409:50b4:3da8 with SMTP id fm15-20020a05600c0c0f00b0040950b43da8mr1192709wmb.38.1698745372361;
        Tue, 31 Oct 2023 02:42:52 -0700 (PDT)
Content-Type: text/plain;
	charset=utf-8
Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3774.100.2.1.4\))
Subject: Re: [RFC PATCH 02/22] x86/msr: implement MSR_SMI_COUNT for Dom0 on
 Intel
From: Edwin Torok <edwin.torok@cloud.com>
In-Reply-To: <6fc915a9-4415-3337-3b3d-cef0e9f735c1@suse.com>
Date: Tue, 31 Oct 2023 09:42:41 +0000
Cc: =?utf-8?B?RWR3aW4gVMO2csO2aw==?= <edvin.torok@citrix.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
Content-Transfer-Encoding: quoted-printable
Message-Id: <E50DC831-A8A6-468C-9CF1-C60F6695304A@cloud.com>
References: <cover.1698261255.git.edwin.torok@cloud.com>
 <9d950b3c5502b5fb5fad62845b56b15d1bacc2d6.1698261255.git.edwin.torok@cloud.com>
 <6fc915a9-4415-3337-3b3d-cef0e9f735c1@suse.com>
To: Jan Beulich <jbeulich@suse.com>
X-Mailer: Apple Mail (2.3774.100.2.1.4)



> On 30 Oct 2023, at 16:20, Jan Beulich <jbeulich@suse.com> wrote:
>=20
> On 25.10.2023 21:29, Edwin T=C3=B6r=C3=B6k wrote:
>> Dom0 should always be able to read this MSR: it is useful when
>> investigating performance issues in production.
>=20
> While I'm not outright opposed, I'm also not convinced. At the very =
least
> ...
>=20
>> Although the count is Thread scoped, in practice all cores were =
observed
>> to return the same count (perhaps due to implementation details of =
SMM),
>> so do not require the cpu to be pinned in order to read it.
>=20
> ... this, even if matching your observations, is going to be properly
> misleading in case counts end up diverging.
>=20
>> This MSR exists on Intel since Nehalem.
>>=20
>> Backport: 4.15+
>=20
> If this was a backporting candidate, I think a Fixes: tag would need
> to indicate what's being fixed here.


I used the Backport tag to indicate what is the oldest release that it =
is backportable to.
IIRC the choices were:
* 4.0+ for issues that were present for a long time (didn't look further =
back than that in history), so there isn't any particular commit that =
introduces the problem, it was like that from the very beginning, i.e. =
not a regression.

* 4.13+ for issues affecting only new CPU support (I think that is the =
release that added Icelake support). I can attempt to find the commit =
that added Icelake support and mark them as Fixes: that commit (although =
there might be several of them)

* 4.15+ for bugs introduced by the default read-write msr changes


> Otherwise this is merely a new
> feature.
>=20

Prior to the default rdwrmsr changes it was possible to read any MSR, so =
I consider it a bug that after the default rdwrmsr changes you can no =
longer do that, it takes away a valuable debugging tool.
I can attempt to find a more specific commit to indicate with Fixes:

>> --- a/xen/arch/x86/include/asm/msr-index.h
>> +++ b/xen/arch/x86/include/asm/msr-index.h
>> @@ -641,6 +641,9 @@
>> #define MSR_NHL_LBR_SELECT 0x000001c8
>> #define MSR_NHL_LASTBRANCH_TOS 0x000001c9
>>=20
>> +/* Nehalem and newer other MSRs */
>> +#define MSR_SMI_COUNT                       0x00000034
>=20
> See my comment on the other patch regarding additions here.
>=20
>> --- a/xen/arch/x86/msr.c
>> +++ b/xen/arch/x86/msr.c
>> @@ -139,6 +139,13 @@ int guest_rdmsr(struct vcpu *v, uint32_t msr, =
uint64_t *val)
>>         *val =3D msrs->misc_features_enables.raw;
>>         break;
>>=20
>> +    case MSR_SMI_COUNT:
>> +        if ( cp->x86_vendor !=3D X86_VENDOR_INTEL )
>> +            goto gp_fault;
>> +        if ( is_hardware_domain(d) && !rdmsr_safe(msr, *val) )
>> +            break;
>> +        return X86EMUL_UNHANDLEABLE;
>=20
> Why #GP for non-Intel but UNHANDLEABLE for DomU?

I wanted to match the behaviour of the 'default:' case statement, =
although looking at the other MSR handling code in this file they just =
usually gp_fault,
with the exception of the MSR_K8* code that returns UNHANDLEABLE, so if =
condition here could be simplified (e.g. follow how MSR_AMD_PATCHLEVEL =
does it).

Best regards,
--Edwin=20

>=20
> Jan



From xen-devel-bounces@lists.xenproject.org Tue Oct 31 09:50:53 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 09:50:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625557.974942 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxlOa-00042j-5n; Tue, 31 Oct 2023 09:50:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625557.974942; Tue, 31 Oct 2023 09: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 1qxlOa-00042c-16; Tue, 31 Oct 2023 09:50:48 +0000
Received: by outflank-mailman (input) for mailman id 625557;
 Tue, 31 Oct 2023 09: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 1qxlOZ-00042S-Gc; Tue, 31 Oct 2023 09: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 1qxlOZ-0006t4-8x; Tue, 31 Oct 2023 09: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 1qxlOY-0002GN-UQ; Tue, 31 Oct 2023 09:50:47 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qxlOY-0006w7-Tt; Tue, 31 Oct 2023 09: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>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=KdLU4oszoOJPxeqY8BqOqdKoU8nVmN3h/Civ8gz3ntg=; b=UW2UdGgoip2mYw9uM366YaJ9K4
	FDhZcSjfiJRT55qT5Eb4VeGd24P2PkknKGkFuTbr85rraWPFQT9OkicpyBPP56qqgFCD1Q0KnuEdv
	IVHbo9LJbVig78HGc/mGWZrA40I0rwUmhlB2F95TEV7Y4eSuUCBd5LEsheVOlJqdEMj8=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183624-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-4.18-testing test] 183624: tolerable FAIL - PUSHED
X-Osstest-Failures:
    xen-4.18-testing:test-amd64-i386-qemuu-rhel6hvm-amd:xen-install:fail:heisenbug
    xen-4.18-testing:test-amd64-i386-pair:xen-install/dst_host:fail:nonblocking
    xen-4.18-testing:test-amd64-i386-xl-qemuu-ovmf-amd64:xen-install:fail:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.18-testing:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-4.18-testing:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.18-testing:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.18-testing:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.18-testing:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-4.18-testing:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-4.18-testing:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=b6cf4f81b5ff43a05b199c3eb8c78059d03d9485
X-Osstest-Versions-That:
    xen=5415b2b2118bd78d8a04f276a8312f7f0cb1a466
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 31 Oct 2023 09:50:46 +0000

flight 183624 xen-4.18-testing real [real]
flight 183634 xen-4.18-testing real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/183624/
http://logs.test-lab.xenproject.org/osstest/logs/183634/

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-amd64-i386-qemuu-rhel6hvm-amd  7 xen-install   fail pass in 183634-retest

Tests which did not succeed, but are not blocking:
 test-amd64-i386-pair         11 xen-install/dst_host         fail  like 183555
 test-amd64-i386-xl-qemuu-ovmf-amd64  7 xen-install            fail like 183555
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183555
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183555
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183555
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183555
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183555
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183555
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183555
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 183555
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183555
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 183555
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 183555
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 183555
 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-i386-xl-pvshim    14 guest-start                  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-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-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-credit1  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  16 saverestore-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-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-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          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-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-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

version targeted for testing:
 xen                  b6cf4f81b5ff43a05b199c3eb8c78059d03d9485
baseline version:
 xen                  5415b2b2118bd78d8a04f276a8312f7f0cb1a466

Last test of basis   183555  2023-10-27 13:10:21 Z    3 days
Testing same since   183564  2023-10-27 23:37:39 Z    3 days    5 attempts

------------------------------------------------------------
People who touched revisions under test:
  Julien Grall <jgrall@amazon.com>
  Julien Grall <julien@xen.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                           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                          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-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                                         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-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
   5415b2b211..b6cf4f81b5  b6cf4f81b5ff43a05b199c3eb8c78059d03d9485 -> stable-4.18


From xen-devel-bounces@lists.xenproject.org Tue Oct 31 09:51:59 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 09:51:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625562.974952 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxlPc-0004ch-Id; Tue, 31 Oct 2023 09:51:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625562.974952; Tue, 31 Oct 2023 09:51: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 1qxlPc-0004ca-F4; Tue, 31 Oct 2023 09:51:52 +0000
Received: by outflank-mailman (input) for mailman id 625562;
 Tue, 31 Oct 2023 09:51: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=yzb5=GN=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qxlPb-0004cG-QK
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 09:51:51 +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 1ba04e3f-77d3-11ee-9b0e-b553b5be7939;
 Tue, 31 Oct 2023 10:51:48 +0100 (CET)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DU2PR04MB9065.eurprd04.prod.outlook.com (2603:10a6:10:2f0::22)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6954.16; Tue, 31 Oct
 2023 09:51:46 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6954.016; Tue, 31 Oct 2023
 09:51: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: 1ba04e3f-77d3-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=AGtkgaXVYHs1XLhyzGSAN3eMjnQ7bpLjuwlmHBTZwb0iTv44+Jqr3Z34/JTmTSGADgMOP2y4GSwOpDnsjwgItjwxmcuzhR97vRkeANgPOwbRahpYSISwayjLaBnIZlt/J49AefQk9NNnwmj1IHbaidYcW8EuMOJnnPrdv17h6yDKhUNK+BgXnMmtCQmadS0jKqQaH8r2f4UDienprjxD314cg/Jfl5aQAYWe1ako9OSjgfU/6LFzAQnV+rAfse6MLnR83udn4wQVedYVx6m7RJb1PA58MR/W6u7YYIXqUNo1pViXfCxjxINeEVIFFYDxjr2CNdLNKPgaoI8YcJAoXA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=ugEItJLZv8dVP9C5M+ZUA3UW+W5uh458RgXWaOS3rZk=;
 b=afQT4Mbjj/xfIMpg4HcFYbto2a7hHD0dqoDW93vfXmqK0dsW9+OF5jtFXXkDxR/voV9S0JUSITgVaqsaYXJ4xaOdsjGbP5PRpLZ9viCVhWXsJc8rcqWHHhN3ehft1d15ozoointNg5kF+csI7lwvL0oBKDIK6dbHlO7YtjEcTwywkgKBFRlhZLzkPrYG4xqb3d+b+Xwquf1rGFmuk0iRrMm3Q/ynPqEEHRp1FwOaP7X1Ze6RfR3PYvunpE0YUCsbLS6+ibPPCs6o4xisOWDnEcesWBBUEw1AQSiYhJMb+Wn6MRUPH0kXFO89ZfvWVwRMj1NvMIR+mJXTwAoWHF7syA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=ugEItJLZv8dVP9C5M+ZUA3UW+W5uh458RgXWaOS3rZk=;
 b=4nLYO5kFd5nSF5U4f1cHO+0WLCYaKG+b9idq9XmvB9Dm+ebGoRjyJENJd/QGAkCorAOrnNks1HekF7C8b8BCgYFRj/INBg9PI9gWd+HfEQI/753VRlwUvoWHQyQRV7GbDrEmp2zBG/qKe+X+TfABUSP0lHzIEfL+oM8J1Pd1AmI0TLJIRTreE+UGXjZFvzhY4g4o5R/gIyBWEOhhFxx7qj4U/8W/zNclXVghRGlXCg9qwBoAX10Fy7AgdGtbwCBGI13YSOm6Cm0QZBfpbjSNoM0MFlZfEsjJFFux1WuuNFblcHcEwdE4BeIaOJ8Y4BQOJymlRi4FS96xxddm3QJmOw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <4d9059f2-541f-7a3a-5ab3-2ef73fdb41aa@suse.com>
Date: Tue, 31 Oct 2023 10:51:44 +0100
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH] x86/PVH: allow Dom0 ELF parsing to be verbose
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>, Wei Liu <wl@xen.org>
References: <b297e430-f3e3-97a7-be7d-1debdbcb0119@suse.com>
 <ZUDEGqGBjKWpwY5e@macbook>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <ZUDEGqGBjKWpwY5e@macbook>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR4P281CA0139.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:b8::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_|DU2PR04MB9065:EE_
X-MS-Office365-Filtering-Correlation-Id: 1c779883-e4c2-4400-8c23-08dbd9f6fec6
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	qLTSFVmv44qe8fUOe2HSY3d7xOTiDuRcB7m8B9lLrAbfkQ5hkBLgIGQEJujriFIcHX5ec3RK7ZzGMOXunfSqET6SCGKtbJ2tXZ2DbVAZSLjfECuM4E04JMWlrU6V4hjy+RMtJt4Y+cIDwLgfRQJ1Jq1d171fiimyCn45fo3Z7QqwoRE3TKoBYvPQqjANZ6zBfRgEiCN6Afnamt+qToOrOamyVovtxXkzsphxebwPOyFXV2TSat2bIrurDHNUhjGW1PjS5/Cls+jezjugH4DtMAOYGlnJ0YsPy7dYtkLzjRK09flPH3b+Jm9ZVW0er15nb8HAT7t4TMNvTqVynsHGz5cmnnu1m/b9lFWAiNUJTyesxiJlhDO+7tFYMtSQuPzB60JUKCB9wTuhS9fxbVYCq59RI80ppwcJYB6VK2cWRFc00Oo55kHtew8qqPWy9nUENOflMxaelpbdRyxKZs/1pNi11Bc62JqS902TchG2gzVTG1qYMNUOuCBvtjiqsNa5+gST1chDhOV4+cmeu7wkf9oN4JHuN4Wy6L77sLdld7+Ocn6bozmJgtyR8e9a4jyat7yshZActCwp/hnw9eHAMANPYYczTt7E4oEIkReS0MeiQ5iRE4tB/gCw2nM0LtzD1S23hO2O6Cff6F7ifdLT2w==
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)(346002)(366004)(396003)(136003)(230922051799003)(451199024)(64100799003)(1800799009)(186009)(26005)(2616005)(6506007)(53546011)(6512007)(38100700002)(36756003)(31696002)(86362001)(83380400001)(66476007)(66556008)(316002)(66946007)(6916009)(54906003)(41300700001)(5660300002)(4326008)(8936002)(8676002)(31686004)(478600001)(2906002)(6486002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?aHZPT3d4cHlocUlsM3ByTGlSbE1wdjF4SFp2RUE1S2kyaWp0T1luS083NGx1?=
 =?utf-8?B?d1BxOGcwY2xKT1RIaWNkMHFJdVljaURMU2M5L0JSazJkSWxSWEZVaDJsSU4y?=
 =?utf-8?B?YWVzc1JJZ3FVVVhRWE9EUmhuUFJaYlRrSGxGL1NyaEJRdzMwNVJKTWc0bWRp?=
 =?utf-8?B?Mk14dDhzRWJaTHR3bzhqaDZIUUVBZmtmSUtUUTBJZkhvVitua1FuNTFMamxJ?=
 =?utf-8?B?bmV0S3RuOEI3NVcxdGMrbXVzN2JyUTVrc3NWVzRObVdCcDU2UGhkK1hDbDdw?=
 =?utf-8?B?TjhhQTkrMGJ1eVNZNmo5ZmZ6TTY3NXgwcTdqWUtiSG8zVWh3MENGeGlqcWR2?=
 =?utf-8?B?dzRodnpTVm9UcFVESHBRdjg2dEwzaXdXSSs0TnA3cEZFb3pueVhjaVBla21S?=
 =?utf-8?B?ckI1Mm42dytoYW1WTm9rc0dsRHMvQkVIM09zUHA2VllPY0J3Wkc4UHlBVkxZ?=
 =?utf-8?B?QXV2YnNyTGMranNYRklscHA4Q2tNZVZxOFJTRWQvT2VzbHVhTk4zZkp4dWxU?=
 =?utf-8?B?bE51dUFIRnhCSDNUTy9iQVRra0U1d0ltRnFsOUd2WmhsT3pwTkNPaktmZFZI?=
 =?utf-8?B?ZE05ZDdRTm1Yb1ZQN0E3UXovVVRRZkdTM3ptZGxXdm9JajhXQnVrMFlvanhl?=
 =?utf-8?B?QVJKTnNDZEtQMWl3Snh3bitMb1FDTGFvbE5OOHk3YitnWEZ4NFhKR3M4bVdl?=
 =?utf-8?B?RkpZVmYvQnJTUkU1U0l4L2hzekM5QmljaytzNm1ia0hWMm96RHpZOG9yeFpE?=
 =?utf-8?B?aDJxY3Z3UzVISFZSNFQwOGVpNzg1V3RMY1JuSEJkdG5GdlNTSWl3UlFRaFJP?=
 =?utf-8?B?Q2E1TE1JQzBYVTNndCtRaW5jVC9lYjM2STVwWHJTVitGVlpwMjEyZzBEbTF6?=
 =?utf-8?B?Vkt2eDRxcEpuanpDS1VpQ21NVnE0a3FTbm02cHc0TXQ5ZVVFVjhxUjZEaE0y?=
 =?utf-8?B?L2gzcXJ5dSszTlJvRDU2QnRBUm9BNlF5YjlUUGtCYVRpdm90N2plSzhJTVdZ?=
 =?utf-8?B?TzdyTEI0emJsQ3JlU3VRYXozRmUyNUpNSFh5VGxjL3dLdzh2eXExZFpCMkdN?=
 =?utf-8?B?SWJTelpmVnVnWTdVVkh5Z1BLNzZ3aFRhMmU2MU8wZTl3YndpQW01dUJtNGho?=
 =?utf-8?B?V0JJOWdsY1dUQXkvRklJclNzMSt6UTFyL2FHTTdmdi91amZoanJmd0FDL09V?=
 =?utf-8?B?dlRqVW9jTEF2MkRLZmV5Uk4ra2d6V0NkSmcrNFZXTWdVYXIzcC8xVXdSalZB?=
 =?utf-8?B?Mno2WGR0S05IK1dPWjFaajd6Zmk4YUJjY1VKR2VjenBkYjQxQVlnZjVkTlJh?=
 =?utf-8?B?dWVKR1pTejB1b00wNVdjdUlFbXk3RE9iVUxsM3ZLU0pNSE5PNFJKZkt4VTBx?=
 =?utf-8?B?WkY0bWpWR3NrM2E3em5lZmRVVWFGRmFGZHF1YXhDaEkrdHp3cGM4ei9TQkZK?=
 =?utf-8?B?OTNRa3paT2tveVMzNTFZZzBEOTZYOHQ1MXladERKT0daTnlUcmEzOVlNRk8r?=
 =?utf-8?B?dUZ6VVA0VWdZUnJsR09scytnWmtCNGlwN0MxOFRlVlIrWWlYd0MwV1VXZWhY?=
 =?utf-8?B?UnN5L0FXTnNQQm4zbDg1ZVN1dzlJWjVXcDhCVkRvMXJNRGM1a1FFSGRuL1lv?=
 =?utf-8?B?M2JLMTF5dEtlRmZXQ0pERk93R0QyODZMS2VjeHRIT0MyZkZ6ajhUcU5yL1VG?=
 =?utf-8?B?NUdGOVV6MHVKOWRmRlQ5Z0UxTFV1OUtsNjJ2RlV5RzdMRDZZcHZSZ3dXWUY1?=
 =?utf-8?B?Z29LeTNrN3RlVzdqOUdKZjY1bEtsTytsMDRuUlhzVUpFY29SaE54bVhPQ0xs?=
 =?utf-8?B?OTFLM1hGNXdUUnEzT0RXZDN6S0dVa2xabGg2Vm9QT1NhRUNGYXJveDRzY1lG?=
 =?utf-8?B?cWJlWHpvSjVPZEMwOTdIM0lMUVVaRHpRMDV5eExSakpsWGR6SVZCOG5pTFBq?=
 =?utf-8?B?VE0wWHA0MXQyYm9SMjR1V3QyMCt0UUdvSXhGUGRkS1VFRDVpQTRKYjZJRThB?=
 =?utf-8?B?VFlsS3k4ZVBOWmZ2UE02UXJYVmd6ZkRiOEphdXgzSzlqUlR1U2JuaXFINkVU?=
 =?utf-8?B?c1QxbE5KeGxqak13UlJTTkk3YWNvYlJVVlpzWXl2dG9uNTRpQjlGRkIxSVdn?=
 =?utf-8?Q?b+wMzqcYe9ePS1gAzgLncvakP?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 1c779883-e4c2-4400-8c23-08dbd9f6fec6
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 31 Oct 2023 09:51:46.4184
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: H1SjArL+uucVHIP/QLuE8g4M8DKcPHCYAGcyNgtgpmp9ypXH1Ve91fVjO04SDISxTM7d0NOwmjDx1DKZYle/NQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU2PR04MB9065

On 31.10.2023 10:08, Roger Pau Monné wrote:
> On Mon, Oct 30, 2023 at 02:14:44PM +0100, Jan Beulich wrote:
>> VERBOSE had ceased to exist already before the introduction of this ELF
>> parsing code.
>>
>> Fixes: 62ba982424cb ("x86: parse Dom0 kernel for PVHv2")
>> Signed-off-by: Jan Beulich <jbeulich@suse.com>
> 
> Acked-by: Roger Pau Monné <roger.pau@citrix.com>

Thanks.

> Some of the printed information might not be relevant for PVH mode,
> like the 'ELF: addresses:' virt_* fields.

We may want to conditionalize some of that, but since you mention virt_*:
Just ahead of the printing we forcefully set e.g. virt_entry when hvm is
true. virt_base, otoh, is pretty clearly useless to log, for being set to
zero unconditionally when hvm is true.

In any event, what I was missing was the output from elf_xen_parse_note().
I had mistakenly tried to boot a PV-only kernel as PVH, but it didn't
occur to me to check for a typo in the kernel specification in the grub
entry. It was only the sequence of ELF notes that finally directed me
towards checking that ...

> Note also that in 62ba982424cb opt_dom0_verbose wasn't available yet,
> that option got introduced a couple of years later by 525ef6584f852.

Right; I've set the Fixes: tag solely from the wrong use of VERBOSE.

> Maybe it's 679216943f545 that should have also switched the
> elf_set_verbose() in the PVH dom0 builder to use opt_dom0_verbose, at
> the same time that the PV one was switched?

Perhaps that would have been a good point in time, but here we are.

Jan


From xen-devel-bounces@lists.xenproject.org Tue Oct 31 09:58:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 09:58:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625570.974969 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxlVc-00064d-8u; Tue, 31 Oct 2023 09:58:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625570.974969; Tue, 31 Oct 2023 09:58: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 1qxlVc-00064W-6K; Tue, 31 Oct 2023 09:58:04 +0000
Received: by outflank-mailman (input) for mailman id 625570;
 Tue, 31 Oct 2023 09:58: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=yzb5=GN=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qxlVb-00064Q-0O
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 09:58:03 +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 f9bad251-77d3-11ee-9b0e-b553b5be7939;
 Tue, 31 Oct 2023 10:58:00 +0100 (CET)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM7PR04MB6933.eurprd04.prod.outlook.com (2603:10a6:20b:10d::23)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.16; Tue, 31 Oct
 2023 09:57:30 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6954.016; Tue, 31 Oct 2023
 09:57: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: f9bad251-77d3-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=I2JzINe+Hw14y1n1AUv8Z51910JBarNB8qnYstDKPpSU5i048ZzpA1GLbKIfPxP0sXKjBWmwMk906vgPQDxtACjdLPIHJe4k/4ThwcJflCmnAhnj016UBZI3ieQpkLQSUVh1jWPh0N3HBpAt6PHfwBFW/8IEvVE4N4qMM6K+FD7H/H0pULpE8ikvjP0XuaW4adbwfAmGXX+RDfpc/nTyMbHQ+9KZsrdvNt1r/jtMhEF+pWNp2qzdO2LDTIxdQ2fLdc70tpuOeqiGl5rYDfCqpchvivUP0DROOlH9lkJAXQBTAKb9JJeLnVvNvufkjKYRIO2fvBmbP9KOTm+I5HRLlA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=f1D38uPzaFMzd7NCJLM/b4hMJZyhzPA94GGVN+5qZiU=;
 b=SMOSaSfObNFQa33smpo6IQinIp9E3BJYxT0dvFCUXbmvcLWGrl0E6wfHy99nhS5M5SIgnzsMbUpSy9+k2CkYjQDpBVOdRejfozxb4XpXMFQ+XHbpU/1RnyYG1FR8RZuIsd/sLTC558AQpREy8/XuzrVmhbrzXa5AWu1rzR9JDFUJwB6dhN2BE2N39RlXKuRZ1TY1DrllKi1IUXcynljOOpSHKWUDwwdhk2qDC3BeyikADXdkoOcFTzYCHMbKt9L6zZVwInmk0UGpsBvSk+xDIjBUHB852hXOCKsXuH8yd1LU1UUlfaC21ADHZTMbCIBjWM52bgdjk5X9ljGdBCGkLw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=f1D38uPzaFMzd7NCJLM/b4hMJZyhzPA94GGVN+5qZiU=;
 b=mLI8drT1qO6cfj9d41izfYd2lDrC/x9487VJGbgVHWdPNv5AXoAemZ+YrgwcFQTQd0i3ZXL5MgrRmGizYrHvCB1qcQrEtR3Y/LrtNQfYnrdaI+NLfnz2ooJ1qrtuSo2Q2OVleLjYpwg0LgvK02Sl0PK+MZqweEaWX8gx+tSz+wu0K/qsf9F92klTuoPhAEzrMedUaxByMvdpybrU/CB85UXRsmwtXLhbajJzzChfayFoYivuvwmwH2IZoKJjRXaUxntXAb27jVRuEeVPjUDfIPYUm9idKkx7fQ4oqma5yNCNbqntVohcdVSHkuKpj5nYI13PCO8BrAJKEsdJskjNXw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <2a2927b0-460b-eb52-54e1-3777dae66d11@suse.com>
Date: Tue, 31 Oct 2023 10:57:28 +0100
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [RFC PATCH 02/22] x86/msr: implement MSR_SMI_COUNT for Dom0 on
 Intel
Content-Language: en-US
To: Edwin Torok <edwin.torok@cloud.com>
Cc: =?UTF-8?B?RWR3aW4gVMO2csO2aw==?= <edvin.torok@citrix.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.1698261255.git.edwin.torok@cloud.com>
 <9d950b3c5502b5fb5fad62845b56b15d1bacc2d6.1698261255.git.edwin.torok@cloud.com>
 <6fc915a9-4415-3337-3b3d-cef0e9f735c1@suse.com>
 <E50DC831-A8A6-468C-9CF1-C60F6695304A@cloud.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <E50DC831-A8A6-468C-9CF1-C60F6695304A@cloud.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR0P281CA0251.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:af::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_|AM7PR04MB6933:EE_
X-MS-Office365-Filtering-Correlation-Id: e96e754f-5113-4b33-7256-08dbd9f7cc0b
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	GpIKIYlvCN76fxSc6C0deAOVTXkX9AzDH4648z3zkO3NtXW59H+SsvS1gpJ1UBmiZvIp9Chn8Oh3MYioQCB/D6ngzNhAScjAJI/WTL52hUs08UvZaR4H313TrGksYKAHNqY107vrMeljUbiR1qNGEbVNTq5jul+SD6jVO2iGZDL2P6PUE7Q7yz7jeEo8Hg72Wqtd1BYHDQtVDoRm3mJu0d0EXJMDQtX2A0xkw1QU8vtHaz+76AN5C/1D+MK0MT1m+7o72XVNwo+eytElfNDxe0+yt0UQ72avgmWCmLtwOHt5A1okflyblk0aEQuYg06VwhOnZKxdOB6HlytNDQD3JwAh0AqilV+N+in4MlkuvShIZWdK6LgySElbzM2/ylsHFlPrWujZJq4WOIFsGq0ccZRWDP9haK1K36ec1l958OgTx60EDreSJvz+AjW/h1yKWJ5mV2LdErIShKFvekKL09d/E/cU5NDciEZ+6K0wly6fRIPLE9U1ssHhlrOyfqtdjGX/5Vtpd5PPu82uCpjy7NH5sEvL5+MB6AoeqNkyeSxwNNl9BbchvT8rIqyXk1mWQsswgYS7iXcNb4ieWJWtPeI5KMymNf8goEJjQjkqNhd/l9BD6dTbLcNCZkwqI9Nt4LTNPPWMGT4OIIsETPj6BA==
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)(346002)(396003)(230922051799003)(64100799003)(186009)(1800799009)(451199024)(5660300002)(6512007)(6916009)(41300700001)(66946007)(316002)(54906003)(66476007)(66556008)(53546011)(31686004)(6486002)(6506007)(478600001)(2616005)(36756003)(26005)(86362001)(2906002)(83380400001)(4326008)(8676002)(8936002)(66574015)(31696002)(38100700002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?dkNrWVUrbzBXTmVkaUtRUnN3QVYvNjJuRnRiRGd4MFRQbi8zakkwdHJUazl4?=
 =?utf-8?B?Wlh0eGZPcHlTanJwMUcvbmFWbTJyRFFzZFd2OXlPdmUzaWMrRnBYRzIxSUNH?=
 =?utf-8?B?eFowTHEzSmNTWjFiZnFOY1JhSVczbExrUEFHUjZCVTMyVXJvQ0gremtyVUZy?=
 =?utf-8?B?eEorMElSV29UUjVaaFhoVUs4WXNXMGZORWlYNkZVelhRZ0w2ZkRtTVpsSEoy?=
 =?utf-8?B?cjlENnNhdy9NcWVmOWpNQ1hHQ2FkNmowaytGQnJYakl6MHNpdmk0QTNuZnNZ?=
 =?utf-8?B?ei8yU0xaNHEvSzdnOG12NVlCcWg2S1RXbDA1TkJwV2JzWGhjTjNSb09PSDk4?=
 =?utf-8?B?elhQRWFTWjRnWVl6MEsxTVRHWjR6UnoyLzRuazhlQUpybHFyMXlqRnB0d2pI?=
 =?utf-8?B?VDl5YkYrZGh2M0dtaEQzanB5Q05WNkk1NTRuZ1VST1V1NUV0ampNVXBrT2xG?=
 =?utf-8?B?ZTJQVHJGTWZic3FaZ04vWTNnVjh5NURndnZCNUw5UXhmWE94NlVabDk4K1Np?=
 =?utf-8?B?SmdMem5PdEZvNjcwVVRzSlFUanJsdXpsbms2TmNmNjM2dUZ2ZTkrSTIvNmZw?=
 =?utf-8?B?SU1nR2loRk53V0UrRjNJUXM4NjBCYTFFa2NmbVdWWW1NTUN6bDJGMjJaWkFI?=
 =?utf-8?B?WjB5M05oTm1pY2t1dEJxMXVVSVhJbi94MTYyZVhkQVJQQVJ1aUtCcDJieCtx?=
 =?utf-8?B?ZUxqSXU0U292T3JGRnJQb0J2OXdlYUVRYy9FMWJSekxlTjk0SkpuRDc2ZGRC?=
 =?utf-8?B?OEt6MEtJQ1pPeXlla1Rtc01lcS9qZ0VXdkUzeUk5dzhHRHVkZ2ljaU02ZjJK?=
 =?utf-8?B?THNqSzZzYzdUSWxJYml0U3NTWVRsT0FOdG5weWZORUd3QU5PYUhqMlIwa1Fx?=
 =?utf-8?B?eW1xUFdkVDRCSTc3dndiR3luak9DVHdDb01BYTM2NlZBNmNRSzgrNEJhOFQ5?=
 =?utf-8?B?ek5GYXZPdjlEL2trcEZRNXFueWVpYzJpdzB2dHhua3FoU3JUNmtWeTRZbytu?=
 =?utf-8?B?eGpCYktBQWtmVlkwdE53SThDQ1dpL01uQWNrMmQxUzZlR2pYNDhlWHcyQVVO?=
 =?utf-8?B?cWxZL2gzclA2b0lyQXNjYmlIMW91RjAxOXZ0MENLN1d6dzNSZXc5NytiN1BK?=
 =?utf-8?B?UjlZREQzQzIzVFBRdDBXc0UyU2RwMDgzRXBlU29FNWdoVUlWV0Z0clJvRUJF?=
 =?utf-8?B?c3M2QXo2ZUVkOXNETlpqbmlqZzQ5eW1Wd2RxWlllcXhESmFXUjYzZ1FZbXhT?=
 =?utf-8?B?V1BQQ1hNVUU3ZnRsQWlKZ3FBdUNyOVFlRnNJTzdwMnNFNk1aa0ZmZHRoRWww?=
 =?utf-8?B?d052U09QaDFJMXcxaTR2VzNWMHBnUGZUMFVtSTJzMFZNNHh4NkthREhlSFNP?=
 =?utf-8?B?Y0lvcDJuZGF1czN6ZTZ6c1Z1dUJyblZSSmh6Y1JxaERVMUdPSXhWdmQ1cWZP?=
 =?utf-8?B?OEQrZVgrenVGY2pkakJsT1l4cnFyN2xZamFla3FxRDlYSENPTDVsSnA5b1o5?=
 =?utf-8?B?VThkUkVnNm1xY0oybmRYYURMSWR2OVNteW5XdC8xd1h4WHZia0pkUm5veUd5?=
 =?utf-8?B?VnNHZ0gzWDRsZ1NUOVROK3R6SjB3SUt4YkpSUzRWUUlrRVlOVTZnMkhFam5S?=
 =?utf-8?B?cG4rYmcvZmF3dVBYa1k4NkRDZ1psMktPdjVmTDVNMWpBUEZGUE9jMXBmZnpz?=
 =?utf-8?B?ZC8vaDlzMURzOXk3MnpTL0R5bm9jRnJZeEhpc1VhbFU0UEhhb1ZuWFdNSzk4?=
 =?utf-8?B?eUpYYWpoS09HZDdxZzV4TjhqUVNad0ZOaEhkck9iZWhVVmdsQ3VVQTdtcXRR?=
 =?utf-8?B?S0VGc2dHVnJVWHBSSFAzZU1Wa0tXY3dHOXc4dDV1TzRUbFVFaWc0V1BTdU01?=
 =?utf-8?B?OS94RXVSbjliYitQczhodWZyZjZQOGNxbHJIbnI2NUdpQkpZL1BianBNWHJu?=
 =?utf-8?B?NXNBaGFoeG9RZVhteTFZZzRveElRQmFoVit5aDIrSWh4Q2xEL1lFWk83a2c0?=
 =?utf-8?B?RVExZkV2NGNXUzZBV01yTzJwQ0ZoUDVlM2xOczd3dVFkQ0kyamVtWldBWExR?=
 =?utf-8?B?U0dFUTVKNG9rblZCR0xmVDF2d29IRGI2Z0NpUWhLSm5zeVRZdTFDVlFNaWw0?=
 =?utf-8?Q?CwoNotsWsBWOQRSP9+7EbB6w8?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: e96e754f-5113-4b33-7256-08dbd9f7cc0b
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 31 Oct 2023 09:57:30.8273
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: EPFb0PV+TgON6hXbQ9ZSuPWod++uLkKiieW7YIFCbIsdT/6tolltrWZ+FUOjOku+0yNP+zo1/1+YCGO28ung8A==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM7PR04MB6933

On 31.10.2023 10:42, Edwin Torok wrote:
>> On 30 Oct 2023, at 16:20, Jan Beulich <jbeulich@suse.com> wrote:
>> On 25.10.2023 21:29, Edwin Török wrote:
>>> Dom0 should always be able to read this MSR: it is useful when
>>> investigating performance issues in production.
>>
>> While I'm not outright opposed, I'm also not convinced. At the very least
>> ...
>>
>>> Although the count is Thread scoped, in practice all cores were observed
>>> to return the same count (perhaps due to implementation details of SMM),
>>> so do not require the cpu to be pinned in order to read it.
>>
>> ... this, even if matching your observations, is going to be properly
>> misleading in case counts end up diverging.
>>
>>> This MSR exists on Intel since Nehalem.
>>>
>>> Backport: 4.15+
>>
>> If this was a backporting candidate, I think a Fixes: tag would need
>> to indicate what's being fixed here.
> 
> 
> I used the Backport tag to indicate what is the oldest release that it is backportable to.
> IIRC the choices were:
> * 4.0+ for issues that were present for a long time (didn't look further back than that in history), so there isn't any particular commit that introduces the problem, it was like that from the very beginning, i.e. not a regression.
> 
> * 4.13+ for issues affecting only new CPU support (I think that is the release that added Icelake support). I can attempt to find the commit that added Icelake support and mark them as Fixes: that commit (although there might be several of them)
> 
> * 4.15+ for bugs introduced by the default read-write msr changes
> 
> 
>> Otherwise this is merely a new
>> feature.
>>
> 
> Prior to the default rdwrmsr changes it was possible to read any MSR, so I consider it a bug that after the default rdwrmsr changes you can no longer do that, it takes away a valuable debugging tool.

As said elsewhere, making MSRs generally inaccessible was a deliberate change.
I don't think any of us x86 maintainers has so far considered that as introducing
a bug. MSRs being accessible as a debugging tool may be worthwhile to have as an
optional feature (see my suggestion elsewhere as to a possible way to approach
this), but I don't think this can be taken as an indication that we should revert
back to "blind" exposure.

Jan


From xen-devel-bounces@lists.xenproject.org Tue Oct 31 09:59:16 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 09:59:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625572.974980 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxlWj-0006aa-Jn; Tue, 31 Oct 2023 09:59:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625572.974980; Tue, 31 Oct 2023 09:59: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 1qxlWj-0006aT-H4; Tue, 31 Oct 2023 09:59:13 +0000
Received: by outflank-mailman (input) for mailman id 625572;
 Tue, 31 Oct 2023 09:59: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=kxST=GN=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qxlWi-0006aF-3u
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 09:59:12 +0000
Received: from EUR01-DB5-obe.outbound.protection.outlook.com
 (mail-db5eur01on0603.outbound.protection.outlook.com
 [2a01:111:f400:fe02::603])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 23053b88-77d4-11ee-98d6-6d05b1d4d9a1;
 Tue, 31 Oct 2023 10:59:10 +0100 (CET)
Received: from DB7PR05CA0050.eurprd05.prod.outlook.com (2603:10a6:10:2e::27)
 by AS4PR08MB7455.eurprd08.prod.outlook.com (2603:10a6:20b:4e6::10) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.29; Tue, 31 Oct
 2023 09:59:07 +0000
Received: from DB5PEPF00014B8C.eurprd02.prod.outlook.com
 (2603:10a6:10:2e:cafe::4c) by DB7PR05CA0050.outlook.office365.com
 (2603:10a6:10:2e::27) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.29 via Frontend
 Transport; Tue, 31 Oct 2023 09:59:07 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DB5PEPF00014B8C.mail.protection.outlook.com (10.167.8.200) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6954.19 via Frontend Transport; Tue, 31 Oct 2023 09:59:07 +0000
Received: ("Tessian outbound 26ee1d40577c:v228");
 Tue, 31 Oct 2023 09:59:06 +0000
Received: from fef3b1267095.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 A70E2D58-5D54-4D20-A93F-D0E7D10A8216.1; 
 Tue, 31 Oct 2023 09:59:00 +0000
Received: from EUR01-HE1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id fef3b1267095.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Tue, 31 Oct 2023 09:59:00 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by PA4PR08MB6191.eurprd08.prod.outlook.com (2603:10a6:102:f3::12)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.29; Tue, 31 Oct
 2023 09:58:57 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::ae6e:f96c:f2f3:efc9]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::ae6e:f96c:f2f3:efc9%4]) with mapi id 15.20.6933.028; Tue, 31 Oct 2023
 09:58: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: 23053b88-77d4-11ee-98d6-6d05b1d4d9a1
ARC-Seal: i=2; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=pass;
 b=CBR+HCopr5xmf0QCXyG6n77REUwnyaKe1YtAP+OBCRA+nC0dButkRNT4HRo4jQTn51QDBQYXK9vh8J33uv/wKop6pyvgrhg+O96aRq3Ji+J/6KXxG82UTBH5ezJUqWPKIAjGdTlV/NsByD6Jl16CJHNABAF2AGwj3dHZEf/dU+3FXZxfsDhqyjM1K/5Rq3chUO2/U2ifqNfz+u5prg/VO4V1lQcnoEAG6fZuGOLrcQL/rOpKhA3XIbzsyOrW2Oqd4wdiKtsqWy7Az+EhWsRxafNywV+XY9abgbtbEx+MOK5N7QThkVDz1a2FcpOwL+7wADySuS+Lx9kW8JOP/cplpw==
ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=nCOvR4gGS4luczqOBj/y35twqeROydkSg4dXX8vuHaE=;
 b=es34FeXUEiuro0DSK7NEOyDvU2Y8NgEx6Sk2gHTE5hAsStnOKnPqVKraLKWGYSb+sDdN54+nj26Mh6wThdHYqP69ZS1HX2z2dK4c2NbHRIC41j1suqb9Z/N78Q2hC+eUuo0/zd0x9cbLCD3TjwDTlzcPyg+PqX/sf73+mRtWoJDQvmuju2UER4Ub6OKoiNk57UyB7wLsniXqFtaz8HobLR91Gaahxbk27U7LoIGH2yCg3Ofy856dNlp4RcUIriwzROcMQxHlWfadQG6qxtSUeW7fGI+oN90GZR0hTXpY21/EkOpIXKujrjuGN0JwcqLBr4ZAd+OwKz7jIGWIeKyCuw==
ARC-Authentication-Results: i=2; mx.microsoft.com 1; spf=pass (sender ip is
 63.35.35.123) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=arm.com;
 dmarc=pass (p=none sp=none pct=100) action=none header.from=arm.com;
 dkim=pass (signature was verified) header.d=armh.onmicrosoft.com; arc=pass (0
 oda=1 ltdi=1 spf=[1,1,smtp.mailfrom=arm.com] dkim=[1,1,header.d=arm.com]
 dmarc=[1,1,header.from=arm.com])
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=nCOvR4gGS4luczqOBj/y35twqeROydkSg4dXX8vuHaE=;
 b=O7H9io/Qi/184Gcyj6kQEEMBkQxvyGso41ekg9Ln5KDeZZHEnhWsJ3h2VRBkIJg1PKJZ9HYINip/THwnEq9AzuuWPT5TryiJgjmGRNZQ4YRZlNULQQw0lSLvDYA4fL1JMvboQwwjlHYMUDxe3C24tcn/+SGEV89McT+ZqCSdD1E=
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: 0e8a516c2e936d8f
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=iqB7Ueh0YEuoHXAzMmYlG+gErDfbBZg7pyvcsiP0YX9ifVZDW6AGHumf3fJbC5ANHiEyKhtLvT1g++hyuFV1/an1KCR9soC7kJumhZRIoOIrJSpJpZ+p8Z6nIh58XHoP+tY9Ci55/ksSa/EIFfhjcaJHdRpMJgDoxWIFl1YSDHEiO9rR+RtTse8frRhHdLoLNHjY43A9owt1tgE0zzYBNwTL+0fZJ3pGrsSlIdcdK1xr0dLSiueCyFOl9WQPuXezySBTLtVoARknRDRaPwjh0F/NlKLyRRV9ogqEzEyr0QTxhyQsTVC9ocXWf1MtJZ96oXmU8DzMNoqykvOegLcQCQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=nCOvR4gGS4luczqOBj/y35twqeROydkSg4dXX8vuHaE=;
 b=oPMM99RdZQ+oAPZ0ZCSLF0/Rdudj+P/ELH6KZgi6FnLVCtvrUZhf5wYdVHcd0Efce85IPTt8An5Jpy5Thzo2yBbWtxuMjAO1LYAQTCEAk8jJlq3Fvar8MFgD+vV8EwD5uX9GLYnrDGCCJF+oMQLmNYSC956IUQnX4mchdGFzzYfqp1DNHGIGQnL2uBdMjvQ5uPmDrTmO544auberkfTBB0udL24lR7qAmo/CJ+DESoJpRSf2p8EKTS91K7N/dTlUZuUAxpk/ZZ0FKn9NwwZOZDJPtXyqQWu84ALBP81qG/0xHAVqAkY/01jigFjj4+hHqcfuGzt8a7FLGoi5zfir8A==
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=nCOvR4gGS4luczqOBj/y35twqeROydkSg4dXX8vuHaE=;
 b=O7H9io/Qi/184Gcyj6kQEEMBkQxvyGso41ekg9Ln5KDeZZHEnhWsJ3h2VRBkIJg1PKJZ9HYINip/THwnEq9AzuuWPT5TryiJgjmGRNZQ4YRZlNULQQw0lSLvDYA4fL1JMvboQwwjlHYMUDxe3C24tcn/+SGEV89McT+ZqCSdD1E=
From: Henry Wang <Henry.Wang@arm.com>
To: =?utf-8?B?TWFyZWsgTWFyY3p5a293c2tpLUfDs3JlY2tp?=
	<marmarek@invisiblethingslab.com>
CC: Xen-devel <xen-devel@lists.xenproject.org>, Doug Goldstein
	<cardoe@cardoe.com>, Stefano Stabellini <sstabellini@kernel.org>
Subject: Re: [PATCH for-4.18 v2] automation: fix race condition in adl-suspend
 test
Thread-Topic: [PATCH for-4.18 v2] automation: fix race condition in
 adl-suspend test
Thread-Index: AQHaC6Bt3/qzioi050e1eTk9g/gvwrBjqm2A
Date: Tue, 31 Oct 2023 09:58:57 +0000
Message-ID: <C63E595B-4C98-40E2-B692-1163FA1682A4@arm.com>
References: <20231031021712.407318-1-marmarek@invisiblethingslab.com>
In-Reply-To: <20231031021712.407318-1-marmarek@invisiblethingslab.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_|PA4PR08MB6191:EE_|DB5PEPF00014B8C:EE_|AS4PR08MB7455:EE_
X-MS-Office365-Filtering-Correlation-Id: fa4aa02b-acc0-4fdf-8d60-08dbd9f80587
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:
 fHITh6dy+f10PAiFfMuKkPk7Y8noHKzKwzNltTBG5jtlxi+UjO0E00OQlwcnufA9Ua7yj+T5FWXsSW6DjMPjwvedhiMmGcQJE535ad4nqIwupNtYh4rPLmfwpOwNt8b+MKrgLGWaFhoEXXfAz/mjQQwZHXIK3xDAyeJJc3qvLt63Epe3U/BaG/9Gb6uBY1hSGkaKQNprK1ayLXqmsxWDB2HFcxN6bfeh99Aii0e4+N0F36qSUDFucE8/fF0g25btlsTTYN33POqA07P4XRXrQnOjfMQ5IZP/Oa7+eijmBXCqz1LrpGWdRfsr2DM1u+bUtjZMm2Bi0Ir9EcTuajEqmbhZqAA+rMeQXFrt0Ykg01A3PYdUfY6zWoPVkwaB27vJ+LUHE4EjJFaPur+GjWuh3quzzq1+qBj3tGpMIO8xmuOnBFpgJRqnZ6j3jnqIrVfuCp0JdG8kN2yAMOykmV8YGnut7YNy1g+y3TsTpe4yIflgRKQvzmst4EYnbpYe7TW8BbyTyf90PWlzoVRiiVbc//jB/vuAtchRuaqH2AF15u9x1cY2THoIQ8f8chJq9pD4wIt0sgrSpapw5D7nMN8+lJZLGnhVRXO00Lr3IfJWyi4WSdZpaR9YJ0YegU2I2XYpyVEiPRCJEPIhJdRb6EN+mQ==
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)(39860400002)(136003)(346002)(376002)(230922051799003)(186009)(451199024)(64100799003)(1800799009)(122000001)(33656002)(86362001)(36756003)(38070700009)(2906002)(6486002)(6512007)(478600001)(41300700001)(4744005)(8936002)(8676002)(4326008)(6506007)(15650500001)(53546011)(71200400001)(83380400001)(26005)(2616005)(76116006)(66556008)(6916009)(5660300002)(316002)(91956017)(66946007)(66476007)(66446008)(64756008)(54906003)(66574015)(38100700002)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <84808DF5C6868C4DA101B821B3E6F37C@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR08MB6191
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:
 DB5PEPF00014B8C.eurprd02.prod.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	1a6c0cf1-d5fc-4f90-a883-08dbd9f7fffe
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	YPJQPT/6IoOo+46b1uFlrTsWI1uvP6Gk86nzYOSSCmGOyNx9yaCKIJLgXsPSKoLk5IyZGA/KJEiYRi29mPTJNvgJ84/ihB9lBS9cjnuAt1fWPhNzg1HFSi0RYJLyPCiCAuawmP/YYVj2ORpy2A9ZFH885V4qP0f2/1URiyBWTrn6KZEV3nMUEMZ4uXcxgG027jtcM5wejdl6ABHzX8PhBRy2tdiKJROIxIm9c9XK3vxXVeHnuCXoG3njqzrKGQH61FW6RutE63vhZqc9SH47pVq4UL6ctUnwuwEtbwiOTS3KDYmI/xgGyBEtD0LmvJS018iFhZ0pRH8EuV2SgnJQzPSG/E4Y3RQUWw6/tnJ40u5WbafgPbkajgnvfva2HLU7cDpYQXUYYMnJARSUk6C9iI9z1oiziw9fhz/Ty6JLfehdnQQxbaU4qb3gZubaHaI9TAqUR5Uhw1vvrjf1q5qAqBN74drsq3pOt587ElcWdaPTGO6QCLZ/poQaoiv5aRNpx7Fr29OBlLwZzRhGX6HyNcmRhqe4+wMPLIG1lnwU8Z5b6CuPQZxUqDkXj6pV5NqLJ3UQw1e0eHJWyAm2t6W2mmNx37j+3oJgNyEUlG4bDmwozE/GtEX6+lsS0Tzjz49qJRJWhpq5dF/ZGpXHs4Y4r/lh1LuK8a8CbVNtMBm+CSn1M4IN4xWKLsmmG1amTcgicV1NvphsfNVLnEvqRNTDvt09/m0BkSrow47Lj5nIOpA=
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)(230922051799003)(64100799003)(1800799009)(186009)(82310400011)(451199024)(40470700004)(36840700001)(46966006)(40460700003)(107886003)(82740400003)(2616005)(36756003)(356005)(81166007)(86362001)(53546011)(33656002)(6506007)(6512007)(26005)(47076005)(36860700001)(336012)(66574015)(83380400001)(4744005)(15650500001)(2906002)(316002)(54906003)(70206006)(70586007)(5660300002)(40480700001)(41300700001)(478600001)(6486002)(6862004)(4326008)(8676002)(8936002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 31 Oct 2023 09:59:07.0943
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: fa4aa02b-acc0-4fdf-8d60-08dbd9f80587
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:
	DB5PEPF00014B8C.eurprd02.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS4PR08MB7455

SGkgTWFyZWssDQoNCj4gT24gT2N0IDMxLCAyMDIzLCBhdCAxMDoxNiwgTWFyZWsgTWFyY3p5a293
c2tpLUfDs3JlY2tpIDxtYXJtYXJla0BpbnZpc2libGV0aGluZ3NsYWIuY29tPiB3cm90ZToNCj4g
DQo+IElmIHN5c3RlbSBzdXNwZW5kcyB0b28gcXVpY2tseSwgdGhlIG1lc3NhZ2UgZm9yIHRoZSB0
ZXN0IGNvbnRyb2xsZXIgdG8NCj4gd2FrZSB1cCB0aGUgc3lzdGVtIG1heSBiZSBub3Qgc2VudCB0
byB0aGUgY29uc29sZSBiZWZvcmUgc3VzcGVuZGluZy4NCj4gVGhpcyB3aWxsIGNhdXNlIHRoZSB0
ZXN0IHRvIHRpbWVvdXQuDQo+IA0KPiBGaXggdGhpcyBieSBjYWxsaW5nIHN5bmMgb24gdGhlIGNv
bnNvbGUgYW5kIHdhaXRpbmcgYSBiaXQgYWZ0ZXIgcHJpbnRpbmcNCj4gdGhlIG1lc3NhZ2UuIFRo
ZSB0ZXN0IGNvbnRyb2xsZXIgdGhlbiByZXN1bWVzIHRoZSBzeXN0ZW0gMzBzIGFmdGVyIHRoZQ0K
PiBtZXNzYWdlLCBzbyBhcyBsb25nIGFzIHRoZSBkZWxheSArIHN1c3BlbmRpbmcgdGFrZXMgbGVz
cyB0aW1lIGl0IGlzDQo+IG9rYXkuDQo+IA0KPiBTaWduZWQtb2ZmLWJ5OiBNYXJlayBNYXJjenlr
b3dza2ktR8OzcmVja2kgPG1hcm1hcmVrQGludmlzaWJsZXRoaW5nc2xhYi5jb20+DQoNCkkgdGhp
bmsgbm93IHRoYXQgd2UgYnJhbmNoZWQsIHRoaXMgcGF0Y2ggc2hvdWxkIGJlIGNvbW1pdHRlZCB0
byBib3RoIHN0YWdpbmcgYW5kIHN0YWdpbmctNC4xOC4NCkZvciBzdGFnaW5nIDQuMTg6DQoNClJl
bGVhc2UtYWNrZWQtYnk6IEhlbnJ5IFdhbmcgPEhlbnJ5LldhbmdAYXJtLmNvbT4NCg0KSSB3aWxs
IHJlbW92ZSB0aGUgY29tbWl0IG1vcmF0b3JpdW0gZm9yIHN0YWdpbmcgb25jZSBPU1NUZXN0IGRv
ZXMgYSBzdWNjZXNzZnVsIHN5bmMgYmV0d2Vlbg0Kc3RhZ2luZyBhbmQgbWFzdGVyLiBUaGFua3Mu
DQoNCktpbmQgcmVnYXJkcywNCkhlbnJ5DQoNCg==


From xen-devel-bounces@lists.xenproject.org Tue Oct 31 10:03:10 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 10:03:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625579.974990 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxlaW-0008CH-8h; Tue, 31 Oct 2023 10:03:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625579.974990; Tue, 31 Oct 2023 10: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 1qxlaW-0008CA-4h; Tue, 31 Oct 2023 10:03:08 +0000
Received: by outflank-mailman (input) for mailman id 625579;
 Tue, 31 Oct 2023 10:03: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=TgTD=GN=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qxlaU-0008C3-V6
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 10:03:06 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id aebc6deb-77d4-11ee-9b0e-b553b5be7939;
 Tue, 31 Oct 2023 11:03:04 +0100 (CET)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id 2C8334EE073F;
 Tue, 31 Oct 2023 11:03:04 +0100 (CET)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: aebc6deb-77d4-11ee-9b0e-b553b5be7939
MIME-Version: 1.0
Date: Tue, 31 Oct 2023 11:03:04 +0100
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: Stefano Stabellini <sstabellini@kernel.org>, michal.orzel@amd.com,
 xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, consulting@bugseng.com,
 andrew.cooper3@citrix.com, roger.pau@citrix.com, Simone Ballarin
 <simone.ballarin@bugseng.com>, Doug Goldstein <cardoe@cardoe.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][for-4.19 v4 1/8] xen/include: add macro
 ISOLATE_LOW_BIT
In-Reply-To: <817fab34432c854ce585aba80db77f7c@bugseng.com>
References: <cover.1698410970.git.nicola.vetrini@bugseng.com>
 <dca236bf9199f596bafb35eb48d81adc280d8cca.1698410970.git.nicola.vetrini@bugseng.com>
 <f88edc35-6b1b-0136-aa1f-6429652c4016@suse.com>
 <alpine.DEB.2.22.394.2310301536390.1625118@ubuntu-linux-20-04-desktop>
 <7c26fb70-6a8c-58a3-6a1d-300dd57b5827@suse.com>
 <817fab34432c854ce585aba80db77f7c@bugseng.com>
Message-ID: <8b4e0da82930375b2a95387a9031c73f@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 2023-10-31 09:28, Nicola Vetrini wrote:
> On 2023-10-31 08:43, Jan Beulich wrote:
>> On 30.10.2023 23:44, Stefano Stabellini wrote:
>>> On Mon, 30 Oct 2023, Jan Beulich wrote:
>>>> On 27.10.2023 15:34, Nicola Vetrini wrote:
>>>>> --- a/xen/include/xen/macros.h
>>>>> +++ b/xen/include/xen/macros.h
>>>>> @@ -8,8 +8,14 @@
>>>>>  #define DIV_ROUND(n, d) (((n) + (d) / 2) / (d))
>>>>>  #define DIV_ROUND_UP(n, d) (((n) + (d) - 1) / (d))
>>>>> 
>>>>> -#define MASK_EXTR(v, m) (((v) & (m)) / ((m) & -(m)))
>>>>> -#define MASK_INSR(v, m) (((v) * ((m) & -(m))) & (m))
>>>>> +/*
>>>>> + * Given an unsigned integer argument, expands to a mask where 
>>>>> just the least
>>>>> + * significant nonzero bit of the argument is set, or 0 if no bits 
>>>>> are set.
>>>>> + */
>>>>> +#define ISOLATE_LOW_BIT(x) ((x) & -(x))
>>>> 
>>>> Not even considering future Misra changes (which aiui may require 
>>>> that
>>>> anyway), this generalization of the macro imo demands that its 
>>>> argument
>>>> now be evaluated only once.
>>> 
>>> Fur sure that would be an improvement, but I don't see a trivial way 
>>> to
>>> do it and this issue is also present today before the patch.
>> 
>> This was an issue here for MASK_EXTR() and MASK_INSR(), yes, but the 
>> new
>> macro has wider use, and there was no issue elsewhere so far.
>> 
>>> I think it
>>> would be better to avoid scope-creeping this patch as we are already 
>>> at
>>> v4 for something that was expected to be a trivial mechanical change. 
>>> I
>>> would rather review the fix as a separate patch, maybe sent by you as
>>> you probably have a specific implementation in mind?
>> 
>> #define ISOLATE_LOW_BIT(x) ({ \
>>     typeof(x) x_ = (x); \
>>     x_ & -x_; \
>> })
>> 
>> Hard to see the scope creep here. What I would consider scope creep I
>> specifically didn't even ask for: I'd like this macro to be 
>> overridable
>> by an arch. Specifically (see my earlier naming hint) I'd like to use
>> x86's BMI insn BLSI in the context of "x86: allow Kconfig control over
>> psABI level", when ABI v2 or higher is in use.
>> 
>> Jan
> 
> I appreciate you suggesting an implementation; I'll send a v5 
> incorporating it.

There's an issue with this approach, though: since the macro is used 
indirectly
in expressions that are e.g. case labels or array sizes, the build fails 
(see [1] for instance).
Perhaps it's best to leave it as is?

[1] https://gitlab.com/xen-project/people/bugseng/xen/-/jobs/5423693947

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


From xen-devel-bounces@lists.xenproject.org Tue Oct 31 10:07:39 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 10:07:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625584.975000 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxleo-000180-OU; Tue, 31 Oct 2023 10:07:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625584.975000; Tue, 31 Oct 2023 10:07: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 1qxleo-00017t-Ln; Tue, 31 Oct 2023 10:07:34 +0000
Received: by outflank-mailman (input) for mailman id 625584;
 Tue, 31 Oct 2023 10:07: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=4TaJ=GN=dingwall.me.uk=james@srs-se1.protection.inumbo.net>)
 id 1qxlen-00017n-Bp
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 10:07:33 +0000
Received: from smarthost01b.sbp.mail.zen.net.uk
 (smarthost01b.sbp.mail.zen.net.uk [212.23.1.3])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 4d33a229-77d5-11ee-98d6-6d05b1d4d9a1;
 Tue, 31 Oct 2023 11:07:30 +0100 (CET)
Received: from [217.155.64.189] (helo=mail0.xen.dingwall.me.uk)
 by smarthost01b.sbp.mail.zen.net.uk with esmtpsa (TLS1.0) tls
 TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA (Exim 4.95)
 (envelope-from <james@dingwall.me.uk>) id 1qxlej-005oZv-Ts
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 10:07:29 +0000
Received: from localhost (localhost [IPv6:::1])
 by mail0.xen.dingwall.me.uk (Postfix) with ESMTP id 913E188396D
 for <xen-devel@lists.xenproject.org>; Tue, 31 Oct 2023 10:07:29 +0000 (GMT)
Received: from mail0.xen.dingwall.me.uk ([127.0.0.1])
 by localhost (mail0.xen.dingwall.me.uk [127.0.0.1]) (amavisd-new, port 10024)
 with ESMTP id pMEm6G2DdbAN for <xen-devel@lists.xenproject.org>;
 Tue, 31 Oct 2023 10:07:29 +0000 (GMT)
Received: from ghoul.dingwall.me.uk (ghoul.dingwall.me.uk
 [IPv6:2a02:8010:698e:302::c0a8:1c8])
 by dingwall.me.uk (Postfix) with ESMTP id 6847088396A
 for <xen-devel@lists.xenproject.org>; Tue, 31 Oct 2023 10:07:29 +0000 (GMT)
Received: by ghoul.dingwall.me.uk (Postfix, from userid 1000)
 id 5BD79488; Tue, 31 Oct 2023 10:07:29 +0000 (GMT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 4d33a229-77d5-11ee-98d6-6d05b1d4d9a1
X-Virus-Scanned: Debian amavisd-new at dingwall.me.uk
Date: Tue, 31 Oct 2023 10:07:29 +0000
From: James Dingwall <james-xen@dingwall.me.uk>
To: xen-devel@lists.xenproject.org
Subject: live migration fails: qemu placing pci devices at different locations
Message-ID: <ZUDR4daChIWHZBUo@dingwall.me.uk>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
X-Originating-smarthost01b-IP: [217.155.64.189]
Feedback-ID: 217.155.64.189

Hi,

I'm having a bit of trouble performing live migration between hvm guests.  The
sending side is xen 4.14.5 (qemu 5.0), receiving 4.15.5 (qemu 5.1).  The error
message recorded in qemu-dm-<name>--incoming.log:

qemu-system-i386: Unknown savevm section or instance '0000:00:04.0/vga' 0. Make sure that your current VM setup matches your saved VM setup, including any hotplugged devices

I have patched libxl_dm.c to explicitly assign `addr=xx` values for various
devices and when these are correct the domain migrates correctly.  However
the configuration differences between guests means that the values are not
consistent.  The domain config file doesn't allow the pci address to be
expressed in the configuration for, e.g. `soundhw="DEVICE"`

e.g. 

diff --git a/tools/libs/light/libxl_dm.c b/tools/libs/light/libxl_dm.c
index 6e531863ac0..daa7c49846f 100644
--- a/tools/libs/light/libxl_dm.c
+++ b/tools/libs/light/libxl_dm.c
@@ -1441,7 +1441,7 @@ static int libxl__build_device_model_args_new(libxl__gc *gc,
             flexarray_append(dm_args, "-spice");
             flexarray_append(dm_args, spiceoptions);
             if (libxl_defbool_val(b_info->u.hvm.spice.vdagent)) {
-                flexarray_vappend(dm_args, "-device", "virtio-serial",
+                flexarray_vappend(dm_args, "-device", "virtio-serial,addr=04",
                     "-chardev", "spicevmc,id=vdagent,name=vdagent", "-device",
                     "virtserialport,chardev=vdagent,name=com.redhat.spice.0",
                     NULL);

The order of devices on the qemu command line (below) appears to be the same
so my assumption is that the internals of qemu have resulted in things being
connected in a different order.  The output of a Windows `lspci` tool is
also included.

Could anyone make any additional suggestions on how I could try to gain
consistency between the different qemu versions?

Thanks,
James


xen 4.14.5

/usr/lib/xen/bin/qemu-system-i386 -xen-domid 19 -no-shutdown
  -chardev socket,id=libxl-cmd,fd=19,server,nowait -S 
  -mon chardev=libxl-cmd,mode=control
  -chardev socket,id=libxenstat-cmd,path=/var/run/xen/qmp-libxenstat-19,server,nowait
  -mon chardev=libxenstat-cmd,mode=control
  -nodefaults -no-user-config -name <name> -vnc 0.0.0.0:93 -display none
  -k en-us
  -spice port=35993,tls-port=0,addr=127.0.0.1,disable-ticketing,agent-mouse=on,disable-copy-paste,image-compression=auto_glz 
  -device virtio-serial -chardev spicevmc,id=vdagent,name=vdagent
  -device virtserialport,chardev=vdagent,name=com.redhat.spice.0
  -device VGA,vgamem_mb=16
  -boot order=cn
  -usb -usbdevice tablet
  -soundhw hda
  -smp 2,maxcpus=2
  -device rtl8139,id=nic0,netdev=net0,mac=00:16:3e:64:c8:68
  -netdev type=tap,id=net0,ifname=vif19.0-emu,script=no,downscript=no
  -object tls-creds-x509,id=tls0,endpoint=client,dir=/etc/certificates/usbredir,verify-peer=yes
  -chardev socket,id=charredir_serial0,host=127.0.0.1,port=48052,reconnect=2,nodelay,keepalive=on,user-timeout=5
  -device isa-serial,chardev=charredir_serial0
  -chardev socket,id=charredir_serial1,host=127.0.0.1,port=48054,reconnect=2,nodelay,keepalive=on,user-timeout=5
  -device isa-serial,chardev=charredir_serial1
  -chardev socket,id=charredir_serial2,host=127.0.0.1,port=48055,reconnect=2,nodelay,keepalive=on,user-timeout=5
  -device pci-serial,chardev=charredir_serial2
  -trace events=/etc/xen/qemu-trace-options -machine xenfv -m 2032
  -drive file=/dev/drbd1002,if=ide,index=0,media=disk,format=raw,cache=writeback
  -drive file=/dev/drbd1003,if=ide,index=1,media=disk,format=raw,cache=writeback
  -runas 131091:131072

00:00.0 Host bridge: Intel Corporation 440FX - 82441FX PMC [Natoma] (rev 02)
00:01.0 ISA bridge: Intel Corporation 82371SB PIIX3 ISA [Natoma/Triton II]
00:01.1 IDE interface: Intel Corporation 82371SB PIIX3 IDE [Natoma/Triton II]
00:01.2 USB controller: Intel Corporation 82371SB PIIX3 USB [Natoma/Triton II] (rev 01)
00:01.3 Bridge: Intel Corporation 82371AB/EB/MB PIIX4 ACPI (rev 03)
00:02.0 Unassigned class [ff80]: XenSource, Inc. Xen Platform Device (rev 01)
00:03.0 Audio device: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) High Definition Audio Controller (rev 01)
00:04.0 Communication controller: Red Hat, Inc Virtio console
00:05.0 VGA compatible controller: Device 1234:1111 (rev 02)
00:07.0 Serial controller: Red Hat, Inc. QEMU PCI 16550A Adapter (rev 01)



xen 4.15.5

/usr/lib/xen/bin/qemu-system-i386 -xen-domid 15 -no-shutdown
  -chardev socket,id=libxl-cmd,fd=19,server=on,wait=off -S
  -mon chardev=libxl-cmd,mode=control
  -chardev socket,id=libxenstat-cmd,path=/var/run/xen/qmp-libxenstat-15,server=on,wait=off
  -mon chardev=libxenstat-cmd,mode=control
  -nodefaults -no-user-config -name <name> -vnc 0.0.0.0:93 -display none
  -k en-us
  -spice port=35993,tls-port=0,addr=127.0.0.1,disable-ticketing=on,agent-mouse=on,disable-copy-paste=on,image-compression=auto_glz
  -device virtio-serial -chardev spicevmc,id=vdagent,name=vdagent
  -device virtserialport,chardev=vdagent,name=com.redhat.spice.0
  -device VGA,vgamem_mb=16
  -boot order=cn
  -usb -usbdevice tablet
  -device intel-hda -device hda-duplex
  -smp 2,maxcpus=2
  -device rtl8139,id=nic0,netdev=net0,mac=00:16:3e:64:c8:68
  -netdev type=tap,id=net0,ifname=vif15.0-emu,br=wan0-00,script=no,downscript=no
  -object tls-creds-x509,id=tls0,endpoint=client,dir=/etc/certificates/usbredir,verify-peer=yes
  -chardev socket,id=charredir_serial0,host=127.0.0.1,port=48052,reconnect=2,nodelay,keepalive=on,user-timeout=5
  -device isa-serial,chardev=charredir_serial0
  -chardev socket,id=charredir_serial1,host=127.0.0.1,port=48054,reconnect=2,nodelay,keepalive=on,user-timeout=5
  -device isa-serial,chardev=charredir_serial1
  -chardev socket,id=charredir_serial2,host=127.0.0.1,port=48055,reconnect=2,nodelay,keepalive=on,user-timeout=5
  -device pci-serial,chardev=charredir_serial2
  -trace events=/etc/xen/qemu-trace-options -machine xenfv,suppress-vmdesc=on -m 2032
  -drive file=/dev/drbd1002,if=ide,index=0,media=disk,format=raw,cache=writeback
  -drive file=/dev/drbd1003,if=ide,index=1,media=disk,format=raw,cache=writeback
  -runas 131087:131072

00:00.0 Host bridge: Intel Corporation 440FX - 82441FX PMC [Natoma] (rev 02)
00:01.0 ISA bridge: Intel Corporation 82371SB PIIX3 ISA [Natoma/Triton II]
00:01.1 IDE interface: Intel Corporation 82371SB PIIX3 IDE [Natoma/Triton II]
00:01.2 USB controller: Intel Corporation 82371SB PIIX3 USB [Natoma/Triton II] (rev 01)
00:01.3 Bridge: Intel Corporation 82371AB/EB/MB PIIX4 ACPI (rev 03)
00:02.0 Unassigned class [ff80]: XenSource, Inc. Xen Platform Device (rev 01)
00:03.0 Communication controller: Red Hat, Inc Virtio console
00:04.0 VGA compatible controller: Device 1234:1111 (rev 02)
00:05.0 Audio device: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) High Definition Audio Controller (rev 01)
00:07.0 Serial controller: Red Hat, Inc. QEMU PCI 16550A Adapter (rev 01)



From xen-devel-bounces@lists.xenproject.org Tue Oct 31 10:13:04 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 10:13:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625590.975013 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxlk0-0002aL-DK; Tue, 31 Oct 2023 10:12:56 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625590.975013; Tue, 31 Oct 2023 10: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 1qxlk0-0002aE-9k; Tue, 31 Oct 2023 10:12:56 +0000
Received: by outflank-mailman (input) for mailman id 625590;
 Tue, 31 Oct 2023 10:12: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=yzb5=GN=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qxljz-0002a8-Cn
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 10:12:55 +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 0d82a14e-77d6-11ee-9b0e-b553b5be7939;
 Tue, 31 Oct 2023 11:12:53 +0100 (CET)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DU0PR04MB9227.eurprd04.prod.outlook.com (2603:10a6:10:352::19)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6954.17; Tue, 31 Oct
 2023 10:12:50 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6954.016; Tue, 31 Oct 2023
 10: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: 0d82a14e-77d6-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Wy01ypS1EUrSk5LEpr/nD4s4O0qZGbUjhqBsiOmnRMpp6aB4CwRSrvrK9CdWwBTSI6vYZ2Pl4CpnXeidayyJUAy54xK8vUcAu10vNAm2dmvCLje93LSquyaRYRCTQwsAHyqh6+iY7/9BBQvKepcYjtKu/cObnpOWFwcUmStLI6Pgvu1NHGIQpGRj/2sj9NKSbtAtBeGnK1LOGczqJ01ccWXWIqoq55NKGPb4RyUOlhtTyrzd3tpZbvoEFiwcI5+ekYhO/qwETQYWO4hokxpTqIzghCwG/C1KlXamBz+qJ4Rh48rk1y84P9vWxKwhJHWT2DW5iavv1gNlfVgAm2xNnQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=LZa/JEOQGel2g+jZK1neLxJBnxevcXhAWuaZC84T+Ko=;
 b=i9bvoYID03eaMUHtOfRVIEps0PlGlKtQCjQieUT3qXV3O3T7XqatJZxKgdZYUNMbaWBK9+nnN+9sgOHxA5aHM4ytS1lRJTLV9uhyEEBVBOYvDx99XNOGxfUhCQPuMbSWuqWBUzR3mzCPomJ2YyHzyIDR8Vw6xwk9H+yrvAl+dak6mXYcbXdP0YvnWtpWnoZU+Q4UwOe0bavLwNurC3X/TLmw9ioROF03tYHY7KsL950kj5aglI247R2DP1DKGjOiPLddCK5XFZpFhObdqiNhEsG05qkn+AQYIy4zn55kZyDLumMhsVOed0BC59ArrXee10FP/SFmuJ+H0w3Cx26Zfw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=LZa/JEOQGel2g+jZK1neLxJBnxevcXhAWuaZC84T+Ko=;
 b=uQ1lK9NeCWjhYW7WOFlYh0uKMCkvVW5MVhRZYoS6akJ0PfzhA1MBMe9uklB4aPHBJ8/M5Ed5A06JHFYPz4YHEs2+8kRQ7lgRIGxrgj6MXid0+Xk9Gipdi7bp4HoFXir4qb2fGSaYZcsHgryN1I5Q0KXG2QGxgalay5vBXQAA9rkYoQwiTILmBEHXO+BfHnKSayMLyTvt2g5umn2ec8HPfWpHDyoT7p0hzVVjwcwCQ1ZkMBr0TZ9Lki8a6nNpMSURBP8krnddSWdsOtFkQPOQ77qN1uIryuAHxYilN+VOTLASs0tHMQrKmhqd396YZmois/8YPPwFG9Pc1h8DVIz71g==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <7af0ab93-1b49-0b8e-70f8-5bfd8167dbfb@suse.com>
Date: Tue, 31 Oct 2023 11:12:48 +0100
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [RFC PATCH 03/22] x86/msr: always allow a pinned Dom0 to read any
 unknown MSR
Content-Language: en-US
To: Edwin Torok <edwin.torok@cloud.com>
Cc: =?UTF-8?B?RWR3aW4gVMO2csO2aw==?= <edvin.torok@citrix.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>, Wei Liu
 <wl@xen.org>, Jun Nakajima <jun.nakajima@intel.com>,
 Kevin Tian <kevin.tian@intel.com>, xen-devel@lists.xenproject.org
References: <cover.1698261255.git.edwin.torok@cloud.com>
 <4c04e5661688cf1de3e3fd668b0a78b23b6d7b2e.1698261255.git.edwin.torok@cloud.com>
 <ac2eaa4a-36da-9d77-f682-a6bef25e27f0@suse.com>
 <46B60857-CC42-45D6-96E5-04F5CB1C7A7B@cloud.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <46B60857-CC42-45D6-96E5-04F5CB1C7A7B@cloud.com>
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_|DU0PR04MB9227:EE_
X-MS-Office365-Filtering-Correlation-Id: b01a71bd-fbfa-41b6-c328-08dbd9f9f02f
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	u6iVumyMAuKN+KwSRKbxVNyU1mQy9zX7/spKkB9juIziuHJ7ZEFKQT9PRe/FZzT7+5HcVVnevQep5KZLnVbkH4YYEvLeRrjBFvVE6NccqBF7E8bZMYM6fJd1oen8AUOprIYYT5r0rO83fpLBfDrpKlHQWwK9RZOOxIa62HK3318yhShMgSZPcA1Csy6JwzKFc5YRlmsS/0horSUsjzjJLrz806fEIeer7RInwFCf8m5LBOw52vUV8KpYdqlf8htVU/D2EjEkmuCyhu3DWOo3picKR6lWquw1K5mnJMEFTV5GKdSqwrKkw9eJ1nikJy5b7960CHxLz1ko6CKAz6tNO7K+hhhmHYqxKybNHgfwai6RwrzYa2syZP0lCL+Vv/M9KrQ2tTilFyePWX5TfCO3Xq7sR0ctO4kt4/KlaM4s1R61ygsjV3hp7KC3mAdjVhaWm2GKNMBr2iA7tcYqKeUm/+rM71LtGaI6AsD9T7ASVgaapfD7m61ftnQGuDShLqqQ9l8MUjipaIog4j/5UtiYOP8Q2Lok+8rC+1jctosoQhhGQGXQPnOCTLsREfTbq+/XcFKv5qUr/DpaYkc9ditdB/9kCVqYCbN/0i89Cq8kFRPTCCF1pcWVMQQTQpx+YfwV7fS5pX2AGM6Z+KNn13sRWQ==
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)(366004)(346002)(376002)(230922051799003)(64100799003)(451199024)(186009)(1800799009)(5660300002)(66476007)(54906003)(66556008)(41300700001)(6916009)(66946007)(316002)(31686004)(4326008)(8676002)(8936002)(2906002)(478600001)(6486002)(6512007)(83380400001)(36756003)(6506007)(53546011)(26005)(66574015)(86362001)(2616005)(31696002)(38100700002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?SGt5ODV4MUFBQzFXYURuNFJ0TXdXLzN1bFNOY3JTaFRaTnowRmxIdjA4SVVj?=
 =?utf-8?B?cFRtdlUwUW4xc05rZ0w1MUxQam05d0FIUHlqWjVpYU9zSUxmcEtTdTFib28w?=
 =?utf-8?B?N1dHQnlQYTBiYkZIMkNQRVU5ZEUxYmRmUGd6RVM5a29ZTWhnSEF0QS80QUIz?=
 =?utf-8?B?NzRXMHlya2FoYUxDVjFGSVI5K2RPdCttamdYb1VsZmZ3aFhESWpua2M5TFZk?=
 =?utf-8?B?SzlRa0JIbTNEY254dElvTWI5MjRweW5vb0VQdXBpWThoY0g5ZWlWUUxpeTU2?=
 =?utf-8?B?ZUsxNEI3SEdJYlhrM0NDY09VMmFIZDk1VzhLelBIOTc0bDYwaE9lam9rVVVs?=
 =?utf-8?B?d1d2UUhsZUpSZDhkT3hXdEJBcWhIVHU4L2ZxdGpYYWc4TVJFajZPNlcyeWFI?=
 =?utf-8?B?S3ZVZ05MeHJZTUZ6a0JQTGpyZlplYXJOS0JDSkZtYlNuRzk5aEVZNXZkYUlO?=
 =?utf-8?B?L3g4UnZ0TG5GYWFkbk1TZHdRaXJ2SDF4RmZSVmVTYmtUdEd3a254NUYyTmdY?=
 =?utf-8?B?ZnVUOG9ldk5OVGJsaVNwUm9HSE1DUDhsSHpsd0ZoU1ZibE93OURDd1piaGVM?=
 =?utf-8?B?VEl1bi9XaFkxQ292ZnpxQzlnZUo0SU9rcTQ2dEdoRlRyeXpPQ2VtWVYxRnli?=
 =?utf-8?B?WnR2bUJhOXNNNGQrYUJYNUFuQ3c5ZUdESU9KdzlXWWNjZXFUdXhySzJzQjFD?=
 =?utf-8?B?ZGlNWVM4U1VsUURSTTZ5VzRGMWg3QzJ2VDZVbXhjQllWSEJoaHhmTzRlbDg5?=
 =?utf-8?B?ZWQzVHFwVkhUYVJjQ2pHbEhpY1dHOEY2ZFY5RHJaRFZLQnpKdFJyc1phZC9w?=
 =?utf-8?B?Qm9nZ0lrNUtnTkFzMU9QTGxHYTlPYVYvUVV0ZzdKSStadzY2WmFoeW01TzBa?=
 =?utf-8?B?V0lKUytWS0JiU1ZhYlZpQ3lQdUF0OWNpN2NZU0cxaXg5VDF0R0E5Yi9SN00w?=
 =?utf-8?B?TDR0dTJkdVhXM1VXcUZrZitGK1ZSanIvV0dneVMydXhPMnRQenkrN2Z2cThD?=
 =?utf-8?B?eDlVOFJPK0tFaFBCNWJrbGhyakdoczRINTBxcEVKMGQyRVdSWVRQTnFRM3Qy?=
 =?utf-8?B?TDZLbjIwc0tveVR4bHZKTmx3SFZleUw4aVYzd0ExajRNdE5razZBRGVOR2Vm?=
 =?utf-8?B?LzZWZmUrMkpGaTh1b2VRbVNNL2tOb3JPTnZHaUJJdjZhUTVPVjZWTG5QTnVu?=
 =?utf-8?B?VVFnZG1jYmh0ZGhOVk9hM3RKVzNJaXI4N2NDbmdFNFNkU0gwZk94M0Y2Vk9u?=
 =?utf-8?B?eWhiR25uaXZjVmZkTlF6UHB1NWJqVHBRaXUyQS9za1o0Q0d3Y2IveC80NStV?=
 =?utf-8?B?aTdsK09FbnVzd01NRW1yNXA1WkpUS3lLRW9CMEcxTytPOVpCc0l5WXMraFpR?=
 =?utf-8?B?N0pSd3Q4bmFoZVcxdnNOMVBhUC9rY0JOeFYxK1pzblJlT1Vqak1hcmpYclpn?=
 =?utf-8?B?V21NaER6WFZ1cDNrNU5QREVTVVJVMytrRTFoelhMMU1ZNGtJQ2VKQzRNbWIz?=
 =?utf-8?B?eU1xczFMZHJLK28zVjZPZ1hraXhYRjlrNWRiR05kWWt3cjdBZ2k5bHJFTjJC?=
 =?utf-8?B?NVpjRDg4K241S2lJZVhmVGUvS1g0MStLUGxaRitwbDZibXFKVGQ1aVpydEFs?=
 =?utf-8?B?QjhUMm1rYXBhRkJ2Z0ZRWWRYd1BhZytaNDdLZTlTL2JlSzBjNmpsUlBmLzcx?=
 =?utf-8?B?RmlMeEk3eDlnSWxWM1IzandHSEpPTFF3dnY5bTlYc0ZzWlR6alVWd3hpcTlD?=
 =?utf-8?B?Z09Cd2hZcndvdm9SMVhWWGZNSmJjVjJ5UXZvamRjSEhaa2ZMR2dnN1VJZHMv?=
 =?utf-8?B?OWFqWlBxNlFYZFRuWFBzejFzUTJhdTlRSDVwTXVOYU9sNlkxeVJFdE94UnY4?=
 =?utf-8?B?RzliblFWZWJIeXFLdFN1dzVtQkhhR1AwNnFhYUNkVU1qbnEwR2M5RjZqUU9Y?=
 =?utf-8?B?N05BcjdudEhiMHlwbHU4ZVBwa2NGa21nTGxhTzNMdnFNZVE5K3UrUUJGb1ps?=
 =?utf-8?B?RzgvYzVrZTUrWHpYZ1o3RTM3U0xUY3hKbHpXeUYwMVhtZWs1QnA3d2VicGNV?=
 =?utf-8?B?NzJCNUdFdjlWVUxpbG9WRklCNWprN3M1SVN0WTJqMkcwRVR3S0lrRitxMXV3?=
 =?utf-8?Q?ZPnsAckBN06Bo33QDi6mQD3RR?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: b01a71bd-fbfa-41b6-c328-08dbd9f9f02f
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 31 Oct 2023 10:12:50.4243
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: Yi8J1w2s3qxpLNrH2d6ZLEZ5ftj4za2iO+GA/NBska54TvBddphqoIdWrvNm9pNJxUWWnGYHkxLJg+q0xdqnnw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR04MB9227

On 31.10.2023 10:31, Edwin Torok wrote:
>> On 30 Oct 2023, at 16:29, Jan Beulich <jbeulich@suse.com> wrote:
>> On 25.10.2023 21:29, Edwin Török wrote:
>>> This can be useful if you realize you have to inspect the value of an
>>> MSR in production, without having to change into a new Xen first that
>>> handles the MSR.
>>
>> Yet on a non-pinned Dom0 you'd still be lost. Since iirc we generally
>> advise against pinning,
> 
> You can temporarily pin while debugging the issue (e.g. pin just 1 CPU from Dom0, and "walk" all your physical CPUs with it if you have to,
> so that you query them all), e.g. with 'xl vcpu-pin'.
> Although that is more invasive than reading a value.
>  
> Or alternatively have another (privileged) interface to read the MSR for a given core without exposing it to any guests, that way you don't affect the running system at all
> (which would be preferable in a production environment), i.e. a Xen equivalent of 'rdmsr'.

The interface we have (XENPF_resource_op) is, despite being privileged,
deliberately (so far at least) not permitting access to arbitrary MSRs.

In our old XenoLinux forward port we had an extension to the msr.ko
module to allow pCPU-based MSR accesses (and I had a private extension
to the rdmsr/wrmsr user space tools making use of that), but even that
would have been subject to restrictions enforced by Xen as to which
MSRs are accessible.

>> I wonder of how much use such a change would be,
>> when it effectively undoes what we deliberately did a while ago.
>>
>>> --- a/xen/arch/x86/hvm/svm/svm.c
>>> +++ b/xen/arch/x86/hvm/svm/svm.c
>>> @@ -1933,6 +1933,9 @@ static int cf_check svm_msr_read_intercept(
>>>         break;
>>>
>>>     default:
>>> +        if ( is_hwdom_pinned_vcpu(v) && !rdmsr_safe(msr, *msr_content) )
>>> +            break;
>>> +
>>>         if ( d->arch.msr_relaxed && !rdmsr_safe(msr, tmp) )
>>>         {
>>>             *msr_content = 0;
>>
>> If we went as far as undoing some of what was done, I'd then wonder
>> whether instead we should mandate relaxed mode to be enabled on such a
>> Dom0. Then, instead of returning fake 0 here, the actual value could
>> be returned in the specific case of (pinned?) Dom0.
> 
> 
> Can relaxed mode be enabled at runtime?

Not right now, no. But a hypfs control could certainly be added, with
suitable justification.

> I'd be happy with either solution, but it should be something that can be enabled at runtime
> (if you have to reboot Xen then you may lose the bug repro that you want to gather more information on).
> Although changing such a setting in a production environment may still be risky, because the guest will then become very confused that it has previously read some 0s, now there are some real values, and later when you flip the switch off it gets 0s again.

Indeed. If you flipped such a control for any domain at runtime, you'd
better first check that this wouldn't cause any such issues.

Jan


From xen-devel-bounces@lists.xenproject.org Tue Oct 31 10:13:44 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 10:13:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625592.975023 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxlkk-0003E8-M3; Tue, 31 Oct 2023 10:13:42 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625592.975023; Tue, 31 Oct 2023 10:13: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 1qxlkk-0003Dz-Iz; Tue, 31 Oct 2023 10:13:42 +0000
Received: by outflank-mailman (input) for mailman id 625592;
 Tue, 31 Oct 2023 10:13: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=Rkuq=GN=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qxlkj-0003BG-9k
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 10:13:41 +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 29c4d5d1-77d6-11ee-98d6-6d05b1d4d9a1;
 Tue, 31 Oct 2023 11:13:40 +0100 (CET)
Received: by mail-lf1-x133.google.com with SMTP id
 2adb3069b0e04-507bd19eac8so7849208e87.0
 for <xen-devel@lists.xenproject.org>; Tue, 31 Oct 2023 03:13:40 -0700 (PDT)
Received: from fedora.. ([94.75.70.14]) by smtp.gmail.com with ESMTPSA id
 e3-20020ac25463000000b005041cc98273sm164308lfn.300.2023.10.31.03.13.38
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Tue, 31 Oct 2023 03:13: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: 29c4d5d1-77d6-11ee-98d6-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698747219; x=1699352019; 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=/+UGoB/YVkCPzNK+d54Zw2EOnbrcrfW9mhrCGDpErfM=;
        b=c4cwaa+zWFys8z/zaAiG0yuoPQt1YKHmA9CX52t3WGajZecJ1HA5NqICdFISHDh7JS
         96o5Wj+fDQBkVfD4L0LpIVR0ARE1jv75rgj98avLT1vrDryaDlwTfS9gALRV2le8dwco
         y1/AQhoiC7U/dZw4Sl6UqKKzEoXxTiuNNGwfuhMSUQ0BZvfO44I8c6dTKF0lVp5KWXJk
         90vSfYHKPcv/S+RfmDfc4vFVtaJYyJ6hs3UPf/dbRn8qAToO7L+NbmZUeWkGHr3G09/j
         HSt8GNvWcOChl1ReyFnsG5wHyO0O/Ik+s3n81aRJz5kzyc+5J+DrxxYdfarokFyJL0O6
         MD+w==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698747219; x=1699352019;
        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=/+UGoB/YVkCPzNK+d54Zw2EOnbrcrfW9mhrCGDpErfM=;
        b=ECFbyktYyEaLZ4+V2hpkCVIEu4FHplMiWIaX6gpTHTRiERJMz57MILBw9m5foRgoGZ
         vGuMQ5L7Tph4bWCMdcK5ROP55WIC2vRDiYTA+qVKnucI7ivLIdo/QGgN3WE/mmiDM14D
         Eurdn+Zgn1bdxyjudVKo13IpsJiEDG3/ahLvGYKTphdau+HnNSAErO81eTDBW3T90mBE
         WZIXtLkjJYFI9kAmJt8H72k675aWfdlfkVT/rT/TIScV8Jhqma8y9toRw3C09J8XEzYl
         /hZ17G7+SzILITnJLEfbsFLYCpLY4qPZvNxHiX6u8/0CreIfwz4qga6/717B9ET/AJ3g
         JxkQ==
X-Gm-Message-State: AOJu0Ywovz/oVi/2XfAI/GC3pRvPE/CbaNYr+pYnUc9ZZ8QyvvgN7og8
	wQgLjI1wbdd3ZdkHjhjnXzeJ4mzNpe8=
X-Google-Smtp-Source: AGHT+IGydhocY4QehMNETMHftdd6w2MVIet3NE6G8sfD8CyNCL8MBQ6QAw5ItLTb5+5oa0xodIel5A==
X-Received: by 2002:a05:6512:488a:b0:502:d743:8a6c with SMTP id eq10-20020a056512488a00b00502d7438a6cmr8517233lfb.9.1698747219268;
        Tue, 31 Oct 2023 03:13:39 -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>,
	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>,
	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] xen: remove <asm/delay.h>
Date: Tue, 31 Oct 2023 12:12:42 +0200
Message-ID: <a9eb7c50e99db286d011169030c6ef1d92f3da23.1698747162.git.oleksii.kurochko@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

<asm/delay.h> only declares udelay() function so udelay()  
declaration was moved to xen/delay.h.

For x86, __udelay() was renamed to udelay() and removed
inclusion of <asm/delay.h> in x86 code.

Signed-off-by: Oleksii Kurochko <oleksii.kurochko@gmail.com>
---
 xen/arch/arm/include/asm/delay.h   | 14 --------------
 xen/arch/riscv/include/asm/delay.h | 13 -------------
 xen/arch/x86/cpu/microcode/core.c  |  2 +-
 xen/arch/x86/delay.c               |  2 +-
 xen/arch/x86/include/asm/delay.h   | 13 -------------
 xen/include/xen/delay.h            |  3 ++-
 6 files changed, 4 insertions(+), 43 deletions(-)
 delete mode 100644 xen/arch/arm/include/asm/delay.h
 delete mode 100644 xen/arch/riscv/include/asm/delay.h
 delete mode 100644 xen/arch/x86/include/asm/delay.h

diff --git a/xen/arch/arm/include/asm/delay.h b/xen/arch/arm/include/asm/delay.h
deleted file mode 100644
index 042907d9d5..0000000000
--- a/xen/arch/arm/include/asm/delay.h
+++ /dev/null
@@ -1,14 +0,0 @@
-#ifndef _ARM_DELAY_H
-#define _ARM_DELAY_H
-
-extern void udelay(unsigned long usecs);
-
-#endif /* defined(_ARM_DELAY_H) */
-/*
- * Local variables:
- * mode: C
- * c-file-style: "BSD"
- * c-basic-offset: 4
- * indent-tabs-mode: nil
- * End:
- */
diff --git a/xen/arch/riscv/include/asm/delay.h b/xen/arch/riscv/include/asm/delay.h
deleted file mode 100644
index 2d59622c75..0000000000
--- a/xen/arch/riscv/include/asm/delay.h
+++ /dev/null
@@ -1,13 +0,0 @@
-/* SPDX-License-Identifier: GPL-2.0 */
-/*
- * Copyright (C) 2009 Chen Liqin <liqin.chen@sunplusct.com>
- * Copyright (C) 2016 Regents of the University of California
- */
-
-#ifndef _ASM_RISCV_DELAY_H
-#define _ASM_RISCV_DELAY_H
-
-#define udelay udelay
-extern void udelay(unsigned long usecs);
-
-#endif /* _ASM_RISCV_DELAY_H */
diff --git a/xen/arch/x86/cpu/microcode/core.c b/xen/arch/x86/cpu/microcode/core.c
index c3fee62906..48822360c0 100644
--- a/xen/arch/x86/cpu/microcode/core.c
+++ b/xen/arch/x86/cpu/microcode/core.c
@@ -23,6 +23,7 @@
 
 #include <xen/alternative-call.h>
 #include <xen/cpu.h>
+#include <xen/delay.h>
 #include <xen/earlycpio.h>
 #include <xen/err.h>
 #include <xen/guest_access.h>
@@ -35,7 +36,6 @@
 
 #include <asm/apic.h>
 #include <asm/cpu-policy.h>
-#include <asm/delay.h>
 #include <asm/nmi.h>
 #include <asm/processor.h>
 #include <asm/setup.h>
diff --git a/xen/arch/x86/delay.c b/xen/arch/x86/delay.c
index 2662c26272..b3a41881a1 100644
--- a/xen/arch/x86/delay.c
+++ b/xen/arch/x86/delay.c
@@ -15,7 +15,7 @@
 #include <asm/msr.h>
 #include <asm/processor.h>
 
-void __udelay(unsigned long usecs)
+void udelay(unsigned long usecs)
 {
     unsigned long ticks = usecs * (cpu_khz / 1000);
     unsigned long s, e;
diff --git a/xen/arch/x86/include/asm/delay.h b/xen/arch/x86/include/asm/delay.h
deleted file mode 100644
index 9be2f46590..0000000000
--- a/xen/arch/x86/include/asm/delay.h
+++ /dev/null
@@ -1,13 +0,0 @@
-#ifndef _X86_DELAY_H
-#define _X86_DELAY_H
-
-/*
- * Copyright (C) 1993 Linus Torvalds
- *
- * Delay routines calling functions in arch/i386/lib/delay.c
- */
-
-extern void __udelay(unsigned long usecs);
-#define udelay(n) __udelay(n)
-
-#endif /* defined(_X86_DELAY_H) */
diff --git a/xen/include/xen/delay.h b/xen/include/xen/delay.h
index 9d70ef035f..a5189329c7 100644
--- a/xen/include/xen/delay.h
+++ b/xen/include/xen/delay.h
@@ -3,8 +3,9 @@
 
 /* Copyright (C) 1993 Linus Torvalds */
 
-#include <asm/delay.h>
 #define mdelay(n) (\
 	{unsigned long msec=(n); while (msec--) udelay(1000);})
 
+void udelay(unsigned long usecs);
+
 #endif /* defined(_LINUX_DELAY_H) */
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Tue Oct 31 10:21:00 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 10:21:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625600.975036 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxlrk-0005Us-Ih; Tue, 31 Oct 2023 10:20:56 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625600.975036; Tue, 31 Oct 2023 10: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 1qxlrk-0005Ul-Ep; Tue, 31 Oct 2023 10:20:56 +0000
Received: by outflank-mailman (input) for mailman id 625600;
 Tue, 31 Oct 2023 10:20: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=yzb5=GN=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qxlri-0005Uf-G1
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 10:20:54 +0000
Received: from EUR02-AM0-obe.outbound.protection.outlook.com
 (mail-am0eur02on20631.outbound.protection.outlook.com
 [2a01:111:f400:fe13::631])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 2bbb6869-77d7-11ee-98d6-6d05b1d4d9a1;
 Tue, 31 Oct 2023 11:20:53 +0100 (CET)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DU0PR04MB9443.eurprd04.prod.outlook.com (2603:10a6:10:35b::20)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6954.18; Tue, 31 Oct
 2023 10:20:51 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6954.016; Tue, 31 Oct 2023
 10: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: 2bbb6869-77d7-11ee-98d6-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=NdO6c5KmrJsdEyhkKsZJsnUSV/DyhxldzHSdJEoRV6zhRkX/Hk9fFKHyDyBcAFsUgr+ah9zopq2/3mqdc38K4jneF/9xWTqawMmwWR/tt7ERhJKIiCj0iqVJWuFPb/Vs/UcX4Y1Q1vYiqftPN02qcZ7Gz8FtfQky/6jyIZdqGN1X+6kL0q+4zMrqsejjo5fiWTsx64lm0BPNJIf3P1zK5Ln2mWgPMr3TuVOp0RBSP01S6TTnQHcylClFQyN42iPJlhb4Oa1jyP/hisDF/Aec7K79RKik48oSgzHqCZXVUytf29W2jehkfxtnVCbQullDO+YrSJSz0ETWl9NvSlV1DA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=S5glKg/6Malbpd9Q1r5x3CQww802ehDsgVCSD+2P/KA=;
 b=eEhf4WLFb9jTGkzbN1kvPfs2jCKamBwWe0GnJxdAyw470NMOBoxOnDRoHM46of5jxqnHRkgfvSF735J3fIkahGwQ+1sZ/fR/A7LK3y8Iun+kgjSydi2LlWQTtWdonkoyhVJAxCqH0i8zZCwmwuIuZPlvmM1MSW8VJaGrLOqjqkgBtDXgzpXdcYC4xEAbg22sL/tMgcaREsfPVsbR5o4EECkeH7KBJ69/yRjMZKFLg8seVG8BHZhZZBUNSTYo/kPtZdgtlfbJiZwpAtocoAlw6lXrPGhJdw9sxLfy/AYgVI2Zzc4ec1gPZP6ZNf2UUeDT0jdBPkjyH4tBCzRBAfNNEg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=S5glKg/6Malbpd9Q1r5x3CQww802ehDsgVCSD+2P/KA=;
 b=bktzU6RTISsKFbmIOcMU5hF1IW2EUNhn46tcxospWRqtJ55LlVwryUP/oup06dl+fJoHer3sNL6OwmMpjVLRWRQH+F1vjfQ/UhgmIDe+uXOac1zEJq02/kBtKC8drGd8md8i8CJCjMXFWIXd8MLwpNIeExijrW5snFC3/S9ZU5JhnFvbcbfg88993esZePYiri471X/lX8NGOsfc9JZVzNIUO7oDlN/WpNRTWwGKxhFmQUZNRfJuQKUpA8vBAeXD880iKL1o+THV34uBT40LUo0I8y6WT0TG4cTBTC42l8kwJrAwB2S6sa/c2yykR9QOZlKhGqfHXzr2fV8w/0ZT6w==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <1178b79c-d6a3-a46c-5556-3fb5964dc051@suse.com>
Date: Tue, 31 Oct 2023 11:20:48 +0100
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [XEN PATCH][for-4.19 v4 1/8] xen/include: add macro
 ISOLATE_LOW_BIT
Content-Language: en-US
To: Nicola Vetrini <nicola.vetrini@bugseng.com>
Cc: Stefano Stabellini <sstabellini@kernel.org>, michal.orzel@amd.com,
 xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, consulting@bugseng.com,
 andrew.cooper3@citrix.com, roger.pau@citrix.com,
 Simone Ballarin <simone.ballarin@bugseng.com>,
 Doug Goldstein <cardoe@cardoe.com>, George Dunlap
 <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Wei Liu <wl@xen.org>, xen-devel@lists.xenproject.org
References: <cover.1698410970.git.nicola.vetrini@bugseng.com>
 <dca236bf9199f596bafb35eb48d81adc280d8cca.1698410970.git.nicola.vetrini@bugseng.com>
 <f88edc35-6b1b-0136-aa1f-6429652c4016@suse.com>
 <alpine.DEB.2.22.394.2310301536390.1625118@ubuntu-linux-20-04-desktop>
 <7c26fb70-6a8c-58a3-6a1d-300dd57b5827@suse.com>
 <817fab34432c854ce585aba80db77f7c@bugseng.com>
 <8b4e0da82930375b2a95387a9031c73f@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <8b4e0da82930375b2a95387a9031c73f@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0372.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:f8::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_|DU0PR04MB9443:EE_
X-MS-Office365-Filtering-Correlation-Id: 431376e1-82a7-48b6-c83a-08dbd9fb0ea2
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	FPIfuPQzHeS5jl0vcz6BlajHtNEjDT3IvlTLXGLyFEEnqhgReTgzCD+pGUC3nSKB8Xou0BwtPuqpgX04c7f53/pzlBUNx0cPWk9r1JZA1X6UWRUqaCDjvcNadduC/uuwAjxGVieymUPGOx8P6X2hP9F/Wm1K/UVUDlltgCcnPReaVYOkPL8KLIKltKff+tPo11UkObwSQsrD/JkNEIhfg51DJzQMg6usJNrgmfINclwOE80dYmEBXL3bLhfvuUp7hwcuyiG2sBNOcPlxFO/spjYp7fhwxcN/EFTRy8lPv6ihb7hamhrbdPnNyLbGDp4vQrLWRBFdSiH0IvzXEvmCRFxzy/WMCPIsaAWTB6HjhH8AhC1OVDaGIMA9ODAe1gR5ubj2ajAzDI+HFztD/Ivt87fqhFLxMGT9Ma28G5oaVXei5libasUW3ok+17d9WA4V6QD0bln7J5iOu2nmWGsNz8YzeC45YMwrzDAq7EVRri+GPV0gjnpSlc0X+kiDHv+MKKaNdCb8RBxfn+dsJdnZucfjLkhNYvVo1dfGMyLY0/wtiDTNltz/kXfEMLlzrVqbMTq5GAfhQWFhEjj6QV9BcG9+TtOCHhIFN6ZgrQE+Pu7gKkXHsjonEVL1756w0oKjNpXNZs3HAX6+pn2pXnjY9A==
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)(376002)(39860400002)(396003)(366004)(230922051799003)(451199024)(186009)(1800799009)(64100799003)(31686004)(26005)(6512007)(2616005)(38100700002)(36756003)(86362001)(31696002)(4001150100001)(2906002)(7416002)(83380400001)(478600001)(53546011)(6506007)(6666004)(8936002)(8676002)(6486002)(966005)(66476007)(6916009)(4326008)(316002)(54906003)(66946007)(5660300002)(41300700001)(66556008)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?OHJwS2Z1TjdpMnNEQ3pYWkN3MjF4RmxDK2NEcjFjNlFnRmxCS0VSY0Z3bGJh?=
 =?utf-8?B?ZWtoQUY1SllQSVh2WFBUaHF4SWltY0FCK1JTWlhhU0Jmek5abWtYMlllV2lQ?=
 =?utf-8?B?VEwvRnRacGE5QTIybjF2ZG1oMS9jVytUa28rTjF0MVhGU1dQT0lSSk9vT1d1?=
 =?utf-8?B?ZVM3WHpPaWFNNmZFS0c2Q0ExbGxXeC9TMFZ2YmFtQnQ0aFFjaE9iUFFrU25z?=
 =?utf-8?B?Vk9ubGx2L01aSUs5NEtocnVIbHhQVExLaHdOUjE3R0RySDJTQTFzcFdkck1Q?=
 =?utf-8?B?RHFFWTNkVjBjYnFrMTZhdFFGQjJLd2kvQnFoSW40Y3VyVm4xZU9VWVVOanZO?=
 =?utf-8?B?R0JCKzlGR0lOdnVhcUJKaVRJY3lLUTd2bHVVb1M0NTdTTEE3eE9ocWc1N2RE?=
 =?utf-8?B?clZ4YlFpcFRHYUx3c3NBelVkRUM4Nldlci82WFh4YnRBQitKRnNsOTJWb3lC?=
 =?utf-8?B?bHgrdTBCRnUwWHE3c1plMHVHa2tjaGtXNTdYUHNGekpZVjZOb2wwdXNTaUg5?=
 =?utf-8?B?emVaU1R4dHhoN1o4Nk1jeHppY2VaaE1yQlNFYzZycVFmOHlHb3IyYTZhdXg2?=
 =?utf-8?B?WWZxQUx1SktPbHRWa1BtRkx6aVZyY2Y3YXZrZC8wNzRTbUUvV1V1QzZGeEpa?=
 =?utf-8?B?V0tRM0RURlVKK0c5cngrdklFTVpoa3cwbUJJVDIxQXcxMWZScXhIYmNIUm9J?=
 =?utf-8?B?OURNUHBUTFY4c3BTWmZGL25qWG5KemVGenIyYmVrU1lmczAyU1liL2J2cVQy?=
 =?utf-8?B?TXh3bkt0ajlwOFBWWlFNVnVac2ZhMWNtVGdSME5XUWhrSVhYNWxVSW8vQ1A2?=
 =?utf-8?B?UUxtdjVnbGZwQ09qUmw3dkJXVFVWV3E3QWJrejJLSzVjMFF0Z2NvaURKbGlT?=
 =?utf-8?B?ZnZjOVE5c001V2ZvbGE4SnFaTjFHSFByemNOb3FkMCtkd1hDby85S0luWHZ3?=
 =?utf-8?B?Q3FnRlhlakF6QzlFTWhBMlgveUYrM2t4em5UK0pYQ0ppOTk4NS9TcmM4alZH?=
 =?utf-8?B?MHZMZy9ROWR6TEh0VmY1ejkySlhZUWhEMnFKNmpKS0E3WU9DV1NVUEtnRWll?=
 =?utf-8?B?UFV3UGtyWjFjVEp6azJnblcyRms5TFZRbm5rUWt4SEZHMHdwZFZwSmJmcTlK?=
 =?utf-8?B?emRxZFhQcS9VemRaWkRJbmdRbm84RGIyZ210aThJbEtpUHNsRy9jUXp2Q3Zl?=
 =?utf-8?B?TmNVV0Q4YTdqeElseHF1TzRHS1NNTUZsa0praXl4OWxMSDF0WXhQS3FiRTY2?=
 =?utf-8?B?TWlXdnNFODdKejFzSWxDd0FPZVpPb3liOUg5LzRjU1ZXNEJLQ0ZzVExUU1NM?=
 =?utf-8?B?OHB6dEFvdjVCb2VyeDJhdzd4bHhNS2lKbVkxM3M0bUxJR25CN3cxTG1MVUhQ?=
 =?utf-8?B?bWtnaUZCZ0NPMkZkWE0zNHJqN1EyNFkyQ3g2aGg2dDEreUVGS1Y1QXNoRWZY?=
 =?utf-8?B?SitwRUZxcytJTVp1MWN4NEU3blMrUWlrU3BvaUpua3pHbDVpRkFUNkZDYllj?=
 =?utf-8?B?K3JSdFBuME01QVlZZkJYd0RBTHF6aXUrdGhROSt3S1pUTmw3S0VKT0lyVEIv?=
 =?utf-8?B?MGplUnZzM2MzTUtQRmZhQWhOb255Wmc4VStna3BWMVJpRHdMNURnZy9VL0dl?=
 =?utf-8?B?Z3V1RllTU29sazBhekFrbngxeFZyOG1QYTlJczZXcTJySWdyVm9OZW1xdUJL?=
 =?utf-8?B?NWc2ZjNVL1MwUHdMbEVOSVpaV0lVNU9XenNoZVFMcDlZQ3AwVzRYVlAvTyt0?=
 =?utf-8?B?SWxTckE4WE1SNzlBYmoyUFBiNXhvYmU1WVk4QkpSM3NnSVAxMU1FQkU1Wlps?=
 =?utf-8?B?b2U3eWF4VWJISDZKdFZ1T3RVWUZRNERFd1paNkZ5SE5IejVIUW52dEdaS01U?=
 =?utf-8?B?SWVkSzhvZHY1VFVjSHk4YVp1VVQzOVRwcEVnSFlxN0Q2cGQ1eUovSDNqUFF4?=
 =?utf-8?B?RUN2QzNxdXhkTCtINTA0dUsrRTc2QkJQVzljeUdjd3Zja3FOcmhMbVFtdUpV?=
 =?utf-8?B?TWVReTd3SGhuVWpFK1lWM2svc3RuMlFJeWhMdG5CZ0ppbjQ4eStneTg1dVg3?=
 =?utf-8?B?TndiUFZneDBSYkZseCtOeXhLTzM4Y2gvK2RsQkhpWm1oYVgyeXIvVE9MUC9x?=
 =?utf-8?Q?cUiAv8tD4XTKZF2Kpeeoq3Crw?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 431376e1-82a7-48b6-c83a-08dbd9fb0ea2
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 31 Oct 2023 10:20:51.0018
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: NlIiNZY6K3gwFp+nROZK6bxigmPJMMY6vABYg0S66C8MkSzZLT0/malwV8jnBujfvaRxcJJhVUbPJol/zlGNHA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR04MB9443

On 31.10.2023 11:03, Nicola Vetrini wrote:
> On 2023-10-31 09:28, Nicola Vetrini wrote:
>> On 2023-10-31 08:43, Jan Beulich wrote:
>>> On 30.10.2023 23:44, Stefano Stabellini wrote:
>>>> On Mon, 30 Oct 2023, Jan Beulich wrote:
>>>>> On 27.10.2023 15:34, Nicola Vetrini wrote:
>>>>>> --- a/xen/include/xen/macros.h
>>>>>> +++ b/xen/include/xen/macros.h
>>>>>> @@ -8,8 +8,14 @@
>>>>>>  #define DIV_ROUND(n, d) (((n) + (d) / 2) / (d))
>>>>>>  #define DIV_ROUND_UP(n, d) (((n) + (d) - 1) / (d))
>>>>>>
>>>>>> -#define MASK_EXTR(v, m) (((v) & (m)) / ((m) & -(m)))
>>>>>> -#define MASK_INSR(v, m) (((v) * ((m) & -(m))) & (m))
>>>>>> +/*
>>>>>> + * Given an unsigned integer argument, expands to a mask where 
>>>>>> just the least
>>>>>> + * significant nonzero bit of the argument is set, or 0 if no bits 
>>>>>> are set.
>>>>>> + */
>>>>>> +#define ISOLATE_LOW_BIT(x) ((x) & -(x))
>>>>>
>>>>> Not even considering future Misra changes (which aiui may require 
>>>>> that
>>>>> anyway), this generalization of the macro imo demands that its 
>>>>> argument
>>>>> now be evaluated only once.
>>>>
>>>> Fur sure that would be an improvement, but I don't see a trivial way 
>>>> to
>>>> do it and this issue is also present today before the patch.
>>>
>>> This was an issue here for MASK_EXTR() and MASK_INSR(), yes, but the 
>>> new
>>> macro has wider use, and there was no issue elsewhere so far.
>>>
>>>> I think it
>>>> would be better to avoid scope-creeping this patch as we are already 
>>>> at
>>>> v4 for something that was expected to be a trivial mechanical change. 
>>>> I
>>>> would rather review the fix as a separate patch, maybe sent by you as
>>>> you probably have a specific implementation in mind?
>>>
>>> #define ISOLATE_LOW_BIT(x) ({ \
>>>     typeof(x) x_ = (x); \
>>>     x_ & -x_; \
>>> })
>>>
>>> Hard to see the scope creep here. What I would consider scope creep I
>>> specifically didn't even ask for: I'd like this macro to be 
>>> overridable
>>> by an arch. Specifically (see my earlier naming hint) I'd like to use
>>> x86's BMI insn BLSI in the context of "x86: allow Kconfig control over
>>> psABI level", when ABI v2 or higher is in use.
>>
>> I appreciate you suggesting an implementation; I'll send a v5 
>> incorporating it.
> 
> There's an issue with this approach, though: since the macro is used 
> indirectly
> in expressions that are e.g. case labels or array sizes, the build fails 
> (see [1] for instance).
> Perhaps it's best to leave it as is?

Hmm. I'm afraid it's not an option to "leave as is", not the least because
- as said - I'm under the impression that another Misra rule requires
macro arguments to be evaluated exactly once. Best I can think of right
away is to have a macro for limited use (to address such build issues)
plus an inline function (for general use). But yes, maybe that then indeed
needs to be a 2nd step.

Jan

> [1] https://gitlab.com/xen-project/people/bugseng/xen/-/jobs/5423693947
> 



From xen-devel-bounces@lists.xenproject.org Tue Oct 31 10:28:32 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 10:28:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625605.975049 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxlyw-0007B6-Bf; Tue, 31 Oct 2023 10:28:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625605.975049; Tue, 31 Oct 2023 10:28: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 1qxlyw-0007Az-7U; Tue, 31 Oct 2023 10:28:22 +0000
Received: by outflank-mailman (input) for mailman id 625605;
 Tue, 31 Oct 2023 10:28: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=ZpMf=GN=amd.com=Xenia.Ragiadakou@srs-se1.protection.inumbo.net>)
 id 1qxlyv-0007At-51
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 10:28:21 +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 35c0ce32-77d8-11ee-98d6-6d05b1d4d9a1;
 Tue, 31 Oct 2023 11:28:19 +0100 (CET)
Received: from PA7P264CA0030.FRAP264.PROD.OUTLOOK.COM (2603:10a6:102:2df::18)
 by DS0PR12MB9273.namprd12.prod.outlook.com (2603:10b6:8:193::14) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.29; Tue, 31 Oct
 2023 10:28:16 +0000
Received: from SN1PEPF0002BA4F.namprd03.prod.outlook.com
 (2603:10a6:102:2df:cafe::3a) by PA7P264CA0030.outlook.office365.com
 (2603:10a6:102:2df::18) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.28 via Frontend
 Transport; Tue, 31 Oct 2023 10:28:15 +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.6954.19 via Frontend Transport; Tue, 31 Oct 2023 10:28: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.32; Tue, 31 Oct
 2023 05:28:14 -0500
Received: from 10.0.2.15 (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.32 via Frontend
 Transport; Tue, 31 Oct 2023 05:28: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: 35c0ce32-77d8-11ee-98d6-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=dJWnm/cIXK1q/LElyi8mcpcc0KnaC990+eAoS8q68xdHRpzrhwbHuNYGAM+FFmtGY+Xk0T03NPJah3hcxUlfCrx97+J4IYiStzA1Ke+pIpgtUbVhEBHYnsz3v2MBQ2MIXRZT8Ngc1rLtY04ssyJFFENF6npFSQYypLu7DLbmvEERFsINOi5UF9jR1gd56TIbm9DFbo0Z7sTM+xTM3itook4bu1SFjKNJjRBkyJVON4eQ8WzSmh6SEJ3FdRFi1B50queVkhc71a54hY2A0GMO7uVUk9Yl5r6aEukSstuPJiSDaN5bcVCAJ4k7w11Tzz7xLQeU185ya4YRwDM8qBGoCA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=oGl9MqzhP1Oim7igMrrYAJM5bYqCurIVrY6eOC4lji8=;
 b=Co3z64ksyXuTsbDMdAhBocjJ+VNKAOCUlzPSNSX8AfkQKfM7Yfe62tG2TLU2TMa47yyeHWiNVW8bAqx+6QnWSlPCx7e1p6C1Qlk6qIZJiG56wAETOaaQOkIPT9khVbmsAqsBYwYEuEdYcZuN23gPE2RpIa0oImScfvHCNCYCvjQ7nX3XMX7Jyuo4EVKh0EvqSQvK2wP3KLFZYSvuBncouxU6chQzGURwvji5r2he6Eg3fciwCT/CNJBh/BFjEo8gWOZHvPeASZ0NUS59uIzD0+M5CHq2WIFwTrjFgc+UwpcPX0oTW95hkZTTp1OTJp9FG2CLi7r7GLdgdtcSQj1ZPg==
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 (0)
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=oGl9MqzhP1Oim7igMrrYAJM5bYqCurIVrY6eOC4lji8=;
 b=tT8axbQQjcKwr3DlHjkNkUiSscZGCyay+y5IiXK56hwn4Mw7O2w7EbvMOHeJicPusAsnq8PzoFF/I8xsG8LEk7LIRJ4ZMuVh4KV+2qDJv4z+i2IwGrRPaC2oD3WH8RPFnYKrO477/B0ktX1M8GlO9vdHlxmAB63n81SfMhDXG1M=
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: Xenia Ragiadakou <xenia.ragiadakou@amd.com>
To: <xen-devel@lists.xenproject.org>
CC: Xenia Ragiadakou <xenia.ragiadakou@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 v3] x86/hvm/dom0: fix PVH initrd and metadata placement
Date: Tue, 31 Oct 2023 12:26:57 +0200
Message-ID: <20231031102657.152207-1-xenia.ragiadakou@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-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SN1PEPF0002BA4F:EE_|DS0PR12MB9273:EE_
X-MS-Office365-Filtering-Correlation-Id: 6876bdf1-91e2-434f-3170-08dbd9fc1732
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	uG0dwUpZdNK/jmCMHCJi4d2L/h6zF1zYNhvG1XaiXosn+IxIpPpCI88cncH5ql/qA4sEcZs4X7FQWybv6gpns+wNUEs6ZH/POtCNZvnfRNVu1t6wxpA5u43zIyRaJIQDHCPMViq74nkLKrlPrwL1NrVseo97odmy1Tad+LfMmofeSrSge7ZX2Oqey/SufG4io71Y3zO+fAha9yi/1MfxZvMDQxn/Y1MQM3rKuZjBYwzKO+XEr1VqWyU9panvLlkzgzXb1mETakXqrccDyqdNGvNJ0u2YWCVp9Z8Az0MVvXcpCG6onIS5N6wLiGJjN11gQI1b4nyRBt0R9Y9lQVSwFoTKdMH8vtoAttkUmFhB6sWSTeNIFHKOrfCws+6PEp/z1W2+9bmAM9H3YBPqvAZVTy50txl1y4Hax3mpqDg4lUFnidxyPWuLBGXt3+YjKhIsvarZbURAoxIAY7Z5sXjUJFBTSXXYewEhBCIt+ZrBunhJ8fwmxRWhQt54g/3kfsicADZFrz5uN4t7qzlHz/Wj3+zwRMik9mO/VwivWTLq9dn/2Kb7JFbXJY+koJ/fTm+yI5uDc3NVzyKDo4dIy9D2RspxNpA+OuZcJFEttYjSOVCcJOxc87kur9+AnfzLu0JO71qL3ct9AFGATDAYPoa/WX0AwbVfhVF08v+JSa2MQ9Mp3A3rTpBmH1CcpbpObiCP2F/vQdACY/fsivaZjWbn/gQfn4LsphKpZOweXNDvozvFwikjfwfxCgV5g05O9/PiIMjfnSK1w9qitqEGWmc3VQ==
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)(230922051799003)(451199024)(186009)(1800799009)(64100799003)(82310400011)(46966006)(40470700004)(36840700001)(66899024)(40460700003)(40480700001)(426003)(36756003)(26005)(2616005)(336012)(86362001)(1076003)(6666004)(36860700001)(83380400001)(81166007)(82740400003)(47076005)(356005)(2906002)(478600001)(44832011)(41300700001)(54906003)(70206006)(70586007)(316002)(16576012)(6916009)(8936002)(4326008)(8676002)(5660300002)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 31 Oct 2023 10:28:14.6583
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 6876bdf1-91e2-434f-3170-08dbd9fc1732
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: DS0PR12MB9273

Zephyr image consists of multiple non-contiguous load segments
that reside in different RAM regions. For instance:
ELF: phdr: paddr=0x1000 memsz=0x8000
ELF: phdr: paddr=0x100000 memsz=0x28a90
ELF: phdr: paddr=0x128aa0 memsz=0x7560
ELF: memory: 0x1000 -> 0x130000

However, the logic that determines the best placement for dom0
initrd and metadata, assumes that the image is fully contained
in a single RAM region, not taking into account the cases where:
(1) start > kernel_start && end > kernel_end
(2) start < kernel_start && end < kernel_end
(3) start > kernel_start && end < kernel_end

In case (1), the evaluation will result in end = kernel_start,
i.e. end < start, and will load initrd in the middle of the kernel.
In case (2), the evaluation will result in start = kernel_end,
i.e. end < start, and will load initrd at kernel_end, that is out
of the memory region under evaluation.
In case (3), the evaluation will result in either end = kernel_start
or start = kernel_end but in both cases will be end < start, and
will either load initrd in the middle of the image, or arbitrarily
at kernel_end.

This patch reorganizes the conditionals to include so far unconsidered
cases as well, uniformly returning the lowest available address.

Fixes: 73b47eea2104 ('x86/dom0: improve PVH initrd and metadata placement')
Signed-off-by: Xenia Ragiadakou <xenia.ragiadakou@amd.com>
Signed-off-by: Jan Beulich <jbeulich@suse.com>
Reviewed-by: Roger Pau Monné <roger.pau@citrix.com>
---

Changes in v3:
    - mention Zephyr in commit message (Roger)

Changes in v2:
    - cover further cases of overlap (Jan)
    - mention with an in-code comment that a proper, more fine-grained
      solution can be implemented using a rangeset (Roger)

 xen/arch/x86/hvm/dom0_build.c | 21 ++++++++++++++-------
 1 file changed, 14 insertions(+), 7 deletions(-)

diff --git a/xen/arch/x86/hvm/dom0_build.c b/xen/arch/x86/hvm/dom0_build.c
index c7d47d0d4c..62debc7415 100644
--- a/xen/arch/x86/hvm/dom0_build.c
+++ b/xen/arch/x86/hvm/dom0_build.c
@@ -515,16 +515,23 @@ static paddr_t __init find_memory(
 
         ASSERT(IS_ALIGNED(start, PAGE_SIZE) && IS_ALIGNED(end, PAGE_SIZE));
 
+        /*
+         * NB: Even better would be to use rangesets to determine a suitable
+         * range, in particular in case a kernel requests multiple heavily
+         * discontiguous regions (which right now we fold all into one big
+         * region).
+         */
         if ( end <= kernel_start || start >= kernel_end )
-            ; /* No overlap, nothing to do. */
+        {
+            /* No overlap, just check whether the region is large enough. */
+            if ( end - start >= size )
+                return start;
+        }
         /* Deal with the kernel already being loaded in the region. */
-        else if ( kernel_start - start > end - kernel_end )
-            end = kernel_start;
-        else
-            start = kernel_end;
-
-        if ( end - start >= size )
+        else if ( kernel_start > start && kernel_start - start >= size )
             return start;
+        else if ( kernel_end < end && end - kernel_end >= size )
+            return kernel_end;
     }
 
     return INVALID_PADDR;
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Tue Oct 31 10:31:31 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 10:31:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625608.975058 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxm1x-00008C-OY; Tue, 31 Oct 2023 10:31:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625608.975058; Tue, 31 Oct 2023 10: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 1qxm1x-000080-Lf; Tue, 31 Oct 2023 10:31:29 +0000
Received: by outflank-mailman (input) for mailman id 625608;
 Tue, 31 Oct 2023 10:31: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=yzb5=GN=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qxm1w-00007u-V9
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 10:31:28 +0000
Received: from EUR02-DB5-obe.outbound.protection.outlook.com
 (mail-db5eur02on20621.outbound.protection.outlook.com
 [2a01:111:f400:fe12::621])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id a51613aa-77d8-11ee-9b0e-b553b5be7939;
 Tue, 31 Oct 2023 11:31:26 +0100 (CET)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM9PR04MB8777.eurprd04.prod.outlook.com (2603:10a6:20b:408::20)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6954.16; Tue, 31 Oct
 2023 10:31:24 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6954.016; Tue, 31 Oct 2023
 10:31: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: a51613aa-77d8-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=UUPMtFkZRtr3VElYj0OV2MUCQHij77nau3xThWUxIWJd/kgliv5BpFIPcWzjEAil8XJZt/iBd5iEITSbpreRp7OB6AoHOzbr+KybP89wW44SJvj7TDUa0N1sXgPI3Sh1/FLUCVBXRJyV2ei//DVBiCTVSegsg+7qetA/PgGTa23ObtWJwanVUTiyoZ92lijT1xTuGbZjFdE4ZSmP9gpFKYCRyb/KTjUDkQpBiDLZpnqcjyYd/uO/KjOiXpwkvhqpUwqxmDoVfyZFSc6nujzmJJt8EcL9/esrO8q7vPd6/d79YxAlvztmK6hevozd/3AXDhrJ7MpUfemost7YrECIKg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=bn5zbQ057cednY7dro7pNMDRXidD+HcvHCt1RMvGwXE=;
 b=Dw/Vblws6K4ARoNQlA+GZ6fJmeci59bYo/fiyX4wftO2UsLDQoGwZk2CibUarDVdAoMs8WItida07WVjFa5RhJfsgf2t5qqbHToWutYw722TDEZwacSsFPhgLGtqp4LnAA88VcAQXdEZkfgh4nuRmsDS03ClKUaup5w8aIk/bn5BIIbIQsVkoIiXLt/oVFL9p1RPIgAtL+JVMzgGe89PjNRii4DTJ5ec/gW6tnTpStBeQ5pT19BRCAlc3HRkrLFN+DOUURvSBgawdDYhfEZeTsEMOc9cVIx19k0dm3iWOJ9d7wnebuOGRr6uzPlZt1SKFJWLt/cb9Sl9vXD75duRsw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=bn5zbQ057cednY7dro7pNMDRXidD+HcvHCt1RMvGwXE=;
 b=emwO97UFlhhDTlZ3L6hLQ28ifcJMPZ8G/ka8Eb4OgwzERKTYuTfwWHCJz0S7HxeC7HeCqdUSU09Q3Yey5I+gvYbMCtozdoJbg0g8aJG1/vJ2W6g4567zmffvX7oCpr4MaV6PrTcn1wUIGcwOS1uaOhULeeqD17EYMn9OGQ9P1phUY5TvNalOCFG8TtRZR9fuwJtqR00ExXqcT5UsiEt5T+9jyYk3kYI9JWr8O4he4iOqutyndATayOQpy4XJr4AcnX4C0svCxeY+TTu9vxhlHvMoX3EyihYgqNNaSYs75sNSzqR5cVl90SbGLfk7n5irODMOKQM3HbrEi00dtofFFA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <8aa755d3-7cba-9543-95fc-056f397c18ae@suse.com>
Date: Tue, 31 Oct 2023 11:31:21 +0100
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/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, 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: <d70e8e6b00f7b08ed4b360d38113e6a1460ed3ab.1698743361.git.federico.serafini@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <d70e8e6b00f7b08ed4b360d38113e6a1460ed3ab.1698743361.git.federico.serafini@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0090.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:9b::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_|AM9PR04MB8777:EE_
X-MS-Office365-Filtering-Correlation-Id: e2dfbd60-4511-4b3e-30aa-08dbd9fc8810
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	Q4aGcaCw5oIJIK/KjmGw97mmIULubbgy5cZ37QFT8tJzgCocByvSd6XZ6+HFw+GihbjfCxeV6hdJnTQYfy846Elkh13ex7diee4Q/+wFL02Qk9YnDlP+CyW+rV7OV7V4yzA3BJSBTZ+BxAIVo13xdeugl/PJSB/8Fs7MW6hGsZeSfgKd2A+qI40sLW7BFIJD5NsBrdOzbfyxdu+sMHPGF/3H/SHVkZWgkTzu6reZjYRa6QYdW76fAPjArM/KNElRp80MEMsXaB9xvSqii/dJJ5JMATJQrLWasxdlvA6ijAU+ZQGrjbSRv0IB8zHM7bTjN9gxYbuDhfwzQ2Oop9IDXWhyM371t8bgY8k9gpoVEfLXeRKkrO5bNH7M5NW4RTFvOzyBfy7Ec/rcWyKemN+Oilhx/RzHMc+DwozVK8cBRh/R47dIQnWXfre89sihDzvWhLG5Iwe9KYU5BWwCryX4gzfvvBcU844T891yEkpiNJGLfyfDgpn+qhAZJNvcq9ZajiKoGBTbg2rBpI2gkHw2gSeP7K/f6Xz06x6YMMlOFcf2x82wieJ4gYE2+vhI1MQNtAJ0E+aKhgMszzZCqCyWHuJ/wdJF99RC0w22IreeYgh0UVrblSuNNRy2nNtOx7iC6ePhPqfBxwoTdWw7ig051w==
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)(376002)(136003)(366004)(230922051799003)(451199024)(64100799003)(1800799009)(186009)(38100700002)(2906002)(6666004)(66476007)(66556008)(54906003)(66946007)(316002)(53546011)(6512007)(6486002)(478600001)(6916009)(6506007)(26005)(2616005)(41300700001)(5660300002)(7416002)(4326008)(8936002)(8676002)(31696002)(86362001)(36756003)(31686004)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?eDJSdTlqTVVrZERnMS9VVnptU1NuWHF3bWtXSDNwa2xwLzdDWUE4VTZneWdk?=
 =?utf-8?B?VVdaMUdPR1RkRnNtL1B2Vk1kVDI4bjNJaEc4RlBJZHFTVjdmcmlGeGhabjBk?=
 =?utf-8?B?b0F5N1VjYmRIWTRoTmxFcklYTGJaT0RsdzV4aURKcjZvNEkyQmxEcE5FZU1V?=
 =?utf-8?B?RUVFcGtlemZpN1ZRcHQyaDA4c2poT3cremdNMkhqd2Y3bXNmWGhuZDR2cE9E?=
 =?utf-8?B?N1ZvTjNzTVZuZEFyMnVhOHR4Wi91Z0ZtQlRZSTRiZzJZQ1ZhcUhiTVdqVjVk?=
 =?utf-8?B?QXZGaGJpblRrMXI5RERqWm13WXpSM0IwKyswWTJSaHViSHA3d29LVVlOaVU3?=
 =?utf-8?B?Sy84clJBK2ZXeTJNSmV0VWhod1FmRGRFOXo2djh5dC9rY0R5eC9tdnRoY0FZ?=
 =?utf-8?B?SjdjVmhZTktnWDRLNy9xZkxOMTE5SFArdlloQmRFZE1KK1pWWGpaUzhOKzhE?=
 =?utf-8?B?czQ4TmZHenoxd3NoeXV0UmM1ejdMVkxtQ2hKRFZkK0hIUGo1ckkxaE9ldFdy?=
 =?utf-8?B?bXVJTm8vV2JKRnpuR2huUEV3Zm9VSGdXYWxLdGFFNUhWN1Q3MFZFVGZLdVZP?=
 =?utf-8?B?aHVSWkxNaEFSVnc0dm5yQUJEWm1RSkc3cExHRnVaQkU1TFk3eUNJa2p1MnhD?=
 =?utf-8?B?MjRDdUJ5VE9XSDNjbUFpZHZTaGVtTUVXWVNTZHh5Znpjays5Y08rQW1QZ09P?=
 =?utf-8?B?ZDNkVjY1UGhaZWFFTnU1N2FMb2VZRDFxUXJ0bG5ybW53RXFhSld3Z2hhRVkz?=
 =?utf-8?B?SGoxb3ZFYW55UjdHRHpHdmNOZThVeFZyU2MydTRwMXIydnllYVlWM1c3RldE?=
 =?utf-8?B?UWxHVWw1d1oydGpqYjNKTDNwK1JqSkkyWlNQWm9VWncxeVVRditMc2FONXdx?=
 =?utf-8?B?T1BPUE5JUk1aM1FMaGZFRWtHWFQ4TFowZEtZNnl0VmlIcXNEZmNlMy9DYVYw?=
 =?utf-8?B?TVRQR2pSUW51MHNQVTNROTdYd0huR3FZRVFTeWloZGY1WEJkTms1VzJrd0E2?=
 =?utf-8?B?SVErakNXZ0hhdWVrRUk1NytPLzIrY2ZQNDVoaVJlM0hpUTF2Q0IySWE0M1Bx?=
 =?utf-8?B?VVIxRkJVbjl6cTVkZVlScDdzM0hnMVllNWV6RmpZYVdUc0pGT3ptVThsZnVv?=
 =?utf-8?B?c29FQVdBMHdVVTlCdEhMQlZJT0lHbGNENlMzaGNFa1RITEs0Q093ZE5VQ3lw?=
 =?utf-8?B?S1NBR0V1MFdGUVdYU0hkWDN1bytjaEIrUEJnblhYMUdUT3UwTXN6bWlrNm1T?=
 =?utf-8?B?TlRsK2NieHg3cFYvaXNyeUJuWDBvU3o4YnpUNGRqbzdUTUtZaFhOblpTVnpk?=
 =?utf-8?B?c0pSYVJrRC92bTQ3dUd0SVNva0d1bVg5MDU2bHJxWGIyb0Y2WFpQQ2NGVVRX?=
 =?utf-8?B?N2VocE5mcnVRNjhjUk9GUTlGVzRvQkhKVjkvU0QwKzFXVlFJcmF1NTNxd0pF?=
 =?utf-8?B?dkxsWmNDa1V4OVduSXY3SkE0ZWY1UEQ0NWlTOTNsWDMyZktqdlE5dUJNZXdk?=
 =?utf-8?B?VDBZQ3lHYXpZZjdqSk55bWZGQzlRQ2wraXliWElFVllDcGJnU1Uxa2owQ2xR?=
 =?utf-8?B?d0VKQjZSdzhYRU9TbmFHL3Vjbk1tbEpDakNXVFlHSUpjVFdZK0tRSlF1L29v?=
 =?utf-8?B?NGtNcXhWTXVqbTBuKzFGREZwbThxZWFPUDdsQlBvb0hTVzV2Q3Q5OXJaa2ZZ?=
 =?utf-8?B?bVR0U0s5bmZqcTB4bVR5Y054STN1aFBZYUVkVnROTjFtTlUrRitiQ0JrU3ZL?=
 =?utf-8?B?djYyRGY3Z0tSKzJBQUY4ZFE0NzlIT3RiSExXN1llV2xUamJuckxJdjBycFJp?=
 =?utf-8?B?QjkweER3S2VnOEtwQXpyYjZDKzRMTVJJaVJ1NEhQMGcrOUFPR0JvR0lMT1Jv?=
 =?utf-8?B?Tlh4eUlwb0VYVkl5cGZlTVM4cTRidWU0c2lEV1V0aUFucDVTY0tiTXIvbjQy?=
 =?utf-8?B?VHFEblltRGtCc2VnNmRjUHZiUGo3UExDMXQxL1ZWeEp6M3BxNDNKUFQ1eDlo?=
 =?utf-8?B?cjViMjlibEhKTDFUMWpHNFYwdmEzMWswKy9oZmtMcFh1MFkxNzc4RksrMzd2?=
 =?utf-8?B?a3htalJnTDRPYnNLcXdzTmlwb3o1YjlZYUFWQWRkKzFEOHZlOUZGekh2Nkg1?=
 =?utf-8?Q?yaQXCFVgxQvN1NrqUSQOdtlW2?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: e2dfbd60-4511-4b3e-30aa-08dbd9fc8810
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 31 Oct 2023 10:31:24.1883
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: PsTCHrRfqB3VikmUsW3TI2T0VqaxHlZvn1pFzsNHIiNFDc16fEDQVgXvrpWwoJTM377aIJ25OPX3a7HaKJIdSw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR04MB8777

On 31.10.2023 10:25, Federico Serafini wrote:
> Make function defintions and declarations consistent.
> No functional change.
> 
> Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>

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

However, ...

> ---
> Changes in v2:
> - use 'ptr' do denote a const void * parameter.

... not even this (let alone the description) clarifies what the
inconsistency was. I had to go check to figure that x86 already uses
"ptr". Such things could do with spelling out.

> @@ -55,8 +55,8 @@ static inline void *__map_domain_page_global(const struct page_info *pg)
>  
>  #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 unmap_domain_page(ptr)               ((void)(ptr))
> +#define domain_page_map_to_mfn(ptr)          _mfn(__virt_to_mfn((unsigned long)(ptr)))

Padding wants to not be screwed by the change (one of the blanks will
want dropping). I guess this can be taken care of while committing.

Jan


From xen-devel-bounces@lists.xenproject.org Tue Oct 31 10:41:46 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 10:41:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625614.975069 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxmBn-0002rG-PA; Tue, 31 Oct 2023 10:41:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625614.975069; Tue, 31 Oct 2023 10: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 1qxmBn-0002r9-MW; Tue, 31 Oct 2023 10:41:39 +0000
Received: by outflank-mailman (input) for mailman id 625614;
 Tue, 31 Oct 2023 10:41: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=yzb5=GN=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qxmBm-0002r2-Ll
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 10:41:38 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur04on2081.outbound.protection.outlook.com [40.107.7.81])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 10a0956d-77da-11ee-9b0e-b553b5be7939;
 Tue, 31 Oct 2023 11:41:36 +0100 (CET)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS8PR04MB7973.eurprd04.prod.outlook.com (2603:10a6:20b:28b::16)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.14; Tue, 31 Oct
 2023 10:41:07 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6954.016; Tue, 31 Oct 2023
 10:41: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: 10a0956d-77da-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=f2B8X3UNZ94GJrywAEVgJVsQ5v+K4pmHlYN1Jqp2gJCEI/blS6fAGbbO91cWjLuSda7QVHiAOHOLY8Wa58WzRoFoP9AeU4GXHJc73J0EZ1CK53ovesbfenR1Wayl0CdYlqlbknPoMdToLadq31WGbWnZSsUVGPTogQ370YnnRL6R5yupUJoM+89yIMxsiEKSVz6Kb55t7GnXng/DlXDJWT/CwM04C4feDP3NflXVgtON6NiAf+Y9s2NJJbRPKVSwHuAhzoXID3e+yh/m+gl3JBo+pPiEMEB4AIAkO/wvjSk5sr/mgeHCUI8C5ha5kx4FK3v02T5pHVwrenBM5h1PeQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=5Ne5CTvhi38xoXQGZMljvDY2wcpzCCeKvFhkurlLsBI=;
 b=iGxqT5y/9Lc1hn12++tgYMZKbcHrZ5rJjvNR6wFC46KcSbDXdhyQT5yf+vYFbQX5roRkW10R0uqpmwBt90VhP/djlfeYyur2ORBx2lIW2klGmSCIAjfqOTYX7YR5TjKKX0lO0mRQoxReewwBjqcJtB/WxJY45VxlKNnIq5MJ9Gh0IQvbQi2Wirrie05dYHPTUt5zExTXlCAe9UioFY2J09UCMAqtc9ZCW4qyGbhMMCFlXFVgBIZtT49QmvKS+vU0OQZ3nwMT/j9sD1mxG2O8Vlv2O+uClcl6McHIRgVl2rDLC4H4IEIPfqBjxgx5MUZlPaKNbjuHe2IcgmkdtTlCWg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=5Ne5CTvhi38xoXQGZMljvDY2wcpzCCeKvFhkurlLsBI=;
 b=piWEnKtvd1ChKJfq0+CFPYmkXtOkG9Bp/UVY1XwIsJKifasUbKR5RM2TW58F16zmeaSOYhQ+F8HJSqiLypcbCVpreJRavKM5JFYR4YGoQjJF8SxN66uRIrXLgHL1Uo07KBzVkL923OvoLc+NYGRWJjbbozpTedoSz+sowPFokDMnrcqWgsmmU4p7GVybRIpQcTRi8WBfL/TdoJ9rm+ZHG7oyxmsj1CnokYil4k4xZzMeI8OPF2cB0dE0Wz6ieLeAc58AqJQrPk+4BFIG4Oj8nfCMMc9g++fcnV9AJLWygJb8LkNsUrRat7mdVCbKHfG9VGtO/TWZRmJ+Ftbn6TKWCw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <4698c943-ab16-97d0-164d-b824a0634a68@suse.com>
Date: Tue, 31 Oct 2023 11:41:04 +0100
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH] xen: remove <asm/delay.h>
Content-Language: en-US
To: Oleksii Kurochko <oleksii.kurochko@gmail.com>
Cc: 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>,
 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: <a9eb7c50e99db286d011169030c6ef1d92f3da23.1698747162.git.oleksii.kurochko@gmail.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <a9eb7c50e99db286d011169030c6ef1d92f3da23.1698747162.git.oleksii.kurochko@gmail.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 DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AS8PR04MB7973:EE_
X-MS-Office365-Filtering-Correlation-Id: 641a2861-638b-422f-c85f-08dbd9fde3c2
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	0IzyUNFEHE1+B7+ZLBI+AFltwZdj5EMMbU3TtleEhbrdNtDSg+fWdheyY7kEZtbx+mgFVANPaOAcacKzfW6T6tuI15MOa622UEcsXcjHIR9byxgegIEd49uVgpzk7BhGk7H7eP3BrzsPgJTdQU5YvsVXKKpxTx5fVmR8+aZ083DIhU5EQxpjiyZdypQXYSss+gJ5B2ABE1kWhmCMys3WCd9AMj3/MlQQiWwUc6ddgXb6IvJzw+mnZ4iH88YpTadJLiMX6tHI7rubwUzOpx6udWGkpkB+cWDXuZIV8gSaUshRUb+Hx9VJpaAZo623FtsHIxFLYDzuqTzVfCGqKOIdjYmnFyM6QM8nb/9ZqZpxQgXeASes0lvmHAoK6Qj75Lc6o/KHOoDSNhFC4YcrINzrXjJNVTkAqEngI/U5X7m3ERoN//EfK8jDHTsYqee+ANW2W2482RQT2T1gx3hG8bEP3iW4rIQsjVmc1N32X/JUlpx0rpj4RMUVn7Pfq3svKaZ2re5dUTYS9DfpMkO68xvMl3l0Se/an80tW8TwOhB9It84iXCs0PpowhjtcoMln+AsJfJV25j9i9rzxGVe89dNd3ySLNoOKV0Al0pIjsDw4D12InW83O77lz+f5IKLSLhMBJreFzwqFw5KI0NE2GTU1g==
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)(396003)(39860400002)(136003)(230922051799003)(451199024)(1800799009)(64100799003)(186009)(41300700001)(7416002)(31696002)(2906002)(8936002)(86362001)(8676002)(31686004)(66946007)(4326008)(66476007)(66556008)(5660300002)(54906003)(478600001)(6916009)(316002)(6486002)(36756003)(83380400001)(4744005)(2616005)(26005)(6506007)(6666004)(38100700002)(53546011)(6512007)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?OGlqTkVSUWM5dGdBVVdRc3doZDVURHN0QVdoYlRQWWwwMVNXdjFmZWxTem1D?=
 =?utf-8?B?RjJDZWRJTVg2cHltRjNXS3Mya2JLSE9TenVydkNwRjFORzU3c3JOQWtQRnRZ?=
 =?utf-8?B?OW5rNWVIS3M2Sm5lN0FFdm45U1lQTkhTMFdlTUZCZ0JSSUZLY08vODRyYllk?=
 =?utf-8?B?bHBoVTdhbDNSSmFrOC9idHBhanpsemZMWE1zcnorTGVTTS9yZTM2Q0M5NEh1?=
 =?utf-8?B?UWkydHZrK0VSK3hRVVJjY1pFdEN5WkU5RTZIcmtyZnM3OGxJclBRdzBoeC94?=
 =?utf-8?B?RGpSN1VOUFlKcHhPTWFEdGdUVUhaY2pvT3pvWEwyV0FkcURXa2pFTUo1TFBv?=
 =?utf-8?B?a1NHTVJxdGxQSms2YWd1Tld6Rkl5SllVUmVZcXpZeVlhaC90NUhMYnZRbGx2?=
 =?utf-8?B?N0UxdUpLYlhzcG1RTXF0TTd1RWxFazh0cTQ1WmdVRWUyUFRFeE5QalNPY25z?=
 =?utf-8?B?VnhlZWUrak1LN2FIUm1IQ200bS9LeEVQSGFZaUJWRnpjL0RRWDhHbmp0TDd3?=
 =?utf-8?B?TzRwZEhJZldybU1RbEh2Um1OOUt3dHNuN2NsRk5IVUhoZnRsWVhnYkNPMWVG?=
 =?utf-8?B?alJyK2trN1FoNEYzTUMrcFdvWFBkc1NUNGlPbWh2c09jQ0tJaDJyOFF5Rk1n?=
 =?utf-8?B?Qy9VaWNqaVk1YzB4bkFadnNYYTVLT2hTcWZRTCtRZXU3Q0NNY281U3ppVVBK?=
 =?utf-8?B?Y0UvNGk5SGwrdEswMVhCdTdnUzRiUnYxc0dONnVBeFNuanJnckpQcWx4VXFP?=
 =?utf-8?B?Rkc3TkRXUTF0OFRJWkRYZDF1OU1YVmg4NmpidmR4YjlhNGpHaDFJekFPU2ZT?=
 =?utf-8?B?b3BZWXRFZFpPb1ArWlVUWUFPenlta0wwbmd6RzNsaWNkTjI0cjJoTHlJWWlp?=
 =?utf-8?B?MjR5Z0JIWU9rQW53TWdsUnloSDNHS0N2UUZkUWVYeUpBbE52Zkh0QjZlQjJn?=
 =?utf-8?B?Mk9mNWtoSng4ZDZkbENXeFVteWtQUTFXMVo5d3FmY28yWFhEdm83RnJZVFFj?=
 =?utf-8?B?QnFFRmo4Y1JEVml6bVM1WW1LRmVBeDAvU2pIeXp0M24rR3JDZEdXaUJPdjBi?=
 =?utf-8?B?TjJvL2dmdmVqWFR4RXcyTlczT3RMRm5hMjNZd2ZUOU1oZExkajhHWTVZY04z?=
 =?utf-8?B?QlNoYlNYNkh1b1VaSGt2M2dlZ2NOV1ZvZFpaVCtKV25IdVhvWWNmaXZSN1pD?=
 =?utf-8?B?bCs4WkVKeS9BK0kzM3gzTkdYZ055R04vUHZpNXJON2hSYXI1OCtVUVQ0dFVZ?=
 =?utf-8?B?bUpkWjl2MGcrZ3BTcHFtNFJIQVJyN0NqMVp3QmZkUEVZRHh4Z01MOENjbUtT?=
 =?utf-8?B?Um9ZOEYrVWErY3JiTUMwQ1ZscDJtSnNpaWl0dmhUbU01dWp1TzVQbkp3SXhQ?=
 =?utf-8?B?VE5kVVFVd3BNQkJGR3NwK25aSFRDZzRNdGZ5MmdMM2dnamY4a2d1Y2p4eGox?=
 =?utf-8?B?NlBTUEdJWkcyczZOeE9kYzB1eXd3ZDdxVXRQbktWelFJbldGSGgzbFRqOXdZ?=
 =?utf-8?B?dEJEK0R4N2ZMRm82VmVzckU4QndTM3JBZzNMLzRrSy91TXp1aG5pUUhxbm5L?=
 =?utf-8?B?bEp5ZFVQZGFNTEVmSXlkZEJ3VnFweFdLa0RFM1lRUkpvYnp1TG1BWlU2TGE4?=
 =?utf-8?B?Y0twSVk0RXVGMWFlZUM3YTJwUGZqcUUzNE12WUo0RmZrNllaUGJITU9RT3Vq?=
 =?utf-8?B?M1BHZVh5eUVobVB4SlYyWWtiSFJXUkovWk1mbysrU1JYVGZVbVV5NVdDb2pN?=
 =?utf-8?B?ZWdGUkVIUUtHWUw5K0luWFA0aGxNZEhCK3JiR2tvS1ZtWFh2am55bUpWdk9D?=
 =?utf-8?B?OW5oTzlTVEc5bWxaTkJIZjd2WGljV0k0Y29paE1uVGhFV0dra2pWVDF0VHBU?=
 =?utf-8?B?WHdrblhRMVZiV2s3ZUV3c0pPZFk5bXBvZHdFd2hkZHhGbFRDVk1oV2p6UDg0?=
 =?utf-8?B?eGlISWlaUk1kb1pQbHN5Yk43R1FGdVZlWkxhcDVyZlBIZFhOY0twUE5RVDI0?=
 =?utf-8?B?M0R5YmFTZlRKZ2ZNVzFYeDNzMllLZE5BVFdPQ2dtME5GbThRTEs1OVNJdENU?=
 =?utf-8?B?bmt1aWhmVy8weVdocTFXazFwT3ZBMjUxSjNwRjF1cFQraGpaYk5rQXNvU3l1?=
 =?utf-8?Q?kn/4cP2WKRILppVr2ZdYfR97v?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 641a2861-638b-422f-c85f-08dbd9fde3c2
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 31 Oct 2023 10:41:07.5520
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: REtvuR5X1Uu159DKv9+jotO3JI6s/Cj/gLztumXF03Sk0kIj4nLZ6oMMXqjmt/PvzUBK/0H8VnZ+tIt4ospY4w==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB7973

On 31.10.2023 11:12, Oleksii Kurochko wrote:
> <asm/delay.h> only declares udelay() function so udelay()  
> declaration was moved to xen/delay.h.
> 
> For x86, __udelay() was renamed to udelay() and removed
> inclusion of <asm/delay.h> in x86 code.
> 
> Signed-off-by: Oleksii Kurochko <oleksii.kurochko@gmail.com>
> ---
>  xen/arch/arm/include/asm/delay.h   | 14 --------------
>  xen/arch/riscv/include/asm/delay.h | 13 -------------
>  xen/arch/x86/cpu/microcode/core.c  |  2 +-
>  xen/arch/x86/delay.c               |  2 +-
>  xen/arch/x86/include/asm/delay.h   | 13 -------------
>  xen/include/xen/delay.h            |  3 ++-
>  6 files changed, 4 insertions(+), 43 deletions(-)
>  delete mode 100644 xen/arch/arm/include/asm/delay.h
>  delete mode 100644 xen/arch/riscv/include/asm/delay.h
>  delete mode 100644 xen/arch/x86/include/asm/delay.h

What about xen/arch/ppc/include/asm/delay.h? With that also removed
Reviewed-by: Jan Beulich <jbeulich@suse.com>
(and maybe also Suggested-by:?)

Jan


From xen-devel-bounces@lists.xenproject.org Tue Oct 31 10:48:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 10:48:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625618.975079 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxmII-0004eU-EA; Tue, 31 Oct 2023 10:48:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625618.975079; Tue, 31 Oct 2023 10: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 1qxmII-0004eN-BJ; Tue, 31 Oct 2023 10:48:22 +0000
Received: by outflank-mailman (input) for mailman id 625618;
 Tue, 31 Oct 2023 10:48: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 1qxmIG-0004eH-Qx
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 10:48: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 1qxmIA-0008Lj-Fh; Tue, 31 Oct 2023 10:48:14 +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 1qxmIA-0007qZ-74; Tue, 31 Oct 2023 10:48: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:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=adkvDTKfJtX5mUJRurQ4/7eGspLhoQBrJKiCyOyItv8=; b=ZvUNYafWfNtusKHXfLwDJt9TO9
	YmPsSBlomeXjgHldB6mofmAFewr4CVCdZGp/boFI0MVQkLXD9dTt4X0DLgwecIlXQ3LjYG3IFy/Dp
	wf+N2J3GFOtduZN2FUM8rkhSDprjBmK2RxJmewyU3G5fDYZFCGf/kx9N5wM2VYvOyx4I=;
Message-ID: <9a539156-9e11-43b7-9f62-0c1b1d842e89@xen.org>
Date: Tue, 31 Oct 2023 10:48:11 +0000
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN PATCH v2] xen/domain_page: address violations of MISRA
 C:2012 Rule 8.3
Content-Language: en-GB
To: Jan Beulich <jbeulich@suse.com>,
 Federico Serafini <federico.serafini@bugseng.com>
Cc: consulting@bugseng.com, Stefano Stabellini <sstabellini@kernel.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: <d70e8e6b00f7b08ed4b360d38113e6a1460ed3ab.1698743361.git.federico.serafini@bugseng.com>
 <8aa755d3-7cba-9543-95fc-056f397c18ae@suse.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <8aa755d3-7cba-9543-95fc-056f397c18ae@suse.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi,

On 31/10/2023 10:31, Jan Beulich wrote:
> On 31.10.2023 10:25, Federico Serafini wrote:
>> Make function defintions and declarations consistent.

typo: s/defintions/definitions/

>> No functional change.
>>
>> Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
> 
> Acked-by: Jan Beulich <jbeulich@suse.com>
> 
> However, ...
> 
>> ---
>> Changes in v2:
>> - use 'ptr' do denote a const void * parameter.
> 
> ... not even this (let alone the description) clarifies what the
> inconsistency was. I had to go check to figure that x86 already uses
> "ptr". Such things could do with spelling out.

+1. The more that x86 was the "odd" one but it was chosen to use the 
variant everywhere.

With the commit message clarified:

Acked-by: Julien Grall <jgrall@amazon.com>

Cheers,

> 
>> @@ -55,8 +55,8 @@ static inline void *__map_domain_page_global(const struct page_info *pg)
>>   
>>   #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 unmap_domain_page(ptr)               ((void)(ptr))
>> +#define domain_page_map_to_mfn(ptr)          _mfn(__virt_to_mfn((unsigned long)(ptr)))
> 
> Padding wants to not be screwed by the change (one of the blanks will
> want dropping). I guess this can be taken care of while committing.
> 
> Jan

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Oct 31 10:56:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 10:56:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625624.975095 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxmQH-00070h-9O; Tue, 31 Oct 2023 10:56:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625624.975095; Tue, 31 Oct 2023 10: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 1qxmQH-00070a-64; Tue, 31 Oct 2023 10:56:37 +0000
Received: by outflank-mailman (input) for mailman id 625624;
 Tue, 31 Oct 2023 10:56: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=9ZX9=GN=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qxmQF-00070T-Ns
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 10:56:36 +0000
Received: from mail-ed1-x536.google.com (mail-ed1-x536.google.com
 [2a00:1450:4864:20::536])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 28000d76-77dc-11ee-98d6-6d05b1d4d9a1;
 Tue, 31 Oct 2023 11:56:34 +0100 (CET)
Received: by mail-ed1-x536.google.com with SMTP id
 4fb4d7f45d1cf-5431614d90eso3609375a12.1
 for <xen-devel@lists.xenproject.org>; Tue, 31 Oct 2023 03:56: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
 s2-20020a056402036200b0053e36dd75dfsm925581edw.35.2023.10.31.03.56.33
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 31 Oct 2023 03:56: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: 28000d76-77dc-11ee-98d6-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1698749794; x=1699354594; 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=qP8pVVjgSTImsKy1oDqLX8d5BGePhLJgE4v86oPTIm8=;
        b=nc6gJpD/L7D28SIjObP443ht9yY5N13hYBpMmwWPkWZMptUYUVI16gX+36GdLSfOM/
         GTsg/kuAbATCiEJU/yYF2SVGqBqgKrVMLpoUoECOlQ7EDvYGMwUZcSamAHyEiUIZ1Zto
         VmLbkY950ghb/auTzHWI5n3j62tfaFXBjwhro=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698749794; x=1699354594;
        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=qP8pVVjgSTImsKy1oDqLX8d5BGePhLJgE4v86oPTIm8=;
        b=HpjT9o+Ok6SprrXRcqneYxed8wSgrPi6jSz97+7Rudad1LKS27gYaDQcVyiDxUZuYd
         BCQ3KlYgH95pPSSojQ2LfSIxEy2xXwkUmKeBITI5lcmxLRM1cKMs2yf3vLiZSIiNxtmg
         2mfjghV37/DdDspcgknjEGNNJDPCaAxHYlsnQQSNg/Q5iYZIqjALg4nNaXmBk5LDFUoI
         du0KRDh3XogKBKdLIARd2CB5+88UJ0XyDktY8airyvNZ8gDsO9qnERly/rB4efs6B6MQ
         bKp1o3+q038KOUNATa9Mf4lU3N/J1Gfm2qs7otn8ulJ1WH64wlqkmo4eoIvTwVqJ6Hzl
         faog==
X-Gm-Message-State: AOJu0YzXqa6GmYEeJPUmACwmyQGbTK8zHFnas5G77tV5NcJJ9KvhqXKQ
	hLlqs7jnzrWdvgWt7FsRGiJq2Q==
X-Google-Smtp-Source: AGHT+IHFhpg2hg25GjHtHEPSIK5Kq4AMb2biJdXANVN1dC8EeuwJ2eY7Qtllw+2CeqUXme7BWRTixw==
X-Received: by 2002:a50:9547:0:b0:542:d9aa:3442 with SMTP id v7-20020a509547000000b00542d9aa3442mr7101754eda.26.1698749793936;
        Tue, 31 Oct 2023 03:56:33 -0700 (PDT)
Message-ID: <3d63c864-3cdd-4969-ba80-651fcc292f7d@citrix.com>
Date: Tue, 31 Oct 2023 10:56:33 +0000
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH for-4.18 v2] automation: fix race condition in adl-suspend
 test
Content-Language: en-GB
To: Henry Wang <Henry.Wang@arm.com>,
 =?UTF-8?Q?Marek_Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>
Cc: Xen-devel <xen-devel@lists.xenproject.org>,
 Doug Goldstein <cardoe@cardoe.com>,
 Stefano Stabellini <sstabellini@kernel.org>
References: <20231031021712.407318-1-marmarek@invisiblethingslab.com>
 <C63E595B-4C98-40E2-B692-1163FA1682A4@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: <C63E595B-4C98-40E2-B692-1163FA1682A4@arm.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 31/10/2023 9:58 am, Henry Wang wrote:
> Hi Marek,
>
>> On Oct 31, 2023, at 10:16, Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com> wrote:
>>
>> If system suspends too quickly, the message for the test controller to
>> wake up the system may be not sent to the console before suspending.
>> This will cause the test to timeout.
>>
>> Fix this by calling sync on the console and waiting a bit after printing
>> the message. The test controller then resumes the system 30s after the
>> message, so as long as the delay + suspending takes less time it is
>> okay.
>>
>> Signed-off-by: Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
> I think now that we branched, this patch should be committed to both staging and staging-4.18.
> For staging 4.18:
>
> Release-acked-by: Henry Wang <Henry.Wang@arm.com>
>
> I will remove the commit moratorium for staging once OSSTest does a successful sync between
> staging and master. Thanks.

Acked-by: Andrew Cooper <andrew.cooper3@citrix.com>

I'll get this sorted now.

~Andrew


From xen-devel-bounces@lists.xenproject.org Tue Oct 31 10:56:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 10:56:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625625.975105 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxmQJ-0007Gg-Fx; Tue, 31 Oct 2023 10:56:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625625.975105; Tue, 31 Oct 2023 10: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 1qxmQJ-0007GZ-D9; Tue, 31 Oct 2023 10:56:39 +0000
Received: by outflank-mailman (input) for mailman id 625625;
 Tue, 31 Oct 2023 10:56: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=yzb5=GN=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qxmQH-00070U-TR
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 10:56:37 +0000
Received: from EUR03-AM7-obe.outbound.protection.outlook.com
 (mail-am7eur03on2061b.outbound.protection.outlook.com
 [2a01:111:f400:7eaf::61b])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 2769c46e-77dc-11ee-9b0e-b553b5be7939;
 Tue, 31 Oct 2023 11:56:33 +0100 (CET)
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.6954.16; Tue, 31 Oct
 2023 10:56:30 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6954.016; Tue, 31 Oct 2023
 10:56: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: 2769c46e-77dc-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=DBo+HZhFFqdJiqVtWqOKofZdmK0eLYHobky0fSFMtIN2t3mI0FM3Ts/e88fdH9/GU9NBYD6iN/GRJ9pwFq/H2sXopA8PAV738XpcUNZwSbE8/GlFtgyvngm2DoCXrMWvhBCE7Y19eNAMpaYPSo2hM0CLVWiKj/coELvBzGeDW0rk9nFXJP29VuqR2Vl/VtGvpdKqlNG9ycmPAZeLuLNxJSs5mrGbK7pLH6sXxcwcY3TK/oGITxMryeJzUHTws0Gzmd11xaMXLH5rtsBDhFLNKB3i6gkEh9IVKX+3cd5Z4BesgLsX+3dsYGyusiPFwCRT7XeTRtl4hf7DcvpVwN6UUA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=fXOfFExdM7yfT/+4zObIH0WurN02Ty51xEKkY1+/U/s=;
 b=UWH56St3F9KcYZrOd73S+OSnIFZzwBtW7dqvK9ysy0ydESMYjy24xM9WYvFnVFvNtrL5tUT92W7YNbaU1LzdZhbds5raC5rvTgetB9NjT3L2x+43MzKuxIIdA1QBLSzIZvZkT07rzny1xsJtgmePIVGA0Ut9697GtarMjioV6yd432oddIW+cMJTX/ozQQHPluw2p55BADop+7NUZ6vx68j26OwLT0hS8Y9hplBPckQm0fDpkPqDb62rZw+qPf+EDCchk1L8jJUKcLsCz4OFUY3aEONitt//c3SFEwmJrEMC21WemetaIS60Oom0f+bzZF/DIoJnqTkMUDbgW5Dk5g==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=fXOfFExdM7yfT/+4zObIH0WurN02Ty51xEKkY1+/U/s=;
 b=t/Z0+sXbxXrxPsB3SNi9A2KBZjsRf9Z36XqzGn0S5kSay/G7rd6HJbxZ4a4dkpOPD4kMhHAc0+/Rq1QMG6TNVa69j5Rq7021/pXFylHh/Z07aEAeJFVyYW4Vhvkrq7wjto3E71I77MiSt4q96rm6zRnCbjql6Hk1O3pCwPupupFSvaFLI4qWD5T9FFChYC0HP+XOfIxbUFKvyVdoV214R9yufbpGqRDfilXQCIxN7WPAIXRM2aLnnWceLME4iybkpz9E6P2JtP7jZ6lPEzOpVqbpRWGsgDxXAG9CexnVE25BI2pFBFIw2ctwzCHdeSiBxVm9yvZdZb9bPPtdQyGboQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <1c27d0a7-f04d-32ff-05df-4da4c32bebdf@suse.com>
Date: Tue, 31 Oct 2023 11:56:28 +0100
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH v4 2/5] xen/vpci: move xen_domctl_createdomain vPCI flag
 to common
Content-Language: en-US
To: Stewart Hildebrand <stewart.hildebrand@amd.com>
Cc: Wei Liu <wl@xen.org>, Anthony PERARD <anthony.perard@citrix.com>,
 Juergen Gross <jgross@suse.com>, Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Christian Lindig <christian.lindig@citrix.com>, David Scott
 <dave@recoil.org>,
 =?UTF-8?Q?Marek_Marczykowski-G=c3=b3recki?=
 <marmarek@invisiblethingslab.com>,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Oleksandr Andrushchenko <oleksandr_andrushchenko@epam.com>,
 Rahul Singh <rahul.singh@arm.com>, xen-devel@lists.xenproject.org
References: <20231030235240.106998-1-stewart.hildebrand@amd.com>
 <20231030235240.106998-3-stewart.hildebrand@amd.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20231030235240.106998-3-stewart.hildebrand@amd.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0134.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:9e::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_|DU2PR04MB9209:EE_
X-MS-Office365-Filtering-Correlation-Id: 9b54abea-5588-46e7-2bfb-08dbda000a09
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:
	CkANh1UfSzJybbY7SjRZLg+2IR8k5mPDv49k9o1luWIWSoi6APpOv+fTDkZGTdLrzYDnDAHRUAe8tp2ZptuQDnRS6D4PCN/1kFnZKS2EapV3mpFfcpCBm1rUHtq7XqmwPqkl01JqKCfSUhfTtg/+KEJkeBd5IMZMQ2UjB2G4MV6RP2nAVAyGG3rJI6rUHCjHDUQhAPBbNPNJM4e2Z/xhrZCgGoHNLW6JyT//UOkGQbuQbd0Cq1w0xCCIa6NxXr1wDyM998vdQ4jJvXhPFDr3oOCs2AkFzYNydd0lzy915I903C5wsisAcRhbJBl3HJ7iqvUcLbZij3YO8Dk6Ru9Y7R0sagAEZL0wO6Uzs+0yNMtccQVEf8Cdef33j7zbZiVsWa+nzK5wO6UjTxR0dXedtPtd7QBwVnp5va5LU4aaqTsvO5iKdmiMDBZBXVPNX/xoZX2tzHqTM7jO9TU/htkJ5efQE4OtYypilEHdo2WMEhVtqq25a1z/jiKyC+7BQFFAJOPwAxWlHPR0SfFyyq/CmAnTKBg4K2zuu/AIOUadgjkhubkNdjeYpCRsUcNmNQ10ZdPHpEwpW1ShUpY1pntTioF7SqIlDOCuaDURfF47/dyEeTyRCNzS6mCDuQFhpcv1ZbVnLa9r9ZANXsT88cIgqg==
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)(376002)(136003)(366004)(230922051799003)(451199024)(64100799003)(1800799009)(186009)(38100700002)(2906002)(66476007)(66556008)(54906003)(66946007)(316002)(53546011)(6512007)(6486002)(478600001)(6916009)(6506007)(2616005)(26005)(5660300002)(7416002)(41300700001)(8936002)(8676002)(4326008)(31696002)(86362001)(36756003)(31686004)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?SEViSDVUN3NNNEVzekhGc0NMbDkzSThZMmMwYStzVDh3OEd2K3FteCtNSjZT?=
 =?utf-8?B?K2xIZTNDV3RUaUMvbUN6QVM1bXhKUTRDejk4Y21QQ0tRdnlLQmthZEpMV25W?=
 =?utf-8?B?dFlMdDdKTXFyREd0RHJWS29qRFBlM21VTnRuNmROTzY1cUZnRUJ2Z3hQSXVZ?=
 =?utf-8?B?V1pHUjFTR254alczeWUyMHdLbGpjMFVEdGN0ODRaS0FuV2FpaVM4aE9ESjFL?=
 =?utf-8?B?ZHRxWFVmQW1mWlRyK0NOMVY4Y1JtZGp0V3djdnJTTU1qNVJEL09kS3UyYU04?=
 =?utf-8?B?T2xNVGpFOU5WWjM1MGcraXZSVDNyTTdrSXVVSmFwd1VaRk1QWHFlcFo5bHNz?=
 =?utf-8?B?bEZMTlB5TVY5Sll0TTBFRDFEMXFpVkRoR3JEZitObmJaZTF0bFEzSUhVYy9v?=
 =?utf-8?B?SFlVbE1lbTc3UFZ1cFlnTVl5cmdEU2EvLzZtVDEvNGFlcEVHa0s3RGtCV0Fz?=
 =?utf-8?B?UVljcmxtSTMrVWhUOGZYNFRtU2VCMVdBbTMwQXZ2YTRqTnRycnMyYk5lRWYy?=
 =?utf-8?B?Z3RSTkJiU2RYMEhXamJoSkN5QVFNcmJKU3hDa3ozT0t0WGVKNVZZVFRJS2FK?=
 =?utf-8?B?Z2VZdlp6RytPY09CdmlmWktwRytRTTR6cHlIUzgyUlowUVJHVVRSN1d1cHZC?=
 =?utf-8?B?WGppT0JjSVEwakRVU0JaeExBMklFRXdraHduOFJCNjBrTkxsM3grMDJQdzBQ?=
 =?utf-8?B?TUhuZC9ud0pvZ25NeXFyL29RTG1KNHdtdXpiZXBGQ0JNZFZ0b1hFd2FxYkV6?=
 =?utf-8?B?QWFibHQ1OGhkd2I5Z2RvN0NLMWVtY0hxeE94U0tDcDBZdEhGWGFzV2lXd3lz?=
 =?utf-8?B?ODcrVERaakVnS1krVElFY2h0WWJ5d3dFNkFxbmF0MGYyL0JjUHErOFdTaEcw?=
 =?utf-8?B?ZnZOVFljc1VGK0E4UXpsd0NLMnVhZlBsb2E2SHhWcDZtUEdqcTlJVURXUnhH?=
 =?utf-8?B?WTUyaUtOeGhGc1JTOVNKUEZZVjVCVFc0Si94eGdTWE9PRTYxZFJSQ2FBM1Nt?=
 =?utf-8?B?eWEybVdkbWoyRlVucktyb3pSanA2SGlSV083TjhYbDdQYVFmWTNjbGNIRGtK?=
 =?utf-8?B?cmRGZmdZWjRyT0ZWYUtwL1k2bnRYYWVaRG11TlFWVVE3ejZzeDJPTWczVWNV?=
 =?utf-8?B?SEVaekZrczkvd0NhL3RPak5UYThLOHZTTStNdFVldVFpLzBrd0QwakFEdDJO?=
 =?utf-8?B?Sm9ZYmk3Y2RuZFplZWhhZkdQZnA3aVhmSVhDMXVMQk1TOEtrRXprbDBWV3Aw?=
 =?utf-8?B?K0JKTkRNbzRYd1BMaFB1dmkrbXZaZjk0dFVldUJWZ1RyQVBiTk1qelhZSTgx?=
 =?utf-8?B?YitQNWFoWlQ2SW0zZUYxdk9zb3ZBd3BUai93cHNqcUVzVmwvRmpjbkE0Lzlk?=
 =?utf-8?B?bWYwWm5VeU43UXJ6clZud3didkp1Y1duNnVyUHlCd1M3RGxXTXBEaE9nejBq?=
 =?utf-8?B?eHQ1dDYxakM3bnR1d0RtRzhmVkdYbDRmSVpzcGcwdG5TaUJ5VXRLcWt2Nk1P?=
 =?utf-8?B?bWViUTFIalRCZ0pKMWJuSFc2QVN0QVhKYnBVUkEvNTZtWmJiNFNCeFQ5ekpO?=
 =?utf-8?B?K1VjNU50WGNNSVFHV0EwNmtGOFBrL3Iraldla0toWngzSEQrZzBwSlZjUnpl?=
 =?utf-8?B?bHdJOEpKbW5uQmFzOWNybGkvRi9XMU8reC9ZM050Z3Z1bW16ZktnSUxGNzUr?=
 =?utf-8?B?blNyNFVhRWl6QVErQnZ2bUo1aGtXNytabGZZM1pGK1ZHU0xhVGtVZzR5TmVF?=
 =?utf-8?B?aDFwYnVLY3dFUTZQNlh4Y01sUHZTbk1NY0VjdmxLcmFnYTRYMzRDbEpnOFlH?=
 =?utf-8?B?VExPc2w2TjdrbFVhU3hwRStzNi8rMVVuanZVeUFWWVlFbVNGclFRNTJSWStU?=
 =?utf-8?B?YmhDa2xmV0E3YVZnWlo1KzZndll2dk4yQWFXUFdJRlVLdlQ4b3VGVUVucXhZ?=
 =?utf-8?B?dzRaUEtnZUFWR2RSZnFaYllxU1RlczF3QzFGQjlEY1llVWcwd2FodnRhcjFR?=
 =?utf-8?B?VENWV3FWdnpUT3oydlQ0SWZjK004T0oyWGI2YmpZZVY2b2lhcGRKdXlReGwr?=
 =?utf-8?B?enZHeEhOYnRWSUQ0UEZsbGRsTEF2ZUdPUERXTG92MEZ1S1p6Q1RZNGl2Ym4w?=
 =?utf-8?Q?J78nhhb3gpwWKiWSRBggZUKbD?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 9b54abea-5588-46e7-2bfb-08dbda000a09
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 31 Oct 2023 10:56:30.7836
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: LTf0bCIneuRUyZG2eVkM5p9fg09I9ZKYl9/nM09S5e6+OmNnS4rqhq8HVz6wYqkV48gVCPz3+cEny92XXXEDDw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU2PR04MB9209

On 31.10.2023 00:52, Stewart Hildebrand wrote:
> --- a/xen/arch/arm/domain.c
> +++ b/xen/arch/arm/domain.c
> @@ -607,7 +607,8 @@ int arch_sanitise_domain_config(struct xen_domctl_createdomain *config)
>  {
>      unsigned int max_vcpus;
>      unsigned int flags_required = (XEN_DOMCTL_CDF_hvm | XEN_DOMCTL_CDF_hap);
> -    unsigned int flags_optional = (XEN_DOMCTL_CDF_iommu | XEN_DOMCTL_CDF_vpmu);
> +    unsigned int flags_optional = (XEN_DOMCTL_CDF_iommu | XEN_DOMCTL_CDF_vpmu |
> +                                   XEN_DOMCTL_CDF_vpci);

Is the flag (going to be, with the initial work) okay to have for Dom0
on Arm?

> --- a/xen/arch/x86/domain.c
> +++ b/xen/arch/x86/domain.c
> @@ -712,7 +712,8 @@ int arch_sanitise_domain_config(struct xen_domctl_createdomain *config)
>      return 0;
>  }
>  
> -static bool emulation_flags_ok(const struct domain *d, uint32_t emflags)
> +static bool emulation_flags_ok(const struct domain *d, uint32_t emflags,
> +                               uint32_t cdf)

While apparently views differ, ./CODING_STYLE wants "unsigned int" to be
used for the latter two arguments.

> @@ -722,14 +723,17 @@ static bool emulation_flags_ok(const struct domain *d, uint32_t emflags)
>      if ( is_hvm_domain(d) )
>      {
>          if ( is_hardware_domain(d) &&
> -             emflags != (X86_EMU_VPCI | X86_EMU_LAPIC | X86_EMU_IOAPIC) )
> +             (!( cdf & XEN_DOMCTL_CDF_vpci ) ||

Nit: Stray blanks inside the inner parentheses.

> +              emflags != (X86_EMU_LAPIC | X86_EMU_IOAPIC)) )
>              return false;
>          if ( !is_hardware_domain(d) &&
> -             emflags != (X86_EMU_ALL & ~X86_EMU_VPCI) &&
> -             emflags != X86_EMU_LAPIC )
> +             ((cdf & XEN_DOMCTL_CDF_vpci) ||
> +              (emflags != X86_EMU_ALL &&
> +               emflags != X86_EMU_LAPIC)) )
>              return false;
>      }
> -    else if ( emflags != 0 && emflags != X86_EMU_PIT )
> +    else if ( (cdf & XEN_DOMCTL_CDF_vpci) ||

Wouldn't this better be enforced in common code?

> --- a/xen/arch/x86/setup.c
> +++ b/xen/arch/x86/setup.c
> @@ -892,10 +892,11 @@ static struct domain *__init create_dom0(const module_t *image,
>      {
>          dom0_cfg.flags |= (XEN_DOMCTL_CDF_hvm |
>                             ((hvm_hap_supported() && !opt_dom0_shadow) ?
> -                            XEN_DOMCTL_CDF_hap : 0));
> +                            XEN_DOMCTL_CDF_hap : 0) |
> +                           XEN_DOMCTL_CDF_vpci);

Less of a change and imo slightly neater as a result would be to simply
put the addition on the same line where CDF_hvm already is. But as with
many style aspects, views may differ here of course ...

Jan


From xen-devel-bounces@lists.xenproject.org Tue Oct 31 11:04:00 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 11:04:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625633.975114 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxmXK-00014x-9I; Tue, 31 Oct 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 625633.975114; Tue, 31 Oct 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 1qxmXK-00014q-67; Tue, 31 Oct 2023 11:03:54 +0000
Received: by outflank-mailman (input) for mailman id 625633;
 Tue, 31 Oct 2023 11: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=yzb5=GN=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qxmXJ-00014k-7j
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 11:03:53 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 (mail-am6eur05on20608.outbound.protection.outlook.com
 [2a01:111:f400:7e1b::608])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 2c154be8-77dd-11ee-9b0e-b553b5be7939;
 Tue, 31 Oct 2023 12:03:50 +0100 (CET)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PA4PR04MB9566.eurprd04.prod.outlook.com (2603:10a6:102:26c::6)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6954.18; Tue, 31 Oct
 2023 11:03:48 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6954.016; Tue, 31 Oct 2023
 11:03: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: 2c154be8-77dd-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=HLHuHyzRQCoKkOtrWQCGX/1QE1HTxUqmEWxKy86eT8scr1b1s7mJ5TTRu6FsRNUVeL+lzl3N8mitJMg78dD2c/lMLRAtE0GrW63MNcNdkfjy4PowgHa8j+XFg9EM1oPxCqukkHwiB4Lh7AxvBpy0Hcia1OlWYdAxkeWJ78QDvP7hNtwkNvqnC2r72PdSYDe7JvMD/DJ/XPsJ2NGEwBSclX54D9bOnrARHNKA8bOslz6NILpD0NTVYsyaCHPD31TJWzQzsUPJSXGPlO11W1DiaYSZGZ9midguo1302eiV3m/Bh/D2sYrIeHfVT7hyZIkVlKSOMRQCukemLZNVtmBFEQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=ri6wTvhU61+dtPiVZoj8WKX52jYX/xNXRDnRmks28bQ=;
 b=MOhkcpCywjldCmYZuSNMi3wUffFFFZ0QMcWhkr2cAdKsJerN6HsA9c2w/99u8eQKmUG7mWF1WZtjUCKXMqhdjXYDl0GR1bQ19du5HH+yGrwa/qAgma5MjVzQQb7Csr7GJg5ZzjIoFz+g2fVxkkvmap0Xjud30MEWlKgKeVa+98OYIgOUJRoWoq8pUhKuX93ebPbea3La1W1ceCKtXcTl/MxsROdbHcMxVZgx6o6ouOoVMAMXtvDKXOifptcBC6tS6hAbTBughTs5Bij/0G6t1RCx0kUwv+bm2LxFxZSSpvzurgjvE0Iixk8/hEKs77XuK+mNVc0AJkW2K3bsMoAxSA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=ri6wTvhU61+dtPiVZoj8WKX52jYX/xNXRDnRmks28bQ=;
 b=XZvUOhDS64CopAde9HpzBVkjTkMfxa1L03DmynBXGh9zp40c7pwOLvaGUBcJdI65vTNUEIw7e/jurK5CHu3ZXFOYhr7aas8VAZilgb3VxqBgUYuta5rsppG3j6iFePeDcsV1SqqQl7YovnTM5JDykMlyAsIYKOcczx+5qTVefJH+hld7tSJ1mKZoIuk/Q9J1NllwNELVG9aCEEwsNV7uvu+eAA02WlYnGYziRVo2G2yyrtRYEUeC3l2QIVg94zNMJsfaswty+Ih5M87E/GZmrt11vmtPzCsnKQJk9+tMGnnZpHOF0kWisrICB3Bds17t9kzyiRps1nK0/FWC89acFw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <2f828bd2-e6f8-15b5-b226-33e2b33ebba8@suse.com>
Date: Tue, 31 Oct 2023 12:03:45 +0100
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/5] [FUTURE] xen/arm: enable vPCI for domUs
Content-Language: en-US
To: Stewart Hildebrand <stewart.hildebrand@amd.com>
Cc: Stefano Stabellini <sstabellini@kernel.org>, Julien Grall
 <julien@xen.org>, Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, Paul Durrant <paul@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 xen-devel@lists.xenproject.org
References: <20231030235240.106998-1-stewart.hildebrand@amd.com>
 <20231030235240.106998-5-stewart.hildebrand@amd.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20231030235240.106998-5-stewart.hildebrand@amd.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR3P281CA0175.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:a0::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_|PA4PR04MB9566:EE_
X-MS-Office365-Filtering-Correlation-Id: a078fee7-5c76-4b66-7b09-08dbda010eaf
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	U9l4kFz+yxv2vXaqjS2MxAzFd7NX87NNAQeD9lrFDln/2y8+SMcVXtlknAfMcUdufn7hvCcisnMi9xkLJ38sSMz2S949A1JkbID0gorEKsjGgpS1w/zgMzzhY3wC2SfT3jHCEhuqzG2wQgVr+T/yJAwsYFezOn+G3bYK0D4UVPOKWaefV8oDWS6ynPlS3HXoMjHobiWqYifTNzIi5RtnlgbIIzyi8cO0d0xC6UX+kLxt5h0W0O1UufnmeKZgy/OlAvZ3kvGlSUvnojWislR4CIhBm/nrO2J6mlC7nHEbTp3dnY7K5HfWGpMh9foTyXPV18hJrhZrn2LlnIHSBwSXbAuByvvI3C9CuPv/xn26CyhsyNaLALzJ+YIZzQKHGUs3lZMgPlC2g0lEL7SY7DbPHjURhG0JMQ8nBgm1UNKYoTjs/W34jIsVYjbTPaxCVpAUbjnNLBr9hFePiOhkbpUyOeroLDAc9mlH5hnU8iFe1BhWgakrnoe/ontMHgqt3d9856H+ICHBdXggFf221WeCFD4qlIdszY1Xfm1aK+t1WZa+1lAN5DjOyJUGeyKQ8DrQY25Xefzl/pomrRVqKyH7pj687vX0cCfuEMOAEpKLAOetwwKuFvHlHfsINIWI2+ihd/URzx04qgEZ+LlE369LMrxY5LcyBNjnIDrJs4yhXoKLTSzwG0JBGSzTdag78g2H
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)(366004)(396003)(136003)(39860400002)(230922051799003)(230273577357003)(230173577357003)(1800799009)(451199024)(186009)(64100799003)(4744005)(53546011)(6506007)(36756003)(31696002)(26005)(2616005)(86362001)(6512007)(6666004)(38100700002)(83380400001)(6486002)(2906002)(478600001)(31686004)(66476007)(66556008)(54906003)(41300700001)(316002)(6916009)(66946007)(4326008)(5660300002)(8676002)(8936002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?RzJnaW83a0lwNTNyY2tsTjJNRm5zZVVLSzlENmhZRVU2SE9laHJCQVJmeW95?=
 =?utf-8?B?NmZEV2dOc0NEZU1yUVdyUkJoaVJiV2E0YWw0a3pyWGZzY1FVcGtxYkhiTnRI?=
 =?utf-8?B?Mjk3RUExZFVLVWFiRUk0bjFqU3BZQ3ExSDc0WG5Tc1ZUUmM0bktBVEd0cUNl?=
 =?utf-8?B?RDNycGp3NS9SazdnNkkwVUlwOFFUelFWUVgySVpqSlc5Y1QyMTJvV3M4cXB3?=
 =?utf-8?B?WU1RcjVWQ3VwMytwNWhKSktFU2sxa0IweE1rNmR5eG1saGtpRE9xdTBraFY5?=
 =?utf-8?B?eC9ENTZZZmpsVFZtNDRIRFB0bmR4MUpTZEkzakpielpzb0RWOTlhWTZkaGNL?=
 =?utf-8?B?ZEdEZVJudTBJRkc3NkxXM3BXcy9wYlBRbXplWDl0bDNsSFY5YzE5Mnp6VUE1?=
 =?utf-8?B?ZCtyT2o1bUR5ZDZhVzdmOVd2SzQ2NE9JTkRWd2x3QlFHKys3T2dzeVdFYytz?=
 =?utf-8?B?UHAxZG5SM1pHNjVrU1pRdWE1SExVV2NYZlZROGxibGprQ0NSMzVwMzdrVzVq?=
 =?utf-8?B?MW4wRDdQZzZQcVMvWjlxdlMwVjY3NS9jdC9udlk2TDFHS2pZMTY0YnNiZjZi?=
 =?utf-8?B?VTA1Q2N0R1FXR1RWbHdnLzNMemRtOStpOTArWXdjSE1xakJRMURkOHFEU2Iw?=
 =?utf-8?B?Y3NuQzZOL05GRGFVQ2VTUXdxT2lQZTJpMlRJKzBtb0x6eFFsRG8xZW12eVRj?=
 =?utf-8?B?WmxEcCtCdm1IVURkNGQxbGJsekhiRnhBbUE3N2VaVWU1UEhmY3gybWtNWlNQ?=
 =?utf-8?B?RURhTk96YVFraVNKU3I0czN6VUxVQ1pKZEFuc0J3R2lBMzRvSmZKYWdSQzF3?=
 =?utf-8?B?alBNSmhCS0l0UCsrS3NaRUNtWnB2S2FmZXRoZnp2ZFNUVWptREd2dCtJeDRF?=
 =?utf-8?B?M1p6eHVWZks1NHZjWGliY0JjQ3RkKzFIdU1xQjBwYy9pRzYvSSs2SmY2ZEI2?=
 =?utf-8?B?VGxiK0ZkcGR0WDlwc3pPbENYcUJsWElYVkFqQnZ0aVZaV0F1TkV5b3RHa3E2?=
 =?utf-8?B?c3JrS1J1YS80TlIyNFZSOFNtR0VYbnprOXFtWWFsWlNIUFMza0w4K3U0SEMz?=
 =?utf-8?B?Y2xnUVFVTitEeDVKWXBiL3pkSVZXUGswMVFrMW11cXlKc2t5Q2hLcmJYaDBN?=
 =?utf-8?B?bnB0Rk1Dem5lVGpqRzVLWmFMZ1FFek1YMlN2ZFBYZHpUM3E1UERRVDZJemRw?=
 =?utf-8?B?K2lVSTI5cWZxNmNmUzA2RFJabkVVS2g5UUs5bHluNWRiWWsyd2pLQk9OWWM2?=
 =?utf-8?B?NGVpVjdsQjBoaDU5ZGlvSzN3QmRWbEVvZ09IQUtWQnA0dkZZL2lEVm5makdn?=
 =?utf-8?B?MlRsaStqbEo3N2M2WGxKNE9aL25mSnUwc0RZUkI1bUpUQWduUUhMTW93ZTAw?=
 =?utf-8?B?Yk0vWGNmWXE2bS9IZmZORFJhOHRLNDArUEc2ZlhQZnEvVW5PcVVCUGl4L0hw?=
 =?utf-8?B?QjNiSENlV0tYbW5NQnN2dG5jZDNaU2s1d3FiL3dubTl0dGRMTjZBK2VSMFQ0?=
 =?utf-8?B?NFE0NkNFN1lxWjBaRSswSFJ6OWJqZi9OcWdNUUhPalZ5VDhaaXgrVlMxZUtS?=
 =?utf-8?B?TkJqb2pmY3I5Z3F3dTVsU05sdW5RbHJneno5TUQ3MHlnR1QrZzNCUFNYTlpO?=
 =?utf-8?B?SEJ6UmIrV0dDVlFVYUo2SEhNU2FVRVpHQlU3NlYvWTdVeDI4ZVowdi9TS3dO?=
 =?utf-8?B?VW9jQ09Talc5djZUUEVOdGhWeTFkTWNUVUc4ZXV2S1d0d0tZcUlyV3ZGYVZm?=
 =?utf-8?B?NXBFdU13SFIwQnFSaUhycXM3dkZnc0VTOTIzdmVLbDQzM0N3cjdkV29aVVY0?=
 =?utf-8?B?L3BrMnlUb1plYmI5WFRPa0FZdk9TRC9JdHFIVTQvUWh0eDk3RUI0aTYyRlRx?=
 =?utf-8?B?MzZ5a3FSTHVzelFtamRwL1NkQmZMeVB2aGZNaFBUclEzZnNWaGlmc3JhMjhK?=
 =?utf-8?B?dDNRLzB3NDVVZ0o0dHlYcXNYL1gwOW5XaGJjRlhwVEZlQzJHbGF3T2w0OU9T?=
 =?utf-8?B?ZnhzanlBNUlHUVBQNHRhNVoydWFta0MrczFINXhVdzQ2RGNuYndySkxKdisx?=
 =?utf-8?B?Y3FyTnk5UFYrUU15NUtJbncxendFa213UnYrNnBQODJ3UW00ODZ4OUluSmtX?=
 =?utf-8?Q?Xy9TfAKEd8wLBaQivKsQ0KBIe?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: a078fee7-5c76-4b66-7b09-08dbda010eaf
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 31 Oct 2023 11:03:48.0207
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: +8Z7ylO+/H4nt0Bb3TW1+yBnU5ZYPmGryOGCqu06thtDGiNfMNjgUykSVoLJLKotishV/X+sYWr8teo1g92GBA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR04MB9566

On 31.10.2023 00:52, Stewart Hildebrand wrote:
> --- a/xen/drivers/passthrough/pci.c
> +++ b/xen/drivers/passthrough/pci.c
> @@ -1618,6 +1618,16 @@ int iommu_do_pci_domctl(
>          bus = PCI_BUS(machine_sbdf);
>          devfn = PCI_DEVFN(machine_sbdf);
>  
> +        if ( IS_ENABLED(CONFIG_ARM) &&
> +             !is_hardware_domain(d) &&
> +             !is_system_domain(d) &&
> +             (!IS_ENABLED(CONFIG_HAS_VPCI_GUEST_SUPPORT) || !has_vpci(d)) )

I don't think you need the explicit ARM check; that's redundant with
checking !HAS_VPCI_GUEST_SUPPORT. It's also not really clear why you
need to check for the system domain here.

> +        {
> +            printk(XENLOG_G_WARNING "Cannot assign %pp to %pd: vPCI support not enabled\n",
> +                   &PCI_SBDF(seg, bus, devfn), d);

ret = -EPERM;

(or some other suitable error indicator)

Jan

> +            break;
> +        }
> +
>          pcidevs_lock();
>          ret = device_assigned(seg, bus, devfn);
>          if ( domctl->cmd == XEN_DOMCTL_test_assign_device )



From xen-devel-bounces@lists.xenproject.org Tue Oct 31 11:34:19 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 11:34:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625638.975125 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxn0a-00006b-LU; Tue, 31 Oct 2023 11:34:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625638.975125; Tue, 31 Oct 2023 11: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 1qxn0a-00006U-IT; Tue, 31 Oct 2023 11:34:08 +0000
Received: by outflank-mailman (input) for mailman id 625638;
 Tue, 31 Oct 2023 11: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=9ZX9=GN=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qxn0Z-00006O-CV
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 11:34:07 +0000
Received: from mail-ed1-x530.google.com (mail-ed1-x530.google.com
 [2a00:1450:4864:20::530])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 65460c71-77e1-11ee-9b0e-b553b5be7939;
 Tue, 31 Oct 2023 12:34:04 +0100 (CET)
Received: by mail-ed1-x530.google.com with SMTP id
 4fb4d7f45d1cf-53e70b0a218so8794462a12.2
 for <xen-devel@lists.xenproject.org>; Tue, 31 Oct 2023 04:34: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
 30-20020a508e1e000000b0053dab756073sm990996edw.84.2023.10.31.04.34.03
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 31 Oct 2023 04:34: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: 65460c71-77e1-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1698752044; x=1699356844; 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=1FJxZD6mY/SutwuFq7lYwPQWcGMXb9HHhhSlBW7oqsc=;
        b=a3Pd4qXNXnwuOtSjoCjXWaB4ikqUSAo+Oai75SbK6cPWLrXCnPgbAN/tMb4xlXe9bv
         amauJ/tSPOXEW4E9sMpOl/JNXyVlXM3xv3iTLmrEz46aExgRYpUIzpJ+uvhmRClRz4By
         huExg0v0pogkKc2g9dRekljDGw1mKy99/H8vo=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698752044; x=1699356844;
        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=1FJxZD6mY/SutwuFq7lYwPQWcGMXb9HHhhSlBW7oqsc=;
        b=Ln5WIIit1bVUGGaijzHxwZgmLIlCmUiapP29vRI778YYzgjn7KukqGmYPat0iflAqx
         FW5ilD+K7wTIjGl+IOWpKV9llsc8esxNSdeadjstDAySBhHgj+6ujGMotj0iR5d8sXJN
         2yGazlLPjIU68MV7K6wYLTFy+QQ8hQruoRmLvm9qxjNXc0D3C2H9HiPCuhPAjNy3p2j5
         r3tdLur7NS4QGn8AocxF/hhIUdVw1D3AtVLgAXOXpOcxdtufsoElK/j9UxKcyPxlXTFW
         gJ+g6tXmmHnnBTZ4tZj+MH2r6fkfC1CXtmgJtg2l3da7j5UypHpPSdLfOU18rxNgBBaR
         UoXQ==
X-Gm-Message-State: AOJu0Yy0H9gOHJY176Fd9lh65xxyI9XEgTbTw0/WkdNJngFrEDhGWP9G
	zlCxW1vH2lTV70zHoUl8NzK6CA==
X-Google-Smtp-Source: AGHT+IHYYwi+3E3cOrC0cgozH3U0LgIikGXoB00hABbzZRotK+dcoRCPThB8tEyAEZ8fnXd2toRuDw==
X-Received: by 2002:a50:9b10:0:b0:543:5717:c7b1 with SMTP id o16-20020a509b10000000b005435717c7b1mr2466489edi.12.1698752044048;
        Tue, 31 Oct 2023 04:34:04 -0700 (PDT)
Content-Type: multipart/alternative;
 boundary="------------EU1GzGMDzUpoPtO3xrPun7LK"
Message-ID: <e82f5119-c3e7-4138-8e78-2bea48b638ab@citrix.com>
Date: Tue, 31 Oct 2023 11:34:03 +0000
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [RFC PATCH 04/22] x86/msr-index: add references to vendor manuals
Content-Language: en-GB
To: Jan Beulich <jbeulich@suse.com>, =?UTF-8?B?RWR3aW4gVMO2csO2aw==?=
 <edwin.torok@cloud.com>
Cc: =?UTF-8?B?RWR3aW4gVMO2csO2aw==?= <edvin.torok@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.1698261255.git.edwin.torok@cloud.com>
 <7e4418cfb1daa172e78fc47098a4018ae0493e23.1698261255.git.edwin.torok@cloud.com>
 <356aa412-453f-f6d7-d61b-5946ba8832e2@suse.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: <356aa412-453f-f6d7-d61b-5946ba8832e2@suse.com>

This is a multi-part message in MIME format.
--------------EU1GzGMDzUpoPtO3xrPun7LK
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 30/10/2023 4:15 pm, Jan Beulich wrote:
>> --- a/xen/arch/x86/include/asm/msr-index.h
>> +++ b/xen/arch/x86/include/asm/msr-index.h
>> @@ -13,6 +13,16 @@
>>   * Blocks of related constants should be sorted by MSR index.  The constant
>>   * names should be as concise as possible, and the bit names may have an
>>   * abbreviated name.  Exceptions will be considered on a case-by-case basis.
>> + *
>> + * References:
>> + * - https://software.intel.com/content/www/us/en/develop/articles/intel-sdm.html
>> + *    Intel(R) 64 and IA-32 architectures SDM volume 4: Model-specific registers
>> + *    Chapter 2, "Model-Specific Registers (MSRs)"
> ... at least Intel's URL has changed several times over the years. Volume
> and chapter numbers change even more frequently. Any such is liable to go
> stale at some point.

https://intel.com/sdm

This one has been valid for roughly the lifetime of intel.com, and is
committed to stay so.

>
> Jan
>
>> + * - https://developer.amd.com/resources/developer-guides-manuals/

whereas AMD really have broken this one, and don't seem to be showing
any urgency in unbreaking it...  Right now there is no landing page at
all for manuals.

~Andrew
--------------EU1GzGMDzUpoPtO3xrPun7LK
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: 8bit

<!DOCTYPE html>
<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body>
    <div class="moz-cite-prefix">On 30/10/2023 4:15 pm, Jan Beulich
      wrote:<span style="white-space: pre-wrap">
</span></div>
    <blockquote type="cite"
      cite="mid:356aa412-453f-f6d7-d61b-5946ba8832e2@suse.com">
      <blockquote type="cite">
        <pre class="moz-quote-pre" wrap="">--- a/xen/arch/x86/include/asm/msr-index.h
+++ b/xen/arch/x86/include/asm/msr-index.h
@@ -13,6 +13,16 @@
  * Blocks of related constants should be sorted by MSR index.  The constant
  * names should be as concise as possible, and the bit names may have an
  * abbreviated name.  Exceptions will be considered on a case-by-case basis.
+ *
+ * References:
+ * - <a class="moz-txt-link-freetext" href="https://software.intel.com/content/www/us/en/develop/articles/intel-sdm.html">https://software.intel.com/content/www/us/en/develop/articles/intel-sdm.html</a>
+ *    Intel(R) 64 and IA-32 architectures SDM volume 4: Model-specific registers
+ *    Chapter 2, "Model-Specific Registers (MSRs)"
</pre>
      </blockquote>
      <pre class="moz-quote-pre" wrap="">
... at least Intel's URL has changed several times over the years. Volume
and chapter numbers change even more frequently. Any such is liable to go
stale at some point.</pre>
    </blockquote>
    <br>
    <a class="moz-txt-link-freetext" href="https://intel.com/sdm">https://intel.com/sdm</a><br>
    <br>
    This one has been valid for roughly the lifetime of intel.com, and
    is committed to stay so.<br>
    <br>
    <blockquote type="cite"
      cite="mid:356aa412-453f-f6d7-d61b-5946ba8832e2@suse.com">
      <pre class="moz-quote-pre" wrap="">

Jan

</pre>
      <blockquote type="cite">
        <pre class="moz-quote-pre" wrap="">+ * - <a class="moz-txt-link-freetext" href="https://developer.amd.com/resources/developer-guides-manuals/">https://developer.amd.com/resources/developer-guides-manuals/</a></pre>
      </blockquote>
    </blockquote>
    <br>
    whereas AMD really have broken this one, and don't seem to be
    showing any urgency in unbreaking it...  Right now there is no
    landing page at all for manuals.<br>
    <br>
    ~Andrew<br>
  </body>
</html>

--------------EU1GzGMDzUpoPtO3xrPun7LK--


From xen-devel-bounces@lists.xenproject.org Tue Oct 31 12:02:43 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 12:02:43 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625652.975134 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxnS2-0006wi-96; Tue, 31 Oct 2023 12:02:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625652.975134; Tue, 31 Oct 2023 12: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 1qxnS2-0006wb-65; Tue, 31 Oct 2023 12:02:30 +0000
Received: by outflank-mailman (input) for mailman id 625652;
 Tue, 31 Oct 2023 12: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=N8KE=GN=citrix.com=prvs=661c0debb=Andrew.Cooper3@srs-se1.protection.inumbo.net>)
 id 1qxnS1-0006wT-BD
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 12:02:29 +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 5ae58dc5-77e5-11ee-9b0e-b553b5be7939;
 Tue, 31 Oct 2023 13:02:26 +0100 (CET)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 5ae58dc5-77e5-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1698753746;
  h=from:to:cc:subject:date:message-id:mime-version:
   content-transfer-encoding;
  bh=jp5vE5wCHfEYuloOa15nRVv8FboPWyr4raV5pQHa31M=;
  b=TeSbfgHS2CNc/8ergxRLzUfwoqUvIG8/qg3DYNLWf23GsGBHaeVIkQ/M
   6R/SiRlKN2gQFskM7QRYaNrxtltz2nDaYOqhd70k0a1JZPeFLAJqhDO/j
   E/QCFeioD0Jzdp6+B0OQd7E9+FQyMzBJ86ZvRhaX3YiNFbi8ZbooB5kpX
   c=;
X-CSE-ConnectionGUID: 9Trui3+mStyi52p/sZsRpA==
X-CSE-MsgGUID: hWCYK9liSMizljwk4UyJ+g==
Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
X-SBRS: 4.0
X-MesageID: 127129590
X-Ironport-Server: esa3.hc3370-68.iphmx.com
X-Remote-IP: 162.221.159.70
X-Policy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:3Zxni64dCp4CQX1APmYPIAxRtBLHchMFZxGqfqrLsTDasY5as4F+v
 jQfWGnSbP+JZjH8Ltt0ao3n9h4CupeEnIBlSgZtri1gHi5G8cbLO4+Ufxz6V8+wwm8vb2o8t
 plDNYOQRCwQZiWBzvt4GuG59RGQ7YnRG/ykTraCY3gtLeNdYH9JoQp5nOIkiZJfj9G8Agec0
 fv/uMSaM1K+s9JOGjt8B5mr9lU355wehBtC5gZlPKgQ5QeH/5UoJMl3yZ+ZfiOQrrZ8RoZWd
 86bpJml82XQ+QsaC9/Nut4XpWVTH9Y+lSDX4pZnc/DKbipq/0Te4Y5iXBYoUm9Fii3hojxE4
 I4lWapc6+seFvakdOw1C3G0GszlVEFM0OevzXOX6aR/w6BaGpdFLjoH4EweZOUlFuhL7W5mp
 MACNTFWLRW4m/O3neijDfJenf47BZy+VG8fkikIITDxCP8nRdbIQrnQ5M8e1zA17ixMNa+AP
 YxDM2MpNUmRJUIXUrsUIMtWcOOAr3/zaTBH7nmSorI6+TP7xw1tyrn9dtHSf7RmQO0MxBnB/
 DObrjyR7hcyNOO0+BnU9nOXo+7dmSHkW94vBZ/7+as/6LGU7jNKU0BHPbehmtGph0j7V99BJ
 kg8/is1sbN05EGtVsP6XRCzvDiDpBF0c/h6HvA+6QqN4rHJ+AvfDW8BJhZebPQ2uclwQiYlv
 neMlsnsDCZis5WUT2yc7baeqT6uOSkTInQGbCVCRgwAi/HDrYcpn1TwR9BsOKevi5v+HjSY/
 tyRhHFg3fNJ15dNjvjquw+f696xmnTXZl8J/BjWBSGg1R9oZdP/f8uz20Ph9d8Vee51UWK9U
 Gg4d9m2tb5fXc7Xz3HcG43hD5nzuazZbme0bUpHWsl5rWrwoRZPaKgKuFlDyFFV3tHokNMDS
 GTUowpVrKRLJnqsYrQfj2mZUJ9ykvGI+TgITJnpgjtyjntZLlTvENlGPxL44owUuBFEfVsDE
 Zmaa92wKn0RFL5qyjG7L89Ej+57mHFmlTyMHsqmp/hC7VZ5TCfKIYrpzXPXM7tnhE96iF69H
 ylj2zuilEwEDbyWjtj/+o8PN1EaRUUG6WTNg5UPLIare1M2cFzN/teNmdvNjaQ5xfUK/goJl
 1nhMnJlJK3X3CSeeF3RMSgyAF4tNL4mxU8G0eUXFQ7A8xAejUyHs8/zq7NfkWEbydFe
IronPort-HdrOrdr: A9a23:yjb18q6wTqnOBmABjgPXwMzXdLJyesId70hD6qkRc3Bom6mj/P
 xG88516faZslgssRMb+exoSZPgfZq0z/cci+Qs1NyZLWrbUQWTXeVfxLqn7zr8GzDvss5xvJ
 0QFJSW0eeAb2SSW/yKhTWFLw==
X-Talos-CUID: 9a23:Zc1G8286kWQxLA6Jl/iVvx8oAN0kKT7Y92vBIhLiESFyeqavUXbFrQ==
X-Talos-MUID: 9a23:OLloCQW4FAHjJH7q/D/TrwBBZcNp2IGvGkQPjpZahtimdiMlbg==
X-IronPort-AV: E=Sophos;i="6.03,265,1694750400"; 
   d="scan'208";a="127129590"
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>, Henry Wang <Henry.Wang@arm.com>
Subject: [PATCH for-4.18] docs: Fix IOMMU command line docs some more
Date: Tue, 31 Oct 2023 12:02:15 +0000
Message-ID: <20231031120215.3307356-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

Make the command line docs match the actual implementation, and state that the
default behaviour is selected at compile time.

Fixes: 980d6acf1517 ("IOMMU: make DMA containment of quarantined devices optional")
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: Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
CC: Henry Wang <Henry.Wang@arm.com>
---
 docs/misc/xen-command-line.pandoc | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/docs/misc/xen-command-line.pandoc b/docs/misc/xen-command-line.pandoc
index 6b07d0f3a17f..9a19a04157cb 100644
--- a/docs/misc/xen-command-line.pandoc
+++ b/docs/misc/xen-command-line.pandoc
@@ -1480,7 +1480,8 @@ detection of systems known to misbehave upon accesses to that port.
 > Default: `new` unless directed-EOI is supported
 
 ### iommu
-    = List of [ <bool>, verbose, debug, force, required, quarantine[=scratch-page],
+    = List of [ <bool>, verbose, debug, force, required,
+                quarantine=<bool>|scratch-page,
                 sharept, superpages, intremap, intpost, crash-disable,
                 snoop, qinval, igfx, amd-iommu-perdev-intremap,
                 dom0-{passthrough,strict} ]
@@ -1519,7 +1520,8 @@ boolean (e.g. `iommu=no`) can override this and leave the IOMMUs disabled.
     successfully.
 
 *   The `quarantine` option can be used to control Xen's behavior when
-    de-assigning devices from guests.
+    de-assigning devices from guests.  The default behaviour is chosen at
+    compile time, and is one of `CONFIG_IOMMU_QUARANTINE_{NONE,BASIC,SCRATCH_PAGE}`.
 
     When a PCI device is assigned to an untrusted domain, it is possible
     for that domain to program the device to DMA to an arbitrary address.

base-commit: 9659b2a6d73b14620e187f9c626a09323853c459
-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Tue Oct 31 12:07:07 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 12:07:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625659.975145 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxnWS-0007pG-RL; Tue, 31 Oct 2023 12:07:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625659.975145; Tue, 31 Oct 2023 12:07: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 1qxnWS-0007p9-NN; Tue, 31 Oct 2023 12:07:04 +0000
Received: by outflank-mailman (input) for mailman id 625659;
 Tue, 31 Oct 2023 12:07: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=TgTD=GN=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qxnWR-0007p3-NG
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 12:07:03 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id fffdb8f3-77e5-11ee-98d6-6d05b1d4d9a1;
 Tue, 31 Oct 2023 13:07:02 +0100 (CET)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id B60864EE073F;
 Tue, 31 Oct 2023 13:07:01 +0100 (CET)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: fffdb8f3-77e5-11ee-98d6-6d05b1d4d9a1
MIME-Version: 1.0
Date: Tue, 31 Oct 2023 13:07:01 +0100
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: Stefano Stabellini <sstabellini@kernel.org>, michal.orzel@amd.com,
 xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, consulting@bugseng.com,
 andrew.cooper3@citrix.com, roger.pau@citrix.com, Simone Ballarin
 <simone.ballarin@bugseng.com>, Doug Goldstein <cardoe@cardoe.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][for-4.19 v4 1/8] xen/include: add macro
 ISOLATE_LOW_BIT
In-Reply-To: <1178b79c-d6a3-a46c-5556-3fb5964dc051@suse.com>
References: <cover.1698410970.git.nicola.vetrini@bugseng.com>
 <dca236bf9199f596bafb35eb48d81adc280d8cca.1698410970.git.nicola.vetrini@bugseng.com>
 <f88edc35-6b1b-0136-aa1f-6429652c4016@suse.com>
 <alpine.DEB.2.22.394.2310301536390.1625118@ubuntu-linux-20-04-desktop>
 <7c26fb70-6a8c-58a3-6a1d-300dd57b5827@suse.com>
 <817fab34432c854ce585aba80db77f7c@bugseng.com>
 <8b4e0da82930375b2a95387a9031c73f@bugseng.com>
 <1178b79c-d6a3-a46c-5556-3fb5964dc051@suse.com>
Message-ID: <f6c499316d9c619627cdbd72e02417b1@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 2023-10-31 11:20, Jan Beulich wrote:
> On 31.10.2023 11:03, Nicola Vetrini wrote:
>> On 2023-10-31 09:28, Nicola Vetrini wrote:
>>> On 2023-10-31 08:43, Jan Beulich wrote:
>>>> On 30.10.2023 23:44, Stefano Stabellini wrote:
>>>>> On Mon, 30 Oct 2023, Jan Beulich wrote:
>>>>>> On 27.10.2023 15:34, Nicola Vetrini wrote:
>>>>>>> --- a/xen/include/xen/macros.h
>>>>>>> +++ b/xen/include/xen/macros.h
>>>>>>> @@ -8,8 +8,14 @@
>>>>>>>  #define DIV_ROUND(n, d) (((n) + (d) / 2) / (d))
>>>>>>>  #define DIV_ROUND_UP(n, d) (((n) + (d) - 1) / (d))
>>>>>>> 
>>>>>>> -#define MASK_EXTR(v, m) (((v) & (m)) / ((m) & -(m)))
>>>>>>> -#define MASK_INSR(v, m) (((v) * ((m) & -(m))) & (m))
>>>>>>> +/*
>>>>>>> + * Given an unsigned integer argument, expands to a mask where
>>>>>>> just the least
>>>>>>> + * significant nonzero bit of the argument is set, or 0 if no 
>>>>>>> bits
>>>>>>> are set.
>>>>>>> + */
>>>>>>> +#define ISOLATE_LOW_BIT(x) ((x) & -(x))
>>>>>> 
>>>>>> Not even considering future Misra changes (which aiui may require
>>>>>> that
>>>>>> anyway), this generalization of the macro imo demands that its
>>>>>> argument
>>>>>> now be evaluated only once.
>>>>> 
>>>>> Fur sure that would be an improvement, but I don't see a trivial 
>>>>> way
>>>>> to
>>>>> do it and this issue is also present today before the patch.
>>>> 
>>>> This was an issue here for MASK_EXTR() and MASK_INSR(), yes, but the
>>>> new
>>>> macro has wider use, and there was no issue elsewhere so far.
>>>> 
>>>>> I think it
>>>>> would be better to avoid scope-creeping this patch as we are 
>>>>> already
>>>>> at
>>>>> v4 for something that was expected to be a trivial mechanical 
>>>>> change.
>>>>> I
>>>>> would rather review the fix as a separate patch, maybe sent by you 
>>>>> as
>>>>> you probably have a specific implementation in mind?
>>>> 
>>>> #define ISOLATE_LOW_BIT(x) ({ \
>>>>     typeof(x) x_ = (x); \
>>>>     x_ & -x_; \
>>>> })
>>>> 
>>>> Hard to see the scope creep here. What I would consider scope creep 
>>>> I
>>>> specifically didn't even ask for: I'd like this macro to be
>>>> overridable
>>>> by an arch. Specifically (see my earlier naming hint) I'd like to 
>>>> use
>>>> x86's BMI insn BLSI in the context of "x86: allow Kconfig control 
>>>> over
>>>> psABI level", when ABI v2 or higher is in use.
>>> 
>>> I appreciate you suggesting an implementation; I'll send a v5
>>> incorporating it.
>> 
>> There's an issue with this approach, though: since the macro is used
>> indirectly
>> in expressions that are e.g. case labels or array sizes, the build 
>> fails
>> (see [1] for instance).
>> Perhaps it's best to leave it as is?
> 
> Hmm. I'm afraid it's not an option to "leave as is", not the least 
> because
> - as said - I'm under the impression that another Misra rule requires
> macro arguments to be evaluated exactly once. Best I can think of right
> away is to have a macro for limited use (to address such build issues)
> plus an inline function (for general use). But yes, maybe that then 
> indeed
> needs to be a 2nd step.
> 
> Jan
> 
>> [1] 
>> https://gitlab.com/xen-project/people/bugseng/xen/-/jobs/5423693947
>> 

There is no such MISRA Rule afaik: R23.7 is similar, but only for C11 
generic selections.

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


From xen-devel-bounces@lists.xenproject.org Tue Oct 31 12:18:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 12:18:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625665.975155 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxnhj-0002bw-Ri; Tue, 31 Oct 2023 12:18:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625665.975155; Tue, 31 Oct 2023 12:18: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 1qxnhj-0002bp-OX; Tue, 31 Oct 2023 12:18:43 +0000
Received: by outflank-mailman (input) for mailman id 625665;
 Tue, 31 Oct 2023 12:18: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=q6UM=GN=cloud.com=edwin.torok@srs-se1.protection.inumbo.net>)
 id 1qxnhh-0002bh-Tf
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 12:18:42 +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 9fa0df9a-77e7-11ee-9b0e-b553b5be7939;
 Tue, 31 Oct 2023 13:18:39 +0100 (CET)
Received: by mail-wr1-x42d.google.com with SMTP id
 ffacd0b85a97d-32d895584f1so3819078f8f.1
 for <xen-devel@lists.xenproject.org>; Tue, 31 Oct 2023 05:18:39 -0700 (PDT)
Received: from smtpclient.apple ([90.243.16.33])
 by smtp.gmail.com with ESMTPSA id
 t4-20020adff604000000b0032db4e660d9sm1405387wrp.56.2023.10.31.05.18.38
 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128);
 Tue, 31 Oct 2023 05:18: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: 9fa0df9a-77e7-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1698754719; x=1699359519; darn=lists.xenproject.org;
        h=to:references:message-id:content-transfer-encoding:cc:date
         :in-reply-to:from:subject:mime-version:from:to:cc:subject:date
         :message-id:reply-to;
        bh=dXBs5lffxv00HHT5fxAvxa+q+IlwADUnP5JLazjQ+JA=;
        b=FWeloDjDjUkRsDRN5G+GrEge1JFlcNZbq/kVzdbL4dDHPb0pt5BuNbOAd9rcmxkbku
         3qY90rjGy7b86ukE8ae90sGoTasMnER/jGAmRpbzi5T0qEitzygtnZexNxMXNmdAaLm7
         ye4kZfhTGaBUtt1X1jM12Km0LO8c4oLadH2Yo=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698754719; x=1699359519;
        h=to:references:message-id:content-transfer-encoding:cc:date
         :in-reply-to:from:subject:mime-version:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=dXBs5lffxv00HHT5fxAvxa+q+IlwADUnP5JLazjQ+JA=;
        b=HfwLUTi/x0Wytyi70CAAIFbiitKf7ybOqyGpnn09SiZipVWqQqMCdLuBu9WbG1CB3q
         jCEiy8wf2NmkRBER7omhMNsWLJpq1uBD8a28rXynSqchx/eOA5mNJoTW2TkPuve9lHxU
         Ek99VeAP4nujiHd1YEbxTUFGMCyEw1TrcMVl/EHy9cSnp7alsfQKT9D0Xlc3czKiK+Zr
         TOfaeX8SULUMkJ4g/mLT594VH7BtmokOnllD1xq4ufjBhBXB14Ts+5uOXVALpTvR3qiU
         tgIC13aBcK2Rv/luv307a4MB4p6DSAzQR9sGWk5o5HBRs+E4STdv98/EQ7yfOs2uOIpa
         7NGQ==
X-Gm-Message-State: AOJu0Yz718EoIqoOffn/j3adDZlHmhnPe8WAAkx5h+Hcb4xLNlH8UiVA
	LOfyFj0tUENgKU0Hg6ITjtgVhw==
X-Google-Smtp-Source: AGHT+IFWdbjVOaX35MUCqpbY1JZNEPj3m0wH3sySklRe1FfwOTdGTMiLFB/AJHh7W+j5D0C2BZvs7w==
X-Received: by 2002:a05:6000:1842:b0:32f:7b2e:2dd with SMTP id c2-20020a056000184200b0032f7b2e02ddmr8151494wri.45.1698754719009;
        Tue, 31 Oct 2023 05:18:39 -0700 (PDT)
Content-Type: text/plain;
	charset=us-ascii
Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3774.100.2.1.4\))
Subject: Re: [RFC PATCH 04/22] x86/msr-index: add references to vendor manuals
From: Edwin Torok <edwin.torok@cloud.com>
In-Reply-To: <e82f5119-c3e7-4138-8e78-2bea48b638ab@citrix.com>
Date: Tue, 31 Oct 2023 12:18:27 +0000
Cc: Jan Beulich <jbeulich@suse.com>,
 =?utf-8?B?RWR3aW4gVMO2csO2aw==?= <edvin.torok@citrix.com>,
 =?utf-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>,
 Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
Content-Transfer-Encoding: quoted-printable
Message-Id: <85F790E1-A2E1-428C-85F6-CBE5D137330F@cloud.com>
References: <cover.1698261255.git.edwin.torok@cloud.com>
 <7e4418cfb1daa172e78fc47098a4018ae0493e23.1698261255.git.edwin.torok@cloud.com>
 <356aa412-453f-f6d7-d61b-5946ba8832e2@suse.com>
 <e82f5119-c3e7-4138-8e78-2bea48b638ab@citrix.com>
To: Andrew Cooper <Andrew.Cooper3@citrix.com>
X-Mailer: Apple Mail (2.3774.100.2.1.4)



> On 31 Oct 2023, at 11:34, Andrew Cooper <Andrew.Cooper3@citrix.com> =
wrote:
>=20
> On 30/10/2023 4:15 pm, Jan Beulich wrote:
>>=20
>>> --- a/xen/arch/x86/include/asm/msr-index.h
>>> +++ b/xen/arch/x86/include/asm/msr-index.h
>>> @@ -13,6 +13,16 @@
>>> * Blocks of related constants should be sorted by MSR index. The =
constant
>>> * names should be as concise as possible, and the bit names may have =
an
>>> * abbreviated name. Exceptions will be considered on a case-by-case =
basis.
>>> + *
>>> + * References:
>>> + * - =
https://software.intel.com/content/www/us/en/develop/articles/intel-sdm.ht=
ml
>>> + * Intel(R) 64 and IA-32 architectures SDM volume 4: Model-specific =
registers
>>> + * Chapter 2, "Model-Specific Registers (MSRs)"
>>>=20
>> ... at least Intel's URL has changed several times over the years. =
Volume
>> and chapter numbers change even more frequently. Any such is liable =
to go
>> stale at some point.
>=20
> https://intel.com/sdm
>=20
> This one has been valid for roughly the lifetime of intel.com, and is =
committed to stay so.

That is useful to know, I'll update the URL.

>=20
>>=20
>> Jan
>>=20
>>=20
>>> + * - https://developer.amd.com/resources/developer-guides-manuals/
>=20
> whereas AMD really have broken this one, and don't seem to be showing =
any urgency in unbreaking it...  Right now there is no landing page at =
all for manuals.
>=20


Linux commits appear to reference a certain bugzilla that has the =
manuals uploaded: https://bugzilla.kernel.org/show_bug.cgi?id=3D206537
(although they will go stale in another way, e.g. I see no 2023 manuals =
there, but at least you know which manual a given commit referenced).
Although referencing someone else's bugzilla in the Xen codebase =
wouldn't be a nice thing to do, so if we do this it'd probably have to =
be something hosted on Xen infra.

For now I'll probably drop the URL and just keep the name (so at least =
you'd know what to search for).


Best regards,
--Edwin

> ~Andrew



From xen-devel-bounces@lists.xenproject.org Tue Oct 31 12:22:15 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 12:22:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625669.975165 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxnl7-00041G-9V; Tue, 31 Oct 2023 12:22:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625669.975165; Tue, 31 Oct 2023 12: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 1qxnl7-000419-6P; Tue, 31 Oct 2023 12:22:13 +0000
Received: by outflank-mailman (input) for mailman id 625669;
 Tue, 31 Oct 2023 12:22: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 1qxnl5-00040z-I3; Tue, 31 Oct 2023 12:22: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 1qxnl5-00024u-DR; Tue, 31 Oct 2023 12:22: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 1qxnl4-0006DM-S4; Tue, 31 Oct 2023 12:22:11 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qxnl4-0003v8-RZ; Tue, 31 Oct 2023 12:22: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=zKkBkdy2MyItkL/IppdrI/4w08pAi68bSIJ0GJlrtUE=; b=cnEEJmbwxpcFqYKdr+IoGlwj3H
	/jfs2gdapcgaqA7V9RTKeD4BU5Bj1GyXBdLgkJ6LjMi+SLpWJLObQFX+brMXkMiRDNtXmbyb3whj+
	iMkou+2F1t0a8umLsVrtooDEp/HWXkLteWJLan2Qv/LGqxa5GFhXElXNxPqxqH4Nyw3c=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183625-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 183625: regressions - FAIL
X-Osstest-Failures:
    linux-linus:test-arm64-arm64-examine:reboot:fail:regression
    linux-linus:test-arm64-arm64-xl-credit2:xen-boot:fail:regression
    linux-linus:test-arm64-arm64-xl-thunderx:xen-boot:fail:regression
    linux-linus:test-arm64-arm64-xl-credit1:xen-boot:fail:regression
    linux-linus:test-arm64-arm64-xl:xen-boot:fail:regression
    linux-linus:test-arm64-arm64-xl-vhd:xen-boot:fail:regression
    linux-linus:test-arm64-arm64-libvirt-raw:xen-boot:fail:regression
    linux-linus:build-arm64-xsm:xen-build:fail:regression
    linux-linus:test-armhf-armhf-libvirt:host-ping-check-xen:fail:regression
    linux-linus:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:build-check(1):blocked: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:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-xsm:migrate-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-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-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:saverestore-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-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-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds: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-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=ecb8cd2a9f7af7f99a6d4fa0a5a31822f6cfe255
X-Osstest-Versions-That:
    linux=ffc253263a1375a65fa6c9f62a893e9767fbebfa
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 31 Oct 2023 12:22:10 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-arm64-arm64-examine      8 reboot                   fail REGR. vs. 183617
 test-arm64-arm64-xl-credit2   8 xen-boot                 fail REGR. vs. 183617
 test-arm64-arm64-xl-thunderx  8 xen-boot                 fail REGR. vs. 183617
 test-arm64-arm64-xl-credit1   8 xen-boot                 fail REGR. vs. 183617
 test-arm64-arm64-xl           8 xen-boot                 fail REGR. vs. 183617
 test-arm64-arm64-xl-vhd       8 xen-boot                 fail REGR. vs. 183617
 test-arm64-arm64-libvirt-raw  8 xen-boot                 fail REGR. vs. 183617
 build-arm64-xsm               6 xen-build                fail REGR. vs. 183617
 test-armhf-armhf-libvirt     10 host-ping-check-xen      fail REGR. vs. 183617

Tests which did not succeed, but are not blocking:
 test-arm64-arm64-xl-xsm       1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183617
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183617
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183617
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183617
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183617
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183617
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183617
 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-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-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-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-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-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-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                ecb8cd2a9f7af7f99a6d4fa0a5a31822f6cfe255
baseline version:
 linux                ffc253263a1375a65fa6c9f62a893e9767fbebfa

Last test of basis   183617  2023-10-30 08:36:55 Z    1 days
Testing same since   183625  2023-10-31 02:27:44 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  "Darrick J. Wong" <djwong@kernel.org>
  "Kuyo Chang (張建文)" <Kuyo.Chang@mediatek.com>
  "Md. Haris Iqbal" <haris.iqbal@ionos.com>
  "Peter Zijlstra (Intel)" <peterz@infradead.org>
  "Rafael J. Wysocki" <rafael@kernel.org>
  Aaron Lu <aaron.lu@intel.com>
  Aaron Plattner <aplattner@nvidia.com>
  Adam Dunlap <acdunlap@google.com>
  Alexander Aring <aahringo@redhat.com>
  Alexander Shishkin <alexander.shishkin@linux.intel.com>
  Alexey Dobriyan <adobriyan@gmail.com>
  Alison Schofield <alison.schofield@intel.com>
  Amir Goldstein <amir73il@gmail.com>
  Anand Jain <anand.jain@oracle.com>
  Anders Roxell <anders.roxell@linaro.org>
  Ard Biesheuvel <ardb@kernel.org>
  Atul Kumar Pant <atulpant.linux@gmail.com>
  Babu Moger <babu.moger@amd.com>
  Baolin Liu <liubaolin@kylinos.cn>
  Barry Song <song.bao.hua@hisilicon.com>
  Ben Wolsieffer <ben.wolsieffer@hefring.com>
  Bernd Schubert <bschubert@ddn.com>
  Binbin Wu <binbin.wu@linux.intel.com>
  Bjorn Helgaas <bhelgaas@google.com>
  Boris Burkov <boris@bur.io>
  Borislav Petkov (AMD) <bp@alien8.de>
  Borislav Petkov <bp@alien8.de>
  Brett Holman <bholman.devel@gmail.com>
  Brett Holman <bpholman5@gmail.com>
  Brian Foster <bfoster@redhat.com>
  Brian Gerst <brgerst@gmail.com>
  Chen Hanxiao <chenhx.fnst@fujitsu.com>
  Chengming Zhou <zhouchengming@bytedance.com>
  Chris Webb <chris@arachsys.com>
  Christian Brauner <brauner@kernel.org>
  Christoph Hellwig <hch@lst.de>
  Christophe JAILLET <christophe.jaillet@wanadoo.fr>
  Christopher James Halse Rogers <raof@ubuntu.com>
  Chuck Lever <chuck.lever@oracle.com>
  Colin Ian King <colin.i.king@gmail.com>
  Coly Li <colyli@suse.de>
  Cuda-Chen <clh960524@gmail.com>
  Cyril Hrubis <chrubis@suse.cz>
  Dai Ngo <dai.ngo@oracle.com>
  Dan Carpenter <dan.carpenter@linaro.org>
  Dan Robertson <dan@dlrobertson.com>
  Daniel B. Hill <daniel@gluo.nz>
  Daniel Hill <daniel@gluo.nz>
  Dave Hansen <dave.hansen@linux.intel.com>
  Dave Kleikamp <dave.kleikamp@oracle.com>
  David Hildenbrand <david@redhat.com>
  David Howells <dhowells@redhat.com>
  David Kaplan <david.kaplan@amd.com>
  David Reaver <me@davidreaver.com>
  David Sterba <dsterba@suse.com>
  Derick Marks <derick.w.marks@intel.com>
  Dominique Martinet <asmadeus@codewreck.org>
  Elliot Berman <quic_eberman@quicinc.com>
  Eric Biggers <ebiggers@google.com>
  Fan Yu <fan.yu9@zte.com.cn>
  Fangrui Song <maskray@google.com>
  Fenghua Yu <fenghua.yu@intel.com>
  Filipe Manana <fdmanana@suse.com>
  Finn Thain <fthain@linux-m68k.org>
  Gao Xiang <hsiangkao@linux.alibaba.com>
  Gautham R. Shenoy <gautham.shenoy@amd.com>
  Geert Uytterhoeven <geert@linux-m68k.org>
  Greg Kroah-Hartman <gregkh@linuxfoundation.org>
  Guo Ren <guoren@kernel.org>
  Guo Ren <guoren@linux.alibaba.com>
  GUO Zihua <guozihua@huawei.com>
  H. Peter Anvin (Intel) <hpa@zytor.com>
  Haifeng Xu <haifeng.xu@shopee.com>
  Hans de Goede <hdegoede@redhat.com>
  Hao Jia <jiahao.os@bytedance.com>
  Heiko Carstens <hca@linux.ibm.com>
  Hou Wenlong <houwenlong.hwl@antgroup.com>
  Hugh Dickins <hughd@google.com>
  Hunter Shaffer <huntershaffer182456@gmail.com>
  Ian Kent <raven@themaw.net>
  Ilya Dryomov <idryomov@gmail.com>
  Ingo Molnar <mingo@kernel.org>
  Jacob Xu <jacobhxu@google.com>
  Jakub Kicinski <kuba@kernel.org>
  Jan Kara <jack@suse.cz>
  Janpieter Sollie <janpieter.sollie@edpnet.be>
  Jeff Layton <jlayton@kernel.org>
  Jianlin Li <ljianlin99@gmail.com>
  Jianyong Wu <jianyong.wu@arm.com>
  Jiapeng Chong <jiapeng.chong@linux.alibaba.com>
  Jingbo Xu <jefflexu@linux.alibaba.com>
  Jo Van Bulck <jo.vanbulck@cs.kuleuven.be>
  Joel Fernandes (Google) <joel@joelfernandes.org>
  Johannes Thumshirn <johannes.thumshirn@wdc.com>
  John Stultz <jstultz@google.com>
  Josef Bacik <josef@toxicpanda.com>
  Josh Don <joshdon@google.com>
  Josh Poimboeuf <jpoimboe@kernel.org>
  Joshua Ashton <joshua@froggi.es>
  jpsollie <janpieter.sollie@edpnet.be>
  Juergen Gross <jgross@suse.com>
  Juri Lelli <juri.lelli@redhat.com>
  Justin Husted <sigstop@gmail.com>
  Justin Stitt <justinstitt@google.com>
  K Prateek Nayak <kprateek.nayak@amd.com>
  KaiLong Wang <wangkailong@jari.cn>
  Kan Liang <kan.liang@linux.intel.com>
  Kees Cook <keescook@chromium.org>
  Kent Overstreet <kent.overstreet@gmail.com>
  Kent Overstreet <kent.overstreet@linux.dev>
  Kinglong Mee <kinglongmee@gmail.com>
  Kir Kolyshkin <kolyshkin@gmail.com>
  Klara Modin <klarasmodin@gmail.com>
  Leo Yu-Chi Liang <ycliang@andestech.com>
  Li zeming <zeming@nfschina.com>
  Liming Wu <liming.wu@jaguarmicro.com>
  Linus Torvalds <torvalds@linux-foundation.org>
  Lizhi Xu <lizhi.xu@windriver.com>
  Lorenzo Bianconi <lorenzo@kernel.org>
  Lucy Mielke <lucymielke@icloud.com>
  Luís Henriques <lhenriques@suse.de>
  Maciej Wieczor-Retman <maciej.wieczor-retman@intel.com>
  Marco Elver <elver@google.com>
  Mario Casquero <mcasquer@redhat.com>
  Masahiro Yamada <masahiroy@kernel.org>
  Mateusz Guzik <mjguzik@gmail.com>
  Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
  Matthew Wilcox (Oracle) <willy@infradead.org>
  Max Kellermann <max.kellermann@ionos.com>
  Max Kellermann <mk@cm4all.com>
  Mel Gorman <mgorman@suse.de>
  Mel Gorman <mgorman@techsingularity.net>
  Michal Hocko <mhocko@suse.com>
  Mike Rapoport (IBM) <rppt@kernel.org>
  Mikulas Patocka <mpatocka@redhat.com>
  Muralidhara M K <muralidhara.mk@amd.com>
  Nathan Chancellor <nathan@kernel.org>
  NeilBrown <neilb@suse.de>
  Nick Desaulniers <ndesaulniers@google.com>
  Nikolay Borisov <nik.borisov@suse.com>
  Oleg Nesterov <oleg@redhat.com>
  Olexa Bilaniuk <obilaniu@gmail.com>
  pangzizhen001@208suo.com <pangzizhen001@208suo.com>
  Paolo Bonzini <pbonzini@redhat.com>
  Paul E. McKenney <paulmck@kernel.org>
  Paul Moore <paul@paul-moore.com>
  Peter Newman <peternewman@google.com>
  Peter Zijlstra (Intel) <peterz@infradead.org>
  Peter Zijlstra <peterz@infradead.org>
  peterz@infradead.org <peterz@infradead.org>
  Pierre Gondois <Pierre.Gondois@arm.com>
  Qais Yousef (Google) <qyousef@layalina.io>
  Qais Yousef <qyousef@layalina.io>
  Qu Wenruo <wqu@suse.com>
  Rafael J. Wysocki <rafael.j.wysocki@intel.com>
  Raghavendra K T <raghavendra.kt@amd.com>
  Reuben Hawkins <reubenhwk@gmail.com>
  Robbie Litchfield <blam.kiwi@gmail.com>
  Ruan Jinjie <ruanjinjie@huawei.com>
  Sai Krishna Potthuri <sai.krishna.potthuri@amd.com>
  Sandipan Das <sandipan.das@amd.com>
  Saurabh Sengar <ssengar@linux.microsoft.com>
  Sebastian Andrzej Siewior <bigeasy@linutronix.de>
  Shrikanth Hegde <sshegde@linux.vnet.ibm.com>
  Shuai Xue <xueshuai@linux.alibaba.com>
  Shubhrajyoti Datta <shubhrajyoti.datta@amd.com>
  Sicong Huang <huangsicong@iie.ac.cn>
  Siddh Raman Pant <code@siddh.me>
  Song Liu <song@kernel.org>
  Steve Wahl <steve.wahl@hpe.com>
  Stijn Tintel <stijn@linux-ipv6.be>
  Suma Hegde <suma.hegde@amd.com>
  Swapnil Sapkal <Swapnil.Sapkal@amd.com>
  Tan Shaopeng <tan.shaopeng@jp.fujitsu.com>
  Tejun Heo <tj@kernel.org>
  Tero Kristo <tero.kristo@linux.intel.com>
  Thomas Gleixner <tglx@linutronix.de>
  Thomas Weißschuh <linux@weissschuh.net>
  Tim Schlueter <schlueter.tim@linux.com>
  Tobias Geerinckx-Rice <me@tobias.gr>
  Torge Matthies <openglfreak@googlemail.com>
  Trond Myklebust <trond.myklebust@hammerspace.com>
  Uros Bizjak <ubizjak@gmail.com>
  Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
  Valentin Schneider <vschneid@redhat.com>
  Vincent Guittot <vincent.guittot@linaro.org>
  Waiman Long <longman@redhat.com>
  Wang Jinchao <wangjinchao@xfusion.com>
  Wedson Almeida Filho <walmeida@microsoft.com>
  Will Deacon <will@kernel.org>
  Xin Li (Intel) <xin@zytor.com>
  Xiu Jianfeng <xiujianfeng@huawei.com>
  Yajun Deng <yajun.deng@linux.dev>
  Yang Li <yang.lee@linux.alibaba.com>
  Yang Yang <yang.yang29@zte.com.cn>
  Yazen Ghannam <yazen.ghannam@amd.com>
  Yicong Yang <yangyicong@hisilicon.com>
  Yiwei Lin <s921975628@gmail.com>
  Yu Liao <liaoyu15@huawei.com>
  Yuntao Wang <ytcoode@gmail.com>
  Yury Norov <yury.norov@gmail.com>
  Yuxuan Shui <yshuiv7@gmail.com>
  Zhu Wang <wangzhu9@huawei.com>
  Zizhen Pang <pangzizhen001@208suo.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              fail    
 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                                          fail    
 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                                 blocked 
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      blocked 
 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                                  fail    
 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-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     fail    
 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                                 fail    
 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                                 fail    
 test-amd64-amd64-examine-uefi                                pass    
 test-amd64-amd64-xl-vhd                                      pass    
 test-arm64-arm64-xl-vhd                                      fail    
 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 50990 lines long.)


From xen-devel-bounces@lists.xenproject.org Tue Oct 31 12:24:21 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 12:24:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625675.975175 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxnn6-0004s5-P2; Tue, 31 Oct 2023 12:24:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625675.975175; Tue, 31 Oct 2023 12:24: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 1qxnn6-0004ry-L8; Tue, 31 Oct 2023 12:24:16 +0000
Received: by outflank-mailman (input) for mailman id 625675;
 Tue, 31 Oct 2023 12:24: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=G+CR=GN=cloud.com=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qxnn5-0004rj-68
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 12:24:15 +0000
Received: from mail-ed1-x534.google.com (mail-ed1-x534.google.com
 [2a00:1450:4864:20::534])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 665fe5c5-77e8-11ee-9b0e-b553b5be7939;
 Tue, 31 Oct 2023 13:24:13 +0100 (CET)
Received: by mail-ed1-x534.google.com with SMTP id
 4fb4d7f45d1cf-53e70b0a218so8890959a12.2
 for <xen-devel@lists.xenproject.org>; Tue, 31 Oct 2023 05:24:13 -0700 (PDT)
Received: from localhost ([213.195.113.99]) by smtp.gmail.com with ESMTPSA id
 e1-20020a50d4c1000000b0054026e95beesm1067952edj.76.2023.10.31.05.24.12
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Tue, 31 Oct 2023 05:24: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: 665fe5c5-77e8-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1698755052; x=1699359852; 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=rBP6Lco2nCJnauHXufL8NfhYVLMmUe6mgXHE9mvnoJI=;
        b=Z4rzbjh6+bAQNi+w5pR8SgNczrMCAzYnUXRtKNzpn7TO/bipzxj9v/kA8gw0aSNLcc
         vG9SxPdRUw1ShUv5ZZ1LHQydt3sPlut0uSJMfbwxdnM8TGRqsp0hR43+ytZPqkPxHgeC
         Msn82VIM1uhZyo10VznQw45NR/QPfUy25atWo=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698755052; x=1699359852;
        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=rBP6Lco2nCJnauHXufL8NfhYVLMmUe6mgXHE9mvnoJI=;
        b=Uuh3NjFISNBB553L9H018BsculddBww5+SlVzVqRs1dkc/e1En+wcFi7LcUNo7oeU7
         T5Av5oN8Yvo2BIkrM4YvK0WdNDx7h3hkItSd1zvIzgksfBadpXUABjzTpI7Jas0ZKcMv
         BFx01z8EsZiijGTJsRoTgmjZ+OWGH8rnLNO9QPtqvc/RBpUdy4xGNLljhpuHL0gR+wUV
         9jndwIAX8PyShwC7wmWf1OdETHAPHJf9WewA1rfW/5vvGCDzl8pqUvPs7H8pJGNR06Pl
         2J6UghYHENnWoV6Bk60KmM0jT/HM+gADEs7i0uMBS+laNLJU7t+c1kdjJF1G7JOuyM80
         OcGw==
X-Gm-Message-State: AOJu0YwN8UCJBWcKXBWuWCJUGsvfQNpr1XQkP/KvmePO1vPu3J+fGa3t
	C6YLNMyuZTIJlycur+640XeyLZuuuykRAdM9V4s=
X-Google-Smtp-Source: AGHT+IHBJOkLsApOCzaz94nXmjkrPK2A7ynUC1RFMIAVf1huDavQZNhmEDRo19Pjd6TbtuY09awSMQ==
X-Received: by 2002:a50:fa93:0:b0:533:4c15:c337 with SMTP id w19-20020a50fa93000000b005334c15c337mr10746526edr.16.1698755052540;
        Tue, 31 Oct 2023 05:24:12 -0700 (PDT)
Date: Tue, 31 Oct 2023 13:24:11 +0100
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: Xen-devel <xen-devel@lists.xenproject.org>,
	Jan Beulich <JBeulich@suse.com>, Wei Liu <wl@xen.org>,
	Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>,
	Henry Wang <Henry.Wang@arm.com>
Subject: Re: [PATCH for-4.18] docs: Fix IOMMU command line docs some more
Message-ID: <ZUDx67jQrGQcy68-@macbook>
References: <20231031120215.3307356-1-andrew.cooper3@citrix.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <20231031120215.3307356-1-andrew.cooper3@citrix.com>

On Tue, Oct 31, 2023 at 12:02:15PM +0000, Andrew Cooper wrote:
> Make the command line docs match the actual implementation, and state that the
> default behaviour is selected at compile time.
> 
> Fixes: 980d6acf1517 ("IOMMU: make DMA containment of quarantined devices optional")
> 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: Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
> CC: Henry Wang <Henry.Wang@arm.com>
> ---
>  docs/misc/xen-command-line.pandoc | 6 ++++--
>  1 file changed, 4 insertions(+), 2 deletions(-)
> 
> diff --git a/docs/misc/xen-command-line.pandoc b/docs/misc/xen-command-line.pandoc
> index 6b07d0f3a17f..9a19a04157cb 100644
> --- a/docs/misc/xen-command-line.pandoc
> +++ b/docs/misc/xen-command-line.pandoc
> @@ -1480,7 +1480,8 @@ detection of systems known to misbehave upon accesses to that port.
>  > Default: `new` unless directed-EOI is supported
>  
>  ### iommu
> -    = List of [ <bool>, verbose, debug, force, required, quarantine[=scratch-page],
> +    = List of [ <bool>, verbose, debug, force, required,
> +                quarantine=<bool>|scratch-page,

I think this should be quarantine=[<bool>|scratch-page], as just using
iommu=quarantine is a valid syntax and will enable basic quarantine.
IOW: the bool or scratch-page parameters are optional.

>                  sharept, superpages, intremap, intpost, crash-disable,
>                  snoop, qinval, igfx, amd-iommu-perdev-intremap,
>                  dom0-{passthrough,strict} ]
> @@ -1519,7 +1520,8 @@ boolean (e.g. `iommu=no`) can override this and leave the IOMMUs disabled.
>      successfully.
>  
>  *   The `quarantine` option can be used to control Xen's behavior when
> -    de-assigning devices from guests.
> +    de-assigning devices from guests.  The default behaviour is chosen at
> +    compile time, and is one of `CONFIG_IOMMU_QUARANTINE_{NONE,BASIC,SCRATCH_PAGE}`.

Do we also want to state that the current build time default is BASIC
if the user hasn't selected otherwise?

It's kind of problematic though, as distros might select a different
build time default and then the documentation would be out of sync.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Tue Oct 31 12:44:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 12:44:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625680.975185 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxo6y-0000fm-DY; Tue, 31 Oct 2023 12:44:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625680.975185; Tue, 31 Oct 2023 12:44: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 1qxo6y-0000ff-97; Tue, 31 Oct 2023 12:44:48 +0000
Received: by outflank-mailman (input) for mailman id 625680;
 Tue, 31 Oct 2023 12:44: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=Rkuq=GN=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qxo6x-0000fZ-3f
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 12:44:47 +0000
Received: from mail-lf1-x130.google.com (mail-lf1-x130.google.com
 [2a00:1450:4864:20::130])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 4557f0e0-77eb-11ee-98d6-6d05b1d4d9a1;
 Tue, 31 Oct 2023 13:44:46 +0100 (CET)
Received: by mail-lf1-x130.google.com with SMTP id
 2adb3069b0e04-507bd64814fso7731313e87.1
 for <xen-devel@lists.xenproject.org>; Tue, 31 Oct 2023 05:44:46 -0700 (PDT)
Received: from [192.168.201.133] ([94.75.70.14])
 by smtp.gmail.com with ESMTPSA id
 x10-20020a19f60a000000b00500d1a72734sm199906lfe.130.2023.10.31.05.44.44
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Tue, 31 Oct 2023 05: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: 4557f0e0-77eb-11ee-98d6-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698756285; x=1699361085; 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=1Wx5M6oncL7DmS1W5OU+2HUNMfWdXinZCMx60A8wEAE=;
        b=Xv0YLl2Y1WHWHAhDOWzgJKD6m2nwLkl/2b6t93WItdL5EpCXf5ZqkPGdbifUIeL3J9
         BKOTZA/GKFy7yXVOIgiswIIWouBSlOukQJTPmFWMT6ia/cJIlTCYNNlOI6Rs+nd+rfm3
         AyaGr+TOWs5A0OkxzZNE0Xe7uMUqzGy88lrWkBE9ruQpX9IJx+ORZ2asEHRK+vH8T4Le
         XwBcQjQ3TB8bg80G24ooQtkNM/S2Zkj/UA8hj8Tijx4PXhqgq8v9aXEn8hOZPGdk4I0N
         +MwosDfon6C1l9nWHQNW083M/ouvy/1GK5CCm9ckhTSRw2r9n+ECHMXTw2guZzYsmOSQ
         uTmA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698756285; x=1699361085;
        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=1Wx5M6oncL7DmS1W5OU+2HUNMfWdXinZCMx60A8wEAE=;
        b=LdHJBITfbzA8wfudwm+NdNLS8lwj4E4q5g3SpgxRA72903Q9nsawXv+nlSf+OBrEz4
         J0n/vY4NLjgW/AbbcWrT+vDYeApoxpzd7B4Rpl9jMYlY7y07zPo41PjlWCYl+mUu9DZm
         EerACa9wKydhtKtf+TZH9e/RZXjtswYL7O9OXwVMn8rRYqO/82eNA/eI2P2PJol8dukP
         ZqONItGD5mJ2ixjND+EHOT6akdZtp122FsO0yJZq7onyzNShZblt68tUoeSdZPh9CFF8
         JT6qEHp2o0Mhkib658pxZauGMwiLSg+mDgtWskJ6tzmgWpiomWmd6FlUmg1IVkmwBK75
         0QKA==
X-Gm-Message-State: AOJu0Yyz8geCciceueIcGIbCcgpqv3KY+CVbQc2zyBjinjZQyku749D3
	Veluy20wYTTVe6geDYCGw/I=
X-Google-Smtp-Source: AGHT+IEwmcXxsgL7l7qrksafBqswnblm16F228jwgu8xiQLj/HUvVlvRiD5ppLxfjWWnkhtd+IbY3g==
X-Received: by 2002:a05:6512:1081:b0:500:daf6:3898 with SMTP id j1-20020a056512108100b00500daf63898mr10055638lfg.26.1698756285273;
        Tue, 31 Oct 2023 05:44:45 -0700 (PDT)
Message-ID: <eca01dd66669a96c437c176ea6955ac0bdfc4edb.camel@gmail.com>
Subject: Re: [PATCH v1 12/29] xen/asm-generic: introduce stub header pci.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: Tue, 31 Oct 2023 14:44:40 +0200
In-Reply-To: <a826292a-44de-c149-0831-01578d9b38c3@suse.com>
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
	 <597a482c70fef196e245a5d898ea6314a0c479ca.1694702259.git.oleksii.kurochko@gmail.com>
	 <d4dca6d7-ac54-beac-26fc-5eaf80783a73@suse.com>
	 <d1e5d5fed5732274b2d4582b7aac4c3c2151d30a.camel@gmail.com>
	 <a826292a-44de-c149-0831-01578d9b38c3@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-10-30 at 17:43 +0100, Jan Beulich wrote:
> On 30.10.2023 17:34, Oleksii wrote:
> > Hello Jan,
> >=20
> > On Thu, 2023-10-19 at 11:55 +0200, Jan Beulich wrote:
> > > On 14.09.2023 16:56, Oleksii Kurochko wrote:
> > > > --- /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__ */
> > >=20
> > > While more involved, I still wonder whether xen/pci.h could also
> > > avoid
> > > including asm/pci.h when !HAS_PCI. Of course there's more than
> > > just
> > > the
> > > #include which then would need #ifdef-ing out.
> > >=20
> > > Jan
> >=20
> > It looks like we can do that but only one question should be
> > resolved.
> > In ARM case, in <asm/pci.h> there is !HAS_PCI branch:
> >=20
> > #else=C2=A0=C2=A0 /*!CONFIG_HAS_PCI*/
> >=20
> > struct arch_pci_dev { };
> >=20
> > static always_inline bool is_pci_passthrough_enabled(void)
> > {
> > =C2=A0=C2=A0=C2=A0 return false;
> > }
> >=20
> > struct pci_dev;
> >=20
> > static inline void arch_pci_init_pdev(struct pci_dev *pdev) {}
> >=20
> > static inline int pci_get_host_bridge_segment(const struct
> > dt_device_node *node,
> > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 uint16_t *segment)
> > {
> > =C2=A0=C2=A0=C2=A0 ASSERT_UNREACHABLE();
> > =C2=A0=C2=A0=C2=A0 return -EINVAL;
> > }
> >=20
> > static inline int pci_get_new_domain_nr(void)
> > {
> > =C2=A0=C2=A0=C2=A0 ASSERT_UNREACHABLE();
> > =C2=A0=C2=A0=C2=A0 return -1;
> > }
> >=20
> > #endif=C2=A0 /*!CONFIG_HAS_PCI*/
> >=20
> > And if is_pci_passthrough_enabled(), arch_pci_init_pdev() is used
> > by
> > all architrectures but pci_get_host_bridge_segment() and
> > pci_get_new_domain_nr() is ARM specific.
> > Does it make sense to add them to <xen/pci.h> and ifdef them?
>=20
> Counter question: Is the arch_pci_init_pdev() stub actually needed?
> The sole caller looks to be in a file which is only built when
> HAS_PCI=3Dy.
You are right. It seems that there is no need for pci_init_pdev() stub.

>=20
> For the Arm-only stubs (which are called from Arm-specific code
> afaics)
> all it would take is that the respective .c files include asm/pci.h
> (possibly alongside xen/pci.h).
We can do in that way.

Thanks.

~ Oleksii


From xen-devel-bounces@lists.xenproject.org Tue Oct 31 12:45:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 12:45:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625682.975195 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxo83-0001TF-Lh; Tue, 31 Oct 2023 12:45:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625682.975195; Tue, 31 Oct 2023 12:45: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 1qxo83-0001T8-Iy; Tue, 31 Oct 2023 12:45:55 +0000
Received: by outflank-mailman (input) for mailman id 625682;
 Tue, 31 Oct 2023 12:45: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=kxST=GN=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qxo82-0001T2-4K
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 12:45:54 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur04on0608.outbound.protection.outlook.com
 [2a01:111:f400:fe0e::608])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 6bc478b5-77eb-11ee-9b0e-b553b5be7939;
 Tue, 31 Oct 2023 13:45:50 +0100 (CET)
Received: from AS4P190CA0014.EURP190.PROD.OUTLOOK.COM (2603:10a6:20b:5de::18)
 by AS1PR08MB7611.eurprd08.prod.outlook.com (2603:10a6:20b:476::6)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.27; Tue, 31 Oct
 2023 12:45:44 +0000
Received: from AM3PEPF00009BA2.eurprd04.prod.outlook.com
 (2603:10a6:20b:5de:cafe::21) by AS4P190CA0014.outlook.office365.com
 (2603:10a6:20b:5de::18) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.29 via Frontend
 Transport; Tue, 31 Oct 2023 12:45:44 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM3PEPF00009BA2.mail.protection.outlook.com (10.167.16.27) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6954.19 via Frontend Transport; Tue, 31 Oct 2023 12:45:44 +0000
Received: ("Tessian outbound 8289ea11ec17:v228");
 Tue, 31 Oct 2023 12:45:44 +0000
Received: from c412de52b74b.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 33A791A8-7660-456B-87BD-34BB79445C31.1; 
 Tue, 31 Oct 2023 12:04:52 +0000
Received: from EUR03-DBA-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id c412de52b74b.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Tue, 31 Oct 2023 12:04:52 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by DB5PR08MB10310.eurprd08.prod.outlook.com (2603:10a6:10:4a1::6)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.29; Tue, 31 Oct
 2023 12:04:50 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::ae6e:f96c:f2f3:efc9]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::ae6e:f96c:f2f3:efc9%4]) with mapi id 15.20.6933.028; Tue, 31 Oct 2023
 12:04: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: 6bc478b5-77eb-11ee-9b0e-b553b5be7939
ARC-Seal: i=2; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=pass;
 b=P47WqEihmUQGTGBt2VCPC+ybkzrQ61glldDuVL2i7LOG5w2fgtmhQt5meAJblm+JwL6u3TTvjUEoYGmzAi27z7LMpWWzl9cW3fCQmuewRKkTwVFJU+pViB1zZEom2ZqrWuzIs5iHOSuNcyhXtl9Shk1timDfu+jZCH2bffUZz9aRsi78YaE30f7kH03Z72jkztykLcNfyM8frr8Nd22rZspctFHVVlIl+O1PaCo0qcpNkV0Yay23/6n0ng3Ch/5+++Zey/DQq6O6s9Kp6UrXIDRcMftFXo7+HPN0ErDESFj2pdb4nV+Q+DqZBcvloruX3cp7F6R8XhO8AIhW5fPuBQ==
ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=30adQHsFyS6yiltq+RhxDpeOy7RMzoWZue76dVEaWQ4=;
 b=TDHby5ZRtkoTln6GFeH/OsMg57WMRFW9jrrUp0U4gshlnyxd36mB15RGU21avfkyGfAnNi2ZR+ctaMjY7xBM/E6MgUxwZ7Sx+EhQ03UBa4n9wl5eEOeBjNeCjhtxyy2hB2IcNgmjYofaxLx1rQltTp+ge3DmLS+dZylX/ZU30ru+4nxqcHJjyEQjb7zfCTUmdpwgibSHGhBI/ElbKRBWhgAGEe94fRhmxhrjaR2v7awrncxMgpwEQ+GxM3tRgvYmxiTpyHKQioU37FtC67Y5QSjUcETT+qZMWd2AoAiNs1740rDsQIWS4KkNxhHeEbQJIRk4mwuPuZkBwXAdQiuwRA==
ARC-Authentication-Results: i=2; mx.microsoft.com 1; spf=pass (sender ip is
 63.35.35.123) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=arm.com;
 dmarc=pass (p=none sp=none pct=100) action=none header.from=arm.com;
 dkim=pass (signature was verified) header.d=armh.onmicrosoft.com; arc=pass (0
 oda=1 ltdi=1 spf=[1,1,smtp.mailfrom=arm.com] dkim=[1,1,header.d=arm.com]
 dmarc=[1,1,header.from=arm.com])
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=30adQHsFyS6yiltq+RhxDpeOy7RMzoWZue76dVEaWQ4=;
 b=mtjtEY1KQewTQqniEon6JywOjFm7yhbZsJt+nxDnxB6cG9JgPH27DkzcJKkucFAi4y8BRdnBu1jGdYBGrIB9iaMj92IHLM2drUSBC6pywX3dKBmhCqQVtrl8gUi9hZ1Uxg2rkgJKXOMH9sfbRAanwWLq5bUu8/fE0Au2kHpGaxg=
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: de12a21403e64403
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=E85r8oSjt3nwu8ToP293kXDfn4ocQl2P9p45pdKIHz//5+dEQ2Q2astO3fUa3Tfw/xvvHvo+jPxLl7YSwAZgHbyvgaYFcxQ7rmZWAVu9efEeDe5dzR4wzxMk5KCfDrhX+h8Bt0dqVkUs3dQqwPURG/vfFhj8WJcP857oe2jhzjxw7K7IjY3dwfTvlAWIFruwlhQ/IVjGUnZS+XMvlaJOB3RwJ6b3CBHhiHak0kiqgWdQRqe1DK/yx7T5hlWGrmHUbUs7jN+5VHp5L7E3q7uJx6cy/WwvSLEH5zno+f0+H9OKhP4s7qeP6msxB/Gv3tQMFU6/3HdbaIKvFzQUEiUW6Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=30adQHsFyS6yiltq+RhxDpeOy7RMzoWZue76dVEaWQ4=;
 b=Y5f2BJFdCTiV9t97pl1zMJu5WpSjxM7IOHAhq7fDVlX7R8pULOCqYxeFkqc2KPRAF6oxLoyMqZ3x24cRNigIUZguIhyHUfw3qlz1XcbmbuqxWWOF74HvD/7eE529TesTmUqgF1NYUMU5+N3XgsaJiMFrMtBMEpirVeHP97ELcCPih/PraqXdfNKVwe64VigseRHOcWgNLJ89bAgKnidia1gKjrufMgv6vubp02QGhydidRPCj8KVwL0zPevSAlcLTZcAlZnM61q74EFFpkkXJNJIHPwlMinQkRj1Aw3OK9koM1uxrbm0HGVqKSvTEGldQSCOJqImvoR/HpNZmoJLRA==
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=30adQHsFyS6yiltq+RhxDpeOy7RMzoWZue76dVEaWQ4=;
 b=mtjtEY1KQewTQqniEon6JywOjFm7yhbZsJt+nxDnxB6cG9JgPH27DkzcJKkucFAi4y8BRdnBu1jGdYBGrIB9iaMj92IHLM2drUSBC6pywX3dKBmhCqQVtrl8gUi9hZ1Uxg2rkgJKXOMH9sfbRAanwWLq5bUu8/fE0Au2kHpGaxg=
From: Henry Wang <Henry.Wang@arm.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>
CC: Xen-devel <xen-devel@lists.xenproject.org>, Jan Beulich
	<JBeulich@suse.com>, =?iso-8859-1?Q?Roger_Pau_Monn=E9?=
	<roger.pau@citrix.com>, Wei Liu <wl@xen.org>,
	=?iso-8859-1?Q?Marek_Marczykowski-G=F3recki?=
	<marmarek@invisiblethingslab.com>
Subject: Re: [PATCH for-4.18] docs: Fix IOMMU command line docs some more
Thread-Topic: [PATCH for-4.18] docs: Fix IOMMU command line docs some more
Thread-Index: AQHaC/IzprW/e81lMUm0ujgx6LUrCLBjzPMA
Date: Tue, 31 Oct 2023 12:04:50 +0000
Message-ID: <1BA31205-0991-4FD2-BEC5-D9D89DCC3B65@arm.com>
References: <20231031120215.3307356-1-andrew.cooper3@citrix.com>
In-Reply-To: <20231031120215.3307356-1-andrew.cooper3@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_|DB5PR08MB10310:EE_|AM3PEPF00009BA2:EE_|AS1PR08MB7611:EE_
X-MS-Office365-Filtering-Correlation-Id: e981ce46-481e-44e2-4a95-08dbda0f4c5f
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:
 mlFwpXkhVUGryRYqWb+Al+qdT2aBWdcqEOIXl08WiU68gM2VCbI00KrxMnklGujWtT28o6Q//PCCMVXbgYcaaS4PkAkVubEUiDuOJwZ2YYidAFPPOjRFNlR/O+kaVujsgrYmmT10xrgTaCFvFBLovngnlOL4Yoea8aLGjXyKRoaZwngKg9KtxwYnCqRQ5qsuNviPL3AEtf4zAVtD1uifVJrpB7adYu4M/XqbLwPVWzRdtvtDSGoPy8qcfev01k/aG5afioDAGgTOriHH/dMJCfNTDxb4vWVJ7psl+TL/tJX21aWZ/x5hwhQJxwoWJxQSJMgZMi9Ts0NG8CKo2YPmJstS6ygqLArOsCsNJvg6mhiYyaGFqh5s489ImePRoMffRX5UymPtD7HqVeMLrWlrFElhj5mQfQZTLLMGV8R5nMmpoj8IWVjsm9CM+6pVzISgXuTQchqnCvp6GlmiGi6jGH5+zRBUjTadZme9BQKrCuelhqGieJ5UKm37eVrdUrXC9uf18IlyBghzpf4jHS2HXkbuZE/fhnY2gS7e856lGu4zrxg83H/Iq9WOmPvUvq4NtKzPMGxL+T5bHX9mWYUUeVnxcUgJpcOQZeVBcf8Q0PXVU4Ye4hj75Ctv6wuJ2iaXqLo1yQ3CqJk3Z2rdK5TByA==
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)(366004)(39850400004)(346002)(136003)(230922051799003)(64100799003)(1800799009)(451199024)(186009)(6486002)(66476007)(4326008)(5660300002)(8676002)(54906003)(64756008)(66446008)(8936002)(478600001)(122000001)(33656002)(36756003)(86362001)(41300700001)(2906002)(4744005)(38070700009)(76116006)(91956017)(6916009)(316002)(66556008)(66946007)(6506007)(6512007)(38100700002)(53546011)(71200400001)(26005)(2616005)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="iso-8859-1"
Content-ID: <F9F763B3A44A3A4293A0696313227E86@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB5PR08MB10310
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:
 AM3PEPF00009BA2.eurprd04.prod.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	ff3cee3d-f11a-449e-fa2d-08dbda099598
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	eINgq3aEZ97mnkPVp7R7fXWPEjMlI6dMN+HlyxIFX8IjkwMlkc37nJG7ZIgGg9Gv7syLUHFoqidrnjAJ4b5PChG5vnis4I8LyOsgpD/ojKSLYOnEe/3X8aY9XIytPPNpF0iapswOKbeZ/KGu7EArWa4v/sC/xlGA6YELHId1Qnuk8XfGRpBn45OGi/nsc5HOu49S7yhUEZ98UwTOrJuzHrGUDTb/uir7MhzmRsX1e8bL/oLw5+t6gNmzvwJL1zpe/MROqHZgmk/M7QIfj1msO7B+zSfAkrUjFG/UbKFU1r+VfNADfzOkZMnlcAlBpO66ITzwFqPlI0V7v4igVH6f7CYxRhCwygg/dAaJMb+s1AY+8tWs0LzwZcivMva3HUYIinIzODAagNRWbGNwuoxDssKaTTZ94+wB4RzsCL6HHKCMBFms4jfgH+sQzVFb3qqIEKEaUBLR92i6n5YCbEWIGNnyHtizdEm4/wEhEe/t5PgDA3+A09jxy0XKz6EHscWGkHuCfHB+Y0/Tae03FBpOnEDKpQLV69AW/mNZvHzxxtiHvRD9pe6R+Nc1CVxpqIOmMBf9oPtSAoFfwggUSPKJBU1iPi0WXy3P6WtBDT4tuUwhP2kduOpuFr8eYgtCtfA3zDWDFO//lurAa4t9rwk9f6LjBKB7fPubLrfi5rPr40zFKnAXzdK8nfbrmLoCW5eA1UItQKHsox0cl7WVFADNZ0MoKrCYqNKEVCuZ6I3EyTO3HFAcxomfyC4Rg1MRU9MR
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)(39860400002)(376002)(136003)(230922051799003)(451199024)(1800799009)(186009)(82310400011)(64100799003)(46966006)(36840700001)(40470700004)(4744005)(86362001)(2906002)(33656002)(41300700001)(8676002)(4326008)(8936002)(6862004)(5660300002)(40460700003)(36756003)(478600001)(6486002)(6512007)(6506007)(40480700001)(47076005)(53546011)(81166007)(107886003)(316002)(54906003)(26005)(70206006)(70586007)(336012)(82740400003)(36860700001)(2616005)(356005);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 31 Oct 2023 12:45:44.3266
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: e981ce46-481e-44e2-4a95-08dbda0f4c5f
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:
	AM3PEPF00009BA2.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS1PR08MB7611

Hi Andrew,

> On Oct 31, 2023, at 20:02, Andrew Cooper <andrew.cooper3@citrix.com> wrot=
e:
>=20
> Make the command line docs match the actual implementation, and state tha=
t the
> default behaviour is selected at compile time.
>=20
> Fixes: 980d6acf1517 ("IOMMU: make DMA containment of quarantined devices =
optional")
> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>

Release-acked-by: Henry Wang <Henry.Wang@arm.com>

Kind regards,
Henry



From xen-devel-bounces@lists.xenproject.org Tue Oct 31 13:05:49 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 13:05:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625688.975204 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxoR1-0005Mg-4J; Tue, 31 Oct 2023 13:05:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625688.975204; Tue, 31 Oct 2023 13: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 1qxoR1-0005MZ-1b; Tue, 31 Oct 2023 13:05:31 +0000
Received: by outflank-mailman (input) for mailman id 625688;
 Tue, 31 Oct 2023 13:05: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=71U0=GN=amd.com=ayan.kumar.halder@srs-se1.protection.inumbo.net>)
 id 1qxoR0-0005MP-1k
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 13:05:30 +0000
Received: from NAM12-BN8-obe.outbound.protection.outlook.com
 (mail-bn8nam12on20623.outbound.protection.outlook.com
 [2a01:111:f400:fe5b::623])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 255214c7-77ee-11ee-98d6-6d05b1d4d9a1;
 Tue, 31 Oct 2023 14:05:21 +0100 (CET)
Received: from SN6PR12MB2621.namprd12.prod.outlook.com (2603:10b6:805:73::15)
 by SJ0PR12MB7081.namprd12.prod.outlook.com (2603:10b6:a03:4ae::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.29; Tue, 31 Oct
 2023 13:05:17 +0000
Received: from SN6PR12MB2621.namprd12.prod.outlook.com
 ([fe80::517a:f65:688e:c4b1]) by SN6PR12MB2621.namprd12.prod.outlook.com
 ([fe80::517a:f65:688e:c4b1%6]) with mapi id 15.20.6933.028; Tue, 31 Oct 2023
 13: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>
X-Inumbo-ID: 255214c7-77ee-11ee-98d6-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=LCDoAQ6j2oTMz64vKm8q5/UtcNVCXK8xUp7pfx4ZA07M9X27yDXGtsj9+WtGuUCYksu7CMFTpTgEXVYPhEbUiaCyhuiw/mzfao/BUApVtiidOWzyo8kCQX9K0v56MkP2QR1XHsgWoayEzllZBNgU97lnOjlNnh1VwqYWceJzN+b2aWBb4mnE8Od41rLKBXbexgAII3jwqpJ/HV4mDR50ocvwOzAjk/xRu2uqljV+pq4Trf0+yJSK1+9Y/WO8RDRl4yovNKtahiXu/QdDLr8bc3jSpitUtaZ1IVLB1gBci21yAtXQPfnElW/yBEMwj4/ZB7rgVW7F56k7aX+rBAJu3Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=BB50o92v7bq7Zn1Sf3JyQGnzGqQSJISpFZeL0/gW088=;
 b=IqybwRm6Gi9IC0cf9+8PD/dvOTZP5jHc4H8AbQ2kbmmD6pFVlLWo6myPboqVmZ3rVXFVaznuZJK1mi5dnonm3B21bjmxsGRmJEE45cGq01KF2v4FX9TNZ0mW05GfAHcVfVDPqWkDJIb+yGwm0oXxQ1EtTp91jZ01ap6eOcKBksWsTWR8+UpP0shHWi4PzzqmgWHQDarJ9c+U9UPR11RKM9OUxfdDVOgY94nwkACi5tHfkNFOAGf/kvhHoM175eqNCrWU+d/GLmATaqSDR/cUd+dVHxpdt7CVK2BTtTvDyK5cXXJwRObT+qIAa4L3xQtXq8w2TSLoDdi0RALpigt43Q==
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=BB50o92v7bq7Zn1Sf3JyQGnzGqQSJISpFZeL0/gW088=;
 b=T/GXIcEFnQ7DaB4IDd2e/yAXepJSdbMPGml392K308S0R8qrqsh0yt15Insph+bDFrj01Oi5isQCM40TYZBdFoAFhWrzr1IfJ0vHcoJhOrykOqeFeF6NELcD0JdZjXq3vY9nN0xUihFNalUcNwIXTIq1VB2eTMCVfPbFzdjVEUk=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=amd.com;
Message-ID: <03347742-c32d-4fc0-8ad3-f87cf71f20f1@amd.com>
Date: Tue, 31 Oct 2023 13:05:11 +0000
User-Agent: Mozilla Thunderbird
Subject: Re: Cambridge University Talk - 9th November 2023
Content-Language: en-GB
To: xen-devel@lists.xenproject.org
References: <CAO-mL=xE=-8RjeAOKumLfcSf=wu0OWLK0X1Lz2JMCefBXbnTfA@mail.gmail.com>
Cc: Kelly Choi <kelly.choi@cloud.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Andrew Cooper <andrew.cooper3@citrix.com>, Julien Grall <julien@xen.org>,
 Bertrand Marquis <Bertrand.Marquis@arm.com>,
 Oleksandr Tyshchenko <Oleksandr_Tyshchenko@epam.com>,
 "jbeulich@suse.com" <jbeulich@suse.com>,
 Luca Fancellu <luca.fancellu@arm.com>
From: Ayan Kumar Halder <ayankuma@amd.com>
In-Reply-To: <CAO-mL=xE=-8RjeAOKumLfcSf=wu0OWLK0X1Lz2JMCefBXbnTfA@mail.gmail.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: PR2PR09CA0006.eurprd09.prod.outlook.com
 (2603:10a6:101:16::18) To SN6PR12MB2621.namprd12.prod.outlook.com
 (2603:10b6:805:73::15)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SN6PR12MB2621:EE_|SJ0PR12MB7081:EE_
X-MS-Office365-Filtering-Correlation-Id: d4fd0844-37fc-4711-d716-08dbda120766
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	JRVviyR9RlCedu91lLLU/hqRTmzYzjfdV8EAKrsfsTxuqeLCff+D6u06H5xwIkcM0RBhXZASfq/coja97MHJBIozQfWNZ29Aya/G82oDQW2gSyuLGcoFP+A7kLROxOSDq+vD8Sipjgg5ZWZlijna9KrQCb4FIYHOhhSINwADU6KbwHVjSO/ThUNU80WQDIFQtQ8+oMmTOGSM2bhZz0HTBHTPMoYXNIG27Ay6K3tuorfBdO/87CRhjJp/i0Lz8tT7vAJaXFLnYxwoKwqJOQkQP9MCQ3hCIFnJq8v8m7T2H5Jd619ALwpe/1aQWsoT1rDIMce8CT4CuM7XNPmV8HFAcUuozkdUCBuJ7idaxT9MdGt7ILg4J7zMop07HoojcGBBR0eggbA2fvNip5QKOnVY0YuFE6LehMO6CqSmGSk0/wdp/KxDZ855Q8KNwUAerUodYGwXUI9RBuwUhRnBphghH+/3/Ylzo9+ag2auNzhLnvhes7DdKTw3PcVD1Qsq1/CT0eLV6ppT9tJsV+J9R1WenNpWohl9rYb1K8ZWIXkiqtM36TlaxicC2ixHCq3R4V5fXB9U0Ne/BAob79St7YSb3YP/HkHI10cxqqfktIZ3gYRzsrXr6kqIFv/42AnX2Fy64/t8dbn5x8fryL7c3TNvNQ==
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)(39860400002)(396003)(346002)(136003)(376002)(366004)(230922051799003)(451199024)(1800799009)(186009)(64100799003)(31686004)(66556008)(41300700001)(5660300002)(66476007)(54906003)(66946007)(316002)(6916009)(8676002)(4326008)(8936002)(66899024)(478600001)(2906002)(6486002)(6512007)(26005)(31696002)(36756003)(53546011)(6506007)(2616005)(966005)(38100700002)(6666004)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?REVJZUNvM3lRcXczWG1QbThJd1ozWXpGWVZ4dE1oRExRVUx4UHVyeEVLN3ZH?=
 =?utf-8?B?THBJYlBLbXdFQVBwcmM2VVJnNzdyeUJ6YngwSUxDekFZem9rYVNsOTBqN3lH?=
 =?utf-8?B?eDh4bnRseWVzMmJNUDJuOXdXNE1rTmVsRUdodGZob3hTc2ludUNVdHNvU3Uz?=
 =?utf-8?B?M2FTRmZpK2VsaUJQTXBxbFc5blZhYWpBbFVvbng3TURlV1NkODFtVVJmUEFG?=
 =?utf-8?B?V3h0NkpNVUt4YUptc3A1UG5DTHBZWkJmR2dUYTh0SXN0V3hVT3pmUzFRWEJD?=
 =?utf-8?B?dzRBWjh6Y2hsVEZnZURaWTI3L21BemxZTlQ0OTB1TWhaQ2k4cmpzZWdFOUMr?=
 =?utf-8?B?US9SVUZzcENKZG9Gd1RFUXRJVHF4LzJWRXZ2RVBnOFdPZHB5M096RWpQaDdF?=
 =?utf-8?B?RHlRaTBOWVFlUFg3ai9nUVcvUXlpUGVnV2hYQmEzYVRVaEpyRlhyWndCQy9r?=
 =?utf-8?B?UXV5dERuMWtxZnVUTkExdHZjL2FGc2c0dlFJdTFveGs0RmNjbytRMFV5b1lL?=
 =?utf-8?B?ajhGcjF3NzVudjFlNko3THZuWkVnM0N2LzltUW5RczNrcXkrek1YRzZ0RnRJ?=
 =?utf-8?B?cDE3NCtEV0o5QmxXNFVpaWtIY3NMT1lOUXhhKzJDaUJPWmpvdy9WdjlNNHJt?=
 =?utf-8?B?ODlOZDh6eWt4WEV3aUlwTkNpNEYySnk0RUJRYlZuVTJPcytvZmVwSUxac0hi?=
 =?utf-8?B?aDhqUHY2ZHFuaVBXZVFzUllvTk1EazBmZSt2bzZBU0c5NWl2cTA0Wk40YkFh?=
 =?utf-8?B?T3E3dWtob0U1cFRsbzE5dy9DLzRPYjB0djF1bWFzR0V4Q2R2WXRtc2NKRWhi?=
 =?utf-8?B?VkRiRmlhUjFNd0ZKVGVQeVorN2NNeDN4ZFRjWVMyL1gvSFZIZlVmc0Q3enRj?=
 =?utf-8?B?TmZpTnVCUkdJeUtUWk9IZ2Y3ZHdaZHdRV0Zrc2xHZUVpTUpRYUpKR29ub3Zm?=
 =?utf-8?B?cXRnMWNES05ZSk5NcnU5eGt2dG1UdmlPdEx3bE5hRGxMZkgwQmoxNlFON3NK?=
 =?utf-8?B?TUxlMkh2TThPQVo3YWR6dm1wK0s2dzU3dGdpYkF4c1pmUDBOY2QrU3c4bUtk?=
 =?utf-8?B?aTBPcHlvSWFYSkx3S2pPMEIvYmVybDlHV21jS01xcGZBQnZGNEJsdWZKd1FV?=
 =?utf-8?B?cDg0RnBMQWNHSnhPMTFFR3J3d1RsRjVRYW5XZjZJS3R5azhEUmVzSnBZckhT?=
 =?utf-8?B?M21USWlzK3hhcU5pTjBDRDkvd1l1bG9OQ2hIQjdxbGVZUVlvTEsrQjMyTnFw?=
 =?utf-8?B?VjdydnNFTnRUNGlabktvbWZaREUyNzlyOGsycjNrOTY0K3c5ZW13M2dpTkVX?=
 =?utf-8?B?WmRISGVMM1N5WU52aWhYcHlYSFBHcktYSDlkZ1JlK0NXTkJYNVV0MGNCV2gw?=
 =?utf-8?B?TXpWNE9SUExnazF6KzNSczhpV2EwT2pKNlVBK3lmSTVuaUQ3SnVhVWhPUmNy?=
 =?utf-8?B?WWtGSTZZVHBpVHlZT3FpNHB1eHdLVUNiRmZXRkNuQTA0Yi80dVNTWEUwR21Y?=
 =?utf-8?B?SUYwRGdSQThWblF6bEduMGhBWEo0TUh1WnorK2Z1V0d6SG5PWkhzQW85ZnJZ?=
 =?utf-8?B?N2IxaVZJN1V1MnkwQ1B1WmRQUVBPclZsdkFWTlE3OXFyYU5YQmNOSHoxRitG?=
 =?utf-8?B?enNyUWt1WVhTeGRyMHNpLzBET2p6YUZiZmpaaEVTMXNsT21tZXV4ZFlsVEhR?=
 =?utf-8?B?czYrS3RpNTNJWmxDUWU3Ky9QeUNDdlViUVA5akh6U3l5OXpZZzJNcTREMmtq?=
 =?utf-8?B?Q09jdkIxeTVEWkg2RmU4aVVCVUVvU1hrdzNSblVJMXh4V1ZvQjc1cUl3UWxC?=
 =?utf-8?B?RVJyTTZLMWlhVXdjbjBiZUxoRVZEaWVQWlRUVmVWQkE4aTFBVkluUkdvU3ly?=
 =?utf-8?B?RE5rTkw2Q01wY2o5RnFvSDFkOFBML3lLanlpZEVKMW10di92Ti84YkNmakhF?=
 =?utf-8?B?WU8wcWxJZ0ExeWZaZyt6NFlXelIybkRaRGpVY2RuckcwVjZETGdnU05QdkdP?=
 =?utf-8?B?MEdzU0FKNTVZYkx6c3dvelgzY2NDcmVkM1FYdTRzeGkreFhXQ2NxM1V6bjF2?=
 =?utf-8?B?Qm9VZXArZWJVTjZBUUdDdWdZWFFGdGdlTU1IMHNEOG02L0FmcXF2V1BnOVF0?=
 =?utf-8?Q?QZPT4vy6rcpUHld6wHDJ1/ZpR?=
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-Network-Message-Id: d4fd0844-37fc-4711-d716-08dbda120766
X-MS-Exchange-CrossTenant-AuthSource: SN6PR12MB2621.namprd12.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 31 Oct 2023 13:05:17.3993
 (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: wcEMmDKSLO5WGA0WLt5nB9aR5dSBcrwUSx0E91/C9G0EMDJX5Yqj7/mUNwrSNPsv36Mimit0HwSxsKISfsHfNA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR12MB7081

Hi Xen Maintainers/developers,


As part of my talk, I wish to provide some examples of tasks that a 
newbie can easily pick up and contribute.

This need not be a dedicated project, but something that can be 
contributed on an ad-hoc basis.

The idea is to get more people interested in Xen project. :)


I found some examples of this :-

1. Misra C fixes - Refer "Misra rule 10.3 violations report script" . 
Luca has provided an awesome script to identify the MISRA violations. 
This can be used to provide fixes.

2. https://wiki.xenproject.org/wiki/Outreach_Program_Projects - I think 
this page provides some pointers, but I am not sure if this is up to date.


Please let me know if there are more of these examples.


Kind regards,

Ayan


On 30/10/2023 17:54, Kelly Choi wrote:
> Hello Xen Community!
>
> I'm excited to share that we will be presenting a talk at Cambridge 
> University!
> This is free and open to everyone, including students and the public.
>
> Make sure to add this to your calendars and come along.
>
> *Date: Thursday 9th November 2023*
> *Time: 3 - 4pm *
> *Location:
> *
> *Computer Laboratory
> William Gates Building
> 15 JJ Thomson Avenue*
> *Cambridge CB3 0FD
> https://www.cl.cam.ac.uk/directions/ *
>
> Title: Navigating the Open Source Landscape: Insights from Ayan Kumar 
> and Edwin Torok <https://talks.cam.ac.uk/talk/index/205825>
>
> Join us for an illuminating seminar featuring two distinguished 
> speakers, Ayan Kumar and Edwin Torok, who will delve into the 
> intricate world of open-source projects.
>
> Ayan Kumar: In his engaging presentation, Ayan Kumar will be your 
> guide through the inner workings of open-source projects, using the 
> Xen hypervisor as a compelling example. With a keen focus on 
> demystifying the nuances of open-source collaborations, Ayan will walk 
> you through the step-by-step workflow for contributions, shedding 
> light on the collaborative modes that fuel innovation. Get ready to be 
> inspired by the fascinating ongoing developments in the Xen 
> hypervisor. Ayan will also provide invaluable insights for newcomers, 
> outlining promising avenues for their initial contributions. The 
> session will culminate in a hands-on demonstration featuring a 
> selection of noteworthy open-source projects.
>
> Edwin Torok: Edwin Torok will offer invaluable wisdom on the unique 
> challenges of joining and maintaining a venerable, decade-old 
> codebase, drawing from his extensive experience with the XAPI project. 
> With a deep dive into the strategies and practices that sustain such a 
> longstanding project, Edwin will equip you with the insights needed to 
> navigate and contribute effectively to large-scale, established 
> codebases.
>
> Don't miss this opportunity to gain firsthand knowledge from these two 
> seasoned experts in the open-source arena. Join us for an enriching 
> seminar that promises to empower both beginners and seasoned 
> developers alike.
>
> Many thanks,
> Kelly Choi
>
> Open Source Community Manager
> XenServer, Cloud Software Group


From xen-devel-bounces@lists.xenproject.org Tue Oct 31 13:18:14 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 13:18:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625693.975215 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxodD-00009U-Ad; Tue, 31 Oct 2023 13:18:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625693.975215; Tue, 31 Oct 2023 13:18: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 1qxodD-00009N-7W; Tue, 31 Oct 2023 13:18:07 +0000
Received: by outflank-mailman (input) for mailman id 625693;
 Tue, 31 Oct 2023 13:18:06 +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 1qxodC-00009G-3l
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 13:18: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 1qxod7-0003KF-2P; Tue, 31 Oct 2023 13:18:01 +0000
Received: from 54-240-197-239.amazon.com ([54.240.197.239]
 helo=[192.168.9.249]) by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qxod6-0006VA-SQ; Tue, 31 Oct 2023 13: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=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=gERv1XqFn0hMvu6UdueVArG61XDoNGu00oD5C9uauTc=; b=x4EwJGjPEMkRfZ2hMgG23bqWSE
	IcSINfBHE7cbKLy5nt1tx1HyysbO5j6bfnnhDeGFHkWB5PVNMHLDgy0btxKKffKljdTIQaog8zVIT
	wzHex/+9c3xOUNXqpOIB6r+0wMKyVPvL8HNOVWR+0/U6QXCsAl6I784jRXlU6LqTYh/g=;
Message-ID: <784fa30f-cdce-4d0b-97d1-a22ac52aa8c9@xen.org>
Date: Tue, 31 Oct 2023 13:17:58 +0000
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v4 4/5] [FUTURE] xen/arm: enable vPCI for domUs
Content-Language: en-GB
To: Jan Beulich <jbeulich@suse.com>,
 Stewart Hildebrand <stewart.hildebrand@amd.com>
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, Paul Durrant <paul@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>,
 xen-devel@lists.xenproject.org
References: <20231030235240.106998-1-stewart.hildebrand@amd.com>
 <20231030235240.106998-5-stewart.hildebrand@amd.com>
 <2f828bd2-e6f8-15b5-b226-33e2b33ebba8@suse.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <2f828bd2-e6f8-15b5-b226-33e2b33ebba8@suse.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi,

On 31/10/2023 11:03, Jan Beulich wrote:
> On 31.10.2023 00:52, Stewart Hildebrand wrote:
>> --- a/xen/drivers/passthrough/pci.c
>> +++ b/xen/drivers/passthrough/pci.c
>> @@ -1618,6 +1618,16 @@ int iommu_do_pci_domctl(
>>           bus = PCI_BUS(machine_sbdf);
>>           devfn = PCI_DEVFN(machine_sbdf);
>>   
>> +        if ( IS_ENABLED(CONFIG_ARM) &&
>> +             !is_hardware_domain(d) &&
>> +             !is_system_domain(d) &&
>> +             (!IS_ENABLED(CONFIG_HAS_VPCI_GUEST_SUPPORT) || !has_vpci(d)) )
> 
> I don't think you need the explicit ARM check; that's redundant with
> checking !HAS_VPCI_GUEST_SUPPORT. It's also not really clear why you
> need to check for the system domain here.

I might be missing but I wouldn't expect the domain to have vPCI enabled 
if CONFIG_HAVE_VPCI_GUEST_SUPPORT=n. So why can't this simply be:

if ( !has_vcpi(d) )
{
    ...
}

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Oct 31 13:20:10 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 13:20:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625697.975234 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxofC-0001rY-TG; Tue, 31 Oct 2023 13:20:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625697.975234; Tue, 31 Oct 2023 13: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 1qxofC-0001rP-QM; Tue, 31 Oct 2023 13:20:10 +0000
Received: by outflank-mailman (input) for mailman id 625697;
 Tue, 31 Oct 2023 13: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=N8KE=GN=citrix.com=prvs=661c0debb=Andrew.Cooper3@srs-se1.protection.inumbo.net>)
 id 1qxofB-0001bo-RS
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 13:20:09 +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 35ecad8b-77f0-11ee-9b0e-b553b5be7939;
 Tue, 31 Oct 2023 14:20:07 +0100 (CET)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 35ecad8b-77f0-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1698758407;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=HDgQZiBDOWeiKil/jzTiLJs8a96nKVOORadMZobuEAk=;
  b=PrVh4nif38Bz7TY/iruczMZiEE1uErthb6k258jCtyhD8MUliGMjHKsk
   K8BT9V9cm95Z7Qy7VqmWAV1wdQ/IzDXUIwATFG0HmaSvHrWqKt6JCEyf0
   DLWQ9VQXizwEkI4aDSOQtOgVaud+AteWH3RWG/s3U0m3JBCYwqGbbwFmX
   A=;
X-CSE-ConnectionGUID: doa3TLBmT+eQnMIwQ1ipjg==
X-CSE-MsgGUID: 4xjpwq9wSqWWRP98Wj+azA==
Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
X-SBRS: 4.0
X-MesageID: 127580572
X-Ironport-Server: esa1.hc3370-68.iphmx.com
X-Remote-IP: 162.221.159.70
X-Policy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:k7lDg6PK5BLpJIDvrR2Xl8FynXyQoLVcMsEvi/4bfWQNrUojg2QFm
 GsfXziPMvyJM2b1eoh3PIWwoUME6sWHm9IwSwto+SlhQUwRpJueD7x1DKtS0wC6dZSfER09v
 63yTvGacajYm1eF/k/F3oDJ9CQ6jefQAOOkVIYoAwgpLSd8UiAtlBl/rOAwh49skLCRDhiE/
 Nj/uKUzAnf8s9JPGjxSs/nrRC9H5qyo42pA5QVmPJingXeF/5UrJMNHTU2OByOQrrl8RoaSW
 +vFxbelyWLVlz9F5gSNy+uTnuUiG9Y+DCDW4pZkc/HKbitq/0Te5p0TJvsEAXq7vh3S9zxHJ
 HehgrTrIeshFvWkdO3wyHC0GQkmVUFN0OevzXRSLaV/ZqAJGpfh66wGMa04AWEX0upwCDpy0
 dYdFHMAVxampv2PmbOjSOY506zPLOGzVG8eknRpzDWfBvc6W5HTBa7N4Le03h9p2JoIR6yHI
 ZNEOHwwNHwsYDUWUrsTILs4kP2lmT/UdDpApUjOjaE2/3LS3Ep6172F3N/9I4bVGJUNwxnCz
 o7A1zjpAAkFLY2A8iO6zUiU17/wn2DySqtHQdVU8dY12QbOlwT/EiY+RVa95PW0lEO6c9ZeM
 FAPvDojq7Ao806mRcW7WAe3yFamlBMBX9tbE8Uh9RqAjKHT5m6xHXMYRzRMbNgnss4eRjEw0
 FKN2dTzClRHr7m9WX+bsLCOoluaOzURLGIETT8JS00C+daLiKE+iAjeCOlqFqGdh8fwXzr3x
 li3QDMW3utJy5RRjuPioAGB3GrESoX1ohAd6gLeBV6BxAZFJ4OcYamJ9mGC7O5CI9PMJrWeh
 0Toi/Ry/chXU8Ddy3bWHbRWdF26z6zbamGC2zaDC7Fkp2z3pSP5FWxFyGsmTHqFJProbtMAj
 KX7kgRL7ZsbB2OwbKl4eOpd4OxxlvC/TLwJuh3OB+eig6Sdlyfdp0mCnWbKgwjQfLEEyMnTw
 6uzf8e2Fmo9Aq961jewTOp1+eZ1l3BglDuDGs+glUnPPV+iiJm9EOhtDbdzRrlkt/3sTPv9q
 L6zyPdmOz0ACbajM0E7AKYYLEwQLGhTOK0aX/d/L7bZSiI/QTFJNhMk6e95E2CTt/gPx7igE
 7DUchMw9WcTclWecFzbMis4MOKHsFQWhStTABHA9G2AgxALCbtDJo9FLvPboZFPGDRf8MNJ
IronPort-HdrOrdr: A9a23:kc1VBKBl84ho2V/lHelW55DYdb4zR+YMi2TDt3oddfWaSKylfq
 GV7ZAmPHrP4gr5N0tOpTntAse9qBDnhPtICOsqTNSftWDd0QPFEGgL1+DfKlbbak/DH4BmtJ
 uJc8JFeaDN5VoRt7eH3OFveexQv+Vu88qT9JnjJ28Gd3AMV0n5hT0JcTpyFCdNNW97LKt8Lr
 WwzOxdqQGtfHwGB/7LfEXsD4D41qT2fIuNW29/OyIa
X-Talos-CUID: =?us-ascii?q?9a23=3ApJliEWoBHMTOaGHmgF/xmn/mUcwieybh6F3VHwy?=
 =?us-ascii?q?1MGBMaaKsEF6I+qwxxg=3D=3D?=
X-Talos-MUID: 9a23:eZlXpQRHZYZHTOGARXSwlDN6K945/J+3N383qcRWhMvHPD5ZbmI=
X-IronPort-AV: E=Sophos;i="6.03,265,1694750400"; 
   d="scan'208";a="127580572"
From: Andrew Cooper <andrew.cooper3@citrix.com>
To: Xen-devel <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, George Dunlap
	<George.Dunlap@eu.citrix.com>, Jan Beulich <JBeulich@suse.com>, "Stefano
 Stabellini" <sstabellini@kernel.org>, Wei Liu <wl@xen.org>, Julien Grall
	<julien@xen.org>, =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?=
	<roger.pau@citrix.com>, Henry Wang <Henry.Wang@arm.com>
Subject: [PATCH for-4.18 1/3] CHANGELOG: Reformat
Date: Tue, 31 Oct 2023 13:19:52 +0000
Message-ID: <20231031131954.3310725-2-andrew.cooper3@citrix.com>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <20231031131954.3310725-1-andrew.cooper3@citrix.com>
References: <20231031131954.3310725-1-andrew.cooper3@citrix.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit

Collect all x86 and ARM changes together instead of having them scattered.
Tweak grammar as necessary.

No change.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
---
CC: George Dunlap <George.Dunlap@eu.citrix.com>
CC: Jan Beulich <JBeulich@suse.com>
CC: Stefano Stabellini <sstabellini@kernel.org>
CC: Wei Liu <wl@xen.org>
CC: Julien Grall <julien@xen.org>
CC: Roger Pau Monné <roger.pau@citrix.com>
CC: Henry Wang <Henry.Wang@arm.com>
---
 CHANGELOG.md | 35 +++++++++++++++++++----------------
 1 file changed, 19 insertions(+), 16 deletions(-)

diff --git a/CHANGELOG.md b/CHANGELOG.md
index 3ca796969990..edc0d69898ed 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -17,24 +17,27 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
    Hotplug" for clarity
 
 ### Added
- - On x86, support for features new in Intel Sapphire Rapids CPUs:
-   - PKS (Protection Key Supervisor) available to HVM/PVH guests.
-   - VM-Notify used by Xen to mitigate certain micro-architectural pipeline
-     livelocks, instead of crashing the entire server.
-   - Bus-lock detection, used by Xen to mitigate (by rate-limiting) the system
-     wide impact of a guest misusing atomic instructions.
- - xl/libxl can customize SMBIOS strings for HVM guests.
- - Add support for AVX512-FP16 on x86.
- - On Arm, Xen supports guests running SVE/SVE2 instructions. (Tech Preview)
- - 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).
+ - On x86:
+   - xl/libxl can customize SMBIOS strings for HVM guests.
+   - Support for enforcing system-wide operation in Data Operand Independent
+     Timing Mode.
+   - Add Intel Hardware P-States (HWP) cpufreq driver.
+   - Support for features new in Intel Sapphire Rapids CPUs:
+     - PKS (Protection Key Supervisor) available to HVM/PVH guests.
+     - VM-Notify used by Xen to mitigate certain micro-architectural pipeline
+       livelocks, instead of crashing the entire server.
+     - Bus-lock detection, used by Xen to mitigate (by rate-limiting) the
+       system wide impact of a guest misusing atomic instructions.
+   - Support for features new in Intel Granite Rapids CPUs:
+     - AVX512-FP16.
+ - On Arm:
+   - Xen supports guests running SVE/SVE2 instructions. (Tech Preview)
+   - Add suport for Firmware Framework for Arm A-profile (FF-A) Mediator (Tech
+     Preview)
+   - Experimental support for dynamic addition/removal of Xen device tree
+     nodes using a device tree overlay binary (.dtbo).
  - Introduce two new hypercalls to map the vCPU runstate and time areas by
    physical rather than linear/virtual addresses.
- - On x86, support for enforcing system-wide operation in Data Operand
-   Independent Timing Mode.
  - The project has now officially adopted 6 directives and 65 rules of MISRA-C.
 
 ### Removed
-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Tue Oct 31 13:20:11 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 13:20:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625696.975224 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxofB-0001c3-Lw; Tue, 31 Oct 2023 13:20:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625696.975224; Tue, 31 Oct 2023 13:20: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 1qxofB-0001bw-JP; Tue, 31 Oct 2023 13:20:09 +0000
Received: by outflank-mailman (input) for mailman id 625696;
 Tue, 31 Oct 2023 13: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=N8KE=GN=citrix.com=prvs=661c0debb=Andrew.Cooper3@srs-se1.protection.inumbo.net>)
 id 1qxofB-0001bo-2m
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 13:20:09 +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 32e3e4db-77f0-11ee-9b0e-b553b5be7939;
 Tue, 31 Oct 2023 14:20:05 +0100 (CET)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 32e3e4db-77f0-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1698758405;
  h=from:to:cc:subject:date:message-id:mime-version:
   content-transfer-encoding;
  bh=iq6Ef0VbOyxMfbzxYV9RIs6IsM8djngVbv9hMgg7cXk=;
  b=W/RAlETqNzwmZPi9zjSn2jhHZUGu5xF/0U7cCyW6EzTnl4FphOWNzBfn
   j505NJyHNsFNBfsxNgE1w9AgfBt+eYfeT/7f6XDoNAxAllgI6JZBUPPov
   i5wX0ccbRfEgXUAygM+JhFjc94DT+VP+6gp2w0j5G3AFJ1aTDCHvanwow
   w=;
X-CSE-ConnectionGUID: doa3TLBmT+eQnMIwQ1ipjg==
X-CSE-MsgGUID: gMz08l38RQ+NiWK4aaJ1eQ==
Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
X-SBRS: 4.0
X-MesageID: 127580571
X-Ironport-Server: esa1.hc3370-68.iphmx.com
X-Remote-IP: 162.221.159.70
X-Policy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:sOAC06IIEbYTEVGqFE+R45UlxSXFcZb7ZxGr2PjKsXjdYENS1jNWn
 WsfXjrSb/yIZ2X8KIskbonnpB8BusSBxtdlHgBlqX01Q3x08seUXt7xwmUcnc+xBpaaEB84t
 ZV2hv3odp1coqr0/0/1WlTZhSAhk/nOHvylULKs1hlZHWdMUD0mhQ9oh9k3i4tphcnRKw6Ws
 Jb5rta31GWNglaYCUpKrfrYwP9TlK6q4mhB5gdnPakjUGL2zBH5MrpOfcldEFOgKmVkNrbSb
 /rOyri/4lTY838FYj9yuu+mGqGiaue60Tmm0hK6aYD76vRxjnVaPpIAHOgdcS9qZwChxLid/
 jnvWauYEm/FNoWU8AgUvoIx/ytWZcWq85efSZSzXFD6I+QrvBIAzt03ZHzaM7H09c57BmgVy
 dgyLQxOYymFosOp+eu6Uutj05FLwMnDZOvzu1llxDDdS/0nXYrCU+PB4towMDUY354UW6yEP
 oxANGspM0yojx5nYz/7DLoXmuuyi2a5WDpfsF+P/oI84nTJzRw327/oWDbQUoXQGpgFxhvH/
 woq+Uz2JwNCZNjEmQC8sVStucyTlCrZAY8rQejQGvlC3wTImz175ActfUu2p7y1h1CzX/pbK
 lcI4Ww+oK4q7kupQ9LhGRqirxasnDQRRt5RGO0S8xyWx+zf5APxLnMfUjdLZdgitck3bT8nz
 FmEm5XuHzMHmKKRYWKQ8PGTtzzaESoIKW4PYwcUQA1D5MPsyKkTgxTVX5BcGai6ptTvHHf7x
 DXikcQlr+xN14hRjfz9pA2WxW30znTUcuIrzgnQVzmZyil8WM2oXoqNyEfitPdYLonMGzFto
 0M4d9iiAPEmVM/cxHPXG7hcR9lF9N7fbmeA3wQH840JsmT1oSD+J+i89RkkfC9U3tA4lSgFi
 aM5kShW/pZXdECyd65xbJnZ5y8ClvO4So2Nuhw5dLNzjnlNmOyvpnoGiba4hTyFraTVufhX1
 W2nWcitF20GLq9s0SC7QewQuZdymHFumzKLFc+klE76uVZ7WJJyYe5aWGZik8hgsfjayOkr2
 4032zS2J+V3D7SlP3i/HX87JlEWN3krba3LRzhsXrfbeGJOQThxY8I9NJt9I+SJaYwJzLaXl
 px8M2cEoGfCaYrvcFzTOyg4M+u+NXu9xFpiVRER0Z+T8yBLSe6SAG03LcJfkWUPnAC78cNJc
 g==
IronPort-HdrOrdr: A9a23:WI1NuqlBT1y1r8/64k6OvyRgv8HpDfLW3DAbv31ZSRFFG/Fw9/
 rCoB3U73/JYVcqKRUdcLW7UpVoLkmyyXcY2+cs1NSZLWzbUQmTXeJfBOLZqlWNJ8SXzIVgPM
 xbAspD4bPLbGSTjazBkXSF+9RL+qj6zEh/792usEuETmtRGt9dBx8SMHf9LqXvLjM2fqbQEv
 Cnl6x6jgvlQ1s7ROKhCEIIWuDSzue77q4PMXY9dmcaABDlt0LR1ILH
X-Talos-CUID: 9a23:3MtP2m/UA7K+qKIFQbGVv0ITE5sZVlfY8DTdGkmdKHlQEbyNS1DFrQ==
X-Talos-MUID: 9a23:q85KjgkUZAWgVI44HDGVdnptEdUws6D1WHo00rMHhOrYPCVSYjqk2WE=
X-IronPort-AV: E=Sophos;i="6.03,265,1694750400"; 
   d="scan'208";a="127580571"
From: Andrew Cooper <andrew.cooper3@citrix.com>
To: Xen-devel <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, George Dunlap
	<George.Dunlap@eu.citrix.com>, Jan Beulich <JBeulich@suse.com>, "Stefano
 Stabellini" <sstabellini@kernel.org>, Wei Liu <wl@xen.org>, Julien Grall
	<julien@xen.org>, =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?=
	<roger.pau@citrix.com>, Henry Wang <Henry.Wang@arm.com>
Subject: [PATCH for-4.18 0/3] CHANGELOG: More 4.18 content
Date: Tue, 31 Oct 2023 13:19:51 +0000
Message-ID: <20231031131954.3310725-1-andrew.cooper3@citrix.com>
X-Mailer: git-send-email 2.30.2
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain

Andrew Cooper (3):
  CHANGELOG: Reformat
  CHANGELOG: More 4.18 content
  CHANGELOG: Keep unstable section

 CHANGELOG.md | 44 ++++++++++++++++++++++++++++----------------
 1 file changed, 28 insertions(+), 16 deletions(-)


base-commit: 9659b2a6d73b14620e187f9c626a09323853c459
-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Tue Oct 31 13:20:11 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 13:20:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625698.975241 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxofD-0001uh-B0; Tue, 31 Oct 2023 13:20:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625698.975241; Tue, 31 Oct 2023 13: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 1qxofD-0001tf-2u; Tue, 31 Oct 2023 13:20:11 +0000
Received: by outflank-mailman (input) for mailman id 625698;
 Tue, 31 Oct 2023 13:20: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=N8KE=GN=citrix.com=prvs=661c0debb=Andrew.Cooper3@srs-se1.protection.inumbo.net>)
 id 1qxofC-0001kV-BR
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 13:20:10 +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 36064885-77f0-11ee-98d6-6d05b1d4d9a1;
 Tue, 31 Oct 2023 14:20:09 +0100 (CET)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 36064885-77f0-11ee-98d6-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1698758409;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=vPTCG/lAXBnLTf+H7ZaUloccF/gIFmPZvfjfDD5NKds=;
  b=MsXtaBQXcGHg8WIs+QhxxXWRsXVcfkehHWkhUtxIZp9TKLnLef8tnZ7U
   ty/KOPr/330LZIwAEqbewFkuVVdhiJ2z3uMUOKdKq9nnGiNOBk0GzQomP
   sDclkb027P1Nac2yZuxcG8vLkBcVvO1oc20AhM/vcVvgXEP7e+9rYbBSs
   U=;
X-CSE-ConnectionGUID: doa3TLBmT+eQnMIwQ1ipjg==
X-CSE-MsgGUID: 6BsuTsINSPK1MX1qrxrprw==
Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
X-SBRS: 4.0
X-MesageID: 127580573
X-Ironport-Server: esa1.hc3370-68.iphmx.com
X-Remote-IP: 162.221.159.70
X-Policy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:8WKcXqyiHRv8uXS7M/16t+cFxirEfRIJ4+MujC+fZmUNrF6WrkVWy
 2ceW22Cb6yNZjGge9EiPoTi/BhQvZaHnIBjTgM/qSAxQypGp/SeCIXCJC8cHc8wwu7rFxs7s
 ppEOrEsCOhuExcwcz/0auCJQUFUjPzOHvykTrecZkidfCc8IA85kxVvhuUltYBhhNm9Emult
 Mj75sbSIzdJ4RYtWo4vw/zF8EgHUMja4mtC5QVmPqkT5TcyqlFOZH4hDfDpR5fHatE88t6SH
 47r0Ly/92XFyBYhYvvNfmHTKxBirhb6ZGBiu1IOM0SQqkEqSh8ai87XAME0e0ZP4whlqvgqo
 Dl7WT5cfi9yVkHEsLx1vxC1iEiSN4UekFPMCSDXXcB+UyQq2pYjqhljJBheAGEWxgp4KW1J/
 KckDBoIUlOOvuST4a2CE+h0hMt2eaEHPKtH0p1h5TTQDPJgSpHfWaTao9Rf2V/chOgXQ6yYP
 ZBAL2MyPVKfO3WjOX9OYH46tM6uimPybHtzr1WNqLBsy2PS0BZwwP7mN9+9ltmiHJ8KwxbA+
 z2dl4j/Kk8wL8Gj0hujyUqP38r/xDrhSJgKDqLto5aGh3XMnzdOWXX6T2CTsfS/z0KzRd9bA
 0gV4TY167g/8lSxSdvwVAH+p2SL1jY+cddNF+wx6CmW17HZpQ2eAwAsVSVdYdYrsMs3Qz0C1
 VKTmd7tQzt1v9W9Vna15rqS6zSoNkA9L3IGZCICZRsI5Z/kuo5bpjLCSMxyVpG8iNLdECv1h
 TuNqUADa6471JBRkf/hpBae3mPq+cChohMJChv/UmWstT9dTouZJIGR73368s8ZLZ6bQQzU1
 JQboPRy/NziHLnUyn3dH79WQeDyjxqWGGeC2wIxRfHN4xzoqyb5I90KiN1rDB0xWvvobwMFd
 6M6Vel5z5hJNX/iVrdtYoS+EKzGJoC7Toy6D5g4gjdUC6WdlTNrHwk0PiZ8J0i3zCARfVgXY
 P93i/qEA3cAErhAxzGrXeob2rJD7nlglDONFMirkEv8i+f2iJuppVAtaQTmUwzExPrZ+1u9H
 yh3bKNmNCmzoMWhO3KKoOb/3HgBLGQhBICelvG7gtWre1I8cEl4Uq+5/F/UU9A990ijvruSr
 y7Vt44x4AaXuEAr3i3TMykyMOi0BccXQLBSFXVEAGtEEkMLOe6HhJrzvbNtJNHLKMQLISZIc
 sQ4
IronPort-HdrOrdr: A9a23:fmXKP62lRNtZZbK9AGYOWAqjBEgkLtp133Aq2lEZdPU0SKGlfg
 6V/MjztCWE7Ar5PUtLpTnuAsa9qB/nm6KdgrNhWItKPjOW21dARbsKheffKlXbcBEWndQtt5
 uIHZIeNDXxZ2IK8PoT4mODYqodKA/sytHWuQ/cpU0dMz2Dc8tbnmBE4p7wKDwMeOFBb6BJcq
 a01458iBeLX28YVci/DmltZZm4mzWa/KiWGCLvHnQcmXGzsQ8=
X-Talos-CUID: 9a23:tiJZHm27ir2lQu/FusOyArxfFscsKUH55nLsYEKBD0NIV4TMSEeS9/Yx
X-Talos-MUID: =?us-ascii?q?9a23=3A4PFUSA8AKHV1q3qadGFjw1qQf5lC+LmSE2Erqq0?=
 =?us-ascii?q?l4uy0bDVqKy2FliviFw=3D=3D?=
X-IronPort-AV: E=Sophos;i="6.03,265,1694750400"; 
   d="scan'208";a="127580573"
From: Andrew Cooper <andrew.cooper3@citrix.com>
To: Xen-devel <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, George Dunlap
	<George.Dunlap@eu.citrix.com>, Jan Beulich <JBeulich@suse.com>, "Stefano
 Stabellini" <sstabellini@kernel.org>, Wei Liu <wl@xen.org>, Julien Grall
	<julien@xen.org>, =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?=
	<roger.pau@citrix.com>, Henry Wang <Henry.Wang@arm.com>
Subject: [PATCH for-4.18 2/3] CHANGELOG: More 4.18 content
Date: Tue, 31 Oct 2023 13:19:53 +0000
Message-ID: <20231031131954.3310725-3-andrew.cooper3@citrix.com>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <20231031131954.3310725-1-andrew.cooper3@citrix.com>
References: <20231031131954.3310725-1-andrew.cooper3@citrix.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
---
CC: George Dunlap <George.Dunlap@eu.citrix.com>
CC: Jan Beulich <JBeulich@suse.com>
CC: Stefano Stabellini <sstabellini@kernel.org>
CC: Wei Liu <wl@xen.org>
CC: Julien Grall <julien@xen.org>
CC: Roger Pau Monné <roger.pau@citrix.com>
CC: Henry Wang <Henry.Wang@arm.com>
---
 CHANGELOG.md | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/CHANGELOG.md b/CHANGELOG.md
index edc0d69898ed..a827054cf27d 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -18,10 +18,17 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
 
 ### Added
  - On x86:
+   - On all Intel systems, MSR_ARCH_CAPS is now visible in guests, and
+     controllable from the VM's config file.  For CPUs from ~2019 onwards,
+     this allows guest kernels to see details about hardware fixes for
+     speculative mitigations.  (Backported as XSA-435 to older releases).
    - xl/libxl can customize SMBIOS strings for HVM guests.
    - Support for enforcing system-wide operation in Data Operand Independent
      Timing Mode.
    - Add Intel Hardware P-States (HWP) cpufreq driver.
+   - Support for features new in AMD Genoa CPUs:
+     - CPUID_USER_DIS (CPUID Faulting) used by Xen to control PV guest's view
+       of CPUID data.
    - Support for features new in Intel Sapphire Rapids CPUs:
      - PKS (Protection Key Supervisor) available to HVM/PVH guests.
      - VM-Notify used by Xen to mitigate certain micro-architectural pipeline
-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Tue Oct 31 13:20:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 13:20:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625699.975255 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxofF-0002Ns-Er; Tue, 31 Oct 2023 13:20:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625699.975255; Tue, 31 Oct 2023 13:20: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 1qxofF-0002Nj-Bv; Tue, 31 Oct 2023 13:20:13 +0000
Received: by outflank-mailman (input) for mailman id 625699;
 Tue, 31 Oct 2023 13:20: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=N8KE=GN=citrix.com=prvs=661c0debb=Andrew.Cooper3@srs-se1.protection.inumbo.net>)
 id 1qxofD-0001bo-I6
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 13:20:11 +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 361c5d0f-77f0-11ee-9b0e-b553b5be7939;
 Tue, 31 Oct 2023 14:20:09 +0100 (CET)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 361c5d0f-77f0-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1698758409;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=H+Q30HMrWjJaZC00sLj+OmZFAlKnx4f9E66ZOhOBbQQ=;
  b=CpJcJoue0UK9cPQSM3y4NHZON9Kc2SeEyYlIkpWjD2fdCl2JpMpIrDAC
   7FxwHa2G3N1C0jNbjaJ+feyVNWJVg5NGEZx5ZQGymYgO6xPE2MYqSg00s
   1BUK7XyIHVuQpmV1Hg0o0ByGC0CZxtHmLUIA6pPwUpE4iPx72aHwURjVp
   g=;
X-CSE-ConnectionGUID: 6pNHE+2jTxipSSOO/9v0tA==
X-CSE-MsgGUID: E3PqqUTuQKqVsIwXMsxBuA==
Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
X-SBRS: 4.0
X-MesageID: 127136997
X-Ironport-Server: esa3.hc3370-68.iphmx.com
X-Remote-IP: 162.221.159.70
X-Policy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:pH9dy6JWbTUWkDmaFE+R4pUlxSXFcZb7ZxGr2PjKsXjdYENShjdVz
 WAbDG2FafnfMGGgeo1yYI+z80tSsJ7WmNBhTwJlqX01Q3x08seUXt7xwmUcnc+xBpaaEB84t
 ZV2hv3odp1coqr0/0/1WlTZhSAhk/nOHvylULKs1hlZHWdMUD0mhQ9oh9k3i4tphcnRKw6Ws
 Jb5rta31GWNglaYCUpKrfrYwP9TlK6q4mhB5gdnPakjUGL2zBH5MrpOfcldEFOgKmVkNrbSb
 /rOyri/4lTY838FYj9yuu+mGqGiaue60Tmm0hK6aYD76vRxjnVaPpIAHOgdcS9qZwChxLid/
 jnvWauYEm/FNoWU8AgUvoIx/ytWZcWq85efSZSzXFD6I+QrvBIAzt03ZHzaM7H09c4pGUdu2
 L9CKgwdbwi4vMWRh+OlEvVF05FLwMnDZOvzu1llxDDdS/0nXYrCU+PB4towMDUY354UW6yEP
 oxANGspM0yojx5nYz/7DLoXmuuyi2a5WDpfsF+P/oI84nTJzRw327/oWDbQUoXQGpwOwBfJ+
 Qoq+UzUWSkDLeGj1AOm60y3p/D/uDjrcp87QejQGvlC3wTImz175ActfUu2p7y1h1CzX/pbK
 lcI4Ww+oK4q7kupQ9LhGRqirxasnDQRRt5RGO0S8xyWx+zf5APxLnMfUjdLZdgitck3bT8nz
 FmEm5XuHzMHmKKRYWKQ8PGTtzzaESoIKW4PYwcUQA1D5MPsyKkTgxTVX5BcGai6ptTvHHf7x
 DXikcQlr+xN14hRjfz9pA2WxW30znTUcuIrzlvPeEKIrVl7WJ6kf7eTzn+cvOgYMK/MGzFto
 0M4d9iiAPEmVM/cxHPXG7hcR9lF9N7fbmeA3wQH840JsmT1oSD+J+i89RkkfC9U3tA4lSgFi
 aM5kShW/pZXdECyd65xbJnZ5y8ClvO4So2Nuhw5dLNzjnlNmOyvpnoGiba4hTyFraTVufhX1
 W2nWcitF20GLq9s0SC7QewQuZdymHFumzKLFc+klE76uVZ7WJJyYe5aWGZik8hgsfjayOkr2
 4032zS2J+V3D7SlP3i/HX87JlEWN3krba3LRzhsXrfbeGJOQThxY8I9NJt9I+SJaYwJzLaXl
 px8M2cEoGfCaYrvcFzTOyg4M+u+NXu9xFpiVRER0Z+T8yBLSe6SAG03K/PboZFPGDRf8MNJ
IronPort-HdrOrdr: A9a23:Xwo54q7mEvTygqkR8gPXwP7XdLJyesId70hD6qkXc20vTiX4rb
 HXoB1/73XJYVkqOU3I5urwXpVoLUmyyXcN2/h3AV7AZniFhILLFvAH0WK4+UyYJ8SWzIc0uZ
 uIFZIOa+EYZWIQsS+Q2meF+rgboOVvoJrEuQ+dp00dKD1XVw==
X-Talos-CUID: 9a23:9g9VH2A3zE2ZAV36E3d/0m45WZonTm3c1EzrBGj/WHgxVJTAHA==
X-Talos-MUID: =?us-ascii?q?9a23=3ABQa+2Q/zDXMP0vxDR6/WHiiQf+oz2723NXwQqLY?=
 =?us-ascii?q?fhdKlKhxVICe3kR3iFw=3D=3D?=
X-IronPort-AV: E=Sophos;i="6.03,265,1694750400"; 
   d="scan'208";a="127136997"
From: Andrew Cooper <andrew.cooper3@citrix.com>
To: Xen-devel <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, George Dunlap
	<George.Dunlap@eu.citrix.com>, Jan Beulich <JBeulich@suse.com>, "Stefano
 Stabellini" <sstabellini@kernel.org>, Wei Liu <wl@xen.org>, Julien Grall
	<julien@xen.org>, =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?=
	<roger.pau@citrix.com>, Henry Wang <Henry.Wang@arm.com>
Subject: [PATCH for-4.19 3/3] CHANGELOG: Keep unstable section
Date: Tue, 31 Oct 2023 13:19:54 +0000
Message-ID: <20231031131954.3310725-4-andrew.cooper3@citrix.com>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <20231031131954.3310725-1-andrew.cooper3@citrix.com>
References: <20231031131954.3310725-1-andrew.cooper3@citrix.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
---
CC: George Dunlap <George.Dunlap@eu.citrix.com>
CC: Jan Beulich <JBeulich@suse.com>
CC: Stefano Stabellini <sstabellini@kernel.org>
CC: Wei Liu <wl@xen.org>
CC: Julien Grall <julien@xen.org>
CC: Roger Pau Monné <roger.pau@citrix.com>
CC: Henry Wang <Henry.Wang@arm.com>
---
 CHANGELOG.md | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/CHANGELOG.md b/CHANGELOG.md
index a827054cf27d..cf0c9c3f8cb9 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -4,6 +4,8 @@ Notable changes to Xen will be documented in this file.
 
 The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
 
+## [unstable UNRELEASED](https://xenbits.xenproject.org/gitweb/?p=xen.git;a=shortlog;h=staging) - TBD
+
 ## [4.18.0](https://xenbits.xenproject.org/gitweb/?p=xen.git;a=shortlog;h=RELEASE-4.18.0) - 2023-XX-XX
 
 ### Changed
-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Tue Oct 31 13:23:26 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 13:23:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625714.975272 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxoiJ-0003yV-Bi; Tue, 31 Oct 2023 13:23:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625714.975272; Tue, 31 Oct 2023 13:23: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 1qxoiJ-0003wE-6F; Tue, 31 Oct 2023 13:23:23 +0000
Received: by outflank-mailman (input) for mailman id 625714;
 Tue, 31 Oct 2023 13: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=k1/u=GN=arm.com=luca.fancellu@srs-se1.protection.inumbo.net>)
 id 1qxoiI-0003rs-95
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 13:23:22 +0000
Received: from foss.arm.com (foss.arm.com [217.140.110.172])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTP
 id a8173501-77f0-11ee-9b0e-b553b5be7939;
 Tue, 31 Oct 2023 14:23:19 +0100 (CET)
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 6EA2DDA7;
 Tue, 31 Oct 2023 06:24:00 -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 428CF3F738;
 Tue, 31 Oct 2023 06:23: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: a8173501-77f0-11ee-9b0e-b553b5be7939
From: Luca Fancellu <luca.fancellu@arm.com>
To: xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>
Subject: [RFC PATCH v2 1/8] cppcheck: rework exclusion_file_list.py code
Date: Tue, 31 Oct 2023 13:22:57 +0000
Message-Id: <20231031132304.2573924-2-luca.fancellu@arm.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20231031132304.2573924-1-luca.fancellu@arm.com>
References: <20231031132304.2573924-1-luca.fancellu@arm.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Rework the exclusion_file_list.py code to have the function
load_exclusion_file_list() detached from the xen-analysis.py tool,
in a way so that other modules can use the function.
The xen-analysis tool and in particular its module cppcheck_analysis.py
will use a new function cppcheck_exclusion_file_list().

No functional changes are intended.

Signed-off-by: Luca Fancellu <luca.fancellu@arm.com>
Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
---
 xen/scripts/xen_analysis/cppcheck_analysis.py |  6 ++--
 .../xen_analysis/exclusion_file_list.py       | 31 ++++++++++---------
 2 files changed, 19 insertions(+), 18 deletions(-)

diff --git a/xen/scripts/xen_analysis/cppcheck_analysis.py b/xen/scripts/xen_analysis/cppcheck_analysis.py
index 8dc45e653b79..e54848aa5339 100644
--- a/xen/scripts/xen_analysis/cppcheck_analysis.py
+++ b/xen/scripts/xen_analysis/cppcheck_analysis.py
@@ -2,7 +2,8 @@
 
 import os, re, shutil
 from . import settings, utils, cppcheck_report_utils, exclusion_file_list
-from .exclusion_file_list import ExclusionFileListError
+from .exclusion_file_list import (ExclusionFileListError,
+                                  cppcheck_exclusion_file_list)
 
 class GetMakeVarsPhaseError(Exception):
     pass
@@ -54,8 +55,7 @@ def __generate_suppression_list(out_file):
             try:
                 exclusion_file = \
                     "{}/docs/misra/exclude-list.json".format(settings.repo_dir)
-                exclusion_list = \
-                    exclusion_file_list.load_exclusion_file_list(exclusion_file)
+                exclusion_list = cppcheck_exclusion_file_list(exclusion_file)
             except ExclusionFileListError as e:
                 raise CppcheckDepsPhaseError(
                     "Issue with reading file {}: {}".format(exclusion_file, e)
diff --git a/xen/scripts/xen_analysis/exclusion_file_list.py b/xen/scripts/xen_analysis/exclusion_file_list.py
index 871e480586bb..79ebd34f55ec 100644
--- a/xen/scripts/xen_analysis/exclusion_file_list.py
+++ b/xen/scripts/xen_analysis/exclusion_file_list.py
@@ -7,16 +7,24 @@ class ExclusionFileListError(Exception):
     pass
 
 
-def __cppcheck_path_exclude_syntax(path):
-    # Prepending * to the relative path to match every path where the Xen
-    # codebase could be
-    path = "*" + path
+def cppcheck_exclusion_file_list(input_file):
+    ret = []
+    excl_list = load_exclusion_file_list(input_file)
+
+    for entry in excl_list:
+        # Prepending * to the relative path to match every path where the Xen
+        # codebase could be
+        ret.append("*" + entry[0])
 
-    return path
+    return ret
 
 
-# Reads the exclusion file list and returns a list of relative path to be
-# excluded.
+# Reads the exclusion file list and returns an array containing a set where the
+# first entry is what was listed in the exclusion list file, and the second
+# entry is the absolute path of the first entry.
+# If the first entry contained a wildcard '*', the second entry will have an
+# array of the solved absolute path for that entry.
+# Returns [('path',[path,path,...]), ('path',[path,path,...]), ...]
 def load_exclusion_file_list(input_file):
     ret = []
     try:
@@ -58,13 +66,6 @@ def load_exclusion_file_list(input_file):
                     .format(path, filepath_object)
                 )
 
-        if settings.analysis_tool == "cppcheck":
-            path = __cppcheck_path_exclude_syntax(path)
-        else:
-            raise ExclusionFileListError(
-                "Unimplemented for {}!".format(settings.analysis_tool)
-            )
-
-        ret.append(path)
+        ret.append((path, check_path))
 
     return ret
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Tue Oct 31 13:23:26 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 13:23:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625715.975285 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxoiK-0004MQ-Hq; Tue, 31 Oct 2023 13:23:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625715.975285; Tue, 31 Oct 2023 13: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 1qxoiK-0004MH-Dh; Tue, 31 Oct 2023 13:23:24 +0000
Received: by outflank-mailman (input) for mailman id 625715;
 Tue, 31 Oct 2023 13:23: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=k1/u=GN=arm.com=luca.fancellu@srs-se1.protection.inumbo.net>)
 id 1qxoiJ-0003rs-98
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 13:23:23 +0000
Received: from foss.arm.com (foss.arm.com [217.140.110.172])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTP
 id a8ca6b16-77f0-11ee-9b0e-b553b5be7939;
 Tue, 31 Oct 2023 14:23:20 +0100 (CET)
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 9CA01139F;
 Tue, 31 Oct 2023 06:24:01 -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 E24633F738;
 Tue, 31 Oct 2023 06:23: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: a8ca6b16-77f0-11ee-9b0e-b553b5be7939
From: Luca Fancellu <luca.fancellu@arm.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>
Subject: [RFC PATCH v2 2/8] exclude-list: generalise exclude-list
Date: Tue, 31 Oct 2023 13:22:58 +0000
Message-Id: <20231031132304.2573924-3-luca.fancellu@arm.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20231031132304.2573924-1-luca.fancellu@arm.com>
References: <20231031132304.2573924-1-luca.fancellu@arm.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Currently exclude-list.json is used by the xen-analysis tool to
remove from the report (cppcheck for now) violations from the
files listed in it, however that list can be used by different
users that might want to exclude some of the files from their
computation for many reason.

So add a new field that can be part of each entry to link
the tool supposed to consider that exclusion.

Update exclusion_file_list.py to implement the logic and update
the documentation to reflect this change.

Signed-off-by: Luca Fancellu <luca.fancellu@arm.com>
Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
---
 docs/misra/exclude-list.rst                   | 31 ++++++++++++-------
 .../xen_analysis/exclusion_file_list.py       | 16 ++++++++--
 2 files changed, 33 insertions(+), 14 deletions(-)

diff --git a/docs/misra/exclude-list.rst b/docs/misra/exclude-list.rst
index c97431a86120..42dbceb82523 100644
--- a/docs/misra/exclude-list.rst
+++ b/docs/misra/exclude-list.rst
@@ -1,17 +1,16 @@
 .. SPDX-License-Identifier: CC-BY-4.0
 
-Exclude file list for xen-analysis script
-=========================================
+Exclude file list for xen scripts
+=================================
 
-The code analysis is performed on the Xen codebase for both MISRA
-checkers and static analysis checkers, there are some files however that
-needs to be removed from the findings report for various reasons (e.g.
-they are imported from external sources, they generate too many false
-positive results, etc.).
+Different Xen scripts can perform operations on the codebase to check its
+compliance for a set of rules, however Xen contains some files that are taken
+from other projects (e.g. linux) and they can't be updated to ease backporting
+fixes from their source, for this reason the file docs/misra/exclude-list.json
+is kept as a source of all these files that are external to the Xen project.
 
-For this reason the file docs/misra/exclude-list.json is used to exclude every
-entry listed in that file from the final report.
-Currently only the cppcheck analysis will use this file.
+Every entry of the file can be linked to different checkers, so that this list
+can be used by multiple scripts selecting only the required entries.
 
 Here is an example of the exclude-list.json file::
 
@@ -20,11 +19,13 @@ Here is an example of the exclude-list.json file::
 |    "content": [
 |        {
 |            "rel_path": "relative/path/from/xen/file",
-|            "comment": "This file is originated from ..."
+|            "comment": "This file is originated from ...",
+|            "checkers": "xen-analysis"
 |        },
 |        {
 |            "rel_path": "relative/path/from/xen/folder/*",
-|            "comment": "This folder is a library"
+|            "comment": "This folder is a library",
+|            "checkers": "xen-analysis some-checker"
 |        },
 |        {
 |            "rel_path": "relative/path/from/xen/mem*.c",
@@ -39,6 +40,12 @@ Here is an explanation of the fields inside an object of the "content" array:
    match more than one file/folder at the time. This field is mandatory.
  - comment: an optional comment to explain why the file is removed from the
    analysis.
+ - checkers: an optional list of checkers that will exclude this entries from
+   their results. This field is optional and when not specified, it means every
+   checker will use that entry.
+   Current implemented values for this field are:
+    - xen-analysis: the xen-analysis.py script exclude this entry for both MISRA
+      and static analysis scan. (Implemented only for Cppcheck tool)
 
 To ease the review and the modifications of the entries, they shall be listed in
 alphabetical order referring to the rel_path field.
diff --git a/xen/scripts/xen_analysis/exclusion_file_list.py b/xen/scripts/xen_analysis/exclusion_file_list.py
index 79ebd34f55ec..8b10665a19e8 100644
--- a/xen/scripts/xen_analysis/exclusion_file_list.py
+++ b/xen/scripts/xen_analysis/exclusion_file_list.py
@@ -9,7 +9,7 @@ class ExclusionFileListError(Exception):
 
 def cppcheck_exclusion_file_list(input_file):
     ret = []
-    excl_list = load_exclusion_file_list(input_file)
+    excl_list = load_exclusion_file_list(input_file, "xen-analysis")
 
     for entry in excl_list:
         # Prepending * to the relative path to match every path where the Xen
@@ -25,7 +25,7 @@ def cppcheck_exclusion_file_list(input_file):
 # If the first entry contained a wildcard '*', the second entry will have an
 # array of the solved absolute path for that entry.
 # Returns [('path',[path,path,...]), ('path',[path,path,...]), ...]
-def load_exclusion_file_list(input_file):
+def load_exclusion_file_list(input_file, checker=""):
     ret = []
     try:
         with open(input_file, "rt") as handle:
@@ -51,6 +51,18 @@ def load_exclusion_file_list(input_file):
             raise ExclusionFileListError(
                 "Malformed JSON entry: rel_path field not found!"
             )
+        # Check the checker field
+        try:
+            entry_checkers = entry['checkers']
+        except KeyError:
+            # If the field doesn't exists, assume that this entry is for every
+            # checker
+            entry_checkers = checker
+
+        # Check if this entry is for the selected checker
+        if checker not in entry_checkers:
+            continue
+
         abs_path = settings.xen_dir + "/" + path
         check_path = [abs_path]
 
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Tue Oct 31 13:23:26 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 13:23:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625716.975291 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxoiK-0004Q1-Sb; Tue, 31 Oct 2023 13:23:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625716.975291; Tue, 31 Oct 2023 13: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 1qxoiK-0004Pi-Md; Tue, 31 Oct 2023 13:23:24 +0000
Received: by outflank-mailman (input) for mailman id 625716;
 Tue, 31 Oct 2023 13:23: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=k1/u=GN=arm.com=luca.fancellu@srs-se1.protection.inumbo.net>)
 id 1qxoiJ-0003uy-CP
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 13:23:23 +0000
Received: from foss.arm.com (foss.arm.com [217.140.110.172])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTP
 id a98d0db2-77f0-11ee-98d6-6d05b1d4d9a1;
 Tue, 31 Oct 2023 14:23:21 +0100 (CET)
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 E47991474;
 Tue, 31 Oct 2023 06:24:02 -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 1BF623F738;
 Tue, 31 Oct 2023 06:23: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: a98d0db2-77f0-11ee-98d6-6d05b1d4d9a1
From: Luca Fancellu <luca.fancellu@arm.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>
Subject: [RFC PATCH v2 3/8] [WIP]xen/scripts: add codestyle.py script
Date: Tue, 31 Oct 2023 13:22:59 +0000
Message-Id: <20231031132304.2573924-4-luca.fancellu@arm.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20231031132304.2573924-1-luca.fancellu@arm.com>
References: <20231031132304.2573924-1-luca.fancellu@arm.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

This script finds every .c and .h file in the xen hypervisor
codebase, takes the exclusion list from docs/misra, removes the
file excluded from the list and for the remaining files is
calling clang-format on them.

TBD: write it better

Signed-off-by: Luca Fancellu <luca.fancellu@arm.com>
---
 xen/scripts/codestyle.py | 265 +++++++++++++++++++++++++++++++++++++++
 1 file changed, 265 insertions(+)
 create mode 100755 xen/scripts/codestyle.py

diff --git a/xen/scripts/codestyle.py b/xen/scripts/codestyle.py
new file mode 100755
index 000000000000..ab3df66fc2e2
--- /dev/null
+++ b/xen/scripts/codestyle.py
@@ -0,0 +1,265 @@
+#!/usr/bin/env python3
+
+import glob
+import os
+import re
+import sys
+from xen_analysis.settings import xen_dir, repo_dir
+from xen_analysis import utils
+from xen_analysis import exclusion_file_list
+from xen_analysis.exclusion_file_list import ExclusionFileListError
+
+# The Xen codestyle states that labels needs to be indented by at least one
+# blank, but clang-format doesn't have an option for that and if it encounters
+# a label indented by blank characters that are less than its indent
+# configuration, it removes the indentation.
+# So this action is meant as post step and checks every label syntax match and
+# it adds one blank before the label
+def action_fix_label_indent(filename, file_lines):
+    label_rgx = re.compile('^[a-zA-Z_][a-zA-Z0-9_]*\s*:.*$')
+
+    for i in range(0, len(file_lines)):
+        if label_rgx.match(file_lines[i]):
+            file_lines[i] = ' ' + file_lines[i]
+
+    return file_lines
+
+
+# clang-format most of the time breaks the content of asm(...) instructions,
+# so with this function, we protect all the asm sections using the special
+# in code comments that tells clang-format to don't touch the block.
+# asm(...) instruction could be also inside macros, so in that case we protect
+# the entire macro that is enclosing the instruction, in the un-protect stage
+# however, we need to do clang-format's job at least on the tab-space conversion
+# and to put the backslash on the right side.
+def action_protect_asm(filename, file_lines, protect):
+    opening_asm = False
+    cf_off_comment = '/* clang-format off */'
+    cf_on_comment = '/* clang-format on */'
+    asm_stx = '(?:asm|__asm__)(?:\s(?:volatile|__volatile__))?\s?\('
+    asm_stx_close = ');'
+
+    if protect:
+        # Look for closing parenthesis with semicolon ');'
+        closing_asm_rgx_rule = rf'^.*{re.escape(asm_stx_close)}.*$'
+        # Look for opening asm syntax
+        opening_asm_rgx_rule = rf'^\s*{asm_stx}.*$'
+        macro_start_rgx_rule = r'^\s?#\s?define.*\\$'
+        opening_asm_find = rf'({asm_stx})'
+        opening_asm_replace = cf_off_comment + r'\1'
+        opening_def_find = r'#\s?define'
+        opening_def_replace = f'{cf_off_comment}#define'
+        closing_asm_find    = re.escape(asm_stx_close)
+        closing_asm_replace = asm_stx_close + cf_on_comment
+        closing_def_find    = '\n'
+        closing_def_replace = cf_on_comment + '\n'
+    else:
+        # Look for closing parenthesis with semicolon ');' and with the
+        # special clang-format comment
+        closing_asm_rgx_rule = \
+            rf'^.*{re.escape(asm_stx_close)}.*{re.escape(cf_on_comment)}.*$'
+        # Look for opening asm syntax preceded by the special clang-format
+        # comment, the comment is optional to generalise the algorithm to
+        # un-protect asm outside and inside macros. The case outside is easy
+        # because we will find '/* clang-format off */asm', instead the case
+        # inside is more tricky and we are going to find only 'asm' and then
+        # go backwards until we find '/* clang-format off */#define'
+        opening_asm_rgx_rule = \
+            rf'^\s*({re.escape(cf_off_comment)})?{asm_stx}.*$'
+        # Look for the define just before the asm invocation, here we look for
+        # '/* clang-format off */#define' or '#define', this is to handle a rare
+        # corner case where an asm invocation is inside a macro, but was not
+        # protected in the 'protect stage', because it was on the same line
+        # of the define and was not ending with backslash but it was exceeding
+        # line width so clang-format formatted anyway.
+        # It's safe because we won't change code that has no clang-format
+        # comments, but at least the tool won't complain
+        macro_start_rgx_rule = \
+            rf'^\s?(?:{re.escape(cf_off_comment)})?#\s?define.*\\$'
+        opening_asm_find = rf'({re.escape(cf_off_comment)}({asm_stx}))'
+        opening_asm_replace = r'\2'
+        opening_def_find = rf'(?:{re.escape(cf_off_comment)})?#\s?define'
+        opening_def_replace = '#define'
+        closing_asm_find \
+            = rf'{re.escape(asm_stx_close)}.*{re.escape(cf_on_comment)}'
+        closing_asm_replace = asm_stx_close
+        closing_def_find    = cf_on_comment + '\n'
+        closing_def_replace = '\n'
+
+    opening_asm_rgx = re.compile(opening_asm_rgx_rule)
+    closing_asm_rgx = re.compile(closing_asm_rgx_rule)
+    macro_start_rgx = re.compile(macro_start_rgx_rule)
+
+    i = 0
+    i_max = len(file_lines)
+    macro_begin = -1
+    while i < i_max:
+        # Keep track of the last define we found
+        if macro_start_rgx.match(file_lines[i]):
+            macro_begin = i
+        # Try to find in the current line the asm syntax opening, but don't
+        # touch asm syntax inside macros that usually have the line ended by
+        # a backslash, this is because insert stuff in them will have issues
+        # when later clang-format will format the macro itself
+        if (not opening_asm) and opening_asm_rgx.match(file_lines[i]):
+            line_before = (i > 0) and file_lines[i-1].endswith('\\\n')
+            if file_lines[i].endswith('\\\n') or line_before:
+                # This should never happen, but if it does, it means an
+                # unexpected syntax is found in the file
+                if macro_begin < 0:
+                    raise Exception("Begin of macro not found in {}\n"
+                                    "The asm invocation is on line {}"
+                                    .format(filename, i))
+
+                # asm invocation inside macro, need to protect the entire macro,
+                # macro_begin should point to this define
+                file_lines[macro_begin] = re.sub(opening_def_find,
+                                                 opening_def_replace,
+                                                 file_lines[macro_begin])
+
+                # now go to the end of the macro, it's easy as the first line
+                # without a backslash will be the end
+                for j in range(i, len(file_lines)):
+                    if not file_lines[j].endswith('\\\n'):
+                        file_lines[j] = \
+                            file_lines[j].replace(closing_def_find,
+                                                  closing_def_replace, 1)
+                        # Advance i index, as j is the last line checked
+                        i = j
+                        break
+
+                # In the un-protect stage, we need to do clang-format's job,
+                # so convert tabs to 4 spaces and for macros put the backslash
+                # at the end of the line
+                if not protect:
+                    for j in range(macro_begin, i+1):
+                        # Tab replacement
+                        file_lines[j] = file_lines[j].replace('\t', '    ')
+                        # backslash indentation
+                        line_len = len(file_lines[j])
+                        # 81 counting also the newline character
+                        if file_lines[j].endswith('\\\n') and line_len < 81:
+                            spaces = ' ' * (81 - line_len)
+                            file_lines[j] = \
+                                file_lines[j].replace('\\\n', spaces + '\\\n',
+                                                      1)
+
+                macro_begin = -1
+            else:
+                # asm invocation is not inside a macro, protect the asm syntax
+                opening_asm = True
+                file_lines[i] = re.sub(opening_asm_find, opening_asm_replace,
+                                       file_lines[i])
+
+        # Try to find in the current line the asm closing syntax, only if a
+        # previous line already found an opening asm syntax
+        if opening_asm and closing_asm_rgx.match(file_lines[i]):
+            opening_asm = False
+            file_lines[i] = re.sub(closing_asm_find, closing_asm_replace,
+                                   file_lines[i])
+
+        i += 1
+
+    # This should never happen, but if it does, it means an unexpected syntax
+    # is found in the file
+    if opening_asm:
+        raise Exception("Unbalanced asm parenthesis in {}".format(filename))
+
+    return file_lines
+
+
+# This function runs a set of actions on the passed file name, the actions needs
+# to have a specific interface: action(filename, file_lines), filename will be
+# the name of the file where the script is working, file_lines will be the
+# content of the file expressed as an array of lines in string format.
+# The action function must return this array back to the caller and every
+# possible modifications done on that
+def stage(filename, actions):
+
+    if len(actions) == 0:
+        return
+
+    try:
+        with open(filename, "rt") as infile:
+            file_lines = infile.readlines()
+    except OSError as e:
+        raise Exception("Issue with reading file {}: {}".format(filename, e))
+
+    for task in actions:
+        file_lines = task(filename, file_lines)
+
+    try:
+        with open(filename, "wt") as outfile:
+            outfile.writelines(file_lines)
+    except OSError as e:
+        raise Exception("Issue writing file {}: {}".format(filename, e))
+
+
+def main(argv):
+    # Setup actions for pre-stage and post-stage
+    pre_stage_asm_protect = \
+        lambda file, file_lines: action_protect_asm(file, file_lines, True)
+    post_stage_asm_unprotect = \
+        lambda file, file_lines: action_protect_asm(file, file_lines, False)
+    pre_stage_actions = [pre_stage_asm_protect]
+    post_stage_actions = [post_stage_asm_unprotect, action_fix_label_indent]
+
+    len_args = len(argv)
+    if len_args > 0:
+        c_files = []
+        for i in range(0, len_args):
+            if not argv[i].startswith('/'):
+                # Assume a relative path to Xen
+                abs_path = os.getcwd() + "/" + argv[i]
+                check_path = [abs_path]
+                if '*' in abs_path:
+                    check_path = glob.glob(abs_path)
+                for path in check_path:
+                    if os.path.exists(path):
+                        c_files.append(path)
+                    else:
+                        raise Exception("Malformed path {} solved from {}"
+                                        .format(path, argv[i]))
+    else:
+        # Find all files with .c and .h extension
+        c_files = utils.recursive_find_file(xen_dir, r'.*\.(?:c|h)$')
+
+    try:
+        exclusion_file = \
+                "{}/docs/misra/exclude-list.json".format(repo_dir)
+        exclusion_list = \
+                exclusion_file_list.load_exclusion_file_list(exclusion_file,
+                                                             "codestyle")
+    except ExclusionFileListError as e:
+        print("ERROR: Issue with reading file {}: {}".format(exclusion_file, e))
+        sys.exit(1)
+
+    # Transform the lists of absolute path in the second element of the
+    # exclusion_list into a plain list of absolute path to be exluded
+    excluded_c_files = [j for i in exclusion_list for j in i[1]]
+
+    file_to_format = []
+    for file in c_files:
+        add_to_list = True
+        for excl in excluded_c_files:
+            if excl in file:
+                add_to_list = False
+                break
+        if add_to_list:
+            file_to_format.append(file)
+        elif len_args > 0:
+            print("ERROR: file {} is excluded!".format(file))
+            sys.exit(1)
+
+    for file in file_to_format:
+        try:
+            stage(file, pre_stage_actions)
+            utils.invoke_command("clang-format -i {}".format(file), False,
+                                 Exception, "Error occured invoking: {}\n")
+            stage(file, post_stage_actions)
+        except Exception as e:
+            print("ERROR: {}\n".format(e))
+
+
+if __name__ == "__main__":
+    main(sys.argv[1:])
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Tue Oct 31 13:23:26 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 13:23:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625713.975264 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxoiI-0003sA-UT; Tue, 31 Oct 2023 13:23:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625713.975264; Tue, 31 Oct 2023 13: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 1qxoiI-0003s3-RW; Tue, 31 Oct 2023 13:23:22 +0000
Received: by outflank-mailman (input) for mailman id 625713;
 Tue, 31 Oct 2023 13: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=k1/u=GN=arm.com=luca.fancellu@srs-se1.protection.inumbo.net>)
 id 1qxoiH-0003rs-KZ
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 13:23:21 +0000
Received: from foss.arm.com (foss.arm.com [217.140.110.172])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTP
 id a7b8669c-77f0-11ee-9b0e-b553b5be7939;
 Tue, 31 Oct 2023 14:23:18 +0100 (CET)
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 C777DC15;
 Tue, 31 Oct 2023 06:23:59 -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 156833F738;
 Tue, 31 Oct 2023 06:23: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: a7b8669c-77f0-11ee-9b0e-b553b5be7939
From: Luca Fancellu <luca.fancellu@arm.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>
Subject: [RFC PATCH v2 0/8] clang-format for Xen
Date: Tue, 31 Oct 2023 13:22:56 +0000
Message-Id: <20231031132304.2573924-1-luca.fancellu@arm.com>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

## Introduction ################################################################

In this serie, I would like to get feedbacks on the output generated by the
configuration of clang-format, unfortunately we can't use only clang-format, but
we need to call it using a wrapper, because we need the information of what
files need to be excluded from the tool.

Another reason is that clang-format has some limitation when formatting asm()
instruction and most of the time it format them in a very ugly way or it breaks
the code for example removing spaces that were there for a reason (I don't think
it's a tool to format asm), so in the wrapper script we protect all asm()
invocation or macros where there are asm() invocation with in-code comments that
stops clang-format to act on that section:

/* clang-format off */section/* clang-format on */

I've read the past threads about the brave people who dared to try to introduce
clang-format for the xen codebase, some of them from 5 years ago, two points
were clear: 1) goto label needs to be indented and 2) do-while loops have the
braket in the same line.
While point 1) was quite a blocker, it seemd to me that point 2) was less
controversial to be changed in the Xen codestyle, so the current wrapper script
handles only the point 1 (which is easy), the point 2 can be more tricky to
handle.

## The clang-format configuration ##############################################

In my clang-format configuration I've taken inspiration from EPAM's work, then
from the configuration in Linux and finally from the clang-format manual, to try
to produce a comprehensive configuration.

Every configuration parameter has on top a comment with the description and
when it was supported, finally I've added also a [not specified] if that
behavior is not clearly specified in the Xen coding style, I've done that so
we could discuss about adding more specification in our CODING_STYLE.
Every comment can be stripped out in the final release of the file, but I think
that now they are useful for the discussion.

The minimum clang-format version for the file is 15, my ubuntu 22.04 comes with
it, we can reason if it's too high, or if we could also use the latest version
maybe shipped inside a docker image.

For every [not specified] behavior, I've tried to guess it from the codebase,
I've seen that also in that case it's not easy as there is (sometimes) low
consistency between modules, so we can discuss on every configurable.

Worth to mention, the public header are all excluded from the format tool,
because formatting them breaks the build on X86, because there are scripts for
auto-generation that don't handle the formatted headers, I didn't investigate
on it, maybe it can be added as technical debt.

So I've tried building arm32, arm64 and x86_64 with the formatted output and
they build, I've used Yocto for that.

## How to try it? ##############################################################

So how to generate everything? Just invoke the codestyle.py script without
parameter and it will format every .c and .h file in the hypervisor codebase.

./xen/scripts/codestyle.py

Optionally you can also pass one or more relative path from the folder you are
invoking the script and it will format only them.

## What I expect from this RFC #################################################

I expect feedback on the output, some agreement on what configuration to use,
and I expect to find possible blocker before working seriously on this serie,
because if there are outstanding blockers on the adoption of the tool and we
can't reach an agreement, I won't spend further time on it.

v2 changes: I've introduced a way to suppress the code formatter on certain
piece of code, currently it is implemented inside the exclude-list, but we could
do in a different list, it's not very important at this stage and I did in this
way just to save time.

Here is a link to the current serie output:
https://gitlab.com/luca.fancellu/xen-clang/-/commit/8938bf2196be66b05693a48752ebbdf363e8d8e1.patch

We could reason about the output, arrange some meetings to discuss about the
clang-format configuration if we think we could go ahead with the adoption.

Luca Fancellu (8):
  cppcheck: rework exclusion_file_list.py code
  exclude-list: generalise exclude-list
  [WIP]xen/scripts: add codestyle.py script
  exclude-list: add entries to the excluded list for codestyle
  [WIP]codestyle.py: Protect generic piece of code
  [WIP]x86/exclude-list: protect mm_type_tbl in mtrr from being
    formatted
  xen: Add clang-format configuration
  feedback from the community

 docs/misra/exclude-list.json                  | 113 +++
 docs/misra/exclude-list.rst                   |  37 +-
 xen/.clang-format                             | 693 ++++++++++++++++++
 xen/scripts/codestyle.py                      | 289 ++++++++
 xen/scripts/xen_analysis/cppcheck_analysis.py |   6 +-
 .../xen_analysis/exclusion_file_list.py       |  52 +-
 6 files changed, 1159 insertions(+), 31 deletions(-)
 create mode 100644 xen/.clang-format
 create mode 100755 xen/scripts/codestyle.py


base-commit: 9659b2a6d73b14620e187f9c626a09323853c459
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Tue Oct 31 13:23:26 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 13:23:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625718.975312 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxoiM-00050m-Rx; Tue, 31 Oct 2023 13:23:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625718.975312; Tue, 31 Oct 2023 13:23: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 1qxoiM-0004y6-KK; Tue, 31 Oct 2023 13:23:26 +0000
Received: by outflank-mailman (input) for mailman id 625718;
 Tue, 31 Oct 2023 13:23: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=k1/u=GN=arm.com=luca.fancellu@srs-se1.protection.inumbo.net>)
 id 1qxoiL-0003uy-EU
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 13:23:25 +0000
Received: from foss.arm.com (foss.arm.com [217.140.110.172])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTP
 id ab0187b6-77f0-11ee-98d6-6d05b1d4d9a1;
 Tue, 31 Oct 2023 14:23:24 +0100 (CET)
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 6F97CDA7;
 Tue, 31 Oct 2023 06:24:05 -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 9171F3F738;
 Tue, 31 Oct 2023 06:23: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: ab0187b6-77f0-11ee-98d6-6d05b1d4d9a1
From: Luca Fancellu <luca.fancellu@arm.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>
Subject: [RFC PATCH v2 5/8] [WIP]codestyle.py: Protect generic piece of code
Date: Tue, 31 Oct 2023 13:23:01 +0000
Message-Id: <20231031132304.2573924-6-luca.fancellu@arm.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20231031132304.2573924-1-luca.fancellu@arm.com>
References: <20231031132304.2573924-1-luca.fancellu@arm.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Add a way to protect generic piece of code from being formatted.

Use the exclude-list to pass also a structure to the scripts,
that structure will be used from the codestyle.py script to
understand which piece of code of which file needs to be left
with the original format.

Update exclude-list.rst documentation.

Signed-off-by: Luca Fancellu <luca.fancellu@arm.com>
---
 docs/misra/exclude-list.rst                   |  6 +-
 xen/scripts/codestyle.py                      | 96 ++++++++++++-------
 .../xen_analysis/exclusion_file_list.py       | 15 ++-
 3 files changed, 76 insertions(+), 41 deletions(-)

diff --git a/docs/misra/exclude-list.rst b/docs/misra/exclude-list.rst
index ade314100663..946f3793aad7 100644
--- a/docs/misra/exclude-list.rst
+++ b/docs/misra/exclude-list.rst
@@ -25,7 +25,8 @@ Here is an example of the exclude-list.json file::
 |        {
 |            "rel_path": "relative/path/from/xen/folder/*",
 |            "comment": "This folder is a library",
-|            "checkers": "xen-analysis some-checker"
+|            "checkers": "xen-analysis some-checker",
+|            "xen-analysis": {...}
 |        },
 |        {
 |            "rel_path": "relative/path/from/xen/mem*.c",
@@ -48,6 +49,9 @@ Here is an explanation of the fields inside an object of the "content" array:
       and static analysis scan. (Implemented only for Cppcheck tool)
     - codestyle: the codestyle.py script exclude this entry from the formatting
       tool.
+ - <checker>: an optional parameter to pass a configuration to the checker about
+   this entry. The parameter to be specified is one of the value listed for the
+   "checkers" value.
 
 To ease the review and the modifications of the entries, they shall be listed in
 alphabetical order referring to the rel_path field.
diff --git a/xen/scripts/codestyle.py b/xen/scripts/codestyle.py
index ab3df66fc2e2..92482d586f7a 100755
--- a/xen/scripts/codestyle.py
+++ b/xen/scripts/codestyle.py
@@ -36,36 +36,36 @@ def action_protect_asm(filename, file_lines, protect):
     opening_asm = False
     cf_off_comment = '/* clang-format off */'
     cf_on_comment = '/* clang-format on */'
-    asm_stx = '(?:asm|__asm__)(?:\s(?:volatile|__volatile__))?\s?\('
-    asm_stx_close = ');'
+
+    config = filename[1]["protect"]
 
     if protect:
         # Look for closing parenthesis with semicolon ');'
-        closing_asm_rgx_rule = rf'^.*{re.escape(asm_stx_close)}.*$'
+        closing_asm_rgx_rule = lambda cl_stx: rf'^.*{re.escape(cl_stx)}.*$'
         # Look for opening asm syntax
-        opening_asm_rgx_rule = rf'^\s*{asm_stx}.*$'
+        opening_asm_rgx_rule = lambda op_stx: rf'^\s*{op_stx}.*$'
         macro_start_rgx_rule = r'^\s?#\s?define.*\\$'
-        opening_asm_find = rf'({asm_stx})'
+        opening_asm_find = lambda op_stx: rf'({op_stx})'
         opening_asm_replace = cf_off_comment + r'\1'
         opening_def_find = r'#\s?define'
         opening_def_replace = f'{cf_off_comment}#define'
-        closing_asm_find    = re.escape(asm_stx_close)
-        closing_asm_replace = asm_stx_close + cf_on_comment
+        closing_asm_find    = lambda cl_stx: re.escape(cl_stx)
+        closing_asm_replace = lambda cl_stx: cl_stx + cf_on_comment
         closing_def_find    = '\n'
         closing_def_replace = cf_on_comment + '\n'
     else:
         # Look for closing parenthesis with semicolon ');' and with the
         # special clang-format comment
-        closing_asm_rgx_rule = \
-            rf'^.*{re.escape(asm_stx_close)}.*{re.escape(cf_on_comment)}.*$'
+        closing_asm_rgx_rule = lambda cl_stx: \
+            rf'^.*{re.escape(cl_stx)}.*{re.escape(cf_on_comment)}.*$'
         # Look for opening asm syntax preceded by the special clang-format
         # comment, the comment is optional to generalise the algorithm to
         # un-protect asm outside and inside macros. The case outside is easy
         # because we will find '/* clang-format off */asm', instead the case
         # inside is more tricky and we are going to find only 'asm' and then
         # go backwards until we find '/* clang-format off */#define'
-        opening_asm_rgx_rule = \
-            rf'^\s*({re.escape(cf_off_comment)})?{asm_stx}.*$'
+        opening_asm_rgx_rule = lambda op_stx: \
+            rf'^\s*({re.escape(cf_off_comment)})?{op_stx}.*$'
         # Look for the define just before the asm invocation, here we look for
         # '/* clang-format off */#define' or '#define', this is to handle a rare
         # corner case where an asm invocation is inside a macro, but was not
@@ -76,24 +76,27 @@ def action_protect_asm(filename, file_lines, protect):
         # comments, but at least the tool won't complain
         macro_start_rgx_rule = \
             rf'^\s?(?:{re.escape(cf_off_comment)})?#\s?define.*\\$'
-        opening_asm_find = rf'({re.escape(cf_off_comment)}({asm_stx}))'
+        opening_asm_find = \
+            lambda op_stx: rf'({re.escape(cf_off_comment)}({op_stx}))'
         opening_asm_replace = r'\2'
         opening_def_find = rf'(?:{re.escape(cf_off_comment)})?#\s?define'
         opening_def_replace = '#define'
-        closing_asm_find \
-            = rf'{re.escape(asm_stx_close)}.*{re.escape(cf_on_comment)}'
-        closing_asm_replace = asm_stx_close
+        closing_asm_find = lambda cl_stx: \
+            rf'{re.escape(cl_stx)}.*{re.escape(cf_on_comment)}'
+        closing_asm_replace = lambda cl_stx: cl_stx
         closing_def_find    = cf_on_comment + '\n'
         closing_def_replace = '\n'
 
-    opening_asm_rgx = re.compile(opening_asm_rgx_rule)
-    closing_asm_rgx = re.compile(closing_asm_rgx_rule)
+    closing_asm_rgx = None
     macro_start_rgx = re.compile(macro_start_rgx_rule)
+    regx_open = ""
+    regx_close = ""
 
     i = 0
     i_max = len(file_lines)
     macro_begin = -1
     while i < i_max:
+        opening_match = False
         # Keep track of the last define we found
         if macro_start_rgx.match(file_lines[i]):
             macro_begin = i
@@ -101,7 +104,17 @@ def action_protect_asm(filename, file_lines, protect):
         # touch asm syntax inside macros that usually have the line ended by
         # a backslash, this is because insert stuff in them will have issues
         # when later clang-format will format the macro itself
-        if (not opening_asm) and opening_asm_rgx.match(file_lines[i]):
+        if (not opening_asm):
+            for elem in config:
+                regx_open = elem["syntax_opening"]
+                if re.match(opening_asm_rgx_rule(regx_open), file_lines[i]):
+                    regx_close = elem["syntax_closing"]
+                    closing_asm_rgx = \
+                        re.compile(closing_asm_rgx_rule(regx_close))
+                    opening_match = True
+                    break
+
+        if (not opening_asm) and opening_match:
             line_before = (i > 0) and file_lines[i-1].endswith('\\\n')
             if file_lines[i].endswith('\\\n') or line_before:
                 # This should never happen, but if it does, it means an
@@ -109,7 +122,7 @@ def action_protect_asm(filename, file_lines, protect):
                 if macro_begin < 0:
                     raise Exception("Begin of macro not found in {}\n"
                                     "The asm invocation is on line {}"
-                                    .format(filename, i))
+                                    .format(filename[0], i))
 
                 # asm invocation inside macro, need to protect the entire macro,
                 # macro_begin should point to this define
@@ -148,14 +161,15 @@ def action_protect_asm(filename, file_lines, protect):
             else:
                 # asm invocation is not inside a macro, protect the asm syntax
                 opening_asm = True
-                file_lines[i] = re.sub(opening_asm_find, opening_asm_replace,
-                                       file_lines[i])
+                file_lines[i] = re.sub(opening_asm_find(regx_open),
+                                       opening_asm_replace, file_lines[i])
 
         # Try to find in the current line the asm closing syntax, only if a
         # previous line already found an opening asm syntax
         if opening_asm and closing_asm_rgx.match(file_lines[i]):
             opening_asm = False
-            file_lines[i] = re.sub(closing_asm_find, closing_asm_replace,
+            file_lines[i] = re.sub(closing_asm_find(regx_close),
+                                   closing_asm_replace(regx_close),
                                    file_lines[i])
 
         i += 1
@@ -163,7 +177,7 @@ def action_protect_asm(filename, file_lines, protect):
     # This should never happen, but if it does, it means an unexpected syntax
     # is found in the file
     if opening_asm:
-        raise Exception("Unbalanced asm parenthesis in {}".format(filename))
+        raise Exception("Unbalanced asm parenthesis in {}".format(filename[0]))
 
     return file_lines
 
@@ -180,19 +194,19 @@ def stage(filename, actions):
         return
 
     try:
-        with open(filename, "rt") as infile:
+        with open(filename[0], "rt") as infile:
             file_lines = infile.readlines()
     except OSError as e:
-        raise Exception("Issue with reading file {}: {}".format(filename, e))
+        raise Exception("Issue with reading file {}: {}".format(filename[0], e))
 
     for task in actions:
         file_lines = task(filename, file_lines)
 
     try:
-        with open(filename, "wt") as outfile:
+        with open(filename[0], "wt") as outfile:
             outfile.writelines(file_lines)
     except OSError as e:
-        raise Exception("Issue writing file {}: {}".format(filename, e))
+        raise Exception("Issue writing file {}: {}".format(filename[0], e))
 
 
 def main(argv):
@@ -236,27 +250,37 @@ def main(argv):
 
     # Transform the lists of absolute path in the second element of the
     # exclusion_list into a plain list of absolute path to be exluded
-    excluded_c_files = [j for i in exclusion_list for j in i[1]]
+    excluded_c_files = [(j, i[2]) for i in exclusion_list for j in i[1]]
 
     file_to_format = []
+    default_config = {
+        "syntax_opening": "(?:asm|__asm__)(?:\s(?:volatile|__volatile__))?\s?\(",
+        "syntax_closing": ");"
+    }
     for file in c_files:
         add_to_list = True
+        cfg = {"protect": [default_config]}
         for excl in excluded_c_files:
-            if excl in file:
-                add_to_list = False
+            if excl[0] in file:
+                if excl[1] is not None and "protect" in excl[1]:
+                    excl[1]["protect"].append(default_config)
+                    cfg = excl[1]
+                else:
+                    add_to_list = False
                 break
         if add_to_list:
-            file_to_format.append(file)
+            file_to_format.append((file, cfg))
         elif len_args > 0:
             print("ERROR: file {} is excluded!".format(file))
             sys.exit(1)
 
-    for file in file_to_format:
+    for file_entry in file_to_format:
         try:
-            stage(file, pre_stage_actions)
-            utils.invoke_command("clang-format -i {}".format(file), False,
-                                 Exception, "Error occured invoking: {}\n")
-            stage(file, post_stage_actions)
+            stage(file_entry, pre_stage_actions)
+            utils.invoke_command("clang-format -i {}".format(file_entry[0]),
+                                 False, Exception,
+                                 "Error occured invoking: {}\n")
+            stage(file_entry, post_stage_actions)
         except Exception as e:
             print("ERROR: {}\n".format(e))
 
diff --git a/xen/scripts/xen_analysis/exclusion_file_list.py b/xen/scripts/xen_analysis/exclusion_file_list.py
index 8b10665a19e8..340c25f876fd 100644
--- a/xen/scripts/xen_analysis/exclusion_file_list.py
+++ b/xen/scripts/xen_analysis/exclusion_file_list.py
@@ -20,11 +20,12 @@ def cppcheck_exclusion_file_list(input_file):
 
 
 # Reads the exclusion file list and returns an array containing a set where the
-# first entry is what was listed in the exclusion list file, and the second
-# entry is the absolute path of the first entry.
+# first entry is what was listed in the exclusion list file, the second
+# entry is the absolute path of the first entry, the third entry is a checker
+# specific configuration if provided otherwise it will be None.
 # If the first entry contained a wildcard '*', the second entry will have an
 # array of the solved absolute path for that entry.
-# Returns [('path',[path,path,...]), ('path',[path,path,...]), ...]
+# Returns [('path',[path,path,...],<obj>), ('path',[path,path,...],<obj>), ...]
 def load_exclusion_file_list(input_file, checker=""):
     ret = []
     try:
@@ -63,6 +64,12 @@ def load_exclusion_file_list(input_file, checker=""):
         if checker not in entry_checkers:
             continue
 
+        # Get checker specific configuration if any
+        try:
+            checker_config = entry[checker] if checker != "" else None
+        except KeyError:
+            checker_config = None
+
         abs_path = settings.xen_dir + "/" + path
         check_path = [abs_path]
 
@@ -78,6 +85,6 @@ def load_exclusion_file_list(input_file, checker=""):
                     .format(path, filepath_object)
                 )
 
-        ret.append((path, check_path))
+        ret.append((path, check_path, checker_config))
 
     return ret
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Tue Oct 31 13:23:26 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 13:23:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625717.975305 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxoiM-0004sZ-6R; Tue, 31 Oct 2023 13:23:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625717.975305; Tue, 31 Oct 2023 13:23: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 1qxoiM-0004sQ-2L; Tue, 31 Oct 2023 13:23:26 +0000
Received: by outflank-mailman (input) for mailman id 625717;
 Tue, 31 Oct 2023 13:23: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=k1/u=GN=arm.com=luca.fancellu@srs-se1.protection.inumbo.net>)
 id 1qxoiK-0003uy-1p
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 13:23:24 +0000
Received: from foss.arm.com (foss.arm.com [217.140.110.172])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTP
 id aa35b860-77f0-11ee-98d6-6d05b1d4d9a1;
 Tue, 31 Oct 2023 14:23:22 +0100 (CET)
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 1DC94C15;
 Tue, 31 Oct 2023 06:24:04 -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 639AB3F738;
 Tue, 31 Oct 2023 06:23: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: aa35b860-77f0-11ee-98d6-6d05b1d4d9a1
From: Luca Fancellu <luca.fancellu@arm.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>
Subject: [RFC PATCH v2 4/8] exclude-list: add entries to the excluded list for codestyle
Date: Tue, 31 Oct 2023 13:23:00 +0000
Message-Id: <20231031132304.2573924-5-luca.fancellu@arm.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20231031132304.2573924-1-luca.fancellu@arm.com>
References: <20231031132304.2573924-1-luca.fancellu@arm.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Add entries to the exclusion list, so that they can be excluded
from the formatting tool.

Signed-off-by: Luca Fancellu <luca.fancellu@arm.com>
---
 docs/misra/exclude-list.json | 100 +++++++++++++++++++++++++++++++++++
 docs/misra/exclude-list.rst  |   2 +
 2 files changed, 102 insertions(+)

diff --git a/docs/misra/exclude-list.json b/docs/misra/exclude-list.json
index 575ed22a7f67..d48dcf3ac971 100644
--- a/docs/misra/exclude-list.json
+++ b/docs/misra/exclude-list.json
@@ -1,6 +1,11 @@
 {
     "version": "1.0",
     "content": [
+        {
+            "rel_path": "arch/arm/arm32/lib/assembler.h",
+            "comment": "Includes mostly assembly macro and it's meant to be included only in assembly code",
+            "checkers": "codestyle"
+        },
         {
             "rel_path": "arch/arm/arm64/cpufeature.c",
             "comment": "Imported from Linux, ignore for now"
@@ -13,6 +18,31 @@
             "rel_path": "arch/arm/arm64/lib/find_next_bit.c",
             "comment": "Imported from Linux, ignore for now"
         },
+        {
+            "rel_path": "arch/arm/include/asm/arm32/macros.h",
+            "comment": "Includes only assembly macro",
+            "checkers": "codestyle"
+        },
+        {
+            "rel_path": "arch/arm/include/asm/arm64/macros.h",
+            "comment": "Includes only assembly macro",
+            "checkers": "codestyle"
+        },
+        {
+            "rel_path": "arch/arm/include/asm/alternative.h",
+            "comment": "Imported from Linux, ignore for now",
+            "checkers": "codestyle"
+        },
+        {
+            "rel_path": "arch/arm/include/asm/asm_defns.h",
+            "comment": "Includes mostly assembly macro",
+            "checkers": "codestyle"
+        },
+        {
+            "rel_path": "arch/arm/include/asm/macros.h",
+            "comment": "Includes mostly assembly macro and it's meant to be included only in assembly code",
+            "checkers": "codestyle"
+        },
         {
             "rel_path": "arch/x86/acpi/boot.c",
             "comment": "Imported from Linux, ignore for now"
@@ -69,6 +99,36 @@
             "rel_path": "arch/x86/cpu/mwait-idle.c",
             "comment": "Imported from Linux, ignore for now"
         },
+        {
+            "rel_path": "arch/x86/include/asm/alternative-asm.h",
+            "comment": "Includes mostly assembly macro and it's meant to be included only in assembly code",
+            "checkers": "codestyle"
+        },
+        {
+            "rel_path": "arch/x86/include/asm/asm_defns.h",
+            "comment": "Includes mostly assembly macro",
+            "checkers": "codestyle"
+        },
+        {
+            "rel_path": "arch/x86/include/asm/asm-defns.h",
+            "comment": "Includes mostly assembly macro",
+            "checkers": "codestyle"
+        },
+        {
+            "rel_path": "arch/x86/include/asm/bug.h",
+            "comment": "Includes mostly assembly macro",
+            "checkers": "codestyle"
+        },
+        {
+            "rel_path": "arch/x86/include/asm/mpspec.h",
+            "comment": "Imported from Linux, also designated initializers ranges are not handled very well by clang-format, ignore for now",
+            "checkers": "codestyle"
+        },
+        {
+            "rel_path": "arch/x86/include/asm/spec_ctrl_asm.h",
+            "comment": "Includes mostly assembly macro",
+            "checkers": "codestyle"
+        },
         {
             "rel_path": "arch/x86/delay.c",
             "comment": "Imported from Linux, ignore for now"
@@ -189,10 +249,45 @@
             "rel_path": "include/acpi/acpixf.h",
             "comment": "Imported from Linux, ignore for now"
         },
+        {
+            "rel_path": "include/efi/*.h",
+            "comment": "Imported from gnu-efi-3.0k, prefer their formatting",
+            "checkers": "codestyle"
+        },
+        {
+            "rel_path": "include/public/arch-x86/cpufeatureset.h",
+            "comment": "This file contains some inputs for the gen-cpuid.py script, leave it out",
+            "checkers": "codestyle"
+        },
+        {
+            "rel_path": "include/public/*",
+            "comment": "Public headers are quite sensitive to format tools",
+            "checkers": "codestyle"
+        },
         {
             "rel_path": "include/xen/acpi.h",
             "comment": "Imported from Linux, ignore for now"
         },
+        {
+            "rel_path": "include/xen/cper.h",
+            "comment": "Header does not follow Xen coding style",
+            "checkers": "codestyle"
+        },
+        {
+            "rel_path": "include/xen/nodemask.h",
+            "comment": "Imported from Linux, also designated initializers ranges are not handled by clang-format, ignore for now",
+            "checkers": "codestyle"
+        },
+        {
+            "rel_path": "include/xen/xen.lds.h",
+            "comment": "This file contains only macros used inside the linker script",
+            "checkers": "codestyle"
+        },
+        {
+            "rel_path": "include/hypercall-defs.c",
+            "comment": "This file contains only C preprocessing syntax, the other lines are not C and are used to generate the hypercall definition by another script.",
+            "checkers": "codestyle"
+        },
         {
             "rel_path": "lib/list-sort.c",
             "comment": "Imported from Linux, ignore for now"
@@ -205,6 +300,11 @@
             "rel_path": "lib/xxhash*.c",
             "comment": "Imported from Linux, ignore for now"
         },
+        {
+            "rel_path": "tools/*",
+            "comment": "Contains host tools imported from Linux, ignore for now",
+            "checkers": "codestyle"
+        },
         {
             "rel_path": "xsm/flask/*",
             "comment": "Not in scope initially as it generates many violations and it is not enabled in safety configurations"
diff --git a/docs/misra/exclude-list.rst b/docs/misra/exclude-list.rst
index 42dbceb82523..ade314100663 100644
--- a/docs/misra/exclude-list.rst
+++ b/docs/misra/exclude-list.rst
@@ -46,6 +46,8 @@ Here is an explanation of the fields inside an object of the "content" array:
    Current implemented values for this field are:
     - xen-analysis: the xen-analysis.py script exclude this entry for both MISRA
       and static analysis scan. (Implemented only for Cppcheck tool)
+    - codestyle: the codestyle.py script exclude this entry from the formatting
+      tool.
 
 To ease the review and the modifications of the entries, they shall be listed in
 alphabetical order referring to the rel_path field.
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Tue Oct 31 13:23:28 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 13:23:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625719.975324 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxoiO-0005OW-3q; Tue, 31 Oct 2023 13:23:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625719.975324; Tue, 31 Oct 2023 13:23: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 1qxoiN-0005Nf-Vv; Tue, 31 Oct 2023 13:23:27 +0000
Received: by outflank-mailman (input) for mailman id 625719;
 Tue, 31 Oct 2023 13:23: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=k1/u=GN=arm.com=luca.fancellu@srs-se1.protection.inumbo.net>)
 id 1qxoiM-0003uy-5o
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 13:23:26 +0000
Received: from foss.arm.com (foss.arm.com [217.140.110.172])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTP
 id ab9b930d-77f0-11ee-98d6-6d05b1d4d9a1;
 Tue, 31 Oct 2023 14:23:25 +0100 (CET)
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 7958A139F;
 Tue, 31 Oct 2023 06:24:06 -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 BF1343F738;
 Tue, 31 Oct 2023 06:23: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: ab9b930d-77f0-11ee-98d6-6d05b1d4d9a1
From: Luca Fancellu <luca.fancellu@arm.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>
Subject: [RFC PATCH v2 6/8] [WIP]x86/exclude-list: protect mm_type_tbl in mtrr from being formatted
Date: Tue, 31 Oct 2023 13:23:02 +0000
Message-Id: <20231031132304.2573924-7-luca.fancellu@arm.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20231031132304.2573924-1-luca.fancellu@arm.com>
References: <20231031132304.2573924-1-luca.fancellu@arm.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The array mm_type_tbl initialization is formatted in a way that
the formatting tool can't keep, so disable the formatting on that
array initialization.

Signed-off-by: Luca Fancellu <luca.fancellu@arm.com>
---
 docs/misra/exclude-list.json | 13 +++++++++++++
 1 file changed, 13 insertions(+)

diff --git a/docs/misra/exclude-list.json b/docs/misra/exclude-list.json
index d48dcf3ac971..b8976bc671a4 100644
--- a/docs/misra/exclude-list.json
+++ b/docs/misra/exclude-list.json
@@ -99,6 +99,19 @@
             "rel_path": "arch/x86/cpu/mwait-idle.c",
             "comment": "Imported from Linux, ignore for now"
         },
+        {
+            "rel_path": "arch/x86/hvm/mtrr.c",
+            "comment": "Contains structure formatted in a particular way",
+            "checkers": "codestyle",
+            "codestyle": {
+                "protect": [
+                    {
+                        "syntax_opening": "static const uint8_t mm_type_tbl",
+                        "syntax_closing": "};"
+                    }
+                ]
+            }
+        },
         {
             "rel_path": "arch/x86/include/asm/alternative-asm.h",
             "comment": "Includes mostly assembly macro and it's meant to be included only in assembly code",
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Tue Oct 31 13:23:30 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 13:23:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625720.975335 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxoiQ-0005mp-FC; Tue, 31 Oct 2023 13:23:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625720.975335; Tue, 31 Oct 2023 13:23: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 1qxoiQ-0005mL-9x; Tue, 31 Oct 2023 13:23:30 +0000
Received: by outflank-mailman (input) for mailman id 625720;
 Tue, 31 Oct 2023 13:23: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=k1/u=GN=arm.com=luca.fancellu@srs-se1.protection.inumbo.net>)
 id 1qxoiO-0003rs-TU
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 13:23:29 +0000
Received: from foss.arm.com (foss.arm.com [217.140.110.172])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTP
 id ac52eaf9-77f0-11ee-9b0e-b553b5be7939;
 Tue, 31 Oct 2023 14:23:26 +0100 (CET)
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 C213C1474;
 Tue, 31 Oct 2023 06:24:07 -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 ED7BF3F738;
 Tue, 31 Oct 2023 06: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: ac52eaf9-77f0-11ee-9b0e-b553b5be7939
From: Luca Fancellu <luca.fancellu@arm.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>
Subject: [RFC PATCH v2 7/8] xen: Add clang-format configuration
Date: Tue, 31 Oct 2023 13:23:03 +0000
Message-Id: <20231031132304.2573924-8-luca.fancellu@arm.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20231031132304.2573924-1-luca.fancellu@arm.com>
References: <20231031132304.2573924-1-luca.fancellu@arm.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Add a clang format configuration for the Xen Hypervisor.

Signed-off-by: Luca Fancellu <luca.fancellu@arm.com>
---
 xen/.clang-format | 693 ++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 693 insertions(+)
 create mode 100644 xen/.clang-format

diff --git a/xen/.clang-format b/xen/.clang-format
new file mode 100644
index 000000000000..7880709fe1fd
--- /dev/null
+++ b/xen/.clang-format
@@ -0,0 +1,693 @@
+# SPDX-License-Identifier: GPL-2.0-only
+#
+# clang-format configuration file. Intended for clang-format >= 15.
+#
+# For more information, see:
+#
+#   Documentation/process/clang-format.rst
+#   https://clang.llvm.org/docs/ClangFormat.html
+#   https://clang.llvm.org/docs/ClangFormatStyleOptions.html
+#
+---
+
+# [not specified]
+# Align function parameter that goes into a new line, under the open bracket
+# (supported in clang-format 3.8)
+AlignAfterOpenBracket: Align
+
+# [not specified]
+# Align array of struct's elements by column and justify
+# struct test demo[] =
+# {
+#     {56, 23,    "hello"},
+#     {-1, 93463, "world"},
+#     {7,  5,     "!!"   }
+# };
+# (supported in clang-format 13)
+AlignArrayOfStructures: Left
+
+# [not specified]
+# Align consecutive assignments (supported in clang-format 3.8)
+AlignConsecutiveAssignments:
+  Enabled: true
+  AcrossEmptyLines: true
+  AcrossComments: false
+
+# [not specified]
+# Do not align consecutive bit fields (supported in clang-format 11)
+AlignConsecutiveBitFields: None
+
+# [not specified]
+# Do not align values of consecutive declarations
+# (supported in clang-format 3.8)
+AlignConsecutiveDeclarations: None
+
+# [not specified]
+# Align values of consecutive macros (supported in clang-format 9)
+AlignConsecutiveMacros:
+  Enabled: true
+  AcrossEmptyLines: true
+  AcrossComments: true
+
+# [not specified]
+# Align escaped newlines to the right (supported in clang-format 5)
+AlignEscapedNewlines: Right
+
+# [not specified]
+# Aligns operands of a single expression that needs to be split over multiple
+# lines (supported in clang-format 3.5)
+AlignOperands: Align
+
+# Do not align trailing consecutive comments (It helps to make clang-format
+# reproduce the same output when it runs on an already formatted file)
+# (supported in clang-format 3.7)
+AlignTrailingComments: false
+
+# [not specified]
+# Do not put all function call arguments on a new line, try to have at least
+# the first one close to the opening parenthesis (supported in clang-format 9)
+AllowAllArgumentsOnNextLine: false
+
+# [not specified]
+# Do not put all function declaration parameters on a new line, try to have at
+# least the first one close to the opening parenthesis
+# (supported in clang-format 3.3)
+AllowAllParametersOfDeclarationOnNextLine: false
+
+# Bracing condition needs to be respected even if the line is so short that the
+# final block brace can stay on a single line
+# (supported in clang-format 3.5)
+AllowShortBlocksOnASingleLine: Never
+
+# (supported in clang-format 3.6)
+AllowShortCaseLabelsOnASingleLine: false
+
+# (supported in clang-format 3.5)
+AllowShortFunctionsOnASingleLine: None
+
+# (supported in clang-format 3.3)
+AllowShortIfStatementsOnASingleLine: Never
+
+# (supported in clang-format 3.7)
+AllowShortLoopsOnASingleLine: false
+
+# [not specified]
+# Do not add a break after the definition return type
+# (supported in clang-format 3.8)
+AlwaysBreakAfterReturnType: None
+
+# [not specified]
+# There is no need to use a break after an assigment to a multiline string
+# (supported in clang-format 3.4)
+AlwaysBreakBeforeMultilineStrings: false
+
+# (supported in clang-format 3.4)
+AlwaysBreakTemplateDeclarations: false
+
+# Specify Xen's macro attributes (supported in clang-format 12)
+AttributeMacros:
+  - '__init'
+  - '__exit'
+  - '__initdata'
+  - '__initconst'
+  - '__initconstrel'
+  - '__initdata_cf_clobber'
+  - '__initconst_cf_clobber'
+  - '__hwdom_init'
+  - '__hwdom_initdata'
+  - '__maybe_unused'
+  - '__packed'
+  - '__stdcall'
+  - '__vfp_aligned'
+  - '__alt_call_maybe_initdata'
+  - '__cacheline_aligned'
+  - '__ro_after_init'
+  - 'always_inline'
+  - 'noinline'
+  - 'noreturn'
+  - '__weak'
+  - '__inline__'
+  - '__attribute_const__'
+  - '__transparent__'
+  - '__used'
+  - '__must_check'
+  - '__kprobes'
+
+# [not specified]
+# Try always to pack function call arguments on the same line before breaking
+# (supported in clang-format 3.7)
+BinPackArguments: true
+
+# [not specified]
+# Try always to pack function declaration parameters on the same line before
+# breaking (supported in clang-format 3.7)
+BinPackParameters: true
+
+# [not specified]
+# Do not add a spaces on bitfield 'unsigned bf:2;'
+# (supported in clang-format 12)
+BitFieldColonSpacing: None
+
+# Xen's coding style does not follow clang-format already available profiles for
+# breaking before braces, so set it to Custom and specify each case separately
+# (supported in clang-format 3.8)
+BraceWrapping:
+  # Braces ('{' and '}') are usually placed on a line of their own
+  AfterCaseLabel: true
+  AfterFunction: true
+  BeforeElse: true
+  AfterExternBlock: true
+  # except for the opening brace in definitions of enum, struct, and union
+  AfterEnum: false
+  AfterStruct: false
+  AfterUnion: false
+  # This is unlike the Linux coding style and unlike K&R.
+  #
+  # if ( condition )
+  # {
+  #     /* Do stuff. */
+  # }
+  # else
+  # {
+  #     /* Other stuff. */
+  # }
+  #
+  # while ( condition )
+  # {
+  #     /* Do stuff. */
+  # }
+  #
+  # [non-compliant]
+  # do-while is not compliant with CODING_STYLE because clang format doesn't
+  # support different styles for every control statement
+  # do
+  # {
+  #     /* Do stuff. */
+  # } while ( condition );
+  AfterControlStatement: Always
+  BeforeWhile: false
+  IndentBraces: false
+  # [not specified]
+  # Keep empty functions with braces style like this: 'void func() {}' instead
+  # of breaking the braces
+  SplitEmptyFunction: false
+  # Not related to C language, but specified for completeness
+  AfterClass: false
+  AfterNamespace: false
+  AfterObjCDeclaration: false
+  BeforeCatch: false
+  BeforeLambdaBody: false
+  SplitEmptyRecord: true
+  SplitEmptyNamespace: true
+
+# [not specified]
+# Break only after the operator in case of a long expression
+# (supported in clang-format 3.6)
+BreakBeforeBinaryOperators: None
+
+# Xen's coding style does not follow clang-format already available profiles for
+# breaking before braces, so set it to Custom and specify each case separately
+# (supported in clang-format 3.7)
+BreakBeforeBraces: Custom
+
+# [not specified]
+# Break before inline ASM colon if the line length is longer than column limit.
+# (This is a new feature upstreamed by EPAM during its work on clang-format for
+# Xen)
+# (supported in clang-format 16)
+# BreakBeforeInlineASMColon: OnlyMultiline
+
+# [not specified]
+# Ternary operators '?, :' can be put after a line break
+# (supported in clang-format 3.7)
+BreakBeforeTernaryOperators: true
+
+# (supported in clang-format 5)
+BreakConstructorInitializers: BeforeComma
+
+# User visible strings (e.g., printk() messages) should not be split so they can
+# be searched for more easily. (supported in clang-format 3.9)
+BreakStringLiterals: false
+
+# Lines should be less than 80 characters in length
+# (supported in clang-format 3.7)
+ColumnLimit: 80
+
+# (supported in clang-format 3.7)
+CommentPragmas: '^ IWYU pragma:'
+
+# Code within blocks is indented by one extra indent level
+# (supported in clang-format 3.7)
+ContinuationIndentWidth: 4
+
+# Do not derive pointer alignment style from the file
+# (supported in clang-format 3.7)
+DerivePointerAlignment: false
+
+# Taken from:
+# git grep -h -i '^#define [^[:space:]]*for_each[^[:space:]]*(' xen/ \
+# | sed "s,^#define \([^[:space:]]*for_each[^[:space:]]*\)(.*$,  - '\1',i" \
+# | LC_ALL=C sort -u
+# A vector of macros that should be interpreted as foreach loops instead of as
+# function calls.
+# (supported in clang-format 3.7)
+ForEachMacros:
+  - 'FOR_EACH_IOREQ_SERVER'
+  - '__list_for_each_rcu'
+  - 'dt_for_each_child_node'
+  - 'dt_for_each_device_node'
+  - 'dt_for_each_property_node'
+  - 'ebitmap_for_each_positive_bit'
+  - 'expr_list_for_each_sym'
+  - 'fdt_for_each_property_offset'
+  - 'fdt_for_each_subnode'
+  - 'for_each_affinity_balance_step'
+  - 'for_each_amd_iommu'
+  - 'for_each_cfg_sme'
+  - 'for_each_cpu'
+  - 'for_each_domain'
+  - 'for_each_domain_in_cpupool'
+  - 'for_each_drhd_unit'
+  - 'for_each_kimage_entry'
+  - 'for_each_node_mask'
+  - 'for_each_online_cpu'
+  - 'for_each_online_node'
+  - 'for_each_pdev'
+  - 'for_each_possible_cpu'
+  - 'for_each_present_cpu'
+  - 'for_each_rmrr_device'
+  - 'for_each_sched_unit'
+  - 'for_each_sched_unit_vcpu'
+  - 'for_each_set_bit'
+  - 'for_each_vcpu'
+  - 'for_each_vp'
+  - 'hlist_for_each'
+  - 'hlist_for_each_entry'
+  - 'hlist_for_each_entry_continue'
+  - 'hlist_for_each_entry_from'
+  - 'hlist_for_each_entry_rcu'
+  - 'hlist_for_each_entry_safe'
+  - 'hlist_for_each_safe'
+  - 'list_for_each'
+  - 'list_for_each_backwards_safe'
+  - 'list_for_each_continue_rcu'
+  - 'list_for_each_entry'
+  - 'list_for_each_entry_continue'
+  - 'list_for_each_entry_from'
+  - 'list_for_each_entry_rcu'
+  - 'list_for_each_entry_reverse'
+  - 'list_for_each_entry_safe'
+  - 'list_for_each_entry_safe_continue'
+  - 'list_for_each_entry_safe_from'
+  - 'list_for_each_entry_safe_reverse'
+  - 'list_for_each_prev'
+  - 'list_for_each_rcu'
+  - 'list_for_each_safe'
+  - 'list_for_each_safe_rcu'
+  - 'page_list_for_each'
+  - 'page_list_for_each_safe'
+  - 'page_list_for_each_safe_reverse'
+
+# A vector of macros that should be interpreted as conditionals instead of as
+# function calls. (supported in clang-format 13)
+#IfMacros:
+#  - ''
+
+# Sort include files by block of includes and not as only one group
+# (supported in clang-format 6)
+IncludeBlocks: Preserve
+
+# [not specified]
+# Regular expressions denoting the different #include categories used for
+# ordering #includes. (supported in clang-format 3.8)
+#IncludeCategories:
+#  - Regex: '.*'
+#    Priority: 1
+
+# When guessing whether a #include is the “main” include (to assign category 0,
+# see above), use this regex of allowed suffixes to the header stem. A partial
+# match is done, so that: - “” means “arbitrary suffix” - “$” means “no suffix”
+# For example, if configured to “(_test)?$”, then a header a.h would be seen as
+# the “main” include in both a.cc and a_test.cc.
+# (Do we have a main include in Xen?)
+# (supported in clang-format 3.9)
+#IncludeIsMainRegex: '(Test)?$'
+
+# Non-case labels inside switch() bodies are preferred to be indented the same
+# as the block's case labels (supported in clang-format 11)
+IndentCaseBlocks: false
+
+# [not specified]
+# Do not indent case labels in the switch block (supported in clang-format 3.3)
+IndentCaseLabels: false
+
+# [not specified]
+# Do not indent extern "C" block
+# (supported in clang-format 11)
+IndentExternBlock: NoIndent
+
+# Due to the behavior of GNU diffutils "diff -p", labels should be indented by
+# at least one blank (supported in clang-format 10)
+IndentGotoLabels: true
+
+# [not specified]
+# Do not create indentation for the preprocessor directives
+# (supported in clang-format 6)
+IndentPPDirectives: None
+
+# An indent level consists of four spaces (supported in clang-format 3.7)
+IndentWidth: 4
+
+# [not specified]
+# In case a function definition or declaration needs to be wrapped after the
+# type, do not indent the new line (supported in clang-format 3.7)
+IndentWrappedFunctionNames: false
+
+# Braces should be omitted for blocks with a single statement. e.g.,
+# if ( condition )
+#     single_statement();
+# (supported in clang-format 15)
+InsertBraces: false
+
+# [not specified]
+# Every file needs to end with a new line
+# (supported in clang-format 16)
+# InsertNewlineAtEOF: true
+
+# [not specified]
+# Keep empty lines (up to MaxEmptyLinesToKeep) at end of file
+# (supported in clang-format 17)
+# KeepEmptyLinesAtEOF: true
+
+# [not specified]
+# Do not add a new empty line at the start of the block
+# (supported in clang-format 3.7)
+KeepEmptyLinesAtTheStartOfBlocks: false
+
+# The Xen Hypervisor is written in C language (supported in clang-format 3.5)
+Language: Cpp
+
+# [not specified]
+# Line ending style is '\n' (supported in clang-format 16)
+# LineEnding: LF
+
+# Specify Xen's macro that starts a block of code
+# (supported in clang-format 3.7)
+MacroBlockBegin: '^PLATFORM_START|^DT_DEVICE_START|^ACPI_DEVICE_START'
+
+# Specify Xen's macro that ends a block of code (supported in clang-format 3.7)
+MacroBlockEnd: '^PLATFORM_END|^DT_DEVICE_END|^ACPI_DEVICE_END'
+
+# [not specified]
+# Maximum consecutive empty lines allowed (supported in clang-format 3.7)
+MaxEmptyLinesToKeep: 1
+
+# Parameters to tweak to discourage clang-format to break something
+# (supported in clang-format 5)
+PenaltyBreakAssignment: 30
+# (supported in clang-format 3.7)
+PenaltyBreakBeforeFirstCallParameter: 30
+# (supported in clang-format 3.7)
+PenaltyBreakComment: 10
+# (supported in clang-format 3.7)
+PenaltyBreakFirstLessLess: 0
+# (supported in clang-format 14)
+PenaltyBreakOpenParenthesis: 100
+# (supported in clang-format 3.7)
+PenaltyBreakString: 10
+# (supported in clang-format 3.7)
+PenaltyExcessCharacter: 100
+# (supported in clang-format 12)
+PenaltyIndentedWhitespace: 0
+# (supported in clang-format 3.7)
+PenaltyReturnTypeOnItsOwnLine: 60
+
+# [not specified]
+# Pointer alignment style is on the right 'void *var'
+# (supported in clang-format 3.7)
+PointerAlignment: Right
+
+# [not specified]
+# The number of columns to use for indentation of preprocessor statements
+# When set to -1 (default) IndentWidth is used also for preprocessor statements.
+# (supported in clang-format 13)
+PPIndentWidth: -1
+
+# [not specified]
+# (supported in clang-format 14)
+QualifierAlignment: Custom
+
+# Specify in which order the qualifiers should appear 'static const int *var'
+# (supported in clang-format 14)
+QualifierOrder: ['static', 'inline', 'const', 'volatile', 'type']
+
+# Don't try to reflow comments to respect the column limit (It helps to make
+# clang-format reproduce the same output when it runs on an already formatted
+# file)
+# (supported in clang-format 3.8)
+ReflowComments: false
+
+# [not specified]
+# Specifies the use of empty lines to separate definition blocks, including
+# structs, enums, and functions
+# (supported in clang-format 14)
+SeparateDefinitionBlocks: Always
+
+# [not specified]
+# Sort the include files by name (supported in clang-format 3.8)
+# TODO: enabling this will currently break the compilation, maybe fix?
+SortIncludes: Never
+
+# [not specified]
+# Do not allow a space after a type cast '(type)var'
+# (supported in clang-format 3.5)
+SpaceAfterCStyleCast: false
+
+# [not specified]
+# Do not allow a space after the not operator '!var'
+# (supported in clang-format 9)
+SpaceAfterLogicalNot: false
+
+# Ensure that there is a space after pointer qualifiers, when used with
+# PointerAlignment of value Right it means 'void *const *x = NULL;'
+# (supported in clang-format 12)
+SpaceAroundPointerQualifiers: After
+
+# [not specified]
+# Always have a space after an assign operator or a compound operator, for
+# example '+=' (supported in clang-format 3.7)
+SpaceBeforeAssignmentOperators: true
+
+# [not specified]
+# Do not allow a space between the case argument and the final colon 'case 0:'
+# (supported in clang-format 12)
+SpaceBeforeCaseColon: false
+
+# [not specified]
+# Have a space before the parenthesis of a control statement, do an exception
+# for ForEach and If macros
+SpaceBeforeParens: ControlStatementsExceptForEachMacros
+
+# (supported in clang-format 7)
+SpaceBeforeRangeBasedForLoopColon: true
+
+# [not specified]
+# Do not add a spaces before square brackets 'int a[5];'
+# (supported in clang-format 10)
+SpaceBeforeSquareBrackets: false
+
+# [not specified]
+# Do not add a space inside empty parenthesis '()'
+# (supported in clang-format 3.7)
+SpaceInEmptyParentheses: false
+
+# (supported in clang-format 3.7)
+SpacesBeforeTrailingComments: 1
+
+# Space characters are used to spread out logical statements, such as in the
+# condition of an if or while 'if ( a )' 'while ( i < 5 )'
+# (supported in clang-format 10)
+SpacesInConditionalStatement: true
+
+# (supported in clang-format 3.7)
+SpacesInContainerLiterals: false
+
+# [not specified]
+# Do not add a spaces inside a type cast parenthesis '(int)var'
+# (supported in clang-format 3.7)
+SpacesInCStyleCastParentheses: false
+
+# [not specified]
+# Do not insert spaces in empty block '{}'
+# (supported in clang-format 3.5)
+SpaceInEmptyBlock: false
+
+# Only one space is allowed at the start of a line comment
+# (supported in clang-format 13)
+SpacesInLineCommentPrefix:
+  Minimum: 1
+  Maximum: -1
+
+# [not specified]
+# Do not add a spaces inside parenthesis '(var & var)'
+# (supported in clang-format 3.7)
+SpacesInParentheses: false
+
+# [not specified]
+# Do not add spaces inside square brakets 'int a[5];'
+# (supported in clang-format 3.7)
+SpacesInSquareBrackets: false
+
+# (supported in clang-format 3.7)
+Standard: C++03
+
+# Macros which are ignored in front of a statement, as if they were an
+# attribute. So that they are not parsed as identifier
+# (supported in clang-format 12)
+# StatementAttributeLikeMacros: ['']
+
+# A vector of macros that should be interpreted as complete statements.
+# Typical macros are expressions, and require a semi-colon to be added;
+# sometimes this is not the case, and this allows to make clang-format aware of
+# such cases. (supported in clang-format 8)
+StatementMacros:
+  - 'PROGRESS'
+  - 'PROGRESS_VCPU'
+  - 'bitop'
+  - 'guest_bitop'
+  - 'testop'
+  - 'guest_testop'
+  - 'DEFINE_XEN_GUEST_HANDLE'
+  - '__DEFINE_XEN_GUEST_HANDLE'
+  - '___DEFINE_XEN_GUEST_HANDLE'
+  - 'presmp_initcall'
+  - '__initcall'
+  - '__exitcall'
+
+# An indent level consists of four spaces (supported in clang-format 3.7)
+TabWidth: 4
+
+# A vector of macros that should be interpreted as type declarations instead of
+# as function calls (supported in clang-format 9)
+TypenameMacros:
+  - 'XEN_GUEST_HANDLE'
+  - 'XEN_GUEST_HANDLE_64'
+  - 'XEN_GUEST_HANDLE_PARAM'
+  - 'ELF_HANDLE_DECL'
+
+# Indentation is done using spaces, not tabs (supported in clang-format 3.7)
+UseTab: Never
+
+# A vector of macros which are whitespace-sensitive and should not be touched
+# (supported in clang-format 11)
+WhitespaceSensitiveMacros:
+  - '__stringify'
+
+## Not related to C language ###################################################
+
+# (supported in clang-format 3.3)
+AccessModifierOffset: -4
+
+# (supported in clang-format 9)
+AllowShortLambdasOnASingleLine: None
+
+# (supported in clang-format 16)
+# BreakAfterAttributes: Never
+
+# (supported in clang-format 3.8)
+BreakAfterJavaFieldAnnotations: false
+
+# (supported in clang-format 16)
+# BreakArrays: false
+
+# (supported in clang-format 12)
+BreakBeforeConceptDeclarations: Never
+
+# (supported in clang-format 7)
+BreakInheritanceList: BeforeColon
+
+# (supported in clang-format 5)
+CompactNamespaces: false
+
+# (supported in clang-format 3.7)
+ConstructorInitializerAllOnOneLineOrOnePerLine: false
+
+# (supported in clang-format 3.7)
+ConstructorInitializerIndentWidth: 4
+
+# (supported in clang-format 3.4)
+Cpp11BracedListStyle: false
+
+# (supported in clang-format 13)
+EmptyLineAfterAccessModifier: Leave
+
+# (supported in clang-format 12)
+EmptyLineBeforeAccessModifier: Leave
+
+# (supported in clang-format 5)
+FixNamespaceComments: false
+
+# (supported in clang-format 13)
+IndentAccessModifiers: false
+
+# (supported in clang-format 15)
+IndentRequiresClause: false
+
+# (supported in clang-format 11)
+InsertTrailingCommas: None
+
+# (supported in clang-format 3.9)
+JavaScriptQuotes: Leave
+
+# (supported in clang-format 3.9)
+JavaScriptWrapImports: true
+
+# (supported in clang-format 3.7)
+NamespaceIndentation: None
+
+# (supported in clang-format 7)
+ObjCBinPackProtocolList: Auto
+
+# (supported in clang-format 3.7)
+ObjCBlockIndentWidth: 4
+
+# (supported in clang-format 11)
+ObjCBreakBeforeNestedBlockParam: false
+
+# (supported in clang-format 3.7)
+ObjCSpaceAfterProperty: true
+
+# (supported in clang-format 3.7)
+ObjCSpaceBeforeProtocolList: true
+
+# (supported in clang-format 14)
+PackConstructorInitializers: Never
+
+# (supported in clang-format 7)
+PenaltyBreakTemplateDeclaration: 0
+
+# (supported in clang-format 13)
+ReferenceAlignment: Right
+
+# (supported in clang-format 16)
+# RemoveSemicolon: false
+
+# (supported in clang-format 5)
+SortUsingDeclarations: false
+
+# (supported in clang-format 4)
+SpaceAfterTemplateKeyword: true
+
+# (supported in clang-format 7)
+SpaceBeforeCpp11BracedList: false
+
+# (supported in clang-format 7)
+SpaceBeforeCtorInitializerColon: false
+
+# (supported in clang-format 7)
+SpaceBeforeInheritanceColon: true
+
+# (supported in clang-format 3.4)
+SpacesInAngles: false
+
+...
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Tue Oct 31 13:23:31 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 13:23:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625721.975339 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxoiQ-0005rp-VE; Tue, 31 Oct 2023 13:23:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625721.975339; Tue, 31 Oct 2023 13:23: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 1qxoiQ-0005rL-M8; Tue, 31 Oct 2023 13:23:30 +0000
Received: by outflank-mailman (input) for mailman id 625721;
 Tue, 31 Oct 2023 13:23: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=k1/u=GN=arm.com=luca.fancellu@srs-se1.protection.inumbo.net>)
 id 1qxoiP-0003rs-TX
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 13:23:29 +0000
Received: from foss.arm.com (foss.arm.com [217.140.110.172])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTP
 id ad206158-77f0-11ee-9b0e-b553b5be7939;
 Tue, 31 Oct 2023 14:23:27 +0100 (CET)
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 EF6F7DA7;
 Tue, 31 Oct 2023 06:24:08 -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 40DC03F738;
 Tue, 31 Oct 2023 06:23: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: ad206158-77f0-11ee-9b0e-b553b5be7939
From: Luca Fancellu <luca.fancellu@arm.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>
Subject: [RFC PATCH v2 8/8] feedback from the community
Date: Tue, 31 Oct 2023 13:23:04 +0000
Message-Id: <20231031132304.2573924-9-luca.fancellu@arm.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20231031132304.2573924-1-luca.fancellu@arm.com>
References: <20231031132304.2573924-1-luca.fancellu@arm.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Signed-off-by: Luca Fancellu <luca.fancellu@arm.com>
---
 xen/.clang-format | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/xen/.clang-format b/xen/.clang-format
index 7880709fe1fd..bfc1d104af84 100644
--- a/xen/.clang-format
+++ b/xen/.clang-format
@@ -29,8 +29,8 @@ AlignArrayOfStructures: Left
 # [not specified]
 # Align consecutive assignments (supported in clang-format 3.8)
 AlignConsecutiveAssignments:
-  Enabled: true
-  AcrossEmptyLines: true
+  Enabled: false
+  AcrossEmptyLines: false
   AcrossComments: false
 
 # [not specified]
@@ -46,8 +46,8 @@ AlignConsecutiveDeclarations: None
 # Align values of consecutive macros (supported in clang-format 9)
 AlignConsecutiveMacros:
   Enabled: true
-  AcrossEmptyLines: true
-  AcrossComments: true
+  AcrossEmptyLines: false
+  AcrossComments: false
 
 # [not specified]
 # Align escaped newlines to the right (supported in clang-format 5)
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Tue Oct 31 13:27:59 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 13:27:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625752.975355 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxomj-0001TL-LB; Tue, 31 Oct 2023 13:27:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625752.975355; Tue, 31 Oct 2023 13:27: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 1qxomj-0001TE-I5; Tue, 31 Oct 2023 13:27:57 +0000
Received: by outflank-mailman (input) for mailman id 625752;
 Tue, 31 Oct 2023 13:27:55 +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 1qxomh-0001T8-UF
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 13:27: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 1qxomg-0003Y4-Oe; Tue, 31 Oct 2023 13:27:54 +0000
Received: from 54-240-197-239.amazon.com ([54.240.197.239]
 helo=[192.168.9.249]) by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qxomg-0006uf-Hy; Tue, 31 Oct 2023 13:27: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=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=Ubld0So/70WbMswq+y+KcaYMTLKyBjG2FRdLGvR7lcM=; b=uZ4RjnP4HrGwrW54oeTfoYHzPM
	wie6I9vlgQJfG7VX4x8Jw/E9Gbqftf2hu8S1lupO02DhV7PKVmMfgR64C0nkD44RXaNtu92RLVS4B
	edgtmlodpU0OlBldM7o8M7UX1horSZONw8Ts+XowTFrqIpiwmLmD0DJn1jNdoeQgGA3k=;
Message-ID: <ee3c415d-bedd-432e-bf31-6e806b9cf976@xen.org>
Date: Tue, 31 Oct 2023 13:27:50 +0000
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN PATCH][for-4.19 v5] xen: Add deviations for MISRA C:2012
 Rule 7.1
Content-Language: en-GB
To: Stefano Stabellini <sstabellini@kernel.org>
Cc: 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,
 jbeulich@suse.com, andrew.cooper3@citrix.com, roger.pau@citrix.com,
 Simone Ballarin <simone.ballarin@bugseng.com>,
 Doug Goldstein <cardoe@cardoe.com>, George Dunlap
 <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>
References: <0c86b50a796ba2aaab01e30935ed559ab719d33a.1698418578.git.nicola.vetrini@bugseng.com>
 <98da41d4-f818-44c7-bd3c-b3e3b224ff0d@xen.org>
 <alpine.DEB.2.22.394.2310301544460.1625118@ubuntu-linux-20-04-desktop>
From: Julien Grall <julien@xen.org>
In-Reply-To: <alpine.DEB.2.22.394.2310301544460.1625118@ubuntu-linux-20-04-desktop>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi Stefano,

On 30/10/2023 22:49, Stefano Stabellini wrote:
> On Mon, 30 Oct 2023, Julien Grall wrote:
>> Hi Nicola,
>>
>> On 27/10/2023 16:11, Nicola Vetrini wrote:
>>> diff --git a/docs/misra/deviations.rst b/docs/misra/deviations.rst
>>> index 8511a189253b..8aaaa1473fb4 100644
>>> --- a/docs/misra/deviations.rst
>>> +++ b/docs/misra/deviations.rst
>>> @@ -90,6 +90,13 @@ Deviations related to MISRA C:2012 Rules:
>>>             - __emulate_2op and __emulate_2op_nobyte
>>>             - read_debugreg and write_debugreg
>>>    +   * - R7.1
>>> +     - It is safe to use certain octal constants the way they are defined
>>> +       in specifications, manuals, and algorithm descriptions. Such places
>>> +       are marked safe with a /\* octal-ok \*/ in-code comment, or with a
>>> SAF
>>> +       comment (see safe.json).
>>
>> Reading this, it is unclear to me why we have two ways to deviate the rule
>> r7.1. And more importantely, how would the developper decide which one to use?
> 
> I agree with you on this and we were discussing this topic just this
> morning in the FUSA community call. I think we need a way to do this
> with the SAF framework:
> 
> if (some code with violation) /* SAF-xx-safe */
> 
> This doesn't work today unfortunately. It can only be done this way:
> 
> /* SAF-xx-safe */
> if (some code with violation)
> 
> Which is not always desirable. octal-ok is just an ad-hoc solution for
> one specific violation but we need a generic way to do this. Luca is
> investigating possible ways to support the previous format in SAF.

Why can't we use octal-ok everywhere for now? My point here is to make 
simple for the developper to know what to use.

> 
> I think we should take this patch for now and harmonize it once SAF is
> improved.

The description of the deviation needs some improvement. To give an 
example, with the current wording, one could they can use octal-ok 
everywhere. But above, you are implying that SAF-xx-safe should be
preferred.

I would still strongly prefer if we use octal-ok everywhere because this 
is simple to remember. But if the other are happy to have both SAF-XX 
and octal-ok, then the description needs to be completely unambiguous 
and the patch should contain some explanation why we have two different 
ways to deviate.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Oct 31 13:29:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 13:29:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625755.975365 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxonr-0002Cw-Ue; Tue, 31 Oct 2023 13:29:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625755.975365; Tue, 31 Oct 2023 13:29: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 1qxonr-0002Cp-Rk; Tue, 31 Oct 2023 13:29:07 +0000
Received: by outflank-mailman (input) for mailman id 625755;
 Tue, 31 Oct 2023 13:29: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=9ZX9=GN=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qxonq-0002Ce-PW
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 13:29:07 +0000
Received: from mail-ed1-x536.google.com (mail-ed1-x536.google.com
 [2a00:1450:4864:20::536])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 76a2bf96-77f1-11ee-98d6-6d05b1d4d9a1;
 Tue, 31 Oct 2023 14:29:05 +0100 (CET)
Received: by mail-ed1-x536.google.com with SMTP id
 4fb4d7f45d1cf-543456dbd7bso3364735a12.1
 for <xen-devel@lists.xenproject.org>; Tue, 31 Oct 2023 06:29: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
 v9-20020a17090606c900b0098f33157e7dsm966099ejb.82.2023.10.31.06.29.04
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 31 Oct 2023 06:29: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: 76a2bf96-77f1-11ee-98d6-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1698758945; x=1699363745; darn=lists.xenproject.org;
        h=content-transfer-encoding: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=SESIl4yPE28uydcwvtFMGtgo6QmA5t82nHkuCo96gYA=;
        b=FfYduoW9CsW336srf/DDZHcO0my+9f44uCD6mJKY2gUYf1R1jh3yZyr+AUiXDJV5vQ
         Jib5kBj14ODiumioyF9RVPmLTYguKwmC54wnkDCviCC92imsD1+x977oHXVSn1Sbvp0s
         ovPQXiH6LoQgpMxZpA2DNLHeXY40vYNnq3J8M=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698758945; x=1699363745;
        h=content-transfer-encoding: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=SESIl4yPE28uydcwvtFMGtgo6QmA5t82nHkuCo96gYA=;
        b=vCDz8fIMNopkNRtaoEihqSQGRsnGWzBqbXdQkcBIs8PrZzDpjRMHSXZyecXwVVCjTw
         B91PH34zFl/NtAERRU4EY07iJhHHOlL+cr1NgFCVgpsVuQK5l4bQtGRZRIZ11r9tAlRa
         rpWgD713pC1ti2+ZsO4+LNhVEO22IdQalURJtwLVZGAxPX9+AfPYdTFaE10km56dag+N
         kgT7tKmjD3IOOXKERLR/0AzgCxPrJGImT3qGNgqWET3ZCi0WPxZNUJ+C4wfTjomUOc3/
         PB9/Gf9w0JDGFJ71rZlDGUtwCTt8oKRfoaNPtRcb8GUZZ2uJQFkUQHn2R3rufWP8V5vI
         Xk/g==
X-Gm-Message-State: AOJu0YwvVgImOpHXsSXKdoZkdBgOsx+PgpLCDzTsKJYrc5IMsDqrVBGn
	arUZkiKvQWUb3xt9Meagxsa5Wg==
X-Google-Smtp-Source: AGHT+IEqnSUyQuv+zIzq1/P1cMtVi5ElbDQqS5kdGyhKc/KMBr/U5a3td+lk7QMstm7dKK29YI+M/w==
X-Received: by 2002:a17:906:a184:b0:9ae:50ec:bd81 with SMTP id s4-20020a170906a18400b009ae50ecbd81mr2427099ejy.21.1698758945265;
        Tue, 31 Oct 2023 06:29:05 -0700 (PDT)
Message-ID: <6f2544e0-3976-4d05-982f-9406acbb207a@citrix.com>
Date: Tue, 31 Oct 2023 13:29:04 +0000
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH for-4.18] docs: Fix IOMMU command line docs some more
Content-Language: en-GB
To: =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>
Cc: Xen-devel <xen-devel@lists.xenproject.org>,
 Jan Beulich <JBeulich@suse.com>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Marek_Marczykowski-G=C3=B3recki?=
 <marmarek@invisiblethingslab.com>, Henry Wang <Henry.Wang@arm.com>
References: <20231031120215.3307356-1-andrew.cooper3@citrix.com>
 <ZUDx67jQrGQcy68-@macbook>
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: <ZUDx67jQrGQcy68-@macbook>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 31/10/2023 12:24 pm, Roger Pau Monné wrote:
> On Tue, Oct 31, 2023 at 12:02:15PM +0000, Andrew Cooper wrote:
>> Make the command line docs match the actual implementation, and state that the
>> default behaviour is selected at compile time.
>>
>> Fixes: 980d6acf1517 ("IOMMU: make DMA containment of quarantined devices optional")
>> 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: Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
>> CC: Henry Wang <Henry.Wang@arm.com>
>> ---
>>  docs/misc/xen-command-line.pandoc | 6 ++++--
>>  1 file changed, 4 insertions(+), 2 deletions(-)
>>
>> diff --git a/docs/misc/xen-command-line.pandoc b/docs/misc/xen-command-line.pandoc
>> index 6b07d0f3a17f..9a19a04157cb 100644
>> --- a/docs/misc/xen-command-line.pandoc
>> +++ b/docs/misc/xen-command-line.pandoc
>> @@ -1480,7 +1480,8 @@ detection of systems known to misbehave upon accesses to that port.
>>  > Default: `new` unless directed-EOI is supported
>>  
>>  ### iommu
>> -    = List of [ <bool>, verbose, debug, force, required, quarantine[=scratch-page],
>> +    = List of [ <bool>, verbose, debug, force, required,
>> +                quarantine=<bool>|scratch-page,
> I think this should be quarantine=[<bool>|scratch-page], as just using
> iommu=quarantine is a valid syntax and will enable basic quarantine.
> IOW: the bool or scratch-page parameters are optional.

=<bool> already has that meaning, and this is the form we use elsewhere.

>
>>                  sharept, superpages, intremap, intpost, crash-disable,
>>                  snoop, qinval, igfx, amd-iommu-perdev-intremap,
>>                  dom0-{passthrough,strict} ]
>> @@ -1519,7 +1520,8 @@ boolean (e.g. `iommu=no`) can override this and leave the IOMMUs disabled.
>>      successfully.
>>  
>>  *   The `quarantine` option can be used to control Xen's behavior when
>> -    de-assigning devices from guests.
>> +    de-assigning devices from guests.  The default behaviour is chosen at
>> +    compile time, and is one of `CONFIG_IOMMU_QUARANTINE_{NONE,BASIC,SCRATCH_PAGE}`.
> Do we also want to state that the current build time default is BASIC
> if the user hasn't selected otherwise?

This is an instruction to look at the .config file and see which it is.

The exceptional case of someone doing a build from clean isn't
particularly interesting.  Not least because they will be prompted for
it and given the choices.

~Andrew


From xen-devel-bounces@lists.xenproject.org Tue Oct 31 13:31:16 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 13:31:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625759.975376 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxopv-0003mV-Ao; Tue, 31 Oct 2023 13:31:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625759.975376; Tue, 31 Oct 2023 13:31: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 1qxopv-0003mO-6c; Tue, 31 Oct 2023 13:31:15 +0000
Received: by outflank-mailman (input) for mailman id 625759;
 Tue, 31 Oct 2023 13:31: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=ZpMf=GN=amd.com=Xenia.Ragiadakou@srs-se1.protection.inumbo.net>)
 id 1qxopu-0003mI-Et
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 13:31:14 +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 c24c3b7e-77f1-11ee-98d6-6d05b1d4d9a1;
 Tue, 31 Oct 2023 14:31:13 +0100 (CET)
Received: from CH2PR18CA0036.namprd18.prod.outlook.com (2603:10b6:610:55::16)
 by BL1PR12MB5802.namprd12.prod.outlook.com (2603:10b6:208:392::16)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.29; Tue, 31 Oct
 2023 13:31:08 +0000
Received: from DS1PEPF00017099.namprd05.prod.outlook.com
 (2603:10b6:610:55:cafe::87) by CH2PR18CA0036.outlook.office365.com
 (2603:10b6:610:55::16) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.29 via Frontend
 Transport; Tue, 31 Oct 2023 13:31:08 +0000
Received: from SATLEXMB03.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.6954.19 via Frontend Transport; Tue, 31 Oct 2023 13:31:07 +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.32; Tue, 31 Oct
 2023 08:31:06 -0500
Received: from 10.0.2.15 (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.32 via Frontend
 Transport; Tue, 31 Oct 2023 08:31: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: c24c3b7e-77f1-11ee-98d6-6d05b1d4d9a1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=XHbXwyVAS6hxjYDnCYh6drtCNELAG0hNJ9KPD9f5yNCJ7UanHlw+R7Od0uQyJdiAZn178CSv1vJZHXEM49rxN9q/4lcj4jS2b6XaoCHf1tQLqLtTEXw968zm5JnhJMbrY84ROY3bRJgTtRm2Co+zilVxEujuOj5W9qTKwRH9nMMbBIRq+DW0pkTpO5Xpa/scqwUT3uFW1Q3Tz25xIvCw4iHMtbUDZA6kTMHrG40ZFY89Ab8cR0HTJL6popDf7IseerUIhWsq/IFuJlkaglxJ4laZY+JEBRkXK1pvsiUqaBG2Mxbg8MaUUN80sWqhXz5b3lB5hBixJTeCCrug5/GTGQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=9Ke8d4plNGJuIwSSfw+nKl5cBA307t6eSU88RthCIEY=;
 b=e8GL2dMJqKOFoJOI8nwOmxzm/06p1DfP+IKX5k15++30qG+fsLeG2ZUQUSu5znQJt9BNBP93MaYtb0MPxHP+yYkQovyG8a39age1zdFZLRi0mibTIAnCiE30RFflBE1mzwSYYPnMjNMcwYZ5mT5LdfDB24O+3h3Z02awHyJsFFAfnce3sdjn0SMvIRKvC8OYX0EJtRBso2jPCGB9vpGaFitI10xnrr1+oTXv/iThlVJxcR1+QVbUQQg2OY0bi8p2G9QH2XJvvdmLF9U5cIhnwXnRXX3SdIyGudn5eceEq2/e/c45mozm+tBVjpis1W8I9WmTx8iceR/WD/rJa9gJXQ==
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 (0)
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=9Ke8d4plNGJuIwSSfw+nKl5cBA307t6eSU88RthCIEY=;
 b=W9kTUoMzqirDJoAdTAlhunIS01m6xXU6TZBGAlXBhVO8/MUJ3KorGw4rj6WVVmKDBvAyQeeUyjGmNRt3j0VFDUMhXse/GCJb9gZz9cJJBA1vEI8zrqgI6tw19WSOWXmwwXvWgyRfspd1e3+0k/U7rcqRjInLekSjF/xfM6SJ6Q0=
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: Xenia Ragiadakou <xenia.ragiadakou@amd.com>
To: <xen-devel@lists.xenproject.org>
CC: Xenia Ragiadakou <xenia.ragiadakou@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] x86/irq: do not insert IRQ_MSI_EMU in emuirq mappings
Date: Tue, 31 Oct 2023 15:30:37 +0200
Message-ID: <20231031133037.157936-1-xenia.ragiadakou@amd.com>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DS1PEPF00017099:EE_|BL1PR12MB5802:EE_
X-MS-Office365-Filtering-Correlation-Id: 458000a9-794d-4a97-8ddb-08dbda15a3a0
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	/bL15/L8L9JHe2dVf1MLfNvrSRUfDwASHzC7aUq+uAtaVUlsmI6iJWSqG+9mCliK+HS3PLKhOVZrB5Gv2W3ADe8qZaZ4NNoi2nxw3LC0tQau/leRM8QQoKQ1iitEd+pkufc8zZf5P4z/dzftBVrisTtda6iQsOgLE3KpF3NjFTUbcXn+KzHmibEuLyeXL43ejp3tY18pE5NlsKuechsShT3Dfp48/fcvq8iJ4nw9BxnTuM/ynOy7vHIms98/RGSnsxEjnzRzD+GT70rwj/83IxqRkQUAN79qL8PKeoKw6chpMRZbMxzRw6U71/A6NS9xKzxWRTCYLelOsmin7LRh8/KUEiJZkkQbWxQ3l7SpWPVCCtGU69PhP/ZX7nr2+83c3epy7y4lIqYeW9EPNL29XBFGZ7w9xhFVtc4eaJAyVT6VscJE45tBQ+kK8wTM9x2LNZnelBrNDtvJ8Oa9nhn3svZyRCs4P6X6bnhoh/rIc4n9tgbu6gjfNKqvvM9MLjtPGunZHC+yBKhnSgK6iF/VttsNuoiUW0ViJUbUbi1036lQQ/0DP7G+X++oMCcqMB4BsghevcnQOgU4UGYyAxLu4x/r/6uT00HrxPAhMnzuJmttJ3h5lt2dmwxHumlAZoCHudQWe+C3Tuzxj7uZCzS5qQQ9EZUxypZOO6ENSio0ALfMuiL4epVTUvnfy3wnJjvT49CAPQDzcSoQxrysadMVDvldpI+TYp27tXc0nSsYWpEzII2krQFR2VwR+VC7W4QAjVywN/lXqFtWM1uOoRYZnA==
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)(39860400002)(376002)(230922051799003)(82310400011)(64100799003)(1800799009)(186009)(451199024)(40470700004)(46966006)(36840700001)(70206006)(70586007)(316002)(54906003)(6916009)(16576012)(2906002)(5660300002)(8676002)(40480700001)(41300700001)(478600001)(44832011)(4326008)(8936002)(6666004)(40460700003)(2616005)(1076003)(26005)(83380400001)(36860700001)(336012)(426003)(82740400003)(36756003)(86362001)(356005)(81166007)(47076005)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 31 Oct 2023 13:31:07.6652
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 458000a9-794d-4a97-8ddb-08dbda15a3a0
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:
	DS1PEPF00017099.namprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BL1PR12MB5802

Do not use emuirq mappings for MSIs injected by emulated devices.
This kind of pirq shares the same emuirq value and is not remapped.

Fixes: 88fccdd11ca0 ('xen: event channel remapping for emulated MSIs')
Signed-off-by: Xenia Ragiadakou <xenia.ragiadakou@amd.com>
---

Question: is there any strong reason why Linux HVM guests still use pirqs?

 xen/arch/x86/irq.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/xen/arch/x86/irq.c b/xen/arch/x86/irq.c
index f42ad539dc..cdc8dc5a55 100644
--- a/xen/arch/x86/irq.c
+++ b/xen/arch/x86/irq.c
@@ -2684,7 +2684,7 @@ int map_domain_emuirq_pirq(struct domain *d, int pirq, int emuirq)
     }
 
     old_emuirq = domain_pirq_to_emuirq(d, pirq);
-    if ( emuirq != IRQ_PT )
+    if ( (emuirq != IRQ_PT) && (emuirq != IRQ_MSI_EMU) )
         old_pirq = domain_emuirq_to_pirq(d, emuirq);
 
     if ( (old_emuirq != IRQ_UNBOUND && (old_emuirq != emuirq) ) ||
@@ -2699,8 +2699,8 @@ int map_domain_emuirq_pirq(struct domain *d, int pirq, int emuirq)
     if ( !info )
         return -ENOMEM;
 
-    /* do not store emuirq mappings for pt devices */
-    if ( emuirq != IRQ_PT )
+    /* do not store emuirq mappings for pt devices and emulated MSIs */
+    if ( (emuirq != IRQ_PT) && (emuirq != IRQ_MSI_EMU) )
     {
         int err = radix_tree_insert(&d->arch.hvm.emuirq_pirq, emuirq,
                                     radix_tree_int_to_ptr(pirq));
@@ -2753,7 +2753,7 @@ int unmap_domain_pirq_emuirq(struct domain *d, int pirq)
         info->arch.hvm.emuirq = IRQ_UNBOUND;
         pirq_cleanup_check(info, d);
     }
-    if ( emuirq != IRQ_PT )
+    if ( (emuirq != IRQ_PT) && (emuirq != IRQ_MSI_EMU) )
         radix_tree_delete(&d->arch.hvm.emuirq_pirq, emuirq);
 
  done:
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Tue Oct 31 13:31:47 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 13:31:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625761.975385 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxoqR-0004J0-Il; Tue, 31 Oct 2023 13:31:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625761.975385; Tue, 31 Oct 2023 13:31: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 1qxoqR-0004It-EN; Tue, 31 Oct 2023 13:31:47 +0000
Received: by outflank-mailman (input) for mailman id 625761;
 Tue, 31 Oct 2023 13:31: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 1qxoqQ-0004Ij-KC
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 13:31: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 1qxoqQ-0003cH-AF; Tue, 31 Oct 2023 13:31:46 +0000
Received: from 54-240-197-239.amazon.com ([54.240.197.239]
 helo=[192.168.9.249]) by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qxoqQ-00071E-3U; Tue, 31 Oct 2023 13:31: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=a0jO4t1ZO39sPHJ1FUG9JnDQ1gVDz91bLTOCIhJ1Ct0=; b=xJXgojcFQP9zymbchlVLBCroDx
	ch0jQ4TWqH9I4C+SSu4866DiSI8O+Q54VMigVBQJDHBc9N9V0cHMn+8Cyl4DBpTwM8gjgWj2LuJUQ
	D/d05FrvihqdyDMe9x1h41DrUfCf9hnX75vm6Cr1vdBhRdt7bYGNXOgG5gNXM7981e1o=;
Message-ID: <d2a5b85e-e25a-458e-b3ad-0821eb106e85@xen.org>
Date: Tue, 31 Oct 2023 13:31:44 +0000
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH for-4.19 3/3] CHANGELOG: Keep unstable section
Content-Language: en-GB
To: Andrew Cooper <andrew.cooper3@citrix.com>,
 Xen-devel <xen-devel@lists.xenproject.org>
Cc: George Dunlap <George.Dunlap@eu.citrix.com>,
 Jan Beulich <JBeulich@suse.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: <20231031131954.3310725-1-andrew.cooper3@citrix.com>
 <20231031131954.3310725-4-andrew.cooper3@citrix.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <20231031131954.3310725-4-andrew.cooper3@citrix.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

Hi,

On 31/10/2023 13:19, Andrew Cooper wrote:
> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>

Henry already provided a similar patch [1]. The only reason it is not 
yet committed is because we haven't yet set a final date for 4.18 and I 
want to avoid any clash when that patch will appear.

Cheers,

[1] 20231023092123.1756426-5-Henry.Wang@arm.com

> ---
> CC: George Dunlap <George.Dunlap@eu.citrix.com>
> CC: Jan Beulich <JBeulich@suse.com>
> CC: Stefano Stabellini <sstabellini@kernel.org>
> CC: Wei Liu <wl@xen.org>
> CC: Julien Grall <julien@xen.org>
> CC: Roger Pau Monné <roger.pau@citrix.com>
> CC: Henry Wang <Henry.Wang@arm.com>
> ---
>   CHANGELOG.md | 2 ++
>   1 file changed, 2 insertions(+)
> 
> diff --git a/CHANGELOG.md b/CHANGELOG.md
> index a827054cf27d..cf0c9c3f8cb9 100644
> --- a/CHANGELOG.md
> +++ b/CHANGELOG.md
> @@ -4,6 +4,8 @@ Notable changes to Xen will be documented in this file.
>   
>   The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
>   
> +## [unstable UNRELEASED](https://xenbits.xenproject.org/gitweb/?p=xen.git;a=shortlog;h=staging) - TBD
> +
>   ## [4.18.0](https://xenbits.xenproject.org/gitweb/?p=xen.git;a=shortlog;h=RELEASE-4.18.0) - 2023-XX-XX
>   
>   ### Changed

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Oct 31 13:38:49 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 13:38:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625774.975394 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxoxA-00063E-8Z; Tue, 31 Oct 2023 13:38:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625774.975394; Tue, 31 Oct 2023 13:38: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 1qxoxA-000637-5t; Tue, 31 Oct 2023 13:38:44 +0000
Received: by outflank-mailman (input) for mailman id 625774;
 Tue, 31 Oct 2023 13:38: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=9ZX9=GN=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qxox8-000631-So
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 13:38:42 +0000
Received: from mail-ej1-x62a.google.com (mail-ej1-x62a.google.com
 [2a00:1450:4864:20::62a])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id cd83b4fa-77f2-11ee-9b0e-b553b5be7939;
 Tue, 31 Oct 2023 14:38:41 +0100 (CET)
Received: by mail-ej1-x62a.google.com with SMTP id
 a640c23a62f3a-9c603e2354fso1156258766b.1
 for <xen-devel@lists.xenproject.org>; Tue, 31 Oct 2023 06:38: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
 gu9-20020a170906f28900b0099293cdbc98sm1005835ejb.145.2023.10.31.06.38.40
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 31 Oct 2023 06:38: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: cd83b4fa-77f2-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1698759520; x=1699364320; darn=lists.xenproject.org;
        h=content-transfer-encoding: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=hhvn9mRF282DMzFJkBug0SVcBFxu6eu50Z5C0LNX8Lg=;
        b=Hqqn8v9dz9RpEoikzWCPHU7YUw5fxwH7taETGsBn9DQWcOkMzKffwUlvQq+uzZAcDC
         YecMBmR0jQnFJy3y2F4z74xnfs9NHcZ4l3BW86WGi9FTqJg65qw6P4SBPSrDy90PyiuH
         2IRg8KA7oNbMqmGuZfu/LyCXKGC9UB2A8Sg8w=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698759520; x=1699364320;
        h=content-transfer-encoding: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=hhvn9mRF282DMzFJkBug0SVcBFxu6eu50Z5C0LNX8Lg=;
        b=vpHnuGBPZW2pzzoEzLsl8XpltOQ7QbPhl2KiKZVnSmWNP0wOFC8s0lkA5wNOAW7JOT
         kSju21NT8Ijc+bl2mzGxaNWWo5I7LUiMhuuXSJ2qmtvsUFJAyBeQv5WTdSRSZeJCGLh4
         t2uYdqQjmI35xCTkyQz0kD2PshIYc9cZmufwdUUvxP3fBvp94sM5LqsnvFQ2IaDC7Xsh
         gnVGtRlEoxYJ1sd0Q8Sk3Un6PQfTwywLl6x3h8owT/28SBuKcbjqrBmV7kypKXwtygY/
         oGle4gfjYZ9LK8i1tVl9Cz2wjCxNxMIr2+E64cZV8p5O1cOekKP4SBo4M9f9EkXdv3W7
         D0fA==
X-Gm-Message-State: AOJu0YyRiwzmqusP9r7VzyMVT8d4aHOajUWcDn3ggwenCAOoTh0X5t3P
	SnNSCjezqbb/vhYaBoBFlIt1IA==
X-Google-Smtp-Source: AGHT+IFCI3WuMF4V1Atz4p5RzeS7+ButZEZVqw8ITP9IVBBW3Yc22aYucRHIpM6RrXgf237Ow2gt6g==
X-Received: by 2002:a17:906:7b52:b0:9b2:cee1:1f82 with SMTP id n18-20020a1709067b5200b009b2cee11f82mr2299083ejo.7.1698759520457;
        Tue, 31 Oct 2023 06:38:40 -0700 (PDT)
Message-ID: <37bcdf0c-75be-4390-8758-d53f097d5b88@citrix.com>
Date: Tue, 31 Oct 2023 13:38:39 +0000
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH for-4.19 3/3] CHANGELOG: Keep unstable section
Content-Language: en-GB
To: Julien Grall <julien@xen.org>, Xen-devel <xen-devel@lists.xenproject.org>
Cc: George Dunlap <George.Dunlap@eu.citrix.com>,
 Jan Beulich <JBeulich@suse.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: <20231031131954.3310725-1-andrew.cooper3@citrix.com>
 <20231031131954.3310725-4-andrew.cooper3@citrix.com>
 <d2a5b85e-e25a-458e-b3ad-0821eb106e85@xen.org>
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: <d2a5b85e-e25a-458e-b3ad-0821eb106e85@xen.org>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 31/10/2023 1:31 pm, Julien Grall wrote:
> Hi,
>
> On 31/10/2023 13:19, Andrew Cooper wrote:
>> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
>
> Henry already provided a similar patch [1]. The only reason it is not
> yet committed is because we haven't yet set a final date for 4.18 and
> I want to avoid any clash when that patch will appear.
>
> Cheers,
>
> [1] 20231023092123.1756426-5-Henry.Wang@arm.com

This section should not have been deleted in d9f07b06cfc9.

It's fine to have an unstable section before the 4.18 date is confirmed,
and the section must exist before staging is re-opened for 4.19 content.

I don't mind which of these two patches gets committed, but one of them
is getting committed today ahead of staging re-opening.  Part of
branching ought to ensure that this section exists.

Henry, your choice.

~Andrew


From xen-devel-bounces@lists.xenproject.org Tue Oct 31 13:45:33 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 13:45:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625782.975405 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxp3e-0000OM-US; Tue, 31 Oct 2023 13:45:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625782.975405; Tue, 31 Oct 2023 13:45: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 1qxp3e-0000OF-RV; Tue, 31 Oct 2023 13:45:26 +0000
Received: by outflank-mailman (input) for mailman id 625782;
 Tue, 31 Oct 2023 13:45: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=G+CR=GN=cloud.com=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qxp3d-0000O7-Gn
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 13:45:25 +0000
Received: from mail-ej1-x62a.google.com (mail-ej1-x62a.google.com
 [2a00:1450:4864:20::62a])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id bdf91629-77f3-11ee-98d6-6d05b1d4d9a1;
 Tue, 31 Oct 2023 14:45:24 +0100 (CET)
Received: by mail-ej1-x62a.google.com with SMTP id
 a640c23a62f3a-99357737980so882392166b.2
 for <xen-devel@lists.xenproject.org>; Tue, 31 Oct 2023 06:45:24 -0700 (PDT)
Received: from localhost ([213.195.113.99]) by smtp.gmail.com with ESMTPSA id
 f7-20020a170906084700b009aa292a2df2sm986988ejd.217.2023.10.31.06.45.23
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Tue, 31 Oct 2023 06:45: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: bdf91629-77f3-11ee-98d6-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1698759924; x=1699364724; 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=1swOPVP/VJIIHN4ql2UP4WJc3LaAUALL0uNJPv0QBIQ=;
        b=nf/1v+NPtLYTkHm32zF4g3IG9SyWK8OUBxh+Iyf9dXMYgCiXaOjIRzcy0EXD4XSsQ7
         N3TTmuJeC3VfXBRXm2FKBtfdOM5QMcdme+kPY7iwAONAAwt9IvHV9WB8esVWMJ9iqyg8
         nO7u80IFHZCZ5gPQ7cyETPcC/Z45ESs8d8hYY=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698759924; x=1699364724;
        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=1swOPVP/VJIIHN4ql2UP4WJc3LaAUALL0uNJPv0QBIQ=;
        b=h5oyOphzrUCqxStUXF6TfAqWHzHGtX5cyAN5Dqpom0TEjg+4KpmWIQHrOpRfIsIZTk
         ZsMOLfabzbBC2MJI2TuzGZJXAsWRy0/RMvPlYW97a8lZ/EblTFmGprM6h4LhzX5Ipb8R
         0c28Bf4D7THTdAtr+J4NLXaX6U31OJ2LvfgvBf3zlmGlhUlVuc9r97Mzud/+34l9FX4m
         mddmRNFhYcX4vSL/jo7SekQVs8xRDIyc6lyMmdBVgNd/a9+EG5ki6LAFDULNijpXdlmb
         NhX7PsVKseHBCVi0EBW4t0nZspg6oB4ZK2yOl+rI4xF3jvaxKXeAZ2je1yhmaDGgYhET
         9aDQ==
X-Gm-Message-State: AOJu0YwfngpD7xL9f13eZhgtgo7XtK03yIzQWkzEsSMq1Cnf5+euGwmF
	zVl3VACeqAEEcYEdG3J5151XZw==
X-Google-Smtp-Source: AGHT+IFDrNzsrXQlUez7RVjnBaYHbe4KCd3LiDLMx0jhq7/sYpwHALAqRZUkgTP+a6U0FL8gQRqIrw==
X-Received: by 2002:a17:906:ef09:b0:9ae:5270:46d5 with SMTP id f9-20020a170906ef0900b009ae527046d5mr1479946ejs.73.1698759923856;
        Tue, 31 Oct 2023 06:45:23 -0700 (PDT)
Date: Tue, 31 Oct 2023 14:45:22 +0100
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: Xen-devel <xen-devel@lists.xenproject.org>,
	Jan Beulich <JBeulich@suse.com>, Wei Liu <wl@xen.org>,
	Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>,
	Henry Wang <Henry.Wang@arm.com>
Subject: Re: [PATCH for-4.18] docs: Fix IOMMU command line docs some more
Message-ID: <ZUEE8o9x9e_Vh7q2@macbook>
References: <20231031120215.3307356-1-andrew.cooper3@citrix.com>
 <ZUDx67jQrGQcy68-@macbook>
 <6f2544e0-3976-4d05-982f-9406acbb207a@citrix.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <6f2544e0-3976-4d05-982f-9406acbb207a@citrix.com>

On Tue, Oct 31, 2023 at 01:29:04PM +0000, Andrew Cooper wrote:
> On 31/10/2023 12:24 pm, Roger Pau Monné wrote:
> > On Tue, Oct 31, 2023 at 12:02:15PM +0000, Andrew Cooper wrote:
> >> Make the command line docs match the actual implementation, and state that the
> >> default behaviour is selected at compile time.
> >>
> >> Fixes: 980d6acf1517 ("IOMMU: make DMA containment of quarantined devices optional")
> >> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>

Reviewed-by: Roger Pau Monné <roger.pau@citrix.com>

> >> ---
> >> CC: Jan Beulich <JBeulich@suse.com>
> >> CC: Roger Pau Monné <roger.pau@citrix.com>
> >> CC: Wei Liu <wl@xen.org>
> >> CC: Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
> >> CC: Henry Wang <Henry.Wang@arm.com>
> >> ---
> >>  docs/misc/xen-command-line.pandoc | 6 ++++--
> >>  1 file changed, 4 insertions(+), 2 deletions(-)
> >>
> >> diff --git a/docs/misc/xen-command-line.pandoc b/docs/misc/xen-command-line.pandoc
> >> index 6b07d0f3a17f..9a19a04157cb 100644
> >> --- a/docs/misc/xen-command-line.pandoc
> >> +++ b/docs/misc/xen-command-line.pandoc
> >> @@ -1480,7 +1480,8 @@ detection of systems known to misbehave upon accesses to that port.
> >>  > Default: `new` unless directed-EOI is supported
> >>  
> >>  ### iommu
> >> -    = List of [ <bool>, verbose, debug, force, required, quarantine[=scratch-page],
> >> +    = List of [ <bool>, verbose, debug, force, required,
> >> +                quarantine=<bool>|scratch-page,
> > I think this should be quarantine=[<bool>|scratch-page], as just using
> > iommu=quarantine is a valid syntax and will enable basic quarantine.
> > IOW: the bool or scratch-page parameters are optional.
> 
> =<bool> already has that meaning, and this is the form we use elsewhere.

I guess I got confused by some other options using `[ ]` to denote
optional parameters, but I see it's not used by all of them.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Tue Oct 31 13:45:34 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 13:45:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625783.975415 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxp3j-0000fB-5y; Tue, 31 Oct 2023 13:45:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625783.975415; Tue, 31 Oct 2023 13: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 1qxp3j-0000f4-3H; Tue, 31 Oct 2023 13:45:31 +0000
Received: by outflank-mailman (input) for mailman id 625783;
 Tue, 31 Oct 2023 13:45: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 1qxp3i-0000eb-Gp
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 13:45: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 1qxp3i-00043O-02; Tue, 31 Oct 2023 13:45:30 +0000
Received: from 54-240-197-239.amazon.com ([54.240.197.239]
 helo=[192.168.9.249]) by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qxp3h-0007sr-OQ; Tue, 31 Oct 2023 13:45: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=iwYI4ZMnbN8MCNAV6joKKfGx9XaQKtsZJPpi4/QISrY=; b=Hf8i7T3J8f+VokxNvxjb9J5SyT
	gWW72f8Q5I6DjGrO9q4oykkQdi62j54sOswijeg5qCE4ZcNYuYtVNBYXr4jPKjs1hToKDCCwmzkq9
	4cxyCUizyeo6qtw+sQlchJ5D7bsHokL22sEpK7pzoJaFwY4YPzAVS5IzZGBDoxNXF3vY=;
Message-ID: <1bac4eda-a0d8-4dd8-83ba-9ad78eb2947e@xen.org>
Date: Tue, 31 Oct 2023 13:45:27 +0000
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH for-4.19 3/3] CHANGELOG: Keep unstable section
Content-Language: en-GB
To: Andrew Cooper <andrew.cooper3@citrix.com>,
 Xen-devel <xen-devel@lists.xenproject.org>
Cc: George Dunlap <George.Dunlap@eu.citrix.com>,
 Jan Beulich <JBeulich@suse.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: <20231031131954.3310725-1-andrew.cooper3@citrix.com>
 <20231031131954.3310725-4-andrew.cooper3@citrix.com>
 <d2a5b85e-e25a-458e-b3ad-0821eb106e85@xen.org>
 <37bcdf0c-75be-4390-8758-d53f097d5b88@citrix.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <37bcdf0c-75be-4390-8758-d53f097d5b88@citrix.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit



On 31/10/2023 13:38, Andrew Cooper wrote:
> On 31/10/2023 1:31 pm, Julien Grall wrote:
>> Hi,
>>
>> On 31/10/2023 13:19, Andrew Cooper wrote:
>>> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
>>
>> Henry already provided a similar patch [1]. The only reason it is not
>> yet committed is because we haven't yet set a final date for 4.18 and
>> I want to avoid any clash when that patch will appear.
>>
>> Cheers,
>>
>> [1] 20231023092123.1756426-5-Henry.Wang@arm.com
> 
> This section should not have been deleted in d9f07b06cfc9.

Why? This has always been our process. We should not ship 4.18 with the 
UNSTABLE section. So it was correct to delete it in d9f07b06cfc9.

> 
> It's fine to have an unstable section before the 4.18 date is confirmed,
> and the section must exist before staging is re-opened for 4.19 content.

I disagree. 4.19 will not be fully re-open until we finally release. So 
I wouldn't expect any new features to be merged.

> 
> I don't mind which of these two patches gets committed, but one of them
> is getting committed today ahead of staging re-opening.  Part of
> branching ought to ensure that this section exists.

If you want to go down that route, then please update the 
docs/process/branching-checklist.txt. Otherwise, I will continue to do 
as I did previously.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Oct 31 13:47:48 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 13:47:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625788.975425 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxp5u-0001zG-IV; Tue, 31 Oct 2023 13:47:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625788.975425; Tue, 31 Oct 2023 13:47: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 1qxp5u-0001z9-Eo; Tue, 31 Oct 2023 13:47:46 +0000
Received: by outflank-mailman (input) for mailman id 625788;
 Tue, 31 Oct 2023 13:47: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=9ZX9=GN=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qxp5t-0001xt-KM
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 13:47:45 +0000
Received: from mail-ed1-x52b.google.com (mail-ed1-x52b.google.com
 [2a00:1450:4864:20::52b])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 10e0718d-77f4-11ee-9b0e-b553b5be7939;
 Tue, 31 Oct 2023 14:47:43 +0100 (CET)
Received: by mail-ed1-x52b.google.com with SMTP id
 4fb4d7f45d1cf-5230a22cfd1so9812656a12.1
 for <xen-devel@lists.xenproject.org>; Tue, 31 Oct 2023 06:47: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
 l1-20020a50d6c1000000b00540e894609dsm1198479edj.17.2023.10.31.06.47.42
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 31 Oct 2023 06:47: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: 10e0718d-77f4-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1698760063; x=1699364863; darn=lists.xenproject.org;
        h=content-transfer-encoding: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=3itwTcSY7mwRQFXffFODRqrw/oLV8xTehVW3kDr7u8E=;
        b=ku61SfnzlLqrR7kpLRko2K/ZYHos+2c44i44ekpFSu1v5PTN0sJXJbtQjtRvLYhY6o
         DGzR7mRaXMGf/vFaVjqQUtCHFtGipTPj2B1zPNAmcE/igUVFle1K4MMifEOE2kLNG6UM
         n8hFRGPj5W6p98W2hrz5T3S0MixG2nMF5igeg=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698760063; x=1699364863;
        h=content-transfer-encoding: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=3itwTcSY7mwRQFXffFODRqrw/oLV8xTehVW3kDr7u8E=;
        b=K4sBmEtVWzvL7/aD7lWC6QljAEHlnH3gq1fySf4TEn3PgY3c2JML7eXPjRmeSyZ0O1
         gMxGtPI1jIB5kaMtqORKqF0VQRmtU80oY1HnCaHTIMB2hLrOJDatFfDSDU0oqj7S+LI4
         Ft9yD2hX8IgUFmPO5IlGjRlifQz/Zzf7SHolyOVWCXq2JA7Fzv/jiVwECHVyUs6UAtP9
         gI+fGFZlOPVRn7zrIfasLeO5C7qlqaEStueEA6tsxivN72SSgH7wkb7y/zHgCBG82JhA
         Y9pro3Pp2qgUTZR/AVkFfwP5q1aLqszIWEDiE7g+JpUscto3j7e16FpLCDFbtkep5YIK
         jddA==
X-Gm-Message-State: AOJu0YwIPR86cCojeU2tJpCeur1blwNpRyKuY+gAc2ckZ/MfuPcwBpk8
	7+DSJxjTZZG2gbjmdwR3u6/DLA==
X-Google-Smtp-Source: AGHT+IEReaX8cUD8nYZQsjzcESsXCyFCa4U0aJ9EaskRHBPp2mZGeeXOXUjqTErMorGYjdY7b9hqkg==
X-Received: by 2002:a50:9e81:0:b0:532:bed7:d0dd with SMTP id a1-20020a509e81000000b00532bed7d0ddmr11110883edf.5.1698760063003;
        Tue, 31 Oct 2023 06:47:43 -0700 (PDT)
Message-ID: <d6661159-7066-4473-8362-f9c19ce9c278@citrix.com>
Date: Tue, 31 Oct 2023 13:47:42 +0000
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH for-4.18] docs: Fix IOMMU command line docs some more
Content-Language: en-GB
To: =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>
Cc: Xen-devel <xen-devel@lists.xenproject.org>,
 Jan Beulich <JBeulich@suse.com>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Marek_Marczykowski-G=C3=B3recki?=
 <marmarek@invisiblethingslab.com>, Henry Wang <Henry.Wang@arm.com>
References: <20231031120215.3307356-1-andrew.cooper3@citrix.com>
 <ZUDx67jQrGQcy68-@macbook> <6f2544e0-3976-4d05-982f-9406acbb207a@citrix.com>
 <ZUEE8o9x9e_Vh7q2@macbook>
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: <ZUEE8o9x9e_Vh7q2@macbook>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 31/10/2023 1:45 pm, Roger Pau Monné wrote:
> On Tue, Oct 31, 2023 at 01:29:04PM +0000, Andrew Cooper wrote:
>> On 31/10/2023 12:24 pm, Roger Pau Monné wrote:
>>> On Tue, Oct 31, 2023 at 12:02:15PM +0000, Andrew Cooper wrote:
>>>> Make the command line docs match the actual implementation, and state that the
>>>> default behaviour is selected at compile time.
>>>>
>>>> Fixes: 980d6acf1517 ("IOMMU: make DMA containment of quarantined devices optional")
>>>> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
> Reviewed-by: Roger Pau Monné <roger.pau@citrix.com>

Thanks.

>
>>>> ---
>>>> CC: Jan Beulich <JBeulich@suse.com>
>>>> CC: Roger Pau Monné <roger.pau@citrix.com>
>>>> CC: Wei Liu <wl@xen.org>
>>>> CC: Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
>>>> CC: Henry Wang <Henry.Wang@arm.com>
>>>> ---
>>>>  docs/misc/xen-command-line.pandoc | 6 ++++--
>>>>  1 file changed, 4 insertions(+), 2 deletions(-)
>>>>
>>>> diff --git a/docs/misc/xen-command-line.pandoc b/docs/misc/xen-command-line.pandoc
>>>> index 6b07d0f3a17f..9a19a04157cb 100644
>>>> --- a/docs/misc/xen-command-line.pandoc
>>>> +++ b/docs/misc/xen-command-line.pandoc
>>>> @@ -1480,7 +1480,8 @@ detection of systems known to misbehave upon accesses to that port.
>>>>  > Default: `new` unless directed-EOI is supported
>>>>  
>>>>  ### iommu
>>>> -    = List of [ <bool>, verbose, debug, force, required, quarantine[=scratch-page],
>>>> +    = List of [ <bool>, verbose, debug, force, required,
>>>> +                quarantine=<bool>|scratch-page,
>>> I think this should be quarantine=[<bool>|scratch-page], as just using
>>> iommu=quarantine is a valid syntax and will enable basic quarantine.
>>> IOW: the bool or scratch-page parameters are optional.
>> =<bool> already has that meaning, and this is the form we use elsewhere.
> I guess I got confused by some other options using `[ ]` to denote
> optional parameters, but I see it's not used by all of them.

Yeah, it's a mess, sadly.  One of many things I've not had time to fix,
but at least this is closer to the normal syntax than before.

~Andrew


From xen-devel-bounces@lists.xenproject.org Tue Oct 31 14:01:26 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 14:01:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625794.975435 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxpIx-00061r-Ni; Tue, 31 Oct 2023 14:01:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625794.975435; Tue, 31 Oct 2023 14:01: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 1qxpIx-00061k-Kf; Tue, 31 Oct 2023 14:01:15 +0000
Received: by outflank-mailman (input) for mailman id 625794;
 Tue, 31 Oct 2023 14:01: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=kxST=GN=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qxpIw-00061e-3s
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 14:01:14 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 (mail-db8eur05on2062d.outbound.protection.outlook.com
 [2a01:111:f400:7e1a::62d])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id f206b7e0-77f5-11ee-9b0e-b553b5be7939;
 Tue, 31 Oct 2023 15:01:11 +0100 (CET)
Received: from AS4P195CA0047.EURP195.PROD.OUTLOOK.COM (2603:10a6:20b:65a::24)
 by AM7PR08MB5512.eurprd08.prod.outlook.com (2603:10a6:20b:de::19)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.22; Tue, 31 Oct
 2023 14:01:08 +0000
Received: from AMS0EPF000001B2.eurprd05.prod.outlook.com
 (2603:10a6:20b:65a:cafe::1f) by AS4P195CA0047.outlook.office365.com
 (2603:10a6:20b:65a::24) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.29 via Frontend
 Transport; Tue, 31 Oct 2023 14:01:08 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AMS0EPF000001B2.mail.protection.outlook.com (10.167.16.166) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6954.19 via Frontend Transport; Tue, 31 Oct 2023 14:01:07 +0000
Received: ("Tessian outbound 7c4ecdadb9e7:v228");
 Tue, 31 Oct 2023 14:01:07 +0000
Received: from b89638decfc6.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 E87F8266-1337-4E17-A908-0E5F7152EAED.1; 
 Tue, 31 Oct 2023 14:01:00 +0000
Received: from EUR03-AM7-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id b89638decfc6.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Tue, 31 Oct 2023 14:01:00 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by GV1PR08MB10600.eurprd08.prod.outlook.com (2603:10a6:150:15e::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.27; Tue, 31 Oct
 2023 14:00:58 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::ae6e:f96c:f2f3:efc9]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::ae6e:f96c:f2f3:efc9%4]) with mapi id 15.20.6933.028; Tue, 31 Oct 2023
 14: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: f206b7e0-77f5-11ee-9b0e-b553b5be7939
ARC-Seal: i=2; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=pass;
 b=DDhmon6HOQ2/xX8+dzIOxpFF7sBWYgNvmAenLUJFRWZLi7gWZ8lFsyzFTbv5iCJI/NStDFSqwwj80iQjGnO1GIfWvHOxKh6QUVXPmPnI9qoywK9ViSX0EZgMUbGRMhfyVWdXdGzDQl/fWdwq8WWlGBtX4Q9phXyT6avprPoNxi4RlOtx3nYLqcbnGH0d3f9XyosAnws7P3J2BEdcKNb8mlFm4++VB/omYavAjrDDNWeqEaC/b2HV4LMGmkcO1JW1I8EUL53zTj2f+YBtRSYOHciLyl1lhXD7xiRtrzEMLW/6fk+PRYaYRCMJ7cJHohS+AGVc/C8/hwXdhfM0m2Z6/g==
ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=K/aV2s9t5cBuGfzyjZ/LlgWms1Xfrs21IuCtMyAiN/4=;
 b=WW/kCKQ7t1usAVNm0AC58NoSS5GT7Ca7CrI+L3ar4QbHPFhhgQFgGP8s6texjweKav5ERQtGt99nathOsOC61h7U53izfxOYlgXWnkfeVbcJX6pwZOV89NdcxIwFTJIlt0dCkJMaTS2U7ZDDU6kXlpCvJWjprRsDg9TgtEC+u4LuOAK+Sgsw1hKf3W6cPw11EZznDTwd6meJUiaW2Y7EtxHCfJVAd7xE7r8thtVOj7/9GNnHrZhaMGdd2YtZML8LJso0Pvc1YJYF5aGgm+hRL048MW9usD/A2g6KSSq89kz083kCLJvi3GRqR1551ko69Xvq1euwPrC3CZWtAY+SYQ==
ARC-Authentication-Results: i=2; mx.microsoft.com 1; spf=pass (sender ip is
 63.35.35.123) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=arm.com;
 dmarc=pass (p=none sp=none pct=100) action=none header.from=arm.com;
 dkim=pass (signature was verified) header.d=armh.onmicrosoft.com; arc=pass (0
 oda=1 ltdi=1 spf=[1,1,smtp.mailfrom=arm.com] dkim=[1,1,header.d=arm.com]
 dmarc=[1,1,header.from=arm.com])
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=K/aV2s9t5cBuGfzyjZ/LlgWms1Xfrs21IuCtMyAiN/4=;
 b=fCPMJNbtPo5p89p14lCkoz1qoK3aoq0uWLdfFR9QVjka2Nwfy9P+esgFBjJxFpJWhl/o/FmxX9qd8JQyJbzvK77X9qG7XyY+k6xIRwlBuwg9MvowNIz46jJre9oYH/WEW8O+69YSoOCvnSVXoQhRXUI/Fdpt9wU3mkdcUVhxmr0=
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: cf998608088bb902
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=K7GIsPDUgvEwqrlTE+qnUCfHeDnbmo7hgfvAuDnkWSOSWbthxQZQs4s7TgK/YrP8qgqpIlNCY7vZ7a9XB27njcmh0G+7B8e1DQ4LBdlhW8t1HyctivFvHFCEvajOeHzwS9Dt9A8ZqWZknqyuV+oGtwOW9gMYn7UVwF8k39a95EdvcGM8WyB9BrelUSrqUmz950bRSUleAmTAlmfZASbP0drcuQTpisIbZQwtzhW0IZG2x5CEoIsiaR90ENwGMyaCMIgMUc4rTvCL7qgPMFM3ABn8SJsI/pBXL15URkYvdhZkZM5NWAIk3UKtafFonmhpO5S2pOqTQoWK4kIyYAp4wg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=K/aV2s9t5cBuGfzyjZ/LlgWms1Xfrs21IuCtMyAiN/4=;
 b=Ex8n+nmcfz2NcWmk006GE9nuNwcumyotPL/CeoLlvpWe9sDDYf/xcgkZlXguL/WfF4dtFTee1j37Ywf6fVMauESO3vN+Biudq/RP645nl2mRcJ96Aqg9y644obblGWbec6EQMQsG095lXRw+l80caJgTWiVs/3sESpyJvEv0JtGe35JE8E5nVmzXP0QcqOkNe7pgyCXdZB8Me1E+XclAYvwbtv4S8H5OkmAJ2gk7eaFg4LB3GvxJCLMdRkg09qiqoZFmoYquOKyTbPOOuhIIJwxuzN6qm40k2BQnbckBaEWaKTBbZXxN82TvuRBIbX5OnhKC/ZqjTcmEkrqnO/dqYw==
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=K/aV2s9t5cBuGfzyjZ/LlgWms1Xfrs21IuCtMyAiN/4=;
 b=fCPMJNbtPo5p89p14lCkoz1qoK3aoq0uWLdfFR9QVjka2Nwfy9P+esgFBjJxFpJWhl/o/FmxX9qd8JQyJbzvK77X9qG7XyY+k6xIRwlBuwg9MvowNIz46jJre9oYH/WEW8O+69YSoOCvnSVXoQhRXUI/Fdpt9wU3mkdcUVhxmr0=
From: Henry Wang <Henry.Wang@arm.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>
CC: Xen-devel <xen-devel@lists.xenproject.org>, George Dunlap
	<George.Dunlap@eu.citrix.com>, Jan Beulich <JBeulich@suse.com>, Stefano
 Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>, Julien Grall
	<julien@xen.org>, =?iso-8859-1?Q?Roger_Pau_Monn=E9?= <roger.pau@citrix.com>
Subject: Re: [PATCH for-4.18 1/3] CHANGELOG: Reformat
Thread-Topic: [PATCH for-4.18 1/3] CHANGELOG: Reformat
Thread-Index: AQHaC/0Ecsd1JRRn0E2uPawidAiicLBj7VGA
Date: Tue, 31 Oct 2023 14:00:58 +0000
Message-ID: <6FD0B6D5-93DF-4CC0-9340-C9174FF59AC2@arm.com>
References: <20231031131954.3310725-1-andrew.cooper3@citrix.com>
 <20231031131954.3310725-2-andrew.cooper3@citrix.com>
In-Reply-To: <20231031131954.3310725-2-andrew.cooper3@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_|GV1PR08MB10600:EE_|AMS0EPF000001B2:EE_|AM7PR08MB5512:EE_
X-MS-Office365-Filtering-Correlation-Id: a4e77a36-8011-446a-af66-08dbda19d48f
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:
 /mcCSYlWyjju/DPE5iBI33SpOMqHePxAYIvPC70PSLY9DpNz2FWl+lXvWsCUO6yZxDt0tSAtTlru2O7TXvdr7bB/TgCn4XiE2NaBqDUMOkHL5tyjZ40YCh0EkejVfArMtN+eSwFeLEpKh+f8aA2dbmctJA6nviT5+GQQN5Ylh0oGd3x7lzBrbV3XL4bZ3hZ3UGtWDZ4NSAMCqrX8IvM+gW3looQ5KD9ewOtPoMVnUoSFZKxwAMLeaa9nF95lpkcrEguNi0R6WXdiHxkpgCzZkLqACFFcEl/oNCp0aa/Xpq43SMb2Bzm2bQL+BxdzDnBCiNENIPx2SsdAPyNVuZsHpaiZjajuepTh3LPg05971cI+IkO3ZcZM5sqkLuzWbMUXdRu5/8Q0jod+s9lKLhTTXe/szUGJlHwv3yeCvw7IVe71NDLOD+FRcu3qy2qTeU9d/lVSQft5Al1vnXUTr7VF9JuMyKpWcZfN92sKqt7hEvKZ/p8uyr19xAkiuwwCvJmnsBCX3i2yY8ItYv+9iGGyBBN/RkoPLh4jwfPeB65/eUYt2ecSj4aCZ5rbWEUl/46vlIZhU7648QH4hVHjg2f/RO74sNi14wMm+JuHkDnTFtC6v9A7lraonKYVJ5y6StTgdOBGMKhYg/CR405+7LpanqlS/xTfNUY8qwdQjP6ZAqUot8YQMuA8HIxr0/zFOS0o
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)(396003)(39860400002)(346002)(136003)(230922051799003)(186009)(64100799003)(451199024)(1800799009)(6512007)(2616005)(26005)(38100700002)(38070700009)(558084003)(33656002)(86362001)(36756003)(122000001)(2906002)(6486002)(6916009)(478600001)(71200400001)(6506007)(53546011)(66446008)(66476007)(8936002)(41300700001)(4326008)(64756008)(54906003)(316002)(8676002)(91956017)(66556008)(5660300002)(66946007)(76116006)(207903002)(219803003)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="iso-8859-1"
Content-ID: <01074C852D16794791861A62DC2B9AD1@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV1PR08MB10600
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:
 AMS0EPF000001B2.eurprd05.prod.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	bfb739ee-3922-4a4b-ab17-08dbda19cec7
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	1UrwuO1U6R903z6aQLxZPXAAkQrtCUU+goA9OGsi8bkdWy7OHc/A4aj+EgC9T8+yhMfC/58+cmSzJkMcWGauTubvLj/Zu/TvqzKVv3HSDJH/0nb7MDsxSoZvKs+TIXCkRkRsWqkJ0vcYRBVNnAe2b61yHK4l9n05VQT8zlbI9owEyQYWKBpyysjrF4ocfN/1T3El6GXnQ5ChmRWMbegUKyvVxmIqfPQBhaotfGUiS0JNAxRZKuqkvqmJq9W42pCPezkPYnR9I9EsFxbRBzdwiHSAnJunfz7VSxlQlSy7EUUSAWgrMW6h00d83S4cz9RNz5ugR4RdwlW6vBZSeEUVPRbXlF1tYWKdQflOk7FeYwyotP6BKZr1XcV18UotvwMIySzNxtxwOyf3VuRVwSzc5en/+aqxGKlcqIxnEGKWevfiODfK/ZgO1feDTOZdzQuLND680XCBLXFG73e/rGbhEymzmWvBFtB8vaJ282buz+eMut25tV3mEETgWcDkbw8jK4lQj4pxYd+oozmO3GQTqqjsBKBSx9fdWBA6RlvqYSswtJXvr44HopdEdQ7GazFsVPBDHY316N/4Nei3s/f7NgaUDNHEulaiXE41YMld9JEDKpbzRlolpB6EJOEHhHbZgaWwH5qYzeMEUCudzlcGf89Fa1pcU/++FPrRauvoCz8UWfn+LAuIbxUv+wH8ZWiazNNqLdVV/3dJy6DK735PvjPfH2QgUZ8bjN38Vtwwq/SlcwyawVd7h6m0ocvrA+F9WOaNgRQmCBQlN1jKSDoTQHM5bCIEHSoq/KT814rLR1U=
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)(39860400002)(396003)(136003)(230922051799003)(186009)(64100799003)(82310400011)(451199024)(1800799009)(46966006)(36840700001)(40470700004)(36756003)(4744005)(33656002)(40480700001)(41300700001)(6862004)(5660300002)(4326008)(40460700003)(8676002)(2906002)(86362001)(54906003)(6512007)(6506007)(53546011)(82740400003)(26005)(478600001)(6486002)(356005)(107886003)(336012)(2616005)(8936002)(316002)(36860700001)(81166007)(47076005)(70206006)(70586007)(207903002)(219803003);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 31 Oct 2023 14:01:07.7649
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: a4e77a36-8011-446a-af66-08dbda19d48f
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:
	AMS0EPF000001B2.eurprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM7PR08MB5512

Hi Andrew,

> On Oct 31, 2023, at 21:19, Andrew Cooper <andrew.cooper3@citrix.com> wrot=
e:
>=20
> Collect all x86 and ARM changes together instead of having them scattered=
.
> Tweak grammar as necessary.
>=20
> No change.
>=20
> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>

Acked-by: Henry Wang <Henry.Wang@arm.com>
Release-acked-by: Henry Wang <Henry.Wang@arm.com>

Kind regards,
Henry



From xen-devel-bounces@lists.xenproject.org Tue Oct 31 14:02:18 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 14:02:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625797.975445 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxpJy-0006ay-5b; Tue, 31 Oct 2023 14:02:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625797.975445; Tue, 31 Oct 2023 14:02: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 1qxpJy-0006ar-2T; Tue, 31 Oct 2023 14:02:18 +0000
Received: by outflank-mailman (input) for mailman id 625797;
 Tue, 31 Oct 2023 14:02: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=kxST=GN=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qxpJw-0006aa-5B
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 14:02:16 +0000
Received: from EUR03-AM7-obe.outbound.protection.outlook.com
 (mail-am7eur03on20609.outbound.protection.outlook.com
 [2a01:111:f400:7eaf::609])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 17ce2393-77f6-11ee-9b0e-b553b5be7939;
 Tue, 31 Oct 2023 15:02:14 +0100 (CET)
Received: from DB7PR02CA0001.eurprd02.prod.outlook.com (2603:10a6:10:52::14)
 by AS2PR08MB9048.eurprd08.prod.outlook.com (2603:10a6:20b:5fe::7) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.28; Tue, 31 Oct
 2023 14:02:10 +0000
Received: from DU2PEPF0001E9BF.eurprd03.prod.outlook.com
 (2603:10a6:10:52:cafe::c) by DB7PR02CA0001.outlook.office365.com
 (2603:10a6:10:52::14) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.29 via Frontend
 Transport; Tue, 31 Oct 2023 14:02:10 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DU2PEPF0001E9BF.mail.protection.outlook.com (10.167.8.68) with
 Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6954.19 via Frontend Transport; Tue, 31 Oct 2023 14:02:10 +0000
Received: ("Tessian outbound 8289ea11ec17:v228");
 Tue, 31 Oct 2023 14:02:09 +0000
Received: from 4c696c9bf300.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 8160BB63-FC89-48F5-A14D-230610E08952.1; 
 Tue, 31 Oct 2023 14:02:03 +0000
Received: from EUR01-HE1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 4c696c9bf300.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Tue, 31 Oct 2023 14:02:03 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by GV1PR08MB10600.eurprd08.prod.outlook.com (2603:10a6:150:15e::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.27; Tue, 31 Oct
 2023 14:02:01 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::ae6e:f96c:f2f3:efc9]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::ae6e:f96c:f2f3:efc9%4]) with mapi id 15.20.6933.028; Tue, 31 Oct 2023
 14:02: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: 17ce2393-77f6-11ee-9b0e-b553b5be7939
ARC-Seal: i=2; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=pass;
 b=FLL9yayqfazbobJEjECSf3Ud2IFVPfbcWQKp9H5m/SMVW4PqajPUi4V8l6/W3INVdt1jjbAsPeCEZBOubedMDvwhOLAeIJQZyuwsWjkfDdidCIXhclFp8rLerBofV6hhQW5djeUPwnwSwcYeW1YxHp5HXwpTx9XnFXpPGZ0Ne+tn1C4xLOpkcYz0QDFIlxkzJnv+pvEBwvQI8n//OAw33OL/10rijIi7G1Ui2HgKhVsH1SkuhI9SWKcQzNQyCsPYbE+sx1iT9pjWdNbRwTgIQo/6E3W93Otg0iUp6HSa7qKzuEgzV562sCaUNNsdhp3JOi0JPhDiszBCWM6NwvQfXQ==
ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=t2Mnvw0QZE5ZpKPW0qLaBnpx49u7HpnQ674NfhAxXcU=;
 b=YJtmYULtVzIiH0gx3DFHOZ+ZFLSq3boytS6EMIrEjFTUKzmIyh/djJpDU3C/dY7Wpze2mazXBlpOSBdWJy4zPdq2YQ9KqwWlzeYJ+Ii6HISCCp66ZDDem5PQsYUKO422b70DbMRU2HmjOTKlDQh77oWm6vTZJkJ+ZKpn0+uho924ybaSxV7Nlsr/uaRhGAhZj74ffzEcajcLEv3vq4Rn05yaY4lo55se9Yc3aNdfMcFu6WO+hNdqAQchx0ZfFY7Op0nN0VLE758zq45M99q64y63x2y9q0k2dU02HBD867HyxrpWPmwMUvl7vcXi3UCj5/guznYoEsM5Mhc3K7Vbbw==
ARC-Authentication-Results: i=2; mx.microsoft.com 1; spf=pass (sender ip is
 63.35.35.123) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=arm.com;
 dmarc=pass (p=none sp=none pct=100) action=none header.from=arm.com;
 dkim=pass (signature was verified) header.d=armh.onmicrosoft.com; arc=pass (0
 oda=1 ltdi=1 spf=[1,1,smtp.mailfrom=arm.com] dkim=[1,1,header.d=arm.com]
 dmarc=[1,1,header.from=arm.com])
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=t2Mnvw0QZE5ZpKPW0qLaBnpx49u7HpnQ674NfhAxXcU=;
 b=5Yo7bfGn5+Y98KwVuSgoxPBEQ+4rM0W2c0VmFGS0aLfOmNYU+3jjh/oTmUdbWuvixexkf0CiPqLcUcHLTRnf+HsR3VclGV/fDITAG/IkMkERnH2+8lezhc9Z+MY1qyWQfWzMYtNfjBI+3V1aQqEfYzGWLdIq+Mjf0TQESwAotZI=
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: 5069e9b5a5cf6f37
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=L9602YtjCZvkgKXJX/4nGiLavHKNeG5UbxQ3v9crY+GOIjHhUbd56BzhvrMfEMiLzHtHhcY5uxr0DzOfmfCYzG4a3/7YBHausH6/TDB0X+bZY5bUKJAF7z37ewRYFseND9p+u2zwlIGNgzjK6MB+W6S3CH48aPXX/ZjE8SDoEzfILfYslgEMyF26HvgvkJbLzlnfQc9KnE55WYhjBjWyrGYqz7U4liFcEunMVHIvj9RgMzg3mt4aXj1NtmO6AT3nc+p4iXWY0zyRURn+aEUd/w1dnhgHfUXoAKpTYiZZid0IoZTHUpG9ArXrZVf44NXATv4a7EUOy7n56zaNVUf19w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=t2Mnvw0QZE5ZpKPW0qLaBnpx49u7HpnQ674NfhAxXcU=;
 b=ldYL2QXzAh9m4qSRHKesVrULOpOZYoWanYaIcJAHKxCwLKWW0xXLNb1R/kyu7omx4pNu9u2+6uUp/JNRZ9JbChcazdcFDX6l5O6ksrJ0O3OiLOlPjtyJZGrrx3d8ij4UnptLQqAf/294Zh4x5Z1gU5/gHCq0XZ8donMiA6HL+jGlnG9np3tiXL7HXOg8ZrnOzs2eIexH8WuTi1mFRReON+Ctm9rFtSnpcvTWOwS0oMC7OCHuccO1JhmhtIH3rO2Z8kk82JPEJyr4bC7p8a+fzRbaQLTZBrlf41I4p2hQNTNU3ljIcEWycW91hAVlboe2cjlewb5+Ry67ntyelMpwEg==
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=t2Mnvw0QZE5ZpKPW0qLaBnpx49u7HpnQ674NfhAxXcU=;
 b=5Yo7bfGn5+Y98KwVuSgoxPBEQ+4rM0W2c0VmFGS0aLfOmNYU+3jjh/oTmUdbWuvixexkf0CiPqLcUcHLTRnf+HsR3VclGV/fDITAG/IkMkERnH2+8lezhc9Z+MY1qyWQfWzMYtNfjBI+3V1aQqEfYzGWLdIq+Mjf0TQESwAotZI=
From: Henry Wang <Henry.Wang@arm.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>
CC: Xen-devel <xen-devel@lists.xenproject.org>, George Dunlap
	<George.Dunlap@eu.citrix.com>, Jan Beulich <JBeulich@suse.com>, Stefano
 Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>, Julien Grall
	<julien@xen.org>, =?iso-8859-1?Q?Roger_Pau_Monn=E9?= <roger.pau@citrix.com>
Subject: Re: [PATCH for-4.18 2/3] CHANGELOG: More 4.18 content
Thread-Topic: [PATCH for-4.18 2/3] CHANGELOG: More 4.18 content
Thread-Index: AQHaC/0C5WnM0xckZUq1qixY/5thorBj7ZwA
Date: Tue, 31 Oct 2023 14:02:01 +0000
Message-ID: <A2943E4F-4978-426D-B217-A0979372C405@arm.com>
References: <20231031131954.3310725-1-andrew.cooper3@citrix.com>
 <20231031131954.3310725-3-andrew.cooper3@citrix.com>
In-Reply-To: <20231031131954.3310725-3-andrew.cooper3@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_|GV1PR08MB10600:EE_|DU2PEPF0001E9BF:EE_|AS2PR08MB9048:EE_
X-MS-Office365-Filtering-Correlation-Id: 920797a2-491c-474a-bd34-08dbda19f9ab
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:
 oQNivAyv0UVhkggcGpbTudsC1bLlnDwJVLERwQcTt1hEKWNKP8D4O4Nkc62N9d7OrP4Z8+dz0WWp5Vt9RIdOSP7xO9a9drOONmL9YZmy0KyuyZlDPOpJ3aj1hA1ffz1SJAcMxoVMYHUk++IG0ksX3ZhtHiLO9OOPg7H2CU0qe5lUrRehmtt7VGImYQ9pW4aX+z1sF3UALmMlEsrM1czTKsg8kKvFjHCCjiSzpdTLiCm56EEvb30JPdNYJft6RgsDkBzClfiaNJZeEMe5k0y4Kn/DgiInFKk/N0FUTkW8TNTxcur/VXpu9HS81yDqn4/gqzgDRvg3OK1CkVx3pSMqvBfBBr5ofwI6NWQUr/2gWIVFDyU/8xUuEbdTxgvXEN8BpUSi8bqHFwg/g4vhTbJF7tFkPzcSGumCcGH+drZvUF2/uJLsN3t738Qq0JsdzyIdsuKvQLCZc9owX+V5JVHKRYzxb3HNgGIL+8nz9PVRipt4F7pYFL2H8GZQPegrwWmEX7XW0fdya1kJVJWMSGA2LcWIZmvVy1kQugvKToAL0vQi2apYhtIRxj9tXJjHCqPupbfljGGr/Rc2HVh8PPuO1tdPYqsw6RZk+Rreuo5aK7dnBfdXaac6VcUcDJXza0smBigz9cs3OY7uga4VSXYnbgbznqYmildwESrPGFVSbHiAONNXmNTTBRiJpb0sNISM7nXZZLqxe7jzPB1NXiJ0vQ==
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)(396003)(39860400002)(346002)(136003)(230922051799003)(186009)(64100799003)(451199024)(1800799009)(6512007)(2616005)(26005)(38100700002)(38070700009)(558084003)(33656002)(86362001)(36756003)(122000001)(2906002)(6486002)(6916009)(478600001)(71200400001)(6506007)(53546011)(66446008)(66476007)(8936002)(41300700001)(4326008)(64756008)(54906003)(316002)(8676002)(91956017)(66556008)(5660300002)(66946007)(76116006)(207903002)(219803003)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="iso-8859-1"
Content-ID: <1ED8ED7B55C3CD458B2D96DECF1822BF@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV1PR08MB10600
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:
 DU2PEPF0001E9BF.eurprd03.prod.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	67e8835d-ed1e-4fe7-55a4-08dbda19f47d
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	2ADmKzh95R191Kyi5nClOvo1NgwpeHTvLGz37cqsqMWWh7N7G+9OVcua+s4Qoi/yXBsd5ED50e4cPDJtOxSoiiiNj+1dAxEHASyksdDus8+3PMTMYavhdpuKRvE3CqgPAoR9EpYbDEf4tREjUHrLv3+ceX7iYBy7mTl42mIRcdfEuwBUBjB786/kBUX3MlRoTe5nVoptLSyYcNmiy35LtU3sV8LaMEh7c7jbVFM+H3pF2nhYdwwdvBdF0z7EZTf4BSjS3jpQZ92UpyaTlCNqPnuFGBHWNOPKaB8bg+rgr8LhKLQZh0SvxsDj72AB+nXR3WGWexP1yUjYCE/p8+UKxU+RdNOPOzEfAXALU53FcDWqgsMJCnntQHuChJ+FbaV2lGiYhDUC7gEsmnZnt1VR5rVhwqH5hnRLnyxIhtNhoe0nVS+G8Uaq4pNzdrNBYHqbAWMBcHEmbfMvQt6Ndq6M3ma6Hy5nOPa6ZCqONdHelLt0dXNGZ2d14zEplvIhJ8Y+Nqf/9y2MsZW+He7P8xmgQlYCndZ/EAWVV4vr+SMa+8r7yJfFtYE/niXpvnFPmEIUikO7WkXqBXo1IfK9B71QOThEWSNaVJTLROYn8s9i2h0sngNcFQqg9SHMJzERqlUt+qQpVepW9Ew4x6TY/qBEodhdwKkQ6rqWSHWYPItXsNHumKMGSphth8iHsxtH2xbA85vek3wIFOTqdIxTA4t00TRfidnMM9w+gNBc0/W56ZX++YaMkfYr6SCmiKEgCKsR5tcevL6MVXCl6JpdNI+q52iEA4ZhMeyrvTaAnGfCKKA=
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)(346002)(376002)(230922051799003)(82310400011)(64100799003)(186009)(1800799009)(451199024)(46966006)(40470700004)(36840700001)(2906002)(6486002)(70206006)(70586007)(5660300002)(478600001)(54906003)(316002)(41300700001)(53546011)(6512007)(40460700003)(6506007)(2616005)(107886003)(26005)(8936002)(8676002)(36860700001)(40480700001)(336012)(47076005)(82740400003)(81166007)(36756003)(4326008)(356005)(86362001)(558084003)(33656002)(6862004)(219803003)(207903002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 31 Oct 2023 14:02:10.0720
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 920797a2-491c-474a-bd34-08dbda19f9ab
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:
	DU2PEPF0001E9BF.eurprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS2PR08MB9048

Hi Andrew,

> On Oct 31, 2023, at 21:19, Andrew Cooper <andrew.cooper3@citrix.com> wrot=
e:
>=20
> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>

Acked-by: Henry Wang <Henry.Wang@arm.com>
Release-acked-by: Henry Wang <Henry.Wang@arm.com>

Kind regards,
Henry



From xen-devel-bounces@lists.xenproject.org Tue Oct 31 14:06:47 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 14:06:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625801.975455 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxpO5-0007dz-Lr; Tue, 31 Oct 2023 14:06:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625801.975455; Tue, 31 Oct 2023 14:06: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 1qxpO5-0007ds-J7; Tue, 31 Oct 2023 14:06:33 +0000
Received: by outflank-mailman (input) for mailman id 625801;
 Tue, 31 Oct 2023 14:06: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=9ZX9=GN=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qxpO4-0007dm-3D
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 14:06:32 +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 b06a7948-77f6-11ee-9b0e-b553b5be7939;
 Tue, 31 Oct 2023 15:06:30 +0100 (CET)
Received: by mail-ed1-x536.google.com with SMTP id
 4fb4d7f45d1cf-53e3b8f906fso9379287a12.2
 for <xen-devel@lists.xenproject.org>; Tue, 31 Oct 2023 07:06:30 -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
 u14-20020a50c04e000000b0053f10da1105sm1201315edd.87.2023.10.31.07.06.29
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 31 Oct 2023 07:06: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: b06a7948-77f6-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1698761189; x=1699365989; darn=lists.xenproject.org;
        h=content-transfer-encoding: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=vEKOaDU/3vOFeUoZsCZNMGWzQWpICJKcOJOZhjb1YVQ=;
        b=amDAe1gre16fgebZ0WuasQakA5uqH1bg9X0bqP2WwBIFjnbJvUWVoUu4WjEbpt72NG
         zaqj65o46BIpC94l7huwlttfEYP3yNAEGx6i+dohFfgcR5mrRbb8EgHGFWpgPu75jZDd
         nS4eBJb4dA0MP4D9PXnYq/emlZOe3lWrvelr4=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698761189; x=1699365989;
        h=content-transfer-encoding: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=vEKOaDU/3vOFeUoZsCZNMGWzQWpICJKcOJOZhjb1YVQ=;
        b=e1OUtKMrBUb7HvyePQrRHpqM/a9+An2Leq7tDFMS03JOIUBalYz+XkRO7kthB9Kceb
         9yQaVe1DgRwp5d3NxT9Njm93oeZHeDKjn/Q5HaCaRX8LV8xZBWrkVQSPHVx8jKNoqPJ5
         oFi8BIFzfHQA8N1Zr3r7pcT4+v9h0iEpkZBo1+QzFysO7VfK3qnU3AtTLBwNmjYT/xNR
         69yAc1f9EOxb//l1FSfbDMlXH04cxCXVVTFXzAtbDZGabpBIyFevo+Y9uXEKx2kSdjMd
         vq0vUbuAwyckTgnjO4t8nEkBeGJG9AvIUIM3msEW106hpk0+902NAhUxNHhwW05Lc6Fw
         TyHA==
X-Gm-Message-State: AOJu0YwBy7z9QbRIqtY97g23yr4AJt7wa9K3jJH691lgfpwtPNvcOzbQ
	Ml0TibuAb5DdPNEykqVwf9eLAg==
X-Google-Smtp-Source: AGHT+IHuOCa7hVQttk+aY1nR4zXKl3rVC7ah/dToz7dorOSM0obTrI+JJPk/3ElXfGJLUsoFdDJDuw==
X-Received: by 2002:a50:d583:0:b0:53e:ec17:c885 with SMTP id v3-20020a50d583000000b0053eec17c885mr10470493edi.10.1698761189685;
        Tue, 31 Oct 2023 07:06:29 -0700 (PDT)
Message-ID: <a2c46e32-98e5-407b-8b0d-5f4f319b68f1@citrix.com>
Date: Tue, 31 Oct 2023 14:06:28 +0000
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH for-4.19 3/3] CHANGELOG: Keep unstable section
Content-Language: en-GB
To: Julien Grall <julien@xen.org>, Xen-devel <xen-devel@lists.xenproject.org>
Cc: George Dunlap <George.Dunlap@eu.citrix.com>,
 Jan Beulich <JBeulich@suse.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: <20231031131954.3310725-1-andrew.cooper3@citrix.com>
 <20231031131954.3310725-4-andrew.cooper3@citrix.com>
 <d2a5b85e-e25a-458e-b3ad-0821eb106e85@xen.org>
 <37bcdf0c-75be-4390-8758-d53f097d5b88@citrix.com>
 <1bac4eda-a0d8-4dd8-83ba-9ad78eb2947e@xen.org>
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: <1bac4eda-a0d8-4dd8-83ba-9ad78eb2947e@xen.org>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit

On 31/10/2023 1:45 pm, Julien Grall wrote:
> If you want to go down that route, then please update the
> docs/process/branching-checklist.txt. Otherwise, I will continue to do
> as I did previously.

It *is* in the checklist, and for all previous releases even 4.17, the
staging section was opened at the time of branching.

The thing that is different between 4.17 and previously is that 4.17
called it "unstable" where previously (and in the checklist) it says to
make the new section match the updated Xen major/minor number.

~Andrew


From xen-devel-bounces@lists.xenproject.org Tue Oct 31 14:10:16 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 14:10:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625807.975465 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxpRf-0000u1-56; Tue, 31 Oct 2023 14:10:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625807.975465; Tue, 31 Oct 2023 14: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 1qxpRf-0000tu-1g; Tue, 31 Oct 2023 14:10:15 +0000
Received: by outflank-mailman (input) for mailman id 625807;
 Tue, 31 Oct 2023 14:10: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=kxST=GN=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qxpRd-0000to-OV
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 14:10:13 +0000
Received: from EUR01-DB5-obe.outbound.protection.outlook.com
 (mail-db5eur01on0621.outbound.protection.outlook.com
 [2a01:111:f400:fe02::621])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 343d5679-77f7-11ee-98d6-6d05b1d4d9a1;
 Tue, 31 Oct 2023 15:10:11 +0100 (CET)
Received: from DU2P250CA0025.EURP250.PROD.OUTLOOK.COM (2603:10a6:10:231::30)
 by DB9PR08MB9538.eurprd08.prod.outlook.com (2603:10a6:10:452::8) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.27; Tue, 31 Oct
 2023 14:10:08 +0000
Received: from DU6PEPF00009529.eurprd02.prod.outlook.com
 (2603:10a6:10:231:cafe::a7) by DU2P250CA0025.outlook.office365.com
 (2603:10a6:10:231::30) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.28 via Frontend
 Transport; Tue, 31 Oct 2023 14:10:08 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DU6PEPF00009529.mail.protection.outlook.com (10.167.8.10) with
 Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6954.19 via Frontend Transport; Tue, 31 Oct 2023 14:10:07 +0000
Received: ("Tessian outbound 385ad2f98d71:v228");
 Tue, 31 Oct 2023 14:10:07 +0000
Received: from 57d58e60714b.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 B7768E50-6FFB-493A-A2D5-ECF8C0C5537A.1; 
 Tue, 31 Oct 2023 14:10:00 +0000
Received: from EUR03-AM7-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 57d58e60714b.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Tue, 31 Oct 2023 14:10:00 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by VI1PR08MB10008.eurprd08.prod.outlook.com (2603:10a6:800:1cb::21)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.29; Tue, 31 Oct
 2023 14:09:58 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::ae6e:f96c:f2f3:efc9]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::ae6e:f96c:f2f3:efc9%4]) with mapi id 15.20.6933.028; Tue, 31 Oct 2023
 14:09: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: 343d5679-77f7-11ee-98d6-6d05b1d4d9a1
ARC-Seal: i=2; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=pass;
 b=jGOJo02HeExwYKbl7Pt4hA5ePIz1cmNoism6YDpmHKp0s3oaTwczR5srg09fIwsTpP3n/WAldkZTkkWw93qiFW4WI21Gtwe3Qm4/atk4CioRoeLICeHZC0d9kO8vel3dVHUK+PZmgiogkiN5QczpHzCvLZVlLjkOeYKc7F7f1B/zXI9uQ2CsMdmo7QFRNaLmptzxnp6C6OhSYz0gy7t20uTzdW+Bpe5Fv6+2e4KO3QgrZ45WeR4iZjkutGvjl5MierK7E1mWHvhkT3YYwVU0qWk//YV+DMsaR8lo5TiyKoLaW/obVn0f1xbtUowuwBt0S4NlW+l1Uv/9oK/VM6MLWQ==
ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=iIgyZkuVpzqLvHYDvaU2BO0kLhV1pCNCSpHYMBJvajE=;
 b=f+lznHg5V58+2AZBNxr0lY5O4v/2O+6nCD0AA56Wut6haQ+9SjadV4IDHWfAkBpwT0XX70297dPO1cNA7KzWONT+ZhMNVZnB/fFmL1wohNB18Wo2H/wKLDyAboip+CY65A9roC6ZaSPha0qjQe8IJTwyHgEetW1OJyJmIE5H6+ekMlXz2LouVyALFVujenpm+mn7onGqAJYbbcCphRHvwgSoJ1XWFsqtyTgREkQ/BDuJ5o3l+swuhc5FJTSe89JKEKwMZehnLi3yEbFlJhJVl5HBXKJulg7+ciSCpZlediJVVH0H1IirHNdWOlmF2E5evoALYXWAyAWwRI3P32rH7Q==
ARC-Authentication-Results: i=2; mx.microsoft.com 1; spf=pass (sender ip is
 63.35.35.123) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=arm.com;
 dmarc=pass (p=none sp=none pct=100) action=none header.from=arm.com;
 dkim=pass (signature was verified) header.d=armh.onmicrosoft.com; arc=pass (0
 oda=1 ltdi=1 spf=[1,1,smtp.mailfrom=arm.com] dkim=[1,1,header.d=arm.com]
 dmarc=[1,1,header.from=arm.com])
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=iIgyZkuVpzqLvHYDvaU2BO0kLhV1pCNCSpHYMBJvajE=;
 b=MNWqB9JvcNygn2jvTas/soL65tkf5UmLLDuXtk8nJAtV0EDOw/7SlZcFMeaQw1YmDrc9ILJt31ddGuSuosVBohYEvmweuf0qgx/vZUsZqYy1aiBI89ayKusZadUhJL3Rkk3y5okDj+CpRS3bgK5+AWLWcsoBU6rcGCRkzXMTWo0=
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: 8cd135ab22bb880c
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=dVZKOZDB15oyFjlgYOW/F05t57aU+qEIkrOdBzE6ppZqvgSapPHQVaZsH+Q0X+X4LMLoI6mxMANYkuSM54eY01KURbSbCBkuVxM5aYdcLI6kZZlZ2qpO+rv0xJMBgyv7Xg2zj+R6rzncMhsxwaDxSUz7wKk0pyDWRHN+Ex8U02bwW1VwRN7wXAXAb96gCL5ve6Kc+mzTIYGalofB9mvvjwdhVcEgiP7uW88By3iLRFH0Z7qeVYA5+pJt/WHrGmvF+OP2kEnmHySs0kJ5TQbpTRlEOIi+QJxa6S5Ih4BzYXdUo+mpDgfhvSSnp8YZmGqeYR54ZUd/C8z8NzhFLiGMWw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=iIgyZkuVpzqLvHYDvaU2BO0kLhV1pCNCSpHYMBJvajE=;
 b=JsOsA7HS8lis5fgwY99yLsRR+MytxHkMCxsDau9/I37EB/mEO1HBulxiVxkHJkT69hicDBZa4UFpKmf0qdgkILeEEQirTLg3srDJLAPsGks/HKIziwuSxu/rKGHatQ5jk2KbnNg9GZPyiYkL7r2x8XRcyOUSj5zFzu77dk59eE+vKx7IQ8rS6QHjifeenRY4RNltLngvQn7B5HqV+smF5HSQda22xee5JXuvTs69c4Rl7/DYhLy8T5mU9OTf26p76GGymjAw44JClbGkh9jVwF09oC4wzdP4N9Hnp4cb+6gn955ZwI1C4sJxS2tUErz7RMLdugU/MF13yUL4tfYT0w==
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=iIgyZkuVpzqLvHYDvaU2BO0kLhV1pCNCSpHYMBJvajE=;
 b=MNWqB9JvcNygn2jvTas/soL65tkf5UmLLDuXtk8nJAtV0EDOw/7SlZcFMeaQw1YmDrc9ILJt31ddGuSuosVBohYEvmweuf0qgx/vZUsZqYy1aiBI89ayKusZadUhJL3Rkk3y5okDj+CpRS3bgK5+AWLWcsoBU6rcGCRkzXMTWo0=
From: Henry Wang <Henry.Wang@arm.com>
To: Julien Grall <julien@xen.org>, Andrew Cooper <andrew.cooper3@citrix.com>
CC: Xen-devel <xen-devel@lists.xenproject.org>, George Dunlap
	<George.Dunlap@eu.citrix.com>, Jan Beulich <JBeulich@suse.com>, Stefano
 Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
	=?utf-8?B?Um9nZXIgUGF1IE1vbm7DqQ==?= <roger.pau@citrix.com>
Subject: Re: [PATCH for-4.19 3/3] CHANGELOG: Keep unstable section
Thread-Topic: [PATCH for-4.19 3/3] CHANGELOG: Keep unstable section
Thread-Index: AQHaC/z+qewsCH8hs0O77m1LKul+n7Bj5TMAgAAB74CAAAHmgIAABs4A
Date: Tue, 31 Oct 2023 14:09:58 +0000
Message-ID: <35740A02-1856-4604-8BC4-FA5A6EB41526@arm.com>
References: <20231031131954.3310725-1-andrew.cooper3@citrix.com>
 <20231031131954.3310725-4-andrew.cooper3@citrix.com>
 <d2a5b85e-e25a-458e-b3ad-0821eb106e85@xen.org>
 <37bcdf0c-75be-4390-8758-d53f097d5b88@citrix.com>
 <1bac4eda-a0d8-4dd8-83ba-9ad78eb2947e@xen.org>
In-Reply-To: <1bac4eda-a0d8-4dd8-83ba-9ad78eb2947e@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_|VI1PR08MB10008:EE_|DU6PEPF00009529:EE_|DB9PR08MB9538:EE_
X-MS-Office365-Filtering-Correlation-Id: ce78d2df-e6d3-4a25-9e31-08dbda1b1671
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:
 GwkG94Pd75I56wyHrY2CbNYOXRRcmsT1lDCFDz1GcqvvbH86INo/xrhwfVnCEU8lClEzYxzf/Gdsm3QYwdQMBRAT5ABBT2tqSRqWY0RTzjWAE5ZDy1orlc3vmeVk6zqGJzK9Rs1Uhf8W13UHrZGfkOz50YNU76aounMKR+ERBn6JvsO3tzhqpkCDzSRNC/y7wlIGFTDwy5FjC23BxLIZ2H8fvdrKTrKe9uw0h54Obx6gNEVXMx05+IB5E+doGg0UT/Ecfyrwu46U87AXw1VLvOfVyk1dWNVh7uNy+PGuOPOoixG6lFqKcV6iiVB6+4o50pZErP4ffETLPon3V1Uo2HER/tmiWJmP96qXT9IxUCLwcR2UmWkXOEXnvq3VhON5qZrTFkMHJz1U/Y5bQW2orIobpC+3nn5T9evl3ZpX/SXDVeGPW58kFuJ4JQ+kE8+3/p9wplpMJxXbu6gLtR9yKoi+F0rY24BcU6NRvHcUHavc1foh6tb1xMEPRr2MbRdSHHFb97kfZR5SfJPXr8ZfFJi4hF5XQCf+IXPp9DU/0RbF4eXYC1vJ+ViqmHNIJ9xCb0iBQ6rfEtPXMORvYoCrPBQHs3uAB1d9Sb67TioUMeG/IX8bC/UyUliyqqbVw3GJDF9zJliGizivzWSAXQCkGV7cvUhyfxs+WlNTZdBq762S69G0Cc5DmNFR96+Y2rhgQbBba67xNWWGWJBfdbeJAUWLDq0gVvWOe9Hby3SQlaI=
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)(366004)(39860400002)(396003)(230922051799003)(64100799003)(1800799009)(186009)(451199024)(38070700009)(83380400001)(2616005)(26005)(6506007)(71200400001)(53546011)(6512007)(33656002)(36756003)(86362001)(122000001)(38100700002)(6486002)(966005)(478600001)(64756008)(54906003)(66446008)(8676002)(4326008)(8936002)(316002)(41300700001)(5660300002)(2906002)(66556008)(91956017)(76116006)(66476007)(110136005)(66946007)(219803003)(207903002)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <F3093D0216496A43ADEED82D45EB3E08@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR08MB10008
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:
 DU6PEPF00009529.eurprd02.prod.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	242b3c2a-25ff-41b7-65e9-08dbda1b10f9
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	B2GFqoaSzvz2vDPNqqwBtJtWeQ67mTmBiH39wS9FGqFNhliXhh7/E3jr4PK7j/Hc8XaGy88OnoZtzZeaR4bE8BXmbagmYI09ax3sMIjEBE+KiNZkH+xVI6AP5jAQZFRz9Fj3j+H7wWZDCworG0Ek+kliyLgTKMYPxaeqRvwA4oPG3FZtlNcfaFaXZo/QF3DDwKLsre7Ps+clIXF4M18libdaNwvo+rp0qnOAo/zMfqJGHoTN288SI3drxQyqFo6gMxxH8g01Izw5c5iMTr+Fwn3z9hrIOPkPukpsTnNvNGXci/Qsb3lbqCaARG5/6MEkacvwhgDknkz2j1+TElO2zoQvL+2thh5NnhR8Sl/lMT2qMaqoxEqS0iQB0zj5ZHbO/0IXfIbVEpJ0T2CjXxvToDx5uNxv71K45WDg31WCtLtufaoJbe1PlbQ8nv9+ZR8Xxy+Y8zWdnlbpOEQH0XV2qqaBGZWhf2WdM4QrVz5bnkdkseDenLUuHE7o5/nw/y4ZSN2C35EKZ7Laat5gs/kjeB40d5YuSnmK/KvA6Qe2exrHiA7VDvH1mAUnjqsOOCPeacQe/bYWEmUIEcEkHoS0K/Woz87WNBKgd+WTSmFslwwArDldbwMd2WoLKKqsfQnjPdnOF/4NFmRA0ee+UaWS9EMiMsjbAhIQ94sylZNVW12R7m1x0Nq4v4ysKb9ZLPTlDWaSbKfwj0gZZ1koFTG5grA0BDhNEnt/tfceTyFLfFpis8wzVtRPrH0wzOeiy3/CMxRsRKU3k3SKwVzr0ipWA510h4HZegmMP2qcRpjr1bkUc9oUoyTMSweTBol4ZGXtfdEF20Zw1VcRD8vZ1/+DiA==
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)(346002)(396003)(230922051799003)(64100799003)(82310400011)(1800799009)(186009)(451199024)(36840700001)(46966006)(40470700004)(107886003)(40460700003)(2906002)(5660300002)(41300700001)(4326008)(8936002)(8676002)(36756003)(86362001)(40480700001)(33656002)(82740400003)(110136005)(316002)(54906003)(36860700001)(47076005)(356005)(81166007)(70586007)(83380400001)(70206006)(2616005)(336012)(53546011)(26005)(6506007)(6512007)(966005)(478600001)(6486002)(219803003)(207903002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 31 Oct 2023 14:10:07.8574
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: ce78d2df-e6d3-4a25-9e31-08dbda1b1671
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:
	DU6PEPF00009529.eurprd02.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR08MB9538

SGkgSnVsaWVuLCBBbmRyZXcsDQoNCj4gT24gT2N0IDMxLCAyMDIzLCBhdCAyMTo0NSwgSnVsaWVu
IEdyYWxsIDxqdWxpZW5AeGVuLm9yZz4gd3JvdGU6DQo+IE9uIDMxLzEwLzIwMjMgMTM6MzgsIEFu
ZHJldyBDb29wZXIgd3JvdGU6DQo+PiBPbiAzMS8xMC8yMDIzIDE6MzEgcG0sIEp1bGllbiBHcmFs
bCB3cm90ZToNCj4+PiBIaSwNCj4+PiANCj4+PiBPbiAzMS8xMC8yMDIzIDEzOjE5LCBBbmRyZXcg
Q29vcGVyIHdyb3RlOg0KPj4+PiBTaWduZWQtb2ZmLWJ5OiBBbmRyZXcgQ29vcGVyIDxhbmRyZXcu
Y29vcGVyM0BjaXRyaXguY29tPg0KPj4+IA0KPj4+IEhlbnJ5IGFscmVhZHkgcHJvdmlkZWQgYSBz
aW1pbGFyIHBhdGNoIFsxXS4gVGhlIG9ubHkgcmVhc29uIGl0IGlzIG5vdA0KPj4+IHlldCBjb21t
aXR0ZWQgaXMgYmVjYXVzZSB3ZSBoYXZlbid0IHlldCBzZXQgYSBmaW5hbCBkYXRlIGZvciA0LjE4
IGFuZA0KPj4+IEkgd2FudCB0byBhdm9pZCBhbnkgY2xhc2ggd2hlbiB0aGF0IHBhdGNoIHdpbGwg
YXBwZWFyLg0KPj4+IA0KPj4+IENoZWVycywNCj4+PiANCj4+PiBbMV0gMjAyMzEwMjMwOTIxMjMu
MTc1NjQyNi01LUhlbnJ5LldhbmdAYXJtLmNvbQ0KPj4gVGhpcyBzZWN0aW9uIHNob3VsZCBub3Qg
aGF2ZSBiZWVuIGRlbGV0ZWQgaW4gZDlmMDdiMDZjZmM5Lg0KPiANCj4gV2h5PyBUaGlzIGhhcyBh
bHdheXMgYmVlbiBvdXIgcHJvY2Vzcy4gV2Ugc2hvdWxkIG5vdCBzaGlwIDQuMTggd2l0aCB0aGUg
VU5TVEFCTEUgc2VjdGlvbi4gU28gaXQgd2FzIGNvcnJlY3QgdG8gZGVsZXRlIGl0IGluIGQ5ZjA3
YjA2Y2ZjOS4NCg0KSSBhZ3JlZSB3aXRoIEp1bGllbiBvbiB0aGlzLiByZW1vdmluZyB0aGUg4oCc
dW5zdGFibGXigJ0gc2VjdGlvbiBpcyB0aGUgdHJhZGl0aW9uIHRoYXQgd2UgaGFkIHByZXZpb3Vz
bHksDQpzZWUgYmVsb3cgKEkgYW0gdXNpbmcgZ2l0aHViIGxpbmsgZm9yIGEgZWFzaWVyIGZpbmRp
bmcgb2YgaGlzdG9yeSBjb21taXRzKToNCi0gWzFdIGZvciA0LjE1DQotIFsyXSBmb3IgNC4xNg0K
LSBbM10gZm9yIDQuMTcNCg0KSSBhbSBub3Qgc3VyZSB0aGVyZSBpcyBhbnkgc3BlY2lmaWMgcmVh
c29uIGZvciBjaGFuZ2luZyB0aGUgZXhpc3RpbmcgcHJvY2Vzcy4NCg0KVGhlIG90aGVyIHR3byBw
YXRjaGVzIGluIHRoaXMgc2VyaWVzIGxvb2tzIGdvb2QgYW5kIEnigJl2ZSBhY2tlZCBib3RoIG9m
IHRoZW0uIFRoYW5rcyBmb3IgdGFraW5nIGNhcmUNCm9mIGl0Lg0KDQpbMV0gaHR0cHM6Ly9naXRo
dWIuY29tL3hlbi1wcm9qZWN0L3hlbi9jb21taXQvYjhlYWVkYmI1MWU4ZTUxODA4NzI4ZDdkZTM5
MmQzZTkxMTdmZGVjZQ0KWzJdIGh0dHBzOi8vZ2l0aHViLmNvbS94ZW4tcHJvamVjdC94ZW4vY29t
bWl0L2VlZjI2NmViNzcwMTI4ZGIwZDUyNTgwMDliNzQ0ZjBlMGMzMWM5YmQNClszXSBodHRwczov
L2dpdGh1Yi5jb20veGVuLXByb2plY3QveGVuL2NvbW1pdC8wODI5YTJmM2ZjYWJhOTIzM2RmZGNl
OWE4Y2VlOWQxMjZhNTFiZDRkDQoNCktpbmQgcmVnYXJkcywNCkhlbnJ5


From xen-devel-bounces@lists.xenproject.org Tue Oct 31 14:15:26 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 14:15:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625812.975475 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxpWa-0002e4-SK; Tue, 31 Oct 2023 14:15:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625812.975475; Tue, 31 Oct 2023 14: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 1qxpWa-0002dx-Pi; Tue, 31 Oct 2023 14:15:20 +0000
Received: by outflank-mailman (input) for mailman id 625812;
 Tue, 31 Oct 2023 14:15: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=k1/u=GN=arm.com=Luca.Fancellu@srs-se1.protection.inumbo.net>)
 id 1qxpWZ-0002dr-3a
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 14:15:19 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur04on2077.outbound.protection.outlook.com [40.107.7.77])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id eb16e1ef-77f7-11ee-98d6-6d05b1d4d9a1;
 Tue, 31 Oct 2023 15:15:18 +0100 (CET)
Received: from AM0PR10CA0121.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:208:e6::38)
 by AS8PR08MB9696.eurprd08.prod.outlook.com (2603:10a6:20b:614::18)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.27; Tue, 31 Oct
 2023 14:14:39 +0000
Received: from AM1PEPF000252DF.eurprd07.prod.outlook.com
 (2603:10a6:208:e6:cafe::ac) by AM0PR10CA0121.outlook.office365.com
 (2603:10a6:208:e6::38) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.29 via Frontend
 Transport; Tue, 31 Oct 2023 14:14:39 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM1PEPF000252DF.mail.protection.outlook.com (10.167.16.57) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6954.19 via Frontend Transport; Tue, 31 Oct 2023 14:14:38 +0000
Received: ("Tessian outbound 5d213238733f:v228");
 Tue, 31 Oct 2023 14:14:38 +0000
Received: from a285a782e20c.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 A77F009E-C6A5-4ECC-A554-CBAE6A703632.1; 
 Tue, 31 Oct 2023 14:13:53 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id a285a782e20c.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Tue, 31 Oct 2023 14:13:53 +0000
Received: from AM6PR08MB3749.eurprd08.prod.outlook.com (2603:10a6:20b:8f::22)
 by AS2PR08MB10054.eurprd08.prod.outlook.com (2603:10a6:20b:649::20)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.27; Tue, 31 Oct
 2023 14:13:51 +0000
Received: from AM6PR08MB3749.eurprd08.prod.outlook.com
 ([fe80::76e6:a7e1:1592:866]) by AM6PR08MB3749.eurprd08.prod.outlook.com
 ([fe80::76e6:a7e1:1592:866%3]) with mapi id 15.20.6933.022; Tue, 31 Oct 2023
 14: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>
X-Inumbo-ID: eb16e1ef-77f7-11ee-98d6-6d05b1d4d9a1
ARC-Seal: i=2; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=pass;
 b=h8Vlq0YAUwUmqTY0bqwv3dMBDm1Qt72FOxjTqZ9G5gWq5wtjcvj3KyAbtWS8P86noH/VKaYBJcZ9qeJc1GOuTic1ETwmiW4SRA1SDi47Rv4edjfpLP4tPAqhVAuwdV0ynCXt5ElKfeswLCEV/z0o3eor+VJZfu/5m+sPfYiVo5vwuUN8dHWdzfS82uXuD6DjjhCgJieWqUMkJn6heXShBdHdffxdILZy8/Szb8sRPAt/A09ye5v1paQcZLVeImORcLNDgPwrodAiIUfEmWmrrkhFLDO6Fi7dwlnoNKt4hk2cqWtUHkyEZPgeFoMlDuUP1KR1ox9HKug+NIdezdCVaw==
ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=WEooZUmQGmKCow4jTsxUpCM8zslkHcSbt5XsLX0OnKU=;
 b=Kxp5ixVJbcCh2PkGQTtPbip8kVC2zQHOhgr9yfCyGBe5xiif4MvWXsDGgjs+oY8fYuDqaX6FdxGYfreYkxhJCrV6hXKH/6hmdO0Kn9OvHnSQzyUE7CjcHuQWWLSA52kglGygo46giuwZydh8Pi6xomkx2qgJHRArfC/MIJofNxGZwsgSdHRBTBp2arUZeyWdbDdJrd3mFIu8e9TuWEZ0cjscSi612HQDbBc7WUjlIBLDIHU1ZduLkWnU5VMyyRbbmCYnctkt5OC9Yd5AHiZ5UsN86S6fKNYB5K515UHpkkbvl2v+5QxirJOdhs/A+jme9DXKskwEc0PHg3DfhT97+A==
ARC-Authentication-Results: i=2; mx.microsoft.com 1; spf=pass (sender ip is
 63.35.35.123) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=arm.com;
 dmarc=pass (p=none sp=none pct=100) action=none header.from=arm.com;
 dkim=pass (signature was verified) header.d=armh.onmicrosoft.com; arc=pass (0
 oda=1 ltdi=1 spf=[1,1,smtp.mailfrom=arm.com] dkim=[1,1,header.d=arm.com]
 dmarc=[1,1,header.from=arm.com])
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=WEooZUmQGmKCow4jTsxUpCM8zslkHcSbt5XsLX0OnKU=;
 b=ceYiNpmgAVp1JOmfRKTr/kV6VcqlbBY6+KtyuuAv37qceYtXvaCfzw5Hd/z7J/KRTph+iARcRlRRoyM4Yg6DHuf33LKeJGAp2qQpy0gDY3PYOJmnMev5Blydp4ZV01Cl17xc9dkjsN9B3I+yHzbnzysd+m/D+VpTyOnLGcC+44Y=
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: 5c50d159493fd36f
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=h0thC5K6L85g2+5EWFkZ6AZ3PB/CAsfhZD/PwIA5TG4Mg90roJqpUScNZXO1d05CNac6GSMCkr0Dd4IKN4YFwW4F65abBl+UM3RMqm4p0MV7CCxE9dXEZLtW1A2ZXpcOplMf7KhVLwOZOSuT5S2/tjT1ADhf1Ey6c5gZ7+noDRcAZkAynbVm+nz2EBdsuSZcN1bu+DUoRP3cARZ+U4D8RpucbIcLCsF08A65NuXf/U1fd7TDaxoVgn02y6cP4IruTrzNq3mi3BpHIxXXaJ730qMeDPrr7JXmOlrurKqc0M1iwjhf1Amlle4ONOAD1dWRbtSiwMd6uJxx5cqRo7B5uQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=WEooZUmQGmKCow4jTsxUpCM8zslkHcSbt5XsLX0OnKU=;
 b=inH3MZVwSG8SNbfzXynnDoEbf1bzg1yc6NdLF6xy0uG5OHDTz9igRsAz1rfc+1q0AJvGa3DKvFqIqiCv4G1QuKpAXwHEupvpgavdwiIWd8XRA0PQ4UB/uH4wm/sw6rPosN+yQ1qijnClBHWSREfGWm69kZy5UG1Y4FSUxzL60/JyVJ2ZrqStbNMijZXJqr94UZs6jJkqiZtVBRMg4C0wp1zXZpMfNtl/0nhca/7Fe3b7doU+/GTG9ScJI7aLARFBgIsfXQyL0zl0hgxOgfAi0ieRvPvNG4xJu0Q3A27XxwfcXQyCZ7Eq7MBq347moYTRfBqYrM+LsnrCV4vbQQajog==
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=WEooZUmQGmKCow4jTsxUpCM8zslkHcSbt5XsLX0OnKU=;
 b=ceYiNpmgAVp1JOmfRKTr/kV6VcqlbBY6+KtyuuAv37qceYtXvaCfzw5Hd/z7J/KRTph+iARcRlRRoyM4Yg6DHuf33LKeJGAp2qQpy0gDY3PYOJmnMev5Blydp4ZV01Cl17xc9dkjsN9B3I+yHzbnzysd+m/D+VpTyOnLGcC+44Y=
From: Luca Fancellu <Luca.Fancellu@arm.com>
To: Julien Grall <julien@xen.org>
CC: Stefano Stabellini <sstabellini@kernel.org>, Nicola Vetrini
	<nicola.vetrini@bugseng.com>, Xen-devel <xen-devel@lists.xenproject.org>,
	"michal.orzel@amd.com" <michal.orzel@amd.com>, "xenia.ragiadakou@amd.com"
	<xenia.ragiadakou@amd.com>, "ayan.kumar.halder@amd.com"
	<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>, Simone Ballarin
	<simone.ballarin@bugseng.com>, Doug Goldstein <cardoe@cardoe.com>, George
 Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>
Subject: Re: [XEN PATCH][for-4.19 v5] xen: Add deviations for MISRA C:2012
 Rule 7.1
Thread-Topic: [XEN PATCH][for-4.19 v5] xen: Add deviations for MISRA C:2012
 Rule 7.1
Thread-Index: AQHaC/4b2xNoaiIkmUiyfHAuabY8yrBj8OgA
Date: Tue, 31 Oct 2023 14:13:51 +0000
Message-ID: <DFC25ACE-FFBE-43CF-9CE2-90671D122CEC@arm.com>
References:
 <0c86b50a796ba2aaab01e30935ed559ab719d33a.1698418578.git.nicola.vetrini@bugseng.com>
 <98da41d4-f818-44c7-bd3c-b3e3b224ff0d@xen.org>
 <alpine.DEB.2.22.394.2310301544460.1625118@ubuntu-linux-20-04-desktop>
 <ee3c415d-bedd-432e-bf31-6e806b9cf976@xen.org>
In-Reply-To: <ee3c415d-bedd-432e-bf31-6e806b9cf976@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_|AS2PR08MB10054:EE_|AM1PEPF000252DF:EE_|AS8PR08MB9696:EE_
X-MS-Office365-Filtering-Correlation-Id: 724b70f8-08c8-4b82-f89d-08dbda1bb7eb
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:
 xbi/2x8yDWPMI6Y0hWnIDfl/UFUmE5c5nQdO/qFQg2QgSyTLTZr80kmaAVktmttV7wZcwBu9foGYn+QZPKKqYIyQNoYckjYHdT6Tdh1AaJIKBsAlSCKZmZi+IcWAc00OvvSuU3gH9KCGnOfMX/gOTVPx7Zlst3t1gcIeJ5qjsuW99xikQlMDDRgh3ybesPH7GkpJMUAV8F6p6eRFxt7E3lJNjiYdARFao64EbhHdJmdtNQdZlJklQPOZIKYc2+cwCKSn3UY72om2A+c0tZR1ubwUK7ItqDTh5QVlk4UmYWta32ATkTPjDyYjxubOETL0NO93N625TI9mTl6zFNTKPrBZ5Anw+dyI44CVQlO1KRoHbSC7foCVGFmHjRtUTy2imVJstHqevy3ogFPbQ9L1AIovl2dL+uqj9QCnjhpYCYyrGDW4LDx7nBfAMIZKwUgaAbcMjYv3J1jCGO5I3p6gGVSa+RUpq/KvlzyCejjBqN36RZeg+Rv9Bl0YgzEr4BzQzmtHaEouIGPoHqRPA58f+ZGI/izQSpx4woUeI6RZUqzdDYcBORNurrvJWxdGEEDEXN4vrgwM/zXmXmKRN1SPYdXYy3+h6QyYT/d/SYYeDo0xvFySZi0MMSRHLNKip3WRFlrZlxOs6CP+zYxpA2AhAA==
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)(376002)(346002)(39860400002)(136003)(230922051799003)(451199024)(1800799009)(186009)(64100799003)(91956017)(66446008)(66556008)(6916009)(64756008)(54906003)(66476007)(66946007)(76116006)(4326008)(8676002)(8936002)(316002)(33656002)(7416002)(5660300002)(41300700001)(2906002)(86362001)(38100700002)(122000001)(26005)(6512007)(2616005)(38070700009)(478600001)(6486002)(53546011)(71200400001)(36756003)(6506007)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <43B4FC59F0E1B848A1712BDFC9300691@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS2PR08MB10054
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:
 AM1PEPF000252DF.eurprd07.prod.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	837ca6e8-c05d-4116-d086-08dbda1b9b89
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	5e9yqB1O4X8d9rg260c9Hjr/ykHCgE/QfD/PCNHP4DEFY5jj3drm2IpKEhcGKfUm5T7VNd01Z8NhqBnHvRNWbXRASHnubR5c7f8OIN2FWjwKjzeYrHFrQtkntfwYwOhWS0qHF324+yYlZnu5C9p0eT/CvPINzprpWL9yi2zxZ56YmTJjzFucYramBhacKyHVUY9k1n7JAp2/m5ZIQ4vFjtBx/kVyWR1pMoIPuIw7mMayAeQ2uwgaBo97W9GTXaC2+HYMIJWHEwNjxyTUcSRnoAoTvn/Ojj47pyKyBfLvCa1dJJYM40i/k5lrMSWcM9t1xqcWbMnWfg9KJf/95/oDWsNeLfSW7reLUaaEU+G7WQ9jKg/MHoNP4fnOpMrEN/HyOnoSyVVx1kKHFHmEK/mnCMesgArqZDWIdTqZ9F0KM+oGCTMuW8jtlgZt/brpVnHIQWoZ+NvsGgjtcfMrhWXLeXAMMrw4O93CgCJzrSpXmWgoTACdAqX22Nk9NAQAetNM5o+BUySAOCPiL8+ldbv3ChqOTRWl/YfqsUJJHM6wqNbJl6VZHDDtiEYXmHEMH75Rg3Coh9y92maTT5Eg7NqDYiegSk98wZKbAgV22Ni3qFtDJiFESrqLQglxVmLmiAFm3yOowXdt7JooO+VSlxDTETFgd8XWjyXnCu+vbpJZqNoELQwW8cTZHrd5VUEqfycx/0tKET+jWYtak7RzPLJdc57eucMO1hFxwOQLLToSKaVaV0/QqF1QwcwF1bkMVEH9
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)(136003)(396003)(346002)(230922051799003)(82310400011)(1800799009)(451199024)(186009)(64100799003)(40470700004)(36840700001)(46966006)(41300700001)(8936002)(6862004)(4326008)(8676002)(6512007)(6506007)(70206006)(54906003)(316002)(36860700001)(70586007)(2616005)(2906002)(26005)(336012)(5660300002)(356005)(86362001)(81166007)(33656002)(40480700001)(53546011)(47076005)(82740400003)(6486002)(40460700003)(478600001)(36756003);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 31 Oct 2023 14:14:38.7099
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 724b70f8-08c8-4b82-f89d-08dbda1bb7eb
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:
	AM1PEPF000252DF.eurprd07.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB9696

DQoNCj4gT24gMzEgT2N0IDIwMjMsIGF0IDEzOjI3LCBKdWxpZW4gR3JhbGwgPGp1bGllbkB4ZW4u
b3JnPiB3cm90ZToNCj4gDQo+IEhpIFN0ZWZhbm8sDQo+IA0KPiBPbiAzMC8xMC8yMDIzIDIyOjQ5
LCBTdGVmYW5vIFN0YWJlbGxpbmkgd3JvdGU6DQo+PiBPbiBNb24sIDMwIE9jdCAyMDIzLCBKdWxp
ZW4gR3JhbGwgd3JvdGU6DQo+Pj4gSGkgTmljb2xhLA0KPj4+IA0KPj4+IE9uIDI3LzEwLzIwMjMg
MTY6MTEsIE5pY29sYSBWZXRyaW5pIHdyb3RlOg0KPj4+PiBkaWZmIC0tZ2l0IGEvZG9jcy9taXNy
YS9kZXZpYXRpb25zLnJzdCBiL2RvY3MvbWlzcmEvZGV2aWF0aW9ucy5yc3QNCj4+Pj4gaW5kZXgg
ODUxMWExODkyNTNiLi44YWFhYTE0NzNmYjQgMTAwNjQ0DQo+Pj4+IC0tLSBhL2RvY3MvbWlzcmEv
ZGV2aWF0aW9ucy5yc3QNCj4+Pj4gKysrIGIvZG9jcy9taXNyYS9kZXZpYXRpb25zLnJzdA0KPj4+
PiBAQCAtOTAsNiArOTAsMTMgQEAgRGV2aWF0aW9ucyByZWxhdGVkIHRvIE1JU1JBIEM6MjAxMiBS
dWxlczoNCj4+Pj4gICAgICAgICAgICAtIF9fZW11bGF0ZV8yb3AgYW5kIF9fZW11bGF0ZV8yb3Bf
bm9ieXRlDQo+Pj4+ICAgICAgICAgICAgLSByZWFkX2RlYnVncmVnIGFuZCB3cml0ZV9kZWJ1Z3Jl
Zw0KPj4+PiAgICsgICAqIC0gUjcuMQ0KPj4+PiArICAgICAtIEl0IGlzIHNhZmUgdG8gdXNlIGNl
cnRhaW4gb2N0YWwgY29uc3RhbnRzIHRoZSB3YXkgdGhleSBhcmUgZGVmaW5lZA0KPj4+PiArICAg
ICAgIGluIHNwZWNpZmljYXRpb25zLCBtYW51YWxzLCBhbmQgYWxnb3JpdGhtIGRlc2NyaXB0aW9u
cy4gU3VjaCBwbGFjZXMNCj4+Pj4gKyAgICAgICBhcmUgbWFya2VkIHNhZmUgd2l0aCBhIC9cKiBv
Y3RhbC1vayBcKi8gaW4tY29kZSBjb21tZW50LCBvciB3aXRoIGENCj4+Pj4gU0FGDQo+Pj4+ICsg
ICAgICAgY29tbWVudCAoc2VlIHNhZmUuanNvbikuDQo+Pj4gDQo+Pj4gUmVhZGluZyB0aGlzLCBp
dCBpcyB1bmNsZWFyIHRvIG1lIHdoeSB3ZSBoYXZlIHR3byB3YXlzIHRvIGRldmlhdGUgdGhlIHJ1
bGUNCj4+PiByNy4xLiBBbmQgbW9yZSBpbXBvcnRhbnRlbHksIGhvdyB3b3VsZCB0aGUgZGV2ZWxv
cHBlciBkZWNpZGUgd2hpY2ggb25lIHRvIHVzZT8NCj4+IEkgYWdyZWUgd2l0aCB5b3Ugb24gdGhp
cyBhbmQgd2Ugd2VyZSBkaXNjdXNzaW5nIHRoaXMgdG9waWMganVzdCB0aGlzDQo+PiBtb3JuaW5n
IGluIHRoZSBGVVNBIGNvbW11bml0eSBjYWxsLiBJIHRoaW5rIHdlIG5lZWQgYSB3YXkgdG8gZG8g
dGhpcw0KPj4gd2l0aCB0aGUgU0FGIGZyYW1ld29yazoNCj4+IGlmIChzb21lIGNvZGUgd2l0aCB2
aW9sYXRpb24pIC8qIFNBRi14eC1zYWZlICovDQo+PiBUaGlzIGRvZXNuJ3Qgd29yayB0b2RheSB1
bmZvcnR1bmF0ZWx5LiBJdCBjYW4gb25seSBiZSBkb25lIHRoaXMgd2F5Og0KPj4gLyogU0FGLXh4
LXNhZmUgKi8NCj4+IGlmIChzb21lIGNvZGUgd2l0aCB2aW9sYXRpb24pDQo+PiBXaGljaCBpcyBu
b3QgYWx3YXlzIGRlc2lyYWJsZS4gb2N0YWwtb2sgaXMganVzdCBhbiBhZC1ob2Mgc29sdXRpb24g
Zm9yDQo+PiBvbmUgc3BlY2lmaWMgdmlvbGF0aW9uIGJ1dCB3ZSBuZWVkIGEgZ2VuZXJpYyB3YXkg
dG8gZG8gdGhpcy4gTHVjYSBpcw0KPj4gaW52ZXN0aWdhdGluZyBwb3NzaWJsZSB3YXlzIHRvIHN1
cHBvcnQgdGhlIHByZXZpb3VzIGZvcm1hdCBpbiBTQUYuDQo+IA0KPiBXaHkgY2FuJ3Qgd2UgdXNl
IG9jdGFsLW9rIGV2ZXJ5d2hlcmUgZm9yIG5vdz8gTXkgcG9pbnQgaGVyZSBpcyB0byBtYWtlIHNp
bXBsZSBmb3IgdGhlIGRldmVsb3BwZXIgdG8ga25vdyB3aGF0IHRvIHVzZS4NCj4gDQo+PiBJIHRo
aW5rIHdlIHNob3VsZCB0YWtlIHRoaXMgcGF0Y2ggZm9yIG5vdyBhbmQgaGFybW9uaXplIGl0IG9u
Y2UgU0FGIGlzDQo+PiBpbXByb3ZlZC4NCj4gDQo+IFRoZSBkZXNjcmlwdGlvbiBvZiB0aGUgZGV2
aWF0aW9uIG5lZWRzIHNvbWUgaW1wcm92ZW1lbnQuIFRvIGdpdmUgYW4gZXhhbXBsZSwgd2l0aCB0
aGUgY3VycmVudCB3b3JkaW5nLCBvbmUgY291bGQgdGhleSBjYW4gdXNlIG9jdGFsLW9rIGV2ZXJ5
d2hlcmUuIEJ1dCBhYm92ZSwgeW91IGFyZSBpbXBseWluZyB0aGF0IFNBRi14eC1zYWZlIHNob3Vs
ZCBiZQ0KPiBwcmVmZXJyZWQuDQo+IA0KPiBJIHdvdWxkIHN0aWxsIHN0cm9uZ2x5IHByZWZlciBp
ZiB3ZSB1c2Ugb2N0YWwtb2sgZXZlcnl3aGVyZSBiZWNhdXNlIHRoaXMgaXMgc2ltcGxlIHRvIHJl
bWVtYmVyLiBCdXQgaWYgdGhlIG90aGVyIGFyZSBoYXBweSB0byBoYXZlIGJvdGggU0FGLVhYIGFu
ZCBvY3RhbC1vaywgdGhlbiB0aGUgZGVzY3JpcHRpb24gbmVlZHMgdG8gYmUgY29tcGxldGVseSB1
bmFtYmlndW91cyBhbmQgdGhlIHBhdGNoIHNob3VsZCBjb250YWluIHNvbWUgZXhwbGFuYXRpb24g
d2h5IHdlIGhhdmUgdHdvIGRpZmZlcmVudCB3YXlzIHRvIGRldmlhdGUuDQoNCldvdWxkIGl0IGJl
IG9rIHRvIGhhdmUgYm90aCwgZm9yIGV4YW1wbGU6IC8qIFNBRi1YWC1zYWZlIG9jdGFsLW9rICov
DQoNClNvIHRoYXQgdGhlIHN1cHByZXNzaW9uIGVuZ2luZSBkbyB3aGF0IGl0IHNob3VsZCAoY3Vy
cmVudGx5IGl0IGRvZXNu4oCZdCBzdXBwcmVzcyB0aGUgc2FtZSBsaW5lLCBidXQgd2UgY291bGQg
ZG8gc29tZXRoaW5nIGFib3V0IGl0KSBhbmQgdGhlIGRldmVsb3Blcg0KaGFzIGEgd2F5IHRvIHVu
ZGVyc3RhbmQgd2hhdCBpcyB0aGUgdmlvbGF0aW9uIGhlcmUgd2l0aG91dCBnb2luZyB0byB0aGUg
anVzdGlmaWNhdGlvbiBkYXRhYmFzZS4NCg0KDQo=


From xen-devel-bounces@lists.xenproject.org Tue Oct 31 14:15:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 14:15:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625814.975485 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxpX6-0003Ar-4p; Tue, 31 Oct 2023 14:15:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625814.975485; Tue, 31 Oct 2023 14:15: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 1qxpX6-0003Ai-1U; Tue, 31 Oct 2023 14:15:52 +0000
Received: by outflank-mailman (input) for mailman id 625814;
 Tue, 31 Oct 2023 14:15: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=HcxJ=GN=amd.com=Stewart.Hildebrand@srs-se1.protection.inumbo.net>)
 id 1qxpX4-00037Z-DR
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 14:15:50 +0000
Received: from NAM04-MW2-obe.outbound.protection.outlook.com
 (mail-mw2nam04on2061e.outbound.protection.outlook.com
 [2a01:111:f400:7e8c::61e])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id faeb790d-77f7-11ee-9b0e-b553b5be7939;
 Tue, 31 Oct 2023 15:15:46 +0100 (CET)
Received: from CY5PR13CA0023.namprd13.prod.outlook.com (2603:10b6:930::9) by
 IA0PR12MB7601.namprd12.prod.outlook.com (2603:10b6:208:43b::21) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.27; Tue, 31 Oct
 2023 14:15:41 +0000
Received: from CY4PEPF0000E9D0.namprd03.prod.outlook.com
 (2603:10b6:930:0:cafe::20) by CY5PR13CA0023.outlook.office365.com
 (2603:10b6:930::9) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6954.17 via Frontend
 Transport; Tue, 31 Oct 2023 14:15:40 +0000
Received: from SATLEXMB03.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.6954.19 via Frontend Transport; Tue, 31 Oct 2023 14:15:40 +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.32; Tue, 31 Oct
 2023 09:15: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.32; Tue, 31 Oct
 2023 09:15:39 -0500
Received: from [172.28.214.164] (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.32 via Frontend
 Transport; Tue, 31 Oct 2023 09:15: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: faeb790d-77f7-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=WcCjNDtOtPcyhDIAkOU5zot/sV8Ju2VzZyPXWA5z/mABT75A2CKbRJAgzXzoeRIi1DPmqyGXAvVCXG5ysN3bFBtJA2OrSxPhhxPu6rDLUh8pQ9vpeqgXWK/5jD56MtJ14OdBZJVXp/TP7qhy4wCEylWNMKiOTup41ZqR5OAp/oK2SI8J3YnS3WDD7W06X+80uVmPAMA6M+V2hkKrtxD2v3GKNdrzOR93X/e/cidmr85r1sm8uI6nY7/ttFRNJ228FS1QwRX8wBpaYItLVmI5xKBXS8x5m+8hD/YL/qjUcDswQ5kNixUX0qbTcxOcU86wanjwQoDsx7GECk2PMSILug==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=r5YoK7P1dGjRWJBXzcEWlU5MbijPE5FJf86kXvhu1m4=;
 b=mz0eRzbOECWOYIzbFcKvpLeqdJ3jfUWAzF5XvlCM3bP7ciUrq9yTH9cNVTzUa5xSdW/kpPRQSfksG2sCHMR/C2lJMy7Sm1cr+3jP+UO9MyQNH+Gj6I14TQ+zIXWda15XApoIkwYfxdfS8xYdtlAaWjcGhSpZ0nQ/xICNPtNlPOkErDE/XRUZSIRq+sOjFwTvgdOn+PRZJqs6sM5P5ZGf7XVtbOboUe4lW+WGL+ZXMscCarXEMCjEpNjfOp8W+bF3zUmzMqtSmX2+z9DQ4I93XKod4u61j9uc82J7LB9vJqkBjzlfeNOaWPaawVGRfmGV1vkBmnU/FWO2FL3CY/IdeA==
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 (0)
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=r5YoK7P1dGjRWJBXzcEWlU5MbijPE5FJf86kXvhu1m4=;
 b=AAdLT7iVohzh3zFWhJcsjw7f+gCa0wC2d9UWziBf8EfY1Y7R4W+i1XPgP96c86R9UiKHKgPdd/A38hTqQEG8KrO+BdPDYsAFXKTe9e/Uj/BJfmcCUh+/ehCl+Dyp53kgozpBOL6Hf5fmUbuKrb2BnERIS6rbUPeM/ESW0jo8vmA=
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: <a31ebacb-b454-4636-8d75-df85d07f3399@amd.com>
Date: Tue, 31 Oct 2023 10:15:38 -0400
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v4 4/5] [FUTURE] xen/arm: enable vPCI for domUs
To: Julien Grall <julien@xen.org>, Jan Beulich <jbeulich@suse.com>
CC: Stefano Stabellini <sstabellini@kernel.org>, Bertrand Marquis
	<bertrand.marquis@arm.com>, Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Paul Durrant <paul@xen.org>, =?UTF-8?Q?Roger_Pau_Monn=C3=A9?=
	<roger.pau@citrix.com>, <xen-devel@lists.xenproject.org>
References: <20231030235240.106998-1-stewart.hildebrand@amd.com>
 <20231030235240.106998-5-stewart.hildebrand@amd.com>
 <2f828bd2-e6f8-15b5-b226-33e2b33ebba8@suse.com>
 <784fa30f-cdce-4d0b-97d1-a22ac52aa8c9@xen.org>
Content-Language: en-US
From: Stewart Hildebrand <stewart.hildebrand@amd.com>
In-Reply-To: <784fa30f-cdce-4d0b-97d1-a22ac52aa8c9@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: CY4PEPF0000E9D0:EE_|IA0PR12MB7601:EE_
X-MS-Office365-Filtering-Correlation-Id: 04e627d5-664f-4371-c8c3-08dbda1bdccb
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	+C7T/RJYjS+DBtGJK5/QhThxLQHY0cDnOmSFtbn3EKSt94CIZqMcLD0pTLSTt6oWO7U646SMVgOiOqSFEVZW0uuE3Ma+oRPpaFfekNRvWQGrBnZqQ2AP713VleaUCRhPKeSMf4x+QYx10Ibl14c5dkHbvyPGRT/x6yqVnYzJPwF97IoqNLw0FeMg6cfYi8Q0VLYpsHjgpabcL3jPJWszEMd3EdRWW/qtpvm51b86RhXezUwSr2mGrUwv7zjALLDmZl3fH2sjJBGCSuyDRkoKb9JjkOTQdNmzEe5bppIfy+UwH2195yDPqacnxw4FZoCkic1/GvI2hlqiA4JK8XYDcrxQ+Yu0JRcABgjCNLcR2Sf90OIMKHfsLHELBp6ZCaxKyeqYVTvLpZE6GbyJ07ysr+v4xujLeaVEztjmonNzMU2AnafqZFkvlL3viI1P1AfyQ3Z1zGrysHaRDJEEwe6R9K0qTmvtBG17HN3jCyqt/LjvgD0nvTwSxhqbFtvCrMp6CF49IKwVP7OUqJTjnDY513oQoDQ3Mk7NZ9tqFumymUw60guHnNDrtQPQUKRMAhMsxvByYyjLf2qxNZWmbmHsu8QUBLyMKXWDJOzhGxDl2eh+kSUElTwxjsgtBDWIbFonYshm4DBcZIWepdcwu1PMaDdz2FQeLZMMU10Ai1eXIKx1xD0qE5jxNqelY31vo1yHTyMbwW9O4ISmOW4uUpKRN/ZjmS2fbjRo0AqqfLwfitvsUkgsMe/IqNUr4V0RWrKmKxiHlX3v6clHIXOtPP8LpfC8iiM3LnJNVIUigh80UQE=
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)(230922051799003)(64100799003)(82310400011)(1800799009)(186009)(451199024)(36840700001)(40470700004)(46966006)(36756003)(86362001)(31696002)(31686004)(40460700003)(40480700001)(2906002)(478600001)(8676002)(44832011)(4326008)(41300700001)(53546011)(8936002)(54906003)(16576012)(426003)(26005)(5660300002)(47076005)(70206006)(70586007)(2616005)(110136005)(316002)(82740400003)(356005)(81166007)(336012)(36860700001)(43740500002)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 31 Oct 2023 14:15:40.5434
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 04e627d5-664f-4371-c8c3-08dbda1bdccb
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:
	CY4PEPF0000E9D0.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA0PR12MB7601

On 10/31/23 09:17, Julien Grall wrote:
> Hi,
> 
> On 31/10/2023 11:03, Jan Beulich wrote:
>> On 31.10.2023 00:52, Stewart Hildebrand wrote:
>>> --- a/xen/drivers/passthrough/pci.c
>>> +++ b/xen/drivers/passthrough/pci.c
>>> @@ -1618,6 +1618,16 @@ int iommu_do_pci_domctl(
>>>           bus = PCI_BUS(machine_sbdf);
>>>           devfn = PCI_DEVFN(machine_sbdf);
>>>   +        if ( IS_ENABLED(CONFIG_ARM) &&
>>> +             !is_hardware_domain(d) &&
>>> +             !is_system_domain(d) &&
>>> +             (!IS_ENABLED(CONFIG_HAS_VPCI_GUEST_SUPPORT) || !has_vpci(d)) )
>>
>> I don't think you need the explicit ARM check; that's redundant with
>> checking !HAS_VPCI_GUEST_SUPPORT.

Currently that is true. However, this is allowing for the possibility that we eventually may want to enable PCI passthrough for PVH domU using vPCI (e.g. hyperlaunch, or eliminating qemu backend), in which case we may want to enable CONFIG_HAS_VPCI_GUEST_SUPPORT=y on x86.

>> It's also not really clear why you
>> need to check for the system domain here.

xl pci-assignable-add will assign the device to domIO, which doesn't have vPCI, but it is still a valid assignment. Perhaps an in code comment would be helpful for clarity?

> 
> I might be missing but I wouldn't expect the domain to have vPCI enabled if CONFIG_HAVE_VPCI_GUEST_SUPPORT=n. So why can't this simply be:
> 
> if ( !has_vcpi(d) )
> {
>    ...
> }

Right, the CONFIG_HAVE_VPCI_GUEST_SUPPORT check here is not strictly needed because this case is already caught by the other half of this patch in xen/arch/arm/vpci.c. This simplifies it to:

    if ( IS_ENABLED(CONFIG_ARM) &&
         !is_hardware_domain(d) &&
         !is_system_domain(d) /* !domIO */ &&
         !has_vpci(d) )

On x86, unless I misunderstood something, I think it's valid to assign PCI devices to a domU without has_vpci().

BTW, it's valid for has_vpci() to be true and CONFIG_HAVE_VPCI_GUEST_SUPPORT=n for dom0.


From xen-devel-bounces@lists.xenproject.org Tue Oct 31 14:19:08 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 14:19:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625820.975494 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxpaD-0004ZI-Ib; Tue, 31 Oct 2023 14:19:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625820.975494; Tue, 31 Oct 2023 14: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 1qxpaD-0004ZB-G9; Tue, 31 Oct 2023 14:19:05 +0000
Received: by outflank-mailman (input) for mailman id 625820;
 Tue, 31 Oct 2023 14:19:03 +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 1qxpaB-0004Z5-SO
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 14:19:03 +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 1qxpaB-0004v7-FH; Tue, 31 Oct 2023 14:19:03 +0000
Received: from 54-240-197-239.amazon.com ([54.240.197.239]
 helo=[192.168.9.249]) by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qxpaB-00013D-4j; Tue, 31 Oct 2023 14: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=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=MkQ97413qbPmZoyIbxIwrbk1LcZBhVg9qoycEZyC9w8=; b=GwZ0JxG3hJ9iVSkcRW8j0s9yIg
	P0j0lqo70PObE6skH4IWDYacYlP8ieDrDUf/Ls3bnY7Z+JIowu3WuiFIJJZAPzVhSaAW0hFFSXX5p
	XuDl1th7mNmctrxwZB/b5HfYCNbsC4ozrcJsFBSLmo0lRHPgNIUbxy7d29W1tQF2lz/E=;
Message-ID: <6eb07e69-c4e8-47ce-b2e9-0fe40c2668fc@xen.org>
Date: Tue, 31 Oct 2023 14:19:00 +0000
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH for-4.19 3/3] CHANGELOG: Keep unstable section
Content-Language: en-GB
To: Andrew Cooper <andrew.cooper3@citrix.com>,
 Xen-devel <xen-devel@lists.xenproject.org>
Cc: George Dunlap <George.Dunlap@eu.citrix.com>,
 Jan Beulich <JBeulich@suse.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: <20231031131954.3310725-1-andrew.cooper3@citrix.com>
 <20231031131954.3310725-4-andrew.cooper3@citrix.com>
 <d2a5b85e-e25a-458e-b3ad-0821eb106e85@xen.org>
 <37bcdf0c-75be-4390-8758-d53f097d5b88@citrix.com>
 <1bac4eda-a0d8-4dd8-83ba-9ad78eb2947e@xen.org>
 <a2c46e32-98e5-407b-8b0d-5f4f319b68f1@citrix.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <a2c46e32-98e5-407b-8b0d-5f4f319b68f1@citrix.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit



On 31/10/2023 14:06, Andrew Cooper wrote:
> On 31/10/2023 1:45 pm, Julien Grall wrote:
>> If you want to go down that route, then please update the
>> docs/process/branching-checklist.txt. Otherwise, I will continue to do
>> as I did previously.
> 
> It *is* in the checklist, and for all previous releases even 4.17, the
> staging section was opened at the time of branching.

It doesn't tell me when it has to be done. The difference with 4.17 is 
we don't yet have a date for the release. Hence why I delayed.

> 
> The thing that is different between 4.17 and previously is that 4.17
> called it "unstable" where previously (and in the checklist) it says to
> make the new section match the updated Xen major/minor number.


I still don't see the problem of delaying the CHANGELOG as I decided to 
do. If you are not happy with it, how about you take over the release 
technician process? It is already complex enough that I don't need 
someone else to tell me exactly how I should do it.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Oct 31 14:23:57 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 14:23:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625825.975505 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxpeq-0007Nj-72; Tue, 31 Oct 2023 14:23:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625825.975505; Tue, 31 Oct 2023 14:23: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 1qxpeq-0007Nc-46; Tue, 31 Oct 2023 14:23:52 +0000
Received: by outflank-mailman (input) for mailman id 625825;
 Tue, 31 Oct 2023 14:23: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=G+CR=GN=cloud.com=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qxpeo-0007ME-QI
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 14:23:50 +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 1aaf261e-77f9-11ee-9b0e-b553b5be7939;
 Tue, 31 Oct 2023 15:23:47 +0100 (CET)
Received: by mail-ed1-x52e.google.com with SMTP id
 4fb4d7f45d1cf-53db360294fso9790524a12.3
 for <xen-devel@lists.xenproject.org>; Tue, 31 Oct 2023 07:23:47 -0700 (PDT)
Received: from localhost ([213.195.113.99]) by smtp.gmail.com with ESMTPSA id
 ks24-20020a170906f85800b009ad8acac02asm1070902ejb.172.2023.10.31.07.23.46
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Tue, 31 Oct 2023 07:23: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: 1aaf261e-77f9-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1698762227; x=1699367027; 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=rMX24V579WbzUjzdlj5MNjXK8mZtDjR5iub4cTe8J6s=;
        b=A1LWic0kXdULl0kpIsOxbmIDU9MOm8ahL0vVUyU4jZ0uIUYt7h1zYw1ctd9NyueoQ7
         5FK+hXjAO9dFAW85HBzmOd6VndID3dWRIv000/qgGpspYjjKcUFmIvaNO2fqT0laCp8J
         561XsyvY2afGc5aZrfMNnG9xQZJtfc3TYL5jU=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698762227; x=1699367027;
        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=rMX24V579WbzUjzdlj5MNjXK8mZtDjR5iub4cTe8J6s=;
        b=l9sl4EHu2f6nmAZttCLamSp1/kSnPmdBi0hy+tomIgirltMACTN2rJRmrFeV++vN9J
         XrRLghG4H3gNwV5sE9mGiPT9yr5QP0HB29sv1qnAKxAbde3R1IWahdocU8kKSIn9G8jy
         sOBvYpWC+rWRGmFh2ncmcd0WTXwURwxLcpxas7MGSIryu1Wq+RfR/WU/QmptWm/Hlhno
         OZ4tSrl5Im7vX0h4p7ucJDql0I6pJkiyTH+dr2cqbDL/7U/gsv9qZdGnc8LuX760gp7C
         t3KqvIhWruZvyTjfm18tjHB0cgx1qUVCoOXtPXb/Th+ub8qzM32y+kpw/yzXzZZWJpTd
         KVPw==
X-Gm-Message-State: AOJu0Yzu4eDWXqJfHvOn8lrldkSQLgVhjcwLG5Z9FguJgxu+EACjXxrz
	o49LBti3CeyWSERBIadWJNaFyA==
X-Google-Smtp-Source: AGHT+IFtp+W2sycU6mxoNSWSCApiSli55DoVaHclghqxI4+IJBakIIQojuamqrUZigFGckGN7eRHiA==
X-Received: by 2002:a17:907:2d2b:b0:9b2:a7db:9662 with SMTP id gs43-20020a1709072d2b00b009b2a7db9662mr12450264ejc.12.1698762226924;
        Tue, 31 Oct 2023 07:23:46 -0700 (PDT)
Date: Tue, 31 Oct 2023 15:23:45 +0100
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Ayan Kumar Halder <ayankuma@amd.com>
Cc: xen-devel@lists.xenproject.org, Kelly Choi <kelly.choi@cloud.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	Julien Grall <julien@xen.org>,
	Bertrand Marquis <Bertrand.Marquis@arm.com>,
	Oleksandr Tyshchenko <Oleksandr_Tyshchenko@epam.com>,
	"jbeulich@suse.com" <jbeulich@suse.com>,
	Luca Fancellu <luca.fancellu@arm.com>
Subject: Re: Cambridge University Talk - 9th November 2023
Message-ID: <ZUEN8cVbNcR0Mo7R@macbook>
References: <CAO-mL=xE=-8RjeAOKumLfcSf=wu0OWLK0X1Lz2JMCefBXbnTfA@mail.gmail.com>
 <03347742-c32d-4fc0-8ad3-f87cf71f20f1@amd.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <03347742-c32d-4fc0-8ad3-f87cf71f20f1@amd.com>

On Tue, Oct 31, 2023 at 01:05:11PM +0000, Ayan Kumar Halder wrote:
> Hi Xen Maintainers/developers,
> 
> 
> As part of my talk, I wish to provide some examples of tasks that a newbie
> can easily pick up and contribute.
> 
> This need not be a dedicated project, but something that can be contributed
> on an ad-hoc basis.
> 
> The idea is to get more people interested in Xen project. :)
> 
> 
> I found some examples of this :-
> 
> 1. Misra C fixes - Refer "Misra rule 10.3 violations report script" . Luca
> has provided an awesome script to identify the MISRA violations. This can be
> used to provide fixes.

TBH, I think doing MISRA fixes is not that attractive for a new comer,
as those are (mostly?) non-functional fixes, but I might be wrong.

> 2. https://wiki.xenproject.org/wiki/Outreach_Program_Projects - I think this
> page provides some pointers, but I am not sure if this is up to date.

I'm not sure how up to date this is.

> 
> Please let me know if there are more of these examples.

gitlab contains some:

https://gitlab.com/groups/xen-project/-/issues/?label_name%5B%5D=Difficulty%3A%3A1-GOOD%20FIRST%20ISSUE
https://gitlab.com/groups/xen-project/-/issues/?label_name%5B%5D=Difficulty%3A%3A1-EASY

Regards, Roger.


From xen-devel-bounces@lists.xenproject.org Tue Oct 31 14:28:16 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 14:28:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625829.975514 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxpj3-0000Zo-Ob; Tue, 31 Oct 2023 14:28:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625829.975514; Tue, 31 Oct 2023 14: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 1qxpj3-0000Zh-Lk; Tue, 31 Oct 2023 14:28:13 +0000
Received: by outflank-mailman (input) for mailman id 625829;
 Tue, 31 Oct 2023 14:28: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=Rkuq=GN=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qxpj3-0000Zb-0f
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 14:28:13 +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 b8715eaf-77f9-11ee-98d6-6d05b1d4d9a1;
 Tue, 31 Oct 2023 15:28:12 +0100 (CET)
Received: by mail-lj1-x233.google.com with SMTP id
 38308e7fff4ca-2c5210a1515so82881591fa.0
 for <xen-devel@lists.xenproject.org>; Tue, 31 Oct 2023 07:28:12 -0700 (PDT)
Received: from fedora.. ([94.75.70.14]) by smtp.gmail.com with ESMTPSA id
 g36-20020a0565123ba400b005041ce44bbdsm222423lfv.5.2023.10.31.07.28.10
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Tue, 31 Oct 2023 07: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: b8715eaf-77f9-11ee-98d6-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698762491; x=1699367291; 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=PeoBK4eZojRJWM9XP3Nhwb/OMadMJxCx1vrYbxWtSFA=;
        b=mtcRLIQrU6rmL8wFTe6rY8za4nqkYjP2OC/HVVdcaW2b6tYShruiB6OeVbnDxtTirp
         OOS0RFFIFidymxYnnD+nNy+cPOqDVD/DeFn5Vwy49LNNAReENTAW1VjVxYSkVn9qIzzd
         Um3bwoduHkfE6hkYVe5JDxMpFQNMIzQ40VzVTATLdb2QhsMJ1h7VEAXfERtbFEUUcFQO
         RxBRLslEoBACCbk788QyZPlKCJWvl4YXhDPrwQCx9MD26cqXfZD78MrjScTHTB5kuNnF
         yhK57bpv/0Q7J6BCbfwjpAQz7FdPxFU9DlQOIbE8HUve6uvjNweN+uMcntmPHCLn8Ug8
         tyOw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698762491; x=1699367291;
        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=PeoBK4eZojRJWM9XP3Nhwb/OMadMJxCx1vrYbxWtSFA=;
        b=w30w5+XgdaLz0M7QSkhLO9AaOgUSfXNMxiEtxmCgSbqRyJQXq2QHGmWe8YBk3b4m62
         J+9ZiuFY6kyLSdKqvfMM7kaHH0E7d33j0muQBpnyum2K+VqajDazm/51Yr5mUQt8CJAt
         j5nokccU9mAwt8iAmKDhVp2w9mBNMI3K442tx4Kk5sXvPO3Mu7rVA28iQLtr+6dzM4N8
         9MaVOcMAnD1HGAjGTnEp69uzsMZOGSN/P74eXmfNvLbpgxW5bT23xaoayW2aBEtec02x
         KhnvA6AcjKwd7uxjbtC/2zM30wMExIYYr9jxBaAfQg+Sd4+vcU9uciWUk5DTyLruijyl
         Jzdw==
X-Gm-Message-State: AOJu0Yz26neU2ECZWolqahWysiwDFu+D3znJqJL+9kE9Ax6pCzbckcRM
	i1DmtaTIUsLjemPMoqDwOXoNdeckrnI=
X-Google-Smtp-Source: AGHT+IHYT4gMQTkO0pLFGTJSIZKpFv0myU3OaygMxvVU64X6bYhV27VdHmt2gn/RuUOnRLr20YIdgg==
X-Received: by 2002:a05:6512:52c:b0:509:dee:f70c with SMTP id o12-20020a056512052c00b005090deef70cmr7343122lfc.27.1698762490845;
        Tue, 31 Oct 2023 07:28:10 -0700 (PDT)
From: Oleksii Kurochko <oleksii.kurochko@gmail.com>
To: xen-devel@lists.xenproject.org
Cc: Oleksii Kurochko <oleksii.kurochko@gmail.com>,
	Jan Beulich <jbeulich@suse.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>,
	Shawn Anastasio <sanastasio@raptorengineering.com>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>
Subject: [PATCH v2] xen: remove <asm/delay.h>
Date: Tue, 31 Oct 2023 16:28:07 +0200
Message-ID: <3d55bce44bd6ab9973cbe0ea2fc136cc44d35df2.1698759633.git.oleksii.kurochko@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

<asm/delay.h> only declares udelay() function so udelay()
declaration was moved to xen/delay.h.

For x86, __udelay() was renamed to udelay() and removed
inclusion of <asm/delay.h> in x86 code.

For ppc, udelay() stub definition was moved to ppc/stubs.c.

Suggested-by: Jan Beulich <jbeulich@suse.com>
Signed-off-by: Oleksii Kurochko <oleksii.kurochko@gmail.com>
Reviewed-by: Jan Beulich <jbeulich@suse.com>
---
Changes in v2:
 - rebase on top of the latest staging.
 - add Suggested-by:/Reviewed-by: Jan Beulich <jbeulich@suse.com>.
 - remove <asm/delay.h> for PPC.
 - remove changes related to RISC-V's <asm/delay.h> as they've not
   introduced in staging branch yet.
---
 xen/arch/arm/include/asm/delay.h  | 14 --------------
 xen/arch/ppc/include/asm/delay.h  | 12 ------------
 xen/arch/ppc/stubs.c              |  7 +++++++
 xen/arch/x86/cpu/microcode/core.c |  2 +-
 xen/arch/x86/delay.c              |  2 +-
 xen/arch/x86/include/asm/delay.h  | 13 -------------
 xen/include/xen/delay.h           |  2 +-
 7 files changed, 10 insertions(+), 42 deletions(-)
 delete mode 100644 xen/arch/arm/include/asm/delay.h
 delete mode 100644 xen/arch/ppc/include/asm/delay.h
 delete mode 100644 xen/arch/x86/include/asm/delay.h

diff --git a/xen/arch/arm/include/asm/delay.h b/xen/arch/arm/include/asm/delay.h
deleted file mode 100644
index 042907d9d5..0000000000
--- a/xen/arch/arm/include/asm/delay.h
+++ /dev/null
@@ -1,14 +0,0 @@
-#ifndef _ARM_DELAY_H
-#define _ARM_DELAY_H
-
-extern void udelay(unsigned long usecs);
-
-#endif /* defined(_ARM_DELAY_H) */
-/*
- * Local variables:
- * mode: C
- * c-file-style: "BSD"
- * c-basic-offset: 4
- * indent-tabs-mode: nil
- * End:
- */
diff --git a/xen/arch/ppc/include/asm/delay.h b/xen/arch/ppc/include/asm/delay.h
deleted file mode 100644
index da6635888b..0000000000
--- a/xen/arch/ppc/include/asm/delay.h
+++ /dev/null
@@ -1,12 +0,0 @@
-/* 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/stubs.c b/xen/arch/ppc/stubs.c
index 4c276b0e39..a96e45626d 100644
--- a/xen/arch/ppc/stubs.c
+++ b/xen/arch/ppc/stubs.c
@@ -337,3 +337,10 @@ int __init parse_arch_dom0_param(const char *s, const char *e)
 {
     BUG_ON("unimplemented");
 }
+
+/* delay.c */
+
+void udelay(unsigned long usecs)
+{
+    BUG_ON("unimplemented");
+}
diff --git a/xen/arch/x86/cpu/microcode/core.c b/xen/arch/x86/cpu/microcode/core.c
index 65ebeb50de..22d5e04552 100644
--- a/xen/arch/x86/cpu/microcode/core.c
+++ b/xen/arch/x86/cpu/microcode/core.c
@@ -23,6 +23,7 @@
 
 #include <xen/alternative-call.h>
 #include <xen/cpu.h>
+#include <xen/delay.h>
 #include <xen/earlycpio.h>
 #include <xen/err.h>
 #include <xen/guest_access.h>
@@ -35,7 +36,6 @@
 
 #include <asm/apic.h>
 #include <asm/cpu-policy.h>
-#include <asm/delay.h>
 #include <asm/nmi.h>
 #include <asm/processor.h>
 #include <asm/setup.h>
diff --git a/xen/arch/x86/delay.c b/xen/arch/x86/delay.c
index 2662c26272..b3a41881a1 100644
--- a/xen/arch/x86/delay.c
+++ b/xen/arch/x86/delay.c
@@ -15,7 +15,7 @@
 #include <asm/msr.h>
 #include <asm/processor.h>
 
-void __udelay(unsigned long usecs)
+void udelay(unsigned long usecs)
 {
     unsigned long ticks = usecs * (cpu_khz / 1000);
     unsigned long s, e;
diff --git a/xen/arch/x86/include/asm/delay.h b/xen/arch/x86/include/asm/delay.h
deleted file mode 100644
index 9be2f46590..0000000000
--- a/xen/arch/x86/include/asm/delay.h
+++ /dev/null
@@ -1,13 +0,0 @@
-#ifndef _X86_DELAY_H
-#define _X86_DELAY_H
-
-/*
- * Copyright (C) 1993 Linus Torvalds
- *
- * Delay routines calling functions in arch/i386/lib/delay.c
- */
-
-extern void __udelay(unsigned long usecs);
-#define udelay(n) __udelay(n)
-
-#endif /* defined(_X86_DELAY_H) */
diff --git a/xen/include/xen/delay.h b/xen/include/xen/delay.h
index 9150226271..8fd3b8f99f 100644
--- a/xen/include/xen/delay.h
+++ b/xen/include/xen/delay.h
@@ -3,7 +3,7 @@
 
 /* Copyright (C) 1993 Linus Torvalds */
 
-#include <asm/delay.h>
+void udelay(unsigned long usecs);
 
 static inline void mdelay(unsigned long msec)
 {
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Tue Oct 31 14:30:37 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 14:30:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625832.975524 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxplJ-0002mk-3T; Tue, 31 Oct 2023 14:30:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625832.975524; Tue, 31 Oct 2023 14:30: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 1qxplJ-0002md-0s; Tue, 31 Oct 2023 14:30:33 +0000
Received: by outflank-mailman (input) for mailman id 625832;
 Tue, 31 Oct 2023 14:30: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=Rkuq=GN=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qxplI-0002mV-3E
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 14:30:32 +0000
Received: from mail-ed1-x531.google.com (mail-ed1-x531.google.com
 [2a00:1450:4864:20::531])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 0b64aec0-77fa-11ee-98d6-6d05b1d4d9a1;
 Tue, 31 Oct 2023 15:30:31 +0100 (CET)
Received: by mail-ed1-x531.google.com with SMTP id
 4fb4d7f45d1cf-53e855d7dacso9457141a12.0
 for <xen-devel@lists.xenproject.org>; Tue, 31 Oct 2023 07:30:31 -0700 (PDT)
Received: from [192.168.201.133] ([94.75.70.14])
 by smtp.gmail.com with ESMTPSA id
 ox15-20020a170907100f00b0099bcdfff7cbsm1057325ejb.160.2023.10.31.07.30.28
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Tue, 31 Oct 2023 07:30: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: 0b64aec0-77fa-11ee-98d6-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698762630; x=1699367430; 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=xb2w2VKDfSLzoGoICYe6jTYnUMfWhHH6DoXAftJBFj0=;
        b=a5Vr8qK0g+4pMEp1FxBo0CiEN4+DeUdrZbk4OjNcHRMDm8ikMt8HsZYTfCOdc/7rvF
         v1qQW/ITfQyvKsovTrI3bm16HAyXHnR2KjEcaVR2QHMCu1puv6KuympsMv52KEJkM+/1
         gPhm08N9RRH2kpA3IijPEM5/CaeufAbd2lv0ZnquRGov5Heba8NodqzmLO1SnGAaaVTN
         X1cgXcfBWhUaQzSJkaXOwgKmSReO+XGphagYfI6XBsZeRz/1ivJy+werX8hbZLhzXEvN
         1FVvWZFsp37lyHCYpR8moNkNUsfBCQR7lwz4CXTYPUpP3eDBcPeFDUA0TBgMhLi9PzMb
         2Xgw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698762630; x=1699367430;
        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=xb2w2VKDfSLzoGoICYe6jTYnUMfWhHH6DoXAftJBFj0=;
        b=NMdS4GGlR7NH3vdcuX+EAV1Nk3qZufU5Jc4tOXTbpRvR8R5pLmPalqJX3af9ili34t
         IWenOucCXH5VeksXDGRIF/8H7buSSpAhftqbox3SMiVuUWHvz02yGHlualae9T/N8IIn
         kKhBqkIUVskO/i6o6jlsofq7wE4qwxwKywPNGQwHvPwOkLmpmxnk0I1YrDukzbJ9Ym1L
         X7uCZU+TzFBYN2d3J5MRWaxa8wjBrYhq2HegncNRCHDCQLRT/57us0VRw1gyrveq2pdM
         tSps3G6BGcgP1O9ZRGjLaorekHl0o9Zra0/vxGmemGJUGoN0zZxy1Kxdr61rMQ5TyCrz
         wWWA==
X-Gm-Message-State: AOJu0Yzd1QxoVvqPmN9sVKHww/U7/tJ9jrNTbX6boBJ9bMY6jNOF4Zl3
	b7PKD8sDOtbz/a8InoZa4/SMW8SVbU0=
X-Google-Smtp-Source: AGHT+IE39583cgIInVxjKcSE+LW7jG5GGUj08vrdJcLZnv8lS7BVCBPrUcoXhY8ZPTFwZOZLznvG6g==
X-Received: by 2002:a17:907:7203:b0:9ae:6a60:81a2 with SMTP id dr3-20020a170907720300b009ae6a6081a2mr9121045ejc.25.1698762629745;
        Tue, 31 Oct 2023 07:30:29 -0700 (PDT)
Message-ID: <e969e456812e9d627787dd204d8ac0ce8d20e666.camel@gmail.com>
Subject: Re: [PATCH v1 22/29] xen/asm-generic: introduce stub header delay.h
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: Tue, 31 Oct 2023 16:30:27 +0200
In-Reply-To: <b16677ea84860ae7143339b8c856f0da7f8c2b6c.1694702259.git.oleksii.kurochko@gmail.com>
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
	 <b16677ea84860ae7143339b8c856f0da7f8c2b6c.1694702259.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

Instead of introducing stub header for delay.h it was decided to remove
<asm/delay.h> in a separate patch:
https://lore.kernel.org/xen-devel/3d55bce44bd6ab9973cbe0ea2fc136cc44d35df2.=
1698759633.git.oleksii.kurochko@gmail.com/T/#u

~ Oleksii


From xen-devel-bounces@lists.xenproject.org Tue Oct 31 14:34:59 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 14:34:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625837.975534 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxppZ-0004fY-KA; Tue, 31 Oct 2023 14:34:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625837.975534; Tue, 31 Oct 2023 14:34: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 1qxppZ-0004fR-Hf; Tue, 31 Oct 2023 14:34:57 +0000
Received: by outflank-mailman (input) for mailman id 625837;
 Tue, 31 Oct 2023 14:34: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=kxST=GN=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qxppY-0004cm-Ep
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 14:34:56 +0000
Received: from foss.arm.com (foss.arm.com [217.140.110.172])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTP
 id a84a428e-77fa-11ee-98d6-6d05b1d4d9a1;
 Tue, 31 Oct 2023 15:34:54 +0100 (CET)
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 B37241FB;
 Tue, 31 Oct 2023 07:35:35 -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 0F7673F738;
 Tue, 31 Oct 2023 07:34: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: a84a428e-77fa-11ee-98d6-6d05b1d4d9a1
From: Henry Wang <Henry.Wang@arm.com>
To: xen-devel@lists.xenproject.org
Cc: Henry Wang <Henry.Wang@arm.com>,
	Community Manager <community.manager@xenproject.org>,
	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>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>,
	Wei Chen <wei.chen@arm.com>
Subject: [PATCH v4] CHANGELOG.md: Start new "unstable" section
Date: Tue, 31 Oct 2023 22:34:42 +0800
Message-Id: <20231031143442.2415268-1-Henry.Wang@arm.com>
X-Mailer: git-send-email 2.25.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Signed-off-by: Henry Wang <Henry.Wang@arm.com>
---
v4:
- Set the release date.
---
 CHANGELOG.md | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

diff --git a/CHANGELOG.md b/CHANGELOG.md
index 3ca7969699..cbdc9bceac 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -4,7 +4,15 @@ Notable changes to Xen will be documented in this file.
 
 The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
 
-## [4.18.0](https://xenbits.xenproject.org/gitweb/?p=xen.git;a=shortlog;h=RELEASE-4.18.0) - 2023-XX-XX
+## [unstable UNRELEASED](https://xenbits.xenproject.org/gitweb/?p=xen.git;a=shortlog;h=staging) - TBD
+
+### Changed
+
+### Added
+
+### Removed
+
+## [4.18.0](https://xenbits.xenproject.org/gitweb/?p=xen.git;a=shortlog;h=RELEASE-4.18.0) - 2023-11-16
 
 ### Changed
  - Repurpose command line gnttab_max_{maptrack_,}frames options so they don't
-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Tue Oct 31 14:39:17 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 14:39:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625841.975545 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxptc-0006DS-4d; Tue, 31 Oct 2023 14:39:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625841.975545; Tue, 31 Oct 2023 14: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 1qxptc-0006DL-24; Tue, 31 Oct 2023 14:39:08 +0000
Received: by outflank-mailman (input) for mailman id 625841;
 Tue, 31 Oct 2023 14:39: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=kxST=GN=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qxpta-0006Bc-6C
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 14:39:06 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur04on2058.outbound.protection.outlook.com [40.107.7.58])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 3ce72f17-77fb-11ee-9b0e-b553b5be7939;
 Tue, 31 Oct 2023 15:39:04 +0100 (CET)
Received: from DU6P191CA0019.EURP191.PROD.OUTLOOK.COM (2603:10a6:10:540::23)
 by DB9PR08MB6681.eurprd08.prod.outlook.com (2603:10a6:10:2a4::7) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.24; Tue, 31 Oct
 2023 14:38:33 +0000
Received: from DB5PEPF00014B96.eurprd02.prod.outlook.com
 (2603:10a6:10:540:cafe::96) 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.6933.29 via Frontend
 Transport; Tue, 31 Oct 2023 14:38:33 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DB5PEPF00014B96.mail.protection.outlook.com (10.167.8.234) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6954.19 via Frontend Transport; Tue, 31 Oct 2023 14:38:33 +0000
Received: ("Tessian outbound 26ee1d40577c:v228");
 Tue, 31 Oct 2023 14:38:33 +0000
Received: from 1fd67ce7105e.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 07941BBA-6A23-4EF9-A1D5-83B00DD70712.1; 
 Tue, 31 Oct 2023 14:38:23 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 1fd67ce7105e.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Tue, 31 Oct 2023 14:38:23 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by DU0PR08MB8955.eurprd08.prod.outlook.com (2603:10a6:10:466::18)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.29; Tue, 31 Oct
 2023 14:38:20 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::ae6e:f96c:f2f3:efc9]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::ae6e:f96c:f2f3:efc9%4]) with mapi id 15.20.6933.028; Tue, 31 Oct 2023
 14:38: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: 3ce72f17-77fb-11ee-9b0e-b553b5be7939
ARC-Seal: i=2; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=pass;
 b=ajn8VXzI6orDw7ySwvO+mejO/oHNVmyaxGRtSN99Pb+FGCxxqRx0owgwHfnoZceJCuuL7LfgpbBAHGrrs0HXSJ28KDwRSO+/KTU+nkLlzecW1WYgFTrouIt+IomDpmzVyjXNO2meIfkqqII2w30SAm7qBkOybldwKEwISEwT7G6co/bCYGEkZqgztcpWk/+dA64/2OhVWMQKL+Jvm0m/b0TtP5WXvRL/eQ7+n+XX2dNSzbM2on4PSoWpZ7NnucTE1AwBfOJ+eWhQacvDd3GzPlzof2/HQn2nVnLTBaonFFP0h+sXz5MqXzpZwckVCa21TSMcDYXR7WsWiyPbB/Uiiw==
ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=ZgStG1m6Q5j8IpL7bI0BmmYZ5GqHuhBpb9L6FBk12uM=;
 b=b+LGIq/ihqXNYPe39O66UMY/KU8pBtMSRqAs61jf45fpvOlUMUUSLCNjtaByWcXW5DLV9r1Q7G5vcVVaDtRjoCZGmae0DJgdImGsJqtpvp/Hr3aH5yfd5D8GqI7C+xDeWr6YgVoUkID5qmjsNvn95izW58GumWnNe0DK7n/bTPEA1H3lcukfsXWsgK2Ap72FB0aTYXzQWdHu4fB6t7KEXHoimez3U8eITcy+ns+Vue6F9eBTuBLaZbBKiDg+xMfhXzfSWe1roX2KuhOn2phFyog1hPyqXyKDzTZFrFmgFSPQmfr2XT3X5cbRwErqIVnayBd+utmINREN1dfHQGmKFA==
ARC-Authentication-Results: i=2; mx.microsoft.com 1; spf=pass (sender ip is
 63.35.35.123) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=arm.com;
 dmarc=pass (p=none sp=none pct=100) action=none header.from=arm.com;
 dkim=pass (signature was verified) header.d=armh.onmicrosoft.com; arc=pass (0
 oda=1 ltdi=1 spf=[1,1,smtp.mailfrom=arm.com] dkim=[1,1,header.d=arm.com]
 dmarc=[1,1,header.from=arm.com])
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=ZgStG1m6Q5j8IpL7bI0BmmYZ5GqHuhBpb9L6FBk12uM=;
 b=ODlPmMjy4mCA83HJXqU1Z5wL9UA4hAVxHVeN1a+Owv/fvGALU+Rj/1DJhY7iqS/vKSPYCeNn7udzXK4pO2v8xkEuKQXYB3BcUX/VuEoJrBWTFxLJqEszaK1Uf9/LK66iHsazYkCTmiARMdM6ajBafOOux/e0UUNuyyJqS2TusR4=
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: 0dfc6f8486397e65
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=VXR28dp96uglEXWgOOiNG+UeP6v3bhU7QfOxBwgfv4lqDci+w5eefaTxGVDNxbQKMam6AjvXffgp1vxJ2AGdxII9ma1p/wEmjkepE6dAoPhXOQE+UDz60N1WTYOiZkuwPZrW4s4MgYKt9txTEIAS8WIiSVjcaQvnmRq1meFq/qiJemGUctx2cmUFDZOuoJZB7tRFaq9JqBnsi88ixAKq7Bl3uw2CqozbGji+DsLSXAfV9eozLGl9VvGpC4+vzPiXhBOUU9Y0BTaIWwrgBeUFi6pW2aZkyPuMTFOZP7csXfX2EJKjkTdKFzqNQK5x3KrFjTl7Uuir+zih53sjFTJxRw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=ZgStG1m6Q5j8IpL7bI0BmmYZ5GqHuhBpb9L6FBk12uM=;
 b=RlAeoGZNSa7zMQ98EBqEbf8Bwufhl6aUDASKewKsafyjrZjiNyroQWqJeZz9DSzDBS5dy41ww3PJ9lLsRFuxPLWjpxRohNpwxnq+p+DlMSb2ircg9sQRkdFUcysl4Xm6nH3035w5GNL67anMjg7BekNw6scjO1sopleN8aNBOkWuZAxJNyHrQx1N415E9drZHdWMy9bOizb7yHigOB/FAmnuDQwsHOUg3a8qDD9aj2plnvi8etT3whhCAD7jTd3QKMdC1/3lfxHH10gyYF5skWg9rWk4NgAQy6L6aw2SyKOrXj/G6OBY8mHidgLDoMNeZH1VX8lSUm0gbwTwcnsBUQ==
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=ZgStG1m6Q5j8IpL7bI0BmmYZ5GqHuhBpb9L6FBk12uM=;
 b=ODlPmMjy4mCA83HJXqU1Z5wL9UA4hAVxHVeN1a+Owv/fvGALU+Rj/1DJhY7iqS/vKSPYCeNn7udzXK4pO2v8xkEuKQXYB3BcUX/VuEoJrBWTFxLJqEszaK1Uf9/LK66iHsazYkCTmiARMdM6ajBafOOux/e0UUNuyyJqS2TusR4=
From: Henry Wang <Henry.Wang@arm.com>
To: Xen-devel <xen-devel@lists.xenproject.org>
CC: Community Manager <community.manager@xenproject.org>, 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>, =?utf-8?B?Um9nZXIgUGF1IE1vbm7DqQ==?= <roger.pau@citrix.com>,
	Wei Chen <Wei.Chen@arm.com>
Subject: Re: [PATCH v4] CHANGELOG.md: Start new "unstable" section
Thread-Topic: [PATCH v4] CHANGELOG.md: Start new "unstable" section
Thread-Index: AQHaDAd5A4+0vf7xFk6crLLx+B8kVbBj962A
Date: Tue, 31 Oct 2023 14:38:19 +0000
Message-ID: <4B5CAA8D-1DF7-4208-A0EF-D6748DC77176@arm.com>
References: <20231031143442.2415268-1-Henry.Wang@arm.com>
In-Reply-To: <20231031143442.2415268-1-Henry.Wang@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_|DU0PR08MB8955:EE_|DB5PEPF00014B96:EE_|DB9PR08MB6681:EE_
X-MS-Office365-Filtering-Correlation-Id: 1022fb53-1fb1-4a8d-8796-08dbda1f0f10
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:
 9KUsX4lnldVZUnACUPod9cd1Q4Mb2UgMzJQS7sujbgjlztlfAXP2G276rZTKtm871UeqMuHncOUw+asF1Za/Ja0gyBdJPuN1P0Vj7/7ViOfNv5SQjNTtjZ0ptSgoR0rLczpAHTDkBxgUPv6ziIY59ltqx+Ou4gcd6Hkda+6Y8YfToIeB+iZpYWjmIpEjaMevgAb0OxrRy2GiT2mizPvcf7PCZXrkEckk5v+PNR9LHXhsmLiuKHUNKQnZ9rcYq1eunuzTQS292BiOeGIRMJfkczmrML4yIImwM8H1w/0ciiFClFpUsdzCEO2qkaUpZi7qD8RgZFD6hKjYvM28Iw6w5HxWC86Cl3UCm+gqIbgHCNWv/KFl7Bl42IkIuGBCtpCycU37F08ymeqSllQDt48TIdei8OySRa8L4XEQiD4dH3KzMOl5T7YqCVrrUisfA5UKsfIOtlv+dQV2Ups347oXI2IpRzke+2h3WNm7wSXcOWGPnhwd84WNf5h0NFCC5+LlPk2yKF7oU5+EyK5hMZ8p+48/fBvEvPlZp5RUqfLdes+CuGlkCZOREG/WXNg8ifIIX23jl5kbd0+pbJdjFdHMuYN5pxVNRi/Gh33xE1QFC1pAmN/ex2BgunrFsHumiz2ruQ0uU0Qt4ngpaD/1XrFj3fjLBtM8s4h0+kezXbK4u/Qf27fhAYrSAvRnX37XB+9v
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)(396003)(136003)(39860400002)(376002)(230922051799003)(1800799009)(64100799003)(186009)(451199024)(38070700009)(83380400001)(33656002)(86362001)(2616005)(26005)(6512007)(6506007)(53546011)(71200400001)(36756003)(122000001)(38100700002)(66556008)(54906003)(66476007)(6916009)(64756008)(66446008)(91956017)(76116006)(66946007)(6486002)(8936002)(8676002)(4326008)(41300700001)(5660300002)(4744005)(2906002)(4001150100001)(316002)(478600001)(207903002)(219803003)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <C72A522CFE11C44A9019F634CE42344B@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR08MB8955
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:
 DB5PEPF00014B96.eurprd02.prod.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	503e9c32-9021-45df-8ede-08dbda1f0704
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	HM2dqfkg883v+eSZu/5ylvDmFtphzgvXsNE51fJXp0N7DPVEX+9wOuhtIjZclyXe/EwgPI7ElYwtT8+vBSelYBpqmzpkTNgrUmHf6fx4AOFy9/WpMxo/K161Zgi6TVZc2RLqMWsupI8xrB28bQScKQuKQ19iQLyb9L8SC2gorC8J7BW5F3vtVeZXrs+MUwTK+6i7c6mVML15sWHhfYBnGqTY65+ZgsUf1Q3NrHrA73YrlQDqTXVvtJsULjUT4MQdrUwWTFQwlqGexeF6UVjtyAP9ytYh3Wij3yJ0/8ILuRZ7GHdnZqPoC74snmpN1XsJ5dWjstzSK+VVxS1A3Y+aAo5YlB/qingcwkxP1PkuX1CVdMv0hf/Sn4Iuwu6DPyYvcX9CvY0ENGGYKxPSaZ1X2eFXEDQI4VrIf/lMj7mlDy1+3brEVw7Yu3FIrv9IdaqCRK9cLdKLFDPmN4nY3mXXGRFWxaRM78QM0Gf3yn/tBgOO9fJ6oOe/vaFMW5L+5IkQEuHs6c9aAfjyuiqtsdo0ILG9liROyqaDGNaNm6VSPhXKryvj8GZF3TD08U/UBfk6m2qcp5eOsSLJYJ1i+cV6PXJX0Dsg3ZegzhfaBAWFjYirZavtPqepC4zVTzcp+2k7pWLk6UtWdyPenH4vz3AX+Y6DmuUdxM7L1Kr1cB6z9YieDJyOz/8hGPgZlo8UEsVteuL3dp75WBVc/1d65Era7lFwaCd/+rvAGnU1hAiWsGebbgB/liN1h9+VpOaK1+U7/Jskufi4Um9JZ8KZiOB9eg==
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)(186009)(82310400011)(64100799003)(1800799009)(451199024)(40470700004)(36840700001)(46966006)(41300700001)(86362001)(8676002)(2906002)(5660300002)(8936002)(83380400001)(54906003)(316002)(6916009)(70586007)(336012)(4001150100001)(70206006)(4326008)(356005)(81166007)(33656002)(6486002)(53546011)(6506007)(40480700001)(36860700001)(478600001)(40460700003)(47076005)(82740400003)(2616005)(6512007)(26005)(36756003)(207903002)(219803003);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 31 Oct 2023 14:38:33.4640
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 1022fb53-1fb1-4a8d-8796-08dbda1f0f10
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:
	DB5PEPF00014B96.eurprd02.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR08MB6681

SGksDQoNCj4gT24gT2N0IDMxLCAyMDIzLCBhdCAyMjozNCwgSGVucnkgV2FuZyA8SGVucnkuV2Fu
Z0Bhcm0uY29tPiB3cm90ZToNCj4gDQo+IFNpZ25lZC1vZmYtYnk6IEhlbnJ5IFdhbmcgPEhlbnJ5
LldhbmdAYXJtLmNvbT4NCj4gLS0tDQo+IHY0Og0KPiAtIFNldCB0aGUgcmVsZWFzZSBkYXRlLg0K
PiAtLS0NCj4gQ0hBTkdFTE9HLm1kIHwgMTAgKysrKysrKysrLQ0KPiAxIGZpbGUgY2hhbmdlZCwg
OSBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9uKC0pDQo+IA0KPiBkaWZmIC0tZ2l0IGEvQ0hBTkdF
TE9HLm1kIGIvQ0hBTkdFTE9HLm1kDQo+IGluZGV4IDNjYTc5Njk2OTkuLmNiZGM5YmNlYWMgMTAw
NjQ0DQo+IC0tLSBhL0NIQU5HRUxPRy5tZA0KPiArKysgYi9DSEFOR0VMT0cubWQNCj4gQEAgLTQs
NyArNCwxNSBAQCBOb3RhYmxlIGNoYW5nZXMgdG8gWGVuIHdpbGwgYmUgZG9jdW1lbnRlZCBpbiB0
aGlzIGZpbGUuDQo+IA0KPiBUaGUgZm9ybWF0IGlzIGJhc2VkIG9uIFtLZWVwIGEgQ2hhbmdlbG9n
XShodHRwczovL2tlZXBhY2hhbmdlbG9nLmNvbS9lbi8xLjAuMC8pDQo+IA0KPiAtIyMgWzQuMTgu
MF0oaHR0cHM6Ly94ZW5iaXRzLnhlbnByb2plY3Qub3JnL2dpdHdlYi8/cD14ZW4uZ2l0O2E9c2hv
cnRsb2c7aD1SRUxFQVNFLTQuMTguMCkgLSAyMDIzLVhYLVhYDQo+ICsjIyBbdW5zdGFibGUgVU5S
RUxFQVNFRF0oaHR0cHM6Ly94ZW5iaXRzLnhlbnByb2plY3Qub3JnL2dpdHdlYi8/cD14ZW4uZ2l0
O2E9c2hvcnRsb2c7aD1zdGFnaW5nKSAtIFRCRA0KPiArDQo+ICsjIyMgQ2hhbmdlZA0KPiArDQo+
ICsjIyMgQWRkZWQNCj4gKw0KPiArIyMjIFJlbW92ZWQNCj4gKw0KPiArIyMgWzQuMTguMF0oaHR0
cHM6Ly94ZW5iaXRzLnhlbnByb2plY3Qub3JnL2dpdHdlYi8/cD14ZW4uZ2l0O2E9c2hvcnRsb2c7
aD1SRUxFQVNFLTQuMTguMCkgLSAyMDIzLTExLTE2DQoNClRvIGJlIGhvbmVzdCBJIHdpbGwgc3Bs
aXQgdGhlbSBmb3IgdGhlIGNvbnZlbmllbmNlIG9mIHRoZSByZWxlYXNlIHRlY2huaWNpYW7igJlz
IHdvcmsuIFNvcnJ5Li4NCg0KS2luZCByZWdhcmRzLA0KSGVucnkNCg0K


From xen-devel-bounces@lists.xenproject.org Tue Oct 31 14:49:45 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 14:49:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625849.975565 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxq3t-0002dW-Dt; Tue, 31 Oct 2023 14:49:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625849.975565; Tue, 31 Oct 2023 14:49: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 1qxq3t-0002dP-A6; Tue, 31 Oct 2023 14:49:45 +0000
Received: by outflank-mailman (input) for mailman id 625849;
 Tue, 31 Oct 2023 14:49: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=kxST=GN=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qxq3s-0002d0-FN
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 14:49:44 +0000
Received: from foss.arm.com (foss.arm.com [217.140.110.172])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTP
 id b945da58-77fc-11ee-9b0e-b553b5be7939;
 Tue, 31 Oct 2023 15:49:42 +0100 (CET)
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 4CED52F4;
 Tue, 31 Oct 2023 07:50:23 -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 9E9A13F738;
 Tue, 31 Oct 2023 07: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: b945da58-77fc-11ee-9b0e-b553b5be7939
From: Henry Wang <Henry.Wang@arm.com>
To: xen-devel@lists.xenproject.org
Cc: Henry Wang <Henry.Wang@arm.com>,
	Community Manager <community.manager@xenproject.org>,
	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>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>,
	Wei Chen <wei.chen@arm.com>
Subject: [PATCH v5 1/2] CHANGELOG.md: Finalize the 4.18 release date
Date: Tue, 31 Oct 2023 22:49:24 +0800
Message-Id: <20231031144925.2416266-2-Henry.Wang@arm.com>
X-Mailer: git-send-email 2.25.1
In-Reply-To: <20231031144925.2416266-1-Henry.Wang@arm.com>
References: <20231031144925.2416266-1-Henry.Wang@arm.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Signed-off-by: Henry Wang <Henry.Wang@arm.com>
---
v5:
- New patch
---
 CHANGELOG.md | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/CHANGELOG.md b/CHANGELOG.md
index 3ca7969699..94dbd83894 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -4,7 +4,7 @@ Notable changes to Xen will be documented in this file.
 
 The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
 
-## [4.18.0](https://xenbits.xenproject.org/gitweb/?p=xen.git;a=shortlog;h=RELEASE-4.18.0) - 2023-XX-XX
+## [4.18.0](https://xenbits.xenproject.org/gitweb/?p=xen.git;a=shortlog;h=RELEASE-4.18.0) - 2023-11-16
 
 ### Changed
  - Repurpose command line gnttab_max_{maptrack_,}frames options so they don't
-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Tue Oct 31 14:49:45 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 14:49:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625848.975555 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxq3n-0002Nm-6o; Tue, 31 Oct 2023 14:49:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625848.975555; Tue, 31 Oct 2023 14:49: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 1qxq3n-0002Nf-3P; Tue, 31 Oct 2023 14:49:39 +0000
Received: by outflank-mailman (input) for mailman id 625848;
 Tue, 31 Oct 2023 14:49: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=kxST=GN=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qxq3l-0002NZ-Qq
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 14:49:37 +0000
Received: from foss.arm.com (foss.arm.com [217.140.110.172])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTP
 id b5e5dc61-77fc-11ee-98d6-6d05b1d4d9a1;
 Tue, 31 Oct 2023 15:49:36 +0100 (CET)
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 9652B2F4;
 Tue, 31 Oct 2023 07:50:17 -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 E66723F738;
 Tue, 31 Oct 2023 07:49: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: b5e5dc61-77fc-11ee-98d6-6d05b1d4d9a1
From: Henry Wang <Henry.Wang@arm.com>
To: xen-devel@lists.xenproject.org
Cc: Henry Wang <Henry.Wang@arm.com>,
	Community Manager <community.manager@xenproject.org>,
	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>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>,
	Wei Chen <wei.chen@arm.com>
Subject: [PATCH v5 0/2] Finalize the 4.18 release date
Date: Tue, 31 Oct 2023 22:49:23 +0800
Message-Id: <20231031144925.2416266-1-Henry.Wang@arm.com>
X-Mailer: git-send-email 2.25.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Hi all,

This series finializes the 4.18 release date and starts a
new unstable release after branching.

Thanks.

Henry Wang (2):
  CHANGELOG.md: Finalize the 4.18 release date
  CHANGELOG.md: Start new "unstable" section

 CHANGELOG.md | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Tue Oct 31 14:49:49 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 14:49:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625850.975575 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxq3x-0002vL-Jw; Tue, 31 Oct 2023 14:49:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625850.975575; Tue, 31 Oct 2023 14:49: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 1qxq3x-0002vC-HA; Tue, 31 Oct 2023 14:49:49 +0000
Received: by outflank-mailman (input) for mailman id 625850;
 Tue, 31 Oct 2023 14:49: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=kxST=GN=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qxq3w-0002NZ-0n
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 14:49:48 +0000
Received: from foss.arm.com (foss.arm.com [217.140.110.172])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTP
 id bc52d934-77fc-11ee-98d6-6d05b1d4d9a1;
 Tue, 31 Oct 2023 15:49:47 +0100 (CET)
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 73DBB2F4;
 Tue, 31 Oct 2023 07:50:28 -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 C5BFC3F738;
 Tue, 31 Oct 2023 07:49: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: bc52d934-77fc-11ee-98d6-6d05b1d4d9a1
From: Henry Wang <Henry.Wang@arm.com>
To: xen-devel@lists.xenproject.org
Cc: Henry Wang <Henry.Wang@arm.com>,
	Community Manager <community.manager@xenproject.org>,
	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>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>,
	Wei Chen <wei.chen@arm.com>
Subject: [PATCH v5 2/2] CHANGELOG.md: Start new "unstable" section
Date: Tue, 31 Oct 2023 22:49:25 +0800
Message-Id: <20231031144925.2416266-3-Henry.Wang@arm.com>
X-Mailer: git-send-email 2.25.1
In-Reply-To: <20231031144925.2416266-1-Henry.Wang@arm.com>
References: <20231031144925.2416266-1-Henry.Wang@arm.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Signed-off-by: Henry Wang <Henry.Wang@arm.com>
---
v5:
- Rebase on previous patches.
---
 CHANGELOG.md | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/CHANGELOG.md b/CHANGELOG.md
index 94dbd83894..cbdc9bceac 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -4,6 +4,14 @@ Notable changes to Xen will be documented in this file.
 
 The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
 
+## [unstable UNRELEASED](https://xenbits.xenproject.org/gitweb/?p=xen.git;a=shortlog;h=staging) - TBD
+
+### Changed
+
+### Added
+
+### Removed
+
 ## [4.18.0](https://xenbits.xenproject.org/gitweb/?p=xen.git;a=shortlog;h=RELEASE-4.18.0) - 2023-11-16
 
 ### Changed
-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Tue Oct 31 14:52:47 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 14:52:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625863.975584 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxq6o-0004v6-1c; Tue, 31 Oct 2023 14:52:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625863.975584; Tue, 31 Oct 2023 14:52: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 1qxq6n-0004uz-VM; Tue, 31 Oct 2023 14:52:45 +0000
Received: by outflank-mailman (input) for mailman id 625863;
 Tue, 31 Oct 2023 14:52:44 +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 1qxq6m-0004ur-Qe
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 14:52:44 +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 1qxq6j-0005kw-QT; Tue, 31 Oct 2023 14:52:41 +0000
Received: from 54-240-197-239.amazon.com ([54.240.197.239]
 helo=[192.168.9.249]) by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qxq6j-00031U-IX; Tue, 31 Oct 2023 14:52: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=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=i+o9xNOUQwP/1uw4PqDICiGsoJ7ABp2Z37PRV7kBtIE=; b=W75Y9uoIYRcyj/T2lbaMpjj20Y
	5Vpxv+09u/xMt1TaAZ44BOPx0OOi9fjJSVAUKFUBvokse1Fv9WiBxwzGn0EWYDQgfdq8/bsYZTSrg
	NfBO4Yk1mp2krkY15LCzrleNbPtuVjuy+DUAEXvmOJ5ye3Scp1s2Rt2IfrMQeCcgeC/A=;
Message-ID: <4f8b3eb4-2765-40e6-8979-ccfebd81e37d@xen.org>
Date: Tue, 31 Oct 2023 14:52:38 +0000
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v5 1/2] CHANGELOG.md: Finalize the 4.18 release date
Content-Language: en-GB
To: Henry Wang <Henry.Wang@arm.com>, xen-devel@lists.xenproject.org
Cc: Community Manager <community.manager@xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.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>, =?UTF-8?Q?Roger_Pau_Monn=C3=A9?=
 <roger.pau@citrix.com>, Wei Chen <wei.chen@arm.com>
References: <20231031144925.2416266-1-Henry.Wang@arm.com>
 <20231031144925.2416266-2-Henry.Wang@arm.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <20231031144925.2416266-2-Henry.Wang@arm.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit



On 31/10/2023 14:49, Henry Wang wrote:
> Signed-off-by: Henry Wang <Henry.Wang@arm.com>

Acked-by: Julien Grall <jgrall@amazon.com>

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Oct 31 14:53:07 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 14:53:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625865.975594 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxq79-0005K1-9k; Tue, 31 Oct 2023 14:53:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625865.975594; Tue, 31 Oct 2023 14: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 1qxq79-0005Ju-77; Tue, 31 Oct 2023 14:53:07 +0000
Received: by outflank-mailman (input) for mailman id 625865;
 Tue, 31 Oct 2023 14:53: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 1qxq77-0005JS-GD
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 14:53: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 1qxq75-0005m1-Ih; Tue, 31 Oct 2023 14:53:03 +0000
Received: from 54-240-197-239.amazon.com ([54.240.197.239]
 helo=[192.168.9.249]) by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qxq75-00031U-5K; Tue, 31 Oct 2023 14:53: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:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=NPot+qUmIkk9Y770acfuNaFpWkQZXJKej5geO2NJa/4=; b=7LyPnpKrihg94sAMxcKEIk54qw
	98d6Fv30oramqI+Da8tRfxluxMARbQYRaYCFeLnKBBv5682VGMMFMhe+hZqPCmOsZQtIP7dX9Ur5t
	eAIPuUaanMYzjBXk4V8qg19PH6RJTqyH5Yye89CDPmDbl4ceJ6GG55YDgG47ZO2dyz+8=;
Message-ID: <69678277-027c-499a-9702-9400c78c2e21@xen.org>
Date: Tue, 31 Oct 2023 14:53:01 +0000
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v5 2/2] CHANGELOG.md: Start new "unstable" section
Content-Language: en-GB
To: Henry Wang <Henry.Wang@arm.com>, xen-devel@lists.xenproject.org
Cc: Community Manager <community.manager@xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.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>, =?UTF-8?Q?Roger_Pau_Monn=C3=A9?=
 <roger.pau@citrix.com>, Wei Chen <wei.chen@arm.com>
References: <20231031144925.2416266-1-Henry.Wang@arm.com>
 <20231031144925.2416266-3-Henry.Wang@arm.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <20231031144925.2416266-3-Henry.Wang@arm.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi Henry,

On 31/10/2023 14:49, Henry Wang wrote:
> Signed-off-by: Henry Wang <Henry.Wang@arm.com>

Acked-by: Julien Grall <jgrall@amazon.com>

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Oct 31 14:53:15 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 14:53:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625867.975604 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxq7H-0005fP-HD; Tue, 31 Oct 2023 14:53:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625867.975604; Tue, 31 Oct 2023 14:53: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 1qxq7H-0005f8-EB; Tue, 31 Oct 2023 14:53:15 +0000
Received: by outflank-mailman (input) for mailman id 625867;
 Tue, 31 Oct 2023 14:53: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=kxST=GN=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qxq7G-0005EN-N2
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 14:53:14 +0000
Received: from EUR01-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur01on2083.outbound.protection.outlook.com [40.107.13.83])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 37b12797-77fd-11ee-98d6-6d05b1d4d9a1;
 Tue, 31 Oct 2023 15:53:14 +0100 (CET)
Received: from AS9PR05CA0012.eurprd05.prod.outlook.com (2603:10a6:20b:488::30)
 by DU0PR08MB8164.eurprd08.prod.outlook.com (2603:10a6:10:3ef::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.28; Tue, 31 Oct
 2023 14:52:40 +0000
Received: from AM2PEPF0001C711.eurprd05.prod.outlook.com
 (2603:10a6:20b:488:cafe::e0) by AS9PR05CA0012.outlook.office365.com
 (2603:10a6:20b:488::30) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.29 via Frontend
 Transport; Tue, 31 Oct 2023 14:52:40 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM2PEPF0001C711.mail.protection.outlook.com (10.167.16.181) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6954.19 via Frontend Transport; Tue, 31 Oct 2023 14:52:39 +0000
Received: ("Tessian outbound 385ad2f98d71:v228");
 Tue, 31 Oct 2023 14:52:39 +0000
Received: from 47ff256889c3.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 4053E6CB-A0FF-4E53-8AC6-022C354E671A.1; 
 Tue, 31 Oct 2023 14:52:32 +0000
Received: from EUR01-HE1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 47ff256889c3.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Tue, 31 Oct 2023 14:52:32 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by DB4PR08MB8031.eurprd08.prod.outlook.com (2603:10a6:10:389::8) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.22; Tue, 31 Oct
 2023 14:52:28 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::ae6e:f96c:f2f3:efc9]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::ae6e:f96c:f2f3:efc9%4]) with mapi id 15.20.6933.028; Tue, 31 Oct 2023
 14: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: 37b12797-77fd-11ee-98d6-6d05b1d4d9a1
ARC-Seal: i=2; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=pass;
 b=PK/2/iY1P4lWqurMNy1/o48LUx5/bP81Ufgb8Pl6L47d6RQEG6AqvYQfYFka8BG8eAQRoFjZrSb0/l3BMeORVrl5ZAjuTKLLFTjjadcwBpVVxQUcFLfovFG1wmGMRTq3glO5n8XTH7pNZjWNQm5ElMImLEa0gF8t4ZPfR8YdVh1VjFFZxtcGQI2g7j/lHXKViXEAjBTmmgEqmq7Ky9mB6fjlwEHUEKC5sVCfYv2Bsx+Xq4oCfmV80n8IgJhyY6OviCTe1QGSBFJeL0OkdwyERJ/RR40LrH9/2Z7wOqDr2+SDHuIkXncjYITC6k/DKt0aZvsnBkN2UtBktCzcp8aNqA==
ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=sAhee3FuCOxAlyfkFKoBVSctDWy5Lsk9D5IFhXCiU6M=;
 b=Ia/5OuFtyOUnnvr3BABNeuEMswoDtYKr7hwQcounGAZSu2vYD3TTdVMiNQbd2j5ejHBZ3N0/6jlomxljXQnVCHntVFeIWFAVYOReIrCB4uNibYcsKHXcIru4tA8XaTdP0pJp1ti7UMDZ9EDFbvmI0utoVPCTAbDX+nhtzfcONizurkkao30WtZiTGOwzahRjVOkgdaKMcuyNpJ3tO/LR+NxOEVI+HVWqQyu1ThqOWKI9TLGcPQmPZeH4a9B3sjq6H0g6Nj8m/iY4HWvkMxh3Rowo9o/YF+OJbMhZ/EsoDgMera1t91WfTErEdmin1ouMV87lf/8RWiIYy/TllJNVTg==
ARC-Authentication-Results: i=2; mx.microsoft.com 1; spf=pass (sender ip is
 63.35.35.123) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=arm.com;
 dmarc=pass (p=none sp=none pct=100) action=none header.from=arm.com;
 dkim=pass (signature was verified) header.d=armh.onmicrosoft.com; arc=pass (0
 oda=1 ltdi=1 spf=[1,1,smtp.mailfrom=arm.com] dkim=[1,1,header.d=arm.com]
 dmarc=[1,1,header.from=arm.com])
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=sAhee3FuCOxAlyfkFKoBVSctDWy5Lsk9D5IFhXCiU6M=;
 b=mrFLS5k/c/cxP2MKE0l4cQq8aqqf2rZLaXDZRTzdR3cwRGV9Y+QwpGCmhX15TeBeHMadaRrNdw8sgGRAMdogoGa+3gReSQPEALeIXcZDOAEdXuMBfm0uNvurMa6Kdw3helypqpxmfEHQRn8fDkvm/DIRJA3aSJY7Fe4Mx16VHao=
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: f401438ab803b452
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=nIBzLb0WB5WoKR7eTbNcKeMO0Ug9EGJeBHSCfk+sNwggl9FF7aoxbFiYXprp2atc+7tFm4r6jbv/+PzVHa9OprdBpzrUAodjSccEgOQYWGo3P72AkgMWLpIn59AfaOKIKVbTiVB5bv0/20GCbFQFUkQpb0CYq3M7Cr/Fq+nmP7P6DolesoBuwGL3dORYv5ipMoZHGfvGXmKRsQB2VlgZY5C622S4LFe+nZ+LECHtiVDrHgnP2GDMZyDnZDrCEWiPxKYbf8WGmub4b1ZcEyf8DsNp34lrVPrANExfUYx+sy+yGEYBOEv//C+Wypfwc8S90JOohTbHhobf9f2iDNpM1g==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=sAhee3FuCOxAlyfkFKoBVSctDWy5Lsk9D5IFhXCiU6M=;
 b=VbreqynwB///7+RlxKfe722qV6E49WEvTJuevchf5ky+vYMO08wkple32n+XrDrQUq4m4FvesMYBHp/Mb6813J5qxWz8lHpnK0TeVdJIZAwwzswbvVjYOukBTWXi6CpTKp4q7m8tTlbmMyh+zdQi3NO8AFP3fveW7XLPBdm1pALU0KVl5RPSZGqXfJXyIfO6nfI7C1eYAOCeJBkH/RJQVvO7XXq0yq9+tgePHSajiurp2wEB1V4TTqRCsIhFl4Rd6nvj7l3KJku+LR16Bd3DZdYDCysXPJRQuRypJIMjSQgQYhSyscXnB2ex4a2zvwg6cvGCqfXjXeM3X49QiYvhOw==
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=sAhee3FuCOxAlyfkFKoBVSctDWy5Lsk9D5IFhXCiU6M=;
 b=mrFLS5k/c/cxP2MKE0l4cQq8aqqf2rZLaXDZRTzdR3cwRGV9Y+QwpGCmhX15TeBeHMadaRrNdw8sgGRAMdogoGa+3gReSQPEALeIXcZDOAEdXuMBfm0uNvurMa6Kdw3helypqpxmfEHQRn8fDkvm/DIRJA3aSJY7Fe4Mx16VHao=
From: Henry Wang <Henry.Wang@arm.com>
To: Julien Grall <julien@xen.org>, Andrew Cooper <andrew.cooper3@citrix.com>
CC: Xen-devel <xen-devel@lists.xenproject.org>, George Dunlap
	<George.Dunlap@eu.citrix.com>, Jan Beulich <JBeulich@suse.com>, Stefano
 Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
	=?utf-8?B?Um9nZXIgUGF1IE1vbm7DqQ==?= <roger.pau@citrix.com>
Subject: Re: [PATCH for-4.19 3/3] CHANGELOG: Keep unstable section
Thread-Topic: [PATCH for-4.19 3/3] CHANGELOG: Keep unstable section
Thread-Index:
 AQHaC/z+qewsCH8hs0O77m1LKul+n7Bj5TMAgAAB74CAAAHmgIAABd8AgAADgQCAAAlOAA==
Date: Tue, 31 Oct 2023 14:52:28 +0000
Message-ID: <65C1B964-D92C-4E5F-BEFA-E721D10CD861@arm.com>
References: <20231031131954.3310725-1-andrew.cooper3@citrix.com>
 <20231031131954.3310725-4-andrew.cooper3@citrix.com>
 <d2a5b85e-e25a-458e-b3ad-0821eb106e85@xen.org>
 <37bcdf0c-75be-4390-8758-d53f097d5b88@citrix.com>
 <1bac4eda-a0d8-4dd8-83ba-9ad78eb2947e@xen.org>
 <a2c46e32-98e5-407b-8b0d-5f4f319b68f1@citrix.com>
 <6eb07e69-c4e8-47ce-b2e9-0fe40c2668fc@xen.org>
In-Reply-To: <6eb07e69-c4e8-47ce-b2e9-0fe40c2668fc@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_|DB4PR08MB8031:EE_|AM2PEPF0001C711:EE_|DU0PR08MB8164:EE_
X-MS-Office365-Filtering-Correlation-Id: e49c8c13-953b-4ab4-1383-08dbda2107a0
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:
 QNs3Rweygt42loY/GGUWmfE3uPtT2NR30DZvwrKA9FtPE17PJDtaB90ntQ4WRUt8fRd9YavGnUbl1A8+snfCCCuztFCOIX/I0NYaTDVJxgbebwh9VvjUr0ni0dqBmEMdf9WOS99MSPKbpN9BJvxl6XtSq4GVe+voP0Pr3CbUly3H2kfSVk/SxB4nwKge0h0hll/oTwQOWbF5EdOD7AbxiT1uldHkwgzR0HEfajZsdiQWfu/6e+3KFeTJtKn234yeqX0ARotnBhOVe1B5Gfc8W4g3J+kND2RMCj4h5fPWdRDTuuMp/kzw1ni//9Mxx6r5QuUmBsdjYHRiwU/NJAUkkgtkVMzPc2+u2aAAJknAchDhUS/fLmzlevOJIxpoIP8fiPgC+MAwN1D2gbh+hbJ18ibrrMuSMSKAzN950sub+aI7rM761sbGUwU3m0Hmz9v0NS6fyURgY7HS4HpWg510/6DK6IUoP1FEJcLIztua+pfyrAhQWu2+AjnJOODE9DENvnFAgN+yBdg/0uIFQg+V0tzPHfdZM3XZq/hr89PHgH5X4mlw8kUCYXjWjwVvNjNFHS/TQpuGncOf0EwetrzTur0MknKjKqGOfyJwj7KbjL+jGTHrmvH59DExR/aIKxluRjoInofcOOdg/ztbFm8mDo8tQ8M0n/DwSLXOFEhpV7LMmjjJQ4+Qy2fg1ye8csMz
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)(39850400004)(230922051799003)(1800799009)(451199024)(64100799003)(186009)(86362001)(6512007)(2616005)(41300700001)(5660300002)(91956017)(122000001)(26005)(8676002)(478600001)(966005)(4326008)(8936002)(36756003)(110136005)(66476007)(66446008)(316002)(54906003)(76116006)(38070700009)(66556008)(6486002)(6506007)(64756008)(66946007)(71200400001)(53546011)(4744005)(33656002)(2906002)(38100700002)(83380400001)(207903002)(219803003)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <E692F24F43406B46A8A06063AFE6ABF1@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB4PR08MB8031
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:
 AM2PEPF0001C711.eurprd05.prod.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	62fc575c-c3b6-495a-b7a7-08dbda210102
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	d2ycOPoA3gTsUui8vM+3m3bqpoGsbAAnQqGAok8uiFoFMvlYEyqtNTTYyvN1BPVfNUA1PsyE+Zgk7x/0ajXOZvvJ8ioRzPoegTmXriTqTBRcRZgr/07rPht10PbAFxNzLLnpTn3D66ajBww5swpGV6SnLkz5HDuuBc0SAe/8TMu9h/oCTjvR5KX9HX0LpL9oEJgpCXIVzPJerFH1RFhTpNS9GQvIj+MnDb5s91aKNShEbEcNBRf+o0q1Ml0RdyKIkca0XtvPAuLgUlbExJXYe3YrY3q6NayOAyOFhouqyi0N2+BweG5uRk32rFkglNgrFv+AiAjdIoy/xoNvGkAVoC4wufbPbQow0fEYrYKhW8At/8Qwd/sGuQOG2on3PTY+WW5+c8rY7Wu4hX1HpeF373X3+/vuxt9gRQDdqOc5RQi+O58y8EDov0ZhRLo/dpB/WppTx872f2c62t0iCoo30Qqjj6PZPTUSkOqPchmKKpCvLJ7COkVIcuemVfxFatabrSFvck/aMlLoNUv6TkvWNHyyBMDtBA5751LDp5mZQjJEeaXosTtg8lHshFI+qaKjrL3UW5uTzbp0TegTTBw9W01uNy+HKg0SXt21QTDfBcbfx6iAeKpIk+9CnWgmbU6qG0uahnuIPgmVHgb39TaTbep+/r29qhoHJc9TOf61W4fM9IGWqrmJnt2GPOpN5sDpZ46SXrCJmCExxaF8YYKdQ9crMEfrbD/TK9NWIE2L1HH62AZMV50ssXARLbt5bpPFimlfL+7irwYlwzaLNGNhYg==
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)(396003)(346002)(230922051799003)(82310400011)(186009)(64100799003)(451199024)(1800799009)(46966006)(40470700004)(36840700001)(40460700003)(40480700001)(6512007)(53546011)(83380400001)(6486002)(966005)(478600001)(6506007)(36860700001)(33656002)(36756003)(86362001)(356005)(81166007)(82740400003)(5660300002)(41300700001)(54906003)(4744005)(26005)(47076005)(336012)(2906002)(107886003)(2616005)(70586007)(70206006)(8936002)(110136005)(316002)(8676002)(4326008)(219803003)(207903002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 31 Oct 2023 14:52:39.9295
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: e49c8c13-953b-4ab4-1383-08dbda2107a0
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:
	AM2PEPF0001C711.eurprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR08MB8164

SGkgYm90aCwNCg0KPiBPbiBPY3QgMzEsIDIwMjMsIGF0IDIyOjE5LCBKdWxpZW4gR3JhbGwgPGp1
bGllbkB4ZW4ub3JnPiB3cm90ZToNCj4gT24gMzEvMTAvMjAyMyAxNDowNiwgQW5kcmV3IENvb3Bl
ciB3cm90ZToNCj4+IE9uIDMxLzEwLzIwMjMgMTo0NSBwbSwgSnVsaWVuIEdyYWxsIHdyb3RlOg0K
Pj4+IElmIHlvdSB3YW50IHRvIGdvIGRvd24gdGhhdCByb3V0ZSwgdGhlbiBwbGVhc2UgdXBkYXRl
IHRoZQ0KPj4+IGRvY3MvcHJvY2Vzcy9icmFuY2hpbmctY2hlY2tsaXN0LnR4dC4gT3RoZXJ3aXNl
LCBJIHdpbGwgY29udGludWUgdG8gZG8NCj4+PiBhcyBJIGRpZCBwcmV2aW91c2x5Lg0KPj4gSXQg
KmlzKiBpbiB0aGUgY2hlY2tsaXN0LCBhbmQgZm9yIGFsbCBwcmV2aW91cyByZWxlYXNlcyBldmVu
IDQuMTcsIHRoZQ0KPj4gc3RhZ2luZyBzZWN0aW9uIHdhcyBvcGVuZWQgYXQgdGhlIHRpbWUgb2Yg
YnJhbmNoaW5nLg0KPiANCj4gSXQgZG9lc24ndCB0ZWxsIG1lIHdoZW4gaXQgaGFzIHRvIGJlIGRv
bmUuIFRoZSBkaWZmZXJlbmNlIHdpdGggNC4xNyBpcyB3ZSBkb24ndCB5ZXQgaGF2ZSBhIGRhdGUg
Zm9yIHRoZSByZWxlYXNlLiBIZW5jZSB3aHkgSSBkZWxheWVkLg0KDQpJ4oCZdmUgc2VudCB0aGUg
dXBkYXRlZCBbMV0gb3V0LCBob3BlZnVsbHkgdGhpcyB3aWxsIG1ha2UgYm90aCBvZiB5b3UgaGFw
cHkgKFN0aWxsIEkgYW0gdGhpbmtpbmcNCmJvdGggb2YgeW91IGFyZSBhY3R1YWxseSBtZW50aW9u
aW5nIHRoZSBzYW1lIHRoaW5nLCBpLmUuIHN0YXJ0aW5nIGEgbmV3IHVuc3RhYmxlIHNlY3Rpb24g
YWZ0ZXINCnRoZSBicmFuY2hpbmcpLg0KDQpbMV0gaHR0cHM6Ly9sb3JlLmtlcm5lbC5vcmcveGVu
LWRldmVsLzIwMjMxMDMxMTQ0OTI1LjI0MTYyNjYtMS1IZW5yeS5XYW5nQGFybS5jb20vDQoNCktp
bmQgcmVnYXJkcywNCkhlbnJ5


From xen-devel-bounces@lists.xenproject.org Tue Oct 31 15:00:00 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 15:00:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625877.975614 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxqDh-00084P-6P; Tue, 31 Oct 2023 14:59:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625877.975614; Tue, 31 Oct 2023 14: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 1qxqDh-00084I-3u; Tue, 31 Oct 2023 14:59:53 +0000
Received: by outflank-mailman (input) for mailman id 625877;
 Tue, 31 Oct 2023 14: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=G+CR=GN=cloud.com=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qxqDf-00084C-Gf
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 14:59:51 +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 23dc02ce-77fe-11ee-98d6-6d05b1d4d9a1;
 Tue, 31 Oct 2023 15:59:50 +0100 (CET)
Received: by mail-ej1-x62d.google.com with SMTP id
 a640c23a62f3a-9936b3d0286so889356466b.0
 for <xen-devel@lists.xenproject.org>; Tue, 31 Oct 2023 07:59:50 -0700 (PDT)
Received: from localhost ([213.195.113.99]) by smtp.gmail.com with ESMTPSA id
 lh8-20020a170906f8c800b009b9a1714524sm1120553ejb.12.2023.10.31.07.59.49
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Tue, 31 Oct 2023 07:59: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: 23dc02ce-77fe-11ee-98d6-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1698764389; x=1699369189; 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=KuzpbS4fwfRka9b9tPPjC0VNVS6l0XU92FJciA9DmYI=;
        b=cMagSHhDrHMh9BBG8HkzCSTgmUOxR7Cu+mz1PFx8/m0wv2Q7tOFOnEU6kBtYq8fPPM
         z8YiJJ/Iwn4qzKC7LbpV4sfFJGRImcG67aDZwsi8PSmryzUE36MSxTtrnIyxi6d9ThpK
         c1MUGXpLh4HuOZHZG8FC+OOI8yHHcoxJ2S514=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698764389; x=1699369189;
        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=KuzpbS4fwfRka9b9tPPjC0VNVS6l0XU92FJciA9DmYI=;
        b=WElt7PK3SqX084+kC6SOYbmYoVXZjxNpcBAuFaZX13C5BIxF6IwLWx6nldCGra5Jlp
         ob4pqzrNPo/GhztB4Lp1jycLbinTVK8uZz75i7orZ0VB9xaFE534l/rkxdAPgiFZwSK3
         OopD1sH2k0x6luolgo5/QS1Uy3iQchke7GqeXnXoNzAlHIHivHvVHSG8omwMzpFXVCIU
         QCfFPvKhh3HqTcE4DMoaW6L2cIhY5DLk+DlME06mFusESLPHxvVQhg8fcRgduzbBZyDr
         6ZjrMKkC53VOvwkHKGEQtNuFjT/OS1KRgo57rxtttIvrSpYs2NlxWnHX80OuFIiZdP4d
         pziA==
X-Gm-Message-State: AOJu0YyQkcJNNKjf6/2jSUAGiHwXWQLiZQoNZsu4gtk4t0+oLP0GQV4M
	KCfc3pHc20uGTVmLPFBBJjdsDErWBBc1l1M8MSs=
X-Google-Smtp-Source: AGHT+IHRM3ANT4HmLWz0pLruGFoi2Ue6wtq1mf8hRII6GHCwBjEs1jinPMEiPFaiBg7YkVhOPzFs7A==
X-Received: by 2002:a17:907:9496:b0:9a5:a0c6:9e8e with SMTP id dm22-20020a170907949600b009a5a0c69e8emr11149460ejc.31.1698764389483;
        Tue, 31 Oct 2023 07:59:49 -0700 (PDT)
From: Roger Pau Monne <roger.pau@citrix.com>
To: xen-devel@lists.xenproject.org
Cc: Roger Pau Monne <roger.pau@citrix.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>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH v2] x86/x2apic: introduce a mixed physical/cluster mode
Date: Tue, 31 Oct 2023 15:52:59 +0100
Message-ID: <20231031145259.77199-1-roger.pau@citrix.com>
X-Mailer: git-send-email 2.42.0
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

The current implementation of x2APIC requires to either use Cluster Logical or
Physical mode for all interrupts.  However the selection of Physical vs Logical
is not done at APIC setup, an APIC can be addressed both in Physical or Logical
destination modes concurrently.

Introduce a new x2APIC mode called mixed, which uses Logical Cluster mode for
IPIs, and Physical mode for external interrupts, thus attempting to use the
best method for each interrupt type.

Using Physical mode for external interrupts allows more vectors to be used, and
interrupt balancing to be more accurate.

Using Logical Cluster mode for IPIs allows less accesses to the ICR register
when sending those, as multiple CPUs can be targeted with a single ICR register
write.

A simple test calling flush_tlb_all() 10000 times in a tight loop on a 96 CPU
box gives the following average figures:

Physical mode: 26617931ns
Mixed mode:    23865337ns

So ~10% improvement versus plain Physical mode.  Note that Xen uses Cluster
mode by default, and hence is already using the fastest way for IPI delivery at
the cost of reducing the amount of vectors available system-wide.

Make the newly introduced mode the default one.

Suggested-by: Andrew Cooper <andrew.cooper3@citrix.com>
Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
---
Changes since v1:
 - Add change log entry.
 - Fix indentation and usage of tristate in Kconfig.
 - Adjust comment regarding hooks used by external interrupts in
   apic_x2apic_mixed.
---
 CHANGELOG.md                      |  6 ++
 docs/misc/xen-command-line.pandoc | 12 ++++
 xen/arch/x86/Kconfig              | 35 ++++++++++--
 xen/arch/x86/genapic/x2apic.c     | 91 ++++++++++++++++++++++---------
 4 files changed, 114 insertions(+), 30 deletions(-)

diff --git a/CHANGELOG.md b/CHANGELOG.md
index 3ca796969990..9b04849b0336 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -4,6 +4,12 @@ Notable changes to Xen will be documented in this file.
 
 The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
 
+## [unstable UNRELEASED](https://xenbits.xenproject.org/gitweb/?p=xen.git;a=shortlog;h=staging) - TBD
+
+### Added
+ - On x86 introduce a new x2APIC driver that uses Cluster Logical addressing
+   mode for IPIs and Physical addressing mode for external interrupts.
+
 ## [4.18.0](https://xenbits.xenproject.org/gitweb/?p=xen.git;a=shortlog;h=RELEASE-4.18.0) - 2023-XX-XX
 
 ### Changed
diff --git a/docs/misc/xen-command-line.pandoc b/docs/misc/xen-command-line.pandoc
index 6b07d0f3a17f..cbe9b4802c61 100644
--- a/docs/misc/xen-command-line.pandoc
+++ b/docs/misc/xen-command-line.pandoc
@@ -2802,6 +2802,15 @@ the watchdog.
 
 Permit use of x2apic setup for SMP environments.
 
+### x2apic-mode (x86)
+> `= physical | cluster | mixed`
+
+> Default: `physical` if **FADT** mandates physical mode, otherwise set at
+>          build time by CONFIG_X2APIC_{PHYSICAL,LOGICAL,MIXED}.
+
+In the case that x2apic is in use, this option switches between modes to
+address APICs in the system as interrupt destinations.
+
 ### x2apic_phys (x86)
 > `= <boolean>`
 
@@ -2812,6 +2821,9 @@ In the case that x2apic is in use, this option switches between physical and
 clustered mode.  The default, given no hint from the **FADT**, is cluster
 mode.
 
+**WARNING: `x2apic_phys` is deprecated and superseded by `x2apic-mode`.
+The latter takes precedence if both are set.**
+
 ### xenheap_megabytes (arm32)
 > `= <size>`
 
diff --git a/xen/arch/x86/Kconfig b/xen/arch/x86/Kconfig
index eac77573bd75..cd9286f295e5 100644
--- a/xen/arch/x86/Kconfig
+++ b/xen/arch/x86/Kconfig
@@ -228,11 +228,18 @@ config XEN_ALIGN_2M
 
 endchoice
 
-config X2APIC_PHYSICAL
-	bool "x2APIC Physical Destination mode"
+choice
+	prompt "x2APIC Destination mode"
+	default X2APIC_MIXED
 	help
-	  Use x2APIC Physical Destination mode by default when available.
+	  Select APIC addressing when x2APIC is enabled.
+
+	  The default mode is mixed which should provide the best aspects
+	  of both physical and cluster modes.
 
+config X2APIC_PHYSICAL
+	bool "Physical Destination mode"
+	help
 	  When using this mode APICs are addressed using the Physical
 	  Destination mode, which allows using all dynamic vectors on each
 	  CPU independently.
@@ -242,9 +249,27 @@ config X2APIC_PHYSICAL
 	  destination inter processor interrupts (IPIs) slightly slower than
 	  Logical Destination mode.
 
-	  The mode when this option is not selected is Logical Destination.
+config X2APIC_CLUSTER
+	bool "Cluster Destination mode"
+	help
+	  When using this mode APICs are addressed using the Cluster Logical
+	  Destination mode.
+
+	  Cluster Destination has the benefit of sending IPIs faster since
+	  multiple APICs can be targeted as destinations of a single IPI.
+	  However the vector space is shared between all CPUs on the cluster,
+	  and hence using this mode reduces the number of available vectors
+	  when compared to Physical mode.
 
-	  If unsure, say N.
+config X2APIC_MIXED
+	bool "Mixed Destination mode"
+	help
+	  When using this mode APICs are addressed using the Cluster Logical
+	  Destination mode for IPIs and Physical mode for external interrupts.
+
+	  Should provide the best of both modes.
+
+endchoice
 
 config GUEST
 	bool
diff --git a/xen/arch/x86/genapic/x2apic.c b/xen/arch/x86/genapic/x2apic.c
index 707deef98c27..7af1a21308b6 100644
--- a/xen/arch/x86/genapic/x2apic.c
+++ b/xen/arch/x86/genapic/x2apic.c
@@ -180,6 +180,29 @@ static const struct genapic __initconstrel apic_x2apic_cluster = {
     .send_IPI_self = send_IPI_self_x2apic
 };
 
+/*
+ * Mixed x2APIC mode: use physical for external (device) interrupts, and
+ * cluster for inter processor interrupts.  Such mode has the benefits of not
+ * sharing the vector space with all CPUs on the cluster, while still allowing
+ * IPIs to be more efficiently delivered by not having to perform an ICR write
+ * for each target CPU.
+ */
+static const struct genapic __initconstrel apic_x2apic_mixed = {
+    APIC_INIT("x2apic_mixed", NULL),
+    /*
+     * NB: IPIs use the send_IPI_{mask,self} hooks only, other fields are
+     * exclusively used by external interrupts and hence are set to use
+     * Physical destination mode handlers.
+     */
+    .int_delivery_mode = dest_Fixed,
+    .int_dest_mode = 0 /* physical delivery */,
+    .init_apic_ldr = init_apic_ldr_x2apic_cluster,
+    .vector_allocation_cpumask = vector_allocation_cpumask_phys,
+    .cpu_mask_to_apicid = cpu_mask_to_apicid_phys,
+    .send_IPI_mask = send_IPI_mask_x2apic_cluster,
+    .send_IPI_self = send_IPI_self_x2apic
+};
+
 static int cf_check update_clusterinfo(
     struct notifier_block *nfb, unsigned long action, void *hcpu)
 {
@@ -220,38 +243,56 @@ static struct notifier_block x2apic_cpu_nfb = {
 static int8_t __initdata x2apic_phys = -1;
 boolean_param("x2apic_phys", x2apic_phys);
 
+enum {
+   unset, physical, cluster, mixed
+} static __initdata x2apic_mode = unset;
+
+static int __init parse_x2apic_mode(const char *s)
+{
+    if ( !cmdline_strcmp(s, "physical") )
+        x2apic_mode = physical;
+    else if ( !cmdline_strcmp(s, "cluster") )
+        x2apic_mode = cluster;
+    else if ( !cmdline_strcmp(s, "mixed") )
+        x2apic_mode = mixed;
+    else
+        return EINVAL;
+
+    return 0;
+}
+custom_param("x2apic-mode", parse_x2apic_mode);
+
 const struct genapic *__init apic_x2apic_probe(void)
 {
-    if ( x2apic_phys < 0 )
+    /* x2apic-mode option has preference over x2apic_phys. */
+    if ( x2apic_phys >= 0 && x2apic_mode == unset )
+        x2apic_mode = x2apic_phys ? physical : cluster;
+
+    if ( x2apic_mode == unset )
     {
-        /*
-         * Force physical mode if there's no (full) interrupt remapping support:
-         * The ID in clustered mode requires a 32 bit destination field due to
-         * the usage of the high 16 bits to hold the cluster ID.
-         */
-        x2apic_phys = iommu_intremap != iommu_intremap_full ||
-                      (acpi_gbl_FADT.flags & ACPI_FADT_APIC_PHYSICAL) ||
-                      IS_ENABLED(CONFIG_X2APIC_PHYSICAL);
-    }
-    else if ( !x2apic_phys )
-        switch ( iommu_intremap )
+        if ( acpi_gbl_FADT.flags & ACPI_FADT_APIC_PHYSICAL )
         {
-        case iommu_intremap_off:
-        case iommu_intremap_restricted:
-            printk("WARNING: x2APIC cluster mode is not supported %s interrupt remapping -"
-                   " forcing phys mode\n",
-                   iommu_intremap == iommu_intremap_off ? "without"
-                                                        : "with restricted");
-            x2apic_phys = true;
-            break;
-
-        case iommu_intremap_full:
-            break;
+            printk(XENLOG_INFO "ACPI FADT forcing x2APIC physical mode\n");
+            x2apic_mode = physical;
         }
+        else
+            x2apic_mode = IS_ENABLED(CONFIG_X2APIC_MIXED) ? mixed
+                          : (IS_ENABLED(CONFIG_X2APIC_PHYSICAL) ? physical
+                                                                : cluster);
+    }
 
-    if ( x2apic_phys )
+    if ( x2apic_mode == physical )
         return &apic_x2apic_phys;
 
+    if ( x2apic_mode == cluster && iommu_intremap != iommu_intremap_full )
+    {
+        printk("WARNING: x2APIC cluster mode is not supported %s interrupt remapping -"
+               " forcing mixed mode\n",
+               iommu_intremap == iommu_intremap_off ? "without"
+                                                    : "with restricted");
+        x2apic_mode = mixed;
+    }
+
     if ( !this_cpu(cluster_cpus) )
     {
         update_clusterinfo(NULL, CPU_UP_PREPARE,
@@ -260,7 +301,7 @@ const struct genapic *__init apic_x2apic_probe(void)
         register_cpu_notifier(&x2apic_cpu_nfb);
     }
 
-    return &apic_x2apic_cluster;
+    return x2apic_mode == cluster ? &apic_x2apic_cluster : &apic_x2apic_mixed;
 }
 
 void __init check_x2apic_preenabled(void)
-- 
2.42.0



From xen-devel-bounces@lists.xenproject.org Tue Oct 31 15:10:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 15:10:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625882.975626 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxqO7-0003oT-C8; Tue, 31 Oct 2023 15:10:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625882.975626; Tue, 31 Oct 2023 15: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 1qxqO7-0003oM-7T; Tue, 31 Oct 2023 15:10:39 +0000
Received: by outflank-mailman (input) for mailman id 625882;
 Tue, 31 Oct 2023 15: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=TgTD=GN=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qxqO5-0003mu-Mu
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 15:10:37 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id a42ac9fd-77ff-11ee-9b0e-b553b5be7939;
 Tue, 31 Oct 2023 16:10:35 +0100 (CET)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id 7C8344EE073E;
 Tue, 31 Oct 2023 16:10:34 +0100 (CET)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a42ac9fd-77ff-11ee-9b0e-b553b5be7939
MIME-Version: 1.0
Date: Tue, 31 Oct 2023 16:10:34 +0100
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
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>,
 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>, George Dunlap <george.dunlap@citrix.com>, Wei
 Liu <wl@xen.org>
Subject: Re: [XEN PATCH][for-4.19 v5] xen: Add deviations for MISRA C:2012
 Rule 7.1
In-Reply-To: <DFC25ACE-FFBE-43CF-9CE2-90671D122CEC@arm.com>
References: <0c86b50a796ba2aaab01e30935ed559ab719d33a.1698418578.git.nicola.vetrini@bugseng.com>
 <98da41d4-f818-44c7-bd3c-b3e3b224ff0d@xen.org>
 <alpine.DEB.2.22.394.2310301544460.1625118@ubuntu-linux-20-04-desktop>
 <ee3c415d-bedd-432e-bf31-6e806b9cf976@xen.org>
 <DFC25ACE-FFBE-43CF-9CE2-90671D122CEC@arm.com>
Message-ID: <2201cad3353f5deb567f929e91e90fd2@bugseng.com>
X-Sender: nicola.vetrini@bugseng.com
Organization: BUGSENG s.r.l.
Content-Type: text/plain; charset=UTF-8;
 format=flowed
Content-Transfer-Encoding: 8bit

On 2023-10-31 15:13, Luca Fancellu wrote:
>> On 31 Oct 2023, at 13:27, Julien Grall <julien@xen.org> wrote:
>> 
>> Hi Stefano,
>> 
>> On 30/10/2023 22:49, Stefano Stabellini wrote:
>>> On Mon, 30 Oct 2023, Julien Grall wrote:
>>>> Hi Nicola,
>>>> 
>>>> On 27/10/2023 16:11, Nicola Vetrini wrote:
>>>>> diff --git a/docs/misra/deviations.rst b/docs/misra/deviations.rst
>>>>> index 8511a189253b..8aaaa1473fb4 100644
>>>>> --- a/docs/misra/deviations.rst
>>>>> +++ b/docs/misra/deviations.rst
>>>>> @@ -90,6 +90,13 @@ Deviations related to MISRA C:2012 Rules:
>>>>>            - __emulate_2op and __emulate_2op_nobyte
>>>>>            - read_debugreg and write_debugreg
>>>>>   +   * - R7.1
>>>>> +     - It is safe to use certain octal constants the way they are 
>>>>> defined
>>>>> +       in specifications, manuals, and algorithm descriptions. 
>>>>> Such places
>>>>> +       are marked safe with a /\* octal-ok \*/ in-code comment, or 
>>>>> with a
>>>>> SAF
>>>>> +       comment (see safe.json).
>>>> 
>>>> Reading this, it is unclear to me why we have two ways to deviate 
>>>> the rule
>>>> r7.1. And more importantely, how would the developper decide which 
>>>> one to use?
>>> I agree with you on this and we were discussing this topic just this
>>> morning in the FUSA community call. I think we need a way to do this
>>> with the SAF framework:
>>> if (some code with violation) /* SAF-xx-safe */
>>> This doesn't work today unfortunately. It can only be done this way:
>>> /* SAF-xx-safe */
>>> if (some code with violation)
>>> Which is not always desirable. octal-ok is just an ad-hoc solution 
>>> for
>>> one specific violation but we need a generic way to do this. Luca is
>>> investigating possible ways to support the previous format in SAF.
>> 
>> Why can't we use octal-ok everywhere for now? My point here is to make 
>> simple for the developper to know what to use.
>> 
>>> I think we should take this patch for now and harmonize it once SAF 
>>> is
>>> improved.
>> 
>> The description of the deviation needs some improvement. To give an 
>> example, with the current wording, one could they can use octal-ok 
>> everywhere. But above, you are implying that SAF-xx-safe should be
>> preferred.
>> 
>> I would still strongly prefer if we use octal-ok everywhere because 
>> this is simple to remember. But if the other are happy to have both 
>> SAF-XX and octal-ok, then the description needs to be completely 
>> unambiguous and the patch should contain some explanation why we have 
>> two different ways to deviate.
> 
> Would it be ok to have both, for example: /* SAF-XX-safe octal-ok */
> 
> So that the suppression engine do what it should (currently it doesn’t 
> suppress the same line, but we could do something about it) and the 
> developer
> has a way to understand what is the violation here without going to the 
> justification database.

I guess. It could overflow the 80-char limit in 
xen/arch/x86/hvm/svm/svm.h, though.

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


From xen-devel-bounces@lists.xenproject.org Tue Oct 31 15:14:22 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 15:14:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625886.975635 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxqRg-00057q-RX; Tue, 31 Oct 2023 15:14:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625886.975635; Tue, 31 Oct 2023 15:14: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 1qxqRg-00057j-NM; Tue, 31 Oct 2023 15:14:20 +0000
Received: by outflank-mailman (input) for mailman id 625886;
 Tue, 31 Oct 2023 15:14: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=k1/u=GN=arm.com=Luca.Fancellu@srs-se1.protection.inumbo.net>)
 id 1qxqRe-00056T-UG
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 15:14:19 +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 28e324fc-7800-11ee-98d6-6d05b1d4d9a1;
 Tue, 31 Oct 2023 16:14:18 +0100 (CET)
Received: from AM0PR02CA0009.eurprd02.prod.outlook.com (2603:10a6:208:3e::22)
 by DU0PR08MB8067.eurprd08.prod.outlook.com (2603:10a6:10:3ea::10)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.29; Tue, 31 Oct
 2023 15:14:04 +0000
Received: from AMS1EPF00000042.eurprd04.prod.outlook.com
 (2603:10a6:208:3e:cafe::c5) by AM0PR02CA0009.outlook.office365.com
 (2603:10a6:208:3e::22) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.28 via Frontend
 Transport; Tue, 31 Oct 2023 15:14:04 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AMS1EPF00000042.mail.protection.outlook.com (10.167.16.39) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6954.19 via Frontend Transport; Tue, 31 Oct 2023 15:14:04 +0000
Received: ("Tessian outbound 385ad2f98d71:v228");
 Tue, 31 Oct 2023 15:14:03 +0000
Received: from 3b219594fa67.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 3D1EF215-83D2-4D46-BAB0-DF9F895DEDEA.1; 
 Tue, 31 Oct 2023 15:12:52 +0000
Received: from EUR03-DBA-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 3b219594fa67.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Tue, 31 Oct 2023 15:12:52 +0000
Received: from AM6PR08MB3749.eurprd08.prod.outlook.com (2603:10a6:20b:8f::22)
 by PAVPR08MB9458.eurprd08.prod.outlook.com (2603:10a6:102:318::16)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.28; Tue, 31 Oct
 2023 15:12:50 +0000
Received: from AM6PR08MB3749.eurprd08.prod.outlook.com
 ([fe80::76e6:a7e1:1592:866]) by AM6PR08MB3749.eurprd08.prod.outlook.com
 ([fe80::76e6:a7e1:1592:866%3]) with mapi id 15.20.6933.022; Tue, 31 Oct 2023
 15:12: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: 28e324fc-7800-11ee-98d6-6d05b1d4d9a1
ARC-Seal: i=2; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=pass;
 b=iBz+jZNLh+EkchED5TRmd40FBrTxCXKQTfAO33T82RuQZVGX/viTHkkviFCQpDqvExp/tA7KPsxjg0EqcbW1qj4q7Qt2XimFw8+s/1CNu5R/f5VgEurCrbZRm7+o2jsolnUjPXM0K72hkqAyZCp4oucEbwrOOs9ydntLsCKrBITPEmZJGGdO1LaGLdPLP8n0MXEzs9Q/EItyUAOiyEdWhPUo7EpI9KwpQFTZ/kkI9wDJmxNDoJnuWWBK/taYs9tmdIWgnHnJkTeUdUFjDt8poxPjreVqqCaaYbj/7V1eTgcA2ciDa1fGHaGuyn/q/u/VM3peFHLVvW8OqrI/FyxxXQ==
ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=1T7yeauCTR7omGi+XgRXjd0oVPLCF1kXscxWhae86wg=;
 b=SLPZkVVfvu/h0uzg74mNUOTYvJ4fxS5IXo/uEXIqpw7F1bsFZBdWoMeQUOBo4eFYw5RbGKm6C8Ymb+YWxI65j92T0fBTG15D/aweLgdZc1mZOUYDZcmIu5xfr4kS75vzW8yjABpRU6YYZAGpb3CK/JPEJZ2thQ6qxUkxTDqgjiupljdIjKmtccfuDCUTX4lCAGb6qIYZ47orwCNCiO82DE98JpPHO7Px2+t8PvkSrsuLTuVl+XSk/utcF9FAD8w3Q+wAL7iycKP7x5pvKnSjpSNmN+UutAR/Khe5HV7QhLriYgPDzbLg29ia9pXMazIPh0STrpQfGEzZ1FAysThXbg==
ARC-Authentication-Results: i=2; mx.microsoft.com 1; spf=pass (sender ip is
 63.35.35.123) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=arm.com;
 dmarc=pass (p=none sp=none pct=100) action=none header.from=arm.com;
 dkim=pass (signature was verified) header.d=armh.onmicrosoft.com; arc=pass (0
 oda=1 ltdi=1 spf=[1,1,smtp.mailfrom=arm.com] dkim=[1,1,header.d=arm.com]
 dmarc=[1,1,header.from=arm.com])
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=1T7yeauCTR7omGi+XgRXjd0oVPLCF1kXscxWhae86wg=;
 b=24NOpMy+s5KUT0/dt2M+Ezt4y6/MyJ0Z/jqS5x63390QS8RsqYPNJkeUm2R0C76C6sIM9cLeNf+v9H3DjjgD+yWLtYok63MKmDgsDrAdQterIZN4mSaLbHavcYe6vz9NZLFLfOOlAh2XUKmFJDEmpk1r6y25f4Qcsf3QCju38Rw=
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: 0103d7e31d853c78
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=SRLDCkXy3wgQ3W1JAW5yONX9sO3JW/Qzs+hQb8VmbyAjYM28HCuKrtBIJyf7u3ZHhkkSKL4u2mkBm4DNe2s284bQZ13IW4mdIXIFE+8nH0QEtbIZuh8E+DjZwfjIXm9e+WrQK20vksF+SGUWbAlI9JaWfTtuwVGcEWAaJvQVP5czFd5jHRz+5X0XYHsgLZL4QVLIn9850DOJqhfR0tkk3vlk13cB7IkeHkMAqEMn7CkrmXM3Fz79zEbALeXLp7V2XFP9lVzmb2BmwYR75hOgxnRClTpNeeG2z2+N32ORuQGz7alpDbwlFXfcuAvDj0673lxVyxrP6GFR8bKrK6B3VA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=1T7yeauCTR7omGi+XgRXjd0oVPLCF1kXscxWhae86wg=;
 b=T2/yZio/UG+LDCI78Lpky/skOAkZ5TGlOjt3LUz+J9eqnrfX3vPs+NWjUehnpSCcg0it2azjgqp4cVw1KdUMcHf4x3LzAG3wZM/XY5QkFKB1QNk2M00V0kSmrOeDHhNWNab3L0/7HjEmBdrz0A2LJYHIB0q5jgcJOI4z6bHCJlLt609RQNIbaOpz7kvdeUQMAU4AZUDEVaFkoBBcFLTrP9Fv6AaMcqU0rE206w4XG1OJOxgcEzDRjIt2tTPhBpgfzJbAqKnt9FHmEqjnXPryYUBatuc6T7F6io7b69RZmQgwFukNoC+11/Sx4THpNwH0tc7JrPXSqZBzECaDTdnz1g==
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=1T7yeauCTR7omGi+XgRXjd0oVPLCF1kXscxWhae86wg=;
 b=24NOpMy+s5KUT0/dt2M+Ezt4y6/MyJ0Z/jqS5x63390QS8RsqYPNJkeUm2R0C76C6sIM9cLeNf+v9H3DjjgD+yWLtYok63MKmDgsDrAdQterIZN4mSaLbHavcYe6vz9NZLFLfOOlAh2XUKmFJDEmpk1r6y25f4Qcsf3QCju38Rw=
From: Luca Fancellu <Luca.Fancellu@arm.com>
To: Nicola Vetrini <nicola.vetrini@bugseng.com>
CC: Julien Grall <julien@xen.org>, Stefano Stabellini
	<sstabellini@kernel.org>, Xen-devel <xen-devel@lists.xenproject.org>,
	"michal.orzel@amd.com" <michal.orzel@amd.com>, "xenia.ragiadakou@amd.com"
	<xenia.ragiadakou@amd.com>, "ayan.kumar.halder@amd.com"
	<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>, Simone Ballarin
	<simone.ballarin@bugseng.com>, Doug Goldstein <cardoe@cardoe.com>, George
 Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>
Subject: Re: [XEN PATCH][for-4.19 v5] xen: Add deviations for MISRA C:2012
 Rule 7.1
Thread-Topic: [XEN PATCH][for-4.19 v5] xen: Add deviations for MISRA C:2012
 Rule 7.1
Thread-Index: AQHaC/4b2xNoaiIkmUiyfHAuabY8yrBj8OgAgAAP5gCAAACVgA==
Date: Tue, 31 Oct 2023 15:12:49 +0000
Message-ID: <E0FA2717-D06B-4C51-9E9A-DBD72CE35963@arm.com>
References:
 <0c86b50a796ba2aaab01e30935ed559ab719d33a.1698418578.git.nicola.vetrini@bugseng.com>
 <98da41d4-f818-44c7-bd3c-b3e3b224ff0d@xen.org>
 <alpine.DEB.2.22.394.2310301544460.1625118@ubuntu-linux-20-04-desktop>
 <ee3c415d-bedd-432e-bf31-6e806b9cf976@xen.org>
 <DFC25ACE-FFBE-43CF-9CE2-90671D122CEC@arm.com>
 <2201cad3353f5deb567f929e91e90fd2@bugseng.com>
In-Reply-To: <2201cad3353f5deb567f929e91e90fd2@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_|PAVPR08MB9458:EE_|AMS1EPF00000042:EE_|DU0PR08MB8067:EE_
X-MS-Office365-Filtering-Correlation-Id: 548d0b84-7c0a-4e8f-5c00-08dbda240526
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:
 sF2NGbybo87/G3A/Ef9fGpjfUbNOqGeGKYRUChCsvg8tac8aDxE6hMMP7aU4WYPwkZuG1WtnCnBgFA01SwtSsbXadgY0nKTgp+xPbO6kSI2gae39j0angt8/3cORaffd6vGvc4fib0hIOqmitWBu/gv8ye+RgIMd1f5LjWRf0J6t9I1Mi0fKjW9VTg0f8mebHs0HRHJWsdZMzeurxBlUiaNcbtArOiQC1ljfGschY6LWP5U18ySzqBSHmYfWowmFSE3Yvdjo1kZygt+iUQ2iFx7wuq6q11+IzdmkXAQuxGPtoy7VuEAWohWJE2eAdGi0jmb/GUh0FHUaoc19fjQ52DrVtp7JHLHDdC7iMwWieBERrHyFqE6a0l0ekhZZP683evMQyuWw1G7i94Qivxak0f5mSj7HV2IGY0ai04PWMPNxmAthsravwtyJ3P4mAl4pkOQdCLMT5+rGN0D22V3VpC3yUzNjcl4owdk9LqgYCf0mKQqItqAlLdAp/SMrBPMrLzTLxRByHqbmWD+YOaXZu1hdTxZTgZ/8bHf1UHv14YSA18wqEY64s7qjcilgKvrPceq7iQ8cuJwY9S7LySmDhP+xZbiYZiPrM2g6eaHNlVlkjtCBCWxxCHrTaROrLFF/AxHcRE7HTjr7Aiuh/zms1A==
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)(39860400002)(396003)(136003)(346002)(376002)(230922051799003)(64100799003)(1800799009)(186009)(451199024)(6506007)(2906002)(4001150100001)(7416002)(6486002)(71200400001)(6512007)(478600001)(86362001)(33656002)(38070700009)(36756003)(122000001)(2616005)(66556008)(66946007)(26005)(38100700002)(76116006)(53546011)(5660300002)(91956017)(316002)(6916009)(64756008)(66446008)(54906003)(66476007)(41300700001)(8676002)(8936002)(83380400001)(4326008)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <3DC9EC522683EB4A88CA3DC4A6B8558C@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAVPR08MB9458
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:
 AMS1EPF00000042.eurprd04.prod.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	459d0eb7-6387-4c7c-b487-08dbda23d8c5
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	qqioSQTv9gCy8ofkHZMfdKPWv3bfRyukJ+EgxAh4dlI2/9ovz5Omjsq7fOIajZA43eN9nJFXYPip43/Q7jf9CjvOWmFILnTC6Idwg/y7nvpZuyF6QofMvbv/iuRV8fpsf2FQdV2r0mUMbBe3PnyWS/eE5TcMphMDzZcoBdhUPyWkYb+imS4FDgZnENp55o0je4JSJEL4CfG9/E8nNLBCBthYVMCDoWIqSXuHeIlygMGbG7miZtD6Qm1KOKyoTD5isYenm/FIeRLmseIkLJbjyKAzFRiZDgAR04XPsV5pR1rZ6KSRz/sb+hqOqFJQ7eTixKgqQqOYlBpmocxuPTj0unwXcu3m3+RXG7tyi0hJuLo8xjsn3VyOQv/SqmH5R5KK743euTT59TWVWk2IAW60xH3JPyjZUAhVMNcudApGeeC6hEhXSa0oMH2CQnLhRP3j6yStWRq3tYzfRbIY7XJKG9BTVUNrPkHEclAWffebQPU0WwEzi42QutsHCz2Gdl1quDd9OxNMtD8nEfU6bEYFF3CP3FmIBJFSQZuiTCUSHU+P58PBfm6zxet3csZKHGMbtNODfM4WiIOiJp82rw6STKQz9jZy1p2ZKC4kJn0K1362Y3y70kMMo1zXKdTrb9Zg0STTU46M+fS1Buvbf/pgNXVyjyRDxRoc5TPCSTN7u+ZZ68U1PQL2BQ9c01GxDcI4sFtUQC7lNv+VOLZUFEtffK7XohjRYUsoqzY3IwE33eI=
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)(1800799009)(186009)(451199024)(64100799003)(82310400011)(36840700001)(46966006)(40470700004)(40460700003)(40480700001)(53546011)(33656002)(336012)(6506007)(36756003)(86362001)(2616005)(26005)(6512007)(4001150100001)(36860700001)(83380400001)(47076005)(81166007)(356005)(82740400003)(6486002)(2906002)(478600001)(54906003)(41300700001)(316002)(70586007)(70206006)(4326008)(5660300002)(6862004)(8676002)(8936002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 31 Oct 2023 15:14:04.2353
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 548d0b84-7c0a-4e8f-5c00-08dbda240526
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:
	AMS1EPF00000042.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR08MB8067

DQoNCj4gT24gMzEgT2N0IDIwMjMsIGF0IDE1OjEwLCBOaWNvbGEgVmV0cmluaSA8bmljb2xhLnZl
dHJpbmlAYnVnc2VuZy5jb20+IHdyb3RlOg0KPiANCj4gT24gMjAyMy0xMC0zMSAxNToxMywgTHVj
YSBGYW5jZWxsdSB3cm90ZToNCj4+PiBPbiAzMSBPY3QgMjAyMywgYXQgMTM6MjcsIEp1bGllbiBH
cmFsbCA8anVsaWVuQHhlbi5vcmc+IHdyb3RlOg0KPj4+IEhpIFN0ZWZhbm8sDQo+Pj4gT24gMzAv
MTAvMjAyMyAyMjo0OSwgU3RlZmFubyBTdGFiZWxsaW5pIHdyb3RlOg0KPj4+PiBPbiBNb24sIDMw
IE9jdCAyMDIzLCBKdWxpZW4gR3JhbGwgd3JvdGU6DQo+Pj4+PiBIaSBOaWNvbGEsDQo+Pj4+PiBP
biAyNy8xMC8yMDIzIDE2OjExLCBOaWNvbGEgVmV0cmluaSB3cm90ZToNCj4+Pj4+PiBkaWZmIC0t
Z2l0IGEvZG9jcy9taXNyYS9kZXZpYXRpb25zLnJzdCBiL2RvY3MvbWlzcmEvZGV2aWF0aW9ucy5y
c3QNCj4+Pj4+PiBpbmRleCA4NTExYTE4OTI1M2IuLjhhYWFhMTQ3M2ZiNCAxMDA2NDQNCj4+Pj4+
PiAtLS0gYS9kb2NzL21pc3JhL2RldmlhdGlvbnMucnN0DQo+Pj4+Pj4gKysrIGIvZG9jcy9taXNy
YS9kZXZpYXRpb25zLnJzdA0KPj4+Pj4+IEBAIC05MCw2ICs5MCwxMyBAQCBEZXZpYXRpb25zIHJl
bGF0ZWQgdG8gTUlTUkEgQzoyMDEyIFJ1bGVzOg0KPj4+Pj4+ICAgICAgICAgICAtIF9fZW11bGF0
ZV8yb3AgYW5kIF9fZW11bGF0ZV8yb3Bfbm9ieXRlDQo+Pj4+Pj4gICAgICAgICAgIC0gcmVhZF9k
ZWJ1Z3JlZyBhbmQgd3JpdGVfZGVidWdyZWcNCj4+Pj4+PiAgKyAgICogLSBSNy4xDQo+Pj4+Pj4g
KyAgICAgLSBJdCBpcyBzYWZlIHRvIHVzZSBjZXJ0YWluIG9jdGFsIGNvbnN0YW50cyB0aGUgd2F5
IHRoZXkgYXJlIGRlZmluZWQNCj4+Pj4+PiArICAgICAgIGluIHNwZWNpZmljYXRpb25zLCBtYW51
YWxzLCBhbmQgYWxnb3JpdGhtIGRlc2NyaXB0aW9ucy4gU3VjaCBwbGFjZXMNCj4+Pj4+PiArICAg
ICAgIGFyZSBtYXJrZWQgc2FmZSB3aXRoIGEgL1wqIG9jdGFsLW9rIFwqLyBpbi1jb2RlIGNvbW1l
bnQsIG9yIHdpdGggYQ0KPj4+Pj4+IFNBRg0KPj4+Pj4+ICsgICAgICAgY29tbWVudCAoc2VlIHNh
ZmUuanNvbikuDQo+Pj4+PiBSZWFkaW5nIHRoaXMsIGl0IGlzIHVuY2xlYXIgdG8gbWUgd2h5IHdl
IGhhdmUgdHdvIHdheXMgdG8gZGV2aWF0ZSB0aGUgcnVsZQ0KPj4+Pj4gcjcuMS4gQW5kIG1vcmUg
aW1wb3J0YW50ZWx5LCBob3cgd291bGQgdGhlIGRldmVsb3BwZXIgZGVjaWRlIHdoaWNoIG9uZSB0
byB1c2U/DQo+Pj4+IEkgYWdyZWUgd2l0aCB5b3Ugb24gdGhpcyBhbmQgd2Ugd2VyZSBkaXNjdXNz
aW5nIHRoaXMgdG9waWMganVzdCB0aGlzDQo+Pj4+IG1vcm5pbmcgaW4gdGhlIEZVU0EgY29tbXVu
aXR5IGNhbGwuIEkgdGhpbmsgd2UgbmVlZCBhIHdheSB0byBkbyB0aGlzDQo+Pj4+IHdpdGggdGhl
IFNBRiBmcmFtZXdvcms6DQo+Pj4+IGlmIChzb21lIGNvZGUgd2l0aCB2aW9sYXRpb24pIC8qIFNB
Ri14eC1zYWZlICovDQo+Pj4+IFRoaXMgZG9lc24ndCB3b3JrIHRvZGF5IHVuZm9ydHVuYXRlbHku
IEl0IGNhbiBvbmx5IGJlIGRvbmUgdGhpcyB3YXk6DQo+Pj4+IC8qIFNBRi14eC1zYWZlICovDQo+
Pj4+IGlmIChzb21lIGNvZGUgd2l0aCB2aW9sYXRpb24pDQo+Pj4+IFdoaWNoIGlzIG5vdCBhbHdh
eXMgZGVzaXJhYmxlLiBvY3RhbC1vayBpcyBqdXN0IGFuIGFkLWhvYyBzb2x1dGlvbiBmb3INCj4+
Pj4gb25lIHNwZWNpZmljIHZpb2xhdGlvbiBidXQgd2UgbmVlZCBhIGdlbmVyaWMgd2F5IHRvIGRv
IHRoaXMuIEx1Y2EgaXMNCj4+Pj4gaW52ZXN0aWdhdGluZyBwb3NzaWJsZSB3YXlzIHRvIHN1cHBv
cnQgdGhlIHByZXZpb3VzIGZvcm1hdCBpbiBTQUYuDQo+Pj4gV2h5IGNhbid0IHdlIHVzZSBvY3Rh
bC1vayBldmVyeXdoZXJlIGZvciBub3c/IE15IHBvaW50IGhlcmUgaXMgdG8gbWFrZSBzaW1wbGUg
Zm9yIHRoZSBkZXZlbG9wcGVyIHRvIGtub3cgd2hhdCB0byB1c2UuDQo+Pj4+IEkgdGhpbmsgd2Ug
c2hvdWxkIHRha2UgdGhpcyBwYXRjaCBmb3Igbm93IGFuZCBoYXJtb25pemUgaXQgb25jZSBTQUYg
aXMNCj4+Pj4gaW1wcm92ZWQuDQo+Pj4gVGhlIGRlc2NyaXB0aW9uIG9mIHRoZSBkZXZpYXRpb24g
bmVlZHMgc29tZSBpbXByb3ZlbWVudC4gVG8gZ2l2ZSBhbiBleGFtcGxlLCB3aXRoIHRoZSBjdXJy
ZW50IHdvcmRpbmcsIG9uZSBjb3VsZCB0aGV5IGNhbiB1c2Ugb2N0YWwtb2sgZXZlcnl3aGVyZS4g
QnV0IGFib3ZlLCB5b3UgYXJlIGltcGx5aW5nIHRoYXQgU0FGLXh4LXNhZmUgc2hvdWxkIGJlDQo+
Pj4gcHJlZmVycmVkLg0KPj4+IEkgd291bGQgc3RpbGwgc3Ryb25nbHkgcHJlZmVyIGlmIHdlIHVz
ZSBvY3RhbC1vayBldmVyeXdoZXJlIGJlY2F1c2UgdGhpcyBpcyBzaW1wbGUgdG8gcmVtZW1iZXIu
IEJ1dCBpZiB0aGUgb3RoZXIgYXJlIGhhcHB5IHRvIGhhdmUgYm90aCBTQUYtWFggYW5kIG9jdGFs
LW9rLCB0aGVuIHRoZSBkZXNjcmlwdGlvbiBuZWVkcyB0byBiZSBjb21wbGV0ZWx5IHVuYW1iaWd1
b3VzIGFuZCB0aGUgcGF0Y2ggc2hvdWxkIGNvbnRhaW4gc29tZSBleHBsYW5hdGlvbiB3aHkgd2Ug
aGF2ZSB0d28gZGlmZmVyZW50IHdheXMgdG8gZGV2aWF0ZS4NCj4+IFdvdWxkIGl0IGJlIG9rIHRv
IGhhdmUgYm90aCwgZm9yIGV4YW1wbGU6IC8qIFNBRi1YWC1zYWZlIG9jdGFsLW9rICovDQo+PiBT
byB0aGF0IHRoZSBzdXBwcmVzc2lvbiBlbmdpbmUgZG8gd2hhdCBpdCBzaG91bGQgKGN1cnJlbnRs
eSBpdCBkb2VzbuKAmXQgc3VwcHJlc3MgdGhlIHNhbWUgbGluZSwgYnV0IHdlIGNvdWxkIGRvIHNv
bWV0aGluZyBhYm91dCBpdCkgYW5kIHRoZSBkZXZlbG9wZXINCj4+IGhhcyBhIHdheSB0byB1bmRl
cnN0YW5kIHdoYXQgaXMgdGhlIHZpb2xhdGlvbiBoZXJlIHdpdGhvdXQgZ29pbmcgdG8gdGhlIGp1
c3RpZmljYXRpb24gZGF0YWJhc2UuDQo+IA0KPiBJIGd1ZXNzLiBJdCBjb3VsZCBvdmVyZmxvdyB0
aGUgODAtY2hhciBsaW1pdCBpbiB4ZW4vYXJjaC94ODYvaHZtL3N2bS9zdm0uaCwgdGhvdWdoLg0K
DQpZZWFoLCBidXQgd2UgY291bGQgcnVsZSBvdXQgc29tZXRoaW5nIGluIGNvZGVfc3R5bGUgdG8g
YWxsb3cgb25seSB0aGlzIGtpbmQgb2YgdHJhaWxpbmcgY29tbWVudHMgdG8gZXhjZWVkIHRoZSA4
MCBjaGFycw0KDQo+IA0KPiAtLSANCj4gTmljb2xhIFZldHJpbmksIEJTYw0KPiBTb2Z0d2FyZSBF
bmdpbmVlciwgQlVHU0VORyBzcmwgKGh0dHBzOi8vYnVnc2VuZy5jb20pDQoNCg==


From xen-devel-bounces@lists.xenproject.org Tue Oct 31 15:20:32 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 15:20:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625892.975645 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxqXc-0000KJ-E0; Tue, 31 Oct 2023 15:20:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625892.975645; Tue, 31 Oct 2023 15: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 1qxqXc-0000KC-BN; Tue, 31 Oct 2023 15:20:28 +0000
Received: by outflank-mailman (input) for mailman id 625892;
 Tue, 31 Oct 2023 15:20: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=9ZX9=GN=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qxqXb-0000If-I0
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 15:20:27 +0000
Received: from mail-ed1-x52a.google.com (mail-ed1-x52a.google.com
 [2a00:1450:4864:20::52a])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 020c1a11-7801-11ee-98d6-6d05b1d4d9a1;
 Tue, 31 Oct 2023 16:20:22 +0100 (CET)
Received: by mail-ed1-x52a.google.com with SMTP id
 4fb4d7f45d1cf-53e855d7dacso9573587a12.0
 for <xen-devel@lists.xenproject.org>; Tue, 31 Oct 2023 08:20: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
 z5-20020a170906714500b0099ce188be7fsm1138494ejj.3.2023.10.31.08.20.21
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 31 Oct 2023 08:20: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: 020c1a11-7801-11ee-98d6-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1698765621; x=1699370421; darn=lists.xenproject.org;
        h=content-transfer-encoding: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=qYHA4pJ2MQyYWpqcqhzCZqguGfzB21Yq7JjI9OEl1eE=;
        b=VoxQg5YiJgIn/ENXpq0xB7WTbpr7GlbBIh8CEUK5iuLGEFx8hMp+yYOSvsG1umCArs
         4e0qhLAUZk6Q69Enk3wEGFdzZRDxNK8EW6KPBpGXKtjanxPUmce7Te/HM4ablWKotDI2
         Obk0xTEAOyV+xFUfEH+kzxcTeXbRaE29ORw4o=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698765621; x=1699370421;
        h=content-transfer-encoding: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=qYHA4pJ2MQyYWpqcqhzCZqguGfzB21Yq7JjI9OEl1eE=;
        b=wR9HrofcuZOHT5kSdxVzc7vrs4JBHOQslu5tyTvA+sU9+zx0aT2I+dNzybUTXU+PP9
         3Fn18ydZhjhXHjHe616ZiRPT43rH5iL2obM04u0gMyd04ZItgLN7zEdgNnY2a+XFy7yr
         SU1hdOXlJolT2QAbuEHDGPsNJeogsMvPwKqj79VfN5tPg+ZnS6q7a9Lc3ohNaOsIP+TS
         Zf2znONq1qC7lAw/BMpefMUHhaVbcCCZDpJmbb5uqX5kKHiE+tUlasw7L87Z8mac0RjN
         5jZONve+q3m25klCMLj/8xFb/GKf3uvlFmnuIvaO0RGHKTIKX34b/0uoRvJOec62O/71
         W/0g==
X-Gm-Message-State: AOJu0Yy3M3zlU1HWDgHioJeH8tinZ3OmbZzJRtwy0yHNf3EoCAzi/xRT
	YoNQkg6OiLN9Ktep8hLO2zY8NA==
X-Google-Smtp-Source: AGHT+IFIdgMCEgR6Ax6Z5f/Yn2mBMqpla4t+Yqn8WfBstotSz9BoLiWf9rAPDycY5XOKuspI+azUiw==
X-Received: by 2002:a17:907:a49:b0:9be:834a:f80b with SMTP id be9-20020a1709070a4900b009be834af80bmr11432919ejc.75.1698765621638;
        Tue, 31 Oct 2023 08:20:21 -0700 (PDT)
Message-ID: <801c53d1-16fe-481e-b4ec-440f0ccfde51@citrix.com>
Date: Tue, 31 Oct 2023 15:20:20 +0000
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH v5 2/2] CHANGELOG.md: Start new "unstable" section
Content-Language: en-GB
To: Henry Wang <Henry.Wang@arm.com>, xen-devel@lists.xenproject.org
Cc: Community Manager <community.manager@xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Julien Grall <julien@xen.org>,
 Bertrand Marquis <bertrand.marquis@arm.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>, Wei Chen <wei.chen@arm.com>
References: <20231031144925.2416266-1-Henry.Wang@arm.com>
 <20231031144925.2416266-3-Henry.Wang@arm.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: <20231031144925.2416266-3-Henry.Wang@arm.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit

On 31/10/2023 2:49 pm, Henry Wang wrote:
> Signed-off-by: Henry Wang <Henry.Wang@arm.com>
> ---
> v5:
> - Rebase on previous patches.
> ---
>  CHANGELOG.md | 8 ++++++++
>  1 file changed, 8 insertions(+)
>
> diff --git a/CHANGELOG.md b/CHANGELOG.md
> index 94dbd83894..cbdc9bceac 100644
> --- a/CHANGELOG.md
> +++ b/CHANGELOG.md
> @@ -4,6 +4,14 @@ Notable changes to Xen will be documented in this file.
>  
>  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
>  
> +## [unstable UNRELEASED](https://xenbits.xenproject.org/gitweb/?p=xen.git;a=shortlog;h=staging) - TBD

As I've just found it in the checklist, this should be [4.19.0 UNRELEASED].

Happy to fix on commit.

~Andrew


From xen-devel-bounces@lists.xenproject.org Tue Oct 31 15:27:43 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 15:27:43 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625897.975654 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxqeT-0002hM-74; Tue, 31 Oct 2023 15:27:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625897.975654; Tue, 31 Oct 2023 15: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 1qxqeT-0002hF-4e; Tue, 31 Oct 2023 15:27:33 +0000
Received: by outflank-mailman (input) for mailman id 625897;
 Tue, 31 Oct 2023 15:27:32 +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 1qxqeS-0002h9-DI
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 15:27:32 +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 1qxqeQ-0006gf-1h; Tue, 31 Oct 2023 15:27:30 +0000
Received: from 54-240-197-239.amazon.com ([54.240.197.239]
 helo=[192.168.9.249]) by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qxqeP-0004wp-Oq; Tue, 31 Oct 2023 15:27: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=tPu23sPqYWDDp5+C69S4M7QrtybiBRD58ETNNXYX4ls=; b=kQSZ4lNiVmRPuqq79w4XucrLcg
	EPEMDF89aD4Wz2jrK0G83AfpFhYmZwvoi4H7uVRQ5I/gFNoX4BJWaNyr4fr6sLIaWXhI9qnyqVpvk
	7m0HFUhsKG4Vi675cBjCuF7bnExg9nslxDQv4GLmvmyoF0Teh3OiAsARHoNQpdNDAVEA=;
Message-ID: <e958d555-3075-467b-b3cf-1e5c6ad78405@xen.org>
Date: Tue, 31 Oct 2023 15:27:25 +0000
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN PATCH][for-4.19 v5] xen: Add deviations for MISRA C:2012
 Rule 7.1
Content-Language: en-GB
To: Luca Fancellu <Luca.Fancellu@arm.com>,
 Nicola Vetrini <nicola.vetrini@bugseng.com>
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 Xen-devel <xen-devel@lists.xenproject.org>,
 "michal.orzel@amd.com" <michal.orzel@amd.com>,
 "xenia.ragiadakou@amd.com" <xenia.ragiadakou@amd.com>,
 "ayan.kumar.halder@amd.com" <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>,
 Simone Ballarin <simone.ballarin@bugseng.com>,
 Doug Goldstein <cardoe@cardoe.com>, George Dunlap
 <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>
References: <0c86b50a796ba2aaab01e30935ed559ab719d33a.1698418578.git.nicola.vetrini@bugseng.com>
 <98da41d4-f818-44c7-bd3c-b3e3b224ff0d@xen.org>
 <alpine.DEB.2.22.394.2310301544460.1625118@ubuntu-linux-20-04-desktop>
 <ee3c415d-bedd-432e-bf31-6e806b9cf976@xen.org>
 <DFC25ACE-FFBE-43CF-9CE2-90671D122CEC@arm.com>
 <2201cad3353f5deb567f929e91e90fd2@bugseng.com>
 <E0FA2717-D06B-4C51-9E9A-DBD72CE35963@arm.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <E0FA2717-D06B-4C51-9E9A-DBD72CE35963@arm.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

Hi,

On 31/10/2023 15:12, Luca Fancellu wrote:
>> On 31 Oct 2023, at 15:10, Nicola Vetrini <nicola.vetrini@bugseng.com> wrote:
>>
>> On 2023-10-31 15:13, Luca Fancellu wrote:
>>>> On 31 Oct 2023, at 13:27, Julien Grall <julien@xen.org> wrote:
>>>> Hi Stefano,
>>>> On 30/10/2023 22:49, Stefano Stabellini wrote:
>>>>> On Mon, 30 Oct 2023, Julien Grall wrote:
>>>>>> Hi Nicola,
>>>>>> On 27/10/2023 16:11, Nicola Vetrini wrote:
>>>>>>> diff --git a/docs/misra/deviations.rst b/docs/misra/deviations.rst
>>>>>>> index 8511a189253b..8aaaa1473fb4 100644
>>>>>>> --- a/docs/misra/deviations.rst
>>>>>>> +++ b/docs/misra/deviations.rst
>>>>>>> @@ -90,6 +90,13 @@ Deviations related to MISRA C:2012 Rules:
>>>>>>>            - __emulate_2op and __emulate_2op_nobyte
>>>>>>>            - read_debugreg and write_debugreg
>>>>>>>   +   * - R7.1
>>>>>>> +     - It is safe to use certain octal constants the way they are defined
>>>>>>> +       in specifications, manuals, and algorithm descriptions. Such places
>>>>>>> +       are marked safe with a /\* octal-ok \*/ in-code comment, or with a
>>>>>>> SAF
>>>>>>> +       comment (see safe.json).
>>>>>> Reading this, it is unclear to me why we have two ways to deviate the rule
>>>>>> r7.1. And more importantely, how would the developper decide which one to use?
>>>>> I agree with you on this and we were discussing this topic just this
>>>>> morning in the FUSA community call. I think we need a way to do this
>>>>> with the SAF framework:
>>>>> if (some code with violation) /* SAF-xx-safe */
>>>>> This doesn't work today unfortunately. It can only be done this way:
>>>>> /* SAF-xx-safe */
>>>>> if (some code with violation)
>>>>> Which is not always desirable. octal-ok is just an ad-hoc solution for
>>>>> one specific violation but we need a generic way to do this. Luca is
>>>>> investigating possible ways to support the previous format in SAF.
>>>> Why can't we use octal-ok everywhere for now? My point here is to make simple for the developper to know what to use.
>>>>> I think we should take this patch for now and harmonize it once SAF is
>>>>> improved.
>>>> The description of the deviation needs some improvement. To give an example, with the current wording, one could they can use octal-ok everywhere. But above, you are implying that SAF-xx-safe should be
>>>> preferred.
>>>> I would still strongly prefer if we use octal-ok everywhere because this is simple to remember. But if the other are happy to have both SAF-XX and octal-ok, then the description needs to be completely unambiguous and the patch should contain some explanation why we have two different ways to deviate.
>>> Would it be ok to have both, for example: /* SAF-XX-safe octal-ok */
>>> So that the suppression engine do what it should (currently it doesn’t suppress the same line, but we could do something about it) and the developer
>>> has a way to understand what is the violation here without going to the justification database.
>>
>> I guess. It could overflow the 80-char limit in xen/arch/x86/hvm/svm/svm.h, though.
> 
> Yeah, but we could rule out something in code_style to allow only this kind of trailing comments to exceed the 80 chars

In the past I expressed concerned with this kind of the rule because it 
is not entirely clear how an automatic formatter will be able to check it.

Can you clarify whether clang-format would be able to handle your 
proposed rule?

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Oct 31 15:31:29 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 15:31:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625901.975665 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxqiF-00049j-MX; Tue, 31 Oct 2023 15:31:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625901.975665; Tue, 31 Oct 2023 15:31: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 1qxqiF-00049b-Jn; Tue, 31 Oct 2023 15:31:27 +0000
Received: by outflank-mailman (input) for mailman id 625901;
 Tue, 31 Oct 2023 15:31: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=kxST=GN=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qxqiE-00049V-Bb
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 15:31:26 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 (mail-am6eur05on2062d.outbound.protection.outlook.com
 [2a01:111:f400:7e1b::62d])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 8d3d783e-7802-11ee-98d6-6d05b1d4d9a1;
 Tue, 31 Oct 2023 16:31:25 +0100 (CET)
Received: from AS9PR06CA0129.eurprd06.prod.outlook.com (2603:10a6:20b:467::7)
 by PA4PR08MB6270.eurprd08.prod.outlook.com (2603:10a6:102:f3::14)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.22; Tue, 31 Oct
 2023 15:31:22 +0000
Received: from AM2PEPF0001C711.eurprd05.prod.outlook.com
 (2603:10a6:20b:467:cafe::e4) by AS9PR06CA0129.outlook.office365.com
 (2603:10a6:20b:467::7) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.29 via Frontend
 Transport; Tue, 31 Oct 2023 15:31:22 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM2PEPF0001C711.mail.protection.outlook.com (10.167.16.181) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6954.19 via Frontend Transport; Tue, 31 Oct 2023 15:31:22 +0000
Received: ("Tessian outbound 26ee1d40577c:v228");
 Tue, 31 Oct 2023 15:31:21 +0000
Received: from 2edc8ea530e2.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 E67302F3-06EB-41F2-B139-3C7C23EA2599.1; 
 Tue, 31 Oct 2023 15:31:15 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 2edc8ea530e2.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Tue, 31 Oct 2023 15:31:15 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by GVXPR08MB10685.eurprd08.prod.outlook.com (2603:10a6:150:158::22)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.26; Tue, 31 Oct
 2023 15:31:13 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::ae6e:f96c:f2f3:efc9]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::ae6e:f96c:f2f3:efc9%4]) with mapi id 15.20.6933.028; Tue, 31 Oct 2023
 15:31: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: 8d3d783e-7802-11ee-98d6-6d05b1d4d9a1
ARC-Seal: i=2; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=pass;
 b=bGXT7C22PrAdD2pD8tF+hFzU3YkOYlepJCdcXPXuA9th4n3k3dNeGUP4C/hdeBebAjoWnwwoSLuX/LtjHWJL5q2PUiw0RATemWNKjl1q75veNTKJaRTdwFDjxyggnisHTAmKYgKkaMKvg6G+gz4oXx0yRy8Yxk75DO60iE7l9RY68v5YgCF1Wc5CbUJwSyihKupACbBcZmcDQNqhFMF9zC5KOa5+VdumR/OlLBHvtJqyv0eHTRShoBwX8RTnTSGMM1bI3MWBf0xmcNv9G9r+x1+psIknd4h9Zx9lQzpamAizHgIjplyGHswl+idMCRT5O4bETyIXULnVgOzW2wcMiA==
ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=86qo5gx60xN4cza2QTQVJakZkj8sWYkjvseI0eckKRY=;
 b=HU8ZGaqmNIomo6/Bx0Mx9B59wT0ySoB8P6CTPMM530i/uedWFTl0RqDHWsLXF7Q1DFRuU6XQewdNnidggMzdLFDOseRImSWf8Jx1pw+Oy58iKZAY9Wjji8KqTEledQbldqJwJN+FyLZOvhaDIzAWQzMolYehd5SuchUIwbqdwL/PqTW6gE2IUxEZ2EzVhilfTxvDwKWtC21WDARrN3jFRGSKsAXH7WUXsPlmS35++EPOcNRSq2xS86hoaXlx2hsCmjXDdB28GWS9DI0z9ioc+BR5T8hU065pviVo9OGsugab2FPUfWEXNvF3oQpmLxWZPuBr/UmCK/ZY/EY+rEeGTQ==
ARC-Authentication-Results: i=2; mx.microsoft.com 1; spf=pass (sender ip is
 63.35.35.123) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=arm.com;
 dmarc=pass (p=none sp=none pct=100) action=none header.from=arm.com;
 dkim=pass (signature was verified) header.d=armh.onmicrosoft.com; arc=pass (0
 oda=1 ltdi=1 spf=[1,1,smtp.mailfrom=arm.com] dkim=[1,1,header.d=arm.com]
 dmarc=[1,1,header.from=arm.com])
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=86qo5gx60xN4cza2QTQVJakZkj8sWYkjvseI0eckKRY=;
 b=JcNvEGZHx8NznX6Pw2q4ZgN/6cy+c0J7LSL+3hnolW+mexPV2SGgHxkAb4ckmEW5W0Ub7WhtZ6NIrIpzlGLF0TZr9S3ACSnS91GQeaqkt8g01jF+lVtFhT+LLstS8nYZHwlwM4NKpktv0xpq7HrQFu5wQv/r8uT+Ol/DGjpxxoM=
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: ccb9143377efff1c
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=JCz6bqoWRXWuyOs+tFGiT8IyVXIjVBYe0fUUx+sssJYmOSeKIE+v9V/wQdw0TiOBebiEuF3mhxGEiZzAFHCaTwGRqtd7m60QUhmgx3gqFoan68Zqim+SBqBvlkstler5oqGe+toZT4LAeTB8ME4Ph8yBjUZaytatf2niOU2ELiQ5RDWr33w6R44y1gVsGZgaQfeCzMDH9nUHiDfTkc8XivyfipSyIpwKf/ZE5lQlIWhCpRpgs19kxQAKqoW3neRR459okU5Mt7ffJBJKJ5loPNq4uBd5zBAvIb3btsUN4ksQZpMpQUZcpYNCCBr6diUNn3mWa+1e3XNJe31KjO3jig==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=86qo5gx60xN4cza2QTQVJakZkj8sWYkjvseI0eckKRY=;
 b=kEIsZrYMIeYYJVg77w3G5sETAdI15Pxt6Z8XRc8VPoNT7mKFmwFz52oJZEj2A0Spa6S/z1Qnv8jJAv72DgznTERedqU8GFY4nyq4bBI24gIggMJT4CFq/Bee5BazOeTh74O/eU0wZ3Y8GGBtqLcsPqWBIdbw1ANGJG/Ygjv9TtAVd2nt+MbQKrneqAHR4R37fse79+/NdnlyPZ7ni82ZYQt1Yu1lM34u3EFeeLJrcS9S+HkdvBAhptG9Dncib6d8xPpsHzfFYXDZFUucFZ7vDYC33k6LXurzuPoPUVl3Y9Yv+DQ2HPwvpZWUlVIxL5hlkgBq/Nz80FM/OsY4PBcQiA==
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=86qo5gx60xN4cza2QTQVJakZkj8sWYkjvseI0eckKRY=;
 b=JcNvEGZHx8NznX6Pw2q4ZgN/6cy+c0J7LSL+3hnolW+mexPV2SGgHxkAb4ckmEW5W0Ub7WhtZ6NIrIpzlGLF0TZr9S3ACSnS91GQeaqkt8g01jF+lVtFhT+LLstS8nYZHwlwM4NKpktv0xpq7HrQFu5wQv/r8uT+Ol/DGjpxxoM=
From: Henry Wang <Henry.Wang@arm.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>
CC: Xen-devel <xen-devel@lists.xenproject.org>, Community Manager
	<community.manager@xenproject.org>, Stefano Stabellini
	<sstabellini@kernel.org>, Julien Grall <julien@xen.org>, Bertrand Marquis
	<Bertrand.Marquis@arm.com>, George Dunlap <george.dunlap@citrix.com>, Jan
 Beulich <jbeulich@suse.com>, Wei Liu <wl@xen.org>,
	=?iso-8859-1?Q?Roger_Pau_Monn=E9?= <roger.pau@citrix.com>, Wei Chen
	<Wei.Chen@arm.com>
Subject: Re: [PATCH v5 2/2] CHANGELOG.md: Start new "unstable" section
Thread-Topic: [PATCH v5 2/2] CHANGELOG.md: Start new "unstable" section
Thread-Index: AQHaDAmI5BiItcb600GgJfxv+88hTbBkA3IAgAAC+wA=
Date: Tue, 31 Oct 2023 15:31:11 +0000
Message-ID: <5FA8881F-157C-43CC-92C3-6F5E97F410F8@arm.com>
References: <20231031144925.2416266-1-Henry.Wang@arm.com>
 <20231031144925.2416266-3-Henry.Wang@arm.com>
 <801c53d1-16fe-481e-b4ec-440f0ccfde51@citrix.com>
In-Reply-To: <801c53d1-16fe-481e-b4ec-440f0ccfde51@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_|GVXPR08MB10685:EE_|AM2PEPF0001C711:EE_|PA4PR08MB6270:EE_
X-MS-Office365-Filtering-Correlation-Id: deb01924-cba9-4f8d-137e-08dbda266fbb
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:
 rqNlgSPB6dAN0wOmEM/gXvSNGlF1iW+Hqe9z+On9/eyHkzCa1cBcqhIlUkplvFKjmnas5TCcQidJm24ANuKJ40hjNMJJ7aJNfTaACpaGubJO9LMAzs5XyUYDUXwMLg6SaIrQ79X4YjSadxfjc0fzcfsGhAlZ+OzcclBg9L5yDkGeQewCyRD0eO34aAi/6Omfs0fIjwNyBKG26mq8zWKAKpz+aNCKo8A9rtxpIAPj7jtxkePtKla3Od2b2iQpKYau2gS+HuqYvCRsMgAP1ElmZrKYySGKjxqc52qGbXdC8cmkiIj+JrrWFZD/2C1jo6dfNC1hFTx1G6CAkQvv5hLeabPmoa82N6vq72eGqjJnWz3aMIiOK/H3ewuWDBQOe4rsRHSjlSEHH3W92u7I0TsU3hPmj7ovCmxu0zjU5I2Uxkz+xQKDzYZnbnm/B3Forf8/Gd6jO6IAVRJ4xO7E9Qk2hEk9FcD7ZtgHsBDbfn9qcNz1/pnV0rFr7R7ksYrDXGQITIqYfMy+4SSYRw19CMu51pWX/imxDLWv6UTE/gZyiyxfsIl10TOhFfSL0IuX0t1Y5WpjJ7DvNOGKmvFVkAvpGs9wfD+r2xG3mbJCZKRGC/dWvnLNROrRbK02czlqd9lCGVe471YdCFb6hgsphSP6mI1w1eMTKcA71+gGsPZfV7fAcdd+xM4G2AH/YvWGTnvf
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)(396003)(39860400002)(366004)(346002)(230922051799003)(64100799003)(1800799009)(186009)(451199024)(2616005)(6512007)(26005)(38100700002)(38070700009)(86362001)(33656002)(36756003)(122000001)(316002)(2906002)(6486002)(66476007)(478600001)(53546011)(71200400001)(6506007)(4326008)(6916009)(8936002)(66446008)(64756008)(54906003)(8676002)(91956017)(66556008)(41300700001)(966005)(76116006)(5660300002)(66946007)(207903002)(219803003)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="iso-8859-1"
Content-ID: <2A2B3147F5703F4CB235AD2BDAFFAA9E@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: GVXPR08MB10685
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:
 AM2PEPF0001C711.eurprd05.prod.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	10f54757-1a99-4792-116a-08dbda266972
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	Oe9kvKvQm+8fBi9EGlM6ydTlYRsVu9lNtSNskwMKyeS9nzQeLIJ4Igxj0TX4mPU3/iAzQNf3+zlUMnw70Pmu7ChIEiJELO9ALiWEmWNgD26yjo8rTvKnui4O2U+ABpZR6FG2mFx/1Ok/cmOhUbZrhs+ne0yXsJBPMjUS8G2nuOWu9LlcAwr1tCsaPuFN2rSGxcfOzRGAOZGu5Q2lsshDqDHh/E7wd3MZ4iNu/QvTItP2SCfVS/US1VUWzchVG2o2e5HY2QCY6hs9F+Yd7dqatc+FnDNt7RZbRW88aRqj5+B6MSRsCP6ebw7BgGxFxoXbPxwSR8cpc0alJTMCkPX3Y38Q1j8lSuQQs6BZVh4FIECES8gw+E0w6e02OfkOgksebgtMslFbDSeFmu64Su1k7uN59/PR+Nfa42tQ9zOVL01g9pdwsx0jyQH6KWM54R4WmyCeG2LguqgwIV1UeXmdrAnUHkU/bUoNAqbLHYLvvDqT+/mNdT0d+fn2JzqM4xOV+hm0IrGQ1op5AB3DWBpIkbNLx49w43PEaZDBzmdclOS11ubAR8PquSe+4VSEo6W3KSNa/vCqXXodhhHb/ITYqX3h8KxZc5Mx2VWmOqj2Todfq/3QNuZWHSIN7nsNPQFYGIr1vl8e+aW/h34S6822RrdDJa0/CslSvJJ4XsLowLvzOOCRYGWbGuh0dbJXg+6w91+JADPXfJU+E/owgeh1naCbJuneOUqbUkv+gNY8mIF2bZ8vK01syVe/OCR12a8EjZevi5SmzHPsJbDcs7jVccuhFQujfTm4cqySskQFyB0=
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)(346002)(396003)(230922051799003)(451199024)(82310400011)(1800799009)(64100799003)(186009)(46966006)(36840700001)(40470700004)(2906002)(33656002)(36860700001)(47076005)(5660300002)(81166007)(40480700001)(336012)(356005)(2616005)(82740400003)(86362001)(6512007)(41300700001)(316002)(70586007)(54906003)(40460700003)(53546011)(6506007)(6486002)(8676002)(966005)(478600001)(26005)(70206006)(8936002)(4326008)(6862004)(36756003)(207903002)(219803003);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 31 Oct 2023 15:31:22.0731
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: deb01924-cba9-4f8d-137e-08dbda266fbb
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:
	AM2PEPF0001C711.eurprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR08MB6270

Hi Andrew,

> On Oct 31, 2023, at 23:20, Andrew Cooper <andrew.cooper3@citrix.com> wrot=
e:
>=20
> On 31/10/2023 2:49 pm, Henry Wang wrote:
>> Signed-off-by: Henry Wang <Henry.Wang@arm.com>
>> ---
>> v5:
>> - Rebase on previous patches.
>> ---
>> CHANGELOG.md | 8 ++++++++
>> 1 file changed, 8 insertions(+)
>>=20
>> diff --git a/CHANGELOG.md b/CHANGELOG.md
>> index 94dbd83894..cbdc9bceac 100644
>> --- a/CHANGELOG.md
>> +++ b/CHANGELOG.md
>> @@ -4,6 +4,14 @@ Notable changes to Xen will be documented in this file.
>>=20
>> The format is based on [Keep a Changelog](https://keepachangelog.com/en/=
1.0.0/)
>>=20
>> +## [unstable UNRELEASED](https://xenbits.xenproject.org/gitweb/?p=3Dxen=
.git;a=3Dshortlog;h=3Dstaging) - TBD
>=20
> As I've just found it in the checklist, this should be [4.19.0 UNRELEASED=
].

Actually, good point, somehow we seems to have a mix in previous releases (=
see [1] - as an incorrect
example I took for 4.17). I am ok to use 4.19 instead of unstable.

>=20
> Happy to fix on commit.

Thank you very much for doing so.

[1] https://github.com/xen-project/xen/commit/6c1c97e24f830a921a23e3b9694e2=
0493c9986ee

Kind regards,
Henry

>=20
> ~Andrew



From xen-devel-bounces@lists.xenproject.org Tue Oct 31 15:32:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 15:32:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625904.975675 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxqjd-0004nJ-1V; Tue, 31 Oct 2023 15:32:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625904.975675; Tue, 31 Oct 2023 15:32: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 1qxqjc-0004nC-V2; Tue, 31 Oct 2023 15:32:52 +0000
Received: by outflank-mailman (input) for mailman id 625904;
 Tue, 31 Oct 2023 15:32: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=k1/u=GN=arm.com=Luca.Fancellu@srs-se1.protection.inumbo.net>)
 id 1qxqjb-0004n6-OQ
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 15:32:51 +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 bf5836d9-7802-11ee-9b0e-b553b5be7939;
 Tue, 31 Oct 2023 16:32:49 +0100 (CET)
Received: from AS9PR05CA0233.eurprd05.prod.outlook.com (2603:10a6:20b:494::27)
 by AS8PR08MB8248.eurprd08.prod.outlook.com (2603:10a6:20b:520::6)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.29; Tue, 31 Oct
 2023 15:32:44 +0000
Received: from AMS0EPF000001A5.eurprd05.prod.outlook.com
 (2603:10a6:20b:494:cafe::59) by AS9PR05CA0233.outlook.office365.com
 (2603:10a6:20b:494::27) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.27 via Frontend
 Transport; Tue, 31 Oct 2023 15:32:44 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AMS0EPF000001A5.mail.protection.outlook.com (10.167.16.232) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6954.19 via Frontend Transport; Tue, 31 Oct 2023 15:32:44 +0000
Received: ("Tessian outbound 26ee1d40577c:v228");
 Tue, 31 Oct 2023 15:32:43 +0000
Received: from 55805f4701a4.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 6C2BA6EA-8C58-4406-81AB-88DEBBF428EB.1; 
 Tue, 31 Oct 2023 15:32:06 +0000
Received: from EUR01-DB5-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 55805f4701a4.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Tue, 31 Oct 2023 15:32:06 +0000
Received: from AM6PR08MB3749.eurprd08.prod.outlook.com (2603:10a6:20b:8f::22)
 by PAWPR08MB9123.eurprd08.prod.outlook.com (2603:10a6:102:343::11)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6954.19; Tue, 31 Oct
 2023 15:32:04 +0000
Received: from AM6PR08MB3749.eurprd08.prod.outlook.com
 ([fe80::76e6:a7e1:1592:866]) by AM6PR08MB3749.eurprd08.prod.outlook.com
 ([fe80::76e6:a7e1:1592:866%3]) with mapi id 15.20.6933.022; Tue, 31 Oct 2023
 15: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: bf5836d9-7802-11ee-9b0e-b553b5be7939
ARC-Seal: i=2; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=pass;
 b=MdmZTs8AQcPK43aBmBOP8ELjMC0e+TbK6s90qrFsUX0DQSAbW5EM8nrXB7nQf7bDgSP0uBk+omyIZLI2PKEZ8E8njxn781IUOV+LJD2N8ercOIMpdwujVIUfgOY4TwlSPFfClWp2AJpHCDmwPpERca5GvkYPYObodMid7a0jDnK9WA2sCiL+VJbpSM/DldDBcN625+dgZu8xakn9UKy+DI7m1VEuA+Q1exHenTBK8sgRDugL+sgkalplbqtOcRiOwGit6cilp/41PWhJSAbt3XyE9U0Vmn2NS7i6he5ZdzTd/szs0ene8lzHqZI08Z9p7SpLYzhKq6O96tFo6XkjRw==
ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=dZzbHOT2qCzMwKZUwrYP3dtWMS6I52qgRrM4GzH4grA=;
 b=lR6EXqplKhu7sB2A5Tjk3BsDcaU3iYt/hzCYv+OOHNUlSayUMNjEG2/fEJS+O32ymXCf+/tjGnyuGMgtqE9OUErWwFlxFyurykXRa3iQ7SzJbKEab/s9bI8UiTFfrSCQYPvU8Xb13GOfz3nDEmParbioa0BTgHWfqbXEQF2nGpf+I66JS7yTqAYX/9PaK5s2eJ5GYo33ytGR3oJy7hSeGdDm6IhbGbbNzSuLGXXquL7K+Cs4QWWdY6Bj1hppuO83zwQogeGhjRujsHNvpAbTjjgeEU3WGlUMQYg3+JlCfenxsD6RSAYcGMTzNfEtEj+Ehft6A4u3NiPR1dwmArXQLA==
ARC-Authentication-Results: i=2; mx.microsoft.com 1; spf=pass (sender ip is
 63.35.35.123) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=arm.com;
 dmarc=pass (p=none sp=none pct=100) action=none header.from=arm.com;
 dkim=pass (signature was verified) header.d=armh.onmicrosoft.com; arc=pass (0
 oda=1 ltdi=1 spf=[1,1,smtp.mailfrom=arm.com] dkim=[1,1,header.d=arm.com]
 dmarc=[1,1,header.from=arm.com])
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=dZzbHOT2qCzMwKZUwrYP3dtWMS6I52qgRrM4GzH4grA=;
 b=2vu0mPkC7GdSeH0SbHboE0/2gmcrIRLKefj+B07LeMkVRf6r2bAXoYAPdmqqGDu53GA+xYHCX6xH4nI7kHelU3eFk38r98g9JnF8Lh5b9smVI8uS/CEcc/1iz7yIqLBMTEw6E3EQVwnbnW+cHRQfqmrW9CE6VeO5xKqClQnGpP8=
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: dfee45a71f157df6
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Uwnv5f7g7jZsalwOzTaxS5udRS6CO8FDexsHTumVPPSaG/aXdQf+W4rs1i3EcKxw4hDFLWTPBNnV6dECIUnW5dj1qDYRx3rdmPDO9ujxp+0kNE+944GUJSD1B7mx+BIfCNFh497eWTd/Rtk27/scad9LooPO8xlZvI3EgFtKoWaLnzdeU4zneUzMcvXANjkRj22E26QrqyS82W7UfE2tvj3GBP40Nb0yYPgT+e4MVPYK4MxITaMoMPeyaAERzYHvhoQD5AlJMwcnrmVTz3Ckvk7+OE68g0CWKy7PVLjVVY2/lG1tgS8hLV0i/LJqU81kgY27J9y86qyIxvCR7hdciw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=dZzbHOT2qCzMwKZUwrYP3dtWMS6I52qgRrM4GzH4grA=;
 b=bBfqqFEs5eVJdNH78OZ4uNwcAjXYx/M90udsw8Bspzx98S3DWSSaXPtybeyU/tV+SsQUU3auUAuTmi4pnds4n3xBPFsoBDd7O7tbiyBJAHwLEv6FK2etj2UrRV2ze99o+0p73+QXReEx3HuyFfdEhYDQseqMpFajfZM04SoyXL2/WkQQCXTbw095PhOJ3kfStQj6Pdvl/4fAxv0ad1ojhfmx7sPR15VzeZT7peHyUlH+J05qvKb/oYrGbnsiiVPJhDZzRU1HFOxLTV6VcIfI/VOQS3vWCtvgNJuqpsCi8c+Z8W/86TiJ4ObsO+zCZCTxIssJCLQDIw7idW+MgwrGkA==
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=dZzbHOT2qCzMwKZUwrYP3dtWMS6I52qgRrM4GzH4grA=;
 b=2vu0mPkC7GdSeH0SbHboE0/2gmcrIRLKefj+B07LeMkVRf6r2bAXoYAPdmqqGDu53GA+xYHCX6xH4nI7kHelU3eFk38r98g9JnF8Lh5b9smVI8uS/CEcc/1iz7yIqLBMTEw6E3EQVwnbnW+cHRQfqmrW9CE6VeO5xKqClQnGpP8=
From: Luca Fancellu <Luca.Fancellu@arm.com>
To: Julien Grall <julien@xen.org>
CC: Nicola Vetrini <nicola.vetrini@bugseng.com>, Stefano Stabellini
	<sstabellini@kernel.org>, Xen-devel <xen-devel@lists.xenproject.org>,
	"michal.orzel@amd.com" <michal.orzel@amd.com>, "xenia.ragiadakou@amd.com"
	<xenia.ragiadakou@amd.com>, "ayan.kumar.halder@amd.com"
	<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>, Simone Ballarin
	<simone.ballarin@bugseng.com>, Doug Goldstein <cardoe@cardoe.com>, George
 Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>
Subject: Re: [XEN PATCH][for-4.19 v5] xen: Add deviations for MISRA C:2012
 Rule 7.1
Thread-Topic: [XEN PATCH][for-4.19 v5] xen: Add deviations for MISRA C:2012
 Rule 7.1
Thread-Index: AQHaC/4b2xNoaiIkmUiyfHAuabY8yrBj8OgAgAAP5gCAAACVgIAABCCAgAABQIA=
Date: Tue, 31 Oct 2023 15:32:04 +0000
Message-ID: <F121A82D-3D86-4923-9E6E-C520F57E8DAA@arm.com>
References:
 <0c86b50a796ba2aaab01e30935ed559ab719d33a.1698418578.git.nicola.vetrini@bugseng.com>
 <98da41d4-f818-44c7-bd3c-b3e3b224ff0d@xen.org>
 <alpine.DEB.2.22.394.2310301544460.1625118@ubuntu-linux-20-04-desktop>
 <ee3c415d-bedd-432e-bf31-6e806b9cf976@xen.org>
 <DFC25ACE-FFBE-43CF-9CE2-90671D122CEC@arm.com>
 <2201cad3353f5deb567f929e91e90fd2@bugseng.com>
 <E0FA2717-D06B-4C51-9E9A-DBD72CE35963@arm.com>
 <e958d555-3075-467b-b3cf-1e5c6ad78405@xen.org>
In-Reply-To: <e958d555-3075-467b-b3cf-1e5c6ad78405@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_|PAWPR08MB9123:EE_|AMS0EPF000001A5:EE_|AS8PR08MB8248:EE_
X-MS-Office365-Filtering-Correlation-Id: bef68dcd-2e5f-4d68-2b46-08dbda26a0b5
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:
 2pxD8lLcU5v231NMXf6hOxCsylCXg4XD4zf0TksIvwT/e4vy2xcGEkKmFC/kuj3NurqEWlOQc1vGqEg3fiUawEULH1p7DB4+m8ak+hvjuTtDHl+HReqrJiVvgVHOdYGUKSHAyE4Ts2uiCUzknkorox1+PJwcR5F+rizMl7W7jPCg5XC5+eZcKk1NmuFZy2hiexVzixMSbJShja019ERO2pQntlC+46aPs35jkrdPfDwpuhNPts7EeI9GU4N2XHSG4FVrbqwPGaV96NoSQ6BP/c4/FWsGPMoK1vjTA5E3cSRS5Nn+aX/VGs3CHViEc5oOLT4pG7G1hY58+yjNUMKG+Ns9ebgqdc/fFVVM0G8GGjPjEUTpKoktLT10VrfaMcsgVQm5K2GuOs61IuzoMkkAn4eS587D1v3n4p576gDf9wWKI8j6z0kTHAuPVWQNhU4JWKqy2XhBiT5R5azi1QjxczTLkRcBwpo5CBM+zyIVkUapCftGo9wBoXY8WIPwdlRfmbfXDuZWrJ/dGHxHTyC676ApUGZauqvw//9oB+/+Sl742JC+AKgKhxRTp6lTODwOUQGpEP6/VwzX232cuDNyibZFOUCXV1dwOOos3sQ0TC3HxHLNfiSUYvtj1k0YHSR5
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)(39860400002)(136003)(396003)(366004)(376002)(230922051799003)(186009)(64100799003)(1800799009)(451199024)(8676002)(76116006)(54906003)(64756008)(66946007)(2906002)(66446008)(6916009)(66476007)(91956017)(316002)(66556008)(5660300002)(7416002)(6486002)(966005)(4001150100001)(478600001)(41300700001)(8936002)(4326008)(71200400001)(53546011)(6512007)(2616005)(6506007)(26005)(83380400001)(38070700009)(122000001)(36756003)(33656002)(86362001)(38100700002)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <C9E81E895449194BB317CE401D2BD670@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAWPR08MB9123
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:
 AMS0EPF000001A5.eurprd05.prod.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	e3a2055f-d5f7-42fd-9e72-08dbda2688cd
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	4InQVTapQJf446IN4KsmRiKfngWynweux7kNXMcOo0+bp7+UNqIwEEWglK8Yxt99IU1lvTDjF8CWAm5ttdHkCRNHVDhsDF4XMhkSITRFoS5Z+i5wqgjrDZFUFQj6hbxjKygl8cm+nt2rHCXBP2RjIp9Dte5j+hxCdSn7bdmNvc6PKDS2JEaqbw0XFNimN0KzBJ21I4wN6655VKqtO5cZ9Ul7ZuGo6uSeVZ8vnpDp5TJfkMO+qG+qSr7+PADTAMZWR/snKEYdocYKfXtsacSO6xkWYrhJbOS7NJo7YkiNnk2ldcNHJX61f3wTlYbqVdNrn8gDzr3XBnVUx4At2lSjZHwBEfWmVqN7TkP9/3F4mpAiM+lgrNrzMw85fpmTZMXebqpGEPUdff2UsVRVR2cQrosacx4Ug2mqxWJEY/LL5tGQBTa00iS3M5qWVDBamZngwZD9njRsVm09pTJdpssx1ZKK7CAj7bZcNcrUYffc/2NmgfiFBKRjl8Hh3cPwLCGRmNpFizt7AqQgvlYbyCn54KY90IiN0rgOR3LpjMb2+6MOjzI+sKl2xMZf4FG8ztsFIVe+j+1r0OPQ/Gd74FDMk4VkvDpd5vYJ+2/DOTna6Vkasw2HlwHhnQuS2yRvMmXlPr1cHlM2QFqUuTiC7TO2QojEepqqfg/clTRbwXPc2IkGVaoRSCYo7T3fp/C1e8Jc9E2OkLoIQCOUTFnqc2WqIp1v3uRIuhnXYCoC9vzCkw8=
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)(346002)(396003)(230922051799003)(82310400011)(1800799009)(64100799003)(451199024)(186009)(46966006)(40470700004)(36840700001)(41300700001)(316002)(54906003)(8936002)(8676002)(6862004)(70206006)(70586007)(5660300002)(4326008)(40480700001)(40460700003)(82740400003)(81166007)(356005)(47076005)(83380400001)(478600001)(2906002)(966005)(6486002)(26005)(53546011)(6506007)(36756003)(336012)(33656002)(6512007)(2616005)(86362001)(36860700001)(4001150100001);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 31 Oct 2023 15:32:44.2272
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: bef68dcd-2e5f-4d68-2b46-08dbda26a0b5
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:
	AMS0EPF000001A5.eurprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB8248

DQoNCj4gT24gMzEgT2N0IDIwMjMsIGF0IDE1OjI3LCBKdWxpZW4gR3JhbGwgPGp1bGllbkB4ZW4u
b3JnPiB3cm90ZToNCj4gDQo+IEhpLA0KPiANCj4gT24gMzEvMTAvMjAyMyAxNToxMiwgTHVjYSBG
YW5jZWxsdSB3cm90ZToNCj4+PiBPbiAzMSBPY3QgMjAyMywgYXQgMTU6MTAsIE5pY29sYSBWZXRy
aW5pIDxuaWNvbGEudmV0cmluaUBidWdzZW5nLmNvbT4gd3JvdGU6DQo+Pj4gDQo+Pj4gT24gMjAy
My0xMC0zMSAxNToxMywgTHVjYSBGYW5jZWxsdSB3cm90ZToNCj4+Pj4+IE9uIDMxIE9jdCAyMDIz
LCBhdCAxMzoyNywgSnVsaWVuIEdyYWxsIDxqdWxpZW5AeGVuLm9yZz4gd3JvdGU6DQo+Pj4+PiBI
aSBTdGVmYW5vLA0KPj4+Pj4gT24gMzAvMTAvMjAyMyAyMjo0OSwgU3RlZmFubyBTdGFiZWxsaW5p
IHdyb3RlOg0KPj4+Pj4+IE9uIE1vbiwgMzAgT2N0IDIwMjMsIEp1bGllbiBHcmFsbCB3cm90ZToN
Cj4+Pj4+Pj4gSGkgTmljb2xhLA0KPj4+Pj4+PiBPbiAyNy8xMC8yMDIzIDE2OjExLCBOaWNvbGEg
VmV0cmluaSB3cm90ZToNCj4+Pj4+Pj4+IGRpZmYgLS1naXQgYS9kb2NzL21pc3JhL2RldmlhdGlv
bnMucnN0IGIvZG9jcy9taXNyYS9kZXZpYXRpb25zLnJzdA0KPj4+Pj4+Pj4gaW5kZXggODUxMWEx
ODkyNTNiLi44YWFhYTE0NzNmYjQgMTAwNjQ0DQo+Pj4+Pj4+PiAtLS0gYS9kb2NzL21pc3JhL2Rl
dmlhdGlvbnMucnN0DQo+Pj4+Pj4+PiArKysgYi9kb2NzL21pc3JhL2RldmlhdGlvbnMucnN0DQo+
Pj4+Pj4+PiBAQCAtOTAsNiArOTAsMTMgQEAgRGV2aWF0aW9ucyByZWxhdGVkIHRvIE1JU1JBIEM6
MjAxMiBSdWxlczoNCj4+Pj4+Pj4+ICAgICAgICAgICAtIF9fZW11bGF0ZV8yb3AgYW5kIF9fZW11
bGF0ZV8yb3Bfbm9ieXRlDQo+Pj4+Pj4+PiAgICAgICAgICAgLSByZWFkX2RlYnVncmVnIGFuZCB3
cml0ZV9kZWJ1Z3JlZw0KPj4+Pj4+Pj4gICsgICAqIC0gUjcuMQ0KPj4+Pj4+Pj4gKyAgICAgLSBJ
dCBpcyBzYWZlIHRvIHVzZSBjZXJ0YWluIG9jdGFsIGNvbnN0YW50cyB0aGUgd2F5IHRoZXkgYXJl
IGRlZmluZWQNCj4+Pj4+Pj4+ICsgICAgICAgaW4gc3BlY2lmaWNhdGlvbnMsIG1hbnVhbHMsIGFu
ZCBhbGdvcml0aG0gZGVzY3JpcHRpb25zLiBTdWNoIHBsYWNlcw0KPj4+Pj4+Pj4gKyAgICAgICBh
cmUgbWFya2VkIHNhZmUgd2l0aCBhIC9cKiBvY3RhbC1vayBcKi8gaW4tY29kZSBjb21tZW50LCBv
ciB3aXRoIGENCj4+Pj4+Pj4+IFNBRg0KPj4+Pj4+Pj4gKyAgICAgICBjb21tZW50IChzZWUgc2Fm
ZS5qc29uKS4NCj4+Pj4+Pj4gUmVhZGluZyB0aGlzLCBpdCBpcyB1bmNsZWFyIHRvIG1lIHdoeSB3
ZSBoYXZlIHR3byB3YXlzIHRvIGRldmlhdGUgdGhlIHJ1bGUNCj4+Pj4+Pj4gcjcuMS4gQW5kIG1v
cmUgaW1wb3J0YW50ZWx5LCBob3cgd291bGQgdGhlIGRldmVsb3BwZXIgZGVjaWRlIHdoaWNoIG9u
ZSB0byB1c2U/DQo+Pj4+Pj4gSSBhZ3JlZSB3aXRoIHlvdSBvbiB0aGlzIGFuZCB3ZSB3ZXJlIGRp
c2N1c3NpbmcgdGhpcyB0b3BpYyBqdXN0IHRoaXMNCj4+Pj4+PiBtb3JuaW5nIGluIHRoZSBGVVNB
IGNvbW11bml0eSBjYWxsLiBJIHRoaW5rIHdlIG5lZWQgYSB3YXkgdG8gZG8gdGhpcw0KPj4+Pj4+
IHdpdGggdGhlIFNBRiBmcmFtZXdvcms6DQo+Pj4+Pj4gaWYgKHNvbWUgY29kZSB3aXRoIHZpb2xh
dGlvbikgLyogU0FGLXh4LXNhZmUgKi8NCj4+Pj4+PiBUaGlzIGRvZXNuJ3Qgd29yayB0b2RheSB1
bmZvcnR1bmF0ZWx5LiBJdCBjYW4gb25seSBiZSBkb25lIHRoaXMgd2F5Og0KPj4+Pj4+IC8qIFNB
Ri14eC1zYWZlICovDQo+Pj4+Pj4gaWYgKHNvbWUgY29kZSB3aXRoIHZpb2xhdGlvbikNCj4+Pj4+
PiBXaGljaCBpcyBub3QgYWx3YXlzIGRlc2lyYWJsZS4gb2N0YWwtb2sgaXMganVzdCBhbiBhZC1o
b2Mgc29sdXRpb24gZm9yDQo+Pj4+Pj4gb25lIHNwZWNpZmljIHZpb2xhdGlvbiBidXQgd2UgbmVl
ZCBhIGdlbmVyaWMgd2F5IHRvIGRvIHRoaXMuIEx1Y2EgaXMNCj4+Pj4+PiBpbnZlc3RpZ2F0aW5n
IHBvc3NpYmxlIHdheXMgdG8gc3VwcG9ydCB0aGUgcHJldmlvdXMgZm9ybWF0IGluIFNBRi4NCj4+
Pj4+IFdoeSBjYW4ndCB3ZSB1c2Ugb2N0YWwtb2sgZXZlcnl3aGVyZSBmb3Igbm93PyBNeSBwb2lu
dCBoZXJlIGlzIHRvIG1ha2Ugc2ltcGxlIGZvciB0aGUgZGV2ZWxvcHBlciB0byBrbm93IHdoYXQg
dG8gdXNlLg0KPj4+Pj4+IEkgdGhpbmsgd2Ugc2hvdWxkIHRha2UgdGhpcyBwYXRjaCBmb3Igbm93
IGFuZCBoYXJtb25pemUgaXQgb25jZSBTQUYgaXMNCj4+Pj4+PiBpbXByb3ZlZC4NCj4+Pj4+IFRo
ZSBkZXNjcmlwdGlvbiBvZiB0aGUgZGV2aWF0aW9uIG5lZWRzIHNvbWUgaW1wcm92ZW1lbnQuIFRv
IGdpdmUgYW4gZXhhbXBsZSwgd2l0aCB0aGUgY3VycmVudCB3b3JkaW5nLCBvbmUgY291bGQgdGhl
eSBjYW4gdXNlIG9jdGFsLW9rIGV2ZXJ5d2hlcmUuIEJ1dCBhYm92ZSwgeW91IGFyZSBpbXBseWlu
ZyB0aGF0IFNBRi14eC1zYWZlIHNob3VsZCBiZQ0KPj4+Pj4gcHJlZmVycmVkLg0KPj4+Pj4gSSB3
b3VsZCBzdGlsbCBzdHJvbmdseSBwcmVmZXIgaWYgd2UgdXNlIG9jdGFsLW9rIGV2ZXJ5d2hlcmUg
YmVjYXVzZSB0aGlzIGlzIHNpbXBsZSB0byByZW1lbWJlci4gQnV0IGlmIHRoZSBvdGhlciBhcmUg
aGFwcHkgdG8gaGF2ZSBib3RoIFNBRi1YWCBhbmQgb2N0YWwtb2ssIHRoZW4gdGhlIGRlc2NyaXB0
aW9uIG5lZWRzIHRvIGJlIGNvbXBsZXRlbHkgdW5hbWJpZ3VvdXMgYW5kIHRoZSBwYXRjaCBzaG91
bGQgY29udGFpbiBzb21lIGV4cGxhbmF0aW9uIHdoeSB3ZSBoYXZlIHR3byBkaWZmZXJlbnQgd2F5
cyB0byBkZXZpYXRlLg0KPj4+PiBXb3VsZCBpdCBiZSBvayB0byBoYXZlIGJvdGgsIGZvciBleGFt
cGxlOiAvKiBTQUYtWFgtc2FmZSBvY3RhbC1vayAqLw0KPj4+PiBTbyB0aGF0IHRoZSBzdXBwcmVz
c2lvbiBlbmdpbmUgZG8gd2hhdCBpdCBzaG91bGQgKGN1cnJlbnRseSBpdCBkb2VzbuKAmXQgc3Vw
cHJlc3MgdGhlIHNhbWUgbGluZSwgYnV0IHdlIGNvdWxkIGRvIHNvbWV0aGluZyBhYm91dCBpdCkg
YW5kIHRoZSBkZXZlbG9wZXINCj4+Pj4gaGFzIGEgd2F5IHRvIHVuZGVyc3RhbmQgd2hhdCBpcyB0
aGUgdmlvbGF0aW9uIGhlcmUgd2l0aG91dCBnb2luZyB0byB0aGUganVzdGlmaWNhdGlvbiBkYXRh
YmFzZS4NCj4+PiANCj4+PiBJIGd1ZXNzLiBJdCBjb3VsZCBvdmVyZmxvdyB0aGUgODAtY2hhciBs
aW1pdCBpbiB4ZW4vYXJjaC94ODYvaHZtL3N2bS9zdm0uaCwgdGhvdWdoLg0KPj4gWWVhaCwgYnV0
IHdlIGNvdWxkIHJ1bGUgb3V0IHNvbWV0aGluZyBpbiBjb2RlX3N0eWxlIHRvIGFsbG93IG9ubHkg
dGhpcyBraW5kIG9mIHRyYWlsaW5nIGNvbW1lbnRzIHRvIGV4Y2VlZCB0aGUgODAgY2hhcnMNCj4g
DQo+IEluIHRoZSBwYXN0IEkgZXhwcmVzc2VkIGNvbmNlcm5lZCB3aXRoIHRoaXMga2luZCBvZiB0
aGUgcnVsZSBiZWNhdXNlIGl0IGlzIG5vdCBlbnRpcmVseSBjbGVhciBob3cgYW4gYXV0b21hdGlj
IGZvcm1hdHRlciB3aWxsIGJlIGFibGUgdG8gY2hlY2sgaXQuDQo+IA0KPiBDYW4geW91IGNsYXJp
Znkgd2hldGhlciBjbGFuZy1mb3JtYXQgd291bGQgYmUgYWJsZSB0byBoYW5kbGUgeW91ciBwcm9w
b3NlZCBydWxlPw0KDQpTbywgeWVzdGVyZGF5IEJlcnRyYW5kIHBvaW50ZWQgb3V0IGEgU3RhY2tP
dmVyZmxvdyB0aHJlYWQgZm9yIHRoaXMgaXNzdWUgYW5kIGlmIHdlIHVzZSBSZWZsb3dDb21tZW50
czogZmFsc2Ugd2Ugc2hvdWxkDQpiZSBhYmxlIHRvIGxldCB0aGUgbGluZSBhcyBpdCBpcyAobm90
IHRlc3RlZCkuDQoNCmh0dHBzOi8vY2xhbmcubGx2bS5vcmcvZG9jcy9DbGFuZ0Zvcm1hdFN0eWxl
T3B0aW9ucy5odG1sI3JlZmxvd2NvbW1lbnRzDQoNCg0KDQo+IA0KPiBDaGVlcnMsDQo+IA0KPiAt
LSANCj4gSnVsaWVuIEdyYWxsDQoNCg==


From xen-devel-bounces@lists.xenproject.org Tue Oct 31 15:35:08 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 15:35:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625909.975685 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxqlm-0006Rp-Gb; Tue, 31 Oct 2023 15:35:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625909.975685; Tue, 31 Oct 2023 15:35: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 1qxqlm-0006Ri-DK; Tue, 31 Oct 2023 15:35:06 +0000
Received: by outflank-mailman (input) for mailman id 625909;
 Tue, 31 Oct 2023 15:35: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=DSX0=GN=cloud.com=kelly.choi@srs-se1.protection.inumbo.net>)
 id 1qxqll-0006Ra-HK
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 15:35:05 +0000
Received: from mail-ej1-x631.google.com (mail-ej1-x631.google.com
 [2a00:1450:4864:20::631])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 100f256a-7803-11ee-98d6-6d05b1d4d9a1;
 Tue, 31 Oct 2023 16:35:04 +0100 (CET)
Received: by mail-ej1-x631.google.com with SMTP id
 a640c23a62f3a-98377c5d53eso870849866b.0
 for <xen-devel@lists.xenproject.org>; Tue, 31 Oct 2023 08:35: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: 100f256a-7803-11ee-98d6-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1698766504; x=1699371304; darn=lists.xenproject.org;
        h=to:subject:message-id:date:from:mime-version:from:to:cc:subject
         :date:message-id:reply-to;
        bh=I3KYXxOTKEr4IJ837N0t09kJUWHf+DVsFJvM9qAYdSo=;
        b=IeUQrl+PPrrdCU1CbxsrX0Q65KsEY/ArGN2O9+9gWyBpY9R1f0CbnNPA//W/SJR9wL
         Ul1Ft4w8UPHqHOUgyg73yv0HZ8Mb8t96smYeZ7/rJZIt4Q94wepF8Xnvdeafdi4MTccr
         DiktA4bDns5kLjV3XnDnK6xD+N8mPkB3Q7ENg=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698766504; x=1699371304;
        h=to:subject:message-id:date:from:mime-version:x-gm-message-state
         :from:to:cc:subject:date:message-id:reply-to;
        bh=I3KYXxOTKEr4IJ837N0t09kJUWHf+DVsFJvM9qAYdSo=;
        b=Ak2S4zi2w+HVeLMmKGmYQPHmsBgKiZcjHd3z0c5uTjAFSObPSj5iN0rkVhVxjoHrK3
         tFmXwMnmlMfvlMJvJQL1x100J1DzyOCG5URBOmCtOizctdYYNEKgayjmzvyJBt+c5IYY
         K7YLbPAMP3hLrIYsNvqDf1Xbf4dR+8Gd4OnZ1vsx91XVuXjvuIlXJxEVt5HIcbLUlvY7
         PXI2wZ/ODZp75Na1GvEGudeZ0LZq0RVhHkXYQgFgVPsiB4uDbsDzLY3ak1h/5DxDqK5g
         yZSm5riswUkoldCpMgso/4FLopSD983WFIhbCDFAKf/zahAAr7g8oVTFtMJCHoJFGXD4
         6aTQ==
X-Gm-Message-State: AOJu0Yy3+XnIdYk8M+w3maRJxlTRT9lwAAiwAFM13HiYX6fQvJRLdw+3
	Lg3QHIKDtGqRksZKJrAM1JTieG9P+f1qFF1QSSsENgGQwx4/8ZAvpUxSjP+0
X-Google-Smtp-Source: AGHT+IGmDoHoYvC0BjBxs6MQZaPXUH5w4GAeZuvVLlbZ2z5nA2Q99cjrLYvYnUleNBWuJNMmb4oE1y966sD56s8IIhA=
X-Received: by 2002:a17:906:c150:b0:9bf:63b2:b6f0 with SMTP id
 dp16-20020a170906c15000b009bf63b2b6f0mr10059409ejc.29.1698766503791; Tue, 31
 Oct 2023 08:35:03 -0700 (PDT)
MIME-Version: 1.0
From: Kelly Choi <kelly.choi@cloud.com>
Date: Tue, 31 Oct 2023 08:34:27 -0700
Message-ID: <CAO-mL=zv5bHvk+2GxDMxYxrqnsm4ORFTcT=rUGO7rQXzJgc4rw@mail.gmail.com>
Subject: [ANNOUNCE] Call for agenda items for 2 November Community Call @
 16:00 GMT
To: xen-devel@lists.xenproject.org
Content-Type: multipart/alternative; boundary="00000000000003f68f060904e63d"
Bcc: xen-devel@lists.xenproject.org

--00000000000003f68f060904e63d
Content-Type: text/plain; charset="UTF-8"

Hi all,

Please add your proposed agenda and name next to any items in this *link
here* <https://cryptpad.fr/pad/#/2/pad/edit/2tlR6HPM95auHBaXHjMXCM8Q/>

If there are any action items that have been resolved, please remove them
from the sheet.

*COMMUNITY CALL INFORMATION*

*CALL LINK: https://meet.jit.si/XenProjectCommunityCall
<https://www.google.com/url?q=https://meet.jit.si/XenProjectCommunityCall&sa=D&source=calendar&ust=1699196661201312&usg=AOvVaw1FcogEsMjFSd1Pmi7V0cBc>*

*DATE: 1st Thursday of each month*

*TIME: 16:00 British Time (either BST or GMT)*
*To allow time to switch between meetings, we will start at 16:05.  Aim to
join by 16:00 if possible to allocate time for technical difficulties etc. *

*SIGN UP SHEET:* Please add or remove yourself from the sign-up-sheet to be
CC'd in these emails in this *link here
<https://cryptpad.fr/pad/#/2/pad/edit/D9vGzihPxxAOe6RFPz0sRCf+/> *

------------------------------------------------------------------------------------------------------------------------------

*Dial-in info and pin can be found here:*

https://meet.jit.si/static/dialInInfo.html?room=XenProjectCommunityCall

*Meeting time:*

https://www.timeanddate.com/worldclock/meetingdetails.html?year=2023&month=11&day=2&hour=16&min=0&sec=0&p1=1234&p2=37&p3=224&p4=179
<https://www.timeanddate.com/worldclock/meetingdetails.html?year=2023&month=10&day=5&hour=15&min=0&sec=0&p1=1234&p2=37&p3=224&p4=179>
Many thanks,
Kelly Choi

Open Source Community Manager
XenServer, Cloud Software Group

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

<div dir=3D"ltr"><p>Hi all,</p><p>Please add your proposed agenda and name =
next to any items in this <a href=3D"https://cryptpad.fr/pad/#/2/pad/edit/2=
tlR6HPM95auHBaXHjMXCM8Q/"><b>link here</b></a>=C2=A0</p><p>If there are any=
 action items that have been resolved, please remove them from the sheet.=
=C2=A0</p><p><i style=3D""><b>COMMUNITY CALL INFORMATION</b></i></p><p><b>C=
ALL LINK:=C2=A0<a href=3D"https://www.google.com/url?q=3Dhttps://meet.jit.s=
i/XenProjectCommunityCall&amp;sa=3DD&amp;source=3Dcalendar&amp;ust=3D169919=
6661201312&amp;usg=3DAOvVaw1FcogEsMjFSd1Pmi7V0cBc" style=3D"cursor: auto;">=
https://meet.jit.si/XenProjectCommunityCall</a></b></p><p><b>DATE: 1st Thur=
sday of each month</b></p><p><b>TIME: 16:00 British Time (either BST or GMT=
)</b><br><i>To allow time to switch between meetings, we will start at 16:0=
5.=C2=A0 Aim to join by 16:00 if possible to allocate time for technical di=
fficulties etc.=C2=A0</i><br></p><p><b>SIGN UP SHEET:</b>=C2=A0Please add o=
r remove yourself from the sign-up-sheet to be CC&#39;d in these emails in =
this <b><a href=3D"https://cryptpad.fr/pad/#/2/pad/edit/D9vGzihPxxAOe6RFPz0=
sRCf+/">link here</a>=C2=A0</b></p><p>-------------------------------------=
---------------------------------------------------------------------------=
--------------</p><p><b>Dial-in info and pin can be found here:</b></p><p><=
a href=3D"https://meet.jit.si/static/dialInInfo.html?room=3DXenProjectCommu=
nityCall">https://meet.jit.si/static/dialInInfo.html?room=3DXenProjectCommu=
nityCall</a></p><p><b>Meeting time:</b></p><p><a href=3D"https://www.timean=
ddate.com/worldclock/meetingdetails.html?year=3D2023&amp;month=3D10&amp;day=
=3D5&amp;hour=3D15&amp;min=3D0&amp;sec=3D0&amp;p1=3D1234&amp;p2=3D37&amp;p3=
=3D224&amp;p4=3D179" rel=3D"noreferrer" target=3D"_blank">https://www.timea=
nddate.com/worldclock/meetingdetails.html?year=3D2023&amp;month=3D11&amp;da=
y=3D2&amp;hour=3D16&amp;min=3D0&amp;sec=3D0&amp;p1=3D1234&amp;p2=3D37&amp;p=
3=3D224&amp;p4=3D179</a><br></p><div><div dir=3D"ltr" class=3D"gmail_signat=
ure" data-smartmail=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,1=
36,136)">Open Source Community Manager</div><div style=3D"color:rgb(136,136=
,136)">XenServer, Cloud Software Group</div></div><div style=3D"color:rgb(1=
36,136,136)"><br></div></div></div></div></div>

--00000000000003f68f060904e63d--


From xen-devel-bounces@lists.xenproject.org Tue Oct 31 15:36:53 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 15:36:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625914.975694 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxqnU-0007o9-Re; Tue, 31 Oct 2023 15:36:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625914.975694; Tue, 31 Oct 2023 15:36: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 1qxqnU-0007o2-Oy; Tue, 31 Oct 2023 15:36:52 +0000
Received: by outflank-mailman (input) for mailman id 625914;
 Tue, 31 Oct 2023 15:36: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 1qxqnU-0007nu-4R
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 15:36: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 1qxqnR-00071q-DY; Tue, 31 Oct 2023 15:36:49 +0000
Received: from 54-240-197-239.amazon.com ([54.240.197.239]
 helo=[192.168.9.249]) by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qxqnR-0005Mu-6f; Tue, 31 Oct 2023 15:36: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=4GfwqLh1nHAjACVFfZQPOO2eTpPBUAVG2Ec+XkQYqbk=; b=VYACEsqcYrY7cJZv1T6usx/0IX
	CtZvrNJH6lJJVJY+8V5tvgKGSOYxwMdYQN3npUVuyhR4/8Jz6C4ckupzE7RR+ZbuxBevBE5GKFNvm
	5MbodiLTi8XDKestPz97/aqcSPgiME+X6PtOhpTHQcQIwU+LqHKUqcVFRRYhk9TIdYsU=;
Message-ID: <2d6c4859-5cca-4cf2-b7f5-1068f0130c99@xen.org>
Date: Tue, 31 Oct 2023 15:36:45 +0000
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN PATCH][for-4.19 v5] xen: Add deviations for MISRA C:2012
 Rule 7.1
Content-Language: en-GB
To: 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>,
 "michal.orzel@amd.com" <michal.orzel@amd.com>,
 "xenia.ragiadakou@amd.com" <xenia.ragiadakou@amd.com>,
 "ayan.kumar.halder@amd.com" <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>,
 Simone Ballarin <simone.ballarin@bugseng.com>,
 Doug Goldstein <cardoe@cardoe.com>, George Dunlap
 <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>
References: <0c86b50a796ba2aaab01e30935ed559ab719d33a.1698418578.git.nicola.vetrini@bugseng.com>
 <98da41d4-f818-44c7-bd3c-b3e3b224ff0d@xen.org>
 <alpine.DEB.2.22.394.2310301544460.1625118@ubuntu-linux-20-04-desktop>
 <ee3c415d-bedd-432e-bf31-6e806b9cf976@xen.org>
 <DFC25ACE-FFBE-43CF-9CE2-90671D122CEC@arm.com>
 <2201cad3353f5deb567f929e91e90fd2@bugseng.com>
 <E0FA2717-D06B-4C51-9E9A-DBD72CE35963@arm.com>
 <e958d555-3075-467b-b3cf-1e5c6ad78405@xen.org>
 <F121A82D-3D86-4923-9E6E-C520F57E8DAA@arm.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <F121A82D-3D86-4923-9E6E-C520F57E8DAA@arm.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit



On 31/10/2023 15:32, Luca Fancellu wrote:
> 
> 
>> On 31 Oct 2023, at 15:27, Julien Grall <julien@xen.org> wrote:
>>
>> Hi,
>>
>> On 31/10/2023 15:12, Luca Fancellu wrote:
>>>> On 31 Oct 2023, at 15:10, Nicola Vetrini <nicola.vetrini@bugseng.com> wrote:
>>>>
>>>> On 2023-10-31 15:13, Luca Fancellu wrote:
>>>>>> On 31 Oct 2023, at 13:27, Julien Grall <julien@xen.org> wrote:
>>>>>> Hi Stefano,
>>>>>> On 30/10/2023 22:49, Stefano Stabellini wrote:
>>>>>>> On Mon, 30 Oct 2023, Julien Grall wrote:
>>>>>>>> Hi Nicola,
>>>>>>>> On 27/10/2023 16:11, Nicola Vetrini wrote:
>>>>>>>>> diff --git a/docs/misra/deviations.rst b/docs/misra/deviations.rst
>>>>>>>>> index 8511a189253b..8aaaa1473fb4 100644
>>>>>>>>> --- a/docs/misra/deviations.rst
>>>>>>>>> +++ b/docs/misra/deviations.rst
>>>>>>>>> @@ -90,6 +90,13 @@ Deviations related to MISRA C:2012 Rules:
>>>>>>>>>            - __emulate_2op and __emulate_2op_nobyte
>>>>>>>>>            - read_debugreg and write_debugreg
>>>>>>>>>   +   * - R7.1
>>>>>>>>> +     - It is safe to use certain octal constants the way they are defined
>>>>>>>>> +       in specifications, manuals, and algorithm descriptions. Such places
>>>>>>>>> +       are marked safe with a /\* octal-ok \*/ in-code comment, or with a
>>>>>>>>> SAF
>>>>>>>>> +       comment (see safe.json).
>>>>>>>> Reading this, it is unclear to me why we have two ways to deviate the rule
>>>>>>>> r7.1. And more importantely, how would the developper decide which one to use?
>>>>>>> I agree with you on this and we were discussing this topic just this
>>>>>>> morning in the FUSA community call. I think we need a way to do this
>>>>>>> with the SAF framework:
>>>>>>> if (some code with violation) /* SAF-xx-safe */
>>>>>>> This doesn't work today unfortunately. It can only be done this way:
>>>>>>> /* SAF-xx-safe */
>>>>>>> if (some code with violation)
>>>>>>> Which is not always desirable. octal-ok is just an ad-hoc solution for
>>>>>>> one specific violation but we need a generic way to do this. Luca is
>>>>>>> investigating possible ways to support the previous format in SAF.
>>>>>> Why can't we use octal-ok everywhere for now? My point here is to make simple for the developper to know what to use.
>>>>>>> I think we should take this patch for now and harmonize it once SAF is
>>>>>>> improved.
>>>>>> The description of the deviation needs some improvement. To give an example, with the current wording, one could they can use octal-ok everywhere. But above, you are implying that SAF-xx-safe should be
>>>>>> preferred.
>>>>>> I would still strongly prefer if we use octal-ok everywhere because this is simple to remember. But if the other are happy to have both SAF-XX and octal-ok, then the description needs to be completely unambiguous and the patch should contain some explanation why we have two different ways to deviate.
>>>>> Would it be ok to have both, for example: /* SAF-XX-safe octal-ok */
>>>>> So that the suppression engine do what it should (currently it doesn’t suppress the same line, but we could do something about it) and the developer
>>>>> has a way to understand what is the violation here without going to the justification database.
>>>>
>>>> I guess. It could overflow the 80-char limit in xen/arch/x86/hvm/svm/svm.h, though.
>>> Yeah, but we could rule out something in code_style to allow only this kind of trailing comments to exceed the 80 chars
>>
>> In the past I expressed concerned with this kind of the rule because it is not entirely clear how an automatic formatter will be able to check it.
>>
>> Can you clarify whether clang-format would be able to handle your proposed rule?
> 
> So, yesterday Bertrand pointed out a StackOverflow thread for this issue and if we use ReflowComments: false we should
> be able to let the line as it is (not tested).

Wouldn't that prevent reflow for all the comments? If so, I don't think 
this is we want. Instead, we want to allow reflow for any comments but 
the one done at the end of the line.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Oct 31 15:44:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 15:44:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625920.975705 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxqv9-0003AU-KQ; Tue, 31 Oct 2023 15:44:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625920.975705; Tue, 31 Oct 2023 15:44: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 1qxqv9-0003AN-Gr; Tue, 31 Oct 2023 15:44:47 +0000
Received: by outflank-mailman (input) for mailman id 625920;
 Tue, 31 Oct 2023 15:44: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 1qxqv8-0003AA-Lz; Tue, 31 Oct 2023 15:44: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 1qxqv8-0007BO-9X; Tue, 31 Oct 2023 15:44: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 1qxqv7-0006mY-VJ; Tue, 31 Oct 2023 15:44:46 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qxqv7-00059O-Up; Tue, 31 Oct 2023 15:44: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=mIboCtanv1PXw0y+7ojPpWc4FwSWj0ARidKec/dH+u4=; b=cVYIVkpPeXyfX3trlMuUd0NZlp
	AjyUONTnA8F9chMtfbLsGYDfgwbaHRjAvhxunUBbyFgJxjktChwnx0O0k3STugxx3nmGQfXxHz8Gj
	nvWvWmE2OkX9zsfBx6jnKvESLhtR1Fe9rp7B05YETA7f2P1jhROWgtvmFCb9eOVGScso=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183626-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 183626: regressions - FAIL
X-Osstest-Failures:
    xen-unstable:test-amd64-i386-pair:xen-install/dst_host:fail:regression
    xen-unstable:test-amd64-i386-qemut-rhel6hvm-amd:xen-install:fail:regression
    xen-unstable:test-amd64-i386-examine-uefi:xen-install:fail:heisenbug
    xen-unstable:test-amd64-i386-pair:xen-install/src_host:fail:heisenbug
    xen-unstable:test-amd64-i386-examine-bios:xen-install:fail:heisenbug
    xen-unstable:test-amd64-i386-qemuu-rhel6hvm-amd:xen-install:fail:heisenbug
    xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:windows-install: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-qemut-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-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-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2: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-amd64-libvirt:migrate-support-check: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-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: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-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2: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-rtds:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds: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-arndale:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt: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-amd64-i386-libvirt-raw: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-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-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:hosts-allocate:starved:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:hosts-allocate:starved:nonblocking
    xen-unstable:test-arm64-arm64-xl:hosts-allocate:starved:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:hosts-allocate:starved:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:hosts-allocate:starved:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:hosts-allocate:starved:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:hosts-allocate:starved:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:hosts-allocate:starved:nonblocking
X-Osstest-Versions-This:
    xen=9659b2a6d73b14620e187f9c626a09323853c459
X-Osstest-Versions-That:
    xen=5415b2b2118bd78d8a04f276a8312f7f0cb1a466
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 31 Oct 2023 15:44:45 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-i386-pair         11 xen-install/dst_host     fail REGR. vs. 183615
 test-amd64-i386-qemut-rhel6hvm-amd  7 xen-install        fail REGR. vs. 183615

Tests which are failing intermittently (not blocking):
 test-amd64-i386-examine-uefi  6 xen-install      fail in 183620 pass in 183626
 test-amd64-i386-pair     10 xen-install/src_host fail in 183620 pass in 183626
 test-amd64-i386-examine-bios  6 xen-install      fail in 183620 pass in 183626
 test-amd64-i386-qemuu-rhel6hvm-amd  7 xen-install          fail pass in 183620

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemuu-win7-amd64 12 windows-install       fail like 183547
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 183566
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183615
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183615
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183615
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183615
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 183615
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 183615
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183615
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183615
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183615
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 183615
 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      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-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-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-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-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     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-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-amd64-i386-libvirt-raw  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-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-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-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw  3 hosts-allocate           starved in 183620 n/a
 test-arm64-arm64-libvirt-xsm  3 hosts-allocate           starved in 183620 n/a
 test-arm64-arm64-xl           3 hosts-allocate           starved in 183620 n/a
 test-arm64-arm64-xl-credit2   3 hosts-allocate           starved in 183620 n/a
 test-arm64-arm64-xl-credit1   3 hosts-allocate           starved in 183620 n/a
 test-arm64-arm64-xl-xsm       3 hosts-allocate           starved in 183620 n/a
 test-arm64-arm64-xl-thunderx  3 hosts-allocate           starved in 183620 n/a
 test-arm64-arm64-xl-vhd       3 hosts-allocate           starved in 183620 n/a

version targeted for testing:
 xen                  9659b2a6d73b14620e187f9c626a09323853c459
baseline version:
 xen                  5415b2b2118bd78d8a04f276a8312f7f0cb1a466

Last test of basis   183615  2023-10-30 01:53:40 Z    1 days
Testing same since   183620  2023-10-30 13:40:36 Z    1 days    2 attempts

------------------------------------------------------------
People who touched revisions under test:
  Julien Grall <julien@xen.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                           fail    
 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                                         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


Not pushing.

------------------------------------------------------------
commit 9659b2a6d73b14620e187f9c626a09323853c459
Author: Julien Grall <julien@xen.org>
Date:   Mon Oct 30 09:23:06 2023 +0000

    Set version to 4.18; return ./autogen.sh
    
    Signed-off-by: Julien Grall <julien@xen.org>

commit 7f48e342988e1cc6c24153e8c2c248741f107f0a
Author: Julien Grall <julien@xen.org>
Date:   Mon Oct 30 09:13:38 2023 +0000

    Revert "Config.mk pin QEMU_UPSTREAM_REVISION (prep for Xen 4.18 RC1)"
    
    The branch is unstable again.
    
    This reverts commit 520d18e0ff7917ef86b6a69c7949f15e6a804f3d.

commit 4294987c7a4b1171b4bb5342f126df0e43a7bd38
Author: Julien Grall <julien@xen.org>
Date:   Mon Oct 30 09:12:49 2023 +0000

    Set version to 4.19; 4.18 has branched
    
    Signed-off-by: Julien Grall <julien@xen.org>
(qemu changes not included)


From xen-devel-bounces@lists.xenproject.org Tue Oct 31 16:02:33 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 16:02:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625927.975715 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxrCC-0008A0-6J; Tue, 31 Oct 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 625927.975715; Tue, 31 Oct 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 1qxrCC-00089t-3U; Tue, 31 Oct 2023 16:02:24 +0000
Received: by outflank-mailman (input) for mailman id 625927;
 Tue, 31 Oct 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=kxST=GN=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qxrCA-00089n-Sl
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 16: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-flk1.inumbo.com (Halon) with ESMTPS
 id dee00a84-7806-11ee-9b0e-b553b5be7939;
 Tue, 31 Oct 2023 17:02:20 +0100 (CET)
Received: from AS4P190CA0048.EURP190.PROD.OUTLOOK.COM (2603:10a6:20b:656::21)
 by GV2PR08MB9208.eurprd08.prod.outlook.com (2603:10a6:150:dc::14)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.27; Tue, 31 Oct
 2023 16:02:12 +0000
Received: from AM3PEPF0000A79C.eurprd04.prod.outlook.com
 (2603:10a6:20b:656:cafe::9f) by AS4P190CA0048.outlook.office365.com
 (2603:10a6:20b:656::21) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.29 via Frontend
 Transport; Tue, 31 Oct 2023 16:02:11 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM3PEPF0000A79C.mail.protection.outlook.com (10.167.16.107) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6954.19 via Frontend Transport; Tue, 31 Oct 2023 16:02:11 +0000
Received: ("Tessian outbound 7c4ecdadb9e7:v228");
 Tue, 31 Oct 2023 16:02:11 +0000
Received: from c72088653c95.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 DA8A7AA7-7141-4002-85F6-233496A65715.1; 
 Tue, 31 Oct 2023 16:02:04 +0000
Received: from EUR01-HE1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id c72088653c95.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Tue, 31 Oct 2023 16:02:04 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by PAXPR08MB6413.eurprd08.prod.outlook.com (2603:10a6:102:de::8) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.22; Tue, 31 Oct
 2023 16:01:57 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::ae6e:f96c:f2f3:efc9]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::ae6e:f96c:f2f3:efc9%4]) with mapi id 15.20.6933.028; Tue, 31 Oct 2023
 16: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>
X-Inumbo-ID: dee00a84-7806-11ee-9b0e-b553b5be7939
ARC-Seal: i=2; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=pass;
 b=TZpGPwpVN/6sftwhEK1SXSowJInuWJ9EPW9fVp59TtYw+tfwcrwrIe2QR+h1v974KY/PfvcImt4+9QzUHOK/4+BVgDCIeLjWKiaSKTr5TtUrpAKpSS3FHczdkWUmfyRlHxUQ1z59AWwyPYFfHknV7VT8ChCuKpM5qJQAfRzCbmqdE5OQjBG/cGUz+4gtNrxcmL5vLGTMrWgC9cusBwQZfjmrvCJvdbKE/3O5DP/C8uVIJ8yJ4piMDzGyZjAQGfoVpJxfVvt/1Ir/My9yYpMPIf28C4Irvv84ZTyS4u/Mg9vTJMEH0oaT0fekiZZX7N8YPT6CcU616K/KgTqAYimzjQ==
ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=e/N8U2k6gmElyQft17Xfa3CcbHOjrXr3IN728jbkEZ0=;
 b=NOzSm8Wl+qNG6iBSwW5c/+MpCHKNZaJzUqTLjaF7VYsIVis0xayxeym3x+FYs3Ve2oNhJxVBe0oD6ubKYTw/0hEkcQznW7Xs+6qM/lq+6taenWRuJ7AwzEMvEGfZOMh8yzkivuc5o7qqW6xAJOiuTrh8hScfRv0Qk78z8ICOqV0e0Bxta7E2cUhx4C+lDkdpfYLvj71hya2BLbmCGcHlrFTN8SCIuyWUrFFo0sgB3p+YKY81ZJg2KeekgsK4KL3QMLaYTMIeObmfLjPUZMcgPTeXD3n3S04Bh/K5+99N9IWrpnI6jVIG5u/1RUpoSTtL0YAOQlxsxybS4UCMtNp6RQ==
ARC-Authentication-Results: i=2; mx.microsoft.com 1; spf=pass (sender ip is
 63.35.35.123) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=arm.com;
 dmarc=pass (p=none sp=none pct=100) action=none header.from=arm.com;
 dkim=pass (signature was verified) header.d=armh.onmicrosoft.com; arc=pass (0
 oda=1 ltdi=1 spf=[1,1,smtp.mailfrom=arm.com] dkim=[1,1,header.d=arm.com]
 dmarc=[1,1,header.from=arm.com])
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=e/N8U2k6gmElyQft17Xfa3CcbHOjrXr3IN728jbkEZ0=;
 b=k2YP292ieJp84jKXDOS5488ciREsT6DKW7AHhCbRM1U9uFcX8lPkJI0WBmGOxL5bCQEenkryH8arJWJgQCcEM7xSB/o61yL0aotc5lycG/urM6UT6my6abKTPg9arBaqW/GtC+RGaxE6BOjIN54ggucVVxgzM/NOR2Ff9/hAgow=
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: f695cc5151706297
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=agNU9u84z0XW0jPVC09RJgYPwAlDuwQYJZtQvcd7DJOxzMxYOvCRLubCHh5ciXG8GCmJMCuUGEmse8JJwQwTeQ30PAHqcnp29M9ykokrXfK90RMM+1w1FWMyBqCbhat0km7NopsxWxcScYrme6lj8UFEraR2b2hFD6cIvrBxGHpwYh2PJEOB5P1Jza0dErEOhLRjOBwoDUDNgCD03z4ObpzXog8l5soNVwOOGZ4ir9vxtKTy5gmZP6rCr4IHSydAIWsGb8HLEw9mMEtjkEdVijQX10ViVC6LS11hYKGJi4FtCBs0AJ8TwVOj2jdR97cP36ZxNLtVipX2fCB2pvotUw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=e/N8U2k6gmElyQft17Xfa3CcbHOjrXr3IN728jbkEZ0=;
 b=QsVBGE7LJo8g/dsr5E1nEO9m45guNbUVFnhft2g/C/YC6BS3zf6Dp20A1gsEijjBxa7fPR1LIWNG6mUVpVMjPRpSJNUWAayZvcxOTQQmKtB25xfIZu8/xIaPbASnP+JsJr1/2vH0L8zlD7AXh5ZvUb91UBWQXEhZViRUaM80t9zdXbHj2dB7PayXBjWgBc26BZoyLnD/2rqLLT7NM4U6XovNTMFLVfwU3ext7YStDAwlMK/HUAnoZhuYfjggwDATssrH3/EdMUOBzuxX8PTffLMwF/valnLL1EnzbL660ustjsj9peZg/ZRoMJVi2yUotM7oMIVYtHEbFhvmRZ7RnA==
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=e/N8U2k6gmElyQft17Xfa3CcbHOjrXr3IN728jbkEZ0=;
 b=k2YP292ieJp84jKXDOS5488ciREsT6DKW7AHhCbRM1U9uFcX8lPkJI0WBmGOxL5bCQEenkryH8arJWJgQCcEM7xSB/o61yL0aotc5lycG/urM6UT6my6abKTPg9arBaqW/GtC+RGaxE6BOjIN54ggucVVxgzM/NOR2Ff9/hAgow=
From: Henry Wang <Henry.Wang@arm.com>
To: "committers@xenproject.org" <committers@xenproject.org>, Xen-devel
	<xen-devel@lists.xenproject.org>
CC: Julien Grall <julien@xen.org>, Stefano Stabellini
	<sstabellini@kernel.org>, Jan Beulich <jbeulich@suse.com>, Andrew Cooper
	<andrew.cooper3@citrix.com>, George Dunlap <george.dunlap@citrix.com>,
	Community Manager <community.manager@xenproject.org>
Subject: Re: Commit moratorium for branching 4.18
Thread-Topic: Commit moratorium for branching 4.18
Thread-Index: AQHaByyrPO+3wCfL+UGXB2cQc11Ty7BkGL6A
Date: Tue, 31 Oct 2023 16:01:57 +0000
Message-ID: <6AA9BF50-8717-437C-9C09-4D81234A8BFB@arm.com>
References: <E63E9C8C-471E-4524-A61B-EB5BA4618288@arm.com>
In-Reply-To: <E63E9C8C-471E-4524-A61B-EB5BA4618288@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_|PAXPR08MB6413:EE_|AM3PEPF0000A79C:EE_|GV2PR08MB9208:EE_
X-MS-Office365-Filtering-Correlation-Id: c22fbe2b-26ef-4e91-80f5-08dbda2abe2b
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:
 ZT7miL3AYjWYTzbRQB+SrUnenaczTAJTWF6HmPAThkh30B09+wwYW6ibd+1VSpMs+3GQnGppROSTpMJZmHwRFTJoujZlgLMuUfGAwQEJKVvF6OPAtPHSuYvfZRhGxeBYD3Vunxcu042kS64pOKCEUzj39XOkq42s9VCAHhCb1cXT5kLEgvwoaCiQeiF9gFg5yZpUCPv0He4ktolJNR4LYjsTIrg4aVSSuOvOYZ2sLLWgibwkvdGiAhojHgePCAuUgTnqLqagU8dz29H3Y45pBtEeezEQaEkc1JJ6SJZ/F5A+mlJ1DKs9abbomcHXeblTsgEWXPbH/E8xIuLElo4XK2E/MU+GJNis64MHb1egGDIlFvWq5ezLCkIV30umGNZ92qLEVwalR1YDUTjdku9LJc4XEtBiyaHQShgac5qXaWQLMgHr5Qz4Dt6ZOXKqWfwOgIRsriCflWrPom0DOIp6tLnblQYPbzFgErZmBBv3b6AXsTSxAndjRMr/9ewszr5ZdqGACe0ddakOJRnlM/pyhCj9FZ9zDmHjFEZL4TM75Tek8/pZwKH02dLXOFOy04zk5igRwMwUJC+8K4v/9m/gWb+QOqyXwBoOURLQYpWqXxeV0xW/FwvjoOPV9gKlyMVO9IrPyOq38qoXlXrAZrwnBw==
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)(186009)(1800799009)(64100799003)(451199024)(71200400001)(83380400001)(91956017)(4744005)(41300700001)(110136005)(86362001)(33656002)(2906002)(26005)(36756003)(5660300002)(2616005)(38100700002)(122000001)(38070700009)(66446008)(6486002)(6512007)(66946007)(54906003)(53546011)(76116006)(66556008)(64756008)(8936002)(66476007)(4326008)(316002)(478600001)(8676002)(6506007)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="us-ascii"
Content-ID: <5311B3A7C984374BAFC2CE74D9FEC479@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR08MB6413
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:
 AM3PEPF0000A79C.eurprd04.prod.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	551b6500-c07a-488a-0ebf-08dbda2ab57d
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	ks4CUsc/fkLdPE8M11ZUSOTmSSg4QnEbVbC3vvVUFHLhOIQH0seZBEBeuK0HyoHcnuV5UXUeTATcGj9dZuNTmV+1Y9V7Bv7KjbYDJJg2dTRiLaJjd5t0fB8ThgTZxzFDszKiUafLqPQhBdq/fFKQnkyrnto4+yZ5RuERwHtVIxT5HUDpKFbZ0T//5+YTRijYnYStG7djKpz8jJq8lcs86pWWA3dL8Wm40FsG0S0qC4S7HdfR+Pqa/6pFqP5vjtspNeUad89n/4EHMa0cwGPBxAcj/dsT4AiEe6A2RiLqn+I2Ybi0+2NC7k5mZNq1EeUEXJWpjARIxUusUzckvQcfO+BmAuOhKDOz+oKcCHYS0lwkKIHx8QKdYOIxY6cfnfzO8CdCT/LiALo84YOpfNHiFRXxnRTAghSgomkVMWv680EV93zHkqWhBbbtXKdm4FVNt6uz6CdmtJsq6FE64+VG7rqfQYo88XkYanncQkVjTEeOLoYihh2WkVoTNPWun8I1RJsUB6428qX92HtG5hlbW4XOCNCvTfRYeL5+K37uN6HpVGOxbhNdC6cMoPm44Jkzfp8LPgnEKr7DMMMK18nnbKTrqfEQZF9d/vX9n9fKtdoVyrC9gpV1dxfc/0OcjzgNPFrMO5dLW1OXUXZtaXd4Nj6p7oGm5rD/Gj4UrO+J8qkk7jfAIXK17tVtvcMZ2MZO1UTNEJd82MolmMm7mONeVknU75s9Or9Zf52JTDz1taUKovhfbTmR6LqKA9fc/xdk
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)(64100799003)(451199024)(1800799009)(82310400011)(186009)(36840700001)(46966006)(40470700004)(6512007)(6506007)(47076005)(40480700001)(478600001)(6486002)(36756003)(336012)(70586007)(82740400003)(70206006)(26005)(316002)(2616005)(356005)(36860700001)(83380400001)(53546011)(54906003)(81166007)(8676002)(4326008)(8936002)(40460700003)(5660300002)(4744005)(33656002)(110136005)(86362001)(2906002)(41300700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 31 Oct 2023 16:02:11.6592
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: c22fbe2b-26ef-4e91-80f5-08dbda2abe2b
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:
	AM3PEPF0000A79C.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV2PR08MB9208

Hi,

> On Oct 25, 2023, at 18:18, Henry Wang <Henry.Wang@arm.com> wrote:
>=20
> Hi committers,
>=20
> We will be branching the tree for Xen 4.18 in the next few days. Please=20
> avoid committing any new patches to staging until further notice.

The branching has been finished. The staging is reopened for 4.19 developme=
nt.

Thanks.

Kind regards,
Henry

>=20
> Kind regards,
> Henry



From xen-devel-bounces@lists.xenproject.org Tue Oct 31 16:09:59 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 16:09:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625932.975724 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxrJR-0001gs-Uy; Tue, 31 Oct 2023 16:09:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625932.975724; Tue, 31 Oct 2023 16: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 1qxrJR-0001gl-SF; Tue, 31 Oct 2023 16:09:53 +0000
Received: by outflank-mailman (input) for mailman id 625932;
 Tue, 31 Oct 2023 16:09: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=Me/8=GN=redhat.com=kwolf@srs-se1.protection.inumbo.net>)
 id 1qxrJQ-0001fV-L8
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 16:09:52 +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 eaf94ee3-7807-11ee-9b0e-b553b5be7939;
 Tue, 31 Oct 2023 17:09:50 +0100 (CET)
Received: from mimecast-mx02.redhat.com (mx-ext.redhat.com [66.187.233.73])
 by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3,
 cipher=TLS_AES_256_GCM_SHA384) id us-mta-63-K2e19MGeOEeTSKsd9E5sqA-1; Tue,
 31 Oct 2023 12:09:46 -0400
Received: from smtp.corp.redhat.com (int-mx09.intmail.prod.int.rdu2.redhat.com
 [10.11.54.9])
 (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 mimecast-mx02.redhat.com (Postfix) with ESMTPS id 32BAC3C1CC3E;
 Tue, 31 Oct 2023 16:09:29 +0000 (UTC)
Received: from redhat.com (unknown [10.39.194.218])
 by smtp.corp.redhat.com (Postfix) with ESMTPS id E0F5E492BE0;
 Tue, 31 Oct 2023 16:09: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: eaf94ee3-7807-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
	s=mimecast20190719; t=1698768589;
	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=NmtecgNkHEkOuim3O1U2WKCrXJxkP4+J705ylKkl8Uc=;
	b=cJHfXEGmkbdElrTEUvhu+ZX7Q7OGFBxourJKQx3PpcPpYBVdyS1ufOMrj1J/jaWqEw/dS/
	PWmh5LtqY22ajqCic/RXjO2z99X79xqpfZfPCJ8U8QujMMgs/R1Dwtre1vZItS5RL3pwlC
	x/DfL/heIeLYk/upr2K6heyY2zYUiL0=
X-MC-Unique: K2e19MGeOEeTSKsd9E5sqA-1
Date: Tue, 31 Oct 2023 17:09:25 +0100
From: Kevin Wolf <kwolf@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>,
	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>,
	"Michael S. Tsirkin" <mst@redhat.com>, 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: <ZUEmtRCe0uIQmVRP@redhat.com>
References: <20230913200045.1024233-1-stefanha@redhat.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <20230913200045.1024233-1-stefanha@redhat.com>
X-Scanned-By: MIMEDefang 3.4.1 on 10.11.54.9

Am 13.09.2023 um 22:00 hat Stefan Hajnoczi geschrieben:
> 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

Thanks, applied to the block branch.

Kevin



From xen-devel-bounces@lists.xenproject.org Tue Oct 31 16:10:17 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 16:10:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625933.975735 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxrJp-0003Ej-7Q; Tue, 31 Oct 2023 16:10:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625933.975735; Tue, 31 Oct 2023 16:10: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 1qxrJp-0003Ea-4e; Tue, 31 Oct 2023 16:10:17 +0000
Received: by outflank-mailman (input) for mailman id 625933;
 Tue, 31 Oct 2023 16:10: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=k1/u=GN=arm.com=Luca.Fancellu@srs-se1.protection.inumbo.net>)
 id 1qxrJn-0001fV-1t
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 16:10:15 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 (mail-am6eur05on20627.outbound.protection.outlook.com
 [2a01:111:f400:7e1b::627])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id f8c9a41c-7807-11ee-9b0e-b553b5be7939;
 Tue, 31 Oct 2023 17:10:13 +0100 (CET)
Received: from AS8PR04CA0019.eurprd04.prod.outlook.com (2603:10a6:20b:310::24)
 by AM9PR08MB6036.eurprd08.prod.outlook.com (2603:10a6:20b:2dc::21)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.22; Tue, 31 Oct
 2023 16:10:08 +0000
Received: from AMS1EPF00000048.eurprd04.prod.outlook.com
 (2603:10a6:20b:310:cafe::46) by AS8PR04CA0019.outlook.office365.com
 (2603:10a6:20b:310::24) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.29 via Frontend
 Transport; Tue, 31 Oct 2023 16:10:08 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AMS1EPF00000048.mail.protection.outlook.com (10.167.16.132) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6954.19 via Frontend Transport; Tue, 31 Oct 2023 16:10:07 +0000
Received: ("Tessian outbound e243565b0037:v228");
 Tue, 31 Oct 2023 16:10:07 +0000
Received: from e096792777a5.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 8F49705D-5B89-4692-818C-A71B23906D41.1; 
 Tue, 31 Oct 2023 16:09:40 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id e096792777a5.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Tue, 31 Oct 2023 16:09:40 +0000
Received: from AM6PR08MB3749.eurprd08.prod.outlook.com (2603:10a6:20b:8f::22)
 by AS8PR08MB5880.eurprd08.prod.outlook.com (2603:10a6:20b:29f::18)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.24; Tue, 31 Oct
 2023 16:09:37 +0000
Received: from AM6PR08MB3749.eurprd08.prod.outlook.com
 ([fe80::76e6:a7e1:1592:866]) by AM6PR08MB3749.eurprd08.prod.outlook.com
 ([fe80::76e6:a7e1:1592:866%3]) with mapi id 15.20.6933.022; Tue, 31 Oct 2023
 16: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>
X-Inumbo-ID: f8c9a41c-7807-11ee-9b0e-b553b5be7939
ARC-Seal: i=2; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=pass;
 b=bm0/nFVfi17AMEq4wZtmbQ2+nUtHXw7yp22K/GqqGMVtyhtpxpZnFZxz5jS+U+8gtjFOtoj7kkKZDcKtxbXA4WG09ja1o0uY9m/6obYZXOepR6lj7FkN2E9HdT6BzqAAgi84BazEh+VLW9mU9TeSoToKt9P2oLa2kKLADtAMs6Z1rLGiQ2ORaMyl0ri6I4WfiHHThGakm4+d9EYcMGHa/pzKBvD1GMC27i5RQnO9ctczWGvx5Rj9qlzRaLWy4rgIuwM7F8BWiYjMVRkr3wsdwX8LDlYguvr3WcqACx71YjUmpqsrN7KoKfhvUMSJ6tX8jtFBeykApg4781H3IAv3Mg==
ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=Ogn2qguDU459bLM2RUMqQ02cp0tj6LgnX3ROnO6ECvk=;
 b=STgFybf7rHsrmFBuOvB4WFxqf12QLZ//l4eIZuX6T5xXp7+OgnVC7aXglhfdQFaw6U2eg/NoFcdejJsMEyw7loDnnnGil3+3oBuVyxJf4XXCCe7k6Ny246J1yywsN33mt79U2vOQ4DfMVXe4SV0c5G9f413B6SlJ3DuK98erqZ87c4lm4BBLkvgeNf5WzNXzMSKXOlYBrpHdSxXjPnFCH4qaql/DqdDMYA4UGW4d0oY5sr99vFCYuCAperjVaulfK2WsAbnNFixLNaAVh29j7+ozKYjlEhjQEf4GVz3InY4S6EbsDqcT4XhVP4KA0vtQCePBD62NO5U081apyV0LdA==
ARC-Authentication-Results: i=2; mx.microsoft.com 1; spf=pass (sender ip is
 63.35.35.123) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=arm.com;
 dmarc=pass (p=none sp=none pct=100) action=none header.from=arm.com;
 dkim=pass (signature was verified) header.d=armh.onmicrosoft.com; arc=pass (0
 oda=1 ltdi=1 spf=[1,1,smtp.mailfrom=arm.com] dkim=[1,1,header.d=arm.com]
 dmarc=[1,1,header.from=arm.com])
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=Ogn2qguDU459bLM2RUMqQ02cp0tj6LgnX3ROnO6ECvk=;
 b=trzcbTFd2CGas+SGRwrYLiCOk9hdN9YKIIzbhVxAgZlU8p0YuXARQzMHf+egBwjENodT7/VC9fHHlrs0TARqbsU4NKJkTe2AaXe990aCzc/T/f41b34w98JysrVuImzL9QIJj4Z4wO/OAMkX5SeuIO/3w3K1Qhj5P51Kdch306Y=
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: 357b0ec83b6dc3e6
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=mjDpQmNnGSWM+ktswEE35jcMYL7uc/WMvVmd8p0ZwqTnKut1eP4/JaprzR93yCMoVuh7yl5Aa+XWSmHmbugpdiW2cdDdRgUE6R57zvyck9fqdKAroDeixnShY4oeK6kDWWENRX6QdNO1JgTlrCFnRmCSoUhlmbODGJX/4V3vWT8dFe4dbxvJZUDsMCFgboZn+PpR3c/MLn6ysRVMzkpuJ0DYUq1/aq7WHn18iZvL0Jfs+h2TocpreJ7WihxFn4rRwNdP4bxy5E8N0ydHd3mJ0vxE1NwAywGD9pN7nVVQfpCNJlyTD1q5emrkCiCxeitrygG506fCynNT3pQsngb8eA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=Ogn2qguDU459bLM2RUMqQ02cp0tj6LgnX3ROnO6ECvk=;
 b=HwKZ+V5STGKuH///A8gurAhwOsVdWnoGdnPG7DphEBiF5RcMKDI6CcSRqzAsKHof0KL7UGEObQ3ZknVOOxDIbLyzavwz3k4jz2ISLTz26GBQz05kZyrBEvCpLNVpcp3x9oFpzCIwnVnYF1/BoJGGo13gu3qdhJt0sOE4ZUXTic4NzUY011P0+oHqyilmN0dvZ0HnsF6iNilab4VHyaYb6lChVFzgcXm7I0K1JbhuM3O5yqomL+/Fm5kThfbAponzGWo+B0pY2+C2lLmsiujCC+7CRKcEpxlZGcN78U7+XY08SjfmWQdyUZ7pTJqUqspEsL+/OTUMQLTvQDsC6okcCw==
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=Ogn2qguDU459bLM2RUMqQ02cp0tj6LgnX3ROnO6ECvk=;
 b=trzcbTFd2CGas+SGRwrYLiCOk9hdN9YKIIzbhVxAgZlU8p0YuXARQzMHf+egBwjENodT7/VC9fHHlrs0TARqbsU4NKJkTe2AaXe990aCzc/T/f41b34w98JysrVuImzL9QIJj4Z4wO/OAMkX5SeuIO/3w3K1Qhj5P51Kdch306Y=
From: Luca Fancellu <Luca.Fancellu@arm.com>
To: Julien Grall <julien@xen.org>
CC: Nicola Vetrini <nicola.vetrini@bugseng.com>, Stefano Stabellini
	<sstabellini@kernel.org>, Xen-devel <xen-devel@lists.xenproject.org>,
	"michal.orzel@amd.com" <michal.orzel@amd.com>, "xenia.ragiadakou@amd.com"
	<xenia.ragiadakou@amd.com>, "ayan.kumar.halder@amd.com"
	<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>, Simone Ballarin
	<simone.ballarin@bugseng.com>, Doug Goldstein <cardoe@cardoe.com>, George
 Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>
Subject: Re: [XEN PATCH][for-4.19 v5] xen: Add deviations for MISRA C:2012
 Rule 7.1
Thread-Topic: [XEN PATCH][for-4.19 v5] xen: Add deviations for MISRA C:2012
 Rule 7.1
Thread-Index:
 AQHaC/4b2xNoaiIkmUiyfHAuabY8yrBj8OgAgAAP5gCAAACVgIAABCCAgAABQICAAAFcgIAACSOA
Date: Tue, 31 Oct 2023 16:09:37 +0000
Message-ID: <59AC50D8-CC8A-41E7-A0AB-A0984B86D111@arm.com>
References:
 <0c86b50a796ba2aaab01e30935ed559ab719d33a.1698418578.git.nicola.vetrini@bugseng.com>
 <98da41d4-f818-44c7-bd3c-b3e3b224ff0d@xen.org>
 <alpine.DEB.2.22.394.2310301544460.1625118@ubuntu-linux-20-04-desktop>
 <ee3c415d-bedd-432e-bf31-6e806b9cf976@xen.org>
 <DFC25ACE-FFBE-43CF-9CE2-90671D122CEC@arm.com>
 <2201cad3353f5deb567f929e91e90fd2@bugseng.com>
 <E0FA2717-D06B-4C51-9E9A-DBD72CE35963@arm.com>
 <e958d555-3075-467b-b3cf-1e5c6ad78405@xen.org>
 <F121A82D-3D86-4923-9E6E-C520F57E8DAA@arm.com>
 <2d6c4859-5cca-4cf2-b7f5-1068f0130c99@xen.org>
In-Reply-To: <2d6c4859-5cca-4cf2-b7f5-1068f0130c99@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_|AS8PR08MB5880:EE_|AMS1EPF00000048:EE_|AM9PR08MB6036:EE_
X-MS-Office365-Filtering-Correlation-Id: bc618edc-5b03-4e5c-a2ba-08dbda2bd9be
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:
 QKggg4M4KkIXoHgK5ER/1MDvlqGffgVDlsapsaAcHRPSb7Fi/Irj1XyLuMmxUNtbTtbcXOlpP0fegNVwxhI1o+LXd8kUFx0/53Jngk1zMvuwK+Rru6Zj1yoJlLJu5FrkNoSmwNQriFgaUhQmc0Konaek2OIji2441habXmaLIMmZhyL3W/fto+J0YayAaYqYXqi5xfaFzT2hw+0A2uazZdqO0nJ8VYCSF4v8qwzPq13iHjeuiYvZ0iT+PIVtDxul6GkTPq2ahf/XAwp5n2gB3uC69rIafEw6qACtEPVIZuRScs02oAndaZyHjqkPfgvLOoyRqhP7okP/pQ+DvQ2/v1j+DJo+sA4M4gYNlaBxJysi6qWogOFUCFLvQJiQ6wX+2NPcszBHehMbWMtRyJidJpcPlTf/rvE1mrsyEi9aUEnBevkbREn/gaQnw+dfFiDmRHLrqd7ApvYLsXG1ZQk6s7jDhQOKlGVNpSlDkedP5+EDiqvn9uBWsmSbvAQ6ZhMwnSwGyDX8pDSiPiUFQuJ+wJa2cbmpbUpKEu5u24m7oicBP0JInSrv3eSD4CQIeTEUtfC2tPzFDJ3GOrpkSIUtwuVLKsvk12rkvES1FH5sb4Qjb1Ywjz53rQpq1eRI6Yv4xqP9g//UqTvr4Jvdvy5PXw==
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)(39860400002)(136003)(376002)(396003)(366004)(230922051799003)(64100799003)(186009)(451199024)(1800799009)(122000001)(86362001)(8676002)(4326008)(8936002)(66556008)(66476007)(91956017)(5660300002)(76116006)(7416002)(66446008)(64756008)(54906003)(66946007)(6916009)(33656002)(316002)(38100700002)(36756003)(6486002)(2906002)(71200400001)(41300700001)(4001150100001)(478600001)(6506007)(6512007)(53546011)(2616005)(26005)(83380400001)(38070700009)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <A100809BA87BE14D94C27FE81705DD14@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB5880
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:
 AMS1EPF00000048.eurprd04.prod.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	cf16855e-70a3-4370-0cea-08dbda2bc7d0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	nHFcHLmHwNlx5c7ykI1ErcG3L6rSUI8cT2oINLLdr+xDjTh4fV+lUdLrYwNy46Yo1ljTjAMWilj1bGvvCtzY577WmWwO7DQIqAwsFRXAZK+H5iBkWxh7OxgLjSiApdO9EJYGuybpBpA98F8N1EhVzL1fTb3EY78dNIBw8jlBzOJEV+Rp39gN7fORaqlRN7WL2F+ZtpIEeZeiKX6B64yVdEyclOrVfWghhpO1rePw4BU0/HgjT5USbpCTlrBrwJ5AxLknIuszXKEvnfVFM+DbonIumT0Grbww5D9mSXkDy1ZcvyPnc+qpup6k5tFQpqeRxtMXXIedfOHijlmLqJzCuALCXopOaAG0AxVBT+TIDLpCJGXI+acSAgh8PchFuTfBS6D7U6+XOfR/8i3QOv0UaWSZagqUGGg4Zc+1OUu9+Ld/MakxklnX1ldyKJd8W1cOI/cXuQVJvzGhbHfmkESboGP0ACqmhMISmnEiZ5s6B+Wyri8eaPKEHUOGjYFedr4RpH9hjmHIXFmdd/xgp2RZcQmISIEyFq+gS4ZQNTpNQqwVLNOQogy1HUogG/0V1Zh/ZcPpy+7KviFc+Cnm7aQUD0+NPCs6wI9I4Bk2bb5d/5hqnRldRLSiZ7vCOs+RAwcviW7VTNEXy0wzBhjGtaUehdNgEEVONLBXrhTYV3qUzy5wHYWnCKwtQ7+umbUdQT8+BTKtpXVZj+zXmSS+oTrOzdNpRZXG3jumCZEVXmA4CXs=
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)(230922051799003)(64100799003)(1800799009)(451199024)(82310400011)(186009)(46966006)(40470700004)(36840700001)(54906003)(70206006)(316002)(41300700001)(8676002)(8936002)(6862004)(4326008)(478600001)(4001150100001)(70586007)(2906002)(5660300002)(6486002)(6506007)(40460700003)(53546011)(26005)(47076005)(83380400001)(36860700001)(36756003)(6512007)(2616005)(336012)(40480700001)(82740400003)(86362001)(356005)(33656002)(81166007);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 31 Oct 2023 16:10:07.4030
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: bc618edc-5b03-4e5c-a2ba-08dbda2bd9be
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:
	AMS1EPF00000048.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR08MB6036

DQoNCj4gT24gMzEgT2N0IDIwMjMsIGF0IDE1OjM2LCBKdWxpZW4gR3JhbGwgPGp1bGllbkB4ZW4u
b3JnPiB3cm90ZToNCj4gDQo+IA0KPiANCj4gT24gMzEvMTAvMjAyMyAxNTozMiwgTHVjYSBGYW5j
ZWxsdSB3cm90ZToNCj4+PiBPbiAzMSBPY3QgMjAyMywgYXQgMTU6MjcsIEp1bGllbiBHcmFsbCA8
anVsaWVuQHhlbi5vcmc+IHdyb3RlOg0KPj4+IA0KPj4+IEhpLA0KPj4+IA0KPj4+IE9uIDMxLzEw
LzIwMjMgMTU6MTIsIEx1Y2EgRmFuY2VsbHUgd3JvdGU6DQo+Pj4+PiBPbiAzMSBPY3QgMjAyMywg
YXQgMTU6MTAsIE5pY29sYSBWZXRyaW5pIDxuaWNvbGEudmV0cmluaUBidWdzZW5nLmNvbT4gd3Jv
dGU6DQo+Pj4+PiANCj4+Pj4+IE9uIDIwMjMtMTAtMzEgMTU6MTMsIEx1Y2EgRmFuY2VsbHUgd3Jv
dGU6DQo+Pj4+Pj4+IE9uIDMxIE9jdCAyMDIzLCBhdCAxMzoyNywgSnVsaWVuIEdyYWxsIDxqdWxp
ZW5AeGVuLm9yZz4gd3JvdGU6DQo+Pj4+Pj4+IEhpIFN0ZWZhbm8sDQo+Pj4+Pj4+IE9uIDMwLzEw
LzIwMjMgMjI6NDksIFN0ZWZhbm8gU3RhYmVsbGluaSB3cm90ZToNCj4+Pj4+Pj4+IE9uIE1vbiwg
MzAgT2N0IDIwMjMsIEp1bGllbiBHcmFsbCB3cm90ZToNCj4+Pj4+Pj4+PiBIaSBOaWNvbGEsDQo+
Pj4+Pj4+Pj4gT24gMjcvMTAvMjAyMyAxNjoxMSwgTmljb2xhIFZldHJpbmkgd3JvdGU6DQo+Pj4+
Pj4+Pj4+IGRpZmYgLS1naXQgYS9kb2NzL21pc3JhL2RldmlhdGlvbnMucnN0IGIvZG9jcy9taXNy
YS9kZXZpYXRpb25zLnJzdA0KPj4+Pj4+Pj4+PiBpbmRleCA4NTExYTE4OTI1M2IuLjhhYWFhMTQ3
M2ZiNCAxMDA2NDQNCj4+Pj4+Pj4+Pj4gLS0tIGEvZG9jcy9taXNyYS9kZXZpYXRpb25zLnJzdA0K
Pj4+Pj4+Pj4+PiArKysgYi9kb2NzL21pc3JhL2RldmlhdGlvbnMucnN0DQo+Pj4+Pj4+Pj4+IEBA
IC05MCw2ICs5MCwxMyBAQCBEZXZpYXRpb25zIHJlbGF0ZWQgdG8gTUlTUkEgQzoyMDEyIFJ1bGVz
Og0KPj4+Pj4+Pj4+PiAgICAgICAgICAgLSBfX2VtdWxhdGVfMm9wIGFuZCBfX2VtdWxhdGVfMm9w
X25vYnl0ZQ0KPj4+Pj4+Pj4+PiAgICAgICAgICAgLSByZWFkX2RlYnVncmVnIGFuZCB3cml0ZV9k
ZWJ1Z3JlZw0KPj4+Pj4+Pj4+PiAgKyAgICogLSBSNy4xDQo+Pj4+Pj4+Pj4+ICsgICAgIC0gSXQg
aXMgc2FmZSB0byB1c2UgY2VydGFpbiBvY3RhbCBjb25zdGFudHMgdGhlIHdheSB0aGV5IGFyZSBk
ZWZpbmVkDQo+Pj4+Pj4+Pj4+ICsgICAgICAgaW4gc3BlY2lmaWNhdGlvbnMsIG1hbnVhbHMsIGFu
ZCBhbGdvcml0aG0gZGVzY3JpcHRpb25zLiBTdWNoIHBsYWNlcw0KPj4+Pj4+Pj4+PiArICAgICAg
IGFyZSBtYXJrZWQgc2FmZSB3aXRoIGEgL1wqIG9jdGFsLW9rIFwqLyBpbi1jb2RlIGNvbW1lbnQs
IG9yIHdpdGggYQ0KPj4+Pj4+Pj4+PiBTQUYNCj4+Pj4+Pj4+Pj4gKyAgICAgICBjb21tZW50IChz
ZWUgc2FmZS5qc29uKS4NCj4+Pj4+Pj4+PiBSZWFkaW5nIHRoaXMsIGl0IGlzIHVuY2xlYXIgdG8g
bWUgd2h5IHdlIGhhdmUgdHdvIHdheXMgdG8gZGV2aWF0ZSB0aGUgcnVsZQ0KPj4+Pj4+Pj4+IHI3
LjEuIEFuZCBtb3JlIGltcG9ydGFudGVseSwgaG93IHdvdWxkIHRoZSBkZXZlbG9wcGVyIGRlY2lk
ZSB3aGljaCBvbmUgdG8gdXNlPw0KPj4+Pj4+Pj4gSSBhZ3JlZSB3aXRoIHlvdSBvbiB0aGlzIGFu
ZCB3ZSB3ZXJlIGRpc2N1c3NpbmcgdGhpcyB0b3BpYyBqdXN0IHRoaXMNCj4+Pj4+Pj4+IG1vcm5p
bmcgaW4gdGhlIEZVU0EgY29tbXVuaXR5IGNhbGwuIEkgdGhpbmsgd2UgbmVlZCBhIHdheSB0byBk
byB0aGlzDQo+Pj4+Pj4+PiB3aXRoIHRoZSBTQUYgZnJhbWV3b3JrOg0KPj4+Pj4+Pj4gaWYgKHNv
bWUgY29kZSB3aXRoIHZpb2xhdGlvbikgLyogU0FGLXh4LXNhZmUgKi8NCj4+Pj4+Pj4+IFRoaXMg
ZG9lc24ndCB3b3JrIHRvZGF5IHVuZm9ydHVuYXRlbHkuIEl0IGNhbiBvbmx5IGJlIGRvbmUgdGhp
cyB3YXk6DQo+Pj4+Pj4+PiAvKiBTQUYteHgtc2FmZSAqLw0KPj4+Pj4+Pj4gaWYgKHNvbWUgY29k
ZSB3aXRoIHZpb2xhdGlvbikNCj4+Pj4+Pj4+IFdoaWNoIGlzIG5vdCBhbHdheXMgZGVzaXJhYmxl
LiBvY3RhbC1vayBpcyBqdXN0IGFuIGFkLWhvYyBzb2x1dGlvbiBmb3INCj4+Pj4+Pj4+IG9uZSBz
cGVjaWZpYyB2aW9sYXRpb24gYnV0IHdlIG5lZWQgYSBnZW5lcmljIHdheSB0byBkbyB0aGlzLiBM
dWNhIGlzDQo+Pj4+Pj4+PiBpbnZlc3RpZ2F0aW5nIHBvc3NpYmxlIHdheXMgdG8gc3VwcG9ydCB0
aGUgcHJldmlvdXMgZm9ybWF0IGluIFNBRi4NCj4+Pj4+Pj4gV2h5IGNhbid0IHdlIHVzZSBvY3Rh
bC1vayBldmVyeXdoZXJlIGZvciBub3c/IE15IHBvaW50IGhlcmUgaXMgdG8gbWFrZSBzaW1wbGUg
Zm9yIHRoZSBkZXZlbG9wcGVyIHRvIGtub3cgd2hhdCB0byB1c2UuDQo+Pj4+Pj4+PiBJIHRoaW5r
IHdlIHNob3VsZCB0YWtlIHRoaXMgcGF0Y2ggZm9yIG5vdyBhbmQgaGFybW9uaXplIGl0IG9uY2Ug
U0FGIGlzDQo+Pj4+Pj4+PiBpbXByb3ZlZC4NCj4+Pj4+Pj4gVGhlIGRlc2NyaXB0aW9uIG9mIHRo
ZSBkZXZpYXRpb24gbmVlZHMgc29tZSBpbXByb3ZlbWVudC4gVG8gZ2l2ZSBhbiBleGFtcGxlLCB3
aXRoIHRoZSBjdXJyZW50IHdvcmRpbmcsIG9uZSBjb3VsZCB0aGV5IGNhbiB1c2Ugb2N0YWwtb2sg
ZXZlcnl3aGVyZS4gQnV0IGFib3ZlLCB5b3UgYXJlIGltcGx5aW5nIHRoYXQgU0FGLXh4LXNhZmUg
c2hvdWxkIGJlDQo+Pj4+Pj4+IHByZWZlcnJlZC4NCj4+Pj4+Pj4gSSB3b3VsZCBzdGlsbCBzdHJv
bmdseSBwcmVmZXIgaWYgd2UgdXNlIG9jdGFsLW9rIGV2ZXJ5d2hlcmUgYmVjYXVzZSB0aGlzIGlz
IHNpbXBsZSB0byByZW1lbWJlci4gQnV0IGlmIHRoZSBvdGhlciBhcmUgaGFwcHkgdG8gaGF2ZSBi
b3RoIFNBRi1YWCBhbmQgb2N0YWwtb2ssIHRoZW4gdGhlIGRlc2NyaXB0aW9uIG5lZWRzIHRvIGJl
IGNvbXBsZXRlbHkgdW5hbWJpZ3VvdXMgYW5kIHRoZSBwYXRjaCBzaG91bGQgY29udGFpbiBzb21l
IGV4cGxhbmF0aW9uIHdoeSB3ZSBoYXZlIHR3byBkaWZmZXJlbnQgd2F5cyB0byBkZXZpYXRlLg0K
Pj4+Pj4+IFdvdWxkIGl0IGJlIG9rIHRvIGhhdmUgYm90aCwgZm9yIGV4YW1wbGU6IC8qIFNBRi1Y
WC1zYWZlIG9jdGFsLW9rICovDQo+Pj4+Pj4gU28gdGhhdCB0aGUgc3VwcHJlc3Npb24gZW5naW5l
IGRvIHdoYXQgaXQgc2hvdWxkIChjdXJyZW50bHkgaXQgZG9lc27igJl0IHN1cHByZXNzIHRoZSBz
YW1lIGxpbmUsIGJ1dCB3ZSBjb3VsZCBkbyBzb21ldGhpbmcgYWJvdXQgaXQpIGFuZCB0aGUgZGV2
ZWxvcGVyDQo+Pj4+Pj4gaGFzIGEgd2F5IHRvIHVuZGVyc3RhbmQgd2hhdCBpcyB0aGUgdmlvbGF0
aW9uIGhlcmUgd2l0aG91dCBnb2luZyB0byB0aGUganVzdGlmaWNhdGlvbiBkYXRhYmFzZS4NCj4+
Pj4+IA0KPj4+Pj4gSSBndWVzcy4gSXQgY291bGQgb3ZlcmZsb3cgdGhlIDgwLWNoYXIgbGltaXQg
aW4geGVuL2FyY2gveDg2L2h2bS9zdm0vc3ZtLmgsIHRob3VnaC4NCj4+Pj4gWWVhaCwgYnV0IHdl
IGNvdWxkIHJ1bGUgb3V0IHNvbWV0aGluZyBpbiBjb2RlX3N0eWxlIHRvIGFsbG93IG9ubHkgdGhp
cyBraW5kIG9mIHRyYWlsaW5nIGNvbW1lbnRzIHRvIGV4Y2VlZCB0aGUgODAgY2hhcnMNCj4+PiAN
Cj4+PiBJbiB0aGUgcGFzdCBJIGV4cHJlc3NlZCBjb25jZXJuZWQgd2l0aCB0aGlzIGtpbmQgb2Yg
dGhlIHJ1bGUgYmVjYXVzZSBpdCBpcyBub3QgZW50aXJlbHkgY2xlYXIgaG93IGFuIGF1dG9tYXRp
YyBmb3JtYXR0ZXIgd2lsbCBiZSBhYmxlIHRvIGNoZWNrIGl0Lg0KPj4+IA0KPj4+IENhbiB5b3Ug
Y2xhcmlmeSB3aGV0aGVyIGNsYW5nLWZvcm1hdCB3b3VsZCBiZSBhYmxlIHRvIGhhbmRsZSB5b3Vy
IHByb3Bvc2VkIHJ1bGU/DQo+PiBTbywgeWVzdGVyZGF5IEJlcnRyYW5kIHBvaW50ZWQgb3V0IGEg
U3RhY2tPdmVyZmxvdyB0aHJlYWQgZm9yIHRoaXMgaXNzdWUgYW5kIGlmIHdlIHVzZSBSZWZsb3dD
b21tZW50czogZmFsc2Ugd2Ugc2hvdWxkDQo+PiBiZSBhYmxlIHRvIGxldCB0aGUgbGluZSBhcyBp
dCBpcyAobm90IHRlc3RlZCkuDQo+IA0KPiBXb3VsZG4ndCB0aGF0IHByZXZlbnQgcmVmbG93IGZv
ciBhbGwgdGhlIGNvbW1lbnRzPyBJZiBzbywgSSBkb24ndCB0aGluayB0aGlzIGlzIHdlIHdhbnQu
IEluc3RlYWQsIHdlIHdhbnQgdG8gYWxsb3cgcmVmbG93IGZvciBhbnkgY29tbWVudHMgYnV0IHRo
ZSBvbmUgZG9uZSBhdCB0aGUgZW5kIG9mIHRoZSBsaW5lLg0KDQpPayB3ZWxsLCBJIHdhcyBvcHRp
bWlzdGljLCBpbiByZWFsaXR5IHdpdGggdGhlIG9wdGlvbiBhcyBmYWxzZSwgaXQgd291bGQgYW55
d2F5IHJlZmxvdyB0aGUgbGluZSBsZWF2aW5nIHRoZSBjb21tZW50IHVudG91Y2hlZC4NCg0KRS5n
LiBmcm9tIHRoaXM6DQoNCiAgICAgICAgaWYgKCBtb2RybV9tb2QgPT0gTUFTS19FWFRSKGluc3Ry
X21vZHJtLCAwMzAwKSAmJiAvKiBTQUYtMi1zYWZlIG9jdGFsLW9rICovDQogICAgICAgICAgICAg
KG1vZHJtX3JlZyAmIDcpID09IE1BU0tfRVhUUihpbnN0cl9tb2RybSwgMDA3MCkgJiYgLyogU0FG
LTItc2FmZSBvY3RhbC1vayAqLw0KICAgICAgICAgICAgIChtb2RybV9ybSAmIDcpID09IE1BU0tf
RVhUUihpbnN0cl9tb2RybSwgMDAwNykgKSAvKiBTQUYtMi1zYWZlIG9jdGFsLW9rICovDQogICAg
ICAgICAgICByZXR1cm4gZW11bF9sZW47DQoNClRvIHRoaXM6DQoNCiAgICAgICAgaWYgKCBtb2Ry
bV9tb2QgPT0NCiAgICAgICAgICAgICAgICAgTUFTS19FWFRSKGluc3RyX21vZHJtLCAwMzAwKSAm
JiAvKiBTQUYtMi1zYWZlIG9jdGFsLW9rICovDQogICAgICAgICAgICAgKG1vZHJtX3JlZyAmIDcp
ID09DQogICAgICAgICAgICAgICAgIE1BU0tfRVhUUihpbnN0cl9tb2RybSwgMDA3MCkgJiYgLyog
U0FGLTItc2FmZSBvY3RhbC1vayAqLw0KICAgICAgICAgICAgIChtb2RybV9ybSAmIDcpID09DQog
ICAgICAgICAgICAgICAgIE1BU0tfRVhUUihpbnN0cl9tb2RybSwgMDAwNykgKSAvKiBTQUYtMi1z
YWZlIG9jdGFsLW9rICovDQogICAgICAgICAgICByZXR1cm4gZW11bF9sZW47DQoNCi4uLiBzaWdo
Li4uDQoNCg0KDQoNCg==


From xen-devel-bounces@lists.xenproject.org Tue Oct 31 16:11:58 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 16:11:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625940.975745 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxrLI-0004ds-Oc; Tue, 31 Oct 2023 16:11:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625940.975745; Tue, 31 Oct 2023 16: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 1qxrLI-0004dl-LT; Tue, 31 Oct 2023 16:11:48 +0000
Received: by outflank-mailman (input) for mailman id 625940;
 Tue, 31 Oct 2023 16:11: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=kxST=GN=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qxrLH-0004b1-8M
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 16:11:47 +0000
Received: from EUR01-DB5-obe.outbound.protection.outlook.com
 (mail-db5eur01on0613.outbound.protection.outlook.com
 [2a01:111:f400:fe02::613])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 2f6f1a12-7808-11ee-98d6-6d05b1d4d9a1;
 Tue, 31 Oct 2023 17:11:45 +0100 (CET)
Received: from DUZPR01CA0119.eurprd01.prod.exchangelabs.com
 (2603:10a6:10:4bc::19) by PAWPR08MB9446.eurprd08.prod.outlook.com
 (2603:10a6:102:2f3::7) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.28; Tue, 31 Oct
 2023 16:11:39 +0000
Received: from DB5PEPF00014B8B.eurprd02.prod.outlook.com
 (2603:10a6:10:4bc:cafe::4e) by DUZPR01CA0119.outlook.office365.com
 (2603:10a6:10:4bc::19) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.29 via Frontend
 Transport; Tue, 31 Oct 2023 16:11:38 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DB5PEPF00014B8B.mail.protection.outlook.com (10.167.8.199) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6954.19 via Frontend Transport; Tue, 31 Oct 2023 16:11:38 +0000
Received: ("Tessian outbound 385ad2f98d71:v228");
 Tue, 31 Oct 2023 16:11:38 +0000
Received: from 0ff7d8298ad0.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 46F043F1-5E66-4D45-B4AD-384D5CDD96CF.1; 
 Tue, 31 Oct 2023 16:11:31 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 0ff7d8298ad0.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Tue, 31 Oct 2023 16:11:31 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by GVXPR08MB7701.eurprd08.prod.outlook.com (2603:10a6:150:6d::20)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.27; Tue, 31 Oct
 2023 16:11:29 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::ae6e:f96c:f2f3:efc9]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::ae6e:f96c:f2f3:efc9%4]) with mapi id 15.20.6933.028; Tue, 31 Oct 2023
 16:11: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: 2f6f1a12-7808-11ee-98d6-6d05b1d4d9a1
ARC-Seal: i=2; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=pass;
 b=biJ6jFuN1WZsBLp/Fa3LyDQdFQCsvuhRE6nMtYwovWJxGyakhtWm6IJpA7yAjMCcc57X7ZjdnxVdQpOqxvfNum02k6XVBZ0j4/1bOUkQ9jiy1l6rmetW6RZE8IYH/4E91qLly0YZaNw1UFf6vBtEZIagzQNgo51NP9LQFBMBn8LOU396OcVVzhOu0sZTFaH7q+isXHyeSZkZiMvJqU9B8pb8Btx2zySS4L1AryFEyBWp47zFce1bO6SQS1zmigZam4S8SPek5r23baZmPAyswvjUVFOmjZTd9xJOnsRES8Aqv0ScZOE6/Ob+s4zVh6scKrxkljsZRCInMmeAjlx43g==
ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=5RKu8CaC3+J5cz+iL3NmIuAwtK2XGoiqvGD9RgVVaCI=;
 b=bxgPquHdu7cIupj0mHbLDJfCq7LStgqIZB1eSKlcHgp++eW5p81ED3de8REKN7sRwql6OUxIXPdN8AydgnmuoQulshFYiRpIEeQb5XmeZWveUtXRgv7UApDp/h91CvfJ6jOCYScYpHR8cz+jiH/QNc7/s/mfMhIhvrgvAxThWlG9EjKeYJLYnWIt1KrHxuK0uRKkbpSv3Fi4HWTtZouJfA/GAAdzWg3lSU8/H1s/ltz5KzUP0zH11fMSQTEFPX+ejxrsiIAns3EuW/hWjsyFId65kNWyzfE/yY6HrAGqlxLo/3jTV1onQdog57sAnLQot1YHAPxHH3EsMYiRZiP9dA==
ARC-Authentication-Results: i=2; mx.microsoft.com 1; spf=pass (sender ip is
 63.35.35.123) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=arm.com;
 dmarc=pass (p=none sp=none pct=100) action=none header.from=arm.com;
 dkim=pass (signature was verified) header.d=armh.onmicrosoft.com; arc=pass (0
 oda=1 ltdi=1 spf=[1,1,smtp.mailfrom=arm.com] dkim=[1,1,header.d=arm.com]
 dmarc=[1,1,header.from=arm.com])
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=5RKu8CaC3+J5cz+iL3NmIuAwtK2XGoiqvGD9RgVVaCI=;
 b=KPdjBacB7oIorctVS6xS/Qgxe6J3nyPR4DPfDrHsZt5GRsr9hJHhq0C6FGSpiwulUIgEOLNjwHkdoRUNUcUPSOw73/snGSa1DHbGVB0xRxufmKh2wI9Frqk4tjrJvdbNNs7PvtGp77AksNuqJbdPQmaZmyX0RkOkxER8Pk+ARuM=
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: a59492a80f5ce046
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=fJXpXnxyKnUpGHM6VX5SuJGG7jod3LfW19mGLQtW/zlXwoLb1eIjkni8mYx7DQRS3bQ0qfYMoWfZgoI0vYdGA5D/U6MJ4JlyioCkmZa9yxlE/o+UxUieE6wlLCPAmDxFiBFdd2MyqGC0c4qBc88v1nUaG66KbGyUsBXaUvn0GRc29OoaXvNeuJ/X/VTSPs9YIUKfpkoh4lNVHzggM7/BaI9HXGzrgWkDClTY7ZF/40G+VSTjoyp5TZTGZMnxfHTHoeko6Bp2v/u9wdXT3tN++5O8aMMPEyEIZVI2+ijNCdSRFwtNDFWT6lap9777n4T7eeb0wN/53Epy+/8ITxGJug==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=5RKu8CaC3+J5cz+iL3NmIuAwtK2XGoiqvGD9RgVVaCI=;
 b=D8axuXfpZXCF+INRpjBdaLXKluDU+ksC5EOONvPrR52+Y4bCUxWSNazYw/WPldD38sg6ITQobXY+/zqPPPKKe9FjWb+aToipKAdx71FKYEv1wDMxDbdKUNjxkXpbIKGnr1Yeu8DttpV9GN+57TYKt+Jy0LMsi5KnRqVZVLGR6VjUIgCIayU3S6y4BIxSA5x2GTqCiCUIOCbEwgIKGxuMql/+wd1sdhDuxdP16D9sZLhsSZ6Mf82W8zF48toebPWqaUELgkWPSbIOvcMRMBGRsyn9B1fTJ/kBLPQSvJtQTkJB3F6GC+UtkCzzqqY9M0ZdWGUYN8JAwdv71MZQZqAeVA==
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=5RKu8CaC3+J5cz+iL3NmIuAwtK2XGoiqvGD9RgVVaCI=;
 b=KPdjBacB7oIorctVS6xS/Qgxe6J3nyPR4DPfDrHsZt5GRsr9hJHhq0C6FGSpiwulUIgEOLNjwHkdoRUNUcUPSOw73/snGSa1DHbGVB0xRxufmKh2wI9Frqk4tjrJvdbNNs7PvtGp77AksNuqJbdPQmaZmyX0RkOkxER8Pk+ARuM=
From: Henry Wang <Henry.Wang@arm.com>
To: "committers@xenproject.org" <committers@xenproject.org>, Xen-devel
	<xen-devel@lists.xenproject.org>
CC: Julien Grall <julien@xen.org>, Stefano Stabellini
	<sstabellini@kernel.org>, Jan Beulich <jbeulich@suse.com>, Andrew Cooper
	<andrew.cooper3@citrix.com>, George Dunlap <george.dunlap@citrix.com>,
	Community Manager <community.manager@xenproject.org>
Subject: Re: Commit moratorium for branching 4.18
Thread-Topic: Commit moratorium for branching 4.18
Thread-Index: AQHaByyrPO+3wCfL+UGXB2cQc11Ty7BkGL6AgAACqAA=
Date: Tue, 31 Oct 2023 16:11:29 +0000
Message-ID: <79A0F39C-562F-45E0-A693-1167FDE4C2A6@arm.com>
References: <E63E9C8C-471E-4524-A61B-EB5BA4618288@arm.com>
 <6AA9BF50-8717-437C-9C09-4D81234A8BFB@arm.com>
In-Reply-To: <6AA9BF50-8717-437C-9C09-4D81234A8BFB@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_|GVXPR08MB7701:EE_|DB5PEPF00014B8B:EE_|PAWPR08MB9446:EE_
X-MS-Office365-Filtering-Correlation-Id: beb1f9a6-120f-48fc-3da4-08dbda2c1024
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:
 Ec096K+v3XfyD9nHc0u3pahwoPL0R1ZuE7goL7yJOll7NpCqCJqhLaj6Vb4Y+lGcnwj87f6QnTUGqFGo59vB2kWLma+N1BBKp3CAI9ODifYBXC4Sd/6VMLa1f50KhlNBiKBPthjkPdKLz2u5WfE0w+4cSq4olUV1hGa+dtmmSLxVgvQZVBksGfYDxd5EdMGs+lD2OwtI+8WlWdX4ptXw/NHVJgDoZgwY2K+YGXlQu8+YxepZrAm3v+MH3BcI8qvv8bHSu6rTuZgFKnccru23k35zeQQEuNOAJJleVABv79i643E4S4lA+3zFdtfS0zyG4uklvjzgdssCZFY2vreWEHbHrbWyQetalWouy+n5Q1fcskkaU6tzxKQvaOAuSBsB1pUQv3ZKNo5NE9TDMri1YfR5CbZqNhNgq8mDQnZ5e8nfMbNYJXDE9VPJNVqYKTFKb8o22O+fO8qGsrDTVCW9noLe97efcPX5kzfrPVGPlWovjDyV7gT71d4UcAniEBk0qxb6PE2wGUD9mtAvanmFfxjMnP4wrjoHQFoUgpRGFN5PWiyNVC+bL9971aMaQ9ljo3cqEKND7/BmQT2CW+5sxQLatisjeMisuxoRnPD8NTHzmPgRLdge3Bkr7NUyjRcN2jued7HkElwmFHHAGYRTNw==
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)(346002)(366004)(396003)(136003)(230922051799003)(64100799003)(186009)(1800799009)(451199024)(2906002)(66476007)(4744005)(6486002)(66556008)(91956017)(110136005)(66946007)(76116006)(5660300002)(478600001)(66446008)(64756008)(54906003)(41300700001)(316002)(71200400001)(53546011)(6512007)(6506007)(2616005)(26005)(8936002)(8676002)(83380400001)(38070700009)(4326008)(122000001)(36756003)(38100700002)(33656002)(86362001)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <40C8BF85BD750B49A5EFD281AF06A48D@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: GVXPR08MB7701
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:
 DB5PEPF00014B8B.eurprd02.prod.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	21f3dfa3-a92c-48e4-1315-08dbda2c0ac4
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	vG5nO+AAeKFRv2G/96hxVkh8mWFhIk2ZUB9Of31BWe3iAU+wmheiAvkqOkso+Zxh/sETlvG9g3gZmLb2QaJuPvS6xzqOx4H/e3eH3Peew0dRJXAeEMqEe9qcpD5EJiC8Re5wPF3YV6q+1oeAJHx1NjbRRkFbt0jsZRX4chVy0tWB4KfsSBEUHBFR6tgR+cRFzbfflCKo2cLZGgAY+4MQAkZmfwn9mRlMnuRDTyidR98VhiBQlpK3iRhyUXKQufTbNLdYXN3hEINh2GHvNcsoVhyJNahhNQatq+mQrm6T6JCvWDUTYBZQ+e2kHJjm24G+1r/9y07rtUtupZMe/JINEYfiAX5N0hRizPPw0rNSe/4A5Mk1tPl6rl65Mdxhz723SZzhQSGmJyx+KlDgV7ycMTmRimvAIn/wqvfaJkpr0Noxc1GUkM/VIC/x+0aWjELBcYfM0ZO0xR3juZRXrMcbN7Ryr6UKMKAS2ZMOWNdPf6jCV9TBzKWqGREun3BULMH3nrUvpsXG4NANRLFWmxri7gmu7eVIjlODL+D7tXGPDDRxhDfoDTANLPLy39A1yNCvf3wLfPhogJtk18q2SrCOdf7VWViuvIGQzqnv40rCxAIUjlKYjCJHu48M6cAeI1cvcc2V63dMOfOgGSx+in/+HNmDfPLH4KLUgkeZ+v9YEcZhSxeZfMXHjcTxRSPwvGjZMCkJSWiSBXP7itb6/4n96PW5zFIq1P/Zyr2uVyYDeXj47Xjzli2zRVw+q/+WVEUc
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)(346002)(396003)(230922051799003)(451199024)(64100799003)(82310400011)(186009)(1800799009)(46966006)(40470700004)(36840700001)(40460700003)(6512007)(26005)(53546011)(6506007)(336012)(47076005)(478600001)(36860700001)(83380400001)(5660300002)(2906002)(70586007)(110136005)(70206006)(2616005)(54906003)(6486002)(8676002)(8936002)(316002)(41300700001)(4326008)(82740400003)(81166007)(356005)(86362001)(36756003)(33656002)(40480700001)(4744005);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 31 Oct 2023 16:11:38.7283
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: beb1f9a6-120f-48fc-3da4-08dbda2c1024
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:
	DB5PEPF00014B8B.eurprd02.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAWPR08MB9446

SGkgYWxsLA0KDQo+IE9uIE5vdiAxLCAyMDIzLCBhdCAwMDowMSwgSGVucnkgV2FuZyA8aGVucnku
d2FuZ0Bhcm0uY29tPiB3cm90ZToNCj4gDQo+IEhpLA0KPiANCj4+IE9uIE9jdCAyNSwgMjAyMywg
YXQgMTg6MTgsIEhlbnJ5IFdhbmcgPEhlbnJ5LldhbmdAYXJtLmNvbT4gd3JvdGU6DQo+PiANCj4+
IEhpIGNvbW1pdHRlcnMsDQo+PiANCj4+IFdlIHdpbGwgYmUgYnJhbmNoaW5nIHRoZSB0cmVlIGZv
ciBYZW4gNC4xOCBpbiB0aGUgbmV4dCBmZXcgZGF5cy4gUGxlYXNlIA0KPj4gYXZvaWQgY29tbWl0
dGluZyBhbnkgbmV3IHBhdGNoZXMgdG8gc3RhZ2luZyB1bnRpbCBmdXJ0aGVyIG5vdGljZS4NCj4g
DQo+IFRoZSBicmFuY2hpbmcgaGFzIGJlZW4gZmluaXNoZWQuIFRoZSBzdGFnaW5nIGlzIHJlb3Bl
bmVkIGZvciA0LjE5IGRldmVsb3BtZW50Lg0KDQpPbmUgc21hbGwgbm90ZSwgZ2l2ZW4gdGhlIHN0
YXRlIHRoYXQgd2UgZGVmaW5pdGVseSBjYW5ub3QgZnJlZXplIGZvciBhbm90aGVyIGZldw0Kd2Vl
a3MgYW5kIHdlIGFyZSB0ZWNobmljYWxseSBub3QgNC4xOCByZWxlYXNlZCwgSSB3b3VsZCBzYXkg
Y3VycmVudGx5IHRoZSBzdGFnaW5nDQppcyAic29mdC1vcGVu4oCdLCBiYXNpY2FsbHkgIm5vdGhp
bmcgdGhhdCdzIGxpa2VseSB0byBtYWtlIGJhY2twb3J0cyB0byA0LjE4IGhhcmTigJ0gd291bGQN
CmJlIGNhbmRpZGF0ZXMgdG8gYmUgcHVzaGVkIHRvIHN0YWdpbmcgbm93Lg0KDQpLaW5kIHJlZ2Fy
ZHMsDQpIZW5yeQ0KDQoNCj4gDQo+IFRoYW5rcy4NCj4gDQo+IEtpbmQgcmVnYXJkcywNCj4gSGVu
cnkNCj4gDQo+PiANCj4+IEtpbmQgcmVnYXJkcywNCj4+IEhlbnJ5DQo+IA0KDQo=


From xen-devel-bounces@lists.xenproject.org Tue Oct 31 16:17:45 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 16:17:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625947.975754 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxrQu-0007ws-Bm; Tue, 31 Oct 2023 16:17:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625947.975754; Tue, 31 Oct 2023 16: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 1qxrQu-0007wk-9A; Tue, 31 Oct 2023 16:17:36 +0000
Received: by outflank-mailman (input) for mailman id 625947;
 Tue, 31 Oct 2023 16: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=yzb5=GN=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qxrQt-0007wc-2f
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 16:17:35 +0000
Received: from EUR03-AM7-obe.outbound.protection.outlook.com
 (mail-am7eur03on20612.outbound.protection.outlook.com
 [2a01:111:f400:7eaf::612])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id fee3d2d1-7808-11ee-9b0e-b553b5be7939;
 Tue, 31 Oct 2023 17:17:32 +0100 (CET)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM9PR04MB8937.eurprd04.prod.outlook.com (2603:10a6:20b:408::6)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6954.17; Tue, 31 Oct
 2023 16:17:30 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6954.016; Tue, 31 Oct 2023
 16:17: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: fee3d2d1-7808-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=CPgl5Lk2ewxoZCfeaWuhOrE8R68P2ZVlHQaB6yBRd+wUXbFJHYOu6EUBz6CyJUaivnPDZm3/umT2FYj8PhS3o08FnSXhI03zwoSBgt1Xy3/BVhCjo45ZmBmWZk3nLwXYoeimTPd1RRyUCG0iI7neZbtUrOo7mP4/BZ8jwz98wpYjnfO04eXwQRqnD/j6bzDg3htcd+iYXFPSOhh0vobbP+4ccTtc8VOTpvqP+HL6gx3IVd+ewZd2ORVWhFzXSQD1seoe1Zi0+ddJE631TY+B/a2Y7K9mu/S0408mNWBJcs7wCq+ImVCPk1cYSSMVtUHsr9Y9/IAzFylVWfetrjDVCw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=bc/QMeuhl6E+g2BUjdQYMNPlwlIAtfBkyk7innooNDg=;
 b=jL+OkJQ2CeERsSXSGOk7HhMYcWhX7XwsR5G9gRGlsZOh2BdcgOYU8HyM+HwDzf2aaAI0IETCcZbJV83hMSELZRe2I638yHW4gP/CX+lp57rFz13JV4KQnuOWXu/nFN7sVqDnTySl4ctzAOpWx5aHx/8eIcD3Mbsx7LMTn6bNtpPwncLVpvRZ++jCntLXv77BOL35Kwvu6NVVO1tdegJQjsKIWVLII2P8hcTPiKT3bFKXyXTt/NusQIWEd6RfiUSldiaRd7icN0+kyMgiph2/Juahw1fF10xrNX4jPZMxTvo+03p6JDz9LziOLzMgHnH6cItlwv3jj1wnmeW9/9JXqg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=bc/QMeuhl6E+g2BUjdQYMNPlwlIAtfBkyk7innooNDg=;
 b=a9VLOH7WVzWuFBBda6CjlDhTRPINOcrMW++VOs2jTj3W03x9rsaEqSKKh8t1ecjFQQuG49HsqJVXqZGIMEyvxvuT0rGMbay/e8YbZ/XEpWDAmpatHFfqXvPW9id/0kuT7JdWkplX79s5qLFJNH44fFjGU1mNJVS9nLTHzRWTHEO31pUGaMQnTxI/Um5/6gt+Lw8TiXDD3gmDlQDWqqdj0mrEKvnoVeXgrd1KLHSLupewyNtEcmiIBPCR23+AbPhjyuSP6+3xC0JrCebxJide97V7aOWW/dclmFdO9CJ4VjUxFC2EtwLxPkjUEsYqnktWjLhePc27I0HbyuFhiED4rg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <738f6c5f-3d09-a107-5585-f886d5fa149a@suse.com>
Date: Tue, 31 Oct 2023 17:17:28 +0100
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/5] [FUTURE] xen/arm: enable vPCI for domUs
Content-Language: en-US
To: Stewart Hildebrand <stewart.hildebrand@amd.com>
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, Paul Durrant <paul@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 xen-devel@lists.xenproject.org, Julien Grall <julien@xen.org>
References: <20231030235240.106998-1-stewart.hildebrand@amd.com>
 <20231030235240.106998-5-stewart.hildebrand@amd.com>
 <2f828bd2-e6f8-15b5-b226-33e2b33ebba8@suse.com>
 <784fa30f-cdce-4d0b-97d1-a22ac52aa8c9@xen.org>
 <a31ebacb-b454-4636-8d75-df85d07f3399@amd.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <a31ebacb-b454-4636-8d75-df85d07f3399@amd.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR0P281CA0187.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:ab::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_|AM9PR04MB8937:EE_
X-MS-Office365-Filtering-Correlation-Id: d67e8c8a-623a-45f5-10b8-08dbda2ce17a
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	LhUYLChm3BvQMCK8HmaZgLiFB82gBRf6UoGucV4iOXYfAGK6fdjWPBjN4+dh4B/yA/vgAOk+EG6QZVz6F4l3RI/j1/Ky34u5hgQjeSTb1lTBG9v5O0MVrCBdELooDc22j5UP1rn04H/DxB7Fum6e6VpvBBdYEVzOvK5vFidbI9gfHtpKd6XF+HUbASRQ6vk2svwpokgfbB9OrWcF3z66doYUkrJxl2ikJwSq/pCu7E0NHCSiiB2oSpOmEgwRugEXhdhSyXVH5pMn0p8S+qyQKJJ8SvoqLDrr4HL/MATbuPBnAA/CnfFpTtuPxSBggfDHS19BsGLc+pZuk/WOBamGXSBjtfDDmtoW+qYukYTJnebuI32w0rziXjgGyE6Qa+tOCPHs+3n0Zg16tFHiLaQMZ53EHmkH3NRf+SbDWyDYmOHN5GE4lMqn9cxciGNn0A7SNM9FGaigThdLf7vo4DrGlF3OQXzkMRvWbEhPwm36xbrGkKq22q/WiSW390S7zkxC/atJkC8k9OKRIY3ncNPM+qE8cBTak6/7gVpKkYUGP+EpeGAxs+2Gle2DmO5rtDrwBpLLnOmYPr2K0FlIfsNp4yMNnQ9LXSOc41AbXWjbzvNi/xZILbSOhGbMBUl5pRp9zS+wlmr+MaJp0Eod/IS5bg==
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)(366004)(376002)(39860400002)(230922051799003)(1800799009)(451199024)(186009)(64100799003)(41300700001)(4326008)(2906002)(5660300002)(478600001)(6916009)(8936002)(316002)(8676002)(66476007)(66946007)(66556008)(54906003)(6486002)(2616005)(36756003)(31686004)(31696002)(86362001)(38100700002)(26005)(53546011)(6512007)(6506007)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?NzRrcGQ4Q3Npck5Bb0duWG5rL2NuWThuREtTM0lZWklMQVY2L2hwYmkxTHBP?=
 =?utf-8?B?dmpVTmx2VUNpR0xMQk5yUlFPT1NSUFhENldZY2NweGJNK1RSOEFiUkJWcEhy?=
 =?utf-8?B?ZEh5Vnk0WVdhLzZzZFhaVFpTYk5YYjcwM2Z5TmRqY25PREpMRmNwWHltR3pm?=
 =?utf-8?B?NEsyRWRUWFQvZkdHQmlBYjZUSThjWW9vMklKRDltQUMzYnEvTCtHeE9DTEFl?=
 =?utf-8?B?Uk5kTkNxTnNrVTk0SVFlWStkNWFCclRmQVRLNG54eGdyYkNUYWFGRkVYOTgz?=
 =?utf-8?B?RmVHd2RsRnppR0VaY3BNQTBkQm1KcCtPRDdtR1U1dktyRVFzYXpBK2tsZVpM?=
 =?utf-8?B?TUdoempwOGY5aksvZDVabHJwRlFQNGQ1azA4ZEl5OE4xV1Mxa0lvc29jU0JO?=
 =?utf-8?B?WlM2Z1lNdUsxVldHZG9ZaDU0WEg5R1RUbWZGQlAvYVgyNHFiQmZuUjFwOUtQ?=
 =?utf-8?B?T2tSM0NNTmNlVUNFNmpvSCtOZE9XWmYxT1V5MkJxVXNMMlVzUXZJSUVkeVlE?=
 =?utf-8?B?Y1pQb2hmaXFmRnd6TzZzUlRXQ3FrcWRUL3pzbkR6U1k0T2pWRHdQS0hPYUg5?=
 =?utf-8?B?c3ZZNFNNdVdyY1Y0endvdVU5clZHU2pnaFFnNEJoa09zektaSCs5aXNxZW5C?=
 =?utf-8?B?Y3RPZE1aeHFaZ0FHMVpoUTBzNld0b3hFMzNkaFg2OGJQUThIa1hxTkQ5NjdM?=
 =?utf-8?B?Um5WUWRwOW9ZcExRMUdPK3I0a2VFcXVjU0Ywa01nQ0F3ek9wL2xWTUVpeVJM?=
 =?utf-8?B?am5zbk1NaTBodi9EN2h4eDVpUVJJUzh2Qm1QUVI1bnpMZElBb1hkQXpEWDhh?=
 =?utf-8?B?T1VRbkMzM3g4WElPME5vc1hPRFk3QXIvZitQT2ZxZllaaEM3a0x2REt3ZDNX?=
 =?utf-8?B?N1pmK0x3VWI0aTE1N3pMd0NwdVpYNm9tRmI0RG55VFk0aGpmbEhYN3RvVDhx?=
 =?utf-8?B?UWw0UkJNUTB5MlBjQ2paSURYckJieFNUM2hCY0IwTXh6ZFJDUEZRUnVuTzVi?=
 =?utf-8?B?R1VXdVI2ejZsc1VrcVEwb25IR1Z5bk1UMytITkZpZ25DQkY4UmQ3MjJGUmV5?=
 =?utf-8?B?bEg0N3Y5dkRSOUp3Z29LZEQ5cml0OVRueDUyZzlLU3pyU1R2N0pTQ3ZDdW8r?=
 =?utf-8?B?eGY2d3hRQ2xFYVExNEc4d2FVQVJWRXVxZEJIMGFJODNMUGFJdjhPak14c3BG?=
 =?utf-8?B?WlJSNGxCMS9wK2ZIYVhVbEdiTTFSM044aEhFK0ZFSnhFUGZTTVExT2pVT0Q3?=
 =?utf-8?B?Q0lwRDdTMStwZi9ucGkreEdTbjZwQ3BDblA1UWpLaysvVDZpU210RTFkZUI0?=
 =?utf-8?B?OW0zUFhYQjR0dlY0aUNBWHh3NkxuY1lKNmtReXlYbzUwRHZvNHQzdFRwM1p6?=
 =?utf-8?B?T3RrU3hNM3JpWTJqT3NIK3k5Wk0wN2pUa3BhenRUOUJsV2pUUHdBOXJ2WTRQ?=
 =?utf-8?B?U08xTEtBNmVxMEt1RC90RHFBN2JxRWxORHpCbzcySExQOEhFbi8wWVEyMDh6?=
 =?utf-8?B?Y1FwcjhNZmhCK2NpNzJlSmNDdGdRNlp0WG9tMEc0QkY1MGR0aFNwUEowbU0r?=
 =?utf-8?B?YXd1UVRTMzhvSFkxNUgyZ1dGUU4ycC9OR0hEclE2NEcxRW1qai9kSllYMUNn?=
 =?utf-8?B?VWNIUjNDL3ZDMzFzRkpHaVhmaVBpYzlFMkFlOUZCM1BEVnlSLy9zOGVaV3hJ?=
 =?utf-8?B?b0xsY3JRcVFrcWdHOVJITS90cGpyVDJCMGhCQ01vVk9VVytqM0p4dDB4M00y?=
 =?utf-8?B?Szc1OWdTZk4wM3JWTjBvWmZkTm9ra1VraXFpVjAvaG5iWUMrTVprN2NNVEVZ?=
 =?utf-8?B?MzhoNGpWdW5VK2JlOTlHbFhsM25LdDI0UXR4YTQ5eE1VbnEzWXRDTHh2SHNN?=
 =?utf-8?B?djA2c0lvTFFuWmdtMGUydG0zbFFEZ0ROOXhxWjJlUytLdjZXTEtIdEREd283?=
 =?utf-8?B?VUNOdHNMY0dqdlYvZ2V5bDNHYUN4RHV5c2pXcE5DbEFMMkZveE1lYzFjOGg5?=
 =?utf-8?B?bW9FTitVVzkyd2o1NW9JK25rOU5QaUNpQ0NyS25zN0I1T3g2WGNBYzEwOXJJ?=
 =?utf-8?B?OE1kT2JtUUNxZTBPdjUzUmZiVEFmMktzT0phOWloUmFmbGdPVUFSTmpkendY?=
 =?utf-8?Q?o3rhkVtk7d/so08UXMTl6r9/I?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: d67e8c8a-623a-45f5-10b8-08dbda2ce17a
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 31 Oct 2023 16:17:30.0556
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: yg7C5leTT6T9BsVJlUQxSEhbW+k4AudnFKvQaZYoZKQJraf38lhRZGUmHa+FhT2xeWLUFFXSRKRaRLxF/GE1IQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR04MB8937

On 31.10.2023 15:15, Stewart Hildebrand wrote:
> On 10/31/23 09:17, Julien Grall wrote:
>> On 31/10/2023 11:03, Jan Beulich wrote:
>>> On 31.10.2023 00:52, Stewart Hildebrand wrote:
>>>> --- a/xen/drivers/passthrough/pci.c
>>>> +++ b/xen/drivers/passthrough/pci.c
>>>> @@ -1618,6 +1618,16 @@ int iommu_do_pci_domctl(
>>>>           bus = PCI_BUS(machine_sbdf);
>>>>           devfn = PCI_DEVFN(machine_sbdf);
>>>>   +        if ( IS_ENABLED(CONFIG_ARM) &&
>>>> +             !is_hardware_domain(d) &&
>>>> +             !is_system_domain(d) &&
>>>> +             (!IS_ENABLED(CONFIG_HAS_VPCI_GUEST_SUPPORT) || !has_vpci(d)) )
>>>
>>> I don't think you need the explicit ARM check; that's redundant with
>>> checking !HAS_VPCI_GUEST_SUPPORT.
> 
> Currently that is true. However, this is allowing for the possibility that we eventually may want to enable PCI passthrough for PVH domU using vPCI (e.g. hyperlaunch, or eliminating qemu backend), in which case we may want to enable CONFIG_HAS_VPCI_GUEST_SUPPORT=y on x86.

That's precisely why I'd like to see the ARM check go away here.

>>> It's also not really clear why you
>>> need to check for the system domain here.
> 
> xl pci-assignable-add will assign the device to domIO, which doesn't have vPCI, but it is still a valid assignment. Perhaps an in code comment would be helpful for clarity?

And/or specifically check for DomIO, not any system domain.

Jan


From xen-devel-bounces@lists.xenproject.org Tue Oct 31 16:21:24 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 16:21:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625951.975765 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxrUZ-0001M5-Rm; Tue, 31 Oct 2023 16:21:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625951.975765; Tue, 31 Oct 2023 16:21: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 1qxrUZ-0001Ly-OV; Tue, 31 Oct 2023 16:21:23 +0000
Received: by outflank-mailman (input) for mailman id 625951;
 Tue, 31 Oct 2023 16:21: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=L368=GN=gmail.com=matiasevara@srs-se1.protection.inumbo.net>)
 id 1qxrUY-0001Lp-37
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 16:21:22 +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 86cd4364-7809-11ee-98d6-6d05b1d4d9a1;
 Tue, 31 Oct 2023 17:21:21 +0100 (CET)
Received: by mail-wr1-x429.google.com with SMTP id
 ffacd0b85a97d-32dc918d454so3723779f8f.2
 for <xen-devel@lists.xenproject.org>; Tue, 31 Oct 2023 09:21:21 -0700 (PDT)
Received: from z0rr0-Latitude-7490 ([2a01:e0a:257:8c60:c550:f26a:2ce9:e5df])
 by smtp.gmail.com with ESMTPSA id
 n12-20020adfe78c000000b0032f7eaa6e43sm1827110wrm.79.2023.10.31.09.21.18
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Tue, 31 Oct 2023 09:21: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: 86cd4364-7809-11ee-98d6-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698769280; x=1699374080; darn=lists.xenproject.org;
        h=content-disposition:mime-version:message-id:subject:cc:to:date:from
         :from:to:cc:subject:date:message-id:reply-to;
        bh=PeQFRaFd4HTF0L7uxb3xMd2sfS+FTZ/ZL7BQ1f0mWE4=;
        b=aerPY4QTrp+4KA8WbhJxGeCZLgV7sKnRm0F9CP6uXCviSJDIX7WaCnhjjuSBEyPb1+
         t6rxyE2ZD/c8jlOc2zQpV5+sDAtJl0chDSdjwTQ8xds8BtClW6joN/7zkZ7Se2vXVVHq
         hSa28tVKmqnEKV7EVtSKrYxqtUsui3vfw4oCu2YOKUXA9sMalN5ER8LS3+/5Ii8e194z
         YmXkuOMj/+BpaCFmoHh9nhx9DGm8rdjQVjYlVyKaxzg1WwlGTJnorGISh3vLlVcQBr+B
         0ng4Wb14YTTbbJNS2BXOxK4M6LaasWYrSZkF8zuGrDQAQj4e6YsN3RkURSuN853LCLjL
         +PqA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698769280; x=1699374080;
        h=content-disposition:mime-version:message-id:subject:cc:to:date:from
         :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
        bh=PeQFRaFd4HTF0L7uxb3xMd2sfS+FTZ/ZL7BQ1f0mWE4=;
        b=Zh6+Rqxhl0SdBe1Bmezg/5aYIC+RAlnHEgT3g2FCZQiHDehIfBpo4zkt6wMBHOwM3b
         KANSFwLO5U3Kka4OQ7gKa7FuMf27rOUINX2smPDpJX72SXzRUEXlcmJWn5yJcB6dyxMy
         ncoun8P1Lf4mh7cZedWI5Q3d/sI0LlgsLVjgSahxDhFlBp6jLTUGCHFo/mHa3QNhzBEd
         lYdKzRDUms5dkx0elQ7W9rDfNkpOdD8+BhyEMP5/oLzJddeMFyORabjjt/bjXMmbeZD9
         lfbUHXHpYOTwP8LXb5Jv9ppy8NslN1VWYhk5KVuI8G9eMROiQWg7ailOFBRNVhYzfpE7
         R1tw==
X-Gm-Message-State: AOJu0Yw5Tx4elhVFV+k2ubK6SsMT0dJvHF6hGSRDwzO7x5nYFKPc6o9p
	/yqSqDfquMbhqmAkG7VFa1PT8iH/xiELveqh
X-Google-Smtp-Source: AGHT+IHXb72XDpM1zrO4AkR2LUpchUEahZFWle6AcXUYC+dkKu7QA7+3RDhkbDGYIVEWs9CTY7zHMA==
X-Received: by 2002:a5d:6c61:0:b0:32f:7d50:62ef with SMTP id r1-20020a5d6c61000000b0032f7d5062efmr7815411wrz.13.1698769279441;
        Tue, 31 Oct 2023 09:21:19 -0700 (PDT)
From: Matias Ezequiel Vara Larsen <matiasevara@gmail.com>
X-Google-Original-From: Matias Ezequiel Vara Larsen <matias.vara@vates.fr>
Date: Tue, 31 Oct 2023 17:21:16 +0100
To: xen-devel@lists.xenproject.org
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Ian Jackson <iwj@xenproject.org>, Jan Beulich <jbeulich@suse.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
	Dario Faggioli <dfaggioli@suse.com>,
	Roger Pau =?iso-8859-1?Q?Monn=E9?= <roger.pau@citrix.com>,
	Matias Vara <matiasevara@gmail.com>
Subject: [RFC PATCH v3 0/3] Add a new acquire resource to query vcpu
 statistics
Message-ID: <cover.1698589351.git.matias.vara@vates.fr>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline

Hello all and apologies for the delay in sending v3,

the purpose of this RFC is to get feedback about a new acquire resource that
exposes vcpu statistics for a given domain. The current mechanism to get those
statistics is by querying the hypervisor. This mechanism relies on a hypercall
and holds the domctl spinlock during its execution. When a pv tool like xcp-rrdd
periodically samples these counters, it ends up affecting other paths that share
that spinlock. By using acquire resources, the pv tool only requires a few
hypercalls to set the shared memory region and samples are got without issuing
any other hypercall. The original idea has been suggested by Andrew Cooper to
which I have been discussing about how to implement the current PoC. You can
find the RFC patch series at [1]. The series is rebased on top of stable-4.16.

The current series includes a simple pv tool that shows how this new interface is
used. This tool maps the counter and periodically samples it.

Any feedback/help would be appreciated.

Thanks, Matias.

[1] https://github.com/MatiasVara/xen/commits/feature_vcpu_stats

Changes in v3:
- use memory layout discussed at
  https://lists.xenproject.org/archives/html/xen-devel/2023-03/msg00383.html
 
Changes in v2:
- rework to ensure that consumer fetches consistent data

Changes in v1:
- rework how the resource is allocated and released
- rework when the resource is allocated that happens only when the resource is
  requested 
- rework the structure shared between the tool and Xen to make it extensible to
  new counters and declare it in a public header

There are still the following questions:
   - resource shall be released when there are no more readers otherwise we keep
     updating it during a hot path

Matias Ezequiel Vara Larsen (3):
  xen/memory : Add a stats_table resource type
  x86/mm: Do not validate/devalidate PGT_none type
  tools/misc: Add xen-vcpus-stats tool

 tools/misc/Makefile          |   6 ++
 tools/misc/xen-vcpus-stats.c | 132 +++++++++++++++++++++++++++
 xen/arch/x86/mm.c            |   3 +-
 xen/common/domain.c          |   1 +
 xen/common/memory.c          | 167 +++++++++++++++++++++++++++++++++++
 xen/common/sched/core.c      |  20 +++++
 xen/include/public/memory.h  |   3 +
 xen/include/public/vcpu.h    |  27 ++++++
 xen/include/xen/mm.h         |   2 +
 xen/include/xen/sched.h      |   5 ++
 10 files changed, 365 insertions(+), 1 deletion(-)
 create mode 100644 tools/misc/xen-vcpus-stats.c

-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Tue Oct 31 16:21:53 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 16:21:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625954.975775 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxrV3-0001rn-7k; Tue, 31 Oct 2023 16:21:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625954.975775; Tue, 31 Oct 2023 16:21: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 1qxrV3-0001rg-4M; Tue, 31 Oct 2023 16:21:53 +0000
Received: by outflank-mailman (input) for mailman id 625954;
 Tue, 31 Oct 2023 16: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=L368=GN=gmail.com=matiasevara@srs-se1.protection.inumbo.net>)
 id 1qxrV2-0001Lp-Dc
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 16:21:52 +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 9919149f-7809-11ee-98d6-6d05b1d4d9a1;
 Tue, 31 Oct 2023 17:21:51 +0100 (CET)
Received: by mail-wm1-x32b.google.com with SMTP id
 5b1f17b1804b1-4083f613275so42199225e9.2
 for <xen-devel@lists.xenproject.org>; Tue, 31 Oct 2023 09:21:51 -0700 (PDT)
Received: from z0rr0-Latitude-7490 ([2a01:e0a:257:8c60:c550:f26a:2ce9:e5df])
 by smtp.gmail.com with ESMTPSA id
 3-20020a05600c234300b0040586360a36sm2125624wmq.17.2023.10.31.09.21.48
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Tue, 31 Oct 2023 09: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: 9919149f-7809-11ee-98d6-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698769310; x=1699374110; darn=lists.xenproject.org;
        h=in-reply-to:content-disposition:mime-version:references:message-id
         :subject:cc:to:date:from:from:to:cc:subject:date:message-id:reply-to;
        bh=WFaeT7oFb3OWV2txTm55sd6xURS6b4NhZdMJYHWdMKE=;
        b=mKmLcRR2cOUaxPu9o3RnMVfeLVrW8sYnuukydQx4HZQT79IDV0kkWDqJWYdBKeT2oB
         EtHvs1vqRFHf/IKZ7RnM1PHGWgf0nes9vAmwAazwh9nFFr3nfxFAp2vebXHp76TxwCVJ
         0mdaekuj34uxf9gCB8CxbHQP/j4s/RSGihHwquIkHM7vlwd0N5KA0Ojb0Xm7wqH3jXzp
         7cLSlnDtj8c5gYzURCQAg1A9nC4bouQkzlPCiTASL7AAFqlBVdZ//62rPJEg3FuR4z0v
         XlkUkS289y6KDO9HmDYMTeFFpCAhsOxOnaytB5UrF75pAh1KC4zu8l0iAxcIjRBI4epT
         nIdQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698769310; x=1699374110;
        h=in-reply-to:content-disposition:mime-version:references:message-id
         :subject:cc:to:date:from:x-gm-message-state:from:to:cc:subject:date
         :message-id:reply-to;
        bh=WFaeT7oFb3OWV2txTm55sd6xURS6b4NhZdMJYHWdMKE=;
        b=qOeQ2Iw1UYRs297ffNjjXISG/zru8CLul277q1S75Xm45Q4ZTjkmonxZVvrCjKDWwd
         APJd3SV1iLMgmssB66LSZRnCmpL0qaCdLn2Pv7uHWKF9lvrB4uFG4XitBQkv5Dy7dtYf
         niBONTdjThJ7BZ3gMQac+heuTM9FqOUmCZS2JoseVhA7imP+1Sj8QiPGQRubFMQYtL/B
         vR5DV15AGs8nQqiXQekNzjb+2UocK0n+TWvNEZVTj7w1zP2HoTtYMaeLajAHPG9oGslX
         j+5l/a+fzMEQLPSmLSYUKdrNRXjCDJfIBepuxI37olBsHgwIVHK8LfsllGLqamnrrNQJ
         01eg==
X-Gm-Message-State: AOJu0YwTiaMVRslOjqJ2caWAUW54P21wR4ZYhqNm9pUoPHdfoXdNmqL0
	V/gwrvs4SpM0Brl8YOhVa7zAPpBIcSu0z1jA
X-Google-Smtp-Source: AGHT+IElqF6dEZmBu7icN33rp94nd0N7QJxwVbQM9T8VWR+8lxo6LWq6HKDqXhQJotz3nkvCXcqZIw==
X-Received: by 2002:a05:600c:154e:b0:405:4a78:a890 with SMTP id f14-20020a05600c154e00b004054a78a890mr11001413wmg.8.1698769309895;
        Tue, 31 Oct 2023 09:21:49 -0700 (PDT)
From: Matias Ezequiel Vara Larsen <matiasevara@gmail.com>
X-Google-Original-From: Matias Ezequiel Vara Larsen <matias.vara@vates.fr>
Date: Tue, 31 Oct 2023 17:21:47 +0100
To: xen-devel@lists.xenproject.org
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Ian Jackson <iwj@xenproject.org>, Jan Beulich <jbeulich@suse.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
	Dario Faggioli <dfaggioli@suse.com>,
	Matias Vara <matiasevara@gmail.com>
Subject: [RFC PATCH v3 1/3] xen/memory : Add a stats_table resource type
Message-ID: <ec106b56640c92f91473c8855c8dccc20e3eb5df.1698589351.git.matias.vara@vates.fr>
References: <cover.1698589351.git.matias.vara@vates.fr>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <cover.1698589351.git.matias.vara@vates.fr>

This commit proposes a new mechanism to query the RUNSTATE_running counter for
a given vcpu from a dom0 userspace application. This commit proposes to expose
that counter by using the acquire_resource interface. For this purpose, the
commit adds a new resource named XENMEM_resource_stats_table and a
type-specific resource named XENMEM_resource_stats_table_id_vcpustats. This
type-specific resource is aiming at exposing per-VCPU counters.

The current mechanism relies on the XEN_DOMCTL_getvcpuinfo and holds a single
global domctl_lock for the entire hypercall; and iterate over every vcpu in the
system for every update thus impacting operations that share that lock. This
commit proposes to expose vcpu RUNSTATE_running via the xenforeignmemory
interface thus preventing to issue the hypercall and holding the lock.

For that purpose, a new resource type named XENMEM_resource_stats_table is
added. In particular, the type-specific resource
XENMEM_resource_stats_table_id_vcpustats is added to host per-VCPU counters.
These counters are mapped in frames. The allocation of these frames only
happens if the resource is requested. The number of allocated frames is equal
to the domain's max_vcpus. Frames are released after the domain is destroyed.

To expose this information to a consumer, two structures are required:
1. vcpu_shmem_stats
2. vcpu_stats[]

The memory layout has been discussed at [1]. The laylout looks like:

struct vcpu_shmem_stats {
#define VCPU_STATS_MAGIC 0xaabbccdd
    uint32_t magic;
    uint32_t offset;  // roundup(sizeof(vcpu_shmem_stats), cacheline_size)
    uint32_t size;    // sizeof(vcpu_stats)
    uint32_t stride;  // roundup(sizeof(vcpu_stats), cacheline_size)
};

struct vcpu_stats {
    /*
     * If the least-significant bit of the seq number is set then an update
     * is in progress and the consumer must wait to read a consistent set of
     * values. This mechanism is similar to Linux's seqlock.
     */
    uint32_t seq;
    uint32 _pad;
    /*
     * If the most-significant bit of a counter is set then the counter
     * is inactive and the consumer must ignore its value. Note that this
     * could also indicate that the counter has overflowed.
     */
    uint64_t stats_a; // e.g., runstate_running_time
    uint64_t stats_b; // e.g.,
    uint64_t stats_c; // e.g.,
    ...
};

All padding fields shall be marked as "inactive". The consumer can't
distinguish inactive from overflowed. Also, the consumer shall always
verify before reading that:
        
          offsetof(struct vcpu_stats, stats_y) < size.

in case the consumer knows about a counter, e.g., stats_y, that Xen does
not it.

The vcpu_shmem_stats structure exposes a magic number, the size of the
vcpu_stats structure, the offset in which the vcpu_stats structures begin and
the stride for each instance. The address of the vcpu_shmem_stats and
vcpu_stats instances are cache line aligned to prevent cache ping-pong when
accessing per-vcpu elements. In the vcpu_stats structure, most-significant bit
of a counter is set to indicate that either the counter has overflowed or it is
inactive so the consumer must ignore it.

Note that the updating of vcpu's counters is in a hot path, thus, in this commit,
copying only happens if it is specifically required.

Note that the resource is extensible in two ways. First, the structure
vcpu_stats can be extended with new per-vcpu counters. To do so, new per-vcpu
counters shall be added after the last element of the structure definition to
not break existing consumers. Second, new type-specific resources can be added
to host a different sort of counters.

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

Signed-off-by: Matias Ezequiel Vara Larsen <matias.vara@vates.fr>
---
Changes in v3:
- allow to host an arbitrary nuumber of vcpus
- release resource during domain_kill() since it is guest-type
  independent and arch agnostic
- rework stats_table_max_frames()
- use memory layout as discussed at
  https://lists.xenproject.org/archives/html/xen-devel/2023-03/msg00383.html

Changes in v2:
- rework to ensure that guest reads a coherent value by using a version
  number in the vcpu_stats structure
- add version to the vcpu_stats structure

Changes in v1:
- rework the allocation and releasing of the frames
- use the zero frame for per-vcpu counters that are listed as an array
- allocate vcpu stats frames only when the resource is requested
- rewrite commit message
- add the vcpu_stats structure to keep per-vcpu counters
- add the shared_vcpustatspage to keep an array of per-vcpu counters for a
  given domain
- declare the structures in a public header 
- define the vcpustats_page in the domain structure
---
 xen/common/domain.c         |   1 +
 xen/common/memory.c         | 167 ++++++++++++++++++++++++++++++++++++
 xen/common/sched/core.c     |  20 +++++
 xen/include/public/memory.h |   3 +
 xen/include/public/vcpu.h   |  27 ++++++
 xen/include/xen/mm.h        |   2 +
 xen/include/xen/sched.h     |   5 ++
 7 files changed, 225 insertions(+)

diff --git a/xen/common/domain.c b/xen/common/domain.c
index e3afcacb6c..27d8961a21 100644
--- a/xen/common/domain.c
+++ b/xen/common/domain.c
@@ -948,6 +948,7 @@ int domain_kill(struct domain *d)
             break;
         if ( cpupool_move_domain(d, cpupool0) )
             return -ERESTART;
+        stats_free_vcpu_mfn(d);
         for_each_vcpu ( d, v )
             unmap_vcpu_info(v);
         d->is_dying = DOMDYING_dead;
diff --git a/xen/common/memory.c b/xen/common/memory.c
index 76f8858cc3..2acac40c63 100644
--- a/xen/common/memory.c
+++ b/xen/common/memory.c
@@ -1092,6 +1092,27 @@ unsigned int ioreq_server_max_frames(const struct domain *d)
     return nr;
 }
 
+unsigned int stats_table_max_frames(const struct domain *d, unsigned int id)
+{
+    unsigned int nr = 0;
+    unsigned int size;
+
+    switch ( id )
+    {
+    case XENMEM_resource_stats_table_id_vcpustats:
+        size = DIV_ROUND_UP(sizeof(struct vcpu_shmem_stats), SMP_CACHE_BYTES) +
+               DIV_ROUND_UP(sizeof(struct vcpu_stats), SMP_CACHE_BYTES) * d->max_vcpus;
+
+        nr = DIV_ROUND_UP(size, PAGE_SIZE);
+        break;
+
+    default:
+        break;
+    }
+
+    return nr;
+}
+
 /*
  * Return 0 on any kind of error.  Caller converts to -EINVAL.
  *
@@ -1113,6 +1134,9 @@ static unsigned int resource_max_frames(const struct domain *d,
     case XENMEM_resource_vmtrace_buf:
         return d->vmtrace_size >> PAGE_SHIFT;
 
+    case XENMEM_resource_stats_table:
+        return stats_table_max_frames(d, id);
+
     default:
         return -EOPNOTSUPP;
     }
@@ -1176,6 +1200,146 @@ static int acquire_vmtrace_buf(
     return nr_frames;
 }
 
+void stats_free_vcpu_mfn(struct domain * d)
+{
+    struct page_info *pg = d->vcpustats_page.pg;
+    void * _va = d->vcpustats_page.va;
+    unsigned int i;
+    unsigned int size;
+    unsigned int nr_frames;
+
+    if ( !pg )
+        return;
+
+    d->vcpustats_page.pg = NULL;
+    d->vcpustats_page.va = NULL;
+
+    size = DIV_ROUND_UP(sizeof(struct vcpu_shmem_stats), SMP_CACHE_BYTES) +
+           DIV_ROUND_UP(sizeof(struct vcpu_stats), SMP_CACHE_BYTES)
+           * d->max_vcpus;
+
+    nr_frames = DIV_ROUND_UP(size, PAGE_SIZE);
+
+    vunmap(_va);
+
+    for ( i = 0; i < nr_frames; i++ )
+    {
+        put_page_alloc_ref(&pg[i]);
+        put_page_and_type(&pg[i]);
+    }
+}
+
+static int stats_vcpu_alloc_mfn(struct domain *d)
+{
+    struct page_info *pg;
+    int order;
+    unsigned int i;
+    unsigned int size;
+    unsigned int nr_frames;
+    void *_va;
+    mfn_t mfn;
+    struct vcpu_shmem_stats *hd;
+
+    size = DIV_ROUND_UP(sizeof(struct vcpu_shmem_stats), SMP_CACHE_BYTES) +
+           DIV_ROUND_UP(sizeof(struct vcpu_stats), SMP_CACHE_BYTES)
+           * d->max_vcpus;
+
+    nr_frames = DIV_ROUND_UP(size, PAGE_SIZE);
+
+    order = get_order_from_bytes(size);
+    pg = alloc_domheap_pages(d, order, MEMF_no_refcount);
+
+    if ( !pg )
+        return -ENOMEM;
+
+    for ( i = 0; i < nr_frames; i++ )
+    {
+        if ( unlikely(!get_page_and_type(&pg[i], d, PGT_writable_page)) )
+            /*
+             * The domain can't possibly know about this page yet, so failure
+             * here is a clear indication of something fishy going on.
+             */
+            goto refcnt_err;
+    }
+
+    mfn = page_to_mfn(pg);
+    _va = vmap(&mfn, nr_frames);
+    if ( !_va )
+        goto refcnt_err;
+
+    for ( i = 0; i < nr_frames; i++ )
+        clear_page(_va + i * PAGE_SIZE);
+
+    /* Initialize vcpu_shmem_stats header */
+    hd = (struct vcpu_shmem_stats*)_va;
+    hd->magic = VCPU_STATS_MAGIC;
+    hd->offset = ROUNDUP(sizeof(struct vcpu_shmem_stats), SMP_CACHE_BYTES);
+    hd->size = sizeof(struct vcpu_stats);
+    hd->stride = ROUNDUP(sizeof(struct vcpu_stats), SMP_CACHE_BYTES);
+
+    d->vcpustats_page.va  = _va;
+    d->vcpustats_page.pg = pg;
+
+    return 0;
+
+ refcnt_err:
+    /*
+     * We can theoretically reach this point if someone has taken 2^43 refs on
+     * the frames in the time the above loop takes to execute, or someone has
+     * made a blind decrease reservation hypercall and managed to pick the
+     * right mfn.  Free the memory we safely can, and leak the rest.
+     */
+    while ( i-- )
+    {
+        put_page_alloc_ref(&pg[i]);
+        put_page_and_type(&pg[i]);
+    }
+
+    return -ENODATA;
+}
+
+static int acquire_stats_table(struct domain *d,
+                               unsigned int id,
+                               unsigned int frame,
+                               unsigned int nr_frames,
+                               xen_pfn_t mfn_list[])
+{
+    mfn_t mfn;
+    int rc;
+    unsigned int i;
+    unsigned int max_frames;
+
+    if ( !d )
+        return -ENOENT;
+
+    switch ( id )
+    {
+    case XENMEM_resource_stats_table_id_vcpustats:
+        max_frames = DIV_ROUND_UP(d->max_vcpus * sizeof(struct vcpu_stats),
+                                  PAGE_SIZE);
+
+        if ( (frame + nr_frames) > max_frames )
+            return -EINVAL;
+
+        if ( !d->vcpustats_page.pg )
+        {
+            rc = stats_vcpu_alloc_mfn(d);
+            if ( rc )
+                return rc;
+        }
+
+        mfn = page_to_mfn(d->vcpustats_page.pg);
+        for ( i = 0; i < nr_frames; i++ )
+            mfn_list[i] = mfn_x(mfn) + frame + i;
+        break;
+
+    default:
+        return -EINVAL;
+    }
+
+    return nr_frames;
+}
+
 /*
  * Returns -errno on error, or positive in the range [1, nr_frames] on
  * success.  Returning less than nr_frames contitutes a request for a
@@ -1196,6 +1360,9 @@ static int _acquire_resource(
     case XENMEM_resource_vmtrace_buf:
         return acquire_vmtrace_buf(d, id, frame, nr_frames, mfn_list);
 
+    case XENMEM_resource_stats_table:
+        return acquire_stats_table(d, id, frame, nr_frames, mfn_list);
+
     default:
         return -EOPNOTSUPP;
     }
diff --git a/xen/common/sched/core.c b/xen/common/sched/core.c
index 03ace41540..a05891fd32 100644
--- a/xen/common/sched/core.c
+++ b/xen/common/sched/core.c
@@ -264,6 +264,11 @@ static inline void vcpu_runstate_change(
 {
     s_time_t delta;
     struct sched_unit *unit = v->sched_unit;
+    struct vcpu_shmem_stats *vcpu_shmem;
+    struct vcpu_stats *vcpu_info;
+    void *_va;
+    struct domain *d = v->domain;
+    int offset;
 
     ASSERT(spin_is_locked(get_sched_res(v->processor)->schedule_lock));
     if ( v->runstate.state == new_state )
@@ -287,6 +292,21 @@ static inline void vcpu_runstate_change(
     }
 
     v->runstate.state = new_state;
+
+    _va = d->vcpustats_page.va;
+
+    if ( !_va )
+        return;
+
+    vcpu_shmem = (struct vcpu_shmem_stats*)_va;
+    vcpu_info = (struct vcpu_stats*)((void*)vcpu_shmem + vcpu_shmem->offset);
+    offset = (vcpu_shmem->stride * v->vcpu_id);
+    vcpu_info += offset;
+    vcpu_info->seq = version_update_begin(vcpu_info->seq);
+    smp_wmb();
+    vcpu_info->runstate_running_time = v->runstate.time[RUNSTATE_running];
+    smp_wmb();
+    vcpu_info->seq = version_update_end(vcpu_info->seq);
 }
 
 void sched_guest_idle(void (*idle) (void), unsigned int cpu)
diff --git a/xen/include/public/memory.h b/xen/include/public/memory.h
index 383a9468c3..93b58a9ccc 100644
--- a/xen/include/public/memory.h
+++ b/xen/include/public/memory.h
@@ -633,6 +633,7 @@ struct xen_mem_acquire_resource {
 #define XENMEM_resource_ioreq_server 0
 #define XENMEM_resource_grant_table 1
 #define XENMEM_resource_vmtrace_buf 2
+#define XENMEM_resource_stats_table 3
 
     /*
      * IN - a type-specific resource identifier, which must be zero
@@ -640,11 +641,13 @@ struct xen_mem_acquire_resource {
      *
      * type == XENMEM_resource_ioreq_server -> id == ioreq server id
      * type == XENMEM_resource_grant_table -> id defined below
+     * type == XENMEM_resource_stats_table -> id defined below
      */
     uint32_t id;
 
 #define XENMEM_resource_grant_table_id_shared 0
 #define XENMEM_resource_grant_table_id_status 1
+#define XENMEM_resource_stats_table_id_vcpustats 0
 
     /*
      * IN/OUT
diff --git a/xen/include/public/vcpu.h b/xen/include/public/vcpu.h
index 3623af932f..f61da90f1d 100644
--- a/xen/include/public/vcpu.h
+++ b/xen/include/public/vcpu.h
@@ -235,6 +235,33 @@ 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);
 
+struct vcpu_shmem_stats {
+#define VCPU_STATS_MAGIC 0xaabbccdd
+    uint32_t magic;
+    uint32_t offset;
+    uint32_t size;
+    uint32_t stride;
+};
+
+struct vcpu_stats {
+    /*
+     * If the least-significant bit of the seq number is set then an update
+     * is in progress and the consumer must wait to read a consistent set of
+     * values. This mechanism is similar to Linux's seqlock.
+     */
+    uint32_t seq;
+    uint32_t pad0;
+    /*
+     * If the most-significant bit of a counter is set then the counter
+     * is inactive and the consumer must ignore its value. Note that this
+     * could also indicate that the counter has overflowed.
+     */
+     uint64_t runstate_running_time;
+};
+
+typedef struct vcpu_shmem_stats xen_vcpu_shmemstats_t;
+typedef struct vcpu_stats xen_shared_vcpustats_t;
+
 #endif /* __XEN_PUBLIC_VCPU_H__ */
 
 /*
diff --git a/xen/include/xen/mm.h b/xen/include/xen/mm.h
index 5db26ed477..c96d18f3a5 100644
--- a/xen/include/xen/mm.h
+++ b/xen/include/xen/mm.h
@@ -148,6 +148,8 @@ int assign_page(
 /* Dump info to serial console */
 void arch_dump_shared_mem_info(void);
 
+void stats_free_vcpu_mfn(struct domain *d);
+
 /*
  * Extra fault info types which are used to further describe
  * the source of an access violation.
diff --git a/xen/include/xen/sched.h b/xen/include/xen/sched.h
index 1a1fab5239..a0c1b5955e 100644
--- a/xen/include/xen/sched.h
+++ b/xen/include/xen/sched.h
@@ -588,6 +588,11 @@ struct domain
         struct ioreq_server     *server[MAX_NR_IOREQ_SERVERS];
     } ioreq_server;
 #endif
+    /* Pages that host vcpu stats */
+    struct {
+        struct page_info *pg;
+        void *va;
+    } vcpustats_page;
 };
 
 static inline struct page_list_head *page_to_list(
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Tue Oct 31 16:22:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 16:22:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625957.975785 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxrVN-0002Jm-FC; Tue, 31 Oct 2023 16:22:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625957.975785; Tue, 31 Oct 2023 16: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 1qxrVN-0002Jf-CM; Tue, 31 Oct 2023 16:22:13 +0000
Received: by outflank-mailman (input) for mailman id 625957;
 Tue, 31 Oct 2023 16: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=L368=GN=gmail.com=matiasevara@srs-se1.protection.inumbo.net>)
 id 1qxrVM-0002B8-Ms
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 16:22:12 +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 a4616237-7809-11ee-9b0e-b553b5be7939;
 Tue, 31 Oct 2023 17:22:10 +0100 (CET)
Received: by mail-wm1-x332.google.com with SMTP id
 5b1f17b1804b1-40891d38e3fso44267945e9.1
 for <xen-devel@lists.xenproject.org>; Tue, 31 Oct 2023 09:22:10 -0700 (PDT)
Received: from z0rr0-Latitude-7490 ([2a01:e0a:257:8c60:c550:f26a:2ce9:e5df])
 by smtp.gmail.com with ESMTPSA id
 l26-20020a05600c1d1a00b0040839fcb217sm2247089wms.8.2023.10.31.09.22.07
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Tue, 31 Oct 2023 09: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: a4616237-7809-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698769329; x=1699374129; darn=lists.xenproject.org;
        h=in-reply-to:content-disposition:mime-version:references:message-id
         :subject:cc:to:date:from:from:to:cc:subject:date:message-id:reply-to;
        bh=FyehYb6JwXAsjruZeGnWm5F+IXqKAV6rVUPq42rsfQc=;
        b=VCLb3mwr+jivaJB0fsJmDTWWVmZS60L8flR31kuEcyU7jLaiOeokJ+xQN3ZX/E2LiU
         FzFbWAX2zJ4AqerqK7UsRpqYhU9um1/pp9Uom14gRSOemcDuVmvOEL2nrk0aVzsztwVg
         0iNWGa6I3UlGyELkOqb8/I4Dzl9k1JVdr569sYuYnkC79czSEQTnY+utOoTWSJEMvaQZ
         JW6YFBjupSGVRLCcAFEFXd/IhluYUESQK5DVBhN8kv2wrFhkMyl6wjSwyLcselaYRqum
         H2wbYldVa7Gat70x/ZTKVWZGmipYfyAuIqhKtd2HFK0aC/Bsp6iKYNK6opJ6CYqqfR9g
         N2tQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698769329; x=1699374129;
        h=in-reply-to:content-disposition:mime-version:references:message-id
         :subject:cc:to:date:from:x-gm-message-state:from:to:cc:subject:date
         :message-id:reply-to;
        bh=FyehYb6JwXAsjruZeGnWm5F+IXqKAV6rVUPq42rsfQc=;
        b=XBqRsLfnxAMXOdFCrDIhZTOHi3eetAAFgoQZmyJL3XHYKqyvkI+Dfvi3pEShZfaZT/
         E2rFILeMGILf2whFUklaL7QTl7S7jxuY0QKlpHix9rCiVJ3zWK6E16qIivrqAoOS84XV
         ip32w6Y8P4F9b8OoEpaWOT8j+V8W9NJWOpuKTLj+aqYGY1ez6F2eiQJmBKW7J2m5O+dn
         5ZWRyt7DAc3exmKWkcrKwmchYxAHwzU/brq/l7E6Dkjy3HYTs0fwkdJjZFCwedQcgZUM
         sU1YHq41oRDfsNCFgwKX1px2w5SbMDVvRerb/jPENVe+tiC4duSkoGofl3ZNG9gP6hTJ
         bdaw==
X-Gm-Message-State: AOJu0YzwYo3lEmNQFDlSsMbS0xqbToy0yF2TpGZ4Ipr6bww3fetEqUlU
	xLwRe6KiCtcXpta282jD7i9w8nUWEdgEwT1q
X-Google-Smtp-Source: AGHT+IG7y2GphMr+Jbfw6j5oLBAP6/4jBIUEDqE/A2be+Wy/4Wxm/Ss5nSCTY2/0fiB5zlOiXk+/ew==
X-Received: by 2002:a05:600c:4f53:b0:3fa:934c:8356 with SMTP id m19-20020a05600c4f5300b003fa934c8356mr10726723wmq.10.1698769328843;
        Tue, 31 Oct 2023 09:22:08 -0700 (PDT)
From: Matias Ezequiel Vara Larsen <matiasevara@gmail.com>
X-Google-Original-From: Matias Ezequiel Vara Larsen <matias.vara@vates.fr>
Date: Tue, 31 Oct 2023 17:22:06 +0100
To: xen-devel@lists.xenproject.org
Cc: Jan Beulich <jbeulich@suse.com>,
	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>,
	Ian Jackson <iwj@xenproject.org>, Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Matias Vara <matiasevara@gmail.com>
Subject: [RFC PATCH v3 2/3] x86/mm: Do not validate/devalidate PGT_none type
Message-ID: <dc05dc908f0a39e26e589099a4dd79404d5f32b2.1698589351.git.matias.vara@vates.fr>
References: <cover.1698589351.git.matias.vara@vates.fr>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <cover.1698589351.git.matias.vara@vates.fr>

This commit prevents PGT_none type pages to be validated/devalidated.
This is required for the use-case in which a guest-agnostic resource is
allocated. In this case, these pages may be accessible by an "owning" PV
domain. To lock the page from guest pov, pages are required to be marked
with PGT_none with a single type ref. In particular, this commit makes
the stats_table resource type to use this flag during
get_page_and_type(). 

Signed-off-by: Matias Ezequiel Vara Larsen <matias.vara@vates.fr>
---
 xen/arch/x86/mm.c   | 3 ++-
 xen/common/memory.c | 2 +-
 2 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/xen/arch/x86/mm.c b/xen/arch/x86/mm.c
index 5812321cae..d2f311abe4 100644
--- a/xen/arch/x86/mm.c
+++ b/xen/arch/x86/mm.c
@@ -2787,6 +2787,7 @@ static int _put_page_type(struct page_info *page, unsigned int flags,
         {
         case 0:
             if ( unlikely((nx & PGT_type_mask) <= PGT_l4_page_table) &&
+                 unlikely((nx & PGT_type_mask) >= PGT_l1_page_table) &&
                  likely(nx & (PGT_validated|PGT_partial)) )
             {
                 int rc;
@@ -3072,7 +3073,7 @@ static int _get_page_type(struct page_info *page, unsigned long type,
          *
          * per validate_page(), non-atomic updates are fine here.
          */
-        if ( type == PGT_writable_page || type == PGT_shared_page )
+        if ( type == PGT_writable_page || type == PGT_shared_page || type == PGT_none )
             page->u.inuse.type_info |= PGT_validated;
         else
         {
diff --git a/xen/common/memory.c b/xen/common/memory.c
index 2acac40c63..e26ba21d75 100644
--- a/xen/common/memory.c
+++ b/xen/common/memory.c
@@ -1254,7 +1254,7 @@ static int stats_vcpu_alloc_mfn(struct domain *d)
 
     for ( i = 0; i < nr_frames; i++ )
     {
-        if ( unlikely(!get_page_and_type(&pg[i], d, PGT_writable_page)) )
+        if ( unlikely(!get_page_and_type(&pg[i], d, PGT_none)) )
             /*
              * The domain can't possibly know about this page yet, so failure
              * here is a clear indication of something fishy going on.
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Tue Oct 31 16:22:35 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 16:22:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625961.975795 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxrVi-0002t0-NC; Tue, 31 Oct 2023 16:22:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625961.975795; Tue, 31 Oct 2023 16: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 1qxrVi-0002st-KE; Tue, 31 Oct 2023 16:22:34 +0000
Received: by outflank-mailman (input) for mailman id 625961;
 Tue, 31 Oct 2023 16:22: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=L368=GN=gmail.com=matiasevara@srs-se1.protection.inumbo.net>)
 id 1qxrVh-0001Lp-Qy
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 16:22:33 +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 b1f996a4-7809-11ee-98d6-6d05b1d4d9a1;
 Tue, 31 Oct 2023 17:22:33 +0100 (CET)
Received: by mail-lj1-x22e.google.com with SMTP id
 38308e7fff4ca-2c5071165d5so35532461fa.0
 for <xen-devel@lists.xenproject.org>; Tue, 31 Oct 2023 09:22:33 -0700 (PDT)
Received: from z0rr0-Latitude-7490 ([2a01:e0a:257:8c60:c550:f26a:2ce9:e5df])
 by smtp.gmail.com with ESMTPSA id
 u19-20020a05600c211300b004083a105f27sm2109641wml.26.2023.10.31.09.22.30
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Tue, 31 Oct 2023 09:22: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: b1f996a4-7809-11ee-98d6-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698769352; x=1699374152; darn=lists.xenproject.org;
        h=in-reply-to:content-disposition:mime-version:references:message-id
         :subject:cc:to:date:from:from:to:cc:subject:date:message-id:reply-to;
        bh=PbqnLiaYM/qismUJagY8WtP0Lsbpjpo6BS+NyjPaSIU=;
        b=fscKq6j1jJEXF/t8ZpM9tk4zKTRcuBq15xwTz1OAquiMWoUkRsAkjkejJKVHcfyVvE
         eHAtAHbpZib47z/07BAt4rdjLWK1WzcFDePXDpVwlUWex4h7XXfEEapMH8DqG8UL5js5
         GYrYrscnjpQq8fAALAqtsrBLEmpi9Mzp2o9WmcaynqhNlODc/SrFvLNV/5laPvvrAVPq
         N5rqFds4ApY6JkPliwyctvoI2qy6hYgiBHj3ozwE4/aebomN6aE73SgzxFaDFWuP/m8O
         FpKeVVQiiu4Cg+cDSmvTq/ZpFgrNBFRCCqE/jhbWVwR0Q9u8zS7qez4y4JAuy9W9N7kQ
         dT5g==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698769352; x=1699374152;
        h=in-reply-to:content-disposition:mime-version:references:message-id
         :subject:cc:to:date:from:x-gm-message-state:from:to:cc:subject:date
         :message-id:reply-to;
        bh=PbqnLiaYM/qismUJagY8WtP0Lsbpjpo6BS+NyjPaSIU=;
        b=GkJ5uLSdOlZJqzcsuj90cacO8FdShcaRhNBJOEmIjWeYIXOWM6IMNxbKzghmBC52QP
         rCmt/Lifxa8umFkyp7asqYsW1hKD8m7P0yvGiNJBBMygV/O9iRono5rOxbk/b6W5o2wv
         Lnh3+RtAPdNVKsOjs05slQQB+xuKwjQifijXzxXPeKpzb+eWdB7D49CCRP4TIjnUJFmp
         VUho5PU9doG4HAQ40QCFKEeIjzDKBMBa+MzF6ckKl1y1OsRoNj4HvEkuT1hF9V1lbdsb
         8nh4MWsCIRtBj6MetRGT/p41EawKxPqhF9JDwtBHZwvKlVfbs9Zdk/NnTfkcmSIcpNMy
         MDGg==
X-Gm-Message-State: AOJu0YwSIQvMKiS8VCEGzc3tqDksj7GunV58iHzrzskIRBP7wXDagawJ
	k2Dm/OfzyTtiQx44uEIW+amq8WXvxz4XmeVr
X-Google-Smtp-Source: AGHT+IGSvsYd/SVhWLFgXMVDqjMg9M0hSRTbFDOwVZLmzTBli4r6lzkSaUK5NcTio5bvQkfaXGDC/g==
X-Received: by 2002:a2e:9b18:0:b0:2c5:17c0:cd53 with SMTP id u24-20020a2e9b18000000b002c517c0cd53mr10890709lji.42.1698769351846;
        Tue, 31 Oct 2023 09:22:31 -0700 (PDT)
From: Matias Ezequiel Vara Larsen <matiasevara@gmail.com>
X-Google-Original-From: Matias Ezequiel Vara Larsen <matias.vara@vates.fr>
Date: Tue, 31 Oct 2023 17:22:29 +0100
To: xen-devel@lists.xenproject.org
Cc: Ian Jackson <iwj@xenproject.org>, Wei Liu <wl@xen.org>,
	Matias Vara <matiasevara@gmail.com>
Subject: [RFC PATCH v3 3/3] tools/misc: Add xen-vcpus-stats tool
Message-ID: <3c11b71e824c1b68c8799dcafeb45098bd932149.1698589351.git.matias.vara@vates.fr>
References: <cover.1698589351.git.matias.vara@vates.fr>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <cover.1698589351.git.matias.vara@vates.fr>

Add a demonstration tool that uses the stats_table resource to
query vcpus' RUNSTATE_running counter for a DomU.

Signed-off-by: Matias Ezequiel Vara Larsen <matias.vara@vates.fr>
---
Changes in v3:
- use memory layout as discussed at
  https://lists.xenproject.org/archives/html/xen-devel/2023-03/msg00383.html
- use virt_*()
- issue xenforeignmemory_close()

Changes in v2:
- use period instead of frec
- rely on version to ensure reading is coherent 

Changes in v1:
- change the name of the tool to xen-vcpus-stats
- set command line parameters in the same order that are passed
- remove header libs.h
- build by default
- remove errno, strerrno, "\n", and identation
- use errx when errno is not needed
- address better the number of pages requested and error msgs
- use the shared_vcpustatspage_t structure
- use the correct frame id when requesting the resource
---
 tools/misc/Makefile          |   6 ++
 tools/misc/xen-vcpus-stats.c | 132 +++++++++++++++++++++++++++++++++++
 2 files changed, 138 insertions(+)
 create mode 100644 tools/misc/xen-vcpus-stats.c

diff --git a/tools/misc/Makefile b/tools/misc/Makefile
index 8b9558b93f..9c7cb50483 100644
--- a/tools/misc/Makefile
+++ b/tools/misc/Makefile
@@ -51,6 +51,7 @@ TARGETS_COPY += xenpvnetboot
 
 # Everything which needs to be built
 TARGETS_BUILD := $(filter-out $(TARGETS_COPY),$(TARGETS_ALL))
+TARGETS_BUILD += xen-vcpus-stats
 
 # ... including build-only targets
 TARGETS_BUILD += $(TARGETS_BUILD-y)
@@ -139,4 +140,9 @@ xencov: xencov.o
 xen-ucode: xen-ucode.o
 	$(CC) $(LDFLAGS) -o $@ $< $(LDLIBS_libxenctrl) $(APPEND_LDFLAGS)
 
+xen-vcpus-stats.o: CFLAGS += $(CFLAGS_libxenforeginmemory)
+
+xen-vcpus-stats: xen-vcpus-stats.o
+	$(CC) $(LDFLAGS) -o $@ $< $(LDLIBS_libxenctrl) $(LDLIBS_libxenforeignmemory) $(APPEND_LDFLAGS)
+
 -include $(DEPS_INCLUDE)
diff --git a/tools/misc/xen-vcpus-stats.c b/tools/misc/xen-vcpus-stats.c
new file mode 100644
index 0000000000..f277b6ce8f
--- /dev/null
+++ b/tools/misc/xen-vcpus-stats.c
@@ -0,0 +1,132 @@
+#include <err.h>
+#include <errno.h>
+#include <error.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <sys/mman.h>
+#include <signal.h>
+
+#include <xenctrl.h>
+#include <xenforeignmemory.h>
+#include <xen/vcpu.h>
+
+/*
+ * Note that virt_*() is used when ordering is required between the hypevisor
+ * and the tool domain. This tool is meant to be arch-agnostic so add the
+ * corresponding barrier for each architecture.
+ *
+ */
+#if defined(__x86_64__)
+#define barrier() asm volatile("" ::: "memory")
+#define virt_rmb() barrier()
+#elif defined(__aarch64__)
+#define dmb(opt) asm volatile("dmb " #opt : : : "memory")
+#define virt_rmb() dmb(ishld)
+#else
+#error Please fill in barrier macros
+#endif
+
+static sig_atomic_t interrupted;
+static void close_handler(int signum)
+{
+    interrupted = 1;
+}
+
+int main(int argc, char **argv)
+{
+    xenforeignmemory_handle *fh;
+    xenforeignmemory_resource_handle *res;
+    size_t size;
+    int rc, domid, period, vcpu;
+    xen_vcpu_shmemstats_t *info_shmem;
+    xen_shared_vcpustats_t *info;
+    struct sigaction act;
+    uint32_t seq;
+    uint64_t value;
+
+    if ( argc != 4 )
+    {
+        fprintf(stderr, "Usage: %s <domid> <vcpu> <period>\n", argv[0]);
+        return 1;
+    }
+
+    domid = atoi(argv[1]);
+    vcpu = atoi(argv[2]);
+    period = atoi(argv[3]);
+
+    act.sa_handler = close_handler;
+    act.sa_flags = 0;
+    sigemptyset(&act.sa_mask);
+    sigaction(SIGHUP,  &act, NULL);
+    sigaction(SIGTERM, &act, NULL);
+    sigaction(SIGINT,  &act, NULL);
+    sigaction(SIGALRM, &act, NULL);
+
+    fh = xenforeignmemory_open(NULL, 0);
+
+    if ( !fh )
+        err(1, "xenforeignmemory_open");
+
+    rc = xenforeignmemory_resource_size(
+        fh, domid, XENMEM_resource_stats_table,
+        XENMEM_resource_stats_table_id_vcpustats, &size);
+
+    if ( rc )
+        err(1, "Fail: Get size");
+
+    res = xenforeignmemory_map_resource(
+        fh, domid, XENMEM_resource_stats_table,
+        XENMEM_resource_stats_table_id_vcpustats, 0, size >> XC_PAGE_SHIFT,
+        (void **)&info_shmem, PROT_READ, 0);
+
+    if ( !res )
+        err(1, "Fail: Map");
+
+    if ( info_shmem->magic != VCPU_STATS_MAGIC )
+    {
+        fprintf(stderr, "Wrong magic number\n");
+        return 1;
+    }
+
+    if ( offsetof(struct vcpu_stats, runstate_running_time) > info_shmem->size )
+    {
+        fprintf(stderr, "The counter is not produced\n");
+        return 1;
+    }
+
+    info = (xen_shared_vcpustats_t*)((void*)info_shmem
+                                     + info_shmem->offset
+                                     + info_shmem->size * vcpu);
+
+    if ( info->runstate_running_time & ((uint64_t)1 << 63) )
+    {
+        fprintf(stderr, "The counter is inactived or has overflowed\n");
+        return 1;
+    }
+
+    while ( !interrupted )
+    {
+        sleep(period);
+        do {
+            seq = info[vcpu].seq;
+            virt_rmb();
+            value = info[vcpu].runstate_running_time;
+            virt_rmb();
+        } while ( (info[vcpu].seq & 1) ||
+                  (seq != info[vcpu].seq) );
+        if ( value & ((uint64_t)1 << 63) )
+            break;
+        printf("running_vcpu_time[%d]: %ld\n", vcpu, value);
+    }
+
+    rc = xenforeignmemory_unmap_resource(fh, res);
+    if ( rc )
+        err(1, "Fail: Unmap");
+
+    rc = xenforeignmemory_close(fh);
+    if ( rc )
+        err(1, "Fail: Close");
+
+    return 0;
+}
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Tue Oct 31 16:34:02 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 16:34:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625972.975805 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxrge-0007Eq-Q1; Tue, 31 Oct 2023 16:33:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625972.975805; Tue, 31 Oct 2023 16:33: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 1qxrge-0007Ej-NI; Tue, 31 Oct 2023 16:33:52 +0000
Received: by outflank-mailman (input) for mailman id 625972;
 Tue, 31 Oct 2023 16:33: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=G+CR=GN=cloud.com=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qxrgc-0007Ed-SW
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 16:33:51 +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 43d26ab3-780b-11ee-98d6-6d05b1d4d9a1;
 Tue, 31 Oct 2023 17:33:50 +0100 (CET)
Received: by mail-ed1-x534.google.com with SMTP id
 4fb4d7f45d1cf-53e08e439c7so10072766a12.0
 for <xen-devel@lists.xenproject.org>; Tue, 31 Oct 2023 09:33:47 -0700 (PDT)
Received: from localhost ([213.195.113.99]) by smtp.gmail.com with ESMTPSA id
 x7-20020a170906710700b009c70b392051sm1221152ejj.100.2023.10.31.09.33.46
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Tue, 31 Oct 2023 09:33: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: 43d26ab3-780b-11ee-98d6-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1698770027; x=1699374827; 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=rZtyABM22d8WNiZYCnLutaI+NLhsCfSj4kEzvmz47hw=;
        b=Vc70jUXSEgvAX5G+Y2NjpYMWvOE9A9tgOfWY+Zssg+QZMCr2et3lp6+Z38rfDH26yx
         x0Iwtvshy/9Y00joh6YJtahdYgruU3/8VmBxdpMYO7sraIXcGQO/AefrP8bwBRC2k3wn
         rspVusGA6BfflIq8FKwlKxbKAvMG6+ADimY6Y=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698770027; x=1699374827;
        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=rZtyABM22d8WNiZYCnLutaI+NLhsCfSj4kEzvmz47hw=;
        b=EpznpUZIKwwRuGCpvxVrsL8OiAgU3kmSgo4k0460f4D0XVVmMLsyxRoC5iCXUPO+kF
         7beMq3xc/vfEXnGmr59cjm4CyCZL279wbBzhGPJwZdhRVbMkFYOnsgWEo09ZdCImtpq6
         xQOKn6Sz9Vef4r1AwLQm7CE2vDQViXRFgWI739Sg29WYM/5jBsDcaOWgp3WlLsaSQ84B
         4JyXeXStYzZfMRjbzTT4WA9DhrSrLBPb3DMsOfvQ3izsB0bsYn4BO+GLggn+aCjOhWcH
         R9yBC2+TmbZE7tK8vXnvmh3QgW4BO069DTvQloi0vVNDddGbS7ujao2P6i3AOz/2gnO8
         tn9A==
X-Gm-Message-State: AOJu0Yy6FQ6i78wuV7hmnuIwvcxJ0ADsam1VZa87qoyy8PM9mMlM8Ut9
	pThrrIgzC6HOyVAi9bFYkgThnw==
X-Google-Smtp-Source: AGHT+IHMm4Nc2zIvsRh7qrAgUPH9KvEEL+Ybbgeay3cbraKNq60msb2HmT3Vn9+XXs6yL79vG8G5cA==
X-Received: by 2002:a17:907:9494:b0:9bf:4915:22c4 with SMTP id dm20-20020a170907949400b009bf491522c4mr11023456ejc.67.1698770026919;
        Tue, 31 Oct 2023 09:33:46 -0700 (PDT)
Date: Tue, 31 Oct 2023 17:33:45 +0100
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Xenia Ragiadakou <xenia.ragiadakou@amd.com>
Cc: xen-devel@lists.xenproject.org, Jan Beulich <jbeulich@suse.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>
Subject: Re: [PATCH] x86/irq: do not insert IRQ_MSI_EMU in emuirq mappings
Message-ID: <ZUEsabItf_lpvi25@macbook>
References: <20231031133037.157936-1-xenia.ragiadakou@amd.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <20231031133037.157936-1-xenia.ragiadakou@amd.com>

On Tue, Oct 31, 2023 at 03:30:37PM +0200, Xenia Ragiadakou wrote:
> Do not use emuirq mappings for MSIs injected by emulated devices.
> This kind of pirq shares the same emuirq value and is not remapped.

AFAICT adding the extra emuirq mappings is harmless, and just adds
an extra layer of translation?

Or is this causing issues, but we haven't realized because we don't
provide emulated devices that use MSI(-X) by default?

> Fixes: 88fccdd11ca0 ('xen: event channel remapping for emulated MSIs')
> Signed-off-by: Xenia Ragiadakou <xenia.ragiadakou@amd.com>
> ---
> 
> Question: is there any strong reason why Linux HVM guests still use pirqs?

Baggage I guess.  I've suggested in the past to switch PIRQs off by
default for HVM, but I had no figures to show how much of a
performance penalty that would be for passthrough devices.

My suggestion would be to introduce an xl.cfg option to select the
availability of PIRQs for HVM guests, and set it to off by default.
You would also need to make sure that migration (or save/restore)
works fine, and that incoming guests from previous Xen versions (that
won't have the option) will result in PIRQs still being enabled.

There's already a XEN_X86_EMU_USE_PIRQ flag in xen_arch_domainconfig,
so you just need to wire the tools side in order to allow selection by
users.

> 
>  xen/arch/x86/irq.c | 8 ++++----
>  1 file changed, 4 insertions(+), 4 deletions(-)
> 
> diff --git a/xen/arch/x86/irq.c b/xen/arch/x86/irq.c
> index f42ad539dc..cdc8dc5a55 100644
> --- a/xen/arch/x86/irq.c
> +++ b/xen/arch/x86/irq.c
> @@ -2684,7 +2684,7 @@ int map_domain_emuirq_pirq(struct domain *d, int pirq, int emuirq)
>      }
>  
>      old_emuirq = domain_pirq_to_emuirq(d, pirq);
> -    if ( emuirq != IRQ_PT )
> +    if ( (emuirq != IRQ_PT) && (emuirq != IRQ_MSI_EMU) )
>          old_pirq = domain_emuirq_to_pirq(d, emuirq);

I think you can just use emuirq >= 0, as we then only need the emuirq
translation for passthrough interrupts, same for the rest of the
changed conditions.

Looking further, the function seems to be useless when called with
emuirq < 0, and hence it might be better to avoid such calls in the
first place?

I have to admit I've always been very confused with the PIRQ logic, so
it's possible I'm missing some relevant stuff here.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Tue Oct 31 17:28:10 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 17:28:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625977.975815 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxsWu-0006O2-Nq; Tue, 31 Oct 2023 17:27:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625977.975815; Tue, 31 Oct 2023 17:27: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 1qxsWu-0006Nv-KW; Tue, 31 Oct 2023 17:27:52 +0000
Received: by outflank-mailman (input) for mailman id 625977;
 Tue, 31 Oct 2023 17:27: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=HcxJ=GN=amd.com=Stewart.Hildebrand@srs-se1.protection.inumbo.net>)
 id 1qxsWs-0006MN-P0
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 17:27:50 +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 ceea6c3a-7812-11ee-9b0e-b553b5be7939;
 Tue, 31 Oct 2023 18:27:48 +0100 (CET)
Received: from BL0PR01CA0031.prod.exchangelabs.com (2603:10b6:208:71::44) by
 PH7PR12MB7914.namprd12.prod.outlook.com (2603:10b6:510:27d::13) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.29; Tue, 31 Oct
 2023 17:27:43 +0000
Received: from BL02EPF0001A100.namprd03.prod.outlook.com
 (2603:10b6:208:71:cafe::22) by BL0PR01CA0031.outlook.office365.com
 (2603:10b6:208:71::44) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.29 via Frontend
 Transport; Tue, 31 Oct 2023 17:27:43 +0000
Received: from SATLEXMB03.amd.com (165.204.84.17) by
 BL02EPF0001A100.mail.protection.outlook.com (10.167.242.107) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6954.19 via Frontend Transport; Tue, 31 Oct 2023 17:27:42 +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.32; Tue, 31 Oct
 2023 12:27:42 -0500
Received: from [172.28.214.164] (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.32 via Frontend
 Transport; Tue, 31 Oct 2023 12:27: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: ceea6c3a-7812-11ee-9b0e-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=QMnOs9FyU7Q4M7IAsK5+rNM/hzachtst7bEIMBM2Q30c5XCOSi4BObzY6LETJYxm50046iFSPpBpUEv1zjf4Kzat8TlRysqnG+CbljWpSwF+7DgEXJMnuz5pg/BnMApHlUNfeTWXvgYRZ2um9JV9jf+h7w2VirggJEfHBA3i7f9by6TcEh3U2U+Xxr56z+z2vPk9N5oznV/tvTxznmveklkX+hX4acWBFzZc49vlwFrekLM1e28Dbvdy8USEn8uqHfSzeIf4G5HVD3Dt3N1twN6V3pw25uwCq8babOGnmGMDLJZq+/3c8fTgC1DAYD2mBETlYHTzfK10SjFD4PMgyg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=q3WEKZwwfu0xIGzDPmizONxm5mXsAo7gSzzbMAxqafk=;
 b=feylBUbL+qmKM2GvkJrMApeVm7WVvft1MpbguWdy5BxeFN8s8kDwahrShsJeLBD/3x5WK1Te3g4PrSuU6UvKCgo+U5dAXMXkSB/2XVxQj18ILcKXgNa+M4ymyh94DvqeucsdQpnQssQPVpNbkxRd4zBxe1ULnsKJwpeCGpv97Qo7uFdDlvd0rA9UY4DFaFs4I+bTuqfZOP+Vo9F7fQLzqBTGDTzvmbUTB1PiqHLZoR/WRawgCdr52RxFSXV5/HXq1+hg4LhfC6AUPoZZTFlfSVq/LRt0UGRzPsscD9pwkEuN3QpatVrkYCuRIQscp/tf1YIt1m59ETAsgy13NuOvZQ==
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 (0)
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=q3WEKZwwfu0xIGzDPmizONxm5mXsAo7gSzzbMAxqafk=;
 b=vz+7el5cXMnEDnpKx0ENPu1u76hdEW7Orw+uIEYqxV+k2qoWo8TQn5Q4gvi5EvAtFJcPsf/lyomxQ3o8hkSXwLclgKR+dPJU4nmznmPuKpTCmYDhcBCDbvoAEgHfUfO0O+PSiL0M+eaX6AjVAuq855v+p4Au2s/hHKpeAdMHuSk=
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: <a3765f1a-a4c6-4e68-818b-f26821b6962f@amd.com>
Date: Tue, 31 Oct 2023 13:27:39 -0400
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v4 2/5] xen/vpci: move xen_domctl_createdomain vPCI flag
 to common
Content-Language: en-US
To: Jan Beulich <jbeulich@suse.com>
CC: Wei Liu <wl@xen.org>, Anthony PERARD <anthony.perard@citrix.com>, Juergen
 Gross <jgross@suse.com>, Andrew Cooper <andrew.cooper3@citrix.com>, George
 Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>, Stefano
 Stabellini <sstabellini@kernel.org>, Christian Lindig
	<christian.lindig@citrix.com>, David Scott <dave@recoil.org>,
	=?UTF-8?Q?Marek_Marczykowski-G=C3=B3recki?=
	<marmarek@invisiblethingslab.com>, Bertrand Marquis
	<bertrand.marquis@arm.com>, Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	=?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>, Oleksandr
 Andrushchenko <oleksandr_andrushchenko@epam.com>, Rahul Singh
	<rahul.singh@arm.com>, <xen-devel@lists.xenproject.org>
References: <20231030235240.106998-1-stewart.hildebrand@amd.com>
 <20231030235240.106998-3-stewart.hildebrand@amd.com>
 <1c27d0a7-f04d-32ff-05df-4da4c32bebdf@suse.com>
From: Stewart Hildebrand <stewart.hildebrand@amd.com>
In-Reply-To: <1c27d0a7-f04d-32ff-05df-4da4c32bebdf@suse.com>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 7bit
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: BL02EPF0001A100:EE_|PH7PR12MB7914:EE_
X-MS-Office365-Filtering-Correlation-Id: c1410a9f-f3dc-4017-6089-08dbda36b0a5
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	kScFElpUh8GGrJ3bVtsB5yxnCxNmXYp5zU5akV7AH6GWvNRvmK+5Qz7a5TiEjQ7ttWPrbTGrFJnsQkmru2jQRc+crx7qbaM6FKPOvkR2U9+G7oWO/cgFJv/Cp7jPZ+LWqeKEMbkTLPXFw8auV9HJ1Wo0Hp8QkQ3o5rak78gDehZQ+qXmPSVry9eb9lyvBx4G4p32z2OsyV2DuMJB6o1jCa5zbQDebO6J/agUBhwqJYw4fNiHCtPoYx9zxWn0yBa7MO9ta9Mszy9A5pZjuU9ND8kQD4SSNUPbcxCFZtvMlTGwaT1XwXMb64d64cWCXsSJSUmXFVv/462nlzJgiOCg8yTrMAuUIvsk0gUraNawvsczl676HMbpO82OFncmZjmAM7zhrK2ofBcUu6dnWI/9ewNcqyxGDX31ZpJVDG060Q8vUL961hS70xbPigK2N+bRpnbfqvGjTQb/gBcX3SH8UWFKQM6iPLLnf+aThCK05E/SJ30nF0f/eZAfVsDWCvLsDQxorY5XCXNLb7Rf7F+ekxD2vaWeYCD/OgyS5O+CQUrYGCrtz5hE5o8ZMNXqGBT3/zYJp6KOMQ2uGt2NFQPlWLaY7tI65wmvQVAf6cChHcSPeQlSnRbZCZHMQ3fu5rzGer8/JWKtDFp+VjobKJZtHKaPhDxH4V/N9wbeC4TnfLz/FrQrU/5J5ri1u2olmhDxIyJApwJ+EIbaptFHoypQGQQa/Dm/+KVBTbgPC6OBzVIni6+ZGd1TgHNP0Yb/XXbtF/+0/k5Uice8r6WA9CVniGlU0053Toddp90eY8vRyg4=
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)(230922051799003)(82310400011)(64100799003)(1800799009)(186009)(451199024)(36840700001)(40470700004)(46966006)(6916009)(5660300002)(70206006)(70586007)(54906003)(2906002)(16576012)(316002)(7416002)(8676002)(40480700001)(966005)(478600001)(41300700001)(44832011)(8936002)(4326008)(31686004)(53546011)(2616005)(40460700003)(26005)(36860700001)(426003)(336012)(82740400003)(36756003)(86362001)(31696002)(81166007)(356005)(47076005)(43740500002)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 31 Oct 2023 17:27:42.9305
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: c1410a9f-f3dc-4017-6089-08dbda36b0a5
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:
	BL02EPF0001A100.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7PR12MB7914

On 10/31/23 06:56, Jan Beulich wrote:
> On 31.10.2023 00:52, Stewart Hildebrand wrote:
>> --- a/xen/arch/arm/domain.c
>> +++ b/xen/arch/arm/domain.c
>> @@ -607,7 +607,8 @@ int arch_sanitise_domain_config(struct xen_domctl_createdomain *config)
>>  {
>>      unsigned int max_vcpus;
>>      unsigned int flags_required = (XEN_DOMCTL_CDF_hvm | XEN_DOMCTL_CDF_hap);
>> -    unsigned int flags_optional = (XEN_DOMCTL_CDF_iommu | XEN_DOMCTL_CDF_vpmu);
>> +    unsigned int flags_optional = (XEN_DOMCTL_CDF_iommu | XEN_DOMCTL_CDF_vpmu |
>> +                                   XEN_DOMCTL_CDF_vpci);
> 
> Is the flag (going to be, with the initial work) okay to have for Dom0
> on Arm?

Hm. Allowing/enabling vPCI for dom0 on ARM should follow or be part of the PCI passthrough SMMU series [1]. I'll move this change to the next patch ("xen/arm: enable vPCI for dom0") and add a note over there.

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

> 
>> --- a/xen/arch/x86/domain.c
>> +++ b/xen/arch/x86/domain.c
>> @@ -712,7 +712,8 @@ int arch_sanitise_domain_config(struct xen_domctl_createdomain *config)
>>      return 0;
>>  }
>>  
>> -static bool emulation_flags_ok(const struct domain *d, uint32_t emflags)
>> +static bool emulation_flags_ok(const struct domain *d, uint32_t emflags,
>> +                               uint32_t cdf)
> 
> While apparently views differ, ./CODING_STYLE wants "unsigned int" to be
> used for the latter two arguments.

OK, I'll change both to unsigned int.

> 
>> @@ -722,14 +723,17 @@ static bool emulation_flags_ok(const struct domain *d, uint32_t emflags)
>>      if ( is_hvm_domain(d) )
>>      {
>>          if ( is_hardware_domain(d) &&
>> -             emflags != (X86_EMU_VPCI | X86_EMU_LAPIC | X86_EMU_IOAPIC) )
>> +             (!( cdf & XEN_DOMCTL_CDF_vpci ) ||
> 
> Nit: Stray blanks inside the inner parentheses.

OK, I'll fix.

> 
>> +              emflags != (X86_EMU_LAPIC | X86_EMU_IOAPIC)) )
>>              return false;
>>          if ( !is_hardware_domain(d) &&
>> -             emflags != (X86_EMU_ALL & ~X86_EMU_VPCI) &&
>> -             emflags != X86_EMU_LAPIC )
>> +             ((cdf & XEN_DOMCTL_CDF_vpci) ||
>> +              (emflags != X86_EMU_ALL &&
>> +               emflags != X86_EMU_LAPIC)) )
>>              return false;
>>      }
>> -    else if ( emflags != 0 && emflags != X86_EMU_PIT )
>> +    else if ( (cdf & XEN_DOMCTL_CDF_vpci) ||
> 
> Wouldn't this better be enforced in common code?

Yes, I will move it to xen/common/domain.c:sanitise_domain_config().

> 
>> --- a/xen/arch/x86/setup.c
>> +++ b/xen/arch/x86/setup.c
>> @@ -892,10 +892,11 @@ static struct domain *__init create_dom0(const module_t *image,
>>      {
>>          dom0_cfg.flags |= (XEN_DOMCTL_CDF_hvm |
>>                             ((hvm_hap_supported() && !opt_dom0_shadow) ?
>> -                            XEN_DOMCTL_CDF_hap : 0));
>> +                            XEN_DOMCTL_CDF_hap : 0) |
>> +                           XEN_DOMCTL_CDF_vpci);
> 
> Less of a change and imo slightly neater as a result would be to simply
> put the addition on the same line where CDF_hvm already is. But as with
> many style aspects, views may differ here of course ...

I'll change it.

> 
> Jan


From xen-devel-bounces@lists.xenproject.org Tue Oct 31 17:34:53 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 17:34:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625981.975826 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxsdc-0000JL-I9; Tue, 31 Oct 2023 17:34:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625981.975826; Tue, 31 Oct 2023 17: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 1qxsdc-0000JE-DX; Tue, 31 Oct 2023 17:34:48 +0000
Received: by outflank-mailman (input) for mailman id 625981;
 Tue, 31 Oct 2023 17:34: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 1qxsdb-0000Ip-Kb; Tue, 31 Oct 2023 17:34: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 1qxsdb-0002A2-Bo; Tue, 31 Oct 2023 17:34: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 1qxsdb-0001wX-3V; Tue, 31 Oct 2023 17:34:47 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qxsdb-00016g-2q; Tue, 31 Oct 2023 17:34: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=Jhao03QCYkMKJU8Y3w3dAYS62XaXGXVT8nXiHmwoz1k=; b=y7IVUV3iu6eP5QkjuG3F0HBHmb
	izlyA97SS4LqrsrjGsNMoMuL37Vt1qu7NrCkHPOFBiBetQdX/OX3IphcPDXlosEsKHUY03y3iKzjl
	4NMddiwh6mV4zuyFEdkw0Ziaggq9wSRStu99hcA9TpdK8EEkWO6E8ipgRHngt57baf5A=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183639-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 183639: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=36812d6c3e0c4402ea90e20566ac80de634d210b
X-Osstest-Versions-That:
    ovmf=a671a14e63fdaa9490e5c61cf11346416f1d1463
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 31 Oct 2023 17:34:47 +0000

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

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 36812d6c3e0c4402ea90e20566ac80de634d210b
baseline version:
 ovmf                 a671a14e63fdaa9490e5c61cf11346416f1d1463

Last test of basis   183619  2023-10-30 12:41:05 Z    1 days
Testing same since   183639  2023-10-31 15:12:49 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Jeff Brasen <jbrasen@nvidia.com>
  Jiewen Yao <Jiewen.yao@intel.com>
  Jinlong Xu <jinlong.xu@intel.com>
  Joey Vagedes <joeyvagedes@gmail.com>
  Joey Vagedes <joeyvagedes@microsoft.com>
  Laszlo Ersek <lersek@redhat.com>
  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
   a671a14e63..36812d6c3e  36812d6c3e0c4402ea90e20566ac80de634d210b -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Tue Oct 31 17:53:40 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 17:53:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625989.975835 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxsvm-0005Ow-3X; Tue, 31 Oct 2023 17:53:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625989.975835; Tue, 31 Oct 2023 17:53: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 1qxsvl-0005Op-WF; Tue, 31 Oct 2023 17:53:34 +0000
Received: by outflank-mailman (input) for mailman id 625989;
 Tue, 31 Oct 2023 17:53: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 1qxsvl-0005Nb-Fr
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 17:53: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 1qxsvk-0002U3-Bk; Tue, 31 Oct 2023 17:53:32 +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 1qxsvk-0000te-3C; Tue, 31 Oct 2023 17: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>
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=lCE4NPZFDz3JxIg42acwR6tiJuzeXj1TdAAdtMDLKK4=; b=XICtXITPB+4WA6NATQzd3Oppaw
	y7yxDoUHNlZrdPcaxMh7gLZZzzAJKPLVoh6om4RZB0E3hGjalDoASiEuEG3IDDfdJtD7a4qg8DQGT
	A1CnNRvMjhumkR0fzG/IO0iFHcutZkBY8Dw02QoLXaAPOhVqzdQaDZ3sEyLuilG21WMs=;
Message-ID: <3001b753-de5d-4684-a657-4364175709be@xen.org>
Date: Tue, 31 Oct 2023 17:53:29 +0000
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH] xen: remove <asm/delay.h>
Content-Language: en-GB
To: Oleksii Kurochko <oleksii.kurochko@gmail.com>,
 xen-devel@lists.xenproject.org
Cc: Jan Beulich <jbeulich@suse.com>,
 Stefano Stabellini <sstabellini@kernel.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>,
 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>
References: <a9eb7c50e99db286d011169030c6ef1d92f3da23.1698747162.git.oleksii.kurochko@gmail.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <a9eb7c50e99db286d011169030c6ef1d92f3da23.1698747162.git.oleksii.kurochko@gmail.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit



On 31/10/2023 10:12, Oleksii Kurochko wrote:
> <asm/delay.h> only declares udelay() function so udelay()
> declaration was moved to xen/delay.h.
> 
> For x86, __udelay() was renamed to udelay() and removed
> inclusion of <asm/delay.h> in x86 code.
> 
> Signed-off-by: Oleksii Kurochko <oleksii.kurochko@gmail.com>

For Arm:

Acked-by: Julien Grall <jgrall@amazon.com>

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Oct 31 17:58:41 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 17:58:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625993.975845 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxt0e-0007EY-LL; Tue, 31 Oct 2023 17:58:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625993.975845; Tue, 31 Oct 2023 17: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 1qxt0e-0007ER-Ia; Tue, 31 Oct 2023 17:58:36 +0000
Received: by outflank-mailman (input) for mailman id 625993;
 Tue, 31 Oct 2023 17:58:35 +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 1qxt0d-0007EL-TS
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 17:58:35 +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 1qxt0c-0002Zq-A2; Tue, 31 Oct 2023 17:58: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 1qxt0b-00019u-RY; Tue, 31 Oct 2023 17:58: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=1LZoyg8NMGTTiGhlElcOXDyEmLOGdSpNM0rk0Qkxolw=; b=qIh+7GKcEzVFhCkFIJbdp6FBh6
	xfPPGjC9YXJvdV7/c7lHdZY8mrH4Z0Kyl8cVF4/O7WqpMmlWAX4AG0HT0h2hg7pfoY9RoTPXyNqSs
	9YjxUAmUJf+8gs9qQrOqGrZE5csQn5ZAD57CiPPDR1OnUlpXg2y4Bj/MELZ33gnGhXDQ=;
Message-ID: <a4f3dd98-440e-44d6-9120-5949a04d59f4@xen.org>
Date: Tue, 31 Oct 2023 17:58:31 +0000
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v2] xen: remove <asm/delay.h>
Content-Language: en-GB
To: Oleksii Kurochko <oleksii.kurochko@gmail.com>,
 xen-devel@lists.xenproject.org
Cc: Jan Beulich <jbeulich@suse.com>,
 Stefano Stabellini <sstabellini@kernel.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>,
 Shawn Anastasio <sanastasio@raptorengineering.com>,
 =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>
References: <3d55bce44bd6ab9973cbe0ea2fc136cc44d35df2.1698759633.git.oleksii.kurochko@gmail.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <3d55bce44bd6ab9973cbe0ea2fc136cc44d35df2.1698759633.git.oleksii.kurochko@gmail.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit



On 31/10/2023 14:28, Oleksii Kurochko wrote:
> <asm/delay.h> only declares udelay() function so udelay()
> declaration was moved to xen/delay.h.
> 
> For x86, __udelay() was renamed to udelay() and removed
> inclusion of <asm/delay.h> in x86 code.
> 
> For ppc, udelay() stub definition was moved to ppc/stubs.c.
> 
> Suggested-by: Jan Beulich <jbeulich@suse.com>
> Signed-off-by: Oleksii Kurochko <oleksii.kurochko@gmail.com>
> Reviewed-by: Jan Beulich <jbeulich@suse.com>

For Arm:

Acked-by: Julien Grall <jgrall@amazon.com>

Cheers,

> ---
> Changes in v2:
>   - rebase on top of the latest staging.
>   - add Suggested-by:/Reviewed-by: Jan Beulich <jbeulich@suse.com>.
>   - remove <asm/delay.h> for PPC.
>   - remove changes related to RISC-V's <asm/delay.h> as they've not
>     introduced in staging branch yet.
> ---
>   xen/arch/arm/include/asm/delay.h  | 14 --------------
>   xen/arch/ppc/include/asm/delay.h  | 12 ------------
>   xen/arch/ppc/stubs.c              |  7 +++++++
>   xen/arch/x86/cpu/microcode/core.c |  2 +-
>   xen/arch/x86/delay.c              |  2 +-
>   xen/arch/x86/include/asm/delay.h  | 13 -------------
>   xen/include/xen/delay.h           |  2 +-
>   7 files changed, 10 insertions(+), 42 deletions(-)
>   delete mode 100644 xen/arch/arm/include/asm/delay.h
>   delete mode 100644 xen/arch/ppc/include/asm/delay.h
>   delete mode 100644 xen/arch/x86/include/asm/delay.h
> 
> diff --git a/xen/arch/arm/include/asm/delay.h b/xen/arch/arm/include/asm/delay.h
> deleted file mode 100644
> index 042907d9d5..0000000000
> --- a/xen/arch/arm/include/asm/delay.h
> +++ /dev/null
> @@ -1,14 +0,0 @@
> -#ifndef _ARM_DELAY_H
> -#define _ARM_DELAY_H
> -
> -extern void udelay(unsigned long usecs);
> -
> -#endif /* defined(_ARM_DELAY_H) */
> -/*
> - * Local variables:
> - * mode: C
> - * c-file-style: "BSD"
> - * c-basic-offset: 4
> - * indent-tabs-mode: nil
> - * End:
> - */
> diff --git a/xen/arch/ppc/include/asm/delay.h b/xen/arch/ppc/include/asm/delay.h
> deleted file mode 100644
> index da6635888b..0000000000
> --- a/xen/arch/ppc/include/asm/delay.h
> +++ /dev/null
> @@ -1,12 +0,0 @@
> -/* 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/stubs.c b/xen/arch/ppc/stubs.c
> index 4c276b0e39..a96e45626d 100644
> --- a/xen/arch/ppc/stubs.c
> +++ b/xen/arch/ppc/stubs.c
> @@ -337,3 +337,10 @@ int __init parse_arch_dom0_param(const char *s, const char *e)
>   {
>       BUG_ON("unimplemented");
>   }
> +
> +/* delay.c */
> +
> +void udelay(unsigned long usecs)
> +{
> +    BUG_ON("unimplemented");
> +}
> diff --git a/xen/arch/x86/cpu/microcode/core.c b/xen/arch/x86/cpu/microcode/core.c
> index 65ebeb50de..22d5e04552 100644
> --- a/xen/arch/x86/cpu/microcode/core.c
> +++ b/xen/arch/x86/cpu/microcode/core.c
> @@ -23,6 +23,7 @@
>   
>   #include <xen/alternative-call.h>
>   #include <xen/cpu.h>
> +#include <xen/delay.h>
>   #include <xen/earlycpio.h>
>   #include <xen/err.h>
>   #include <xen/guest_access.h>
> @@ -35,7 +36,6 @@
>   
>   #include <asm/apic.h>
>   #include <asm/cpu-policy.h>
> -#include <asm/delay.h>
>   #include <asm/nmi.h>
>   #include <asm/processor.h>
>   #include <asm/setup.h>
> diff --git a/xen/arch/x86/delay.c b/xen/arch/x86/delay.c
> index 2662c26272..b3a41881a1 100644
> --- a/xen/arch/x86/delay.c
> +++ b/xen/arch/x86/delay.c
> @@ -15,7 +15,7 @@
>   #include <asm/msr.h>
>   #include <asm/processor.h>
>   
> -void __udelay(unsigned long usecs)
> +void udelay(unsigned long usecs)
>   {
>       unsigned long ticks = usecs * (cpu_khz / 1000);
>       unsigned long s, e;
> diff --git a/xen/arch/x86/include/asm/delay.h b/xen/arch/x86/include/asm/delay.h
> deleted file mode 100644
> index 9be2f46590..0000000000
> --- a/xen/arch/x86/include/asm/delay.h
> +++ /dev/null
> @@ -1,13 +0,0 @@
> -#ifndef _X86_DELAY_H
> -#define _X86_DELAY_H
> -
> -/*
> - * Copyright (C) 1993 Linus Torvalds
> - *
> - * Delay routines calling functions in arch/i386/lib/delay.c
> - */
> -
> -extern void __udelay(unsigned long usecs);
> -#define udelay(n) __udelay(n)
> -
> -#endif /* defined(_X86_DELAY_H) */
> diff --git a/xen/include/xen/delay.h b/xen/include/xen/delay.h
> index 9150226271..8fd3b8f99f 100644
> --- a/xen/include/xen/delay.h
> +++ b/xen/include/xen/delay.h
> @@ -3,7 +3,7 @@
>   
>   /* Copyright (C) 1993 Linus Torvalds */
>   
> -#include <asm/delay.h>
> +void udelay(unsigned long usecs);
>   
>   static inline void mdelay(unsigned long msec)
>   {

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Oct 31 18:29:37 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 18:29:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.625998.975855 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxtUP-0006Dp-0x; Tue, 31 Oct 2023 18:29:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 625998.975855; Tue, 31 Oct 2023 18: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 1qxtUO-0006Di-UQ; Tue, 31 Oct 2023 18:29:20 +0000
Received: by outflank-mailman (input) for mailman id 625998;
 Tue, 31 Oct 2023 18:29:19 +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 1qxtUN-0006Dc-HF
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 18:29:19 +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 1qxtUN-0003Ls-0C; Tue, 31 Oct 2023 18:29: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 1qxtUM-0002UF-Qg; Tue, 31 Oct 2023 18:29: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=2nzn+pwa9gtmFfoi64MK5wKwmYRZIZY4pyJqT0MLR+8=; b=YqwvQ6fuMfn42WKOqQgQaIATGh
	CrioUYC4MqmeheVAZjRUeQQKZL/DAvFQebK7i54wEaZpE5BnzMFnWXDbLuxC1R1HYBd6eXm3kIzlZ
	w8uwdIvZiNhqlJhUPdHOdgcOR2b5oiUDUQdRRjjWTQsebg7S1Eu8uNtj45ZYW2JNtyAw=;
Message-ID: <f098a07d-fa19-4b40-bfac-7b121524382a@xen.org>
Date: Tue, 31 Oct 2023 18:29:16 +0000
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v8 3/8] xen/arm: Fold mmu_init_secondary_cpu() to head.S
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>,
 Penny Zheng <penny.zheng@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Julien Grall <jgrall@amazon.com>,
 Ayan Kumar Halder <ayan.kumar.halder@amd.com>
References: <20231023021345.1731436-1-Henry.Wang@arm.com>
 <20231023021345.1731436-4-Henry.Wang@arm.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <20231023021345.1731436-4-Henry.Wang@arm.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi Henry,

+Ayan

On 23/10/2023 03:13, 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.
> 
> For arm32, introduce an assembly macro pt_enforce_wxn. The macro is
> called before secondary CPUs jumping into the C world.
> 
> For arm64, set the SCTLR_Axx_ELx_WXN flag right when the MMU is
> enabled. This would avoid the extra TLB flush and SCTLR dance.

For a random reader, it is not clear why you can't set WnX early for 
arm32 as well. I think it would helpful to explain the difference. I.e. 
at the point the MMU is enabled, the page-tables may still contain 
mapping which are writable and executable.

> 
> Signed-off-by: Henry Wang <Henry.Wang@arm.com>
> Co-authored-by: Julien Grall <jgrall@amazon.com>
> Signed-off-by: Julien Grall <jgrall@amazon.com>
> ---
> v8:
> - Change the setting of SCTLR_Axx_ELx_WXN for arm64 to set the
>    flag right when the MMU is enabled.
> v7:
> - No change.
> v6:
> - New patch.
> ---
>   xen/arch/arm/arm32/head.S     | 20 ++++++++++++++++++++
>   xen/arch/arm/arm64/mmu/head.S | 18 +++++++++++-------
>   xen/arch/arm/include/asm/mm.h |  2 --
>   xen/arch/arm/mm.c             |  6 ------
>   xen/arch/arm/smpboot.c        |  2 --
>   5 files changed, 31 insertions(+), 17 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

 From recent discussion on IRC, Ayan reminded me this patch [1]. 
Ideally, I would want to print a message just before to indicate that 
the bit is set. But I understand that this would need to be droppped in 
Ayan rework as we don't yet support early printk in enable_mmu().

While debugging an MMU issue on Arm32, I wrote a patch to sprinkle 
prints in the enable_mmu() code. I will clean-up the patch and send it.

I will add a print at that point. Meanwhile, I would move the call a few 
lines above? This will allow Ayan to drop [1].

>           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 88075ef083..df06cefbbe 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.

The inputs list should be updated to mention what x1 means.

>    *
> - * Clobbers x0 - x4
> + * Clobbers x0 - x6

Below, you only seem to introduce x5. So shouldn't this be: "Clobbers x0 
- x5"?

>    */
>   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,14 +323,15 @@ 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
>   
>           /*
> @@ -337,7 +341,7 @@ ENTRY(enable_boot_cpu_mm)
>           ldr   x0, =1f
>           br    x0
>   1:
> -        mov   lr, x5
> +        mov   lr, x6
>           /*
>            * 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
> diff --git a/xen/arch/arm/include/asm/mm.h b/xen/arch/arm/include/asm/mm.h
> index d25e59f828..163d22ecd3 100644
> --- a/xen/arch/arm/include/asm/mm.h
> +++ b/xen/arch/arm/include/asm/mm.h
> @@ -214,8 +214,6 @@ 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);
> -/* Switch secondary CPUS to its own pagetables and finalise MMU setup */
> -extern void mmu_init_secondary_cpu(void);
>   /*
>    * 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.
> diff --git a/xen/arch/arm/mm.c b/xen/arch/arm/mm.c
> index b7eb3a6e08..923a90925c 100644
> --- a/xen/arch/arm/mm.c
> +++ b/xen/arch/arm/mm.c
> @@ -326,12 +326,6 @@ void __init setup_pagetables(unsigned long boot_phys_offset)
>   #endif
>   }
>   
> -/* MMU setup for secondary CPUS (which already have paging enabled) */
> -void mmu_init_secondary_cpu(void)
> -{
> -    xen_pt_enforce_wnx();
> -}
> -
>   #ifdef CONFIG_ARM_32
>   /*
>    * Set up the direct-mapped xenheap:
> diff --git a/xen/arch/arm/smpboot.c b/xen/arch/arm/smpboot.c
> index ec76de3cac..beb137d06e 100644
> --- a/xen/arch/arm/smpboot.c
> +++ b/xen/arch/arm/smpboot.c
> @@ -361,8 +361,6 @@ void start_secondary(void)
>        */
>       update_system_features(&current_cpu_data);
>   
> -    mmu_init_secondary_cpu();
> -
>       gic_init_secondary_cpu();
>   
>       set_current(idle_vcpu[cpuid]);

Cheers,

[1] 
https://lore.kernel.org/all/20230911135942.791206-2-ayan.kumar.halder@amd.com/

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Oct 31 20:14:40 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 20:14:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.626003.975865 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxv86-0000PO-BM; Tue, 31 Oct 2023 20:14:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 626003.975865; Tue, 31 Oct 2023 20: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 1qxv86-0000PH-8d; Tue, 31 Oct 2023 20:14:26 +0000
Received: by outflank-mailman (input) for mailman id 626003;
 Tue, 31 Oct 2023 20: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 1qxv84-0000KS-4H; Tue, 31 Oct 2023 20: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 1qxv83-0005wc-Vo; Tue, 31 Oct 2023 20:14: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 1qxv83-0001fy-MO; Tue, 31 Oct 2023 20:14:23 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qxv83-0006JG-Lz; Tue, 31 Oct 2023 20:14: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=d8ZacTNYmJPTAYB5uIC0WLZbYLWbr4WDSO7whV7ihs8=; b=xOV+iS4VOIlMWlszNwQECQNrRB
	pamC90Jsoo0pKXeQ24DMDuoXvfiUNXWhkFbG1/+DZV3MI6aUybJJe5ef+KtGWdNh3GjNFl+FJmeKX
	+duamY5qcK6JOUofe6VvU/4SMjpyl4N6DWr6Uam0Q4KEoNXCjt35uPk5vcx0EcHvK1Lg=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183642-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 183642: 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=7befef87cc9b1bb8ca15d866ce1ecd9165ccb58c
X-Osstest-Versions-That:
    xen=9659b2a6d73b14620e187f9c626a09323853c459
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 31 Oct 2023 20:14:23 +0000

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

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                  7befef87cc9b1bb8ca15d866ce1ecd9165ccb58c
baseline version:
 xen                  9659b2a6d73b14620e187f9c626a09323853c459

Last test of basis   183618  2023-10-30 10:00:39 Z    1 days
Testing same since   183642  2023-10-31 17:00:27 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  David Woodhouse <dwmw@amazon.co.uk>
  Federico Serafini <federico.serafini@bugseng.com>
  Henry Wang <Henry.Wang@arm.com>
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.com>
  Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
  Nicola Vetrini <nicola.vetrini@bugseng.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
   9659b2a6d7..7befef87cc  7befef87cc9b1bb8ca15d866ce1ecd9165ccb58c -> smoke


From xen-devel-bounces@lists.xenproject.org Tue Oct 31 21:42:39 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 21:42:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.626009.975875 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxwVA-0004pY-LS; Tue, 31 Oct 2023 21:42:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 626009.975875; Tue, 31 Oct 2023 21:42: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 1qxwVA-0004pR-Hy; Tue, 31 Oct 2023 21:42:20 +0000
Received: by outflank-mailman (input) for mailman id 626009;
 Tue, 31 Oct 2023 21:42: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=YC+N=GN=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qxwV8-0004pL-CQ
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 21:42:18 +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 5a0ab803-7836-11ee-9b0e-b553b5be7939;
 Tue, 31 Oct 2023 22:42:14 +0100 (CET)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by sin.source.kernel.org (Postfix) with ESMTP id B863BCE0B33;
 Tue, 31 Oct 2023 21:42:09 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 11B6AC433C7;
 Tue, 31 Oct 2023 21:42: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: 5a0ab803-7836-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1698788529;
	bh=mI1MR8jy+vjBKrxG8UnQuAIQSUVNiA1NAl7Wzvfucrk=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=hkEt9qt10y5ue5LZMJYz5Apv7SOG3WoE2tX1zdyKS07CyOAy3+l/LefaLJPlxER4g
	 zx2HIujMMrwF4Xsd/y+0gRJ+7OPW9kAdN3VlCDoxGASNLSzIg2cFtUe6YFau4DhxOW
	 xvbvFvCROAnmRSCMpOcuMaSznMtCvzJENfvko80wZIs+vYMxVbhIOUScR6a3aBBgLD
	 OtuPQFBpWSlwPYsf2jmqzD/hXmioUPzqD/lgrAdA7uHeii7Smvur1Eywu/fZrZyXwr
	 QdcqksJfAvx8abZWXBodAuCrcZ+dZuEMX2gcDEw9edmpXrGsI521eblpR7AVGPQcCx
	 dPFh7qFII/JEw==
Date: Tue, 31 Oct 2023 14:41: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>, 
    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, jbeulich@suse.com, andrew.cooper3@citrix.com, 
    roger.pau@citrix.com, Simone Ballarin <simone.ballarin@bugseng.com>, 
    Doug Goldstein <cardoe@cardoe.com>, 
    George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>
Subject: Re: [XEN PATCH][for-4.19 v5] xen: Add deviations for MISRA C:2012
 Rule 7.1
In-Reply-To: <ee3c415d-bedd-432e-bf31-6e806b9cf976@xen.org>
Message-ID: <alpine.DEB.2.22.394.2310311441530.1795129@ubuntu-linux-20-04-desktop>
References: <0c86b50a796ba2aaab01e30935ed559ab719d33a.1698418578.git.nicola.vetrini@bugseng.com> <98da41d4-f818-44c7-bd3c-b3e3b224ff0d@xen.org> <alpine.DEB.2.22.394.2310301544460.1625118@ubuntu-linux-20-04-desktop>
 <ee3c415d-bedd-432e-bf31-6e806b9cf976@xen.org>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Tue, 30 Oct 2023, Julien Grall wrote:
> Hi Stefano,
> 
> On 30/10/2023 22:49, Stefano Stabellini wrote:
> > On Mon, 30 Oct 2023, Julien Grall wrote:
> > > Hi Nicola,
> > > 
> > > On 27/10/2023 16:11, Nicola Vetrini wrote:
> > > > diff --git a/docs/misra/deviations.rst b/docs/misra/deviations.rst
> > > > index 8511a189253b..8aaaa1473fb4 100644
> > > > --- a/docs/misra/deviations.rst
> > > > +++ b/docs/misra/deviations.rst
> > > > @@ -90,6 +90,13 @@ Deviations related to MISRA C:2012 Rules:
> > > >             - __emulate_2op and __emulate_2op_nobyte
> > > >             - read_debugreg and write_debugreg
> > > >    +   * - R7.1
> > > > +     - It is safe to use certain octal constants the way they are
> > > > defined
> > > > +       in specifications, manuals, and algorithm descriptions. Such
> > > > places
> > > > +       are marked safe with a /\* octal-ok \*/ in-code comment, or with
> > > > a
> > > > SAF
> > > > +       comment (see safe.json).
> > > 
> > > Reading this, it is unclear to me why we have two ways to deviate the rule
> > > r7.1. And more importantely, how would the developper decide which one to
> > > use?
> > 
> > I agree with you on this and we were discussing this topic just this
> > morning in the FUSA community call. I think we need a way to do this
> > with the SAF framework:
> > 
> > if (some code with violation) /* SAF-xx-safe */
> > 
> > This doesn't work today unfortunately. It can only be done this way:
> > 
> > /* SAF-xx-safe */
> > if (some code with violation)
> > 
> > Which is not always desirable. octal-ok is just an ad-hoc solution for
> > one specific violation but we need a generic way to do this. Luca is
> > investigating possible ways to support the previous format in SAF.
> 
> Why can't we use octal-ok everywhere for now?

I think this is a good option for now, yes


> My point here is to make simple for the developper to know what to use.
>
> > 
> > I think we should take this patch for now and harmonize it once SAF is
> > improved.
> 
> The description of the deviation needs some improvement.

+1


> To give an example,
> with the current wording, one could they can use octal-ok everywhere. But
> above, you are implying that SAF-xx-safe should be
> preferred.
> 
> I would still strongly prefer if we use octal-ok everywhere because this is
> simple to remember. But if the other are happy to have both SAF-XX and
> octal-ok, then the description needs to be completely unambiguous and the
> patch should contain some explanation why we have two different ways to
> deviate.

I think we could say "octal-ok" only and not mention SAF. As you can see
from the other messages we still have work to do on SAF to be able to
use it the way we would like to use it.


From xen-devel-bounces@lists.xenproject.org Tue Oct 31 21:47:53 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 21:47:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.626013.975884 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxwaT-0005s7-7Q; Tue, 31 Oct 2023 21:47:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 626013.975884; Tue, 31 Oct 2023 21:47: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 1qxwaT-0005s0-4l; Tue, 31 Oct 2023 21:47:49 +0000
Received: by outflank-mailman (input) for mailman id 626013;
 Tue, 31 Oct 2023 21:47: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=YC+N=GN=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qxwaS-0005ru-16
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 21:47:48 +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 1ff2ab40-7837-11ee-9b0e-b553b5be7939;
 Tue, 31 Oct 2023 22:47:46 +0100 (CET)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by dfw.source.kernel.org (Postfix) with ESMTP id 506F760ABD;
 Tue, 31 Oct 2023 21:47:44 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 2A5CDC433C8;
 Tue, 31 Oct 2023 21:47: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: 1ff2ab40-7837-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1698788863;
	bh=+rvq3UpfqYgfolrpvrh9qAsJleDdkrgxqpPvYr5m8So=;
	h=Date:From:To:cc:Subject:From;
	b=ofATGFK/8dK+QbOBlplzx4YVjrzjJmPYGBrXrie5KZ1K/M8nWdSE3fOAIUXy1z2c0
	 uiiy8vwVaWfOjWSdXenaFTEQ7lw77op9DGXvW9U4jAXMRyb04hhKkY8TkmhQ6RWU3K
	 uddlC99VuqUUgGetAGnbiYPnKJIkMSgFCIXhDL4ns/i+z6zk4KHUeCZieFocaN5oUP
	 /raqbAgq204AMAHfZaFklB3hokF2EsRdkokZvjghpTPjQpCZ3KRMwjIU9Rs7gqVR8C
	 oBahEnCV69a41++mqNdkxgpF/n+GOdhloSYM9yOtpDekV/Tiyx0Nj51qqarPa8MeeJ
	 kpjeQ5fX1E7lQ==
Date: Tue, 31 Oct 2023 14:47:42 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: simone.ballarin@bugseng.com
cc: sstabellini@kernel.org, consulting@bugseng.com, 
    xen-devel@lists.xenproject.org, andrew.cooper3@citrix.com
Subject: Failing eclair-ARM64 job
Message-ID: <alpine.DEB.2.22.394.2310311443460.1795129@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

Hi Simone,

As you might have noticed, all the eclair-ARM64 jobs have been failing
recently for the upstream Xen "staging" branch:

https://gitlab.com/xen-project/xen/-/pipelines/1056527466
https://gitlab.com/xen-project/xen/-/pipelines/1056520898

Although eclair-ARM64 is "allow_failure: true" still is the only job
currently failing and it would be nice to get it fixed, especially as we
are about to make gitlab-ci pipelines gating.

Cheers,

Stefano


From xen-devel-bounces@lists.xenproject.org Tue Oct 31 22:47:14 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 22:47:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.626017.975894 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxxVj-0006Wx-Ez; Tue, 31 Oct 2023 22:46:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 626017.975894; Tue, 31 Oct 2023 22: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 1qxxVj-0006Wq-C5; Tue, 31 Oct 2023 22:46:59 +0000
Received: by outflank-mailman (input) for mailman id 626017;
 Tue, 31 Oct 2023 22:46: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 1qxxVi-0006Wg-Pf; Tue, 31 Oct 2023 22:46: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 1qxxVi-0001DI-A0; Tue, 31 Oct 2023 22:46: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 1qxxVh-0001zR-VQ; Tue, 31 Oct 2023 22:46:58 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qxxVh-0003iB-V1; Tue, 31 Oct 2023 22:46: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=M4PitbSHUTDgJa9jKykFCJz4RsO9AaFzTVHrPlkOiy4=; b=F0pyQik0eCHHON2X/oAQsLClVd
	J/Rmgt57IfTScp9UFdgmEiilTs7SgVLmbrRXrQofaic5AJ5eZmaq6FXB7hOOiol5dJWVqLQE7Gsc6
	xdeip4NalQ6t+WMt0AZdUoRsJQGeJHXfCbd9c69sqv7CRxxsBcswAOxKiEKqIAwZYmkc=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183636-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 183636: regressions - FAIL
X-Osstest-Failures:
    linux-linus:test-arm64-arm64-examine:reboot:fail:regression
    linux-linus:test-arm64-arm64-libvirt-xsm:xen-boot:fail:regression
    linux-linus:test-arm64-arm64-xl-credit1:xen-boot:fail:regression
    linux-linus:test-arm64-arm64-xl-credit2:xen-boot:fail:regression
    linux-linus:test-arm64-arm64-xl-thunderx:xen-boot:fail:regression
    linux-linus:test-arm64-arm64-xl:xen-boot:fail:regression
    linux-linus:test-arm64-arm64-xl-vhd:xen-boot:fail:regression
    linux-linus:test-arm64-arm64-libvirt-raw:xen-boot:fail:regression
    linux-linus:test-arm64-arm64-xl-xsm:xen-boot:fail:regression
    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-armhf-armhf-libvirt: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:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-xsm:migrate-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-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-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:saverestore-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-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-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: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-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=5a6a09e97199d6600d31383055f9d43fbbcbe86f
X-Osstest-Versions-That:
    linux=ffc253263a1375a65fa6c9f62a893e9767fbebfa
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 31 Oct 2023 22:46:57 +0000

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

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-arm64-arm64-examine      8 reboot                   fail REGR. vs. 183617
 test-arm64-arm64-libvirt-xsm  8 xen-boot                 fail REGR. vs. 183617
 test-arm64-arm64-xl-credit1   8 xen-boot                 fail REGR. vs. 183617
 test-arm64-arm64-xl-credit2   8 xen-boot                 fail REGR. vs. 183617
 test-arm64-arm64-xl-thunderx  8 xen-boot                 fail REGR. vs. 183617
 test-arm64-arm64-xl           8 xen-boot                 fail REGR. vs. 183617
 test-arm64-arm64-xl-vhd       8 xen-boot                 fail REGR. vs. 183617
 test-arm64-arm64-libvirt-raw  8 xen-boot                 fail REGR. vs. 183617
 test-arm64-arm64-xl-xsm       8 xen-boot                 fail REGR. vs. 183617

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183617
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183617
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183617
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183617
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183617
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183617
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183617
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183617
 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-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-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-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-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     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-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                5a6a09e97199d6600d31383055f9d43fbbcbe86f
baseline version:
 linux                ffc253263a1375a65fa6c9f62a893e9767fbebfa

Last test of basis   183617  2023-10-30 08:36:55 Z    1 days
Failing since        183625  2023-10-31 02:27:44 Z    0 days    2 attempts
Testing same since   183636  2023-10-31 12:42:21 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  "Darrick J. Wong" <djwong@kernel.org>
  "Eric W. Biederman" <ebiederm@xmission.com>
  "Gustavo A. R. Silva" <gustavoars@kernel.org>
  "Kuyo Chang (張建文)" <Kuyo.Chang@mediatek.com>
  "Md. Haris Iqbal" <haris.iqbal@ionos.com>
  "Peter Zijlstra (Intel)" <peterz@infradead.org>
  "Rafael J. Wysocki" <rafael@kernel.org>
  Aaron Lu <aaron.lu@intel.com>
  Aaron Plattner <aplattner@nvidia.com>
  Adam Dunlap <acdunlap@google.com>
  Alejandro Colomar <alx@kernel.org>
  Alexander Aring <aahringo@redhat.com>
  Alexander Shishkin <alexander.shishkin@linux.intel.com>
  Alexander Sverdlin <alexander.sverdlin@gmail.com>
  Alexandre Belloni <alexandre.belloni@bootlin.com>
  Alexey Dobriyan <adobriyan@gmail.com>
  Alice Ryhl <aliceryhl@google.com>
  Alison Schofield <alison.schofield@intel.com>
  Amir Goldstein <amir73il@gmail.com>
  Ammar Faizi <ammarfaizi2@gnuweeb.org>
  Anand Jain <anand.jain@oracle.com>
  Anders Roxell <anders.roxell@linaro.org>
  Anup Patel <apatel@ventanamicro.com>
  Ard Biesheuvel <ardb@kernel.org>
  Arnd Bergmann <arnd@arndb.de>
  Atul Kumar Pant <atulpant.linux@gmail.com>
  Azeem Shaikh <azeemshaikh38@gmail.com>
  Babu Moger <babu.moger@amd.com>
  Baolin Liu <liubaolin@kylinos.cn>
  Baoquan He <bhe@redhat.com>
  Barry Song <song.bao.hua@hisilicon.com>
  Ben Wolsieffer <ben.wolsieffer@hefring.com>
  Bernd Schubert <bschubert@ddn.com>
  Biju Das <biju.das.jz@bp.renesas.com>
  Binbin Wu <binbin.wu@linux.intel.com>
  Bjorn Helgaas <bhelgaas@google.com>
  Boris Burkov <boris@bur.io>
  Borislav Petkov (AMD) <bp@alien8.de>
  Borislav Petkov <bp@alien8.de>
  Brett Holman <bholman.devel@gmail.com>
  Brett Holman <bpholman5@gmail.com>
  Brian Foster <bfoster@redhat.com>
  Brian Gerst <brgerst@gmail.com>
  Catalin Marinas <catalin.marinas@arm.com>
  Chen Hanxiao <chenhx.fnst@fujitsu.com>
  Chen Yu <yu.c.chen@intel.com>
  Chengming Zhou <zhouchengming@bytedance.com>
  Chris Webb <chris@arachsys.com>
  Christian Brauner <brauner@kernel.org>
  Christian Brauner <christian.brauner@ubuntu.com>
  Christian Göttsche <cgzones@googlemail.com>
  Christoph Hellwig <hch@lst.de>
  Christoph Paasch <cpaasch@apple.com>
  Christophe JAILLET <christophe.jaillet@wanadoo.fr>
  Christopher James Halse Rogers <raof@ubuntu.com>
  Chuck Lever <chuck.lever@oracle.com>
  Colin Ian King <colin.i.king@gmail.com>
  Coly Li <colyli@suse.de>
  Conor Dooley <conor.dooley@microchip.com>
  Cuda-Chen <clh960524@gmail.com>
  Cyril Hrubis <chrubis@suse.cz>
  Dai Ngo <dai.ngo@oracle.com>
  Dan Carpenter <dan.carpenter@linaro.org>
  Dan Robertson <dan@dlrobertson.com>
  Daniel B. Hill <daniel@gluo.nz>
  Daniel Hill <daniel@gluo.nz>
  Daniel Lezcano <daniel.lezcano@linaro.org>
  Dave Hansen <dave.hansen@linux.intel.com>
  Dave Kleikamp <dave.kleikamp@oracle.com>
  David Hildenbrand <david@redhat.com>
  David Howells <dhowells@redhat.com>
  David Kaplan <david.kaplan@amd.com>
  David Reaver <me@davidreaver.com>
  David Sterba <dsterba@suse.com>
  Denis Arefev <arefev@swemel.ru>
  Derick Marks <derick.w.marks@intel.com>
  Dominique Martinet <asmadeus@codewreck.org>
  Elena Reshetova <elena.reshetova@intel.com>
  Elliot Berman <quic_eberman@quicinc.com>
  Eric Biggers <ebiggers@google.com>
  Eric W. Biederman <ebiederm@xmission.com>
  Fan Yu <fan.yu9@zte.com.cn>
  Fangrui Song <maskray@google.com>
  Feng Tang <feng.tang@intel.com>
  Fenghua Yu <fenghua.yu@intel.com>
  Filipe Manana <fdmanana@suse.com>
  Finn Thain <fthain@linux-m68k.org>
  Frederic Weisbecker <frederic@kernel.org>
  Gao Xiang <hsiangkao@linux.alibaba.com>
  Gary Guo <gary@garyguo.net>
  Gautham R. Shenoy <gautham.shenoy@amd.com>
  Geert Uytterhoeven <geert@linux-m68k.org>
  Greg Kroah-Hartman <gregkh@linuxfoundation.org>
  Greg Ungerer <gerg@kernel.org>
  Guenter Roeck <linux@roeck-us.net>
  Guo Ren <guoren@kernel.org>
  Guo Ren <guoren@linux.alibaba.com>
  GUO Zihua <guozihua@huawei.com>
  Gustavo A. R. Silva <gustavoars@kernel.org>
  H. Peter Anvin (Intel) <hpa@zytor.com>
  Haifeng Xu <haifeng.xu@shopee.com>
  Hans de Goede <hdegoede@redhat.com>
  Hao Jia <jiahao.os@bytedance.com>
  Harshit Mogalapalli <harshit.m.mogalapalli@oracle.com>
  Heiko Carstens <hca@linux.ibm.com>
  Herve Codina <herve.codina@bootlin.com>
  Hou Wenlong <houwenlong.hwl@antgroup.com>
  Huacai Chen <chenhuacai@loongson.cn>
  Hugh Dickins <hughd@google.com>
  Hunter Shaffer <huntershaffer182456@gmail.com>
  Ian Kent <raven@themaw.net>
  Ilya Dryomov <idryomov@gmail.com>
  Ingo Molnar <mingo@kernel.org>
  Ivaylo Dimitrov <ivo.g.dimitrov.75@gmail.com>
  Jacky Bai <ping.bai@nxp.com>
  Jacob Satterfield <jsatterfield.linux@gmail.com>
  Jacob Xu <jacobhxu@google.com>
  Jakub Kicinski <kuba@kernel.org>
  Jan Kara <jack@suse.cz>
  Janpieter Sollie <janpieter.sollie@edpnet.be>
  Jarkko Sakkinen <jarkko@kernel.org>
  Jeff Layton <jlayton@kernel.org>
  Jens Wiklander <jens.wiklander@linaro.org>
  Jernej Skrabec <jernej.skrabec@gmail.com>
  Jianlin Li <ljianlin99@gmail.com>
  Jianyong Wu <jianyong.wu@arm.com>
  Jiapeng Chong <jiapeng.chong@linux.alibaba.com>
  Jiasheng Jiang <jiasheng@iscas.ac.cn>
  Jingbo Xu <jefflexu@linux.alibaba.com>
  Jo Van Bulck <jo.vanbulck@cs.kuleuven.be>
  Joel Fernandes (Google) <joel@joelfernandes.org>
  Johannes Thumshirn <johannes.thumshirn@wdc.com>
  John Stultz <jstultz@google.com>
  Josef Bacik <josef@toxicpanda.com>
  Josh Don <joshdon@google.com>
  Josh Poimboeuf <jpoimboe@kernel.org>
  Joshua Ashton <joshua@froggi.es>
  jpsollie <janpieter.sollie@edpnet.be>
  Juergen Gross <jgross@suse.com>
  Juri Lelli <juri.lelli@redhat.com>
  Justin Husted <sigstop@gmail.com>
  Justin Stitt <justinstitt@google.com>
  K Prateek Nayak <kprateek.nayak@amd.com>
  KaiLong Wang <wangkailong@jari.cn>
  Kamalesh Babulal <kamalesh.babulal@oracle.com>
  Kan Liang <kan.liang@linux.intel.com>
  Kees Cook <keescook@chromium.org>
  Keguang Zhang <keguang.zhang@gmail.com>
  Kent Overstreet <kent.overstreet@gmail.com>
  Kent Overstreet <kent.overstreet@linux.dev>
  Khadija Kamran <kamrankhadijadj@gmail.com>
  Kinglong Mee <kinglongmee@gmail.com>
  Kir Kolyshkin <kolyshkin@gmail.com>
  Klara Modin <klarasmodin@gmail.com>
  Koichiro Den <den@valinux.co.jp>
  Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>
  Laurent Vivier <laurent@vivier.eu>
  Leo Yu-Chi Liang <ycliang@andestech.com>
  Leonardo Bras <leobras@redhat.com>
  Li zeming <zeming@nfschina.com>
  Liming Wu <liming.wu@jaguarmicro.com>
  Linus Torvalds <torvalds@linux-foundation.org>
  Lizhi Xu <lizhi.xu@windriver.com>
  Lorenzo Bianconi <lorenzo@kernel.org>
  Lu Yao <yaolu@kylinos.cn>
  Lucy Mielke <lucymielke@icloud.com>
  Luiz Capitulino <luizcap@amazon.com>
  Lukas Bulwahn <lukas.bulwahn@gmail.com>
  Luís Henriques <lhenriques@suse.de>
  Maciej Wieczor-Retman <maciej.wieczor-retman@intel.com>
  Marco Elver <elver@google.com>
  Mario Casquero <mcasquer@redhat.com>
  Mark Rutland <mark.rutland@arm.com>
  Masahiro Yamada <masahiroy@kernel.org>
  Mateusz Guzik <mjguzik@gmail.com>
  Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
  Matthew Maurer <mmaurer@google.com>
  Matthew Wilcox (Oracle) <willy@infradead.org>
  Max Kellermann <max.kellermann@ionos.com>
  Max Kellermann <mk@cm4all.com>
  Mel Gorman <mgorman@suse.de>
  Mel Gorman <mgorman@techsingularity.net>
  Michael Ellerman <mpe@ellerman.id.au>
  Michael Kelley <mikelley@microsoft.com>
  Michal Hocko <mhocko@suse.com>
  Michal Simek <michal.simek@amd.com>
  Michal Suchanek <msuchanek@suse.de>
  Miguel Ojeda <ojeda@kernel.org>
  Mike Rapoport (IBM) <rppt@kernel.org>
  Mikulas Patocka <mpatocka@redhat.com>
  Muralidhara M K <muralidhara.mk@amd.com>
  Nathan Chancellor <nathan@kernel.org>
  Neeraj upadhyay <Neeraj.Upadhyay@amd.com>
  NeilBrown <neilb@suse.de>
  Nick Desaulniers <ndesaulniers@google.com>
  Nikita Shubin <nikita.shubin@maquefel.me>
  Nikolay Borisov <nik.borisov@suse.com>
  Olaf Hering <olaf@aepfle.de>
  Oleg Nesterov <oleg@redhat.com>
  Olexa Bilaniuk <obilaniu@gmail.com>
  pangzizhen001@208suo.com <pangzizhen001@208suo.com>
  Paolo Bonzini <pbonzini@redhat.com>
  Paul E. McKenney <paulmck@kernel.org>
  Paul Moore <paul@paul-moore.com>
  Pedro Falcato <pedro.falcato@gmail.com>
  Peter Newman <peternewman@google.com>
  Peter Zijlstra (Intel) <peterz@infradead.org>
  Peter Zijlstra <peterz@infradead.org>
  peterz@infradead.org <peterz@infradead.org>
  Pierre Gondois <Pierre.Gondois@arm.com>
  Pu Wen <puwen@hygon.cn>
  Qais Yousef (Google) <qyousef@layalina.io>
  Qais Yousef <qyousef@layalina.io>
  Qu Wenruo <wqu@suse.com>
  Rafael J. Wysocki <rafael.j.wysocki@intel.com>
  Raghavendra K T <raghavendra.kt@amd.com>
  Ran Xiaokai <ran.xiaokai@zte.com.cn>
  Randy Dunlap <rdunlap@infradead.org>
  Reinette Chatre <reinette.chatre@intel.com>
  Reuben Hawkins <reubenhwk@gmail.com>
  Ricardo Cañuelo <ricardo.canuelo@collabora.com>
  Rik van Riel <riel@surriel.com>
  Rob Herring <robh@kernel.org>
  Robbie Litchfield <blam.kiwi@gmail.com>
  Ronald Wahl <ronald.wahl@raritan.com>
  Ruan Jinjie <ruanjinjie@huawei.com>
  Sai Krishna Potthuri <sai.krishna.potthuri@amd.com>
  Sandipan Das <sandipan.das@amd.com>
  Saurabh Sengar <ssengar@linux.microsoft.com>
  Sebastian Andrzej Siewior <bigeasy@linutronix.de>
  Sebastian Ott <sebott@redhat.com>
  Serge Hallyn <serge@hallyn.com>
  Shrikanth Hegde <sshegde@linux.vnet.ibm.com>
  Shuai Xue <xueshuai@linux.alibaba.com>
  Shubhrajyoti Datta <shubhrajyoti.datta@amd.com>
  Sicong Huang <huangsicong@iie.ac.cn>
  Siddh Raman Pant <code@siddh.me>
  Sohil Mehta <sohil.mehta@intel.com>
  Song Liu <song@kernel.org>
  Steve Wahl <steve.wahl@hpe.com>
  Stijn Tintel <stijn@linux-ipv6.be>
  Suma Hegde <suma.hegde@amd.com>
  Sumit Garg <sumit.garg@linaro.org>
  Sunil V L <sunilvl@ventanamicro.com>
  Swapnil Sapkal <Swapnil.Sapkal@amd.com>
  Tan Shaopeng <tan.shaopeng@jp.fujitsu.com>
  Tejun Heo <tj@kernel.org>
  Tero Kristo <tero.kristo@linux.intel.com>
  Thomas Gleixner <tglx@linutronix.de>
  Thomas Weißschuh <linux@weissschuh.net>
  Tim Schlueter <schlueter.tim@linux.com>
  Tobias Geerinckx-Rice <me@tobias.gr>
  Torge Matthies <openglfreak@googlemail.com>
  Trond Myklebust <trond.myklebust@hammerspace.com>
  Tudor Ambarus <tudor.ambarus@linaro.org>
  Uros Bizjak <ubizjak@gmail.com>
  Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
  Valentin Schneider <vschneid@redhat.com>
  Vincent Guittot <vincent.guittot@linaro.org>
  Viresh Kumar <viresh.kumar@linaro.org>
  Vladimir Oltean <vladimir.oltean@nxp.com>
  Vlastimil Babka <vbabka@suse.cz>
  Waiman Long <longman@redhat.com>
  Wang Jinchao <wangjinchao@xfusion.com>
  Wedson Almeida Filho <walmeida@microsoft.com>
  Wei Zhang <zhangweilst@gmail.com>
  Will Deacon <will@kernel.org>
  Willy Tarreau <w@1wt.eu>
  Xin Li (Intel) <xin@zytor.com>
  Xiu Jianfeng <xiujianfeng@huawei.com>
  Xueshi Hu <xueshi.hu@smartx.com>
  Yajun Deng <yajun.deng@linux.dev>
  Yang Li <yang.lee@linux.alibaba.com>
  Yang Yang <yang.yang29@zte.com.cn>
  Yazen Ghannam <yazen.ghannam@amd.com>
  Yicong Yang <yangyicong@hisilicon.com>
  Yiwei Lin <s921975628@gmail.com>
  Yong He <alexyonghe@tencent.com>
  Yu Liao <liaoyu15@huawei.com>
  Yue Haibing <yuehaibing@huawei.com>
  YueHaibing <yuehaibing@huawei.com>
  Yuntao Wang <ytcoode@gmail.com>
  Yury Norov <yury.norov@gmail.com>
  Yuxuan Shui <yshuiv7@gmail.com>
  Zhang Rui <rui.zhang@intel.com>
  Zhen Lei <thunder.leizhen@huawei.com>
  Zhu Wang <wangzhu9@huawei.com>
  Zizhen Pang <pangzizhen001@208suo.com>
  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                                          fail    
 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                                 fail    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      fail    
 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                                  fail    
 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-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     fail    
 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                                 fail    
 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                                 fail    
 test-amd64-amd64-examine-uefi                                pass    
 test-amd64-amd64-xl-vhd                                      pass    
 test-arm64-arm64-xl-vhd                                      fail    
 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 58405 lines long.)


From xen-devel-bounces@lists.xenproject.org Tue Oct 31 22:57:12 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 22:57:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.626024.975905 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxxfW-0008V1-FS; Tue, 31 Oct 2023 22:57:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 626024.975905; Tue, 31 Oct 2023 22:57: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 1qxxfW-0008Uu-Cr; Tue, 31 Oct 2023 22:57:06 +0000
Received: by outflank-mailman (input) for mailman id 626024;
 Tue, 31 Oct 2023 22:57: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=YC+N=GN=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qxxfV-0008Uo-CN
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 22:57:05 +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 ce8698c4-7840-11ee-98d6-6d05b1d4d9a1;
 Tue, 31 Oct 2023 23:57:03 +0100 (CET)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by ams.source.kernel.org (Postfix) with ESMTP id E07ABB811EC;
 Tue, 31 Oct 2023 22:57:02 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 446E9C433C8;
 Tue, 31 Oct 2023 22:57: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: ce8698c4-7840-11ee-98d6-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1698793022;
	bh=HXCMDRt6Te9uTqyqfdhK7gyvfOxNnZTIYQI9MlWyjCI=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=sZgTJSJmeAczSfaOwQcY1p/++nEAtVQn4gcCvUhUfMerS2+bkANnd9XYGTBjnLXmS
	 Gm+duTkCw2TO92vnhgx+Zdh8qVlZn5IQG+KVqaaPoavD8QLv0QfAUHiFA0qz8slbyH
	 EAL1y//lM2DheTr19+S5pVnrlPGazPW4j663A/GgMkQBow67Y77Geq/yZApntAtATL
	 9u15vMIzovfVEOFVRdp9x7ZIbbnud6cuvWuFryymw4l8M614sluRVO4wpy9t5lo9mF
	 Dy6uWFHqsChuXT/iwGG4/WGQAbAyC3l63cdzrh/Mv4oQoW7RD8UkCgSwyVQ1XwJjHE
	 xMDibVoZhqLCQ==
Date: Tue, 31 Oct 2023 15:56: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: 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.cooper3@citrix.com, roger.pau@citrix.com, 
    Simone Ballarin <simone.ballarin@bugseng.com>, 
    Doug Goldstein <cardoe@cardoe.com>, 
    George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>, 
    Wei Liu <wl@xen.org>, Jun Nakajima <jun.nakajima@intel.com>, 
    Kevin Tian <kevin.tian@intel.com>, xen-devel@lists.xenproject.org
Subject: Re: [XEN PATCH][for-4.19 v5 2/8] x86: add deviation for asm-only
 functions
In-Reply-To: <cb448439-6966-4bcd-1aec-4cbfd1aeedf4@suse.com>
Message-ID: <alpine.DEB.2.22.394.2310311556460.1795129@ubuntu-linux-20-04-desktop>
References: <cover.1698655374.git.nicola.vetrini@bugseng.com> <79091a4e450b522aedfdd903ad671e705a933c49.1698655374.git.nicola.vetrini@bugseng.com> <20677a35-37ee-d959-78d5-d8f95f443912@suse.com> <0e96a194d77d89fbd65537b464664429@bugseng.com>
 <cb448439-6966-4bcd-1aec-4cbfd1aeedf4@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, 31 Oct 2023, Jan Beulich wrote:
> On 31.10.2023 09:22, Nicola Vetrini wrote:
> > On 2023-10-30 16:12, Jan Beulich wrote:
> >> On 30.10.2023 10:11, Nicola Vetrini wrote:
> >>> --- a/automation/eclair_analysis/ECLAIR/deviations.ecl
> >>> +++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
> >>> @@ -163,6 +163,15 @@ Therefore the absence of prior declarations is 
> >>> safe."
> >>>  -config=MC3R1.R8.4,reports+={safe, "first_area(any_loc(file(gcov)))"}
> >>>  -doc_end
> >>>
> >>> +-doc_begin="Recognize the occurrence of current_stack_pointer as a 
> >>> declaration."
> >>> +-file_tag+={asm_defns, "^xen/arch/x86/include/asm/asm_defns\\.h$"}
> >>> +-config=MC3R1.R8.4,declarations+={safe, 
> >>> "loc(file(asm_defns))&&^current_stack_pointer$"}
> >>> +-doc_end
> >>> +
> >>> +-doc_begin="asmlinkage is a marker to indicate that the function is 
> >>> only used from asm modules."
> >>> +-config=MC3R1.R8.4,declarations+={safe,"loc(text(^.*asmlinkage.*$, 
> >>> -1..0))"}
> >>> +-doc_end
> >>
> >> In the longer run asmlinkage will want using for functions used either 
> >> way
> >> between C and assembly (i.e. C->asm calls as well as asm->C ones). I'd 
> >> like
> >> to ask that the text please allow for that (e.g. s/from/to interface 
> >> with/).
> >>
> >>> --- a/xen/arch/x86/hvm/svm/intr.c
> >>> +++ b/xen/arch/x86/hvm/svm/intr.c
> >>> @@ -123,7 +123,7 @@ static void svm_enable_intr_window(struct vcpu *v, 
> >>> struct hvm_intack intack)
> >>>          vmcb, general1_intercepts | GENERAL1_INTERCEPT_VINTR);
> >>>  }
> >>>
> >>> -void svm_intr_assist(void)
> >>> +asmlinkage void svm_intr_assist(void)
> >>
> >> Nit (here and below): Attributes, unless impossible for some specific
> >> reason, should always go between type and identifier. Not all our code
> >> is conforming to that, but I think a majority is, and hence you should
> >> be able to find ample examples (taking e.g. __init).
> >>
> >>> --- a/xen/include/xen/compiler.h
> >>> +++ b/xen/include/xen/compiler.h
> >>> @@ -159,6 +159,9 @@
> >>>  # define ASM_FLAG_OUT(yes, no) no
> >>>  #endif
> >>>
> >>> +/* Mark a function or variable as used only from asm */
> >>> +#define asmlinkage
> >>
> >> I appreciate this being an immediately "natural" place, but considering
> >> what we know from Linux I think we ought to allow for arch overrides 
> >> here
> >> right away. For that I'm afraid compiler.h isn't best; it may still be
> >> okay as long as at least an #ifndef is put around it. Imo, however, 
> >> this
> >> ought to go into xen/linkage.h, as is being introduced by "common:
> >> assembly entry point type/size annotations". It's somewhat a shame that
> >> this and the rest of that series has missed 4.18 ...
> > 
> > An #ifndef around what, exactly?
> 
> The #define. That way at least an arch's config.h can override it.

I think the #ifdef is the way to go for now to reduce dependencies
between series


> > Anyway, making (part of) this series 
> > wait for approval
> > until the other has been accepted into 4.19 (for which I have no 
> > specific timeframe)
> > does not seem that desirable to me.
> 
> It's not ideal, but you or anyone else are free to help that other work
> make progress.


From xen-devel-bounces@lists.xenproject.org Tue Oct 31 23:04:44 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 23:04:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.626028.975914 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxxmi-0001o5-6b; Tue, 31 Oct 2023 23:04:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 626028.975914; Tue, 31 Oct 2023 23:04: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 1qxxmi-0001ny-45; Tue, 31 Oct 2023 23:04:32 +0000
Received: by outflank-mailman (input) for mailman id 626028;
 Tue, 31 Oct 2023 23: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=YC+N=GN=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qxxmg-0001ns-IE
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 23:04:30 +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 d721f3a9-7841-11ee-98d6-6d05b1d4d9a1;
 Wed, 01 Nov 2023 00:04:29 +0100 (CET)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by sin.source.kernel.org (Postfix) with ESMTP id 0DBCDCE0E6D;
 Tue, 31 Oct 2023 23:04:24 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 70398C433C7;
 Tue, 31 Oct 2023 23:04: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: d721f3a9-7841-11ee-98d6-6d05b1d4d9a1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1698793463;
	bh=OTNFot8+epoCjTdQ1IZQGB7Iad+dHZl9wibk5DnzkR8=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=aQ0Lb1sIdkslD4QEdooNu6ozFk+Q6uXrFJxXWKJXD+nmzcOKycNaOff+lt4ZecQKr
	 oTSouNYcLpOU3DTcaKtPvO/k6EOHsDN1FmBu2d2dPtkOkWjscXORJO34TOXF6Mi5p4
	 +PhxQoaWVsLTdFntaBJ+EUTjYVeMUcz9Ajcb4ksssKP5tGs5yAnOHz+6Yq2XSln1ni
	 r1Gre+DBWl/QZDggm3FoHg3KOTPA4a+vpAdYZBTrLe89EaOK7Kt6NQHFDZ3ecD1wqK
	 VX3P7Uq5TQjEgDOBDfVzYj4Qixx1mDHGI5pKCr19B4xTjpfn8lRfled8XWp5KHbsy+
	 a+vXXwB+ScZSQ==
Date: Tue, 31 Oct 2023 16:04:21 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Mario Marietto <marietto2008@gmail.com>
cc: sstabellini@kernel.org, xen-devel@lists.xenproject.org, 
    Julien Grall <julien@xen.org>, Bertrand Marquis <bertrand.marquis@arm.com>, 
    brchuckz@netscape.net
Subject: Re: exynos-mixer 14450000.mixer: [drm:exynos_drm_register_dma]
 *ERROR* Device 14450000.mixer lacks support for IOMMU
In-Reply-To: <CA+1FSiip1U0_EskJNgV3pSZPTCNOiTbpHosRLsy-6t1QQGd8Dw@mail.gmail.com>
Message-ID: <alpine.DEB.2.22.394.2310311557520.1795129@ubuntu-linux-20-04-desktop>
References: <CA+1FSiip1U0_EskJNgV3pSZPTCNOiTbpHosRLsy-6t1QQGd8Dw@mail.gmail.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

Hi Mario,

I am adding xen-devel and a couple of other Xen maintainers that might
know how to help make progress on this issues.

Replies inline below.


On Tue, 31 Oct 2023, Mario Marietto wrote:
> Hello,
> 
> We are a team of linux enthusiasts who are trying to boot Xen on a
> Samsung XE303C12 Chromebook aka "snow"
> following the suggestions in the slide show presentation here:
> 
> https://www.slideshare.net/xen_com_mgr/xpds16-porting-xen-on-arm-to-a-new-soc-julien-grall-arm
> 
> This device uses an exynos5250 SOC dual core 1.7 GHz with 2 MB RAM, it is
> a Samsung armv7 chip with virtualization extensions.
> 
> In particular, we have it working fairly well both on the bare metal with
> a recent 6.1.59 Linux LTS kernel and also with a recent 5.4.257 LTS
> kernel with KVM, the older LTS kernel version is used to test KVM because
> support for KVM on arm v7 was removed from Linux around kernel version
> 5.7. So we know we have the hypervisor mode enabled because we were able
> to use it with KVM.
> 
> For Xen, we are using the latest Debian build of Xen 4.17 for the Debian
> armhf architecture:
> 
> (XEN) Xen version 4.17.2-pre (Debian 4.17.1+2-gb773c48e36-1)
> (pkg-xen-devel@xxxxxxxxxxxxxxx
> xxxxxxxx) (arm-linux-gnueabihf-gcc (Debian
> 12.2.0-14) 12.2.0) debug=n Thu May 18 19:26:30 UTC 2023
> 
> The Linux kernel is a custom build that adds the Xen config kernel
> options (CONFIG_XEN_DOM0, etc) on top of a kernel that works well on the
> same Chromebook model on the bare metal. I can provide the config options
> of the kernel that was used if that is helpful.
> 
> Our method of booting is to have u-boot boot the Xen hypervisor and load
> the device tree after adding the dom0 to the otherwise unaltered device
> tree from the Linux kernel using u-boot fdt commands to add a /chosen
> node, as described on the Xen wiki and in the pages linked from there. We
> have also tried adding and loading an initrd.img using the device tree
> /chosen node but that made no difference in our tests.
> 
> We actually have the Linux LTS kernel version 6.1.59 working as dom0 with
> Xen using the same version of u-boot that we used for KVM, but with a big
> problem.
> 
> The problem we see is that when booting the 6.1.59 kernel version as dom0
> with Xen, the screen is totally dark and the only way to access the
> system is remotely through ssh. Logs indicate most everything else is
> working, such as the wifi card so we can access it remotely via ssh and a
> USB optical mouse lights up when connected so USB is also working.
> Obviously, the disk is also working. The Chromebook is configured to boot
> from the device's SD card slot by turning on Chrome OS developer mode
> options to enable booting from the SD card slot.
> 
> The mystery is that when booting the exact same 6.1.59 kernel on the bare
> metal instead of booting it as dom0 on Xen, it boots up with full access
> to the screen and we can interact with the system using the X.org windows
> system. But booting as dom0 with Xen, the screen is totally dark and the
> only access we have to the system is through the network via ssh. Also,
> when booting the 5.4.257 kernel with KVM in hypervisor mode, the screen
> works and we can interact with the system through the X.org windows
> system.
> 
> Exploring the log file,we have seen the errors below :
> 
> 
> With Xen (or in bare metal):
> 
> devuan-bunsen kernel: [drm] Exynos DRM: using 14400000.fimd device for
> DMA mapping operations
> devuan-bunsen kernel: exynos-drm exynos-drm: bound 14400000.fimd (ops
> 0xc0d96354)
> devuan-bunsen kernel: exynos-drm exynos-drm: bound 14450000.mixer (ops
> 0xc0d97554)
> devuan-bunsen kernel: exynos-drm exynos-drm: bound
> 145b0000.dp-controller (ops 0xc0d97278)
> devuan-bunsen kernel: exynos-drm exynos-drm: bound 14530000.hdmi (ops
> 0xc0d97bd0)
> ...
> devuan-bunsen kernel: Console: switching to colour frame buffer device 170x48
> devuan-bunsen kernel: exynos-drm exynos-drm: [drm] fb0: exynosdrmfb
> frame buffer device
> devuan-bunsen kernel: [drm] Initialized exynos 1.1.0 20180330 for
> exynos-drm on minor 0
> 
> In this case,the kernel is able to use the exynos-drm kernel to start
> the fb0 device. But with Xen we get this error with exynos-drm:
> 
> devuan-bunsen kernel: [drm] Exynos DRM: using 14400000.fimd device for
> DMA mapping operations
> devuan-bunsen kernel: exynos-drm exynos-drm: bound 14400000.fimd (ops
> 0xc0d96354)
> devuan-bunsen kernel: exynos-mixer 14450000.mixer:
> [drm:exynos_drm_register_dma] *ERROR* Device 14450000.mixer lacks
> support for IOMMU
> devuan-bunsen kernel: exynos-drm exynos-drm: failed to bind
> 14450000.mixer (ops 0xc0d97554): -22
> devuan-bunsen kernel: exynos-drm exynos-drm: adev bind failed: -22
> devuan-bunsen kernel: exynos-dp: probe of 145b0000.dp-controller
> failed with error -22
> 
> 
> Any ideas why booting the same Linux kernel that results in a working
> X.org display on the bare metal instead as dom0 on Xen would cause the
> display to remain dark, but most other basic functions would work, such
> as network, disk, and USB ? thanks.

I think the issue is that Linux 6.1.59 is using the IOMMU to get the GPU
to work. When running on top of Xen, the IOMMU is not available to
Linux. That's because the IOMMU is used by Xen to enforce protection
between VMs.

It might help to rebuild Linux without IOMMU support (remove the driver
from the kconfig) so that Linux cannot attempt to use the IOMMU.

Also see
https://marc.info/?l=xen-users&m=169844593525492


From xen-devel-bounces@lists.xenproject.org Tue Oct 31 23:10:51 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 23:10:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.626032.975925 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxxsj-0003Ui-Sq; Tue, 31 Oct 2023 23:10:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 626032.975925; Tue, 31 Oct 2023 23:10: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 1qxxsj-0003Ub-Pl; Tue, 31 Oct 2023 23:10:45 +0000
Received: by outflank-mailman (input) for mailman id 626032;
 Tue, 31 Oct 2023 23:10: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=YC+N=GN=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qxxsi-0003UV-LQ
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 23:10: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 b6493a10-7842-11ee-9b0e-b553b5be7939;
 Wed, 01 Nov 2023 00:10:42 +0100 (CET)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by dfw.source.kernel.org (Postfix) with ESMTP id CAD5C61147;
 Tue, 31 Oct 2023 23:10:40 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id A9588C433C9;
 Tue, 31 Oct 2023 23:10: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: b6493a10-7842-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1698793840;
	bh=psE4H2ilNOLqozfrEJ4l+wzP0s7P1sKN4tUwpE/Tc00=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=VHdLVN/dEW5yIkJ6hrZ+8h+aUPg/Q/Wu2HH7thZ1DxjAww1NSeZgKO2T+k96OLS0r
	 ZknfEp9MhWlJlZ0sSXCUIemJZHW03kV8A9dia7MezbNIVS/IYCtDUGK5eidtcgonK5
	 IwjKXKY9BWnJLrOYm4WYWpao6CYikLasYv3kDLtOy3A12dlpLEVb0WWL6/DOxqow1+
	 +E3pPSPhD1qStmEGrVBqVMuaE7vTkc42/phCeiNSixuIW/M0iy0vkEVnbHeePd8++U
	 tuqt82etKB5C65uqVLCfG9iYLtgusEEHmd7/W7jlJMcgVirM5qaCxa3zFGTwjvkpLX
	 yTv9NivvX64Ug==
Date: Tue, 31 Oct 2023 16:10:37 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Julien Grall <julien@xen.org>
cc: Jan Beulich <jbeulich@suse.com>, 
    Federico Serafini <federico.serafini@bugseng.com>, consulting@bugseng.com, 
    Stefano Stabellini <sstabellini@kernel.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
Subject: Re: [XEN PATCH v2] xen/domain_page: address violations of MISRA
 C:2012 Rule 8.3
In-Reply-To: <9a539156-9e11-43b7-9f62-0c1b1d842e89@xen.org>
Message-ID: <alpine.DEB.2.22.394.2310311609340.1795129@ubuntu-linux-20-04-desktop>
References: <d70e8e6b00f7b08ed4b360d38113e6a1460ed3ab.1698743361.git.federico.serafini@bugseng.com> <8aa755d3-7cba-9543-95fc-056f397c18ae@suse.com> <9a539156-9e11-43b7-9f62-0c1b1d842e89@xen.org>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Tue, 31 Oct 2023, Julien Grall wrote:
> Hi,
> 
> On 31/10/2023 10:31, Jan Beulich wrote:
> > On 31.10.2023 10:25, Federico Serafini wrote:
> > > Make function defintions and declarations consistent.
> 
> typo: s/defintions/definitions/
> 
> > > No functional change.
> > > 
> > > Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
> > 
> > Acked-by: Jan Beulich <jbeulich@suse.com>
> > 
> > However, ...
> > 
> > > ---
> > > Changes in v2:
> > > - use 'ptr' do denote a const void * parameter.
> > 
> > ... not even this (let alone the description) clarifies what the
> > inconsistency was. I had to go check to figure that x86 already uses
> > "ptr". Such things could do with spelling out.
> 
> +1. The more that x86 was the "odd" one but it was chosen to use the variant
> everywhere.
> 
> With the commit message clarified:
> 
> Acked-by: Julien Grall <jgrall@amazon.com>

I made the changes on commit to my for-4.19 branch (I am going to wait
until staging fully reopens before moving commits to staging).


From xen-devel-bounces@lists.xenproject.org Tue Oct 31 23:21:39 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 23:21:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.626036.975935 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxy38-0005iM-PR; Tue, 31 Oct 2023 23:21:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 626036.975935; Tue, 31 Oct 2023 23: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 1qxy38-0005iF-MX; Tue, 31 Oct 2023 23:21:30 +0000
Received: by outflank-mailman (input) for mailman id 626036;
 Tue, 31 Oct 2023 23: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=pIiO=GN=gmail.com=marietto2008@srs-se1.protection.inumbo.net>)
 id 1qxy37-0005i9-N8
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 23:21:29 +0000
Received: from mail-ed1-x52b.google.com (mail-ed1-x52b.google.com
 [2a00:1450:4864:20::52b])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 36fdee61-7844-11ee-9b0e-b553b5be7939;
 Wed, 01 Nov 2023 00:21:27 +0100 (CET)
Received: by mail-ed1-x52b.google.com with SMTP id
 4fb4d7f45d1cf-53e08b60febso10019875a12.1
 for <xen-devel@lists.xenproject.org>; Tue, 31 Oct 2023 16:21: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: 36fdee61-7844-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1698794486; x=1699399286; 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=+iuW/r6fepViRIYihXjozwaw+9fn+fvC/esjJU4/SD4=;
        b=Zd13mhQTuWh5M+s92ZfZX4YIKn6ri7XywGVMGENMaioswDOxDpFPYb6rnH3GPJv9Hl
         diJ5O94/dY/x7osrqGimkvPsiOH4Q5gCgpAOI0aeQyUCWRG33nk4+jwkdCXNqPBh8IGT
         0vWxGCnoEUdVoTEy7zc0YO10xM+IKY/FZAlnIZK2lfcOY69fMAIdDZBLvbukrkO7mhWE
         e6BXlkVJNO4tU7MvU1odS4Q07Nh31LL4J5G00RzQxieOW9lWsuanoz8RoFRwt8qD6ueL
         fHo/qg/fHG8hGG/6kmNzWC7/gTj5ALNyi9s7heUfkoeVzTRBWoZA5/ZAxVcxfFGCojhG
         muTA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1698794486; x=1699399286;
        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=+iuW/r6fepViRIYihXjozwaw+9fn+fvC/esjJU4/SD4=;
        b=WBfv+fj7TmhTIKFo6SSdCJWzgWqcTFUKDqALh+fi5fAVuWrpjfjZJSNBkiPfN3xd6d
         3+y5IFMFsjKG0vCSpjdpvVMOw0TQP7F67zjqjGk0XUntWG52VtzR5Oz63y3hRL/W8U5s
         GjZcizT3yjX/mTXLArMbnxhH/vhrYafiiN0Pl+d2XMRQ28H/CG/EXHpWyYH/uQMjI52v
         SStGwvwZTfLp2IR9HO+fV4NVEtI4+1XcTmG95ebKppSdKTKHO2Im5JdKQDIOQ9qb4GLG
         tiPhfJXGgibwF3CUB3z4il6g77hshVHCFmW2FFlYGVIFuqiTg5bKQberrXYZ0CnVcC+U
         wImA==
X-Gm-Message-State: AOJu0YxJdbNnpv8DzLGfmnQCRxRiRZX1GCPl52QVGFnBT+Kxjs8q6Uy4
	M8MtwkNj/1RwznG2cxisyi+zD0VUIIGgnXBSrQI=
X-Google-Smtp-Source: AGHT+IGC/7hMWPEfkg0gdSM/hF0VL18Fu0OC6ctDNhskZxn9vAv30p+v6fvRhjQGFbWA5tj5jASch8BXjfcOR/bPzyU=
X-Received: by 2002:a17:907:2cc3:b0:9bd:7f40:caa5 with SMTP id
 hg3-20020a1709072cc300b009bd7f40caa5mr403948ejc.77.1698794486324; Tue, 31 Oct
 2023 16:21:26 -0700 (PDT)
MIME-Version: 1.0
References: <CA+1FSiip1U0_EskJNgV3pSZPTCNOiTbpHosRLsy-6t1QQGd8Dw@mail.gmail.com>
 <alpine.DEB.2.22.394.2310311557520.1795129@ubuntu-linux-20-04-desktop>
In-Reply-To: <alpine.DEB.2.22.394.2310311557520.1795129@ubuntu-linux-20-04-desktop>
From: Mario Marietto <marietto2008@gmail.com>
Date: Wed, 1 Nov 2023 00:20:49 +0100
Message-ID: <CA+1FSih0hORYZf6Hfmf=nY4jkHPvFSgGfc1tJfzN6smnKxcsxA@mail.gmail.com>
Subject: Re: exynos-mixer 14450000.mixer: [drm:exynos_drm_register_dma]
 *ERROR* Device 14450000.mixer lacks support for IOMMU
To: Stefano Stabellini <sstabellini@kernel.org>
Cc: xen-devel@lists.xenproject.org, Julien Grall <julien@xen.org>, 
	Bertrand Marquis <bertrand.marquis@arm.com>, brchuckz@netscape.net
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

I'm aware of the presence of that post. I'm working on the same
project with the guy who explained the problem. Unfortunately,the
solution proposed does not work well. Xen is working,but the screen is
still black.

On Wed, Nov 1, 2023 at 12:04=E2=80=AFAM Stefano Stabellini
<sstabellini@kernel.org> wrote:
>
> Hi Mario,
>
> I am adding xen-devel and a couple of other Xen maintainers that might
> know how to help make progress on this issues.
>
> Replies inline below.
>
>
> On Tue, 31 Oct 2023, Mario Marietto wrote:
> > Hello,
> >
> > We are a team of linux enthusiasts who are trying to boot Xen on a
> > Samsung XE303C12 Chromebook aka "snow"
> > following the suggestions in the slide show presentation here:
> >
> > https://www.slideshare.net/xen_com_mgr/xpds16-porting-xen-on-arm-to-a-n=
ew-soc-julien-grall-arm
> >
> > This device uses an exynos5250 SOC dual core 1.7 GHz with 2 MB RAM, it =
is
> > a Samsung armv7 chip with virtualization extensions.
> >
> > In particular, we have it working fairly well both on the bare metal wi=
th
> > a recent 6.1.59 Linux LTS kernel and also with a recent 5.4.257 LTS
> > kernel with KVM, the older LTS kernel version is used to test KVM becau=
se
> > support for KVM on arm v7 was removed from Linux around kernel version
> > 5.7. So we know we have the hypervisor mode enabled because we were abl=
e
> > to use it with KVM.
> >
> > For Xen, we are using the latest Debian build of Xen 4.17 for the Debia=
n
> > armhf architecture:
> >
> > (XEN) Xen version 4.17.2-pre (Debian 4.17.1+2-gb773c48e36-1)
> > (pkg-xen-devel@xxxxxxxxxxxxxxx
> > xxxxxxxx) (arm-linux-gnueabihf-gcc (Debian
> > 12.2.0-14) 12.2.0) debug=3Dn Thu May 18 19:26:30 UTC 2023
> >
> > The Linux kernel is a custom build that adds the Xen config kernel
> > options (CONFIG_XEN_DOM0, etc) on top of a kernel that works well on th=
e
> > same Chromebook model on the bare metal. I can provide the config optio=
ns
> > of the kernel that was used if that is helpful.
> >
> > Our method of booting is to have u-boot boot the Xen hypervisor and loa=
d
> > the device tree after adding the dom0 to the otherwise unaltered device
> > tree from the Linux kernel using u-boot fdt commands to add a /chosen
> > node, as described on the Xen wiki and in the pages linked from there. =
We
> > have also tried adding and loading an initrd.img using the device tree
> > /chosen node but that made no difference in our tests.
> >
> > We actually have the Linux LTS kernel version 6.1.59 working as dom0 wi=
th
> > Xen using the same version of u-boot that we used for KVM, but with a b=
ig
> > problem.
> >
> > The problem we see is that when booting the 6.1.59 kernel version as do=
m0
> > with Xen, the screen is totally dark and the only way to access the
> > system is remotely through ssh. Logs indicate most everything else is
> > working, such as the wifi card so we can access it remotely via ssh and=
 a
> > USB optical mouse lights up when connected so USB is also working.
> > Obviously, the disk is also working. The Chromebook is configured to bo=
ot
> > from the device's SD card slot by turning on Chrome OS developer mode
> > options to enable booting from the SD card slot.
> >
> > The mystery is that when booting the exact same 6.1.59 kernel on the ba=
re
> > metal instead of booting it as dom0 on Xen, it boots up with full acces=
s
> > to the screen and we can interact with the system using the X.org windo=
ws
> > system. But booting as dom0 with Xen, the screen is totally dark and th=
e
> > only access we have to the system is through the network via ssh. Also,
> > when booting the 5.4.257 kernel with KVM in hypervisor mode, the screen
> > works and we can interact with the system through the X.org windows
> > system.
> >
> > Exploring the log file,we have seen the errors below :
> >
> >
> > With Xen (or in bare metal):
> >
> > devuan-bunsen kernel: [drm] Exynos DRM: using 14400000.fimd device for
> > DMA mapping operations
> > devuan-bunsen kernel: exynos-drm exynos-drm: bound 14400000.fimd (ops
> > 0xc0d96354)
> > devuan-bunsen kernel: exynos-drm exynos-drm: bound 14450000.mixer (ops
> > 0xc0d97554)
> > devuan-bunsen kernel: exynos-drm exynos-drm: bound
> > 145b0000.dp-controller (ops 0xc0d97278)
> > devuan-bunsen kernel: exynos-drm exynos-drm: bound 14530000.hdmi (ops
> > 0xc0d97bd0)
> > ...
> > devuan-bunsen kernel: Console: switching to colour frame buffer device =
170x48
> > devuan-bunsen kernel: exynos-drm exynos-drm: [drm] fb0: exynosdrmfb
> > frame buffer device
> > devuan-bunsen kernel: [drm] Initialized exynos 1.1.0 20180330 for
> > exynos-drm on minor 0
> >
> > In this case,the kernel is able to use the exynos-drm kernel to start
> > the fb0 device. But with Xen we get this error with exynos-drm:
> >
> > devuan-bunsen kernel: [drm] Exynos DRM: using 14400000.fimd device for
> > DMA mapping operations
> > devuan-bunsen kernel: exynos-drm exynos-drm: bound 14400000.fimd (ops
> > 0xc0d96354)
> > devuan-bunsen kernel: exynos-mixer 14450000.mixer:
> > [drm:exynos_drm_register_dma] *ERROR* Device 14450000.mixer lacks
> > support for IOMMU
> > devuan-bunsen kernel: exynos-drm exynos-drm: failed to bind
> > 14450000.mixer (ops 0xc0d97554): -22
> > devuan-bunsen kernel: exynos-drm exynos-drm: adev bind failed: -22
> > devuan-bunsen kernel: exynos-dp: probe of 145b0000.dp-controller
> > failed with error -22
> >
> >
> > Any ideas why booting the same Linux kernel that results in a working
> > X.org display on the bare metal instead as dom0 on Xen would cause the
> > display to remain dark, but most other basic functions would work, such
> > as network, disk, and USB ? thanks.
>
> I think the issue is that Linux 6.1.59 is using the IOMMU to get the GPU
> to work. When running on top of Xen, the IOMMU is not available to
> Linux. That's because the IOMMU is used by Xen to enforce protection
> between VMs.
>
> It might help to rebuild Linux without IOMMU support (remove the driver
> from the kconfig) so that Linux cannot attempt to use the IOMMU.
>
> Also see
> https://marc.info/?l=3Dxen-users&m=3D169844593525492



--
Mario.


From xen-devel-bounces@lists.xenproject.org Tue Oct 31 23:45:42 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 31 Oct 2023 23:45:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.626040.975945 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qxyQQ-0001ol-J3; Tue, 31 Oct 2023 23:45:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 626040.975945; Tue, 31 Oct 2023 23:45: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 1qxyQQ-0001oe-GB; Tue, 31 Oct 2023 23:45:34 +0000
Received: by outflank-mailman (input) for mailman id 626040;
 Tue, 31 Oct 2023 23:45: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=YC+N=GN=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qxyQO-0001oY-Hm
 for xen-devel@lists.xenproject.org; Tue, 31 Oct 2023 23:45:32 +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 91aeb79b-7847-11ee-9b0e-b553b5be7939;
 Wed, 01 Nov 2023 00:45:29 +0100 (CET)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by sin.source.kernel.org (Postfix) with ESMTP id 57544CE0B54;
 Tue, 31 Oct 2023 23:45:26 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id AB17FC433C8;
 Tue, 31 Oct 2023 23:45: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: 91aeb79b-7847-11ee-9b0e-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1698795925;
	bh=kqcos7j4JEeU3V0Tg7bZ4SAjEc3N05yDC/sQYDPXH8Y=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=BWh3pufIOOHwi8/0bBu8pFLaNcDIZuz0/hvH3Bz+qtexNLjRJmkr6YQmjThMV8c7e
	 LbKIk3ZhP+Z0QlQahAhm0a7fwCOwxaqEdb6A2LZoYAB6jPOxSyyIOiv5La7DHZ+mov
	 ESxsbLc6MtB1wr5svguMNrvbEreBBbR249hdRF9K4Srppz19/3EI4mlfPrF11awJ7A
	 7acGQXLNcdMAB4aeN5t/P1Y0ekX1AkxAl5aMe5lg49MH5gdrbDj7Hf6NlFMBkKJ0xD
	 u+St03xGhA22qubV2ZH1cYG3UmhBXWwP1dl7z8agZSG+TS8JoVJMHjjJaiMR34dQ8y
	 V84jylqm64mdA==
Date: Tue, 31 Oct 2023 16:45:23 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Mario Marietto <marietto2008@gmail.com>
cc: Stefano Stabellini <sstabellini@kernel.org>, 
    xen-devel@lists.xenproject.org, Julien Grall <julien@xen.org>, 
    Bertrand Marquis <bertrand.marquis@arm.com>, brchuckz@netscape.net
Subject: Re: exynos-mixer 14450000.mixer: [drm:exynos_drm_register_dma]
 *ERROR* Device 14450000.mixer lacks support for IOMMU
In-Reply-To: <CA+1FSih0hORYZf6Hfmf=nY4jkHPvFSgGfc1tJfzN6smnKxcsxA@mail.gmail.com>
Message-ID: <alpine.DEB.2.22.394.2310311625260.1795129@ubuntu-linux-20-04-desktop>
References: <CA+1FSiip1U0_EskJNgV3pSZPTCNOiTbpHosRLsy-6t1QQGd8Dw@mail.gmail.com> <alpine.DEB.2.22.394.2310311557520.1795129@ubuntu-linux-20-04-desktop> <CA+1FSih0hORYZf6Hfmf=nY4jkHPvFSgGfc1tJfzN6smnKxcsxA@mail.gmail.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: multipart/mixed; BOUNDARY="8323329-1696713199-1698794776=:1795129"
Content-ID: <alpine.DEB.2.22.394.2310311626490.1795129@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-1696713199-1698794776=:1795129
Content-Type: text/plain; CHARSET=UTF-8
Content-Transfer-Encoding: 8BIT
Content-ID: <alpine.DEB.2.22.394.2310311626491.1795129@ubuntu-linux-20-04-desktop>

Unfortunately there is no easy solution.

Do you know the version of the SMMU available on the platform? If it is
a SMMUv3 you can try to use the nested SMMU patch series to enable a
virtual SMMU in Dom0: https://marc.info/?l=xen-devel&m=166991020831005
That way, Xen can use the SMMU to protect VMs, and Dom0 can also use the
SMMU for its own purposes at the same time.

Alternatively, you can dig into the details of the exynos-drm driver to
see what exactly is the dependency on the IOMMU framework in Linux and
remove the dependency. Unfortunately none of us in this thread are
expert on exynos-drm so it would be difficult to advise on how to do
that. For example, I don't know how you could debug the x11 problem you
described because I don't typically work with x11 or with the exynos. If
there is an open source mailing list for exynos-drm development they
might be able to advise on how to remove the IOMMU dependency there.

The final option, which is a gross hack, would be to let Dom0 use the
IOMMU for its own gain. Xen doesn't use the IOMMU. If you do that you
lose freedom from interference between the VMs and you cannot run driver
domains or directly assign devices to DomUs. But if you are running a
research project you might be OK with that. To get it to work, you need
to hack Xen so that it remaps the IOMMU to Dom0 to let Dom0 program it
directly. The attached patch (untested) would be a place to start. You
also need to pass iommu=false to the Xen command line to prevent Xen
from using the iommu itself.

Cheers,

Stefano


On Wed, 1 Nov 2023, Mario Marietto wrote:
> I'm aware of the presence of that post. I'm working on the same
> project with the guy who explained the problem. Unfortunately,the
> solution proposed does not work well. Xen is working,but the screen is
> still black.
> 
> On Wed, Nov 1, 2023 at 12:04 AM Stefano Stabellini
> <sstabellini@kernel.org> wrote:
> >
> > Hi Mario,
> >
> > I am adding xen-devel and a couple of other Xen maintainers that might
> > know how to help make progress on this issues.
> >
> > Replies inline below.
> >
> >
> > On Tue, 31 Oct 2023, Mario Marietto wrote:
> > > Hello,
> > >
> > > We are a team of linux enthusiasts who are trying to boot Xen on a
> > > Samsung XE303C12 Chromebook aka "snow"
> > > following the suggestions in the slide show presentation here:
> > >
> > > https://www.slideshare.net/xen_com_mgr/xpds16-porting-xen-on-arm-to-a-new-soc-julien-grall-arm
> > >
> > > This device uses an exynos5250 SOC dual core 1.7 GHz with 2 MB RAM, it is
> > > a Samsung armv7 chip with virtualization extensions.
> > >
> > > In particular, we have it working fairly well both on the bare metal with
> > > a recent 6.1.59 Linux LTS kernel and also with a recent 5.4.257 LTS
> > > kernel with KVM, the older LTS kernel version is used to test KVM because
> > > support for KVM on arm v7 was removed from Linux around kernel version
> > > 5.7. So we know we have the hypervisor mode enabled because we were able
> > > to use it with KVM.
> > >
> > > For Xen, we are using the latest Debian build of Xen 4.17 for the Debian
> > > armhf architecture:
> > >
> > > (XEN) Xen version 4.17.2-pre (Debian 4.17.1+2-gb773c48e36-1)
> > > (pkg-xen-devel@xxxxxxxxxxxxxxx
> > > xxxxxxxx) (arm-linux-gnueabihf-gcc (Debian
> > > 12.2.0-14) 12.2.0) debug=n Thu May 18 19:26:30 UTC 2023
> > >
> > > The Linux kernel is a custom build that adds the Xen config kernel
> > > options (CONFIG_XEN_DOM0, etc) on top of a kernel that works well on the
> > > same Chromebook model on the bare metal. I can provide the config options
> > > of the kernel that was used if that is helpful.
> > >
> > > Our method of booting is to have u-boot boot the Xen hypervisor and load
> > > the device tree after adding the dom0 to the otherwise unaltered device
> > > tree from the Linux kernel using u-boot fdt commands to add a /chosen
> > > node, as described on the Xen wiki and in the pages linked from there. We
> > > have also tried adding and loading an initrd.img using the device tree
> > > /chosen node but that made no difference in our tests.
> > >
> > > We actually have the Linux LTS kernel version 6.1.59 working as dom0 with
> > > Xen using the same version of u-boot that we used for KVM, but with a big
> > > problem.
> > >
> > > The problem we see is that when booting the 6.1.59 kernel version as dom0
> > > with Xen, the screen is totally dark and the only way to access the
> > > system is remotely through ssh. Logs indicate most everything else is
> > > working, such as the wifi card so we can access it remotely via ssh and a
> > > USB optical mouse lights up when connected so USB is also working.
> > > Obviously, the disk is also working. The Chromebook is configured to boot
> > > from the device's SD card slot by turning on Chrome OS developer mode
> > > options to enable booting from the SD card slot.
> > >
> > > The mystery is that when booting the exact same 6.1.59 kernel on the bare
> > > metal instead of booting it as dom0 on Xen, it boots up with full access
> > > to the screen and we can interact with the system using the X.org windows
> > > system. But booting as dom0 with Xen, the screen is totally dark and the
> > > only access we have to the system is through the network via ssh. Also,
> > > when booting the 5.4.257 kernel with KVM in hypervisor mode, the screen
> > > works and we can interact with the system through the X.org windows
> > > system.
> > >
> > > Exploring the log file,we have seen the errors below :
> > >
> > >
> > > With Xen (or in bare metal):
> > >
> > > devuan-bunsen kernel: [drm] Exynos DRM: using 14400000.fimd device for
> > > DMA mapping operations
> > > devuan-bunsen kernel: exynos-drm exynos-drm: bound 14400000.fimd (ops
> > > 0xc0d96354)
> > > devuan-bunsen kernel: exynos-drm exynos-drm: bound 14450000.mixer (ops
> > > 0xc0d97554)
> > > devuan-bunsen kernel: exynos-drm exynos-drm: bound
> > > 145b0000.dp-controller (ops 0xc0d97278)
> > > devuan-bunsen kernel: exynos-drm exynos-drm: bound 14530000.hdmi (ops
> > > 0xc0d97bd0)
> > > ...
> > > devuan-bunsen kernel: Console: switching to colour frame buffer device 170x48
> > > devuan-bunsen kernel: exynos-drm exynos-drm: [drm] fb0: exynosdrmfb
> > > frame buffer device
> > > devuan-bunsen kernel: [drm] Initialized exynos 1.1.0 20180330 for
> > > exynos-drm on minor 0
> > >
> > > In this case,the kernel is able to use the exynos-drm kernel to start
> > > the fb0 device. But with Xen we get this error with exynos-drm:
> > >
> > > devuan-bunsen kernel: [drm] Exynos DRM: using 14400000.fimd device for
> > > DMA mapping operations
> > > devuan-bunsen kernel: exynos-drm exynos-drm: bound 14400000.fimd (ops
> > > 0xc0d96354)
> > > devuan-bunsen kernel: exynos-mixer 14450000.mixer:
> > > [drm:exynos_drm_register_dma] *ERROR* Device 14450000.mixer lacks
> > > support for IOMMU
> > > devuan-bunsen kernel: exynos-drm exynos-drm: failed to bind
> > > 14450000.mixer (ops 0xc0d97554): -22
> > > devuan-bunsen kernel: exynos-drm exynos-drm: adev bind failed: -22
> > > devuan-bunsen kernel: exynos-dp: probe of 145b0000.dp-controller
> > > failed with error -22
> > >
> > >
> > > Any ideas why booting the same Linux kernel that results in a working
> > > X.org display on the bare metal instead as dom0 on Xen would cause the
> > > display to remain dark, but most other basic functions would work, such
> > > as network, disk, and USB ? thanks.
> >
> > I think the issue is that Linux 6.1.59 is using the IOMMU to get the GPU
> > to work. When running on top of Xen, the IOMMU is not available to
> > Linux. That's because the IOMMU is used by Xen to enforce protection
> > between VMs.
> >
> > It might help to rebuild Linux without IOMMU support (remove the driver
> > from the kconfig) so that Linux cannot attempt to use the IOMMU.
> >
> > Also see
> > https://marc.info/?l=xen-users&m=169844593525492
--8323329-1696713199-1698794776=:1795129
Content-Type: text/x-diff; name=dom0-iommu.patch
Content-Transfer-Encoding: BASE64
Content-ID: <alpine.DEB.2.22.394.2310311645230.1795129@ubuntu-linux-20-04-desktop>
Content-Description: 
Content-Disposition: attachment; filename=dom0-iommu.patch

ZGlmZiAtLWdpdCBhL3hlbi9hcmNoL2FybS9kb21haW5fYnVpbGQuYyBiL3hl
bi9hcmNoL2FybS9kb21haW5fYnVpbGQuYw0KaW5kZXggNDk3OTJkZDU5MC4u
NzRmYzU1NDM2NCAxMDA2NDQNCi0tLSBhL3hlbi9hcmNoL2FybS9kb21haW5f
YnVpbGQuYw0KKysrIGIveGVuL2FyY2gvYXJtL2RvbWFpbl9idWlsZC5jDQpA
QCAtMTExOSwyNSArMTExOSwxMCBAQCBzdGF0aWMgaW50IF9faW5pdCB3cml0
ZV9wcm9wZXJ0aWVzKHN0cnVjdCBkb21haW4gKmQsIHN0cnVjdCBrZXJuZWxf
aW5mbyAqa2luZm8sDQogICAgIGNvbnN0IHN0cnVjdCBkdF9wcm9wZXJ0eSAq
cHJvcCwgKnN0YXR1cyA9IE5VTEw7DQogICAgIGludCByZXMgPSAwOw0KICAg
ICBpbnQgaGFkX2RvbTBfYm9vdGFyZ3MgPSAwOw0KLSAgICBzdHJ1Y3QgZHRf
ZGV2aWNlX25vZGUgKmlvbW11X25vZGU7DQogDQogICAgIGlmICgga2luZm8t
PmNtZGxpbmUgJiYga2luZm8tPmNtZGxpbmVbMF0gKQ0KICAgICAgICAgYm9v
dGFyZ3MgPSAma2luZm8tPmNtZGxpbmVbMF07DQogDQotICAgIC8qDQotICAg
ICAqIFdlIGFsd2F5cyBza2lwIHRoZSBJT01NVSBkZXZpY2Ugd2hlbiBjcmVh
dGluZyBEVCBmb3IgaHdkb20gaWYgdGhlcmUgaXMNCi0gICAgICogYW4gYXBw
cm9wcmlhdGUgZHJpdmVyIGZvciBpdCBpbiBYZW4gKGRldmljZV9nZXRfY2xh
c3MoaW9tbXVfbm9kZSkNCi0gICAgICogcmV0dXJucyBERVZJQ0VfSU9NTVUp
Lg0KLSAgICAgKiBXZSBzaG91bGQgYWxzbyBza2lwIHRoZSBJT01NVSBzcGVj
aWZpYyBwcm9wZXJ0aWVzIG9mIHRoZSBtYXN0ZXIgZGV2aWNlDQotICAgICAq
IGJlaGluZCB0aGF0IElPTU1VIGluIG9yZGVyIHRvIGF2b2lkIGV4cG9zaW5n
IGFuIGhhbGYgY29tcGxldGUgSU9NTVUNCi0gICAgICogYmluZGluZ3MgdG8g
aHdkb20uDQotICAgICAqIFVzZSAiaW9tbXVfbm9kZSIgYXMgYW4gaW5kaWNh
dG9yIG9mIHRoZSBtYXN0ZXIgZGV2aWNlIHdoaWNoIHByb3BlcnRpZXMNCi0g
ICAgICogc2hvdWxkIGJlIHNraXBwZWQuDQotICAgICAqLw0KLSAgICBpb21t
dV9ub2RlID0gZHRfcGFyc2VfcGhhbmRsZShub2RlLCAiaW9tbXVzIiwgMCk7
DQotICAgIGlmICggaW9tbXVfbm9kZSAmJiBkZXZpY2VfZ2V0X2NsYXNzKGlv
bW11X25vZGUpICE9IERFVklDRV9JT01NVSApDQotICAgICAgICBpb21tdV9u
b2RlID0gTlVMTDsNCi0NCiAgICAgZHRfZm9yX2VhY2hfcHJvcGVydHlfbm9k
ZSAobm9kZSwgcHJvcCkNCiAgICAgew0KICAgICAgICAgY29uc3Qgdm9pZCAq
cHJvcF9kYXRhID0gcHJvcC0+dmFsdWU7DQpAQCAtMTE5NSwxOSArMTE4MCw2
IEBAIHN0YXRpYyBpbnQgX19pbml0IHdyaXRlX3Byb3BlcnRpZXMoc3RydWN0
IGRvbWFpbiAqZCwgc3RydWN0IGtlcm5lbF9pbmZvICpraW5mbywNCiAgICAg
ICAgICAgICBjb250aW51ZTsNCiAgICAgICAgIH0NCiANCi0gICAgICAgIGlm
ICggaW9tbXVfbm9kZSApDQotICAgICAgICB7DQotICAgICAgICAgICAgLyog
RG9uJ3QgZXhwb3NlIElPTU1VIHNwZWNpZmljIHByb3BlcnRpZXMgdG8gaHdk
b20gKi8NCi0gICAgICAgICAgICBpZiAoIGR0X3Byb3BlcnR5X25hbWVfaXNf
ZXF1YWwocHJvcCwgImlvbW11cyIpICkNCi0gICAgICAgICAgICAgICAgY29u
dGludWU7DQotDQotICAgICAgICAgICAgaWYgKCBkdF9wcm9wZXJ0eV9uYW1l
X2lzX2VxdWFsKHByb3AsICJpb21tdS1tYXAiKSApDQotICAgICAgICAgICAg
ICAgIGNvbnRpbnVlOw0KLQ0KLSAgICAgICAgICAgIGlmICggZHRfcHJvcGVy
dHlfbmFtZV9pc19lcXVhbChwcm9wLCAiaW9tbXUtbWFwLW1hc2siKSApDQot
ICAgICAgICAgICAgICAgIGNvbnRpbnVlOw0KLSAgICAgICAgfQ0KLQ0KICAg
ICAgICAgcmVzID0gZmR0X3Byb3BlcnR5KGtpbmZvLT5mZHQsIHByb3AtPm5h
bWUsIHByb3BfZGF0YSwgcHJvcF9sZW4pOw0KIA0KICAgICAgICAgaWYgKCBy
ZXMgKQ0KQEAgLTIzNzIsMTYgKzIzNDQsNiBAQCBzdGF0aWMgaW50IF9faW5p
dCBoYW5kbGVfbm9kZShzdHJ1Y3QgZG9tYWluICpkLCBzdHJ1Y3Qga2VybmVs
X2luZm8gKmtpbmZvLA0KICAgICAgICAgcmV0dXJuIDA7DQogICAgIH0NCiAN
Ci0gICAgLyoNCi0gICAgICogRXZlbiBpZiB0aGUgSU9NTVUgZGV2aWNlIGlz
IG5vdCB1c2VkIGJ5IFhlbiwgaXQgc2hvdWxkIG5vdCBiZQ0KLSAgICAgKiBw
YXNzdGhyb3VnaCB0byBET00wDQotICAgICAqLw0KLSAgICBpZiAoIGRldmlj
ZV9nZXRfY2xhc3Mobm9kZSkgPT0gREVWSUNFX0lPTU1VICkNCi0gICAgew0K
LSAgICAgICAgZHRfZHByaW50aygiIElPTU1VLCBza2lwIGl0XG4iKTsNCi0g
ICAgICAgIHJldHVybiAwOw0KLSAgICB9DQotDQogICAgIC8qDQogICAgICAq
IFRoZSB2R0lDIGRvZXMgbm90IHN1cHBvcnQgcm91dGluZyBoYXJkd2FyZSBQ
UElzIHRvIGd1ZXN0LiBTbw0KICAgICAgKiB3ZSBuZWVkIHRvIHNraXAgYW55
IG5vZGUgdXNpbmcgUFBJcy4NCg==

--8323329-1696713199-1698794776=:1795129--


